aboutsummaryrefslogtreecommitdiff
path: root/src/Specific
diff options
context:
space:
mode:
authorGravatar Andres Erbsen <andreser@mit.edu>2019-01-08 04:21:38 -0500
committerGravatar Andres Erbsen <andreser@mit.edu>2019-01-09 22:49:02 -0500
commit3ca227f1137e6a3b65bc33f5689e1c230d591595 (patch)
treee1e5a2dd2a2f34f239d3276227ddbdc69eeeb667 /src/Specific
parent3ec21c64b3682465ca8e159a187689b207c71de4 (diff)
remove old pipeline
Diffstat (limited to 'src/Specific')
-rw-r--r--src/Specific/CurveParameters/X25519_C64/scalarmult.c309
-rw-r--r--src/Specific/CurveParameters/montgomery32/fesquare.c3
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e127m1_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e129m25_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e130m5_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e137m13_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e140m27_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e141m9_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e150m3_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e150m5_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e152m17_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e158m15_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e165m25_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e166m5_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e171m19_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e174m17_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e174m3_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e189m25_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e190m11_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e191m19_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e192m2e64m1_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e194m33_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e196m15_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e198m17_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e205m45x2e198m1_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e206m5_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e212m29_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e213m3_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e216m2e108m1_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e221m3_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e222m117_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e224m2e96p1_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e226m5_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e230m27_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e235m15_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e243m9_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e251m9_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e254m127x2e240m1_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e255m19_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e255m765_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e256m189_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e256m2e224p2e192p2e96m1_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e256m2e32m977_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e256m4294968273_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e256m88x2e240m1_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e266m3_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e285m9_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e291m19_10limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e321m9_11limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e322m2e161m1_11limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e336m17_11limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e336m3_11limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e338m15_11limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e369m25_12limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e379m19_12limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e382m105_12limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e383m187_12limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e383m31_12limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e383m421_12limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e384m2e128m2e96p2e32m1_12limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e384m317_12limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e384m5x2e368m1_12limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e384m79x2e376m1_12limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e389m21_13limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e401m31_13limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e413m21_13limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e414m17_13limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e416m2e208m1_13limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e444m17_14limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e448m2e224m1_14limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e450m2e225m1_15limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e452m3_15limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e468m17_15limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e480m2e240m1_15limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e488m17_16limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e489m21_16limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e495m31_16limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e510m290x2e496m1_16limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e511m187_16limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e511m481_16limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e512m491x2e496m1_16limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e512m569_16limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery32_2e521m1_17limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64/fesquare.c3
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e127m1_2limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e129m25_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e130m5_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e137m13_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e140m27_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e141m9_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e150m3_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e150m5_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e152m17_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e158m15_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e165m25_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e166m5_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e171m19_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e174m17_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e174m3_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e189m25_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e190m11_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e191m19_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e192m2e64m1_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e194m33_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e196m15_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e198m17_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e205m45x2e198m1_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e206m5_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e212m29_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e213m3_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e216m2e108m1_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e221m3_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e222m117_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e224m2e96p1_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e226m5_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e230m27_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e235m15_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e243m9_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e251m9_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e254m127x2e240m1_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e255m19_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e255m765_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e256m189_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e256m2e224p2e192p2e96m1_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e256m2e32m977_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e256m4294968273_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e256m88x2e240m1_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e266m3_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e285m9_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e291m19_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e321m9_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e322m2e161m1_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e336m17_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e336m3_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e338m15_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e369m25_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e379m19_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e382m105_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e383m187_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e383m31_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e383m421_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e384m2e128m2e96p2e32m1_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e384m317_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e384m5x2e368m1_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e384m79x2e376m1_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e389m21_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e401m31_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e413m21_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e414m17_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e416m2e208m1_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e444m17_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e448m2e224m1_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e450m2e225m1_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e452m3_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e468m17_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e480m2e240m1_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e488m17_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e489m21_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e495m31_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e510m290x2e496m1_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e511m187_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e511m481_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e512m491x2e496m1_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e512m569_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/montgomery64_2e521m1_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/nistp256_amd128.json9
-rw-r--r--src/Specific/CurveParameters/nistp256_amd64.json9
-rwxr-xr-xsrc/Specific/CurveParameters/remake_curves.sh470
-rw-r--r--src/Specific/CurveParameters/solinas32_2e127m1_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e127m1_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e129m25_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e129m25_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e130m5_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e130m5_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e137m13_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e137m13_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e140m27_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e140m27_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e141m9_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e141m9_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e150m3_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e150m3_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e150m5_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e150m5_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e152m17_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e152m17_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e158m15_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e158m15_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e165m25_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e165m25_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e166m5_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e166m5_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e171m19_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e171m19_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e174m17_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e174m17_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e174m3_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e174m3_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e189m25_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e189m25_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e190m11_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e190m11_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e191m19_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e191m19_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e192m2e64m1_10limbs.json39
-rw-r--r--src/Specific/CurveParameters/solinas32_2e192m2e64m1_9limbs.json38
-rw-r--r--src/Specific/CurveParameters/solinas32_2e194m33_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e194m33_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e196m15_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e196m15_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e198m17_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e198m17_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e206m5_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e206m5_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e212m29_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e212m29_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e213m3_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e213m3_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e216m2e108m1_10limbs.json40
-rw-r--r--src/Specific/CurveParameters/solinas32_2e216m2e108m1_8limbs.json38
-rw-r--r--src/Specific/CurveParameters/solinas32_2e221m3_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e221m3_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e222m117_10limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e222m117_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e224m2e96p1_10limbs.json39
-rw-r--r--src/Specific/CurveParameters/solinas32_2e224m2e96p1_11limbs.json40
-rw-r--r--src/Specific/CurveParameters/solinas32_2e226m5_10limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e226m5_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e230m27_10limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e230m27_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e235m15_10limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e235m15_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e243m9_10limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e243m9_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e251m9_10limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e251m9_11limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e255m19_10limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e255m19_10limbs_donna.json237
-rw-r--r--src/Specific/CurveParameters/solinas32_2e255m19_11limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e255m765_12limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e255m765_13limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e256m189_11limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e256m189_12limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e256m2e224p2e192p2e96m1_11limbs.json44
-rw-r--r--src/Specific/CurveParameters/solinas32_2e256m2e224p2e192p2e96m1_12limbs.json45
-rw-r--r--src/Specific/CurveParameters/solinas32_2e256m2e32m977_12limbs.json41
-rw-r--r--src/Specific/CurveParameters/solinas32_2e256m2e32m977_13limbs.json42
-rw-r--r--src/Specific/CurveParameters/solinas32_2e266m3_10limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e266m3_11limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e285m9_11limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e285m9_12limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e291m19_11limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e291m19_12limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e321m9_12limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e321m9_13limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e322m2e161m1_12limbs.json42
-rw-r--r--src/Specific/CurveParameters/solinas32_2e322m2e161m1_14limbs.json44
-rw-r--r--src/Specific/CurveParameters/solinas32_2e336m17_13limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e336m17_14limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e336m3_12limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e336m3_13limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e338m15_13limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e338m15_14limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e369m25_15limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e369m25_16limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e379m19_15limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e379m19_16limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e382m105_16limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e382m105_17limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e383m187_16limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e383m187_17limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e383m31_15limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e383m31_16limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e383m421_17limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e383m421_18limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e384m2e128m2e96p2e32m1_18limbs.json51
-rw-r--r--src/Specific/CurveParameters/solinas32_2e384m2e128m2e96p2e32m1_19limbs.json52
-rw-r--r--src/Specific/CurveParameters/solinas32_2e384m317_17limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e384m317_18limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e389m21_15limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e389m21_16limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e401m31_16limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e401m31_17limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e413m21_16limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e413m21_17limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e414m17_16limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e414m17_17limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e416m2e208m1_16limbs.json46
-rw-r--r--src/Specific/CurveParameters/solinas32_2e416m2e208m1_18limbs.json48
-rw-r--r--src/Specific/CurveParameters/solinas32_2e444m17_17limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e444m17_18limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e448m2e224m1_16limbs.json46
-rw-r--r--src/Specific/CurveParameters/solinas32_2e448m2e224m1_18limbs.json48
-rw-r--r--src/Specific/CurveParameters/solinas32_2e450m2e225m1_18limbs.json48
-rw-r--r--src/Specific/CurveParameters/solinas32_2e450m2e225m1_20limbs.json50
-rw-r--r--src/Specific/CurveParameters/solinas32_2e452m3_17limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e452m3_18limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e468m17_18limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e468m17_19limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e480m2e240m1_18limbs.json48
-rw-r--r--src/Specific/CurveParameters/solinas32_2e480m2e240m1_20limbs.json50
-rw-r--r--src/Specific/CurveParameters/solinas32_2e488m17_19limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e488m17_20limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e489m21_19limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e489m21_20limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e495m31_20limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e495m31_21limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e511m187_22limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e511m187_23limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e511m481_23limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e511m481_24limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e512m569_24limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e512m569_25limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e521m1_19limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas32_2e521m1_20limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e127m1_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e129m25_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e129m25_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e130m5_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e130m5_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e137m13_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e137m13_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e140m27_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e140m27_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e141m9_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e141m9_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e150m3_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e150m3_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e150m5_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e150m5_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e152m17_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e152m17_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e158m15_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e158m15_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e165m25_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e165m25_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e166m5_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e166m5_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e171m19_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e171m19_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e174m17_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e174m17_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e174m3_3limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e174m3_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e189m25_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e189m25_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e190m11_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e190m11_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e191m19_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e191m19_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e192m2e64m1_4limbs.json33
-rw-r--r--src/Specific/CurveParameters/solinas64_2e192m2e64m1_5limbs.json34
-rw-r--r--src/Specific/CurveParameters/solinas64_2e194m33_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e194m33_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e196m15_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e196m15_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e198m17_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e198m17_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e206m5_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e206m5_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e212m29_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e212m29_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e213m3_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e213m3_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e216m2e108m1_4limbs.json34
-rw-r--r--src/Specific/CurveParameters/solinas64_2e216m2e108m1_5limbs.json35
-rw-r--r--src/Specific/CurveParameters/solinas64_2e221m3_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e221m3_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e222m117_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e222m117_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e224m2e96p1_5limbs.json34
-rw-r--r--src/Specific/CurveParameters/solinas64_2e224m2e96p1_6limbs.json35
-rw-r--r--src/Specific/CurveParameters/solinas64_2e226m5_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e226m5_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e230m27_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e230m27_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e235m15_4limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e235m15_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e243m9_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e243m9_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e251m9_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e251m9_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e255m19_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e255m19_5limbs_donna.json80
-rw-r--r--src/Specific/CurveParameters/solinas64_2e255m19_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e255m765_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e255m765_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e256m189_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e256m189_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e256m2e224p2e192p2e96m1_5limbs.json38
-rw-r--r--src/Specific/CurveParameters/solinas64_2e256m2e224p2e192p2e96m1_6limbs.json39
-rw-r--r--src/Specific/CurveParameters/solinas64_2e256m2e32m977_6limbs.json34
-rw-r--r--src/Specific/CurveParameters/solinas64_2e256m2e32m977_7limbs.json35
-rw-r--r--src/Specific/CurveParameters/solinas64_2e256m4294968273_10limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e256m4294968273_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e266m3_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e266m3_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e285m9_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e285m9_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e291m19_5limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e291m19_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e321m9_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e321m9_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e322m2e161m1_6limbs.json36
-rw-r--r--src/Specific/CurveParameters/solinas64_2e322m2e161m1_7limbs.json37
-rw-r--r--src/Specific/CurveParameters/solinas64_2e336m17_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e336m17_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e336m3_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e336m3_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e338m15_6limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e338m15_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e369m25_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e369m25_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e379m19_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e379m19_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e382m105_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e382m105_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e383m187_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e383m187_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e383m31_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e383m31_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e383m421_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e383m421_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e384m2e128m2e96p2e32m1_10limbs.json43
-rw-r--r--src/Specific/CurveParameters/solinas64_2e384m2e128m2e96p2e32m1_9limbs.json42
-rw-r--r--src/Specific/CurveParameters/solinas64_2e384m317_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e384m317_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e389m21_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e389m21_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e401m31_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e401m31_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e413m21_7limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e413m21_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e414m17_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e414m17_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e416m2e208m1_8limbs.json38
-rw-r--r--src/Specific/CurveParameters/solinas64_2e416m2e208m1_9limbs.json39
-rw-r--r--src/Specific/CurveParameters/solinas64_2e444m17_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e444m17_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e448m2e224m1_10limbs.json40
-rw-r--r--src/Specific/CurveParameters/solinas64_2e448m2e224m1_8limbs.json38
-rw-r--r--src/Specific/CurveParameters/solinas64_2e450m2e225m1_10limbs.json40
-rw-r--r--src/Specific/CurveParameters/solinas64_2e450m2e225m1_8limbs.json38
-rw-r--r--src/Specific/CurveParameters/solinas64_2e452m3_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e452m3_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e468m17_8limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e468m17_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e480m2e240m1_10limbs.json40
-rw-r--r--src/Specific/CurveParameters/solinas64_2e480m2e240m1_8limbs.json38
-rw-r--r--src/Specific/CurveParameters/solinas64_2e488m17_10limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e488m17_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e489m21_10limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e489m21_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e495m31_10limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e495m31_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e511m187_10limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e511m187_11limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e511m481_10limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e511m481_11limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e512m569_10limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e512m569_11limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e521m1_10limbs.json18
-rw-r--r--src/Specific/CurveParameters/solinas64_2e521m1_9limbs.json18
-rw-r--r--src/Specific/CurveParameters/x2448_c64_karatsuba.json12
-rw-r--r--src/Specific/CurveParameters/x25519_c32.json230
-rw-r--r--src/Specific/CurveParameters/x25519_c64.json74
-rw-r--r--src/Specific/CurveParameters/x2555_130.json10
-rw-r--r--src/Specific/Framework/ArithmeticSynthesis/Base.v282
-rw-r--r--src/Specific/Framework/ArithmeticSynthesis/BasePackage.v247
-rw-r--r--src/Specific/Framework/ArithmeticSynthesis/Defaults.v405
-rw-r--r--src/Specific/Framework/ArithmeticSynthesis/DefaultsPackage.v208
-rw-r--r--src/Specific/Framework/ArithmeticSynthesis/Freeze.v80
-rw-r--r--src/Specific/Framework/ArithmeticSynthesis/FreezePackage.v60
-rw-r--r--src/Specific/Framework/ArithmeticSynthesis/HelperTactics.v121
-rw-r--r--src/Specific/Framework/ArithmeticSynthesis/Karatsuba.v102
-rw-r--r--src/Specific/Framework/ArithmeticSynthesis/KaratsubaPackage.v61
-rw-r--r--src/Specific/Framework/ArithmeticSynthesis/Ladderstep.v87
-rw-r--r--src/Specific/Framework/ArithmeticSynthesis/LadderstepPackage.v75
-rw-r--r--src/Specific/Framework/ArithmeticSynthesis/Montgomery.v550
-rw-r--r--src/Specific/Framework/ArithmeticSynthesis/MontgomeryPackage.v498
-rw-r--r--src/Specific/Framework/ArithmeticSynthesis/SquareFromMul.v28
-rwxr-xr-xsrc/Specific/Framework/ArithmeticSynthesis/remake_packages.py253
-rw-r--r--src/Specific/Framework/CurveParameters.v425
-rw-r--r--src/Specific/Framework/CurveParametersPackage.v90
-rw-r--r--src/Specific/Framework/IntegrationTestDisplayCommon.v24
-rw-r--r--src/Specific/Framework/IntegrationTestDisplayCommonTactics.v149
-rw-r--r--src/Specific/Framework/IntegrationTestTemporaryMiscCommon.v360
-rw-r--r--src/Specific/Framework/MontgomeryReificationTypes.v46
-rw-r--r--src/Specific/Framework/MontgomeryReificationTypesPackage.v94
-rw-r--r--src/Specific/Framework/OutputType.v164
-rw-r--r--src/Specific/Framework/Packages.v12
-rw-r--r--src/Specific/Framework/RawCurveParameters.v77
-rw-r--r--src/Specific/Framework/ReificationTypes.v229
-rw-r--r--src/Specific/Framework/ReificationTypesPackage.v282
-rw-r--r--src/Specific/Framework/SynthesisFramework.v170
-rw-r--r--src/Specific/Framework/bench/fibe.c326
-rw-r--r--src/Specific/Framework/bench/gmpsec.c234
-rw-r--r--src/Specific/Framework/bench/gmpvar.c233
-rw-r--r--src/Specific/Framework/bench/gmpxx.cpp154
-rw-r--r--src/Specific/Framework/bench/montladder.py95
-rwxr-xr-xsrc/Specific/Framework/bench/prettyprint.py77
-rwxr-xr-xsrc/Specific/Framework/make_curve.py542
-rw-r--r--src/Specific/IntegrationTestSquareDisplayHandPostLinearizedCSE.log68
-rw-r--r--src/Specific/NISTP256/AMD128/CurveParameters.v39
-rw-r--r--src/Specific/NISTP256/AMD128/Synthesis.v9
-rw-r--r--src/Specific/NISTP256/AMD128/compiler.sh4
-rw-r--r--src/Specific/NISTP256/AMD128/feadd.v14
-rw-r--r--src/Specific/NISTP256/AMD128/feaddDisplay.log14
-rw-r--r--src/Specific/NISTP256/AMD128/feaddDisplay.v4
-rw-r--r--src/Specific/NISTP256/AMD128/femul.v14
-rw-r--r--src/Specific/NISTP256/AMD128/femulDisplay.log40
-rw-r--r--src/Specific/NISTP256/AMD128/femulDisplay.v4
-rw-r--r--src/Specific/NISTP256/AMD128/fenz.v16
-rw-r--r--src/Specific/NISTP256/AMD128/fenzDisplay.log8
-rw-r--r--src/Specific/NISTP256/AMD128/fenzDisplay.v4
-rw-r--r--src/Specific/NISTP256/AMD128/feopp.v14
-rw-r--r--src/Specific/NISTP256/AMD128/feoppDisplay.log14
-rw-r--r--src/Specific/NISTP256/AMD128/feoppDisplay.v4
-rw-r--r--src/Specific/NISTP256/AMD128/fesub.v14
-rw-r--r--src/Specific/NISTP256/AMD128/fesubDisplay.log14
-rw-r--r--src/Specific/NISTP256/AMD128/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/NISTP256/AMD128/py_interpreter.sh4
-rw-r--r--src/Specific/NISTP256/AMD64/CurveParameters.v39
-rw-r--r--src/Specific/NISTP256/AMD64/Synthesis.v9
-rw-r--r--src/Specific/NISTP256/AMD64/bench_madd.c7
-rwxr-xr-xsrc/Specific/NISTP256/AMD64/compiler.sh4
-rw-r--r--src/Specific/NISTP256/AMD64/feadd.v14
-rw-r--r--src/Specific/NISTP256/AMD64/feaddDisplay.log20
-rw-r--r--src/Specific/NISTP256/AMD64/feaddDisplay.v4
-rw-r--r--src/Specific/NISTP256/AMD64/femul.v14
-rw-r--r--src/Specific/NISTP256/AMD64/femulDisplay.log114
-rw-r--r--src/Specific/NISTP256/AMD64/femulDisplay.v4
-rw-r--r--src/Specific/NISTP256/AMD64/fenz.v16
-rw-r--r--src/Specific/NISTP256/AMD64/fenzDisplay.log10
-rw-r--r--src/Specific/NISTP256/AMD64/fenzDisplay.v4
-rw-r--r--src/Specific/NISTP256/AMD64/feopp.v14
-rw-r--r--src/Specific/NISTP256/AMD64/feoppDisplay.log19
-rw-r--r--src/Specific/NISTP256/AMD64/feoppDisplay.v4
-rw-r--r--src/Specific/NISTP256/AMD64/fesub.v14
-rw-r--r--src/Specific/NISTP256/AMD64/fesubDisplay.log19
-rw-r--r--src/Specific/NISTP256/AMD64/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/NISTP256/AMD64/icc/compiler.sh4
-rw-r--r--src/Specific/NISTP256/AMD64/icc/compiler.txt1
-rw-r--r--src/Specific/NISTP256/AMD64/icc/icc17_p256_jacobian_add_affine.s2952
-rw-r--r--src/Specific/NISTP256/AMD64/icc/measurements.txt7
-rw-r--r--src/Specific/NISTP256/AMD64/measurements.txt4
-rw-r--r--src/Specific/NISTP256/AMD64/p256.h5
-rw-r--r--src/Specific/NISTP256/AMD64/p256_jacobian_add_affine.c82
-rwxr-xr-xsrc/Specific/NISTP256/AMD64/py_interpreter.sh4
-rw-r--r--src/Specific/NISTP256/AMD64/test/feadd_test.c46
-rw-r--r--src/Specific/NISTP256/AMD64/test/femul_test.c55
-rw-r--r--src/Specific/NISTP256/AMD64/test/p256_test.c1918
-rw-r--r--src/Specific/NISTP256/AMD64/test/p256_test.sage93
-rw-r--r--src/Specific/NISTP256/FancyMachine256/Barrett.v155
-rw-r--r--src/Specific/NISTP256/FancyMachine256/Core.v339
-rw-r--r--src/Specific/NISTP256/FancyMachine256/Montgomery.v157
-rw-r--r--src/Specific/X2448/Karatsuba/C64/CurveParameters.v39
-rw-r--r--src/Specific/X2448/Karatsuba/C64/Synthesis.v9
-rw-r--r--src/Specific/X2448/Karatsuba/C64/femul.v14
-rw-r--r--src/Specific/X2448/Karatsuba/C64/femulDisplay.log61
-rw-r--r--src/Specific/X2448/Karatsuba/C64/femulDisplay.v4
-rwxr-xr-xsrc/Specific/X2448/Karatsuba/C64/py_interpreter.sh4
-rw-r--r--src/Specific/X25519/C32/CurveParameters.v257
-rw-r--r--src/Specific/X25519/C32/Synthesis.v9
-rwxr-xr-xsrc/Specific/X25519/C32/compiler.sh4
-rw-r--r--src/Specific/X25519/C32/feadd.v14
-rw-r--r--src/Specific/X25519/C32/feaddDisplay.log7
-rw-r--r--src/Specific/X25519/C32/feaddDisplay.v4
-rw-r--r--src/Specific/X25519/C32/fecarry.v14
-rw-r--r--src/Specific/X25519/C32/fecarryDisplay.log42
-rw-r--r--src/Specific/X25519/C32/fecarryDisplay.v4
-rw-r--r--src/Specific/X25519/C32/femul.v14
-rw-r--r--src/Specific/X25519/C32/femulDisplay.log88
-rw-r--r--src/Specific/X25519/C32/femulDisplay.v4
-rw-r--r--src/Specific/X25519/C32/fesquare.v14
-rw-r--r--src/Specific/X25519/C32/fesquareDisplay.log88
-rw-r--r--src/Specific/X25519/C32/fesquareDisplay.v4
-rw-r--r--src/Specific/X25519/C32/fesub.v14
-rw-r--r--src/Specific/X25519/C32/fesubDisplay.log7
-rw-r--r--src/Specific/X25519/C32/fesubDisplay.v4
-rw-r--r--src/Specific/X25519/C32/freeze.v14
-rw-r--r--src/Specific/X25519/C32/freezeDisplay.log38
-rw-r--r--src/Specific/X25519/C32/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/X25519/C32/py_interpreter.sh4
-rw-r--r--src/Specific/X25519/C64/CurveParameters.v74
-rw-r--r--src/Specific/X25519/C64/Synthesis.v9
-rwxr-xr-xsrc/Specific/X25519/C64/compiler.sh4
-rw-r--r--src/Specific/X25519/C64/feadd.v14
-rw-r--r--src/Specific/X25519/C64/feaddDisplay.log7
-rw-r--r--src/Specific/X25519/C64/feaddDisplay.v4
-rw-r--r--src/Specific/X25519/C64/fecarry.v14
-rw-r--r--src/Specific/X25519/C64/fecarryDisplay.log27
-rw-r--r--src/Specific/X25519/C64/fecarryDisplay.v4
-rw-r--r--src/Specific/X25519/C64/femul.v14
-rw-r--r--src/Specific/X25519/C64/femulDisplay.log40
-rw-r--r--src/Specific/X25519/C64/femulDisplay.v4
-rw-r--r--src/Specific/X25519/C64/fesquare.v14
-rw-r--r--src/Specific/X25519/C64/fesquareDisplay.log37
-rw-r--r--src/Specific/X25519/C64/fesquareDisplay.v4
-rw-r--r--src/Specific/X25519/C64/fesub.v14
-rw-r--r--src/Specific/X25519/C64/fesubDisplay.log7
-rw-r--r--src/Specific/X25519/C64/fesubDisplay.v4
-rw-r--r--src/Specific/X25519/C64/freeze.v14
-rw-r--r--src/Specific/X25519/C64/freezeDisplay.log23
-rw-r--r--src/Specific/X25519/C64/freezeDisplay.v4
-rw-r--r--src/Specific/X25519/C64/ladderstep.v24
-rw-r--r--src/Specific/X25519/C64/ladderstepDisplay.log370
-rw-r--r--src/Specific/X25519/C64/ladderstepDisplay.v4
-rw-r--r--src/Specific/X25519/C64/measurements.txt6
-rwxr-xr-xsrc/Specific/X25519/C64/py_interpreter.sh4
-rw-r--r--src/Specific/X25519/C64/scalarmult.c311
-rw-r--r--src/Specific/X25519/supercop-benchmarks.txt21
-rw-r--r--src/Specific/X25519/x25519_test.c29
-rw-r--r--src/Specific/montgomery32_2e127m1_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e127m1_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e127m1_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e127m1_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e127m1_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery32_2e127m1_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e127m1_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery32_2e127m1_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e127m1_4limbs/femul.c126
-rw-r--r--src/Specific/montgomery32_2e127m1_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e127m1_4limbs/femulDisplay.log118
-rw-r--r--src/Specific/montgomery32_2e127m1_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e127m1_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery32_2e127m1_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e127m1_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery32_2e127m1_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e127m1_4limbs/feopp.c24
-rw-r--r--src/Specific/montgomery32_2e127m1_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e127m1_4limbs/feoppDisplay.log20
-rw-r--r--src/Specific/montgomery32_2e127m1_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e127m1_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e127m1_4limbs/fesub.c28
-rw-r--r--src/Specific/montgomery32_2e127m1_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e127m1_4limbs/fesubDisplay.log20
-rw-r--r--src/Specific/montgomery32_2e127m1_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e127m1_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e129m25_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e129m25_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e129m25_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e129m25_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e129m25_5limbs/feadd.c34
-rw-r--r--src/Specific/montgomery32_2e129m25_5limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e129m25_5limbs/feaddDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e129m25_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e129m25_5limbs/femul.c182
-rw-r--r--src/Specific/montgomery32_2e129m25_5limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e129m25_5limbs/femulDisplay.log171
-rw-r--r--src/Specific/montgomery32_2e129m25_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e129m25_5limbs/fenz.c13
-rw-r--r--src/Specific/montgomery32_2e129m25_5limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e129m25_5limbs/fenzDisplay.log11
-rw-r--r--src/Specific/montgomery32_2e129m25_5limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e129m25_5limbs/feopp.c29
-rw-r--r--src/Specific/montgomery32_2e129m25_5limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e129m25_5limbs/feoppDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e129m25_5limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e129m25_5limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e129m25_5limbs/fesub.c34
-rw-r--r--src/Specific/montgomery32_2e129m25_5limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e129m25_5limbs/fesubDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e129m25_5limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e129m25_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e130m5_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e130m5_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e130m5_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e130m5_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e130m5_5limbs/feadd.c34
-rw-r--r--src/Specific/montgomery32_2e130m5_5limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e130m5_5limbs/feaddDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e130m5_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e130m5_5limbs/femul.c192
-rw-r--r--src/Specific/montgomery32_2e130m5_5limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e130m5_5limbs/femulDisplay.log181
-rw-r--r--src/Specific/montgomery32_2e130m5_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e130m5_5limbs/fenz.c13
-rw-r--r--src/Specific/montgomery32_2e130m5_5limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e130m5_5limbs/fenzDisplay.log11
-rw-r--r--src/Specific/montgomery32_2e130m5_5limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e130m5_5limbs/feopp.c29
-rw-r--r--src/Specific/montgomery32_2e130m5_5limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e130m5_5limbs/feoppDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e130m5_5limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e130m5_5limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e130m5_5limbs/fesub.c34
-rw-r--r--src/Specific/montgomery32_2e130m5_5limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e130m5_5limbs/fesubDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e130m5_5limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e130m5_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e137m13_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e137m13_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e137m13_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e137m13_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e137m13_5limbs/feadd.c34
-rw-r--r--src/Specific/montgomery32_2e137m13_5limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e137m13_5limbs/feaddDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e137m13_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e137m13_5limbs/femul.c192
-rw-r--r--src/Specific/montgomery32_2e137m13_5limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e137m13_5limbs/femulDisplay.log181
-rw-r--r--src/Specific/montgomery32_2e137m13_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e137m13_5limbs/fenz.c13
-rw-r--r--src/Specific/montgomery32_2e137m13_5limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e137m13_5limbs/fenzDisplay.log11
-rw-r--r--src/Specific/montgomery32_2e137m13_5limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e137m13_5limbs/feopp.c29
-rw-r--r--src/Specific/montgomery32_2e137m13_5limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e137m13_5limbs/feoppDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e137m13_5limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e137m13_5limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e137m13_5limbs/fesub.c34
-rw-r--r--src/Specific/montgomery32_2e137m13_5limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e137m13_5limbs/fesubDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e137m13_5limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e137m13_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e140m27_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e140m27_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e140m27_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e140m27_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e140m27_5limbs/feadd.c34
-rw-r--r--src/Specific/montgomery32_2e140m27_5limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e140m27_5limbs/feaddDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e140m27_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e140m27_5limbs/femul.c192
-rw-r--r--src/Specific/montgomery32_2e140m27_5limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e140m27_5limbs/femulDisplay.log181
-rw-r--r--src/Specific/montgomery32_2e140m27_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e140m27_5limbs/fenz.c13
-rw-r--r--src/Specific/montgomery32_2e140m27_5limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e140m27_5limbs/fenzDisplay.log11
-rw-r--r--src/Specific/montgomery32_2e140m27_5limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e140m27_5limbs/feopp.c29
-rw-r--r--src/Specific/montgomery32_2e140m27_5limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e140m27_5limbs/feoppDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e140m27_5limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e140m27_5limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e140m27_5limbs/fesub.c34
-rw-r--r--src/Specific/montgomery32_2e140m27_5limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e140m27_5limbs/fesubDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e140m27_5limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e140m27_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e141m9_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e141m9_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e141m9_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e141m9_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e141m9_5limbs/feadd.c34
-rw-r--r--src/Specific/montgomery32_2e141m9_5limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e141m9_5limbs/feaddDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e141m9_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e141m9_5limbs/femul.c192
-rw-r--r--src/Specific/montgomery32_2e141m9_5limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e141m9_5limbs/femulDisplay.log181
-rw-r--r--src/Specific/montgomery32_2e141m9_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e141m9_5limbs/fenz.c13
-rw-r--r--src/Specific/montgomery32_2e141m9_5limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e141m9_5limbs/fenzDisplay.log11
-rw-r--r--src/Specific/montgomery32_2e141m9_5limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e141m9_5limbs/feopp.c29
-rw-r--r--src/Specific/montgomery32_2e141m9_5limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e141m9_5limbs/feoppDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e141m9_5limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e141m9_5limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e141m9_5limbs/fesub.c34
-rw-r--r--src/Specific/montgomery32_2e141m9_5limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e141m9_5limbs/fesubDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e141m9_5limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e141m9_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e150m3_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e150m3_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e150m3_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e150m3_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e150m3_5limbs/feadd.c34
-rw-r--r--src/Specific/montgomery32_2e150m3_5limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e150m3_5limbs/feaddDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e150m3_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e150m3_5limbs/femul.c192
-rw-r--r--src/Specific/montgomery32_2e150m3_5limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e150m3_5limbs/femulDisplay.log181
-rw-r--r--src/Specific/montgomery32_2e150m3_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e150m3_5limbs/fenz.c13
-rw-r--r--src/Specific/montgomery32_2e150m3_5limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e150m3_5limbs/fenzDisplay.log11
-rw-r--r--src/Specific/montgomery32_2e150m3_5limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e150m3_5limbs/feopp.c29
-rw-r--r--src/Specific/montgomery32_2e150m3_5limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e150m3_5limbs/feoppDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e150m3_5limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e150m3_5limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e150m3_5limbs/fesub.c34
-rw-r--r--src/Specific/montgomery32_2e150m3_5limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e150m3_5limbs/fesubDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e150m3_5limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e150m3_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e150m5_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e150m5_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e150m5_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e150m5_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e150m5_5limbs/feadd.c34
-rw-r--r--src/Specific/montgomery32_2e150m5_5limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e150m5_5limbs/feaddDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e150m5_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e150m5_5limbs/femul.c192
-rw-r--r--src/Specific/montgomery32_2e150m5_5limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e150m5_5limbs/femulDisplay.log181
-rw-r--r--src/Specific/montgomery32_2e150m5_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e150m5_5limbs/fenz.c13
-rw-r--r--src/Specific/montgomery32_2e150m5_5limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e150m5_5limbs/fenzDisplay.log11
-rw-r--r--src/Specific/montgomery32_2e150m5_5limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e150m5_5limbs/feopp.c29
-rw-r--r--src/Specific/montgomery32_2e150m5_5limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e150m5_5limbs/feoppDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e150m5_5limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e150m5_5limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e150m5_5limbs/fesub.c34
-rw-r--r--src/Specific/montgomery32_2e150m5_5limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e150m5_5limbs/fesubDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e150m5_5limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e150m5_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e152m17_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e152m17_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e152m17_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e152m17_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e152m17_5limbs/feadd.c34
-rw-r--r--src/Specific/montgomery32_2e152m17_5limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e152m17_5limbs/feaddDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e152m17_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e152m17_5limbs/femul.c192
-rw-r--r--src/Specific/montgomery32_2e152m17_5limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e152m17_5limbs/femulDisplay.log181
-rw-r--r--src/Specific/montgomery32_2e152m17_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e152m17_5limbs/fenz.c13
-rw-r--r--src/Specific/montgomery32_2e152m17_5limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e152m17_5limbs/fenzDisplay.log11
-rw-r--r--src/Specific/montgomery32_2e152m17_5limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e152m17_5limbs/feopp.c29
-rw-r--r--src/Specific/montgomery32_2e152m17_5limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e152m17_5limbs/feoppDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e152m17_5limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e152m17_5limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e152m17_5limbs/fesub.c34
-rw-r--r--src/Specific/montgomery32_2e152m17_5limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e152m17_5limbs/fesubDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e152m17_5limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e152m17_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e158m15_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e158m15_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e158m15_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e158m15_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e158m15_5limbs/feadd.c34
-rw-r--r--src/Specific/montgomery32_2e158m15_5limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e158m15_5limbs/feaddDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e158m15_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e158m15_5limbs/femul.c192
-rw-r--r--src/Specific/montgomery32_2e158m15_5limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e158m15_5limbs/femulDisplay.log181
-rw-r--r--src/Specific/montgomery32_2e158m15_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e158m15_5limbs/fenz.c13
-rw-r--r--src/Specific/montgomery32_2e158m15_5limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e158m15_5limbs/fenzDisplay.log11
-rw-r--r--src/Specific/montgomery32_2e158m15_5limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e158m15_5limbs/feopp.c29
-rw-r--r--src/Specific/montgomery32_2e158m15_5limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e158m15_5limbs/feoppDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e158m15_5limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e158m15_5limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e158m15_5limbs/fesub.c34
-rw-r--r--src/Specific/montgomery32_2e158m15_5limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e158m15_5limbs/fesubDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e158m15_5limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e158m15_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e165m25_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e165m25_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e165m25_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e165m25_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e165m25_6limbs/feadd.c40
-rw-r--r--src/Specific/montgomery32_2e165m25_6limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e165m25_6limbs/feaddDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e165m25_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e165m25_6limbs/femul.c266
-rw-r--r--src/Specific/montgomery32_2e165m25_6limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e165m25_6limbs/femulDisplay.log252
-rw-r--r--src/Specific/montgomery32_2e165m25_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e165m25_6limbs/fenz.c15
-rw-r--r--src/Specific/montgomery32_2e165m25_6limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e165m25_6limbs/fenzDisplay.log12
-rw-r--r--src/Specific/montgomery32_2e165m25_6limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e165m25_6limbs/feopp.c34
-rw-r--r--src/Specific/montgomery32_2e165m25_6limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e165m25_6limbs/feoppDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e165m25_6limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e165m25_6limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e165m25_6limbs/fesub.c40
-rw-r--r--src/Specific/montgomery32_2e165m25_6limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e165m25_6limbs/fesubDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e165m25_6limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e165m25_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e166m5_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e166m5_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e166m5_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e166m5_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e166m5_6limbs/feadd.c40
-rw-r--r--src/Specific/montgomery32_2e166m5_6limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e166m5_6limbs/feaddDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e166m5_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e166m5_6limbs/femul.c266
-rw-r--r--src/Specific/montgomery32_2e166m5_6limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e166m5_6limbs/femulDisplay.log252
-rw-r--r--src/Specific/montgomery32_2e166m5_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e166m5_6limbs/fenz.c15
-rw-r--r--src/Specific/montgomery32_2e166m5_6limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e166m5_6limbs/fenzDisplay.log12
-rw-r--r--src/Specific/montgomery32_2e166m5_6limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e166m5_6limbs/feopp.c34
-rw-r--r--src/Specific/montgomery32_2e166m5_6limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e166m5_6limbs/feoppDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e166m5_6limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e166m5_6limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e166m5_6limbs/fesub.c40
-rw-r--r--src/Specific/montgomery32_2e166m5_6limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e166m5_6limbs/fesubDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e166m5_6limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e166m5_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e171m19_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e171m19_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e171m19_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e171m19_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e171m19_6limbs/feadd.c40
-rw-r--r--src/Specific/montgomery32_2e171m19_6limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e171m19_6limbs/feaddDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e171m19_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e171m19_6limbs/femul.c266
-rw-r--r--src/Specific/montgomery32_2e171m19_6limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e171m19_6limbs/femulDisplay.log252
-rw-r--r--src/Specific/montgomery32_2e171m19_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e171m19_6limbs/fenz.c15
-rw-r--r--src/Specific/montgomery32_2e171m19_6limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e171m19_6limbs/fenzDisplay.log12
-rw-r--r--src/Specific/montgomery32_2e171m19_6limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e171m19_6limbs/feopp.c34
-rw-r--r--src/Specific/montgomery32_2e171m19_6limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e171m19_6limbs/feoppDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e171m19_6limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e171m19_6limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e171m19_6limbs/fesub.c40
-rw-r--r--src/Specific/montgomery32_2e171m19_6limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e171m19_6limbs/fesubDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e171m19_6limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e171m19_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e174m17_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e174m17_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e174m17_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e174m17_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e174m17_6limbs/feadd.c40
-rw-r--r--src/Specific/montgomery32_2e174m17_6limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e174m17_6limbs/feaddDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e174m17_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e174m17_6limbs/femul.c266
-rw-r--r--src/Specific/montgomery32_2e174m17_6limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e174m17_6limbs/femulDisplay.log252
-rw-r--r--src/Specific/montgomery32_2e174m17_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e174m17_6limbs/fenz.c15
-rw-r--r--src/Specific/montgomery32_2e174m17_6limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e174m17_6limbs/fenzDisplay.log12
-rw-r--r--src/Specific/montgomery32_2e174m17_6limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e174m17_6limbs/feopp.c34
-rw-r--r--src/Specific/montgomery32_2e174m17_6limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e174m17_6limbs/feoppDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e174m17_6limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e174m17_6limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e174m17_6limbs/fesub.c40
-rw-r--r--src/Specific/montgomery32_2e174m17_6limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e174m17_6limbs/fesubDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e174m17_6limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e174m17_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e174m3_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e174m3_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e174m3_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e174m3_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e174m3_6limbs/feadd.c40
-rw-r--r--src/Specific/montgomery32_2e174m3_6limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e174m3_6limbs/feaddDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e174m3_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e174m3_6limbs/femul.c266
-rw-r--r--src/Specific/montgomery32_2e174m3_6limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e174m3_6limbs/femulDisplay.log252
-rw-r--r--src/Specific/montgomery32_2e174m3_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e174m3_6limbs/fenz.c15
-rw-r--r--src/Specific/montgomery32_2e174m3_6limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e174m3_6limbs/fenzDisplay.log12
-rw-r--r--src/Specific/montgomery32_2e174m3_6limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e174m3_6limbs/feopp.c34
-rw-r--r--src/Specific/montgomery32_2e174m3_6limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e174m3_6limbs/feoppDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e174m3_6limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e174m3_6limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e174m3_6limbs/fesub.c40
-rw-r--r--src/Specific/montgomery32_2e174m3_6limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e174m3_6limbs/fesubDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e174m3_6limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e174m3_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e189m25_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e189m25_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e189m25_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e189m25_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e189m25_6limbs/feadd.c40
-rw-r--r--src/Specific/montgomery32_2e189m25_6limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e189m25_6limbs/feaddDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e189m25_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e189m25_6limbs/femul.c266
-rw-r--r--src/Specific/montgomery32_2e189m25_6limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e189m25_6limbs/femulDisplay.log252
-rw-r--r--src/Specific/montgomery32_2e189m25_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e189m25_6limbs/fenz.c15
-rw-r--r--src/Specific/montgomery32_2e189m25_6limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e189m25_6limbs/fenzDisplay.log12
-rw-r--r--src/Specific/montgomery32_2e189m25_6limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e189m25_6limbs/feopp.c34
-rw-r--r--src/Specific/montgomery32_2e189m25_6limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e189m25_6limbs/feoppDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e189m25_6limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e189m25_6limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e189m25_6limbs/fesub.c40
-rw-r--r--src/Specific/montgomery32_2e189m25_6limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e189m25_6limbs/fesubDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e189m25_6limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e189m25_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e190m11_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e190m11_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e190m11_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e190m11_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e190m11_6limbs/feadd.c40
-rw-r--r--src/Specific/montgomery32_2e190m11_6limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e190m11_6limbs/feaddDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e190m11_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e190m11_6limbs/femul.c266
-rw-r--r--src/Specific/montgomery32_2e190m11_6limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e190m11_6limbs/femulDisplay.log252
-rw-r--r--src/Specific/montgomery32_2e190m11_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e190m11_6limbs/fenz.c15
-rw-r--r--src/Specific/montgomery32_2e190m11_6limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e190m11_6limbs/fenzDisplay.log12
-rw-r--r--src/Specific/montgomery32_2e190m11_6limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e190m11_6limbs/feopp.c34
-rw-r--r--src/Specific/montgomery32_2e190m11_6limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e190m11_6limbs/feoppDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e190m11_6limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e190m11_6limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e190m11_6limbs/fesub.c40
-rw-r--r--src/Specific/montgomery32_2e190m11_6limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e190m11_6limbs/fesubDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e190m11_6limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e190m11_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e191m19_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e191m19_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e191m19_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e191m19_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e191m19_6limbs/feadd.c40
-rw-r--r--src/Specific/montgomery32_2e191m19_6limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e191m19_6limbs/feaddDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e191m19_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e191m19_6limbs/femul.c266
-rw-r--r--src/Specific/montgomery32_2e191m19_6limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e191m19_6limbs/femulDisplay.log252
-rw-r--r--src/Specific/montgomery32_2e191m19_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e191m19_6limbs/fenz.c15
-rw-r--r--src/Specific/montgomery32_2e191m19_6limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e191m19_6limbs/fenzDisplay.log12
-rw-r--r--src/Specific/montgomery32_2e191m19_6limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e191m19_6limbs/feopp.c34
-rw-r--r--src/Specific/montgomery32_2e191m19_6limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e191m19_6limbs/feoppDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e191m19_6limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e191m19_6limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e191m19_6limbs/fesub.c40
-rw-r--r--src/Specific/montgomery32_2e191m19_6limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e191m19_6limbs/fesubDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e191m19_6limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e191m19_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e192m2e64m1_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e192m2e64m1_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e192m2e64m1_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e192m2e64m1_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e192m2e64m1_6limbs/feadd.c40
-rw-r--r--src/Specific/montgomery32_2e192m2e64m1_6limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e192m2e64m1_6limbs/feaddDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e192m2e64m1_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e192m2e64m1_6limbs/femul.c260
-rw-r--r--src/Specific/montgomery32_2e192m2e64m1_6limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e192m2e64m1_6limbs/femulDisplay.log246
-rw-r--r--src/Specific/montgomery32_2e192m2e64m1_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e192m2e64m1_6limbs/fenz.c15
-rw-r--r--src/Specific/montgomery32_2e192m2e64m1_6limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e192m2e64m1_6limbs/fenzDisplay.log12
-rw-r--r--src/Specific/montgomery32_2e192m2e64m1_6limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e192m2e64m1_6limbs/feopp.c34
-rw-r--r--src/Specific/montgomery32_2e192m2e64m1_6limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e192m2e64m1_6limbs/feoppDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e192m2e64m1_6limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e192m2e64m1_6limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e192m2e64m1_6limbs/fesub.c40
-rw-r--r--src/Specific/montgomery32_2e192m2e64m1_6limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e192m2e64m1_6limbs/fesubDisplay.log26
-rw-r--r--src/Specific/montgomery32_2e192m2e64m1_6limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e192m2e64m1_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e194m33_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e194m33_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e194m33_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e194m33_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e194m33_7limbs/feadd.c46
-rw-r--r--src/Specific/montgomery32_2e194m33_7limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e194m33_7limbs/feaddDisplay.log29
-rw-r--r--src/Specific/montgomery32_2e194m33_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e194m33_7limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e194m33_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e194m33_7limbs/fenz.c17
-rw-r--r--src/Specific/montgomery32_2e194m33_7limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e194m33_7limbs/fenzDisplay.log13
-rw-r--r--src/Specific/montgomery32_2e194m33_7limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e194m33_7limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e194m33_7limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e194m33_7limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e194m33_7limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e194m33_7limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e194m33_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e196m15_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e196m15_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e196m15_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e196m15_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e196m15_7limbs/feadd.c46
-rw-r--r--src/Specific/montgomery32_2e196m15_7limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e196m15_7limbs/feaddDisplay.log29
-rw-r--r--src/Specific/montgomery32_2e196m15_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e196m15_7limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e196m15_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e196m15_7limbs/fenz.c17
-rw-r--r--src/Specific/montgomery32_2e196m15_7limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e196m15_7limbs/fenzDisplay.log13
-rw-r--r--src/Specific/montgomery32_2e196m15_7limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e196m15_7limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e196m15_7limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e196m15_7limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e196m15_7limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e196m15_7limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e196m15_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e198m17_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e198m17_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e198m17_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e198m17_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e198m17_7limbs/feadd.c46
-rw-r--r--src/Specific/montgomery32_2e198m17_7limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e198m17_7limbs/feaddDisplay.log29
-rw-r--r--src/Specific/montgomery32_2e198m17_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e198m17_7limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e198m17_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e198m17_7limbs/fenz.c17
-rw-r--r--src/Specific/montgomery32_2e198m17_7limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e198m17_7limbs/fenzDisplay.log13
-rw-r--r--src/Specific/montgomery32_2e198m17_7limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e198m17_7limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e198m17_7limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e198m17_7limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e198m17_7limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e198m17_7limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e198m17_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e205m45x2e198m1_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e205m45x2e198m1_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e205m45x2e198m1_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e205m45x2e198m1_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e205m45x2e198m1_7limbs/feadd.c46
-rw-r--r--src/Specific/montgomery32_2e205m45x2e198m1_7limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e205m45x2e198m1_7limbs/feaddDisplay.log29
-rw-r--r--src/Specific/montgomery32_2e205m45x2e198m1_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e205m45x2e198m1_7limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e205m45x2e198m1_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fenz.c17
-rw-r--r--src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fenzDisplay.log13
-rw-r--r--src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e205m45x2e198m1_7limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e205m45x2e198m1_7limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e205m45x2e198m1_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e206m5_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e206m5_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e206m5_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e206m5_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e206m5_7limbs/feadd.c46
-rw-r--r--src/Specific/montgomery32_2e206m5_7limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e206m5_7limbs/feaddDisplay.log29
-rw-r--r--src/Specific/montgomery32_2e206m5_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e206m5_7limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e206m5_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e206m5_7limbs/fenz.c17
-rw-r--r--src/Specific/montgomery32_2e206m5_7limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e206m5_7limbs/fenzDisplay.log13
-rw-r--r--src/Specific/montgomery32_2e206m5_7limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e206m5_7limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e206m5_7limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e206m5_7limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e206m5_7limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e206m5_7limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e206m5_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e212m29_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e212m29_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e212m29_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e212m29_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e212m29_7limbs/feadd.c46
-rw-r--r--src/Specific/montgomery32_2e212m29_7limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e212m29_7limbs/feaddDisplay.log29
-rw-r--r--src/Specific/montgomery32_2e212m29_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e212m29_7limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e212m29_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e212m29_7limbs/fenz.c17
-rw-r--r--src/Specific/montgomery32_2e212m29_7limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e212m29_7limbs/fenzDisplay.log13
-rw-r--r--src/Specific/montgomery32_2e212m29_7limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e212m29_7limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e212m29_7limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e212m29_7limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e212m29_7limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e212m29_7limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e212m29_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e213m3_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e213m3_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e213m3_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e213m3_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e213m3_7limbs/feadd.c46
-rw-r--r--src/Specific/montgomery32_2e213m3_7limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e213m3_7limbs/feaddDisplay.log29
-rw-r--r--src/Specific/montgomery32_2e213m3_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e213m3_7limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e213m3_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e213m3_7limbs/fenz.c17
-rw-r--r--src/Specific/montgomery32_2e213m3_7limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e213m3_7limbs/fenzDisplay.log13
-rw-r--r--src/Specific/montgomery32_2e213m3_7limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e213m3_7limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e213m3_7limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e213m3_7limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e213m3_7limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e213m3_7limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e213m3_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e216m2e108m1_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e216m2e108m1_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e216m2e108m1_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e216m2e108m1_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e216m2e108m1_7limbs/feadd.c46
-rw-r--r--src/Specific/montgomery32_2e216m2e108m1_7limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e216m2e108m1_7limbs/feaddDisplay.log29
-rw-r--r--src/Specific/montgomery32_2e216m2e108m1_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e216m2e108m1_7limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e216m2e108m1_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e216m2e108m1_7limbs/fenz.c17
-rw-r--r--src/Specific/montgomery32_2e216m2e108m1_7limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e216m2e108m1_7limbs/fenzDisplay.log13
-rw-r--r--src/Specific/montgomery32_2e216m2e108m1_7limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e216m2e108m1_7limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e216m2e108m1_7limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e216m2e108m1_7limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e216m2e108m1_7limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e216m2e108m1_7limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e216m2e108m1_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e221m3_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e221m3_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e221m3_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e221m3_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e221m3_7limbs/feadd.c46
-rw-r--r--src/Specific/montgomery32_2e221m3_7limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e221m3_7limbs/feaddDisplay.log29
-rw-r--r--src/Specific/montgomery32_2e221m3_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e221m3_7limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e221m3_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e221m3_7limbs/fenz.c17
-rw-r--r--src/Specific/montgomery32_2e221m3_7limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e221m3_7limbs/fenzDisplay.log13
-rw-r--r--src/Specific/montgomery32_2e221m3_7limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e221m3_7limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e221m3_7limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e221m3_7limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e221m3_7limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e221m3_7limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e221m3_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e222m117_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e222m117_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e222m117_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e222m117_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e222m117_7limbs/feadd.c46
-rw-r--r--src/Specific/montgomery32_2e222m117_7limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e222m117_7limbs/feaddDisplay.log29
-rw-r--r--src/Specific/montgomery32_2e222m117_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e222m117_7limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e222m117_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e222m117_7limbs/fenz.c17
-rw-r--r--src/Specific/montgomery32_2e222m117_7limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e222m117_7limbs/fenzDisplay.log13
-rw-r--r--src/Specific/montgomery32_2e222m117_7limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e222m117_7limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e222m117_7limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e222m117_7limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e222m117_7limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e222m117_7limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e222m117_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e224m2e96p1_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e224m2e96p1_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e224m2e96p1_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e224m2e96p1_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e224m2e96p1_7limbs/feadd.c46
-rw-r--r--src/Specific/montgomery32_2e224m2e96p1_7limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e224m2e96p1_7limbs/feaddDisplay.log29
-rw-r--r--src/Specific/montgomery32_2e224m2e96p1_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e224m2e96p1_7limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e224m2e96p1_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e224m2e96p1_7limbs/fenz.c17
-rw-r--r--src/Specific/montgomery32_2e224m2e96p1_7limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e224m2e96p1_7limbs/fenzDisplay.log13
-rw-r--r--src/Specific/montgomery32_2e224m2e96p1_7limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e224m2e96p1_7limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e224m2e96p1_7limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e224m2e96p1_7limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e224m2e96p1_7limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e224m2e96p1_7limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e224m2e96p1_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e226m5_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e226m5_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e226m5_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e226m5_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e226m5_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery32_2e226m5_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e226m5_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery32_2e226m5_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e226m5_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e226m5_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e226m5_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery32_2e226m5_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e226m5_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery32_2e226m5_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e226m5_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e226m5_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e226m5_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e226m5_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e226m5_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e226m5_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e230m27_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e230m27_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e230m27_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e230m27_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e230m27_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery32_2e230m27_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e230m27_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery32_2e230m27_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e230m27_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e230m27_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e230m27_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery32_2e230m27_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e230m27_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery32_2e230m27_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e230m27_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e230m27_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e230m27_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e230m27_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e230m27_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e230m27_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e235m15_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e235m15_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e235m15_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e235m15_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e235m15_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery32_2e235m15_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e235m15_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery32_2e235m15_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e235m15_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e235m15_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e235m15_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery32_2e235m15_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e235m15_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery32_2e235m15_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e235m15_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e235m15_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e235m15_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e235m15_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e235m15_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e235m15_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e243m9_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e243m9_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e243m9_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e243m9_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e243m9_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery32_2e243m9_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e243m9_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery32_2e243m9_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e243m9_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e243m9_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e243m9_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery32_2e243m9_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e243m9_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery32_2e243m9_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e243m9_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e243m9_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e243m9_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e243m9_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e243m9_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e243m9_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e251m9_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e251m9_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e251m9_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e251m9_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e251m9_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery32_2e251m9_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e251m9_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery32_2e251m9_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e251m9_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e251m9_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e251m9_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery32_2e251m9_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e251m9_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery32_2e251m9_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e251m9_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e251m9_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e251m9_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e251m9_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e251m9_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e251m9_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e254m127x2e240m1_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e254m127x2e240m1_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e254m127x2e240m1_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e254m127x2e240m1_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e254m127x2e240m1_8limbs/femul.c443
-rw-r--r--src/Specific/montgomery32_2e254m127x2e240m1_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e254m127x2e240m1_8limbs/femulDisplay.log423
-rw-r--r--src/Specific/montgomery32_2e254m127x2e240m1_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feopp.c44
-rw-r--r--src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feoppDisplay.log32
-rw-r--r--src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fesub.c52
-rw-r--r--src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fesubDisplay.log32
-rw-r--r--src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e254m127x2e240m1_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e255m19_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e255m19_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e255m19_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e255m19_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e255m19_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery32_2e255m19_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e255m19_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery32_2e255m19_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e255m19_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e255m19_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e255m19_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery32_2e255m19_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e255m19_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery32_2e255m19_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e255m19_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e255m19_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e255m19_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e255m19_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e255m19_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e255m19_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e255m765_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e255m765_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e255m765_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e255m765_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e255m765_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery32_2e255m765_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e255m765_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery32_2e255m765_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e255m765_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e255m765_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e255m765_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery32_2e255m765_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e255m765_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery32_2e255m765_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e255m765_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e255m765_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e255m765_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e255m765_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e255m765_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e255m765_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e256m189_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e256m189_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e256m189_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e256m189_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e256m189_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery32_2e256m189_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e256m189_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery32_2e256m189_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e256m189_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e256m189_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e256m189_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery32_2e256m189_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e256m189_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery32_2e256m189_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e256m189_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e256m189_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e256m189_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e256m189_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e256m189_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e256m189_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/femul.c379
-rw-r--r--src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/femulDisplay.log359
-rw-r--r--src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e256m2e32m977_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e256m2e32m977_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e256m2e32m977_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e256m2e32m977_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e256m2e32m977_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery32_2e256m2e32m977_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e256m2e32m977_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery32_2e256m2e32m977_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e256m2e32m977_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e256m2e32m977_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e256m2e32m977_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery32_2e256m2e32m977_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e256m2e32m977_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery32_2e256m2e32m977_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e256m2e32m977_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e256m2e32m977_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e256m2e32m977_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e256m2e32m977_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e256m2e32m977_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e256m2e32m977_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e256m4294968273_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e256m4294968273_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e256m4294968273_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e256m4294968273_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e256m4294968273_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery32_2e256m4294968273_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e256m4294968273_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery32_2e256m4294968273_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e256m4294968273_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e256m4294968273_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e256m4294968273_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery32_2e256m4294968273_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e256m4294968273_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery32_2e256m4294968273_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e256m4294968273_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e256m4294968273_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e256m4294968273_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e256m4294968273_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e256m4294968273_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e256m4294968273_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e256m88x2e240m1_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e256m88x2e240m1_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e256m88x2e240m1_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e256m88x2e240m1_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e256m88x2e240m1_8limbs/femul.c443
-rw-r--r--src/Specific/montgomery32_2e256m88x2e240m1_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e256m88x2e240m1_8limbs/femulDisplay.log423
-rw-r--r--src/Specific/montgomery32_2e256m88x2e240m1_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feopp.c44
-rw-r--r--src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feoppDisplay.log32
-rw-r--r--src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fesub.c52
-rw-r--r--src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fesubDisplay.log32
-rw-r--r--src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e256m88x2e240m1_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e266m3_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e266m3_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e266m3_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e266m3_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e266m3_9limbs/feadd.c58
-rw-r--r--src/Specific/montgomery32_2e266m3_9limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e266m3_9limbs/feaddDisplay.log35
-rw-r--r--src/Specific/montgomery32_2e266m3_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e266m3_9limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e266m3_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e266m3_9limbs/fenz.c21
-rw-r--r--src/Specific/montgomery32_2e266m3_9limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e266m3_9limbs/fenzDisplay.log15
-rw-r--r--src/Specific/montgomery32_2e266m3_9limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e266m3_9limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e266m3_9limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e266m3_9limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e266m3_9limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e266m3_9limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e266m3_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e285m9_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e285m9_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e285m9_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e285m9_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e285m9_9limbs/feadd.c58
-rw-r--r--src/Specific/montgomery32_2e285m9_9limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e285m9_9limbs/feaddDisplay.log35
-rw-r--r--src/Specific/montgomery32_2e285m9_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e285m9_9limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e285m9_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e285m9_9limbs/fenz.c21
-rw-r--r--src/Specific/montgomery32_2e285m9_9limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e285m9_9limbs/fenzDisplay.log15
-rw-r--r--src/Specific/montgomery32_2e285m9_9limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e285m9_9limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e285m9_9limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e285m9_9limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e285m9_9limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e285m9_9limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e285m9_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e291m19_10limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e291m19_10limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e291m19_10limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e291m19_10limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e291m19_10limbs/feadd.c64
-rw-r--r--src/Specific/montgomery32_2e291m19_10limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e291m19_10limbs/feaddDisplay.log38
-rw-r--r--src/Specific/montgomery32_2e291m19_10limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e291m19_10limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e291m19_10limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e291m19_10limbs/fenz.c23
-rw-r--r--src/Specific/montgomery32_2e291m19_10limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e291m19_10limbs/fenzDisplay.log16
-rw-r--r--src/Specific/montgomery32_2e291m19_10limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e291m19_10limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e291m19_10limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e291m19_10limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e291m19_10limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e291m19_10limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e291m19_10limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e321m9_11limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e321m9_11limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e321m9_11limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e321m9_11limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e321m9_11limbs/feadd.c70
-rw-r--r--src/Specific/montgomery32_2e321m9_11limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e321m9_11limbs/feaddDisplay.log41
-rw-r--r--src/Specific/montgomery32_2e321m9_11limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e321m9_11limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e321m9_11limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e321m9_11limbs/fenz.c25
-rw-r--r--src/Specific/montgomery32_2e321m9_11limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e321m9_11limbs/fenzDisplay.log17
-rw-r--r--src/Specific/montgomery32_2e321m9_11limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e321m9_11limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e321m9_11limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e321m9_11limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e321m9_11limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e321m9_11limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e321m9_11limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e322m2e161m1_11limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e322m2e161m1_11limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e322m2e161m1_11limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e322m2e161m1_11limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e322m2e161m1_11limbs/feadd.c70
-rw-r--r--src/Specific/montgomery32_2e322m2e161m1_11limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e322m2e161m1_11limbs/feaddDisplay.log41
-rw-r--r--src/Specific/montgomery32_2e322m2e161m1_11limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e322m2e161m1_11limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e322m2e161m1_11limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e322m2e161m1_11limbs/fenz.c25
-rw-r--r--src/Specific/montgomery32_2e322m2e161m1_11limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e322m2e161m1_11limbs/fenzDisplay.log17
-rw-r--r--src/Specific/montgomery32_2e322m2e161m1_11limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e322m2e161m1_11limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e322m2e161m1_11limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e322m2e161m1_11limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e322m2e161m1_11limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e322m2e161m1_11limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e322m2e161m1_11limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e336m17_11limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e336m17_11limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e336m17_11limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e336m17_11limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e336m17_11limbs/feadd.c70
-rw-r--r--src/Specific/montgomery32_2e336m17_11limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e336m17_11limbs/feaddDisplay.log41
-rw-r--r--src/Specific/montgomery32_2e336m17_11limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e336m17_11limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e336m17_11limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e336m17_11limbs/fenz.c25
-rw-r--r--src/Specific/montgomery32_2e336m17_11limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e336m17_11limbs/fenzDisplay.log17
-rw-r--r--src/Specific/montgomery32_2e336m17_11limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e336m17_11limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e336m17_11limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e336m17_11limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e336m17_11limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e336m17_11limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e336m17_11limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e336m3_11limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e336m3_11limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e336m3_11limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e336m3_11limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e336m3_11limbs/feadd.c70
-rw-r--r--src/Specific/montgomery32_2e336m3_11limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e336m3_11limbs/feaddDisplay.log41
-rw-r--r--src/Specific/montgomery32_2e336m3_11limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e336m3_11limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e336m3_11limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e336m3_11limbs/fenz.c25
-rw-r--r--src/Specific/montgomery32_2e336m3_11limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e336m3_11limbs/fenzDisplay.log17
-rw-r--r--src/Specific/montgomery32_2e336m3_11limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e336m3_11limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e336m3_11limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e336m3_11limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e336m3_11limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e336m3_11limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e336m3_11limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e338m15_11limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e338m15_11limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e338m15_11limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e338m15_11limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e338m15_11limbs/feadd.c70
-rw-r--r--src/Specific/montgomery32_2e338m15_11limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e338m15_11limbs/feaddDisplay.log41
-rw-r--r--src/Specific/montgomery32_2e338m15_11limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e338m15_11limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e338m15_11limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e338m15_11limbs/fenz.c25
-rw-r--r--src/Specific/montgomery32_2e338m15_11limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e338m15_11limbs/fenzDisplay.log17
-rw-r--r--src/Specific/montgomery32_2e338m15_11limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e338m15_11limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e338m15_11limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e338m15_11limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e338m15_11limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e338m15_11limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e338m15_11limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e369m25_12limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e369m25_12limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e369m25_12limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e369m25_12limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e369m25_12limbs/feadd.c76
-rw-r--r--src/Specific/montgomery32_2e369m25_12limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e369m25_12limbs/feaddDisplay.log44
-rw-r--r--src/Specific/montgomery32_2e369m25_12limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e369m25_12limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e369m25_12limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e369m25_12limbs/fenz.c27
-rw-r--r--src/Specific/montgomery32_2e369m25_12limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e369m25_12limbs/fenzDisplay.log18
-rw-r--r--src/Specific/montgomery32_2e369m25_12limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e369m25_12limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e369m25_12limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e369m25_12limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e369m25_12limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e369m25_12limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e369m25_12limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e379m19_12limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e379m19_12limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e379m19_12limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e379m19_12limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e379m19_12limbs/feadd.c76
-rw-r--r--src/Specific/montgomery32_2e379m19_12limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e379m19_12limbs/feaddDisplay.log44
-rw-r--r--src/Specific/montgomery32_2e379m19_12limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e379m19_12limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e379m19_12limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e379m19_12limbs/fenz.c27
-rw-r--r--src/Specific/montgomery32_2e379m19_12limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e379m19_12limbs/fenzDisplay.log18
-rw-r--r--src/Specific/montgomery32_2e379m19_12limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e379m19_12limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e379m19_12limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e379m19_12limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e379m19_12limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e379m19_12limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e379m19_12limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e382m105_12limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e382m105_12limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e382m105_12limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e382m105_12limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e382m105_12limbs/feadd.c76
-rw-r--r--src/Specific/montgomery32_2e382m105_12limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e382m105_12limbs/feaddDisplay.log44
-rw-r--r--src/Specific/montgomery32_2e382m105_12limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e382m105_12limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e382m105_12limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e382m105_12limbs/fenz.c27
-rw-r--r--src/Specific/montgomery32_2e382m105_12limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e382m105_12limbs/fenzDisplay.log18
-rw-r--r--src/Specific/montgomery32_2e382m105_12limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e382m105_12limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e382m105_12limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e382m105_12limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e382m105_12limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e382m105_12limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e382m105_12limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e383m187_12limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e383m187_12limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e383m187_12limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e383m187_12limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e383m187_12limbs/feadd.c76
-rw-r--r--src/Specific/montgomery32_2e383m187_12limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e383m187_12limbs/feaddDisplay.log44
-rw-r--r--src/Specific/montgomery32_2e383m187_12limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e383m187_12limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e383m187_12limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e383m187_12limbs/fenz.c27
-rw-r--r--src/Specific/montgomery32_2e383m187_12limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e383m187_12limbs/fenzDisplay.log18
-rw-r--r--src/Specific/montgomery32_2e383m187_12limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e383m187_12limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e383m187_12limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e383m187_12limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e383m187_12limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e383m187_12limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e383m187_12limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e383m31_12limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e383m31_12limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e383m31_12limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e383m31_12limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e383m31_12limbs/feadd.c76
-rw-r--r--src/Specific/montgomery32_2e383m31_12limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e383m31_12limbs/feaddDisplay.log44
-rw-r--r--src/Specific/montgomery32_2e383m31_12limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e383m31_12limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e383m31_12limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e383m31_12limbs/fenz.c27
-rw-r--r--src/Specific/montgomery32_2e383m31_12limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e383m31_12limbs/fenzDisplay.log18
-rw-r--r--src/Specific/montgomery32_2e383m31_12limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e383m31_12limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e383m31_12limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e383m31_12limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e383m31_12limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e383m31_12limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e383m31_12limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e383m421_12limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e383m421_12limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e383m421_12limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e383m421_12limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e383m421_12limbs/feadd.c76
-rw-r--r--src/Specific/montgomery32_2e383m421_12limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e383m421_12limbs/feaddDisplay.log44
-rw-r--r--src/Specific/montgomery32_2e383m421_12limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e383m421_12limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e383m421_12limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e383m421_12limbs/fenz.c27
-rw-r--r--src/Specific/montgomery32_2e383m421_12limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e383m421_12limbs/fenzDisplay.log18
-rw-r--r--src/Specific/montgomery32_2e383m421_12limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e383m421_12limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e383m421_12limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e383m421_12limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e383m421_12limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e383m421_12limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e383m421_12limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/feadd.c76
-rw-r--r--src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/feaddDisplay.log44
-rw-r--r--src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fenz.c27
-rw-r--r--src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fenzDisplay.log18
-rw-r--r--src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e384m317_12limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e384m317_12limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e384m317_12limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e384m317_12limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e384m317_12limbs/feadd.c76
-rw-r--r--src/Specific/montgomery32_2e384m317_12limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e384m317_12limbs/feaddDisplay.log44
-rw-r--r--src/Specific/montgomery32_2e384m317_12limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e384m317_12limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e384m317_12limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e384m317_12limbs/fenz.c27
-rw-r--r--src/Specific/montgomery32_2e384m317_12limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e384m317_12limbs/fenzDisplay.log18
-rw-r--r--src/Specific/montgomery32_2e384m317_12limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e384m317_12limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e384m317_12limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e384m317_12limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e384m317_12limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e384m317_12limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e384m317_12limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e384m5x2e368m1_12limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e384m5x2e368m1_12limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e384m5x2e368m1_12limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e384m5x2e368m1_12limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e384m5x2e368m1_12limbs/feadd.c76
-rw-r--r--src/Specific/montgomery32_2e384m5x2e368m1_12limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e384m5x2e368m1_12limbs/feaddDisplay.log44
-rw-r--r--src/Specific/montgomery32_2e384m5x2e368m1_12limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e384m5x2e368m1_12limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e384m5x2e368m1_12limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fenz.c27
-rw-r--r--src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fenzDisplay.log18
-rw-r--r--src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e384m5x2e368m1_12limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e384m5x2e368m1_12limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e384m5x2e368m1_12limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e384m79x2e376m1_12limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e384m79x2e376m1_12limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e384m79x2e376m1_12limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e384m79x2e376m1_12limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e384m79x2e376m1_12limbs/feadd.c76
-rw-r--r--src/Specific/montgomery32_2e384m79x2e376m1_12limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e384m79x2e376m1_12limbs/feaddDisplay.log44
-rw-r--r--src/Specific/montgomery32_2e384m79x2e376m1_12limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e384m79x2e376m1_12limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e384m79x2e376m1_12limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fenz.c27
-rw-r--r--src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fenzDisplay.log18
-rw-r--r--src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e384m79x2e376m1_12limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e384m79x2e376m1_12limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e384m79x2e376m1_12limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e389m21_13limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e389m21_13limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e389m21_13limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e389m21_13limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e389m21_13limbs/feadd.c82
-rw-r--r--src/Specific/montgomery32_2e389m21_13limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e389m21_13limbs/feaddDisplay.log47
-rw-r--r--src/Specific/montgomery32_2e389m21_13limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e389m21_13limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e389m21_13limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e389m21_13limbs/fenz.c29
-rw-r--r--src/Specific/montgomery32_2e389m21_13limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e389m21_13limbs/fenzDisplay.log19
-rw-r--r--src/Specific/montgomery32_2e389m21_13limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e389m21_13limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e389m21_13limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e389m21_13limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e389m21_13limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e389m21_13limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e389m21_13limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e401m31_13limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e401m31_13limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e401m31_13limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e401m31_13limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e401m31_13limbs/feadd.c82
-rw-r--r--src/Specific/montgomery32_2e401m31_13limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e401m31_13limbs/feaddDisplay.log47
-rw-r--r--src/Specific/montgomery32_2e401m31_13limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e401m31_13limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e401m31_13limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e401m31_13limbs/fenz.c29
-rw-r--r--src/Specific/montgomery32_2e401m31_13limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e401m31_13limbs/fenzDisplay.log19
-rw-r--r--src/Specific/montgomery32_2e401m31_13limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e401m31_13limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e401m31_13limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e401m31_13limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e401m31_13limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e401m31_13limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e401m31_13limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e413m21_13limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e413m21_13limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e413m21_13limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e413m21_13limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e413m21_13limbs/feadd.c82
-rw-r--r--src/Specific/montgomery32_2e413m21_13limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e413m21_13limbs/feaddDisplay.log47
-rw-r--r--src/Specific/montgomery32_2e413m21_13limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e413m21_13limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e413m21_13limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e413m21_13limbs/fenz.c29
-rw-r--r--src/Specific/montgomery32_2e413m21_13limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e413m21_13limbs/fenzDisplay.log19
-rw-r--r--src/Specific/montgomery32_2e413m21_13limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e413m21_13limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e413m21_13limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e413m21_13limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e413m21_13limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e413m21_13limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e413m21_13limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e414m17_13limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e414m17_13limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e414m17_13limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e414m17_13limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e414m17_13limbs/feadd.c82
-rw-r--r--src/Specific/montgomery32_2e414m17_13limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e414m17_13limbs/feaddDisplay.log47
-rw-r--r--src/Specific/montgomery32_2e414m17_13limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e414m17_13limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e414m17_13limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e414m17_13limbs/fenz.c29
-rw-r--r--src/Specific/montgomery32_2e414m17_13limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e414m17_13limbs/fenzDisplay.log19
-rw-r--r--src/Specific/montgomery32_2e414m17_13limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e414m17_13limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e414m17_13limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e414m17_13limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e414m17_13limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e414m17_13limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e414m17_13limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e416m2e208m1_13limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e416m2e208m1_13limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e416m2e208m1_13limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e416m2e208m1_13limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e416m2e208m1_13limbs/feadd.c82
-rw-r--r--src/Specific/montgomery32_2e416m2e208m1_13limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e416m2e208m1_13limbs/feaddDisplay.log47
-rw-r--r--src/Specific/montgomery32_2e416m2e208m1_13limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e416m2e208m1_13limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e416m2e208m1_13limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e416m2e208m1_13limbs/fenz.c29
-rw-r--r--src/Specific/montgomery32_2e416m2e208m1_13limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e416m2e208m1_13limbs/fenzDisplay.log19
-rw-r--r--src/Specific/montgomery32_2e416m2e208m1_13limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e416m2e208m1_13limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e416m2e208m1_13limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e416m2e208m1_13limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e416m2e208m1_13limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e416m2e208m1_13limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e416m2e208m1_13limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e444m17_14limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e444m17_14limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e444m17_14limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e444m17_14limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e444m17_14limbs/feadd.c88
-rw-r--r--src/Specific/montgomery32_2e444m17_14limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e444m17_14limbs/feaddDisplay.log50
-rw-r--r--src/Specific/montgomery32_2e444m17_14limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e444m17_14limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e444m17_14limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e444m17_14limbs/fenz.c31
-rw-r--r--src/Specific/montgomery32_2e444m17_14limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e444m17_14limbs/fenzDisplay.log20
-rw-r--r--src/Specific/montgomery32_2e444m17_14limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e444m17_14limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e444m17_14limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e444m17_14limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e444m17_14limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e444m17_14limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e444m17_14limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e448m2e224m1_14limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e448m2e224m1_14limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e448m2e224m1_14limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e448m2e224m1_14limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e448m2e224m1_14limbs/feadd.c88
-rw-r--r--src/Specific/montgomery32_2e448m2e224m1_14limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e448m2e224m1_14limbs/feaddDisplay.log50
-rw-r--r--src/Specific/montgomery32_2e448m2e224m1_14limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e448m2e224m1_14limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e448m2e224m1_14limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e448m2e224m1_14limbs/fenz.c31
-rw-r--r--src/Specific/montgomery32_2e448m2e224m1_14limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e448m2e224m1_14limbs/fenzDisplay.log20
-rw-r--r--src/Specific/montgomery32_2e448m2e224m1_14limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e448m2e224m1_14limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e448m2e224m1_14limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e448m2e224m1_14limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e448m2e224m1_14limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e448m2e224m1_14limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e448m2e224m1_14limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e450m2e225m1_15limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e450m2e225m1_15limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e450m2e225m1_15limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e450m2e225m1_15limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e450m2e225m1_15limbs/feadd.c94
-rw-r--r--src/Specific/montgomery32_2e450m2e225m1_15limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e450m2e225m1_15limbs/feaddDisplay.log53
-rw-r--r--src/Specific/montgomery32_2e450m2e225m1_15limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e450m2e225m1_15limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e450m2e225m1_15limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e450m2e225m1_15limbs/fenz.c33
-rw-r--r--src/Specific/montgomery32_2e450m2e225m1_15limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e450m2e225m1_15limbs/fenzDisplay.log21
-rw-r--r--src/Specific/montgomery32_2e450m2e225m1_15limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e450m2e225m1_15limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e450m2e225m1_15limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e450m2e225m1_15limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e450m2e225m1_15limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e450m2e225m1_15limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e450m2e225m1_15limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e452m3_15limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e452m3_15limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e452m3_15limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e452m3_15limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e452m3_15limbs/feadd.c94
-rw-r--r--src/Specific/montgomery32_2e452m3_15limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e452m3_15limbs/feaddDisplay.log53
-rw-r--r--src/Specific/montgomery32_2e452m3_15limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e452m3_15limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e452m3_15limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e452m3_15limbs/fenz.c33
-rw-r--r--src/Specific/montgomery32_2e452m3_15limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e452m3_15limbs/fenzDisplay.log21
-rw-r--r--src/Specific/montgomery32_2e452m3_15limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e452m3_15limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e452m3_15limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e452m3_15limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e452m3_15limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e452m3_15limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e452m3_15limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e468m17_15limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e468m17_15limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e468m17_15limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e468m17_15limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e468m17_15limbs/feadd.c94
-rw-r--r--src/Specific/montgomery32_2e468m17_15limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e468m17_15limbs/feaddDisplay.log53
-rw-r--r--src/Specific/montgomery32_2e468m17_15limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e468m17_15limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e468m17_15limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e468m17_15limbs/fenz.c33
-rw-r--r--src/Specific/montgomery32_2e468m17_15limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e468m17_15limbs/fenzDisplay.log21
-rw-r--r--src/Specific/montgomery32_2e468m17_15limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e468m17_15limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e468m17_15limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e468m17_15limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e468m17_15limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e468m17_15limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e468m17_15limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e480m2e240m1_15limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e480m2e240m1_15limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e480m2e240m1_15limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e480m2e240m1_15limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e480m2e240m1_15limbs/feadd.c94
-rw-r--r--src/Specific/montgomery32_2e480m2e240m1_15limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e480m2e240m1_15limbs/feaddDisplay.log53
-rw-r--r--src/Specific/montgomery32_2e480m2e240m1_15limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e480m2e240m1_15limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e480m2e240m1_15limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e480m2e240m1_15limbs/fenz.c33
-rw-r--r--src/Specific/montgomery32_2e480m2e240m1_15limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e480m2e240m1_15limbs/fenzDisplay.log21
-rw-r--r--src/Specific/montgomery32_2e480m2e240m1_15limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e480m2e240m1_15limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e480m2e240m1_15limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e480m2e240m1_15limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e480m2e240m1_15limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e480m2e240m1_15limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e480m2e240m1_15limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e488m17_16limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e488m17_16limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e488m17_16limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e488m17_16limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e488m17_16limbs/feadd.c100
-rw-r--r--src/Specific/montgomery32_2e488m17_16limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e488m17_16limbs/feaddDisplay.log56
-rw-r--r--src/Specific/montgomery32_2e488m17_16limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e488m17_16limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e488m17_16limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e488m17_16limbs/fenz.c35
-rw-r--r--src/Specific/montgomery32_2e488m17_16limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e488m17_16limbs/fenzDisplay.log22
-rw-r--r--src/Specific/montgomery32_2e488m17_16limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e488m17_16limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e488m17_16limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e488m17_16limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e488m17_16limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e488m17_16limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e488m17_16limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e489m21_16limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e489m21_16limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e489m21_16limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e489m21_16limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e489m21_16limbs/feadd.c100
-rw-r--r--src/Specific/montgomery32_2e489m21_16limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e489m21_16limbs/feaddDisplay.log56
-rw-r--r--src/Specific/montgomery32_2e489m21_16limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e489m21_16limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e489m21_16limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e489m21_16limbs/fenz.c35
-rw-r--r--src/Specific/montgomery32_2e489m21_16limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e489m21_16limbs/fenzDisplay.log22
-rw-r--r--src/Specific/montgomery32_2e489m21_16limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e489m21_16limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e489m21_16limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e489m21_16limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e489m21_16limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e489m21_16limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e489m21_16limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e495m31_16limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e495m31_16limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e495m31_16limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e495m31_16limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e495m31_16limbs/feadd.c100
-rw-r--r--src/Specific/montgomery32_2e495m31_16limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e495m31_16limbs/feaddDisplay.log56
-rw-r--r--src/Specific/montgomery32_2e495m31_16limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e495m31_16limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e495m31_16limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e495m31_16limbs/fenz.c35
-rw-r--r--src/Specific/montgomery32_2e495m31_16limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e495m31_16limbs/fenzDisplay.log22
-rw-r--r--src/Specific/montgomery32_2e495m31_16limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e495m31_16limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e495m31_16limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e495m31_16limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e495m31_16limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e495m31_16limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e495m31_16limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e510m290x2e496m1_16limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e510m290x2e496m1_16limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e510m290x2e496m1_16limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e510m290x2e496m1_16limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e510m290x2e496m1_16limbs/feadd.c100
-rw-r--r--src/Specific/montgomery32_2e510m290x2e496m1_16limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e510m290x2e496m1_16limbs/feaddDisplay.log56
-rw-r--r--src/Specific/montgomery32_2e510m290x2e496m1_16limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e510m290x2e496m1_16limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e510m290x2e496m1_16limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fenz.c35
-rw-r--r--src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fenzDisplay.log22
-rw-r--r--src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e510m290x2e496m1_16limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e510m290x2e496m1_16limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e510m290x2e496m1_16limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e511m187_16limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e511m187_16limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e511m187_16limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e511m187_16limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e511m187_16limbs/feadd.c100
-rw-r--r--src/Specific/montgomery32_2e511m187_16limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e511m187_16limbs/feaddDisplay.log56
-rw-r--r--src/Specific/montgomery32_2e511m187_16limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e511m187_16limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e511m187_16limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e511m187_16limbs/fenz.c35
-rw-r--r--src/Specific/montgomery32_2e511m187_16limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e511m187_16limbs/fenzDisplay.log22
-rw-r--r--src/Specific/montgomery32_2e511m187_16limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e511m187_16limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e511m187_16limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e511m187_16limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e511m187_16limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e511m187_16limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e511m187_16limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e511m481_16limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e511m481_16limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e511m481_16limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e511m481_16limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e511m481_16limbs/feadd.c100
-rw-r--r--src/Specific/montgomery32_2e511m481_16limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e511m481_16limbs/feaddDisplay.log56
-rw-r--r--src/Specific/montgomery32_2e511m481_16limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e511m481_16limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e511m481_16limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e511m481_16limbs/fenz.c35
-rw-r--r--src/Specific/montgomery32_2e511m481_16limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e511m481_16limbs/fenzDisplay.log22
-rw-r--r--src/Specific/montgomery32_2e511m481_16limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e511m481_16limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e511m481_16limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e511m481_16limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e511m481_16limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e511m481_16limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e511m481_16limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e512m491x2e496m1_16limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e512m491x2e496m1_16limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e512m491x2e496m1_16limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e512m491x2e496m1_16limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e512m491x2e496m1_16limbs/feadd.c100
-rw-r--r--src/Specific/montgomery32_2e512m491x2e496m1_16limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e512m491x2e496m1_16limbs/feaddDisplay.log56
-rw-r--r--src/Specific/montgomery32_2e512m491x2e496m1_16limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e512m491x2e496m1_16limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e512m491x2e496m1_16limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fenz.c35
-rw-r--r--src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fenzDisplay.log22
-rw-r--r--src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e512m491x2e496m1_16limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e512m491x2e496m1_16limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e512m491x2e496m1_16limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e512m569_16limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e512m569_16limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e512m569_16limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e512m569_16limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e512m569_16limbs/feadd.c100
-rw-r--r--src/Specific/montgomery32_2e512m569_16limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e512m569_16limbs/feaddDisplay.log56
-rw-r--r--src/Specific/montgomery32_2e512m569_16limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e512m569_16limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e512m569_16limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e512m569_16limbs/fenz.c35
-rw-r--r--src/Specific/montgomery32_2e512m569_16limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e512m569_16limbs/fenzDisplay.log22
-rw-r--r--src/Specific/montgomery32_2e512m569_16limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e512m569_16limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e512m569_16limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e512m569_16limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e512m569_16limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e512m569_16limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e512m569_16limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery32_2e521m1_17limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery32_2e521m1_17limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery32_2e521m1_17limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery32_2e521m1_17limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery32_2e521m1_17limbs/feadd.c106
-rw-r--r--src/Specific/montgomery32_2e521m1_17limbs/feadd.v14
-rw-r--r--src/Specific/montgomery32_2e521m1_17limbs/feaddDisplay.log59
-rw-r--r--src/Specific/montgomery32_2e521m1_17limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e521m1_17limbs/femul.v14
-rw-r--r--src/Specific/montgomery32_2e521m1_17limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e521m1_17limbs/fenz.c37
-rw-r--r--src/Specific/montgomery32_2e521m1_17limbs/fenz.v16
-rw-r--r--src/Specific/montgomery32_2e521m1_17limbs/fenzDisplay.log23
-rw-r--r--src/Specific/montgomery32_2e521m1_17limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e521m1_17limbs/feopp.v14
-rw-r--r--src/Specific/montgomery32_2e521m1_17limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery32_2e521m1_17limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery32_2e521m1_17limbs/fesub.v14
-rw-r--r--src/Specific/montgomery32_2e521m1_17limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery32_2e521m1_17limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e127m1_2limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e127m1_2limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e127m1_2limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e127m1_2limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e127m1_2limbs/feadd.c16
-rw-r--r--src/Specific/montgomery64_2e127m1_2limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e127m1_2limbs/feaddDisplay.log14
-rw-r--r--src/Specific/montgomery64_2e127m1_2limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e127m1_2limbs/femul.c40
-rw-r--r--src/Specific/montgomery64_2e127m1_2limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e127m1_2limbs/femulDisplay.log38
-rw-r--r--src/Specific/montgomery64_2e127m1_2limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e127m1_2limbs/fenz.c7
-rw-r--r--src/Specific/montgomery64_2e127m1_2limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e127m1_2limbs/fenzDisplay.log8
-rw-r--r--src/Specific/montgomery64_2e127m1_2limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e127m1_2limbs/feopp.c14
-rw-r--r--src/Specific/montgomery64_2e127m1_2limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e127m1_2limbs/feoppDisplay.log14
-rw-r--r--src/Specific/montgomery64_2e127m1_2limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e127m1_2limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e127m1_2limbs/fesub.c16
-rw-r--r--src/Specific/montgomery64_2e127m1_2limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e127m1_2limbs/fesubDisplay.log14
-rw-r--r--src/Specific/montgomery64_2e127m1_2limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e127m1_2limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e129m25_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e129m25_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e129m25_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e129m25_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e129m25_3limbs/feadd.c22
-rw-r--r--src/Specific/montgomery64_2e129m25_3limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e129m25_3limbs/feaddDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e129m25_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e129m25_3limbs/femul.c74
-rw-r--r--src/Specific/montgomery64_2e129m25_3limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e129m25_3limbs/femulDisplay.log69
-rw-r--r--src/Specific/montgomery64_2e129m25_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e129m25_3limbs/fenz.c9
-rw-r--r--src/Specific/montgomery64_2e129m25_3limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e129m25_3limbs/fenzDisplay.log9
-rw-r--r--src/Specific/montgomery64_2e129m25_3limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e129m25_3limbs/feopp.c19
-rw-r--r--src/Specific/montgomery64_2e129m25_3limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e129m25_3limbs/feoppDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e129m25_3limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e129m25_3limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e129m25_3limbs/fesub.c22
-rw-r--r--src/Specific/montgomery64_2e129m25_3limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e129m25_3limbs/fesubDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e129m25_3limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e129m25_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e130m5_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e130m5_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e130m5_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e130m5_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e130m5_3limbs/feadd.c22
-rw-r--r--src/Specific/montgomery64_2e130m5_3limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e130m5_3limbs/feaddDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e130m5_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e130m5_3limbs/femul.c80
-rw-r--r--src/Specific/montgomery64_2e130m5_3limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e130m5_3limbs/femulDisplay.log75
-rw-r--r--src/Specific/montgomery64_2e130m5_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e130m5_3limbs/fenz.c9
-rw-r--r--src/Specific/montgomery64_2e130m5_3limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e130m5_3limbs/fenzDisplay.log9
-rw-r--r--src/Specific/montgomery64_2e130m5_3limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e130m5_3limbs/feopp.c19
-rw-r--r--src/Specific/montgomery64_2e130m5_3limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e130m5_3limbs/feoppDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e130m5_3limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e130m5_3limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e130m5_3limbs/fesub.c22
-rw-r--r--src/Specific/montgomery64_2e130m5_3limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e130m5_3limbs/fesubDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e130m5_3limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e130m5_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e137m13_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e137m13_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e137m13_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e137m13_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e137m13_3limbs/feadd.c22
-rw-r--r--src/Specific/montgomery64_2e137m13_3limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e137m13_3limbs/feaddDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e137m13_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e137m13_3limbs/femul.c80
-rw-r--r--src/Specific/montgomery64_2e137m13_3limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e137m13_3limbs/femulDisplay.log75
-rw-r--r--src/Specific/montgomery64_2e137m13_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e137m13_3limbs/fenz.c9
-rw-r--r--src/Specific/montgomery64_2e137m13_3limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e137m13_3limbs/fenzDisplay.log9
-rw-r--r--src/Specific/montgomery64_2e137m13_3limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e137m13_3limbs/feopp.c19
-rw-r--r--src/Specific/montgomery64_2e137m13_3limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e137m13_3limbs/feoppDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e137m13_3limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e137m13_3limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e137m13_3limbs/fesub.c22
-rw-r--r--src/Specific/montgomery64_2e137m13_3limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e137m13_3limbs/fesubDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e137m13_3limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e137m13_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e140m27_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e140m27_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e140m27_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e140m27_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e140m27_3limbs/feadd.c22
-rw-r--r--src/Specific/montgomery64_2e140m27_3limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e140m27_3limbs/feaddDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e140m27_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e140m27_3limbs/femul.c80
-rw-r--r--src/Specific/montgomery64_2e140m27_3limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e140m27_3limbs/femulDisplay.log75
-rw-r--r--src/Specific/montgomery64_2e140m27_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e140m27_3limbs/fenz.c9
-rw-r--r--src/Specific/montgomery64_2e140m27_3limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e140m27_3limbs/fenzDisplay.log9
-rw-r--r--src/Specific/montgomery64_2e140m27_3limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e140m27_3limbs/feopp.c19
-rw-r--r--src/Specific/montgomery64_2e140m27_3limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e140m27_3limbs/feoppDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e140m27_3limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e140m27_3limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e140m27_3limbs/fesub.c22
-rw-r--r--src/Specific/montgomery64_2e140m27_3limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e140m27_3limbs/fesubDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e140m27_3limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e140m27_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e141m9_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e141m9_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e141m9_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e141m9_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e141m9_3limbs/feadd.c22
-rw-r--r--src/Specific/montgomery64_2e141m9_3limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e141m9_3limbs/feaddDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e141m9_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e141m9_3limbs/femul.c80
-rw-r--r--src/Specific/montgomery64_2e141m9_3limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e141m9_3limbs/femulDisplay.log75
-rw-r--r--src/Specific/montgomery64_2e141m9_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e141m9_3limbs/fenz.c9
-rw-r--r--src/Specific/montgomery64_2e141m9_3limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e141m9_3limbs/fenzDisplay.log9
-rw-r--r--src/Specific/montgomery64_2e141m9_3limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e141m9_3limbs/feopp.c19
-rw-r--r--src/Specific/montgomery64_2e141m9_3limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e141m9_3limbs/feoppDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e141m9_3limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e141m9_3limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e141m9_3limbs/fesub.c22
-rw-r--r--src/Specific/montgomery64_2e141m9_3limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e141m9_3limbs/fesubDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e141m9_3limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e141m9_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e150m3_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e150m3_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e150m3_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e150m3_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e150m3_3limbs/feadd.c22
-rw-r--r--src/Specific/montgomery64_2e150m3_3limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e150m3_3limbs/feaddDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e150m3_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e150m3_3limbs/femul.c80
-rw-r--r--src/Specific/montgomery64_2e150m3_3limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e150m3_3limbs/femulDisplay.log75
-rw-r--r--src/Specific/montgomery64_2e150m3_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e150m3_3limbs/fenz.c9
-rw-r--r--src/Specific/montgomery64_2e150m3_3limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e150m3_3limbs/fenzDisplay.log9
-rw-r--r--src/Specific/montgomery64_2e150m3_3limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e150m3_3limbs/feopp.c19
-rw-r--r--src/Specific/montgomery64_2e150m3_3limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e150m3_3limbs/feoppDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e150m3_3limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e150m3_3limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e150m3_3limbs/fesub.c22
-rw-r--r--src/Specific/montgomery64_2e150m3_3limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e150m3_3limbs/fesubDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e150m3_3limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e150m3_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e150m5_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e150m5_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e150m5_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e150m5_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e150m5_3limbs/feadd.c22
-rw-r--r--src/Specific/montgomery64_2e150m5_3limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e150m5_3limbs/feaddDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e150m5_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e150m5_3limbs/femul.c80
-rw-r--r--src/Specific/montgomery64_2e150m5_3limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e150m5_3limbs/femulDisplay.log75
-rw-r--r--src/Specific/montgomery64_2e150m5_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e150m5_3limbs/fenz.c9
-rw-r--r--src/Specific/montgomery64_2e150m5_3limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e150m5_3limbs/fenzDisplay.log9
-rw-r--r--src/Specific/montgomery64_2e150m5_3limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e150m5_3limbs/feopp.c19
-rw-r--r--src/Specific/montgomery64_2e150m5_3limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e150m5_3limbs/feoppDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e150m5_3limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e150m5_3limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e150m5_3limbs/fesub.c22
-rw-r--r--src/Specific/montgomery64_2e150m5_3limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e150m5_3limbs/fesubDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e150m5_3limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e150m5_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e152m17_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e152m17_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e152m17_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e152m17_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e152m17_3limbs/feadd.c22
-rw-r--r--src/Specific/montgomery64_2e152m17_3limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e152m17_3limbs/feaddDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e152m17_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e152m17_3limbs/femul.c80
-rw-r--r--src/Specific/montgomery64_2e152m17_3limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e152m17_3limbs/femulDisplay.log75
-rw-r--r--src/Specific/montgomery64_2e152m17_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e152m17_3limbs/fenz.c9
-rw-r--r--src/Specific/montgomery64_2e152m17_3limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e152m17_3limbs/fenzDisplay.log9
-rw-r--r--src/Specific/montgomery64_2e152m17_3limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e152m17_3limbs/feopp.c19
-rw-r--r--src/Specific/montgomery64_2e152m17_3limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e152m17_3limbs/feoppDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e152m17_3limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e152m17_3limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e152m17_3limbs/fesub.c22
-rw-r--r--src/Specific/montgomery64_2e152m17_3limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e152m17_3limbs/fesubDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e152m17_3limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e152m17_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e158m15_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e158m15_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e158m15_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e158m15_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e158m15_3limbs/feadd.c22
-rw-r--r--src/Specific/montgomery64_2e158m15_3limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e158m15_3limbs/feaddDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e158m15_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e158m15_3limbs/femul.c80
-rw-r--r--src/Specific/montgomery64_2e158m15_3limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e158m15_3limbs/femulDisplay.log75
-rw-r--r--src/Specific/montgomery64_2e158m15_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e158m15_3limbs/fenz.c9
-rw-r--r--src/Specific/montgomery64_2e158m15_3limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e158m15_3limbs/fenzDisplay.log9
-rw-r--r--src/Specific/montgomery64_2e158m15_3limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e158m15_3limbs/feopp.c19
-rw-r--r--src/Specific/montgomery64_2e158m15_3limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e158m15_3limbs/feoppDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e158m15_3limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e158m15_3limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e158m15_3limbs/fesub.c22
-rw-r--r--src/Specific/montgomery64_2e158m15_3limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e158m15_3limbs/fesubDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e158m15_3limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e158m15_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e165m25_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e165m25_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e165m25_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e165m25_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e165m25_3limbs/feadd.c22
-rw-r--r--src/Specific/montgomery64_2e165m25_3limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e165m25_3limbs/feaddDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e165m25_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e165m25_3limbs/femul.c80
-rw-r--r--src/Specific/montgomery64_2e165m25_3limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e165m25_3limbs/femulDisplay.log75
-rw-r--r--src/Specific/montgomery64_2e165m25_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e165m25_3limbs/fenz.c9
-rw-r--r--src/Specific/montgomery64_2e165m25_3limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e165m25_3limbs/fenzDisplay.log9
-rw-r--r--src/Specific/montgomery64_2e165m25_3limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e165m25_3limbs/feopp.c19
-rw-r--r--src/Specific/montgomery64_2e165m25_3limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e165m25_3limbs/feoppDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e165m25_3limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e165m25_3limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e165m25_3limbs/fesub.c22
-rw-r--r--src/Specific/montgomery64_2e165m25_3limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e165m25_3limbs/fesubDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e165m25_3limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e165m25_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e166m5_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e166m5_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e166m5_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e166m5_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e166m5_3limbs/feadd.c22
-rw-r--r--src/Specific/montgomery64_2e166m5_3limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e166m5_3limbs/feaddDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e166m5_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e166m5_3limbs/femul.c80
-rw-r--r--src/Specific/montgomery64_2e166m5_3limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e166m5_3limbs/femulDisplay.log75
-rw-r--r--src/Specific/montgomery64_2e166m5_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e166m5_3limbs/fenz.c9
-rw-r--r--src/Specific/montgomery64_2e166m5_3limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e166m5_3limbs/fenzDisplay.log9
-rw-r--r--src/Specific/montgomery64_2e166m5_3limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e166m5_3limbs/feopp.c19
-rw-r--r--src/Specific/montgomery64_2e166m5_3limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e166m5_3limbs/feoppDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e166m5_3limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e166m5_3limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e166m5_3limbs/fesub.c22
-rw-r--r--src/Specific/montgomery64_2e166m5_3limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e166m5_3limbs/fesubDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e166m5_3limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e166m5_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e171m19_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e171m19_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e171m19_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e171m19_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e171m19_3limbs/feadd.c22
-rw-r--r--src/Specific/montgomery64_2e171m19_3limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e171m19_3limbs/feaddDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e171m19_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e171m19_3limbs/femul.c80
-rw-r--r--src/Specific/montgomery64_2e171m19_3limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e171m19_3limbs/femulDisplay.log75
-rw-r--r--src/Specific/montgomery64_2e171m19_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e171m19_3limbs/fenz.c9
-rw-r--r--src/Specific/montgomery64_2e171m19_3limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e171m19_3limbs/fenzDisplay.log9
-rw-r--r--src/Specific/montgomery64_2e171m19_3limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e171m19_3limbs/feopp.c19
-rw-r--r--src/Specific/montgomery64_2e171m19_3limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e171m19_3limbs/feoppDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e171m19_3limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e171m19_3limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e171m19_3limbs/fesub.c22
-rw-r--r--src/Specific/montgomery64_2e171m19_3limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e171m19_3limbs/fesubDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e171m19_3limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e171m19_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e174m17_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e174m17_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e174m17_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e174m17_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e174m17_3limbs/feadd.c22
-rw-r--r--src/Specific/montgomery64_2e174m17_3limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e174m17_3limbs/feaddDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e174m17_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e174m17_3limbs/femul.c80
-rw-r--r--src/Specific/montgomery64_2e174m17_3limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e174m17_3limbs/femulDisplay.log75
-rw-r--r--src/Specific/montgomery64_2e174m17_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e174m17_3limbs/fenz.c9
-rw-r--r--src/Specific/montgomery64_2e174m17_3limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e174m17_3limbs/fenzDisplay.log9
-rw-r--r--src/Specific/montgomery64_2e174m17_3limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e174m17_3limbs/feopp.c19
-rw-r--r--src/Specific/montgomery64_2e174m17_3limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e174m17_3limbs/feoppDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e174m17_3limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e174m17_3limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e174m17_3limbs/fesub.c22
-rw-r--r--src/Specific/montgomery64_2e174m17_3limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e174m17_3limbs/fesubDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e174m17_3limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e174m17_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e174m3_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e174m3_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e174m3_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e174m3_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e174m3_3limbs/feadd.c22
-rw-r--r--src/Specific/montgomery64_2e174m3_3limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e174m3_3limbs/feaddDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e174m3_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e174m3_3limbs/femul.c80
-rw-r--r--src/Specific/montgomery64_2e174m3_3limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e174m3_3limbs/femulDisplay.log75
-rw-r--r--src/Specific/montgomery64_2e174m3_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e174m3_3limbs/fenz.c9
-rw-r--r--src/Specific/montgomery64_2e174m3_3limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e174m3_3limbs/fenzDisplay.log9
-rw-r--r--src/Specific/montgomery64_2e174m3_3limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e174m3_3limbs/feopp.c19
-rw-r--r--src/Specific/montgomery64_2e174m3_3limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e174m3_3limbs/feoppDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e174m3_3limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e174m3_3limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e174m3_3limbs/fesub.c22
-rw-r--r--src/Specific/montgomery64_2e174m3_3limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e174m3_3limbs/fesubDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e174m3_3limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e174m3_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e189m25_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e189m25_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e189m25_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e189m25_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e189m25_3limbs/feadd.c22
-rw-r--r--src/Specific/montgomery64_2e189m25_3limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e189m25_3limbs/feaddDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e189m25_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e189m25_3limbs/femul.c80
-rw-r--r--src/Specific/montgomery64_2e189m25_3limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e189m25_3limbs/femulDisplay.log75
-rw-r--r--src/Specific/montgomery64_2e189m25_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e189m25_3limbs/fenz.c9
-rw-r--r--src/Specific/montgomery64_2e189m25_3limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e189m25_3limbs/fenzDisplay.log9
-rw-r--r--src/Specific/montgomery64_2e189m25_3limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e189m25_3limbs/feopp.c19
-rw-r--r--src/Specific/montgomery64_2e189m25_3limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e189m25_3limbs/feoppDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e189m25_3limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e189m25_3limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e189m25_3limbs/fesub.c22
-rw-r--r--src/Specific/montgomery64_2e189m25_3limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e189m25_3limbs/fesubDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e189m25_3limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e189m25_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e190m11_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e190m11_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e190m11_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e190m11_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e190m11_3limbs/feadd.c22
-rw-r--r--src/Specific/montgomery64_2e190m11_3limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e190m11_3limbs/feaddDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e190m11_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e190m11_3limbs/femul.c80
-rw-r--r--src/Specific/montgomery64_2e190m11_3limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e190m11_3limbs/femulDisplay.log75
-rw-r--r--src/Specific/montgomery64_2e190m11_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e190m11_3limbs/fenz.c9
-rw-r--r--src/Specific/montgomery64_2e190m11_3limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e190m11_3limbs/fenzDisplay.log9
-rw-r--r--src/Specific/montgomery64_2e190m11_3limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e190m11_3limbs/feopp.c19
-rw-r--r--src/Specific/montgomery64_2e190m11_3limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e190m11_3limbs/feoppDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e190m11_3limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e190m11_3limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e190m11_3limbs/fesub.c22
-rw-r--r--src/Specific/montgomery64_2e190m11_3limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e190m11_3limbs/fesubDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e190m11_3limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e190m11_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e191m19_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e191m19_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e191m19_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e191m19_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e191m19_3limbs/feadd.c22
-rw-r--r--src/Specific/montgomery64_2e191m19_3limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e191m19_3limbs/feaddDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e191m19_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e191m19_3limbs/femul.c80
-rw-r--r--src/Specific/montgomery64_2e191m19_3limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e191m19_3limbs/femulDisplay.log75
-rw-r--r--src/Specific/montgomery64_2e191m19_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e191m19_3limbs/fenz.c9
-rw-r--r--src/Specific/montgomery64_2e191m19_3limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e191m19_3limbs/fenzDisplay.log9
-rw-r--r--src/Specific/montgomery64_2e191m19_3limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e191m19_3limbs/feopp.c19
-rw-r--r--src/Specific/montgomery64_2e191m19_3limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e191m19_3limbs/feoppDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e191m19_3limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e191m19_3limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e191m19_3limbs/fesub.c22
-rw-r--r--src/Specific/montgomery64_2e191m19_3limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e191m19_3limbs/fesubDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e191m19_3limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e191m19_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e192m2e64m1_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e192m2e64m1_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e192m2e64m1_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e192m2e64m1_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e192m2e64m1_3limbs/feadd.c22
-rw-r--r--src/Specific/montgomery64_2e192m2e64m1_3limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e192m2e64m1_3limbs/feaddDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e192m2e64m1_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e192m2e64m1_3limbs/femul.c77
-rw-r--r--src/Specific/montgomery64_2e192m2e64m1_3limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e192m2e64m1_3limbs/femulDisplay.log72
-rw-r--r--src/Specific/montgomery64_2e192m2e64m1_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e192m2e64m1_3limbs/fenz.c9
-rw-r--r--src/Specific/montgomery64_2e192m2e64m1_3limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e192m2e64m1_3limbs/fenzDisplay.log9
-rw-r--r--src/Specific/montgomery64_2e192m2e64m1_3limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e192m2e64m1_3limbs/feopp.c19
-rw-r--r--src/Specific/montgomery64_2e192m2e64m1_3limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e192m2e64m1_3limbs/feoppDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e192m2e64m1_3limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e192m2e64m1_3limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e192m2e64m1_3limbs/fesub.c22
-rw-r--r--src/Specific/montgomery64_2e192m2e64m1_3limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e192m2e64m1_3limbs/fesubDisplay.log17
-rw-r--r--src/Specific/montgomery64_2e192m2e64m1_3limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e192m2e64m1_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e194m33_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e194m33_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e194m33_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e194m33_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e194m33_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery64_2e194m33_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e194m33_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e194m33_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e194m33_4limbs/femul.c130
-rw-r--r--src/Specific/montgomery64_2e194m33_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e194m33_4limbs/femulDisplay.log122
-rw-r--r--src/Specific/montgomery64_2e194m33_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e194m33_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery64_2e194m33_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e194m33_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery64_2e194m33_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e194m33_4limbs/feopp.c24
-rw-r--r--src/Specific/montgomery64_2e194m33_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e194m33_4limbs/feoppDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e194m33_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e194m33_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e194m33_4limbs/fesub.c28
-rw-r--r--src/Specific/montgomery64_2e194m33_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e194m33_4limbs/fesubDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e194m33_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e194m33_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e196m15_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e196m15_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e196m15_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e196m15_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e196m15_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery64_2e196m15_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e196m15_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e196m15_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e196m15_4limbs/femul.c130
-rw-r--r--src/Specific/montgomery64_2e196m15_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e196m15_4limbs/femulDisplay.log122
-rw-r--r--src/Specific/montgomery64_2e196m15_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e196m15_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery64_2e196m15_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e196m15_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery64_2e196m15_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e196m15_4limbs/feopp.c24
-rw-r--r--src/Specific/montgomery64_2e196m15_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e196m15_4limbs/feoppDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e196m15_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e196m15_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e196m15_4limbs/fesub.c28
-rw-r--r--src/Specific/montgomery64_2e196m15_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e196m15_4limbs/fesubDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e196m15_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e196m15_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e198m17_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e198m17_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e198m17_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e198m17_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e198m17_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery64_2e198m17_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e198m17_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e198m17_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e198m17_4limbs/femul.c130
-rw-r--r--src/Specific/montgomery64_2e198m17_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e198m17_4limbs/femulDisplay.log122
-rw-r--r--src/Specific/montgomery64_2e198m17_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e198m17_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery64_2e198m17_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e198m17_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery64_2e198m17_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e198m17_4limbs/feopp.c24
-rw-r--r--src/Specific/montgomery64_2e198m17_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e198m17_4limbs/feoppDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e198m17_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e198m17_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e198m17_4limbs/fesub.c28
-rw-r--r--src/Specific/montgomery64_2e198m17_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e198m17_4limbs/fesubDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e198m17_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e198m17_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e205m45x2e198m1_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e205m45x2e198m1_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e205m45x2e198m1_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e205m45x2e198m1_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e205m45x2e198m1_4limbs/femul.c126
-rw-r--r--src/Specific/montgomery64_2e205m45x2e198m1_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e205m45x2e198m1_4limbs/femulDisplay.log118
-rw-r--r--src/Specific/montgomery64_2e205m45x2e198m1_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feopp.c24
-rw-r--r--src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feoppDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fesub.c28
-rw-r--r--src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fesubDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e205m45x2e198m1_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e206m5_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e206m5_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e206m5_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e206m5_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e206m5_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery64_2e206m5_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e206m5_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e206m5_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e206m5_4limbs/femul.c130
-rw-r--r--src/Specific/montgomery64_2e206m5_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e206m5_4limbs/femulDisplay.log122
-rw-r--r--src/Specific/montgomery64_2e206m5_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e206m5_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery64_2e206m5_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e206m5_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery64_2e206m5_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e206m5_4limbs/feopp.c24
-rw-r--r--src/Specific/montgomery64_2e206m5_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e206m5_4limbs/feoppDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e206m5_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e206m5_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e206m5_4limbs/fesub.c28
-rw-r--r--src/Specific/montgomery64_2e206m5_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e206m5_4limbs/fesubDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e206m5_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e206m5_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e212m29_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e212m29_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e212m29_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e212m29_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e212m29_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery64_2e212m29_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e212m29_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e212m29_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e212m29_4limbs/femul.c130
-rw-r--r--src/Specific/montgomery64_2e212m29_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e212m29_4limbs/femulDisplay.log122
-rw-r--r--src/Specific/montgomery64_2e212m29_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e212m29_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery64_2e212m29_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e212m29_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery64_2e212m29_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e212m29_4limbs/feopp.c24
-rw-r--r--src/Specific/montgomery64_2e212m29_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e212m29_4limbs/feoppDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e212m29_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e212m29_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e212m29_4limbs/fesub.c28
-rw-r--r--src/Specific/montgomery64_2e212m29_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e212m29_4limbs/fesubDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e212m29_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e212m29_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e213m3_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e213m3_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e213m3_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e213m3_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e213m3_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery64_2e213m3_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e213m3_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e213m3_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e213m3_4limbs/femul.c130
-rw-r--r--src/Specific/montgomery64_2e213m3_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e213m3_4limbs/femulDisplay.log122
-rw-r--r--src/Specific/montgomery64_2e213m3_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e213m3_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery64_2e213m3_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e213m3_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery64_2e213m3_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e213m3_4limbs/feopp.c24
-rw-r--r--src/Specific/montgomery64_2e213m3_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e213m3_4limbs/feoppDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e213m3_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e213m3_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e213m3_4limbs/fesub.c28
-rw-r--r--src/Specific/montgomery64_2e213m3_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e213m3_4limbs/fesubDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e213m3_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e213m3_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e216m2e108m1_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e216m2e108m1_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e216m2e108m1_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e216m2e108m1_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e216m2e108m1_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery64_2e216m2e108m1_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e216m2e108m1_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e216m2e108m1_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e216m2e108m1_4limbs/femul.c126
-rw-r--r--src/Specific/montgomery64_2e216m2e108m1_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e216m2e108m1_4limbs/femulDisplay.log118
-rw-r--r--src/Specific/montgomery64_2e216m2e108m1_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e216m2e108m1_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery64_2e216m2e108m1_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e216m2e108m1_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery64_2e216m2e108m1_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e216m2e108m1_4limbs/feopp.c24
-rw-r--r--src/Specific/montgomery64_2e216m2e108m1_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e216m2e108m1_4limbs/feoppDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e216m2e108m1_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e216m2e108m1_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e216m2e108m1_4limbs/fesub.c28
-rw-r--r--src/Specific/montgomery64_2e216m2e108m1_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e216m2e108m1_4limbs/fesubDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e216m2e108m1_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e216m2e108m1_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e221m3_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e221m3_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e221m3_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e221m3_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e221m3_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery64_2e221m3_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e221m3_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e221m3_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e221m3_4limbs/femul.c130
-rw-r--r--src/Specific/montgomery64_2e221m3_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e221m3_4limbs/femulDisplay.log122
-rw-r--r--src/Specific/montgomery64_2e221m3_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e221m3_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery64_2e221m3_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e221m3_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery64_2e221m3_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e221m3_4limbs/feopp.c24
-rw-r--r--src/Specific/montgomery64_2e221m3_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e221m3_4limbs/feoppDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e221m3_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e221m3_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e221m3_4limbs/fesub.c28
-rw-r--r--src/Specific/montgomery64_2e221m3_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e221m3_4limbs/fesubDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e221m3_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e221m3_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e222m117_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e222m117_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e222m117_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e222m117_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e222m117_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery64_2e222m117_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e222m117_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e222m117_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e222m117_4limbs/femul.c130
-rw-r--r--src/Specific/montgomery64_2e222m117_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e222m117_4limbs/femulDisplay.log122
-rw-r--r--src/Specific/montgomery64_2e222m117_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e222m117_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery64_2e222m117_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e222m117_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery64_2e222m117_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e222m117_4limbs/feopp.c24
-rw-r--r--src/Specific/montgomery64_2e222m117_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e222m117_4limbs/feoppDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e222m117_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e222m117_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e222m117_4limbs/fesub.c28
-rw-r--r--src/Specific/montgomery64_2e222m117_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e222m117_4limbs/fesubDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e222m117_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e222m117_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e224m2e96p1_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e224m2e96p1_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e224m2e96p1_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e224m2e96p1_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e224m2e96p1_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery64_2e224m2e96p1_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e224m2e96p1_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e224m2e96p1_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e224m2e96p1_4limbs/femul.c122
-rw-r--r--src/Specific/montgomery64_2e224m2e96p1_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e224m2e96p1_4limbs/femulDisplay.log114
-rw-r--r--src/Specific/montgomery64_2e224m2e96p1_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e224m2e96p1_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery64_2e224m2e96p1_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e224m2e96p1_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery64_2e224m2e96p1_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e224m2e96p1_4limbs/feopp.c24
-rw-r--r--src/Specific/montgomery64_2e224m2e96p1_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e224m2e96p1_4limbs/feoppDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e224m2e96p1_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e224m2e96p1_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e224m2e96p1_4limbs/fesub.c28
-rw-r--r--src/Specific/montgomery64_2e224m2e96p1_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e224m2e96p1_4limbs/fesubDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e224m2e96p1_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e224m2e96p1_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e226m5_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e226m5_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e226m5_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e226m5_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e226m5_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery64_2e226m5_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e226m5_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e226m5_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e226m5_4limbs/femul.c130
-rw-r--r--src/Specific/montgomery64_2e226m5_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e226m5_4limbs/femulDisplay.log122
-rw-r--r--src/Specific/montgomery64_2e226m5_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e226m5_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery64_2e226m5_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e226m5_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery64_2e226m5_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e226m5_4limbs/feopp.c24
-rw-r--r--src/Specific/montgomery64_2e226m5_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e226m5_4limbs/feoppDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e226m5_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e226m5_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e226m5_4limbs/fesub.c28
-rw-r--r--src/Specific/montgomery64_2e226m5_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e226m5_4limbs/fesubDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e226m5_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e226m5_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e230m27_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e230m27_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e230m27_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e230m27_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e230m27_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery64_2e230m27_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e230m27_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e230m27_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e230m27_4limbs/femul.c130
-rw-r--r--src/Specific/montgomery64_2e230m27_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e230m27_4limbs/femulDisplay.log122
-rw-r--r--src/Specific/montgomery64_2e230m27_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e230m27_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery64_2e230m27_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e230m27_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery64_2e230m27_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e230m27_4limbs/feopp.c24
-rw-r--r--src/Specific/montgomery64_2e230m27_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e230m27_4limbs/feoppDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e230m27_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e230m27_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e230m27_4limbs/fesub.c28
-rw-r--r--src/Specific/montgomery64_2e230m27_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e230m27_4limbs/fesubDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e230m27_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e230m27_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e235m15_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e235m15_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e235m15_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e235m15_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e235m15_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery64_2e235m15_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e235m15_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e235m15_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e235m15_4limbs/femul.c130
-rw-r--r--src/Specific/montgomery64_2e235m15_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e235m15_4limbs/femulDisplay.log122
-rw-r--r--src/Specific/montgomery64_2e235m15_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e235m15_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery64_2e235m15_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e235m15_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery64_2e235m15_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e235m15_4limbs/feopp.c24
-rw-r--r--src/Specific/montgomery64_2e235m15_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e235m15_4limbs/feoppDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e235m15_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e235m15_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e235m15_4limbs/fesub.c28
-rw-r--r--src/Specific/montgomery64_2e235m15_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e235m15_4limbs/fesubDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e235m15_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e235m15_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e243m9_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e243m9_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e243m9_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e243m9_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e243m9_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery64_2e243m9_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e243m9_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e243m9_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e243m9_4limbs/femul.c130
-rw-r--r--src/Specific/montgomery64_2e243m9_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e243m9_4limbs/femulDisplay.log122
-rw-r--r--src/Specific/montgomery64_2e243m9_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e243m9_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery64_2e243m9_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e243m9_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery64_2e243m9_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e243m9_4limbs/feopp.c24
-rw-r--r--src/Specific/montgomery64_2e243m9_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e243m9_4limbs/feoppDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e243m9_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e243m9_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e243m9_4limbs/fesub.c28
-rw-r--r--src/Specific/montgomery64_2e243m9_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e243m9_4limbs/fesubDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e243m9_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e243m9_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e251m9_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e251m9_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e251m9_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e251m9_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e251m9_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery64_2e251m9_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e251m9_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e251m9_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e251m9_4limbs/femul.c130
-rw-r--r--src/Specific/montgomery64_2e251m9_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e251m9_4limbs/femulDisplay.log122
-rw-r--r--src/Specific/montgomery64_2e251m9_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e251m9_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery64_2e251m9_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e251m9_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery64_2e251m9_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e251m9_4limbs/feopp.c24
-rw-r--r--src/Specific/montgomery64_2e251m9_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e251m9_4limbs/feoppDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e251m9_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e251m9_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e251m9_4limbs/fesub.c28
-rw-r--r--src/Specific/montgomery64_2e251m9_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e251m9_4limbs/fesubDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e251m9_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e251m9_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e254m127x2e240m1_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e254m127x2e240m1_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e254m127x2e240m1_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e254m127x2e240m1_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e254m127x2e240m1_4limbs/femul.c126
-rw-r--r--src/Specific/montgomery64_2e254m127x2e240m1_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e254m127x2e240m1_4limbs/femulDisplay.log118
-rw-r--r--src/Specific/montgomery64_2e254m127x2e240m1_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feopp.c24
-rw-r--r--src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feoppDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fesub.c28
-rw-r--r--src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fesubDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e254m127x2e240m1_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e255m19_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e255m19_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e255m19_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e255m19_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e255m19_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery64_2e255m19_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e255m19_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e255m19_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e255m19_4limbs/femul.c130
-rw-r--r--src/Specific/montgomery64_2e255m19_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e255m19_4limbs/femulDisplay.log122
-rw-r--r--src/Specific/montgomery64_2e255m19_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e255m19_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery64_2e255m19_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e255m19_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery64_2e255m19_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e255m19_4limbs/feopp.c24
-rw-r--r--src/Specific/montgomery64_2e255m19_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e255m19_4limbs/feoppDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e255m19_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e255m19_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e255m19_4limbs/fesub.c28
-rw-r--r--src/Specific/montgomery64_2e255m19_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e255m19_4limbs/fesubDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e255m19_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e255m19_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e255m765_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e255m765_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e255m765_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e255m765_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e255m765_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery64_2e255m765_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e255m765_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e255m765_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e255m765_4limbs/femul.c130
-rw-r--r--src/Specific/montgomery64_2e255m765_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e255m765_4limbs/femulDisplay.log122
-rw-r--r--src/Specific/montgomery64_2e255m765_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e255m765_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery64_2e255m765_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e255m765_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery64_2e255m765_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e255m765_4limbs/feopp.c24
-rw-r--r--src/Specific/montgomery64_2e255m765_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e255m765_4limbs/feoppDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e255m765_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e255m765_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e255m765_4limbs/fesub.c28
-rw-r--r--src/Specific/montgomery64_2e255m765_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e255m765_4limbs/fesubDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e255m765_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e255m765_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e256m189_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e256m189_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e256m189_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e256m189_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e256m189_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery64_2e256m189_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e256m189_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e256m189_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e256m189_4limbs/femul.c130
-rw-r--r--src/Specific/montgomery64_2e256m189_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e256m189_4limbs/femulDisplay.log122
-rw-r--r--src/Specific/montgomery64_2e256m189_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e256m189_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery64_2e256m189_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e256m189_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery64_2e256m189_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e256m189_4limbs/feopp.c24
-rw-r--r--src/Specific/montgomery64_2e256m189_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e256m189_4limbs/feoppDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e256m189_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e256m189_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e256m189_4limbs/fesub.c28
-rw-r--r--src/Specific/montgomery64_2e256m189_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e256m189_4limbs/fesubDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e256m189_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e256m189_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/femul.c122
-rw-r--r--src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/femulDisplay.log114
-rw-r--r--src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feopp.c23
-rw-r--r--src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feoppDisplay.log19
-rw-r--r--src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fesub.c27
-rw-r--r--src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fesubDisplay.log19
-rw-r--r--src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e256m2e32m977_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e256m2e32m977_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e256m2e32m977_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e256m2e32m977_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e256m2e32m977_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery64_2e256m2e32m977_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e256m2e32m977_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e256m2e32m977_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e256m2e32m977_4limbs/femul.c130
-rw-r--r--src/Specific/montgomery64_2e256m2e32m977_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e256m2e32m977_4limbs/femulDisplay.log122
-rw-r--r--src/Specific/montgomery64_2e256m2e32m977_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e256m2e32m977_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery64_2e256m2e32m977_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e256m2e32m977_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery64_2e256m2e32m977_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e256m2e32m977_4limbs/feopp.c24
-rw-r--r--src/Specific/montgomery64_2e256m2e32m977_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e256m2e32m977_4limbs/feoppDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e256m2e32m977_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e256m2e32m977_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e256m2e32m977_4limbs/fesub.c28
-rw-r--r--src/Specific/montgomery64_2e256m2e32m977_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e256m2e32m977_4limbs/fesubDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e256m2e32m977_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e256m2e32m977_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e256m4294968273_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e256m4294968273_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e256m4294968273_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e256m4294968273_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e256m4294968273_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery64_2e256m4294968273_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e256m4294968273_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e256m4294968273_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e256m4294968273_4limbs/femul.c130
-rw-r--r--src/Specific/montgomery64_2e256m4294968273_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e256m4294968273_4limbs/femulDisplay.log122
-rw-r--r--src/Specific/montgomery64_2e256m4294968273_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e256m4294968273_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery64_2e256m4294968273_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e256m4294968273_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery64_2e256m4294968273_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e256m4294968273_4limbs/feopp.c24
-rw-r--r--src/Specific/montgomery64_2e256m4294968273_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e256m4294968273_4limbs/feoppDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e256m4294968273_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e256m4294968273_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e256m4294968273_4limbs/fesub.c28
-rw-r--r--src/Specific/montgomery64_2e256m4294968273_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e256m4294968273_4limbs/fesubDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e256m4294968273_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e256m4294968273_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e256m88x2e240m1_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e256m88x2e240m1_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e256m88x2e240m1_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e256m88x2e240m1_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feadd.c28
-rw-r--r--src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feaddDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e256m88x2e240m1_4limbs/femul.c126
-rw-r--r--src/Specific/montgomery64_2e256m88x2e240m1_4limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e256m88x2e240m1_4limbs/femulDisplay.log118
-rw-r--r--src/Specific/montgomery64_2e256m88x2e240m1_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fenz.c11
-rw-r--r--src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fenzDisplay.log10
-rw-r--r--src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feopp.c24
-rw-r--r--src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feoppDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fesub.c28
-rw-r--r--src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fesubDisplay.log20
-rw-r--r--src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e256m88x2e240m1_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e266m3_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e266m3_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e266m3_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e266m3_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e266m3_5limbs/feadd.c34
-rw-r--r--src/Specific/montgomery64_2e266m3_5limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e266m3_5limbs/feaddDisplay.log23
-rw-r--r--src/Specific/montgomery64_2e266m3_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e266m3_5limbs/femul.c192
-rw-r--r--src/Specific/montgomery64_2e266m3_5limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e266m3_5limbs/femulDisplay.log181
-rw-r--r--src/Specific/montgomery64_2e266m3_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e266m3_5limbs/fenz.c13
-rw-r--r--src/Specific/montgomery64_2e266m3_5limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e266m3_5limbs/fenzDisplay.log11
-rw-r--r--src/Specific/montgomery64_2e266m3_5limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e266m3_5limbs/feopp.c29
-rw-r--r--src/Specific/montgomery64_2e266m3_5limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e266m3_5limbs/feoppDisplay.log23
-rw-r--r--src/Specific/montgomery64_2e266m3_5limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e266m3_5limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e266m3_5limbs/fesub.c34
-rw-r--r--src/Specific/montgomery64_2e266m3_5limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e266m3_5limbs/fesubDisplay.log23
-rw-r--r--src/Specific/montgomery64_2e266m3_5limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e266m3_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e285m9_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e285m9_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e285m9_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e285m9_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e285m9_5limbs/feadd.c34
-rw-r--r--src/Specific/montgomery64_2e285m9_5limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e285m9_5limbs/feaddDisplay.log23
-rw-r--r--src/Specific/montgomery64_2e285m9_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e285m9_5limbs/femul.c192
-rw-r--r--src/Specific/montgomery64_2e285m9_5limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e285m9_5limbs/femulDisplay.log181
-rw-r--r--src/Specific/montgomery64_2e285m9_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e285m9_5limbs/fenz.c13
-rw-r--r--src/Specific/montgomery64_2e285m9_5limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e285m9_5limbs/fenzDisplay.log11
-rw-r--r--src/Specific/montgomery64_2e285m9_5limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e285m9_5limbs/feopp.c29
-rw-r--r--src/Specific/montgomery64_2e285m9_5limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e285m9_5limbs/feoppDisplay.log23
-rw-r--r--src/Specific/montgomery64_2e285m9_5limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e285m9_5limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e285m9_5limbs/fesub.c34
-rw-r--r--src/Specific/montgomery64_2e285m9_5limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e285m9_5limbs/fesubDisplay.log23
-rw-r--r--src/Specific/montgomery64_2e285m9_5limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e285m9_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e291m19_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e291m19_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e291m19_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e291m19_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e291m19_5limbs/feadd.c34
-rw-r--r--src/Specific/montgomery64_2e291m19_5limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e291m19_5limbs/feaddDisplay.log23
-rw-r--r--src/Specific/montgomery64_2e291m19_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e291m19_5limbs/femul.c192
-rw-r--r--src/Specific/montgomery64_2e291m19_5limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e291m19_5limbs/femulDisplay.log181
-rw-r--r--src/Specific/montgomery64_2e291m19_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e291m19_5limbs/fenz.c13
-rw-r--r--src/Specific/montgomery64_2e291m19_5limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e291m19_5limbs/fenzDisplay.log11
-rw-r--r--src/Specific/montgomery64_2e291m19_5limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e291m19_5limbs/feopp.c29
-rw-r--r--src/Specific/montgomery64_2e291m19_5limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e291m19_5limbs/feoppDisplay.log23
-rw-r--r--src/Specific/montgomery64_2e291m19_5limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e291m19_5limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e291m19_5limbs/fesub.c34
-rw-r--r--src/Specific/montgomery64_2e291m19_5limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e291m19_5limbs/fesubDisplay.log23
-rw-r--r--src/Specific/montgomery64_2e291m19_5limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e291m19_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e321m9_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e321m9_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e321m9_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e321m9_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e321m9_6limbs/feadd.c40
-rw-r--r--src/Specific/montgomery64_2e321m9_6limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e321m9_6limbs/feaddDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e321m9_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e321m9_6limbs/femul.c254
-rw-r--r--src/Specific/montgomery64_2e321m9_6limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e321m9_6limbs/femulDisplay.log240
-rw-r--r--src/Specific/montgomery64_2e321m9_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e321m9_6limbs/fenz.c15
-rw-r--r--src/Specific/montgomery64_2e321m9_6limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e321m9_6limbs/fenzDisplay.log12
-rw-r--r--src/Specific/montgomery64_2e321m9_6limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e321m9_6limbs/feopp.c34
-rw-r--r--src/Specific/montgomery64_2e321m9_6limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e321m9_6limbs/feoppDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e321m9_6limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e321m9_6limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e321m9_6limbs/fesub.c40
-rw-r--r--src/Specific/montgomery64_2e321m9_6limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e321m9_6limbs/fesubDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e321m9_6limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e321m9_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e322m2e161m1_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e322m2e161m1_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e322m2e161m1_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e322m2e161m1_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e322m2e161m1_6limbs/feadd.c40
-rw-r--r--src/Specific/montgomery64_2e322m2e161m1_6limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e322m2e161m1_6limbs/feaddDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e322m2e161m1_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e322m2e161m1_6limbs/femul.c260
-rw-r--r--src/Specific/montgomery64_2e322m2e161m1_6limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e322m2e161m1_6limbs/femulDisplay.log246
-rw-r--r--src/Specific/montgomery64_2e322m2e161m1_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e322m2e161m1_6limbs/fenz.c15
-rw-r--r--src/Specific/montgomery64_2e322m2e161m1_6limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e322m2e161m1_6limbs/fenzDisplay.log12
-rw-r--r--src/Specific/montgomery64_2e322m2e161m1_6limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e322m2e161m1_6limbs/feopp.c34
-rw-r--r--src/Specific/montgomery64_2e322m2e161m1_6limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e322m2e161m1_6limbs/feoppDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e322m2e161m1_6limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e322m2e161m1_6limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e322m2e161m1_6limbs/fesub.c40
-rw-r--r--src/Specific/montgomery64_2e322m2e161m1_6limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e322m2e161m1_6limbs/fesubDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e322m2e161m1_6limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e322m2e161m1_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e336m17_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e336m17_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e336m17_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e336m17_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e336m17_6limbs/feadd.c40
-rw-r--r--src/Specific/montgomery64_2e336m17_6limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e336m17_6limbs/feaddDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e336m17_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e336m17_6limbs/femul.c266
-rw-r--r--src/Specific/montgomery64_2e336m17_6limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e336m17_6limbs/femulDisplay.log252
-rw-r--r--src/Specific/montgomery64_2e336m17_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e336m17_6limbs/fenz.c15
-rw-r--r--src/Specific/montgomery64_2e336m17_6limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e336m17_6limbs/fenzDisplay.log12
-rw-r--r--src/Specific/montgomery64_2e336m17_6limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e336m17_6limbs/feopp.c34
-rw-r--r--src/Specific/montgomery64_2e336m17_6limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e336m17_6limbs/feoppDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e336m17_6limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e336m17_6limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e336m17_6limbs/fesub.c40
-rw-r--r--src/Specific/montgomery64_2e336m17_6limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e336m17_6limbs/fesubDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e336m17_6limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e336m17_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e336m3_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e336m3_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e336m3_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e336m3_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e336m3_6limbs/feadd.c40
-rw-r--r--src/Specific/montgomery64_2e336m3_6limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e336m3_6limbs/feaddDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e336m3_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e336m3_6limbs/femul.c266
-rw-r--r--src/Specific/montgomery64_2e336m3_6limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e336m3_6limbs/femulDisplay.log252
-rw-r--r--src/Specific/montgomery64_2e336m3_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e336m3_6limbs/fenz.c15
-rw-r--r--src/Specific/montgomery64_2e336m3_6limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e336m3_6limbs/fenzDisplay.log12
-rw-r--r--src/Specific/montgomery64_2e336m3_6limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e336m3_6limbs/feopp.c34
-rw-r--r--src/Specific/montgomery64_2e336m3_6limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e336m3_6limbs/feoppDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e336m3_6limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e336m3_6limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e336m3_6limbs/fesub.c40
-rw-r--r--src/Specific/montgomery64_2e336m3_6limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e336m3_6limbs/fesubDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e336m3_6limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e336m3_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e338m15_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e338m15_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e338m15_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e338m15_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e338m15_6limbs/feadd.c40
-rw-r--r--src/Specific/montgomery64_2e338m15_6limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e338m15_6limbs/feaddDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e338m15_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e338m15_6limbs/femul.c266
-rw-r--r--src/Specific/montgomery64_2e338m15_6limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e338m15_6limbs/femulDisplay.log252
-rw-r--r--src/Specific/montgomery64_2e338m15_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e338m15_6limbs/fenz.c15
-rw-r--r--src/Specific/montgomery64_2e338m15_6limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e338m15_6limbs/fenzDisplay.log12
-rw-r--r--src/Specific/montgomery64_2e338m15_6limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e338m15_6limbs/feopp.c34
-rw-r--r--src/Specific/montgomery64_2e338m15_6limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e338m15_6limbs/feoppDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e338m15_6limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e338m15_6limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e338m15_6limbs/fesub.c40
-rw-r--r--src/Specific/montgomery64_2e338m15_6limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e338m15_6limbs/fesubDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e338m15_6limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e338m15_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e369m25_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e369m25_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e369m25_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e369m25_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e369m25_6limbs/feadd.c40
-rw-r--r--src/Specific/montgomery64_2e369m25_6limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e369m25_6limbs/feaddDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e369m25_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e369m25_6limbs/femul.c266
-rw-r--r--src/Specific/montgomery64_2e369m25_6limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e369m25_6limbs/femulDisplay.log252
-rw-r--r--src/Specific/montgomery64_2e369m25_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e369m25_6limbs/fenz.c15
-rw-r--r--src/Specific/montgomery64_2e369m25_6limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e369m25_6limbs/fenzDisplay.log12
-rw-r--r--src/Specific/montgomery64_2e369m25_6limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e369m25_6limbs/feopp.c34
-rw-r--r--src/Specific/montgomery64_2e369m25_6limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e369m25_6limbs/feoppDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e369m25_6limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e369m25_6limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e369m25_6limbs/fesub.c40
-rw-r--r--src/Specific/montgomery64_2e369m25_6limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e369m25_6limbs/fesubDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e369m25_6limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e369m25_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e379m19_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e379m19_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e379m19_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e379m19_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e379m19_6limbs/feadd.c40
-rw-r--r--src/Specific/montgomery64_2e379m19_6limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e379m19_6limbs/feaddDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e379m19_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e379m19_6limbs/femul.c266
-rw-r--r--src/Specific/montgomery64_2e379m19_6limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e379m19_6limbs/femulDisplay.log252
-rw-r--r--src/Specific/montgomery64_2e379m19_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e379m19_6limbs/fenz.c15
-rw-r--r--src/Specific/montgomery64_2e379m19_6limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e379m19_6limbs/fenzDisplay.log12
-rw-r--r--src/Specific/montgomery64_2e379m19_6limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e379m19_6limbs/feopp.c34
-rw-r--r--src/Specific/montgomery64_2e379m19_6limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e379m19_6limbs/feoppDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e379m19_6limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e379m19_6limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e379m19_6limbs/fesub.c40
-rw-r--r--src/Specific/montgomery64_2e379m19_6limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e379m19_6limbs/fesubDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e379m19_6limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e379m19_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e382m105_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e382m105_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e382m105_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e382m105_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e382m105_6limbs/feadd.c40
-rw-r--r--src/Specific/montgomery64_2e382m105_6limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e382m105_6limbs/feaddDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e382m105_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e382m105_6limbs/femul.c266
-rw-r--r--src/Specific/montgomery64_2e382m105_6limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e382m105_6limbs/femulDisplay.log252
-rw-r--r--src/Specific/montgomery64_2e382m105_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e382m105_6limbs/fenz.c15
-rw-r--r--src/Specific/montgomery64_2e382m105_6limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e382m105_6limbs/fenzDisplay.log12
-rw-r--r--src/Specific/montgomery64_2e382m105_6limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e382m105_6limbs/feopp.c34
-rw-r--r--src/Specific/montgomery64_2e382m105_6limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e382m105_6limbs/feoppDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e382m105_6limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e382m105_6limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e382m105_6limbs/fesub.c40
-rw-r--r--src/Specific/montgomery64_2e382m105_6limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e382m105_6limbs/fesubDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e382m105_6limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e382m105_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e383m187_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e383m187_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e383m187_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e383m187_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e383m187_6limbs/feadd.c40
-rw-r--r--src/Specific/montgomery64_2e383m187_6limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e383m187_6limbs/feaddDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e383m187_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e383m187_6limbs/femul.c266
-rw-r--r--src/Specific/montgomery64_2e383m187_6limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e383m187_6limbs/femulDisplay.log252
-rw-r--r--src/Specific/montgomery64_2e383m187_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e383m187_6limbs/fenz.c15
-rw-r--r--src/Specific/montgomery64_2e383m187_6limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e383m187_6limbs/fenzDisplay.log12
-rw-r--r--src/Specific/montgomery64_2e383m187_6limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e383m187_6limbs/feopp.c34
-rw-r--r--src/Specific/montgomery64_2e383m187_6limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e383m187_6limbs/feoppDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e383m187_6limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e383m187_6limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e383m187_6limbs/fesub.c40
-rw-r--r--src/Specific/montgomery64_2e383m187_6limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e383m187_6limbs/fesubDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e383m187_6limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e383m187_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e383m31_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e383m31_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e383m31_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e383m31_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e383m31_6limbs/feadd.c40
-rw-r--r--src/Specific/montgomery64_2e383m31_6limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e383m31_6limbs/feaddDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e383m31_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e383m31_6limbs/femul.c266
-rw-r--r--src/Specific/montgomery64_2e383m31_6limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e383m31_6limbs/femulDisplay.log252
-rw-r--r--src/Specific/montgomery64_2e383m31_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e383m31_6limbs/fenz.c15
-rw-r--r--src/Specific/montgomery64_2e383m31_6limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e383m31_6limbs/fenzDisplay.log12
-rw-r--r--src/Specific/montgomery64_2e383m31_6limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e383m31_6limbs/feopp.c34
-rw-r--r--src/Specific/montgomery64_2e383m31_6limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e383m31_6limbs/feoppDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e383m31_6limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e383m31_6limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e383m31_6limbs/fesub.c40
-rw-r--r--src/Specific/montgomery64_2e383m31_6limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e383m31_6limbs/fesubDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e383m31_6limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e383m31_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e383m421_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e383m421_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e383m421_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e383m421_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e383m421_6limbs/feadd.c40
-rw-r--r--src/Specific/montgomery64_2e383m421_6limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e383m421_6limbs/feaddDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e383m421_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e383m421_6limbs/femul.c266
-rw-r--r--src/Specific/montgomery64_2e383m421_6limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e383m421_6limbs/femulDisplay.log252
-rw-r--r--src/Specific/montgomery64_2e383m421_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e383m421_6limbs/fenz.c15
-rw-r--r--src/Specific/montgomery64_2e383m421_6limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e383m421_6limbs/fenzDisplay.log12
-rw-r--r--src/Specific/montgomery64_2e383m421_6limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e383m421_6limbs/feopp.c34
-rw-r--r--src/Specific/montgomery64_2e383m421_6limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e383m421_6limbs/feoppDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e383m421_6limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e383m421_6limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e383m421_6limbs/fesub.c40
-rw-r--r--src/Specific/montgomery64_2e383m421_6limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e383m421_6limbs/fesubDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e383m421_6limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e383m421_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feadd.c40
-rw-r--r--src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feaddDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/femul.c266
-rw-r--r--src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/femulDisplay.log252
-rw-r--r--src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fenz.c15
-rw-r--r--src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fenzDisplay.log12
-rw-r--r--src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feopp.c34
-rw-r--r--src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feoppDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fesub.c40
-rw-r--r--src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fesubDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e384m317_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e384m317_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e384m317_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e384m317_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e384m317_6limbs/feadd.c40
-rw-r--r--src/Specific/montgomery64_2e384m317_6limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e384m317_6limbs/feaddDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e384m317_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e384m317_6limbs/femul.c266
-rw-r--r--src/Specific/montgomery64_2e384m317_6limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e384m317_6limbs/femulDisplay.log252
-rw-r--r--src/Specific/montgomery64_2e384m317_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e384m317_6limbs/fenz.c15
-rw-r--r--src/Specific/montgomery64_2e384m317_6limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e384m317_6limbs/fenzDisplay.log12
-rw-r--r--src/Specific/montgomery64_2e384m317_6limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e384m317_6limbs/feopp.c34
-rw-r--r--src/Specific/montgomery64_2e384m317_6limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e384m317_6limbs/feoppDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e384m317_6limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e384m317_6limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e384m317_6limbs/fesub.c40
-rw-r--r--src/Specific/montgomery64_2e384m317_6limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e384m317_6limbs/fesubDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e384m317_6limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e384m317_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e384m5x2e368m1_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e384m5x2e368m1_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e384m5x2e368m1_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e384m5x2e368m1_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feadd.c40
-rw-r--r--src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feaddDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e384m5x2e368m1_6limbs/femul.c260
-rw-r--r--src/Specific/montgomery64_2e384m5x2e368m1_6limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e384m5x2e368m1_6limbs/femulDisplay.log246
-rw-r--r--src/Specific/montgomery64_2e384m5x2e368m1_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fenz.c15
-rw-r--r--src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fenzDisplay.log12
-rw-r--r--src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feopp.c34
-rw-r--r--src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feoppDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fesub.c40
-rw-r--r--src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fesubDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e384m5x2e368m1_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e384m79x2e376m1_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e384m79x2e376m1_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e384m79x2e376m1_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e384m79x2e376m1_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feadd.c40
-rw-r--r--src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feaddDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e384m79x2e376m1_6limbs/femul.c260
-rw-r--r--src/Specific/montgomery64_2e384m79x2e376m1_6limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e384m79x2e376m1_6limbs/femulDisplay.log246
-rw-r--r--src/Specific/montgomery64_2e384m79x2e376m1_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fenz.c15
-rw-r--r--src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fenzDisplay.log12
-rw-r--r--src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feopp.c34
-rw-r--r--src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feoppDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fesub.c40
-rw-r--r--src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fesubDisplay.log26
-rw-r--r--src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e384m79x2e376m1_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e389m21_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e389m21_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e389m21_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e389m21_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e389m21_7limbs/feadd.c46
-rw-r--r--src/Specific/montgomery64_2e389m21_7limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e389m21_7limbs/feaddDisplay.log29
-rw-r--r--src/Specific/montgomery64_2e389m21_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e389m21_7limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e389m21_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e389m21_7limbs/fenz.c17
-rw-r--r--src/Specific/montgomery64_2e389m21_7limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e389m21_7limbs/fenzDisplay.log13
-rw-r--r--src/Specific/montgomery64_2e389m21_7limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e389m21_7limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e389m21_7limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e389m21_7limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e389m21_7limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e389m21_7limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e389m21_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e401m31_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e401m31_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e401m31_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e401m31_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e401m31_7limbs/feadd.c46
-rw-r--r--src/Specific/montgomery64_2e401m31_7limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e401m31_7limbs/feaddDisplay.log29
-rw-r--r--src/Specific/montgomery64_2e401m31_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e401m31_7limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e401m31_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e401m31_7limbs/fenz.c17
-rw-r--r--src/Specific/montgomery64_2e401m31_7limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e401m31_7limbs/fenzDisplay.log13
-rw-r--r--src/Specific/montgomery64_2e401m31_7limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e401m31_7limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e401m31_7limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e401m31_7limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e401m31_7limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e401m31_7limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e401m31_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e413m21_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e413m21_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e413m21_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e413m21_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e413m21_7limbs/feadd.c46
-rw-r--r--src/Specific/montgomery64_2e413m21_7limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e413m21_7limbs/feaddDisplay.log29
-rw-r--r--src/Specific/montgomery64_2e413m21_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e413m21_7limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e413m21_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e413m21_7limbs/fenz.c17
-rw-r--r--src/Specific/montgomery64_2e413m21_7limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e413m21_7limbs/fenzDisplay.log13
-rw-r--r--src/Specific/montgomery64_2e413m21_7limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e413m21_7limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e413m21_7limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e413m21_7limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e413m21_7limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e413m21_7limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e413m21_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e414m17_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e414m17_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e414m17_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e414m17_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e414m17_7limbs/feadd.c46
-rw-r--r--src/Specific/montgomery64_2e414m17_7limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e414m17_7limbs/feaddDisplay.log29
-rw-r--r--src/Specific/montgomery64_2e414m17_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e414m17_7limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e414m17_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e414m17_7limbs/fenz.c17
-rw-r--r--src/Specific/montgomery64_2e414m17_7limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e414m17_7limbs/fenzDisplay.log13
-rw-r--r--src/Specific/montgomery64_2e414m17_7limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e414m17_7limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e414m17_7limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e414m17_7limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e414m17_7limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e414m17_7limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e414m17_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e416m2e208m1_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e416m2e208m1_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e416m2e208m1_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e416m2e208m1_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e416m2e208m1_7limbs/feadd.c46
-rw-r--r--src/Specific/montgomery64_2e416m2e208m1_7limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e416m2e208m1_7limbs/feaddDisplay.log29
-rw-r--r--src/Specific/montgomery64_2e416m2e208m1_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e416m2e208m1_7limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e416m2e208m1_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e416m2e208m1_7limbs/fenz.c17
-rw-r--r--src/Specific/montgomery64_2e416m2e208m1_7limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e416m2e208m1_7limbs/fenzDisplay.log13
-rw-r--r--src/Specific/montgomery64_2e416m2e208m1_7limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e416m2e208m1_7limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e416m2e208m1_7limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e416m2e208m1_7limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e416m2e208m1_7limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e416m2e208m1_7limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e416m2e208m1_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e444m17_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e444m17_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e444m17_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e444m17_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e444m17_7limbs/feadd.c46
-rw-r--r--src/Specific/montgomery64_2e444m17_7limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e444m17_7limbs/feaddDisplay.log29
-rw-r--r--src/Specific/montgomery64_2e444m17_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e444m17_7limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e444m17_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e444m17_7limbs/fenz.c17
-rw-r--r--src/Specific/montgomery64_2e444m17_7limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e444m17_7limbs/fenzDisplay.log13
-rw-r--r--src/Specific/montgomery64_2e444m17_7limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e444m17_7limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e444m17_7limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e444m17_7limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e444m17_7limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e444m17_7limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e444m17_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e448m2e224m1_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e448m2e224m1_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e448m2e224m1_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e448m2e224m1_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e448m2e224m1_7limbs/feadd.c46
-rw-r--r--src/Specific/montgomery64_2e448m2e224m1_7limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e448m2e224m1_7limbs/feaddDisplay.log29
-rw-r--r--src/Specific/montgomery64_2e448m2e224m1_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e448m2e224m1_7limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e448m2e224m1_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e448m2e224m1_7limbs/fenz.c17
-rw-r--r--src/Specific/montgomery64_2e448m2e224m1_7limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e448m2e224m1_7limbs/fenzDisplay.log13
-rw-r--r--src/Specific/montgomery64_2e448m2e224m1_7limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e448m2e224m1_7limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e448m2e224m1_7limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e448m2e224m1_7limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e448m2e224m1_7limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e448m2e224m1_7limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e448m2e224m1_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e450m2e225m1_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e450m2e225m1_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e450m2e225m1_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e450m2e225m1_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e450m2e225m1_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery64_2e450m2e225m1_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e450m2e225m1_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery64_2e450m2e225m1_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e450m2e225m1_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e450m2e225m1_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e450m2e225m1_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery64_2e450m2e225m1_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e450m2e225m1_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery64_2e450m2e225m1_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e450m2e225m1_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e450m2e225m1_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e450m2e225m1_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e450m2e225m1_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e450m2e225m1_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e450m2e225m1_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e452m3_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e452m3_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e452m3_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e452m3_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e452m3_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery64_2e452m3_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e452m3_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery64_2e452m3_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e452m3_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e452m3_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e452m3_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery64_2e452m3_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e452m3_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery64_2e452m3_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e452m3_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e452m3_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e452m3_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e452m3_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e452m3_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e452m3_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e468m17_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e468m17_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e468m17_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e468m17_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e468m17_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery64_2e468m17_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e468m17_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery64_2e468m17_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e468m17_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e468m17_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e468m17_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery64_2e468m17_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e468m17_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery64_2e468m17_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e468m17_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e468m17_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e468m17_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e468m17_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e468m17_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e468m17_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e480m2e240m1_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e480m2e240m1_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e480m2e240m1_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e480m2e240m1_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e480m2e240m1_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery64_2e480m2e240m1_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e480m2e240m1_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery64_2e480m2e240m1_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e480m2e240m1_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e480m2e240m1_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e480m2e240m1_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery64_2e480m2e240m1_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e480m2e240m1_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery64_2e480m2e240m1_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e480m2e240m1_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e480m2e240m1_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e480m2e240m1_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e480m2e240m1_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e480m2e240m1_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e480m2e240m1_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e488m17_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e488m17_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e488m17_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e488m17_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e488m17_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery64_2e488m17_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e488m17_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery64_2e488m17_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e488m17_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e488m17_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e488m17_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery64_2e488m17_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e488m17_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery64_2e488m17_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e488m17_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e488m17_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e488m17_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e488m17_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e488m17_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e488m17_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e489m21_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e489m21_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e489m21_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e489m21_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e489m21_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery64_2e489m21_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e489m21_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery64_2e489m21_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e489m21_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e489m21_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e489m21_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery64_2e489m21_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e489m21_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery64_2e489m21_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e489m21_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e489m21_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e489m21_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e489m21_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e489m21_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e489m21_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e495m31_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e495m31_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e495m31_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e495m31_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e495m31_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery64_2e495m31_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e495m31_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery64_2e495m31_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e495m31_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e495m31_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e495m31_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery64_2e495m31_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e495m31_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery64_2e495m31_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e495m31_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e495m31_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e495m31_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e495m31_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e495m31_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e495m31_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e510m290x2e496m1_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e510m290x2e496m1_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e510m290x2e496m1_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e510m290x2e496m1_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e510m290x2e496m1_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery64_2e510m290x2e496m1_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e510m290x2e496m1_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery64_2e510m290x2e496m1_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e510m290x2e496m1_8limbs/femul.c443
-rw-r--r--src/Specific/montgomery64_2e510m290x2e496m1_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e510m290x2e496m1_8limbs/femulDisplay.log423
-rw-r--r--src/Specific/montgomery64_2e510m290x2e496m1_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e510m290x2e496m1_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e510m290x2e496m1_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e510m290x2e496m1_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e511m187_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e511m187_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e511m187_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e511m187_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e511m187_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery64_2e511m187_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e511m187_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery64_2e511m187_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e511m187_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e511m187_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e511m187_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery64_2e511m187_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e511m187_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery64_2e511m187_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e511m187_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e511m187_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e511m187_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e511m187_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e511m187_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e511m187_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e511m481_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e511m481_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e511m481_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e511m481_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e511m481_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery64_2e511m481_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e511m481_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery64_2e511m481_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e511m481_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e511m481_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e511m481_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery64_2e511m481_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e511m481_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery64_2e511m481_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e511m481_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e511m481_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e511m481_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e511m481_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e511m481_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e511m481_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e512m491x2e496m1_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e512m491x2e496m1_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e512m491x2e496m1_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e512m491x2e496m1_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e512m491x2e496m1_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery64_2e512m491x2e496m1_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e512m491x2e496m1_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery64_2e512m491x2e496m1_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e512m491x2e496m1_8limbs/femul.c443
-rw-r--r--src/Specific/montgomery64_2e512m491x2e496m1_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e512m491x2e496m1_8limbs/femulDisplay.log423
-rw-r--r--src/Specific/montgomery64_2e512m491x2e496m1_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e512m491x2e496m1_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e512m491x2e496m1_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e512m491x2e496m1_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e512m569_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e512m569_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e512m569_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e512m569_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e512m569_8limbs/feadd.c52
-rw-r--r--src/Specific/montgomery64_2e512m569_8limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e512m569_8limbs/feaddDisplay.log32
-rw-r--r--src/Specific/montgomery64_2e512m569_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e512m569_8limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e512m569_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e512m569_8limbs/fenz.c19
-rw-r--r--src/Specific/montgomery64_2e512m569_8limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e512m569_8limbs/fenzDisplay.log14
-rw-r--r--src/Specific/montgomery64_2e512m569_8limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e512m569_8limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e512m569_8limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e512m569_8limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e512m569_8limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e512m569_8limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e512m569_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/montgomery64_2e521m1_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/montgomery64_2e521m1_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/montgomery64_2e521m1_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/montgomery64_2e521m1_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/montgomery64_2e521m1_9limbs/feadd.c58
-rw-r--r--src/Specific/montgomery64_2e521m1_9limbs/feadd.v14
-rw-r--r--src/Specific/montgomery64_2e521m1_9limbs/feaddDisplay.log35
-rw-r--r--src/Specific/montgomery64_2e521m1_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e521m1_9limbs/femul.v14
-rw-r--r--src/Specific/montgomery64_2e521m1_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e521m1_9limbs/fenz.c21
-rw-r--r--src/Specific/montgomery64_2e521m1_9limbs/fenz.v16
-rw-r--r--src/Specific/montgomery64_2e521m1_9limbs/fenzDisplay.log15
-rw-r--r--src/Specific/montgomery64_2e521m1_9limbs/fenzDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e521m1_9limbs/feopp.v14
-rw-r--r--src/Specific/montgomery64_2e521m1_9limbs/feoppDisplay.v4
-rw-r--r--src/Specific/montgomery64_2e521m1_9limbs/fesquare.c5
-rw-r--r--src/Specific/montgomery64_2e521m1_9limbs/fesub.v14
-rw-r--r--src/Specific/montgomery64_2e521m1_9limbs/fesubDisplay.v4
-rwxr-xr-xsrc/Specific/montgomery64_2e521m1_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e127m1_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e127m1_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e127m1_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e127m1_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e127m1_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas32_2e127m1_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e127m1_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e127m1_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e127m1_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e127m1_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e127m1_5limbs/femul.c43
-rw-r--r--src/Specific/solinas32_2e127m1_5limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e127m1_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas32_2e127m1_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e127m1_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas32_2e127m1_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e127m1_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas32_2e127m1_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e127m1_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas32_2e127m1_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e127m1_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e127m1_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e127m1_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas32_2e127m1_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e127m1_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas32_2e127m1_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e127m1_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e127m1_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e127m1_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e127m1_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e127m1_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e127m1_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas32_2e127m1_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e127m1_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e127m1_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e127m1_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e127m1_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e127m1_6limbs/femul.c50
-rw-r--r--src/Specific/solinas32_2e127m1_6limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e127m1_6limbs/femulDisplay.log36
-rw-r--r--src/Specific/solinas32_2e127m1_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e127m1_6limbs/fesquare.c44
-rw-r--r--src/Specific/solinas32_2e127m1_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e127m1_6limbs/fesquareDisplay.log36
-rw-r--r--src/Specific/solinas32_2e127m1_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e127m1_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas32_2e127m1_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e127m1_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e127m1_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e127m1_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas32_2e127m1_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e127m1_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas32_2e127m1_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e127m1_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e129m25_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e129m25_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e129m25_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e129m25_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e129m25_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas32_2e129m25_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e129m25_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e129m25_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e129m25_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e129m25_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e129m25_5limbs/femul.c43
-rw-r--r--src/Specific/solinas32_2e129m25_5limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e129m25_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas32_2e129m25_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e129m25_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas32_2e129m25_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e129m25_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas32_2e129m25_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e129m25_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas32_2e129m25_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e129m25_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e129m25_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e129m25_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas32_2e129m25_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e129m25_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas32_2e129m25_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e129m25_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e129m25_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e129m25_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e129m25_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e129m25_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e129m25_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas32_2e129m25_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e129m25_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e129m25_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e129m25_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e129m25_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e129m25_6limbs/femul.c50
-rw-r--r--src/Specific/solinas32_2e129m25_6limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e129m25_6limbs/femulDisplay.log36
-rw-r--r--src/Specific/solinas32_2e129m25_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e129m25_6limbs/fesquare.c44
-rw-r--r--src/Specific/solinas32_2e129m25_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e129m25_6limbs/fesquareDisplay.log36
-rw-r--r--src/Specific/solinas32_2e129m25_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e129m25_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas32_2e129m25_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e129m25_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e129m25_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e129m25_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas32_2e129m25_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e129m25_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas32_2e129m25_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e129m25_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e130m5_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e130m5_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e130m5_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e130m5_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e130m5_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas32_2e130m5_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e130m5_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e130m5_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e130m5_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e130m5_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e130m5_5limbs/femul.c43
-rw-r--r--src/Specific/solinas32_2e130m5_5limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e130m5_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas32_2e130m5_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e130m5_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas32_2e130m5_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e130m5_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas32_2e130m5_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e130m5_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas32_2e130m5_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e130m5_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e130m5_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e130m5_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas32_2e130m5_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e130m5_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas32_2e130m5_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e130m5_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e130m5_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e130m5_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e130m5_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e130m5_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e130m5_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas32_2e130m5_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e130m5_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e130m5_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e130m5_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e130m5_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e130m5_6limbs/femul.c50
-rw-r--r--src/Specific/solinas32_2e130m5_6limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e130m5_6limbs/femulDisplay.log36
-rw-r--r--src/Specific/solinas32_2e130m5_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e130m5_6limbs/fesquare.c44
-rw-r--r--src/Specific/solinas32_2e130m5_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e130m5_6limbs/fesquareDisplay.log36
-rw-r--r--src/Specific/solinas32_2e130m5_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e130m5_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas32_2e130m5_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e130m5_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e130m5_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e130m5_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas32_2e130m5_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e130m5_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas32_2e130m5_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e130m5_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e137m13_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e137m13_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e137m13_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e137m13_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e137m13_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas32_2e137m13_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e137m13_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e137m13_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e137m13_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e137m13_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e137m13_5limbs/femul.c43
-rw-r--r--src/Specific/solinas32_2e137m13_5limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e137m13_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas32_2e137m13_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e137m13_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas32_2e137m13_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e137m13_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas32_2e137m13_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e137m13_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas32_2e137m13_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e137m13_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e137m13_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e137m13_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas32_2e137m13_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e137m13_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas32_2e137m13_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e137m13_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e137m13_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e137m13_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e137m13_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e137m13_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e137m13_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas32_2e137m13_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e137m13_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e137m13_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e137m13_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e137m13_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e137m13_6limbs/femul.c50
-rw-r--r--src/Specific/solinas32_2e137m13_6limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e137m13_6limbs/femulDisplay.log36
-rw-r--r--src/Specific/solinas32_2e137m13_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e137m13_6limbs/fesquare.c44
-rw-r--r--src/Specific/solinas32_2e137m13_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e137m13_6limbs/fesquareDisplay.log36
-rw-r--r--src/Specific/solinas32_2e137m13_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e137m13_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas32_2e137m13_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e137m13_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e137m13_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e137m13_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas32_2e137m13_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e137m13_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas32_2e137m13_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e137m13_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e140m27_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e140m27_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e140m27_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e140m27_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e140m27_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas32_2e140m27_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e140m27_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e140m27_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e140m27_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e140m27_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e140m27_6limbs/femul.c50
-rw-r--r--src/Specific/solinas32_2e140m27_6limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e140m27_6limbs/femulDisplay.log36
-rw-r--r--src/Specific/solinas32_2e140m27_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e140m27_6limbs/fesquare.c44
-rw-r--r--src/Specific/solinas32_2e140m27_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e140m27_6limbs/fesquareDisplay.log36
-rw-r--r--src/Specific/solinas32_2e140m27_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e140m27_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas32_2e140m27_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e140m27_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e140m27_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e140m27_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas32_2e140m27_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e140m27_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas32_2e140m27_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e140m27_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e140m27_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e140m27_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e140m27_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e140m27_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e140m27_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas32_2e140m27_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e140m27_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e140m27_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e140m27_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e140m27_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e140m27_7limbs/femul.c57
-rw-r--r--src/Specific/solinas32_2e140m27_7limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e140m27_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas32_2e140m27_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e140m27_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas32_2e140m27_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e140m27_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas32_2e140m27_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e140m27_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas32_2e140m27_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e140m27_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e140m27_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e140m27_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas32_2e140m27_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e140m27_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas32_2e140m27_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e140m27_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e141m9_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e141m9_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e141m9_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e141m9_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e141m9_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas32_2e141m9_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e141m9_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e141m9_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e141m9_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e141m9_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e141m9_6limbs/femul.c50
-rw-r--r--src/Specific/solinas32_2e141m9_6limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e141m9_6limbs/femulDisplay.log36
-rw-r--r--src/Specific/solinas32_2e141m9_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e141m9_6limbs/fesquare.c44
-rw-r--r--src/Specific/solinas32_2e141m9_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e141m9_6limbs/fesquareDisplay.log36
-rw-r--r--src/Specific/solinas32_2e141m9_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e141m9_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas32_2e141m9_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e141m9_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e141m9_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e141m9_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas32_2e141m9_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e141m9_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas32_2e141m9_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e141m9_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e141m9_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e141m9_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e141m9_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e141m9_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e141m9_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas32_2e141m9_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e141m9_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e141m9_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e141m9_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e141m9_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e141m9_7limbs/femul.c57
-rw-r--r--src/Specific/solinas32_2e141m9_7limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e141m9_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas32_2e141m9_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e141m9_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas32_2e141m9_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e141m9_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas32_2e141m9_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e141m9_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas32_2e141m9_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e141m9_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e141m9_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e141m9_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas32_2e141m9_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e141m9_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas32_2e141m9_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e141m9_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e150m3_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e150m3_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e150m3_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e150m3_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e150m3_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas32_2e150m3_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e150m3_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e150m3_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e150m3_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e150m3_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e150m3_6limbs/femul.c50
-rw-r--r--src/Specific/solinas32_2e150m3_6limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e150m3_6limbs/femulDisplay.log36
-rw-r--r--src/Specific/solinas32_2e150m3_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e150m3_6limbs/fesquare.c44
-rw-r--r--src/Specific/solinas32_2e150m3_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e150m3_6limbs/fesquareDisplay.log36
-rw-r--r--src/Specific/solinas32_2e150m3_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e150m3_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas32_2e150m3_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e150m3_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e150m3_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e150m3_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas32_2e150m3_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e150m3_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas32_2e150m3_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e150m3_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e150m3_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e150m3_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e150m3_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e150m3_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e150m3_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas32_2e150m3_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e150m3_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e150m3_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e150m3_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e150m3_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e150m3_7limbs/femul.c57
-rw-r--r--src/Specific/solinas32_2e150m3_7limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e150m3_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas32_2e150m3_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e150m3_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas32_2e150m3_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e150m3_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas32_2e150m3_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e150m3_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas32_2e150m3_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e150m3_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e150m3_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e150m3_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas32_2e150m3_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e150m3_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas32_2e150m3_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e150m3_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e150m5_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e150m5_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e150m5_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e150m5_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e150m5_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas32_2e150m5_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e150m5_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e150m5_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e150m5_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e150m5_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e150m5_6limbs/femul.c50
-rw-r--r--src/Specific/solinas32_2e150m5_6limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e150m5_6limbs/femulDisplay.log36
-rw-r--r--src/Specific/solinas32_2e150m5_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e150m5_6limbs/fesquare.c44
-rw-r--r--src/Specific/solinas32_2e150m5_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e150m5_6limbs/fesquareDisplay.log36
-rw-r--r--src/Specific/solinas32_2e150m5_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e150m5_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas32_2e150m5_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e150m5_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e150m5_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e150m5_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas32_2e150m5_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e150m5_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas32_2e150m5_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e150m5_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e150m5_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e150m5_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e150m5_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e150m5_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e150m5_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas32_2e150m5_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e150m5_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e150m5_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e150m5_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e150m5_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e150m5_7limbs/femul.c57
-rw-r--r--src/Specific/solinas32_2e150m5_7limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e150m5_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas32_2e150m5_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e150m5_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas32_2e150m5_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e150m5_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas32_2e150m5_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e150m5_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas32_2e150m5_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e150m5_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e150m5_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e150m5_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas32_2e150m5_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e150m5_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas32_2e150m5_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e150m5_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e152m17_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e152m17_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e152m17_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e152m17_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e152m17_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas32_2e152m17_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e152m17_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e152m17_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e152m17_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e152m17_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e152m17_6limbs/femul.c50
-rw-r--r--src/Specific/solinas32_2e152m17_6limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e152m17_6limbs/femulDisplay.log36
-rw-r--r--src/Specific/solinas32_2e152m17_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e152m17_6limbs/fesquare.c44
-rw-r--r--src/Specific/solinas32_2e152m17_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e152m17_6limbs/fesquareDisplay.log36
-rw-r--r--src/Specific/solinas32_2e152m17_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e152m17_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas32_2e152m17_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e152m17_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e152m17_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e152m17_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas32_2e152m17_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e152m17_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas32_2e152m17_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e152m17_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e152m17_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e152m17_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e152m17_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e152m17_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e152m17_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas32_2e152m17_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e152m17_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e152m17_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e152m17_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e152m17_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e152m17_7limbs/femul.c57
-rw-r--r--src/Specific/solinas32_2e152m17_7limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e152m17_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas32_2e152m17_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e152m17_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas32_2e152m17_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e152m17_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas32_2e152m17_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e152m17_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas32_2e152m17_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e152m17_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e152m17_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e152m17_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas32_2e152m17_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e152m17_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas32_2e152m17_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e152m17_7limbs/py_interpreter.sh4
-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
-rw-r--r--src/Specific/solinas32_2e158m15_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e158m15_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e158m15_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e158m15_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e158m15_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas32_2e158m15_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e158m15_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e158m15_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e158m15_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e158m15_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e158m15_7limbs/femul.c57
-rw-r--r--src/Specific/solinas32_2e158m15_7limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e158m15_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas32_2e158m15_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e158m15_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas32_2e158m15_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e158m15_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas32_2e158m15_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e158m15_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas32_2e158m15_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e158m15_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e158m15_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e158m15_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas32_2e158m15_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e158m15_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas32_2e158m15_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e158m15_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e165m25_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e165m25_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e165m25_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e165m25_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e165m25_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas32_2e165m25_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e165m25_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e165m25_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e165m25_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e165m25_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e165m25_7limbs/femul.c57
-rw-r--r--src/Specific/solinas32_2e165m25_7limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e165m25_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas32_2e165m25_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e165m25_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas32_2e165m25_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e165m25_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas32_2e165m25_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e165m25_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas32_2e165m25_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e165m25_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e165m25_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e165m25_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas32_2e165m25_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e165m25_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas32_2e165m25_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e165m25_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e165m25_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e165m25_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e165m25_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e165m25_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e165m25_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas32_2e165m25_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e165m25_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e165m25_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e165m25_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e165m25_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e165m25_8limbs/femul.c64
-rw-r--r--src/Specific/solinas32_2e165m25_8limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e165m25_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas32_2e165m25_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e165m25_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas32_2e165m25_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e165m25_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas32_2e165m25_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e165m25_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas32_2e165m25_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e165m25_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e165m25_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e165m25_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas32_2e165m25_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e165m25_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas32_2e165m25_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e165m25_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e166m5_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e166m5_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e166m5_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e166m5_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e166m5_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas32_2e166m5_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e166m5_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e166m5_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e166m5_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e166m5_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e166m5_6limbs/femul.c50
-rw-r--r--src/Specific/solinas32_2e166m5_6limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e166m5_6limbs/femulDisplay.log36
-rw-r--r--src/Specific/solinas32_2e166m5_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e166m5_6limbs/fesquare.c44
-rw-r--r--src/Specific/solinas32_2e166m5_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e166m5_6limbs/fesquareDisplay.log36
-rw-r--r--src/Specific/solinas32_2e166m5_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e166m5_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas32_2e166m5_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e166m5_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e166m5_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e166m5_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas32_2e166m5_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e166m5_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas32_2e166m5_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e166m5_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e166m5_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e166m5_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e166m5_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e166m5_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e166m5_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas32_2e166m5_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e166m5_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e166m5_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e166m5_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e166m5_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e166m5_7limbs/femul.c57
-rw-r--r--src/Specific/solinas32_2e166m5_7limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e166m5_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas32_2e166m5_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e166m5_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas32_2e166m5_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e166m5_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas32_2e166m5_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e166m5_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas32_2e166m5_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e166m5_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e166m5_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e166m5_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas32_2e166m5_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e166m5_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas32_2e166m5_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e166m5_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e171m19_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e171m19_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e171m19_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e171m19_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e171m19_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas32_2e171m19_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e171m19_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e171m19_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e171m19_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e171m19_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e171m19_7limbs/femul.c57
-rw-r--r--src/Specific/solinas32_2e171m19_7limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e171m19_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas32_2e171m19_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e171m19_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas32_2e171m19_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e171m19_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas32_2e171m19_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e171m19_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas32_2e171m19_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e171m19_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e171m19_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e171m19_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas32_2e171m19_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e171m19_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas32_2e171m19_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e171m19_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e171m19_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e171m19_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e171m19_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e171m19_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e171m19_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas32_2e171m19_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e171m19_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e171m19_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e171m19_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e171m19_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e171m19_8limbs/femul.c64
-rw-r--r--src/Specific/solinas32_2e171m19_8limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e171m19_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas32_2e171m19_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e171m19_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas32_2e171m19_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e171m19_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas32_2e171m19_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e171m19_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas32_2e171m19_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e171m19_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e171m19_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e171m19_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas32_2e171m19_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e171m19_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas32_2e171m19_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e171m19_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e174m17_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e174m17_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e174m17_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e174m17_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e174m17_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas32_2e174m17_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e174m17_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e174m17_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e174m17_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e174m17_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e174m17_7limbs/femul.c57
-rw-r--r--src/Specific/solinas32_2e174m17_7limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e174m17_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas32_2e174m17_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e174m17_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas32_2e174m17_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e174m17_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas32_2e174m17_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e174m17_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas32_2e174m17_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e174m17_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e174m17_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e174m17_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas32_2e174m17_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e174m17_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas32_2e174m17_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e174m17_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e174m17_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e174m17_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e174m17_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e174m17_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e174m17_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas32_2e174m17_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e174m17_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e174m17_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e174m17_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e174m17_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e174m17_8limbs/femul.c64
-rw-r--r--src/Specific/solinas32_2e174m17_8limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e174m17_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas32_2e174m17_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e174m17_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas32_2e174m17_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e174m17_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas32_2e174m17_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e174m17_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas32_2e174m17_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e174m17_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e174m17_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e174m17_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas32_2e174m17_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e174m17_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas32_2e174m17_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e174m17_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e174m3_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e174m3_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e174m3_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e174m3_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e174m3_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas32_2e174m3_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e174m3_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e174m3_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e174m3_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e174m3_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e174m3_7limbs/femul.c57
-rw-r--r--src/Specific/solinas32_2e174m3_7limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e174m3_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas32_2e174m3_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e174m3_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas32_2e174m3_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e174m3_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas32_2e174m3_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e174m3_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas32_2e174m3_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e174m3_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e174m3_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e174m3_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas32_2e174m3_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e174m3_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas32_2e174m3_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e174m3_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e174m3_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e174m3_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e174m3_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e174m3_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e174m3_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas32_2e174m3_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e174m3_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e174m3_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e174m3_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e174m3_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e174m3_8limbs/femul.c64
-rw-r--r--src/Specific/solinas32_2e174m3_8limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e174m3_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas32_2e174m3_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e174m3_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas32_2e174m3_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e174m3_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas32_2e174m3_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e174m3_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas32_2e174m3_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e174m3_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e174m3_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e174m3_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas32_2e174m3_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e174m3_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas32_2e174m3_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e174m3_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e189m25_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e189m25_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e189m25_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e189m25_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e189m25_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas32_2e189m25_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e189m25_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e189m25_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e189m25_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e189m25_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e189m25_7limbs/femul.c57
-rw-r--r--src/Specific/solinas32_2e189m25_7limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e189m25_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas32_2e189m25_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e189m25_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas32_2e189m25_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e189m25_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas32_2e189m25_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e189m25_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas32_2e189m25_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e189m25_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e189m25_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e189m25_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas32_2e189m25_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e189m25_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas32_2e189m25_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e189m25_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e189m25_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e189m25_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e189m25_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e189m25_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e189m25_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas32_2e189m25_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e189m25_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e189m25_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e189m25_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e189m25_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e189m25_8limbs/femul.c64
-rw-r--r--src/Specific/solinas32_2e189m25_8limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e189m25_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas32_2e189m25_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e189m25_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas32_2e189m25_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e189m25_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas32_2e189m25_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e189m25_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas32_2e189m25_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e189m25_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e189m25_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e189m25_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas32_2e189m25_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e189m25_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas32_2e189m25_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e189m25_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e190m11_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e190m11_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e190m11_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e190m11_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e190m11_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas32_2e190m11_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e190m11_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e190m11_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e190m11_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e190m11_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e190m11_7limbs/femul.c57
-rw-r--r--src/Specific/solinas32_2e190m11_7limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e190m11_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas32_2e190m11_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e190m11_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas32_2e190m11_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e190m11_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas32_2e190m11_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e190m11_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas32_2e190m11_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e190m11_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e190m11_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e190m11_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas32_2e190m11_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e190m11_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas32_2e190m11_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e190m11_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e190m11_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e190m11_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e190m11_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e190m11_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e190m11_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas32_2e190m11_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e190m11_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e190m11_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e190m11_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e190m11_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e190m11_8limbs/femul.c64
-rw-r--r--src/Specific/solinas32_2e190m11_8limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e190m11_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas32_2e190m11_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e190m11_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas32_2e190m11_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e190m11_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas32_2e190m11_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e190m11_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas32_2e190m11_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e190m11_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e190m11_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e190m11_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas32_2e190m11_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e190m11_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas32_2e190m11_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e190m11_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e191m19_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e191m19_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e191m19_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e191m19_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e191m19_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas32_2e191m19_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e191m19_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e191m19_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e191m19_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e191m19_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e191m19_8limbs/femul.c64
-rw-r--r--src/Specific/solinas32_2e191m19_8limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e191m19_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas32_2e191m19_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e191m19_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas32_2e191m19_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e191m19_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas32_2e191m19_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e191m19_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas32_2e191m19_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e191m19_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e191m19_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e191m19_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas32_2e191m19_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e191m19_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas32_2e191m19_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e191m19_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e191m19_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e191m19_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e191m19_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e191m19_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e191m19_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas32_2e191m19_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e191m19_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e191m19_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e191m19_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e191m19_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e191m19_9limbs/femul.c71
-rw-r--r--src/Specific/solinas32_2e191m19_9limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e191m19_9limbs/femulDisplay.log48
-rw-r--r--src/Specific/solinas32_2e191m19_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e191m19_9limbs/fesquare.c62
-rw-r--r--src/Specific/solinas32_2e191m19_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e191m19_9limbs/fesquareDisplay.log48
-rw-r--r--src/Specific/solinas32_2e191m19_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e191m19_9limbs/fesub.c30
-rw-r--r--src/Specific/solinas32_2e191m19_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e191m19_9limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e191m19_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e191m19_9limbs/freeze.c49
-rw-r--r--src/Specific/solinas32_2e191m19_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e191m19_9limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas32_2e191m19_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e191m19_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_10limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_10limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e192m2e64m1_10limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e192m2e64m1_10limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_10limbs/feadd.c33
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_10limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_10limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_10limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_10limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_10limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_10limbs/femul.c89
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_10limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_10limbs/femulDisplay.log63
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_10limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_10limbs/fesquare.c79
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_10limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_10limbs/fesquareDisplay.log63
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_10limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_10limbs/fesub.c33
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_10limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_10limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_10limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_10limbs/freeze.c54
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_10limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_10limbs/freezeDisplay.log38
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_10limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e192m2e64m1_10limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e192m2e64m1_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e192m2e64m1_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_9limbs/femul.c82
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_9limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_9limbs/femulDisplay.log59
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_9limbs/fesquare.c73
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_9limbs/fesquareDisplay.log59
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_9limbs/fesub.c30
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_9limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_9limbs/freeze.c49
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_9limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas32_2e192m2e64m1_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e192m2e64m1_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e194m33_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e194m33_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e194m33_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e194m33_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e194m33_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas32_2e194m33_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e194m33_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e194m33_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e194m33_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e194m33_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e194m33_8limbs/femul.c64
-rw-r--r--src/Specific/solinas32_2e194m33_8limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e194m33_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas32_2e194m33_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e194m33_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas32_2e194m33_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e194m33_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas32_2e194m33_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e194m33_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas32_2e194m33_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e194m33_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e194m33_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e194m33_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas32_2e194m33_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e194m33_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas32_2e194m33_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e194m33_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e194m33_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e194m33_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e194m33_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e194m33_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e194m33_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas32_2e194m33_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e194m33_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e194m33_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e194m33_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e194m33_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e194m33_9limbs/femul.c71
-rw-r--r--src/Specific/solinas32_2e194m33_9limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e194m33_9limbs/femulDisplay.log48
-rw-r--r--src/Specific/solinas32_2e194m33_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e194m33_9limbs/fesquare.c62
-rw-r--r--src/Specific/solinas32_2e194m33_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e194m33_9limbs/fesquareDisplay.log48
-rw-r--r--src/Specific/solinas32_2e194m33_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e194m33_9limbs/fesub.c30
-rw-r--r--src/Specific/solinas32_2e194m33_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e194m33_9limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e194m33_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e194m33_9limbs/freeze.c49
-rw-r--r--src/Specific/solinas32_2e194m33_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e194m33_9limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas32_2e194m33_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e194m33_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e196m15_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e196m15_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e196m15_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e196m15_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e196m15_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas32_2e196m15_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e196m15_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e196m15_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e196m15_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e196m15_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e196m15_8limbs/femul.c64
-rw-r--r--src/Specific/solinas32_2e196m15_8limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e196m15_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas32_2e196m15_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e196m15_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas32_2e196m15_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e196m15_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas32_2e196m15_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e196m15_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas32_2e196m15_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e196m15_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e196m15_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e196m15_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas32_2e196m15_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e196m15_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas32_2e196m15_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e196m15_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e196m15_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e196m15_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e196m15_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e196m15_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e196m15_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas32_2e196m15_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e196m15_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e196m15_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e196m15_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e196m15_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e196m15_9limbs/femul.c71
-rw-r--r--src/Specific/solinas32_2e196m15_9limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e196m15_9limbs/femulDisplay.log48
-rw-r--r--src/Specific/solinas32_2e196m15_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e196m15_9limbs/fesquare.c62
-rw-r--r--src/Specific/solinas32_2e196m15_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e196m15_9limbs/fesquareDisplay.log48
-rw-r--r--src/Specific/solinas32_2e196m15_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e196m15_9limbs/fesub.c30
-rw-r--r--src/Specific/solinas32_2e196m15_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e196m15_9limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e196m15_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e196m15_9limbs/freeze.c49
-rw-r--r--src/Specific/solinas32_2e196m15_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e196m15_9limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas32_2e196m15_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e196m15_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e198m17_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e198m17_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e198m17_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e198m17_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e198m17_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas32_2e198m17_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e198m17_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e198m17_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e198m17_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e198m17_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e198m17_8limbs/femul.c64
-rw-r--r--src/Specific/solinas32_2e198m17_8limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e198m17_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas32_2e198m17_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e198m17_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas32_2e198m17_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e198m17_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas32_2e198m17_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e198m17_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas32_2e198m17_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e198m17_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e198m17_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e198m17_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas32_2e198m17_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e198m17_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas32_2e198m17_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e198m17_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e198m17_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e198m17_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e198m17_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e198m17_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e198m17_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas32_2e198m17_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e198m17_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e198m17_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e198m17_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e198m17_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e198m17_9limbs/femul.c71
-rw-r--r--src/Specific/solinas32_2e198m17_9limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e198m17_9limbs/femulDisplay.log48
-rw-r--r--src/Specific/solinas32_2e198m17_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e198m17_9limbs/fesquare.c62
-rw-r--r--src/Specific/solinas32_2e198m17_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e198m17_9limbs/fesquareDisplay.log48
-rw-r--r--src/Specific/solinas32_2e198m17_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e198m17_9limbs/fesub.c30
-rw-r--r--src/Specific/solinas32_2e198m17_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e198m17_9limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e198m17_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e198m17_9limbs/freeze.c49
-rw-r--r--src/Specific/solinas32_2e198m17_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e198m17_9limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas32_2e198m17_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e198m17_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e206m5_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e206m5_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e206m5_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e206m5_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e206m5_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas32_2e206m5_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e206m5_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e206m5_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e206m5_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e206m5_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e206m5_8limbs/femul.c64
-rw-r--r--src/Specific/solinas32_2e206m5_8limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e206m5_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas32_2e206m5_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e206m5_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas32_2e206m5_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e206m5_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas32_2e206m5_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e206m5_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas32_2e206m5_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e206m5_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e206m5_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e206m5_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas32_2e206m5_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e206m5_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas32_2e206m5_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e206m5_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e206m5_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e206m5_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e206m5_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e206m5_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e206m5_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas32_2e206m5_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e206m5_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e206m5_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e206m5_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e206m5_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e206m5_9limbs/femul.c71
-rw-r--r--src/Specific/solinas32_2e206m5_9limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e206m5_9limbs/femulDisplay.log48
-rw-r--r--src/Specific/solinas32_2e206m5_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e206m5_9limbs/fesquare.c62
-rw-r--r--src/Specific/solinas32_2e206m5_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e206m5_9limbs/fesquareDisplay.log48
-rw-r--r--src/Specific/solinas32_2e206m5_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e206m5_9limbs/fesub.c30
-rw-r--r--src/Specific/solinas32_2e206m5_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e206m5_9limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e206m5_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e206m5_9limbs/freeze.c49
-rw-r--r--src/Specific/solinas32_2e206m5_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e206m5_9limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas32_2e206m5_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e206m5_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e212m29_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e212m29_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e212m29_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e212m29_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e212m29_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas32_2e212m29_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e212m29_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e212m29_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e212m29_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e212m29_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e212m29_8limbs/femul.c64
-rw-r--r--src/Specific/solinas32_2e212m29_8limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e212m29_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas32_2e212m29_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e212m29_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas32_2e212m29_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e212m29_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas32_2e212m29_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e212m29_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas32_2e212m29_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e212m29_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e212m29_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e212m29_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas32_2e212m29_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e212m29_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas32_2e212m29_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e212m29_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e212m29_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e212m29_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e212m29_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e212m29_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e212m29_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas32_2e212m29_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e212m29_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e212m29_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e212m29_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e212m29_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e212m29_9limbs/femul.c71
-rw-r--r--src/Specific/solinas32_2e212m29_9limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e212m29_9limbs/femulDisplay.log48
-rw-r--r--src/Specific/solinas32_2e212m29_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e212m29_9limbs/fesquare.c62
-rw-r--r--src/Specific/solinas32_2e212m29_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e212m29_9limbs/fesquareDisplay.log48
-rw-r--r--src/Specific/solinas32_2e212m29_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e212m29_9limbs/fesub.c30
-rw-r--r--src/Specific/solinas32_2e212m29_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e212m29_9limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e212m29_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e212m29_9limbs/freeze.c49
-rw-r--r--src/Specific/solinas32_2e212m29_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e212m29_9limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas32_2e212m29_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e212m29_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e213m3_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e213m3_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e213m3_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e213m3_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e213m3_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas32_2e213m3_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e213m3_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e213m3_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e213m3_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e213m3_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e213m3_8limbs/femul.c64
-rw-r--r--src/Specific/solinas32_2e213m3_8limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e213m3_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas32_2e213m3_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e213m3_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas32_2e213m3_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e213m3_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas32_2e213m3_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e213m3_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas32_2e213m3_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e213m3_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e213m3_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e213m3_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas32_2e213m3_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e213m3_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas32_2e213m3_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e213m3_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e213m3_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e213m3_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e213m3_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e213m3_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e213m3_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas32_2e213m3_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e213m3_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e213m3_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e213m3_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e213m3_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e213m3_9limbs/femul.c71
-rw-r--r--src/Specific/solinas32_2e213m3_9limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e213m3_9limbs/femulDisplay.log48
-rw-r--r--src/Specific/solinas32_2e213m3_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e213m3_9limbs/fesquare.c62
-rw-r--r--src/Specific/solinas32_2e213m3_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e213m3_9limbs/fesquareDisplay.log48
-rw-r--r--src/Specific/solinas32_2e213m3_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e213m3_9limbs/fesub.c30
-rw-r--r--src/Specific/solinas32_2e213m3_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e213m3_9limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e213m3_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e213m3_9limbs/freeze.c49
-rw-r--r--src/Specific/solinas32_2e213m3_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e213m3_9limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas32_2e213m3_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e213m3_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_10limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_10limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e216m2e108m1_10limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e216m2e108m1_10limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_10limbs/feadd.c33
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_10limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_10limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_10limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_10limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_10limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_10limbs/femul.c97
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_10limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_10limbs/femulDisplay.log71
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_10limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_10limbs/fesquare.c87
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_10limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_10limbs/fesquareDisplay.log71
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_10limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_10limbs/fesub.c33
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_10limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_10limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_10limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_10limbs/freeze.c54
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_10limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_10limbs/freezeDisplay.log38
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_10limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e216m2e108m1_10limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e216m2e108m1_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e216m2e108m1_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_8limbs/femul.c81
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_8limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_8limbs/femulDisplay.log61
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_8limbs/fesquare.c73
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_8limbs/fesquareDisplay.log61
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas32_2e216m2e108m1_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e216m2e108m1_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e221m3_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e221m3_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e221m3_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e221m3_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e221m3_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas32_2e221m3_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e221m3_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e221m3_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e221m3_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e221m3_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e221m3_8limbs/femul.c64
-rw-r--r--src/Specific/solinas32_2e221m3_8limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e221m3_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas32_2e221m3_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e221m3_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas32_2e221m3_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e221m3_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas32_2e221m3_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e221m3_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas32_2e221m3_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e221m3_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e221m3_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e221m3_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas32_2e221m3_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e221m3_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas32_2e221m3_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e221m3_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e221m3_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e221m3_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e221m3_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e221m3_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e221m3_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas32_2e221m3_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e221m3_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e221m3_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e221m3_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e221m3_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e221m3_9limbs/femul.c71
-rw-r--r--src/Specific/solinas32_2e221m3_9limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e221m3_9limbs/femulDisplay.log48
-rw-r--r--src/Specific/solinas32_2e221m3_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e221m3_9limbs/fesquare.c62
-rw-r--r--src/Specific/solinas32_2e221m3_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e221m3_9limbs/fesquareDisplay.log48
-rw-r--r--src/Specific/solinas32_2e221m3_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e221m3_9limbs/fesub.c30
-rw-r--r--src/Specific/solinas32_2e221m3_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e221m3_9limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e221m3_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e221m3_9limbs/freeze.c49
-rw-r--r--src/Specific/solinas32_2e221m3_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e221m3_9limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas32_2e221m3_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e221m3_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e222m117_10limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e222m117_10limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e222m117_10limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e222m117_10limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e222m117_10limbs/feadd.c33
-rw-r--r--src/Specific/solinas32_2e222m117_10limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e222m117_10limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e222m117_10limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e222m117_10limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e222m117_10limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e222m117_10limbs/femul.c78
-rw-r--r--src/Specific/solinas32_2e222m117_10limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e222m117_10limbs/femulDisplay.log52
-rw-r--r--src/Specific/solinas32_2e222m117_10limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e222m117_10limbs/fesquare.c68
-rw-r--r--src/Specific/solinas32_2e222m117_10limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e222m117_10limbs/fesquareDisplay.log52
-rw-r--r--src/Specific/solinas32_2e222m117_10limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e222m117_10limbs/fesub.c33
-rw-r--r--src/Specific/solinas32_2e222m117_10limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e222m117_10limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e222m117_10limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e222m117_10limbs/freeze.c54
-rw-r--r--src/Specific/solinas32_2e222m117_10limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e222m117_10limbs/freezeDisplay.log38
-rw-r--r--src/Specific/solinas32_2e222m117_10limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e222m117_10limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e222m117_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e222m117_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e222m117_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e222m117_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e222m117_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas32_2e222m117_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e222m117_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e222m117_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e222m117_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e222m117_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e222m117_9limbs/femul.c71
-rw-r--r--src/Specific/solinas32_2e222m117_9limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e222m117_9limbs/femulDisplay.log48
-rw-r--r--src/Specific/solinas32_2e222m117_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e222m117_9limbs/fesquare.c62
-rw-r--r--src/Specific/solinas32_2e222m117_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e222m117_9limbs/fesquareDisplay.log48
-rw-r--r--src/Specific/solinas32_2e222m117_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e222m117_9limbs/fesub.c30
-rw-r--r--src/Specific/solinas32_2e222m117_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e222m117_9limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e222m117_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e222m117_9limbs/freeze.c49
-rw-r--r--src/Specific/solinas32_2e222m117_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e222m117_9limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas32_2e222m117_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e222m117_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_10limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_10limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e224m2e96p1_10limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e224m2e96p1_10limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_10limbs/feadd.c33
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_10limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_10limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_10limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_10limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_10limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_10limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_10limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_10limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_10limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_10limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_10limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_10limbs/freeze.c51
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_10limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_10limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_10limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e224m2e96p1_10limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_11limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_11limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e224m2e96p1_11limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e224m2e96p1_11limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_11limbs/feadd.c36
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_11limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_11limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_11limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_11limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_11limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_11limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_11limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_11limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_11limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_11limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_11limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_11limbs/freeze.c56
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_11limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_11limbs/freezeDisplay.log38
-rw-r--r--src/Specific/solinas32_2e224m2e96p1_11limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e224m2e96p1_11limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e226m5_10limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e226m5_10limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e226m5_10limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e226m5_10limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e226m5_10limbs/feadd.c33
-rw-r--r--src/Specific/solinas32_2e226m5_10limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e226m5_10limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e226m5_10limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e226m5_10limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e226m5_10limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e226m5_10limbs/femul.c78
-rw-r--r--src/Specific/solinas32_2e226m5_10limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e226m5_10limbs/femulDisplay.log52
-rw-r--r--src/Specific/solinas32_2e226m5_10limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e226m5_10limbs/fesquare.c68
-rw-r--r--src/Specific/solinas32_2e226m5_10limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e226m5_10limbs/fesquareDisplay.log52
-rw-r--r--src/Specific/solinas32_2e226m5_10limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e226m5_10limbs/fesub.c33
-rw-r--r--src/Specific/solinas32_2e226m5_10limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e226m5_10limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e226m5_10limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e226m5_10limbs/freeze.c54
-rw-r--r--src/Specific/solinas32_2e226m5_10limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e226m5_10limbs/freezeDisplay.log38
-rw-r--r--src/Specific/solinas32_2e226m5_10limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e226m5_10limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e226m5_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e226m5_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e226m5_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e226m5_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e226m5_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas32_2e226m5_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e226m5_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e226m5_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e226m5_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e226m5_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e226m5_9limbs/femul.c71
-rw-r--r--src/Specific/solinas32_2e226m5_9limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e226m5_9limbs/femulDisplay.log48
-rw-r--r--src/Specific/solinas32_2e226m5_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e226m5_9limbs/fesquare.c62
-rw-r--r--src/Specific/solinas32_2e226m5_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e226m5_9limbs/fesquareDisplay.log48
-rw-r--r--src/Specific/solinas32_2e226m5_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e226m5_9limbs/fesub.c30
-rw-r--r--src/Specific/solinas32_2e226m5_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e226m5_9limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e226m5_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e226m5_9limbs/freeze.c49
-rw-r--r--src/Specific/solinas32_2e226m5_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e226m5_9limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas32_2e226m5_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e226m5_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e230m27_10limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e230m27_10limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e230m27_10limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e230m27_10limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e230m27_10limbs/feadd.c33
-rw-r--r--src/Specific/solinas32_2e230m27_10limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e230m27_10limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e230m27_10limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e230m27_10limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e230m27_10limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e230m27_10limbs/femul.c78
-rw-r--r--src/Specific/solinas32_2e230m27_10limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e230m27_10limbs/femulDisplay.log52
-rw-r--r--src/Specific/solinas32_2e230m27_10limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e230m27_10limbs/fesquare.c68
-rw-r--r--src/Specific/solinas32_2e230m27_10limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e230m27_10limbs/fesquareDisplay.log52
-rw-r--r--src/Specific/solinas32_2e230m27_10limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e230m27_10limbs/fesub.c33
-rw-r--r--src/Specific/solinas32_2e230m27_10limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e230m27_10limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e230m27_10limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e230m27_10limbs/freeze.c54
-rw-r--r--src/Specific/solinas32_2e230m27_10limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e230m27_10limbs/freezeDisplay.log38
-rw-r--r--src/Specific/solinas32_2e230m27_10limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e230m27_10limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e230m27_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e230m27_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e230m27_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e230m27_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e230m27_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas32_2e230m27_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e230m27_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e230m27_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e230m27_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e230m27_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e230m27_9limbs/femul.c71
-rw-r--r--src/Specific/solinas32_2e230m27_9limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e230m27_9limbs/femulDisplay.log48
-rw-r--r--src/Specific/solinas32_2e230m27_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e230m27_9limbs/fesquare.c62
-rw-r--r--src/Specific/solinas32_2e230m27_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e230m27_9limbs/fesquareDisplay.log48
-rw-r--r--src/Specific/solinas32_2e230m27_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e230m27_9limbs/fesub.c30
-rw-r--r--src/Specific/solinas32_2e230m27_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e230m27_9limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e230m27_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e230m27_9limbs/freeze.c49
-rw-r--r--src/Specific/solinas32_2e230m27_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e230m27_9limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas32_2e230m27_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e230m27_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e235m15_10limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e235m15_10limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e235m15_10limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e235m15_10limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e235m15_10limbs/feadd.c33
-rw-r--r--src/Specific/solinas32_2e235m15_10limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e235m15_10limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e235m15_10limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e235m15_10limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e235m15_10limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e235m15_10limbs/femul.c78
-rw-r--r--src/Specific/solinas32_2e235m15_10limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e235m15_10limbs/femulDisplay.log52
-rw-r--r--src/Specific/solinas32_2e235m15_10limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e235m15_10limbs/fesquare.c68
-rw-r--r--src/Specific/solinas32_2e235m15_10limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e235m15_10limbs/fesquareDisplay.log52
-rw-r--r--src/Specific/solinas32_2e235m15_10limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e235m15_10limbs/fesub.c33
-rw-r--r--src/Specific/solinas32_2e235m15_10limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e235m15_10limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e235m15_10limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e235m15_10limbs/freeze.c54
-rw-r--r--src/Specific/solinas32_2e235m15_10limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e235m15_10limbs/freezeDisplay.log38
-rw-r--r--src/Specific/solinas32_2e235m15_10limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e235m15_10limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e235m15_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e235m15_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e235m15_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e235m15_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e235m15_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas32_2e235m15_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e235m15_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e235m15_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e235m15_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e235m15_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e235m15_9limbs/femul.c71
-rw-r--r--src/Specific/solinas32_2e235m15_9limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e235m15_9limbs/femulDisplay.log48
-rw-r--r--src/Specific/solinas32_2e235m15_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e235m15_9limbs/fesquare.c62
-rw-r--r--src/Specific/solinas32_2e235m15_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e235m15_9limbs/fesquareDisplay.log48
-rw-r--r--src/Specific/solinas32_2e235m15_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e235m15_9limbs/fesub.c30
-rw-r--r--src/Specific/solinas32_2e235m15_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e235m15_9limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e235m15_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e235m15_9limbs/freeze.c49
-rw-r--r--src/Specific/solinas32_2e235m15_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e235m15_9limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas32_2e235m15_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e235m15_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e243m9_10limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e243m9_10limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e243m9_10limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e243m9_10limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e243m9_10limbs/feadd.c33
-rw-r--r--src/Specific/solinas32_2e243m9_10limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e243m9_10limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e243m9_10limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e243m9_10limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e243m9_10limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e243m9_10limbs/femul.c78
-rw-r--r--src/Specific/solinas32_2e243m9_10limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e243m9_10limbs/femulDisplay.log52
-rw-r--r--src/Specific/solinas32_2e243m9_10limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e243m9_10limbs/fesquare.c68
-rw-r--r--src/Specific/solinas32_2e243m9_10limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e243m9_10limbs/fesquareDisplay.log52
-rw-r--r--src/Specific/solinas32_2e243m9_10limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e243m9_10limbs/fesub.c33
-rw-r--r--src/Specific/solinas32_2e243m9_10limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e243m9_10limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e243m9_10limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e243m9_10limbs/freeze.c54
-rw-r--r--src/Specific/solinas32_2e243m9_10limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e243m9_10limbs/freezeDisplay.log38
-rw-r--r--src/Specific/solinas32_2e243m9_10limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e243m9_10limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e243m9_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e243m9_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e243m9_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e243m9_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e243m9_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas32_2e243m9_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e243m9_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e243m9_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e243m9_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e243m9_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e243m9_9limbs/femul.c71
-rw-r--r--src/Specific/solinas32_2e243m9_9limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e243m9_9limbs/femulDisplay.log48
-rw-r--r--src/Specific/solinas32_2e243m9_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e243m9_9limbs/fesquare.c62
-rw-r--r--src/Specific/solinas32_2e243m9_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e243m9_9limbs/fesquareDisplay.log48
-rw-r--r--src/Specific/solinas32_2e243m9_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e243m9_9limbs/fesub.c30
-rw-r--r--src/Specific/solinas32_2e243m9_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e243m9_9limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e243m9_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e243m9_9limbs/freeze.c49
-rw-r--r--src/Specific/solinas32_2e243m9_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e243m9_9limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas32_2e243m9_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e243m9_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e251m9_10limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e251m9_10limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e251m9_10limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e251m9_10limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e251m9_10limbs/feadd.c33
-rw-r--r--src/Specific/solinas32_2e251m9_10limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e251m9_10limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e251m9_10limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e251m9_10limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e251m9_10limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e251m9_10limbs/femul.c78
-rw-r--r--src/Specific/solinas32_2e251m9_10limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e251m9_10limbs/femulDisplay.log52
-rw-r--r--src/Specific/solinas32_2e251m9_10limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e251m9_10limbs/fesquare.c68
-rw-r--r--src/Specific/solinas32_2e251m9_10limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e251m9_10limbs/fesquareDisplay.log52
-rw-r--r--src/Specific/solinas32_2e251m9_10limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e251m9_10limbs/fesub.c33
-rw-r--r--src/Specific/solinas32_2e251m9_10limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e251m9_10limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e251m9_10limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e251m9_10limbs/freeze.c54
-rw-r--r--src/Specific/solinas32_2e251m9_10limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e251m9_10limbs/freezeDisplay.log38
-rw-r--r--src/Specific/solinas32_2e251m9_10limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e251m9_10limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e251m9_11limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e251m9_11limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e251m9_11limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e251m9_11limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e251m9_11limbs/feadd.c36
-rw-r--r--src/Specific/solinas32_2e251m9_11limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e251m9_11limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e251m9_11limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e251m9_11limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e251m9_11limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e251m9_11limbs/femul.c85
-rw-r--r--src/Specific/solinas32_2e251m9_11limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e251m9_11limbs/femulDisplay.log56
-rw-r--r--src/Specific/solinas32_2e251m9_11limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e251m9_11limbs/fesquare.c74
-rw-r--r--src/Specific/solinas32_2e251m9_11limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e251m9_11limbs/fesquareDisplay.log56
-rw-r--r--src/Specific/solinas32_2e251m9_11limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e251m9_11limbs/fesub.c36
-rw-r--r--src/Specific/solinas32_2e251m9_11limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e251m9_11limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e251m9_11limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e251m9_11limbs/freeze.c59
-rw-r--r--src/Specific/solinas32_2e251m9_11limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e251m9_11limbs/freezeDisplay.log41
-rw-r--r--src/Specific/solinas32_2e251m9_11limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e251m9_11limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e255m19_10limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e255m19_10limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/feadd.c33
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/fecarry.c58
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/fecarryDisplay.log42
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/femul.c78
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/femulDisplay.log52
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/fesquare.c68
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/fesquareDisplay.log52
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/fesub.c33
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/freeze.c54
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/freezeDisplay.log38
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e255m19_10limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/CurveParameters.v257
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e255m19_10limbs_donna/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e255m19_10limbs_donna/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/feadd.c33
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/feadd.v14
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/fecarry.c58
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/fecarryDisplay.log42
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/femul.c114
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/femul.v14
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/femulDisplay.log88
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/fesquare.c104
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/fesquareDisplay.log88
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/fesub.c33
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/fesub.v14
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/freeze.c54
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/freeze.v14
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/freezeDisplay.log38
-rw-r--r--src/Specific/solinas32_2e255m19_10limbs_donna/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e255m19_10limbs_donna/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e255m19_11limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e255m19_11limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/feadd.c36
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/fecarry.c63
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/fecarryDisplay.log45
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/femul.c85
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/femulDisplay.log56
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/fesquare.c74
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/fesquareDisplay.log56
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/fesub.c36
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/freeze.c59
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/freezeDisplay.log41
-rw-r--r--src/Specific/solinas32_2e255m19_11limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e255m19_11limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e255m765_12limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e255m765_12limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e255m765_12limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e255m765_12limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e255m765_12limbs/feadd.c39
-rw-r--r--src/Specific/solinas32_2e255m765_12limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e255m765_12limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e255m765_12limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m765_12limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e255m765_12limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m765_12limbs/femul.c92
-rw-r--r--src/Specific/solinas32_2e255m765_12limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e255m765_12limbs/femulDisplay.log60
-rw-r--r--src/Specific/solinas32_2e255m765_12limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m765_12limbs/fesquare.c80
-rw-r--r--src/Specific/solinas32_2e255m765_12limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e255m765_12limbs/fesquareDisplay.log60
-rw-r--r--src/Specific/solinas32_2e255m765_12limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m765_12limbs/fesub.c39
-rw-r--r--src/Specific/solinas32_2e255m765_12limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e255m765_12limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e255m765_12limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m765_12limbs/freeze.c64
-rw-r--r--src/Specific/solinas32_2e255m765_12limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e255m765_12limbs/freezeDisplay.log44
-rw-r--r--src/Specific/solinas32_2e255m765_12limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e255m765_12limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e255m765_13limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e255m765_13limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e255m765_13limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e255m765_13limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e255m765_13limbs/feadd.c42
-rw-r--r--src/Specific/solinas32_2e255m765_13limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e255m765_13limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e255m765_13limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m765_13limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e255m765_13limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m765_13limbs/femul.c99
-rw-r--r--src/Specific/solinas32_2e255m765_13limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e255m765_13limbs/femulDisplay.log64
-rw-r--r--src/Specific/solinas32_2e255m765_13limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m765_13limbs/fesquare.c86
-rw-r--r--src/Specific/solinas32_2e255m765_13limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e255m765_13limbs/fesquareDisplay.log64
-rw-r--r--src/Specific/solinas32_2e255m765_13limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m765_13limbs/fesub.c42
-rw-r--r--src/Specific/solinas32_2e255m765_13limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e255m765_13limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e255m765_13limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e255m765_13limbs/freeze.c69
-rw-r--r--src/Specific/solinas32_2e255m765_13limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e255m765_13limbs/freezeDisplay.log47
-rw-r--r--src/Specific/solinas32_2e255m765_13limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e255m765_13limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e256m189_11limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e256m189_11limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e256m189_11limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e256m189_11limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e256m189_11limbs/feadd.c36
-rw-r--r--src/Specific/solinas32_2e256m189_11limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e256m189_11limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e256m189_11limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m189_11limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e256m189_11limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m189_11limbs/femul.c85
-rw-r--r--src/Specific/solinas32_2e256m189_11limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e256m189_11limbs/femulDisplay.log56
-rw-r--r--src/Specific/solinas32_2e256m189_11limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m189_11limbs/fesquare.c74
-rw-r--r--src/Specific/solinas32_2e256m189_11limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e256m189_11limbs/fesquareDisplay.log56
-rw-r--r--src/Specific/solinas32_2e256m189_11limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m189_11limbs/fesub.c36
-rw-r--r--src/Specific/solinas32_2e256m189_11limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e256m189_11limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e256m189_11limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m189_11limbs/freeze.c59
-rw-r--r--src/Specific/solinas32_2e256m189_11limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e256m189_11limbs/freezeDisplay.log41
-rw-r--r--src/Specific/solinas32_2e256m189_11limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e256m189_11limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e256m189_12limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e256m189_12limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e256m189_12limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e256m189_12limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e256m189_12limbs/feadd.c39
-rw-r--r--src/Specific/solinas32_2e256m189_12limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e256m189_12limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e256m189_12limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m189_12limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e256m189_12limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m189_12limbs/femul.c92
-rw-r--r--src/Specific/solinas32_2e256m189_12limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e256m189_12limbs/femulDisplay.log60
-rw-r--r--src/Specific/solinas32_2e256m189_12limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m189_12limbs/fesquare.c80
-rw-r--r--src/Specific/solinas32_2e256m189_12limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e256m189_12limbs/fesquareDisplay.log60
-rw-r--r--src/Specific/solinas32_2e256m189_12limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m189_12limbs/fesub.c39
-rw-r--r--src/Specific/solinas32_2e256m189_12limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e256m189_12limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e256m189_12limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m189_12limbs/freeze.c64
-rw-r--r--src/Specific/solinas32_2e256m189_12limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e256m189_12limbs/freezeDisplay.log44
-rw-r--r--src/Specific/solinas32_2e256m189_12limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e256m189_12limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/feadd.c36
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/freeze.c56
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/freezeDisplay.log38
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/feadd.c39
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/freeze.c60
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/freezeDisplay.log40
-rw-r--r--src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_12limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_12limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e256m2e32m977_12limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e256m2e32m977_12limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_12limbs/feadd.c39
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_12limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_12limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_12limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_12limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_12limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_12limbs/femul.c103
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_12limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_12limbs/femulDisplay.log71
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_12limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_12limbs/fesquare.c91
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_12limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_12limbs/fesquareDisplay.log71
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_12limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_12limbs/fesub.c39
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_12limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_12limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_12limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_12limbs/freeze.c64
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_12limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_12limbs/freezeDisplay.log44
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_12limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e256m2e32m977_12limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_13limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_13limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e256m2e32m977_13limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e256m2e32m977_13limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_13limbs/feadd.c42
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_13limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_13limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_13limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_13limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_13limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_13limbs/femul.c110
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_13limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_13limbs/femulDisplay.log75
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_13limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_13limbs/fesquare.c97
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_13limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_13limbs/fesquareDisplay.log75
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_13limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_13limbs/fesub.c42
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_13limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_13limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_13limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_13limbs/freeze.c69
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_13limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_13limbs/freezeDisplay.log47
-rw-r--r--src/Specific/solinas32_2e256m2e32m977_13limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e256m2e32m977_13limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e266m3_10limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e266m3_10limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e266m3_10limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e266m3_10limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e266m3_10limbs/feadd.c33
-rw-r--r--src/Specific/solinas32_2e266m3_10limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e266m3_10limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e266m3_10limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e266m3_10limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e266m3_10limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e266m3_10limbs/femul.c78
-rw-r--r--src/Specific/solinas32_2e266m3_10limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e266m3_10limbs/femulDisplay.log52
-rw-r--r--src/Specific/solinas32_2e266m3_10limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e266m3_10limbs/fesquare.c68
-rw-r--r--src/Specific/solinas32_2e266m3_10limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e266m3_10limbs/fesquareDisplay.log52
-rw-r--r--src/Specific/solinas32_2e266m3_10limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e266m3_10limbs/fesub.c33
-rw-r--r--src/Specific/solinas32_2e266m3_10limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e266m3_10limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e266m3_10limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e266m3_10limbs/freeze.c54
-rw-r--r--src/Specific/solinas32_2e266m3_10limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e266m3_10limbs/freezeDisplay.log38
-rw-r--r--src/Specific/solinas32_2e266m3_10limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e266m3_10limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e266m3_11limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e266m3_11limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e266m3_11limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e266m3_11limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e266m3_11limbs/feadd.c36
-rw-r--r--src/Specific/solinas32_2e266m3_11limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e266m3_11limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e266m3_11limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e266m3_11limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e266m3_11limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e266m3_11limbs/femul.c85
-rw-r--r--src/Specific/solinas32_2e266m3_11limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e266m3_11limbs/femulDisplay.log56
-rw-r--r--src/Specific/solinas32_2e266m3_11limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e266m3_11limbs/fesquare.c74
-rw-r--r--src/Specific/solinas32_2e266m3_11limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e266m3_11limbs/fesquareDisplay.log56
-rw-r--r--src/Specific/solinas32_2e266m3_11limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e266m3_11limbs/fesub.c36
-rw-r--r--src/Specific/solinas32_2e266m3_11limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e266m3_11limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e266m3_11limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e266m3_11limbs/freeze.c59
-rw-r--r--src/Specific/solinas32_2e266m3_11limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e266m3_11limbs/freezeDisplay.log41
-rw-r--r--src/Specific/solinas32_2e266m3_11limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e266m3_11limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e285m9_11limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e285m9_11limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e285m9_11limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e285m9_11limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e285m9_11limbs/feadd.c36
-rw-r--r--src/Specific/solinas32_2e285m9_11limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e285m9_11limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e285m9_11limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e285m9_11limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e285m9_11limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e285m9_11limbs/femul.c85
-rw-r--r--src/Specific/solinas32_2e285m9_11limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e285m9_11limbs/femulDisplay.log56
-rw-r--r--src/Specific/solinas32_2e285m9_11limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e285m9_11limbs/fesquare.c74
-rw-r--r--src/Specific/solinas32_2e285m9_11limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e285m9_11limbs/fesquareDisplay.log56
-rw-r--r--src/Specific/solinas32_2e285m9_11limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e285m9_11limbs/fesub.c36
-rw-r--r--src/Specific/solinas32_2e285m9_11limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e285m9_11limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e285m9_11limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e285m9_11limbs/freeze.c59
-rw-r--r--src/Specific/solinas32_2e285m9_11limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e285m9_11limbs/freezeDisplay.log41
-rw-r--r--src/Specific/solinas32_2e285m9_11limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e285m9_11limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e285m9_12limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e285m9_12limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e285m9_12limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e285m9_12limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e285m9_12limbs/feadd.c39
-rw-r--r--src/Specific/solinas32_2e285m9_12limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e285m9_12limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e285m9_12limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e285m9_12limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e285m9_12limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e285m9_12limbs/femul.c92
-rw-r--r--src/Specific/solinas32_2e285m9_12limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e285m9_12limbs/femulDisplay.log60
-rw-r--r--src/Specific/solinas32_2e285m9_12limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e285m9_12limbs/fesquare.c80
-rw-r--r--src/Specific/solinas32_2e285m9_12limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e285m9_12limbs/fesquareDisplay.log60
-rw-r--r--src/Specific/solinas32_2e285m9_12limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e285m9_12limbs/fesub.c39
-rw-r--r--src/Specific/solinas32_2e285m9_12limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e285m9_12limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e285m9_12limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e285m9_12limbs/freeze.c64
-rw-r--r--src/Specific/solinas32_2e285m9_12limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e285m9_12limbs/freezeDisplay.log44
-rw-r--r--src/Specific/solinas32_2e285m9_12limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e285m9_12limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e291m19_11limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e291m19_11limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e291m19_11limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e291m19_11limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e291m19_11limbs/feadd.c36
-rw-r--r--src/Specific/solinas32_2e291m19_11limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e291m19_11limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e291m19_11limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e291m19_11limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e291m19_11limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e291m19_11limbs/femul.c85
-rw-r--r--src/Specific/solinas32_2e291m19_11limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e291m19_11limbs/femulDisplay.log56
-rw-r--r--src/Specific/solinas32_2e291m19_11limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e291m19_11limbs/fesquare.c74
-rw-r--r--src/Specific/solinas32_2e291m19_11limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e291m19_11limbs/fesquareDisplay.log56
-rw-r--r--src/Specific/solinas32_2e291m19_11limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e291m19_11limbs/fesub.c36
-rw-r--r--src/Specific/solinas32_2e291m19_11limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e291m19_11limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e291m19_11limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e291m19_11limbs/freeze.c59
-rw-r--r--src/Specific/solinas32_2e291m19_11limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e291m19_11limbs/freezeDisplay.log41
-rw-r--r--src/Specific/solinas32_2e291m19_11limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e291m19_11limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e291m19_12limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e291m19_12limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e291m19_12limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e291m19_12limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e291m19_12limbs/feadd.c39
-rw-r--r--src/Specific/solinas32_2e291m19_12limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e291m19_12limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e291m19_12limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e291m19_12limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e291m19_12limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e291m19_12limbs/femul.c92
-rw-r--r--src/Specific/solinas32_2e291m19_12limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e291m19_12limbs/femulDisplay.log60
-rw-r--r--src/Specific/solinas32_2e291m19_12limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e291m19_12limbs/fesquare.c80
-rw-r--r--src/Specific/solinas32_2e291m19_12limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e291m19_12limbs/fesquareDisplay.log60
-rw-r--r--src/Specific/solinas32_2e291m19_12limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e291m19_12limbs/fesub.c39
-rw-r--r--src/Specific/solinas32_2e291m19_12limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e291m19_12limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e291m19_12limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e291m19_12limbs/freeze.c64
-rw-r--r--src/Specific/solinas32_2e291m19_12limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e291m19_12limbs/freezeDisplay.log44
-rw-r--r--src/Specific/solinas32_2e291m19_12limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e291m19_12limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e321m9_12limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e321m9_12limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e321m9_12limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e321m9_12limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e321m9_12limbs/feadd.c39
-rw-r--r--src/Specific/solinas32_2e321m9_12limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e321m9_12limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e321m9_12limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e321m9_12limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e321m9_12limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e321m9_12limbs/femul.c92
-rw-r--r--src/Specific/solinas32_2e321m9_12limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e321m9_12limbs/femulDisplay.log60
-rw-r--r--src/Specific/solinas32_2e321m9_12limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e321m9_12limbs/fesquare.c80
-rw-r--r--src/Specific/solinas32_2e321m9_12limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e321m9_12limbs/fesquareDisplay.log60
-rw-r--r--src/Specific/solinas32_2e321m9_12limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e321m9_12limbs/fesub.c39
-rw-r--r--src/Specific/solinas32_2e321m9_12limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e321m9_12limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e321m9_12limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e321m9_12limbs/freeze.c64
-rw-r--r--src/Specific/solinas32_2e321m9_12limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e321m9_12limbs/freezeDisplay.log44
-rw-r--r--src/Specific/solinas32_2e321m9_12limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e321m9_12limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e321m9_13limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e321m9_13limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e321m9_13limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e321m9_13limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e321m9_13limbs/feadd.c42
-rw-r--r--src/Specific/solinas32_2e321m9_13limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e321m9_13limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e321m9_13limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e321m9_13limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e321m9_13limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e321m9_13limbs/femul.c99
-rw-r--r--src/Specific/solinas32_2e321m9_13limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e321m9_13limbs/femulDisplay.log64
-rw-r--r--src/Specific/solinas32_2e321m9_13limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e321m9_13limbs/fesquare.c86
-rw-r--r--src/Specific/solinas32_2e321m9_13limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e321m9_13limbs/fesquareDisplay.log64
-rw-r--r--src/Specific/solinas32_2e321m9_13limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e321m9_13limbs/fesub.c42
-rw-r--r--src/Specific/solinas32_2e321m9_13limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e321m9_13limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e321m9_13limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e321m9_13limbs/freeze.c69
-rw-r--r--src/Specific/solinas32_2e321m9_13limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e321m9_13limbs/freezeDisplay.log47
-rw-r--r--src/Specific/solinas32_2e321m9_13limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e321m9_13limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_12limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_12limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e322m2e161m1_12limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e322m2e161m1_12limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_12limbs/feadd.c39
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_12limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_12limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_12limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_12limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_12limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_12limbs/femul.c113
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_12limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_12limbs/femulDisplay.log81
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_12limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_12limbs/fesquare.c101
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_12limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_12limbs/fesquareDisplay.log81
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_12limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_12limbs/fesub.c39
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_12limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_12limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_12limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_12limbs/freeze.c64
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_12limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_12limbs/freezeDisplay.log44
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_12limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e322m2e161m1_12limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_14limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_14limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e322m2e161m1_14limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e322m2e161m1_14limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_14limbs/feadd.c45
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_14limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_14limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_14limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_14limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_14limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_14limbs/femul.c129
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_14limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_14limbs/femulDisplay.log91
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_14limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_14limbs/fesquare.c115
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_14limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_14limbs/fesquareDisplay.log91
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_14limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_14limbs/fesub.c45
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_14limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_14limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_14limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_14limbs/freeze.c74
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_14limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_14limbs/freezeDisplay.log50
-rw-r--r--src/Specific/solinas32_2e322m2e161m1_14limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e322m2e161m1_14limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e336m17_13limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e336m17_13limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e336m17_13limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e336m17_13limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e336m17_13limbs/feadd.c42
-rw-r--r--src/Specific/solinas32_2e336m17_13limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e336m17_13limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e336m17_13limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e336m17_13limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e336m17_13limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e336m17_13limbs/femul.c99
-rw-r--r--src/Specific/solinas32_2e336m17_13limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e336m17_13limbs/femulDisplay.log64
-rw-r--r--src/Specific/solinas32_2e336m17_13limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e336m17_13limbs/fesquare.c86
-rw-r--r--src/Specific/solinas32_2e336m17_13limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e336m17_13limbs/fesquareDisplay.log64
-rw-r--r--src/Specific/solinas32_2e336m17_13limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e336m17_13limbs/fesub.c42
-rw-r--r--src/Specific/solinas32_2e336m17_13limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e336m17_13limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e336m17_13limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e336m17_13limbs/freeze.c69
-rw-r--r--src/Specific/solinas32_2e336m17_13limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e336m17_13limbs/freezeDisplay.log47
-rw-r--r--src/Specific/solinas32_2e336m17_13limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e336m17_13limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e336m17_14limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e336m17_14limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e336m17_14limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e336m17_14limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e336m17_14limbs/feadd.c45
-rw-r--r--src/Specific/solinas32_2e336m17_14limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e336m17_14limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e336m17_14limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e336m17_14limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e336m17_14limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e336m17_14limbs/femul.c106
-rw-r--r--src/Specific/solinas32_2e336m17_14limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e336m17_14limbs/femulDisplay.log68
-rw-r--r--src/Specific/solinas32_2e336m17_14limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e336m17_14limbs/fesquare.c92
-rw-r--r--src/Specific/solinas32_2e336m17_14limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e336m17_14limbs/fesquareDisplay.log68
-rw-r--r--src/Specific/solinas32_2e336m17_14limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e336m17_14limbs/fesub.c45
-rw-r--r--src/Specific/solinas32_2e336m17_14limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e336m17_14limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e336m17_14limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e336m17_14limbs/freeze.c74
-rw-r--r--src/Specific/solinas32_2e336m17_14limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e336m17_14limbs/freezeDisplay.log50
-rw-r--r--src/Specific/solinas32_2e336m17_14limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e336m17_14limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e336m3_12limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e336m3_12limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e336m3_12limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e336m3_12limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e336m3_12limbs/feadd.c39
-rw-r--r--src/Specific/solinas32_2e336m3_12limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e336m3_12limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e336m3_12limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e336m3_12limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e336m3_12limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e336m3_12limbs/femul.c92
-rw-r--r--src/Specific/solinas32_2e336m3_12limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e336m3_12limbs/femulDisplay.log60
-rw-r--r--src/Specific/solinas32_2e336m3_12limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e336m3_12limbs/fesquare.c80
-rw-r--r--src/Specific/solinas32_2e336m3_12limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e336m3_12limbs/fesquareDisplay.log60
-rw-r--r--src/Specific/solinas32_2e336m3_12limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e336m3_12limbs/fesub.c39
-rw-r--r--src/Specific/solinas32_2e336m3_12limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e336m3_12limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e336m3_12limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e336m3_12limbs/freeze.c64
-rw-r--r--src/Specific/solinas32_2e336m3_12limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e336m3_12limbs/freezeDisplay.log44
-rw-r--r--src/Specific/solinas32_2e336m3_12limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e336m3_12limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e336m3_13limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e336m3_13limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e336m3_13limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e336m3_13limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e336m3_13limbs/feadd.c42
-rw-r--r--src/Specific/solinas32_2e336m3_13limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e336m3_13limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e336m3_13limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e336m3_13limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e336m3_13limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e336m3_13limbs/femul.c99
-rw-r--r--src/Specific/solinas32_2e336m3_13limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e336m3_13limbs/femulDisplay.log64
-rw-r--r--src/Specific/solinas32_2e336m3_13limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e336m3_13limbs/fesquare.c86
-rw-r--r--src/Specific/solinas32_2e336m3_13limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e336m3_13limbs/fesquareDisplay.log64
-rw-r--r--src/Specific/solinas32_2e336m3_13limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e336m3_13limbs/fesub.c42
-rw-r--r--src/Specific/solinas32_2e336m3_13limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e336m3_13limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e336m3_13limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e336m3_13limbs/freeze.c69
-rw-r--r--src/Specific/solinas32_2e336m3_13limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e336m3_13limbs/freezeDisplay.log47
-rw-r--r--src/Specific/solinas32_2e336m3_13limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e336m3_13limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e338m15_13limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e338m15_13limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e338m15_13limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e338m15_13limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e338m15_13limbs/feadd.c42
-rw-r--r--src/Specific/solinas32_2e338m15_13limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e338m15_13limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e338m15_13limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e338m15_13limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e338m15_13limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e338m15_13limbs/femul.c99
-rw-r--r--src/Specific/solinas32_2e338m15_13limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e338m15_13limbs/femulDisplay.log64
-rw-r--r--src/Specific/solinas32_2e338m15_13limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e338m15_13limbs/fesquare.c86
-rw-r--r--src/Specific/solinas32_2e338m15_13limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e338m15_13limbs/fesquareDisplay.log64
-rw-r--r--src/Specific/solinas32_2e338m15_13limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e338m15_13limbs/fesub.c42
-rw-r--r--src/Specific/solinas32_2e338m15_13limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e338m15_13limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e338m15_13limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e338m15_13limbs/freeze.c69
-rw-r--r--src/Specific/solinas32_2e338m15_13limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e338m15_13limbs/freezeDisplay.log47
-rw-r--r--src/Specific/solinas32_2e338m15_13limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e338m15_13limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e338m15_14limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e338m15_14limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e338m15_14limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e338m15_14limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e338m15_14limbs/feadd.c45
-rw-r--r--src/Specific/solinas32_2e338m15_14limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e338m15_14limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e338m15_14limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e338m15_14limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e338m15_14limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e338m15_14limbs/femul.c106
-rw-r--r--src/Specific/solinas32_2e338m15_14limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e338m15_14limbs/femulDisplay.log68
-rw-r--r--src/Specific/solinas32_2e338m15_14limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e338m15_14limbs/fesquare.c92
-rw-r--r--src/Specific/solinas32_2e338m15_14limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e338m15_14limbs/fesquareDisplay.log68
-rw-r--r--src/Specific/solinas32_2e338m15_14limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e338m15_14limbs/fesub.c45
-rw-r--r--src/Specific/solinas32_2e338m15_14limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e338m15_14limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e338m15_14limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e338m15_14limbs/freeze.c74
-rw-r--r--src/Specific/solinas32_2e338m15_14limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e338m15_14limbs/freezeDisplay.log50
-rw-r--r--src/Specific/solinas32_2e338m15_14limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e338m15_14limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e369m25_15limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e369m25_15limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e369m25_15limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e369m25_15limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e369m25_15limbs/feadd.c48
-rw-r--r--src/Specific/solinas32_2e369m25_15limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e369m25_15limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e369m25_15limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e369m25_15limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e369m25_15limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e369m25_15limbs/femul.c113
-rw-r--r--src/Specific/solinas32_2e369m25_15limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e369m25_15limbs/femulDisplay.log72
-rw-r--r--src/Specific/solinas32_2e369m25_15limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e369m25_15limbs/fesquare.c98
-rw-r--r--src/Specific/solinas32_2e369m25_15limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e369m25_15limbs/fesquareDisplay.log72
-rw-r--r--src/Specific/solinas32_2e369m25_15limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e369m25_15limbs/fesub.c48
-rw-r--r--src/Specific/solinas32_2e369m25_15limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e369m25_15limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e369m25_15limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e369m25_15limbs/freeze.c79
-rw-r--r--src/Specific/solinas32_2e369m25_15limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e369m25_15limbs/freezeDisplay.log53
-rw-r--r--src/Specific/solinas32_2e369m25_15limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e369m25_15limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e369m25_16limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e369m25_16limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e369m25_16limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e369m25_16limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e369m25_16limbs/feadd.c51
-rw-r--r--src/Specific/solinas32_2e369m25_16limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e369m25_16limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e369m25_16limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e369m25_16limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e369m25_16limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e369m25_16limbs/femul.c120
-rw-r--r--src/Specific/solinas32_2e369m25_16limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e369m25_16limbs/femulDisplay.log76
-rw-r--r--src/Specific/solinas32_2e369m25_16limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e369m25_16limbs/fesquare.c104
-rw-r--r--src/Specific/solinas32_2e369m25_16limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e369m25_16limbs/fesquareDisplay.log76
-rw-r--r--src/Specific/solinas32_2e369m25_16limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e369m25_16limbs/fesub.c51
-rw-r--r--src/Specific/solinas32_2e369m25_16limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e369m25_16limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e369m25_16limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e369m25_16limbs/freeze.c84
-rw-r--r--src/Specific/solinas32_2e369m25_16limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e369m25_16limbs/freezeDisplay.log56
-rw-r--r--src/Specific/solinas32_2e369m25_16limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e369m25_16limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e379m19_15limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e379m19_15limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e379m19_15limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e379m19_15limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e379m19_15limbs/feadd.c48
-rw-r--r--src/Specific/solinas32_2e379m19_15limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e379m19_15limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e379m19_15limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e379m19_15limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e379m19_15limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e379m19_15limbs/femul.c113
-rw-r--r--src/Specific/solinas32_2e379m19_15limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e379m19_15limbs/femulDisplay.log72
-rw-r--r--src/Specific/solinas32_2e379m19_15limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e379m19_15limbs/fesquare.c98
-rw-r--r--src/Specific/solinas32_2e379m19_15limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e379m19_15limbs/fesquareDisplay.log72
-rw-r--r--src/Specific/solinas32_2e379m19_15limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e379m19_15limbs/fesub.c48
-rw-r--r--src/Specific/solinas32_2e379m19_15limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e379m19_15limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e379m19_15limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e379m19_15limbs/freeze.c79
-rw-r--r--src/Specific/solinas32_2e379m19_15limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e379m19_15limbs/freezeDisplay.log53
-rw-r--r--src/Specific/solinas32_2e379m19_15limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e379m19_15limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e379m19_16limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e379m19_16limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e379m19_16limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e379m19_16limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e379m19_16limbs/feadd.c51
-rw-r--r--src/Specific/solinas32_2e379m19_16limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e379m19_16limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e379m19_16limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e379m19_16limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e379m19_16limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e379m19_16limbs/femul.c120
-rw-r--r--src/Specific/solinas32_2e379m19_16limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e379m19_16limbs/femulDisplay.log76
-rw-r--r--src/Specific/solinas32_2e379m19_16limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e379m19_16limbs/fesquare.c104
-rw-r--r--src/Specific/solinas32_2e379m19_16limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e379m19_16limbs/fesquareDisplay.log76
-rw-r--r--src/Specific/solinas32_2e379m19_16limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e379m19_16limbs/fesub.c51
-rw-r--r--src/Specific/solinas32_2e379m19_16limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e379m19_16limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e379m19_16limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e379m19_16limbs/freeze.c84
-rw-r--r--src/Specific/solinas32_2e379m19_16limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e379m19_16limbs/freezeDisplay.log56
-rw-r--r--src/Specific/solinas32_2e379m19_16limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e379m19_16limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e382m105_16limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e382m105_16limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e382m105_16limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e382m105_16limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e382m105_16limbs/feadd.c51
-rw-r--r--src/Specific/solinas32_2e382m105_16limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e382m105_16limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e382m105_16limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e382m105_16limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e382m105_16limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e382m105_16limbs/femul.c120
-rw-r--r--src/Specific/solinas32_2e382m105_16limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e382m105_16limbs/femulDisplay.log76
-rw-r--r--src/Specific/solinas32_2e382m105_16limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e382m105_16limbs/fesquare.c104
-rw-r--r--src/Specific/solinas32_2e382m105_16limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e382m105_16limbs/fesquareDisplay.log76
-rw-r--r--src/Specific/solinas32_2e382m105_16limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e382m105_16limbs/fesub.c51
-rw-r--r--src/Specific/solinas32_2e382m105_16limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e382m105_16limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e382m105_16limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e382m105_16limbs/freeze.c84
-rw-r--r--src/Specific/solinas32_2e382m105_16limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e382m105_16limbs/freezeDisplay.log56
-rw-r--r--src/Specific/solinas32_2e382m105_16limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e382m105_16limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e382m105_17limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e382m105_17limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e382m105_17limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e382m105_17limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e382m105_17limbs/feadd.c54
-rw-r--r--src/Specific/solinas32_2e382m105_17limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e382m105_17limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e382m105_17limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e382m105_17limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e382m105_17limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e382m105_17limbs/femul.c127
-rw-r--r--src/Specific/solinas32_2e382m105_17limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e382m105_17limbs/femulDisplay.log80
-rw-r--r--src/Specific/solinas32_2e382m105_17limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e382m105_17limbs/fesquare.c110
-rw-r--r--src/Specific/solinas32_2e382m105_17limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e382m105_17limbs/fesquareDisplay.log80
-rw-r--r--src/Specific/solinas32_2e382m105_17limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e382m105_17limbs/fesub.c54
-rw-r--r--src/Specific/solinas32_2e382m105_17limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e382m105_17limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e382m105_17limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e382m105_17limbs/freeze.c89
-rw-r--r--src/Specific/solinas32_2e382m105_17limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e382m105_17limbs/freezeDisplay.log59
-rw-r--r--src/Specific/solinas32_2e382m105_17limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e382m105_17limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e383m187_16limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e383m187_16limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e383m187_16limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e383m187_16limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e383m187_16limbs/feadd.c51
-rw-r--r--src/Specific/solinas32_2e383m187_16limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e383m187_16limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e383m187_16limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m187_16limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e383m187_16limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m187_16limbs/femul.c120
-rw-r--r--src/Specific/solinas32_2e383m187_16limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e383m187_16limbs/femulDisplay.log76
-rw-r--r--src/Specific/solinas32_2e383m187_16limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m187_16limbs/fesquare.c104
-rw-r--r--src/Specific/solinas32_2e383m187_16limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e383m187_16limbs/fesquareDisplay.log76
-rw-r--r--src/Specific/solinas32_2e383m187_16limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m187_16limbs/fesub.c51
-rw-r--r--src/Specific/solinas32_2e383m187_16limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e383m187_16limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e383m187_16limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m187_16limbs/freeze.c84
-rw-r--r--src/Specific/solinas32_2e383m187_16limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e383m187_16limbs/freezeDisplay.log56
-rw-r--r--src/Specific/solinas32_2e383m187_16limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e383m187_16limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e383m187_17limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e383m187_17limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e383m187_17limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e383m187_17limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e383m187_17limbs/feadd.c54
-rw-r--r--src/Specific/solinas32_2e383m187_17limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e383m187_17limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e383m187_17limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m187_17limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e383m187_17limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m187_17limbs/femul.c127
-rw-r--r--src/Specific/solinas32_2e383m187_17limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e383m187_17limbs/femulDisplay.log80
-rw-r--r--src/Specific/solinas32_2e383m187_17limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m187_17limbs/fesquare.c110
-rw-r--r--src/Specific/solinas32_2e383m187_17limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e383m187_17limbs/fesquareDisplay.log80
-rw-r--r--src/Specific/solinas32_2e383m187_17limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m187_17limbs/fesub.c54
-rw-r--r--src/Specific/solinas32_2e383m187_17limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e383m187_17limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e383m187_17limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m187_17limbs/freeze.c89
-rw-r--r--src/Specific/solinas32_2e383m187_17limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e383m187_17limbs/freezeDisplay.log59
-rw-r--r--src/Specific/solinas32_2e383m187_17limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e383m187_17limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e383m31_15limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e383m31_15limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e383m31_15limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e383m31_15limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e383m31_15limbs/feadd.c48
-rw-r--r--src/Specific/solinas32_2e383m31_15limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e383m31_15limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e383m31_15limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m31_15limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e383m31_15limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m31_15limbs/femul.c113
-rw-r--r--src/Specific/solinas32_2e383m31_15limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e383m31_15limbs/femulDisplay.log72
-rw-r--r--src/Specific/solinas32_2e383m31_15limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m31_15limbs/fesquare.c98
-rw-r--r--src/Specific/solinas32_2e383m31_15limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e383m31_15limbs/fesquareDisplay.log72
-rw-r--r--src/Specific/solinas32_2e383m31_15limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m31_15limbs/fesub.c48
-rw-r--r--src/Specific/solinas32_2e383m31_15limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e383m31_15limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e383m31_15limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m31_15limbs/freeze.c79
-rw-r--r--src/Specific/solinas32_2e383m31_15limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e383m31_15limbs/freezeDisplay.log53
-rw-r--r--src/Specific/solinas32_2e383m31_15limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e383m31_15limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e383m31_16limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e383m31_16limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e383m31_16limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e383m31_16limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e383m31_16limbs/feadd.c51
-rw-r--r--src/Specific/solinas32_2e383m31_16limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e383m31_16limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e383m31_16limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m31_16limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e383m31_16limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m31_16limbs/femul.c120
-rw-r--r--src/Specific/solinas32_2e383m31_16limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e383m31_16limbs/femulDisplay.log76
-rw-r--r--src/Specific/solinas32_2e383m31_16limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m31_16limbs/fesquare.c104
-rw-r--r--src/Specific/solinas32_2e383m31_16limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e383m31_16limbs/fesquareDisplay.log76
-rw-r--r--src/Specific/solinas32_2e383m31_16limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m31_16limbs/fesub.c51
-rw-r--r--src/Specific/solinas32_2e383m31_16limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e383m31_16limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e383m31_16limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m31_16limbs/freeze.c84
-rw-r--r--src/Specific/solinas32_2e383m31_16limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e383m31_16limbs/freezeDisplay.log56
-rw-r--r--src/Specific/solinas32_2e383m31_16limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e383m31_16limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e383m421_17limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e383m421_17limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e383m421_17limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e383m421_17limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e383m421_17limbs/feadd.c54
-rw-r--r--src/Specific/solinas32_2e383m421_17limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e383m421_17limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e383m421_17limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m421_17limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e383m421_17limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m421_17limbs/femul.c127
-rw-r--r--src/Specific/solinas32_2e383m421_17limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e383m421_17limbs/femulDisplay.log80
-rw-r--r--src/Specific/solinas32_2e383m421_17limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m421_17limbs/fesquare.c110
-rw-r--r--src/Specific/solinas32_2e383m421_17limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e383m421_17limbs/fesquareDisplay.log80
-rw-r--r--src/Specific/solinas32_2e383m421_17limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m421_17limbs/fesub.c54
-rw-r--r--src/Specific/solinas32_2e383m421_17limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e383m421_17limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e383m421_17limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m421_17limbs/freeze.c89
-rw-r--r--src/Specific/solinas32_2e383m421_17limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e383m421_17limbs/freezeDisplay.log59
-rw-r--r--src/Specific/solinas32_2e383m421_17limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e383m421_17limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e383m421_18limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e383m421_18limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e383m421_18limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e383m421_18limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e383m421_18limbs/feadd.c57
-rw-r--r--src/Specific/solinas32_2e383m421_18limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e383m421_18limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e383m421_18limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m421_18limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e383m421_18limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m421_18limbs/femul.c134
-rw-r--r--src/Specific/solinas32_2e383m421_18limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e383m421_18limbs/femulDisplay.log84
-rw-r--r--src/Specific/solinas32_2e383m421_18limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m421_18limbs/fesquare.c116
-rw-r--r--src/Specific/solinas32_2e383m421_18limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e383m421_18limbs/fesquareDisplay.log84
-rw-r--r--src/Specific/solinas32_2e383m421_18limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m421_18limbs/fesub.c57
-rw-r--r--src/Specific/solinas32_2e383m421_18limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e383m421_18limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e383m421_18limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e383m421_18limbs/freeze.c94
-rw-r--r--src/Specific/solinas32_2e383m421_18limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e383m421_18limbs/freezeDisplay.log62
-rw-r--r--src/Specific/solinas32_2e383m421_18limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e383m421_18limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/feadd.c57
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/freeze.c92
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/freezeDisplay.log60
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/feadd.c60
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/freeze.c97
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/freezeDisplay.log63
-rw-r--r--src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e384m317_17limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e384m317_17limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e384m317_17limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e384m317_17limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e384m317_17limbs/feadd.c54
-rw-r--r--src/Specific/solinas32_2e384m317_17limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e384m317_17limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e384m317_17limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e384m317_17limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e384m317_17limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e384m317_17limbs/femul.c127
-rw-r--r--src/Specific/solinas32_2e384m317_17limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e384m317_17limbs/femulDisplay.log80
-rw-r--r--src/Specific/solinas32_2e384m317_17limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e384m317_17limbs/fesquare.c110
-rw-r--r--src/Specific/solinas32_2e384m317_17limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e384m317_17limbs/fesquareDisplay.log80
-rw-r--r--src/Specific/solinas32_2e384m317_17limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e384m317_17limbs/fesub.c54
-rw-r--r--src/Specific/solinas32_2e384m317_17limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e384m317_17limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e384m317_17limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e384m317_17limbs/freeze.c89
-rw-r--r--src/Specific/solinas32_2e384m317_17limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e384m317_17limbs/freezeDisplay.log59
-rw-r--r--src/Specific/solinas32_2e384m317_17limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e384m317_17limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e384m317_18limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e384m317_18limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e384m317_18limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e384m317_18limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e384m317_18limbs/feadd.c57
-rw-r--r--src/Specific/solinas32_2e384m317_18limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e384m317_18limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e384m317_18limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e384m317_18limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e384m317_18limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e384m317_18limbs/femul.c134
-rw-r--r--src/Specific/solinas32_2e384m317_18limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e384m317_18limbs/femulDisplay.log84
-rw-r--r--src/Specific/solinas32_2e384m317_18limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e384m317_18limbs/fesquare.c116
-rw-r--r--src/Specific/solinas32_2e384m317_18limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e384m317_18limbs/fesquareDisplay.log84
-rw-r--r--src/Specific/solinas32_2e384m317_18limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e384m317_18limbs/fesub.c57
-rw-r--r--src/Specific/solinas32_2e384m317_18limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e384m317_18limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e384m317_18limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e384m317_18limbs/freeze.c94
-rw-r--r--src/Specific/solinas32_2e384m317_18limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e384m317_18limbs/freezeDisplay.log62
-rw-r--r--src/Specific/solinas32_2e384m317_18limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e384m317_18limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e389m21_15limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e389m21_15limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e389m21_15limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e389m21_15limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e389m21_15limbs/feadd.c48
-rw-r--r--src/Specific/solinas32_2e389m21_15limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e389m21_15limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e389m21_15limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e389m21_15limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e389m21_15limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e389m21_15limbs/femul.c113
-rw-r--r--src/Specific/solinas32_2e389m21_15limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e389m21_15limbs/femulDisplay.log72
-rw-r--r--src/Specific/solinas32_2e389m21_15limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e389m21_15limbs/fesquare.c98
-rw-r--r--src/Specific/solinas32_2e389m21_15limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e389m21_15limbs/fesquareDisplay.log72
-rw-r--r--src/Specific/solinas32_2e389m21_15limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e389m21_15limbs/fesub.c48
-rw-r--r--src/Specific/solinas32_2e389m21_15limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e389m21_15limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e389m21_15limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e389m21_15limbs/freeze.c79
-rw-r--r--src/Specific/solinas32_2e389m21_15limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e389m21_15limbs/freezeDisplay.log53
-rw-r--r--src/Specific/solinas32_2e389m21_15limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e389m21_15limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e389m21_16limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e389m21_16limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e389m21_16limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e389m21_16limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e389m21_16limbs/feadd.c51
-rw-r--r--src/Specific/solinas32_2e389m21_16limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e389m21_16limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e389m21_16limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e389m21_16limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e389m21_16limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e389m21_16limbs/femul.c120
-rw-r--r--src/Specific/solinas32_2e389m21_16limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e389m21_16limbs/femulDisplay.log76
-rw-r--r--src/Specific/solinas32_2e389m21_16limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e389m21_16limbs/fesquare.c104
-rw-r--r--src/Specific/solinas32_2e389m21_16limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e389m21_16limbs/fesquareDisplay.log76
-rw-r--r--src/Specific/solinas32_2e389m21_16limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e389m21_16limbs/fesub.c51
-rw-r--r--src/Specific/solinas32_2e389m21_16limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e389m21_16limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e389m21_16limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e389m21_16limbs/freeze.c84
-rw-r--r--src/Specific/solinas32_2e389m21_16limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e389m21_16limbs/freezeDisplay.log56
-rw-r--r--src/Specific/solinas32_2e389m21_16limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e389m21_16limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e401m31_16limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e401m31_16limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e401m31_16limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e401m31_16limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e401m31_16limbs/feadd.c51
-rw-r--r--src/Specific/solinas32_2e401m31_16limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e401m31_16limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e401m31_16limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e401m31_16limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e401m31_16limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e401m31_16limbs/femul.c120
-rw-r--r--src/Specific/solinas32_2e401m31_16limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e401m31_16limbs/femulDisplay.log76
-rw-r--r--src/Specific/solinas32_2e401m31_16limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e401m31_16limbs/fesquare.c104
-rw-r--r--src/Specific/solinas32_2e401m31_16limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e401m31_16limbs/fesquareDisplay.log76
-rw-r--r--src/Specific/solinas32_2e401m31_16limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e401m31_16limbs/fesub.c51
-rw-r--r--src/Specific/solinas32_2e401m31_16limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e401m31_16limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e401m31_16limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e401m31_16limbs/freeze.c84
-rw-r--r--src/Specific/solinas32_2e401m31_16limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e401m31_16limbs/freezeDisplay.log56
-rw-r--r--src/Specific/solinas32_2e401m31_16limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e401m31_16limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e401m31_17limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e401m31_17limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e401m31_17limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e401m31_17limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e401m31_17limbs/feadd.c54
-rw-r--r--src/Specific/solinas32_2e401m31_17limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e401m31_17limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e401m31_17limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e401m31_17limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e401m31_17limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e401m31_17limbs/femul.c127
-rw-r--r--src/Specific/solinas32_2e401m31_17limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e401m31_17limbs/femulDisplay.log80
-rw-r--r--src/Specific/solinas32_2e401m31_17limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e401m31_17limbs/fesquare.c110
-rw-r--r--src/Specific/solinas32_2e401m31_17limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e401m31_17limbs/fesquareDisplay.log80
-rw-r--r--src/Specific/solinas32_2e401m31_17limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e401m31_17limbs/fesub.c54
-rw-r--r--src/Specific/solinas32_2e401m31_17limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e401m31_17limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e401m31_17limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e401m31_17limbs/freeze.c89
-rw-r--r--src/Specific/solinas32_2e401m31_17limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e401m31_17limbs/freezeDisplay.log59
-rw-r--r--src/Specific/solinas32_2e401m31_17limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e401m31_17limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e413m21_16limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e413m21_16limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e413m21_16limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e413m21_16limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e413m21_16limbs/feadd.c51
-rw-r--r--src/Specific/solinas32_2e413m21_16limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e413m21_16limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e413m21_16limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e413m21_16limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e413m21_16limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e413m21_16limbs/femul.c120
-rw-r--r--src/Specific/solinas32_2e413m21_16limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e413m21_16limbs/femulDisplay.log76
-rw-r--r--src/Specific/solinas32_2e413m21_16limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e413m21_16limbs/fesquare.c104
-rw-r--r--src/Specific/solinas32_2e413m21_16limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e413m21_16limbs/fesquareDisplay.log76
-rw-r--r--src/Specific/solinas32_2e413m21_16limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e413m21_16limbs/fesub.c51
-rw-r--r--src/Specific/solinas32_2e413m21_16limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e413m21_16limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e413m21_16limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e413m21_16limbs/freeze.c84
-rw-r--r--src/Specific/solinas32_2e413m21_16limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e413m21_16limbs/freezeDisplay.log56
-rw-r--r--src/Specific/solinas32_2e413m21_16limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e413m21_16limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e413m21_17limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e413m21_17limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e413m21_17limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e413m21_17limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e413m21_17limbs/feadd.c54
-rw-r--r--src/Specific/solinas32_2e413m21_17limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e413m21_17limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e413m21_17limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e413m21_17limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e413m21_17limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e413m21_17limbs/femul.c127
-rw-r--r--src/Specific/solinas32_2e413m21_17limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e413m21_17limbs/femulDisplay.log80
-rw-r--r--src/Specific/solinas32_2e413m21_17limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e413m21_17limbs/fesquare.c110
-rw-r--r--src/Specific/solinas32_2e413m21_17limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e413m21_17limbs/fesquareDisplay.log80
-rw-r--r--src/Specific/solinas32_2e413m21_17limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e413m21_17limbs/fesub.c54
-rw-r--r--src/Specific/solinas32_2e413m21_17limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e413m21_17limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e413m21_17limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e413m21_17limbs/freeze.c89
-rw-r--r--src/Specific/solinas32_2e413m21_17limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e413m21_17limbs/freezeDisplay.log59
-rw-r--r--src/Specific/solinas32_2e413m21_17limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e413m21_17limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e414m17_16limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e414m17_16limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e414m17_16limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e414m17_16limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e414m17_16limbs/feadd.c51
-rw-r--r--src/Specific/solinas32_2e414m17_16limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e414m17_16limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e414m17_16limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e414m17_16limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e414m17_16limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e414m17_16limbs/femul.c120
-rw-r--r--src/Specific/solinas32_2e414m17_16limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e414m17_16limbs/femulDisplay.log76
-rw-r--r--src/Specific/solinas32_2e414m17_16limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e414m17_16limbs/fesquare.c104
-rw-r--r--src/Specific/solinas32_2e414m17_16limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e414m17_16limbs/fesquareDisplay.log76
-rw-r--r--src/Specific/solinas32_2e414m17_16limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e414m17_16limbs/fesub.c51
-rw-r--r--src/Specific/solinas32_2e414m17_16limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e414m17_16limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e414m17_16limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e414m17_16limbs/freeze.c84
-rw-r--r--src/Specific/solinas32_2e414m17_16limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e414m17_16limbs/freezeDisplay.log56
-rw-r--r--src/Specific/solinas32_2e414m17_16limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e414m17_16limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e414m17_17limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e414m17_17limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e414m17_17limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e414m17_17limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e414m17_17limbs/feadd.c54
-rw-r--r--src/Specific/solinas32_2e414m17_17limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e414m17_17limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e414m17_17limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e414m17_17limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e414m17_17limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e414m17_17limbs/femul.c127
-rw-r--r--src/Specific/solinas32_2e414m17_17limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e414m17_17limbs/femulDisplay.log80
-rw-r--r--src/Specific/solinas32_2e414m17_17limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e414m17_17limbs/fesquare.c110
-rw-r--r--src/Specific/solinas32_2e414m17_17limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e414m17_17limbs/fesquareDisplay.log80
-rw-r--r--src/Specific/solinas32_2e414m17_17limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e414m17_17limbs/fesub.c54
-rw-r--r--src/Specific/solinas32_2e414m17_17limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e414m17_17limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e414m17_17limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e414m17_17limbs/freeze.c89
-rw-r--r--src/Specific/solinas32_2e414m17_17limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e414m17_17limbs/freezeDisplay.log59
-rw-r--r--src/Specific/solinas32_2e414m17_17limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e414m17_17limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_16limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_16limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e416m2e208m1_16limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e416m2e208m1_16limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_16limbs/feadd.c51
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_16limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_16limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_16limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_16limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_16limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_16limbs/femul.c145
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_16limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_16limbs/femulDisplay.log101
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_16limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_16limbs/fesquare.c129
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_16limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_16limbs/fesquareDisplay.log101
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_16limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_16limbs/fesub.c51
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_16limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_16limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_16limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_16limbs/freeze.c84
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_16limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_16limbs/freezeDisplay.log56
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_16limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e416m2e208m1_16limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_18limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_18limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e416m2e208m1_18limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e416m2e208m1_18limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_18limbs/feadd.c57
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_18limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_18limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_18limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_18limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_18limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_18limbs/femul.c161
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_18limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_18limbs/femulDisplay.log111
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_18limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_18limbs/fesquare.c143
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_18limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_18limbs/fesquareDisplay.log111
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_18limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_18limbs/fesub.c57
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_18limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_18limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_18limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_18limbs/freeze.c94
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_18limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_18limbs/freezeDisplay.log62
-rw-r--r--src/Specific/solinas32_2e416m2e208m1_18limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e416m2e208m1_18limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e444m17_17limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e444m17_17limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e444m17_17limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e444m17_17limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e444m17_17limbs/feadd.c54
-rw-r--r--src/Specific/solinas32_2e444m17_17limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e444m17_17limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e444m17_17limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e444m17_17limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e444m17_17limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e444m17_17limbs/femul.c127
-rw-r--r--src/Specific/solinas32_2e444m17_17limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e444m17_17limbs/femulDisplay.log80
-rw-r--r--src/Specific/solinas32_2e444m17_17limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e444m17_17limbs/fesquare.c110
-rw-r--r--src/Specific/solinas32_2e444m17_17limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e444m17_17limbs/fesquareDisplay.log80
-rw-r--r--src/Specific/solinas32_2e444m17_17limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e444m17_17limbs/fesub.c54
-rw-r--r--src/Specific/solinas32_2e444m17_17limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e444m17_17limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e444m17_17limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e444m17_17limbs/freeze.c89
-rw-r--r--src/Specific/solinas32_2e444m17_17limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e444m17_17limbs/freezeDisplay.log59
-rw-r--r--src/Specific/solinas32_2e444m17_17limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e444m17_17limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e444m17_18limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e444m17_18limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e444m17_18limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e444m17_18limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e444m17_18limbs/feadd.c57
-rw-r--r--src/Specific/solinas32_2e444m17_18limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e444m17_18limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e444m17_18limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e444m17_18limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e444m17_18limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e444m17_18limbs/femul.c134
-rw-r--r--src/Specific/solinas32_2e444m17_18limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e444m17_18limbs/femulDisplay.log84
-rw-r--r--src/Specific/solinas32_2e444m17_18limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e444m17_18limbs/fesquare.c116
-rw-r--r--src/Specific/solinas32_2e444m17_18limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e444m17_18limbs/fesquareDisplay.log84
-rw-r--r--src/Specific/solinas32_2e444m17_18limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e444m17_18limbs/fesub.c57
-rw-r--r--src/Specific/solinas32_2e444m17_18limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e444m17_18limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e444m17_18limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e444m17_18limbs/freeze.c94
-rw-r--r--src/Specific/solinas32_2e444m17_18limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e444m17_18limbs/freezeDisplay.log62
-rw-r--r--src/Specific/solinas32_2e444m17_18limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e444m17_18limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_16limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_16limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e448m2e224m1_16limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e448m2e224m1_16limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_16limbs/feadd.c51
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_16limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_16limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_16limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_16limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_16limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_16limbs/femul.c145
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_16limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_16limbs/femulDisplay.log101
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_16limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_16limbs/fesquare.c129
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_16limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_16limbs/fesquareDisplay.log101
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_16limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_16limbs/fesub.c51
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_16limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_16limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_16limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_16limbs/freeze.c84
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_16limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_16limbs/freezeDisplay.log56
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_16limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e448m2e224m1_16limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_18limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_18limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e448m2e224m1_18limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e448m2e224m1_18limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_18limbs/feadd.c57
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_18limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_18limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_18limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_18limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_18limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_18limbs/femul.c161
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_18limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_18limbs/femulDisplay.log111
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_18limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_18limbs/fesquare.c143
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_18limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_18limbs/fesquareDisplay.log111
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_18limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_18limbs/fesub.c57
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_18limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_18limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_18limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_18limbs/freeze.c94
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_18limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_18limbs/freezeDisplay.log62
-rw-r--r--src/Specific/solinas32_2e448m2e224m1_18limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e448m2e224m1_18limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_18limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_18limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e450m2e225m1_18limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e450m2e225m1_18limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_18limbs/feadd.c57
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_18limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_18limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_18limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_18limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_18limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_18limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_18limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_18limbs/fesquare.c143
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_18limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_18limbs/fesquareDisplay.log111
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_18limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_18limbs/fesub.c57
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_18limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_18limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_18limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_18limbs/freeze.c94
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_18limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_18limbs/freezeDisplay.log62
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_18limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e450m2e225m1_18limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_20limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_20limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e450m2e225m1_20limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e450m2e225m1_20limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_20limbs/feadd.c63
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_20limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_20limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_20limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_20limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_20limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_20limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_20limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_20limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_20limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_20limbs/fesub.c63
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_20limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_20limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_20limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_20limbs/freeze.c104
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_20limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_20limbs/freezeDisplay.log68
-rw-r--r--src/Specific/solinas32_2e450m2e225m1_20limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e450m2e225m1_20limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e452m3_17limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e452m3_17limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e452m3_17limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e452m3_17limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e452m3_17limbs/feadd.c54
-rw-r--r--src/Specific/solinas32_2e452m3_17limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e452m3_17limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e452m3_17limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e452m3_17limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e452m3_17limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e452m3_17limbs/femul.c127
-rw-r--r--src/Specific/solinas32_2e452m3_17limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e452m3_17limbs/femulDisplay.log80
-rw-r--r--src/Specific/solinas32_2e452m3_17limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e452m3_17limbs/fesquare.c110
-rw-r--r--src/Specific/solinas32_2e452m3_17limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e452m3_17limbs/fesquareDisplay.log80
-rw-r--r--src/Specific/solinas32_2e452m3_17limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e452m3_17limbs/fesub.c54
-rw-r--r--src/Specific/solinas32_2e452m3_17limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e452m3_17limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e452m3_17limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e452m3_17limbs/freeze.c89
-rw-r--r--src/Specific/solinas32_2e452m3_17limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e452m3_17limbs/freezeDisplay.log59
-rw-r--r--src/Specific/solinas32_2e452m3_17limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e452m3_17limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e452m3_18limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e452m3_18limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e452m3_18limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e452m3_18limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e452m3_18limbs/feadd.c57
-rw-r--r--src/Specific/solinas32_2e452m3_18limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e452m3_18limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e452m3_18limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e452m3_18limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e452m3_18limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e452m3_18limbs/femul.c134
-rw-r--r--src/Specific/solinas32_2e452m3_18limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e452m3_18limbs/femulDisplay.log84
-rw-r--r--src/Specific/solinas32_2e452m3_18limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e452m3_18limbs/fesquare.c116
-rw-r--r--src/Specific/solinas32_2e452m3_18limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e452m3_18limbs/fesquareDisplay.log84
-rw-r--r--src/Specific/solinas32_2e452m3_18limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e452m3_18limbs/fesub.c57
-rw-r--r--src/Specific/solinas32_2e452m3_18limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e452m3_18limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e452m3_18limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e452m3_18limbs/freeze.c94
-rw-r--r--src/Specific/solinas32_2e452m3_18limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e452m3_18limbs/freezeDisplay.log62
-rw-r--r--src/Specific/solinas32_2e452m3_18limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e452m3_18limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e468m17_18limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e468m17_18limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e468m17_18limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e468m17_18limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e468m17_18limbs/feadd.c57
-rw-r--r--src/Specific/solinas32_2e468m17_18limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e468m17_18limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e468m17_18limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e468m17_18limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e468m17_18limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e468m17_18limbs/femul.c134
-rw-r--r--src/Specific/solinas32_2e468m17_18limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e468m17_18limbs/femulDisplay.log84
-rw-r--r--src/Specific/solinas32_2e468m17_18limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e468m17_18limbs/fesquare.c116
-rw-r--r--src/Specific/solinas32_2e468m17_18limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e468m17_18limbs/fesquareDisplay.log84
-rw-r--r--src/Specific/solinas32_2e468m17_18limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e468m17_18limbs/fesub.c57
-rw-r--r--src/Specific/solinas32_2e468m17_18limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e468m17_18limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e468m17_18limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e468m17_18limbs/freeze.c94
-rw-r--r--src/Specific/solinas32_2e468m17_18limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e468m17_18limbs/freezeDisplay.log62
-rw-r--r--src/Specific/solinas32_2e468m17_18limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e468m17_18limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e468m17_19limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e468m17_19limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e468m17_19limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e468m17_19limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e468m17_19limbs/feadd.c60
-rw-r--r--src/Specific/solinas32_2e468m17_19limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e468m17_19limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e468m17_19limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e468m17_19limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e468m17_19limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e468m17_19limbs/femul.c141
-rw-r--r--src/Specific/solinas32_2e468m17_19limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e468m17_19limbs/femulDisplay.log88
-rw-r--r--src/Specific/solinas32_2e468m17_19limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e468m17_19limbs/fesquare.c122
-rw-r--r--src/Specific/solinas32_2e468m17_19limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e468m17_19limbs/fesquareDisplay.log88
-rw-r--r--src/Specific/solinas32_2e468m17_19limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e468m17_19limbs/fesub.c60
-rw-r--r--src/Specific/solinas32_2e468m17_19limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e468m17_19limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e468m17_19limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e468m17_19limbs/freeze.c99
-rw-r--r--src/Specific/solinas32_2e468m17_19limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e468m17_19limbs/freezeDisplay.log65
-rw-r--r--src/Specific/solinas32_2e468m17_19limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e468m17_19limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_18limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_18limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e480m2e240m1_18limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e480m2e240m1_18limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_18limbs/feadd.c57
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_18limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_18limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_18limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_18limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_18limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_18limbs/femul.c161
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_18limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_18limbs/femulDisplay.log111
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_18limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_18limbs/fesquare.c143
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_18limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_18limbs/fesquareDisplay.log111
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_18limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_18limbs/fesub.c57
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_18limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_18limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_18limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_18limbs/freeze.c94
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_18limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_18limbs/freezeDisplay.log62
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_18limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e480m2e240m1_18limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_20limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_20limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e480m2e240m1_20limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e480m2e240m1_20limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_20limbs/feadd.c63
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_20limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_20limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_20limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_20limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_20limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_20limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_20limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_20limbs/fesquare.c157
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_20limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_20limbs/fesquareDisplay.log121
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_20limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_20limbs/fesub.c63
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_20limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_20limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_20limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_20limbs/freeze.c104
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_20limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_20limbs/freezeDisplay.log68
-rw-r--r--src/Specific/solinas32_2e480m2e240m1_20limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e480m2e240m1_20limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e488m17_19limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e488m17_19limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e488m17_19limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e488m17_19limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e488m17_19limbs/feadd.c60
-rw-r--r--src/Specific/solinas32_2e488m17_19limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e488m17_19limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e488m17_19limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e488m17_19limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e488m17_19limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e488m17_19limbs/femul.c141
-rw-r--r--src/Specific/solinas32_2e488m17_19limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e488m17_19limbs/femulDisplay.log88
-rw-r--r--src/Specific/solinas32_2e488m17_19limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e488m17_19limbs/fesquare.c122
-rw-r--r--src/Specific/solinas32_2e488m17_19limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e488m17_19limbs/fesquareDisplay.log88
-rw-r--r--src/Specific/solinas32_2e488m17_19limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e488m17_19limbs/fesub.c60
-rw-r--r--src/Specific/solinas32_2e488m17_19limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e488m17_19limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e488m17_19limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e488m17_19limbs/freeze.c99
-rw-r--r--src/Specific/solinas32_2e488m17_19limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e488m17_19limbs/freezeDisplay.log65
-rw-r--r--src/Specific/solinas32_2e488m17_19limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e488m17_19limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e488m17_20limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e488m17_20limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e488m17_20limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e488m17_20limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e488m17_20limbs/feadd.c63
-rw-r--r--src/Specific/solinas32_2e488m17_20limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e488m17_20limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e488m17_20limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e488m17_20limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e488m17_20limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e488m17_20limbs/femul.c148
-rw-r--r--src/Specific/solinas32_2e488m17_20limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e488m17_20limbs/femulDisplay.log92
-rw-r--r--src/Specific/solinas32_2e488m17_20limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e488m17_20limbs/fesquare.c128
-rw-r--r--src/Specific/solinas32_2e488m17_20limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e488m17_20limbs/fesquareDisplay.log92
-rw-r--r--src/Specific/solinas32_2e488m17_20limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e488m17_20limbs/fesub.c63
-rw-r--r--src/Specific/solinas32_2e488m17_20limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e488m17_20limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e488m17_20limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e488m17_20limbs/freeze.c104
-rw-r--r--src/Specific/solinas32_2e488m17_20limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e488m17_20limbs/freezeDisplay.log68
-rw-r--r--src/Specific/solinas32_2e488m17_20limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e488m17_20limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e489m21_19limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e489m21_19limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e489m21_19limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e489m21_19limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e489m21_19limbs/feadd.c60
-rw-r--r--src/Specific/solinas32_2e489m21_19limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e489m21_19limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e489m21_19limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e489m21_19limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e489m21_19limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e489m21_19limbs/femul.c141
-rw-r--r--src/Specific/solinas32_2e489m21_19limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e489m21_19limbs/femulDisplay.log88
-rw-r--r--src/Specific/solinas32_2e489m21_19limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e489m21_19limbs/fesquare.c122
-rw-r--r--src/Specific/solinas32_2e489m21_19limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e489m21_19limbs/fesquareDisplay.log88
-rw-r--r--src/Specific/solinas32_2e489m21_19limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e489m21_19limbs/fesub.c60
-rw-r--r--src/Specific/solinas32_2e489m21_19limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e489m21_19limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e489m21_19limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e489m21_19limbs/freeze.c99
-rw-r--r--src/Specific/solinas32_2e489m21_19limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e489m21_19limbs/freezeDisplay.log65
-rw-r--r--src/Specific/solinas32_2e489m21_19limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e489m21_19limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e489m21_20limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e489m21_20limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e489m21_20limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e489m21_20limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e489m21_20limbs/feadd.c63
-rw-r--r--src/Specific/solinas32_2e489m21_20limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e489m21_20limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e489m21_20limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e489m21_20limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e489m21_20limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e489m21_20limbs/femul.c148
-rw-r--r--src/Specific/solinas32_2e489m21_20limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e489m21_20limbs/femulDisplay.log92
-rw-r--r--src/Specific/solinas32_2e489m21_20limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e489m21_20limbs/fesquare.c128
-rw-r--r--src/Specific/solinas32_2e489m21_20limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e489m21_20limbs/fesquareDisplay.log92
-rw-r--r--src/Specific/solinas32_2e489m21_20limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e489m21_20limbs/fesub.c63
-rw-r--r--src/Specific/solinas32_2e489m21_20limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e489m21_20limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e489m21_20limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e489m21_20limbs/freeze.c104
-rw-r--r--src/Specific/solinas32_2e489m21_20limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e489m21_20limbs/freezeDisplay.log68
-rw-r--r--src/Specific/solinas32_2e489m21_20limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e489m21_20limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e495m31_20limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e495m31_20limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e495m31_20limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e495m31_20limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e495m31_20limbs/feadd.c63
-rw-r--r--src/Specific/solinas32_2e495m31_20limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e495m31_20limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e495m31_20limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e495m31_20limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e495m31_20limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e495m31_20limbs/femul.c148
-rw-r--r--src/Specific/solinas32_2e495m31_20limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e495m31_20limbs/femulDisplay.log92
-rw-r--r--src/Specific/solinas32_2e495m31_20limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e495m31_20limbs/fesquare.c128
-rw-r--r--src/Specific/solinas32_2e495m31_20limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e495m31_20limbs/fesquareDisplay.log92
-rw-r--r--src/Specific/solinas32_2e495m31_20limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e495m31_20limbs/fesub.c63
-rw-r--r--src/Specific/solinas32_2e495m31_20limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e495m31_20limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e495m31_20limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e495m31_20limbs/freeze.c104
-rw-r--r--src/Specific/solinas32_2e495m31_20limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e495m31_20limbs/freezeDisplay.log68
-rw-r--r--src/Specific/solinas32_2e495m31_20limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e495m31_20limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e495m31_21limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e495m31_21limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e495m31_21limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e495m31_21limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e495m31_21limbs/feadd.c66
-rw-r--r--src/Specific/solinas32_2e495m31_21limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e495m31_21limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e495m31_21limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e495m31_21limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e495m31_21limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e495m31_21limbs/femul.c155
-rw-r--r--src/Specific/solinas32_2e495m31_21limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e495m31_21limbs/femulDisplay.log96
-rw-r--r--src/Specific/solinas32_2e495m31_21limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e495m31_21limbs/fesquare.c134
-rw-r--r--src/Specific/solinas32_2e495m31_21limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e495m31_21limbs/fesquareDisplay.log96
-rw-r--r--src/Specific/solinas32_2e495m31_21limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e495m31_21limbs/fesub.c66
-rw-r--r--src/Specific/solinas32_2e495m31_21limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e495m31_21limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e495m31_21limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e495m31_21limbs/freeze.c109
-rw-r--r--src/Specific/solinas32_2e495m31_21limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e495m31_21limbs/freezeDisplay.log71
-rw-r--r--src/Specific/solinas32_2e495m31_21limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e495m31_21limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e511m187_22limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e511m187_22limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e511m187_22limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e511m187_22limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e511m187_22limbs/feadd.c69
-rw-r--r--src/Specific/solinas32_2e511m187_22limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e511m187_22limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e511m187_22limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e511m187_22limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e511m187_22limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e511m187_22limbs/femul.c162
-rw-r--r--src/Specific/solinas32_2e511m187_22limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e511m187_22limbs/femulDisplay.log100
-rw-r--r--src/Specific/solinas32_2e511m187_22limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e511m187_22limbs/fesquare.c140
-rw-r--r--src/Specific/solinas32_2e511m187_22limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e511m187_22limbs/fesquareDisplay.log100
-rw-r--r--src/Specific/solinas32_2e511m187_22limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e511m187_22limbs/fesub.c69
-rw-r--r--src/Specific/solinas32_2e511m187_22limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e511m187_22limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e511m187_22limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e511m187_22limbs/freeze.c114
-rw-r--r--src/Specific/solinas32_2e511m187_22limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e511m187_22limbs/freezeDisplay.log74
-rw-r--r--src/Specific/solinas32_2e511m187_22limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e511m187_22limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e511m187_23limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e511m187_23limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e511m187_23limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e511m187_23limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e511m187_23limbs/feadd.c72
-rw-r--r--src/Specific/solinas32_2e511m187_23limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e511m187_23limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e511m187_23limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e511m187_23limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e511m187_23limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e511m187_23limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e511m187_23limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e511m187_23limbs/fesquare.c146
-rw-r--r--src/Specific/solinas32_2e511m187_23limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e511m187_23limbs/fesquareDisplay.log104
-rw-r--r--src/Specific/solinas32_2e511m187_23limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e511m187_23limbs/fesub.c72
-rw-r--r--src/Specific/solinas32_2e511m187_23limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e511m187_23limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e511m187_23limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e511m187_23limbs/freeze.c119
-rw-r--r--src/Specific/solinas32_2e511m187_23limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e511m187_23limbs/freezeDisplay.log77
-rw-r--r--src/Specific/solinas32_2e511m187_23limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e511m187_23limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e511m481_23limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e511m481_23limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e511m481_23limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e511m481_23limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e511m481_23limbs/feadd.c72
-rw-r--r--src/Specific/solinas32_2e511m481_23limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e511m481_23limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e511m481_23limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e511m481_23limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e511m481_23limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e511m481_23limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e511m481_23limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e511m481_23limbs/fesquare.c146
-rw-r--r--src/Specific/solinas32_2e511m481_23limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e511m481_23limbs/fesquareDisplay.log104
-rw-r--r--src/Specific/solinas32_2e511m481_23limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e511m481_23limbs/fesub.c72
-rw-r--r--src/Specific/solinas32_2e511m481_23limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e511m481_23limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e511m481_23limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e511m481_23limbs/freeze.c119
-rw-r--r--src/Specific/solinas32_2e511m481_23limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e511m481_23limbs/freezeDisplay.log77
-rw-r--r--src/Specific/solinas32_2e511m481_23limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e511m481_23limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e511m481_24limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e511m481_24limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e511m481_24limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e511m481_24limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e511m481_24limbs/feadd.c75
-rw-r--r--src/Specific/solinas32_2e511m481_24limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e511m481_24limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e511m481_24limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e511m481_24limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e511m481_24limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e511m481_24limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e511m481_24limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e511m481_24limbs/fesquare.c152
-rw-r--r--src/Specific/solinas32_2e511m481_24limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e511m481_24limbs/fesquareDisplay.log108
-rw-r--r--src/Specific/solinas32_2e511m481_24limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e511m481_24limbs/fesub.c75
-rw-r--r--src/Specific/solinas32_2e511m481_24limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e511m481_24limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e511m481_24limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e511m481_24limbs/freeze.c124
-rw-r--r--src/Specific/solinas32_2e511m481_24limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e511m481_24limbs/freezeDisplay.log80
-rw-r--r--src/Specific/solinas32_2e511m481_24limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e511m481_24limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e512m569_24limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e512m569_24limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e512m569_24limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e512m569_24limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e512m569_24limbs/feadd.c75
-rw-r--r--src/Specific/solinas32_2e512m569_24limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e512m569_24limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e512m569_24limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e512m569_24limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e512m569_24limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e512m569_24limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e512m569_24limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e512m569_24limbs/fesquare.c152
-rw-r--r--src/Specific/solinas32_2e512m569_24limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e512m569_24limbs/fesquareDisplay.log108
-rw-r--r--src/Specific/solinas32_2e512m569_24limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e512m569_24limbs/fesub.c75
-rw-r--r--src/Specific/solinas32_2e512m569_24limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e512m569_24limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e512m569_24limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e512m569_24limbs/freeze.c124
-rw-r--r--src/Specific/solinas32_2e512m569_24limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e512m569_24limbs/freezeDisplay.log80
-rw-r--r--src/Specific/solinas32_2e512m569_24limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e512m569_24limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e512m569_25limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e512m569_25limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e512m569_25limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e512m569_25limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e512m569_25limbs/feadd.c78
-rw-r--r--src/Specific/solinas32_2e512m569_25limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e512m569_25limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e512m569_25limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e512m569_25limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e512m569_25limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e512m569_25limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e512m569_25limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e512m569_25limbs/fesquare.c158
-rw-r--r--src/Specific/solinas32_2e512m569_25limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e512m569_25limbs/fesquareDisplay.log112
-rw-r--r--src/Specific/solinas32_2e512m569_25limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e512m569_25limbs/fesub.c78
-rw-r--r--src/Specific/solinas32_2e512m569_25limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e512m569_25limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e512m569_25limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e512m569_25limbs/freeze.c129
-rw-r--r--src/Specific/solinas32_2e512m569_25limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e512m569_25limbs/freezeDisplay.log83
-rw-r--r--src/Specific/solinas32_2e512m569_25limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e512m569_25limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e521m1_19limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e521m1_19limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e521m1_19limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e521m1_19limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e521m1_19limbs/feadd.c60
-rw-r--r--src/Specific/solinas32_2e521m1_19limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e521m1_19limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e521m1_19limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e521m1_19limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e521m1_19limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e521m1_19limbs/femul.c141
-rw-r--r--src/Specific/solinas32_2e521m1_19limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e521m1_19limbs/femulDisplay.log88
-rw-r--r--src/Specific/solinas32_2e521m1_19limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e521m1_19limbs/fesquare.c122
-rw-r--r--src/Specific/solinas32_2e521m1_19limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e521m1_19limbs/fesquareDisplay.log88
-rw-r--r--src/Specific/solinas32_2e521m1_19limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e521m1_19limbs/fesub.c60
-rw-r--r--src/Specific/solinas32_2e521m1_19limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e521m1_19limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e521m1_19limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e521m1_19limbs/freeze.c99
-rw-r--r--src/Specific/solinas32_2e521m1_19limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e521m1_19limbs/freezeDisplay.log65
-rw-r--r--src/Specific/solinas32_2e521m1_19limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e521m1_19limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas32_2e521m1_20limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas32_2e521m1_20limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas32_2e521m1_20limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas32_2e521m1_20limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas32_2e521m1_20limbs/feadd.c63
-rw-r--r--src/Specific/solinas32_2e521m1_20limbs/feadd.v14
-rw-r--r--src/Specific/solinas32_2e521m1_20limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas32_2e521m1_20limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas32_2e521m1_20limbs/fecarry.v14
-rw-r--r--src/Specific/solinas32_2e521m1_20limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas32_2e521m1_20limbs/femul.c148
-rw-r--r--src/Specific/solinas32_2e521m1_20limbs/femul.v14
-rw-r--r--src/Specific/solinas32_2e521m1_20limbs/femulDisplay.log92
-rw-r--r--src/Specific/solinas32_2e521m1_20limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas32_2e521m1_20limbs/fesquare.c128
-rw-r--r--src/Specific/solinas32_2e521m1_20limbs/fesquare.v14
-rw-r--r--src/Specific/solinas32_2e521m1_20limbs/fesquareDisplay.log92
-rw-r--r--src/Specific/solinas32_2e521m1_20limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas32_2e521m1_20limbs/fesub.c63
-rw-r--r--src/Specific/solinas32_2e521m1_20limbs/fesub.v14
-rw-r--r--src/Specific/solinas32_2e521m1_20limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas32_2e521m1_20limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas32_2e521m1_20limbs/freeze.c104
-rw-r--r--src/Specific/solinas32_2e521m1_20limbs/freeze.v14
-rw-r--r--src/Specific/solinas32_2e521m1_20limbs/freezeDisplay.log68
-rw-r--r--src/Specific/solinas32_2e521m1_20limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas32_2e521m1_20limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e127m1_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e127m1_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e127m1_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e127m1_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e127m1_3limbs/feadd.c12
-rw-r--r--src/Specific/solinas64_2e127m1_3limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e127m1_3limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e127m1_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e127m1_3limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e127m1_3limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e127m1_3limbs/femul.c29
-rw-r--r--src/Specific/solinas64_2e127m1_3limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e127m1_3limbs/femulDisplay.log24
-rw-r--r--src/Specific/solinas64_2e127m1_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e127m1_3limbs/fesquare.c26
-rw-r--r--src/Specific/solinas64_2e127m1_3limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e127m1_3limbs/fesquareDisplay.log24
-rw-r--r--src/Specific/solinas64_2e127m1_3limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e127m1_3limbs/fesub.c12
-rw-r--r--src/Specific/solinas64_2e127m1_3limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e127m1_3limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e127m1_3limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e127m1_3limbs/freeze.c19
-rw-r--r--src/Specific/solinas64_2e127m1_3limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e127m1_3limbs/freezeDisplay.log17
-rw-r--r--src/Specific/solinas64_2e127m1_3limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e127m1_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e129m25_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e129m25_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e129m25_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e129m25_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e129m25_3limbs/feadd.c12
-rw-r--r--src/Specific/solinas64_2e129m25_3limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e129m25_3limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e129m25_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e129m25_3limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e129m25_3limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e129m25_3limbs/femul.c29
-rw-r--r--src/Specific/solinas64_2e129m25_3limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e129m25_3limbs/femulDisplay.log24
-rw-r--r--src/Specific/solinas64_2e129m25_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e129m25_3limbs/fesquare.c26
-rw-r--r--src/Specific/solinas64_2e129m25_3limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e129m25_3limbs/fesquareDisplay.log24
-rw-r--r--src/Specific/solinas64_2e129m25_3limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e129m25_3limbs/fesub.c12
-rw-r--r--src/Specific/solinas64_2e129m25_3limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e129m25_3limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e129m25_3limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e129m25_3limbs/freeze.c19
-rw-r--r--src/Specific/solinas64_2e129m25_3limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e129m25_3limbs/freezeDisplay.log17
-rw-r--r--src/Specific/solinas64_2e129m25_3limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e129m25_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e129m25_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e129m25_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e129m25_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e129m25_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e129m25_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e129m25_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e129m25_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e129m25_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e129m25_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e129m25_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e129m25_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e129m25_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e129m25_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e129m25_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e129m25_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e129m25_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e129m25_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e129m25_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e129m25_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e129m25_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e129m25_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e129m25_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e129m25_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e129m25_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e129m25_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e129m25_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e129m25_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e130m5_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e130m5_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e130m5_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e130m5_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e130m5_3limbs/feadd.c12
-rw-r--r--src/Specific/solinas64_2e130m5_3limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e130m5_3limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e130m5_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e130m5_3limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e130m5_3limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e130m5_3limbs/femul.c29
-rw-r--r--src/Specific/solinas64_2e130m5_3limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e130m5_3limbs/femulDisplay.log24
-rw-r--r--src/Specific/solinas64_2e130m5_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e130m5_3limbs/fesquare.c26
-rw-r--r--src/Specific/solinas64_2e130m5_3limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e130m5_3limbs/fesquareDisplay.log24
-rw-r--r--src/Specific/solinas64_2e130m5_3limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e130m5_3limbs/fesub.c12
-rw-r--r--src/Specific/solinas64_2e130m5_3limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e130m5_3limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e130m5_3limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e130m5_3limbs/freeze.c19
-rw-r--r--src/Specific/solinas64_2e130m5_3limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e130m5_3limbs/freezeDisplay.log17
-rw-r--r--src/Specific/solinas64_2e130m5_3limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e130m5_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e130m5_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e130m5_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e130m5_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e130m5_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e130m5_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e130m5_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e130m5_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e130m5_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e130m5_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e130m5_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e130m5_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e130m5_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e130m5_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e130m5_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e130m5_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e130m5_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e130m5_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e130m5_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e130m5_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e130m5_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e130m5_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e130m5_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e130m5_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e130m5_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e130m5_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e130m5_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e130m5_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e137m13_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e137m13_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e137m13_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e137m13_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e137m13_3limbs/feadd.c12
-rw-r--r--src/Specific/solinas64_2e137m13_3limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e137m13_3limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e137m13_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e137m13_3limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e137m13_3limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e137m13_3limbs/femul.c29
-rw-r--r--src/Specific/solinas64_2e137m13_3limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e137m13_3limbs/femulDisplay.log24
-rw-r--r--src/Specific/solinas64_2e137m13_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e137m13_3limbs/fesquare.c26
-rw-r--r--src/Specific/solinas64_2e137m13_3limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e137m13_3limbs/fesquareDisplay.log24
-rw-r--r--src/Specific/solinas64_2e137m13_3limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e137m13_3limbs/fesub.c12
-rw-r--r--src/Specific/solinas64_2e137m13_3limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e137m13_3limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e137m13_3limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e137m13_3limbs/freeze.c19
-rw-r--r--src/Specific/solinas64_2e137m13_3limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e137m13_3limbs/freezeDisplay.log17
-rw-r--r--src/Specific/solinas64_2e137m13_3limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e137m13_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e137m13_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e137m13_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e137m13_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e137m13_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e137m13_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e137m13_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e137m13_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e137m13_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e137m13_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e137m13_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e137m13_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e137m13_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e137m13_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e137m13_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e137m13_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e137m13_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e137m13_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e137m13_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e137m13_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e137m13_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e137m13_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e137m13_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e137m13_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e137m13_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e137m13_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e137m13_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e137m13_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e140m27_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e140m27_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e140m27_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e140m27_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e140m27_3limbs/feadd.c12
-rw-r--r--src/Specific/solinas64_2e140m27_3limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e140m27_3limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e140m27_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e140m27_3limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e140m27_3limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e140m27_3limbs/femul.c29
-rw-r--r--src/Specific/solinas64_2e140m27_3limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e140m27_3limbs/femulDisplay.log24
-rw-r--r--src/Specific/solinas64_2e140m27_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e140m27_3limbs/fesquare.c26
-rw-r--r--src/Specific/solinas64_2e140m27_3limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e140m27_3limbs/fesquareDisplay.log24
-rw-r--r--src/Specific/solinas64_2e140m27_3limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e140m27_3limbs/fesub.c12
-rw-r--r--src/Specific/solinas64_2e140m27_3limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e140m27_3limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e140m27_3limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e140m27_3limbs/freeze.c19
-rw-r--r--src/Specific/solinas64_2e140m27_3limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e140m27_3limbs/freezeDisplay.log17
-rw-r--r--src/Specific/solinas64_2e140m27_3limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e140m27_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e140m27_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e140m27_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e140m27_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e140m27_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e140m27_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e140m27_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e140m27_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e140m27_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e140m27_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e140m27_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e140m27_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e140m27_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e140m27_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e140m27_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e140m27_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e140m27_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e140m27_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e140m27_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e140m27_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e140m27_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e140m27_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e140m27_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e140m27_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e140m27_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e140m27_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e140m27_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e140m27_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e141m9_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e141m9_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e141m9_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e141m9_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e141m9_3limbs/feadd.c12
-rw-r--r--src/Specific/solinas64_2e141m9_3limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e141m9_3limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e141m9_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e141m9_3limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e141m9_3limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e141m9_3limbs/femul.c29
-rw-r--r--src/Specific/solinas64_2e141m9_3limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e141m9_3limbs/femulDisplay.log24
-rw-r--r--src/Specific/solinas64_2e141m9_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e141m9_3limbs/fesquare.c26
-rw-r--r--src/Specific/solinas64_2e141m9_3limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e141m9_3limbs/fesquareDisplay.log24
-rw-r--r--src/Specific/solinas64_2e141m9_3limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e141m9_3limbs/fesub.c12
-rw-r--r--src/Specific/solinas64_2e141m9_3limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e141m9_3limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e141m9_3limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e141m9_3limbs/freeze.c19
-rw-r--r--src/Specific/solinas64_2e141m9_3limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e141m9_3limbs/freezeDisplay.log17
-rw-r--r--src/Specific/solinas64_2e141m9_3limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e141m9_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e141m9_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e141m9_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e141m9_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e141m9_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e141m9_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e141m9_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e141m9_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e141m9_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e141m9_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e141m9_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e141m9_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e141m9_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e141m9_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e141m9_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e141m9_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e141m9_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e141m9_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e141m9_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e141m9_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e141m9_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e141m9_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e141m9_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e141m9_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e141m9_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e141m9_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e141m9_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e141m9_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e150m3_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e150m3_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e150m3_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e150m3_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e150m3_3limbs/feadd.c12
-rw-r--r--src/Specific/solinas64_2e150m3_3limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e150m3_3limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e150m3_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e150m3_3limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e150m3_3limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e150m3_3limbs/femul.c29
-rw-r--r--src/Specific/solinas64_2e150m3_3limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e150m3_3limbs/femulDisplay.log24
-rw-r--r--src/Specific/solinas64_2e150m3_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e150m3_3limbs/fesquare.c26
-rw-r--r--src/Specific/solinas64_2e150m3_3limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e150m3_3limbs/fesquareDisplay.log24
-rw-r--r--src/Specific/solinas64_2e150m3_3limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e150m3_3limbs/fesub.c12
-rw-r--r--src/Specific/solinas64_2e150m3_3limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e150m3_3limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e150m3_3limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e150m3_3limbs/freeze.c19
-rw-r--r--src/Specific/solinas64_2e150m3_3limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e150m3_3limbs/freezeDisplay.log17
-rw-r--r--src/Specific/solinas64_2e150m3_3limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e150m3_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e150m3_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e150m3_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e150m3_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e150m3_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e150m3_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e150m3_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e150m3_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e150m3_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e150m3_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e150m3_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e150m3_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e150m3_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e150m3_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e150m3_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e150m3_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e150m3_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e150m3_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e150m3_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e150m3_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e150m3_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e150m3_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e150m3_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e150m3_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e150m3_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e150m3_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e150m3_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e150m3_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e150m5_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e150m5_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e150m5_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e150m5_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e150m5_3limbs/feadd.c12
-rw-r--r--src/Specific/solinas64_2e150m5_3limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e150m5_3limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e150m5_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e150m5_3limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e150m5_3limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e150m5_3limbs/femul.c29
-rw-r--r--src/Specific/solinas64_2e150m5_3limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e150m5_3limbs/femulDisplay.log24
-rw-r--r--src/Specific/solinas64_2e150m5_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e150m5_3limbs/fesquare.c26
-rw-r--r--src/Specific/solinas64_2e150m5_3limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e150m5_3limbs/fesquareDisplay.log24
-rw-r--r--src/Specific/solinas64_2e150m5_3limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e150m5_3limbs/fesub.c12
-rw-r--r--src/Specific/solinas64_2e150m5_3limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e150m5_3limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e150m5_3limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e150m5_3limbs/freeze.c19
-rw-r--r--src/Specific/solinas64_2e150m5_3limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e150m5_3limbs/freezeDisplay.log17
-rw-r--r--src/Specific/solinas64_2e150m5_3limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e150m5_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e150m5_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e150m5_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e150m5_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e150m5_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e150m5_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e150m5_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e150m5_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e150m5_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e150m5_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e150m5_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e150m5_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e150m5_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e150m5_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e150m5_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e150m5_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e150m5_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e150m5_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e150m5_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e150m5_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e150m5_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e150m5_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e150m5_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e150m5_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e150m5_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e150m5_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e150m5_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e150m5_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e152m17_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e152m17_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e152m17_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e152m17_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e152m17_3limbs/feadd.c12
-rw-r--r--src/Specific/solinas64_2e152m17_3limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e152m17_3limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e152m17_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e152m17_3limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e152m17_3limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e152m17_3limbs/femul.c29
-rw-r--r--src/Specific/solinas64_2e152m17_3limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e152m17_3limbs/femulDisplay.log24
-rw-r--r--src/Specific/solinas64_2e152m17_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e152m17_3limbs/fesquare.c26
-rw-r--r--src/Specific/solinas64_2e152m17_3limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e152m17_3limbs/fesquareDisplay.log24
-rw-r--r--src/Specific/solinas64_2e152m17_3limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e152m17_3limbs/fesub.c12
-rw-r--r--src/Specific/solinas64_2e152m17_3limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e152m17_3limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e152m17_3limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e152m17_3limbs/freeze.c19
-rw-r--r--src/Specific/solinas64_2e152m17_3limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e152m17_3limbs/freezeDisplay.log17
-rw-r--r--src/Specific/solinas64_2e152m17_3limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e152m17_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e152m17_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e152m17_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e152m17_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e152m17_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e152m17_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e152m17_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e152m17_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e152m17_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e152m17_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e152m17_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e152m17_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e152m17_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e152m17_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e152m17_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e152m17_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e152m17_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e152m17_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e152m17_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e152m17_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e152m17_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e152m17_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e152m17_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e152m17_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e152m17_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e152m17_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e152m17_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e152m17_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e158m15_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e158m15_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e158m15_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e158m15_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e158m15_3limbs/feadd.c12
-rw-r--r--src/Specific/solinas64_2e158m15_3limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e158m15_3limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e158m15_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e158m15_3limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e158m15_3limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e158m15_3limbs/femul.c29
-rw-r--r--src/Specific/solinas64_2e158m15_3limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e158m15_3limbs/femulDisplay.log24
-rw-r--r--src/Specific/solinas64_2e158m15_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e158m15_3limbs/fesquare.c26
-rw-r--r--src/Specific/solinas64_2e158m15_3limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e158m15_3limbs/fesquareDisplay.log24
-rw-r--r--src/Specific/solinas64_2e158m15_3limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e158m15_3limbs/fesub.c12
-rw-r--r--src/Specific/solinas64_2e158m15_3limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e158m15_3limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e158m15_3limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e158m15_3limbs/freeze.c19
-rw-r--r--src/Specific/solinas64_2e158m15_3limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e158m15_3limbs/freezeDisplay.log17
-rw-r--r--src/Specific/solinas64_2e158m15_3limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e158m15_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e158m15_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e158m15_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e158m15_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e158m15_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e158m15_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e158m15_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e158m15_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e158m15_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e158m15_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e158m15_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e158m15_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e158m15_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e158m15_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e158m15_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e158m15_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e158m15_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e158m15_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e158m15_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e158m15_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e158m15_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e158m15_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e158m15_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e158m15_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e158m15_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e158m15_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e158m15_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e158m15_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e165m25_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e165m25_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e165m25_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e165m25_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e165m25_3limbs/feadd.c12
-rw-r--r--src/Specific/solinas64_2e165m25_3limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e165m25_3limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e165m25_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e165m25_3limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e165m25_3limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e165m25_3limbs/femul.c29
-rw-r--r--src/Specific/solinas64_2e165m25_3limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e165m25_3limbs/femulDisplay.log24
-rw-r--r--src/Specific/solinas64_2e165m25_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e165m25_3limbs/fesquare.c26
-rw-r--r--src/Specific/solinas64_2e165m25_3limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e165m25_3limbs/fesquareDisplay.log24
-rw-r--r--src/Specific/solinas64_2e165m25_3limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e165m25_3limbs/fesub.c12
-rw-r--r--src/Specific/solinas64_2e165m25_3limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e165m25_3limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e165m25_3limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e165m25_3limbs/freeze.c19
-rw-r--r--src/Specific/solinas64_2e165m25_3limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e165m25_3limbs/freezeDisplay.log17
-rw-r--r--src/Specific/solinas64_2e165m25_3limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e165m25_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e165m25_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e165m25_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e165m25_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e165m25_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e165m25_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e165m25_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e165m25_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e165m25_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e165m25_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e165m25_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e165m25_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e165m25_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e165m25_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e165m25_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e165m25_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e165m25_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e165m25_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e165m25_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e165m25_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e165m25_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e165m25_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e165m25_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e165m25_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e165m25_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e165m25_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e165m25_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e165m25_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e166m5_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e166m5_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e166m5_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e166m5_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e166m5_3limbs/feadd.c12
-rw-r--r--src/Specific/solinas64_2e166m5_3limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e166m5_3limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e166m5_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e166m5_3limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e166m5_3limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e166m5_3limbs/femul.c29
-rw-r--r--src/Specific/solinas64_2e166m5_3limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e166m5_3limbs/femulDisplay.log24
-rw-r--r--src/Specific/solinas64_2e166m5_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e166m5_3limbs/fesquare.c26
-rw-r--r--src/Specific/solinas64_2e166m5_3limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e166m5_3limbs/fesquareDisplay.log24
-rw-r--r--src/Specific/solinas64_2e166m5_3limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e166m5_3limbs/fesub.c12
-rw-r--r--src/Specific/solinas64_2e166m5_3limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e166m5_3limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e166m5_3limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e166m5_3limbs/freeze.c19
-rw-r--r--src/Specific/solinas64_2e166m5_3limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e166m5_3limbs/freezeDisplay.log17
-rw-r--r--src/Specific/solinas64_2e166m5_3limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e166m5_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e166m5_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e166m5_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e166m5_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e166m5_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e166m5_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e166m5_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e166m5_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e166m5_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e166m5_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e166m5_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e166m5_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e166m5_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e166m5_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e166m5_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e166m5_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e166m5_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e166m5_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e166m5_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e166m5_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e166m5_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e166m5_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e166m5_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e166m5_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e166m5_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e166m5_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e166m5_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e166m5_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e171m19_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e171m19_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e171m19_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e171m19_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e171m19_3limbs/feadd.c12
-rw-r--r--src/Specific/solinas64_2e171m19_3limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e171m19_3limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e171m19_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e171m19_3limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e171m19_3limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e171m19_3limbs/femul.c29
-rw-r--r--src/Specific/solinas64_2e171m19_3limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e171m19_3limbs/femulDisplay.log24
-rw-r--r--src/Specific/solinas64_2e171m19_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e171m19_3limbs/fesquare.c26
-rw-r--r--src/Specific/solinas64_2e171m19_3limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e171m19_3limbs/fesquareDisplay.log24
-rw-r--r--src/Specific/solinas64_2e171m19_3limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e171m19_3limbs/fesub.c12
-rw-r--r--src/Specific/solinas64_2e171m19_3limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e171m19_3limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e171m19_3limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e171m19_3limbs/freeze.c19
-rw-r--r--src/Specific/solinas64_2e171m19_3limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e171m19_3limbs/freezeDisplay.log17
-rw-r--r--src/Specific/solinas64_2e171m19_3limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e171m19_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e171m19_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e171m19_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e171m19_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e171m19_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e171m19_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e171m19_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e171m19_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e171m19_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e171m19_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e171m19_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e171m19_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e171m19_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e171m19_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e171m19_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e171m19_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e171m19_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e171m19_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e171m19_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e171m19_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e171m19_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e171m19_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e171m19_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e171m19_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e171m19_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e171m19_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e171m19_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e171m19_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e174m17_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e174m17_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e174m17_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e174m17_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e174m17_3limbs/feadd.c12
-rw-r--r--src/Specific/solinas64_2e174m17_3limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e174m17_3limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e174m17_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e174m17_3limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e174m17_3limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e174m17_3limbs/femul.c29
-rw-r--r--src/Specific/solinas64_2e174m17_3limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e174m17_3limbs/femulDisplay.log24
-rw-r--r--src/Specific/solinas64_2e174m17_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e174m17_3limbs/fesquare.c26
-rw-r--r--src/Specific/solinas64_2e174m17_3limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e174m17_3limbs/fesquareDisplay.log24
-rw-r--r--src/Specific/solinas64_2e174m17_3limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e174m17_3limbs/fesub.c12
-rw-r--r--src/Specific/solinas64_2e174m17_3limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e174m17_3limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e174m17_3limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e174m17_3limbs/freeze.c19
-rw-r--r--src/Specific/solinas64_2e174m17_3limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e174m17_3limbs/freezeDisplay.log17
-rw-r--r--src/Specific/solinas64_2e174m17_3limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e174m17_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e174m17_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e174m17_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e174m17_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e174m17_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e174m17_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e174m17_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e174m17_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e174m17_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e174m17_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e174m17_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e174m17_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e174m17_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e174m17_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e174m17_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e174m17_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e174m17_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e174m17_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e174m17_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e174m17_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e174m17_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e174m17_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e174m17_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e174m17_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e174m17_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e174m17_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e174m17_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e174m17_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e174m3_3limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e174m3_3limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e174m3_3limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e174m3_3limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e174m3_3limbs/feadd.c12
-rw-r--r--src/Specific/solinas64_2e174m3_3limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e174m3_3limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e174m3_3limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e174m3_3limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e174m3_3limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e174m3_3limbs/femul.c29
-rw-r--r--src/Specific/solinas64_2e174m3_3limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e174m3_3limbs/femulDisplay.log24
-rw-r--r--src/Specific/solinas64_2e174m3_3limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e174m3_3limbs/fesquare.c26
-rw-r--r--src/Specific/solinas64_2e174m3_3limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e174m3_3limbs/fesquareDisplay.log24
-rw-r--r--src/Specific/solinas64_2e174m3_3limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e174m3_3limbs/fesub.c12
-rw-r--r--src/Specific/solinas64_2e174m3_3limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e174m3_3limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e174m3_3limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e174m3_3limbs/freeze.c19
-rw-r--r--src/Specific/solinas64_2e174m3_3limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e174m3_3limbs/freezeDisplay.log17
-rw-r--r--src/Specific/solinas64_2e174m3_3limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e174m3_3limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e174m3_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e174m3_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e174m3_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e174m3_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e174m3_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e174m3_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e174m3_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e174m3_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e174m3_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e174m3_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e174m3_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e174m3_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e174m3_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e174m3_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e174m3_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e174m3_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e174m3_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e174m3_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e174m3_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e174m3_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e174m3_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e174m3_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e174m3_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e174m3_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e174m3_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e174m3_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e174m3_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e189m25_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e189m25_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e189m25_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e189m25_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e189m25_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e189m25_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e189m25_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e189m25_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e189m25_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e189m25_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e189m25_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e189m25_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e189m25_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e189m25_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e189m25_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e189m25_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e189m25_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e189m25_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e189m25_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e189m25_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e189m25_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e189m25_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e189m25_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e189m25_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e189m25_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e189m25_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e189m25_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e189m25_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e189m25_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e189m25_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e189m25_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e189m25_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e189m25_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e189m25_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e189m25_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e189m25_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e189m25_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e189m25_5limbs/femul.c43
-rw-r--r--src/Specific/solinas64_2e189m25_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e189m25_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas64_2e189m25_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e189m25_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas64_2e189m25_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e189m25_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas64_2e189m25_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e189m25_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas64_2e189m25_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e189m25_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e189m25_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e189m25_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas64_2e189m25_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e189m25_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e189m25_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e189m25_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e190m11_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e190m11_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e190m11_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e190m11_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e190m11_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e190m11_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e190m11_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e190m11_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e190m11_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e190m11_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e190m11_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e190m11_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e190m11_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e190m11_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e190m11_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e190m11_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e190m11_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e190m11_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e190m11_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e190m11_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e190m11_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e190m11_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e190m11_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e190m11_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e190m11_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e190m11_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e190m11_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e190m11_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e190m11_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e190m11_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e190m11_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e190m11_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e190m11_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e190m11_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e190m11_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e190m11_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e190m11_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e190m11_5limbs/femul.c43
-rw-r--r--src/Specific/solinas64_2e190m11_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e190m11_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas64_2e190m11_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e190m11_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas64_2e190m11_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e190m11_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas64_2e190m11_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e190m11_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas64_2e190m11_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e190m11_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e190m11_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e190m11_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas64_2e190m11_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e190m11_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e190m11_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e190m11_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e191m19_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e191m19_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e191m19_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e191m19_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e191m19_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e191m19_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e191m19_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e191m19_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e191m19_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e191m19_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e191m19_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e191m19_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e191m19_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e191m19_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e191m19_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e191m19_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e191m19_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e191m19_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e191m19_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e191m19_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e191m19_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e191m19_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e191m19_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e191m19_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e191m19_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e191m19_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e191m19_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e191m19_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e191m19_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e191m19_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e191m19_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e191m19_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e191m19_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e191m19_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e191m19_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e191m19_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e191m19_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e191m19_5limbs/femul.c43
-rw-r--r--src/Specific/solinas64_2e191m19_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e191m19_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas64_2e191m19_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e191m19_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas64_2e191m19_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e191m19_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas64_2e191m19_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e191m19_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas64_2e191m19_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e191m19_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e191m19_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e191m19_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas64_2e191m19_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e191m19_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e191m19_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e191m19_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e192m2e64m1_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e192m2e64m1_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_4limbs/femul.c47
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_4limbs/femulDisplay.log39
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_4limbs/fesquare.c43
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_4limbs/fesquareDisplay.log39
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e192m2e64m1_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e192m2e64m1_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e192m2e64m1_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_5limbs/femul.c54
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_5limbs/femulDisplay.log43
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_5limbs/fesquare.c49
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_5limbs/fesquareDisplay.log43
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e192m2e64m1_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e192m2e64m1_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e194m33_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e194m33_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e194m33_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e194m33_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e194m33_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e194m33_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e194m33_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e194m33_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e194m33_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e194m33_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e194m33_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e194m33_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e194m33_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e194m33_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e194m33_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e194m33_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e194m33_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e194m33_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e194m33_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e194m33_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e194m33_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e194m33_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e194m33_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e194m33_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e194m33_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e194m33_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e194m33_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e194m33_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e194m33_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e194m33_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e194m33_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e194m33_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e194m33_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e194m33_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e194m33_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e194m33_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e194m33_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e194m33_5limbs/femul.c43
-rw-r--r--src/Specific/solinas64_2e194m33_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e194m33_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas64_2e194m33_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e194m33_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas64_2e194m33_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e194m33_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas64_2e194m33_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e194m33_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas64_2e194m33_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e194m33_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e194m33_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e194m33_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas64_2e194m33_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e194m33_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e194m33_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e194m33_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e196m15_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e196m15_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e196m15_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e196m15_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e196m15_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e196m15_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e196m15_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e196m15_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e196m15_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e196m15_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e196m15_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e196m15_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e196m15_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e196m15_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e196m15_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e196m15_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e196m15_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e196m15_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e196m15_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e196m15_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e196m15_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e196m15_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e196m15_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e196m15_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e196m15_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e196m15_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e196m15_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e196m15_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e196m15_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e196m15_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e196m15_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e196m15_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e196m15_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e196m15_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e196m15_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e196m15_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e196m15_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e196m15_5limbs/femul.c43
-rw-r--r--src/Specific/solinas64_2e196m15_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e196m15_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas64_2e196m15_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e196m15_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas64_2e196m15_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e196m15_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas64_2e196m15_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e196m15_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas64_2e196m15_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e196m15_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e196m15_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e196m15_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas64_2e196m15_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e196m15_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e196m15_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e196m15_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e198m17_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e198m17_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e198m17_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e198m17_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e198m17_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e198m17_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e198m17_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e198m17_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e198m17_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e198m17_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e198m17_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e198m17_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e198m17_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e198m17_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e198m17_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e198m17_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e198m17_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e198m17_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e198m17_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e198m17_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e198m17_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e198m17_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e198m17_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e198m17_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e198m17_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e198m17_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e198m17_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e198m17_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e198m17_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e198m17_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e198m17_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e198m17_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e198m17_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e198m17_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e198m17_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e198m17_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e198m17_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e198m17_5limbs/femul.c43
-rw-r--r--src/Specific/solinas64_2e198m17_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e198m17_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas64_2e198m17_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e198m17_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas64_2e198m17_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e198m17_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas64_2e198m17_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e198m17_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas64_2e198m17_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e198m17_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e198m17_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e198m17_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas64_2e198m17_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e198m17_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e198m17_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e198m17_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e206m5_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e206m5_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e206m5_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e206m5_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e206m5_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e206m5_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e206m5_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e206m5_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e206m5_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e206m5_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e206m5_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e206m5_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e206m5_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e206m5_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e206m5_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e206m5_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e206m5_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e206m5_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e206m5_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e206m5_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e206m5_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e206m5_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e206m5_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e206m5_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e206m5_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e206m5_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e206m5_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e206m5_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e206m5_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e206m5_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e206m5_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e206m5_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e206m5_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e206m5_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e206m5_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e206m5_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e206m5_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e206m5_5limbs/femul.c43
-rw-r--r--src/Specific/solinas64_2e206m5_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e206m5_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas64_2e206m5_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e206m5_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas64_2e206m5_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e206m5_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas64_2e206m5_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e206m5_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas64_2e206m5_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e206m5_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e206m5_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e206m5_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas64_2e206m5_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e206m5_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e206m5_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e206m5_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e212m29_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e212m29_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e212m29_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e212m29_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e212m29_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e212m29_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e212m29_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e212m29_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e212m29_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e212m29_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e212m29_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e212m29_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e212m29_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e212m29_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e212m29_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e212m29_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e212m29_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e212m29_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e212m29_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e212m29_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e212m29_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e212m29_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e212m29_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e212m29_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e212m29_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e212m29_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e212m29_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e212m29_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e212m29_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e212m29_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e212m29_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e212m29_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e212m29_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e212m29_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e212m29_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e212m29_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e212m29_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e212m29_5limbs/femul.c43
-rw-r--r--src/Specific/solinas64_2e212m29_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e212m29_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas64_2e212m29_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e212m29_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas64_2e212m29_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e212m29_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas64_2e212m29_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e212m29_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas64_2e212m29_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e212m29_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e212m29_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e212m29_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas64_2e212m29_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e212m29_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e212m29_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e212m29_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e213m3_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e213m3_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e213m3_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e213m3_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e213m3_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e213m3_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e213m3_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e213m3_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e213m3_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e213m3_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e213m3_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e213m3_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e213m3_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e213m3_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e213m3_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e213m3_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e213m3_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e213m3_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e213m3_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e213m3_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e213m3_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e213m3_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e213m3_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e213m3_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e213m3_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e213m3_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e213m3_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e213m3_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e213m3_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e213m3_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e213m3_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e213m3_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e213m3_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e213m3_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e213m3_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e213m3_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e213m3_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e213m3_5limbs/femul.c43
-rw-r--r--src/Specific/solinas64_2e213m3_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e213m3_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas64_2e213m3_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e213m3_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas64_2e213m3_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e213m3_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas64_2e213m3_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e213m3_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas64_2e213m3_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e213m3_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e213m3_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e213m3_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas64_2e213m3_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e213m3_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e213m3_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e213m3_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e216m2e108m1_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e216m2e108m1_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_4limbs/femul.c49
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_4limbs/femulDisplay.log41
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_4limbs/fesquare.c45
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_4limbs/fesquareDisplay.log41
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e216m2e108m1_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e216m2e108m1_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e216m2e108m1_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e216m2e108m1_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e216m2e108m1_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e221m3_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e221m3_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e221m3_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e221m3_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e221m3_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e221m3_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e221m3_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e221m3_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e221m3_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e221m3_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e221m3_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e221m3_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e221m3_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e221m3_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e221m3_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e221m3_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e221m3_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e221m3_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e221m3_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e221m3_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e221m3_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e221m3_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e221m3_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e221m3_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e221m3_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e221m3_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e221m3_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e221m3_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e221m3_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e221m3_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e221m3_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e221m3_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e221m3_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e221m3_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e221m3_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e221m3_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e221m3_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e221m3_5limbs/femul.c43
-rw-r--r--src/Specific/solinas64_2e221m3_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e221m3_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas64_2e221m3_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e221m3_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas64_2e221m3_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e221m3_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas64_2e221m3_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e221m3_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas64_2e221m3_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e221m3_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e221m3_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e221m3_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas64_2e221m3_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e221m3_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e221m3_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e221m3_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e222m117_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e222m117_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e222m117_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e222m117_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e222m117_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e222m117_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e222m117_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e222m117_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e222m117_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e222m117_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e222m117_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e222m117_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e222m117_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e222m117_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e222m117_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e222m117_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e222m117_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e222m117_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e222m117_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e222m117_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e222m117_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e222m117_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e222m117_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e222m117_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e222m117_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e222m117_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e222m117_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e222m117_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e222m117_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e222m117_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e222m117_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e222m117_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e222m117_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e222m117_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e222m117_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e222m117_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e222m117_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e222m117_5limbs/femul.c43
-rw-r--r--src/Specific/solinas64_2e222m117_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e222m117_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas64_2e222m117_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e222m117_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas64_2e222m117_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e222m117_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas64_2e222m117_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e222m117_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas64_2e222m117_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e222m117_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e222m117_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e222m117_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas64_2e222m117_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e222m117_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e222m117_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e222m117_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e224m2e96p1_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e224m2e96p1_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_5limbs/freeze.c28
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_5limbs/freezeDisplay.log22
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e224m2e96p1_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e224m2e96p1_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e224m2e96p1_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_6limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_6limbs/freeze.c33
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_6limbs/freezeDisplay.log25
-rw-r--r--src/Specific/solinas64_2e224m2e96p1_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e224m2e96p1_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e226m5_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e226m5_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e226m5_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e226m5_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e226m5_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e226m5_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e226m5_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e226m5_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e226m5_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e226m5_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e226m5_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e226m5_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e226m5_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e226m5_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e226m5_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e226m5_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e226m5_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e226m5_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e226m5_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e226m5_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e226m5_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e226m5_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e226m5_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e226m5_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e226m5_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e226m5_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e226m5_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e226m5_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e226m5_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e226m5_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e226m5_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e226m5_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e226m5_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e226m5_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e226m5_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e226m5_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e226m5_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e226m5_5limbs/femul.c43
-rw-r--r--src/Specific/solinas64_2e226m5_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e226m5_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas64_2e226m5_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e226m5_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas64_2e226m5_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e226m5_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas64_2e226m5_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e226m5_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas64_2e226m5_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e226m5_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e226m5_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e226m5_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas64_2e226m5_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e226m5_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e226m5_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e226m5_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e230m27_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e230m27_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e230m27_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e230m27_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e230m27_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e230m27_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e230m27_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e230m27_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e230m27_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e230m27_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e230m27_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e230m27_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e230m27_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e230m27_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e230m27_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e230m27_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e230m27_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e230m27_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e230m27_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e230m27_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e230m27_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e230m27_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e230m27_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e230m27_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e230m27_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e230m27_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e230m27_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e230m27_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e230m27_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e230m27_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e230m27_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e230m27_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e230m27_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e230m27_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e230m27_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e230m27_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e230m27_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e230m27_5limbs/femul.c43
-rw-r--r--src/Specific/solinas64_2e230m27_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e230m27_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas64_2e230m27_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e230m27_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas64_2e230m27_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e230m27_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas64_2e230m27_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e230m27_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas64_2e230m27_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e230m27_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e230m27_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e230m27_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas64_2e230m27_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e230m27_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e230m27_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e230m27_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e235m15_4limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e235m15_4limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e235m15_4limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e235m15_4limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e235m15_4limbs/feadd.c15
-rw-r--r--src/Specific/solinas64_2e235m15_4limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e235m15_4limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e235m15_4limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e235m15_4limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e235m15_4limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e235m15_4limbs/femul.c36
-rw-r--r--src/Specific/solinas64_2e235m15_4limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e235m15_4limbs/femulDisplay.log28
-rw-r--r--src/Specific/solinas64_2e235m15_4limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e235m15_4limbs/fesquare.c32
-rw-r--r--src/Specific/solinas64_2e235m15_4limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e235m15_4limbs/fesquareDisplay.log28
-rw-r--r--src/Specific/solinas64_2e235m15_4limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e235m15_4limbs/fesub.c15
-rw-r--r--src/Specific/solinas64_2e235m15_4limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e235m15_4limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e235m15_4limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e235m15_4limbs/freeze.c24
-rw-r--r--src/Specific/solinas64_2e235m15_4limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e235m15_4limbs/freezeDisplay.log20
-rw-r--r--src/Specific/solinas64_2e235m15_4limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e235m15_4limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e235m15_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e235m15_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e235m15_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e235m15_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e235m15_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e235m15_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e235m15_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e235m15_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e235m15_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e235m15_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e235m15_5limbs/femul.c43
-rw-r--r--src/Specific/solinas64_2e235m15_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e235m15_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas64_2e235m15_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e235m15_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas64_2e235m15_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e235m15_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas64_2e235m15_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e235m15_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas64_2e235m15_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e235m15_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e235m15_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e235m15_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas64_2e235m15_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e235m15_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e235m15_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e235m15_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e243m9_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e243m9_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e243m9_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e243m9_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e243m9_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e243m9_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e243m9_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e243m9_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e243m9_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e243m9_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e243m9_5limbs/femul.c43
-rw-r--r--src/Specific/solinas64_2e243m9_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e243m9_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas64_2e243m9_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e243m9_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas64_2e243m9_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e243m9_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas64_2e243m9_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e243m9_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas64_2e243m9_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e243m9_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e243m9_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e243m9_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas64_2e243m9_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e243m9_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e243m9_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e243m9_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e243m9_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e243m9_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e243m9_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e243m9_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e243m9_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas64_2e243m9_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e243m9_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e243m9_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e243m9_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e243m9_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e243m9_6limbs/femul.c50
-rw-r--r--src/Specific/solinas64_2e243m9_6limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e243m9_6limbs/femulDisplay.log36
-rw-r--r--src/Specific/solinas64_2e243m9_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e243m9_6limbs/fesquare.c44
-rw-r--r--src/Specific/solinas64_2e243m9_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e243m9_6limbs/fesquareDisplay.log36
-rw-r--r--src/Specific/solinas64_2e243m9_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e243m9_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas64_2e243m9_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e243m9_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e243m9_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e243m9_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas64_2e243m9_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e243m9_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas64_2e243m9_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e243m9_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e251m9_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e251m9_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e251m9_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e251m9_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e251m9_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e251m9_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e251m9_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e251m9_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e251m9_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e251m9_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e251m9_5limbs/femul.c43
-rw-r--r--src/Specific/solinas64_2e251m9_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e251m9_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas64_2e251m9_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e251m9_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas64_2e251m9_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e251m9_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas64_2e251m9_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e251m9_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas64_2e251m9_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e251m9_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e251m9_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e251m9_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas64_2e251m9_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e251m9_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e251m9_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e251m9_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e251m9_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e251m9_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e251m9_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e251m9_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e251m9_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas64_2e251m9_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e251m9_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e251m9_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e251m9_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e251m9_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e251m9_6limbs/femul.c50
-rw-r--r--src/Specific/solinas64_2e251m9_6limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e251m9_6limbs/femulDisplay.log36
-rw-r--r--src/Specific/solinas64_2e251m9_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e251m9_6limbs/fesquare.c44
-rw-r--r--src/Specific/solinas64_2e251m9_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e251m9_6limbs/fesquareDisplay.log36
-rw-r--r--src/Specific/solinas64_2e251m9_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e251m9_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas64_2e251m9_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e251m9_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e251m9_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e251m9_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas64_2e251m9_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e251m9_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas64_2e251m9_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e251m9_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e255m19_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e255m19_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/fecarry.c33
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/fecarryDisplay.log27
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/femul.c43
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e255m19_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/CurveParameters.v74
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e255m19_5limbs_donna/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e255m19_5limbs_donna/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/feadd.c18
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/feadd.v14
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/fecarry.c33
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/fecarryDisplay.log27
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/femul.c51
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/femul.v14
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/femulDisplay.log40
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/fesquare.c43
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/fesquareDisplay.log37
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/fesub.c18
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/fesub.v14
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/freeze.c29
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/freeze.v14
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e255m19_5limbs_donna/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e255m19_5limbs_donna/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e255m19_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e255m19_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/fecarry.c38
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/fecarryDisplay.log30
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/femul.c50
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/femulDisplay.log36
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/fesquare.c44
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/fesquareDisplay.log36
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas64_2e255m19_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e255m19_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e255m765_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e255m765_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e255m765_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e255m765_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e255m765_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e255m765_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e255m765_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e255m765_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m765_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e255m765_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m765_5limbs/femul.c43
-rw-r--r--src/Specific/solinas64_2e255m765_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e255m765_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas64_2e255m765_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m765_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas64_2e255m765_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e255m765_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas64_2e255m765_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m765_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas64_2e255m765_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e255m765_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e255m765_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m765_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas64_2e255m765_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e255m765_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e255m765_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e255m765_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e255m765_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e255m765_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e255m765_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e255m765_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e255m765_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas64_2e255m765_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e255m765_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e255m765_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m765_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e255m765_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m765_6limbs/femul.c50
-rw-r--r--src/Specific/solinas64_2e255m765_6limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e255m765_6limbs/femulDisplay.log36
-rw-r--r--src/Specific/solinas64_2e255m765_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m765_6limbs/fesquare.c44
-rw-r--r--src/Specific/solinas64_2e255m765_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e255m765_6limbs/fesquareDisplay.log36
-rw-r--r--src/Specific/solinas64_2e255m765_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m765_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas64_2e255m765_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e255m765_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e255m765_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e255m765_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas64_2e255m765_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e255m765_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas64_2e255m765_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e255m765_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e256m189_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e256m189_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e256m189_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e256m189_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e256m189_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e256m189_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e256m189_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e256m189_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m189_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e256m189_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m189_5limbs/femul.c43
-rw-r--r--src/Specific/solinas64_2e256m189_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e256m189_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas64_2e256m189_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m189_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas64_2e256m189_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e256m189_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas64_2e256m189_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m189_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas64_2e256m189_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e256m189_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e256m189_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m189_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas64_2e256m189_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e256m189_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e256m189_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e256m189_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e256m189_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e256m189_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e256m189_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e256m189_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e256m189_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas64_2e256m189_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e256m189_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e256m189_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m189_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e256m189_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m189_6limbs/femul.c50
-rw-r--r--src/Specific/solinas64_2e256m189_6limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e256m189_6limbs/femulDisplay.log36
-rw-r--r--src/Specific/solinas64_2e256m189_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m189_6limbs/fesquare.c44
-rw-r--r--src/Specific/solinas64_2e256m189_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e256m189_6limbs/fesquareDisplay.log36
-rw-r--r--src/Specific/solinas64_2e256m189_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m189_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas64_2e256m189_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e256m189_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e256m189_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m189_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas64_2e256m189_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e256m189_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas64_2e256m189_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e256m189_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/freeze.c28
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/freezeDisplay.log22
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/freeze.c33
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/freezeDisplay.log25
-rw-r--r--src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e256m2e32m977_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e256m2e32m977_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_6limbs/femul.c58
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_6limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_6limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_6limbs/fesquare.c52
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_6limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e256m2e32m977_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e256m2e32m977_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e256m2e32m977_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_7limbs/femul.c65
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_7limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_7limbs/femulDisplay.log48
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_7limbs/fesquare.c58
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_7limbs/fesquareDisplay.log48
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas64_2e256m2e32m977_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e256m2e32m977_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e256m4294968273_10limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e256m4294968273_10limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e256m4294968273_10limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e256m4294968273_10limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e256m4294968273_10limbs/feadd.c33
-rw-r--r--src/Specific/solinas64_2e256m4294968273_10limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e256m4294968273_10limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e256m4294968273_10limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m4294968273_10limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e256m4294968273_10limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m4294968273_10limbs/femul.c78
-rw-r--r--src/Specific/solinas64_2e256m4294968273_10limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e256m4294968273_10limbs/femulDisplay.log52
-rw-r--r--src/Specific/solinas64_2e256m4294968273_10limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m4294968273_10limbs/fesquare.c68
-rw-r--r--src/Specific/solinas64_2e256m4294968273_10limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e256m4294968273_10limbs/fesquareDisplay.log52
-rw-r--r--src/Specific/solinas64_2e256m4294968273_10limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m4294968273_10limbs/fesub.c33
-rw-r--r--src/Specific/solinas64_2e256m4294968273_10limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e256m4294968273_10limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e256m4294968273_10limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m4294968273_10limbs/freeze.c54
-rw-r--r--src/Specific/solinas64_2e256m4294968273_10limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e256m4294968273_10limbs/freezeDisplay.log38
-rw-r--r--src/Specific/solinas64_2e256m4294968273_10limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e256m4294968273_10limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e256m4294968273_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e256m4294968273_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e256m4294968273_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e256m4294968273_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e256m4294968273_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas64_2e256m4294968273_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e256m4294968273_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e256m4294968273_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m4294968273_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e256m4294968273_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m4294968273_9limbs/femul.c71
-rw-r--r--src/Specific/solinas64_2e256m4294968273_9limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e256m4294968273_9limbs/femulDisplay.log48
-rw-r--r--src/Specific/solinas64_2e256m4294968273_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m4294968273_9limbs/fesquare.c62
-rw-r--r--src/Specific/solinas64_2e256m4294968273_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e256m4294968273_9limbs/fesquareDisplay.log48
-rw-r--r--src/Specific/solinas64_2e256m4294968273_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m4294968273_9limbs/fesub.c30
-rw-r--r--src/Specific/solinas64_2e256m4294968273_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e256m4294968273_9limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e256m4294968273_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e256m4294968273_9limbs/freeze.c49
-rw-r--r--src/Specific/solinas64_2e256m4294968273_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e256m4294968273_9limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas64_2e256m4294968273_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e256m4294968273_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e266m3_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e266m3_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e266m3_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e266m3_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e266m3_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e266m3_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e266m3_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e266m3_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e266m3_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e266m3_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e266m3_5limbs/femul.c43
-rw-r--r--src/Specific/solinas64_2e266m3_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e266m3_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas64_2e266m3_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e266m3_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas64_2e266m3_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e266m3_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas64_2e266m3_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e266m3_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas64_2e266m3_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e266m3_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e266m3_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e266m3_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas64_2e266m3_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e266m3_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e266m3_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e266m3_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e266m3_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e266m3_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e266m3_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e266m3_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e266m3_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas64_2e266m3_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e266m3_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e266m3_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e266m3_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e266m3_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e266m3_6limbs/femul.c50
-rw-r--r--src/Specific/solinas64_2e266m3_6limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e266m3_6limbs/femulDisplay.log36
-rw-r--r--src/Specific/solinas64_2e266m3_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e266m3_6limbs/fesquare.c44
-rw-r--r--src/Specific/solinas64_2e266m3_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e266m3_6limbs/fesquareDisplay.log36
-rw-r--r--src/Specific/solinas64_2e266m3_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e266m3_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas64_2e266m3_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e266m3_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e266m3_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e266m3_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas64_2e266m3_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e266m3_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas64_2e266m3_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e266m3_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e285m9_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e285m9_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e285m9_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e285m9_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e285m9_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e285m9_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e285m9_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e285m9_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e285m9_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e285m9_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e285m9_5limbs/femul.c43
-rw-r--r--src/Specific/solinas64_2e285m9_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e285m9_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas64_2e285m9_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e285m9_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas64_2e285m9_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e285m9_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas64_2e285m9_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e285m9_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas64_2e285m9_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e285m9_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e285m9_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e285m9_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas64_2e285m9_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e285m9_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e285m9_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e285m9_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e285m9_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e285m9_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e285m9_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e285m9_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e285m9_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas64_2e285m9_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e285m9_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e285m9_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e285m9_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e285m9_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e285m9_6limbs/femul.c50
-rw-r--r--src/Specific/solinas64_2e285m9_6limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e285m9_6limbs/femulDisplay.log36
-rw-r--r--src/Specific/solinas64_2e285m9_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e285m9_6limbs/fesquare.c44
-rw-r--r--src/Specific/solinas64_2e285m9_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e285m9_6limbs/fesquareDisplay.log36
-rw-r--r--src/Specific/solinas64_2e285m9_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e285m9_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas64_2e285m9_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e285m9_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e285m9_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e285m9_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas64_2e285m9_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e285m9_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas64_2e285m9_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e285m9_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e291m19_5limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e291m19_5limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e291m19_5limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e291m19_5limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e291m19_5limbs/feadd.c18
-rw-r--r--src/Specific/solinas64_2e291m19_5limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e291m19_5limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e291m19_5limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e291m19_5limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e291m19_5limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e291m19_5limbs/femul.c43
-rw-r--r--src/Specific/solinas64_2e291m19_5limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e291m19_5limbs/femulDisplay.log32
-rw-r--r--src/Specific/solinas64_2e291m19_5limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e291m19_5limbs/fesquare.c38
-rw-r--r--src/Specific/solinas64_2e291m19_5limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e291m19_5limbs/fesquareDisplay.log32
-rw-r--r--src/Specific/solinas64_2e291m19_5limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e291m19_5limbs/fesub.c18
-rw-r--r--src/Specific/solinas64_2e291m19_5limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e291m19_5limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e291m19_5limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e291m19_5limbs/freeze.c29
-rw-r--r--src/Specific/solinas64_2e291m19_5limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e291m19_5limbs/freezeDisplay.log23
-rw-r--r--src/Specific/solinas64_2e291m19_5limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e291m19_5limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e291m19_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e291m19_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e291m19_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e291m19_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e291m19_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas64_2e291m19_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e291m19_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e291m19_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e291m19_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e291m19_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e291m19_6limbs/femul.c50
-rw-r--r--src/Specific/solinas64_2e291m19_6limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e291m19_6limbs/femulDisplay.log36
-rw-r--r--src/Specific/solinas64_2e291m19_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e291m19_6limbs/fesquare.c44
-rw-r--r--src/Specific/solinas64_2e291m19_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e291m19_6limbs/fesquareDisplay.log36
-rw-r--r--src/Specific/solinas64_2e291m19_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e291m19_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas64_2e291m19_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e291m19_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e291m19_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e291m19_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas64_2e291m19_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e291m19_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas64_2e291m19_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e291m19_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e321m9_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e321m9_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e321m9_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e321m9_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e321m9_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas64_2e321m9_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e321m9_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e321m9_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e321m9_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e321m9_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e321m9_6limbs/femul.c50
-rw-r--r--src/Specific/solinas64_2e321m9_6limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e321m9_6limbs/femulDisplay.log36
-rw-r--r--src/Specific/solinas64_2e321m9_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e321m9_6limbs/fesquare.c44
-rw-r--r--src/Specific/solinas64_2e321m9_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e321m9_6limbs/fesquareDisplay.log36
-rw-r--r--src/Specific/solinas64_2e321m9_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e321m9_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas64_2e321m9_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e321m9_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e321m9_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e321m9_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas64_2e321m9_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e321m9_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas64_2e321m9_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e321m9_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e321m9_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e321m9_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e321m9_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e321m9_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e321m9_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas64_2e321m9_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e321m9_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e321m9_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e321m9_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e321m9_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e321m9_7limbs/femul.c57
-rw-r--r--src/Specific/solinas64_2e321m9_7limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e321m9_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas64_2e321m9_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e321m9_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas64_2e321m9_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e321m9_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas64_2e321m9_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e321m9_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas64_2e321m9_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e321m9_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e321m9_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e321m9_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas64_2e321m9_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e321m9_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas64_2e321m9_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e321m9_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e322m2e161m1_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e322m2e161m1_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_6limbs/femul.c65
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_6limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_6limbs/femulDisplay.log51
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_6limbs/fesquare.c59
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_6limbs/fesquareDisplay.log51
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e322m2e161m1_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e322m2e161m1_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e322m2e161m1_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_7limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas64_2e322m2e161m1_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e322m2e161m1_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e336m17_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e336m17_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e336m17_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e336m17_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e336m17_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas64_2e336m17_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e336m17_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e336m17_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e336m17_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e336m17_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e336m17_6limbs/femul.c50
-rw-r--r--src/Specific/solinas64_2e336m17_6limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e336m17_6limbs/femulDisplay.log36
-rw-r--r--src/Specific/solinas64_2e336m17_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e336m17_6limbs/fesquare.c44
-rw-r--r--src/Specific/solinas64_2e336m17_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e336m17_6limbs/fesquareDisplay.log36
-rw-r--r--src/Specific/solinas64_2e336m17_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e336m17_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas64_2e336m17_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e336m17_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e336m17_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e336m17_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas64_2e336m17_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e336m17_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas64_2e336m17_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e336m17_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e336m17_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e336m17_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e336m17_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e336m17_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e336m17_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas64_2e336m17_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e336m17_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e336m17_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e336m17_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e336m17_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e336m17_7limbs/femul.c57
-rw-r--r--src/Specific/solinas64_2e336m17_7limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e336m17_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas64_2e336m17_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e336m17_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas64_2e336m17_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e336m17_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas64_2e336m17_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e336m17_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas64_2e336m17_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e336m17_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e336m17_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e336m17_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas64_2e336m17_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e336m17_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas64_2e336m17_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e336m17_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e336m3_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e336m3_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e336m3_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e336m3_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e336m3_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas64_2e336m3_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e336m3_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e336m3_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e336m3_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e336m3_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e336m3_6limbs/femul.c50
-rw-r--r--src/Specific/solinas64_2e336m3_6limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e336m3_6limbs/femulDisplay.log36
-rw-r--r--src/Specific/solinas64_2e336m3_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e336m3_6limbs/fesquare.c44
-rw-r--r--src/Specific/solinas64_2e336m3_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e336m3_6limbs/fesquareDisplay.log36
-rw-r--r--src/Specific/solinas64_2e336m3_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e336m3_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas64_2e336m3_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e336m3_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e336m3_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e336m3_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas64_2e336m3_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e336m3_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas64_2e336m3_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e336m3_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e336m3_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e336m3_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e336m3_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e336m3_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e336m3_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas64_2e336m3_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e336m3_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e336m3_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e336m3_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e336m3_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e336m3_7limbs/femul.c57
-rw-r--r--src/Specific/solinas64_2e336m3_7limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e336m3_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas64_2e336m3_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e336m3_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas64_2e336m3_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e336m3_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas64_2e336m3_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e336m3_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas64_2e336m3_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e336m3_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e336m3_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e336m3_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas64_2e336m3_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e336m3_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas64_2e336m3_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e336m3_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e338m15_6limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e338m15_6limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e338m15_6limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e338m15_6limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e338m15_6limbs/feadd.c21
-rw-r--r--src/Specific/solinas64_2e338m15_6limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e338m15_6limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e338m15_6limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e338m15_6limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e338m15_6limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e338m15_6limbs/femul.c50
-rw-r--r--src/Specific/solinas64_2e338m15_6limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e338m15_6limbs/femulDisplay.log36
-rw-r--r--src/Specific/solinas64_2e338m15_6limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e338m15_6limbs/fesquare.c44
-rw-r--r--src/Specific/solinas64_2e338m15_6limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e338m15_6limbs/fesquareDisplay.log36
-rw-r--r--src/Specific/solinas64_2e338m15_6limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e338m15_6limbs/fesub.c21
-rw-r--r--src/Specific/solinas64_2e338m15_6limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e338m15_6limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e338m15_6limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e338m15_6limbs/freeze.c34
-rw-r--r--src/Specific/solinas64_2e338m15_6limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e338m15_6limbs/freezeDisplay.log26
-rw-r--r--src/Specific/solinas64_2e338m15_6limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e338m15_6limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e338m15_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e338m15_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e338m15_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e338m15_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e338m15_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas64_2e338m15_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e338m15_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e338m15_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e338m15_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e338m15_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e338m15_7limbs/femul.c57
-rw-r--r--src/Specific/solinas64_2e338m15_7limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e338m15_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas64_2e338m15_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e338m15_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas64_2e338m15_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e338m15_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas64_2e338m15_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e338m15_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas64_2e338m15_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e338m15_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e338m15_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e338m15_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas64_2e338m15_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e338m15_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas64_2e338m15_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e338m15_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e369m25_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e369m25_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e369m25_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e369m25_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e369m25_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas64_2e369m25_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e369m25_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e369m25_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e369m25_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e369m25_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e369m25_7limbs/femul.c57
-rw-r--r--src/Specific/solinas64_2e369m25_7limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e369m25_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas64_2e369m25_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e369m25_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas64_2e369m25_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e369m25_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas64_2e369m25_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e369m25_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas64_2e369m25_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e369m25_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e369m25_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e369m25_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas64_2e369m25_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e369m25_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas64_2e369m25_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e369m25_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e369m25_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e369m25_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e369m25_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e369m25_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e369m25_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas64_2e369m25_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e369m25_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e369m25_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e369m25_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e369m25_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e369m25_8limbs/femul.c64
-rw-r--r--src/Specific/solinas64_2e369m25_8limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e369m25_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas64_2e369m25_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e369m25_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas64_2e369m25_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e369m25_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas64_2e369m25_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e369m25_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas64_2e369m25_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e369m25_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e369m25_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e369m25_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas64_2e369m25_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e369m25_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas64_2e369m25_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e369m25_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e379m19_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e379m19_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e379m19_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e379m19_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e379m19_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas64_2e379m19_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e379m19_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e379m19_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e379m19_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e379m19_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e379m19_7limbs/femul.c57
-rw-r--r--src/Specific/solinas64_2e379m19_7limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e379m19_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas64_2e379m19_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e379m19_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas64_2e379m19_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e379m19_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas64_2e379m19_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e379m19_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas64_2e379m19_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e379m19_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e379m19_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e379m19_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas64_2e379m19_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e379m19_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas64_2e379m19_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e379m19_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e379m19_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e379m19_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e379m19_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e379m19_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e379m19_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas64_2e379m19_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e379m19_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e379m19_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e379m19_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e379m19_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e379m19_8limbs/femul.c64
-rw-r--r--src/Specific/solinas64_2e379m19_8limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e379m19_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas64_2e379m19_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e379m19_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas64_2e379m19_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e379m19_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas64_2e379m19_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e379m19_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas64_2e379m19_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e379m19_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e379m19_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e379m19_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas64_2e379m19_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e379m19_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas64_2e379m19_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e379m19_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e382m105_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e382m105_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e382m105_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e382m105_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e382m105_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas64_2e382m105_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e382m105_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e382m105_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e382m105_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e382m105_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e382m105_7limbs/femul.c57
-rw-r--r--src/Specific/solinas64_2e382m105_7limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e382m105_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas64_2e382m105_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e382m105_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas64_2e382m105_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e382m105_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas64_2e382m105_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e382m105_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas64_2e382m105_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e382m105_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e382m105_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e382m105_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas64_2e382m105_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e382m105_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas64_2e382m105_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e382m105_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e382m105_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e382m105_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e382m105_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e382m105_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e382m105_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas64_2e382m105_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e382m105_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e382m105_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e382m105_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e382m105_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e382m105_8limbs/femul.c64
-rw-r--r--src/Specific/solinas64_2e382m105_8limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e382m105_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas64_2e382m105_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e382m105_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas64_2e382m105_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e382m105_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas64_2e382m105_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e382m105_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas64_2e382m105_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e382m105_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e382m105_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e382m105_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas64_2e382m105_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e382m105_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas64_2e382m105_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e382m105_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e383m187_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e383m187_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e383m187_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e383m187_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e383m187_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas64_2e383m187_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e383m187_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e383m187_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m187_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e383m187_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m187_7limbs/femul.c57
-rw-r--r--src/Specific/solinas64_2e383m187_7limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e383m187_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas64_2e383m187_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m187_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas64_2e383m187_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e383m187_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas64_2e383m187_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m187_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas64_2e383m187_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e383m187_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e383m187_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m187_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas64_2e383m187_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e383m187_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas64_2e383m187_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e383m187_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e383m187_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e383m187_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e383m187_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e383m187_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e383m187_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas64_2e383m187_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e383m187_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e383m187_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m187_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e383m187_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m187_8limbs/femul.c64
-rw-r--r--src/Specific/solinas64_2e383m187_8limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e383m187_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas64_2e383m187_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m187_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas64_2e383m187_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e383m187_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas64_2e383m187_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m187_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas64_2e383m187_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e383m187_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e383m187_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m187_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas64_2e383m187_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e383m187_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas64_2e383m187_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e383m187_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e383m31_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e383m31_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e383m31_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e383m31_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e383m31_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas64_2e383m31_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e383m31_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e383m31_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m31_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e383m31_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m31_7limbs/femul.c57
-rw-r--r--src/Specific/solinas64_2e383m31_7limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e383m31_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas64_2e383m31_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m31_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas64_2e383m31_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e383m31_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas64_2e383m31_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m31_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas64_2e383m31_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e383m31_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e383m31_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m31_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas64_2e383m31_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e383m31_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas64_2e383m31_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e383m31_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e383m31_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e383m31_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e383m31_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e383m31_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e383m31_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas64_2e383m31_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e383m31_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e383m31_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m31_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e383m31_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m31_8limbs/femul.c64
-rw-r--r--src/Specific/solinas64_2e383m31_8limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e383m31_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas64_2e383m31_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m31_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas64_2e383m31_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e383m31_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas64_2e383m31_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m31_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas64_2e383m31_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e383m31_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e383m31_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m31_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas64_2e383m31_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e383m31_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas64_2e383m31_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e383m31_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e383m421_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e383m421_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e383m421_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e383m421_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e383m421_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas64_2e383m421_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e383m421_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e383m421_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m421_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e383m421_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m421_7limbs/femul.c57
-rw-r--r--src/Specific/solinas64_2e383m421_7limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e383m421_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas64_2e383m421_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m421_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas64_2e383m421_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e383m421_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas64_2e383m421_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m421_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas64_2e383m421_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e383m421_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e383m421_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m421_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas64_2e383m421_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e383m421_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas64_2e383m421_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e383m421_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e383m421_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e383m421_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e383m421_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e383m421_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e383m421_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas64_2e383m421_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e383m421_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e383m421_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m421_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e383m421_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m421_8limbs/femul.c64
-rw-r--r--src/Specific/solinas64_2e383m421_8limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e383m421_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas64_2e383m421_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m421_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas64_2e383m421_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e383m421_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas64_2e383m421_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m421_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas64_2e383m421_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e383m421_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e383m421_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e383m421_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas64_2e383m421_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e383m421_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas64_2e383m421_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e383m421_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/feadd.c33
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/freeze.c53
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/freezeDisplay.log37
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/freeze.c48
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/freezeDisplay.log34
-rw-r--r--src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e384m317_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e384m317_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e384m317_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e384m317_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e384m317_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas64_2e384m317_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e384m317_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e384m317_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e384m317_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e384m317_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e384m317_7limbs/femul.c57
-rw-r--r--src/Specific/solinas64_2e384m317_7limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e384m317_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas64_2e384m317_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e384m317_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas64_2e384m317_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e384m317_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas64_2e384m317_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e384m317_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas64_2e384m317_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e384m317_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e384m317_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e384m317_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas64_2e384m317_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e384m317_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas64_2e384m317_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e384m317_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e384m317_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e384m317_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e384m317_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e384m317_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e384m317_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas64_2e384m317_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e384m317_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e384m317_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e384m317_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e384m317_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e384m317_8limbs/femul.c64
-rw-r--r--src/Specific/solinas64_2e384m317_8limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e384m317_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas64_2e384m317_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e384m317_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas64_2e384m317_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e384m317_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas64_2e384m317_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e384m317_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas64_2e384m317_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e384m317_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e384m317_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e384m317_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas64_2e384m317_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e384m317_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas64_2e384m317_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e384m317_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e389m21_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e389m21_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e389m21_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e389m21_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e389m21_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas64_2e389m21_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e389m21_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e389m21_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e389m21_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e389m21_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e389m21_7limbs/femul.c57
-rw-r--r--src/Specific/solinas64_2e389m21_7limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e389m21_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas64_2e389m21_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e389m21_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas64_2e389m21_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e389m21_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas64_2e389m21_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e389m21_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas64_2e389m21_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e389m21_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e389m21_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e389m21_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas64_2e389m21_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e389m21_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas64_2e389m21_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e389m21_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e389m21_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e389m21_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e389m21_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e389m21_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e389m21_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas64_2e389m21_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e389m21_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e389m21_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e389m21_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e389m21_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e389m21_8limbs/femul.c64
-rw-r--r--src/Specific/solinas64_2e389m21_8limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e389m21_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas64_2e389m21_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e389m21_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas64_2e389m21_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e389m21_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas64_2e389m21_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e389m21_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas64_2e389m21_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e389m21_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e389m21_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e389m21_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas64_2e389m21_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e389m21_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas64_2e389m21_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e389m21_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e401m31_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e401m31_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e401m31_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e401m31_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e401m31_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas64_2e401m31_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e401m31_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e401m31_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e401m31_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e401m31_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e401m31_7limbs/femul.c57
-rw-r--r--src/Specific/solinas64_2e401m31_7limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e401m31_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas64_2e401m31_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e401m31_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas64_2e401m31_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e401m31_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas64_2e401m31_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e401m31_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas64_2e401m31_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e401m31_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e401m31_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e401m31_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas64_2e401m31_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e401m31_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas64_2e401m31_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e401m31_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e401m31_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e401m31_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e401m31_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e401m31_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e401m31_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas64_2e401m31_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e401m31_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e401m31_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e401m31_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e401m31_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e401m31_8limbs/femul.c64
-rw-r--r--src/Specific/solinas64_2e401m31_8limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e401m31_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas64_2e401m31_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e401m31_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas64_2e401m31_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e401m31_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas64_2e401m31_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e401m31_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas64_2e401m31_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e401m31_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e401m31_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e401m31_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas64_2e401m31_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e401m31_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas64_2e401m31_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e401m31_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e413m21_7limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e413m21_7limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e413m21_7limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e413m21_7limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e413m21_7limbs/feadd.c24
-rw-r--r--src/Specific/solinas64_2e413m21_7limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e413m21_7limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e413m21_7limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e413m21_7limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e413m21_7limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e413m21_7limbs/femul.c57
-rw-r--r--src/Specific/solinas64_2e413m21_7limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e413m21_7limbs/femulDisplay.log40
-rw-r--r--src/Specific/solinas64_2e413m21_7limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e413m21_7limbs/fesquare.c50
-rw-r--r--src/Specific/solinas64_2e413m21_7limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e413m21_7limbs/fesquareDisplay.log40
-rw-r--r--src/Specific/solinas64_2e413m21_7limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e413m21_7limbs/fesub.c24
-rw-r--r--src/Specific/solinas64_2e413m21_7limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e413m21_7limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e413m21_7limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e413m21_7limbs/freeze.c39
-rw-r--r--src/Specific/solinas64_2e413m21_7limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e413m21_7limbs/freezeDisplay.log29
-rw-r--r--src/Specific/solinas64_2e413m21_7limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e413m21_7limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e413m21_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e413m21_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e413m21_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e413m21_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e413m21_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas64_2e413m21_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e413m21_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e413m21_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e413m21_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e413m21_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e413m21_8limbs/femul.c64
-rw-r--r--src/Specific/solinas64_2e413m21_8limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e413m21_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas64_2e413m21_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e413m21_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas64_2e413m21_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e413m21_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas64_2e413m21_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e413m21_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas64_2e413m21_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e413m21_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e413m21_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e413m21_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas64_2e413m21_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e413m21_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas64_2e413m21_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e413m21_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e414m17_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e414m17_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e414m17_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e414m17_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e414m17_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas64_2e414m17_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e414m17_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e414m17_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e414m17_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e414m17_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e414m17_8limbs/femul.c64
-rw-r--r--src/Specific/solinas64_2e414m17_8limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e414m17_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas64_2e414m17_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e414m17_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas64_2e414m17_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e414m17_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas64_2e414m17_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e414m17_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas64_2e414m17_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e414m17_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e414m17_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e414m17_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas64_2e414m17_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e414m17_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas64_2e414m17_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e414m17_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e414m17_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e414m17_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e414m17_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e414m17_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e414m17_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas64_2e414m17_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e414m17_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e414m17_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e414m17_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e414m17_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e414m17_9limbs/femul.c71
-rw-r--r--src/Specific/solinas64_2e414m17_9limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e414m17_9limbs/femulDisplay.log48
-rw-r--r--src/Specific/solinas64_2e414m17_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e414m17_9limbs/fesquare.c62
-rw-r--r--src/Specific/solinas64_2e414m17_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e414m17_9limbs/fesquareDisplay.log48
-rw-r--r--src/Specific/solinas64_2e414m17_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e414m17_9limbs/fesub.c30
-rw-r--r--src/Specific/solinas64_2e414m17_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e414m17_9limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e414m17_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e414m17_9limbs/freeze.c49
-rw-r--r--src/Specific/solinas64_2e414m17_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e414m17_9limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas64_2e414m17_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e414m17_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e416m2e208m1_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e416m2e208m1_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_8limbs/femul.c81
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_8limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_8limbs/femulDisplay.log61
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_8limbs/fesquare.c73
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_8limbs/fesquareDisplay.log61
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e416m2e208m1_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e416m2e208m1_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e416m2e208m1_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_9limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_9limbs/fesub.c30
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_9limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_9limbs/freeze.c49
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_9limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas64_2e416m2e208m1_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e416m2e208m1_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e444m17_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e444m17_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e444m17_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e444m17_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e444m17_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas64_2e444m17_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e444m17_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e444m17_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e444m17_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e444m17_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e444m17_8limbs/femul.c64
-rw-r--r--src/Specific/solinas64_2e444m17_8limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e444m17_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas64_2e444m17_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e444m17_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas64_2e444m17_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e444m17_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas64_2e444m17_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e444m17_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas64_2e444m17_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e444m17_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e444m17_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e444m17_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas64_2e444m17_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e444m17_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas64_2e444m17_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e444m17_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e444m17_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e444m17_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e444m17_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e444m17_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e444m17_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas64_2e444m17_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e444m17_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e444m17_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e444m17_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e444m17_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e444m17_9limbs/femul.c71
-rw-r--r--src/Specific/solinas64_2e444m17_9limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e444m17_9limbs/femulDisplay.log48
-rw-r--r--src/Specific/solinas64_2e444m17_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e444m17_9limbs/fesquare.c62
-rw-r--r--src/Specific/solinas64_2e444m17_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e444m17_9limbs/fesquareDisplay.log48
-rw-r--r--src/Specific/solinas64_2e444m17_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e444m17_9limbs/fesub.c30
-rw-r--r--src/Specific/solinas64_2e444m17_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e444m17_9limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e444m17_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e444m17_9limbs/freeze.c49
-rw-r--r--src/Specific/solinas64_2e444m17_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e444m17_9limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas64_2e444m17_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e444m17_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_10limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_10limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e448m2e224m1_10limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e448m2e224m1_10limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_10limbs/feadd.c33
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_10limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_10limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_10limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_10limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_10limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_10limbs/femul.c97
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_10limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_10limbs/femulDisplay.log71
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_10limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_10limbs/fesquare.c87
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_10limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_10limbs/fesquareDisplay.log71
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_10limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_10limbs/fesub.c33
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_10limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_10limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_10limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_10limbs/freeze.c54
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_10limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_10limbs/freezeDisplay.log38
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_10limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e448m2e224m1_10limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e448m2e224m1_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e448m2e224m1_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_8limbs/femul.c81
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_8limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_8limbs/femulDisplay.log61
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_8limbs/fesquare.c73
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_8limbs/fesquareDisplay.log61
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas64_2e448m2e224m1_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e448m2e224m1_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_10limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_10limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e450m2e225m1_10limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e450m2e225m1_10limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_10limbs/feadd.c33
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_10limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_10limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_10limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_10limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_10limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_10limbs/femul.c97
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_10limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_10limbs/femulDisplay.log71
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_10limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_10limbs/fesquare.c87
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_10limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_10limbs/fesquareDisplay.log71
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_10limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_10limbs/fesub.c33
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_10limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_10limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_10limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_10limbs/freeze.c54
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_10limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_10limbs/freezeDisplay.log38
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_10limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e450m2e225m1_10limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e450m2e225m1_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e450m2e225m1_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_8limbs/femul.c81
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_8limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_8limbs/femulDisplay.log61
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_8limbs/fesquare.c73
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_8limbs/fesquareDisplay.log61
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas64_2e450m2e225m1_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e450m2e225m1_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e452m3_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e452m3_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e452m3_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e452m3_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e452m3_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas64_2e452m3_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e452m3_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e452m3_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e452m3_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e452m3_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e452m3_8limbs/femul.c64
-rw-r--r--src/Specific/solinas64_2e452m3_8limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e452m3_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas64_2e452m3_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e452m3_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas64_2e452m3_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e452m3_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas64_2e452m3_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e452m3_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas64_2e452m3_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e452m3_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e452m3_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e452m3_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas64_2e452m3_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e452m3_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas64_2e452m3_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e452m3_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e452m3_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e452m3_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e452m3_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e452m3_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e452m3_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas64_2e452m3_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e452m3_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e452m3_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e452m3_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e452m3_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e452m3_9limbs/femul.c71
-rw-r--r--src/Specific/solinas64_2e452m3_9limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e452m3_9limbs/femulDisplay.log48
-rw-r--r--src/Specific/solinas64_2e452m3_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e452m3_9limbs/fesquare.c62
-rw-r--r--src/Specific/solinas64_2e452m3_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e452m3_9limbs/fesquareDisplay.log48
-rw-r--r--src/Specific/solinas64_2e452m3_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e452m3_9limbs/fesub.c30
-rw-r--r--src/Specific/solinas64_2e452m3_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e452m3_9limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e452m3_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e452m3_9limbs/freeze.c49
-rw-r--r--src/Specific/solinas64_2e452m3_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e452m3_9limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas64_2e452m3_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e452m3_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e468m17_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e468m17_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e468m17_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e468m17_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e468m17_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas64_2e468m17_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e468m17_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e468m17_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e468m17_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e468m17_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e468m17_8limbs/femul.c64
-rw-r--r--src/Specific/solinas64_2e468m17_8limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e468m17_8limbs/femulDisplay.log44
-rw-r--r--src/Specific/solinas64_2e468m17_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e468m17_8limbs/fesquare.c56
-rw-r--r--src/Specific/solinas64_2e468m17_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e468m17_8limbs/fesquareDisplay.log44
-rw-r--r--src/Specific/solinas64_2e468m17_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e468m17_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas64_2e468m17_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e468m17_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e468m17_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e468m17_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas64_2e468m17_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e468m17_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas64_2e468m17_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e468m17_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e468m17_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e468m17_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e468m17_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e468m17_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e468m17_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas64_2e468m17_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e468m17_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e468m17_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e468m17_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e468m17_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e468m17_9limbs/femul.c71
-rw-r--r--src/Specific/solinas64_2e468m17_9limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e468m17_9limbs/femulDisplay.log48
-rw-r--r--src/Specific/solinas64_2e468m17_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e468m17_9limbs/fesquare.c62
-rw-r--r--src/Specific/solinas64_2e468m17_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e468m17_9limbs/fesquareDisplay.log48
-rw-r--r--src/Specific/solinas64_2e468m17_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e468m17_9limbs/fesub.c30
-rw-r--r--src/Specific/solinas64_2e468m17_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e468m17_9limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e468m17_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e468m17_9limbs/freeze.c49
-rw-r--r--src/Specific/solinas64_2e468m17_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e468m17_9limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas64_2e468m17_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e468m17_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_10limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_10limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e480m2e240m1_10limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e480m2e240m1_10limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_10limbs/feadd.c33
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_10limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_10limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_10limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_10limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_10limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_10limbs/femul.c97
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_10limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_10limbs/femulDisplay.log71
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_10limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_10limbs/fesquare.c87
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_10limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_10limbs/fesquareDisplay.log71
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_10limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_10limbs/fesub.c33
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_10limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_10limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_10limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_10limbs/freeze.c54
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_10limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_10limbs/freezeDisplay.log38
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_10limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e480m2e240m1_10limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_8limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_8limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e480m2e240m1_8limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e480m2e240m1_8limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_8limbs/feadd.c27
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_8limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_8limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_8limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_8limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_8limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_8limbs/femul.c81
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_8limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_8limbs/femulDisplay.log61
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_8limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_8limbs/fesquare.c73
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_8limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_8limbs/fesquareDisplay.log61
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_8limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_8limbs/fesub.c27
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_8limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_8limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_8limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_8limbs/freeze.c44
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_8limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_8limbs/freezeDisplay.log32
-rw-r--r--src/Specific/solinas64_2e480m2e240m1_8limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e480m2e240m1_8limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e488m17_10limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e488m17_10limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e488m17_10limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e488m17_10limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e488m17_10limbs/feadd.c33
-rw-r--r--src/Specific/solinas64_2e488m17_10limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e488m17_10limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e488m17_10limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e488m17_10limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e488m17_10limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e488m17_10limbs/femul.c78
-rw-r--r--src/Specific/solinas64_2e488m17_10limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e488m17_10limbs/femulDisplay.log52
-rw-r--r--src/Specific/solinas64_2e488m17_10limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e488m17_10limbs/fesquare.c68
-rw-r--r--src/Specific/solinas64_2e488m17_10limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e488m17_10limbs/fesquareDisplay.log52
-rw-r--r--src/Specific/solinas64_2e488m17_10limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e488m17_10limbs/fesub.c33
-rw-r--r--src/Specific/solinas64_2e488m17_10limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e488m17_10limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e488m17_10limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e488m17_10limbs/freeze.c54
-rw-r--r--src/Specific/solinas64_2e488m17_10limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e488m17_10limbs/freezeDisplay.log38
-rw-r--r--src/Specific/solinas64_2e488m17_10limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e488m17_10limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e488m17_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e488m17_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e488m17_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e488m17_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e488m17_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas64_2e488m17_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e488m17_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e488m17_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e488m17_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e488m17_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e488m17_9limbs/femul.c71
-rw-r--r--src/Specific/solinas64_2e488m17_9limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e488m17_9limbs/femulDisplay.log48
-rw-r--r--src/Specific/solinas64_2e488m17_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e488m17_9limbs/fesquare.c62
-rw-r--r--src/Specific/solinas64_2e488m17_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e488m17_9limbs/fesquareDisplay.log48
-rw-r--r--src/Specific/solinas64_2e488m17_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e488m17_9limbs/fesub.c30
-rw-r--r--src/Specific/solinas64_2e488m17_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e488m17_9limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e488m17_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e488m17_9limbs/freeze.c49
-rw-r--r--src/Specific/solinas64_2e488m17_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e488m17_9limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas64_2e488m17_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e488m17_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e489m21_10limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e489m21_10limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e489m21_10limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e489m21_10limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e489m21_10limbs/feadd.c33
-rw-r--r--src/Specific/solinas64_2e489m21_10limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e489m21_10limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e489m21_10limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e489m21_10limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e489m21_10limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e489m21_10limbs/femul.c78
-rw-r--r--src/Specific/solinas64_2e489m21_10limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e489m21_10limbs/femulDisplay.log52
-rw-r--r--src/Specific/solinas64_2e489m21_10limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e489m21_10limbs/fesquare.c68
-rw-r--r--src/Specific/solinas64_2e489m21_10limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e489m21_10limbs/fesquareDisplay.log52
-rw-r--r--src/Specific/solinas64_2e489m21_10limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e489m21_10limbs/fesub.c33
-rw-r--r--src/Specific/solinas64_2e489m21_10limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e489m21_10limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e489m21_10limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e489m21_10limbs/freeze.c54
-rw-r--r--src/Specific/solinas64_2e489m21_10limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e489m21_10limbs/freezeDisplay.log38
-rw-r--r--src/Specific/solinas64_2e489m21_10limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e489m21_10limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e489m21_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e489m21_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e489m21_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e489m21_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e489m21_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas64_2e489m21_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e489m21_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e489m21_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e489m21_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e489m21_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e489m21_9limbs/femul.c71
-rw-r--r--src/Specific/solinas64_2e489m21_9limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e489m21_9limbs/femulDisplay.log48
-rw-r--r--src/Specific/solinas64_2e489m21_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e489m21_9limbs/fesquare.c62
-rw-r--r--src/Specific/solinas64_2e489m21_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e489m21_9limbs/fesquareDisplay.log48
-rw-r--r--src/Specific/solinas64_2e489m21_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e489m21_9limbs/fesub.c30
-rw-r--r--src/Specific/solinas64_2e489m21_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e489m21_9limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e489m21_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e489m21_9limbs/freeze.c49
-rw-r--r--src/Specific/solinas64_2e489m21_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e489m21_9limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas64_2e489m21_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e489m21_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e495m31_10limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e495m31_10limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e495m31_10limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e495m31_10limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e495m31_10limbs/feadd.c33
-rw-r--r--src/Specific/solinas64_2e495m31_10limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e495m31_10limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e495m31_10limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e495m31_10limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e495m31_10limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e495m31_10limbs/femul.c78
-rw-r--r--src/Specific/solinas64_2e495m31_10limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e495m31_10limbs/femulDisplay.log52
-rw-r--r--src/Specific/solinas64_2e495m31_10limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e495m31_10limbs/fesquare.c68
-rw-r--r--src/Specific/solinas64_2e495m31_10limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e495m31_10limbs/fesquareDisplay.log52
-rw-r--r--src/Specific/solinas64_2e495m31_10limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e495m31_10limbs/fesub.c33
-rw-r--r--src/Specific/solinas64_2e495m31_10limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e495m31_10limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e495m31_10limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e495m31_10limbs/freeze.c54
-rw-r--r--src/Specific/solinas64_2e495m31_10limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e495m31_10limbs/freezeDisplay.log38
-rw-r--r--src/Specific/solinas64_2e495m31_10limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e495m31_10limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e495m31_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e495m31_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e495m31_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e495m31_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e495m31_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas64_2e495m31_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e495m31_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e495m31_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e495m31_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e495m31_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e495m31_9limbs/femul.c71
-rw-r--r--src/Specific/solinas64_2e495m31_9limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e495m31_9limbs/femulDisplay.log48
-rw-r--r--src/Specific/solinas64_2e495m31_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e495m31_9limbs/fesquare.c62
-rw-r--r--src/Specific/solinas64_2e495m31_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e495m31_9limbs/fesquareDisplay.log48
-rw-r--r--src/Specific/solinas64_2e495m31_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e495m31_9limbs/fesub.c30
-rw-r--r--src/Specific/solinas64_2e495m31_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e495m31_9limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e495m31_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e495m31_9limbs/freeze.c49
-rw-r--r--src/Specific/solinas64_2e495m31_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e495m31_9limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas64_2e495m31_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e495m31_9limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e511m187_10limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e511m187_10limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e511m187_10limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e511m187_10limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e511m187_10limbs/feadd.c33
-rw-r--r--src/Specific/solinas64_2e511m187_10limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e511m187_10limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e511m187_10limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e511m187_10limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e511m187_10limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e511m187_10limbs/femul.c78
-rw-r--r--src/Specific/solinas64_2e511m187_10limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e511m187_10limbs/femulDisplay.log52
-rw-r--r--src/Specific/solinas64_2e511m187_10limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e511m187_10limbs/fesquare.c68
-rw-r--r--src/Specific/solinas64_2e511m187_10limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e511m187_10limbs/fesquareDisplay.log52
-rw-r--r--src/Specific/solinas64_2e511m187_10limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e511m187_10limbs/fesub.c33
-rw-r--r--src/Specific/solinas64_2e511m187_10limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e511m187_10limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e511m187_10limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e511m187_10limbs/freeze.c54
-rw-r--r--src/Specific/solinas64_2e511m187_10limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e511m187_10limbs/freezeDisplay.log38
-rw-r--r--src/Specific/solinas64_2e511m187_10limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e511m187_10limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e511m187_11limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e511m187_11limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e511m187_11limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e511m187_11limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e511m187_11limbs/feadd.c36
-rw-r--r--src/Specific/solinas64_2e511m187_11limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e511m187_11limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e511m187_11limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e511m187_11limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e511m187_11limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e511m187_11limbs/femul.c85
-rw-r--r--src/Specific/solinas64_2e511m187_11limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e511m187_11limbs/femulDisplay.log56
-rw-r--r--src/Specific/solinas64_2e511m187_11limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e511m187_11limbs/fesquare.c74
-rw-r--r--src/Specific/solinas64_2e511m187_11limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e511m187_11limbs/fesquareDisplay.log56
-rw-r--r--src/Specific/solinas64_2e511m187_11limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e511m187_11limbs/fesub.c36
-rw-r--r--src/Specific/solinas64_2e511m187_11limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e511m187_11limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e511m187_11limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e511m187_11limbs/freeze.c59
-rw-r--r--src/Specific/solinas64_2e511m187_11limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e511m187_11limbs/freezeDisplay.log41
-rw-r--r--src/Specific/solinas64_2e511m187_11limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e511m187_11limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e511m481_10limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e511m481_10limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e511m481_10limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e511m481_10limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e511m481_10limbs/feadd.c33
-rw-r--r--src/Specific/solinas64_2e511m481_10limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e511m481_10limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e511m481_10limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e511m481_10limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e511m481_10limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e511m481_10limbs/femul.c78
-rw-r--r--src/Specific/solinas64_2e511m481_10limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e511m481_10limbs/femulDisplay.log52
-rw-r--r--src/Specific/solinas64_2e511m481_10limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e511m481_10limbs/fesquare.c68
-rw-r--r--src/Specific/solinas64_2e511m481_10limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e511m481_10limbs/fesquareDisplay.log52
-rw-r--r--src/Specific/solinas64_2e511m481_10limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e511m481_10limbs/fesub.c33
-rw-r--r--src/Specific/solinas64_2e511m481_10limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e511m481_10limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e511m481_10limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e511m481_10limbs/freeze.c54
-rw-r--r--src/Specific/solinas64_2e511m481_10limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e511m481_10limbs/freezeDisplay.log38
-rw-r--r--src/Specific/solinas64_2e511m481_10limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e511m481_10limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e511m481_11limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e511m481_11limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e511m481_11limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e511m481_11limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e511m481_11limbs/feadd.c36
-rw-r--r--src/Specific/solinas64_2e511m481_11limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e511m481_11limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e511m481_11limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e511m481_11limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e511m481_11limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e511m481_11limbs/femul.c85
-rw-r--r--src/Specific/solinas64_2e511m481_11limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e511m481_11limbs/femulDisplay.log56
-rw-r--r--src/Specific/solinas64_2e511m481_11limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e511m481_11limbs/fesquare.c74
-rw-r--r--src/Specific/solinas64_2e511m481_11limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e511m481_11limbs/fesquareDisplay.log56
-rw-r--r--src/Specific/solinas64_2e511m481_11limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e511m481_11limbs/fesub.c36
-rw-r--r--src/Specific/solinas64_2e511m481_11limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e511m481_11limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e511m481_11limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e511m481_11limbs/freeze.c59
-rw-r--r--src/Specific/solinas64_2e511m481_11limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e511m481_11limbs/freezeDisplay.log41
-rw-r--r--src/Specific/solinas64_2e511m481_11limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e511m481_11limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e512m569_10limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e512m569_10limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e512m569_10limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e512m569_10limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e512m569_10limbs/feadd.c33
-rw-r--r--src/Specific/solinas64_2e512m569_10limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e512m569_10limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e512m569_10limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e512m569_10limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e512m569_10limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e512m569_10limbs/femul.c78
-rw-r--r--src/Specific/solinas64_2e512m569_10limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e512m569_10limbs/femulDisplay.log52
-rw-r--r--src/Specific/solinas64_2e512m569_10limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e512m569_10limbs/fesquare.c68
-rw-r--r--src/Specific/solinas64_2e512m569_10limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e512m569_10limbs/fesquareDisplay.log52
-rw-r--r--src/Specific/solinas64_2e512m569_10limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e512m569_10limbs/fesub.c33
-rw-r--r--src/Specific/solinas64_2e512m569_10limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e512m569_10limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e512m569_10limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e512m569_10limbs/freeze.c54
-rw-r--r--src/Specific/solinas64_2e512m569_10limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e512m569_10limbs/freezeDisplay.log38
-rw-r--r--src/Specific/solinas64_2e512m569_10limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e512m569_10limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e512m569_11limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e512m569_11limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e512m569_11limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e512m569_11limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e512m569_11limbs/feadd.c36
-rw-r--r--src/Specific/solinas64_2e512m569_11limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e512m569_11limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e512m569_11limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e512m569_11limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e512m569_11limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e512m569_11limbs/femul.c85
-rw-r--r--src/Specific/solinas64_2e512m569_11limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e512m569_11limbs/femulDisplay.log56
-rw-r--r--src/Specific/solinas64_2e512m569_11limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e512m569_11limbs/fesquare.c74
-rw-r--r--src/Specific/solinas64_2e512m569_11limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e512m569_11limbs/fesquareDisplay.log56
-rw-r--r--src/Specific/solinas64_2e512m569_11limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e512m569_11limbs/fesub.c36
-rw-r--r--src/Specific/solinas64_2e512m569_11limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e512m569_11limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e512m569_11limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e512m569_11limbs/freeze.c59
-rw-r--r--src/Specific/solinas64_2e512m569_11limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e512m569_11limbs/freezeDisplay.log41
-rw-r--r--src/Specific/solinas64_2e512m569_11limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e512m569_11limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e521m1_10limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e521m1_10limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e521m1_10limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e521m1_10limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e521m1_10limbs/feadd.c33
-rw-r--r--src/Specific/solinas64_2e521m1_10limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e521m1_10limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e521m1_10limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e521m1_10limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e521m1_10limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e521m1_10limbs/femul.c78
-rw-r--r--src/Specific/solinas64_2e521m1_10limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e521m1_10limbs/femulDisplay.log52
-rw-r--r--src/Specific/solinas64_2e521m1_10limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e521m1_10limbs/fesquare.c68
-rw-r--r--src/Specific/solinas64_2e521m1_10limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e521m1_10limbs/fesquareDisplay.log52
-rw-r--r--src/Specific/solinas64_2e521m1_10limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e521m1_10limbs/fesub.c33
-rw-r--r--src/Specific/solinas64_2e521m1_10limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e521m1_10limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e521m1_10limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e521m1_10limbs/freeze.c54
-rw-r--r--src/Specific/solinas64_2e521m1_10limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e521m1_10limbs/freezeDisplay.log38
-rw-r--r--src/Specific/solinas64_2e521m1_10limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e521m1_10limbs/py_interpreter.sh4
-rw-r--r--src/Specific/solinas64_2e521m1_9limbs/CurveParameters.v39
-rw-r--r--src/Specific/solinas64_2e521m1_9limbs/Synthesis.v9
-rwxr-xr-xsrc/Specific/solinas64_2e521m1_9limbs/compiler.sh4
-rwxr-xr-xsrc/Specific/solinas64_2e521m1_9limbs/compilerxx.sh4
-rw-r--r--src/Specific/solinas64_2e521m1_9limbs/feadd.c30
-rw-r--r--src/Specific/solinas64_2e521m1_9limbs/feadd.v14
-rw-r--r--src/Specific/solinas64_2e521m1_9limbs/feaddDisplay.log7
-rw-r--r--src/Specific/solinas64_2e521m1_9limbs/feaddDisplay.v4
-rw-r--r--src/Specific/solinas64_2e521m1_9limbs/fecarry.v14
-rw-r--r--src/Specific/solinas64_2e521m1_9limbs/fecarryDisplay.v4
-rw-r--r--src/Specific/solinas64_2e521m1_9limbs/femul.c71
-rw-r--r--src/Specific/solinas64_2e521m1_9limbs/femul.v14
-rw-r--r--src/Specific/solinas64_2e521m1_9limbs/femulDisplay.log48
-rw-r--r--src/Specific/solinas64_2e521m1_9limbs/femulDisplay.v4
-rw-r--r--src/Specific/solinas64_2e521m1_9limbs/fesquare.c62
-rw-r--r--src/Specific/solinas64_2e521m1_9limbs/fesquare.v14
-rw-r--r--src/Specific/solinas64_2e521m1_9limbs/fesquareDisplay.log48
-rw-r--r--src/Specific/solinas64_2e521m1_9limbs/fesquareDisplay.v4
-rw-r--r--src/Specific/solinas64_2e521m1_9limbs/fesub.c30
-rw-r--r--src/Specific/solinas64_2e521m1_9limbs/fesub.v14
-rw-r--r--src/Specific/solinas64_2e521m1_9limbs/fesubDisplay.log7
-rw-r--r--src/Specific/solinas64_2e521m1_9limbs/fesubDisplay.v4
-rw-r--r--src/Specific/solinas64_2e521m1_9limbs/freeze.c49
-rw-r--r--src/Specific/solinas64_2e521m1_9limbs/freeze.v14
-rw-r--r--src/Specific/solinas64_2e521m1_9limbs/freezeDisplay.log35
-rw-r--r--src/Specific/solinas64_2e521m1_9limbs/freezeDisplay.v4
-rwxr-xr-xsrc/Specific/solinas64_2e521m1_9limbs/py_interpreter.sh4
12226 files changed, 0 insertions, 269440 deletions
diff --git a/src/Specific/CurveParameters/X25519_C64/scalarmult.c b/src/Specific/CurveParameters/X25519_C64/scalarmult.c
deleted file mode 100644
index ffe015012..000000000
--- a/src/Specific/CurveParameters/X25519_C64/scalarmult.c
+++ /dev/null
@@ -1,309 +0,0 @@
-// The synthesized parts are from fiat-crypto, copyright MIT 2017.
-// The synthesis framework is released under the MIT license.
-// The non-synthesized parts are from curve25519-donna by Adam Langley (Google):
-/* Copyright 2008, Google Inc.
- * All rights reserved.
- *
- * Code released into the public domain.
- *
- * curve25519-donna: Curve25519 elliptic curve, public key function
- *
- * http://code.google.com/p/curve25519-donna/
- *
- * (modified by Andres Erbsen and Jason Gross)
- * Adam Langley <agl@imperialviolet.org>
- * Parts optimised by floodyberry
- * Derived from public domain C code by Daniel J. Bernstein <djb@cr.yp.to>
- *
- * More information about curve25519 can be found here
- * http://cr.yp.to/ecdh.html
- *
- * djb's sample implementation of curve25519 is written in a special assembly
- * language called qhasm and uses the floating point registers.
- *
- * This is, almost, a clean room reimplementation from the curve25519 paper. It
- * uses many of the tricks described therein. Only the crecip function is taken
- * from the sample implementation.
- */
-
-#include <string.h>
-#include <stdint.h>
-
-#include "femul.h"
-#include "fesquare.h"
-#include "ladderstep.h"
-
-typedef unsigned int uint128_t __attribute__((mode(TI)));
-
-#undef force_inline
-#define force_inline __attribute__((always_inline))
-
-typedef uint8_t u8;
-typedef uint64_t limb;
-typedef limb felem[5];
-
-static void force_inline
-fmul(felem output, const felem in2, const felem in) {
- uint64_t out[5];
- femul(out,
- in2[4], in2[3], in2[2], in2[1], in2[0],
- in[4], in[3], in[2], in[1], in[0]);
- output[4] = out[0];
- output[3] = out[1];
- output[2] = out[2];
- output[1] = out[3];
- output[0] = out[4];
-}
-
-static void force_inline
-fsquare_times(felem output, const felem in, limb count) {
- uint64_t r0 = in[0];
- uint64_t r1 = in[1];
- uint64_t r2 = in[2];
- uint64_t r3 = in[3];
- uint64_t r4 = in[4];
-
- do {
- uint64_t out[5];
- fesquare(out, r4, r3, r2, r1, r0);
- r4 = out[0];
- r3 = out[1];
- r2 = out[2];
- r1 = out[3];
- r0 = out[4];
- } while(--count);
-
- output[0] = r0;
- output[1] = r1;
- output[2] = r2;
- output[3] = r3;
- output[4] = r4;
-}
-
-/* Take a little-endian, 32-byte number and expand it into polynomial form */
-static void
-fexpand(limb *output, const u8 *in) {
- output[0] = *((const uint64_t *)(in)) & 0x7ffffffffffff;
- output[1] = (*((const uint64_t *)(in+6)) >> 3) & 0x7ffffffffffff;
- output[2] = (*((const uint64_t *)(in+12)) >> 6) & 0x7ffffffffffff;
- output[3] = (*((const uint64_t *)(in+19)) >> 1) & 0x7ffffffffffff;
- output[4] = (*((const uint64_t *)(in+25)) >> 4) & 0x7ffffffffffff;
-}
-
-/* Take a fully reduced polynomial form number and contract it into a
- * little-endian, 32-byte array
- */
-static void
-fcontract(u8 *output, const felem input) {
- uint128_t t[5];
-
- t[0] = input[0];
- t[1] = input[1];
- t[2] = input[2];
- t[3] = input[3];
- t[4] = input[4];
-
- t[1] += t[0] >> 51; t[0] &= 0x7ffffffffffff;
- t[2] += t[1] >> 51; t[1] &= 0x7ffffffffffff;
- t[3] += t[2] >> 51; t[2] &= 0x7ffffffffffff;
- t[4] += t[3] >> 51; t[3] &= 0x7ffffffffffff;
- t[0] += 19 * (t[4] >> 51); t[4] &= 0x7ffffffffffff;
-
- t[1] += t[0] >> 51; t[0] &= 0x7ffffffffffff;
- t[2] += t[1] >> 51; t[1] &= 0x7ffffffffffff;
- t[3] += t[2] >> 51; t[2] &= 0x7ffffffffffff;
- t[4] += t[3] >> 51; t[3] &= 0x7ffffffffffff;
- t[0] += 19 * (t[4] >> 51); t[4] &= 0x7ffffffffffff;
-
- /* now t is between 0 and 2^255-1, properly carried. */
- /* case 1: between 0 and 2^255-20. case 2: between 2^255-19 and 2^255-1. */
-
- t[0] += 19;
-
- t[1] += t[0] >> 51; t[0] &= 0x7ffffffffffff;
- t[2] += t[1] >> 51; t[1] &= 0x7ffffffffffff;
- t[3] += t[2] >> 51; t[2] &= 0x7ffffffffffff;
- t[4] += t[3] >> 51; t[3] &= 0x7ffffffffffff;
- t[0] += 19 * (t[4] >> 51); t[4] &= 0x7ffffffffffff;
-
- /* now between 19 and 2^255-1 in both cases, and offset by 19. */
-
- t[0] += 0x8000000000000 - 19;
- t[1] += 0x8000000000000 - 1;
- t[2] += 0x8000000000000 - 1;
- t[3] += 0x8000000000000 - 1;
- t[4] += 0x8000000000000 - 1;
-
- /* now between 2^255 and 2^256-20, and offset by 2^255. */
-
- t[1] += t[0] >> 51; t[0] &= 0x7ffffffffffff;
- t[2] += t[1] >> 51; t[1] &= 0x7ffffffffffff;
- t[3] += t[2] >> 51; t[2] &= 0x7ffffffffffff;
- t[4] += t[3] >> 51; t[3] &= 0x7ffffffffffff;
- t[4] &= 0x7ffffffffffff;
-
- *((uint64_t *)(output)) = t[0] | (t[1] << 51);
- *((uint64_t *)(output+8)) = (t[1] >> 13) | (t[2] << 38);
- *((uint64_t *)(output+16)) = (t[2] >> 26) | (t[3] << 25);
- *((uint64_t *)(output+24)) = (t[3] >> 39) | (t[4] << 12);
-}
-
-/* Input: Q, Q', Q-Q'
- * Output: 2Q, Q+Q'
- */
-static void
-fmonty(limb *x2, limb *z2, /* output 2Q */
- limb *x3, limb *z3, /* output Q + Q' */
- limb *x, limb *z, /* input Q */
- limb *xprime, limb *zprime, /* input Q' */
- const limb *qmqp /* input Q - Q' */) {
- uint64_t out[20];
- ladderstep(out, qmqp[4], qmqp[3], qmqp[2], qmqp[1], qmqp[0], x[4], x[3], x[2], x[1], x[0], z[4], z[3], z[2], z[1], z[0], xprime[4], xprime[3], xprime[2], xprime[1], xprime[0], zprime[4], zprime[3], zprime[2], zprime[1], zprime[0]);
- x2[4] = out[ 0];
- x2[3] = out[ 1];
- x2[2] = out[ 2];
- x2[1] = out[ 3];
- x2[0] = out[ 4];
- z2[4] = out[ 5];
- z2[3] = out[ 6];
- z2[2] = out[ 7];
- z2[1] = out[ 8];
- z2[0] = out[ 9];
- x3[4] = out[10];
- x3[3] = out[11];
- x3[2] = out[12];
- x3[1] = out[13];
- x3[0] = out[14];
- z3[4] = out[15];
- z3[3] = out[16];
- z3[2] = out[17];
- z3[1] = out[18];
- z3[0] = out[19];
-}
-
-// -----------------------------------------------------------------------------
-// Maybe swap the contents of two limb arrays (@a and @b), each @len elements
-// long. Perform the swap iff @swap is non-zero.
-//
-// This function performs the swap without leaking any side-channel
-// information.
-// -----------------------------------------------------------------------------
-static void
-swap_conditional(limb a[5], limb b[5], limb iswap) {
- unsigned i;
- const limb swap = -iswap;
-
- for (i = 0; i < 5; ++i) {
- const limb x = swap & (a[i] ^ b[i]);
- a[i] ^= x;
- b[i] ^= x;
- }
-}
-
-/* Calculates nQ where Q is the x-coordinate of a point on the curve
- *
- * resultx/resultz: the x coordinate of the resulting curve point (short form)
- * n: a little endian, 32-byte number
- * q: a point of the curve (short form)
- */
-static void
-cmult(limb *resultx, limb *resultz, const u8 *n, const limb *q) {
- limb a[5] = {0}, b[5] = {1}, c[5] = {1}, d[5] = {0};
- limb *nqpqx = a, *nqpqz = b, *nqx = c, *nqz = d, *t;
- limb e[5] = {0}, f[5] = {1}, g[5] = {0}, h[5] = {1};
- limb *nqpqx2 = e, *nqpqz2 = f, *nqx2 = g, *nqz2 = h;
-
- unsigned i, j;
-
- memcpy(nqpqx, q, sizeof(limb) * 5);
-
- for (i = 0; i < 32; ++i) {
- u8 byte = n[31 - i];
- for (j = 0; j < 8; ++j) {
- const limb bit = byte >> 7;
-
- swap_conditional(nqx, nqpqx, bit);
- swap_conditional(nqz, nqpqz, bit);
- fmonty(nqx2, nqz2,
- nqpqx2, nqpqz2,
- nqx, nqz,
- nqpqx, nqpqz,
- q);
- swap_conditional(nqx2, nqpqx2, bit);
- swap_conditional(nqz2, nqpqz2, bit);
-
- t = nqx;
- nqx = nqx2;
- nqx2 = t;
- t = nqz;
- nqz = nqz2;
- nqz2 = t;
- t = nqpqx;
- nqpqx = nqpqx2;
- nqpqx2 = t;
- t = nqpqz;
- nqpqz = nqpqz2;
- nqpqz2 = t;
-
- byte <<= 1;
- }
- }
-
- memcpy(resultx, nqx, sizeof(limb) * 5);
- memcpy(resultz, nqz, sizeof(limb) * 5);
-}
-
-
-// -----------------------------------------------------------------------------
-// Shamelessly copied from djb's code, tightened a little
-// -----------------------------------------------------------------------------
-static void
-crecip(felem out, const felem z) {
- felem a,t0,b,c;
-
- /* 2 */ fsquare_times(a, z, 1); // a = 2
- /* 8 */ fsquare_times(t0, a, 2);
- /* 9 */ fmul(b, t0, z); // b = 9
- /* 11 */ fmul(a, b, a); // a = 11
- /* 22 */ fsquare_times(t0, a, 1);
- /* 2^5 - 2^0 = 31 */ fmul(b, t0, b);
- /* 2^10 - 2^5 */ fsquare_times(t0, b, 5);
- /* 2^10 - 2^0 */ fmul(b, t0, b);
- /* 2^20 - 2^10 */ fsquare_times(t0, b, 10);
- /* 2^20 - 2^0 */ fmul(c, t0, b);
- /* 2^40 - 2^20 */ fsquare_times(t0, c, 20);
- /* 2^40 - 2^0 */ fmul(t0, t0, c);
- /* 2^50 - 2^10 */ fsquare_times(t0, t0, 10);
- /* 2^50 - 2^0 */ fmul(b, t0, b);
- /* 2^100 - 2^50 */ fsquare_times(t0, b, 50);
- /* 2^100 - 2^0 */ fmul(c, t0, b);
- /* 2^200 - 2^100 */ fsquare_times(t0, c, 100);
- /* 2^200 - 2^0 */ fmul(t0, t0, c);
- /* 2^250 - 2^50 */ fsquare_times(t0, t0, 50);
- /* 2^250 - 2^0 */ fmul(t0, t0, b);
- /* 2^255 - 2^5 */ fsquare_times(t0, t0, 5);
- /* 2^255 - 21 */ fmul(out, t0, a);
-}
-
-int
-crypto_scalarmult(u8 *mypublic, const u8 *secret, const u8 *basepoint) {
- limb bp[5], x[5], z[5], zmone[5];
- uint8_t e[32];
- int i;
-
- for (i = 0;i < 32;++i) e[i] = secret[i];
- e[0] &= 248;
- e[31] &= 127;
- e[31] |= 64;
-
- fexpand(bp, basepoint);
- cmult(x, z, e, bp);
- crecip(zmone, z);
- fmul(z, x, zmone);
- fcontract(mypublic, z);
- return 0;
-}
-
-void crypto_scalarmult_bench(unsigned char* buf) {
- crypto_scalarmult(buf, buf+32, buf+64);
-}
diff --git a/src/Specific/CurveParameters/montgomery32/fesquare.c b/src/Specific/CurveParameters/montgomery32/fesquare.c
deleted file mode 100644
index 8916b2140..000000000
--- a/src/Specific/CurveParameters/montgomery32/fesquare.c
+++ /dev/null
@@ -1,3 +0,0 @@
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e127m1_4limbs.json b/src/Specific/CurveParameters/montgomery32_2e127m1_4limbs.json
deleted file mode 100644
index 56bd8c3f6..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e127m1_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='16' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<127) - 1'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='16' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<127) - 1'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^127 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e129m25_5limbs.json b/src/Specific/CurveParameters/montgomery32_2e129m25_5limbs.json
deleted file mode 100644
index f85879542..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e129m25_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<129) - 25'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<129) - 25'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^129 - 25",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e130m5_5limbs.json b/src/Specific/CurveParameters/montgomery32_2e130m5_5limbs.json
deleted file mode 100644
index 3dbf93da1..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e130m5_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<130) - 5'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<130) - 5'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^130 - 5",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e137m13_5limbs.json b/src/Specific/CurveParameters/montgomery32_2e137m13_5limbs.json
deleted file mode 100644
index c4f236c33..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e137m13_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<137) - 13'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<137) - 13'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^137 - 13",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e140m27_5limbs.json b/src/Specific/CurveParameters/montgomery32_2e140m27_5limbs.json
deleted file mode 100644
index 43bf4b1e4..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e140m27_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<140) - 27'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<140) - 27'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^140 - 27",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e141m9_5limbs.json b/src/Specific/CurveParameters/montgomery32_2e141m9_5limbs.json
deleted file mode 100644
index 62cf47bae..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e141m9_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<141) - 9'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<141) - 9'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^141 - 9",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e150m3_5limbs.json b/src/Specific/CurveParameters/montgomery32_2e150m3_5limbs.json
deleted file mode 100644
index 9bec46e04..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e150m3_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<150) - 3'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<150) - 3'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^150 - 3",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e150m5_5limbs.json b/src/Specific/CurveParameters/montgomery32_2e150m5_5limbs.json
deleted file mode 100644
index 4bd9560dc..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e150m5_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<150) - 5'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<150) - 5'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^150 - 5",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e152m17_5limbs.json b/src/Specific/CurveParameters/montgomery32_2e152m17_5limbs.json
deleted file mode 100644
index e92d54055..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e152m17_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<152) - 17'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<152) - 17'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^152 - 17",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e158m15_5limbs.json b/src/Specific/CurveParameters/montgomery32_2e158m15_5limbs.json
deleted file mode 100644
index 8f8a15f1b..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e158m15_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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='{32,32,32,32,32}' -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='5' -Dq_mpz='(1_mpz<<158) - 15'",
- "compilerxx": "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='{32,32,32,32,32}' -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='5' -Dq_mpz='(1_mpz<<158) - 15'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^158 - 15",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e165m25_6limbs.json b/src/Specific/CurveParameters/montgomery32_2e165m25_6limbs.json
deleted file mode 100644
index c7b6c49e4..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e165m25_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<165) - 25'",
- "compilerxx": "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,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<165) - 25'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^165 - 25",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e166m5_6limbs.json b/src/Specific/CurveParameters/montgomery32_2e166m5_6limbs.json
deleted file mode 100644
index 2582b7077..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e166m5_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<166) - 5'",
- "compilerxx": "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,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<166) - 5'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^166 - 5",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e171m19_6limbs.json b/src/Specific/CurveParameters/montgomery32_2e171m19_6limbs.json
deleted file mode 100644
index 7451ca8fb..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e171m19_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<171) - 19'",
- "compilerxx": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<171) - 19'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^171 - 19",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e174m17_6limbs.json b/src/Specific/CurveParameters/montgomery32_2e174m17_6limbs.json
deleted file mode 100644
index 41b18c6c5..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e174m17_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<174) - 17'",
- "compilerxx": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<174) - 17'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^174 - 17",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e174m3_6limbs.json b/src/Specific/CurveParameters/montgomery32_2e174m3_6limbs.json
deleted file mode 100644
index 1d0311e19..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e174m3_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<174) - 3'",
- "compilerxx": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<174) - 3'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^174 - 3",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e189m25_6limbs.json b/src/Specific/CurveParameters/montgomery32_2e189m25_6limbs.json
deleted file mode 100644
index 1896d13b6..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e189m25_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<189) - 25'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<189) - 25'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^189 - 25",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e190m11_6limbs.json b/src/Specific/CurveParameters/montgomery32_2e190m11_6limbs.json
deleted file mode 100644
index db86c295d..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e190m11_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<190) - 11'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<190) - 11'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^190 - 11",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e191m19_6limbs.json b/src/Specific/CurveParameters/montgomery32_2e191m19_6limbs.json
deleted file mode 100644
index 6c652cd99..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e191m19_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<191) - 19'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<191) - 19'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^191 - 19",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e192m2e64m1_6limbs.json b/src/Specific/CurveParameters/montgomery32_2e192m2e64m1_6limbs.json
deleted file mode 100644
index 4e96f04b6..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e192m2e64m1_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^192 - 2^64 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e194m33_7limbs.json b/src/Specific/CurveParameters/montgomery32_2e194m33_7limbs.json
deleted file mode 100644
index 8442d544e..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e194m33_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<194) - 33'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<194) - 33'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^194 - 33",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e196m15_7limbs.json b/src/Specific/CurveParameters/montgomery32_2e196m15_7limbs.json
deleted file mode 100644
index e358418d1..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e196m15_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<196) - 15'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<196) - 15'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^196 - 15",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e198m17_7limbs.json b/src/Specific/CurveParameters/montgomery32_2e198m17_7limbs.json
deleted file mode 100644
index 935733ded..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e198m17_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<198) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<198) - 17'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^198 - 17",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e205m45x2e198m1_7limbs.json b/src/Specific/CurveParameters/montgomery32_2e205m45x2e198m1_7limbs.json
deleted file mode 100644
index 432582b89..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e205m45x2e198m1_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^205 - 45*2^198 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e206m5_7limbs.json b/src/Specific/CurveParameters/montgomery32_2e206m5_7limbs.json
deleted file mode 100644
index 5226fccaf..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e206m5_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<206) - 5'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<206) - 5'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^206 - 5",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e212m29_7limbs.json b/src/Specific/CurveParameters/montgomery32_2e212m29_7limbs.json
deleted file mode 100644
index c14bab0a8..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e212m29_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<212) - 29'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<212) - 29'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^212 - 29",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e213m3_7limbs.json b/src/Specific/CurveParameters/montgomery32_2e213m3_7limbs.json
deleted file mode 100644
index 302ee7a6d..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e213m3_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<213) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<213) - 3'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^213 - 3",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e216m2e108m1_7limbs.json b/src/Specific/CurveParameters/montgomery32_2e216m2e108m1_7limbs.json
deleted file mode 100644
index 760f8b928..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e216m2e108m1_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^216 - 2^108 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e221m3_7limbs.json b/src/Specific/CurveParameters/montgomery32_2e221m3_7limbs.json
deleted file mode 100644
index ceb71751c..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e221m3_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<221) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<221) - 3'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^221 - 3",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e222m117_7limbs.json b/src/Specific/CurveParameters/montgomery32_2e222m117_7limbs.json
deleted file mode 100644
index 93db3088e..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e222m117_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<222) - 117'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<222) - 117'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^222 - 117",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e224m2e96p1_7limbs.json b/src/Specific/CurveParameters/montgomery32_2e224m2e96p1_7limbs.json
deleted file mode 100644
index 21d7ab1ae..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e224m2e96p1_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^224 - 2^96 + 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e226m5_8limbs.json b/src/Specific/CurveParameters/montgomery32_2e226m5_8limbs.json
deleted file mode 100644
index e297975cc..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e226m5_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<226) - 5'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<226) - 5'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^226 - 5",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e230m27_8limbs.json b/src/Specific/CurveParameters/montgomery32_2e230m27_8limbs.json
deleted file mode 100644
index dc8439e7f..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e230m27_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<230) - 27'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<230) - 27'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^230 - 27",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e235m15_8limbs.json b/src/Specific/CurveParameters/montgomery32_2e235m15_8limbs.json
deleted file mode 100644
index 6d0656232..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e235m15_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='30' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<235) - 15'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='30' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<235) - 15'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^235 - 15",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e243m9_8limbs.json b/src/Specific/CurveParameters/montgomery32_2e243m9_8limbs.json
deleted file mode 100644
index 698f14d1f..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e243m9_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='31' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<243) - 9'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='31' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<243) - 9'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^243 - 9",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e251m9_8limbs.json b/src/Specific/CurveParameters/montgomery32_2e251m9_8limbs.json
deleted file mode 100644
index 8733e4e61..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e251m9_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<251) - 9'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<251) - 9'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^251 - 9",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e254m127x2e240m1_8limbs.json b/src/Specific/CurveParameters/montgomery32_2e254m127x2e240m1_8limbs.json
deleted file mode 100644
index b16a6b7e0..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e254m127x2e240m1_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^254 - 127*2^240 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e255m19_8limbs.json b/src/Specific/CurveParameters/montgomery32_2e255m19_8limbs.json
deleted file mode 100644
index 2c83c9517..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e255m19_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<255) - 19'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<255) - 19'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^255 - 19",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e255m765_8limbs.json b/src/Specific/CurveParameters/montgomery32_2e255m765_8limbs.json
deleted file mode 100644
index ec7d7000b..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e255m765_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<255) - 765'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<255) - 765'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^255 - 765",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e256m189_8limbs.json b/src/Specific/CurveParameters/montgomery32_2e256m189_8limbs.json
deleted file mode 100644
index 0192ec5ae..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e256m189_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<256) - 189'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<256) - 189'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^256 - 189",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e256m2e224p2e192p2e96m1_8limbs.json b/src/Specific/CurveParameters/montgomery32_2e256m2e224p2e192p2e96m1_8limbs.json
deleted file mode 100644
index 4deaa7289..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e256m2e224p2e192p2e96m1_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^256 - 2^224 + 2^192 + 2^96 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e256m2e32m977_8limbs.json b/src/Specific/CurveParameters/montgomery32_2e256m2e32m977_8limbs.json
deleted file mode 100644
index c52a737c2..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e256m2e32m977_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^256 - 2^32 - 977",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e256m4294968273_8limbs.json b/src/Specific/CurveParameters/montgomery32_2e256m4294968273_8limbs.json
deleted file mode 100644
index 752f93c96..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e256m4294968273_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<256) - 4294968273'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<256) - 4294968273'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^256 - 4294968273",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e256m88x2e240m1_8limbs.json b/src/Specific/CurveParameters/montgomery32_2e256m88x2e240m1_8limbs.json
deleted file mode 100644
index 9a7089f2d..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e256m88x2e240m1_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^256 - 88*2^240 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e266m3_9limbs.json b/src/Specific/CurveParameters/montgomery32_2e266m3_9limbs.json
deleted file mode 100644
index e881324f1..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e266m3_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='34' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<266) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='34' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<266) - 3'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^266 - 3",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e285m9_9limbs.json b/src/Specific/CurveParameters/montgomery32_2e285m9_9limbs.json
deleted file mode 100644
index b2e4dc723..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e285m9_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='36' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<285) - 9'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='36' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<285) - 9'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^285 - 9",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e291m19_10limbs.json b/src/Specific/CurveParameters/montgomery32_2e291m19_10limbs.json
deleted file mode 100644
index 2c9d15a3a..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e291m19_10limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,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='{32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='37' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<291) - 19'",
- "compilerxx": "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,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='{32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='37' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<291) - 19'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^291 - 19",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "10"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e321m9_11limbs.json b/src/Specific/CurveParameters/montgomery32_2e321m9_11limbs.json
deleted file mode 100644
index 36d27ed36..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e321m9_11limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<321) - 9'",
- "compilerxx": "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,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<321) - 9'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^321 - 9",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "11"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e322m2e161m1_11limbs.json b/src/Specific/CurveParameters/montgomery32_2e322m2e161m1_11limbs.json
deleted file mode 100644
index 09720ca5c..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e322m2e161m1_11limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^322 - 2^161 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "11"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e336m17_11limbs.json b/src/Specific/CurveParameters/montgomery32_2e336m17_11limbs.json
deleted file mode 100644
index 21c401781..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e336m17_11limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<336) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<336) - 17'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^336 - 17",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "11"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e336m3_11limbs.json b/src/Specific/CurveParameters/montgomery32_2e336m3_11limbs.json
deleted file mode 100644
index 903113d62..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e336m3_11limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<336) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<336) - 3'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^336 - 3",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "11"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e338m15_11limbs.json b/src/Specific/CurveParameters/montgomery32_2e338m15_11limbs.json
deleted file mode 100644
index a11519e8c..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e338m15_11limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='43' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<338) - 15'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='43' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<338) - 15'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^338 - 15",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "11"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e369m25_12limbs.json b/src/Specific/CurveParameters/montgomery32_2e369m25_12limbs.json
deleted file mode 100644
index 1eb7d788b..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e369m25_12limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='47' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<369) - 25'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='47' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<369) - 25'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^369 - 25",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "12"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e379m19_12limbs.json b/src/Specific/CurveParameters/montgomery32_2e379m19_12limbs.json
deleted file mode 100644
index 466801ea8..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e379m19_12limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<379) - 19'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<379) - 19'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^379 - 19",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "12"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e382m105_12limbs.json b/src/Specific/CurveParameters/montgomery32_2e382m105_12limbs.json
deleted file mode 100644
index 9bba1b230..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e382m105_12limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<382) - 105'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<382) - 105'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^382 - 105",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "12"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e383m187_12limbs.json b/src/Specific/CurveParameters/montgomery32_2e383m187_12limbs.json
deleted file mode 100644
index 8b89d6e7b..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e383m187_12limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<383) - 187'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<383) - 187'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^383 - 187",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "12"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e383m31_12limbs.json b/src/Specific/CurveParameters/montgomery32_2e383m31_12limbs.json
deleted file mode 100644
index 477490838..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e383m31_12limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<383) - 31'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<383) - 31'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^383 - 31",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "12"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e383m421_12limbs.json b/src/Specific/CurveParameters/montgomery32_2e383m421_12limbs.json
deleted file mode 100644
index 28e3fc4c7..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e383m421_12limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<383) - 421'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<383) - 421'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^383 - 421",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "12"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e384m2e128m2e96p2e32m1_12limbs.json b/src/Specific/CurveParameters/montgomery32_2e384m2e128m2e96p2e32m1_12limbs.json
deleted file mode 100644
index b65d7be7d..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e384m2e128m2e96p2e32m1_12limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^384 - 2^128 - 2^96 + 2^32 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "12"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e384m317_12limbs.json b/src/Specific/CurveParameters/montgomery32_2e384m317_12limbs.json
deleted file mode 100644
index 1fb8c0c67..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e384m317_12limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<384) - 317'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<384) - 317'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^384 - 317",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "12"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e384m5x2e368m1_12limbs.json b/src/Specific/CurveParameters/montgomery32_2e384m5x2e368m1_12limbs.json
deleted file mode 100644
index 713f79d7c..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e384m5x2e368m1_12limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^384 - 5*2^368 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "12"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e384m79x2e376m1_12limbs.json b/src/Specific/CurveParameters/montgomery32_2e384m79x2e376m1_12limbs.json
deleted file mode 100644
index ecec92a1f..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e384m79x2e376m1_12limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^384 - 79*2^376 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "12"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e389m21_13limbs.json b/src/Specific/CurveParameters/montgomery32_2e389m21_13limbs.json
deleted file mode 100644
index 3e7283a0a..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e389m21_13limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='49' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<389) - 21'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='49' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<389) - 21'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^389 - 21",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "13"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e401m31_13limbs.json b/src/Specific/CurveParameters/montgomery32_2e401m31_13limbs.json
deleted file mode 100644
index 59a125f64..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e401m31_13limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='51' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<401) - 31'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='51' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<401) - 31'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^401 - 31",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "13"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e413m21_13limbs.json b/src/Specific/CurveParameters/montgomery32_2e413m21_13limbs.json
deleted file mode 100644
index e8fac478d..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e413m21_13limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<413) - 21'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<413) - 21'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^413 - 21",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "13"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e414m17_13limbs.json b/src/Specific/CurveParameters/montgomery32_2e414m17_13limbs.json
deleted file mode 100644
index a87819156..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e414m17_13limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<414) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<414) - 17'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^414 - 17",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "13"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e416m2e208m1_13limbs.json b/src/Specific/CurveParameters/montgomery32_2e416m2e208m1_13limbs.json
deleted file mode 100644
index c1a2dc471..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e416m2e208m1_13limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^416 - 2^208 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "13"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e444m17_14limbs.json b/src/Specific/CurveParameters/montgomery32_2e444m17_14limbs.json
deleted file mode 100644
index c7d38da91..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e444m17_14limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='14' -Dq_mpz='(1_mpz<<444) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='14' -Dq_mpz='(1_mpz<<444) - 17'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^444 - 17",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "14"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e448m2e224m1_14limbs.json b/src/Specific/CurveParameters/montgomery32_2e448m2e224m1_14limbs.json
deleted file mode 100644
index 7c298e754..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e448m2e224m1_14limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='14' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='14' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^448 - 2^224 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "14"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e450m2e225m1_15limbs.json b/src/Specific/CurveParameters/montgomery32_2e450m2e225m1_15limbs.json
deleted file mode 100644
index 424ac341d..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e450m2e225m1_15limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^450 - 2^225 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "15"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e452m3_15limbs.json b/src/Specific/CurveParameters/montgomery32_2e452m3_15limbs.json
deleted file mode 100644
index f1eb77e97..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e452m3_15limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<452) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<452) - 3'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^452 - 3",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "15"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e468m17_15limbs.json b/src/Specific/CurveParameters/montgomery32_2e468m17_15limbs.json
deleted file mode 100644
index 927b944e5..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e468m17_15limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='59' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<468) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='59' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<468) - 17'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^468 - 17",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "15"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e480m2e240m1_15limbs.json b/src/Specific/CurveParameters/montgomery32_2e480m2e240m1_15limbs.json
deleted file mode 100644
index b92015d58..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e480m2e240m1_15limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='60' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='60' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^480 - 2^240 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "15"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e488m17_16limbs.json b/src/Specific/CurveParameters/montgomery32_2e488m17_16limbs.json
deleted file mode 100644
index dd429625d..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e488m17_16limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='61' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<488) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='61' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<488) - 17'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^488 - 17",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "16"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e489m21_16limbs.json b/src/Specific/CurveParameters/montgomery32_2e489m21_16limbs.json
deleted file mode 100644
index 648633b43..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e489m21_16limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<489) - 21'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<489) - 21'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^489 - 21",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "16"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e495m31_16limbs.json b/src/Specific/CurveParameters/montgomery32_2e495m31_16limbs.json
deleted file mode 100644
index e07f3138d..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e495m31_16limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<495) - 31'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<495) - 31'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^495 - 31",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "16"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e510m290x2e496m1_16limbs.json b/src/Specific/CurveParameters/montgomery32_2e510m290x2e496m1_16limbs.json
deleted file mode 100644
index 8ce5988fa..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e510m290x2e496m1_16limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^510 - 290*2^496 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "16"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e511m187_16limbs.json b/src/Specific/CurveParameters/montgomery32_2e511m187_16limbs.json
deleted file mode 100644
index 7aa6dd892..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e511m187_16limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<511) - 187'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<511) - 187'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^511 - 187",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "16"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e511m481_16limbs.json b/src/Specific/CurveParameters/montgomery32_2e511m481_16limbs.json
deleted file mode 100644
index 431ba2f74..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e511m481_16limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<511) - 481'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<511) - 481'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^511 - 481",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "16"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e512m491x2e496m1_16limbs.json b/src/Specific/CurveParameters/montgomery32_2e512m491x2e496m1_16limbs.json
deleted file mode 100644
index 9a3b26bd7..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e512m491x2e496m1_16limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^512 - 491*2^496 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "16"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e512m569_16limbs.json b/src/Specific/CurveParameters/montgomery32_2e512m569_16limbs.json
deleted file mode 100644
index 34ee271a0..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e512m569_16limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<512) - 569'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<512) - 569'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^512 - 569",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "16"
-}
diff --git a/src/Specific/CurveParameters/montgomery32_2e521m1_17limbs.json b/src/Specific/CurveParameters/montgomery32_2e521m1_17limbs.json
deleted file mode 100644
index 529ce16c0..000000000
--- a/src/Specific/CurveParameters/montgomery32_2e521m1_17limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='66' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<521) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='66' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<521) - 1'",
- "extra_files": [
- "montgomery32/fesquare.c"
- ],
- "modulus": "2^521 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "17"
-}
diff --git a/src/Specific/CurveParameters/montgomery64/fesquare.c b/src/Specific/CurveParameters/montgomery64/fesquare.c
deleted file mode 100644
index cb844716c..000000000
--- a/src/Specific/CurveParameters/montgomery64/fesquare.c
+++ /dev/null
@@ -1,3 +0,0 @@
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e127m1_2limbs.json b/src/Specific/CurveParameters/montgomery64_2e127m1_2limbs.json
deleted file mode 100644
index c89c1b909..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e127m1_2limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='16' -Dmodulus_limbs='2' -Dq_mpz='(1_mpz<<127) - 1'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='16' -Dmodulus_limbs='2' -Dq_mpz='(1_mpz<<127) - 1'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^127 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "2"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e129m25_3limbs.json b/src/Specific/CurveParameters/montgomery64_2e129m25_3limbs.json
deleted file mode 100644
index be1175a46..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e129m25_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<129) - 25'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<129) - 25'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^129 - 25",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e130m5_3limbs.json b/src/Specific/CurveParameters/montgomery64_2e130m5_3limbs.json
deleted file mode 100644
index b772a22cb..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e130m5_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<130) - 5'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<130) - 5'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^130 - 5",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e137m13_3limbs.json b/src/Specific/CurveParameters/montgomery64_2e137m13_3limbs.json
deleted file mode 100644
index 7f3acab16..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e137m13_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<137) - 13'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<137) - 13'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^137 - 13",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e140m27_3limbs.json b/src/Specific/CurveParameters/montgomery64_2e140m27_3limbs.json
deleted file mode 100644
index 99518bd5e..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e140m27_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<140) - 27'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<140) - 27'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^140 - 27",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e141m9_3limbs.json b/src/Specific/CurveParameters/montgomery64_2e141m9_3limbs.json
deleted file mode 100644
index fe76033da..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e141m9_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<141) - 9'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<141) - 9'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^141 - 9",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e150m3_3limbs.json b/src/Specific/CurveParameters/montgomery64_2e150m3_3limbs.json
deleted file mode 100644
index 738015f69..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e150m3_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<150) - 3'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<150) - 3'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^150 - 3",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e150m5_3limbs.json b/src/Specific/CurveParameters/montgomery64_2e150m5_3limbs.json
deleted file mode 100644
index 2b6207b11..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e150m5_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<150) - 5'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<150) - 5'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^150 - 5",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e152m17_3limbs.json b/src/Specific/CurveParameters/montgomery64_2e152m17_3limbs.json
deleted file mode 100644
index b9fd3a7bd..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e152m17_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<152) - 17'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<152) - 17'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^152 - 17",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e158m15_3limbs.json b/src/Specific/CurveParameters/montgomery64_2e158m15_3limbs.json
deleted file mode 100644
index dc25414b6..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e158m15_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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='64' -Dlimb_weight_gaps_array='{64,64,64}' -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='3' -Dq_mpz='(1_mpz<<158) - 15'",
- "compilerxx": "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='64' -Dlimb_weight_gaps_array='{64,64,64}' -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='3' -Dq_mpz='(1_mpz<<158) - 15'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^158 - 15",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e165m25_3limbs.json b/src/Specific/CurveParameters/montgomery64_2e165m25_3limbs.json
deleted file mode 100644
index 2732b1bb0..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e165m25_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<165) - 25'",
- "compilerxx": "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,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<165) - 25'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^165 - 25",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e166m5_3limbs.json b/src/Specific/CurveParameters/montgomery64_2e166m5_3limbs.json
deleted file mode 100644
index eea9e8f21..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e166m5_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<166) - 5'",
- "compilerxx": "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,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<166) - 5'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^166 - 5",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e171m19_3limbs.json b/src/Specific/CurveParameters/montgomery64_2e171m19_3limbs.json
deleted file mode 100644
index 1faa915ac..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e171m19_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<171) - 19'",
- "compilerxx": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<171) - 19'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^171 - 19",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e174m17_3limbs.json b/src/Specific/CurveParameters/montgomery64_2e174m17_3limbs.json
deleted file mode 100644
index 07c210431..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e174m17_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<174) - 17'",
- "compilerxx": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<174) - 17'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^174 - 17",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e174m3_3limbs.json b/src/Specific/CurveParameters/montgomery64_2e174m3_3limbs.json
deleted file mode 100644
index a6868b023..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e174m3_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<174) - 3'",
- "compilerxx": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<174) - 3'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^174 - 3",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e189m25_3limbs.json b/src/Specific/CurveParameters/montgomery64_2e189m25_3limbs.json
deleted file mode 100644
index ff0e9754c..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e189m25_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<189) - 25'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<189) - 25'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^189 - 25",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e190m11_3limbs.json b/src/Specific/CurveParameters/montgomery64_2e190m11_3limbs.json
deleted file mode 100644
index e237c7cbf..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e190m11_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<190) - 11'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<190) - 11'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^190 - 11",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e191m19_3limbs.json b/src/Specific/CurveParameters/montgomery64_2e191m19_3limbs.json
deleted file mode 100644
index 4550a2f56..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e191m19_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<191) - 19'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<191) - 19'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^191 - 19",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e192m2e64m1_3limbs.json b/src/Specific/CurveParameters/montgomery64_2e192m2e64m1_3limbs.json
deleted file mode 100644
index d7cfb7bd2..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e192m2e64m1_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^192 - 2^64 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e194m33_4limbs.json b/src/Specific/CurveParameters/montgomery64_2e194m33_4limbs.json
deleted file mode 100644
index b9368cc4c..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e194m33_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<194) - 33'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<194) - 33'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^194 - 33",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e196m15_4limbs.json b/src/Specific/CurveParameters/montgomery64_2e196m15_4limbs.json
deleted file mode 100644
index 5a4f859f7..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e196m15_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<196) - 15'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<196) - 15'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^196 - 15",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e198m17_4limbs.json b/src/Specific/CurveParameters/montgomery64_2e198m17_4limbs.json
deleted file mode 100644
index 63ef03882..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e198m17_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<198) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<198) - 17'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^198 - 17",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e205m45x2e198m1_4limbs.json b/src/Specific/CurveParameters/montgomery64_2e205m45x2e198m1_4limbs.json
deleted file mode 100644
index 0a686b8e9..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e205m45x2e198m1_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^205 - 45*2^198 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e206m5_4limbs.json b/src/Specific/CurveParameters/montgomery64_2e206m5_4limbs.json
deleted file mode 100644
index 16e6477a1..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e206m5_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<206) - 5'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<206) - 5'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^206 - 5",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e212m29_4limbs.json b/src/Specific/CurveParameters/montgomery64_2e212m29_4limbs.json
deleted file mode 100644
index 7c6ed6716..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e212m29_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<212) - 29'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<212) - 29'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^212 - 29",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e213m3_4limbs.json b/src/Specific/CurveParameters/montgomery64_2e213m3_4limbs.json
deleted file mode 100644
index 0c8e137ae..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e213m3_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<213) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<213) - 3'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^213 - 3",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e216m2e108m1_4limbs.json b/src/Specific/CurveParameters/montgomery64_2e216m2e108m1_4limbs.json
deleted file mode 100644
index eb77d0ab4..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e216m2e108m1_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^216 - 2^108 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e221m3_4limbs.json b/src/Specific/CurveParameters/montgomery64_2e221m3_4limbs.json
deleted file mode 100644
index 115a921ea..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e221m3_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<221) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<221) - 3'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^221 - 3",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e222m117_4limbs.json b/src/Specific/CurveParameters/montgomery64_2e222m117_4limbs.json
deleted file mode 100644
index 55708691c..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e222m117_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<222) - 117'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<222) - 117'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^222 - 117",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e224m2e96p1_4limbs.json b/src/Specific/CurveParameters/montgomery64_2e224m2e96p1_4limbs.json
deleted file mode 100644
index d9b9caff1..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e224m2e96p1_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^224 - 2^96 + 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e226m5_4limbs.json b/src/Specific/CurveParameters/montgomery64_2e226m5_4limbs.json
deleted file mode 100644
index 74c6aa6c4..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e226m5_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<226) - 5'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<226) - 5'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^226 - 5",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e230m27_4limbs.json b/src/Specific/CurveParameters/montgomery64_2e230m27_4limbs.json
deleted file mode 100644
index 857f332c0..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e230m27_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<230) - 27'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<230) - 27'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^230 - 27",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e235m15_4limbs.json b/src/Specific/CurveParameters/montgomery64_2e235m15_4limbs.json
deleted file mode 100644
index 2588781b0..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e235m15_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='30' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<235) - 15'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='30' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<235) - 15'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^235 - 15",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e243m9_4limbs.json b/src/Specific/CurveParameters/montgomery64_2e243m9_4limbs.json
deleted file mode 100644
index 33a2be0b7..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e243m9_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='31' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<243) - 9'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='31' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<243) - 9'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^243 - 9",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e251m9_4limbs.json b/src/Specific/CurveParameters/montgomery64_2e251m9_4limbs.json
deleted file mode 100644
index 33b515590..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e251m9_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<251) - 9'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<251) - 9'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^251 - 9",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e254m127x2e240m1_4limbs.json b/src/Specific/CurveParameters/montgomery64_2e254m127x2e240m1_4limbs.json
deleted file mode 100644
index aceb683d9..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e254m127x2e240m1_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^254 - 127*2^240 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e255m19_4limbs.json b/src/Specific/CurveParameters/montgomery64_2e255m19_4limbs.json
deleted file mode 100644
index b710ed4c5..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e255m19_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<255) - 19'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<255) - 19'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^255 - 19",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e255m765_4limbs.json b/src/Specific/CurveParameters/montgomery64_2e255m765_4limbs.json
deleted file mode 100644
index 23639fa01..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e255m765_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<255) - 765'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<255) - 765'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^255 - 765",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e256m189_4limbs.json b/src/Specific/CurveParameters/montgomery64_2e256m189_4limbs.json
deleted file mode 100644
index 07612ec6d..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e256m189_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<256) - 189'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<256) - 189'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^256 - 189",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e256m2e224p2e192p2e96m1_4limbs.json b/src/Specific/CurveParameters/montgomery64_2e256m2e224p2e192p2e96m1_4limbs.json
deleted file mode 100644
index 0216815c9..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e256m2e224p2e192p2e96m1_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^256 - 2^224 + 2^192 + 2^96 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e256m2e32m977_4limbs.json b/src/Specific/CurveParameters/montgomery64_2e256m2e32m977_4limbs.json
deleted file mode 100644
index 77cb0aee6..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e256m2e32m977_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^256 - 2^32 - 977",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e256m4294968273_4limbs.json b/src/Specific/CurveParameters/montgomery64_2e256m4294968273_4limbs.json
deleted file mode 100644
index f7f97e460..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e256m4294968273_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<256) - 4294968273'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<256) - 4294968273'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^256 - 4294968273",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e256m88x2e240m1_4limbs.json b/src/Specific/CurveParameters/montgomery64_2e256m88x2e240m1_4limbs.json
deleted file mode 100644
index 3037bc6b5..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e256m88x2e240m1_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^256 - 88*2^240 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e266m3_5limbs.json b/src/Specific/CurveParameters/montgomery64_2e266m3_5limbs.json
deleted file mode 100644
index db4000d82..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e266m3_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='34' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<266) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='34' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<266) - 3'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^266 - 3",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e285m9_5limbs.json b/src/Specific/CurveParameters/montgomery64_2e285m9_5limbs.json
deleted file mode 100644
index 48149c985..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e285m9_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='36' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<285) - 9'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='36' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<285) - 9'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^285 - 9",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e291m19_5limbs.json b/src/Specific/CurveParameters/montgomery64_2e291m19_5limbs.json
deleted file mode 100644
index e25b922e0..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e291m19_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='37' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<291) - 19'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='37' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<291) - 19'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^291 - 19",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e321m9_6limbs.json b/src/Specific/CurveParameters/montgomery64_2e321m9_6limbs.json
deleted file mode 100644
index dce093e31..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e321m9_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<321) - 9'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<321) - 9'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^321 - 9",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e322m2e161m1_6limbs.json b/src/Specific/CurveParameters/montgomery64_2e322m2e161m1_6limbs.json
deleted file mode 100644
index 82aaa0f7d..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e322m2e161m1_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^322 - 2^161 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e336m17_6limbs.json b/src/Specific/CurveParameters/montgomery64_2e336m17_6limbs.json
deleted file mode 100644
index 0f7b8e9e3..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e336m17_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<336) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<336) - 17'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^336 - 17",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e336m3_6limbs.json b/src/Specific/CurveParameters/montgomery64_2e336m3_6limbs.json
deleted file mode 100644
index 6ae81c39f..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e336m3_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<336) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<336) - 3'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^336 - 3",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e338m15_6limbs.json b/src/Specific/CurveParameters/montgomery64_2e338m15_6limbs.json
deleted file mode 100644
index cded47ef7..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e338m15_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='43' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<338) - 15'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='43' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<338) - 15'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^338 - 15",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e369m25_6limbs.json b/src/Specific/CurveParameters/montgomery64_2e369m25_6limbs.json
deleted file mode 100644
index e6038f232..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e369m25_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='47' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<369) - 25'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='47' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<369) - 25'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^369 - 25",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e379m19_6limbs.json b/src/Specific/CurveParameters/montgomery64_2e379m19_6limbs.json
deleted file mode 100644
index 64dd6d8ad..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e379m19_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<379) - 19'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<379) - 19'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^379 - 19",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e382m105_6limbs.json b/src/Specific/CurveParameters/montgomery64_2e382m105_6limbs.json
deleted file mode 100644
index 31c1003c0..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e382m105_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<382) - 105'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<382) - 105'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^382 - 105",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e383m187_6limbs.json b/src/Specific/CurveParameters/montgomery64_2e383m187_6limbs.json
deleted file mode 100644
index eda63f535..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e383m187_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<383) - 187'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<383) - 187'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^383 - 187",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e383m31_6limbs.json b/src/Specific/CurveParameters/montgomery64_2e383m31_6limbs.json
deleted file mode 100644
index 1da0e0431..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e383m31_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<383) - 31'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<383) - 31'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^383 - 31",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e383m421_6limbs.json b/src/Specific/CurveParameters/montgomery64_2e383m421_6limbs.json
deleted file mode 100644
index 49aa605d1..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e383m421_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<383) - 421'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<383) - 421'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^383 - 421",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e384m2e128m2e96p2e32m1_6limbs.json b/src/Specific/CurveParameters/montgomery64_2e384m2e128m2e96p2e32m1_6limbs.json
deleted file mode 100644
index 7c603f537..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e384m2e128m2e96p2e32m1_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^384 - 2^128 - 2^96 + 2^32 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e384m317_6limbs.json b/src/Specific/CurveParameters/montgomery64_2e384m317_6limbs.json
deleted file mode 100644
index 1028e9cb0..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e384m317_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<384) - 317'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<384) - 317'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^384 - 317",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e384m5x2e368m1_6limbs.json b/src/Specific/CurveParameters/montgomery64_2e384m5x2e368m1_6limbs.json
deleted file mode 100644
index 6f94eadd6..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e384m5x2e368m1_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^384 - 5*2^368 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e384m79x2e376m1_6limbs.json b/src/Specific/CurveParameters/montgomery64_2e384m79x2e376m1_6limbs.json
deleted file mode 100644
index b80335182..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e384m79x2e376m1_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^384 - 79*2^376 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e389m21_7limbs.json b/src/Specific/CurveParameters/montgomery64_2e389m21_7limbs.json
deleted file mode 100644
index e10f643b2..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e389m21_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='49' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<389) - 21'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='49' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<389) - 21'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^389 - 21",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e401m31_7limbs.json b/src/Specific/CurveParameters/montgomery64_2e401m31_7limbs.json
deleted file mode 100644
index ea12e48c8..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e401m31_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='51' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<401) - 31'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='51' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<401) - 31'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^401 - 31",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e413m21_7limbs.json b/src/Specific/CurveParameters/montgomery64_2e413m21_7limbs.json
deleted file mode 100644
index 73186e814..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e413m21_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<413) - 21'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<413) - 21'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^413 - 21",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e414m17_7limbs.json b/src/Specific/CurveParameters/montgomery64_2e414m17_7limbs.json
deleted file mode 100644
index 7beb3729b..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e414m17_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<414) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<414) - 17'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^414 - 17",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e416m2e208m1_7limbs.json b/src/Specific/CurveParameters/montgomery64_2e416m2e208m1_7limbs.json
deleted file mode 100644
index 20a5f91ac..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e416m2e208m1_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^416 - 2^208 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e444m17_7limbs.json b/src/Specific/CurveParameters/montgomery64_2e444m17_7limbs.json
deleted file mode 100644
index 6e124dd4a..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e444m17_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<444) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<444) - 17'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^444 - 17",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e448m2e224m1_7limbs.json b/src/Specific/CurveParameters/montgomery64_2e448m2e224m1_7limbs.json
deleted file mode 100644
index 31168c4cc..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e448m2e224m1_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^448 - 2^224 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e450m2e225m1_8limbs.json b/src/Specific/CurveParameters/montgomery64_2e450m2e225m1_8limbs.json
deleted file mode 100644
index 9369afbbe..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e450m2e225m1_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^450 - 2^225 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e452m3_8limbs.json b/src/Specific/CurveParameters/montgomery64_2e452m3_8limbs.json
deleted file mode 100644
index 233e21edc..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e452m3_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<452) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<452) - 3'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^452 - 3",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e468m17_8limbs.json b/src/Specific/CurveParameters/montgomery64_2e468m17_8limbs.json
deleted file mode 100644
index b8a70589c..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e468m17_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='59' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<468) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='59' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<468) - 17'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^468 - 17",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e480m2e240m1_8limbs.json b/src/Specific/CurveParameters/montgomery64_2e480m2e240m1_8limbs.json
deleted file mode 100644
index 86cd52c31..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e480m2e240m1_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='60' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='60' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^480 - 2^240 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e488m17_8limbs.json b/src/Specific/CurveParameters/montgomery64_2e488m17_8limbs.json
deleted file mode 100644
index 3e1aabbb9..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e488m17_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='61' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<488) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='61' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<488) - 17'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^488 - 17",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e489m21_8limbs.json b/src/Specific/CurveParameters/montgomery64_2e489m21_8limbs.json
deleted file mode 100644
index bc2b7bd71..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e489m21_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<489) - 21'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<489) - 21'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^489 - 21",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e495m31_8limbs.json b/src/Specific/CurveParameters/montgomery64_2e495m31_8limbs.json
deleted file mode 100644
index b7e788aa3..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e495m31_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<495) - 31'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<495) - 31'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^495 - 31",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e510m290x2e496m1_8limbs.json b/src/Specific/CurveParameters/montgomery64_2e510m290x2e496m1_8limbs.json
deleted file mode 100644
index e01a9cc73..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e510m290x2e496m1_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^510 - 290*2^496 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e511m187_8limbs.json b/src/Specific/CurveParameters/montgomery64_2e511m187_8limbs.json
deleted file mode 100644
index bd1ba0e5c..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e511m187_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<511) - 187'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<511) - 187'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^511 - 187",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e511m481_8limbs.json b/src/Specific/CurveParameters/montgomery64_2e511m481_8limbs.json
deleted file mode 100644
index 124071093..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e511m481_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<511) - 481'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<511) - 481'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^511 - 481",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e512m491x2e496m1_8limbs.json b/src/Specific/CurveParameters/montgomery64_2e512m491x2e496m1_8limbs.json
deleted file mode 100644
index 4cb938c77..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e512m491x2e496m1_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^512 - 491*2^496 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e512m569_8limbs.json b/src/Specific/CurveParameters/montgomery64_2e512m569_8limbs.json
deleted file mode 100644
index 738c18c1e..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e512m569_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<512) - 569'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<512) - 569'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^512 - 569",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/montgomery64_2e521m1_9limbs.json b/src/Specific/CurveParameters/montgomery64_2e521m1_9limbs.json
deleted file mode 100644
index e85b3fd47..000000000
--- a/src/Specific/CurveParameters/montgomery64_2e521m1_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "64",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='66' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<521) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='66' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<521) - 1'",
- "extra_files": [
- "montgomery64/fesquare.c"
- ],
- "modulus": "2^521 - 1",
- "montgomery": true,
- "operations": [
- "fenz",
- "feadd",
- "femul",
- "feopp",
- "fesub"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/nistp256_amd128.json b/src/Specific/CurveParameters/nistp256_amd128.json
deleted file mode 100644
index 5f23c361e..000000000
--- a/src/Specific/CurveParameters/nistp256_amd128.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "modulus" : "2^256-2^224+2^192+2^96-1",
- "base" : "128",
- "sz" : "2",
- "bitwidth" : "128",
- "montgomery" : "true",
- "operations" : ["fenz", "feadd", "femul", "feopp", "fesub"],
- "compiler" : "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mbmi2 -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing"
-}
diff --git a/src/Specific/CurveParameters/nistp256_amd64.json b/src/Specific/CurveParameters/nistp256_amd64.json
deleted file mode 100644
index f2d377654..000000000
--- a/src/Specific/CurveParameters/nistp256_amd64.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "modulus" : "2^256-2^224+2^192+2^96-1",
- "base" : "64",
- "sz" : "4",
- "bitwidth" : "64",
- "montgomery" : "true",
- "operations" : ["fenz", "feadd", "femul", "feopp", "fesub"],
- "compiler" : "gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mbmi2 -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing"
-}
diff --git a/src/Specific/CurveParameters/remake_curves.sh b/src/Specific/CurveParameters/remake_curves.sh
deleted file mode 100755
index 1a5c578b7..000000000
--- a/src/Specific/CurveParameters/remake_curves.sh
+++ /dev/null
@@ -1,470 +0,0 @@
-#!/bin/bash
-
-set -ex
-
-cd "$( dirname "${BASH_SOURCE[0]}" )"
-
-MAKE="../Framework/make_curve.py"
-
-${MAKE} "$@" x25519_c64.json ../X25519/C64/
-${MAKE} "$@" x25519_c32.json ../X25519/C32/
-${MAKE} "$@" x2448_c64_karatsuba.json ../X2448/Karatsuba/C64/
-${MAKE} "$@" nistp256_amd128.json ../NISTP256/AMD128/
-${MAKE} "$@" nistp256_amd64.json ../NISTP256/AMD64/
-${MAKE} "$@" solinas32_2e255m19_10limbs_donna.json ../solinas32_2e255m19_10limbs_donna/
-${MAKE} "$@" solinas64_2e255m19_5limbs_donna.json ../solinas64_2e255m19_5limbs_donna/
-${MAKE} "$@" montgomery32_2e127m1_4limbs.json ../montgomery32_2e127m1_4limbs/
-${MAKE} "$@" montgomery64_2e127m1_2limbs.json ../montgomery64_2e127m1_2limbs/
-${MAKE} "$@" solinas32_2e127m1_5limbs.json ../solinas32_2e127m1_5limbs/
-${MAKE} "$@" solinas32_2e127m1_6limbs.json ../solinas32_2e127m1_6limbs/
-${MAKE} "$@" solinas64_2e127m1_3limbs.json ../solinas64_2e127m1_3limbs/
-${MAKE} "$@" montgomery32_2e129m25_5limbs.json ../montgomery32_2e129m25_5limbs/
-${MAKE} "$@" montgomery64_2e129m25_3limbs.json ../montgomery64_2e129m25_3limbs/
-${MAKE} "$@" solinas32_2e129m25_5limbs.json ../solinas32_2e129m25_5limbs/
-${MAKE} "$@" solinas32_2e129m25_6limbs.json ../solinas32_2e129m25_6limbs/
-${MAKE} "$@" solinas64_2e129m25_3limbs.json ../solinas64_2e129m25_3limbs/
-${MAKE} "$@" solinas64_2e129m25_4limbs.json ../solinas64_2e129m25_4limbs/
-${MAKE} "$@" montgomery32_2e130m5_5limbs.json ../montgomery32_2e130m5_5limbs/
-${MAKE} "$@" montgomery64_2e130m5_3limbs.json ../montgomery64_2e130m5_3limbs/
-${MAKE} "$@" solinas32_2e130m5_5limbs.json ../solinas32_2e130m5_5limbs/
-${MAKE} "$@" solinas32_2e130m5_6limbs.json ../solinas32_2e130m5_6limbs/
-${MAKE} "$@" solinas64_2e130m5_3limbs.json ../solinas64_2e130m5_3limbs/
-${MAKE} "$@" solinas64_2e130m5_4limbs.json ../solinas64_2e130m5_4limbs/
-${MAKE} "$@" montgomery32_2e137m13_5limbs.json ../montgomery32_2e137m13_5limbs/
-${MAKE} "$@" montgomery64_2e137m13_3limbs.json ../montgomery64_2e137m13_3limbs/
-${MAKE} "$@" solinas32_2e137m13_5limbs.json ../solinas32_2e137m13_5limbs/
-${MAKE} "$@" solinas32_2e137m13_6limbs.json ../solinas32_2e137m13_6limbs/
-${MAKE} "$@" solinas64_2e137m13_3limbs.json ../solinas64_2e137m13_3limbs/
-${MAKE} "$@" solinas64_2e137m13_4limbs.json ../solinas64_2e137m13_4limbs/
-${MAKE} "$@" montgomery32_2e140m27_5limbs.json ../montgomery32_2e140m27_5limbs/
-${MAKE} "$@" montgomery64_2e140m27_3limbs.json ../montgomery64_2e140m27_3limbs/
-${MAKE} "$@" solinas32_2e140m27_6limbs.json ../solinas32_2e140m27_6limbs/
-${MAKE} "$@" solinas32_2e140m27_7limbs.json ../solinas32_2e140m27_7limbs/
-${MAKE} "$@" solinas64_2e140m27_3limbs.json ../solinas64_2e140m27_3limbs/
-${MAKE} "$@" solinas64_2e140m27_4limbs.json ../solinas64_2e140m27_4limbs/
-${MAKE} "$@" montgomery32_2e141m9_5limbs.json ../montgomery32_2e141m9_5limbs/
-${MAKE} "$@" montgomery64_2e141m9_3limbs.json ../montgomery64_2e141m9_3limbs/
-${MAKE} "$@" solinas32_2e141m9_6limbs.json ../solinas32_2e141m9_6limbs/
-${MAKE} "$@" solinas32_2e141m9_7limbs.json ../solinas32_2e141m9_7limbs/
-${MAKE} "$@" solinas64_2e141m9_3limbs.json ../solinas64_2e141m9_3limbs/
-${MAKE} "$@" solinas64_2e141m9_4limbs.json ../solinas64_2e141m9_4limbs/
-${MAKE} "$@" montgomery32_2e150m5_5limbs.json ../montgomery32_2e150m5_5limbs/
-${MAKE} "$@" montgomery64_2e150m5_3limbs.json ../montgomery64_2e150m5_3limbs/
-${MAKE} "$@" solinas32_2e150m5_6limbs.json ../solinas32_2e150m5_6limbs/
-${MAKE} "$@" solinas32_2e150m5_7limbs.json ../solinas32_2e150m5_7limbs/
-${MAKE} "$@" solinas64_2e150m5_3limbs.json ../solinas64_2e150m5_3limbs/
-${MAKE} "$@" solinas64_2e150m5_4limbs.json ../solinas64_2e150m5_4limbs/
-${MAKE} "$@" montgomery32_2e150m3_5limbs.json ../montgomery32_2e150m3_5limbs/
-${MAKE} "$@" montgomery64_2e150m3_3limbs.json ../montgomery64_2e150m3_3limbs/
-${MAKE} "$@" solinas32_2e150m3_6limbs.json ../solinas32_2e150m3_6limbs/
-${MAKE} "$@" solinas32_2e150m3_7limbs.json ../solinas32_2e150m3_7limbs/
-${MAKE} "$@" solinas64_2e150m3_3limbs.json ../solinas64_2e150m3_3limbs/
-${MAKE} "$@" solinas64_2e150m3_4limbs.json ../solinas64_2e150m3_4limbs/
-${MAKE} "$@" montgomery32_2e152m17_5limbs.json ../montgomery32_2e152m17_5limbs/
-${MAKE} "$@" montgomery64_2e152m17_3limbs.json ../montgomery64_2e152m17_3limbs/
-${MAKE} "$@" solinas32_2e152m17_6limbs.json ../solinas32_2e152m17_6limbs/
-${MAKE} "$@" solinas32_2e152m17_7limbs.json ../solinas32_2e152m17_7limbs/
-${MAKE} "$@" solinas64_2e152m17_3limbs.json ../solinas64_2e152m17_3limbs/
-${MAKE} "$@" solinas64_2e152m17_4limbs.json ../solinas64_2e152m17_4limbs/
-${MAKE} "$@" montgomery32_2e158m15_5limbs.json ../montgomery32_2e158m15_5limbs/
-${MAKE} "$@" montgomery64_2e158m15_3limbs.json ../montgomery64_2e158m15_3limbs/
-${MAKE} "$@" solinas32_2e158m15_6limbs.json ../solinas32_2e158m15_6limbs/
-${MAKE} "$@" solinas32_2e158m15_7limbs.json ../solinas32_2e158m15_7limbs/
-${MAKE} "$@" solinas64_2e158m15_3limbs.json ../solinas64_2e158m15_3limbs/
-${MAKE} "$@" solinas64_2e158m15_4limbs.json ../solinas64_2e158m15_4limbs/
-${MAKE} "$@" montgomery32_2e165m25_6limbs.json ../montgomery32_2e165m25_6limbs/
-${MAKE} "$@" montgomery64_2e165m25_3limbs.json ../montgomery64_2e165m25_3limbs/
-${MAKE} "$@" solinas32_2e165m25_7limbs.json ../solinas32_2e165m25_7limbs/
-${MAKE} "$@" solinas32_2e165m25_8limbs.json ../solinas32_2e165m25_8limbs/
-${MAKE} "$@" solinas64_2e165m25_3limbs.json ../solinas64_2e165m25_3limbs/
-${MAKE} "$@" solinas64_2e165m25_4limbs.json ../solinas64_2e165m25_4limbs/
-${MAKE} "$@" montgomery32_2e166m5_6limbs.json ../montgomery32_2e166m5_6limbs/
-${MAKE} "$@" montgomery64_2e166m5_3limbs.json ../montgomery64_2e166m5_3limbs/
-${MAKE} "$@" solinas32_2e166m5_6limbs.json ../solinas32_2e166m5_6limbs/
-${MAKE} "$@" solinas32_2e166m5_7limbs.json ../solinas32_2e166m5_7limbs/
-${MAKE} "$@" solinas64_2e166m5_3limbs.json ../solinas64_2e166m5_3limbs/
-${MAKE} "$@" solinas64_2e166m5_4limbs.json ../solinas64_2e166m5_4limbs/
-${MAKE} "$@" montgomery32_2e171m19_6limbs.json ../montgomery32_2e171m19_6limbs/
-${MAKE} "$@" montgomery64_2e171m19_3limbs.json ../montgomery64_2e171m19_3limbs/
-${MAKE} "$@" solinas32_2e171m19_7limbs.json ../solinas32_2e171m19_7limbs/
-${MAKE} "$@" solinas32_2e171m19_8limbs.json ../solinas32_2e171m19_8limbs/
-${MAKE} "$@" solinas64_2e171m19_3limbs.json ../solinas64_2e171m19_3limbs/
-${MAKE} "$@" solinas64_2e171m19_4limbs.json ../solinas64_2e171m19_4limbs/
-${MAKE} "$@" montgomery32_2e174m17_6limbs.json ../montgomery32_2e174m17_6limbs/
-${MAKE} "$@" montgomery64_2e174m17_3limbs.json ../montgomery64_2e174m17_3limbs/
-${MAKE} "$@" solinas32_2e174m17_7limbs.json ../solinas32_2e174m17_7limbs/
-${MAKE} "$@" solinas32_2e174m17_8limbs.json ../solinas32_2e174m17_8limbs/
-${MAKE} "$@" solinas64_2e174m17_3limbs.json ../solinas64_2e174m17_3limbs/
-${MAKE} "$@" solinas64_2e174m17_4limbs.json ../solinas64_2e174m17_4limbs/
-${MAKE} "$@" montgomery32_2e174m3_6limbs.json ../montgomery32_2e174m3_6limbs/
-${MAKE} "$@" montgomery64_2e174m3_3limbs.json ../montgomery64_2e174m3_3limbs/
-${MAKE} "$@" solinas32_2e174m3_7limbs.json ../solinas32_2e174m3_7limbs/
-${MAKE} "$@" solinas32_2e174m3_8limbs.json ../solinas32_2e174m3_8limbs/
-${MAKE} "$@" solinas64_2e174m3_3limbs.json ../solinas64_2e174m3_3limbs/
-${MAKE} "$@" solinas64_2e174m3_4limbs.json ../solinas64_2e174m3_4limbs/
-${MAKE} "$@" montgomery32_2e189m25_6limbs.json ../montgomery32_2e189m25_6limbs/
-${MAKE} "$@" montgomery64_2e189m25_3limbs.json ../montgomery64_2e189m25_3limbs/
-${MAKE} "$@" solinas32_2e189m25_7limbs.json ../solinas32_2e189m25_7limbs/
-${MAKE} "$@" solinas32_2e189m25_8limbs.json ../solinas32_2e189m25_8limbs/
-${MAKE} "$@" solinas64_2e189m25_4limbs.json ../solinas64_2e189m25_4limbs/
-${MAKE} "$@" solinas64_2e189m25_5limbs.json ../solinas64_2e189m25_5limbs/
-${MAKE} "$@" montgomery32_2e190m11_6limbs.json ../montgomery32_2e190m11_6limbs/
-${MAKE} "$@" montgomery64_2e190m11_3limbs.json ../montgomery64_2e190m11_3limbs/
-${MAKE} "$@" solinas32_2e190m11_7limbs.json ../solinas32_2e190m11_7limbs/
-${MAKE} "$@" solinas32_2e190m11_8limbs.json ../solinas32_2e190m11_8limbs/
-${MAKE} "$@" solinas64_2e190m11_4limbs.json ../solinas64_2e190m11_4limbs/
-${MAKE} "$@" solinas64_2e190m11_5limbs.json ../solinas64_2e190m11_5limbs/
-${MAKE} "$@" montgomery32_2e191m19_6limbs.json ../montgomery32_2e191m19_6limbs/
-${MAKE} "$@" montgomery64_2e191m19_3limbs.json ../montgomery64_2e191m19_3limbs/
-${MAKE} "$@" solinas32_2e191m19_8limbs.json ../solinas32_2e191m19_8limbs/
-${MAKE} "$@" solinas32_2e191m19_9limbs.json ../solinas32_2e191m19_9limbs/
-${MAKE} "$@" solinas64_2e191m19_4limbs.json ../solinas64_2e191m19_4limbs/
-${MAKE} "$@" solinas64_2e191m19_5limbs.json ../solinas64_2e191m19_5limbs/
-${MAKE} "$@" montgomery32_2e194m33_7limbs.json ../montgomery32_2e194m33_7limbs/
-${MAKE} "$@" montgomery64_2e194m33_4limbs.json ../montgomery64_2e194m33_4limbs/
-${MAKE} "$@" solinas32_2e194m33_8limbs.json ../solinas32_2e194m33_8limbs/
-${MAKE} "$@" solinas32_2e194m33_9limbs.json ../solinas32_2e194m33_9limbs/
-${MAKE} "$@" solinas64_2e194m33_4limbs.json ../solinas64_2e194m33_4limbs/
-${MAKE} "$@" solinas64_2e194m33_5limbs.json ../solinas64_2e194m33_5limbs/
-${MAKE} "$@" montgomery32_2e196m15_7limbs.json ../montgomery32_2e196m15_7limbs/
-${MAKE} "$@" montgomery64_2e196m15_4limbs.json ../montgomery64_2e196m15_4limbs/
-${MAKE} "$@" solinas32_2e196m15_8limbs.json ../solinas32_2e196m15_8limbs/
-${MAKE} "$@" solinas32_2e196m15_9limbs.json ../solinas32_2e196m15_9limbs/
-${MAKE} "$@" solinas64_2e196m15_4limbs.json ../solinas64_2e196m15_4limbs/
-${MAKE} "$@" solinas64_2e196m15_5limbs.json ../solinas64_2e196m15_5limbs/
-${MAKE} "$@" montgomery32_2e198m17_7limbs.json ../montgomery32_2e198m17_7limbs/
-${MAKE} "$@" montgomery64_2e198m17_4limbs.json ../montgomery64_2e198m17_4limbs/
-${MAKE} "$@" solinas32_2e198m17_8limbs.json ../solinas32_2e198m17_8limbs/
-${MAKE} "$@" solinas32_2e198m17_9limbs.json ../solinas32_2e198m17_9limbs/
-${MAKE} "$@" solinas64_2e198m17_4limbs.json ../solinas64_2e198m17_4limbs/
-${MAKE} "$@" solinas64_2e198m17_5limbs.json ../solinas64_2e198m17_5limbs/
-${MAKE} "$@" montgomery32_2e206m5_7limbs.json ../montgomery32_2e206m5_7limbs/
-${MAKE} "$@" montgomery64_2e206m5_4limbs.json ../montgomery64_2e206m5_4limbs/
-${MAKE} "$@" solinas32_2e206m5_8limbs.json ../solinas32_2e206m5_8limbs/
-${MAKE} "$@" solinas32_2e206m5_9limbs.json ../solinas32_2e206m5_9limbs/
-${MAKE} "$@" solinas64_2e206m5_4limbs.json ../solinas64_2e206m5_4limbs/
-${MAKE} "$@" solinas64_2e206m5_5limbs.json ../solinas64_2e206m5_5limbs/
-${MAKE} "$@" montgomery32_2e212m29_7limbs.json ../montgomery32_2e212m29_7limbs/
-${MAKE} "$@" montgomery64_2e212m29_4limbs.json ../montgomery64_2e212m29_4limbs/
-${MAKE} "$@" solinas32_2e212m29_8limbs.json ../solinas32_2e212m29_8limbs/
-${MAKE} "$@" solinas32_2e212m29_9limbs.json ../solinas32_2e212m29_9limbs/
-${MAKE} "$@" solinas64_2e212m29_4limbs.json ../solinas64_2e212m29_4limbs/
-${MAKE} "$@" solinas64_2e212m29_5limbs.json ../solinas64_2e212m29_5limbs/
-${MAKE} "$@" montgomery32_2e213m3_7limbs.json ../montgomery32_2e213m3_7limbs/
-${MAKE} "$@" montgomery64_2e213m3_4limbs.json ../montgomery64_2e213m3_4limbs/
-${MAKE} "$@" solinas32_2e213m3_8limbs.json ../solinas32_2e213m3_8limbs/
-${MAKE} "$@" solinas32_2e213m3_9limbs.json ../solinas32_2e213m3_9limbs/
-${MAKE} "$@" solinas64_2e213m3_4limbs.json ../solinas64_2e213m3_4limbs/
-${MAKE} "$@" solinas64_2e213m3_5limbs.json ../solinas64_2e213m3_5limbs/
-${MAKE} "$@" montgomery32_2e221m3_7limbs.json ../montgomery32_2e221m3_7limbs/
-${MAKE} "$@" montgomery64_2e221m3_4limbs.json ../montgomery64_2e221m3_4limbs/
-${MAKE} "$@" solinas32_2e221m3_8limbs.json ../solinas32_2e221m3_8limbs/
-${MAKE} "$@" solinas32_2e221m3_9limbs.json ../solinas32_2e221m3_9limbs/
-${MAKE} "$@" solinas64_2e221m3_4limbs.json ../solinas64_2e221m3_4limbs/
-${MAKE} "$@" solinas64_2e221m3_5limbs.json ../solinas64_2e221m3_5limbs/
-${MAKE} "$@" montgomery32_2e222m117_7limbs.json ../montgomery32_2e222m117_7limbs/
-${MAKE} "$@" montgomery64_2e222m117_4limbs.json ../montgomery64_2e222m117_4limbs/
-${MAKE} "$@" solinas32_2e222m117_9limbs.json ../solinas32_2e222m117_9limbs/
-${MAKE} "$@" solinas32_2e222m117_10limbs.json ../solinas32_2e222m117_10limbs/
-${MAKE} "$@" solinas64_2e222m117_4limbs.json ../solinas64_2e222m117_4limbs/
-${MAKE} "$@" solinas64_2e222m117_5limbs.json ../solinas64_2e222m117_5limbs/
-${MAKE} "$@" montgomery32_2e226m5_8limbs.json ../montgomery32_2e226m5_8limbs/
-${MAKE} "$@" montgomery64_2e226m5_4limbs.json ../montgomery64_2e226m5_4limbs/
-${MAKE} "$@" solinas32_2e226m5_9limbs.json ../solinas32_2e226m5_9limbs/
-${MAKE} "$@" solinas32_2e226m5_10limbs.json ../solinas32_2e226m5_10limbs/
-${MAKE} "$@" solinas64_2e226m5_4limbs.json ../solinas64_2e226m5_4limbs/
-${MAKE} "$@" solinas64_2e226m5_5limbs.json ../solinas64_2e226m5_5limbs/
-${MAKE} "$@" montgomery32_2e230m27_8limbs.json ../montgomery32_2e230m27_8limbs/
-${MAKE} "$@" montgomery64_2e230m27_4limbs.json ../montgomery64_2e230m27_4limbs/
-${MAKE} "$@" solinas32_2e230m27_9limbs.json ../solinas32_2e230m27_9limbs/
-${MAKE} "$@" solinas32_2e230m27_10limbs.json ../solinas32_2e230m27_10limbs/
-${MAKE} "$@" solinas64_2e230m27_4limbs.json ../solinas64_2e230m27_4limbs/
-${MAKE} "$@" solinas64_2e230m27_5limbs.json ../solinas64_2e230m27_5limbs/
-${MAKE} "$@" montgomery32_2e235m15_8limbs.json ../montgomery32_2e235m15_8limbs/
-${MAKE} "$@" montgomery64_2e235m15_4limbs.json ../montgomery64_2e235m15_4limbs/
-${MAKE} "$@" solinas32_2e235m15_9limbs.json ../solinas32_2e235m15_9limbs/
-${MAKE} "$@" solinas32_2e235m15_10limbs.json ../solinas32_2e235m15_10limbs/
-${MAKE} "$@" solinas64_2e235m15_4limbs.json ../solinas64_2e235m15_4limbs/
-${MAKE} "$@" solinas64_2e235m15_5limbs.json ../solinas64_2e235m15_5limbs/
-${MAKE} "$@" montgomery32_2e243m9_8limbs.json ../montgomery32_2e243m9_8limbs/
-${MAKE} "$@" montgomery64_2e243m9_4limbs.json ../montgomery64_2e243m9_4limbs/
-${MAKE} "$@" solinas32_2e243m9_9limbs.json ../solinas32_2e243m9_9limbs/
-${MAKE} "$@" solinas32_2e243m9_10limbs.json ../solinas32_2e243m9_10limbs/
-${MAKE} "$@" solinas64_2e243m9_5limbs.json ../solinas64_2e243m9_5limbs/
-${MAKE} "$@" solinas64_2e243m9_6limbs.json ../solinas64_2e243m9_6limbs/
-${MAKE} "$@" montgomery32_2e251m9_8limbs.json ../montgomery32_2e251m9_8limbs/
-${MAKE} "$@" montgomery64_2e251m9_4limbs.json ../montgomery64_2e251m9_4limbs/
-${MAKE} "$@" solinas32_2e251m9_10limbs.json ../solinas32_2e251m9_10limbs/
-${MAKE} "$@" solinas32_2e251m9_11limbs.json ../solinas32_2e251m9_11limbs/
-${MAKE} "$@" solinas64_2e251m9_5limbs.json ../solinas64_2e251m9_5limbs/
-${MAKE} "$@" solinas64_2e251m9_6limbs.json ../solinas64_2e251m9_6limbs/
-${MAKE} "$@" montgomery32_2e255m765_8limbs.json ../montgomery32_2e255m765_8limbs/
-${MAKE} "$@" montgomery64_2e255m765_4limbs.json ../montgomery64_2e255m765_4limbs/
-${MAKE} "$@" solinas32_2e255m765_12limbs.json ../solinas32_2e255m765_12limbs/
-${MAKE} "$@" solinas32_2e255m765_13limbs.json ../solinas32_2e255m765_13limbs/
-${MAKE} "$@" solinas64_2e255m765_5limbs.json ../solinas64_2e255m765_5limbs/
-${MAKE} "$@" solinas64_2e255m765_6limbs.json ../solinas64_2e255m765_6limbs/
-${MAKE} "$@" montgomery32_2e255m19_8limbs.json ../montgomery32_2e255m19_8limbs/
-${MAKE} "$@" montgomery64_2e255m19_4limbs.json ../montgomery64_2e255m19_4limbs/
-${MAKE} "$@" solinas32_2e255m19_10limbs.json ../solinas32_2e255m19_10limbs/
-${MAKE} "$@" solinas32_2e255m19_11limbs.json ../solinas32_2e255m19_11limbs/
-${MAKE} "$@" solinas64_2e255m19_5limbs.json ../solinas64_2e255m19_5limbs/
-${MAKE} "$@" solinas64_2e255m19_6limbs.json ../solinas64_2e255m19_6limbs/
-${MAKE} "$@" montgomery32_2e256m189_8limbs.json ../montgomery32_2e256m189_8limbs/
-${MAKE} "$@" montgomery64_2e256m189_4limbs.json ../montgomery64_2e256m189_4limbs/
-${MAKE} "$@" solinas32_2e256m189_11limbs.json ../solinas32_2e256m189_11limbs/
-${MAKE} "$@" solinas32_2e256m189_12limbs.json ../solinas32_2e256m189_12limbs/
-${MAKE} "$@" solinas64_2e256m189_5limbs.json ../solinas64_2e256m189_5limbs/
-${MAKE} "$@" solinas64_2e256m189_6limbs.json ../solinas64_2e256m189_6limbs/
-${MAKE} "$@" montgomery32_2e266m3_9limbs.json ../montgomery32_2e266m3_9limbs/
-${MAKE} "$@" montgomery64_2e266m3_5limbs.json ../montgomery64_2e266m3_5limbs/
-${MAKE} "$@" solinas32_2e266m3_10limbs.json ../solinas32_2e266m3_10limbs/
-${MAKE} "$@" solinas32_2e266m3_11limbs.json ../solinas32_2e266m3_11limbs/
-${MAKE} "$@" solinas64_2e266m3_5limbs.json ../solinas64_2e266m3_5limbs/
-${MAKE} "$@" solinas64_2e266m3_6limbs.json ../solinas64_2e266m3_6limbs/
-${MAKE} "$@" montgomery32_2e285m9_9limbs.json ../montgomery32_2e285m9_9limbs/
-${MAKE} "$@" montgomery64_2e285m9_5limbs.json ../montgomery64_2e285m9_5limbs/
-${MAKE} "$@" solinas32_2e285m9_11limbs.json ../solinas32_2e285m9_11limbs/
-${MAKE} "$@" solinas32_2e285m9_12limbs.json ../solinas32_2e285m9_12limbs/
-${MAKE} "$@" solinas64_2e285m9_5limbs.json ../solinas64_2e285m9_5limbs/
-${MAKE} "$@" solinas64_2e285m9_6limbs.json ../solinas64_2e285m9_6limbs/
-${MAKE} "$@" montgomery32_2e291m19_10limbs.json ../montgomery32_2e291m19_10limbs/
-${MAKE} "$@" montgomery64_2e291m19_5limbs.json ../montgomery64_2e291m19_5limbs/
-${MAKE} "$@" solinas32_2e291m19_11limbs.json ../solinas32_2e291m19_11limbs/
-${MAKE} "$@" solinas32_2e291m19_12limbs.json ../solinas32_2e291m19_12limbs/
-${MAKE} "$@" solinas64_2e291m19_5limbs.json ../solinas64_2e291m19_5limbs/
-${MAKE} "$@" solinas64_2e291m19_6limbs.json ../solinas64_2e291m19_6limbs/
-${MAKE} "$@" montgomery32_2e321m9_11limbs.json ../montgomery32_2e321m9_11limbs/
-${MAKE} "$@" montgomery64_2e321m9_6limbs.json ../montgomery64_2e321m9_6limbs/
-${MAKE} "$@" solinas32_2e321m9_12limbs.json ../solinas32_2e321m9_12limbs/
-${MAKE} "$@" solinas32_2e321m9_13limbs.json ../solinas32_2e321m9_13limbs/
-${MAKE} "$@" solinas64_2e321m9_6limbs.json ../solinas64_2e321m9_6limbs/
-${MAKE} "$@" solinas64_2e321m9_7limbs.json ../solinas64_2e321m9_7limbs/
-${MAKE} "$@" montgomery32_2e336m17_11limbs.json ../montgomery32_2e336m17_11limbs/
-${MAKE} "$@" montgomery64_2e336m17_6limbs.json ../montgomery64_2e336m17_6limbs/
-${MAKE} "$@" solinas32_2e336m17_13limbs.json ../solinas32_2e336m17_13limbs/
-${MAKE} "$@" solinas32_2e336m17_14limbs.json ../solinas32_2e336m17_14limbs/
-${MAKE} "$@" solinas64_2e336m17_6limbs.json ../solinas64_2e336m17_6limbs/
-${MAKE} "$@" solinas64_2e336m17_7limbs.json ../solinas64_2e336m17_7limbs/
-${MAKE} "$@" montgomery32_2e336m3_11limbs.json ../montgomery32_2e336m3_11limbs/
-${MAKE} "$@" montgomery64_2e336m3_6limbs.json ../montgomery64_2e336m3_6limbs/
-${MAKE} "$@" solinas32_2e336m3_12limbs.json ../solinas32_2e336m3_12limbs/
-${MAKE} "$@" solinas32_2e336m3_13limbs.json ../solinas32_2e336m3_13limbs/
-${MAKE} "$@" solinas64_2e336m3_6limbs.json ../solinas64_2e336m3_6limbs/
-${MAKE} "$@" solinas64_2e336m3_7limbs.json ../solinas64_2e336m3_7limbs/
-${MAKE} "$@" montgomery32_2e338m15_11limbs.json ../montgomery32_2e338m15_11limbs/
-${MAKE} "$@" montgomery64_2e338m15_6limbs.json ../montgomery64_2e338m15_6limbs/
-${MAKE} "$@" solinas32_2e338m15_13limbs.json ../solinas32_2e338m15_13limbs/
-${MAKE} "$@" solinas32_2e338m15_14limbs.json ../solinas32_2e338m15_14limbs/
-${MAKE} "$@" solinas64_2e338m15_6limbs.json ../solinas64_2e338m15_6limbs/
-${MAKE} "$@" solinas64_2e338m15_7limbs.json ../solinas64_2e338m15_7limbs/
-${MAKE} "$@" montgomery32_2e369m25_12limbs.json ../montgomery32_2e369m25_12limbs/
-${MAKE} "$@" montgomery64_2e369m25_6limbs.json ../montgomery64_2e369m25_6limbs/
-${MAKE} "$@" solinas32_2e369m25_15limbs.json ../solinas32_2e369m25_15limbs/
-${MAKE} "$@" solinas32_2e369m25_16limbs.json ../solinas32_2e369m25_16limbs/
-${MAKE} "$@" solinas64_2e369m25_7limbs.json ../solinas64_2e369m25_7limbs/
-${MAKE} "$@" solinas64_2e369m25_8limbs.json ../solinas64_2e369m25_8limbs/
-${MAKE} "$@" montgomery32_2e379m19_12limbs.json ../montgomery32_2e379m19_12limbs/
-${MAKE} "$@" montgomery64_2e379m19_6limbs.json ../montgomery64_2e379m19_6limbs/
-${MAKE} "$@" solinas32_2e379m19_15limbs.json ../solinas32_2e379m19_15limbs/
-${MAKE} "$@" solinas32_2e379m19_16limbs.json ../solinas32_2e379m19_16limbs/
-${MAKE} "$@" solinas64_2e379m19_7limbs.json ../solinas64_2e379m19_7limbs/
-${MAKE} "$@" solinas64_2e379m19_8limbs.json ../solinas64_2e379m19_8limbs/
-${MAKE} "$@" montgomery32_2e382m105_12limbs.json ../montgomery32_2e382m105_12limbs/
-${MAKE} "$@" montgomery64_2e382m105_6limbs.json ../montgomery64_2e382m105_6limbs/
-${MAKE} "$@" solinas32_2e382m105_16limbs.json ../solinas32_2e382m105_16limbs/
-${MAKE} "$@" solinas32_2e382m105_17limbs.json ../solinas32_2e382m105_17limbs/
-${MAKE} "$@" solinas64_2e382m105_7limbs.json ../solinas64_2e382m105_7limbs/
-${MAKE} "$@" solinas64_2e382m105_8limbs.json ../solinas64_2e382m105_8limbs/
-${MAKE} "$@" montgomery32_2e383m421_12limbs.json ../montgomery32_2e383m421_12limbs/
-${MAKE} "$@" montgomery64_2e383m421_6limbs.json ../montgomery64_2e383m421_6limbs/
-${MAKE} "$@" solinas32_2e383m421_17limbs.json ../solinas32_2e383m421_17limbs/
-${MAKE} "$@" solinas32_2e383m421_18limbs.json ../solinas32_2e383m421_18limbs/
-${MAKE} "$@" solinas64_2e383m421_7limbs.json ../solinas64_2e383m421_7limbs/
-${MAKE} "$@" solinas64_2e383m421_8limbs.json ../solinas64_2e383m421_8limbs/
-${MAKE} "$@" montgomery32_2e383m187_12limbs.json ../montgomery32_2e383m187_12limbs/
-${MAKE} "$@" montgomery64_2e383m187_6limbs.json ../montgomery64_2e383m187_6limbs/
-${MAKE} "$@" solinas32_2e383m187_16limbs.json ../solinas32_2e383m187_16limbs/
-${MAKE} "$@" solinas32_2e383m187_17limbs.json ../solinas32_2e383m187_17limbs/
-${MAKE} "$@" solinas64_2e383m187_7limbs.json ../solinas64_2e383m187_7limbs/
-${MAKE} "$@" solinas64_2e383m187_8limbs.json ../solinas64_2e383m187_8limbs/
-${MAKE} "$@" montgomery32_2e383m31_12limbs.json ../montgomery32_2e383m31_12limbs/
-${MAKE} "$@" montgomery64_2e383m31_6limbs.json ../montgomery64_2e383m31_6limbs/
-${MAKE} "$@" solinas32_2e383m31_15limbs.json ../solinas32_2e383m31_15limbs/
-${MAKE} "$@" solinas32_2e383m31_16limbs.json ../solinas32_2e383m31_16limbs/
-${MAKE} "$@" solinas64_2e383m31_7limbs.json ../solinas64_2e383m31_7limbs/
-${MAKE} "$@" solinas64_2e383m31_8limbs.json ../solinas64_2e383m31_8limbs/
-${MAKE} "$@" montgomery32_2e384m317_12limbs.json ../montgomery32_2e384m317_12limbs/
-${MAKE} "$@" montgomery64_2e384m317_6limbs.json ../montgomery64_2e384m317_6limbs/
-${MAKE} "$@" solinas32_2e384m317_17limbs.json ../solinas32_2e384m317_17limbs/
-${MAKE} "$@" solinas32_2e384m317_18limbs.json ../solinas32_2e384m317_18limbs/
-${MAKE} "$@" solinas64_2e384m317_7limbs.json ../solinas64_2e384m317_7limbs/
-${MAKE} "$@" solinas64_2e384m317_8limbs.json ../solinas64_2e384m317_8limbs/
-${MAKE} "$@" montgomery32_2e389m21_13limbs.json ../montgomery32_2e389m21_13limbs/
-${MAKE} "$@" montgomery64_2e389m21_7limbs.json ../montgomery64_2e389m21_7limbs/
-${MAKE} "$@" solinas32_2e389m21_15limbs.json ../solinas32_2e389m21_15limbs/
-${MAKE} "$@" solinas32_2e389m21_16limbs.json ../solinas32_2e389m21_16limbs/
-${MAKE} "$@" solinas64_2e389m21_7limbs.json ../solinas64_2e389m21_7limbs/
-${MAKE} "$@" solinas64_2e389m21_8limbs.json ../solinas64_2e389m21_8limbs/
-${MAKE} "$@" montgomery32_2e401m31_13limbs.json ../montgomery32_2e401m31_13limbs/
-${MAKE} "$@" montgomery64_2e401m31_7limbs.json ../montgomery64_2e401m31_7limbs/
-${MAKE} "$@" solinas32_2e401m31_16limbs.json ../solinas32_2e401m31_16limbs/
-${MAKE} "$@" solinas32_2e401m31_17limbs.json ../solinas32_2e401m31_17limbs/
-${MAKE} "$@" solinas64_2e401m31_7limbs.json ../solinas64_2e401m31_7limbs/
-${MAKE} "$@" solinas64_2e401m31_8limbs.json ../solinas64_2e401m31_8limbs/
-${MAKE} "$@" montgomery32_2e413m21_13limbs.json ../montgomery32_2e413m21_13limbs/
-${MAKE} "$@" montgomery64_2e413m21_7limbs.json ../montgomery64_2e413m21_7limbs/
-${MAKE} "$@" solinas32_2e413m21_16limbs.json ../solinas32_2e413m21_16limbs/
-${MAKE} "$@" solinas32_2e413m21_17limbs.json ../solinas32_2e413m21_17limbs/
-${MAKE} "$@" solinas64_2e413m21_7limbs.json ../solinas64_2e413m21_7limbs/
-${MAKE} "$@" solinas64_2e413m21_8limbs.json ../solinas64_2e413m21_8limbs/
-${MAKE} "$@" montgomery32_2e414m17_13limbs.json ../montgomery32_2e414m17_13limbs/
-${MAKE} "$@" montgomery64_2e414m17_7limbs.json ../montgomery64_2e414m17_7limbs/
-${MAKE} "$@" solinas32_2e414m17_16limbs.json ../solinas32_2e414m17_16limbs/
-${MAKE} "$@" solinas32_2e414m17_17limbs.json ../solinas32_2e414m17_17limbs/
-${MAKE} "$@" solinas64_2e414m17_8limbs.json ../solinas64_2e414m17_8limbs/
-${MAKE} "$@" solinas64_2e414m17_9limbs.json ../solinas64_2e414m17_9limbs/
-${MAKE} "$@" montgomery32_2e444m17_14limbs.json ../montgomery32_2e444m17_14limbs/
-${MAKE} "$@" montgomery64_2e444m17_7limbs.json ../montgomery64_2e444m17_7limbs/
-${MAKE} "$@" solinas32_2e444m17_17limbs.json ../solinas32_2e444m17_17limbs/
-${MAKE} "$@" solinas32_2e444m17_18limbs.json ../solinas32_2e444m17_18limbs/
-${MAKE} "$@" solinas64_2e444m17_8limbs.json ../solinas64_2e444m17_8limbs/
-${MAKE} "$@" solinas64_2e444m17_9limbs.json ../solinas64_2e444m17_9limbs/
-${MAKE} "$@" montgomery32_2e452m3_15limbs.json ../montgomery32_2e452m3_15limbs/
-${MAKE} "$@" montgomery64_2e452m3_8limbs.json ../montgomery64_2e452m3_8limbs/
-${MAKE} "$@" solinas32_2e452m3_17limbs.json ../solinas32_2e452m3_17limbs/
-${MAKE} "$@" solinas32_2e452m3_18limbs.json ../solinas32_2e452m3_18limbs/
-${MAKE} "$@" solinas64_2e452m3_8limbs.json ../solinas64_2e452m3_8limbs/
-${MAKE} "$@" solinas64_2e452m3_9limbs.json ../solinas64_2e452m3_9limbs/
-${MAKE} "$@" montgomery32_2e468m17_15limbs.json ../montgomery32_2e468m17_15limbs/
-${MAKE} "$@" montgomery64_2e468m17_8limbs.json ../montgomery64_2e468m17_8limbs/
-${MAKE} "$@" solinas32_2e468m17_18limbs.json ../solinas32_2e468m17_18limbs/
-${MAKE} "$@" solinas32_2e468m17_19limbs.json ../solinas32_2e468m17_19limbs/
-${MAKE} "$@" solinas64_2e468m17_8limbs.json ../solinas64_2e468m17_8limbs/
-${MAKE} "$@" solinas64_2e468m17_9limbs.json ../solinas64_2e468m17_9limbs/
-${MAKE} "$@" montgomery32_2e488m17_16limbs.json ../montgomery32_2e488m17_16limbs/
-${MAKE} "$@" montgomery64_2e488m17_8limbs.json ../montgomery64_2e488m17_8limbs/
-${MAKE} "$@" solinas32_2e488m17_19limbs.json ../solinas32_2e488m17_19limbs/
-${MAKE} "$@" solinas32_2e488m17_20limbs.json ../solinas32_2e488m17_20limbs/
-${MAKE} "$@" solinas64_2e488m17_9limbs.json ../solinas64_2e488m17_9limbs/
-${MAKE} "$@" solinas64_2e488m17_10limbs.json ../solinas64_2e488m17_10limbs/
-${MAKE} "$@" montgomery32_2e489m21_16limbs.json ../montgomery32_2e489m21_16limbs/
-${MAKE} "$@" montgomery64_2e489m21_8limbs.json ../montgomery64_2e489m21_8limbs/
-${MAKE} "$@" solinas32_2e489m21_19limbs.json ../solinas32_2e489m21_19limbs/
-${MAKE} "$@" solinas32_2e489m21_20limbs.json ../solinas32_2e489m21_20limbs/
-${MAKE} "$@" solinas64_2e489m21_9limbs.json ../solinas64_2e489m21_9limbs/
-${MAKE} "$@" solinas64_2e489m21_10limbs.json ../solinas64_2e489m21_10limbs/
-${MAKE} "$@" montgomery32_2e495m31_16limbs.json ../montgomery32_2e495m31_16limbs/
-${MAKE} "$@" montgomery64_2e495m31_8limbs.json ../montgomery64_2e495m31_8limbs/
-${MAKE} "$@" solinas32_2e495m31_20limbs.json ../solinas32_2e495m31_20limbs/
-${MAKE} "$@" solinas32_2e495m31_21limbs.json ../solinas32_2e495m31_21limbs/
-${MAKE} "$@" solinas64_2e495m31_9limbs.json ../solinas64_2e495m31_9limbs/
-${MAKE} "$@" solinas64_2e495m31_10limbs.json ../solinas64_2e495m31_10limbs/
-${MAKE} "$@" montgomery32_2e511m481_16limbs.json ../montgomery32_2e511m481_16limbs/
-${MAKE} "$@" montgomery64_2e511m481_8limbs.json ../montgomery64_2e511m481_8limbs/
-${MAKE} "$@" solinas32_2e511m481_23limbs.json ../solinas32_2e511m481_23limbs/
-${MAKE} "$@" solinas32_2e511m481_24limbs.json ../solinas32_2e511m481_24limbs/
-${MAKE} "$@" solinas64_2e511m481_10limbs.json ../solinas64_2e511m481_10limbs/
-${MAKE} "$@" solinas64_2e511m481_11limbs.json ../solinas64_2e511m481_11limbs/
-${MAKE} "$@" montgomery32_2e511m187_16limbs.json ../montgomery32_2e511m187_16limbs/
-${MAKE} "$@" montgomery64_2e511m187_8limbs.json ../montgomery64_2e511m187_8limbs/
-${MAKE} "$@" solinas32_2e511m187_22limbs.json ../solinas32_2e511m187_22limbs/
-${MAKE} "$@" solinas32_2e511m187_23limbs.json ../solinas32_2e511m187_23limbs/
-${MAKE} "$@" solinas64_2e511m187_10limbs.json ../solinas64_2e511m187_10limbs/
-${MAKE} "$@" solinas64_2e511m187_11limbs.json ../solinas64_2e511m187_11limbs/
-${MAKE} "$@" montgomery32_2e512m569_16limbs.json ../montgomery32_2e512m569_16limbs/
-${MAKE} "$@" montgomery64_2e512m569_8limbs.json ../montgomery64_2e512m569_8limbs/
-${MAKE} "$@" solinas32_2e512m569_24limbs.json ../solinas32_2e512m569_24limbs/
-${MAKE} "$@" solinas32_2e512m569_25limbs.json ../solinas32_2e512m569_25limbs/
-${MAKE} "$@" solinas64_2e512m569_10limbs.json ../solinas64_2e512m569_10limbs/
-${MAKE} "$@" solinas64_2e512m569_11limbs.json ../solinas64_2e512m569_11limbs/
-${MAKE} "$@" montgomery32_2e521m1_17limbs.json ../montgomery32_2e521m1_17limbs/
-${MAKE} "$@" montgomery64_2e521m1_9limbs.json ../montgomery64_2e521m1_9limbs/
-${MAKE} "$@" solinas32_2e521m1_19limbs.json ../solinas32_2e521m1_19limbs/
-${MAKE} "$@" solinas32_2e521m1_20limbs.json ../solinas32_2e521m1_20limbs/
-${MAKE} "$@" solinas64_2e521m1_9limbs.json ../solinas64_2e521m1_9limbs/
-${MAKE} "$@" solinas64_2e521m1_10limbs.json ../solinas64_2e521m1_10limbs/
-${MAKE} "$@" montgomery32_2e192m2e64m1_6limbs.json ../montgomery32_2e192m2e64m1_6limbs/
-${MAKE} "$@" montgomery64_2e192m2e64m1_3limbs.json ../montgomery64_2e192m2e64m1_3limbs/
-${MAKE} "$@" solinas32_2e192m2e64m1_9limbs.json ../solinas32_2e192m2e64m1_9limbs/
-${MAKE} "$@" solinas32_2e192m2e64m1_10limbs.json ../solinas32_2e192m2e64m1_10limbs/
-${MAKE} "$@" solinas64_2e192m2e64m1_4limbs.json ../solinas64_2e192m2e64m1_4limbs/
-${MAKE} "$@" solinas64_2e192m2e64m1_5limbs.json ../solinas64_2e192m2e64m1_5limbs/
-${MAKE} "$@" montgomery32_2e216m2e108m1_7limbs.json ../montgomery32_2e216m2e108m1_7limbs/
-${MAKE} "$@" montgomery64_2e216m2e108m1_4limbs.json ../montgomery64_2e216m2e108m1_4limbs/
-${MAKE} "$@" solinas32_2e216m2e108m1_8limbs.json ../solinas32_2e216m2e108m1_8limbs/
-${MAKE} "$@" solinas32_2e216m2e108m1_10limbs.json ../solinas32_2e216m2e108m1_10limbs/
-${MAKE} "$@" solinas64_2e216m2e108m1_4limbs.json ../solinas64_2e216m2e108m1_4limbs/
-${MAKE} "$@" solinas64_2e216m2e108m1_5limbs.json ../solinas64_2e216m2e108m1_5limbs/
-${MAKE} "$@" montgomery32_2e322m2e161m1_11limbs.json ../montgomery32_2e322m2e161m1_11limbs/
-${MAKE} "$@" montgomery64_2e322m2e161m1_6limbs.json ../montgomery64_2e322m2e161m1_6limbs/
-${MAKE} "$@" solinas32_2e322m2e161m1_12limbs.json ../solinas32_2e322m2e161m1_12limbs/
-${MAKE} "$@" solinas32_2e322m2e161m1_14limbs.json ../solinas32_2e322m2e161m1_14limbs/
-${MAKE} "$@" solinas64_2e322m2e161m1_6limbs.json ../solinas64_2e322m2e161m1_6limbs/
-${MAKE} "$@" solinas64_2e322m2e161m1_7limbs.json ../solinas64_2e322m2e161m1_7limbs/
-${MAKE} "$@" montgomery32_2e416m2e208m1_13limbs.json ../montgomery32_2e416m2e208m1_13limbs/
-${MAKE} "$@" montgomery64_2e416m2e208m1_7limbs.json ../montgomery64_2e416m2e208m1_7limbs/
-${MAKE} "$@" solinas32_2e416m2e208m1_16limbs.json ../solinas32_2e416m2e208m1_16limbs/
-${MAKE} "$@" solinas32_2e416m2e208m1_18limbs.json ../solinas32_2e416m2e208m1_18limbs/
-${MAKE} "$@" solinas64_2e416m2e208m1_8limbs.json ../solinas64_2e416m2e208m1_8limbs/
-${MAKE} "$@" solinas64_2e416m2e208m1_9limbs.json ../solinas64_2e416m2e208m1_9limbs/
-${MAKE} "$@" montgomery32_2e448m2e224m1_14limbs.json ../montgomery32_2e448m2e224m1_14limbs/
-${MAKE} "$@" montgomery64_2e448m2e224m1_7limbs.json ../montgomery64_2e448m2e224m1_7limbs/
-${MAKE} "$@" solinas32_2e448m2e224m1_16limbs.json ../solinas32_2e448m2e224m1_16limbs/
-${MAKE} "$@" solinas32_2e448m2e224m1_18limbs.json ../solinas32_2e448m2e224m1_18limbs/
-${MAKE} "$@" solinas64_2e448m2e224m1_8limbs.json ../solinas64_2e448m2e224m1_8limbs/
-${MAKE} "$@" solinas64_2e448m2e224m1_10limbs.json ../solinas64_2e448m2e224m1_10limbs/
-${MAKE} "$@" montgomery32_2e450m2e225m1_15limbs.json ../montgomery32_2e450m2e225m1_15limbs/
-${MAKE} "$@" montgomery64_2e450m2e225m1_8limbs.json ../montgomery64_2e450m2e225m1_8limbs/
-${MAKE} "$@" solinas32_2e450m2e225m1_18limbs.json ../solinas32_2e450m2e225m1_18limbs/
-${MAKE} "$@" solinas32_2e450m2e225m1_20limbs.json ../solinas32_2e450m2e225m1_20limbs/
-${MAKE} "$@" solinas64_2e450m2e225m1_8limbs.json ../solinas64_2e450m2e225m1_8limbs/
-${MAKE} "$@" solinas64_2e450m2e225m1_10limbs.json ../solinas64_2e450m2e225m1_10limbs/
-${MAKE} "$@" montgomery32_2e480m2e240m1_15limbs.json ../montgomery32_2e480m2e240m1_15limbs/
-${MAKE} "$@" montgomery64_2e480m2e240m1_8limbs.json ../montgomery64_2e480m2e240m1_8limbs/
-${MAKE} "$@" solinas32_2e480m2e240m1_18limbs.json ../solinas32_2e480m2e240m1_18limbs/
-${MAKE} "$@" solinas32_2e480m2e240m1_20limbs.json ../solinas32_2e480m2e240m1_20limbs/
-${MAKE} "$@" solinas64_2e480m2e240m1_8limbs.json ../solinas64_2e480m2e240m1_8limbs/
-${MAKE} "$@" solinas64_2e480m2e240m1_10limbs.json ../solinas64_2e480m2e240m1_10limbs/
-${MAKE} "$@" montgomery32_2e205m45x2e198m1_7limbs.json ../montgomery32_2e205m45x2e198m1_7limbs/
-${MAKE} "$@" montgomery64_2e205m45x2e198m1_4limbs.json ../montgomery64_2e205m45x2e198m1_4limbs/
-${MAKE} "$@" montgomery32_2e224m2e96p1_7limbs.json ../montgomery32_2e224m2e96p1_7limbs/
-${MAKE} "$@" montgomery64_2e224m2e96p1_4limbs.json ../montgomery64_2e224m2e96p1_4limbs/
-${MAKE} "$@" solinas32_2e224m2e96p1_10limbs.json ../solinas32_2e224m2e96p1_10limbs/
-${MAKE} "$@" solinas32_2e224m2e96p1_11limbs.json ../solinas32_2e224m2e96p1_11limbs/
-${MAKE} "$@" solinas64_2e224m2e96p1_5limbs.json ../solinas64_2e224m2e96p1_5limbs/
-${MAKE} "$@" solinas64_2e224m2e96p1_6limbs.json ../solinas64_2e224m2e96p1_6limbs/
-${MAKE} "$@" montgomery32_2e256m2e224p2e192p2e96m1_8limbs.json ../montgomery32_2e256m2e224p2e192p2e96m1_8limbs/
-${MAKE} "$@" montgomery64_2e256m2e224p2e192p2e96m1_4limbs.json ../montgomery64_2e256m2e224p2e192p2e96m1_4limbs/
-${MAKE} "$@" solinas32_2e256m2e224p2e192p2e96m1_11limbs.json ../solinas32_2e256m2e224p2e192p2e96m1_11limbs/
-${MAKE} "$@" solinas32_2e256m2e224p2e192p2e96m1_12limbs.json ../solinas32_2e256m2e224p2e192p2e96m1_12limbs/
-${MAKE} "$@" solinas64_2e256m2e224p2e192p2e96m1_5limbs.json ../solinas64_2e256m2e224p2e192p2e96m1_5limbs/
-${MAKE} "$@" solinas64_2e256m2e224p2e192p2e96m1_6limbs.json ../solinas64_2e256m2e224p2e192p2e96m1_6limbs/
-${MAKE} "$@" montgomery32_2e256m2e32m977_8limbs.json ../montgomery32_2e256m2e32m977_8limbs/
-${MAKE} "$@" montgomery64_2e256m2e32m977_4limbs.json ../montgomery64_2e256m2e32m977_4limbs/
-${MAKE} "$@" solinas32_2e256m2e32m977_12limbs.json ../solinas32_2e256m2e32m977_12limbs/
-${MAKE} "$@" solinas32_2e256m2e32m977_13limbs.json ../solinas32_2e256m2e32m977_13limbs/
-${MAKE} "$@" solinas64_2e256m2e32m977_6limbs.json ../solinas64_2e256m2e32m977_6limbs/
-${MAKE} "$@" solinas64_2e256m2e32m977_7limbs.json ../solinas64_2e256m2e32m977_7limbs/
-${MAKE} "$@" montgomery32_2e256m4294968273_8limbs.json ../montgomery32_2e256m4294968273_8limbs/
-${MAKE} "$@" montgomery64_2e256m4294968273_4limbs.json ../montgomery64_2e256m4294968273_4limbs/
-${MAKE} "$@" solinas64_2e256m4294968273_9limbs.json ../solinas64_2e256m4294968273_9limbs/
-${MAKE} "$@" solinas64_2e256m4294968273_10limbs.json ../solinas64_2e256m4294968273_10limbs/
-${MAKE} "$@" montgomery32_2e384m2e128m2e96p2e32m1_12limbs.json ../montgomery32_2e384m2e128m2e96p2e32m1_12limbs/
-${MAKE} "$@" montgomery64_2e384m2e128m2e96p2e32m1_6limbs.json ../montgomery64_2e384m2e128m2e96p2e32m1_6limbs/
-${MAKE} "$@" solinas32_2e384m2e128m2e96p2e32m1_18limbs.json ../solinas32_2e384m2e128m2e96p2e32m1_18limbs/
-${MAKE} "$@" solinas32_2e384m2e128m2e96p2e32m1_19limbs.json ../solinas32_2e384m2e128m2e96p2e32m1_19limbs/
-${MAKE} "$@" solinas64_2e384m2e128m2e96p2e32m1_9limbs.json ../solinas64_2e384m2e128m2e96p2e32m1_9limbs/
-${MAKE} "$@" solinas64_2e384m2e128m2e96p2e32m1_10limbs.json ../solinas64_2e384m2e128m2e96p2e32m1_10limbs/
-${MAKE} "$@" montgomery32_2e256m88x2e240m1_8limbs.json ../montgomery32_2e256m88x2e240m1_8limbs/
-${MAKE} "$@" montgomery64_2e256m88x2e240m1_4limbs.json ../montgomery64_2e256m88x2e240m1_4limbs/
-${MAKE} "$@" montgomery32_2e254m127x2e240m1_8limbs.json ../montgomery32_2e254m127x2e240m1_8limbs/
-${MAKE} "$@" montgomery64_2e254m127x2e240m1_4limbs.json ../montgomery64_2e254m127x2e240m1_4limbs/
-${MAKE} "$@" montgomery32_2e384m79x2e376m1_12limbs.json ../montgomery32_2e384m79x2e376m1_12limbs/
-${MAKE} "$@" montgomery64_2e384m79x2e376m1_6limbs.json ../montgomery64_2e384m79x2e376m1_6limbs/
-${MAKE} "$@" montgomery32_2e384m5x2e368m1_12limbs.json ../montgomery32_2e384m5x2e368m1_12limbs/
-${MAKE} "$@" montgomery64_2e384m5x2e368m1_6limbs.json ../montgomery64_2e384m5x2e368m1_6limbs/
-${MAKE} "$@" montgomery32_2e512m491x2e496m1_16limbs.json ../montgomery32_2e512m491x2e496m1_16limbs/
-${MAKE} "$@" montgomery64_2e512m491x2e496m1_8limbs.json ../montgomery64_2e512m491x2e496m1_8limbs/
-${MAKE} "$@" montgomery32_2e510m290x2e496m1_16limbs.json ../montgomery32_2e510m290x2e496m1_16limbs/
-${MAKE} "$@" montgomery64_2e510m290x2e496m1_8limbs.json ../montgomery64_2e510m290x2e496m1_8limbs/
diff --git a/src/Specific/CurveParameters/solinas32_2e127m1_5limbs.json b/src/Specific/CurveParameters/solinas32_2e127m1_5limbs.json
deleted file mode 100644
index e12873d2f..000000000
--- a/src/Specific/CurveParameters/solinas32_2e127m1_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "25.4",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,25,26,25,25}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='16' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<127) - 1'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,25,26,25,25}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='16' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<127) - 1'",
- "modulus": "2^127 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e127m1_6limbs.json b/src/Specific/CurveParameters/solinas32_2e127m1_6limbs.json
deleted file mode 100644
index b075c9a2a..000000000
--- a/src/Specific/CurveParameters/solinas32_2e127m1_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "21 + 1/6",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='16' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<127) - 1'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='16' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<127) - 1'",
- "modulus": "2^127 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e129m25_5limbs.json b/src/Specific/CurveParameters/solinas32_2e129m25_5limbs.json
deleted file mode 100644
index b45f044b6..000000000
--- a/src/Specific/CurveParameters/solinas32_2e129m25_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "25.8",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,26,26,26,25}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<129) - 25'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,26,26,26,25}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<129) - 25'",
- "modulus": "2^129 - 25",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e129m25_6limbs.json b/src/Specific/CurveParameters/solinas32_2e129m25_6limbs.json
deleted file mode 100644
index 87d579dcb..000000000
--- a/src/Specific/CurveParameters/solinas32_2e129m25_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "21.5",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,22,21,22,21}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<129) - 25'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,22,21,22,21}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<129) - 25'",
- "modulus": "2^129 - 25",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e130m5_5limbs.json b/src/Specific/CurveParameters/solinas32_2e130m5_5limbs.json
deleted file mode 100644
index 22a9b17fe..000000000
--- a/src/Specific/CurveParameters/solinas32_2e130m5_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "26",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,26,26,26,26}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<130) - 5'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,26,26,26,26}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<130) - 5'",
- "modulus": "2^130 - 5",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e130m5_6limbs.json b/src/Specific/CurveParameters/solinas32_2e130m5_6limbs.json
deleted file mode 100644
index a3430fbca..000000000
--- a/src/Specific/CurveParameters/solinas32_2e130m5_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "21 + 2/3",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,21,22,22,21}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<130) - 5'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,21,22,22,21}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<130) - 5'",
- "modulus": "2^130 - 5",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e137m13_5limbs.json b/src/Specific/CurveParameters/solinas32_2e137m13_5limbs.json
deleted file mode 100644
index ed84cd5a2..000000000
--- a/src/Specific/CurveParameters/solinas32_2e137m13_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "27.4",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{28,27,28,27,27}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<137) - 13'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{28,27,28,27,27}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<137) - 13'",
- "modulus": "2^137 - 13",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e137m13_6limbs.json b/src/Specific/CurveParameters/solinas32_2e137m13_6limbs.json
deleted file mode 100644
index 2a957f085..000000000
--- a/src/Specific/CurveParameters/solinas32_2e137m13_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "22 + 5/6",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,23,23,23,23,22}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<137) - 13'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,23,23,23,23,22}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<137) - 13'",
- "modulus": "2^137 - 13",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e140m27_6limbs.json b/src/Specific/CurveParameters/solinas32_2e140m27_6limbs.json
deleted file mode 100644
index 74246a427..000000000
--- a/src/Specific/CurveParameters/solinas32_2e140m27_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "23 + 1/3",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,23,23,24,23,23}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<140) - 27'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,23,23,24,23,23}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<140) - 27'",
- "modulus": "2^140 - 27",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e140m27_7limbs.json b/src/Specific/CurveParameters/solinas32_2e140m27_7limbs.json
deleted file mode 100644
index 831076f34..000000000
--- a/src/Specific/CurveParameters/solinas32_2e140m27_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "20",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{20,20,20,20,20,20,20}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<140) - 27'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{20,20,20,20,20,20,20}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<140) - 27'",
- "modulus": "2^140 - 27",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e141m9_6limbs.json b/src/Specific/CurveParameters/solinas32_2e141m9_6limbs.json
deleted file mode 100644
index 3d3deac77..000000000
--- a/src/Specific/CurveParameters/solinas32_2e141m9_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "23.5",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,23,24,23,24,23}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<141) - 9'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,23,24,23,24,23}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<141) - 9'",
- "modulus": "2^141 - 9",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e141m9_7limbs.json b/src/Specific/CurveParameters/solinas32_2e141m9_7limbs.json
deleted file mode 100644
index 78f62b924..000000000
--- a/src/Specific/CurveParameters/solinas32_2e141m9_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "20 + 1/7",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{21,20,20,20,20,20,20}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<141) - 9'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{21,20,20,20,20,20,20}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<141) - 9'",
- "modulus": "2^141 - 9",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e150m3_6limbs.json b/src/Specific/CurveParameters/solinas32_2e150m3_6limbs.json
deleted file mode 100644
index 8ab8ce29c..000000000
--- a/src/Specific/CurveParameters/solinas32_2e150m3_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "25",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,25,25,25,25}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<150) - 3'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,25,25,25,25}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<150) - 3'",
- "modulus": "2^150 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e150m3_7limbs.json b/src/Specific/CurveParameters/solinas32_2e150m3_7limbs.json
deleted file mode 100644
index 2164c1809..000000000
--- a/src/Specific/CurveParameters/solinas32_2e150m3_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "21 + 3/7",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,22,21,22,21,21}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<150) - 3'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,22,21,22,21,21}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<150) - 3'",
- "modulus": "2^150 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e150m5_6limbs.json b/src/Specific/CurveParameters/solinas32_2e150m5_6limbs.json
deleted file mode 100644
index 5ee6c1c9f..000000000
--- a/src/Specific/CurveParameters/solinas32_2e150m5_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "25",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,25,25,25,25}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<150) - 5'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,25,25,25,25}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<150) - 5'",
- "modulus": "2^150 - 5",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e150m5_7limbs.json b/src/Specific/CurveParameters/solinas32_2e150m5_7limbs.json
deleted file mode 100644
index 7adc0849a..000000000
--- a/src/Specific/CurveParameters/solinas32_2e150m5_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "21 + 3/7",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,22,21,22,21,21}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<150) - 5'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,22,21,22,21,21}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<150) - 5'",
- "modulus": "2^150 - 5",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e152m17_6limbs.json b/src/Specific/CurveParameters/solinas32_2e152m17_6limbs.json
deleted file mode 100644
index d638cd288..000000000
--- a/src/Specific/CurveParameters/solinas32_2e152m17_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "25 + 1/3",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,25,25,26,25,25}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<152) - 17'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,25,25,26,25,25}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<152) - 17'",
- "modulus": "2^152 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e152m17_7limbs.json b/src/Specific/CurveParameters/solinas32_2e152m17_7limbs.json
deleted file mode 100644
index 4c5557daa..000000000
--- a/src/Specific/CurveParameters/solinas32_2e152m17_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "21 + 5/7",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,22,21,22,22,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<152) - 17'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,22,21,22,22,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<152) - 17'",
- "modulus": "2^152 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e158m15_6limbs.json b/src/Specific/CurveParameters/solinas32_2e158m15_6limbs.json
deleted file mode 100644
index f58ebff43..000000000
--- a/src/Specific/CurveParameters/solinas32_2e158m15_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "26 + 1/3",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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'",
- "compilerxx": "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'",
- "modulus": "2^158 - 15",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e158m15_7limbs.json b/src/Specific/CurveParameters/solinas32_2e158m15_7limbs.json
deleted file mode 100644
index 5bb2f656c..000000000
--- a/src/Specific/CurveParameters/solinas32_2e158m15_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "22 + 4/7",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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='{23,23,22,23,22,23,22}' -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='7' -Dq_mpz='(1_mpz<<158) - 15'",
- "compilerxx": "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='{23,23,22,23,22,23,22}' -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='7' -Dq_mpz='(1_mpz<<158) - 15'",
- "modulus": "2^158 - 15",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e165m25_7limbs.json b/src/Specific/CurveParameters/solinas32_2e165m25_7limbs.json
deleted file mode 100644
index c6c16ff61..000000000
--- a/src/Specific/CurveParameters/solinas32_2e165m25_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "23 + 4/7",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,23,24,23,24,23}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<165) - 25'",
- "compilerxx": "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,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,23,24,23,24,23}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<165) - 25'",
- "modulus": "2^165 - 25",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e165m25_8limbs.json b/src/Specific/CurveParameters/solinas32_2e165m25_8limbs.json
deleted file mode 100644
index 4bd96de49..000000000
--- a/src/Specific/CurveParameters/solinas32_2e165m25_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "20.625",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{21,21,20,21,21,20,21,20}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<165) - 25'",
- "compilerxx": "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,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{21,21,20,21,21,20,21,20}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<165) - 25'",
- "modulus": "2^165 - 25",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e166m5_6limbs.json b/src/Specific/CurveParameters/solinas32_2e166m5_6limbs.json
deleted file mode 100644
index d5e7a6a74..000000000
--- a/src/Specific/CurveParameters/solinas32_2e166m5_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "27 + 2/3",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{28,28,27,28,28,27}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<166) - 5'",
- "compilerxx": "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,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{28,28,27,28,28,27}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<166) - 5'",
- "modulus": "2^166 - 5",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e166m5_7limbs.json b/src/Specific/CurveParameters/solinas32_2e166m5_7limbs.json
deleted file mode 100644
index cc055068e..000000000
--- a/src/Specific/CurveParameters/solinas32_2e166m5_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "23 + 5/7",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,24,23,24,24,23}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<166) - 5'",
- "compilerxx": "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,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,24,23,24,24,23}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<166) - 5'",
- "modulus": "2^166 - 5",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e171m19_7limbs.json b/src/Specific/CurveParameters/solinas32_2e171m19_7limbs.json
deleted file mode 100644
index f0cecef29..000000000
--- a/src/Specific/CurveParameters/solinas32_2e171m19_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "24 + 3/7",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,24,25,24,25,24,24}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<171) - 19'",
- "compilerxx": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,24,25,24,25,24,24}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<171) - 19'",
- "modulus": "2^171 - 19",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e171m19_8limbs.json b/src/Specific/CurveParameters/solinas32_2e171m19_8limbs.json
deleted file mode 100644
index b9c0b9190..000000000
--- a/src/Specific/CurveParameters/solinas32_2e171m19_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "21.375",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,22,21,21,22,21,21}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<171) - 19'",
- "compilerxx": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,22,21,21,22,21,21}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<171) - 19'",
- "modulus": "2^171 - 19",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e174m17_7limbs.json b/src/Specific/CurveParameters/solinas32_2e174m17_7limbs.json
deleted file mode 100644
index b47a355d1..000000000
--- a/src/Specific/CurveParameters/solinas32_2e174m17_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "24 + 6/7",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,25,25,25,25,24}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<174) - 17'",
- "compilerxx": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,25,25,25,25,24}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<174) - 17'",
- "modulus": "2^174 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e174m17_8limbs.json b/src/Specific/CurveParameters/solinas32_2e174m17_8limbs.json
deleted file mode 100644
index 3f95162d3..000000000
--- a/src/Specific/CurveParameters/solinas32_2e174m17_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "21.75",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,22,21,22,22,22,21}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<174) - 17'",
- "compilerxx": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,22,21,22,22,22,21}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<174) - 17'",
- "modulus": "2^174 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e174m3_7limbs.json b/src/Specific/CurveParameters/solinas32_2e174m3_7limbs.json
deleted file mode 100644
index 68205243c..000000000
--- a/src/Specific/CurveParameters/solinas32_2e174m3_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "24 + 6/7",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,25,25,25,25,24}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<174) - 3'",
- "compilerxx": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,25,25,25,25,24}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<174) - 3'",
- "modulus": "2^174 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e174m3_8limbs.json b/src/Specific/CurveParameters/solinas32_2e174m3_8limbs.json
deleted file mode 100644
index ee287924d..000000000
--- a/src/Specific/CurveParameters/solinas32_2e174m3_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "21.75",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,22,21,22,22,22,21}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<174) - 3'",
- "compilerxx": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,22,21,22,22,22,21}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<174) - 3'",
- "modulus": "2^174 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e189m25_7limbs.json b/src/Specific/CurveParameters/solinas32_2e189m25_7limbs.json
deleted file mode 100644
index 3a2d13841..000000000
--- a/src/Specific/CurveParameters/solinas32_2e189m25_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "27",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<189) - 25'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<189) - 25'",
- "modulus": "2^189 - 25",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e189m25_8limbs.json b/src/Specific/CurveParameters/solinas32_2e189m25_8limbs.json
deleted file mode 100644
index d1e910831..000000000
--- a/src/Specific/CurveParameters/solinas32_2e189m25_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "23.625",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,23,24,24,23,24,23}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<189) - 25'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,23,24,24,23,24,23}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<189) - 25'",
- "modulus": "2^189 - 25",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e190m11_7limbs.json b/src/Specific/CurveParameters/solinas32_2e190m11_7limbs.json
deleted file mode 100644
index 582557c80..000000000
--- a/src/Specific/CurveParameters/solinas32_2e190m11_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "27 + 1/7",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{28,27,27,27,27,27,27}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<190) - 11'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{28,27,27,27,27,27,27}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<190) - 11'",
- "modulus": "2^190 - 11",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e190m11_8limbs.json b/src/Specific/CurveParameters/solinas32_2e190m11_8limbs.json
deleted file mode 100644
index 817f3657d..000000000
--- a/src/Specific/CurveParameters/solinas32_2e190m11_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "23.75",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,24,23,24,24,24,23}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<190) - 11'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,24,23,24,24,24,23}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<190) - 11'",
- "modulus": "2^190 - 11",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e191m19_8limbs.json b/src/Specific/CurveParameters/solinas32_2e191m19_8limbs.json
deleted file mode 100644
index 4472f2e8b..000000000
--- a/src/Specific/CurveParameters/solinas32_2e191m19_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "23.875",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,23}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<191) - 19'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,23}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<191) - 19'",
- "modulus": "2^191 - 19",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e191m19_9limbs.json b/src/Specific/CurveParameters/solinas32_2e191m19_9limbs.json
deleted file mode 100644
index 2817729bc..000000000
--- a/src/Specific/CurveParameters/solinas32_2e191m19_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "21 + 2/9",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,21,22,21,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<191) - 19'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,21,22,21,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<191) - 19'",
- "modulus": "2^191 - 19",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e192m2e64m1_10limbs.json b/src/Specific/CurveParameters/solinas32_2e192m2e64m1_10limbs.json
deleted file mode 100644
index 1f34734fd..000000000
--- a/src/Specific/CurveParameters/solinas32_2e192m2e64m1_10limbs.json
+++ /dev/null
@@ -1,39 +0,0 @@
-{
- "base": "19.2",
- "bitwidth": 32,
- "carry_chains": [
- [
- 2,
- 9
- ],
- [
- 3,
- 0,
- 4,
- 1,
- 5,
- 2,
- 6,
- 7,
- 8,
- 9
- ],
- [
- 3,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{20,19,19,19,19,20,19,19,19,19}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{20,19,19,19,19,20,19,19,19,19}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1'",
- "modulus": "2^192 - 2^64 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "10"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e192m2e64m1_9limbs.json b/src/Specific/CurveParameters/solinas32_2e192m2e64m1_9limbs.json
deleted file mode 100644
index 0818a8b09..000000000
--- a/src/Specific/CurveParameters/solinas32_2e192m2e64m1_9limbs.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "base": "21 + 1/3",
- "bitwidth": 32,
- "carry_chains": [
- [
- 2,
- 8
- ],
- [
- 3,
- 0,
- 4,
- 1,
- 5,
- 2,
- 6,
- 7,
- 8
- ],
- [
- 3,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1'",
- "modulus": "2^192 - 2^64 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e194m33_8limbs.json b/src/Specific/CurveParameters/solinas32_2e194m33_8limbs.json
deleted file mode 100644
index b8f294ee7..000000000
--- a/src/Specific/CurveParameters/solinas32_2e194m33_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "24.25",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,24,24,24,25,24,24,24}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<194) - 33'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,24,24,24,25,24,24,24}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<194) - 33'",
- "modulus": "2^194 - 33",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e194m33_9limbs.json b/src/Specific/CurveParameters/solinas32_2e194m33_9limbs.json
deleted file mode 100644
index 348820ac8..000000000
--- a/src/Specific/CurveParameters/solinas32_2e194m33_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "21 + 5/9",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,21,22,21,22,21,22,21}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<194) - 33'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,21,22,21,22,21,22,21}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<194) - 33'",
- "modulus": "2^194 - 33",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e196m15_8limbs.json b/src/Specific/CurveParameters/solinas32_2e196m15_8limbs.json
deleted file mode 100644
index 69a594b07..000000000
--- a/src/Specific/CurveParameters/solinas32_2e196m15_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "24.5",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,24,25,24,25,24,25,24}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<196) - 15'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,24,25,24,25,24,25,24}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<196) - 15'",
- "modulus": "2^196 - 15",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e196m15_9limbs.json b/src/Specific/CurveParameters/solinas32_2e196m15_9limbs.json
deleted file mode 100644
index 6e7b4b850..000000000
--- a/src/Specific/CurveParameters/solinas32_2e196m15_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "21 + 7/9",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,22,22,21,22,22,22,21}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<196) - 15'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,22,22,21,22,22,22,21}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<196) - 15'",
- "modulus": "2^196 - 15",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e198m17_8limbs.json b/src/Specific/CurveParameters/solinas32_2e198m17_8limbs.json
deleted file mode 100644
index d10b6c474..000000000
--- a/src/Specific/CurveParameters/solinas32_2e198m17_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "24.75",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,25,24,25,25,25,24}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<198) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,25,24,25,25,25,24}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<198) - 17'",
- "modulus": "2^198 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e198m17_9limbs.json b/src/Specific/CurveParameters/solinas32_2e198m17_9limbs.json
deleted file mode 100644
index 1e79e4eb8..000000000
--- a/src/Specific/CurveParameters/solinas32_2e198m17_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "22",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,22,22,22,22,22,22,22}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<198) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,22,22,22,22,22,22,22}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<198) - 17'",
- "modulus": "2^198 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e206m5_8limbs.json b/src/Specific/CurveParameters/solinas32_2e206m5_8limbs.json
deleted file mode 100644
index 1d9dee2b9..000000000
--- a/src/Specific/CurveParameters/solinas32_2e206m5_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "25.75",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,26,26,25,26,26,26,25}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<206) - 5'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,26,26,25,26,26,26,25}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<206) - 5'",
- "modulus": "2^206 - 5",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e206m5_9limbs.json b/src/Specific/CurveParameters/solinas32_2e206m5_9limbs.json
deleted file mode 100644
index fe560ee3c..000000000
--- a/src/Specific/CurveParameters/solinas32_2e206m5_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "22 + 8/9",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,22}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<206) - 5'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,22}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<206) - 5'",
- "modulus": "2^206 - 5",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e212m29_8limbs.json b/src/Specific/CurveParameters/solinas32_2e212m29_8limbs.json
deleted file mode 100644
index 4e26e0899..000000000
--- a/src/Specific/CurveParameters/solinas32_2e212m29_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "26.5",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,26,27,26,27,26,27,26}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<212) - 29'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,26,27,26,27,26,27,26}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<212) - 29'",
- "modulus": "2^212 - 29",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e212m29_9limbs.json b/src/Specific/CurveParameters/solinas32_2e212m29_9limbs.json
deleted file mode 100644
index 525c4c4fa..000000000
--- a/src/Specific/CurveParameters/solinas32_2e212m29_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "23 + 5/9",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,23,24,23,24,23,24,23}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<212) - 29'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,23,24,23,24,23,24,23}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<212) - 29'",
- "modulus": "2^212 - 29",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e213m3_8limbs.json b/src/Specific/CurveParameters/solinas32_2e213m3_8limbs.json
deleted file mode 100644
index 7ecc61d2b..000000000
--- a/src/Specific/CurveParameters/solinas32_2e213m3_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "26.625",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,27,26,27,27,26,27,26}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<213) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,27,26,27,27,26,27,26}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<213) - 3'",
- "modulus": "2^213 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e213m3_9limbs.json b/src/Specific/CurveParameters/solinas32_2e213m3_9limbs.json
deleted file mode 100644
index a58195664..000000000
--- a/src/Specific/CurveParameters/solinas32_2e213m3_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "23 + 2/3",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,23,24,24,23,24,24,23}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<213) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,23,24,24,23,24,24,23}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<213) - 3'",
- "modulus": "2^213 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e216m2e108m1_10limbs.json b/src/Specific/CurveParameters/solinas32_2e216m2e108m1_10limbs.json
deleted file mode 100644
index 4c76d40e7..000000000
--- a/src/Specific/CurveParameters/solinas32_2e216m2e108m1_10limbs.json
+++ /dev/null
@@ -1,40 +0,0 @@
-{
- "base": "21.6",
- "bitwidth": 32,
- "carry_chains": [
- [
- 4,
- 9
- ],
- [
- 5,
- 0,
- 6,
- 1,
- 7,
- 2,
- 8,
- 3,
- 9,
- 4
- ],
- [
- 5,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,21,22,21,22,22,21,22,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,21,22,21,22,22,21,22,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1'",
- "goldilocks": true,
- "modulus": "2^216 - 2^108 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "10"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e216m2e108m1_8limbs.json b/src/Specific/CurveParameters/solinas32_2e216m2e108m1_8limbs.json
deleted file mode 100644
index 45f2bcbaf..000000000
--- a/src/Specific/CurveParameters/solinas32_2e216m2e108m1_8limbs.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "base": "27",
- "bitwidth": 32,
- "carry_chains": [
- [
- 3,
- 7
- ],
- [
- 4,
- 0,
- 5,
- 1,
- 6,
- 2,
- 7,
- 3
- ],
- [
- 4,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27,27}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27,27}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1'",
- "goldilocks": true,
- "modulus": "2^216 - 2^108 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e221m3_8limbs.json b/src/Specific/CurveParameters/solinas32_2e221m3_8limbs.json
deleted file mode 100644
index 9e8afa548..000000000
--- a/src/Specific/CurveParameters/solinas32_2e221m3_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "27.625",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{28,28,27,28,28,27,28,27}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<221) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{28,28,27,28,28,27,28,27}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<221) - 3'",
- "modulus": "2^221 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e221m3_9limbs.json b/src/Specific/CurveParameters/solinas32_2e221m3_9limbs.json
deleted file mode 100644
index 6ef357cbe..000000000
--- a/src/Specific/CurveParameters/solinas32_2e221m3_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "24 + 5/9",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,24,25,24,25,24,25,24}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<221) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,24,25,24,25,24,25,24}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<221) - 3'",
- "modulus": "2^221 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e222m117_10limbs.json b/src/Specific/CurveParameters/solinas32_2e222m117_10limbs.json
deleted file mode 100644
index 70fd392bf..000000000
--- a/src/Specific/CurveParameters/solinas32_2e222m117_10limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "22.2",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,22,22,22,22,23,22,22,22,22}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<222) - 117'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,22,22,22,22,23,22,22,22,22}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<222) - 117'",
- "modulus": "2^222 - 117",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "10"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e222m117_9limbs.json b/src/Specific/CurveParameters/solinas32_2e222m117_9limbs.json
deleted file mode 100644
index bc3dd885e..000000000
--- a/src/Specific/CurveParameters/solinas32_2e222m117_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "24 + 2/3",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,24,25,25,24,25,25,24}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<222) - 117'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,24,25,25,24,25,25,24}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<222) - 117'",
- "modulus": "2^222 - 117",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e224m2e96p1_10limbs.json b/src/Specific/CurveParameters/solinas32_2e224m2e96p1_10limbs.json
deleted file mode 100644
index 6b710f160..000000000
--- a/src/Specific/CurveParameters/solinas32_2e224m2e96p1_10limbs.json
+++ /dev/null
@@ -1,39 +0,0 @@
-{
- "base": "22.4",
- "bitwidth": 32,
- "carry_chains": [
- [
- 3,
- 9
- ],
- [
- 4,
- 0,
- 5,
- 1,
- 6,
- 2,
- 7,
- 3,
- 8,
- 9
- ],
- [
- 4,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,22,23,22,22,23,22,23,22,22}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,22,23,22,22,23,22,23,22,22}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1'",
- "modulus": "2^224 - 2^96 + 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "10"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e224m2e96p1_11limbs.json b/src/Specific/CurveParameters/solinas32_2e224m2e96p1_11limbs.json
deleted file mode 100644
index d1922f745..000000000
--- a/src/Specific/CurveParameters/solinas32_2e224m2e96p1_11limbs.json
+++ /dev/null
@@ -1,40 +0,0 @@
-{
- "base": "20 + 4/11",
- "bitwidth": 32,
- "carry_chains": [
- [
- 3,
- 10
- ],
- [
- 4,
- 0,
- 5,
- 1,
- 6,
- 2,
- 7,
- 3,
- 8,
- 9,
- 10
- ],
- [
- 4,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{21,20,21,20,20,21,20,20,21,20,20}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{21,20,21,20,20,21,20,20,21,20,20}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1'",
- "modulus": "2^224 - 2^96 + 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "11"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e226m5_10limbs.json b/src/Specific/CurveParameters/solinas32_2e226m5_10limbs.json
deleted file mode 100644
index fbba962ce..000000000
--- a/src/Specific/CurveParameters/solinas32_2e226m5_10limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "22.6",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,23,22,23,22,23,23,22,23,22}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<226) - 5'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,23,22,23,22,23,23,22,23,22}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<226) - 5'",
- "modulus": "2^226 - 5",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "10"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e226m5_9limbs.json b/src/Specific/CurveParameters/solinas32_2e226m5_9limbs.json
deleted file mode 100644
index 0f29ec8f9..000000000
--- a/src/Specific/CurveParameters/solinas32_2e226m5_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "25 + 1/9",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<226) - 5'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<226) - 5'",
- "modulus": "2^226 - 5",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e230m27_10limbs.json b/src/Specific/CurveParameters/solinas32_2e230m27_10limbs.json
deleted file mode 100644
index 01081541d..000000000
--- a/src/Specific/CurveParameters/solinas32_2e230m27_10limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "23",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<230) - 27'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<230) - 27'",
- "modulus": "2^230 - 27",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "10"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e230m27_9limbs.json b/src/Specific/CurveParameters/solinas32_2e230m27_9limbs.json
deleted file mode 100644
index 3a740f494..000000000
--- a/src/Specific/CurveParameters/solinas32_2e230m27_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "25 + 5/9",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,26,25,26,25,26,25,26,25}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<230) - 27'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,26,25,26,25,26,25,26,25}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<230) - 27'",
- "modulus": "2^230 - 27",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e235m15_10limbs.json b/src/Specific/CurveParameters/solinas32_2e235m15_10limbs.json
deleted file mode 100644
index 6ca1fc469..000000000
--- a/src/Specific/CurveParameters/solinas32_2e235m15_10limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "23.5",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,23,24,23,24,23,24,23,24,23}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='30' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<235) - 15'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,23,24,23,24,23,24,23,24,23}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='30' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<235) - 15'",
- "modulus": "2^235 - 15",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "10"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e235m15_9limbs.json b/src/Specific/CurveParameters/solinas32_2e235m15_9limbs.json
deleted file mode 100644
index c49318a70..000000000
--- a/src/Specific/CurveParameters/solinas32_2e235m15_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "26 + 1/9",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='30' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<235) - 15'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='30' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<235) - 15'",
- "modulus": "2^235 - 15",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e243m9_10limbs.json b/src/Specific/CurveParameters/solinas32_2e243m9_10limbs.json
deleted file mode 100644
index 74e3e1dbe..000000000
--- a/src/Specific/CurveParameters/solinas32_2e243m9_10limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "24.3",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,24,24,25,24,24,25,24,24,24}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='31' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<243) - 9'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,24,24,25,24,24,25,24,24,24}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='31' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<243) - 9'",
- "modulus": "2^243 - 9",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "10"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e243m9_9limbs.json b/src/Specific/CurveParameters/solinas32_2e243m9_9limbs.json
deleted file mode 100644
index 815480794..000000000
--- a/src/Specific/CurveParameters/solinas32_2e243m9_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "27",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27,27,27}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='31' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<243) - 9'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27,27,27}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='31' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<243) - 9'",
- "modulus": "2^243 - 9",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e251m9_10limbs.json b/src/Specific/CurveParameters/solinas32_2e251m9_10limbs.json
deleted file mode 100644
index ab9fad470..000000000
--- a/src/Specific/CurveParameters/solinas32_2e251m9_10limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "25.1",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,25,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<251) - 9'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,25,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<251) - 9'",
- "modulus": "2^251 - 9",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "10"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e251m9_11limbs.json b/src/Specific/CurveParameters/solinas32_2e251m9_11limbs.json
deleted file mode 100644
index f0419a8ef..000000000
--- a/src/Specific/CurveParameters/solinas32_2e251m9_11limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "22 + 9/11",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,23,23,23,23,22,23,23,23,23,22}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<251) - 9'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,23,23,23,23,22,23,23,23,23,22}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<251) - 9'",
- "modulus": "2^251 - 9",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "11"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e255m19_10limbs.json b/src/Specific/CurveParameters/solinas32_2e255m19_10limbs.json
deleted file mode 100644
index 35a1c2bc2..000000000
--- a/src/Specific/CurveParameters/solinas32_2e255m19_10limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "25.5",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,25,26,25,26,25,26,25,26,25}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<255) - 19'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,25,26,25,26,25,26,25,26,25}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<255) - 19'",
- "modulus": "2^255 - 19",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "10"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e255m19_10limbs_donna.json b/src/Specific/CurveParameters/solinas32_2e255m19_10limbs_donna.json
deleted file mode 100644
index 3e56b84de..000000000
--- a/src/Specific/CurveParameters/solinas32_2e255m19_10limbs_donna.json
+++ /dev/null
@@ -1,237 +0,0 @@
-{
- "base": "25.5",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,25,26,25,26,25,26,25,26,25}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<255) - 19'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,25,26,25,26,25,26,25,26,25}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<255) - 19'",
- "modulus": "2^255 - 19",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "10",
- "mul_header" : "(* Micro-optimized form from curve25519-donna by Adam Langley (Google) and Daniel Bernstein. See <https://github.com/agl/curve25519-donna/blob/master/LICENSE.md>. *)",
- "mul_code"
- :
- "
- output[0] = ((limb) ((s32) in2[0])) * ((s32) in[0]);
- output[1] = ((limb) ((s32) in2[0])) * ((s32) in[1]) +
- ((limb) ((s32) in2[1])) * ((s32) in[0]);
- output[2] = 2 * ((limb) ((s32) in2[1])) * ((s32) in[1]) +
- ((limb) ((s32) in2[0])) * ((s32) in[2]) +
- ((limb) ((s32) in2[2])) * ((s32) in[0]);
- output[3] = ((limb) ((s32) in2[1])) * ((s32) in[2]) +
- ((limb) ((s32) in2[2])) * ((s32) in[1]) +
- ((limb) ((s32) in2[0])) * ((s32) in[3]) +
- ((limb) ((s32) in2[3])) * ((s32) in[0]);
- output[4] = ((limb) ((s32) in2[2])) * ((s32) in[2]) +
- 2 * (((limb) ((s32) in2[1])) * ((s32) in[3]) +
- ((limb) ((s32) in2[3])) * ((s32) in[1])) +
- ((limb) ((s32) in2[0])) * ((s32) in[4]) +
- ((limb) ((s32) in2[4])) * ((s32) in[0]);
- output[5] = ((limb) ((s32) in2[2])) * ((s32) in[3]) +
- ((limb) ((s32) in2[3])) * ((s32) in[2]) +
- ((limb) ((s32) in2[1])) * ((s32) in[4]) +
- ((limb) ((s32) in2[4])) * ((s32) in[1]) +
- ((limb) ((s32) in2[0])) * ((s32) in[5]) +
- ((limb) ((s32) in2[5])) * ((s32) in[0]);
- output[6] = 2 * (((limb) ((s32) in2[3])) * ((s32) in[3]) +
- ((limb) ((s32) in2[1])) * ((s32) in[5]) +
- ((limb) ((s32) in2[5])) * ((s32) in[1])) +
- ((limb) ((s32) in2[2])) * ((s32) in[4]) +
- ((limb) ((s32) in2[4])) * ((s32) in[2]) +
- ((limb) ((s32) in2[0])) * ((s32) in[6]) +
- ((limb) ((s32) in2[6])) * ((s32) in[0]);
- output[7] = ((limb) ((s32) in2[3])) * ((s32) in[4]) +
- ((limb) ((s32) in2[4])) * ((s32) in[3]) +
- ((limb) ((s32) in2[2])) * ((s32) in[5]) +
- ((limb) ((s32) in2[5])) * ((s32) in[2]) +
- ((limb) ((s32) in2[1])) * ((s32) in[6]) +
- ((limb) ((s32) in2[6])) * ((s32) in[1]) +
- ((limb) ((s32) in2[0])) * ((s32) in[7]) +
- ((limb) ((s32) in2[7])) * ((s32) in[0]);
- output[8] = ((limb) ((s32) in2[4])) * ((s32) in[4]) +
- 2 * (((limb) ((s32) in2[3])) * ((s32) in[5]) +
- ((limb) ((s32) in2[5])) * ((s32) in[3]) +
- ((limb) ((s32) in2[1])) * ((s32) in[7]) +
- ((limb) ((s32) in2[7])) * ((s32) in[1])) +
- ((limb) ((s32) in2[2])) * ((s32) in[6]) +
- ((limb) ((s32) in2[6])) * ((s32) in[2]) +
- ((limb) ((s32) in2[0])) * ((s32) in[8]) +
- ((limb) ((s32) in2[8])) * ((s32) in[0]);
- output[9] = ((limb) ((s32) in2[4])) * ((s32) in[5]) +
- ((limb) ((s32) in2[5])) * ((s32) in[4]) +
- ((limb) ((s32) in2[3])) * ((s32) in[6]) +
- ((limb) ((s32) in2[6])) * ((s32) in[3]) +
- ((limb) ((s32) in2[2])) * ((s32) in[7]) +
- ((limb) ((s32) in2[7])) * ((s32) in[2]) +
- ((limb) ((s32) in2[1])) * ((s32) in[8]) +
- ((limb) ((s32) in2[8])) * ((s32) in[1]) +
- ((limb) ((s32) in2[0])) * ((s32) in[9]) +
- ((limb) ((s32) in2[9])) * ((s32) in[0]);
- output[10] = 2 * (((limb) ((s32) in2[5])) * ((s32) in[5]) +
- ((limb) ((s32) in2[3])) * ((s32) in[7]) +
- ((limb) ((s32) in2[7])) * ((s32) in[3]) +
- ((limb) ((s32) in2[1])) * ((s32) in[9]) +
- ((limb) ((s32) in2[9])) * ((s32) in[1])) +
- ((limb) ((s32) in2[4])) * ((s32) in[6]) +
- ((limb) ((s32) in2[6])) * ((s32) in[4]) +
- ((limb) ((s32) in2[2])) * ((s32) in[8]) +
- ((limb) ((s32) in2[8])) * ((s32) in[2]);
- output[11] = ((limb) ((s32) in2[5])) * ((s32) in[6]) +
- ((limb) ((s32) in2[6])) * ((s32) in[5]) +
- ((limb) ((s32) in2[4])) * ((s32) in[7]) +
- ((limb) ((s32) in2[7])) * ((s32) in[4]) +
- ((limb) ((s32) in2[3])) * ((s32) in[8]) +
- ((limb) ((s32) in2[8])) * ((s32) in[3]) +
- ((limb) ((s32) in2[2])) * ((s32) in[9]) +
- ((limb) ((s32) in2[9])) * ((s32) in[2]);
- output[12] = ((limb) ((s32) in2[6])) * ((s32) in[6]) +
- 2 * (((limb) ((s32) in2[5])) * ((s32) in[7]) +
- ((limb) ((s32) in2[7])) * ((s32) in[5]) +
- ((limb) ((s32) in2[3])) * ((s32) in[9]) +
- ((limb) ((s32) in2[9])) * ((s32) in[3])) +
- ((limb) ((s32) in2[4])) * ((s32) in[8]) +
- ((limb) ((s32) in2[8])) * ((s32) in[4]);
- output[13] = ((limb) ((s32) in2[6])) * ((s32) in[7]) +
- ((limb) ((s32) in2[7])) * ((s32) in[6]) +
- ((limb) ((s32) in2[5])) * ((s32) in[8]) +
- ((limb) ((s32) in2[8])) * ((s32) in[5]) +
- ((limb) ((s32) in2[4])) * ((s32) in[9]) +
- ((limb) ((s32) in2[9])) * ((s32) in[4]);
- output[14] = 2 * (((limb) ((s32) in2[7])) * ((s32) in[7]) +
- ((limb) ((s32) in2[5])) * ((s32) in[9]) +
- ((limb) ((s32) in2[9])) * ((s32) in[5])) +
- ((limb) ((s32) in2[6])) * ((s32) in[8]) +
- ((limb) ((s32) in2[8])) * ((s32) in[6]);
- output[15] = ((limb) ((s32) in2[7])) * ((s32) in[8]) +
- ((limb) ((s32) in2[8])) * ((s32) in[7]) +
- ((limb) ((s32) in2[6])) * ((s32) in[9]) +
- ((limb) ((s32) in2[9])) * ((s32) in[6]);
- output[16] = ((limb) ((s32) in2[8])) * ((s32) in[8]) +
- 2 * (((limb) ((s32) in2[7])) * ((s32) in[9]) +
- ((limb) ((s32) in2[9])) * ((s32) in[7]));
- output[17] = ((limb) ((s32) in2[8])) * ((s32) in[9]) +
- ((limb) ((s32) in2[9])) * ((s32) in[8]);
- output[18] = 2 * ((limb) ((s32) in2[9])) * ((s32) in[9]);
- output[8] += output[18] << 4;
- output[8] += output[18] << 1;
- output[8] += output[18];
- output[7] += output[17] << 4;
- output[7] += output[17] << 1;
- output[7] += output[17];
- output[6] += output[16] << 4;
- output[6] += output[16] << 1;
- output[6] += output[16];
- output[5] += output[15] << 4;
- output[5] += output[15] << 1;
- output[5] += output[15];
- output[4] += output[14] << 4;
- output[4] += output[14] << 1;
- output[4] += output[14];
- output[3] += output[13] << 4;
- output[3] += output[13] << 1;
- output[3] += output[13];
- output[2] += output[12] << 4;
- output[2] += output[12] << 1;
- output[2] += output[12];
- output[1] += output[11] << 4;
- output[1] += output[11] << 1;
- output[1] += output[11];
- output[0] += output[10] << 4;
- output[0] += output[10] << 1;
- output[0] += output[10];
-",
- "square_header" : "(* Micro-optimized form from curve25519-donna by Adam Langley (Google) and Daniel Bernstein. See <https://github.com/agl/curve25519-donna/blob/master/LICENSE.md>. *)",
- "square_code"
- :
- "
- output[0] = ((limb) ((s32) in[0])) * ((s32) in[0]);
- output[1] = 2 * ((limb) ((s32) in[0])) * ((s32) in[1]);
- output[2] = 2 * (((limb) ((s32) in[1])) * ((s32) in[1]) +
- ((limb) ((s32) in[0])) * ((s32) in[2]));
- output[3] = 2 * (((limb) ((s32) in[1])) * ((s32) in[2]) +
- ((limb) ((s32) in[0])) * ((s32) in[3]));
- output[4] = ((limb) ((s32) in[2])) * ((s32) in[2]) +
- 4 * ((limb) ((s32) in[1])) * ((s32) in[3]) +
- 2 * ((limb) ((s32) in[0])) * ((s32) in[4]);
- output[5] = 2 * (((limb) ((s32) in[2])) * ((s32) in[3]) +
- ((limb) ((s32) in[1])) * ((s32) in[4]) +
- ((limb) ((s32) in[0])) * ((s32) in[5]));
- output[6] = 2 * (((limb) ((s32) in[3])) * ((s32) in[3]) +
- ((limb) ((s32) in[2])) * ((s32) in[4]) +
- ((limb) ((s32) in[0])) * ((s32) in[6]) +
- 2 * ((limb) ((s32) in[1])) * ((s32) in[5]));
- output[7] = 2 * (((limb) ((s32) in[3])) * ((s32) in[4]) +
- ((limb) ((s32) in[2])) * ((s32) in[5]) +
- ((limb) ((s32) in[1])) * ((s32) in[6]) +
- ((limb) ((s32) in[0])) * ((s32) in[7]));
- output[8] = ((limb) ((s32) in[4])) * ((s32) in[4]) +
- 2 * (((limb) ((s32) in[2])) * ((s32) in[6]) +
- ((limb) ((s32) in[0])) * ((s32) in[8]) +
- 2 * (((limb) ((s32) in[1])) * ((s32) in[7]) +
- ((limb) ((s32) in[3])) * ((s32) in[5])));
- output[9] = 2 * (((limb) ((s32) in[4])) * ((s32) in[5]) +
- ((limb) ((s32) in[3])) * ((s32) in[6]) +
- ((limb) ((s32) in[2])) * ((s32) in[7]) +
- ((limb) ((s32) in[1])) * ((s32) in[8]) +
- ((limb) ((s32) in[0])) * ((s32) in[9]));
- output[10] = 2 * (((limb) ((s32) in[5])) * ((s32) in[5]) +
- ((limb) ((s32) in[4])) * ((s32) in[6]) +
- ((limb) ((s32) in[2])) * ((s32) in[8]) +
- 2 * (((limb) ((s32) in[3])) * ((s32) in[7]) +
- ((limb) ((s32) in[1])) * ((s32) in[9])));
- output[11] = 2 * (((limb) ((s32) in[5])) * ((s32) in[6]) +
- ((limb) ((s32) in[4])) * ((s32) in[7]) +
- ((limb) ((s32) in[3])) * ((s32) in[8]) +
- ((limb) ((s32) in[2])) * ((s32) in[9]));
- output[12] = ((limb) ((s32) in[6])) * ((s32) in[6]) +
- 2 * (((limb) ((s32) in[4])) * ((s32) in[8]) +
- 2 * (((limb) ((s32) in[5])) * ((s32) in[7]) +
- ((limb) ((s32) in[3])) * ((s32) in[9])));
- output[13] = 2 * (((limb) ((s32) in[6])) * ((s32) in[7]) +
- ((limb) ((s32) in[5])) * ((s32) in[8]) +
- ((limb) ((s32) in[4])) * ((s32) in[9]));
- output[14] = 2 * (((limb) ((s32) in[7])) * ((s32) in[7]) +
- ((limb) ((s32) in[6])) * ((s32) in[8]) +
- 2 * ((limb) ((s32) in[5])) * ((s32) in[9]));
- output[15] = 2 * (((limb) ((s32) in[7])) * ((s32) in[8]) +
- ((limb) ((s32) in[6])) * ((s32) in[9]));
- output[16] = ((limb) ((s32) in[8])) * ((s32) in[8]) +
- 4 * ((limb) ((s32) in[7])) * ((s32) in[9]);
- output[17] = 2 * ((limb) ((s32) in[8])) * ((s32) in[9]);
- output[18] = 2 * ((limb) ((s32) in[9])) * ((s32) in[9]);
- output[8] += output[18] << 4;
- output[8] += output[18] << 1;
- output[8] += output[18];
- output[7] += output[17] << 4;
- output[7] += output[17] << 1;
- output[7] += output[17];
- output[6] += output[16] << 4;
- output[6] += output[16] << 1;
- output[6] += output[16];
- output[5] += output[15] << 4;
- output[5] += output[15] << 1;
- output[5] += output[15];
- output[4] += output[14] << 4;
- output[4] += output[14] << 1;
- output[4] += output[14];
- output[3] += output[13] << 4;
- output[3] += output[13] << 1;
- output[3] += output[13];
- output[2] += output[12] << 4;
- output[2] += output[12] << 1;
- output[2] += output[12];
- output[1] += output[11] << 4;
- output[1] += output[11] << 1;
- output[1] += output[11];
- output[0] += output[10] << 4;
- output[0] += output[10] << 1;
- output[0] += output[10];
-"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e255m19_11limbs.json b/src/Specific/CurveParameters/solinas32_2e255m19_11limbs.json
deleted file mode 100644
index f6601633e..000000000
--- a/src/Specific/CurveParameters/solinas32_2e255m19_11limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "23 + 2/11",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,23,23,23,23,24,23,23,23,23,23}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<255) - 19'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,23,23,23,23,24,23,23,23,23,23}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<255) - 19'",
- "modulus": "2^255 - 19",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "11"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e255m765_12limbs.json b/src/Specific/CurveParameters/solinas32_2e255m765_12limbs.json
deleted file mode 100644
index 4ac048497..000000000
--- a/src/Specific/CurveParameters/solinas32_2e255m765_12limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "21.25",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,21,22,21,21,21,22,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<255) - 765'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,21,22,21,21,21,22,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<255) - 765'",
- "modulus": "2^255 - 765",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "12"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e255m765_13limbs.json b/src/Specific/CurveParameters/solinas32_2e255m765_13limbs.json
deleted file mode 100644
index c9bbad2b2..000000000
--- a/src/Specific/CurveParameters/solinas32_2e255m765_13limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "19 + 8/13",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{20,20,19,20,20,19,20,19,20,20,19,20,19}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<255) - 765'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{20,20,19,20,20,19,20,19,20,20,19,20,19}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<255) - 765'",
- "modulus": "2^255 - 765",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "13"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e256m189_11limbs.json b/src/Specific/CurveParameters/solinas32_2e256m189_11limbs.json
deleted file mode 100644
index 20682262c..000000000
--- a/src/Specific/CurveParameters/solinas32_2e256m189_11limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "23 + 3/11",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,23,23,24,23,23,23,24,23,23,23}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<256) - 189'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,23,23,24,23,23,23,24,23,23,23}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<256) - 189'",
- "modulus": "2^256 - 189",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "11"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e256m189_12limbs.json b/src/Specific/CurveParameters/solinas32_2e256m189_12limbs.json
deleted file mode 100644
index 954a85c9a..000000000
--- a/src/Specific/CurveParameters/solinas32_2e256m189_12limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "21 + 1/3",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<256) - 189'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<256) - 189'",
- "modulus": "2^256 - 189",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "12"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e256m2e224p2e192p2e96m1_11limbs.json b/src/Specific/CurveParameters/solinas32_2e256m2e224p2e192p2e96m1_11limbs.json
deleted file mode 100644
index 2507e7598..000000000
--- a/src/Specific/CurveParameters/solinas32_2e256m2e224p2e192p2e96m1_11limbs.json
+++ /dev/null
@@ -1,44 +0,0 @@
-{
- "base": "23 + 3/11",
- "bitwidth": 32,
- "carry_chains": [
- [
- 8,
- 7,
- 3,
- 10
- ],
- [
- 9,
- 8,
- 4,
- 0,
- 10,
- 5,
- 1,
- 6,
- 2,
- 7,
- 3
- ],
- [
- 9,
- 8,
- 4,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,23,23,24,23,23,23,24,23,23,23}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,23,23,24,23,23,23,24,23,23,23}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1'",
- "modulus": "2^256 - 2^224 + 2^192 + 2^96 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "11"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e256m2e224p2e192p2e96m1_12limbs.json b/src/Specific/CurveParameters/solinas32_2e256m2e224p2e192p2e96m1_12limbs.json
deleted file mode 100644
index 9775fc3f9..000000000
--- a/src/Specific/CurveParameters/solinas32_2e256m2e224p2e192p2e96m1_12limbs.json
+++ /dev/null
@@ -1,45 +0,0 @@
-{
- "base": "21 + 1/3",
- "bitwidth": 32,
- "carry_chains": [
- [
- 9,
- 8,
- 3,
- 11
- ],
- [
- 10,
- 9,
- 4,
- 0,
- 11,
- 5,
- 1,
- 6,
- 2,
- 7,
- 3,
- 8
- ],
- [
- 10,
- 9,
- 4,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1'",
- "modulus": "2^256 - 2^224 + 2^192 + 2^96 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "12"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e256m2e32m977_12limbs.json b/src/Specific/CurveParameters/solinas32_2e256m2e32m977_12limbs.json
deleted file mode 100644
index 04c198b0a..000000000
--- a/src/Specific/CurveParameters/solinas32_2e256m2e32m977_12limbs.json
+++ /dev/null
@@ -1,41 +0,0 @@
-{
- "base": "21 + 1/3",
- "bitwidth": 32,
- "carry_chains": [
- [
- 0,
- 11
- ],
- [
- 1,
- 0,
- 2,
- 3,
- 4,
- 5,
- 6,
- 7,
- 8,
- 9,
- 10,
- 11
- ],
- [
- 1,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977'",
- "modulus": "2^256 - 2^32 - 977",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "12"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e256m2e32m977_13limbs.json b/src/Specific/CurveParameters/solinas32_2e256m2e32m977_13limbs.json
deleted file mode 100644
index 725b175e0..000000000
--- a/src/Specific/CurveParameters/solinas32_2e256m2e32m977_13limbs.json
+++ /dev/null
@@ -1,42 +0,0 @@
-{
- "base": "19 + 9/13",
- "bitwidth": 32,
- "carry_chains": [
- [
- 0,
- 12
- ],
- [
- 1,
- 0,
- 2,
- 3,
- 4,
- 5,
- 6,
- 7,
- 8,
- 9,
- 10,
- 11,
- 12
- ],
- [
- 1,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{20,20,20,19,20,20,19,20,20,19,20,20,19}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{20,20,20,19,20,20,19,20,20,19,20,20,19}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977'",
- "modulus": "2^256 - 2^32 - 977",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "13"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e266m3_10limbs.json b/src/Specific/CurveParameters/solinas32_2e266m3_10limbs.json
deleted file mode 100644
index cc6b92216..000000000
--- a/src/Specific/CurveParameters/solinas32_2e266m3_10limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "26.6",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,27,26,27,26,27,27,26,27,26}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='34' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<266) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,27,26,27,26,27,27,26,27,26}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='34' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<266) - 3'",
- "modulus": "2^266 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "10"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e266m3_11limbs.json b/src/Specific/CurveParameters/solinas32_2e266m3_11limbs.json
deleted file mode 100644
index 2737bed39..000000000
--- a/src/Specific/CurveParameters/solinas32_2e266m3_11limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "24 + 2/11",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,24,24,24,24,25,24,24,24,24,24}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='34' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<266) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,24,24,24,24,25,24,24,24,24,24}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='34' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<266) - 3'",
- "modulus": "2^266 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "11"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e285m9_11limbs.json b/src/Specific/CurveParameters/solinas32_2e285m9_11limbs.json
deleted file mode 100644
index 5d586d87c..000000000
--- a/src/Specific/CurveParameters/solinas32_2e285m9_11limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "25 + 10/11",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,25}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='36' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<285) - 9'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,25}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='36' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<285) - 9'",
- "modulus": "2^285 - 9",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "11"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e285m9_12limbs.json b/src/Specific/CurveParameters/solinas32_2e285m9_12limbs.json
deleted file mode 100644
index 0d5ecf0ae..000000000
--- a/src/Specific/CurveParameters/solinas32_2e285m9_12limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "23.75",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,24,23,24,24,24,23,24,24,24,23}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='36' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<285) - 9'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,24,23,24,24,24,23,24,24,24,23}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='36' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<285) - 9'",
- "modulus": "2^285 - 9",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "12"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e291m19_11limbs.json b/src/Specific/CurveParameters/solinas32_2e291m19_11limbs.json
deleted file mode 100644
index 66770235d..000000000
--- a/src/Specific/CurveParameters/solinas32_2e291m19_11limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "26 + 5/11",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,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,27,26,27,26,27,26,27,26,26}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='37' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<291) - 19'",
- "compilerxx": "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,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,27,26,27,26,27,26,27,26,26}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='37' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<291) - 19'",
- "modulus": "2^291 - 19",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "11"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e291m19_12limbs.json b/src/Specific/CurveParameters/solinas32_2e291m19_12limbs.json
deleted file mode 100644
index ab6448309..000000000
--- a/src/Specific/CurveParameters/solinas32_2e291m19_12limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "24.25",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,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='{25,24,24,24,25,24,24,24,25,24,24,24}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='37' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<291) - 19'",
- "compilerxx": "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,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='{25,24,24,24,25,24,24,24,25,24,24,24}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='37' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<291) - 19'",
- "modulus": "2^291 - 19",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "12"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e321m9_12limbs.json b/src/Specific/CurveParameters/solinas32_2e321m9_12limbs.json
deleted file mode 100644
index 84e292b86..000000000
--- a/src/Specific/CurveParameters/solinas32_2e321m9_12limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "26.75",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,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,27,27,26,27,27,27,26,27,27,27,26}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<321) - 9'",
- "compilerxx": "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,0x00,0x00,0x00,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,27,27,26,27,27,27,26,27,27,27,26}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<321) - 9'",
- "modulus": "2^321 - 9",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "12"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e321m9_13limbs.json b/src/Specific/CurveParameters/solinas32_2e321m9_13limbs.json
deleted file mode 100644
index 232d3c57b..000000000
--- a/src/Specific/CurveParameters/solinas32_2e321m9_13limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "24 + 9/13",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,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='{25,25,25,24,25,25,24,25,25,24,25,25,24}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<321) - 9'",
- "compilerxx": "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,0x00,0x00,0x00,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='{25,25,25,24,25,25,24,25,25,24,25,25,24}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<321) - 9'",
- "modulus": "2^321 - 9",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "13"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e322m2e161m1_12limbs.json b/src/Specific/CurveParameters/solinas32_2e322m2e161m1_12limbs.json
deleted file mode 100644
index c36c16e41..000000000
--- a/src/Specific/CurveParameters/solinas32_2e322m2e161m1_12limbs.json
+++ /dev/null
@@ -1,42 +0,0 @@
-{
- "base": "26 + 5/6",
- "bitwidth": 32,
- "carry_chains": [
- [
- 5,
- 11
- ],
- [
- 6,
- 0,
- 7,
- 1,
- 8,
- 2,
- 9,
- 3,
- 10,
- 4,
- 11,
- 5
- ],
- [
- 6,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,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,27,27,27,27,26,27,27,27,27,27,26}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,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,27,27,27,27,26,27,27,27,27,27,26}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1'",
- "goldilocks": true,
- "modulus": "2^322 - 2^161 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "12"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e322m2e161m1_14limbs.json b/src/Specific/CurveParameters/solinas32_2e322m2e161m1_14limbs.json
deleted file mode 100644
index 14c82367d..000000000
--- a/src/Specific/CurveParameters/solinas32_2e322m2e161m1_14limbs.json
+++ /dev/null
@@ -1,44 +0,0 @@
-{
- "base": "23",
- "bitwidth": 32,
- "carry_chains": [
- [
- 6,
- 13
- ],
- [
- 7,
- 0,
- 8,
- 1,
- 9,
- 2,
- 10,
- 3,
- 11,
- 4,
- 12,
- 5,
- 13,
- 6
- ],
- [
- 7,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,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='{23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='14' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,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='{23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='14' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1'",
- "goldilocks": true,
- "modulus": "2^322 - 2^161 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "14"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e336m17_13limbs.json b/src/Specific/CurveParameters/solinas32_2e336m17_13limbs.json
deleted file mode 100644
index 19609d2ab..000000000
--- a/src/Specific/CurveParameters/solinas32_2e336m17_13limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "25 + 11/13",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,25,26,26,26,26,26,25}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<336) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,25,26,26,26,26,26,25}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<336) - 17'",
- "modulus": "2^336 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "13"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e336m17_14limbs.json b/src/Specific/CurveParameters/solinas32_2e336m17_14limbs.json
deleted file mode 100644
index 2d00e1328..000000000
--- a/src/Specific/CurveParameters/solinas32_2e336m17_14limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "24",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,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='{24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='14' -Dq_mpz='(1_mpz<<336) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,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='{24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='14' -Dq_mpz='(1_mpz<<336) - 17'",
- "modulus": "2^336 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "14"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e336m3_12limbs.json b/src/Specific/CurveParameters/solinas32_2e336m3_12limbs.json
deleted file mode 100644
index 0ff0570ed..000000000
--- a/src/Specific/CurveParameters/solinas32_2e336m3_12limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "28",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,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='{28,28,28,28,28,28,28,28,28,28,28,28}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<336) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,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='{28,28,28,28,28,28,28,28,28,28,28,28}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<336) - 3'",
- "modulus": "2^336 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "12"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e336m3_13limbs.json b/src/Specific/CurveParameters/solinas32_2e336m3_13limbs.json
deleted file mode 100644
index 0da0303d5..000000000
--- a/src/Specific/CurveParameters/solinas32_2e336m3_13limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "25 + 11/13",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,25,26,26,26,26,26,25}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<336) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,25,26,26,26,26,26,25}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<336) - 3'",
- "modulus": "2^336 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "13"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e338m15_13limbs.json b/src/Specific/CurveParameters/solinas32_2e338m15_13limbs.json
deleted file mode 100644
index 061fb521f..000000000
--- a/src/Specific/CurveParameters/solinas32_2e338m15_13limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "26",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='43' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<338) - 15'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='43' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<338) - 15'",
- "modulus": "2^338 - 15",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "13"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e338m15_14limbs.json b/src/Specific/CurveParameters/solinas32_2e338m15_14limbs.json
deleted file mode 100644
index 40721c0c5..000000000
--- a/src/Specific/CurveParameters/solinas32_2e338m15_14limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "24 + 1/7",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,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='{25,24,24,24,24,24,24,25,24,24,24,24,24,24}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='43' -Dmodulus_limbs='14' -Dq_mpz='(1_mpz<<338) - 15'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,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='{25,24,24,24,24,24,24,25,24,24,24,24,24,24}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='43' -Dmodulus_limbs='14' -Dq_mpz='(1_mpz<<338) - 15'",
- "modulus": "2^338 - 15",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "14"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e369m25_15limbs.json b/src/Specific/CurveParameters/solinas32_2e369m25_15limbs.json
deleted file mode 100644
index d4e0efe5d..000000000
--- a/src/Specific/CurveParameters/solinas32_2e369m25_15limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "24.6",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,25,24,25,24,25,25,24,25,24,25,25,24,25,24}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='47' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<369) - 25'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,25,24,25,24,25,25,24,25,24,25,25,24,25,24}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='47' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<369) - 25'",
- "modulus": "2^369 - 25",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "15"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e369m25_16limbs.json b/src/Specific/CurveParameters/solinas32_2e369m25_16limbs.json
deleted file mode 100644
index b1baa1cc6..000000000
--- a/src/Specific/CurveParameters/solinas32_2e369m25_16limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "23 + 1/16",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='47' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<369) - 25'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='47' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<369) - 25'",
- "modulus": "2^369 - 25",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "16"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e379m19_15limbs.json b/src/Specific/CurveParameters/solinas32_2e379m19_15limbs.json
deleted file mode 100644
index 8148a1fad..000000000
--- a/src/Specific/CurveParameters/solinas32_2e379m19_15limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "25 + 4/15",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,25,25,26,25,25,25,26,25,25,25,26,25,25,25}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<379) - 19'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,25,25,26,25,25,25,26,25,25,25,26,25,25,25}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<379) - 19'",
- "modulus": "2^379 - 19",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "15"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e379m19_16limbs.json b/src/Specific/CurveParameters/solinas32_2e379m19_16limbs.json
deleted file mode 100644
index 59b2baf40..000000000
--- a/src/Specific/CurveParameters/solinas32_2e379m19_16limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "23 + 11/16",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,24,23,24,24,23,24,24,23,24,24,23,24,24,23}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<379) - 19'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,24,23,24,24,23,24,24,23,24,24,23,24,24,23}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<379) - 19'",
- "modulus": "2^379 - 19",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "16"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e382m105_16limbs.json b/src/Specific/CurveParameters/solinas32_2e382m105_16limbs.json
deleted file mode 100644
index ef74f1084..000000000
--- a/src/Specific/CurveParameters/solinas32_2e382m105_16limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "23.875",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,24,24,24,24,24,23,24,24,24,24,24,24,24,23}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<382) - 105'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,24,24,24,24,24,23,24,24,24,24,24,24,24,23}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<382) - 105'",
- "modulus": "2^382 - 105",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "16"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e382m105_17limbs.json b/src/Specific/CurveParameters/solinas32_2e382m105_17limbs.json
deleted file mode 100644
index 3b7bd97f0..000000000
--- a/src/Specific/CurveParameters/solinas32_2e382m105_17limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "22 + 8/17",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22,22}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<382) - 105'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22,22}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<382) - 105'",
- "modulus": "2^382 - 105",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "17"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e383m187_16limbs.json b/src/Specific/CurveParameters/solinas32_2e383m187_16limbs.json
deleted file mode 100644
index b19693868..000000000
--- a/src/Specific/CurveParameters/solinas32_2e383m187_16limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "23 + 15/16",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,23}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<383) - 187'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,23}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<383) - 187'",
- "modulus": "2^383 - 187",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "16"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e383m187_17limbs.json b/src/Specific/CurveParameters/solinas32_2e383m187_17limbs.json
deleted file mode 100644
index 433e1633e..000000000
--- a/src/Specific/CurveParameters/solinas32_2e383m187_17limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "22 + 9/17",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<383) - 187'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<383) - 187'",
- "modulus": "2^383 - 187",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "17"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e383m31_15limbs.json b/src/Specific/CurveParameters/solinas32_2e383m31_15limbs.json
deleted file mode 100644
index a07433384..000000000
--- a/src/Specific/CurveParameters/solinas32_2e383m31_15limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "25 + 8/15",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,25,26,25,26,25,26,25,26,25,26,25,26,25}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<383) - 31'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,25,26,25,26,25,26,25,26,25,26,25,26,25}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<383) - 31'",
- "modulus": "2^383 - 31",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "15"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e383m31_16limbs.json b/src/Specific/CurveParameters/solinas32_2e383m31_16limbs.json
deleted file mode 100644
index 2e29c09a4..000000000
--- a/src/Specific/CurveParameters/solinas32_2e383m31_16limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "23 + 15/16",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,23}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<383) - 31'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,23}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<383) - 31'",
- "modulus": "2^383 - 31",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "16"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e383m421_17limbs.json b/src/Specific/CurveParameters/solinas32_2e383m421_17limbs.json
deleted file mode 100644
index e406439ce..000000000
--- a/src/Specific/CurveParameters/solinas32_2e383m421_17limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "22 + 9/17",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<383) - 421'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<383) - 421'",
- "modulus": "2^383 - 421",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "17"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e383m421_18limbs.json b/src/Specific/CurveParameters/solinas32_2e383m421_18limbs.json
deleted file mode 100644
index 856e90744..000000000
--- a/src/Specific/CurveParameters/solinas32_2e383m421_18limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "21 + 5/18",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{22,21,21,22,21,21,21,22,21,21,22,21,21,21,22,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<383) - 421'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{22,21,21,22,21,21,21,22,21,21,22,21,21,21,22,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<383) - 421'",
- "modulus": "2^383 - 421",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "18"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e384m2e128m2e96p2e32m1_18limbs.json b/src/Specific/CurveParameters/solinas32_2e384m2e128m2e96p2e32m1_18limbs.json
deleted file mode 100644
index c7c3f1ef9..000000000
--- a/src/Specific/CurveParameters/solinas32_2e384m2e128m2e96p2e32m1_18limbs.json
+++ /dev/null
@@ -1,51 +0,0 @@
-{
- "base": "21 + 1/3",
- "bitwidth": 32,
- "carry_chains": [
- [
- 5,
- 3,
- 0,
- 17
- ],
- [
- 6,
- 4,
- 1,
- 0,
- 7,
- 5,
- 2,
- 8,
- 3,
- 9,
- 10,
- 11,
- 12,
- 13,
- 14,
- 15,
- 16,
- 17
- ],
- [
- 6,
- 4,
- 1,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1'",
- "modulus": "2^384 - 2^128 - 2^96 + 2^32 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "18"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e384m2e128m2e96p2e32m1_19limbs.json b/src/Specific/CurveParameters/solinas32_2e384m2e128m2e96p2e32m1_19limbs.json
deleted file mode 100644
index 237e12f46..000000000
--- a/src/Specific/CurveParameters/solinas32_2e384m2e128m2e96p2e32m1_19limbs.json
+++ /dev/null
@@ -1,52 +0,0 @@
-{
- "base": "20 + 4/19",
- "bitwidth": 32,
- "carry_chains": [
- [
- 5,
- 3,
- 0,
- 18
- ],
- [
- 6,
- 4,
- 1,
- 0,
- 7,
- 5,
- 2,
- 8,
- 3,
- 9,
- 10,
- 11,
- 12,
- 13,
- 14,
- 15,
- 16,
- 17,
- 18
- ],
- [
- 6,
- 4,
- 1,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{21,20,20,20,21,20,20,20,20,21,20,20,20,20,21,20,20,20,20}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='19' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{21,20,20,20,21,20,20,20,20,21,20,20,20,20,21,20,20,20,20}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='19' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1'",
- "modulus": "2^384 - 2^128 - 2^96 + 2^32 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "19"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e384m317_17limbs.json b/src/Specific/CurveParameters/solinas32_2e384m317_17limbs.json
deleted file mode 100644
index 551be7cdb..000000000
--- a/src/Specific/CurveParameters/solinas32_2e384m317_17limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "22 + 10/17",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,23,22,23,22,23,23,22,23,22,23,23,22,23,22,23,22}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<384) - 317'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,23,22,23,22,23,23,22,23,22,23,23,22,23,22,23,22}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<384) - 317'",
- "modulus": "2^384 - 317",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "17"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e384m317_18limbs.json b/src/Specific/CurveParameters/solinas32_2e384m317_18limbs.json
deleted file mode 100644
index 8428d1606..000000000
--- a/src/Specific/CurveParameters/solinas32_2e384m317_18limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "21 + 1/3",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<384) - 317'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<384) - 317'",
- "modulus": "2^384 - 317",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "18"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e389m21_15limbs.json b/src/Specific/CurveParameters/solinas32_2e389m21_15limbs.json
deleted file mode 100644
index e697307d8..000000000
--- a/src/Specific/CurveParameters/solinas32_2e389m21_15limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "25 + 14/15",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,25}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='49' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<389) - 21'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,25}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='49' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<389) - 21'",
- "modulus": "2^389 - 21",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "15"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e389m21_16limbs.json b/src/Specific/CurveParameters/solinas32_2e389m21_16limbs.json
deleted file mode 100644
index 48f1f8ea8..000000000
--- a/src/Specific/CurveParameters/solinas32_2e389m21_16limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "24 + 5/16",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,24,24,25,24,24,25,24,24,25,24,24,25,24,24,24}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='49' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<389) - 21'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,24,24,25,24,24,25,24,24,25,24,24,25,24,24,24}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='49' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<389) - 21'",
- "modulus": "2^389 - 21",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "16"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e401m31_16limbs.json b/src/Specific/CurveParameters/solinas32_2e401m31_16limbs.json
deleted file mode 100644
index bd2eaa3d0..000000000
--- a/src/Specific/CurveParameters/solinas32_2e401m31_16limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "25 + 1/16",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='51' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<401) - 31'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='51' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<401) - 31'",
- "modulus": "2^401 - 31",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "16"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e401m31_17limbs.json b/src/Specific/CurveParameters/solinas32_2e401m31_17limbs.json
deleted file mode 100644
index b7348cf11..000000000
--- a/src/Specific/CurveParameters/solinas32_2e401m31_17limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "23 + 10/17",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,23,24,23,24,24,23,24,23,24,24,23,24,23,24,23}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='51' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<401) - 31'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,23,24,23,24,24,23,24,23,24,24,23,24,23,24,23}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='51' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<401) - 31'",
- "modulus": "2^401 - 31",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "17"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e413m21_16limbs.json b/src/Specific/CurveParameters/solinas32_2e413m21_16limbs.json
deleted file mode 100644
index 2584aacb2..000000000
--- a/src/Specific/CurveParameters/solinas32_2e413m21_16limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "25 + 13/16",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,25,26,26,26,26,25,26,26,26,26,25}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<413) - 21'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,25,26,26,26,26,25,26,26,26,26,25}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<413) - 21'",
- "modulus": "2^413 - 21",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "16"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e413m21_17limbs.json b/src/Specific/CurveParameters/solinas32_2e413m21_17limbs.json
deleted file mode 100644
index 51c85d13f..000000000
--- a/src/Specific/CurveParameters/solinas32_2e413m21_17limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "24 + 5/17",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,24,24,25,24,24,25,24,24,24,25,24,24,25,24,24,24}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<413) - 21'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,24,24,25,24,24,25,24,24,24,25,24,24,25,24,24,24}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<413) - 21'",
- "modulus": "2^413 - 21",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "17"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e414m17_16limbs.json b/src/Specific/CurveParameters/solinas32_2e414m17_16limbs.json
deleted file mode 100644
index 10ca0b9f2..000000000
--- a/src/Specific/CurveParameters/solinas32_2e414m17_16limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "25.875",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,26,25,26,26,26,26,26,26,26,25}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<414) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,26,25,26,26,26,26,26,26,26,25}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<414) - 17'",
- "modulus": "2^414 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "16"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e414m17_17limbs.json b/src/Specific/CurveParameters/solinas32_2e414m17_17limbs.json
deleted file mode 100644
index 207416e45..000000000
--- a/src/Specific/CurveParameters/solinas32_2e414m17_17limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "24 + 6/17",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,24,25,24,24,25,24,24,25,24,24,25,24,24,25,24,24}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<414) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,24,25,24,24,25,24,24,25,24,24,25,24,24,25,24,24}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<414) - 17'",
- "modulus": "2^414 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "17"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e416m2e208m1_16limbs.json b/src/Specific/CurveParameters/solinas32_2e416m2e208m1_16limbs.json
deleted file mode 100644
index 51660d8fc..000000000
--- a/src/Specific/CurveParameters/solinas32_2e416m2e208m1_16limbs.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "base": "26",
- "bitwidth": 32,
- "carry_chains": [
- [
- 7,
- 15
- ],
- [
- 8,
- 0,
- 9,
- 1,
- 10,
- 2,
- 11,
- 3,
- 12,
- 4,
- 13,
- 5,
- 14,
- 6,
- 15,
- 7
- ],
- [
- 8,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1'",
- "goldilocks": true,
- "modulus": "2^416 - 2^208 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "16"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e416m2e208m1_18limbs.json b/src/Specific/CurveParameters/solinas32_2e416m2e208m1_18limbs.json
deleted file mode 100644
index c66ae6bc0..000000000
--- a/src/Specific/CurveParameters/solinas32_2e416m2e208m1_18limbs.json
+++ /dev/null
@@ -1,48 +0,0 @@
-{
- "base": "23 + 1/9",
- "bitwidth": 32,
- "carry_chains": [
- [
- 8,
- 17
- ],
- [
- 9,
- 0,
- 10,
- 1,
- 11,
- 2,
- 12,
- 3,
- 13,
- 4,
- 14,
- 5,
- 15,
- 6,
- 16,
- 7,
- 17,
- 8
- ],
- [
- 9,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,23,23,23,23,23,23,23,23,24,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,23,23,23,23,23,23,23,23,24,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1'",
- "goldilocks": true,
- "modulus": "2^416 - 2^208 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "18"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e444m17_17limbs.json b/src/Specific/CurveParameters/solinas32_2e444m17_17limbs.json
deleted file mode 100644
index f3d0d2901..000000000
--- a/src/Specific/CurveParameters/solinas32_2e444m17_17limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "26 + 2/17",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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,26,26,26,26,26,27,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<444) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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,26,26,26,26,26,27,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<444) - 17'",
- "modulus": "2^444 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "17"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e444m17_18limbs.json b/src/Specific/CurveParameters/solinas32_2e444m17_18limbs.json
deleted file mode 100644
index 94a29c93b..000000000
--- a/src/Specific/CurveParameters/solinas32_2e444m17_18limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "24 + 2/3",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,25,24,25,25,24,25,25,24,25,25,24,25,25,24,25,25,24}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<444) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,25,24,25,25,24,25,25,24,25,25,24,25,25,24,25,25,24}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<444) - 17'",
- "modulus": "2^444 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "18"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e448m2e224m1_16limbs.json b/src/Specific/CurveParameters/solinas32_2e448m2e224m1_16limbs.json
deleted file mode 100644
index 11046edf1..000000000
--- a/src/Specific/CurveParameters/solinas32_2e448m2e224m1_16limbs.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "base": "28",
- "bitwidth": 32,
- "carry_chains": [
- [
- 7,
- 15
- ],
- [
- 8,
- 0,
- 9,
- 1,
- 10,
- 2,
- 11,
- 3,
- 12,
- 4,
- 13,
- 5,
- 14,
- 6,
- 15,
- 7
- ],
- [
- 8,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1'",
- "goldilocks": true,
- "modulus": "2^448 - 2^224 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "16"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e448m2e224m1_18limbs.json b/src/Specific/CurveParameters/solinas32_2e448m2e224m1_18limbs.json
deleted file mode 100644
index 7db3ab28c..000000000
--- a/src/Specific/CurveParameters/solinas32_2e448m2e224m1_18limbs.json
+++ /dev/null
@@ -1,48 +0,0 @@
-{
- "base": "24 + 8/9",
- "bitwidth": 32,
- "carry_chains": [
- [
- 8,
- 17
- ],
- [
- 9,
- 0,
- 10,
- 1,
- 11,
- 2,
- 12,
- 3,
- 13,
- 4,
- 14,
- 5,
- 15,
- 6,
- 16,
- 7,
- 17,
- 8
- ],
- [
- 9,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,25,25,25,25,25,25,25,24,25,25,25,25,25,25,25,25,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,25,25,25,25,25,25,25,24,25,25,25,25,25,25,25,25,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1'",
- "goldilocks": true,
- "modulus": "2^448 - 2^224 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "18"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e450m2e225m1_18limbs.json b/src/Specific/CurveParameters/solinas32_2e450m2e225m1_18limbs.json
deleted file mode 100644
index bcc34ee60..000000000
--- a/src/Specific/CurveParameters/solinas32_2e450m2e225m1_18limbs.json
+++ /dev/null
@@ -1,48 +0,0 @@
-{
- "base": "25",
- "bitwidth": 32,
- "carry_chains": [
- [
- 8,
- 17
- ],
- [
- 9,
- 0,
- 10,
- 1,
- 11,
- 2,
- 12,
- 3,
- 13,
- 4,
- 14,
- 5,
- 15,
- 6,
- 16,
- 7,
- 17,
- 8
- ],
- [
- 9,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1'",
- "goldilocks": true,
- "modulus": "2^450 - 2^225 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "18"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e450m2e225m1_20limbs.json b/src/Specific/CurveParameters/solinas32_2e450m2e225m1_20limbs.json
deleted file mode 100644
index 14400f126..000000000
--- a/src/Specific/CurveParameters/solinas32_2e450m2e225m1_20limbs.json
+++ /dev/null
@@ -1,50 +0,0 @@
-{
- "base": "22.5",
- "bitwidth": 32,
- "carry_chains": [
- [
- 9,
- 19
- ],
- [
- 10,
- 0,
- 11,
- 1,
- 12,
- 2,
- 13,
- 3,
- 14,
- 4,
- 15,
- 5,
- 16,
- 6,
- 17,
- 7,
- 18,
- 8,
- 19,
- 9
- ],
- [
- 10,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='20' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='20' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1'",
- "goldilocks": true,
- "modulus": "2^450 - 2^225 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "20"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e452m3_17limbs.json b/src/Specific/CurveParameters/solinas32_2e452m3_17limbs.json
deleted file mode 100644
index ee5066166..000000000
--- a/src/Specific/CurveParameters/solinas32_2e452m3_17limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "26 + 10/17",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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,27,26,27,26,27,27,26,27,26,27,27,26,27,26,27,26}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<452) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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,27,26,27,26,27,27,26,27,26,27,27,26,27,26,27,26}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<452) - 3'",
- "modulus": "2^452 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "17"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e452m3_18limbs.json b/src/Specific/CurveParameters/solinas32_2e452m3_18limbs.json
deleted file mode 100644
index 6633af1a7..000000000
--- a/src/Specific/CurveParameters/solinas32_2e452m3_18limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "25 + 1/9",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,25,25,25,25,25,25,25,25,26,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<452) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,25,25,25,25,25,25,25,25,26,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<452) - 3'",
- "modulus": "2^452 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "18"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e468m17_18limbs.json b/src/Specific/CurveParameters/solinas32_2e468m17_18limbs.json
deleted file mode 100644
index 4e2e536b6..000000000
--- a/src/Specific/CurveParameters/solinas32_2e468m17_18limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "26",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='59' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<468) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='59' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<468) - 17'",
- "modulus": "2^468 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "18"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e468m17_19limbs.json b/src/Specific/CurveParameters/solinas32_2e468m17_19limbs.json
deleted file mode 100644
index affc56260..000000000
--- a/src/Specific/CurveParameters/solinas32_2e468m17_19limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "24 + 12/19",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,25,24,25,25,24,25,25,24,25,24,25,25,24,25,25,24,25,24}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='59' -Dmodulus_limbs='19' -Dq_mpz='(1_mpz<<468) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,25,24,25,25,24,25,25,24,25,24,25,25,24,25,25,24,25,24}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='59' -Dmodulus_limbs='19' -Dq_mpz='(1_mpz<<468) - 17'",
- "modulus": "2^468 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "19"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e480m2e240m1_18limbs.json b/src/Specific/CurveParameters/solinas32_2e480m2e240m1_18limbs.json
deleted file mode 100644
index 1bd1432d9..000000000
--- a/src/Specific/CurveParameters/solinas32_2e480m2e240m1_18limbs.json
+++ /dev/null
@@ -1,48 +0,0 @@
-{
- "base": "26 + 2/3",
- "bitwidth": 32,
- "carry_chains": [
- [
- 8,
- 17
- ],
- [
- 9,
- 0,
- 10,
- 1,
- 11,
- 2,
- 12,
- 3,
- 13,
- 4,
- 14,
- 5,
- 15,
- 6,
- 16,
- 7,
- 17,
- 8
- ],
- [
- 9,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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,27,26,27,27,26,27,27,26,27,27,26,27,27,26,27,27,26}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='60' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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,27,26,27,27,26,27,27,26,27,27,26,27,27,26,27,27,26}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='60' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1'",
- "goldilocks": true,
- "modulus": "2^480 - 2^240 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "18"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e480m2e240m1_20limbs.json b/src/Specific/CurveParameters/solinas32_2e480m2e240m1_20limbs.json
deleted file mode 100644
index 45c027737..000000000
--- a/src/Specific/CurveParameters/solinas32_2e480m2e240m1_20limbs.json
+++ /dev/null
@@ -1,50 +0,0 @@
-{
- "base": "24",
- "bitwidth": 32,
- "carry_chains": [
- [
- 9,
- 19
- ],
- [
- 10,
- 0,
- 11,
- 1,
- 12,
- 2,
- 13,
- 3,
- 14,
- 4,
- 15,
- 5,
- 16,
- 6,
- 17,
- 7,
- 18,
- 8,
- 19,
- 9
- ],
- [
- 10,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='60' -Dmodulus_limbs='20' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='60' -Dmodulus_limbs='20' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1'",
- "goldilocks": true,
- "modulus": "2^480 - 2^240 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "20"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e488m17_19limbs.json b/src/Specific/CurveParameters/solinas32_2e488m17_19limbs.json
deleted file mode 100644
index 200bd4366..000000000
--- a/src/Specific/CurveParameters/solinas32_2e488m17_19limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "25 + 13/19",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,25,26,26,25,26,26,25,26,26,25,26,26,25,26,26,25}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='61' -Dmodulus_limbs='19' -Dq_mpz='(1_mpz<<488) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,25,26,26,25,26,26,25,26,26,25,26,26,25,26,26,25}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='61' -Dmodulus_limbs='19' -Dq_mpz='(1_mpz<<488) - 17'",
- "modulus": "2^488 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "19"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e488m17_20limbs.json b/src/Specific/CurveParameters/solinas32_2e488m17_20limbs.json
deleted file mode 100644
index 94d847b0c..000000000
--- a/src/Specific/CurveParameters/solinas32_2e488m17_20limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "24.4",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,24,25,24,24,25,24,25,24,24,25,24,25,24,24,25,24,25,24,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='61' -Dmodulus_limbs='20' -Dq_mpz='(1_mpz<<488) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,24,25,24,24,25,24,25,24,24,25,24,25,24,24,25,24,25,24,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='61' -Dmodulus_limbs='20' -Dq_mpz='(1_mpz<<488) - 17'",
- "modulus": "2^488 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "20"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e489m21_19limbs.json b/src/Specific/CurveParameters/solinas32_2e489m21_19limbs.json
deleted file mode 100644
index 63404b1f2..000000000
--- a/src/Specific/CurveParameters/solinas32_2e489m21_19limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "25 + 14/19",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,25,26,26,26,25,26,26,26,25,26,26,26,25,26,26,25}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='19' -Dq_mpz='(1_mpz<<489) - 21'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,25,26,26,26,25,26,26,26,25,26,26,26,25,26,26,25}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='19' -Dq_mpz='(1_mpz<<489) - 21'",
- "modulus": "2^489 - 21",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "19"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e489m21_20limbs.json b/src/Specific/CurveParameters/solinas32_2e489m21_20limbs.json
deleted file mode 100644
index a374c15b8..000000000
--- a/src/Specific/CurveParameters/solinas32_2e489m21_20limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "24 + 9/20",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,24,25,24,25,24,25,24,25,24,24,25,24,25,24,25,24,25,24,24}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='20' -Dq_mpz='(1_mpz<<489) - 21'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,24,25,24,25,24,25,24,25,24,24,25,24,25,24,25,24,25,24,24}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='20' -Dq_mpz='(1_mpz<<489) - 21'",
- "modulus": "2^489 - 21",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "20"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e495m31_20limbs.json b/src/Specific/CurveParameters/solinas32_2e495m31_20limbs.json
deleted file mode 100644
index 3f994dacf..000000000
--- a/src/Specific/CurveParameters/solinas32_2e495m31_20limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "24.75",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,25,25,24,25,25,25,24,25,25,25,24,25,25,25,24,25,25,25,24}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='20' -Dq_mpz='(1_mpz<<495) - 31'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,25,25,24,25,25,25,24,25,25,25,24,25,25,25,24,25,25,25,24}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='20' -Dq_mpz='(1_mpz<<495) - 31'",
- "modulus": "2^495 - 31",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "20"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e495m31_21limbs.json b/src/Specific/CurveParameters/solinas32_2e495m31_21limbs.json
deleted file mode 100644
index f0ad2cfdb..000000000
--- a/src/Specific/CurveParameters/solinas32_2e495m31_21limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "23 + 4/7",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,23,24,23,24,23,24,24,23,24,23,24,23,24,24,23,24,23,24,23}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='21' -Dq_mpz='(1_mpz<<495) - 31'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,23,24,23,24,23,24,24,23,24,23,24,23,24,24,23,24,23,24,23}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='21' -Dq_mpz='(1_mpz<<495) - 31'",
- "modulus": "2^495 - 31",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "21"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e511m187_22limbs.json b/src/Specific/CurveParameters/solinas32_2e511m187_22limbs.json
deleted file mode 100644
index 7af745c9a..000000000
--- a/src/Specific/CurveParameters/solinas32_2e511m187_22limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "23 + 5/22",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,23,23,23,24,23,23,23,24,23,23,23,23,24,23,23,23,24,23,23,23,23}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='22' -Dq_mpz='(1_mpz<<511) - 187'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,23,23,23,24,23,23,23,24,23,23,23,23,24,23,23,23,24,23,23,23,23}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='22' -Dq_mpz='(1_mpz<<511) - 187'",
- "modulus": "2^511 - 187",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "22"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e511m187_23limbs.json b/src/Specific/CurveParameters/solinas32_2e511m187_23limbs.json
deleted file mode 100644
index b24c65283..000000000
--- a/src/Specific/CurveParameters/solinas32_2e511m187_23limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "22 + 5/23",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,22,22,22,23,22,22,22,22,23,22,22,22,23,22,22,22,22,23,22,22,22,22}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='23' -Dq_mpz='(1_mpz<<511) - 187'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,22,22,22,23,22,22,22,22,23,22,22,22,23,22,22,22,22,23,22,22,22,22}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='23' -Dq_mpz='(1_mpz<<511) - 187'",
- "modulus": "2^511 - 187",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "23"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e511m481_23limbs.json b/src/Specific/CurveParameters/solinas32_2e511m481_23limbs.json
deleted file mode 100644
index 384d3c547..000000000
--- a/src/Specific/CurveParameters/solinas32_2e511m481_23limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "22 + 5/23",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,22,22,22,23,22,22,22,22,23,22,22,22,23,22,22,22,22,23,22,22,22,22}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='23' -Dq_mpz='(1_mpz<<511) - 481'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,22,22,22,23,22,22,22,22,23,22,22,22,23,22,22,22,22,23,22,22,22,22}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='23' -Dq_mpz='(1_mpz<<511) - 481'",
- "modulus": "2^511 - 481",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "23"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e511m481_24limbs.json b/src/Specific/CurveParameters/solinas32_2e511m481_24limbs.json
deleted file mode 100644
index 07083a778..000000000
--- a/src/Specific/CurveParameters/solinas32_2e511m481_24limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "21 + 7/24",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{22,21,21,22,21,21,22,21,21,21,22,21,21,22,21,21,21,22,21,21,22,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='24' -Dq_mpz='(1_mpz<<511) - 481'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{22,21,21,22,21,21,22,21,21,21,22,21,21,22,21,21,21,22,21,21,22,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='24' -Dq_mpz='(1_mpz<<511) - 481'",
- "modulus": "2^511 - 481",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "24"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e512m569_24limbs.json b/src/Specific/CurveParameters/solinas32_2e512m569_24limbs.json
deleted file mode 100644
index e01a909c6..000000000
--- a/src/Specific/CurveParameters/solinas32_2e512m569_24limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "21 + 1/3",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='24' -Dq_mpz='(1_mpz<<512) - 569'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='24' -Dq_mpz='(1_mpz<<512) - 569'",
- "modulus": "2^512 - 569",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "24"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e512m569_25limbs.json b/src/Specific/CurveParameters/solinas32_2e512m569_25limbs.json
deleted file mode 100644
index 26e3b15f0..000000000
--- a/src/Specific/CurveParameters/solinas32_2e512m569_25limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "20 + 12/25",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{21,20,21,20,21,20,21,20,21,20,21,20,21,20,21,20,21,20,21,20,21,20,21,20,20}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='25' -Dq_mpz='(1_mpz<<512) - 569'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{21,20,21,20,21,20,21,20,21,20,21,20,21,20,21,20,21,20,21,20,21,20,21,20,20}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='25' -Dq_mpz='(1_mpz<<512) - 569'",
- "modulus": "2^512 - 569",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "25"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e521m1_19limbs.json b/src/Specific/CurveParameters/solinas32_2e521m1_19limbs.json
deleted file mode 100644
index d386004b4..000000000
--- a/src/Specific/CurveParameters/solinas32_2e521m1_19limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "27 + 8/19",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{28,27,28,27,28,27,27,28,27,28,27,28,27,27,28,27,28,27,27}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='66' -Dmodulus_limbs='19' -Dq_mpz='(1_mpz<<521) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{28,27,28,27,28,27,27,28,27,28,27,28,27,27,28,27,28,27,27}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='66' -Dmodulus_limbs='19' -Dq_mpz='(1_mpz<<521) - 1'",
- "modulus": "2^521 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "19"
-}
diff --git a/src/Specific/CurveParameters/solinas32_2e521m1_20limbs.json b/src/Specific/CurveParameters/solinas32_2e521m1_20limbs.json
deleted file mode 100644
index 6ec07b3b6..000000000
--- a/src/Specific/CurveParameters/solinas32_2e521m1_20limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "26 + 1/20",
- "bitwidth": 32,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='66' -Dmodulus_limbs='20' -Dq_mpz='(1_mpz<<521) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='66' -Dmodulus_limbs='20' -Dq_mpz='(1_mpz<<521) - 1'",
- "modulus": "2^521 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "20"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e127m1_3limbs.json b/src/Specific/CurveParameters/solinas64_2e127m1_3limbs.json
deleted file mode 100644
index 5cf4244f2..000000000
--- a/src/Specific/CurveParameters/solinas64_2e127m1_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "42 + 1/3",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,42,42}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='16' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<127) - 1'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,42,42}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='16' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<127) - 1'",
- "modulus": "2^127 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e129m25_3limbs.json b/src/Specific/CurveParameters/solinas64_2e129m25_3limbs.json
deleted file mode 100644
index addd3ebff..000000000
--- a/src/Specific/CurveParameters/solinas64_2e129m25_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "43",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,43}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<129) - 25'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,43}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<129) - 25'",
- "modulus": "2^129 - 25",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e129m25_4limbs.json b/src/Specific/CurveParameters/solinas64_2e129m25_4limbs.json
deleted file mode 100644
index 2d5425445..000000000
--- a/src/Specific/CurveParameters/solinas64_2e129m25_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32.25",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{33,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<129) - 25'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{33,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<129) - 25'",
- "modulus": "2^129 - 25",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e130m5_3limbs.json b/src/Specific/CurveParameters/solinas64_2e130m5_3limbs.json
deleted file mode 100644
index d2595690b..000000000
--- a/src/Specific/CurveParameters/solinas64_2e130m5_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "43 + 1/3",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{44,43,43}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<130) - 5'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{44,43,43}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<130) - 5'",
- "modulus": "2^130 - 5",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e130m5_4limbs.json b/src/Specific/CurveParameters/solinas64_2e130m5_4limbs.json
deleted file mode 100644
index e7d2c4998..000000000
--- a/src/Specific/CurveParameters/solinas64_2e130m5_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "32.5",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{33,32,33,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<130) - 5'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{33,32,33,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<130) - 5'",
- "modulus": "2^130 - 5",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e137m13_3limbs.json b/src/Specific/CurveParameters/solinas64_2e137m13_3limbs.json
deleted file mode 100644
index 2da50025e..000000000
--- a/src/Specific/CurveParameters/solinas64_2e137m13_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "45 + 2/3",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{46,46,45}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<137) - 13'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{46,46,45}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<137) - 13'",
- "modulus": "2^137 - 13",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e137m13_4limbs.json b/src/Specific/CurveParameters/solinas64_2e137m13_4limbs.json
deleted file mode 100644
index 1704a8552..000000000
--- a/src/Specific/CurveParameters/solinas64_2e137m13_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "34.25",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{35,34,34,34}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<137) - 13'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{35,34,34,34}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<137) - 13'",
- "modulus": "2^137 - 13",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e140m27_3limbs.json b/src/Specific/CurveParameters/solinas64_2e140m27_3limbs.json
deleted file mode 100644
index 16db9692e..000000000
--- a/src/Specific/CurveParameters/solinas64_2e140m27_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "46 + 2/3",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,47,46}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<140) - 27'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,47,46}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<140) - 27'",
- "modulus": "2^140 - 27",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e140m27_4limbs.json b/src/Specific/CurveParameters/solinas64_2e140m27_4limbs.json
deleted file mode 100644
index afb913748..000000000
--- a/src/Specific/CurveParameters/solinas64_2e140m27_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "35",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{35,35,35,35}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<140) - 27'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{35,35,35,35}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<140) - 27'",
- "modulus": "2^140 - 27",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e141m9_3limbs.json b/src/Specific/CurveParameters/solinas64_2e141m9_3limbs.json
deleted file mode 100644
index ae0f4204e..000000000
--- a/src/Specific/CurveParameters/solinas64_2e141m9_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "47",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,47,47}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<141) - 9'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,47,47}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<141) - 9'",
- "modulus": "2^141 - 9",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e141m9_4limbs.json b/src/Specific/CurveParameters/solinas64_2e141m9_4limbs.json
deleted file mode 100644
index 22a8bebfa..000000000
--- a/src/Specific/CurveParameters/solinas64_2e141m9_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "35.25",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{36,35,35,35}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<141) - 9'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{36,35,35,35}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<141) - 9'",
- "modulus": "2^141 - 9",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e150m3_3limbs.json b/src/Specific/CurveParameters/solinas64_2e150m3_3limbs.json
deleted file mode 100644
index f767a8770..000000000
--- a/src/Specific/CurveParameters/solinas64_2e150m3_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "50",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{50,50,50}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<150) - 3'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{50,50,50}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<150) - 3'",
- "modulus": "2^150 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e150m3_4limbs.json b/src/Specific/CurveParameters/solinas64_2e150m3_4limbs.json
deleted file mode 100644
index ebce996bb..000000000
--- a/src/Specific/CurveParameters/solinas64_2e150m3_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "37.5",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{38,37,38,37}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<150) - 3'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{38,37,38,37}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<150) - 3'",
- "modulus": "2^150 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e150m5_3limbs.json b/src/Specific/CurveParameters/solinas64_2e150m5_3limbs.json
deleted file mode 100644
index 119e33baf..000000000
--- a/src/Specific/CurveParameters/solinas64_2e150m5_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "50",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{50,50,50}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<150) - 5'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{50,50,50}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<150) - 5'",
- "modulus": "2^150 - 5",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e150m5_4limbs.json b/src/Specific/CurveParameters/solinas64_2e150m5_4limbs.json
deleted file mode 100644
index 771026afe..000000000
--- a/src/Specific/CurveParameters/solinas64_2e150m5_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "37.5",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{38,37,38,37}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<150) - 5'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{38,37,38,37}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<150) - 5'",
- "modulus": "2^150 - 5",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e152m17_3limbs.json b/src/Specific/CurveParameters/solinas64_2e152m17_3limbs.json
deleted file mode 100644
index 60e945d28..000000000
--- a/src/Specific/CurveParameters/solinas64_2e152m17_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "50 + 2/3",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,51,50}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<152) - 17'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,51,50}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<152) - 17'",
- "modulus": "2^152 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e152m17_4limbs.json b/src/Specific/CurveParameters/solinas64_2e152m17_4limbs.json
deleted file mode 100644
index ba25adf75..000000000
--- a/src/Specific/CurveParameters/solinas64_2e152m17_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "38",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{38,38,38,38}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<152) - 17'",
- "compilerxx": "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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{38,38,38,38}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<152) - 17'",
- "modulus": "2^152 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e158m15_3limbs.json b/src/Specific/CurveParameters/solinas64_2e158m15_3limbs.json
deleted file mode 100644
index 0141f076f..000000000
--- a/src/Specific/CurveParameters/solinas64_2e158m15_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "52 + 2/3",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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='64' -Dlimb_weight_gaps_array='{53,53,52}' -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='3' -Dq_mpz='(1_mpz<<158) - 15'",
- "compilerxx": "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='64' -Dlimb_weight_gaps_array='{53,53,52}' -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='3' -Dq_mpz='(1_mpz<<158) - 15'",
- "modulus": "2^158 - 15",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e158m15_4limbs.json b/src/Specific/CurveParameters/solinas64_2e158m15_4limbs.json
deleted file mode 100644
index 3df2c2819..000000000
--- a/src/Specific/CurveParameters/solinas64_2e158m15_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "39.5",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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='64' -Dlimb_weight_gaps_array='{40,39,40,39}' -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='4' -Dq_mpz='(1_mpz<<158) - 15'",
- "compilerxx": "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='64' -Dlimb_weight_gaps_array='{40,39,40,39}' -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='4' -Dq_mpz='(1_mpz<<158) - 15'",
- "modulus": "2^158 - 15",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e165m25_3limbs.json b/src/Specific/CurveParameters/solinas64_2e165m25_3limbs.json
deleted file mode 100644
index 338e4a32d..000000000
--- a/src/Specific/CurveParameters/solinas64_2e165m25_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "55",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,55}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<165) - 25'",
- "compilerxx": "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,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,55}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<165) - 25'",
- "modulus": "2^165 - 25",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e165m25_4limbs.json b/src/Specific/CurveParameters/solinas64_2e165m25_4limbs.json
deleted file mode 100644
index 76667a97b..000000000
--- a/src/Specific/CurveParameters/solinas64_2e165m25_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "41.25",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{42,41,41,41}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<165) - 25'",
- "compilerxx": "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,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{42,41,41,41}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<165) - 25'",
- "modulus": "2^165 - 25",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e166m5_3limbs.json b/src/Specific/CurveParameters/solinas64_2e166m5_3limbs.json
deleted file mode 100644
index 80e6af3a2..000000000
--- a/src/Specific/CurveParameters/solinas64_2e166m5_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "55 + 1/3",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,55,55}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<166) - 5'",
- "compilerxx": "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,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,55,55}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<166) - 5'",
- "modulus": "2^166 - 5",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e166m5_4limbs.json b/src/Specific/CurveParameters/solinas64_2e166m5_4limbs.json
deleted file mode 100644
index 25fa27866..000000000
--- a/src/Specific/CurveParameters/solinas64_2e166m5_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "41.5",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{42,41,42,41}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<166) - 5'",
- "compilerxx": "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,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{42,41,42,41}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<166) - 5'",
- "modulus": "2^166 - 5",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e171m19_3limbs.json b/src/Specific/CurveParameters/solinas64_2e171m19_3limbs.json
deleted file mode 100644
index d583daa4b..000000000
--- a/src/Specific/CurveParameters/solinas64_2e171m19_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "57",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{57,57,57}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<171) - 19'",
- "compilerxx": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{57,57,57}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<171) - 19'",
- "modulus": "2^171 - 19",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e171m19_4limbs.json b/src/Specific/CurveParameters/solinas64_2e171m19_4limbs.json
deleted file mode 100644
index 10be98269..000000000
--- a/src/Specific/CurveParameters/solinas64_2e171m19_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "42.75",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,43,42}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<171) - 19'",
- "compilerxx": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,43,42}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<171) - 19'",
- "modulus": "2^171 - 19",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e174m17_3limbs.json b/src/Specific/CurveParameters/solinas64_2e174m17_3limbs.json
deleted file mode 100644
index ef20cda6c..000000000
--- a/src/Specific/CurveParameters/solinas64_2e174m17_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "58",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{58,58,58}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<174) - 17'",
- "compilerxx": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{58,58,58}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<174) - 17'",
- "modulus": "2^174 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e174m17_4limbs.json b/src/Specific/CurveParameters/solinas64_2e174m17_4limbs.json
deleted file mode 100644
index 803863fd7..000000000
--- a/src/Specific/CurveParameters/solinas64_2e174m17_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "43.5",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{44,43,44,43}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<174) - 17'",
- "compilerxx": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{44,43,44,43}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<174) - 17'",
- "modulus": "2^174 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e174m3_3limbs.json b/src/Specific/CurveParameters/solinas64_2e174m3_3limbs.json
deleted file mode 100644
index 002380242..000000000
--- a/src/Specific/CurveParameters/solinas64_2e174m3_3limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "58",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{58,58,58}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<174) - 3'",
- "compilerxx": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{58,58,58}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<174) - 3'",
- "modulus": "2^174 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "3"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e174m3_4limbs.json b/src/Specific/CurveParameters/solinas64_2e174m3_4limbs.json
deleted file mode 100644
index 593b3c3ba..000000000
--- a/src/Specific/CurveParameters/solinas64_2e174m3_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "43.5",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{44,43,44,43}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<174) - 3'",
- "compilerxx": "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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{44,43,44,43}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<174) - 3'",
- "modulus": "2^174 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e189m25_4limbs.json b/src/Specific/CurveParameters/solinas64_2e189m25_4limbs.json
deleted file mode 100644
index 7d2f69ef4..000000000
--- a/src/Specific/CurveParameters/solinas64_2e189m25_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "47.25",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,47,47,47}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<189) - 25'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,47,47,47}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<189) - 25'",
- "modulus": "2^189 - 25",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e189m25_5limbs.json b/src/Specific/CurveParameters/solinas64_2e189m25_5limbs.json
deleted file mode 100644
index 1fbe696bd..000000000
--- a/src/Specific/CurveParameters/solinas64_2e189m25_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "37.8",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{38,38,38,38,37}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<189) - 25'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{38,38,38,38,37}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<189) - 25'",
- "modulus": "2^189 - 25",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e190m11_4limbs.json b/src/Specific/CurveParameters/solinas64_2e190m11_4limbs.json
deleted file mode 100644
index 3aa985dae..000000000
--- a/src/Specific/CurveParameters/solinas64_2e190m11_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "47.5",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,47,48,47}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<190) - 11'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,47,48,47}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<190) - 11'",
- "modulus": "2^190 - 11",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e190m11_5limbs.json b/src/Specific/CurveParameters/solinas64_2e190m11_5limbs.json
deleted file mode 100644
index 9e57fe9e2..000000000
--- a/src/Specific/CurveParameters/solinas64_2e190m11_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "38",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{38,38,38,38,38}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<190) - 11'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{38,38,38,38,38}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<190) - 11'",
- "modulus": "2^190 - 11",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e191m19_4limbs.json b/src/Specific/CurveParameters/solinas64_2e191m19_4limbs.json
deleted file mode 100644
index 12f57cd6a..000000000
--- a/src/Specific/CurveParameters/solinas64_2e191m19_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "47.75",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,47}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<191) - 19'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,47}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<191) - 19'",
- "modulus": "2^191 - 19",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e191m19_5limbs.json b/src/Specific/CurveParameters/solinas64_2e191m19_5limbs.json
deleted file mode 100644
index 669b48bb7..000000000
--- a/src/Specific/CurveParameters/solinas64_2e191m19_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "38.2",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{39,38,38,38,38}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<191) - 19'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{39,38,38,38,38}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<191) - 19'",
- "modulus": "2^191 - 19",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e192m2e64m1_4limbs.json b/src/Specific/CurveParameters/solinas64_2e192m2e64m1_4limbs.json
deleted file mode 100644
index bb3378fd8..000000000
--- a/src/Specific/CurveParameters/solinas64_2e192m2e64m1_4limbs.json
+++ /dev/null
@@ -1,33 +0,0 @@
-{
- "base": "48",
- "bitwidth": 64,
- "carry_chains": [
- [
- 0,
- 3
- ],
- [
- 1,
- 0,
- 2,
- 3
- ],
- [
- 1,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1'",
- "modulus": "2^192 - 2^64 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e192m2e64m1_5limbs.json b/src/Specific/CurveParameters/solinas64_2e192m2e64m1_5limbs.json
deleted file mode 100644
index b2beb4269..000000000
--- a/src/Specific/CurveParameters/solinas64_2e192m2e64m1_5limbs.json
+++ /dev/null
@@ -1,34 +0,0 @@
-{
- "base": "38.4",
- "bitwidth": 64,
- "carry_chains": [
- [
- 0,
- 4
- ],
- [
- 1,
- 0,
- 2,
- 3,
- 4
- ],
- [
- 1,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{39,38,39,38,38}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{39,38,39,38,38}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1'",
- "modulus": "2^192 - 2^64 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e194m33_4limbs.json b/src/Specific/CurveParameters/solinas64_2e194m33_4limbs.json
deleted file mode 100644
index 9d1531d90..000000000
--- a/src/Specific/CurveParameters/solinas64_2e194m33_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "48.5",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,48,49,48}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<194) - 33'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,48,49,48}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<194) - 33'",
- "modulus": "2^194 - 33",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e194m33_5limbs.json b/src/Specific/CurveParameters/solinas64_2e194m33_5limbs.json
deleted file mode 100644
index 502ca9428..000000000
--- a/src/Specific/CurveParameters/solinas64_2e194m33_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "38.8",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{39,39,39,39,38}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<194) - 33'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{39,39,39,39,38}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<194) - 33'",
- "modulus": "2^194 - 33",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e196m15_4limbs.json b/src/Specific/CurveParameters/solinas64_2e196m15_4limbs.json
deleted file mode 100644
index 2a5cea46f..000000000
--- a/src/Specific/CurveParameters/solinas64_2e196m15_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "49",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,49,49,49}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<196) - 15'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,49,49,49}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<196) - 15'",
- "modulus": "2^196 - 15",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e196m15_5limbs.json b/src/Specific/CurveParameters/solinas64_2e196m15_5limbs.json
deleted file mode 100644
index b2cfd9bf0..000000000
--- a/src/Specific/CurveParameters/solinas64_2e196m15_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "39.2",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{40,39,39,39,39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<196) - 15'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{40,39,39,39,39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<196) - 15'",
- "modulus": "2^196 - 15",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e198m17_4limbs.json b/src/Specific/CurveParameters/solinas64_2e198m17_4limbs.json
deleted file mode 100644
index 309d5acef..000000000
--- a/src/Specific/CurveParameters/solinas64_2e198m17_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "49.5",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{50,49,50,49}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<198) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{50,49,50,49}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<198) - 17'",
- "modulus": "2^198 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e198m17_5limbs.json b/src/Specific/CurveParameters/solinas64_2e198m17_5limbs.json
deleted file mode 100644
index f2705be23..000000000
--- a/src/Specific/CurveParameters/solinas64_2e198m17_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "39.6",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{40,40,39,40,39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<198) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{40,40,39,40,39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<198) - 17'",
- "modulus": "2^198 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e206m5_4limbs.json b/src/Specific/CurveParameters/solinas64_2e206m5_4limbs.json
deleted file mode 100644
index ff4bb0d2b..000000000
--- a/src/Specific/CurveParameters/solinas64_2e206m5_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "51.5",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,51,52,51}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<206) - 5'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,51,52,51}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<206) - 5'",
- "modulus": "2^206 - 5",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e206m5_5limbs.json b/src/Specific/CurveParameters/solinas64_2e206m5_5limbs.json
deleted file mode 100644
index e32d6a296..000000000
--- a/src/Specific/CurveParameters/solinas64_2e206m5_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "41.2",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{42,41,41,41,41}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<206) - 5'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{42,41,41,41,41}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<206) - 5'",
- "modulus": "2^206 - 5",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e212m29_4limbs.json b/src/Specific/CurveParameters/solinas64_2e212m29_4limbs.json
deleted file mode 100644
index 989417be6..000000000
--- a/src/Specific/CurveParameters/solinas64_2e212m29_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "53",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{53,53,53,53}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<212) - 29'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{53,53,53,53}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<212) - 29'",
- "modulus": "2^212 - 29",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e212m29_5limbs.json b/src/Specific/CurveParameters/solinas64_2e212m29_5limbs.json
deleted file mode 100644
index 746563084..000000000
--- a/src/Specific/CurveParameters/solinas64_2e212m29_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "42.4",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,42,43,42,42}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<212) - 29'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,42,43,42,42}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<212) - 29'",
- "modulus": "2^212 - 29",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e213m3_4limbs.json b/src/Specific/CurveParameters/solinas64_2e213m3_4limbs.json
deleted file mode 100644
index 9032f4ea6..000000000
--- a/src/Specific/CurveParameters/solinas64_2e213m3_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "53.25",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{54,53,53,53}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<213) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{54,53,53,53}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<213) - 3'",
- "modulus": "2^213 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e213m3_5limbs.json b/src/Specific/CurveParameters/solinas64_2e213m3_5limbs.json
deleted file mode 100644
index 0a0a6cb1a..000000000
--- a/src/Specific/CurveParameters/solinas64_2e213m3_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "42.6",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,42,43,42}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<213) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,42,43,42}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<213) - 3'",
- "modulus": "2^213 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e216m2e108m1_4limbs.json b/src/Specific/CurveParameters/solinas64_2e216m2e108m1_4limbs.json
deleted file mode 100644
index f7c4d2de7..000000000
--- a/src/Specific/CurveParameters/solinas64_2e216m2e108m1_4limbs.json
+++ /dev/null
@@ -1,34 +0,0 @@
-{
- "base": "54",
- "bitwidth": 64,
- "carry_chains": [
- [
- 1,
- 3
- ],
- [
- 2,
- 0,
- 3,
- 1
- ],
- [
- 2,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{54,54,54,54}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{54,54,54,54}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1'",
- "goldilocks": true,
- "modulus": "2^216 - 2^108 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e216m2e108m1_5limbs.json b/src/Specific/CurveParameters/solinas64_2e216m2e108m1_5limbs.json
deleted file mode 100644
index 26a824cbf..000000000
--- a/src/Specific/CurveParameters/solinas64_2e216m2e108m1_5limbs.json
+++ /dev/null
@@ -1,35 +0,0 @@
-{
- "base": "43.2",
- "bitwidth": 64,
- "carry_chains": [
- [
- 1,
- 4
- ],
- [
- 2,
- 0,
- 3,
- 1,
- 4
- ],
- [
- 2,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{44,43,43,43,43}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{44,43,43,43,43}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1'",
- "goldilocks": true,
- "modulus": "2^216 - 2^108 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e221m3_4limbs.json b/src/Specific/CurveParameters/solinas64_2e221m3_4limbs.json
deleted file mode 100644
index ca26cc779..000000000
--- a/src/Specific/CurveParameters/solinas64_2e221m3_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "55.25",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,55,55,55}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<221) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,55,55,55}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<221) - 3'",
- "modulus": "2^221 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e221m3_5limbs.json b/src/Specific/CurveParameters/solinas64_2e221m3_5limbs.json
deleted file mode 100644
index 23e532057..000000000
--- a/src/Specific/CurveParameters/solinas64_2e221m3_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "44.2",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{45,44,44,44,44}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<221) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{45,44,44,44,44}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<221) - 3'",
- "modulus": "2^221 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e222m117_4limbs.json b/src/Specific/CurveParameters/solinas64_2e222m117_4limbs.json
deleted file mode 100644
index a7a4c058b..000000000
--- a/src/Specific/CurveParameters/solinas64_2e222m117_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "55.5",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,55,56,55}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<222) - 117'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,55,56,55}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<222) - 117'",
- "modulus": "2^222 - 117",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e222m117_5limbs.json b/src/Specific/CurveParameters/solinas64_2e222m117_5limbs.json
deleted file mode 100644
index 25484715f..000000000
--- a/src/Specific/CurveParameters/solinas64_2e222m117_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "44.4",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{45,44,45,44,44}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<222) - 117'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{45,44,45,44,44}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<222) - 117'",
- "modulus": "2^222 - 117",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e224m2e96p1_5limbs.json b/src/Specific/CurveParameters/solinas64_2e224m2e96p1_5limbs.json
deleted file mode 100644
index 0f37dfe74..000000000
--- a/src/Specific/CurveParameters/solinas64_2e224m2e96p1_5limbs.json
+++ /dev/null
@@ -1,34 +0,0 @@
-{
- "base": "44.8",
- "bitwidth": 64,
- "carry_chains": [
- [
- 1,
- 4
- ],
- [
- 2,
- 0,
- 3,
- 1,
- 4
- ],
- [
- 2,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{45,45,45,45,44}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{45,45,45,45,44}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1'",
- "modulus": "2^224 - 2^96 + 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e224m2e96p1_6limbs.json b/src/Specific/CurveParameters/solinas64_2e224m2e96p1_6limbs.json
deleted file mode 100644
index f4f749ba9..000000000
--- a/src/Specific/CurveParameters/solinas64_2e224m2e96p1_6limbs.json
+++ /dev/null
@@ -1,35 +0,0 @@
-{
- "base": "37 + 1/3",
- "bitwidth": 64,
- "carry_chains": [
- [
- 1,
- 5
- ],
- [
- 2,
- 0,
- 3,
- 1,
- 4,
- 5
- ],
- [
- 2,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{38,37,37,38,37,37}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{38,37,37,38,37,37}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1'",
- "modulus": "2^224 - 2^96 + 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e226m5_4limbs.json b/src/Specific/CurveParameters/solinas64_2e226m5_4limbs.json
deleted file mode 100644
index e7a504fd3..000000000
--- a/src/Specific/CurveParameters/solinas64_2e226m5_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "56.5",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{57,56,57,56}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<226) - 5'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{57,56,57,56}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<226) - 5'",
- "modulus": "2^226 - 5",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e226m5_5limbs.json b/src/Specific/CurveParameters/solinas64_2e226m5_5limbs.json
deleted file mode 100644
index 6e887a1c4..000000000
--- a/src/Specific/CurveParameters/solinas64_2e226m5_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "45.2",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{46,45,45,45,45}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<226) - 5'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{46,45,45,45,45}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<226) - 5'",
- "modulus": "2^226 - 5",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e230m27_4limbs.json b/src/Specific/CurveParameters/solinas64_2e230m27_4limbs.json
deleted file mode 100644
index 9321d5f73..000000000
--- a/src/Specific/CurveParameters/solinas64_2e230m27_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "57.5",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{58,57,58,57}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<230) - 27'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{58,57,58,57}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<230) - 27'",
- "modulus": "2^230 - 27",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e230m27_5limbs.json b/src/Specific/CurveParameters/solinas64_2e230m27_5limbs.json
deleted file mode 100644
index f323195b7..000000000
--- a/src/Specific/CurveParameters/solinas64_2e230m27_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "46",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{46,46,46,46,46}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<230) - 27'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{46,46,46,46,46}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<230) - 27'",
- "modulus": "2^230 - 27",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e235m15_4limbs.json b/src/Specific/CurveParameters/solinas64_2e235m15_4limbs.json
deleted file mode 100644
index aa3b552af..000000000
--- a/src/Specific/CurveParameters/solinas64_2e235m15_4limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "58.75",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{59,59,59,58}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='30' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<235) - 15'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{59,59,59,58}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='30' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<235) - 15'",
- "modulus": "2^235 - 15",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "4"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e235m15_5limbs.json b/src/Specific/CurveParameters/solinas64_2e235m15_5limbs.json
deleted file mode 100644
index 0bf3f54fa..000000000
--- a/src/Specific/CurveParameters/solinas64_2e235m15_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "47",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,47,47,47,47}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='30' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<235) - 15'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,47,47,47,47}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='30' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<235) - 15'",
- "modulus": "2^235 - 15",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e243m9_5limbs.json b/src/Specific/CurveParameters/solinas64_2e243m9_5limbs.json
deleted file mode 100644
index 0ddcc422d..000000000
--- a/src/Specific/CurveParameters/solinas64_2e243m9_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "48.6",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,49,48,49,48}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='31' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<243) - 9'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,49,48,49,48}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='31' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<243) - 9'",
- "modulus": "2^243 - 9",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e243m9_6limbs.json b/src/Specific/CurveParameters/solinas64_2e243m9_6limbs.json
deleted file mode 100644
index 0cd6d2b33..000000000
--- a/src/Specific/CurveParameters/solinas64_2e243m9_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "40.5",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{41,40,41,40,41,40}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='31' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<243) - 9'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{41,40,41,40,41,40}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='31' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<243) - 9'",
- "modulus": "2^243 - 9",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e251m9_5limbs.json b/src/Specific/CurveParameters/solinas64_2e251m9_5limbs.json
deleted file mode 100644
index 06dda2be5..000000000
--- a/src/Specific/CurveParameters/solinas64_2e251m9_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "50.2",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,50,50,50,50}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<251) - 9'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,50,50,50,50}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<251) - 9'",
- "modulus": "2^251 - 9",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e251m9_6limbs.json b/src/Specific/CurveParameters/solinas64_2e251m9_6limbs.json
deleted file mode 100644
index d27d9e554..000000000
--- a/src/Specific/CurveParameters/solinas64_2e251m9_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "41 + 5/6",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{42,42,42,42,42,41}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<251) - 9'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{42,42,42,42,42,41}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<251) - 9'",
- "modulus": "2^251 - 9",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e255m19_5limbs.json b/src/Specific/CurveParameters/solinas64_2e255m19_5limbs.json
deleted file mode 100644
index ab27c416b..000000000
--- a/src/Specific/CurveParameters/solinas64_2e255m19_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "51",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<255) - 19'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<255) - 19'",
- "modulus": "2^255 - 19",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e255m19_5limbs_donna.json b/src/Specific/CurveParameters/solinas64_2e255m19_5limbs_donna.json
deleted file mode 100644
index 34459fee1..000000000
--- a/src/Specific/CurveParameters/solinas64_2e255m19_5limbs_donna.json
+++ /dev/null
@@ -1,80 +0,0 @@
-{
- "base": "51",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<255) - 19'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<255) - 19'",
- "modulus": "2^255 - 19",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5",
- "mul_header" : "(* Micro-optimized form from curve25519-donna-c64 by Adam Langley (Google) and Daniel Bernstein. See <https://github.com/agl/curve25519-donna/blob/master/LICENSE.md>. *)",
- "mul_code"
- :
- "
- uint128_t t[5];
- limb r0,r1,r2,r3,r4,s0,s1,s2,s3,s4,c;
-
- r0 = in[0];
- r1 = in[1];
- r2 = in[2];
- r3 = in[3];
- r4 = in[4];
-
- s0 = in2[0];
- s1 = in2[1];
- s2 = in2[2];
- s3 = in2[3];
- s4 = in2[4];
-
- t[0] = ((uint128_t) r0) * s0;
- t[1] = ((uint128_t) r0) * s1 + ((uint128_t) r1) * s0;
- t[2] = ((uint128_t) r0) * s2 + ((uint128_t) r2) * s0 + ((uint128_t) r1) * s1;
- t[3] = ((uint128_t) r0) * s3 + ((uint128_t) r3) * s0 + ((uint128_t) r1) * s2 + ((uint128_t) r2) * s1;
- t[4] = ((uint128_t) r0) * s4 + ((uint128_t) r4) * s0 + ((uint128_t) r3) * s1 + ((uint128_t) r1) * s3 + ((uint128_t) r2) * s2;
-
- r4 *= 19;
- r1 *= 19;
- r2 *= 19;
- r3 *= 19;
-
- t[0] += ((uint128_t) r4) * s1 + ((uint128_t) r1) * s4 + ((uint128_t) r2) * s3 + ((uint128_t) r3) * s2;
- t[1] += ((uint128_t) r4) * s2 + ((uint128_t) r2) * s4 + ((uint128_t) r3) * s3;
- t[2] += ((uint128_t) r4) * s3 + ((uint128_t) r3) * s4;
- t[3] += ((uint128_t) r4) * s4;
-",
- "square_header" : "(* Micro-optimized form from curve25519-donna-c64 by Adam Langley (Google) and Daniel Bernstein. See <https://github.com/agl/curve25519-donna/blob/master/LICENSE.md>. *)",
- "square_code"
- :
- "
- uint128_t t[5];
- limb r0,r1,r2,r3,r4,c;
- limb d0,d1,d2,d4,d419;
-
- r0 = in[0];
- r1 = in[1];
- r2 = in[2];
- r3 = in[3];
- r4 = in[4];
-
- do {
- d0 = r0 * 2;
- d1 = r1 * 2;
- d2 = r2 * 2 * 19;
- d419 = r4 * 19;
- d4 = d419 * 2;
-
- t[0] = ((uint128_t) r0) * r0 + ((uint128_t) d4) * r1 + (((uint128_t) d2) * (r3 ));
- t[1] = ((uint128_t) d0) * r1 + ((uint128_t) d4) * r2 + (((uint128_t) r3) * (r3 * 19));
- t[2] = ((uint128_t) d0) * r2 + ((uint128_t) r1) * r1 + (((uint128_t) d4) * (r3 ));
- t[3] = ((uint128_t) d0) * r3 + ((uint128_t) d1) * r2 + (((uint128_t) r4) * (d419 ));
- t[4] = ((uint128_t) d0) * r4 + ((uint128_t) d1) * r3 + (((uint128_t) r2) * (r2 ));
-"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e255m19_6limbs.json b/src/Specific/CurveParameters/solinas64_2e255m19_6limbs.json
deleted file mode 100644
index 0d8f4c429..000000000
--- a/src/Specific/CurveParameters/solinas64_2e255m19_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "42.5",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,42,43,42,43,42}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<255) - 19'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,42,43,42,43,42}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<255) - 19'",
- "modulus": "2^255 - 19",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e255m765_5limbs.json b/src/Specific/CurveParameters/solinas64_2e255m765_5limbs.json
deleted file mode 100644
index 3af009ba4..000000000
--- a/src/Specific/CurveParameters/solinas64_2e255m765_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "51",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<255) - 765'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<255) - 765'",
- "modulus": "2^255 - 765",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e255m765_6limbs.json b/src/Specific/CurveParameters/solinas64_2e255m765_6limbs.json
deleted file mode 100644
index f1e621b14..000000000
--- a/src/Specific/CurveParameters/solinas64_2e255m765_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "42.5",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,42,43,42,43,42}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<255) - 765'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,42,43,42,43,42}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<255) - 765'",
- "modulus": "2^255 - 765",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e256m189_5limbs.json b/src/Specific/CurveParameters/solinas64_2e256m189_5limbs.json
deleted file mode 100644
index e7bd1c966..000000000
--- a/src/Specific/CurveParameters/solinas64_2e256m189_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "51.2",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<256) - 189'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<256) - 189'",
- "modulus": "2^256 - 189",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e256m189_6limbs.json b/src/Specific/CurveParameters/solinas64_2e256m189_6limbs.json
deleted file mode 100644
index 9e701a8b1..000000000
--- a/src/Specific/CurveParameters/solinas64_2e256m189_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "42 + 2/3",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,42,43,43,42}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<256) - 189'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,42,43,43,42}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<256) - 189'",
- "modulus": "2^256 - 189",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e256m2e224p2e192p2e96m1_5limbs.json b/src/Specific/CurveParameters/solinas64_2e256m2e224p2e192p2e96m1_5limbs.json
deleted file mode 100644
index 136b844be..000000000
--- a/src/Specific/CurveParameters/solinas64_2e256m2e224p2e192p2e96m1_5limbs.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "base": "51.2",
- "bitwidth": 64,
- "carry_chains": [
- [
- 3,
- 2,
- 0,
- 4
- ],
- [
- 4,
- 3,
- 1,
- 0,
- 2
- ],
- [
- 4,
- 3,
- 1,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1'",
- "modulus": "2^256 - 2^224 + 2^192 + 2^96 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e256m2e224p2e192p2e96m1_6limbs.json b/src/Specific/CurveParameters/solinas64_2e256m2e224p2e192p2e96m1_6limbs.json
deleted file mode 100644
index 367ed825a..000000000
--- a/src/Specific/CurveParameters/solinas64_2e256m2e224p2e192p2e96m1_6limbs.json
+++ /dev/null
@@ -1,39 +0,0 @@
-{
- "base": "42 + 2/3",
- "bitwidth": 64,
- "carry_chains": [
- [
- 4,
- 3,
- 1,
- 5
- ],
- [
- 5,
- 4,
- 2,
- 0,
- 3,
- 1
- ],
- [
- 5,
- 4,
- 2,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,42,43,43,42}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,42,43,43,42}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1'",
- "modulus": "2^256 - 2^224 + 2^192 + 2^96 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e256m2e32m977_6limbs.json b/src/Specific/CurveParameters/solinas64_2e256m2e32m977_6limbs.json
deleted file mode 100644
index 220dba0ba..000000000
--- a/src/Specific/CurveParameters/solinas64_2e256m2e32m977_6limbs.json
+++ /dev/null
@@ -1,34 +0,0 @@
-{
- "base": "42 + 2/3",
- "bitwidth": 64,
- "carry_chains": [
- [
- 5,
- 5
- ],
- [
- 0,
- 1,
- 2,
- 3,
- 4
- ],
- [
- 0,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,42,43,43,42}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,42,43,43,42}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977'",
- "modulus": "2^256 - 2^32 - 977",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e256m2e32m977_7limbs.json b/src/Specific/CurveParameters/solinas64_2e256m2e32m977_7limbs.json
deleted file mode 100644
index 5285cff9c..000000000
--- a/src/Specific/CurveParameters/solinas64_2e256m2e32m977_7limbs.json
+++ /dev/null
@@ -1,35 +0,0 @@
-{
- "base": "36 + 4/7",
- "bitwidth": 64,
- "carry_chains": [
- [
- 6,
- 6
- ],
- [
- 0,
- 1,
- 2,
- 3,
- 4,
- 5
- ],
- [
- 0,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{37,37,36,37,36,37,36}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{37,37,36,37,36,37,36}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977'",
- "modulus": "2^256 - 2^32 - 977",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e256m4294968273_10limbs.json b/src/Specific/CurveParameters/solinas64_2e256m4294968273_10limbs.json
deleted file mode 100644
index 22112510b..000000000
--- a/src/Specific/CurveParameters/solinas64_2e256m4294968273_10limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "25.6",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{26,26,25,26,25,26,26,25,26,25}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<256) - 4294968273'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{26,26,25,26,25,26,26,25,26,25}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<256) - 4294968273'",
- "modulus": "2^256 - 4294968273",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "10"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e256m4294968273_9limbs.json b/src/Specific/CurveParameters/solinas64_2e256m4294968273_9limbs.json
deleted file mode 100644
index 76b4be27c..000000000
--- a/src/Specific/CurveParameters/solinas64_2e256m4294968273_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "28 + 4/9",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{29,28,29,28,29,28,29,28,28}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<256) - 4294968273'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{29,28,29,28,29,28,29,28,28}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<256) - 4294968273'",
- "modulus": "2^256 - 4294968273",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e266m3_5limbs.json b/src/Specific/CurveParameters/solinas64_2e266m3_5limbs.json
deleted file mode 100644
index c3f1a5d31..000000000
--- a/src/Specific/CurveParameters/solinas64_2e266m3_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "53.2",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{54,53,53,53,53}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='34' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<266) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{54,53,53,53,53}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='34' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<266) - 3'",
- "modulus": "2^266 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e266m3_6limbs.json b/src/Specific/CurveParameters/solinas64_2e266m3_6limbs.json
deleted file mode 100644
index 9872d0668..000000000
--- a/src/Specific/CurveParameters/solinas64_2e266m3_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "44 + 1/3",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{45,44,44,45,44,44}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='34' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<266) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{45,44,44,45,44,44}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='34' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<266) - 3'",
- "modulus": "2^266 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e285m9_5limbs.json b/src/Specific/CurveParameters/solinas64_2e285m9_5limbs.json
deleted file mode 100644
index 55543605f..000000000
--- a/src/Specific/CurveParameters/solinas64_2e285m9_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "57",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{57,57,57,57,57}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='36' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<285) - 9'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{57,57,57,57,57}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='36' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<285) - 9'",
- "modulus": "2^285 - 9",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e285m9_6limbs.json b/src/Specific/CurveParameters/solinas64_2e285m9_6limbs.json
deleted file mode 100644
index 49cbe258c..000000000
--- a/src/Specific/CurveParameters/solinas64_2e285m9_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "47.5",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,47,48,47,48,47}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='36' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<285) - 9'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,47,48,47,48,47}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='36' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<285) - 9'",
- "modulus": "2^285 - 9",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e291m19_5limbs.json b/src/Specific/CurveParameters/solinas64_2e291m19_5limbs.json
deleted file mode 100644
index 172300070..000000000
--- a/src/Specific/CurveParameters/solinas64_2e291m19_5limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "58.2",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{59,58,58,58,58}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='37' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<291) - 19'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{59,58,58,58,58}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='37' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<291) - 19'",
- "modulus": "2^291 - 19",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "5"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e291m19_6limbs.json b/src/Specific/CurveParameters/solinas64_2e291m19_6limbs.json
deleted file mode 100644
index 4874de4ee..000000000
--- a/src/Specific/CurveParameters/solinas64_2e291m19_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "48.5",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,48,49,48,49,48}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='37' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<291) - 19'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,48,49,48,49,48}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='37' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<291) - 19'",
- "modulus": "2^291 - 19",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e321m9_6limbs.json b/src/Specific/CurveParameters/solinas64_2e321m9_6limbs.json
deleted file mode 100644
index eb820aaf6..000000000
--- a/src/Specific/CurveParameters/solinas64_2e321m9_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "53.5",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{54,53,54,53,54,53}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<321) - 9'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{54,53,54,53,54,53}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<321) - 9'",
- "modulus": "2^321 - 9",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e321m9_7limbs.json b/src/Specific/CurveParameters/solinas64_2e321m9_7limbs.json
deleted file mode 100644
index e6bf0bdaa..000000000
--- a/src/Specific/CurveParameters/solinas64_2e321m9_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "45 + 6/7",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{46,46,46,46,46,46,45}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<321) - 9'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{46,46,46,46,46,46,45}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<321) - 9'",
- "modulus": "2^321 - 9",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e322m2e161m1_6limbs.json b/src/Specific/CurveParameters/solinas64_2e322m2e161m1_6limbs.json
deleted file mode 100644
index 68b43cbbc..000000000
--- a/src/Specific/CurveParameters/solinas64_2e322m2e161m1_6limbs.json
+++ /dev/null
@@ -1,36 +0,0 @@
-{
- "base": "53 + 2/3",
- "bitwidth": 64,
- "carry_chains": [
- [
- 2,
- 5
- ],
- [
- 3,
- 0,
- 4,
- 1,
- 5,
- 2
- ],
- [
- 3,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{54,54,53,54,54,53}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{54,54,53,54,54,53}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1'",
- "goldilocks": true,
- "modulus": "2^322 - 2^161 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e322m2e161m1_7limbs.json b/src/Specific/CurveParameters/solinas64_2e322m2e161m1_7limbs.json
deleted file mode 100644
index 7cbbf9f5e..000000000
--- a/src/Specific/CurveParameters/solinas64_2e322m2e161m1_7limbs.json
+++ /dev/null
@@ -1,37 +0,0 @@
-{
- "base": "46",
- "bitwidth": 64,
- "carry_chains": [
- [
- 2,
- 6
- ],
- [
- 3,
- 0,
- 4,
- 1,
- 5,
- 2,
- 6
- ],
- [
- 3,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{46,46,46,46,46,46,46}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{46,46,46,46,46,46,46}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1'",
- "goldilocks": true,
- "modulus": "2^322 - 2^161 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e336m17_6limbs.json b/src/Specific/CurveParameters/solinas64_2e336m17_6limbs.json
deleted file mode 100644
index 6e6dd9305..000000000
--- a/src/Specific/CurveParameters/solinas64_2e336m17_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "56",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,56,56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<336) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,56,56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<336) - 17'",
- "modulus": "2^336 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e336m17_7limbs.json b/src/Specific/CurveParameters/solinas64_2e336m17_7limbs.json
deleted file mode 100644
index a8f34ee7b..000000000
--- a/src/Specific/CurveParameters/solinas64_2e336m17_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "48",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<336) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<336) - 17'",
- "modulus": "2^336 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e336m3_6limbs.json b/src/Specific/CurveParameters/solinas64_2e336m3_6limbs.json
deleted file mode 100644
index 91a4e71aa..000000000
--- a/src/Specific/CurveParameters/solinas64_2e336m3_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "56",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,56,56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<336) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,56,56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<336) - 3'",
- "modulus": "2^336 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e336m3_7limbs.json b/src/Specific/CurveParameters/solinas64_2e336m3_7limbs.json
deleted file mode 100644
index 4fb08a7ed..000000000
--- a/src/Specific/CurveParameters/solinas64_2e336m3_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "48",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<336) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<336) - 3'",
- "modulus": "2^336 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e338m15_6limbs.json b/src/Specific/CurveParameters/solinas64_2e338m15_6limbs.json
deleted file mode 100644
index 220cba5d2..000000000
--- a/src/Specific/CurveParameters/solinas64_2e338m15_6limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "56 + 1/3",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{57,56,56,57,56,56}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='43' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<338) - 15'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{57,56,56,57,56,56}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='43' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<338) - 15'",
- "modulus": "2^338 - 15",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "6"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e338m15_7limbs.json b/src/Specific/CurveParameters/solinas64_2e338m15_7limbs.json
deleted file mode 100644
index db17f4f1c..000000000
--- a/src/Specific/CurveParameters/solinas64_2e338m15_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "48 + 2/7",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,48,48,49,48,48,48}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='43' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<338) - 15'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,48,48,49,48,48,48}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='43' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<338) - 15'",
- "modulus": "2^338 - 15",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e369m25_7limbs.json b/src/Specific/CurveParameters/solinas64_2e369m25_7limbs.json
deleted file mode 100644
index 4dc32c919..000000000
--- a/src/Specific/CurveParameters/solinas64_2e369m25_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "52 + 5/7",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{53,53,53,52,53,53,52}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='47' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<369) - 25'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{53,53,53,52,53,53,52}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='47' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<369) - 25'",
- "modulus": "2^369 - 25",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e369m25_8limbs.json b/src/Specific/CurveParameters/solinas64_2e369m25_8limbs.json
deleted file mode 100644
index 3a6a3e4bb..000000000
--- a/src/Specific/CurveParameters/solinas64_2e369m25_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "46.125",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,46,46,46,46,46,46,46}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='47' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<369) - 25'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,46,46,46,46,46,46,46}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='47' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<369) - 25'",
- "modulus": "2^369 - 25",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e379m19_7limbs.json b/src/Specific/CurveParameters/solinas64_2e379m19_7limbs.json
deleted file mode 100644
index 1ca84b1ed..000000000
--- a/src/Specific/CurveParameters/solinas64_2e379m19_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "54 + 1/7",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,54,54,54,54,54,54}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<379) - 19'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,54,54,54,54,54,54}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<379) - 19'",
- "modulus": "2^379 - 19",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e379m19_8limbs.json b/src/Specific/CurveParameters/solinas64_2e379m19_8limbs.json
deleted file mode 100644
index 5af831e02..000000000
--- a/src/Specific/CurveParameters/solinas64_2e379m19_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "47.375",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,47,48,47,47,48,47,47}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<379) - 19'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,47,48,47,47,48,47,47}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<379) - 19'",
- "modulus": "2^379 - 19",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e382m105_7limbs.json b/src/Specific/CurveParameters/solinas64_2e382m105_7limbs.json
deleted file mode 100644
index bd711d3ab..000000000
--- a/src/Specific/CurveParameters/solinas64_2e382m105_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "54 + 4/7",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,54,55,54,55,54}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<382) - 105'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,54,55,54,55,54}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<382) - 105'",
- "modulus": "2^382 - 105",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e382m105_8limbs.json b/src/Specific/CurveParameters/solinas64_2e382m105_8limbs.json
deleted file mode 100644
index 924c6ad0f..000000000
--- a/src/Specific/CurveParameters/solinas64_2e382m105_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "47.75",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,47,48,48,48,47}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<382) - 105'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,47,48,48,48,47}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<382) - 105'",
- "modulus": "2^382 - 105",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e383m187_7limbs.json b/src/Specific/CurveParameters/solinas64_2e383m187_7limbs.json
deleted file mode 100644
index fa11b9449..000000000
--- a/src/Specific/CurveParameters/solinas64_2e383m187_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "54 + 5/7",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,55,54,55,55,54}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<383) - 187'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,55,54,55,55,54}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<383) - 187'",
- "modulus": "2^383 - 187",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e383m187_8limbs.json b/src/Specific/CurveParameters/solinas64_2e383m187_8limbs.json
deleted file mode 100644
index bb1d8fdef..000000000
--- a/src/Specific/CurveParameters/solinas64_2e383m187_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "47.875",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,47}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<383) - 187'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,47}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<383) - 187'",
- "modulus": "2^383 - 187",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e383m31_7limbs.json b/src/Specific/CurveParameters/solinas64_2e383m31_7limbs.json
deleted file mode 100644
index 8ddbc4cc1..000000000
--- a/src/Specific/CurveParameters/solinas64_2e383m31_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "54 + 5/7",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,55,54,55,55,54}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<383) - 31'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,55,54,55,55,54}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<383) - 31'",
- "modulus": "2^383 - 31",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e383m31_8limbs.json b/src/Specific/CurveParameters/solinas64_2e383m31_8limbs.json
deleted file mode 100644
index 814b23aa5..000000000
--- a/src/Specific/CurveParameters/solinas64_2e383m31_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "47.875",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,47}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<383) - 31'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,47}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<383) - 31'",
- "modulus": "2^383 - 31",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e383m421_7limbs.json b/src/Specific/CurveParameters/solinas64_2e383m421_7limbs.json
deleted file mode 100644
index 120c4c8fc..000000000
--- a/src/Specific/CurveParameters/solinas64_2e383m421_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "54 + 5/7",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,55,54,55,55,54}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<383) - 421'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,55,54,55,55,54}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<383) - 421'",
- "modulus": "2^383 - 421",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e383m421_8limbs.json b/src/Specific/CurveParameters/solinas64_2e383m421_8limbs.json
deleted file mode 100644
index 2b301cd7d..000000000
--- a/src/Specific/CurveParameters/solinas64_2e383m421_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "47.875",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,47}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<383) - 421'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,47}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<383) - 421'",
- "modulus": "2^383 - 421",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e384m2e128m2e96p2e32m1_10limbs.json b/src/Specific/CurveParameters/solinas64_2e384m2e128m2e96p2e32m1_10limbs.json
deleted file mode 100644
index a482577c1..000000000
--- a/src/Specific/CurveParameters/solinas64_2e384m2e128m2e96p2e32m1_10limbs.json
+++ /dev/null
@@ -1,43 +0,0 @@
-{
- "base": "38.4",
- "bitwidth": 64,
- "carry_chains": [
- [
- 2,
- 1,
- 9,
- 9
- ],
- [
- 3,
- 2,
- 0,
- 4,
- 1,
- 5,
- 6,
- 7,
- 8,
- 9
- ],
- [
- 3,
- 2,
- 0,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{39,38,39,38,38,39,38,39,38,38}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{39,38,39,38,38,39,38,39,38,38}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1'",
- "modulus": "2^384 - 2^128 - 2^96 + 2^32 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "10"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e384m2e128m2e96p2e32m1_9limbs.json b/src/Specific/CurveParameters/solinas64_2e384m2e128m2e96p2e32m1_9limbs.json
deleted file mode 100644
index b5d19683a..000000000
--- a/src/Specific/CurveParameters/solinas64_2e384m2e128m2e96p2e32m1_9limbs.json
+++ /dev/null
@@ -1,42 +0,0 @@
-{
- "base": "42 + 2/3",
- "bitwidth": 64,
- "carry_chains": [
- [
- 2,
- 1,
- 8,
- 8
- ],
- [
- 3,
- 2,
- 0,
- 4,
- 1,
- 5,
- 6,
- 7,
- 8
- ],
- [
- 3,
- 2,
- 0,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,42,43,43,42,43,43,42}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,42,43,43,42,43,43,42}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1'",
- "modulus": "2^384 - 2^128 - 2^96 + 2^32 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e384m317_7limbs.json b/src/Specific/CurveParameters/solinas64_2e384m317_7limbs.json
deleted file mode 100644
index 673b45e2b..000000000
--- a/src/Specific/CurveParameters/solinas64_2e384m317_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "54 + 6/7",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,55,55,55,55,54}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<384) - 317'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,55,55,55,55,54}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<384) - 317'",
- "modulus": "2^384 - 317",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e384m317_8limbs.json b/src/Specific/CurveParameters/solinas64_2e384m317_8limbs.json
deleted file mode 100644
index d4e27a33a..000000000
--- a/src/Specific/CurveParameters/solinas64_2e384m317_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "48",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<384) - 317'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<384) - 317'",
- "modulus": "2^384 - 317",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e389m21_7limbs.json b/src/Specific/CurveParameters/solinas64_2e389m21_7limbs.json
deleted file mode 100644
index ec9620ca3..000000000
--- a/src/Specific/CurveParameters/solinas64_2e389m21_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "55 + 4/7",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,56,55,56,55,56,55}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='49' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<389) - 21'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,56,55,56,55,56,55}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='49' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<389) - 21'",
- "modulus": "2^389 - 21",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e389m21_8limbs.json b/src/Specific/CurveParameters/solinas64_2e389m21_8limbs.json
deleted file mode 100644
index 06bc8cc0e..000000000
--- a/src/Specific/CurveParameters/solinas64_2e389m21_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "48.625",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,49,48,49,49,48,49,48}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='49' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<389) - 21'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,49,48,49,49,48,49,48}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='49' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<389) - 21'",
- "modulus": "2^389 - 21",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e401m31_7limbs.json b/src/Specific/CurveParameters/solinas64_2e401m31_7limbs.json
deleted file mode 100644
index c6c24b955..000000000
--- a/src/Specific/CurveParameters/solinas64_2e401m31_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "57 + 2/7",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{58,57,57,58,57,57,57}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='51' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<401) - 31'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{58,57,57,58,57,57,57}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='51' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<401) - 31'",
- "modulus": "2^401 - 31",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e401m31_8limbs.json b/src/Specific/CurveParameters/solinas64_2e401m31_8limbs.json
deleted file mode 100644
index 4857ee185..000000000
--- a/src/Specific/CurveParameters/solinas64_2e401m31_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "50.125",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,50,50,50,50,50,50,50}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='51' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<401) - 31'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,50,50,50,50,50,50,50}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='51' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<401) - 31'",
- "modulus": "2^401 - 31",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e413m21_7limbs.json b/src/Specific/CurveParameters/solinas64_2e413m21_7limbs.json
deleted file mode 100644
index a08cf0255..000000000
--- a/src/Specific/CurveParameters/solinas64_2e413m21_7limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "59",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{59,59,59,59,59,59,59}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<413) - 21'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{59,59,59,59,59,59,59}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<413) - 21'",
- "modulus": "2^413 - 21",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "7"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e413m21_8limbs.json b/src/Specific/CurveParameters/solinas64_2e413m21_8limbs.json
deleted file mode 100644
index 2257caa49..000000000
--- a/src/Specific/CurveParameters/solinas64_2e413m21_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "51.625",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,52,51,52,52,51,52,51}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<413) - 21'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,52,51,52,52,51,52,51}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<413) - 21'",
- "modulus": "2^413 - 21",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e414m17_8limbs.json b/src/Specific/CurveParameters/solinas64_2e414m17_8limbs.json
deleted file mode 100644
index 3887af43d..000000000
--- a/src/Specific/CurveParameters/solinas64_2e414m17_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "51.75",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,52,52,51,52,52,52,51}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<414) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,52,52,51,52,52,52,51}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<414) - 17'",
- "modulus": "2^414 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e414m17_9limbs.json b/src/Specific/CurveParameters/solinas64_2e414m17_9limbs.json
deleted file mode 100644
index 58e6ff063..000000000
--- a/src/Specific/CurveParameters/solinas64_2e414m17_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "46",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{46,46,46,46,46,46,46,46,46}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<414) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{46,46,46,46,46,46,46,46,46}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<414) - 17'",
- "modulus": "2^414 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e416m2e208m1_8limbs.json b/src/Specific/CurveParameters/solinas64_2e416m2e208m1_8limbs.json
deleted file mode 100644
index 3998ba200..000000000
--- a/src/Specific/CurveParameters/solinas64_2e416m2e208m1_8limbs.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "base": "52",
- "bitwidth": 64,
- "carry_chains": [
- [
- 3,
- 7
- ],
- [
- 4,
- 0,
- 5,
- 1,
- 6,
- 2,
- 7,
- 3
- ],
- [
- 4,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,52,52,52,52,52,52,52}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,52,52,52,52,52,52,52}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1'",
- "goldilocks": true,
- "modulus": "2^416 - 2^208 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e416m2e208m1_9limbs.json b/src/Specific/CurveParameters/solinas64_2e416m2e208m1_9limbs.json
deleted file mode 100644
index 19363bcda..000000000
--- a/src/Specific/CurveParameters/solinas64_2e416m2e208m1_9limbs.json
+++ /dev/null
@@ -1,39 +0,0 @@
-{
- "base": "46 + 2/9",
- "bitwidth": 64,
- "carry_chains": [
- [
- 3,
- 8
- ],
- [
- 4,
- 0,
- 5,
- 1,
- 6,
- 2,
- 7,
- 3,
- 8
- ],
- [
- 4,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,46,46,46,47,46,46,46,46}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,46,46,46,47,46,46,46,46}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1'",
- "goldilocks": true,
- "modulus": "2^416 - 2^208 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e444m17_8limbs.json b/src/Specific/CurveParameters/solinas64_2e444m17_8limbs.json
deleted file mode 100644
index e09bd5c94..000000000
--- a/src/Specific/CurveParameters/solinas64_2e444m17_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "55.5",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,55,56,55,56,55,56,55}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<444) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,55,56,55,56,55,56,55}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<444) - 17'",
- "modulus": "2^444 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e444m17_9limbs.json b/src/Specific/CurveParameters/solinas64_2e444m17_9limbs.json
deleted file mode 100644
index 541d9d18d..000000000
--- a/src/Specific/CurveParameters/solinas64_2e444m17_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "49 + 1/3",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{50,49,49,50,49,49,50,49,49}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<444) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{50,49,49,50,49,49,50,49,49}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<444) - 17'",
- "modulus": "2^444 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e448m2e224m1_10limbs.json b/src/Specific/CurveParameters/solinas64_2e448m2e224m1_10limbs.json
deleted file mode 100644
index fbf055d23..000000000
--- a/src/Specific/CurveParameters/solinas64_2e448m2e224m1_10limbs.json
+++ /dev/null
@@ -1,40 +0,0 @@
-{
- "base": "44.8",
- "bitwidth": 64,
- "carry_chains": [
- [
- 4,
- 9
- ],
- [
- 5,
- 0,
- 6,
- 1,
- 7,
- 2,
- 8,
- 3,
- 9,
- 4
- ],
- [
- 5,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{45,45,45,45,44,45,45,45,45,44}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{45,45,45,45,44,45,45,45,45,44}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1'",
- "goldilocks": true,
- "modulus": "2^448 - 2^224 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "10"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e448m2e224m1_8limbs.json b/src/Specific/CurveParameters/solinas64_2e448m2e224m1_8limbs.json
deleted file mode 100644
index 0f5f3ea93..000000000
--- a/src/Specific/CurveParameters/solinas64_2e448m2e224m1_8limbs.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "base": "56",
- "bitwidth": 64,
- "carry_chains": [
- [
- 3,
- 7
- ],
- [
- 4,
- 0,
- 5,
- 1,
- 6,
- 2,
- 7,
- 3
- ],
- [
- 4,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,56,56,56,56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,56,56,56,56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1'",
- "goldilocks": true,
- "modulus": "2^448 - 2^224 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e450m2e225m1_10limbs.json b/src/Specific/CurveParameters/solinas64_2e450m2e225m1_10limbs.json
deleted file mode 100644
index 15e37d483..000000000
--- a/src/Specific/CurveParameters/solinas64_2e450m2e225m1_10limbs.json
+++ /dev/null
@@ -1,40 +0,0 @@
-{
- "base": "45",
- "bitwidth": 64,
- "carry_chains": [
- [
- 4,
- 9
- ],
- [
- 5,
- 0,
- 6,
- 1,
- 7,
- 2,
- 8,
- 3,
- 9,
- 4
- ],
- [
- 5,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{45,45,45,45,45,45,45,45,45,45}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{45,45,45,45,45,45,45,45,45,45}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1'",
- "goldilocks": true,
- "modulus": "2^450 - 2^225 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "10"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e450m2e225m1_8limbs.json b/src/Specific/CurveParameters/solinas64_2e450m2e225m1_8limbs.json
deleted file mode 100644
index 2d2da85cd..000000000
--- a/src/Specific/CurveParameters/solinas64_2e450m2e225m1_8limbs.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "base": "56.25",
- "bitwidth": 64,
- "carry_chains": [
- [
- 3,
- 7
- ],
- [
- 4,
- 0,
- 5,
- 1,
- 6,
- 2,
- 7,
- 3
- ],
- [
- 4,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{57,56,56,56,57,56,56,56}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{57,56,56,56,57,56,56,56}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1'",
- "goldilocks": true,
- "modulus": "2^450 - 2^225 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e452m3_8limbs.json b/src/Specific/CurveParameters/solinas64_2e452m3_8limbs.json
deleted file mode 100644
index 9355eda49..000000000
--- a/src/Specific/CurveParameters/solinas64_2e452m3_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "56.5",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{57,56,57,56,57,56,57,56}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<452) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{57,56,57,56,57,56,57,56}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<452) - 3'",
- "modulus": "2^452 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e452m3_9limbs.json b/src/Specific/CurveParameters/solinas64_2e452m3_9limbs.json
deleted file mode 100644
index 624343b39..000000000
--- a/src/Specific/CurveParameters/solinas64_2e452m3_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "50 + 2/9",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,50,50,50,51,50,50,50,50}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<452) - 3'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,50,50,50,51,50,50,50,50}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<452) - 3'",
- "modulus": "2^452 - 3",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e468m17_8limbs.json b/src/Specific/CurveParameters/solinas64_2e468m17_8limbs.json
deleted file mode 100644
index 22c7d1cc6..000000000
--- a/src/Specific/CurveParameters/solinas64_2e468m17_8limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "58.5",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{59,58,59,58,59,58,59,58}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='59' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<468) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{59,58,59,58,59,58,59,58}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='59' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<468) - 17'",
- "modulus": "2^468 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e468m17_9limbs.json b/src/Specific/CurveParameters/solinas64_2e468m17_9limbs.json
deleted file mode 100644
index c85fccced..000000000
--- a/src/Specific/CurveParameters/solinas64_2e468m17_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "52",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,52,52,52,52,52,52,52,52}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='59' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<468) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,52,52,52,52,52,52,52,52}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='59' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<468) - 17'",
- "modulus": "2^468 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e480m2e240m1_10limbs.json b/src/Specific/CurveParameters/solinas64_2e480m2e240m1_10limbs.json
deleted file mode 100644
index 05dc54ae0..000000000
--- a/src/Specific/CurveParameters/solinas64_2e480m2e240m1_10limbs.json
+++ /dev/null
@@ -1,40 +0,0 @@
-{
- "base": "48",
- "bitwidth": 64,
- "carry_chains": [
- [
- 4,
- 9
- ],
- [
- 5,
- 0,
- 6,
- 1,
- 7,
- 2,
- 8,
- 3,
- 9,
- 4
- ],
- [
- 5,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='60' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='60' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1'",
- "goldilocks": true,
- "modulus": "2^480 - 2^240 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "10"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e480m2e240m1_8limbs.json b/src/Specific/CurveParameters/solinas64_2e480m2e240m1_8limbs.json
deleted file mode 100644
index bd0962838..000000000
--- a/src/Specific/CurveParameters/solinas64_2e480m2e240m1_8limbs.json
+++ /dev/null
@@ -1,38 +0,0 @@
-{
- "base": "60",
- "bitwidth": 64,
- "carry_chains": [
- [
- 3,
- 7
- ],
- [
- 4,
- 0,
- 5,
- 1,
- 6,
- 2,
- 7,
- 3
- ],
- [
- 4,
- 0
- ]
- ],
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{60,60,60,60,60,60,60,60}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='60' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{60,60,60,60,60,60,60,60}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='60' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1'",
- "goldilocks": true,
- "modulus": "2^480 - 2^240 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "8"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e488m17_10limbs.json b/src/Specific/CurveParameters/solinas64_2e488m17_10limbs.json
deleted file mode 100644
index a4b0fa1da..000000000
--- a/src/Specific/CurveParameters/solinas64_2e488m17_10limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "48.8",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,49,49,49,48,49,49,49,49,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='61' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<488) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,49,49,49,48,49,49,49,49,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='61' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<488) - 17'",
- "modulus": "2^488 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "10"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e488m17_9limbs.json b/src/Specific/CurveParameters/solinas64_2e488m17_9limbs.json
deleted file mode 100644
index 9d9d61a2b..000000000
--- a/src/Specific/CurveParameters/solinas64_2e488m17_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "54 + 2/9",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,54,54,54,55,54,54,54,54}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='61' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<488) - 17'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,54,54,54,55,54,54,54,54}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='61' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<488) - 17'",
- "modulus": "2^488 - 17",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e489m21_10limbs.json b/src/Specific/CurveParameters/solinas64_2e489m21_10limbs.json
deleted file mode 100644
index ebf53a4ff..000000000
--- a/src/Specific/CurveParameters/solinas64_2e489m21_10limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "48.9",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,49,49,49,49,49,49,49,49,48}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<489) - 21'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,49,49,49,49,49,49,49,49,48}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<489) - 21'",
- "modulus": "2^489 - 21",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "10"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e489m21_9limbs.json b/src/Specific/CurveParameters/solinas64_2e489m21_9limbs.json
deleted file mode 100644
index e58bbfb7a..000000000
--- a/src/Specific/CurveParameters/solinas64_2e489m21_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "54 + 1/3",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,54,54,55,54,54,55,54,54}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<489) - 21'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,54,54,55,54,54,55,54,54}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<489) - 21'",
- "modulus": "2^489 - 21",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e495m31_10limbs.json b/src/Specific/CurveParameters/solinas64_2e495m31_10limbs.json
deleted file mode 100644
index f90b0031e..000000000
--- a/src/Specific/CurveParameters/solinas64_2e495m31_10limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "49.5",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{50,49,50,49,50,49,50,49,50,49}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<495) - 31'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{50,49,50,49,50,49,50,49,50,49}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<495) - 31'",
- "modulus": "2^495 - 31",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "10"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e495m31_9limbs.json b/src/Specific/CurveParameters/solinas64_2e495m31_9limbs.json
deleted file mode 100644
index 8fbe2488e..000000000
--- a/src/Specific/CurveParameters/solinas64_2e495m31_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "55",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,55,55,55,55,55,55,55}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<495) - 31'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,55,55,55,55,55,55,55}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<495) - 31'",
- "modulus": "2^495 - 31",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e511m187_10limbs.json b/src/Specific/CurveParameters/solinas64_2e511m187_10limbs.json
deleted file mode 100644
index df35e2574..000000000
--- a/src/Specific/CurveParameters/solinas64_2e511m187_10limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "51.1",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<511) - 187'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<511) - 187'",
- "modulus": "2^511 - 187",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "10"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e511m187_11limbs.json b/src/Specific/CurveParameters/solinas64_2e511m187_11limbs.json
deleted file mode 100644
index 4f1601326..000000000
--- a/src/Specific/CurveParameters/solinas64_2e511m187_11limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "46 + 5/11",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,46,47,46,47,46,47,46,47,46,46}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<511) - 187'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,46,47,46,47,46,47,46,47,46,46}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<511) - 187'",
- "modulus": "2^511 - 187",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "11"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e511m481_10limbs.json b/src/Specific/CurveParameters/solinas64_2e511m481_10limbs.json
deleted file mode 100644
index 08e59df6f..000000000
--- a/src/Specific/CurveParameters/solinas64_2e511m481_10limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "51.1",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<511) - 481'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<511) - 481'",
- "modulus": "2^511 - 481",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "10"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e511m481_11limbs.json b/src/Specific/CurveParameters/solinas64_2e511m481_11limbs.json
deleted file mode 100644
index c36c26751..000000000
--- a/src/Specific/CurveParameters/solinas64_2e511m481_11limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "46 + 5/11",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,46,47,46,47,46,47,46,47,46,46}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<511) - 481'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,46,47,46,47,46,47,46,47,46,46}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<511) - 481'",
- "modulus": "2^511 - 481",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "11"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e512m569_10limbs.json b/src/Specific/CurveParameters/solinas64_2e512m569_10limbs.json
deleted file mode 100644
index 9212cab7c..000000000
--- a/src/Specific/CurveParameters/solinas64_2e512m569_10limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "51.2",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,51,51,51,51,52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<512) - 569'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,51,51,51,51,52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<512) - 569'",
- "modulus": "2^512 - 569",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "10"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e512m569_11limbs.json b/src/Specific/CurveParameters/solinas64_2e512m569_11limbs.json
deleted file mode 100644
index 5db9f2e73..000000000
--- a/src/Specific/CurveParameters/solinas64_2e512m569_11limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "46 + 6/11",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,47,46,47,46,47,46,47,46,47,46}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<512) - 569'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,47,46,47,46,47,46,47,46,47,46}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<512) - 569'",
- "modulus": "2^512 - 569",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "11"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e521m1_10limbs.json b/src/Specific/CurveParameters/solinas64_2e521m1_10limbs.json
deleted file mode 100644
index 896456f8b..000000000
--- a/src/Specific/CurveParameters/solinas64_2e521m1_10limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "52.1",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{53,52,52,52,52,52,52,52,52,52}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='66' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<521) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{53,52,52,52,52,52,52,52,52,52}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='66' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<521) - 1'",
- "modulus": "2^521 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "10"
-}
diff --git a/src/Specific/CurveParameters/solinas64_2e521m1_9limbs.json b/src/Specific/CurveParameters/solinas64_2e521m1_9limbs.json
deleted file mode 100644
index 6829b4ee1..000000000
--- a/src/Specific/CurveParameters/solinas64_2e521m1_9limbs.json
+++ /dev/null
@@ -1,18 +0,0 @@
-{
- "base": "57 + 8/9",
- "bitwidth": 64,
- "carry_chains": "default",
- "coef_div_modulus": "2",
- "compiler": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{58,58,58,58,58,58,58,58,57}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='66' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<521) - 1'",
- "compilerxx": "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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{58,58,58,58,58,58,58,58,57}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='66' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<521) - 1'",
- "modulus": "2^521 - 1",
- "operations": [
- "femul",
- "feadd",
- "fesub",
- "fesquare",
- "fecarry",
- "freeze"
- ],
- "sz": "9"
-}
diff --git a/src/Specific/CurveParameters/x2448_c64_karatsuba.json b/src/Specific/CurveParameters/x2448_c64_karatsuba.json
deleted file mode 100644
index 14357135e..000000000
--- a/src/Specific/CurveParameters/x2448_c64_karatsuba.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "modulus" : "2^448-2^224-1",
- "base" : "56",
- "goldilocks" : "true",
- "sz" : "8",
- "bitwidth" : "64",
- "carry_chains" : [[3, 7],
- [0, 4, 1, 5, 2, 6, 3, 7],
- [4, 0]],
- "coef_div_modulus" : "2",
- "operations" : ["femul"]
-}
diff --git a/src/Specific/CurveParameters/x25519_c32.json b/src/Specific/CurveParameters/x25519_c32.json
deleted file mode 100644
index 729388451..000000000
--- a/src/Specific/CurveParameters/x25519_c32.json
+++ /dev/null
@@ -1,230 +0,0 @@
-{
- "modulus" : "2^255-19",
- "base" : "25.5",
- "a24" : "121665",
- "sz" : "10",
- "bitwidth" : "32",
- "carry_chains" : "default",
- "coef_div_modulus" : "2",
- "operations" : ["femul", "feadd", "fesub", "fecarry", "fesquare", "freeze"],
- "compiler" : "gcc -march=native -mbmi2 -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes",
- "mul_header" : "(* Micro-optimized form from curve25519-donna by Adam Langley (Google) and Daniel Bernstein. See <https://github.com/agl/curve25519-donna/blob/master/LICENSE.md>. *)",
- "mul_code"
- :
- "
- output[0] = ((limb) ((s32) in2[0])) * ((s32) in[0]);
- output[1] = ((limb) ((s32) in2[0])) * ((s32) in[1]) +
- ((limb) ((s32) in2[1])) * ((s32) in[0]);
- output[2] = 2 * ((limb) ((s32) in2[1])) * ((s32) in[1]) +
- ((limb) ((s32) in2[0])) * ((s32) in[2]) +
- ((limb) ((s32) in2[2])) * ((s32) in[0]);
- output[3] = ((limb) ((s32) in2[1])) * ((s32) in[2]) +
- ((limb) ((s32) in2[2])) * ((s32) in[1]) +
- ((limb) ((s32) in2[0])) * ((s32) in[3]) +
- ((limb) ((s32) in2[3])) * ((s32) in[0]);
- output[4] = ((limb) ((s32) in2[2])) * ((s32) in[2]) +
- 2 * (((limb) ((s32) in2[1])) * ((s32) in[3]) +
- ((limb) ((s32) in2[3])) * ((s32) in[1])) +
- ((limb) ((s32) in2[0])) * ((s32) in[4]) +
- ((limb) ((s32) in2[4])) * ((s32) in[0]);
- output[5] = ((limb) ((s32) in2[2])) * ((s32) in[3]) +
- ((limb) ((s32) in2[3])) * ((s32) in[2]) +
- ((limb) ((s32) in2[1])) * ((s32) in[4]) +
- ((limb) ((s32) in2[4])) * ((s32) in[1]) +
- ((limb) ((s32) in2[0])) * ((s32) in[5]) +
- ((limb) ((s32) in2[5])) * ((s32) in[0]);
- output[6] = 2 * (((limb) ((s32) in2[3])) * ((s32) in[3]) +
- ((limb) ((s32) in2[1])) * ((s32) in[5]) +
- ((limb) ((s32) in2[5])) * ((s32) in[1])) +
- ((limb) ((s32) in2[2])) * ((s32) in[4]) +
- ((limb) ((s32) in2[4])) * ((s32) in[2]) +
- ((limb) ((s32) in2[0])) * ((s32) in[6]) +
- ((limb) ((s32) in2[6])) * ((s32) in[0]);
- output[7] = ((limb) ((s32) in2[3])) * ((s32) in[4]) +
- ((limb) ((s32) in2[4])) * ((s32) in[3]) +
- ((limb) ((s32) in2[2])) * ((s32) in[5]) +
- ((limb) ((s32) in2[5])) * ((s32) in[2]) +
- ((limb) ((s32) in2[1])) * ((s32) in[6]) +
- ((limb) ((s32) in2[6])) * ((s32) in[1]) +
- ((limb) ((s32) in2[0])) * ((s32) in[7]) +
- ((limb) ((s32) in2[7])) * ((s32) in[0]);
- output[8] = ((limb) ((s32) in2[4])) * ((s32) in[4]) +
- 2 * (((limb) ((s32) in2[3])) * ((s32) in[5]) +
- ((limb) ((s32) in2[5])) * ((s32) in[3]) +
- ((limb) ((s32) in2[1])) * ((s32) in[7]) +
- ((limb) ((s32) in2[7])) * ((s32) in[1])) +
- ((limb) ((s32) in2[2])) * ((s32) in[6]) +
- ((limb) ((s32) in2[6])) * ((s32) in[2]) +
- ((limb) ((s32) in2[0])) * ((s32) in[8]) +
- ((limb) ((s32) in2[8])) * ((s32) in[0]);
- output[9] = ((limb) ((s32) in2[4])) * ((s32) in[5]) +
- ((limb) ((s32) in2[5])) * ((s32) in[4]) +
- ((limb) ((s32) in2[3])) * ((s32) in[6]) +
- ((limb) ((s32) in2[6])) * ((s32) in[3]) +
- ((limb) ((s32) in2[2])) * ((s32) in[7]) +
- ((limb) ((s32) in2[7])) * ((s32) in[2]) +
- ((limb) ((s32) in2[1])) * ((s32) in[8]) +
- ((limb) ((s32) in2[8])) * ((s32) in[1]) +
- ((limb) ((s32) in2[0])) * ((s32) in[9]) +
- ((limb) ((s32) in2[9])) * ((s32) in[0]);
- output[10] = 2 * (((limb) ((s32) in2[5])) * ((s32) in[5]) +
- ((limb) ((s32) in2[3])) * ((s32) in[7]) +
- ((limb) ((s32) in2[7])) * ((s32) in[3]) +
- ((limb) ((s32) in2[1])) * ((s32) in[9]) +
- ((limb) ((s32) in2[9])) * ((s32) in[1])) +
- ((limb) ((s32) in2[4])) * ((s32) in[6]) +
- ((limb) ((s32) in2[6])) * ((s32) in[4]) +
- ((limb) ((s32) in2[2])) * ((s32) in[8]) +
- ((limb) ((s32) in2[8])) * ((s32) in[2]);
- output[11] = ((limb) ((s32) in2[5])) * ((s32) in[6]) +
- ((limb) ((s32) in2[6])) * ((s32) in[5]) +
- ((limb) ((s32) in2[4])) * ((s32) in[7]) +
- ((limb) ((s32) in2[7])) * ((s32) in[4]) +
- ((limb) ((s32) in2[3])) * ((s32) in[8]) +
- ((limb) ((s32) in2[8])) * ((s32) in[3]) +
- ((limb) ((s32) in2[2])) * ((s32) in[9]) +
- ((limb) ((s32) in2[9])) * ((s32) in[2]);
- output[12] = ((limb) ((s32) in2[6])) * ((s32) in[6]) +
- 2 * (((limb) ((s32) in2[5])) * ((s32) in[7]) +
- ((limb) ((s32) in2[7])) * ((s32) in[5]) +
- ((limb) ((s32) in2[3])) * ((s32) in[9]) +
- ((limb) ((s32) in2[9])) * ((s32) in[3])) +
- ((limb) ((s32) in2[4])) * ((s32) in[8]) +
- ((limb) ((s32) in2[8])) * ((s32) in[4]);
- output[13] = ((limb) ((s32) in2[6])) * ((s32) in[7]) +
- ((limb) ((s32) in2[7])) * ((s32) in[6]) +
- ((limb) ((s32) in2[5])) * ((s32) in[8]) +
- ((limb) ((s32) in2[8])) * ((s32) in[5]) +
- ((limb) ((s32) in2[4])) * ((s32) in[9]) +
- ((limb) ((s32) in2[9])) * ((s32) in[4]);
- output[14] = 2 * (((limb) ((s32) in2[7])) * ((s32) in[7]) +
- ((limb) ((s32) in2[5])) * ((s32) in[9]) +
- ((limb) ((s32) in2[9])) * ((s32) in[5])) +
- ((limb) ((s32) in2[6])) * ((s32) in[8]) +
- ((limb) ((s32) in2[8])) * ((s32) in[6]);
- output[15] = ((limb) ((s32) in2[7])) * ((s32) in[8]) +
- ((limb) ((s32) in2[8])) * ((s32) in[7]) +
- ((limb) ((s32) in2[6])) * ((s32) in[9]) +
- ((limb) ((s32) in2[9])) * ((s32) in[6]);
- output[16] = ((limb) ((s32) in2[8])) * ((s32) in[8]) +
- 2 * (((limb) ((s32) in2[7])) * ((s32) in[9]) +
- ((limb) ((s32) in2[9])) * ((s32) in[7]));
- output[17] = ((limb) ((s32) in2[8])) * ((s32) in[9]) +
- ((limb) ((s32) in2[9])) * ((s32) in[8]);
- output[18] = 2 * ((limb) ((s32) in2[9])) * ((s32) in[9]);
- output[8] += output[18] << 4;
- output[8] += output[18] << 1;
- output[8] += output[18];
- output[7] += output[17] << 4;
- output[7] += output[17] << 1;
- output[7] += output[17];
- output[6] += output[16] << 4;
- output[6] += output[16] << 1;
- output[6] += output[16];
- output[5] += output[15] << 4;
- output[5] += output[15] << 1;
- output[5] += output[15];
- output[4] += output[14] << 4;
- output[4] += output[14] << 1;
- output[4] += output[14];
- output[3] += output[13] << 4;
- output[3] += output[13] << 1;
- output[3] += output[13];
- output[2] += output[12] << 4;
- output[2] += output[12] << 1;
- output[2] += output[12];
- output[1] += output[11] << 4;
- output[1] += output[11] << 1;
- output[1] += output[11];
- output[0] += output[10] << 4;
- output[0] += output[10] << 1;
- output[0] += output[10];
-",
- "square_header" : "(* Micro-optimized form from curve25519-donna by Adam Langley (Google) and Daniel Bernstein. See <https://github.com/agl/curve25519-donna/blob/master/LICENSE.md>. *)",
- "square_code"
- :
- "
- output[0] = ((limb) ((s32) in[0])) * ((s32) in[0]);
- output[1] = 2 * ((limb) ((s32) in[0])) * ((s32) in[1]);
- output[2] = 2 * (((limb) ((s32) in[1])) * ((s32) in[1]) +
- ((limb) ((s32) in[0])) * ((s32) in[2]));
- output[3] = 2 * (((limb) ((s32) in[1])) * ((s32) in[2]) +
- ((limb) ((s32) in[0])) * ((s32) in[3]));
- output[4] = ((limb) ((s32) in[2])) * ((s32) in[2]) +
- 4 * ((limb) ((s32) in[1])) * ((s32) in[3]) +
- 2 * ((limb) ((s32) in[0])) * ((s32) in[4]);
- output[5] = 2 * (((limb) ((s32) in[2])) * ((s32) in[3]) +
- ((limb) ((s32) in[1])) * ((s32) in[4]) +
- ((limb) ((s32) in[0])) * ((s32) in[5]));
- output[6] = 2 * (((limb) ((s32) in[3])) * ((s32) in[3]) +
- ((limb) ((s32) in[2])) * ((s32) in[4]) +
- ((limb) ((s32) in[0])) * ((s32) in[6]) +
- 2 * ((limb) ((s32) in[1])) * ((s32) in[5]));
- output[7] = 2 * (((limb) ((s32) in[3])) * ((s32) in[4]) +
- ((limb) ((s32) in[2])) * ((s32) in[5]) +
- ((limb) ((s32) in[1])) * ((s32) in[6]) +
- ((limb) ((s32) in[0])) * ((s32) in[7]));
- output[8] = ((limb) ((s32) in[4])) * ((s32) in[4]) +
- 2 * (((limb) ((s32) in[2])) * ((s32) in[6]) +
- ((limb) ((s32) in[0])) * ((s32) in[8]) +
- 2 * (((limb) ((s32) in[1])) * ((s32) in[7]) +
- ((limb) ((s32) in[3])) * ((s32) in[5])));
- output[9] = 2 * (((limb) ((s32) in[4])) * ((s32) in[5]) +
- ((limb) ((s32) in[3])) * ((s32) in[6]) +
- ((limb) ((s32) in[2])) * ((s32) in[7]) +
- ((limb) ((s32) in[1])) * ((s32) in[8]) +
- ((limb) ((s32) in[0])) * ((s32) in[9]));
- output[10] = 2 * (((limb) ((s32) in[5])) * ((s32) in[5]) +
- ((limb) ((s32) in[4])) * ((s32) in[6]) +
- ((limb) ((s32) in[2])) * ((s32) in[8]) +
- 2 * (((limb) ((s32) in[3])) * ((s32) in[7]) +
- ((limb) ((s32) in[1])) * ((s32) in[9])));
- output[11] = 2 * (((limb) ((s32) in[5])) * ((s32) in[6]) +
- ((limb) ((s32) in[4])) * ((s32) in[7]) +
- ((limb) ((s32) in[3])) * ((s32) in[8]) +
- ((limb) ((s32) in[2])) * ((s32) in[9]));
- output[12] = ((limb) ((s32) in[6])) * ((s32) in[6]) +
- 2 * (((limb) ((s32) in[4])) * ((s32) in[8]) +
- 2 * (((limb) ((s32) in[5])) * ((s32) in[7]) +
- ((limb) ((s32) in[3])) * ((s32) in[9])));
- output[13] = 2 * (((limb) ((s32) in[6])) * ((s32) in[7]) +
- ((limb) ((s32) in[5])) * ((s32) in[8]) +
- ((limb) ((s32) in[4])) * ((s32) in[9]));
- output[14] = 2 * (((limb) ((s32) in[7])) * ((s32) in[7]) +
- ((limb) ((s32) in[6])) * ((s32) in[8]) +
- 2 * ((limb) ((s32) in[5])) * ((s32) in[9]));
- output[15] = 2 * (((limb) ((s32) in[7])) * ((s32) in[8]) +
- ((limb) ((s32) in[6])) * ((s32) in[9]));
- output[16] = ((limb) ((s32) in[8])) * ((s32) in[8]) +
- 4 * ((limb) ((s32) in[7])) * ((s32) in[9]);
- output[17] = 2 * ((limb) ((s32) in[8])) * ((s32) in[9]);
- output[18] = 2 * ((limb) ((s32) in[9])) * ((s32) in[9]);
- output[8] += output[18] << 4;
- output[8] += output[18] << 1;
- output[8] += output[18];
- output[7] += output[17] << 4;
- output[7] += output[17] << 1;
- output[7] += output[17];
- output[6] += output[16] << 4;
- output[6] += output[16] << 1;
- output[6] += output[16];
- output[5] += output[15] << 4;
- output[5] += output[15] << 1;
- output[5] += output[15];
- output[4] += output[14] << 4;
- output[4] += output[14] << 1;
- output[4] += output[14];
- output[3] += output[13] << 4;
- output[3] += output[13] << 1;
- output[3] += output[13];
- output[2] += output[12] << 4;
- output[2] += output[12] << 1;
- output[2] += output[12];
- output[1] += output[11] << 4;
- output[1] += output[11] << 1;
- output[1] += output[11];
- output[0] += output[10] << 4;
- output[0] += output[10] << 1;
- output[0] += output[10];
-"
-}
diff --git a/src/Specific/CurveParameters/x25519_c64.json b/src/Specific/CurveParameters/x25519_c64.json
deleted file mode 100644
index 41ef66e9f..000000000
--- a/src/Specific/CurveParameters/x25519_c64.json
+++ /dev/null
@@ -1,74 +0,0 @@
-{
- "modulus" : "2^255-19",
- "base" : "51",
- "a24" : "121665",
- "sz" : "5",
- "bitwidth" : "64",
- "carry_chains" : "default",
- "coef_div_modulus" : "2",
- "operations" : ["femul", "feadd", "fesub", "fecarry", "fesquare", "freeze", "ladderstep"],
- "extra_files" : ["X25519_C64/scalarmult.c"],
- "compiler" : "gcc -march=native -mbmi2 -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes",
- "mul_header" : "(* Micro-optimized form from curve25519-donna-c64 by Adam Langley (Google) and Daniel Bernstein. See <https://github.com/agl/curve25519-donna/blob/master/LICENSE.md>. *)",
- "mul_code"
- :
- "
- uint128_t t[5];
- limb r0,r1,r2,r3,r4,s0,s1,s2,s3,s4,c;
-
- r0 = in[0];
- r1 = in[1];
- r2 = in[2];
- r3 = in[3];
- r4 = in[4];
-
- s0 = in2[0];
- s1 = in2[1];
- s2 = in2[2];
- s3 = in2[3];
- s4 = in2[4];
-
- t[0] = ((uint128_t) r0) * s0;
- t[1] = ((uint128_t) r0) * s1 + ((uint128_t) r1) * s0;
- t[2] = ((uint128_t) r0) * s2 + ((uint128_t) r2) * s0 + ((uint128_t) r1) * s1;
- t[3] = ((uint128_t) r0) * s3 + ((uint128_t) r3) * s0 + ((uint128_t) r1) * s2 + ((uint128_t) r2) * s1;
- t[4] = ((uint128_t) r0) * s4 + ((uint128_t) r4) * s0 + ((uint128_t) r3) * s1 + ((uint128_t) r1) * s3 + ((uint128_t) r2) * s2;
-
- r4 *= 19;
- r1 *= 19;
- r2 *= 19;
- r3 *= 19;
-
- t[0] += ((uint128_t) r4) * s1 + ((uint128_t) r1) * s4 + ((uint128_t) r2) * s3 + ((uint128_t) r3) * s2;
- t[1] += ((uint128_t) r4) * s2 + ((uint128_t) r2) * s4 + ((uint128_t) r3) * s3;
- t[2] += ((uint128_t) r4) * s3 + ((uint128_t) r3) * s4;
- t[3] += ((uint128_t) r4) * s4;
-",
- "square_header" : "(* Micro-optimized form from curve25519-donna-c64 by Adam Langley (Google) and Daniel Bernstein. See <https://github.com/agl/curve25519-donna/blob/master/LICENSE.md>. *)",
- "square_code"
- :
- "
- uint128_t t[5];
- limb r0,r1,r2,r3,r4,c;
- limb d0,d1,d2,d4,d419;
-
- r0 = in[0];
- r1 = in[1];
- r2 = in[2];
- r3 = in[3];
- r4 = in[4];
-
- do {
- d0 = r0 * 2;
- d1 = r1 * 2;
- d2 = r2 * 2 * 19;
- d419 = r4 * 19;
- d4 = d419 * 2;
-
- t[0] = ((uint128_t) r0) * r0 + ((uint128_t) d4) * r1 + (((uint128_t) d2) * (r3 ));
- t[1] = ((uint128_t) d0) * r1 + ((uint128_t) d4) * r2 + (((uint128_t) r3) * (r3 * 19));
- t[2] = ((uint128_t) d0) * r2 + ((uint128_t) r1) * r1 + (((uint128_t) d4) * (r3 ));
- t[3] = ((uint128_t) d0) * r3 + ((uint128_t) d1) * r2 + (((uint128_t) r4) * (d419 ));
- t[4] = ((uint128_t) d0) * r4 + ((uint128_t) d1) * r3 + (((uint128_t) r2) * (r2 ));
-"
-}
diff --git a/src/Specific/CurveParameters/x2555_130.json b/src/Specific/CurveParameters/x2555_130.json
deleted file mode 100644
index 130a87d38..000000000
--- a/src/Specific/CurveParameters/x2555_130.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "modulus" : "2^255-5",
- "base" : "130",
- "a24" : "121665 (* XXX TODO(andreser) FIXME? Is this right for this curve? *)",
- "sz" : "3",
- "bitwidth" : "128",
- "carry_chains" : "default",
- "coef_div_modulus" : "2",
- "operations" : ["ladderstep"]
-}
diff --git a/src/Specific/Framework/ArithmeticSynthesis/Base.v b/src/Specific/Framework/ArithmeticSynthesis/Base.v
deleted file mode 100644
index 490ff35c7..000000000
--- a/src/Specific/Framework/ArithmeticSynthesis/Base.v
+++ /dev/null
@@ -1,282 +0,0 @@
-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.
-Require Import Crypto.Util.QUtil.
-Require Import Crypto.Util.Decidable.
-Require Import Crypto.Util.ZUtil.Tactics.PullPush.Modulo.
-Require Crypto.Util.Tuple.
-Require Import Crypto.Util.Tactics.CacheTerm.
-
- (* emacs for adjusting definitions *)
- (* Query replace regexp (default Definition \([a-zA-Z_0-9]+\) : \([A-Za-z0-9_]+\) := P.compute \(.*\)\.\(.*\) -> Ltac pose_\1 \1 :=\4^J cache_term_with_type_by^J \2^J ltac:(let v := P.do_compute \3 in exact v)^J \1.): *)
- (* Query replace regexp (default Definition \([a-zA-Z_0-9]+\) : \([A-Za-z0-9_]+\) := P.compute \(.*\)\.\(.*\) -> Ltac pose_\1 \1 :=\4^J cache_term_with_type_by^J \2^J ltac:(let v := P.do_compute \3 in exact v)^J \1.): *)
- (* Query replace regexp (default Definition \([a-zA-Z_0-9]+\) : \([A-Za-z0-9_ \.]*\) := P.compute \(.*\)\.\(.*\) -> Ltac pose_\1 \1 :=\4^J cache_term_with_type_by^J (\2)^J ltac:(let v := P.do_compute \3 in exact v)^J \1.): *)
- (* Query replace regexp (default Definition \([a-zA-Z_0-9]+\) := P.compute \(.*\)\.\(.*\) -> Ltac pose_\1 \1 :=\3^J let v := P.do_compute \2 in cache_term v \1.): *)
-
-Ltac pose_r bitwidth r :=
- cache_term_with_type_by
- positive
- ltac:(let v := (eval vm_compute in (Z.to_pos (2^bitwidth))) in exact v)
- r.
-
-Ltac pose_m s c m := (* modulus *)
- let v := (eval vm_compute in (Z.to_pos (s - Associational.eval c))) in
- cache_term v m.
-
-Section wt.
- Import QArith Qround.
- Local Coercion QArith_base.inject_Z : Z >-> Q.
- Local Coercion Z.of_nat : nat >-> Z.
- Local Coercion Z.pos : positive >-> Z.
- Definition wt_gen (base : Q) (i:nat) : Z := 2^Qceiling(base*i).
-End wt.
-
-Section gen.
- Context (base : Q)
- (m : positive)
- (sz : nat)
- (coef_div_modulus : nat)
- (base_pos : (1 <= base)%Q).
-
- Local Notation wt := (wt_gen base).
-
- Definition sz2' := ((sz * 2) - 1)%nat.
-
- Definition half_sz' := (sz / 2)%nat.
-
- Definition m_enc'
- := Positional.encode (modulo_cps:=@modulo_cps) (div_cps:=@div_cps) (n:=sz) wt (Z.pos m).
-
- Lemma sz2'_nonzero
- (sz_nonzero : sz <> 0%nat)
- : sz2' <> 0%nat.
- 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 QArith_base.Qeq Z.of_nat] in *.
- Lemma wt_gen0_1 : wt 0 = 1.
- Proof using Type.
- Q_cbv; simpl.
- autorewrite with zsimplify_const; reflexivity.
- Qed.
-
- Lemma wt_gen_nonzero : forall i, wt i <> 0.
- Proof using base_pos.
- eapply pow_ceil_mul_nat_nonzero; [ omega | ].
- destruct base; Q_cbv; lia.
- Qed.
-
- Lemma wt_gen_nonneg : forall i, 0 <= wt i.
- Proof using Type. apply pow_ceil_mul_nat_nonneg; omega. Qed.
-
- Lemma wt_gen_pos : forall i, wt i > 0.
- 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 using base_pos.
- apply pow_ceil_mul_nat_multiples; destruct base; Q_cbv; lia.
- Qed.
-
- Section divides.
- Lemma wt_gen_divides
- : forall i, wt (S i) / wt i > 0.
- Proof using base_pos.
- apply pow_ceil_mul_nat_divide; [ omega | ].
- destruct base; Q_cbv; lia.
- Qed.
-
- Lemma wt_gen_divides'
- : forall i, wt (S i) / wt i <> 0.
- 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 using base_pos.
- intro; etransitivity.
- eapply pow_ceil_mul_nat_divide_upperbound; [ omega | ].
- 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 using base_pos. intros i ?; apply wt_gen_divides'; assumption. Qed.
-
- Lemma wt_gen_divides_chains
- carry_chains
- : List.fold_right
- and
- True
- (List.map
- (fun carry_chain
- => forall i (H:In i carry_chain), wt (S i) / wt i <> 0)
- carry_chains).
- Proof using base_pos.
- induction carry_chains as [|carry_chain carry_chains IHcarry_chains];
- constructor; eauto using wt_gen_divides_chain.
- Qed.
- End divides.
-
- Definition coef'
- := (fix addm (acc: Z^sz) (ctr : nat) : Z^sz :=
- match ctr with
- | O => acc
- | S n => addm (Positional.add_cps wt acc m_enc' id) n
- end) (Positional.zeros sz) coef_div_modulus.
-
- Lemma coef_mod'
- : mod_eq m (Positional.eval (n:=sz) wt coef') 0.
- 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)
- by (subst v; autorewrite with push_basesystem_eval; reflexivity);
- clear Hv.
- revert dependent v.
- induction coef_div_modulus as [|n IHn]; clear coef_div_modulus;
- intros; [ assumption | ].
- rewrite IHn; [ reflexivity | ].
- pose proof wt_gen0_1.
- pose proof wt_gen_nonzero.
- pose proof div_mod.
- pose proof wt_gen_divides'.
- destruct (Nat.eq_dec sz 0).
- { subst; reflexivity. }
- { repeat autounfold; autorewrite with uncps push_id push_basesystem_eval.
- rewrite Positional.eval_encode by (intros; autorewrite with uncps; unfold id; auto).
- cbv [mod_eq] in *.
- push_Zmod; rewrite Hv'; pull_Zmod.
- reflexivity. }
- Qed.
-End gen.
-
-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 :=
- let v := (eval vm_compute in (sz2' sz)) in
- cache_term v sz2.
-
-Ltac pose_half_sz sz half_sz :=
- let v := (eval compute in (half_sz' sz)) in
- cache_term v half_sz.
-
-Ltac pose_s_nonzero s s_nonzero :=
- cache_proof_with_type_by
- (s <> 0)
- ltac:(vm_decide_no_check)
- s_nonzero.
-
-Ltac pose_sz_le_log2_m sz m sz_le_log2_m :=
- cache_proof_with_type_by
- (Z.of_nat sz <= Z.log2_up (Z.pos 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 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 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 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' base m sz coef_div_modulus base_pos))
- coef_mod.
-Ltac pose_sz_nonzero sz sz_nonzero :=
- cache_proof_with_type_by
- (sz <> 0%nat)
- ltac:(vm_decide_no_check)
- sz_nonzero.
-
-Ltac pose_wt_nonzero wt wt_nonzero :=
- cache_proof_with_type_by
- (forall i, wt i <> 0)
- ltac:(apply wt_gen_nonzero; vm_decide_no_check)
- wt_nonzero.
-Ltac pose_wt_nonneg wt wt_nonneg :=
- cache_proof_with_type_by
- (forall i, 0 <= wt i)
- ltac:(apply wt_gen_nonneg; vm_decide_no_check)
- wt_nonneg.
-Ltac pose_wt_divides wt wt_divides :=
- cache_proof_with_type_by
- (forall i, wt (S i) / wt i > 0)
- ltac:(apply wt_gen_divides; vm_decide_no_check)
- wt_divides.
-Ltac pose_wt_divides' wt wt_divides wt_divides' :=
- cache_proof_with_type_by
- (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
- and
- True
- (List.map
- (fun carry_chain
- => forall i (H:In i carry_chain), wt (S i) / wt i <> 0)
- carry_chains))) in
- cache_proof_with_type_by
- T
- ltac:(refine (@wt_gen_divides_chains _ _ carry_chains); vm_decide_no_check)
- wt_divides_chains.
-
-Ltac pose_wt_pos wt wt_pos :=
- cache_proof_with_type_by
- (forall i, wt i > 0)
- ltac:(apply wt_gen_pos; vm_decide_no_check)
- wt_pos.
-
-Ltac pose_wt_multiples wt wt_multiples :=
- cache_proof_with_type_by
- (forall i, wt (S i) mod (wt i) = 0)
- ltac:(apply wt_gen_multiples; vm_decide_no_check)
- wt_multiples.
-
-Ltac pose_c_small c wt sz c_small :=
- cache_proof_with_type_by
- (0 < Associational.eval c < wt sz)
- ltac:(vm_decide_no_check)
- c_small.
-
-Ltac pose_base_le_bitwidth base bitwidth base_le_bitwidth := (* this is purely a sanity check *)
- cache_proof_with_type_by
- (base <= inject_Z bitwidth)%Q
- ltac:(cbv -[Z.le]; vm_decide_no_check)
- base_le_bitwidth.
-
-
-Ltac pose_m_enc_bounded sz bitwidth m_enc m_enc_bounded :=
- cache_proof_with_type_by
- (Tuple.map (n:=sz) (BinInt.Z.land (Z.ones bitwidth)) m_enc = m_enc)
- ltac:(vm_compute; reflexivity)
- m_enc_bounded.
diff --git a/src/Specific/Framework/ArithmeticSynthesis/BasePackage.v b/src/Specific/Framework/ArithmeticSynthesis/BasePackage.v
deleted file mode 100644
index 18b0bcda0..000000000
--- a/src/Specific/Framework/ArithmeticSynthesis/BasePackage.v
+++ /dev/null
@@ -1,247 +0,0 @@
-(* This file is autogenerated from Base.v by remake_packages.py *)
-Require Import Crypto.Specific.Framework.CurveParametersPackage.
-Require Export Crypto.Specific.Framework.ArithmeticSynthesis.Base.
-Require Import Crypto.Specific.Framework.Packages.
-Require Import Crypto.Util.TagList.
-
-Module TAG.
- Inductive tags := r | m | wt | sz2 | half_sz | 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 | base_le_bitwidth | m_enc_bounded.
-End TAG.
-
-Ltac add_r pkg :=
- let bitwidth := Tag.get pkg TAG.bitwidth in
- let r := fresh "r" in
- let r := pose_r bitwidth r in
- Tag.update pkg TAG.r r.
-
-Ltac add_m pkg :=
- let s := Tag.get pkg TAG.s in
- let c := Tag.get pkg TAG.c in
- let m := fresh "m" in
- let m := pose_m s c m in
- Tag.update pkg TAG.m m.
-
-Ltac add_wt pkg :=
- let base := Tag.get pkg TAG.base in
- let wt := fresh "wt" in
- let wt := pose_wt base wt in
- Tag.update pkg TAG.wt wt.
-
-Ltac add_sz2 pkg :=
- let sz := Tag.get pkg TAG.sz in
- let sz2 := fresh "sz2" in
- let sz2 := pose_sz2 sz sz2 in
- Tag.update pkg TAG.sz2 sz2.
-
-Ltac add_half_sz pkg :=
- let sz := Tag.get pkg TAG.sz in
- let half_sz := fresh "half_sz" in
- let half_sz := pose_half_sz sz half_sz in
- Tag.update pkg TAG.half_sz half_sz.
-
-Ltac add_s_nonzero pkg :=
- let s := Tag.get pkg TAG.s in
- let s_nonzero := fresh "s_nonzero" in
- let s_nonzero := pose_s_nonzero s s_nonzero in
- Tag.update pkg TAG.s_nonzero s_nonzero.
-
-Ltac add_sz_le_log2_m pkg :=
- let sz := Tag.get pkg TAG.sz in
- let m := Tag.get pkg TAG.m in
- let sz_le_log2_m := fresh "sz_le_log2_m" in
- 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
- let c := Tag.get pkg TAG.c in
- let m_correct := fresh "m_correct" in
- let m_correct := pose_m_correct m s c m_correct in
- Tag.update pkg TAG.m_correct m_correct.
-
-Ltac add_m_enc pkg :=
- 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 base m sz m_enc in
- Tag.update pkg TAG.m_enc m_enc.
-
-Ltac add_coef pkg :=
- 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 base m sz coef_div_modulus coef in
- Tag.update pkg TAG.coef coef.
-
-Ltac add_coef_mod pkg :=
- let wt := Tag.get pkg TAG.wt 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 base_pos := Tag.get pkg TAG.base_pos in
- let coef_mod := fresh "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 :=
- let sz := Tag.get pkg TAG.sz in
- let sz_nonzero := fresh "sz_nonzero" in
- let sz_nonzero := pose_sz_nonzero sz sz_nonzero in
- Tag.update pkg TAG.sz_nonzero sz_nonzero.
-
-Ltac add_wt_nonzero pkg :=
- let wt := Tag.get pkg TAG.wt in
- let wt_nonzero := fresh "wt_nonzero" in
- let wt_nonzero := pose_wt_nonzero wt wt_nonzero in
- Tag.update pkg TAG.wt_nonzero wt_nonzero.
-
-Ltac add_wt_nonneg pkg :=
- let wt := Tag.get pkg TAG.wt in
- let wt_nonneg := fresh "wt_nonneg" in
- let wt_nonneg := pose_wt_nonneg wt wt_nonneg in
- Tag.update pkg TAG.wt_nonneg wt_nonneg.
-
-Ltac add_wt_divides pkg :=
- let wt := Tag.get pkg TAG.wt in
- let wt_divides := fresh "wt_divides" in
- let wt_divides := pose_wt_divides wt wt_divides in
- Tag.update pkg TAG.wt_divides wt_divides.
-
-Ltac add_wt_divides' pkg :=
- let wt := Tag.get pkg TAG.wt in
- let wt_divides := Tag.get pkg TAG.wt_divides in
- let wt_divides' := fresh "wt_divides'" in
- let wt_divides' := pose_wt_divides' wt wt_divides wt_divides' in
- Tag.update pkg TAG.wt_divides' wt_divides'.
-
-Ltac add_wt_divides_chains pkg :=
- let wt := Tag.get pkg TAG.wt in
- let carry_chains := Tag.get pkg TAG.carry_chains in
- let wt_divides_chains := fresh "wt_divides_chains" in
- let wt_divides_chains := pose_wt_divides_chains wt carry_chains wt_divides_chains in
- Tag.update pkg TAG.wt_divides_chains wt_divides_chains.
-
-Ltac add_wt_pos pkg :=
- let wt := Tag.get pkg TAG.wt in
- let wt_pos := fresh "wt_pos" in
- let wt_pos := pose_wt_pos wt wt_pos in
- Tag.update pkg TAG.wt_pos wt_pos.
-
-Ltac add_wt_multiples pkg :=
- let wt := Tag.get pkg TAG.wt in
- let wt_multiples := fresh "wt_multiples" in
- let wt_multiples := pose_wt_multiples wt wt_multiples in
- Tag.update pkg TAG.wt_multiples wt_multiples.
-
-Ltac add_c_small pkg :=
- let c := Tag.get pkg TAG.c in
- let wt := Tag.get pkg TAG.wt in
- let sz := Tag.get pkg TAG.sz in
- let c_small := fresh "c_small" in
- let c_small := pose_c_small c wt sz c_small in
- Tag.update pkg TAG.c_small c_small.
-
-Ltac add_base_le_bitwidth pkg :=
- let base := Tag.get pkg TAG.base in
- let bitwidth := Tag.get pkg TAG.bitwidth in
- let base_le_bitwidth := fresh "base_le_bitwidth" in
- let base_le_bitwidth := pose_base_le_bitwidth base bitwidth base_le_bitwidth in
- Tag.update pkg TAG.base_le_bitwidth base_le_bitwidth.
-
-Ltac add_m_enc_bounded pkg :=
- let sz := Tag.get pkg TAG.sz in
- let bitwidth := Tag.get pkg TAG.bitwidth in
- let m_enc := Tag.get pkg TAG.m_enc in
- let m_enc_bounded := fresh "m_enc_bounded" in
- let m_enc_bounded := pose_m_enc_bounded sz bitwidth m_enc m_enc_bounded in
- Tag.update pkg TAG.m_enc_bounded m_enc_bounded.
-
-Ltac add_Base_package pkg :=
- let pkg := add_r pkg in
- let pkg := add_m pkg in
- let pkg := add_wt pkg in
- let pkg := add_sz2 pkg in
- let pkg := add_half_sz 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
- let pkg := add_coef_mod pkg in
- let pkg := add_sz_nonzero pkg in
- let pkg := add_wt_nonzero pkg in
- let pkg := add_wt_nonneg pkg in
- let pkg := add_wt_divides pkg in
- let pkg := add_wt_divides' pkg in
- let pkg := add_wt_divides_chains pkg in
- let pkg := add_wt_pos pkg in
- let pkg := add_wt_multiples pkg in
- let pkg := add_c_small pkg in
- let pkg := add_base_le_bitwidth pkg in
- let pkg := add_m_enc_bounded pkg in
- Tag.strip_subst_local pkg.
-
-
-Module MakeBasePackage (PKG : PrePackage).
- Module Import MakeBasePackageInternal := MakePackageBase PKG.
-
- Ltac get_r _ := get TAG.r.
- Notation r := (ltac:(let v := get_r () in exact v)) (only parsing).
- Ltac get_m _ := get TAG.m.
- Notation m := (ltac:(let v := get_m () in exact v)) (only parsing).
- Ltac get_wt _ := get TAG.wt.
- Notation wt := (ltac:(let v := get_wt () in exact v)) (only parsing).
- Ltac get_sz2 _ := get TAG.sz2.
- Notation sz2 := (ltac:(let v := get_sz2 () in exact v)) (only parsing).
- Ltac get_half_sz _ := get TAG.half_sz.
- Notation half_sz := (ltac:(let v := get_half_sz () in exact v)) (only parsing).
- Ltac get_s_nonzero _ := get TAG.s_nonzero.
- 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.
- Notation m_enc := (ltac:(let v := get_m_enc () in exact v)) (only parsing).
- Ltac get_coef _ := get TAG.coef.
- Notation coef := (ltac:(let v := get_coef () in exact v)) (only parsing).
- Ltac get_coef_mod _ := get TAG.coef_mod.
- Notation coef_mod := (ltac:(let v := get_coef_mod () in exact v)) (only parsing).
- Ltac get_sz_nonzero _ := get TAG.sz_nonzero.
- Notation sz_nonzero := (ltac:(let v := get_sz_nonzero () in exact v)) (only parsing).
- Ltac get_wt_nonzero _ := get TAG.wt_nonzero.
- Notation wt_nonzero := (ltac:(let v := get_wt_nonzero () in exact v)) (only parsing).
- Ltac get_wt_nonneg _ := get TAG.wt_nonneg.
- Notation wt_nonneg := (ltac:(let v := get_wt_nonneg () in exact v)) (only parsing).
- Ltac get_wt_divides _ := get TAG.wt_divides.
- Notation wt_divides := (ltac:(let v := get_wt_divides () in exact v)) (only parsing).
- Ltac get_wt_divides' _ := get TAG.wt_divides'.
- Notation wt_divides' := (ltac:(let v := get_wt_divides' () in exact v)) (only parsing).
- Ltac get_wt_divides_chains _ := get TAG.wt_divides_chains.
- Notation wt_divides_chains := (ltac:(let v := get_wt_divides_chains () in exact v)) (only parsing).
- Ltac get_wt_pos _ := get TAG.wt_pos.
- Notation wt_pos := (ltac:(let v := get_wt_pos () in exact v)) (only parsing).
- Ltac get_wt_multiples _ := get TAG.wt_multiples.
- Notation wt_multiples := (ltac:(let v := get_wt_multiples () in exact v)) (only parsing).
- Ltac get_c_small _ := get TAG.c_small.
- Notation c_small := (ltac:(let v := get_c_small () in exact v)) (only parsing).
- Ltac get_base_le_bitwidth _ := get TAG.base_le_bitwidth.
- Notation base_le_bitwidth := (ltac:(let v := get_base_le_bitwidth () in exact v)) (only parsing).
- Ltac get_m_enc_bounded _ := get TAG.m_enc_bounded.
- Notation m_enc_bounded := (ltac:(let v := get_m_enc_bounded () in exact v)) (only parsing).
-End MakeBasePackage.
diff --git a/src/Specific/Framework/ArithmeticSynthesis/Defaults.v b/src/Specific/Framework/ArithmeticSynthesis/Defaults.v
deleted file mode 100644
index 1d3c3c89c..000000000
--- a/src/Specific/Framework/ArithmeticSynthesis/Defaults.v
+++ /dev/null
@@ -1,405 +0,0 @@
-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.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Crypto.Specific.Framework.CurveParameters.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.HelperTactics.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.Base.
-Require Import Crypto.Util.Decidable.
-Require Import Crypto.Util.LetIn.
-Require Import Crypto.Util.Tactics.BreakMatch.
-Require Import Crypto.Util.Tactics.DestructHead.
-Require Import Crypto.Util.Tactics.PoseTermWithName.
-Require Import Crypto.Util.Tactics.CacheTerm.
-Require Crypto.Util.Tuple.
-
-Local Notation tuple := Tuple.tuple.
-Local Open Scope list_scope.
-Local Open Scope Z_scope.
-Local Infix "^" := tuple : type_scope.
-
-Module Export Exports.
- Export Coq.setoid_ring.ZArithRing.
-End Exports.
-
-Local Ltac solve_constant_local_sig :=
- idtac;
- lazymatch goal with
- | [ |- { c : Z^?sz | Positional.Fdecode (m:=?M) ?wt c = ?v } ]
- => (exists (Positional.encode (n:=sz) (modulo_cps:=@modulo_cps) (div_cps:=@div_cps) wt (F.to_Z (m:=M) v)));
- lazymatch goal with
- | [ sz_nonzero : sz <> 0%nat, base_pos : (1 <= _)%Q |- _ ]
- => clear -base_pos sz_nonzero
- end
- end;
- abstract (
- setoid_rewrite Positional.Fdecode_Fencode_id;
- [ reflexivity
- | auto using wt_gen0_1, wt_gen_nonzero, wt_gen_divides', div_mod;
- intros; autorewrite with uncps push_id; auto using div_mod.. ]
- ).
-
-Section gen.
- Context (m : positive)
- (base : Q)
- (sz : nat)
- (s : Z)
- (c : list limb)
- (carry_chains : list (list nat))
- (coef : Z^sz)
- (mul_code : option (Z^sz -> Z^sz -> Z^sz))
- (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 base).
- Local Notation sz2 := (sz2' 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
- : match mul_code with
- | None => True
- | Some v
- => forall a b,
- v a b
- = Positional.mul_cps (n:=sz) (m:=sz2) wt a b
- (fun ab => Positional.reduce_cps (n:=sz) (m:=sz2) wt s c ab id)
- end)
- (square_code_correct
- : match square_code with
- | None => True
- | Some v
- => forall a,
- v a
- = Positional.mul_cps (n:=sz) (m:=sz2) wt a a
- (fun ab => Positional.reduce_cps (n:=sz) (m:=sz2) wt s c ab id)
- end).
-
- Context (coef_mod : mod_eq m (Positional.eval wt coef) 0)
- (m_correct : Z.pos m = s - Associational.eval c).
-
-
- (* Performs a full carry loop (as specified by carry_chain) *)
- Definition carry_sig'
- : { carry : (Z^sz -> Z^sz)%type
- | forall a : Z^sz,
- let eval := Positional.Fdecode (m := m) wt in
- eval (carry a) = eval a }.
- Proof.
- let a := fresh "a" in
- eexists; cbv beta zeta; intros a.
- pose proof (wt_gen0_1 base).
- pose proof wt_nonzero; pose proof div_mod.
- pose proof (wt_gen_divides_chains base base_pos carry_chains).
- pose proof wt_divides'.
- let x := constr:(Positional.chained_carries_reduce (n:=sz) (modulo_cps:=@modulo_cps) (div_cps:=@div_cps) wt s c a carry_chains) in
- presolve_op_F constr:(wt) x;
- [ autorewrite with pattern_runtime; reflexivity | ].
- reflexivity.
- Defined.
-
- Definition constant_sig' v
- : { c : Z^sz | Positional.Fdecode (m:=m) wt c = v}.
- Proof. solve_constant_local_sig. Defined.
-
- Definition zero_sig'
- : { zero : Z^sz | Positional.Fdecode (m:=m) wt zero = 0%F}
- := Eval hnf in constant_sig' _.
-
- Definition one_sig'
- : { one : Z^sz | Positional.Fdecode (m:=m) wt one = 1%F}
- := Eval hnf in constant_sig' _.
-
- Definition add_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 }.
- Proof.
- eexists; cbv beta zeta; intros a b.
- pose proof wt_nonzero.
- 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;
- [ autorewrite with pattern_runtime; reflexivity | ].
- reflexivity.
- Defined.
-
- Definition sub_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 }.
- Proof.
- let a := fresh "a" in
- let b := fresh "b" in
- eexists; cbv beta zeta; intros a b.
- pose proof wt_nonzero.
- 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;
- [ autorewrite with pattern_runtime; reflexivity | ].
- reflexivity.
- Defined.
-
- Definition opp_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) }.
- Proof.
- eexists; cbv beta zeta; intros a.
- pose proof wt_nonzero.
- 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;
- [ autorewrite with pattern_runtime; reflexivity | ].
- reflexivity.
- Defined.
-
- Definition mul_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 }.
- Proof.
- eexists; cbv beta zeta; intros a b.
- pose proof wt_nonzero.
- 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
- (fun ab => Positional.reduce_cps (n:=sz) (m:=sz2) wt s c ab id)) in
- presolve_op_F constr:(wt) x; [ | reflexivity ].
- let rhs := match goal with |- _ = ?rhs => rhs end in
- transitivity (match mul_code with
- | None => rhs
- | Some v => v a b
- end);
- [ reflexivity | ].
- destruct mul_code; try reflexivity.
- transitivity (Positional.mul_cps (n:=sz) (m:=sz2) wt a b
- (fun ab => Positional.reduce_cps (n:=sz) (m:=sz2) wt s c ab id)); [ | reflexivity ].
- auto.
- Defined.
-
- Definition square_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 }.
- Proof.
- eexists; cbv beta zeta; intros a.
- pose proof wt_nonzero.
- 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
- (fun ab => Positional.reduce_cps (n:=sz) (m:=sz2) wt s c ab id)) in
- presolve_op_F constr:(wt) x; [ | reflexivity ].
- let rhs := match goal with |- _ = ?rhs => rhs end in
- transitivity (match square_code with
- | None => rhs
- | Some v => v a
- end);
- [ reflexivity | ].
- destruct square_code; try reflexivity.
- transitivity (Positional.mul_cps (n:=sz) (m:=sz2) wt a a
- (fun ab => Positional.reduce_cps (n:=sz) (m:=sz2) wt s c ab id)); [ | reflexivity ].
- auto.
- Defined.
-
- Let ring_pkg : { T : _ & T }.
- Proof.
- eexists.
- refine (fun zero_sig one_sig add_sig sub_sig mul_sig opp_sig
- => Ring.ring_by_isomorphism
- (F := F m)
- (H := Z^sz)
- (phi := Positional.Fencode wt)
- (phi' := Positional.Fdecode wt)
- (zero := proj1_sig zero_sig)
- (one := proj1_sig one_sig)
- (opp := proj1_sig opp_sig)
- (add := proj1_sig add_sig)
- (sub := proj1_sig sub_sig)
- (mul := proj1_sig mul_sig)
- (phi'_zero := _)
- (phi'_one := _)
- (phi'_opp := _)
- (Positional.Fdecode_Fencode_id
- (sz_nonzero := sz_nonzero)
- (div_mod := div_mod)
- wt (wt_gen0_1 base) wt_nonzero wt_divides')
- (Positional.eq_Feq_iff wt)
- _ _ _);
- lazymatch goal with
- | [ |- context[@proj1_sig ?A ?P ?x] ]
- => pattern (@proj1_sig A P x);
- exact (@proj2_sig A P x)
- | _ => eauto using @Core.modulo_id, @Core.div_id with nocore
- end.
- Defined.
-
- Definition ring' zero_sig one_sig add_sig sub_sig mul_sig opp_sig
- := Eval cbv [ring_pkg projT2] in
- projT2 ring_pkg zero_sig one_sig add_sig sub_sig mul_sig opp_sig.
-End gen.
-
-Ltac internal_solve_code_correct P_tac :=
- hnf;
- lazymatch goal with
- | [ |- True ] => constructor
- | _
- => cbv [Positional.mul_cps Positional.reduce_cps];
- intros;
- autorewrite with pattern_runtime;
- repeat autounfold;
- autorewrite with pattern_runtime;
- basesystem_partial_evaluation_RHS;
- P_tac ();
- break_match; cbv [Let_In runtime_mul runtime_add]; repeat apply (f_equal2 pair); rewrite ?Z.shiftl_mul_pow2 by omega; ring
- end.
-
-Ltac pose_mul_code_correct P_extra_prove_mul_eq sz sz2 wt s c mul_code mul_code_correct :=
- cache_proof_with_type_by
- (match mul_code with
- | None => True
- | Some v
- => forall a b,
- v a b
- = Positional.mul_cps (n:=sz) (m:=sz2) wt a b
- (fun ab => Positional.reduce_cps (n:=sz) (m:=sz2) wt s c ab id)
- end)
- ltac:(internal_solve_code_correct P_extra_prove_mul_eq)
- mul_code_correct.
-
-Ltac pose_square_code_correct P_extra_prove_square_eq sz sz2 wt s c square_code square_code_correct :=
- cache_proof_with_type_by
- (match square_code with
- | None => True
- | Some v
- => forall a,
- v a
- = Positional.mul_cps (n:=sz) (m:=sz2) wt a a
- (fun ab => Positional.reduce_cps (n:=sz) (m:=sz2) wt s c ab id)
- end)
- ltac:(internal_solve_code_correct P_extra_prove_square_eq)
- square_code_correct.
-
-Ltac cache_sig_with_type_by_existing_sig ty existing_sig id :=
- cache_sig_with_type_by_existing_sig_helper
- 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 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 base sz s c carry_chains)
- carry_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 base sz sz_nonzero base_pos)
- zero_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 base sz sz_nonzero base_pos)
- one_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 base sz)
- add_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 base sz coef)
- sub_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 base sz coef)
- opp_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 base sz s c mul_code sz_nonzero s_nonzero base_pos mul_code_correct)
- mul_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 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 :=
- cache_term
- (Ring.ring_by_isomorphism
- (F := F m)
- (H := Z^sz)
- (phi := Positional.Fencode wt)
- (phi' := Positional.Fdecode wt)
- (zero := proj1_sig zero_sig)
- (one := proj1_sig one_sig)
- (opp := proj1_sig opp_sig)
- (add := proj1_sig add_sig)
- (sub := proj1_sig sub_sig)
- (mul := proj1_sig mul_sig)
- (phi'_zero := proj2_sig zero_sig)
- (phi'_one := proj2_sig one_sig)
- (phi'_opp := proj2_sig opp_sig)
- (Positional.Fdecode_Fencode_id
- (sz_nonzero := sz_nonzero)
- (div_mod := div_mod)
- (modulo_cps_id:=@Core.modulo_id)
- (div_cps_id:=@Core.div_id)
- wt eq_refl wt_nonzero wt_divides')
- (Positional.eq_Feq_iff wt)
- (proj2_sig add_sig)
- (proj2_sig sub_sig)
- (proj2_sig mul_sig)
- )
- ring.
-
-(*
-Eval cbv [proj1_sig add_sig] in (proj1_sig add_sig).
-Eval cbv [proj1_sig sub_sig] in (proj1_sig sub_sig).
-Eval cbv [proj1_sig opp_sig] in (proj1_sig opp_sig).
-Eval cbv [proj1_sig mul_sig] in (proj1_sig mul_sig).
-Eval cbv [proj1_sig carry_sig] in (proj1_sig carry_sig).
- *)
diff --git a/src/Specific/Framework/ArithmeticSynthesis/DefaultsPackage.v b/src/Specific/Framework/ArithmeticSynthesis/DefaultsPackage.v
deleted file mode 100644
index 52ed4ad33..000000000
--- a/src/Specific/Framework/ArithmeticSynthesis/DefaultsPackage.v
+++ /dev/null
@@ -1,208 +0,0 @@
-(* This file is autogenerated from Defaults.v by remake_packages.py *)
-Require Import Crypto.Specific.Framework.CurveParametersPackage.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.BasePackage.
-Require Export Crypto.Specific.Framework.ArithmeticSynthesis.Defaults.
-Require Import Crypto.Specific.Framework.Packages.
-Require Import Crypto.Util.TagList.
-
-Module TAG.
- Inductive tags := mul_code_correct | square_code_correct | carry_sig | zero_sig | one_sig | add_sig | sub_sig | opp_sig | mul_sig | square_sig | ring.
-End TAG.
-
-Ltac add_mul_code_correct pkg P_extra_prove_mul_eq :=
- Tag.update_by_tac_if_not_exists
- pkg
- TAG.mul_code_correct
- ltac:(fun _ => let sz := Tag.get pkg TAG.sz in
- let sz2 := Tag.get pkg TAG.sz2 in
- let wt := Tag.get pkg TAG.wt 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 mul_code_correct := fresh "mul_code_correct" in
- let mul_code_correct := pose_mul_code_correct P_extra_prove_mul_eq sz sz2 wt s c mul_code mul_code_correct in
- constr:(mul_code_correct)).
-Ltac add_square_code_correct pkg P_extra_prove_square_eq :=
- Tag.update_by_tac_if_not_exists
- pkg
- TAG.square_code_correct
- ltac:(fun _ => let sz := Tag.get pkg TAG.sz in
- let sz2 := Tag.get pkg TAG.sz2 in
- let wt := Tag.get pkg TAG.wt 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 square_code_correct := fresh "square_code_correct" in
- let square_code_correct := pose_square_code_correct P_extra_prove_square_eq sz sz2 wt s c square_code square_code_correct in
- constr:(square_code_correct)).
-Ltac add_carry_sig pkg :=
- Tag.update_by_tac_if_not_exists
- pkg
- TAG.carry_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 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 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 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 sz_nonzero := Tag.get pkg TAG.sz_nonzero in
- let base_pos := Tag.get pkg TAG.base_pos in
- let zero_sig := fresh "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 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 sz_nonzero := Tag.get pkg TAG.sz_nonzero in
- let base_pos := Tag.get pkg TAG.base_pos in
- let one_sig := fresh "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_add_sig pkg :=
- Tag.update_by_tac_if_not_exists
- pkg
- TAG.add_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 add_sig := fresh "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 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 coef := Tag.get pkg TAG.coef in
- let sub_sig := fresh "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 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 coef := Tag.get pkg TAG.coef in
- let opp_sig := fresh "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 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 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 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 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 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 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
- pkg
- TAG.ring
- ltac:(fun _ => let sz := Tag.get pkg TAG.sz in
- let m := Tag.get pkg TAG.m in
- let wt := Tag.get pkg TAG.wt in
- let wt_divides' := Tag.get pkg TAG.wt_divides' in
- let sz_nonzero := Tag.get pkg TAG.sz_nonzero in
- let wt_nonzero := Tag.get pkg TAG.wt_nonzero in
- let zero_sig := Tag.get pkg TAG.zero_sig in
- let one_sig := Tag.get pkg TAG.one_sig in
- let opp_sig := Tag.get pkg TAG.opp_sig in
- let add_sig := Tag.get pkg TAG.add_sig in
- let sub_sig := Tag.get pkg TAG.sub_sig in
- let mul_sig := Tag.get pkg TAG.mul_sig in
- let ring := fresh "ring" in
- let ring := pose_ring sz m wt wt_divides' sz_nonzero wt_nonzero zero_sig one_sig opp_sig add_sig sub_sig mul_sig ring in
- constr:(ring)).
-Ltac add_Defaults_package pkg P_extra_prove_mul_eq P_extra_prove_square_eq :=
- let pkg := add_mul_code_correct pkg P_extra_prove_mul_eq in
- let pkg := add_square_code_correct pkg P_extra_prove_square_eq in
- let pkg := add_carry_sig pkg in
- let pkg := add_zero_sig pkg in
- let pkg := add_one_sig pkg in
- let pkg := add_add_sig pkg in
- let pkg := add_sub_sig pkg in
- let pkg := add_opp_sig pkg in
- let pkg := add_mul_sig pkg in
- let pkg := add_square_sig pkg in
- let pkg := add_ring pkg in
- Tag.strip_subst_local pkg.
-
-
-Module MakeDefaultsPackage (PKG : PrePackage).
- Module Import MakeDefaultsPackageInternal := MakePackageBase PKG.
-
- Ltac get_mul_code_correct _ := get TAG.mul_code_correct.
- Notation mul_code_correct := (ltac:(let v := get_mul_code_correct () in exact v)) (only parsing).
- Ltac get_square_code_correct _ := get TAG.square_code_correct.
- Notation square_code_correct := (ltac:(let v := get_square_code_correct () in exact v)) (only parsing).
- Ltac get_carry_sig _ := get TAG.carry_sig.
- Notation carry_sig := (ltac:(let v := get_carry_sig () in exact v)) (only parsing).
- Ltac get_zero_sig _ := get TAG.zero_sig.
- Notation zero_sig := (ltac:(let v := get_zero_sig () in exact v)) (only parsing).
- Ltac get_one_sig _ := get TAG.one_sig.
- Notation one_sig := (ltac:(let v := get_one_sig () in exact v)) (only parsing).
- Ltac get_add_sig _ := get TAG.add_sig.
- Notation add_sig := (ltac:(let v := get_add_sig () in exact v)) (only parsing).
- Ltac get_sub_sig _ := get TAG.sub_sig.
- Notation sub_sig := (ltac:(let v := get_sub_sig () in exact v)) (only parsing).
- Ltac get_opp_sig _ := get TAG.opp_sig.
- Notation opp_sig := (ltac:(let v := get_opp_sig () in exact v)) (only parsing).
- Ltac get_mul_sig _ := get TAG.mul_sig.
- Notation mul_sig := (ltac:(let v := get_mul_sig () in exact v)) (only parsing).
- Ltac get_square_sig _ := get TAG.square_sig.
- Notation square_sig := (ltac:(let v := get_square_sig () in exact v)) (only parsing).
- Ltac get_ring _ := get TAG.ring.
- Notation ring := (ltac:(let v := get_ring () in exact v)) (only parsing).
-End MakeDefaultsPackage.
diff --git a/src/Specific/Framework/ArithmeticSynthesis/Freeze.v b/src/Specific/Framework/ArithmeticSynthesis/Freeze.v
deleted file mode 100644
index 8c291bc1c..000000000
--- a/src/Specific/Framework/ArithmeticSynthesis/Freeze.v
+++ /dev/null
@@ -1,80 +0,0 @@
-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.
-Require Import Crypto.Arithmetic.Saturated.FreezeUnfolder.
-Require Import Crypto.Arithmetic.Core. Import B.
-Require Import Crypto.Arithmetic.Saturated.Freeze.
-Require Crypto.Specific.Framework.CurveParameters.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.Base.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.HelperTactics.
-Require Import Crypto.Util.Decidable.
-Require Import Crypto.Util.LetIn Crypto.Util.ZUtil.Definitions.
-Require Crypto.Util.Tuple.
-Require Import Crypto.Util.Tactics.CacheTerm.
-
-Module Export Exports.
- Hint Opaque freeze : uncps.
- Hint Rewrite freeze_id : uncps.
-End Exports.
-
-Local Open Scope Z_scope.
-Local Infix "^" := Tuple.tuple : type_scope.
-
-Section gen.
- Context (m : positive)
- (base : Q)
- (sz : nat)
- (c : list limb)
- (bitwidth : Z)
- (m_enc : Z^sz)
- (base_pos : (1 <= base)%Q)
- (sz_nonzero : sz <> 0%nat).
-
- Local Notation wt := (wt_gen base).
- Local Notation sz2 := (sz2' 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)
- (m_enc_correct : Positional.eval wt m_enc = Z.pos m)
- (m_correct_wt : Z.pos m = wt sz - Associational.eval c).
-
- Definition freeze_sig'
- : { freeze : (Z^sz -> Z^sz)%type |
- forall a : Z^sz,
- (0 <= Positional.eval wt a < 2 * Z.pos m)->
- let eval := Positional.Fdecode (m := m) wt in
- eval (freeze a) = eval a }.
- Proof.
- eexists; cbv beta zeta; (intros a ?).
- 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.
- 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 | ].
- reflexivity.
- Defined.
-End gen.
-
-Ltac pose_m_correct_wt m c sz wt m_correct_wt :=
- cache_proof_with_type_by
- (Z.pos m = wt sz - Associational.eval c)
- ltac:(vm_decide_no_check)
- m_correct_wt.
-
-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 |
- forall a : Z^sz,
- (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 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
deleted file mode 100644
index 18fef6cc9..000000000
--- a/src/Specific/Framework/ArithmeticSynthesis/FreezePackage.v
+++ /dev/null
@@ -1,60 +0,0 @@
-(* This file is autogenerated from Freeze.v by remake_packages.py *)
-Require Import Crypto.Specific.Framework.CurveParametersPackage.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.BasePackage.
-Require Export Crypto.Specific.Framework.ArithmeticSynthesis.Freeze.
-Require Import Crypto.Specific.Framework.Packages.
-Require Import Crypto.Util.TagList.
-
-Module TAG.
- Inductive tags := m_correct_wt | freeze_sig.
-End TAG.
-
-Ltac add_m_correct_wt pkg :=
- if_freeze
- pkg
- ltac:(fun _ => Tag.update_by_tac_if_not_exists
- pkg
- TAG.m_correct_wt
- ltac:(fun _ => let m := Tag.get pkg TAG.m in
- let c := Tag.get pkg TAG.c in
- let sz := Tag.get pkg TAG.sz in
- let wt := Tag.get pkg TAG.wt in
- let m_correct_wt := fresh "m_correct_wt" in
- let m_correct_wt := pose_m_correct_wt m c sz wt m_correct_wt in
- constr:(m_correct_wt)))
- ltac:(fun _ => pkg)
- ().
-Ltac add_freeze_sig pkg :=
- if_freeze
- pkg
- ltac:(fun _ => Tag.update_by_tac_if_not_exists
- 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 freeze_sig := fresh "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:(fun _ => pkg)
- ().
-Ltac add_Freeze_package pkg :=
- let pkg := add_m_correct_wt pkg in
- let pkg := add_freeze_sig pkg in
- Tag.strip_subst_local pkg.
-
-
-Module MakeFreezePackage (PKG : PrePackage).
- Module Import MakeFreezePackageInternal := MakePackageBase PKG.
-
- Ltac get_m_correct_wt _ := get TAG.m_correct_wt.
- Notation m_correct_wt := (ltac:(let v := get_m_correct_wt () in exact v)) (only parsing).
- Ltac get_freeze_sig _ := get TAG.freeze_sig.
- Notation freeze_sig := (ltac:(let v := get_freeze_sig () in exact v)) (only parsing).
-End MakeFreezePackage.
diff --git a/src/Specific/Framework/ArithmeticSynthesis/HelperTactics.v b/src/Specific/Framework/ArithmeticSynthesis/HelperTactics.v
deleted file mode 100644
index 0a2d5dafc..000000000
--- a/src/Specific/Framework/ArithmeticSynthesis/HelperTactics.v
+++ /dev/null
@@ -1,121 +0,0 @@
-Require Import Coq.ZArith.ZArith Coq.ZArith.BinIntDef.
-Require Import Crypto.Arithmetic.Core. Import B.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Crypto.Arithmetic.Saturated.Wrappers.
-Require Import Crypto.Util.ZUtil.ModInv.
-Require Import Crypto.Util.Tactics.CacheTerm.
-Require Import Crypto.Util.Decidable.
-Require Crypto.Util.Tuple.
-
-Local Notation tuple := Tuple.tuple.
-Local Open Scope list_scope.
-Local Open Scope Z_scope.
-Local Infix "^" := tuple : type_scope.
-
-Ltac if_cond_else cond tac default id :=
- lazymatch (eval compute in cond) with
- | true => tac id
- | false => default
- end.
-Ltac if_cond cond tac id := if_cond_else cond tac (0%Z) id.
-
-Ltac pose_modinv modinv_fuel a modulus modinv :=
- let v0 := constr:(Option.invert_Some (Z.modinv_fueled modinv_fuel a modulus)) in
- let v := (eval vm_compute in v0) in
- let v := lazymatch type of v with (* if the computation failed, display a reasonable error message about the attempted computation *)
- | Z => v
- | _ => (eval cbv -[Option.invert_Some Z.modinv_fueled] in v0)
- end in
- let v := (eval vm_compute in (v <: Z)) in
- cache_term v modinv.
-Ltac pose_correct_if_Z v mkeqn id :=
- let T := type of v in
- let eqn :=
- lazymatch (eval vm_compute in T) with
- | Z => mkeqn ()
- | ?T
- => let v := (eval vm_compute in v) in
- lazymatch T with
- | option _
- => lazymatch v with
- | None => constr:(v = v)
- end
- | unit
- => lazymatch v with
- | tt => constr:(tt = tt)
- end
- end
- end in
- cache_proof_with_type_by
- eqn
- ltac:(vm_compute; reflexivity)
- id.
-
-Ltac pose_proof_tuple ls :=
- let t := type of ls in
- lazymatch ls with
- | prod ?x ?y => pose_proof_tuple x; pose_proof_tuple y
- | conj ?x ?y => pose_proof_tuple x; pose_proof_tuple y
- | _
- => lazymatch eval hnf in t with
- | prod ?x ?y => pose_proof_tuple (fst ls); pose_proof_tuple (snd ls)
- | and ?x ?y => pose_proof_tuple (proj1 ls); pose_proof_tuple (proj2 ls)
- | _ => pose proof ls
- end
- end.
-
-Ltac make_chained_carries_cps sz wt s c a carry_chains :=
- (eval cbv [Positional.chained_carries_reduce_cps Positional.chained_carries_reduce_cps_step carry_chains] in
- (Positional.chained_carries_reduce_cps sz wt s c a carry_chains id)).
-
-Ltac specialize_existing_sig existing_sig :=
- lazymatch type of existing_sig with
- | ?T -> _
- => let H := fresh "existing_sig_subproof" in
- let H := cache_proof_with_type_by
- T
- ltac:(vm_decide_no_check)
- H in
- specialize_existing_sig (existing_sig H)
- | _ => existing_sig
- end.
-
-Ltac cache_sig_with_type_by_existing_sig_helper cbv_tac ty existing_sig id :=
- let existing_sig := specialize_existing_sig existing_sig in
- cache_sig_with_type_by
- ty
- ltac:(eexists; intros; etransitivity;
- [ apply f_equal
- | solve [ eapply (proj2_sig existing_sig); eassumption ] ];
- do 2 (cbv [proj1_sig
- Positional.chained_carries_reduce_cps Positional.chained_carries_reduce_cps_step
- Positional.mul_cps Positional.reduce_cps];
- cbv_tac ());
- repeat autounfold;
- let next_step _ := basesystem_partial_evaluation_RHS_gen Wrappers.basesystem_partial_evaluation_unfolder in
- lazymatch goal with
- | [ |- _ = match ?code with
- | None => _
- | _ => _
- end ]
- => let c := (eval hnf in code) in
- change code with c;
- cbv beta iota;
- lazymatch c with
- | None => next_step ()
- | _ => idtac
- end
- | _ => next_step ()
- end;
- do_replace_match_with_destructuring_match_in_goal;
- reflexivity)
- id.
-
-Ltac solve_constant_sig :=
- idtac;
- lazymatch goal with
- | [ |- { c : Z^?sz | Positional.Fdecode (m:=?M) ?wt c = ?v } ]
- => let t := (eval vm_compute in
- (Positional.encode (n:=sz) (modulo_cps:=@modulo_cps) (div_cps:=@div_cps) wt (F.to_Z (m:=M) v))) in
- (exists t; vm_decide)
- end.
diff --git a/src/Specific/Framework/ArithmeticSynthesis/Karatsuba.v b/src/Specific/Framework/ArithmeticSynthesis/Karatsuba.v
deleted file mode 100644
index 58f5279ab..000000000
--- a/src/Specific/Framework/ArithmeticSynthesis/Karatsuba.v
+++ /dev/null
@@ -1,102 +0,0 @@
-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.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Crypto.Specific.Framework.CurveParameters.
-Require Import Crypto.Util.Decidable.
-Require Import Crypto.Util.LetIn.
-Require Import Crypto.Arithmetic.Karatsuba.
-Require Import Crypto.Util.Tactics.BreakMatch.
-Require Crypto.Util.Tuple.
-Require Import Crypto.Util.IdfunWithAlt.
-Require Import Crypto.Util.Tactics.VM.
-Require Import Crypto.Util.QUtil.
-Require Import Crypto.Util.ZUtil.ModInv.
-
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.SquareFromMul.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.Base.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.HelperTactics.
-Require Import Crypto.Util.Tactics.PoseTermWithName.
-Require Import Crypto.Util.Tactics.CacheTerm.
-
-Local Open Scope Z_scope.
-Local Infix "^" := Tuple.tuple : type_scope.
-
-(** XXX TODO(jadep) FIXME: Should we sanity-check that we have 2^2k - 2^k - 1 / the right form of prime? *)
-Ltac internal_pose_sqrt_s s sqrt_s :=
- let v := (eval vm_compute in (Z.log2 s / 2)) in
- cache_term (2^v) sqrt_s.
-
-Section gen.
- Context (m : positive)
- (base : Q)
- (sz : nat)
- (s : Z)
- (c : list limb)
- (half_sz : nat)
- (sqrt_s : Z)
- (base_pos : (1 <= base)%Q)
- (sz_nonzero : sz <> 0%nat)
- (half_sz_nonzero : half_sz <> 0%nat)
- (s_nonzero : s <> 0%Z)
- (m_correct : Z.pos m = s - Associational.eval c)
- (sqrt_s_nonzero : sqrt_s <> 0)
- (sqrt_s_mod_m : sqrt_s ^ 2 mod Z.pos m = (sqrt_s + 1) mod Z.pos m).
-
- Local Notation wt := (wt_gen base).
- Local Notation wt_divides' := (wt_gen_divides' base base_pos).
- Local Notation wt_nonzero := (wt_gen_nonzero base base_pos).
-
- Definition goldilocks_mul_sig'
- : { mul : (Z^sz -> Z^sz -> Z^sz)%type
- | forall a b : Z^sz,
- mul a b = goldilocks_mul_cps (n:=half_sz) (n2:=sz) wt sqrt_s a b (fun ab => Positional.reduce_cps (n:=sz) wt s c ab id) }.
- Proof.
- eexists; cbv beta zeta; intros.
- cbv [goldilocks_mul_cps].
- autorewrite with pattern_runtime.
- reflexivity.
- Defined.
-
- Definition mul_sig'
- : { mul : (Z^sz -> Z^sz -> Z^sz)%type
- | forall a b : Z^sz,
- let eval := Positional.Fdecode (m := m) wt in
- Positional.Fdecode (m := m) wt (mul a b) = (eval a * eval b)%F }.
- Proof.
- eexists; cbv beta zeta; intros a b.
- pose proof wt_nonzero.
- pose proof (wt_gen0_1 base).
- let x := constr:(
- goldilocks_mul_cps (n:=half_sz) (n2:=sz) wt sqrt_s a b (fun ab => Positional.reduce_cps (n:=sz) wt s c ab id)) in
- presolve_op_F constr:(wt) x;
- [ cbv [goldilocks_mul_cps];
- autorewrite with pattern_runtime;
- reflexivity
- | ].
- reflexivity.
- Defined.
-End gen.
-
-Ltac pose_half_sz_nonzero half_sz half_sz_nonzero :=
- cache_proof_with_type_by
- (half_sz <> 0%nat)
- ltac:(cbv; congruence)
- half_sz_nonzero.
-
-Ltac pose_mul_sig wt m base sz s c half_sz mul_sig :=
- let sqrt_s := fresh "sqrt_s" in
- let sqrt_s := internal_pose_sqrt_s s sqrt_s in
- cache_sig_with_type_by_existing_sig_helper
- ltac:(fun _ => cbv [mul_sig'])
- { mul : (Z^sz -> Z^sz -> Z^sz)%type
- | forall a b : Z^sz,
- let eval := Positional.Fdecode (m := m) wt in
- Positional.Fdecode (m := m) wt (mul a b) = (eval a * eval b)%F }
- (mul_sig' m base sz s c half_sz sqrt_s)
- mul_sig.
-
-Ltac pose_square_sig sz m wt mul_sig square_sig :=
- SquareFromMul.pose_square_sig sz m wt mul_sig square_sig.
diff --git a/src/Specific/Framework/ArithmeticSynthesis/KaratsubaPackage.v b/src/Specific/Framework/ArithmeticSynthesis/KaratsubaPackage.v
deleted file mode 100644
index 197c9431b..000000000
--- a/src/Specific/Framework/ArithmeticSynthesis/KaratsubaPackage.v
+++ /dev/null
@@ -1,61 +0,0 @@
-(* This file is autogenerated from Karatsuba.v by remake_packages.py *)
-Require Import Crypto.Specific.Framework.CurveParametersPackage.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.BasePackage.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.DefaultsPackage.
-Require Export Crypto.Specific.Framework.ArithmeticSynthesis.Karatsuba.
-Require Import Crypto.Specific.Framework.Packages.
-Require Import Crypto.Util.TagList.
-
-Module TAG.
- Inductive tags := half_sz_nonzero.
-End TAG.
-
-Ltac add_half_sz_nonzero pkg :=
- if_goldilocks
- pkg
- ltac:(fun _ => let half_sz := Tag.get pkg TAG.half_sz in
- let half_sz_nonzero := fresh "half_sz_nonzero" in
- let half_sz_nonzero := pose_half_sz_nonzero half_sz half_sz_nonzero in
- Tag.update pkg TAG.half_sz_nonzero half_sz_nonzero)
- ltac:(fun _ => pkg)
- ().
-Ltac add_mul_sig pkg :=
- if_goldilocks
- pkg
- 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 s := Tag.get pkg TAG.s in
- let c := Tag.get pkg TAG.c in
- let half_sz := Tag.get pkg TAG.half_sz in
- let mul_sig := fresh "mul_sig" in
- let mul_sig := pose_mul_sig wt m base sz s c half_sz mul_sig in
- Tag.update pkg TAG.mul_sig mul_sig)
- ltac:(fun _ => pkg)
- ().
-Ltac add_square_sig pkg :=
- if_goldilocks
- pkg
- ltac:(fun _ => let sz := Tag.get pkg TAG.sz in
- let m := Tag.get pkg TAG.m in
- let wt := Tag.get pkg TAG.wt in
- let mul_sig := Tag.get pkg TAG.mul_sig in
- let square_sig := fresh "square_sig" in
- let square_sig := pose_square_sig sz m wt mul_sig square_sig in
- Tag.update pkg TAG.square_sig square_sig)
- ltac:(fun _ => pkg)
- ().
-Ltac add_Karatsuba_package pkg :=
- let pkg := add_half_sz_nonzero pkg in
- let pkg := add_mul_sig pkg in
- let pkg := add_square_sig pkg in
- Tag.strip_subst_local pkg.
-
-
-Module MakeKaratsubaPackage (PKG : PrePackage).
- Module Import MakeKaratsubaPackageInternal := MakePackageBase PKG.
-
- Ltac get_half_sz_nonzero _ := get TAG.half_sz_nonzero.
- Notation half_sz_nonzero := (ltac:(let v := get_half_sz_nonzero () in exact v)) (only parsing).
-End MakeKaratsubaPackage.
diff --git a/src/Specific/Framework/ArithmeticSynthesis/Ladderstep.v b/src/Specific/Framework/ArithmeticSynthesis/Ladderstep.v
deleted file mode 100644
index 2f2ef07a5..000000000
--- a/src/Specific/Framework/ArithmeticSynthesis/Ladderstep.v
+++ /dev/null
@@ -1,87 +0,0 @@
-Require Import Coq.ZArith.BinIntDef.
-Require Import Crypto.Arithmetic.Core. Import B.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Curves.Montgomery.XZ.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.HelperTactics.
-Require Import Crypto.Util.Tuple.
-Require Import Crypto.Util.LetIn.
-Require Import Crypto.Util.Notations.
-Require Import Crypto.Util.Tactics.PoseTermWithName.
-Require Import Crypto.Util.Tactics.CacheTerm.
-Require Import Crypto.Util.Option.
-
-Local Notation tuple := Tuple.tuple.
-Local Open Scope list_scope.
-Local Open Scope Z_scope.
-Local Infix "^" := tuple : type_scope.
-
-(** TODO(jadep,andreser): Move to NewBaseSystemTest? *)
-Definition FMxzladderstep {m} := @M.donnaladderstep (F m) F.add F.sub F.mul.
-
-Section with_notations.
- Context sz (add sub mul : tuple Z sz -> tuple Z sz -> tuple Z sz)
- (square carry : tuple Z sz -> tuple Z sz).
- Local Infix "+" := add.
- Local Notation "a * b" := (carry (mul a b)).
- Local Notation "x ^ 2" := (carry (square x)).
- Local Infix "-" := sub.
- Definition Mxzladderstep a24 x1 Q Q'
- := match Q, Q' with
- | (x, z), (x', z') =>
- dlet origx := x in
- dlet x := x + z in
- dlet z := origx - z in
- dlet origx' := x' in
- dlet x' := x' + z' in
- dlet z' := origx' - z' in
- dlet xx' := x' * z in
- dlet zz' := x * z' in
- dlet origx' := xx' in
- dlet xx' := xx' + zz' in
- dlet zz' := origx' - zz' in
- dlet x3 := xx'^2 in
- dlet zzz' := zz'^2 in
- dlet z3 := zzz' * x1 in
- dlet xx := x^2 in
- dlet zz := z^2 in
- dlet x2 := xx * zz in
- dlet zz := xx - zz in
- dlet zzz := zz * a24 in
- dlet zzz := zzz + xx in
- dlet z2 := zz * zzz in
- ((x2, z2), (x3, z3))%core
- end.
-End with_notations.
-
-Ltac pose_a24' a24 a24' :=
- let a24 := (eval vm_compute in (invert_Some a24)) in
- cache_term_with_type_by
- Z
- ltac:(exact a24)
- a24'.
-
-Ltac pose_a24_sig sz m wt a24' a24_sig :=
- cache_term_with_type_by
- { a24t : Z^sz | Positional.Fdecode (m:=m) wt a24t = F.of_Z m a24' }
- solve_constant_sig
- a24_sig.
-
-Ltac pose_Mxzladderstep_sig sz wt m add_sig sub_sig mul_sig square_sig carry_sig Mxzladderstep_sig :=
- cache_term_with_type_by
- { xzladderstep : tuple Z sz -> tuple Z sz -> tuple Z sz * tuple Z sz -> tuple Z sz * tuple Z sz -> tuple Z sz * tuple Z sz * (tuple Z sz * tuple Z sz)
- | forall a24 x1 Q Q', let eval := B.Positional.Fdecode wt in Tuple.map (n:=2) (Tuple.map (n:=2) eval) (xzladderstep a24 x1 Q Q') = FMxzladderstep (m:=m) (eval a24) (eval x1) (Tuple.map (n:=2) eval Q) (Tuple.map (n:=2) eval Q') }
- ltac:((exists (Mxzladderstep sz (proj1_sig add_sig) (proj1_sig sub_sig) (proj1_sig mul_sig) (proj1_sig square_sig) (proj1_sig carry_sig)));
- let a24 := fresh "a24" in
- let x1 := fresh "x1" in
- let Q := fresh "Q" in
- let Q' := fresh "Q'" in
- let eval := fresh "eval" in
- intros a24 x1 Q Q' eval;
- cbv [Mxzladderstep FMxzladderstep M.donnaladderstep];
- destruct Q, Q'; cbv [map map' fst snd Let_In eval];
- repeat match goal with
- | [ |- context[@proj1_sig ?a ?b ?s] ]
- => rewrite !(@proj2_sig a b s)
- end;
- reflexivity)
- Mxzladderstep_sig.
diff --git a/src/Specific/Framework/ArithmeticSynthesis/LadderstepPackage.v b/src/Specific/Framework/ArithmeticSynthesis/LadderstepPackage.v
deleted file mode 100644
index 4108c8352..000000000
--- a/src/Specific/Framework/ArithmeticSynthesis/LadderstepPackage.v
+++ /dev/null
@@ -1,75 +0,0 @@
-(* This file is autogenerated from Ladderstep.v by remake_packages.py *)
-Require Import Crypto.Specific.Framework.CurveParametersPackage.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.BasePackage.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.DefaultsPackage.
-Require Export Crypto.Specific.Framework.ArithmeticSynthesis.Ladderstep.
-Require Import Crypto.Specific.Framework.Packages.
-Require Import Crypto.Util.TagList.
-
-Module TAG.
- Inductive tags := a24' | a24_sig | Mxzladderstep_sig.
-End TAG.
-
-Ltac add_a24' pkg :=
- if_ladderstep
- pkg
- ltac:(fun _ => Tag.update_by_tac_if_not_exists
- pkg
- TAG.a24'
- ltac:(fun _ => let a24 := Tag.get pkg TAG.a24 in
- let a24' := fresh "a24'" in
- let a24' := pose_a24' a24 a24' in
- constr:(a24')))
- ltac:(fun _ => pkg)
- ().
-Ltac add_a24_sig pkg :=
- if_ladderstep
- pkg
- ltac:(fun _ => Tag.update_by_tac_if_not_exists
- pkg
- TAG.a24_sig
- ltac:(fun _ => let sz := Tag.get pkg TAG.sz in
- let m := Tag.get pkg TAG.m in
- let wt := Tag.get pkg TAG.wt in
- let a24' := Tag.get pkg TAG.a24' in
- let a24_sig := fresh "a24_sig" in
- let a24_sig := pose_a24_sig sz m wt a24' a24_sig in
- constr:(a24_sig)))
- ltac:(fun _ => pkg)
- ().
-Ltac add_Mxzladderstep_sig pkg :=
- if_ladderstep
- pkg
- ltac:(fun _ => Tag.update_by_tac_if_not_exists
- pkg
- TAG.Mxzladderstep_sig
- ltac:(fun _ => 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 add_sig := Tag.get pkg TAG.add_sig in
- let sub_sig := Tag.get pkg TAG.sub_sig in
- let mul_sig := Tag.get pkg TAG.mul_sig in
- let square_sig := Tag.get pkg TAG.square_sig in
- let carry_sig := Tag.get pkg TAG.carry_sig in
- let Mxzladderstep_sig := fresh "Mxzladderstep_sig" in
- let Mxzladderstep_sig := pose_Mxzladderstep_sig sz wt m add_sig sub_sig mul_sig square_sig carry_sig Mxzladderstep_sig in
- constr:(Mxzladderstep_sig)))
- ltac:(fun _ => pkg)
- ().
-Ltac add_Ladderstep_package pkg :=
- let pkg := add_a24' pkg in
- let pkg := add_a24_sig pkg in
- let pkg := add_Mxzladderstep_sig pkg in
- Tag.strip_subst_local pkg.
-
-
-Module MakeLadderstepPackage (PKG : PrePackage).
- Module Import MakeLadderstepPackageInternal := MakePackageBase PKG.
-
- Ltac get_a24' _ := get TAG.a24'.
- Notation a24' := (ltac:(let v := get_a24' () in exact v)) (only parsing).
- Ltac get_a24_sig _ := get TAG.a24_sig.
- Notation a24_sig := (ltac:(let v := get_a24_sig () in exact v)) (only parsing).
- Ltac get_Mxzladderstep_sig _ := get TAG.Mxzladderstep_sig.
- Notation Mxzladderstep_sig := (ltac:(let v := get_Mxzladderstep_sig () in exact v)) (only parsing).
-End MakeLadderstepPackage.
diff --git a/src/Specific/Framework/ArithmeticSynthesis/Montgomery.v b/src/Specific/Framework/ArithmeticSynthesis/Montgomery.v
deleted file mode 100644
index ba3340f32..000000000
--- a/src/Specific/Framework/ArithmeticSynthesis/Montgomery.v
+++ /dev/null
@@ -1,550 +0,0 @@
-Require Import Coq.micromega.Lia.
-Require Import Crypto.Arithmetic.MontgomeryReduction.WordByWord.Definition.
-Require Import Crypto.Arithmetic.MontgomeryReduction.WordByWord.Proofs.
-Require Import Crypto.Arithmetic.Core. Import B.
-Require Crypto.Arithmetic.Saturated.MontgomeryAPI.
-Require Import Crypto.Arithmetic.Saturated.UniformWeight.
-Require Import Crypto.Util.Sigma.Lift.
-Require Import Coq.ZArith.BinInt.
-Require Import Coq.PArith.BinPos.
-Require Import Crypto.Util.LetIn.
-Require Import Crypto.Util.ZUtil.ModInv.
-Require Import Crypto.Util.ZUtil.Tactics.PullPush.Modulo.
-Require Import Crypto.Util.Tactics.DestructHead.
-Require Import Crypto.Util.Tactics.BreakMatch.
-Require Import Crypto.Util.Decidable.
-Require Import Crypto.Arithmetic.Saturated.UniformWeightInstances.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.HelperTactics.
-Require Import Crypto.Util.Tactics.CacheTerm.
-
-Local Open Scope Z_scope.
-Local Infix "^" := Tuple.tuple : type_scope.
-
-Local Definition sig_by_eq {A P} (x : { a : A | P a }) (a : A) (H : a = proj1_sig x)
- : { a : A | P a }.
-Proof.
- exists a; subst; exact (proj2_sig x).
-Defined.
-
-Section with_args.
- Context (wt : nat -> Z)
- (r : positive)
- (sz : nat)
- (m : positive)
- (m_enc : Z^sz)
- (r' : Z)
- (r'_correct : ((Z.pos r * r') mod (Z.pos m) = 1)%Z)
- (m' : Z)
- (m'_correct : ((Z.pos m * m') mod (Z.pos r) = (-1) mod Z.pos r)%Z)
- (m_enc_correct_montgomery : Z.pos m = MontgomeryAPI.eval (n:=sz) (Z.pos r) m_enc)
- (r'_pow_correct : ((r' ^ Z.of_nat sz * Z.pos r ^ Z.of_nat sz) mod MontgomeryAPI.eval (n:=sz) (Z.pos r) m_enc = 1)%Z)
- (* computable *)
- (r_big : Z.pos r > 1)
- (m_big : 1 < Z.pos m)
- (m_enc_small : small (Z.pos r) m_enc)
- (map_m_enc : Tuple.map (Z.land (Z.pos r - 1)) m_enc = m_enc).
-
- Local Ltac t_fin :=
- repeat match goal with
- | _ => assumption
- | [ |- ?x = ?x ] => reflexivity
- | [ |- and _ _ ] => split
- | [ |- (0 <= MontgomeryAPI.eval (Z.pos r) _)%Z ] => apply MontgomeryAPI.eval_small
- | _ => rewrite <- !m_enc_correct_montgomery
- | _ => rewrite !r'_correct
- | _ => rewrite !Z.mod_1_l by assumption; reflexivity
- | _ => rewrite !(Z.mul_comm m' (Z.pos m))
- | _ => lia
- end.
-
-
- Local Definition mul'_gen
- : { f:Z^sz -> Z^sz -> Z^sz
- | forall (A B : Z^sz),
- small (Z.pos r) A -> small (Z.pos r) B ->
- let eval := MontgomeryAPI.eval (Z.pos r) in
- (small (Z.pos r) (f A B)
- /\ (eval B < eval m_enc -> 0 <= eval (f A B) < eval m_enc)
- /\ (eval (f A B) mod Z.pos m
- = (eval A * eval B * r'^(Z.of_nat sz)) mod Z.pos m))%Z
- }.
- Proof.
- exists (fun A B => redc (r:=r)(R_numlimbs:=sz) m_enc A B m').
- abstract (
- intros;
- split; [ | split ];
- [ apply small_redc with (ri:=r') | apply redc_bound_N with (ri:=r') | rewrite !m_enc_correct_montgomery; apply redc_mod_N ];
- t_fin
- ).
- Defined.
-
- Import ModularArithmetic.
-
- Definition montgomery_to_F_gen (v : Z) : F m
- := (F.of_Z m v * F.of_Z m (r'^Z.of_nat sz)%Z)%F.
-
- Local Definition mul_ext_gen
- : { f:Z^sz -> Z^sz -> Z^sz
- | let eval := MontgomeryAPI.eval (Z.pos r) in
- (forall (A : Z^sz) (_ : small (Z.pos r) A)
- (B : Z^sz) (_ : small (Z.pos r) B),
- montgomery_to_F_gen (eval (f A B))
- = (montgomery_to_F_gen (eval A) * montgomery_to_F_gen (eval B))%F)
- /\ (forall (A : Z^sz) (_ : small (Z.pos r) A)
- (B : Z^sz) (_ : small (Z.pos r) B),
- (eval B < eval m_enc -> 0 <= eval (f A B) < eval m_enc)%Z) }.
- Proof.
- exists (proj1_sig mul'_gen).
- abstract (
- split; intros A Asm B Bsm;
- pose proof (proj2_sig mul'_gen A B Asm Bsm) as H;
- cbv zeta in *;
- try solve [ destruct_head'_and; assumption ];
- rewrite ModularArithmeticTheorems.F.eq_of_Z_iff in H;
- unfold montgomery_to_F_gen;
- destruct H as [H1 [H2 H3]];
- rewrite H3;
- rewrite <- !ModularArithmeticTheorems.F.of_Z_mul;
- f_equal; nia
- ).
- Defined.
-
- Local Definition add_ext_gen
- : { f:Z^sz -> Z^sz -> Z^sz
- | let eval := MontgomeryAPI.eval (Z.pos r) in
- ((forall (A : Z^sz) (_ : small (Z.pos r) A)
- (B : Z^sz) (_ : small (Z.pos r) B),
- (eval A < eval m_enc
- -> eval B < eval m_enc
- -> montgomery_to_F_gen (eval (f A B))
- = (montgomery_to_F_gen (eval A) + montgomery_to_F_gen (eval B))%F))
- /\ (forall (A : Z^sz) (_ : small (Z.pos r) A)
- (B : Z^sz) (_ : small (Z.pos r) B),
- (eval A < eval m_enc
- -> eval B < eval m_enc
- -> 0 <= eval (f A B) < eval m_enc)))%Z }.
- Proof.
- generalize m_big.
- exists (fun A B => add (r:=r)(R_numlimbs:=sz) m_enc A B).
- abstract (
- split; intros;
- unfold montgomery_to_F_gen; rewrite <- ?ModularArithmeticTheorems.F.of_Z_mul, <- ?ModularArithmeticTheorems.F.of_Z_add;
- rewrite <- ?Z.mul_add_distr_r;
- [ rewrite <- ModularArithmeticTheorems.F.eq_of_Z_iff, m_enc_correct_montgomery; push_Zmod; rewrite eval_add_mod_N; pull_Zmod
- | apply add_bound ];
- t_fin
- ).
- Defined.
-
- Local Definition sub_ext_gen
- : { f:Z^sz -> Z^sz -> Z^sz
- | let eval := MontgomeryAPI.eval (Z.pos r) in
- ((forall (A : Z^sz) (_ : small (Z.pos r) A)
- (B : Z^sz) (_ : small (Z.pos r) B),
- (eval A < eval m_enc
- -> eval B < eval m_enc
- -> montgomery_to_F_gen (eval (f A B))
- = (montgomery_to_F_gen (eval A) - montgomery_to_F_gen (eval B))%F))
- /\ (forall (A : Z^sz) (_ : small (Z.pos r) A)
- (B : Z^sz) (_ : small (Z.pos r) B),
- (eval A < eval m_enc
- -> eval B < eval m_enc
- -> 0 <= eval (f A B) < eval m_enc)))%Z }.
- Proof.
- exists (fun A B => sub (r:=r) (R_numlimbs:=sz) m_enc A B).
- abstract (
- split; intros;
- unfold montgomery_to_F_gen; rewrite <- ?ModularArithmeticTheorems.F.of_Z_mul, <- ?ModularArithmeticTheorems.F.of_Z_sub;
- rewrite <- ?Z.mul_sub_distr_r;
- [ rewrite <- ModularArithmeticTheorems.F.eq_of_Z_iff, m_enc_correct_montgomery; push_Zmod; rewrite eval_sub_mod_N; pull_Zmod
- | apply sub_bound ];
- t_fin
- ).
- Defined.
-
- Local Definition opp_ext_gen
- : { f:Z^sz -> Z^sz
- | let eval := MontgomeryAPI.eval (Z.pos r) in
- ((forall (A : Z^sz) (_ : small (Z.pos r) A),
- (eval A < eval m_enc
- -> montgomery_to_F_gen (eval (f A))
- = (F.opp (montgomery_to_F_gen (eval A)))%F))
- /\ (forall (A : Z^sz) (_ : small (Z.pos r) A),
- (eval A < eval m_enc
- -> 0 <= eval (f A) < eval m_enc)))%Z }.
- Proof.
- exists (fun A => opp (r:=r) (R_numlimbs:=sz) m_enc A).
- abstract (
- split; intros;
- unfold montgomery_to_F_gen; rewrite <- ?ModularArithmeticTheorems.F.of_Z_mul, <- ?F_of_Z_opp;
- rewrite <- ?Z.mul_opp_l;
- [ rewrite <- ModularArithmeticTheorems.F.eq_of_Z_iff, m_enc_correct_montgomery; push_Zmod; rewrite eval_opp_mod_N; pull_Zmod
- | apply opp_bound ];
- t_fin
- ).
- Defined.
-
- (* This is kind-of stupid, but we add it for consistency *)
- Local Definition carry_ext_gen
- : { f:Z^sz -> Z^sz
- | let eval := MontgomeryAPI.eval (Z.pos r) in
- ((forall (A : Z^sz) (_ : small (Z.pos r) A),
- (eval A < eval m_enc
- -> montgomery_to_F_gen (eval (f A))
- = montgomery_to_F_gen (eval A))))
- /\ (forall (A : Z^sz) (_ : small (Z.pos r) A),
- (eval A < eval m_enc
- -> 0 <= eval (f A) < eval m_enc))%Z }.
- Proof.
- exists (fun A => A).
- abstract (
- split; eauto; split; auto;
- apply MontgomeryAPI.eval_small; auto; lia
- ).
- Defined.
-
- Local Definition nonzero_ext_gen
- : { f:Z^sz -> Z
- | let eval := MontgomeryAPI.eval (Z.pos r) in
- forall (A : Z^sz) (_ : small (Z.pos r) A),
- (eval A < eval m_enc
- -> f A = 0 <-> (montgomery_to_F_gen (eval A) = F.of_Z m 0))%Z }.
- Proof.
- generalize m_big;
- exists (fun A => nonzero (R_numlimbs:=sz) A).
- abstract (
- intros eval A H **; rewrite (@eval_nonzero r) by (eassumption || reflexivity);
- subst eval;
- unfold montgomery_to_F_gen, uweight in *; rewrite <- ?ModularArithmeticTheorems.F.of_Z_mul;
- rewrite <- ModularArithmeticTheorems.F.eq_of_Z_iff, m_enc_correct_montgomery;
- let H := fresh in
- split; intro H;
- [ rewrite H; autorewrite with zsimplify_const; reflexivity
- | cut ((MontgomeryAPI.eval (Z.pos r) A * (r' ^ Z.of_nat sz * Z.pos r ^ Z.of_nat sz)) mod MontgomeryAPI.eval (n:=sz) (Z.pos r) m_enc = 0)%Z;
- [ rewrite Z.mul_mod, r'_pow_correct; autorewrite with zsimplify_const; pull_Zmod; [ | t_fin ];
- rewrite Z.mod_small; [ trivial | split; try assumption; apply MontgomeryAPI.eval_small; try assumption; lia ]
- | rewrite Z.mul_assoc, Z.mul_mod, H by t_fin; autorewrite with zsimplify_const; reflexivity ] ]
- ).
- Defined.
-End with_args.
-
-Local Definition for_assumptions
- := (mul_ext_gen, add_ext_gen, sub_ext_gen, opp_ext_gen, nonzero_ext_gen).
-
-Print Assumptions for_assumptions.
-
-Ltac pose_m' modinv_fuel m r m' := (* (-m)⁻¹ mod r *)
- pose_modinv modinv_fuel (-Z.pos m) (Z.pos r) m'.
-Ltac pose_r' modinv_fuel m r r' := (* r⁻¹ mod m *)
- pose_modinv modinv_fuel (Z.pos r) (Z.pos m) r'.
-
-Ltac pose_m'_correct m m' r m'_correct :=
- pose_correct_if_Z
- m'
- ltac:(fun _ => constr:((Z.pos m * m') mod (Z.pos r) = (-1) mod Z.pos r))
- m'_correct.
-Ltac pose_r'_correct m r r' r'_correct :=
- pose_correct_if_Z
- r'
- ltac:(fun _ => constr:((Z.pos r * r') mod (Z.pos m) = 1))
- r'_correct.
-
-Ltac pose_m_enc_correct_montgomery m sz r m_enc m_enc_correct_montgomery :=
- cache_proof_with_type_by
- (Z.pos m = MontgomeryAPI.eval (n:=sz) (Z.pos r) m_enc)
- ltac:(vm_compute; reflexivity)
- m_enc_correct_montgomery.
-
-Ltac pose_r'_pow_correct r' sz r m_enc r'_pow_correct :=
- cache_proof_with_type_by
- ((r' ^ Z.of_nat sz * Z.pos r ^ Z.of_nat sz) mod MontgomeryAPI.eval (n:=sz) (Z.pos r) m_enc = 1)
- ltac:(vm_compute; reflexivity)
- r'_pow_correct.
-
-Ltac pose_montgomery_to_F sz m r' montgomery_to_F :=
- let v := (eval cbv [montgomery_to_F_gen] in (montgomery_to_F_gen sz m r')) in
- cache_term v montgomery_to_F.
-
-Ltac pose_r_big r r_big :=
- cache_proof_with_type_by
- (Z.pos r > 1)
- ltac:(vm_compute; reflexivity)
- r_big.
-
-Ltac pose_m_big m m_big :=
- cache_proof_with_type_by
- (1 < Z.pos m)
- ltac:(vm_compute; reflexivity)
- m_big.
-
-Ltac pose_m_enc_small sz r m_enc m_enc_small :=
- cache_proof_with_type_by
- (small (n:=sz) (Z.pos r) m_enc)
- ltac:(pose (small_Decidable (n:=sz) (bound:=Z.pos r)); vm_decide_no_check)
- m_enc_small.
-
-Ltac pose_map_m_enc sz r m_enc map_m_enc :=
- cache_proof_with_type_by
- (Tuple.map (n:=sz) (Z.land (Z.pos r - 1)) m_enc = m_enc)
- ltac:(pose (@dec_eq_prod); pose dec_eq_Z; vm_decide_no_check)
- map_m_enc.
-
-Ltac internal_pose_sig_by_eq ty sigl tac_eq id :=
- cache_term_with_type_by
- ty
- ltac:(eapply (@sig_by_eq _ _ sigl _); tac_eq ())
- id.
-
-Import ModularArithmetic.
-
-Local Ltac reduce_eq _ :=
- cbv -[Definitions.Z.add_with_get_carry Definitions.Z.add_with_carry Definitions.Z.sub_with_get_borrow Definitions.Z.sub_with_borrow Definitions.Z.mul_split_at_bitwidth Definitions.Z.zselect runtime_add runtime_mul runtime_and runtime_opp runtime_lor Let_In].
-
-Ltac pose_mul_ext r sz m m_enc r' r'_correct m' m'_correct m_enc_correct_montgomery r_big m_big m_enc_small montgomery_to_F mul_ext :=
- internal_pose_sig_by_eq
- { f:Z^sz -> Z^sz -> Z^sz
- | let eval := MontgomeryAPI.eval (Z.pos r) in
- (forall (A : Z^sz) (_ : small (Z.pos r) A)
- (B : Z^sz) (_ : small (Z.pos r) B),
- montgomery_to_F (eval (f A B))
- = (montgomery_to_F (eval A) * montgomery_to_F (eval B))%F)
- /\ (forall (A : Z^sz) (_ : small (Z.pos r) A)
- (B : Z^sz) (_ : small (Z.pos r) B),
- (eval B < eval m_enc -> 0 <= eval (f A B) < eval m_enc)%Z) }
- (@mul_ext_gen r sz m m_enc r' r'_correct m' m'_correct m_enc_correct_montgomery r_big m_big m_enc_small)
- ltac:(fun _ => reduce_eq (); reflexivity)
- mul_ext.
-
-Ltac pose_add_ext r sz m m_enc r' m_enc_correct_montgomery r_big m_big m_enc_small montgomery_to_F add_ext :=
- internal_pose_sig_by_eq
- { f:Z^sz -> Z^sz -> Z^sz
- | let eval := MontgomeryAPI.eval (Z.pos r) in
- ((forall (A : Z^sz) (_ : small (Z.pos r) A)
- (B : Z^sz) (_ : small (Z.pos r) B),
- (eval A < eval m_enc
- -> eval B < eval m_enc
- -> montgomery_to_F (eval (f A B))
- = (montgomery_to_F (eval A) + montgomery_to_F (eval B))%F))
- /\ (forall (A : Z^sz) (_ : small (Z.pos r) A)
- (B : Z^sz) (_ : small (Z.pos r) B),
- (eval A < eval m_enc
- -> eval B < eval m_enc
- -> 0 <= eval (f A B) < eval m_enc)))%Z }
- (@add_ext_gen r sz m m_enc r' m_enc_correct_montgomery r_big m_big m_enc_small)
- ltac:(fun _ => reduce_eq (); reflexivity)
- add_ext.
-
-Ltac pose_sub_ext r sz m m_enc r' m_enc_correct_montgomery r_big m_enc_small map_m_enc montgomery_to_F sub_ext :=
- internal_pose_sig_by_eq
- { f:Z^sz -> Z^sz -> Z^sz
- | let eval := MontgomeryAPI.eval (Z.pos r) in
- ((forall (A : Z^sz) (_ : small (Z.pos r) A)
- (B : Z^sz) (_ : small (Z.pos r) B),
- (eval A < eval m_enc
- -> eval B < eval m_enc
- -> montgomery_to_F (eval (f A B))
- = (montgomery_to_F (eval A) - montgomery_to_F (eval B))%F))
- /\ (forall (A : Z^sz) (_ : small (Z.pos r) A)
- (B : Z^sz) (_ : small (Z.pos r) B),
- (eval A < eval m_enc
- -> eval B < eval m_enc
- -> 0 <= eval (f A B) < eval m_enc)))%Z }
- (@sub_ext_gen r sz m m_enc r' m_enc_correct_montgomery r_big m_enc_small map_m_enc)
- ltac:(fun _ => reduce_eq (); reflexivity)
- sub_ext.
-
-Ltac pose_opp_ext r sz m m_enc r' m_enc_correct_montgomery r_big m_enc_small map_m_enc montgomery_to_F opp_ext :=
- internal_pose_sig_by_eq
- { f:Z^sz -> Z^sz
- | let eval := MontgomeryAPI.eval (Z.pos r) in
- ((forall (A : Z^sz) (_ : small (Z.pos r) A),
- (eval A < eval m_enc
- -> montgomery_to_F (eval (f A))
- = (F.opp (montgomery_to_F (eval A)))%F))
- /\ (forall (A : Z^sz) (_ : small (Z.pos r) A),
- (eval A < eval m_enc
- -> 0 <= eval (f A) < eval m_enc)))%Z }
- (@opp_ext_gen r sz m m_enc r' m_enc_correct_montgomery r_big m_enc_small map_m_enc)
- ltac:(fun _ => reduce_eq (); reflexivity)
- opp_ext.
-
-Ltac pose_carry_ext r sz m m_enc r' r_big montgomery_to_F carry_ext :=
- internal_pose_sig_by_eq
- { f:Z^sz -> Z^sz
- | let eval := MontgomeryAPI.eval (Z.pos r) in
- ((forall (A : Z^sz) (_ : small (Z.pos r) A),
- (eval A < eval m_enc
- -> montgomery_to_F (eval (f A))
- = (montgomery_to_F (eval A))))
- /\ (forall (A : Z^sz) (_ : small (Z.pos r) A),
- (eval A < eval m_enc
- -> 0 <= eval (f A) < eval m_enc)))%Z }
- (@carry_ext_gen r sz m m_enc r' r_big)
- ltac:(fun _ => reduce_eq (); reflexivity)
- carry_ext.
-
-Ltac pose_nonzero_ext r sz m m_enc r' m_enc_correct_montgomery r'_pow_correct r_big m_big montgomery_to_F nonzero_ext :=
- internal_pose_sig_by_eq
- { f:Z^sz -> Z
- | let eval := MontgomeryAPI.eval (Z.pos r) in
- forall (A : Z^sz) (_ : small (Z.pos r) A),
- (eval A < eval m_enc
- -> f A = 0 <-> (montgomery_to_F (eval A) = F.of_Z m 0))%Z }
- (@nonzero_ext_gen r sz m m_enc r' m_enc_correct_montgomery r'_pow_correct r_big m_big)
- ltac:(fun _ => reduce_eq (); reflexivity)
- nonzero_ext.
-
-Ltac pose_mul_sig r sz montgomery_to_F mul_ext mul_sig :=
- cache_term_with_type_by
- { f:Z^sz -> Z^sz -> Z^sz
- | let eval := MontgomeryAPI.eval (Z.pos r) in
- forall (A : Z^sz) (_ : small (Z.pos r) A)
- (B : Z^sz) (_ : small (Z.pos r) B),
- montgomery_to_F (eval (f A B))
- = (montgomery_to_F (eval A) * montgomery_to_F (eval B))%F }
- ltac:(idtac;
- let v := (eval cbv [proj1_sig mul_ext_gen mul_ext sig_by_eq] in (proj1_sig mul_ext)) in
- (exists v);
- abstract apply (proj2_sig mul_ext))
- mul_sig.
-
-Ltac pose_mul_bounded r sz m_enc montgomery_to_F mul_ext mul_sig mul_bounded :=
- cache_proof_with_type_by
- (let eval := MontgomeryAPI.eval (Z.pos r) in
- forall (A : Z^sz) (_ : small (Z.pos r) A)
- (B : Z^sz) (_ : small (Z.pos r) B),
- (eval B < eval m_enc
- -> 0 <= eval (proj1_sig mul_sig A B) < eval m_enc)%Z)
- ltac:(apply (proj2_sig mul_ext))
- mul_bounded.
-
-
-Ltac pose_add_sig r sz m_enc montgomery_to_F add_ext add_sig :=
- cache_term_with_type_by
- { f:Z^sz -> Z^sz -> Z^sz
- | let eval := MontgomeryAPI.eval (Z.pos r) in
- forall (A : Z^sz) (_ : small (Z.pos r) A)
- (B : Z^sz) (_ : small (Z.pos r) B),
- (eval A < eval m_enc
- -> eval B < eval m_enc
- -> montgomery_to_F (eval (f A B))
- = (montgomery_to_F (eval A) + montgomery_to_F (eval B))%F)%Z }
- ltac:(idtac;
- let v := (eval cbv [proj1_sig add_ext_gen add_ext sig_by_eq] in (proj1_sig add_ext)) in
- (exists v);
- abstract apply (proj2_sig add_ext))
- add_sig.
-
-Ltac pose_add_bounded r sz m_enc montgomery_to_F add_ext add_sig add_bounded :=
- cache_proof_with_type_by
- (let eval := MontgomeryAPI.eval (Z.pos r) in
- (forall (A : Z^sz) (_ : small (Z.pos r) A)
- (B : Z^sz) (_ : small (Z.pos r) B),
- (eval A < eval m_enc
- -> eval B < eval m_enc
- -> 0 <= eval (proj1_sig add_sig A B) < eval m_enc))%Z)
- ltac:(apply (proj2_sig add_ext))
- add_bounded.
-
-
-Ltac pose_sub_sig r sz m_enc montgomery_to_F sub_ext sub_sig :=
- cache_term_with_type_by
- { f:Z^sz -> Z^sz -> Z^sz
- | let eval := MontgomeryAPI.eval (Z.pos r) in
- forall (A : Z^sz) (_ : small (Z.pos r) A)
- (B : Z^sz) (_ : small (Z.pos r) B),
- (eval A < eval m_enc
- -> eval B < eval m_enc
- -> montgomery_to_F (eval (f A B))
- = (montgomery_to_F (eval A) - montgomery_to_F (eval B))%F)%Z }
- ltac:(idtac;
- let v := (eval cbv [proj1_sig sub_ext_gen sub_ext sig_by_eq] in (proj1_sig sub_ext)) in
- (exists v);
- abstract apply (proj2_sig sub_ext))
- sub_sig.
-
-Ltac pose_sub_bounded r sz m_enc montgomery_to_F sub_ext sub_sig sub_bounded :=
- cache_proof_with_type_by
- (let eval := MontgomeryAPI.eval (Z.pos r) in
- (forall (A : Z^sz) (_ : small (Z.pos r) A)
- (B : Z^sz) (_ : small (Z.pos r) B),
- (eval A < eval m_enc
- -> eval B < eval m_enc
- -> 0 <= eval (proj1_sig sub_sig A B) < eval m_enc))%Z)
- ltac:(apply (proj2_sig sub_ext))
- sub_bounded.
-
-
-Ltac pose_opp_sig r sz m_enc montgomery_to_F opp_ext opp_sig :=
- cache_term_with_type_by
- { f:Z^sz -> Z^sz
- | let eval := MontgomeryAPI.eval (Z.pos r) in
- forall (A : Z^sz) (_ : small (Z.pos r) A),
- (eval A < eval m_enc
- -> montgomery_to_F (eval (f A))
- = (F.opp (montgomery_to_F (eval A)))%F)%Z }
- ltac:(idtac;
- let v := (eval cbv [proj1_sig opp_ext_gen opp_ext sig_by_eq] in (proj1_sig opp_ext)) in
- (exists v);
- abstract apply (proj2_sig opp_ext))
- opp_sig.
-
-Ltac pose_opp_bounded r sz m_enc montgomery_to_F opp_ext opp_sig opp_bounded :=
- cache_proof_with_type_by
- (let eval := MontgomeryAPI.eval (Z.pos r) in
- (forall (A : Z^sz) (_ : small (Z.pos r) A),
- (eval A < eval m_enc
- -> 0 <= eval (proj1_sig opp_sig A) < eval m_enc))%Z)
- ltac:(apply (proj2_sig opp_ext))
- opp_bounded.
-
-Ltac pose_carry_sig r sz m_enc montgomery_to_F carry_ext carry_sig :=
- cache_term_with_type_by
- { f:Z^sz -> Z^sz
- | let eval := MontgomeryAPI.eval (Z.pos r) in
- forall (A : Z^sz) (_ : small (Z.pos r) A),
- (eval A < eval m_enc
- -> montgomery_to_F (eval (f A))
- = (montgomery_to_F (eval A)))%Z }
- ltac:(idtac;
- let v := (eval cbv [proj1_sig carry_ext_gen carry_ext sig_by_eq] in (proj1_sig carry_ext)) in
- (exists v);
- abstract apply (proj2_sig carry_ext))
- carry_sig.
-
-Ltac pose_carry_bounded r sz m_enc montgomery_to_F carry_ext carry_sig carry_bounded :=
- cache_proof_with_type_by
- (let eval := MontgomeryAPI.eval (Z.pos r) in
- (forall (A : Z^sz) (_ : small (Z.pos r) A),
- (eval A < eval m_enc
- -> 0 <= eval (proj1_sig carry_sig A) < eval m_enc))%Z)
- ltac:(apply (proj2_sig carry_ext))
- carry_bounded.
-
-
-Ltac pose_nonzero_sig r sz m m_enc montgomery_to_F nonzero_ext nonzero_sig :=
- cache_term_with_type_by
- { f:Z^sz -> Z
- | let eval := MontgomeryAPI.eval (Z.pos r) in
- forall (A : Z^sz) (_ : small (Z.pos r) A),
- (eval A < eval m_enc
- -> f A = 0 <-> (montgomery_to_F (eval A) = F.of_Z m 0))%Z }
- ltac:(idtac;
- let v := (eval cbv [proj1_sig nonzero_ext_gen nonzero_ext sig_by_eq] in (proj1_sig nonzero_ext)) in
- (exists v);
- abstract apply (proj2_sig nonzero_ext))
- nonzero_sig.
-
-Ltac pose_ring ring :=
- (* FIXME: TODO *)
- cache_term
- I
- ring.
-
-(* disable default unused things *)
-(*Ltac pose_carry_sig carry_sig :=
- cache_term tt carry_sig.*)
-Ltac pose_freeze_sig freeze_sig :=
- cache_term tt freeze_sig.
-Ltac pose_Mxzladderstep_sig Mxzladderstep_sig :=
- cache_term tt Mxzladderstep_sig.
diff --git a/src/Specific/Framework/ArithmeticSynthesis/MontgomeryPackage.v b/src/Specific/Framework/ArithmeticSynthesis/MontgomeryPackage.v
deleted file mode 100644
index cefc0733f..000000000
--- a/src/Specific/Framework/ArithmeticSynthesis/MontgomeryPackage.v
+++ /dev/null
@@ -1,498 +0,0 @@
-(* This file is autogenerated from Montgomery.v by remake_packages.py *)
-Require Import Crypto.Specific.Framework.CurveParametersPackage.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.BasePackage.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.DefaultsPackage.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.FreezePackage.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.LadderstepPackage.
-Require Export Crypto.Specific.Framework.ArithmeticSynthesis.Montgomery.
-Require Import Crypto.Specific.Framework.Packages.
-Require Import Crypto.Util.TagList.
-
-Module TAG.
- Inductive tags := m' | r' | m'_correct | r'_correct | m_enc_correct_montgomery | r'_pow_correct | montgomery_to_F | r_big | m_big | m_enc_small | map_m_enc | mul_ext | add_ext | sub_ext | opp_ext | carry_ext | nonzero_ext | mul_bounded | add_bounded | sub_bounded | opp_bounded | carry_bounded | nonzero_sig.
-End TAG.
-
-Ltac add_m' pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let modinv_fuel := Tag.get pkg TAG.modinv_fuel in
- let m := Tag.get pkg TAG.m in
- let r := Tag.get pkg TAG.r in
- let m' := fresh "m'" in
- let m' := pose_m' modinv_fuel m r m' in
- Tag.update pkg TAG.m' m')
- ltac:(fun _ => pkg)
- ().
-Ltac add_r' pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let modinv_fuel := Tag.get pkg TAG.modinv_fuel in
- let m := Tag.get pkg TAG.m in
- let r := Tag.get pkg TAG.r in
- let r' := fresh "r'" in
- let r' := pose_r' modinv_fuel m r r' in
- Tag.update pkg TAG.r' r')
- ltac:(fun _ => pkg)
- ().
-Ltac add_m'_correct pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let m := Tag.get pkg TAG.m in
- let m' := Tag.get pkg TAG.m' in
- let r := Tag.get pkg TAG.r in
- let m'_correct := fresh "m'_correct" in
- let m'_correct := pose_m'_correct m m' r m'_correct in
- Tag.update pkg TAG.m'_correct m'_correct)
- ltac:(fun _ => pkg)
- ().
-Ltac add_r'_correct pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let m := Tag.get pkg TAG.m in
- let r := Tag.get pkg TAG.r in
- let r' := Tag.get pkg TAG.r' in
- let r'_correct := fresh "r'_correct" in
- let r'_correct := pose_r'_correct m r r' r'_correct in
- Tag.update pkg TAG.r'_correct r'_correct)
- ltac:(fun _ => pkg)
- ().
-Ltac add_m_enc_correct_montgomery pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let m := Tag.get pkg TAG.m in
- let sz := Tag.get pkg TAG.sz in
- let r := Tag.get pkg TAG.r in
- let m_enc := Tag.get pkg TAG.m_enc in
- let m_enc_correct_montgomery := fresh "m_enc_correct_montgomery" in
- let m_enc_correct_montgomery := pose_m_enc_correct_montgomery m sz r m_enc m_enc_correct_montgomery in
- Tag.update pkg TAG.m_enc_correct_montgomery m_enc_correct_montgomery)
- ltac:(fun _ => pkg)
- ().
-Ltac add_r'_pow_correct pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let r' := Tag.get pkg TAG.r' in
- let sz := Tag.get pkg TAG.sz in
- let r := Tag.get pkg TAG.r in
- let m_enc := Tag.get pkg TAG.m_enc in
- let r'_pow_correct := fresh "r'_pow_correct" in
- let r'_pow_correct := pose_r'_pow_correct r' sz r m_enc r'_pow_correct in
- Tag.update pkg TAG.r'_pow_correct r'_pow_correct)
- ltac:(fun _ => pkg)
- ().
-Ltac add_montgomery_to_F pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let sz := Tag.get pkg TAG.sz in
- let m := Tag.get pkg TAG.m in
- let r' := Tag.get pkg TAG.r' in
- let montgomery_to_F := fresh "montgomery_to_F" in
- let montgomery_to_F := pose_montgomery_to_F sz m r' montgomery_to_F in
- Tag.update pkg TAG.montgomery_to_F montgomery_to_F)
- ltac:(fun _ => pkg)
- ().
-Ltac add_r_big pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let r := Tag.get pkg TAG.r in
- let r_big := fresh "r_big" in
- let r_big := pose_r_big r r_big in
- Tag.update pkg TAG.r_big r_big)
- ltac:(fun _ => pkg)
- ().
-Ltac add_m_big pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let m := Tag.get pkg TAG.m in
- let m_big := fresh "m_big" in
- let m_big := pose_m_big m m_big in
- Tag.update pkg TAG.m_big m_big)
- ltac:(fun _ => pkg)
- ().
-Ltac add_m_enc_small pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let sz := Tag.get pkg TAG.sz in
- let r := Tag.get pkg TAG.r in
- let m_enc := Tag.get pkg TAG.m_enc in
- let m_enc_small := fresh "m_enc_small" in
- let m_enc_small := pose_m_enc_small sz r m_enc m_enc_small in
- Tag.update pkg TAG.m_enc_small m_enc_small)
- ltac:(fun _ => pkg)
- ().
-Ltac add_map_m_enc pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let sz := Tag.get pkg TAG.sz in
- let r := Tag.get pkg TAG.r in
- let m_enc := Tag.get pkg TAG.m_enc in
- let map_m_enc := fresh "map_m_enc" in
- let map_m_enc := pose_map_m_enc sz r m_enc map_m_enc in
- Tag.update pkg TAG.map_m_enc map_m_enc)
- ltac:(fun _ => pkg)
- ().
-Ltac add_mul_ext pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let r := Tag.get pkg TAG.r in
- let sz := Tag.get pkg TAG.sz in
- let m := Tag.get pkg TAG.m in
- let m_enc := Tag.get pkg TAG.m_enc in
- let r' := Tag.get pkg TAG.r' in
- let r'_correct := Tag.get pkg TAG.r'_correct in
- let m' := Tag.get pkg TAG.m' in
- let m'_correct := Tag.get pkg TAG.m'_correct in
- let m_enc_correct_montgomery := Tag.get pkg TAG.m_enc_correct_montgomery in
- let r_big := Tag.get pkg TAG.r_big in
- let m_big := Tag.get pkg TAG.m_big in
- let m_enc_small := Tag.get pkg TAG.m_enc_small in
- let montgomery_to_F := Tag.get pkg TAG.montgomery_to_F in
- let mul_ext := fresh "mul_ext" in
- let mul_ext := pose_mul_ext r sz m m_enc r' r'_correct m' m'_correct m_enc_correct_montgomery r_big m_big m_enc_small montgomery_to_F mul_ext in
- Tag.update pkg TAG.mul_ext mul_ext)
- ltac:(fun _ => pkg)
- ().
-Ltac add_add_ext pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let r := Tag.get pkg TAG.r in
- let sz := Tag.get pkg TAG.sz in
- let m := Tag.get pkg TAG.m in
- let m_enc := Tag.get pkg TAG.m_enc in
- let r' := Tag.get pkg TAG.r' in
- let m_enc_correct_montgomery := Tag.get pkg TAG.m_enc_correct_montgomery in
- let r_big := Tag.get pkg TAG.r_big in
- let m_big := Tag.get pkg TAG.m_big in
- let m_enc_small := Tag.get pkg TAG.m_enc_small in
- let montgomery_to_F := Tag.get pkg TAG.montgomery_to_F in
- let add_ext := fresh "add_ext" in
- let add_ext := pose_add_ext r sz m m_enc r' m_enc_correct_montgomery r_big m_big m_enc_small montgomery_to_F add_ext in
- Tag.update pkg TAG.add_ext add_ext)
- ltac:(fun _ => pkg)
- ().
-Ltac add_sub_ext pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let r := Tag.get pkg TAG.r in
- let sz := Tag.get pkg TAG.sz in
- let m := Tag.get pkg TAG.m in
- let m_enc := Tag.get pkg TAG.m_enc in
- let r' := Tag.get pkg TAG.r' in
- let m_enc_correct_montgomery := Tag.get pkg TAG.m_enc_correct_montgomery in
- let r_big := Tag.get pkg TAG.r_big in
- let m_enc_small := Tag.get pkg TAG.m_enc_small in
- let map_m_enc := Tag.get pkg TAG.map_m_enc in
- let montgomery_to_F := Tag.get pkg TAG.montgomery_to_F in
- let sub_ext := fresh "sub_ext" in
- let sub_ext := pose_sub_ext r sz m m_enc r' m_enc_correct_montgomery r_big m_enc_small map_m_enc montgomery_to_F sub_ext in
- Tag.update pkg TAG.sub_ext sub_ext)
- ltac:(fun _ => pkg)
- ().
-Ltac add_opp_ext pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let r := Tag.get pkg TAG.r in
- let sz := Tag.get pkg TAG.sz in
- let m := Tag.get pkg TAG.m in
- let m_enc := Tag.get pkg TAG.m_enc in
- let r' := Tag.get pkg TAG.r' in
- let m_enc_correct_montgomery := Tag.get pkg TAG.m_enc_correct_montgomery in
- let r_big := Tag.get pkg TAG.r_big in
- let m_enc_small := Tag.get pkg TAG.m_enc_small in
- let map_m_enc := Tag.get pkg TAG.map_m_enc in
- let montgomery_to_F := Tag.get pkg TAG.montgomery_to_F in
- let opp_ext := fresh "opp_ext" in
- let opp_ext := pose_opp_ext r sz m m_enc r' m_enc_correct_montgomery r_big m_enc_small map_m_enc montgomery_to_F opp_ext in
- Tag.update pkg TAG.opp_ext opp_ext)
- ltac:(fun _ => pkg)
- ().
-Ltac add_carry_ext pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let r := Tag.get pkg TAG.r in
- let sz := Tag.get pkg TAG.sz in
- let m := Tag.get pkg TAG.m in
- let m_enc := Tag.get pkg TAG.m_enc in
- let r' := Tag.get pkg TAG.r' in
- let r_big := Tag.get pkg TAG.r_big in
- let montgomery_to_F := Tag.get pkg TAG.montgomery_to_F in
- let carry_ext := fresh "carry_ext" in
- let carry_ext := pose_carry_ext r sz m m_enc r' r_big montgomery_to_F carry_ext in
- Tag.update pkg TAG.carry_ext carry_ext)
- ltac:(fun _ => pkg)
- ().
-Ltac add_nonzero_ext pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let r := Tag.get pkg TAG.r in
- let sz := Tag.get pkg TAG.sz in
- let m := Tag.get pkg TAG.m in
- let m_enc := Tag.get pkg TAG.m_enc in
- let r' := Tag.get pkg TAG.r' in
- let m_enc_correct_montgomery := Tag.get pkg TAG.m_enc_correct_montgomery in
- let r'_pow_correct := Tag.get pkg TAG.r'_pow_correct in
- let r_big := Tag.get pkg TAG.r_big in
- let m_big := Tag.get pkg TAG.m_big in
- let montgomery_to_F := Tag.get pkg TAG.montgomery_to_F in
- let nonzero_ext := fresh "nonzero_ext" in
- let nonzero_ext := pose_nonzero_ext r sz m m_enc r' m_enc_correct_montgomery r'_pow_correct r_big m_big montgomery_to_F nonzero_ext in
- Tag.update pkg TAG.nonzero_ext nonzero_ext)
- ltac:(fun _ => pkg)
- ().
-Ltac add_mul_sig pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let r := Tag.get pkg TAG.r in
- let sz := Tag.get pkg TAG.sz in
- let montgomery_to_F := Tag.get pkg TAG.montgomery_to_F in
- let mul_ext := Tag.get pkg TAG.mul_ext in
- let mul_sig := fresh "mul_sig" in
- let mul_sig := pose_mul_sig r sz montgomery_to_F mul_ext mul_sig in
- Tag.update pkg TAG.mul_sig mul_sig)
- ltac:(fun _ => pkg)
- ().
-Ltac add_mul_bounded pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let r := Tag.get pkg TAG.r in
- let sz := Tag.get pkg TAG.sz in
- let m_enc := Tag.get pkg TAG.m_enc in
- let montgomery_to_F := Tag.get pkg TAG.montgomery_to_F in
- let mul_ext := Tag.get pkg TAG.mul_ext in
- let mul_sig := Tag.get pkg TAG.mul_sig in
- let mul_bounded := fresh "mul_bounded" in
- let mul_bounded := pose_mul_bounded r sz m_enc montgomery_to_F mul_ext mul_sig mul_bounded in
- Tag.update pkg TAG.mul_bounded mul_bounded)
- ltac:(fun _ => pkg)
- ().
-Ltac add_add_sig pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let r := Tag.get pkg TAG.r in
- let sz := Tag.get pkg TAG.sz in
- let m_enc := Tag.get pkg TAG.m_enc in
- let montgomery_to_F := Tag.get pkg TAG.montgomery_to_F in
- let add_ext := Tag.get pkg TAG.add_ext in
- let add_sig := fresh "add_sig" in
- let add_sig := pose_add_sig r sz m_enc montgomery_to_F add_ext add_sig in
- Tag.update pkg TAG.add_sig add_sig)
- ltac:(fun _ => pkg)
- ().
-Ltac add_add_bounded pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let r := Tag.get pkg TAG.r in
- let sz := Tag.get pkg TAG.sz in
- let m_enc := Tag.get pkg TAG.m_enc in
- let montgomery_to_F := Tag.get pkg TAG.montgomery_to_F in
- let add_ext := Tag.get pkg TAG.add_ext in
- let add_sig := Tag.get pkg TAG.add_sig in
- let add_bounded := fresh "add_bounded" in
- let add_bounded := pose_add_bounded r sz m_enc montgomery_to_F add_ext add_sig add_bounded in
- Tag.update pkg TAG.add_bounded add_bounded)
- ltac:(fun _ => pkg)
- ().
-Ltac add_sub_sig pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let r := Tag.get pkg TAG.r in
- let sz := Tag.get pkg TAG.sz in
- let m_enc := Tag.get pkg TAG.m_enc in
- let montgomery_to_F := Tag.get pkg TAG.montgomery_to_F in
- let sub_ext := Tag.get pkg TAG.sub_ext in
- let sub_sig := fresh "sub_sig" in
- let sub_sig := pose_sub_sig r sz m_enc montgomery_to_F sub_ext sub_sig in
- Tag.update pkg TAG.sub_sig sub_sig)
- ltac:(fun _ => pkg)
- ().
-Ltac add_sub_bounded pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let r := Tag.get pkg TAG.r in
- let sz := Tag.get pkg TAG.sz in
- let m_enc := Tag.get pkg TAG.m_enc in
- let montgomery_to_F := Tag.get pkg TAG.montgomery_to_F in
- let sub_ext := Tag.get pkg TAG.sub_ext in
- let sub_sig := Tag.get pkg TAG.sub_sig in
- let sub_bounded := fresh "sub_bounded" in
- let sub_bounded := pose_sub_bounded r sz m_enc montgomery_to_F sub_ext sub_sig sub_bounded in
- Tag.update pkg TAG.sub_bounded sub_bounded)
- ltac:(fun _ => pkg)
- ().
-Ltac add_opp_sig pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let r := Tag.get pkg TAG.r in
- let sz := Tag.get pkg TAG.sz in
- let m_enc := Tag.get pkg TAG.m_enc in
- let montgomery_to_F := Tag.get pkg TAG.montgomery_to_F in
- let opp_ext := Tag.get pkg TAG.opp_ext in
- let opp_sig := fresh "opp_sig" in
- let opp_sig := pose_opp_sig r sz m_enc montgomery_to_F opp_ext opp_sig in
- Tag.update pkg TAG.opp_sig opp_sig)
- ltac:(fun _ => pkg)
- ().
-Ltac add_opp_bounded pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let r := Tag.get pkg TAG.r in
- let sz := Tag.get pkg TAG.sz in
- let m_enc := Tag.get pkg TAG.m_enc in
- let montgomery_to_F := Tag.get pkg TAG.montgomery_to_F in
- let opp_ext := Tag.get pkg TAG.opp_ext in
- let opp_sig := Tag.get pkg TAG.opp_sig in
- let opp_bounded := fresh "opp_bounded" in
- let opp_bounded := pose_opp_bounded r sz m_enc montgomery_to_F opp_ext opp_sig opp_bounded in
- Tag.update pkg TAG.opp_bounded opp_bounded)
- ltac:(fun _ => pkg)
- ().
-Ltac add_carry_sig pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let r := Tag.get pkg TAG.r in
- let sz := Tag.get pkg TAG.sz in
- let m_enc := Tag.get pkg TAG.m_enc in
- let montgomery_to_F := Tag.get pkg TAG.montgomery_to_F in
- let carry_ext := Tag.get pkg TAG.carry_ext in
- let carry_sig := fresh "carry_sig" in
- let carry_sig := pose_carry_sig r sz m_enc montgomery_to_F carry_ext carry_sig in
- Tag.update pkg TAG.carry_sig carry_sig)
- ltac:(fun _ => pkg)
- ().
-Ltac add_carry_bounded pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let r := Tag.get pkg TAG.r in
- let sz := Tag.get pkg TAG.sz in
- let m_enc := Tag.get pkg TAG.m_enc in
- let montgomery_to_F := Tag.get pkg TAG.montgomery_to_F in
- let carry_ext := Tag.get pkg TAG.carry_ext in
- let carry_sig := Tag.get pkg TAG.carry_sig in
- let carry_bounded := fresh "carry_bounded" in
- let carry_bounded := pose_carry_bounded r sz m_enc montgomery_to_F carry_ext carry_sig carry_bounded in
- Tag.update pkg TAG.carry_bounded carry_bounded)
- ltac:(fun _ => pkg)
- ().
-Ltac add_nonzero_sig pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let r := Tag.get pkg TAG.r in
- let sz := Tag.get pkg TAG.sz in
- let m := Tag.get pkg TAG.m in
- let m_enc := Tag.get pkg TAG.m_enc in
- let montgomery_to_F := Tag.get pkg TAG.montgomery_to_F in
- let nonzero_ext := Tag.get pkg TAG.nonzero_ext in
- let nonzero_sig := fresh "nonzero_sig" in
- let nonzero_sig := pose_nonzero_sig r sz m m_enc montgomery_to_F nonzero_ext nonzero_sig in
- Tag.update pkg TAG.nonzero_sig nonzero_sig)
- ltac:(fun _ => pkg)
- ().
-Ltac add_ring pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let ring := fresh "ring" in
- let ring := pose_ring ring in
- Tag.update pkg TAG.ring ring)
- ltac:(fun _ => pkg)
- ().
-Ltac add_freeze_sig pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let freeze_sig := fresh "freeze_sig" in
- let freeze_sig := pose_freeze_sig freeze_sig in
- Tag.update pkg TAG.freeze_sig freeze_sig)
- ltac:(fun _ => pkg)
- ().
-Ltac add_Mxzladderstep_sig pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let Mxzladderstep_sig := fresh "Mxzladderstep_sig" in
- let Mxzladderstep_sig := pose_Mxzladderstep_sig Mxzladderstep_sig in
- Tag.update pkg TAG.Mxzladderstep_sig Mxzladderstep_sig)
- ltac:(fun _ => pkg)
- ().
-Ltac add_Montgomery_package pkg :=
- let pkg := add_m' pkg in
- let pkg := add_r' pkg in
- let pkg := add_m'_correct pkg in
- let pkg := add_r'_correct pkg in
- let pkg := add_m_enc_correct_montgomery pkg in
- let pkg := add_r'_pow_correct pkg in
- let pkg := add_montgomery_to_F pkg in
- let pkg := add_r_big pkg in
- let pkg := add_m_big pkg in
- let pkg := add_m_enc_small pkg in
- let pkg := add_map_m_enc pkg in
- let pkg := add_mul_ext pkg in
- let pkg := add_add_ext pkg in
- let pkg := add_sub_ext pkg in
- let pkg := add_opp_ext pkg in
- let pkg := add_carry_ext pkg in
- let pkg := add_nonzero_ext pkg in
- let pkg := add_mul_sig pkg in
- let pkg := add_mul_bounded pkg in
- let pkg := add_add_sig pkg in
- let pkg := add_add_bounded pkg in
- let pkg := add_sub_sig pkg in
- let pkg := add_sub_bounded pkg in
- let pkg := add_opp_sig pkg in
- let pkg := add_opp_bounded pkg in
- let pkg := add_carry_sig pkg in
- let pkg := add_carry_bounded pkg in
- let pkg := add_nonzero_sig pkg in
- let pkg := add_ring pkg in
- let pkg := add_freeze_sig pkg in
- let pkg := add_Mxzladderstep_sig pkg in
- Tag.strip_subst_local pkg.
-
-
-Module MakeMontgomeryPackage (PKG : PrePackage).
- Module Import MakeMontgomeryPackageInternal := MakePackageBase PKG.
-
- Ltac get_m' _ := get TAG.m'.
- Notation m' := (ltac:(let v := get_m' () in exact v)) (only parsing).
- Ltac get_r' _ := get TAG.r'.
- Notation r' := (ltac:(let v := get_r' () 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_r'_correct _ := get TAG.r'_correct.
- Notation r'_correct := (ltac:(let v := get_r'_correct () in exact v)) (only parsing).
- Ltac get_m_enc_correct_montgomery _ := get TAG.m_enc_correct_montgomery.
- Notation m_enc_correct_montgomery := (ltac:(let v := get_m_enc_correct_montgomery () in exact v)) (only parsing).
- Ltac get_r'_pow_correct _ := get TAG.r'_pow_correct.
- Notation r'_pow_correct := (ltac:(let v := get_r'_pow_correct () in exact v)) (only parsing).
- Ltac get_montgomery_to_F _ := get TAG.montgomery_to_F.
- Notation montgomery_to_F := (ltac:(let v := get_montgomery_to_F () in exact v)) (only parsing).
- Ltac get_r_big _ := get TAG.r_big.
- Notation r_big := (ltac:(let v := get_r_big () in exact v)) (only parsing).
- Ltac get_m_big _ := get TAG.m_big.
- Notation m_big := (ltac:(let v := get_m_big () in exact v)) (only parsing).
- Ltac get_m_enc_small _ := get TAG.m_enc_small.
- Notation m_enc_small := (ltac:(let v := get_m_enc_small () in exact v)) (only parsing).
- Ltac get_map_m_enc _ := get TAG.map_m_enc.
- Notation map_m_enc := (ltac:(let v := get_map_m_enc () in exact v)) (only parsing).
- Ltac get_mul_ext _ := get TAG.mul_ext.
- Notation mul_ext := (ltac:(let v := get_mul_ext () in exact v)) (only parsing).
- Ltac get_add_ext _ := get TAG.add_ext.
- Notation add_ext := (ltac:(let v := get_add_ext () in exact v)) (only parsing).
- Ltac get_sub_ext _ := get TAG.sub_ext.
- Notation sub_ext := (ltac:(let v := get_sub_ext () in exact v)) (only parsing).
- Ltac get_opp_ext _ := get TAG.opp_ext.
- Notation opp_ext := (ltac:(let v := get_opp_ext () in exact v)) (only parsing).
- Ltac get_carry_ext _ := get TAG.carry_ext.
- Notation carry_ext := (ltac:(let v := get_carry_ext () in exact v)) (only parsing).
- Ltac get_nonzero_ext _ := get TAG.nonzero_ext.
- Notation nonzero_ext := (ltac:(let v := get_nonzero_ext () in exact v)) (only parsing).
- Ltac get_mul_bounded _ := get TAG.mul_bounded.
- Notation mul_bounded := (ltac:(let v := get_mul_bounded () in exact v)) (only parsing).
- Ltac get_add_bounded _ := get TAG.add_bounded.
- Notation add_bounded := (ltac:(let v := get_add_bounded () in exact v)) (only parsing).
- Ltac get_sub_bounded _ := get TAG.sub_bounded.
- Notation sub_bounded := (ltac:(let v := get_sub_bounded () in exact v)) (only parsing).
- Ltac get_opp_bounded _ := get TAG.opp_bounded.
- Notation opp_bounded := (ltac:(let v := get_opp_bounded () in exact v)) (only parsing).
- Ltac get_carry_bounded _ := get TAG.carry_bounded.
- Notation carry_bounded := (ltac:(let v := get_carry_bounded () in exact v)) (only parsing).
- Ltac get_nonzero_sig _ := get TAG.nonzero_sig.
- Notation nonzero_sig := (ltac:(let v := get_nonzero_sig () in exact v)) (only parsing).
-End MakeMontgomeryPackage.
diff --git a/src/Specific/Framework/ArithmeticSynthesis/SquareFromMul.v b/src/Specific/Framework/ArithmeticSynthesis/SquareFromMul.v
deleted file mode 100644
index 8d8946923..000000000
--- a/src/Specific/Framework/ArithmeticSynthesis/SquareFromMul.v
+++ /dev/null
@@ -1,28 +0,0 @@
-Require Import Coq.ZArith.ZArith Coq.ZArith.BinIntDef.
-Require Import Coq.Lists.List. Import ListNotations.
-Require Import Crypto.Arithmetic.Core. Import B.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Crypto.Specific.Framework.CurveParameters.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.HelperTactics.
-Require Import Crypto.Util.Tactics.CacheTerm.
-Require Crypto.Util.Tuple.
-
-Local Notation tuple := Tuple.tuple.
-Local Open Scope list_scope.
-Local Open Scope Z_scope.
-Local Infix "^" := tuple : type_scope.
-
-Ltac pose_square_sig sz m wt mul_sig square_sig :=
- cache_term_with_type_by
- {square : (Z^sz -> Z^sz)%type |
- forall a : Z^sz,
- let eval := Positional.Fdecode (m := m) wt in
- Positional.Fdecode (m := m) wt (square a) = (eval a * eval a)%F}
- ltac:(idtac;
- let a := fresh "a" in
- eexists; cbv beta zeta; intros a;
- rewrite <-(proj2_sig mul_sig);
- apply f_equal;
- cbv [proj1_sig mul_sig];
- reflexivity)
- square_sig.
diff --git a/src/Specific/Framework/ArithmeticSynthesis/remake_packages.py b/src/Specific/Framework/ArithmeticSynthesis/remake_packages.py
deleted file mode 100755
index d9812fd94..000000000
--- a/src/Specific/Framework/ArithmeticSynthesis/remake_packages.py
+++ /dev/null
@@ -1,253 +0,0 @@
-#!/usr/bin/env python
-from __future__ import with_statement
-import re, os
-import io
-
-PACKAGE_NAMES = [('../CurveParameters.v', [])]
-CP_LIST = ['../CurveParametersPackage.v']
-CP_BASE_LIST = ['../CurveParametersPackage.v', 'BasePackage.v']
-CP_BASE_DEFAULTS_LIST = ['../CurveParametersPackage.v', 'BasePackage.v', 'DefaultsPackage.v']
-CP_BASE_DEFAULTS_FREEZE_LADDERSTEP_LIST = ['../CurveParametersPackage.v', 'BasePackage.v', 'DefaultsPackage.v', 'FreezePackage.v', 'LadderstepPackage.v']
-NORMAL_PACKAGE_NAMES = [('Base.v', (CP_LIST, None)),
- ('Defaults.v', (CP_BASE_LIST, 'not_exists')),
- ('../ReificationTypes.v', (CP_BASE_LIST, None)),
- ('Freeze.v', (CP_BASE_LIST, ('freeze', 'not_exists'))),
- ('Ladderstep.v', (CP_BASE_DEFAULTS_LIST, ('ladderstep', 'not_exists'))),
- ('Karatsuba.v', (CP_BASE_DEFAULTS_LIST, 'goldilocks')),
- ('Montgomery.v', (CP_BASE_DEFAULTS_FREEZE_LADDERSTEP_LIST, 'montgomery')),
- ('../MontgomeryReificationTypes.v', (CP_BASE_LIST + ['MontgomeryPackage.v', '../ReificationTypesPackage.v'], 'montgomery'))]
-ALL_FILE_NAMES = PACKAGE_NAMES + NORMAL_PACKAGE_NAMES # PACKAGE_CP_NAMES + WITH_CURVE_BASE_NAMES + ['../ReificationTypes.v']
-CONFIGS = ('goldilocks', 'karatsuba', 'montgomery', 'freeze', 'ladderstep')
-
-EXCLUDES = ('constr:((wt_divides_chain, wt_divides_chains))', )
-
-contents = {}
-lines = {}
-fns = {}
-
-PY_FILE_NAME = os.path.basename(__file__)
-
-def init_contents(lines=lines, contents=contents):
- for fname, _ in ALL_FILE_NAMES:
- with open(fname, 'r') as f:
- contents[fname] = f.read()
- lines.update(dict((k, v.split('\n')) for k, v in contents.items()))
-
-def strip_prefix(name, prefix='local_'):
- if name.startswith(prefix): return name[len(prefix):]
- return name
-
-def init_fns(lines=lines, fns=fns):
- header = 'Ltac pose_'
- for fname, _ in ALL_FILE_NAMES:
- stripped_lines = [i.strip() for i in lines[fname]]
- fns[fname] = [(strip_prefix(name, 'local_'), args.strip(), name.startswith('local_'))
- for line in stripped_lines
- if line.startswith(header)
- for name, args in re.findall('Ltac pose_([^ ]*' + ') ([A-Za-z0-9_\' ]*' + ')', line.strip())]
-
-def get_file_root(folder=os.path.dirname(__file__), filename='Makefile'):
- dir_path = os.path.realpath(folder)
- while not os.path.isfile(os.path.join(dir_path, filename)) and dir_path != '/':
- dir_path = os.path.realpath(os.path.join(dir_path, '..'))
- if not os.path.isfile(os.path.join(dir_path, filename)):
- print('ERROR: Could not find Makefile in the root of %s' % folder)
- raise Exception
- return dir_path
-
-def modname_of_file_name(fname):
- assert(fname[-2:] == '.v')
- return 'Crypto.' + os.path.normpath(os.path.relpath(os.path.realpath(fname), os.path.join(root, 'src'))).replace(os.sep, '.')[:-2]
-
-def split_args(name, args_str, indent=''):
- args = [arg.strip() for arg in args_str.split(' ')]
- pass_args = [arg for arg in args if arg.startswith('P_')]
- extract_args = [arg for arg in args if arg not in pass_args and arg != name]
- if name not in args:
- print('Error: %s not in %s' % (name, repr(args)))
- assert(name in args)
- assert(len(pass_args) + len(extract_args) + 1 == len(args))
- pass_args_str = ' '.join(pass_args)
- if pass_args_str != '': pass_args_str += ' '
- extract_args_str = ''
- nl_indent = ('\n%(indent)s ' % locals())
- if len(extract_args) > 0:
- extract_args_str = nl_indent + nl_indent.join('let %s := Tag.get pkg TAG.%s in' % (arg, arg) for arg in extract_args)
- return args, pass_args, extract_args, pass_args_str, extract_args_str
-
-def make_add_from_pose(name, args_str, indent='', only_if=None, local=False):
- args, pass_args, extract_args, pass_args_str, extract_args_str = split_args(name, args_str, indent=indent)
- ret = r'''%(indent)sLtac add_%(name)s pkg %(pass_args_str)s:=''' % locals()
- local_str = ('local_' if local else '')
- if_not_exists_str = ''
- body = r'''%(extract_args_str)s
-%(indent)s let %(name)s := fresh "%(name)s" in
-%(indent)s ''' % locals()
- body += r'''let %(name)s := pose_%(local_str)s%(name)s %(args_str)s in
-%(indent)s ''' % locals()
- if only_if == 'not_exists':
- assert(not local)
- body += 'constr:(%(name)s)' % locals()
- body = body.strip('\n ').replace('\n', '\n ')
- ret += r'''
-%(indent)s Tag.update_by_tac_if_not_exists
-%(indent)s pkg
-%(indent)s TAG.%(name)s
-%(indent)s ltac:(fun _ => %(body)s).''' % locals()
- else:
- if isinstance(only_if, tuple) and 'not_exists' in only_if:
- only_if = [i for i in only_if if i != 'not_exists']
- assert(len(only_if) == 1)
- only_if = only_if[0]
- body += 'constr:(%(name)s)' % locals()
- body = body.strip('\n ').replace('\n', '\n ')
- body = r'''Tag.update_by_tac_if_not_exists
-%(indent)s pkg
-%(indent)s TAG.%(name)s
-%(indent)s ltac:(fun _ => %(body)s).''' % locals()
- else:
- body += r'''Tag.%(local_str)supdate pkg TAG.%(name)s %(name)s''' % locals()
- if only_if is None:
- ret += body + '.\n'
- else:
- body = body.strip('\n .').replace('\n', '\n ')
- ret += r'''
-%(indent)s if_%(only_if)s
-%(indent)s pkg
-%(indent)s ltac:(fun _ => %(body)s)
-%(indent)s ltac:(fun _ => pkg)
-%(indent)s ().''' % locals()
- return ret
-
-def make_add_all(fname, indent=''):
- modname, ext = os.path.splitext(os.path.basename(fname))
- all_items = [(name, split_args(name, args_str, indent=indent)) for name, args_str, local in fns[fname]]
- all_pass_args = []
- for name, (args, pass_args, extract_args, pass_args_str, extract_args_str) in all_items:
- for arg in pass_args:
- if arg not in all_pass_args: all_pass_args.append(arg)
- all_pass_args_str = ' '.join(all_pass_args)
- if all_pass_args_str != '': all_pass_args_str += ' '
- ret = r'''%(indent)sLtac add_%(modname)s_package pkg %(all_pass_args_str)s:=''' % locals()
- nl_indent = ('\n%(indent)s ' % locals())
- ret += nl_indent + nl_indent.join('let pkg := add_%s pkg %sin' % (name, pass_args_str)
- for name, (args, pass_args, extract_args, pass_args_str, extract_args_str) in all_items)
- ret += nl_indent + 'Tag.strip_subst_local pkg.\n'
- return ret
-
-def make_if(name, indent=''):
- ret = r'''%(indent)sLtac if_%(name)s pkg tac_true tac_false arg :=
-%(indent)s let %(name)s := Tag.get pkg TAG.%(name)s in
-%(indent)s let %(name)s := (eval vm_compute in (%(name)s : bool)) in
-%(indent)s lazymatch %(name)s with
-%(indent)s | true => tac_true arg
-%(indent)s | false => tac_false arg
-%(indent)s end.
-''' % locals()
- return ret
-
-def write_if_changed(fname, value):
- if os.path.isfile(fname):
- with open(fname, 'r') as f:
- old_value = f.read()
- if old_value == value: return
- value = unicode(value)
- print('Writing %s...' % fname)
- with io.open(fname, 'w', newline='\n') as f:
- f.write(value)
-
-def do_replace(fname, headers, new_contents):
- lines = contents[fname].split('\n')
- ret = []
- for line in lines:
- if any(header in line for header in headers):
- ret.append(new_contents)
- break
- else:
- ret.append(line)
- ret = unicode('\n'.join(ret))
- write_if_changed(fname, ret)
-
-def get_existing_tags(fname, deps):
- return set(name for dep in deps for name, args, local in fns[dep.replace('Package.v', '.v')])
-
-def make_package(fname, deps, extra_modname_prefix='', extra_imports=None, prefix=None, add_package=True):
- py_file_name = PY_FILE_NAME
- existing_tags = get_existing_tags(fname, deps)
- full_mod = modname_of_file_name(fname)
- modname, ext = os.path.splitext(os.path.basename(fname))
- ret = (r'''(* This file is autogenerated from %(modname)s.v by %(py_file_name)s *)
-''' % locals())
- if extra_imports is not None:
- ret += extra_imports
- ret += (r'''Require Export %(full_mod)s.
-Require Import Crypto.Specific.Framework.Packages.
-Require Import Crypto.Util.TagList.
-''' % locals())
- if prefix is not None:
- ret += prefix
- new_names = [name for name, args, local in fns[fname] if name not in existing_tags and not local]
- if add_package: # and len(new_names) > 0:
- ret += (r'''
-
-Module Make%(extra_modname_prefix)s%(modname)sPackage (PKG : PrePackage).
- Module Import Make%(extra_modname_prefix)s%(modname)sPackageInternal := MakePackageBase PKG.
-''' % locals())
- for name in new_names:
- ret += ("\n Ltac get_%s _ := get TAG.%s." % (name, name))
- ret += ("\n Notation %s := (ltac:(let v := get_%s () in exact v)) (only parsing)." % (name, name))
- ret += ('\nEnd Make%(extra_modname_prefix)s%(modname)sPackage.\n' % locals())
- return ret
-
-def make_tags(fname, deps):
- existing_tags = get_existing_tags(fname, deps)
- new_tags = [name for name, args, local in fns[fname] if name not in existing_tags]
- if len(new_tags) == 0: return ''
- names = ' | '.join(new_tags)
- return r'''Module TAG.
- Inductive tags := %s.
-End TAG.
-''' % names
-
-def write_package(fname, pkg):
- pkg_name = fname[:-2] + 'Package.v'
- write_if_changed(pkg_name, pkg)
-
-def update_CurveParameters(fname='../CurveParameters.v'):
- endline = contents[fname].strip().split('\n')[-1]
- assert(endline.startswith('End '))
- header = '(* Everything below this line autogenerated by %s *)' % PY_FILE_NAME
- assert(header in contents[fname])
- ret = ' %s' % header
- for name, args, local in fns[fname]:
- ret += '\n' + make_add_from_pose(name, args, indent=' ', local=local)
- ret += '\n' + make_add_all(fname, indent=' ')
- ret += endline + '\n'
- prefix = ''
- for name in CONFIGS:
- prefix += '\n' + make_if(name, indent='')
- pkg = make_package(fname, [], prefix=prefix)
- do_replace(fname, (header,), ret)
- write_package(fname, pkg)
-
-def make_normal_package(fname, deps, only_if=None):
- prefix = ''
- extra_imports = ''
- for dep in deps:
- extra_imports += 'Require Import %s.\n' % modname_of_file_name(dep)
- prefix += '\n' + make_tags(fname, deps)
- for name, args, local in fns[fname]:
- prefix += '\n' + make_add_from_pose(name, args, indent='', only_if=only_if, local=local)
- prefix += '\n' + make_add_all(fname, indent='')
- return make_package(fname, deps, extra_imports=extra_imports, prefix=prefix)
-
-def update_normal_package(fname, deps, only_if=None):
- pkg = make_normal_package(fname, deps, only_if=only_if)
- write_package(fname, pkg)
-
-root = get_file_root()
-init_contents()
-init_fns()
-update_CurveParameters()
-for fname, (deps, only_if) in NORMAL_PACKAGE_NAMES:
- update_normal_package(fname, deps, only_if=only_if)
diff --git a/src/Specific/Framework/CurveParameters.v b/src/Specific/Framework/CurveParameters.v
deleted file mode 100644
index 91d876372..000000000
--- a/src/Specific/Framework/CurveParameters.v
+++ /dev/null
@@ -1,425 +0,0 @@
-Require Import Coq.QArith.Qround.
-Require Export Coq.ZArith.BinInt.
-Require Export Coq.Lists.List.
-Require Export Crypto.Util.ZUtil.Notations.
-Require Import Crypto.Util.Tactics.CacheTerm.
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.TagList.
-Require Crypto.Util.Tuple.
-
-Local Set Primitive Projections.
-
-Module Export Notations := RawCurveParameters.Notations.
-
-Module TAG. (* namespacing *)
- Inductive tags := CP | sz | base | bitwidth | s | c | carry_chains | a24 | coef_div_modulus | goldilocks | karatsuba | montgomery | freeze | ladderstep | upper_bound_of_exponent_tight | upper_bound_of_exponent_loose | allowable_bit_widths | freeze_allowable_bit_widths | modinv_fuel | mul_code | square_code.
-End TAG.
-
-Module Export CurveParameters.
- Local Notation eval p :=
- (List.fold_right Z.add 0%Z (List.map (fun t => fst t * snd t) p)).
-
- Ltac do_compute v :=
- let v' := (eval vm_compute in v) in v'.
- Notation compute v
- := (ltac:(let v' := do_compute v in exact v'))
- (only parsing).
- Local Notation defaulted opt_v default
- := (match opt_v with
- | Some v => v
- | None => default
- end)
- (only parsing).
- Record CurveParameters :=
- {
- sz : nat;
- base : Q;
- bitwidth : Z;
- s : Z;
- c : list limb;
- carry_chains : list (list nat);
- a24 : option Z;
- coef_div_modulus : nat;
-
- goldilocks : bool;
- karatsuba : bool;
- montgomery : bool;
- freeze : bool;
- ladderstep : bool;
-
- mul_code : option (Z^sz -> Z^sz -> Z^sz);
- square_code : option (Z^sz -> Z^sz);
- upper_bound_of_exponent_tight : Z -> Z;
- upper_bound_of_exponent_loose : Z -> Z;
- allowable_bit_widths : list nat;
- freeze_allowable_bit_widths : list nat;
- modinv_fuel : nat
- }.
-
- Declare Reduction cbv_CurveParameters
- := cbv [sz
- base
- bitwidth
- s
- c
- carry_chains
- a24
- coef_div_modulus
- goldilocks
- karatsuba
- montgomery
- freeze
- ladderstep
- mul_code
- square_code
- upper_bound_of_exponent_tight
- upper_bound_of_exponent_loose
- allowable_bit_widths
- freeze_allowable_bit_widths
- modinv_fuel].
-
- Ltac default_mul CP :=
- lazymatch (eval hnf in (mul_code CP)) with
- | None => reflexivity
- | Some ?mul_code
- => instantiate (1:=mul_code)
- end.
- Ltac default_square CP :=
- lazymatch (eval hnf in (square_code CP)) with
- | None => reflexivity
- | Some ?square_code
- => instantiate (1:=square_code)
- end.
-
- Local Notation list_n_if_not_exists n ls :=
- (if existsb (Nat.eqb n) ls
- then nil
- else [n]%nat)
- (only parsing).
- Local Notation list_8_if_not_exists ls
- := (list_n_if_not_exists 8%nat ls) (only parsing).
- Local Notation list_1_if_not_exists ls
- := (list_n_if_not_exists 1%nat ls) (only parsing).
-
- Definition fill_defaults_CurveParameters (CP : RawCurveParameters.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 karatsuba := defaulted (RawCurveParameters.karatsuba CP) false in
- let s := RawCurveParameters.s CP in
- let c := RawCurveParameters.c CP in
- let freeze
- := defaulted
- (RawCurveParameters.freeze CP)
- (s =? 2^(Qceiling (base * sz))) in
- let goldilocks :=
- defaulted
- (RawCurveParameters.goldilocks CP)
- (let k := Z.log2 s / 2 in
- (s - eval c) =? (2^(2*k) - 2^k - 1)) in
- let allowable_bit_widths
- := defaulted
- (RawCurveParameters.allowable_bit_widths CP)
- ((if montgomery
- then [1; 8]
- else nil)
- ++ (Z.to_nat bitwidth :: 2*Z.to_nat bitwidth :: nil))%nat in
- let upper_bound_of_exponent_tight
- := defaulted (RawCurveParameters.upper_bound_of_exponent_tight CP)
- (if montgomery
- then (fun exp => (2^exp - 1)%Z)
- else (fun exp => (2^exp + 2^(exp-3))%Z))
- (* max is [(0, 2^(exp+2) + 2^exp + 2^(exp-1) + 2^(exp-3) + 2^(exp-4) + 2^(exp-5) + 2^(exp-6) + 2^(exp-10) + 2^(exp-12) + 2^(exp-13) + 2^(exp-14) + 2^(exp-15) + 2^(exp-17) + 2^(exp-23) + 2^(exp-24))%Z] *) in
- let upper_bound_of_exponent_loose
- := defaulted (RawCurveParameters.upper_bound_of_exponent_loose CP)
- (if montgomery
- then (fun exp => (2^exp - 1)%Z)
- else (fun exp => (3 * upper_bound_of_exponent_tight exp)%Z)) in
- {|
- sz := sz;
- base := base;
- bitwidth := bitwidth;
- s := s;
- c := c;
- carry_chains := defaulted (RawCurveParameters.carry_chains CP) [seq 0 (pred sz); [0; 1]]%nat;
- a24 := RawCurveParameters.a24 CP;
- coef_div_modulus := defaulted (RawCurveParameters.coef_div_modulus CP) 0%nat;
-
- goldilocks := goldilocks;
- karatsuba := karatsuba;
- montgomery := montgomery;
- freeze := freeze;
- ladderstep := RawCurveParameters.ladderstep CP;
-
- mul_code := RawCurveParameters.mul_code CP;
- square_code := RawCurveParameters.square_code CP;
- upper_bound_of_exponent_tight := upper_bound_of_exponent_tight;
- upper_bound_of_exponent_loose := upper_bound_of_exponent_loose;
-
- allowable_bit_widths := allowable_bit_widths;
- freeze_allowable_bit_widths
- := defaulted
- (RawCurveParameters.freeze_extra_allowable_bit_widths CP)
- ((list_1_if_not_exists allowable_bit_widths)
- ++ (list_8_if_not_exists allowable_bit_widths))
- ++ allowable_bit_widths;
- modinv_fuel := defaulted (RawCurveParameters.modinv_fuel CP) (Z.to_nat (Z.log2_up s))
- |}.
-
- Ltac get_fill_CurveParameters CP :=
- let CP := (eval hnf in CP) in
- let v := (eval cbv [fill_defaults_CurveParameters] in
- (fill_defaults_CurveParameters CP)) in
- let v := (eval cbv_CurveParameters in v) in
- let v := (eval cbv_RawCurveParameters in v) in
- lazymatch v with
- | ({|
- sz := ?sz';
- base := ?base';
- bitwidth := ?bitwidth';
- s := ?s';
- c := ?c';
- carry_chains := ?carry_chains';
- a24 := ?a24';
- coef_div_modulus := ?coef_div_modulus';
- goldilocks := ?goldilocks';
- karatsuba := ?karatsuba';
- montgomery := ?montgomery';
- freeze := ?freeze';
- ladderstep := ?ladderstep';
- mul_code := ?mul_code';
- square_code := ?square_code';
- upper_bound_of_exponent_tight := ?upper_bound_of_exponent_tight';
- upper_bound_of_exponent_loose := ?upper_bound_of_exponent_loose';
- allowable_bit_widths := ?allowable_bit_widths';
- freeze_allowable_bit_widths := ?freeze_allowable_bit_widths';
- 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
- let karatsuba' := do_compute karatsuba' in
- let montgomery' := do_compute montgomery' in
- let freeze' := do_compute freeze' in
- let ladderstep' := do_compute ladderstep' in
- let allowable_bit_widths' := do_compute allowable_bit_widths' in
- let freeze_allowable_bit_widths' := do_compute freeze_allowable_bit_widths' in
- let modinv_fuel' := do_compute modinv_fuel' in
- constr:({|
- sz := sz';
- base := base';
- bitwidth := bitwidth';
- s := s';
- c := c';
- carry_chains := carry_chains';
- a24 := a24';
- coef_div_modulus := coef_div_modulus';
- goldilocks := goldilocks';
- karatsuba := karatsuba';
- montgomery := montgomery';
- freeze := freeze';
- ladderstep := ladderstep';
- mul_code := mul_code';
- square_code := square_code';
- upper_bound_of_exponent_tight := upper_bound_of_exponent_tight';
- upper_bound_of_exponent_loose := upper_bound_of_exponent_loose';
- allowable_bit_widths := allowable_bit_widths';
- freeze_allowable_bit_widths := freeze_allowable_bit_widths';
- modinv_fuel := modinv_fuel'
- |})
- end.
- Notation fill_CurveParameters CP := ltac:(let v := get_fill_CurveParameters CP in exact v) (only parsing).
-
- 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 :=
- internal_pose_of_CP CP CurveParameters.bitwidth bitwidth.
- Ltac pose_s CP s := (* don't want to compute, e.g., [2^255] *)
- internal_pose_of_CP CP CurveParameters.s s.
- Ltac pose_c CP c :=
- internal_pose_of_CP CP CurveParameters.c c.
- Ltac pose_carry_chains CP carry_chains :=
- internal_pose_of_CP CP CurveParameters.carry_chains carry_chains.
- Ltac pose_a24 CP a24 :=
- internal_pose_of_CP CP CurveParameters.a24 a24.
- Ltac pose_coef_div_modulus CP coef_div_modulus :=
- internal_pose_of_CP CP CurveParameters.coef_div_modulus coef_div_modulus.
- Ltac pose_goldilocks CP goldilocks :=
- internal_pose_of_CP CP CurveParameters.goldilocks goldilocks.
- Ltac pose_karatsuba CP karatsuba :=
- internal_pose_of_CP CP CurveParameters.karatsuba karatsuba.
- Ltac pose_montgomery CP montgomery :=
- internal_pose_of_CP CP CurveParameters.montgomery montgomery.
- Ltac pose_freeze CP freeze :=
- internal_pose_of_CP CP CurveParameters.freeze freeze.
- Ltac pose_ladderstep CP ladderstep :=
- internal_pose_of_CP CP CurveParameters.ladderstep ladderstep.
- Ltac pose_allowable_bit_widths CP allowable_bit_widths :=
- internal_pose_of_CP CP CurveParameters.allowable_bit_widths allowable_bit_widths.
- Ltac pose_freeze_allowable_bit_widths CP freeze_allowable_bit_widths :=
- internal_pose_of_CP CP CurveParameters.freeze_allowable_bit_widths freeze_allowable_bit_widths.
- Ltac pose_upper_bound_of_exponent_tight CP upper_bound_of_exponent_tight :=
- internal_pose_of_CP CP CurveParameters.upper_bound_of_exponent_tight upper_bound_of_exponent_tight.
- Ltac pose_upper_bound_of_exponent_loose CP upper_bound_of_exponent_loose :=
- internal_pose_of_CP CP CurveParameters.upper_bound_of_exponent_loose upper_bound_of_exponent_loose.
- Ltac pose_modinv_fuel CP modinv_fuel :=
- internal_pose_of_CP CP CurveParameters.modinv_fuel modinv_fuel.
- Ltac pose_mul_code CP mul_code :=
- internal_pose_of_CP CP CurveParameters.mul_code mul_code.
- Ltac pose_square_code CP square_code :=
- 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
- let sz := pose_sz CP sz in
- Tag.update pkg TAG.sz sz.
-
- Ltac add_bitwidth pkg :=
- let CP := Tag.get pkg TAG.CP in
- let bitwidth := fresh "bitwidth" in
- let bitwidth := pose_bitwidth CP bitwidth in
- Tag.update pkg TAG.bitwidth bitwidth.
-
- Ltac add_s pkg :=
- let CP := Tag.get pkg TAG.CP in
- let s := fresh "s" in
- let s := pose_s CP s in
- Tag.update pkg TAG.s s.
-
- Ltac add_c pkg :=
- let CP := Tag.get pkg TAG.CP in
- let c := fresh "c" in
- let c := pose_c CP c in
- Tag.update pkg TAG.c c.
-
- Ltac add_carry_chains pkg :=
- let CP := Tag.get pkg TAG.CP in
- let carry_chains := fresh "carry_chains" in
- let carry_chains := pose_carry_chains CP carry_chains in
- Tag.update pkg TAG.carry_chains carry_chains.
-
- Ltac add_a24 pkg :=
- let CP := Tag.get pkg TAG.CP in
- let a24 := fresh "a24" in
- let a24 := pose_a24 CP a24 in
- Tag.update pkg TAG.a24 a24.
-
- Ltac add_coef_div_modulus pkg :=
- let CP := Tag.get pkg TAG.CP in
- let coef_div_modulus := fresh "coef_div_modulus" in
- let coef_div_modulus := pose_coef_div_modulus CP coef_div_modulus in
- Tag.update pkg TAG.coef_div_modulus coef_div_modulus.
-
- Ltac add_goldilocks pkg :=
- let CP := Tag.get pkg TAG.CP in
- let goldilocks := fresh "goldilocks" in
- let goldilocks := pose_goldilocks CP goldilocks in
- Tag.update pkg TAG.goldilocks goldilocks.
-
- Ltac add_karatsuba pkg :=
- let CP := Tag.get pkg TAG.CP in
- let karatsuba := fresh "karatsuba" in
- let karatsuba := pose_karatsuba CP karatsuba in
- Tag.update pkg TAG.karatsuba karatsuba.
-
- Ltac add_montgomery pkg :=
- let CP := Tag.get pkg TAG.CP in
- let montgomery := fresh "montgomery" in
- let montgomery := pose_montgomery CP montgomery in
- Tag.update pkg TAG.montgomery montgomery.
-
- Ltac add_freeze pkg :=
- let CP := Tag.get pkg TAG.CP in
- let freeze := fresh "freeze" in
- let freeze := pose_freeze CP freeze in
- Tag.update pkg TAG.freeze freeze.
-
- Ltac add_ladderstep pkg :=
- let CP := Tag.get pkg TAG.CP in
- let ladderstep := fresh "ladderstep" in
- let ladderstep := pose_ladderstep CP ladderstep in
- Tag.update pkg TAG.ladderstep ladderstep.
-
- Ltac add_allowable_bit_widths pkg :=
- let CP := Tag.get pkg TAG.CP in
- let allowable_bit_widths := fresh "allowable_bit_widths" in
- let allowable_bit_widths := pose_allowable_bit_widths CP allowable_bit_widths in
- Tag.update pkg TAG.allowable_bit_widths allowable_bit_widths.
-
- Ltac add_freeze_allowable_bit_widths pkg :=
- let CP := Tag.get pkg TAG.CP in
- let freeze_allowable_bit_widths := fresh "freeze_allowable_bit_widths" in
- let freeze_allowable_bit_widths := pose_freeze_allowable_bit_widths CP freeze_allowable_bit_widths in
- Tag.update pkg TAG.freeze_allowable_bit_widths freeze_allowable_bit_widths.
-
- Ltac add_upper_bound_of_exponent_tight pkg :=
- let CP := Tag.get pkg TAG.CP in
- let upper_bound_of_exponent_tight := fresh "upper_bound_of_exponent_tight" in
- let upper_bound_of_exponent_tight := pose_upper_bound_of_exponent_tight CP upper_bound_of_exponent_tight in
- Tag.update pkg TAG.upper_bound_of_exponent_tight upper_bound_of_exponent_tight.
-
- Ltac add_upper_bound_of_exponent_loose pkg :=
- let CP := Tag.get pkg TAG.CP in
- let upper_bound_of_exponent_loose := fresh "upper_bound_of_exponent_loose" in
- let upper_bound_of_exponent_loose := pose_upper_bound_of_exponent_loose CP upper_bound_of_exponent_loose in
- Tag.update pkg TAG.upper_bound_of_exponent_loose upper_bound_of_exponent_loose.
-
- Ltac add_modinv_fuel pkg :=
- let CP := Tag.get pkg TAG.CP in
- let modinv_fuel := fresh "modinv_fuel" in
- let modinv_fuel := pose_modinv_fuel CP modinv_fuel in
- Tag.update pkg TAG.modinv_fuel modinv_fuel.
-
- Ltac add_mul_code pkg :=
- let CP := Tag.get pkg TAG.CP in
- let mul_code := fresh "mul_code" in
- let mul_code := pose_mul_code CP mul_code in
- Tag.update pkg TAG.mul_code mul_code.
-
- Ltac add_square_code pkg :=
- let CP := Tag.get pkg TAG.CP in
- let square_code := fresh "square_code" in
- let square_code := pose_square_code CP square_code in
- 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
- let pkg := add_c pkg in
- let pkg := add_carry_chains pkg in
- let pkg := add_a24 pkg in
- let pkg := add_coef_div_modulus pkg in
- let pkg := add_goldilocks pkg in
- let pkg := add_karatsuba pkg in
- let pkg := add_montgomery pkg in
- let pkg := add_freeze pkg in
- let pkg := add_ladderstep pkg in
- let pkg := add_allowable_bit_widths pkg in
- let pkg := add_freeze_allowable_bit_widths pkg in
- let pkg := add_upper_bound_of_exponent_tight pkg in
- let pkg := add_upper_bound_of_exponent_loose pkg in
- let pkg := add_modinv_fuel pkg in
- let pkg := add_mul_code pkg in
- let pkg := add_square_code pkg in
- Tag.strip_subst_local pkg.
-End CurveParameters.
diff --git a/src/Specific/Framework/CurveParametersPackage.v b/src/Specific/Framework/CurveParametersPackage.v
deleted file mode 100644
index 954080ad6..000000000
--- a/src/Specific/Framework/CurveParametersPackage.v
+++ /dev/null
@@ -1,90 +0,0 @@
-(* This file is autogenerated from CurveParameters.v by remake_packages.py *)
-Require Export Crypto.Specific.Framework.CurveParameters.
-Require Import Crypto.Specific.Framework.Packages.
-Require Import Crypto.Util.TagList.
-
-Ltac if_goldilocks pkg tac_true tac_false arg :=
- let goldilocks := Tag.get pkg TAG.goldilocks in
- let goldilocks := (eval vm_compute in (goldilocks : bool)) in
- lazymatch goldilocks with
- | true => tac_true arg
- | false => tac_false arg
- end.
-
-Ltac if_karatsuba pkg tac_true tac_false arg :=
- let karatsuba := Tag.get pkg TAG.karatsuba in
- let karatsuba := (eval vm_compute in (karatsuba : bool)) in
- lazymatch karatsuba with
- | true => tac_true arg
- | false => tac_false arg
- end.
-
-Ltac if_montgomery pkg tac_true tac_false arg :=
- let montgomery := Tag.get pkg TAG.montgomery in
- let montgomery := (eval vm_compute in (montgomery : bool)) in
- lazymatch montgomery with
- | true => tac_true arg
- | false => tac_false arg
- end.
-
-Ltac if_freeze pkg tac_true tac_false arg :=
- let freeze := Tag.get pkg TAG.freeze in
- let freeze := (eval vm_compute in (freeze : bool)) in
- lazymatch freeze with
- | true => tac_true arg
- | false => tac_false arg
- end.
-
-Ltac if_ladderstep pkg tac_true tac_false arg :=
- let ladderstep := Tag.get pkg TAG.ladderstep in
- let ladderstep := (eval vm_compute in (ladderstep : bool)) in
- lazymatch ladderstep with
- | true => tac_true arg
- | false => tac_false arg
- end.
-
-
-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.
- Notation bitwidth := (ltac:(let v := get_bitwidth () in exact v)) (only parsing).
- Ltac get_s _ := get TAG.s.
- Notation s := (ltac:(let v := get_s () in exact v)) (only parsing).
- Ltac get_c _ := get TAG.c.
- Notation c := (ltac:(let v := get_c () in exact v)) (only parsing).
- Ltac get_carry_chains _ := get TAG.carry_chains.
- Notation carry_chains := (ltac:(let v := get_carry_chains () in exact v)) (only parsing).
- Ltac get_a24 _ := get TAG.a24.
- Notation a24 := (ltac:(let v := get_a24 () in exact v)) (only parsing).
- Ltac get_coef_div_modulus _ := get TAG.coef_div_modulus.
- Notation coef_div_modulus := (ltac:(let v := get_coef_div_modulus () in exact v)) (only parsing).
- Ltac get_goldilocks _ := get TAG.goldilocks.
- Notation goldilocks := (ltac:(let v := get_goldilocks () in exact v)) (only parsing).
- Ltac get_karatsuba _ := get TAG.karatsuba.
- Notation karatsuba := (ltac:(let v := get_karatsuba () in exact v)) (only parsing).
- Ltac get_montgomery _ := get TAG.montgomery.
- Notation montgomery := (ltac:(let v := get_montgomery () in exact v)) (only parsing).
- Ltac get_freeze _ := get TAG.freeze.
- Notation freeze := (ltac:(let v := get_freeze () in exact v)) (only parsing).
- Ltac get_ladderstep _ := get TAG.ladderstep.
- Notation ladderstep := (ltac:(let v := get_ladderstep () in exact v)) (only parsing).
- Ltac get_allowable_bit_widths _ := get TAG.allowable_bit_widths.
- Notation allowable_bit_widths := (ltac:(let v := get_allowable_bit_widths () in exact v)) (only parsing).
- Ltac get_freeze_allowable_bit_widths _ := get TAG.freeze_allowable_bit_widths.
- Notation freeze_allowable_bit_widths := (ltac:(let v := get_freeze_allowable_bit_widths () in exact v)) (only parsing).
- Ltac get_upper_bound_of_exponent_tight _ := get TAG.upper_bound_of_exponent_tight.
- Notation upper_bound_of_exponent_tight := (ltac:(let v := get_upper_bound_of_exponent_tight () in exact v)) (only parsing).
- Ltac get_upper_bound_of_exponent_loose _ := get TAG.upper_bound_of_exponent_loose.
- Notation upper_bound_of_exponent_loose := (ltac:(let v := get_upper_bound_of_exponent_loose () in exact v)) (only parsing).
- Ltac get_modinv_fuel _ := get TAG.modinv_fuel.
- Notation modinv_fuel := (ltac:(let v := get_modinv_fuel () in exact v)) (only parsing).
- Ltac get_mul_code _ := get TAG.mul_code.
- Notation mul_code := (ltac:(let v := get_mul_code () in exact v)) (only parsing).
- Ltac get_square_code _ := get TAG.square_code.
- Notation square_code := (ltac:(let v := get_square_code () in exact v)) (only parsing).
-End MakeCurveParametersPackage.
diff --git a/src/Specific/Framework/IntegrationTestDisplayCommon.v b/src/Specific/Framework/IntegrationTestDisplayCommon.v
deleted file mode 100644
index a3bf52d85..000000000
--- a/src/Specific/Framework/IntegrationTestDisplayCommon.v
+++ /dev/null
@@ -1,24 +0,0 @@
-Require Import Crypto.Util.Sigma.Lift.
-Require Import Crypto.Util.Sigma.Associativity.
-Require Import Crypto.Util.Sigma.MapProjections.
-Require Import Crypto.Specific.Framework.IntegrationTestTemporaryMiscCommon.
-Require Import Crypto.Compilers.Z.Bounds.Interpretation.
-Require Import Crypto.Compilers.Eta.
-Require Export Coq.ZArith.ZArith.
-Require Export Crypto.Util.LetIn.
-Require Export Crypto.Util.FixedWordSizes.
-Require Export Crypto.Compilers.Syntax.
-Require Export Crypto.Specific.Framework.IntegrationTestDisplayCommonTactics.
-Require Export Crypto.Compilers.Z.HexNotationConstants.
-Require Export Crypto.Util.Notations.
-Require Export Crypto.Compilers.Z.CNotations.
-
-Global Arguments Pos.to_nat !_ / .
-Global Arguments InterpEta {_ _ _ _ _}.
-Global Set Printing Width 2000000.
-
-Notation "'Interp-η' f x" := (Eta.InterpEta f x) (format "'Interp-η' '//' f '//' x", at level 200, f at next level, x at next level).
-Notation ReturnType := (interp_flat_type _).
-Notation "'let' ( a , b ) := c 'in' d" := (let (a, b) := c in d) (at level 200, d at level 200, format "'let' ( a , b ) := c 'in' '//' d").
-
-Require Export Coq.Unicode.Utf8. (* for better line breaks at function display; must come last *)
diff --git a/src/Specific/Framework/IntegrationTestDisplayCommonTactics.v b/src/Specific/Framework/IntegrationTestDisplayCommonTactics.v
deleted file mode 100644
index 2b15616fe..000000000
--- a/src/Specific/Framework/IntegrationTestDisplayCommonTactics.v
+++ /dev/null
@@ -1,149 +0,0 @@
-Require Import Crypto.Util.Sigma.Lift.
-Require Import Crypto.Util.Sigma.Associativity.
-Require Import Crypto.Util.Sigma.MapProjections.
-Require Import Crypto.Specific.Framework.IntegrationTestTemporaryMiscCommon.
-Require Import Crypto.Compilers.Z.Bounds.Interpretation.
-Require Import Crypto.Compilers.Eta.
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Util.LetIn.
-Require Import Crypto.Util.FixedWordSizes.
-Require Import Crypto.Compilers.Syntax.
-Require Export Crypto.Util.Notations.
-
-Global Arguments Pos.to_nat !_ / .
-
-Ltac display_helper_gen f make_hole :=
- let display_helper f := display_helper_gen f make_hole in
- let do_make_hole _ :=
- match goal with
- | [ |- ?T ] => let h := make_hole T in
- refine h
- end in
- let t := type of f in
- lazymatch (eval hnf in t) with
- | forall _ : ?A, ?B
- => let x := fresh "x" in
- lazymatch (eval hnf in A) with
- | @sig ?A ?P
- => lazymatch (eval hnf in A) with
- | sig _
- => let f' := constr:(fun x : A => f (exist P x ltac:(do_make_hole ()))) in
- display_helper f'
- | _
- => refine (fun x : A => _);
- let f' := constr:(f (exist P x ltac:(do_make_hole ()))) in
- display_helper f'
- end
- | _
- => lazymatch A with
- | prod ?A ?B
- => let f' := constr:(fun (a : A) (b : B) => f (a, b)%core) in
- display_helper f'
- | _
- => refine (fun x : A => _);
- let f' := constr:(f x) in
- display_helper f'
- end
- end
- | @sig ?A _
- => lazymatch (eval hnf in A) with
- | sig _ => display_helper (proj1_sig f)
- | _ => refine (proj1_sig f)
- end
- | _
- => lazymatch t with
- | prod _ _
- => let a := fresh "a" in
- let b := fresh "b" in
- refine (let (a, b) := f in
- pair _ _);
- [ display_helper a | display_helper b ]
- | _ => refine f
- end
- end.
-Ltac display_helper f := display_helper_gen f ltac:(fun T => open_constr:(_)).
-Ltac display_helper_with_admit f :=
- constr:(fun admit : forall T, T
- => ltac:(display_helper_gen f ltac:(fun T => constr:(admit T)))).
-Ltac try_strip_admit f :=
- lazymatch f with
- | fun _ : forall T, T => ?P => P
- | ?P => P
- end.
-Ltac refine_display f :=
- let do_red F := (eval cbv [f
- proj1_sig fst snd
- Tuple.map Tuple.map'
- Lift.lift1_sig Lift.lift2_sig Lift.lift3_sig Lift.lift4_sig Lift.lift4_sig_sig
- MapProjections.proj2_sig_map Associativity.sig_sig_assoc
- sig_conj_by_impl2
- sig_eq_trans_exist1 sig_R_trans_exist1 sig_eq_trans_rewrite_fun_exist1
- sig_R_trans_rewrite_fun_exist1
- adjust_tuple2_tuple2_sig
- Tuple.tuple Tuple.tuple'
- FixedWordSizes.wordT FixedWordSizes.word_case FixedWordSizes.ZToWord FixedWordSizes.word_case_dep
- Bounds.actual_logsz Bounds.round_up_to_in_list Bounds.option_min
- List.map List.filter List.fold_right List.fold_left
- Nat.leb Nat.min
- PeanoNat.Nat.log2 PeanoNat.Nat.log2_iter PeanoNat.Nat.pred
- Bounds.bounds_to_base_type
- interp_flat_type
- Z.leb Z.compare Pos.compare Pos.compare_cont
- ZRange.lower ZRange.upper
- BinPos.Pos.to_nat PeanoNat.Nat.pow
- ] in F) in
- let ret := display_helper_with_admit (proj1_sig f) in
- let ret := do_red ret in
- let ret := lazymatch ret with
- | context[match ?sz with O => _ | _ => _ end] => (eval cbv [sz] in ret)
- | _ => ret
- end in
- let ret := (eval simpl @Z.to_nat in ret) in
- let ret := (eval cbv [interp_flat_type] in ret) in
- let ret := try_strip_admit ret in
- refine ret.
-Tactic Notation "display" open_constr(f) :=
- refine_display f.
-Notation display f := (ltac:(let v := f in display v)) (only parsing).
-
-(** Some helper tactics for actually pulling out the expression *)
-Ltac strip_InterpEta term :=
- let retype e :=
- lazymatch type of e with
- | forall var, @Syntax.expr ?base_type_code ?op var ?T
- => constr:(e : @Syntax.Expr base_type_code op T)
- | _ => e
- end in
- lazymatch term with
- | fun x : ?T => ?P
- => let maybe_x := fresh x in
- let probably_not_x := fresh maybe_x in
- let not_x := fresh probably_not_x in
- lazymatch
- constr:(fun x : T
- => match P with
- | not_x => ltac:(let v := (eval cbv delta [not_x] in not_x) in
- let v' := strip_InterpEta v in
- exact v')
- end)
- with
- | fun _ => ?P => retype P
- | ?P => retype P
- end
- | @Eta.InterpEta _ _ _ _ _ ?e
- => e
- | @Eta.InterpEta _ _ _ _ _ ?e _
- => e
- | let (a, b) := ?f in _
- => f
- | _ => let dummy := match goal with
- | _ => fail 1 "strip_InterpEta:" term
- end in
- I
- end.
-
-Ltac extract_Expr f :=
- let k := constr:(ltac:(refine_display f)) in
- let k := strip_InterpEta k in
- k.
-Notation extract_Expr f := (ltac:(let v := f in let v := extract_Expr v in refine v)) (only parsing).
diff --git a/src/Specific/Framework/IntegrationTestTemporaryMiscCommon.v b/src/Specific/Framework/IntegrationTestTemporaryMiscCommon.v
deleted file mode 100644
index 1ccbb72a7..000000000
--- a/src/Specific/Framework/IntegrationTestTemporaryMiscCommon.v
+++ /dev/null
@@ -1,360 +0,0 @@
-(*** XXX TODO MOVE ALL THINGS IN THIS FILE TO BETTER PLACES *)
-Require Import Coq.ZArith.BinInt.
-Require Import Coq.Classes.Morphisms.
-Require Import Crypto.Util.Tuple.
-Require Import Crypto.Util.BoundedWord.
-Require Import Crypto.Util.Sigma.Lift.
-Require Import Crypto.Util.Sigma.Associativity.
-Require Import Crypto.Util.Sigma.MapProjections.
-Require Import Crypto.Util.ZRange.
-Require Import Crypto.Util.ZUtil.Tactics.LtbToLt.
-Require Import Crypto.Util.Tactics.MoveLetIn.
-Require Import Crypto.Util.Tactics.DestructHead.
-
-Definition adjust_tuple2_tuple2_sig {A P Q}
- (v : { a : { a : tuple (tuple A 2) 2 | (P (fst (fst a)) /\ P (snd (fst a))) /\ (P (fst (snd a)) /\ P (snd (snd a))) }
- | Q (exist _ _ (proj1 (proj1 (proj2_sig a))),
- exist _ _ (proj2 (proj1 (proj2_sig a))),
- (exist _ _ (proj1 (proj2 (proj2_sig a))),
- exist _ _ (proj2 (proj2 (proj2_sig a))))) })
- : { a : tuple (tuple (@sig A P) 2) 2 | Q a }.
-Proof.
- eexists.
- exact (proj2_sig v).
-Defined.
-
-(** TODO MOVE ME *)
-(** The [eexists_sig_etransitivity_R R] tactic takes a goal of the form
- [{ a | R (f a) b }], and splits it into two goals, [R ?b' b] and
- [{ a | R (f a) ?b' }], where [?b'] is a fresh evar. *)
-Definition sig_R_trans_exist1 {B} (R : B -> B -> Prop) {HT : Transitive R} {A} (f : A -> B)
- (b b' : B)
- (pf : R b' b)
- (y : { a : A | R (f a) b' })
- : { a : A | R (f a) b }
- := let 'exist a p := y in exist _ a (transitivity (R:=R) p pf).
-Ltac eexists_sig_etransitivity_R R :=
- lazymatch goal with
- | [ |- @sig ?A ?P ]
- => let RT := type of R in
- let B := lazymatch (eval hnf in RT) with ?B -> _ => B end in
- let lem := constr:(@sig_R_trans_exist1 B R _ A _ _ : forall b' pf y, @sig A P) in
- let lem := open_constr:(lem _) in
- simple refine (lem _ _)
- end.
-Tactic Notation "eexists_sig_etransitivity_R" open_constr(R) := eexists_sig_etransitivity_R R.
-(** The [eexists_sig_etransitivity] tactic takes a goal of the form
- [{ a | f a = b }], and splits it into two goals, [?b' = b] and
- [{ a | f a = ?b' }], where [?b'] is a fresh evar. *)
-Definition sig_eq_trans_exist1 {A B}
- := @sig_R_trans_exist1 B (@eq B) _ A.
-Ltac eexists_sig_etransitivity :=
- lazymatch goal with
- | [ |- { a : ?A | @?f a = ?b } ]
- => let lem := open_constr:(@sig_eq_trans_exist1 A _ f b _) in
- simple refine (lem _ (_ : { a : A | _ }))
- end.
-Definition sig_R_trans_rewrite_fun_exist1 {B} (R : B -> B -> Prop) {HT : Transitive R}
-{A} (f : A -> B) (b : B) (f' : A -> B)
- (pf : forall a, R (f a) (f' a))
- (y : { a : A | R (f' a) b })
- : { a : A | R (f a) b }
- := let 'exist a p := y in exist _ a (transitivity (R:=R) (pf a) p).
-Ltac eexists_sig_etransitivity_for_rewrite_fun_R R :=
- lazymatch goal with
- | [ |- @sig ?A ?P ]
- => let RT := type of R in
- let B := lazymatch (eval hnf in RT) with ?B -> _ => B end in
- let lem := constr:(@sig_R_trans_rewrite_fun_exist1 B R _ A _ _ : forall f' pf y, @sig A P) in
- let lem := open_constr:(lem _) in
- simple refine (lem _ _); cbv beta
- end.
-Tactic Notation "eexists_sig_etransitivity_for_rewrite_fun_R" open_constr(R)
- := eexists_sig_etransitivity_for_rewrite_fun_R R.
-Definition sig_eq_trans_rewrite_fun_exist1 {A B} (f f' : A -> B)
- (b : B)
- (pf : forall a, f' a = f a)
- (y : { a : A | f' a = b })
- : { a : A | f a = b }
- := let 'exist a p := y in exist _ a (eq_trans (eq_sym (pf a)) p).
-Ltac eexists_sig_etransitivity_for_rewrite_fun :=
- lazymatch goal with
- | [ |- { a : ?A | @?f a = ?b } ]
- => let lem := open_constr:(@sig_eq_trans_rewrite_fun_exist1 A _ f _ b) in
- simple refine (lem _ _); cbv beta
- end.
-Definition sig_conj_by_impl2 {A} {P Q : A -> Prop} (H : forall a : A, Q a -> P a)
- (H' : { a : A | Q a })
- : { a : A | P a /\ Q a }
- := let (a, p) := H' in exist _ a (conj (H a p) p).
-
-
-(** [apply_lift_sig] picks out which version of the [liftN_sig] lemma
- to apply, and builds the appropriate arguments *)
-Ltac make_P_for_apply_lift_sig P :=
- lazymatch P with
- | fun (f : ?F) => forall (a : ?A), @?P f a
- => constr:(fun (a : A)
- => ltac:(lazymatch constr:(fun (f : F)
- => ltac:(let v := (eval cbv beta in (P f a)) in
- lazymatch (eval pattern (f a) in v) with
- | ?k _ => exact k
- end))
- with
- | fun _ => ?P
- => let v := make_P_for_apply_lift_sig P in
- exact v
- end))
- | _ => P
- end.
-Ltac apply_lift_sig :=
- let P := lazymatch goal with |- sig ?P => P end in
- let P := make_P_for_apply_lift_sig P in
- lazymatch goal with
- | [ |- { f | forall a b c d e, _ } ]
- => fail "apply_lift_sig does not yet support ≥ 5 binders"
- | [ |- { f | forall (a : ?A) (b : ?B) (c : ?C) (d : ?D), _ } ]
- => apply (@lift4_sig A B C D _ P)
- | [ |- { f | forall (a : ?A) (b : ?B) (c : ?C), _ } ]
- => apply (@lift3_sig A B C _ P)
- | [ |- { f | forall (a : ?A) (b : ?B), _ } ]
- => apply (@lift2_sig A B _ P)
- | [ |- { f | forall (a : ?A), _ } ]
- => apply (@lift1_sig A _ P)
- | [ |- { f | _ } ]
- => idtac
- end.
-Ltac get_proj2_sig_map_arg_helper P :=
- lazymatch P with
- | (fun e => ?A -> @?B e)
- => let B' := get_proj2_sig_map_arg_helper B in
- uconstr:(A -> B')
- | _ => uconstr:(_ : Prop)
- end.
-Ltac get_proj2_sig_map_arg _ :=
- lazymatch goal with
- | [ |- { e : ?T | @?E e } ]
- => let P := get_proj2_sig_map_arg_helper E in
- uconstr:(fun e : T => P)
- end.
-Ltac get_phi1_for_preglue _ :=
- lazymatch goal with
- | [ |- { e | @?E e } ]
- => lazymatch E with
- | context[Tuple.map (Tuple.map ?phi) _ = _]
- => phi
- | context[?phi _ = _]
- => phi
- end
- end.
-Ltac get_phi2_for_preglue _ :=
- lazymatch goal with
- | [ |- { e | @?E e } ]
- => lazymatch E with
- | context[_ = ?f (Tuple.map ?phi _)]
- => phi
- | context[_ = ?f (?phi _)]
- => phi
- | context[_ = ?phi _]
- => phi
- end
- end.
-Ltac start_preglue :=
- apply_lift_sig; intros; cbv beta iota zeta;
- let phi := get_phi1_for_preglue () in
- let phi2 := get_phi2_for_preglue () in
- let P' := get_proj2_sig_map_arg () in
- refine (proj2_sig_map (P:=P') _ _);
- [ let FINAL := fresh "FINAL" in
- let a := fresh "a" in
- intros a FINAL;
- repeat (let H := fresh in intro H; specialize (FINAL H));
- lazymatch goal with
- | [ |- ?phi _ = ?RHS ]
- => refine (@eq_trans _ _ _ RHS FINAL _); cbv [phi phi2]; clear a FINAL
- | [ |- _ /\ Tuple.map (Tuple.map ?phi) _ = _ ]
- => split; cbv [phi phi2]; [ refine (proj1 FINAL); shelve | ]
- end
- | cbv [phi phi2] ].
-Ltac do_set_sig f_sig :=
- let fZ := fresh f_sig in
- set (fZ := proj1_sig f_sig);
- context_to_dlet_in_rhs fZ;
- try cbv beta iota delta [proj1_sig f_sig] in fZ;
- cbv beta delta [fZ]; clear fZ;
- cbv beta iota delta [fst snd].
-Ltac do_set_sig_1arg f_sig :=
- let fZ := fresh f_sig in
- set (fZ := proj1_sig f_sig);
- context_to_dlet_in_rhs (fZ _);
- try cbn beta iota delta [proj1_sig f_sig] in fZ;
- try cbv [f_sig] in fZ;
- cbv beta delta [fZ]; clear fZ;
- cbv beta iota delta [fst snd].
-Ltac do_set_sigs _ :=
- lazymatch goal with
- | [ |- context[@proj1_sig ?a ?b ?f_sig] ]
- => let fZ := fresh f_sig in
- set (fZ := proj1_sig f_sig);
- context_to_dlet_in_rhs fZ;
- do_set_sigs (); (* we recurse before unfolding, because that's faster *)
- try cbv beta iota delta [proj1_sig f_sig] in fZ;
- cbv beta delta [fZ];
- cbv beta iota delta [fst snd]
- | _ => idtac
- end.
-Ltac trim_after_do_rewrite_with_sig _ :=
- repeat match goal with
- | [ |- Tuple.map ?f _ = Tuple.map ?f _ ]
- => apply f_equal
- end.
-Ltac do_rewrite_with_sig_no_set_by f_sig by_tac :=
- let lem := constr:(proj2_sig f_sig) in
- let lemT := type of lem in
- let lemT := (eval cbv beta zeta in lemT) in
- rewrite <- (lem : lemT) by by_tac ();
- trim_after_do_rewrite_with_sig ().
-Ltac do_rewrite_with_sig_by f_sig by_tac :=
- do_rewrite_with_sig_no_set_by f_sig by_tac;
- do_set_sig f_sig.
-Ltac do_rewrite_with_sig_1arg_by f_sig by_tac :=
- do_rewrite_with_sig_no_set_by f_sig by_tac;
- do_set_sig_1arg f_sig.
-Ltac do_rewrite_with_sig f_sig := do_rewrite_with_sig_by f_sig ltac:(fun _ => idtac).
-Ltac do_rewrite_with_sig_1arg f_sig := do_rewrite_with_sig_1arg_by f_sig ltac:(fun _ => idtac).
-Ltac do_rewrite_with_1sig_add_carry_by f_sig carry_sig by_tac :=
- let fZ := fresh f_sig in
- rewrite <- (proj2_sig f_sig) by by_tac ();
- symmetry; rewrite <- (proj2_sig carry_sig) by by_tac (); symmetry;
- pose (fun a => proj1_sig carry_sig (proj1_sig f_sig a)) as fZ;
- lazymatch goal with
- | [ |- context G[proj1_sig carry_sig (proj1_sig f_sig ?a)] ]
- => let G' := context G[fZ a] in change G'
- end;
- context_to_dlet_in_rhs fZ; cbv beta delta [fZ];
- try cbv beta iota delta [proj1_sig f_sig carry_sig];
- cbv beta iota delta [fst snd].
-Ltac do_rewrite_with_1sig_add_carry f_sig carry_sig := do_rewrite_with_1sig_add_carry_by f_sig carry_sig ltac:(fun _ => idtac).
-Ltac do_rewrite_with_2sig_add_carry_by f_sig carry_sig by_tac :=
- let fZ := fresh f_sig in
- rewrite <- (proj2_sig f_sig) by by_tac ();
- symmetry; rewrite <- (proj2_sig carry_sig) by by_tac (); symmetry;
- pose (fun a b => proj1_sig carry_sig (proj1_sig f_sig a b)) as fZ;
- lazymatch goal with
- | [ |- context G[proj1_sig carry_sig (proj1_sig f_sig ?a ?b)] ]
- => let G' := context G[fZ a b] in change G'
- end;
- context_to_dlet_in_rhs fZ; cbv beta delta [fZ];
- try cbv beta iota delta [proj1_sig f_sig carry_sig];
- cbv beta iota delta [fst snd].
-Ltac do_rewrite_with_2sig_add_carry f_sig carry_sig := do_rewrite_with_2sig_add_carry_by f_sig carry_sig ltac:(fun _ => idtac).
-Ltac unmap_map_tuple _ :=
- repeat match goal with
- | [ |- context[Tuple.map (n:=?N) (fun x : ?T => ?f (?g x))] ]
- => rewrite <- (Tuple.map_map (n:=N) f g
- : pointwise_relation _ eq _ (Tuple.map (n:=N) (fun x : T => f (g x))))
- end.
-Ltac get_feW_bounded boundedT :=
- lazymatch boundedT with
- | and ?X ?Y => get_feW_bounded X
- | ?feW_bounded _ => feW_bounded
- end.
-Ltac subst_feW _ :=
- let T := lazymatch goal with |- @sig ?T _ => T end in
- let boundedT := lazymatch goal with |- { e | ?A -> _ } => A end in
- let feW_bounded := get_feW_bounded boundedT in
- let feW := lazymatch type of feW_bounded with ?feW -> Prop => feW end in
- cbv [feW feW_bounded];
- try clear feW feW_bounded.
-Ltac finish_conjoined_preglue _ :=
- [ > match goal with
- | [ FINAL : _ /\ ?e |- _ ] => is_evar e; refine (proj2 FINAL)
- end
- | try subst_feW () ].
-Ltac fin_preglue :=
- [ > reflexivity
- | repeat sig_dlet_in_rhs_to_context;
- apply (fun f => proj2_sig_map (fun THIS_NAME_MUST_NOT_BE_UNDERSCORE_TO_WORK_AROUND_CONSTR_MATCHING_ANAOMLIES___BUT_NOTE_THAT_IF_THIS_NAME_IS_LOWERCASE_A___THEN_REIFICATION_STACK_OVERFLOWS___AND_I_HAVE_NO_IDEA_WHATS_GOING_ON p => f_equal f p)) ].
-
-Ltac factor_out_bounds_and_strip_eval op_bounded op_sig_side_conditions_t :=
- let feBW_small := lazymatch goal with |- { f : ?feBW_small | _ } => feBW_small end in
- Associativity.sig_sig_assoc;
- apply sig_conj_by_impl2;
- [ let H := fresh in
- intros ? H;
- try lazymatch goal with
- | [ |- (?eval _ < _)%Z ]
- => cbv [eval]
- end;
- rewrite H; clear H;
- eapply Z.le_lt_trans;
- [ apply Z.eq_le_incl, f_equal | apply op_bounded ];
- [ repeat match goal with
- | [ |- ?f ?x = ?g ?y ]
- => is_evar y; unify x y;
- apply (f_equal (fun fg => fg x))
- end;
- clear; abstract reflexivity
- | .. ];
- op_sig_side_conditions_t ()
- | apply (fun f => proj2_sig_map (fun THIS_NAME_MUST_NOT_BE_UNDERSCORE_TO_WORK_AROUND_CONSTR_MATCHING_ANAOMLIES___BUT_NOTE_THAT_IF_THIS_NAME_IS_LOWERCASE_A___THEN_REIFICATION_STACK_OVERFLOWS___AND_I_HAVE_NO_IDEA_WHATS_GOING_ON p => f_equal f p));
- cbv [proj1_sig];
- repeat match goal with
- | [ H : feBW_small |- _ ] => destruct H as [? _]
- end ].
-
-Ltac op_sig_side_conditions_t _ :=
- try (hnf; rewrite <- (ZRange.is_bounded_by_None_repeat_In_iff_lt _ _ _)); destruct_head_hnf' sig; try assumption.
-
-Local Open Scope Z_scope.
-(* XXX TODO: Clean this up *)
-Ltac nonzero_preglue op_sig cbv_runtime :=
- let phi := lazymatch goal with
- | [ |- context[Decidable.dec (?phi _ = _)] ] => phi
- end in
- let do_red _ :=
- lazymatch (eval cbv [phi] in phi) with
- | (fun x => ?montgomery_to_F (?meval (?feBW_of_feBW_small _)))
- => cbv [feBW_of_feBW_small phi meval]
- end in
- lazymatch goal with
- | [ |- @sig (?feBW_small -> BoundedWord 1 _ ?bound1) _ ]
- => let b1 := (eval vm_compute in bound1) in
- change bound1 with b1
- end;
- apply_lift_sig; intros; eexists_sig_etransitivity;
- do_red ();
- [ refine (_ : (if Decidable.dec (_ = 0) then true else false) = _);
- lazymatch goal with
- | [ |- (if Decidable.dec ?x then _ else _) = (if Decidable.dec ?y then _ else _) ]
- => cut (x <-> y);
- [ destruct (Decidable.dec x), (Decidable.dec y); try reflexivity; intros [? ?];
- generalize dependent x; generalize dependent y; solve [ intuition congruence ]
- | ]
- end;
- etransitivity; [ | eapply (proj2_sig op_sig) ];
- [ | solve [ op_sig_side_conditions_t () ].. ];
- reflexivity
- | ];
- let decP := lazymatch goal with |- { c | _ = if Decidable.dec (?decP = 0) then _ else _ } => decP end in
- apply (@proj2_sig_map _ (fun c => BoundedWordToZ 1 _ _ c = decP) _);
- [ let a' := fresh "a'" in
- let H' := fresh "H'" in
- intros a' H'; rewrite H';
- let H := fresh in
- lazymatch goal with |- context[Decidable.dec ?x] => destruct (Decidable.dec x) as [H|H]; try rewrite H end;
- [ reflexivity
- | let H := fresh in
- lazymatch goal with |- context[?x =? 0] => destruct (x =? 0) eqn:? end;
- try reflexivity;
- Z.ltb_to_lt; congruence ]
- | ];
- eexists_sig_etransitivity;
- [ do_set_sig op_sig; cbv_runtime (); reflexivity
- | ];
- sig_dlet_in_rhs_to_context;
- cbv [proj1_sig];
- match goal with
- | [ |- context[match ?v with exist _ _ => _ end] ]
- => is_var v; destruct v as [? _]
- end.
diff --git a/src/Specific/Framework/MontgomeryReificationTypes.v b/src/Specific/Framework/MontgomeryReificationTypes.v
deleted file mode 100644
index 2e28effa5..000000000
--- a/src/Specific/Framework/MontgomeryReificationTypes.v
+++ /dev/null
@@ -1,46 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Coq.micromega.Lia.
-Require Import Coq.Lists.List.
-Local Open Scope Z_scope.
-
-Require Import Crypto.Arithmetic.Core.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Util.FixedWordSizes.
-Require Import Crypto.Util.Tuple.
-Require Import Crypto.Util.ZRange Crypto.Util.BoundedWord.
-Require Import Crypto.Util.Tactics.DestructHead.
-Require Import Crypto.Util.Decidable.
-
-Require Crypto.Arithmetic.Saturated.MontgomeryAPI.
-
-Require Import Crypto.Util.Tactics.PoseTermWithName.
-Require Import Crypto.Util.Tactics.CacheTerm.
-
-Ltac pose_meval feBW_tight r meval :=
- cache_term_with_type_by
- (feBW_tight -> Z)
- ltac:(exact (fun x : feBW_tight => MontgomeryAPI.eval (Z.pos r) (BoundedWordToZ _ _ _ x)))
- meval.
-
-Ltac pose_feBW_small sz feBW_tight meval r m_enc feBW_small :=
- cache_term
- { v : feBW_tight | meval v < MontgomeryAPI.eval (n:=sz) (Z.pos r) m_enc }
- feBW_small.
-
-Ltac pose_feBW_tight_of_feBW_small feBW_tight feBW_small feBW_tight_of_feBW_small :=
- cache_term_with_type_by
- (feBW_small -> feBW_tight)
- ltac:(refine (@proj1_sig _ _))
- feBW_tight_of_feBW_small.
-
-Ltac pose_phiM feBW_tight m meval montgomery_to_F phiM :=
- cache_term_with_type_by
- (feBW_tight -> F m)
- ltac:(exact (fun x : feBW_tight => montgomery_to_F (meval x)))
- phiM.
-
-Ltac pose_phiM_small feBW_small feBW_tight_of_feBW_small m meval montgomery_to_F phiM_small :=
- cache_term_with_type_by
- (feBW_small -> F m)
- ltac:(exact (fun x : feBW_small => montgomery_to_F (meval (feBW_tight_of_feBW_small x))))
- phiM_small.
diff --git a/src/Specific/Framework/MontgomeryReificationTypesPackage.v b/src/Specific/Framework/MontgomeryReificationTypesPackage.v
deleted file mode 100644
index 1be4afda5..000000000
--- a/src/Specific/Framework/MontgomeryReificationTypesPackage.v
+++ /dev/null
@@ -1,94 +0,0 @@
-(* This file is autogenerated from MontgomeryReificationTypes.v by remake_packages.py *)
-Require Import Crypto.Specific.Framework.CurveParametersPackage.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.BasePackage.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.MontgomeryPackage.
-Require Import Crypto.Specific.Framework.ReificationTypesPackage.
-Require Export Crypto.Specific.Framework.MontgomeryReificationTypes.
-Require Import Crypto.Specific.Framework.Packages.
-Require Import Crypto.Util.TagList.
-
-Module TAG.
- Inductive tags := meval | feBW_small | feBW_tight_of_feBW_small | phiM | phiM_small.
-End TAG.
-
-Ltac add_meval pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let feBW_tight := Tag.get pkg TAG.feBW_tight in
- let r := Tag.get pkg TAG.r in
- let meval := fresh "meval" in
- let meval := pose_meval feBW_tight r meval in
- Tag.update pkg TAG.meval meval)
- ltac:(fun _ => pkg)
- ().
-Ltac add_feBW_small pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let sz := Tag.get pkg TAG.sz in
- let feBW_tight := Tag.get pkg TAG.feBW_tight in
- let meval := Tag.get pkg TAG.meval in
- let r := Tag.get pkg TAG.r in
- let m_enc := Tag.get pkg TAG.m_enc in
- let feBW_small := fresh "feBW_small" in
- let feBW_small := pose_feBW_small sz feBW_tight meval r m_enc feBW_small in
- Tag.update pkg TAG.feBW_small feBW_small)
- ltac:(fun _ => pkg)
- ().
-Ltac add_feBW_tight_of_feBW_small pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let feBW_tight := Tag.get pkg TAG.feBW_tight in
- let feBW_small := Tag.get pkg TAG.feBW_small in
- let feBW_tight_of_feBW_small := fresh "feBW_tight_of_feBW_small" in
- let feBW_tight_of_feBW_small := pose_feBW_tight_of_feBW_small feBW_tight feBW_small feBW_tight_of_feBW_small in
- Tag.update pkg TAG.feBW_tight_of_feBW_small feBW_tight_of_feBW_small)
- ltac:(fun _ => pkg)
- ().
-Ltac add_phiM pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let feBW_tight := Tag.get pkg TAG.feBW_tight in
- let m := Tag.get pkg TAG.m in
- let meval := Tag.get pkg TAG.meval in
- let montgomery_to_F := Tag.get pkg TAG.montgomery_to_F in
- let phiM := fresh "phiM" in
- let phiM := pose_phiM feBW_tight m meval montgomery_to_F phiM in
- Tag.update pkg TAG.phiM phiM)
- ltac:(fun _ => pkg)
- ().
-Ltac add_phiM_small pkg :=
- if_montgomery
- pkg
- ltac:(fun _ => let feBW_small := Tag.get pkg TAG.feBW_small in
- let feBW_tight_of_feBW_small := Tag.get pkg TAG.feBW_tight_of_feBW_small in
- let m := Tag.get pkg TAG.m in
- let meval := Tag.get pkg TAG.meval in
- let montgomery_to_F := Tag.get pkg TAG.montgomery_to_F in
- let phiM_small := fresh "phiM_small" in
- let phiM_small := pose_phiM_small feBW_small feBW_tight_of_feBW_small m meval montgomery_to_F phiM_small in
- Tag.update pkg TAG.phiM_small phiM_small)
- ltac:(fun _ => pkg)
- ().
-Ltac add_MontgomeryReificationTypes_package pkg :=
- let pkg := add_meval pkg in
- let pkg := add_feBW_small pkg in
- let pkg := add_feBW_tight_of_feBW_small pkg in
- let pkg := add_phiM pkg in
- let pkg := add_phiM_small pkg in
- Tag.strip_subst_local pkg.
-
-
-Module MakeMontgomeryReificationTypesPackage (PKG : PrePackage).
- Module Import MakeMontgomeryReificationTypesPackageInternal := MakePackageBase PKG.
-
- Ltac get_meval _ := get TAG.meval.
- Notation meval := (ltac:(let v := get_meval () in exact v)) (only parsing).
- Ltac get_feBW_small _ := get TAG.feBW_small.
- Notation feBW_small := (ltac:(let v := get_feBW_small () in exact v)) (only parsing).
- Ltac get_feBW_tight_of_feBW_small _ := get TAG.feBW_tight_of_feBW_small.
- Notation feBW_tight_of_feBW_small := (ltac:(let v := get_feBW_tight_of_feBW_small () in exact v)) (only parsing).
- Ltac get_phiM _ := get TAG.phiM.
- Notation phiM := (ltac:(let v := get_phiM () in exact v)) (only parsing).
- Ltac get_phiM_small _ := get TAG.phiM_small.
- Notation phiM_small := (ltac:(let v := get_phiM_small () in exact v)) (only parsing).
-End MakeMontgomeryReificationTypesPackage.
diff --git a/src/Specific/Framework/OutputType.v b/src/Specific/Framework/OutputType.v
deleted file mode 100644
index 80fced923..000000000
--- a/src/Specific/Framework/OutputType.v
+++ /dev/null
@@ -1,164 +0,0 @@
-Require Import Coq.ZArith.BinIntDef.
-Require Import Crypto.Arithmetic.Core. Import B.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Compilers.Syntax.
-Require Import Crypto.Compilers.SmartMap.
-Require Import Crypto.Compilers.Tuple.
-Require Import Crypto.Compilers.ExprInversion.
-Require Import Crypto.Compilers.Z.Syntax.Util.
-Require Import Crypto.Compilers.Z.Syntax.
-Require Import Crypto.Compilers.Tuple.
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.Base.
-Require Import Crypto.Util.Notations.
-Import CurveParameters.Notations.
-
-Local Coercion Z.to_nat : Z >-> nat.
-Local Notation interp_flat_type := (interp_flat_type interp_base_type).
-
-Section gen.
- Context (curve : RawCurveParameters.CurveParameters).
-
- Section gen_base_type.
- Context (b : base_type).
-
- Definition m := Z.to_pos (curve.(s) - Associational.eval curve.(c))%Z.
- Definition rT := ((Tbase b)^curve.(sz))%ctype.
- Definition T' := (interp_flat_type rT).
- Definition RT := (Unit -> rT)%ctype.
- Definition wt := (wt_gen curve.(base)).
- Definition encode : F m -> Expr RT
- := fun v var
- => Abs
- (fun _
- => SmartPairf
- (flat_interp_untuple
- (T:=Tbase _)
- (Tuple.map
- (fun v => Op (OpConst v) TT)
- (@Positional.Fencode wt curve.(sz) m (@modulo_cps) (@div_cps) v)))).
- Definition decode : T' -> F m
- := fun v => @Positional.Fdecode
- wt (curve.(sz)) m
- (Tuple.map interpToZ (flat_interp_tuple (T:=Tbase _) v)).
- End gen_base_type.
-
- Local Notation TW := (TWord (Z.log2_up curve.(bitwidth))).
- Local Notation RTZ := (RT TZ).
- Local Notation rTZ := (rT TZ).
- Local Notation RTW := (RT TW).
- Local Notation rTW := (rT TW).
-
- Record SynthesisOutput :=
- {
- zeroZ : Expr RTZ;
- oneZ : Expr RTZ;
- addZ : Expr (rTZ * rTZ -> rTZ); (* does not include carry *)
- subZ : Expr (rTZ * rTZ -> rTZ); (* does not include carry *)
- carry_mulZ : Expr (rTZ * rTZ -> rTZ); (* includes carry *)
- carry_squareZ : Expr (rTZ -> rTZ); (* includes carry *)
- oppZ : Expr (rTZ -> rTZ); (* does not include carry *)
- carryZ : Expr (rTZ -> rTZ);
- carry_addZ : Expr (rTZ * rTZ -> rTZ)
- := (carryZ ∘ addZ)%expr;
- carry_subZ : Expr (rTZ * rTZ -> rTZ)
- := (carryZ ∘ subZ)%expr;
- carry_oppZ : Expr (rTZ -> rTZ)
- := (carryZ ∘ oppZ)%expr;
-
- zeroW : Expr RTW;
- oneW : Expr RTW;
- carry_addW : Expr (rTW * rTW -> rTW); (* includes carry *)
- carry_subW : Expr (rTW * rTW -> rTW); (* includes carry *)
- carry_mulW : Expr (rTW * rTW -> rTW); (* includes carry *)
- carry_squareW : Expr (rTW -> rTW); (* includes carry *)
- carry_oppW : Expr (rTW -> rTW); (* does not include carry *)
-
- PZ : T' TZ -> Prop;
- PW : T' TW -> Prop
- := fun v => PZ (tuple_map (A:=Tbase TW) (B:=Tbase TZ) (SmartVarfMap (@interpToZ)) v);
-
- encodeZ_valid : forall v, _;
- encodeZ_sig := fun v => exist PZ (Interp (encode TZ v) tt) (encodeZ_valid v);
- encodeZ_correct : forall v, decode TZ (Interp (encode TZ v) tt) = v;
-
- decodeZ_sig := fun v : sig PZ => decode TZ (proj1_sig v);
-
- zeroZ_correct : zeroZ = encode _ 0%F; (* which equality to use here? *)
- oneZ_correct : oneZ = encode _ 1%F; (* which equality to use here? *)
- zeroZ_sig := encodeZ_sig 0%F;
- oneZ_sig := encodeZ_sig 1%F;
-
- oppZ_valid : forall x, PZ x -> PZ (Interp carry_oppZ x);
- oppZ_sig := fun x => exist PZ _ (@oppZ_valid (proj1_sig x) (proj2_sig x));
-
- addZ_valid : forall x y, PZ x -> PZ y -> PZ (Interp carry_addZ (x, y));
- addZ_sig := fun x y => exist PZ _ (@addZ_valid (proj1_sig x) (proj1_sig y) (proj2_sig x) (proj2_sig y));
-
- subZ_valid : forall x y, PZ x -> PZ y -> PZ (Interp carry_subZ (x, y));
- subZ_sig := fun x y => exist PZ _ (@subZ_valid (proj1_sig x) (proj1_sig y) (proj2_sig x) (proj2_sig y));
-
- mulZ_valid : forall x y, PZ x -> PZ y -> PZ (Interp carry_mulZ (x, y));
- mulZ_sig := fun x y => exist PZ _ (@mulZ_valid (proj1_sig x) (proj1_sig y) (proj2_sig x) (proj2_sig y));
-
- squareZ_correct : forall x, PZ x -> Interp carry_squareZ x = Interp carry_mulZ (x, x);
-
-
- encodeW_valid : forall v, _;
- encodeW_sig := fun v => exist PW (Interp (encode TW v) tt) (encodeW_valid v);
- encodeW_correct : forall v, decode TW (Interp (encode TW v) tt) = v;
-
- decodeW_sig := fun v : sig PW => decode TW (proj1_sig v);
-
- zeroW_correct : zeroW = encode _ 0%F; (* which equality to use here? *)
- oneW_correct : oneW = encode _ 1%F; (* which equality to use here? *)
- zeroW_sig := encodeW_sig 0%F;
- oneW_sig := encodeW_sig 1%F;
-
- oppW_valid : forall x, PW x -> PW (Interp carry_oppW x);
- oppW_sig := fun x => exist PW _ (@oppW_valid (proj1_sig x) (proj2_sig x));
-
- addW_valid : forall x y, PW x -> PW y -> PW (Interp carry_addW (x, y));
- addW_sig := fun x y => exist PW _ (@addW_valid (proj1_sig x) (proj1_sig y) (proj2_sig x) (proj2_sig y));
-
- subW_valid : forall x y, PW x -> PW y -> PW (Interp carry_subW (x, y));
- subW_sig := fun x y => exist PW _ (@subW_valid (proj1_sig x) (proj1_sig y) (proj2_sig x) (proj2_sig y));
-
- mulW_valid : forall x y, PW x -> PW y -> PW (Interp carry_mulW (x, y));
- mulW_sig := fun x y => exist PW _ (@mulW_valid (proj1_sig x) (proj1_sig y) (proj2_sig x) (proj2_sig y));
-
- squareW_correct : forall x, PW x -> Interp carry_squareW x = Interp carry_mulW (x, x);
-
- T_Z := { v : T' TZ | PZ v };
- eqTZ : T_Z -> T_Z -> Prop
- := fun x y => eq (decode _ (proj1_sig x)) (decode _ (proj1_sig y));
- ringZ : @Hierarchy.ring
- T_Z eqTZ zeroZ_sig oneZ_sig oppZ_sig addZ_sig subZ_sig mulZ_sig;
- encodeZ_homomorphism
- : @Ring.is_homomorphism
- (F m) eq 1%F F.add F.mul
- T_Z eqTZ oneZ_sig addZ_sig mulZ_sig
- encodeZ_sig;
- decodeZ_homomorphism
- : @Ring.is_homomorphism
- T_Z eqTZ oneZ_sig addZ_sig mulZ_sig
- (F m) eq 1%F F.add F.mul
- decodeZ_sig;
-
- T_W := { v : T' TW | PW v };
- eqTW : T_W -> T_W -> Prop
- := fun x y => eq (decode _ (proj1_sig x)) (decode _ (proj1_sig y));
- ringW : @Hierarchy.ring
- T_W eqTW zeroW_sig oneW_sig oppW_sig addW_sig subW_sig mulW_sig;
- encodeW_homomorphism
- : @Ring.is_homomorphism
- (F m) eq 1%F F.add F.mul
- T_W eqTW oneW_sig addW_sig mulW_sig
- encodeW_sig;
- decodeW_homomorphism
- : @Ring.is_homomorphism
- T_W eqTW oneW_sig addW_sig mulW_sig
- (F m) eq 1%F F.add F.mul
- decodeW_sig
- }.
-End gen.
diff --git a/src/Specific/Framework/Packages.v b/src/Specific/Framework/Packages.v
deleted file mode 100644
index 14b02b766..000000000
--- a/src/Specific/Framework/Packages.v
+++ /dev/null
@@ -1,12 +0,0 @@
-Require Import Crypto.Util.TagList.
-
-Module Type PrePackage.
- Parameter package : Tag.Context.
-End PrePackage.
-
-Module MakePackageBase (PKG : PrePackage).
- Ltac get_package _ := eval hnf in PKG.package.
- Ltac get key :=
- let pkg := get_package () in
- Tag.get pkg key.
-End MakePackageBase.
diff --git a/src/Specific/Framework/RawCurveParameters.v b/src/Specific/Framework/RawCurveParameters.v
deleted file mode 100644
index 5ff22d2f1..000000000
--- a/src/Specific/Framework/RawCurveParameters.v
+++ /dev/null
@@ -1,77 +0,0 @@
-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.
-
- Open Scope list_scope.
- Open Scope Z_scope.
-
- Notation limb := (Z * Z)%type.
- Infix "^" := Tuple.tuple : type_scope.
-End Notations.
-
-Record CurveParameters :=
- {
- sz : nat;
- base : Q;
- bitwidth : Z;
- s : Z;
- c : list limb;
- carry_chains
- : option (list (list nat)) (* defaults to [seq 0 (pred sz) :: (0 :: 1 :: nil) :: nil] *);
- a24 : option Z;
- coef_div_modulus : option nat;
-
- goldilocks : option bool; (* defaults to true iff the prime ([s-c]) is of the form [2²ᵏ - 2ᵏ - 1] *)
- karatsuba : option bool; (* defaults to false, currently unused *)
- montgomery : bool;
- freeze : option bool; (* defaults to true iff [s = 2^(base * sz)] *)
- ladderstep : bool;
-
- mul_code : option (Z^sz -> Z^sz -> Z^sz);
- square_code : option (Z^sz -> Z^sz);
- upper_bound_of_exponent_tight
- : option (Z -> Z) (* defaults to [fun exp => 2^exp + 2^(exp-3)] for non-montgomery, [fun exp => 2^exp - 1] for montgomery *);
- upper_bound_of_exponent_loose
- : option (Z -> Z) (* defaults to [3 * upper_bound_of_exponent_tight] for non-montgomery, [fun exp => 2^exp - 1] for montgomery *);
- allowable_bit_widths
- : option (list nat) (* defaults to [bitwidth :: 2*bitwidth :: nil] *);
- freeze_extra_allowable_bit_widths
- : option (list nat) (* defaults to [8 :: nil] *);
- modinv_fuel : option nat
- }.
-
-Declare Reduction cbv_RawCurveParameters
- := cbv [sz
- base
- bitwidth
- s
- c
- carry_chains
- a24
- coef_div_modulus
- goldilocks
- karatsuba
- montgomery
- freeze
- ladderstep
- mul_code
- square_code
- upper_bound_of_exponent_tight
- upper_bound_of_exponent_loose
- allowable_bit_widths
- freeze_extra_allowable_bit_widths
- modinv_fuel].
-
-(*
-Ltac extra_prove_mul_eq := idtac.
-Ltac extra_prove_square_eq := idtac.
- *)
diff --git a/src/Specific/Framework/ReificationTypes.v b/src/Specific/Framework/ReificationTypes.v
deleted file mode 100644
index 47542d1c4..000000000
--- a/src/Specific/Framework/ReificationTypes.v
+++ /dev/null
@@ -1,229 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Coq.micromega.Lia.
-Require Import Coq.Lists.List.
-Local Open Scope Z_scope.
-
-Require Import Crypto.Arithmetic.Core.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Util.FixedWordSizes.
-Require Import Crypto.Util.Tuple.
-Require Import Crypto.Util.ZRange Crypto.Util.BoundedWord.
-Require Import Crypto.Util.Tactics.DestructHead.
-Require Import Crypto.Util.ZUtil.Tactics.LtbToLt.
-Require Import Crypto.Util.Bool.
-Require Import Crypto.Util.Decidable.
-
-Require Import Crypto.Util.Tactics.PoseTermWithName.
-Require Import Crypto.Util.Tactics.CacheTerm.
-
-Ltac pose_local_limb_widths wt sz limb_widths :=
- pose_term_with
- ltac:(fun _ => (eval vm_compute in (List.map (fun i => Z.log2 (wt (S i) / wt i)) (seq 0 sz))))
- limb_widths.
-
-Ltac get_b_of upper_bound_of_exponent :=
- constr:(fun exp => {| lower := 0 ; upper := upper_bound_of_exponent exp |}%Z). (* max is [(0, 2^(exp+2) + 2^exp + 2^(exp-1) + 2^(exp-3) + 2^(exp-4) + 2^(exp-5) + 2^(exp-6) + 2^(exp-10) + 2^(exp-12) + 2^(exp-13) + 2^(exp-14) + 2^(exp-15) + 2^(exp-17) + 2^(exp-23) + 2^(exp-24))%Z] *)
-
-(* The definition [bounds_exp] is a tuple-version of the limb-widths,
- which are the [exp] argument in [b_of] above, i.e., the approximate
- base-2 exponent of the bounds on the limb in that position. *)
-Ltac pose_local_bounds_exp sz limb_widths bounds_exp :=
- pose_term_with_type
- (Tuple.tuple Z sz)
- ltac:(fun _ => eval compute in
- (Tuple.from_list sz limb_widths eq_refl))
- bounds_exp.
-
-Ltac internal_pose_local_bounds sz upper_bound_of_exponent bounds_exp bounds :=
- let b_of := get_b_of upper_bound_of_exponent in
- pose_term_with_type
- (Tuple.tuple zrange sz)
- ltac:(fun _ => eval compute in
- (Tuple.map (fun e => b_of e) bounds_exp))
- bounds.
-Ltac pose_local_bounds_tight sz upper_bound_of_exponent_tight bounds_exp bounds_tight :=
- internal_pose_local_bounds sz upper_bound_of_exponent_tight bounds_exp bounds_tight.
-Ltac pose_local_bounds_loose sz upper_bound_of_exponent_loose bounds_exp bounds_loose :=
- internal_pose_local_bounds sz upper_bound_of_exponent_loose bounds_exp bounds_loose.
-Ltac pose_local_bounds_limbwidths sz bounds_exp bounds_limbwidths :=
- internal_pose_local_bounds sz (fun exp => (2^exp - 1)%Z) bounds_exp bounds_limbwidths.
-
-Ltac pose_bound1 r bound1 :=
- cache_term_with_type_by
- zrange
- ltac:(exact {| lower := 0 ; upper := Z.pos r-1 |})
- bound1.
-
-Ltac pose_local_lgbitwidth bitwidth lgbitwidth :=
- pose_term_with
- ltac:(fun _ => eval compute in (Z.to_nat (Z.log2_up bitwidth)))
- lgbitwidth.
-
-Ltac pose_local_adjusted_bitwidth' lgbitwidth adjusted_bitwidth' :=
- pose_term_with
- ltac:(fun _ => eval compute in (2^lgbitwidth)%nat)
- adjusted_bitwidth'.
-Ltac pose_adjusted_bitwidth adjusted_bitwidth' adjusted_bitwidth :=
- cache_term adjusted_bitwidth' adjusted_bitwidth.
-
-Ltac pose_local_feZ sz feZ :=
- pose_term_with
- ltac:(fun _ => constr:(tuple Z sz))
- feZ.
-
-Ltac pose_feW sz lgbitwidth feW :=
- cache_term_with_type_by
- Type
- ltac:(let v := eval cbv [lgbitwidth] in (tuple (wordT lgbitwidth) sz) in exact v)
- feW.
-Ltac internal_pose_feW_bounded feW bounds feW_bounded :=
- cache_term_with_type_by
- (feW -> Prop)
- ltac:(let v := eval cbv [bounds] in (fun w : feW => is_bounded_by None bounds (map wordToZ w)) in exact_no_check v)
- feW_bounded.
-Ltac pose_feW_tight_bounded feW bounds_tight feW_tight_bounded :=
- internal_pose_feW_bounded feW bounds_tight feW_tight_bounded.
-Ltac pose_feW_loose_bounded feW bounds_loose feW_loose_bounded :=
- internal_pose_feW_bounded feW bounds_loose feW_loose_bounded.
-Ltac pose_feW_limbwidths_bounded feW bounds_limbwidths feW_limbwidths_bounded :=
- internal_pose_feW_bounded feW bounds_limbwidths feW_limbwidths_bounded.
-
-Ltac internal_pose_feBW sz adjusted_bitwidth' bounds feBW :=
- cache_term_with_type_by
- Type
- ltac:(let v := eval cbv [adjusted_bitwidth' bounds] in (BoundedWord sz adjusted_bitwidth' bounds) in exact v)
- feBW.
-Ltac pose_feBW_tight sz adjusted_bitwidth' bounds_tight feBW_tight :=
- internal_pose_feBW sz adjusted_bitwidth' bounds_tight feBW_tight.
-Ltac pose_feBW_loose sz adjusted_bitwidth' bounds_loose feBW_loose :=
- internal_pose_feBW sz adjusted_bitwidth' bounds_loose feBW_loose.
-Ltac pose_feBW_limbwidths sz adjusted_bitwidth' bounds_limbwidths feBW_limbwidths :=
- internal_pose_feBW sz adjusted_bitwidth' bounds_limbwidths feBW_limbwidths.
-
-Lemma relax'_pf {sz in_bounds out_bounds} {v : tuple Z sz}
- (Htight : fieldwiseb is_tighter_than_bool in_bounds out_bounds = true)
- : is_bounded_by None in_bounds v -> is_bounded_by None out_bounds v.
-Proof.
- destruct sz as [|sz]; simpl in *; trivial.
- induction sz as [|sz IHsz]; simpl in *;
- repeat first [ exact I
- | progress destruct_head'_prod
- | progress destruct_head' zrange
- | progress cbv [is_tighter_than_bool] in *
- | progress split_andb
- | progress Z.ltb_to_lt
- | progress cbn [fst snd ZRange.lower ZRange.upper] in *
- | progress destruct_head_hnf' and
- | progress intros
- | apply conj
- | omega
- | solve [ eauto ] ].
-Qed.
-
-Definition relax' {sz adjusted_bitwidth'} {in_bounds out_bounds}
- (Htight : Tuple.fieldwiseb ZRange.is_tighter_than_bool in_bounds out_bounds = true)
- : BoundedWord sz adjusted_bitwidth' in_bounds
- -> BoundedWord sz adjusted_bitwidth' out_bounds
- := fun w => exist _ (proj1_sig w) (relax'_pf Htight (proj2_sig w)).
-
-Ltac internal_pose_feBW_relax sz feBW_in feBW_out feBW_relax :=
- cache_term_with_type_by
- (feBW_in -> feBW_out)
- ltac:(refine (@relax' sz _ _ _ _);
- lazymatch goal with
- | [ |- fieldwiseb is_tighter_than_bool ?in_bounds ?out_bounds = true ]
- => try cbv [in_bounds];
- try cbv [out_bounds]
- end;
- abstract vm_cast_no_check (eq_refl true))
- feBW_relax.
-Ltac pose_feBW_relax sz feBW_tight feBW_loose feBW_relax :=
- internal_pose_feBW_relax sz feBW_tight feBW_loose feBW_relax.
-Ltac pose_feBW_relax_limbwidths_to_tight sz feBW_limbwidths feBW_tight feBW_relax_limbwidths_to_tight :=
- internal_pose_feBW_relax sz feBW_limbwidths feBW_tight feBW_relax_limbwidths_to_tight.
-Ltac pose_feBW_relax_limbwidths_to_loose sz feBW_limbwidths feBW_loose feBW_relax_limbwidths_to_loose :=
- internal_pose_feBW_relax sz feBW_limbwidths feBW_loose feBW_relax_limbwidths_to_loose.
-
-Lemma feBW_bounded_helper'
- sz adjusted_bitwidth' bounds
- (feBW := BoundedWord sz adjusted_bitwidth' bounds)
- (wt : nat -> Z)
- (Hwt : forall i, 0 <= wt i)
- : forall (a : feBW),
- B.Positional.eval wt (map lower bounds)
- <= B.Positional.eval wt (BoundedWordToZ sz adjusted_bitwidth' bounds a)
- <= B.Positional.eval wt (map upper bounds).
-Proof.
- let a := fresh "a" in
- intro a;
- destruct a as [a H]; unfold BoundedWordToZ, proj1_sig.
- destruct sz as [|sz].
- { cbv -[Z.le Z.lt Z.mul]; lia. }
- { cbn [tuple map] in *.
- revert dependent wt; induction sz as [|sz IHsz]; intros.
- { cbv -[Z.le Z.lt wordToZ Z.mul Z.pow Z.add lower upper Nat.log2 wordT] in *.
- repeat match goal with
- | [ |- context[@wordToZ ?n ?x] ]
- => generalize dependent (@wordToZ n x); intros
- | [ H : forall j, 0 <= wt j |- context[wt ?i] ]
- => pose proof (H i); generalize dependent (wt i); intros
- end.
- nia. }
- { pose proof (Hwt 0%nat).
- cbn [tuple' map'] in *.
- destruct a as [a' a], bounds as [bounds b], H as [H [H' _]].
- cbn [fst snd] in *.
- setoid_rewrite (@B.Positional.eval_step (S _)).
- specialize (IHsz bounds a' H (fun i => wt (S i)) (fun i => Hwt _)).
- nia. } }
-Qed.
-Lemma feBW_bounded_helper
- sz adjusted_bitwidth' bounds
- (feBW := BoundedWord sz adjusted_bitwidth' bounds)
- (wt : nat -> Z)
- (Hwt : forall i, 0 <= wt i)
- l u
- : l <= B.Positional.eval wt (map lower bounds)
- /\ B.Positional.eval wt (map upper bounds) < u
- -> forall (a : feBW),
- l <= B.Positional.eval wt (BoundedWordToZ sz adjusted_bitwidth' bounds a) < u.
-Proof.
- intros [Hl Hu] a; split;
- [ eapply Z.le_trans | eapply Z.le_lt_trans ];
- [ | eapply feBW_bounded_helper' | eapply feBW_bounded_helper' | ];
- assumption.
-Qed.
-
-Ltac internal_pose_feBW_bounded freeze wt sz feBW adjusted_bitwidth' bounds m wt_nonneg feBW_bounded :=
- lazymatch (eval vm_compute in freeze) with
- | true
- => cache_proof_with_type_by
- (forall a : feBW, 0 <= B.Positional.eval wt (BoundedWordToZ sz adjusted_bitwidth' bounds a) < 2 * Z.pos m)
- ltac:(apply (@feBW_bounded_helper sz adjusted_bitwidth' bounds wt wt_nonneg);
- cbv -[Z.lt Z.le];
- clear; vm_decide)
- feBW_bounded
- | false
- => cache_term tt feBW_bounded
- end.
-Ltac pose_feBW_tight_bounded freeze wt sz feBW_tight adjusted_bitwidth' bounds_tight m wt_nonneg feBW_tight_bounded :=
- internal_pose_feBW_bounded freeze wt sz feBW_tight adjusted_bitwidth' bounds_tight m wt_nonneg feBW_tight_bounded.
-Ltac pose_feBW_limbwidths_bounded freeze wt sz feBW_limbwidths adjusted_bitwidth' bounds_limbwidths m wt_nonneg feBW_limbwidths_bounded :=
- internal_pose_feBW_bounded freeze wt sz feBW_limbwidths adjusted_bitwidth' bounds_limbwidths m wt_nonneg feBW_limbwidths_bounded.
-
-Ltac pose_phiW feW m wt phiW :=
- cache_term_with_type_by
- (feW -> F m)
- ltac:(exact (fun x : feW => B.Positional.Fdecode wt (Tuple.map wordToZ x)))
- phiW.
-Ltac internal_pose_phiBW feBW m wt phiBW :=
- cache_term_with_type_by
- (feBW -> F m)
- ltac:(exact (fun x : feBW => B.Positional.Fdecode wt (BoundedWordToZ _ _ _ x)))
- phiBW.
-Ltac pose_phiBW_tight feBW_tight m wt phiBW_tight :=
- internal_pose_phiBW feBW_tight m wt phiBW_tight.
-Ltac pose_phiBW_loose feBW_loose m wt phiBW_loose :=
- internal_pose_phiBW feBW_loose m wt phiBW_loose.
-Ltac pose_phiBW_limbwidths feBW_limbwidths m wt phiBW_limbwidths :=
- internal_pose_phiBW feBW_limbwidths m wt phiBW_limbwidths.
diff --git a/src/Specific/Framework/ReificationTypesPackage.v b/src/Specific/Framework/ReificationTypesPackage.v
deleted file mode 100644
index d10d72202..000000000
--- a/src/Specific/Framework/ReificationTypesPackage.v
+++ /dev/null
@@ -1,282 +0,0 @@
-(* This file is autogenerated from ReificationTypes.v by remake_packages.py *)
-Require Import Crypto.Specific.Framework.CurveParametersPackage.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.BasePackage.
-Require Export Crypto.Specific.Framework.ReificationTypes.
-Require Import Crypto.Specific.Framework.Packages.
-Require Import Crypto.Util.TagList.
-
-Module TAG.
- Inductive tags := limb_widths | bounds_exp | bounds_tight | bounds_loose | bounds_limbwidths | bound1 | lgbitwidth | adjusted_bitwidth' | adjusted_bitwidth | feZ | feW | feW_tight_bounded | feW_loose_bounded | feW_limbwidths_bounded | feBW_tight | feBW_loose | feBW_limbwidths | feBW_relax | feBW_relax_limbwidths_to_tight | feBW_relax_limbwidths_to_loose | feBW_tight_bounded | feBW_limbwidths_bounded | phiW | phiBW_tight | phiBW_loose | phiBW_limbwidths.
-End TAG.
-
-Ltac add_limb_widths pkg :=
- let wt := Tag.get pkg TAG.wt in
- let sz := Tag.get pkg TAG.sz in
- let limb_widths := fresh "limb_widths" in
- let limb_widths := pose_local_limb_widths wt sz limb_widths in
- Tag.local_update pkg TAG.limb_widths limb_widths.
-
-Ltac add_bounds_exp pkg :=
- let sz := Tag.get pkg TAG.sz in
- let limb_widths := Tag.get pkg TAG.limb_widths in
- let bounds_exp := fresh "bounds_exp" in
- let bounds_exp := pose_local_bounds_exp sz limb_widths bounds_exp in
- Tag.local_update pkg TAG.bounds_exp bounds_exp.
-
-Ltac add_bounds_tight pkg :=
- let sz := Tag.get pkg TAG.sz in
- let upper_bound_of_exponent_tight := Tag.get pkg TAG.upper_bound_of_exponent_tight in
- let bounds_exp := Tag.get pkg TAG.bounds_exp in
- let bounds_tight := fresh "bounds_tight" in
- let bounds_tight := pose_local_bounds_tight sz upper_bound_of_exponent_tight bounds_exp bounds_tight in
- Tag.local_update pkg TAG.bounds_tight bounds_tight.
-
-Ltac add_bounds_loose pkg :=
- let sz := Tag.get pkg TAG.sz in
- let upper_bound_of_exponent_loose := Tag.get pkg TAG.upper_bound_of_exponent_loose in
- let bounds_exp := Tag.get pkg TAG.bounds_exp in
- let bounds_loose := fresh "bounds_loose" in
- let bounds_loose := pose_local_bounds_loose sz upper_bound_of_exponent_loose bounds_exp bounds_loose in
- Tag.local_update pkg TAG.bounds_loose bounds_loose.
-
-Ltac add_bounds_limbwidths pkg :=
- let sz := Tag.get pkg TAG.sz in
- let bounds_exp := Tag.get pkg TAG.bounds_exp in
- let bounds_limbwidths := fresh "bounds_limbwidths" in
- let bounds_limbwidths := pose_local_bounds_limbwidths sz bounds_exp bounds_limbwidths in
- Tag.local_update pkg TAG.bounds_limbwidths bounds_limbwidths.
-
-Ltac add_bound1 pkg :=
- let r := Tag.get pkg TAG.r in
- let bound1 := fresh "bound1" in
- let bound1 := pose_bound1 r bound1 in
- Tag.update pkg TAG.bound1 bound1.
-
-Ltac add_lgbitwidth pkg :=
- let bitwidth := Tag.get pkg TAG.bitwidth in
- let lgbitwidth := fresh "lgbitwidth" in
- let lgbitwidth := pose_local_lgbitwidth bitwidth lgbitwidth in
- Tag.local_update pkg TAG.lgbitwidth lgbitwidth.
-
-Ltac add_adjusted_bitwidth' pkg :=
- let lgbitwidth := Tag.get pkg TAG.lgbitwidth in
- let adjusted_bitwidth' := fresh "adjusted_bitwidth'" in
- let adjusted_bitwidth' := pose_local_adjusted_bitwidth' lgbitwidth adjusted_bitwidth' in
- Tag.local_update pkg TAG.adjusted_bitwidth' adjusted_bitwidth'.
-
-Ltac add_adjusted_bitwidth pkg :=
- let adjusted_bitwidth' := Tag.get pkg TAG.adjusted_bitwidth' in
- let adjusted_bitwidth := fresh "adjusted_bitwidth" in
- let adjusted_bitwidth := pose_adjusted_bitwidth adjusted_bitwidth' adjusted_bitwidth in
- Tag.update pkg TAG.adjusted_bitwidth adjusted_bitwidth.
-
-Ltac add_feZ pkg :=
- let sz := Tag.get pkg TAG.sz in
- let feZ := fresh "feZ" in
- let feZ := pose_local_feZ sz feZ in
- Tag.local_update pkg TAG.feZ feZ.
-
-Ltac add_feW pkg :=
- let sz := Tag.get pkg TAG.sz in
- let lgbitwidth := Tag.get pkg TAG.lgbitwidth in
- let feW := fresh "feW" in
- let feW := pose_feW sz lgbitwidth feW in
- Tag.update pkg TAG.feW feW.
-
-Ltac add_feW_tight_bounded pkg :=
- let feW := Tag.get pkg TAG.feW in
- let bounds_tight := Tag.get pkg TAG.bounds_tight in
- let feW_tight_bounded := fresh "feW_tight_bounded" in
- let feW_tight_bounded := pose_feW_tight_bounded feW bounds_tight feW_tight_bounded in
- Tag.update pkg TAG.feW_tight_bounded feW_tight_bounded.
-
-Ltac add_feW_loose_bounded pkg :=
- let feW := Tag.get pkg TAG.feW in
- let bounds_loose := Tag.get pkg TAG.bounds_loose in
- let feW_loose_bounded := fresh "feW_loose_bounded" in
- let feW_loose_bounded := pose_feW_loose_bounded feW bounds_loose feW_loose_bounded in
- Tag.update pkg TAG.feW_loose_bounded feW_loose_bounded.
-
-Ltac add_feW_limbwidths_bounded pkg :=
- let feW := Tag.get pkg TAG.feW in
- let bounds_limbwidths := Tag.get pkg TAG.bounds_limbwidths in
- let feW_limbwidths_bounded := fresh "feW_limbwidths_bounded" in
- let feW_limbwidths_bounded := pose_feW_limbwidths_bounded feW bounds_limbwidths feW_limbwidths_bounded in
- Tag.update pkg TAG.feW_limbwidths_bounded feW_limbwidths_bounded.
-
-Ltac add_feBW_tight pkg :=
- let sz := Tag.get pkg TAG.sz in
- let adjusted_bitwidth' := Tag.get pkg TAG.adjusted_bitwidth' in
- let bounds_tight := Tag.get pkg TAG.bounds_tight in
- let feBW_tight := fresh "feBW_tight" in
- let feBW_tight := pose_feBW_tight sz adjusted_bitwidth' bounds_tight feBW_tight in
- Tag.update pkg TAG.feBW_tight feBW_tight.
-
-Ltac add_feBW_loose pkg :=
- let sz := Tag.get pkg TAG.sz in
- let adjusted_bitwidth' := Tag.get pkg TAG.adjusted_bitwidth' in
- let bounds_loose := Tag.get pkg TAG.bounds_loose in
- let feBW_loose := fresh "feBW_loose" in
- let feBW_loose := pose_feBW_loose sz adjusted_bitwidth' bounds_loose feBW_loose in
- Tag.update pkg TAG.feBW_loose feBW_loose.
-
-Ltac add_feBW_limbwidths pkg :=
- let sz := Tag.get pkg TAG.sz in
- let adjusted_bitwidth' := Tag.get pkg TAG.adjusted_bitwidth' in
- let bounds_limbwidths := Tag.get pkg TAG.bounds_limbwidths in
- let feBW_limbwidths := fresh "feBW_limbwidths" in
- let feBW_limbwidths := pose_feBW_limbwidths sz adjusted_bitwidth' bounds_limbwidths feBW_limbwidths in
- Tag.update pkg TAG.feBW_limbwidths feBW_limbwidths.
-
-Ltac add_feBW_relax pkg :=
- let sz := Tag.get pkg TAG.sz in
- let feBW_tight := Tag.get pkg TAG.feBW_tight in
- let feBW_loose := Tag.get pkg TAG.feBW_loose in
- let feBW_relax := fresh "feBW_relax" in
- let feBW_relax := pose_feBW_relax sz feBW_tight feBW_loose feBW_relax in
- Tag.update pkg TAG.feBW_relax feBW_relax.
-
-Ltac add_feBW_relax_limbwidths_to_tight pkg :=
- let sz := Tag.get pkg TAG.sz in
- let feBW_limbwidths := Tag.get pkg TAG.feBW_limbwidths in
- let feBW_tight := Tag.get pkg TAG.feBW_tight in
- let feBW_relax_limbwidths_to_tight := fresh "feBW_relax_limbwidths_to_tight" in
- let feBW_relax_limbwidths_to_tight := pose_feBW_relax_limbwidths_to_tight sz feBW_limbwidths feBW_tight feBW_relax_limbwidths_to_tight in
- Tag.update pkg TAG.feBW_relax_limbwidths_to_tight feBW_relax_limbwidths_to_tight.
-
-Ltac add_feBW_relax_limbwidths_to_loose pkg :=
- let sz := Tag.get pkg TAG.sz in
- let feBW_limbwidths := Tag.get pkg TAG.feBW_limbwidths in
- let feBW_loose := Tag.get pkg TAG.feBW_loose in
- let feBW_relax_limbwidths_to_loose := fresh "feBW_relax_limbwidths_to_loose" in
- let feBW_relax_limbwidths_to_loose := pose_feBW_relax_limbwidths_to_loose sz feBW_limbwidths feBW_loose feBW_relax_limbwidths_to_loose in
- Tag.update pkg TAG.feBW_relax_limbwidths_to_loose feBW_relax_limbwidths_to_loose.
-
-Ltac add_feBW_tight_bounded pkg :=
- let freeze := Tag.get pkg TAG.freeze in
- let wt := Tag.get pkg TAG.wt in
- let sz := Tag.get pkg TAG.sz in
- let feBW_tight := Tag.get pkg TAG.feBW_tight in
- let adjusted_bitwidth' := Tag.get pkg TAG.adjusted_bitwidth' in
- let bounds_tight := Tag.get pkg TAG.bounds_tight in
- let m := Tag.get pkg TAG.m in
- let wt_nonneg := Tag.get pkg TAG.wt_nonneg in
- let feBW_tight_bounded := fresh "feBW_tight_bounded" in
- let feBW_tight_bounded := pose_feBW_tight_bounded freeze wt sz feBW_tight adjusted_bitwidth' bounds_tight m wt_nonneg feBW_tight_bounded in
- Tag.update pkg TAG.feBW_tight_bounded feBW_tight_bounded.
-
-Ltac add_feBW_limbwidths_bounded pkg :=
- let freeze := Tag.get pkg TAG.freeze in
- let wt := Tag.get pkg TAG.wt in
- let sz := Tag.get pkg TAG.sz in
- let feBW_limbwidths := Tag.get pkg TAG.feBW_limbwidths in
- let adjusted_bitwidth' := Tag.get pkg TAG.adjusted_bitwidth' in
- let bounds_limbwidths := Tag.get pkg TAG.bounds_limbwidths in
- let m := Tag.get pkg TAG.m in
- let wt_nonneg := Tag.get pkg TAG.wt_nonneg in
- let feBW_limbwidths_bounded := fresh "feBW_limbwidths_bounded" in
- let feBW_limbwidths_bounded := pose_feBW_limbwidths_bounded freeze wt sz feBW_limbwidths adjusted_bitwidth' bounds_limbwidths m wt_nonneg feBW_limbwidths_bounded in
- Tag.update pkg TAG.feBW_limbwidths_bounded feBW_limbwidths_bounded.
-
-Ltac add_phiW pkg :=
- let feW := Tag.get pkg TAG.feW in
- let m := Tag.get pkg TAG.m in
- let wt := Tag.get pkg TAG.wt in
- let phiW := fresh "phiW" in
- let phiW := pose_phiW feW m wt phiW in
- Tag.update pkg TAG.phiW phiW.
-
-Ltac add_phiBW_tight pkg :=
- let feBW_tight := Tag.get pkg TAG.feBW_tight in
- let m := Tag.get pkg TAG.m in
- let wt := Tag.get pkg TAG.wt in
- let phiBW_tight := fresh "phiBW_tight" in
- let phiBW_tight := pose_phiBW_tight feBW_tight m wt phiBW_tight in
- Tag.update pkg TAG.phiBW_tight phiBW_tight.
-
-Ltac add_phiBW_loose pkg :=
- let feBW_loose := Tag.get pkg TAG.feBW_loose in
- let m := Tag.get pkg TAG.m in
- let wt := Tag.get pkg TAG.wt in
- let phiBW_loose := fresh "phiBW_loose" in
- let phiBW_loose := pose_phiBW_loose feBW_loose m wt phiBW_loose in
- Tag.update pkg TAG.phiBW_loose phiBW_loose.
-
-Ltac add_phiBW_limbwidths pkg :=
- let feBW_limbwidths := Tag.get pkg TAG.feBW_limbwidths in
- let m := Tag.get pkg TAG.m in
- let wt := Tag.get pkg TAG.wt in
- let phiBW_limbwidths := fresh "phiBW_limbwidths" in
- let phiBW_limbwidths := pose_phiBW_limbwidths feBW_limbwidths m wt phiBW_limbwidths in
- Tag.update pkg TAG.phiBW_limbwidths phiBW_limbwidths.
-
-Ltac add_ReificationTypes_package pkg :=
- let pkg := add_limb_widths pkg in
- let pkg := add_bounds_exp pkg in
- let pkg := add_bounds_tight pkg in
- let pkg := add_bounds_loose pkg in
- let pkg := add_bounds_limbwidths pkg in
- let pkg := add_bound1 pkg in
- let pkg := add_lgbitwidth pkg in
- let pkg := add_adjusted_bitwidth' pkg in
- let pkg := add_adjusted_bitwidth pkg in
- let pkg := add_feZ pkg in
- let pkg := add_feW pkg in
- let pkg := add_feW_tight_bounded pkg in
- let pkg := add_feW_loose_bounded pkg in
- let pkg := add_feW_limbwidths_bounded pkg in
- let pkg := add_feBW_tight pkg in
- let pkg := add_feBW_loose pkg in
- let pkg := add_feBW_limbwidths pkg in
- let pkg := add_feBW_relax pkg in
- let pkg := add_feBW_relax_limbwidths_to_tight pkg in
- let pkg := add_feBW_relax_limbwidths_to_loose pkg in
- let pkg := add_feBW_tight_bounded pkg in
- let pkg := add_feBW_limbwidths_bounded pkg in
- let pkg := add_phiW pkg in
- let pkg := add_phiBW_tight pkg in
- let pkg := add_phiBW_loose pkg in
- let pkg := add_phiBW_limbwidths pkg in
- Tag.strip_subst_local pkg.
-
-
-Module MakeReificationTypesPackage (PKG : PrePackage).
- Module Import MakeReificationTypesPackageInternal := MakePackageBase PKG.
-
- Ltac get_bound1 _ := get TAG.bound1.
- Notation bound1 := (ltac:(let v := get_bound1 () in exact v)) (only parsing).
- Ltac get_adjusted_bitwidth _ := get TAG.adjusted_bitwidth.
- Notation adjusted_bitwidth := (ltac:(let v := get_adjusted_bitwidth () in exact v)) (only parsing).
- Ltac get_feW _ := get TAG.feW.
- Notation feW := (ltac:(let v := get_feW () in exact v)) (only parsing).
- Ltac get_feW_tight_bounded _ := get TAG.feW_tight_bounded.
- Notation feW_tight_bounded := (ltac:(let v := get_feW_tight_bounded () in exact v)) (only parsing).
- Ltac get_feW_loose_bounded _ := get TAG.feW_loose_bounded.
- Notation feW_loose_bounded := (ltac:(let v := get_feW_loose_bounded () in exact v)) (only parsing).
- Ltac get_feW_limbwidths_bounded _ := get TAG.feW_limbwidths_bounded.
- Notation feW_limbwidths_bounded := (ltac:(let v := get_feW_limbwidths_bounded () in exact v)) (only parsing).
- Ltac get_feBW_tight _ := get TAG.feBW_tight.
- Notation feBW_tight := (ltac:(let v := get_feBW_tight () in exact v)) (only parsing).
- Ltac get_feBW_loose _ := get TAG.feBW_loose.
- Notation feBW_loose := (ltac:(let v := get_feBW_loose () in exact v)) (only parsing).
- Ltac get_feBW_limbwidths _ := get TAG.feBW_limbwidths.
- Notation feBW_limbwidths := (ltac:(let v := get_feBW_limbwidths () in exact v)) (only parsing).
- Ltac get_feBW_relax _ := get TAG.feBW_relax.
- Notation feBW_relax := (ltac:(let v := get_feBW_relax () in exact v)) (only parsing).
- Ltac get_feBW_relax_limbwidths_to_tight _ := get TAG.feBW_relax_limbwidths_to_tight.
- Notation feBW_relax_limbwidths_to_tight := (ltac:(let v := get_feBW_relax_limbwidths_to_tight () in exact v)) (only parsing).
- Ltac get_feBW_relax_limbwidths_to_loose _ := get TAG.feBW_relax_limbwidths_to_loose.
- Notation feBW_relax_limbwidths_to_loose := (ltac:(let v := get_feBW_relax_limbwidths_to_loose () in exact v)) (only parsing).
- Ltac get_feBW_tight_bounded _ := get TAG.feBW_tight_bounded.
- Notation feBW_tight_bounded := (ltac:(let v := get_feBW_tight_bounded () in exact v)) (only parsing).
- Ltac get_feBW_limbwidths_bounded _ := get TAG.feBW_limbwidths_bounded.
- Notation feBW_limbwidths_bounded := (ltac:(let v := get_feBW_limbwidths_bounded () in exact v)) (only parsing).
- Ltac get_phiW _ := get TAG.phiW.
- Notation phiW := (ltac:(let v := get_phiW () in exact v)) (only parsing).
- Ltac get_phiBW_tight _ := get TAG.phiBW_tight.
- Notation phiBW_tight := (ltac:(let v := get_phiBW_tight () in exact v)) (only parsing).
- Ltac get_phiBW_loose _ := get TAG.phiBW_loose.
- Notation phiBW_loose := (ltac:(let v := get_phiBW_loose () in exact v)) (only parsing).
- Ltac get_phiBW_limbwidths _ := get TAG.phiBW_limbwidths.
- Notation phiBW_limbwidths := (ltac:(let v := get_phiBW_limbwidths () in exact v)) (only parsing).
-End MakeReificationTypesPackage.
diff --git a/src/Specific/Framework/SynthesisFramework.v b/src/Specific/Framework/SynthesisFramework.v
deleted file mode 100644
index a7f8e5ee5..000000000
--- a/src/Specific/Framework/SynthesisFramework.v
+++ /dev/null
@@ -1,170 +0,0 @@
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.BasePackage.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.DefaultsPackage.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.FreezePackage.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.KaratsubaPackage.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.LadderstepPackage.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.MontgomeryPackage.
-Require Import Crypto.Specific.Framework.CurveParametersPackage.
-Require Import Crypto.Specific.Framework.ReificationTypesPackage.
-Require Import Crypto.Specific.Framework.MontgomeryReificationTypesPackage.
-Require Import Crypto.Specific.Framework.Packages.
-Require Import Crypto.Arithmetic.Core.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Util.BoundedWord.
-Require Import Crypto.Util.TagList.
-Require Import Crypto.Util.Tactics.DestructHead.
-Require Import Crypto.Specific.Framework.IntegrationTestTemporaryMiscCommon.
-Require Import Crypto.Compilers.Z.Bounds.Pipeline.
-
-Module Export Exports.
- Export ArithmeticSynthesis.Defaults.Exports.
- Export ArithmeticSynthesis.Freeze.Exports.
-End Exports.
-
-(* Alisases for exporting *)
-Module Type PrePackage := PrePackage.
-Module Tag.
- Notation Context := Tag.Context (only parsing).
-End Tag.
-
-Module Export MakeSynthesisTactics.
- Ltac add_Synthesis_package pkg curve extra_prove_mul_eq extra_prove_square_eq :=
- let CP := get_fill_CurveParameters curve in
- let P_extra_prove_mul_eq := extra_prove_mul_eq in
- let P_extra_prove_square_eq := extra_prove_square_eq in
- let pkg := Tag.local_update pkg TAG.CP CP in
- let pkg := add_CurveParameters_package pkg in
- let pkg := Tag.strip_subst_local pkg in
- let pkg := add_Base_package pkg in
- let pkg := add_ReificationTypes_package pkg in
- let pkg := add_Karatsuba_package pkg in
- let pkg := add_Montgomery_package pkg in
- let pkg := add_MontgomeryReificationTypes_package pkg in
- (* N.B. freeze is a "default" and must come after montgomery, which disables it *)
- let pkg := add_Freeze_package pkg in
- (* N.B. the Defaults must come after other possible ways of adding the _sig lemmas *)
- let pkg := add_Defaults_package pkg P_extra_prove_mul_eq P_extra_prove_square_eq in
- (* N.B. Ladderstep must come after Defaults *)
- let pkg := add_Ladderstep_package pkg in
- pkg.
-
- Ltac get_Synthesis_package curve extra_prove_mul_eq extra_prove_square_eq :=
- let pkg := constr:(Tag.empty) in
- add_Synthesis_package pkg curve extra_prove_mul_eq extra_prove_square_eq.
-
- Ltac make_Synthesis_package curve extra_prove_mul_eq extra_prove_square_eq :=
- let pkg := get_Synthesis_package curve extra_prove_mul_eq extra_prove_square_eq in
- exact pkg.
-End MakeSynthesisTactics.
-
-Module PackageSynthesis (PKG : PrePackage).
- Module CP := MakeCurveParametersPackage PKG.
- Module BP := MakeBasePackage PKG.
- Module DP := MakeDefaultsPackage PKG.
- Module RP := MakeReificationTypesPackage PKG.
- Module FP := MakeFreezePackage PKG.
- Module LP := MakeLadderstepPackage PKG.
- Module KP := MakeKaratsubaPackage PKG.
- Module MP := MakeMontgomeryPackage PKG.
- Module MRP := MakeMontgomeryReificationTypesPackage PKG.
- Include CP.
- Include BP.
- Include DP.
- Include RP.
- Include FP.
- Include LP.
- Include KP.
- Include MP.
- Include MRP.
-
- Ltac synthesize do_rewrite get_op_sig :=
- let op_sig := get_op_sig () in
- let allowable_bit_widths := get_allowable_bit_widths () in
- start_preglue;
- [ do_rewrite op_sig; cbv_runtime
- | .. ];
- fin_preglue;
- refine_reflectively_gen allowable_bit_widths default.
- Ltac synthesize_with_carry do_rewrite get_op_sig :=
- let carry_sig := get_carry_sig () in
- synthesize ltac:(fun op_sig => do_rewrite op_sig carry_sig) get_op_sig.
- Ltac synthesize_narg get_op_sig :=
- synthesize do_rewrite_with_sig get_op_sig.
- Ltac synthesize_2arg_with_carry get_op_sig :=
- synthesize_with_carry do_rewrite_with_2sig_add_carry get_op_sig.
- Ltac synthesize_1arg_with_carry get_op_sig :=
- synthesize_with_carry do_rewrite_with_1sig_add_carry get_op_sig.
-
- Ltac synthesize_montgomery get_op_sig get_op_bounded :=
- let phi := get_phi1_for_preglue () in
- let op_sig := get_op_sig () in
- let op_bounded := get_op_bounded () in
- let allowable_bit_widths := get_allowable_bit_widths () in
- let do_red _ :=
- lazymatch (eval cbv [phi] in phi) with
- | (fun x => ?montgomery_to_F (?meval (?feBW_of_feBW_small _)))
- => cbv [feBW_of_feBW_small meval]
- end in
- start_preglue;
- do_red ();
- [ do_rewrite_with_sig_by op_sig op_sig_side_conditions_t;
- cbv_runtime
- | .. ];
- fin_preglue;
- factor_out_bounds_and_strip_eval op_bounded op_sig_side_conditions_t;
- refine_reflectively_gen allowable_bit_widths anf.
-
- Ltac synthesize_narg_choice_gen synthesize get_op_sig get_op_bounded :=
- let montgomery := get_montgomery () in
- lazymatch (eval vm_compute in montgomery) with
- | true => synthesize_montgomery get_op_sig get_op_bounded
- | false => synthesize get_op_sig
- end.
- Ltac synthesize_narg_choice get_op_sig get_op_bounded :=
- synthesize_narg_choice_gen synthesize_narg get_op_sig get_op_bounded.
- Ltac synthesize_2arg_choice_with_carry get_op_sig get_op_bounded :=
- synthesize_narg_choice_gen synthesize_2arg_with_carry get_op_sig get_op_bounded.
- Ltac synthesize_1arg_choice_with_carry get_op_sig get_op_bounded :=
- synthesize_narg_choice_gen synthesize_1arg_with_carry get_op_sig get_op_bounded.
-
- Ltac synthesize_carry_mul _ := synthesize_2arg_choice_with_carry get_mul_sig get_mul_bounded.
- Ltac synthesize_carry_add _ := synthesize_2arg_choice_with_carry get_add_sig get_add_bounded.
- Ltac synthesize_carry_sub _ := synthesize_2arg_choice_with_carry get_sub_sig get_sub_bounded.
- Ltac synthesize_carry_opp _ := synthesize_1arg_choice_with_carry get_opp_sig get_opp_bounded.
- Ltac synthesize_carry_square _ := synthesize_1arg_with_carry get_square_sig.
- Ltac synthesize_nocarry_mul _ := synthesize_narg_choice get_mul_sig get_mul_bounded.
- Ltac synthesize_add _ := synthesize_narg_choice get_add_sig get_add_bounded.
- Ltac synthesize_sub _ := synthesize_narg_choice get_sub_sig get_sub_bounded.
- Ltac synthesize_opp _ := synthesize_narg_choice get_opp_sig get_opp_bounded.
- Ltac synthesize_carry _ := synthesize_narg_choice get_carry_sig get_carry_bounded.
- Ltac synthesize_nocarry_square _ := synthesize_narg get_square_sig.
- Ltac synthesize_mul _ := synthesize_carry_mul ().
- Ltac synthesize_square _ := synthesize_carry_square ().
- Ltac synthesize_freeze _ :=
- let freeze_sig := get_freeze_sig () in
- let feBW_tight_bounded := get_feBW_tight_bounded () in
- let freeze_allowable_bit_widths := get_freeze_allowable_bit_widths () in
- start_preglue;
- [ do_rewrite_with_sig_by freeze_sig ltac:(fun _ => apply feBW_tight_bounded); cbv_runtime
- | .. ];
- fin_preglue;
- refine_reflectively_gen freeze_allowable_bit_widths anf.
- Ltac synthesize_xzladderstep _ :=
- let Mxzladderstep_sig := get_Mxzladderstep_sig () in
- let a24_sig := get_a24_sig () in
- let allowable_bit_widths := get_allowable_bit_widths () in
- start_preglue;
- [ unmap_map_tuple ();
- do_rewrite_with_sig_1arg Mxzladderstep_sig;
- cbv [Mxzladderstep XZ.M.xzladderstep a24_sig]; cbn [proj1_sig];
- do_set_sigs ();
- cbv_runtime
- | .. ];
- finish_conjoined_preglue ();
- refine_reflectively_gen allowable_bit_widths default.
- Ltac synthesize_nonzero _ :=
- let op_sig := get_nonzero_sig () in
- let allowable_bit_widths := get_allowable_bit_widths () in
- nonzero_preglue op_sig ltac:(fun _ => cbv_runtime);
- refine_reflectively_gen allowable_bit_widths anf.
-End PackageSynthesis.
diff --git a/src/Specific/Framework/bench/fibe.c b/src/Specific/Framework/bench/fibe.c
deleted file mode 100644
index 670722e88..000000000
--- a/src/Specific/Framework/bench/fibe.c
+++ /dev/null
@@ -1,326 +0,0 @@
-#include <assert.h>
-#include <stdint.h>
-#include <stdio.h>
-#include <inttypes.h>
-
-#define limb_t_(bitwidth) limb_t__(bitwidth)
-#define PRIxlimb_(bitwidth) PRIxlimb__(bitwidth)
-#define PRIulimb_(bitwidth) PRIulimb__(bitwidth)
-#define limb_t__(bitwidth) uint ## bitwidth ## _t
-#define PRIxlimb__(bitwidth) PRIx ## bitwidth
-#define PRIulimb__(bitwidth) PRIu ## bitwidth
-
-#ifndef modulus_bytes_val
-#define modulus_bytes_val 32
-#endif
-
-#ifndef bitwidth
-#define bitwidth 64
-#endif
-
-#ifndef a24_val
-#define a24_val 121665
-#endif
-
-#ifndef modulus_limbs
-#define modulus_limbs 5
-#endif
-
-#ifndef limb_weight_gaps_array
-#define limb_weight_gaps_array {51,51,51,51,51}
-#endif
-
-#define modulus_bytes modulus_bytes_val
-
-#define limb_t limb_t_(bitwidth)
-#define PRIxlimb PRIxlimb_(bitwidth)
-#define PRIulimb PRIulimb_(bitwidth)
-
-static const limb_t a24[modulus_limbs] = {a24_val};
-static const limb_t limb_weight_gaps[modulus_limbs] = limb_weight_gaps_array;
-
-#if bitwidth >= 64
-typedef unsigned int uint128_t __attribute__((mode(TI)));
-#endif
-
-// intrinsics?
-#if 0
-
-#include <immintrin.h>
-#include <x86intrin.h>
-
-#if (defined(__GNUC__) || defined(__GNUG__)) && !(defined(__clang__)||defined(__INTEL_COMPILER))
-// https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81294
-#define _subborrow_u32 __builtin_ia32_sbb_u32
-#define _subborrow_u64 __builtin_ia32_sbb_u64
-#endif
-
-#else
-
-static uint32_t _mulx_u32(uint32_t a, uint32_t b, uint32_t *high) {
- uint64_t x = (uint64_t)a * b;
- *high = (uint32_t) (x >> 32);
- return (uint32_t) x;
-}
-
-static uint32_t _addcarryx_u32(uint8_t c, uint32_t a, uint32_t b, uint32_t *low) {
- uint64_t x = (uint64_t)a + b + c;
- *low = (uint32_t) x;
- return (uint32_t) (x>>32);
-}
-
-static uint32_t _subborrow_u32(uint8_t c, uint32_t a, uint32_t b, uint32_t *low) {
- uint64_t t = ((uint64_t) b + c);
- uint64_t x = a-t;
- *low = (uint32_t) x;
- return (uint8_t) (x>>63);
-}
-
-static uint32_t cmovznz32(uint32_t t, uint32_t z, uint32_t nz) {
- t = -!!t;
- return (t&nz) | ((~t)&z);
-}
-
-#if bitwidth >= 64
-
-static uint64_t _mulx_u64(uint64_t a, uint64_t b, uint64_t *high) {
- uint128_t x = (uint128_t)a * b;
- *high = (uint64_t) (x >> 64);
- return (uint64_t) x;
-}
-
-static uint64_t _addcarryx_u64(uint8_t c, uint64_t a, uint64_t b, uint64_t *low) {
- uint128_t x = (uint128_t)a + b + c;
- *low = (uint64_t) x;
- return (uint64_t) (x>>64);
-}
-
-static uint64_t _subborrow_u64(uint8_t c, uint64_t a, uint64_t b, uint64_t *low) {
- uint128_t t = ((uint128_t) b + c);
- uint128_t x = a-t;
- *low = (uint64_t) x;
- return (uint8_t) (x>>127);
-}
-
-static uint64_t cmovznz64(uint64_t t, uint64_t z, uint64_t nz) {
- t = -!!t;
- return (t&nz) | ((~t)&z);
-}
-
-#endif
-
-#endif
-
-static uint32_t _mulx_u32_out_u8(uint32_t a, uint32_t b, uint8_t *high) {
- uint32_t tmp_high;
- uint32_t ret = _mulx_u32(a, b, &tmp_high);
- *high = (uint8_t) (tmp_high);
- return ret;
-}
-
-# if bitwidth >= 64
-static uint64_t _mulx_u64_out_u8(uint64_t a, uint64_t b, uint8_t *high) {
- uint64_t tmp_high;
- uint64_t ret = _mulx_u64(a, b, &tmp_high);
- *high = (uint8_t) (tmp_high);
- return ret;
-}
-#endif
-
-
-
-#include "feadd.c"
-#include "femul.c"
-#include "fesquare.c"
-#include "fesub.c"
-#define fe_add feadd
-#define fe_mul femul
-#define fe_sqr fesquare
-#define fe_sub fesub
-
-static void fe_frombytes(limb_t x[modulus_limbs], const uint8_t s[modulus_bytes]) {
- limb_t byte_weight_gaps[modulus_bytes] = {0};
- for (int i = 0; i<modulus_bytes; i++) { byte_weight_gaps[i] = 8; }
-
- int modulus_bits = 0;
- for (int i = 0; i<modulus_limbs; i++) { modulus_bits += limb_weight_gaps[i]; }
-
- int i = 0;
- int in_limb = 0; int in_bit = 0;
- int out_limb = 0; int out_bit = 0;
-
- while (i < modulus_bits) {
- if (in_bit > byte_weight_gaps[in_limb]) {
- in_limb++;
- in_bit = 0;
- }
- if (out_bit > byte_weight_gaps[out_limb]) {
- out_limb++;
- out_bit = 0;
- }
-
- limb_t bit = (s[in_limb] >> in_bit)&1;
- x[out_limb] |= bit << out_bit;
-
- out_bit++; in_bit++; i++;
- }
-}
-
-static void fe_print(limb_t x[modulus_limbs]) {
- for (unsigned i=0; i<modulus_limbs-1; i++) { printf("(("); }
- for (unsigned i=modulus_limbs-1; i > 0; --i) {
- printf("0x%016"PRIxlimb")<< %"PRIulimb") + ", x[i], limb_weight_gaps[i-1]);
- }
- printf("0x%016"PRIxlimb, x[0]);
-}
-
-static void fe_cswap(limb_t bit, limb_t x[modulus_limbs], limb_t y[modulus_limbs]) {
- for (int i=0; i<modulus_limbs; ++i) { limb_t t = (x[i] ^ y[i])&(0-bit); x[i] ^= t; y[i] ^= t; }
-}
-
-static void crypto_scalarmult(uint8_t *out, const uint8_t *secret, size_t secretbits, const uint8_t *point) {
- limb_t a[modulus_limbs] = {0}; limb_t *nqpqx = a;
- limb_t b[modulus_limbs] = {1}; limb_t *nqpqz = b;
- limb_t c[modulus_limbs] ={1}; limb_t *nqx = c;
- limb_t d[modulus_limbs] = {0}; limb_t *nqz = d;
- limb_t e[modulus_limbs] = {0}; limb_t *nqpqx2 = e;
- limb_t f[modulus_limbs] = {1}; limb_t *nqpqz2 = f;
- limb_t g[modulus_limbs] = {0}; limb_t *nqx2 = g;
- limb_t h[modulus_limbs] = {1}; limb_t *nqz2 = h;
- limb_t *t;
-
- limb_t qmqp[modulus_limbs];
- fe_frombytes(qmqp, point);
- for (size_t i = 0; i<modulus_limbs; i++) { nqpqx[i] = qmqp[i]; }
-
- for (size_t i = secretbits-1; i < secretbits; --i) {
- limb_t bit = (secret[i/8] >> (i%8))&1;
-
- fe_cswap(bit, nqx, nqpqx);
- fe_cswap(bit, nqz, nqpqz);
-
- limb_t *x2 = nqx2;
- limb_t *z2 = nqz2;
- limb_t *x3 = nqpqx2;
- limb_t *z3 = nqpqz2;
- limb_t *x = nqx;
- limb_t *z = nqz;
- limb_t *xprime = nqpqx;
- limb_t *zprime = nqpqz;
- // fmonty(limb_t *x2, limb_t 0*z2, /* output 2Q */
- // limb_t *x3, limb_t *z3, /* output Q + Q' */
- // limb_t *x, limb_t *z, /* input Q */
- // limb_t *xprime, limb_t *zprime, /* input Q' */
- // const limb_t *qmqp /* input Q - Q' */) {
-
- limb_t origx[modulus_limbs], origxprime[modulus_limbs], zzz[modulus_limbs], xx[modulus_limbs], zz[modulus_limbs], xxprime[modulus_limbs], zzprime[modulus_limbs], zzzprime[modulus_limbs];
-
- for (size_t i = 0; i<modulus_limbs; i++) { origx[i] = x[i]; }
- fe_add(x, x, z);
- fe_sub(z, origx, z);
-
- for (size_t i = 0; i<modulus_limbs; i++) { origxprime[i] = xprime[i]; }
- fe_add(xprime, xprime, zprime);
- fe_sub(zprime, origxprime, zprime);
- fe_mul(xxprime, xprime, z);
- fe_mul(zzprime, x, zprime);
- for (size_t i = 0; i<modulus_limbs; i++) { origxprime[i] = xxprime[i]; }
- fe_add(xxprime, xxprime, zzprime);
- fe_sub(zzprime, origxprime, zzprime);
- fe_sqr(x3, xxprime);
- fe_sqr(zzzprime, zzprime);
- fe_mul(z3, zzzprime, qmqp);
-
- fe_sqr(xx, x);
- fe_sqr(zz, z);
- fe_mul(x2, xx, zz);
- fe_sub(zz, xx, zz);
- fe_mul(zzz, zz, a24);
- fe_add(zzz, zzz, xx);
- fe_mul(z2, zz, zzz);
-
- // } fmonty
-
- fe_cswap(bit, nqx2, nqpqx2);
- fe_cswap(bit, nqz2, nqpqz2);
-
- t = nqx;
- nqx = nqx2;
- nqx2 = t;
- t = nqz;
- nqz = nqz2;
- nqz2 = t;
- t = nqpqx;
- nqpqx = nqpqx2;
- nqpqx2 = t;
- t = nqpqz;
- nqpqz = nqpqz2;
- nqpqz2 = t;
-
- }
-
- //TODO: implement inv, tobytes
- // fe_print(nqx); printf("\n");
- // fe_print(nqz); printf("\n");
- limb_t garble = 0;
- for (int i = 0; i < modulus_limbs; ++i) { garble ^= nqx[i] ^ nqz[i]; }
- for (int i = 0; i < modulus_bytes; ++i) { out[i] = garble&0xff; garble >>= 1; }
- // fe_inv(nqz, nqz);
- // fe_mul(nqx, nqx, nqz);
- // fe_tobytes
-}
-
-
-int main() {
- // {
- // uint8_t out[modulus_bytes] = {0};
- // uint8_t point[modulus_bytes] = {9};
- // uint8_t secret[modulus_bytes] = {1};
- // crypto_scalarmult(out, secret, 256, point);
- // printf("0x"); for (int i = 31; i>=0; --i) { printf("%02x", out[i]); }; printf("\n");
- // }
- // return 0;
-
- //{
- // const uint8_t expected[32] = {0x89, 0x16, 0x1f, 0xde, 0x88, 0x7b, 0x2b, 0x53, 0xde, 0x54, 0x9a, 0xf4, 0x83, 0x94, 0x01, 0x06, 0xec, 0xc1, 0x14, 0xd6, 0x98, 0x2d, 0xaa, 0x98, 0x25, 0x6d, 0xe2, 0x3b, 0xdf, 0x77, 0x66, 0x1a};
- // const uint8_t basepoint[32] = {9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-
- // uint8_t a[32] = {0}, b[32] = {0};
- // uint8_t* in = a;
- // uint8_t* out = b;
- // a[0] = 1;
-
- // for (int i = 0; i < 200; i++) {
- // in[0] &= 248;
- // in[31] &= 127;
- // in[31] |= 64;
-
- // crypto_scalarmult(out, in, 256, basepoint);
- // uint8_t* t = out;
- // out = in;
- // in = t;
- // }
-
- // for (int i = 0; i < 32; i++) {
- // if (in[i] != expected[i]) {
- // return (i+1);
- // }
- // }
- // return 0;
- //}
-
- uint8_t secret[32];
- uint8_t point[modulus_bytes];
-
- for (int i = 0; i < modulus_bytes; i++) { point[modulus_bytes-i] = i; }
-
- for (int i = 0; i < 1000; i++) {
- for (int j = 0; j<modulus_bytes; j++) {
- secret[j%32] ^= point[j];
- }
- crypto_scalarmult(point, secret, 32*8, point);
- }
- __asm__ __volatile__("" :: "m" (point)); // do not optimize buf away
- return 0;
-}
diff --git a/src/Specific/Framework/bench/gmpsec.c b/src/Specific/Framework/bench/gmpsec.c
deleted file mode 100644
index aaa1c8288..000000000
--- a/src/Specific/Framework/bench/gmpsec.c
+++ /dev/null
@@ -1,234 +0,0 @@
-#include <assert.h>
-#include <stdint.h>
-#include <stdio.h>
-#include <gmp.h>
-
-// modulus, encoded as big-endian bytes
-#ifndef modulus_array
-#define modulus_array {0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}
-#endif
-
-#ifndef a_minus_two_over_four_array
-#define a_minus_two_over_four_array {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0xdb,0x41}
-#endif
-
-#ifdef modulus_limbs
-#undef modulus_limbs // We currently recompute this; TODO(andreser): is this the right thing to do?
-#endif
-
-static const unsigned char modulus[] = modulus_array;
-static const unsigned char a_minus_two_over_four[] = a_minus_two_over_four_array;
-#define modulus_bytes (sizeof(modulus))
-#define modulus_limbs ((8*sizeof(modulus) + GMP_LIMB_BITS-1)/GMP_LIMB_BITS)
-
-
-static void fe_print(mp_limb_t* fe) {
- printf("0x");
- for (size_t i = modulus_limbs-1; i > 0; --i) { printf("%016lx", fe[i]); }
- printf("%016lx", fe[0]);
-}
-
-static void crypto_scalarmult(uint8_t *out, const uint8_t *secret, size_t secretbits, const uint8_t *point) {
- // curve constants
- mp_limb_t m[modulus_limbs+1];
- mp_limb_t a24[modulus_limbs+1];
- assert(mpn_set_str(m, modulus, modulus_bytes, 256) == (mp_size_t)modulus_limbs);
- assert(mpn_set_str(a24, a_minus_two_over_four, sizeof(a_minus_two_over_four), 256) <= (mp_size_t)modulus_limbs);
-
- // allocate scratch space for internal use by GMP.
- // as GMP _itch are documented as functions, not macros, we use a
- // variable-size stack allocation. hopefully the compiler will inline _itch
- // functions and figure out the correct stack frame size statically through
- // constant propagation.
- mp_size_t mulscratch_sz = mpn_sec_mul_itch(modulus_limbs, modulus_limbs);
- mp_size_t sqrscratch_sz = mpn_sec_sqr_itch(modulus_limbs);
- mp_size_t modscratch_sz = mpn_sec_div_r_itch(modulus_limbs+modulus_limbs, modulus_limbs);
- mp_size_t invscratch_sz = mpn_sec_invert_itch(modulus_limbs);
- mp_size_t scratch_sz = mulscratch_sz;
- scratch_sz = (sqrscratch_sz > scratch_sz) ? sqrscratch_sz : scratch_sz;
- scratch_sz = (modscratch_sz > scratch_sz) ? modscratch_sz : scratch_sz;
- scratch_sz = (invscratch_sz > scratch_sz) ? invscratch_sz : scratch_sz;
- mp_limb_t scratch[scratch_sz];
- for (size_t i = 0; i<scratch_sz; ++i) { scratch[i] = 0; }
-
- // allocate scratch space for use by the field operation macros.
- mp_limb_t _product_tmp[modulus_limbs+modulus_limbs];
-
- #define fe_mul(out, x, y) do { \
- mpn_sec_mul(_product_tmp, x, modulus_limbs, y, modulus_limbs, scratch); \
- mpn_sec_div_r(_product_tmp, modulus_limbs+modulus_limbs, m, modulus_limbs, scratch); \
- for (size_t i = 0; i<modulus_limbs; i++) { out[i] = _product_tmp[i]; } \
- } while (0)
-
- #define fe_sqr(out, x) do { \
- mpn_sec_sqr(_product_tmp, x, modulus_limbs, scratch); \
- mpn_sec_div_r(_product_tmp, modulus_limbs+modulus_limbs, m, modulus_limbs, scratch); \
- for (size_t i = 0; i<modulus_limbs; i++) { out[i] = _product_tmp[i]; } \
- } while (0)
-
- #define fe_add(out, x, y) do { \
- mpn_cnd_sub_n(mpn_add_n(out, x, y, modulus_limbs), out, out, m, modulus_limbs); \
- } while (0)
-
- #define fe_sub(out, x, y) do { \
- mpn_cnd_add_n(mpn_sub_n(out, x, y, modulus_limbs), out, out, m, modulus_limbs); \
- } while (0)
-
- #define fe_inv(out, x) do { \
- for (size_t i = 0; i<modulus_limbs; i++) { _product_tmp[i] = x[i]; } \
- mp_size_t invertible = mpn_sec_invert(out, _product_tmp, m, modulus_limbs, 2*modulus_limbs*GMP_NUMB_BITS, scratch); \
- mpn_cnd_sub_n(1-invertible, out, out, out, modulus_limbs); \
- } while (0)
-
- mp_limb_t a[modulus_limbs] = {0}; mp_limb_t *nqpqx = a;
- mp_limb_t b[modulus_limbs] = {1}; mp_limb_t *nqpqz = b;
- mp_limb_t c[modulus_limbs] ={1}; mp_limb_t *nqx = c;
- mp_limb_t d[modulus_limbs] = {0}; mp_limb_t *nqz = d;
- mp_limb_t e[modulus_limbs] = {0}; mp_limb_t *nqpqx2 = e;
- mp_limb_t f[modulus_limbs] = {1}; mp_limb_t *nqpqz2 = f;
- mp_limb_t g[modulus_limbs] = {0}; mp_limb_t *nqx2 = g;
- mp_limb_t h[modulus_limbs] = {1}; mp_limb_t *nqz2 = h;
- mp_limb_t *t;
-
- uint8_t revpoint[modulus_bytes];
- for (size_t i = 0; i<modulus_bytes; i++) { revpoint[i] = point[modulus_bytes-1-i]; }
- for (size_t i = 0; i<modulus_limbs; i++) { nqpqx[i] = 0; }
- assert(mpn_set_str(nqpqx, revpoint, modulus_bytes, 256) <= (mp_size_t)modulus_limbs);
-
- mp_limb_t qmqp[modulus_limbs];
- for (size_t i = 0; i<modulus_limbs; i++) { qmqp[i] = nqpqx[i]; }
-
- for (size_t i = secretbits-1; i < secretbits; --i) {
- mp_limb_t bit = (secret[i/8] >> (i%8))&1;
- // printf("%01d ", bit);
- // { mp_limb_t pr[modulus_limbs]; fe_inv(pr, nqz); fe_mul(pr, pr, nqx); fe_print(pr); }
- // printf(" ");
- // { mp_limb_t pr[modulus_limbs]; fe_inv(pr, nqpqz); fe_mul(pr, pr, nqpqx); fe_print(pr); }
- // printf("\n");
-
- mpn_cnd_swap(bit, nqx, nqpqx, modulus_limbs);
- mpn_cnd_swap(bit, nqz, nqpqz, modulus_limbs);
-
- mp_limb_t *x2 = nqx2;
- mp_limb_t *z2 = nqz2;
- mp_limb_t *x3 = nqpqx2;
- mp_limb_t *z3 = nqpqz2;
- mp_limb_t *x = nqx;
- mp_limb_t *z = nqz;
- mp_limb_t *xprime = nqpqx;
- mp_limb_t *zprime = nqpqz;
- // fmonty(mp_limb_t *x2, mp_limb_t 0*z2, /* output 2Q */
- // mp_limb_t *x3, mp_limb_t *z3, /* output Q + Q' */
- // mp_limb_t *x, mp_limb_t *z, /* input Q */
- // mp_limb_t *xprime, mp_limb_t *zprime, /* input Q' */
- // const mp_limb_t *qmqp /* input Q - Q' */) {
-
- mp_limb_t origx[modulus_limbs], origxprime[modulus_limbs], zzz[modulus_limbs], xx[modulus_limbs], zz[modulus_limbs], xxprime[modulus_limbs], zzprime[modulus_limbs], zzzprime[modulus_limbs];
-
- for (size_t i = 0; i<modulus_limbs; i++) { origx[i] = x[i]; }
- fe_add(x, x, z);
- fe_sub(z, origx, z);
-
- for (size_t i = 0; i<modulus_limbs; i++) { origxprime[i] = xprime[i]; }
- fe_add(xprime, xprime, zprime);
- fe_sub(zprime, origxprime, zprime);
- fe_mul(xxprime, xprime, z);
- fe_mul(zzprime, x, zprime);
- for (size_t i = 0; i<modulus_limbs; i++) { origxprime[i] = xxprime[i]; }
- fe_add(xxprime, xxprime, zzprime);
- fe_sub(zzprime, origxprime, zzprime);
- fe_sqr(x3, xxprime);
- fe_sqr(zzzprime, zzprime);
- fe_mul(z3, zzzprime, qmqp);
-
- fe_sqr(xx, x);
- fe_sqr(zz, z);
- fe_mul(x2, xx, zz);
- fe_sub(zz, xx, zz);
- fe_mul(zzz, zz, a24);
- fe_add(zzz, zzz, xx);
- fe_mul(z2, zz, zzz);
-
- // } fmonty
-
- mpn_cnd_swap(bit, nqx2, nqpqx2, modulus_limbs);
- mpn_cnd_swap(bit, nqz2, nqpqz2, modulus_limbs);
-
- t = nqx;
- nqx = nqx2;
- nqx2 = t;
- t = nqz;
- nqz = nqz2;
- nqz2 = t;
- t = nqpqx;
- nqpqx = nqpqx2;
- nqpqx2 = t;
- t = nqpqz;
- nqpqz = nqpqz2;
- nqpqz2 = t;
-
- }
-
- for (size_t i = 0; i < modulus_bytes; i++) { out[i] = 0; }
- for (size_t i = 0; i < 8*modulus_bytes; i++) {
- mp_limb_t bit = (nqx[i/GMP_LIMB_BITS] >> (i%GMP_LIMB_BITS))&1;
- out [i/8] |= bit<<(i%8);
- }
- for (size_t i = 0; i < 8*modulus_bytes; i++) {
- mp_limb_t bit = (nqz[i/GMP_LIMB_BITS] >> (i%GMP_LIMB_BITS))&1;
- out [i/8] ^= bit<<(i%8);
- }
-}
-
-
-int main() {
- // {
- // uint8_t out[sizeof(modulus)] = {0};
- // uint8_t point[sizeof(modulus)] = {9};
- // uint8_t secret[sizeof(modulus)] = {1};
- // crypto_scalarmult(out, point, secret, 256);
- // printf("0x"); for (int i = 31; i>=0; --i) { printf("%02x", out[i]); }; printf("\n");
- // }
-
- // {
- // const uint8_t expected[32] = {0x89, 0x16, 0x1f, 0xde, 0x88, 0x7b, 0x2b, 0x53, 0xde, 0x54, 0x9a, 0xf4, 0x83, 0x94, 0x01, 0x06, 0xec, 0xc1, 0x14, 0xd6, 0x98, 0x2d, 0xaa, 0x98, 0x25, 0x6d, 0xe2, 0x3b, 0xdf, 0x77, 0x66, 0x1a};
- // const uint8_t basepoint[32] = {9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-
- // uint8_t a[32] = {0}, b[32] = {0};
- // uint8_t* in = a;
- // uint8_t* out = b;
- // a[0] = 1;
-
- // for (int i = 0; i < 200; i++) {
- // in[0] &= 248;
- // in[31] &= 127;
- // in[31] |= 64;
-
- // crypto_scalarmult(out, in, 256, basepoint);
- // uint8_t* t = out;
- // out = in;
- // in = t;
- // }
-
- // for (int i = 0; i < 32; i++) {
- // if (in[i] != expected[i]) {
- // return (i+1);
- // }
- // }
- // return 0;
- // }
- uint8_t secret[32];
- uint8_t point[modulus_bytes];
-
- for (int i = 0; i < modulus_bytes; i++) { point[modulus_bytes-i] = i; }
-
- for (int i = 0; i < 1000; i++) {
- for (int j = 0; j<modulus_bytes; j++) {
- secret[j%32] ^= point[j];
- }
- crypto_scalarmult(point, secret, 32*8, point);
- }
- __asm__ __volatile__("" :: "m" (point)); // do not optimize buf away
- return 0;
-}
diff --git a/src/Specific/Framework/bench/gmpvar.c b/src/Specific/Framework/bench/gmpvar.c
deleted file mode 100644
index 476ec1d92..000000000
--- a/src/Specific/Framework/bench/gmpvar.c
+++ /dev/null
@@ -1,233 +0,0 @@
-#include <assert.h>
-#include <stdint.h>
-#include <stdio.h>
-#include <gmp.h>
-
-// modulus, encoded as big-endian bytes
-#ifndef modulus_array
-#define modulus_array {0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}
-#endif
-
-#ifndef a_minus_two_over_four_array
-#define a_minus_two_over_four_array {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0xdb,0x41}
-#endif
-
-#ifdef modulus_limbs
-#undef modulus_limbs // We currently recompute this; TODO(andreser): is this the right thing to do?
-#endif
-
-static const unsigned char modulus[] = modulus_array;
-static const unsigned char a_minus_two_over_four[] = a_minus_two_over_four_array;
-#define modulus_bytes (sizeof(modulus))
-#define modulus_limbs ((8*sizeof(modulus) + GMP_LIMB_BITS-1)/GMP_LIMB_BITS)
-
-
-static void fe_print(mp_limb_t* fe) {
- printf("0x");
- for (size_t i = modulus_limbs-1; i > 0; --i) { printf("%016lx", fe[i]); }
- printf("%016lx", fe[0]);
-}
-
-static void crypto_scalarmult(uint8_t *out, const uint8_t *secret, size_t secretbits, const uint8_t *point) {
- // curve constants
- mp_limb_t m[modulus_limbs+1];
- mp_limb_t a24[modulus_limbs+1];
- assert(mpn_set_str(m, modulus, modulus_bytes, 256) == (mp_size_t)modulus_limbs);
- assert(mpn_set_str(a24, a_minus_two_over_four, sizeof(a_minus_two_over_four), 256) <= (mp_size_t)modulus_limbs);
-
- // allocate scratch space for internal use by GMP.
- // as GMP _itch are documented as functions, not macros, we use a
- // variable-size stack allocation. hopefully the compiler will inline _itch
- // functions and figure out the correct stack frame size statically through
- // constant propagation.
- mp_size_t invscratch_sz = mpn_sec_invert_itch(modulus_limbs);
- mp_size_t scratch_sz = invscratch_sz;
- scratch_sz = (modulus_limbs > scratch_sz) ? modulus_limbs : scratch_sz;
- mp_limb_t scratch[scratch_sz];
- for (size_t i = 0; i<scratch_sz; ++i) { scratch[i] = 0; }
-
- // allocate scratch space for use by the field operation macros.
- mp_limb_t _product_tmp[modulus_limbs+modulus_limbs];
-
- #define fe_mul(out, x, y) do { \
- mpn_mul(_product_tmp, x, modulus_limbs, y, modulus_limbs); \
- mpn_tdiv_qr(scratch, _product_tmp, 0, _product_tmp, modulus_limbs+modulus_limbs, m, modulus_limbs); \
- for (size_t i = 0; i<modulus_limbs; i++) { out[i] = _product_tmp[i]; } \
- } while (0)
-
- #define fe_sqr(out, x) do { \
- mpn_sqr(_product_tmp, x, modulus_limbs); \
- mpn_tdiv_qr(scratch, _product_tmp, 0, _product_tmp, modulus_limbs+modulus_limbs, m, modulus_limbs); \
- for (size_t i = 0; i<modulus_limbs; i++) { out[i] = _product_tmp[i]; } \
- } while (0)
-
- #define fe_add(out, x, y) do { \
- if (mpn_add_n(out, x, y, modulus_limbs)) { \
- mpn_sub_n(out, out, m, modulus_limbs); \
- } \
- } while (0)
-
- #define fe_sub(out, x, y) do { \
- if (mpn_sub_n(out, x, y, modulus_limbs)) { \
- mpn_add_n(out, out, m, modulus_limbs); \
- } \
- } while (0)
-
- #define fe_inv(out, x) do { \
- for (size_t i = 0; i<modulus_limbs; i++) { _product_tmp[i] = x[i]; } \
- mp_size_t invertible = mpn_sec_invert(out, _product_tmp, m, modulus_limbs, 2*modulus_limbs*GMP_NUMB_BITS, scratch); \
- mpn_cnd_sub_n(1-invertible, out, out, out, modulus_limbs); \
- } while (0)
-
- mp_limb_t a[modulus_limbs] = {0}; mp_limb_t *nqpqx = a;
- mp_limb_t b[modulus_limbs] = {1}; mp_limb_t *nqpqz = b;
- mp_limb_t c[modulus_limbs] ={1}; mp_limb_t *nqx = c;
- mp_limb_t d[modulus_limbs] = {0}; mp_limb_t *nqz = d;
- mp_limb_t e[modulus_limbs] = {0}; mp_limb_t *nqpqx2 = e;
- mp_limb_t f[modulus_limbs] = {1}; mp_limb_t *nqpqz2 = f;
- mp_limb_t g[modulus_limbs] = {0}; mp_limb_t *nqx2 = g;
- mp_limb_t h[modulus_limbs] = {1}; mp_limb_t *nqz2 = h;
- mp_limb_t *t;
-
- uint8_t revpoint[modulus_bytes];
- for (size_t i = 0; i<modulus_bytes; i++) { revpoint[i] = point[modulus_bytes-1-i]; }
- for (size_t i = 0; i<modulus_limbs; i++) { nqpqx[i] = 0; }
- assert(mpn_set_str(nqpqx, revpoint, modulus_bytes, 256) <= (mp_size_t)modulus_limbs);
-
- mp_limb_t qmqp[modulus_limbs];
- for (size_t i = 0; i<modulus_limbs; i++) { qmqp[i] = nqpqx[i]; }
-
- for (size_t i = secretbits-1; i < secretbits; --i) {
- mp_limb_t bit = (secret[i/8] >> (i%8))&1;
- // printf("%01d ", bit);
- // { mp_limb_t pr[modulus_limbs]; fe_inv(pr, nqz); fe_mul(pr, pr, nqx); fe_print(pr); }
- // printf(" ");
- // { mp_limb_t pr[modulus_limbs]; fe_inv(pr, nqpqz); fe_mul(pr, pr, nqpqx); fe_print(pr); }
- // printf("\n");
-
- mpn_cnd_swap(bit, nqx, nqpqx, modulus_limbs);
- mpn_cnd_swap(bit, nqz, nqpqz, modulus_limbs);
-
- mp_limb_t *x2 = nqx2;
- mp_limb_t *z2 = nqz2;
- mp_limb_t *x3 = nqpqx2;
- mp_limb_t *z3 = nqpqz2;
- mp_limb_t *x = nqx;
- mp_limb_t *z = nqz;
- mp_limb_t *xprime = nqpqx;
- mp_limb_t *zprime = nqpqz;
- // fmonty(mp_limb_t *x2, mp_limb_t 0*z2, /* output 2Q */
- // mp_limb_t *x3, mp_limb_t *z3, /* output Q + Q' */
- // mp_limb_t *x, mp_limb_t *z, /* input Q */
- // mp_limb_t *xprime, mp_limb_t *zprime, /* input Q' */
- // const mp_limb_t *qmqp /* input Q - Q' */) {
-
- mp_limb_t origx[modulus_limbs], origxprime[modulus_limbs], zzz[modulus_limbs], xx[modulus_limbs], zz[modulus_limbs], xxprime[modulus_limbs], zzprime[modulus_limbs], zzzprime[modulus_limbs];
-
- for (size_t i = 0; i<modulus_limbs; i++) { origx[i] = x[i]; }
- fe_add(x, x, z);
- fe_sub(z, origx, z);
-
- for (size_t i = 0; i<modulus_limbs; i++) { origxprime[i] = xprime[i]; }
- fe_add(xprime, xprime, zprime);
- fe_sub(zprime, origxprime, zprime);
- fe_mul(xxprime, xprime, z);
- fe_mul(zzprime, x, zprime);
- for (size_t i = 0; i<modulus_limbs; i++) { origxprime[i] = xxprime[i]; }
- fe_add(xxprime, xxprime, zzprime);
- fe_sub(zzprime, origxprime, zzprime);
- fe_sqr(x3, xxprime);
- fe_sqr(zzzprime, zzprime);
- fe_mul(z3, zzzprime, qmqp);
-
- fe_sqr(xx, x);
- fe_sqr(zz, z);
- fe_mul(x2, xx, zz);
- fe_sub(zz, xx, zz);
- fe_mul(zzz, zz, a24);
- fe_add(zzz, zzz, xx);
- fe_mul(z2, zz, zzz);
-
- // } fmonty
-
- mpn_cnd_swap(bit, nqx2, nqpqx2, modulus_limbs);
- mpn_cnd_swap(bit, nqz2, nqpqz2, modulus_limbs);
-
- t = nqx;
- nqx = nqx2;
- nqx2 = t;
- t = nqz;
- nqz = nqz2;
- nqz2 = t;
- t = nqpqx;
- nqpqx = nqpqx2;
- nqpqx2 = t;
- t = nqpqz;
- nqpqz = nqpqz2;
- nqpqz2 = t;
-
- }
-
- for (size_t i = 0; i < modulus_bytes; i++) { out[i] = 0; }
- for (size_t i = 0; i < 8*modulus_bytes; i++) {
- mp_limb_t bit = (nqx[i/GMP_LIMB_BITS] >> (i%GMP_LIMB_BITS))&1;
- out [i/8] |= bit<<(i%8);
- }
- for (size_t i = 0; i < 8*modulus_bytes; i++) {
- mp_limb_t bit = (nqz[i/GMP_LIMB_BITS] >> (i%GMP_LIMB_BITS))&1;
- out [i/8] ^= bit<<(i%8);
- }
-}
-
-
-int main() {
- // {
- // uint8_t out[sizeof(modulus)] = {0};
- // uint8_t point[sizeof(modulus)] = {9};
- // uint8_t secret[sizeof(modulus)] = {1};
- // crypto_scalarmult(out, point, secret, 256);
- // printf("0x"); for (int i = 31; i>=0; --i) { printf("%02x", out[i]); }; printf("\n");
- // }
-
- // {
- // const uint8_t expected[32] = {0x89, 0x16, 0x1f, 0xde, 0x88, 0x7b, 0x2b, 0x53, 0xde, 0x54, 0x9a, 0xf4, 0x83, 0x94, 0x01, 0x06, 0xec, 0xc1, 0x14, 0xd6, 0x98, 0x2d, 0xaa, 0x98, 0x25, 0x6d, 0xe2, 0x3b, 0xdf, 0x77, 0x66, 0x1a};
- // const uint8_t basepoint[32] = {9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-
- // uint8_t a[32] = {0}, b[32] = {0};
- // uint8_t* in = a;
- // uint8_t* out = b;
- // a[0] = 1;
-
- // for (int i = 0; i < 200; i++) {
- // in[0] &= 248;
- // in[31] &= 127;
- // in[31] |= 64;
-
- // crypto_scalarmult(out, in, 256, basepoint);
- // uint8_t* t = out;
- // out = in;
- // in = t;
- // }
-
- // for (int i = 0; i < 32; i++) {
- // if (in[i] != expected[i]) {
- // return (i+1);
- // }
- // }
- // return 0;
- // }
- uint8_t secret[32];
- uint8_t point[modulus_bytes];
-
- for (int i = 0; i < modulus_bytes; i++) { point[modulus_bytes-i] = i; }
-
- for (int i = 0; i < 1000; i++) {
- for (int j = 0; j<modulus_bytes; j++) {
- secret[j%32] ^= point[j];
- }
- crypto_scalarmult(point, secret, 32*8, point);
- }
- __asm__ __volatile__("" :: "m" (point)); // do not optimize buf away
- return 0;
-}
diff --git a/src/Specific/Framework/bench/gmpxx.cpp b/src/Specific/Framework/bench/gmpxx.cpp
deleted file mode 100644
index 853411cbc..000000000
--- a/src/Specific/Framework/bench/gmpxx.cpp
+++ /dev/null
@@ -1,154 +0,0 @@
-#include <assert.h>
-#include <stdint.h>
-#include <stdio.h>
-#include <gmpxx.h>
-
-#ifndef q_mpz
-#define q_mpz ((1_mpz<<255)-19)
-#endif
-
-#ifndef modulus_bytes_val
-#define modulus_bytes_val 32
-#endif
-
-#ifndef a24_hex
-#define a24_hex 0x01db41
-#endif
-
-static const mpz_class q = q_mpz;
-static const size_t modulus_bytes = modulus_bytes_val;
-static const unsigned int a24 = a24_hex;
-
-static void fe_print(const mpz_class &x) {
- printf("0x"); for (size_t i = modulus_bytes-1; i<modulus_bytes; --i) { printf("%02lx", mpz_class(x>>(8*i)).get_ui()&0xff); }
-}
-
-static void fe_print_frac(mpz_class x, mpz_class z) {
- // remainder -> modulo
- if (z < 0) { z += q; }
- if (mpz_invert(z.get_mpz_t(), z.get_mpz_t(), q.get_mpz_t())) {
- // remainder -> modulo
- if (x < 0) { x += q; }
- x = x*z % q;
- fe_print(x);
- } else {
- printf("inf ");
- }
-}
-
-using std::pair;
-using std::make_pair;
-static const pair<pair<mpz_class,mpz_class>, pair<mpz_class,mpz_class>>
-ladderstep(const mpz_class &x1, const mpz_class &x, const mpz_class &z, const mpz_class &x_p, const mpz_class &z_p) {
- mpz_class t;
- { t = x; mpz_class origx = t;
- { t = (x + z)%q; mpz_class x = t;
- { t = (origx - z)%q; mpz_class z = t;
- { t = x_p; mpz_class origx_p = t;
- { t = (x_p + z_p)%q; mpz_class x_p = t;
- { t = (origx_p - z_p)%q; mpz_class z_p = t;
- { t = (x_p * z)%q; mpz_class xx_p = t;
- { t = (x * z_p)%q; mpz_class zz_p = t;
- { t = xx_p; mpz_class origx_p = t;
- { t = (xx_p + zz_p)%q; mpz_class xx_p = t;
- { t = (origx_p - zz_p)%q; mpz_class zz_p = t;
- { t = (xx_p*xx_p)%q; mpz_class x3 = t;
- { t = (zz_p*zz_p)%q; mpz_class zzz_p = t;
- { t = (zzz_p * x1)%q; mpz_class z3 = t;
- { t = (x*x)%q; mpz_class xx = t;
- { t = (z*z)%q; mpz_class zz = t;
- { t = (xx * zz)%q; mpz_class x2 = t;
- { t = (xx - zz)%q; mpz_class zz = t;
- { t = (zz * a24)%q; mpz_class zzz = t;
- { t = (zzz + xx)%q; mpz_class zzz = t;
- { t = (zz * zzz)%q; mpz_class z2 = t;
-
- return make_pair(make_pair(x2, z2), make_pair(x3, z3));
- }}}}}}}}}}}}}}}}}}}}}
-}
-
-static void crypto_scalarmult(uint8_t *out, const uint8_t *secret, size_t secretbits, const uint8_t *point) {
- mpz_class x1; for (size_t i = 0; i<modulus_bytes; i++) { x1 |= mpz_class(point[i]) << (8*i); }
- mpz_class x = 1, z = 0, x_p = x1, z_p = 1;
-
- bool swap = false;
- for (size_t i = secretbits-1; i < secretbits; --i) {
- bool bit = (secret[i/8] >> (i%8))&1;
- // printf("%d ", bit); fe_print_frac(x, z); printf(" "); fe_print_frac(x_p, z_p); printf("\n");
- if (swap ^ bit) { std::swap(x, x_p); std::swap(z, z_p); }
- swap = bit;
-
- auto pp = ladderstep(x1, x, z, x_p, z_p);
- x = pp.first.first;
- z = pp.first.second;
- x_p = pp.second.first;
- z_p = pp.second.second;
- }
- if (swap) { std::swap(x, x_p); std::swap(z, z_p); }
-
- // remainder -> modulo
- if (z < 0) { z += q; }
-
- // if (mpz_invert(z.get_mpz_t(), z.get_mpz_t(), q.get_mpz_t())) {
- // x = x*z % q;
- // } else {
- // x = 0;
- // }
-
- // // remainder -> modulo
- // if (x < 0) { x += q; }
-
- for (size_t i = 0; i<modulus_bytes; i++) { out[i] = mpz_class(x>>(8*i)).get_ui()&0xff; }
- for (size_t i = 0; i<modulus_bytes; i++) { out[i] ^= mpz_class(z>>(8*i)).get_ui()&0xff; }
-}
-
-int main() {
- // {
- // uint8_t out[modulus_bytes] = {0};
- // uint8_t point[modulus_bytes] = {9};
- // uint8_t secret[modulus_bytes] = {1};
- // crypto_scalarmult(out, secret, 256, point);
- // // printf("0x"); for (int i = 31; i>=0; --i) { printf("%02x", out[i]); }; printf("\n");
- // }
- // {
- // const uint8_t expected[32] = {0x89, 0x16, 0x1f, 0xde, 0x88, 0x7b, 0x2b, 0x53, 0xde, 0x54, 0x9a, 0xf4, 0x83, 0x94, 0x01, 0x06, 0xec, 0xc1, 0x14, 0xd6, 0x98, 0x2d, 0xaa, 0x98, 0x25, 0x6d, 0xe2, 0x3b, 0xdf, 0x77, 0x66, 0x1a};
- // const uint8_t basepoint[32] = {9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-
- // uint8_t a[32] = {0}, b[32] = {0};
- // uint8_t* in = a;
- // uint8_t* out = b;
- // a[0] = 1;
-
- // for (int i = 0; i < 200; i++) {
- // in[0] &= 248;
- // in[31] &= 127;
- // in[31] |= 64;
-
- // crypto_scalarmult(out, in, 256, basepoint);
- // uint8_t* t = out;
- // out = in;
- // in = t;
- // }
-
- // for (int i = 0; i < 32; i++) {
- // if (in[i] != expected[i]) {
- // return (i+1);
- // }
- // }
- // return 0;
- // }
- uint8_t secret[32];
- uint8_t point[modulus_bytes];
-
- for (int i = 0; i < modulus_bytes; i++) { point[modulus_bytes-i] = i; }
-
- for (int i = 0; i < 1000; i++) {
- for (int j = 0; j<modulus_bytes; j++) {
- secret[j%32] ^= point[j];
- }
- crypto_scalarmult(point, secret, 32*8, point);
- }
- __asm__ __volatile__("" :: "m" (point)); // do not optimize buf away
- return 0;
-}
diff --git a/src/Specific/Framework/bench/montladder.py b/src/Specific/Framework/bench/montladder.py
deleted file mode 100644
index e30e3454c..000000000
--- a/src/Specific/Framework/bench/montladder.py
+++ /dev/null
@@ -1,95 +0,0 @@
-#!/usr/bin/env python
-import sys, re
-
-q = 2**448 - 2**224 - 1
-modulus_bytes = 56
-a24 = 39081
-
-def eval_numexpr(numexpr):
- # copying from https://stackoverflow.com/a/25437733/377022
- numexpr = re.sub(r"\.(?![0-9])", "", numexpr) # purge any instance of '.' not followed by a number
- return eval(numexpr, {'__builtins__':None})
-
-def usage(args, updates, retcode=0):
- print('USAGE: %s %s' % (args[0], ' '.join('[-D%s=NUMEXPR]' % k for k, v in updates)))
- sys.exit(retcode)
-
-def update_defaults(args):
- global q
- global modulus_bytes
- global a24
- updates = (('q',q), ('modulus_bytes',modulus_bytes), ('a24',a24))
- if '--help' in args or '-h' in args: usage(args, updates)
- updates = dict(updates)
- found = []
- for k in updates.keys():
- for arg in args[1:]:
- if arg.startswith('-D%s=' % k):
- found.append(arg)
- updates[k] = eval_numexpr(arg[len('-D%s=' % k):])
- elif arg.startswith('-D%s' % k):
- found.append(arg)
- updates[k] = eval_numexpr(arg[len('-D%s' % k):])
- unfound = [arg for arg in args[1:] if arg not in found]
- if len(unfound) > 0:
- print('ERROR: unrecognized arguments: ' + ' '.join(map(repr, unfound)))
- usage(args, updates, retcode=1)
- q = updates['q']
- modulus_bytes = updates['modulus_bytes']
- a24 = updates['a24']
- print('q: %(q)s, modulus_bytes: %(modulus_bytes)s, a24: %(a24)s' % updates)
-
-def ladderstep(x1, x, z, x_p, z_p):
- origx = x
- x = (x + z)%q
- z = (origx - z)%q
- origx_p = x_p
- x_p = (x_p + z_p)%q
- z_p = (origx_p - z_p)%q
- xx_p = (x_p * z)%q
- zz_p = (x * z_p)%q
- origx_p = xx_p
- xx_p = (xx_p + zz_p)%q
- zz_p = (origx_p - zz_p)%q
- x3 = (xx_p*xx_p)%q
- zzz_p = (zz_p*zz_p)%q
- z3 = (zzz_p * x1)%q
- xx = (x*x)%q
- zz = (z*z)%q
- x2 = (xx * zz)%q
- zz = (xx - zz)%q
- zzz = (zz * a24)%q
- zzz = (zzz + xx)%q
- z2 = (zz * zzz)%q
- return ((x2, z2), (x3, z3))
-
-def crypto_scalarmult(secret, secretbits, point):
- x1 = sum(point[i] << (8*i) for i in range(modulus_bytes))
- x = 1; z = 0; x_p = x1; z_p = 1;
- swap = 0
-
- i = secretbits - 1
- while i >= 0:
- bit = secret[i//8] >> (i%8)&1
- # print(bit, x*pow(z,q-2,q)%q, x_p*pow(z_p,q-2,q)%q)
- if swap ^ bit: ((x, z), (x_p, z_p)) = ((x_p, z_p), (x, z))
- swap = bit
- (x, z), (x_p, z_p) = ladderstep(x1, x, z, x_p, z_p)
- i -= 1
- if swap: ((x, z), (x_p, z_p)) = ((x_p, z_p), (x, z))
- x = (x*pow(z,q-2,q))%q
- return [((x >> (8*i)) & 0xff) for i in range(modulus_bytes)]
-
-if __name__ == '__main__':
- update_defaults(sys.argv)
- BASE = [5]+(modulus_bytes-1)*[0]
- print (crypto_scalarmult([1]+(modulus_bytes-1)*[0], 8*modulus_bytes, BASE))
-
- s = [61, 38, 47, 221, 249, 236, 142, 136, 73, 82, 102, 254, 161, 154, 52, 210, 136, 130, 172, 239, 4, 81, 4, 208, 209, 170, 225, 33, 112, 10, 119, 156, 152, 76, 36, 248, 205, 215, 143, 191, 244, 73, 67, 235, 163, 104, 245, 75, 41, 37, 154, 79, 28, 96, 10, 211]
- s[0] &= 252
- s[55] |= 128
-
- P = [6, 252, 230, 64, 250, 52, 135, 191, 218, 95, 108, 242, 213, 38, 63, 138, 173, 136, 51, 76, 189, 7, 67, 127, 2, 15, 8, 249, 129, 77, 192, 49, 221, 189, 195, 140, 25, 198, 218, 37, 131, 250, 84, 41, 219, 148, 173, 161, 138, 167, 167, 251, 78, 248, 160, 134]
- Q = crypto_scalarmult(s, 8*modulus_bytes, P)
- print(''.join(hex(i)[2:] for i in Q))
- print(Q==[206, 62, 79, 249, 90, 96, 220, 102, 151, 218, 29, 177, 216, 94, 106, 251, 223, 121, 181, 10, 36, 18, 215, 84, 109, 95, 35, 159, 225, 79, 186, 173, 235, 68, 95, 198, 106, 1, 176, 119, 157, 152, 34, 57, 97, 17, 30, 33, 118, 98, 130, 247, 61, 217, 107, 111])
diff --git a/src/Specific/Framework/bench/prettyprint.py b/src/Specific/Framework/bench/prettyprint.py
deleted file mode 100755
index f349cee5c..000000000
--- a/src/Specific/Framework/bench/prettyprint.py
+++ /dev/null
@@ -1,77 +0,0 @@
-#!/usr/bin/env python3
-import re, sys
-
-def translate_typename(t):
- return {
- 'word8':'uint8_t',
- 'word16':'uint16_t',
- 'word32':'uint32_t',
- 'word64':'uint64_t',
- 'word128':'uint128_t',
- 'word 8':'uint8_t',
- 'word 16':'uint16_t',
- 'word 32':'uint32_t',
- 'word 64':'uint64_t',
- 'word 128':'uint128_t'
- }.get(t,t)
-
-def cleanup_type(t):
- t = t.strip()
- if t.startswith('ReturnType (') and t.endswith(')'):
- t = t[len('ReturnType ('):-len(')')]
- return t
-
-def translate_type(t):
- t = cleanup_type(t)
- fieldtypes = [s.strip() for s in t.split('*')]
- assert len(set(fieldtypes)) == 1
- return translate_typename(fieldtypes[0]), len(fieldtypes)
-
-
-funcname = sys.argv[1]
-_, _, _, binderline, *bodylines, returnline, _, typeline = sys.stdin.read().strip('\n').split('\n')
-
-*arguments, (returntype, returnlength) = [translate_type(s) for s in typeline.lstrip(": ").split('→')]
-
-binders = binderline.replace('λ','').replace('\'', '').replace('(','').replace(')','').replace('%core','').split(',')
-binders = [b.strip() for b in binders if b.strip()]
-
-returnline = returnline.strip()
-assert returnline.endswith(')') # I don't know why there is an extra paren on that line
-returnline = returnline[:-len(')')].strip()
-if returnline.startswith('return'):
- returnline = returnline[len('return'):].strip()
-if returnline.startswith('(') and returnline.endswith(')'): # but only once... idk why
- returnline = returnline[1:-1].strip()
-returneds = returnline.replace('Return','').split(',')
-returneds = [r.strip() for r in returneds if r.strip()]
-
-assert (len(binders) == sum(l for (_, l) in arguments))
-
-indent = ' '
-
-outparam = [(returntype, "out", returnlength)]
-inparams = [("const "+t, "in%d"%(i+1), l) for (i,(t,l)) in enumerate(arguments)]
-print ("static void "+funcname+"(" + ", ".join("%s %s[%d]"%x for x in (outparam+inparams)) + ") {")
-
-braces = 0
-for (b, (i, (t, a))) in (list(zip(binders,sum((list(reversed(list(enumerate(l*[(t,n)])))) for (t, n, l) in inparams), [])))):
- print (indent+ "{ %s %s = %s[%d];"%(t, b, a, i))
- braces += 1
-
-mulx_re = re.compile(r'^([^,]*),(\s*)([^ ]*) ([^ ]*)(.*)(mulx.*)\)([; ]*)$'); mulx_sub = r' \3 \4;\2\1\5_\6, &\4)\7'
-adc_re = re.compile(r'^([^,]*) ([^, ]*)(\s*),(.*)(addcarryx.*)\)([; ]*)$'); adc_sub = r'\1 \2\3;\4_\5, &\2)\6'
-sbb_re = re.compile(r'^([^,]*) ([^, ]*)(\s*),(.*)(subborrow.*)\)([; ]*)$'); sbb_sub = r'\1 \2\3;\4_\5, &\2)\6'
-for s in bodylines:
- s = re.sub(mulx_re, mulx_sub, s)
- s = re.sub(adc_re, adc_sub, s)
- s = re.sub(sbb_re, sbb_sub, s)
- print (indent+ "{"+s)
- braces += 1
-
-for (i,r) in enumerate(reversed(returneds)):
- print (indent+ "out[%d] = %s;"%(i, r))
-
-print (indent+'}'*braces)
-
-print ('}')
diff --git a/src/Specific/Framework/make_curve.py b/src/Specific/Framework/make_curve.py
deleted file mode 100755
index 71f6d6ad7..000000000
--- a/src/Specific/Framework/make_curve.py
+++ /dev/null
@@ -1,542 +0,0 @@
-#!/usr/bin/env python
-from __future__ import with_statement
-import json, sys, os, math, re, shutil, io
-from fractions import Fraction
-
-### Python 2/3 compatibility hacks
-# unicode doesn't exist in python3 (str is unicode by default), so we
-# set unicode to str there (but we need proper unicode in python2)
-try:
- unicode
-except NameError:
- unicode = str
-
-DEFAULT_A24_FOR_BENCH = 121665
-def compute_bitwidth(base):
- return 2**int(math.ceil(math.log(base, 2)))
-def compute_sz(modulus, base):
- return 1 + int(math.ceil(math.log(modulus, 2) / base))
-def default_carry_chains(sz):
- return ['seq 0 (pred %(sz)s)' % locals(), '[0; 1]']
-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 []
- assert(rest.strip()[0] == '-')
- rest = negate_numexpr(rest.strip()[1:])
- ret = []
- for part in re.findall(r'(-?[0-9\^\*]+)', rest.replace(' ', '')):
- if part.isdigit() or (part[:1] == '-' and part[1:].isdigit()):
- ret.append(('1', part))
- elif part[:2] == '2^' and part[2:].isdigit():
- ret.append((part, '1'))
- elif part[:3] == '-2^' and part[3:].isdigit():
- ret.append((part[1:], '-1'))
- elif len(part.split('*')) == 2:
- a, b = part.split("*")
- if "^" not in b:
- ret.append((part, '1'))
- else:
- assert(b.replace(' ', '')[:2] == '2^')
- ret.append((a.strip(), b.strip()))
- else:
- raw_input('Unhandled part: %s' % part)
- ret = None
- break
- if ret is not None:
- return list(reversed(ret))
- # XXX FIXME: Is this the right way to extract c?
- return [('1', rest)]
-
-def parse_base(base):
- ret = 0
- for term in base.split('+'):
- term = term.strip()
- if term.isdigit():
- ret += int(term)
- elif '.' in term and '/' not in term:
- ret += float(term)
- elif '/' in term and '.' not in term:
- ret += Fraction(term)
- else:
- raw_input('Unhandled: %s' % term)
- assert(False)
- return ret
-
-def negate_numexpr(expr):
- remap = dict([(d, d) for d in '0123456789^* '] + [('-', '+'), ('+', '-')])
- return ''.join(remap[ch] for ch in expr)
-
-def usage(exitcode=0, errmsg=None):
- print('USAGE: %s [-f|--force] PARAMETERS.json OUTPUT_FOLDER' % sys.argv[0])
- if errmsg is not None:
- print(errmsg)
- sys.exit(exitcode)
-
-def get_file_root(folder=os.path.dirname(__file__), filename='Makefile'):
- dir_path = os.path.realpath(folder)
- while not os.path.isfile(os.path.join(dir_path, filename)) and dir_path != '/':
- dir_path = os.path.realpath(os.path.join(dir_path, '..'))
- if not os.path.isfile(os.path.join(dir_path, filename)):
- print('ERROR: Could not find Makefile in the root of %s' % folder)
- raise Exception
- return dir_path
-
-def repeat_until_unchanged(update, arg):
- changed = True
- while changed:
- last = repr(arg)
- arg = update(arg)
- changed = (repr(arg) != last)
- return arg
-
-def format_c_code(header, code, numargs, sz, indent=' ', closing_indent=' '):
- if closing_indent is None: closing_indent = indent
- if code is None or code.strip() == '':
- return 'None'
- ARGS = 'abcdefghijklmnopqrstuvwxyz'
- assert(numargs <= len(ARGS))
- if header is None:
- header = ''
- else:
- header = '\n%s%s' % (indent, header)
- ret = 'Some (fun %s =>%s' % (' '.join(ARGS[:numargs]), header)
- input_map = {}
- lines = [line for line in code.strip().split(';')]
- lines = [line.replace('do {', '') for line in lines]
- lines = [re.sub(r'\(u?int[0-9]+_t\) ', '', line) for line in lines]
- lines = [re.sub(r'\(limb\) ', '', line) for line in lines]
- lines = [re.sub(r'\(s32\) ', '', line) for line in lines]
- lines = [repeat_until_unchanged((lambda line: re.sub(r'\(([A-Za-z0-9_]+)\)', r'\1', line)),
- line)
- for line in lines]
- lines = [repeat_until_unchanged((lambda line: re.sub(r'\(([A-Za-z0-9_]+\[[0-9]+\])\)', r'\1', line)),
- line)
- for line in lines]
- out_match = re.match(r'^\s*u?int[0-9]+_t ([A-Za-z_][A-Za-z_0-9]*)\[([0-9]+)\]$', lines[0])
- if out_match is not None:
- out_var, out_count = out_match.groups()
- assert(int(out_count) == sz)
- else:
- assert('output[' in ';\n'.join(lines))
- out_var = 'output'
- ret_code = []
- do_fix = (lambda line: re.sub(r'([A-Za-z_][A-Za-z0-9_]*)\[([0-9]+)\]', r'\1\2', line))
- for line in lines:
- out_match = re.match(r'^\s*u?int[0-9]+_t [A-Za-z_0-9]+\[[0-9]+\]$', line)
- limb_match = re.match(r'^\s*limb [a-zA-Z0-9, ]+$', line)
- in_match = re.match(r'^\s*([A-Za-z_][A-Za-z0-9_]*)\s*=\s*in([0-9]*)\[([0-9]+)\]$', line)
- fixed_line = do_fix(line)
- normal_match = re.match(r'^(\s*)([A-Za-z_][A-Za-z0-9_]*)(\s*)=(\s*)([A-Za-z_0-9\(\)\s<>*+-]+)$', fixed_line)
- upd_match = re.match(r'^(\s*)([A-Za-z_][A-Za-z0-9_]*)(\s*)([*+])=(\s*)([A-Za-z_0-9\(\)\s<>*+-]+)$', fixed_line)
- if line == '':
- ret_code.append(line)
- elif out_match or limb_match: pass
- elif in_match:
- var, in_num, idx = in_match.groups()
- if in_num == '':
- assert('in1[' not in code)
- in_num = '1'
- in_num = int(in_num) - 1
- idx = int(idx)
- input_map[in_num] = input_map.get(in_num, {})
- input_map[in_num][idx] = var
- elif normal_match:
- s0, var, s1, s2, val = normal_match.groups()
- ret_code.append('%sdlet %s%s:=%s%s in' % (s0, var, s1, s2, val))
- elif upd_match:
- s0, var, s1, op, s2, val = upd_match.groups()
- ret_code.append('%sdlet %s%s:=%s%s %s %s in' % (s0, var, s1, s2, var, op, val))
- else:
- print('Unhandled line:')
- raw_input(line)
- ret_code = ' '.join(ret_code).strip().split('\n')
- ret_code = [((indent + i.strip(' \n')) if i.strip()[:len('dlet ')] == 'dlet '
- else (indent + ' ' + i.rstrip(' \n'))).rstrip()
- for i in ret_code]
- main_code = '\n'.join(ret_code)
- arg_code = []
- for in_count in sorted(input_map.keys()):
- arg_code.append("%slet '(%s) := %s in"
- % (indent,
- ', '.join(v for k, v in sorted(input_map[in_count].items(), reverse=True)),
- ARGS[in_count]))
- if len(input_map.keys()) == 0:
- for in_count in range(numargs):
- in_str = str(in_count + 1)
- if in_count == 0: in_str = ''
- arg_code.append("%slet '(%s) := %s in"
- % (indent,
- ', '.join(do_fix('in%s[%d]' % (in_str, v)) for v in reversed(range(sz))),
- ARGS[in_count]))
- ret += '\n%s\n' % '\n'.join(arg_code)
- ret += main_code
- ret += '\n%s(%s)' % (indent, ', '.join(do_fix('%s[%d]' % (out_var, i)) for i in reversed(range(sz))))
- ret += '\n%s)' % closing_indent
- return ret
-
-def nested_list_to_string(v):
- if isinstance(v, bool):
- return {True:'true', False:'false'}[v]
- elif isinstance(v, str) or isinstance(v, int) or isinstance(v, unicode):
- return str(v)
- elif isinstance(v, list):
- return '[%s]' % '; '.join(map(nested_list_to_string, v))
- elif isinstance(v, tuple):
- return '(%s)' % ', '.join(map(nested_list_to_string, v))
- else:
- print('ERROR: Invalid type in nested_list_to_string: %s' % str(type(v)))
- assert(False)
-
-def as_bool(v):
- if isinstance(v, str) or isinstance(v, unicode): return {'true':True, 'false':False}[v]
- if isinstance(v, bool): return v
- raise Exception('Not a bool: %s' % repr(v))
-
-def make_curve_parameters(parameters):
- def fix_option(term, scope_string=''):
- if not isinstance(term, str) and not isinstance(term, unicode):
- return term
- if term[:len('Some ')] != 'Some ' and term != 'None':
- if ' ' in term and (term[0] + term[-1]) not in ('()', '[]'):
- return 'Some (%s)%s' % (term, scope_string)
- return 'Some %s%s' % (term, scope_string)
- return term
- replacements = dict(parameters)
- assert(all(ch in '0123456789^+-* ' for ch in parameters['modulus']))
- modulus = eval(parameters['modulus'].replace('^', '**'))
- base = parse_base(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)))
- sz = int(replacements['sz'])
- replacements['a24'] = fix_option(parameters.get('a24', 'None'))
- replacements['carry_chains'] = fix_option(parameters.get('carry_chains', 'None'))
- if isinstance(replacements['carry_chains'], list):
- defaults = default_carry_chains(replacements['sz'])
- replacements['carry_chains'] \
- = ('Some %s%%nat'
- % nested_list_to_string([(v if v != 'default' else defaults[i])
- for i, v in enumerate(replacements['carry_chains'])]))
- elif replacements['carry_chains'] in ('default', 'Some default'):
- replacements['carry_chains'] = 'Some %s%%nat' % nested_list_to_string(default_carry_chains(replacements['sz']))
- replacements['s'] = parameters.get('s', compute_s(parameters['modulus']))
- replacements['c'] = parameters.get('c', compute_c(parameters['modulus']))
- for op, nargs in (('mul', 2), ('square', 1)):
- replacements[op] = format_c_code(parameters.get(op + '_header', None),
- parameters.get(op + '_code', None),
- nargs,
- sz)
- replacements['coef_div_modulus_raw'] = replacements.get('coef_div_modulus', '0')
- replacements['freeze'] = fix_option(nested_list_to_string(replacements.get('freeze', 'freeze' in parameters.get('operations', []))))
- replacements['ladderstep'] = nested_list_to_string(replacements.get('ladderstep', any(f in parameters.get('operations', []) for f in ('ladderstep', 'xzladderstep'))))
- for k, scope_string in (('upper_bound_of_exponent_loose', ''),
- ('upper_bound_of_exponent_tight', ''),
- ('allowable_bit_widths', '%nat'),
- ('freeze_extra_allowable_bit_widths', '%nat'),
- ('coef_div_modulus', '%nat'),
- ('modinv_fuel', '%nat'),
- ('karatsuba', ''),
- ('goldilocks', '')):
- replacements[k] = fix_option(nested_list_to_string(replacements.get(k, 'None')), scope_string=scope_string)
- for k in ('montgomery', ):
- if k not in replacements.keys():
- replacements[k] = False
- for k in ('s', 'c', 'karatsuba', 'goldilocks', 'montgomery'):
- replacements[k] = nested_list_to_string(replacements[k])
- for k in ('extra_prove_mul_eq', 'extra_prove_square_eq'):
- if k not in replacements.keys():
- replacements[k] = 'idtac'
- ret = r"""Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : %(modulus)s
-Base: %(base)s
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := %(sz)s%%nat;
- base := %(reformatted_base)s;
- bitwidth := %(bitwidth)s;
- s := %(s)s;
- c := %(c)s;
- carry_chains := %(carry_chains)s;
-
- a24 := %(a24)s;
- coef_div_modulus := %(coef_div_modulus)s;
-
- goldilocks := %(goldilocks)s;
- karatsuba := %(karatsuba)s;
- montgomery := %(montgomery)s;
- freeze := %(freeze)s;
- ladderstep := %(ladderstep)s;
-
- mul_code := %(mul)s;
-
- square_code := %(square)s;
-
- upper_bound_of_exponent_loose := %(upper_bound_of_exponent_loose)s;
- upper_bound_of_exponent_tight := %(upper_bound_of_exponent_tight)s;
- allowable_bit_widths := %(allowable_bit_widths)s;
- freeze_extra_allowable_bit_widths := %(freeze_extra_allowable_bit_widths)s;
- modinv_fuel := %(modinv_fuel)s
- |}.
-
-Ltac extra_prove_mul_eq _ := %(extra_prove_mul_eq)s.
-Ltac extra_prove_square_eq _ := %(extra_prove_square_eq)s.
-""" % replacements
- return ret
-
-def make_synthesis(prefix):
- return r"""Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import %s.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.
-""" % prefix
-
-def make_synthesized_arg(fearg, prefix, montgomery=False):
- def make_from_arg(arg, nargs, phi_arg_postfix='', phi_output_postfix='', prefix=prefix):
- LETTERS = 'abcdefghijklmnopqrstuvwxyz'
- assert(nargs <= len(LETTERS))
- arg_names = ' '.join(LETTERS[:nargs])
- if not montgomery:
- arg_types = ' -> '.join(['feBW%s' % phi_arg_postfix] * nargs)
- mapped_args = ' '.join('(phiBW%s %s)' % (phi_arg_postfix, l)
- for l in LETTERS[:nargs])
- feBW_output = 'feBW' + phi_output_postfix
- phi_output = 'phiBW' + phi_output_postfix
- else:
- arg_types = ' -> '.join(['feBW_small'] * nargs)
- mapped_args = ' '.join('(phiM_small %s)' % l
- for l in LETTERS[:nargs])
- feBW_output = 'feBW_small'
- phi_output = 'phiM_small'
- return locals()
- GEN_PREARG = r"""Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import %(prefix)s.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition %(arg)s :
- { %(arg)s : %(arg_types)s -> %(feBW_output)s
- | forall %(arg_names)s, %(phi_output)s (%(arg)s %(arg_names)s) = """
- GEN_MIDARG = "F.%(arg)s %(mapped_args)s"
- SQUARE_MIDARG = "F.mul %(mapped_args)s %(mapped_args)s"
- CARRY_MIDARG = "%(mapped_args)s"
- GEN_POSTARG = r""" }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_%(arg)s ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions %(arg)s.
-"""
- GEN_ARG = GEN_PREARG + GEN_MIDARG + GEN_POSTARG
- SQUARE_ARG = GEN_PREARG + SQUARE_MIDARG + GEN_POSTARG
- CARRY_ARG = GEN_PREARG + CARRY_MIDARG + GEN_POSTARG
- nargs_map = {'mul':2, 'sub':2, 'add':2, 'square':1, 'opp':1, 'carry':1}
- special_args = {'fecarry':CARRY_ARG, 'fecarry_square':SQUARE_ARG, 'fesquare':SQUARE_ARG}
- if fearg in ('fecarry_mul', 'fecarry_sub', 'fecarry_add', 'fecarry_square', 'fecarry_opp'):
- nargs = nargs_map[fearg.split('_')[-1]]
- ARG = special_args.get(fearg, GEN_ARG)
- return ARG % make_from_arg(fearg[2:], nargs=nargs, phi_arg_postfix='_tight', phi_output_postfix='_tight')
- elif fearg in ('femul', 'fesquare', 'fecarry'):
- ARG = special_args.get(fearg, GEN_ARG)
- nargs = nargs_map[fearg[2:]]
- return ARG % make_from_arg(fearg[2:], nargs=nargs, phi_arg_postfix='_loose', phi_output_postfix='_tight')
- if fearg in ('fesub', 'feadd', 'feopp'):
- nargs = nargs_map[fearg[2:]]
- return GEN_ARG % make_from_arg(fearg[2:], nargs=nargs, phi_arg_postfix='_tight', phi_output_postfix='_loose')
- elif fearg in ('freeze',):
- return r"""Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import %(prefix)s.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.
-""" % {'prefix':prefix}
- elif fearg in ('fenz',):
- assert(fearg == 'fenz')
- assert(montgomery)
- full_arg = 'nonzero'
- return r"""Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import %(prefix)s.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition %(full_arg)s :
- { %(full_arg)s : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (%(full_arg)s a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_%(full_arg)s ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions %(full_arg)s.
-""" % {'prefix':prefix, 'full_arg':full_arg}
- elif fearg in ('ladderstep', 'xzladderstep'):
- return r"""Require Import Crypto.Arithmetic.Core.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.Ladderstep.
-Require Import %(prefix)s.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition xzladderstep :
- { xzladderstep : feW -> feW * feW -> feW * feW -> feW * feW * (feW * feW)
- | forall x1 Q Q',
- let xz := xzladderstep x1 Q Q' in
- let eval := B.Positional.Fdecode wt in
- feW_tight_bounded x1
- -> feW_tight_bounded (fst Q) /\ feW_tight_bounded (snd Q)
- -> feW_tight_bounded (fst Q') /\ feW_tight_bounded (snd Q')
- -> ((feW_tight_bounded (fst (fst xz)) /\ feW_tight_bounded (snd (fst xz)))
- /\ (feW_tight_bounded (fst (snd xz)) /\ feW_tight_bounded (snd (snd xz))))
- /\ Tuple.map (n:=2) (Tuple.map (n:=2) phiW) xz = FMxzladderstep (m:=m) (eval (proj1_sig a24_sig)) (phiW x1) (Tuple.map (n:=2) phiW Q) (Tuple.map (n:=2) phiW Q') }.
-Proof.
- Set Ltac Profiling.
- synthesize_xzladderstep ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions xzladderstep.
-""" % {'prefix':prefix}
- else:
- print('ERROR: Unsupported operation: %s' % fearg)
- raise ArgumentError
-
-
-def make_display_arg(fearg, prefix):
- file_name = fearg
- function_name = fearg
- if fearg in ('femul', 'fesub', 'feadd', 'fesquare', 'feopp', 'fecarry',
- 'fecarry_mul', 'fecarry_sub', 'fecarry_add', 'fecarry_square', 'fecarry_opp'):
- function_name = fearg[2:]
- elif fearg in ('freeze', 'xzladderstep'):
- pass
- elif fearg in ('fenz',):
- function_name = 'nonzero'
- elif fearg in ('ladderstep', ):
- function_name = 'xzladderstep'
- else:
- print('ERROR: Unsupported operation: %s' % fearg)
- raise ArgumentError
- return r"""Require Import %(prefix)s.%(file_name)s.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display %(function_name)s.
-""" % locals()
-
-def make_compiler(compiler):
- return r"""#!/bin/sh
-set -eu
-
-%s "$@"
-""" % compiler
-
-def make_py_interpreter(parameters):
- q = repr(str(parameters['modulus'])).replace('^', '**')
- modulus_bytes = repr(str(parameters['base']))
- a24 = repr(str(parameters.get('a24', DEFAULT_A24_FOR_BENCH)))
- return r"""#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq=%(q)s -Dmodulus_bytes=%(modulus_bytes)s -Da24=%(a24)s
-""" % locals()
-
-
-DONT_EDIT_STR = 'WARNING: This file was copied from %s.\n If you edit it here, changes will be erased the next time remake_curves.sh is run.'
-DONT_EDIT_HEADERS = {
- '.c' : '/* ' + DONT_EDIT_STR + ' */',
- '.h' : '/* ' + DONT_EDIT_STR + ' */',
- '.v' : '(* ' + DONT_EDIT_STR + ' *)',
- '.ml' : '(* ' + DONT_EDIT_STR + ' *)',
- '.ml4' : '(* ' + DONT_EDIT_STR + ' *)',
- '.py' : '# ' + DONT_EDIT_STR.replace('\n', '\n# '),
-}
-
-
-
-def main(*args):
- if '--help' in args[1:] or '-h' in args[1:]: usage(0)
- force = any(f in args[1:] for f in ('-f', '--force'))
- args = [args[0]] + [arg for arg in args[1:] if arg not in ('-f', '--force')]
- if len(args) != 3: usage(1, errmsg='Error: Invalid number of arguments %d (%s)' % (len(args), ' '.join(args)))
- with open(args[1], 'r') as f:
- parameters = f.read()
- output_folder = os.path.realpath(args[2])
- parameters_folder = os.path.dirname(os.path.realpath(args[1]))
- parameters = json.loads(parameters, strict=False)
- root = get_file_root(folder=output_folder)
- output_prefix = 'Crypto.' + os.path.normpath(os.path.relpath(output_folder, os.path.join(root, 'src'))).replace(os.sep, '.')
- outputs = {}
- outputs['CurveParameters.v'] = make_curve_parameters(parameters)
- outputs['Synthesis.v'] = make_synthesis(output_prefix)
- for arg in parameters['operations']:
- outputs[arg + '.v'] = make_synthesized_arg(arg, output_prefix, montgomery=as_bool(parameters.get('montgomery', 'false')))
- outputs[arg + 'Display.v'] = make_display_arg(arg, output_prefix)
- for fname in parameters.get('extra_files', []):
- _, ext = os.path.splitext(fname)
- header = ''
- if ext in DONT_EDIT_HEADERS.keys():
- header = DONT_EDIT_HEADERS[ext] % os.path.relpath(fname, os.path.join(root, 'src'))
- outputs[os.path.basename(fname)] = header + '\n' + open(os.path.join(parameters_folder, fname), 'r').read()
- if 'compiler' in parameters.keys():
- outputs['compiler.sh'] = make_compiler(parameters['compiler'])
- if 'compilerxx' in parameters.keys():
- outputs['compilerxx.sh'] = make_compiler(parameters['compilerxx'])
- outputs['py_interpreter.sh'] = make_py_interpreter(parameters)
- file_list = tuple((k, os.path.join(output_folder, k)) for k in sorted(outputs.keys()))
- if not force:
- extant_files = [os.path.relpath(fname, os.getcwd())
- for k, fname in file_list
- if os.path.isfile(fname) and open(fname, 'r').read() != outputs[k]]
- if len(extant_files) > 0:
- print('ERROR: The files %s already exist; pass --force to overwrite them' % ', '.join(extant_files))
- sys.exit(1)
- if not os.path.isdir(output_folder):
- os.makedirs(output_folder)
- new_files = []
- for k, fname in file_list:
- if os.path.isfile(fname):
- if open(fname, 'r').read() == outputs[k]:
- continue
- new_files.append(fname)
- with io.open(fname, 'w', newline='\n') as f:
- f.write(unicode(outputs[k]))
- if any(fname.endswith(name) for name in ('compiler.sh', 'compilerxx.sh', 'py_interpreter.sh')):
- mode = os.fstat(f.fileno()).st_mode
- mode |= 0o111
- mode &= 0o7777
- if 'fchmod' in os.__dict__.keys():
- os.fchmod(f.fileno(), mode)
- else:
- os.chmod(f.name, mode)
- if len(new_files) > 0:
- print('git add ' + ' '.join('"%s"' % i for i in new_files))
-
-if __name__ == '__main__':
- main(*sys.argv)
diff --git a/src/Specific/IntegrationTestSquareDisplayHandPostLinearizedCSE.log b/src/Specific/IntegrationTestSquareDisplayHandPostLinearizedCSE.log
deleted file mode 100644
index ea1954c7c..000000000
--- a/src/Specific/IntegrationTestSquareDisplayHandPostLinearizedCSE.log
+++ /dev/null
@@ -1,68 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint128_t x9 = (uint128_t) x2 * (uint128_t) x7;
- uint128_t x10 = (uint128_t) x4 * (uint128_t) x8;
- uint128_t x11 = (uint128_t) x6 * (uint128_t) x6;
- uint128_t x14 = x10 + x9;
- uint128_t x15 = x11 + x14;
- uint128_t x16 = x10 + x15;
- uint128_t x17 = x9 + x16;
- uint128_t x18 = (uint128_t) x2 * (uint128_t) x8;
- uint128_t x19 = (uint128_t) x4 * (uint128_t) x6;
- uint128_t x22 = x19 + x18;
- uint128_t x23 = x19 + x22;
- uint128_t x24 = x18 + x23;
- uint128_t x25 = (uint128_t) x7 * (uint128_t) x7;
- uint128_t x26 = (uint128_t) 0x13 * x25;
- uint128_t x27 = x24 + x26;
- uint128_t x28 = (uint128_t) x2 * (uint128_t) x6;
- uint128_t x29 = (uint128_t) x4 * (uint128_t) x4;
- uint128_t x31 = x29 + x28;
- uint128_t x32 = x28 + x31;
- uint128_t x33 = (uint128_t) x8 * (uint128_t) x7;
- uint128_t x35 = x33 + x33;
- uint128_t x36 = (uint128_t) 0x13 * x35;
- uint128_t x37 = x32 + x36;
- uint128_t x38 = (uint128_t) x2 * (uint128_t) x4;
- uint128_t x40 = x38 + x38;
- uint128_t x41 = (uint128_t) x6 * (uint128_t) x7;
- uint128_t x42 = (uint128_t) x8 * (uint128_t) x8;
- uint128_t x44 = x42 + x41;
- uint128_t x45 = x41 + x44;
- uint128_t x46 = (uint128_t) 0x13 * x45;
- uint128_t x47 = x40 + x46;
- uint128_t x48 = (uint128_t) x2 * (uint128_t) x2;
- uint128_t x49 = (uint128_t) x4 * (uint128_t) x7;
- uint128_t x50 = (uint128_t) x6 * (uint128_t) x8;
- uint128_t x53 = x50 + x49;
- uint128_t x54 = x50 + x53;
- uint128_t x55 = x49 + x54;
- uint128_t x56 = (uint128_t) 0x13 * x55;
- uint128_t x57 = x48 + x56;
- uint64_t x58 = (uint64_t) (x57 >> 0x33);
- uint128_t x59 = (uint128_t) x58 + x47;
- uint64_t x60 = (uint64_t) (x59 >> 0x33);
- uint128_t x61 = (uint128_t) x60 + x37;
- uint64_t x62 = (uint64_t) (x61 >> 0x33);
- uint128_t x63 = (uint128_t) x62 + x27;
- uint64_t x64 = (uint64_t) (x63 >> 0x33);
- uint128_t x65 = (uint128_t) x64 + x17;
- uint64_t x66 = (uint64_t) x57 & 0x7ffffffffffff;
- uint64_t x67 = (uint64_t) (x65 >> 0x33);
- uint64_t x68 = 0x13 * x67;
- uint64_t x69 = x66 + x68;
- uint64_t x70 = (uint64_t) (x69 >> 0x33);
- uint64_t x71 = (uint64_t) x59 & 0x7ffffffffffff;
- uint64_t x72 = x70 + x71;
- uint64_t x73 = (uint64_t) x65 & 0x7ffffffffffff;
- uint64_t x74 = (uint64_t) x63 & 0x7ffffffffffff;
- uint64_t x75 = (uint64_t) (x72 >> 0x33);
- uint64_t x76 = (uint64_t) x61 & 0x7ffffffffffff;
- uint64_t x77 = x75 + x76;
- uint64_t x78 = x72 & 0x7ffffffffffff;
- uint64_t x79 = x69 & 0x7ffffffffffff;
- (Return x73, Return x74, Return x77, Return x78, Return x79))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/NISTP256/AMD128/CurveParameters.v b/src/Specific/NISTP256/AMD128/CurveParameters.v
deleted file mode 100644
index f994c8a6d..000000000
--- a/src/Specific/NISTP256/AMD128/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256-2^224+2^192+2^96-1
-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)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/NISTP256/AMD128/Synthesis.v b/src/Specific/NISTP256/AMD128/Synthesis.v
deleted file mode 100644
index 4dffed20b..000000000
--- a/src/Specific/NISTP256/AMD128/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.NISTP256.AMD128.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/NISTP256/AMD128/compiler.sh b/src/Specific/NISTP256/AMD128/compiler.sh
deleted file mode 100644
index 73e1a78e0..000000000
--- a/src/Specific/NISTP256/AMD128/compiler.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mbmi2 -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing "$@"
diff --git a/src/Specific/NISTP256/AMD128/feadd.v b/src/Specific/NISTP256/AMD128/feadd.v
deleted file mode 100644
index 5ee329e4e..000000000
--- a/src/Specific/NISTP256/AMD128/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.NISTP256.AMD128.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/NISTP256/AMD128/feaddDisplay.log b/src/Specific/NISTP256/AMD128/feaddDisplay.log
deleted file mode 100644
index 89d8839bf..000000000
--- a/src/Specific/NISTP256/AMD128/feaddDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x x0 : word128 * word128,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x4, x5, (x6, x7))%core,
- uint128_t x9, uint8_t x10 = addcarryx_u128(0x0, x5, x7);
- uint128_t x12, uint8_t x13 = addcarryx_u128(x10, x4, x6);
- uint128_t x15, uint8_t x16 = subborrow_u128(0x0, x9, 0xffffffffffffffffffffffffL);
- uint128_t x18, uint8_t x19 = subborrow_u128(x16, x12, 0xffffffff000000010000000000000000L);
- uint128_t _, uint8_t x22 = subborrow_u128(x19, x13, 0x0);
- uint128_t x23 = cmovznz128(x22, x18, x12);
- uint128_t x24 = cmovznz128(x22, x15, x9);
- return (x23, x24))
-(x, x0)%core
- : word128 * word128 → word128 * word128 → ReturnType (uint128_t * uint128_t)
diff --git a/src/Specific/NISTP256/AMD128/feaddDisplay.v b/src/Specific/NISTP256/AMD128/feaddDisplay.v
deleted file mode 100644
index cde97baed..000000000
--- a/src/Specific/NISTP256/AMD128/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.NISTP256.AMD128.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/NISTP256/AMD128/femul.v b/src/Specific/NISTP256/AMD128/femul.v
deleted file mode 100644
index 7c2ecbec1..000000000
--- a/src/Specific/NISTP256/AMD128/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.NISTP256.AMD128.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/NISTP256/AMD128/femulDisplay.log b/src/Specific/NISTP256/AMD128/femulDisplay.log
deleted file mode 100644
index 96bc3e200..000000000
--- a/src/Specific/NISTP256/AMD128/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word128 * word128,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x4, x5, (x6, x7))%core,
- uint128_t x9, uint128_t x10 = mulx_u128(x5, x7);
- uint128_t x12, uint128_t x13 = mulx_u128(x5, x6);
- uint128_t x15, uint8_t x16 = addcarryx_u128(0x0, x10, x12);
- uint128_t x18, uint8_t _ = addcarryx_u128(0x0, x16, x13);
- uint128_t x21, uint128_t _ = mulx_u128(x9, 0x1000000000000000000000001L);
- uint128_t x24, uint128_t x25 = mulx_u128(x21, 0xffffffffffffffffffffffffL);
- uint128_t x27, uint128_t x28 = mulx_u128(x21, 0xffffffff000000010000000000000000L);
- uint128_t x30, uint8_t x31 = addcarryx_u128(0x0, x25, x27);
- uint128_t x33, uint8_t _ = addcarryx_u128(0x0, x31, x28);
- uint128_t _, uint8_t x37 = addcarryx_u128(0x0, x9, x24);
- uint128_t x39, uint8_t x40 = addcarryx_u128(x37, x15, x30);
- uint128_t x42, uint8_t x43 = addcarryx_u128(x40, x18, x33);
- uint128_t x45, uint128_t x46 = mulx_u128(x4, x7);
- uint128_t x48, uint128_t x49 = mulx_u128(x4, x6);
- uint128_t x51, uint8_t x52 = addcarryx_u128(0x0, x46, x48);
- uint128_t x54, uint8_t _ = addcarryx_u128(0x0, x52, x49);
- uint128_t x57, uint8_t x58 = addcarryx_u128(0x0, x39, x45);
- uint128_t x60, uint8_t x61 = addcarryx_u128(x58, x42, x51);
- uint128_t x63, uint8_t x64 = addcarryx_u128(x61, x43, x54);
- uint128_t x66, uint128_t _ = mulx_u128(x57, 0x1000000000000000000000001L);
- uint128_t x69, uint128_t x70 = mulx_u128(x66, 0xffffffffffffffffffffffffL);
- uint128_t x72, uint128_t x73 = mulx_u128(x66, 0xffffffff000000010000000000000000L);
- uint128_t x75, uint8_t x76 = addcarryx_u128(0x0, x70, x72);
- uint128_t x78, uint8_t _ = addcarryx_u128(0x0, x76, x73);
- uint128_t _, uint8_t x82 = addcarryx_u128(0x0, x57, x69);
- uint128_t x84, uint8_t x85 = addcarryx_u128(x82, x60, x75);
- uint128_t x87, uint8_t x88 = addcarryx_u128(x85, x63, x78);
- uint8_t x89 = (x88 + x64);
- uint128_t x91, uint8_t x92 = subborrow_u128(0x0, x84, 0xffffffffffffffffffffffffL);
- uint128_t x94, uint8_t x95 = subborrow_u128(x92, x87, 0xffffffff000000010000000000000000L);
- uint128_t _, uint8_t x98 = subborrow_u128(x95, x89, 0x0);
- uint128_t x99 = cmovznz128(x98, x94, x87);
- uint128_t x100 = cmovznz128(x98, x91, x84);
- return (x99, x100))
-(x, x0)%core
- : word128 * word128 → word128 * word128 → ReturnType (uint128_t * uint128_t)
diff --git a/src/Specific/NISTP256/AMD128/femulDisplay.v b/src/Specific/NISTP256/AMD128/femulDisplay.v
deleted file mode 100644
index 86a058019..000000000
--- a/src/Specific/NISTP256/AMD128/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.NISTP256.AMD128.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/NISTP256/AMD128/fenz.v b/src/Specific/NISTP256/AMD128/fenz.v
deleted file mode 100644
index c1a91fa38..000000000
--- a/src/Specific/NISTP256/AMD128/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.NISTP256.AMD128.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/NISTP256/AMD128/fenzDisplay.log b/src/Specific/NISTP256/AMD128/fenzDisplay.log
deleted file mode 100644
index 53c690df8..000000000
--- a/src/Specific/NISTP256/AMD128/fenzDisplay.log
+++ /dev/null
@@ -1,8 +0,0 @@
-λ x : word128 * word128,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x1, x2)%core,
- uint128_t x3 = (x2 | x1);
- return x3)
-x
- : word128 * word128 → ReturnType uint128_t
diff --git a/src/Specific/NISTP256/AMD128/fenzDisplay.v b/src/Specific/NISTP256/AMD128/fenzDisplay.v
deleted file mode 100644
index 18ff51330..000000000
--- a/src/Specific/NISTP256/AMD128/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.NISTP256.AMD128.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/NISTP256/AMD128/feopp.v b/src/Specific/NISTP256/AMD128/feopp.v
deleted file mode 100644
index 682541e8c..000000000
--- a/src/Specific/NISTP256/AMD128/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.NISTP256.AMD128.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/NISTP256/AMD128/feoppDisplay.log b/src/Specific/NISTP256/AMD128/feoppDisplay.log
deleted file mode 100644
index f3b1f606f..000000000
--- a/src/Specific/NISTP256/AMD128/feoppDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word128 * word128,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x1, x2)%core,
- uint128_t x4, uint8_t x5 = subborrow_u128(0x0, 0x0, x2);
- uint128_t x7, uint8_t x8 = subborrow_u128(x5, 0x0, x1);
- uint128_t x9 = cmovznz128(x8, 0x0, 0xffffffffffffffffffffffffffffffffL);
- uint128_t x10 = (x9 & 0xffffffffffffffffffffffffL);
- uint128_t x12, uint8_t x13 = addcarryx_u128(0x0, x4, x10);
- uint128_t x14 = (x9 & 0xffffffff000000010000000000000000L);
- uint128_t x16, uint8_t _ = addcarryx_u128(x13, x7, x14);
- (Return x16, Return x12))
-x
- : word128 * word128 → ReturnType (uint128_t * uint128_t)
diff --git a/src/Specific/NISTP256/AMD128/feoppDisplay.v b/src/Specific/NISTP256/AMD128/feoppDisplay.v
deleted file mode 100644
index 8c84f30d2..000000000
--- a/src/Specific/NISTP256/AMD128/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.NISTP256.AMD128.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/NISTP256/AMD128/fesub.v b/src/Specific/NISTP256/AMD128/fesub.v
deleted file mode 100644
index f8a59ec86..000000000
--- a/src/Specific/NISTP256/AMD128/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.NISTP256.AMD128.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/NISTP256/AMD128/fesubDisplay.log b/src/Specific/NISTP256/AMD128/fesubDisplay.log
deleted file mode 100644
index 5136e376d..000000000
--- a/src/Specific/NISTP256/AMD128/fesubDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x x0 : word128 * word128,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x4, x5, (x6, x7))%core,
- uint128_t x9, uint8_t x10 = subborrow_u128(0x0, x5, x7);
- uint128_t x12, uint8_t x13 = subborrow_u128(x10, x4, x6);
- uint128_t x14 = cmovznz128(x13, 0x0, 0xffffffffffffffffffffffffffffffffL);
- uint128_t x15 = (x14 & 0xffffffffffffffffffffffffL);
- uint128_t x17, uint8_t x18 = addcarryx_u128(0x0, x9, x15);
- uint128_t x19 = (x14 & 0xffffffff000000010000000000000000L);
- uint128_t x21, uint8_t _ = addcarryx_u128(x18, x12, x19);
- (Return x21, Return x17))
-(x, x0)%core
- : word128 * word128 → word128 * word128 → ReturnType (uint128_t * uint128_t)
diff --git a/src/Specific/NISTP256/AMD128/fesubDisplay.v b/src/Specific/NISTP256/AMD128/fesubDisplay.v
deleted file mode 100644
index 4e46b2272..000000000
--- a/src/Specific/NISTP256/AMD128/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.NISTP256.AMD128.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/NISTP256/AMD128/py_interpreter.sh b/src/Specific/NISTP256/AMD128/py_interpreter.sh
deleted file mode 100755
index 9b7e3baaa..000000000
--- a/src/Specific/NISTP256/AMD128/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256-2**224+2**192+2**96-1' -Dmodulus_bytes='128' -Da24='121665'
diff --git a/src/Specific/NISTP256/AMD64/CurveParameters.v b/src/Specific/NISTP256/AMD64/CurveParameters.v
deleted file mode 100644
index 446f0cad8..000000000
--- a/src/Specific/NISTP256/AMD64/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256-2^224+2^192+2^96-1
-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)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/NISTP256/AMD64/Synthesis.v b/src/Specific/NISTP256/AMD64/Synthesis.v
deleted file mode 100644
index 5cd0686e1..000000000
--- a/src/Specific/NISTP256/AMD64/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.NISTP256.AMD64.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/NISTP256/AMD64/bench_madd.c b/src/Specific/NISTP256/AMD64/bench_madd.c
deleted file mode 100644
index f247a6670..000000000
--- a/src/Specific/NISTP256/AMD64/bench_madd.c
+++ /dev/null
@@ -1,7 +0,0 @@
-#include <stdint.h>
-#include "p256.h"
-
-void bench_madd(unsigned char* buf) {
- uint64_t* r = (uint64_t*) buf;
- p256_jacobian_add_affine(r, r, r+12);
-}
diff --git a/src/Specific/NISTP256/AMD64/compiler.sh b/src/Specific/NISTP256/AMD64/compiler.sh
deleted file mode 100755
index 73e1a78e0..000000000
--- a/src/Specific/NISTP256/AMD64/compiler.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-gcc -fno-peephole2 `#GCC BUG 81300` -march=native -mbmi2 -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Wno-incompatible-pointer-types -fno-strict-aliasing "$@"
diff --git a/src/Specific/NISTP256/AMD64/feadd.v b/src/Specific/NISTP256/AMD64/feadd.v
deleted file mode 100644
index cc1154020..000000000
--- a/src/Specific/NISTP256/AMD64/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.NISTP256.AMD64.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/NISTP256/AMD64/feaddDisplay.log b/src/Specific/NISTP256/AMD64/feaddDisplay.log
deleted file mode 100644
index 6b32e9e98..000000000
--- a/src/Specific/NISTP256/AMD64/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t/*bool*/ x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t/*bool*/ x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t/*bool*/ x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t/*bool*/ x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t/*bool*/ x30 = subborrow_u64(0x0, x17, 0xffffffffffffffffL);
- uint64_t x32, uint8_t/*bool*/ x33 = subborrow_u64(x30, x20, 0xffffffff);
- uint64_t x35, uint8_t/*bool*/ x36 = subborrow_u64(x33, x23, 0x0);
- uint64_t x38, uint8_t/*bool*/ x39 = subborrow_u64(x36, x26, 0xffffffff00000001L);
- uint64_t _, uint8_t/*bool*/ x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/NISTP256/AMD64/feaddDisplay.v b/src/Specific/NISTP256/AMD64/feaddDisplay.v
deleted file mode 100644
index b6e79f393..000000000
--- a/src/Specific/NISTP256/AMD64/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.NISTP256.AMD64.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/NISTP256/AMD64/femul.v b/src/Specific/NISTP256/AMD64/femul.v
deleted file mode 100644
index 3c6dc4bd2..000000000
--- a/src/Specific/NISTP256/AMD64/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.NISTP256.AMD64.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/NISTP256/AMD64/femulDisplay.log b/src/Specific/NISTP256/AMD64/femulDisplay.log
deleted file mode 100644
index 987babc73..000000000
--- a/src/Specific/NISTP256/AMD64/femulDisplay.log
+++ /dev/null
@@ -1,114 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t/*bool*/ x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t/*bool*/ x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t/*bool*/ x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t/*bool*/ _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t x42 = mulx_u64(x17, 0xffffffffffffffffL);
- uint64_t x44, uint64_t x45 = mulx_u64(x17, 0xffffffff);
- uint64_t x47, uint64_t x48 = mulx_u64(x17, 0xffffffff00000001L);
- uint64_t x50, uint8_t/*bool*/ x51 = addcarryx_u64(0x0, x42, x44);
- uint64_t x53, uint8_t/*bool*/ x54 = addcarryx_u64(x51, x45, 0x0);
- uint64_t x56, uint8_t/*bool*/ x57 = addcarryx_u64(x54, 0x0, x47);
- uint64_t x59, uint8_t/*bool*/ _ = addcarryx_u64(0x0, x57, x48);
- uint64_t _, uint8_t/*bool*/ x63 = addcarryx_u64(0x0, x17, x41);
- uint64_t x65, uint8_t/*bool*/ x66 = addcarryx_u64(x63, x29, x50);
- uint64_t x68, uint8_t/*bool*/ x69 = addcarryx_u64(x66, x32, x53);
- uint64_t x71, uint8_t/*bool*/ x72 = addcarryx_u64(x69, x35, x56);
- uint64_t x74, uint8_t/*bool*/ x75 = addcarryx_u64(x72, x38, x59);
- uint64_t x77, uint64_t x78 = mulx_u64(x7, x11);
- uint64_t x80, uint64_t x81 = mulx_u64(x7, x13);
- uint64_t x83, uint64_t x84 = mulx_u64(x7, x15);
- uint64_t x86, uint64_t x87 = mulx_u64(x7, x14);
- uint64_t x89, uint8_t/*bool*/ x90 = addcarryx_u64(0x0, x78, x80);
- uint64_t x92, uint8_t/*bool*/ x93 = addcarryx_u64(x90, x81, x83);
- uint64_t x95, uint8_t/*bool*/ x96 = addcarryx_u64(x93, x84, x86);
- uint64_t x98, uint8_t/*bool*/ _ = addcarryx_u64(0x0, x96, x87);
- uint64_t x101, uint8_t/*bool*/ x102 = addcarryx_u64(0x0, x65, x77);
- uint64_t x104, uint8_t/*bool*/ x105 = addcarryx_u64(x102, x68, x89);
- uint64_t x107, uint8_t/*bool*/ x108 = addcarryx_u64(x105, x71, x92);
- uint64_t x110, uint8_t/*bool*/ x111 = addcarryx_u64(x108, x74, x95);
- uint64_t x113, uint8_t/*bool*/ x114 = addcarryx_u64(x111, x75, x98);
- uint64_t x116, uint64_t x117 = mulx_u64(x101, 0xffffffffffffffffL);
- uint64_t x119, uint64_t x120 = mulx_u64(x101, 0xffffffff);
- uint64_t x122, uint64_t x123 = mulx_u64(x101, 0xffffffff00000001L);
- uint64_t x125, uint8_t/*bool*/ x126 = addcarryx_u64(0x0, x117, x119);
- uint64_t x128, uint8_t/*bool*/ x129 = addcarryx_u64(x126, x120, 0x0);
- uint64_t x131, uint8_t/*bool*/ x132 = addcarryx_u64(x129, 0x0, x122);
- uint64_t x134, uint8_t/*bool*/ _ = addcarryx_u64(0x0, x132, x123);
- uint64_t _, uint8_t/*bool*/ x138 = addcarryx_u64(0x0, x101, x116);
- uint64_t x140, uint8_t/*bool*/ x141 = addcarryx_u64(x138, x104, x125);
- uint64_t x143, uint8_t/*bool*/ x144 = addcarryx_u64(x141, x107, x128);
- uint64_t x146, uint8_t/*bool*/ x147 = addcarryx_u64(x144, x110, x131);
- uint64_t x149, uint8_t/*bool*/ x150 = addcarryx_u64(x147, x113, x134);
- uint8_t x151 = ((uint8_t)x150 + x114);
- uint64_t x153, uint64_t x154 = mulx_u64(x9, x11);
- uint64_t x156, uint64_t x157 = mulx_u64(x9, x13);
- uint64_t x159, uint64_t x160 = mulx_u64(x9, x15);
- uint64_t x162, uint64_t x163 = mulx_u64(x9, x14);
- uint64_t x165, uint8_t/*bool*/ x166 = addcarryx_u64(0x0, x154, x156);
- uint64_t x168, uint8_t/*bool*/ x169 = addcarryx_u64(x166, x157, x159);
- uint64_t x171, uint8_t/*bool*/ x172 = addcarryx_u64(x169, x160, x162);
- uint64_t x174, uint8_t/*bool*/ _ = addcarryx_u64(0x0, x172, x163);
- uint64_t x177, uint8_t/*bool*/ x178 = addcarryx_u64(0x0, x140, x153);
- uint64_t x180, uint8_t/*bool*/ x181 = addcarryx_u64(x178, x143, x165);
- uint64_t x183, uint8_t/*bool*/ x184 = addcarryx_u64(x181, x146, x168);
- uint64_t x186, uint8_t/*bool*/ x187 = addcarryx_u64(x184, x149, x171);
- uint64_t x189, uint8_t/*bool*/ x190 = addcarryx_u64(x187, x151, x174);
- uint64_t x192, uint64_t x193 = mulx_u64(x177, 0xffffffffffffffffL);
- uint64_t x195, uint64_t x196 = mulx_u64(x177, 0xffffffff);
- uint64_t x198, uint64_t x199 = mulx_u64(x177, 0xffffffff00000001L);
- uint64_t x201, uint8_t/*bool*/ x202 = addcarryx_u64(0x0, x193, x195);
- uint64_t x204, uint8_t/*bool*/ x205 = addcarryx_u64(x202, x196, 0x0);
- uint64_t x207, uint8_t/*bool*/ x208 = addcarryx_u64(x205, 0x0, x198);
- uint64_t x210, uint8_t/*bool*/ _ = addcarryx_u64(0x0, x208, x199);
- uint64_t _, uint8_t/*bool*/ x214 = addcarryx_u64(0x0, x177, x192);
- uint64_t x216, uint8_t/*bool*/ x217 = addcarryx_u64(x214, x180, x201);
- uint64_t x219, uint8_t/*bool*/ x220 = addcarryx_u64(x217, x183, x204);
- uint64_t x222, uint8_t/*bool*/ x223 = addcarryx_u64(x220, x186, x207);
- uint64_t x225, uint8_t/*bool*/ x226 = addcarryx_u64(x223, x189, x210);
- uint8_t x227 = ((uint8_t)x226 + x190);
- uint64_t x229, uint64_t x230 = mulx_u64(x8, x11);
- uint64_t x232, uint64_t x233 = mulx_u64(x8, x13);
- uint64_t x235, uint64_t x236 = mulx_u64(x8, x15);
- uint64_t x238, uint64_t x239 = mulx_u64(x8, x14);
- uint64_t x241, uint8_t/*bool*/ x242 = addcarryx_u64(0x0, x230, x232);
- uint64_t x244, uint8_t/*bool*/ x245 = addcarryx_u64(x242, x233, x235);
- uint64_t x247, uint8_t/*bool*/ x248 = addcarryx_u64(x245, x236, x238);
- uint64_t x250, uint8_t/*bool*/ _ = addcarryx_u64(0x0, x248, x239);
- uint64_t x253, uint8_t/*bool*/ x254 = addcarryx_u64(0x0, x216, x229);
- uint64_t x256, uint8_t/*bool*/ x257 = addcarryx_u64(x254, x219, x241);
- uint64_t x259, uint8_t/*bool*/ x260 = addcarryx_u64(x257, x222, x244);
- uint64_t x262, uint8_t/*bool*/ x263 = addcarryx_u64(x260, x225, x247);
- uint64_t x265, uint8_t/*bool*/ x266 = addcarryx_u64(x263, x227, x250);
- uint64_t x268, uint64_t x269 = mulx_u64(x253, 0xffffffffffffffffL);
- uint64_t x271, uint64_t x272 = mulx_u64(x253, 0xffffffff);
- uint64_t x274, uint64_t x275 = mulx_u64(x253, 0xffffffff00000001L);
- uint64_t x277, uint8_t/*bool*/ x278 = addcarryx_u64(0x0, x269, x271);
- uint64_t x280, uint8_t/*bool*/ x281 = addcarryx_u64(x278, x272, 0x0);
- uint64_t x283, uint8_t/*bool*/ x284 = addcarryx_u64(x281, 0x0, x274);
- uint64_t x286, uint8_t/*bool*/ _ = addcarryx_u64(0x0, x284, x275);
- uint64_t _, uint8_t/*bool*/ x290 = addcarryx_u64(0x0, x253, x268);
- uint64_t x292, uint8_t/*bool*/ x293 = addcarryx_u64(x290, x256, x277);
- uint64_t x295, uint8_t/*bool*/ x296 = addcarryx_u64(x293, x259, x280);
- uint64_t x298, uint8_t/*bool*/ x299 = addcarryx_u64(x296, x262, x283);
- uint64_t x301, uint8_t/*bool*/ x302 = addcarryx_u64(x299, x265, x286);
- uint8_t x303 = ((uint8_t)x302 + x266);
- uint64_t x305, uint8_t/*bool*/ x306 = subborrow_u64(0x0, x292, 0xffffffffffffffffL);
- uint64_t x308, uint8_t/*bool*/ x309 = subborrow_u64(x306, x295, 0xffffffff);
- uint64_t x311, uint8_t/*bool*/ x312 = subborrow_u64(x309, x298, 0x0);
- uint64_t x314, uint8_t/*bool*/ x315 = subborrow_u64(x312, x301, 0xffffffff00000001L);
- uint64_t _, uint8_t/*bool*/ x318 = subborrow_u64(x315, x303, 0x0);
- uint64_t x319 = cmovznz64(x318, x314, x301);
- uint64_t x320 = cmovznz64(x318, x311, x298);
- uint64_t x321 = cmovznz64(x318, x308, x295);
- uint64_t x322 = cmovznz64(x318, x305, x292);
- return (x319, x320, x321, x322))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/NISTP256/AMD64/femulDisplay.v b/src/Specific/NISTP256/AMD64/femulDisplay.v
deleted file mode 100644
index acde66b0e..000000000
--- a/src/Specific/NISTP256/AMD64/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.NISTP256.AMD64.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/NISTP256/AMD64/fenz.v b/src/Specific/NISTP256/AMD64/fenz.v
deleted file mode 100644
index 8b61924a7..000000000
--- a/src/Specific/NISTP256/AMD64/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.NISTP256.AMD64.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/NISTP256/AMD64/fenzDisplay.log b/src/Specific/NISTP256/AMD64/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/NISTP256/AMD64/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/NISTP256/AMD64/fenzDisplay.v b/src/Specific/NISTP256/AMD64/fenzDisplay.v
deleted file mode 100644
index 77c48f76f..000000000
--- a/src/Specific/NISTP256/AMD64/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.NISTP256.AMD64.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/NISTP256/AMD64/feopp.v b/src/Specific/NISTP256/AMD64/feopp.v
deleted file mode 100644
index e5483c736..000000000
--- a/src/Specific/NISTP256/AMD64/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.NISTP256.AMD64.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/NISTP256/AMD64/feoppDisplay.log b/src/Specific/NISTP256/AMD64/feoppDisplay.log
deleted file mode 100644
index fd14693ad..000000000
--- a/src/Specific/NISTP256/AMD64/feoppDisplay.log
+++ /dev/null
@@ -1,19 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t/*bool*/ x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t/*bool*/ x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t/*bool*/ x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t/*bool*/ x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xffffffffffffffffL);
- uint64_t x22, uint8_t/*bool*/ x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffffff);
- uint64_t x26, uint8_t/*bool*/ x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x29, uint8_t/*bool*/ x30 = addcarryx_u64(x27, x14, 0x0);
- uint64_t x31 = (x19 & 0xffffffff00000001L);
- uint64_t x33, uint8_t/*bool*/ _ = addcarryx_u64(x30, x17, x31);
- (Return x33, Return x29, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/NISTP256/AMD64/feoppDisplay.v b/src/Specific/NISTP256/AMD64/feoppDisplay.v
deleted file mode 100644
index 7d2a65b6f..000000000
--- a/src/Specific/NISTP256/AMD64/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.NISTP256.AMD64.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/NISTP256/AMD64/fesub.v b/src/Specific/NISTP256/AMD64/fesub.v
deleted file mode 100644
index 680bf71c8..000000000
--- a/src/Specific/NISTP256/AMD64/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.NISTP256.AMD64.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/NISTP256/AMD64/fesubDisplay.log b/src/Specific/NISTP256/AMD64/fesubDisplay.log
deleted file mode 100644
index 12dfeea9a..000000000
--- a/src/Specific/NISTP256/AMD64/fesubDisplay.log
+++ /dev/null
@@ -1,19 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t/*bool*/ x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t/*bool*/ x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t/*bool*/ x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t/*bool*/ x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint64_t x29 = (x28 & 0xffffffffffffffffL);
- uint64_t x31, uint8_t/*bool*/ x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffffff);
- uint64_t x35, uint8_t/*bool*/ x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x38, uint8_t/*bool*/ x39 = addcarryx_u64(x36, x23, 0x0);
- uint64_t x40 = (x28 & 0xffffffff00000001L);
- uint64_t x42, uint8_t/*bool*/ _ = addcarryx_u64(x39, x26, x40);
- (Return x42, Return x38, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/NISTP256/AMD64/fesubDisplay.v b/src/Specific/NISTP256/AMD64/fesubDisplay.v
deleted file mode 100644
index 01559b019..000000000
--- a/src/Specific/NISTP256/AMD64/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.NISTP256.AMD64.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/NISTP256/AMD64/icc/compiler.sh b/src/Specific/NISTP256/AMD64/icc/compiler.sh
deleted file mode 100755
index 3c4100dce..000000000
--- a/src/Specific/NISTP256/AMD64/icc/compiler.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-gcc -march=native -mbmi2 -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing $@
diff --git a/src/Specific/NISTP256/AMD64/icc/compiler.txt b/src/Specific/NISTP256/AMD64/icc/compiler.txt
deleted file mode 100644
index 485a3da40..000000000
--- a/src/Specific/NISTP256/AMD64/icc/compiler.txt
+++ /dev/null
@@ -1 +0,0 @@
-icc -march=broadwell -mtune=broadwell -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -fno-strict-aliasing -ipo -masm=att
diff --git a/src/Specific/NISTP256/AMD64/icc/icc17_p256_jacobian_add_affine.s b/src/Specific/NISTP256/AMD64/icc/icc17_p256_jacobian_add_affine.s
deleted file mode 100644
index 9cc1dc48b..000000000
--- a/src/Specific/NISTP256/AMD64/icc/icc17_p256_jacobian_add_affine.s
+++ /dev/null
@@ -1,2952 +0,0 @@
-.section .text
-.globl p256_jacobian_add_affine
-.type p256_jacobian_add_affine, @function
-p256_jacobian_add_affine:
- pushq %r12 #197.3
- pushq %r13 #197.3
- pushq %r14 #197.3
- pushq %r15 #197.3
- pushq %rbx #197.3
- pushq %rbp #197.3
- subq $280, %rsp #197.3
- movq %rdx, 104(%rsp) #197.3[spill]
- pxor %xmm0, %xmm0 #206.20
- movq %rsi, 120(%rsp) #197.3[spill]
- movq %rdi, 112(%rsp) #197.3[spill]
- movups %xmm0, (%rsp) #206.20
- movups %xmm0, 16(%rsp) #206.20
- movq %rsi, %r11 #206.41
- movq $-1, %rsi #80.34
- xorl %edi, %edi #76.32
- movq $0x0ffffffff, %rdi #81.34
- vpxor %xmm0, %xmm0, %xmm0 #208.20
- movq 88(%r11), %r12 #206.62
- movq %r12, %rdx #72.34
- movq 80(%r11), %r13 #206.55
- movq 64(%r11), %r10 #206.41
- movq 72(%r11), %r9 #206.48
- mulx %r12, %r15, %r14 #72.34
- mulx %r13, %r11, %rax #73.34
- adcx %r11, %r14 #76.32
- mulx %r9, %rbx, %r8 #74.34
- adcx %rbx, %rax #77.32
- movq $0xffffffff00000001, %rbx #82.34
- mulx %r10, %rcx, %rbp #75.34
- movq %r15, %rdx #80.34
- adcx %rcx, %r8 #78.32
- movq %r9, 168(%rsp) #206.48[spill]
- movl $0, %r9d #76.32
- movq %r10, 88(%rsp) #206.41[spill]
- movl %r9d, %r11d #78.32
- movl %r9d, %r10d #79.30
- setb %r11b #78.32
- adox %r9d, %r10d #79.30
- adox %rbp, %r11 #79.30
- mulx %rsi, %rsi, %rbp #80.34
- clc #83.32
- mulx %rdi, %r10, %rcx #81.34
- adcx %r10, %rbp #83.32
- movl $0, %r10d #84.32
- mulx %rbx, %rbx, %rdi #82.34
- movl %r9d, %edx #86.30
- adcx %r10, %rcx #84.32
- movq %r13, 176(%rsp) #206.55[spill]
- adcx %r10, %rbx #85.32
- movl %r9d, %r10d #85.32
- movq %r12, 184(%rsp) #206.62[spill]
- setb %r10b #85.32
- adox %r9d, %edx #86.30
- movq %r13, %rdx #92.34
- adox %rdi, %r10 #86.30
- movl %r9d, %edi #86.30
- seto %dil #86.30
- clc #87.30
- adcx %rsi, %r15 #87.30
- adcx %rbp, %r14 #88.32
- adcx %rcx, %rax #89.32
- mulx %r13, %rcx, %r15 #93.34
- movl %r9d, %r13d #96.32
- adcx %rbx, %r8 #90.32
- mulx %r12, %rsi, %rbx #92.34
- adcx %r10, %r11 #91.32
- movl %r9d, %r10d #91.32
- mulx 168(%rsp), %rbp, %r12 #94.34[spill]
- setb %r10b #91.32
- adox %r9d, %r13d #96.32
- mulx 88(%rsp), %rdx, %rdi #95.34[spill]
- adox %rcx, %rbx #96.32
- movl %r9d, %ecx #98.32
- adox %rbp, %r15 #97.32
- movl %r9d, %ebp #100.34
- adox %rdx, %r12 #98.32
- seto %cl #98.32
- clc #99.30
- adcx %rdi, %rcx #99.30
- adox %r9d, %ebp #100.34
- movl %r9d, %edi #104.34
- adox %rsi, %r14 #100.34
- movq %r14, %rdx #105.36
- adox %rbx, %rax #101.34
- movq $0x0ffffffff, %rbx #106.36
- adox %r15, %r8 #102.34
- movq $0xffffffff00000001, %r15 #107.36
- adox %r12, %r11 #103.34
- movq $-1, %r12 #105.36
- mulx %r12, %rbp, %r13 #105.36
- movl $0, %r12d #109.34
- adox %rcx, %r10 #104.34
- mulx %rbx, %rsi, %rcx #106.36
- seto %dil #104.34
- clc #108.34
- adcx %rsi, %r13 #108.34
- mulx %r15, %rbx, %rsi #107.36
- movl %r9d, %r15d #110.34
- adcx %r12, %rcx #109.34
- movq 168(%rsp), %rdx #118.36[spill]
- adcx %r12, %rbx #110.34
- movl %r9d, %r12d #111.31
- setb %r15b #110.34
- adox %r9d, %r12d #111.31
- adox %rsi, %r15 #111.31
- clc #112.31
- movl %r9d, %esi #122.34
- adcx %rbp, %r14 #112.31
- movl %r9d, %r14d #116.34
- adcx %r13, %rax #113.34
- adcx %rcx, %r8 #114.34
- mulx 176(%rsp), %rcx, %r12 #119.36[spill]
- adcx %rbx, %r11 #115.34
- adcx %r15, %r10 #116.34
- mulx 184(%rsp), %r15, %r13 #118.36[spill]
- setb %r14b #116.34
- adox %r9d, %esi #122.34
- movl %r14d, 64(%rsp) #116.34[spill]
- movl %r9d, %esi #124.34
- adox %rcx, %r13 #122.34
- movl %r9d, %ecx #125.31
- mulx %rdx, %rbp, %r14 #120.36
- adox %rbp, %r12 #123.34
- movl %r9d, %ebp #126.34
- mulx 88(%rsp), %rdx, %rbx #121.36[spill]
- adox %rdx, %r14 #124.34
- seto %sil #124.34
- clc #125.31
- adcx %rbx, %rsi #125.31
- movl %r9d, %ebx #129.34
- setb %cl #125.31
- adox %r9d, %ebp #126.34
- adox %r15, %rax #126.34
- movq %rax, %rdx #131.36
- adox %r13, %r8 #127.34
- movq $0x0ffffffff, %r13 #132.36
- mulx %r13, %r13, %r15 #132.36
- adox %r12, %r11 #128.34
- movq $0xffffffff00000001, %r12 #133.36
- adox %r14, %r10 #129.34
- mulx %r12, %r12, %r14 #133.36
- seto %bl #129.34
- addl 64(%rsp), %edi #130.34[spill]
- cmpl %ebx, %r9d #130.34
- movl %r9d, %ebx #130.34
- adcx %rsi, %rdi #130.34
- movq $-1, %rsi #131.36
- mulx %rsi, %rbp, %rcx #131.36
- movl %r9d, %edx #134.34
- setb %bl #130.34
- adox %r9d, %edx #134.34
- movq 88(%rsp), %rdx #144.36[spill]
- adox %r13, %rcx #134.34
- movl $0, %r13d #135.34
- adox %r13, %r15 #135.34
- adox %r13, %r12 #136.34
- movl %r9d, %r13d #136.34
- seto %r13b #136.34
- clc #137.31
- adcx %r14, %r13 #137.31
- movl %r9d, %r14d #138.31
- adox %r9d, %r14d #138.31
- adox %rbp, %rax #138.31
- mulx 176(%rsp), %rax, %r14 #145.36[spill]
- adox %rcx, %r8 #139.34
- movl %r9d, %ecx #142.34
- adox %r15, %r11 #140.34
- adox %r12, %r10 #141.34
- adox %r13, %rdi #142.34
- mulx 184(%rsp), %r12, %r13 #144.36[spill]
- seto %cl #142.34
- clc #148.34
- adcx %rax, %r13 #148.34
- mulx 168(%rsp), %rax, %r15 #146.36[spill]
- adcx %rax, %r14 #149.34
- mulx %rdx, %rax, %rbp #147.36
- movl %r9d, %edx #151.31
- adcx %rax, %r15 #150.34
- movl %r9d, %eax #150.34
- setb %al #150.34
- adox %r9d, %edx #151.31
- adox %rbp, %rax #151.31
- clc #152.34
- adcx %r12, %r8 #152.34
- movq %r8, %rdx #157.36
- adcx %r13, %r11 #153.34
- adcx %r14, %r10 #154.34
- movq $0xffffffff00000001, %r14 #159.36
- adcx %r15, %rdi #155.34
- movl %r9d, %r15d #155.34
- setb %r15b #155.34
- xorl %ebp, %ebp #155.34
- addl %ecx, %ebx #156.34
- cmpl %r15d, %r9d #156.34
- movq $0x0ffffffff, %rcx #158.36
- mulx %rsi, %r15, %r13 #157.36
- adcx %rax, %rbx #156.34
- mulx %rcx, %rcx, %r12 #158.36
- mulx %r14, %r14, %rax #159.36
- movl %r9d, %edx #160.34
- setb %bpl #156.34
- adox %r9d, %edx #160.34
- movl %r9d, %edx #162.34
- adox %rcx, %r13 #160.34
- movl $0, %ecx #161.34
- adox %rcx, %r12 #161.34
- adox %rcx, %r14 #162.34
- seto %dl #162.34
- clc #163.31
- adcx %rax, %rdx #163.31
- movl %r9d, %eax #164.31
- adox %r9d, %eax #164.31
- adox %r15, %r8 #164.31
- movl %r9d, %r8d #168.34
- adox %r13, %r11 #165.34
- adox %r12, %r10 #166.34
- movq %r10, %rax #171.34
- adox %r14, %rdi #167.34
- movq %rdi, %r14 #172.34
- adox %rdx, %rbx #168.34
- movq %r11, %rdx #170.34
- movq %rbx, %r13 #173.34
- seto %r8b #168.34
- xorl %r12d, %r12d #168.34
- addl %r8d, %ebp #174.31
- subq %rsi, %rdx #170.34
- movq $0x0ffffffff, %rsi #171.34
- movq $0xffffffff00000001, %r8 #173.34
- sbbq %rsi, %rax #171.34
- sbbq %rcx, %r14 #172.34
- sbbq %r8, %r13 #173.34
- setb %r12b #173.34
- cmpl %r12d, %r9d #174.31
- sbbq %rcx, %rbp #174.31
- setb %r9b #174.31
- testq %r9, %r9 #18.0
- cmovnz %rbx, %r13 #18.0
- movq %r13, 216(%rsp) #18.0[spill]
- testq %r9, %r9 #18.0
- cmovnz %rdi, %r14 #18.0
- movq %r14, 224(%rsp) #18.0[spill]
- testq %r9, %r9 #18.0
- cmovnz %r10, %rax #18.0
- testq %r9, %r9 #18.0
- cmovnz %r11, %rdx #18.0
- movq %r13, (%rsp) #206.37
- movq %r14, 8(%rsp) #206.37
- movq %rax, 16(%rsp) #206.37
- movq %rdx, 24(%rsp) #206.37
- vmovups %xmm0, 32(%rsp) #208.20
- vmovups %xmm0, 48(%rsp) #208.20
- movq 168(%rsp), %rcx #26.23[spill]
- orq 88(%rsp), %rcx #26.23[spill]
- orq 176(%rsp), %rcx #27.23[spill]
- orq 184(%rsp), %rcx #28.23[spill]
- movq %rcx, 96(%rsp) #28.23[spill]
- movq 104(%rsp), %rsi #208.66[spill]
- movq $-1, %r14 #80.34
- movq %rdx, 72(%rsp) #[spill]
- movq %rax, 64(%rsp) #[spill]
- vpxor %xmm0, %xmm0, %xmm0 #210.21
- movq (%rsi), %rcx #208.66
- movq 8(%rsi), %rbx #208.73
- movq 16(%rsi), %rbp #208.80
- movq 24(%rsi), %r10 #208.87
- xorl %esi, %esi #76.32
- mulx %r10, %r9, %r11 #72.34
- mulx %rbp, %r15, %r8 #73.34
- adcx %r15, %r11 #76.32
- movq $0x0ffffffff, %r15 #81.34
- movq %rbp, 208(%rsp) #208.80[spill]
- mulx %rbx, %rbp, %rdi #74.34
- adcx %rbp, %r8 #77.32
- movl $0, %ebp #78.32
- movq %rcx, 192(%rsp) #208.66[spill]
- mulx %rcx, %r12, %rcx #75.34
- movq %r9, %rdx #80.34
- adcx %r12, %rdi #78.32
- movq %rbx, 200(%rsp) #208.73[spill]
- movl %ebp, %ebx #79.30
- setb %sil #78.32
- adox %ebp, %ebx #79.30
- adox %rcx, %rsi #79.30
- movq $0xffffffff00000001, %rcx #82.34
- mulx %r14, %r13, %r14 #80.34
- clc #83.32
- mulx %r15, %rbx, %r12 #81.34
- adcx %rbx, %r14 #83.32
- movl $0, %ebx #84.32
- mulx %rcx, %r15, %rcx #82.34
- movl %ebp, %edx #86.30
- adcx %rbx, %r12 #84.32
- movq %r10, 128(%rsp) #208.87[spill]
- adcx %rbx, %r15 #85.32
- movl %ebp, %ebx #85.32
- setb %bl #85.32
- adox %ebp, %edx #86.30
- movq %rax, %rdx #92.34
- adox %rcx, %rbx #86.30
- movl %ebp, %ecx #86.30
- seto %cl #86.30
- clc #87.30
- adcx %r13, %r9 #87.30
- movl %ebp, %r13d #96.32
- adcx %r14, %r11 #88.32
- mulx %r10, %r14, %rcx #92.34
- adcx %r12, %r8 #89.32
- mulx 200(%rsp), %r12, %r9 #94.34[spill]
- adcx %r15, %rdi #90.32
- mulx 208(%rsp), %r15, %r10 #93.34[spill]
- adcx %rbx, %rsi #91.32
- movl %ebp, %ebx #91.32
- mulx 192(%rsp), %rdx, %rax #95.34[spill]
- setb %bl #91.32
- adox %ebp, %r13d #96.32
- movq $0xffffffff00000001, %r13 #107.36
- adox %r15, %rcx #96.32
- movl %ebp, %r15d #98.32
- adox %r12, %r10 #97.32
- movl %ebp, %r12d #100.34
- adox %rdx, %r9 #98.32
- seto %r15b #98.32
- clc #99.30
- adcx %rax, %r15 #99.30
- adox %ebp, %r12d #100.34
- movl %ebp, %eax #104.34
- movl $0, %r12d #109.34
- adox %r14, %r11 #100.34
- movq %r11, %rdx #105.36
- adox %rcx, %r8 #101.34
- movq $0x0ffffffff, %rcx #106.36
- adox %r10, %rdi #102.34
- movq $-1, %r10 #105.36
- adox %r9, %rsi #103.34
- mulx %r10, %r10, %r9 #105.36
- adox %r15, %rbx #104.34
- mulx %rcx, %r14, %r15 #106.36
- seto %al #104.34
- clc #108.34
- mulx %r13, %r13, %rcx #107.36
- adcx %r14, %r9 #108.34
- movl %ebp, %r14d #111.31
- movq 224(%rsp), %rdx #118.36[spill]
- adcx %r12, %r15 #109.34
- adcx %r12, %r13 #110.34
- movl %ebp, %r12d #110.34
- setb %r12b #110.34
- adox %ebp, %r14d #111.31
- adox %rcx, %r12 #111.31
- clc #112.31
- mulx 208(%rsp), %rcx, %r14 #119.36[spill]
- adcx %r10, %r11 #112.31
- mulx 200(%rsp), %r10, %r11 #120.36[spill]
- adcx %r9, %r8 #113.34
- movl %ebp, %r9d #116.34
- adcx %r15, %rdi #114.34
- adcx %r13, %rsi #115.34
- movl %ebp, %r13d #122.34
- adcx %r12, %rbx #116.34
- setb %r9b #116.34
- adox %ebp, %r13d #122.34
- movl %r9d, 80(%rsp) #116.34[spill]
- mulx 128(%rsp), %r12, %r9 #118.36[spill]
- adox %rcx, %r9 #122.34
- movl %ebp, %ecx #124.34
- mulx 192(%rsp), %rdx, %r15 #121.36[spill]
- adox %r10, %r14 #123.34
- movl %ebp, %r10d #126.34
- adox %rdx, %r11 #124.34
- seto %cl #124.34
- clc #125.31
- adcx %r15, %rcx #125.31
- adox %ebp, %r10d #126.34
- movq $0x0ffffffff, %r10 #132.36
- adox %r12, %r8 #126.34
- movq %r8, %rdx #131.36
- adox %r9, %rdi #127.34
- mulx %r10, %r9, %r12 #132.36
- adox %r14, %rsi #128.34
- adox %r11, %rbx #129.34
- movl %ebp, %r11d #129.34
- seto %r11b #129.34
- xorl %r15d, %r15d #129.34
- addl 80(%rsp), %eax #130.34[spill]
- cmpl %r11d, %ebp #130.34
- movq $0xffffffff00000001, %r11 #133.36
- adcx %rcx, %rax #130.34
- movq $-1, %rcx #131.36
- mulx %rcx, %r14, %r13 #131.36
- mulx %r11, %r10, %r11 #133.36
- movl %ebp, %edx #134.34
- setb %r15b #130.34
- adox %ebp, %edx #134.34
- movq 216(%rsp), %rdx #144.36[spill]
- adox %r9, %r13 #134.34
- movl $0, %r9d #135.34
- adox %r9, %r12 #135.34
- adox %r9, %r10 #136.34
- movl %ebp, %r9d #136.34
- seto %r9b #136.34
- clc #137.31
- adcx %r11, %r9 #137.31
- movl %ebp, %r11d #138.31
- adox %ebp, %r11d #138.31
- adox %r14, %r8 #138.31
- adox %r13, %rdi #139.34
- mulx 128(%rsp), %r13, %r11 #144.36[spill]
- adox %r12, %rsi #140.34
- mulx 208(%rsp), %r12, %r8 #145.36[spill]
- adox %r10, %rbx #141.34
- movl %ebp, %r10d #142.34
- adox %r9, %rax #142.34
- seto %r10b #142.34
- clc #148.34
- adcx %r12, %r11 #148.34
- mulx 200(%rsp), %r14, %r12 #146.36[spill]
- adcx %r14, %r8 #149.34
- mulx 192(%rsp), %r9, %r14 #147.36[spill]
- movl %ebp, %edx #151.31
- adcx %r9, %r12 #150.34
- movl %ebp, %r9d #150.34
- setb %r9b #150.34
- adox %ebp, %edx #151.31
- adox %r14, %r9 #151.31
- clc #152.34
- adcx %r13, %rdi #152.34
- movq $0xffffffff00000001, %r13 #159.36
- movq %rdi, %rdx #157.36
- adcx %r11, %rsi #153.34
- adcx %r8, %rbx #154.34
- movl %ebp, %r8d #155.34
- adcx %r12, %rax #155.34
- mulx %rcx, %r14, %r12 #157.36
- setb %r8b #155.34
- addl %r10d, %r15d #156.34
- cmpl %r8d, %ebp #156.34
- movq $0x0ffffffff, %r10 #158.36
- mulx %r10, %r10, %r11 #158.36
- adcx %r9, %r15 #156.34
- movl %ebp, %r9d #156.34
- mulx %r13, %r13, %r8 #159.36
- movl %ebp, %edx #160.34
- setb %r9b #156.34
- adox %ebp, %edx #160.34
- movl %ebp, %edx #162.34
- adox %r10, %r12 #160.34
- movl $0, %r10d #161.34
- adox %r10, %r11 #161.34
- adox %r10, %r13 #162.34
- seto %dl #162.34
- clc #163.31
- adcx %r8, %rdx #163.31
- movl %ebp, %r8d #164.31
- adox %ebp, %r8d #164.31
- adox %r14, %rdi #164.31
- movl %ebp, %edi #168.34
- adox %r12, %rsi #165.34
- movq $0xffffffff00000001, %r12 #173.34
- adox %r11, %rbx #166.34
- movq $0x0ffffffff, %r11 #171.34
- adox %r13, %rax #167.34
- movq %rax, %r8 #172.34
- adox %rdx, %r15 #168.34
- movq %r15, %rdx #173.34
- seto %dil #168.34
- xorl %r14d, %r14d #168.34
- addl %edi, %r9d #174.31
- movq %rsi, %rdi #170.34
- subq %rcx, %rdi #170.34
- movq %rbx, %rcx #171.34
- sbbq %r11, %rcx #171.34
- sbbq %r10, %r8 #172.34
- sbbq %r12, %rdx #173.34
- setb %r14b #173.34
- cmpl %r14d, %ebp #174.31
- sbbq %r10, %r9 #174.31
- setb %bpl #174.31
- testq %rbp, %rbp #18.0
- cmovnz %r15, %rdx #18.0
- movq %rdx, 144(%rsp) #18.0[spill]
- testq %rbp, %rbp #18.0
- cmovnz %rax, %r8 #18.0
- movq %r8, 152(%rsp) #18.0[spill]
- testq %rbp, %rbp #18.0
- cmovnz %rbx, %rcx #18.0
- movq %rcx, 160(%rsp) #18.0[spill]
- testq %rbp, %rbp #18.0
- cmovnz %rsi, %rdi #18.0
- movq %rdi, 136(%rsp) #18.0[spill]
- movq %rdx, 32(%rsp) #208.34
- movq %r8, 40(%rsp) #208.34
- movq %rcx, 48(%rsp) #208.34
- movq %rdi, 56(%rsp) #208.34
- vmovups %xmm0, (%rsp) #210.21
- vmovups %xmm0, 16(%rsp) #210.21
- movq 72(%rsp), %rdx #210.21[spill]
- movq 64(%rsp), %rax #210.21[spill]
- movq 184(%rsp), %r12 #72.34[spill]
- xorl %r8d, %r8d #76.32
- movq $-1, %r15 #76.32
- xorl %r9d, %r9d #76.32
- mulx 176(%rsp), %rsi, %rdi #73.34[spill]
- mulx %r12, %r11, %r13 #72.34
- adcx %rsi, %r13 #76.32
- movl %r8d, %esi #79.30
- vpxor %xmm0, %xmm0, %xmm0 #211.19
- mulx 168(%rsp), %rbx, %r10 #74.34[spill]
- adcx %rbx, %rdi #77.32
- movq $0x0ffffffff, %rbx #81.34
- mulx 88(%rsp), %rcx, %rbp #75.34[spill]
- movq %r11, %rdx #80.34
- adcx %rcx, %r10 #78.32
- movq $0xffffffff00000001, %rcx #82.34
- mulx %r15, %r14, %r15 #80.34
- setb %r9b #78.32
- adox %r8d, %esi #79.30
- adox %rbp, %r9 #79.30
- clc #83.32
- mulx %rbx, %rsi, %rbp #81.34
- adcx %rsi, %r15 #83.32
- movl $0, %esi #84.32
- mulx %rcx, %rcx, %rbx #82.34
- movl %r8d, %edx #86.30
- adcx %rsi, %rbp #84.32
- adcx %rsi, %rcx #85.32
- movl %r8d, %esi #85.32
- setb %sil #85.32
- adox %r8d, %edx #86.30
- movq %rax, %rdx #92.34
- adox %rbx, %rsi #86.30
- movl %r8d, %ebx #86.30
- movl %r8d, %eax #96.32
- seto %bl #86.30
- clc #87.30
- adcx %r14, %r11 #87.30
- mulx 168(%rsp), %r11, %r14 #94.34[spill]
- adcx %r15, %r13 #88.32
- adcx %rbp, %rdi #89.32
- adcx %rcx, %r10 #90.32
- mulx %r12, %r15, %rcx #92.34
- adcx %rsi, %r9 #91.32
- movl %r8d, %esi #91.32
- mulx 176(%rsp), %rbp, %r12 #93.34[spill]
- setb %sil #91.32
- adox %r8d, %eax #96.32
- mulx 88(%rsp), %rdx, %rbx #95.34[spill]
- adox %rbp, %rcx #96.32
- movl %r8d, %ebp #98.32
- adox %r11, %r12 #97.32
- movl %r8d, %r11d #100.34
- adox %rdx, %r14 #98.32
- seto %bpl #98.32
- clc #99.30
- adcx %rbx, %rbp #99.30
- adox %r8d, %r11d #100.34
- movl %r8d, %ebx #104.34
- adox %r15, %r13 #100.34
- movq %r13, %rdx #105.36
- adox %rcx, %rdi #101.34
- movq $0x0ffffffff, %rcx #106.36
- adox %r12, %r10 #102.34
- movq $-1, %r12 #105.36
- mulx %r12, %r11, %rax #105.36
- movq $0xffffffff00000001, %r12 #107.36
- adox %r14, %r9 #103.34
- adox %rbp, %rsi #104.34
- mulx %rcx, %r15, %rbp #106.36
- seto %bl #104.34
- clc #108.34
- mulx %r12, %r14, %rcx #107.36
- movl %r8d, %r12d #111.31
- adcx %r15, %rax #108.34
- movl $0, %r15d #109.34
- movq 224(%rsp), %rdx #118.36[spill]
- adcx %r15, %rbp #109.34
- adcx %r15, %r14 #110.34
- movl %r8d, %r15d #110.34
- setb %r15b #110.34
- adox %r8d, %r12d #111.31
- adox %rcx, %r15 #111.31
- clc #112.31
- adcx %r11, %r13 #112.31
- movl %r8d, %r13d #116.34
- adcx %rax, %rdi #113.34
- mulx 168(%rsp), %r11, %r12 #120.36[spill]
- adcx %rbp, %r10 #114.34
- adcx %r14, %r9 #115.34
- movl %r8d, %r14d #122.34
- adcx %r15, %rsi #116.34
- mulx 176(%rsp), %rcx, %r15 #119.36[spill]
- setb %r13b #116.34
- adox %r8d, %r14d #122.34
- movl %r13d, 232(%rsp) #116.34[spill]
- mulx 184(%rsp), %r13, %rax #118.36[spill]
- adox %rcx, %rax #122.34
- movl %r8d, %ecx #124.34
- mulx 88(%rsp), %rdx, %rbp #121.36[spill]
- adox %r11, %r15 #123.34
- movl %r8d, %r11d #126.34
- adox %rdx, %r12 #124.34
- seto %cl #124.34
- clc #125.31
- adcx %rbp, %rcx #125.31
- adox %r8d, %r11d #126.34
- movq $0xffffffff00000001, %r11 #133.36
- adox %r13, %rdi #126.34
- movq $0x0ffffffff, %r13 #132.36
- movq %rdi, %rdx #131.36
- adox %rax, %r10 #127.34
- movl %r8d, %eax #129.34
- mulx %r13, %r13, %r14 #132.36
- adox %r15, %r9 #128.34
- adox %r12, %rsi #129.34
- mulx %r11, %r11, %r12 #133.36
- seto %al #129.34
- movq $-1, %rbp #129.34
- addl 232(%rsp), %ebx #130.34[spill]
- cmpl %eax, %r8d #130.34
- mulx %rbp, %rax, %r15 #131.36
- movl %r8d, %edx #134.34
- adcx %rcx, %rbx #130.34
- movl %r8d, %ecx #130.34
- setb %cl #130.34
- adox %r8d, %edx #134.34
- movq 216(%rsp), %rdx #144.36[spill]
- adox %r13, %r15 #134.34
- movl $0, %r13d #135.34
- adox %r13, %r14 #135.34
- adox %r13, %r11 #136.34
- movl %r8d, %r13d #136.34
- seto %r13b #136.34
- clc #137.31
- adcx %r12, %r13 #137.31
- movl %r8d, %r12d #138.31
- adox %r8d, %r12d #138.31
- adox %rax, %rdi #138.31
- adox %r15, %r10 #139.34
- mulx 176(%rsp), %r15, %rdi #145.36[spill]
- adox %r14, %r9 #140.34
- mulx 184(%rsp), %r14, %r12 #144.36[spill]
- adox %r11, %rsi #141.34
- movl %r8d, %r11d #142.34
- adox %r13, %rbx #142.34
- mulx 168(%rsp), %rax, %r13 #146.36[spill]
- seto %r11b #142.34
- clc #148.34
- adcx %r15, %r12 #148.34
- adcx %rax, %rdi #149.34
- mulx 88(%rsp), %rax, %r15 #147.36[spill]
- movl %r8d, %edx #151.31
- adcx %rax, %r13 #150.34
- movl %r8d, %eax #150.34
- setb %al #150.34
- adox %r8d, %edx #151.31
- adox %r15, %rax #151.31
- clc #152.34
- adcx %r14, %r10 #152.34
- movq $0xffffffff00000001, %r14 #159.36
- movq %r10, %rdx #157.36
- adcx %r12, %r9 #153.34
- adcx %rdi, %rsi #154.34
- movl %r8d, %edi #155.34
- adcx %r13, %rbx #155.34
- mulx %rbp, %r15, %r13 #157.36
- setb %dil #155.34
- addl %r11d, %ecx #156.34
- cmpl %edi, %r8d #156.34
- movq $0x0ffffffff, %r11 #158.36
- mulx %r11, %r11, %r12 #158.36
- adcx %rax, %rcx #156.34
- movl %r8d, %eax #156.34
- mulx %r14, %r14, %rdi #159.36
- movl %r8d, %edx #160.34
- setb %al #156.34
- adox %r8d, %edx #160.34
- movl %r8d, %edx #162.34
- adox %r11, %r13 #160.34
- movl $0, %r11d #161.34
- adox %r11, %r12 #161.34
- adox %r11, %r14 #162.34
- seto %dl #162.34
- clc #163.31
- adcx %rdi, %rdx #163.31
- movl %r8d, %edi #164.31
- adox %r8d, %edi #164.31
- movq $0x0ffffffff, %rdi #171.34
- adox %r15, %r10 #164.31
- movl %r8d, %r10d #168.34
- adox %r13, %r9 #165.34
- adox %r12, %rsi #166.34
- adox %r14, %rbx #167.34
- movq %rbx, %r14 #172.34
- adox %rdx, %rcx #168.34
- movq %r9, %rdx #170.34
- movq %rcx, %r13 #173.34
- seto %r10b #168.34
- xorl %r12d, %r12d #168.34
- addl %r10d, %eax #174.31
- subq %rbp, %rdx #170.34
- movq %rsi, %rbp #171.34
- movq $0xffffffff00000001, %r10 #173.34
- sbbq %rdi, %rbp #171.34
- sbbq %r11, %r14 #172.34
- sbbq %r10, %r13 #173.34
- setb %r12b #173.34
- cmpl %r12d, %r8d #174.31
- sbbq %r11, %rax #174.31
- setb %r8b #174.31
- testq %r8, %r8 #18.0
- cmovnz %rcx, %r13 #18.0
- movq %r13, 64(%rsp) #18.0[spill]
- testq %r8, %r8 #18.0
- cmovnz %rbx, %r14 #18.0
- movq %r14, 72(%rsp) #18.0[spill]
- testq %r8, %r8 #18.0
- cmovnz %rsi, %rbp #18.0
- movq %rbp, 80(%rsp) #18.0[spill]
- testq %r8, %r8 #18.0
- cmovnz %r9, %rdx #18.0
- movq %r13, (%rsp) #210.35
- movq %r14, 8(%rsp) #210.35
- movq %rbp, 16(%rsp) #210.35
- movq %rdx, 24(%rsp) #210.35
- vmovups %xmm0, 32(%rsp) #211.19
- vmovups %xmm0, 48(%rsp) #211.19
- movq 120(%rsp), %rax #53.32[spill]
- xorl %r13d, %r13d #18.0
- movq 200(%rsp), %r9 #26.23[spill]
- orq 192(%rsp), %r9 #26.23[spill]
- vpxor %xmm0, %xmm0, %xmm0 #215.20
- movq 136(%rsp), %rdi #53.32[spill]
- movq 208(%rsp), %rbp #27.23[spill]
- orq %r9, %rbp #27.23
- xorl %r9d, %r9d #53.32
- xorl %r11d, %r11d #53.32
- subq 24(%rax), %rdi #53.32
- movq 160(%rsp), %r10 #54.32[spill]
- sbbq 16(%rax), %r10 #54.32
- movq 152(%rsp), %rsi #55.32[spill]
- sbbq 8(%rax), %rsi #55.32
- movq 144(%rsp), %r12 #56.32[spill]
- sbbq (%rax), %r12 #56.32
- movq %rdx, 240(%rsp) #[spill]
- setb %r11b #56.32
- xorl %r15d, %r15d #56.32
- xorl %ebx, %ebx #56.32
- xorl %r14d, %r14d #56.32
- movq $-1, %rdx #56.32
- orq %rbp, 128(%rsp) #28.23[spill]
- xorl %ebp, %ebp #62.32
- testq %r11, %r11 #18.0
- cmovnz %rdx, %r13 #18.0
- xorl %r8d, %r8d #59.32
- movl %r13d, %ecx #61.32
- movq $0xffffffff00000001, %r11 #64.30
- adcx %r13, %rdi #59.32
- movq 184(%rsp), %rdx #72.34[spill]
- adcx %rcx, %r10 #61.32
- movq %r10, 160(%rsp) #61.32[spill]
- adcx %rbp, %rsi #62.32
- movq %r10, 48(%rsp) #211.33
- setb %r15b #62.32
- andq %r11, %r13 #64.30
- cmpl %r15d, %r9d #64.30
- mulx %r10, %rax, %r10 #73.34
- adcx %r13, %r12 #64.30
- movq $-1, %r13 #80.34
- movq %rsi, 152(%rsp) #62.32[spill]
- setb %bl #64.30
- adox %r9d, %r14d #76.32
- mulx %rdi, %rcx, %rbx #72.34
- adox %rax, %rbx #76.32
- movq %rsi, 40(%rsp) #211.33
- mulx %rsi, %r8, %rsi #74.34
- adox %r8, %r10 #77.32
- movl %r9d, %r8d #78.32
- movq %r12, 144(%rsp) #64.30[spill]
- movq %r12, 32(%rsp) #211.33
- mulx %r12, %r12, %r15 #75.34
- movq %rcx, %rdx #80.34
- adox %r12, %rsi #78.32
- mulx %r13, %r13, %r14 #80.34
- seto %r8b #78.32
- clc #79.30
- adcx %r15, %r8 #79.30
- movq %rdi, 136(%rsp) #59.32[spill]
- movq $0x0ffffffff, %rax #81.34
- mulx %rax, %r12, %r15 #81.34
- movl %r9d, %eax #83.32
- adox %r9d, %eax #83.32
- mulx %r11, %r11, %rdx #82.34
- movl %r9d, %eax #85.32
- adox %r12, %r14 #83.32
- movq %rdi, 56(%rsp) #211.33
- adox %rbp, %r15 #84.32
- adox %rbp, %r11 #85.32
- seto %al #85.32
- clc #86.30
- adcx %rdx, %rax #86.30
- movq 176(%rsp), %rdx #92.34[spill]
- movl %r9d, %r12d #87.30
- adox %r9d, %r12d #87.30
- adox %r13, %rcx #87.30
- movl %r9d, %ecx #91.32
- adox %r14, %rbx #88.32
- adox %r15, %r10 #89.32
- mulx %rdi, %r15, %r13 #92.34
- adox %r11, %rsi #90.32
- mulx 160(%rsp), %r11, %r14 #93.34[spill]
- adox %rax, %r8 #91.32
- mulx 152(%rsp), %rax, %r12 #94.34[spill]
- seto %cl #91.32
- clc #96.32
- adcx %r11, %r13 #96.32
- adcx %rax, %r14 #97.32
- mulx 144(%rsp), %rax, %r11 #95.34[spill]
- movl %r9d, %edx #99.30
- adcx %rax, %r12 #98.32
- movl %r9d, %eax #98.32
- setb %al #98.32
- adox %r9d, %edx #99.30
- adox %r11, %rax #99.30
- clc #100.34
- adcx %r15, %rbx #100.34
- movq $0x0ffffffff, %r15 #106.36
- movq %rbx, %rdx #105.36
- adcx %r13, %r10 #101.34
- adcx %r14, %rsi #102.34
- movq $-1, %r14 #105.36
- mulx %r14, %r14, %r13 #105.36
- adcx %r12, %r8 #103.34
- movl %r9d, %r12d #104.34
- adcx %rax, %rcx #104.34
- mulx %r15, %r11, %rax #106.36
- setb %r12b #104.34
- movl %r12d, 248(%rsp) #104.34[spill]
- movq $0xffffffff00000001, %r12 #107.36
- mulx %r12, %r12, %r15 #107.36
- movl %r9d, %edx #108.34
- adox %r9d, %edx #108.34
- movq 168(%rsp), %rdx #118.36[spill]
- adox %r11, %r13 #108.34
- movl %r9d, %r11d #110.34
- adox %rbp, %rax #109.34
- adox %rbp, %r12 #110.34
- seto %r11b #110.34
- clc #111.31
- adcx %r15, %r11 #111.31
- movl %r9d, %r15d #112.31
- adox %r9d, %r15d #112.31
- adox %r14, %rbx #112.31
- movl %r9d, %r14d #116.34
- adox %r13, %r10 #113.34
- adox %rax, %rsi #114.34
- mulx 160(%rsp), %rax, %rbx #119.36[spill]
- adox %r12, %r8 #115.34
- mulx %rdi, %r13, %r12 #118.36
- adox %r11, %rcx #116.34
- seto %r14b #116.34
- clc #122.34
- adcx %rax, %r12 #122.34
- mulx 152(%rsp), %rax, %r11 #120.36[spill]
- adcx %rax, %rbx #123.34
- mulx 144(%rsp), %r15, %rax #121.36[spill]
- movl %r9d, %edx #125.31
- adcx %r15, %r11 #124.34
- movl %r9d, %r15d #124.34
- setb %r15b #124.34
- adox %r9d, %edx #125.31
- adox %rax, %r15 #125.31
- clc #126.34
- movl 248(%rsp), %eax #130.34[spill]
- adcx %r13, %r10 #126.34
- movl %r9d, %r13d #129.34
- movq %r10, %rdx #131.36
- adcx %r12, %rsi #127.34
- adcx %rbx, %r8 #128.34
- adcx %r11, %rcx #129.34
- setb %r13b #129.34
- xorl %ebx, %ebx #129.34
- movq $-1, %r11 #129.34
- addl %r14d, %eax #130.34
- cmpl %r13d, %r9d #130.34
- movq $0x0ffffffff, %r13 #132.36
- movq $0xffffffff00000001, %r14 #133.36
- adcx %r15, %rax #130.34
- mulx %r11, %r15, %r12 #131.36
- setb %bl #130.34
- movl %ebx, 256(%rsp) #130.34[spill]
- mulx %r13, %r11, %rbx #132.36
- mulx %r14, %r13, %r14 #133.36
- movl %r9d, %edx #134.34
- adox %r9d, %edx #134.34
- movq 88(%rsp), %rdx #144.36[spill]
- adox %r11, %r12 #134.34
- movl %r9d, %r11d #136.34
- adox %rbp, %rbx #135.34
- adox %rbp, %r13 #136.34
- seto %r11b #136.34
- clc #137.31
- adcx %r14, %r11 #137.31
- movl %r9d, %r14d #138.31
- adox %r9d, %r14d #138.31
- movl %r9d, %r14d #151.31
- adox %r15, %r10 #138.31
- adox %r12, %rsi #139.34
- adox %rbx, %r8 #140.34
- movl %r9d, %ebx #142.34
- adox %r13, %rcx #141.34
- mulx %rdi, %r10, %r13 #144.36
- adox %r11, %rax #142.34
- mulx 160(%rsp), %rdi, %r11 #145.36[spill]
- seto %bl #142.34
- clc #148.34
- adcx %rdi, %r13 #148.34
- mulx 152(%rsp), %r12, %rdi #146.36[spill]
- adcx %r12, %r11 #149.34
- mulx 144(%rsp), %r15, %r12 #147.36[spill]
- adcx %r15, %rdi #150.34
- movl %r9d, %r15d #150.34
- setb %r15b #150.34
- adox %r9d, %r14d #151.31
- adox %r12, %r15 #151.31
- clc #152.34
- movl 256(%rsp), %r12d #156.34[spill]
- adcx %r10, %rsi #152.34
- movq %rsi, %rdx #157.36
- adcx %r13, %r8 #153.34
- movq $0xffffffff00000001, %r13 #159.36
- mulx %r13, %r13, %r14 #159.36
- adcx %r11, %rcx #154.34
- movl %r9d, %r11d #155.34
- adcx %rdi, %rax #155.34
- movq $0x0ffffffff, %rdi #158.36
- setb %r11b #155.34
- movq $-1, %r10 #155.34
- addl %ebx, %r12d #156.34
- cmpl %r11d, %r9d #156.34
- mulx %r10, %r11, %r10 #157.36
- adcx %r15, %r12 #156.34
- movl %r9d, %r15d #156.34
- mulx %rdi, %rbx, %rdi #158.36
- movl %r9d, %edx #160.34
- setb %r15b #156.34
- adox %r9d, %edx #160.34
- movq $0x0ffffffff, %rdx #171.34
- adox %rbx, %r10 #160.34
- movl %r9d, %ebx #162.34
- adox %rbp, %rdi #161.34
- adox %rbp, %r13 #162.34
- seto %bl #162.34
- clc #163.31
- adcx %r14, %rbx #163.31
- movl %r9d, %r14d #164.31
- adox %r9d, %r14d #164.31
- adox %r11, %rsi #164.31
- movl %r9d, %r11d #168.34
- adox %r10, %r8 #165.34
- adox %rdi, %rcx #166.34
- movq %rcx, %r10 #171.34
- adox %r13, %rax #167.34
- adox %rbx, %r12 #168.34
- movq $0xffffffff00000001, %rbx #173.34
- seto %r11b #168.34
- movq $-1, %rsi #168.34
- xorl %edi, %edi #168.34
- addl %r11d, %r15d #174.31
- movq %r8, %r11 #170.34
- subq %rsi, %r11 #170.34
- movq %r12, %rsi #173.34
- sbbq %rdx, %r10 #171.34
- movq %rax, %rdx #172.34
- sbbq %rbp, %rdx #172.34
- sbbq %rbx, %rsi #173.34
- setb %dil #173.34
- cmpl %edi, %r9d #174.31
- sbbq %rbp, %r15 #174.31
- setb %r9b #174.31
- testq %r9, %r9 #18.0
- cmovnz %r12, %rsi #18.0
- testq %r9, %r9 #18.0
- cmovnz %rax, %rdx #18.0
- testq %r9, %r9 #18.0
- cmovnz %rcx, %r10 #18.0
- testq %r9, %r9 #18.0
- cmovnz %r8, %r11 #18.0
- movq 112(%rsp), %rbp #18.0[spill]
- movq %rdx, 72(%rbp) #180.1
- movq 104(%rsp), %rdx #213.58[spill]
- movq %r11, 88(%rbp) #18.0
- movq %rsi, 64(%rbp) #179.1
- movq %r10, 80(%rbp) #181.1
- movq 40(%rdx), %rcx #213.44
- movq 32(%rdx), %rbx #213.37
- movq %rcx, 216(%rsp) #213.44[spill]
- orq %rbx, %rcx #26.23
- movq 48(%rdx), %rbp #213.51
- orq %rbp, %rcx #27.23
- movq 56(%rdx), %rax #213.58
- orq %rax, %rcx #28.23
- movq %rbp, 232(%rsp) #213.51[spill]
- movq %rbx, 224(%rsp) #213.37[spill]
- vmovups %xmm0, (%rsp) #215.20
- vmovups %xmm0, 16(%rsp) #215.20
- orq %rcx, 128(%rsp) #214.28[spill]
- movq 240(%rsp), %rdx #214.28[spill]
- movq %rbp, %r10 #73.34
- xorl %ebp, %ebp #76.32
- movq $-1, %r14 #76.32
- xorl %esi, %esi #76.32
- mulx %rax, %r9, %r11 #72.34
- mulx %r10, %rbx, %r8 #73.34
- adcx %rbx, %r11 #76.32
- movl %ebp, %ebx #79.30
- vpxor %xmm0, %xmm0, %xmm0 #216.19
- mulx 216(%rsp), %rcx, %rdi #74.34[spill]
- adcx %rcx, %r8 #77.32
- movq $0x0ffffffff, %rcx #81.34
- mulx 224(%rsp), %r15, %r12 #75.34[spill]
- movq %r9, %rdx #80.34
- adcx %r15, %rdi #78.32
- movq $0xffffffff00000001, %r15 #82.34
- mulx %r14, %r13, %r14 #80.34
- setb %sil #78.32
- adox %ebp, %ebx #79.30
- adox %r12, %rsi #79.30
- movq %rax, 88(%rsp) #[spill]
- clc #83.32
- mulx %rcx, %rbx, %r12 #81.34
- adcx %rbx, %r14 #83.32
- movl $0, %ebx #84.32
- mulx %r15, %r15, %rcx #82.34
- movl %ebp, %edx #86.30
- adcx %rbx, %r12 #84.32
- adcx %rbx, %r15 #85.32
- movl %ebp, %ebx #85.32
- setb %bl #85.32
- adox %ebp, %edx #86.30
- adox %rcx, %rbx #86.30
- movq 80(%rsp), %rdx #92.34[spill]
- clc #87.30
- mulx %r10, %rcx, %r10 #93.34
- adcx %r13, %r9 #87.30
- movl %ebp, %r13d #96.32
- adcx %r14, %r11 #88.32
- adcx %r12, %r8 #89.32
- mulx %rax, %r14, %r12 #92.34
- adcx %r15, %rdi #90.32
- mulx 216(%rsp), %r15, %r9 #94.34[spill]
- adcx %rbx, %rsi #91.32
- movl %ebp, %ebx #91.32
- mulx 224(%rsp), %rdx, %rax #95.34[spill]
- setb %bl #91.32
- adox %ebp, %r13d #96.32
- movq $0xffffffff00000001, %r13 #107.36
- adox %rcx, %r12 #96.32
- movl %ebp, %ecx #100.34
- adox %r15, %r10 #97.32
- movl %ebp, %r15d #98.32
- adox %rdx, %r9 #98.32
- seto %r15b #98.32
- clc #99.30
- adcx %rax, %r15 #99.30
- adox %ebp, %ecx #100.34
- movl %ebp, %eax #104.34
- adox %r14, %r11 #100.34
- movq %r11, %rdx #105.36
- adox %r12, %r8 #101.34
- movq $0x0ffffffff, %r12 #106.36
- mulx %r13, %r13, %rcx #107.36
- adox %r10, %rdi #102.34
- movq $-1, %r10 #105.36
- adox %r9, %rsi #103.34
- mulx %r10, %r10, %r9 #105.36
- adox %r15, %rbx #104.34
- mulx %r12, %r14, %r15 #106.36
- movl $0, %r12d #109.34
- seto %al #104.34
- clc #108.34
- movq 72(%rsp), %rdx #118.36[spill]
- adcx %r14, %r9 #108.34
- movl %ebp, %r14d #111.31
- adcx %r12, %r15 #109.34
- adcx %r12, %r13 #110.34
- movl %ebp, %r12d #110.34
- setb %r12b #110.34
- adox %ebp, %r14d #111.31
- adox %rcx, %r12 #111.31
- clc #112.31
- mulx 232(%rsp), %rcx, %r14 #119.36[spill]
- adcx %r10, %r11 #112.31
- mulx 216(%rsp), %r10, %r11 #120.36[spill]
- adcx %r9, %r8 #113.34
- movl %ebp, %r9d #116.34
- adcx %r15, %rdi #114.34
- adcx %r13, %rsi #115.34
- movl %ebp, %r13d #122.34
- adcx %r12, %rbx #116.34
- setb %r9b #116.34
- adox %ebp, %r13d #122.34
- movl %r9d, 200(%rsp) #116.34[spill]
- mulx 88(%rsp), %r12, %r9 #118.36[spill]
- adox %rcx, %r9 #122.34
- movl %ebp, %ecx #124.34
- mulx 224(%rsp), %rdx, %r15 #121.36[spill]
- adox %r10, %r14 #123.34
- movl %ebp, %r10d #126.34
- adox %rdx, %r11 #124.34
- seto %cl #124.34
- clc #125.31
- adcx %r15, %rcx #125.31
- adox %ebp, %r10d #126.34
- movq $0x0ffffffff, %r10 #132.36
- adox %r12, %r8 #126.34
- movq %r8, %rdx #131.36
- adox %r9, %rdi #127.34
- mulx %r10, %r9, %r12 #132.36
- adox %r14, %rsi #128.34
- adox %r11, %rbx #129.34
- movl %ebp, %r11d #129.34
- seto %r11b #129.34
- xorl %r15d, %r15d #129.34
- addl 200(%rsp), %eax #130.34[spill]
- cmpl %r11d, %ebp #130.34
- movq $0xffffffff00000001, %r11 #133.36
- adcx %rcx, %rax #130.34
- movq $-1, %rcx #131.36
- mulx %rcx, %r14, %r13 #131.36
- mulx %r11, %r10, %r11 #133.36
- movl %ebp, %edx #134.34
- setb %r15b #130.34
- adox %ebp, %edx #134.34
- movq 64(%rsp), %rdx #144.36[spill]
- adox %r9, %r13 #134.34
- movl $0, %r9d #135.34
- adox %r9, %r12 #135.34
- adox %r9, %r10 #136.34
- movl %ebp, %r9d #136.34
- seto %r9b #136.34
- clc #137.31
- adcx %r11, %r9 #137.31
- movl %ebp, %r11d #138.31
- adox %ebp, %r11d #138.31
- adox %r14, %r8 #138.31
- adox %r13, %rdi #139.34
- mulx 88(%rsp), %r13, %r11 #144.36[spill]
- adox %r12, %rsi #140.34
- mulx 232(%rsp), %r12, %r8 #145.36[spill]
- adox %r10, %rbx #141.34
- movl %ebp, %r10d #142.34
- adox %r9, %rax #142.34
- seto %r10b #142.34
- clc #148.34
- adcx %r12, %r11 #148.34
- mulx 216(%rsp), %r14, %r12 #146.36[spill]
- adcx %r14, %r8 #149.34
- mulx 224(%rsp), %r9, %r14 #147.36[spill]
- movl %ebp, %edx #151.31
- adcx %r9, %r12 #150.34
- movl %ebp, %r9d #150.34
- setb %r9b #150.34
- adox %ebp, %edx #151.31
- adox %r14, %r9 #151.31
- clc #152.34
- adcx %r13, %rdi #152.34
- movq $0xffffffff00000001, %r13 #159.36
- movq %rdi, %rdx #157.36
- adcx %r11, %rsi #153.34
- adcx %r8, %rbx #154.34
- movl %ebp, %r8d #155.34
- adcx %r12, %rax #155.34
- mulx %rcx, %r14, %r12 #157.36
- setb %r8b #155.34
- addl %r10d, %r15d #156.34
- cmpl %r8d, %ebp #156.34
- movq $0x0ffffffff, %r10 #158.36
- mulx %r10, %r10, %r11 #158.36
- adcx %r9, %r15 #156.34
- movl %ebp, %r9d #156.34
- mulx %r13, %r13, %r8 #159.36
- movl %ebp, %edx #160.34
- setb %r9b #156.34
- adox %ebp, %edx #160.34
- movl %ebp, %edx #162.34
- adox %r10, %r12 #160.34
- movl $0, %r10d #161.34
- adox %r10, %r11 #161.34
- adox %r10, %r13 #162.34
- seto %dl #162.34
- clc #163.31
- adcx %r8, %rdx #163.31
- movl %ebp, %r8d #164.31
- adox %ebp, %r8d #164.31
- adox %r14, %rdi #164.31
- movl %ebp, %edi #168.34
- adox %r12, %rsi #165.34
- movq $0xffffffff00000001, %r12 #173.34
- adox %r11, %rbx #166.34
- movq $0x0ffffffff, %r11 #171.34
- adox %r13, %rax #167.34
- movq %rax, %r8 #172.34
- adox %rdx, %r15 #168.34
- movq %r15, %rdx #173.34
- seto %dil #168.34
- xorl %r14d, %r14d #168.34
- addl %edi, %r9d #174.31
- movq %rsi, %rdi #170.34
- subq %rcx, %rdi #170.34
- movq %rbx, %rcx #171.34
- sbbq %r11, %rcx #171.34
- sbbq %r10, %r8 #172.34
- sbbq %r12, %rdx #173.34
- setb %r14b #173.34
- cmpl %r14d, %ebp #174.31
- sbbq %r10, %r9 #174.31
- setb %bpl #174.31
- testq %rbp, %rbp #18.0
- cmovnz %r15, %rdx #18.0
- movq %rdx, 192(%rsp) #18.0[spill]
- testq %rbp, %rbp #18.0
- cmovnz %rax, %r8 #18.0
- movq %r8, 176(%rsp) #18.0[spill]
- testq %rbp, %rbp #18.0
- cmovnz %rbx, %rcx #18.0
- movq %rcx, 184(%rsp) #18.0[spill]
- testq %rbp, %rbp #18.0
- cmovnz %rsi, %rdi #18.0
- movq %rdi, 168(%rsp) #18.0[spill]
- movq %rdx, (%rsp) #215.34
- movq %r8, 8(%rsp) #215.34
- movq %rcx, 16(%rsp) #215.34
- movq %rdi, 24(%rsp) #215.34
- vmovups %xmm0, 32(%rsp) #216.19
- vmovups %xmm0, 48(%rsp) #216.19
- movq %rdx, %rax #56.32
- movq %r8, %r10 #55.32
- movq %rcx, %r8 #54.32
- movq 120(%rsp), %rdx #53.32[spill]
- xorl %r14d, %r14d #53.32
- movq %rdi, %rsi #53.32
- xorl %ecx, %ecx #56.32
- movq $-1, %rbx #18.0
- subq 56(%rdx), %rsi #53.32
- sbbq 48(%rdx), %r8 #54.32
- movq $0xffffffff00000001, %r13 #64.30
- sbbq 40(%rdx), %r10 #55.32
- vpxor %xmm0, %xmm0, %xmm0 #217.20
- sbbq 32(%rdx), %rax #56.32
- setb %cl #56.32
- xorl %r11d, %r11d #56.32
- xorl %r9d, %r9d #56.32
- xorl %r12d, %r12d #56.32
- testq %rcx, %rcx #18.0
- cmovnz %rbx, %r11 #18.0
- xorl %ebp, %ebp #59.32
- movl %r11d, %edi #61.32
- adcx %r11, %rsi #59.32
- movq %rsi, 168(%rsp) #59.32[spill]
- adcx %rdi, %r8 #61.32
- movq %rsi, 56(%rsp) #216.33
- adcx %r9, %r10 #62.32
- movq %r8, 184(%rsp) #61.32[spill]
- setb %r12b #62.32
- andq %r11, %r13 #64.30
- cmpl %r12d, %r14d #64.30
- movq %r8, 48(%rsp) #216.33
- adcx %r13, %rax #64.30
- movq %r10, 176(%rsp) #62.32[spill]
- movq %r10, 40(%rsp) #216.33
- movq %rax, 192(%rsp) #64.30[spill]
- movq %rax, 32(%rsp) #216.33
- vmovups %xmm0, 64(%rsp) #217.20
- vmovups %xmm0, 80(%rsp) #217.20
- movq 136(%rsp), %rsi #72.34[spill]
- movq %rsi, %rdx #72.34
- movq 160(%rsp), %rdi #73.34[spill]
- xorl %r9d, %r9d #76.32
- movq $-1, %r15 #76.32
- xorl %ecx, %ecx #76.32
- xorl %r10d, %r10d #76.32
- mulx %rsi, %rbx, %r8 #72.34
- mulx %rdi, %rbp, %r12 #73.34
- adox %rbp, %r8 #76.32
- vpxor %xmm0, %xmm0, %xmm0 #218.20
- mulx 152(%rsp), %rax, %r11 #74.34[spill]
- adox %rax, %r12 #77.32
- mulx 144(%rsp), %r14, %r13 #75.34[spill]
- movq %rbx, %rdx #80.34
- adox %r14, %r11 #78.32
- movq $0x0ffffffff, %r14 #81.34
- mulx %r15, %rbp, %rax #80.34
- movq $0xffffffff00000001, %r15 #82.34
- seto %r10b #78.32
- clc #79.30
- adcx %r13, %r10 #79.30
- setb %cl #79.30
- mulx %r14, %r13, %rcx #81.34
- mulx %r15, %r15, %r14 #82.34
- movl %r9d, %edx #83.32
- adox %r9d, %edx #83.32
- movl %r9d, %edx #85.32
- adox %r13, %rax #83.32
- movl $0, %r13d #84.32
- adox %r13, %rcx #84.32
- adox %r13, %r15 #85.32
- seto %dl #85.32
- clc #86.30
- adcx %r14, %rdx #86.30
- movl %r9d, %r14d #87.30
- adox %r9d, %r14d #87.30
- adox %rbp, %rbx #87.30
- movl %r9d, %ebp #91.32
- adox %rax, %r8 #88.32
- adox %rcx, %r12 #89.32
- adox %r15, %r11 #90.32
- adox %rdx, %r10 #91.32
- movq %rdi, %rdx #92.34
- mulx %rsi, %rsi, %r14 #92.34
- seto %bpl #91.32
- clc #96.32
- mulx %rdi, %rbx, %rax #93.34
- adcx %rbx, %r14 #96.32
- movq 152(%rsp), %rbx #94.34[spill]
- mulx %rbx, %r15, %rcx #94.34
- adcx %r15, %rax #97.32
- mulx 144(%rsp), %r15, %rdi #95.34[spill]
- movl %r9d, %edx #99.30
- adcx %r15, %rcx #98.32
- movl %r9d, %r15d #98.32
- setb %r15b #98.32
- adox %r9d, %edx #99.30
- adox %rdi, %r15 #99.30
- movl %r9d, %edi #99.30
- seto %dil #99.30
- clc #100.34
- adcx %rsi, %r8 #100.34
- movl %r9d, %esi #104.34
- movq %r8, %rdx #105.36
- adcx %r14, %r12 #101.34
- movq $0x0ffffffff, %r14 #106.36
- adcx %rax, %r11 #102.34
- movq $-1, %rax #105.36
- adcx %rcx, %r10 #103.34
- mulx %r14, %rcx, %rdi #106.36
- adcx %r15, %rbp #104.34
- mulx %rax, %r15, %rax #105.36
- setb %sil #104.34
- movl %esi, 32(%rsp) #104.34[spill]
- movq $0xffffffff00000001, %rsi #107.36
- mulx %rsi, %r14, %rsi #107.36
- movl %r9d, %edx #108.34
- adox %r9d, %edx #108.34
- movq %rbx, %rdx #118.36
- adox %rcx, %rax #108.34
- movl %r9d, %ecx #110.34
- adox %r13, %rdi #109.34
- adox %r13, %r14 #110.34
- seto %cl #110.34
- clc #111.31
- adcx %rsi, %rcx #111.31
- movl %r9d, %esi #112.31
- adox %r9d, %esi #112.31
- adox %r15, %r8 #112.31
- adox %rax, %r12 #113.34
- mulx 136(%rsp), %r8, %rax #118.36[spill]
- adox %rdi, %r11 #114.34
- movl %r9d, %edi #116.34
- adox %r14, %r10 #115.34
- mulx 160(%rsp), %r14, %r15 #119.36[spill]
- adox %rcx, %rbp #116.34
- mulx %rbx, %rcx, %rsi #120.36
- seto %dil #116.34
- clc #122.34
- adcx %r14, %rax #122.34
- adcx %rcx, %r15 #123.34
- movq 144(%rsp), %rcx #121.36[spill]
- mulx %rcx, %rbx, %r14 #121.36
- movl %r9d, %edx #125.31
- adcx %rbx, %rsi #124.34
- movl %r9d, %ebx #124.34
- setb %bl #124.34
- adox %r9d, %edx #125.31
- adox %r14, %rbx #125.31
- clc #126.34
- adcx %r8, %r12 #126.34
- movl %r9d, %r8d #129.34
- movq %r12, %rdx #131.36
- adcx %rax, %r11 #127.34
- movl 32(%rsp), %eax #130.34[spill]
- adcx %r15, %r10 #128.34
- movq $0x0ffffffff, %r15 #132.36
- adcx %rsi, %rbp #129.34
- setb %r8b #129.34
- xorl %r14d, %r14d #129.34
- addl %edi, %eax #130.34
- cmpl %r8d, %r9d #130.34
- movq $0xffffffff00000001, %rdi #133.36
- mulx %rdi, %rdi, %rsi #133.36
- adcx %rbx, %rax #130.34
- movq $-1, %rbx #131.36
- setb %r14b #130.34
- movl %r14d, 40(%rsp) #130.34[spill]
- mulx %rbx, %r8, %r14 #131.36
- mulx %r15, %r15, %rbx #132.36
- movl %r9d, %edx #134.34
- adox %r9d, %edx #134.34
- movq %rcx, %rdx #144.36
- adox %r15, %r14 #134.34
- movl %r9d, %r15d #136.34
- adox %r13, %rbx #135.34
- adox %r13, %rdi #136.34
- seto %r15b #136.34
- clc #137.31
- adcx %rsi, %r15 #137.31
- movl %r9d, %esi #138.31
- adox %r9d, %esi #138.31
- movl %r9d, %esi #142.34
- adox %r8, %r12 #138.31
- adox %r14, %r11 #139.34
- adox %rbx, %r10 #140.34
- movl %r9d, %ebx #150.34
- adox %rdi, %rbp #141.34
- mulx 160(%rsp), %r8, %rdi #145.36[spill]
- adox %r15, %rax #142.34
- mulx 136(%rsp), %r15, %r12 #144.36[spill]
- seto %sil #142.34
- clc #148.34
- adcx %r8, %r12 #148.34
- mulx 152(%rsp), %r14, %r8 #146.36[spill]
- adcx %r14, %rdi #149.34
- mulx %rcx, %rcx, %r14 #147.36
- adcx %rcx, %r8 #150.34
- movl %r9d, %ecx #151.31
- setb %bl #150.34
- adox %r9d, %ecx #151.31
- movq $-1, %rcx #157.36
- adox %r14, %rbx #151.31
- clc #152.34
- movl 40(%rsp), %r14d #156.34[spill]
- adcx %r15, %r11 #152.34
- movq $0xffffffff00000001, %r15 #159.36
- movq %r11, %rdx #157.36
- adcx %r12, %r10 #153.34
- movl %r9d, %r12d #155.34
- adcx %rdi, %rbp #154.34
- adcx %r8, %rax #155.34
- mulx %rcx, %r8, %rcx #157.36
- setb %r12b #155.34
- addl %esi, %r14d #156.34
- cmpl %r12d, %r9d #156.34
- movq $0x0ffffffff, %r12 #158.36
- mulx %r12, %rdi, %r12 #158.36
- adcx %rbx, %r14 #156.34
- movl %r9d, %ebx #156.34
- mulx %r15, %r15, %rsi #159.36
- movl %r9d, %edx #160.34
- setb %bl #156.34
- adox %r9d, %edx #160.34
- adox %rdi, %rcx #160.34
- movl %r9d, %edi #162.34
- adox %r13, %r12 #161.34
- adox %r13, %r15 #162.34
- seto %dil #162.34
- clc #163.31
- adcx %rsi, %rdi #163.31
- movl %r9d, %esi #164.31
- adox %r9d, %esi #164.31
- adox %r8, %r11 #164.31
- movq $0x0ffffffff, %r8 #171.34
- movl %r9d, %r11d #168.34
- adox %rcx, %r10 #165.34
- movq $0xffffffff00000001, %rcx #173.34
- movq %r10, %rdx #170.34
- adox %r12, %rbp #166.34
- adox %r15, %rax #167.34
- adox %rdi, %r14 #168.34
- movq %rax, %rdi #172.34
- movq %r14, %rsi #173.34
- seto %r11b #168.34
- addl %r11d, %ebx #174.31
- movq $-1, %r11 #170.34
- subq %r11, %rdx #170.34
- movq %rbp, %r11 #171.34
- sbbq %r8, %r11 #171.34
- sbbq %r13, %rdi #172.34
- sbbq %rcx, %rsi #173.34
- movl %r9d, %ecx #173.34
- setb %cl #173.34
- cmpl %ecx, %r9d #174.31
- sbbq %r13, %rbx #174.31
- setb %r9b #174.31
- testq %r9, %r9 #18.0
- cmovnz %r14, %rsi #18.0
- movq %rsi, 248(%rsp) #18.0[spill]
- testq %r9, %r9 #18.0
- cmovnz %rax, %rdi #18.0
- movq %rdi, 256(%rsp) #18.0[spill]
- testq %r9, %r9 #18.0
- cmovnz %rbp, %r11 #18.0
- movq %r11, 264(%rsp) #18.0[spill]
- testq %r9, %r9 #18.0
- cmovnz %r10, %rdx #18.0
- movq %rdx, 272(%rsp) #18.0[spill]
- movq %rsi, 64(%rsp) #217.37
- movq %rdi, 72(%rsp) #217.37
- movq %r11, 80(%rsp) #217.37
- movq %rdx, 88(%rsp) #217.37
- vmovups %xmm0, (%rsp) #218.20
- vmovups %xmm0, 16(%rsp) #218.20
- movq 168(%rsp), %r12 #72.34[spill]
- movq %r12, %rdx #72.34
- movq 184(%rsp), %r13 #73.34[spill]
- xorl %r11d, %r11d #76.32
- xorl %ebx, %ebx #76.32
- xorl %r9d, %r9d #76.32
- mulx %r12, %r15, %r14 #72.34
- mulx %r13, %r10, %rsi #73.34
- adcx %r10, %r14 #76.32
- movq $-1, %r10 #80.34
- vpxor %xmm0, %xmm0, %xmm0 #219.21
- mulx 176(%rsp), %rdi, %r8 #74.34[spill]
- adcx %rdi, %rsi #77.32
- movq $0xffffffff00000001, %rdi #82.34
- mulx 192(%rsp), %rcx, %rax #75.34[spill]
- movq %r15, %rdx #80.34
- adcx %rcx, %r8 #78.32
- mulx %rdi, %rcx, %rdi #82.34
- setb %r9b #78.32
- adox %r11d, %ebx #79.30
- adox %rax, %r9 #79.30
- mulx %r10, %rbp, %rax #80.34
- movq $0x0ffffffff, %r10 #81.34
- clc #83.32
- mulx %r10, %r10, %rbx #81.34
- movl %r11d, %edx #86.30
- adcx %r10, %rax #83.32
- movl $0, %r10d #84.32
- adcx %r10, %rbx #84.32
- adcx %r10, %rcx #85.32
- movl %r11d, %r10d #85.32
- setb %r10b #85.32
- adox %r11d, %edx #86.30
- movq %r13, %rdx #92.34
- adox %rdi, %r10 #86.30
- movl %r11d, %edi #86.30
- seto %dil #86.30
- clc #87.30
- adcx %rbp, %r15 #87.30
- adcx %rax, %r14 #88.32
- adcx %rbx, %rsi #89.32
- mulx %r13, %rbx, %r15 #93.34
- movl %r11d, %r13d #96.32
- adcx %rcx, %r8 #90.32
- mulx %r12, %rbp, %rcx #92.34
- adcx %r10, %r9 #91.32
- movl %r11d, %r10d #91.32
- mulx 176(%rsp), %rax, %r12 #94.34[spill]
- setb %r10b #91.32
- adox %r11d, %r13d #96.32
- mulx 192(%rsp), %rdx, %rdi #95.34[spill]
- adox %rbx, %rcx #96.32
- movl %r11d, %ebx #98.32
- adox %rax, %r15 #97.32
- movl %r11d, %eax #100.34
- adox %rdx, %r12 #98.32
- seto %bl #98.32
- clc #99.30
- adcx %rdi, %rbx #99.30
- adox %r11d, %eax #100.34
- movl %r11d, %edi #104.34
- adox %rbp, %r14 #100.34
- movq %r14, %rdx #105.36
- adox %rcx, %rsi #101.34
- movq $0x0ffffffff, %rcx #106.36
- adox %r15, %r8 #102.34
- mulx %rcx, %r15, %rax #106.36
- adox %r12, %r9 #103.34
- movq $-1, %r12 #105.36
- mulx %r12, %rbp, %r13 #105.36
- movl $0, %r12d #109.34
- adox %rbx, %r10 #104.34
- movq $0xffffffff00000001, %rbx #107.36
- mulx %rbx, %rbx, %rcx #107.36
- seto %dil #104.34
- clc #108.34
- movq 176(%rsp), %rdx #118.36[spill]
- adcx %r15, %r13 #108.34
- movl %r11d, %r15d #110.34
- adcx %r12, %rax #109.34
- adcx %r12, %rbx #110.34
- movl %r11d, %r12d #111.31
- setb %r15b #110.34
- adox %r11d, %r12d #111.31
- adox %rcx, %r15 #111.31
- clc #112.31
- adcx %rbp, %r14 #112.31
- movl %r11d, %r14d #116.34
- adcx %r13, %rsi #113.34
- mulx 168(%rsp), %r13, %rbp #118.36[spill]
- adcx %rax, %r8 #114.34
- mulx %rdx, %rax, %r12 #120.36
- adcx %rbx, %r9 #115.34
- adcx %r15, %r10 #116.34
- mulx 184(%rsp), %rcx, %r15 #119.36[spill]
- setb %r14b #116.34
- movl %r14d, 64(%rsp) #116.34[spill]
- movl %r11d, %r14d #122.34
- adox %r11d, %r14d #122.34
- mulx 192(%rsp), %rdx, %rbx #121.36[spill]
- adox %rcx, %rbp #122.34
- movl %r11d, %ecx #124.34
- adox %rax, %r15 #123.34
- movl %r11d, %eax #126.34
- adox %rdx, %r12 #124.34
- seto %cl #124.34
- clc #125.31
- adcx %rbx, %rcx #125.31
- adox %r11d, %eax #126.34
- adox %r13, %rsi #126.34
- movq $0x0ffffffff, %r13 #132.36
- movq %rsi, %rdx #131.36
- adox %rbp, %r8 #127.34
- movl %r11d, %ebp #129.34
- adox %r15, %r9 #128.34
- mulx %r13, %r13, %r15 #132.36
- adox %r12, %r10 #129.34
- movq $0xffffffff00000001, %r12 #133.36
- mulx %r12, %r14, %r12 #133.36
- seto %bpl #129.34
- xorl %ebx, %ebx #129.34
- addl 64(%rsp), %edi #130.34[spill]
- cmpl %ebp, %r11d #130.34
- adcx %rcx, %rdi #130.34
- movq $-1, %rcx #131.36
- mulx %rcx, %rbp, %rax #131.36
- movl %r11d, %edx #134.34
- setb %bl #130.34
- adox %r11d, %edx #134.34
- movq 192(%rsp), %rdx #144.36[spill]
- adox %r13, %rax #134.34
- movl $0, %r13d #135.34
- adox %r13, %r15 #135.34
- adox %r13, %r14 #136.34
- movl %r11d, %r13d #136.34
- seto %r13b #136.34
- clc #137.31
- adcx %r12, %r13 #137.31
- movl %r11d, %r12d #138.31
- adox %r11d, %r12d #138.31
- adox %rbp, %rsi #138.31
- mulx 184(%rsp), %rbp, %rsi #145.36[spill]
- adox %rax, %r8 #139.34
- movl %r11d, %eax #142.34
- adox %r15, %r9 #140.34
- adox %r14, %r10 #141.34
- mulx 168(%rsp), %r12, %r14 #144.36[spill]
- adox %r13, %rdi #142.34
- mulx 176(%rsp), %r15, %r13 #146.36[spill]
- seto %al #142.34
- clc #148.34
- adcx %rbp, %r14 #148.34
- adcx %r15, %rsi #149.34
- mulx %rdx, %rbp, %r15 #147.36
- movl %r11d, %edx #151.31
- adcx %rbp, %r13 #150.34
- movl %r11d, %ebp #150.34
- setb %bpl #150.34
- adox %r11d, %edx #151.31
- adox %r15, %rbp #151.31
- clc #152.34
- adcx %r12, %r8 #152.34
- movq %r8, %rdx #157.36
- adcx %r14, %r9 #153.34
- movq $0xffffffff00000001, %r14 #159.36
- adcx %rsi, %r10 #154.34
- movl %r11d, %esi #155.34
- adcx %r13, %rdi #155.34
- mulx %rcx, %r15, %r13 #157.36
- setb %sil #155.34
- addl %eax, %ebx #156.34
- cmpl %esi, %r11d #156.34
- movq $0x0ffffffff, %rax #158.36
- mulx %rax, %rax, %r12 #158.36
- adcx %rbp, %rbx #156.34
- movl %r11d, %ebp #156.34
- mulx %r14, %r14, %rsi #159.36
- movl %r11d, %edx #160.34
- setb %bpl #156.34
- adox %r11d, %edx #160.34
- movl %r11d, %edx #162.34
- adox %rax, %r13 #160.34
- movl $0, %eax #161.34
- adox %rax, %r12 #161.34
- adox %rax, %r14 #162.34
- seto %dl #162.34
- clc #163.31
- adcx %rsi, %rdx #163.31
- movl %r11d, %esi #164.31
- adox %r11d, %esi #164.31
- adox %r15, %r8 #164.31
- movl %r11d, %r8d #168.34
- adox %r13, %r9 #165.34
- adox %r12, %r10 #166.34
- movq $0xffffffff00000001, %r12 #173.34
- adox %r14, %rdi #167.34
- movq %rdi, %r15 #172.34
- adox %rdx, %rbx #168.34
- movq %r9, %rdx #170.34
- seto %r8b #168.34
- xorl %r13d, %r13d #168.34
- addl %r8d, %ebp #174.31
- subq %rcx, %rdx #170.34
- movq %r10, %rcx #171.34
- movq $0x0ffffffff, %r8 #171.34
- sbbq %r8, %rcx #171.34
- movq %rbx, %r8 #173.34
- sbbq %rax, %r15 #172.34
- sbbq %r12, %r8 #173.34
- setb %r13b #173.34
- cmpl %r13d, %r11d #174.31
- sbbq %rax, %rbp #174.31
- setb %r11b #174.31
- testq %r11, %r11 #18.0
- cmovnz %rbx, %r8 #18.0
- testq %r11, %r11 #18.0
- cmovnz %rdi, %r15 #18.0
- movq %r15, 232(%rsp) #18.0[spill]
- testq %r11, %r11 #18.0
- cmovnz %r10, %rcx #18.0
- testq %r11, %r11 #18.0
- cmovnz %r9, %rdx #18.0
- movq %rdx, 240(%rsp) #18.0[spill]
- movq %r8, (%rsp) #218.37
- movq %r15, 8(%rsp) #218.37
- movq %rcx, 16(%rsp) #218.37
- movq %rdx, 24(%rsp) #218.37
- vmovups %xmm0, 32(%rsp) #219.21
- vmovups %xmm0, 48(%rsp) #219.21
- movq 272(%rsp), %rdx #72.34[spill]
- xorl %r12d, %r12d #76.32
- xorl %ebp, %ebp #76.32
- vpxor %xmm0, %xmm0, %xmm0 #228.21
- movq 136(%rsp), %r9 #72.34[spill]
- movq 160(%rsp), %r10 #73.34[spill]
- movq %r8, 64(%rsp) #[spill]
- mulx %r9, %r13, %r11 #72.34
- mulx %r10, %r8, %rbx #73.34
- adcx %r8, %r11 #76.32
- movl %ebp, %r8d #78.32
- mulx 152(%rsp), %rsi, %rdi #74.34[spill]
- adcx %rsi, %rbx #77.32
- movq $-1, %rsi #80.34
- mulx 144(%rsp), %rax, %r15 #75.34[spill]
- movq %r13, %rdx #80.34
- adcx %rax, %rdi #78.32
- movq $0xffffffff00000001, %rax #82.34
- movq %rcx, 72(%rsp) #[spill]
- movl %ebp, %ecx #79.30
- setb %r8b #78.32
- adox %ebp, %ecx #79.30
- adox %r15, %r8 #79.30
- mulx %rax, %rcx, %rax #82.34
- seto %r12b #79.30
- mulx %rsi, %r14, %r12 #80.34
- movq $0x0ffffffff, %rsi #81.34
- clc #83.32
- mulx %rsi, %rsi, %r15 #81.34
- movl %ebp, %edx #86.30
- adcx %rsi, %r12 #83.32
- movl $0, %esi #84.32
- adcx %rsi, %r15 #84.32
- adcx %rsi, %rcx #85.32
- movl %ebp, %esi #85.32
- setb %sil #85.32
- adox %ebp, %edx #86.30
- adox %rax, %rsi #86.30
- movl %ebp, %eax #86.30
- movq 264(%rsp), %rdx #92.34[spill]
- seto %al #86.30
- clc #87.30
- adcx %r14, %r13 #87.30
- movl %ebp, %r13d #96.32
- adcx %r12, %r11 #88.32
- mulx %r9, %r14, %r12 #92.34
- adcx %r15, %rbx #89.32
- mulx 152(%rsp), %r15, %r9 #94.34[spill]
- adcx %rcx, %rdi #90.32
- mulx %r10, %rcx, %r10 #93.34
- adcx %rsi, %r8 #91.32
- movl %ebp, %esi #91.32
- mulx 144(%rsp), %rdx, %rax #95.34[spill]
- setb %sil #91.32
- adox %ebp, %r13d #96.32
- adox %rcx, %r12 #96.32
- movl %ebp, %ecx #98.32
- adox %r15, %r10 #97.32
- movl %ebp, %r15d #100.34
- adox %rdx, %r9 #98.32
- seto %cl #98.32
- clc #99.30
- adcx %rax, %rcx #99.30
- adox %ebp, %r15d #100.34
- movl %ebp, %eax #104.34
- adox %r14, %r11 #100.34
- movq $0x0ffffffff, %r14 #106.36
- movq %r11, %rdx #105.36
- adox %r12, %rbx #101.34
- movq $0xffffffff00000001, %r12 #107.36
- adox %r10, %rdi #102.34
- movq $-1, %r10 #105.36
- adox %r9, %r8 #103.34
- mulx %r10, %r10, %r9 #105.36
- adox %rcx, %rsi #104.34
- mulx %r14, %rcx, %r15 #106.36
- movl $0, %r14d #109.34
- seto %al #104.34
- clc #108.34
- adcx %rcx, %r9 #108.34
- mulx %r12, %r13, %rcx #107.36
- movl %ebp, %r12d #110.34
- adcx %r14, %r15 #109.34
- movq 256(%rsp), %rdx #118.36[spill]
- adcx %r14, %r13 #110.34
- movl %ebp, %r14d #111.31
- setb %r12b #110.34
- adox %ebp, %r14d #111.31
- adox %rcx, %r12 #111.31
- clc #112.31
- mulx 160(%rsp), %rcx, %r14 #119.36[spill]
- adcx %r10, %r11 #112.31
- mulx 152(%rsp), %r10, %r11 #120.36[spill]
- adcx %r9, %rbx #113.34
- movl %ebp, %r9d #116.34
- adcx %r15, %rdi #114.34
- adcx %r13, %r8 #115.34
- movl %ebp, %r13d #122.34
- adcx %r12, %rsi #116.34
- setb %r9b #116.34
- adox %ebp, %r13d #122.34
- movl %r9d, 80(%rsp) #116.34[spill]
- mulx 136(%rsp), %r12, %r9 #118.36[spill]
- adox %rcx, %r9 #122.34
- movl %ebp, %ecx #124.34
- mulx 144(%rsp), %rdx, %r15 #121.36[spill]
- adox %r10, %r14 #123.34
- movl %ebp, %r10d #126.34
- adox %rdx, %r11 #124.34
- seto %cl #124.34
- clc #125.31
- adcx %r15, %rcx #125.31
- adox %ebp, %r10d #126.34
- movq $0x0ffffffff, %r10 #132.36
- adox %r12, %rbx #126.34
- movq %rbx, %rdx #131.36
- adox %r9, %rdi #127.34
- mulx %r10, %r9, %r12 #132.36
- adox %r14, %r8 #128.34
- adox %r11, %rsi #129.34
- movl %ebp, %r11d #129.34
- seto %r11b #129.34
- xorl %r15d, %r15d #129.34
- addl 80(%rsp), %eax #130.34[spill]
- cmpl %r11d, %ebp #130.34
- movq $0xffffffff00000001, %r11 #133.36
- adcx %rcx, %rax #130.34
- movq $-1, %rcx #131.36
- mulx %rcx, %r14, %r13 #131.36
- mulx %r11, %r10, %r11 #133.36
- movl %ebp, %edx #134.34
- setb %r15b #130.34
- adox %ebp, %edx #134.34
- movq 248(%rsp), %rdx #144.36[spill]
- adox %r9, %r13 #134.34
- movl $0, %r9d #135.34
- adox %r9, %r12 #135.34
- adox %r9, %r10 #136.34
- movl %ebp, %r9d #136.34
- seto %r9b #136.34
- clc #137.31
- adcx %r11, %r9 #137.31
- movl %ebp, %r11d #138.31
- adox %ebp, %r11d #138.31
- adox %r14, %rbx #138.31
- adox %r13, %rdi #139.34
- mulx 136(%rsp), %r13, %r11 #144.36[spill]
- adox %r12, %r8 #140.34
- mulx 160(%rsp), %r12, %rbx #145.36[spill]
- adox %r10, %rsi #141.34
- movl %ebp, %r10d #142.34
- adox %r9, %rax #142.34
- seto %r10b #142.34
- clc #148.34
- adcx %r12, %r11 #148.34
- mulx 152(%rsp), %r14, %r12 #146.36[spill]
- adcx %r14, %rbx #149.34
- mulx 144(%rsp), %r9, %r14 #147.36[spill]
- movl %ebp, %edx #151.31
- adcx %r9, %r12 #150.34
- movl %ebp, %r9d #150.34
- setb %r9b #150.34
- adox %ebp, %edx #151.31
- adox %r14, %r9 #151.31
- clc #152.34
- adcx %r13, %rdi #152.34
- movq $0xffffffff00000001, %r13 #159.36
- movq %rdi, %rdx #157.36
- adcx %r11, %r8 #153.34
- adcx %rbx, %rsi #154.34
- movl %ebp, %ebx #155.34
- adcx %r12, %rax #155.34
- mulx %rcx, %r14, %r12 #157.36
- setb %bl #155.34
- addl %r10d, %r15d #156.34
- cmpl %ebx, %ebp #156.34
- movq $0x0ffffffff, %r10 #158.36
- mulx %r10, %r10, %r11 #158.36
- adcx %r9, %r15 #156.34
- movl %ebp, %r9d #156.34
- mulx %r13, %r13, %rbx #159.36
- movl %ebp, %edx #160.34
- setb %r9b #156.34
- adox %ebp, %edx #160.34
- movl %ebp, %edx #162.34
- adox %r10, %r12 #160.34
- movl $0, %r10d #161.34
- adox %r10, %r11 #161.34
- adox %r10, %r13 #162.34
- seto %dl #162.34
- clc #163.31
- adcx %rbx, %rdx #163.31
- movl %ebp, %ebx #164.31
- adox %ebp, %ebx #164.31
- adox %r14, %rdi #164.31
- movl %ebp, %edi #168.34
- adox %r12, %r8 #165.34
- movq $0xffffffff00000001, %r12 #173.34
- adox %r11, %rsi #166.34
- movq $0x0ffffffff, %r11 #171.34
- adox %r13, %rax #167.34
- movq %rax, %rbx #172.34
- adox %rdx, %r15 #168.34
- movq %r15, %rdx #173.34
- seto %dil #168.34
- xorl %r14d, %r14d #168.34
- addl %edi, %r9d #174.31
- movq %r8, %rdi #170.34
- subq %rcx, %rdi #170.34
- movq %rsi, %rcx #171.34
- sbbq %r11, %rcx #171.34
- sbbq %r10, %rbx #172.34
- sbbq %r12, %rdx #173.34
- setb %r14b #173.34
- cmpl %r14d, %ebp #174.31
- sbbq %r10, %r9 #174.31
- setb %bpl #174.31
- movl $1, %r10d #174.31
- testq %rbp, %rbp #18.0
- cmovnz %r15, %rdx #18.0
- movq $0xffffffff00000000, %r15 #18.0
- movq %rdx, 200(%rsp) #18.0[spill]
- testq %rbp, %rbp #18.0
- cmovnz %rax, %rbx #18.0
- movq %rbx, 208(%rsp) #18.0[spill]
- testq %rbp, %rbp #18.0
- cmovnz %rsi, %rcx #18.0
- movq %rcx, 224(%rsp) #18.0[spill]
- testq %rbp, %rbp #18.0
- cmovnz %r8, %rdi #18.0
- movq 112(%rsp), %r8 #18.0[spill]
- movq %rdi, 216(%rsp) #18.0[spill]
- movq %rdi, 56(%rsp) #219.35
- movq %rdx, 32(%rsp) #219.35
- movq $0x0fffffffe, %rdx #18.0
- movq %rbx, 40(%rsp) #219.35
- movq %rcx, 48(%rsp) #219.35
- movq 88(%r8), %rax #18.0
- movq 96(%rsp), %rdi #18.0[spill]
- testq %rdi, %rdi #18.0
- cmovnz %rax, %r10 #18.0
- movq $-1, %rax #18.0
- movq %r10, 88(%r8) #220.5
- movq 80(%r8), %rcx #18.0
- testq %rdi, %rdi #18.0
- cmovnz %rcx, %r15 #18.0
- movq %r15, 80(%r8) #221.5
- movq 72(%r8), %rsi #18.0
- testq %rdi, %rdi #18.0
- cmovnz %rsi, %rax #18.0
- movq %rax, 72(%r8) #222.5
- movq 64(%r8), %r9 #18.0
- testq %rdi, %rdi #18.0
- cmovnz %r9, %rdx #18.0
- movq 120(%rsp), %r11 #18.0[spill]
- movq %rdx, 64(%r8) #223.5
- movq 128(%rsp), %r12 #18.0[spill]
- movq 88(%r11), %r13 #18.0
- testq %r12, %r12 #18.0
- cmovnz %r10, %r13 #18.0
- movq %r13, 88(%r8) #18.0
- movq 80(%r11), %r10 #18.0
- testq %r12, %r12 #18.0
- cmovnz %r15, %r10 #18.0
- movq %r10, 80(%r8) #18.0
- movq 72(%r11), %r13 #18.0
- testq %r12, %r12 #18.0
- cmovnz %rax, %r13 #18.0
- movq %r13, 72(%r8) #18.0
- movq 64(%r11), %rcx #18.0
- testq %r12, %r12 #18.0
- cmovnz %rdx, %rcx #18.0
- movq %rcx, 64(%r8) #18.0
- vmovups %xmm0, (%rsp) #228.21
- vmovups %xmm0, 16(%rsp) #228.21
- movq 72(%rsp), %rcx #228.21[spill]
- movq 64(%rsp), %r8 #228.21[spill]
- xorl %r9d, %r9d #76.32
- movq 272(%rsp), %rdx #72.34[spill]
- xorl %r14d, %r14d #79.30
- movq %r8, 64(%rsp) #[spill]
- xorl %r8d, %r8d #76.32
- vpxor %xmm0, %xmm0, %xmm0 #229.21
- movq %rcx, 72(%rsp) #[spill]
- mulx 24(%r11), %r13, %r12 #72.34
- mulx 16(%r11), %r10, %rcx #73.34
- adcx %r10, %r12 #76.32
- movl %r9d, %r10d #79.30
- mulx 8(%r11), %rsi, %rdi #74.34
- adcx %rsi, %rcx #77.32
- movq $-1, %rsi #80.34
- mulx (%r11), %rax, %r15 #75.34
- movq %r13, %rdx #80.34
- adcx %rax, %rdi #78.32
- movq $0x0ffffffff, %rax #81.34
- mulx %rsi, %rbp, %rbx #80.34
- setb %r8b #78.32
- adox %r9d, %r14d #79.30
- adox %r15, %r8 #79.30
- movq $0xffffffff00000001, %r15 #82.34
- mulx %rax, %r14, %rax #81.34
- seto %r10b #79.30
- clc #83.32
- mulx %r15, %rsi, %r10 #82.34
- movl %r9d, %r15d #86.30
- adcx %r14, %rbx #83.32
- movl $0, %r14d #84.32
- movq 264(%rsp), %rdx #92.34[spill]
- adcx %r14, %rax #84.32
- adcx %r14, %rsi #85.32
- movl %r9d, %r14d #85.32
- setb %r14b #85.32
- adox %r9d, %r15d #86.30
- adox %r10, %r14 #86.30
- clc #87.30
- movl %r9d, %r10d #91.32
- adcx %rbp, %r13 #87.30
- mulx 16(%r11), %r13, %rbp #93.34
- adcx %rbx, %r12 #88.32
- adcx %rax, %rcx #89.32
- mulx 24(%r11), %rbx, %rax #92.34
- adcx %rsi, %rdi #90.32
- adcx %r14, %r8 #91.32
- mulx 8(%r11), %r15, %r14 #94.34
- mulx (%r11), %rdx, %rsi #95.34
- movl %r9d, %r11d #96.32
- setb %r10b #91.32
- adox %r9d, %r11d #96.32
- adox %r13, %rax #96.32
- movl %r9d, %r13d #98.32
- adox %r15, %rbp #97.32
- movl %r9d, %r15d #100.34
- adox %rdx, %r14 #98.32
- seto %r13b #98.32
- clc #99.30
- adcx %rsi, %r13 #99.30
- adox %r9d, %r15d #100.34
- movl %r9d, %esi #104.34
- adox %rbx, %r12 #100.34
- movq $0x0ffffffff, %rbx #106.36
- movq %r12, %rdx #105.36
- adox %rax, %rcx #101.34
- movq $-1, %rax #105.36
- adox %rbp, %rdi #102.34
- mulx %rax, %r11, %rbp #105.36
- adox %r14, %r8 #103.34
- movl $0, %r14d #109.34
- mulx %rbx, %rbx, %rax #106.36
- adox %r13, %r10 #104.34
- movq $0xffffffff00000001, %r13 #107.36
- seto %sil #104.34
- clc #108.34
- adcx %rbx, %rbp #108.34
- mulx %r13, %r15, %rbx #107.36
- movl %r9d, %r13d #110.34
- adcx %r14, %rax #109.34
- movq 256(%rsp), %rdx #118.36[spill]
- adcx %r14, %r15 #110.34
- movl %r9d, %r14d #111.31
- setb %r13b #110.34
- adox %r9d, %r14d #111.31
- adox %rbx, %r13 #111.31
- movl %r9d, %ebx #111.31
- seto %bl #111.31
- clc #112.31
- adcx %r11, %r12 #112.31
- adcx %rbp, %rcx #113.34
- movl %r9d, %ebp #116.34
- adcx %rax, %rdi #114.34
- adcx %r15, %r8 #115.34
- movq 120(%rsp), %r15 #118.36[spill]
- adcx %r13, %r10 #116.34
- mulx 16(%r15), %rax, %r12 #119.36
- setb %bpl #116.34
- movl %ebp, 80(%rsp) #116.34[spill]
- mulx 24(%r15), %r13, %rbp #118.36
- mulx 8(%r15), %r11, %r14 #120.36
- mulx (%r15), %rdx, %rbx #121.36
- movl %r9d, %r15d #122.34
- adox %r9d, %r15d #122.34
- adox %rax, %rbp #122.34
- movl %r9d, %eax #124.34
- adox %r11, %r12 #123.34
- adox %rdx, %r14 #124.34
- seto %al #124.34
- clc #125.31
- adcx %rbx, %rax #125.31
- movl %r9d, %ebx #126.34
- adox %r9d, %ebx #126.34
- movq $0x0ffffffff, %r11 #132.36
- adox %r13, %rcx #126.34
- movq %rcx, %rdx #131.36
- adox %rbp, %rdi #127.34
- movq $0xffffffff00000001, %rbp #133.36
- mulx %r11, %r11, %r13 #132.36
- adox %r12, %r8 #128.34
- movl %r9d, %r12d #129.34
- adox %r14, %r10 #129.34
- seto %r12b #129.34
- xorl %ebx, %ebx #129.34
- addl 80(%rsp), %esi #130.34[spill]
- cmpl %r12d, %r9d #130.34
- mulx %rbp, %rbp, %r12 #133.36
- adcx %rax, %rsi #130.34
- movq $-1, %rax #131.36
- mulx %rax, %r15, %r14 #131.36
- movl %r9d, %edx #134.34
- setb %bl #130.34
- adox %r9d, %edx #134.34
- movq 248(%rsp), %rdx #144.36[spill]
- adox %r11, %r14 #134.34
- movl $0, %r11d #135.34
- adox %r11, %r13 #135.34
- adox %r11, %rbp #136.34
- movl %r9d, %r11d #136.34
- seto %r11b #136.34
- clc #137.31
- adcx %r12, %r11 #137.31
- movl %r9d, %r12d #138.31
- adox %r9d, %r12d #138.31
- adox %r15, %rcx #138.31
- movq 120(%rsp), %r15 #144.36[spill]
- adox %r14, %rdi #139.34
- adox %r13, %r8 #140.34
- mulx 24(%r15), %r14, %r13 #144.36
- adox %rbp, %r10 #141.34
- movl %r9d, %ebp #142.34
- adox %r11, %rsi #142.34
- mulx 16(%r15), %rcx, %r11 #145.36
- seto %bpl #142.34
- clc #148.34
- adcx %rcx, %r13 #148.34
- mulx 8(%r15), %rcx, %r12 #146.36
- adcx %rcx, %r11 #149.34
- mulx (%r15), %r15, %rcx #147.36
- movl %r9d, %edx #151.31
- adcx %r15, %r12 #150.34
- movl %r9d, %r15d #150.34
- setb %r15b #150.34
- adox %r9d, %edx #151.31
- adox %rcx, %r15 #151.31
- clc #152.34
- adcx %r14, %rdi #152.34
- movq $0x0ffffffff, %r14 #158.36
- movq %rdi, %rdx #157.36
- adcx %r13, %r8 #153.34
- adcx %r11, %r10 #154.34
- movl %r9d, %r11d #155.34
- adcx %r12, %rsi #155.34
- mulx %rax, %r13, %r12 #157.36
- setb %r11b #155.34
- addl %ebp, %ebx #156.34
- xorl %ebp, %ebp #156.34
- cmpl %r11d, %r9d #156.34
- mulx %r14, %rcx, %r11 #158.36
- movq $0xffffffff00000001, %r14 #159.36
- adcx %r15, %rbx #156.34
- mulx %r14, %r14, %r15 #159.36
- movl %r9d, %edx #160.34
- setb %bpl #156.34
- adox %r9d, %edx #160.34
- movl %r9d, %edx #162.34
- adox %rcx, %r12 #160.34
- movl $0, %ecx #161.34
- adox %rcx, %r11 #161.34
- adox %rcx, %r14 #162.34
- seto %dl #162.34
- clc #163.31
- adcx %r15, %rdx #163.31
- movl %r9d, %r15d #164.31
- adox %r9d, %r15d #164.31
- adox %r13, %rdi #164.31
- movl %r9d, %edi #168.34
- adox %r12, %r8 #165.34
- adox %r11, %r10 #166.34
- movq $0x0ffffffff, %r11 #171.34
- adox %r14, %rsi #167.34
- adox %rdx, %rbx #168.34
- movq %r8, %rdx #170.34
- movq %rbx, %r13 #173.34
- seto %dil #168.34
- xorl %r12d, %r12d #168.34
- addl %edi, %ebp #174.31
- subq %rax, %rdx #170.34
- movq %r10, %rax #171.34
- movq $0xffffffff00000001, %rdi #173.34
- sbbq %r11, %rax #171.34
- movq %rsi, %r11 #172.34
- sbbq %rcx, %r11 #172.34
- sbbq %rdi, %r13 #173.34
- setb %r12b #173.34
- cmpl %r12d, %r9d #174.31
- sbbq %rcx, %rbp #174.31
- setb %r9b #174.31
- testq %r9, %r9 #18.0
- cmovnz %rbx, %r13 #18.0
- movq %r13, 136(%rsp) #18.0[spill]
- testq %r9, %r9 #18.0
- cmovnz %rsi, %r11 #18.0
- testq %r9, %r9 #18.0
- cmovnz %r10, %rax #18.0
- testq %r9, %r9 #18.0
- cmovnz %r8, %rdx #18.0
- movq %r13, (%rsp) #228.35
- movq %r11, 8(%rsp) #228.35
- movq %rax, 16(%rsp) #228.35
- movq %rdx, 24(%rsp) #228.35
- vmovups %xmm0, 32(%rsp) #229.21
- vmovups %xmm0, 48(%rsp) #229.21
- movq 72(%rsp), %rcx #229.21[spill]
- movq 64(%rsp), %r8 #229.21[spill]
- movq %r13, %r9 #36.32
- movq %rdx, %r12 #33.32
- movq %rax, %r13 #34.32
- xorl %esi, %esi #33.32
- xorl %r10d, %r10d #33.32
- movq %r11, %r14 #35.32
- adcx %rdx, %r12 #33.32
- vpxor %xmm0, %xmm0, %xmm0 #230.20
- movq %r12, %r10 #37.32
- movq $0x0ffffffff, %rbx #38.32
- adcx %rax, %r13 #34.32
- movq $0xffffffff00000001, %r15 #40.32
- adcx %r11, %r14 #35.32
- adcx %r9, %r9 #36.32
- setb %sil #36.32
- movq $-1, %rdi #36.32
- xorl %ebp, %ebp #36.32
- subq %rdi, %r10 #37.32
- movq %r13, %rdi #38.32
- sbbq %rbx, %rdi #38.32
- movq %r14, %rbx #39.32
- sbbq %rbp, %rbx #39.32
- movq %r9, %rbp #40.32
- sbbq %r15, %rbp #40.32
- movl $0, %r15d #41.30
- sbbq %r15, %rsi #41.30
- movl $0, %esi #41.30
- setb %sil #41.30
- testq %rsi, %rsi #18.0
- cmovnz %r9, %rbp #18.0
- testq %rsi, %rsi #18.0
- cmovnz %r14, %rbx #18.0
- testq %rsi, %rsi #18.0
- cmovnz %r13, %rdi #18.0
- testq %rsi, %rsi #18.0
- cmovnz %r12, %r10 #18.0
- movq %rbp, 32(%rsp) #229.35
- movq %rbx, 40(%rsp) #229.35
- movq %rdi, 48(%rsp) #229.35
- movq %r10, 56(%rsp) #229.35
- vmovups %xmm0, 64(%rsp) #230.20
- vmovups %xmm0, 80(%rsp) #230.20
- movq 240(%rsp), %rsi #53.32[spill]
- xorl %r15d, %r15d #53.32
- subq %r10, %rsi #53.32
- movl %r15d, %r10d #56.32
- sbbq %rdi, %rcx #54.32
- movq $0xffffffff00000001, %r13 #64.30
- movq 232(%rsp), %rdi #55.32[spill]
- sbbq %rbx, %rdi #55.32
- vpxor %xmm0, %xmm0, %xmm0 #240.21
- sbbq %rbp, %r8 #56.32
- setb %r10b #56.32
- xorl %r14d, %r14d #56.32
- xorl %r12d, %r12d #56.32
- movq $-1, %rbp #56.32
- testq %r10, %r10 #18.0
- cmovnz %rbp, %r14 #18.0
- xorl %r10d, %r10d #59.32
- xorl %ebx, %ebx #59.32
- movl %r14d, %r9d #61.32
- adox %r14, %rsi #59.32
- movq %rsi, 88(%rsp) #230.34
- adox %r9, %rcx #61.32
- movq %rcx, 80(%rsp) #230.34
- adox %r12, %rdi #62.32
- movq %rdi, 72(%rsp) #230.34
- seto %r10b #62.32
- xorl %ebx, %ebx #62.32
- andq %r13, %r14 #64.30
- cmpl %r10d, %r15d #64.30
- adcx %r14, %r8 #64.30
- xorl %r10d, %r10d #64.30
- movq %r8, 64(%rsp) #230.34
- subq 216(%rsp), %rsi #53.32[spill]
- sbbq 224(%rsp), %rcx #54.32[spill]
- sbbq 208(%rsp), %rdi #55.32[spill]
- sbbq 200(%rsp), %r8 #56.32[spill]
- setb %r10b #56.32
- testq %r10, %r10 #18.0
- cmovnz %rbp, %rbx #18.0
- xorl %r10d, %r10d #59.32
- movl %ebx, %r10d #61.32
- adox %rbx, %rsi #59.32
- adox %r10, %rcx #61.32
- movq 112(%rsp), %r10 #66.1[spill]
- adox %r12, %rdi #62.32
- movl %r15d, %r12d #62.32
- movq %rdi, 8(%r10) #66.1
- seto %r12b #62.32
- andq %rbx, %r13 #64.30
- cmpl %r12d, %r15d #64.30
- movq 104(%rsp), %r12 #18.0[spill]
- adcx %r13, %r8 #64.30
- movq %rcx, 16(%r10) #67.1
- movq %rsi, 24(%r10) #68.1
- movq %r8, (%r10) #65.1
- movq 24(%r12), %r9 #18.0
- movq 96(%rsp), %r13 #18.0[spill]
- testq %r13, %r13 #18.0
- cmovnz %rsi, %r9 #18.0
- movq %r9, 24(%r10) #232.5
- movq 16(%r12), %rbx #18.0
- testq %r13, %r13 #18.0
- cmovnz %rcx, %rbx #18.0
- movq %rbx, 16(%r10) #233.5
- movq 8(%r12), %rbp #18.0
- testq %r13, %r13 #18.0
- cmovnz %rdi, %rbp #18.0
- movq %rbp, 8(%r10) #234.5
- movq (%r12), %rcx #18.0
- testq %r13, %r13 #18.0
- cmovnz %r8, %rcx #18.0
- movq 120(%rsp), %rsi #18.0[spill]
- movq %rcx, (%r10) #235.5
- movq 128(%rsp), %rdi #18.0[spill]
- movq 24(%rsi), %r8 #18.0
- testq %rdi, %rdi #18.0
- cmovnz %r9, %r8 #18.0
- movq %r8, 24(%r10) #236.5
- movq %r8, 144(%rsp) #18.0[spill]
- movq 16(%rsi), %r9 #18.0
- testq %rdi, %rdi #18.0
- cmovnz %rbx, %r9 #18.0
- movq %r9, 16(%r10) #237.5
- movq %r9, 152(%rsp) #18.0[spill]
- movq 8(%rsi), %rbx #18.0
- testq %rdi, %rdi #18.0
- cmovnz %rbp, %rbx #18.0
- movq %rbx, 8(%r10) #238.5
- movq %rbx, 160(%rsp) #18.0[spill]
- movq (%rsi), %rbp #18.0
- testq %rdi, %rdi #18.0
- cmovnz %rcx, %rbp #18.0
- movq %rbp, 248(%rsp) #18.0[spill]
- movq %rbp, (%r10) #239.5
- vmovups %xmm0, (%rsp) #240.21
- vmovups %xmm0, 16(%rsp) #240.21
- movq %rsi, %rbp #72.34
- xorl %r8d, %r8d #76.32
- movq %rdx, 88(%rsp) #[spill]
- xorl %r9d, %r9d #76.32
- movq 216(%rsp), %rdx #72.34[spill]
- movq %rax, 232(%rsp) #[spill]
- mulx 56(%rbp), %rax, %rdi #72.34
- movq $0x0ffffffff, %r13 #81.34
- mulx 48(%rbp), %rbx, %r10 #73.34
- movq $0xffffffff00000001, %r14 #82.34
- adox %rbx, %rdi #76.32
- vpxor %xmm0, %xmm0, %xmm0 #241.21
- movq %r11, 80(%rsp) #[spill]
- mulx 40(%rbp), %rcx, %r11 #74.34
- adox %rcx, %r10 #77.32
- mulx 32(%rbp), %rsi, %r12 #75.34
- movq %rax, %rdx #80.34
- adox %rsi, %r11 #78.32
- movq $-1, %rsi #80.34
- seto %r9b #78.32
- clc #79.30
- adcx %r12, %r9 #79.30
- mulx %r13, %r12, %rcx #81.34
- mulx %rsi, %r15, %rbx #80.34
- mulx %r14, %r14, %r13 #82.34
- movl %r8d, %edx #83.32
- adox %r8d, %edx #83.32
- movl %r8d, %edx #85.32
- adox %r12, %rbx #83.32
- movl $0, %r12d #84.32
- adox %r12, %rcx #84.32
- adox %r12, %r14 #85.32
- seto %dl #85.32
- clc #86.30
- adcx %r13, %rdx #86.30
- movl %r8d, %r13d #87.30
- adox %r8d, %r13d #87.30
- adox %r15, %rax #87.30
- adox %rbx, %rdi #88.32
- movl %r8d, %ebx #91.32
- adox %rcx, %r10 #89.32
- adox %r14, %r11 #90.32
- adox %rdx, %r9 #91.32
- movq 224(%rsp), %rdx #92.34[spill]
- seto %bl #91.32
- clc #96.32
- mulx 56(%rbp), %r15, %r14 #92.34
- mulx 48(%rbp), %rcx, %r13 #93.34
- adcx %rcx, %r14 #96.32
- mulx 40(%rbp), %rax, %rcx #94.34
- adcx %rax, %r13 #97.32
- mulx 32(%rbp), %rax, %rbp #95.34
- movl %r8d, %edx #99.30
- adcx %rax, %rcx #98.32
- movl %r8d, %eax #98.32
- setb %al #98.32
- adox %r8d, %edx #99.30
- adox %rbp, %rax #99.30
- movl %r8d, %ebp #99.30
- seto %bpl #99.30
- clc #100.34
- adcx %r15, %rdi #100.34
- movq %rdi, %rdx #105.36
- adcx %r14, %r10 #101.34
- movq $0xffffffff00000001, %r14 #107.36
- adcx %r13, %r11 #102.34
- mulx %r14, %r13, %r14 #107.36
- adcx %rcx, %r9 #103.34
- movl %r8d, %ecx #104.34
- adcx %rax, %rbx #104.34
- mulx %rsi, %rax, %rbp #105.36
- movq $0x0ffffffff, %rsi #106.36
- mulx %rsi, %r15, %rsi #106.36
- movl %r8d, %edx #108.34
- setb %cl #104.34
- adox %r8d, %edx #108.34
- movq 208(%rsp), %rdx #118.36[spill]
- adox %r15, %rbp #108.34
- movl %r8d, %r15d #110.34
- adox %r12, %rsi #109.34
- adox %r12, %r13 #110.34
- seto %r15b #110.34
- clc #111.31
- adcx %r14, %r15 #111.31
- movl %r8d, %r14d #112.31
- adox %r8d, %r14d #112.31
- adox %rax, %rdi #112.31
- movl %r8d, %edi #116.34
- adox %rbp, %r10 #113.34
- adox %rsi, %r11 #114.34
- adox %r13, %r9 #115.34
- movq 120(%rsp), %r13 #118.36[spill]
- adox %r15, %rbx #116.34
- mulx 56(%r13), %rax, %rbp #118.36
- seto %dil #116.34
- clc #122.34
- mulx 48(%r13), %rsi, %r15 #119.36
- adcx %rsi, %rbp #122.34
- mulx 40(%r13), %r14, %rsi #120.36
- adcx %r14, %r15 #123.34
- mulx 32(%r13), %r13, %r14 #121.36
- movl %r8d, %edx #125.31
- adcx %r13, %rsi #124.34
- movl %r8d, %r13d #124.34
- setb %r13b #124.34
- adox %r8d, %edx #125.31
- adox %r14, %r13 #125.31
- movl %r8d, %r14d #125.31
- seto %r14b #125.31
- clc #126.34
- adcx %rax, %r10 #126.34
- movl %r8d, %eax #129.34
- movq %r10, %rdx #131.36
- adcx %rbp, %r11 #127.34
- movq $0x0ffffffff, %rbp #132.36
- mulx %rbp, %rbp, %r14 #132.36
- adcx %r15, %r9 #128.34
- adcx %rsi, %rbx #129.34
- movq $0xffffffff00000001, %rsi #133.36
- mulx %rsi, %rsi, %r15 #133.36
- setb %al #129.34
- addl %edi, %ecx #130.34
- movq $-1, %rdi #130.34
- cmpl %eax, %r8d #130.34
- movl %r8d, %eax #130.34
- adcx %r13, %rcx #130.34
- mulx %rdi, %rdi, %r13 #131.36
- movl %r8d, %edx #134.34
- setb %al #130.34
- adox %r8d, %edx #134.34
- movq 200(%rsp), %rdx #144.36[spill]
- adox %rbp, %r13 #134.34
- movl %r8d, %ebp #136.34
- adox %r12, %r14 #135.34
- adox %r12, %rsi #136.34
- seto %bpl #136.34
- clc #137.31
- adcx %r15, %rbp #137.31
- movl %r8d, %r15d #138.31
- adox %r8d, %r15d #138.31
- adox %rdi, %r10 #138.31
- movl %r8d, %r10d #142.34
- adox %r13, %r11 #139.34
- adox %r14, %r9 #140.34
- adox %rsi, %rbx #141.34
- movq 120(%rsp), %rsi #144.36[spill]
- adox %rbp, %rcx #142.34
- mulx 56(%rsi), %rdi, %r13 #144.36
- seto %r10b #142.34
- clc #148.34
- mulx 48(%rsi), %r14, %rbp #145.36
- adcx %r14, %r13 #148.34
- mulx 40(%rsi), %r15, %r14 #146.36
- adcx %r15, %rbp #149.34
- mulx 32(%rsi), %rsi, %r15 #147.36
- movl %r8d, %edx #151.31
- adcx %rsi, %r14 #150.34
- movl %r8d, %esi #150.34
- setb %sil #150.34
- adox %r8d, %edx #151.31
- adox %r15, %rsi #151.31
- movl %r8d, %r15d #151.31
- seto %r15b #151.31
- clc #152.34
- adcx %rdi, %r11 #152.34
- movq %r11, %rdx #157.36
- adcx %r13, %r9 #153.34
- movl %r8d, %r13d #155.34
- adcx %rbp, %rbx #154.34
- movq $0x0ffffffff, %rbp #158.36
- mulx %rbp, %rbp, %r15 #158.36
- adcx %r14, %rcx #155.34
- setb %r13b #155.34
- xorl %edi, %edi #155.34
- addl %r10d, %eax #156.34
- movq $-1, %r10 #156.34
- cmpl %r13d, %r8d #156.34
- movq $0xffffffff00000001, %r13 #159.36
- adcx %rsi, %rax #156.34
- mulx %r10, %r10, %rsi #157.36
- mulx %r13, %r13, %r14 #159.36
- movl %r8d, %edx #160.34
- setb %dil #156.34
- adox %r8d, %edx #160.34
- adox %rbp, %rsi #160.34
- movl %r8d, %ebp #162.34
- adox %r12, %r15 #161.34
- adox %r12, %r13 #162.34
- seto %bpl #162.34
- clc #163.31
- adcx %r14, %rbp #163.31
- movl %r8d, %r14d #164.31
- adox %r8d, %r14d #164.31
- adox %r10, %r11 #164.31
- movq $0xffffffff00000001, %r10 #173.34
- movl %r8d, %r11d #168.34
- adox %rsi, %r9 #165.34
- movq $0x0ffffffff, %rsi #171.34
- movq %r9, %rdx #170.34
- adox %r15, %rbx #166.34
- adox %r13, %rcx #167.34
- adox %rbp, %rax #168.34
- movq %rax, %rbp #173.34
- seto %r11b #168.34
- xorl %r15d, %r15d #168.34
- addl %r11d, %edi #174.31
- movq $-1, %r11 #170.34
- subq %r11, %rdx #170.34
- movq %rbx, %r11 #171.34
- sbbq %rsi, %r11 #171.34
- movq %rcx, %rsi #172.34
- sbbq %r12, %rsi #172.34
- sbbq %r10, %rbp #173.34
- setb %r15b #173.34
- cmpl %r15d, %r8d #174.31
- sbbq %r12, %rdi #174.31
- setb %r8b #174.31
- testq %r8, %r8 #18.0
- cmovnz %rax, %rbp #18.0
- testq %r8, %r8 #18.0
- cmovnz %rcx, %rsi #18.0
- testq %r8, %r8 #18.0
- cmovnz %rbx, %r11 #18.0
- movq %r11, 72(%rsp) #18.0[spill]
- testq %r8, %r8 #18.0
- cmovnz %r9, %rdx #18.0
- movq %rdx, 64(%rsp) #18.0[spill]
- movq %rbp, (%rsp) #240.34
- movq %rsi, 8(%rsp) #240.34
- movq %r11, 16(%rsp) #240.34
- movq %rdx, 24(%rsp) #240.34
- vmovups %xmm0, 32(%rsp) #241.21
- vmovups %xmm0, 48(%rsp) #241.21
- movq 80(%rsp), %r11 #241.21[spill]
- movq 232(%rsp), %rax #241.21[spill]
- movq 88(%rsp), %rdx #241.21[spill]
- xorl %ebx, %ebx #53.32
- xorl %edi, %edi #53.32
- subq 144(%rsp), %rdx #53.32[spill]
- movq 136(%rsp), %rcx #56.32[spill]
- sbbq 152(%rsp), %rax #54.32[spill]
- sbbq 160(%rsp), %r11 #55.32[spill]
- movq $0xffffffff00000001, %r15 #64.30
- sbbq 248(%rsp), %rcx #56.32[spill]
- vpxor %xmm0, %xmm0, %xmm0 #242.21
- setb %dil #56.32
- movq $-1, %r8 #56.32
- xorl %r13d, %r13d #56.32
- xorl %r14d, %r14d #56.32
- testq %rdi, %rdi #18.0
- cmovnz %r8, %r13 #18.0
- xorl %r9d, %r9d #59.32
- movl %r13d, %r10d #61.32
- adcx %r13, %rdx #59.32
- movq %rdx, 56(%rsp) #241.34
- adcx %r10, %rax #61.32
- movq %rax, 48(%rsp) #241.34
- adcx %r12, %r11 #62.32
- movq %r11, 40(%rsp) #241.34
- setb %r14b #62.32
- andq %r13, %r15 #64.30
- cmpl %r14d, %ebx #64.30
- adcx %r15, %rcx #64.30
- movq %rcx, 136(%rsp) #64.30[spill]
- movq %rcx, 32(%rsp) #241.34
- vmovups %xmm0, (%rsp) #242.21
- vmovups %xmm0, 16(%rsp) #242.21
- movq %rsi, 32(%rsp) #[spill]
- movq $0x0ffffffff, %r13 #81.34
- xorl %esi, %esi #76.32
- movq $0xffffffff00000001, %r12 #82.34
- movq 168(%rsp), %r9 #72.34[spill]
- mulx 184(%rsp), %rdi, %r10 #73.34[spill]
- movq %rbp, 40(%rsp) #[spill]
- mulx %r9, %rbx, %rbp #72.34
- adox %rdi, %rbp #76.32
- movl %esi, %edi #78.32
- movq %r11, 80(%rsp) #[spill]
- mulx 176(%rsp), %r8, %r11 #74.34[spill]
- adox %r8, %r10 #77.32
- mulx 192(%rsp), %rcx, %r15 #75.34[spill]
- movq %rbx, %rdx #80.34
- adox %rcx, %r11 #78.32
- movq $-1, %rcx #80.34
- seto %dil #78.32
- clc #79.30
- adcx %r15, %rdi #79.30
- mulx %rcx, %r14, %r15 #80.34
- mulx %r13, %r8, %rcx #81.34
- mulx %r12, %r13, %r12 #82.34
- movl %esi, %edx #83.32
- adox %esi, %edx #83.32
- movl %esi, %edx #85.32
- adox %r8, %r15 #83.32
- movl $0, %r8d #84.32
- adox %r8, %rcx #84.32
- adox %r8, %r13 #85.32
- seto %dl #85.32
- clc #86.30
- adcx %r12, %rdx #86.30
- movl %esi, %r12d #87.30
- adox %esi, %r12d #87.30
- adox %r14, %rbx #87.30
- adox %r15, %rbp #88.32
- adox %rcx, %r10 #89.32
- movl %esi, %ecx #91.32
- adox %r13, %r11 #90.32
- adox %rdx, %rdi #91.32
- movq %rax, %rdx #92.34
- mulx 184(%rsp), %r15, %r13 #93.34[spill]
- seto %cl #91.32
- clc #96.32
- mulx %r9, %rbx, %r14 #92.34
- adcx %r15, %r14 #96.32
- mulx 176(%rsp), %r15, %r12 #94.34[spill]
- adcx %r15, %r13 #97.32
- mulx 192(%rsp), %r15, %rax #95.34[spill]
- movl %esi, %edx #99.30
- adcx %r15, %r12 #98.32
- movl %esi, %r15d #98.32
- setb %r15b #98.32
- adox %esi, %edx #99.30
- adox %rax, %r15 #99.30
- clc #100.34
- movq $0x0ffffffff, %rax #106.36
- adcx %rbx, %rbp #100.34
- movl %esi, %ebx #104.34
- movq %rbp, %rdx #105.36
- adcx %r14, %r10 #101.34
- movq $-1, %r14 #105.36
- adcx %r13, %r11 #102.34
- mulx %rax, %r13, %rax #106.36
- adcx %r12, %rdi #103.34
- adcx %r15, %rcx #104.34
- setb %bl #104.34
- movl %ebx, 48(%rsp) #104.34[spill]
- mulx %r14, %r15, %rbx #105.36
- movq $0xffffffff00000001, %r14 #107.36
- mulx %r14, %r14, %r12 #107.36
- movl %esi, %edx #108.34
- adox %esi, %edx #108.34
- movq 80(%rsp), %rdx #118.36[spill]
- adox %r13, %rbx #108.34
- movl %esi, %r13d #110.34
- adox %r8, %rax #109.34
- adox %r8, %r14 #110.34
- seto %r13b #110.34
- clc #111.31
- adcx %r12, %r13 #111.31
- movl %esi, %r12d #112.31
- adox %esi, %r12d #112.31
- movl %esi, %r12d #116.34
- adox %r15, %rbp #112.31
- adox %rbx, %r10 #113.34
- adox %rax, %r11 #114.34
- adox %r14, %rdi #115.34
- mulx 184(%rsp), %rbx, %r14 #119.36[spill]
- adox %r13, %rcx #116.34
- mulx %r9, %r13, %rbp #118.36
- seto %r12b #116.34
- clc #122.34
- adcx %rbx, %rbp #122.34
- mulx 176(%rsp), %r15, %rbx #120.36[spill]
- adcx %r15, %r14 #123.34
- mulx 192(%rsp), %r15, %rax #121.36[spill]
- movl %esi, %edx #125.31
- adcx %r15, %rbx #124.34
- movl %esi, %r15d #124.34
- setb %r15b #124.34
- adox %esi, %edx #125.31
- adox %rax, %r15 #125.31
- clc #126.34
- movl 48(%rsp), %eax #130.34[spill]
- adcx %r13, %r10 #126.34
- movq $0x0ffffffff, %r13 #132.36
- movq %r10, %rdx #131.36
- adcx %rbp, %r11 #127.34
- movl %esi, %ebp #129.34
- adcx %r14, %rdi #128.34
- movq $0xffffffff00000001, %r14 #133.36
- adcx %rbx, %rcx #129.34
- setb %bpl #129.34
- xorl %ebx, %ebx #129.34
- addl %r12d, %eax #130.34
- cmpl %ebp, %esi #130.34
- movq $-1, %rbp #131.36
- mulx %r14, %r14, %r12 #133.36
- adcx %r15, %rax #130.34
- setb %bl #130.34
- movl %ebx, 56(%rsp) #130.34[spill]
- mulx %rbp, %r15, %rbx #131.36
- mulx %r13, %r13, %rbp #132.36
- movl %esi, %edx #134.34
- adox %esi, %edx #134.34
- movq 136(%rsp), %rdx #144.36[spill]
- adox %r13, %rbx #134.34
- movl %esi, %r13d #136.34
- adox %r8, %rbp #135.34
- adox %r8, %r14 #136.34
- seto %r13b #136.34
- clc #137.31
- adcx %r12, %r13 #137.31
- movl %esi, %r12d #138.31
- adox %esi, %r12d #138.31
- movl %esi, %r12d #151.31
- adox %r15, %r10 #138.31
- adox %rbx, %r11 #139.34
- mulx 184(%rsp), %r10, %rbx #145.36[spill]
- adox %rbp, %rdi #140.34
- adox %r14, %rcx #141.34
- movl %esi, %r14d #142.34
- adox %r13, %rax #142.34
- mulx %r9, %r9, %r13 #144.36
- seto %r14b #142.34
- clc #148.34
- adcx %r10, %r13 #148.34
- mulx 176(%rsp), %r15, %r10 #146.36[spill]
- adcx %r15, %rbx #149.34
- mulx 192(%rsp), %r15, %rbp #147.36[spill]
- adcx %r15, %r10 #150.34
- movl %esi, %r15d #150.34
- setb %r15b #150.34
- adox %esi, %r12d #151.31
- adox %rbp, %r15 #151.31
- clc #152.34
- movl 56(%rsp), %ebp #156.34[spill]
- adcx %r9, %r11 #152.34
- movl %esi, %r9d #155.34
- movq %r11, %rdx #157.36
- adcx %r13, %rdi #153.34
- movq $0xffffffff00000001, %r13 #159.36
- mulx %r13, %r13, %r12 #159.36
- adcx %rbx, %rcx #154.34
- adcx %r10, %rax #155.34
- movq $-1, %r10 #157.36
- mulx %r10, %rbx, %r10 #157.36
- setb %r9b #155.34
- addl %r14d, %ebp #156.34
- cmpl %r9d, %esi #156.34
- movq $0x0ffffffff, %r9 #158.36
- mulx %r9, %r14, %r9 #158.36
- movl %esi, %edx #160.34
- adcx %r15, %rbp #156.34
- movl %esi, %r15d #156.34
- setb %r15b #156.34
- adox %esi, %edx #160.34
- adox %r14, %r10 #160.34
- movl %esi, %r14d #162.34
- adox %r8, %r9 #161.34
- adox %r8, %r13 #162.34
- seto %r14b #162.34
- clc #163.31
- adcx %r12, %r14 #163.31
- movl %esi, %r12d #164.31
- adox %esi, %r12d #164.31
- adox %rbx, %r11 #164.31
- movl %esi, %r11d #168.34
- adox %r10, %rdi #165.34
- movq $0x0ffffffff, %r10 #171.34
- adox %r9, %rcx #166.34
- movq %rdi, %r9 #170.34
- movq %rcx, %rbx #171.34
- adox %r13, %rax #167.34
- adox %r14, %rbp #168.34
- seto %r11b #168.34
- movq $-1, %rdx #168.34
- xorl %r12d, %r12d #168.34
- xorl %r13d, %r13d #168.34
- addl %r11d, %r15d #174.31
- subq %rdx, %r9 #170.34
- movq %rbp, %rdx #173.34
- movq $0xffffffff00000001, %r11 #173.34
- sbbq %r10, %rbx #171.34
- movq %rax, %r10 #172.34
- sbbq %r8, %r10 #172.34
- sbbq %r11, %rdx #173.34
- setb %r13b #173.34
- cmpl %r13d, %esi #174.31
- sbbq %r8, %r15 #174.31
- setb %r12b #174.31
- testq %r12, %r12 #18.0
- cmovnz %rbp, %rdx #18.0
- xorl %ebp, %ebp #18.0
- testq %r12, %r12 #18.0
- cmovnz %rax, %r10 #18.0
- testq %r12, %r12 #18.0
- cmovnz %rcx, %rbx #18.0
- xorl %ecx, %ecx #56.32
- testq %r12, %r12 #18.0
- cmovnz %rdi, %r9 #18.0
- movq $-1, %rdi #18.0
- movq %r9, 24(%rsp) #242.34
- subq 64(%rsp), %r9 #53.32[spill]
- movq %rbx, 16(%rsp) #242.34
- sbbq 72(%rsp), %rbx #54.32[spill]
- movq %r10, 8(%rsp) #242.34
- sbbq 32(%rsp), %r10 #55.32[spill]
- movq %rdx, (%rsp) #242.34
- sbbq 40(%rsp), %rdx #56.32[spill]
- setb %cl #56.32
- testq %rcx, %rcx #18.0
- cmovnz %rdi, %rbp #18.0
- xorl %eax, %eax #59.32
- movl %ebp, %r14d #61.32
- adcx %rbp, %r9 #59.32
- movq 96(%rsp), %rcx #18.0[spill]
- adcx %r14, %rbx #61.32
- adcx %r8, %r10 #62.32
- movq 112(%rsp), %r8 #66.1[spill]
- setb %al #62.32
- andq %rbp, %r11 #64.30
- cmpl %eax, %esi #64.30
- movq 104(%rsp), %rax #18.0[spill]
- adcx %r11, %rdx #64.30
- movq %r10, 40(%r8) #66.1
- movq %rbx, 48(%r8) #67.1
- movq %r9, 56(%r8) #68.1
- movq %rdx, 32(%r8) #65.1
- movq 56(%rax), %rbp #18.0
- testq %rcx, %rcx #18.0
- cmovnz %r9, %rbp #18.0
- movq %rbp, 56(%r8) #244.5
- movq 48(%rax), %rdi #18.0
- testq %rcx, %rcx #18.0
- cmovnz %rbx, %rdi #18.0
- movq %rdi, 48(%r8) #245.5
- movq 40(%rax), %rbx #18.0
- testq %rcx, %rcx #18.0
- cmovnz %r10, %rbx #18.0
- movq %rbx, 40(%r8) #246.5
- movq 32(%rax), %r12 #18.0
- testq %rcx, %rcx #18.0
- cmovnz %rdx, %r12 #18.0
- movq 120(%rsp), %rsi #18.0[spill]
- movq %r12, 32(%r8) #247.5
- movq 128(%rsp), %r11 #18.0[spill]
- movq 56(%rsi), %rdx #18.0
- testq %r11, %r11 #18.0
- cmovnz %rbp, %rdx #18.0
- movq %rdx, 56(%r8) #18.0
- movq 48(%rsi), %r10 #18.0
- testq %r11, %r11 #18.0
- cmovnz %rdi, %r10 #18.0
- movq %r10, 48(%r8) #18.0
- movq 40(%rsi), %r9 #18.0
- testq %r11, %r11 #18.0
- cmovnz %rbx, %r9 #18.0
- movq %r9, 40(%r8) #18.0
- movq 32(%rsi), %r13 #18.0
- testq %r11, %r11 #18.0
- cmovnz %r12, %r13 #18.0
- movq %r13, 32(%r8) #18.0
- addq $280, %rsp #252.1
- popq %rbp #252.1
- popq %rbx #252.1
- popq %r15 #252.1
- popq %r14 #252.1
- popq %r13 #252.1
- popq %r12 #252.1
- ret #252.1
diff --git a/src/Specific/NISTP256/AMD64/icc/measurements.txt b/src/Specific/NISTP256/AMD64/icc/measurements.txt
deleted file mode 100644
index 644cdf5e5..000000000
--- a/src/Specific/NISTP256/AMD64/icc/measurements.txt
+++ /dev/null
@@ -1,7 +0,0 @@
- =*2.30/3.51 jgross-Leopard-WS-noht-notb-nops-haswell 5.4.0 6888031+
- =*3.06/3.51 jgross-Leopard-WS-ht-tb-nops-haswell 5.4.0 6888031+
-1081 =907*3.10/2.60 ashryn-ht-tb-ac-broadwell 7.1.1 a7ce099b+
-1111 =1156*2.50/2.60 ashryn-ht-notb-ac-broadwell 7.1.1 d9506354+
-1111 =1156*2.50/2.60 ashryn-ht-notb-noac-broadwell 7.1.1 d9506354+
-1112 =1112*2.60/2.60 ashryn-noht-notb-ac-broadwell 7.1.1 e014b3ac+
-1140 ashryn-noht-notb-noac-broadwell 2.60ghz 7.1.1 cac291e0
diff --git a/src/Specific/NISTP256/AMD64/measurements.txt b/src/Specific/NISTP256/AMD64/measurements.txt
deleted file mode 100644
index a11d9c099..000000000
--- a/src/Specific/NISTP256/AMD64/measurements.txt
+++ /dev/null
@@ -1,4 +0,0 @@
-1752 =1470*3.10/2.60 ashryn-ht-tb-ac-broadwell 7.1.1 a7ce099b+
-1808 =1808*2.60/2.60 ashryn-noht-notb-ac-broadwell 7.1.1 e014b3ac+
-4006 =4018*3.50/3.51 jgross-Leopard-WS-ht-tb-nops-haswell 5.4.0 6888031+
-4510 =4523*3.50/3.51 jgross-Leopard-WS-noht-notb-nops-haswell 5.4.0 6888031+
diff --git a/src/Specific/NISTP256/AMD64/p256.h b/src/Specific/NISTP256/AMD64/p256.h
deleted file mode 100644
index 4cf271dfd..000000000
--- a/src/Specific/NISTP256/AMD64/p256.h
+++ /dev/null
@@ -1,5 +0,0 @@
-#include <stdint.h>
-void p256_jacobian_add_affine(
- uint64_t P3[12],
- uint64_t P1[12],
- uint64_t P2[8]);
diff --git a/src/Specific/NISTP256/AMD64/p256_jacobian_add_affine.c b/src/Specific/NISTP256/AMD64/p256_jacobian_add_affine.c
deleted file mode 100644
index 033d64b39..000000000
--- a/src/Specific/NISTP256/AMD64/p256_jacobian_add_affine.c
+++ /dev/null
@@ -1,82 +0,0 @@
-#include <stdint.h>
-#include <stdbool.h>
-#include <x86intrin.h>
-#include "liblow.h"
-#include "p256.h"
-#include "feadd.h"
-#include "fesub.h"
-#include "feopp.h"
-#include "femul.h"
-#include "fenz.h"
-
-#undef force_inline
-#define force_inline __attribute__((always_inline))
-
-static inline void force_inline fesquare(uint64_t o[4], uint64_t a, uint64_t b, uint64_t c, uint64_t d) {
- femul(o,
- a, b, c, d,
- a, b, c, d);
-}
-
-static uint64_t Rmodm[4] = {0xfffffffe, 0xffffffffffffffff, 0xffffffff00000000, 0x0000000000000001};
-
-void p256_jacobian_add_affine(
- uint64_t P3[12],
- uint64_t P1[12],
- uint64_t P2[8]
-) {
- uint64_t* X1 = P1;
- uint64_t* Y1 = P1+4;
- uint64_t* Z1 = P1+8;
- uint64_t* X2 = P2;
- uint64_t* Y2 = P2+4;
- uint64_t* X3 = P3;
- uint64_t* Y3 = P3+4;
- uint64_t* Z3 = P3+8;
- uint64_t ZZ[4] = {0}; fesquare(ZZ, Z1[0], Z1[1], Z1[2], Z1[3]);
- uint64_t P1nz = 0; fenz(&P1nz, Z1[0], Z1[1], Z1[2], Z1[3]);
- uint64_t U2[4] = {0}; femul(U2, ZZ[0], ZZ[1], ZZ[2], ZZ[3], X2[0], X2[1], X2[2], X2[3]);
- uint64_t X2nz = 0; fenz(&X2nz, X2[0], X2[1], X2[2], X2[3]);
- uint64_t ZZZ[4] = {0}; femul(ZZZ, ZZ[0], ZZ[1], ZZ[2], ZZ[3], Z1[0], Z1[1], Z1[2], Z1[3]);
- uint64_t H[4] = {0}; fesub(H, U2[0], U2[1], U2[2], U2[3], X1[0], X1[1], X1[2], X1[3]);
- femul(Z3, Z1[0], Z1[1], Z1[2], Z1[3], H[0], H[1], H[2], H[3]);
- uint64_t Y2nz = 0; fenz(&Y2nz, Y2[0], Y2[1], Y2[2], Y2[3]);
- uint64_t P2nz = X2nz | Y2nz;
- uint64_t S2[4] = {0}; femul(S2, ZZZ[0], ZZZ[1], ZZZ[2], ZZZ[3], Y2[0], Y2[1], Y2[2], Y2[3]);
- uint64_t R[4] = {0}; fesub(R, S2[0], S2[1], S2[2], S2[3], Y1[0], Y1[1], Y1[2], Y1[3]);
- uint64_t HH[4] = {0}; fesquare(HH, H[0], H[1], H[2], H[3]);
- uint64_t RR[4] = {0}; fesquare(RR, R[0], R[1], R[2], R[3]);
- uint64_t HHH[4] = {0}; femul(HHH, HH[0], HH[1], HH[2], HH[3], H[0], H[1], H[2], H[3]);
- Z3[3] = cmovznz(P1nz, Rmodm[3], Z3[3]);
- Z3[2] = cmovznz(P1nz, Rmodm[2], Z3[2]);
- Z3[1] = cmovznz(P1nz, Rmodm[1], Z3[1]);
- Z3[0] = cmovznz(P1nz, Rmodm[0], Z3[0]);
- Z3[3] = cmovznz(P2nz, Z1[3], Z3[3]);
- Z3[2] = cmovznz(P2nz, Z1[2], Z3[2]);
- Z3[1] = cmovznz(P2nz, Z1[1], Z3[1]);
- Z3[0] = cmovznz(P2nz, Z1[0], Z3[0]);
- uint64_t HHX[4] = {0}; femul(HHX, HH[0], HH[1], HH[2], HH[3], X1[0], X1[1], X1[2], X1[3]);
- uint64_t T10[4] = {0}; feadd(T10, HHX[0], HHX[1], HHX[2], HHX[3], HHX[0], HHX[1], HHX[2], HHX[3]);
- uint64_t E4[4] = {0}; fesub(E4, RR[0], RR[1], RR[2], RR[3], T10[0], T10[1], T10[2], T10[3]);
- fesub(X3, E4[0], E4[1], E4[2], E4[3], HHH[0], HHH[1], HHH[2], HHH[3]);
- X3[3] = cmovznz(P1nz, X2[3], X3[3]);
- X3[2] = cmovznz(P1nz, X2[2], X3[2]);
- X3[1] = cmovznz(P1nz, X2[1], X3[1]);
- X3[0] = cmovznz(P1nz, X2[0], X3[0]);
- X3[3] = cmovznz(P2nz, X1[3], X3[3]);
- X3[2] = cmovznz(P2nz, X1[2], X3[2]);
- X3[1] = cmovznz(P2nz, X1[1], X3[1]);
- X3[0] = cmovznz(P2nz, X1[0], X3[0]);
- uint64_t T13[4] = {0}; femul(T13, HHH[0], HHH[1], HHH[2], HHH[3], Y1[0], Y1[1], Y1[2], Y1[3]);
- uint64_t T11[4] = {0}; fesub(T11, HHX[0], HHX[1], HHX[2], HHX[3], X3[0], X3[1], X3[2], X3[3]);
- uint64_t T12[4] = {0}; femul(T12, T11[0], T11[1], T11[2], T11[3], R[0], R[1], R[2], R[3]);
- fesub(Y3, T12[0], T12[1], T12[2], T12[3], T13[0], T13[1], T13[2], T13[3]);
- Y3[3] = cmovznz(P1nz, Y2[3], Y3[3]);
- Y3[2] = cmovznz(P1nz, Y2[2], Y3[2]);
- Y3[1] = cmovznz(P1nz, Y2[1], Y3[1]);
- Y3[0] = cmovznz(P1nz, Y2[0], Y3[0]);
- Y3[3] = cmovznz(P2nz, Y1[3], Y3[3]);
- Y3[2] = cmovznz(P2nz, Y1[2], Y3[2]);
- Y3[1] = cmovznz(P2nz, Y1[1], Y3[1]);
- Y3[0] = cmovznz(P2nz, Y1[0], Y3[0]);
-}
diff --git a/src/Specific/NISTP256/AMD64/py_interpreter.sh b/src/Specific/NISTP256/AMD64/py_interpreter.sh
deleted file mode 100755
index 878d3b028..000000000
--- a/src/Specific/NISTP256/AMD64/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256-2**224+2**192+2**96-1' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/NISTP256/AMD64/test/feadd_test.c b/src/Specific/NISTP256/AMD64/test/feadd_test.c
deleted file mode 100644
index 3cdd1fd60..000000000
--- a/src/Specific/NISTP256/AMD64/test/feadd_test.c
+++ /dev/null
@@ -1,46 +0,0 @@
-#include <stdint.h>
-#include <inttypes.h>
-#include <stdio.h>
-#include "feadd.h"
-
-static int check(uint64_t out[4], uint64_t ref[4]) {
- return out[0] == ref[0] && out[1] == ref[1] && out[2] == ref[2] && out[3] == ref[3];
-}
-
-int main() {
- {
- uint64_t out[4] = {0};
- uint64_t in1[4] = {0, 0, 0, 1};
- uint64_t in2[4] = {0, 0, 0, 1};
- uint64_t ref[4] = {0, 0, 0, 2};
- feadd(out, in1[0], in1[1], in1[2], in1[3], in2[0], in2[1], in2[2], in2[3]);
- if (!check(out, ref)) return 1;
- }
- {
- uint64_t out[4] = {0};
- uint64_t in1[4] = {0, 0, 0, 0};
- uint64_t in2[4] = {0, 0, 0, 0};
- uint64_t ref[4] = {0, 0, 0, 0};
- feadd(out, in1[0], in1[1], in1[2], in1[3], in2[0], in2[1], in2[2], in2[3]);
- if (!check(out, ref)) return 2;
- }
- {
- uint64_t out[4] = {0};
- uint64_t in1[4] = {0xffffffff00000001, 0x0000000000000000, 0x00000000ffffffff, 0xfffffffffffffffe}; // p256-1
- uint64_t in2[4] = {0, 0, 0, 1};
- uint64_t ref[4] = {0, 0, 0, 0};
- feadd(out, in1[0], in1[1], in1[2], in1[3], in2[0], in2[1], in2[2], in2[3]);
- if (!check(out, ref)) return 3;
- }
- {
- uint64_t out[4] = {0};
- uint64_t in1[4] = {0xffffffff00000001, 0x0000000000000000, 0x00000000ffffffff, 0xfffffffffffffffe}; // p256-1
- uint64_t in2[4] = {0, 0, 0, 7};
- uint64_t ref[4] = {0, 0, 0, 6};
- feadd(out, in1[0], in1[1], in1[2], in1[3], in2[0], in2[1], in2[2], in2[3]);
- if (!check(out, ref)) return 4;
- }
-
- //printf("0x%016" PRIx64 " 0x%016" PRIx64 " 0x%016" PRIx64 " 0x%016" PRIx64 "\n", out[0], out[1], out[2], out[3]);
- //printf("((((((0x%016" PRIx64 "<<64)+ 0x%016" PRIx64 ")<<64)+ 0x%016" PRIx64 ")<<64)+ 0x%016" PRIx64 ")\n", out[0], out[1], out[2], out[3]);
-}
diff --git a/src/Specific/NISTP256/AMD64/test/femul_test.c b/src/Specific/NISTP256/AMD64/test/femul_test.c
deleted file mode 100644
index 33c4472f9..000000000
--- a/src/Specific/NISTP256/AMD64/test/femul_test.c
+++ /dev/null
@@ -1,55 +0,0 @@
-#include <stdint.h>
-#include <inttypes.h>
-#include <stdio.h>
-#include "femul.h"
-
-// all arrays big-endian
-static uint64_t Rmodm[4] = {0xfffffffe, 0xffffffffffffffff, 0xffffffff00000000, 0x0000000000000001};
-
-int main() {
- uint64_t out[4] = {0};
- if ( femul(out,
- Rmodm[0], Rmodm[1], Rmodm[2], Rmodm[3],
- Rmodm[0], Rmodm[1], Rmodm[2], Rmodm[3]),
- ! (out[0] == Rmodm[0]
- && out[1] == Rmodm[1]
- && out[2] == Rmodm[2]
- && out[3] == Rmodm[3]
- )) { return 1; }
- if ( femul(out,
- 0, 0, 0, 0,
- Rmodm[0], Rmodm[1], Rmodm[2], Rmodm[3]),
- ! (out[0] == 0
- && out[1] == 0
- && out[2] == 0
- && out[3] == 0
- )) { return 2; }
- if ( femul(out,
- 0, 0, 0, 1,
- 0, 0, 0, 1),
- ! (out[0] == 0xfffffffe00000003 // R^-1
- && out[1] == 0xfffffffd00000002
- && out[2] == 0x00000001fffffffe
- && out[3] == 0x0000000300000000
- )) { return 3; }
- if ( femul(out,
- 0, 0, 0, 1,
- 0x4fffffffd, 0xfffffffffffffffe, 0xfffffffbffffffff, 0x0000000000000003), // R^2
- ! (out[0] == Rmodm[0]
- && out[1] == Rmodm[1]
- && out[2] == Rmodm[2]
- && out[3] == Rmodm[3]
- )) { return 4; }
- if ( femul(out,
- 0, 0, 0, 0,
- 2141451, Rmodm[2], -3251252, 2134),
- ! (out[0] == 0
- && out[1] == 0
- && out[2] == 0
- && out[3] == 0
- )) { return 5; }
-
- //printf("0x%016" PRIx64 " 0x%016" PRIx64 " 0x%016" PRIx64 " 0x%016" PRIx64 "\n", out[0], out[1], out[2], out[3]);
- //printf("((((((0x%016" PRIx64 "<<64)+ 0x%016" PRIx64 ")<<64)+ 0x%016" PRIx64 ")<<64)+ 0x%016" PRIx64 ")\n", out[0], out[1], out[2], out[3]);
- return 0;
-}
diff --git a/src/Specific/NISTP256/AMD64/test/p256_test.c b/src/Specific/NISTP256/AMD64/test/p256_test.c
deleted file mode 100644
index 4e138f8ae..000000000
--- a/src/Specific/NISTP256/AMD64/test/p256_test.c
+++ /dev/null
@@ -1,1918 +0,0 @@
-
-#include <string.h>
-#include <stdint.h>
-#include "p256.h"
-
-int main() {
-
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x18905f76a53755c6L, 0x79fb732b77622510L, 0x75ba95fc5fedb601L, 0x79e730d418a9143cL, 0x8571ff1825885d85L, 0xd2e88688dd21f325L, 0x8b4ab8e4ba19e45cL, 0xddf25357ce95560aL, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x0L, 0x0L, 0x0L, 0x0L, 0x2f89ce3fdb43e874L, 0x59442cd71969c97dL, 0x2f5574d8d91f145dL, 0x2922031e34ef4181L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xb6c57b7b47ebaa2aL, 0x2e01a1c78240f1e9L, 0xdffebf812925c6e9L, 0x2205025c823b79d4L, 0xb914f2abe5ecd016L, 0x9d807c66950c0b1eL, 0xb145f8d2f7aa88a5L, 0xc3cbe3c3fd449c2fL, 0xe76fa0885ac8aa3aL, 0x86048cd4889ddaefL, 0x8a456a04a01249feL, 0x8618cf2be756ebc3L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 1;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x18905f76a53755c6L, 0x79fb732b77622510L, 0x75ba95fc5fedb601L, 0x79e730d418a9143cL, 0x8571ff1825885d85L, 0xd2e88688dd21f325L, 0x8b4ab8e4ba19e45cL, 0xddf25357ce95560aL, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x0L, 0x0L, 0x0L, 0x0L, 0xd07631bf24bc178cL, 0xa6bbd328e6963682L, 0xd0aa8b2826e0eba2L, 0xd6ddfce1cb10be7eL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x26986032eae57400L, 0x8ca22de38df6eb0eL, 0x1161d3c87958b751L, 0x6503563390e10442L, 0x70b81487b6e6f344L, 0xccb3cca2b4c1fd02L, 0xbfde22211cb4e8e0L, 0x394bf032ee10a6edL, 0xe76fa0885ac8aa3aL, 0x86048cd4889ddaefL, 0x8a456a04a01249feL, 0x8618cf2be756ebc3L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 2;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x62417dda94dd5719L, 0xe7edccaddd889441L, 0xd6ea57f17fb6d805L, 0xe79cc35062a450f0L, 0x2b8ff8c52c42ec2aL, 0x97443446e90f992cL, 0x5a55c721d0cf22e6L, 0xef929abe74aab054L, 0x1fffffffdL, 0xffffffffffffffffL, 0xfffffffe00000000L, 0x2L};
-uint64_t A[8] = {0x0L, 0x0L, 0x0L, 0x0L, 0x2f89ce3fdb43e874L, 0x59442cd71969c97dL, 0x2f5574d8d91f145dL, 0x2922031e34ef4181L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xb15edefefaea8a5eL, 0x806871e0903c7a77L, 0xffafe01d4971ba48L, 0x814097208ede752dL, 0x29e5593dd9a02bc9L, 0xf8cd2a18163d62L, 0x8bf1a47d55114b87L, 0x97c787fa89385f72L, 0x3b7d0449d64551cdL, 0x302466a444eed77cL, 0x522b501e00924ff4L, 0x30c6795f3ab75e1fL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 3;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x62417dda94dd5719L, 0xe7edccaddd889441L, 0xd6ea57f17fb6d805L, 0xe79cc35062a450f0L, 0x2b8ff8c52c42ec2aL, 0x97443446e90f992cL, 0x5a55c721d0cf22e6L, 0xef929abe74aab054L, 0x1fffffffdL, 0xffffffffffffffffL, 0xfffffffe00000000L, 0x2L};
-uint64_t A[8] = {0x0L, 0x0L, 0x0L, 0x0L, 0xd07631bf24bc178cL, 0xa6bbd328e6963682L, 0xd0aa8b2826e0eba2L, 0xd6ddfce1cb10be7eL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xa6180cc3b95d001aL, 0x288b78e37dbac384L, 0x5874f215562dd459L, 0x40d58ce438411089L, 0x7029104ecde688b8L, 0x6799456983fa057fL, 0xbc44415869d1c072L, 0x97e065dc214ddae1L, 0x3b7d0449d64551cdL, 0x302466a444eed77cL, 0x522b501e00924ff4L, 0x30c6795f3ab75e1fL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 4;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x0L, 0x0L, 0x0L, 0x0L, 0x7c4e71ffda1f43a1L, 0xca2166b8cb4e4be9L, 0x7aaba6c5c8f8a2e9L, 0x491018f1a77a0c09L, 0x1fffffffdL, 0xffffffffffffffffL, 0xfffffffe00000000L, 0x2L};
-uint64_t A[8] = {0x0L, 0x0L, 0x0L, 0x0L, 0x2f89ce3fdb43e874L, 0x59442cd71969c97dL, 0x2f5574d8d91f145dL, 0x2922031e34ef4181L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 5;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x0L, 0x0L, 0x0L, 0x0L, 0xd07631bf24bc178cL, 0xa6bbd328e6963682L, 0xd0aa8b2826e0eba2L, 0xd6ddfce1cb10be7eL, 0xfffffffe00000002L, 0x0L, 0x1ffffffffL, 0xfffffffffffffffeL};
-uint64_t A[8] = {0x0L, 0x0L, 0x0L, 0x0L, 0x2f89ce3fdb43e874L, 0x59442cd71969c97dL, 0x2f5574d8d91f145dL, 0x2922031e34ef4181L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 6;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x0L, 0x0L, 0x0L, 0x0L, 0xd07631bf24bc178cL, 0xa6bbd328e6963682L, 0xd0aa8b2826e0eba2L, 0xd6ddfce1cb10be7eL, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x18905f76a53755c6L, 0x79fb732b77622510L, 0x75ba95fc5fedb601L, 0x79e730d418a9143cL, 0x8571ff1825885d85L, 0xd2e88688dd21f325L, 0x8b4ab8e4ba19e45cL, 0xddf25357ce95560aL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x26986032eae57400L, 0x8ca22de38df6eb0eL, 0x1161d3c87958b751L, 0x6503563390e10442L, 0x8f47eb7749190cbcL, 0x334c335d4b3e02fdL, 0x4021dddfe34b171fL, 0xc6b40fcd11ef5912L, 0x18905f76a53755c6L, 0x79fb732b77622510L, 0x75ba95fc5fedb601L, 0x79e730d418a9143cL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 7;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x0L, 0x0L, 0x0L, 0x0L, 0x2f89ce3fdb43e874L, 0x59442cd71969c97dL, 0x2f5574d8d91f145dL, 0x2922031e34ef4181L, 0xfffffffe00000002L, 0x0L, 0x1ffffffffL, 0xfffffffffffffffeL};
-uint64_t A[8] = {0x18905f76a53755c6L, 0x79fb732b77622510L, 0x75ba95fc5fedb601L, 0x79e730d418a9143cL, 0x8571ff1825885d85L, 0xd2e88688dd21f325L, 0x8b4ab8e4ba19e45cL, 0xddf25357ce95560aL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x26986032eae57400L, 0x8ca22de38df6eb0eL, 0x1161d3c87958b751L, 0x6503563390e10442L, 0x70b81487b6e6f344L, 0xccb3cca2b4c1fd02L, 0xbfde22211cb4e8e0L, 0x394bf032ee10a6edL, 0xe76fa0885ac8aa3aL, 0x86048cd4889ddaefL, 0x8a456a04a01249feL, 0x8618cf2be756ebc3L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 8;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x1eeb691fe11496dL, 0xffffffffffffffffL, 0xfe11496e00000000L, 0x1eeb692L, 0xf051a3410fae5d28L, 0x69L, 0xfae5d27ffffffffL, 0xffffff96f051a2d8L, 0x0L, 0x0L, 0x0L, 0x0L};
-uint64_t A[8] = {0x18905f76a53755c6L, 0x79fb732b77622510L, 0x75ba95fc5fedb601L, 0x79e730d418a9143cL, 0x8571ff1825885d85L, 0xd2e88688dd21f325L, 0x8b4ab8e4ba19e45cL, 0xddf25357ce95560aL};
-// maybe A nz, maybe neither
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x18905f76a53755c6L, 0x79fb732b77622510L, 0x75ba95fc5fedb601L, 0x79e730d418a9143cL, 0x8571ff1825885d85L, 0xd2e88688dd21f325L, 0x8b4ab8e4ba19e45cL, 0xddf25357ce95560aL, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 9;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x0L, 0x0L, 0x0L, 0x0L, 0x2f89ce3fdb43e874L, 0x59442cd71969c97dL, 0x2f5574d8d91f145dL, 0x2922031e34ef4181L, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L};
-// J nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x0L, 0x0L, 0x0L, 0x0L, 0x2f89ce3fdb43e874L, 0x59442cd71969c97dL, 0x2f5574d8d91f145dL, 0x2922031e34ef4181L, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 10;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x0L, 0x0L, 0x0L, 0x0L, 0xd07631bf24bc178cL, 0xa6bbd328e6963682L, 0xd0aa8b2826e0eba2L, 0xd6ddfce1cb10be7eL, 0xfffffffe00000002L, 0x0L, 0x1ffffffffL, 0xfffffffffffffffeL};
-uint64_t A[8] = {0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L};
-// J nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x0L, 0x0L, 0x0L, 0x0L, 0xd07631bf24bc178cL, 0xa6bbd328e6963682L, 0xd0aa8b2826e0eba2L, 0xd6ddfce1cb10be7eL, 0xfffffffe00000002L, 0x0L, 0x1ffffffffL, 0xfffffffffffffffeL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 11;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x18905f76a53755c6L, 0x79fb732b77622510L, 0x75ba95fc5fedb601L, 0x79e730d418a9143cL, 0x8571ff1825885d85L, 0xd2e88688dd21f325L, 0x8b4ab8e4ba19e45cL, 0xddf25357ce95560aL, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L};
-// J nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x18905f76a53755c6L, 0x79fb732b77622510L, 0x75ba95fc5fedb601L, 0x79e730d418a9143cL, 0x8571ff1825885d85L, 0xd2e88688dd21f325L, 0x8b4ab8e4ba19e45cL, 0xddf25357ce95560aL, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 12;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xfe545c282897c3fcL, 0xb8842277752c41acL, 0x68363aba25e1a16eL, 0xfea912baa5659ae8L, 0xf720ee256d12597bL, 0x85665e9be39508c1L, 0x5806244afba977c5L, 0x2d36e9e7dc4c696bL, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x1ba8b23c4e7b61dbL, 0x5c75422a3bfb505fL, 0x8392266f548267c2L, 0x1ab50760698fd966L, 0x7bd5f0f8bbc0113dL, 0x53a1e0762bce6c11L, 0x24a9b30477cbf81bL, 0xb03895250a03707dL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x909e6b5eedddaa00L, 0xed6dacaccc0c21cdL, 0x6f49946256f07daeL, 0x626899b2567abb5eL, 0x1ee00ce4102f10f3L, 0x1c27c8095829ff4eL, 0xd2b5d6a46ca5cc54L, 0x4ec8af5dbce3c97aL, 0x1d54561325e39ddfL, 0xa3f11fb2c6cf0eb3L, 0x1b5bebb62ea0c653L, 0x1c0bf4a5c42a3e7dL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 13;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x8a4e72b69918062eL, 0x19d16caaf24441fL, 0xa9191c3f62abc039L, 0xe03d9ea371d75d7aL, 0xf0a27802fc75540dL, 0x3357b1746c40b10eL, 0xd703d3761a3abce9L, 0x40a4962357c25793L, 0x51cafe8fae35016L, 0xffffffffffffffffL, 0xfae3501700000000L, 0x51cafe9L};
-uint64_t A[8] = {0x3355a9e2ed6f3d70L, 0xbb8ca626fa2e83a3L, 0x7633a743c1abf15fL, 0x62f6040fe8d14b9aL, 0x5482d45c245c0ed3L, 0xae880bfb66d033f9L, 0x15ecac2d10544c31L, 0xda782cbf9fd78f6dL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x89094a89b1ca2c32L, 0xfc95c491beb09f34L, 0xed641c5d8fcf4247L, 0x4a43fe0aec8740f6L, 0x2db70e5f72bd0bc3L, 0x33e3545e5a2a8160L, 0x7ff91f499094eee0L, 0xa5738b43f7fbf8cfL, 0x4a126112307e48fL, 0x6312ca49df162cfcL, 0xe9561c542f11749L, 0x34371c89fada1fa1L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 14;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xd252887a9c73dbbeL, 0x76a92c282bdf98aL, 0xecb37b59e9ce7739L, 0xb6b30b9312888ebdL, 0x35571219b5a90736L, 0x7b2667b3a652b683L, 0xe6a617a2438e5749L, 0xafde8d892dc6a267L, 0x11ffffffedL, 0xffffffffffffffffL, 0xffffffee00000000L, 0x12L};
-uint64_t A[8] = {0x633882d09d70b2fL, 0x751a305fb9992f1dL, 0x7e062c54bcd8ace8L, 0x52ebbfcdf7150d28L, 0xc9a8d89c7d00571eL, 0x6688e25bf90134ecL, 0xb8c44a8ed98d1f32L, 0x404354ed7f4ab63fL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x8d501b389d30d80cL, 0xce5b1b355c5bd487L, 0xfe76995f21e8f91bL, 0xa4772839503ddf47L, 0x79455c7e418c125bL, 0x6b5c7d79669a84ccL, 0x66ba1b42424d37d9L, 0x5738433a8b2b8c7fL, 0x7c28a9e72ad15d49L, 0x371fb30ef85dcc1aL, 0x58033d9db79eaa92L, 0x3212bbcd89f9ae74L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 15;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xb1a859fc16c815c9L, 0x3961fa381d4deebdL, 0x20ff6e31c49b7151L, 0x669195630ceab113L, 0x1c79a3f583d09f88L, 0xb1f73799092932caL, 0x962b66466f9c655L, 0x87c5624240d3a943L, 0x23ffffffdbfL, 0xffffffffffffffffL, 0xfffffdc000000000L, 0x240L};
-uint64_t A[8] = {0xfd10d4229c2a4473L, 0xd255f5c688011591L, 0x6168ae5f30b59dfaL, 0x6f939d68a2be35f5L, 0xc9594125c2f30c3dL, 0xfaa6fa91bc6665c6L, 0xc1cbfb07ec4e60e8L, 0x5f41d10cb649b4c6L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x3645fa3cb0530d73L, 0x1dc0d79b4caf0bebL, 0xb4a67397e2b9b540L, 0xdc354e678b1b0cL, 0x728270df643bcef5L, 0xf6d58cb76db7584eL, 0x2fea447f873d989L, 0xb872b51d19e3571bL, 0xaab2ec6069d44442L, 0x6cf22e17bca062d7L, 0xea4c52a11adff646L, 0x344d9fc195e82760L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 16;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xd81f96e2d7477c21L, 0x6314732f676c6e33L, 0x48de527d7fe4b8a8L, 0x502dbfefa7b219afL, 0x9154d6bc5d4f5d9eL, 0x95ef90ba825e9baL, 0xa07772416e286a06L, 0xb9ed4c3a74e2164dL, 0xdcfa691f230596dfL, 0xffffffffffffffffL, 0x230596e000000000L, 0xdcfa6920L};
-uint64_t A[8] = {0x316af5adbef1bf81L, 0x54fba1ffda268305L, 0xc880111a38792291L, 0xf2eb9417f1449b28L, 0x5238b7e0a70d7329L, 0xdca43f3c543f2e22L, 0x46c383c3194ad95L, 0x9b1496920dedc1cdL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xfce1374d8776fce4L, 0xd85cf3499c29e585L, 0x6381ae4ceac2c447L, 0x75d8bfce3f809fbaL, 0xc84d8601cfdad343L, 0x530e940cf4cb8ea2L, 0xefb4ce538637adfbL, 0xfffa4a98509411feL, 0x4c920237acca415cL, 0xd2ccfb0da7b7b4cdL, 0xb1aeaf131f14ede5L, 0x3fccc8897a3f8b4dL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 17;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xa6ba63c7c8b5c0b0L, 0xb3ea310874000a2eL, 0x195ffeb1984cbad7L, 0x4ec7cf559ee298e6L, 0x4d0ff374432cf77aL, 0x6d81b1299bb5dac6L, 0x46c19178a8adbb4cL, 0x6daa6bcbfd2d9deL, 0x14640fffeb9befL, 0xffffffffffffffffL, 0xffeb9bf000000000L, 0x146410L};
-uint64_t A[8] = {0xfe9ef0ba0cc4d4L, 0xf2ce50c53403e761L, 0x3840a9e7a9b65f5dL, 0x929ccb9306859ad6L, 0xd7c9ea848c225f0cL, 0xc2c3e0c892683433L, 0x17b15172c1bc94f1L, 0x2eb749110972e929L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xa11f421a0aa2fa24L, 0x8794ad527f1bd633L, 0x30974127d9b6769cL, 0x2128f6be0b3fdcdcL, 0x27ff13a84ac74c13L, 0xd54e9b4ffe5eefdeL, 0xd82701574b8e5ed0L, 0x793c8b3bfd67d38fL, 0x77ef7afdc21d01a2L, 0x51a0014c2ab6950dL, 0xa9277150a4fdf6e1L, 0x965e3920b3916e01L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 18;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x763a43482fc568dL, 0x95c376329182cb26L, 0x39c4800f0518eedL, 0xb8d3d9319ff91fe5L, 0x90876a0140959b70L, 0x92bf7c8f91230de0L, 0xac98b930824e8197L, 0x707c04d5383e76baL, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0xb7b80a3b92f33f24L, 0xebb8c6eda66109f4L, 0x3d4e414d5ae125d0L, 0xfe4bac5d667b36a5L, 0xf91df8af155ce79cL, 0x36c0fc867a2482aaL, 0xc67961734171152fL, 0x7ed40f8766c8520dL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xcaa0e562f417b8eeL, 0xc8b7887d12a2b468L, 0x160ad5e9a131d920L, 0x783a45d33176bc5L, 0x994f62e42b883739L, 0x9310a4823b3fa6aeL, 0xf4108f586b21b7c3L, 0xeb1c603ec15bb203L, 0xb05466070ff6e897L, 0x55f550bb14de3eceL, 0x39b1f94c6a8f96e3L, 0x4577d32bc68216c0L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 19;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x8ac01d2acd15f5b6L, 0x284aaa1660485c4fL, 0xaf2809b89f07febeL, 0x963d038b93adff33L, 0x1d7ea29846ad73d6L, 0xf080df11d11982e4L, 0x70e8904ccda0cec5L, 0xfa3baabec14c73e0L, 0x29e2e3ffd33014f0L, 0xfffffffffd12f8f0L, 0xd33014f100000000L, 0x2ed070f2ccfeb0fL};
-uint64_t A[8] = {0x793b80a73e500e39L, 0x3dc70d8c41726d51L, 0x327ba268cf29cc43L, 0x41754325b5ecc5aaL, 0xb9669b32568b37c8L, 0xbd6c661371ea683L, 0x73b527cb90a6ae1aL, 0xaa899fce49edefb5L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x7f984b83b2c9a9f3L, 0xa68a503a9b752f47L, 0xa9b89d3f716df94fL, 0x8daad25b4c5f605dL, 0x98e536a1a18ceeb6L, 0xe92e1fae5f09ea4aL, 0x213ddb826bc6ff9cL, 0x9fa3874b7e8ac4feL, 0x41670011231e56c0L, 0x3c180b5dc84e89eaL, 0x5ad7b3455f616c50L, 0x2b355f517a31196cL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 20;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x3e017597744242b7L, 0x26e7308c19bb3268L, 0x8e69dd9e8e9f446fL, 0x663d1527fa549689L, 0xb21f0cda6a435f8L, 0xd5bf83bdf2c37f00L, 0x841e3c16d60d8921L, 0x54b6097b4bcf70e1L, 0xe6a8ffff1956L, 0xffffffffffffffffL, 0xffff195700000000L, 0xe6a9L};
-uint64_t A[8] = {0xadfeeb8858cee75fL, 0xb39892a238929f1eL, 0xd5a7b62826fe4135L, 0xf19b7e5353944d6aL, 0x7d6929a823d46fd1L, 0x821afc9c9cdfd923L, 0xb00c038dd1f7bbf8L, 0xa1625858237504b2L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x72814dea2bb607acL, 0xb0e81e723a65ff52L, 0x46e7151c0bf71dbcL, 0x15a5773721921cb0L, 0xfadbca099dbdd660L, 0xad694562767ed43fL, 0x5d97ca7bcefbe633L, 0x3932bae601ee06d8L, 0x4aa3b9f27d9ca893L, 0xa64f55f03d64a5f3L, 0xeb4fa175970a2cf7L, 0xd0def64565dca3aaL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 21;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xc8403902470343adL, 0x1a1baaa76d8805bdL, 0xa7496529bbd803a0L, 0x6b34413077adc612L, 0x85efc7e941325cc2L, 0xa875f5ce529d75e3L, 0xb26d7fbb7d8c5b7L, 0x39f59f66175adff1L, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x984311822f72e228L, 0xcf7c32827d149166L, 0x6fa00b1fcb129716L, 0xc2ffababa18a27f7L, 0xeb8fb0bc65349b8cL, 0x96f12346df378f7eL, 0xe83b3b66e6a90e1aL, 0x3a5399fd2aa0179cL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x160b9710b213ae4bL, 0x5e2a7648137804f5L, 0x4bd966885f0cffbbL, 0x34fe61dc187decc4L, 0xc889e441306aee87L, 0x1de7675a17d5b89L, 0x2c57082cc7fa90c5L, 0x866154366e7507ffL, 0xd002d87ee86f9e7cL, 0xb56087db0f8c8ba8L, 0xc856a5f70f3a9376L, 0x57cb6a7b29dc61e4L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 22;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x2b46f080179b599fL, 0xd1cd2004ccc9769aL, 0xfe23852dad97e8cdL, 0xd773f16ec7400285L, 0xaadda1e58f084cabL, 0xaf3b27893af7d6c0L, 0xa3eb1163f9e7a029L, 0xe546d4e573bc27bbL, 0xf9ffffff05ffL, 0xffffffffffffffffL, 0xffff060000000000L, 0xfa00L};
-uint64_t A[8] = {0x1ac9b3b95c98837aL, 0x8d80cea9a6380e97L, 0x68b05abd2b4c70a9L, 0x1297113175774cf6L, 0xf9b38f9d5ef51755L, 0x5566e3f4088317ddL, 0x279b1cdeee4dfc85L, 0x58aecf8f412543b5L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x6ff45bccb4012894L, 0xc200b9977e86f17dL, 0xd75d67c7dde9d70dL, 0x34f41dda1345aef8L, 0x7efa0919cda678aL, 0xc939c760d3f1254cL, 0xe27f942035ecbabbL, 0xe191806e0747f9d9L, 0xe9296da499fa4185L, 0xc7b2eee7a099e45eL, 0x4cd1b6b448aec129L, 0x82fe6d36a91e0353L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 23;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x2f83a889ca881f6cL, 0x10b429a2811a47ebL, 0x2cd0bab9941a27e9L, 0xb7f1695a43020eecL, 0x4cb3c135b6f36034L, 0xdf4741a71b99ec5fL, 0x67f9ba802e45cbb1L, 0x2563c590f683e890L, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x75b1deedf1dd81cdL, 0xcdedb3ab8dbc1d6aL, 0x6dbc4191c033ef74L, 0x99e398a2a8ab239eL, 0xd3e74166fb4fadeeL, 0x2bc2d83bc7d27b02L, 0xae7a6c8895365a36L, 0x163852f12b5f7327L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x715e9430ca63dc41L, 0x9ae4d4f5f7c4a00L, 0x85502913179aafecL, 0x9437c3fc5b796d1cL, 0xc9578dcf8460aa56L, 0x243a13b67e118d00L, 0x644288a98c1650cL, 0x95cbbc26e2c30ba9L, 0x462e366427556261L, 0xbd398a090ca1d57fL, 0x40eb86d82c19c78aL, 0xe1f22f4865a914b2L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 24;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xd1eeb7e05bfb4d22L, 0x8099d95dd283ba59L, 0x16868e2d862bdc8aL, 0x979129d2337a31e2L, 0x104e224dee0d0328L, 0x1c53f8aa95e66a2dL, 0x4ec17a11fcbae82eL, 0xf1c417884005d5eeL, 0xfffffffefL, 0xffffffffffffffffL, 0xfffffff000000000L, 0x10L};
-uint64_t A[8] = {0x93dd30692eb231d1L, 0xa39f471f32cfa731L, 0x62f7ee7e271be610L, 0x24f77778117311eeL, 0xd42c2714ffcea877L, 0xcd80cbe14660ab67L, 0x47bd736b9e83ef82L, 0x76e3740442e49996L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x7e56b3bca64974e8L, 0x38c6ab5b335903abL, 0x18647aa9661a4dL, 0xa46f152766af8da4L, 0x7b5492fb46ea1838L, 0xa7ce291d5bf76726L, 0xade0c6674b3b48adL, 0xcf296fc89c56a314L, 0xb41b1e1563683ee1L, 0xead45d4fd237709eL, 0x167ef6695ba339a5L, 0xfe64e3f3f97bcb10L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 25;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x33ec6868f044b10cL, 0xac09c4ae65578ab9L, 0x85ceae7c4b68f103L, 0x871514560f664534L, 0xb16c4303c32f63c4L, 0xf909604f763f1574L, 0x5509d1285847d5efL, 0x6ac4832b3a8ec1f1L, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0xb5cffedf0790a013L, 0xf1ba0f6e25458e39L, 0x66d546ad56e03b9bL, 0x7ce0061255f79ecfL, 0x7c2da8ba0847c739L, 0xc641e310a7eb8838L, 0xf3cc871d693e2a73L, 0x16439c6cd3b5b4e4L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x1774f54b333b21a5L, 0x1accd45b972de084L, 0x942df1fadb5d0e50L, 0x4a7fba1ae4ee9783L, 0xfe76ff744045784cL, 0x79189c0565c270eaL, 0xc6cc512bc8ce913cL, 0xc5322a9365f47b75L, 0x81e39676174bef07L, 0x45b04abfbfee037fL, 0xe10698310b774a97L, 0xf5caf1bc4691599bL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 26;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x32aa2b76cc10d472L, 0x8a5e9c88a35d935dL, 0x1edbedf72772fb74L, 0x6fd4184e96fac200L, 0x594773459b8f8e03L, 0xec4eb2d82685a5cdL, 0x1bbafb5dcde461b4L, 0x5b22fd1e7c375cL, 0x4ce2ffffb31cL, 0xffffffffffffffffL, 0xffffb31d00000000L, 0x4ce3L};
-uint64_t A[8] = {0xff25a17d7870dc43L, 0x2882a3ad091ad8f4L, 0x86422227a32da1f4L, 0x5a90d00864bcd653L, 0x4879cd108c355101L, 0x8ded40b9d62f9fa3L, 0x2ecaba53bc0387efL, 0xafc51e23e464bb1cL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x56835da08b1640beL, 0x4515ba75f578f377L, 0x497b81fb8eb33dc5L, 0xe94e556823567e5bL, 0x16497afbd0c6d312L, 0x7ce042647cf5029dL, 0xbc94928d40a35e04L, 0x10a042fb5907d1b0L, 0xf73c27ba1cf59be3L, 0x27240f7bb34305bL, 0xbfa840c496a15375L, 0xffdd50769821a4f2L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 27;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x1851f9c63d860b69L, 0xdac11f445f82afb0L, 0x8687be821141749L, 0xa5e47c192244e059L, 0x64e16628fff2cfb2L, 0xad2d52d022fc29c1L, 0x12b3771785d7d300L, 0x56e333b03046dfc2L, 0x73db7fff8c247L, 0xffffffffffffffffL, 0xfff8c24800000000L, 0x73db8L};
-uint64_t A[8] = {0xb7b80a3b92f33f24L, 0xebb8c6eda66109f4L, 0x3d4e414d5ae125d0L, 0xfe4bac5d667b36a5L, 0xf91df8af155ce79cL, 0x36c0fc867a2482aaL, 0xc67961734171152fL, 0x7ed40f8766c8520dL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x878adaba9cd82f0dL, 0x66916fbb007e754dL, 0x81d388eee1d83613L, 0xba4d4745411d00fL, 0x8005824b86c8872dL, 0xadc6268814926434L, 0xc0cddc632b66d2eeL, 0xed9cac1cd009787L, 0xb9b9ef48ff68f53dL, 0x98db9601a2556d10L, 0x8e46c059f0128ef0L, 0x8e8b0308022ed1b1L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 28;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xd0288cb552b6fc3cL, 0xc5f4d6cd3ac77acdL, 0xa3a14e49b44f65a1L, 0xb4241cb13298b343L, 0x460d45ce51601f72L, 0xd667da379b3aa441L, 0xb675511e06bf9b4aL, 0xd5cc8c2f1c040abcL, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x47b8c90e0ec452b0L, 0x8691f46ed9af1fa9L, 0xda120f3433f2d27eL, 0x160837d249afa40L, 0xe0053424c4c03fc6L, 0xabd0d5874b2e52adL, 0xe28134da897595edL, 0xc9d2fe827d859fdcL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xac65c67cd65b03afL, 0xad63902955ce74efL, 0x3c40205247c6d58cL, 0x875931b4813d6d5fL, 0xf769614f0acc326aL, 0x531404c0d162fd7eL, 0x3c7f555e8e8f132fL, 0x7876431970cb11d7L, 0x77903c57bc0d5674L, 0xc09d1da19ee7a4dcL, 0x3670c0eb7fa36cdcL, 0x4d3c66cbf20246fcL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 29;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x1564370496fb8b1L, 0xc4b3691f14fa6e0cL, 0xce8fe0f30ecb3239L, 0xd785477a15edd4a6L, 0xee2eea470798bea6L, 0xa9d537cc1e80bc1cL, 0x6a1dbe7233846472L, 0x8ecf75faf1a21ba8L, 0x546d980fab9267eL, 0xffffffffffffffffL, 0xfab9267f00000000L, 0x546d981L};
-uint64_t A[8] = {0x81d4d67d5303aa9L, 0x55d6984e2ed8d949L, 0x9ea7ce6365f0934aL, 0x69b60cd9343b297aL, 0xa916a98dc09558fbL, 0x4a43bfd951bdba86L, 0x6c7cc30329ddb815L, 0xd6b16ee90d413600L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x81c4208de4a64582L, 0xfc280ac0dc29ce50L, 0x6d9744160c08c202L, 0x44d22daebc4873f7L, 0xbee686ab0c451cb0L, 0xef76b9d65f138311L, 0x4ea61f4fad951565L, 0xd0e16cbf64627fa6L, 0xc6ebd634da4f0df5L, 0xaddd26bb00e50898L, 0x28d0541518e1c6e8L, 0x517092d57caeff89L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 30;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x88a42ab51e710a07L, 0xea7008b5135a0378L, 0x79a0f3814d753391L, 0x555b95c4dcf2f0faL, 0xaf0c62c3d6b32facL, 0x60beb7b35c46def5L, 0x1a0e4e52fac0f79aL, 0xc86bdf45232f2a75L, 0x6bcc41e89433be15L, 0xfffffffffffffffeL, 0x9433be1600000000L, 0x16bcc41eaL};
-uint64_t A[8] = {0x633882d09d70b2fL, 0x751a305fb9992f1dL, 0x7e062c54bcd8ace8L, 0x52ebbfcdf7150d28L, 0xc9a8d89c7d00571eL, 0x6688e25bf90134ecL, 0xb8c44a8ed98d1f32L, 0x404354ed7f4ab63fL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xfe4e16af5c296e16L, 0x6af4ac5c42e49f03L, 0x6778bbf4f5ee25adL, 0x57c5c64b199b8083L, 0xd3840fbef698618dL, 0xd1799bc2593a62c7L, 0x201f70f594104ecfL, 0xd29ad64fa843651dL, 0x66b5221623ebc77cL, 0x2303af08094bdca6L, 0x1aeb09ccbf3b6cbfL, 0xd802308747486528L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 31;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x4c2bab1b8add53b7L, 0xcb9727eaa2d17c36L, 0x2100d5d3a8d063d1L, 0x69d44ed65c46aa8eL, 0xa062499846fb7a8bL, 0x6651f7017ce477f8L, 0x778afcd3a837ebeaL, 0xa084e90c15426704L, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x29c60f9061b2c396L, 0x8876c61e6c81ab4aL, 0xc7ec0daf4d390d9bL, 0xc8a74fa90760ad64L, 0x23e94a05535cebf3L, 0x18eff73a7322ab63L, 0xc340e0c9b0b00d4bL, 0xca5220c37408de5bL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x45d67dfec119f83aL, 0xfdef04d65e504726L, 0xebeae47929c3639cL, 0x681b6ea26cc36c0dL, 0x8a28ea05d4ce4ea4L, 0xbb84f823c77799cL, 0x9ace5d5e0ca0be34L, 0x4711001015537a38L, 0xdd9a6473d6d56fdfL, 0xbcdf9e33c9b02f14L, 0xa6eb37dca468a9caL, 0x5ed300d2ab1a02d5L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 32;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xd8d833b0863f2fc1L, 0xc4a77133c9152440L, 0xc711ea7c62fc87f0L, 0xf5bdd9372f5626f4L, 0x7c483dd4bd08dd5bL, 0x45787f29d43eb3c5L, 0xcbfcc8f14f83f3adL, 0xd905124b5330f08fL, 0x12167fffede97L, 0xffffffffffffffffL, 0xfffede9800000000L, 0x12168L};
-uint64_t A[8] = {0x254a4a3e09ba48fdL, 0xf5f9a498bf1bfdeaL, 0x7c18faa630900f7eL, 0x113542810b0284cdL, 0xe97fbab46827f334L, 0x5b7d6c595db8b18eL, 0x669025d6306e5844L, 0xee79ebb98c19a4cbL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x7f46d63eb388b8a6L, 0x75de54f97f06293bL, 0x4003e128d8baccf2L, 0x35b49df810b2349fL, 0xe04e711e4ab12797L, 0x7c9f675d686e6b94L, 0xf27dcd43f4fdcdc7L, 0xfa95af06ee330853L, 0x363031e12e83be97L, 0x13aea2b5fc43341L, 0xcc95926c2d56899aL, 0x6d143f2bf6845750L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 33;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xf2ce78da527b0e23L, 0xef4971c55d204279L, 0x2138ca7dc35846f5L, 0x10d3f742d32f4260L, 0xa196238134f62855L, 0x8023537a7dec4dc0L, 0xd26539b4d7066b9fL, 0xf6021f19f18408c0L, 0xea42b722155ca0aaL, 0xffffffffff9f57cdL, 0x155ca0ab00000000L, 0x60a832eaa35f55L};
-uint64_t A[8] = {0x2d0f1be2b5577cf9L, 0x8decdf26c01ce141L, 0x7e28a0d562d7881L, 0x8218884b2f38e1d6L, 0x707320391e7826faL, 0x36925b3cb704a1fcL, 0xe77da7d78929b20aL, 0x747c0826cd4f4e7bL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x6a9dfbecd7679955L, 0x892ef45bc53427cL, 0xe54f7f6918ae0f4aL, 0xd4ef4f868ecf07aaL, 0x6ad89678cf67facdL, 0x9bd59666e46695bcL, 0x99d9eba3029b8d6L, 0x9df444a2e1e7d989L, 0x2354365e92ee3dc3L, 0x9928aa37c1ad26fdL, 0xeb0c64b1c167314bL, 0x7fec8d2ab65e2af6L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 34;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xbbbe776c3b06382dL, 0x28dce0124cf06d93L, 0xf3e8a5a8d939d98cL, 0x39c5f53d7fd00690L, 0xab623d2c4121e279L, 0x590dc5a09768f923L, 0xebf4b2c8188d809fL, 0x8c61f46f48712a12L, 0xfffffffeffe65f00L, 0xffffffffffe65effL, 0xffe65f0100000000L, 0x19a1000019a0ffL};
-uint64_t A[8] = {0x863adcbfc3e11936L, 0x132997833c5875bdL, 0xc66fb8e48cec6857L, 0xb9ec70c15113985fL, 0x2dbe3b667dc96eebL, 0xcdc946093e60978eL, 0x17495e3dd74c9d3bL, 0x2babf31ff018f49cL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x4438fa949763708eL, 0x2ef6f6284035fdaeL, 0x2c7bc67e940f5dc8L, 0x372082bc46b0246fL, 0xcf1e152e93a26076L, 0x16ecdcf6cb6c254aL, 0x4b5806cc21bf1d43L, 0x5a611e223e99f8a3L, 0x77ace7f33b240738L, 0x145e9ef8eaba03e9L, 0x80634d76b1cbc3abL, 0x2be3dfbddb108ed8L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 35;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xc5d2767e2f1a0d67L, 0x50ea317973864c12L, 0x67d4c564f28528e1L, 0x8e7d5929caba6cfeL, 0xea7cbd62170c82ccL, 0x2f0b54596f0391afL, 0x48bd4d0808160d96L, 0x7393682056092b24L, 0xb3773e3f4c88c1bfL, 0xffffffffffffffffL, 0x4c88c1c000000000L, 0xb3773e40L};
-uint64_t A[8] = {0x3ef7fe59ea3221baL, 0x32b0a08a947eb0fcL, 0x14e3248935cb57a7L, 0x4b58c0845c0e281bL, 0x2bba72ad6d2715cL, 0xc55188170fd69b7eL, 0xf77dd00bfc38ed37L, 0x6f3fc230de80a5dL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x7dff2653e5d31b10L, 0xebeef3cf7f87dd15L, 0x4a6bd5f6266c9c2aL, 0xf8b874398ea5f92bL, 0xbe1c10e99a60a575L, 0x8124ccb69b04acfdL, 0xdc78eb3bdb62fa26L, 0xe8f47ddc0c01a383L, 0x2ac829cb9613838eL, 0x4c0d7a96b3753819L, 0xd4e6bd1e872f512L, 0xc2b9585c68bb47fbL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 36;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x6a4c013557f2b9e8L, 0xf72e079fd1e5763dL, 0x36df500915a3d018L, 0x500770c9c328cf24L, 0xb2c21e701db5a4bcL, 0xbbd561477effb9eL, 0xad289477433405b1L, 0x8f4096686d6d9f50L, 0xcf94d1ff2e17ace8L, 0xfffffffffdac7ee8L, 0x2e17ace900000000L, 0x2538117d1e85317L};
-uint64_t A[8] = {0x13b094a94e0de8bfL, 0xc1192e9bebd3fd5fL, 0x4426583cc2bc2fcL, 0xe3874e85b10c271L, 0x721a3a6c6b0185acL, 0x5bbf5051314aa975L, 0x8a3c17181c4402cdL, 0xe4a2b66f3663fbf4L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x1b02413f3d3ebca0L, 0xbbd224922ba191ebL, 0xa23fd98c6ee1e3faL, 0xbd1a3f345c8fd566L, 0x8613026d5bf087afL, 0xf42372d442d89f03L, 0xee63ffa49472e050L, 0xdd3c7bd3591c6345L, 0x410457258d281af9L, 0xde59603f30e52fc8L, 0x4db6d14ad884d070L, 0xb577a957aa88be9cL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 37;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xf321e9de744c6ad2L, 0xcdc70e15993aea70L, 0xb95cf0be74dcc589L, 0x3a167d90f86d6c54L, 0x7fa24414cc3cd05dL, 0xe16e43069c53e755L, 0x76933e2a56e412fdL, 0xfd8d6325991762bL, 0x1cb90fffe346eL, 0xffffffffffffffffL, 0xfffe346f00000000L, 0x1cb91L};
-uint64_t A[8] = {0xc9a5bd13954b9ca2L, 0x566feeb4d61328caL, 0xcfd7bf48e54e1acdL, 0xeb2603b57b7acd4dL, 0x7bcdd0ff094f23f1L, 0xcb8721ecb3ec12b9L, 0x9e4cbd67c300f661L, 0x31ccefd32ba4dc4cL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xdb7dd1c94a9fa9abL, 0x40048094f8dce548L, 0x586487db97c84212L, 0x41896e42a9b9cc10L, 0x6d3683e8a5232f6dL, 0xbce37aea53541eb6L, 0x6f3727fd3e9145c3L, 0x202a08bc3ed3e299L, 0xe4f296348ca52d1fL, 0x1b428adb7ebf5e61L, 0x23f6eed6532fdc36L, 0xe999b6e0ffd6e7c6L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 38;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xdf3ce991d2d510f6L, 0x9f81149c449b37eaL, 0xd999ae644d590c3bL, 0xf82ccc8afdcb64a0L, 0xb9e5b2f376fa3f1fL, 0x118e3382260e7b98L, 0x9eaaeb3e89c4c4fL, 0x48eefcc582e18af0L, 0xb65313603f200a80L, 0xfffffffff5731de1L, 0x3f200a8100000000L, 0xa8ce21ec0dff57fL};
-uint64_t A[8] = {0x82de615608c76a8bL, 0x9e0760f5e009de70L, 0x13dcc92f9c572952L, 0xce00bd446f820d48L, 0x47ec470393401b88L, 0x477a8089293b49a2L, 0x5c437d80ee42e88dL, 0x3e4356a607a49fe2L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x7bf75c8a1f471b57L, 0x22ce8c9c485b8006L, 0xa87ed40355af06eaL, 0xab609499c7a0225dL, 0x182426871d21c912L, 0xcd9381c97d046696L, 0x675159a6735a5923L, 0x953e6532c5927b40L, 0xf73dfb8e1874c6aeL, 0xceb45a17a4e2a0fbL, 0x55ff54c3cb9ce6dfL, 0x78a0666faf351a3dL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 39;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x4b45458226c622e7L, 0xc60356d7da17591dL, 0x4381f85b7c03a21cL, 0x26c807842e2d8caL, 0x3c7e5e74ac572ec1L, 0xde18792fc19f2c8cL, 0x263568e0525f04dcL, 0xa2b0b26233640218L, 0x78361a4687c9e456L, 0xfffffffffffffe9dL, 0x87c9e45700000000L, 0x16278361ba9L};
-uint64_t A[8] = {0xd649102ec1fb2df1L, 0x9c149775e9226d96L, 0xa3b71044b21decdaL, 0x9d0dfc8ea449fc3bL, 0x3314dda07d498cf2L, 0xbe36114a7ea752a4L, 0x3108cad73819c477L, 0x55f13bc006e22745L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xf20f746cafe636L, 0xd53bca518c2cf084L, 0x38d78c9be0ba537L, 0x2285a26e818cbedeL, 0xd610096404633f9aL, 0x42c434dc37e5163L, 0x172bfeff8e77c6bdL, 0x3730b2e56d626405L, 0x50de97f3a70ce36bL, 0x1427d9d3892d9014L, 0xb9549a4a86de1726L, 0x7c6db6a28787f9b9L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 40;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x47d014641733bd6dL, 0xfef8db8a4124dbd5L, 0x30db142dbdd868eaL, 0xd47c5fe4eb0040b0L, 0xabfb2cdaa2d772d2L, 0xa6ea6b08185c17a2L, 0xc8633460403da23aL, 0xb278eff690dc24c7L, 0x843fffff7bbL, 0xffffffffffffffffL, 0xfffff7bc00000000L, 0x844L};
-uint64_t A[8] = {0x76b85af13143ff6L, 0x25e08eed9e9aa27fL, 0x3e3d0488ffc51120L, 0xf8c81b242528c884L, 0x418e685027128311L, 0x63ac37d528a681efL, 0xf0a07a9732ef1690L, 0xc7fe6aa567d1367fL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x65a1dd73367fbe24L, 0x2c96ed0c520c7a01L, 0x47206ac110b6ee2eL, 0x97486ad8f8c1ad7L, 0x276102ade197c48cL, 0xa8f42a18af32bf3fL, 0x3aff0195feb9f120L, 0xccfe816f113db0d2L, 0x3873049b476cf46L, 0xbff713aaf5d20580L, 0xd64cdb1513209724L, 0x339d28ac65d8cb1bL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 41;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x1531b3de8bf4a715L, 0x81615b8a473d4da1L, 0x341842c77d94f082L, 0xe102780ac82735c0L, 0xc92adbb5b1bcb5f3L, 0x12ee426867c11b47L, 0x5828f00840051c39L, 0xc9728a43135274b5L, 0x9502f8ff6afd06L, 0xffffffffffffffffL, 0xff6afd0700000000L, 0x9502f9L};
-uint64_t A[8] = {0x5da30e809bf1f538L, 0xbe5d744b3a90ab99L, 0x9434dd7251db0f1bL, 0xed877b75c958ef7cL, 0xafe213dbf0592657L, 0x9805f40db8d4bce3L, 0x1253471881081adbL, 0xed43c8beb572b391L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x87fab480ee2b8161L, 0x3b44bf815a6dfbbfL, 0x9ad94dcdb0d17b47L, 0x6aaffaa31934d1abL, 0xee6685760cabf101L, 0x89b3abbc8d90c3f1L, 0x60175ed2c49d6c92L, 0x1b74eae668b2afabL, 0x8d00a045f8830827L, 0x4d5fd5a3ce88c457L, 0xd68a59d0e85d22f2L, 0x4aa998bd15ca0c67L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 42;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xd176448e35b23e27L, 0xb00eea8a5d34f708L, 0x294b12e1ca1b04e0L, 0x46ce85a9e25a441eL, 0xa48558f2fa1bd2fL, 0x77c52d75519978d1L, 0xc45e52db3bfffc8L, 0x5ce885392bb80ef9L, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0xc7ddf7864ac64482L, 0x80cb53c4c9ac79e0L, 0xb47cc1f1216cd550L, 0x1df4d36fc0aec63fL, 0x7c792a6f445611f5L, 0x7002065a567a0793L, 0x817c6261de6732b9L, 0x753e20a3ae511746L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xa63fefe087ee0a27L, 0xd3361199c0ee65e1L, 0x4b9d828ade141bbcL, 0x1155eca32998ca21L, 0xf441598aa6a3c35fL, 0xbe90166645ad6140L, 0x16f7c49207b6063eL, 0x2b7878090ca2af64L, 0xf667b2f71514065bL, 0xd0bc693a6c7782d8L, 0x8b31af105751d06fL, 0xd7264dc5de548220L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 43;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x9624fa491af2b23bL, 0x99d481d9aa936f24L, 0x965d676f0592440fL, 0x7820850c249ed06eL, 0x2f7a9f7492363053L, 0x1e723b82b1d2a6ddL, 0xc6eed0222517903dL, 0x52d9c33dbd0e8d00L, 0x2e140620d1ebd03eL, 0xffffffffffffd65fL, 0xd1ebd03f00000000L, 0x29a02e142fc1L};
-uint64_t A[8] = {0x1194785fc0ebd864L, 0xae08dba305d1c30L, 0x637a496883bf13e0L, 0x1e59d7ad07931b9L, 0xfe138e7c3a8da79fL, 0xfaa2ea66baccab45L, 0x46610f593244345L, 0x990198536bb2cc87L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xf26e0ecd5b43de4eL, 0xbad6d6ee2c30a2e1L, 0x4b1f0620b53e53d9L, 0x2931960927d55b6aL, 0x5e19fcda84a45e69L, 0x635401ef8da173b2L, 0xc033ffcb1a0b373cL, 0x32ffcc894676bdb4L, 0x16ccd8cbc016b06L, 0xa1b53988d828b745L, 0xc8165207a527b6a3L, 0xcd40e02703321785L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 44;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x33ec6868f044b10cL, 0xac09c4ae65578ab9L, 0x85ceae7c4b68f103L, 0x871514560f664534L, 0xb16c4303c32f63c4L, 0xf909604f763f1574L, 0x5509d1285847d5efL, 0x6ac4832b3a8ec1f1L, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x57fcaf64b5e8d6dbL, 0xf670e79ac97efbdcL, 0xe12253fbdb991b94L, 0xa928a6d84768c868L, 0x1d94d6153c3e2656L, 0x2085b6e8694a3819L, 0xea05005e197a2805L, 0x8004d784b244753L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x5790c3752a4a7baeL, 0x2b96388e098c10adL, 0x64f6b2ac15904253L, 0xe1f65d6c74f1f399L, 0x7a8b28f324f9b67eL, 0xe56ad41e02407d1aL, 0xac40e71d23df4203L, 0xcae16dd6fb239e51L, 0x241046fbc5a425cfL, 0x4a6722ec64277123L, 0x5b53a57f90302a91L, 0x2213928238028334L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 45;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x70805e57317e0201L, 0x907e89b301e24452L, 0xac131ca63101ca91L, 0x8c9859401adc7ecaL, 0xd7ef5f2ce1cc3f05L, 0x1e7aabd16a637fe6L, 0xf31f607c3b46b523L, 0x739e14e2da1bf421L, 0x1b0828ffe4f7d6L, 0xffffffffffffffffL, 0xffe4f7d700000000L, 0x1b0829L};
-uint64_t A[8] = {0x40bb8a1ca9a92a51L, 0x112746e2f16e4f64L, 0x779bb091f4b4168bL, 0xb2ba97669274864aL, 0x37f260b9e557fe9bL, 0xf53a2212b22d0d90L, 0xe2f8e1c67da8af3aL, 0x592870011c59d7adL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x99b42ff1e482252fL, 0x6dbd27d39c4815caL, 0xc432845277dfa86L, 0x25b6f6408de90210L, 0x5d7e1cf8fea01d30L, 0x3de171c7b3c52ff8L, 0x691b1652e01b8508L, 0x8038fc64c35cada3L, 0x1dec5b6c362a91ddL, 0x76c813364af845fL, 0xd65ed20c1ff7bf6L, 0xacaf01f57dfe48b8L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 46;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x3362bae22c3ad946L, 0x862508037908c968L, 0xedffad89c6f6e3edL, 0x46870c7f6e823724L, 0xd19a1be06ce75207L, 0x3c898ab747b7c7ecL, 0xaeac44c7816a97fcL, 0xb3b1addf02c166e8L, 0x9f67287f6098888bL, 0xffffffffffffb10bL, 0x6098888c00000000L, 0x4ef49f677774L};
-uint64_t A[8] = {0x81d4d67d5303aa9L, 0x55d6984e2ed8d949L, 0x9ea7ce6365f0934aL, 0x69b60cd9343b297aL, 0xa916a98dc09558fbL, 0x4a43bfd951bdba86L, 0x6c7cc30329ddb815L, 0xd6b16ee90d413600L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x2933915b57d78019L, 0x6c24718cfdb1a060L, 0xebf0e67183638e04L, 0x500417ee91600b9dL, 0x30a61f8b30980d31L, 0x5f7ffb6b3f4c4f90L, 0x121a0af670ab6281L, 0x8945c8cd814e6230L, 0x8724ab50dce156c5L, 0x72c0ba46829e8818L, 0x9947d6bdeade8767L, 0xd2bb4576a82b74a8L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 47;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x948fb3f76932e631L, 0x1707165bb939f40fL, 0xabeee3e9369a6067L, 0x7d81fd488418cae4L, 0xd8d37d942785971dL, 0xed5cf82dc911847cL, 0xbdf176108c7f9dbaL, 0x5a1dffeabd468eL, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0xff25a17d7870dc43L, 0x2882a3ad091ad8f4L, 0x86422227a32da1f4L, 0x5a90d00864bcd653L, 0x4879cd108c355101L, 0x8ded40b9d62f9fa3L, 0x2ecaba53bc0387efL, 0xafc51e23e464bb1cL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x1077f11af012b429L, 0x4282157fac4605a7L, 0xe10e8659763cebcbL, 0x314e86ee5c9955aaL, 0xd2ed5e7017b73140L, 0xe069f6cff4862b0fL, 0x9b49a41191d4e15eL, 0x3ac00950c7d4ac5eL, 0x6a95ed860f3df612L, 0x117b8d514fe0e4e4L, 0xda533e3e6c93418cL, 0xdd0ed2bfe0a40b6fL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 48;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xfdc777e8e93358a4L, 0x6a0b0685d2f8ba3dL, 0xc99ffa23e3912a9aL, 0xfc611352f6f3076L, 0x793e8d075d5cd074L, 0x9de917da153a35b5L, 0x640c2d6a4d23fea4L, 0x94a787bb35415f04L, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x76b85af13143ff6L, 0x25e08eed9e9aa27fL, 0x3e3d0488ffc51120L, 0xf8c81b242528c884L, 0x418e685027128311L, 0x63ac37d528a681efL, 0xf0a07a9732ef1690L, 0xc7fe6aa567d1367fL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x6deb44bc9756dab7L, 0xf63b6eedec5ea412L, 0x40d5e3888d4e093dL, 0x3e189b0ec11377d5L, 0x994219d97b16f98aL, 0xa167ef8a7bc9184aL, 0x352205301b7ed7dfL, 0xd6802c8dcdaee3c1L, 0x9a40dc529e0e752L, 0xbbd58867cba1e841L, 0x749d0a661c33e686L, 0xe90209eef5b9980dL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 49;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x6dc659d335973a5L, 0x7a96346bae414cecL, 0xf4676ff40613baffL, 0x5eb3509214e6a363L, 0xd346790b3ed19f35L, 0xca69e394c894ac76L, 0xdf5b845a87a92f6eL, 0x592829ffc8e32ebfL, 0x289e6fffd7618L, 0xffffffffffffffffL, 0xfffd761900000000L, 0x289e7L};
-uint64_t A[8] = {0xfd10d4229c2a4473L, 0xd255f5c688011591L, 0x6168ae5f30b59dfaL, 0x6f939d68a2be35f5L, 0xc9594125c2f30c3dL, 0xfaa6fa91bc6665c6L, 0xc1cbfb07ec4e60e8L, 0x5f41d10cb649b4c6L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x8f1932e2a0b5d9d8L, 0xa3738afbe9360988L, 0x883b7698fc42697bL, 0x57ddf1274b0ae3L, 0x89c234cb7dedd5f6L, 0xf5e1641b37aabe99L, 0x4a08eb0239bcb423L, 0x72a7fe7d3c0437ffL, 0xf2a3c2a7a4f43e79L, 0xf0fe4a2982f1bfccL, 0x985f3e02648d5550L, 0xca0e08859ba3923cL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 50;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x53fa43894f4c22bcL, 0xee5614c514b56902L, 0x958f7a6dcf89b2bcL, 0x9dcda93232c41ad4L, 0x9d9b7b0ac7aa6bd3L, 0xc8975e8fddbdf24aL, 0xf1f379a9c74ceb83L, 0xc3f7afcee0c6c49dL, 0x14bb6d14eb38d9ccL, 0xfffffffffff446e1L, 0xeb38d9cd00000000L, 0xbb91e14c72633L};
-uint64_t A[8] = {0x6dd9dd6684ee22bfL, 0x41b1dcb877b6d686L, 0xa11ded59ce7db4f7L, 0x520d5b964031efacL, 0x71fa5242e827ced5L, 0x3f2ef814d940c167L, 0x227a98c6572d686fL, 0xb64b316dec22c9b9L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xe654b38838c22e8bL, 0xbbeaa54c124732ceL, 0xc88f3de7a13e956eL, 0x75204b6e3974bd10L, 0x28daba66ab7d78f1L, 0x1ac0f9cf2955e900L, 0x10544bbdd82ea2b3L, 0xc86591285bf0d84dL, 0x9b09c1a38c1af2aaL, 0xa35571f84cb0469bL, 0xd3a3262e10e60d8cL, 0xf25fcf2579a9489fL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 51;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x1691b704d2f245e7L, 0x2e39074538318100L, 0x762a0cbda9d200ecL, 0x6c180755d321a188L, 0x67025fcedc8c0ed5L, 0x4a8040176673f939L, 0xac80e003e07c81dcL, 0xe395a9a1ad36203cL, 0xe1780fff1e87eL, 0xffffffffffffffffL, 0xfff1e87f00000000L, 0xe1781L};
-uint64_t A[8] = {0x46ed86f948a08edcL, 0x3f5b4c65383e91dfL, 0x8f4f9ba66ae7ead8L, 0xca5477de61ea9046L, 0xa091153d7642156fL, 0xc433ce04b59fca93L, 0x3b33c627d44fcef4L, 0x51c35033d6d90800L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x9996f0403dcd1c4fL, 0xaacafd957a145537L, 0x5765ee332f8002c2L, 0x5bec8fc75867c2f8L, 0xa18ab2f3f3cc7a61L, 0xd04b6eb6bd39265eL, 0x101e7a7bdb901c85L, 0x6bf50c16690a56ebL, 0xc9e48a112f45075dL, 0x178a6b0fa3bbbafcL, 0x5498c169a9709f44L, 0xd232f97293c34e76L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 52;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x41e854ddb97df4bbL, 0x16e4967223ca5b45L, 0xa0ff234fb175e868L, 0x6a8af6703f627dL, 0x7cbefa4d1c556bfL, 0xf54c91bca87d777bL, 0x67cc12c7c20e416dL, 0x76805ad688d899a8L, 0x1298ffffed66L, 0xffffffffffffffffL, 0xffffed6700000000L, 0x1299L};
-uint64_t A[8] = {0x5407a49b4faa0cf2L, 0x7eb23d3000f5ecf8L, 0xa2db87227dff4d2L, 0x6f0021dca8ee51c3L, 0x3e855bd6d766cb88L, 0xf50f8d1d5397f0dfL, 0xd0b1f024322e5746L, 0x3f859e44807206L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x1460e682a950ef31L, 0x83df5e92835506aeL, 0x2c147a1098ddf8adL, 0x80c7393196f57187L, 0x371ac9e4f39c35bcL, 0x84adf7e0599d55f8L, 0x2533effefedd3dacL, 0x6454378adf221c9L, 0xd479c23d2ef20d29L, 0x4a375803fc698932L, 0x297765d8e54ae308L, 0x1781aa9269fd2dbcL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 53;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x5dd52e3523850b27L, 0xd0022c90c9f5aca0L, 0x5966e490a231775fL, 0xbbb9a9924f7de93L, 0x19f0440ab3295f7fL, 0x3b1f1328174b1b0L, 0x6df61e54a439b863L, 0x49ceb09b07c8360L, 0x458d5dcfba70cfaL, 0xffffffffffffe2d7L, 0xfba70cfb00000000L, 0x1d280458f305L};
-uint64_t A[8] = {0xf88efc2f992a1840L, 0xd1307b0ddc6b1805L, 0x7ceb3c4ce14ad2f8L, 0xdf7af4100a29b85dL, 0x40eb4ee6d7192864L, 0xf417e1adbb353aaeL, 0x2fa050056a2dd698L, 0xdd87442cd9c57692L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x5e00c8f2e5b4ac8dL, 0x4294d2c67f2ba27cL, 0x22f50b7604ef4896L, 0x2d0608361b083c7fL, 0x6344b8a73e3a64f5L, 0x5d3ce5787c06f636L, 0xd3299e8474edad76L, 0x6ef72bcc794fecfdL, 0xdd797db0a8f67f22L, 0xf406e6a85994df72L, 0x7d3439ce7e866ed6L, 0x13f09637e4e17140L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 54;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x7b0249f059d9dadcL, 0x8ed48bc47b01525dL, 0x67bfcdfc8933cf6dL, 0x9834d6ab6c5ab5a1L, 0x7c5eb50e55ff7be1L, 0xd76f5fbd6bd81e7dL, 0xa121040256f0749cL, 0x74be5935714b91a1L, 0xdcbfffff1077941L, 0xfffffffffed37941L, 0xf107794200000000L, 0x12c86be0ef886beL};
-uint64_t A[8] = {0xd4132c949782a702L, 0xb9c7481ab24decfcL, 0x1c1aea428adc92aaL, 0x700b7340f3884e72L, 0x7400a35dd27a2b5aL, 0x65444adb78515317L, 0x9866c40489564d2eL, 0x599c5f75dc920771L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x1399cec0819bb6e3L, 0x783a0d82c5ddfc0fL, 0x3848b98a0f52f7b3L, 0x2277f93fb562a6f0L, 0x92df3830e7c7bb5L, 0xb5c51f7a22ab2378L, 0x7f19631d26a8694fL, 0x7e9dcc883e2caacaL, 0x53ed7ac1fe125dL, 0x55d34a325242f8eeL, 0x34b038df9b9c59cbL, 0xd382767312b8a0ecL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 55;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x4fdb79bcc6c31920L, 0xd7fbcb8234f62873L, 0xf102efde62974914L, 0x1517d18d2134496fL, 0x72c4cace2a3506d6L, 0xcb071b97bba71437L, 0x6e4667b9b3de018cL, 0xd551bd00d5074cfeL, 0x16a973ffe9568bffL, 0xffffffffffffffffL, 0xe9568c0000000000L, 0x16a97400L};
-uint64_t A[8] = {0x5da30e809bf1f538L, 0xbe5d744b3a90ab99L, 0x9434dd7251db0f1bL, 0xed877b75c958ef7cL, 0xafe213dbf0592657L, 0x9805f40db8d4bce3L, 0x1253471881081adbL, 0xed43c8beb572b391L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x3d32182527195236L, 0x3f1e745b52a63e56L, 0x10a00f3c1947a11cL, 0x24b2e138d5017dc8L, 0x7228bc9fceaaea42L, 0x70de5a7d799f68f6L, 0x1aa4dc26b1dce5a9L, 0xe1001e5deebda651L, 0x493b1884919da3cbL, 0xe30769f667c735edL, 0x8e69cd9df2aa3e3fL, 0xc48a6d3ef7b22f21L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 56;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xdd421b5d4a210364L, 0xf94aa89b40750d01L, 0x49c7cb94fc05804bL, 0xf19f382e92aa7864L, 0x574cc7b293786791L, 0x11f947e696cd0572L, 0x30a119fdd4af1ecL, 0x56cd001e39df3672L, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x341b086b676a2fbeL, 0x68db382f19ca019dL, 0x697e8c0627dc6ddaL, 0xcdb9a82de60af300L, 0x278c89f1cfbaef62L, 0xc70d2f3278e0a3bfL, 0x26f4711925a9c4ebL, 0x846dd6f74b72b663L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xec2d42539c001a3cL, 0x9d661e02c83c9defL, 0xa6c0217fddda9b8eL, 0x8ad1552439b0425bL, 0x57f04337dbb338f4L, 0x251d11e3d495206bL, 0x6910e05e718234baL, 0xbd170b8e08fdf21dL, 0x56d8ed0d1d492c5aL, 0x6f908f93d954f49cL, 0x1fb6c0722bd6ed8eL, 0xdc1a6fff53607a9bL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 57;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xc368b339c6f95675L, 0x3dbd797b5c84fbb0L, 0x3418c27a0be93456L, 0x5b75ed393e57504eL, 0x679e3610d19c8e0fL, 0x4e6c4406814e1cc7L, 0xbfff7e5f5bfb6821L, 0x28fcd703f700ac0aL, 0xa0ffffff5effffe6L, 0xffffffffffffffe6L, 0x5effffe700000000L, 0x19a1000019L};
-uint64_t A[8] = {0x3ef7fe59ea3221baL, 0x32b0a08a947eb0fcL, 0x14e3248935cb57a7L, 0x4b58c0845c0e281bL, 0x2bba72ad6d2715cL, 0xc55188170fd69b7eL, 0xf77dd00bfc38ed37L, 0x6f3fc230de80a5dL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xcfa856057aac93faL, 0x2161144405b50810L, 0x77743493ba0b3e12L, 0x52d3cbc1b2423be9L, 0x424877626481784L, 0x8ee463a8fac15154L, 0x7641fb38f07339b5L, 0xad2369591753402dL, 0x5e56eaadaf3d56ecL, 0xf836f23f378dfb0eL, 0x1b32120db132a467L, 0x7131195820db82b4L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 58;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x20a4eaf655becf25L, 0xd1e75d66949dfb36L, 0x6d37b12360725b2fL, 0xb30a7f3245cf99afL, 0x54b9736178d7f7c8L, 0x3174c7468984423dL, 0x1779987b53192463L, 0x9bc8abd920656359L, 0x960fffff69efL, 0xffffffffffffffffL, 0xffff69f000000000L, 0x9610L};
-uint64_t A[8] = {0xf667eb6d85778c2dL, 0x69bd3b98be8a0269L, 0xd0d881388c8d4dddL, 0xbd27516f04873c53L, 0xee39a1f1e2a7175L, 0x9be12c7128ed3a77L, 0x93d4ff32308e256eL, 0x40f84dcd934224b1L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x4066819674dc76f9L, 0x201ed84505e3fcf6L, 0xa9cb277c045fbabbL, 0x33dae1b6f0831d4bL, 0xaebb5bc7c8fed78aL, 0x4e15d87beb7259L, 0x9e9c5bd8f98d626L, 0x37f2120a5250bf9fL, 0x350b5098d6007da1L, 0x31994d0dea8bfdfL, 0xf066730ee502429cL, 0xa1b90ef0f2fdb751L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 59;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x5853e4c4363186acL, 0x68f237d16fb3664L, 0x6f5ae714ff0b9346L, 0xa9d89488a059c142L, 0xc0bc0e569192408L, 0x47b864fae14e7b1cL, 0x2ec4a76681828876L, 0xe2d87d2363c52f98L, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x863adcbfc3e11936L, 0x132997833c5875bdL, 0xc66fb8e48cec6857L, 0xb9ec70c15113985fL, 0x2dbe3b667dc96eebL, 0xcdc946093e60978eL, 0x17495e3dd74c9d3bL, 0x2babf31ff018f49cL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xbfe7a7a232b36e90L, 0x9e343d94e0d10f3L, 0x7092b86763c2e444L, 0x5ea782b53ca25e6fL, 0x418b3ae543bda0bL, 0x9c7e053e0f670ec0L, 0x8370cce7d87c9966L, 0x96e900ecf9e095cdL, 0x2de6f7fb8daf928aL, 0xc9a7406255d3f59L, 0x5714d1cf8de0d511L, 0x1013dc38b0b9d71dL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 60;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xa6eecf308794885eL, 0x74b44206ee3751beL, 0xcc8715abbc82a095L, 0xd5192c88589b69ffL, 0xe9f04cd324c2e311L, 0x6b5df55fe390da5bL, 0xa3f98377daa4c864L, 0xa05a7aa8dd0ce3b4L, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x0L, 0x0L, 0x0L, 0x0L, 0x2f89ce3fdb43e874L, 0x59442cd71969c97dL, 0x2f5574d8d91f145dL, 0x2922031e34ef4181L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xe026f5b25f9d77c1L, 0x61b9a701a5f704dfL, 0x2730039c46524a75L, 0x7088827dca75a5cfL, 0x52ef898f672d8f62L, 0xcc5deaa0af391f41L, 0xb7f1ae76b644d202L, 0x1b1ae496616b04f8L, 0x591130ce786b77a2L, 0x8b4bbdf911c8ae41L, 0x3378ea55437d5f6aL, 0x2ae6d377a7649600L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 61;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x53086025107aa7beL, 0x318138d8e4da40ceL, 0xbc52988f4d4885faL, 0xb79be12e9542f5a8L, 0x69fbf9169cac00faL, 0x824b866557bc6482L, 0x1a09a19e05ebf9ecL, 0x73b4c7ff8051c9d8L, 0x1298ffffed66L, 0xffffffffffffffffL, 0xffffed6700000000L, 0x1299L};
-uint64_t A[8] = {0x7306bbb8a15a8e04L, 0x8f02d66c01def11dL, 0xd63291c8154a67e9L, 0x7c6e85f3616f1ccfL, 0x1e787b17c6e02971L, 0xa4194c68b7b0ee5aL, 0x48bb709e959aa2bcL, 0xdc645794566e4359L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xed5daa4ae6904078L, 0x712bd14734ebf65L, 0xb6eacdbd7c109946L, 0xbcaf8130be55c12cL, 0x4965aeb158564c8bL, 0x9d8a7ad5cd659edaL, 0xe126541937bebd65L, 0x17956ef0cc74dcbfL, 0xece4fa4ee60050ceL, 0x60b90b183c6723f9L, 0x10b23630523c649bL, 0xe0bd85d75dadf2acL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 62;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xf2ce78da527b0e23L, 0xef4971c55d204279L, 0x2138ca7dc35846f5L, 0x10d3f742d32f4260L, 0xa196238134f62855L, 0x8023537a7dec4dc0L, 0xd26539b4d7066b9fL, 0xf6021f19f18408c0L, 0xea42b722155ca0aaL, 0xffffffffff9f57cdL, 0x155ca0ab00000000L, 0x60a832eaa35f55L};
-uint64_t A[8] = {0x694ee4e9a8bd4f9dL, 0x77d335e552e3660cL, 0x523ce279ea653c2dL, 0xa16534739bad9f30L, 0x41c4e903744eda68L, 0x45a5457f2ba7c27fL, 0x578aa86076fcc7beL, 0x9a49e32de56a12e6L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x86c855cb1ad210feL, 0xf4d61762133be39aL, 0x3d335082428b3877L, 0xcc852c1cd074a99fL, 0x9b86f47ecb475745L, 0xcf6f331f2e3b4c33L, 0x2d1a1a5d10a82dc0L, 0x1b7ec7cf72590b16L, 0xfb70686b7c234542L, 0x1d899b7bc1351560L, 0xf9f61f62bc57b978L, 0x9fe763fde3584d5L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 63;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x78ed4fe6e3a7de48L, 0x5a7e384de42f8cb2L, 0xa3cfa7fd44b81977L, 0xc7c6e4d1c4ce250fL, 0xb12347993e909dfbL, 0x9c03344b75554fadL, 0x55912064d0f5bb2aL, 0xa9231c8ce9e571caL, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x9327b0e9666b1242L, 0xf5f3ebfb4d392c57L, 0x7304174a87d08095L, 0x6869c3bcf7e94bb7L, 0xc3c5a8ebeeb43c51L, 0x3ce9943ebc307220L, 0x8fe1ecf0cfcb6406L, 0x710e6e6b5594a88L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xe872e42f6df8fac7L, 0xaf049c1e66163e68L, 0xeaf45e5014af53b4L, 0xca799cdcf531a42aL, 0xa4945e1d12f7b61dL, 0xa68f201f9a391eL, 0xbebbea65daae5414L, 0xfdc3f1a5b5c9f00eL, 0x1a3a610282c333faL, 0x9b75b3ad69099fa4L, 0xcf346f4d4318671dL, 0xa0a2deeb331b26a8L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 64;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xddd8babd27088fdaL, 0x8542a97638fa869L, 0xfcc2dcb2063ac9a0L, 0x518f401c863df214L, 0xb9479af3326085f1L, 0x62189a505f42d14fL, 0xbb06f07dbfb93f4L, 0xfa1523624d7ee608L, 0xe6a8ffff1956L, 0xffffffffffffffffL, 0xffff195700000000L, 0xe6a9L};
-uint64_t A[8] = {0x694ee4e9a8bd4f9dL, 0x77d335e552e3660cL, 0x523ce279ea653c2dL, 0xa16534739bad9f30L, 0x41c4e903744eda68L, 0x45a5457f2ba7c27fL, 0x578aa86076fcc7beL, 0x9a49e32de56a12e6L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x30aac2385755272L, 0xfa04766b2b49e87aL, 0x25c66aa2764b133dL, 0x86de06685c1a595aL, 0xfbafa03bac23f72cL, 0x1ff3c7e9e625ed06L, 0x9bc84b2ed87893d0L, 0xbd9519a1d13a1f70L, 0x5560ba8602f86b05L, 0xd76fd78cf646a517L, 0x62dc250c0f5cf166L, 0x54ba048d775c777eL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 65;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xcc3024b2d40b5deL, 0xb0f51512b5ec36dcL, 0x6e9724d8d9e2abb6L, 0xdf3b835ee596ec66L, 0xeb8e7dcb084f122eL, 0xcbecf3c1a122f71cL, 0xfb7bc7abac294efbL, 0x8f775c4a59aa43c0L, 0x5b9c0d0fa463f2eL, 0xffffffffffffffffL, 0xfa463f2f00000000L, 0x5b9c0d1L};
-uint64_t A[8] = {0xbdc3f5804558c906L, 0xbe50b32eac05abe5L, 0xabf8eec667de9f04L, 0x30c099e05035eac8L, 0xc2a65a2b6251ee57L, 0xaa1010f7e96e7986L, 0x9f80c4fdf2efb104L, 0x22e94574db40cdfaL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x806c79484d0bb101L, 0x64b19eb02b77c7e7L, 0xecfaf1fea8a5acccL, 0xc4d10f9e6259f131L, 0x54d2f34392478453L, 0x388300b14bfe1e16L, 0x44ec26332754a171L, 0xd5846eaaffb7d7faL, 0xb9c30debf63b2252L, 0x84eb328a18a97e46L, 0x55c60fe5e0216e8fL, 0xa59633c86ca1cfafL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 66;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x2748b4b97246f4c7L, 0x10cfb0375586a4d1L, 0x34732fde901a955dL, 0x396151f4481d78ffL, 0x53b159f481101c07L, 0x4e2e75073742b608L, 0xfb8bb128af1b0b20L, 0xf9464d607cbc6a2L, 0x8b98afff74674L, 0xffffffffffffffffL, 0xfff7467500000000L, 0x8b98bL};
-uint64_t A[8] = {0x47b8c90e0ec452b0L, 0x8691f46ed9af1fa9L, 0xda120f3433f2d27eL, 0x160837d249afa40L, 0xe0053424c4c03fc6L, 0xabd0d5874b2e52adL, 0xe28134da897595edL, 0xc9d2fe827d859fdcL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x4323cc9909e903d5L, 0xf22e7e7a0c828736L, 0x2baafb35e732808bL, 0xb9901b8a969fe03bL, 0x4d5b5ec7b70a8693L, 0x6280394511d54ce7L, 0x3b9e187046ee78d3L, 0xa25198005ed2b5f8L, 0x40404cf50687fb6eL, 0x418a166b31cd3a2dL, 0xa3dc0939f88de91eL, 0x638820323284adb5L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 67;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x8419b973bc08555L, 0xd4c30af602e13740L, 0x3e8ab4ec95fae4dL, 0x931e75dea8586108L, 0x13eaa868192dbfdfL, 0x40ccccd5cc83e9ecL, 0x473820ee0985ef50L, 0x7331ad4b74eacef3L, 0x1b8fffffe46fL, 0xffffffffffffffffL, 0xffffe47000000000L, 0x1b90L};
-uint64_t A[8] = {0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L};
-// J nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x8419b973bc08555L, 0xd4c30af602e13740L, 0x3e8ab4ec95fae4dL, 0x931e75dea8586108L, 0x13eaa868192dbfdfL, 0x40ccccd5cc83e9ecL, 0x473820ee0985ef50L, 0x7331ad4b74eacef3L, 0x1b8fffffe46fL, 0xffffffffffffffffL, 0xffffe47000000000L, 0x1b90L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 68;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x38c528ce9d842325L, 0x97f6b0670b856664L, 0xa017b205b516329fL, 0xf7b4d8b2c2bd0204L, 0x63e5f5faacc61207L, 0x9638fb341ef0d04bL, 0xb33515f039489987L, 0x76f2c6bd24209a14L, 0x3fffffffbfffL, 0xffffffffffffffffL, 0xffffc00000000000L, 0x4000L};
-uint64_t A[8] = {0x7b772ba19675c72fL, 0x42b5ecb89f2ca919L, 0x174ff317bb1c31fcL, 0xc2968078290558efL, 0x838dc8f4b124d3f9L, 0x215c5b2972a94e5fL, 0xfb0576da94b935L, 0x2e2a1e582c01dee7L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x3cf688066b0cb5f7L, 0x5bdeef984453e266L, 0x36f165fe079f768dL, 0x818e957bdfdc5786L, 0x2ef9a16a757a01dL, 0x44b3ebd3d1300ddfL, 0xba2923db42c0eb46L, 0xb37cb5aafa160e02L, 0x69978dd1f23b0269L, 0x68aa17be63334f8L, 0xa7980baecd59e2b6L, 0xdf370d3e9c2d7a16L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 69;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xeffd0fc448c7d559L, 0xc83278174227a7d8L, 0xd53bbaacc1f01d51L, 0x63440d7985bc99e7L, 0xd0116bd33dfe3217L, 0xdcb5dc5e4b95356dL, 0x8d83ef960d545f28L, 0x6bcf2b48b202ce9eL, 0x6f300e9290cfef29L, 0xfffffffffffffdbcL, 0x90cfef2a00000000L, 0x2436f3010d6L};
-uint64_t A[8] = {0x1b8e99ec73674fd0L, 0xdd2db1ac1c655c22L, 0x6961af51e2d8306bL, 0x8be27de7f56e210fL, 0xfb1256c27d874a2eL, 0x16f5d1e9cfdaa431L, 0x8fc19cbb4701173dL, 0xfbfe9539b70e2b92L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x84f551f505eb2437L, 0x5f7c45c4190d72c1L, 0xd6176386cf4ee670L, 0xea0cbd27819c4f76L, 0x775be5aa10c0f359L, 0xf6c8ee0d1c8c8a20L, 0x4cf655b6c17d3727L, 0x9297ff61c838e6b2L, 0x79ce472f2952c638L, 0x65a5bcd0f70018dbL, 0x498cf84ca642dac9L, 0xc96607a4fbee327L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 70;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x262deb66c1034417L, 0x3bbef1f9704f25c0L, 0xfbb1370c9e39d7b9L, 0xeac8c72b27688676L, 0xfaf6786f7636a406L, 0xcf827b1840ab3660L, 0xe950c06cf746c0d2L, 0xcfbfe4e6ec6966ddL, 0x5effffffa0L, 0xffffffffffffffffL, 0xffffffa100000000L, 0x5fL};
-uint64_t A[8] = {0x34388d1781c06c9fL, 0x6bab4b917ad416d4L, 0x69e8676b0f741fb9L, 0x644183540e13bc56L, 0xc9e365086ce5a54dL, 0x25a1220971c2ab59L, 0x6b3a5852142b9a43L, 0xaa73fe0d6ef970d3L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xb88d4f6fbdd3205eL, 0x445a9da0173f2690L, 0x461cded1cbfdcb34L, 0x89406f986669fd2eL, 0x957f89b411867d0aL, 0x57352c1ef31fca57L, 0x70acc6f11b4e4ec6L, 0x7ee99730930fec52L, 0xf595ea406315c317L, 0xc17886e5c0f88e98L, 0xbd49fe534a9d1602L, 0xe779a52436da1bfL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 71;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x4b8273ae870397f0L, 0xa68bda6b00afc30aL, 0x220fec94af5c774dL, 0x8acaf026e380403bL, 0xf61c04dbb8afb88eL, 0x449888db200b887L, 0xe51687e350499758L, 0xfc29ef1b198b43f7L, 0x5d1087d6a2ef7685L, 0xfffffffffffffe5cL, 0xa2ef768600000000L, 0x1a35d10897aL};
-uint64_t A[8] = {0xc9a5bd13954b9ca2L, 0x566feeb4d61328caL, 0xcfd7bf48e54e1acdL, 0xeb2603b57b7acd4dL, 0x7bcdd0ff094f23f1L, 0xcb8721ecb3ec12b9L, 0x9e4cbd67c300f661L, 0x31ccefd32ba4dc4cL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x4d8b6c0c0c3d868cL, 0x43eb03c34119e45L, 0x9df9a8e47c5a3addL, 0xb6807824bd93ded8L, 0xbe82eb3600620ee1L, 0xbb1b185deda109e0L, 0x22bb48b1327bb7e7L, 0xd452735868602d5bL, 0x37dfec7f8db72895L, 0xb10c65acf79320f9L, 0xbb5e890e3b8ff8e9L, 0x2bd8bbe506d580fcL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 72;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xb098e6b2eb6f685fL, 0x2f7980537bf3a01dL, 0x109d7c254267e3d1L, 0x3cfbb35266406e49L, 0xf66feef6b468edc7L, 0x8507f2ab800c0450L, 0x28a59deab44b4a31L, 0x818a3bd4b3095a04L, 0xa73c567851abcf8cL, 0xfffffffff8e82605L, 0x51abcf8d00000000L, 0x717d9faae543073L};
-uint64_t A[8] = {0xf9e52a3c3d09587fL, 0x4df9d7e007e02f99L, 0x56b54f114a88d0ffL, 0x8bd26aa0267ffedfL, 0x28abcab71f0d0a08L, 0x41011586e26e500fL, 0x117b7425690e41d3L, 0x1877d8811bda67eL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x339ee28fe3441e2eL, 0xe0a94afb5cee01ddL, 0xf9a77991d9dcfceL, 0xa8df2dc7b5353441L, 0xbab6aea9f6749477L, 0x92eff99e19ded246L, 0x48c485af9fada162L, 0x4ba6457a4cb291ecL, 0x4482d2bfea3ae299L, 0x40d04d8f04ddfecdL, 0x9ab36d0b0de0bdd4L, 0x345970777770d2c1L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 73;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xad059e61fa2a7e83L, 0x868891e9ae098798L, 0x6a53ec48fe259e5dL, 0xa11cc5e7934749d3L, 0xfac1a76fcbb3eefbL, 0x553a8dd1269bea0dL, 0xeb91e204f987b06L, 0x87f4eb5cf66d37b1L, 0xfffffffeffL, 0xffffffffffffffffL, 0xffffff0000000000L, 0x100L};
-uint64_t A[8] = {0x49b2a0b16a395853L, 0x32092e494617dd75L, 0xce614c2f83c516f2L, 0x40afd261d2a96d7dL, 0x735fd9b0767a558dL, 0x7c83d9d9520a759fL, 0xf34063ae496cce27L, 0x4270a2bd4b257a7aL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xc9436da3d4bd117cL, 0x3b1ba63326d3afcL, 0x2c26d12b3c4e7788L, 0xd72cf971a55f73bfL, 0x9f5171b02da8025aL, 0x62027803d6a0b7c1L, 0xc796c8be464fe514L, 0x42ed56bbbe0199daL, 0xac1589512869d3b4L, 0xc0b42e2f6c46c8e1L, 0xdb4dca25cca25231L, 0x450cc1da35ffdef3L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 74;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x56ec4ad11d01e7e7L, 0xada201817cef118cL, 0x986ab7cc598976eaL, 0x9ea7e065585a7f79L, 0x942ae6dfbfdc8deeL, 0x14f52efecc39b364L, 0x9ca63affa32e2733L, 0x387eedabdb7ea5dcL, 0xd23fffff2dbL, 0xffffffffffffffffL, 0xfffff2dc00000000L, 0xd24L};
-uint64_t A[8] = {0xd4132c949782a702L, 0xb9c7481ab24decfcL, 0x1c1aea428adc92aaL, 0x700b7340f3884e72L, 0x7400a35dd27a2b5aL, 0x65444adb78515317L, 0x9866c40489564d2eL, 0x599c5f75dc920771L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xd1bf6ccaf9b2530cL, 0xa55e692c5a28814cL, 0x896d9a3817b22e4fL, 0x53e5bc04710de19bL, 0xa7352cc75de33b7dL, 0xe41c7283202e60d6L, 0xd78bc6ace46c8d3aL, 0xcb68e24c5e74a5acL, 0x2172afe8a7782b39L, 0x11e76a879dfa97ddL, 0x14df04aed59cb185L, 0xa907ff8b5e466d37L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 75;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x9bb52c106d6fc482L, 0xf00045208d424ce7L, 0x133f022e360c6e5cL, 0xbe81c6bce347c41aL, 0x3e58cb7a88efcfe2L, 0xd078b58191820c29L, 0xb7acf095bb4afe86L, 0x7f20a3010136f582L, 0x5f5e0fffa0a1eL, 0xffffffffffffffffL, 0xfffa0a1f00000000L, 0x5f5e1L};
-uint64_t A[8] = {0x2d0f1be2b5577cf9L, 0x8decdf26c01ce141L, 0x7e28a0d562d7881L, 0x8218884b2f38e1d6L, 0x707320391e7826faL, 0x36925b3cb704a1fcL, 0xe77da7d78929b20aL, 0x747c0826cd4f4e7bL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x6866d967edb7483cL, 0xe55656854d48bac5L, 0xdf5d903c296c67c8L, 0x92ce29c970dc24fcL, 0x4df54bcda51bd519L, 0x16dcf0eb4d5f6105L, 0x3bd10b047dcc2f68L, 0x7f57e0b66a56e39bL, 0xa2c3d32686d8c816L, 0xd05869f491d6c1a3L, 0xb5a13afba087e357L, 0x583d1a50953bfe02L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 76;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x649c89ce5bfafe43L, 0xc2e2594c30a92f8fL, 0xa155cbe31da6a5c7L, 0x5fb35ccfed2bad01L, 0xf3a8cfe389bc7d3dL, 0x4b00b20b906014cfL, 0x9b359611f32c50aeL, 0xd158667de9ff257aL, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0xff25a17d7870dc43L, 0x2882a3ad091ad8f4L, 0x86422227a32da1f4L, 0x5a90d00864bcd653L, 0x4879cd108c355101L, 0x8ded40b9d62f9fa3L, 0x2ecaba53bc0387efL, 0xafc51e23e464bb1cL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x64a616e7661ef7f6L, 0x845241efede05a3fL, 0x261a260396b6cac8L, 0xcf3ef9d1358a0d26L, 0x51e98af464fbdbd0L, 0x3f6fa2c187b35a00L, 0x15d57ba4c00ef9acL, 0x89b24b42436b36eaL, 0x9a8917af1c75ddffL, 0x65a04a60d871a964L, 0xe4ec56448586fc2cL, 0xfadd733877912952L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 77;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xc2ee33fce1548c96L, 0x42b53da83c79201bL, 0x932ccb6bcfa7e0dcL, 0xc9a4c3aea2e42c6bL, 0x73f32ab8518a62e8L, 0xa76d9d98ae476cd1L, 0x6ff9d31d8847a372L, 0x62c5b7ef6d7550dL, 0xf423ffff0bdbfL, 0xffffffffffffffffL, 0xfff0bdc000000000L, 0xf4240L};
-uint64_t A[8] = {0x1e2d270d1f79fb85L, 0xc12e67b45d047997L, 0xfaedd341f1e746fbL, 0x22e78b4130420919L, 0x4c96007e85769ceeL, 0x1d0112632023af99L, 0xad0d5d48053af2f2L, 0x819324322cf5f440L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x658df34b0fa47ba3L, 0x9668d208be5924bcL, 0xadf857500f21b485L, 0x9d0e797d3a8a8248L, 0xaf81f7f880d84f77L, 0xfbd9071ab02177e6L, 0xb575b8a76fc1f76aL, 0xf3ec64090065f4d1L, 0x57f1d1f6fc0f84eeL, 0x7c5ea1cf23b7a148L, 0x968f3e9c5c620595L, 0x7e395b36d4bd160cL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 78;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x5131ef687d429962L, 0x96319631d2a1773L, 0x3f1e2278e33bce30L, 0x6177a09364111f49L, 0xff7a81f5697c1e38L, 0x3fbf69e8b3bf7480L, 0x35963ecf6ecff003L, 0x40b727ba807509f1L, 0xf517544e0ae8ab3bL, 0xffffffffffffff8aL, 0xae8ab3c00000000L, 0x75f51754c4L};
-uint64_t A[8] = {0xb595d8a9eae3eff3L, 0x1fbf14715b64ea48L, 0x2c1fa02b57ccd532L, 0x13ad0573e9799e4fL, 0x9026eb180cd032a2L, 0x82128bb46643b150L, 0x818a6d8f4706304cL, 0xd93ef16f097c5ad9L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x1f0c43b716af1329L, 0x7ea87d7f4d826e74L, 0xb61ab259484902eL, 0x1595882f5af4dc6fL, 0xeaf2b079360080fcL, 0xf18a606eda333abcL, 0xaf7df76777f90dcL, 0x34f20fff94b6026bL, 0xa6839beaa0eb9f2dL, 0xfc2a698961288cdbL, 0xfc9f4f032aa04126L, 0xce9969433d14aec4L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 79;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xc7d8a2c8f27d12baL, 0x6745af5b6052bd66L, 0x3f2f7e75ae50f0f8L, 0x1bc13d1704d56e1fL, 0x8537c7902d3eaa4bL, 0xa233eaa511b0a6c5L, 0x6e66d5142b74a827L, 0x349c07b796f9bf4cL, 0xbc5a1e3f43a5e144L, 0xffffffffffffff84L, 0x43a5e14500000000L, 0x7bbc5a1ebbL};
-uint64_t A[8] = {0xd18d9b0f700e5cc0L, 0xf69a7d30c2cce0c0L, 0x1f352382f17659e4L, 0xd361c63157c3aa13L, 0xa5ffb367f0ebeb65L, 0xfa30d2ada9eaf6e1L, 0xe95de0b741063f0dL, 0x4aac66d83f3f4b6eL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x55cfb8a5a2243e15L, 0xe49156de4da5a142L, 0x7bbabeefd8e2be98L, 0xa5764e744284381bL, 0xebc37e46511210f8L, 0xbef296c81cc55759L, 0x94f294ea295e7152L, 0x1974a84c9618a2eaL, 0x2d6ed1128bb3eaa7L, 0xd445f613dd595d2cL, 0x1d128d3982f4630cL, 0xc9a483d22a739da7L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 80;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x6b703cc03eb88876L, 0x36646f5ae714a6b7L, 0xae821b539488a059L, 0xc1425853e4c48e85L, 0xd189031c29962e7eL, 0xc4a7667576c7916dL, 0xb39835b3c52f980cL, 0xbc0e57524e4edb0L, 0xfffffffeffffffL, 0xffffffffffffffffL, 0xff00000000000000L, 0x1000000L};
-uint64_t A[8] = {0x0L, 0x0L, 0x0L, 0x0L, 0x2f89ce3fdb43e874L, 0x59442cd71969c97dL, 0x2f5574d8d91f145dL, 0x2922031e34ef4181L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x45501e05fd481a04L, 0xb295bdf6409a91bcL, 0x84f4265e43247032L, 0xabfacc69c6a63ce0L, 0x3201b5798ac107f9L, 0x96ea7180ec9663f3L, 0x18545f01f119f48dL, 0xf464baad3fc099e9L, 0x3f55d73a8a350bcdL, 0xa518eb5948517de4L, 0xacd6e79ca63ebda7L, 0xac1b3b717a948fc3L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 81;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x2bd0204360826caaL, 0x41252997f6b0670L, 0xb856664a2d4b409bL, 0x516329ff7b4d8b2cL, 0xaf490825d5cff157L, 0xa8f439ab06e58e3eL, 0xcd07bc34c235d56cL, 0x10e522661ddbcb1L, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x1b8e99ec73674fd0L, 0xdd2db1ac1c655c22L, 0x6961af51e2d8306bL, 0x8be27de7f56e210fL, 0xfb1256c27d874a2eL, 0x16f5d1e9cfdaa431L, 0x8fc19cbb4701173dL, 0xfbfe9539b70e2b92L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x7ef384e79deac439L, 0xfe39113e1c2a67bL, 0xa1bc885a03596e5aL, 0xabe2a6433a396548L, 0x204f51ccb68dfdeaL, 0xeaafdfc99be342f7L, 0xa80223aa3a36ba74L, 0x778496ef4c1221f1L, 0xefbe79a812e4e327L, 0xd91b5f129cfa55b1L, 0xb10b4908b58cefd0L, 0x3a7f53e87a2095e2L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 82;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xe97f6611b1cda5bbL, 0xb10f2987f83f9aa6L, 0x81e5d3e898193812L, 0x267df4b457c43fe6L, 0x6bd4602c199315bfL, 0x687d348bca97859dL, 0x38a6238c79349b0fL, 0xc8bd81b74891bf56L, 0x4effffffb0L, 0xffffffffffffffffL, 0xffffffb100000000L, 0x4fL};
-uint64_t A[8] = {0xc2591a80f7fe3f88L, 0x554c2c0348e4f302L, 0x3b1995c38f8c65c9L, 0xc79e9e572406569fL, 0xb28666dac04097cfL, 0xb79f9675cb6eadbeL, 0xf67ef719e7a2a9beL, 0x5f100402249c2c7dL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xcbaa8f1d98b27e72L, 0x28e0eb2e2656e536L, 0x6eef196a20f40d11L, 0x7df303adcf8b11c0L, 0x1bad52b4a6066fccL, 0xca8e113b23bbb87fL, 0xa83caf859eac99e9L, 0x75f26c4ee39b99b6L, 0x6730bd917b9d9eecL, 0xc563f93d096dec1aL, 0x7a183d61cdb103d3L, 0x38dc919735ba774cL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 83;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xcb5f21848b153494L, 0x43e937164a6ef82aL, 0xbabc08cbc78d2388L, 0x9ea08c3be1207b32L, 0x20df3edb735b1bL, 0xeee81029724f8550L, 0x3d6917173bc00f19L, 0xb038cd8ad903a14fL, 0xf18ffffe1bb699e9L, 0xffffffff0d4699e8L, 0x1bb699ea00000000L, 0xf2b96617e4496616L};
-uint64_t A[8] = {0xa7723ce1e1403180L, 0x9264d3dcd3659124L, 0x9b429deaa6e3608aL, 0x138769c2d77cb7d7L, 0x7cfac5ddc9bc8e59L, 0xffa0d620bc76856cL, 0xad33546206ded84eL, 0x2471b4adeba2b03eL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x388ca861631d7c57L, 0x893f78b4eff59b10L, 0x986a6f9224bc88f2L, 0x99398f72dad0ea9fL, 0x3933c095fd2f5c76L, 0xe971c57dfb8c0118L, 0xdcbd903832d9da20L, 0xab01877516bac0edL, 0x1585b7da386eb87L, 0x1e6e5412a5e2feb4L, 0xe812f651f2d19122L, 0xa10055d4dc54a37aL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 84;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xb904efe450803ee7L, 0x97d3d28fede6df03L, 0xcb46dde71e00677bL, 0xb8e51cae1d0b9c3fL, 0x97c8eaa2d19c479dL, 0x564e71345faa5b7bL, 0xd73048af79822eaeL, 0xa00c8eba9d727767L, 0x2fa27fffd05d7L, 0xffffffffffffffffL, 0xfffd05d800000000L, 0x2fa28L};
-uint64_t A[8] = {0x7306bbb8a15a8e04L, 0x8f02d66c01def11dL, 0xd63291c8154a67e9L, 0x7c6e85f3616f1ccfL, 0x1e787b17c6e02971L, 0xa4194c68b7b0ee5aL, 0x48bb709e959aa2bcL, 0xdc645794566e4359L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x50210215f6be5e0fL, 0xc616788ae3f0026cL, 0xc45a1c62ff3d53adL, 0xc0959df2e145ca27L, 0xee67114e35f31f37L, 0xcf2f0f30ede496b3L, 0x975dbc8704b2ff91L, 0xc1e21bd28b0053afL, 0x5259517995dc5917L, 0xc63afa7f799ad478L, 0xc2f2e3c2363b07b0L, 0xc04916ea65603c2L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 85;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xac7fd179b754b796L, 0x8d2cfe2585b941faL, 0x8f4e09310eb9b1cbL, 0x8db28655da12296aL, 0x2f82222a9f19f922L, 0x2117c0e8d75d03baL, 0xbba92730bccf25acL, 0x8f7bd3e6ef15e242L, 0x3bd5ee0fc42a11eL, 0xffffffffffffffffL, 0xfc42a11f00000000L, 0x3bd5ee1L};
-uint64_t A[8] = {0x3ef7fe59ea3221baL, 0x32b0a08a947eb0fcL, 0x14e3248935cb57a7L, 0x4b58c0845c0e281bL, 0x2bba72ad6d2715cL, 0xc55188170fd69b7eL, 0xf77dd00bfc38ed37L, 0x6f3fc230de80a5dL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xe66d29357ec1dc93L, 0xa96ca631c7f5964aL, 0x5be67f5761d0563L, 0xd2e8a9417c0a9fa8L, 0x867bba45598bc63bL, 0xa188ce8eb2abf0c9L, 0xf988cefee2373158L, 0x5b9d3ece3c3efa51L, 0xc1ebf049ee31e9efL, 0xfa090ae298d9dc34L, 0xb38b9a0357bbf62L, 0xc7c9548b4f3b69f9L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 86;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x54d63c809103b723L, 0xd5ef2f7c2c83f549L, 0x5882e0753ffe2e6bL, 0x808b0b650bc6fb80L, 0x64edf7b201efe220L, 0x55c4623bb1580e9eL, 0x3670c3194b0b6587L, 0xf2f11bd652a23f9bL, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0xe22b104ad0f67420L, 0xbaf5500801638fa6L, 0xfe4601e2b5bf98aaL, 0xb2e97c5f8d1e0c72L, 0xa09a2ad2d0d67a2fL, 0xcf3cbad5d5c143a6L, 0x57b4042b9fcef2dcL, 0x2b55741691d9fe6fL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x70669f98a0245e40L, 0x4a42a84442425badL, 0x447307d5d52cd667L, 0xbd3ca0d66de0cd09L, 0x1fc3f1f757c048d0L, 0xf881968babb763d6L, 0x7e3934a5bc2491d6L, 0x72f08d68b533f3e2L, 0x8d54d3ca3ff2bcfcL, 0xe506208bd4df9a5dL, 0xa5c3216d75c16a3fL, 0x325e70fa815710f2L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 87;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xbfa1ff3a40551eb1L, 0xd2886384ebcb6ed1L, 0x8bfb80c325f10049L, 0xa52e4e5e6cb94aa2L, 0xaa3e25f1466bd9dcL, 0xe29678a6291c4675L, 0x2464e23ce704dc62L, 0x7aab07488d5c3830L, 0x8be7ca6874170bd6L, 0xfffffffffffed63fL, 0x74170bd700000000L, 0x129c08be8f429L};
-uint64_t A[8] = {0x7b772ba19675c72fL, 0x42b5ecb89f2ca919L, 0x174ff317bb1c31fcL, 0xc2968078290558efL, 0x838dc8f4b124d3f9L, 0x215c5b2972a94e5fL, 0xfb0576da94b935L, 0x2e2a1e582c01dee7L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xfb0b4a6fb8415eacL, 0x571267d4dd3ea41eL, 0x70735bfe09890effL, 0x82469ec34a6c4396L, 0x45bf22dcff6ef700L, 0xc881aa067cbe2818L, 0xbb8ca5f6ce9cbf92L, 0x3c0fcd1ddd37d666L, 0xd9eb671d129e94ebL, 0x3042146c6ead4509L, 0x6b155c513eb4e33aL, 0x7518a700cfed34f1L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 88;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x3db9e7799cbf7b65L, 0xf572386de907ebc5L, 0x6fb158cc3a903d78L, 0x182b58c2d9560bc6L, 0x883964029c95980bL, 0x6058e1e208965903L, 0x36e41e8a9dcbe8f8L, 0x5a4b34d061126ba2L, 0x19a0ffffe65eL, 0xffffffffffffffffL, 0xffffe65f00000000L, 0x19a1L};
-uint64_t A[8] = {0x5da30e809bf1f538L, 0xbe5d744b3a90ab99L, 0x9434dd7251db0f1bL, 0xed877b75c958ef7cL, 0xafe213dbf0592657L, 0x9805f40db8d4bce3L, 0x1253471881081adbL, 0xed43c8beb572b391L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xde8f9ee99d92a256L, 0xcb4723187dcb28f8L, 0xe67fc5aef1313b8fL, 0x1ee8ee190429a313L, 0xd1a04dbcefdc9597L, 0xfdb7d6dcc023b1f9L, 0xf1a0aec95b3d8966L, 0x4d4bb18ebf968ee9L, 0x374b23f4cb3b300aL, 0x90b8ab30e90424f5L, 0x472d12a29a21f6aaL, 0x98ee8b4403fe997aL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 89;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x8b72c8c16c4b058eL, 0x37eeba93aba32cd4L, 0xfe0a46807985418eL, 0xa096a029b6b64a75L, 0x5ace6098ec9eda0fL, 0x5af00941bf76b8b8L, 0xb828216361bb707dL, 0xf453d8c8796cd53dL, 0x1fa3ffffe05bL, 0xffffffffffffffffL, 0xffffe05c00000000L, 0x1fa4L};
-uint64_t A[8] = {0xc7ddf7864ac64482L, 0x80cb53c4c9ac79e0L, 0xb47cc1f1216cd550L, 0x1df4d36fc0aec63fL, 0x7c792a6f445611f5L, 0x7002065a567a0793L, 0x817c6261de6732b9L, 0x753e20a3ae511746L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x632deee4f7637d15L, 0x73d2f16f2a1325f4L, 0x769f06b73b5cfa01L, 0x38881b9e4131a64eL, 0x69fb61d179da42a8L, 0xad095f7d76ddc4caL, 0x17e87180528c5355L, 0xc1bd323db7632a20L, 0xeabd9ebdab51424cL, 0x2646b78c7fec8ae1L, 0x78b4f57f58b25cc3L, 0xadba45917fa4de3L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 90;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x9154b29791225aa0L, 0x42d70f34cdc735a9L, 0xbe3f1f18feb49f8aL, 0xa54bce826cb578caL, 0x5aaf2d24363734ddL, 0xef8c71c92003a5afL, 0x36b4030369058eeeL, 0x9a05e3af3979400dL, 0xfffffffeffffff00L, 0xfffffffffffffeffL, 0xffffff0100000000L, 0x100000000ffL};
-uint64_t A[8] = {0xb5cffedf0790a013L, 0xf1ba0f6e25458e39L, 0x66d546ad56e03b9bL, 0x7ce0061255f79ecfL, 0x7c2da8ba0847c739L, 0xc641e310a7eb8838L, 0xf3cc871d693e2a73L, 0x16439c6cd3b5b4e4L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x65562d03c616d301L, 0x6105e9aa17db0176L, 0x3943e570b9458552L, 0x22ab12efefa05cfcL, 0x21fe3c02b6eab1a7L, 0x739d66f718f82bd4L, 0xe8af1cb621fefbf3L, 0xed87fbd5c0b4cc34L, 0x50c18261a8e343f2L, 0xf489d5a8e03d9481L, 0xee67addd93eede32L, 0x3d80801e2cae977cL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 91;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xc79a356750493688L, 0xc13127e39ba9f610L, 0x58375f151dfae2bL, 0xd7b35dcbad6098a4L, 0xe5d9539220fa5f47L, 0x8a29540182b84ed9L, 0x7b037287b02fc67fL, 0x496b3bdc50f4eec5L, 0xc46bedff3b9411fL, 0xffffffffffffffffL, 0xf3b9412000000000L, 0xc46bee0L};
-uint64_t A[8] = {0x76b85af13143ff6L, 0x25e08eed9e9aa27fL, 0x3e3d0488ffc51120L, 0xf8c81b242528c884L, 0x418e685027128311L, 0x63ac37d528a681efL, 0xf0a07a9732ef1690L, 0xc7fe6aa567d1367fL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xefbf9e88ee997589L, 0xc28cfb24a5ac6837L, 0xf44454a79e9e3ab7L, 0xfad6573257692615L, 0x3defd5c5c5868447L, 0xb094efeb457af548L, 0x439ee7ae70f3a8c5L, 0xa8e013a2a255d23L, 0x5b0d20cbd03358f9L, 0x82c17e949a1e5827L, 0x41bb0ebded5f94d7L, 0x7e4499bdbf2e69cdL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 92;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xf3ade4ec8370378bL, 0x4c484275c47da45L, 0xf73ed514be262625L, 0x95058faf0f8fc7afL, 0xcf50d1e305d134c1L, 0x63e3c2e57bfb68daL, 0x57c8285618afe896L, 0xc7d39d5608647180L, 0xcd7deb7f32820486L, 0xfffffffffffff006L, 0x3282048700000000L, 0xff9cd7dfb79L};
-uint64_t A[8] = {0xbc2905fdc2c72f52L, 0x67f5f05fcd47bd28L, 0xc4a70bcc9535ceL, 0xea9479cf0f52d533L, 0x4ef0c2e2a7fb0657L, 0x5d1379f69267bcedL, 0xcc5ccf9a29159b0eL, 0x6febb404d5e365f5L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xdccbd80dc90e17fcL, 0x54dff9caa1b46e2cL, 0x2fe6041a5dc04ae2L, 0xfac33780fbed87b4L, 0xbd1e416b7e24d22eL, 0x48862ae1adc4804fL, 0xb9b2bafa908557dL, 0x60f0788505797484L, 0x48016f6a0f177aafL, 0x41212077625acf35L, 0x956b5fffd42e7c48L, 0x914d9acdeb0c27cL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 93;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x827427a03fa59b4bL, 0xd18be898101d9b9eL, 0x6c5759f29cf9c8dL, 0x97fd53e2e7a0ba0eL, 0xaf8d462aa65e486cL, 0xa27b5b572996da50L, 0xe9116cf861f3cf7eL, 0xa18da286a0c00497L, 0xfffffffefffffff0L, 0xffffffffffffffefL, 0xfffffff100000000L, 0x100000000fL};
-uint64_t A[8] = {0x8942b27f550d6f9eL, 0x8e975fe69f49297cL, 0xc75267ab5e2a0afaL, 0xf3dbb029e1d3b305L, 0x69b85d82f577fbb0L, 0x3ca39341541d3e23L, 0xe8764f91c11037f7L, 0x65a84d585d0ba359L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x9f34231323f227d7L, 0x74707e5014194777L, 0xc7e0780c8c2c17c9L, 0x96d122b898f9f103L, 0x73d5c35f57ba3680L, 0x5002442f10bf80f0L, 0x8205d36f42aec8dfL, 0x8f15e3ca6ca6f7c3L, 0xbbd209c2e8065390L, 0x73adf7784c8965f8L, 0x7880bf7dab52bfb6L, 0x88163d5225b5d03dL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 94;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x19daec51b27d7454L, 0x4e0fc7cab5f49a5L, 0xae255f61efa3b090L, 0xc643de7ca0be0ff5L, 0x83eaebc3a088d9e3L, 0x2b781e5bfeead99bL, 0x102fd95053cff706L, 0x4a9436792ea48facL, 0x40ffffffbeL, 0xffffffffffffffffL, 0xffffffbf00000000L, 0x41L};
-uint64_t A[8] = {0x2b9131acc0130435L, 0x97a689a71742557cL, 0xa81ea03df9581714L, 0xc34ea0250f6667dcL, 0xd734003dee5d1e66L, 0x7bb0772a8b6e0589L, 0xb1f409df762e3ef3L, 0x60f7817684aa164dL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x5023f64c86159ee9L, 0x8598fc9299afb87bL, 0x5aa7a9f3bd4aa962L, 0xb04e868b7365e4e5L, 0x42bb1d6809df9cc4L, 0x70f2f81d3a98f50eL, 0xde4c0b68aeadc932L, 0x1e19d0279f310719L, 0x47e48d581e1b5791L, 0x77d95cb6cbcabfe9L, 0xc69c6472038083beL, 0x25a66ec89edc3631L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 95;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x88b56923125ef590L, 0x9b859cd90fdb31fcL, 0x940b496c16c2318fL, 0xa0d08f39bbce9f43L, 0x6c52cb7ba74e6124L, 0x158ec18727faccedL, 0x46d47892b18b5133L, 0x8529014de0b54e2eL, 0x2dfd3892d1fa7c83L, 0xfffffffffff7b516L, 0xd1fa7c8400000000L, 0x84ae92e05837cL};
-uint64_t A[8] = {0x57fcaf64b5e8d6dbL, 0xf670e79ac97efbdcL, 0xe12253fbdb991b94L, 0xa928a6d84768c868L, 0x1d94d6153c3e2656L, 0x2085b6e8694a3819L, 0xea05005e197a2805L, 0x8004d784b244753L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xe3e0724baf79f550L, 0x448231d33cd59e3aL, 0xe57b71f576375255L, 0x4a9369b26c1355ccL, 0xb9a95355ff875e5dL, 0xb4510a1eacee97a1L, 0x89200093f5ef824fL, 0xe3da7e101895774dL, 0x9fae7645034b33e7L, 0x3d3c25759979a9d2L, 0x7601177e9bfecd7eL, 0x972c6f631f46a1bdL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 96;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xf98c587216e2248bL, 0x26120d2f06dbdf5aL, 0x2371f148615a4130L, 0x98d060a41d35151L, 0xa0c673d585149c62L, 0xf9bbd87d026facfaL, 0xec9ded87a13cab52L, 0xd59fd742e1da671cL, 0x33d495ffc8993413L, 0xfffffffffc6dca13L, 0xc899341400000000L, 0x39235ec3766cbecL};
-uint64_t A[8] = {0x34388d1781c06c9fL, 0x6bab4b917ad416d4L, 0x69e8676b0f741fb9L, 0x644183540e13bc56L, 0xc9e365086ce5a54dL, 0x25a1220971c2ab59L, 0x6b3a5852142b9a43L, 0xaa73fe0d6ef970d3L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xd489afe8cb1bd86bL, 0x2b3c343f99612399L, 0x5e18656690d6f22cL, 0x5069e3a46015ffcdL, 0x3ffe3d5ea6dbead5L, 0x18a83370aa8c4608L, 0x9321752f50e360cbL, 0xbf099ec4acfe799cL, 0xf8e89a630446f749L, 0xe77f9f2a7fd462f7L, 0x66e5d3c90c64cfedL, 0x4fb4f0195e9baa30L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 97;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xf5d6dd72877f65e5L, 0x13cac83d3e454862L, 0xaae09e064b6511a1L, 0x2092a9da58d958efL, 0x1dd2f7d1993f53d4L, 0xf3b76d8d81a0dc98L, 0x4a4d9f035f3cd456L, 0x82c889d8a617495dL, 0x2adfffffd51ffL, 0xffffffffffffffffL, 0xfffd520000000000L, 0x2ae00L};
-uint64_t A[8] = {0xa3a8acdfb4c45f0fL, 0x40633f71dd93c7f0L, 0x12960ebce3bb096cL, 0x63f522c7506af27aL, 0x67f33420ce543d5bL, 0x310f8883245c7fbcL, 0xfbb7fce0856c61dfL, 0xb39ac8d3c824d326L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x319adc5da37c1bc8L, 0x325bf9df736fde15L, 0x83022437be32db68L, 0xc7a2ae1900788397L, 0xeb280fd06b5b64ffL, 0x62838ca774d76619L, 0x8caddc8963ee0627L, 0x34aad16c5229f21bL, 0x86fe2a75332c3882L, 0xf3ab0ce1dc1e6dcbL, 0x16f253987c184710L, 0x99c2753c400ab94bL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 98;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x6c8086b76d079091L, 0xf74bab292b026c10L, 0xb843e731ed06dcc0L, 0x1ec735457d4e3729L, 0x2e27487210b67067L, 0x3d811b53d1450c88L, 0x69ecfce54d8011baL, 0xcbe6972c8e83693dL, 0x1c9c5dc0e3639d60L, 0xfffffffffffffb21L, 0xe3639d6100000000L, 0x4de1c9c629fL};
-uint64_t A[8] = {0xf9e52a3c3d09587fL, 0x4df9d7e007e02f99L, 0x56b54f114a88d0ffL, 0x8bd26aa0267ffedfL, 0x28abcab71f0d0a08L, 0x41011586e26e500fL, 0x117b7425690e41d3L, 0x1877d8811bda67eL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x58c52a24bf37a598L, 0xd5ce51a94769c58aL, 0x62b10c024c8341ccL, 0x96effe7709bf553fL, 0xdd4e961f1fcea0a3L, 0x836311e81f9dc680L, 0x668c208000709f7dL, 0x50d2490674ccd613L, 0x17be28001819999L, 0xdfa512fa9ab23872L, 0xc6ee0bff0b3d275eL, 0x2f83920f7d04efadL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 99;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x6db39a636f0cbbdfL, 0xd182e2cd8d8b03f0L, 0xf7286f4c74854e0cL, 0xdffc59a35f4f6dd9L, 0x34e083ef1281110L, 0xf6fdf0dee31bec71L, 0xc70c9919ceb61a36L, 0x96d8ede2b8c84d3fL, 0x6e7d348f9182cb6L, 0xffffffffffffffffL, 0xf9182cb700000000L, 0x6e7d349L};
-uint64_t A[8] = {0xe22b104ad0f67420L, 0xbaf5500801638fa6L, 0xfe4601e2b5bf98aaL, 0xb2e97c5f8d1e0c72L, 0xa09a2ad2d0d67a2fL, 0xcf3cbad5d5c143a6L, 0x57b4042b9fcef2dcL, 0x2b55741691d9fe6fL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x9f43289880e4f548L, 0x679ef8bfab27e68bL, 0x52ca2582269a8dd0L, 0xdb0381d56470907eL, 0x4cad2cff25d403caL, 0x48c210205801abc2L, 0x319698eee0a2757eL, 0xd2a47f7831e43f2cL, 0x9c07bae6d84a7438L, 0xed1d7921dff93d77L, 0x66a61815c3532e5L, 0x7b63e6d6b0bd85fbL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 100;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xdceb8db2b7eaba7L, 0xedfbe268d5b1fa6aL, 0xa78bfbaa13685278L, 0xfb9c2d0488c171aL, 0xd7d34194c3628c13L, 0x43b7716bcc143a46L, 0xefde7ae6a4449c96L, 0xbf9e80899ae2b710L, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x82de615608c76a8bL, 0x9e0760f5e009de70L, 0x13dcc92f9c572952L, 0xce00bd446f820d48L, 0x47ec470393401b88L, 0x477a8089293b49a2L, 0x5c437d80ee42e88dL, 0x3e4356a607a49fe2L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x69051a44b059b1ccL, 0x91f893af0bc5b95aL, 0x1364981ee36e9611L, 0x80a042c0ba92622fL, 0xb2e23c9f3bf6f9b1L, 0x356f2630bbc25b41L, 0x3a05db80d5c0e088L, 0x34b4fe3476e47ad3L, 0x750fa87add48bee3L, 0xb00b7e8d0a57e405L, 0x6c50cd8588eed6daL, 0xbe46fa7426f5f62eL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 101;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xb9116811e6265857L, 0x883551c54058c4f0L, 0xf14601997e9349e3L, 0x9032299418429995L, 0x4b886945aa3399L, 0x3c4b7a5b3ef68b9cL, 0xab84ea6d3005205cL, 0x4f7cf2895cc20e58L, 0x3ffffffe3d8093c9L, 0xfffffffe7d8093c8L, 0x3d8093ca00000001L, 0x827f6c37c27f6c36L};
-uint64_t A[8] = {0xe7f5ba6f2554f427L, 0xdf48518b3901ff96L, 0xa828c36c1d4e879bL, 0xef6c4ca1424432edL, 0xedc19f099a5676dfL, 0x8bf2891468410bffL, 0x27cf306a14944795L, 0xb6efb4cd4463768L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x3f41888cd62e88e0L, 0x31668ab510bbeb58L, 0x35aeeebffd6ed52dL, 0xa39ccfcb004ef156L, 0x89237a023f37d63fL, 0xf0602a3cc0e00d7fL, 0x2aa91c179e457b82L, 0xefba2a817413082dL, 0x59c79387e970e739L, 0x6231eb02dd554769L, 0xf15c98f76253b79L, 0xeb1e5764ff5094dfL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 102;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x581b4711fdf2498L, 0x4a278686e1639607L, 0xaeaca9afd36b1afL, 0x64cfdc70d9453d29L, 0x435ac466954ffbb3L, 0xff6c1a78f9a2852fL, 0x20b021c3df219dc5L, 0x82290e253d61f6d2L, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0xadfeeb8858cee75fL, 0xb39892a238929f1eL, 0xd5a7b62826fe4135L, 0xf19b7e5353944d6aL, 0x7d6929a823d46fd1L, 0x821afc9c9cdfd923L, 0xb00c038dd1f7bbf8L, 0xa1625858237504b2L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xea8b63efa46a4712L, 0x1ec17c8433088f03L, 0x37ef6363f0b9364cL, 0x5d7d1fdbe64df580L, 0xf4658d92d9aacaadL, 0x7d64658d167fc51aL, 0xe38ecee4be9746eaL, 0x99ae2b200ee8e26fL, 0xa87d371738efc2c7L, 0x69710c1b572f0917L, 0xcabceb8d29c78f86L, 0x8ccba1e27a4f1041L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 103;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xbd427830aaad4bd7L, 0x195f0dcec28d3247L, 0x9181896bb258ecf3L, 0x421d124f57c0732dL, 0x3449b374e7e7b18fL, 0xc33a4b099ad0d596L, 0xcc31bbe49b99bd3L, 0xe54afb9740378d8dL, 0x50ffffffaeL, 0xffffffffffffffffL, 0xffffffaf00000000L, 0x51L};
-uint64_t A[8] = {0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L, 0x0L};
-// J nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xbd427830aaad4bd7L, 0x195f0dcec28d3247L, 0x9181896bb258ecf3L, 0x421d124f57c0732dL, 0x3449b374e7e7b18fL, 0xc33a4b099ad0d596L, 0xcc31bbe49b99bd3L, 0xe54afb9740378d8dL, 0x50ffffffaeL, 0xffffffffffffffffL, 0xffffffaf00000000L, 0x51L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 104;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xe1abc2a39faa2be1L, 0x88f546e453a47562L, 0xa33370ff19188215L, 0xeb371270902f1c9cL, 0x2a5c42a1f4e09a44L, 0xa6180de78c61cfc6L, 0x55cd92e3a75bc83cL, 0x8cc423f9246b6700L, 0x8d2d930f72d26ceL, 0xffffffffffffffffL, 0xf72d26cf00000000L, 0x8d2d931L};
-uint64_t A[8] = {0x793b80a73e500e39L, 0x3dc70d8c41726d51L, 0x327ba268cf29cc43L, 0x41754325b5ecc5aaL, 0xb9669b32568b37c8L, 0xbd6c661371ea683L, 0x73b527cb90a6ae1aL, 0xaa899fce49edefb5L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xbad43565bdd6ac36L, 0x8db07fc9e2d252ccL, 0xb8d337f993974a4eL, 0xa5fb25c5a9ba958fL, 0x633766b12ccf5ecfL, 0xcdfe98874f8a7c41L, 0x1625426dc9e5773fL, 0x7130640a28fb1105L, 0x42d06d763d38887L, 0x2909c6b0f3d76b2eL, 0x6ffefa5accc3ea93L, 0x4bf8aa0e3ef8efc5L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 105;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xf6b01fddbe143b2dL, 0xbb8465ed4fdb009eL, 0x838d84649b5c7978L, 0xc05f9fb7ded4c5d6L, 0x33bc1ba0e60395c5L, 0xea81a59184fa358bL, 0x5ac6be4767052241L, 0xbb2201ce71718e58L, 0x33d495ffc8993413L, 0xfffffffffc6dca13L, 0xc899341400000000L, 0x39235ec3766cbecL};
-uint64_t A[8] = {0x47b8c90e0ec452b0L, 0x8691f46ed9af1fa9L, 0xda120f3433f2d27eL, 0x160837d249afa40L, 0xe0053424c4c03fc6L, 0xabd0d5874b2e52adL, 0xe28134da897595edL, 0xc9d2fe827d859fdcL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x1825f2aafaf51b60L, 0xa308e73839a2c321L, 0x9ddfc12090798001L, 0x92b78db76707559bL, 0x592f1855f645075L, 0x6001e79ffdffd8a5L, 0x169fbb1ecf280b89L, 0x941b69d5a54870c5L, 0xccf88e8d75337bd8L, 0x55085ffbfa3cec33L, 0xd3a76a706000a13bL, 0x368e4264f0ea8634L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 106;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x87bb4fe2dc3244c5L, 0xea11b3af3bbc0d86L, 0x2adb0c558b5ae2ebL, 0x75b65b936f46b980L, 0x4065d35cb8b7f14L, 0x49e9f9abccad8c58L, 0x579ab34818287f28L, 0xa038b4226b120ad5L, 0x2583ffffda7bL, 0xffffffffffffffffL, 0xffffda7c00000000L, 0x2584L};
-uint64_t A[8] = {0x5407a49b4faa0cf2L, 0x7eb23d3000f5ecf8L, 0xa2db87227dff4d2L, 0x6f0021dca8ee51c3L, 0x3e855bd6d766cb88L, 0xf50f8d1d5397f0dfL, 0xd0b1f024322e5746L, 0x3f859e44807206L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xf3b01e0f64bc3db9L, 0x4fbef3062444c7a9L, 0x87b060986f876132L, 0xd71417a19b0e590eL, 0xa564323c16577c24L, 0xc752e3ca44afd2d3L, 0xe6abe76c8be52d73L, 0xb86b8668afee8949L, 0x8bb0b0bf7291e910L, 0x5de24ba70cc0bd4eL, 0x38f38127533d94b9L, 0xa683514bb8949a68L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 107;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x2745ee682fb8e477L, 0x557aa0f995deb12fL, 0xdfa1a3cf77c346b9L, 0x4158f80c85a37d1aL, 0xa669f71c5661865dL, 0x2ce99e65dbf40e1bL, 0x1cb16338209e6889L, 0x9f3a8add5f09020fL, 0xbe1bffff41e3fL, 0xffffffffffffffffL, 0xfff41e4000000000L, 0xbe1c0L};
-uint64_t A[8] = {0xe22b104ad0f67420L, 0xbaf5500801638fa6L, 0xfe4601e2b5bf98aaL, 0xb2e97c5f8d1e0c72L, 0xa09a2ad2d0d67a2fL, 0xcf3cbad5d5c143a6L, 0x57b4042b9fcef2dcL, 0x2b55741691d9fe6fL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xa4d70907c301ae0eL, 0x1c2859b92a0a6c55L, 0x60301a6c7ee5ca1L, 0xd5c868bb7922ce5bL, 0x325253ea3380c6c7L, 0x58dd793c9a7421f9L, 0x2e4a97bdbd494919L, 0x926025d1387cee0dL, 0xaf95a5fe87adb9caL, 0x6e906a91b63d1c15L, 0x6212449fb5ebb030L, 0xf31d69a2a95bf18fL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 108;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xc9b029414eee11d7L, 0x4c02343eaefd62d8L, 0x9c0a908bd9a72ef9L, 0x15b349fb322ef9fL, 0x4b355c4104f6ef46L, 0x9243502cab9904bdL, 0xfe4b65513f282becL, 0x7be57cf09dd05826L, 0x797fffff867fffL, 0xffffffffffffffffL, 0xff86800000000000L, 0x798000L};
-uint64_t A[8] = {0xbc2905fdc2c72f52L, 0x67f5f05fcd47bd28L, 0xc4a70bcc9535ceL, 0xea9479cf0f52d533L, 0x4ef0c2e2a7fb0657L, 0x5d1379f69267bcedL, 0xcc5ccf9a29159b0eL, 0x6febb404d5e365f5L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x70f82cc0e789ab1cL, 0x11dc33e078d9be38L, 0x9b1a330ec2ecffe3L, 0x3df58109f7967fceL, 0x700c5cb1cae4fb39L, 0x32e6d1c1c01317ceL, 0x13f42e26e236cc5dL, 0xe303a0c6d181ec27L, 0x79e0052addd9ab69L, 0xc53d01ae5e9acc39L, 0x3b77ff922b24039dL, 0x8e222bdc4b6737c6L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 109;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xe0c12b2dbeed5c5bL, 0x8108260116b78d80L, 0x131596dc63f64aceL, 0x7fb1cfb3d4fdafbcL, 0xdfddff200ed201c0L, 0x932647f0da10de85L, 0xc7295a0d60dc45b8L, 0x135f7ac4a8fa30afL, 0xfffffffb655c0000L, 0xfffffffc655bfffcL, 0x655c000100000003L, 0x9aa400039aa3ffffL};
-uint64_t A[8] = {0x5407a49b4faa0cf2L, 0x7eb23d3000f5ecf8L, 0xa2db87227dff4d2L, 0x6f0021dca8ee51c3L, 0x3e855bd6d766cb88L, 0xf50f8d1d5397f0dfL, 0xd0b1f024322e5746L, 0x3f859e44807206L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xc8e2daa96d7f9460L, 0xccf12c0ee6c63a3fL, 0xb75d25a661a975e3L, 0x63ec46f84f29f694L, 0xacea2fd6d6ef52ddL, 0x644c17168e404841L, 0xc0fbf0a1a0ce6369L, 0x332fa44864743f85L, 0xd93a1d82d58bcab4L, 0xcf68ff78d8730dbdL, 0x8edddf81c6819f3dL, 0x992eded4e7130034L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 110;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x18905f76a53755c6L, 0x79fb732b77622510L, 0x75ba95fc5fedb601L, 0x79e730d418a9143cL, 0x8571ff1825885d85L, 0xd2e88688dd21f325L, 0x8b4ab8e4ba19e45cL, 0xddf25357ce95560aL, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x34388d1781c06c9fL, 0x6bab4b917ad416d4L, 0x69e8676b0f741fb9L, 0x644183540e13bc56L, 0xc9e365086ce5a54dL, 0x25a1220971c2ab59L, 0x6b3a5852142b9a43L, 0xaa73fe0d6ef970d3L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xfdc4477ad9dc0544L, 0x275b2d188625411dL, 0xf157ef0baba4fe6fL, 0x67ba6eb282e190e9L, 0x92dc4322d5b45176L, 0x1027eeef72203c81L, 0x8d1046406b79aa82L, 0xc216cc89b0206582L, 0x1ba82da0dc8916d8L, 0xf1afd8660371f1c3L, 0xf42dd16eaf8669b7L, 0xea5a527ff56aa81aL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 111;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x9f923fe2d79925afL, 0x1b12275f940da0c7L, 0xf875a7da5d23c27aL, 0x5a116150e224c725L, 0x6beb53017d64542L, 0x87efc838c1529768L, 0xfca8a670397d9890L, 0xfa6cb3747f36ffa4L, 0x270fffffd8eL, 0xffffffffffffffffL, 0xfffffd8f00000000L, 0x271L};
-uint64_t A[8] = {0x316af5adbef1bf81L, 0x54fba1ffda268305L, 0xc880111a38792291L, 0xf2eb9417f1449b28L, 0x5238b7e0a70d7329L, 0xdca43f3c543f2e22L, 0x46c383c3194ad95L, 0x9b1496920dedc1cdL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x73ae5d645c58d9f8L, 0xde930cd98889c5e4L, 0xaaa1f25954742c1dL, 0x2f0de95e42862162L, 0x53dc80c5c8fdc0dfL, 0x1a0a47b9ca1d5322L, 0xdb3fc78d7fa035bfL, 0xcdd4d9c3656e7c5eL, 0xcdc07e2579066d44L, 0xc0f9590b2df0080cL, 0xb5f0cdf283b00189L, 0xf14bd41eb79b947eL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 112;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xd50dc084defb805aL, 0x8f51dd4d85a781ffL, 0x4438773c13795527L, 0xc0bef4625d03851dL, 0xe7a3d2e4cbf97b91L, 0x206dfed75efccdbL, 0xadde3b37f6c350f6L, 0xd457da8369da4af8L, 0xcfdce7683023183fL, 0xffffffffffffffa8L, 0x3023184000000000L, 0x57cfdce7c0L};
-uint64_t A[8] = {0x81d4d67d5303aa9L, 0x55d6984e2ed8d949L, 0x9ea7ce6365f0934aL, 0x69b60cd9343b297aL, 0xa916a98dc09558fbL, 0x4a43bfd951bdba86L, 0x6c7cc30329ddb815L, 0xd6b16ee90d413600L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x94040bdb95b1b956L, 0x35978e23f8c51c6eL, 0xb89fcb01a4b5175cL, 0x8ca69c916af16611L, 0x4cff2f5ef67a1e12L, 0x198914de0e6b9b32L, 0xca6ba2784a0c7adbL, 0xe70ef40d25d6a3cL, 0x82f6ed8284c87ddeL, 0xb398cc9ffdf8124cL, 0x857e2269c8f32bdL, 0xae7b7aa5bd2c87b9L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 113;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xe0e95f6d008e5979L, 0xd3a597f3e4a1bc9eL, 0x78fde1043cc46f20L, 0x11974e8d4f084287L, 0x73147f1e375f2e2fL, 0x46281a77a6a25ae5L, 0xea832be5bd6141beL, 0x4ac12b4cb43fe513L, 0x2751afffd8ae4L, 0xffffffffffffffffL, 0xfffd8ae500000000L, 0x2751bL};
-uint64_t A[8] = {0x63af8e6acb5e0ec6L, 0xf5834e0608329635L, 0x7d92074554ff619aL, 0xf9d2ee75a94e1debL, 0x50cb1436548daf85L, 0x7f722a578b70cebfL, 0xd6262937c36d4cebL, 0x639d60d651bee1e8L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x46d4d45aca25fa14L, 0x7341d394e10ad3e7L, 0x37422db35727a3e9L, 0x5f4809d837787d43L, 0x38c0ae759361ac81L, 0xf5744721ad0d711dL, 0xcc8040845e096f14L, 0x9675c939bf49ceb4L, 0x3057ccfc678b5d6cL, 0x8f0aa7a3e40d1d4eL, 0x28c183b0459bdbd1L, 0xde487805c86d2ed9L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 114;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xdcdf70add40ae53eL, 0x9c62eb9bffef44eL, 0xda55ce8722b7dad7L, 0xde1ca668cbf66dc9L, 0x61d0237c2546ec44L, 0xe484652185c64813L, 0x56a6d8962ed779f1L, 0xf4ee63dd47c90316L, 0x3cbfffffc33ffL, 0xffffffffffffffffL, 0xfffc340000000000L, 0x3cc00L};
-uint64_t A[8] = {0x57fcaf64b5e8d6dbL, 0xf670e79ac97efbdcL, 0xe12253fbdb991b94L, 0xa928a6d84768c868L, 0x1d94d6153c3e2656L, 0x2085b6e8694a3819L, 0xea05005e197a2805L, 0x8004d784b244753L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x31b95a011bcf9bcbL, 0xc8d0a421668a0e73L, 0xdcddaa6646048fc1L, 0xa4ba89f329fcbc33L, 0xde648856b19f0f7fL, 0x42a8f77fcd1e91f3L, 0x8473c4a49baede0bL, 0x7d91cdc8cfb7524fL, 0xa6e3795ddef9bc23L, 0x35a72d5bfc9f56f1L, 0xb4264ac43a8d2073L, 0x9bf06e921743b854L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 115;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x6529bb1744faf6c7L, 0x647710d5b2b71677L, 0xe17c94ff563f3ddfL, 0x1b8774b55993a6c0L, 0x9ada069be8bd049dL, 0x543c6b713a44afdL, 0x8062dc992f2f5526L, 0xe1fd560b6324cf26L, 0x797fffff867fffL, 0xffffffffffffffffL, 0xff86800000000000L, 0x798000L};
-uint64_t A[8] = {0xbeab1712a6b7b41L, 0x4cf00f7286986417L, 0x7e5fa880503608e3L, 0xdfb258a6cecf99a0L, 0xb0bd6b72114b64bcL, 0x1ab4e30f608fb025L, 0x7ab0590d97c21cdcL, 0x7cca0f74c4dd4a53L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x14ab9015b5088bfaL, 0xaeb1a22536a03a67L, 0x33ca3366cb35e2a1L, 0xd3770ccae72a7713L, 0x9f1d128df469eb8eL, 0xcc72c89232b25622L, 0xf6bba894afaf5ec6L, 0x62bc3dfb566f039cL, 0x9530d0c41ca79eceL, 0xb7ab65aab0e502d8L, 0xce30ff6fbddc9f7fL, 0x30ce7a940a522439L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 116;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xa3ba006a55f481aeL, 0xcf0b428e2cfdc4L, 0x2e317c0ed650d9feL, 0x697423792923a889L, 0x379bfd8e39294774L, 0x8ea11389be55b98fL, 0x1fd31b2c57a2da87L, 0x1d42004b66404980L, 0x17c37fffe83c7L, 0xffffffffffffffffL, 0xfffe83c800000000L, 0x17c38L};
-uint64_t A[8] = {0x9327b0e9666b1242L, 0xf5f3ebfb4d392c57L, 0x7304174a87d08095L, 0x6869c3bcf7e94bb7L, 0xc3c5a8ebeeb43c51L, 0x3ce9943ebc307220L, 0x8fe1ecf0cfcb6406L, 0x710e6e6b5594a88L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x1716f42b5d4a573eL, 0x3428d20980fa28efL, 0x45baba522cfed2ecL, 0x17f24d858b871502L, 0x25c4014d1145bcfcL, 0x812d06c08b1d22a6L, 0xabc2cf9370d9cc82L, 0xd1dc76f0337f85e7L, 0x5756b4f7facd2b0dL, 0xc3c1ebfccdc4ff8bL, 0x792d3623b0ebc408L, 0xe5e5d71952bc6f8L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 117;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xdf2a4e99987db828L, 0xd707aeea6fe330aL, 0xed8a6b41ba301cc8L, 0x53b2a120fcfe20e3L, 0xa75b19f0fe497fb2L, 0xb5b5fac1144295cL, 0x3b69af2ce9230027L, 0x47af04f55dca93b5L, 0x55ffffffa9L, 0xffffffffffffffffL, 0xffffffaa00000000L, 0x56L};
-uint64_t A[8] = {0x63af8e6acb5e0ec6L, 0xf5834e0608329635L, 0x7d92074554ff619aL, 0xf9d2ee75a94e1debL, 0x50cb1436548daf85L, 0x7f722a578b70cebfL, 0xd6262937c36d4cebL, 0x639d60d651bee1e8L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x1e2a9c61be1b01a3L, 0x51a204fe96f27a6bL, 0xc856b54e56edd300L, 0x2d31761544971c60L, 0x76a0ee761862d598L, 0x5cd1578fd8ec42fdL, 0x22f8ff7b9896bb36L, 0x72a9b0fc66de227L, 0xa9ee2c4f2cfba7b8L, 0x533f8ef39e231083L, 0xb0bd3ea0ea8c08caL, 0xe90923918352ba79L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 118;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xbb57e641a084ca8eL, 0x5d9528e035fb386aL, 0xc6c5dfb13f1234f0L, 0x3ed3b21fbb787ea0L, 0xa272c2520f433b5fL, 0x785d23260f1c41bfL, 0x1d9e322c34490dd3L, 0xcb0a2ba5679c519cL, 0xa4ff4f78390e0ffdL, 0xffffffffde0d5f76L, 0x390e0ffe00000000L, 0x21f2a089c6f1f002L};
-uint64_t A[8] = {0xb79d949f7b27bbcbL, 0xaf2202c54f992674L, 0xd57c98ba98761d7fL, 0x2356181a763213c8L, 0x7007ce885822defbL, 0x3926281c4c80d90dL, 0x98b5c0d828160994L, 0xd2d05e64d4f0b73L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x285637c317004706L, 0xe9b19c5e28c09705L, 0xe1534e17bf4fdea1L, 0x1c8e7c32f4d21388L, 0xd81027bd70b99f47L, 0x1652a1a1d392382dL, 0x9a4ab02a72f49c36L, 0x5ee409ebbc7ba4c1L, 0xf70c825344967dc5L, 0x5bea517184de8f9bL, 0x679662741f37cda9L, 0xbdff09debe16cb58L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 119;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xfd6717db76f64df5L, 0xed29e18df77cab71L, 0xabbbb68402582479L, 0xb5ec2bdd5b613dc4L, 0x17096dd3687f13baL, 0x5b6d19eda2a78bffL, 0x1e3a1231b7a1bd93L, 0xba70d6773603de6dL, 0xfd0907b002da0ca7L, 0xffffffffffe31458L, 0x2da0ca800000000L, 0x1ceba7fd25f358L};
-uint64_t A[8] = {0xe94a016c3e489b9aL, 0x4c0dcd300855ca85L, 0xed8e08d20eebc2e5L, 0xb358109f2f4b170aL, 0x4b5123a73a5b4568L, 0x581e5ff924197743L, 0x9860cd99345cdd47L, 0xb3ac042d1ac3e740L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xa1804a77d3bf6a94L, 0x447d02533875977L, 0x32c5f6f4b703cb8aL, 0x4330a6530862d4d8L, 0xad119f4ae5a2f498L, 0x6b269d354fdcddc3L, 0xdaf83c60f3b4ba3eL, 0x4dbdfc91fa6301cdL, 0xc60008de7a788400L, 0xc014ef95debbe8cfL, 0xd364df1a3b2f8d82L, 0x3f1fd767e72578d7L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 120;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xd216292cbc9c1651L, 0xac7a891087057dd1L, 0x5280082234ab10b1L, 0x498205e3867f0c4cL, 0x4dce25378dfeecfaL, 0x7fbfd0fffc2418c4L, 0x39c662bb67c204b2L, 0x907ad2d314f07741L, 0x5f06e5ffa0f883bcL, 0xffffffffffff69bcL, 0xa0f883bd00000000L, 0x96435f077c43L};
-uint64_t A[8] = {0x3928c1c106f509cdL, 0x78606717982d7933L, 0xcd76320219721164L, 0x44a4548b2657625aL, 0x87fc58b7c9aa96acL, 0x4cd329009d86140cL, 0xaecf6bb41fcde04bL, 0xddf76dc6b51002f8L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xeb8ef5d57d54a6L, 0xd9d554eaf92e1755L, 0x45a67854641347cL, 0x600ad3763e53250eL, 0xfed5639ab1b532e9L, 0xf7c32358697e8e20L, 0x99b7b1b6db3fdc54L, 0xdbb71fb3c2384cb0L, 0x179fefdc067bf8b5L, 0xcba8dfe0bf9355c5L, 0xc1cda4924eec4f59L, 0x4749e803f300aac3L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 121;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x8764f0699d148ffdL, 0xed095a7728c0a63fL, 0x86bd67b50a9693a9L, 0x5b4bceb7322287a3L, 0x4f8535568876fa6aL, 0xc86be314cb98050eL, 0x9fd140759d8eca37L, 0x253c1d404d7d1714L, 0x9c80ffff637d6036L, 0xfffffffffffe6036L, 0x637d603700000000L, 0x19fc99c829fc9L};
-uint64_t A[8] = {0x7306bbb8a15a8e04L, 0x8f02d66c01def11dL, 0xd63291c8154a67e9L, 0x7c6e85f3616f1ccfL, 0x1e787b17c6e02971L, 0xa4194c68b7b0ee5aL, 0x48bb709e959aa2bcL, 0xdc645794566e4359L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xe1cc0f55cc666ce6L, 0x3e95832cb5ba1f1cL, 0x5b388eaa358d949fL, 0xee54570e6043c273L, 0x786737a27a39389cL, 0x52e5084dbb48af54L, 0x18d3c1b012f12d83L, 0xbfbb8785923103d1L, 0xb046d5a76b7db32fL, 0xcc6e239e5e857123L, 0xea5878f53c927868L, 0x3ed175c89848489bL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 122;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x4d13ad54d3ba5031L, 0x498be15dc423d8a5L, 0x7f18ec99da6c8d19L, 0xe6024ceadb766f65L, 0xf57223f8d8c75de1L, 0x2b6f92e1ea3f9972L, 0xb3ed630842c9540bL, 0x802cfb8bef253679L, 0xfffffffe6afd0700L, 0xffffffff6afd06ffL, 0x6afd070100000000L, 0x9502f9009502f8ffL};
-uint64_t A[8] = {0x49b2a0b16a395853L, 0x32092e494617dd75L, 0xce614c2f83c516f2L, 0x40afd261d2a96d7dL, 0x735fd9b0767a558dL, 0x7c83d9d9520a759fL, 0xf34063ae496cce27L, 0x4270a2bd4b257a7aL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x7eec0d6e52c60f2aL, 0xfb653b8584e1dcedL, 0x2f7fb1ee5fe58393L, 0xd1056459e47e49dbL, 0x93113f6e55fc1f84L, 0xefa86b4f47c2c0b3L, 0xe484e06cef685d6fL, 0xb63b2309399ed55aL, 0x722dd711cf7a8555L, 0x75213bb53ae48e81L, 0x8c0cfcb688a5c6c4L, 0x731296c38b5c2eb2L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 123;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x85df439b0f91a396L, 0xae7d41db211d958cL, 0x46f1e1474b49f5ebL, 0x6863c809402f3dc6L, 0x87b56054c6e337f7L, 0x65458cf0a938f3e6L, 0xa93325fc5e1e4c8eL, 0x65bc689934f3e4e3L, 0x37ffffffc7L, 0xffffffffffffffffL, 0xffffffc800000000L, 0x38L};
-uint64_t A[8] = {0xad8404a11b79aa6cL, 0x1d2617ed62ffc78L, 0x4eae27c831dccb8cL, 0xbe5e2550737095a2L, 0x4dc89bad3307af38L, 0xb1beed667e99fdc4L, 0xe114feaedd49af04L, 0xebaa1f3586a5d905L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x9af1a77eb0145446L, 0x2ae787ff735183bfL, 0x42db067e2ca13809L, 0xe72db9ba0e9c31d4L, 0x842f2a2e50cff16dL, 0xd7529214e94d9eb8L, 0x497e88c3ca18ae66L, 0x60c935ac50b30cabL, 0x7b92be8e9ecfd311L, 0x95db7a055811ac27L, 0x29af5d2b31455aa1L, 0x7229d351a6a4698aL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 124;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x6048fe2aa715573dL, 0xc31c471200e5e425L, 0x2ff45dfc31e2aa27L, 0x3820fec0a60b0402L, 0xd4f64a5344e3b4e0L, 0x30f5a09599f6afbbL, 0x3a5a2d952698743L, 0xf02304a8d6748fdeL, 0x2dfd3892d1fa7c83L, 0xfffffffffff7b516L, 0xd1fa7c8400000000L, 0x84ae92e05837cL};
-uint64_t A[8] = {0xc69a65ed2bb2bb03L, 0xbcc7ceec7dbd337dL, 0x3743415af6fb167eL, 0xbc15743652dc1267L, 0xa739a6188ae5a09dL, 0xb4825fa5e5d035a7L, 0x44096ce747e2c679L, 0x97b96633aab52fc5L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xe006d27235855c0aL, 0x656831f36a98bb9fL, 0xdf7949aaac93a110L, 0xf5da0e35fad76244L, 0xad5ee1414e0828bcL, 0x57398c3f156f5e65L, 0xa7f95e5e22e899f4L, 0x5ef57d37dba4ee72L, 0x28096a009ebafa1eL, 0xc7f8b914c6790c02L, 0x74fae152407004b1L, 0xcc6a62cc31f17560L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 125;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x8a054ee4a0fd4fdcL, 0xdfd652e57503df30L, 0xdcdf2cf6b4330202L, 0x446b1478939130b5L, 0x4b63a82cd006cad5L, 0x22d70d85d052767cL, 0xbeec377aca64f295L, 0x94334c0acd33d29fL, 0x34dc23efc7ab2e1L, 0xffffffffffc87520L, 0xfc7ab2e200000000L, 0x378adf03854d1eL};
-uint64_t A[8] = {0x254a4a3e09ba48fdL, 0xf5f9a498bf1bfdeaL, 0x7c18faa630900f7eL, 0x113542810b0284cdL, 0xe97fbab46827f334L, 0x5b7d6c595db8b18eL, 0x669025d6306e5844L, 0xee79ebb98c19a4cbL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x8cab4a122a5fae3L, 0xee6ba35c1ed62f7bL, 0x7a94c588520a2c18L, 0xdb7b556dee562cdaL, 0xbc7c6e7735b7bfdbL, 0xa5e8476b37360261L, 0xe2431fa62d28a98dL, 0x3033163d838ba521L, 0xdfbadd92348c4810L, 0x3e14ca552855990fL, 0x37969c7fd0221879L, 0x2468f3138bba43adL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 126;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xad725dd7e91225dcL, 0x7db9c09efdfc398bL, 0x600875e9b21032caL, 0x49221601dd7ddd1aL, 0xf03aa09ff36257b1L, 0x4493d1730970a09L, 0x8d677e6ca1bf0bdcL, 0x243ea0e757430233L, 0x6235f6ff9dca08L, 0xffffffffffffffffL, 0xff9dca0900000000L, 0x6235f7L};
-uint64_t A[8] = {0x13b094a94e0de8bfL, 0xc1192e9bebd3fd5fL, 0x4426583cc2bc2fcL, 0xe3874e85b10c271L, 0x721a3a6c6b0185acL, 0x5bbf5051314aa975L, 0x8a3c17181c4402cdL, 0xe4a2b66f3663fbf4L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x2d792f81cc1900e9L, 0x2be7930fa2590df0L, 0x650cce3c2e335c24L, 0xdd67486a34a9a58dL, 0xaa10bd2f61448b02L, 0x8249c091ee3063b8L, 0x5d08d1d87a26b846L, 0x490e98f1410dc425L, 0xae7c0084a51341dfL, 0x15c9b31002cfe98bL, 0x1e878f201697fedcL, 0x893488c206aba848L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 127;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x1eabc1d7eccc4074L, 0xe0b3b306b8be9db5L, 0x99a3fcedbf0457d4L, 0x5aedc77a768c0774L, 0xb05806d060d0314aL, 0x69173caadb12f3e4L, 0xc147e7fa527cd6a7L, 0x86e2014c8cc77778L, 0x4528a140bad75ebeL, 0xffffffffffffffffL, 0xbad75ebf00000000L, 0x4528a141L};
-uint64_t A[8] = {0x694ee4e9a8bd4f9dL, 0x77d335e552e3660cL, 0x523ce279ea653c2dL, 0xa16534739bad9f30L, 0x41c4e903744eda68L, 0x45a5457f2ba7c27fL, 0x578aa86076fcc7beL, 0x9a49e32de56a12e6L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x96b5d52b20042eceL, 0x43400dd67706b9f3L, 0xf7078ce133d56dceL, 0x55f6c761942c044cL, 0x84b52a04f00124c8L, 0xd9c774ea691dc9c8L, 0x1c90a81dec34ceb2L, 0x5fecbe76c3e5e6d8L, 0x39ac14caf6b18e57L, 0x8c94139e7a36c3fbL, 0x479dbdb7c3a8a03dL, 0x1c8defc6d3d0b252L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 128;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x699542c02205b526L, 0xa8c367a3e9e27836L, 0xd21a8b79ad7bbe4bL, 0x4813f697223f7706L, 0xdd9bc72ea1d490c1L, 0x2e6e25d723f3c4a6L, 0xd50bbd4780186240L, 0xed7891b504f33577L, 0xb964efff469b0L, 0xffffffffffffffffL, 0xfff469b100000000L, 0xb964fL};
-uint64_t A[8] = {0x75b1deedf1dd81cdL, 0xcdedb3ab8dbc1d6aL, 0x6dbc4191c033ef74L, 0x99e398a2a8ab239eL, 0xd3e74166fb4fadeeL, 0x2bc2d83bc7d27b02L, 0xae7a6c8895365a36L, 0x163852f12b5f7327L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x4a68d65450e607e8L, 0x77f0396799a95675L, 0xd1eb723528473a21L, 0x2abd0e4b2104aecL, 0xc173d4f54d07a8dL, 0x9e47941e180ec2a5L, 0x4c3cfae8ccfc9ccL, 0xfefd570672cf5c23L, 0xa86050c2e263817bL, 0xa97eea2b12deb97bL, 0xd91afb2ee278e002L, 0xe005684ebde7f697L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 129;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x619abcb9856aff78L, 0xf45f116f64ec7293L, 0xa14809aa7db8f7f5L, 0x8475d71a340b19eL, 0x2d60548fd075e0dL, 0x16f931f14a13e5b9L, 0x92abd9e41f4b1edbL, 0x6fa1886e95366e58L, 0x10229c36d370fe27L, 0xfffffffde3939a5eL, 0xd370fe2800000002L, 0x1c6c65a12c8f01d8L};
-uint64_t A[8] = {0x480dbc1bdb128292L, 0xf4403cdc248a5658L, 0x326307428f89526L, 0x3daf9a43c81445f2L, 0x40613619d75d53bcL, 0xb13f2e85b503b962L, 0x725f5a062297d5b0L, 0xd4276cd13fed7f56L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xc2cbb24832f3915L, 0xed89af5b7c0992beL, 0x64acfec3f5ffdbbbL, 0x3b5c7fc5e4e32b17L, 0xded609d8d88d49b2L, 0xfa10aaf89b4acfacL, 0x6a4f4886a1efafa4L, 0x171c56fbdf47fb98L, 0x647a7cfc86daa09aL, 0xfb5d2bc97689b743L, 0x61315f16458af224L, 0xc45d067ceb4568e7L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 130;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xd23700fe1a5e02e4L, 0xbfc6db91990aae4bL, 0xa73c6a728eb5fc5bL, 0x9c8e11d318feef0eL, 0x6d2cd9ead8a6c903L, 0xe29a07b96c38a67aL, 0x39def8be8cc0e058L, 0xed5bf9d21aae3ccL, 0x95eecfff6a112L, 0xffffffffffffffffL, 0xfff6a11300000000L, 0x95eedL};
-uint64_t A[8] = {0xadfeeb8858cee75fL, 0xb39892a238929f1eL, 0xd5a7b62826fe4135L, 0xf19b7e5353944d6aL, 0x7d6929a823d46fd1L, 0x821afc9c9cdfd923L, 0xb00c038dd1f7bbf8L, 0xa1625858237504b2L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x7ffc8b2821de9e8dL, 0x6de0af74e9d7b1b0L, 0x926d78f8b4abcd30L, 0x3f3d336f718e0fe3L, 0xd5a0893f584d7394L, 0x5203d9d6e505400bL, 0xbe7e6708ddc3721bL, 0x5b1f6f61af8b4c49L, 0xdbd3ae365db4c18aL, 0x8b7ea9db978143feL, 0x3d0c7b56aa95288fL, 0x58f543b80f29629bL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 131;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x4485df1cd35caa0bL, 0xc538f732b619a134L, 0xc66512c95d240fe1L, 0x621d4286c2ee5efcL, 0x79c42644e23f9492L, 0x92d0505a6987756bL, 0xac9e1ee44a6ddad3L, 0xeda1ed6e69ffa2f9L, 0x11ffffffedL, 0xffffffffffffffffL, 0xffffffee00000000L, 0x12L};
-uint64_t A[8] = {0xb79d949f7b27bbcbL, 0xaf2202c54f992674L, 0xd57c98ba98761d7fL, 0x2356181a763213c8L, 0x7007ce885822defbL, 0x3926281c4c80d90dL, 0x98b5c0d828160994L, 0xd2d05e64d4f0b73L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xbea7c873ee0396ebL, 0xaf3cc02c20581721L, 0x713f0b17c44b0066L, 0x7e2e7e0fdc79130aL, 0xaf2691ab63655718L, 0x8303fd48f513e185L, 0x128ef6d72b3c11a8L, 0xf71485de49395c4dL, 0x2c783178c4aa3307L, 0xe0cdbd6c8b26bfe9L, 0x8b5bf866b646da84L, 0x1b466d5af01006daL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 132;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xe05b3080f0c4e16bL, 0x2cc09c0444c8eb00L, 0xabe6bfed59a7a841L, 0x75c96e8f264e20e8L, 0x86659cdfd835f9bL, 0x2b6e019a88b12f1aL, 0x56af7bedce5d45e3L, 0x1eb7777aa45f3314L, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0xe94a016c3e489b9aL, 0x4c0dcd300855ca85L, 0xed8e08d20eebc2e5L, 0xb358109f2f4b170aL, 0x4b5123a73a5b4568L, 0x581e5ff924197743L, 0x9860cd99345cdd47L, 0xb3ac042d1ac3e740L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x19b2a67a3ce970f5L, 0x14774ce11f6a6617L, 0x752421ee03d61f15L, 0xd0cb7d9857b7ae3aL, 0x1eaaa222d4e37f76L, 0x69f0bc821080c4cL, 0xbc2d7fd4e51bff6fL, 0x4f83d3b99660a000L, 0x8eed0eb4d83ba2fL, 0x1f4d312bc38cdf85L, 0x41a748e4b5441aa4L, 0x3d8ea21008fcf622L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 133;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x9027be1378bab499L, 0xbfdca21d08c7df97L, 0x7ffdbe1cb29888d8L, 0x334aaabfe2233009L, 0x2295b92c55f98aeaL, 0xe0622b4677cdff9fL, 0x16696f94bc41383bL, 0xd006e604c743e5ddL, 0xcf7e8dff308171fbL, 0xfffffffffffffffbL, 0x308171fc00000000L, 0x4cf7e8e04L};
-uint64_t A[8] = {0x76548399d85ace5fL, 0x70a82d4017a5e8e3L, 0x76ee5bb938b24a69L, 0x7b3d5bcaebcf2c1aL, 0x6e1b7c097bae3101L, 0x28fab9cb4527dedL, 0x1395eca430a44026L, 0xffa0b8e0cfa7cddaL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xb43a151803634d77L, 0x4cf46a28d8072fcL, 0x15659b4be34521bdL, 0x12cf1ec3af915effL, 0xf6a81f388096bceaL, 0x877afbea92e9b5e7L, 0x5b9dd55ce1858cd3L, 0x744211ea959e4443L, 0x9034786e5b1a8e37L, 0x50c1e66e1cfc8257L, 0xd4ffec06adf2c92aL, 0x976a37d530cb9f73L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 134;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x4b969974eba78bfdL, 0x6b20afec715af2c7L, 0xa624fa936c83906L, 0x283c7513caa76097L, 0x9bbff86e6dddfd27L, 0x4819d515ded93d4L, 0x9b944e107baeca13L, 0x220755ccd921d60eL, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x1194785fc0ebd864L, 0xae08dba305d1c30L, 0x637a496883bf13e0L, 0x1e59d7ad07931b9L, 0xfe138e7c3a8da79fL, 0xfaa2ea66baccab45L, 0x46610f593244345L, 0x990198536bb2cc87L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x268984e8bfbdb45eL, 0xb68de9a874012eafL, 0x216a5d194f9708a9L, 0x7030a56ed4e5ec1aL, 0x13df7a68009254a7L, 0x744febdcb99e2e76L, 0x27810f9a51fe9523L, 0xd1a6892ad65d48c8L, 0xc5fddee9d5444c67L, 0x9fbfddcdbf022969L, 0x5917f9c04cf6dad9L, 0xd9a9286705d1d121L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 135;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x3a707e90687d1b06L, 0x93c65a752a208afcL, 0x94789a0863d56ca7L, 0x5afd12a37d56dbd6L, 0x7372b23b09de2d51L, 0x8ccfb2f077954588L, 0x8222adbc119bb6bbL, 0x9fbd4e9fcbf7d9f1L, 0x19a0ffffe65efffL, 0xffffffffffffffffL, 0xfe65f00000000000L, 0x19a1000L};
-uint64_t A[8] = {0x1ac9b3b95c98837aL, 0x8d80cea9a6380e97L, 0x68b05abd2b4c70a9L, 0x1297113175774cf6L, 0xf9b38f9d5ef51755L, 0x5566e3f4088317ddL, 0x279b1cdeee4dfc85L, 0x58aecf8f412543b5L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xbc1343775d00a2daL, 0x9148c4dea8f74874L, 0xc88dfe936b40bcc0L, 0x3d59a9d214daae5cL, 0x66b307ce9b83fb26L, 0x4f9c4ad381918361L, 0x47887cb08cae9b50L, 0xa7bf7f6deb2f1becL, 0xac99b6626bc74118L, 0x818fbb41e8725333L, 0xd47799c152c51d1bL, 0xae9e298f0f854d53L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 136;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xd4b3f7d687f0eea3L, 0x6eb032cd013c6b44L, 0xc14002ace0c52973L, 0xedc51f7a7005077aL, 0x4884fe5c88123f77L, 0x2bdeb38e95fa9aacL, 0xcdaa3e08ed62b802L, 0x7f85b0e3b519a7bbL, 0x16c7ffffe937L, 0xffffffffffffffffL, 0xffffe93800000000L, 0x16c8L};
-uint64_t A[8] = {0x1b8e99ec73674fd0L, 0xdd2db1ac1c655c22L, 0x6961af51e2d8306bL, 0x8be27de7f56e210fL, 0xfb1256c27d874a2eL, 0x16f5d1e9cfdaa431L, 0x8fc19cbb4701173dL, 0xfbfe9539b70e2b92L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xed20310fb0957f05L, 0xe223d35bebc3efa9L, 0x649105bd059f08d7L, 0xbb4d31d046b12ca6L, 0xfc58157cd121bba8L, 0xf6e31f4adad95755L, 0xdf57065aa10c7c59L, 0x9811a1cb42769404L, 0x3fbce9e8baa4d711L, 0xbd97c97d239858a2L, 0x576bc96e0faec5a6L, 0xe1c0ee19f9f8b72eL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 137;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xa0a7e915778804fbL, 0x9e406c8ab737892bL, 0x7f39ea79842d63adL, 0xa599b6cdb16d03c5L, 0xa4d38b8fdb4cbcf6L, 0x5331a0f8643d13c8L, 0x84bf095410b3726dL, 0x7f5703b730df8657L, 0x24c0ffffdb3eL, 0xffffffffffffffffL, 0xffffdb3f00000000L, 0x24c1L};
-uint64_t A[8] = {0xad8404a11b79aa6cL, 0x1d2617ed62ffc78L, 0x4eae27c831dccb8cL, 0xbe5e2550737095a2L, 0x4dc89bad3307af38L, 0xb1beed667e99fdc4L, 0xe114feaedd49af04L, 0xebaa1f3586a5d905L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x8c2d9bca9e660e3bL, 0x153c12709c511bd3L, 0x6dc74c5d56d266f6L, 0xa4344fbe7ea3becaL, 0x5491488889769c6eL, 0x3fa8733855f49f0fL, 0x9131fe15e087833cL, 0xbd0d21fa112d18e8L, 0xa12a1840970f9452L, 0xa1d2cb56a4fa9cf2L, 0xedc4406f84de5e9fL, 0xac3cf5715f483262L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 138;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x469f7b9e0ec598ceL, 0xcbef2055f11abbaeL, 0xf500ec13afd839cfL, 0xba48cdf9ab862f82L, 0xdcb4e18ce5653d9cL, 0xa6990ee87d3d6a43L, 0x8485ce46cb29c1fbL, 0xda1a168f7154d61fL, 0x75e1357f8a1ec302L, 0xfffffffffffff882L, 0x8a1ec30300000000L, 0x77d75e13cfdL};
-uint64_t A[8] = {0x80a698c8975ead83L, 0x90db4fbacc824d66L, 0xe3c23575a8e79d32L, 0xe8f79d0c8916774eL, 0xc07e51672184d151L, 0x5c15e89541c00f8dL, 0x49fa74271f568f63L, 0xf0d5282b6039e3a0L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x8a0e172e1bd6030cL, 0x1f3cb532f04f5e91L, 0x4da1bf6c06eb61daL, 0xb5d022d2e972d2e4L, 0x9bdd085aa4a0d73aL, 0x5868d18b82247c04L, 0xe2079f99b7da0ec9L, 0xb5d5e549fa0ba494L, 0xc0ab1f7adf6d1a2eL, 0x3e18bdf96ec45cbaL, 0xc511df517776d730L, 0x8b53a7aaac498a35L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 139;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x63cbc81edab3c39dL, 0xfc68133ee6391fb0L, 0x76edc081aab5f779L, 0x620db96ae4901c68L, 0x2465824d63cd3c97L, 0x1eebe65f0f223d17L, 0xd2ece0b4e96f06ddL, 0x31cc7cfaa0b838efL, 0x8fffffff6ffL, 0xffffffffffffffffL, 0xfffff70000000000L, 0x900L};
-uint64_t A[8] = {0xc7ddf7864ac64482L, 0x80cb53c4c9ac79e0L, 0xb47cc1f1216cd550L, 0x1df4d36fc0aec63fL, 0x7c792a6f445611f5L, 0x7002065a567a0793L, 0x817c6261de6732b9L, 0x753e20a3ae511746L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xd29ffba5252b6077L, 0xed88c0ee776a31d4L, 0x46d457aade6a3a1cL, 0x71d8769a0adbb240L, 0x67b4a8fcd8fde65eL, 0x582e4926b64f8763L, 0xc4839fdc923e01d4L, 0x6d9ffe5a94750d61L, 0x7a0c95c215bb614eL, 0xb99ef0f8dfda1017L, 0x13434a13bf9ae9a6L, 0xc02cf0828f276a5dL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 140;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xe94f7d346d823278L, 0x1b1e8ae057477f58L, 0x32940b946c6e18L, 0x1ee426ccd5cd79bfL, 0xd73acbfe2cd9e6b5L, 0x772ef6dec7f80c81L, 0xc5254469f72b33a5L, 0xc747cb96782ba21aL, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x47b8c90e0ec452b0L, 0x8691f46ed9af1fa9L, 0xda120f3433f2d27eL, 0x160837d249afa40L, 0xe0053424c4c03fc6L, 0xabd0d5874b2e52adL, 0xe28134da897595edL, 0xc9d2fe827d859fdcL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x55ac55abd2066b78L, 0x5c4b4035e72e2204L, 0x16b59961e5283d57L, 0xdc3d35e982735eb5L, 0x4743897245424087L, 0xf1ce02509e7130caL, 0xf34a8ff5a99dd3eeL, 0x37d192e2abd6777eL, 0x5e694bd8a1422039L, 0x6b73698e8267a051L, 0xd9df7b299f866465L, 0xe27c5cb04ecd8080L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 141;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x985cea6fc03dacbbL, 0x98d44e502ee3897eL, 0x3947e7d055d2b50L, 0x7a9c3580299c0b1bL, 0xed778c1f13b3dcdbL, 0x5189aacaa7114b7fL, 0xacc151e98a31a32aL, 0xb6144842f71699eeL, 0x3a2f7fffc5d07L, 0xffffffffffffffffL, 0xfffc5d0800000000L, 0x3a2f8L};
-uint64_t A[8] = {0x6efa6bd995c6f13dL, 0x7569e3ebece891e4L, 0x5397ae9b8df4ab71L, 0xa57863aabb662998L, 0x9962f967bbe4fb12L, 0x26a08b12b08fe94dL, 0x8d9fe2a2db5bf5feL, 0x901a055991b40621L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xa4a3fab8d03448acL, 0xece0c7e33ae29b09L, 0xf977b67900d74515L, 0x6c1778aa2b6ac6bfL, 0x1ac99c7abb407b7L, 0xdb82b225331b1c18L, 0x9a5029be88bb695L, 0xc0bc388e7a476ab0L, 0x3089904606e34f07L, 0x91b2ac06fe699eeL, 0xe879795838adbc88L, 0x10f4d50c81edeb7cL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 142;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x624402d9ee328356L, 0xe241d8c53368010eL, 0x1df145170f4af4f4L, 0x1535126d48f0d2afL, 0x51ad7fed5427ce4cL, 0x4cee44686a65700dL, 0x6ced5c6441a052c6L, 0x8ee577a9c289b3b0L, 0x2dace9d8d25312aeL, 0xfffffffffffffc87L, 0xd25312af00000000L, 0x3782daced51L};
-uint64_t A[8] = {0x9b1d73d30c074c77L, 0x7066b28e4e81f4aaL, 0xc693f6041e7a86d1L, 0x571b9ffe1b1ce20fL, 0x146428ccc2a6d239L, 0xe739711ae0613c3eL, 0xcac27df8a27cf75fL, 0x4f08c45d910349ceL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x8920fa356c134d95L, 0x3ce8abe88f27b6caL, 0xdf74fb720fa00667L, 0xe56aae507c0deaa5L, 0x98a7596758cd42cdL, 0xed78d55caba83d6fL, 0x90dd05039f26c851L, 0x5666cc70d0e37f68L, 0x6befa62174fea206L, 0x1165029e17febcfcL, 0xbfc2a7705afd2640L, 0xb660ae88fe79857dL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 143;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x2abcae5bd8d312f5L, 0x48e1c4580b462b1cL, 0xe08c0ca5ea11770dL, 0xc8b6758df6b6cbddL, 0xe7ef5a7b0f0b3c49L, 0xf9b58178221b8e99L, 0xbf2f3b74a57bf57L, 0xc1b6e3fb22ff2505L, 0x1affffffe4L, 0xffffffffffffffffL, 0xffffffe500000000L, 0x1bL};
-uint64_t A[8] = {0xbdc3f5804558c906L, 0xbe50b32eac05abe5L, 0xabf8eec667de9f04L, 0x30c099e05035eac8L, 0xc2a65a2b6251ee57L, 0xaa1010f7e96e7986L, 0x9f80c4fdf2efb104L, 0x22e94574db40cdfaL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x3ec038ece9989df8L, 0x6d4a1d4f8fad738fL, 0x1526c718b986a4a3L, 0xdae74f7ada9b04b9L, 0x740feecee6c326d6L, 0x23345dea82c51219L, 0x9e0c711bb1f023bfL, 0x86ec1a91a268a1d9L, 0xefbe9a9cfb2508a3L, 0x6f1082b07a90fa9L, 0xb5d9124b81c4b0bcL, 0x3d38a3be1c3b4802L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 144;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xf6a0d541eeaf94c4L, 0x98ede67e35d60e4dL, 0xf6854c21d49f0e81L, 0xab6cf59c8d51c084L, 0x6a3092dd2e588f90L, 0xf98675a877100653L, 0xa3a37c8485b85ed6L, 0xf3f37d646dbc52abL, 0x16c7ffffe937L, 0xffffffffffffffffL, 0xffffe93800000000L, 0x16c8L};
-uint64_t A[8] = {0xf00d7f44b2f20021L, 0xfe99579267f76431L, 0xb1a0fe6b4bfe1d41L, 0xe195a18004d3be6aL, 0x571d7288cff1ca50L, 0x9919dc11de5299d0L, 0x7e613e6125db8f74L, 0x831ba6a0cd03d645L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x99e7bb5d06b8906aL, 0xbeea1f619d5bd816L, 0xa9edac5239bee892L, 0x7ec23d367ef05c6aL, 0x28309036df24c0a2L, 0xfac7fdc3ed0f09bfL, 0xe3b5e2820c28319cL, 0xef04e156af132d39L, 0x2cb0cdc4274e4a96L, 0xb942cf3efbd25469L, 0x9aa821f7a93a8c24L, 0xddcf679962e26281L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 145;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xbd88aca74765b805L, 0x3ea123446310eb5aL, 0x62d51e29fd54487dL, 0xc1ee6264a7eabe67L, 0x7150f87e7211e445L, 0x7ab49dd209f98f9aL, 0x640388f83b9fffefL, 0xb7b284be14fb691aL, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0xc9a5bd13954b9ca2L, 0x566feeb4d61328caL, 0xcfd7bf48e54e1acdL, 0xeb2603b57b7acd4dL, 0x7bcdd0ff094f23f1L, 0xcb8721ecb3ec12b9L, 0x9e4cbd67c300f661L, 0x31ccefd32ba4dc4cL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xa0228e62b65386c6L, 0x5e8c3b095e2b5d7eL, 0x205b27c6cd16150aL, 0x4220d2b7676a4604L, 0x5482d87c8da6eaeaL, 0x99158f0d6038e7a8L, 0x46a5ff4ea6ec67f8L, 0x444f7637ef0ced1cL, 0xc1d106c4de5e49dL, 0x17cecb7073023d70L, 0x6d02a11ee7f9d250L, 0x2937a150d3900ee6L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 146;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x85f708f13daeb8acL, 0xcabba876e7b85261L, 0x3e1f0fe041c49f28L, 0x5435fc73e47833f4L, 0x5cd3f846da3f0ecL, 0x86a81d067c1d17e1L, 0xbc84758af496f4aeL, 0xbe44742c39635213L, 0x8baa277f74559d85L, 0xffffffffffffc505L, 0x74559d8600000000L, 0x3afa8baa627aL};
-uint64_t A[8] = {0xbc2905fdc2c72f52L, 0x67f5f05fcd47bd28L, 0xc4a70bcc9535ceL, 0xea9479cf0f52d533L, 0x4ef0c2e2a7fb0657L, 0x5d1379f69267bcedL, 0xcc5ccf9a29159b0eL, 0x6febb404d5e365f5L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xac3700988354633aL, 0xf8b90e4c5f38b059L, 0x81849adc894f66a3L, 0x4f05ab1a873636aeL, 0xb0311444694be885L, 0x8349f222a63c27deL, 0xdd206251c15d175L, 0x4f6c680ba18e80a3L, 0xdcaa046e4fddea6fL, 0x69e611d2bcbc8deaL, 0xcd897fe037ac3d39L, 0x989c2d128c60addL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 147;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xd61a0fd503baab7eL, 0x82f620d3e6d45796L, 0x4b4284f5457f960eL, 0x786e91c5322dd81fL, 0x843389170ad09c87L, 0xd0f611c4511ad2dL, 0x1e94c7fb18c4e74fL, 0xec0b74af155f0fe3L, 0x816401c07e8e01f0L, 0xfffffffffff203b1L, 0x7e8e01f100000000L, 0xdfc4e8171fe0fL};
-uint64_t A[8] = {0xa5e6364e9e77bbcfL, 0xf24e320e9d2f7afdL, 0xb3ffad5da080cb89L, 0xa5b920c9addbe7d6L, 0xa48bc48eff5305b4L, 0x1e9ec8dc1f4abc99L, 0x83bed21da1311a81L, 0x6c5b6c794410eb82L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x569800f0ff446553L, 0x2580442cf1250ec3L, 0x65be6d30fe41477dL, 0x9394fb4a5717091L, 0xb848776cead0f082L, 0x3ef41393915b2a7L, 0x1a16f1d40e05fbb8L, 0xb7724725094cf56bL, 0x7540056588b6cec8L, 0xbd474f4592c0bcadL, 0x26c9415b17621de4L, 0x59ca25e4099b958dL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 148;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x650a582f60fecea9L, 0x615d44267ed012a7L, 0x257ab863ef51467dL, 0xd4126b96b7366529L, 0x28e8eb3e69242fb5L, 0x4c59598efbf5cd12L, 0xeacae38bbaa69cf1L, 0xcedbc503e9f4ba61L, 0x1d8ab1bee2754aabL, 0xfffffffffffffc6aL, 0xe2754aac00000000L, 0x3951d8ab554L};
-uint64_t A[8] = {0x46ed86f948a08edcL, 0x3f5b4c65383e91dfL, 0x8f4f9ba66ae7ead8L, 0xca5477de61ea9046L, 0xa091153d7642156fL, 0xc433ce04b59fca93L, 0x3b33c627d44fcef4L, 0x51c35033d6d90800L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x26da27b725e7d90dL, 0x6d8ea5a1b49c6267L, 0xea7c2149a7c6cc0bL, 0x1844d55f47b432b5L, 0x35afff20a4ed884cL, 0x8efe40016cce46f7L, 0x54d1fbe983b712ecL, 0x225bf513d24cbe83L, 0x3852aeb36bfb8226L, 0x79a43a09f2e813caL, 0x9a08dd59dd7a3460L, 0xf9e129deda72799cL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 149;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x19ad0bc3e23150f9L, 0x5a8088f5a828fefbL, 0x46e82b2919b15c00L, 0x9be15868bdba1ebbL, 0xee9da0bdd485b903L, 0x83d6e3b02348b73fL, 0xa797386711143a36L, 0x9e78855bf38afac8L, 0x6f300e9290cfef29L, 0xfffffffffffffdbcL, 0x90cfef2a00000000L, 0x2436f3010d6L};
-uint64_t A[8] = {0xc7ddf7864ac64482L, 0x80cb53c4c9ac79e0L, 0xb47cc1f1216cd550L, 0x1df4d36fc0aec63fL, 0x7c792a6f445611f5L, 0x7002065a567a0793L, 0x817c6261de6732b9L, 0x753e20a3ae511746L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xa83339fca8b4c2eL, 0xb9d7a1537c257aa4L, 0x84687ad3964f6614L, 0xe545867dc39f2bd9L, 0x27777101e0cc9dffL, 0x3eff4e8c632aa516L, 0xeb20f41ad71a8fc7L, 0x40ac8e528a8b25a1L, 0x12469fcf2a4c0e94L, 0x88b95f1de7d1a7dL, 0xf8770e002986a66fL, 0x1d5bed367ed0ae2bL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 150;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xfd34ec9f7a5cda19L, 0x414895d0fbbad412L, 0x7c1b7c24c12ebfd1L, 0xaae0296848c3f3afL, 0xc57934e5a5ebe688L, 0x6bf544af1164eed9L, 0x138f6551b8e0a725L, 0x3f4f06a02445489fL, 0x222bffffddd3fffL, 0xffffffffffffffffL, 0xfddd400000000000L, 0x222c000L};
-uint64_t A[8] = {0xb7b80a3b92f33f24L, 0xebb8c6eda66109f4L, 0x3d4e414d5ae125d0L, 0xfe4bac5d667b36a5L, 0xf91df8af155ce79cL, 0x36c0fc867a2482aaL, 0xc67961734171152fL, 0x7ed40f8766c8520dL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x77276921445834f8L, 0xce9c16e913852d75L, 0x44a29232e6c7d188L, 0xced1a746d1b3a8dbL, 0xd9da69122e23c2aaL, 0xacf96f2cdd3c1db1L, 0x83accf95eb8e6a3bL, 0x15f7bf17364bb3b1L, 0xbd1d31a56698ebb4L, 0x2d3b4afedaa0f643L, 0x979193bedeab8547L, 0xa929afded1cc6900L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 151;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x354162a229432a5fL, 0x27982f66a7ee78c1L, 0x64248557d660cf90L, 0x4dc586d6d36d0e32L, 0xacac2b6a9f4f3e54L, 0x97c59e9a93f6d175L, 0x80df11498db65a3L, 0xeb73dc2009e4fab6L, 0x6f90ffff906efL, 0xffffffffffffffffL, 0xfff906f000000000L, 0x6f910L};
-uint64_t A[8] = {0x254a4a3e09ba48fdL, 0xf5f9a498bf1bfdeaL, 0x7c18faa630900f7eL, 0x113542810b0284cdL, 0xe97fbab46827f334L, 0x5b7d6c595db8b18eL, 0x669025d6306e5844L, 0xee79ebb98c19a4cbL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x48daefd26ad99a6bL, 0xba1d1dd4685c55b1L, 0x75eb554dda5c705aL, 0x1add601104951c2eL, 0xb164592ec0a5cf6eL, 0x842cbf9ef4edc7f5L, 0xfe01e3401347dba3L, 0xa7c11bc5a35fe7afL, 0x6dedd67597030865L, 0x8f519be549923909L, 0xbb6f3e44e1b12778L, 0x78cbd0be8661731cL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 152;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xa5c68ac7c49da1ddL, 0xedc9fdfe17692190L, 0x797bd4feba7b6aa1L, 0x6e52ecc4b5867b11L, 0xd7b680b3b127a920L, 0x8ff72140e1d8fa24L, 0x6d51665c1811b30bL, 0x1896e2537be95c49L, 0x22ffffffdcL, 0xffffffffffffffffL, 0xffffffdd00000000L, 0x23L};
-uint64_t A[8] = {0x80a698c8975ead83L, 0x90db4fbacc824d66L, 0xe3c23575a8e79d32L, 0xe8f79d0c8916774eL, 0xc07e51672184d151L, 0x5c15e89541c00f8dL, 0x49fa74271f568f63L, 0xf0d5282b6039e3a0L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x987fc2d925e4d77cL, 0x5af45a88d8d3ab4eL, 0x5d1e849e0fd0e0e0L, 0xf05e55d49873cee6L, 0x5a88e783cc05a63dL, 0x2c55fbfbd1f026faL, 0xdbe0b12a62aa3c9eL, 0x7b2f2d0aab1848d2L, 0xd3919de29c20bc4bL, 0x27c4706c0fb9b842L, 0x8340fdd0bff5295dL, 0x6115438eb43cb53aL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 153;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x4df5b860297fb25dL, 0x21e265a503e6c90cL, 0x4b208816ae9209a8L, 0x7f656262b379dc98L, 0xe0117e7fa0f2f4f6L, 0x8a951cf34678363eL, 0x19629b0595378b3bL, 0xb2f71f2f09c59664L, 0xcb0fffff34eL, 0xffffffffffffffffL, 0xfffff34f00000000L, 0xcb1L};
-uint64_t A[8] = {0x9aa4819ec5eb4a3L, 0x843d527627103033L, 0x4fb6be2872eb797bL, 0x63408a083be2d806L, 0x2df5acb69dffcb33L, 0x7a7d39ea8034a362L, 0x63895b730257c52dL, 0x6f93d9ef8f89e6bbL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xb9fbbdf93263d0d9L, 0x76d971e544994053L, 0x9b14e10cd4bede06L, 0x6ab770db44c439f8L, 0xf404cd19a6092517L, 0x5e73b49ccfe6e389L, 0x47c7b996dc16b9c2L, 0xd9f7957ccc9f69ddL, 0x1365e0e74438a0e5L, 0x5e609101cc69cb51L, 0xf7181e73927a9ca5L, 0x28a4614debdb0029L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 154;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x430d5e4ab5df3c9bL, 0x8c670f48afd80ef7L, 0xd42a5d33e8bd2eacL, 0x75932b5a0ce3648fL, 0x85e8cb92559f6e61L, 0x1ccfe774a318b0c6L, 0x34795a2233dec6d7L, 0x7d1b46703772f037L, 0xb22552024dda664eL, 0xffffffffffffb851L, 0x4dda664f00000000L, 0x47aeb22599b1L};
-uint64_t A[8] = {0x6efa6bd995c6f13dL, 0x7569e3ebece891e4L, 0x5397ae9b8df4ab71L, 0xa57863aabb662998L, 0x9962f967bbe4fb12L, 0x26a08b12b08fe94dL, 0x8d9fe2a2db5bf5feL, 0x901a055991b40621L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x7bbecd8f39f6c882L, 0xd43c4f01561d5320L, 0x33bd5f239a08f73bL, 0xc6bf940a9514747eL, 0x90972797fe1a9ec7L, 0x24f68dba10266af8L, 0x17b017785c90023aL, 0xb580ae449aea5911L, 0xcec47528ffe48660L, 0xa55644ee23c91f31L, 0x97a0a83739a5cd13L, 0x83d3422ea8cedac8L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 155;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xbdd7be73ff3b0e26L, 0x483a800830026014L, 0xa0dd0f20cd3abdbeL, 0x608fb93c1344f04aL, 0xd5ee8291abda75bcL, 0xaf68241cc7940688L, 0x188b62a5f177006dL, 0x4ff03bf21c599f3aL, 0xfffffffefffffc00L, 0xfffffffffffffbffL, 0xfffffc0100000000L, 0x400000003ffL};
-uint64_t A[8] = {0xd0b0671131fd2990L, 0xc1ae39aec57d9af5L, 0xec4f42848208877fL, 0x8aa294eae8afb3c0L, 0x41079060e7d3e5b8L, 0x4b6bf603533d6592L, 0x995c19d2027b16b1L, 0x42451d855831a204L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x83d80ce0e75ed204L, 0x213bc6a96f70dfbcL, 0xc8d379b4496cb08L, 0x3fbf50f8415a112dL, 0xe34e4c8a3b34a89eL, 0xfbe135e5a90ac3c0L, 0x46d923d92baddcbeL, 0x9745f65fb955fac1L, 0x60956a17b3b0deebL, 0x587cee8ec90493e2L, 0xfa9017d241c673dbL, 0x6929add84ea50870L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 156;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xd704063841af3718L, 0x17451a4855ae0abdL, 0x6ba362cd8f942b7L, 0xf622bbe99af3e008L, 0xb760abbaaa20028bL, 0x5e16fcab8c57f2bL, 0x3c269d18e489d51fL, 0xcb011859d5a577c2L, 0x62ee7fff9d117L, 0xffffffffffffffffL, 0xfff9d11800000000L, 0x62ee8L};
-uint64_t A[8] = {0x47b8c90e0ec452b0L, 0x8691f46ed9af1fa9L, 0xda120f3433f2d27eL, 0x160837d249afa40L, 0xe0053424c4c03fc6L, 0xabd0d5874b2e52adL, 0xe28134da897595edL, 0xc9d2fe827d859fdcL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x8b173cda79c56159L, 0x783f2c4d8b24adc7L, 0x13ee9a90dd09509aL, 0xd5e5e4d9bf828cedL, 0xfa8901e477a15e2dL, 0x91e695c255b17872L, 0x3ab9deadad1de3bL, 0x79067e497ae74094L, 0x3864e708bb04e63fL, 0x9dc461692d0c3961L, 0x65ea2460be9edb44L, 0xa2091c9f7c5759bcL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 157;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x140d71d599c6d82bL, 0x5a0a0d39221c2aecL, 0x8d76ad4dc584b883L, 0x1e2319958183997bL, 0x3649592ae59617dbL, 0xd282794361c65305L, 0xd80809f453141b07L, 0x95a6c20d067df35dL, 0x6d1c23889212b511L, 0xffffffffff2ed89aL, 0x9212b51200000000L, 0xd127656ded4aeeL};
-uint64_t A[8] = {0x7306bbb8a15a8e04L, 0x8f02d66c01def11dL, 0xd63291c8154a67e9L, 0x7c6e85f3616f1ccfL, 0x1e787b17c6e02971L, 0xa4194c68b7b0ee5aL, 0x48bb709e959aa2bcL, 0xdc645794566e4359L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xc5421421bfcd1ab2L, 0xc1232cb0f1c22dd1L, 0x4b797085d609844dL, 0x72f7730db995c297L, 0x87a75f21f419c3f0L, 0x667a49f63c88d528L, 0xe8cff97c26e664dL, 0xf1b076d521a6c61fL, 0xffe52007a973c1c6L, 0x69fff72436c15b9eL, 0xeac7679285b6cee7L, 0xa65fe36553d9ea68L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 158;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x70f47512bb149c73L, 0x4122af86feb3e0eL, 0x93b884c10bf07590L, 0xc15e092f3a34f218L, 0x31e06b000a35569dL, 0x8dd58316004fc627L, 0x79b45dfe152d7c0L, 0xc0565572332988d1L, 0x2914ff36d6eb00c7L, 0xfffffffffffffffeL, 0xd6eb00c800000000L, 0x12914ff38L};
-uint64_t A[8] = {0xbeab1712a6b7b41L, 0x4cf00f7286986417L, 0x7e5fa880503608e3L, 0xdfb258a6cecf99a0L, 0xb0bd6b72114b64bcL, 0x1ab4e30f608fb025L, 0x7ab0590d97c21cdcL, 0x7cca0f74c4dd4a53L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x767bb32509c7bef8L, 0x347f67201c3f96caL, 0xf18d83a6906d0ed4L, 0xf6cdd7e20cdeb6e2L, 0x5cffe68221ff0fbeL, 0x90309afb1ca897feL, 0xe74305976d588a47L, 0xa47f154e01acd14eL, 0x606a2510ede13a8aL, 0xc1e649b3c8a14c29L, 0xcdea82e78b569cc7L, 0xa51eda5781a82c21L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 159;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x611af540de4573dcL, 0x5cef2645ad0a6f76L, 0x97e6b0d8a00f7cefL, 0x4bf333748c4c1935L, 0xa5cca9b760d3667bL, 0xef594ebab50a370L, 0x3ea442ae22f5bb23L, 0x6f833d2ec1cd4485L, 0x46307fffb9cf7L, 0xffffffffffffffffL, 0xfffb9cf800000000L, 0x46308L};
-uint64_t A[8] = {0xbdc3f5804558c906L, 0xbe50b32eac05abe5L, 0xabf8eec667de9f04L, 0x30c099e05035eac8L, 0xc2a65a2b6251ee57L, 0xaa1010f7e96e7986L, 0x9f80c4fdf2efb104L, 0x22e94574db40cdfaL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xdb09c264c62b6407L, 0x963988e779e578cfL, 0xb9ef7d0aff0bf0bdL, 0xc99a645965f65df4L, 0x9a68a3a2ff308635L, 0xe19c66fac477834bL, 0x4a07e93fd684835eL, 0x34c7c52890e9353eL, 0x288e429218a826eeL, 0x9e33315ab0036b9eL, 0x912d377f2e8d7ba9L, 0x8e5353a47fd33439L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 160;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x54955d0abd6784f1L, 0xa5ef22c48fac0b04L, 0x4fe61dd86a57e0f3L, 0xdfc9e353b994adabL, 0x920d9b795ffcd9ddL, 0xbfd212514cc650d6L, 0x61ca8b3c2376e060L, 0xa92165867c4c58ccL, 0xd8eaf208269c1519L, 0xffffffffff870722L, 0x269c151a00000000L, 0x78f8ddd963eae6L};
-uint64_t A[8] = {0xb7b80a3b92f33f24L, 0xebb8c6eda66109f4L, 0x3d4e414d5ae125d0L, 0xfe4bac5d667b36a5L, 0xf91df8af155ce79cL, 0x36c0fc867a2482aaL, 0xc67961734171152fL, 0x7ed40f8766c8520dL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xcf6d5908bd7c56fcL, 0x88898415eb00dc46L, 0x9d126e731933b5d9L, 0x9da8d3a9674900feL, 0x189154eb8cb08545L, 0x9b26cd1374fb6caaL, 0xaf1897fa01f69d8bL, 0x9e6e408383f87444L, 0xd9d8422226600cadL, 0x275a5461da3d4fadL, 0xf0ffd828c78f3fb2L, 0x8abc268337371c18L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 161;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x8d97fd53554fa366L, 0xb932d0c175274655L, 0x59d18be925a81aefL, 0x80ee662fad29cf9cL, 0x18f61f3cdef3f99dL, 0x4976126318fb05aeL, 0x41a471e4e93046f2L, 0xad5cb247cd789d17L, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x2f5bed61b2bf8527L, 0x39312685ac014db1L, 0xc5aa4ee0d0363ee8L, 0x61b99e9d8592721aL, 0xf88d20c387b380dfL, 0x6ddc3f7eca0ee124L, 0xaa23bb50cd21793fL, 0x8242163c46de25a0L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x2aed1f8db00a6af0L, 0x99d9cd8514fcd49eL, 0x5c378ca1cc6c4713L, 0x7344f6f6053bf093L, 0x2071a82163fbd507L, 0xff1af1449b1be572L, 0xfeb0ad1f9ab970bdL, 0xe15880c2b7aa08e9L, 0xa1c3f00d5d6fe1c1L, 0x7ffe55c436da075cL, 0x6bd8c2f8aa8e23f8L, 0xe0cb386dd868a27dL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 162;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x7d0a05270a803f41L, 0x7732f696695cfd4fL, 0xec3d8bb3ebcf6477L, 0xb761317f5251fa35L, 0x7882514918cbdb1cL, 0x4e0f760463c9e62fL, 0xe1ffc7c8efb434caL, 0x753981d9aa9ea355L, 0x61ffffff9dL, 0xffffffffffffffffL, 0xffffff9e00000000L, 0x62L};
-uint64_t A[8] = {0x1b8e99ec73674fd0L, 0xdd2db1ac1c655c22L, 0x6961af51e2d8306bL, 0x8be27de7f56e210fL, 0xfb1256c27d874a2eL, 0x16f5d1e9cfdaa431L, 0x8fc19cbb4701173dL, 0xfbfe9539b70e2b92L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x9a8f7251a7a9c000L, 0xedbcca02a307ea74L, 0x48e6e7743c9554c4L, 0x4241eb41e8092ae8L, 0x39d0a69f9d14637bL, 0x2ef0f3c31f56c7d4L, 0xc00767219abcb9eL, 0x1ff5f3f1469ce778L, 0x702ca15cc7e3cc50L, 0x207659a373e1ae6L, 0x3dcff26694bd8ff6L, 0x650cb8b641d4b740L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 163;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x3845c706bf1af378L, 0xe5923ab530107b56L, 0xef711a45f62289dfL, 0xf7cc6c9cd8747014L, 0xa7f4a3e3b1e9669bL, 0x1559c7f8a3abedf3L, 0xa2952abc1624f023L, 0x8046ed8801a1fa6cL, 0x1f5bffffda168bbdL, 0xfffffffff9728bbdL, 0xda168bbe00000000L, 0x68d744225e97442L};
-uint64_t A[8] = {0x5407a49b4faa0cf2L, 0x7eb23d3000f5ecf8L, 0xa2db87227dff4d2L, 0x6f0021dca8ee51c3L, 0x3e855bd6d766cb88L, 0xf50f8d1d5397f0dfL, 0xd0b1f024322e5746L, 0x3f859e44807206L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xdebc06f289fd8ddcL, 0x520e36af452eb615L, 0xa9893eda2dc5fc92L, 0xa8eea6b0efa04586L, 0x77e43a6d0419aac1L, 0xfbecb2e325ecf490L, 0x2bd44c0fd79b5b7bL, 0x5e3b0671cf52bb6fL, 0xb7ff7e07eb1e1fb1L, 0x38535cea55b77264L, 0x5f8c88fd7e761aebL, 0xcab10e2c57f3e8e4L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 164;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xce4a5a002a148f14L, 0xf4515cc2e75e633L, 0xf05052f2d67c992cL, 0x6e85bc70b66bd186L, 0x3b8304539f133768L, 0xb3e3e323ac1d2f1aL, 0x2db9f111baf27adeL, 0x335872359cac8cbeL, 0x92cb03ff618f31acL, 0xfffffffff45a35acL, 0x618f31ad00000000L, 0xba5ca539e70ce53L};
-uint64_t A[8] = {0xb2be2bcbec5c898cL, 0x629b728b79cc50c3L, 0xc4aa5773a020613fL, 0x45ffdfe932db6849L, 0xdc92f1abb243be2eL, 0xaf03c05fca655b38L, 0xbf279c7062e44081L, 0xae9f4f976943bc03L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x90f284f56181bdaaL, 0x3407a91ed8ed6f23L, 0xf72e7fa5210d9d2dL, 0xe267ca20894807a4L, 0xf5f63805f4af067fL, 0x95b6245a310ac270L, 0xe0cebfb8003479d9L, 0xb99af73a27b6b075L, 0xec36ad4498b5344bL, 0x5386c1dfb13ab140L, 0xace73798f1c19a94L, 0x8216b7e17acd3da6L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 165;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x4b43dc542a720bd5L, 0x9553438211c6274L, 0x7c448153752fa4cdL, 0xccbf22a67c30b606L, 0xee8f5f282d8817afL, 0x7481ce813c9fb654L, 0xf21f374f9a7c824cL, 0x4e0a3f471ee813f1L, 0x430c0fffbcf3eL, 0xffffffffffffffffL, 0xfffbcf3f00000000L, 0x430c1L};
-uint64_t A[8] = {0x633882d09d70b2fL, 0x751a305fb9992f1dL, 0x7e062c54bcd8ace8L, 0x52ebbfcdf7150d28L, 0xc9a8d89c7d00571eL, 0x6688e25bf90134ecL, 0xb8c44a8ed98d1f32L, 0x404354ed7f4ab63fL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x683333e1aeaf78d5L, 0x975e72a8b3993677L, 0xc70843fa09122141L, 0xbae66fc046f3c59aL, 0x5c6c214388a7a776L, 0xf6e11928273a95eaL, 0xded757617e87f854L, 0xf82895593536641L, 0x95e1cd28918fd2eaL, 0xf86e2c3d4396e9c1L, 0xfdee0b786f6caaa6L, 0x63159470c403ba11L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 166;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x948dc4f8b1fc87b4L, 0x8ef5689d3cf7600dL, 0xdd3cf7e7473017e6L, 0xe2f73c696755ff89L, 0xf38ae8914d7b4745L, 0xfaecedfd0c9803fcL, 0x2d921ca298eb6028L, 0xd9e9fe814ea53299L, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x45d510091bce75f0L, 0xf0f5d282269422c8L, 0x31a270d5664cea76L, 0xc1bd40fd0ebd1073L, 0xc9dc5cfd2c615844L, 0x9ec4820e2046a44fL, 0x72370a800e0bdb56L, 0x3ca45cb5b3b8f8d9L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xde62a1ac31a99038L, 0xf8f55d4c77dd01d2L, 0x91a2b2e494fb0585L, 0xc7f23c5362686d34L, 0x3e5920355c9d33a9L, 0x962f04d226a51135L, 0x89ad93b085d55293L, 0x8509b0af37ac6639L, 0xb1474b0f69d1ee3dL, 0x620069e4e99cc2baL, 0x546578ef1f1cd28fL, 0xdec60493a76710e9L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 167;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xccb1bd68311fa6bfL, 0xaf844ef3d8c34475L, 0x7b831e70a0939d01L, 0xaf05cfa35dc6b0b5L, 0x40f1d846956003acL, 0x66119acd9e0bdc2dL, 0x45d4d47be9bef5a1L, 0xa2e25edbdaa1eb73L, 0x8b98afff74674L, 0xffffffffffffffffL, 0xfff7467500000000L, 0x8b98bL};
-uint64_t A[8] = {0xe22b104ad0f67420L, 0xbaf5500801638fa6L, 0xfe4601e2b5bf98aaL, 0xb2e97c5f8d1e0c72L, 0xa09a2ad2d0d67a2fL, 0xcf3cbad5d5c143a6L, 0x57b4042b9fcef2dcL, 0x2b55741691d9fe6fL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x72655fe7ea5f2342L, 0x71f453b06ba96222L, 0x4f289ca4d57e69daL, 0xdf41e94fe53a3e32L, 0x4a9835bb4d96ad2eL, 0xb663889ad1648ae9L, 0x350cece9161ea192L, 0x5131bea947a20410L, 0x9fe95e2a2dbc5bd9L, 0x569230ace87bb892L, 0xc110e45115d34e11L, 0x4969576f9b95e14fL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 168;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x608573f01d4792f5L, 0x95f12fbd9521945aL, 0x5305550cc65c7467L, 0x976f8943eb14ae2bL, 0xe5a4d4ace2b77e77L, 0xaf1b5f390f5b0e83L, 0x6a81d85841a135abL, 0x3cfae6ab3f62f23bL, 0x4052083fbfadf6f1L, 0xffffffffffffff31L, 0xbfadf6f200000000L, 0xce4052090eL};
-uint64_t A[8] = {0x480dbc1bdb128292L, 0xf4403cdc248a5658L, 0x326307428f89526L, 0x3daf9a43c81445f2L, 0x40613619d75d53bcL, 0xb13f2e85b503b962L, 0x725f5a062297d5b0L, 0xd4276cd13fed7f56L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x1c84d6cfc1ae69ebL, 0xdb1d3a13ded20aaL, 0x8cc3bc88b91f2bd7L, 0x7efc6633140b77daL, 0x31120e5c73c48799L, 0xf68d944edbeff37cL, 0x35dac718c791a47dL, 0xcb6d6ddf7b2ac766L, 0xabc3a7bbf753d95bL, 0x1f4779660f915adeL, 0xc52eb444429b0ee0L, 0xb7fb85e94d321766L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 169;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xd83cdbe4b0cdc8bL, 0x5543627b60fa2969L, 0xdee9b49a7fbca4a6L, 0x9c56f6686507ed0L, 0x7d535ee00de9dd06L, 0x1bd745d87f714f97L, 0xb8b50909061de6fbL, 0x57820068f4a96b3aL, 0x1affffffe4L, 0xffffffffffffffffL, 0xffffffe500000000L, 0x1bL};
-uint64_t A[8] = {0xe94a016c3e489b9aL, 0x4c0dcd300855ca85L, 0xed8e08d20eebc2e5L, 0xb358109f2f4b170aL, 0x4b5123a73a5b4568L, 0x581e5ff924197743L, 0x9860cd99345cdd47L, 0xb3ac042d1ac3e740L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x3293c1e0a74d59d0L, 0x2627e23178e8fd38L, 0x42ed300ea9aa153dL, 0x917ce486f6176f78L, 0xf321f1133f5f2740L, 0x357574c6a3db8ca3L, 0x4bb03b107a68aee6L, 0x93fb62cf28850bfcL, 0x6824f875de383fa4L, 0x8b0bd10da1cff91dL, 0x4ce9dc56c004a569L, 0x24333f610fef4bfdL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 170;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x68f66263f8fcf831L, 0x29d70d71caa56536L, 0x6fef91b432c35529L, 0x19171b6038e29235L, 0x4012a2ac282e7da2L, 0xcf53def4eccadb8cL, 0xb79563ba0a44904aL, 0xd21ace96f226a66fL, 0x6ea58e9e915a31ddL, 0xffffffffffffc07cL, 0x915a31de00000000L, 0x3f836ea5ce22L};
-uint64_t A[8] = {0x254a4a3e09ba48fdL, 0xf5f9a498bf1bfdeaL, 0x7c18faa630900f7eL, 0x113542810b0284cdL, 0xe97fbab46827f334L, 0x5b7d6c595db8b18eL, 0x669025d6306e5844L, 0xee79ebb98c19a4cbL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x9f678b8fd97d755cL, 0x658693a284a2af0cL, 0x185ee38923ce964dL, 0x51b96455d5bf9306L, 0x6338223c9ae5b4aaL, 0x3f9c01f04fd9542fL, 0xb4c392f8017325abL, 0x17e1f19168a1a799L, 0x1834e5304f966c0dL, 0x4e16d50bab6dcc49L, 0x34afd61e08ca76e9L, 0x2170e27c59c724fbL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 171;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x660edf902355ed17L, 0x1cb9e62635c37fbL, 0x7a619b6cd222f819L, 0xb4faf459c42f8027L, 0x9ef451b887674f84L, 0x8d0ef4e5c56a617dL, 0x8893f2f973bb65d2L, 0xe185bf8bd6536acbL, 0x16a973ffe9568bffL, 0xffffffffffffffffL, 0xe9568c0000000000L, 0x16a97400L};
-uint64_t A[8] = {0xf9e52a3c3d09587fL, 0x4df9d7e007e02f99L, 0x56b54f114a88d0ffL, 0x8bd26aa0267ffedfL, 0x28abcab71f0d0a08L, 0x41011586e26e500fL, 0x117b7425690e41d3L, 0x1877d8811bda67eL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x3d7486cde5e84beL, 0x190486f62e4a3649L, 0x2c0b88a4ffe8353bL, 0x4d8452aa44622099L, 0x99e012c0aedf93eeL, 0x87460b889af9fd43L, 0xb6d52ff680aad7a8L, 0xd44f49a5754c5a8aL, 0xb22d7b3aa7bfd4c4L, 0x6bc8ba3ca4113dceL, 0xc7de843349f76f78L, 0x9d2f29a88925738L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 172;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xae5e63e820e55d8eL, 0xa7d1484cfd501eeaL, 0xd3a6d09612e55479L, 0xc2f7251ae074ddddL, 0xf6d7d3a8bd6214b6L, 0xf125c7ed1513d22cL, 0x5644cdbc6aeb652cL, 0x5e9a815ec6b4d9fcL, 0xe5c87fff1a377L, 0xffffffffffffffffL, 0xfff1a37800000000L, 0xe5c88L};
-uint64_t A[8] = {0x863adcbfc3e11936L, 0x132997833c5875bdL, 0xc66fb8e48cec6857L, 0xb9ec70c15113985fL, 0x2dbe3b667dc96eebL, 0xcdc946093e60978eL, 0x17495e3dd74c9d3bL, 0x2babf31ff018f49cL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x6bfba4079309f28dL, 0x232838d65c3e5c2L, 0xc11065826313667cL, 0xba8f7f1ba6291cc3L, 0xbde7b2507d9061L, 0xc6a7843da494ec67L, 0xa57dfd3c5ca8f10eL, 0x9a40e7a5db87cb5L, 0xf61941e6a30d3b69L, 0xfe2cb1ffe8ad7f7fL, 0x22766421169b95d9L, 0xcf56726883c06c39L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 173;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xa2139f4161139993L, 0x5afdd636e00bad01L, 0x32a8af03ae81f606L, 0xa1867be0104cc3dbL, 0x6a68b2b2176b3d50L, 0xd5e1faad1d82c4L, 0x12f1af02ac5d5f73L, 0xcfbd2f21ab75a918L, 0x247dbc7fdb82437fL, 0xffffffffffffffffL, 0xdb82438000000000L, 0x247dbc80L};
-uint64_t A[8] = {0x5407a49b4faa0cf2L, 0x7eb23d3000f5ecf8L, 0xa2db87227dff4d2L, 0x6f0021dca8ee51c3L, 0x3e855bd6d766cb88L, 0xf50f8d1d5397f0dfL, 0xd0b1f024322e5746L, 0x3f859e44807206L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xdaf43fef887ff347L, 0xe6f8df1824b30aa0L, 0x6d64e2caa1f0b9b3L, 0xd0f3db55043dc08fL, 0xc0fccc156390b716L, 0xbe9be344c41028d2L, 0xa6518b807adf618eL, 0x933527794679b2bcL, 0xdb5c3d6092f63372L, 0xbe31c17faa037147L, 0xd96b051d221428dfL, 0x18d9d866fd40a0d2L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 174;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x68a850991b58242dL, 0xb3d7e772d038b233L, 0x3b01c5b8126576d8L, 0x58d62bab69b6dd07L, 0xba9f2dbaf9b283bbL, 0xbf126005973f4859L, 0xec342960a28c6706L, 0x9737c93286f3afbcL, 0xfbc49c17ff5eac9cL, 0xfffffffffb2348b4L, 0xff5eac9d00000000L, 0x4dcb74b00a15363L};
-uint64_t A[8] = {0x93dd30692eb231d1L, 0xa39f471f32cfa731L, 0x62f7ee7e271be610L, 0x24f77778117311eeL, 0xd42c2714ffcea877L, 0xcd80cbe14660ab67L, 0x47bd736b9e83ef82L, 0x76e3740442e49996L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x65a6f0b0bbe6bc64L, 0xd8db049cea09158fL, 0x760837fa1d5cd47cL, 0xbf999eeeabe9186eL, 0x1eb2c335648afeccL, 0xcf88ed4094bb34c0L, 0x165a4b2dbeca695dL, 0xca8e2f05a247125aL, 0x6bba6f4c2376c8fdL, 0x726ff0fcb8b420d9L, 0x2c568dc9a136c738L, 0xa197147c5aa3373aL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 175;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xeb4e0bedaf83eb13L, 0xff69ed4bd3090ad0L, 0xb916baf2d49c06f6L, 0x1a82cd535b92e04eL, 0xeff85963138cfe77L, 0x212e9643d09e2997L, 0x9d489489f849853aL, 0x5f2896f041e52a1L, 0x57ffffffa7L, 0xffffffffffffffffL, 0xffffffa800000000L, 0x58L};
-uint64_t A[8] = {0xfd10d4229c2a4473L, 0xd255f5c688011591L, 0x6168ae5f30b59dfaL, 0x6f939d68a2be35f5L, 0xc9594125c2f30c3dL, 0xfaa6fa91bc6665c6L, 0xc1cbfb07ec4e60e8L, 0x5f41d10cb649b4c6L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x4210804f6e818ceeL, 0x7f6e701a6407daffL, 0x74e05448652d0c0aL, 0xe3c81536ff41e704L, 0x86d8e1ffcdbdf16cL, 0x3de9c182585aa6e6L, 0x597012368d327210L, 0x7a325569e12b02f3L, 0x1b1611572e69471eL, 0xd44d82abb2a0326L, 0xe55749db7317bf9fL, 0xd9d7779e6a9eca5cL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 176;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x2931445e086f7164L, 0x2ddf1ab2d20f7ee5L, 0x57905fb7d52b640eL, 0x9a46b49b10c1a213L, 0xb8cd230d2194f376L, 0x8472d27b77f51d9L, 0x3a6d57c809d5690fL, 0xa559bd9170b70803L, 0x88d7dbff772823feL, 0xfffffffffffffffeL, 0x772823ff00000000L, 0x188d7dc01L};
-uint64_t A[8] = {0x76b85af13143ff6L, 0x25e08eed9e9aa27fL, 0x3e3d0488ffc51120L, 0xf8c81b242528c884L, 0x418e685027128311L, 0x63ac37d528a681efL, 0xf0a07a9732ef1690L, 0xc7fe6aa567d1367fL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x7c7a8489376df84aL, 0xc17a15ecb86b4d24L, 0x59aa9bfe47eb5c93L, 0x77601d4042b67e9cL, 0x9656adefac03b645L, 0x5bb26cb053017838L, 0xf600e68bd9473121L, 0x847bd7d906d0492dL, 0x299299787f4ec3a3L, 0xf4dbac34891fe234L, 0x3764e13f45e1e3cfL, 0x178812df27823L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 177;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x31b2004f71c85684L, 0x28168548f0fc1e1aL, 0xf033ab73e74de5afL, 0xc455ef66097254d7L, 0x18f0deaad4d2a242L, 0x4ca8ea47ebd58c24L, 0x1b996bf120e2ff27L, 0xae76c66e0dbb96d0L, 0x3d08ffffc2f6fffL, 0xffffffffffffffffL, 0xfc2f700000000000L, 0x3d09000L};
-uint64_t A[8] = {0x4b9a67c522358b19L, 0xdb689ae4d6a34ac0L, 0xe71ae2779a3088edL, 0xd1db1ff509ec0582L, 0x802c066f38243ea0L, 0x5296b228a6e2d112L, 0x564a809d50034236L, 0x48bb5e47beb21fd5L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x639a10f743ebf5ceL, 0x51141e7923509835L, 0xa0e05b35f6f0a7d4L, 0xb77f09ac6b1db9c0L, 0xee07606f8567f82bL, 0xdbaf4935a24ddac0L, 0xe021a55473e3b9b5L, 0xceae05b03e4ac36fL, 0x15010568574fe7eaL, 0x9df81070e2a93b3fL, 0xd5419acb0f369de0L, 0x3c6507eb8580a0b2L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 178;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x44210c4715ecba77L, 0xefa47f2abbde5a26L, 0xfee52ad892a989c2L, 0xf37d3ec6c692708dL, 0xc88a1ee093dbe19L, 0x524a17493c6bd3ceL, 0xa913d3847f65477fL, 0x82f2578db893a41L, 0x1fd10fffe02eeL, 0xffffffffffffffffL, 0xfffe02ef00000000L, 0x1fd11L};
-uint64_t A[8] = {0x3ebac409b05772d0L, 0x711e5e840cfbc417L, 0xad7808ce1eefbb4fL, 0x33a00a3d970a6c2aL, 0xdb000adf2d9f7069L, 0x51c6cd66d6e20c17L, 0x93ca59316f6b93afL, 0xf48749e3cf9476abL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x8f90deabfd513551L, 0x94209461ab4a498fL, 0xa736c90cce4ddb3L, 0x8d3ebac9a91bc2d3L, 0x6cef806f95af5ea8L, 0x70f6fb42c1962da6L, 0x1de34f643b4fbe7cL, 0x50a3557e2318b1b7L, 0xb5b7d0c71377467cL, 0x3a74546f8a678470L, 0xbd845aade3ea68f6L, 0xa96b4444a8d11919L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 179;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xe05b3080f0c4e16bL, 0x2cc09c0444c8eb00L, 0xabe6bfed59a7a841L, 0x75c96e8f264e20e8L, 0x86659cdfd835f9bL, 0x2b6e019a88b12f1aL, 0x56af7bedce5d45e3L, 0x1eb7777aa45f3314L, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x2f5bed61b2bf8527L, 0x39312685ac014db1L, 0xc5aa4ee0d0363ee8L, 0x61b99e9d8592721aL, 0xf88d20c387b380dfL, 0x6ddc3f7eca0ee124L, 0xaa23bb50cd21793fL, 0x8242163c46de25a0L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x6d6b10710c490eaaL, 0xf4ac8213ed07d7cL, 0x2329dc445e004369L, 0x7702698c3f7db1c5L, 0x74c05aeafd2f5af3L, 0xcad04fb9983b93bfL, 0x5359e001de882ca0L, 0x7125fe553ca64820L, 0x4f00bcdfc1faa3bdL, 0xc708a81673862b1L, 0x19c38ef4768e96a6L, 0xebf0300e5f445131L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 180;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x8046e2575843b82L, 0xe3ff8b6720ceab86L, 0x5239c24160828f13L, 0x592ad0d46fdaa429L, 0xad4004ce43cd213L, 0x76615b4db779168cL, 0x63bf21c96d298e73L, 0xe7e23b4acf3c9025L, 0x5fffffff9fL, 0xffffffffffffffffL, 0xffffffa000000000L, 0x60L};
-uint64_t A[8] = {0xc3314eaed2a2d2eeL, 0x66a7e2fb5553fcbcL, 0xccaae4fc6868dee1L, 0x55744795b1014962L, 0x600653c217732d4cL, 0xd6d7564e68c15c6bL, 0xab9a79fc0723302cL, 0x2593d793f3067d6fL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x75448c0d82bcacdeL, 0x31e7cb7615ac478L, 0xacdea3a8eb24e4caL, 0xd2f91ca9e06f6b34L, 0xf67bcfaf6a441079L, 0x7c5c266574fd268L, 0x28a8a26dccc85a9eL, 0x1bfab3be6dedeaaL, 0xa49918a00df1cdaeL, 0xf86cb941867478a4L, 0x3d9c5ded8fec5a60L, 0x565685e76cb7bbb6L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 181;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x51867fc4383ea6a8L, 0xe3dfc579d41b6ce9L, 0x1830271f9ea11342L, 0x9f6259874e9e6a67L, 0x52533292e64582faL, 0xb5f0afb0000a0888L, 0x6c1dbd1296624058L, 0x36937fae92a2781aL, 0xb8747c423ade0ca4L, 0xfffffffff35288e7L, 0x3ade0ca500000000L, 0xcad7718c521f35bL};
-uint64_t A[8] = {0x1b8e99ec73674fd0L, 0xdd2db1ac1c655c22L, 0x6961af51e2d8306bL, 0x8be27de7f56e210fL, 0xfb1256c27d874a2eL, 0x16f5d1e9cfdaa431L, 0x8fc19cbb4701173dL, 0xfbfe9539b70e2b92L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x1a5118d8555ef70cL, 0x55855deac80fe1caL, 0x6a08502d1df34c13L, 0x1319694c295a0dddL, 0x2b6e072321759be6L, 0xebd35050337186f3L, 0x59cb264c0671d1b1L, 0x67a1812767b5cbdeL, 0xbd90741b3a19a406L, 0x50dd5b19c15c6268L, 0x6bd7caf36f89a741L, 0xdd12ecf61d52c1abL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 182;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xdb15e4963d5baeb1L, 0x9c30c6422b2f9c49L, 0x719a87be5a0ec9ceL, 0xa2193bfc266f85cL, 0x854dc9d595105f9eL, 0x2b4f0c7877eb94eaL, 0x4788522b2e9fdbb2L, 0x83c3139be0d37321L, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x4b9a67c522358b19L, 0xdb689ae4d6a34ac0L, 0xe71ae2779a3088edL, 0xd1db1ff509ec0582L, 0x802c066f38243ea0L, 0x5296b228a6e2d112L, 0x564a809d50034236L, 0x48bb5e47beb21fd5L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x40ab20634ad8a237L, 0x7bc88ccf5c53bdedL, 0xc8d4a09fb7f3898L, 0x79271658cad201e4L, 0xeeefc88bbb26fae4L, 0x9a1e5f61b72f8facL, 0x220c261d386ba2a3L, 0xfb34869a06187089L, 0x7084832de4d9dc69L, 0x3f37d4a2ab73ae77L, 0x75805aba4021bf1fL, 0xc7b98c3547850d25L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 183;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x87d980bbb0f958d0L, 0xac1c29f12544bf9eL, 0xafa28bc9d968760fL, 0x3ca12e5baa87b8ecL, 0x4706762d5866bc30L, 0xbedd23b12204c06L, 0xea5302ed5c91ad71L, 0x278853942f532e82L, 0x39aa3fffc655bffL, 0xffffffffffffffffL, 0xfc655c0000000000L, 0x39aa400L};
-uint64_t A[8] = {0xe7f5ba6f2554f427L, 0xdf48518b3901ff96L, 0xa828c36c1d4e879bL, 0xef6c4ca1424432edL, 0xedc19f099a5676dfL, 0x8bf2891468410bffL, 0x27cf306a14944795L, 0xb6efb4cd4463768L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x6a54c39199b65a8cL, 0xd8e1a8bf779a8a1fL, 0x14603c6c8d1346aeL, 0xd14e2efbb8e4c4daL, 0xef621050cc69035dL, 0x47e2337c528ccf6cL, 0x890b7daafef55ee6L, 0x9274ff142b72810dL, 0xa137d476bdb5e826L, 0xa93589ffcd671f1aL, 0x897029f1d018db6aL, 0xf1f287df56a78514L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 184;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x276515f7bd22ce0eL, 0xca354d7a6a94b957L, 0x531923482ee1dd75L, 0x378c7067abdf028cL, 0xec168826ceeb0f34L, 0x1817c14d845b11caL, 0x764cda227eb7977dL, 0x5a3ce157e90ce287L, 0xdaf26aff250d94L, 0xffffffffffffffffL, 0xff250d9500000000L, 0xdaf26bL};
-uint64_t A[8] = {0x2b9131acc0130435L, 0x97a689a71742557cL, 0xa81ea03df9581714L, 0xc34ea0250f6667dcL, 0xd734003dee5d1e66L, 0x7bb0772a8b6e0589L, 0xb1f409df762e3ef3L, 0x60f7817684aa164dL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xb745814f12148154L, 0x6fe56ee1c2d7e112L, 0xcbe5133f969247d5L, 0x859be7ffe5bab28aL, 0x517ffd50fce685e6L, 0x82f393a50891d73aL, 0x6d9105cd643962d3L, 0x852e9874ff847d32L, 0xf11296d485987aa6L, 0x66e44985e8e9f9d4L, 0x73630f9e335708c8L, 0x61645cad5de2cdfbL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 185;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x57884bbc1df3c833L, 0xfefab45dd45d76dbL, 0x97116eaaf30e0724L, 0x99a74f1e96b39699L, 0xf031bc993bdff749L, 0xa7582aefd08a3612L, 0xd479a2e2a1f701a1L, 0xe95611229270bf47L, 0xc3ca78b83c34cc05L, 0xffffffffffff44beL, 0x3c34cc0600000000L, 0xbb41c3cb33faL};
-uint64_t A[8] = {0x8a7b94a8d2ba7cbfL, 0xb5073c46c521afacL, 0x7cc470a1295a5fcfL, 0x5d0302625fccb507L, 0x773c2a475c4c5a9L, 0x462440ee1bc9f085L, 0xda46dfac5c6cef71L, 0x19fb9a08eeb85a69L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x53aa95b867a68779L, 0x49a823954cb77f4L, 0xb5fd7feced82184cL, 0xc4d4d0fb3f7ceae1L, 0x6bfa3842b8276dd9L, 0x9c12b20529d804eL, 0x96a524327ab2a94aL, 0x8e1c78bdf0b43af8L, 0x5a305b7cba259738L, 0x314eb31f5ba8890eL, 0xb9595dbccb27c152L, 0x7083e6564db098d6L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 186;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x691d130e5b90396bL, 0x303a322d1286c1dfL, 0x1b3464c84e02f849L, 0x4b285a38389df1f0L, 0x7ad765043564aa27L, 0xe291eb7708669116L, 0xe9220cbf2a4354dL, 0xa8175b1e7d7ab5d8L, 0x156fffffea8L, 0xffffffffffffffffL, 0xfffffea900000000L, 0x157L};
-uint64_t A[8] = {0x49b2a0b16a395853L, 0x32092e494617dd75L, 0xce614c2f83c516f2L, 0x40afd261d2a96d7dL, 0x735fd9b0767a558dL, 0x7c83d9d9520a759fL, 0xf34063ae496cce27L, 0x4270a2bd4b257a7aL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x46b3f352ba14de1aL, 0x66b67359f648f169L, 0xab51a1afc1dd69e5L, 0x6b2a2f0868ba11d0L, 0x1556f2994df0e2a0L, 0x33f0821a25553f63L, 0xd9d68f0638addb0dL, 0x6f3214c35b79985fL, 0xeb61d99ebfbc9435L, 0x4e22aa8f724e5a77L, 0x6714d7f431c6d7a1L, 0xd4aa8900020ababeL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 187;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xf361fa3a981e64d9L, 0x91c514c62c09c0b7L, 0xb0c3fc56fbcb63b0L, 0x41c49a77220e7e26L, 0xb59092e0b35fee4fL, 0xf931db5e676c91b1L, 0x99ea16d00f4fda62L, 0xfd5edceb0255b912L, 0xac16c8df53e9371fL, 0xffffffffffffffffL, 0x53e9372000000000L, 0xac16c8e0L};
-uint64_t A[8] = {0x9b1d73d30c074c77L, 0x7066b28e4e81f4aaL, 0xc693f6041e7a86d1L, 0x571b9ffe1b1ce20fL, 0x146428ccc2a6d239L, 0xe739711ae0613c3eL, 0xcac27df8a27cf75fL, 0x4f08c45d910349ceL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xcc7e4ff576f13b1aL, 0x27c92115918e414dL, 0x287bfdbbcdb2fabcL, 0xadc087a1884ceab4L, 0x53d9c60f5b8dd7b0L, 0x85fa89e473fec1e6L, 0x6e30a29a432e0192L, 0xa932c972a7a7fb14L, 0x1e0e349954104010L, 0xc06e929fe3c9b2a6L, 0x6929afa51cbe9445L, 0x4600911ce78ab326L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 188;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xaa934b4fa63bf410L, 0x50e98913156600beL, 0x71b984cd2b03e9f8L, 0x6d1fac1a44622bbdL, 0x9a56146d3d419ce7L, 0xb56b4a249487516dL, 0x5b4d40de61867aefL, 0x6a9155ce36d1ef68L, 0x14640fffeb9befL, 0xffffffffffffffffL, 0xffeb9bf000000000L, 0x146410L};
-uint64_t A[8] = {0x2f5bed61b2bf8527L, 0x39312685ac014db1L, 0xc5aa4ee0d0363ee8L, 0x61b99e9d8592721aL, 0xf88d20c387b380dfL, 0x6ddc3f7eca0ee124L, 0xaa23bb50cd21793fL, 0x8242163c46de25a0L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xe48292b6651f726aL, 0xcf922ec1e2433457L, 0xb9af63680199a4d9L, 0x71fd9404819771ccL, 0x16c015c568a2a3d8L, 0x2f111b417f37b6e8L, 0x3660310b6fdf694eL, 0x3ae10ae8dbdb0bf5L, 0x83d6703e21d6f058L, 0xa2b695bbc9cce671L, 0xd74b94f401215b97L, 0xbc08e06b8c70641fL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 189;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x8890cc0452eb9c84L, 0x14957fb499ec6a18L, 0x51a4ebbdcf0fa9b9L, 0x96766c24df3fb26dL, 0x7207822b84b62cb4L, 0x865a0917ec12332cL, 0xcfb6895930879032L, 0x8c1d884c44c25676L, 0xc21cb8e03de346ddL, 0xffffffffffffffbeL, 0x3de346de00000000L, 0x41c21cb922L};
-uint64_t A[8] = {0xb595d8a9eae3eff3L, 0x1fbf14715b64ea48L, 0x2c1fa02b57ccd532L, 0x13ad0573e9799e4fL, 0x9026eb180cd032a2L, 0x82128bb46643b150L, 0x818a6d8f4706304cL, 0xd93ef16f097c5ad9L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x1f4c8b3191912554L, 0x58cd7e6343b93986L, 0x6f664e0543325c4fL, 0x2ed63293b344d083L, 0xaf9460c90b5dca5dL, 0xc2c051eccc99138dL, 0x13a3d6242a7e5afbL, 0xefe3c3f5532b443eL, 0x7e96fa2ca03cff8bL, 0xe5b694714a9189b0L, 0x3b1d4a60656ccb8aL, 0x7a6ca80f2fee58a3L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 190;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xd19ccb06951fb492L, 0xdea28c40b20fcd5dL, 0x1cb503dd07a790aeL, 0x5b350757dbd1e4acL, 0x7eaaec0384d6401eL, 0xcfcb8184f9d65327L, 0x20b5e89291add8eaL, 0xc049158a32782678L, 0xa65fffff599ffL, 0xffffffffffffffffL, 0xfff59a0000000000L, 0xa6600L};
-uint64_t A[8] = {0x2d0f1be2b5577cf9L, 0x8decdf26c01ce141L, 0x7e28a0d562d7881L, 0x8218884b2f38e1d6L, 0x707320391e7826faL, 0x36925b3cb704a1fcL, 0xe77da7d78929b20aL, 0x747c0826cd4f4e7bL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x63a89c6a4767e3c9L, 0x8088ee6dbd0f538bL, 0x8766b27909c8f622L, 0x3d5da79f545bed6bL, 0x83731a91535622bdL, 0x7affd880ed4b4505L, 0xb84203e539e2cd9dL, 0xe3620d9677b012bcL, 0x1226a4a4eefd32b1L, 0x251251fdee057d44L, 0x90d41ef598e15ccfL, 0x94d98f0c59e646f2L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 191;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x8cb4b1bea9c85e50L, 0x95db20f38b9b28d7L, 0x6b192af4c47971efL, 0x81e6570fb6d1d8f8L, 0xe4f0d0bc760a701cL, 0x2b82840cbbed7474L, 0x20da14b3d7e6d11bL, 0xdacd294f210a6abeL, 0xd8ffffff26fffffdL, 0xfffffffffffffffdL, 0x26fffffe00000000L, 0x2d9000002L};
-uint64_t A[8] = {0x47b8c90e0ec452b0L, 0x8691f46ed9af1fa9L, 0xda120f3433f2d27eL, 0x160837d249afa40L, 0xe0053424c4c03fc6L, 0xabd0d5874b2e52adL, 0xe28134da897595edL, 0xc9d2fe827d859fdcL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x4adb7eda704d73adL, 0x28127a04160b2a17L, 0x8e35b4948563957L, 0xbd0438eda486acb0L, 0x23e0d2e8d3cc8d76L, 0x52d2b71a1d3d0688L, 0x2afe63ed5a7bcb8fL, 0x46596fd178f104b6L, 0x602d9d21e15d6b23L, 0x1da1d3cfd7beb7a8L, 0x26c0798e1ee7b08bL, 0xe1db3c4825588479L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 192;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x8a64b4e39eff803eL, 0xb30854780959d1a4L, 0x64f68bc43bed57d2L, 0xf8c14d1cbc7ac1d9L, 0x46ed5256394245dL, 0x252aa59b47e7c81eL, 0xea01a593c8d1589bL, 0x859fa43b3da555acL, 0x2253ffffddabfL, 0xffffffffffffffffL, 0xfffddac000000000L, 0x22540L};
-uint64_t A[8] = {0x972522c5025fd739L, 0x2adbf1bb0fc3ffb7L, 0xc0a896a1a2f02abL, 0xda88de243da1658bL, 0x65045adc6074841dL, 0xac9f431251b238d3L, 0xfacd067ee9eea7b0L, 0x486a43b391ce223bL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x6a80895c4459fef0L, 0x7751d21ca56603f0L, 0x52e6a0c0aa61e290L, 0x23235e831a5accdeL, 0x44bed57bd02c28b6L, 0x284a29840e4d08feL, 0x934f64d4d8c67298L, 0x98d545387a1b9001L, 0x6e86ec2aef6849ddL, 0xd947a410a927b8eeL, 0x73b51398e7cc1e8eL, 0x2f345a7f8ce7786dL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 193;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xa0b71a105299b151L, 0x9af21b3551659875L, 0x5d2c9c4dbaab7661L, 0x56b245f2364cd576L, 0xdba3d13816ca966L, 0x9beb14b642e948a5L, 0x9464549cd3184525L, 0x451d20624191bf0dL, 0x120fffffedefL, 0xffffffffffffffffL, 0xffffedf000000000L, 0x1210L};
-uint64_t A[8] = {0xb2be2bcbec5c898cL, 0x629b728b79cc50c3L, 0xc4aa5773a020613fL, 0x45ffdfe932db6849L, 0xdc92f1abb243be2eL, 0xaf03c05fca655b38L, 0xbf279c7062e44081L, 0xae9f4f976943bc03L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x1a79fac11bfb07e8L, 0x2ad57e2011f137a5L, 0xb4841db7f8f1fe54L, 0xbd193c5a13a255a0L, 0x77a2005bf9213137L, 0x3187fa245d09b26bL, 0xd961b5a0e4d7625L, 0xa119fab8262340ceL, 0x8bf99134f861c339L, 0x3366c1bde079f4c8L, 0xd7a870b406ec1786L, 0x6a87d74f57679744L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 194;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x987ed824d49673c2L, 0x47f7b822e42efe12L, 0x227a90fd16b25ff8L, 0x42b8ecd2016b2f4bL, 0x307537ab7585169eL, 0xa2be4e39aa8de8e5L, 0xe63cb1ad7f98dcbfL, 0x482b60ca06712436L, 0x3c4ebecec20774ccL, 0xfffffffffe56339bL, 0xc20774cd00000000L, 0x1a9cc643df88b33L};
-uint64_t A[8] = {0x40bb8a1ca9a92a51L, 0x112746e2f16e4f64L, 0x779bb091f4b4168bL, 0xb2ba97669274864aL, 0x37f260b9e557fe9bL, 0xf53a2212b22d0d90L, 0xe2f8e1c67da8af3aL, 0x592870011c59d7adL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x1f99d66703d4f740L, 0x28ee9ecff319a483L, 0x59ab774fae8910c7L, 0x75a52c2022b73d2fL, 0x5cc8d5799b74030eL, 0xf1a4fa255e313b42L, 0x5a85cf4c76c3b91L, 0x4b4781265dc9c881L, 0xe908e6b7a80602a0L, 0x6993d16c83e0f3dcL, 0xde4c20ad58b56eaaL, 0x2f11fa179b08b2f2L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 195;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xede8c475e9715ac6L, 0x6799079fe128f427L, 0x541f1d4e0cf9d69bL, 0x46231f174e1c1447L, 0xcface1c07b59e98eL, 0xa2741f4e350c0344L, 0x433193423b2b4e34L, 0xf9cea03149237a3eL, 0x9656d97064a2f329L, 0xfffffffffaf9cc9aL, 0x64a2f32a00000000L, 0x50633659b5d0cd6L};
-uint64_t A[8] = {0xbc2905fdc2c72f52L, 0x67f5f05fcd47bd28L, 0xc4a70bcc9535ceL, 0xea9479cf0f52d533L, 0x4ef0c2e2a7fb0657L, 0x5d1379f69267bcedL, 0xcc5ccf9a29159b0eL, 0x6febb404d5e365f5L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x1a07ba5f7f08dac3L, 0xfdc3cd754c9b1fd2L, 0x7edfc55cda367368L, 0x20805dba47f366b7L, 0x5e760047c9402c1cL, 0x901cfba00e456808L, 0x9458c84b2ee2db6eL, 0x53a89ac983399aa6L, 0x583cb3045e111dbL, 0x121c800dd99a696aL, 0x7339fc680b832c47L, 0x91b3e9c6165c957fL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 196;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x8b9f07efcce38e96L, 0xf9306e3ff60ecccbL, 0xf25fdedaeb5f43cL, 0xd22569b4cd8ccea8L, 0x4e14d4757b116d9L, 0x9d9e61d100481c9bL, 0x6b1c17a850560af5L, 0x31946a5fcc13db5dL, 0x342ab0ffcbd54efL, 0xffffffffffffffffL, 0xfcbd54f000000000L, 0x342ab10L};
-uint64_t A[8] = {0x76b85af13143ff6L, 0x25e08eed9e9aa27fL, 0x3e3d0488ffc51120L, 0xf8c81b242528c884L, 0x418e685027128311L, 0x63ac37d528a681efL, 0xf0a07a9732ef1690L, 0xc7fe6aa567d1367fL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x834c58759a258edaL, 0xf3ee3a68b7a40dcaL, 0xc90e271d625c46c1L, 0x8133296c044b228bL, 0xf1144e46b8d1cf0cL, 0xfa2a35420f5da8efL, 0xce296dec970e8811L, 0x2b3e03292b9a58b9L, 0xab36f9d222b94e50L, 0x54b1607303e83cdaL, 0x37197200e149a513L, 0xe1a2d25c2b4e385aL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 197;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x398ce99ecaf0ea74L, 0x64e06bfb7a8b1cd2L, 0xac9a9fb5eb3fc6a1L, 0x885172b68ff8ad20L, 0x78b0cc7f973e635L, 0x2d5f6c7f3762cf5bL, 0x88e68752ffc584dL, 0xbee7c6e0efbe84dbL, 0x6f7c52b29083ad4aL, 0xfffffffffffffffdL, 0x9083ad4b00000000L, 0x26f7c52b5L};
-uint64_t A[8] = {0x80a698c8975ead83L, 0x90db4fbacc824d66L, 0xe3c23575a8e79d32L, 0xe8f79d0c8916774eL, 0xc07e51672184d151L, 0x5c15e89541c00f8dL, 0x49fa74271f568f63L, 0xf0d5282b6039e3a0L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xa4bc8eea8158aa93L, 0x2d4cfd17c4deb9c3L, 0xc2a744850e4fae8cL, 0x1bbe50d1d5423279L, 0xe73c5084288e1c57L, 0x520c64f9c68a3841L, 0xb67410acf90e39ffL, 0x4dfce77e369addd4L, 0x2d50217ac7436804L, 0x8dff9544bcc2af55L, 0x8b50bcabf12451ffL, 0x9daa81a272fcaa36L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 198;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x6a49c1b210f8488cL, 0xf383c6e080a94760L, 0xbc7d3d1b7c8a9ed2L, 0x4c240edc20ec4f9bL, 0xb8a8683e2e624cffL, 0x1de46c427053b06aL, 0xf4facb4094e54479L, 0xf2647723b8fd7d66L, 0x30ffffffceL, 0xffffffffffffffffL, 0xffffffcf00000000L, 0x31L};
-uint64_t A[8] = {0x1194785fc0ebd864L, 0xae08dba305d1c30L, 0x637a496883bf13e0L, 0x1e59d7ad07931b9L, 0xfe138e7c3a8da79fL, 0xfaa2ea66baccab45L, 0x46610f593244345L, 0x990198536bb2cc87L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x3b976f3b8380f498L, 0xb4d15ea007b7e3b5L, 0x4de9b5d4419049b1L, 0x149a99810684617L, 0x40afe1ef1031cd4bL, 0x182c0c05668943d1L, 0xa26a2bbd366c9b6eL, 0x3e68dd7af65b8db7L, 0xd0cde987e30aedb6L, 0x2b140a33b5e11040L, 0x85e926ad61547f07L, 0x31828e371390bf98L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 199;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x48344772c13b51a5L, 0x4bf8972de9477b2dL, 0x6d85d4c2d6f573a1L, 0x2d13bcb89e882b91L, 0xd03ec6c99660bf29L, 0x31b19b84173c63ceL, 0x7e91537be5f1636eL, 0x79b022122c12488eL, 0x2058ffffdfa6L, 0xffffffffffffffffL, 0xffffdfa700000000L, 0x2059L};
-uint64_t A[8] = {0xe7f5ba6f2554f427L, 0xdf48518b3901ff96L, 0xa828c36c1d4e879bL, 0xef6c4ca1424432edL, 0xedc19f099a5676dfL, 0x8bf2891468410bffL, 0x27cf306a14944795L, 0xb6efb4cd4463768L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xcefa3b54b549be6fL, 0x8e63e9626159a555L, 0x6805598f9f4740b4L, 0x1cde7a359e273682L, 0x14f3d99f6fa072b3L, 0x8060d61769c498a3L, 0x586e391f31a46813L, 0x4da200ba40ef744fL, 0x41723e07ee2ec658L, 0x2fba26bca848004L, 0xf96c38831423530bL, 0x2cbe3b93a33c75fL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 200;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xec48700e1ea94049L, 0xe0fd6bf6afa1e383L, 0xf7c889cfa30a0cabL, 0x868f33641354fce3L, 0xb6af50a39cbfb60eL, 0xdecae68017bbb61aL, 0x228a33febb1b22e5L, 0xb539f4b96628d162L, 0xb8747c423ade0ca4L, 0xfffffffff35288e7L, 0x3ade0ca500000000L, 0xcad7718c521f35bL};
-uint64_t A[8] = {0x3355a9e2ed6f3d70L, 0xbb8ca626fa2e83a3L, 0x7633a743c1abf15fL, 0x62f6040fe8d14b9aL, 0x5482d45c245c0ed3L, 0xae880bfb66d033f9L, 0x15ecac2d10544c31L, 0xda782cbf9fd78f6dL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x5b627fd416f347d0L, 0x9862152928e44beL, 0x86ee6b49a7eb230cL, 0x110a8b8eb5633573L, 0x44a60348e6e2f306L, 0x4bce2a45e3962b87L, 0xff823506624764d0L, 0x31e4765d592065a4L, 0xa71b06ede75b68f2L, 0x68471acad547b28bL, 0x9c8182a423c13983L, 0xdb14a2ff5bd1090cL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 201;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xea7cc653bf422156L, 0x5fa2a358406937c7L, 0xa7e7ef021f6ef4f8L, 0x76532de45068af2cL, 0x7c1447ce6ec43626L, 0x1371ac2f71e5fda4L, 0x9ba359374a0360a4L, 0xfb9e4785a983d068L, 0xfffffffeffL, 0xffffffffffffffffL, 0xffffff0000000000L, 0x100L};
-uint64_t A[8] = {0xadfeeb8858cee75fL, 0xb39892a238929f1eL, 0xd5a7b62826fe4135L, 0xf19b7e5353944d6aL, 0x7d6929a823d46fd1L, 0x821afc9c9cdfd923L, 0xb00c038dd1f7bbf8L, 0xa1625858237504b2L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x187e1ad078f51811L, 0xb763982c7a771f84L, 0xaf965417dc0f6513L, 0x4d9fc9f678c8289cL, 0x2bf400abcb53db37L, 0xa38c059b29fe9af9L, 0xfcf2b2ae5dbbafdaL, 0xa8d795052d1ef760L, 0xc4079291ce44431L, 0xff953a5eb59de00eL, 0x3f89fe20c6fca308L, 0x25affd01fed201L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 202;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xc2cbe95d4366db7aL, 0x4b9eea59999af305L, 0x27894fdaafc25147L, 0xdc05253564ac3744L, 0xf65916d5c27a0714L, 0xe905b4ce8789318eL, 0x6484b48fcdef88cL, 0x8ec05153cb978dcL, 0x2effffffd0L, 0xffffffffffffffffL, 0xffffffd100000000L, 0x2fL};
-uint64_t A[8] = {0xfe9ef0ba0cc4d4L, 0xf2ce50c53403e761L, 0x3840a9e7a9b65f5dL, 0x929ccb9306859ad6L, 0xd7c9ea848c225f0cL, 0xc2c3e0c892683433L, 0x17b15172c1bc94f1L, 0x2eb749110972e929L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xcd003c75b05e3e73L, 0x211ef04726e43cf2L, 0xe75e809771785654L, 0xf179db93f8d86fdfL, 0xbcccfd1c79869a3eL, 0xfccd80ec56591489L, 0x7b7ecacc98b79ad1L, 0x38786242c1aa9177L, 0x9c3dc81dc0a48a31L, 0x24da12ff07c86f5aL, 0x76b4bd500d116205L, 0x8eb37ba486f7e77dL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 203;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xea227e8207daf84L, 0xd0a68a04691facb3L, 0x42eae592689fa6dfL, 0xc5a5690c083bb0beL, 0xe09b01d2b01a494aL, 0xa0d38dccf62fb3fcL, 0xdd3ff0c9e5d892b1L, 0xe2c87b41f4482659L, 0x1fffffffdfL, 0xffffffffffffffffL, 0xffffffe000000000L, 0x20L};
-uint64_t A[8] = {0x9327b0e9666b1242L, 0xf5f3ebfb4d392c57L, 0x7304174a87d08095L, 0x6869c3bcf7e94bb7L, 0xc3c5a8ebeeb43c51L, 0x3ce9943ebc307220L, 0x8fe1ecf0cfcb6406L, 0x710e6e6b5594a88L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x160e2bc7b677a2c4L, 0xfb5de902c3da4fc6L, 0x2f00e21a6dc0cf53L, 0x10ef622fe17d5ab0L, 0x9e7d4af709367470L, 0xe579cc016526f2baL, 0x4782b2dfab709553L, 0x9aeaa01f7672347eL, 0x42fffc3796b40cdL, 0xe12c660f72362319L, 0xae4848092c55d83cL, 0x2d315a739e65b1d2L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 204;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x382006612195ef9bL, 0x74341ea788590c0eL, 0xa3823573e8e04180L, 0xe9966c6cd941560dL, 0xf27760444afa64e5L, 0x4f531742f4373582L, 0xe7b82e4907417307L, 0x1ad7eaffc7b6874bL, 0xba88f35e3cb7f421L, 0xfffffffff740e780L, 0x3cb7f42200000000L, 0x8bf187fc3480bdeL};
-uint64_t A[8] = {0x75b1deedf1dd81cdL, 0xcdedb3ab8dbc1d6aL, 0x6dbc4191c033ef74L, 0x99e398a2a8ab239eL, 0xd3e74166fb4fadeeL, 0x2bc2d83bc7d27b02L, 0xae7a6c8895365a36L, 0x163852f12b5f7327L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x82841bbb91c7118aL, 0x3b33433ce3b366dL, 0x5a4e7a8618eabe30L, 0x4af48eea9c60f60bL, 0x362fc6ea8db3d6c3L, 0xe42155545510a807L, 0x4318b62a126b1bfL, 0xe71dd8d55c885133L, 0xfbcfca1afeb3224L, 0x4f6df9e64c9bb3d6L, 0xa401d300093d9db0L, 0x39f918b386cd9b78L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 205;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x62e71f02310d6738L, 0x958e3fa1590d4343L, 0x1b1203ab1aa865f2L, 0xc2964235d86c997L, 0x5ea360fdd4207f1dL, 0xffeae33369aa1b42L, 0x521599dbc2762191L, 0xbc7292db823be8a2L, 0x745effff8ba0L, 0xffffffffffffffffL, 0xffff8ba100000000L, 0x745fL};
-uint64_t A[8] = {0x4456267a778d8ce7L, 0x505993680c1898cbL, 0x55922df39fbd224eL, 0xc0180d950146ecc4L, 0xdeb795728c6f4f34L, 0x57faade95e5c0b30L, 0x59e264b4ada4bf27L, 0xb77fdb881e63a97cL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xc37c10c3c78f981eL, 0x1372f863ddf9ca14L, 0x39e772d3159aef6cL, 0xac44a798caefeb00L, 0xaee5a684592b873L, 0xdcb127e1b102fcb4L, 0xffa8abd7f34ba95aL, 0xc7f057c79a53613dL, 0x3f47a3a4ea48e5fdL, 0x57df931e052767bbL, 0x502f2f17fb36a952L, 0x351fc4d64624a811L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 206;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x5bb15448e44ae6a3L, 0x962a79c74619f5bcL, 0x930911d215edec05L, 0x7902957dfcfcd34bL, 0xc4949acb3e6dee02L, 0xe90482c9ede219c0L, 0xbeae72a4d500537L, 0x92a95e8c08c9aef4L, 0x1cb8e0ffe346dd3dL, 0xffffffffffffbe3dL, 0xe346dd3e00000000L, 0x41c21cb922c2L};
-uint64_t A[8] = {0x57fcaf64b5e8d6dbL, 0xf670e79ac97efbdcL, 0xe12253fbdb991b94L, 0xa928a6d84768c868L, 0x1d94d6153c3e2656L, 0x2085b6e8694a3819L, 0xea05005e197a2805L, 0x8004d784b244753L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xb6535c637643c3b4L, 0x26452eb6846cf532L, 0xea5bb0ebaa99ebcbL, 0x909f0298e16ad692L, 0x16b53624f4a87f72L, 0x89a742299ac73e8L, 0xc1f0d4cea8e0ffd1L, 0xa484f5a8e59f5c36L, 0x86add1054dc07c8dL, 0xf9eba42054189b4dL, 0xe9ebc2a3aeec4a24L, 0xe8477646ce2dff2dL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 207;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x93b61fff461c0193L, 0x245b6a631620a3L, 0x980d7cfd6373e432L, 0xdb3228555a066f55L, 0x2fa41654b02a0c20L, 0x6a9156a5d8a0365bL, 0xfeeba3cfa8da8148L, 0xb8a90345d2bf3fbfL, 0x894fffff76aL, 0xffffffffffffffffL, 0xfffff76b00000000L, 0x895L};
-uint64_t A[8] = {0xb5cffedf0790a013L, 0xf1ba0f6e25458e39L, 0x66d546ad56e03b9bL, 0x7ce0061255f79ecfL, 0x7c2da8ba0847c739L, 0xc641e310a7eb8838L, 0xf3cc871d693e2a73L, 0x16439c6cd3b5b4e4L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xe65a73ef42d3afc7L, 0x66042e6ed3abf3feL, 0x7bc7124250947decL, 0x4ff9991acde231b0L, 0x65342915b9c7e648L, 0x94fe48a8eba8523dL, 0xc3b8b6d4900027f4L, 0x907dd33f7e1f94d8L, 0x48c4dea9de69ae8cL, 0x1a814d1fe0590615L, 0x1d8216a88d702430L, 0xda7c9f873a086808L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 208;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xcbceda9779a886deL, 0x3fe90d812619b86bL, 0x4159848c383b7cefL, 0xcba63eab99fdaf73L, 0x3573c4a4d803ba9eL, 0x9db6fde5ab35d99dL, 0x15f2104c4e6e005cL, 0x7fb503ed5185c70bL, 0xe4762cda1b6b0c32L, 0xffffffffffe1390dL, 0x1b6b0c3300000000L, 0x1ec6f2e494f3cdL};
-uint64_t A[8] = {0x81d4d67d5303aa9L, 0x55d6984e2ed8d949L, 0x9ea7ce6365f0934aL, 0x69b60cd9343b297aL, 0xa916a98dc09558fbL, 0x4a43bfd951bdba86L, 0x6c7cc30329ddb815L, 0xd6b16ee90d413600L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0xef5a86ba12b10f51L, 0xa14232c6c2094dbeL, 0xa041a36456bcffbaL, 0x79bceb0a418ceee3L, 0xe1b0d5a052d6d440L, 0x747bfacc02ebc51cL, 0xf885a4c48866b187L, 0xa02d93fa05651a88L, 0xa1fac4c43b84d98fL, 0x1fe958debe7aaccdL, 0xbd334d839f8fc0abL, 0xfd5de16b7a97131L};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 209;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xa8b9dc95740882cfL, 0x9ec81ffe5b603bdeL, 0x98e8135f66721b56L, 0xd17ff993343047c3L, 0xd5486ac6f39da9f8L, 0xa97b7def431b4400L, 0x359aaacee9bc1ac2L, 0xd27547a73ca8ecc9L, 0xa352943f5cad6bbcL, 0xfffffffffffffffcL, 0x5cad6bbd00000000L, 0x3a3529443L};
-uint64_t A[8] = {0x9aa4819ec5eb4a3L, 0x843d527627103033L, 0x4fb6be2872eb797bL, 0x63408a083be2d806L, 0x2df5acb69dffcb33L, 0x7a7d39ea8034a362L, 0x63895b730257c52dL, 0x6f93d9ef8f89e6bbL};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x1259843f1f79324bL, 0x8c4109a33190bddeL, 0xbea9029b3905f178L, 0xe4cbc7d6def1e497L, 0x280e2a2a86b41127L, 0x2689fc9b3c330270L, 0x9a66377d92ce4006L, 0x3da5c4e43d4b5fdfL, 0x21c382adcbfacadaL, 0x4ba570ff44e6e39dL, 0xfc7d46696884f8bL, 0x9eca9586b4e358edL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 210;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0xf6473dfddab6bf9L, 0x890c51b091c17925L, 0x3af4337690955505L, 0x9391e981ecee3f12L, 0xcbcf4be60e230b39L, 0x514815022786fe34L, 0x32ce1b903bfb4a5cL, 0x564202ccfa508237L, 0x49ffffffb5L, 0xffffffffffffffffL, 0xffffffb600000000L, 0x4aL};
-uint64_t A[8] = {0x1ac9b3b95c98837aL, 0x8d80cea9a6380e97L, 0x68b05abd2b4c70a9L, 0x1297113175774cf6L, 0xf9b38f9d5ef51755L, 0x5566e3f4088317ddL, 0x279b1cdeee4dfc85L, 0x58aecf8f412543b5L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x7ad2fff36c3b2e26L, 0xb2f3bc5c23d87ac9L, 0x3765769e4524ff25L, 0x23665cd85fd6eaf2L, 0x1a31624bf8be29dfL, 0x3cd8e7dee97a44c2L, 0x33eb4b4006c4eb0eL, 0x3b616dc4d9e5d7a2L, 0x4865811a5328a1c2L, 0x9c480de2eb0bdd65L, 0xa5f7b71dd250567dL, 0xbcf9b92b34d85d5aL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 211;
-}
-{
-uint64_t out[12] = {0};
-uint64_t J[12] = {0x9f8aa54b2ef7c76aL, 0x49d2c9eb084ffdd7L, 0xd36a42d7aebf7313L, 0x42c2af497e2feb4L, 0x2d431068d84bde31L, 0x2d97d10878eb4cbbL, 0x3bd0c66fddb7fb58L, 0x9200b7ba09895e70L, 0xfffffffeL, 0xffffffffffffffffL, 0xffffffff00000000L, 0x1L};
-uint64_t A[8] = {0x54d66b2b865ea511L, 0xf978c0d61d3d25bcL, 0xf8de9aeb66f71bb1L, 0xb5ab5f4ce49972d0L, 0xc04e122cb67e556aL, 0xaab1e105c967237cL, 0x4a21fe89db473987L, 0xaabbba599d15ce42L};
-// both nz
-p256_jacobian_add_affine(out, J, A);
-uint64_t ref[12] = {0x5da7b46e081a80f7L, 0x9f2d1cc77e706bf5L, 0xd44a1379be3d42abL, 0xdf07f82afa2f5227L, 0x9f7851a3ecb06593L, 0xc35891dab8b63c63L, 0x2bd457cf2e2ac8b1L, 0xd00265a18454fceL, 0xb54bc5df5766dda8L, 0xafa5f6eb14ed27e5L, 0x25745814b837a89eL, 0xb17f34584cb6741bL};
-if (memcmp(out, ref, sizeof(uint64_t)*12)) return 212;
-}
-
-return 0;
-}
diff --git a/src/Specific/NISTP256/AMD64/test/p256_test.sage b/src/Specific/NISTP256/AMD64/test/p256_test.sage
deleted file mode 100644
index 4e249bcae..000000000
--- a/src/Specific/NISTP256/AMD64/test/p256_test.sage
+++ /dev/null
@@ -1,93 +0,0 @@
-p256 = 2^256 - 2^224 + 2^192 + 2^96 - 1
-F = GF(p256)
-a = F(-3)
-b = F(41058363725152142129326129780047268409114441015993725554835256314039467401291)
-E = EllipticCurve([a, b])
-B = E(0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296, 0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5)
-
-def orzero(x):
- if not x:
- return "0"
- return x
-
-def hex4(x):
- x = int(x)
- M = int(2^64-1)
- return hex((x>>(3*64))&M) +', '+ hex((x>>(2*64))&M) +', '+ hex((x>>64)&M) +', '+ hex(x&M)
-
-R = 2^256
-testcount = [0]
-def print_test(J, Z1, A):
- Z1 = F(Z1)
- print ("{")
- print ("uint64_t out[12] = {0};")
-
- if not J.is_zero():
- X1, Y1 = J.xy()
- X1 = X1 * Z1^2
- Y1 = Y1 * Z1^3
- else:
- X1 = F(32421522)
- Y1 = F(-451234651326)
- Z1 = 0
-
- if not A.is_zero():
- X2, Y2 = A.xy()
- else:
- X2 = 0
- Y2 = 0
-
- print ("uint64_t J[12] = {" + hex4(R*X1) +", " + hex4(R*Y1) + ", " + hex4(R*Z1) + "};")
- print ("uint64_t A[8] = {" + hex4(R*X2) +", " + hex4(R*Y2) + "};")
- P = J+A
- if not P.is_zero():
- X3, Y3 = P.xy()
- if not J.is_zero() and not A.is_zero():
- print ("// both nz")
- Z3 = Z1 * (Z1^2*X2 - X1)
- elif not J.is_zero():
- print ("// J nz")
- Z3 = Z1
- else:
- print ("// maybe A nz, maybe neither")
- Z3 = F(1)
- X3 = X3 * Z3^2
- Y3 = Y3 * Z3^3
- else:
- X3 = X1
- Y3 = Y1
- Z3 = 0
- print ("p256_jacobian_add_affine(out, J, A);")
- print ("uint64_t ref[12] = {" + hex4(R*X3) +", " + hex4(R*Y3) + ", " + hex4(R*Z3) + "};")
- testcount[0] = testcount[0] + 1
- print ("if (memcmp(out, ref, sizeof(uint64_t)*12)) return %d;"%testcount[0])
- print ("}")
-
-P = E(0, sqrt(b))
-
-print ("""
-#include <string.h>
-#include <stdint.h>
-#include "p256.h"
-
-int main() {
-""")
-print_test(B,1, P)
-print_test(B,1, -P)
-print_test(B,2, P)
-print_test(B,2, -P)
-print_test(P,2, P)
-print_test(P,-1, P)
-print_test(-P,1, B)
-print_test(-P,-1, B)
-print_test(B-B,0, B)
-print_test(P,1, B-B)
-print_test(P,-1, B-B)
-print_test(B,1, B-B)
-import random
-random.seed(314)
-for i in range(200):
- print_test(random.randint(0,100)*B,random.randint(1,100)^random.randint(0,10), random.randint(0,100)*P)
-print("""
-return 0;
-}""")
diff --git a/src/Specific/NISTP256/FancyMachine256/Barrett.v b/src/Specific/NISTP256/FancyMachine256/Barrett.v
deleted file mode 100644
index 9c3b55485..000000000
--- a/src/Specific/NISTP256/FancyMachine256/Barrett.v
+++ /dev/null
@@ -1,155 +0,0 @@
-Require Import Crypto.Specific.NISTP256.FancyMachine256.Core.
-Require Import LegacyArithmetic.BarretReduction.
-Require Import Crypto.Arithmetic.BarrettReduction.HAC.
-
-(** Useful for arithmetic in the field of integers modulo the order of the curve25519 base point *)
-Section expression.
- Let b : Z := 2.
- Let k : Z := 253.
- Let offset : Z := 3.
- Context (ops : fancy_machine.instructions (2 * 128)) (props : fancy_machine.arithmetic ops).
- Context (m μ : Z)
- (m_pos : 0 < m).
- Let base_pos : 0 < b. reflexivity. Qed.
- Context (k_good : m < b^k)
- (μ_good : μ = b^(2*k) / m) (* [/] is [Z.div], which is truncated *).
- Let offset_nonneg : 0 <= offset. unfold offset; omega. Qed.
- Let k_big_enough : offset <= k. unfold offset, k; omega. Qed.
- Context (m_small : 3 * m <= b^(k+offset))
- (m_large : b^(k-offset) <= m + 1).
- Context (H : 0 <= m < 2^256).
- Let H' : 0 <= 250 <= 256. omega. Qed.
- Let H'' : 0 < 250. omega. Qed.
- Local Notation SmallT := (@ZBounded.SmallT (2 ^ 256) (2 ^ 250) m
- (@ZLikeOps_of_ArchitectureBoundedOps 128 ops m _)).
- Definition ldi' : load_immediate SmallT := _.
- Let isldi : is_load_immediate ldi' := _.
- Context (μ_range : 0 <= b ^ (2 * k) / m < b ^ (k + offset)).
- Definition μ' : SmallT := ldi' μ.
- Let μ'_eq : ZBounded.decode_small μ' = μ.
- Proof.
- unfold ZBounded.decode_small, ZLikeOps_of_ArchitectureBoundedOps, μ'.
- apply (decode_load_immediate _ _).
- rewrite μ_good; apply μ_range.
- Qed.
-
- Let props'
- ldi_modulus ldi_0 Hldi_modulus Hldi_0
- := ZLikeProperties_of_ArchitectureBoundedOps_Factored ops m ldi_modulus ldi_0 Hldi_modulus Hldi_0 H 250 H' H''.
-
- Definition pre_f' ldi_modulus ldi_0 ldi_μ Hldi_modulus Hldi_0 (Hldi_μ : ldi_μ = ldi' μ)
- := (fun v => (@barrett_reduce m b k μ offset m_pos base_pos μ_good offset_nonneg k_big_enough m_small m_large _ (props' ldi_modulus ldi_0 Hldi_modulus Hldi_0) ldi_μ I (eq_trans (f_equal _ Hldi_μ) μ'_eq) (fst v, snd v))).
-
- Definition pre_f := pre_f' _ _ _ eq_refl eq_refl eq_refl.
-
- Local Arguments μ' / .
- Local Arguments ldi' / .
- Local Arguments Core.mul_double / _ _ _ _ _ _ _ _ _ _.
- Local Opaque Let_In Let_In_pf.
-
- Definition expression'
- := Eval simpl in
- (fun v => pflet ldi_modulus, Hldi_modulus := fancy_machine.ldi m in
- pflet ldi_μ, Hldi_μ := fancy_machine.ldi μ in
- pflet ldi_0, Hldi_0 := fancy_machine.ldi 0 in
- proj1_sig (pre_f' ldi_modulus ldi_0 ldi_μ Hldi_modulus Hldi_0 Hldi_μ v)).
- Local Transparent Let_In Let_In_pf.
- Definition expression
- := Eval cbv beta iota delta [expression' fst snd Let_In Let_In_pf] in expression'.
-
- Definition expression_eq v (H : 0 <= _ < _) : fancy_machine.decode (expression v) = _
- := proj1 (proj2_sig (pre_f v) H).
-End expression.
-
-Section reflected.
- Context (ops : fancy_machine.instructions (2 * 128)).
- Local Notation tZ := (Tbase TZ).
- Local Notation tW := (Tbase TW).
- Definition rexpression : Syntax.Expr base_type op (Arrow (tZ * tZ * tW * tW) tW).
- Proof.
- let v := (eval cbv beta delta [expression] in (fun mμxy => let '(mv, μv, xv, yv) := mμxy in expression ops mv μv (xv, yv))) in
- let v := Reify v in
- exact v.
- Defined.
-
- Definition rexpression_simple := Eval vm_compute in rexpression.
-
- (*Compute DefaultRegisters rexpression_simple.*)
-
- Definition registers
- := [RegMod; RegMuLow; x; xHigh; RegMod; RegMuLow; RegZero; tmp; q; qHigh; scratch+3;
- SpecialCarryBit; q; SpecialCarryBit; qHigh; scratch+3; SpecialCarryBit; q; SpecialCarryBit; qHigh; tmp;
- scratch+3; SpecialCarryBit; tmp; scratch+3; SpecialCarryBit; tmp; SpecialCarryBit; tmp; q; out].
-
- Definition compiled_syntax
- := Eval lazy in AssembleSyntax rexpression_simple registers.
-
- Context (m μ : Z)
- (props : fancy_machine.arithmetic ops).
-
- Let result (v : Tuple.tuple fancy_machine.W 2) := Syntax.Interp (@interp_op _) rexpression_simple (m, μ, fst v, snd v).
- Let assembled_result (v : Tuple.tuple fancy_machine.W 2) : fancy_machine.W := Core.Interp compiled_syntax (m, μ, fst v, snd v).
-
- Theorem sanity : result = expression ops m μ.
- Proof using Type.
- reflexivity.
- Qed.
-
- Theorem assembled_sanity : assembled_result = expression ops m μ.
- Proof using Type.
- reflexivity.
- Qed.
-
- Section correctness.
- Let b : Z := 2.
- Let k : Z := 253.
- Let offset : Z := 3.
- Context (H0 : 0 < m)
- (H1 : μ = b^(2 * k) / m)
- (H2 : 3 * m <= b^(k + offset))
- (H3 : b^(k - offset) <= m + 1)
- (H4 : 0 <= m < 2^(k + offset))
- (H5 : 0 <= b^(2 * k) / m < b^(k + offset))
- (v : Tuple.tuple fancy_machine.W 2)
- (H6 : 0 <= decode v < b^(2 * k)).
- Theorem correctness : fancy_machine.decode (result v) = decode v mod m.
- Proof using H0 H1 H2 H3 H4 H5 H6 props.
- rewrite sanity; destruct v.
- apply expression_eq; assumption.
- Qed.
- Theorem assembled_correctness : fancy_machine.decode (assembled_result v) = decode v mod m.
- Proof using H0 H1 H2 H3 H4 H5 H6 props.
- rewrite assembled_sanity; destruct v.
- apply expression_eq; assumption.
- Qed.
- End correctness.
-End reflected.
-
-Print compiled_syntax.
-(* compiled_syntax =
-fun ops : fancy_machine.instructions (2 * 128) =>
-λn (RegMod, RegMuLow, x, xHigh),
-nlet RegMod := RegMod in
-nlet RegMuLow := RegMuLow in
-nlet RegZero := ldi 0 in
-c.Rshi(tmp, xHigh, x, 250),
-c.Mul128(q, c.LowerHalf(tmp), c.LowerHalf(RegMuLow)),
-c.Mul128(qHigh, c.UpperHalf(tmp), c.UpperHalf(RegMuLow)),
-c.Mul128(scratch+3, c.UpperHalf(tmp), c.LowerHalf(RegMuLow)),
-c.Add(q, q, c.LeftShifted{scratch+3, 128}),
-c.Addc(qHigh, qHigh, c.RightShifted{scratch+3, 128}),
-c.Mul128(scratch+3, c.UpperHalf(RegMuLow), c.LowerHalf(tmp)),
-c.Add(q, q, c.LeftShifted{scratch+3, 128}),
-c.Addc(qHigh, qHigh, c.RightShifted{scratch+3, 128}),
-c.Mul128(tmp, c.LowerHalf(qHigh), c.LowerHalf(RegMod)),
-c.Mul128(scratch+3, c.UpperHalf(qHigh), c.LowerHalf(RegMod)),
-c.Add(tmp, tmp, c.LeftShifted{scratch+3, 128}),
-c.Mul128(scratch+3, c.UpperHalf(RegMod), c.LowerHalf(qHigh)),
-c.Add(tmp, tmp, c.LeftShifted{scratch+3, 128}),
-c.Sub(tmp, x, tmp),
-c.Addm(q, tmp, RegZero),
-c.Addm(out, q, RegZero),
-Return out
- : forall ops : fancy_machine.instructions (2 * 128),
- expr base_type op Register (Tbase TZ * Tbase TZ * Tbase TW * Tbase TW -> Tbase TW)
-*)
diff --git a/src/Specific/NISTP256/FancyMachine256/Core.v b/src/Specific/NISTP256/FancyMachine256/Core.v
deleted file mode 100644
index 881fa2e1e..000000000
--- a/src/Specific/NISTP256/FancyMachine256/Core.v
+++ /dev/null
@@ -1,339 +0,0 @@
-(** * A Fancy Machine with 256-bit registers *)
-Require Import Coq.Classes.RelationClasses Coq.Classes.Morphisms.
-Require Import Coq.PArith.BinPos Coq.micromega.Psatz.
-Require Export Coq.ZArith.ZArith Coq.Lists.List.
-Require Import Crypto.Util.Decidable.
-Require Export Crypto.LegacyArithmetic.Interface.
-Require Export Crypto.LegacyArithmetic.ArchitectureToZLike.
-Require Export Crypto.LegacyArithmetic.ArchitectureToZLikeProofs.
-Require Export Crypto.Util.Tuple.
-Require Import Crypto.Util.Option Crypto.Util.Sigma Crypto.Util.Prod.
-Require Import Crypto.Compilers.Named.Context.
-Require Export Crypto.Compilers.Named.Syntax.
-Require Export Crypto.Compilers.Named.PositiveContext.
-Require Import Crypto.Compilers.Named.DeadCodeElimination.
-Require Import Crypto.Compilers.CountLets.
-Require Import Crypto.Compilers.Named.ContextOn.
-Require Import Crypto.Compilers.Named.Wf.
-Require Export Crypto.Compilers.Syntax.
-Require Import Crypto.Compilers.Linearize.
-Require Import Crypto.Compilers.Inline.
-Require Import Crypto.Compilers.CommonSubexpressionElimination.
-Require Export Crypto.Compilers.Reify.
-Require Export Crypto.Util.Option.
-Require Export Crypto.Util.Notations.
-Require Import Crypto.Util.ListUtil.
-Require Export Crypto.Util.LetIn.
-Require Import Crypto.Util.Tactics.BreakMatch.
-Export ListNotations.
-
-Open Scope Z_scope.
-Local Notation eta x := (fst x, snd x).
-Local Notation eta3 x := (eta (fst x), snd x).
-Local Notation eta3' x := (fst x, eta (snd x)).
-
-(** ** Reflective Assembly Syntax *)
-Section reflection.
- Context {ops : fancy_machine.instructions (2 * 128)}.
- Local Set Boolean Equality Schemes.
- Local Set Decidable Equality Schemes.
- Inductive base_type := TZ | Tbool | TW.
- Global Instance dec_base_type : DecidableRel (@eq base_type)
- := base_type_eq_dec.
- Definition interp_base_type (v : base_type) : Type :=
- match v with
- | TZ => Z
- | Tbool => bool
- | TW => fancy_machine.W
- end.
- Local Notation tZ := (Tbase TZ).
- Local Notation tbool := (Tbase Tbool).
- Local Notation tW := (Tbase TW).
- Local Open Scope ctype_scope.
- Inductive op : flat_type base_type -> flat_type base_type -> Type :=
- | OPconst t : interp_base_type t -> op Unit (Tbase t)
- | OPldi : op tZ tW
- | OPshrd : op (tW * tW * tZ) tW
- | OPshl : op (tW * tZ) tW
- | OPshr : op (tW * tZ) tW
- | OPadc : op (tW * tW * tbool) (tbool * tW)
- | OPsubc : op (tW * tW * tbool) (tbool * tW)
- | OPmulhwll : op (tW * tW) tW
- | OPmulhwhl : op (tW * tW) tW
- | OPmulhwhh : op (tW * tW) tW
- | OPselc : op (tbool * tW * tW) tW
- | OPaddm : op (tW * tW * tW) tW.
-
- Definition is_const s d (v : op s d) : bool
- := match v with OPconst _ _ => true | _ => false end.
-
- Definition interp_op src dst (f : op src dst)
- : interp_flat_type interp_base_type src -> interp_flat_type interp_base_type dst
- := match f in op s d return interp_flat_type _ s -> interp_flat_type _ d with
- | OPconst _ v => fun _ => v
- | OPldi => ldi
- | OPshrd => fun xyz => let '(x, y, z) := eta3 xyz in shrd x y z
- | OPshl => fun xy => let '(x, y) := eta xy in shl x y
- | OPshr => fun xy => let '(x, y) := eta xy in shr x y
- | OPadc => fun xyz => let '(x, y, z) := eta3 xyz in adc x y z
- | OPsubc => fun xyz => let '(x, y, z) := eta3 xyz in subc x y z
- | OPmulhwll => fun xy => let '(x, y) := eta xy in mulhwll x y
- | OPmulhwhl => fun xy => let '(x, y) := eta xy in mulhwhl x y
- | OPmulhwhh => fun xy => let '(x, y) := eta xy in mulhwhh x y
- | OPselc => fun xyz => let '(x, y, z) := eta3 xyz in selc x y z
- | OPaddm => fun xyz => let '(x, y, z) := eta3 xyz in addm x y z
- end.
-
- Inductive op_code : Type :=
- | SOPconstb (v : bool) | SOPconstZ (v : Z) | SOPconstW
- | SOPldi | SOPshrd | SOPshl | SOPshr | SOPadc | SOPsubc
- | SOPmulhwll | SOPmulhwhl | SOPmulhwhh | SOPselc | SOPaddm.
-
- Definition symbolicify_op s d (v : op s d) : op_code
- := match v with
- | OPconst TZ v => SOPconstZ v
- | OPconst Tbool v => SOPconstb v
- | OPconst TW v => SOPconstW
- | OPldi => SOPldi
- | OPshrd => SOPshrd
- | OPshl => SOPshl
- | OPshr => SOPshr
- | OPadc => SOPadc
- | OPsubc => SOPsubc
- | OPmulhwll => SOPmulhwll
- | OPmulhwhl => SOPmulhwhl
- | OPmulhwhh => SOPmulhwhh
- | OPselc => SOPselc
- | OPaddm => SOPaddm
- end.
-
- Definition CSE {t} e := @CSE base_type op_code base_type_beq op_code_beq internal_base_type_dec_bl op symbolicify_op (fun _ x => x) true t e (fun _ => nil).
-
- Inductive inline_option := opt_inline | opt_default | opt_noinline.
-
- Definition postprocess var t (e : @exprf base_type op var t)
- : @inline_directive base_type op var t
- := let opt : inline_option
- := match e with
- | Op _ _ OPshl _ => opt_inline
- | Op _ _ OPshr _ => opt_inline
- | Op _ _ (OPconst _ _) _ => opt_inline
- | _ => opt_default
- end in
- match opt with
- | opt_noinline => no_inline e
- | opt_default => default_inline e
- | opt_inline => match t as t' return exprf _ _ t' -> inline_directive t' with
- | Tbase _ => fun e => @inline _ _ _ (Tbase _) e
- | _ => fun e => default_inline e
- end e
- end.
-
- Definition Inline {t} e := @InlineConstGen base_type op postprocess t e.
-End reflection.
-
-Ltac base_reify_op op op_head expr ::=
- lazymatch op_head with
- | @Interface.ldi => constr:(reify_op op op_head 1 OPldi)
- | @Interface.shrd => constr:(reify_op op op_head 3 OPshrd)
- | @Interface.shl => constr:(reify_op op op_head 2 OPshl)
- | @Interface.shr => constr:(reify_op op op_head 2 OPshr)
- | @Interface.adc => constr:(reify_op op op_head 3 OPadc)
- | @Interface.subc => constr:(reify_op op op_head 3 OPsubc)
- | @Interface.mulhwll => constr:(reify_op op op_head 2 OPmulhwll)
- | @Interface.mulhwhl => constr:(reify_op op op_head 2 OPmulhwhl)
- | @Interface.mulhwhh => constr:(reify_op op op_head 2 OPmulhwhh)
- | @Interface.selc => constr:(reify_op op op_head 3 OPselc)
- | @Interface.addm => constr:(reify_op op op_head 3 OPaddm)
- end.
-Ltac base_reify_type T ::=
- match T with
- | Z => TZ
- | bool => Tbool
- | fancy_machine.W => TW
- end.
-
-Ltac Reify' e := Reify.Reify' base_type (@interp_base_type _) (@op _) e.
-Ltac Reify e :=
- let v := Reify.Reify base_type (@interp_base_type _) (@op _) (@OPconst _) e in
- constr:(Inline ((*CSE _*) (InlineConst (@is_const _) (ANormal v)))).
-(*Ltac Reify_rhs := Reify.Reify_rhs base_type (interp_base_type _) op (interp_op _).*)
-
-(** ** Raw Syntax Trees *)
-(** These are used solely for pretty-printing the expression tree in a
- form that can be basically copy-pasted into other languages which
- can be compiled for the Fancy Machine. Hypothetically, we could
- add support for custom named identifiers, by carrying around
- [string] identifiers and using them for pretty-printing... It
- might also be possible to verify this layer, too, by adding a
- partial interpretation function... *)
-
-Local Set Decidable Equality Schemes.
-Local Set Boolean Equality Schemes.
-
-Inductive Register :=
-| RegPInv | RegMod | RegMuLow | RegZero
-| y | t1 | t2 | lo | hi | out | src1 | src2 | tmp | q | qHigh | x | xHigh
-| SpecialCarryBit
-| scratch | scratchplus (n : nat).
-
-Notation "'scratch+' n" := (scratchplus n) (format "'scratch+' n", at level 10).
-
-Definition pos_of_Register (r : Register) :=
- match r with
- | RegPInv => 1
- | RegMod => 2
- | RegMuLow => 3
- | RegZero => 4
- | y => 5
- | t1 => 6
- | t2 => 7
- | lo => 8
- | hi => 9
- | out => 10
- | src1 => 11
- | src2 => 12
- | tmp => 13
- | q => 14
- | qHigh => 15
- | x => 16
- | xHigh => 17
- | SpecialCarryBit => 18
- | scratch => 19
- | scratchplus n => 19 + Pos.of_nat (S n)
- end%positive.
-
-Lemma pos_of_Register_inj x y : pos_of_Register x = pos_of_Register y -> x = y.
-Proof.
- unfold pos_of_Register; repeat break_match; subst;
- try rewrite Pos.add_cancel_l; try rewrite Nat2Pos.inj_iff;
- try solve [ simpl; congruence | intros; exfalso; lia ].
-Qed.
-
-Definition RegisterContext {var : base_type -> Type} : Context Register var
- := ContextOn pos_of_Register (PositiveContext _ _ base_type_beq internal_base_type_dec_bl).
-
-Definition syntax {ops : fancy_machine.instructions (2 * 128)}
- := Named.expr base_type op Register.
-
-Class wf_empty {ops} {var} {t} (e : Named.expr base_type (@op ops) Register t)
- := mk_wf_empty : @Wf.Named.wf base_type Register _ var RegisterContext empty t e.
-Global Hint Extern 0 (wf_empty _) => vm_compute; intros; constructor : typeclass_instances.
-
-(** Assemble a well-typed easily interpretable expression into a
- syntax tree we can use for pretty-printing. *)
-Section assemble.
- Context {ops : fancy_machine.instructions (2 * 128)}.
-
- Definition AssembleSyntax' {t} (e : Expr base_type op t) (ls : list Register)
- : option (syntax t)
- := CompileAndEliminateDeadCode (base_type_code_bl:=internal_base_type_dec_bl) (Context:=RegisterContext) e ls.
- Definition AssembleSyntax {t} e ls (res := @AssembleSyntax' t e ls)
- := match res return match res with None => _ | _ => _ end with
- | Some v => v
- | None => I
- end.
-
- Definition dummy_registers (n : nat) : list Register
- := List.map scratchplus (seq 0 n).
- Definition DefaultRegisters {t} (e : Expr base_type op t) : list Register
- := dummy_registers (CountBinders e).
-
- Definition DefaultAssembleSyntax {t} e := @AssembleSyntax t e (DefaultRegisters e).
-
- Definition Interp {t} e v
- := invert_Some (@Named.Interp base_type interp_base_type op Register RegisterContext interp_op t e v).
-End assemble.
-
-Export Compilers.Named.Syntax.
-Open Scope nexpr_scope.
-Open Scope ctype_scope.
-Open Scope type_scope.
-Open Scope core_scope.
-
-Notation Return x := (Var x).
-Notation Const z := (Op (@OPconst _ _ z) TT).
-Notation ldi z := (Op OPldi (Const z%Z)).
-Notation "'nlet' x := A 'in' b" := (LetIn _ x (Op OPldi (Var A%nexpr)) b%nexpr) : nexpr_scope.
-Notation "'c.Rshi' ( x , A , B , C ) , b" :=
- (LetIn _ x (Op OPshrd (Pair (Pair (Var A) (Var B)) (Const C%Z))) b)
- (at level 200, b at level 200, format "'c.Rshi' ( x , A , B , C ) , '//' b").
-Notation "'c.Mul128' ( x , 'c.UpperHalf' ( A ) , 'c.UpperHalf' ( B ) ) , b" :=
- (LetIn _ x (Op OPmulhwhh (Pair (Var A) (Var B))) b)
- (at level 200, b at level 200, format "'c.Mul128' ( x , 'c.UpperHalf' ( A ) , 'c.UpperHalf' ( B ) ) , '//' b").
-Notation "'c.Mul128' ( x , 'c.UpperHalf' ( A ) , 'c.LowerHalf' ( B ) ) , b" :=
- (LetIn _ x (Op OPmulhwhl (Pair (Var A) (Var B))) b)
- (at level 200, b at level 200, format "'c.Mul128' ( x , 'c.UpperHalf' ( A ) , 'c.LowerHalf' ( B ) ) , '//' b").
-Notation "'c.Mul128' ( x , 'c.LowerHalf' ( A ) , 'c.LowerHalf' ( B ) ) , b" :=
- (LetIn _ x (Op OPmulhwll (Pair (Var A) (Var B))) b)
- (at level 200, b at level 200, format "'c.Mul128' ( x , 'c.LowerHalf' ( A ) , 'c.LowerHalf' ( B ) ) , '//' b").
-Notation "'c.LeftShifted' { x , v }" :=
- (Op OPshl (Pair (Var x) (Const v%Z)))
- (at level 200, format "'c.LeftShifted' { x , v }").
-Notation "'c.RightShifted' { x , v }" :=
- (Op OPshr (Pair (Var x) (Const v%Z)))
- (at level 200, format "'c.RightShifted' { x , v }").
-
-Notation "'c.Add' ( x , A , B ) , b" :=
- (LetIn _ (pair SpecialCarryBit x) (Op OPadc (Pair (Pair A B) (Const false))) b)
- (at level 200, b at level 200, format "'c.Add' ( x , A , B ) , '//' b").
-Notation "'c.Add' ( x , A , B ) , b" :=
- (LetIn _ (pair SpecialCarryBit x) (Op OPadc (Pair (Pair (Var A) B) (Const false))) b)
- (at level 200, b at level 200, format "'c.Add' ( x , A , B ) , '//' b").
-Notation "'c.Add' ( x , A , B ) , b" :=
- (LetIn _ (pair SpecialCarryBit x) (Op OPadc (Pair (Pair A (Var B)) (Const false))) b)
- (at level 200, b at level 200, format "'c.Add' ( x , A , B ) , '//' b").
-Notation "'c.Add' ( x , A , B ) , b" :=
- (LetIn _ (pair SpecialCarryBit x) (Op OPadc (Pair (Pair (Var A) (Var B)) (Const false))) b)
- (at level 200, b at level 200, format "'c.Add' ( x , A , B ) , '//' b").
-Notation "'c.Addc' ( x , A , B ) , b" :=
- (LetIn _ (pair SpecialCarryBit x) (Op OPadc (Pair (Pair A B) (Var SpecialCarryBit))) b)
- (at level 200, b at level 200, format "'c.Addc' ( x , A , B ) , '//' b").
-Notation "'c.Addc' ( x , A , B ) , b" :=
- (LetIn _ (pair SpecialCarryBit x) (Op OPadc (Pair (Pair (Var A) B) (Var SpecialCarryBit))) b)
- (at level 200, b at level 200, format "'c.Addc' ( x , A , B ) , '//' b").
-Notation "'c.Addc' ( x , A , B ) , b" :=
- (LetIn _ (pair SpecialCarryBit x) (Op OPadc (Pair (Pair A (Var B)) (Var SpecialCarryBit))) b)
- (at level 200, b at level 200, format "'c.Addc' ( x , A , B ) , '//' b").
-Notation "'c.Addc' ( x , A , B ) , b" :=
- (LetIn _ (pair SpecialCarryBit x) (Op OPadc (Pair (Pair (Var A) (Var B)) (Var SpecialCarryBit))) b)
- (at level 200, b at level 200, format "'c.Addc' ( x , A , B ) , '//' b").
-
-Notation "'c.Sub' ( x , A , B ) , b" :=
- (LetIn _ (pair SpecialCarryBit x) (Op OPsubc (Pair (Pair A B) (Const false))) b)
- (at level 200, b at level 200, format "'c.Sub' ( x , A , B ) , '//' b").
-Notation "'c.Sub' ( x , A , B ) , b" :=
- (LetIn _ (pair SpecialCarryBit x) (Op OPsubc (Pair (Pair (Var A) B) (Const false))) b)
- (at level 200, b at level 200, format "'c.Sub' ( x , A , B ) , '//' b").
-Notation "'c.Sub' ( x , A , B ) , b" :=
- (LetIn _ (pair SpecialCarryBit x) (Op OPsubc (Pair (Pair A (Var B)) (Const false))) b)
- (at level 200, b at level 200, format "'c.Sub' ( x , A , B ) , '//' b").
-Notation "'c.Sub' ( x , A , B ) , b" :=
- (LetIn _ (pair SpecialCarryBit x) (Op OPsubc (Pair (Pair (Var A) (Var B)) (Const false))) b)
- (at level 200, b at level 200, format "'c.Sub' ( x , A , B ) , '//' b").
-
-Notation "'c.Addm' ( x , A , B ) , b" :=
- (LetIn _ x (Op OPaddm (Pair (Pair A B) (Var RegMod))) b)
- (at level 200, b at level 200, format "'c.Addm' ( x , A , B ) , '//' b").
-Notation "'c.Addm' ( x , A , B ) , b" :=
- (LetIn _ x (Op OPaddm (Pair (Pair (Var A) B) (Var RegMod))) b)
- (at level 200, b at level 200, format "'c.Addm' ( x , A , B ) , '//' b").
-Notation "'c.Addm' ( x , A , B ) , b" :=
- (LetIn _ x (Op OPaddm (Pair (Pair A (Var B)) (Var RegMod))) b)
- (at level 200, b at level 200, format "'c.Addm' ( x , A , B ) , '//' b").
-Notation "'c.Addm' ( x , A , B ) , b" :=
- (LetIn _ x (Op OPaddm (Pair (Pair (Var A) (Var B)) (Var RegMod))) b)
- (at level 200, b at level 200, format "'c.Addm' ( x , A , B ) , '//' b").
-
-Notation "'c.Selc' ( x , A , B ) , b" :=
- (LetIn _ x (Op OPselc (Pair (Pair (Var SpecialCarryBit) A) B)) b)
- (at level 200, b at level 200, format "'c.Selc' ( x , A , B ) , '//' b").
-Notation "'c.Selc' ( x , A , B ) , b" :=
- (LetIn _ x (Op OPselc (Pair (Pair (Var SpecialCarryBit) (Var A)) B)) b)
- (at level 200, b at level 200, format "'c.Selc' ( x , A , B ) , '//' b").
-Notation "'c.Selc' ( x , A , B ) , b" :=
- (LetIn _ x (Op OPselc (Pair (Pair (Var SpecialCarryBit) A) (Var B))) b)
- (at level 200, b at level 200, format "'c.Selc' ( x , A , B ) , '//' b").
-Notation "'c.Selc' ( x , A , B ) , b" :=
- (LetIn _ x (Op OPselc (Pair (Pair (Var SpecialCarryBit) (Var A)) (Var B))) b)
- (at level 200, b at level 200, format "'c.Selc' ( x , A , B ) , '//' b").
diff --git a/src/Specific/NISTP256/FancyMachine256/Montgomery.v b/src/Specific/NISTP256/FancyMachine256/Montgomery.v
deleted file mode 100644
index 4caecca6b..000000000
--- a/src/Specific/NISTP256/FancyMachine256/Montgomery.v
+++ /dev/null
@@ -1,157 +0,0 @@
-Require Import Crypto.Specific.NISTP256.FancyMachine256.Core.
-Require Import Crypto.LegacyArithmetic.MontgomeryReduction.
-Require Import Crypto.Arithmetic.MontgomeryReduction.Proofs.
-Require Import Crypto.Util.ZUtil.EquivModulo.
-
-Section expression.
- Context (ops : fancy_machine.instructions (2 * 128)) (props : fancy_machine.arithmetic ops) (modulus : Z) (m' : Z) (Hm : modulus <> 0) (H : 0 <= modulus < 2^256) (Hm' : 0 <= m' < 2^256).
- Let H' : 0 <= 256 <= 256. omega. Qed.
- Let H'' : 0 < 256. omega. Qed.
- Definition ldi' : load_immediate
- (@ZBounded.SmallT (2 ^ 256) (2 ^ 256) modulus
- (@ZLikeOps_of_ArchitectureBoundedOps 128 ops modulus 256)) := _.
- Let isldi : is_load_immediate ldi' := _.
- Let props'
- ldi_modulus ldi_0 Hldi_modulus Hldi_0
- := ZLikeProperties_of_ArchitectureBoundedOps_Factored ops modulus ldi_modulus ldi_0 Hldi_modulus Hldi_0 H 256 H' H''.
- Definition pre_f' ldi_modulus ldi_0 Hldi_modulus Hldi_0 lm'
- := (fun v => (reduce_via_partial (2^256) modulus (props := props' ldi_modulus ldi_0 Hldi_modulus Hldi_0) lm' I Hm (fst v, snd v))).
- Definition pre_f := pre_f' _ _ eq_refl eq_refl (ldi' m').
-
- Definition f := (fun v => pflet ldi_modulus, Hldi_modulus := ldi' modulus in
- dlet lm' := ldi' m' in
- pflet ldi_0, Hldi_0 := ldi' 0 in
- proj1_sig (pre_f' ldi_modulus ldi_0 Hldi_modulus Hldi_0 lm' v)).
-
- Local Arguments proj1_sig _ _ !_ / .
- Local Arguments ZBounded.CarryAdd / _ _ _ _ _ _.
- Local Arguments ZBounded.ConditionalSubtract / _ _ _ _ _ _.
- Local Arguments ZBounded.ConditionalSubtractModulus / _ _ _ _ _.
- Local Arguments ZLikeOps_of_ArchitectureBoundedOps / _ _ _ _.
- Local Arguments ZBounded.DivBy_SmallBound / _ _ _ _ _.
- Local Arguments f / _.
- Local Arguments pre_f' / _ _ _ _ _ _.
- Local Arguments ldi' / .
- Local Arguments reduce_via_partial / _ _ _ _ _ _ _ _.
- Local Arguments Core.mul_double / _ _ _ _ _ _ _ _ _ _.
- Local Opaque Let_In Let_In_pf.
-
- Definition expression'
- := Eval simpl in f.
- Local Transparent Let_In Let_In_pf.
- Definition expression
- := Eval cbv beta delta [expression' fst snd Let_In Let_In_pf] in expression'.
-
- Definition expression_eq v : fancy_machine.decode (expression v) = _
- := proj1 (proj2_sig (pre_f v) I).
- Definition expression_correct
- R' HR0 HR1
- v
- Hv
- : fancy_machine.decode (expression v) = _
- := @Crypto.LegacyArithmetic.MontgomeryReduction.reduce_via_partial_correct (2^256) modulus _ (props' _ _ eq_refl eq_refl) (ldi' m') I Hm R' HR0 HR1 (fst v, snd v) I Hv.
-End expression.
-
-Section reflected.
- Context (ops : fancy_machine.instructions (2 * 128)).
- Local Notation tZ := (Tbase TZ).
- Local Notation tW := (Tbase TW).
- Definition rexpression : Syntax.Expr base_type op (Arrow (tZ * tZ * tW * tW) tW).
- Proof.
- let v := (eval cbv beta delta [expression] in
- (fun modulus_m'_x_y => let '(modulusv, m'v, xv, yv) := modulus_m'_x_y in
- expression ops modulusv m'v (xv, yv))) in
- let v := Reify v in
- exact v.
- Defined.
-
- Definition rexpression_simple := Eval vm_compute in rexpression.
-
- (*Compute DefaultRegisters rexpression_simple.*)
-
- Definition registers
- := [RegMod; RegPInv; lo; hi; RegMod; RegPInv; RegZero; y; t1; SpecialCarryBit; y;
- t1; SpecialCarryBit; y; t1; t2; scratch+3; SpecialCarryBit; t1; SpecialCarryBit; t2;
- scratch+3; SpecialCarryBit; t1; SpecialCarryBit; t2; SpecialCarryBit; lo; SpecialCarryBit; hi; y;
- SpecialCarryBit; lo; lo].
-
- Definition compiled_syntax
- := Eval lazy in AssembleSyntax rexpression_simple registers.
-
- Context (modulus m' : Z)
- (props : fancy_machine.arithmetic ops).
-
- Let result (v : Tuple.tuple fancy_machine.W 2) := Syntax.Interp interp_op rexpression_simple (modulus, m', fst v, snd v).
-
- Let assembled_result (v : Tuple.tuple fancy_machine.W 2) : fancy_machine.W := Core.Interp compiled_syntax (modulus, m', fst v, snd v).
-
- Theorem sanity : result = expression ops modulus m'.
- Proof using Type.
- reflexivity.
- Qed.
-
- Theorem assembled_sanity : assembled_result = expression ops modulus m'.
- Proof using Type.
- reflexivity.
- Qed.
-
- Local Infix "≡₂₅₆" := (Z.equiv_modulo (2^256)).
- Local Infix "≡" := (Z.equiv_modulo modulus).
-
- Section correctness.
- Context R' (* modular inverse of 2^256 *)
- (H0 : modulus <> 0)
- (H1 : 0 <= modulus < 2^256)
- (H2 : 0 <= m' < 2^256)
- (H3 : 2^256 * R' ≡ 1)
- (H4 : modulus * m' ≡₂₅₆ -1)
- (v : Tuple.tuple fancy_machine.W 2)
- (H5 : 0 <= decode v <= 2^256 * modulus).
- Theorem correctness
- : fancy_machine.decode (result v) = (decode v * R') mod modulus.
- Proof using H0 H1 H2 H3 H4 H5 props.
- replace m' with (fancy_machine.decode (fancy_machine.ldi m'))
- in H4
- by (apply decode_load_immediate; trivial; exact _).
- rewrite sanity; destruct v; apply expression_correct; assumption.
- Qed.
- Theorem assembled_correctness
- : fancy_machine.decode (assembled_result v) = (decode v * R') mod modulus.
- Proof using H0 H1 H2 H3 H4 H5 props.
- replace m' with (fancy_machine.decode (fancy_machine.ldi m'))
- in H4
- by (apply decode_load_immediate; trivial; exact _).
- rewrite assembled_sanity; destruct v; apply expression_correct; assumption.
- Qed.
- End correctness.
-End reflected.
-
-Print compiled_syntax.
-(* compiled_syntax =
-fun ops : fancy_machine.instructions (2 * 128) =>
-λn (RegMod, RegPInv, lo, hi),
-nlet RegMod := RegMod in
-nlet RegPInv := RegPInv in
-nlet RegZero := ldi 0 in
-c.Mul128(y, c.LowerHalf(lo), c.LowerHalf(RegPInv)),
-c.Mul128(t1, c.UpperHalf(lo), c.LowerHalf(RegPInv)),
-c.Add(y, y, c.LeftShifted{t1, 128}),
-c.Mul128(t1, c.UpperHalf(RegPInv), c.LowerHalf(lo)),
-c.Add(y, y, c.LeftShifted{t1, 128}),
-c.Mul128(t1, c.LowerHalf(y), c.LowerHalf(RegMod)),
-c.Mul128(t2, c.UpperHalf(y), c.UpperHalf(RegMod)),
-c.Mul128(scratch+3, c.UpperHalf(y), c.LowerHalf(RegMod)),
-c.Add(t1, t1, c.LeftShifted{scratch+3, 128}),
-c.Addc(t2, t2, c.RightShifted{scratch+3, 128}),
-c.Mul128(scratch+3, c.UpperHalf(RegMod), c.LowerHalf(y)),
-c.Add(t1, t1, c.LeftShifted{scratch+3, 128}),
-c.Addc(t2, t2, c.RightShifted{scratch+3, 128}),
-c.Add(lo, lo, t1),
-c.Addc(hi, hi, t2),
-c.Selc(y, RegMod, RegZero),
-c.Sub(lo, hi, y),
-c.Addm(lo, lo, RegZero),
-Return lo
- : forall ops : fancy_machine.instructions (2 * 128),
- expr base_type op Register (Tbase TZ * Tbase TZ * Tbase TW * Tbase TW -> Tbase TW)
-*)
diff --git a/src/Specific/X2448/Karatsuba/C64/CurveParameters.v b/src/Specific/X2448/Karatsuba/C64/CurveParameters.v
deleted file mode 100644
index b22d3a967..000000000
--- a/src/Specific/X2448/Karatsuba/C64/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^448-2^224-1
-Base: 56
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 56;
- bitwidth := 64;
- s := 2^448;
- c := [(1, 1); (2^224, 1)];
- carry_chains := Some [[3; 7]; [0; 4; 1; 5; 2; 6; 3; 7]; [4; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- karatsuba := None;
- montgomery := false;
- freeze := Some false;
- 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/X2448/Karatsuba/C64/Synthesis.v b/src/Specific/X2448/Karatsuba/C64/Synthesis.v
deleted file mode 100644
index 4016ee71c..000000000
--- a/src/Specific/X2448/Karatsuba/C64/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.X2448.Karatsuba.C64.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/X2448/Karatsuba/C64/femul.v b/src/Specific/X2448/Karatsuba/C64/femul.v
deleted file mode 100644
index 756c23e30..000000000
--- a/src/Specific/X2448/Karatsuba/C64/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.X2448.Karatsuba.C64.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/X2448/Karatsuba/C64/femulDisplay.log b/src/Specific/X2448/Karatsuba/C64/femulDisplay.log
deleted file mode 100644
index d085a6e3e..000000000
--- a/src/Specific/X2448/Karatsuba/C64/femulDisplay.log
+++ /dev/null
@@ -1,61 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint128_t x32 = (((uint128_t)(x11 + x16) * (x25 + x30)) - ((uint128_t)x11 * x25));
- uint128_t x33 = ((((uint128_t)(x9 + x17) * (x25 + x30)) + ((uint128_t)(x11 + x16) * (x23 + x31))) - (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)));
- uint128_t x34 = ((((uint128_t)(x7 + x15) * (x25 + x30)) + (((uint128_t)(x9 + x17) * (x23 + x31)) + ((uint128_t)(x11 + x16) * (x21 + x29)))) - (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + ((uint128_t)x11 * x21))));
- uint128_t x35 = ((((uint128_t)(x5 + x13) * (x25 + x30)) + (((uint128_t)(x7 + x15) * (x23 + x31)) + (((uint128_t)(x9 + x17) * (x21 + x29)) + ((uint128_t)(x11 + x16) * (x19 + x27))))) - (((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))));
- uint128_t x36 = ((((uint128_t)(x5 + x13) * (x23 + x31)) + (((uint128_t)(x7 + x15) * (x21 + x29)) + ((uint128_t)(x9 + x17) * (x19 + x27)))) - (((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))));
- uint128_t x37 = ((((uint128_t)(x5 + x13) * (x21 + x29)) + ((uint128_t)(x7 + x15) * (x19 + x27))) - (((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)));
- uint128_t x38 = (((uint128_t)(x5 + x13) * (x19 + x27)) - ((uint128_t)x5 * x19));
- uint128_t x39 = (((((uint128_t)x11 * x25) + ((uint128_t)x16 * x30)) + x36) + x32);
- uint128_t x40 = ((((((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)) + (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))) + x37) + x33);
- uint128_t x41 = ((((((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + ((uint128_t)x11 * x21))) + (((uint128_t)x15 * x30) + (((uint128_t)x17 * x31) + ((uint128_t)x16 * x29)))) + x38) + x34);
- uint128_t x42 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27)))));
- uint128_t x43 = (((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + ((uint128_t)x17 * x27)))) + x32);
- uint128_t x44 = (((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (((uint128_t)x13 * x29) + ((uint128_t)x15 * x27))) + x33);
- uint128_t x45 = ((((uint128_t)x5 * x19) + ((uint128_t)x13 * x27)) + x34);
- uint64_t x46 = (uint64_t) (x42 >> 0x38);
- uint64_t x47 = ((uint64_t)x42 & 0xffffffffffffff);
- uint64_t x48 = (uint64_t) (x35 >> 0x38);
- uint64_t x49 = ((uint64_t)x35 & 0xffffffffffffff);
- uint128_t x50 = (((uint128_t)0x100000000000000 * x48) + x49);
- uint64_t x51 = (uint64_t) (x50 >> 0x38);
- uint64_t x52 = ((uint64_t)x50 & 0xffffffffffffff);
- uint128_t x53 = (x45 + x51);
- uint64_t x54 = (uint64_t) (x53 >> 0x38);
- uint64_t x55 = ((uint64_t)x53 & 0xffffffffffffff);
- uint128_t x56 = ((x46 + x41) + x51);
- uint64_t x57 = (uint64_t) (x56 >> 0x38);
- uint64_t x58 = ((uint64_t)x56 & 0xffffffffffffff);
- uint128_t x59 = (x54 + x44);
- uint64_t x60 = (uint64_t) (x59 >> 0x38);
- uint64_t x61 = ((uint64_t)x59 & 0xffffffffffffff);
- uint128_t x62 = (x57 + x40);
- uint64_t x63 = (uint64_t) (x62 >> 0x38);
- uint64_t x64 = ((uint64_t)x62 & 0xffffffffffffff);
- uint128_t x65 = (x60 + x43);
- uint64_t x66 = (uint64_t) (x65 >> 0x38);
- uint64_t x67 = ((uint64_t)x65 & 0xffffffffffffff);
- uint128_t x68 = (x63 + x39);
- uint64_t x69 = (uint64_t) (x68 >> 0x38);
- uint64_t x70 = ((uint64_t)x68 & 0xffffffffffffff);
- uint64_t x71 = (x66 + x47);
- uint64_t x72 = (x71 >> 0x38);
- uint64_t x73 = (x71 & 0xffffffffffffff);
- uint64_t x74 = (x69 + x52);
- uint64_t x75 = (x74 >> 0x38);
- uint64_t x76 = (x74 & 0xffffffffffffff);
- uint64_t x77 = ((0x100000000000000 * x75) + x76);
- uint64_t x78 = (x77 >> 0x38);
- uint64_t x79 = (x77 & 0xffffffffffffff);
- uint64_t x80 = ((x72 + x58) + x78);
- uint64_t x81 = (x80 >> 0x38);
- uint64_t x82 = (x80 & 0xffffffffffffff);
- uint64_t x83 = (x55 + x78);
- uint64_t x84 = (x83 >> 0x38);
- uint64_t x85 = (x83 & 0xffffffffffffff);
- return (Return x79, Return x70, (x81 + x64), Return x82, Return x73, Return x67, (x84 + x61), Return x85))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/X2448/Karatsuba/C64/femulDisplay.v b/src/Specific/X2448/Karatsuba/C64/femulDisplay.v
deleted file mode 100644
index 15877076f..000000000
--- a/src/Specific/X2448/Karatsuba/C64/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.X2448.Karatsuba.C64.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/X2448/Karatsuba/C64/py_interpreter.sh b/src/Specific/X2448/Karatsuba/C64/py_interpreter.sh
deleted file mode 100755
index 49c40c9c2..000000000
--- a/src/Specific/X2448/Karatsuba/C64/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**448-2**224-1' -Dmodulus_bytes='56' -Da24='121665'
diff --git a/src/Specific/X25519/C32/CurveParameters.v b/src/Specific/X25519/C32/CurveParameters.v
deleted file mode 100644
index 8b13a268c..000000000
--- a/src/Specific/X25519/C32/CurveParameters.v
+++ /dev/null
@@ -1,257 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^255-19
-Base: 25.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 25 + 1/2;
- bitwidth := 32;
- s := 2^255;
- c := [(1, 19)];
- carry_chains := Some [seq 0 (pred 10); [0; 1]]%nat;
-
- a24 := Some 121665;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := false;
- freeze := Some true;
- ladderstep := false;
-
- mul_code := Some (fun a b =>
- (* Micro-optimized form from curve25519-donna by Adam Langley (Google) and Daniel Bernstein. See <https://github.com/agl/curve25519-donna/blob/master/LICENSE.md>. *)
- let '(in9, in8, in7, in6, in5, in4, in3, in2, in1, in0) := a in
- let '(in29, in28, in27, in26, in25, in24, in23, in22, in21, in20) := b in
- dlet output0 := in20 * in0 in
- dlet output1 := in20 * in1 +
- in21 * in0 in
- dlet output2 := 2 * in21 * in1 +
- in20 * in2 +
- in22 * in0 in
- dlet output3 := in21 * in2 +
- in22 * in1 +
- in20 * in3 +
- in23 * in0 in
- dlet output4 := in22 * in2 +
- 2 * (in21 * in3 +
- in23 * in1) +
- in20 * in4 +
- in24 * in0 in
- dlet output5 := in22 * in3 +
- in23 * in2 +
- in21 * in4 +
- in24 * in1 +
- in20 * in5 +
- in25 * in0 in
- dlet output6 := 2 * (in23 * in3 +
- in21 * in5 +
- in25 * in1) +
- in22 * in4 +
- in24 * in2 +
- in20 * in6 +
- in26 * in0 in
- dlet output7 := in23 * in4 +
- in24 * in3 +
- in22 * in5 +
- in25 * in2 +
- in21 * in6 +
- in26 * in1 +
- in20 * in7 +
- in27 * in0 in
- dlet output8 := in24 * in4 +
- 2 * (in23 * in5 +
- in25 * in3 +
- in21 * in7 +
- in27 * in1) +
- in22 * in6 +
- in26 * in2 +
- in20 * in8 +
- in28 * in0 in
- dlet output9 := in24 * in5 +
- in25 * in4 +
- in23 * in6 +
- in26 * in3 +
- in22 * in7 +
- in27 * in2 +
- in21 * in8 +
- in28 * in1 +
- in20 * in9 +
- in29 * in0 in
- dlet output10 := 2 * (in25 * in5 +
- in23 * in7 +
- in27 * in3 +
- in21 * in9 +
- in29 * in1) +
- in24 * in6 +
- in26 * in4 +
- in22 * in8 +
- in28 * in2 in
- dlet output11 := in25 * in6 +
- in26 * in5 +
- in24 * in7 +
- in27 * in4 +
- in23 * in8 +
- in28 * in3 +
- in22 * in9 +
- in29 * in2 in
- dlet output12 := in26 * in6 +
- 2 * (in25 * in7 +
- in27 * in5 +
- in23 * in9 +
- in29 * in3) +
- in24 * in8 +
- in28 * in4 in
- dlet output13 := in26 * in7 +
- in27 * in6 +
- in25 * in8 +
- in28 * in5 +
- in24 * in9 +
- in29 * in4 in
- dlet output14 := 2 * (in27 * in7 +
- in25 * in9 +
- in29 * in5) +
- in26 * in8 +
- in28 * in6 in
- dlet output15 := in27 * in8 +
- in28 * in7 +
- in26 * in9 +
- in29 * in6 in
- dlet output16 := in28 * in8 +
- 2 * (in27 * in9 +
- in29 * in7) in
- dlet output17 := in28 * in9 +
- in29 * in8 in
- dlet output18 := 2 * in29 * in9 in
- dlet output8 := output8 + output18 << 4 in
- dlet output8 := output8 + output18 << 1 in
- dlet output8 := output8 + output18 in
- dlet output7 := output7 + output17 << 4 in
- dlet output7 := output7 + output17 << 1 in
- dlet output7 := output7 + output17 in
- dlet output6 := output6 + output16 << 4 in
- dlet output6 := output6 + output16 << 1 in
- dlet output6 := output6 + output16 in
- dlet output5 := output5 + output15 << 4 in
- dlet output5 := output5 + output15 << 1 in
- dlet output5 := output5 + output15 in
- dlet output4 := output4 + output14 << 4 in
- dlet output4 := output4 + output14 << 1 in
- dlet output4 := output4 + output14 in
- dlet output3 := output3 + output13 << 4 in
- dlet output3 := output3 + output13 << 1 in
- dlet output3 := output3 + output13 in
- dlet output2 := output2 + output12 << 4 in
- dlet output2 := output2 + output12 << 1 in
- dlet output2 := output2 + output12 in
- dlet output1 := output1 + output11 << 4 in
- dlet output1 := output1 + output11 << 1 in
- dlet output1 := output1 + output11 in
- dlet output0 := output0 + output10 << 4 in
- dlet output0 := output0 + output10 << 1 in
- dlet output0 := output0 + output10 in
- (output9, output8, output7, output6, output5, output4, output3, output2, output1, output0)
- );
-
- square_code := Some (fun a =>
- (* Micro-optimized form from curve25519-donna by Adam Langley (Google) and Daniel Bernstein. See <https://github.com/agl/curve25519-donna/blob/master/LICENSE.md>. *)
- let '(in9, in8, in7, in6, in5, in4, in3, in2, in1, in0) := a in
- dlet output0 := in0 * in0 in
- dlet output1 := 2 * in0 * in1 in
- dlet output2 := 2 * (in1 * in1 +
- in0 * in2) in
- dlet output3 := 2 * (in1 * in2 +
- in0 * in3) in
- dlet output4 := in2 * in2 +
- 4 * in1 * in3 +
- 2 * in0 * in4 in
- dlet output5 := 2 * (in2 * in3 +
- in1 * in4 +
- in0 * in5) in
- dlet output6 := 2 * (in3 * in3 +
- in2 * in4 +
- in0 * in6 +
- 2 * in1 * in5) in
- dlet output7 := 2 * (in3 * in4 +
- in2 * in5 +
- in1 * in6 +
- in0 * in7) in
- dlet output8 := in4 * in4 +
- 2 * (in2 * in6 +
- in0 * in8 +
- 2 * (in1 * in7 +
- in3 * in5)) in
- dlet output9 := 2 * (in4 * in5 +
- in3 * in6 +
- in2 * in7 +
- in1 * in8 +
- in0 * in9) in
- dlet output10 := 2 * (in5 * in5 +
- in4 * in6 +
- in2 * in8 +
- 2 * (in3 * in7 +
- in1 * in9)) in
- dlet output11 := 2 * (in5 * in6 +
- in4 * in7 +
- in3 * in8 +
- in2 * in9) in
- dlet output12 := in6 * in6 +
- 2 * (in4 * in8 +
- 2 * (in5 * in7 +
- in3 * in9)) in
- dlet output13 := 2 * (in6 * in7 +
- in5 * in8 +
- in4 * in9) in
- dlet output14 := 2 * (in7 * in7 +
- in6 * in8 +
- 2 * in5 * in9) in
- dlet output15 := 2 * (in7 * in8 +
- in6 * in9) in
- dlet output16 := in8 * in8 +
- 4 * in7 * in9 in
- dlet output17 := 2 * in8 * in9 in
- dlet output18 := 2 * in9 * in9 in
- dlet output8 := output8 + output18 << 4 in
- dlet output8 := output8 + output18 << 1 in
- dlet output8 := output8 + output18 in
- dlet output7 := output7 + output17 << 4 in
- dlet output7 := output7 + output17 << 1 in
- dlet output7 := output7 + output17 in
- dlet output6 := output6 + output16 << 4 in
- dlet output6 := output6 + output16 << 1 in
- dlet output6 := output6 + output16 in
- dlet output5 := output5 + output15 << 4 in
- dlet output5 := output5 + output15 << 1 in
- dlet output5 := output5 + output15 in
- dlet output4 := output4 + output14 << 4 in
- dlet output4 := output4 + output14 << 1 in
- dlet output4 := output4 + output14 in
- dlet output3 := output3 + output13 << 4 in
- dlet output3 := output3 + output13 << 1 in
- dlet output3 := output3 + output13 in
- dlet output2 := output2 + output12 << 4 in
- dlet output2 := output2 + output12 << 1 in
- dlet output2 := output2 + output12 in
- dlet output1 := output1 + output11 << 4 in
- dlet output1 := output1 + output11 << 1 in
- dlet output1 := output1 + output11 in
- dlet output0 := output0 + output10 << 4 in
- dlet output0 := output0 + output10 << 1 in
- dlet output0 := output0 + output10 in
- (output9, output8, output7, output6, output5, output4, output3, output2, output1, output0)
- );
-
- 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/X25519/C32/Synthesis.v b/src/Specific/X25519/C32/Synthesis.v
deleted file mode 100644
index 0fc22f0a7..000000000
--- a/src/Specific/X25519/C32/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.X25519.C32.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/X25519/C32/compiler.sh b/src/Specific/X25519/C32/compiler.sh
deleted file mode 100755
index dd754f377..000000000
--- a/src/Specific/X25519/C32/compiler.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-gcc -march=native -mbmi2 -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes "$@"
diff --git a/src/Specific/X25519/C32/feadd.v b/src/Specific/X25519/C32/feadd.v
deleted file mode 100644
index f74cf9cef..000000000
--- a/src/Specific/X25519/C32/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.X25519.C32.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/X25519/C32/feaddDisplay.log b/src/Specific/X25519/C32/feaddDisplay.log
deleted file mode 100644
index 8a4c51148..000000000
--- a/src/Specific/X25519/C32/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/X25519/C32/feaddDisplay.v b/src/Specific/X25519/C32/feaddDisplay.v
deleted file mode 100644
index 2df58b8f5..000000000
--- a/src/Specific/X25519/C32/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.X25519.C32.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/X25519/C32/fecarry.v b/src/Specific/X25519/C32/fecarry.v
deleted file mode 100644
index e2f207757..000000000
--- a/src/Specific/X25519/C32/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.X25519.C32.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/X25519/C32/fecarryDisplay.log b/src/Specific/X25519/C32/fecarryDisplay.log
deleted file mode 100644
index 186e797bb..000000000
--- a/src/Specific/X25519/C32/fecarryDisplay.log
+++ /dev/null
@@ -1,42 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x19 = (x2 >> 0x1a);
- uint32_t x20 = (x2 & 0x3ffffff);
- uint32_t x21 = (x19 + x4);
- uint32_t x22 = (x21 >> 0x19);
- uint32_t x23 = (x21 & 0x1ffffff);
- uint32_t x24 = (x22 + x6);
- uint32_t x25 = (x24 >> 0x1a);
- uint32_t x26 = (x24 & 0x3ffffff);
- uint32_t x27 = (x25 + x8);
- uint32_t x28 = (x27 >> 0x19);
- uint32_t x29 = (x27 & 0x1ffffff);
- uint32_t x30 = (x28 + x10);
- uint32_t x31 = (x30 >> 0x1a);
- uint32_t x32 = (x30 & 0x3ffffff);
- uint32_t x33 = (x31 + x12);
- uint32_t x34 = (x33 >> 0x19);
- uint32_t x35 = (x33 & 0x1ffffff);
- uint32_t x36 = (x34 + x14);
- uint32_t x37 = (x36 >> 0x1a);
- uint32_t x38 = (x36 & 0x3ffffff);
- uint32_t x39 = (x37 + x16);
- uint32_t x40 = (x39 >> 0x19);
- uint32_t x41 = (x39 & 0x1ffffff);
- uint32_t x42 = (x40 + x18);
- uint32_t x43 = (x42 >> 0x1a);
- uint32_t x44 = (x42 & 0x3ffffff);
- uint32_t x45 = (x43 + x17);
- uint32_t x46 = (x45 >> 0x19);
- uint32_t x47 = (x45 & 0x1ffffff);
- uint32_t x48 = (x20 + (0x13 * x46));
- uint32_t x49 = (x48 >> 0x1a);
- uint32_t x50 = (x48 & 0x3ffffff);
- uint32_t x51 = (x49 + x23);
- uint32_t x52 = (x51 >> 0x19);
- uint32_t x53 = (x51 & 0x1ffffff);
- return (Return x47, Return x44, Return x41, Return x38, Return x35, Return x32, Return x29, (x52 + x26), Return x53, Return x50))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/X25519/C32/fecarryDisplay.v b/src/Specific/X25519/C32/fecarryDisplay.v
deleted file mode 100644
index 0b40b86e4..000000000
--- a/src/Specific/X25519/C32/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.X25519.C32.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/X25519/C32/femul.v b/src/Specific/X25519/C32/femul.v
deleted file mode 100644
index 3f902f965..000000000
--- a/src/Specific/X25519/C32/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.X25519.C32.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/X25519/C32/femulDisplay.log b/src/Specific/X25519/C32/femulDisplay.log
deleted file mode 100644
index 1650f4c9d..000000000
--- a/src/Specific/X25519/C32/femulDisplay.log
+++ /dev/null
@@ -1,88 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- uint64_t x40 = ((uint64_t)x23 * x5);
- uint64_t x41 = (((uint64_t)x23 * x7) + ((uint64_t)x25 * x5));
- uint64_t x42 = ((((uint64_t)(0x2 * x25) * x7) + ((uint64_t)x23 * x9)) + ((uint64_t)x27 * x5));
- uint64_t x43 = (((((uint64_t)x25 * x9) + ((uint64_t)x27 * x7)) + ((uint64_t)x23 * x11)) + ((uint64_t)x29 * x5));
- uint64_t x44 = (((((uint64_t)x27 * x9) + (0x2 * (((uint64_t)x25 * x11) + ((uint64_t)x29 * x7)))) + ((uint64_t)x23 * x13)) + ((uint64_t)x31 * x5));
- uint64_t x45 = (((((((uint64_t)x27 * x11) + ((uint64_t)x29 * x9)) + ((uint64_t)x25 * x13)) + ((uint64_t)x31 * x7)) + ((uint64_t)x23 * x15)) + ((uint64_t)x33 * x5));
- uint64_t x46 = (((((0x2 * ((((uint64_t)x29 * x11) + ((uint64_t)x25 * x15)) + ((uint64_t)x33 * x7))) + ((uint64_t)x27 * x13)) + ((uint64_t)x31 * x9)) + ((uint64_t)x23 * x17)) + ((uint64_t)x35 * x5));
- uint64_t x47 = (((((((((uint64_t)x29 * x13) + ((uint64_t)x31 * x11)) + ((uint64_t)x27 * x15)) + ((uint64_t)x33 * x9)) + ((uint64_t)x25 * x17)) + ((uint64_t)x35 * x7)) + ((uint64_t)x23 * x19)) + ((uint64_t)x37 * x5));
- uint64_t x48 = (((((((uint64_t)x31 * x13) + (0x2 * (((((uint64_t)x29 * x15) + ((uint64_t)x33 * x11)) + ((uint64_t)x25 * x19)) + ((uint64_t)x37 * x7)))) + ((uint64_t)x27 * x17)) + ((uint64_t)x35 * x9)) + ((uint64_t)x23 * x21)) + ((uint64_t)x39 * x5));
- uint64_t x49 = (((((((((((uint64_t)x31 * x15) + ((uint64_t)x33 * x13)) + ((uint64_t)x29 * x17)) + ((uint64_t)x35 * x11)) + ((uint64_t)x27 * x19)) + ((uint64_t)x37 * x9)) + ((uint64_t)x25 * x21)) + ((uint64_t)x39 * x7)) + ((uint64_t)x23 * x20)) + ((uint64_t)x38 * x5));
- uint64_t x50 = (((((0x2 * ((((((uint64_t)x33 * x15) + ((uint64_t)x29 * x19)) + ((uint64_t)x37 * x11)) + ((uint64_t)x25 * x20)) + ((uint64_t)x38 * x7))) + ((uint64_t)x31 * x17)) + ((uint64_t)x35 * x13)) + ((uint64_t)x27 * x21)) + ((uint64_t)x39 * x9));
- uint64_t x51 = (((((((((uint64_t)x33 * x17) + ((uint64_t)x35 * x15)) + ((uint64_t)x31 * x19)) + ((uint64_t)x37 * x13)) + ((uint64_t)x29 * x21)) + ((uint64_t)x39 * x11)) + ((uint64_t)x27 * x20)) + ((uint64_t)x38 * x9));
- uint64_t x52 = (((((uint64_t)x35 * x17) + (0x2 * (((((uint64_t)x33 * x19) + ((uint64_t)x37 * x15)) + ((uint64_t)x29 * x20)) + ((uint64_t)x38 * x11)))) + ((uint64_t)x31 * x21)) + ((uint64_t)x39 * x13));
- uint64_t x53 = (((((((uint64_t)x35 * x19) + ((uint64_t)x37 * x17)) + ((uint64_t)x33 * x21)) + ((uint64_t)x39 * x15)) + ((uint64_t)x31 * x20)) + ((uint64_t)x38 * x13));
- uint64_t x54 = (((0x2 * ((((uint64_t)x37 * x19) + ((uint64_t)x33 * x20)) + ((uint64_t)x38 * x15))) + ((uint64_t)x35 * x21)) + ((uint64_t)x39 * x17));
- uint64_t x55 = (((((uint64_t)x37 * x21) + ((uint64_t)x39 * x19)) + ((uint64_t)x35 * x20)) + ((uint64_t)x38 * x17));
- uint64_t x56 = (((uint64_t)x39 * x21) + (0x2 * (((uint64_t)x37 * x20) + ((uint64_t)x38 * x19))));
- uint64_t x57 = (((uint64_t)x39 * x20) + ((uint64_t)x38 * x21));
- uint64_t x58 = ((uint64_t)(0x2 * x38) * x20);
- uint64_t x59 = (x48 + (x58 << 0x4));
- uint64_t x60 = (x59 + (x58 << 0x1));
- uint64_t x61 = (x60 + x58);
- uint64_t x62 = (x47 + (x57 << 0x4));
- uint64_t x63 = (x62 + (x57 << 0x1));
- uint64_t x64 = (x63 + x57);
- uint64_t x65 = (x46 + (x56 << 0x4));
- uint64_t x66 = (x65 + (x56 << 0x1));
- uint64_t x67 = (x66 + x56);
- uint64_t x68 = (x45 + (x55 << 0x4));
- uint64_t x69 = (x68 + (x55 << 0x1));
- uint64_t x70 = (x69 + x55);
- uint64_t x71 = (x44 + (x54 << 0x4));
- uint64_t x72 = (x71 + (x54 << 0x1));
- uint64_t x73 = (x72 + x54);
- uint64_t x74 = (x43 + (x53 << 0x4));
- uint64_t x75 = (x74 + (x53 << 0x1));
- uint64_t x76 = (x75 + x53);
- uint64_t x77 = (x42 + (x52 << 0x4));
- uint64_t x78 = (x77 + (x52 << 0x1));
- uint64_t x79 = (x78 + x52);
- uint64_t x80 = (x41 + (x51 << 0x4));
- uint64_t x81 = (x80 + (x51 << 0x1));
- uint64_t x82 = (x81 + x51);
- uint64_t x83 = (x40 + (x50 << 0x4));
- uint64_t x84 = (x83 + (x50 << 0x1));
- uint64_t x85 = (x84 + x50);
- uint64_t x86 = (x85 >> 0x1a);
- uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- uint64_t x88 = (x86 + x82);
- uint64_t x89 = (x88 >> 0x19);
- uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- uint64_t x91 = (x89 + x79);
- uint64_t x92 = (x91 >> 0x1a);
- uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- uint64_t x94 = (x92 + x76);
- uint64_t x95 = (x94 >> 0x19);
- uint32_t x96 = ((uint32_t)x94 & 0x1ffffff);
- uint64_t x97 = (x95 + x73);
- uint64_t x98 = (x97 >> 0x1a);
- uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- uint64_t x100 = (x98 + x70);
- uint64_t x101 = (x100 >> 0x19);
- uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- uint64_t x103 = (x101 + x67);
- uint64_t x104 = (x103 >> 0x1a);
- uint32_t x105 = ((uint32_t)x103 & 0x3ffffff);
- uint64_t x106 = (x104 + x64);
- uint64_t x107 = (x106 >> 0x19);
- uint32_t x108 = ((uint32_t)x106 & 0x1ffffff);
- uint64_t x109 = (x107 + x61);
- uint64_t x110 = (x109 >> 0x1a);
- uint32_t x111 = ((uint32_t)x109 & 0x3ffffff);
- uint64_t x112 = (x110 + x49);
- uint64_t x113 = (x112 >> 0x19);
- uint32_t x114 = ((uint32_t)x112 & 0x1ffffff);
- uint64_t x115 = (x87 + (0x13 * x113));
- uint32_t x116 = (uint32_t) (x115 >> 0x1a);
- uint32_t x117 = ((uint32_t)x115 & 0x3ffffff);
- uint32_t x118 = (x116 + x90);
- uint32_t x119 = (x118 >> 0x19);
- uint32_t x120 = (x118 & 0x1ffffff);
- return (Return x114, Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, (x119 + x93), Return x120, Return x117))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/X25519/C32/femulDisplay.v b/src/Specific/X25519/C32/femulDisplay.v
deleted file mode 100644
index d37a0e668..000000000
--- a/src/Specific/X25519/C32/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.X25519.C32.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/X25519/C32/fesquare.v b/src/Specific/X25519/C32/fesquare.v
deleted file mode 100644
index 169e20cbd..000000000
--- a/src/Specific/X25519/C32/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.X25519.C32.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/X25519/C32/fesquareDisplay.log b/src/Specific/X25519/C32/fesquareDisplay.log
deleted file mode 100644
index 06c5bc75f..000000000
--- a/src/Specific/X25519/C32/fesquareDisplay.log
+++ /dev/null
@@ -1,88 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x19 = ((uint64_t)x2 * x2);
- uint64_t x20 = ((uint64_t)(0x2 * x2) * x4);
- uint64_t x21 = (0x2 * (((uint64_t)x4 * x4) + ((uint64_t)x2 * x6)));
- uint64_t x22 = (0x2 * (((uint64_t)x4 * x6) + ((uint64_t)x2 * x8)));
- uint64_t x23 = ((((uint64_t)x6 * x6) + ((uint64_t)(0x4 * x4) * x8)) + ((uint64_t)(0x2 * x2) * x10));
- uint64_t x24 = (0x2 * ((((uint64_t)x6 * x8) + ((uint64_t)x4 * x10)) + ((uint64_t)x2 * x12)));
- uint64_t x25 = (0x2 * (((((uint64_t)x8 * x8) + ((uint64_t)x6 * x10)) + ((uint64_t)x2 * x14)) + ((uint64_t)(0x2 * x4) * x12)));
- uint64_t x26 = (0x2 * (((((uint64_t)x8 * x10) + ((uint64_t)x6 * x12)) + ((uint64_t)x4 * x14)) + ((uint64_t)x2 * x16)));
- uint64_t x27 = (((uint64_t)x10 * x10) + (0x2 * ((((uint64_t)x6 * x14) + ((uint64_t)x2 * x18)) + (0x2 * (((uint64_t)x4 * x16) + ((uint64_t)x8 * x12))))));
- uint64_t x28 = (0x2 * ((((((uint64_t)x10 * x12) + ((uint64_t)x8 * x14)) + ((uint64_t)x6 * x16)) + ((uint64_t)x4 * x18)) + ((uint64_t)x2 * x17)));
- uint64_t x29 = (0x2 * (((((uint64_t)x12 * x12) + ((uint64_t)x10 * x14)) + ((uint64_t)x6 * x18)) + (0x2 * (((uint64_t)x8 * x16) + ((uint64_t)x4 * x17)))));
- uint64_t x30 = (0x2 * (((((uint64_t)x12 * x14) + ((uint64_t)x10 * x16)) + ((uint64_t)x8 * x18)) + ((uint64_t)x6 * x17)));
- uint64_t x31 = (((uint64_t)x14 * x14) + (0x2 * (((uint64_t)x10 * x18) + (0x2 * (((uint64_t)x12 * x16) + ((uint64_t)x8 * x17))))));
- uint64_t x32 = (0x2 * ((((uint64_t)x14 * x16) + ((uint64_t)x12 * x18)) + ((uint64_t)x10 * x17)));
- uint64_t x33 = (0x2 * ((((uint64_t)x16 * x16) + ((uint64_t)x14 * x18)) + ((uint64_t)(0x2 * x12) * x17)));
- uint64_t x34 = (0x2 * (((uint64_t)x16 * x18) + ((uint64_t)x14 * x17)));
- uint64_t x35 = (((uint64_t)x18 * x18) + ((uint64_t)(0x4 * x16) * x17));
- uint64_t x36 = ((uint64_t)(0x2 * x18) * x17);
- uint64_t x37 = ((uint64_t)(0x2 * x17) * x17);
- uint64_t x38 = (x27 + (x37 << 0x4));
- uint64_t x39 = (x38 + (x37 << 0x1));
- uint64_t x40 = (x39 + x37);
- uint64_t x41 = (x26 + (x36 << 0x4));
- uint64_t x42 = (x41 + (x36 << 0x1));
- uint64_t x43 = (x42 + x36);
- uint64_t x44 = (x25 + (x35 << 0x4));
- uint64_t x45 = (x44 + (x35 << 0x1));
- uint64_t x46 = (x45 + x35);
- uint64_t x47 = (x24 + (x34 << 0x4));
- uint64_t x48 = (x47 + (x34 << 0x1));
- uint64_t x49 = (x48 + x34);
- uint64_t x50 = (x23 + (x33 << 0x4));
- uint64_t x51 = (x50 + (x33 << 0x1));
- uint64_t x52 = (x51 + x33);
- uint64_t x53 = (x22 + (x32 << 0x4));
- uint64_t x54 = (x53 + (x32 << 0x1));
- uint64_t x55 = (x54 + x32);
- uint64_t x56 = (x21 + (x31 << 0x4));
- uint64_t x57 = (x56 + (x31 << 0x1));
- uint64_t x58 = (x57 + x31);
- uint64_t x59 = (x20 + (x30 << 0x4));
- uint64_t x60 = (x59 + (x30 << 0x1));
- uint64_t x61 = (x60 + x30);
- uint64_t x62 = (x19 + (x29 << 0x4));
- uint64_t x63 = (x62 + (x29 << 0x1));
- uint64_t x64 = (x63 + x29);
- uint64_t x65 = (x64 >> 0x1a);
- uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- uint64_t x67 = (x65 + x61);
- uint64_t x68 = (x67 >> 0x19);
- uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- uint64_t x70 = (x68 + x58);
- uint64_t x71 = (x70 >> 0x1a);
- uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- uint64_t x73 = (x71 + x55);
- uint64_t x74 = (x73 >> 0x19);
- uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- uint64_t x76 = (x74 + x52);
- uint64_t x77 = (x76 >> 0x1a);
- uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- uint64_t x79 = (x77 + x49);
- uint64_t x80 = (x79 >> 0x19);
- uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- uint64_t x82 = (x80 + x46);
- uint64_t x83 = (x82 >> 0x1a);
- uint32_t x84 = ((uint32_t)x82 & 0x3ffffff);
- uint64_t x85 = (x83 + x43);
- uint64_t x86 = (x85 >> 0x19);
- uint32_t x87 = ((uint32_t)x85 & 0x1ffffff);
- uint64_t x88 = (x86 + x40);
- uint64_t x89 = (x88 >> 0x1a);
- uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- uint64_t x91 = (x89 + x28);
- uint64_t x92 = (x91 >> 0x19);
- uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- uint64_t x94 = (x66 + (0x13 * x92));
- uint32_t x95 = (uint32_t) (x94 >> 0x1a);
- uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- uint32_t x97 = (x95 + x69);
- uint32_t x98 = (x97 >> 0x19);
- uint32_t x99 = (x97 & 0x1ffffff);
- return (Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, (x98 + x72), Return x99, Return x96))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/X25519/C32/fesquareDisplay.v b/src/Specific/X25519/C32/fesquareDisplay.v
deleted file mode 100644
index 5075db1fd..000000000
--- a/src/Specific/X25519/C32/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.X25519.C32.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/X25519/C32/fesub.v b/src/Specific/X25519/C32/fesub.v
deleted file mode 100644
index 30e06cd5d..000000000
--- a/src/Specific/X25519/C32/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.X25519.C32.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/X25519/C32/fesubDisplay.log b/src/Specific/X25519/C32/fesubDisplay.log
deleted file mode 100644
index bb18a6a51..000000000
--- a/src/Specific/X25519/C32/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- (((0x3fffffe + x20) - x38), ((0x7fffffe + x21) - x39), ((0x3fffffe + x19) - x37), ((0x7fffffe + x17) - x35), ((0x3fffffe + x15) - x33), ((0x7fffffe + x13) - x31), ((0x3fffffe + x11) - x29), ((0x7fffffe + x9) - x27), ((0x3fffffe + x7) - x25), ((0x7ffffda + x5) - x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/X25519/C32/fesubDisplay.v b/src/Specific/X25519/C32/fesubDisplay.v
deleted file mode 100644
index 9a35e2289..000000000
--- a/src/Specific/X25519/C32/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.X25519.C32.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/X25519/C32/freeze.v b/src/Specific/X25519/C32/freeze.v
deleted file mode 100644
index 31098197f..000000000
--- a/src/Specific/X25519/C32/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.X25519.C32.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/X25519/C32/freezeDisplay.log b/src/Specific/X25519/C32/freezeDisplay.log
deleted file mode 100644
index 71d7c1cbb..000000000
--- a/src/Specific/X25519/C32/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x20, uint8_t/*bool*/ x21 = subborrow_u26(0x0, x2, 0x3ffffed);
- uint32_t x23, uint8_t/*bool*/ x24 = subborrow_u25(x21, x4, 0x1ffffff);
- uint32_t x26, uint8_t/*bool*/ x27 = subborrow_u26(x24, x6, 0x3ffffff);
- uint32_t x29, uint8_t/*bool*/ x30 = subborrow_u25(x27, x8, 0x1ffffff);
- uint32_t x32, uint8_t/*bool*/ x33 = subborrow_u26(x30, x10, 0x3ffffff);
- uint32_t x35, uint8_t/*bool*/ x36 = subborrow_u25(x33, x12, 0x1ffffff);
- uint32_t x38, uint8_t/*bool*/ x39 = subborrow_u26(x36, x14, 0x3ffffff);
- uint32_t x41, uint8_t/*bool*/ x42 = subborrow_u25(x39, x16, 0x1ffffff);
- uint32_t x44, uint8_t/*bool*/ x45 = subborrow_u26(x42, x18, 0x3ffffff);
- uint32_t x47, uint8_t/*bool*/ x48 = subborrow_u25(x45, x17, 0x1ffffff);
- uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- uint32_t x50 = (x49 & 0x3ffffed);
- uint32_t x52, uint8_t/*bool*/ x53 = addcarryx_u26(0x0, x20, x50);
- uint32_t x54 = (x49 & 0x1ffffff);
- uint32_t x56, uint8_t/*bool*/ x57 = addcarryx_u25(x53, x23, x54);
- uint32_t x58 = (x49 & 0x3ffffff);
- uint32_t x60, uint8_t/*bool*/ x61 = addcarryx_u26(x57, x26, x58);
- uint32_t x62 = (x49 & 0x1ffffff);
- uint32_t x64, uint8_t/*bool*/ x65 = addcarryx_u25(x61, x29, x62);
- uint32_t x66 = (x49 & 0x3ffffff);
- uint32_t x68, uint8_t/*bool*/ x69 = addcarryx_u26(x65, x32, x66);
- uint32_t x70 = (x49 & 0x1ffffff);
- uint32_t x72, uint8_t/*bool*/ x73 = addcarryx_u25(x69, x35, x70);
- uint32_t x74 = (x49 & 0x3ffffff);
- uint32_t x76, uint8_t/*bool*/ x77 = addcarryx_u26(x73, x38, x74);
- uint32_t x78 = (x49 & 0x1ffffff);
- uint32_t x80, uint8_t/*bool*/ x81 = addcarryx_u25(x77, x41, x78);
- uint32_t x82 = (x49 & 0x3ffffff);
- uint32_t x84, uint8_t/*bool*/ x85 = addcarryx_u26(x81, x44, x82);
- uint32_t x86 = (x49 & 0x1ffffff);
- uint32_t x88, uint8_t/*bool*/ _ = addcarryx_u25(x85, x47, x86);
- (Return x88, Return x84, Return x80, Return x76, Return x72, Return x68, Return x64, Return x60, Return x56, Return x52))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/X25519/C32/freezeDisplay.v b/src/Specific/X25519/C32/freezeDisplay.v
deleted file mode 100644
index dc0defdc8..000000000
--- a/src/Specific/X25519/C32/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.X25519.C32.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/X25519/C32/py_interpreter.sh b/src/Specific/X25519/C32/py_interpreter.sh
deleted file mode 100755
index db141f151..000000000
--- a/src/Specific/X25519/C32/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**255-19' -Dmodulus_bytes='25.5' -Da24='121665'
diff --git a/src/Specific/X25519/C64/CurveParameters.v b/src/Specific/X25519/C64/CurveParameters.v
deleted file mode 100644
index 2be1510b9..000000000
--- a/src/Specific/X25519/C64/CurveParameters.v
+++ /dev/null
@@ -1,74 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^255-19
-Base: 51
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 51;
- bitwidth := 64;
- s := 2^255;
- c := [(1, 19)];
- carry_chains := Some [seq 0 (pred 5); [0; 1]]%nat;
-
- a24 := Some 121665;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := false;
- freeze := Some true;
- ladderstep := true;
-
- mul_code := Some (fun a b =>
- (* Micro-optimized form from curve25519-donna-c64 by Adam Langley (Google) and Daniel Bernstein. See <https://github.com/agl/curve25519-donna/blob/master/LICENSE.md>. *)
- let '(r4, r3, r2, r1, r0) := a in
- let '(s4, s3, s2, s1, s0) := b in
- dlet t0 := r0 * s0 in
- dlet t1 := r0 * s1 + r1 * s0 in
- dlet t2 := r0 * s2 + r2 * s0 + r1 * s1 in
- dlet t3 := r0 * s3 + r3 * s0 + r1 * s2 + r2 * s1 in
- dlet t4 := r0 * s4 + r4 * s0 + r3 * s1 + r1 * s3 + r2 * s2 in
-
- dlet r4 := r4 * 19 in
- dlet r1 := r1 * 19 in
- dlet r2 := r2 * 19 in
- dlet r3 := r3 * 19 in
-
- dlet t0 := t0 + r4 * s1 + r1 * s4 + r2 * s3 + r3 * s2 in
- dlet t1 := t1 + r4 * s2 + r2 * s4 + r3 * s3 in
- dlet t2 := t2 + r4 * s3 + r3 * s4 in
- dlet t3 := t3 + r4 * s4 in
- (t4, t3, t2, t1, t0)
- );
-
- square_code := Some (fun a =>
- (* Micro-optimized form from curve25519-donna-c64 by Adam Langley (Google) and Daniel Bernstein. See <https://github.com/agl/curve25519-donna/blob/master/LICENSE.md>. *)
- let '(r4, r3, r2, r1, r0) := a in
- dlet d0 := r0 * 2 in
- dlet d1 := r1 * 2 in
- dlet d2 := r2 * 2 * 19 in
- dlet d419 := r4 * 19 in
- dlet d4 := d419 * 2 in
-
- dlet t0 := r0 * r0 + d4 * r1 + (d2 * (r3 )) in
- dlet t1 := d0 * r1 + d4 * r2 + (r3 * (r3 * 19)) in
- dlet t2 := d0 * r2 + r1 * r1 + (d4 * (r3 )) in
- dlet t3 := d0 * r3 + d1 * r2 + (r4 * (d419 )) in
- dlet t4 := d0 * r4 + d1 * r3 + (r2 * (r2 )) in
- (t4, t3, t2, t1, t0)
- );
-
- 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/X25519/C64/Synthesis.v b/src/Specific/X25519/C64/Synthesis.v
deleted file mode 100644
index b398e13d9..000000000
--- a/src/Specific/X25519/C64/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.X25519.C64.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/X25519/C64/compiler.sh b/src/Specific/X25519/C64/compiler.sh
deleted file mode 100755
index dd754f377..000000000
--- a/src/Specific/X25519/C64/compiler.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-gcc -march=native -mbmi2 -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes "$@"
diff --git a/src/Specific/X25519/C64/feadd.v b/src/Specific/X25519/C64/feadd.v
deleted file mode 100644
index 43d887638..000000000
--- a/src/Specific/X25519/C64/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.X25519.C64.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/X25519/C64/feaddDisplay.log b/src/Specific/X25519/C64/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/X25519/C64/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/X25519/C64/feaddDisplay.v b/src/Specific/X25519/C64/feaddDisplay.v
deleted file mode 100644
index e1a666c66..000000000
--- a/src/Specific/X25519/C64/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.X25519.C64.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/X25519/C64/fecarry.v b/src/Specific/X25519/C64/fecarry.v
deleted file mode 100644
index 324aa5ffe..000000000
--- a/src/Specific/X25519/C64/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.X25519.C64.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/X25519/C64/fecarryDisplay.log b/src/Specific/X25519/C64/fecarryDisplay.log
deleted file mode 100644
index 648dc77cf..000000000
--- a/src/Specific/X25519/C64/fecarryDisplay.log
+++ /dev/null
@@ -1,27 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x9 = (x2 >> 0x33);
- uint64_t x10 = (x2 & 0x7ffffffffffff);
- uint64_t x11 = (x9 + x4);
- uint64_t x12 = (x11 >> 0x33);
- uint64_t x13 = (x11 & 0x7ffffffffffff);
- uint64_t x14 = (x12 + x6);
- uint64_t x15 = (x14 >> 0x33);
- uint64_t x16 = (x14 & 0x7ffffffffffff);
- uint64_t x17 = (x15 + x8);
- uint64_t x18 = (x17 >> 0x33);
- uint64_t x19 = (x17 & 0x7ffffffffffff);
- uint64_t x20 = (x18 + x7);
- uint64_t x21 = (x20 >> 0x33);
- uint64_t x22 = (x20 & 0x7ffffffffffff);
- uint64_t x23 = (x10 + (0x13 * x21));
- uint64_t x24 = (x23 >> 0x33);
- uint64_t x25 = (x23 & 0x7ffffffffffff);
- uint64_t x26 = (x24 + x13);
- uint64_t x27 = (x26 >> 0x33);
- uint64_t x28 = (x26 & 0x7ffffffffffff);
- return (Return x22, Return x19, (x27 + x16), Return x28, Return x25))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/X25519/C64/fecarryDisplay.v b/src/Specific/X25519/C64/fecarryDisplay.v
deleted file mode 100644
index 48d97919e..000000000
--- a/src/Specific/X25519/C64/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.X25519.C64.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/X25519/C64/femul.v b/src/Specific/X25519/C64/femul.v
deleted file mode 100644
index eeaa4fad0..000000000
--- a/src/Specific/X25519/C64/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.X25519.C64.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/X25519/C64/femulDisplay.log b/src/Specific/X25519/C64/femulDisplay.log
deleted file mode 100644
index 6ecb01e51..000000000
--- a/src/Specific/X25519/C64/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = ((uint128_t)x5 * x13);
- uint128_t x21 = (((uint128_t)x5 * x15) + ((uint128_t)x7 * x13));
- uint128_t x22 = ((((uint128_t)x5 * x17) + ((uint128_t)x9 * x13)) + ((uint128_t)x7 * x15));
- uint128_t x23 = (((((uint128_t)x5 * x19) + ((uint128_t)x11 * x13)) + ((uint128_t)x7 * x17)) + ((uint128_t)x9 * x15));
- uint128_t x24 = ((((((uint128_t)x5 * x18) + ((uint128_t)x10 * x13)) + ((uint128_t)x11 * x15)) + ((uint128_t)x7 * x19)) + ((uint128_t)x9 * x17));
- uint64_t x25 = (x10 * 0x13);
- uint64_t x26 = (x7 * 0x13);
- uint64_t x27 = (x9 * 0x13);
- uint64_t x28 = (x11 * 0x13);
- uint128_t x29 = ((((x20 + ((uint128_t)x25 * x15)) + ((uint128_t)x26 * x18)) + ((uint128_t)x27 * x19)) + ((uint128_t)x28 * x17));
- uint128_t x30 = (((x21 + ((uint128_t)x25 * x17)) + ((uint128_t)x27 * x18)) + ((uint128_t)x28 * x19));
- uint128_t x31 = ((x22 + ((uint128_t)x25 * x19)) + ((uint128_t)x28 * x18));
- uint128_t x32 = (x23 + ((uint128_t)x25 * x18));
- uint64_t x33 = (uint64_t) (x29 >> 0x33);
- uint64_t x34 = ((uint64_t)x29 & 0x7ffffffffffff);
- uint128_t x35 = (x33 + x30);
- uint64_t x36 = (uint64_t) (x35 >> 0x33);
- uint64_t x37 = ((uint64_t)x35 & 0x7ffffffffffff);
- uint128_t x38 = (x36 + x31);
- uint64_t x39 = (uint64_t) (x38 >> 0x33);
- uint64_t x40 = ((uint64_t)x38 & 0x7ffffffffffff);
- uint128_t x41 = (x39 + x32);
- uint64_t x42 = (uint64_t) (x41 >> 0x33);
- uint64_t x43 = ((uint64_t)x41 & 0x7ffffffffffff);
- uint128_t x44 = (x42 + x24);
- uint64_t x45 = (uint64_t) (x44 >> 0x33);
- uint64_t x46 = ((uint64_t)x44 & 0x7ffffffffffff);
- uint64_t x47 = (x34 + (0x13 * x45));
- uint64_t x48 = (x47 >> 0x33);
- uint64_t x49 = (x47 & 0x7ffffffffffff);
- uint64_t x50 = (x48 + x37);
- uint64_t x51 = (x50 >> 0x33);
- uint64_t x52 = (x50 & 0x7ffffffffffff);
- return (Return x46, Return x43, (x51 + x40), Return x52, Return x49))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/X25519/C64/femulDisplay.v b/src/Specific/X25519/C64/femulDisplay.v
deleted file mode 100644
index 0e77976ca..000000000
--- a/src/Specific/X25519/C64/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.X25519.C64.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/X25519/C64/fesquare.v b/src/Specific/X25519/C64/fesquare.v
deleted file mode 100644
index 6939bca51..000000000
--- a/src/Specific/X25519/C64/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.X25519.C64.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/X25519/C64/fesquareDisplay.log b/src/Specific/X25519/C64/fesquareDisplay.log
deleted file mode 100644
index 8eb7c9e67..000000000
--- a/src/Specific/X25519/C64/fesquareDisplay.log
+++ /dev/null
@@ -1,37 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x9 = (x2 * 0x2);
- uint64_t x10 = (x4 * 0x2);
- uint64_t x11 = ((x6 * 0x2) * 0x13);
- uint64_t x12 = (x7 * 0x13);
- uint64_t x13 = (x12 * 0x2);
- uint128_t x14 = ((((uint128_t)x2 * x2) + ((uint128_t)x13 * x4)) + ((uint128_t)x11 * x8));
- uint128_t x15 = ((((uint128_t)x9 * x4) + ((uint128_t)x13 * x6)) + ((uint128_t)x8 * (x8 * 0x13)));
- uint128_t x16 = ((((uint128_t)x9 * x6) + ((uint128_t)x4 * x4)) + ((uint128_t)x13 * x8));
- uint128_t x17 = ((((uint128_t)x9 * x8) + ((uint128_t)x10 * x6)) + ((uint128_t)x7 * x12));
- uint128_t x18 = ((((uint128_t)x9 * x7) + ((uint128_t)x10 * x8)) + ((uint128_t)x6 * x6));
- uint64_t x19 = (uint64_t) (x14 >> 0x33);
- uint64_t x20 = ((uint64_t)x14 & 0x7ffffffffffff);
- uint128_t x21 = (x19 + x15);
- uint64_t x22 = (uint64_t) (x21 >> 0x33);
- uint64_t x23 = ((uint64_t)x21 & 0x7ffffffffffff);
- uint128_t x24 = (x22 + x16);
- uint64_t x25 = (uint64_t) (x24 >> 0x33);
- uint64_t x26 = ((uint64_t)x24 & 0x7ffffffffffff);
- uint128_t x27 = (x25 + x17);
- uint64_t x28 = (uint64_t) (x27 >> 0x33);
- uint64_t x29 = ((uint64_t)x27 & 0x7ffffffffffff);
- uint128_t x30 = (x28 + x18);
- uint64_t x31 = (uint64_t) (x30 >> 0x33);
- uint64_t x32 = ((uint64_t)x30 & 0x7ffffffffffff);
- uint64_t x33 = (x20 + (0x13 * x31));
- uint64_t x34 = (x33 >> 0x33);
- uint64_t x35 = (x33 & 0x7ffffffffffff);
- uint64_t x36 = (x34 + x23);
- uint64_t x37 = (x36 >> 0x33);
- uint64_t x38 = (x36 & 0x7ffffffffffff);
- return (Return x32, Return x29, (x37 + x26), Return x38, Return x35))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/X25519/C64/fesquareDisplay.v b/src/Specific/X25519/C64/fesquareDisplay.v
deleted file mode 100644
index e722863e2..000000000
--- a/src/Specific/X25519/C64/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.X25519.C64.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/X25519/C64/fesub.v b/src/Specific/X25519/C64/fesub.v
deleted file mode 100644
index b17e79366..000000000
--- a/src/Specific/X25519/C64/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.X25519.C64.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/X25519/C64/fesubDisplay.log b/src/Specific/X25519/C64/fesubDisplay.log
deleted file mode 100644
index e85a042f8..000000000
--- a/src/Specific/X25519/C64/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0xffffffffffffe + x10) - x18), ((0xffffffffffffe + x11) - x19), ((0xffffffffffffe + x9) - x17), ((0xffffffffffffe + x7) - x15), ((0xfffffffffffda + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/X25519/C64/fesubDisplay.v b/src/Specific/X25519/C64/fesubDisplay.v
deleted file mode 100644
index 2bbf2f589..000000000
--- a/src/Specific/X25519/C64/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.X25519.C64.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/X25519/C64/freeze.v b/src/Specific/X25519/C64/freeze.v
deleted file mode 100644
index 0e66bdb73..000000000
--- a/src/Specific/X25519/C64/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.X25519.C64.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/X25519/C64/freezeDisplay.log b/src/Specific/X25519/C64/freezeDisplay.log
deleted file mode 100644
index 7277e4adb..000000000
--- a/src/Specific/X25519/C64/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t/*bool*/ x11 = subborrow_u51(0x0, x2, 0x7ffffffffffed);
- uint64_t x13, uint8_t/*bool*/ x14 = subborrow_u51(x11, x4, 0x7ffffffffffff);
- uint64_t x16, uint8_t/*bool*/ x17 = subborrow_u51(x14, x6, 0x7ffffffffffff);
- uint64_t x19, uint8_t/*bool*/ x20 = subborrow_u51(x17, x8, 0x7ffffffffffff);
- uint64_t x22, uint8_t/*bool*/ x23 = subborrow_u51(x20, x7, 0x7ffffffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0x7ffffffffffed);
- uint64_t x27, uint8_t/*bool*/ x28 = addcarryx_u51(0x0, x10, x25);
- uint64_t x29 = (x24 & 0x7ffffffffffff);
- uint64_t x31, uint8_t/*bool*/ x32 = addcarryx_u51(x28, x13, x29);
- uint64_t x33 = (x24 & 0x7ffffffffffff);
- uint64_t x35, uint8_t/*bool*/ x36 = addcarryx_u51(x32, x16, x33);
- uint64_t x37 = (x24 & 0x7ffffffffffff);
- uint64_t x39, uint8_t/*bool*/ x40 = addcarryx_u51(x36, x19, x37);
- uint64_t x41 = (x24 & 0x7ffffffffffff);
- uint64_t x43, uint8_t/*bool*/ _ = addcarryx_u51(x40, x22, x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/X25519/C64/freezeDisplay.v b/src/Specific/X25519/C64/freezeDisplay.v
deleted file mode 100644
index d3f1a5499..000000000
--- a/src/Specific/X25519/C64/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.X25519.C64.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/X25519/C64/ladderstep.v b/src/Specific/X25519/C64/ladderstep.v
deleted file mode 100644
index 868f10a48..000000000
--- a/src/Specific/X25519/C64/ladderstep.v
+++ /dev/null
@@ -1,24 +0,0 @@
-Require Import Crypto.Arithmetic.Core.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.Framework.ArithmeticSynthesis.Ladderstep.
-Require Import Crypto.Specific.X25519.C64.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition xzladderstep :
- { xzladderstep : feW -> feW * feW -> feW * feW -> feW * feW * (feW * feW)
- | forall x1 Q Q',
- let xz := xzladderstep x1 Q Q' in
- let eval := B.Positional.Fdecode wt in
- feW_tight_bounded x1
- -> feW_tight_bounded (fst Q) /\ feW_tight_bounded (snd Q)
- -> feW_tight_bounded (fst Q') /\ feW_tight_bounded (snd Q')
- -> ((feW_tight_bounded (fst (fst xz)) /\ feW_tight_bounded (snd (fst xz)))
- /\ (feW_tight_bounded (fst (snd xz)) /\ feW_tight_bounded (snd (snd xz))))
- /\ Tuple.map (n:=2) (Tuple.map (n:=2) phiW) xz = FMxzladderstep (m:=m) (eval (proj1_sig a24_sig)) (phiW x1) (Tuple.map (n:=2) phiW Q) (Tuple.map (n:=2) phiW Q') }.
-Proof.
- Set Ltac Profiling.
- synthesize_xzladderstep ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions xzladderstep.
diff --git a/src/Specific/X25519/C64/ladderstepDisplay.log b/src/Specific/X25519/C64/ladderstepDisplay.log
deleted file mode 100644
index 6fb2a27d6..000000000
--- a/src/Specific/X25519/C64/ladderstepDisplay.log
+++ /dev/null
@@ -1,370 +0,0 @@
-λ x x0 x1 x2 x3 : Synthesis.P.feW,
-let (a, b) := Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, (x25, x26, x24, x22, x20, (x33, x34, x32, x30, x28)), (x43, x44, x42, x40, x38, (x51, x52, x50, x48, x46)))%core,
- uint64_t x53 = (x25 + x33);
- uint64_t x54 = (x26 + x34);
- uint64_t x55 = (x24 + x32);
- uint64_t x56 = (x22 + x30);
- uint64_t x57 = (x20 + x28);
- uint64_t x58 = ((0xffffffffffffe + x25) - x33);
- uint64_t x59 = ((0xffffffffffffe + x26) - x34);
- uint64_t x60 = ((0xffffffffffffe + x24) - x32);
- uint64_t x61 = ((0xffffffffffffe + x22) - x30);
- uint64_t x62 = ((0xfffffffffffda + x20) - x28);
- uint64_t x63 = (x43 + x51);
- uint64_t x64 = (x44 + x52);
- uint64_t x65 = (x42 + x50);
- uint64_t x66 = (x40 + x48);
- uint64_t x67 = (x38 + x46);
- uint64_t x68 = ((0xffffffffffffe + x43) - x51);
- uint64_t x69 = ((0xffffffffffffe + x44) - x52);
- uint64_t x70 = ((0xffffffffffffe + x42) - x50);
- uint64_t x71 = ((0xffffffffffffe + x40) - x48);
- uint64_t x72 = ((0xfffffffffffda + x38) - x46);
- uint128_t x73 = ((uint128_t)x67 * x62);
- uint128_t x74 = (((uint128_t)x67 * x61) + ((uint128_t)x66 * x62));
- uint128_t x75 = ((((uint128_t)x67 * x60) + ((uint128_t)x65 * x62)) + ((uint128_t)x66 * x61));
- uint128_t x76 = (((((uint128_t)x67 * x59) + ((uint128_t)x64 * x62)) + ((uint128_t)x66 * x60)) + ((uint128_t)x65 * x61));
- uint128_t x77 = ((((((uint128_t)x67 * x58) + ((uint128_t)x63 * x62)) + ((uint128_t)x64 * x61)) + ((uint128_t)x66 * x59)) + ((uint128_t)x65 * x60));
- uint64_t x78 = (x63 * 0x13);
- uint64_t x79 = (x66 * 0x13);
- uint64_t x80 = (x65 * 0x13);
- uint64_t x81 = (x64 * 0x13);
- uint128_t x82 = ((((x73 + ((uint128_t)x78 * x61)) + ((uint128_t)x79 * x58)) + ((uint128_t)x80 * x59)) + ((uint128_t)x81 * x60));
- uint128_t x83 = (((x74 + ((uint128_t)x78 * x60)) + ((uint128_t)x80 * x58)) + ((uint128_t)x81 * x59));
- uint128_t x84 = ((x75 + ((uint128_t)x78 * x59)) + ((uint128_t)x81 * x58));
- uint128_t x85 = (x76 + ((uint128_t)x78 * x58));
- uint64_t x86 = (uint64_t) (x82 >> 0x33);
- uint64_t x87 = ((uint64_t)x82 & 0x7ffffffffffff);
- uint128_t x88 = (x86 + x83);
- uint64_t x89 = (uint64_t) (x88 >> 0x33);
- uint64_t x90 = ((uint64_t)x88 & 0x7ffffffffffff);
- uint128_t x91 = (x89 + x84);
- uint64_t x92 = (uint64_t) (x91 >> 0x33);
- uint64_t x93 = ((uint64_t)x91 & 0x7ffffffffffff);
- uint128_t x94 = (x92 + x85);
- uint64_t x95 = (uint64_t) (x94 >> 0x33);
- uint64_t x96 = ((uint64_t)x94 & 0x7ffffffffffff);
- uint128_t x97 = (x95 + x77);
- uint64_t x98 = (uint64_t) (x97 >> 0x33);
- uint64_t x99 = ((uint64_t)x97 & 0x7ffffffffffff);
- uint64_t x100 = (x87 + (0x13 * x98));
- uint64_t x101 = (x100 >> 0x33);
- uint64_t x102 = (x100 & 0x7ffffffffffff);
- uint64_t x103 = (x101 + x90);
- uint64_t x104 = (x103 >> 0x33);
- uint64_t x105 = (x103 & 0x7ffffffffffff);
- uint64_t x106 = (x104 + x93);
- uint128_t x107 = ((uint128_t)x57 * x72);
- uint128_t x108 = (((uint128_t)x57 * x71) + ((uint128_t)x56 * x72));
- uint128_t x109 = ((((uint128_t)x57 * x70) + ((uint128_t)x55 * x72)) + ((uint128_t)x56 * x71));
- uint128_t x110 = (((((uint128_t)x57 * x69) + ((uint128_t)x54 * x72)) + ((uint128_t)x56 * x70)) + ((uint128_t)x55 * x71));
- uint128_t x111 = ((((((uint128_t)x57 * x68) + ((uint128_t)x53 * x72)) + ((uint128_t)x54 * x71)) + ((uint128_t)x56 * x69)) + ((uint128_t)x55 * x70));
- uint64_t x112 = (x53 * 0x13);
- uint64_t x113 = (x56 * 0x13);
- uint64_t x114 = (x55 * 0x13);
- uint64_t x115 = (x54 * 0x13);
- uint128_t x116 = ((((x107 + ((uint128_t)x112 * x71)) + ((uint128_t)x113 * x68)) + ((uint128_t)x114 * x69)) + ((uint128_t)x115 * x70));
- uint128_t x117 = (((x108 + ((uint128_t)x112 * x70)) + ((uint128_t)x114 * x68)) + ((uint128_t)x115 * x69));
- uint128_t x118 = ((x109 + ((uint128_t)x112 * x69)) + ((uint128_t)x115 * x68));
- uint128_t x119 = (x110 + ((uint128_t)x112 * x68));
- uint64_t x120 = (uint64_t) (x116 >> 0x33);
- uint64_t x121 = ((uint64_t)x116 & 0x7ffffffffffff);
- uint128_t x122 = (x120 + x117);
- uint64_t x123 = (uint64_t) (x122 >> 0x33);
- uint64_t x124 = ((uint64_t)x122 & 0x7ffffffffffff);
- uint128_t x125 = (x123 + x118);
- uint64_t x126 = (uint64_t) (x125 >> 0x33);
- uint64_t x127 = ((uint64_t)x125 & 0x7ffffffffffff);
- uint128_t x128 = (x126 + x119);
- uint64_t x129 = (uint64_t) (x128 >> 0x33);
- uint64_t x130 = ((uint64_t)x128 & 0x7ffffffffffff);
- uint128_t x131 = (x129 + x111);
- uint64_t x132 = (uint64_t) (x131 >> 0x33);
- uint64_t x133 = ((uint64_t)x131 & 0x7ffffffffffff);
- uint64_t x134 = (x121 + (0x13 * x132));
- uint64_t x135 = (x134 >> 0x33);
- uint64_t x136 = (x134 & 0x7ffffffffffff);
- uint64_t x137 = (x135 + x124);
- uint64_t x138 = (x137 >> 0x33);
- uint64_t x139 = (x137 & 0x7ffffffffffff);
- uint64_t x140 = (x138 + x127);
- uint64_t x141 = (x99 + x133);
- uint64_t x142 = (x96 + x130);
- uint64_t x143 = (x106 + x140);
- uint64_t x144 = (x105 + x139);
- uint64_t x145 = (x102 + x136);
- uint64_t x146 = ((0xffffffffffffe + x99) - x133);
- uint64_t x147 = ((0xffffffffffffe + x96) - x130);
- uint64_t x148 = ((0xffffffffffffe + x106) - x140);
- uint64_t x149 = ((0xffffffffffffe + x105) - x139);
- uint64_t x150 = ((0xfffffffffffda + x102) - x136);
- uint64_t x151 = (x145 * 0x2);
- uint64_t x152 = (x144 * 0x2);
- uint64_t x153 = ((x143 * 0x2) * 0x13);
- uint64_t x154 = (x141 * 0x13);
- uint64_t x155 = (x154 * 0x2);
- uint128_t x156 = ((((uint128_t)x145 * x145) + ((uint128_t)x155 * x144)) + ((uint128_t)x153 * x142));
- uint128_t x157 = ((((uint128_t)x151 * x144) + ((uint128_t)x155 * x143)) + ((uint128_t)x142 * (x142 * 0x13)));
- uint128_t x158 = ((((uint128_t)x151 * x143) + ((uint128_t)x144 * x144)) + ((uint128_t)x155 * x142));
- uint128_t x159 = ((((uint128_t)x151 * x142) + ((uint128_t)x152 * x143)) + ((uint128_t)x141 * x154));
- uint128_t x160 = ((((uint128_t)x151 * x141) + ((uint128_t)x152 * x142)) + ((uint128_t)x143 * x143));
- uint64_t x161 = (uint64_t) (x156 >> 0x33);
- uint64_t x162 = ((uint64_t)x156 & 0x7ffffffffffff);
- uint128_t x163 = (x161 + x157);
- uint64_t x164 = (uint64_t) (x163 >> 0x33);
- uint64_t x165 = ((uint64_t)x163 & 0x7ffffffffffff);
- uint128_t x166 = (x164 + x158);
- uint64_t x167 = (uint64_t) (x166 >> 0x33);
- uint64_t x168 = ((uint64_t)x166 & 0x7ffffffffffff);
- uint128_t x169 = (x167 + x159);
- uint64_t x170 = (uint64_t) (x169 >> 0x33);
- uint64_t x171 = ((uint64_t)x169 & 0x7ffffffffffff);
- uint128_t x172 = (x170 + x160);
- uint64_t x173 = (uint64_t) (x172 >> 0x33);
- uint64_t x174 = ((uint64_t)x172 & 0x7ffffffffffff);
- uint64_t x175 = (x162 + (0x13 * x173));
- uint64_t x176 = (x175 >> 0x33);
- uint64_t x177 = (x175 & 0x7ffffffffffff);
- uint64_t x178 = (x176 + x165);
- uint64_t x179 = (x178 >> 0x33);
- uint64_t x180 = (x178 & 0x7ffffffffffff);
- uint64_t x181 = (x179 + x168);
- uint64_t x182 = (x150 * 0x2);
- uint64_t x183 = (x149 * 0x2);
- uint64_t x184 = ((x148 * 0x2) * 0x13);
- uint64_t x185 = (x146 * 0x13);
- uint64_t x186 = (x185 * 0x2);
- uint128_t x187 = ((((uint128_t)x150 * x150) + ((uint128_t)x186 * x149)) + ((uint128_t)x184 * x147));
- uint128_t x188 = ((((uint128_t)x182 * x149) + ((uint128_t)x186 * x148)) + ((uint128_t)x147 * (x147 * 0x13)));
- uint128_t x189 = ((((uint128_t)x182 * x148) + ((uint128_t)x149 * x149)) + ((uint128_t)x186 * x147));
- uint128_t x190 = ((((uint128_t)x182 * x147) + ((uint128_t)x183 * x148)) + ((uint128_t)x146 * x185));
- uint128_t x191 = ((((uint128_t)x182 * x146) + ((uint128_t)x183 * x147)) + ((uint128_t)x148 * x148));
- uint64_t x192 = (uint64_t) (x187 >> 0x33);
- uint64_t x193 = ((uint64_t)x187 & 0x7ffffffffffff);
- uint128_t x194 = (x192 + x188);
- uint64_t x195 = (uint64_t) (x194 >> 0x33);
- uint64_t x196 = ((uint64_t)x194 & 0x7ffffffffffff);
- uint128_t x197 = (x195 + x189);
- uint64_t x198 = (uint64_t) (x197 >> 0x33);
- uint64_t x199 = ((uint64_t)x197 & 0x7ffffffffffff);
- uint128_t x200 = (x198 + x190);
- uint64_t x201 = (uint64_t) (x200 >> 0x33);
- uint64_t x202 = ((uint64_t)x200 & 0x7ffffffffffff);
- uint128_t x203 = (x201 + x191);
- uint64_t x204 = (uint64_t) (x203 >> 0x33);
- uint64_t x205 = ((uint64_t)x203 & 0x7ffffffffffff);
- uint64_t x206 = (x193 + (0x13 * x204));
- uint64_t x207 = (x206 >> 0x33);
- uint64_t x208 = (x206 & 0x7ffffffffffff);
- uint64_t x209 = (x207 + x196);
- uint64_t x210 = (x209 >> 0x33);
- uint64_t x211 = (x209 & 0x7ffffffffffff);
- uint64_t x212 = (x210 + x199);
- uint128_t x213 = ((uint128_t)x208 * x10);
- uint128_t x214 = (((uint128_t)x208 * x12) + ((uint128_t)x211 * x10));
- uint128_t x215 = ((((uint128_t)x208 * x14) + ((uint128_t)x212 * x10)) + ((uint128_t)x211 * x12));
- uint128_t x216 = (((((uint128_t)x208 * x16) + ((uint128_t)x202 * x10)) + ((uint128_t)x211 * x14)) + ((uint128_t)x212 * x12));
- uint128_t x217 = ((((((uint128_t)x208 * x15) + ((uint128_t)x205 * x10)) + ((uint128_t)x202 * x12)) + ((uint128_t)x211 * x16)) + ((uint128_t)x212 * x14));
- uint64_t x218 = (x205 * 0x13);
- uint64_t x219 = (x211 * 0x13);
- uint64_t x220 = (x212 * 0x13);
- uint64_t x221 = (x202 * 0x13);
- uint128_t x222 = ((((x213 + ((uint128_t)x218 * x12)) + ((uint128_t)x219 * x15)) + ((uint128_t)x220 * x16)) + ((uint128_t)x221 * x14));
- uint128_t x223 = (((x214 + ((uint128_t)x218 * x14)) + ((uint128_t)x220 * x15)) + ((uint128_t)x221 * x16));
- uint128_t x224 = ((x215 + ((uint128_t)x218 * x16)) + ((uint128_t)x221 * x15));
- uint128_t x225 = (x216 + ((uint128_t)x218 * x15));
- uint64_t x226 = (uint64_t) (x222 >> 0x33);
- uint64_t x227 = ((uint64_t)x222 & 0x7ffffffffffff);
- uint128_t x228 = (x226 + x223);
- uint64_t x229 = (uint64_t) (x228 >> 0x33);
- uint64_t x230 = ((uint64_t)x228 & 0x7ffffffffffff);
- uint128_t x231 = (x229 + x224);
- uint64_t x232 = (uint64_t) (x231 >> 0x33);
- uint64_t x233 = ((uint64_t)x231 & 0x7ffffffffffff);
- uint128_t x234 = (x232 + x225);
- uint64_t x235 = (uint64_t) (x234 >> 0x33);
- uint64_t x236 = ((uint64_t)x234 & 0x7ffffffffffff);
- uint128_t x237 = (x235 + x217);
- uint64_t x238 = (uint64_t) (x237 >> 0x33);
- uint64_t x239 = ((uint64_t)x237 & 0x7ffffffffffff);
- uint64_t x240 = (x227 + (0x13 * x238));
- uint64_t x241 = (x240 >> 0x33);
- uint64_t x242 = (x240 & 0x7ffffffffffff);
- uint64_t x243 = (x241 + x230);
- uint64_t x244 = (x243 >> 0x33);
- uint64_t x245 = (x243 & 0x7ffffffffffff);
- uint64_t x246 = (x244 + x233);
- uint64_t x247 = (x57 * 0x2);
- uint64_t x248 = (x56 * 0x2);
- uint64_t x249 = ((x55 * 0x2) * 0x13);
- uint64_t x250 = (x53 * 0x13);
- uint64_t x251 = (x250 * 0x2);
- uint128_t x252 = ((((uint128_t)x57 * x57) + ((uint128_t)x251 * x56)) + ((uint128_t)x249 * x54));
- uint128_t x253 = ((((uint128_t)x247 * x56) + ((uint128_t)x251 * x55)) + ((uint128_t)x54 * (x54 * 0x13)));
- uint128_t x254 = ((((uint128_t)x247 * x55) + ((uint128_t)x56 * x56)) + ((uint128_t)x251 * x54));
- uint128_t x255 = ((((uint128_t)x247 * x54) + ((uint128_t)x248 * x55)) + ((uint128_t)x53 * x250));
- uint128_t x256 = ((((uint128_t)x247 * x53) + ((uint128_t)x248 * x54)) + ((uint128_t)x55 * x55));
- uint64_t x257 = (uint64_t) (x252 >> 0x33);
- uint64_t x258 = ((uint64_t)x252 & 0x7ffffffffffff);
- uint128_t x259 = (x257 + x253);
- uint64_t x260 = (uint64_t) (x259 >> 0x33);
- uint64_t x261 = ((uint64_t)x259 & 0x7ffffffffffff);
- uint128_t x262 = (x260 + x254);
- uint64_t x263 = (uint64_t) (x262 >> 0x33);
- uint64_t x264 = ((uint64_t)x262 & 0x7ffffffffffff);
- uint128_t x265 = (x263 + x255);
- uint64_t x266 = (uint64_t) (x265 >> 0x33);
- uint64_t x267 = ((uint64_t)x265 & 0x7ffffffffffff);
- uint128_t x268 = (x266 + x256);
- uint64_t x269 = (uint64_t) (x268 >> 0x33);
- uint64_t x270 = ((uint64_t)x268 & 0x7ffffffffffff);
- uint64_t x271 = (x258 + (0x13 * x269));
- uint64_t x272 = (x271 >> 0x33);
- uint64_t x273 = (x271 & 0x7ffffffffffff);
- uint64_t x274 = (x272 + x261);
- uint64_t x275 = (x274 >> 0x33);
- uint64_t x276 = (x274 & 0x7ffffffffffff);
- uint64_t x277 = (x275 + x264);
- uint64_t x278 = (x62 * 0x2);
- uint64_t x279 = (x61 * 0x2);
- uint64_t x280 = ((x60 * 0x2) * 0x13);
- uint64_t x281 = (x58 * 0x13);
- uint64_t x282 = (x281 * 0x2);
- uint128_t x283 = ((((uint128_t)x62 * x62) + ((uint128_t)x282 * x61)) + ((uint128_t)x280 * x59));
- uint128_t x284 = ((((uint128_t)x278 * x61) + ((uint128_t)x282 * x60)) + ((uint128_t)x59 * (x59 * 0x13)));
- uint128_t x285 = ((((uint128_t)x278 * x60) + ((uint128_t)x61 * x61)) + ((uint128_t)x282 * x59));
- uint128_t x286 = ((((uint128_t)x278 * x59) + ((uint128_t)x279 * x60)) + ((uint128_t)x58 * x281));
- uint128_t x287 = ((((uint128_t)x278 * x58) + ((uint128_t)x279 * x59)) + ((uint128_t)x60 * x60));
- uint64_t x288 = (uint64_t) (x283 >> 0x33);
- uint64_t x289 = ((uint64_t)x283 & 0x7ffffffffffff);
- uint128_t x290 = (x288 + x284);
- uint64_t x291 = (uint64_t) (x290 >> 0x33);
- uint64_t x292 = ((uint64_t)x290 & 0x7ffffffffffff);
- uint128_t x293 = (x291 + x285);
- uint64_t x294 = (uint64_t) (x293 >> 0x33);
- uint64_t x295 = ((uint64_t)x293 & 0x7ffffffffffff);
- uint128_t x296 = (x294 + x286);
- uint64_t x297 = (uint64_t) (x296 >> 0x33);
- uint64_t x298 = ((uint64_t)x296 & 0x7ffffffffffff);
- uint128_t x299 = (x297 + x287);
- uint64_t x300 = (uint64_t) (x299 >> 0x33);
- uint64_t x301 = ((uint64_t)x299 & 0x7ffffffffffff);
- uint64_t x302 = (x289 + (0x13 * x300));
- uint64_t x303 = (x302 >> 0x33);
- uint64_t x304 = (x302 & 0x7ffffffffffff);
- uint64_t x305 = (x303 + x292);
- uint64_t x306 = (x305 >> 0x33);
- uint64_t x307 = (x305 & 0x7ffffffffffff);
- uint64_t x308 = (x306 + x295);
- uint128_t x309 = ((uint128_t)x273 * x304);
- uint128_t x310 = (((uint128_t)x273 * x307) + ((uint128_t)x276 * x304));
- uint128_t x311 = ((((uint128_t)x273 * x308) + ((uint128_t)x277 * x304)) + ((uint128_t)x276 * x307));
- uint128_t x312 = (((((uint128_t)x273 * x298) + ((uint128_t)x267 * x304)) + ((uint128_t)x276 * x308)) + ((uint128_t)x277 * x307));
- uint128_t x313 = ((((((uint128_t)x273 * x301) + ((uint128_t)x270 * x304)) + ((uint128_t)x267 * x307)) + ((uint128_t)x276 * x298)) + ((uint128_t)x277 * x308));
- uint64_t x314 = (x270 * 0x13);
- uint64_t x315 = (x276 * 0x13);
- uint64_t x316 = (x277 * 0x13);
- uint64_t x317 = (x267 * 0x13);
- uint128_t x318 = ((((x309 + ((uint128_t)x314 * x307)) + ((uint128_t)x315 * x301)) + ((uint128_t)x316 * x298)) + ((uint128_t)x317 * x308));
- uint128_t x319 = (((x310 + ((uint128_t)x314 * x308)) + ((uint128_t)x316 * x301)) + ((uint128_t)x317 * x298));
- uint128_t x320 = ((x311 + ((uint128_t)x314 * x298)) + ((uint128_t)x317 * x301));
- uint128_t x321 = (x312 + ((uint128_t)x314 * x301));
- uint64_t x322 = (uint64_t) (x318 >> 0x33);
- uint64_t x323 = ((uint64_t)x318 & 0x7ffffffffffff);
- uint128_t x324 = (x322 + x319);
- uint64_t x325 = (uint64_t) (x324 >> 0x33);
- uint64_t x326 = ((uint64_t)x324 & 0x7ffffffffffff);
- uint128_t x327 = (x325 + x320);
- uint64_t x328 = (uint64_t) (x327 >> 0x33);
- uint64_t x329 = ((uint64_t)x327 & 0x7ffffffffffff);
- uint128_t x330 = (x328 + x321);
- uint64_t x331 = (uint64_t) (x330 >> 0x33);
- uint64_t x332 = ((uint64_t)x330 & 0x7ffffffffffff);
- uint128_t x333 = (x331 + x313);
- uint64_t x334 = (uint64_t) (x333 >> 0x33);
- uint64_t x335 = ((uint64_t)x333 & 0x7ffffffffffff);
- uint64_t x336 = (x323 + (0x13 * x334));
- uint64_t x337 = (x336 >> 0x33);
- uint64_t x338 = (x336 & 0x7ffffffffffff);
- uint64_t x339 = (x337 + x326);
- uint64_t x340 = (x339 >> 0x33);
- uint64_t x341 = (x339 & 0x7ffffffffffff);
- uint64_t x342 = (x340 + x329);
- uint64_t x343 = ((0xffffffffffffe + x270) - x301);
- uint64_t x344 = ((0xffffffffffffe + x267) - x298);
- uint64_t x345 = ((0xffffffffffffe + x277) - x308);
- uint64_t x346 = ((0xffffffffffffe + x276) - x307);
- uint64_t x347 = ((0xfffffffffffda + x273) - x304);
- uint128_t x348 = ((uint128_t)x347 * 0x1db41);
- uint128_t x349 = ((uint128_t)x346 * 0x1db41);
- uint128_t x350 = ((uint128_t)x345 * 0x1db41);
- uint128_t x351 = ((uint128_t)x344 * 0x1db41);
- uint128_t x352 = ((uint128_t)x343 * 0x1db41);
- uint64_t x353 = (uint64_t) (x348 >> 0x33);
- uint64_t x354 = ((uint64_t)x348 & 0x7ffffffffffff);
- uint128_t x355 = (x353 + x349);
- uint64_t x356 = (uint64_t) (x355 >> 0x33);
- uint64_t x357 = ((uint64_t)x355 & 0x7ffffffffffff);
- uint128_t x358 = (x356 + x350);
- uint64_t x359 = (uint64_t) (x358 >> 0x33);
- uint64_t x360 = ((uint64_t)x358 & 0x7ffffffffffff);
- uint128_t x361 = (x359 + x351);
- uint64_t x362 = (uint64_t) (x361 >> 0x33);
- uint64_t x363 = ((uint64_t)x361 & 0x7ffffffffffff);
- uint128_t x364 = (x362 + x352);
- uint64_t x365 = (uint64_t) (x364 >> 0x33);
- uint64_t x366 = ((uint64_t)x364 & 0x7ffffffffffff);
- uint64_t x367 = (x354 + (0x13 * x365));
- uint64_t x368 = (x367 >> 0x33);
- uint64_t x369 = (x367 & 0x7ffffffffffff);
- uint64_t x370 = (x368 + x357);
- uint64_t x371 = (x370 >> 0x33);
- uint64_t x372 = (x370 & 0x7ffffffffffff);
- uint64_t x373 = (x371 + x360);
- uint64_t x374 = (x366 + x270);
- uint64_t x375 = (x363 + x267);
- uint64_t x376 = (x373 + x277);
- uint64_t x377 = (x372 + x276);
- uint64_t x378 = (x369 + x273);
- uint128_t x379 = ((uint128_t)x347 * x378);
- uint128_t x380 = (((uint128_t)x347 * x377) + ((uint128_t)x346 * x378));
- uint128_t x381 = ((((uint128_t)x347 * x376) + ((uint128_t)x345 * x378)) + ((uint128_t)x346 * x377));
- uint128_t x382 = (((((uint128_t)x347 * x375) + ((uint128_t)x344 * x378)) + ((uint128_t)x346 * x376)) + ((uint128_t)x345 * x377));
- uint128_t x383 = ((((((uint128_t)x347 * x374) + ((uint128_t)x343 * x378)) + ((uint128_t)x344 * x377)) + ((uint128_t)x346 * x375)) + ((uint128_t)x345 * x376));
- uint64_t x384 = (x343 * 0x13);
- uint64_t x385 = (x346 * 0x13);
- uint64_t x386 = (x345 * 0x13);
- uint64_t x387 = (x344 * 0x13);
- uint128_t x388 = ((((x379 + ((uint128_t)x384 * x377)) + ((uint128_t)x385 * x374)) + ((uint128_t)x386 * x375)) + ((uint128_t)x387 * x376));
- uint128_t x389 = (((x380 + ((uint128_t)x384 * x376)) + ((uint128_t)x386 * x374)) + ((uint128_t)x387 * x375));
- uint128_t x390 = ((x381 + ((uint128_t)x384 * x375)) + ((uint128_t)x387 * x374));
- uint128_t x391 = (x382 + ((uint128_t)x384 * x374));
- uint64_t x392 = (uint64_t) (x388 >> 0x33);
- uint64_t x393 = ((uint64_t)x388 & 0x7ffffffffffff);
- uint128_t x394 = (x392 + x389);
- uint64_t x395 = (uint64_t) (x394 >> 0x33);
- uint64_t x396 = ((uint64_t)x394 & 0x7ffffffffffff);
- uint128_t x397 = (x395 + x390);
- uint64_t x398 = (uint64_t) (x397 >> 0x33);
- uint64_t x399 = ((uint64_t)x397 & 0x7ffffffffffff);
- uint128_t x400 = (x398 + x391);
- uint64_t x401 = (uint64_t) (x400 >> 0x33);
- uint64_t x402 = ((uint64_t)x400 & 0x7ffffffffffff);
- uint128_t x403 = (x401 + x383);
- uint64_t x404 = (uint64_t) (x403 >> 0x33);
- uint64_t x405 = ((uint64_t)x403 & 0x7ffffffffffff);
- uint64_t x406 = (x393 + (0x13 * x404));
- uint64_t x407 = (x406 >> 0x33);
- uint64_t x408 = (x406 & 0x7ffffffffffff);
- uint64_t x409 = (x407 + x396);
- uint64_t x410 = (x409 >> 0x33);
- uint64_t x411 = (x409 & 0x7ffffffffffff);
- uint64_t x412 = (x410 + x399);
- return (Return x335, Return x332, Return x342, Return x341, Return x338, (Return x405, Return x402, Return x412, Return x411, Return x408), (Return x174, Return x171, Return x181, Return x180, Return x177, (Return x239, Return x236, Return x246, Return x245, Return x242))))
-(x, (x0, x1), (x2, x3))%core in
-(let (a0, b0) := a in
-(a0, b0), let (a0, b0) := b in
-(a0, b0))%core
- : Synthesis.P.feW → Synthesis.P.feW → Synthesis.P.feW → Synthesis.P.feW → Synthesis.P.feW → Synthesis.P.feW * Synthesis.P.feW * (Synthesis.P.feW * Synthesis.P.feW)
diff --git a/src/Specific/X25519/C64/ladderstepDisplay.v b/src/Specific/X25519/C64/ladderstepDisplay.v
deleted file mode 100644
index 0716f8ef1..000000000
--- a/src/Specific/X25519/C64/ladderstepDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.X25519.C64.ladderstep.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display xzladderstep.
diff --git a/src/Specific/X25519/C64/measurements.txt b/src/Specific/X25519/C64/measurements.txt
deleted file mode 100644
index ba61696e1..000000000
--- a/src/Specific/X25519/C64/measurements.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-162456 =136254*3.10/2.60 ashryn-ht-tb-ac-broadwell 7.1.1 a7ce099b+
-168279 JASONGROSS-X230-ht-tb-nops-ivybridge 2.90ghz 6.3.0 c003b54
-168376 =168376*2.60/2.60 ashryn-noht-notb-ac-broadwell 7.1.1 e014b3ac+
-184417 =184944*3.50/3.51 jgross-Leopard-WS-noht-notb-nops-haswell 5.4.0 dcf7685+
-185666 =176132*3.70/3.51 jgross-Leopard-WS-ht-tb-nops-haswell 5.4.0 e4b51d4+
-217869 JASONGROSS-X230-ht-tb-nops-core-avx-i 2.90ghz 4.8 c003b54
diff --git a/src/Specific/X25519/C64/py_interpreter.sh b/src/Specific/X25519/C64/py_interpreter.sh
deleted file mode 100755
index 470d2dd25..000000000
--- a/src/Specific/X25519/C64/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**255-19' -Dmodulus_bytes='51' -Da24='121665'
diff --git a/src/Specific/X25519/C64/scalarmult.c b/src/Specific/X25519/C64/scalarmult.c
deleted file mode 100644
index 01f81d393..000000000
--- a/src/Specific/X25519/C64/scalarmult.c
+++ /dev/null
@@ -1,311 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/X25519_C64/scalarmult.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-// The synthesized parts are from fiat-crypto, copyright MIT 2017.
-// The synthesis framework is released under the MIT license.
-// The non-synthesized parts are from curve25519-donna by Adam Langley (Google):
-/* Copyright 2008, Google Inc.
- * All rights reserved.
- *
- * Code released into the public domain.
- *
- * curve25519-donna: Curve25519 elliptic curve, public key function
- *
- * http://code.google.com/p/curve25519-donna/
- *
- * (modified by Andres Erbsen and Jason Gross)
- * Adam Langley <agl@imperialviolet.org>
- * Parts optimised by floodyberry
- * Derived from public domain C code by Daniel J. Bernstein <djb@cr.yp.to>
- *
- * More information about curve25519 can be found here
- * http://cr.yp.to/ecdh.html
- *
- * djb's sample implementation of curve25519 is written in a special assembly
- * language called qhasm and uses the floating point registers.
- *
- * This is, almost, a clean room reimplementation from the curve25519 paper. It
- * uses many of the tricks described therein. Only the crecip function is taken
- * from the sample implementation.
- */
-
-#include <string.h>
-#include <stdint.h>
-
-#include "femul.h"
-#include "fesquare.h"
-#include "ladderstep.h"
-
-typedef unsigned int uint128_t __attribute__((mode(TI)));
-
-#undef force_inline
-#define force_inline __attribute__((always_inline))
-
-typedef uint8_t u8;
-typedef uint64_t limb;
-typedef limb felem[5];
-
-static void force_inline
-fmul(felem output, const felem in2, const felem in) {
- uint64_t out[5];
- femul(out,
- in2[4], in2[3], in2[2], in2[1], in2[0],
- in[4], in[3], in[2], in[1], in[0]);
- output[4] = out[0];
- output[3] = out[1];
- output[2] = out[2];
- output[1] = out[3];
- output[0] = out[4];
-}
-
-static void force_inline
-fsquare_times(felem output, const felem in, limb count) {
- uint64_t r0 = in[0];
- uint64_t r1 = in[1];
- uint64_t r2 = in[2];
- uint64_t r3 = in[3];
- uint64_t r4 = in[4];
-
- do {
- uint64_t out[5];
- fesquare(out, r4, r3, r2, r1, r0);
- r4 = out[0];
- r3 = out[1];
- r2 = out[2];
- r1 = out[3];
- r0 = out[4];
- } while(--count);
-
- output[0] = r0;
- output[1] = r1;
- output[2] = r2;
- output[3] = r3;
- output[4] = r4;
-}
-
-/* Take a little-endian, 32-byte number and expand it into polynomial form */
-static void
-fexpand(limb *output, const u8 *in) {
- output[0] = *((const uint64_t *)(in)) & 0x7ffffffffffff;
- output[1] = (*((const uint64_t *)(in+6)) >> 3) & 0x7ffffffffffff;
- output[2] = (*((const uint64_t *)(in+12)) >> 6) & 0x7ffffffffffff;
- output[3] = (*((const uint64_t *)(in+19)) >> 1) & 0x7ffffffffffff;
- output[4] = (*((const uint64_t *)(in+25)) >> 4) & 0x7ffffffffffff;
-}
-
-/* Take a fully reduced polynomial form number and contract it into a
- * little-endian, 32-byte array
- */
-static void
-fcontract(u8 *output, const felem input) {
- uint128_t t[5];
-
- t[0] = input[0];
- t[1] = input[1];
- t[2] = input[2];
- t[3] = input[3];
- t[4] = input[4];
-
- t[1] += t[0] >> 51; t[0] &= 0x7ffffffffffff;
- t[2] += t[1] >> 51; t[1] &= 0x7ffffffffffff;
- t[3] += t[2] >> 51; t[2] &= 0x7ffffffffffff;
- t[4] += t[3] >> 51; t[3] &= 0x7ffffffffffff;
- t[0] += 19 * (t[4] >> 51); t[4] &= 0x7ffffffffffff;
-
- t[1] += t[0] >> 51; t[0] &= 0x7ffffffffffff;
- t[2] += t[1] >> 51; t[1] &= 0x7ffffffffffff;
- t[3] += t[2] >> 51; t[2] &= 0x7ffffffffffff;
- t[4] += t[3] >> 51; t[3] &= 0x7ffffffffffff;
- t[0] += 19 * (t[4] >> 51); t[4] &= 0x7ffffffffffff;
-
- /* now t is between 0 and 2^255-1, properly carried. */
- /* case 1: between 0 and 2^255-20. case 2: between 2^255-19 and 2^255-1. */
-
- t[0] += 19;
-
- t[1] += t[0] >> 51; t[0] &= 0x7ffffffffffff;
- t[2] += t[1] >> 51; t[1] &= 0x7ffffffffffff;
- t[3] += t[2] >> 51; t[2] &= 0x7ffffffffffff;
- t[4] += t[3] >> 51; t[3] &= 0x7ffffffffffff;
- t[0] += 19 * (t[4] >> 51); t[4] &= 0x7ffffffffffff;
-
- /* now between 19 and 2^255-1 in both cases, and offset by 19. */
-
- t[0] += 0x8000000000000 - 19;
- t[1] += 0x8000000000000 - 1;
- t[2] += 0x8000000000000 - 1;
- t[3] += 0x8000000000000 - 1;
- t[4] += 0x8000000000000 - 1;
-
- /* now between 2^255 and 2^256-20, and offset by 2^255. */
-
- t[1] += t[0] >> 51; t[0] &= 0x7ffffffffffff;
- t[2] += t[1] >> 51; t[1] &= 0x7ffffffffffff;
- t[3] += t[2] >> 51; t[2] &= 0x7ffffffffffff;
- t[4] += t[3] >> 51; t[3] &= 0x7ffffffffffff;
- t[4] &= 0x7ffffffffffff;
-
- *((uint64_t *)(output)) = t[0] | (t[1] << 51);
- *((uint64_t *)(output+8)) = (t[1] >> 13) | (t[2] << 38);
- *((uint64_t *)(output+16)) = (t[2] >> 26) | (t[3] << 25);
- *((uint64_t *)(output+24)) = (t[3] >> 39) | (t[4] << 12);
-}
-
-/* Input: Q, Q', Q-Q'
- * Output: 2Q, Q+Q'
- */
-static void
-fmonty(limb *x2, limb *z2, /* output 2Q */
- limb *x3, limb *z3, /* output Q + Q' */
- limb *x, limb *z, /* input Q */
- limb *xprime, limb *zprime, /* input Q' */
- const limb *qmqp /* input Q - Q' */) {
- uint64_t out[20];
- ladderstep(out, qmqp[4], qmqp[3], qmqp[2], qmqp[1], qmqp[0], x[4], x[3], x[2], x[1], x[0], z[4], z[3], z[2], z[1], z[0], xprime[4], xprime[3], xprime[2], xprime[1], xprime[0], zprime[4], zprime[3], zprime[2], zprime[1], zprime[0]);
- x2[4] = out[ 0];
- x2[3] = out[ 1];
- x2[2] = out[ 2];
- x2[1] = out[ 3];
- x2[0] = out[ 4];
- z2[4] = out[ 5];
- z2[3] = out[ 6];
- z2[2] = out[ 7];
- z2[1] = out[ 8];
- z2[0] = out[ 9];
- x3[4] = out[10];
- x3[3] = out[11];
- x3[2] = out[12];
- x3[1] = out[13];
- x3[0] = out[14];
- z3[4] = out[15];
- z3[3] = out[16];
- z3[2] = out[17];
- z3[1] = out[18];
- z3[0] = out[19];
-}
-
-// -----------------------------------------------------------------------------
-// Maybe swap the contents of two limb arrays (@a and @b), each @len elements
-// long. Perform the swap iff @swap is non-zero.
-//
-// This function performs the swap without leaking any side-channel
-// information.
-// -----------------------------------------------------------------------------
-static void
-swap_conditional(limb a[5], limb b[5], limb iswap) {
- unsigned i;
- const limb swap = -iswap;
-
- for (i = 0; i < 5; ++i) {
- const limb x = swap & (a[i] ^ b[i]);
- a[i] ^= x;
- b[i] ^= x;
- }
-}
-
-/* Calculates nQ where Q is the x-coordinate of a point on the curve
- *
- * resultx/resultz: the x coordinate of the resulting curve point (short form)
- * n: a little endian, 32-byte number
- * q: a point of the curve (short form)
- */
-static void
-cmult(limb *resultx, limb *resultz, const u8 *n, const limb *q) {
- limb a[5] = {0}, b[5] = {1}, c[5] = {1}, d[5] = {0};
- limb *nqpqx = a, *nqpqz = b, *nqx = c, *nqz = d, *t;
- limb e[5] = {0}, f[5] = {1}, g[5] = {0}, h[5] = {1};
- limb *nqpqx2 = e, *nqpqz2 = f, *nqx2 = g, *nqz2 = h;
-
- unsigned i, j;
-
- memcpy(nqpqx, q, sizeof(limb) * 5);
-
- for (i = 0; i < 32; ++i) {
- u8 byte = n[31 - i];
- for (j = 0; j < 8; ++j) {
- const limb bit = byte >> 7;
-
- swap_conditional(nqx, nqpqx, bit);
- swap_conditional(nqz, nqpqz, bit);
- fmonty(nqx2, nqz2,
- nqpqx2, nqpqz2,
- nqx, nqz,
- nqpqx, nqpqz,
- q);
- swap_conditional(nqx2, nqpqx2, bit);
- swap_conditional(nqz2, nqpqz2, bit);
-
- t = nqx;
- nqx = nqx2;
- nqx2 = t;
- t = nqz;
- nqz = nqz2;
- nqz2 = t;
- t = nqpqx;
- nqpqx = nqpqx2;
- nqpqx2 = t;
- t = nqpqz;
- nqpqz = nqpqz2;
- nqpqz2 = t;
-
- byte <<= 1;
- }
- }
-
- memcpy(resultx, nqx, sizeof(limb) * 5);
- memcpy(resultz, nqz, sizeof(limb) * 5);
-}
-
-
-// -----------------------------------------------------------------------------
-// Shamelessly copied from djb's code, tightened a little
-// -----------------------------------------------------------------------------
-static void
-crecip(felem out, const felem z) {
- felem a,t0,b,c;
-
- /* 2 */ fsquare_times(a, z, 1); // a = 2
- /* 8 */ fsquare_times(t0, a, 2);
- /* 9 */ fmul(b, t0, z); // b = 9
- /* 11 */ fmul(a, b, a); // a = 11
- /* 22 */ fsquare_times(t0, a, 1);
- /* 2^5 - 2^0 = 31 */ fmul(b, t0, b);
- /* 2^10 - 2^5 */ fsquare_times(t0, b, 5);
- /* 2^10 - 2^0 */ fmul(b, t0, b);
- /* 2^20 - 2^10 */ fsquare_times(t0, b, 10);
- /* 2^20 - 2^0 */ fmul(c, t0, b);
- /* 2^40 - 2^20 */ fsquare_times(t0, c, 20);
- /* 2^40 - 2^0 */ fmul(t0, t0, c);
- /* 2^50 - 2^10 */ fsquare_times(t0, t0, 10);
- /* 2^50 - 2^0 */ fmul(b, t0, b);
- /* 2^100 - 2^50 */ fsquare_times(t0, b, 50);
- /* 2^100 - 2^0 */ fmul(c, t0, b);
- /* 2^200 - 2^100 */ fsquare_times(t0, c, 100);
- /* 2^200 - 2^0 */ fmul(t0, t0, c);
- /* 2^250 - 2^50 */ fsquare_times(t0, t0, 50);
- /* 2^250 - 2^0 */ fmul(t0, t0, b);
- /* 2^255 - 2^5 */ fsquare_times(t0, t0, 5);
- /* 2^255 - 21 */ fmul(out, t0, a);
-}
-
-int
-crypto_scalarmult(u8 *mypublic, const u8 *secret, const u8 *basepoint) {
- limb bp[5], x[5], z[5], zmone[5];
- uint8_t e[32];
- int i;
-
- for (i = 0;i < 32;++i) e[i] = secret[i];
- e[0] &= 248;
- e[31] &= 127;
- e[31] |= 64;
-
- fexpand(bp, basepoint);
- cmult(x, z, e, bp);
- crecip(zmone, z);
- fmul(z, x, zmone);
- fcontract(mypublic, z);
- return 0;
-}
-
-void crypto_scalarmult_bench(unsigned char* buf) {
- crypto_scalarmult(buf, buf+32, buf+64);
-}
diff --git a/src/Specific/X25519/supercop-benchmarks.txt b/src/Specific/X25519/supercop-benchmarks.txt
deleted file mode 100644
index f892a7229..000000000
--- a/src/Specific/X25519/supercop-benchmarks.txt
+++ /dev/null
@@ -1,21 +0,0 @@
-ashryn-noht-notb-ac-broadwell, 2.60/2.60
-
-browse@ashryn ~/thesis/supercop-data/ashryn/amd64 % ./try/c/gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv/crypto_scalarmult/curve25519/amd64-64/compiled/measure | tail -1 | tr ' ' '\n' | sort -rn | head -32 | tail -1
-
-
-145008
-browse@ashryn ~/thesis/supercop-data/ashryn/amd64 % ./try/c/gcc_-funroll-loops_-O2_-fomit-frame-pointer/crypto_scalarmult/curve25519/amd64-51/compiled/measure | tail -1 | tr ' ' '\n' | sort -rn | head -32 | tail -1
-
-
-154248
-browse@ashryn ~/thesis/supercop-data/ashryn/amd64 % ./try/c/gcc_-m64_-O3_-fomit-frame-pointer/crypto_scalarmult/curve25519/sandy2x/compiled/measure | tail -1 | tr ' ' '\n' | sort -rn | head -32 | tail -1
-
-
-154688
-browse@ashryn ~/thesis/supercop-data/ashryn/amd64 % ./try/c/gcc_-march=nocona_-Os_-fomit-frame-pointer/crypto_scalarmult/curve25519/ref10/compiled/measure | tail -1 | tr ' ' '\n' | sort -rn | head -32 | tail -1
-356716
-browse@ashryn ~/thesis/supercop-data/ashryn/amd64 % ./try/c/gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv/crypto_scalarmult/curve25519/ref/compiled/measure | tail -1 | tr ' ' '\n' | sort -rn | head -32 | tail -1
-
-
-6044504
-
diff --git a/src/Specific/X25519/x25519_test.c b/src/Specific/X25519/x25519_test.c
deleted file mode 100644
index 11bdb7acb..000000000
--- a/src/Specific/X25519/x25519_test.c
+++ /dev/null
@@ -1,29 +0,0 @@
-#include <stdio.h>
-#include <stdint.h>
-
-void crypto_scalarmult(uint8_t *out, const uint8_t *secret, const uint8_t *basepoint);
-
-const uint8_t expected[32] = {0x89, 0x16, 0x1f, 0xde, 0x88, 0x7b, 0x2b, 0x53, 0xde, 0x54, 0x9a, 0xf4, 0x83, 0x94, 0x01, 0x06, 0xec, 0xc1, 0x14, 0xd6, 0x98, 0x2d, 0xaa, 0x98, 0x25, 0x6d, 0xe2, 0x3b, 0xdf, 0x77, 0x66, 0x1a};
-const uint8_t basepoint[32] = {9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-
-int main() {
- uint8_t a[32] = {0}, b[32] = {0};
- uint8_t* in = a;
- uint8_t* out = b;
- a[0] = 1;
-
- for (int i = 0; i < 200; i++) {
- // printf("0x"); for (int i = 31; i>=0; --i) { printf("%02x", in[i]); }; printf("\n");
- crypto_scalarmult(out, in, basepoint);
- uint8_t* t = out;
- out = in;
- in = t;
- }
-
- for (int i = 0; i < 32; i++) {
- if (in[i] != expected[i]) {
- return (i+1);
- }
- }
- return 0;
-}
diff --git a/src/Specific/montgomery32_2e127m1_4limbs/CurveParameters.v b/src/Specific/montgomery32_2e127m1_4limbs/CurveParameters.v
deleted file mode 100644
index 119c9782f..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^127 - 1
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 32;
- bitwidth := 32;
- s := 2^127;
- c := [(1, 1)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e127m1_4limbs/Synthesis.v b/src/Specific/montgomery32_2e127m1_4limbs/Synthesis.v
deleted file mode 100644
index f6de13a17..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e127m1_4limbs.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/montgomery32_2e127m1_4limbs/compiler.sh b/src/Specific/montgomery32_2e127m1_4limbs/compiler.sh
deleted file mode 100755
index c40a25812..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='16' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<127) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e127m1_4limbs/compilerxx.sh b/src/Specific/montgomery32_2e127m1_4limbs/compilerxx.sh
deleted file mode 100755
index 37a71eef7..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='16' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<127) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e127m1_4limbs/feadd.c b/src/Specific/montgomery32_2e127m1_4limbs/feadd.c
deleted file mode 100644
index 83328c32f..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint32_t out[4], const uint32_t in1[4], const uint32_t in2[4]) {
- { const uint32_t x8 = in1[3];
- { const uint32_t x9 = in1[2];
- { const uint32_t x7 = in1[1];
- { const uint32_t x5 = in1[0];
- { const uint32_t x14 = in2[3];
- { const uint32_t x15 = in2[2];
- { const uint32_t x13 = in2[1];
- { const uint32_t x11 = in2[0];
- { uint32_t x17; uint8_t x18 = _addcarryx_u32(0x0, x5, x11, &x17);
- { uint32_t x20; uint8_t x21 = _addcarryx_u32(x18, x7, x13, &x20);
- { uint32_t x23; uint8_t x24 = _addcarryx_u32(x21, x9, x15, &x23);
- { uint32_t x26; uint8_t x27 = _addcarryx_u32(x24, x8, x14, &x26);
- { uint32_t x29; uint8_t x30 = _subborrow_u32(0x0, x17, 0xffffffff, &x29);
- { uint32_t x32; uint8_t x33 = _subborrow_u32(x30, x20, 0xffffffff, &x32);
- { uint32_t x35; uint8_t x36 = _subborrow_u32(x33, x23, 0xffffffff, &x35);
- { uint32_t x38; uint8_t x39 = _subborrow_u32(x36, x26, 0x7fffffff, &x38);
- { uint32_t _; uint8_t x42 = _subborrow_u32(x39, x27, 0x0, &_);
- { uint32_t x43 = cmovznz32(x42, x38, x26);
- { uint32_t x44 = cmovznz32(x42, x35, x23);
- { uint32_t x45 = cmovznz32(x42, x32, x20);
- { uint32_t x46 = cmovznz32(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e127m1_4limbs/feadd.v b/src/Specific/montgomery32_2e127m1_4limbs/feadd.v
deleted file mode 100644
index 8c828968e..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e127m1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e127m1_4limbs/feaddDisplay.log b/src/Specific/montgomery32_2e127m1_4limbs/feaddDisplay.log
deleted file mode 100644
index 6368982f5..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint32_t x17, uint8_t x18 = addcarryx_u32(0x0, x5, x11);
- uint32_t x20, uint8_t x21 = addcarryx_u32(x18, x7, x13);
- uint32_t x23, uint8_t x24 = addcarryx_u32(x21, x9, x15);
- uint32_t x26, uint8_t x27 = addcarryx_u32(x24, x8, x14);
- uint32_t x29, uint8_t x30 = subborrow_u32(0x0, x17, 0xffffffff);
- uint32_t x32, uint8_t x33 = subborrow_u32(x30, x20, 0xffffffff);
- uint32_t x35, uint8_t x36 = subborrow_u32(x33, x23, 0xffffffff);
- uint32_t x38, uint8_t x39 = subborrow_u32(x36, x26, 0x7fffffff);
- uint32_t _, uint8_t x42 = subborrow_u32(x39, x27, 0x0);
- uint32_t x43 = cmovznz32(x42, x38, x26);
- uint32_t x44 = cmovznz32(x42, x35, x23);
- uint32_t x45 = cmovznz32(x42, x32, x20);
- uint32_t x46 = cmovznz32(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e127m1_4limbs/feaddDisplay.v b/src/Specific/montgomery32_2e127m1_4limbs/feaddDisplay.v
deleted file mode 100644
index 3e69b6c5c..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e127m1_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e127m1_4limbs/femul.c b/src/Specific/montgomery32_2e127m1_4limbs/femul.c
deleted file mode 100644
index 49619dbef..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/femul.c
+++ /dev/null
@@ -1,126 +0,0 @@
-static void femul(uint32_t out[4], const uint32_t in1[4], const uint32_t in2[4]) {
- { const uint32_t x8 = in1[3];
- { const uint32_t x9 = in1[2];
- { const uint32_t x7 = in1[1];
- { const uint32_t x5 = in1[0];
- { const uint32_t x14 = in2[3];
- { const uint32_t x15 = in2[2];
- { const uint32_t x13 = in2[1];
- { const uint32_t x11 = in2[0];
- { uint32_t x18; uint32_t x17 = _mulx_u32(x5, x11, &x18);
- { uint32_t x21; uint32_t x20 = _mulx_u32(x5, x13, &x21);
- { uint32_t x24; uint32_t x23 = _mulx_u32(x5, x15, &x24);
- { uint32_t x27; uint32_t x26 = _mulx_u32(x5, x14, &x27);
- { uint32_t x29; uint8_t x30 = _addcarryx_u32(0x0, x18, x20, &x29);
- { uint32_t x32; uint8_t x33 = _addcarryx_u32(x30, x21, x23, &x32);
- { uint32_t x35; uint8_t x36 = _addcarryx_u32(x33, x24, x26, &x35);
- { uint32_t x38; uint8_t _ = _addcarryx_u32(0x0, x36, x27, &x38);
- { uint32_t x42; uint32_t x41 = _mulx_u32(x17, 0xffffffff, &x42);
- { uint32_t x45; uint32_t x44 = _mulx_u32(x17, 0xffffffff, &x45);
- { uint32_t x48; uint32_t x47 = _mulx_u32(x17, 0xffffffff, &x48);
- { uint32_t x51; uint32_t x50 = _mulx_u32(x17, 0x7fffffff, &x51);
- { uint32_t x53; uint8_t x54 = _addcarryx_u32(0x0, x42, x44, &x53);
- { uint32_t x56; uint8_t x57 = _addcarryx_u32(x54, x45, x47, &x56);
- { uint32_t x59; uint8_t x60 = _addcarryx_u32(x57, x48, x50, &x59);
- { uint32_t x62; uint8_t _ = _addcarryx_u32(0x0, x60, x51, &x62);
- { uint32_t _; uint8_t x66 = _addcarryx_u32(0x0, x17, x41, &_);
- { uint32_t x68; uint8_t x69 = _addcarryx_u32(x66, x29, x53, &x68);
- { uint32_t x71; uint8_t x72 = _addcarryx_u32(x69, x32, x56, &x71);
- { uint32_t x74; uint8_t x75 = _addcarryx_u32(x72, x35, x59, &x74);
- { uint32_t x77; uint8_t x78 = _addcarryx_u32(x75, x38, x62, &x77);
- { uint32_t x81; uint32_t x80 = _mulx_u32(x7, x11, &x81);
- { uint32_t x84; uint32_t x83 = _mulx_u32(x7, x13, &x84);
- { uint32_t x87; uint32_t x86 = _mulx_u32(x7, x15, &x87);
- { uint32_t x90; uint32_t x89 = _mulx_u32(x7, x14, &x90);
- { uint32_t x92; uint8_t x93 = _addcarryx_u32(0x0, x81, x83, &x92);
- { uint32_t x95; uint8_t x96 = _addcarryx_u32(x93, x84, x86, &x95);
- { uint32_t x98; uint8_t x99 = _addcarryx_u32(x96, x87, x89, &x98);
- { uint32_t x101; uint8_t _ = _addcarryx_u32(0x0, x99, x90, &x101);
- { uint32_t x104; uint8_t x105 = _addcarryx_u32(0x0, x68, x80, &x104);
- { uint32_t x107; uint8_t x108 = _addcarryx_u32(x105, x71, x92, &x107);
- { uint32_t x110; uint8_t x111 = _addcarryx_u32(x108, x74, x95, &x110);
- { uint32_t x113; uint8_t x114 = _addcarryx_u32(x111, x77, x98, &x113);
- { uint32_t x116; uint8_t x117 = _addcarryx_u32(x114, x78, x101, &x116);
- { uint32_t x120; uint32_t x119 = _mulx_u32(x104, 0xffffffff, &x120);
- { uint32_t x123; uint32_t x122 = _mulx_u32(x104, 0xffffffff, &x123);
- { uint32_t x126; uint32_t x125 = _mulx_u32(x104, 0xffffffff, &x126);
- { uint32_t x129; uint32_t x128 = _mulx_u32(x104, 0x7fffffff, &x129);
- { uint32_t x131; uint8_t x132 = _addcarryx_u32(0x0, x120, x122, &x131);
- { uint32_t x134; uint8_t x135 = _addcarryx_u32(x132, x123, x125, &x134);
- { uint32_t x137; uint8_t x138 = _addcarryx_u32(x135, x126, x128, &x137);
- { uint32_t x140; uint8_t _ = _addcarryx_u32(0x0, x138, x129, &x140);
- { uint32_t _; uint8_t x144 = _addcarryx_u32(0x0, x104, x119, &_);
- { uint32_t x146; uint8_t x147 = _addcarryx_u32(x144, x107, x131, &x146);
- { uint32_t x149; uint8_t x150 = _addcarryx_u32(x147, x110, x134, &x149);
- { uint32_t x152; uint8_t x153 = _addcarryx_u32(x150, x113, x137, &x152);
- { uint32_t x155; uint8_t x156 = _addcarryx_u32(x153, x116, x140, &x155);
- { uint8_t x157 = (x156 + x117);
- { uint32_t x160; uint32_t x159 = _mulx_u32(x9, x11, &x160);
- { uint32_t x163; uint32_t x162 = _mulx_u32(x9, x13, &x163);
- { uint32_t x166; uint32_t x165 = _mulx_u32(x9, x15, &x166);
- { uint32_t x169; uint32_t x168 = _mulx_u32(x9, x14, &x169);
- { uint32_t x171; uint8_t x172 = _addcarryx_u32(0x0, x160, x162, &x171);
- { uint32_t x174; uint8_t x175 = _addcarryx_u32(x172, x163, x165, &x174);
- { uint32_t x177; uint8_t x178 = _addcarryx_u32(x175, x166, x168, &x177);
- { uint32_t x180; uint8_t _ = _addcarryx_u32(0x0, x178, x169, &x180);
- { uint32_t x183; uint8_t x184 = _addcarryx_u32(0x0, x146, x159, &x183);
- { uint32_t x186; uint8_t x187 = _addcarryx_u32(x184, x149, x171, &x186);
- { uint32_t x189; uint8_t x190 = _addcarryx_u32(x187, x152, x174, &x189);
- { uint32_t x192; uint8_t x193 = _addcarryx_u32(x190, x155, x177, &x192);
- { uint32_t x195; uint8_t x196 = _addcarryx_u32(x193, x157, x180, &x195);
- { uint32_t x199; uint32_t x198 = _mulx_u32(x183, 0xffffffff, &x199);
- { uint32_t x202; uint32_t x201 = _mulx_u32(x183, 0xffffffff, &x202);
- { uint32_t x205; uint32_t x204 = _mulx_u32(x183, 0xffffffff, &x205);
- { uint32_t x208; uint32_t x207 = _mulx_u32(x183, 0x7fffffff, &x208);
- { uint32_t x210; uint8_t x211 = _addcarryx_u32(0x0, x199, x201, &x210);
- { uint32_t x213; uint8_t x214 = _addcarryx_u32(x211, x202, x204, &x213);
- { uint32_t x216; uint8_t x217 = _addcarryx_u32(x214, x205, x207, &x216);
- { uint32_t x219; uint8_t _ = _addcarryx_u32(0x0, x217, x208, &x219);
- { uint32_t _; uint8_t x223 = _addcarryx_u32(0x0, x183, x198, &_);
- { uint32_t x225; uint8_t x226 = _addcarryx_u32(x223, x186, x210, &x225);
- { uint32_t x228; uint8_t x229 = _addcarryx_u32(x226, x189, x213, &x228);
- { uint32_t x231; uint8_t x232 = _addcarryx_u32(x229, x192, x216, &x231);
- { uint32_t x234; uint8_t x235 = _addcarryx_u32(x232, x195, x219, &x234);
- { uint8_t x236 = (x235 + x196);
- { uint32_t x239; uint32_t x238 = _mulx_u32(x8, x11, &x239);
- { uint32_t x242; uint32_t x241 = _mulx_u32(x8, x13, &x242);
- { uint32_t x245; uint32_t x244 = _mulx_u32(x8, x15, &x245);
- { uint32_t x248; uint32_t x247 = _mulx_u32(x8, x14, &x248);
- { uint32_t x250; uint8_t x251 = _addcarryx_u32(0x0, x239, x241, &x250);
- { uint32_t x253; uint8_t x254 = _addcarryx_u32(x251, x242, x244, &x253);
- { uint32_t x256; uint8_t x257 = _addcarryx_u32(x254, x245, x247, &x256);
- { uint32_t x259; uint8_t _ = _addcarryx_u32(0x0, x257, x248, &x259);
- { uint32_t x262; uint8_t x263 = _addcarryx_u32(0x0, x225, x238, &x262);
- { uint32_t x265; uint8_t x266 = _addcarryx_u32(x263, x228, x250, &x265);
- { uint32_t x268; uint8_t x269 = _addcarryx_u32(x266, x231, x253, &x268);
- { uint32_t x271; uint8_t x272 = _addcarryx_u32(x269, x234, x256, &x271);
- { uint32_t x274; uint8_t x275 = _addcarryx_u32(x272, x236, x259, &x274);
- { uint32_t x278; uint32_t x277 = _mulx_u32(x262, 0xffffffff, &x278);
- { uint32_t x281; uint32_t x280 = _mulx_u32(x262, 0xffffffff, &x281);
- { uint32_t x284; uint32_t x283 = _mulx_u32(x262, 0xffffffff, &x284);
- { uint32_t x287; uint32_t x286 = _mulx_u32(x262, 0x7fffffff, &x287);
- { uint32_t x289; uint8_t x290 = _addcarryx_u32(0x0, x278, x280, &x289);
- { uint32_t x292; uint8_t x293 = _addcarryx_u32(x290, x281, x283, &x292);
- { uint32_t x295; uint8_t x296 = _addcarryx_u32(x293, x284, x286, &x295);
- { uint32_t x298; uint8_t _ = _addcarryx_u32(0x0, x296, x287, &x298);
- { uint32_t _; uint8_t x302 = _addcarryx_u32(0x0, x262, x277, &_);
- { uint32_t x304; uint8_t x305 = _addcarryx_u32(x302, x265, x289, &x304);
- { uint32_t x307; uint8_t x308 = _addcarryx_u32(x305, x268, x292, &x307);
- { uint32_t x310; uint8_t x311 = _addcarryx_u32(x308, x271, x295, &x310);
- { uint32_t x313; uint8_t x314 = _addcarryx_u32(x311, x274, x298, &x313);
- { uint8_t x315 = (x314 + x275);
- { uint32_t x317; uint8_t x318 = _subborrow_u32(0x0, x304, 0xffffffff, &x317);
- { uint32_t x320; uint8_t x321 = _subborrow_u32(x318, x307, 0xffffffff, &x320);
- { uint32_t x323; uint8_t x324 = _subborrow_u32(x321, x310, 0xffffffff, &x323);
- { uint32_t x326; uint8_t x327 = _subborrow_u32(x324, x313, 0x7fffffff, &x326);
- { uint32_t _; uint8_t x330 = _subborrow_u32(x327, x315, 0x0, &_);
- { uint32_t x331 = cmovznz32(x330, x326, x313);
- { uint32_t x332 = cmovznz32(x330, x323, x310);
- { uint32_t x333 = cmovznz32(x330, x320, x307);
- { uint32_t x334 = cmovznz32(x330, x317, x304);
- out[0] = x334;
- out[1] = x333;
- out[2] = x332;
- out[3] = x331;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e127m1_4limbs/femul.v b/src/Specific/montgomery32_2e127m1_4limbs/femul.v
deleted file mode 100644
index e22bcea59..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e127m1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e127m1_4limbs/femulDisplay.log b/src/Specific/montgomery32_2e127m1_4limbs/femulDisplay.log
deleted file mode 100644
index 0fa546aca..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,118 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint32_t x17, uint32_t x18 = mulx_u32(x5, x11);
- uint32_t x20, uint32_t x21 = mulx_u32(x5, x13);
- uint32_t x23, uint32_t x24 = mulx_u32(x5, x15);
- uint32_t x26, uint32_t x27 = mulx_u32(x5, x14);
- uint32_t x29, uint8_t x30 = addcarryx_u32(0x0, x18, x20);
- uint32_t x32, uint8_t x33 = addcarryx_u32(x30, x21, x23);
- uint32_t x35, uint8_t x36 = addcarryx_u32(x33, x24, x26);
- uint32_t x38, uint8_t _ = addcarryx_u32(0x0, x36, x27);
- uint32_t x41, uint32_t x42 = mulx_u32(x17, 0xffffffff);
- uint32_t x44, uint32_t x45 = mulx_u32(x17, 0xffffffff);
- uint32_t x47, uint32_t x48 = mulx_u32(x17, 0xffffffff);
- uint32_t x50, uint32_t x51 = mulx_u32(x17, 0x7fffffff);
- uint32_t x53, uint8_t x54 = addcarryx_u32(0x0, x42, x44);
- uint32_t x56, uint8_t x57 = addcarryx_u32(x54, x45, x47);
- uint32_t x59, uint8_t x60 = addcarryx_u32(x57, x48, x50);
- uint32_t x62, uint8_t _ = addcarryx_u32(0x0, x60, x51);
- uint32_t _, uint8_t x66 = addcarryx_u32(0x0, x17, x41);
- uint32_t x68, uint8_t x69 = addcarryx_u32(x66, x29, x53);
- uint32_t x71, uint8_t x72 = addcarryx_u32(x69, x32, x56);
- uint32_t x74, uint8_t x75 = addcarryx_u32(x72, x35, x59);
- uint32_t x77, uint8_t x78 = addcarryx_u32(x75, x38, x62);
- uint32_t x80, uint32_t x81 = mulx_u32(x7, x11);
- uint32_t x83, uint32_t x84 = mulx_u32(x7, x13);
- uint32_t x86, uint32_t x87 = mulx_u32(x7, x15);
- uint32_t x89, uint32_t x90 = mulx_u32(x7, x14);
- uint32_t x92, uint8_t x93 = addcarryx_u32(0x0, x81, x83);
- uint32_t x95, uint8_t x96 = addcarryx_u32(x93, x84, x86);
- uint32_t x98, uint8_t x99 = addcarryx_u32(x96, x87, x89);
- uint32_t x101, uint8_t _ = addcarryx_u32(0x0, x99, x90);
- uint32_t x104, uint8_t x105 = addcarryx_u32(0x0, x68, x80);
- uint32_t x107, uint8_t x108 = addcarryx_u32(x105, x71, x92);
- uint32_t x110, uint8_t x111 = addcarryx_u32(x108, x74, x95);
- uint32_t x113, uint8_t x114 = addcarryx_u32(x111, x77, x98);
- uint32_t x116, uint8_t x117 = addcarryx_u32(x114, x78, x101);
- uint32_t x119, uint32_t x120 = mulx_u32(x104, 0xffffffff);
- uint32_t x122, uint32_t x123 = mulx_u32(x104, 0xffffffff);
- uint32_t x125, uint32_t x126 = mulx_u32(x104, 0xffffffff);
- uint32_t x128, uint32_t x129 = mulx_u32(x104, 0x7fffffff);
- uint32_t x131, uint8_t x132 = addcarryx_u32(0x0, x120, x122);
- uint32_t x134, uint8_t x135 = addcarryx_u32(x132, x123, x125);
- uint32_t x137, uint8_t x138 = addcarryx_u32(x135, x126, x128);
- uint32_t x140, uint8_t _ = addcarryx_u32(0x0, x138, x129);
- uint32_t _, uint8_t x144 = addcarryx_u32(0x0, x104, x119);
- uint32_t x146, uint8_t x147 = addcarryx_u32(x144, x107, x131);
- uint32_t x149, uint8_t x150 = addcarryx_u32(x147, x110, x134);
- uint32_t x152, uint8_t x153 = addcarryx_u32(x150, x113, x137);
- uint32_t x155, uint8_t x156 = addcarryx_u32(x153, x116, x140);
- uint8_t x157 = (x156 + x117);
- uint32_t x159, uint32_t x160 = mulx_u32(x9, x11);
- uint32_t x162, uint32_t x163 = mulx_u32(x9, x13);
- uint32_t x165, uint32_t x166 = mulx_u32(x9, x15);
- uint32_t x168, uint32_t x169 = mulx_u32(x9, x14);
- uint32_t x171, uint8_t x172 = addcarryx_u32(0x0, x160, x162);
- uint32_t x174, uint8_t x175 = addcarryx_u32(x172, x163, x165);
- uint32_t x177, uint8_t x178 = addcarryx_u32(x175, x166, x168);
- uint32_t x180, uint8_t _ = addcarryx_u32(0x0, x178, x169);
- uint32_t x183, uint8_t x184 = addcarryx_u32(0x0, x146, x159);
- uint32_t x186, uint8_t x187 = addcarryx_u32(x184, x149, x171);
- uint32_t x189, uint8_t x190 = addcarryx_u32(x187, x152, x174);
- uint32_t x192, uint8_t x193 = addcarryx_u32(x190, x155, x177);
- uint32_t x195, uint8_t x196 = addcarryx_u32(x193, x157, x180);
- uint32_t x198, uint32_t x199 = mulx_u32(x183, 0xffffffff);
- uint32_t x201, uint32_t x202 = mulx_u32(x183, 0xffffffff);
- uint32_t x204, uint32_t x205 = mulx_u32(x183, 0xffffffff);
- uint32_t x207, uint32_t x208 = mulx_u32(x183, 0x7fffffff);
- uint32_t x210, uint8_t x211 = addcarryx_u32(0x0, x199, x201);
- uint32_t x213, uint8_t x214 = addcarryx_u32(x211, x202, x204);
- uint32_t x216, uint8_t x217 = addcarryx_u32(x214, x205, x207);
- uint32_t x219, uint8_t _ = addcarryx_u32(0x0, x217, x208);
- uint32_t _, uint8_t x223 = addcarryx_u32(0x0, x183, x198);
- uint32_t x225, uint8_t x226 = addcarryx_u32(x223, x186, x210);
- uint32_t x228, uint8_t x229 = addcarryx_u32(x226, x189, x213);
- uint32_t x231, uint8_t x232 = addcarryx_u32(x229, x192, x216);
- uint32_t x234, uint8_t x235 = addcarryx_u32(x232, x195, x219);
- uint8_t x236 = (x235 + x196);
- uint32_t x238, uint32_t x239 = mulx_u32(x8, x11);
- uint32_t x241, uint32_t x242 = mulx_u32(x8, x13);
- uint32_t x244, uint32_t x245 = mulx_u32(x8, x15);
- uint32_t x247, uint32_t x248 = mulx_u32(x8, x14);
- uint32_t x250, uint8_t x251 = addcarryx_u32(0x0, x239, x241);
- uint32_t x253, uint8_t x254 = addcarryx_u32(x251, x242, x244);
- uint32_t x256, uint8_t x257 = addcarryx_u32(x254, x245, x247);
- uint32_t x259, uint8_t _ = addcarryx_u32(0x0, x257, x248);
- uint32_t x262, uint8_t x263 = addcarryx_u32(0x0, x225, x238);
- uint32_t x265, uint8_t x266 = addcarryx_u32(x263, x228, x250);
- uint32_t x268, uint8_t x269 = addcarryx_u32(x266, x231, x253);
- uint32_t x271, uint8_t x272 = addcarryx_u32(x269, x234, x256);
- uint32_t x274, uint8_t x275 = addcarryx_u32(x272, x236, x259);
- uint32_t x277, uint32_t x278 = mulx_u32(x262, 0xffffffff);
- uint32_t x280, uint32_t x281 = mulx_u32(x262, 0xffffffff);
- uint32_t x283, uint32_t x284 = mulx_u32(x262, 0xffffffff);
- uint32_t x286, uint32_t x287 = mulx_u32(x262, 0x7fffffff);
- uint32_t x289, uint8_t x290 = addcarryx_u32(0x0, x278, x280);
- uint32_t x292, uint8_t x293 = addcarryx_u32(x290, x281, x283);
- uint32_t x295, uint8_t x296 = addcarryx_u32(x293, x284, x286);
- uint32_t x298, uint8_t _ = addcarryx_u32(0x0, x296, x287);
- uint32_t _, uint8_t x302 = addcarryx_u32(0x0, x262, x277);
- uint32_t x304, uint8_t x305 = addcarryx_u32(x302, x265, x289);
- uint32_t x307, uint8_t x308 = addcarryx_u32(x305, x268, x292);
- uint32_t x310, uint8_t x311 = addcarryx_u32(x308, x271, x295);
- uint32_t x313, uint8_t x314 = addcarryx_u32(x311, x274, x298);
- uint8_t x315 = (x314 + x275);
- uint32_t x317, uint8_t x318 = subborrow_u32(0x0, x304, 0xffffffff);
- uint32_t x320, uint8_t x321 = subborrow_u32(x318, x307, 0xffffffff);
- uint32_t x323, uint8_t x324 = subborrow_u32(x321, x310, 0xffffffff);
- uint32_t x326, uint8_t x327 = subborrow_u32(x324, x313, 0x7fffffff);
- uint32_t _, uint8_t x330 = subborrow_u32(x327, x315, 0x0);
- uint32_t x331 = cmovznz32(x330, x326, x313);
- uint32_t x332 = cmovznz32(x330, x323, x310);
- uint32_t x333 = cmovznz32(x330, x320, x307);
- uint32_t x334 = cmovznz32(x330, x317, x304);
- return (x331, x332, x333, x334))
-(x, x0)%core
- : word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e127m1_4limbs/femulDisplay.v b/src/Specific/montgomery32_2e127m1_4limbs/femulDisplay.v
deleted file mode 100644
index 8bab5a350..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e127m1_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e127m1_4limbs/fenz.c b/src/Specific/montgomery32_2e127m1_4limbs/fenz.c
deleted file mode 100644
index 65f47ec44..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[4]) {
- { const uint32_t x5 = in1[3];
- { const uint32_t x6 = in1[2];
- { const uint32_t x4 = in1[1];
- { const uint32_t x2 = in1[0];
- { uint32_t x7 = (x6 | x5);
- { uint32_t x8 = (x4 | x7);
- { uint32_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e127m1_4limbs/fenz.v b/src/Specific/montgomery32_2e127m1_4limbs/fenz.v
deleted file mode 100644
index 169dc0c50..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e127m1_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e127m1_4limbs/fenzDisplay.log b/src/Specific/montgomery32_2e127m1_4limbs/fenzDisplay.log
deleted file mode 100644
index 1b557691b..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint32_t x7 = (x6 | x5);
- uint32_t x8 = (x4 | x7);
- uint32_t x9 = (x2 | x8);
- return x9)
-x
- : word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e127m1_4limbs/fenzDisplay.v b/src/Specific/montgomery32_2e127m1_4limbs/fenzDisplay.v
deleted file mode 100644
index 0f7fa3040..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e127m1_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e127m1_4limbs/feopp.c b/src/Specific/montgomery32_2e127m1_4limbs/feopp.c
deleted file mode 100644
index 4109fa0d9..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/feopp.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feopp(uint32_t out[4], const uint32_t in1[4]) {
- { const uint32_t x5 = in1[3];
- { const uint32_t x6 = in1[2];
- { const uint32_t x4 = in1[1];
- { const uint32_t x2 = in1[0];
- { uint32_t x8; uint8_t x9 = _subborrow_u32(0x0, 0x0, x2, &x8);
- { uint32_t x11; uint8_t x12 = _subborrow_u32(x9, 0x0, x4, &x11);
- { uint32_t x14; uint8_t x15 = _subborrow_u32(x12, 0x0, x6, &x14);
- { uint32_t x17; uint8_t x18 = _subborrow_u32(x15, 0x0, x5, &x17);
- { uint32_t x19 = cmovznz32(x18, 0x0, 0xffffffff);
- { uint32_t x20 = (x19 & 0xffffffff);
- { uint32_t x22; uint8_t x23 = _addcarryx_u32(0x0, x8, x20, &x22);
- { uint32_t x24 = (x19 & 0xffffffff);
- { uint32_t x26; uint8_t x27 = _addcarryx_u32(x23, x11, x24, &x26);
- { uint32_t x28 = (x19 & 0xffffffff);
- { uint32_t x30; uint8_t x31 = _addcarryx_u32(x27, x14, x28, &x30);
- { uint32_t x32 = (x19 & 0x7fffffff);
- { uint32_t x34; uint8_t _ = _addcarryx_u32(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e127m1_4limbs/feopp.v b/src/Specific/montgomery32_2e127m1_4limbs/feopp.v
deleted file mode 100644
index bb647274b..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e127m1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e127m1_4limbs/feoppDisplay.log b/src/Specific/montgomery32_2e127m1_4limbs/feoppDisplay.log
deleted file mode 100644
index d9265af7f..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint32_t x8, uint8_t x9 = subborrow_u32(0x0, 0x0, x2);
- uint32_t x11, uint8_t x12 = subborrow_u32(x9, 0x0, x4);
- uint32_t x14, uint8_t x15 = subborrow_u32(x12, 0x0, x6);
- uint32_t x17, uint8_t x18 = subborrow_u32(x15, 0x0, x5);
- uint32_t x19 = cmovznz32(x18, 0x0, 0xffffffff);
- uint32_t x20 = (x19 & 0xffffffff);
- uint32_t x22, uint8_t x23 = addcarryx_u32(0x0, x8, x20);
- uint32_t x24 = (x19 & 0xffffffff);
- uint32_t x26, uint8_t x27 = addcarryx_u32(x23, x11, x24);
- uint32_t x28 = (x19 & 0xffffffff);
- uint32_t x30, uint8_t x31 = addcarryx_u32(x27, x14, x28);
- uint32_t x32 = (x19 & 0x7fffffff);
- uint32_t x34, uint8_t _ = addcarryx_u32(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e127m1_4limbs/feoppDisplay.v b/src/Specific/montgomery32_2e127m1_4limbs/feoppDisplay.v
deleted file mode 100644
index 1d1a753e7..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e127m1_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e127m1_4limbs/fesquare.c b/src/Specific/montgomery32_2e127m1_4limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e127m1_4limbs/fesub.c b/src/Specific/montgomery32_2e127m1_4limbs/fesub.c
deleted file mode 100644
index 8e0bc2a3b..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/fesub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void fesub(uint32_t out[4], const uint32_t in1[4], const uint32_t in2[4]) {
- { const uint32_t x8 = in1[3];
- { const uint32_t x9 = in1[2];
- { const uint32_t x7 = in1[1];
- { const uint32_t x5 = in1[0];
- { const uint32_t x14 = in2[3];
- { const uint32_t x15 = in2[2];
- { const uint32_t x13 = in2[1];
- { const uint32_t x11 = in2[0];
- { uint32_t x17; uint8_t x18 = _subborrow_u32(0x0, x5, x11, &x17);
- { uint32_t x20; uint8_t x21 = _subborrow_u32(x18, x7, x13, &x20);
- { uint32_t x23; uint8_t x24 = _subborrow_u32(x21, x9, x15, &x23);
- { uint32_t x26; uint8_t x27 = _subborrow_u32(x24, x8, x14, &x26);
- { uint32_t x28 = cmovznz32(x27, 0x0, 0xffffffff);
- { uint32_t x29 = (x28 & 0xffffffff);
- { uint32_t x31; uint8_t x32 = _addcarryx_u32(0x0, x17, x29, &x31);
- { uint32_t x33 = (x28 & 0xffffffff);
- { uint32_t x35; uint8_t x36 = _addcarryx_u32(x32, x20, x33, &x35);
- { uint32_t x37 = (x28 & 0xffffffff);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x36, x23, x37, &x39);
- { uint32_t x41 = (x28 & 0x7fffffff);
- { uint32_t x43; uint8_t _ = _addcarryx_u32(x40, x26, x41, &x43);
- out[0] = x31;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e127m1_4limbs/fesub.v b/src/Specific/montgomery32_2e127m1_4limbs/fesub.v
deleted file mode 100644
index 28188dc6e..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e127m1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e127m1_4limbs/fesubDisplay.log b/src/Specific/montgomery32_2e127m1_4limbs/fesubDisplay.log
deleted file mode 100644
index ac3d00bf1..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint32_t x17, uint8_t x18 = subborrow_u32(0x0, x5, x11);
- uint32_t x20, uint8_t x21 = subborrow_u32(x18, x7, x13);
- uint32_t x23, uint8_t x24 = subborrow_u32(x21, x9, x15);
- uint32_t x26, uint8_t x27 = subborrow_u32(x24, x8, x14);
- uint32_t x28 = cmovznz32(x27, 0x0, 0xffffffff);
- uint32_t x29 = (x28 & 0xffffffff);
- uint32_t x31, uint8_t x32 = addcarryx_u32(0x0, x17, x29);
- uint32_t x33 = (x28 & 0xffffffff);
- uint32_t x35, uint8_t x36 = addcarryx_u32(x32, x20, x33);
- uint32_t x37 = (x28 & 0xffffffff);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x36, x23, x37);
- uint32_t x41 = (x28 & 0x7fffffff);
- uint32_t x43, uint8_t _ = addcarryx_u32(x40, x26, x41);
- (Return x43, Return x39, Return x35, Return x31))
-(x, x0)%core
- : word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e127m1_4limbs/fesubDisplay.v b/src/Specific/montgomery32_2e127m1_4limbs/fesubDisplay.v
deleted file mode 100644
index 69ded64e0..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e127m1_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e127m1_4limbs/py_interpreter.sh b/src/Specific/montgomery32_2e127m1_4limbs/py_interpreter.sh
deleted file mode 100755
index 48eed6784..000000000
--- a/src/Specific/montgomery32_2e127m1_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**127 - 1' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e129m25_5limbs/CurveParameters.v b/src/Specific/montgomery32_2e129m25_5limbs/CurveParameters.v
deleted file mode 100644
index 07048d8db..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^129 - 25
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 32;
- bitwidth := 32;
- s := 2^129;
- c := [(1, 25)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e129m25_5limbs/Synthesis.v b/src/Specific/montgomery32_2e129m25_5limbs/Synthesis.v
deleted file mode 100644
index 0705e68bd..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e129m25_5limbs.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/montgomery32_2e129m25_5limbs/compiler.sh b/src/Specific/montgomery32_2e129m25_5limbs/compiler.sh
deleted file mode 100755
index 60996ea5e..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<129) - 25' "$@"
diff --git a/src/Specific/montgomery32_2e129m25_5limbs/compilerxx.sh b/src/Specific/montgomery32_2e129m25_5limbs/compilerxx.sh
deleted file mode 100755
index 56457befb..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<129) - 25' "$@"
diff --git a/src/Specific/montgomery32_2e129m25_5limbs/feadd.c b/src/Specific/montgomery32_2e129m25_5limbs/feadd.c
deleted file mode 100644
index 44c8e70d7..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/feadd.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feadd(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x21; uint8_t x22 = _addcarryx_u32(0x0, x5, x13, &x21);
- { uint32_t x24; uint8_t x25 = _addcarryx_u32(x22, x7, x15, &x24);
- { uint32_t x27; uint8_t x28 = _addcarryx_u32(x25, x9, x17, &x27);
- { uint32_t x30; uint8_t x31 = _addcarryx_u32(x28, x11, x19, &x30);
- { uint32_t x33; uint8_t x34 = _addcarryx_u32(x31, x10, x18, &x33);
- { uint32_t x36; uint8_t x37 = _subborrow_u32(0x0, x21, 0xffffffe7, &x36);
- { uint32_t x39; uint8_t x40 = _subborrow_u32(x37, x24, 0xffffffff, &x39);
- { uint32_t x42; uint8_t x43 = _subborrow_u32(x40, x27, 0xffffffff, &x42);
- { uint32_t x45; uint8_t x46 = _subborrow_u32(x43, x30, 0xffffffff, &x45);
- { uint32_t x48; uint8_t x49 = _subborrow_u32(x46, x33, 0x1, &x48);
- { uint32_t _; uint8_t x52 = _subborrow_u32(x49, x34, 0x0, &_);
- { uint32_t x53 = cmovznz32(x52, x48, x33);
- { uint32_t x54 = cmovznz32(x52, x45, x30);
- { uint32_t x55 = cmovznz32(x52, x42, x27);
- { uint32_t x56 = cmovznz32(x52, x39, x24);
- { uint32_t x57 = cmovznz32(x52, x36, x21);
- out[0] = x57;
- out[1] = x56;
- out[2] = x55;
- out[3] = x54;
- out[4] = x53;
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e129m25_5limbs/feadd.v b/src/Specific/montgomery32_2e129m25_5limbs/feadd.v
deleted file mode 100644
index bf1b4b9a5..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e129m25_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e129m25_5limbs/feaddDisplay.log b/src/Specific/montgomery32_2e129m25_5limbs/feaddDisplay.log
deleted file mode 100644
index aed0a7f58..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint8_t x22 = addcarryx_u32(0x0, x5, x13);
- uint32_t x24, uint8_t x25 = addcarryx_u32(x22, x7, x15);
- uint32_t x27, uint8_t x28 = addcarryx_u32(x25, x9, x17);
- uint32_t x30, uint8_t x31 = addcarryx_u32(x28, x11, x19);
- uint32_t x33, uint8_t x34 = addcarryx_u32(x31, x10, x18);
- uint32_t x36, uint8_t x37 = subborrow_u32(0x0, x21, 0xffffffe7);
- uint32_t x39, uint8_t x40 = subborrow_u32(x37, x24, 0xffffffff);
- uint32_t x42, uint8_t x43 = subborrow_u32(x40, x27, 0xffffffff);
- uint32_t x45, uint8_t x46 = subborrow_u32(x43, x30, 0xffffffff);
- uint32_t x48, uint8_t x49 = subborrow_u32(x46, x33, 0x1);
- uint32_t _, uint8_t x52 = subborrow_u32(x49, x34, 0x0);
- uint32_t x53 = cmovznz32(x52, x48, x33);
- uint32_t x54 = cmovznz32(x52, x45, x30);
- uint32_t x55 = cmovznz32(x52, x42, x27);
- uint32_t x56 = cmovznz32(x52, x39, x24);
- uint32_t x57 = cmovznz32(x52, x36, x21);
- return (x53, x54, x55, x56, x57))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e129m25_5limbs/feaddDisplay.v b/src/Specific/montgomery32_2e129m25_5limbs/feaddDisplay.v
deleted file mode 100644
index 9f5f979b8..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e129m25_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e129m25_5limbs/femul.c b/src/Specific/montgomery32_2e129m25_5limbs/femul.c
deleted file mode 100644
index f03dbf6a8..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/femul.c
+++ /dev/null
@@ -1,182 +0,0 @@
-static void femul(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x22; uint32_t x21 = _mulx_u32(x5, x13, &x22);
- { uint32_t x25; uint32_t x24 = _mulx_u32(x5, x15, &x25);
- { uint32_t x28; uint32_t x27 = _mulx_u32(x5, x17, &x28);
- { uint32_t x31; uint32_t x30 = _mulx_u32(x5, x19, &x31);
- { uint32_t x34; uint32_t x33 = _mulx_u32(x5, x18, &x34);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(0x0, x22, x24, &x36);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x37, x25, x27, &x39);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x40, x28, x30, &x42);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(x43, x31, x33, &x45);
- { uint32_t x48; uint8_t _ = _addcarryx_u32(0x0, x46, x34, &x48);
- { uint32_t _; uint32_t x51 = _mulx_u32(x21, 0xc28f5c29, &_);
- { uint32_t x55; uint32_t x54 = _mulx_u32(x51, 0xffffffe7, &x55);
- { uint32_t x58; uint32_t x57 = _mulx_u32(x51, 0xffffffff, &x58);
- { uint32_t x61; uint32_t x60 = _mulx_u32(x51, 0xffffffff, &x61);
- { uint32_t x64; uint32_t x63 = _mulx_u32(x51, 0xffffffff, &x64);
- { uint32_t x66; uint8_t x67 = _addcarryx_u32(0x0, x55, x57, &x66);
- { uint32_t x69; uint8_t x70 = _addcarryx_u32(x67, x58, x60, &x69);
- { uint32_t x72; uint8_t x73 = _addcarryx_u32(x70, x61, x63, &x72);
- { uint32_t x75; uint8_t x76 = _addcarryx_u32(x73, x64, x51, &x75);
- { uint32_t _; uint8_t x79 = _addcarryx_u32(0x0, x21, x54, &_);
- { uint32_t x81; uint8_t x82 = _addcarryx_u32(x79, x36, x66, &x81);
- { uint32_t x84; uint8_t x85 = _addcarryx_u32(x82, x39, x69, &x84);
- { uint32_t x87; uint8_t x88 = _addcarryx_u32(x85, x42, x72, &x87);
- { uint32_t x90; uint8_t x91 = _addcarryx_u32(x88, x45, x75, &x90);
- { uint32_t x93; uint8_t x94 = _addcarryx_u32(x91, x48, x76, &x93);
- { uint32_t x97; uint32_t x96 = _mulx_u32(x7, x13, &x97);
- { uint32_t x100; uint32_t x99 = _mulx_u32(x7, x15, &x100);
- { uint32_t x103; uint32_t x102 = _mulx_u32(x7, x17, &x103);
- { uint32_t x106; uint32_t x105 = _mulx_u32(x7, x19, &x106);
- { uint32_t x109; uint32_t x108 = _mulx_u32(x7, x18, &x109);
- { uint32_t x111; uint8_t x112 = _addcarryx_u32(0x0, x97, x99, &x111);
- { uint32_t x114; uint8_t x115 = _addcarryx_u32(x112, x100, x102, &x114);
- { uint32_t x117; uint8_t x118 = _addcarryx_u32(x115, x103, x105, &x117);
- { uint32_t x120; uint8_t x121 = _addcarryx_u32(x118, x106, x108, &x120);
- { uint32_t x123; uint8_t _ = _addcarryx_u32(0x0, x121, x109, &x123);
- { uint32_t x126; uint8_t x127 = _addcarryx_u32(0x0, x81, x96, &x126);
- { uint32_t x129; uint8_t x130 = _addcarryx_u32(x127, x84, x111, &x129);
- { uint32_t x132; uint8_t x133 = _addcarryx_u32(x130, x87, x114, &x132);
- { uint32_t x135; uint8_t x136 = _addcarryx_u32(x133, x90, x117, &x135);
- { uint32_t x138; uint8_t x139 = _addcarryx_u32(x136, x93, x120, &x138);
- { uint32_t x141; uint8_t x142 = _addcarryx_u32(x139, x94, x123, &x141);
- { uint32_t _; uint32_t x144 = _mulx_u32(x126, 0xc28f5c29, &_);
- { uint32_t x148; uint32_t x147 = _mulx_u32(x144, 0xffffffe7, &x148);
- { uint32_t x151; uint32_t x150 = _mulx_u32(x144, 0xffffffff, &x151);
- { uint32_t x154; uint32_t x153 = _mulx_u32(x144, 0xffffffff, &x154);
- { uint32_t x157; uint32_t x156 = _mulx_u32(x144, 0xffffffff, &x157);
- { uint32_t x159; uint8_t x160 = _addcarryx_u32(0x0, x148, x150, &x159);
- { uint32_t x162; uint8_t x163 = _addcarryx_u32(x160, x151, x153, &x162);
- { uint32_t x165; uint8_t x166 = _addcarryx_u32(x163, x154, x156, &x165);
- { uint32_t x168; uint8_t x169 = _addcarryx_u32(x166, x157, x144, &x168);
- { uint32_t _; uint8_t x172 = _addcarryx_u32(0x0, x126, x147, &_);
- { uint32_t x174; uint8_t x175 = _addcarryx_u32(x172, x129, x159, &x174);
- { uint32_t x177; uint8_t x178 = _addcarryx_u32(x175, x132, x162, &x177);
- { uint32_t x180; uint8_t x181 = _addcarryx_u32(x178, x135, x165, &x180);
- { uint32_t x183; uint8_t x184 = _addcarryx_u32(x181, x138, x168, &x183);
- { uint32_t x186; uint8_t x187 = _addcarryx_u32(x184, x141, x169, &x186);
- { uint8_t x188 = (x187 + x142);
- { uint32_t x191; uint32_t x190 = _mulx_u32(x9, x13, &x191);
- { uint32_t x194; uint32_t x193 = _mulx_u32(x9, x15, &x194);
- { uint32_t x197; uint32_t x196 = _mulx_u32(x9, x17, &x197);
- { uint32_t x200; uint32_t x199 = _mulx_u32(x9, x19, &x200);
- { uint32_t x203; uint32_t x202 = _mulx_u32(x9, x18, &x203);
- { uint32_t x205; uint8_t x206 = _addcarryx_u32(0x0, x191, x193, &x205);
- { uint32_t x208; uint8_t x209 = _addcarryx_u32(x206, x194, x196, &x208);
- { uint32_t x211; uint8_t x212 = _addcarryx_u32(x209, x197, x199, &x211);
- { uint32_t x214; uint8_t x215 = _addcarryx_u32(x212, x200, x202, &x214);
- { uint32_t x217; uint8_t _ = _addcarryx_u32(0x0, x215, x203, &x217);
- { uint32_t x220; uint8_t x221 = _addcarryx_u32(0x0, x174, x190, &x220);
- { uint32_t x223; uint8_t x224 = _addcarryx_u32(x221, x177, x205, &x223);
- { uint32_t x226; uint8_t x227 = _addcarryx_u32(x224, x180, x208, &x226);
- { uint32_t x229; uint8_t x230 = _addcarryx_u32(x227, x183, x211, &x229);
- { uint32_t x232; uint8_t x233 = _addcarryx_u32(x230, x186, x214, &x232);
- { uint32_t x235; uint8_t x236 = _addcarryx_u32(x233, x188, x217, &x235);
- { uint32_t _; uint32_t x238 = _mulx_u32(x220, 0xc28f5c29, &_);
- { uint32_t x242; uint32_t x241 = _mulx_u32(x238, 0xffffffe7, &x242);
- { uint32_t x245; uint32_t x244 = _mulx_u32(x238, 0xffffffff, &x245);
- { uint32_t x248; uint32_t x247 = _mulx_u32(x238, 0xffffffff, &x248);
- { uint32_t x251; uint32_t x250 = _mulx_u32(x238, 0xffffffff, &x251);
- { uint32_t x253; uint8_t x254 = _addcarryx_u32(0x0, x242, x244, &x253);
- { uint32_t x256; uint8_t x257 = _addcarryx_u32(x254, x245, x247, &x256);
- { uint32_t x259; uint8_t x260 = _addcarryx_u32(x257, x248, x250, &x259);
- { uint32_t x262; uint8_t x263 = _addcarryx_u32(x260, x251, x238, &x262);
- { uint32_t _; uint8_t x266 = _addcarryx_u32(0x0, x220, x241, &_);
- { uint32_t x268; uint8_t x269 = _addcarryx_u32(x266, x223, x253, &x268);
- { uint32_t x271; uint8_t x272 = _addcarryx_u32(x269, x226, x256, &x271);
- { uint32_t x274; uint8_t x275 = _addcarryx_u32(x272, x229, x259, &x274);
- { uint32_t x277; uint8_t x278 = _addcarryx_u32(x275, x232, x262, &x277);
- { uint32_t x280; uint8_t x281 = _addcarryx_u32(x278, x235, x263, &x280);
- { uint8_t x282 = (x281 + x236);
- { uint32_t x285; uint32_t x284 = _mulx_u32(x11, x13, &x285);
- { uint32_t x288; uint32_t x287 = _mulx_u32(x11, x15, &x288);
- { uint32_t x291; uint32_t x290 = _mulx_u32(x11, x17, &x291);
- { uint32_t x294; uint32_t x293 = _mulx_u32(x11, x19, &x294);
- { uint32_t x297; uint32_t x296 = _mulx_u32(x11, x18, &x297);
- { uint32_t x299; uint8_t x300 = _addcarryx_u32(0x0, x285, x287, &x299);
- { uint32_t x302; uint8_t x303 = _addcarryx_u32(x300, x288, x290, &x302);
- { uint32_t x305; uint8_t x306 = _addcarryx_u32(x303, x291, x293, &x305);
- { uint32_t x308; uint8_t x309 = _addcarryx_u32(x306, x294, x296, &x308);
- { uint32_t x311; uint8_t _ = _addcarryx_u32(0x0, x309, x297, &x311);
- { uint32_t x314; uint8_t x315 = _addcarryx_u32(0x0, x268, x284, &x314);
- { uint32_t x317; uint8_t x318 = _addcarryx_u32(x315, x271, x299, &x317);
- { uint32_t x320; uint8_t x321 = _addcarryx_u32(x318, x274, x302, &x320);
- { uint32_t x323; uint8_t x324 = _addcarryx_u32(x321, x277, x305, &x323);
- { uint32_t x326; uint8_t x327 = _addcarryx_u32(x324, x280, x308, &x326);
- { uint32_t x329; uint8_t x330 = _addcarryx_u32(x327, x282, x311, &x329);
- { uint32_t _; uint32_t x332 = _mulx_u32(x314, 0xc28f5c29, &_);
- { uint32_t x336; uint32_t x335 = _mulx_u32(x332, 0xffffffe7, &x336);
- { uint32_t x339; uint32_t x338 = _mulx_u32(x332, 0xffffffff, &x339);
- { uint32_t x342; uint32_t x341 = _mulx_u32(x332, 0xffffffff, &x342);
- { uint32_t x345; uint32_t x344 = _mulx_u32(x332, 0xffffffff, &x345);
- { uint32_t x347; uint8_t x348 = _addcarryx_u32(0x0, x336, x338, &x347);
- { uint32_t x350; uint8_t x351 = _addcarryx_u32(x348, x339, x341, &x350);
- { uint32_t x353; uint8_t x354 = _addcarryx_u32(x351, x342, x344, &x353);
- { uint32_t x356; uint8_t x357 = _addcarryx_u32(x354, x345, x332, &x356);
- { uint32_t _; uint8_t x360 = _addcarryx_u32(0x0, x314, x335, &_);
- { uint32_t x362; uint8_t x363 = _addcarryx_u32(x360, x317, x347, &x362);
- { uint32_t x365; uint8_t x366 = _addcarryx_u32(x363, x320, x350, &x365);
- { uint32_t x368; uint8_t x369 = _addcarryx_u32(x366, x323, x353, &x368);
- { uint32_t x371; uint8_t x372 = _addcarryx_u32(x369, x326, x356, &x371);
- { uint32_t x374; uint8_t x375 = _addcarryx_u32(x372, x329, x357, &x374);
- { uint8_t x376 = (x375 + x330);
- { uint32_t x379; uint32_t x378 = _mulx_u32(x10, x13, &x379);
- { uint32_t x382; uint32_t x381 = _mulx_u32(x10, x15, &x382);
- { uint32_t x385; uint32_t x384 = _mulx_u32(x10, x17, &x385);
- { uint32_t x388; uint32_t x387 = _mulx_u32(x10, x19, &x388);
- { uint32_t x391; uint32_t x390 = _mulx_u32(x10, x18, &x391);
- { uint32_t x393; uint8_t x394 = _addcarryx_u32(0x0, x379, x381, &x393);
- { uint32_t x396; uint8_t x397 = _addcarryx_u32(x394, x382, x384, &x396);
- { uint32_t x399; uint8_t x400 = _addcarryx_u32(x397, x385, x387, &x399);
- { uint32_t x402; uint8_t x403 = _addcarryx_u32(x400, x388, x390, &x402);
- { uint32_t x405; uint8_t _ = _addcarryx_u32(0x0, x403, x391, &x405);
- { uint32_t x408; uint8_t x409 = _addcarryx_u32(0x0, x362, x378, &x408);
- { uint32_t x411; uint8_t x412 = _addcarryx_u32(x409, x365, x393, &x411);
- { uint32_t x414; uint8_t x415 = _addcarryx_u32(x412, x368, x396, &x414);
- { uint32_t x417; uint8_t x418 = _addcarryx_u32(x415, x371, x399, &x417);
- { uint32_t x420; uint8_t x421 = _addcarryx_u32(x418, x374, x402, &x420);
- { uint32_t x423; uint8_t x424 = _addcarryx_u32(x421, x376, x405, &x423);
- { uint32_t _; uint32_t x426 = _mulx_u32(x408, 0xc28f5c29, &_);
- { uint32_t x430; uint32_t x429 = _mulx_u32(x426, 0xffffffe7, &x430);
- { uint32_t x433; uint32_t x432 = _mulx_u32(x426, 0xffffffff, &x433);
- { uint32_t x436; uint32_t x435 = _mulx_u32(x426, 0xffffffff, &x436);
- { uint32_t x439; uint32_t x438 = _mulx_u32(x426, 0xffffffff, &x439);
- { uint32_t x441; uint8_t x442 = _addcarryx_u32(0x0, x430, x432, &x441);
- { uint32_t x444; uint8_t x445 = _addcarryx_u32(x442, x433, x435, &x444);
- { uint32_t x447; uint8_t x448 = _addcarryx_u32(x445, x436, x438, &x447);
- { uint32_t x450; uint8_t x451 = _addcarryx_u32(x448, x439, x426, &x450);
- { uint32_t _; uint8_t x454 = _addcarryx_u32(0x0, x408, x429, &_);
- { uint32_t x456; uint8_t x457 = _addcarryx_u32(x454, x411, x441, &x456);
- { uint32_t x459; uint8_t x460 = _addcarryx_u32(x457, x414, x444, &x459);
- { uint32_t x462; uint8_t x463 = _addcarryx_u32(x460, x417, x447, &x462);
- { uint32_t x465; uint8_t x466 = _addcarryx_u32(x463, x420, x450, &x465);
- { uint32_t x468; uint8_t x469 = _addcarryx_u32(x466, x423, x451, &x468);
- { uint8_t x470 = (x469 + x424);
- { uint32_t x472; uint8_t x473 = _subborrow_u32(0x0, x456, 0xffffffe7, &x472);
- { uint32_t x475; uint8_t x476 = _subborrow_u32(x473, x459, 0xffffffff, &x475);
- { uint32_t x478; uint8_t x479 = _subborrow_u32(x476, x462, 0xffffffff, &x478);
- { uint32_t x481; uint8_t x482 = _subborrow_u32(x479, x465, 0xffffffff, &x481);
- { uint32_t x484; uint8_t x485 = _subborrow_u32(x482, x468, 0x1, &x484);
- { uint32_t _; uint8_t x488 = _subborrow_u32(x485, x470, 0x0, &_);
- { uint32_t x489 = cmovznz32(x488, x484, x468);
- { uint32_t x490 = cmovznz32(x488, x481, x465);
- { uint32_t x491 = cmovznz32(x488, x478, x462);
- { uint32_t x492 = cmovznz32(x488, x475, x459);
- { uint32_t x493 = cmovznz32(x488, x472, x456);
- out[0] = x493;
- out[1] = x492;
- out[2] = x491;
- out[3] = x490;
- out[4] = x489;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e129m25_5limbs/femul.v b/src/Specific/montgomery32_2e129m25_5limbs/femul.v
deleted file mode 100644
index cb93e3569..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e129m25_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e129m25_5limbs/femulDisplay.log b/src/Specific/montgomery32_2e129m25_5limbs/femulDisplay.log
deleted file mode 100644
index 15f5ce352..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,171 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint32_t x22 = mulx_u32(x5, x13);
- uint32_t x24, uint32_t x25 = mulx_u32(x5, x15);
- uint32_t x27, uint32_t x28 = mulx_u32(x5, x17);
- uint32_t x30, uint32_t x31 = mulx_u32(x5, x19);
- uint32_t x33, uint32_t x34 = mulx_u32(x5, x18);
- uint32_t x36, uint8_t x37 = addcarryx_u32(0x0, x22, x24);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x37, x25, x27);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x40, x28, x30);
- uint32_t x45, uint8_t x46 = addcarryx_u32(x43, x31, x33);
- uint32_t x48, uint8_t _ = addcarryx_u32(0x0, x46, x34);
- uint32_t x51, uint32_t _ = mulx_u32(x21, 0xc28f5c29);
- uint32_t x54, uint32_t x55 = mulx_u32(x51, 0xffffffe7);
- uint32_t x57, uint32_t x58 = mulx_u32(x51, 0xffffffff);
- uint32_t x60, uint32_t x61 = mulx_u32(x51, 0xffffffff);
- uint32_t x63, uint32_t x64 = mulx_u32(x51, 0xffffffff);
- uint32_t x66, uint8_t x67 = addcarryx_u32(0x0, x55, x57);
- uint32_t x69, uint8_t x70 = addcarryx_u32(x67, x58, x60);
- uint32_t x72, uint8_t x73 = addcarryx_u32(x70, x61, x63);
- uint32_t x75, uint8_t x76 = addcarryx_u32(x73, x64, x51);
- uint32_t _, uint8_t x79 = addcarryx_u32(0x0, x21, x54);
- uint32_t x81, uint8_t x82 = addcarryx_u32(x79, x36, x66);
- uint32_t x84, uint8_t x85 = addcarryx_u32(x82, x39, x69);
- uint32_t x87, uint8_t x88 = addcarryx_u32(x85, x42, x72);
- uint32_t x90, uint8_t x91 = addcarryx_u32(x88, x45, x75);
- uint32_t x93, uint8_t x94 = addcarryx_u32(x91, x48, x76);
- uint32_t x96, uint32_t x97 = mulx_u32(x7, x13);
- uint32_t x99, uint32_t x100 = mulx_u32(x7, x15);
- uint32_t x102, uint32_t x103 = mulx_u32(x7, x17);
- uint32_t x105, uint32_t x106 = mulx_u32(x7, x19);
- uint32_t x108, uint32_t x109 = mulx_u32(x7, x18);
- uint32_t x111, uint8_t x112 = addcarryx_u32(0x0, x97, x99);
- uint32_t x114, uint8_t x115 = addcarryx_u32(x112, x100, x102);
- uint32_t x117, uint8_t x118 = addcarryx_u32(x115, x103, x105);
- uint32_t x120, uint8_t x121 = addcarryx_u32(x118, x106, x108);
- uint32_t x123, uint8_t _ = addcarryx_u32(0x0, x121, x109);
- uint32_t x126, uint8_t x127 = addcarryx_u32(0x0, x81, x96);
- uint32_t x129, uint8_t x130 = addcarryx_u32(x127, x84, x111);
- uint32_t x132, uint8_t x133 = addcarryx_u32(x130, x87, x114);
- uint32_t x135, uint8_t x136 = addcarryx_u32(x133, x90, x117);
- uint32_t x138, uint8_t x139 = addcarryx_u32(x136, x93, x120);
- uint32_t x141, uint8_t x142 = addcarryx_u32(x139, x94, x123);
- uint32_t x144, uint32_t _ = mulx_u32(x126, 0xc28f5c29);
- uint32_t x147, uint32_t x148 = mulx_u32(x144, 0xffffffe7);
- uint32_t x150, uint32_t x151 = mulx_u32(x144, 0xffffffff);
- uint32_t x153, uint32_t x154 = mulx_u32(x144, 0xffffffff);
- uint32_t x156, uint32_t x157 = mulx_u32(x144, 0xffffffff);
- uint32_t x159, uint8_t x160 = addcarryx_u32(0x0, x148, x150);
- uint32_t x162, uint8_t x163 = addcarryx_u32(x160, x151, x153);
- uint32_t x165, uint8_t x166 = addcarryx_u32(x163, x154, x156);
- uint32_t x168, uint8_t x169 = addcarryx_u32(x166, x157, x144);
- uint32_t _, uint8_t x172 = addcarryx_u32(0x0, x126, x147);
- uint32_t x174, uint8_t x175 = addcarryx_u32(x172, x129, x159);
- uint32_t x177, uint8_t x178 = addcarryx_u32(x175, x132, x162);
- uint32_t x180, uint8_t x181 = addcarryx_u32(x178, x135, x165);
- uint32_t x183, uint8_t x184 = addcarryx_u32(x181, x138, x168);
- uint32_t x186, uint8_t x187 = addcarryx_u32(x184, x141, x169);
- uint8_t x188 = (x187 + x142);
- uint32_t x190, uint32_t x191 = mulx_u32(x9, x13);
- uint32_t x193, uint32_t x194 = mulx_u32(x9, x15);
- uint32_t x196, uint32_t x197 = mulx_u32(x9, x17);
- uint32_t x199, uint32_t x200 = mulx_u32(x9, x19);
- uint32_t x202, uint32_t x203 = mulx_u32(x9, x18);
- uint32_t x205, uint8_t x206 = addcarryx_u32(0x0, x191, x193);
- uint32_t x208, uint8_t x209 = addcarryx_u32(x206, x194, x196);
- uint32_t x211, uint8_t x212 = addcarryx_u32(x209, x197, x199);
- uint32_t x214, uint8_t x215 = addcarryx_u32(x212, x200, x202);
- uint32_t x217, uint8_t _ = addcarryx_u32(0x0, x215, x203);
- uint32_t x220, uint8_t x221 = addcarryx_u32(0x0, x174, x190);
- uint32_t x223, uint8_t x224 = addcarryx_u32(x221, x177, x205);
- uint32_t x226, uint8_t x227 = addcarryx_u32(x224, x180, x208);
- uint32_t x229, uint8_t x230 = addcarryx_u32(x227, x183, x211);
- uint32_t x232, uint8_t x233 = addcarryx_u32(x230, x186, x214);
- uint32_t x235, uint8_t x236 = addcarryx_u32(x233, x188, x217);
- uint32_t x238, uint32_t _ = mulx_u32(x220, 0xc28f5c29);
- uint32_t x241, uint32_t x242 = mulx_u32(x238, 0xffffffe7);
- uint32_t x244, uint32_t x245 = mulx_u32(x238, 0xffffffff);
- uint32_t x247, uint32_t x248 = mulx_u32(x238, 0xffffffff);
- uint32_t x250, uint32_t x251 = mulx_u32(x238, 0xffffffff);
- uint32_t x253, uint8_t x254 = addcarryx_u32(0x0, x242, x244);
- uint32_t x256, uint8_t x257 = addcarryx_u32(x254, x245, x247);
- uint32_t x259, uint8_t x260 = addcarryx_u32(x257, x248, x250);
- uint32_t x262, uint8_t x263 = addcarryx_u32(x260, x251, x238);
- uint32_t _, uint8_t x266 = addcarryx_u32(0x0, x220, x241);
- uint32_t x268, uint8_t x269 = addcarryx_u32(x266, x223, x253);
- uint32_t x271, uint8_t x272 = addcarryx_u32(x269, x226, x256);
- uint32_t x274, uint8_t x275 = addcarryx_u32(x272, x229, x259);
- uint32_t x277, uint8_t x278 = addcarryx_u32(x275, x232, x262);
- uint32_t x280, uint8_t x281 = addcarryx_u32(x278, x235, x263);
- uint8_t x282 = (x281 + x236);
- uint32_t x284, uint32_t x285 = mulx_u32(x11, x13);
- uint32_t x287, uint32_t x288 = mulx_u32(x11, x15);
- uint32_t x290, uint32_t x291 = mulx_u32(x11, x17);
- uint32_t x293, uint32_t x294 = mulx_u32(x11, x19);
- uint32_t x296, uint32_t x297 = mulx_u32(x11, x18);
- uint32_t x299, uint8_t x300 = addcarryx_u32(0x0, x285, x287);
- uint32_t x302, uint8_t x303 = addcarryx_u32(x300, x288, x290);
- uint32_t x305, uint8_t x306 = addcarryx_u32(x303, x291, x293);
- uint32_t x308, uint8_t x309 = addcarryx_u32(x306, x294, x296);
- uint32_t x311, uint8_t _ = addcarryx_u32(0x0, x309, x297);
- uint32_t x314, uint8_t x315 = addcarryx_u32(0x0, x268, x284);
- uint32_t x317, uint8_t x318 = addcarryx_u32(x315, x271, x299);
- uint32_t x320, uint8_t x321 = addcarryx_u32(x318, x274, x302);
- uint32_t x323, uint8_t x324 = addcarryx_u32(x321, x277, x305);
- uint32_t x326, uint8_t x327 = addcarryx_u32(x324, x280, x308);
- uint32_t x329, uint8_t x330 = addcarryx_u32(x327, x282, x311);
- uint32_t x332, uint32_t _ = mulx_u32(x314, 0xc28f5c29);
- uint32_t x335, uint32_t x336 = mulx_u32(x332, 0xffffffe7);
- uint32_t x338, uint32_t x339 = mulx_u32(x332, 0xffffffff);
- uint32_t x341, uint32_t x342 = mulx_u32(x332, 0xffffffff);
- uint32_t x344, uint32_t x345 = mulx_u32(x332, 0xffffffff);
- uint32_t x347, uint8_t x348 = addcarryx_u32(0x0, x336, x338);
- uint32_t x350, uint8_t x351 = addcarryx_u32(x348, x339, x341);
- uint32_t x353, uint8_t x354 = addcarryx_u32(x351, x342, x344);
- uint32_t x356, uint8_t x357 = addcarryx_u32(x354, x345, x332);
- uint32_t _, uint8_t x360 = addcarryx_u32(0x0, x314, x335);
- uint32_t x362, uint8_t x363 = addcarryx_u32(x360, x317, x347);
- uint32_t x365, uint8_t x366 = addcarryx_u32(x363, x320, x350);
- uint32_t x368, uint8_t x369 = addcarryx_u32(x366, x323, x353);
- uint32_t x371, uint8_t x372 = addcarryx_u32(x369, x326, x356);
- uint32_t x374, uint8_t x375 = addcarryx_u32(x372, x329, x357);
- uint8_t x376 = (x375 + x330);
- uint32_t x378, uint32_t x379 = mulx_u32(x10, x13);
- uint32_t x381, uint32_t x382 = mulx_u32(x10, x15);
- uint32_t x384, uint32_t x385 = mulx_u32(x10, x17);
- uint32_t x387, uint32_t x388 = mulx_u32(x10, x19);
- uint32_t x390, uint32_t x391 = mulx_u32(x10, x18);
- uint32_t x393, uint8_t x394 = addcarryx_u32(0x0, x379, x381);
- uint32_t x396, uint8_t x397 = addcarryx_u32(x394, x382, x384);
- uint32_t x399, uint8_t x400 = addcarryx_u32(x397, x385, x387);
- uint32_t x402, uint8_t x403 = addcarryx_u32(x400, x388, x390);
- uint32_t x405, uint8_t _ = addcarryx_u32(0x0, x403, x391);
- uint32_t x408, uint8_t x409 = addcarryx_u32(0x0, x362, x378);
- uint32_t x411, uint8_t x412 = addcarryx_u32(x409, x365, x393);
- uint32_t x414, uint8_t x415 = addcarryx_u32(x412, x368, x396);
- uint32_t x417, uint8_t x418 = addcarryx_u32(x415, x371, x399);
- uint32_t x420, uint8_t x421 = addcarryx_u32(x418, x374, x402);
- uint32_t x423, uint8_t x424 = addcarryx_u32(x421, x376, x405);
- uint32_t x426, uint32_t _ = mulx_u32(x408, 0xc28f5c29);
- uint32_t x429, uint32_t x430 = mulx_u32(x426, 0xffffffe7);
- uint32_t x432, uint32_t x433 = mulx_u32(x426, 0xffffffff);
- uint32_t x435, uint32_t x436 = mulx_u32(x426, 0xffffffff);
- uint32_t x438, uint32_t x439 = mulx_u32(x426, 0xffffffff);
- uint32_t x441, uint8_t x442 = addcarryx_u32(0x0, x430, x432);
- uint32_t x444, uint8_t x445 = addcarryx_u32(x442, x433, x435);
- uint32_t x447, uint8_t x448 = addcarryx_u32(x445, x436, x438);
- uint32_t x450, uint8_t x451 = addcarryx_u32(x448, x439, x426);
- uint32_t _, uint8_t x454 = addcarryx_u32(0x0, x408, x429);
- uint32_t x456, uint8_t x457 = addcarryx_u32(x454, x411, x441);
- uint32_t x459, uint8_t x460 = addcarryx_u32(x457, x414, x444);
- uint32_t x462, uint8_t x463 = addcarryx_u32(x460, x417, x447);
- uint32_t x465, uint8_t x466 = addcarryx_u32(x463, x420, x450);
- uint32_t x468, uint8_t x469 = addcarryx_u32(x466, x423, x451);
- uint8_t x470 = (x469 + x424);
- uint32_t x472, uint8_t x473 = subborrow_u32(0x0, x456, 0xffffffe7);
- uint32_t x475, uint8_t x476 = subborrow_u32(x473, x459, 0xffffffff);
- uint32_t x478, uint8_t x479 = subborrow_u32(x476, x462, 0xffffffff);
- uint32_t x481, uint8_t x482 = subborrow_u32(x479, x465, 0xffffffff);
- uint32_t x484, uint8_t x485 = subborrow_u32(x482, x468, 0x1);
- uint32_t _, uint8_t x488 = subborrow_u32(x485, x470, 0x0);
- uint32_t x489 = cmovznz32(x488, x484, x468);
- uint32_t x490 = cmovznz32(x488, x481, x465);
- uint32_t x491 = cmovznz32(x488, x478, x462);
- uint32_t x492 = cmovznz32(x488, x475, x459);
- uint32_t x493 = cmovznz32(x488, x472, x456);
- return (x489, x490, x491, x492, x493))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e129m25_5limbs/femulDisplay.v b/src/Specific/montgomery32_2e129m25_5limbs/femulDisplay.v
deleted file mode 100644
index a6a17a74d..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e129m25_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e129m25_5limbs/fenz.c b/src/Specific/montgomery32_2e129m25_5limbs/fenz.c
deleted file mode 100644
index 5601e8c15..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/fenz.c
+++ /dev/null
@@ -1,13 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x9 = (x8 | x7);
- { uint32_t x10 = (x6 | x9);
- { uint32_t x11 = (x4 | x10);
- { uint32_t x12 = (x2 | x11);
- out[0] = x12;
- }}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e129m25_5limbs/fenz.v b/src/Specific/montgomery32_2e129m25_5limbs/fenz.v
deleted file mode 100644
index e299151f3..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e129m25_5limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e129m25_5limbs/fenzDisplay.log b/src/Specific/montgomery32_2e129m25_5limbs/fenzDisplay.log
deleted file mode 100644
index 723d13164..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/fenzDisplay.log
+++ /dev/null
@@ -1,11 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint32_t x9 = (x8 | x7);
- uint32_t x10 = (x6 | x9);
- uint32_t x11 = (x4 | x10);
- uint32_t x12 = (x2 | x11);
- return x12)
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e129m25_5limbs/fenzDisplay.v b/src/Specific/montgomery32_2e129m25_5limbs/fenzDisplay.v
deleted file mode 100644
index 60bf6ae9c..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e129m25_5limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e129m25_5limbs/feopp.c b/src/Specific/montgomery32_2e129m25_5limbs/feopp.c
deleted file mode 100644
index 01cd3f66d..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/feopp.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void feopp(uint32_t out[5], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x10; uint8_t x11 = _subborrow_u32(0x0, 0x0, x2, &x10);
- { uint32_t x13; uint8_t x14 = _subborrow_u32(x11, 0x0, x4, &x13);
- { uint32_t x16; uint8_t x17 = _subborrow_u32(x14, 0x0, x6, &x16);
- { uint32_t x19; uint8_t x20 = _subborrow_u32(x17, 0x0, x8, &x19);
- { uint32_t x22; uint8_t x23 = _subborrow_u32(x20, 0x0, x7, &x22);
- { uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- { uint32_t x25 = (x24 & 0xffffffe7);
- { uint32_t x27; uint8_t x28 = _addcarryx_u32(0x0, x10, x25, &x27);
- { uint32_t x29 = (x24 & 0xffffffff);
- { uint32_t x31; uint8_t x32 = _addcarryx_u32(x28, x13, x29, &x31);
- { uint32_t x33 = (x24 & 0xffffffff);
- { uint32_t x35; uint8_t x36 = _addcarryx_u32(x32, x16, x33, &x35);
- { uint32_t x37 = (x24 & 0xffffffff);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x36, x19, x37, &x39);
- { uint8_t x41 = ((uint8_t)x24 & 0x1);
- { uint32_t x43; uint8_t _ = _addcarryx_u32(x40, x22, x41, &x43);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e129m25_5limbs/feopp.v b/src/Specific/montgomery32_2e129m25_5limbs/feopp.v
deleted file mode 100644
index 7edb8724f..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e129m25_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e129m25_5limbs/feoppDisplay.log b/src/Specific/montgomery32_2e129m25_5limbs/feoppDisplay.log
deleted file mode 100644
index fb5260ead..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/feoppDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint32_t x10, uint8_t x11 = subborrow_u32(0x0, 0x0, x2);
- uint32_t x13, uint8_t x14 = subborrow_u32(x11, 0x0, x4);
- uint32_t x16, uint8_t x17 = subborrow_u32(x14, 0x0, x6);
- uint32_t x19, uint8_t x20 = subborrow_u32(x17, 0x0, x8);
- uint32_t x22, uint8_t x23 = subborrow_u32(x20, 0x0, x7);
- uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- uint32_t x25 = (x24 & 0xffffffe7);
- uint32_t x27, uint8_t x28 = addcarryx_u32(0x0, x10, x25);
- uint32_t x29 = (x24 & 0xffffffff);
- uint32_t x31, uint8_t x32 = addcarryx_u32(x28, x13, x29);
- uint32_t x33 = (x24 & 0xffffffff);
- uint32_t x35, uint8_t x36 = addcarryx_u32(x32, x16, x33);
- uint32_t x37 = (x24 & 0xffffffff);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x36, x19, x37);
- uint8_t x41 = ((uint8_t)x24 & 0x1);
- uint32_t x43, uint8_t _ = addcarryx_u32(x40, x22, x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e129m25_5limbs/feoppDisplay.v b/src/Specific/montgomery32_2e129m25_5limbs/feoppDisplay.v
deleted file mode 100644
index 49af2b9ce..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e129m25_5limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e129m25_5limbs/fesquare.c b/src/Specific/montgomery32_2e129m25_5limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e129m25_5limbs/fesub.c b/src/Specific/montgomery32_2e129m25_5limbs/fesub.c
deleted file mode 100644
index f7c5313f1..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/fesub.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void fesub(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x21; uint8_t x22 = _subborrow_u32(0x0, x5, x13, &x21);
- { uint32_t x24; uint8_t x25 = _subborrow_u32(x22, x7, x15, &x24);
- { uint32_t x27; uint8_t x28 = _subborrow_u32(x25, x9, x17, &x27);
- { uint32_t x30; uint8_t x31 = _subborrow_u32(x28, x11, x19, &x30);
- { uint32_t x33; uint8_t x34 = _subborrow_u32(x31, x10, x18, &x33);
- { uint32_t x35 = cmovznz32(x34, 0x0, 0xffffffff);
- { uint32_t x36 = (x35 & 0xffffffe7);
- { uint32_t x38; uint8_t x39 = _addcarryx_u32(0x0, x21, x36, &x38);
- { uint32_t x40 = (x35 & 0xffffffff);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x39, x24, x40, &x42);
- { uint32_t x44 = (x35 & 0xffffffff);
- { uint32_t x46; uint8_t x47 = _addcarryx_u32(x43, x27, x44, &x46);
- { uint32_t x48 = (x35 & 0xffffffff);
- { uint32_t x50; uint8_t x51 = _addcarryx_u32(x47, x30, x48, &x50);
- { uint8_t x52 = ((uint8_t)x35 & 0x1);
- { uint32_t x54; uint8_t _ = _addcarryx_u32(x51, x33, x52, &x54);
- out[0] = x38;
- out[1] = x42;
- out[2] = x46;
- out[3] = x50;
- out[4] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e129m25_5limbs/fesub.v b/src/Specific/montgomery32_2e129m25_5limbs/fesub.v
deleted file mode 100644
index 729a7c9d6..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e129m25_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e129m25_5limbs/fesubDisplay.log b/src/Specific/montgomery32_2e129m25_5limbs/fesubDisplay.log
deleted file mode 100644
index fa6a3160e..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint8_t x22 = subborrow_u32(0x0, x5, x13);
- uint32_t x24, uint8_t x25 = subborrow_u32(x22, x7, x15);
- uint32_t x27, uint8_t x28 = subborrow_u32(x25, x9, x17);
- uint32_t x30, uint8_t x31 = subborrow_u32(x28, x11, x19);
- uint32_t x33, uint8_t x34 = subborrow_u32(x31, x10, x18);
- uint32_t x35 = cmovznz32(x34, 0x0, 0xffffffff);
- uint32_t x36 = (x35 & 0xffffffe7);
- uint32_t x38, uint8_t x39 = addcarryx_u32(0x0, x21, x36);
- uint32_t x40 = (x35 & 0xffffffff);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x39, x24, x40);
- uint32_t x44 = (x35 & 0xffffffff);
- uint32_t x46, uint8_t x47 = addcarryx_u32(x43, x27, x44);
- uint32_t x48 = (x35 & 0xffffffff);
- uint32_t x50, uint8_t x51 = addcarryx_u32(x47, x30, x48);
- uint8_t x52 = ((uint8_t)x35 & 0x1);
- uint32_t x54, uint8_t _ = addcarryx_u32(x51, x33, x52);
- (Return x54, Return x50, Return x46, Return x42, Return x38))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e129m25_5limbs/fesubDisplay.v b/src/Specific/montgomery32_2e129m25_5limbs/fesubDisplay.v
deleted file mode 100644
index 66ee3324b..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e129m25_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e129m25_5limbs/py_interpreter.sh b/src/Specific/montgomery32_2e129m25_5limbs/py_interpreter.sh
deleted file mode 100755
index cc79d3711..000000000
--- a/src/Specific/montgomery32_2e129m25_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**129 - 25' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e130m5_5limbs/CurveParameters.v b/src/Specific/montgomery32_2e130m5_5limbs/CurveParameters.v
deleted file mode 100644
index 4dfc2991f..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^130 - 5
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 32;
- bitwidth := 32;
- s := 2^130;
- c := [(1, 5)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e130m5_5limbs/Synthesis.v b/src/Specific/montgomery32_2e130m5_5limbs/Synthesis.v
deleted file mode 100644
index 59fb07950..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e130m5_5limbs.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/montgomery32_2e130m5_5limbs/compiler.sh b/src/Specific/montgomery32_2e130m5_5limbs/compiler.sh
deleted file mode 100755
index 48a85d622..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<130) - 5' "$@"
diff --git a/src/Specific/montgomery32_2e130m5_5limbs/compilerxx.sh b/src/Specific/montgomery32_2e130m5_5limbs/compilerxx.sh
deleted file mode 100755
index da243f641..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<130) - 5' "$@"
diff --git a/src/Specific/montgomery32_2e130m5_5limbs/feadd.c b/src/Specific/montgomery32_2e130m5_5limbs/feadd.c
deleted file mode 100644
index 89b9fbad7..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/feadd.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feadd(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x21; uint8_t x22 = _addcarryx_u32(0x0, x5, x13, &x21);
- { uint32_t x24; uint8_t x25 = _addcarryx_u32(x22, x7, x15, &x24);
- { uint32_t x27; uint8_t x28 = _addcarryx_u32(x25, x9, x17, &x27);
- { uint32_t x30; uint8_t x31 = _addcarryx_u32(x28, x11, x19, &x30);
- { uint32_t x33; uint8_t x34 = _addcarryx_u32(x31, x10, x18, &x33);
- { uint32_t x36; uint8_t x37 = _subborrow_u32(0x0, x21, 0xfffffffb, &x36);
- { uint32_t x39; uint8_t x40 = _subborrow_u32(x37, x24, 0xffffffff, &x39);
- { uint32_t x42; uint8_t x43 = _subborrow_u32(x40, x27, 0xffffffff, &x42);
- { uint32_t x45; uint8_t x46 = _subborrow_u32(x43, x30, 0xffffffff, &x45);
- { uint32_t x48; uint8_t x49 = _subborrow_u32(x46, x33, 0x3, &x48);
- { uint32_t _; uint8_t x52 = _subborrow_u32(x49, x34, 0x0, &_);
- { uint32_t x53 = cmovznz32(x52, x48, x33);
- { uint32_t x54 = cmovznz32(x52, x45, x30);
- { uint32_t x55 = cmovznz32(x52, x42, x27);
- { uint32_t x56 = cmovznz32(x52, x39, x24);
- { uint32_t x57 = cmovznz32(x52, x36, x21);
- out[0] = x57;
- out[1] = x56;
- out[2] = x55;
- out[3] = x54;
- out[4] = x53;
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e130m5_5limbs/feadd.v b/src/Specific/montgomery32_2e130m5_5limbs/feadd.v
deleted file mode 100644
index 7adfcf552..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e130m5_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e130m5_5limbs/feaddDisplay.log b/src/Specific/montgomery32_2e130m5_5limbs/feaddDisplay.log
deleted file mode 100644
index 3fbc68015..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint8_t x22 = addcarryx_u32(0x0, x5, x13);
- uint32_t x24, uint8_t x25 = addcarryx_u32(x22, x7, x15);
- uint32_t x27, uint8_t x28 = addcarryx_u32(x25, x9, x17);
- uint32_t x30, uint8_t x31 = addcarryx_u32(x28, x11, x19);
- uint32_t x33, uint8_t x34 = addcarryx_u32(x31, x10, x18);
- uint32_t x36, uint8_t x37 = subborrow_u32(0x0, x21, 0xfffffffb);
- uint32_t x39, uint8_t x40 = subborrow_u32(x37, x24, 0xffffffff);
- uint32_t x42, uint8_t x43 = subborrow_u32(x40, x27, 0xffffffff);
- uint32_t x45, uint8_t x46 = subborrow_u32(x43, x30, 0xffffffff);
- uint32_t x48, uint8_t x49 = subborrow_u32(x46, x33, 0x3);
- uint32_t _, uint8_t x52 = subborrow_u32(x49, x34, 0x0);
- uint32_t x53 = cmovznz32(x52, x48, x33);
- uint32_t x54 = cmovznz32(x52, x45, x30);
- uint32_t x55 = cmovznz32(x52, x42, x27);
- uint32_t x56 = cmovznz32(x52, x39, x24);
- uint32_t x57 = cmovznz32(x52, x36, x21);
- return (x53, x54, x55, x56, x57))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e130m5_5limbs/feaddDisplay.v b/src/Specific/montgomery32_2e130m5_5limbs/feaddDisplay.v
deleted file mode 100644
index 90935a752..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e130m5_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e130m5_5limbs/femul.c b/src/Specific/montgomery32_2e130m5_5limbs/femul.c
deleted file mode 100644
index dad2ff269..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/femul.c
+++ /dev/null
@@ -1,192 +0,0 @@
-static void femul(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x22; uint32_t x21 = _mulx_u32(x5, x13, &x22);
- { uint32_t x25; uint32_t x24 = _mulx_u32(x5, x15, &x25);
- { uint32_t x28; uint32_t x27 = _mulx_u32(x5, x17, &x28);
- { uint32_t x31; uint32_t x30 = _mulx_u32(x5, x19, &x31);
- { uint32_t x34; uint32_t x33 = _mulx_u32(x5, x18, &x34);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(0x0, x22, x24, &x36);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x37, x25, x27, &x39);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x40, x28, x30, &x42);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(x43, x31, x33, &x45);
- { uint32_t x48; uint8_t _ = _addcarryx_u32(0x0, x46, x34, &x48);
- { uint32_t _; uint32_t x51 = _mulx_u32(x21, 0xcccccccd, &_);
- { uint32_t x55; uint32_t x54 = _mulx_u32(x51, 0xfffffffb, &x55);
- { uint32_t x58; uint32_t x57 = _mulx_u32(x51, 0xffffffff, &x58);
- { uint32_t x61; uint32_t x60 = _mulx_u32(x51, 0xffffffff, &x61);
- { uint32_t x64; uint32_t x63 = _mulx_u32(x51, 0xffffffff, &x64);
- { uint8_t x67; uint32_t x66 = _mulx_u32_out_u8(x51, 0x3, &x67);
- { uint32_t x69; uint8_t x70 = _addcarryx_u32(0x0, x55, x57, &x69);
- { uint32_t x72; uint8_t x73 = _addcarryx_u32(x70, x58, x60, &x72);
- { uint32_t x75; uint8_t x76 = _addcarryx_u32(x73, x61, x63, &x75);
- { uint32_t x78; uint8_t x79 = _addcarryx_u32(x76, x64, x66, &x78);
- { uint8_t x80 = (x79 + x67);
- { uint32_t _; uint8_t x83 = _addcarryx_u32(0x0, x21, x54, &_);
- { uint32_t x85; uint8_t x86 = _addcarryx_u32(x83, x36, x69, &x85);
- { uint32_t x88; uint8_t x89 = _addcarryx_u32(x86, x39, x72, &x88);
- { uint32_t x91; uint8_t x92 = _addcarryx_u32(x89, x42, x75, &x91);
- { uint32_t x94; uint8_t x95 = _addcarryx_u32(x92, x45, x78, &x94);
- { uint32_t x97; uint8_t x98 = _addcarryx_u32(x95, x48, x80, &x97);
- { uint32_t x101; uint32_t x100 = _mulx_u32(x7, x13, &x101);
- { uint32_t x104; uint32_t x103 = _mulx_u32(x7, x15, &x104);
- { uint32_t x107; uint32_t x106 = _mulx_u32(x7, x17, &x107);
- { uint32_t x110; uint32_t x109 = _mulx_u32(x7, x19, &x110);
- { uint32_t x113; uint32_t x112 = _mulx_u32(x7, x18, &x113);
- { uint32_t x115; uint8_t x116 = _addcarryx_u32(0x0, x101, x103, &x115);
- { uint32_t x118; uint8_t x119 = _addcarryx_u32(x116, x104, x106, &x118);
- { uint32_t x121; uint8_t x122 = _addcarryx_u32(x119, x107, x109, &x121);
- { uint32_t x124; uint8_t x125 = _addcarryx_u32(x122, x110, x112, &x124);
- { uint32_t x127; uint8_t _ = _addcarryx_u32(0x0, x125, x113, &x127);
- { uint32_t x130; uint8_t x131 = _addcarryx_u32(0x0, x85, x100, &x130);
- { uint32_t x133; uint8_t x134 = _addcarryx_u32(x131, x88, x115, &x133);
- { uint32_t x136; uint8_t x137 = _addcarryx_u32(x134, x91, x118, &x136);
- { uint32_t x139; uint8_t x140 = _addcarryx_u32(x137, x94, x121, &x139);
- { uint32_t x142; uint8_t x143 = _addcarryx_u32(x140, x97, x124, &x142);
- { uint32_t x145; uint8_t x146 = _addcarryx_u32(x143, x98, x127, &x145);
- { uint32_t _; uint32_t x148 = _mulx_u32(x130, 0xcccccccd, &_);
- { uint32_t x152; uint32_t x151 = _mulx_u32(x148, 0xfffffffb, &x152);
- { uint32_t x155; uint32_t x154 = _mulx_u32(x148, 0xffffffff, &x155);
- { uint32_t x158; uint32_t x157 = _mulx_u32(x148, 0xffffffff, &x158);
- { uint32_t x161; uint32_t x160 = _mulx_u32(x148, 0xffffffff, &x161);
- { uint8_t x164; uint32_t x163 = _mulx_u32_out_u8(x148, 0x3, &x164);
- { uint32_t x166; uint8_t x167 = _addcarryx_u32(0x0, x152, x154, &x166);
- { uint32_t x169; uint8_t x170 = _addcarryx_u32(x167, x155, x157, &x169);
- { uint32_t x172; uint8_t x173 = _addcarryx_u32(x170, x158, x160, &x172);
- { uint32_t x175; uint8_t x176 = _addcarryx_u32(x173, x161, x163, &x175);
- { uint8_t x177 = (x176 + x164);
- { uint32_t _; uint8_t x180 = _addcarryx_u32(0x0, x130, x151, &_);
- { uint32_t x182; uint8_t x183 = _addcarryx_u32(x180, x133, x166, &x182);
- { uint32_t x185; uint8_t x186 = _addcarryx_u32(x183, x136, x169, &x185);
- { uint32_t x188; uint8_t x189 = _addcarryx_u32(x186, x139, x172, &x188);
- { uint32_t x191; uint8_t x192 = _addcarryx_u32(x189, x142, x175, &x191);
- { uint32_t x194; uint8_t x195 = _addcarryx_u32(x192, x145, x177, &x194);
- { uint8_t x196 = (x195 + x146);
- { uint32_t x199; uint32_t x198 = _mulx_u32(x9, x13, &x199);
- { uint32_t x202; uint32_t x201 = _mulx_u32(x9, x15, &x202);
- { uint32_t x205; uint32_t x204 = _mulx_u32(x9, x17, &x205);
- { uint32_t x208; uint32_t x207 = _mulx_u32(x9, x19, &x208);
- { uint32_t x211; uint32_t x210 = _mulx_u32(x9, x18, &x211);
- { uint32_t x213; uint8_t x214 = _addcarryx_u32(0x0, x199, x201, &x213);
- { uint32_t x216; uint8_t x217 = _addcarryx_u32(x214, x202, x204, &x216);
- { uint32_t x219; uint8_t x220 = _addcarryx_u32(x217, x205, x207, &x219);
- { uint32_t x222; uint8_t x223 = _addcarryx_u32(x220, x208, x210, &x222);
- { uint32_t x225; uint8_t _ = _addcarryx_u32(0x0, x223, x211, &x225);
- { uint32_t x228; uint8_t x229 = _addcarryx_u32(0x0, x182, x198, &x228);
- { uint32_t x231; uint8_t x232 = _addcarryx_u32(x229, x185, x213, &x231);
- { uint32_t x234; uint8_t x235 = _addcarryx_u32(x232, x188, x216, &x234);
- { uint32_t x237; uint8_t x238 = _addcarryx_u32(x235, x191, x219, &x237);
- { uint32_t x240; uint8_t x241 = _addcarryx_u32(x238, x194, x222, &x240);
- { uint32_t x243; uint8_t x244 = _addcarryx_u32(x241, x196, x225, &x243);
- { uint32_t _; uint32_t x246 = _mulx_u32(x228, 0xcccccccd, &_);
- { uint32_t x250; uint32_t x249 = _mulx_u32(x246, 0xfffffffb, &x250);
- { uint32_t x253; uint32_t x252 = _mulx_u32(x246, 0xffffffff, &x253);
- { uint32_t x256; uint32_t x255 = _mulx_u32(x246, 0xffffffff, &x256);
- { uint32_t x259; uint32_t x258 = _mulx_u32(x246, 0xffffffff, &x259);
- { uint8_t x262; uint32_t x261 = _mulx_u32_out_u8(x246, 0x3, &x262);
- { uint32_t x264; uint8_t x265 = _addcarryx_u32(0x0, x250, x252, &x264);
- { uint32_t x267; uint8_t x268 = _addcarryx_u32(x265, x253, x255, &x267);
- { uint32_t x270; uint8_t x271 = _addcarryx_u32(x268, x256, x258, &x270);
- { uint32_t x273; uint8_t x274 = _addcarryx_u32(x271, x259, x261, &x273);
- { uint8_t x275 = (x274 + x262);
- { uint32_t _; uint8_t x278 = _addcarryx_u32(0x0, x228, x249, &_);
- { uint32_t x280; uint8_t x281 = _addcarryx_u32(x278, x231, x264, &x280);
- { uint32_t x283; uint8_t x284 = _addcarryx_u32(x281, x234, x267, &x283);
- { uint32_t x286; uint8_t x287 = _addcarryx_u32(x284, x237, x270, &x286);
- { uint32_t x289; uint8_t x290 = _addcarryx_u32(x287, x240, x273, &x289);
- { uint32_t x292; uint8_t x293 = _addcarryx_u32(x290, x243, x275, &x292);
- { uint8_t x294 = (x293 + x244);
- { uint32_t x297; uint32_t x296 = _mulx_u32(x11, x13, &x297);
- { uint32_t x300; uint32_t x299 = _mulx_u32(x11, x15, &x300);
- { uint32_t x303; uint32_t x302 = _mulx_u32(x11, x17, &x303);
- { uint32_t x306; uint32_t x305 = _mulx_u32(x11, x19, &x306);
- { uint32_t x309; uint32_t x308 = _mulx_u32(x11, x18, &x309);
- { uint32_t x311; uint8_t x312 = _addcarryx_u32(0x0, x297, x299, &x311);
- { uint32_t x314; uint8_t x315 = _addcarryx_u32(x312, x300, x302, &x314);
- { uint32_t x317; uint8_t x318 = _addcarryx_u32(x315, x303, x305, &x317);
- { uint32_t x320; uint8_t x321 = _addcarryx_u32(x318, x306, x308, &x320);
- { uint32_t x323; uint8_t _ = _addcarryx_u32(0x0, x321, x309, &x323);
- { uint32_t x326; uint8_t x327 = _addcarryx_u32(0x0, x280, x296, &x326);
- { uint32_t x329; uint8_t x330 = _addcarryx_u32(x327, x283, x311, &x329);
- { uint32_t x332; uint8_t x333 = _addcarryx_u32(x330, x286, x314, &x332);
- { uint32_t x335; uint8_t x336 = _addcarryx_u32(x333, x289, x317, &x335);
- { uint32_t x338; uint8_t x339 = _addcarryx_u32(x336, x292, x320, &x338);
- { uint32_t x341; uint8_t x342 = _addcarryx_u32(x339, x294, x323, &x341);
- { uint32_t _; uint32_t x344 = _mulx_u32(x326, 0xcccccccd, &_);
- { uint32_t x348; uint32_t x347 = _mulx_u32(x344, 0xfffffffb, &x348);
- { uint32_t x351; uint32_t x350 = _mulx_u32(x344, 0xffffffff, &x351);
- { uint32_t x354; uint32_t x353 = _mulx_u32(x344, 0xffffffff, &x354);
- { uint32_t x357; uint32_t x356 = _mulx_u32(x344, 0xffffffff, &x357);
- { uint8_t x360; uint32_t x359 = _mulx_u32_out_u8(x344, 0x3, &x360);
- { uint32_t x362; uint8_t x363 = _addcarryx_u32(0x0, x348, x350, &x362);
- { uint32_t x365; uint8_t x366 = _addcarryx_u32(x363, x351, x353, &x365);
- { uint32_t x368; uint8_t x369 = _addcarryx_u32(x366, x354, x356, &x368);
- { uint32_t x371; uint8_t x372 = _addcarryx_u32(x369, x357, x359, &x371);
- { uint8_t x373 = (x372 + x360);
- { uint32_t _; uint8_t x376 = _addcarryx_u32(0x0, x326, x347, &_);
- { uint32_t x378; uint8_t x379 = _addcarryx_u32(x376, x329, x362, &x378);
- { uint32_t x381; uint8_t x382 = _addcarryx_u32(x379, x332, x365, &x381);
- { uint32_t x384; uint8_t x385 = _addcarryx_u32(x382, x335, x368, &x384);
- { uint32_t x387; uint8_t x388 = _addcarryx_u32(x385, x338, x371, &x387);
- { uint32_t x390; uint8_t x391 = _addcarryx_u32(x388, x341, x373, &x390);
- { uint8_t x392 = (x391 + x342);
- { uint32_t x395; uint32_t x394 = _mulx_u32(x10, x13, &x395);
- { uint32_t x398; uint32_t x397 = _mulx_u32(x10, x15, &x398);
- { uint32_t x401; uint32_t x400 = _mulx_u32(x10, x17, &x401);
- { uint32_t x404; uint32_t x403 = _mulx_u32(x10, x19, &x404);
- { uint32_t x407; uint32_t x406 = _mulx_u32(x10, x18, &x407);
- { uint32_t x409; uint8_t x410 = _addcarryx_u32(0x0, x395, x397, &x409);
- { uint32_t x412; uint8_t x413 = _addcarryx_u32(x410, x398, x400, &x412);
- { uint32_t x415; uint8_t x416 = _addcarryx_u32(x413, x401, x403, &x415);
- { uint32_t x418; uint8_t x419 = _addcarryx_u32(x416, x404, x406, &x418);
- { uint32_t x421; uint8_t _ = _addcarryx_u32(0x0, x419, x407, &x421);
- { uint32_t x424; uint8_t x425 = _addcarryx_u32(0x0, x378, x394, &x424);
- { uint32_t x427; uint8_t x428 = _addcarryx_u32(x425, x381, x409, &x427);
- { uint32_t x430; uint8_t x431 = _addcarryx_u32(x428, x384, x412, &x430);
- { uint32_t x433; uint8_t x434 = _addcarryx_u32(x431, x387, x415, &x433);
- { uint32_t x436; uint8_t x437 = _addcarryx_u32(x434, x390, x418, &x436);
- { uint32_t x439; uint8_t x440 = _addcarryx_u32(x437, x392, x421, &x439);
- { uint32_t _; uint32_t x442 = _mulx_u32(x424, 0xcccccccd, &_);
- { uint32_t x446; uint32_t x445 = _mulx_u32(x442, 0xfffffffb, &x446);
- { uint32_t x449; uint32_t x448 = _mulx_u32(x442, 0xffffffff, &x449);
- { uint32_t x452; uint32_t x451 = _mulx_u32(x442, 0xffffffff, &x452);
- { uint32_t x455; uint32_t x454 = _mulx_u32(x442, 0xffffffff, &x455);
- { uint8_t x458; uint32_t x457 = _mulx_u32_out_u8(x442, 0x3, &x458);
- { uint32_t x460; uint8_t x461 = _addcarryx_u32(0x0, x446, x448, &x460);
- { uint32_t x463; uint8_t x464 = _addcarryx_u32(x461, x449, x451, &x463);
- { uint32_t x466; uint8_t x467 = _addcarryx_u32(x464, x452, x454, &x466);
- { uint32_t x469; uint8_t x470 = _addcarryx_u32(x467, x455, x457, &x469);
- { uint8_t x471 = (x470 + x458);
- { uint32_t _; uint8_t x474 = _addcarryx_u32(0x0, x424, x445, &_);
- { uint32_t x476; uint8_t x477 = _addcarryx_u32(x474, x427, x460, &x476);
- { uint32_t x479; uint8_t x480 = _addcarryx_u32(x477, x430, x463, &x479);
- { uint32_t x482; uint8_t x483 = _addcarryx_u32(x480, x433, x466, &x482);
- { uint32_t x485; uint8_t x486 = _addcarryx_u32(x483, x436, x469, &x485);
- { uint32_t x488; uint8_t x489 = _addcarryx_u32(x486, x439, x471, &x488);
- { uint8_t x490 = (x489 + x440);
- { uint32_t x492; uint8_t x493 = _subborrow_u32(0x0, x476, 0xfffffffb, &x492);
- { uint32_t x495; uint8_t x496 = _subborrow_u32(x493, x479, 0xffffffff, &x495);
- { uint32_t x498; uint8_t x499 = _subborrow_u32(x496, x482, 0xffffffff, &x498);
- { uint32_t x501; uint8_t x502 = _subborrow_u32(x499, x485, 0xffffffff, &x501);
- { uint32_t x504; uint8_t x505 = _subborrow_u32(x502, x488, 0x3, &x504);
- { uint32_t _; uint8_t x508 = _subborrow_u32(x505, x490, 0x0, &_);
- { uint32_t x509 = cmovznz32(x508, x504, x488);
- { uint32_t x510 = cmovznz32(x508, x501, x485);
- { uint32_t x511 = cmovznz32(x508, x498, x482);
- { uint32_t x512 = cmovznz32(x508, x495, x479);
- { uint32_t x513 = cmovznz32(x508, x492, x476);
- out[0] = x513;
- out[1] = x512;
- out[2] = x511;
- out[3] = x510;
- out[4] = x509;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e130m5_5limbs/femul.v b/src/Specific/montgomery32_2e130m5_5limbs/femul.v
deleted file mode 100644
index ea475c8ed..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e130m5_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e130m5_5limbs/femulDisplay.log b/src/Specific/montgomery32_2e130m5_5limbs/femulDisplay.log
deleted file mode 100644
index 913522927..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,181 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint32_t x22 = mulx_u32(x5, x13);
- uint32_t x24, uint32_t x25 = mulx_u32(x5, x15);
- uint32_t x27, uint32_t x28 = mulx_u32(x5, x17);
- uint32_t x30, uint32_t x31 = mulx_u32(x5, x19);
- uint32_t x33, uint32_t x34 = mulx_u32(x5, x18);
- uint32_t x36, uint8_t x37 = addcarryx_u32(0x0, x22, x24);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x37, x25, x27);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x40, x28, x30);
- uint32_t x45, uint8_t x46 = addcarryx_u32(x43, x31, x33);
- uint32_t x48, uint8_t _ = addcarryx_u32(0x0, x46, x34);
- uint32_t x51, uint32_t _ = mulx_u32(x21, 0xcccccccd);
- uint32_t x54, uint32_t x55 = mulx_u32(x51, 0xfffffffb);
- uint32_t x57, uint32_t x58 = mulx_u32(x51, 0xffffffff);
- uint32_t x60, uint32_t x61 = mulx_u32(x51, 0xffffffff);
- uint32_t x63, uint32_t x64 = mulx_u32(x51, 0xffffffff);
- uint32_t x66, uint8_t x67 = mulx_u32_out_u8(x51, 0x3);
- uint32_t x69, uint8_t x70 = addcarryx_u32(0x0, x55, x57);
- uint32_t x72, uint8_t x73 = addcarryx_u32(x70, x58, x60);
- uint32_t x75, uint8_t x76 = addcarryx_u32(x73, x61, x63);
- uint32_t x78, uint8_t x79 = addcarryx_u32(x76, x64, x66);
- uint8_t x80 = (x79 + x67);
- uint32_t _, uint8_t x83 = addcarryx_u32(0x0, x21, x54);
- uint32_t x85, uint8_t x86 = addcarryx_u32(x83, x36, x69);
- uint32_t x88, uint8_t x89 = addcarryx_u32(x86, x39, x72);
- uint32_t x91, uint8_t x92 = addcarryx_u32(x89, x42, x75);
- uint32_t x94, uint8_t x95 = addcarryx_u32(x92, x45, x78);
- uint32_t x97, uint8_t x98 = addcarryx_u32(x95, x48, x80);
- uint32_t x100, uint32_t x101 = mulx_u32(x7, x13);
- uint32_t x103, uint32_t x104 = mulx_u32(x7, x15);
- uint32_t x106, uint32_t x107 = mulx_u32(x7, x17);
- uint32_t x109, uint32_t x110 = mulx_u32(x7, x19);
- uint32_t x112, uint32_t x113 = mulx_u32(x7, x18);
- uint32_t x115, uint8_t x116 = addcarryx_u32(0x0, x101, x103);
- uint32_t x118, uint8_t x119 = addcarryx_u32(x116, x104, x106);
- uint32_t x121, uint8_t x122 = addcarryx_u32(x119, x107, x109);
- uint32_t x124, uint8_t x125 = addcarryx_u32(x122, x110, x112);
- uint32_t x127, uint8_t _ = addcarryx_u32(0x0, x125, x113);
- uint32_t x130, uint8_t x131 = addcarryx_u32(0x0, x85, x100);
- uint32_t x133, uint8_t x134 = addcarryx_u32(x131, x88, x115);
- uint32_t x136, uint8_t x137 = addcarryx_u32(x134, x91, x118);
- uint32_t x139, uint8_t x140 = addcarryx_u32(x137, x94, x121);
- uint32_t x142, uint8_t x143 = addcarryx_u32(x140, x97, x124);
- uint32_t x145, uint8_t x146 = addcarryx_u32(x143, x98, x127);
- uint32_t x148, uint32_t _ = mulx_u32(x130, 0xcccccccd);
- uint32_t x151, uint32_t x152 = mulx_u32(x148, 0xfffffffb);
- uint32_t x154, uint32_t x155 = mulx_u32(x148, 0xffffffff);
- uint32_t x157, uint32_t x158 = mulx_u32(x148, 0xffffffff);
- uint32_t x160, uint32_t x161 = mulx_u32(x148, 0xffffffff);
- uint32_t x163, uint8_t x164 = mulx_u32_out_u8(x148, 0x3);
- uint32_t x166, uint8_t x167 = addcarryx_u32(0x0, x152, x154);
- uint32_t x169, uint8_t x170 = addcarryx_u32(x167, x155, x157);
- uint32_t x172, uint8_t x173 = addcarryx_u32(x170, x158, x160);
- uint32_t x175, uint8_t x176 = addcarryx_u32(x173, x161, x163);
- uint8_t x177 = (x176 + x164);
- uint32_t _, uint8_t x180 = addcarryx_u32(0x0, x130, x151);
- uint32_t x182, uint8_t x183 = addcarryx_u32(x180, x133, x166);
- uint32_t x185, uint8_t x186 = addcarryx_u32(x183, x136, x169);
- uint32_t x188, uint8_t x189 = addcarryx_u32(x186, x139, x172);
- uint32_t x191, uint8_t x192 = addcarryx_u32(x189, x142, x175);
- uint32_t x194, uint8_t x195 = addcarryx_u32(x192, x145, x177);
- uint8_t x196 = (x195 + x146);
- uint32_t x198, uint32_t x199 = mulx_u32(x9, x13);
- uint32_t x201, uint32_t x202 = mulx_u32(x9, x15);
- uint32_t x204, uint32_t x205 = mulx_u32(x9, x17);
- uint32_t x207, uint32_t x208 = mulx_u32(x9, x19);
- uint32_t x210, uint32_t x211 = mulx_u32(x9, x18);
- uint32_t x213, uint8_t x214 = addcarryx_u32(0x0, x199, x201);
- uint32_t x216, uint8_t x217 = addcarryx_u32(x214, x202, x204);
- uint32_t x219, uint8_t x220 = addcarryx_u32(x217, x205, x207);
- uint32_t x222, uint8_t x223 = addcarryx_u32(x220, x208, x210);
- uint32_t x225, uint8_t _ = addcarryx_u32(0x0, x223, x211);
- uint32_t x228, uint8_t x229 = addcarryx_u32(0x0, x182, x198);
- uint32_t x231, uint8_t x232 = addcarryx_u32(x229, x185, x213);
- uint32_t x234, uint8_t x235 = addcarryx_u32(x232, x188, x216);
- uint32_t x237, uint8_t x238 = addcarryx_u32(x235, x191, x219);
- uint32_t x240, uint8_t x241 = addcarryx_u32(x238, x194, x222);
- uint32_t x243, uint8_t x244 = addcarryx_u32(x241, x196, x225);
- uint32_t x246, uint32_t _ = mulx_u32(x228, 0xcccccccd);
- uint32_t x249, uint32_t x250 = mulx_u32(x246, 0xfffffffb);
- uint32_t x252, uint32_t x253 = mulx_u32(x246, 0xffffffff);
- uint32_t x255, uint32_t x256 = mulx_u32(x246, 0xffffffff);
- uint32_t x258, uint32_t x259 = mulx_u32(x246, 0xffffffff);
- uint32_t x261, uint8_t x262 = mulx_u32_out_u8(x246, 0x3);
- uint32_t x264, uint8_t x265 = addcarryx_u32(0x0, x250, x252);
- uint32_t x267, uint8_t x268 = addcarryx_u32(x265, x253, x255);
- uint32_t x270, uint8_t x271 = addcarryx_u32(x268, x256, x258);
- uint32_t x273, uint8_t x274 = addcarryx_u32(x271, x259, x261);
- uint8_t x275 = (x274 + x262);
- uint32_t _, uint8_t x278 = addcarryx_u32(0x0, x228, x249);
- uint32_t x280, uint8_t x281 = addcarryx_u32(x278, x231, x264);
- uint32_t x283, uint8_t x284 = addcarryx_u32(x281, x234, x267);
- uint32_t x286, uint8_t x287 = addcarryx_u32(x284, x237, x270);
- uint32_t x289, uint8_t x290 = addcarryx_u32(x287, x240, x273);
- uint32_t x292, uint8_t x293 = addcarryx_u32(x290, x243, x275);
- uint8_t x294 = (x293 + x244);
- uint32_t x296, uint32_t x297 = mulx_u32(x11, x13);
- uint32_t x299, uint32_t x300 = mulx_u32(x11, x15);
- uint32_t x302, uint32_t x303 = mulx_u32(x11, x17);
- uint32_t x305, uint32_t x306 = mulx_u32(x11, x19);
- uint32_t x308, uint32_t x309 = mulx_u32(x11, x18);
- uint32_t x311, uint8_t x312 = addcarryx_u32(0x0, x297, x299);
- uint32_t x314, uint8_t x315 = addcarryx_u32(x312, x300, x302);
- uint32_t x317, uint8_t x318 = addcarryx_u32(x315, x303, x305);
- uint32_t x320, uint8_t x321 = addcarryx_u32(x318, x306, x308);
- uint32_t x323, uint8_t _ = addcarryx_u32(0x0, x321, x309);
- uint32_t x326, uint8_t x327 = addcarryx_u32(0x0, x280, x296);
- uint32_t x329, uint8_t x330 = addcarryx_u32(x327, x283, x311);
- uint32_t x332, uint8_t x333 = addcarryx_u32(x330, x286, x314);
- uint32_t x335, uint8_t x336 = addcarryx_u32(x333, x289, x317);
- uint32_t x338, uint8_t x339 = addcarryx_u32(x336, x292, x320);
- uint32_t x341, uint8_t x342 = addcarryx_u32(x339, x294, x323);
- uint32_t x344, uint32_t _ = mulx_u32(x326, 0xcccccccd);
- uint32_t x347, uint32_t x348 = mulx_u32(x344, 0xfffffffb);
- uint32_t x350, uint32_t x351 = mulx_u32(x344, 0xffffffff);
- uint32_t x353, uint32_t x354 = mulx_u32(x344, 0xffffffff);
- uint32_t x356, uint32_t x357 = mulx_u32(x344, 0xffffffff);
- uint32_t x359, uint8_t x360 = mulx_u32_out_u8(x344, 0x3);
- uint32_t x362, uint8_t x363 = addcarryx_u32(0x0, x348, x350);
- uint32_t x365, uint8_t x366 = addcarryx_u32(x363, x351, x353);
- uint32_t x368, uint8_t x369 = addcarryx_u32(x366, x354, x356);
- uint32_t x371, uint8_t x372 = addcarryx_u32(x369, x357, x359);
- uint8_t x373 = (x372 + x360);
- uint32_t _, uint8_t x376 = addcarryx_u32(0x0, x326, x347);
- uint32_t x378, uint8_t x379 = addcarryx_u32(x376, x329, x362);
- uint32_t x381, uint8_t x382 = addcarryx_u32(x379, x332, x365);
- uint32_t x384, uint8_t x385 = addcarryx_u32(x382, x335, x368);
- uint32_t x387, uint8_t x388 = addcarryx_u32(x385, x338, x371);
- uint32_t x390, uint8_t x391 = addcarryx_u32(x388, x341, x373);
- uint8_t x392 = (x391 + x342);
- uint32_t x394, uint32_t x395 = mulx_u32(x10, x13);
- uint32_t x397, uint32_t x398 = mulx_u32(x10, x15);
- uint32_t x400, uint32_t x401 = mulx_u32(x10, x17);
- uint32_t x403, uint32_t x404 = mulx_u32(x10, x19);
- uint32_t x406, uint32_t x407 = mulx_u32(x10, x18);
- uint32_t x409, uint8_t x410 = addcarryx_u32(0x0, x395, x397);
- uint32_t x412, uint8_t x413 = addcarryx_u32(x410, x398, x400);
- uint32_t x415, uint8_t x416 = addcarryx_u32(x413, x401, x403);
- uint32_t x418, uint8_t x419 = addcarryx_u32(x416, x404, x406);
- uint32_t x421, uint8_t _ = addcarryx_u32(0x0, x419, x407);
- uint32_t x424, uint8_t x425 = addcarryx_u32(0x0, x378, x394);
- uint32_t x427, uint8_t x428 = addcarryx_u32(x425, x381, x409);
- uint32_t x430, uint8_t x431 = addcarryx_u32(x428, x384, x412);
- uint32_t x433, uint8_t x434 = addcarryx_u32(x431, x387, x415);
- uint32_t x436, uint8_t x437 = addcarryx_u32(x434, x390, x418);
- uint32_t x439, uint8_t x440 = addcarryx_u32(x437, x392, x421);
- uint32_t x442, uint32_t _ = mulx_u32(x424, 0xcccccccd);
- uint32_t x445, uint32_t x446 = mulx_u32(x442, 0xfffffffb);
- uint32_t x448, uint32_t x449 = mulx_u32(x442, 0xffffffff);
- uint32_t x451, uint32_t x452 = mulx_u32(x442, 0xffffffff);
- uint32_t x454, uint32_t x455 = mulx_u32(x442, 0xffffffff);
- uint32_t x457, uint8_t x458 = mulx_u32_out_u8(x442, 0x3);
- uint32_t x460, uint8_t x461 = addcarryx_u32(0x0, x446, x448);
- uint32_t x463, uint8_t x464 = addcarryx_u32(x461, x449, x451);
- uint32_t x466, uint8_t x467 = addcarryx_u32(x464, x452, x454);
- uint32_t x469, uint8_t x470 = addcarryx_u32(x467, x455, x457);
- uint8_t x471 = (x470 + x458);
- uint32_t _, uint8_t x474 = addcarryx_u32(0x0, x424, x445);
- uint32_t x476, uint8_t x477 = addcarryx_u32(x474, x427, x460);
- uint32_t x479, uint8_t x480 = addcarryx_u32(x477, x430, x463);
- uint32_t x482, uint8_t x483 = addcarryx_u32(x480, x433, x466);
- uint32_t x485, uint8_t x486 = addcarryx_u32(x483, x436, x469);
- uint32_t x488, uint8_t x489 = addcarryx_u32(x486, x439, x471);
- uint8_t x490 = (x489 + x440);
- uint32_t x492, uint8_t x493 = subborrow_u32(0x0, x476, 0xfffffffb);
- uint32_t x495, uint8_t x496 = subborrow_u32(x493, x479, 0xffffffff);
- uint32_t x498, uint8_t x499 = subborrow_u32(x496, x482, 0xffffffff);
- uint32_t x501, uint8_t x502 = subborrow_u32(x499, x485, 0xffffffff);
- uint32_t x504, uint8_t x505 = subborrow_u32(x502, x488, 0x3);
- uint32_t _, uint8_t x508 = subborrow_u32(x505, x490, 0x0);
- uint32_t x509 = cmovznz32(x508, x504, x488);
- uint32_t x510 = cmovznz32(x508, x501, x485);
- uint32_t x511 = cmovznz32(x508, x498, x482);
- uint32_t x512 = cmovznz32(x508, x495, x479);
- uint32_t x513 = cmovznz32(x508, x492, x476);
- return (x509, x510, x511, x512, x513))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e130m5_5limbs/femulDisplay.v b/src/Specific/montgomery32_2e130m5_5limbs/femulDisplay.v
deleted file mode 100644
index e4cbca3c6..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e130m5_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e130m5_5limbs/fenz.c b/src/Specific/montgomery32_2e130m5_5limbs/fenz.c
deleted file mode 100644
index 5601e8c15..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/fenz.c
+++ /dev/null
@@ -1,13 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x9 = (x8 | x7);
- { uint32_t x10 = (x6 | x9);
- { uint32_t x11 = (x4 | x10);
- { uint32_t x12 = (x2 | x11);
- out[0] = x12;
- }}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e130m5_5limbs/fenz.v b/src/Specific/montgomery32_2e130m5_5limbs/fenz.v
deleted file mode 100644
index 8b9c5ba27..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e130m5_5limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e130m5_5limbs/fenzDisplay.log b/src/Specific/montgomery32_2e130m5_5limbs/fenzDisplay.log
deleted file mode 100644
index 723d13164..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/fenzDisplay.log
+++ /dev/null
@@ -1,11 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint32_t x9 = (x8 | x7);
- uint32_t x10 = (x6 | x9);
- uint32_t x11 = (x4 | x10);
- uint32_t x12 = (x2 | x11);
- return x12)
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e130m5_5limbs/fenzDisplay.v b/src/Specific/montgomery32_2e130m5_5limbs/fenzDisplay.v
deleted file mode 100644
index 32b0b16c9..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e130m5_5limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e130m5_5limbs/feopp.c b/src/Specific/montgomery32_2e130m5_5limbs/feopp.c
deleted file mode 100644
index 52806d593..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/feopp.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void feopp(uint32_t out[5], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x10; uint8_t x11 = _subborrow_u32(0x0, 0x0, x2, &x10);
- { uint32_t x13; uint8_t x14 = _subborrow_u32(x11, 0x0, x4, &x13);
- { uint32_t x16; uint8_t x17 = _subborrow_u32(x14, 0x0, x6, &x16);
- { uint32_t x19; uint8_t x20 = _subborrow_u32(x17, 0x0, x8, &x19);
- { uint32_t x22; uint8_t x23 = _subborrow_u32(x20, 0x0, x7, &x22);
- { uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- { uint32_t x25 = (x24 & 0xfffffffb);
- { uint32_t x27; uint8_t x28 = _addcarryx_u32(0x0, x10, x25, &x27);
- { uint32_t x29 = (x24 & 0xffffffff);
- { uint32_t x31; uint8_t x32 = _addcarryx_u32(x28, x13, x29, &x31);
- { uint32_t x33 = (x24 & 0xffffffff);
- { uint32_t x35; uint8_t x36 = _addcarryx_u32(x32, x16, x33, &x35);
- { uint32_t x37 = (x24 & 0xffffffff);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x36, x19, x37, &x39);
- { uint8_t x41 = ((uint8_t)x24 & 0x3);
- { uint32_t x43; uint8_t _ = _addcarryx_u32(x40, x22, x41, &x43);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e130m5_5limbs/feopp.v b/src/Specific/montgomery32_2e130m5_5limbs/feopp.v
deleted file mode 100644
index ac54e2776..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e130m5_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e130m5_5limbs/feoppDisplay.log b/src/Specific/montgomery32_2e130m5_5limbs/feoppDisplay.log
deleted file mode 100644
index 3f460c1dd..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/feoppDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint32_t x10, uint8_t x11 = subborrow_u32(0x0, 0x0, x2);
- uint32_t x13, uint8_t x14 = subborrow_u32(x11, 0x0, x4);
- uint32_t x16, uint8_t x17 = subborrow_u32(x14, 0x0, x6);
- uint32_t x19, uint8_t x20 = subborrow_u32(x17, 0x0, x8);
- uint32_t x22, uint8_t x23 = subborrow_u32(x20, 0x0, x7);
- uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- uint32_t x25 = (x24 & 0xfffffffb);
- uint32_t x27, uint8_t x28 = addcarryx_u32(0x0, x10, x25);
- uint32_t x29 = (x24 & 0xffffffff);
- uint32_t x31, uint8_t x32 = addcarryx_u32(x28, x13, x29);
- uint32_t x33 = (x24 & 0xffffffff);
- uint32_t x35, uint8_t x36 = addcarryx_u32(x32, x16, x33);
- uint32_t x37 = (x24 & 0xffffffff);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x36, x19, x37);
- uint8_t x41 = ((uint8_t)x24 & 0x3);
- uint32_t x43, uint8_t _ = addcarryx_u32(x40, x22, x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e130m5_5limbs/feoppDisplay.v b/src/Specific/montgomery32_2e130m5_5limbs/feoppDisplay.v
deleted file mode 100644
index 938271ace..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e130m5_5limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e130m5_5limbs/fesquare.c b/src/Specific/montgomery32_2e130m5_5limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e130m5_5limbs/fesub.c b/src/Specific/montgomery32_2e130m5_5limbs/fesub.c
deleted file mode 100644
index fed7c8420..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/fesub.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void fesub(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x21; uint8_t x22 = _subborrow_u32(0x0, x5, x13, &x21);
- { uint32_t x24; uint8_t x25 = _subborrow_u32(x22, x7, x15, &x24);
- { uint32_t x27; uint8_t x28 = _subborrow_u32(x25, x9, x17, &x27);
- { uint32_t x30; uint8_t x31 = _subborrow_u32(x28, x11, x19, &x30);
- { uint32_t x33; uint8_t x34 = _subborrow_u32(x31, x10, x18, &x33);
- { uint32_t x35 = cmovznz32(x34, 0x0, 0xffffffff);
- { uint32_t x36 = (x35 & 0xfffffffb);
- { uint32_t x38; uint8_t x39 = _addcarryx_u32(0x0, x21, x36, &x38);
- { uint32_t x40 = (x35 & 0xffffffff);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x39, x24, x40, &x42);
- { uint32_t x44 = (x35 & 0xffffffff);
- { uint32_t x46; uint8_t x47 = _addcarryx_u32(x43, x27, x44, &x46);
- { uint32_t x48 = (x35 & 0xffffffff);
- { uint32_t x50; uint8_t x51 = _addcarryx_u32(x47, x30, x48, &x50);
- { uint8_t x52 = ((uint8_t)x35 & 0x3);
- { uint32_t x54; uint8_t _ = _addcarryx_u32(x51, x33, x52, &x54);
- out[0] = x38;
- out[1] = x42;
- out[2] = x46;
- out[3] = x50;
- out[4] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e130m5_5limbs/fesub.v b/src/Specific/montgomery32_2e130m5_5limbs/fesub.v
deleted file mode 100644
index 145b55a60..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e130m5_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e130m5_5limbs/fesubDisplay.log b/src/Specific/montgomery32_2e130m5_5limbs/fesubDisplay.log
deleted file mode 100644
index e12f2c9c3..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint8_t x22 = subborrow_u32(0x0, x5, x13);
- uint32_t x24, uint8_t x25 = subborrow_u32(x22, x7, x15);
- uint32_t x27, uint8_t x28 = subborrow_u32(x25, x9, x17);
- uint32_t x30, uint8_t x31 = subborrow_u32(x28, x11, x19);
- uint32_t x33, uint8_t x34 = subborrow_u32(x31, x10, x18);
- uint32_t x35 = cmovznz32(x34, 0x0, 0xffffffff);
- uint32_t x36 = (x35 & 0xfffffffb);
- uint32_t x38, uint8_t x39 = addcarryx_u32(0x0, x21, x36);
- uint32_t x40 = (x35 & 0xffffffff);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x39, x24, x40);
- uint32_t x44 = (x35 & 0xffffffff);
- uint32_t x46, uint8_t x47 = addcarryx_u32(x43, x27, x44);
- uint32_t x48 = (x35 & 0xffffffff);
- uint32_t x50, uint8_t x51 = addcarryx_u32(x47, x30, x48);
- uint8_t x52 = ((uint8_t)x35 & 0x3);
- uint32_t x54, uint8_t _ = addcarryx_u32(x51, x33, x52);
- (Return x54, Return x50, Return x46, Return x42, Return x38))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e130m5_5limbs/fesubDisplay.v b/src/Specific/montgomery32_2e130m5_5limbs/fesubDisplay.v
deleted file mode 100644
index e67451fe7..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e130m5_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e130m5_5limbs/py_interpreter.sh b/src/Specific/montgomery32_2e130m5_5limbs/py_interpreter.sh
deleted file mode 100755
index d46af80e8..000000000
--- a/src/Specific/montgomery32_2e130m5_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**130 - 5' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e137m13_5limbs/CurveParameters.v b/src/Specific/montgomery32_2e137m13_5limbs/CurveParameters.v
deleted file mode 100644
index 941f2eebd..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^137 - 13
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 32;
- bitwidth := 32;
- s := 2^137;
- c := [(1, 13)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e137m13_5limbs/Synthesis.v b/src/Specific/montgomery32_2e137m13_5limbs/Synthesis.v
deleted file mode 100644
index b56dd46b8..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e137m13_5limbs.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/montgomery32_2e137m13_5limbs/compiler.sh b/src/Specific/montgomery32_2e137m13_5limbs/compiler.sh
deleted file mode 100755
index 4f4a355de..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<137) - 13' "$@"
diff --git a/src/Specific/montgomery32_2e137m13_5limbs/compilerxx.sh b/src/Specific/montgomery32_2e137m13_5limbs/compilerxx.sh
deleted file mode 100755
index b93176006..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<137) - 13' "$@"
diff --git a/src/Specific/montgomery32_2e137m13_5limbs/feadd.c b/src/Specific/montgomery32_2e137m13_5limbs/feadd.c
deleted file mode 100644
index 9551c2a6f..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/feadd.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feadd(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x21; uint8_t x22 = _addcarryx_u32(0x0, x5, x13, &x21);
- { uint32_t x24; uint8_t x25 = _addcarryx_u32(x22, x7, x15, &x24);
- { uint32_t x27; uint8_t x28 = _addcarryx_u32(x25, x9, x17, &x27);
- { uint32_t x30; uint8_t x31 = _addcarryx_u32(x28, x11, x19, &x30);
- { uint32_t x33; uint8_t x34 = _addcarryx_u32(x31, x10, x18, &x33);
- { uint32_t x36; uint8_t x37 = _subborrow_u32(0x0, x21, 0xfffffff3, &x36);
- { uint32_t x39; uint8_t x40 = _subborrow_u32(x37, x24, 0xffffffff, &x39);
- { uint32_t x42; uint8_t x43 = _subborrow_u32(x40, x27, 0xffffffff, &x42);
- { uint32_t x45; uint8_t x46 = _subborrow_u32(x43, x30, 0xffffffff, &x45);
- { uint32_t x48; uint8_t x49 = _subborrow_u32(x46, x33, 0x1ff, &x48);
- { uint32_t _; uint8_t x52 = _subborrow_u32(x49, x34, 0x0, &_);
- { uint32_t x53 = cmovznz32(x52, x48, x33);
- { uint32_t x54 = cmovznz32(x52, x45, x30);
- { uint32_t x55 = cmovznz32(x52, x42, x27);
- { uint32_t x56 = cmovznz32(x52, x39, x24);
- { uint32_t x57 = cmovznz32(x52, x36, x21);
- out[0] = x57;
- out[1] = x56;
- out[2] = x55;
- out[3] = x54;
- out[4] = x53;
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e137m13_5limbs/feadd.v b/src/Specific/montgomery32_2e137m13_5limbs/feadd.v
deleted file mode 100644
index 78808dc89..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e137m13_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e137m13_5limbs/feaddDisplay.log b/src/Specific/montgomery32_2e137m13_5limbs/feaddDisplay.log
deleted file mode 100644
index ce18e4d1f..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint8_t x22 = addcarryx_u32(0x0, x5, x13);
- uint32_t x24, uint8_t x25 = addcarryx_u32(x22, x7, x15);
- uint32_t x27, uint8_t x28 = addcarryx_u32(x25, x9, x17);
- uint32_t x30, uint8_t x31 = addcarryx_u32(x28, x11, x19);
- uint32_t x33, uint8_t x34 = addcarryx_u32(x31, x10, x18);
- uint32_t x36, uint8_t x37 = subborrow_u32(0x0, x21, 0xfffffff3);
- uint32_t x39, uint8_t x40 = subborrow_u32(x37, x24, 0xffffffff);
- uint32_t x42, uint8_t x43 = subborrow_u32(x40, x27, 0xffffffff);
- uint32_t x45, uint8_t x46 = subborrow_u32(x43, x30, 0xffffffff);
- uint32_t x48, uint8_t x49 = subborrow_u32(x46, x33, 0x1ff);
- uint32_t _, uint8_t x52 = subborrow_u32(x49, x34, 0x0);
- uint32_t x53 = cmovznz32(x52, x48, x33);
- uint32_t x54 = cmovznz32(x52, x45, x30);
- uint32_t x55 = cmovznz32(x52, x42, x27);
- uint32_t x56 = cmovznz32(x52, x39, x24);
- uint32_t x57 = cmovznz32(x52, x36, x21);
- return (x53, x54, x55, x56, x57))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e137m13_5limbs/feaddDisplay.v b/src/Specific/montgomery32_2e137m13_5limbs/feaddDisplay.v
deleted file mode 100644
index 0469bd3bd..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e137m13_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e137m13_5limbs/femul.c b/src/Specific/montgomery32_2e137m13_5limbs/femul.c
deleted file mode 100644
index 95d505d62..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/femul.c
+++ /dev/null
@@ -1,192 +0,0 @@
-static void femul(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x22; uint32_t x21 = _mulx_u32(x5, x13, &x22);
- { uint32_t x25; uint32_t x24 = _mulx_u32(x5, x15, &x25);
- { uint32_t x28; uint32_t x27 = _mulx_u32(x5, x17, &x28);
- { uint32_t x31; uint32_t x30 = _mulx_u32(x5, x19, &x31);
- { uint32_t x34; uint32_t x33 = _mulx_u32(x5, x18, &x34);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(0x0, x22, x24, &x36);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x37, x25, x27, &x39);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x40, x28, x30, &x42);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(x43, x31, x33, &x45);
- { uint32_t x48; uint8_t _ = _addcarryx_u32(0x0, x46, x34, &x48);
- { uint32_t _; uint32_t x51 = _mulx_u32(x21, 0xc4ec4ec5, &_);
- { uint32_t x55; uint32_t x54 = _mulx_u32(x51, 0xfffffff3, &x55);
- { uint32_t x58; uint32_t x57 = _mulx_u32(x51, 0xffffffff, &x58);
- { uint32_t x61; uint32_t x60 = _mulx_u32(x51, 0xffffffff, &x61);
- { uint32_t x64; uint32_t x63 = _mulx_u32(x51, 0xffffffff, &x64);
- { uint32_t x67; uint32_t x66 = _mulx_u32(x51, 0x1ff, &x67);
- { uint32_t x69; uint8_t x70 = _addcarryx_u32(0x0, x55, x57, &x69);
- { uint32_t x72; uint8_t x73 = _addcarryx_u32(x70, x58, x60, &x72);
- { uint32_t x75; uint8_t x76 = _addcarryx_u32(x73, x61, x63, &x75);
- { uint32_t x78; uint8_t x79 = _addcarryx_u32(x76, x64, x66, &x78);
- { uint32_t x81; uint8_t _ = _addcarryx_u32(0x0, x79, x67, &x81);
- { uint32_t _; uint8_t x85 = _addcarryx_u32(0x0, x21, x54, &_);
- { uint32_t x87; uint8_t x88 = _addcarryx_u32(x85, x36, x69, &x87);
- { uint32_t x90; uint8_t x91 = _addcarryx_u32(x88, x39, x72, &x90);
- { uint32_t x93; uint8_t x94 = _addcarryx_u32(x91, x42, x75, &x93);
- { uint32_t x96; uint8_t x97 = _addcarryx_u32(x94, x45, x78, &x96);
- { uint32_t x99; uint8_t x100 = _addcarryx_u32(x97, x48, x81, &x99);
- { uint32_t x103; uint32_t x102 = _mulx_u32(x7, x13, &x103);
- { uint32_t x106; uint32_t x105 = _mulx_u32(x7, x15, &x106);
- { uint32_t x109; uint32_t x108 = _mulx_u32(x7, x17, &x109);
- { uint32_t x112; uint32_t x111 = _mulx_u32(x7, x19, &x112);
- { uint32_t x115; uint32_t x114 = _mulx_u32(x7, x18, &x115);
- { uint32_t x117; uint8_t x118 = _addcarryx_u32(0x0, x103, x105, &x117);
- { uint32_t x120; uint8_t x121 = _addcarryx_u32(x118, x106, x108, &x120);
- { uint32_t x123; uint8_t x124 = _addcarryx_u32(x121, x109, x111, &x123);
- { uint32_t x126; uint8_t x127 = _addcarryx_u32(x124, x112, x114, &x126);
- { uint32_t x129; uint8_t _ = _addcarryx_u32(0x0, x127, x115, &x129);
- { uint32_t x132; uint8_t x133 = _addcarryx_u32(0x0, x87, x102, &x132);
- { uint32_t x135; uint8_t x136 = _addcarryx_u32(x133, x90, x117, &x135);
- { uint32_t x138; uint8_t x139 = _addcarryx_u32(x136, x93, x120, &x138);
- { uint32_t x141; uint8_t x142 = _addcarryx_u32(x139, x96, x123, &x141);
- { uint32_t x144; uint8_t x145 = _addcarryx_u32(x142, x99, x126, &x144);
- { uint32_t x147; uint8_t x148 = _addcarryx_u32(x145, x100, x129, &x147);
- { uint32_t _; uint32_t x150 = _mulx_u32(x132, 0xc4ec4ec5, &_);
- { uint32_t x154; uint32_t x153 = _mulx_u32(x150, 0xfffffff3, &x154);
- { uint32_t x157; uint32_t x156 = _mulx_u32(x150, 0xffffffff, &x157);
- { uint32_t x160; uint32_t x159 = _mulx_u32(x150, 0xffffffff, &x160);
- { uint32_t x163; uint32_t x162 = _mulx_u32(x150, 0xffffffff, &x163);
- { uint32_t x166; uint32_t x165 = _mulx_u32(x150, 0x1ff, &x166);
- { uint32_t x168; uint8_t x169 = _addcarryx_u32(0x0, x154, x156, &x168);
- { uint32_t x171; uint8_t x172 = _addcarryx_u32(x169, x157, x159, &x171);
- { uint32_t x174; uint8_t x175 = _addcarryx_u32(x172, x160, x162, &x174);
- { uint32_t x177; uint8_t x178 = _addcarryx_u32(x175, x163, x165, &x177);
- { uint32_t x180; uint8_t _ = _addcarryx_u32(0x0, x178, x166, &x180);
- { uint32_t _; uint8_t x184 = _addcarryx_u32(0x0, x132, x153, &_);
- { uint32_t x186; uint8_t x187 = _addcarryx_u32(x184, x135, x168, &x186);
- { uint32_t x189; uint8_t x190 = _addcarryx_u32(x187, x138, x171, &x189);
- { uint32_t x192; uint8_t x193 = _addcarryx_u32(x190, x141, x174, &x192);
- { uint32_t x195; uint8_t x196 = _addcarryx_u32(x193, x144, x177, &x195);
- { uint32_t x198; uint8_t x199 = _addcarryx_u32(x196, x147, x180, &x198);
- { uint8_t x200 = (x199 + x148);
- { uint32_t x203; uint32_t x202 = _mulx_u32(x9, x13, &x203);
- { uint32_t x206; uint32_t x205 = _mulx_u32(x9, x15, &x206);
- { uint32_t x209; uint32_t x208 = _mulx_u32(x9, x17, &x209);
- { uint32_t x212; uint32_t x211 = _mulx_u32(x9, x19, &x212);
- { uint32_t x215; uint32_t x214 = _mulx_u32(x9, x18, &x215);
- { uint32_t x217; uint8_t x218 = _addcarryx_u32(0x0, x203, x205, &x217);
- { uint32_t x220; uint8_t x221 = _addcarryx_u32(x218, x206, x208, &x220);
- { uint32_t x223; uint8_t x224 = _addcarryx_u32(x221, x209, x211, &x223);
- { uint32_t x226; uint8_t x227 = _addcarryx_u32(x224, x212, x214, &x226);
- { uint32_t x229; uint8_t _ = _addcarryx_u32(0x0, x227, x215, &x229);
- { uint32_t x232; uint8_t x233 = _addcarryx_u32(0x0, x186, x202, &x232);
- { uint32_t x235; uint8_t x236 = _addcarryx_u32(x233, x189, x217, &x235);
- { uint32_t x238; uint8_t x239 = _addcarryx_u32(x236, x192, x220, &x238);
- { uint32_t x241; uint8_t x242 = _addcarryx_u32(x239, x195, x223, &x241);
- { uint32_t x244; uint8_t x245 = _addcarryx_u32(x242, x198, x226, &x244);
- { uint32_t x247; uint8_t x248 = _addcarryx_u32(x245, x200, x229, &x247);
- { uint32_t _; uint32_t x250 = _mulx_u32(x232, 0xc4ec4ec5, &_);
- { uint32_t x254; uint32_t x253 = _mulx_u32(x250, 0xfffffff3, &x254);
- { uint32_t x257; uint32_t x256 = _mulx_u32(x250, 0xffffffff, &x257);
- { uint32_t x260; uint32_t x259 = _mulx_u32(x250, 0xffffffff, &x260);
- { uint32_t x263; uint32_t x262 = _mulx_u32(x250, 0xffffffff, &x263);
- { uint32_t x266; uint32_t x265 = _mulx_u32(x250, 0x1ff, &x266);
- { uint32_t x268; uint8_t x269 = _addcarryx_u32(0x0, x254, x256, &x268);
- { uint32_t x271; uint8_t x272 = _addcarryx_u32(x269, x257, x259, &x271);
- { uint32_t x274; uint8_t x275 = _addcarryx_u32(x272, x260, x262, &x274);
- { uint32_t x277; uint8_t x278 = _addcarryx_u32(x275, x263, x265, &x277);
- { uint32_t x280; uint8_t _ = _addcarryx_u32(0x0, x278, x266, &x280);
- { uint32_t _; uint8_t x284 = _addcarryx_u32(0x0, x232, x253, &_);
- { uint32_t x286; uint8_t x287 = _addcarryx_u32(x284, x235, x268, &x286);
- { uint32_t x289; uint8_t x290 = _addcarryx_u32(x287, x238, x271, &x289);
- { uint32_t x292; uint8_t x293 = _addcarryx_u32(x290, x241, x274, &x292);
- { uint32_t x295; uint8_t x296 = _addcarryx_u32(x293, x244, x277, &x295);
- { uint32_t x298; uint8_t x299 = _addcarryx_u32(x296, x247, x280, &x298);
- { uint8_t x300 = (x299 + x248);
- { uint32_t x303; uint32_t x302 = _mulx_u32(x11, x13, &x303);
- { uint32_t x306; uint32_t x305 = _mulx_u32(x11, x15, &x306);
- { uint32_t x309; uint32_t x308 = _mulx_u32(x11, x17, &x309);
- { uint32_t x312; uint32_t x311 = _mulx_u32(x11, x19, &x312);
- { uint32_t x315; uint32_t x314 = _mulx_u32(x11, x18, &x315);
- { uint32_t x317; uint8_t x318 = _addcarryx_u32(0x0, x303, x305, &x317);
- { uint32_t x320; uint8_t x321 = _addcarryx_u32(x318, x306, x308, &x320);
- { uint32_t x323; uint8_t x324 = _addcarryx_u32(x321, x309, x311, &x323);
- { uint32_t x326; uint8_t x327 = _addcarryx_u32(x324, x312, x314, &x326);
- { uint32_t x329; uint8_t _ = _addcarryx_u32(0x0, x327, x315, &x329);
- { uint32_t x332; uint8_t x333 = _addcarryx_u32(0x0, x286, x302, &x332);
- { uint32_t x335; uint8_t x336 = _addcarryx_u32(x333, x289, x317, &x335);
- { uint32_t x338; uint8_t x339 = _addcarryx_u32(x336, x292, x320, &x338);
- { uint32_t x341; uint8_t x342 = _addcarryx_u32(x339, x295, x323, &x341);
- { uint32_t x344; uint8_t x345 = _addcarryx_u32(x342, x298, x326, &x344);
- { uint32_t x347; uint8_t x348 = _addcarryx_u32(x345, x300, x329, &x347);
- { uint32_t _; uint32_t x350 = _mulx_u32(x332, 0xc4ec4ec5, &_);
- { uint32_t x354; uint32_t x353 = _mulx_u32(x350, 0xfffffff3, &x354);
- { uint32_t x357; uint32_t x356 = _mulx_u32(x350, 0xffffffff, &x357);
- { uint32_t x360; uint32_t x359 = _mulx_u32(x350, 0xffffffff, &x360);
- { uint32_t x363; uint32_t x362 = _mulx_u32(x350, 0xffffffff, &x363);
- { uint32_t x366; uint32_t x365 = _mulx_u32(x350, 0x1ff, &x366);
- { uint32_t x368; uint8_t x369 = _addcarryx_u32(0x0, x354, x356, &x368);
- { uint32_t x371; uint8_t x372 = _addcarryx_u32(x369, x357, x359, &x371);
- { uint32_t x374; uint8_t x375 = _addcarryx_u32(x372, x360, x362, &x374);
- { uint32_t x377; uint8_t x378 = _addcarryx_u32(x375, x363, x365, &x377);
- { uint32_t x380; uint8_t _ = _addcarryx_u32(0x0, x378, x366, &x380);
- { uint32_t _; uint8_t x384 = _addcarryx_u32(0x0, x332, x353, &_);
- { uint32_t x386; uint8_t x387 = _addcarryx_u32(x384, x335, x368, &x386);
- { uint32_t x389; uint8_t x390 = _addcarryx_u32(x387, x338, x371, &x389);
- { uint32_t x392; uint8_t x393 = _addcarryx_u32(x390, x341, x374, &x392);
- { uint32_t x395; uint8_t x396 = _addcarryx_u32(x393, x344, x377, &x395);
- { uint32_t x398; uint8_t x399 = _addcarryx_u32(x396, x347, x380, &x398);
- { uint8_t x400 = (x399 + x348);
- { uint32_t x403; uint32_t x402 = _mulx_u32(x10, x13, &x403);
- { uint32_t x406; uint32_t x405 = _mulx_u32(x10, x15, &x406);
- { uint32_t x409; uint32_t x408 = _mulx_u32(x10, x17, &x409);
- { uint32_t x412; uint32_t x411 = _mulx_u32(x10, x19, &x412);
- { uint32_t x415; uint32_t x414 = _mulx_u32(x10, x18, &x415);
- { uint32_t x417; uint8_t x418 = _addcarryx_u32(0x0, x403, x405, &x417);
- { uint32_t x420; uint8_t x421 = _addcarryx_u32(x418, x406, x408, &x420);
- { uint32_t x423; uint8_t x424 = _addcarryx_u32(x421, x409, x411, &x423);
- { uint32_t x426; uint8_t x427 = _addcarryx_u32(x424, x412, x414, &x426);
- { uint32_t x429; uint8_t _ = _addcarryx_u32(0x0, x427, x415, &x429);
- { uint32_t x432; uint8_t x433 = _addcarryx_u32(0x0, x386, x402, &x432);
- { uint32_t x435; uint8_t x436 = _addcarryx_u32(x433, x389, x417, &x435);
- { uint32_t x438; uint8_t x439 = _addcarryx_u32(x436, x392, x420, &x438);
- { uint32_t x441; uint8_t x442 = _addcarryx_u32(x439, x395, x423, &x441);
- { uint32_t x444; uint8_t x445 = _addcarryx_u32(x442, x398, x426, &x444);
- { uint32_t x447; uint8_t x448 = _addcarryx_u32(x445, x400, x429, &x447);
- { uint32_t _; uint32_t x450 = _mulx_u32(x432, 0xc4ec4ec5, &_);
- { uint32_t x454; uint32_t x453 = _mulx_u32(x450, 0xfffffff3, &x454);
- { uint32_t x457; uint32_t x456 = _mulx_u32(x450, 0xffffffff, &x457);
- { uint32_t x460; uint32_t x459 = _mulx_u32(x450, 0xffffffff, &x460);
- { uint32_t x463; uint32_t x462 = _mulx_u32(x450, 0xffffffff, &x463);
- { uint32_t x466; uint32_t x465 = _mulx_u32(x450, 0x1ff, &x466);
- { uint32_t x468; uint8_t x469 = _addcarryx_u32(0x0, x454, x456, &x468);
- { uint32_t x471; uint8_t x472 = _addcarryx_u32(x469, x457, x459, &x471);
- { uint32_t x474; uint8_t x475 = _addcarryx_u32(x472, x460, x462, &x474);
- { uint32_t x477; uint8_t x478 = _addcarryx_u32(x475, x463, x465, &x477);
- { uint32_t x480; uint8_t _ = _addcarryx_u32(0x0, x478, x466, &x480);
- { uint32_t _; uint8_t x484 = _addcarryx_u32(0x0, x432, x453, &_);
- { uint32_t x486; uint8_t x487 = _addcarryx_u32(x484, x435, x468, &x486);
- { uint32_t x489; uint8_t x490 = _addcarryx_u32(x487, x438, x471, &x489);
- { uint32_t x492; uint8_t x493 = _addcarryx_u32(x490, x441, x474, &x492);
- { uint32_t x495; uint8_t x496 = _addcarryx_u32(x493, x444, x477, &x495);
- { uint32_t x498; uint8_t x499 = _addcarryx_u32(x496, x447, x480, &x498);
- { uint8_t x500 = (x499 + x448);
- { uint32_t x502; uint8_t x503 = _subborrow_u32(0x0, x486, 0xfffffff3, &x502);
- { uint32_t x505; uint8_t x506 = _subborrow_u32(x503, x489, 0xffffffff, &x505);
- { uint32_t x508; uint8_t x509 = _subborrow_u32(x506, x492, 0xffffffff, &x508);
- { uint32_t x511; uint8_t x512 = _subborrow_u32(x509, x495, 0xffffffff, &x511);
- { uint32_t x514; uint8_t x515 = _subborrow_u32(x512, x498, 0x1ff, &x514);
- { uint32_t _; uint8_t x518 = _subborrow_u32(x515, x500, 0x0, &_);
- { uint32_t x519 = cmovznz32(x518, x514, x498);
- { uint32_t x520 = cmovznz32(x518, x511, x495);
- { uint32_t x521 = cmovznz32(x518, x508, x492);
- { uint32_t x522 = cmovznz32(x518, x505, x489);
- { uint32_t x523 = cmovznz32(x518, x502, x486);
- out[0] = x523;
- out[1] = x522;
- out[2] = x521;
- out[3] = x520;
- out[4] = x519;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e137m13_5limbs/femul.v b/src/Specific/montgomery32_2e137m13_5limbs/femul.v
deleted file mode 100644
index bd4825a7b..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e137m13_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e137m13_5limbs/femulDisplay.log b/src/Specific/montgomery32_2e137m13_5limbs/femulDisplay.log
deleted file mode 100644
index e2ecb1b74..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,181 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint32_t x22 = mulx_u32(x5, x13);
- uint32_t x24, uint32_t x25 = mulx_u32(x5, x15);
- uint32_t x27, uint32_t x28 = mulx_u32(x5, x17);
- uint32_t x30, uint32_t x31 = mulx_u32(x5, x19);
- uint32_t x33, uint32_t x34 = mulx_u32(x5, x18);
- uint32_t x36, uint8_t x37 = addcarryx_u32(0x0, x22, x24);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x37, x25, x27);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x40, x28, x30);
- uint32_t x45, uint8_t x46 = addcarryx_u32(x43, x31, x33);
- uint32_t x48, uint8_t _ = addcarryx_u32(0x0, x46, x34);
- uint32_t x51, uint32_t _ = mulx_u32(x21, 0xc4ec4ec5);
- uint32_t x54, uint32_t x55 = mulx_u32(x51, 0xfffffff3);
- uint32_t x57, uint32_t x58 = mulx_u32(x51, 0xffffffff);
- uint32_t x60, uint32_t x61 = mulx_u32(x51, 0xffffffff);
- uint32_t x63, uint32_t x64 = mulx_u32(x51, 0xffffffff);
- uint32_t x66, uint32_t x67 = mulx_u32(x51, 0x1ff);
- uint32_t x69, uint8_t x70 = addcarryx_u32(0x0, x55, x57);
- uint32_t x72, uint8_t x73 = addcarryx_u32(x70, x58, x60);
- uint32_t x75, uint8_t x76 = addcarryx_u32(x73, x61, x63);
- uint32_t x78, uint8_t x79 = addcarryx_u32(x76, x64, x66);
- uint32_t x81, uint8_t _ = addcarryx_u32(0x0, x79, x67);
- uint32_t _, uint8_t x85 = addcarryx_u32(0x0, x21, x54);
- uint32_t x87, uint8_t x88 = addcarryx_u32(x85, x36, x69);
- uint32_t x90, uint8_t x91 = addcarryx_u32(x88, x39, x72);
- uint32_t x93, uint8_t x94 = addcarryx_u32(x91, x42, x75);
- uint32_t x96, uint8_t x97 = addcarryx_u32(x94, x45, x78);
- uint32_t x99, uint8_t x100 = addcarryx_u32(x97, x48, x81);
- uint32_t x102, uint32_t x103 = mulx_u32(x7, x13);
- uint32_t x105, uint32_t x106 = mulx_u32(x7, x15);
- uint32_t x108, uint32_t x109 = mulx_u32(x7, x17);
- uint32_t x111, uint32_t x112 = mulx_u32(x7, x19);
- uint32_t x114, uint32_t x115 = mulx_u32(x7, x18);
- uint32_t x117, uint8_t x118 = addcarryx_u32(0x0, x103, x105);
- uint32_t x120, uint8_t x121 = addcarryx_u32(x118, x106, x108);
- uint32_t x123, uint8_t x124 = addcarryx_u32(x121, x109, x111);
- uint32_t x126, uint8_t x127 = addcarryx_u32(x124, x112, x114);
- uint32_t x129, uint8_t _ = addcarryx_u32(0x0, x127, x115);
- uint32_t x132, uint8_t x133 = addcarryx_u32(0x0, x87, x102);
- uint32_t x135, uint8_t x136 = addcarryx_u32(x133, x90, x117);
- uint32_t x138, uint8_t x139 = addcarryx_u32(x136, x93, x120);
- uint32_t x141, uint8_t x142 = addcarryx_u32(x139, x96, x123);
- uint32_t x144, uint8_t x145 = addcarryx_u32(x142, x99, x126);
- uint32_t x147, uint8_t x148 = addcarryx_u32(x145, x100, x129);
- uint32_t x150, uint32_t _ = mulx_u32(x132, 0xc4ec4ec5);
- uint32_t x153, uint32_t x154 = mulx_u32(x150, 0xfffffff3);
- uint32_t x156, uint32_t x157 = mulx_u32(x150, 0xffffffff);
- uint32_t x159, uint32_t x160 = mulx_u32(x150, 0xffffffff);
- uint32_t x162, uint32_t x163 = mulx_u32(x150, 0xffffffff);
- uint32_t x165, uint32_t x166 = mulx_u32(x150, 0x1ff);
- uint32_t x168, uint8_t x169 = addcarryx_u32(0x0, x154, x156);
- uint32_t x171, uint8_t x172 = addcarryx_u32(x169, x157, x159);
- uint32_t x174, uint8_t x175 = addcarryx_u32(x172, x160, x162);
- uint32_t x177, uint8_t x178 = addcarryx_u32(x175, x163, x165);
- uint32_t x180, uint8_t _ = addcarryx_u32(0x0, x178, x166);
- uint32_t _, uint8_t x184 = addcarryx_u32(0x0, x132, x153);
- uint32_t x186, uint8_t x187 = addcarryx_u32(x184, x135, x168);
- uint32_t x189, uint8_t x190 = addcarryx_u32(x187, x138, x171);
- uint32_t x192, uint8_t x193 = addcarryx_u32(x190, x141, x174);
- uint32_t x195, uint8_t x196 = addcarryx_u32(x193, x144, x177);
- uint32_t x198, uint8_t x199 = addcarryx_u32(x196, x147, x180);
- uint8_t x200 = (x199 + x148);
- uint32_t x202, uint32_t x203 = mulx_u32(x9, x13);
- uint32_t x205, uint32_t x206 = mulx_u32(x9, x15);
- uint32_t x208, uint32_t x209 = mulx_u32(x9, x17);
- uint32_t x211, uint32_t x212 = mulx_u32(x9, x19);
- uint32_t x214, uint32_t x215 = mulx_u32(x9, x18);
- uint32_t x217, uint8_t x218 = addcarryx_u32(0x0, x203, x205);
- uint32_t x220, uint8_t x221 = addcarryx_u32(x218, x206, x208);
- uint32_t x223, uint8_t x224 = addcarryx_u32(x221, x209, x211);
- uint32_t x226, uint8_t x227 = addcarryx_u32(x224, x212, x214);
- uint32_t x229, uint8_t _ = addcarryx_u32(0x0, x227, x215);
- uint32_t x232, uint8_t x233 = addcarryx_u32(0x0, x186, x202);
- uint32_t x235, uint8_t x236 = addcarryx_u32(x233, x189, x217);
- uint32_t x238, uint8_t x239 = addcarryx_u32(x236, x192, x220);
- uint32_t x241, uint8_t x242 = addcarryx_u32(x239, x195, x223);
- uint32_t x244, uint8_t x245 = addcarryx_u32(x242, x198, x226);
- uint32_t x247, uint8_t x248 = addcarryx_u32(x245, x200, x229);
- uint32_t x250, uint32_t _ = mulx_u32(x232, 0xc4ec4ec5);
- uint32_t x253, uint32_t x254 = mulx_u32(x250, 0xfffffff3);
- uint32_t x256, uint32_t x257 = mulx_u32(x250, 0xffffffff);
- uint32_t x259, uint32_t x260 = mulx_u32(x250, 0xffffffff);
- uint32_t x262, uint32_t x263 = mulx_u32(x250, 0xffffffff);
- uint32_t x265, uint32_t x266 = mulx_u32(x250, 0x1ff);
- uint32_t x268, uint8_t x269 = addcarryx_u32(0x0, x254, x256);
- uint32_t x271, uint8_t x272 = addcarryx_u32(x269, x257, x259);
- uint32_t x274, uint8_t x275 = addcarryx_u32(x272, x260, x262);
- uint32_t x277, uint8_t x278 = addcarryx_u32(x275, x263, x265);
- uint32_t x280, uint8_t _ = addcarryx_u32(0x0, x278, x266);
- uint32_t _, uint8_t x284 = addcarryx_u32(0x0, x232, x253);
- uint32_t x286, uint8_t x287 = addcarryx_u32(x284, x235, x268);
- uint32_t x289, uint8_t x290 = addcarryx_u32(x287, x238, x271);
- uint32_t x292, uint8_t x293 = addcarryx_u32(x290, x241, x274);
- uint32_t x295, uint8_t x296 = addcarryx_u32(x293, x244, x277);
- uint32_t x298, uint8_t x299 = addcarryx_u32(x296, x247, x280);
- uint8_t x300 = (x299 + x248);
- uint32_t x302, uint32_t x303 = mulx_u32(x11, x13);
- uint32_t x305, uint32_t x306 = mulx_u32(x11, x15);
- uint32_t x308, uint32_t x309 = mulx_u32(x11, x17);
- uint32_t x311, uint32_t x312 = mulx_u32(x11, x19);
- uint32_t x314, uint32_t x315 = mulx_u32(x11, x18);
- uint32_t x317, uint8_t x318 = addcarryx_u32(0x0, x303, x305);
- uint32_t x320, uint8_t x321 = addcarryx_u32(x318, x306, x308);
- uint32_t x323, uint8_t x324 = addcarryx_u32(x321, x309, x311);
- uint32_t x326, uint8_t x327 = addcarryx_u32(x324, x312, x314);
- uint32_t x329, uint8_t _ = addcarryx_u32(0x0, x327, x315);
- uint32_t x332, uint8_t x333 = addcarryx_u32(0x0, x286, x302);
- uint32_t x335, uint8_t x336 = addcarryx_u32(x333, x289, x317);
- uint32_t x338, uint8_t x339 = addcarryx_u32(x336, x292, x320);
- uint32_t x341, uint8_t x342 = addcarryx_u32(x339, x295, x323);
- uint32_t x344, uint8_t x345 = addcarryx_u32(x342, x298, x326);
- uint32_t x347, uint8_t x348 = addcarryx_u32(x345, x300, x329);
- uint32_t x350, uint32_t _ = mulx_u32(x332, 0xc4ec4ec5);
- uint32_t x353, uint32_t x354 = mulx_u32(x350, 0xfffffff3);
- uint32_t x356, uint32_t x357 = mulx_u32(x350, 0xffffffff);
- uint32_t x359, uint32_t x360 = mulx_u32(x350, 0xffffffff);
- uint32_t x362, uint32_t x363 = mulx_u32(x350, 0xffffffff);
- uint32_t x365, uint32_t x366 = mulx_u32(x350, 0x1ff);
- uint32_t x368, uint8_t x369 = addcarryx_u32(0x0, x354, x356);
- uint32_t x371, uint8_t x372 = addcarryx_u32(x369, x357, x359);
- uint32_t x374, uint8_t x375 = addcarryx_u32(x372, x360, x362);
- uint32_t x377, uint8_t x378 = addcarryx_u32(x375, x363, x365);
- uint32_t x380, uint8_t _ = addcarryx_u32(0x0, x378, x366);
- uint32_t _, uint8_t x384 = addcarryx_u32(0x0, x332, x353);
- uint32_t x386, uint8_t x387 = addcarryx_u32(x384, x335, x368);
- uint32_t x389, uint8_t x390 = addcarryx_u32(x387, x338, x371);
- uint32_t x392, uint8_t x393 = addcarryx_u32(x390, x341, x374);
- uint32_t x395, uint8_t x396 = addcarryx_u32(x393, x344, x377);
- uint32_t x398, uint8_t x399 = addcarryx_u32(x396, x347, x380);
- uint8_t x400 = (x399 + x348);
- uint32_t x402, uint32_t x403 = mulx_u32(x10, x13);
- uint32_t x405, uint32_t x406 = mulx_u32(x10, x15);
- uint32_t x408, uint32_t x409 = mulx_u32(x10, x17);
- uint32_t x411, uint32_t x412 = mulx_u32(x10, x19);
- uint32_t x414, uint32_t x415 = mulx_u32(x10, x18);
- uint32_t x417, uint8_t x418 = addcarryx_u32(0x0, x403, x405);
- uint32_t x420, uint8_t x421 = addcarryx_u32(x418, x406, x408);
- uint32_t x423, uint8_t x424 = addcarryx_u32(x421, x409, x411);
- uint32_t x426, uint8_t x427 = addcarryx_u32(x424, x412, x414);
- uint32_t x429, uint8_t _ = addcarryx_u32(0x0, x427, x415);
- uint32_t x432, uint8_t x433 = addcarryx_u32(0x0, x386, x402);
- uint32_t x435, uint8_t x436 = addcarryx_u32(x433, x389, x417);
- uint32_t x438, uint8_t x439 = addcarryx_u32(x436, x392, x420);
- uint32_t x441, uint8_t x442 = addcarryx_u32(x439, x395, x423);
- uint32_t x444, uint8_t x445 = addcarryx_u32(x442, x398, x426);
- uint32_t x447, uint8_t x448 = addcarryx_u32(x445, x400, x429);
- uint32_t x450, uint32_t _ = mulx_u32(x432, 0xc4ec4ec5);
- uint32_t x453, uint32_t x454 = mulx_u32(x450, 0xfffffff3);
- uint32_t x456, uint32_t x457 = mulx_u32(x450, 0xffffffff);
- uint32_t x459, uint32_t x460 = mulx_u32(x450, 0xffffffff);
- uint32_t x462, uint32_t x463 = mulx_u32(x450, 0xffffffff);
- uint32_t x465, uint32_t x466 = mulx_u32(x450, 0x1ff);
- uint32_t x468, uint8_t x469 = addcarryx_u32(0x0, x454, x456);
- uint32_t x471, uint8_t x472 = addcarryx_u32(x469, x457, x459);
- uint32_t x474, uint8_t x475 = addcarryx_u32(x472, x460, x462);
- uint32_t x477, uint8_t x478 = addcarryx_u32(x475, x463, x465);
- uint32_t x480, uint8_t _ = addcarryx_u32(0x0, x478, x466);
- uint32_t _, uint8_t x484 = addcarryx_u32(0x0, x432, x453);
- uint32_t x486, uint8_t x487 = addcarryx_u32(x484, x435, x468);
- uint32_t x489, uint8_t x490 = addcarryx_u32(x487, x438, x471);
- uint32_t x492, uint8_t x493 = addcarryx_u32(x490, x441, x474);
- uint32_t x495, uint8_t x496 = addcarryx_u32(x493, x444, x477);
- uint32_t x498, uint8_t x499 = addcarryx_u32(x496, x447, x480);
- uint8_t x500 = (x499 + x448);
- uint32_t x502, uint8_t x503 = subborrow_u32(0x0, x486, 0xfffffff3);
- uint32_t x505, uint8_t x506 = subborrow_u32(x503, x489, 0xffffffff);
- uint32_t x508, uint8_t x509 = subborrow_u32(x506, x492, 0xffffffff);
- uint32_t x511, uint8_t x512 = subborrow_u32(x509, x495, 0xffffffff);
- uint32_t x514, uint8_t x515 = subborrow_u32(x512, x498, 0x1ff);
- uint32_t _, uint8_t x518 = subborrow_u32(x515, x500, 0x0);
- uint32_t x519 = cmovznz32(x518, x514, x498);
- uint32_t x520 = cmovznz32(x518, x511, x495);
- uint32_t x521 = cmovznz32(x518, x508, x492);
- uint32_t x522 = cmovznz32(x518, x505, x489);
- uint32_t x523 = cmovznz32(x518, x502, x486);
- return (x519, x520, x521, x522, x523))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e137m13_5limbs/femulDisplay.v b/src/Specific/montgomery32_2e137m13_5limbs/femulDisplay.v
deleted file mode 100644
index ba617c773..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e137m13_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e137m13_5limbs/fenz.c b/src/Specific/montgomery32_2e137m13_5limbs/fenz.c
deleted file mode 100644
index 5601e8c15..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/fenz.c
+++ /dev/null
@@ -1,13 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x9 = (x8 | x7);
- { uint32_t x10 = (x6 | x9);
- { uint32_t x11 = (x4 | x10);
- { uint32_t x12 = (x2 | x11);
- out[0] = x12;
- }}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e137m13_5limbs/fenz.v b/src/Specific/montgomery32_2e137m13_5limbs/fenz.v
deleted file mode 100644
index 73595f696..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e137m13_5limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e137m13_5limbs/fenzDisplay.log b/src/Specific/montgomery32_2e137m13_5limbs/fenzDisplay.log
deleted file mode 100644
index 723d13164..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/fenzDisplay.log
+++ /dev/null
@@ -1,11 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint32_t x9 = (x8 | x7);
- uint32_t x10 = (x6 | x9);
- uint32_t x11 = (x4 | x10);
- uint32_t x12 = (x2 | x11);
- return x12)
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e137m13_5limbs/fenzDisplay.v b/src/Specific/montgomery32_2e137m13_5limbs/fenzDisplay.v
deleted file mode 100644
index c080f5f06..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e137m13_5limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e137m13_5limbs/feopp.c b/src/Specific/montgomery32_2e137m13_5limbs/feopp.c
deleted file mode 100644
index 39924b58e..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/feopp.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void feopp(uint32_t out[5], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x10; uint8_t x11 = _subborrow_u32(0x0, 0x0, x2, &x10);
- { uint32_t x13; uint8_t x14 = _subborrow_u32(x11, 0x0, x4, &x13);
- { uint32_t x16; uint8_t x17 = _subborrow_u32(x14, 0x0, x6, &x16);
- { uint32_t x19; uint8_t x20 = _subborrow_u32(x17, 0x0, x8, &x19);
- { uint32_t x22; uint8_t x23 = _subborrow_u32(x20, 0x0, x7, &x22);
- { uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- { uint32_t x25 = (x24 & 0xfffffff3);
- { uint32_t x27; uint8_t x28 = _addcarryx_u32(0x0, x10, x25, &x27);
- { uint32_t x29 = (x24 & 0xffffffff);
- { uint32_t x31; uint8_t x32 = _addcarryx_u32(x28, x13, x29, &x31);
- { uint32_t x33 = (x24 & 0xffffffff);
- { uint32_t x35; uint8_t x36 = _addcarryx_u32(x32, x16, x33, &x35);
- { uint32_t x37 = (x24 & 0xffffffff);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x36, x19, x37, &x39);
- { uint32_t x41 = (x24 & 0x1ff);
- { uint32_t x43; uint8_t _ = _addcarryx_u32(x40, x22, x41, &x43);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e137m13_5limbs/feopp.v b/src/Specific/montgomery32_2e137m13_5limbs/feopp.v
deleted file mode 100644
index c701f3fc4..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e137m13_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e137m13_5limbs/feoppDisplay.log b/src/Specific/montgomery32_2e137m13_5limbs/feoppDisplay.log
deleted file mode 100644
index f1cfb1f67..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/feoppDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint32_t x10, uint8_t x11 = subborrow_u32(0x0, 0x0, x2);
- uint32_t x13, uint8_t x14 = subborrow_u32(x11, 0x0, x4);
- uint32_t x16, uint8_t x17 = subborrow_u32(x14, 0x0, x6);
- uint32_t x19, uint8_t x20 = subborrow_u32(x17, 0x0, x8);
- uint32_t x22, uint8_t x23 = subborrow_u32(x20, 0x0, x7);
- uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- uint32_t x25 = (x24 & 0xfffffff3);
- uint32_t x27, uint8_t x28 = addcarryx_u32(0x0, x10, x25);
- uint32_t x29 = (x24 & 0xffffffff);
- uint32_t x31, uint8_t x32 = addcarryx_u32(x28, x13, x29);
- uint32_t x33 = (x24 & 0xffffffff);
- uint32_t x35, uint8_t x36 = addcarryx_u32(x32, x16, x33);
- uint32_t x37 = (x24 & 0xffffffff);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x36, x19, x37);
- uint32_t x41 = (x24 & 0x1ff);
- uint32_t x43, uint8_t _ = addcarryx_u32(x40, x22, x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e137m13_5limbs/feoppDisplay.v b/src/Specific/montgomery32_2e137m13_5limbs/feoppDisplay.v
deleted file mode 100644
index daa6255a6..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e137m13_5limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e137m13_5limbs/fesquare.c b/src/Specific/montgomery32_2e137m13_5limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e137m13_5limbs/fesub.c b/src/Specific/montgomery32_2e137m13_5limbs/fesub.c
deleted file mode 100644
index ee8fe44ce..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/fesub.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void fesub(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x21; uint8_t x22 = _subborrow_u32(0x0, x5, x13, &x21);
- { uint32_t x24; uint8_t x25 = _subborrow_u32(x22, x7, x15, &x24);
- { uint32_t x27; uint8_t x28 = _subborrow_u32(x25, x9, x17, &x27);
- { uint32_t x30; uint8_t x31 = _subborrow_u32(x28, x11, x19, &x30);
- { uint32_t x33; uint8_t x34 = _subborrow_u32(x31, x10, x18, &x33);
- { uint32_t x35 = cmovznz32(x34, 0x0, 0xffffffff);
- { uint32_t x36 = (x35 & 0xfffffff3);
- { uint32_t x38; uint8_t x39 = _addcarryx_u32(0x0, x21, x36, &x38);
- { uint32_t x40 = (x35 & 0xffffffff);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x39, x24, x40, &x42);
- { uint32_t x44 = (x35 & 0xffffffff);
- { uint32_t x46; uint8_t x47 = _addcarryx_u32(x43, x27, x44, &x46);
- { uint32_t x48 = (x35 & 0xffffffff);
- { uint32_t x50; uint8_t x51 = _addcarryx_u32(x47, x30, x48, &x50);
- { uint32_t x52 = (x35 & 0x1ff);
- { uint32_t x54; uint8_t _ = _addcarryx_u32(x51, x33, x52, &x54);
- out[0] = x38;
- out[1] = x42;
- out[2] = x46;
- out[3] = x50;
- out[4] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e137m13_5limbs/fesub.v b/src/Specific/montgomery32_2e137m13_5limbs/fesub.v
deleted file mode 100644
index 553ed7091..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e137m13_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e137m13_5limbs/fesubDisplay.log b/src/Specific/montgomery32_2e137m13_5limbs/fesubDisplay.log
deleted file mode 100644
index 795077b02..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint8_t x22 = subborrow_u32(0x0, x5, x13);
- uint32_t x24, uint8_t x25 = subborrow_u32(x22, x7, x15);
- uint32_t x27, uint8_t x28 = subborrow_u32(x25, x9, x17);
- uint32_t x30, uint8_t x31 = subborrow_u32(x28, x11, x19);
- uint32_t x33, uint8_t x34 = subborrow_u32(x31, x10, x18);
- uint32_t x35 = cmovznz32(x34, 0x0, 0xffffffff);
- uint32_t x36 = (x35 & 0xfffffff3);
- uint32_t x38, uint8_t x39 = addcarryx_u32(0x0, x21, x36);
- uint32_t x40 = (x35 & 0xffffffff);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x39, x24, x40);
- uint32_t x44 = (x35 & 0xffffffff);
- uint32_t x46, uint8_t x47 = addcarryx_u32(x43, x27, x44);
- uint32_t x48 = (x35 & 0xffffffff);
- uint32_t x50, uint8_t x51 = addcarryx_u32(x47, x30, x48);
- uint32_t x52 = (x35 & 0x1ff);
- uint32_t x54, uint8_t _ = addcarryx_u32(x51, x33, x52);
- (Return x54, Return x50, Return x46, Return x42, Return x38))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e137m13_5limbs/fesubDisplay.v b/src/Specific/montgomery32_2e137m13_5limbs/fesubDisplay.v
deleted file mode 100644
index 3e210f0e0..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e137m13_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e137m13_5limbs/py_interpreter.sh b/src/Specific/montgomery32_2e137m13_5limbs/py_interpreter.sh
deleted file mode 100755
index 50240a08b..000000000
--- a/src/Specific/montgomery32_2e137m13_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**137 - 13' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e140m27_5limbs/CurveParameters.v b/src/Specific/montgomery32_2e140m27_5limbs/CurveParameters.v
deleted file mode 100644
index 541761b3b..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^140 - 27
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 32;
- bitwidth := 32;
- s := 2^140;
- c := [(1, 27)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e140m27_5limbs/Synthesis.v b/src/Specific/montgomery32_2e140m27_5limbs/Synthesis.v
deleted file mode 100644
index 5d3a616f1..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e140m27_5limbs.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/montgomery32_2e140m27_5limbs/compiler.sh b/src/Specific/montgomery32_2e140m27_5limbs/compiler.sh
deleted file mode 100755
index 717963c99..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<140) - 27' "$@"
diff --git a/src/Specific/montgomery32_2e140m27_5limbs/compilerxx.sh b/src/Specific/montgomery32_2e140m27_5limbs/compilerxx.sh
deleted file mode 100755
index 2e3e981cd..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<140) - 27' "$@"
diff --git a/src/Specific/montgomery32_2e140m27_5limbs/feadd.c b/src/Specific/montgomery32_2e140m27_5limbs/feadd.c
deleted file mode 100644
index a836d6e4b..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/feadd.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feadd(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x21; uint8_t x22 = _addcarryx_u32(0x0, x5, x13, &x21);
- { uint32_t x24; uint8_t x25 = _addcarryx_u32(x22, x7, x15, &x24);
- { uint32_t x27; uint8_t x28 = _addcarryx_u32(x25, x9, x17, &x27);
- { uint32_t x30; uint8_t x31 = _addcarryx_u32(x28, x11, x19, &x30);
- { uint32_t x33; uint8_t x34 = _addcarryx_u32(x31, x10, x18, &x33);
- { uint32_t x36; uint8_t x37 = _subborrow_u32(0x0, x21, 0xffffffe5, &x36);
- { uint32_t x39; uint8_t x40 = _subborrow_u32(x37, x24, 0xffffffff, &x39);
- { uint32_t x42; uint8_t x43 = _subborrow_u32(x40, x27, 0xffffffff, &x42);
- { uint32_t x45; uint8_t x46 = _subborrow_u32(x43, x30, 0xffffffff, &x45);
- { uint32_t x48; uint8_t x49 = _subborrow_u32(x46, x33, 0xfff, &x48);
- { uint32_t _; uint8_t x52 = _subborrow_u32(x49, x34, 0x0, &_);
- { uint32_t x53 = cmovznz32(x52, x48, x33);
- { uint32_t x54 = cmovznz32(x52, x45, x30);
- { uint32_t x55 = cmovznz32(x52, x42, x27);
- { uint32_t x56 = cmovznz32(x52, x39, x24);
- { uint32_t x57 = cmovznz32(x52, x36, x21);
- out[0] = x57;
- out[1] = x56;
- out[2] = x55;
- out[3] = x54;
- out[4] = x53;
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e140m27_5limbs/feadd.v b/src/Specific/montgomery32_2e140m27_5limbs/feadd.v
deleted file mode 100644
index b162d72d8..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e140m27_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e140m27_5limbs/feaddDisplay.log b/src/Specific/montgomery32_2e140m27_5limbs/feaddDisplay.log
deleted file mode 100644
index 1d528f09a..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint8_t x22 = addcarryx_u32(0x0, x5, x13);
- uint32_t x24, uint8_t x25 = addcarryx_u32(x22, x7, x15);
- uint32_t x27, uint8_t x28 = addcarryx_u32(x25, x9, x17);
- uint32_t x30, uint8_t x31 = addcarryx_u32(x28, x11, x19);
- uint32_t x33, uint8_t x34 = addcarryx_u32(x31, x10, x18);
- uint32_t x36, uint8_t x37 = subborrow_u32(0x0, x21, 0xffffffe5);
- uint32_t x39, uint8_t x40 = subborrow_u32(x37, x24, 0xffffffff);
- uint32_t x42, uint8_t x43 = subborrow_u32(x40, x27, 0xffffffff);
- uint32_t x45, uint8_t x46 = subborrow_u32(x43, x30, 0xffffffff);
- uint32_t x48, uint8_t x49 = subborrow_u32(x46, x33, 0xfff);
- uint32_t _, uint8_t x52 = subborrow_u32(x49, x34, 0x0);
- uint32_t x53 = cmovznz32(x52, x48, x33);
- uint32_t x54 = cmovznz32(x52, x45, x30);
- uint32_t x55 = cmovznz32(x52, x42, x27);
- uint32_t x56 = cmovznz32(x52, x39, x24);
- uint32_t x57 = cmovznz32(x52, x36, x21);
- return (x53, x54, x55, x56, x57))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e140m27_5limbs/feaddDisplay.v b/src/Specific/montgomery32_2e140m27_5limbs/feaddDisplay.v
deleted file mode 100644
index 8c4b08316..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e140m27_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e140m27_5limbs/femul.c b/src/Specific/montgomery32_2e140m27_5limbs/femul.c
deleted file mode 100644
index 71d6053f7..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/femul.c
+++ /dev/null
@@ -1,192 +0,0 @@
-static void femul(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x22; uint32_t x21 = _mulx_u32(x5, x13, &x22);
- { uint32_t x25; uint32_t x24 = _mulx_u32(x5, x15, &x25);
- { uint32_t x28; uint32_t x27 = _mulx_u32(x5, x17, &x28);
- { uint32_t x31; uint32_t x30 = _mulx_u32(x5, x19, &x31);
- { uint32_t x34; uint32_t x33 = _mulx_u32(x5, x18, &x34);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(0x0, x22, x24, &x36);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x37, x25, x27, &x39);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x40, x28, x30, &x42);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(x43, x31, x33, &x45);
- { uint32_t x48; uint8_t _ = _addcarryx_u32(0x0, x46, x34, &x48);
- { uint32_t _; uint32_t x51 = _mulx_u32(x21, 0x684bda13, &_);
- { uint32_t x55; uint32_t x54 = _mulx_u32(x51, 0xffffffe5, &x55);
- { uint32_t x58; uint32_t x57 = _mulx_u32(x51, 0xffffffff, &x58);
- { uint32_t x61; uint32_t x60 = _mulx_u32(x51, 0xffffffff, &x61);
- { uint32_t x64; uint32_t x63 = _mulx_u32(x51, 0xffffffff, &x64);
- { uint32_t x67; uint32_t x66 = _mulx_u32(x51, 0xfff, &x67);
- { uint32_t x69; uint8_t x70 = _addcarryx_u32(0x0, x55, x57, &x69);
- { uint32_t x72; uint8_t x73 = _addcarryx_u32(x70, x58, x60, &x72);
- { uint32_t x75; uint8_t x76 = _addcarryx_u32(x73, x61, x63, &x75);
- { uint32_t x78; uint8_t x79 = _addcarryx_u32(x76, x64, x66, &x78);
- { uint32_t x81; uint8_t _ = _addcarryx_u32(0x0, x79, x67, &x81);
- { uint32_t _; uint8_t x85 = _addcarryx_u32(0x0, x21, x54, &_);
- { uint32_t x87; uint8_t x88 = _addcarryx_u32(x85, x36, x69, &x87);
- { uint32_t x90; uint8_t x91 = _addcarryx_u32(x88, x39, x72, &x90);
- { uint32_t x93; uint8_t x94 = _addcarryx_u32(x91, x42, x75, &x93);
- { uint32_t x96; uint8_t x97 = _addcarryx_u32(x94, x45, x78, &x96);
- { uint32_t x99; uint8_t x100 = _addcarryx_u32(x97, x48, x81, &x99);
- { uint32_t x103; uint32_t x102 = _mulx_u32(x7, x13, &x103);
- { uint32_t x106; uint32_t x105 = _mulx_u32(x7, x15, &x106);
- { uint32_t x109; uint32_t x108 = _mulx_u32(x7, x17, &x109);
- { uint32_t x112; uint32_t x111 = _mulx_u32(x7, x19, &x112);
- { uint32_t x115; uint32_t x114 = _mulx_u32(x7, x18, &x115);
- { uint32_t x117; uint8_t x118 = _addcarryx_u32(0x0, x103, x105, &x117);
- { uint32_t x120; uint8_t x121 = _addcarryx_u32(x118, x106, x108, &x120);
- { uint32_t x123; uint8_t x124 = _addcarryx_u32(x121, x109, x111, &x123);
- { uint32_t x126; uint8_t x127 = _addcarryx_u32(x124, x112, x114, &x126);
- { uint32_t x129; uint8_t _ = _addcarryx_u32(0x0, x127, x115, &x129);
- { uint32_t x132; uint8_t x133 = _addcarryx_u32(0x0, x87, x102, &x132);
- { uint32_t x135; uint8_t x136 = _addcarryx_u32(x133, x90, x117, &x135);
- { uint32_t x138; uint8_t x139 = _addcarryx_u32(x136, x93, x120, &x138);
- { uint32_t x141; uint8_t x142 = _addcarryx_u32(x139, x96, x123, &x141);
- { uint32_t x144; uint8_t x145 = _addcarryx_u32(x142, x99, x126, &x144);
- { uint32_t x147; uint8_t x148 = _addcarryx_u32(x145, x100, x129, &x147);
- { uint32_t _; uint32_t x150 = _mulx_u32(x132, 0x684bda13, &_);
- { uint32_t x154; uint32_t x153 = _mulx_u32(x150, 0xffffffe5, &x154);
- { uint32_t x157; uint32_t x156 = _mulx_u32(x150, 0xffffffff, &x157);
- { uint32_t x160; uint32_t x159 = _mulx_u32(x150, 0xffffffff, &x160);
- { uint32_t x163; uint32_t x162 = _mulx_u32(x150, 0xffffffff, &x163);
- { uint32_t x166; uint32_t x165 = _mulx_u32(x150, 0xfff, &x166);
- { uint32_t x168; uint8_t x169 = _addcarryx_u32(0x0, x154, x156, &x168);
- { uint32_t x171; uint8_t x172 = _addcarryx_u32(x169, x157, x159, &x171);
- { uint32_t x174; uint8_t x175 = _addcarryx_u32(x172, x160, x162, &x174);
- { uint32_t x177; uint8_t x178 = _addcarryx_u32(x175, x163, x165, &x177);
- { uint32_t x180; uint8_t _ = _addcarryx_u32(0x0, x178, x166, &x180);
- { uint32_t _; uint8_t x184 = _addcarryx_u32(0x0, x132, x153, &_);
- { uint32_t x186; uint8_t x187 = _addcarryx_u32(x184, x135, x168, &x186);
- { uint32_t x189; uint8_t x190 = _addcarryx_u32(x187, x138, x171, &x189);
- { uint32_t x192; uint8_t x193 = _addcarryx_u32(x190, x141, x174, &x192);
- { uint32_t x195; uint8_t x196 = _addcarryx_u32(x193, x144, x177, &x195);
- { uint32_t x198; uint8_t x199 = _addcarryx_u32(x196, x147, x180, &x198);
- { uint8_t x200 = (x199 + x148);
- { uint32_t x203; uint32_t x202 = _mulx_u32(x9, x13, &x203);
- { uint32_t x206; uint32_t x205 = _mulx_u32(x9, x15, &x206);
- { uint32_t x209; uint32_t x208 = _mulx_u32(x9, x17, &x209);
- { uint32_t x212; uint32_t x211 = _mulx_u32(x9, x19, &x212);
- { uint32_t x215; uint32_t x214 = _mulx_u32(x9, x18, &x215);
- { uint32_t x217; uint8_t x218 = _addcarryx_u32(0x0, x203, x205, &x217);
- { uint32_t x220; uint8_t x221 = _addcarryx_u32(x218, x206, x208, &x220);
- { uint32_t x223; uint8_t x224 = _addcarryx_u32(x221, x209, x211, &x223);
- { uint32_t x226; uint8_t x227 = _addcarryx_u32(x224, x212, x214, &x226);
- { uint32_t x229; uint8_t _ = _addcarryx_u32(0x0, x227, x215, &x229);
- { uint32_t x232; uint8_t x233 = _addcarryx_u32(0x0, x186, x202, &x232);
- { uint32_t x235; uint8_t x236 = _addcarryx_u32(x233, x189, x217, &x235);
- { uint32_t x238; uint8_t x239 = _addcarryx_u32(x236, x192, x220, &x238);
- { uint32_t x241; uint8_t x242 = _addcarryx_u32(x239, x195, x223, &x241);
- { uint32_t x244; uint8_t x245 = _addcarryx_u32(x242, x198, x226, &x244);
- { uint32_t x247; uint8_t x248 = _addcarryx_u32(x245, x200, x229, &x247);
- { uint32_t _; uint32_t x250 = _mulx_u32(x232, 0x684bda13, &_);
- { uint32_t x254; uint32_t x253 = _mulx_u32(x250, 0xffffffe5, &x254);
- { uint32_t x257; uint32_t x256 = _mulx_u32(x250, 0xffffffff, &x257);
- { uint32_t x260; uint32_t x259 = _mulx_u32(x250, 0xffffffff, &x260);
- { uint32_t x263; uint32_t x262 = _mulx_u32(x250, 0xffffffff, &x263);
- { uint32_t x266; uint32_t x265 = _mulx_u32(x250, 0xfff, &x266);
- { uint32_t x268; uint8_t x269 = _addcarryx_u32(0x0, x254, x256, &x268);
- { uint32_t x271; uint8_t x272 = _addcarryx_u32(x269, x257, x259, &x271);
- { uint32_t x274; uint8_t x275 = _addcarryx_u32(x272, x260, x262, &x274);
- { uint32_t x277; uint8_t x278 = _addcarryx_u32(x275, x263, x265, &x277);
- { uint32_t x280; uint8_t _ = _addcarryx_u32(0x0, x278, x266, &x280);
- { uint32_t _; uint8_t x284 = _addcarryx_u32(0x0, x232, x253, &_);
- { uint32_t x286; uint8_t x287 = _addcarryx_u32(x284, x235, x268, &x286);
- { uint32_t x289; uint8_t x290 = _addcarryx_u32(x287, x238, x271, &x289);
- { uint32_t x292; uint8_t x293 = _addcarryx_u32(x290, x241, x274, &x292);
- { uint32_t x295; uint8_t x296 = _addcarryx_u32(x293, x244, x277, &x295);
- { uint32_t x298; uint8_t x299 = _addcarryx_u32(x296, x247, x280, &x298);
- { uint8_t x300 = (x299 + x248);
- { uint32_t x303; uint32_t x302 = _mulx_u32(x11, x13, &x303);
- { uint32_t x306; uint32_t x305 = _mulx_u32(x11, x15, &x306);
- { uint32_t x309; uint32_t x308 = _mulx_u32(x11, x17, &x309);
- { uint32_t x312; uint32_t x311 = _mulx_u32(x11, x19, &x312);
- { uint32_t x315; uint32_t x314 = _mulx_u32(x11, x18, &x315);
- { uint32_t x317; uint8_t x318 = _addcarryx_u32(0x0, x303, x305, &x317);
- { uint32_t x320; uint8_t x321 = _addcarryx_u32(x318, x306, x308, &x320);
- { uint32_t x323; uint8_t x324 = _addcarryx_u32(x321, x309, x311, &x323);
- { uint32_t x326; uint8_t x327 = _addcarryx_u32(x324, x312, x314, &x326);
- { uint32_t x329; uint8_t _ = _addcarryx_u32(0x0, x327, x315, &x329);
- { uint32_t x332; uint8_t x333 = _addcarryx_u32(0x0, x286, x302, &x332);
- { uint32_t x335; uint8_t x336 = _addcarryx_u32(x333, x289, x317, &x335);
- { uint32_t x338; uint8_t x339 = _addcarryx_u32(x336, x292, x320, &x338);
- { uint32_t x341; uint8_t x342 = _addcarryx_u32(x339, x295, x323, &x341);
- { uint32_t x344; uint8_t x345 = _addcarryx_u32(x342, x298, x326, &x344);
- { uint32_t x347; uint8_t x348 = _addcarryx_u32(x345, x300, x329, &x347);
- { uint32_t _; uint32_t x350 = _mulx_u32(x332, 0x684bda13, &_);
- { uint32_t x354; uint32_t x353 = _mulx_u32(x350, 0xffffffe5, &x354);
- { uint32_t x357; uint32_t x356 = _mulx_u32(x350, 0xffffffff, &x357);
- { uint32_t x360; uint32_t x359 = _mulx_u32(x350, 0xffffffff, &x360);
- { uint32_t x363; uint32_t x362 = _mulx_u32(x350, 0xffffffff, &x363);
- { uint32_t x366; uint32_t x365 = _mulx_u32(x350, 0xfff, &x366);
- { uint32_t x368; uint8_t x369 = _addcarryx_u32(0x0, x354, x356, &x368);
- { uint32_t x371; uint8_t x372 = _addcarryx_u32(x369, x357, x359, &x371);
- { uint32_t x374; uint8_t x375 = _addcarryx_u32(x372, x360, x362, &x374);
- { uint32_t x377; uint8_t x378 = _addcarryx_u32(x375, x363, x365, &x377);
- { uint32_t x380; uint8_t _ = _addcarryx_u32(0x0, x378, x366, &x380);
- { uint32_t _; uint8_t x384 = _addcarryx_u32(0x0, x332, x353, &_);
- { uint32_t x386; uint8_t x387 = _addcarryx_u32(x384, x335, x368, &x386);
- { uint32_t x389; uint8_t x390 = _addcarryx_u32(x387, x338, x371, &x389);
- { uint32_t x392; uint8_t x393 = _addcarryx_u32(x390, x341, x374, &x392);
- { uint32_t x395; uint8_t x396 = _addcarryx_u32(x393, x344, x377, &x395);
- { uint32_t x398; uint8_t x399 = _addcarryx_u32(x396, x347, x380, &x398);
- { uint8_t x400 = (x399 + x348);
- { uint32_t x403; uint32_t x402 = _mulx_u32(x10, x13, &x403);
- { uint32_t x406; uint32_t x405 = _mulx_u32(x10, x15, &x406);
- { uint32_t x409; uint32_t x408 = _mulx_u32(x10, x17, &x409);
- { uint32_t x412; uint32_t x411 = _mulx_u32(x10, x19, &x412);
- { uint32_t x415; uint32_t x414 = _mulx_u32(x10, x18, &x415);
- { uint32_t x417; uint8_t x418 = _addcarryx_u32(0x0, x403, x405, &x417);
- { uint32_t x420; uint8_t x421 = _addcarryx_u32(x418, x406, x408, &x420);
- { uint32_t x423; uint8_t x424 = _addcarryx_u32(x421, x409, x411, &x423);
- { uint32_t x426; uint8_t x427 = _addcarryx_u32(x424, x412, x414, &x426);
- { uint32_t x429; uint8_t _ = _addcarryx_u32(0x0, x427, x415, &x429);
- { uint32_t x432; uint8_t x433 = _addcarryx_u32(0x0, x386, x402, &x432);
- { uint32_t x435; uint8_t x436 = _addcarryx_u32(x433, x389, x417, &x435);
- { uint32_t x438; uint8_t x439 = _addcarryx_u32(x436, x392, x420, &x438);
- { uint32_t x441; uint8_t x442 = _addcarryx_u32(x439, x395, x423, &x441);
- { uint32_t x444; uint8_t x445 = _addcarryx_u32(x442, x398, x426, &x444);
- { uint32_t x447; uint8_t x448 = _addcarryx_u32(x445, x400, x429, &x447);
- { uint32_t _; uint32_t x450 = _mulx_u32(x432, 0x684bda13, &_);
- { uint32_t x454; uint32_t x453 = _mulx_u32(x450, 0xffffffe5, &x454);
- { uint32_t x457; uint32_t x456 = _mulx_u32(x450, 0xffffffff, &x457);
- { uint32_t x460; uint32_t x459 = _mulx_u32(x450, 0xffffffff, &x460);
- { uint32_t x463; uint32_t x462 = _mulx_u32(x450, 0xffffffff, &x463);
- { uint32_t x466; uint32_t x465 = _mulx_u32(x450, 0xfff, &x466);
- { uint32_t x468; uint8_t x469 = _addcarryx_u32(0x0, x454, x456, &x468);
- { uint32_t x471; uint8_t x472 = _addcarryx_u32(x469, x457, x459, &x471);
- { uint32_t x474; uint8_t x475 = _addcarryx_u32(x472, x460, x462, &x474);
- { uint32_t x477; uint8_t x478 = _addcarryx_u32(x475, x463, x465, &x477);
- { uint32_t x480; uint8_t _ = _addcarryx_u32(0x0, x478, x466, &x480);
- { uint32_t _; uint8_t x484 = _addcarryx_u32(0x0, x432, x453, &_);
- { uint32_t x486; uint8_t x487 = _addcarryx_u32(x484, x435, x468, &x486);
- { uint32_t x489; uint8_t x490 = _addcarryx_u32(x487, x438, x471, &x489);
- { uint32_t x492; uint8_t x493 = _addcarryx_u32(x490, x441, x474, &x492);
- { uint32_t x495; uint8_t x496 = _addcarryx_u32(x493, x444, x477, &x495);
- { uint32_t x498; uint8_t x499 = _addcarryx_u32(x496, x447, x480, &x498);
- { uint8_t x500 = (x499 + x448);
- { uint32_t x502; uint8_t x503 = _subborrow_u32(0x0, x486, 0xffffffe5, &x502);
- { uint32_t x505; uint8_t x506 = _subborrow_u32(x503, x489, 0xffffffff, &x505);
- { uint32_t x508; uint8_t x509 = _subborrow_u32(x506, x492, 0xffffffff, &x508);
- { uint32_t x511; uint8_t x512 = _subborrow_u32(x509, x495, 0xffffffff, &x511);
- { uint32_t x514; uint8_t x515 = _subborrow_u32(x512, x498, 0xfff, &x514);
- { uint32_t _; uint8_t x518 = _subborrow_u32(x515, x500, 0x0, &_);
- { uint32_t x519 = cmovznz32(x518, x514, x498);
- { uint32_t x520 = cmovznz32(x518, x511, x495);
- { uint32_t x521 = cmovznz32(x518, x508, x492);
- { uint32_t x522 = cmovznz32(x518, x505, x489);
- { uint32_t x523 = cmovznz32(x518, x502, x486);
- out[0] = x523;
- out[1] = x522;
- out[2] = x521;
- out[3] = x520;
- out[4] = x519;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e140m27_5limbs/femul.v b/src/Specific/montgomery32_2e140m27_5limbs/femul.v
deleted file mode 100644
index ccdbc9a54..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e140m27_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e140m27_5limbs/femulDisplay.log b/src/Specific/montgomery32_2e140m27_5limbs/femulDisplay.log
deleted file mode 100644
index 5dfdbcff6..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,181 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint32_t x22 = mulx_u32(x5, x13);
- uint32_t x24, uint32_t x25 = mulx_u32(x5, x15);
- uint32_t x27, uint32_t x28 = mulx_u32(x5, x17);
- uint32_t x30, uint32_t x31 = mulx_u32(x5, x19);
- uint32_t x33, uint32_t x34 = mulx_u32(x5, x18);
- uint32_t x36, uint8_t x37 = addcarryx_u32(0x0, x22, x24);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x37, x25, x27);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x40, x28, x30);
- uint32_t x45, uint8_t x46 = addcarryx_u32(x43, x31, x33);
- uint32_t x48, uint8_t _ = addcarryx_u32(0x0, x46, x34);
- uint32_t x51, uint32_t _ = mulx_u32(x21, 0x684bda13);
- uint32_t x54, uint32_t x55 = mulx_u32(x51, 0xffffffe5);
- uint32_t x57, uint32_t x58 = mulx_u32(x51, 0xffffffff);
- uint32_t x60, uint32_t x61 = mulx_u32(x51, 0xffffffff);
- uint32_t x63, uint32_t x64 = mulx_u32(x51, 0xffffffff);
- uint32_t x66, uint32_t x67 = mulx_u32(x51, 0xfff);
- uint32_t x69, uint8_t x70 = addcarryx_u32(0x0, x55, x57);
- uint32_t x72, uint8_t x73 = addcarryx_u32(x70, x58, x60);
- uint32_t x75, uint8_t x76 = addcarryx_u32(x73, x61, x63);
- uint32_t x78, uint8_t x79 = addcarryx_u32(x76, x64, x66);
- uint32_t x81, uint8_t _ = addcarryx_u32(0x0, x79, x67);
- uint32_t _, uint8_t x85 = addcarryx_u32(0x0, x21, x54);
- uint32_t x87, uint8_t x88 = addcarryx_u32(x85, x36, x69);
- uint32_t x90, uint8_t x91 = addcarryx_u32(x88, x39, x72);
- uint32_t x93, uint8_t x94 = addcarryx_u32(x91, x42, x75);
- uint32_t x96, uint8_t x97 = addcarryx_u32(x94, x45, x78);
- uint32_t x99, uint8_t x100 = addcarryx_u32(x97, x48, x81);
- uint32_t x102, uint32_t x103 = mulx_u32(x7, x13);
- uint32_t x105, uint32_t x106 = mulx_u32(x7, x15);
- uint32_t x108, uint32_t x109 = mulx_u32(x7, x17);
- uint32_t x111, uint32_t x112 = mulx_u32(x7, x19);
- uint32_t x114, uint32_t x115 = mulx_u32(x7, x18);
- uint32_t x117, uint8_t x118 = addcarryx_u32(0x0, x103, x105);
- uint32_t x120, uint8_t x121 = addcarryx_u32(x118, x106, x108);
- uint32_t x123, uint8_t x124 = addcarryx_u32(x121, x109, x111);
- uint32_t x126, uint8_t x127 = addcarryx_u32(x124, x112, x114);
- uint32_t x129, uint8_t _ = addcarryx_u32(0x0, x127, x115);
- uint32_t x132, uint8_t x133 = addcarryx_u32(0x0, x87, x102);
- uint32_t x135, uint8_t x136 = addcarryx_u32(x133, x90, x117);
- uint32_t x138, uint8_t x139 = addcarryx_u32(x136, x93, x120);
- uint32_t x141, uint8_t x142 = addcarryx_u32(x139, x96, x123);
- uint32_t x144, uint8_t x145 = addcarryx_u32(x142, x99, x126);
- uint32_t x147, uint8_t x148 = addcarryx_u32(x145, x100, x129);
- uint32_t x150, uint32_t _ = mulx_u32(x132, 0x684bda13);
- uint32_t x153, uint32_t x154 = mulx_u32(x150, 0xffffffe5);
- uint32_t x156, uint32_t x157 = mulx_u32(x150, 0xffffffff);
- uint32_t x159, uint32_t x160 = mulx_u32(x150, 0xffffffff);
- uint32_t x162, uint32_t x163 = mulx_u32(x150, 0xffffffff);
- uint32_t x165, uint32_t x166 = mulx_u32(x150, 0xfff);
- uint32_t x168, uint8_t x169 = addcarryx_u32(0x0, x154, x156);
- uint32_t x171, uint8_t x172 = addcarryx_u32(x169, x157, x159);
- uint32_t x174, uint8_t x175 = addcarryx_u32(x172, x160, x162);
- uint32_t x177, uint8_t x178 = addcarryx_u32(x175, x163, x165);
- uint32_t x180, uint8_t _ = addcarryx_u32(0x0, x178, x166);
- uint32_t _, uint8_t x184 = addcarryx_u32(0x0, x132, x153);
- uint32_t x186, uint8_t x187 = addcarryx_u32(x184, x135, x168);
- uint32_t x189, uint8_t x190 = addcarryx_u32(x187, x138, x171);
- uint32_t x192, uint8_t x193 = addcarryx_u32(x190, x141, x174);
- uint32_t x195, uint8_t x196 = addcarryx_u32(x193, x144, x177);
- uint32_t x198, uint8_t x199 = addcarryx_u32(x196, x147, x180);
- uint8_t x200 = (x199 + x148);
- uint32_t x202, uint32_t x203 = mulx_u32(x9, x13);
- uint32_t x205, uint32_t x206 = mulx_u32(x9, x15);
- uint32_t x208, uint32_t x209 = mulx_u32(x9, x17);
- uint32_t x211, uint32_t x212 = mulx_u32(x9, x19);
- uint32_t x214, uint32_t x215 = mulx_u32(x9, x18);
- uint32_t x217, uint8_t x218 = addcarryx_u32(0x0, x203, x205);
- uint32_t x220, uint8_t x221 = addcarryx_u32(x218, x206, x208);
- uint32_t x223, uint8_t x224 = addcarryx_u32(x221, x209, x211);
- uint32_t x226, uint8_t x227 = addcarryx_u32(x224, x212, x214);
- uint32_t x229, uint8_t _ = addcarryx_u32(0x0, x227, x215);
- uint32_t x232, uint8_t x233 = addcarryx_u32(0x0, x186, x202);
- uint32_t x235, uint8_t x236 = addcarryx_u32(x233, x189, x217);
- uint32_t x238, uint8_t x239 = addcarryx_u32(x236, x192, x220);
- uint32_t x241, uint8_t x242 = addcarryx_u32(x239, x195, x223);
- uint32_t x244, uint8_t x245 = addcarryx_u32(x242, x198, x226);
- uint32_t x247, uint8_t x248 = addcarryx_u32(x245, x200, x229);
- uint32_t x250, uint32_t _ = mulx_u32(x232, 0x684bda13);
- uint32_t x253, uint32_t x254 = mulx_u32(x250, 0xffffffe5);
- uint32_t x256, uint32_t x257 = mulx_u32(x250, 0xffffffff);
- uint32_t x259, uint32_t x260 = mulx_u32(x250, 0xffffffff);
- uint32_t x262, uint32_t x263 = mulx_u32(x250, 0xffffffff);
- uint32_t x265, uint32_t x266 = mulx_u32(x250, 0xfff);
- uint32_t x268, uint8_t x269 = addcarryx_u32(0x0, x254, x256);
- uint32_t x271, uint8_t x272 = addcarryx_u32(x269, x257, x259);
- uint32_t x274, uint8_t x275 = addcarryx_u32(x272, x260, x262);
- uint32_t x277, uint8_t x278 = addcarryx_u32(x275, x263, x265);
- uint32_t x280, uint8_t _ = addcarryx_u32(0x0, x278, x266);
- uint32_t _, uint8_t x284 = addcarryx_u32(0x0, x232, x253);
- uint32_t x286, uint8_t x287 = addcarryx_u32(x284, x235, x268);
- uint32_t x289, uint8_t x290 = addcarryx_u32(x287, x238, x271);
- uint32_t x292, uint8_t x293 = addcarryx_u32(x290, x241, x274);
- uint32_t x295, uint8_t x296 = addcarryx_u32(x293, x244, x277);
- uint32_t x298, uint8_t x299 = addcarryx_u32(x296, x247, x280);
- uint8_t x300 = (x299 + x248);
- uint32_t x302, uint32_t x303 = mulx_u32(x11, x13);
- uint32_t x305, uint32_t x306 = mulx_u32(x11, x15);
- uint32_t x308, uint32_t x309 = mulx_u32(x11, x17);
- uint32_t x311, uint32_t x312 = mulx_u32(x11, x19);
- uint32_t x314, uint32_t x315 = mulx_u32(x11, x18);
- uint32_t x317, uint8_t x318 = addcarryx_u32(0x0, x303, x305);
- uint32_t x320, uint8_t x321 = addcarryx_u32(x318, x306, x308);
- uint32_t x323, uint8_t x324 = addcarryx_u32(x321, x309, x311);
- uint32_t x326, uint8_t x327 = addcarryx_u32(x324, x312, x314);
- uint32_t x329, uint8_t _ = addcarryx_u32(0x0, x327, x315);
- uint32_t x332, uint8_t x333 = addcarryx_u32(0x0, x286, x302);
- uint32_t x335, uint8_t x336 = addcarryx_u32(x333, x289, x317);
- uint32_t x338, uint8_t x339 = addcarryx_u32(x336, x292, x320);
- uint32_t x341, uint8_t x342 = addcarryx_u32(x339, x295, x323);
- uint32_t x344, uint8_t x345 = addcarryx_u32(x342, x298, x326);
- uint32_t x347, uint8_t x348 = addcarryx_u32(x345, x300, x329);
- uint32_t x350, uint32_t _ = mulx_u32(x332, 0x684bda13);
- uint32_t x353, uint32_t x354 = mulx_u32(x350, 0xffffffe5);
- uint32_t x356, uint32_t x357 = mulx_u32(x350, 0xffffffff);
- uint32_t x359, uint32_t x360 = mulx_u32(x350, 0xffffffff);
- uint32_t x362, uint32_t x363 = mulx_u32(x350, 0xffffffff);
- uint32_t x365, uint32_t x366 = mulx_u32(x350, 0xfff);
- uint32_t x368, uint8_t x369 = addcarryx_u32(0x0, x354, x356);
- uint32_t x371, uint8_t x372 = addcarryx_u32(x369, x357, x359);
- uint32_t x374, uint8_t x375 = addcarryx_u32(x372, x360, x362);
- uint32_t x377, uint8_t x378 = addcarryx_u32(x375, x363, x365);
- uint32_t x380, uint8_t _ = addcarryx_u32(0x0, x378, x366);
- uint32_t _, uint8_t x384 = addcarryx_u32(0x0, x332, x353);
- uint32_t x386, uint8_t x387 = addcarryx_u32(x384, x335, x368);
- uint32_t x389, uint8_t x390 = addcarryx_u32(x387, x338, x371);
- uint32_t x392, uint8_t x393 = addcarryx_u32(x390, x341, x374);
- uint32_t x395, uint8_t x396 = addcarryx_u32(x393, x344, x377);
- uint32_t x398, uint8_t x399 = addcarryx_u32(x396, x347, x380);
- uint8_t x400 = (x399 + x348);
- uint32_t x402, uint32_t x403 = mulx_u32(x10, x13);
- uint32_t x405, uint32_t x406 = mulx_u32(x10, x15);
- uint32_t x408, uint32_t x409 = mulx_u32(x10, x17);
- uint32_t x411, uint32_t x412 = mulx_u32(x10, x19);
- uint32_t x414, uint32_t x415 = mulx_u32(x10, x18);
- uint32_t x417, uint8_t x418 = addcarryx_u32(0x0, x403, x405);
- uint32_t x420, uint8_t x421 = addcarryx_u32(x418, x406, x408);
- uint32_t x423, uint8_t x424 = addcarryx_u32(x421, x409, x411);
- uint32_t x426, uint8_t x427 = addcarryx_u32(x424, x412, x414);
- uint32_t x429, uint8_t _ = addcarryx_u32(0x0, x427, x415);
- uint32_t x432, uint8_t x433 = addcarryx_u32(0x0, x386, x402);
- uint32_t x435, uint8_t x436 = addcarryx_u32(x433, x389, x417);
- uint32_t x438, uint8_t x439 = addcarryx_u32(x436, x392, x420);
- uint32_t x441, uint8_t x442 = addcarryx_u32(x439, x395, x423);
- uint32_t x444, uint8_t x445 = addcarryx_u32(x442, x398, x426);
- uint32_t x447, uint8_t x448 = addcarryx_u32(x445, x400, x429);
- uint32_t x450, uint32_t _ = mulx_u32(x432, 0x684bda13);
- uint32_t x453, uint32_t x454 = mulx_u32(x450, 0xffffffe5);
- uint32_t x456, uint32_t x457 = mulx_u32(x450, 0xffffffff);
- uint32_t x459, uint32_t x460 = mulx_u32(x450, 0xffffffff);
- uint32_t x462, uint32_t x463 = mulx_u32(x450, 0xffffffff);
- uint32_t x465, uint32_t x466 = mulx_u32(x450, 0xfff);
- uint32_t x468, uint8_t x469 = addcarryx_u32(0x0, x454, x456);
- uint32_t x471, uint8_t x472 = addcarryx_u32(x469, x457, x459);
- uint32_t x474, uint8_t x475 = addcarryx_u32(x472, x460, x462);
- uint32_t x477, uint8_t x478 = addcarryx_u32(x475, x463, x465);
- uint32_t x480, uint8_t _ = addcarryx_u32(0x0, x478, x466);
- uint32_t _, uint8_t x484 = addcarryx_u32(0x0, x432, x453);
- uint32_t x486, uint8_t x487 = addcarryx_u32(x484, x435, x468);
- uint32_t x489, uint8_t x490 = addcarryx_u32(x487, x438, x471);
- uint32_t x492, uint8_t x493 = addcarryx_u32(x490, x441, x474);
- uint32_t x495, uint8_t x496 = addcarryx_u32(x493, x444, x477);
- uint32_t x498, uint8_t x499 = addcarryx_u32(x496, x447, x480);
- uint8_t x500 = (x499 + x448);
- uint32_t x502, uint8_t x503 = subborrow_u32(0x0, x486, 0xffffffe5);
- uint32_t x505, uint8_t x506 = subborrow_u32(x503, x489, 0xffffffff);
- uint32_t x508, uint8_t x509 = subborrow_u32(x506, x492, 0xffffffff);
- uint32_t x511, uint8_t x512 = subborrow_u32(x509, x495, 0xffffffff);
- uint32_t x514, uint8_t x515 = subborrow_u32(x512, x498, 0xfff);
- uint32_t _, uint8_t x518 = subborrow_u32(x515, x500, 0x0);
- uint32_t x519 = cmovznz32(x518, x514, x498);
- uint32_t x520 = cmovznz32(x518, x511, x495);
- uint32_t x521 = cmovznz32(x518, x508, x492);
- uint32_t x522 = cmovznz32(x518, x505, x489);
- uint32_t x523 = cmovznz32(x518, x502, x486);
- return (x519, x520, x521, x522, x523))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e140m27_5limbs/femulDisplay.v b/src/Specific/montgomery32_2e140m27_5limbs/femulDisplay.v
deleted file mode 100644
index 09889813a..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e140m27_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e140m27_5limbs/fenz.c b/src/Specific/montgomery32_2e140m27_5limbs/fenz.c
deleted file mode 100644
index 5601e8c15..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/fenz.c
+++ /dev/null
@@ -1,13 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x9 = (x8 | x7);
- { uint32_t x10 = (x6 | x9);
- { uint32_t x11 = (x4 | x10);
- { uint32_t x12 = (x2 | x11);
- out[0] = x12;
- }}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e140m27_5limbs/fenz.v b/src/Specific/montgomery32_2e140m27_5limbs/fenz.v
deleted file mode 100644
index 006963fda..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e140m27_5limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e140m27_5limbs/fenzDisplay.log b/src/Specific/montgomery32_2e140m27_5limbs/fenzDisplay.log
deleted file mode 100644
index 723d13164..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/fenzDisplay.log
+++ /dev/null
@@ -1,11 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint32_t x9 = (x8 | x7);
- uint32_t x10 = (x6 | x9);
- uint32_t x11 = (x4 | x10);
- uint32_t x12 = (x2 | x11);
- return x12)
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e140m27_5limbs/fenzDisplay.v b/src/Specific/montgomery32_2e140m27_5limbs/fenzDisplay.v
deleted file mode 100644
index cf91b5d6b..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e140m27_5limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e140m27_5limbs/feopp.c b/src/Specific/montgomery32_2e140m27_5limbs/feopp.c
deleted file mode 100644
index 5b9a3606e..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/feopp.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void feopp(uint32_t out[5], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x10; uint8_t x11 = _subborrow_u32(0x0, 0x0, x2, &x10);
- { uint32_t x13; uint8_t x14 = _subborrow_u32(x11, 0x0, x4, &x13);
- { uint32_t x16; uint8_t x17 = _subborrow_u32(x14, 0x0, x6, &x16);
- { uint32_t x19; uint8_t x20 = _subborrow_u32(x17, 0x0, x8, &x19);
- { uint32_t x22; uint8_t x23 = _subborrow_u32(x20, 0x0, x7, &x22);
- { uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- { uint32_t x25 = (x24 & 0xffffffe5);
- { uint32_t x27; uint8_t x28 = _addcarryx_u32(0x0, x10, x25, &x27);
- { uint32_t x29 = (x24 & 0xffffffff);
- { uint32_t x31; uint8_t x32 = _addcarryx_u32(x28, x13, x29, &x31);
- { uint32_t x33 = (x24 & 0xffffffff);
- { uint32_t x35; uint8_t x36 = _addcarryx_u32(x32, x16, x33, &x35);
- { uint32_t x37 = (x24 & 0xffffffff);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x36, x19, x37, &x39);
- { uint32_t x41 = (x24 & 0xfff);
- { uint32_t x43; uint8_t _ = _addcarryx_u32(x40, x22, x41, &x43);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e140m27_5limbs/feopp.v b/src/Specific/montgomery32_2e140m27_5limbs/feopp.v
deleted file mode 100644
index 7120c2abc..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e140m27_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e140m27_5limbs/feoppDisplay.log b/src/Specific/montgomery32_2e140m27_5limbs/feoppDisplay.log
deleted file mode 100644
index 4b3132870..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/feoppDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint32_t x10, uint8_t x11 = subborrow_u32(0x0, 0x0, x2);
- uint32_t x13, uint8_t x14 = subborrow_u32(x11, 0x0, x4);
- uint32_t x16, uint8_t x17 = subborrow_u32(x14, 0x0, x6);
- uint32_t x19, uint8_t x20 = subborrow_u32(x17, 0x0, x8);
- uint32_t x22, uint8_t x23 = subborrow_u32(x20, 0x0, x7);
- uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- uint32_t x25 = (x24 & 0xffffffe5);
- uint32_t x27, uint8_t x28 = addcarryx_u32(0x0, x10, x25);
- uint32_t x29 = (x24 & 0xffffffff);
- uint32_t x31, uint8_t x32 = addcarryx_u32(x28, x13, x29);
- uint32_t x33 = (x24 & 0xffffffff);
- uint32_t x35, uint8_t x36 = addcarryx_u32(x32, x16, x33);
- uint32_t x37 = (x24 & 0xffffffff);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x36, x19, x37);
- uint32_t x41 = (x24 & 0xfff);
- uint32_t x43, uint8_t _ = addcarryx_u32(x40, x22, x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e140m27_5limbs/feoppDisplay.v b/src/Specific/montgomery32_2e140m27_5limbs/feoppDisplay.v
deleted file mode 100644
index b89cce730..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e140m27_5limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e140m27_5limbs/fesquare.c b/src/Specific/montgomery32_2e140m27_5limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e140m27_5limbs/fesub.c b/src/Specific/montgomery32_2e140m27_5limbs/fesub.c
deleted file mode 100644
index 66c4f3cc0..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/fesub.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void fesub(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x21; uint8_t x22 = _subborrow_u32(0x0, x5, x13, &x21);
- { uint32_t x24; uint8_t x25 = _subborrow_u32(x22, x7, x15, &x24);
- { uint32_t x27; uint8_t x28 = _subborrow_u32(x25, x9, x17, &x27);
- { uint32_t x30; uint8_t x31 = _subborrow_u32(x28, x11, x19, &x30);
- { uint32_t x33; uint8_t x34 = _subborrow_u32(x31, x10, x18, &x33);
- { uint32_t x35 = cmovznz32(x34, 0x0, 0xffffffff);
- { uint32_t x36 = (x35 & 0xffffffe5);
- { uint32_t x38; uint8_t x39 = _addcarryx_u32(0x0, x21, x36, &x38);
- { uint32_t x40 = (x35 & 0xffffffff);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x39, x24, x40, &x42);
- { uint32_t x44 = (x35 & 0xffffffff);
- { uint32_t x46; uint8_t x47 = _addcarryx_u32(x43, x27, x44, &x46);
- { uint32_t x48 = (x35 & 0xffffffff);
- { uint32_t x50; uint8_t x51 = _addcarryx_u32(x47, x30, x48, &x50);
- { uint32_t x52 = (x35 & 0xfff);
- { uint32_t x54; uint8_t _ = _addcarryx_u32(x51, x33, x52, &x54);
- out[0] = x38;
- out[1] = x42;
- out[2] = x46;
- out[3] = x50;
- out[4] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e140m27_5limbs/fesub.v b/src/Specific/montgomery32_2e140m27_5limbs/fesub.v
deleted file mode 100644
index 61d5c7d70..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e140m27_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e140m27_5limbs/fesubDisplay.log b/src/Specific/montgomery32_2e140m27_5limbs/fesubDisplay.log
deleted file mode 100644
index f4896928b..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint8_t x22 = subborrow_u32(0x0, x5, x13);
- uint32_t x24, uint8_t x25 = subborrow_u32(x22, x7, x15);
- uint32_t x27, uint8_t x28 = subborrow_u32(x25, x9, x17);
- uint32_t x30, uint8_t x31 = subborrow_u32(x28, x11, x19);
- uint32_t x33, uint8_t x34 = subborrow_u32(x31, x10, x18);
- uint32_t x35 = cmovznz32(x34, 0x0, 0xffffffff);
- uint32_t x36 = (x35 & 0xffffffe5);
- uint32_t x38, uint8_t x39 = addcarryx_u32(0x0, x21, x36);
- uint32_t x40 = (x35 & 0xffffffff);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x39, x24, x40);
- uint32_t x44 = (x35 & 0xffffffff);
- uint32_t x46, uint8_t x47 = addcarryx_u32(x43, x27, x44);
- uint32_t x48 = (x35 & 0xffffffff);
- uint32_t x50, uint8_t x51 = addcarryx_u32(x47, x30, x48);
- uint32_t x52 = (x35 & 0xfff);
- uint32_t x54, uint8_t _ = addcarryx_u32(x51, x33, x52);
- (Return x54, Return x50, Return x46, Return x42, Return x38))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e140m27_5limbs/fesubDisplay.v b/src/Specific/montgomery32_2e140m27_5limbs/fesubDisplay.v
deleted file mode 100644
index ee49f5655..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e140m27_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e140m27_5limbs/py_interpreter.sh b/src/Specific/montgomery32_2e140m27_5limbs/py_interpreter.sh
deleted file mode 100755
index c02634165..000000000
--- a/src/Specific/montgomery32_2e140m27_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**140 - 27' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e141m9_5limbs/CurveParameters.v b/src/Specific/montgomery32_2e141m9_5limbs/CurveParameters.v
deleted file mode 100644
index 341a4a51e..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^141 - 9
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 32;
- bitwidth := 32;
- s := 2^141;
- c := [(1, 9)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e141m9_5limbs/Synthesis.v b/src/Specific/montgomery32_2e141m9_5limbs/Synthesis.v
deleted file mode 100644
index da08f76a8..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e141m9_5limbs.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/montgomery32_2e141m9_5limbs/compiler.sh b/src/Specific/montgomery32_2e141m9_5limbs/compiler.sh
deleted file mode 100755
index 0d0666f49..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<141) - 9' "$@"
diff --git a/src/Specific/montgomery32_2e141m9_5limbs/compilerxx.sh b/src/Specific/montgomery32_2e141m9_5limbs/compilerxx.sh
deleted file mode 100755
index 63a0318a2..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<141) - 9' "$@"
diff --git a/src/Specific/montgomery32_2e141m9_5limbs/feadd.c b/src/Specific/montgomery32_2e141m9_5limbs/feadd.c
deleted file mode 100644
index 29f2dbfd7..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/feadd.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feadd(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x21; uint8_t x22 = _addcarryx_u32(0x0, x5, x13, &x21);
- { uint32_t x24; uint8_t x25 = _addcarryx_u32(x22, x7, x15, &x24);
- { uint32_t x27; uint8_t x28 = _addcarryx_u32(x25, x9, x17, &x27);
- { uint32_t x30; uint8_t x31 = _addcarryx_u32(x28, x11, x19, &x30);
- { uint32_t x33; uint8_t x34 = _addcarryx_u32(x31, x10, x18, &x33);
- { uint32_t x36; uint8_t x37 = _subborrow_u32(0x0, x21, 0xfffffff7, &x36);
- { uint32_t x39; uint8_t x40 = _subborrow_u32(x37, x24, 0xffffffff, &x39);
- { uint32_t x42; uint8_t x43 = _subborrow_u32(x40, x27, 0xffffffff, &x42);
- { uint32_t x45; uint8_t x46 = _subborrow_u32(x43, x30, 0xffffffff, &x45);
- { uint32_t x48; uint8_t x49 = _subborrow_u32(x46, x33, 0x1fff, &x48);
- { uint32_t _; uint8_t x52 = _subborrow_u32(x49, x34, 0x0, &_);
- { uint32_t x53 = cmovznz32(x52, x48, x33);
- { uint32_t x54 = cmovznz32(x52, x45, x30);
- { uint32_t x55 = cmovznz32(x52, x42, x27);
- { uint32_t x56 = cmovznz32(x52, x39, x24);
- { uint32_t x57 = cmovznz32(x52, x36, x21);
- out[0] = x57;
- out[1] = x56;
- out[2] = x55;
- out[3] = x54;
- out[4] = x53;
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e141m9_5limbs/feadd.v b/src/Specific/montgomery32_2e141m9_5limbs/feadd.v
deleted file mode 100644
index bb1b4de4f..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e141m9_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e141m9_5limbs/feaddDisplay.log b/src/Specific/montgomery32_2e141m9_5limbs/feaddDisplay.log
deleted file mode 100644
index 5a7279038..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint8_t x22 = addcarryx_u32(0x0, x5, x13);
- uint32_t x24, uint8_t x25 = addcarryx_u32(x22, x7, x15);
- uint32_t x27, uint8_t x28 = addcarryx_u32(x25, x9, x17);
- uint32_t x30, uint8_t x31 = addcarryx_u32(x28, x11, x19);
- uint32_t x33, uint8_t x34 = addcarryx_u32(x31, x10, x18);
- uint32_t x36, uint8_t x37 = subborrow_u32(0x0, x21, 0xfffffff7);
- uint32_t x39, uint8_t x40 = subborrow_u32(x37, x24, 0xffffffff);
- uint32_t x42, uint8_t x43 = subborrow_u32(x40, x27, 0xffffffff);
- uint32_t x45, uint8_t x46 = subborrow_u32(x43, x30, 0xffffffff);
- uint32_t x48, uint8_t x49 = subborrow_u32(x46, x33, 0x1fff);
- uint32_t _, uint8_t x52 = subborrow_u32(x49, x34, 0x0);
- uint32_t x53 = cmovznz32(x52, x48, x33);
- uint32_t x54 = cmovznz32(x52, x45, x30);
- uint32_t x55 = cmovznz32(x52, x42, x27);
- uint32_t x56 = cmovznz32(x52, x39, x24);
- uint32_t x57 = cmovznz32(x52, x36, x21);
- return (x53, x54, x55, x56, x57))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e141m9_5limbs/feaddDisplay.v b/src/Specific/montgomery32_2e141m9_5limbs/feaddDisplay.v
deleted file mode 100644
index 7cba42aa2..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e141m9_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e141m9_5limbs/femul.c b/src/Specific/montgomery32_2e141m9_5limbs/femul.c
deleted file mode 100644
index 1d70a8f0c..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/femul.c
+++ /dev/null
@@ -1,192 +0,0 @@
-static void femul(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x22; uint32_t x21 = _mulx_u32(x5, x13, &x22);
- { uint32_t x25; uint32_t x24 = _mulx_u32(x5, x15, &x25);
- { uint32_t x28; uint32_t x27 = _mulx_u32(x5, x17, &x28);
- { uint32_t x31; uint32_t x30 = _mulx_u32(x5, x19, &x31);
- { uint32_t x34; uint32_t x33 = _mulx_u32(x5, x18, &x34);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(0x0, x22, x24, &x36);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x37, x25, x27, &x39);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x40, x28, x30, &x42);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(x43, x31, x33, &x45);
- { uint32_t x48; uint8_t _ = _addcarryx_u32(0x0, x46, x34, &x48);
- { uint32_t _; uint32_t x51 = _mulx_u32(x21, 0x38e38e39, &_);
- { uint32_t x55; uint32_t x54 = _mulx_u32(x51, 0xfffffff7, &x55);
- { uint32_t x58; uint32_t x57 = _mulx_u32(x51, 0xffffffff, &x58);
- { uint32_t x61; uint32_t x60 = _mulx_u32(x51, 0xffffffff, &x61);
- { uint32_t x64; uint32_t x63 = _mulx_u32(x51, 0xffffffff, &x64);
- { uint32_t x67; uint32_t x66 = _mulx_u32(x51, 0x1fff, &x67);
- { uint32_t x69; uint8_t x70 = _addcarryx_u32(0x0, x55, x57, &x69);
- { uint32_t x72; uint8_t x73 = _addcarryx_u32(x70, x58, x60, &x72);
- { uint32_t x75; uint8_t x76 = _addcarryx_u32(x73, x61, x63, &x75);
- { uint32_t x78; uint8_t x79 = _addcarryx_u32(x76, x64, x66, &x78);
- { uint32_t x81; uint8_t _ = _addcarryx_u32(0x0, x79, x67, &x81);
- { uint32_t _; uint8_t x85 = _addcarryx_u32(0x0, x21, x54, &_);
- { uint32_t x87; uint8_t x88 = _addcarryx_u32(x85, x36, x69, &x87);
- { uint32_t x90; uint8_t x91 = _addcarryx_u32(x88, x39, x72, &x90);
- { uint32_t x93; uint8_t x94 = _addcarryx_u32(x91, x42, x75, &x93);
- { uint32_t x96; uint8_t x97 = _addcarryx_u32(x94, x45, x78, &x96);
- { uint32_t x99; uint8_t x100 = _addcarryx_u32(x97, x48, x81, &x99);
- { uint32_t x103; uint32_t x102 = _mulx_u32(x7, x13, &x103);
- { uint32_t x106; uint32_t x105 = _mulx_u32(x7, x15, &x106);
- { uint32_t x109; uint32_t x108 = _mulx_u32(x7, x17, &x109);
- { uint32_t x112; uint32_t x111 = _mulx_u32(x7, x19, &x112);
- { uint32_t x115; uint32_t x114 = _mulx_u32(x7, x18, &x115);
- { uint32_t x117; uint8_t x118 = _addcarryx_u32(0x0, x103, x105, &x117);
- { uint32_t x120; uint8_t x121 = _addcarryx_u32(x118, x106, x108, &x120);
- { uint32_t x123; uint8_t x124 = _addcarryx_u32(x121, x109, x111, &x123);
- { uint32_t x126; uint8_t x127 = _addcarryx_u32(x124, x112, x114, &x126);
- { uint32_t x129; uint8_t _ = _addcarryx_u32(0x0, x127, x115, &x129);
- { uint32_t x132; uint8_t x133 = _addcarryx_u32(0x0, x87, x102, &x132);
- { uint32_t x135; uint8_t x136 = _addcarryx_u32(x133, x90, x117, &x135);
- { uint32_t x138; uint8_t x139 = _addcarryx_u32(x136, x93, x120, &x138);
- { uint32_t x141; uint8_t x142 = _addcarryx_u32(x139, x96, x123, &x141);
- { uint32_t x144; uint8_t x145 = _addcarryx_u32(x142, x99, x126, &x144);
- { uint32_t x147; uint8_t x148 = _addcarryx_u32(x145, x100, x129, &x147);
- { uint32_t _; uint32_t x150 = _mulx_u32(x132, 0x38e38e39, &_);
- { uint32_t x154; uint32_t x153 = _mulx_u32(x150, 0xfffffff7, &x154);
- { uint32_t x157; uint32_t x156 = _mulx_u32(x150, 0xffffffff, &x157);
- { uint32_t x160; uint32_t x159 = _mulx_u32(x150, 0xffffffff, &x160);
- { uint32_t x163; uint32_t x162 = _mulx_u32(x150, 0xffffffff, &x163);
- { uint32_t x166; uint32_t x165 = _mulx_u32(x150, 0x1fff, &x166);
- { uint32_t x168; uint8_t x169 = _addcarryx_u32(0x0, x154, x156, &x168);
- { uint32_t x171; uint8_t x172 = _addcarryx_u32(x169, x157, x159, &x171);
- { uint32_t x174; uint8_t x175 = _addcarryx_u32(x172, x160, x162, &x174);
- { uint32_t x177; uint8_t x178 = _addcarryx_u32(x175, x163, x165, &x177);
- { uint32_t x180; uint8_t _ = _addcarryx_u32(0x0, x178, x166, &x180);
- { uint32_t _; uint8_t x184 = _addcarryx_u32(0x0, x132, x153, &_);
- { uint32_t x186; uint8_t x187 = _addcarryx_u32(x184, x135, x168, &x186);
- { uint32_t x189; uint8_t x190 = _addcarryx_u32(x187, x138, x171, &x189);
- { uint32_t x192; uint8_t x193 = _addcarryx_u32(x190, x141, x174, &x192);
- { uint32_t x195; uint8_t x196 = _addcarryx_u32(x193, x144, x177, &x195);
- { uint32_t x198; uint8_t x199 = _addcarryx_u32(x196, x147, x180, &x198);
- { uint8_t x200 = (x199 + x148);
- { uint32_t x203; uint32_t x202 = _mulx_u32(x9, x13, &x203);
- { uint32_t x206; uint32_t x205 = _mulx_u32(x9, x15, &x206);
- { uint32_t x209; uint32_t x208 = _mulx_u32(x9, x17, &x209);
- { uint32_t x212; uint32_t x211 = _mulx_u32(x9, x19, &x212);
- { uint32_t x215; uint32_t x214 = _mulx_u32(x9, x18, &x215);
- { uint32_t x217; uint8_t x218 = _addcarryx_u32(0x0, x203, x205, &x217);
- { uint32_t x220; uint8_t x221 = _addcarryx_u32(x218, x206, x208, &x220);
- { uint32_t x223; uint8_t x224 = _addcarryx_u32(x221, x209, x211, &x223);
- { uint32_t x226; uint8_t x227 = _addcarryx_u32(x224, x212, x214, &x226);
- { uint32_t x229; uint8_t _ = _addcarryx_u32(0x0, x227, x215, &x229);
- { uint32_t x232; uint8_t x233 = _addcarryx_u32(0x0, x186, x202, &x232);
- { uint32_t x235; uint8_t x236 = _addcarryx_u32(x233, x189, x217, &x235);
- { uint32_t x238; uint8_t x239 = _addcarryx_u32(x236, x192, x220, &x238);
- { uint32_t x241; uint8_t x242 = _addcarryx_u32(x239, x195, x223, &x241);
- { uint32_t x244; uint8_t x245 = _addcarryx_u32(x242, x198, x226, &x244);
- { uint32_t x247; uint8_t x248 = _addcarryx_u32(x245, x200, x229, &x247);
- { uint32_t _; uint32_t x250 = _mulx_u32(x232, 0x38e38e39, &_);
- { uint32_t x254; uint32_t x253 = _mulx_u32(x250, 0xfffffff7, &x254);
- { uint32_t x257; uint32_t x256 = _mulx_u32(x250, 0xffffffff, &x257);
- { uint32_t x260; uint32_t x259 = _mulx_u32(x250, 0xffffffff, &x260);
- { uint32_t x263; uint32_t x262 = _mulx_u32(x250, 0xffffffff, &x263);
- { uint32_t x266; uint32_t x265 = _mulx_u32(x250, 0x1fff, &x266);
- { uint32_t x268; uint8_t x269 = _addcarryx_u32(0x0, x254, x256, &x268);
- { uint32_t x271; uint8_t x272 = _addcarryx_u32(x269, x257, x259, &x271);
- { uint32_t x274; uint8_t x275 = _addcarryx_u32(x272, x260, x262, &x274);
- { uint32_t x277; uint8_t x278 = _addcarryx_u32(x275, x263, x265, &x277);
- { uint32_t x280; uint8_t _ = _addcarryx_u32(0x0, x278, x266, &x280);
- { uint32_t _; uint8_t x284 = _addcarryx_u32(0x0, x232, x253, &_);
- { uint32_t x286; uint8_t x287 = _addcarryx_u32(x284, x235, x268, &x286);
- { uint32_t x289; uint8_t x290 = _addcarryx_u32(x287, x238, x271, &x289);
- { uint32_t x292; uint8_t x293 = _addcarryx_u32(x290, x241, x274, &x292);
- { uint32_t x295; uint8_t x296 = _addcarryx_u32(x293, x244, x277, &x295);
- { uint32_t x298; uint8_t x299 = _addcarryx_u32(x296, x247, x280, &x298);
- { uint8_t x300 = (x299 + x248);
- { uint32_t x303; uint32_t x302 = _mulx_u32(x11, x13, &x303);
- { uint32_t x306; uint32_t x305 = _mulx_u32(x11, x15, &x306);
- { uint32_t x309; uint32_t x308 = _mulx_u32(x11, x17, &x309);
- { uint32_t x312; uint32_t x311 = _mulx_u32(x11, x19, &x312);
- { uint32_t x315; uint32_t x314 = _mulx_u32(x11, x18, &x315);
- { uint32_t x317; uint8_t x318 = _addcarryx_u32(0x0, x303, x305, &x317);
- { uint32_t x320; uint8_t x321 = _addcarryx_u32(x318, x306, x308, &x320);
- { uint32_t x323; uint8_t x324 = _addcarryx_u32(x321, x309, x311, &x323);
- { uint32_t x326; uint8_t x327 = _addcarryx_u32(x324, x312, x314, &x326);
- { uint32_t x329; uint8_t _ = _addcarryx_u32(0x0, x327, x315, &x329);
- { uint32_t x332; uint8_t x333 = _addcarryx_u32(0x0, x286, x302, &x332);
- { uint32_t x335; uint8_t x336 = _addcarryx_u32(x333, x289, x317, &x335);
- { uint32_t x338; uint8_t x339 = _addcarryx_u32(x336, x292, x320, &x338);
- { uint32_t x341; uint8_t x342 = _addcarryx_u32(x339, x295, x323, &x341);
- { uint32_t x344; uint8_t x345 = _addcarryx_u32(x342, x298, x326, &x344);
- { uint32_t x347; uint8_t x348 = _addcarryx_u32(x345, x300, x329, &x347);
- { uint32_t _; uint32_t x350 = _mulx_u32(x332, 0x38e38e39, &_);
- { uint32_t x354; uint32_t x353 = _mulx_u32(x350, 0xfffffff7, &x354);
- { uint32_t x357; uint32_t x356 = _mulx_u32(x350, 0xffffffff, &x357);
- { uint32_t x360; uint32_t x359 = _mulx_u32(x350, 0xffffffff, &x360);
- { uint32_t x363; uint32_t x362 = _mulx_u32(x350, 0xffffffff, &x363);
- { uint32_t x366; uint32_t x365 = _mulx_u32(x350, 0x1fff, &x366);
- { uint32_t x368; uint8_t x369 = _addcarryx_u32(0x0, x354, x356, &x368);
- { uint32_t x371; uint8_t x372 = _addcarryx_u32(x369, x357, x359, &x371);
- { uint32_t x374; uint8_t x375 = _addcarryx_u32(x372, x360, x362, &x374);
- { uint32_t x377; uint8_t x378 = _addcarryx_u32(x375, x363, x365, &x377);
- { uint32_t x380; uint8_t _ = _addcarryx_u32(0x0, x378, x366, &x380);
- { uint32_t _; uint8_t x384 = _addcarryx_u32(0x0, x332, x353, &_);
- { uint32_t x386; uint8_t x387 = _addcarryx_u32(x384, x335, x368, &x386);
- { uint32_t x389; uint8_t x390 = _addcarryx_u32(x387, x338, x371, &x389);
- { uint32_t x392; uint8_t x393 = _addcarryx_u32(x390, x341, x374, &x392);
- { uint32_t x395; uint8_t x396 = _addcarryx_u32(x393, x344, x377, &x395);
- { uint32_t x398; uint8_t x399 = _addcarryx_u32(x396, x347, x380, &x398);
- { uint8_t x400 = (x399 + x348);
- { uint32_t x403; uint32_t x402 = _mulx_u32(x10, x13, &x403);
- { uint32_t x406; uint32_t x405 = _mulx_u32(x10, x15, &x406);
- { uint32_t x409; uint32_t x408 = _mulx_u32(x10, x17, &x409);
- { uint32_t x412; uint32_t x411 = _mulx_u32(x10, x19, &x412);
- { uint32_t x415; uint32_t x414 = _mulx_u32(x10, x18, &x415);
- { uint32_t x417; uint8_t x418 = _addcarryx_u32(0x0, x403, x405, &x417);
- { uint32_t x420; uint8_t x421 = _addcarryx_u32(x418, x406, x408, &x420);
- { uint32_t x423; uint8_t x424 = _addcarryx_u32(x421, x409, x411, &x423);
- { uint32_t x426; uint8_t x427 = _addcarryx_u32(x424, x412, x414, &x426);
- { uint32_t x429; uint8_t _ = _addcarryx_u32(0x0, x427, x415, &x429);
- { uint32_t x432; uint8_t x433 = _addcarryx_u32(0x0, x386, x402, &x432);
- { uint32_t x435; uint8_t x436 = _addcarryx_u32(x433, x389, x417, &x435);
- { uint32_t x438; uint8_t x439 = _addcarryx_u32(x436, x392, x420, &x438);
- { uint32_t x441; uint8_t x442 = _addcarryx_u32(x439, x395, x423, &x441);
- { uint32_t x444; uint8_t x445 = _addcarryx_u32(x442, x398, x426, &x444);
- { uint32_t x447; uint8_t x448 = _addcarryx_u32(x445, x400, x429, &x447);
- { uint32_t _; uint32_t x450 = _mulx_u32(x432, 0x38e38e39, &_);
- { uint32_t x454; uint32_t x453 = _mulx_u32(x450, 0xfffffff7, &x454);
- { uint32_t x457; uint32_t x456 = _mulx_u32(x450, 0xffffffff, &x457);
- { uint32_t x460; uint32_t x459 = _mulx_u32(x450, 0xffffffff, &x460);
- { uint32_t x463; uint32_t x462 = _mulx_u32(x450, 0xffffffff, &x463);
- { uint32_t x466; uint32_t x465 = _mulx_u32(x450, 0x1fff, &x466);
- { uint32_t x468; uint8_t x469 = _addcarryx_u32(0x0, x454, x456, &x468);
- { uint32_t x471; uint8_t x472 = _addcarryx_u32(x469, x457, x459, &x471);
- { uint32_t x474; uint8_t x475 = _addcarryx_u32(x472, x460, x462, &x474);
- { uint32_t x477; uint8_t x478 = _addcarryx_u32(x475, x463, x465, &x477);
- { uint32_t x480; uint8_t _ = _addcarryx_u32(0x0, x478, x466, &x480);
- { uint32_t _; uint8_t x484 = _addcarryx_u32(0x0, x432, x453, &_);
- { uint32_t x486; uint8_t x487 = _addcarryx_u32(x484, x435, x468, &x486);
- { uint32_t x489; uint8_t x490 = _addcarryx_u32(x487, x438, x471, &x489);
- { uint32_t x492; uint8_t x493 = _addcarryx_u32(x490, x441, x474, &x492);
- { uint32_t x495; uint8_t x496 = _addcarryx_u32(x493, x444, x477, &x495);
- { uint32_t x498; uint8_t x499 = _addcarryx_u32(x496, x447, x480, &x498);
- { uint8_t x500 = (x499 + x448);
- { uint32_t x502; uint8_t x503 = _subborrow_u32(0x0, x486, 0xfffffff7, &x502);
- { uint32_t x505; uint8_t x506 = _subborrow_u32(x503, x489, 0xffffffff, &x505);
- { uint32_t x508; uint8_t x509 = _subborrow_u32(x506, x492, 0xffffffff, &x508);
- { uint32_t x511; uint8_t x512 = _subborrow_u32(x509, x495, 0xffffffff, &x511);
- { uint32_t x514; uint8_t x515 = _subborrow_u32(x512, x498, 0x1fff, &x514);
- { uint32_t _; uint8_t x518 = _subborrow_u32(x515, x500, 0x0, &_);
- { uint32_t x519 = cmovznz32(x518, x514, x498);
- { uint32_t x520 = cmovznz32(x518, x511, x495);
- { uint32_t x521 = cmovznz32(x518, x508, x492);
- { uint32_t x522 = cmovznz32(x518, x505, x489);
- { uint32_t x523 = cmovznz32(x518, x502, x486);
- out[0] = x523;
- out[1] = x522;
- out[2] = x521;
- out[3] = x520;
- out[4] = x519;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e141m9_5limbs/femul.v b/src/Specific/montgomery32_2e141m9_5limbs/femul.v
deleted file mode 100644
index 6ea02e6a3..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e141m9_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e141m9_5limbs/femulDisplay.log b/src/Specific/montgomery32_2e141m9_5limbs/femulDisplay.log
deleted file mode 100644
index de7cb15c0..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,181 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint32_t x22 = mulx_u32(x5, x13);
- uint32_t x24, uint32_t x25 = mulx_u32(x5, x15);
- uint32_t x27, uint32_t x28 = mulx_u32(x5, x17);
- uint32_t x30, uint32_t x31 = mulx_u32(x5, x19);
- uint32_t x33, uint32_t x34 = mulx_u32(x5, x18);
- uint32_t x36, uint8_t x37 = addcarryx_u32(0x0, x22, x24);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x37, x25, x27);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x40, x28, x30);
- uint32_t x45, uint8_t x46 = addcarryx_u32(x43, x31, x33);
- uint32_t x48, uint8_t _ = addcarryx_u32(0x0, x46, x34);
- uint32_t x51, uint32_t _ = mulx_u32(x21, 0x38e38e39);
- uint32_t x54, uint32_t x55 = mulx_u32(x51, 0xfffffff7);
- uint32_t x57, uint32_t x58 = mulx_u32(x51, 0xffffffff);
- uint32_t x60, uint32_t x61 = mulx_u32(x51, 0xffffffff);
- uint32_t x63, uint32_t x64 = mulx_u32(x51, 0xffffffff);
- uint32_t x66, uint32_t x67 = mulx_u32(x51, 0x1fff);
- uint32_t x69, uint8_t x70 = addcarryx_u32(0x0, x55, x57);
- uint32_t x72, uint8_t x73 = addcarryx_u32(x70, x58, x60);
- uint32_t x75, uint8_t x76 = addcarryx_u32(x73, x61, x63);
- uint32_t x78, uint8_t x79 = addcarryx_u32(x76, x64, x66);
- uint32_t x81, uint8_t _ = addcarryx_u32(0x0, x79, x67);
- uint32_t _, uint8_t x85 = addcarryx_u32(0x0, x21, x54);
- uint32_t x87, uint8_t x88 = addcarryx_u32(x85, x36, x69);
- uint32_t x90, uint8_t x91 = addcarryx_u32(x88, x39, x72);
- uint32_t x93, uint8_t x94 = addcarryx_u32(x91, x42, x75);
- uint32_t x96, uint8_t x97 = addcarryx_u32(x94, x45, x78);
- uint32_t x99, uint8_t x100 = addcarryx_u32(x97, x48, x81);
- uint32_t x102, uint32_t x103 = mulx_u32(x7, x13);
- uint32_t x105, uint32_t x106 = mulx_u32(x7, x15);
- uint32_t x108, uint32_t x109 = mulx_u32(x7, x17);
- uint32_t x111, uint32_t x112 = mulx_u32(x7, x19);
- uint32_t x114, uint32_t x115 = mulx_u32(x7, x18);
- uint32_t x117, uint8_t x118 = addcarryx_u32(0x0, x103, x105);
- uint32_t x120, uint8_t x121 = addcarryx_u32(x118, x106, x108);
- uint32_t x123, uint8_t x124 = addcarryx_u32(x121, x109, x111);
- uint32_t x126, uint8_t x127 = addcarryx_u32(x124, x112, x114);
- uint32_t x129, uint8_t _ = addcarryx_u32(0x0, x127, x115);
- uint32_t x132, uint8_t x133 = addcarryx_u32(0x0, x87, x102);
- uint32_t x135, uint8_t x136 = addcarryx_u32(x133, x90, x117);
- uint32_t x138, uint8_t x139 = addcarryx_u32(x136, x93, x120);
- uint32_t x141, uint8_t x142 = addcarryx_u32(x139, x96, x123);
- uint32_t x144, uint8_t x145 = addcarryx_u32(x142, x99, x126);
- uint32_t x147, uint8_t x148 = addcarryx_u32(x145, x100, x129);
- uint32_t x150, uint32_t _ = mulx_u32(x132, 0x38e38e39);
- uint32_t x153, uint32_t x154 = mulx_u32(x150, 0xfffffff7);
- uint32_t x156, uint32_t x157 = mulx_u32(x150, 0xffffffff);
- uint32_t x159, uint32_t x160 = mulx_u32(x150, 0xffffffff);
- uint32_t x162, uint32_t x163 = mulx_u32(x150, 0xffffffff);
- uint32_t x165, uint32_t x166 = mulx_u32(x150, 0x1fff);
- uint32_t x168, uint8_t x169 = addcarryx_u32(0x0, x154, x156);
- uint32_t x171, uint8_t x172 = addcarryx_u32(x169, x157, x159);
- uint32_t x174, uint8_t x175 = addcarryx_u32(x172, x160, x162);
- uint32_t x177, uint8_t x178 = addcarryx_u32(x175, x163, x165);
- uint32_t x180, uint8_t _ = addcarryx_u32(0x0, x178, x166);
- uint32_t _, uint8_t x184 = addcarryx_u32(0x0, x132, x153);
- uint32_t x186, uint8_t x187 = addcarryx_u32(x184, x135, x168);
- uint32_t x189, uint8_t x190 = addcarryx_u32(x187, x138, x171);
- uint32_t x192, uint8_t x193 = addcarryx_u32(x190, x141, x174);
- uint32_t x195, uint8_t x196 = addcarryx_u32(x193, x144, x177);
- uint32_t x198, uint8_t x199 = addcarryx_u32(x196, x147, x180);
- uint8_t x200 = (x199 + x148);
- uint32_t x202, uint32_t x203 = mulx_u32(x9, x13);
- uint32_t x205, uint32_t x206 = mulx_u32(x9, x15);
- uint32_t x208, uint32_t x209 = mulx_u32(x9, x17);
- uint32_t x211, uint32_t x212 = mulx_u32(x9, x19);
- uint32_t x214, uint32_t x215 = mulx_u32(x9, x18);
- uint32_t x217, uint8_t x218 = addcarryx_u32(0x0, x203, x205);
- uint32_t x220, uint8_t x221 = addcarryx_u32(x218, x206, x208);
- uint32_t x223, uint8_t x224 = addcarryx_u32(x221, x209, x211);
- uint32_t x226, uint8_t x227 = addcarryx_u32(x224, x212, x214);
- uint32_t x229, uint8_t _ = addcarryx_u32(0x0, x227, x215);
- uint32_t x232, uint8_t x233 = addcarryx_u32(0x0, x186, x202);
- uint32_t x235, uint8_t x236 = addcarryx_u32(x233, x189, x217);
- uint32_t x238, uint8_t x239 = addcarryx_u32(x236, x192, x220);
- uint32_t x241, uint8_t x242 = addcarryx_u32(x239, x195, x223);
- uint32_t x244, uint8_t x245 = addcarryx_u32(x242, x198, x226);
- uint32_t x247, uint8_t x248 = addcarryx_u32(x245, x200, x229);
- uint32_t x250, uint32_t _ = mulx_u32(x232, 0x38e38e39);
- uint32_t x253, uint32_t x254 = mulx_u32(x250, 0xfffffff7);
- uint32_t x256, uint32_t x257 = mulx_u32(x250, 0xffffffff);
- uint32_t x259, uint32_t x260 = mulx_u32(x250, 0xffffffff);
- uint32_t x262, uint32_t x263 = mulx_u32(x250, 0xffffffff);
- uint32_t x265, uint32_t x266 = mulx_u32(x250, 0x1fff);
- uint32_t x268, uint8_t x269 = addcarryx_u32(0x0, x254, x256);
- uint32_t x271, uint8_t x272 = addcarryx_u32(x269, x257, x259);
- uint32_t x274, uint8_t x275 = addcarryx_u32(x272, x260, x262);
- uint32_t x277, uint8_t x278 = addcarryx_u32(x275, x263, x265);
- uint32_t x280, uint8_t _ = addcarryx_u32(0x0, x278, x266);
- uint32_t _, uint8_t x284 = addcarryx_u32(0x0, x232, x253);
- uint32_t x286, uint8_t x287 = addcarryx_u32(x284, x235, x268);
- uint32_t x289, uint8_t x290 = addcarryx_u32(x287, x238, x271);
- uint32_t x292, uint8_t x293 = addcarryx_u32(x290, x241, x274);
- uint32_t x295, uint8_t x296 = addcarryx_u32(x293, x244, x277);
- uint32_t x298, uint8_t x299 = addcarryx_u32(x296, x247, x280);
- uint8_t x300 = (x299 + x248);
- uint32_t x302, uint32_t x303 = mulx_u32(x11, x13);
- uint32_t x305, uint32_t x306 = mulx_u32(x11, x15);
- uint32_t x308, uint32_t x309 = mulx_u32(x11, x17);
- uint32_t x311, uint32_t x312 = mulx_u32(x11, x19);
- uint32_t x314, uint32_t x315 = mulx_u32(x11, x18);
- uint32_t x317, uint8_t x318 = addcarryx_u32(0x0, x303, x305);
- uint32_t x320, uint8_t x321 = addcarryx_u32(x318, x306, x308);
- uint32_t x323, uint8_t x324 = addcarryx_u32(x321, x309, x311);
- uint32_t x326, uint8_t x327 = addcarryx_u32(x324, x312, x314);
- uint32_t x329, uint8_t _ = addcarryx_u32(0x0, x327, x315);
- uint32_t x332, uint8_t x333 = addcarryx_u32(0x0, x286, x302);
- uint32_t x335, uint8_t x336 = addcarryx_u32(x333, x289, x317);
- uint32_t x338, uint8_t x339 = addcarryx_u32(x336, x292, x320);
- uint32_t x341, uint8_t x342 = addcarryx_u32(x339, x295, x323);
- uint32_t x344, uint8_t x345 = addcarryx_u32(x342, x298, x326);
- uint32_t x347, uint8_t x348 = addcarryx_u32(x345, x300, x329);
- uint32_t x350, uint32_t _ = mulx_u32(x332, 0x38e38e39);
- uint32_t x353, uint32_t x354 = mulx_u32(x350, 0xfffffff7);
- uint32_t x356, uint32_t x357 = mulx_u32(x350, 0xffffffff);
- uint32_t x359, uint32_t x360 = mulx_u32(x350, 0xffffffff);
- uint32_t x362, uint32_t x363 = mulx_u32(x350, 0xffffffff);
- uint32_t x365, uint32_t x366 = mulx_u32(x350, 0x1fff);
- uint32_t x368, uint8_t x369 = addcarryx_u32(0x0, x354, x356);
- uint32_t x371, uint8_t x372 = addcarryx_u32(x369, x357, x359);
- uint32_t x374, uint8_t x375 = addcarryx_u32(x372, x360, x362);
- uint32_t x377, uint8_t x378 = addcarryx_u32(x375, x363, x365);
- uint32_t x380, uint8_t _ = addcarryx_u32(0x0, x378, x366);
- uint32_t _, uint8_t x384 = addcarryx_u32(0x0, x332, x353);
- uint32_t x386, uint8_t x387 = addcarryx_u32(x384, x335, x368);
- uint32_t x389, uint8_t x390 = addcarryx_u32(x387, x338, x371);
- uint32_t x392, uint8_t x393 = addcarryx_u32(x390, x341, x374);
- uint32_t x395, uint8_t x396 = addcarryx_u32(x393, x344, x377);
- uint32_t x398, uint8_t x399 = addcarryx_u32(x396, x347, x380);
- uint8_t x400 = (x399 + x348);
- uint32_t x402, uint32_t x403 = mulx_u32(x10, x13);
- uint32_t x405, uint32_t x406 = mulx_u32(x10, x15);
- uint32_t x408, uint32_t x409 = mulx_u32(x10, x17);
- uint32_t x411, uint32_t x412 = mulx_u32(x10, x19);
- uint32_t x414, uint32_t x415 = mulx_u32(x10, x18);
- uint32_t x417, uint8_t x418 = addcarryx_u32(0x0, x403, x405);
- uint32_t x420, uint8_t x421 = addcarryx_u32(x418, x406, x408);
- uint32_t x423, uint8_t x424 = addcarryx_u32(x421, x409, x411);
- uint32_t x426, uint8_t x427 = addcarryx_u32(x424, x412, x414);
- uint32_t x429, uint8_t _ = addcarryx_u32(0x0, x427, x415);
- uint32_t x432, uint8_t x433 = addcarryx_u32(0x0, x386, x402);
- uint32_t x435, uint8_t x436 = addcarryx_u32(x433, x389, x417);
- uint32_t x438, uint8_t x439 = addcarryx_u32(x436, x392, x420);
- uint32_t x441, uint8_t x442 = addcarryx_u32(x439, x395, x423);
- uint32_t x444, uint8_t x445 = addcarryx_u32(x442, x398, x426);
- uint32_t x447, uint8_t x448 = addcarryx_u32(x445, x400, x429);
- uint32_t x450, uint32_t _ = mulx_u32(x432, 0x38e38e39);
- uint32_t x453, uint32_t x454 = mulx_u32(x450, 0xfffffff7);
- uint32_t x456, uint32_t x457 = mulx_u32(x450, 0xffffffff);
- uint32_t x459, uint32_t x460 = mulx_u32(x450, 0xffffffff);
- uint32_t x462, uint32_t x463 = mulx_u32(x450, 0xffffffff);
- uint32_t x465, uint32_t x466 = mulx_u32(x450, 0x1fff);
- uint32_t x468, uint8_t x469 = addcarryx_u32(0x0, x454, x456);
- uint32_t x471, uint8_t x472 = addcarryx_u32(x469, x457, x459);
- uint32_t x474, uint8_t x475 = addcarryx_u32(x472, x460, x462);
- uint32_t x477, uint8_t x478 = addcarryx_u32(x475, x463, x465);
- uint32_t x480, uint8_t _ = addcarryx_u32(0x0, x478, x466);
- uint32_t _, uint8_t x484 = addcarryx_u32(0x0, x432, x453);
- uint32_t x486, uint8_t x487 = addcarryx_u32(x484, x435, x468);
- uint32_t x489, uint8_t x490 = addcarryx_u32(x487, x438, x471);
- uint32_t x492, uint8_t x493 = addcarryx_u32(x490, x441, x474);
- uint32_t x495, uint8_t x496 = addcarryx_u32(x493, x444, x477);
- uint32_t x498, uint8_t x499 = addcarryx_u32(x496, x447, x480);
- uint8_t x500 = (x499 + x448);
- uint32_t x502, uint8_t x503 = subborrow_u32(0x0, x486, 0xfffffff7);
- uint32_t x505, uint8_t x506 = subborrow_u32(x503, x489, 0xffffffff);
- uint32_t x508, uint8_t x509 = subborrow_u32(x506, x492, 0xffffffff);
- uint32_t x511, uint8_t x512 = subborrow_u32(x509, x495, 0xffffffff);
- uint32_t x514, uint8_t x515 = subborrow_u32(x512, x498, 0x1fff);
- uint32_t _, uint8_t x518 = subborrow_u32(x515, x500, 0x0);
- uint32_t x519 = cmovznz32(x518, x514, x498);
- uint32_t x520 = cmovznz32(x518, x511, x495);
- uint32_t x521 = cmovznz32(x518, x508, x492);
- uint32_t x522 = cmovznz32(x518, x505, x489);
- uint32_t x523 = cmovznz32(x518, x502, x486);
- return (x519, x520, x521, x522, x523))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e141m9_5limbs/femulDisplay.v b/src/Specific/montgomery32_2e141m9_5limbs/femulDisplay.v
deleted file mode 100644
index d68128c60..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e141m9_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e141m9_5limbs/fenz.c b/src/Specific/montgomery32_2e141m9_5limbs/fenz.c
deleted file mode 100644
index 5601e8c15..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/fenz.c
+++ /dev/null
@@ -1,13 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x9 = (x8 | x7);
- { uint32_t x10 = (x6 | x9);
- { uint32_t x11 = (x4 | x10);
- { uint32_t x12 = (x2 | x11);
- out[0] = x12;
- }}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e141m9_5limbs/fenz.v b/src/Specific/montgomery32_2e141m9_5limbs/fenz.v
deleted file mode 100644
index ce075993d..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e141m9_5limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e141m9_5limbs/fenzDisplay.log b/src/Specific/montgomery32_2e141m9_5limbs/fenzDisplay.log
deleted file mode 100644
index 723d13164..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/fenzDisplay.log
+++ /dev/null
@@ -1,11 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint32_t x9 = (x8 | x7);
- uint32_t x10 = (x6 | x9);
- uint32_t x11 = (x4 | x10);
- uint32_t x12 = (x2 | x11);
- return x12)
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e141m9_5limbs/fenzDisplay.v b/src/Specific/montgomery32_2e141m9_5limbs/fenzDisplay.v
deleted file mode 100644
index bf6031d0c..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e141m9_5limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e141m9_5limbs/feopp.c b/src/Specific/montgomery32_2e141m9_5limbs/feopp.c
deleted file mode 100644
index 1df743151..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/feopp.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void feopp(uint32_t out[5], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x10; uint8_t x11 = _subborrow_u32(0x0, 0x0, x2, &x10);
- { uint32_t x13; uint8_t x14 = _subborrow_u32(x11, 0x0, x4, &x13);
- { uint32_t x16; uint8_t x17 = _subborrow_u32(x14, 0x0, x6, &x16);
- { uint32_t x19; uint8_t x20 = _subborrow_u32(x17, 0x0, x8, &x19);
- { uint32_t x22; uint8_t x23 = _subborrow_u32(x20, 0x0, x7, &x22);
- { uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- { uint32_t x25 = (x24 & 0xfffffff7);
- { uint32_t x27; uint8_t x28 = _addcarryx_u32(0x0, x10, x25, &x27);
- { uint32_t x29 = (x24 & 0xffffffff);
- { uint32_t x31; uint8_t x32 = _addcarryx_u32(x28, x13, x29, &x31);
- { uint32_t x33 = (x24 & 0xffffffff);
- { uint32_t x35; uint8_t x36 = _addcarryx_u32(x32, x16, x33, &x35);
- { uint32_t x37 = (x24 & 0xffffffff);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x36, x19, x37, &x39);
- { uint32_t x41 = (x24 & 0x1fff);
- { uint32_t x43; uint8_t _ = _addcarryx_u32(x40, x22, x41, &x43);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e141m9_5limbs/feopp.v b/src/Specific/montgomery32_2e141m9_5limbs/feopp.v
deleted file mode 100644
index 01aa4b127..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e141m9_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e141m9_5limbs/feoppDisplay.log b/src/Specific/montgomery32_2e141m9_5limbs/feoppDisplay.log
deleted file mode 100644
index 0bb6e4ef5..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/feoppDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint32_t x10, uint8_t x11 = subborrow_u32(0x0, 0x0, x2);
- uint32_t x13, uint8_t x14 = subborrow_u32(x11, 0x0, x4);
- uint32_t x16, uint8_t x17 = subborrow_u32(x14, 0x0, x6);
- uint32_t x19, uint8_t x20 = subborrow_u32(x17, 0x0, x8);
- uint32_t x22, uint8_t x23 = subborrow_u32(x20, 0x0, x7);
- uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- uint32_t x25 = (x24 & 0xfffffff7);
- uint32_t x27, uint8_t x28 = addcarryx_u32(0x0, x10, x25);
- uint32_t x29 = (x24 & 0xffffffff);
- uint32_t x31, uint8_t x32 = addcarryx_u32(x28, x13, x29);
- uint32_t x33 = (x24 & 0xffffffff);
- uint32_t x35, uint8_t x36 = addcarryx_u32(x32, x16, x33);
- uint32_t x37 = (x24 & 0xffffffff);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x36, x19, x37);
- uint32_t x41 = (x24 & 0x1fff);
- uint32_t x43, uint8_t _ = addcarryx_u32(x40, x22, x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e141m9_5limbs/feoppDisplay.v b/src/Specific/montgomery32_2e141m9_5limbs/feoppDisplay.v
deleted file mode 100644
index 01c672f9b..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e141m9_5limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e141m9_5limbs/fesquare.c b/src/Specific/montgomery32_2e141m9_5limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e141m9_5limbs/fesub.c b/src/Specific/montgomery32_2e141m9_5limbs/fesub.c
deleted file mode 100644
index ac66bcd49..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/fesub.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void fesub(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x21; uint8_t x22 = _subborrow_u32(0x0, x5, x13, &x21);
- { uint32_t x24; uint8_t x25 = _subborrow_u32(x22, x7, x15, &x24);
- { uint32_t x27; uint8_t x28 = _subborrow_u32(x25, x9, x17, &x27);
- { uint32_t x30; uint8_t x31 = _subborrow_u32(x28, x11, x19, &x30);
- { uint32_t x33; uint8_t x34 = _subborrow_u32(x31, x10, x18, &x33);
- { uint32_t x35 = cmovznz32(x34, 0x0, 0xffffffff);
- { uint32_t x36 = (x35 & 0xfffffff7);
- { uint32_t x38; uint8_t x39 = _addcarryx_u32(0x0, x21, x36, &x38);
- { uint32_t x40 = (x35 & 0xffffffff);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x39, x24, x40, &x42);
- { uint32_t x44 = (x35 & 0xffffffff);
- { uint32_t x46; uint8_t x47 = _addcarryx_u32(x43, x27, x44, &x46);
- { uint32_t x48 = (x35 & 0xffffffff);
- { uint32_t x50; uint8_t x51 = _addcarryx_u32(x47, x30, x48, &x50);
- { uint32_t x52 = (x35 & 0x1fff);
- { uint32_t x54; uint8_t _ = _addcarryx_u32(x51, x33, x52, &x54);
- out[0] = x38;
- out[1] = x42;
- out[2] = x46;
- out[3] = x50;
- out[4] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e141m9_5limbs/fesub.v b/src/Specific/montgomery32_2e141m9_5limbs/fesub.v
deleted file mode 100644
index 2636b0188..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e141m9_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e141m9_5limbs/fesubDisplay.log b/src/Specific/montgomery32_2e141m9_5limbs/fesubDisplay.log
deleted file mode 100644
index 68b2db085..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint8_t x22 = subborrow_u32(0x0, x5, x13);
- uint32_t x24, uint8_t x25 = subborrow_u32(x22, x7, x15);
- uint32_t x27, uint8_t x28 = subborrow_u32(x25, x9, x17);
- uint32_t x30, uint8_t x31 = subborrow_u32(x28, x11, x19);
- uint32_t x33, uint8_t x34 = subborrow_u32(x31, x10, x18);
- uint32_t x35 = cmovznz32(x34, 0x0, 0xffffffff);
- uint32_t x36 = (x35 & 0xfffffff7);
- uint32_t x38, uint8_t x39 = addcarryx_u32(0x0, x21, x36);
- uint32_t x40 = (x35 & 0xffffffff);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x39, x24, x40);
- uint32_t x44 = (x35 & 0xffffffff);
- uint32_t x46, uint8_t x47 = addcarryx_u32(x43, x27, x44);
- uint32_t x48 = (x35 & 0xffffffff);
- uint32_t x50, uint8_t x51 = addcarryx_u32(x47, x30, x48);
- uint32_t x52 = (x35 & 0x1fff);
- uint32_t x54, uint8_t _ = addcarryx_u32(x51, x33, x52);
- (Return x54, Return x50, Return x46, Return x42, Return x38))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e141m9_5limbs/fesubDisplay.v b/src/Specific/montgomery32_2e141m9_5limbs/fesubDisplay.v
deleted file mode 100644
index 34de3f43c..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e141m9_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e141m9_5limbs/py_interpreter.sh b/src/Specific/montgomery32_2e141m9_5limbs/py_interpreter.sh
deleted file mode 100755
index efdc6d4ce..000000000
--- a/src/Specific/montgomery32_2e141m9_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**141 - 9' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e150m3_5limbs/CurveParameters.v b/src/Specific/montgomery32_2e150m3_5limbs/CurveParameters.v
deleted file mode 100644
index 761ac9131..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^150 - 3
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 32;
- bitwidth := 32;
- s := 2^150;
- c := [(1, 3)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e150m3_5limbs/Synthesis.v b/src/Specific/montgomery32_2e150m3_5limbs/Synthesis.v
deleted file mode 100644
index 4b788c221..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e150m3_5limbs.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/montgomery32_2e150m3_5limbs/compiler.sh b/src/Specific/montgomery32_2e150m3_5limbs/compiler.sh
deleted file mode 100755
index 53fdb40c6..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<150) - 3' "$@"
diff --git a/src/Specific/montgomery32_2e150m3_5limbs/compilerxx.sh b/src/Specific/montgomery32_2e150m3_5limbs/compilerxx.sh
deleted file mode 100755
index 58cdd782f..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<150) - 3' "$@"
diff --git a/src/Specific/montgomery32_2e150m3_5limbs/feadd.c b/src/Specific/montgomery32_2e150m3_5limbs/feadd.c
deleted file mode 100644
index 9a127229b..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/feadd.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feadd(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x21; uint8_t x22 = _addcarryx_u32(0x0, x5, x13, &x21);
- { uint32_t x24; uint8_t x25 = _addcarryx_u32(x22, x7, x15, &x24);
- { uint32_t x27; uint8_t x28 = _addcarryx_u32(x25, x9, x17, &x27);
- { uint32_t x30; uint8_t x31 = _addcarryx_u32(x28, x11, x19, &x30);
- { uint32_t x33; uint8_t x34 = _addcarryx_u32(x31, x10, x18, &x33);
- { uint32_t x36; uint8_t x37 = _subborrow_u32(0x0, x21, 0xfffffffd, &x36);
- { uint32_t x39; uint8_t x40 = _subborrow_u32(x37, x24, 0xffffffff, &x39);
- { uint32_t x42; uint8_t x43 = _subborrow_u32(x40, x27, 0xffffffff, &x42);
- { uint32_t x45; uint8_t x46 = _subborrow_u32(x43, x30, 0xffffffff, &x45);
- { uint32_t x48; uint8_t x49 = _subborrow_u32(x46, x33, 0x3fffff, &x48);
- { uint32_t _; uint8_t x52 = _subborrow_u32(x49, x34, 0x0, &_);
- { uint32_t x53 = cmovznz32(x52, x48, x33);
- { uint32_t x54 = cmovznz32(x52, x45, x30);
- { uint32_t x55 = cmovznz32(x52, x42, x27);
- { uint32_t x56 = cmovznz32(x52, x39, x24);
- { uint32_t x57 = cmovznz32(x52, x36, x21);
- out[0] = x57;
- out[1] = x56;
- out[2] = x55;
- out[3] = x54;
- out[4] = x53;
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e150m3_5limbs/feadd.v b/src/Specific/montgomery32_2e150m3_5limbs/feadd.v
deleted file mode 100644
index 51ae22d1e..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e150m3_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e150m3_5limbs/feaddDisplay.log b/src/Specific/montgomery32_2e150m3_5limbs/feaddDisplay.log
deleted file mode 100644
index 2633d1b6d..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint8_t x22 = addcarryx_u32(0x0, x5, x13);
- uint32_t x24, uint8_t x25 = addcarryx_u32(x22, x7, x15);
- uint32_t x27, uint8_t x28 = addcarryx_u32(x25, x9, x17);
- uint32_t x30, uint8_t x31 = addcarryx_u32(x28, x11, x19);
- uint32_t x33, uint8_t x34 = addcarryx_u32(x31, x10, x18);
- uint32_t x36, uint8_t x37 = subborrow_u32(0x0, x21, 0xfffffffd);
- uint32_t x39, uint8_t x40 = subborrow_u32(x37, x24, 0xffffffff);
- uint32_t x42, uint8_t x43 = subborrow_u32(x40, x27, 0xffffffff);
- uint32_t x45, uint8_t x46 = subborrow_u32(x43, x30, 0xffffffff);
- uint32_t x48, uint8_t x49 = subborrow_u32(x46, x33, 0x3fffff);
- uint32_t _, uint8_t x52 = subborrow_u32(x49, x34, 0x0);
- uint32_t x53 = cmovznz32(x52, x48, x33);
- uint32_t x54 = cmovznz32(x52, x45, x30);
- uint32_t x55 = cmovznz32(x52, x42, x27);
- uint32_t x56 = cmovznz32(x52, x39, x24);
- uint32_t x57 = cmovznz32(x52, x36, x21);
- return (x53, x54, x55, x56, x57))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e150m3_5limbs/feaddDisplay.v b/src/Specific/montgomery32_2e150m3_5limbs/feaddDisplay.v
deleted file mode 100644
index a87ae2476..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e150m3_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e150m3_5limbs/femul.c b/src/Specific/montgomery32_2e150m3_5limbs/femul.c
deleted file mode 100644
index a7b4e9f8f..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/femul.c
+++ /dev/null
@@ -1,192 +0,0 @@
-static void femul(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x22; uint32_t x21 = _mulx_u32(x5, x13, &x22);
- { uint32_t x25; uint32_t x24 = _mulx_u32(x5, x15, &x25);
- { uint32_t x28; uint32_t x27 = _mulx_u32(x5, x17, &x28);
- { uint32_t x31; uint32_t x30 = _mulx_u32(x5, x19, &x31);
- { uint32_t x34; uint32_t x33 = _mulx_u32(x5, x18, &x34);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(0x0, x22, x24, &x36);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x37, x25, x27, &x39);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x40, x28, x30, &x42);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(x43, x31, x33, &x45);
- { uint32_t x48; uint8_t _ = _addcarryx_u32(0x0, x46, x34, &x48);
- { uint32_t _; uint32_t x51 = _mulx_u32(x21, 0xaaaaaaab, &_);
- { uint32_t x55; uint32_t x54 = _mulx_u32(x51, 0xfffffffd, &x55);
- { uint32_t x58; uint32_t x57 = _mulx_u32(x51, 0xffffffff, &x58);
- { uint32_t x61; uint32_t x60 = _mulx_u32(x51, 0xffffffff, &x61);
- { uint32_t x64; uint32_t x63 = _mulx_u32(x51, 0xffffffff, &x64);
- { uint32_t x67; uint32_t x66 = _mulx_u32(x51, 0x3fffff, &x67);
- { uint32_t x69; uint8_t x70 = _addcarryx_u32(0x0, x55, x57, &x69);
- { uint32_t x72; uint8_t x73 = _addcarryx_u32(x70, x58, x60, &x72);
- { uint32_t x75; uint8_t x76 = _addcarryx_u32(x73, x61, x63, &x75);
- { uint32_t x78; uint8_t x79 = _addcarryx_u32(x76, x64, x66, &x78);
- { uint32_t x81; uint8_t _ = _addcarryx_u32(0x0, x79, x67, &x81);
- { uint32_t _; uint8_t x85 = _addcarryx_u32(0x0, x21, x54, &_);
- { uint32_t x87; uint8_t x88 = _addcarryx_u32(x85, x36, x69, &x87);
- { uint32_t x90; uint8_t x91 = _addcarryx_u32(x88, x39, x72, &x90);
- { uint32_t x93; uint8_t x94 = _addcarryx_u32(x91, x42, x75, &x93);
- { uint32_t x96; uint8_t x97 = _addcarryx_u32(x94, x45, x78, &x96);
- { uint32_t x99; uint8_t x100 = _addcarryx_u32(x97, x48, x81, &x99);
- { uint32_t x103; uint32_t x102 = _mulx_u32(x7, x13, &x103);
- { uint32_t x106; uint32_t x105 = _mulx_u32(x7, x15, &x106);
- { uint32_t x109; uint32_t x108 = _mulx_u32(x7, x17, &x109);
- { uint32_t x112; uint32_t x111 = _mulx_u32(x7, x19, &x112);
- { uint32_t x115; uint32_t x114 = _mulx_u32(x7, x18, &x115);
- { uint32_t x117; uint8_t x118 = _addcarryx_u32(0x0, x103, x105, &x117);
- { uint32_t x120; uint8_t x121 = _addcarryx_u32(x118, x106, x108, &x120);
- { uint32_t x123; uint8_t x124 = _addcarryx_u32(x121, x109, x111, &x123);
- { uint32_t x126; uint8_t x127 = _addcarryx_u32(x124, x112, x114, &x126);
- { uint32_t x129; uint8_t _ = _addcarryx_u32(0x0, x127, x115, &x129);
- { uint32_t x132; uint8_t x133 = _addcarryx_u32(0x0, x87, x102, &x132);
- { uint32_t x135; uint8_t x136 = _addcarryx_u32(x133, x90, x117, &x135);
- { uint32_t x138; uint8_t x139 = _addcarryx_u32(x136, x93, x120, &x138);
- { uint32_t x141; uint8_t x142 = _addcarryx_u32(x139, x96, x123, &x141);
- { uint32_t x144; uint8_t x145 = _addcarryx_u32(x142, x99, x126, &x144);
- { uint32_t x147; uint8_t x148 = _addcarryx_u32(x145, x100, x129, &x147);
- { uint32_t _; uint32_t x150 = _mulx_u32(x132, 0xaaaaaaab, &_);
- { uint32_t x154; uint32_t x153 = _mulx_u32(x150, 0xfffffffd, &x154);
- { uint32_t x157; uint32_t x156 = _mulx_u32(x150, 0xffffffff, &x157);
- { uint32_t x160; uint32_t x159 = _mulx_u32(x150, 0xffffffff, &x160);
- { uint32_t x163; uint32_t x162 = _mulx_u32(x150, 0xffffffff, &x163);
- { uint32_t x166; uint32_t x165 = _mulx_u32(x150, 0x3fffff, &x166);
- { uint32_t x168; uint8_t x169 = _addcarryx_u32(0x0, x154, x156, &x168);
- { uint32_t x171; uint8_t x172 = _addcarryx_u32(x169, x157, x159, &x171);
- { uint32_t x174; uint8_t x175 = _addcarryx_u32(x172, x160, x162, &x174);
- { uint32_t x177; uint8_t x178 = _addcarryx_u32(x175, x163, x165, &x177);
- { uint32_t x180; uint8_t _ = _addcarryx_u32(0x0, x178, x166, &x180);
- { uint32_t _; uint8_t x184 = _addcarryx_u32(0x0, x132, x153, &_);
- { uint32_t x186; uint8_t x187 = _addcarryx_u32(x184, x135, x168, &x186);
- { uint32_t x189; uint8_t x190 = _addcarryx_u32(x187, x138, x171, &x189);
- { uint32_t x192; uint8_t x193 = _addcarryx_u32(x190, x141, x174, &x192);
- { uint32_t x195; uint8_t x196 = _addcarryx_u32(x193, x144, x177, &x195);
- { uint32_t x198; uint8_t x199 = _addcarryx_u32(x196, x147, x180, &x198);
- { uint8_t x200 = (x199 + x148);
- { uint32_t x203; uint32_t x202 = _mulx_u32(x9, x13, &x203);
- { uint32_t x206; uint32_t x205 = _mulx_u32(x9, x15, &x206);
- { uint32_t x209; uint32_t x208 = _mulx_u32(x9, x17, &x209);
- { uint32_t x212; uint32_t x211 = _mulx_u32(x9, x19, &x212);
- { uint32_t x215; uint32_t x214 = _mulx_u32(x9, x18, &x215);
- { uint32_t x217; uint8_t x218 = _addcarryx_u32(0x0, x203, x205, &x217);
- { uint32_t x220; uint8_t x221 = _addcarryx_u32(x218, x206, x208, &x220);
- { uint32_t x223; uint8_t x224 = _addcarryx_u32(x221, x209, x211, &x223);
- { uint32_t x226; uint8_t x227 = _addcarryx_u32(x224, x212, x214, &x226);
- { uint32_t x229; uint8_t _ = _addcarryx_u32(0x0, x227, x215, &x229);
- { uint32_t x232; uint8_t x233 = _addcarryx_u32(0x0, x186, x202, &x232);
- { uint32_t x235; uint8_t x236 = _addcarryx_u32(x233, x189, x217, &x235);
- { uint32_t x238; uint8_t x239 = _addcarryx_u32(x236, x192, x220, &x238);
- { uint32_t x241; uint8_t x242 = _addcarryx_u32(x239, x195, x223, &x241);
- { uint32_t x244; uint8_t x245 = _addcarryx_u32(x242, x198, x226, &x244);
- { uint32_t x247; uint8_t x248 = _addcarryx_u32(x245, x200, x229, &x247);
- { uint32_t _; uint32_t x250 = _mulx_u32(x232, 0xaaaaaaab, &_);
- { uint32_t x254; uint32_t x253 = _mulx_u32(x250, 0xfffffffd, &x254);
- { uint32_t x257; uint32_t x256 = _mulx_u32(x250, 0xffffffff, &x257);
- { uint32_t x260; uint32_t x259 = _mulx_u32(x250, 0xffffffff, &x260);
- { uint32_t x263; uint32_t x262 = _mulx_u32(x250, 0xffffffff, &x263);
- { uint32_t x266; uint32_t x265 = _mulx_u32(x250, 0x3fffff, &x266);
- { uint32_t x268; uint8_t x269 = _addcarryx_u32(0x0, x254, x256, &x268);
- { uint32_t x271; uint8_t x272 = _addcarryx_u32(x269, x257, x259, &x271);
- { uint32_t x274; uint8_t x275 = _addcarryx_u32(x272, x260, x262, &x274);
- { uint32_t x277; uint8_t x278 = _addcarryx_u32(x275, x263, x265, &x277);
- { uint32_t x280; uint8_t _ = _addcarryx_u32(0x0, x278, x266, &x280);
- { uint32_t _; uint8_t x284 = _addcarryx_u32(0x0, x232, x253, &_);
- { uint32_t x286; uint8_t x287 = _addcarryx_u32(x284, x235, x268, &x286);
- { uint32_t x289; uint8_t x290 = _addcarryx_u32(x287, x238, x271, &x289);
- { uint32_t x292; uint8_t x293 = _addcarryx_u32(x290, x241, x274, &x292);
- { uint32_t x295; uint8_t x296 = _addcarryx_u32(x293, x244, x277, &x295);
- { uint32_t x298; uint8_t x299 = _addcarryx_u32(x296, x247, x280, &x298);
- { uint8_t x300 = (x299 + x248);
- { uint32_t x303; uint32_t x302 = _mulx_u32(x11, x13, &x303);
- { uint32_t x306; uint32_t x305 = _mulx_u32(x11, x15, &x306);
- { uint32_t x309; uint32_t x308 = _mulx_u32(x11, x17, &x309);
- { uint32_t x312; uint32_t x311 = _mulx_u32(x11, x19, &x312);
- { uint32_t x315; uint32_t x314 = _mulx_u32(x11, x18, &x315);
- { uint32_t x317; uint8_t x318 = _addcarryx_u32(0x0, x303, x305, &x317);
- { uint32_t x320; uint8_t x321 = _addcarryx_u32(x318, x306, x308, &x320);
- { uint32_t x323; uint8_t x324 = _addcarryx_u32(x321, x309, x311, &x323);
- { uint32_t x326; uint8_t x327 = _addcarryx_u32(x324, x312, x314, &x326);
- { uint32_t x329; uint8_t _ = _addcarryx_u32(0x0, x327, x315, &x329);
- { uint32_t x332; uint8_t x333 = _addcarryx_u32(0x0, x286, x302, &x332);
- { uint32_t x335; uint8_t x336 = _addcarryx_u32(x333, x289, x317, &x335);
- { uint32_t x338; uint8_t x339 = _addcarryx_u32(x336, x292, x320, &x338);
- { uint32_t x341; uint8_t x342 = _addcarryx_u32(x339, x295, x323, &x341);
- { uint32_t x344; uint8_t x345 = _addcarryx_u32(x342, x298, x326, &x344);
- { uint32_t x347; uint8_t x348 = _addcarryx_u32(x345, x300, x329, &x347);
- { uint32_t _; uint32_t x350 = _mulx_u32(x332, 0xaaaaaaab, &_);
- { uint32_t x354; uint32_t x353 = _mulx_u32(x350, 0xfffffffd, &x354);
- { uint32_t x357; uint32_t x356 = _mulx_u32(x350, 0xffffffff, &x357);
- { uint32_t x360; uint32_t x359 = _mulx_u32(x350, 0xffffffff, &x360);
- { uint32_t x363; uint32_t x362 = _mulx_u32(x350, 0xffffffff, &x363);
- { uint32_t x366; uint32_t x365 = _mulx_u32(x350, 0x3fffff, &x366);
- { uint32_t x368; uint8_t x369 = _addcarryx_u32(0x0, x354, x356, &x368);
- { uint32_t x371; uint8_t x372 = _addcarryx_u32(x369, x357, x359, &x371);
- { uint32_t x374; uint8_t x375 = _addcarryx_u32(x372, x360, x362, &x374);
- { uint32_t x377; uint8_t x378 = _addcarryx_u32(x375, x363, x365, &x377);
- { uint32_t x380; uint8_t _ = _addcarryx_u32(0x0, x378, x366, &x380);
- { uint32_t _; uint8_t x384 = _addcarryx_u32(0x0, x332, x353, &_);
- { uint32_t x386; uint8_t x387 = _addcarryx_u32(x384, x335, x368, &x386);
- { uint32_t x389; uint8_t x390 = _addcarryx_u32(x387, x338, x371, &x389);
- { uint32_t x392; uint8_t x393 = _addcarryx_u32(x390, x341, x374, &x392);
- { uint32_t x395; uint8_t x396 = _addcarryx_u32(x393, x344, x377, &x395);
- { uint32_t x398; uint8_t x399 = _addcarryx_u32(x396, x347, x380, &x398);
- { uint8_t x400 = (x399 + x348);
- { uint32_t x403; uint32_t x402 = _mulx_u32(x10, x13, &x403);
- { uint32_t x406; uint32_t x405 = _mulx_u32(x10, x15, &x406);
- { uint32_t x409; uint32_t x408 = _mulx_u32(x10, x17, &x409);
- { uint32_t x412; uint32_t x411 = _mulx_u32(x10, x19, &x412);
- { uint32_t x415; uint32_t x414 = _mulx_u32(x10, x18, &x415);
- { uint32_t x417; uint8_t x418 = _addcarryx_u32(0x0, x403, x405, &x417);
- { uint32_t x420; uint8_t x421 = _addcarryx_u32(x418, x406, x408, &x420);
- { uint32_t x423; uint8_t x424 = _addcarryx_u32(x421, x409, x411, &x423);
- { uint32_t x426; uint8_t x427 = _addcarryx_u32(x424, x412, x414, &x426);
- { uint32_t x429; uint8_t _ = _addcarryx_u32(0x0, x427, x415, &x429);
- { uint32_t x432; uint8_t x433 = _addcarryx_u32(0x0, x386, x402, &x432);
- { uint32_t x435; uint8_t x436 = _addcarryx_u32(x433, x389, x417, &x435);
- { uint32_t x438; uint8_t x439 = _addcarryx_u32(x436, x392, x420, &x438);
- { uint32_t x441; uint8_t x442 = _addcarryx_u32(x439, x395, x423, &x441);
- { uint32_t x444; uint8_t x445 = _addcarryx_u32(x442, x398, x426, &x444);
- { uint32_t x447; uint8_t x448 = _addcarryx_u32(x445, x400, x429, &x447);
- { uint32_t _; uint32_t x450 = _mulx_u32(x432, 0xaaaaaaab, &_);
- { uint32_t x454; uint32_t x453 = _mulx_u32(x450, 0xfffffffd, &x454);
- { uint32_t x457; uint32_t x456 = _mulx_u32(x450, 0xffffffff, &x457);
- { uint32_t x460; uint32_t x459 = _mulx_u32(x450, 0xffffffff, &x460);
- { uint32_t x463; uint32_t x462 = _mulx_u32(x450, 0xffffffff, &x463);
- { uint32_t x466; uint32_t x465 = _mulx_u32(x450, 0x3fffff, &x466);
- { uint32_t x468; uint8_t x469 = _addcarryx_u32(0x0, x454, x456, &x468);
- { uint32_t x471; uint8_t x472 = _addcarryx_u32(x469, x457, x459, &x471);
- { uint32_t x474; uint8_t x475 = _addcarryx_u32(x472, x460, x462, &x474);
- { uint32_t x477; uint8_t x478 = _addcarryx_u32(x475, x463, x465, &x477);
- { uint32_t x480; uint8_t _ = _addcarryx_u32(0x0, x478, x466, &x480);
- { uint32_t _; uint8_t x484 = _addcarryx_u32(0x0, x432, x453, &_);
- { uint32_t x486; uint8_t x487 = _addcarryx_u32(x484, x435, x468, &x486);
- { uint32_t x489; uint8_t x490 = _addcarryx_u32(x487, x438, x471, &x489);
- { uint32_t x492; uint8_t x493 = _addcarryx_u32(x490, x441, x474, &x492);
- { uint32_t x495; uint8_t x496 = _addcarryx_u32(x493, x444, x477, &x495);
- { uint32_t x498; uint8_t x499 = _addcarryx_u32(x496, x447, x480, &x498);
- { uint8_t x500 = (x499 + x448);
- { uint32_t x502; uint8_t x503 = _subborrow_u32(0x0, x486, 0xfffffffd, &x502);
- { uint32_t x505; uint8_t x506 = _subborrow_u32(x503, x489, 0xffffffff, &x505);
- { uint32_t x508; uint8_t x509 = _subborrow_u32(x506, x492, 0xffffffff, &x508);
- { uint32_t x511; uint8_t x512 = _subborrow_u32(x509, x495, 0xffffffff, &x511);
- { uint32_t x514; uint8_t x515 = _subborrow_u32(x512, x498, 0x3fffff, &x514);
- { uint32_t _; uint8_t x518 = _subborrow_u32(x515, x500, 0x0, &_);
- { uint32_t x519 = cmovznz32(x518, x514, x498);
- { uint32_t x520 = cmovznz32(x518, x511, x495);
- { uint32_t x521 = cmovznz32(x518, x508, x492);
- { uint32_t x522 = cmovznz32(x518, x505, x489);
- { uint32_t x523 = cmovznz32(x518, x502, x486);
- out[0] = x523;
- out[1] = x522;
- out[2] = x521;
- out[3] = x520;
- out[4] = x519;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e150m3_5limbs/femul.v b/src/Specific/montgomery32_2e150m3_5limbs/femul.v
deleted file mode 100644
index e88f08d14..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e150m3_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e150m3_5limbs/femulDisplay.log b/src/Specific/montgomery32_2e150m3_5limbs/femulDisplay.log
deleted file mode 100644
index 6258382e3..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,181 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint32_t x22 = mulx_u32(x5, x13);
- uint32_t x24, uint32_t x25 = mulx_u32(x5, x15);
- uint32_t x27, uint32_t x28 = mulx_u32(x5, x17);
- uint32_t x30, uint32_t x31 = mulx_u32(x5, x19);
- uint32_t x33, uint32_t x34 = mulx_u32(x5, x18);
- uint32_t x36, uint8_t x37 = addcarryx_u32(0x0, x22, x24);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x37, x25, x27);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x40, x28, x30);
- uint32_t x45, uint8_t x46 = addcarryx_u32(x43, x31, x33);
- uint32_t x48, uint8_t _ = addcarryx_u32(0x0, x46, x34);
- uint32_t x51, uint32_t _ = mulx_u32(x21, 0xaaaaaaab);
- uint32_t x54, uint32_t x55 = mulx_u32(x51, 0xfffffffd);
- uint32_t x57, uint32_t x58 = mulx_u32(x51, 0xffffffff);
- uint32_t x60, uint32_t x61 = mulx_u32(x51, 0xffffffff);
- uint32_t x63, uint32_t x64 = mulx_u32(x51, 0xffffffff);
- uint32_t x66, uint32_t x67 = mulx_u32(x51, 0x3fffff);
- uint32_t x69, uint8_t x70 = addcarryx_u32(0x0, x55, x57);
- uint32_t x72, uint8_t x73 = addcarryx_u32(x70, x58, x60);
- uint32_t x75, uint8_t x76 = addcarryx_u32(x73, x61, x63);
- uint32_t x78, uint8_t x79 = addcarryx_u32(x76, x64, x66);
- uint32_t x81, uint8_t _ = addcarryx_u32(0x0, x79, x67);
- uint32_t _, uint8_t x85 = addcarryx_u32(0x0, x21, x54);
- uint32_t x87, uint8_t x88 = addcarryx_u32(x85, x36, x69);
- uint32_t x90, uint8_t x91 = addcarryx_u32(x88, x39, x72);
- uint32_t x93, uint8_t x94 = addcarryx_u32(x91, x42, x75);
- uint32_t x96, uint8_t x97 = addcarryx_u32(x94, x45, x78);
- uint32_t x99, uint8_t x100 = addcarryx_u32(x97, x48, x81);
- uint32_t x102, uint32_t x103 = mulx_u32(x7, x13);
- uint32_t x105, uint32_t x106 = mulx_u32(x7, x15);
- uint32_t x108, uint32_t x109 = mulx_u32(x7, x17);
- uint32_t x111, uint32_t x112 = mulx_u32(x7, x19);
- uint32_t x114, uint32_t x115 = mulx_u32(x7, x18);
- uint32_t x117, uint8_t x118 = addcarryx_u32(0x0, x103, x105);
- uint32_t x120, uint8_t x121 = addcarryx_u32(x118, x106, x108);
- uint32_t x123, uint8_t x124 = addcarryx_u32(x121, x109, x111);
- uint32_t x126, uint8_t x127 = addcarryx_u32(x124, x112, x114);
- uint32_t x129, uint8_t _ = addcarryx_u32(0x0, x127, x115);
- uint32_t x132, uint8_t x133 = addcarryx_u32(0x0, x87, x102);
- uint32_t x135, uint8_t x136 = addcarryx_u32(x133, x90, x117);
- uint32_t x138, uint8_t x139 = addcarryx_u32(x136, x93, x120);
- uint32_t x141, uint8_t x142 = addcarryx_u32(x139, x96, x123);
- uint32_t x144, uint8_t x145 = addcarryx_u32(x142, x99, x126);
- uint32_t x147, uint8_t x148 = addcarryx_u32(x145, x100, x129);
- uint32_t x150, uint32_t _ = mulx_u32(x132, 0xaaaaaaab);
- uint32_t x153, uint32_t x154 = mulx_u32(x150, 0xfffffffd);
- uint32_t x156, uint32_t x157 = mulx_u32(x150, 0xffffffff);
- uint32_t x159, uint32_t x160 = mulx_u32(x150, 0xffffffff);
- uint32_t x162, uint32_t x163 = mulx_u32(x150, 0xffffffff);
- uint32_t x165, uint32_t x166 = mulx_u32(x150, 0x3fffff);
- uint32_t x168, uint8_t x169 = addcarryx_u32(0x0, x154, x156);
- uint32_t x171, uint8_t x172 = addcarryx_u32(x169, x157, x159);
- uint32_t x174, uint8_t x175 = addcarryx_u32(x172, x160, x162);
- uint32_t x177, uint8_t x178 = addcarryx_u32(x175, x163, x165);
- uint32_t x180, uint8_t _ = addcarryx_u32(0x0, x178, x166);
- uint32_t _, uint8_t x184 = addcarryx_u32(0x0, x132, x153);
- uint32_t x186, uint8_t x187 = addcarryx_u32(x184, x135, x168);
- uint32_t x189, uint8_t x190 = addcarryx_u32(x187, x138, x171);
- uint32_t x192, uint8_t x193 = addcarryx_u32(x190, x141, x174);
- uint32_t x195, uint8_t x196 = addcarryx_u32(x193, x144, x177);
- uint32_t x198, uint8_t x199 = addcarryx_u32(x196, x147, x180);
- uint8_t x200 = (x199 + x148);
- uint32_t x202, uint32_t x203 = mulx_u32(x9, x13);
- uint32_t x205, uint32_t x206 = mulx_u32(x9, x15);
- uint32_t x208, uint32_t x209 = mulx_u32(x9, x17);
- uint32_t x211, uint32_t x212 = mulx_u32(x9, x19);
- uint32_t x214, uint32_t x215 = mulx_u32(x9, x18);
- uint32_t x217, uint8_t x218 = addcarryx_u32(0x0, x203, x205);
- uint32_t x220, uint8_t x221 = addcarryx_u32(x218, x206, x208);
- uint32_t x223, uint8_t x224 = addcarryx_u32(x221, x209, x211);
- uint32_t x226, uint8_t x227 = addcarryx_u32(x224, x212, x214);
- uint32_t x229, uint8_t _ = addcarryx_u32(0x0, x227, x215);
- uint32_t x232, uint8_t x233 = addcarryx_u32(0x0, x186, x202);
- uint32_t x235, uint8_t x236 = addcarryx_u32(x233, x189, x217);
- uint32_t x238, uint8_t x239 = addcarryx_u32(x236, x192, x220);
- uint32_t x241, uint8_t x242 = addcarryx_u32(x239, x195, x223);
- uint32_t x244, uint8_t x245 = addcarryx_u32(x242, x198, x226);
- uint32_t x247, uint8_t x248 = addcarryx_u32(x245, x200, x229);
- uint32_t x250, uint32_t _ = mulx_u32(x232, 0xaaaaaaab);
- uint32_t x253, uint32_t x254 = mulx_u32(x250, 0xfffffffd);
- uint32_t x256, uint32_t x257 = mulx_u32(x250, 0xffffffff);
- uint32_t x259, uint32_t x260 = mulx_u32(x250, 0xffffffff);
- uint32_t x262, uint32_t x263 = mulx_u32(x250, 0xffffffff);
- uint32_t x265, uint32_t x266 = mulx_u32(x250, 0x3fffff);
- uint32_t x268, uint8_t x269 = addcarryx_u32(0x0, x254, x256);
- uint32_t x271, uint8_t x272 = addcarryx_u32(x269, x257, x259);
- uint32_t x274, uint8_t x275 = addcarryx_u32(x272, x260, x262);
- uint32_t x277, uint8_t x278 = addcarryx_u32(x275, x263, x265);
- uint32_t x280, uint8_t _ = addcarryx_u32(0x0, x278, x266);
- uint32_t _, uint8_t x284 = addcarryx_u32(0x0, x232, x253);
- uint32_t x286, uint8_t x287 = addcarryx_u32(x284, x235, x268);
- uint32_t x289, uint8_t x290 = addcarryx_u32(x287, x238, x271);
- uint32_t x292, uint8_t x293 = addcarryx_u32(x290, x241, x274);
- uint32_t x295, uint8_t x296 = addcarryx_u32(x293, x244, x277);
- uint32_t x298, uint8_t x299 = addcarryx_u32(x296, x247, x280);
- uint8_t x300 = (x299 + x248);
- uint32_t x302, uint32_t x303 = mulx_u32(x11, x13);
- uint32_t x305, uint32_t x306 = mulx_u32(x11, x15);
- uint32_t x308, uint32_t x309 = mulx_u32(x11, x17);
- uint32_t x311, uint32_t x312 = mulx_u32(x11, x19);
- uint32_t x314, uint32_t x315 = mulx_u32(x11, x18);
- uint32_t x317, uint8_t x318 = addcarryx_u32(0x0, x303, x305);
- uint32_t x320, uint8_t x321 = addcarryx_u32(x318, x306, x308);
- uint32_t x323, uint8_t x324 = addcarryx_u32(x321, x309, x311);
- uint32_t x326, uint8_t x327 = addcarryx_u32(x324, x312, x314);
- uint32_t x329, uint8_t _ = addcarryx_u32(0x0, x327, x315);
- uint32_t x332, uint8_t x333 = addcarryx_u32(0x0, x286, x302);
- uint32_t x335, uint8_t x336 = addcarryx_u32(x333, x289, x317);
- uint32_t x338, uint8_t x339 = addcarryx_u32(x336, x292, x320);
- uint32_t x341, uint8_t x342 = addcarryx_u32(x339, x295, x323);
- uint32_t x344, uint8_t x345 = addcarryx_u32(x342, x298, x326);
- uint32_t x347, uint8_t x348 = addcarryx_u32(x345, x300, x329);
- uint32_t x350, uint32_t _ = mulx_u32(x332, 0xaaaaaaab);
- uint32_t x353, uint32_t x354 = mulx_u32(x350, 0xfffffffd);
- uint32_t x356, uint32_t x357 = mulx_u32(x350, 0xffffffff);
- uint32_t x359, uint32_t x360 = mulx_u32(x350, 0xffffffff);
- uint32_t x362, uint32_t x363 = mulx_u32(x350, 0xffffffff);
- uint32_t x365, uint32_t x366 = mulx_u32(x350, 0x3fffff);
- uint32_t x368, uint8_t x369 = addcarryx_u32(0x0, x354, x356);
- uint32_t x371, uint8_t x372 = addcarryx_u32(x369, x357, x359);
- uint32_t x374, uint8_t x375 = addcarryx_u32(x372, x360, x362);
- uint32_t x377, uint8_t x378 = addcarryx_u32(x375, x363, x365);
- uint32_t x380, uint8_t _ = addcarryx_u32(0x0, x378, x366);
- uint32_t _, uint8_t x384 = addcarryx_u32(0x0, x332, x353);
- uint32_t x386, uint8_t x387 = addcarryx_u32(x384, x335, x368);
- uint32_t x389, uint8_t x390 = addcarryx_u32(x387, x338, x371);
- uint32_t x392, uint8_t x393 = addcarryx_u32(x390, x341, x374);
- uint32_t x395, uint8_t x396 = addcarryx_u32(x393, x344, x377);
- uint32_t x398, uint8_t x399 = addcarryx_u32(x396, x347, x380);
- uint8_t x400 = (x399 + x348);
- uint32_t x402, uint32_t x403 = mulx_u32(x10, x13);
- uint32_t x405, uint32_t x406 = mulx_u32(x10, x15);
- uint32_t x408, uint32_t x409 = mulx_u32(x10, x17);
- uint32_t x411, uint32_t x412 = mulx_u32(x10, x19);
- uint32_t x414, uint32_t x415 = mulx_u32(x10, x18);
- uint32_t x417, uint8_t x418 = addcarryx_u32(0x0, x403, x405);
- uint32_t x420, uint8_t x421 = addcarryx_u32(x418, x406, x408);
- uint32_t x423, uint8_t x424 = addcarryx_u32(x421, x409, x411);
- uint32_t x426, uint8_t x427 = addcarryx_u32(x424, x412, x414);
- uint32_t x429, uint8_t _ = addcarryx_u32(0x0, x427, x415);
- uint32_t x432, uint8_t x433 = addcarryx_u32(0x0, x386, x402);
- uint32_t x435, uint8_t x436 = addcarryx_u32(x433, x389, x417);
- uint32_t x438, uint8_t x439 = addcarryx_u32(x436, x392, x420);
- uint32_t x441, uint8_t x442 = addcarryx_u32(x439, x395, x423);
- uint32_t x444, uint8_t x445 = addcarryx_u32(x442, x398, x426);
- uint32_t x447, uint8_t x448 = addcarryx_u32(x445, x400, x429);
- uint32_t x450, uint32_t _ = mulx_u32(x432, 0xaaaaaaab);
- uint32_t x453, uint32_t x454 = mulx_u32(x450, 0xfffffffd);
- uint32_t x456, uint32_t x457 = mulx_u32(x450, 0xffffffff);
- uint32_t x459, uint32_t x460 = mulx_u32(x450, 0xffffffff);
- uint32_t x462, uint32_t x463 = mulx_u32(x450, 0xffffffff);
- uint32_t x465, uint32_t x466 = mulx_u32(x450, 0x3fffff);
- uint32_t x468, uint8_t x469 = addcarryx_u32(0x0, x454, x456);
- uint32_t x471, uint8_t x472 = addcarryx_u32(x469, x457, x459);
- uint32_t x474, uint8_t x475 = addcarryx_u32(x472, x460, x462);
- uint32_t x477, uint8_t x478 = addcarryx_u32(x475, x463, x465);
- uint32_t x480, uint8_t _ = addcarryx_u32(0x0, x478, x466);
- uint32_t _, uint8_t x484 = addcarryx_u32(0x0, x432, x453);
- uint32_t x486, uint8_t x487 = addcarryx_u32(x484, x435, x468);
- uint32_t x489, uint8_t x490 = addcarryx_u32(x487, x438, x471);
- uint32_t x492, uint8_t x493 = addcarryx_u32(x490, x441, x474);
- uint32_t x495, uint8_t x496 = addcarryx_u32(x493, x444, x477);
- uint32_t x498, uint8_t x499 = addcarryx_u32(x496, x447, x480);
- uint8_t x500 = (x499 + x448);
- uint32_t x502, uint8_t x503 = subborrow_u32(0x0, x486, 0xfffffffd);
- uint32_t x505, uint8_t x506 = subborrow_u32(x503, x489, 0xffffffff);
- uint32_t x508, uint8_t x509 = subborrow_u32(x506, x492, 0xffffffff);
- uint32_t x511, uint8_t x512 = subborrow_u32(x509, x495, 0xffffffff);
- uint32_t x514, uint8_t x515 = subborrow_u32(x512, x498, 0x3fffff);
- uint32_t _, uint8_t x518 = subborrow_u32(x515, x500, 0x0);
- uint32_t x519 = cmovznz32(x518, x514, x498);
- uint32_t x520 = cmovznz32(x518, x511, x495);
- uint32_t x521 = cmovznz32(x518, x508, x492);
- uint32_t x522 = cmovznz32(x518, x505, x489);
- uint32_t x523 = cmovznz32(x518, x502, x486);
- return (x519, x520, x521, x522, x523))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e150m3_5limbs/femulDisplay.v b/src/Specific/montgomery32_2e150m3_5limbs/femulDisplay.v
deleted file mode 100644
index 48f659f86..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e150m3_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e150m3_5limbs/fenz.c b/src/Specific/montgomery32_2e150m3_5limbs/fenz.c
deleted file mode 100644
index 5601e8c15..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/fenz.c
+++ /dev/null
@@ -1,13 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x9 = (x8 | x7);
- { uint32_t x10 = (x6 | x9);
- { uint32_t x11 = (x4 | x10);
- { uint32_t x12 = (x2 | x11);
- out[0] = x12;
- }}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e150m3_5limbs/fenz.v b/src/Specific/montgomery32_2e150m3_5limbs/fenz.v
deleted file mode 100644
index 6dba2f111..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e150m3_5limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e150m3_5limbs/fenzDisplay.log b/src/Specific/montgomery32_2e150m3_5limbs/fenzDisplay.log
deleted file mode 100644
index 723d13164..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/fenzDisplay.log
+++ /dev/null
@@ -1,11 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint32_t x9 = (x8 | x7);
- uint32_t x10 = (x6 | x9);
- uint32_t x11 = (x4 | x10);
- uint32_t x12 = (x2 | x11);
- return x12)
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e150m3_5limbs/fenzDisplay.v b/src/Specific/montgomery32_2e150m3_5limbs/fenzDisplay.v
deleted file mode 100644
index a16ea3ceb..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e150m3_5limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e150m3_5limbs/feopp.c b/src/Specific/montgomery32_2e150m3_5limbs/feopp.c
deleted file mode 100644
index d20b45d9f..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/feopp.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void feopp(uint32_t out[5], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x10; uint8_t x11 = _subborrow_u32(0x0, 0x0, x2, &x10);
- { uint32_t x13; uint8_t x14 = _subborrow_u32(x11, 0x0, x4, &x13);
- { uint32_t x16; uint8_t x17 = _subborrow_u32(x14, 0x0, x6, &x16);
- { uint32_t x19; uint8_t x20 = _subborrow_u32(x17, 0x0, x8, &x19);
- { uint32_t x22; uint8_t x23 = _subborrow_u32(x20, 0x0, x7, &x22);
- { uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- { uint32_t x25 = (x24 & 0xfffffffd);
- { uint32_t x27; uint8_t x28 = _addcarryx_u32(0x0, x10, x25, &x27);
- { uint32_t x29 = (x24 & 0xffffffff);
- { uint32_t x31; uint8_t x32 = _addcarryx_u32(x28, x13, x29, &x31);
- { uint32_t x33 = (x24 & 0xffffffff);
- { uint32_t x35; uint8_t x36 = _addcarryx_u32(x32, x16, x33, &x35);
- { uint32_t x37 = (x24 & 0xffffffff);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x36, x19, x37, &x39);
- { uint32_t x41 = (x24 & 0x3fffff);
- { uint32_t x43; uint8_t _ = _addcarryx_u32(x40, x22, x41, &x43);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e150m3_5limbs/feopp.v b/src/Specific/montgomery32_2e150m3_5limbs/feopp.v
deleted file mode 100644
index 5cfa8918d..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e150m3_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e150m3_5limbs/feoppDisplay.log b/src/Specific/montgomery32_2e150m3_5limbs/feoppDisplay.log
deleted file mode 100644
index 15ae1a066..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/feoppDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint32_t x10, uint8_t x11 = subborrow_u32(0x0, 0x0, x2);
- uint32_t x13, uint8_t x14 = subborrow_u32(x11, 0x0, x4);
- uint32_t x16, uint8_t x17 = subborrow_u32(x14, 0x0, x6);
- uint32_t x19, uint8_t x20 = subborrow_u32(x17, 0x0, x8);
- uint32_t x22, uint8_t x23 = subborrow_u32(x20, 0x0, x7);
- uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- uint32_t x25 = (x24 & 0xfffffffd);
- uint32_t x27, uint8_t x28 = addcarryx_u32(0x0, x10, x25);
- uint32_t x29 = (x24 & 0xffffffff);
- uint32_t x31, uint8_t x32 = addcarryx_u32(x28, x13, x29);
- uint32_t x33 = (x24 & 0xffffffff);
- uint32_t x35, uint8_t x36 = addcarryx_u32(x32, x16, x33);
- uint32_t x37 = (x24 & 0xffffffff);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x36, x19, x37);
- uint32_t x41 = (x24 & 0x3fffff);
- uint32_t x43, uint8_t _ = addcarryx_u32(x40, x22, x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e150m3_5limbs/feoppDisplay.v b/src/Specific/montgomery32_2e150m3_5limbs/feoppDisplay.v
deleted file mode 100644
index 1ede3cecb..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e150m3_5limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e150m3_5limbs/fesquare.c b/src/Specific/montgomery32_2e150m3_5limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e150m3_5limbs/fesub.c b/src/Specific/montgomery32_2e150m3_5limbs/fesub.c
deleted file mode 100644
index 4de3e1ed2..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/fesub.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void fesub(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x21; uint8_t x22 = _subborrow_u32(0x0, x5, x13, &x21);
- { uint32_t x24; uint8_t x25 = _subborrow_u32(x22, x7, x15, &x24);
- { uint32_t x27; uint8_t x28 = _subborrow_u32(x25, x9, x17, &x27);
- { uint32_t x30; uint8_t x31 = _subborrow_u32(x28, x11, x19, &x30);
- { uint32_t x33; uint8_t x34 = _subborrow_u32(x31, x10, x18, &x33);
- { uint32_t x35 = cmovznz32(x34, 0x0, 0xffffffff);
- { uint32_t x36 = (x35 & 0xfffffffd);
- { uint32_t x38; uint8_t x39 = _addcarryx_u32(0x0, x21, x36, &x38);
- { uint32_t x40 = (x35 & 0xffffffff);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x39, x24, x40, &x42);
- { uint32_t x44 = (x35 & 0xffffffff);
- { uint32_t x46; uint8_t x47 = _addcarryx_u32(x43, x27, x44, &x46);
- { uint32_t x48 = (x35 & 0xffffffff);
- { uint32_t x50; uint8_t x51 = _addcarryx_u32(x47, x30, x48, &x50);
- { uint32_t x52 = (x35 & 0x3fffff);
- { uint32_t x54; uint8_t _ = _addcarryx_u32(x51, x33, x52, &x54);
- out[0] = x38;
- out[1] = x42;
- out[2] = x46;
- out[3] = x50;
- out[4] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e150m3_5limbs/fesub.v b/src/Specific/montgomery32_2e150m3_5limbs/fesub.v
deleted file mode 100644
index 8a2697292..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e150m3_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e150m3_5limbs/fesubDisplay.log b/src/Specific/montgomery32_2e150m3_5limbs/fesubDisplay.log
deleted file mode 100644
index 9fe6254c8..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint8_t x22 = subborrow_u32(0x0, x5, x13);
- uint32_t x24, uint8_t x25 = subborrow_u32(x22, x7, x15);
- uint32_t x27, uint8_t x28 = subborrow_u32(x25, x9, x17);
- uint32_t x30, uint8_t x31 = subborrow_u32(x28, x11, x19);
- uint32_t x33, uint8_t x34 = subborrow_u32(x31, x10, x18);
- uint32_t x35 = cmovznz32(x34, 0x0, 0xffffffff);
- uint32_t x36 = (x35 & 0xfffffffd);
- uint32_t x38, uint8_t x39 = addcarryx_u32(0x0, x21, x36);
- uint32_t x40 = (x35 & 0xffffffff);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x39, x24, x40);
- uint32_t x44 = (x35 & 0xffffffff);
- uint32_t x46, uint8_t x47 = addcarryx_u32(x43, x27, x44);
- uint32_t x48 = (x35 & 0xffffffff);
- uint32_t x50, uint8_t x51 = addcarryx_u32(x47, x30, x48);
- uint32_t x52 = (x35 & 0x3fffff);
- uint32_t x54, uint8_t _ = addcarryx_u32(x51, x33, x52);
- (Return x54, Return x50, Return x46, Return x42, Return x38))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e150m3_5limbs/fesubDisplay.v b/src/Specific/montgomery32_2e150m3_5limbs/fesubDisplay.v
deleted file mode 100644
index 6b896ff42..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e150m3_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e150m3_5limbs/py_interpreter.sh b/src/Specific/montgomery32_2e150m3_5limbs/py_interpreter.sh
deleted file mode 100755
index 9d6257b10..000000000
--- a/src/Specific/montgomery32_2e150m3_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**150 - 3' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e150m5_5limbs/CurveParameters.v b/src/Specific/montgomery32_2e150m5_5limbs/CurveParameters.v
deleted file mode 100644
index 906516faa..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^150 - 5
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 32;
- bitwidth := 32;
- s := 2^150;
- c := [(1, 5)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e150m5_5limbs/Synthesis.v b/src/Specific/montgomery32_2e150m5_5limbs/Synthesis.v
deleted file mode 100644
index dde355b73..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e150m5_5limbs.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/montgomery32_2e150m5_5limbs/compiler.sh b/src/Specific/montgomery32_2e150m5_5limbs/compiler.sh
deleted file mode 100755
index 91e0abdc5..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<150) - 5' "$@"
diff --git a/src/Specific/montgomery32_2e150m5_5limbs/compilerxx.sh b/src/Specific/montgomery32_2e150m5_5limbs/compilerxx.sh
deleted file mode 100755
index 69d18f81d..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<150) - 5' "$@"
diff --git a/src/Specific/montgomery32_2e150m5_5limbs/feadd.c b/src/Specific/montgomery32_2e150m5_5limbs/feadd.c
deleted file mode 100644
index 6101067bb..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/feadd.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feadd(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x21; uint8_t x22 = _addcarryx_u32(0x0, x5, x13, &x21);
- { uint32_t x24; uint8_t x25 = _addcarryx_u32(x22, x7, x15, &x24);
- { uint32_t x27; uint8_t x28 = _addcarryx_u32(x25, x9, x17, &x27);
- { uint32_t x30; uint8_t x31 = _addcarryx_u32(x28, x11, x19, &x30);
- { uint32_t x33; uint8_t x34 = _addcarryx_u32(x31, x10, x18, &x33);
- { uint32_t x36; uint8_t x37 = _subborrow_u32(0x0, x21, 0xfffffffb, &x36);
- { uint32_t x39; uint8_t x40 = _subborrow_u32(x37, x24, 0xffffffff, &x39);
- { uint32_t x42; uint8_t x43 = _subborrow_u32(x40, x27, 0xffffffff, &x42);
- { uint32_t x45; uint8_t x46 = _subborrow_u32(x43, x30, 0xffffffff, &x45);
- { uint32_t x48; uint8_t x49 = _subborrow_u32(x46, x33, 0x3fffff, &x48);
- { uint32_t _; uint8_t x52 = _subborrow_u32(x49, x34, 0x0, &_);
- { uint32_t x53 = cmovznz32(x52, x48, x33);
- { uint32_t x54 = cmovznz32(x52, x45, x30);
- { uint32_t x55 = cmovznz32(x52, x42, x27);
- { uint32_t x56 = cmovznz32(x52, x39, x24);
- { uint32_t x57 = cmovznz32(x52, x36, x21);
- out[0] = x57;
- out[1] = x56;
- out[2] = x55;
- out[3] = x54;
- out[4] = x53;
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e150m5_5limbs/feadd.v b/src/Specific/montgomery32_2e150m5_5limbs/feadd.v
deleted file mode 100644
index 69655f147..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e150m5_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e150m5_5limbs/feaddDisplay.log b/src/Specific/montgomery32_2e150m5_5limbs/feaddDisplay.log
deleted file mode 100644
index 28a86c45b..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint8_t x22 = addcarryx_u32(0x0, x5, x13);
- uint32_t x24, uint8_t x25 = addcarryx_u32(x22, x7, x15);
- uint32_t x27, uint8_t x28 = addcarryx_u32(x25, x9, x17);
- uint32_t x30, uint8_t x31 = addcarryx_u32(x28, x11, x19);
- uint32_t x33, uint8_t x34 = addcarryx_u32(x31, x10, x18);
- uint32_t x36, uint8_t x37 = subborrow_u32(0x0, x21, 0xfffffffb);
- uint32_t x39, uint8_t x40 = subborrow_u32(x37, x24, 0xffffffff);
- uint32_t x42, uint8_t x43 = subborrow_u32(x40, x27, 0xffffffff);
- uint32_t x45, uint8_t x46 = subborrow_u32(x43, x30, 0xffffffff);
- uint32_t x48, uint8_t x49 = subborrow_u32(x46, x33, 0x3fffff);
- uint32_t _, uint8_t x52 = subborrow_u32(x49, x34, 0x0);
- uint32_t x53 = cmovznz32(x52, x48, x33);
- uint32_t x54 = cmovznz32(x52, x45, x30);
- uint32_t x55 = cmovznz32(x52, x42, x27);
- uint32_t x56 = cmovznz32(x52, x39, x24);
- uint32_t x57 = cmovznz32(x52, x36, x21);
- return (x53, x54, x55, x56, x57))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e150m5_5limbs/feaddDisplay.v b/src/Specific/montgomery32_2e150m5_5limbs/feaddDisplay.v
deleted file mode 100644
index 9154e825e..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e150m5_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e150m5_5limbs/femul.c b/src/Specific/montgomery32_2e150m5_5limbs/femul.c
deleted file mode 100644
index bf7026593..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/femul.c
+++ /dev/null
@@ -1,192 +0,0 @@
-static void femul(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x22; uint32_t x21 = _mulx_u32(x5, x13, &x22);
- { uint32_t x25; uint32_t x24 = _mulx_u32(x5, x15, &x25);
- { uint32_t x28; uint32_t x27 = _mulx_u32(x5, x17, &x28);
- { uint32_t x31; uint32_t x30 = _mulx_u32(x5, x19, &x31);
- { uint32_t x34; uint32_t x33 = _mulx_u32(x5, x18, &x34);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(0x0, x22, x24, &x36);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x37, x25, x27, &x39);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x40, x28, x30, &x42);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(x43, x31, x33, &x45);
- { uint32_t x48; uint8_t _ = _addcarryx_u32(0x0, x46, x34, &x48);
- { uint32_t _; uint32_t x51 = _mulx_u32(x21, 0xcccccccd, &_);
- { uint32_t x55; uint32_t x54 = _mulx_u32(x51, 0xfffffffb, &x55);
- { uint32_t x58; uint32_t x57 = _mulx_u32(x51, 0xffffffff, &x58);
- { uint32_t x61; uint32_t x60 = _mulx_u32(x51, 0xffffffff, &x61);
- { uint32_t x64; uint32_t x63 = _mulx_u32(x51, 0xffffffff, &x64);
- { uint32_t x67; uint32_t x66 = _mulx_u32(x51, 0x3fffff, &x67);
- { uint32_t x69; uint8_t x70 = _addcarryx_u32(0x0, x55, x57, &x69);
- { uint32_t x72; uint8_t x73 = _addcarryx_u32(x70, x58, x60, &x72);
- { uint32_t x75; uint8_t x76 = _addcarryx_u32(x73, x61, x63, &x75);
- { uint32_t x78; uint8_t x79 = _addcarryx_u32(x76, x64, x66, &x78);
- { uint32_t x81; uint8_t _ = _addcarryx_u32(0x0, x79, x67, &x81);
- { uint32_t _; uint8_t x85 = _addcarryx_u32(0x0, x21, x54, &_);
- { uint32_t x87; uint8_t x88 = _addcarryx_u32(x85, x36, x69, &x87);
- { uint32_t x90; uint8_t x91 = _addcarryx_u32(x88, x39, x72, &x90);
- { uint32_t x93; uint8_t x94 = _addcarryx_u32(x91, x42, x75, &x93);
- { uint32_t x96; uint8_t x97 = _addcarryx_u32(x94, x45, x78, &x96);
- { uint32_t x99; uint8_t x100 = _addcarryx_u32(x97, x48, x81, &x99);
- { uint32_t x103; uint32_t x102 = _mulx_u32(x7, x13, &x103);
- { uint32_t x106; uint32_t x105 = _mulx_u32(x7, x15, &x106);
- { uint32_t x109; uint32_t x108 = _mulx_u32(x7, x17, &x109);
- { uint32_t x112; uint32_t x111 = _mulx_u32(x7, x19, &x112);
- { uint32_t x115; uint32_t x114 = _mulx_u32(x7, x18, &x115);
- { uint32_t x117; uint8_t x118 = _addcarryx_u32(0x0, x103, x105, &x117);
- { uint32_t x120; uint8_t x121 = _addcarryx_u32(x118, x106, x108, &x120);
- { uint32_t x123; uint8_t x124 = _addcarryx_u32(x121, x109, x111, &x123);
- { uint32_t x126; uint8_t x127 = _addcarryx_u32(x124, x112, x114, &x126);
- { uint32_t x129; uint8_t _ = _addcarryx_u32(0x0, x127, x115, &x129);
- { uint32_t x132; uint8_t x133 = _addcarryx_u32(0x0, x87, x102, &x132);
- { uint32_t x135; uint8_t x136 = _addcarryx_u32(x133, x90, x117, &x135);
- { uint32_t x138; uint8_t x139 = _addcarryx_u32(x136, x93, x120, &x138);
- { uint32_t x141; uint8_t x142 = _addcarryx_u32(x139, x96, x123, &x141);
- { uint32_t x144; uint8_t x145 = _addcarryx_u32(x142, x99, x126, &x144);
- { uint32_t x147; uint8_t x148 = _addcarryx_u32(x145, x100, x129, &x147);
- { uint32_t _; uint32_t x150 = _mulx_u32(x132, 0xcccccccd, &_);
- { uint32_t x154; uint32_t x153 = _mulx_u32(x150, 0xfffffffb, &x154);
- { uint32_t x157; uint32_t x156 = _mulx_u32(x150, 0xffffffff, &x157);
- { uint32_t x160; uint32_t x159 = _mulx_u32(x150, 0xffffffff, &x160);
- { uint32_t x163; uint32_t x162 = _mulx_u32(x150, 0xffffffff, &x163);
- { uint32_t x166; uint32_t x165 = _mulx_u32(x150, 0x3fffff, &x166);
- { uint32_t x168; uint8_t x169 = _addcarryx_u32(0x0, x154, x156, &x168);
- { uint32_t x171; uint8_t x172 = _addcarryx_u32(x169, x157, x159, &x171);
- { uint32_t x174; uint8_t x175 = _addcarryx_u32(x172, x160, x162, &x174);
- { uint32_t x177; uint8_t x178 = _addcarryx_u32(x175, x163, x165, &x177);
- { uint32_t x180; uint8_t _ = _addcarryx_u32(0x0, x178, x166, &x180);
- { uint32_t _; uint8_t x184 = _addcarryx_u32(0x0, x132, x153, &_);
- { uint32_t x186; uint8_t x187 = _addcarryx_u32(x184, x135, x168, &x186);
- { uint32_t x189; uint8_t x190 = _addcarryx_u32(x187, x138, x171, &x189);
- { uint32_t x192; uint8_t x193 = _addcarryx_u32(x190, x141, x174, &x192);
- { uint32_t x195; uint8_t x196 = _addcarryx_u32(x193, x144, x177, &x195);
- { uint32_t x198; uint8_t x199 = _addcarryx_u32(x196, x147, x180, &x198);
- { uint8_t x200 = (x199 + x148);
- { uint32_t x203; uint32_t x202 = _mulx_u32(x9, x13, &x203);
- { uint32_t x206; uint32_t x205 = _mulx_u32(x9, x15, &x206);
- { uint32_t x209; uint32_t x208 = _mulx_u32(x9, x17, &x209);
- { uint32_t x212; uint32_t x211 = _mulx_u32(x9, x19, &x212);
- { uint32_t x215; uint32_t x214 = _mulx_u32(x9, x18, &x215);
- { uint32_t x217; uint8_t x218 = _addcarryx_u32(0x0, x203, x205, &x217);
- { uint32_t x220; uint8_t x221 = _addcarryx_u32(x218, x206, x208, &x220);
- { uint32_t x223; uint8_t x224 = _addcarryx_u32(x221, x209, x211, &x223);
- { uint32_t x226; uint8_t x227 = _addcarryx_u32(x224, x212, x214, &x226);
- { uint32_t x229; uint8_t _ = _addcarryx_u32(0x0, x227, x215, &x229);
- { uint32_t x232; uint8_t x233 = _addcarryx_u32(0x0, x186, x202, &x232);
- { uint32_t x235; uint8_t x236 = _addcarryx_u32(x233, x189, x217, &x235);
- { uint32_t x238; uint8_t x239 = _addcarryx_u32(x236, x192, x220, &x238);
- { uint32_t x241; uint8_t x242 = _addcarryx_u32(x239, x195, x223, &x241);
- { uint32_t x244; uint8_t x245 = _addcarryx_u32(x242, x198, x226, &x244);
- { uint32_t x247; uint8_t x248 = _addcarryx_u32(x245, x200, x229, &x247);
- { uint32_t _; uint32_t x250 = _mulx_u32(x232, 0xcccccccd, &_);
- { uint32_t x254; uint32_t x253 = _mulx_u32(x250, 0xfffffffb, &x254);
- { uint32_t x257; uint32_t x256 = _mulx_u32(x250, 0xffffffff, &x257);
- { uint32_t x260; uint32_t x259 = _mulx_u32(x250, 0xffffffff, &x260);
- { uint32_t x263; uint32_t x262 = _mulx_u32(x250, 0xffffffff, &x263);
- { uint32_t x266; uint32_t x265 = _mulx_u32(x250, 0x3fffff, &x266);
- { uint32_t x268; uint8_t x269 = _addcarryx_u32(0x0, x254, x256, &x268);
- { uint32_t x271; uint8_t x272 = _addcarryx_u32(x269, x257, x259, &x271);
- { uint32_t x274; uint8_t x275 = _addcarryx_u32(x272, x260, x262, &x274);
- { uint32_t x277; uint8_t x278 = _addcarryx_u32(x275, x263, x265, &x277);
- { uint32_t x280; uint8_t _ = _addcarryx_u32(0x0, x278, x266, &x280);
- { uint32_t _; uint8_t x284 = _addcarryx_u32(0x0, x232, x253, &_);
- { uint32_t x286; uint8_t x287 = _addcarryx_u32(x284, x235, x268, &x286);
- { uint32_t x289; uint8_t x290 = _addcarryx_u32(x287, x238, x271, &x289);
- { uint32_t x292; uint8_t x293 = _addcarryx_u32(x290, x241, x274, &x292);
- { uint32_t x295; uint8_t x296 = _addcarryx_u32(x293, x244, x277, &x295);
- { uint32_t x298; uint8_t x299 = _addcarryx_u32(x296, x247, x280, &x298);
- { uint8_t x300 = (x299 + x248);
- { uint32_t x303; uint32_t x302 = _mulx_u32(x11, x13, &x303);
- { uint32_t x306; uint32_t x305 = _mulx_u32(x11, x15, &x306);
- { uint32_t x309; uint32_t x308 = _mulx_u32(x11, x17, &x309);
- { uint32_t x312; uint32_t x311 = _mulx_u32(x11, x19, &x312);
- { uint32_t x315; uint32_t x314 = _mulx_u32(x11, x18, &x315);
- { uint32_t x317; uint8_t x318 = _addcarryx_u32(0x0, x303, x305, &x317);
- { uint32_t x320; uint8_t x321 = _addcarryx_u32(x318, x306, x308, &x320);
- { uint32_t x323; uint8_t x324 = _addcarryx_u32(x321, x309, x311, &x323);
- { uint32_t x326; uint8_t x327 = _addcarryx_u32(x324, x312, x314, &x326);
- { uint32_t x329; uint8_t _ = _addcarryx_u32(0x0, x327, x315, &x329);
- { uint32_t x332; uint8_t x333 = _addcarryx_u32(0x0, x286, x302, &x332);
- { uint32_t x335; uint8_t x336 = _addcarryx_u32(x333, x289, x317, &x335);
- { uint32_t x338; uint8_t x339 = _addcarryx_u32(x336, x292, x320, &x338);
- { uint32_t x341; uint8_t x342 = _addcarryx_u32(x339, x295, x323, &x341);
- { uint32_t x344; uint8_t x345 = _addcarryx_u32(x342, x298, x326, &x344);
- { uint32_t x347; uint8_t x348 = _addcarryx_u32(x345, x300, x329, &x347);
- { uint32_t _; uint32_t x350 = _mulx_u32(x332, 0xcccccccd, &_);
- { uint32_t x354; uint32_t x353 = _mulx_u32(x350, 0xfffffffb, &x354);
- { uint32_t x357; uint32_t x356 = _mulx_u32(x350, 0xffffffff, &x357);
- { uint32_t x360; uint32_t x359 = _mulx_u32(x350, 0xffffffff, &x360);
- { uint32_t x363; uint32_t x362 = _mulx_u32(x350, 0xffffffff, &x363);
- { uint32_t x366; uint32_t x365 = _mulx_u32(x350, 0x3fffff, &x366);
- { uint32_t x368; uint8_t x369 = _addcarryx_u32(0x0, x354, x356, &x368);
- { uint32_t x371; uint8_t x372 = _addcarryx_u32(x369, x357, x359, &x371);
- { uint32_t x374; uint8_t x375 = _addcarryx_u32(x372, x360, x362, &x374);
- { uint32_t x377; uint8_t x378 = _addcarryx_u32(x375, x363, x365, &x377);
- { uint32_t x380; uint8_t _ = _addcarryx_u32(0x0, x378, x366, &x380);
- { uint32_t _; uint8_t x384 = _addcarryx_u32(0x0, x332, x353, &_);
- { uint32_t x386; uint8_t x387 = _addcarryx_u32(x384, x335, x368, &x386);
- { uint32_t x389; uint8_t x390 = _addcarryx_u32(x387, x338, x371, &x389);
- { uint32_t x392; uint8_t x393 = _addcarryx_u32(x390, x341, x374, &x392);
- { uint32_t x395; uint8_t x396 = _addcarryx_u32(x393, x344, x377, &x395);
- { uint32_t x398; uint8_t x399 = _addcarryx_u32(x396, x347, x380, &x398);
- { uint8_t x400 = (x399 + x348);
- { uint32_t x403; uint32_t x402 = _mulx_u32(x10, x13, &x403);
- { uint32_t x406; uint32_t x405 = _mulx_u32(x10, x15, &x406);
- { uint32_t x409; uint32_t x408 = _mulx_u32(x10, x17, &x409);
- { uint32_t x412; uint32_t x411 = _mulx_u32(x10, x19, &x412);
- { uint32_t x415; uint32_t x414 = _mulx_u32(x10, x18, &x415);
- { uint32_t x417; uint8_t x418 = _addcarryx_u32(0x0, x403, x405, &x417);
- { uint32_t x420; uint8_t x421 = _addcarryx_u32(x418, x406, x408, &x420);
- { uint32_t x423; uint8_t x424 = _addcarryx_u32(x421, x409, x411, &x423);
- { uint32_t x426; uint8_t x427 = _addcarryx_u32(x424, x412, x414, &x426);
- { uint32_t x429; uint8_t _ = _addcarryx_u32(0x0, x427, x415, &x429);
- { uint32_t x432; uint8_t x433 = _addcarryx_u32(0x0, x386, x402, &x432);
- { uint32_t x435; uint8_t x436 = _addcarryx_u32(x433, x389, x417, &x435);
- { uint32_t x438; uint8_t x439 = _addcarryx_u32(x436, x392, x420, &x438);
- { uint32_t x441; uint8_t x442 = _addcarryx_u32(x439, x395, x423, &x441);
- { uint32_t x444; uint8_t x445 = _addcarryx_u32(x442, x398, x426, &x444);
- { uint32_t x447; uint8_t x448 = _addcarryx_u32(x445, x400, x429, &x447);
- { uint32_t _; uint32_t x450 = _mulx_u32(x432, 0xcccccccd, &_);
- { uint32_t x454; uint32_t x453 = _mulx_u32(x450, 0xfffffffb, &x454);
- { uint32_t x457; uint32_t x456 = _mulx_u32(x450, 0xffffffff, &x457);
- { uint32_t x460; uint32_t x459 = _mulx_u32(x450, 0xffffffff, &x460);
- { uint32_t x463; uint32_t x462 = _mulx_u32(x450, 0xffffffff, &x463);
- { uint32_t x466; uint32_t x465 = _mulx_u32(x450, 0x3fffff, &x466);
- { uint32_t x468; uint8_t x469 = _addcarryx_u32(0x0, x454, x456, &x468);
- { uint32_t x471; uint8_t x472 = _addcarryx_u32(x469, x457, x459, &x471);
- { uint32_t x474; uint8_t x475 = _addcarryx_u32(x472, x460, x462, &x474);
- { uint32_t x477; uint8_t x478 = _addcarryx_u32(x475, x463, x465, &x477);
- { uint32_t x480; uint8_t _ = _addcarryx_u32(0x0, x478, x466, &x480);
- { uint32_t _; uint8_t x484 = _addcarryx_u32(0x0, x432, x453, &_);
- { uint32_t x486; uint8_t x487 = _addcarryx_u32(x484, x435, x468, &x486);
- { uint32_t x489; uint8_t x490 = _addcarryx_u32(x487, x438, x471, &x489);
- { uint32_t x492; uint8_t x493 = _addcarryx_u32(x490, x441, x474, &x492);
- { uint32_t x495; uint8_t x496 = _addcarryx_u32(x493, x444, x477, &x495);
- { uint32_t x498; uint8_t x499 = _addcarryx_u32(x496, x447, x480, &x498);
- { uint8_t x500 = (x499 + x448);
- { uint32_t x502; uint8_t x503 = _subborrow_u32(0x0, x486, 0xfffffffb, &x502);
- { uint32_t x505; uint8_t x506 = _subborrow_u32(x503, x489, 0xffffffff, &x505);
- { uint32_t x508; uint8_t x509 = _subborrow_u32(x506, x492, 0xffffffff, &x508);
- { uint32_t x511; uint8_t x512 = _subborrow_u32(x509, x495, 0xffffffff, &x511);
- { uint32_t x514; uint8_t x515 = _subborrow_u32(x512, x498, 0x3fffff, &x514);
- { uint32_t _; uint8_t x518 = _subborrow_u32(x515, x500, 0x0, &_);
- { uint32_t x519 = cmovznz32(x518, x514, x498);
- { uint32_t x520 = cmovznz32(x518, x511, x495);
- { uint32_t x521 = cmovznz32(x518, x508, x492);
- { uint32_t x522 = cmovznz32(x518, x505, x489);
- { uint32_t x523 = cmovznz32(x518, x502, x486);
- out[0] = x523;
- out[1] = x522;
- out[2] = x521;
- out[3] = x520;
- out[4] = x519;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e150m5_5limbs/femul.v b/src/Specific/montgomery32_2e150m5_5limbs/femul.v
deleted file mode 100644
index 23af1d3dd..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e150m5_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e150m5_5limbs/femulDisplay.log b/src/Specific/montgomery32_2e150m5_5limbs/femulDisplay.log
deleted file mode 100644
index c78e55401..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,181 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint32_t x22 = mulx_u32(x5, x13);
- uint32_t x24, uint32_t x25 = mulx_u32(x5, x15);
- uint32_t x27, uint32_t x28 = mulx_u32(x5, x17);
- uint32_t x30, uint32_t x31 = mulx_u32(x5, x19);
- uint32_t x33, uint32_t x34 = mulx_u32(x5, x18);
- uint32_t x36, uint8_t x37 = addcarryx_u32(0x0, x22, x24);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x37, x25, x27);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x40, x28, x30);
- uint32_t x45, uint8_t x46 = addcarryx_u32(x43, x31, x33);
- uint32_t x48, uint8_t _ = addcarryx_u32(0x0, x46, x34);
- uint32_t x51, uint32_t _ = mulx_u32(x21, 0xcccccccd);
- uint32_t x54, uint32_t x55 = mulx_u32(x51, 0xfffffffb);
- uint32_t x57, uint32_t x58 = mulx_u32(x51, 0xffffffff);
- uint32_t x60, uint32_t x61 = mulx_u32(x51, 0xffffffff);
- uint32_t x63, uint32_t x64 = mulx_u32(x51, 0xffffffff);
- uint32_t x66, uint32_t x67 = mulx_u32(x51, 0x3fffff);
- uint32_t x69, uint8_t x70 = addcarryx_u32(0x0, x55, x57);
- uint32_t x72, uint8_t x73 = addcarryx_u32(x70, x58, x60);
- uint32_t x75, uint8_t x76 = addcarryx_u32(x73, x61, x63);
- uint32_t x78, uint8_t x79 = addcarryx_u32(x76, x64, x66);
- uint32_t x81, uint8_t _ = addcarryx_u32(0x0, x79, x67);
- uint32_t _, uint8_t x85 = addcarryx_u32(0x0, x21, x54);
- uint32_t x87, uint8_t x88 = addcarryx_u32(x85, x36, x69);
- uint32_t x90, uint8_t x91 = addcarryx_u32(x88, x39, x72);
- uint32_t x93, uint8_t x94 = addcarryx_u32(x91, x42, x75);
- uint32_t x96, uint8_t x97 = addcarryx_u32(x94, x45, x78);
- uint32_t x99, uint8_t x100 = addcarryx_u32(x97, x48, x81);
- uint32_t x102, uint32_t x103 = mulx_u32(x7, x13);
- uint32_t x105, uint32_t x106 = mulx_u32(x7, x15);
- uint32_t x108, uint32_t x109 = mulx_u32(x7, x17);
- uint32_t x111, uint32_t x112 = mulx_u32(x7, x19);
- uint32_t x114, uint32_t x115 = mulx_u32(x7, x18);
- uint32_t x117, uint8_t x118 = addcarryx_u32(0x0, x103, x105);
- uint32_t x120, uint8_t x121 = addcarryx_u32(x118, x106, x108);
- uint32_t x123, uint8_t x124 = addcarryx_u32(x121, x109, x111);
- uint32_t x126, uint8_t x127 = addcarryx_u32(x124, x112, x114);
- uint32_t x129, uint8_t _ = addcarryx_u32(0x0, x127, x115);
- uint32_t x132, uint8_t x133 = addcarryx_u32(0x0, x87, x102);
- uint32_t x135, uint8_t x136 = addcarryx_u32(x133, x90, x117);
- uint32_t x138, uint8_t x139 = addcarryx_u32(x136, x93, x120);
- uint32_t x141, uint8_t x142 = addcarryx_u32(x139, x96, x123);
- uint32_t x144, uint8_t x145 = addcarryx_u32(x142, x99, x126);
- uint32_t x147, uint8_t x148 = addcarryx_u32(x145, x100, x129);
- uint32_t x150, uint32_t _ = mulx_u32(x132, 0xcccccccd);
- uint32_t x153, uint32_t x154 = mulx_u32(x150, 0xfffffffb);
- uint32_t x156, uint32_t x157 = mulx_u32(x150, 0xffffffff);
- uint32_t x159, uint32_t x160 = mulx_u32(x150, 0xffffffff);
- uint32_t x162, uint32_t x163 = mulx_u32(x150, 0xffffffff);
- uint32_t x165, uint32_t x166 = mulx_u32(x150, 0x3fffff);
- uint32_t x168, uint8_t x169 = addcarryx_u32(0x0, x154, x156);
- uint32_t x171, uint8_t x172 = addcarryx_u32(x169, x157, x159);
- uint32_t x174, uint8_t x175 = addcarryx_u32(x172, x160, x162);
- uint32_t x177, uint8_t x178 = addcarryx_u32(x175, x163, x165);
- uint32_t x180, uint8_t _ = addcarryx_u32(0x0, x178, x166);
- uint32_t _, uint8_t x184 = addcarryx_u32(0x0, x132, x153);
- uint32_t x186, uint8_t x187 = addcarryx_u32(x184, x135, x168);
- uint32_t x189, uint8_t x190 = addcarryx_u32(x187, x138, x171);
- uint32_t x192, uint8_t x193 = addcarryx_u32(x190, x141, x174);
- uint32_t x195, uint8_t x196 = addcarryx_u32(x193, x144, x177);
- uint32_t x198, uint8_t x199 = addcarryx_u32(x196, x147, x180);
- uint8_t x200 = (x199 + x148);
- uint32_t x202, uint32_t x203 = mulx_u32(x9, x13);
- uint32_t x205, uint32_t x206 = mulx_u32(x9, x15);
- uint32_t x208, uint32_t x209 = mulx_u32(x9, x17);
- uint32_t x211, uint32_t x212 = mulx_u32(x9, x19);
- uint32_t x214, uint32_t x215 = mulx_u32(x9, x18);
- uint32_t x217, uint8_t x218 = addcarryx_u32(0x0, x203, x205);
- uint32_t x220, uint8_t x221 = addcarryx_u32(x218, x206, x208);
- uint32_t x223, uint8_t x224 = addcarryx_u32(x221, x209, x211);
- uint32_t x226, uint8_t x227 = addcarryx_u32(x224, x212, x214);
- uint32_t x229, uint8_t _ = addcarryx_u32(0x0, x227, x215);
- uint32_t x232, uint8_t x233 = addcarryx_u32(0x0, x186, x202);
- uint32_t x235, uint8_t x236 = addcarryx_u32(x233, x189, x217);
- uint32_t x238, uint8_t x239 = addcarryx_u32(x236, x192, x220);
- uint32_t x241, uint8_t x242 = addcarryx_u32(x239, x195, x223);
- uint32_t x244, uint8_t x245 = addcarryx_u32(x242, x198, x226);
- uint32_t x247, uint8_t x248 = addcarryx_u32(x245, x200, x229);
- uint32_t x250, uint32_t _ = mulx_u32(x232, 0xcccccccd);
- uint32_t x253, uint32_t x254 = mulx_u32(x250, 0xfffffffb);
- uint32_t x256, uint32_t x257 = mulx_u32(x250, 0xffffffff);
- uint32_t x259, uint32_t x260 = mulx_u32(x250, 0xffffffff);
- uint32_t x262, uint32_t x263 = mulx_u32(x250, 0xffffffff);
- uint32_t x265, uint32_t x266 = mulx_u32(x250, 0x3fffff);
- uint32_t x268, uint8_t x269 = addcarryx_u32(0x0, x254, x256);
- uint32_t x271, uint8_t x272 = addcarryx_u32(x269, x257, x259);
- uint32_t x274, uint8_t x275 = addcarryx_u32(x272, x260, x262);
- uint32_t x277, uint8_t x278 = addcarryx_u32(x275, x263, x265);
- uint32_t x280, uint8_t _ = addcarryx_u32(0x0, x278, x266);
- uint32_t _, uint8_t x284 = addcarryx_u32(0x0, x232, x253);
- uint32_t x286, uint8_t x287 = addcarryx_u32(x284, x235, x268);
- uint32_t x289, uint8_t x290 = addcarryx_u32(x287, x238, x271);
- uint32_t x292, uint8_t x293 = addcarryx_u32(x290, x241, x274);
- uint32_t x295, uint8_t x296 = addcarryx_u32(x293, x244, x277);
- uint32_t x298, uint8_t x299 = addcarryx_u32(x296, x247, x280);
- uint8_t x300 = (x299 + x248);
- uint32_t x302, uint32_t x303 = mulx_u32(x11, x13);
- uint32_t x305, uint32_t x306 = mulx_u32(x11, x15);
- uint32_t x308, uint32_t x309 = mulx_u32(x11, x17);
- uint32_t x311, uint32_t x312 = mulx_u32(x11, x19);
- uint32_t x314, uint32_t x315 = mulx_u32(x11, x18);
- uint32_t x317, uint8_t x318 = addcarryx_u32(0x0, x303, x305);
- uint32_t x320, uint8_t x321 = addcarryx_u32(x318, x306, x308);
- uint32_t x323, uint8_t x324 = addcarryx_u32(x321, x309, x311);
- uint32_t x326, uint8_t x327 = addcarryx_u32(x324, x312, x314);
- uint32_t x329, uint8_t _ = addcarryx_u32(0x0, x327, x315);
- uint32_t x332, uint8_t x333 = addcarryx_u32(0x0, x286, x302);
- uint32_t x335, uint8_t x336 = addcarryx_u32(x333, x289, x317);
- uint32_t x338, uint8_t x339 = addcarryx_u32(x336, x292, x320);
- uint32_t x341, uint8_t x342 = addcarryx_u32(x339, x295, x323);
- uint32_t x344, uint8_t x345 = addcarryx_u32(x342, x298, x326);
- uint32_t x347, uint8_t x348 = addcarryx_u32(x345, x300, x329);
- uint32_t x350, uint32_t _ = mulx_u32(x332, 0xcccccccd);
- uint32_t x353, uint32_t x354 = mulx_u32(x350, 0xfffffffb);
- uint32_t x356, uint32_t x357 = mulx_u32(x350, 0xffffffff);
- uint32_t x359, uint32_t x360 = mulx_u32(x350, 0xffffffff);
- uint32_t x362, uint32_t x363 = mulx_u32(x350, 0xffffffff);
- uint32_t x365, uint32_t x366 = mulx_u32(x350, 0x3fffff);
- uint32_t x368, uint8_t x369 = addcarryx_u32(0x0, x354, x356);
- uint32_t x371, uint8_t x372 = addcarryx_u32(x369, x357, x359);
- uint32_t x374, uint8_t x375 = addcarryx_u32(x372, x360, x362);
- uint32_t x377, uint8_t x378 = addcarryx_u32(x375, x363, x365);
- uint32_t x380, uint8_t _ = addcarryx_u32(0x0, x378, x366);
- uint32_t _, uint8_t x384 = addcarryx_u32(0x0, x332, x353);
- uint32_t x386, uint8_t x387 = addcarryx_u32(x384, x335, x368);
- uint32_t x389, uint8_t x390 = addcarryx_u32(x387, x338, x371);
- uint32_t x392, uint8_t x393 = addcarryx_u32(x390, x341, x374);
- uint32_t x395, uint8_t x396 = addcarryx_u32(x393, x344, x377);
- uint32_t x398, uint8_t x399 = addcarryx_u32(x396, x347, x380);
- uint8_t x400 = (x399 + x348);
- uint32_t x402, uint32_t x403 = mulx_u32(x10, x13);
- uint32_t x405, uint32_t x406 = mulx_u32(x10, x15);
- uint32_t x408, uint32_t x409 = mulx_u32(x10, x17);
- uint32_t x411, uint32_t x412 = mulx_u32(x10, x19);
- uint32_t x414, uint32_t x415 = mulx_u32(x10, x18);
- uint32_t x417, uint8_t x418 = addcarryx_u32(0x0, x403, x405);
- uint32_t x420, uint8_t x421 = addcarryx_u32(x418, x406, x408);
- uint32_t x423, uint8_t x424 = addcarryx_u32(x421, x409, x411);
- uint32_t x426, uint8_t x427 = addcarryx_u32(x424, x412, x414);
- uint32_t x429, uint8_t _ = addcarryx_u32(0x0, x427, x415);
- uint32_t x432, uint8_t x433 = addcarryx_u32(0x0, x386, x402);
- uint32_t x435, uint8_t x436 = addcarryx_u32(x433, x389, x417);
- uint32_t x438, uint8_t x439 = addcarryx_u32(x436, x392, x420);
- uint32_t x441, uint8_t x442 = addcarryx_u32(x439, x395, x423);
- uint32_t x444, uint8_t x445 = addcarryx_u32(x442, x398, x426);
- uint32_t x447, uint8_t x448 = addcarryx_u32(x445, x400, x429);
- uint32_t x450, uint32_t _ = mulx_u32(x432, 0xcccccccd);
- uint32_t x453, uint32_t x454 = mulx_u32(x450, 0xfffffffb);
- uint32_t x456, uint32_t x457 = mulx_u32(x450, 0xffffffff);
- uint32_t x459, uint32_t x460 = mulx_u32(x450, 0xffffffff);
- uint32_t x462, uint32_t x463 = mulx_u32(x450, 0xffffffff);
- uint32_t x465, uint32_t x466 = mulx_u32(x450, 0x3fffff);
- uint32_t x468, uint8_t x469 = addcarryx_u32(0x0, x454, x456);
- uint32_t x471, uint8_t x472 = addcarryx_u32(x469, x457, x459);
- uint32_t x474, uint8_t x475 = addcarryx_u32(x472, x460, x462);
- uint32_t x477, uint8_t x478 = addcarryx_u32(x475, x463, x465);
- uint32_t x480, uint8_t _ = addcarryx_u32(0x0, x478, x466);
- uint32_t _, uint8_t x484 = addcarryx_u32(0x0, x432, x453);
- uint32_t x486, uint8_t x487 = addcarryx_u32(x484, x435, x468);
- uint32_t x489, uint8_t x490 = addcarryx_u32(x487, x438, x471);
- uint32_t x492, uint8_t x493 = addcarryx_u32(x490, x441, x474);
- uint32_t x495, uint8_t x496 = addcarryx_u32(x493, x444, x477);
- uint32_t x498, uint8_t x499 = addcarryx_u32(x496, x447, x480);
- uint8_t x500 = (x499 + x448);
- uint32_t x502, uint8_t x503 = subborrow_u32(0x0, x486, 0xfffffffb);
- uint32_t x505, uint8_t x506 = subborrow_u32(x503, x489, 0xffffffff);
- uint32_t x508, uint8_t x509 = subborrow_u32(x506, x492, 0xffffffff);
- uint32_t x511, uint8_t x512 = subborrow_u32(x509, x495, 0xffffffff);
- uint32_t x514, uint8_t x515 = subborrow_u32(x512, x498, 0x3fffff);
- uint32_t _, uint8_t x518 = subborrow_u32(x515, x500, 0x0);
- uint32_t x519 = cmovznz32(x518, x514, x498);
- uint32_t x520 = cmovznz32(x518, x511, x495);
- uint32_t x521 = cmovznz32(x518, x508, x492);
- uint32_t x522 = cmovznz32(x518, x505, x489);
- uint32_t x523 = cmovznz32(x518, x502, x486);
- return (x519, x520, x521, x522, x523))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e150m5_5limbs/femulDisplay.v b/src/Specific/montgomery32_2e150m5_5limbs/femulDisplay.v
deleted file mode 100644
index 3946f2a44..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e150m5_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e150m5_5limbs/fenz.c b/src/Specific/montgomery32_2e150m5_5limbs/fenz.c
deleted file mode 100644
index 5601e8c15..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/fenz.c
+++ /dev/null
@@ -1,13 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x9 = (x8 | x7);
- { uint32_t x10 = (x6 | x9);
- { uint32_t x11 = (x4 | x10);
- { uint32_t x12 = (x2 | x11);
- out[0] = x12;
- }}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e150m5_5limbs/fenz.v b/src/Specific/montgomery32_2e150m5_5limbs/fenz.v
deleted file mode 100644
index 4de7adb0a..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e150m5_5limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e150m5_5limbs/fenzDisplay.log b/src/Specific/montgomery32_2e150m5_5limbs/fenzDisplay.log
deleted file mode 100644
index 723d13164..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/fenzDisplay.log
+++ /dev/null
@@ -1,11 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint32_t x9 = (x8 | x7);
- uint32_t x10 = (x6 | x9);
- uint32_t x11 = (x4 | x10);
- uint32_t x12 = (x2 | x11);
- return x12)
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e150m5_5limbs/fenzDisplay.v b/src/Specific/montgomery32_2e150m5_5limbs/fenzDisplay.v
deleted file mode 100644
index c64254096..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e150m5_5limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e150m5_5limbs/feopp.c b/src/Specific/montgomery32_2e150m5_5limbs/feopp.c
deleted file mode 100644
index a73292a9e..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/feopp.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void feopp(uint32_t out[5], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x10; uint8_t x11 = _subborrow_u32(0x0, 0x0, x2, &x10);
- { uint32_t x13; uint8_t x14 = _subborrow_u32(x11, 0x0, x4, &x13);
- { uint32_t x16; uint8_t x17 = _subborrow_u32(x14, 0x0, x6, &x16);
- { uint32_t x19; uint8_t x20 = _subborrow_u32(x17, 0x0, x8, &x19);
- { uint32_t x22; uint8_t x23 = _subborrow_u32(x20, 0x0, x7, &x22);
- { uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- { uint32_t x25 = (x24 & 0xfffffffb);
- { uint32_t x27; uint8_t x28 = _addcarryx_u32(0x0, x10, x25, &x27);
- { uint32_t x29 = (x24 & 0xffffffff);
- { uint32_t x31; uint8_t x32 = _addcarryx_u32(x28, x13, x29, &x31);
- { uint32_t x33 = (x24 & 0xffffffff);
- { uint32_t x35; uint8_t x36 = _addcarryx_u32(x32, x16, x33, &x35);
- { uint32_t x37 = (x24 & 0xffffffff);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x36, x19, x37, &x39);
- { uint32_t x41 = (x24 & 0x3fffff);
- { uint32_t x43; uint8_t _ = _addcarryx_u32(x40, x22, x41, &x43);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e150m5_5limbs/feopp.v b/src/Specific/montgomery32_2e150m5_5limbs/feopp.v
deleted file mode 100644
index 5664d761c..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e150m5_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e150m5_5limbs/feoppDisplay.log b/src/Specific/montgomery32_2e150m5_5limbs/feoppDisplay.log
deleted file mode 100644
index 91f1653b3..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/feoppDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint32_t x10, uint8_t x11 = subborrow_u32(0x0, 0x0, x2);
- uint32_t x13, uint8_t x14 = subborrow_u32(x11, 0x0, x4);
- uint32_t x16, uint8_t x17 = subborrow_u32(x14, 0x0, x6);
- uint32_t x19, uint8_t x20 = subborrow_u32(x17, 0x0, x8);
- uint32_t x22, uint8_t x23 = subborrow_u32(x20, 0x0, x7);
- uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- uint32_t x25 = (x24 & 0xfffffffb);
- uint32_t x27, uint8_t x28 = addcarryx_u32(0x0, x10, x25);
- uint32_t x29 = (x24 & 0xffffffff);
- uint32_t x31, uint8_t x32 = addcarryx_u32(x28, x13, x29);
- uint32_t x33 = (x24 & 0xffffffff);
- uint32_t x35, uint8_t x36 = addcarryx_u32(x32, x16, x33);
- uint32_t x37 = (x24 & 0xffffffff);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x36, x19, x37);
- uint32_t x41 = (x24 & 0x3fffff);
- uint32_t x43, uint8_t _ = addcarryx_u32(x40, x22, x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e150m5_5limbs/feoppDisplay.v b/src/Specific/montgomery32_2e150m5_5limbs/feoppDisplay.v
deleted file mode 100644
index 6b93c764a..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e150m5_5limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e150m5_5limbs/fesquare.c b/src/Specific/montgomery32_2e150m5_5limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e150m5_5limbs/fesub.c b/src/Specific/montgomery32_2e150m5_5limbs/fesub.c
deleted file mode 100644
index 7f860d2ba..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/fesub.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void fesub(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x21; uint8_t x22 = _subborrow_u32(0x0, x5, x13, &x21);
- { uint32_t x24; uint8_t x25 = _subborrow_u32(x22, x7, x15, &x24);
- { uint32_t x27; uint8_t x28 = _subborrow_u32(x25, x9, x17, &x27);
- { uint32_t x30; uint8_t x31 = _subborrow_u32(x28, x11, x19, &x30);
- { uint32_t x33; uint8_t x34 = _subborrow_u32(x31, x10, x18, &x33);
- { uint32_t x35 = cmovznz32(x34, 0x0, 0xffffffff);
- { uint32_t x36 = (x35 & 0xfffffffb);
- { uint32_t x38; uint8_t x39 = _addcarryx_u32(0x0, x21, x36, &x38);
- { uint32_t x40 = (x35 & 0xffffffff);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x39, x24, x40, &x42);
- { uint32_t x44 = (x35 & 0xffffffff);
- { uint32_t x46; uint8_t x47 = _addcarryx_u32(x43, x27, x44, &x46);
- { uint32_t x48 = (x35 & 0xffffffff);
- { uint32_t x50; uint8_t x51 = _addcarryx_u32(x47, x30, x48, &x50);
- { uint32_t x52 = (x35 & 0x3fffff);
- { uint32_t x54; uint8_t _ = _addcarryx_u32(x51, x33, x52, &x54);
- out[0] = x38;
- out[1] = x42;
- out[2] = x46;
- out[3] = x50;
- out[4] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e150m5_5limbs/fesub.v b/src/Specific/montgomery32_2e150m5_5limbs/fesub.v
deleted file mode 100644
index 973f52ae0..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e150m5_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e150m5_5limbs/fesubDisplay.log b/src/Specific/montgomery32_2e150m5_5limbs/fesubDisplay.log
deleted file mode 100644
index 96fa1ea1d..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint8_t x22 = subborrow_u32(0x0, x5, x13);
- uint32_t x24, uint8_t x25 = subborrow_u32(x22, x7, x15);
- uint32_t x27, uint8_t x28 = subborrow_u32(x25, x9, x17);
- uint32_t x30, uint8_t x31 = subborrow_u32(x28, x11, x19);
- uint32_t x33, uint8_t x34 = subborrow_u32(x31, x10, x18);
- uint32_t x35 = cmovznz32(x34, 0x0, 0xffffffff);
- uint32_t x36 = (x35 & 0xfffffffb);
- uint32_t x38, uint8_t x39 = addcarryx_u32(0x0, x21, x36);
- uint32_t x40 = (x35 & 0xffffffff);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x39, x24, x40);
- uint32_t x44 = (x35 & 0xffffffff);
- uint32_t x46, uint8_t x47 = addcarryx_u32(x43, x27, x44);
- uint32_t x48 = (x35 & 0xffffffff);
- uint32_t x50, uint8_t x51 = addcarryx_u32(x47, x30, x48);
- uint32_t x52 = (x35 & 0x3fffff);
- uint32_t x54, uint8_t _ = addcarryx_u32(x51, x33, x52);
- (Return x54, Return x50, Return x46, Return x42, Return x38))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e150m5_5limbs/fesubDisplay.v b/src/Specific/montgomery32_2e150m5_5limbs/fesubDisplay.v
deleted file mode 100644
index e71e48443..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e150m5_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e150m5_5limbs/py_interpreter.sh b/src/Specific/montgomery32_2e150m5_5limbs/py_interpreter.sh
deleted file mode 100755
index 65d951fe9..000000000
--- a/src/Specific/montgomery32_2e150m5_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**150 - 5' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e152m17_5limbs/CurveParameters.v b/src/Specific/montgomery32_2e152m17_5limbs/CurveParameters.v
deleted file mode 100644
index 9192d3590..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^152 - 17
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 32;
- bitwidth := 32;
- s := 2^152;
- c := [(1, 17)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e152m17_5limbs/Synthesis.v b/src/Specific/montgomery32_2e152m17_5limbs/Synthesis.v
deleted file mode 100644
index 83cae829c..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e152m17_5limbs.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/montgomery32_2e152m17_5limbs/compiler.sh b/src/Specific/montgomery32_2e152m17_5limbs/compiler.sh
deleted file mode 100755
index 363f7a25a..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<152) - 17' "$@"
diff --git a/src/Specific/montgomery32_2e152m17_5limbs/compilerxx.sh b/src/Specific/montgomery32_2e152m17_5limbs/compilerxx.sh
deleted file mode 100755
index 7b66fa059..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<152) - 17' "$@"
diff --git a/src/Specific/montgomery32_2e152m17_5limbs/feadd.c b/src/Specific/montgomery32_2e152m17_5limbs/feadd.c
deleted file mode 100644
index 7aa9a97e8..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/feadd.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feadd(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x21; uint8_t x22 = _addcarryx_u32(0x0, x5, x13, &x21);
- { uint32_t x24; uint8_t x25 = _addcarryx_u32(x22, x7, x15, &x24);
- { uint32_t x27; uint8_t x28 = _addcarryx_u32(x25, x9, x17, &x27);
- { uint32_t x30; uint8_t x31 = _addcarryx_u32(x28, x11, x19, &x30);
- { uint32_t x33; uint8_t x34 = _addcarryx_u32(x31, x10, x18, &x33);
- { uint32_t x36; uint8_t x37 = _subborrow_u32(0x0, x21, 0xffffffef, &x36);
- { uint32_t x39; uint8_t x40 = _subborrow_u32(x37, x24, 0xffffffff, &x39);
- { uint32_t x42; uint8_t x43 = _subborrow_u32(x40, x27, 0xffffffff, &x42);
- { uint32_t x45; uint8_t x46 = _subborrow_u32(x43, x30, 0xffffffff, &x45);
- { uint32_t x48; uint8_t x49 = _subborrow_u32(x46, x33, 0xffffff, &x48);
- { uint32_t _; uint8_t x52 = _subborrow_u32(x49, x34, 0x0, &_);
- { uint32_t x53 = cmovznz32(x52, x48, x33);
- { uint32_t x54 = cmovznz32(x52, x45, x30);
- { uint32_t x55 = cmovznz32(x52, x42, x27);
- { uint32_t x56 = cmovznz32(x52, x39, x24);
- { uint32_t x57 = cmovznz32(x52, x36, x21);
- out[0] = x57;
- out[1] = x56;
- out[2] = x55;
- out[3] = x54;
- out[4] = x53;
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e152m17_5limbs/feadd.v b/src/Specific/montgomery32_2e152m17_5limbs/feadd.v
deleted file mode 100644
index 735f65f34..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e152m17_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e152m17_5limbs/feaddDisplay.log b/src/Specific/montgomery32_2e152m17_5limbs/feaddDisplay.log
deleted file mode 100644
index f5e728c70..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint8_t x22 = addcarryx_u32(0x0, x5, x13);
- uint32_t x24, uint8_t x25 = addcarryx_u32(x22, x7, x15);
- uint32_t x27, uint8_t x28 = addcarryx_u32(x25, x9, x17);
- uint32_t x30, uint8_t x31 = addcarryx_u32(x28, x11, x19);
- uint32_t x33, uint8_t x34 = addcarryx_u32(x31, x10, x18);
- uint32_t x36, uint8_t x37 = subborrow_u32(0x0, x21, 0xffffffef);
- uint32_t x39, uint8_t x40 = subborrow_u32(x37, x24, 0xffffffff);
- uint32_t x42, uint8_t x43 = subborrow_u32(x40, x27, 0xffffffff);
- uint32_t x45, uint8_t x46 = subborrow_u32(x43, x30, 0xffffffff);
- uint32_t x48, uint8_t x49 = subborrow_u32(x46, x33, 0xffffff);
- uint32_t _, uint8_t x52 = subborrow_u32(x49, x34, 0x0);
- uint32_t x53 = cmovznz32(x52, x48, x33);
- uint32_t x54 = cmovznz32(x52, x45, x30);
- uint32_t x55 = cmovznz32(x52, x42, x27);
- uint32_t x56 = cmovznz32(x52, x39, x24);
- uint32_t x57 = cmovznz32(x52, x36, x21);
- return (x53, x54, x55, x56, x57))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e152m17_5limbs/feaddDisplay.v b/src/Specific/montgomery32_2e152m17_5limbs/feaddDisplay.v
deleted file mode 100644
index 36f9f7f2c..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e152m17_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e152m17_5limbs/femul.c b/src/Specific/montgomery32_2e152m17_5limbs/femul.c
deleted file mode 100644
index b7f131ce6..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/femul.c
+++ /dev/null
@@ -1,192 +0,0 @@
-static void femul(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x22; uint32_t x21 = _mulx_u32(x5, x13, &x22);
- { uint32_t x25; uint32_t x24 = _mulx_u32(x5, x15, &x25);
- { uint32_t x28; uint32_t x27 = _mulx_u32(x5, x17, &x28);
- { uint32_t x31; uint32_t x30 = _mulx_u32(x5, x19, &x31);
- { uint32_t x34; uint32_t x33 = _mulx_u32(x5, x18, &x34);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(0x0, x22, x24, &x36);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x37, x25, x27, &x39);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x40, x28, x30, &x42);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(x43, x31, x33, &x45);
- { uint32_t x48; uint8_t _ = _addcarryx_u32(0x0, x46, x34, &x48);
- { uint32_t _; uint32_t x51 = _mulx_u32(x21, 0xf0f0f0f1, &_);
- { uint32_t x55; uint32_t x54 = _mulx_u32(x51, 0xffffffef, &x55);
- { uint32_t x58; uint32_t x57 = _mulx_u32(x51, 0xffffffff, &x58);
- { uint32_t x61; uint32_t x60 = _mulx_u32(x51, 0xffffffff, &x61);
- { uint32_t x64; uint32_t x63 = _mulx_u32(x51, 0xffffffff, &x64);
- { uint32_t x67; uint32_t x66 = _mulx_u32(x51, 0xffffff, &x67);
- { uint32_t x69; uint8_t x70 = _addcarryx_u32(0x0, x55, x57, &x69);
- { uint32_t x72; uint8_t x73 = _addcarryx_u32(x70, x58, x60, &x72);
- { uint32_t x75; uint8_t x76 = _addcarryx_u32(x73, x61, x63, &x75);
- { uint32_t x78; uint8_t x79 = _addcarryx_u32(x76, x64, x66, &x78);
- { uint32_t x81; uint8_t _ = _addcarryx_u32(0x0, x79, x67, &x81);
- { uint32_t _; uint8_t x85 = _addcarryx_u32(0x0, x21, x54, &_);
- { uint32_t x87; uint8_t x88 = _addcarryx_u32(x85, x36, x69, &x87);
- { uint32_t x90; uint8_t x91 = _addcarryx_u32(x88, x39, x72, &x90);
- { uint32_t x93; uint8_t x94 = _addcarryx_u32(x91, x42, x75, &x93);
- { uint32_t x96; uint8_t x97 = _addcarryx_u32(x94, x45, x78, &x96);
- { uint32_t x99; uint8_t x100 = _addcarryx_u32(x97, x48, x81, &x99);
- { uint32_t x103; uint32_t x102 = _mulx_u32(x7, x13, &x103);
- { uint32_t x106; uint32_t x105 = _mulx_u32(x7, x15, &x106);
- { uint32_t x109; uint32_t x108 = _mulx_u32(x7, x17, &x109);
- { uint32_t x112; uint32_t x111 = _mulx_u32(x7, x19, &x112);
- { uint32_t x115; uint32_t x114 = _mulx_u32(x7, x18, &x115);
- { uint32_t x117; uint8_t x118 = _addcarryx_u32(0x0, x103, x105, &x117);
- { uint32_t x120; uint8_t x121 = _addcarryx_u32(x118, x106, x108, &x120);
- { uint32_t x123; uint8_t x124 = _addcarryx_u32(x121, x109, x111, &x123);
- { uint32_t x126; uint8_t x127 = _addcarryx_u32(x124, x112, x114, &x126);
- { uint32_t x129; uint8_t _ = _addcarryx_u32(0x0, x127, x115, &x129);
- { uint32_t x132; uint8_t x133 = _addcarryx_u32(0x0, x87, x102, &x132);
- { uint32_t x135; uint8_t x136 = _addcarryx_u32(x133, x90, x117, &x135);
- { uint32_t x138; uint8_t x139 = _addcarryx_u32(x136, x93, x120, &x138);
- { uint32_t x141; uint8_t x142 = _addcarryx_u32(x139, x96, x123, &x141);
- { uint32_t x144; uint8_t x145 = _addcarryx_u32(x142, x99, x126, &x144);
- { uint32_t x147; uint8_t x148 = _addcarryx_u32(x145, x100, x129, &x147);
- { uint32_t _; uint32_t x150 = _mulx_u32(x132, 0xf0f0f0f1, &_);
- { uint32_t x154; uint32_t x153 = _mulx_u32(x150, 0xffffffef, &x154);
- { uint32_t x157; uint32_t x156 = _mulx_u32(x150, 0xffffffff, &x157);
- { uint32_t x160; uint32_t x159 = _mulx_u32(x150, 0xffffffff, &x160);
- { uint32_t x163; uint32_t x162 = _mulx_u32(x150, 0xffffffff, &x163);
- { uint32_t x166; uint32_t x165 = _mulx_u32(x150, 0xffffff, &x166);
- { uint32_t x168; uint8_t x169 = _addcarryx_u32(0x0, x154, x156, &x168);
- { uint32_t x171; uint8_t x172 = _addcarryx_u32(x169, x157, x159, &x171);
- { uint32_t x174; uint8_t x175 = _addcarryx_u32(x172, x160, x162, &x174);
- { uint32_t x177; uint8_t x178 = _addcarryx_u32(x175, x163, x165, &x177);
- { uint32_t x180; uint8_t _ = _addcarryx_u32(0x0, x178, x166, &x180);
- { uint32_t _; uint8_t x184 = _addcarryx_u32(0x0, x132, x153, &_);
- { uint32_t x186; uint8_t x187 = _addcarryx_u32(x184, x135, x168, &x186);
- { uint32_t x189; uint8_t x190 = _addcarryx_u32(x187, x138, x171, &x189);
- { uint32_t x192; uint8_t x193 = _addcarryx_u32(x190, x141, x174, &x192);
- { uint32_t x195; uint8_t x196 = _addcarryx_u32(x193, x144, x177, &x195);
- { uint32_t x198; uint8_t x199 = _addcarryx_u32(x196, x147, x180, &x198);
- { uint8_t x200 = (x199 + x148);
- { uint32_t x203; uint32_t x202 = _mulx_u32(x9, x13, &x203);
- { uint32_t x206; uint32_t x205 = _mulx_u32(x9, x15, &x206);
- { uint32_t x209; uint32_t x208 = _mulx_u32(x9, x17, &x209);
- { uint32_t x212; uint32_t x211 = _mulx_u32(x9, x19, &x212);
- { uint32_t x215; uint32_t x214 = _mulx_u32(x9, x18, &x215);
- { uint32_t x217; uint8_t x218 = _addcarryx_u32(0x0, x203, x205, &x217);
- { uint32_t x220; uint8_t x221 = _addcarryx_u32(x218, x206, x208, &x220);
- { uint32_t x223; uint8_t x224 = _addcarryx_u32(x221, x209, x211, &x223);
- { uint32_t x226; uint8_t x227 = _addcarryx_u32(x224, x212, x214, &x226);
- { uint32_t x229; uint8_t _ = _addcarryx_u32(0x0, x227, x215, &x229);
- { uint32_t x232; uint8_t x233 = _addcarryx_u32(0x0, x186, x202, &x232);
- { uint32_t x235; uint8_t x236 = _addcarryx_u32(x233, x189, x217, &x235);
- { uint32_t x238; uint8_t x239 = _addcarryx_u32(x236, x192, x220, &x238);
- { uint32_t x241; uint8_t x242 = _addcarryx_u32(x239, x195, x223, &x241);
- { uint32_t x244; uint8_t x245 = _addcarryx_u32(x242, x198, x226, &x244);
- { uint32_t x247; uint8_t x248 = _addcarryx_u32(x245, x200, x229, &x247);
- { uint32_t _; uint32_t x250 = _mulx_u32(x232, 0xf0f0f0f1, &_);
- { uint32_t x254; uint32_t x253 = _mulx_u32(x250, 0xffffffef, &x254);
- { uint32_t x257; uint32_t x256 = _mulx_u32(x250, 0xffffffff, &x257);
- { uint32_t x260; uint32_t x259 = _mulx_u32(x250, 0xffffffff, &x260);
- { uint32_t x263; uint32_t x262 = _mulx_u32(x250, 0xffffffff, &x263);
- { uint32_t x266; uint32_t x265 = _mulx_u32(x250, 0xffffff, &x266);
- { uint32_t x268; uint8_t x269 = _addcarryx_u32(0x0, x254, x256, &x268);
- { uint32_t x271; uint8_t x272 = _addcarryx_u32(x269, x257, x259, &x271);
- { uint32_t x274; uint8_t x275 = _addcarryx_u32(x272, x260, x262, &x274);
- { uint32_t x277; uint8_t x278 = _addcarryx_u32(x275, x263, x265, &x277);
- { uint32_t x280; uint8_t _ = _addcarryx_u32(0x0, x278, x266, &x280);
- { uint32_t _; uint8_t x284 = _addcarryx_u32(0x0, x232, x253, &_);
- { uint32_t x286; uint8_t x287 = _addcarryx_u32(x284, x235, x268, &x286);
- { uint32_t x289; uint8_t x290 = _addcarryx_u32(x287, x238, x271, &x289);
- { uint32_t x292; uint8_t x293 = _addcarryx_u32(x290, x241, x274, &x292);
- { uint32_t x295; uint8_t x296 = _addcarryx_u32(x293, x244, x277, &x295);
- { uint32_t x298; uint8_t x299 = _addcarryx_u32(x296, x247, x280, &x298);
- { uint8_t x300 = (x299 + x248);
- { uint32_t x303; uint32_t x302 = _mulx_u32(x11, x13, &x303);
- { uint32_t x306; uint32_t x305 = _mulx_u32(x11, x15, &x306);
- { uint32_t x309; uint32_t x308 = _mulx_u32(x11, x17, &x309);
- { uint32_t x312; uint32_t x311 = _mulx_u32(x11, x19, &x312);
- { uint32_t x315; uint32_t x314 = _mulx_u32(x11, x18, &x315);
- { uint32_t x317; uint8_t x318 = _addcarryx_u32(0x0, x303, x305, &x317);
- { uint32_t x320; uint8_t x321 = _addcarryx_u32(x318, x306, x308, &x320);
- { uint32_t x323; uint8_t x324 = _addcarryx_u32(x321, x309, x311, &x323);
- { uint32_t x326; uint8_t x327 = _addcarryx_u32(x324, x312, x314, &x326);
- { uint32_t x329; uint8_t _ = _addcarryx_u32(0x0, x327, x315, &x329);
- { uint32_t x332; uint8_t x333 = _addcarryx_u32(0x0, x286, x302, &x332);
- { uint32_t x335; uint8_t x336 = _addcarryx_u32(x333, x289, x317, &x335);
- { uint32_t x338; uint8_t x339 = _addcarryx_u32(x336, x292, x320, &x338);
- { uint32_t x341; uint8_t x342 = _addcarryx_u32(x339, x295, x323, &x341);
- { uint32_t x344; uint8_t x345 = _addcarryx_u32(x342, x298, x326, &x344);
- { uint32_t x347; uint8_t x348 = _addcarryx_u32(x345, x300, x329, &x347);
- { uint32_t _; uint32_t x350 = _mulx_u32(x332, 0xf0f0f0f1, &_);
- { uint32_t x354; uint32_t x353 = _mulx_u32(x350, 0xffffffef, &x354);
- { uint32_t x357; uint32_t x356 = _mulx_u32(x350, 0xffffffff, &x357);
- { uint32_t x360; uint32_t x359 = _mulx_u32(x350, 0xffffffff, &x360);
- { uint32_t x363; uint32_t x362 = _mulx_u32(x350, 0xffffffff, &x363);
- { uint32_t x366; uint32_t x365 = _mulx_u32(x350, 0xffffff, &x366);
- { uint32_t x368; uint8_t x369 = _addcarryx_u32(0x0, x354, x356, &x368);
- { uint32_t x371; uint8_t x372 = _addcarryx_u32(x369, x357, x359, &x371);
- { uint32_t x374; uint8_t x375 = _addcarryx_u32(x372, x360, x362, &x374);
- { uint32_t x377; uint8_t x378 = _addcarryx_u32(x375, x363, x365, &x377);
- { uint32_t x380; uint8_t _ = _addcarryx_u32(0x0, x378, x366, &x380);
- { uint32_t _; uint8_t x384 = _addcarryx_u32(0x0, x332, x353, &_);
- { uint32_t x386; uint8_t x387 = _addcarryx_u32(x384, x335, x368, &x386);
- { uint32_t x389; uint8_t x390 = _addcarryx_u32(x387, x338, x371, &x389);
- { uint32_t x392; uint8_t x393 = _addcarryx_u32(x390, x341, x374, &x392);
- { uint32_t x395; uint8_t x396 = _addcarryx_u32(x393, x344, x377, &x395);
- { uint32_t x398; uint8_t x399 = _addcarryx_u32(x396, x347, x380, &x398);
- { uint8_t x400 = (x399 + x348);
- { uint32_t x403; uint32_t x402 = _mulx_u32(x10, x13, &x403);
- { uint32_t x406; uint32_t x405 = _mulx_u32(x10, x15, &x406);
- { uint32_t x409; uint32_t x408 = _mulx_u32(x10, x17, &x409);
- { uint32_t x412; uint32_t x411 = _mulx_u32(x10, x19, &x412);
- { uint32_t x415; uint32_t x414 = _mulx_u32(x10, x18, &x415);
- { uint32_t x417; uint8_t x418 = _addcarryx_u32(0x0, x403, x405, &x417);
- { uint32_t x420; uint8_t x421 = _addcarryx_u32(x418, x406, x408, &x420);
- { uint32_t x423; uint8_t x424 = _addcarryx_u32(x421, x409, x411, &x423);
- { uint32_t x426; uint8_t x427 = _addcarryx_u32(x424, x412, x414, &x426);
- { uint32_t x429; uint8_t _ = _addcarryx_u32(0x0, x427, x415, &x429);
- { uint32_t x432; uint8_t x433 = _addcarryx_u32(0x0, x386, x402, &x432);
- { uint32_t x435; uint8_t x436 = _addcarryx_u32(x433, x389, x417, &x435);
- { uint32_t x438; uint8_t x439 = _addcarryx_u32(x436, x392, x420, &x438);
- { uint32_t x441; uint8_t x442 = _addcarryx_u32(x439, x395, x423, &x441);
- { uint32_t x444; uint8_t x445 = _addcarryx_u32(x442, x398, x426, &x444);
- { uint32_t x447; uint8_t x448 = _addcarryx_u32(x445, x400, x429, &x447);
- { uint32_t _; uint32_t x450 = _mulx_u32(x432, 0xf0f0f0f1, &_);
- { uint32_t x454; uint32_t x453 = _mulx_u32(x450, 0xffffffef, &x454);
- { uint32_t x457; uint32_t x456 = _mulx_u32(x450, 0xffffffff, &x457);
- { uint32_t x460; uint32_t x459 = _mulx_u32(x450, 0xffffffff, &x460);
- { uint32_t x463; uint32_t x462 = _mulx_u32(x450, 0xffffffff, &x463);
- { uint32_t x466; uint32_t x465 = _mulx_u32(x450, 0xffffff, &x466);
- { uint32_t x468; uint8_t x469 = _addcarryx_u32(0x0, x454, x456, &x468);
- { uint32_t x471; uint8_t x472 = _addcarryx_u32(x469, x457, x459, &x471);
- { uint32_t x474; uint8_t x475 = _addcarryx_u32(x472, x460, x462, &x474);
- { uint32_t x477; uint8_t x478 = _addcarryx_u32(x475, x463, x465, &x477);
- { uint32_t x480; uint8_t _ = _addcarryx_u32(0x0, x478, x466, &x480);
- { uint32_t _; uint8_t x484 = _addcarryx_u32(0x0, x432, x453, &_);
- { uint32_t x486; uint8_t x487 = _addcarryx_u32(x484, x435, x468, &x486);
- { uint32_t x489; uint8_t x490 = _addcarryx_u32(x487, x438, x471, &x489);
- { uint32_t x492; uint8_t x493 = _addcarryx_u32(x490, x441, x474, &x492);
- { uint32_t x495; uint8_t x496 = _addcarryx_u32(x493, x444, x477, &x495);
- { uint32_t x498; uint8_t x499 = _addcarryx_u32(x496, x447, x480, &x498);
- { uint8_t x500 = (x499 + x448);
- { uint32_t x502; uint8_t x503 = _subborrow_u32(0x0, x486, 0xffffffef, &x502);
- { uint32_t x505; uint8_t x506 = _subborrow_u32(x503, x489, 0xffffffff, &x505);
- { uint32_t x508; uint8_t x509 = _subborrow_u32(x506, x492, 0xffffffff, &x508);
- { uint32_t x511; uint8_t x512 = _subborrow_u32(x509, x495, 0xffffffff, &x511);
- { uint32_t x514; uint8_t x515 = _subborrow_u32(x512, x498, 0xffffff, &x514);
- { uint32_t _; uint8_t x518 = _subborrow_u32(x515, x500, 0x0, &_);
- { uint32_t x519 = cmovznz32(x518, x514, x498);
- { uint32_t x520 = cmovznz32(x518, x511, x495);
- { uint32_t x521 = cmovznz32(x518, x508, x492);
- { uint32_t x522 = cmovznz32(x518, x505, x489);
- { uint32_t x523 = cmovznz32(x518, x502, x486);
- out[0] = x523;
- out[1] = x522;
- out[2] = x521;
- out[3] = x520;
- out[4] = x519;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e152m17_5limbs/femul.v b/src/Specific/montgomery32_2e152m17_5limbs/femul.v
deleted file mode 100644
index 3e6c93cdc..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e152m17_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e152m17_5limbs/femulDisplay.log b/src/Specific/montgomery32_2e152m17_5limbs/femulDisplay.log
deleted file mode 100644
index b6c0f4374..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,181 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint32_t x22 = mulx_u32(x5, x13);
- uint32_t x24, uint32_t x25 = mulx_u32(x5, x15);
- uint32_t x27, uint32_t x28 = mulx_u32(x5, x17);
- uint32_t x30, uint32_t x31 = mulx_u32(x5, x19);
- uint32_t x33, uint32_t x34 = mulx_u32(x5, x18);
- uint32_t x36, uint8_t x37 = addcarryx_u32(0x0, x22, x24);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x37, x25, x27);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x40, x28, x30);
- uint32_t x45, uint8_t x46 = addcarryx_u32(x43, x31, x33);
- uint32_t x48, uint8_t _ = addcarryx_u32(0x0, x46, x34);
- uint32_t x51, uint32_t _ = mulx_u32(x21, 0xf0f0f0f1);
- uint32_t x54, uint32_t x55 = mulx_u32(x51, 0xffffffef);
- uint32_t x57, uint32_t x58 = mulx_u32(x51, 0xffffffff);
- uint32_t x60, uint32_t x61 = mulx_u32(x51, 0xffffffff);
- uint32_t x63, uint32_t x64 = mulx_u32(x51, 0xffffffff);
- uint32_t x66, uint32_t x67 = mulx_u32(x51, 0xffffff);
- uint32_t x69, uint8_t x70 = addcarryx_u32(0x0, x55, x57);
- uint32_t x72, uint8_t x73 = addcarryx_u32(x70, x58, x60);
- uint32_t x75, uint8_t x76 = addcarryx_u32(x73, x61, x63);
- uint32_t x78, uint8_t x79 = addcarryx_u32(x76, x64, x66);
- uint32_t x81, uint8_t _ = addcarryx_u32(0x0, x79, x67);
- uint32_t _, uint8_t x85 = addcarryx_u32(0x0, x21, x54);
- uint32_t x87, uint8_t x88 = addcarryx_u32(x85, x36, x69);
- uint32_t x90, uint8_t x91 = addcarryx_u32(x88, x39, x72);
- uint32_t x93, uint8_t x94 = addcarryx_u32(x91, x42, x75);
- uint32_t x96, uint8_t x97 = addcarryx_u32(x94, x45, x78);
- uint32_t x99, uint8_t x100 = addcarryx_u32(x97, x48, x81);
- uint32_t x102, uint32_t x103 = mulx_u32(x7, x13);
- uint32_t x105, uint32_t x106 = mulx_u32(x7, x15);
- uint32_t x108, uint32_t x109 = mulx_u32(x7, x17);
- uint32_t x111, uint32_t x112 = mulx_u32(x7, x19);
- uint32_t x114, uint32_t x115 = mulx_u32(x7, x18);
- uint32_t x117, uint8_t x118 = addcarryx_u32(0x0, x103, x105);
- uint32_t x120, uint8_t x121 = addcarryx_u32(x118, x106, x108);
- uint32_t x123, uint8_t x124 = addcarryx_u32(x121, x109, x111);
- uint32_t x126, uint8_t x127 = addcarryx_u32(x124, x112, x114);
- uint32_t x129, uint8_t _ = addcarryx_u32(0x0, x127, x115);
- uint32_t x132, uint8_t x133 = addcarryx_u32(0x0, x87, x102);
- uint32_t x135, uint8_t x136 = addcarryx_u32(x133, x90, x117);
- uint32_t x138, uint8_t x139 = addcarryx_u32(x136, x93, x120);
- uint32_t x141, uint8_t x142 = addcarryx_u32(x139, x96, x123);
- uint32_t x144, uint8_t x145 = addcarryx_u32(x142, x99, x126);
- uint32_t x147, uint8_t x148 = addcarryx_u32(x145, x100, x129);
- uint32_t x150, uint32_t _ = mulx_u32(x132, 0xf0f0f0f1);
- uint32_t x153, uint32_t x154 = mulx_u32(x150, 0xffffffef);
- uint32_t x156, uint32_t x157 = mulx_u32(x150, 0xffffffff);
- uint32_t x159, uint32_t x160 = mulx_u32(x150, 0xffffffff);
- uint32_t x162, uint32_t x163 = mulx_u32(x150, 0xffffffff);
- uint32_t x165, uint32_t x166 = mulx_u32(x150, 0xffffff);
- uint32_t x168, uint8_t x169 = addcarryx_u32(0x0, x154, x156);
- uint32_t x171, uint8_t x172 = addcarryx_u32(x169, x157, x159);
- uint32_t x174, uint8_t x175 = addcarryx_u32(x172, x160, x162);
- uint32_t x177, uint8_t x178 = addcarryx_u32(x175, x163, x165);
- uint32_t x180, uint8_t _ = addcarryx_u32(0x0, x178, x166);
- uint32_t _, uint8_t x184 = addcarryx_u32(0x0, x132, x153);
- uint32_t x186, uint8_t x187 = addcarryx_u32(x184, x135, x168);
- uint32_t x189, uint8_t x190 = addcarryx_u32(x187, x138, x171);
- uint32_t x192, uint8_t x193 = addcarryx_u32(x190, x141, x174);
- uint32_t x195, uint8_t x196 = addcarryx_u32(x193, x144, x177);
- uint32_t x198, uint8_t x199 = addcarryx_u32(x196, x147, x180);
- uint8_t x200 = (x199 + x148);
- uint32_t x202, uint32_t x203 = mulx_u32(x9, x13);
- uint32_t x205, uint32_t x206 = mulx_u32(x9, x15);
- uint32_t x208, uint32_t x209 = mulx_u32(x9, x17);
- uint32_t x211, uint32_t x212 = mulx_u32(x9, x19);
- uint32_t x214, uint32_t x215 = mulx_u32(x9, x18);
- uint32_t x217, uint8_t x218 = addcarryx_u32(0x0, x203, x205);
- uint32_t x220, uint8_t x221 = addcarryx_u32(x218, x206, x208);
- uint32_t x223, uint8_t x224 = addcarryx_u32(x221, x209, x211);
- uint32_t x226, uint8_t x227 = addcarryx_u32(x224, x212, x214);
- uint32_t x229, uint8_t _ = addcarryx_u32(0x0, x227, x215);
- uint32_t x232, uint8_t x233 = addcarryx_u32(0x0, x186, x202);
- uint32_t x235, uint8_t x236 = addcarryx_u32(x233, x189, x217);
- uint32_t x238, uint8_t x239 = addcarryx_u32(x236, x192, x220);
- uint32_t x241, uint8_t x242 = addcarryx_u32(x239, x195, x223);
- uint32_t x244, uint8_t x245 = addcarryx_u32(x242, x198, x226);
- uint32_t x247, uint8_t x248 = addcarryx_u32(x245, x200, x229);
- uint32_t x250, uint32_t _ = mulx_u32(x232, 0xf0f0f0f1);
- uint32_t x253, uint32_t x254 = mulx_u32(x250, 0xffffffef);
- uint32_t x256, uint32_t x257 = mulx_u32(x250, 0xffffffff);
- uint32_t x259, uint32_t x260 = mulx_u32(x250, 0xffffffff);
- uint32_t x262, uint32_t x263 = mulx_u32(x250, 0xffffffff);
- uint32_t x265, uint32_t x266 = mulx_u32(x250, 0xffffff);
- uint32_t x268, uint8_t x269 = addcarryx_u32(0x0, x254, x256);
- uint32_t x271, uint8_t x272 = addcarryx_u32(x269, x257, x259);
- uint32_t x274, uint8_t x275 = addcarryx_u32(x272, x260, x262);
- uint32_t x277, uint8_t x278 = addcarryx_u32(x275, x263, x265);
- uint32_t x280, uint8_t _ = addcarryx_u32(0x0, x278, x266);
- uint32_t _, uint8_t x284 = addcarryx_u32(0x0, x232, x253);
- uint32_t x286, uint8_t x287 = addcarryx_u32(x284, x235, x268);
- uint32_t x289, uint8_t x290 = addcarryx_u32(x287, x238, x271);
- uint32_t x292, uint8_t x293 = addcarryx_u32(x290, x241, x274);
- uint32_t x295, uint8_t x296 = addcarryx_u32(x293, x244, x277);
- uint32_t x298, uint8_t x299 = addcarryx_u32(x296, x247, x280);
- uint8_t x300 = (x299 + x248);
- uint32_t x302, uint32_t x303 = mulx_u32(x11, x13);
- uint32_t x305, uint32_t x306 = mulx_u32(x11, x15);
- uint32_t x308, uint32_t x309 = mulx_u32(x11, x17);
- uint32_t x311, uint32_t x312 = mulx_u32(x11, x19);
- uint32_t x314, uint32_t x315 = mulx_u32(x11, x18);
- uint32_t x317, uint8_t x318 = addcarryx_u32(0x0, x303, x305);
- uint32_t x320, uint8_t x321 = addcarryx_u32(x318, x306, x308);
- uint32_t x323, uint8_t x324 = addcarryx_u32(x321, x309, x311);
- uint32_t x326, uint8_t x327 = addcarryx_u32(x324, x312, x314);
- uint32_t x329, uint8_t _ = addcarryx_u32(0x0, x327, x315);
- uint32_t x332, uint8_t x333 = addcarryx_u32(0x0, x286, x302);
- uint32_t x335, uint8_t x336 = addcarryx_u32(x333, x289, x317);
- uint32_t x338, uint8_t x339 = addcarryx_u32(x336, x292, x320);
- uint32_t x341, uint8_t x342 = addcarryx_u32(x339, x295, x323);
- uint32_t x344, uint8_t x345 = addcarryx_u32(x342, x298, x326);
- uint32_t x347, uint8_t x348 = addcarryx_u32(x345, x300, x329);
- uint32_t x350, uint32_t _ = mulx_u32(x332, 0xf0f0f0f1);
- uint32_t x353, uint32_t x354 = mulx_u32(x350, 0xffffffef);
- uint32_t x356, uint32_t x357 = mulx_u32(x350, 0xffffffff);
- uint32_t x359, uint32_t x360 = mulx_u32(x350, 0xffffffff);
- uint32_t x362, uint32_t x363 = mulx_u32(x350, 0xffffffff);
- uint32_t x365, uint32_t x366 = mulx_u32(x350, 0xffffff);
- uint32_t x368, uint8_t x369 = addcarryx_u32(0x0, x354, x356);
- uint32_t x371, uint8_t x372 = addcarryx_u32(x369, x357, x359);
- uint32_t x374, uint8_t x375 = addcarryx_u32(x372, x360, x362);
- uint32_t x377, uint8_t x378 = addcarryx_u32(x375, x363, x365);
- uint32_t x380, uint8_t _ = addcarryx_u32(0x0, x378, x366);
- uint32_t _, uint8_t x384 = addcarryx_u32(0x0, x332, x353);
- uint32_t x386, uint8_t x387 = addcarryx_u32(x384, x335, x368);
- uint32_t x389, uint8_t x390 = addcarryx_u32(x387, x338, x371);
- uint32_t x392, uint8_t x393 = addcarryx_u32(x390, x341, x374);
- uint32_t x395, uint8_t x396 = addcarryx_u32(x393, x344, x377);
- uint32_t x398, uint8_t x399 = addcarryx_u32(x396, x347, x380);
- uint8_t x400 = (x399 + x348);
- uint32_t x402, uint32_t x403 = mulx_u32(x10, x13);
- uint32_t x405, uint32_t x406 = mulx_u32(x10, x15);
- uint32_t x408, uint32_t x409 = mulx_u32(x10, x17);
- uint32_t x411, uint32_t x412 = mulx_u32(x10, x19);
- uint32_t x414, uint32_t x415 = mulx_u32(x10, x18);
- uint32_t x417, uint8_t x418 = addcarryx_u32(0x0, x403, x405);
- uint32_t x420, uint8_t x421 = addcarryx_u32(x418, x406, x408);
- uint32_t x423, uint8_t x424 = addcarryx_u32(x421, x409, x411);
- uint32_t x426, uint8_t x427 = addcarryx_u32(x424, x412, x414);
- uint32_t x429, uint8_t _ = addcarryx_u32(0x0, x427, x415);
- uint32_t x432, uint8_t x433 = addcarryx_u32(0x0, x386, x402);
- uint32_t x435, uint8_t x436 = addcarryx_u32(x433, x389, x417);
- uint32_t x438, uint8_t x439 = addcarryx_u32(x436, x392, x420);
- uint32_t x441, uint8_t x442 = addcarryx_u32(x439, x395, x423);
- uint32_t x444, uint8_t x445 = addcarryx_u32(x442, x398, x426);
- uint32_t x447, uint8_t x448 = addcarryx_u32(x445, x400, x429);
- uint32_t x450, uint32_t _ = mulx_u32(x432, 0xf0f0f0f1);
- uint32_t x453, uint32_t x454 = mulx_u32(x450, 0xffffffef);
- uint32_t x456, uint32_t x457 = mulx_u32(x450, 0xffffffff);
- uint32_t x459, uint32_t x460 = mulx_u32(x450, 0xffffffff);
- uint32_t x462, uint32_t x463 = mulx_u32(x450, 0xffffffff);
- uint32_t x465, uint32_t x466 = mulx_u32(x450, 0xffffff);
- uint32_t x468, uint8_t x469 = addcarryx_u32(0x0, x454, x456);
- uint32_t x471, uint8_t x472 = addcarryx_u32(x469, x457, x459);
- uint32_t x474, uint8_t x475 = addcarryx_u32(x472, x460, x462);
- uint32_t x477, uint8_t x478 = addcarryx_u32(x475, x463, x465);
- uint32_t x480, uint8_t _ = addcarryx_u32(0x0, x478, x466);
- uint32_t _, uint8_t x484 = addcarryx_u32(0x0, x432, x453);
- uint32_t x486, uint8_t x487 = addcarryx_u32(x484, x435, x468);
- uint32_t x489, uint8_t x490 = addcarryx_u32(x487, x438, x471);
- uint32_t x492, uint8_t x493 = addcarryx_u32(x490, x441, x474);
- uint32_t x495, uint8_t x496 = addcarryx_u32(x493, x444, x477);
- uint32_t x498, uint8_t x499 = addcarryx_u32(x496, x447, x480);
- uint8_t x500 = (x499 + x448);
- uint32_t x502, uint8_t x503 = subborrow_u32(0x0, x486, 0xffffffef);
- uint32_t x505, uint8_t x506 = subborrow_u32(x503, x489, 0xffffffff);
- uint32_t x508, uint8_t x509 = subborrow_u32(x506, x492, 0xffffffff);
- uint32_t x511, uint8_t x512 = subborrow_u32(x509, x495, 0xffffffff);
- uint32_t x514, uint8_t x515 = subborrow_u32(x512, x498, 0xffffff);
- uint32_t _, uint8_t x518 = subborrow_u32(x515, x500, 0x0);
- uint32_t x519 = cmovznz32(x518, x514, x498);
- uint32_t x520 = cmovznz32(x518, x511, x495);
- uint32_t x521 = cmovznz32(x518, x508, x492);
- uint32_t x522 = cmovznz32(x518, x505, x489);
- uint32_t x523 = cmovznz32(x518, x502, x486);
- return (x519, x520, x521, x522, x523))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e152m17_5limbs/femulDisplay.v b/src/Specific/montgomery32_2e152m17_5limbs/femulDisplay.v
deleted file mode 100644
index 5881d2bf3..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e152m17_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e152m17_5limbs/fenz.c b/src/Specific/montgomery32_2e152m17_5limbs/fenz.c
deleted file mode 100644
index 5601e8c15..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/fenz.c
+++ /dev/null
@@ -1,13 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x9 = (x8 | x7);
- { uint32_t x10 = (x6 | x9);
- { uint32_t x11 = (x4 | x10);
- { uint32_t x12 = (x2 | x11);
- out[0] = x12;
- }}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e152m17_5limbs/fenz.v b/src/Specific/montgomery32_2e152m17_5limbs/fenz.v
deleted file mode 100644
index 36879601b..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e152m17_5limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e152m17_5limbs/fenzDisplay.log b/src/Specific/montgomery32_2e152m17_5limbs/fenzDisplay.log
deleted file mode 100644
index 723d13164..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/fenzDisplay.log
+++ /dev/null
@@ -1,11 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint32_t x9 = (x8 | x7);
- uint32_t x10 = (x6 | x9);
- uint32_t x11 = (x4 | x10);
- uint32_t x12 = (x2 | x11);
- return x12)
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e152m17_5limbs/fenzDisplay.v b/src/Specific/montgomery32_2e152m17_5limbs/fenzDisplay.v
deleted file mode 100644
index 64937127c..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e152m17_5limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e152m17_5limbs/feopp.c b/src/Specific/montgomery32_2e152m17_5limbs/feopp.c
deleted file mode 100644
index 9315b0eb2..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/feopp.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void feopp(uint32_t out[5], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x10; uint8_t x11 = _subborrow_u32(0x0, 0x0, x2, &x10);
- { uint32_t x13; uint8_t x14 = _subborrow_u32(x11, 0x0, x4, &x13);
- { uint32_t x16; uint8_t x17 = _subborrow_u32(x14, 0x0, x6, &x16);
- { uint32_t x19; uint8_t x20 = _subborrow_u32(x17, 0x0, x8, &x19);
- { uint32_t x22; uint8_t x23 = _subborrow_u32(x20, 0x0, x7, &x22);
- { uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- { uint32_t x25 = (x24 & 0xffffffef);
- { uint32_t x27; uint8_t x28 = _addcarryx_u32(0x0, x10, x25, &x27);
- { uint32_t x29 = (x24 & 0xffffffff);
- { uint32_t x31; uint8_t x32 = _addcarryx_u32(x28, x13, x29, &x31);
- { uint32_t x33 = (x24 & 0xffffffff);
- { uint32_t x35; uint8_t x36 = _addcarryx_u32(x32, x16, x33, &x35);
- { uint32_t x37 = (x24 & 0xffffffff);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x36, x19, x37, &x39);
- { uint32_t x41 = (x24 & 0xffffff);
- { uint32_t x43; uint8_t _ = _addcarryx_u32(x40, x22, x41, &x43);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e152m17_5limbs/feopp.v b/src/Specific/montgomery32_2e152m17_5limbs/feopp.v
deleted file mode 100644
index ac9bb7548..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e152m17_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e152m17_5limbs/feoppDisplay.log b/src/Specific/montgomery32_2e152m17_5limbs/feoppDisplay.log
deleted file mode 100644
index 75f6eb65a..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/feoppDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint32_t x10, uint8_t x11 = subborrow_u32(0x0, 0x0, x2);
- uint32_t x13, uint8_t x14 = subborrow_u32(x11, 0x0, x4);
- uint32_t x16, uint8_t x17 = subborrow_u32(x14, 0x0, x6);
- uint32_t x19, uint8_t x20 = subborrow_u32(x17, 0x0, x8);
- uint32_t x22, uint8_t x23 = subborrow_u32(x20, 0x0, x7);
- uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- uint32_t x25 = (x24 & 0xffffffef);
- uint32_t x27, uint8_t x28 = addcarryx_u32(0x0, x10, x25);
- uint32_t x29 = (x24 & 0xffffffff);
- uint32_t x31, uint8_t x32 = addcarryx_u32(x28, x13, x29);
- uint32_t x33 = (x24 & 0xffffffff);
- uint32_t x35, uint8_t x36 = addcarryx_u32(x32, x16, x33);
- uint32_t x37 = (x24 & 0xffffffff);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x36, x19, x37);
- uint32_t x41 = (x24 & 0xffffff);
- uint32_t x43, uint8_t _ = addcarryx_u32(x40, x22, x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e152m17_5limbs/feoppDisplay.v b/src/Specific/montgomery32_2e152m17_5limbs/feoppDisplay.v
deleted file mode 100644
index b7c7f7e48..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e152m17_5limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e152m17_5limbs/fesquare.c b/src/Specific/montgomery32_2e152m17_5limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e152m17_5limbs/fesub.c b/src/Specific/montgomery32_2e152m17_5limbs/fesub.c
deleted file mode 100644
index 613b712b5..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/fesub.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void fesub(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x21; uint8_t x22 = _subborrow_u32(0x0, x5, x13, &x21);
- { uint32_t x24; uint8_t x25 = _subborrow_u32(x22, x7, x15, &x24);
- { uint32_t x27; uint8_t x28 = _subborrow_u32(x25, x9, x17, &x27);
- { uint32_t x30; uint8_t x31 = _subborrow_u32(x28, x11, x19, &x30);
- { uint32_t x33; uint8_t x34 = _subborrow_u32(x31, x10, x18, &x33);
- { uint32_t x35 = cmovznz32(x34, 0x0, 0xffffffff);
- { uint32_t x36 = (x35 & 0xffffffef);
- { uint32_t x38; uint8_t x39 = _addcarryx_u32(0x0, x21, x36, &x38);
- { uint32_t x40 = (x35 & 0xffffffff);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x39, x24, x40, &x42);
- { uint32_t x44 = (x35 & 0xffffffff);
- { uint32_t x46; uint8_t x47 = _addcarryx_u32(x43, x27, x44, &x46);
- { uint32_t x48 = (x35 & 0xffffffff);
- { uint32_t x50; uint8_t x51 = _addcarryx_u32(x47, x30, x48, &x50);
- { uint32_t x52 = (x35 & 0xffffff);
- { uint32_t x54; uint8_t _ = _addcarryx_u32(x51, x33, x52, &x54);
- out[0] = x38;
- out[1] = x42;
- out[2] = x46;
- out[3] = x50;
- out[4] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e152m17_5limbs/fesub.v b/src/Specific/montgomery32_2e152m17_5limbs/fesub.v
deleted file mode 100644
index 7f943ed76..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e152m17_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e152m17_5limbs/fesubDisplay.log b/src/Specific/montgomery32_2e152m17_5limbs/fesubDisplay.log
deleted file mode 100644
index ee2a25baf..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint8_t x22 = subborrow_u32(0x0, x5, x13);
- uint32_t x24, uint8_t x25 = subborrow_u32(x22, x7, x15);
- uint32_t x27, uint8_t x28 = subborrow_u32(x25, x9, x17);
- uint32_t x30, uint8_t x31 = subborrow_u32(x28, x11, x19);
- uint32_t x33, uint8_t x34 = subborrow_u32(x31, x10, x18);
- uint32_t x35 = cmovznz32(x34, 0x0, 0xffffffff);
- uint32_t x36 = (x35 & 0xffffffef);
- uint32_t x38, uint8_t x39 = addcarryx_u32(0x0, x21, x36);
- uint32_t x40 = (x35 & 0xffffffff);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x39, x24, x40);
- uint32_t x44 = (x35 & 0xffffffff);
- uint32_t x46, uint8_t x47 = addcarryx_u32(x43, x27, x44);
- uint32_t x48 = (x35 & 0xffffffff);
- uint32_t x50, uint8_t x51 = addcarryx_u32(x47, x30, x48);
- uint32_t x52 = (x35 & 0xffffff);
- uint32_t x54, uint8_t _ = addcarryx_u32(x51, x33, x52);
- (Return x54, Return x50, Return x46, Return x42, Return x38))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e152m17_5limbs/fesubDisplay.v b/src/Specific/montgomery32_2e152m17_5limbs/fesubDisplay.v
deleted file mode 100644
index 872631ac6..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e152m17_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e152m17_5limbs/py_interpreter.sh b/src/Specific/montgomery32_2e152m17_5limbs/py_interpreter.sh
deleted file mode 100755
index b6dee011d..000000000
--- a/src/Specific/montgomery32_2e152m17_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**152 - 17' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e158m15_5limbs/CurveParameters.v b/src/Specific/montgomery32_2e158m15_5limbs/CurveParameters.v
deleted file mode 100644
index 282dd6dba..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^158 - 15
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 32;
- bitwidth := 32;
- s := 2^158;
- c := [(1, 15)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e158m15_5limbs/Synthesis.v b/src/Specific/montgomery32_2e158m15_5limbs/Synthesis.v
deleted file mode 100644
index 4b384a199..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e158m15_5limbs.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/montgomery32_2e158m15_5limbs/compiler.sh b/src/Specific/montgomery32_2e158m15_5limbs/compiler.sh
deleted file mode 100755
index d2c2fc2bc..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/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='{32,32,32,32,32}' -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='5' -Dq_mpz='(1_mpz<<158) - 15' "$@"
diff --git a/src/Specific/montgomery32_2e158m15_5limbs/compilerxx.sh b/src/Specific/montgomery32_2e158m15_5limbs/compilerxx.sh
deleted file mode 100755
index 8a31dc80c..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/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='{32,32,32,32,32}' -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='5' -Dq_mpz='(1_mpz<<158) - 15' "$@"
diff --git a/src/Specific/montgomery32_2e158m15_5limbs/feadd.c b/src/Specific/montgomery32_2e158m15_5limbs/feadd.c
deleted file mode 100644
index ea813d3c5..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/feadd.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feadd(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x21; uint8_t x22 = _addcarryx_u32(0x0, x5, x13, &x21);
- { uint32_t x24; uint8_t x25 = _addcarryx_u32(x22, x7, x15, &x24);
- { uint32_t x27; uint8_t x28 = _addcarryx_u32(x25, x9, x17, &x27);
- { uint32_t x30; uint8_t x31 = _addcarryx_u32(x28, x11, x19, &x30);
- { uint32_t x33; uint8_t x34 = _addcarryx_u32(x31, x10, x18, &x33);
- { uint32_t x36; uint8_t x37 = _subborrow_u32(0x0, x21, 0xfffffff1, &x36);
- { uint32_t x39; uint8_t x40 = _subborrow_u32(x37, x24, 0xffffffff, &x39);
- { uint32_t x42; uint8_t x43 = _subborrow_u32(x40, x27, 0xffffffff, &x42);
- { uint32_t x45; uint8_t x46 = _subborrow_u32(x43, x30, 0xffffffff, &x45);
- { uint32_t x48; uint8_t x49 = _subborrow_u32(x46, x33, 0x3fffffff, &x48);
- { uint32_t _; uint8_t x52 = _subborrow_u32(x49, x34, 0x0, &_);
- { uint32_t x53 = cmovznz32(x52, x48, x33);
- { uint32_t x54 = cmovznz32(x52, x45, x30);
- { uint32_t x55 = cmovznz32(x52, x42, x27);
- { uint32_t x56 = cmovznz32(x52, x39, x24);
- { uint32_t x57 = cmovznz32(x52, x36, x21);
- out[0] = x57;
- out[1] = x56;
- out[2] = x55;
- out[3] = x54;
- out[4] = x53;
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e158m15_5limbs/feadd.v b/src/Specific/montgomery32_2e158m15_5limbs/feadd.v
deleted file mode 100644
index 14023b2f1..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e158m15_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e158m15_5limbs/feaddDisplay.log b/src/Specific/montgomery32_2e158m15_5limbs/feaddDisplay.log
deleted file mode 100644
index b65769f73..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint8_t x22 = addcarryx_u32(0x0, x5, x13);
- uint32_t x24, uint8_t x25 = addcarryx_u32(x22, x7, x15);
- uint32_t x27, uint8_t x28 = addcarryx_u32(x25, x9, x17);
- uint32_t x30, uint8_t x31 = addcarryx_u32(x28, x11, x19);
- uint32_t x33, uint8_t x34 = addcarryx_u32(x31, x10, x18);
- uint32_t x36, uint8_t x37 = subborrow_u32(0x0, x21, 0xfffffff1);
- uint32_t x39, uint8_t x40 = subborrow_u32(x37, x24, 0xffffffff);
- uint32_t x42, uint8_t x43 = subborrow_u32(x40, x27, 0xffffffff);
- uint32_t x45, uint8_t x46 = subborrow_u32(x43, x30, 0xffffffff);
- uint32_t x48, uint8_t x49 = subborrow_u32(x46, x33, 0x3fffffff);
- uint32_t _, uint8_t x52 = subborrow_u32(x49, x34, 0x0);
- uint32_t x53 = cmovznz32(x52, x48, x33);
- uint32_t x54 = cmovznz32(x52, x45, x30);
- uint32_t x55 = cmovznz32(x52, x42, x27);
- uint32_t x56 = cmovznz32(x52, x39, x24);
- uint32_t x57 = cmovznz32(x52, x36, x21);
- return (x53, x54, x55, x56, x57))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e158m15_5limbs/feaddDisplay.v b/src/Specific/montgomery32_2e158m15_5limbs/feaddDisplay.v
deleted file mode 100644
index 18ce7f295..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e158m15_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e158m15_5limbs/femul.c b/src/Specific/montgomery32_2e158m15_5limbs/femul.c
deleted file mode 100644
index c3a464980..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/femul.c
+++ /dev/null
@@ -1,192 +0,0 @@
-static void femul(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x22; uint32_t x21 = _mulx_u32(x5, x13, &x22);
- { uint32_t x25; uint32_t x24 = _mulx_u32(x5, x15, &x25);
- { uint32_t x28; uint32_t x27 = _mulx_u32(x5, x17, &x28);
- { uint32_t x31; uint32_t x30 = _mulx_u32(x5, x19, &x31);
- { uint32_t x34; uint32_t x33 = _mulx_u32(x5, x18, &x34);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(0x0, x22, x24, &x36);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x37, x25, x27, &x39);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x40, x28, x30, &x42);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(x43, x31, x33, &x45);
- { uint32_t x48; uint8_t _ = _addcarryx_u32(0x0, x46, x34, &x48);
- { uint32_t _; uint32_t x51 = _mulx_u32(x21, 0xeeeeeeef, &_);
- { uint32_t x55; uint32_t x54 = _mulx_u32(x51, 0xfffffff1, &x55);
- { uint32_t x58; uint32_t x57 = _mulx_u32(x51, 0xffffffff, &x58);
- { uint32_t x61; uint32_t x60 = _mulx_u32(x51, 0xffffffff, &x61);
- { uint32_t x64; uint32_t x63 = _mulx_u32(x51, 0xffffffff, &x64);
- { uint32_t x67; uint32_t x66 = _mulx_u32(x51, 0x3fffffff, &x67);
- { uint32_t x69; uint8_t x70 = _addcarryx_u32(0x0, x55, x57, &x69);
- { uint32_t x72; uint8_t x73 = _addcarryx_u32(x70, x58, x60, &x72);
- { uint32_t x75; uint8_t x76 = _addcarryx_u32(x73, x61, x63, &x75);
- { uint32_t x78; uint8_t x79 = _addcarryx_u32(x76, x64, x66, &x78);
- { uint32_t x81; uint8_t _ = _addcarryx_u32(0x0, x79, x67, &x81);
- { uint32_t _; uint8_t x85 = _addcarryx_u32(0x0, x21, x54, &_);
- { uint32_t x87; uint8_t x88 = _addcarryx_u32(x85, x36, x69, &x87);
- { uint32_t x90; uint8_t x91 = _addcarryx_u32(x88, x39, x72, &x90);
- { uint32_t x93; uint8_t x94 = _addcarryx_u32(x91, x42, x75, &x93);
- { uint32_t x96; uint8_t x97 = _addcarryx_u32(x94, x45, x78, &x96);
- { uint32_t x99; uint8_t x100 = _addcarryx_u32(x97, x48, x81, &x99);
- { uint32_t x103; uint32_t x102 = _mulx_u32(x7, x13, &x103);
- { uint32_t x106; uint32_t x105 = _mulx_u32(x7, x15, &x106);
- { uint32_t x109; uint32_t x108 = _mulx_u32(x7, x17, &x109);
- { uint32_t x112; uint32_t x111 = _mulx_u32(x7, x19, &x112);
- { uint32_t x115; uint32_t x114 = _mulx_u32(x7, x18, &x115);
- { uint32_t x117; uint8_t x118 = _addcarryx_u32(0x0, x103, x105, &x117);
- { uint32_t x120; uint8_t x121 = _addcarryx_u32(x118, x106, x108, &x120);
- { uint32_t x123; uint8_t x124 = _addcarryx_u32(x121, x109, x111, &x123);
- { uint32_t x126; uint8_t x127 = _addcarryx_u32(x124, x112, x114, &x126);
- { uint32_t x129; uint8_t _ = _addcarryx_u32(0x0, x127, x115, &x129);
- { uint32_t x132; uint8_t x133 = _addcarryx_u32(0x0, x87, x102, &x132);
- { uint32_t x135; uint8_t x136 = _addcarryx_u32(x133, x90, x117, &x135);
- { uint32_t x138; uint8_t x139 = _addcarryx_u32(x136, x93, x120, &x138);
- { uint32_t x141; uint8_t x142 = _addcarryx_u32(x139, x96, x123, &x141);
- { uint32_t x144; uint8_t x145 = _addcarryx_u32(x142, x99, x126, &x144);
- { uint32_t x147; uint8_t x148 = _addcarryx_u32(x145, x100, x129, &x147);
- { uint32_t _; uint32_t x150 = _mulx_u32(x132, 0xeeeeeeef, &_);
- { uint32_t x154; uint32_t x153 = _mulx_u32(x150, 0xfffffff1, &x154);
- { uint32_t x157; uint32_t x156 = _mulx_u32(x150, 0xffffffff, &x157);
- { uint32_t x160; uint32_t x159 = _mulx_u32(x150, 0xffffffff, &x160);
- { uint32_t x163; uint32_t x162 = _mulx_u32(x150, 0xffffffff, &x163);
- { uint32_t x166; uint32_t x165 = _mulx_u32(x150, 0x3fffffff, &x166);
- { uint32_t x168; uint8_t x169 = _addcarryx_u32(0x0, x154, x156, &x168);
- { uint32_t x171; uint8_t x172 = _addcarryx_u32(x169, x157, x159, &x171);
- { uint32_t x174; uint8_t x175 = _addcarryx_u32(x172, x160, x162, &x174);
- { uint32_t x177; uint8_t x178 = _addcarryx_u32(x175, x163, x165, &x177);
- { uint32_t x180; uint8_t _ = _addcarryx_u32(0x0, x178, x166, &x180);
- { uint32_t _; uint8_t x184 = _addcarryx_u32(0x0, x132, x153, &_);
- { uint32_t x186; uint8_t x187 = _addcarryx_u32(x184, x135, x168, &x186);
- { uint32_t x189; uint8_t x190 = _addcarryx_u32(x187, x138, x171, &x189);
- { uint32_t x192; uint8_t x193 = _addcarryx_u32(x190, x141, x174, &x192);
- { uint32_t x195; uint8_t x196 = _addcarryx_u32(x193, x144, x177, &x195);
- { uint32_t x198; uint8_t x199 = _addcarryx_u32(x196, x147, x180, &x198);
- { uint8_t x200 = (x199 + x148);
- { uint32_t x203; uint32_t x202 = _mulx_u32(x9, x13, &x203);
- { uint32_t x206; uint32_t x205 = _mulx_u32(x9, x15, &x206);
- { uint32_t x209; uint32_t x208 = _mulx_u32(x9, x17, &x209);
- { uint32_t x212; uint32_t x211 = _mulx_u32(x9, x19, &x212);
- { uint32_t x215; uint32_t x214 = _mulx_u32(x9, x18, &x215);
- { uint32_t x217; uint8_t x218 = _addcarryx_u32(0x0, x203, x205, &x217);
- { uint32_t x220; uint8_t x221 = _addcarryx_u32(x218, x206, x208, &x220);
- { uint32_t x223; uint8_t x224 = _addcarryx_u32(x221, x209, x211, &x223);
- { uint32_t x226; uint8_t x227 = _addcarryx_u32(x224, x212, x214, &x226);
- { uint32_t x229; uint8_t _ = _addcarryx_u32(0x0, x227, x215, &x229);
- { uint32_t x232; uint8_t x233 = _addcarryx_u32(0x0, x186, x202, &x232);
- { uint32_t x235; uint8_t x236 = _addcarryx_u32(x233, x189, x217, &x235);
- { uint32_t x238; uint8_t x239 = _addcarryx_u32(x236, x192, x220, &x238);
- { uint32_t x241; uint8_t x242 = _addcarryx_u32(x239, x195, x223, &x241);
- { uint32_t x244; uint8_t x245 = _addcarryx_u32(x242, x198, x226, &x244);
- { uint32_t x247; uint8_t x248 = _addcarryx_u32(x245, x200, x229, &x247);
- { uint32_t _; uint32_t x250 = _mulx_u32(x232, 0xeeeeeeef, &_);
- { uint32_t x254; uint32_t x253 = _mulx_u32(x250, 0xfffffff1, &x254);
- { uint32_t x257; uint32_t x256 = _mulx_u32(x250, 0xffffffff, &x257);
- { uint32_t x260; uint32_t x259 = _mulx_u32(x250, 0xffffffff, &x260);
- { uint32_t x263; uint32_t x262 = _mulx_u32(x250, 0xffffffff, &x263);
- { uint32_t x266; uint32_t x265 = _mulx_u32(x250, 0x3fffffff, &x266);
- { uint32_t x268; uint8_t x269 = _addcarryx_u32(0x0, x254, x256, &x268);
- { uint32_t x271; uint8_t x272 = _addcarryx_u32(x269, x257, x259, &x271);
- { uint32_t x274; uint8_t x275 = _addcarryx_u32(x272, x260, x262, &x274);
- { uint32_t x277; uint8_t x278 = _addcarryx_u32(x275, x263, x265, &x277);
- { uint32_t x280; uint8_t _ = _addcarryx_u32(0x0, x278, x266, &x280);
- { uint32_t _; uint8_t x284 = _addcarryx_u32(0x0, x232, x253, &_);
- { uint32_t x286; uint8_t x287 = _addcarryx_u32(x284, x235, x268, &x286);
- { uint32_t x289; uint8_t x290 = _addcarryx_u32(x287, x238, x271, &x289);
- { uint32_t x292; uint8_t x293 = _addcarryx_u32(x290, x241, x274, &x292);
- { uint32_t x295; uint8_t x296 = _addcarryx_u32(x293, x244, x277, &x295);
- { uint32_t x298; uint8_t x299 = _addcarryx_u32(x296, x247, x280, &x298);
- { uint8_t x300 = (x299 + x248);
- { uint32_t x303; uint32_t x302 = _mulx_u32(x11, x13, &x303);
- { uint32_t x306; uint32_t x305 = _mulx_u32(x11, x15, &x306);
- { uint32_t x309; uint32_t x308 = _mulx_u32(x11, x17, &x309);
- { uint32_t x312; uint32_t x311 = _mulx_u32(x11, x19, &x312);
- { uint32_t x315; uint32_t x314 = _mulx_u32(x11, x18, &x315);
- { uint32_t x317; uint8_t x318 = _addcarryx_u32(0x0, x303, x305, &x317);
- { uint32_t x320; uint8_t x321 = _addcarryx_u32(x318, x306, x308, &x320);
- { uint32_t x323; uint8_t x324 = _addcarryx_u32(x321, x309, x311, &x323);
- { uint32_t x326; uint8_t x327 = _addcarryx_u32(x324, x312, x314, &x326);
- { uint32_t x329; uint8_t _ = _addcarryx_u32(0x0, x327, x315, &x329);
- { uint32_t x332; uint8_t x333 = _addcarryx_u32(0x0, x286, x302, &x332);
- { uint32_t x335; uint8_t x336 = _addcarryx_u32(x333, x289, x317, &x335);
- { uint32_t x338; uint8_t x339 = _addcarryx_u32(x336, x292, x320, &x338);
- { uint32_t x341; uint8_t x342 = _addcarryx_u32(x339, x295, x323, &x341);
- { uint32_t x344; uint8_t x345 = _addcarryx_u32(x342, x298, x326, &x344);
- { uint32_t x347; uint8_t x348 = _addcarryx_u32(x345, x300, x329, &x347);
- { uint32_t _; uint32_t x350 = _mulx_u32(x332, 0xeeeeeeef, &_);
- { uint32_t x354; uint32_t x353 = _mulx_u32(x350, 0xfffffff1, &x354);
- { uint32_t x357; uint32_t x356 = _mulx_u32(x350, 0xffffffff, &x357);
- { uint32_t x360; uint32_t x359 = _mulx_u32(x350, 0xffffffff, &x360);
- { uint32_t x363; uint32_t x362 = _mulx_u32(x350, 0xffffffff, &x363);
- { uint32_t x366; uint32_t x365 = _mulx_u32(x350, 0x3fffffff, &x366);
- { uint32_t x368; uint8_t x369 = _addcarryx_u32(0x0, x354, x356, &x368);
- { uint32_t x371; uint8_t x372 = _addcarryx_u32(x369, x357, x359, &x371);
- { uint32_t x374; uint8_t x375 = _addcarryx_u32(x372, x360, x362, &x374);
- { uint32_t x377; uint8_t x378 = _addcarryx_u32(x375, x363, x365, &x377);
- { uint32_t x380; uint8_t _ = _addcarryx_u32(0x0, x378, x366, &x380);
- { uint32_t _; uint8_t x384 = _addcarryx_u32(0x0, x332, x353, &_);
- { uint32_t x386; uint8_t x387 = _addcarryx_u32(x384, x335, x368, &x386);
- { uint32_t x389; uint8_t x390 = _addcarryx_u32(x387, x338, x371, &x389);
- { uint32_t x392; uint8_t x393 = _addcarryx_u32(x390, x341, x374, &x392);
- { uint32_t x395; uint8_t x396 = _addcarryx_u32(x393, x344, x377, &x395);
- { uint32_t x398; uint8_t x399 = _addcarryx_u32(x396, x347, x380, &x398);
- { uint8_t x400 = (x399 + x348);
- { uint32_t x403; uint32_t x402 = _mulx_u32(x10, x13, &x403);
- { uint32_t x406; uint32_t x405 = _mulx_u32(x10, x15, &x406);
- { uint32_t x409; uint32_t x408 = _mulx_u32(x10, x17, &x409);
- { uint32_t x412; uint32_t x411 = _mulx_u32(x10, x19, &x412);
- { uint32_t x415; uint32_t x414 = _mulx_u32(x10, x18, &x415);
- { uint32_t x417; uint8_t x418 = _addcarryx_u32(0x0, x403, x405, &x417);
- { uint32_t x420; uint8_t x421 = _addcarryx_u32(x418, x406, x408, &x420);
- { uint32_t x423; uint8_t x424 = _addcarryx_u32(x421, x409, x411, &x423);
- { uint32_t x426; uint8_t x427 = _addcarryx_u32(x424, x412, x414, &x426);
- { uint32_t x429; uint8_t _ = _addcarryx_u32(0x0, x427, x415, &x429);
- { uint32_t x432; uint8_t x433 = _addcarryx_u32(0x0, x386, x402, &x432);
- { uint32_t x435; uint8_t x436 = _addcarryx_u32(x433, x389, x417, &x435);
- { uint32_t x438; uint8_t x439 = _addcarryx_u32(x436, x392, x420, &x438);
- { uint32_t x441; uint8_t x442 = _addcarryx_u32(x439, x395, x423, &x441);
- { uint32_t x444; uint8_t x445 = _addcarryx_u32(x442, x398, x426, &x444);
- { uint32_t x447; uint8_t x448 = _addcarryx_u32(x445, x400, x429, &x447);
- { uint32_t _; uint32_t x450 = _mulx_u32(x432, 0xeeeeeeef, &_);
- { uint32_t x454; uint32_t x453 = _mulx_u32(x450, 0xfffffff1, &x454);
- { uint32_t x457; uint32_t x456 = _mulx_u32(x450, 0xffffffff, &x457);
- { uint32_t x460; uint32_t x459 = _mulx_u32(x450, 0xffffffff, &x460);
- { uint32_t x463; uint32_t x462 = _mulx_u32(x450, 0xffffffff, &x463);
- { uint32_t x466; uint32_t x465 = _mulx_u32(x450, 0x3fffffff, &x466);
- { uint32_t x468; uint8_t x469 = _addcarryx_u32(0x0, x454, x456, &x468);
- { uint32_t x471; uint8_t x472 = _addcarryx_u32(x469, x457, x459, &x471);
- { uint32_t x474; uint8_t x475 = _addcarryx_u32(x472, x460, x462, &x474);
- { uint32_t x477; uint8_t x478 = _addcarryx_u32(x475, x463, x465, &x477);
- { uint32_t x480; uint8_t _ = _addcarryx_u32(0x0, x478, x466, &x480);
- { uint32_t _; uint8_t x484 = _addcarryx_u32(0x0, x432, x453, &_);
- { uint32_t x486; uint8_t x487 = _addcarryx_u32(x484, x435, x468, &x486);
- { uint32_t x489; uint8_t x490 = _addcarryx_u32(x487, x438, x471, &x489);
- { uint32_t x492; uint8_t x493 = _addcarryx_u32(x490, x441, x474, &x492);
- { uint32_t x495; uint8_t x496 = _addcarryx_u32(x493, x444, x477, &x495);
- { uint32_t x498; uint8_t x499 = _addcarryx_u32(x496, x447, x480, &x498);
- { uint8_t x500 = (x499 + x448);
- { uint32_t x502; uint8_t x503 = _subborrow_u32(0x0, x486, 0xfffffff1, &x502);
- { uint32_t x505; uint8_t x506 = _subborrow_u32(x503, x489, 0xffffffff, &x505);
- { uint32_t x508; uint8_t x509 = _subborrow_u32(x506, x492, 0xffffffff, &x508);
- { uint32_t x511; uint8_t x512 = _subborrow_u32(x509, x495, 0xffffffff, &x511);
- { uint32_t x514; uint8_t x515 = _subborrow_u32(x512, x498, 0x3fffffff, &x514);
- { uint32_t _; uint8_t x518 = _subborrow_u32(x515, x500, 0x0, &_);
- { uint32_t x519 = cmovznz32(x518, x514, x498);
- { uint32_t x520 = cmovznz32(x518, x511, x495);
- { uint32_t x521 = cmovznz32(x518, x508, x492);
- { uint32_t x522 = cmovznz32(x518, x505, x489);
- { uint32_t x523 = cmovznz32(x518, x502, x486);
- out[0] = x523;
- out[1] = x522;
- out[2] = x521;
- out[3] = x520;
- out[4] = x519;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e158m15_5limbs/femul.v b/src/Specific/montgomery32_2e158m15_5limbs/femul.v
deleted file mode 100644
index 7177cebc0..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e158m15_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e158m15_5limbs/femulDisplay.log b/src/Specific/montgomery32_2e158m15_5limbs/femulDisplay.log
deleted file mode 100644
index f849fb9b8..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,181 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint32_t x22 = mulx_u32(x5, x13);
- uint32_t x24, uint32_t x25 = mulx_u32(x5, x15);
- uint32_t x27, uint32_t x28 = mulx_u32(x5, x17);
- uint32_t x30, uint32_t x31 = mulx_u32(x5, x19);
- uint32_t x33, uint32_t x34 = mulx_u32(x5, x18);
- uint32_t x36, uint8_t x37 = addcarryx_u32(0x0, x22, x24);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x37, x25, x27);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x40, x28, x30);
- uint32_t x45, uint8_t x46 = addcarryx_u32(x43, x31, x33);
- uint32_t x48, uint8_t _ = addcarryx_u32(0x0, x46, x34);
- uint32_t x51, uint32_t _ = mulx_u32(x21, 0xeeeeeeef);
- uint32_t x54, uint32_t x55 = mulx_u32(x51, 0xfffffff1);
- uint32_t x57, uint32_t x58 = mulx_u32(x51, 0xffffffff);
- uint32_t x60, uint32_t x61 = mulx_u32(x51, 0xffffffff);
- uint32_t x63, uint32_t x64 = mulx_u32(x51, 0xffffffff);
- uint32_t x66, uint32_t x67 = mulx_u32(x51, 0x3fffffff);
- uint32_t x69, uint8_t x70 = addcarryx_u32(0x0, x55, x57);
- uint32_t x72, uint8_t x73 = addcarryx_u32(x70, x58, x60);
- uint32_t x75, uint8_t x76 = addcarryx_u32(x73, x61, x63);
- uint32_t x78, uint8_t x79 = addcarryx_u32(x76, x64, x66);
- uint32_t x81, uint8_t _ = addcarryx_u32(0x0, x79, x67);
- uint32_t _, uint8_t x85 = addcarryx_u32(0x0, x21, x54);
- uint32_t x87, uint8_t x88 = addcarryx_u32(x85, x36, x69);
- uint32_t x90, uint8_t x91 = addcarryx_u32(x88, x39, x72);
- uint32_t x93, uint8_t x94 = addcarryx_u32(x91, x42, x75);
- uint32_t x96, uint8_t x97 = addcarryx_u32(x94, x45, x78);
- uint32_t x99, uint8_t x100 = addcarryx_u32(x97, x48, x81);
- uint32_t x102, uint32_t x103 = mulx_u32(x7, x13);
- uint32_t x105, uint32_t x106 = mulx_u32(x7, x15);
- uint32_t x108, uint32_t x109 = mulx_u32(x7, x17);
- uint32_t x111, uint32_t x112 = mulx_u32(x7, x19);
- uint32_t x114, uint32_t x115 = mulx_u32(x7, x18);
- uint32_t x117, uint8_t x118 = addcarryx_u32(0x0, x103, x105);
- uint32_t x120, uint8_t x121 = addcarryx_u32(x118, x106, x108);
- uint32_t x123, uint8_t x124 = addcarryx_u32(x121, x109, x111);
- uint32_t x126, uint8_t x127 = addcarryx_u32(x124, x112, x114);
- uint32_t x129, uint8_t _ = addcarryx_u32(0x0, x127, x115);
- uint32_t x132, uint8_t x133 = addcarryx_u32(0x0, x87, x102);
- uint32_t x135, uint8_t x136 = addcarryx_u32(x133, x90, x117);
- uint32_t x138, uint8_t x139 = addcarryx_u32(x136, x93, x120);
- uint32_t x141, uint8_t x142 = addcarryx_u32(x139, x96, x123);
- uint32_t x144, uint8_t x145 = addcarryx_u32(x142, x99, x126);
- uint32_t x147, uint8_t x148 = addcarryx_u32(x145, x100, x129);
- uint32_t x150, uint32_t _ = mulx_u32(x132, 0xeeeeeeef);
- uint32_t x153, uint32_t x154 = mulx_u32(x150, 0xfffffff1);
- uint32_t x156, uint32_t x157 = mulx_u32(x150, 0xffffffff);
- uint32_t x159, uint32_t x160 = mulx_u32(x150, 0xffffffff);
- uint32_t x162, uint32_t x163 = mulx_u32(x150, 0xffffffff);
- uint32_t x165, uint32_t x166 = mulx_u32(x150, 0x3fffffff);
- uint32_t x168, uint8_t x169 = addcarryx_u32(0x0, x154, x156);
- uint32_t x171, uint8_t x172 = addcarryx_u32(x169, x157, x159);
- uint32_t x174, uint8_t x175 = addcarryx_u32(x172, x160, x162);
- uint32_t x177, uint8_t x178 = addcarryx_u32(x175, x163, x165);
- uint32_t x180, uint8_t _ = addcarryx_u32(0x0, x178, x166);
- uint32_t _, uint8_t x184 = addcarryx_u32(0x0, x132, x153);
- uint32_t x186, uint8_t x187 = addcarryx_u32(x184, x135, x168);
- uint32_t x189, uint8_t x190 = addcarryx_u32(x187, x138, x171);
- uint32_t x192, uint8_t x193 = addcarryx_u32(x190, x141, x174);
- uint32_t x195, uint8_t x196 = addcarryx_u32(x193, x144, x177);
- uint32_t x198, uint8_t x199 = addcarryx_u32(x196, x147, x180);
- uint8_t x200 = (x199 + x148);
- uint32_t x202, uint32_t x203 = mulx_u32(x9, x13);
- uint32_t x205, uint32_t x206 = mulx_u32(x9, x15);
- uint32_t x208, uint32_t x209 = mulx_u32(x9, x17);
- uint32_t x211, uint32_t x212 = mulx_u32(x9, x19);
- uint32_t x214, uint32_t x215 = mulx_u32(x9, x18);
- uint32_t x217, uint8_t x218 = addcarryx_u32(0x0, x203, x205);
- uint32_t x220, uint8_t x221 = addcarryx_u32(x218, x206, x208);
- uint32_t x223, uint8_t x224 = addcarryx_u32(x221, x209, x211);
- uint32_t x226, uint8_t x227 = addcarryx_u32(x224, x212, x214);
- uint32_t x229, uint8_t _ = addcarryx_u32(0x0, x227, x215);
- uint32_t x232, uint8_t x233 = addcarryx_u32(0x0, x186, x202);
- uint32_t x235, uint8_t x236 = addcarryx_u32(x233, x189, x217);
- uint32_t x238, uint8_t x239 = addcarryx_u32(x236, x192, x220);
- uint32_t x241, uint8_t x242 = addcarryx_u32(x239, x195, x223);
- uint32_t x244, uint8_t x245 = addcarryx_u32(x242, x198, x226);
- uint32_t x247, uint8_t x248 = addcarryx_u32(x245, x200, x229);
- uint32_t x250, uint32_t _ = mulx_u32(x232, 0xeeeeeeef);
- uint32_t x253, uint32_t x254 = mulx_u32(x250, 0xfffffff1);
- uint32_t x256, uint32_t x257 = mulx_u32(x250, 0xffffffff);
- uint32_t x259, uint32_t x260 = mulx_u32(x250, 0xffffffff);
- uint32_t x262, uint32_t x263 = mulx_u32(x250, 0xffffffff);
- uint32_t x265, uint32_t x266 = mulx_u32(x250, 0x3fffffff);
- uint32_t x268, uint8_t x269 = addcarryx_u32(0x0, x254, x256);
- uint32_t x271, uint8_t x272 = addcarryx_u32(x269, x257, x259);
- uint32_t x274, uint8_t x275 = addcarryx_u32(x272, x260, x262);
- uint32_t x277, uint8_t x278 = addcarryx_u32(x275, x263, x265);
- uint32_t x280, uint8_t _ = addcarryx_u32(0x0, x278, x266);
- uint32_t _, uint8_t x284 = addcarryx_u32(0x0, x232, x253);
- uint32_t x286, uint8_t x287 = addcarryx_u32(x284, x235, x268);
- uint32_t x289, uint8_t x290 = addcarryx_u32(x287, x238, x271);
- uint32_t x292, uint8_t x293 = addcarryx_u32(x290, x241, x274);
- uint32_t x295, uint8_t x296 = addcarryx_u32(x293, x244, x277);
- uint32_t x298, uint8_t x299 = addcarryx_u32(x296, x247, x280);
- uint8_t x300 = (x299 + x248);
- uint32_t x302, uint32_t x303 = mulx_u32(x11, x13);
- uint32_t x305, uint32_t x306 = mulx_u32(x11, x15);
- uint32_t x308, uint32_t x309 = mulx_u32(x11, x17);
- uint32_t x311, uint32_t x312 = mulx_u32(x11, x19);
- uint32_t x314, uint32_t x315 = mulx_u32(x11, x18);
- uint32_t x317, uint8_t x318 = addcarryx_u32(0x0, x303, x305);
- uint32_t x320, uint8_t x321 = addcarryx_u32(x318, x306, x308);
- uint32_t x323, uint8_t x324 = addcarryx_u32(x321, x309, x311);
- uint32_t x326, uint8_t x327 = addcarryx_u32(x324, x312, x314);
- uint32_t x329, uint8_t _ = addcarryx_u32(0x0, x327, x315);
- uint32_t x332, uint8_t x333 = addcarryx_u32(0x0, x286, x302);
- uint32_t x335, uint8_t x336 = addcarryx_u32(x333, x289, x317);
- uint32_t x338, uint8_t x339 = addcarryx_u32(x336, x292, x320);
- uint32_t x341, uint8_t x342 = addcarryx_u32(x339, x295, x323);
- uint32_t x344, uint8_t x345 = addcarryx_u32(x342, x298, x326);
- uint32_t x347, uint8_t x348 = addcarryx_u32(x345, x300, x329);
- uint32_t x350, uint32_t _ = mulx_u32(x332, 0xeeeeeeef);
- uint32_t x353, uint32_t x354 = mulx_u32(x350, 0xfffffff1);
- uint32_t x356, uint32_t x357 = mulx_u32(x350, 0xffffffff);
- uint32_t x359, uint32_t x360 = mulx_u32(x350, 0xffffffff);
- uint32_t x362, uint32_t x363 = mulx_u32(x350, 0xffffffff);
- uint32_t x365, uint32_t x366 = mulx_u32(x350, 0x3fffffff);
- uint32_t x368, uint8_t x369 = addcarryx_u32(0x0, x354, x356);
- uint32_t x371, uint8_t x372 = addcarryx_u32(x369, x357, x359);
- uint32_t x374, uint8_t x375 = addcarryx_u32(x372, x360, x362);
- uint32_t x377, uint8_t x378 = addcarryx_u32(x375, x363, x365);
- uint32_t x380, uint8_t _ = addcarryx_u32(0x0, x378, x366);
- uint32_t _, uint8_t x384 = addcarryx_u32(0x0, x332, x353);
- uint32_t x386, uint8_t x387 = addcarryx_u32(x384, x335, x368);
- uint32_t x389, uint8_t x390 = addcarryx_u32(x387, x338, x371);
- uint32_t x392, uint8_t x393 = addcarryx_u32(x390, x341, x374);
- uint32_t x395, uint8_t x396 = addcarryx_u32(x393, x344, x377);
- uint32_t x398, uint8_t x399 = addcarryx_u32(x396, x347, x380);
- uint8_t x400 = (x399 + x348);
- uint32_t x402, uint32_t x403 = mulx_u32(x10, x13);
- uint32_t x405, uint32_t x406 = mulx_u32(x10, x15);
- uint32_t x408, uint32_t x409 = mulx_u32(x10, x17);
- uint32_t x411, uint32_t x412 = mulx_u32(x10, x19);
- uint32_t x414, uint32_t x415 = mulx_u32(x10, x18);
- uint32_t x417, uint8_t x418 = addcarryx_u32(0x0, x403, x405);
- uint32_t x420, uint8_t x421 = addcarryx_u32(x418, x406, x408);
- uint32_t x423, uint8_t x424 = addcarryx_u32(x421, x409, x411);
- uint32_t x426, uint8_t x427 = addcarryx_u32(x424, x412, x414);
- uint32_t x429, uint8_t _ = addcarryx_u32(0x0, x427, x415);
- uint32_t x432, uint8_t x433 = addcarryx_u32(0x0, x386, x402);
- uint32_t x435, uint8_t x436 = addcarryx_u32(x433, x389, x417);
- uint32_t x438, uint8_t x439 = addcarryx_u32(x436, x392, x420);
- uint32_t x441, uint8_t x442 = addcarryx_u32(x439, x395, x423);
- uint32_t x444, uint8_t x445 = addcarryx_u32(x442, x398, x426);
- uint32_t x447, uint8_t x448 = addcarryx_u32(x445, x400, x429);
- uint32_t x450, uint32_t _ = mulx_u32(x432, 0xeeeeeeef);
- uint32_t x453, uint32_t x454 = mulx_u32(x450, 0xfffffff1);
- uint32_t x456, uint32_t x457 = mulx_u32(x450, 0xffffffff);
- uint32_t x459, uint32_t x460 = mulx_u32(x450, 0xffffffff);
- uint32_t x462, uint32_t x463 = mulx_u32(x450, 0xffffffff);
- uint32_t x465, uint32_t x466 = mulx_u32(x450, 0x3fffffff);
- uint32_t x468, uint8_t x469 = addcarryx_u32(0x0, x454, x456);
- uint32_t x471, uint8_t x472 = addcarryx_u32(x469, x457, x459);
- uint32_t x474, uint8_t x475 = addcarryx_u32(x472, x460, x462);
- uint32_t x477, uint8_t x478 = addcarryx_u32(x475, x463, x465);
- uint32_t x480, uint8_t _ = addcarryx_u32(0x0, x478, x466);
- uint32_t _, uint8_t x484 = addcarryx_u32(0x0, x432, x453);
- uint32_t x486, uint8_t x487 = addcarryx_u32(x484, x435, x468);
- uint32_t x489, uint8_t x490 = addcarryx_u32(x487, x438, x471);
- uint32_t x492, uint8_t x493 = addcarryx_u32(x490, x441, x474);
- uint32_t x495, uint8_t x496 = addcarryx_u32(x493, x444, x477);
- uint32_t x498, uint8_t x499 = addcarryx_u32(x496, x447, x480);
- uint8_t x500 = (x499 + x448);
- uint32_t x502, uint8_t x503 = subborrow_u32(0x0, x486, 0xfffffff1);
- uint32_t x505, uint8_t x506 = subborrow_u32(x503, x489, 0xffffffff);
- uint32_t x508, uint8_t x509 = subborrow_u32(x506, x492, 0xffffffff);
- uint32_t x511, uint8_t x512 = subborrow_u32(x509, x495, 0xffffffff);
- uint32_t x514, uint8_t x515 = subborrow_u32(x512, x498, 0x3fffffff);
- uint32_t _, uint8_t x518 = subborrow_u32(x515, x500, 0x0);
- uint32_t x519 = cmovznz32(x518, x514, x498);
- uint32_t x520 = cmovznz32(x518, x511, x495);
- uint32_t x521 = cmovznz32(x518, x508, x492);
- uint32_t x522 = cmovznz32(x518, x505, x489);
- uint32_t x523 = cmovznz32(x518, x502, x486);
- return (x519, x520, x521, x522, x523))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e158m15_5limbs/femulDisplay.v b/src/Specific/montgomery32_2e158m15_5limbs/femulDisplay.v
deleted file mode 100644
index ef3d630a8..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e158m15_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e158m15_5limbs/fenz.c b/src/Specific/montgomery32_2e158m15_5limbs/fenz.c
deleted file mode 100644
index 5601e8c15..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/fenz.c
+++ /dev/null
@@ -1,13 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x9 = (x8 | x7);
- { uint32_t x10 = (x6 | x9);
- { uint32_t x11 = (x4 | x10);
- { uint32_t x12 = (x2 | x11);
- out[0] = x12;
- }}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e158m15_5limbs/fenz.v b/src/Specific/montgomery32_2e158m15_5limbs/fenz.v
deleted file mode 100644
index b4645e2ad..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e158m15_5limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e158m15_5limbs/fenzDisplay.log b/src/Specific/montgomery32_2e158m15_5limbs/fenzDisplay.log
deleted file mode 100644
index 723d13164..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/fenzDisplay.log
+++ /dev/null
@@ -1,11 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint32_t x9 = (x8 | x7);
- uint32_t x10 = (x6 | x9);
- uint32_t x11 = (x4 | x10);
- uint32_t x12 = (x2 | x11);
- return x12)
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e158m15_5limbs/fenzDisplay.v b/src/Specific/montgomery32_2e158m15_5limbs/fenzDisplay.v
deleted file mode 100644
index 8bd92bb79..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e158m15_5limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e158m15_5limbs/feopp.c b/src/Specific/montgomery32_2e158m15_5limbs/feopp.c
deleted file mode 100644
index 3f4e5751a..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/feopp.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void feopp(uint32_t out[5], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x10; uint8_t x11 = _subborrow_u32(0x0, 0x0, x2, &x10);
- { uint32_t x13; uint8_t x14 = _subborrow_u32(x11, 0x0, x4, &x13);
- { uint32_t x16; uint8_t x17 = _subborrow_u32(x14, 0x0, x6, &x16);
- { uint32_t x19; uint8_t x20 = _subborrow_u32(x17, 0x0, x8, &x19);
- { uint32_t x22; uint8_t x23 = _subborrow_u32(x20, 0x0, x7, &x22);
- { uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- { uint32_t x25 = (x24 & 0xfffffff1);
- { uint32_t x27; uint8_t x28 = _addcarryx_u32(0x0, x10, x25, &x27);
- { uint32_t x29 = (x24 & 0xffffffff);
- { uint32_t x31; uint8_t x32 = _addcarryx_u32(x28, x13, x29, &x31);
- { uint32_t x33 = (x24 & 0xffffffff);
- { uint32_t x35; uint8_t x36 = _addcarryx_u32(x32, x16, x33, &x35);
- { uint32_t x37 = (x24 & 0xffffffff);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x36, x19, x37, &x39);
- { uint32_t x41 = (x24 & 0x3fffffff);
- { uint32_t x43; uint8_t _ = _addcarryx_u32(x40, x22, x41, &x43);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e158m15_5limbs/feopp.v b/src/Specific/montgomery32_2e158m15_5limbs/feopp.v
deleted file mode 100644
index 51d6f09e7..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e158m15_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e158m15_5limbs/feoppDisplay.log b/src/Specific/montgomery32_2e158m15_5limbs/feoppDisplay.log
deleted file mode 100644
index 2697f64f6..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/feoppDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint32_t x10, uint8_t x11 = subborrow_u32(0x0, 0x0, x2);
- uint32_t x13, uint8_t x14 = subborrow_u32(x11, 0x0, x4);
- uint32_t x16, uint8_t x17 = subborrow_u32(x14, 0x0, x6);
- uint32_t x19, uint8_t x20 = subborrow_u32(x17, 0x0, x8);
- uint32_t x22, uint8_t x23 = subborrow_u32(x20, 0x0, x7);
- uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- uint32_t x25 = (x24 & 0xfffffff1);
- uint32_t x27, uint8_t x28 = addcarryx_u32(0x0, x10, x25);
- uint32_t x29 = (x24 & 0xffffffff);
- uint32_t x31, uint8_t x32 = addcarryx_u32(x28, x13, x29);
- uint32_t x33 = (x24 & 0xffffffff);
- uint32_t x35, uint8_t x36 = addcarryx_u32(x32, x16, x33);
- uint32_t x37 = (x24 & 0xffffffff);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x36, x19, x37);
- uint32_t x41 = (x24 & 0x3fffffff);
- uint32_t x43, uint8_t _ = addcarryx_u32(x40, x22, x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e158m15_5limbs/feoppDisplay.v b/src/Specific/montgomery32_2e158m15_5limbs/feoppDisplay.v
deleted file mode 100644
index 3a9db7f14..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e158m15_5limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e158m15_5limbs/fesquare.c b/src/Specific/montgomery32_2e158m15_5limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e158m15_5limbs/fesub.c b/src/Specific/montgomery32_2e158m15_5limbs/fesub.c
deleted file mode 100644
index 454b73e85..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/fesub.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void fesub(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint32_t x21; uint8_t x22 = _subborrow_u32(0x0, x5, x13, &x21);
- { uint32_t x24; uint8_t x25 = _subborrow_u32(x22, x7, x15, &x24);
- { uint32_t x27; uint8_t x28 = _subborrow_u32(x25, x9, x17, &x27);
- { uint32_t x30; uint8_t x31 = _subborrow_u32(x28, x11, x19, &x30);
- { uint32_t x33; uint8_t x34 = _subborrow_u32(x31, x10, x18, &x33);
- { uint32_t x35 = cmovznz32(x34, 0x0, 0xffffffff);
- { uint32_t x36 = (x35 & 0xfffffff1);
- { uint32_t x38; uint8_t x39 = _addcarryx_u32(0x0, x21, x36, &x38);
- { uint32_t x40 = (x35 & 0xffffffff);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x39, x24, x40, &x42);
- { uint32_t x44 = (x35 & 0xffffffff);
- { uint32_t x46; uint8_t x47 = _addcarryx_u32(x43, x27, x44, &x46);
- { uint32_t x48 = (x35 & 0xffffffff);
- { uint32_t x50; uint8_t x51 = _addcarryx_u32(x47, x30, x48, &x50);
- { uint32_t x52 = (x35 & 0x3fffffff);
- { uint32_t x54; uint8_t _ = _addcarryx_u32(x51, x33, x52, &x54);
- out[0] = x38;
- out[1] = x42;
- out[2] = x46;
- out[3] = x50;
- out[4] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e158m15_5limbs/fesub.v b/src/Specific/montgomery32_2e158m15_5limbs/fesub.v
deleted file mode 100644
index f3256c90a..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e158m15_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e158m15_5limbs/fesubDisplay.log b/src/Specific/montgomery32_2e158m15_5limbs/fesubDisplay.log
deleted file mode 100644
index feebc0497..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint32_t x21, uint8_t x22 = subborrow_u32(0x0, x5, x13);
- uint32_t x24, uint8_t x25 = subborrow_u32(x22, x7, x15);
- uint32_t x27, uint8_t x28 = subborrow_u32(x25, x9, x17);
- uint32_t x30, uint8_t x31 = subborrow_u32(x28, x11, x19);
- uint32_t x33, uint8_t x34 = subborrow_u32(x31, x10, x18);
- uint32_t x35 = cmovznz32(x34, 0x0, 0xffffffff);
- uint32_t x36 = (x35 & 0xfffffff1);
- uint32_t x38, uint8_t x39 = addcarryx_u32(0x0, x21, x36);
- uint32_t x40 = (x35 & 0xffffffff);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x39, x24, x40);
- uint32_t x44 = (x35 & 0xffffffff);
- uint32_t x46, uint8_t x47 = addcarryx_u32(x43, x27, x44);
- uint32_t x48 = (x35 & 0xffffffff);
- uint32_t x50, uint8_t x51 = addcarryx_u32(x47, x30, x48);
- uint32_t x52 = (x35 & 0x3fffffff);
- uint32_t x54, uint8_t _ = addcarryx_u32(x51, x33, x52);
- (Return x54, Return x50, Return x46, Return x42, Return x38))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e158m15_5limbs/fesubDisplay.v b/src/Specific/montgomery32_2e158m15_5limbs/fesubDisplay.v
deleted file mode 100644
index 4b77e7106..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e158m15_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e158m15_5limbs/py_interpreter.sh b/src/Specific/montgomery32_2e158m15_5limbs/py_interpreter.sh
deleted file mode 100755
index 5ea532959..000000000
--- a/src/Specific/montgomery32_2e158m15_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**158 - 15' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e165m25_6limbs/CurveParameters.v b/src/Specific/montgomery32_2e165m25_6limbs/CurveParameters.v
deleted file mode 100644
index 8d3c00d6d..000000000
--- a/src/Specific/montgomery32_2e165m25_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^165 - 25
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 32;
- bitwidth := 32;
- s := 2^165;
- c := [(1, 25)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e165m25_6limbs/Synthesis.v b/src/Specific/montgomery32_2e165m25_6limbs/Synthesis.v
deleted file mode 100644
index 495851996..000000000
--- a/src/Specific/montgomery32_2e165m25_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e165m25_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/montgomery32_2e165m25_6limbs/compiler.sh b/src/Specific/montgomery32_2e165m25_6limbs/compiler.sh
deleted file mode 100755
index 9cc797273..000000000
--- a/src/Specific/montgomery32_2e165m25_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,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<165) - 25' "$@"
diff --git a/src/Specific/montgomery32_2e165m25_6limbs/compilerxx.sh b/src/Specific/montgomery32_2e165m25_6limbs/compilerxx.sh
deleted file mode 100755
index 9fea32f85..000000000
--- a/src/Specific/montgomery32_2e165m25_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,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<165) - 25' "$@"
diff --git a/src/Specific/montgomery32_2e165m25_6limbs/feadd.c b/src/Specific/montgomery32_2e165m25_6limbs/feadd.c
deleted file mode 100644
index e05f2ca1b..000000000
--- a/src/Specific/montgomery32_2e165m25_6limbs/feadd.c
+++ /dev/null
@@ -1,40 +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];
- { uint32_t x25; uint8_t x26 = _addcarryx_u32(0x0, x5, x15, &x25);
- { uint32_t x28; uint8_t x29 = _addcarryx_u32(x26, x7, x17, &x28);
- { uint32_t x31; uint8_t x32 = _addcarryx_u32(x29, x9, x19, &x31);
- { uint32_t x34; uint8_t x35 = _addcarryx_u32(x32, x11, x21, &x34);
- { uint32_t x37; uint8_t x38 = _addcarryx_u32(x35, x13, x23, &x37);
- { uint32_t x40; uint8_t x41 = _addcarryx_u32(x38, x12, x22, &x40);
- { uint32_t x43; uint8_t x44 = _subborrow_u32(0x0, x25, 0xffffffe7, &x43);
- { uint32_t x46; uint8_t x47 = _subborrow_u32(x44, x28, 0xffffffff, &x46);
- { uint32_t x49; uint8_t x50 = _subborrow_u32(x47, x31, 0xffffffff, &x49);
- { uint32_t x52; uint8_t x53 = _subborrow_u32(x50, x34, 0xffffffff, &x52);
- { uint32_t x55; uint8_t x56 = _subborrow_u32(x53, x37, 0xffffffff, &x55);
- { uint32_t x58; uint8_t x59 = _subborrow_u32(x56, x40, 0x1f, &x58);
- { uint32_t _; uint8_t x62 = _subborrow_u32(x59, x41, 0x0, &_);
- { uint32_t x63 = cmovznz32(x62, x58, x40);
- { uint32_t x64 = cmovznz32(x62, x55, x37);
- { uint32_t x65 = cmovznz32(x62, x52, x34);
- { uint32_t x66 = cmovznz32(x62, x49, x31);
- { uint32_t x67 = cmovznz32(x62, x46, x28);
- { uint32_t x68 = cmovznz32(x62, x43, x25);
- out[0] = x68;
- out[1] = x67;
- out[2] = x66;
- out[3] = x65;
- out[4] = x64;
- out[5] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e165m25_6limbs/feadd.v b/src/Specific/montgomery32_2e165m25_6limbs/feadd.v
deleted file mode 100644
index 14e23bcb3..000000000
--- a/src/Specific/montgomery32_2e165m25_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e165m25_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e165m25_6limbs/feaddDisplay.log b/src/Specific/montgomery32_2e165m25_6limbs/feaddDisplay.log
deleted file mode 100644
index 2d8233e99..000000000
--- a/src/Specific/montgomery32_2e165m25_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,26 +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,
- uint32_t x25, uint8_t x26 = addcarryx_u32(0x0, x5, x15);
- uint32_t x28, uint8_t x29 = addcarryx_u32(x26, x7, x17);
- uint32_t x31, uint8_t x32 = addcarryx_u32(x29, x9, x19);
- uint32_t x34, uint8_t x35 = addcarryx_u32(x32, x11, x21);
- uint32_t x37, uint8_t x38 = addcarryx_u32(x35, x13, x23);
- uint32_t x40, uint8_t x41 = addcarryx_u32(x38, x12, x22);
- uint32_t x43, uint8_t x44 = subborrow_u32(0x0, x25, 0xffffffe7);
- uint32_t x46, uint8_t x47 = subborrow_u32(x44, x28, 0xffffffff);
- uint32_t x49, uint8_t x50 = subborrow_u32(x47, x31, 0xffffffff);
- uint32_t x52, uint8_t x53 = subborrow_u32(x50, x34, 0xffffffff);
- uint32_t x55, uint8_t x56 = subborrow_u32(x53, x37, 0xffffffff);
- uint32_t x58, uint8_t x59 = subborrow_u32(x56, x40, 0x1f);
- uint32_t _, uint8_t x62 = subborrow_u32(x59, x41, 0x0);
- uint32_t x63 = cmovznz32(x62, x58, x40);
- uint32_t x64 = cmovznz32(x62, x55, x37);
- uint32_t x65 = cmovznz32(x62, x52, x34);
- uint32_t x66 = cmovznz32(x62, x49, x31);
- uint32_t x67 = cmovznz32(x62, x46, x28);
- uint32_t x68 = cmovznz32(x62, x43, x25);
- return (x63, x64, x65, x66, x67, x68))
-(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/montgomery32_2e165m25_6limbs/feaddDisplay.v b/src/Specific/montgomery32_2e165m25_6limbs/feaddDisplay.v
deleted file mode 100644
index 13548dd88..000000000
--- a/src/Specific/montgomery32_2e165m25_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e165m25_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e165m25_6limbs/femul.c b/src/Specific/montgomery32_2e165m25_6limbs/femul.c
deleted file mode 100644
index 42401356b..000000000
--- a/src/Specific/montgomery32_2e165m25_6limbs/femul.c
+++ /dev/null
@@ -1,266 +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];
- { uint32_t x26; uint32_t x25 = _mulx_u32(x5, x15, &x26);
- { uint32_t x29; uint32_t x28 = _mulx_u32(x5, x17, &x29);
- { uint32_t x32; uint32_t x31 = _mulx_u32(x5, x19, &x32);
- { uint32_t x35; uint32_t x34 = _mulx_u32(x5, x21, &x35);
- { uint32_t x38; uint32_t x37 = _mulx_u32(x5, x23, &x38);
- { uint32_t x41; uint32_t x40 = _mulx_u32(x5, x22, &x41);
- { uint32_t x43; uint8_t x44 = _addcarryx_u32(0x0, x26, x28, &x43);
- { uint32_t x46; uint8_t x47 = _addcarryx_u32(x44, x29, x31, &x46);
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(x47, x32, x34, &x49);
- { uint32_t x52; uint8_t x53 = _addcarryx_u32(x50, x35, x37, &x52);
- { uint32_t x55; uint8_t x56 = _addcarryx_u32(x53, x38, x40, &x55);
- { uint32_t x58; uint8_t _ = _addcarryx_u32(0x0, x56, x41, &x58);
- { uint32_t _; uint32_t x61 = _mulx_u32(x25, 0xc28f5c29, &_);
- { uint32_t x65; uint32_t x64 = _mulx_u32(x61, 0xffffffe7, &x65);
- { uint32_t x68; uint32_t x67 = _mulx_u32(x61, 0xffffffff, &x68);
- { uint32_t x71; uint32_t x70 = _mulx_u32(x61, 0xffffffff, &x71);
- { uint32_t x74; uint32_t x73 = _mulx_u32(x61, 0xffffffff, &x74);
- { uint32_t x77; uint32_t x76 = _mulx_u32(x61, 0xffffffff, &x77);
- { uint8_t x80; uint32_t x79 = _mulx_u32_out_u8(x61, 0x1f, &x80);
- { uint32_t x82; uint8_t x83 = _addcarryx_u32(0x0, x65, x67, &x82);
- { uint32_t x85; uint8_t x86 = _addcarryx_u32(x83, x68, x70, &x85);
- { uint32_t x88; uint8_t x89 = _addcarryx_u32(x86, x71, x73, &x88);
- { uint32_t x91; uint8_t x92 = _addcarryx_u32(x89, x74, x76, &x91);
- { uint32_t x94; uint8_t x95 = _addcarryx_u32(x92, x77, x79, &x94);
- { uint8_t x96 = (x95 + x80);
- { uint32_t _; uint8_t x99 = _addcarryx_u32(0x0, x25, x64, &_);
- { uint32_t x101; uint8_t x102 = _addcarryx_u32(x99, x43, x82, &x101);
- { uint32_t x104; uint8_t x105 = _addcarryx_u32(x102, x46, x85, &x104);
- { uint32_t x107; uint8_t x108 = _addcarryx_u32(x105, x49, x88, &x107);
- { uint32_t x110; uint8_t x111 = _addcarryx_u32(x108, x52, x91, &x110);
- { uint32_t x113; uint8_t x114 = _addcarryx_u32(x111, x55, x94, &x113);
- { uint32_t x116; uint8_t x117 = _addcarryx_u32(x114, x58, x96, &x116);
- { uint32_t x120; uint32_t x119 = _mulx_u32(x7, x15, &x120);
- { uint32_t x123; uint32_t x122 = _mulx_u32(x7, x17, &x123);
- { uint32_t x126; uint32_t x125 = _mulx_u32(x7, x19, &x126);
- { uint32_t x129; uint32_t x128 = _mulx_u32(x7, x21, &x129);
- { uint32_t x132; uint32_t x131 = _mulx_u32(x7, x23, &x132);
- { uint32_t x135; uint32_t x134 = _mulx_u32(x7, x22, &x135);
- { uint32_t x137; uint8_t x138 = _addcarryx_u32(0x0, x120, x122, &x137);
- { uint32_t x140; uint8_t x141 = _addcarryx_u32(x138, x123, x125, &x140);
- { uint32_t x143; uint8_t x144 = _addcarryx_u32(x141, x126, x128, &x143);
- { uint32_t x146; uint8_t x147 = _addcarryx_u32(x144, x129, x131, &x146);
- { uint32_t x149; uint8_t x150 = _addcarryx_u32(x147, x132, x134, &x149);
- { uint32_t x152; uint8_t _ = _addcarryx_u32(0x0, x150, x135, &x152);
- { uint32_t x155; uint8_t x156 = _addcarryx_u32(0x0, x101, x119, &x155);
- { uint32_t x158; uint8_t x159 = _addcarryx_u32(x156, x104, x137, &x158);
- { uint32_t x161; uint8_t x162 = _addcarryx_u32(x159, x107, x140, &x161);
- { uint32_t x164; uint8_t x165 = _addcarryx_u32(x162, x110, x143, &x164);
- { uint32_t x167; uint8_t x168 = _addcarryx_u32(x165, x113, x146, &x167);
- { uint32_t x170; uint8_t x171 = _addcarryx_u32(x168, x116, x149, &x170);
- { uint32_t x173; uint8_t x174 = _addcarryx_u32(x171, x117, x152, &x173);
- { uint32_t _; uint32_t x176 = _mulx_u32(x155, 0xc28f5c29, &_);
- { uint32_t x180; uint32_t x179 = _mulx_u32(x176, 0xffffffe7, &x180);
- { uint32_t x183; uint32_t x182 = _mulx_u32(x176, 0xffffffff, &x183);
- { uint32_t x186; uint32_t x185 = _mulx_u32(x176, 0xffffffff, &x186);
- { uint32_t x189; uint32_t x188 = _mulx_u32(x176, 0xffffffff, &x189);
- { uint32_t x192; uint32_t x191 = _mulx_u32(x176, 0xffffffff, &x192);
- { uint8_t x195; uint32_t x194 = _mulx_u32_out_u8(x176, 0x1f, &x195);
- { uint32_t x197; uint8_t x198 = _addcarryx_u32(0x0, x180, x182, &x197);
- { uint32_t x200; uint8_t x201 = _addcarryx_u32(x198, x183, x185, &x200);
- { uint32_t x203; uint8_t x204 = _addcarryx_u32(x201, x186, x188, &x203);
- { uint32_t x206; uint8_t x207 = _addcarryx_u32(x204, x189, x191, &x206);
- { uint32_t x209; uint8_t x210 = _addcarryx_u32(x207, x192, x194, &x209);
- { uint8_t x211 = (x210 + x195);
- { uint32_t _; uint8_t x214 = _addcarryx_u32(0x0, x155, x179, &_);
- { uint32_t x216; uint8_t x217 = _addcarryx_u32(x214, x158, x197, &x216);
- { uint32_t x219; uint8_t x220 = _addcarryx_u32(x217, x161, x200, &x219);
- { uint32_t x222; uint8_t x223 = _addcarryx_u32(x220, x164, x203, &x222);
- { uint32_t x225; uint8_t x226 = _addcarryx_u32(x223, x167, x206, &x225);
- { uint32_t x228; uint8_t x229 = _addcarryx_u32(x226, x170, x209, &x228);
- { uint32_t x231; uint8_t x232 = _addcarryx_u32(x229, x173, x211, &x231);
- { uint8_t x233 = (x232 + x174);
- { uint32_t x236; uint32_t x235 = _mulx_u32(x9, x15, &x236);
- { uint32_t x239; uint32_t x238 = _mulx_u32(x9, x17, &x239);
- { uint32_t x242; uint32_t x241 = _mulx_u32(x9, x19, &x242);
- { uint32_t x245; uint32_t x244 = _mulx_u32(x9, x21, &x245);
- { uint32_t x248; uint32_t x247 = _mulx_u32(x9, x23, &x248);
- { uint32_t x251; uint32_t x250 = _mulx_u32(x9, x22, &x251);
- { uint32_t x253; uint8_t x254 = _addcarryx_u32(0x0, x236, x238, &x253);
- { uint32_t x256; uint8_t x257 = _addcarryx_u32(x254, x239, x241, &x256);
- { uint32_t x259; uint8_t x260 = _addcarryx_u32(x257, x242, x244, &x259);
- { uint32_t x262; uint8_t x263 = _addcarryx_u32(x260, x245, x247, &x262);
- { uint32_t x265; uint8_t x266 = _addcarryx_u32(x263, x248, x250, &x265);
- { uint32_t x268; uint8_t _ = _addcarryx_u32(0x0, x266, x251, &x268);
- { uint32_t x271; uint8_t x272 = _addcarryx_u32(0x0, x216, x235, &x271);
- { uint32_t x274; uint8_t x275 = _addcarryx_u32(x272, x219, x253, &x274);
- { uint32_t x277; uint8_t x278 = _addcarryx_u32(x275, x222, x256, &x277);
- { uint32_t x280; uint8_t x281 = _addcarryx_u32(x278, x225, x259, &x280);
- { uint32_t x283; uint8_t x284 = _addcarryx_u32(x281, x228, x262, &x283);
- { uint32_t x286; uint8_t x287 = _addcarryx_u32(x284, x231, x265, &x286);
- { uint32_t x289; uint8_t x290 = _addcarryx_u32(x287, x233, x268, &x289);
- { uint32_t _; uint32_t x292 = _mulx_u32(x271, 0xc28f5c29, &_);
- { uint32_t x296; uint32_t x295 = _mulx_u32(x292, 0xffffffe7, &x296);
- { uint32_t x299; uint32_t x298 = _mulx_u32(x292, 0xffffffff, &x299);
- { uint32_t x302; uint32_t x301 = _mulx_u32(x292, 0xffffffff, &x302);
- { uint32_t x305; uint32_t x304 = _mulx_u32(x292, 0xffffffff, &x305);
- { uint32_t x308; uint32_t x307 = _mulx_u32(x292, 0xffffffff, &x308);
- { uint8_t x311; uint32_t x310 = _mulx_u32_out_u8(x292, 0x1f, &x311);
- { uint32_t x313; uint8_t x314 = _addcarryx_u32(0x0, x296, x298, &x313);
- { uint32_t x316; uint8_t x317 = _addcarryx_u32(x314, x299, x301, &x316);
- { uint32_t x319; uint8_t x320 = _addcarryx_u32(x317, x302, x304, &x319);
- { uint32_t x322; uint8_t x323 = _addcarryx_u32(x320, x305, x307, &x322);
- { uint32_t x325; uint8_t x326 = _addcarryx_u32(x323, x308, x310, &x325);
- { uint8_t x327 = (x326 + x311);
- { uint32_t _; uint8_t x330 = _addcarryx_u32(0x0, x271, x295, &_);
- { uint32_t x332; uint8_t x333 = _addcarryx_u32(x330, x274, x313, &x332);
- { uint32_t x335; uint8_t x336 = _addcarryx_u32(x333, x277, x316, &x335);
- { uint32_t x338; uint8_t x339 = _addcarryx_u32(x336, x280, x319, &x338);
- { uint32_t x341; uint8_t x342 = _addcarryx_u32(x339, x283, x322, &x341);
- { uint32_t x344; uint8_t x345 = _addcarryx_u32(x342, x286, x325, &x344);
- { uint32_t x347; uint8_t x348 = _addcarryx_u32(x345, x289, x327, &x347);
- { uint8_t x349 = (x348 + x290);
- { uint32_t x352; uint32_t x351 = _mulx_u32(x11, x15, &x352);
- { uint32_t x355; uint32_t x354 = _mulx_u32(x11, x17, &x355);
- { uint32_t x358; uint32_t x357 = _mulx_u32(x11, x19, &x358);
- { uint32_t x361; uint32_t x360 = _mulx_u32(x11, x21, &x361);
- { uint32_t x364; uint32_t x363 = _mulx_u32(x11, x23, &x364);
- { uint32_t x367; uint32_t x366 = _mulx_u32(x11, x22, &x367);
- { uint32_t x369; uint8_t x370 = _addcarryx_u32(0x0, x352, x354, &x369);
- { uint32_t x372; uint8_t x373 = _addcarryx_u32(x370, x355, x357, &x372);
- { uint32_t x375; uint8_t x376 = _addcarryx_u32(x373, x358, x360, &x375);
- { uint32_t x378; uint8_t x379 = _addcarryx_u32(x376, x361, x363, &x378);
- { uint32_t x381; uint8_t x382 = _addcarryx_u32(x379, x364, x366, &x381);
- { uint32_t x384; uint8_t _ = _addcarryx_u32(0x0, x382, x367, &x384);
- { uint32_t x387; uint8_t x388 = _addcarryx_u32(0x0, x332, x351, &x387);
- { uint32_t x390; uint8_t x391 = _addcarryx_u32(x388, x335, x369, &x390);
- { uint32_t x393; uint8_t x394 = _addcarryx_u32(x391, x338, x372, &x393);
- { uint32_t x396; uint8_t x397 = _addcarryx_u32(x394, x341, x375, &x396);
- { uint32_t x399; uint8_t x400 = _addcarryx_u32(x397, x344, x378, &x399);
- { uint32_t x402; uint8_t x403 = _addcarryx_u32(x400, x347, x381, &x402);
- { uint32_t x405; uint8_t x406 = _addcarryx_u32(x403, x349, x384, &x405);
- { uint32_t _; uint32_t x408 = _mulx_u32(x387, 0xc28f5c29, &_);
- { uint32_t x412; uint32_t x411 = _mulx_u32(x408, 0xffffffe7, &x412);
- { uint32_t x415; uint32_t x414 = _mulx_u32(x408, 0xffffffff, &x415);
- { uint32_t x418; uint32_t x417 = _mulx_u32(x408, 0xffffffff, &x418);
- { uint32_t x421; uint32_t x420 = _mulx_u32(x408, 0xffffffff, &x421);
- { uint32_t x424; uint32_t x423 = _mulx_u32(x408, 0xffffffff, &x424);
- { uint8_t x427; uint32_t x426 = _mulx_u32_out_u8(x408, 0x1f, &x427);
- { uint32_t x429; uint8_t x430 = _addcarryx_u32(0x0, x412, x414, &x429);
- { uint32_t x432; uint8_t x433 = _addcarryx_u32(x430, x415, x417, &x432);
- { uint32_t x435; uint8_t x436 = _addcarryx_u32(x433, x418, x420, &x435);
- { uint32_t x438; uint8_t x439 = _addcarryx_u32(x436, x421, x423, &x438);
- { uint32_t x441; uint8_t x442 = _addcarryx_u32(x439, x424, x426, &x441);
- { uint8_t x443 = (x442 + x427);
- { uint32_t _; uint8_t x446 = _addcarryx_u32(0x0, x387, x411, &_);
- { uint32_t x448; uint8_t x449 = _addcarryx_u32(x446, x390, x429, &x448);
- { uint32_t x451; uint8_t x452 = _addcarryx_u32(x449, x393, x432, &x451);
- { uint32_t x454; uint8_t x455 = _addcarryx_u32(x452, x396, x435, &x454);
- { uint32_t x457; uint8_t x458 = _addcarryx_u32(x455, x399, x438, &x457);
- { uint32_t x460; uint8_t x461 = _addcarryx_u32(x458, x402, x441, &x460);
- { uint32_t x463; uint8_t x464 = _addcarryx_u32(x461, x405, x443, &x463);
- { uint8_t x465 = (x464 + x406);
- { uint32_t x468; uint32_t x467 = _mulx_u32(x13, x15, &x468);
- { uint32_t x471; uint32_t x470 = _mulx_u32(x13, x17, &x471);
- { uint32_t x474; uint32_t x473 = _mulx_u32(x13, x19, &x474);
- { uint32_t x477; uint32_t x476 = _mulx_u32(x13, x21, &x477);
- { uint32_t x480; uint32_t x479 = _mulx_u32(x13, x23, &x480);
- { uint32_t x483; uint32_t x482 = _mulx_u32(x13, x22, &x483);
- { uint32_t x485; uint8_t x486 = _addcarryx_u32(0x0, x468, x470, &x485);
- { uint32_t x488; uint8_t x489 = _addcarryx_u32(x486, x471, x473, &x488);
- { uint32_t x491; uint8_t x492 = _addcarryx_u32(x489, x474, x476, &x491);
- { uint32_t x494; uint8_t x495 = _addcarryx_u32(x492, x477, x479, &x494);
- { uint32_t x497; uint8_t x498 = _addcarryx_u32(x495, x480, x482, &x497);
- { uint32_t x500; uint8_t _ = _addcarryx_u32(0x0, x498, x483, &x500);
- { uint32_t x503; uint8_t x504 = _addcarryx_u32(0x0, x448, x467, &x503);
- { uint32_t x506; uint8_t x507 = _addcarryx_u32(x504, x451, x485, &x506);
- { uint32_t x509; uint8_t x510 = _addcarryx_u32(x507, x454, x488, &x509);
- { uint32_t x512; uint8_t x513 = _addcarryx_u32(x510, x457, x491, &x512);
- { uint32_t x515; uint8_t x516 = _addcarryx_u32(x513, x460, x494, &x515);
- { uint32_t x518; uint8_t x519 = _addcarryx_u32(x516, x463, x497, &x518);
- { uint32_t x521; uint8_t x522 = _addcarryx_u32(x519, x465, x500, &x521);
- { uint32_t _; uint32_t x524 = _mulx_u32(x503, 0xc28f5c29, &_);
- { uint32_t x528; uint32_t x527 = _mulx_u32(x524, 0xffffffe7, &x528);
- { uint32_t x531; uint32_t x530 = _mulx_u32(x524, 0xffffffff, &x531);
- { uint32_t x534; uint32_t x533 = _mulx_u32(x524, 0xffffffff, &x534);
- { uint32_t x537; uint32_t x536 = _mulx_u32(x524, 0xffffffff, &x537);
- { uint32_t x540; uint32_t x539 = _mulx_u32(x524, 0xffffffff, &x540);
- { uint8_t x543; uint32_t x542 = _mulx_u32_out_u8(x524, 0x1f, &x543);
- { uint32_t x545; uint8_t x546 = _addcarryx_u32(0x0, x528, x530, &x545);
- { uint32_t x548; uint8_t x549 = _addcarryx_u32(x546, x531, x533, &x548);
- { uint32_t x551; uint8_t x552 = _addcarryx_u32(x549, x534, x536, &x551);
- { uint32_t x554; uint8_t x555 = _addcarryx_u32(x552, x537, x539, &x554);
- { uint32_t x557; uint8_t x558 = _addcarryx_u32(x555, x540, x542, &x557);
- { uint8_t x559 = (x558 + x543);
- { uint32_t _; uint8_t x562 = _addcarryx_u32(0x0, x503, x527, &_);
- { uint32_t x564; uint8_t x565 = _addcarryx_u32(x562, x506, x545, &x564);
- { uint32_t x567; uint8_t x568 = _addcarryx_u32(x565, x509, x548, &x567);
- { uint32_t x570; uint8_t x571 = _addcarryx_u32(x568, x512, x551, &x570);
- { uint32_t x573; uint8_t x574 = _addcarryx_u32(x571, x515, x554, &x573);
- { uint32_t x576; uint8_t x577 = _addcarryx_u32(x574, x518, x557, &x576);
- { uint32_t x579; uint8_t x580 = _addcarryx_u32(x577, x521, x559, &x579);
- { uint8_t x581 = (x580 + x522);
- { uint32_t x584; uint32_t x583 = _mulx_u32(x12, x15, &x584);
- { uint32_t x587; uint32_t x586 = _mulx_u32(x12, x17, &x587);
- { uint32_t x590; uint32_t x589 = _mulx_u32(x12, x19, &x590);
- { uint32_t x593; uint32_t x592 = _mulx_u32(x12, x21, &x593);
- { uint32_t x596; uint32_t x595 = _mulx_u32(x12, x23, &x596);
- { uint32_t x599; uint32_t x598 = _mulx_u32(x12, x22, &x599);
- { uint32_t x601; uint8_t x602 = _addcarryx_u32(0x0, x584, x586, &x601);
- { uint32_t x604; uint8_t x605 = _addcarryx_u32(x602, x587, x589, &x604);
- { uint32_t x607; uint8_t x608 = _addcarryx_u32(x605, x590, x592, &x607);
- { uint32_t x610; uint8_t x611 = _addcarryx_u32(x608, x593, x595, &x610);
- { uint32_t x613; uint8_t x614 = _addcarryx_u32(x611, x596, x598, &x613);
- { uint32_t x616; uint8_t _ = _addcarryx_u32(0x0, x614, x599, &x616);
- { uint32_t x619; uint8_t x620 = _addcarryx_u32(0x0, x564, x583, &x619);
- { uint32_t x622; uint8_t x623 = _addcarryx_u32(x620, x567, x601, &x622);
- { uint32_t x625; uint8_t x626 = _addcarryx_u32(x623, x570, x604, &x625);
- { uint32_t x628; uint8_t x629 = _addcarryx_u32(x626, x573, x607, &x628);
- { uint32_t x631; uint8_t x632 = _addcarryx_u32(x629, x576, x610, &x631);
- { uint32_t x634; uint8_t x635 = _addcarryx_u32(x632, x579, x613, &x634);
- { uint32_t x637; uint8_t x638 = _addcarryx_u32(x635, x581, x616, &x637);
- { uint32_t _; uint32_t x640 = _mulx_u32(x619, 0xc28f5c29, &_);
- { uint32_t x644; uint32_t x643 = _mulx_u32(x640, 0xffffffe7, &x644);
- { uint32_t x647; uint32_t x646 = _mulx_u32(x640, 0xffffffff, &x647);
- { uint32_t x650; uint32_t x649 = _mulx_u32(x640, 0xffffffff, &x650);
- { uint32_t x653; uint32_t x652 = _mulx_u32(x640, 0xffffffff, &x653);
- { uint32_t x656; uint32_t x655 = _mulx_u32(x640, 0xffffffff, &x656);
- { uint8_t x659; uint32_t x658 = _mulx_u32_out_u8(x640, 0x1f, &x659);
- { uint32_t x661; uint8_t x662 = _addcarryx_u32(0x0, x644, x646, &x661);
- { uint32_t x664; uint8_t x665 = _addcarryx_u32(x662, x647, x649, &x664);
- { uint32_t x667; uint8_t x668 = _addcarryx_u32(x665, x650, x652, &x667);
- { uint32_t x670; uint8_t x671 = _addcarryx_u32(x668, x653, x655, &x670);
- { uint32_t x673; uint8_t x674 = _addcarryx_u32(x671, x656, x658, &x673);
- { uint8_t x675 = (x674 + x659);
- { uint32_t _; uint8_t x678 = _addcarryx_u32(0x0, x619, x643, &_);
- { uint32_t x680; uint8_t x681 = _addcarryx_u32(x678, x622, x661, &x680);
- { uint32_t x683; uint8_t x684 = _addcarryx_u32(x681, x625, x664, &x683);
- { uint32_t x686; uint8_t x687 = _addcarryx_u32(x684, x628, x667, &x686);
- { uint32_t x689; uint8_t x690 = _addcarryx_u32(x687, x631, x670, &x689);
- { uint32_t x692; uint8_t x693 = _addcarryx_u32(x690, x634, x673, &x692);
- { uint32_t x695; uint8_t x696 = _addcarryx_u32(x693, x637, x675, &x695);
- { uint8_t x697 = (x696 + x638);
- { uint32_t x699; uint8_t x700 = _subborrow_u32(0x0, x680, 0xffffffe7, &x699);
- { uint32_t x702; uint8_t x703 = _subborrow_u32(x700, x683, 0xffffffff, &x702);
- { uint32_t x705; uint8_t x706 = _subborrow_u32(x703, x686, 0xffffffff, &x705);
- { uint32_t x708; uint8_t x709 = _subborrow_u32(x706, x689, 0xffffffff, &x708);
- { uint32_t x711; uint8_t x712 = _subborrow_u32(x709, x692, 0xffffffff, &x711);
- { uint32_t x714; uint8_t x715 = _subborrow_u32(x712, x695, 0x1f, &x714);
- { uint32_t _; uint8_t x718 = _subborrow_u32(x715, x697, 0x0, &_);
- { uint32_t x719 = cmovznz32(x718, x714, x695);
- { uint32_t x720 = cmovznz32(x718, x711, x692);
- { uint32_t x721 = cmovznz32(x718, x708, x689);
- { uint32_t x722 = cmovznz32(x718, x705, x686);
- { uint32_t x723 = cmovznz32(x718, x702, x683);
- { uint32_t x724 = cmovznz32(x718, x699, x680);
- out[0] = x724;
- out[1] = x723;
- out[2] = x722;
- out[3] = x721;
- out[4] = x720;
- out[5] = x719;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e165m25_6limbs/femul.v b/src/Specific/montgomery32_2e165m25_6limbs/femul.v
deleted file mode 100644
index 6a15d083c..000000000
--- a/src/Specific/montgomery32_2e165m25_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e165m25_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e165m25_6limbs/femulDisplay.log b/src/Specific/montgomery32_2e165m25_6limbs/femulDisplay.log
deleted file mode 100644
index 76e90e61d..000000000
--- a/src/Specific/montgomery32_2e165m25_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,252 +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,
- uint32_t x25, uint32_t x26 = mulx_u32(x5, x15);
- uint32_t x28, uint32_t x29 = mulx_u32(x5, x17);
- uint32_t x31, uint32_t x32 = mulx_u32(x5, x19);
- uint32_t x34, uint32_t x35 = mulx_u32(x5, x21);
- uint32_t x37, uint32_t x38 = mulx_u32(x5, x23);
- uint32_t x40, uint32_t x41 = mulx_u32(x5, x22);
- uint32_t x43, uint8_t x44 = addcarryx_u32(0x0, x26, x28);
- uint32_t x46, uint8_t x47 = addcarryx_u32(x44, x29, x31);
- uint32_t x49, uint8_t x50 = addcarryx_u32(x47, x32, x34);
- uint32_t x52, uint8_t x53 = addcarryx_u32(x50, x35, x37);
- uint32_t x55, uint8_t x56 = addcarryx_u32(x53, x38, x40);
- uint32_t x58, uint8_t _ = addcarryx_u32(0x0, x56, x41);
- uint32_t x61, uint32_t _ = mulx_u32(x25, 0xc28f5c29);
- uint32_t x64, uint32_t x65 = mulx_u32(x61, 0xffffffe7);
- uint32_t x67, uint32_t x68 = mulx_u32(x61, 0xffffffff);
- uint32_t x70, uint32_t x71 = mulx_u32(x61, 0xffffffff);
- uint32_t x73, uint32_t x74 = mulx_u32(x61, 0xffffffff);
- uint32_t x76, uint32_t x77 = mulx_u32(x61, 0xffffffff);
- uint32_t x79, uint8_t x80 = mulx_u32_out_u8(x61, 0x1f);
- uint32_t x82, uint8_t x83 = addcarryx_u32(0x0, x65, x67);
- uint32_t x85, uint8_t x86 = addcarryx_u32(x83, x68, x70);
- uint32_t x88, uint8_t x89 = addcarryx_u32(x86, x71, x73);
- uint32_t x91, uint8_t x92 = addcarryx_u32(x89, x74, x76);
- uint32_t x94, uint8_t x95 = addcarryx_u32(x92, x77, x79);
- uint8_t x96 = (x95 + x80);
- uint32_t _, uint8_t x99 = addcarryx_u32(0x0, x25, x64);
- uint32_t x101, uint8_t x102 = addcarryx_u32(x99, x43, x82);
- uint32_t x104, uint8_t x105 = addcarryx_u32(x102, x46, x85);
- uint32_t x107, uint8_t x108 = addcarryx_u32(x105, x49, x88);
- uint32_t x110, uint8_t x111 = addcarryx_u32(x108, x52, x91);
- uint32_t x113, uint8_t x114 = addcarryx_u32(x111, x55, x94);
- uint32_t x116, uint8_t x117 = addcarryx_u32(x114, x58, x96);
- uint32_t x119, uint32_t x120 = mulx_u32(x7, x15);
- uint32_t x122, uint32_t x123 = mulx_u32(x7, x17);
- uint32_t x125, uint32_t x126 = mulx_u32(x7, x19);
- uint32_t x128, uint32_t x129 = mulx_u32(x7, x21);
- uint32_t x131, uint32_t x132 = mulx_u32(x7, x23);
- uint32_t x134, uint32_t x135 = mulx_u32(x7, x22);
- uint32_t x137, uint8_t x138 = addcarryx_u32(0x0, x120, x122);
- uint32_t x140, uint8_t x141 = addcarryx_u32(x138, x123, x125);
- uint32_t x143, uint8_t x144 = addcarryx_u32(x141, x126, x128);
- uint32_t x146, uint8_t x147 = addcarryx_u32(x144, x129, x131);
- uint32_t x149, uint8_t x150 = addcarryx_u32(x147, x132, x134);
- uint32_t x152, uint8_t _ = addcarryx_u32(0x0, x150, x135);
- uint32_t x155, uint8_t x156 = addcarryx_u32(0x0, x101, x119);
- uint32_t x158, uint8_t x159 = addcarryx_u32(x156, x104, x137);
- uint32_t x161, uint8_t x162 = addcarryx_u32(x159, x107, x140);
- uint32_t x164, uint8_t x165 = addcarryx_u32(x162, x110, x143);
- uint32_t x167, uint8_t x168 = addcarryx_u32(x165, x113, x146);
- uint32_t x170, uint8_t x171 = addcarryx_u32(x168, x116, x149);
- uint32_t x173, uint8_t x174 = addcarryx_u32(x171, x117, x152);
- uint32_t x176, uint32_t _ = mulx_u32(x155, 0xc28f5c29);
- uint32_t x179, uint32_t x180 = mulx_u32(x176, 0xffffffe7);
- uint32_t x182, uint32_t x183 = mulx_u32(x176, 0xffffffff);
- uint32_t x185, uint32_t x186 = mulx_u32(x176, 0xffffffff);
- uint32_t x188, uint32_t x189 = mulx_u32(x176, 0xffffffff);
- uint32_t x191, uint32_t x192 = mulx_u32(x176, 0xffffffff);
- uint32_t x194, uint8_t x195 = mulx_u32_out_u8(x176, 0x1f);
- uint32_t x197, uint8_t x198 = addcarryx_u32(0x0, x180, x182);
- uint32_t x200, uint8_t x201 = addcarryx_u32(x198, x183, x185);
- uint32_t x203, uint8_t x204 = addcarryx_u32(x201, x186, x188);
- uint32_t x206, uint8_t x207 = addcarryx_u32(x204, x189, x191);
- uint32_t x209, uint8_t x210 = addcarryx_u32(x207, x192, x194);
- uint8_t x211 = (x210 + x195);
- uint32_t _, uint8_t x214 = addcarryx_u32(0x0, x155, x179);
- uint32_t x216, uint8_t x217 = addcarryx_u32(x214, x158, x197);
- uint32_t x219, uint8_t x220 = addcarryx_u32(x217, x161, x200);
- uint32_t x222, uint8_t x223 = addcarryx_u32(x220, x164, x203);
- uint32_t x225, uint8_t x226 = addcarryx_u32(x223, x167, x206);
- uint32_t x228, uint8_t x229 = addcarryx_u32(x226, x170, x209);
- uint32_t x231, uint8_t x232 = addcarryx_u32(x229, x173, x211);
- uint8_t x233 = (x232 + x174);
- uint32_t x235, uint32_t x236 = mulx_u32(x9, x15);
- uint32_t x238, uint32_t x239 = mulx_u32(x9, x17);
- uint32_t x241, uint32_t x242 = mulx_u32(x9, x19);
- uint32_t x244, uint32_t x245 = mulx_u32(x9, x21);
- uint32_t x247, uint32_t x248 = mulx_u32(x9, x23);
- uint32_t x250, uint32_t x251 = mulx_u32(x9, x22);
- uint32_t x253, uint8_t x254 = addcarryx_u32(0x0, x236, x238);
- uint32_t x256, uint8_t x257 = addcarryx_u32(x254, x239, x241);
- uint32_t x259, uint8_t x260 = addcarryx_u32(x257, x242, x244);
- uint32_t x262, uint8_t x263 = addcarryx_u32(x260, x245, x247);
- uint32_t x265, uint8_t x266 = addcarryx_u32(x263, x248, x250);
- uint32_t x268, uint8_t _ = addcarryx_u32(0x0, x266, x251);
- uint32_t x271, uint8_t x272 = addcarryx_u32(0x0, x216, x235);
- uint32_t x274, uint8_t x275 = addcarryx_u32(x272, x219, x253);
- uint32_t x277, uint8_t x278 = addcarryx_u32(x275, x222, x256);
- uint32_t x280, uint8_t x281 = addcarryx_u32(x278, x225, x259);
- uint32_t x283, uint8_t x284 = addcarryx_u32(x281, x228, x262);
- uint32_t x286, uint8_t x287 = addcarryx_u32(x284, x231, x265);
- uint32_t x289, uint8_t x290 = addcarryx_u32(x287, x233, x268);
- uint32_t x292, uint32_t _ = mulx_u32(x271, 0xc28f5c29);
- uint32_t x295, uint32_t x296 = mulx_u32(x292, 0xffffffe7);
- uint32_t x298, uint32_t x299 = mulx_u32(x292, 0xffffffff);
- uint32_t x301, uint32_t x302 = mulx_u32(x292, 0xffffffff);
- uint32_t x304, uint32_t x305 = mulx_u32(x292, 0xffffffff);
- uint32_t x307, uint32_t x308 = mulx_u32(x292, 0xffffffff);
- uint32_t x310, uint8_t x311 = mulx_u32_out_u8(x292, 0x1f);
- uint32_t x313, uint8_t x314 = addcarryx_u32(0x0, x296, x298);
- uint32_t x316, uint8_t x317 = addcarryx_u32(x314, x299, x301);
- uint32_t x319, uint8_t x320 = addcarryx_u32(x317, x302, x304);
- uint32_t x322, uint8_t x323 = addcarryx_u32(x320, x305, x307);
- uint32_t x325, uint8_t x326 = addcarryx_u32(x323, x308, x310);
- uint8_t x327 = (x326 + x311);
- uint32_t _, uint8_t x330 = addcarryx_u32(0x0, x271, x295);
- uint32_t x332, uint8_t x333 = addcarryx_u32(x330, x274, x313);
- uint32_t x335, uint8_t x336 = addcarryx_u32(x333, x277, x316);
- uint32_t x338, uint8_t x339 = addcarryx_u32(x336, x280, x319);
- uint32_t x341, uint8_t x342 = addcarryx_u32(x339, x283, x322);
- uint32_t x344, uint8_t x345 = addcarryx_u32(x342, x286, x325);
- uint32_t x347, uint8_t x348 = addcarryx_u32(x345, x289, x327);
- uint8_t x349 = (x348 + x290);
- uint32_t x351, uint32_t x352 = mulx_u32(x11, x15);
- uint32_t x354, uint32_t x355 = mulx_u32(x11, x17);
- uint32_t x357, uint32_t x358 = mulx_u32(x11, x19);
- uint32_t x360, uint32_t x361 = mulx_u32(x11, x21);
- uint32_t x363, uint32_t x364 = mulx_u32(x11, x23);
- uint32_t x366, uint32_t x367 = mulx_u32(x11, x22);
- uint32_t x369, uint8_t x370 = addcarryx_u32(0x0, x352, x354);
- uint32_t x372, uint8_t x373 = addcarryx_u32(x370, x355, x357);
- uint32_t x375, uint8_t x376 = addcarryx_u32(x373, x358, x360);
- uint32_t x378, uint8_t x379 = addcarryx_u32(x376, x361, x363);
- uint32_t x381, uint8_t x382 = addcarryx_u32(x379, x364, x366);
- uint32_t x384, uint8_t _ = addcarryx_u32(0x0, x382, x367);
- uint32_t x387, uint8_t x388 = addcarryx_u32(0x0, x332, x351);
- uint32_t x390, uint8_t x391 = addcarryx_u32(x388, x335, x369);
- uint32_t x393, uint8_t x394 = addcarryx_u32(x391, x338, x372);
- uint32_t x396, uint8_t x397 = addcarryx_u32(x394, x341, x375);
- uint32_t x399, uint8_t x400 = addcarryx_u32(x397, x344, x378);
- uint32_t x402, uint8_t x403 = addcarryx_u32(x400, x347, x381);
- uint32_t x405, uint8_t x406 = addcarryx_u32(x403, x349, x384);
- uint32_t x408, uint32_t _ = mulx_u32(x387, 0xc28f5c29);
- uint32_t x411, uint32_t x412 = mulx_u32(x408, 0xffffffe7);
- uint32_t x414, uint32_t x415 = mulx_u32(x408, 0xffffffff);
- uint32_t x417, uint32_t x418 = mulx_u32(x408, 0xffffffff);
- uint32_t x420, uint32_t x421 = mulx_u32(x408, 0xffffffff);
- uint32_t x423, uint32_t x424 = mulx_u32(x408, 0xffffffff);
- uint32_t x426, uint8_t x427 = mulx_u32_out_u8(x408, 0x1f);
- uint32_t x429, uint8_t x430 = addcarryx_u32(0x0, x412, x414);
- uint32_t x432, uint8_t x433 = addcarryx_u32(x430, x415, x417);
- uint32_t x435, uint8_t x436 = addcarryx_u32(x433, x418, x420);
- uint32_t x438, uint8_t x439 = addcarryx_u32(x436, x421, x423);
- uint32_t x441, uint8_t x442 = addcarryx_u32(x439, x424, x426);
- uint8_t x443 = (x442 + x427);
- uint32_t _, uint8_t x446 = addcarryx_u32(0x0, x387, x411);
- uint32_t x448, uint8_t x449 = addcarryx_u32(x446, x390, x429);
- uint32_t x451, uint8_t x452 = addcarryx_u32(x449, x393, x432);
- uint32_t x454, uint8_t x455 = addcarryx_u32(x452, x396, x435);
- uint32_t x457, uint8_t x458 = addcarryx_u32(x455, x399, x438);
- uint32_t x460, uint8_t x461 = addcarryx_u32(x458, x402, x441);
- uint32_t x463, uint8_t x464 = addcarryx_u32(x461, x405, x443);
- uint8_t x465 = (x464 + x406);
- uint32_t x467, uint32_t x468 = mulx_u32(x13, x15);
- uint32_t x470, uint32_t x471 = mulx_u32(x13, x17);
- uint32_t x473, uint32_t x474 = mulx_u32(x13, x19);
- uint32_t x476, uint32_t x477 = mulx_u32(x13, x21);
- uint32_t x479, uint32_t x480 = mulx_u32(x13, x23);
- uint32_t x482, uint32_t x483 = mulx_u32(x13, x22);
- uint32_t x485, uint8_t x486 = addcarryx_u32(0x0, x468, x470);
- uint32_t x488, uint8_t x489 = addcarryx_u32(x486, x471, x473);
- uint32_t x491, uint8_t x492 = addcarryx_u32(x489, x474, x476);
- uint32_t x494, uint8_t x495 = addcarryx_u32(x492, x477, x479);
- uint32_t x497, uint8_t x498 = addcarryx_u32(x495, x480, x482);
- uint32_t x500, uint8_t _ = addcarryx_u32(0x0, x498, x483);
- uint32_t x503, uint8_t x504 = addcarryx_u32(0x0, x448, x467);
- uint32_t x506, uint8_t x507 = addcarryx_u32(x504, x451, x485);
- uint32_t x509, uint8_t x510 = addcarryx_u32(x507, x454, x488);
- uint32_t x512, uint8_t x513 = addcarryx_u32(x510, x457, x491);
- uint32_t x515, uint8_t x516 = addcarryx_u32(x513, x460, x494);
- uint32_t x518, uint8_t x519 = addcarryx_u32(x516, x463, x497);
- uint32_t x521, uint8_t x522 = addcarryx_u32(x519, x465, x500);
- uint32_t x524, uint32_t _ = mulx_u32(x503, 0xc28f5c29);
- uint32_t x527, uint32_t x528 = mulx_u32(x524, 0xffffffe7);
- uint32_t x530, uint32_t x531 = mulx_u32(x524, 0xffffffff);
- uint32_t x533, uint32_t x534 = mulx_u32(x524, 0xffffffff);
- uint32_t x536, uint32_t x537 = mulx_u32(x524, 0xffffffff);
- uint32_t x539, uint32_t x540 = mulx_u32(x524, 0xffffffff);
- uint32_t x542, uint8_t x543 = mulx_u32_out_u8(x524, 0x1f);
- uint32_t x545, uint8_t x546 = addcarryx_u32(0x0, x528, x530);
- uint32_t x548, uint8_t x549 = addcarryx_u32(x546, x531, x533);
- uint32_t x551, uint8_t x552 = addcarryx_u32(x549, x534, x536);
- uint32_t x554, uint8_t x555 = addcarryx_u32(x552, x537, x539);
- uint32_t x557, uint8_t x558 = addcarryx_u32(x555, x540, x542);
- uint8_t x559 = (x558 + x543);
- uint32_t _, uint8_t x562 = addcarryx_u32(0x0, x503, x527);
- uint32_t x564, uint8_t x565 = addcarryx_u32(x562, x506, x545);
- uint32_t x567, uint8_t x568 = addcarryx_u32(x565, x509, x548);
- uint32_t x570, uint8_t x571 = addcarryx_u32(x568, x512, x551);
- uint32_t x573, uint8_t x574 = addcarryx_u32(x571, x515, x554);
- uint32_t x576, uint8_t x577 = addcarryx_u32(x574, x518, x557);
- uint32_t x579, uint8_t x580 = addcarryx_u32(x577, x521, x559);
- uint8_t x581 = (x580 + x522);
- uint32_t x583, uint32_t x584 = mulx_u32(x12, x15);
- uint32_t x586, uint32_t x587 = mulx_u32(x12, x17);
- uint32_t x589, uint32_t x590 = mulx_u32(x12, x19);
- uint32_t x592, uint32_t x593 = mulx_u32(x12, x21);
- uint32_t x595, uint32_t x596 = mulx_u32(x12, x23);
- uint32_t x598, uint32_t x599 = mulx_u32(x12, x22);
- uint32_t x601, uint8_t x602 = addcarryx_u32(0x0, x584, x586);
- uint32_t x604, uint8_t x605 = addcarryx_u32(x602, x587, x589);
- uint32_t x607, uint8_t x608 = addcarryx_u32(x605, x590, x592);
- uint32_t x610, uint8_t x611 = addcarryx_u32(x608, x593, x595);
- uint32_t x613, uint8_t x614 = addcarryx_u32(x611, x596, x598);
- uint32_t x616, uint8_t _ = addcarryx_u32(0x0, x614, x599);
- uint32_t x619, uint8_t x620 = addcarryx_u32(0x0, x564, x583);
- uint32_t x622, uint8_t x623 = addcarryx_u32(x620, x567, x601);
- uint32_t x625, uint8_t x626 = addcarryx_u32(x623, x570, x604);
- uint32_t x628, uint8_t x629 = addcarryx_u32(x626, x573, x607);
- uint32_t x631, uint8_t x632 = addcarryx_u32(x629, x576, x610);
- uint32_t x634, uint8_t x635 = addcarryx_u32(x632, x579, x613);
- uint32_t x637, uint8_t x638 = addcarryx_u32(x635, x581, x616);
- uint32_t x640, uint32_t _ = mulx_u32(x619, 0xc28f5c29);
- uint32_t x643, uint32_t x644 = mulx_u32(x640, 0xffffffe7);
- uint32_t x646, uint32_t x647 = mulx_u32(x640, 0xffffffff);
- uint32_t x649, uint32_t x650 = mulx_u32(x640, 0xffffffff);
- uint32_t x652, uint32_t x653 = mulx_u32(x640, 0xffffffff);
- uint32_t x655, uint32_t x656 = mulx_u32(x640, 0xffffffff);
- uint32_t x658, uint8_t x659 = mulx_u32_out_u8(x640, 0x1f);
- uint32_t x661, uint8_t x662 = addcarryx_u32(0x0, x644, x646);
- uint32_t x664, uint8_t x665 = addcarryx_u32(x662, x647, x649);
- uint32_t x667, uint8_t x668 = addcarryx_u32(x665, x650, x652);
- uint32_t x670, uint8_t x671 = addcarryx_u32(x668, x653, x655);
- uint32_t x673, uint8_t x674 = addcarryx_u32(x671, x656, x658);
- uint8_t x675 = (x674 + x659);
- uint32_t _, uint8_t x678 = addcarryx_u32(0x0, x619, x643);
- uint32_t x680, uint8_t x681 = addcarryx_u32(x678, x622, x661);
- uint32_t x683, uint8_t x684 = addcarryx_u32(x681, x625, x664);
- uint32_t x686, uint8_t x687 = addcarryx_u32(x684, x628, x667);
- uint32_t x689, uint8_t x690 = addcarryx_u32(x687, x631, x670);
- uint32_t x692, uint8_t x693 = addcarryx_u32(x690, x634, x673);
- uint32_t x695, uint8_t x696 = addcarryx_u32(x693, x637, x675);
- uint8_t x697 = (x696 + x638);
- uint32_t x699, uint8_t x700 = subborrow_u32(0x0, x680, 0xffffffe7);
- uint32_t x702, uint8_t x703 = subborrow_u32(x700, x683, 0xffffffff);
- uint32_t x705, uint8_t x706 = subborrow_u32(x703, x686, 0xffffffff);
- uint32_t x708, uint8_t x709 = subborrow_u32(x706, x689, 0xffffffff);
- uint32_t x711, uint8_t x712 = subborrow_u32(x709, x692, 0xffffffff);
- uint32_t x714, uint8_t x715 = subborrow_u32(x712, x695, 0x1f);
- uint32_t _, uint8_t x718 = subborrow_u32(x715, x697, 0x0);
- uint32_t x719 = cmovznz32(x718, x714, x695);
- uint32_t x720 = cmovznz32(x718, x711, x692);
- uint32_t x721 = cmovznz32(x718, x708, x689);
- uint32_t x722 = cmovznz32(x718, x705, x686);
- uint32_t x723 = cmovznz32(x718, x702, x683);
- uint32_t x724 = cmovznz32(x718, x699, x680);
- return (x719, x720, x721, x722, x723, x724))
-(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/montgomery32_2e165m25_6limbs/femulDisplay.v b/src/Specific/montgomery32_2e165m25_6limbs/femulDisplay.v
deleted file mode 100644
index 941a96963..000000000
--- a/src/Specific/montgomery32_2e165m25_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e165m25_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e165m25_6limbs/fenz.c b/src/Specific/montgomery32_2e165m25_6limbs/fenz.c
deleted file mode 100644
index 2e0454af1..000000000
--- a/src/Specific/montgomery32_2e165m25_6limbs/fenz.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], 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 x11 = (x10 | x9);
- { uint32_t x12 = (x8 | x11);
- { uint32_t x13 = (x6 | x12);
- { uint32_t x14 = (x4 | x13);
- { uint32_t x15 = (x2 | x14);
- out[0] = x15;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e165m25_6limbs/fenz.v b/src/Specific/montgomery32_2e165m25_6limbs/fenz.v
deleted file mode 100644
index 5a3cfc99d..000000000
--- a/src/Specific/montgomery32_2e165m25_6limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e165m25_6limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e165m25_6limbs/fenzDisplay.log b/src/Specific/montgomery32_2e165m25_6limbs/fenzDisplay.log
deleted file mode 100644
index 616138b7b..000000000
--- a/src/Specific/montgomery32_2e165m25_6limbs/fenzDisplay.log
+++ /dev/null
@@ -1,12 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint32_t x11 = (x10 | x9);
- uint32_t x12 = (x8 | x11);
- uint32_t x13 = (x6 | x12);
- uint32_t x14 = (x4 | x13);
- uint32_t x15 = (x2 | x14);
- return x15)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e165m25_6limbs/fenzDisplay.v b/src/Specific/montgomery32_2e165m25_6limbs/fenzDisplay.v
deleted file mode 100644
index 28713add6..000000000
--- a/src/Specific/montgomery32_2e165m25_6limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e165m25_6limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e165m25_6limbs/feopp.c b/src/Specific/montgomery32_2e165m25_6limbs/feopp.c
deleted file mode 100644
index e8e2767ae..000000000
--- a/src/Specific/montgomery32_2e165m25_6limbs/feopp.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feopp(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 = _subborrow_u32(0x0, 0x0, x2, &x12);
- { uint32_t x15; uint8_t x16 = _subborrow_u32(x13, 0x0, x4, &x15);
- { uint32_t x18; uint8_t x19 = _subborrow_u32(x16, 0x0, x6, &x18);
- { uint32_t x21; uint8_t x22 = _subborrow_u32(x19, 0x0, x8, &x21);
- { uint32_t x24; uint8_t x25 = _subborrow_u32(x22, 0x0, x10, &x24);
- { uint32_t x27; uint8_t x28 = _subborrow_u32(x25, 0x0, x9, &x27);
- { uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- { uint32_t x30 = (x29 & 0xffffffe7);
- { uint32_t x32; uint8_t x33 = _addcarryx_u32(0x0, x12, x30, &x32);
- { uint32_t x34 = (x29 & 0xffffffff);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(x33, x15, x34, &x36);
- { uint32_t x38 = (x29 & 0xffffffff);
- { uint32_t x40; uint8_t x41 = _addcarryx_u32(x37, x18, x38, &x40);
- { uint32_t x42 = (x29 & 0xffffffff);
- { uint32_t x44; uint8_t x45 = _addcarryx_u32(x41, x21, x42, &x44);
- { uint32_t x46 = (x29 & 0xffffffff);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x45, x24, x46, &x48);
- { uint8_t x50 = ((uint8_t)x29 & 0x1f);
- { uint32_t x52; uint8_t _ = _addcarryx_u32(x49, x27, x50, &x52);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e165m25_6limbs/feopp.v b/src/Specific/montgomery32_2e165m25_6limbs/feopp.v
deleted file mode 100644
index a361e5fb0..000000000
--- a/src/Specific/montgomery32_2e165m25_6limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e165m25_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e165m25_6limbs/feoppDisplay.log b/src/Specific/montgomery32_2e165m25_6limbs/feoppDisplay.log
deleted file mode 100644
index df49ff1ff..000000000
--- a/src/Specific/montgomery32_2e165m25_6limbs/feoppDisplay.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 = subborrow_u32(0x0, 0x0, x2);
- uint32_t x15, uint8_t x16 = subborrow_u32(x13, 0x0, x4);
- uint32_t x18, uint8_t x19 = subborrow_u32(x16, 0x0, x6);
- uint32_t x21, uint8_t x22 = subborrow_u32(x19, 0x0, x8);
- uint32_t x24, uint8_t x25 = subborrow_u32(x22, 0x0, x10);
- uint32_t x27, uint8_t x28 = subborrow_u32(x25, 0x0, x9);
- uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- uint32_t x30 = (x29 & 0xffffffe7);
- uint32_t x32, uint8_t x33 = addcarryx_u32(0x0, x12, x30);
- uint32_t x34 = (x29 & 0xffffffff);
- uint32_t x36, uint8_t x37 = addcarryx_u32(x33, x15, x34);
- uint32_t x38 = (x29 & 0xffffffff);
- uint32_t x40, uint8_t x41 = addcarryx_u32(x37, x18, x38);
- uint32_t x42 = (x29 & 0xffffffff);
- uint32_t x44, uint8_t x45 = addcarryx_u32(x41, x21, x42);
- uint32_t x46 = (x29 & 0xffffffff);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x45, x24, x46);
- uint8_t x50 = ((uint8_t)x29 & 0x1f);
- uint32_t x52, uint8_t _ = addcarryx_u32(x49, x27, 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/montgomery32_2e165m25_6limbs/feoppDisplay.v b/src/Specific/montgomery32_2e165m25_6limbs/feoppDisplay.v
deleted file mode 100644
index 46e604e05..000000000
--- a/src/Specific/montgomery32_2e165m25_6limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e165m25_6limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e165m25_6limbs/fesquare.c b/src/Specific/montgomery32_2e165m25_6limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e165m25_6limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e165m25_6limbs/fesub.c b/src/Specific/montgomery32_2e165m25_6limbs/fesub.c
deleted file mode 100644
index 2f1872aba..000000000
--- a/src/Specific/montgomery32_2e165m25_6limbs/fesub.c
+++ /dev/null
@@ -1,40 +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];
- { uint32_t x25; uint8_t x26 = _subborrow_u32(0x0, x5, x15, &x25);
- { uint32_t x28; uint8_t x29 = _subborrow_u32(x26, x7, x17, &x28);
- { uint32_t x31; uint8_t x32 = _subborrow_u32(x29, x9, x19, &x31);
- { uint32_t x34; uint8_t x35 = _subborrow_u32(x32, x11, x21, &x34);
- { uint32_t x37; uint8_t x38 = _subborrow_u32(x35, x13, x23, &x37);
- { uint32_t x40; uint8_t x41 = _subborrow_u32(x38, x12, x22, &x40);
- { uint32_t x42 = cmovznz32(x41, 0x0, 0xffffffff);
- { uint32_t x43 = (x42 & 0xffffffe7);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(0x0, x25, x43, &x45);
- { uint32_t x47 = (x42 & 0xffffffff);
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(x46, x28, x47, &x49);
- { uint32_t x51 = (x42 & 0xffffffff);
- { uint32_t x53; uint8_t x54 = _addcarryx_u32(x50, x31, x51, &x53);
- { uint32_t x55 = (x42 & 0xffffffff);
- { uint32_t x57; uint8_t x58 = _addcarryx_u32(x54, x34, x55, &x57);
- { uint32_t x59 = (x42 & 0xffffffff);
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(x58, x37, x59, &x61);
- { uint8_t x63 = ((uint8_t)x42 & 0x1f);
- { uint32_t x65; uint8_t _ = _addcarryx_u32(x62, x40, x63, &x65);
- out[0] = x45;
- out[1] = x49;
- out[2] = x53;
- out[3] = x57;
- out[4] = x61;
- out[5] = x65;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e165m25_6limbs/fesub.v b/src/Specific/montgomery32_2e165m25_6limbs/fesub.v
deleted file mode 100644
index 02b3601e5..000000000
--- a/src/Specific/montgomery32_2e165m25_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e165m25_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e165m25_6limbs/fesubDisplay.log b/src/Specific/montgomery32_2e165m25_6limbs/fesubDisplay.log
deleted file mode 100644
index c64a7d5aa..000000000
--- a/src/Specific/montgomery32_2e165m25_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,26 +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,
- uint32_t x25, uint8_t x26 = subborrow_u32(0x0, x5, x15);
- uint32_t x28, uint8_t x29 = subborrow_u32(x26, x7, x17);
- uint32_t x31, uint8_t x32 = subborrow_u32(x29, x9, x19);
- uint32_t x34, uint8_t x35 = subborrow_u32(x32, x11, x21);
- uint32_t x37, uint8_t x38 = subborrow_u32(x35, x13, x23);
- uint32_t x40, uint8_t x41 = subborrow_u32(x38, x12, x22);
- uint32_t x42 = cmovznz32(x41, 0x0, 0xffffffff);
- uint32_t x43 = (x42 & 0xffffffe7);
- uint32_t x45, uint8_t x46 = addcarryx_u32(0x0, x25, x43);
- uint32_t x47 = (x42 & 0xffffffff);
- uint32_t x49, uint8_t x50 = addcarryx_u32(x46, x28, x47);
- uint32_t x51 = (x42 & 0xffffffff);
- uint32_t x53, uint8_t x54 = addcarryx_u32(x50, x31, x51);
- uint32_t x55 = (x42 & 0xffffffff);
- uint32_t x57, uint8_t x58 = addcarryx_u32(x54, x34, x55);
- uint32_t x59 = (x42 & 0xffffffff);
- uint32_t x61, uint8_t x62 = addcarryx_u32(x58, x37, x59);
- uint8_t x63 = ((uint8_t)x42 & 0x1f);
- uint32_t x65, uint8_t _ = addcarryx_u32(x62, x40, x63);
- (Return x65, Return x61, Return x57, Return x53, Return x49, Return x45))
-(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/montgomery32_2e165m25_6limbs/fesubDisplay.v b/src/Specific/montgomery32_2e165m25_6limbs/fesubDisplay.v
deleted file mode 100644
index 50856ffec..000000000
--- a/src/Specific/montgomery32_2e165m25_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e165m25_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e165m25_6limbs/py_interpreter.sh b/src/Specific/montgomery32_2e165m25_6limbs/py_interpreter.sh
deleted file mode 100755
index 870509253..000000000
--- a/src/Specific/montgomery32_2e165m25_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**165 - 25' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e166m5_6limbs/CurveParameters.v b/src/Specific/montgomery32_2e166m5_6limbs/CurveParameters.v
deleted file mode 100644
index b75c925d1..000000000
--- a/src/Specific/montgomery32_2e166m5_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^166 - 5
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 32;
- bitwidth := 32;
- s := 2^166;
- c := [(1, 5)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e166m5_6limbs/Synthesis.v b/src/Specific/montgomery32_2e166m5_6limbs/Synthesis.v
deleted file mode 100644
index 112591174..000000000
--- a/src/Specific/montgomery32_2e166m5_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e166m5_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/montgomery32_2e166m5_6limbs/compiler.sh b/src/Specific/montgomery32_2e166m5_6limbs/compiler.sh
deleted file mode 100755
index 5a2d9cdbd..000000000
--- a/src/Specific/montgomery32_2e166m5_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,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<166) - 5' "$@"
diff --git a/src/Specific/montgomery32_2e166m5_6limbs/compilerxx.sh b/src/Specific/montgomery32_2e166m5_6limbs/compilerxx.sh
deleted file mode 100755
index 63a5c93c7..000000000
--- a/src/Specific/montgomery32_2e166m5_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,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<166) - 5' "$@"
diff --git a/src/Specific/montgomery32_2e166m5_6limbs/feadd.c b/src/Specific/montgomery32_2e166m5_6limbs/feadd.c
deleted file mode 100644
index cd706f5c5..000000000
--- a/src/Specific/montgomery32_2e166m5_6limbs/feadd.c
+++ /dev/null
@@ -1,40 +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];
- { uint32_t x25; uint8_t x26 = _addcarryx_u32(0x0, x5, x15, &x25);
- { uint32_t x28; uint8_t x29 = _addcarryx_u32(x26, x7, x17, &x28);
- { uint32_t x31; uint8_t x32 = _addcarryx_u32(x29, x9, x19, &x31);
- { uint32_t x34; uint8_t x35 = _addcarryx_u32(x32, x11, x21, &x34);
- { uint32_t x37; uint8_t x38 = _addcarryx_u32(x35, x13, x23, &x37);
- { uint32_t x40; uint8_t x41 = _addcarryx_u32(x38, x12, x22, &x40);
- { uint32_t x43; uint8_t x44 = _subborrow_u32(0x0, x25, 0xfffffffb, &x43);
- { uint32_t x46; uint8_t x47 = _subborrow_u32(x44, x28, 0xffffffff, &x46);
- { uint32_t x49; uint8_t x50 = _subborrow_u32(x47, x31, 0xffffffff, &x49);
- { uint32_t x52; uint8_t x53 = _subborrow_u32(x50, x34, 0xffffffff, &x52);
- { uint32_t x55; uint8_t x56 = _subborrow_u32(x53, x37, 0xffffffff, &x55);
- { uint32_t x58; uint8_t x59 = _subborrow_u32(x56, x40, 0x3f, &x58);
- { uint32_t _; uint8_t x62 = _subborrow_u32(x59, x41, 0x0, &_);
- { uint32_t x63 = cmovznz32(x62, x58, x40);
- { uint32_t x64 = cmovznz32(x62, x55, x37);
- { uint32_t x65 = cmovznz32(x62, x52, x34);
- { uint32_t x66 = cmovznz32(x62, x49, x31);
- { uint32_t x67 = cmovznz32(x62, x46, x28);
- { uint32_t x68 = cmovznz32(x62, x43, x25);
- out[0] = x68;
- out[1] = x67;
- out[2] = x66;
- out[3] = x65;
- out[4] = x64;
- out[5] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e166m5_6limbs/feadd.v b/src/Specific/montgomery32_2e166m5_6limbs/feadd.v
deleted file mode 100644
index 5ede21213..000000000
--- a/src/Specific/montgomery32_2e166m5_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e166m5_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e166m5_6limbs/feaddDisplay.log b/src/Specific/montgomery32_2e166m5_6limbs/feaddDisplay.log
deleted file mode 100644
index 194e37fb2..000000000
--- a/src/Specific/montgomery32_2e166m5_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,26 +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,
- uint32_t x25, uint8_t x26 = addcarryx_u32(0x0, x5, x15);
- uint32_t x28, uint8_t x29 = addcarryx_u32(x26, x7, x17);
- uint32_t x31, uint8_t x32 = addcarryx_u32(x29, x9, x19);
- uint32_t x34, uint8_t x35 = addcarryx_u32(x32, x11, x21);
- uint32_t x37, uint8_t x38 = addcarryx_u32(x35, x13, x23);
- uint32_t x40, uint8_t x41 = addcarryx_u32(x38, x12, x22);
- uint32_t x43, uint8_t x44 = subborrow_u32(0x0, x25, 0xfffffffb);
- uint32_t x46, uint8_t x47 = subborrow_u32(x44, x28, 0xffffffff);
- uint32_t x49, uint8_t x50 = subborrow_u32(x47, x31, 0xffffffff);
- uint32_t x52, uint8_t x53 = subborrow_u32(x50, x34, 0xffffffff);
- uint32_t x55, uint8_t x56 = subborrow_u32(x53, x37, 0xffffffff);
- uint32_t x58, uint8_t x59 = subborrow_u32(x56, x40, 0x3f);
- uint32_t _, uint8_t x62 = subborrow_u32(x59, x41, 0x0);
- uint32_t x63 = cmovznz32(x62, x58, x40);
- uint32_t x64 = cmovznz32(x62, x55, x37);
- uint32_t x65 = cmovznz32(x62, x52, x34);
- uint32_t x66 = cmovznz32(x62, x49, x31);
- uint32_t x67 = cmovznz32(x62, x46, x28);
- uint32_t x68 = cmovznz32(x62, x43, x25);
- return (x63, x64, x65, x66, x67, x68))
-(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/montgomery32_2e166m5_6limbs/feaddDisplay.v b/src/Specific/montgomery32_2e166m5_6limbs/feaddDisplay.v
deleted file mode 100644
index 45d080280..000000000
--- a/src/Specific/montgomery32_2e166m5_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e166m5_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e166m5_6limbs/femul.c b/src/Specific/montgomery32_2e166m5_6limbs/femul.c
deleted file mode 100644
index b834472fd..000000000
--- a/src/Specific/montgomery32_2e166m5_6limbs/femul.c
+++ /dev/null
@@ -1,266 +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];
- { uint32_t x26; uint32_t x25 = _mulx_u32(x5, x15, &x26);
- { uint32_t x29; uint32_t x28 = _mulx_u32(x5, x17, &x29);
- { uint32_t x32; uint32_t x31 = _mulx_u32(x5, x19, &x32);
- { uint32_t x35; uint32_t x34 = _mulx_u32(x5, x21, &x35);
- { uint32_t x38; uint32_t x37 = _mulx_u32(x5, x23, &x38);
- { uint32_t x41; uint32_t x40 = _mulx_u32(x5, x22, &x41);
- { uint32_t x43; uint8_t x44 = _addcarryx_u32(0x0, x26, x28, &x43);
- { uint32_t x46; uint8_t x47 = _addcarryx_u32(x44, x29, x31, &x46);
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(x47, x32, x34, &x49);
- { uint32_t x52; uint8_t x53 = _addcarryx_u32(x50, x35, x37, &x52);
- { uint32_t x55; uint8_t x56 = _addcarryx_u32(x53, x38, x40, &x55);
- { uint32_t x58; uint8_t _ = _addcarryx_u32(0x0, x56, x41, &x58);
- { uint32_t _; uint32_t x61 = _mulx_u32(x25, 0xcccccccd, &_);
- { uint32_t x65; uint32_t x64 = _mulx_u32(x61, 0xfffffffb, &x65);
- { uint32_t x68; uint32_t x67 = _mulx_u32(x61, 0xffffffff, &x68);
- { uint32_t x71; uint32_t x70 = _mulx_u32(x61, 0xffffffff, &x71);
- { uint32_t x74; uint32_t x73 = _mulx_u32(x61, 0xffffffff, &x74);
- { uint32_t x77; uint32_t x76 = _mulx_u32(x61, 0xffffffff, &x77);
- { uint8_t x80; uint32_t x79 = _mulx_u32_out_u8(x61, 0x3f, &x80);
- { uint32_t x82; uint8_t x83 = _addcarryx_u32(0x0, x65, x67, &x82);
- { uint32_t x85; uint8_t x86 = _addcarryx_u32(x83, x68, x70, &x85);
- { uint32_t x88; uint8_t x89 = _addcarryx_u32(x86, x71, x73, &x88);
- { uint32_t x91; uint8_t x92 = _addcarryx_u32(x89, x74, x76, &x91);
- { uint32_t x94; uint8_t x95 = _addcarryx_u32(x92, x77, x79, &x94);
- { uint8_t x96 = (x95 + x80);
- { uint32_t _; uint8_t x99 = _addcarryx_u32(0x0, x25, x64, &_);
- { uint32_t x101; uint8_t x102 = _addcarryx_u32(x99, x43, x82, &x101);
- { uint32_t x104; uint8_t x105 = _addcarryx_u32(x102, x46, x85, &x104);
- { uint32_t x107; uint8_t x108 = _addcarryx_u32(x105, x49, x88, &x107);
- { uint32_t x110; uint8_t x111 = _addcarryx_u32(x108, x52, x91, &x110);
- { uint32_t x113; uint8_t x114 = _addcarryx_u32(x111, x55, x94, &x113);
- { uint32_t x116; uint8_t x117 = _addcarryx_u32(x114, x58, x96, &x116);
- { uint32_t x120; uint32_t x119 = _mulx_u32(x7, x15, &x120);
- { uint32_t x123; uint32_t x122 = _mulx_u32(x7, x17, &x123);
- { uint32_t x126; uint32_t x125 = _mulx_u32(x7, x19, &x126);
- { uint32_t x129; uint32_t x128 = _mulx_u32(x7, x21, &x129);
- { uint32_t x132; uint32_t x131 = _mulx_u32(x7, x23, &x132);
- { uint32_t x135; uint32_t x134 = _mulx_u32(x7, x22, &x135);
- { uint32_t x137; uint8_t x138 = _addcarryx_u32(0x0, x120, x122, &x137);
- { uint32_t x140; uint8_t x141 = _addcarryx_u32(x138, x123, x125, &x140);
- { uint32_t x143; uint8_t x144 = _addcarryx_u32(x141, x126, x128, &x143);
- { uint32_t x146; uint8_t x147 = _addcarryx_u32(x144, x129, x131, &x146);
- { uint32_t x149; uint8_t x150 = _addcarryx_u32(x147, x132, x134, &x149);
- { uint32_t x152; uint8_t _ = _addcarryx_u32(0x0, x150, x135, &x152);
- { uint32_t x155; uint8_t x156 = _addcarryx_u32(0x0, x101, x119, &x155);
- { uint32_t x158; uint8_t x159 = _addcarryx_u32(x156, x104, x137, &x158);
- { uint32_t x161; uint8_t x162 = _addcarryx_u32(x159, x107, x140, &x161);
- { uint32_t x164; uint8_t x165 = _addcarryx_u32(x162, x110, x143, &x164);
- { uint32_t x167; uint8_t x168 = _addcarryx_u32(x165, x113, x146, &x167);
- { uint32_t x170; uint8_t x171 = _addcarryx_u32(x168, x116, x149, &x170);
- { uint32_t x173; uint8_t x174 = _addcarryx_u32(x171, x117, x152, &x173);
- { uint32_t _; uint32_t x176 = _mulx_u32(x155, 0xcccccccd, &_);
- { uint32_t x180; uint32_t x179 = _mulx_u32(x176, 0xfffffffb, &x180);
- { uint32_t x183; uint32_t x182 = _mulx_u32(x176, 0xffffffff, &x183);
- { uint32_t x186; uint32_t x185 = _mulx_u32(x176, 0xffffffff, &x186);
- { uint32_t x189; uint32_t x188 = _mulx_u32(x176, 0xffffffff, &x189);
- { uint32_t x192; uint32_t x191 = _mulx_u32(x176, 0xffffffff, &x192);
- { uint8_t x195; uint32_t x194 = _mulx_u32_out_u8(x176, 0x3f, &x195);
- { uint32_t x197; uint8_t x198 = _addcarryx_u32(0x0, x180, x182, &x197);
- { uint32_t x200; uint8_t x201 = _addcarryx_u32(x198, x183, x185, &x200);
- { uint32_t x203; uint8_t x204 = _addcarryx_u32(x201, x186, x188, &x203);
- { uint32_t x206; uint8_t x207 = _addcarryx_u32(x204, x189, x191, &x206);
- { uint32_t x209; uint8_t x210 = _addcarryx_u32(x207, x192, x194, &x209);
- { uint8_t x211 = (x210 + x195);
- { uint32_t _; uint8_t x214 = _addcarryx_u32(0x0, x155, x179, &_);
- { uint32_t x216; uint8_t x217 = _addcarryx_u32(x214, x158, x197, &x216);
- { uint32_t x219; uint8_t x220 = _addcarryx_u32(x217, x161, x200, &x219);
- { uint32_t x222; uint8_t x223 = _addcarryx_u32(x220, x164, x203, &x222);
- { uint32_t x225; uint8_t x226 = _addcarryx_u32(x223, x167, x206, &x225);
- { uint32_t x228; uint8_t x229 = _addcarryx_u32(x226, x170, x209, &x228);
- { uint32_t x231; uint8_t x232 = _addcarryx_u32(x229, x173, x211, &x231);
- { uint8_t x233 = (x232 + x174);
- { uint32_t x236; uint32_t x235 = _mulx_u32(x9, x15, &x236);
- { uint32_t x239; uint32_t x238 = _mulx_u32(x9, x17, &x239);
- { uint32_t x242; uint32_t x241 = _mulx_u32(x9, x19, &x242);
- { uint32_t x245; uint32_t x244 = _mulx_u32(x9, x21, &x245);
- { uint32_t x248; uint32_t x247 = _mulx_u32(x9, x23, &x248);
- { uint32_t x251; uint32_t x250 = _mulx_u32(x9, x22, &x251);
- { uint32_t x253; uint8_t x254 = _addcarryx_u32(0x0, x236, x238, &x253);
- { uint32_t x256; uint8_t x257 = _addcarryx_u32(x254, x239, x241, &x256);
- { uint32_t x259; uint8_t x260 = _addcarryx_u32(x257, x242, x244, &x259);
- { uint32_t x262; uint8_t x263 = _addcarryx_u32(x260, x245, x247, &x262);
- { uint32_t x265; uint8_t x266 = _addcarryx_u32(x263, x248, x250, &x265);
- { uint32_t x268; uint8_t _ = _addcarryx_u32(0x0, x266, x251, &x268);
- { uint32_t x271; uint8_t x272 = _addcarryx_u32(0x0, x216, x235, &x271);
- { uint32_t x274; uint8_t x275 = _addcarryx_u32(x272, x219, x253, &x274);
- { uint32_t x277; uint8_t x278 = _addcarryx_u32(x275, x222, x256, &x277);
- { uint32_t x280; uint8_t x281 = _addcarryx_u32(x278, x225, x259, &x280);
- { uint32_t x283; uint8_t x284 = _addcarryx_u32(x281, x228, x262, &x283);
- { uint32_t x286; uint8_t x287 = _addcarryx_u32(x284, x231, x265, &x286);
- { uint32_t x289; uint8_t x290 = _addcarryx_u32(x287, x233, x268, &x289);
- { uint32_t _; uint32_t x292 = _mulx_u32(x271, 0xcccccccd, &_);
- { uint32_t x296; uint32_t x295 = _mulx_u32(x292, 0xfffffffb, &x296);
- { uint32_t x299; uint32_t x298 = _mulx_u32(x292, 0xffffffff, &x299);
- { uint32_t x302; uint32_t x301 = _mulx_u32(x292, 0xffffffff, &x302);
- { uint32_t x305; uint32_t x304 = _mulx_u32(x292, 0xffffffff, &x305);
- { uint32_t x308; uint32_t x307 = _mulx_u32(x292, 0xffffffff, &x308);
- { uint8_t x311; uint32_t x310 = _mulx_u32_out_u8(x292, 0x3f, &x311);
- { uint32_t x313; uint8_t x314 = _addcarryx_u32(0x0, x296, x298, &x313);
- { uint32_t x316; uint8_t x317 = _addcarryx_u32(x314, x299, x301, &x316);
- { uint32_t x319; uint8_t x320 = _addcarryx_u32(x317, x302, x304, &x319);
- { uint32_t x322; uint8_t x323 = _addcarryx_u32(x320, x305, x307, &x322);
- { uint32_t x325; uint8_t x326 = _addcarryx_u32(x323, x308, x310, &x325);
- { uint8_t x327 = (x326 + x311);
- { uint32_t _; uint8_t x330 = _addcarryx_u32(0x0, x271, x295, &_);
- { uint32_t x332; uint8_t x333 = _addcarryx_u32(x330, x274, x313, &x332);
- { uint32_t x335; uint8_t x336 = _addcarryx_u32(x333, x277, x316, &x335);
- { uint32_t x338; uint8_t x339 = _addcarryx_u32(x336, x280, x319, &x338);
- { uint32_t x341; uint8_t x342 = _addcarryx_u32(x339, x283, x322, &x341);
- { uint32_t x344; uint8_t x345 = _addcarryx_u32(x342, x286, x325, &x344);
- { uint32_t x347; uint8_t x348 = _addcarryx_u32(x345, x289, x327, &x347);
- { uint8_t x349 = (x348 + x290);
- { uint32_t x352; uint32_t x351 = _mulx_u32(x11, x15, &x352);
- { uint32_t x355; uint32_t x354 = _mulx_u32(x11, x17, &x355);
- { uint32_t x358; uint32_t x357 = _mulx_u32(x11, x19, &x358);
- { uint32_t x361; uint32_t x360 = _mulx_u32(x11, x21, &x361);
- { uint32_t x364; uint32_t x363 = _mulx_u32(x11, x23, &x364);
- { uint32_t x367; uint32_t x366 = _mulx_u32(x11, x22, &x367);
- { uint32_t x369; uint8_t x370 = _addcarryx_u32(0x0, x352, x354, &x369);
- { uint32_t x372; uint8_t x373 = _addcarryx_u32(x370, x355, x357, &x372);
- { uint32_t x375; uint8_t x376 = _addcarryx_u32(x373, x358, x360, &x375);
- { uint32_t x378; uint8_t x379 = _addcarryx_u32(x376, x361, x363, &x378);
- { uint32_t x381; uint8_t x382 = _addcarryx_u32(x379, x364, x366, &x381);
- { uint32_t x384; uint8_t _ = _addcarryx_u32(0x0, x382, x367, &x384);
- { uint32_t x387; uint8_t x388 = _addcarryx_u32(0x0, x332, x351, &x387);
- { uint32_t x390; uint8_t x391 = _addcarryx_u32(x388, x335, x369, &x390);
- { uint32_t x393; uint8_t x394 = _addcarryx_u32(x391, x338, x372, &x393);
- { uint32_t x396; uint8_t x397 = _addcarryx_u32(x394, x341, x375, &x396);
- { uint32_t x399; uint8_t x400 = _addcarryx_u32(x397, x344, x378, &x399);
- { uint32_t x402; uint8_t x403 = _addcarryx_u32(x400, x347, x381, &x402);
- { uint32_t x405; uint8_t x406 = _addcarryx_u32(x403, x349, x384, &x405);
- { uint32_t _; uint32_t x408 = _mulx_u32(x387, 0xcccccccd, &_);
- { uint32_t x412; uint32_t x411 = _mulx_u32(x408, 0xfffffffb, &x412);
- { uint32_t x415; uint32_t x414 = _mulx_u32(x408, 0xffffffff, &x415);
- { uint32_t x418; uint32_t x417 = _mulx_u32(x408, 0xffffffff, &x418);
- { uint32_t x421; uint32_t x420 = _mulx_u32(x408, 0xffffffff, &x421);
- { uint32_t x424; uint32_t x423 = _mulx_u32(x408, 0xffffffff, &x424);
- { uint8_t x427; uint32_t x426 = _mulx_u32_out_u8(x408, 0x3f, &x427);
- { uint32_t x429; uint8_t x430 = _addcarryx_u32(0x0, x412, x414, &x429);
- { uint32_t x432; uint8_t x433 = _addcarryx_u32(x430, x415, x417, &x432);
- { uint32_t x435; uint8_t x436 = _addcarryx_u32(x433, x418, x420, &x435);
- { uint32_t x438; uint8_t x439 = _addcarryx_u32(x436, x421, x423, &x438);
- { uint32_t x441; uint8_t x442 = _addcarryx_u32(x439, x424, x426, &x441);
- { uint8_t x443 = (x442 + x427);
- { uint32_t _; uint8_t x446 = _addcarryx_u32(0x0, x387, x411, &_);
- { uint32_t x448; uint8_t x449 = _addcarryx_u32(x446, x390, x429, &x448);
- { uint32_t x451; uint8_t x452 = _addcarryx_u32(x449, x393, x432, &x451);
- { uint32_t x454; uint8_t x455 = _addcarryx_u32(x452, x396, x435, &x454);
- { uint32_t x457; uint8_t x458 = _addcarryx_u32(x455, x399, x438, &x457);
- { uint32_t x460; uint8_t x461 = _addcarryx_u32(x458, x402, x441, &x460);
- { uint32_t x463; uint8_t x464 = _addcarryx_u32(x461, x405, x443, &x463);
- { uint8_t x465 = (x464 + x406);
- { uint32_t x468; uint32_t x467 = _mulx_u32(x13, x15, &x468);
- { uint32_t x471; uint32_t x470 = _mulx_u32(x13, x17, &x471);
- { uint32_t x474; uint32_t x473 = _mulx_u32(x13, x19, &x474);
- { uint32_t x477; uint32_t x476 = _mulx_u32(x13, x21, &x477);
- { uint32_t x480; uint32_t x479 = _mulx_u32(x13, x23, &x480);
- { uint32_t x483; uint32_t x482 = _mulx_u32(x13, x22, &x483);
- { uint32_t x485; uint8_t x486 = _addcarryx_u32(0x0, x468, x470, &x485);
- { uint32_t x488; uint8_t x489 = _addcarryx_u32(x486, x471, x473, &x488);
- { uint32_t x491; uint8_t x492 = _addcarryx_u32(x489, x474, x476, &x491);
- { uint32_t x494; uint8_t x495 = _addcarryx_u32(x492, x477, x479, &x494);
- { uint32_t x497; uint8_t x498 = _addcarryx_u32(x495, x480, x482, &x497);
- { uint32_t x500; uint8_t _ = _addcarryx_u32(0x0, x498, x483, &x500);
- { uint32_t x503; uint8_t x504 = _addcarryx_u32(0x0, x448, x467, &x503);
- { uint32_t x506; uint8_t x507 = _addcarryx_u32(x504, x451, x485, &x506);
- { uint32_t x509; uint8_t x510 = _addcarryx_u32(x507, x454, x488, &x509);
- { uint32_t x512; uint8_t x513 = _addcarryx_u32(x510, x457, x491, &x512);
- { uint32_t x515; uint8_t x516 = _addcarryx_u32(x513, x460, x494, &x515);
- { uint32_t x518; uint8_t x519 = _addcarryx_u32(x516, x463, x497, &x518);
- { uint32_t x521; uint8_t x522 = _addcarryx_u32(x519, x465, x500, &x521);
- { uint32_t _; uint32_t x524 = _mulx_u32(x503, 0xcccccccd, &_);
- { uint32_t x528; uint32_t x527 = _mulx_u32(x524, 0xfffffffb, &x528);
- { uint32_t x531; uint32_t x530 = _mulx_u32(x524, 0xffffffff, &x531);
- { uint32_t x534; uint32_t x533 = _mulx_u32(x524, 0xffffffff, &x534);
- { uint32_t x537; uint32_t x536 = _mulx_u32(x524, 0xffffffff, &x537);
- { uint32_t x540; uint32_t x539 = _mulx_u32(x524, 0xffffffff, &x540);
- { uint8_t x543; uint32_t x542 = _mulx_u32_out_u8(x524, 0x3f, &x543);
- { uint32_t x545; uint8_t x546 = _addcarryx_u32(0x0, x528, x530, &x545);
- { uint32_t x548; uint8_t x549 = _addcarryx_u32(x546, x531, x533, &x548);
- { uint32_t x551; uint8_t x552 = _addcarryx_u32(x549, x534, x536, &x551);
- { uint32_t x554; uint8_t x555 = _addcarryx_u32(x552, x537, x539, &x554);
- { uint32_t x557; uint8_t x558 = _addcarryx_u32(x555, x540, x542, &x557);
- { uint8_t x559 = (x558 + x543);
- { uint32_t _; uint8_t x562 = _addcarryx_u32(0x0, x503, x527, &_);
- { uint32_t x564; uint8_t x565 = _addcarryx_u32(x562, x506, x545, &x564);
- { uint32_t x567; uint8_t x568 = _addcarryx_u32(x565, x509, x548, &x567);
- { uint32_t x570; uint8_t x571 = _addcarryx_u32(x568, x512, x551, &x570);
- { uint32_t x573; uint8_t x574 = _addcarryx_u32(x571, x515, x554, &x573);
- { uint32_t x576; uint8_t x577 = _addcarryx_u32(x574, x518, x557, &x576);
- { uint32_t x579; uint8_t x580 = _addcarryx_u32(x577, x521, x559, &x579);
- { uint8_t x581 = (x580 + x522);
- { uint32_t x584; uint32_t x583 = _mulx_u32(x12, x15, &x584);
- { uint32_t x587; uint32_t x586 = _mulx_u32(x12, x17, &x587);
- { uint32_t x590; uint32_t x589 = _mulx_u32(x12, x19, &x590);
- { uint32_t x593; uint32_t x592 = _mulx_u32(x12, x21, &x593);
- { uint32_t x596; uint32_t x595 = _mulx_u32(x12, x23, &x596);
- { uint32_t x599; uint32_t x598 = _mulx_u32(x12, x22, &x599);
- { uint32_t x601; uint8_t x602 = _addcarryx_u32(0x0, x584, x586, &x601);
- { uint32_t x604; uint8_t x605 = _addcarryx_u32(x602, x587, x589, &x604);
- { uint32_t x607; uint8_t x608 = _addcarryx_u32(x605, x590, x592, &x607);
- { uint32_t x610; uint8_t x611 = _addcarryx_u32(x608, x593, x595, &x610);
- { uint32_t x613; uint8_t x614 = _addcarryx_u32(x611, x596, x598, &x613);
- { uint32_t x616; uint8_t _ = _addcarryx_u32(0x0, x614, x599, &x616);
- { uint32_t x619; uint8_t x620 = _addcarryx_u32(0x0, x564, x583, &x619);
- { uint32_t x622; uint8_t x623 = _addcarryx_u32(x620, x567, x601, &x622);
- { uint32_t x625; uint8_t x626 = _addcarryx_u32(x623, x570, x604, &x625);
- { uint32_t x628; uint8_t x629 = _addcarryx_u32(x626, x573, x607, &x628);
- { uint32_t x631; uint8_t x632 = _addcarryx_u32(x629, x576, x610, &x631);
- { uint32_t x634; uint8_t x635 = _addcarryx_u32(x632, x579, x613, &x634);
- { uint32_t x637; uint8_t x638 = _addcarryx_u32(x635, x581, x616, &x637);
- { uint32_t _; uint32_t x640 = _mulx_u32(x619, 0xcccccccd, &_);
- { uint32_t x644; uint32_t x643 = _mulx_u32(x640, 0xfffffffb, &x644);
- { uint32_t x647; uint32_t x646 = _mulx_u32(x640, 0xffffffff, &x647);
- { uint32_t x650; uint32_t x649 = _mulx_u32(x640, 0xffffffff, &x650);
- { uint32_t x653; uint32_t x652 = _mulx_u32(x640, 0xffffffff, &x653);
- { uint32_t x656; uint32_t x655 = _mulx_u32(x640, 0xffffffff, &x656);
- { uint8_t x659; uint32_t x658 = _mulx_u32_out_u8(x640, 0x3f, &x659);
- { uint32_t x661; uint8_t x662 = _addcarryx_u32(0x0, x644, x646, &x661);
- { uint32_t x664; uint8_t x665 = _addcarryx_u32(x662, x647, x649, &x664);
- { uint32_t x667; uint8_t x668 = _addcarryx_u32(x665, x650, x652, &x667);
- { uint32_t x670; uint8_t x671 = _addcarryx_u32(x668, x653, x655, &x670);
- { uint32_t x673; uint8_t x674 = _addcarryx_u32(x671, x656, x658, &x673);
- { uint8_t x675 = (x674 + x659);
- { uint32_t _; uint8_t x678 = _addcarryx_u32(0x0, x619, x643, &_);
- { uint32_t x680; uint8_t x681 = _addcarryx_u32(x678, x622, x661, &x680);
- { uint32_t x683; uint8_t x684 = _addcarryx_u32(x681, x625, x664, &x683);
- { uint32_t x686; uint8_t x687 = _addcarryx_u32(x684, x628, x667, &x686);
- { uint32_t x689; uint8_t x690 = _addcarryx_u32(x687, x631, x670, &x689);
- { uint32_t x692; uint8_t x693 = _addcarryx_u32(x690, x634, x673, &x692);
- { uint32_t x695; uint8_t x696 = _addcarryx_u32(x693, x637, x675, &x695);
- { uint8_t x697 = (x696 + x638);
- { uint32_t x699; uint8_t x700 = _subborrow_u32(0x0, x680, 0xfffffffb, &x699);
- { uint32_t x702; uint8_t x703 = _subborrow_u32(x700, x683, 0xffffffff, &x702);
- { uint32_t x705; uint8_t x706 = _subborrow_u32(x703, x686, 0xffffffff, &x705);
- { uint32_t x708; uint8_t x709 = _subborrow_u32(x706, x689, 0xffffffff, &x708);
- { uint32_t x711; uint8_t x712 = _subborrow_u32(x709, x692, 0xffffffff, &x711);
- { uint32_t x714; uint8_t x715 = _subborrow_u32(x712, x695, 0x3f, &x714);
- { uint32_t _; uint8_t x718 = _subborrow_u32(x715, x697, 0x0, &_);
- { uint32_t x719 = cmovznz32(x718, x714, x695);
- { uint32_t x720 = cmovznz32(x718, x711, x692);
- { uint32_t x721 = cmovznz32(x718, x708, x689);
- { uint32_t x722 = cmovznz32(x718, x705, x686);
- { uint32_t x723 = cmovznz32(x718, x702, x683);
- { uint32_t x724 = cmovznz32(x718, x699, x680);
- out[0] = x724;
- out[1] = x723;
- out[2] = x722;
- out[3] = x721;
- out[4] = x720;
- out[5] = x719;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e166m5_6limbs/femul.v b/src/Specific/montgomery32_2e166m5_6limbs/femul.v
deleted file mode 100644
index da8ceb05f..000000000
--- a/src/Specific/montgomery32_2e166m5_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e166m5_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e166m5_6limbs/femulDisplay.log b/src/Specific/montgomery32_2e166m5_6limbs/femulDisplay.log
deleted file mode 100644
index 7202f403c..000000000
--- a/src/Specific/montgomery32_2e166m5_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,252 +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,
- uint32_t x25, uint32_t x26 = mulx_u32(x5, x15);
- uint32_t x28, uint32_t x29 = mulx_u32(x5, x17);
- uint32_t x31, uint32_t x32 = mulx_u32(x5, x19);
- uint32_t x34, uint32_t x35 = mulx_u32(x5, x21);
- uint32_t x37, uint32_t x38 = mulx_u32(x5, x23);
- uint32_t x40, uint32_t x41 = mulx_u32(x5, x22);
- uint32_t x43, uint8_t x44 = addcarryx_u32(0x0, x26, x28);
- uint32_t x46, uint8_t x47 = addcarryx_u32(x44, x29, x31);
- uint32_t x49, uint8_t x50 = addcarryx_u32(x47, x32, x34);
- uint32_t x52, uint8_t x53 = addcarryx_u32(x50, x35, x37);
- uint32_t x55, uint8_t x56 = addcarryx_u32(x53, x38, x40);
- uint32_t x58, uint8_t _ = addcarryx_u32(0x0, x56, x41);
- uint32_t x61, uint32_t _ = mulx_u32(x25, 0xcccccccd);
- uint32_t x64, uint32_t x65 = mulx_u32(x61, 0xfffffffb);
- uint32_t x67, uint32_t x68 = mulx_u32(x61, 0xffffffff);
- uint32_t x70, uint32_t x71 = mulx_u32(x61, 0xffffffff);
- uint32_t x73, uint32_t x74 = mulx_u32(x61, 0xffffffff);
- uint32_t x76, uint32_t x77 = mulx_u32(x61, 0xffffffff);
- uint32_t x79, uint8_t x80 = mulx_u32_out_u8(x61, 0x3f);
- uint32_t x82, uint8_t x83 = addcarryx_u32(0x0, x65, x67);
- uint32_t x85, uint8_t x86 = addcarryx_u32(x83, x68, x70);
- uint32_t x88, uint8_t x89 = addcarryx_u32(x86, x71, x73);
- uint32_t x91, uint8_t x92 = addcarryx_u32(x89, x74, x76);
- uint32_t x94, uint8_t x95 = addcarryx_u32(x92, x77, x79);
- uint8_t x96 = (x95 + x80);
- uint32_t _, uint8_t x99 = addcarryx_u32(0x0, x25, x64);
- uint32_t x101, uint8_t x102 = addcarryx_u32(x99, x43, x82);
- uint32_t x104, uint8_t x105 = addcarryx_u32(x102, x46, x85);
- uint32_t x107, uint8_t x108 = addcarryx_u32(x105, x49, x88);
- uint32_t x110, uint8_t x111 = addcarryx_u32(x108, x52, x91);
- uint32_t x113, uint8_t x114 = addcarryx_u32(x111, x55, x94);
- uint32_t x116, uint8_t x117 = addcarryx_u32(x114, x58, x96);
- uint32_t x119, uint32_t x120 = mulx_u32(x7, x15);
- uint32_t x122, uint32_t x123 = mulx_u32(x7, x17);
- uint32_t x125, uint32_t x126 = mulx_u32(x7, x19);
- uint32_t x128, uint32_t x129 = mulx_u32(x7, x21);
- uint32_t x131, uint32_t x132 = mulx_u32(x7, x23);
- uint32_t x134, uint32_t x135 = mulx_u32(x7, x22);
- uint32_t x137, uint8_t x138 = addcarryx_u32(0x0, x120, x122);
- uint32_t x140, uint8_t x141 = addcarryx_u32(x138, x123, x125);
- uint32_t x143, uint8_t x144 = addcarryx_u32(x141, x126, x128);
- uint32_t x146, uint8_t x147 = addcarryx_u32(x144, x129, x131);
- uint32_t x149, uint8_t x150 = addcarryx_u32(x147, x132, x134);
- uint32_t x152, uint8_t _ = addcarryx_u32(0x0, x150, x135);
- uint32_t x155, uint8_t x156 = addcarryx_u32(0x0, x101, x119);
- uint32_t x158, uint8_t x159 = addcarryx_u32(x156, x104, x137);
- uint32_t x161, uint8_t x162 = addcarryx_u32(x159, x107, x140);
- uint32_t x164, uint8_t x165 = addcarryx_u32(x162, x110, x143);
- uint32_t x167, uint8_t x168 = addcarryx_u32(x165, x113, x146);
- uint32_t x170, uint8_t x171 = addcarryx_u32(x168, x116, x149);
- uint32_t x173, uint8_t x174 = addcarryx_u32(x171, x117, x152);
- uint32_t x176, uint32_t _ = mulx_u32(x155, 0xcccccccd);
- uint32_t x179, uint32_t x180 = mulx_u32(x176, 0xfffffffb);
- uint32_t x182, uint32_t x183 = mulx_u32(x176, 0xffffffff);
- uint32_t x185, uint32_t x186 = mulx_u32(x176, 0xffffffff);
- uint32_t x188, uint32_t x189 = mulx_u32(x176, 0xffffffff);
- uint32_t x191, uint32_t x192 = mulx_u32(x176, 0xffffffff);
- uint32_t x194, uint8_t x195 = mulx_u32_out_u8(x176, 0x3f);
- uint32_t x197, uint8_t x198 = addcarryx_u32(0x0, x180, x182);
- uint32_t x200, uint8_t x201 = addcarryx_u32(x198, x183, x185);
- uint32_t x203, uint8_t x204 = addcarryx_u32(x201, x186, x188);
- uint32_t x206, uint8_t x207 = addcarryx_u32(x204, x189, x191);
- uint32_t x209, uint8_t x210 = addcarryx_u32(x207, x192, x194);
- uint8_t x211 = (x210 + x195);
- uint32_t _, uint8_t x214 = addcarryx_u32(0x0, x155, x179);
- uint32_t x216, uint8_t x217 = addcarryx_u32(x214, x158, x197);
- uint32_t x219, uint8_t x220 = addcarryx_u32(x217, x161, x200);
- uint32_t x222, uint8_t x223 = addcarryx_u32(x220, x164, x203);
- uint32_t x225, uint8_t x226 = addcarryx_u32(x223, x167, x206);
- uint32_t x228, uint8_t x229 = addcarryx_u32(x226, x170, x209);
- uint32_t x231, uint8_t x232 = addcarryx_u32(x229, x173, x211);
- uint8_t x233 = (x232 + x174);
- uint32_t x235, uint32_t x236 = mulx_u32(x9, x15);
- uint32_t x238, uint32_t x239 = mulx_u32(x9, x17);
- uint32_t x241, uint32_t x242 = mulx_u32(x9, x19);
- uint32_t x244, uint32_t x245 = mulx_u32(x9, x21);
- uint32_t x247, uint32_t x248 = mulx_u32(x9, x23);
- uint32_t x250, uint32_t x251 = mulx_u32(x9, x22);
- uint32_t x253, uint8_t x254 = addcarryx_u32(0x0, x236, x238);
- uint32_t x256, uint8_t x257 = addcarryx_u32(x254, x239, x241);
- uint32_t x259, uint8_t x260 = addcarryx_u32(x257, x242, x244);
- uint32_t x262, uint8_t x263 = addcarryx_u32(x260, x245, x247);
- uint32_t x265, uint8_t x266 = addcarryx_u32(x263, x248, x250);
- uint32_t x268, uint8_t _ = addcarryx_u32(0x0, x266, x251);
- uint32_t x271, uint8_t x272 = addcarryx_u32(0x0, x216, x235);
- uint32_t x274, uint8_t x275 = addcarryx_u32(x272, x219, x253);
- uint32_t x277, uint8_t x278 = addcarryx_u32(x275, x222, x256);
- uint32_t x280, uint8_t x281 = addcarryx_u32(x278, x225, x259);
- uint32_t x283, uint8_t x284 = addcarryx_u32(x281, x228, x262);
- uint32_t x286, uint8_t x287 = addcarryx_u32(x284, x231, x265);
- uint32_t x289, uint8_t x290 = addcarryx_u32(x287, x233, x268);
- uint32_t x292, uint32_t _ = mulx_u32(x271, 0xcccccccd);
- uint32_t x295, uint32_t x296 = mulx_u32(x292, 0xfffffffb);
- uint32_t x298, uint32_t x299 = mulx_u32(x292, 0xffffffff);
- uint32_t x301, uint32_t x302 = mulx_u32(x292, 0xffffffff);
- uint32_t x304, uint32_t x305 = mulx_u32(x292, 0xffffffff);
- uint32_t x307, uint32_t x308 = mulx_u32(x292, 0xffffffff);
- uint32_t x310, uint8_t x311 = mulx_u32_out_u8(x292, 0x3f);
- uint32_t x313, uint8_t x314 = addcarryx_u32(0x0, x296, x298);
- uint32_t x316, uint8_t x317 = addcarryx_u32(x314, x299, x301);
- uint32_t x319, uint8_t x320 = addcarryx_u32(x317, x302, x304);
- uint32_t x322, uint8_t x323 = addcarryx_u32(x320, x305, x307);
- uint32_t x325, uint8_t x326 = addcarryx_u32(x323, x308, x310);
- uint8_t x327 = (x326 + x311);
- uint32_t _, uint8_t x330 = addcarryx_u32(0x0, x271, x295);
- uint32_t x332, uint8_t x333 = addcarryx_u32(x330, x274, x313);
- uint32_t x335, uint8_t x336 = addcarryx_u32(x333, x277, x316);
- uint32_t x338, uint8_t x339 = addcarryx_u32(x336, x280, x319);
- uint32_t x341, uint8_t x342 = addcarryx_u32(x339, x283, x322);
- uint32_t x344, uint8_t x345 = addcarryx_u32(x342, x286, x325);
- uint32_t x347, uint8_t x348 = addcarryx_u32(x345, x289, x327);
- uint8_t x349 = (x348 + x290);
- uint32_t x351, uint32_t x352 = mulx_u32(x11, x15);
- uint32_t x354, uint32_t x355 = mulx_u32(x11, x17);
- uint32_t x357, uint32_t x358 = mulx_u32(x11, x19);
- uint32_t x360, uint32_t x361 = mulx_u32(x11, x21);
- uint32_t x363, uint32_t x364 = mulx_u32(x11, x23);
- uint32_t x366, uint32_t x367 = mulx_u32(x11, x22);
- uint32_t x369, uint8_t x370 = addcarryx_u32(0x0, x352, x354);
- uint32_t x372, uint8_t x373 = addcarryx_u32(x370, x355, x357);
- uint32_t x375, uint8_t x376 = addcarryx_u32(x373, x358, x360);
- uint32_t x378, uint8_t x379 = addcarryx_u32(x376, x361, x363);
- uint32_t x381, uint8_t x382 = addcarryx_u32(x379, x364, x366);
- uint32_t x384, uint8_t _ = addcarryx_u32(0x0, x382, x367);
- uint32_t x387, uint8_t x388 = addcarryx_u32(0x0, x332, x351);
- uint32_t x390, uint8_t x391 = addcarryx_u32(x388, x335, x369);
- uint32_t x393, uint8_t x394 = addcarryx_u32(x391, x338, x372);
- uint32_t x396, uint8_t x397 = addcarryx_u32(x394, x341, x375);
- uint32_t x399, uint8_t x400 = addcarryx_u32(x397, x344, x378);
- uint32_t x402, uint8_t x403 = addcarryx_u32(x400, x347, x381);
- uint32_t x405, uint8_t x406 = addcarryx_u32(x403, x349, x384);
- uint32_t x408, uint32_t _ = mulx_u32(x387, 0xcccccccd);
- uint32_t x411, uint32_t x412 = mulx_u32(x408, 0xfffffffb);
- uint32_t x414, uint32_t x415 = mulx_u32(x408, 0xffffffff);
- uint32_t x417, uint32_t x418 = mulx_u32(x408, 0xffffffff);
- uint32_t x420, uint32_t x421 = mulx_u32(x408, 0xffffffff);
- uint32_t x423, uint32_t x424 = mulx_u32(x408, 0xffffffff);
- uint32_t x426, uint8_t x427 = mulx_u32_out_u8(x408, 0x3f);
- uint32_t x429, uint8_t x430 = addcarryx_u32(0x0, x412, x414);
- uint32_t x432, uint8_t x433 = addcarryx_u32(x430, x415, x417);
- uint32_t x435, uint8_t x436 = addcarryx_u32(x433, x418, x420);
- uint32_t x438, uint8_t x439 = addcarryx_u32(x436, x421, x423);
- uint32_t x441, uint8_t x442 = addcarryx_u32(x439, x424, x426);
- uint8_t x443 = (x442 + x427);
- uint32_t _, uint8_t x446 = addcarryx_u32(0x0, x387, x411);
- uint32_t x448, uint8_t x449 = addcarryx_u32(x446, x390, x429);
- uint32_t x451, uint8_t x452 = addcarryx_u32(x449, x393, x432);
- uint32_t x454, uint8_t x455 = addcarryx_u32(x452, x396, x435);
- uint32_t x457, uint8_t x458 = addcarryx_u32(x455, x399, x438);
- uint32_t x460, uint8_t x461 = addcarryx_u32(x458, x402, x441);
- uint32_t x463, uint8_t x464 = addcarryx_u32(x461, x405, x443);
- uint8_t x465 = (x464 + x406);
- uint32_t x467, uint32_t x468 = mulx_u32(x13, x15);
- uint32_t x470, uint32_t x471 = mulx_u32(x13, x17);
- uint32_t x473, uint32_t x474 = mulx_u32(x13, x19);
- uint32_t x476, uint32_t x477 = mulx_u32(x13, x21);
- uint32_t x479, uint32_t x480 = mulx_u32(x13, x23);
- uint32_t x482, uint32_t x483 = mulx_u32(x13, x22);
- uint32_t x485, uint8_t x486 = addcarryx_u32(0x0, x468, x470);
- uint32_t x488, uint8_t x489 = addcarryx_u32(x486, x471, x473);
- uint32_t x491, uint8_t x492 = addcarryx_u32(x489, x474, x476);
- uint32_t x494, uint8_t x495 = addcarryx_u32(x492, x477, x479);
- uint32_t x497, uint8_t x498 = addcarryx_u32(x495, x480, x482);
- uint32_t x500, uint8_t _ = addcarryx_u32(0x0, x498, x483);
- uint32_t x503, uint8_t x504 = addcarryx_u32(0x0, x448, x467);
- uint32_t x506, uint8_t x507 = addcarryx_u32(x504, x451, x485);
- uint32_t x509, uint8_t x510 = addcarryx_u32(x507, x454, x488);
- uint32_t x512, uint8_t x513 = addcarryx_u32(x510, x457, x491);
- uint32_t x515, uint8_t x516 = addcarryx_u32(x513, x460, x494);
- uint32_t x518, uint8_t x519 = addcarryx_u32(x516, x463, x497);
- uint32_t x521, uint8_t x522 = addcarryx_u32(x519, x465, x500);
- uint32_t x524, uint32_t _ = mulx_u32(x503, 0xcccccccd);
- uint32_t x527, uint32_t x528 = mulx_u32(x524, 0xfffffffb);
- uint32_t x530, uint32_t x531 = mulx_u32(x524, 0xffffffff);
- uint32_t x533, uint32_t x534 = mulx_u32(x524, 0xffffffff);
- uint32_t x536, uint32_t x537 = mulx_u32(x524, 0xffffffff);
- uint32_t x539, uint32_t x540 = mulx_u32(x524, 0xffffffff);
- uint32_t x542, uint8_t x543 = mulx_u32_out_u8(x524, 0x3f);
- uint32_t x545, uint8_t x546 = addcarryx_u32(0x0, x528, x530);
- uint32_t x548, uint8_t x549 = addcarryx_u32(x546, x531, x533);
- uint32_t x551, uint8_t x552 = addcarryx_u32(x549, x534, x536);
- uint32_t x554, uint8_t x555 = addcarryx_u32(x552, x537, x539);
- uint32_t x557, uint8_t x558 = addcarryx_u32(x555, x540, x542);
- uint8_t x559 = (x558 + x543);
- uint32_t _, uint8_t x562 = addcarryx_u32(0x0, x503, x527);
- uint32_t x564, uint8_t x565 = addcarryx_u32(x562, x506, x545);
- uint32_t x567, uint8_t x568 = addcarryx_u32(x565, x509, x548);
- uint32_t x570, uint8_t x571 = addcarryx_u32(x568, x512, x551);
- uint32_t x573, uint8_t x574 = addcarryx_u32(x571, x515, x554);
- uint32_t x576, uint8_t x577 = addcarryx_u32(x574, x518, x557);
- uint32_t x579, uint8_t x580 = addcarryx_u32(x577, x521, x559);
- uint8_t x581 = (x580 + x522);
- uint32_t x583, uint32_t x584 = mulx_u32(x12, x15);
- uint32_t x586, uint32_t x587 = mulx_u32(x12, x17);
- uint32_t x589, uint32_t x590 = mulx_u32(x12, x19);
- uint32_t x592, uint32_t x593 = mulx_u32(x12, x21);
- uint32_t x595, uint32_t x596 = mulx_u32(x12, x23);
- uint32_t x598, uint32_t x599 = mulx_u32(x12, x22);
- uint32_t x601, uint8_t x602 = addcarryx_u32(0x0, x584, x586);
- uint32_t x604, uint8_t x605 = addcarryx_u32(x602, x587, x589);
- uint32_t x607, uint8_t x608 = addcarryx_u32(x605, x590, x592);
- uint32_t x610, uint8_t x611 = addcarryx_u32(x608, x593, x595);
- uint32_t x613, uint8_t x614 = addcarryx_u32(x611, x596, x598);
- uint32_t x616, uint8_t _ = addcarryx_u32(0x0, x614, x599);
- uint32_t x619, uint8_t x620 = addcarryx_u32(0x0, x564, x583);
- uint32_t x622, uint8_t x623 = addcarryx_u32(x620, x567, x601);
- uint32_t x625, uint8_t x626 = addcarryx_u32(x623, x570, x604);
- uint32_t x628, uint8_t x629 = addcarryx_u32(x626, x573, x607);
- uint32_t x631, uint8_t x632 = addcarryx_u32(x629, x576, x610);
- uint32_t x634, uint8_t x635 = addcarryx_u32(x632, x579, x613);
- uint32_t x637, uint8_t x638 = addcarryx_u32(x635, x581, x616);
- uint32_t x640, uint32_t _ = mulx_u32(x619, 0xcccccccd);
- uint32_t x643, uint32_t x644 = mulx_u32(x640, 0xfffffffb);
- uint32_t x646, uint32_t x647 = mulx_u32(x640, 0xffffffff);
- uint32_t x649, uint32_t x650 = mulx_u32(x640, 0xffffffff);
- uint32_t x652, uint32_t x653 = mulx_u32(x640, 0xffffffff);
- uint32_t x655, uint32_t x656 = mulx_u32(x640, 0xffffffff);
- uint32_t x658, uint8_t x659 = mulx_u32_out_u8(x640, 0x3f);
- uint32_t x661, uint8_t x662 = addcarryx_u32(0x0, x644, x646);
- uint32_t x664, uint8_t x665 = addcarryx_u32(x662, x647, x649);
- uint32_t x667, uint8_t x668 = addcarryx_u32(x665, x650, x652);
- uint32_t x670, uint8_t x671 = addcarryx_u32(x668, x653, x655);
- uint32_t x673, uint8_t x674 = addcarryx_u32(x671, x656, x658);
- uint8_t x675 = (x674 + x659);
- uint32_t _, uint8_t x678 = addcarryx_u32(0x0, x619, x643);
- uint32_t x680, uint8_t x681 = addcarryx_u32(x678, x622, x661);
- uint32_t x683, uint8_t x684 = addcarryx_u32(x681, x625, x664);
- uint32_t x686, uint8_t x687 = addcarryx_u32(x684, x628, x667);
- uint32_t x689, uint8_t x690 = addcarryx_u32(x687, x631, x670);
- uint32_t x692, uint8_t x693 = addcarryx_u32(x690, x634, x673);
- uint32_t x695, uint8_t x696 = addcarryx_u32(x693, x637, x675);
- uint8_t x697 = (x696 + x638);
- uint32_t x699, uint8_t x700 = subborrow_u32(0x0, x680, 0xfffffffb);
- uint32_t x702, uint8_t x703 = subborrow_u32(x700, x683, 0xffffffff);
- uint32_t x705, uint8_t x706 = subborrow_u32(x703, x686, 0xffffffff);
- uint32_t x708, uint8_t x709 = subborrow_u32(x706, x689, 0xffffffff);
- uint32_t x711, uint8_t x712 = subborrow_u32(x709, x692, 0xffffffff);
- uint32_t x714, uint8_t x715 = subborrow_u32(x712, x695, 0x3f);
- uint32_t _, uint8_t x718 = subborrow_u32(x715, x697, 0x0);
- uint32_t x719 = cmovznz32(x718, x714, x695);
- uint32_t x720 = cmovznz32(x718, x711, x692);
- uint32_t x721 = cmovznz32(x718, x708, x689);
- uint32_t x722 = cmovznz32(x718, x705, x686);
- uint32_t x723 = cmovznz32(x718, x702, x683);
- uint32_t x724 = cmovznz32(x718, x699, x680);
- return (x719, x720, x721, x722, x723, x724))
-(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/montgomery32_2e166m5_6limbs/femulDisplay.v b/src/Specific/montgomery32_2e166m5_6limbs/femulDisplay.v
deleted file mode 100644
index ef490d3b8..000000000
--- a/src/Specific/montgomery32_2e166m5_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e166m5_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e166m5_6limbs/fenz.c b/src/Specific/montgomery32_2e166m5_6limbs/fenz.c
deleted file mode 100644
index 2e0454af1..000000000
--- a/src/Specific/montgomery32_2e166m5_6limbs/fenz.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], 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 x11 = (x10 | x9);
- { uint32_t x12 = (x8 | x11);
- { uint32_t x13 = (x6 | x12);
- { uint32_t x14 = (x4 | x13);
- { uint32_t x15 = (x2 | x14);
- out[0] = x15;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e166m5_6limbs/fenz.v b/src/Specific/montgomery32_2e166m5_6limbs/fenz.v
deleted file mode 100644
index f2faf3cde..000000000
--- a/src/Specific/montgomery32_2e166m5_6limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e166m5_6limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e166m5_6limbs/fenzDisplay.log b/src/Specific/montgomery32_2e166m5_6limbs/fenzDisplay.log
deleted file mode 100644
index 616138b7b..000000000
--- a/src/Specific/montgomery32_2e166m5_6limbs/fenzDisplay.log
+++ /dev/null
@@ -1,12 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint32_t x11 = (x10 | x9);
- uint32_t x12 = (x8 | x11);
- uint32_t x13 = (x6 | x12);
- uint32_t x14 = (x4 | x13);
- uint32_t x15 = (x2 | x14);
- return x15)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e166m5_6limbs/fenzDisplay.v b/src/Specific/montgomery32_2e166m5_6limbs/fenzDisplay.v
deleted file mode 100644
index ff598cdd8..000000000
--- a/src/Specific/montgomery32_2e166m5_6limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e166m5_6limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e166m5_6limbs/feopp.c b/src/Specific/montgomery32_2e166m5_6limbs/feopp.c
deleted file mode 100644
index d9caf7596..000000000
--- a/src/Specific/montgomery32_2e166m5_6limbs/feopp.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feopp(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 = _subborrow_u32(0x0, 0x0, x2, &x12);
- { uint32_t x15; uint8_t x16 = _subborrow_u32(x13, 0x0, x4, &x15);
- { uint32_t x18; uint8_t x19 = _subborrow_u32(x16, 0x0, x6, &x18);
- { uint32_t x21; uint8_t x22 = _subborrow_u32(x19, 0x0, x8, &x21);
- { uint32_t x24; uint8_t x25 = _subborrow_u32(x22, 0x0, x10, &x24);
- { uint32_t x27; uint8_t x28 = _subborrow_u32(x25, 0x0, x9, &x27);
- { uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- { uint32_t x30 = (x29 & 0xfffffffb);
- { uint32_t x32; uint8_t x33 = _addcarryx_u32(0x0, x12, x30, &x32);
- { uint32_t x34 = (x29 & 0xffffffff);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(x33, x15, x34, &x36);
- { uint32_t x38 = (x29 & 0xffffffff);
- { uint32_t x40; uint8_t x41 = _addcarryx_u32(x37, x18, x38, &x40);
- { uint32_t x42 = (x29 & 0xffffffff);
- { uint32_t x44; uint8_t x45 = _addcarryx_u32(x41, x21, x42, &x44);
- { uint32_t x46 = (x29 & 0xffffffff);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x45, x24, x46, &x48);
- { uint8_t x50 = ((uint8_t)x29 & 0x3f);
- { uint32_t x52; uint8_t _ = _addcarryx_u32(x49, x27, x50, &x52);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e166m5_6limbs/feopp.v b/src/Specific/montgomery32_2e166m5_6limbs/feopp.v
deleted file mode 100644
index 7cce66503..000000000
--- a/src/Specific/montgomery32_2e166m5_6limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e166m5_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e166m5_6limbs/feoppDisplay.log b/src/Specific/montgomery32_2e166m5_6limbs/feoppDisplay.log
deleted file mode 100644
index 8b39a6b4e..000000000
--- a/src/Specific/montgomery32_2e166m5_6limbs/feoppDisplay.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 = subborrow_u32(0x0, 0x0, x2);
- uint32_t x15, uint8_t x16 = subborrow_u32(x13, 0x0, x4);
- uint32_t x18, uint8_t x19 = subborrow_u32(x16, 0x0, x6);
- uint32_t x21, uint8_t x22 = subborrow_u32(x19, 0x0, x8);
- uint32_t x24, uint8_t x25 = subborrow_u32(x22, 0x0, x10);
- uint32_t x27, uint8_t x28 = subborrow_u32(x25, 0x0, x9);
- uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- uint32_t x30 = (x29 & 0xfffffffb);
- uint32_t x32, uint8_t x33 = addcarryx_u32(0x0, x12, x30);
- uint32_t x34 = (x29 & 0xffffffff);
- uint32_t x36, uint8_t x37 = addcarryx_u32(x33, x15, x34);
- uint32_t x38 = (x29 & 0xffffffff);
- uint32_t x40, uint8_t x41 = addcarryx_u32(x37, x18, x38);
- uint32_t x42 = (x29 & 0xffffffff);
- uint32_t x44, uint8_t x45 = addcarryx_u32(x41, x21, x42);
- uint32_t x46 = (x29 & 0xffffffff);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x45, x24, x46);
- uint8_t x50 = ((uint8_t)x29 & 0x3f);
- uint32_t x52, uint8_t _ = addcarryx_u32(x49, x27, 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/montgomery32_2e166m5_6limbs/feoppDisplay.v b/src/Specific/montgomery32_2e166m5_6limbs/feoppDisplay.v
deleted file mode 100644
index f4bf79759..000000000
--- a/src/Specific/montgomery32_2e166m5_6limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e166m5_6limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e166m5_6limbs/fesquare.c b/src/Specific/montgomery32_2e166m5_6limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e166m5_6limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e166m5_6limbs/fesub.c b/src/Specific/montgomery32_2e166m5_6limbs/fesub.c
deleted file mode 100644
index 5ce4a0e74..000000000
--- a/src/Specific/montgomery32_2e166m5_6limbs/fesub.c
+++ /dev/null
@@ -1,40 +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];
- { uint32_t x25; uint8_t x26 = _subborrow_u32(0x0, x5, x15, &x25);
- { uint32_t x28; uint8_t x29 = _subborrow_u32(x26, x7, x17, &x28);
- { uint32_t x31; uint8_t x32 = _subborrow_u32(x29, x9, x19, &x31);
- { uint32_t x34; uint8_t x35 = _subborrow_u32(x32, x11, x21, &x34);
- { uint32_t x37; uint8_t x38 = _subborrow_u32(x35, x13, x23, &x37);
- { uint32_t x40; uint8_t x41 = _subborrow_u32(x38, x12, x22, &x40);
- { uint32_t x42 = cmovznz32(x41, 0x0, 0xffffffff);
- { uint32_t x43 = (x42 & 0xfffffffb);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(0x0, x25, x43, &x45);
- { uint32_t x47 = (x42 & 0xffffffff);
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(x46, x28, x47, &x49);
- { uint32_t x51 = (x42 & 0xffffffff);
- { uint32_t x53; uint8_t x54 = _addcarryx_u32(x50, x31, x51, &x53);
- { uint32_t x55 = (x42 & 0xffffffff);
- { uint32_t x57; uint8_t x58 = _addcarryx_u32(x54, x34, x55, &x57);
- { uint32_t x59 = (x42 & 0xffffffff);
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(x58, x37, x59, &x61);
- { uint8_t x63 = ((uint8_t)x42 & 0x3f);
- { uint32_t x65; uint8_t _ = _addcarryx_u32(x62, x40, x63, &x65);
- out[0] = x45;
- out[1] = x49;
- out[2] = x53;
- out[3] = x57;
- out[4] = x61;
- out[5] = x65;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e166m5_6limbs/fesub.v b/src/Specific/montgomery32_2e166m5_6limbs/fesub.v
deleted file mode 100644
index 6f40465e7..000000000
--- a/src/Specific/montgomery32_2e166m5_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e166m5_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e166m5_6limbs/fesubDisplay.log b/src/Specific/montgomery32_2e166m5_6limbs/fesubDisplay.log
deleted file mode 100644
index 5b6f35fd1..000000000
--- a/src/Specific/montgomery32_2e166m5_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,26 +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,
- uint32_t x25, uint8_t x26 = subborrow_u32(0x0, x5, x15);
- uint32_t x28, uint8_t x29 = subborrow_u32(x26, x7, x17);
- uint32_t x31, uint8_t x32 = subborrow_u32(x29, x9, x19);
- uint32_t x34, uint8_t x35 = subborrow_u32(x32, x11, x21);
- uint32_t x37, uint8_t x38 = subborrow_u32(x35, x13, x23);
- uint32_t x40, uint8_t x41 = subborrow_u32(x38, x12, x22);
- uint32_t x42 = cmovznz32(x41, 0x0, 0xffffffff);
- uint32_t x43 = (x42 & 0xfffffffb);
- uint32_t x45, uint8_t x46 = addcarryx_u32(0x0, x25, x43);
- uint32_t x47 = (x42 & 0xffffffff);
- uint32_t x49, uint8_t x50 = addcarryx_u32(x46, x28, x47);
- uint32_t x51 = (x42 & 0xffffffff);
- uint32_t x53, uint8_t x54 = addcarryx_u32(x50, x31, x51);
- uint32_t x55 = (x42 & 0xffffffff);
- uint32_t x57, uint8_t x58 = addcarryx_u32(x54, x34, x55);
- uint32_t x59 = (x42 & 0xffffffff);
- uint32_t x61, uint8_t x62 = addcarryx_u32(x58, x37, x59);
- uint8_t x63 = ((uint8_t)x42 & 0x3f);
- uint32_t x65, uint8_t _ = addcarryx_u32(x62, x40, x63);
- (Return x65, Return x61, Return x57, Return x53, Return x49, Return x45))
-(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/montgomery32_2e166m5_6limbs/fesubDisplay.v b/src/Specific/montgomery32_2e166m5_6limbs/fesubDisplay.v
deleted file mode 100644
index d219fea11..000000000
--- a/src/Specific/montgomery32_2e166m5_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e166m5_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e166m5_6limbs/py_interpreter.sh b/src/Specific/montgomery32_2e166m5_6limbs/py_interpreter.sh
deleted file mode 100755
index 8d5ad5dcf..000000000
--- a/src/Specific/montgomery32_2e166m5_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**166 - 5' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e171m19_6limbs/CurveParameters.v b/src/Specific/montgomery32_2e171m19_6limbs/CurveParameters.v
deleted file mode 100644
index 54b82b346..000000000
--- a/src/Specific/montgomery32_2e171m19_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^171 - 19
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 32;
- bitwidth := 32;
- s := 2^171;
- c := [(1, 19)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e171m19_6limbs/Synthesis.v b/src/Specific/montgomery32_2e171m19_6limbs/Synthesis.v
deleted file mode 100644
index 6e0e62bb8..000000000
--- a/src/Specific/montgomery32_2e171m19_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e171m19_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/montgomery32_2e171m19_6limbs/compiler.sh b/src/Specific/montgomery32_2e171m19_6limbs/compiler.sh
deleted file mode 100755
index d24f69337..000000000
--- a/src/Specific/montgomery32_2e171m19_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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<171) - 19' "$@"
diff --git a/src/Specific/montgomery32_2e171m19_6limbs/compilerxx.sh b/src/Specific/montgomery32_2e171m19_6limbs/compilerxx.sh
deleted file mode 100755
index 6893e0b3c..000000000
--- a/src/Specific/montgomery32_2e171m19_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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<171) - 19' "$@"
diff --git a/src/Specific/montgomery32_2e171m19_6limbs/feadd.c b/src/Specific/montgomery32_2e171m19_6limbs/feadd.c
deleted file mode 100644
index 85dcc582d..000000000
--- a/src/Specific/montgomery32_2e171m19_6limbs/feadd.c
+++ /dev/null
@@ -1,40 +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];
- { uint32_t x25; uint8_t x26 = _addcarryx_u32(0x0, x5, x15, &x25);
- { uint32_t x28; uint8_t x29 = _addcarryx_u32(x26, x7, x17, &x28);
- { uint32_t x31; uint8_t x32 = _addcarryx_u32(x29, x9, x19, &x31);
- { uint32_t x34; uint8_t x35 = _addcarryx_u32(x32, x11, x21, &x34);
- { uint32_t x37; uint8_t x38 = _addcarryx_u32(x35, x13, x23, &x37);
- { uint32_t x40; uint8_t x41 = _addcarryx_u32(x38, x12, x22, &x40);
- { uint32_t x43; uint8_t x44 = _subborrow_u32(0x0, x25, 0xffffffed, &x43);
- { uint32_t x46; uint8_t x47 = _subborrow_u32(x44, x28, 0xffffffff, &x46);
- { uint32_t x49; uint8_t x50 = _subborrow_u32(x47, x31, 0xffffffff, &x49);
- { uint32_t x52; uint8_t x53 = _subborrow_u32(x50, x34, 0xffffffff, &x52);
- { uint32_t x55; uint8_t x56 = _subborrow_u32(x53, x37, 0xffffffff, &x55);
- { uint32_t x58; uint8_t x59 = _subborrow_u32(x56, x40, 0x7ff, &x58);
- { uint32_t _; uint8_t x62 = _subborrow_u32(x59, x41, 0x0, &_);
- { uint32_t x63 = cmovznz32(x62, x58, x40);
- { uint32_t x64 = cmovznz32(x62, x55, x37);
- { uint32_t x65 = cmovznz32(x62, x52, x34);
- { uint32_t x66 = cmovznz32(x62, x49, x31);
- { uint32_t x67 = cmovznz32(x62, x46, x28);
- { uint32_t x68 = cmovznz32(x62, x43, x25);
- out[0] = x68;
- out[1] = x67;
- out[2] = x66;
- out[3] = x65;
- out[4] = x64;
- out[5] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e171m19_6limbs/feadd.v b/src/Specific/montgomery32_2e171m19_6limbs/feadd.v
deleted file mode 100644
index a14e0b391..000000000
--- a/src/Specific/montgomery32_2e171m19_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e171m19_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e171m19_6limbs/feaddDisplay.log b/src/Specific/montgomery32_2e171m19_6limbs/feaddDisplay.log
deleted file mode 100644
index 4a39a15c4..000000000
--- a/src/Specific/montgomery32_2e171m19_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,26 +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,
- uint32_t x25, uint8_t x26 = addcarryx_u32(0x0, x5, x15);
- uint32_t x28, uint8_t x29 = addcarryx_u32(x26, x7, x17);
- uint32_t x31, uint8_t x32 = addcarryx_u32(x29, x9, x19);
- uint32_t x34, uint8_t x35 = addcarryx_u32(x32, x11, x21);
- uint32_t x37, uint8_t x38 = addcarryx_u32(x35, x13, x23);
- uint32_t x40, uint8_t x41 = addcarryx_u32(x38, x12, x22);
- uint32_t x43, uint8_t x44 = subborrow_u32(0x0, x25, 0xffffffed);
- uint32_t x46, uint8_t x47 = subborrow_u32(x44, x28, 0xffffffff);
- uint32_t x49, uint8_t x50 = subborrow_u32(x47, x31, 0xffffffff);
- uint32_t x52, uint8_t x53 = subborrow_u32(x50, x34, 0xffffffff);
- uint32_t x55, uint8_t x56 = subborrow_u32(x53, x37, 0xffffffff);
- uint32_t x58, uint8_t x59 = subborrow_u32(x56, x40, 0x7ff);
- uint32_t _, uint8_t x62 = subborrow_u32(x59, x41, 0x0);
- uint32_t x63 = cmovznz32(x62, x58, x40);
- uint32_t x64 = cmovznz32(x62, x55, x37);
- uint32_t x65 = cmovznz32(x62, x52, x34);
- uint32_t x66 = cmovznz32(x62, x49, x31);
- uint32_t x67 = cmovznz32(x62, x46, x28);
- uint32_t x68 = cmovznz32(x62, x43, x25);
- return (x63, x64, x65, x66, x67, x68))
-(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/montgomery32_2e171m19_6limbs/feaddDisplay.v b/src/Specific/montgomery32_2e171m19_6limbs/feaddDisplay.v
deleted file mode 100644
index e423d3403..000000000
--- a/src/Specific/montgomery32_2e171m19_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e171m19_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e171m19_6limbs/femul.c b/src/Specific/montgomery32_2e171m19_6limbs/femul.c
deleted file mode 100644
index e41566974..000000000
--- a/src/Specific/montgomery32_2e171m19_6limbs/femul.c
+++ /dev/null
@@ -1,266 +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];
- { uint32_t x26; uint32_t x25 = _mulx_u32(x5, x15, &x26);
- { uint32_t x29; uint32_t x28 = _mulx_u32(x5, x17, &x29);
- { uint32_t x32; uint32_t x31 = _mulx_u32(x5, x19, &x32);
- { uint32_t x35; uint32_t x34 = _mulx_u32(x5, x21, &x35);
- { uint32_t x38; uint32_t x37 = _mulx_u32(x5, x23, &x38);
- { uint32_t x41; uint32_t x40 = _mulx_u32(x5, x22, &x41);
- { uint32_t x43; uint8_t x44 = _addcarryx_u32(0x0, x26, x28, &x43);
- { uint32_t x46; uint8_t x47 = _addcarryx_u32(x44, x29, x31, &x46);
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(x47, x32, x34, &x49);
- { uint32_t x52; uint8_t x53 = _addcarryx_u32(x50, x35, x37, &x52);
- { uint32_t x55; uint8_t x56 = _addcarryx_u32(x53, x38, x40, &x55);
- { uint32_t x58; uint8_t _ = _addcarryx_u32(0x0, x56, x41, &x58);
- { uint32_t _; uint32_t x61 = _mulx_u32(x25, 0x286bca1b, &_);
- { uint32_t x65; uint32_t x64 = _mulx_u32(x61, 0xffffffed, &x65);
- { uint32_t x68; uint32_t x67 = _mulx_u32(x61, 0xffffffff, &x68);
- { uint32_t x71; uint32_t x70 = _mulx_u32(x61, 0xffffffff, &x71);
- { uint32_t x74; uint32_t x73 = _mulx_u32(x61, 0xffffffff, &x74);
- { uint32_t x77; uint32_t x76 = _mulx_u32(x61, 0xffffffff, &x77);
- { uint32_t x80; uint32_t x79 = _mulx_u32(x61, 0x7ff, &x80);
- { uint32_t x82; uint8_t x83 = _addcarryx_u32(0x0, x65, x67, &x82);
- { uint32_t x85; uint8_t x86 = _addcarryx_u32(x83, x68, x70, &x85);
- { uint32_t x88; uint8_t x89 = _addcarryx_u32(x86, x71, x73, &x88);
- { uint32_t x91; uint8_t x92 = _addcarryx_u32(x89, x74, x76, &x91);
- { uint32_t x94; uint8_t x95 = _addcarryx_u32(x92, x77, x79, &x94);
- { uint32_t x97; uint8_t _ = _addcarryx_u32(0x0, x95, x80, &x97);
- { uint32_t _; uint8_t x101 = _addcarryx_u32(0x0, x25, x64, &_);
- { uint32_t x103; uint8_t x104 = _addcarryx_u32(x101, x43, x82, &x103);
- { uint32_t x106; uint8_t x107 = _addcarryx_u32(x104, x46, x85, &x106);
- { uint32_t x109; uint8_t x110 = _addcarryx_u32(x107, x49, x88, &x109);
- { uint32_t x112; uint8_t x113 = _addcarryx_u32(x110, x52, x91, &x112);
- { uint32_t x115; uint8_t x116 = _addcarryx_u32(x113, x55, x94, &x115);
- { uint32_t x118; uint8_t x119 = _addcarryx_u32(x116, x58, x97, &x118);
- { uint32_t x122; uint32_t x121 = _mulx_u32(x7, x15, &x122);
- { uint32_t x125; uint32_t x124 = _mulx_u32(x7, x17, &x125);
- { uint32_t x128; uint32_t x127 = _mulx_u32(x7, x19, &x128);
- { uint32_t x131; uint32_t x130 = _mulx_u32(x7, x21, &x131);
- { uint32_t x134; uint32_t x133 = _mulx_u32(x7, x23, &x134);
- { uint32_t x137; uint32_t x136 = _mulx_u32(x7, x22, &x137);
- { uint32_t x139; uint8_t x140 = _addcarryx_u32(0x0, x122, x124, &x139);
- { uint32_t x142; uint8_t x143 = _addcarryx_u32(x140, x125, x127, &x142);
- { uint32_t x145; uint8_t x146 = _addcarryx_u32(x143, x128, x130, &x145);
- { uint32_t x148; uint8_t x149 = _addcarryx_u32(x146, x131, x133, &x148);
- { uint32_t x151; uint8_t x152 = _addcarryx_u32(x149, x134, x136, &x151);
- { uint32_t x154; uint8_t _ = _addcarryx_u32(0x0, x152, x137, &x154);
- { uint32_t x157; uint8_t x158 = _addcarryx_u32(0x0, x103, x121, &x157);
- { uint32_t x160; uint8_t x161 = _addcarryx_u32(x158, x106, x139, &x160);
- { uint32_t x163; uint8_t x164 = _addcarryx_u32(x161, x109, x142, &x163);
- { uint32_t x166; uint8_t x167 = _addcarryx_u32(x164, x112, x145, &x166);
- { uint32_t x169; uint8_t x170 = _addcarryx_u32(x167, x115, x148, &x169);
- { uint32_t x172; uint8_t x173 = _addcarryx_u32(x170, x118, x151, &x172);
- { uint32_t x175; uint8_t x176 = _addcarryx_u32(x173, x119, x154, &x175);
- { uint32_t _; uint32_t x178 = _mulx_u32(x157, 0x286bca1b, &_);
- { uint32_t x182; uint32_t x181 = _mulx_u32(x178, 0xffffffed, &x182);
- { uint32_t x185; uint32_t x184 = _mulx_u32(x178, 0xffffffff, &x185);
- { uint32_t x188; uint32_t x187 = _mulx_u32(x178, 0xffffffff, &x188);
- { uint32_t x191; uint32_t x190 = _mulx_u32(x178, 0xffffffff, &x191);
- { uint32_t x194; uint32_t x193 = _mulx_u32(x178, 0xffffffff, &x194);
- { uint32_t x197; uint32_t x196 = _mulx_u32(x178, 0x7ff, &x197);
- { uint32_t x199; uint8_t x200 = _addcarryx_u32(0x0, x182, x184, &x199);
- { uint32_t x202; uint8_t x203 = _addcarryx_u32(x200, x185, x187, &x202);
- { uint32_t x205; uint8_t x206 = _addcarryx_u32(x203, x188, x190, &x205);
- { uint32_t x208; uint8_t x209 = _addcarryx_u32(x206, x191, x193, &x208);
- { uint32_t x211; uint8_t x212 = _addcarryx_u32(x209, x194, x196, &x211);
- { uint32_t x214; uint8_t _ = _addcarryx_u32(0x0, x212, x197, &x214);
- { uint32_t _; uint8_t x218 = _addcarryx_u32(0x0, x157, x181, &_);
- { uint32_t x220; uint8_t x221 = _addcarryx_u32(x218, x160, x199, &x220);
- { uint32_t x223; uint8_t x224 = _addcarryx_u32(x221, x163, x202, &x223);
- { uint32_t x226; uint8_t x227 = _addcarryx_u32(x224, x166, x205, &x226);
- { uint32_t x229; uint8_t x230 = _addcarryx_u32(x227, x169, x208, &x229);
- { uint32_t x232; uint8_t x233 = _addcarryx_u32(x230, x172, x211, &x232);
- { uint32_t x235; uint8_t x236 = _addcarryx_u32(x233, x175, x214, &x235);
- { uint8_t x237 = (x236 + x176);
- { uint32_t x240; uint32_t x239 = _mulx_u32(x9, x15, &x240);
- { uint32_t x243; uint32_t x242 = _mulx_u32(x9, x17, &x243);
- { uint32_t x246; uint32_t x245 = _mulx_u32(x9, x19, &x246);
- { uint32_t x249; uint32_t x248 = _mulx_u32(x9, x21, &x249);
- { uint32_t x252; uint32_t x251 = _mulx_u32(x9, x23, &x252);
- { uint32_t x255; uint32_t x254 = _mulx_u32(x9, x22, &x255);
- { uint32_t x257; uint8_t x258 = _addcarryx_u32(0x0, x240, x242, &x257);
- { uint32_t x260; uint8_t x261 = _addcarryx_u32(x258, x243, x245, &x260);
- { uint32_t x263; uint8_t x264 = _addcarryx_u32(x261, x246, x248, &x263);
- { uint32_t x266; uint8_t x267 = _addcarryx_u32(x264, x249, x251, &x266);
- { uint32_t x269; uint8_t x270 = _addcarryx_u32(x267, x252, x254, &x269);
- { uint32_t x272; uint8_t _ = _addcarryx_u32(0x0, x270, x255, &x272);
- { uint32_t x275; uint8_t x276 = _addcarryx_u32(0x0, x220, x239, &x275);
- { uint32_t x278; uint8_t x279 = _addcarryx_u32(x276, x223, x257, &x278);
- { uint32_t x281; uint8_t x282 = _addcarryx_u32(x279, x226, x260, &x281);
- { uint32_t x284; uint8_t x285 = _addcarryx_u32(x282, x229, x263, &x284);
- { uint32_t x287; uint8_t x288 = _addcarryx_u32(x285, x232, x266, &x287);
- { uint32_t x290; uint8_t x291 = _addcarryx_u32(x288, x235, x269, &x290);
- { uint32_t x293; uint8_t x294 = _addcarryx_u32(x291, x237, x272, &x293);
- { uint32_t _; uint32_t x296 = _mulx_u32(x275, 0x286bca1b, &_);
- { uint32_t x300; uint32_t x299 = _mulx_u32(x296, 0xffffffed, &x300);
- { uint32_t x303; uint32_t x302 = _mulx_u32(x296, 0xffffffff, &x303);
- { uint32_t x306; uint32_t x305 = _mulx_u32(x296, 0xffffffff, &x306);
- { uint32_t x309; uint32_t x308 = _mulx_u32(x296, 0xffffffff, &x309);
- { uint32_t x312; uint32_t x311 = _mulx_u32(x296, 0xffffffff, &x312);
- { uint32_t x315; uint32_t x314 = _mulx_u32(x296, 0x7ff, &x315);
- { uint32_t x317; uint8_t x318 = _addcarryx_u32(0x0, x300, x302, &x317);
- { uint32_t x320; uint8_t x321 = _addcarryx_u32(x318, x303, x305, &x320);
- { uint32_t x323; uint8_t x324 = _addcarryx_u32(x321, x306, x308, &x323);
- { uint32_t x326; uint8_t x327 = _addcarryx_u32(x324, x309, x311, &x326);
- { uint32_t x329; uint8_t x330 = _addcarryx_u32(x327, x312, x314, &x329);
- { uint32_t x332; uint8_t _ = _addcarryx_u32(0x0, x330, x315, &x332);
- { uint32_t _; uint8_t x336 = _addcarryx_u32(0x0, x275, x299, &_);
- { uint32_t x338; uint8_t x339 = _addcarryx_u32(x336, x278, x317, &x338);
- { uint32_t x341; uint8_t x342 = _addcarryx_u32(x339, x281, x320, &x341);
- { uint32_t x344; uint8_t x345 = _addcarryx_u32(x342, x284, x323, &x344);
- { uint32_t x347; uint8_t x348 = _addcarryx_u32(x345, x287, x326, &x347);
- { uint32_t x350; uint8_t x351 = _addcarryx_u32(x348, x290, x329, &x350);
- { uint32_t x353; uint8_t x354 = _addcarryx_u32(x351, x293, x332, &x353);
- { uint8_t x355 = (x354 + x294);
- { uint32_t x358; uint32_t x357 = _mulx_u32(x11, x15, &x358);
- { uint32_t x361; uint32_t x360 = _mulx_u32(x11, x17, &x361);
- { uint32_t x364; uint32_t x363 = _mulx_u32(x11, x19, &x364);
- { uint32_t x367; uint32_t x366 = _mulx_u32(x11, x21, &x367);
- { uint32_t x370; uint32_t x369 = _mulx_u32(x11, x23, &x370);
- { uint32_t x373; uint32_t x372 = _mulx_u32(x11, x22, &x373);
- { uint32_t x375; uint8_t x376 = _addcarryx_u32(0x0, x358, x360, &x375);
- { uint32_t x378; uint8_t x379 = _addcarryx_u32(x376, x361, x363, &x378);
- { uint32_t x381; uint8_t x382 = _addcarryx_u32(x379, x364, x366, &x381);
- { uint32_t x384; uint8_t x385 = _addcarryx_u32(x382, x367, x369, &x384);
- { uint32_t x387; uint8_t x388 = _addcarryx_u32(x385, x370, x372, &x387);
- { uint32_t x390; uint8_t _ = _addcarryx_u32(0x0, x388, x373, &x390);
- { uint32_t x393; uint8_t x394 = _addcarryx_u32(0x0, x338, x357, &x393);
- { uint32_t x396; uint8_t x397 = _addcarryx_u32(x394, x341, x375, &x396);
- { uint32_t x399; uint8_t x400 = _addcarryx_u32(x397, x344, x378, &x399);
- { uint32_t x402; uint8_t x403 = _addcarryx_u32(x400, x347, x381, &x402);
- { uint32_t x405; uint8_t x406 = _addcarryx_u32(x403, x350, x384, &x405);
- { uint32_t x408; uint8_t x409 = _addcarryx_u32(x406, x353, x387, &x408);
- { uint32_t x411; uint8_t x412 = _addcarryx_u32(x409, x355, x390, &x411);
- { uint32_t _; uint32_t x414 = _mulx_u32(x393, 0x286bca1b, &_);
- { uint32_t x418; uint32_t x417 = _mulx_u32(x414, 0xffffffed, &x418);
- { uint32_t x421; uint32_t x420 = _mulx_u32(x414, 0xffffffff, &x421);
- { uint32_t x424; uint32_t x423 = _mulx_u32(x414, 0xffffffff, &x424);
- { uint32_t x427; uint32_t x426 = _mulx_u32(x414, 0xffffffff, &x427);
- { uint32_t x430; uint32_t x429 = _mulx_u32(x414, 0xffffffff, &x430);
- { uint32_t x433; uint32_t x432 = _mulx_u32(x414, 0x7ff, &x433);
- { uint32_t x435; uint8_t x436 = _addcarryx_u32(0x0, x418, x420, &x435);
- { uint32_t x438; uint8_t x439 = _addcarryx_u32(x436, x421, x423, &x438);
- { uint32_t x441; uint8_t x442 = _addcarryx_u32(x439, x424, x426, &x441);
- { uint32_t x444; uint8_t x445 = _addcarryx_u32(x442, x427, x429, &x444);
- { uint32_t x447; uint8_t x448 = _addcarryx_u32(x445, x430, x432, &x447);
- { uint32_t x450; uint8_t _ = _addcarryx_u32(0x0, x448, x433, &x450);
- { uint32_t _; uint8_t x454 = _addcarryx_u32(0x0, x393, x417, &_);
- { uint32_t x456; uint8_t x457 = _addcarryx_u32(x454, x396, x435, &x456);
- { uint32_t x459; uint8_t x460 = _addcarryx_u32(x457, x399, x438, &x459);
- { uint32_t x462; uint8_t x463 = _addcarryx_u32(x460, x402, x441, &x462);
- { uint32_t x465; uint8_t x466 = _addcarryx_u32(x463, x405, x444, &x465);
- { uint32_t x468; uint8_t x469 = _addcarryx_u32(x466, x408, x447, &x468);
- { uint32_t x471; uint8_t x472 = _addcarryx_u32(x469, x411, x450, &x471);
- { uint8_t x473 = (x472 + x412);
- { uint32_t x476; uint32_t x475 = _mulx_u32(x13, x15, &x476);
- { uint32_t x479; uint32_t x478 = _mulx_u32(x13, x17, &x479);
- { uint32_t x482; uint32_t x481 = _mulx_u32(x13, x19, &x482);
- { uint32_t x485; uint32_t x484 = _mulx_u32(x13, x21, &x485);
- { uint32_t x488; uint32_t x487 = _mulx_u32(x13, x23, &x488);
- { uint32_t x491; uint32_t x490 = _mulx_u32(x13, x22, &x491);
- { uint32_t x493; uint8_t x494 = _addcarryx_u32(0x0, x476, x478, &x493);
- { uint32_t x496; uint8_t x497 = _addcarryx_u32(x494, x479, x481, &x496);
- { uint32_t x499; uint8_t x500 = _addcarryx_u32(x497, x482, x484, &x499);
- { uint32_t x502; uint8_t x503 = _addcarryx_u32(x500, x485, x487, &x502);
- { uint32_t x505; uint8_t x506 = _addcarryx_u32(x503, x488, x490, &x505);
- { uint32_t x508; uint8_t _ = _addcarryx_u32(0x0, x506, x491, &x508);
- { uint32_t x511; uint8_t x512 = _addcarryx_u32(0x0, x456, x475, &x511);
- { uint32_t x514; uint8_t x515 = _addcarryx_u32(x512, x459, x493, &x514);
- { uint32_t x517; uint8_t x518 = _addcarryx_u32(x515, x462, x496, &x517);
- { uint32_t x520; uint8_t x521 = _addcarryx_u32(x518, x465, x499, &x520);
- { uint32_t x523; uint8_t x524 = _addcarryx_u32(x521, x468, x502, &x523);
- { uint32_t x526; uint8_t x527 = _addcarryx_u32(x524, x471, x505, &x526);
- { uint32_t x529; uint8_t x530 = _addcarryx_u32(x527, x473, x508, &x529);
- { uint32_t _; uint32_t x532 = _mulx_u32(x511, 0x286bca1b, &_);
- { uint32_t x536; uint32_t x535 = _mulx_u32(x532, 0xffffffed, &x536);
- { uint32_t x539; uint32_t x538 = _mulx_u32(x532, 0xffffffff, &x539);
- { uint32_t x542; uint32_t x541 = _mulx_u32(x532, 0xffffffff, &x542);
- { uint32_t x545; uint32_t x544 = _mulx_u32(x532, 0xffffffff, &x545);
- { uint32_t x548; uint32_t x547 = _mulx_u32(x532, 0xffffffff, &x548);
- { uint32_t x551; uint32_t x550 = _mulx_u32(x532, 0x7ff, &x551);
- { uint32_t x553; uint8_t x554 = _addcarryx_u32(0x0, x536, x538, &x553);
- { uint32_t x556; uint8_t x557 = _addcarryx_u32(x554, x539, x541, &x556);
- { uint32_t x559; uint8_t x560 = _addcarryx_u32(x557, x542, x544, &x559);
- { uint32_t x562; uint8_t x563 = _addcarryx_u32(x560, x545, x547, &x562);
- { uint32_t x565; uint8_t x566 = _addcarryx_u32(x563, x548, x550, &x565);
- { uint32_t x568; uint8_t _ = _addcarryx_u32(0x0, x566, x551, &x568);
- { uint32_t _; uint8_t x572 = _addcarryx_u32(0x0, x511, x535, &_);
- { uint32_t x574; uint8_t x575 = _addcarryx_u32(x572, x514, x553, &x574);
- { uint32_t x577; uint8_t x578 = _addcarryx_u32(x575, x517, x556, &x577);
- { uint32_t x580; uint8_t x581 = _addcarryx_u32(x578, x520, x559, &x580);
- { uint32_t x583; uint8_t x584 = _addcarryx_u32(x581, x523, x562, &x583);
- { uint32_t x586; uint8_t x587 = _addcarryx_u32(x584, x526, x565, &x586);
- { uint32_t x589; uint8_t x590 = _addcarryx_u32(x587, x529, x568, &x589);
- { uint8_t x591 = (x590 + x530);
- { uint32_t x594; uint32_t x593 = _mulx_u32(x12, x15, &x594);
- { uint32_t x597; uint32_t x596 = _mulx_u32(x12, x17, &x597);
- { uint32_t x600; uint32_t x599 = _mulx_u32(x12, x19, &x600);
- { uint32_t x603; uint32_t x602 = _mulx_u32(x12, x21, &x603);
- { uint32_t x606; uint32_t x605 = _mulx_u32(x12, x23, &x606);
- { uint32_t x609; uint32_t x608 = _mulx_u32(x12, x22, &x609);
- { uint32_t x611; uint8_t x612 = _addcarryx_u32(0x0, x594, x596, &x611);
- { uint32_t x614; uint8_t x615 = _addcarryx_u32(x612, x597, x599, &x614);
- { uint32_t x617; uint8_t x618 = _addcarryx_u32(x615, x600, x602, &x617);
- { uint32_t x620; uint8_t x621 = _addcarryx_u32(x618, x603, x605, &x620);
- { uint32_t x623; uint8_t x624 = _addcarryx_u32(x621, x606, x608, &x623);
- { uint32_t x626; uint8_t _ = _addcarryx_u32(0x0, x624, x609, &x626);
- { uint32_t x629; uint8_t x630 = _addcarryx_u32(0x0, x574, x593, &x629);
- { uint32_t x632; uint8_t x633 = _addcarryx_u32(x630, x577, x611, &x632);
- { uint32_t x635; uint8_t x636 = _addcarryx_u32(x633, x580, x614, &x635);
- { uint32_t x638; uint8_t x639 = _addcarryx_u32(x636, x583, x617, &x638);
- { uint32_t x641; uint8_t x642 = _addcarryx_u32(x639, x586, x620, &x641);
- { uint32_t x644; uint8_t x645 = _addcarryx_u32(x642, x589, x623, &x644);
- { uint32_t x647; uint8_t x648 = _addcarryx_u32(x645, x591, x626, &x647);
- { uint32_t _; uint32_t x650 = _mulx_u32(x629, 0x286bca1b, &_);
- { uint32_t x654; uint32_t x653 = _mulx_u32(x650, 0xffffffed, &x654);
- { uint32_t x657; uint32_t x656 = _mulx_u32(x650, 0xffffffff, &x657);
- { uint32_t x660; uint32_t x659 = _mulx_u32(x650, 0xffffffff, &x660);
- { uint32_t x663; uint32_t x662 = _mulx_u32(x650, 0xffffffff, &x663);
- { uint32_t x666; uint32_t x665 = _mulx_u32(x650, 0xffffffff, &x666);
- { uint32_t x669; uint32_t x668 = _mulx_u32(x650, 0x7ff, &x669);
- { uint32_t x671; uint8_t x672 = _addcarryx_u32(0x0, x654, x656, &x671);
- { uint32_t x674; uint8_t x675 = _addcarryx_u32(x672, x657, x659, &x674);
- { uint32_t x677; uint8_t x678 = _addcarryx_u32(x675, x660, x662, &x677);
- { uint32_t x680; uint8_t x681 = _addcarryx_u32(x678, x663, x665, &x680);
- { uint32_t x683; uint8_t x684 = _addcarryx_u32(x681, x666, x668, &x683);
- { uint32_t x686; uint8_t _ = _addcarryx_u32(0x0, x684, x669, &x686);
- { uint32_t _; uint8_t x690 = _addcarryx_u32(0x0, x629, x653, &_);
- { uint32_t x692; uint8_t x693 = _addcarryx_u32(x690, x632, x671, &x692);
- { uint32_t x695; uint8_t x696 = _addcarryx_u32(x693, x635, x674, &x695);
- { uint32_t x698; uint8_t x699 = _addcarryx_u32(x696, x638, x677, &x698);
- { uint32_t x701; uint8_t x702 = _addcarryx_u32(x699, x641, x680, &x701);
- { uint32_t x704; uint8_t x705 = _addcarryx_u32(x702, x644, x683, &x704);
- { uint32_t x707; uint8_t x708 = _addcarryx_u32(x705, x647, x686, &x707);
- { uint8_t x709 = (x708 + x648);
- { uint32_t x711; uint8_t x712 = _subborrow_u32(0x0, x692, 0xffffffed, &x711);
- { uint32_t x714; uint8_t x715 = _subborrow_u32(x712, x695, 0xffffffff, &x714);
- { uint32_t x717; uint8_t x718 = _subborrow_u32(x715, x698, 0xffffffff, &x717);
- { uint32_t x720; uint8_t x721 = _subborrow_u32(x718, x701, 0xffffffff, &x720);
- { uint32_t x723; uint8_t x724 = _subborrow_u32(x721, x704, 0xffffffff, &x723);
- { uint32_t x726; uint8_t x727 = _subborrow_u32(x724, x707, 0x7ff, &x726);
- { uint32_t _; uint8_t x730 = _subborrow_u32(x727, x709, 0x0, &_);
- { uint32_t x731 = cmovznz32(x730, x726, x707);
- { uint32_t x732 = cmovznz32(x730, x723, x704);
- { uint32_t x733 = cmovznz32(x730, x720, x701);
- { uint32_t x734 = cmovznz32(x730, x717, x698);
- { uint32_t x735 = cmovznz32(x730, x714, x695);
- { uint32_t x736 = cmovznz32(x730, x711, x692);
- out[0] = x736;
- out[1] = x735;
- out[2] = x734;
- out[3] = x733;
- out[4] = x732;
- out[5] = x731;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e171m19_6limbs/femul.v b/src/Specific/montgomery32_2e171m19_6limbs/femul.v
deleted file mode 100644
index a10273efc..000000000
--- a/src/Specific/montgomery32_2e171m19_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e171m19_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e171m19_6limbs/femulDisplay.log b/src/Specific/montgomery32_2e171m19_6limbs/femulDisplay.log
deleted file mode 100644
index d4b873886..000000000
--- a/src/Specific/montgomery32_2e171m19_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,252 +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,
- uint32_t x25, uint32_t x26 = mulx_u32(x5, x15);
- uint32_t x28, uint32_t x29 = mulx_u32(x5, x17);
- uint32_t x31, uint32_t x32 = mulx_u32(x5, x19);
- uint32_t x34, uint32_t x35 = mulx_u32(x5, x21);
- uint32_t x37, uint32_t x38 = mulx_u32(x5, x23);
- uint32_t x40, uint32_t x41 = mulx_u32(x5, x22);
- uint32_t x43, uint8_t x44 = addcarryx_u32(0x0, x26, x28);
- uint32_t x46, uint8_t x47 = addcarryx_u32(x44, x29, x31);
- uint32_t x49, uint8_t x50 = addcarryx_u32(x47, x32, x34);
- uint32_t x52, uint8_t x53 = addcarryx_u32(x50, x35, x37);
- uint32_t x55, uint8_t x56 = addcarryx_u32(x53, x38, x40);
- uint32_t x58, uint8_t _ = addcarryx_u32(0x0, x56, x41);
- uint32_t x61, uint32_t _ = mulx_u32(x25, 0x286bca1b);
- uint32_t x64, uint32_t x65 = mulx_u32(x61, 0xffffffed);
- uint32_t x67, uint32_t x68 = mulx_u32(x61, 0xffffffff);
- uint32_t x70, uint32_t x71 = mulx_u32(x61, 0xffffffff);
- uint32_t x73, uint32_t x74 = mulx_u32(x61, 0xffffffff);
- uint32_t x76, uint32_t x77 = mulx_u32(x61, 0xffffffff);
- uint32_t x79, uint32_t x80 = mulx_u32(x61, 0x7ff);
- uint32_t x82, uint8_t x83 = addcarryx_u32(0x0, x65, x67);
- uint32_t x85, uint8_t x86 = addcarryx_u32(x83, x68, x70);
- uint32_t x88, uint8_t x89 = addcarryx_u32(x86, x71, x73);
- uint32_t x91, uint8_t x92 = addcarryx_u32(x89, x74, x76);
- uint32_t x94, uint8_t x95 = addcarryx_u32(x92, x77, x79);
- uint32_t x97, uint8_t _ = addcarryx_u32(0x0, x95, x80);
- uint32_t _, uint8_t x101 = addcarryx_u32(0x0, x25, x64);
- uint32_t x103, uint8_t x104 = addcarryx_u32(x101, x43, x82);
- uint32_t x106, uint8_t x107 = addcarryx_u32(x104, x46, x85);
- uint32_t x109, uint8_t x110 = addcarryx_u32(x107, x49, x88);
- uint32_t x112, uint8_t x113 = addcarryx_u32(x110, x52, x91);
- uint32_t x115, uint8_t x116 = addcarryx_u32(x113, x55, x94);
- uint32_t x118, uint8_t x119 = addcarryx_u32(x116, x58, x97);
- uint32_t x121, uint32_t x122 = mulx_u32(x7, x15);
- uint32_t x124, uint32_t x125 = mulx_u32(x7, x17);
- uint32_t x127, uint32_t x128 = mulx_u32(x7, x19);
- uint32_t x130, uint32_t x131 = mulx_u32(x7, x21);
- uint32_t x133, uint32_t x134 = mulx_u32(x7, x23);
- uint32_t x136, uint32_t x137 = mulx_u32(x7, x22);
- uint32_t x139, uint8_t x140 = addcarryx_u32(0x0, x122, x124);
- uint32_t x142, uint8_t x143 = addcarryx_u32(x140, x125, x127);
- uint32_t x145, uint8_t x146 = addcarryx_u32(x143, x128, x130);
- uint32_t x148, uint8_t x149 = addcarryx_u32(x146, x131, x133);
- uint32_t x151, uint8_t x152 = addcarryx_u32(x149, x134, x136);
- uint32_t x154, uint8_t _ = addcarryx_u32(0x0, x152, x137);
- uint32_t x157, uint8_t x158 = addcarryx_u32(0x0, x103, x121);
- uint32_t x160, uint8_t x161 = addcarryx_u32(x158, x106, x139);
- uint32_t x163, uint8_t x164 = addcarryx_u32(x161, x109, x142);
- uint32_t x166, uint8_t x167 = addcarryx_u32(x164, x112, x145);
- uint32_t x169, uint8_t x170 = addcarryx_u32(x167, x115, x148);
- uint32_t x172, uint8_t x173 = addcarryx_u32(x170, x118, x151);
- uint32_t x175, uint8_t x176 = addcarryx_u32(x173, x119, x154);
- uint32_t x178, uint32_t _ = mulx_u32(x157, 0x286bca1b);
- uint32_t x181, uint32_t x182 = mulx_u32(x178, 0xffffffed);
- uint32_t x184, uint32_t x185 = mulx_u32(x178, 0xffffffff);
- uint32_t x187, uint32_t x188 = mulx_u32(x178, 0xffffffff);
- uint32_t x190, uint32_t x191 = mulx_u32(x178, 0xffffffff);
- uint32_t x193, uint32_t x194 = mulx_u32(x178, 0xffffffff);
- uint32_t x196, uint32_t x197 = mulx_u32(x178, 0x7ff);
- uint32_t x199, uint8_t x200 = addcarryx_u32(0x0, x182, x184);
- uint32_t x202, uint8_t x203 = addcarryx_u32(x200, x185, x187);
- uint32_t x205, uint8_t x206 = addcarryx_u32(x203, x188, x190);
- uint32_t x208, uint8_t x209 = addcarryx_u32(x206, x191, x193);
- uint32_t x211, uint8_t x212 = addcarryx_u32(x209, x194, x196);
- uint32_t x214, uint8_t _ = addcarryx_u32(0x0, x212, x197);
- uint32_t _, uint8_t x218 = addcarryx_u32(0x0, x157, x181);
- uint32_t x220, uint8_t x221 = addcarryx_u32(x218, x160, x199);
- uint32_t x223, uint8_t x224 = addcarryx_u32(x221, x163, x202);
- uint32_t x226, uint8_t x227 = addcarryx_u32(x224, x166, x205);
- uint32_t x229, uint8_t x230 = addcarryx_u32(x227, x169, x208);
- uint32_t x232, uint8_t x233 = addcarryx_u32(x230, x172, x211);
- uint32_t x235, uint8_t x236 = addcarryx_u32(x233, x175, x214);
- uint8_t x237 = (x236 + x176);
- uint32_t x239, uint32_t x240 = mulx_u32(x9, x15);
- uint32_t x242, uint32_t x243 = mulx_u32(x9, x17);
- uint32_t x245, uint32_t x246 = mulx_u32(x9, x19);
- uint32_t x248, uint32_t x249 = mulx_u32(x9, x21);
- uint32_t x251, uint32_t x252 = mulx_u32(x9, x23);
- uint32_t x254, uint32_t x255 = mulx_u32(x9, x22);
- uint32_t x257, uint8_t x258 = addcarryx_u32(0x0, x240, x242);
- uint32_t x260, uint8_t x261 = addcarryx_u32(x258, x243, x245);
- uint32_t x263, uint8_t x264 = addcarryx_u32(x261, x246, x248);
- uint32_t x266, uint8_t x267 = addcarryx_u32(x264, x249, x251);
- uint32_t x269, uint8_t x270 = addcarryx_u32(x267, x252, x254);
- uint32_t x272, uint8_t _ = addcarryx_u32(0x0, x270, x255);
- uint32_t x275, uint8_t x276 = addcarryx_u32(0x0, x220, x239);
- uint32_t x278, uint8_t x279 = addcarryx_u32(x276, x223, x257);
- uint32_t x281, uint8_t x282 = addcarryx_u32(x279, x226, x260);
- uint32_t x284, uint8_t x285 = addcarryx_u32(x282, x229, x263);
- uint32_t x287, uint8_t x288 = addcarryx_u32(x285, x232, x266);
- uint32_t x290, uint8_t x291 = addcarryx_u32(x288, x235, x269);
- uint32_t x293, uint8_t x294 = addcarryx_u32(x291, x237, x272);
- uint32_t x296, uint32_t _ = mulx_u32(x275, 0x286bca1b);
- uint32_t x299, uint32_t x300 = mulx_u32(x296, 0xffffffed);
- uint32_t x302, uint32_t x303 = mulx_u32(x296, 0xffffffff);
- uint32_t x305, uint32_t x306 = mulx_u32(x296, 0xffffffff);
- uint32_t x308, uint32_t x309 = mulx_u32(x296, 0xffffffff);
- uint32_t x311, uint32_t x312 = mulx_u32(x296, 0xffffffff);
- uint32_t x314, uint32_t x315 = mulx_u32(x296, 0x7ff);
- uint32_t x317, uint8_t x318 = addcarryx_u32(0x0, x300, x302);
- uint32_t x320, uint8_t x321 = addcarryx_u32(x318, x303, x305);
- uint32_t x323, uint8_t x324 = addcarryx_u32(x321, x306, x308);
- uint32_t x326, uint8_t x327 = addcarryx_u32(x324, x309, x311);
- uint32_t x329, uint8_t x330 = addcarryx_u32(x327, x312, x314);
- uint32_t x332, uint8_t _ = addcarryx_u32(0x0, x330, x315);
- uint32_t _, uint8_t x336 = addcarryx_u32(0x0, x275, x299);
- uint32_t x338, uint8_t x339 = addcarryx_u32(x336, x278, x317);
- uint32_t x341, uint8_t x342 = addcarryx_u32(x339, x281, x320);
- uint32_t x344, uint8_t x345 = addcarryx_u32(x342, x284, x323);
- uint32_t x347, uint8_t x348 = addcarryx_u32(x345, x287, x326);
- uint32_t x350, uint8_t x351 = addcarryx_u32(x348, x290, x329);
- uint32_t x353, uint8_t x354 = addcarryx_u32(x351, x293, x332);
- uint8_t x355 = (x354 + x294);
- uint32_t x357, uint32_t x358 = mulx_u32(x11, x15);
- uint32_t x360, uint32_t x361 = mulx_u32(x11, x17);
- uint32_t x363, uint32_t x364 = mulx_u32(x11, x19);
- uint32_t x366, uint32_t x367 = mulx_u32(x11, x21);
- uint32_t x369, uint32_t x370 = mulx_u32(x11, x23);
- uint32_t x372, uint32_t x373 = mulx_u32(x11, x22);
- uint32_t x375, uint8_t x376 = addcarryx_u32(0x0, x358, x360);
- uint32_t x378, uint8_t x379 = addcarryx_u32(x376, x361, x363);
- uint32_t x381, uint8_t x382 = addcarryx_u32(x379, x364, x366);
- uint32_t x384, uint8_t x385 = addcarryx_u32(x382, x367, x369);
- uint32_t x387, uint8_t x388 = addcarryx_u32(x385, x370, x372);
- uint32_t x390, uint8_t _ = addcarryx_u32(0x0, x388, x373);
- uint32_t x393, uint8_t x394 = addcarryx_u32(0x0, x338, x357);
- uint32_t x396, uint8_t x397 = addcarryx_u32(x394, x341, x375);
- uint32_t x399, uint8_t x400 = addcarryx_u32(x397, x344, x378);
- uint32_t x402, uint8_t x403 = addcarryx_u32(x400, x347, x381);
- uint32_t x405, uint8_t x406 = addcarryx_u32(x403, x350, x384);
- uint32_t x408, uint8_t x409 = addcarryx_u32(x406, x353, x387);
- uint32_t x411, uint8_t x412 = addcarryx_u32(x409, x355, x390);
- uint32_t x414, uint32_t _ = mulx_u32(x393, 0x286bca1b);
- uint32_t x417, uint32_t x418 = mulx_u32(x414, 0xffffffed);
- uint32_t x420, uint32_t x421 = mulx_u32(x414, 0xffffffff);
- uint32_t x423, uint32_t x424 = mulx_u32(x414, 0xffffffff);
- uint32_t x426, uint32_t x427 = mulx_u32(x414, 0xffffffff);
- uint32_t x429, uint32_t x430 = mulx_u32(x414, 0xffffffff);
- uint32_t x432, uint32_t x433 = mulx_u32(x414, 0x7ff);
- uint32_t x435, uint8_t x436 = addcarryx_u32(0x0, x418, x420);
- uint32_t x438, uint8_t x439 = addcarryx_u32(x436, x421, x423);
- uint32_t x441, uint8_t x442 = addcarryx_u32(x439, x424, x426);
- uint32_t x444, uint8_t x445 = addcarryx_u32(x442, x427, x429);
- uint32_t x447, uint8_t x448 = addcarryx_u32(x445, x430, x432);
- uint32_t x450, uint8_t _ = addcarryx_u32(0x0, x448, x433);
- uint32_t _, uint8_t x454 = addcarryx_u32(0x0, x393, x417);
- uint32_t x456, uint8_t x457 = addcarryx_u32(x454, x396, x435);
- uint32_t x459, uint8_t x460 = addcarryx_u32(x457, x399, x438);
- uint32_t x462, uint8_t x463 = addcarryx_u32(x460, x402, x441);
- uint32_t x465, uint8_t x466 = addcarryx_u32(x463, x405, x444);
- uint32_t x468, uint8_t x469 = addcarryx_u32(x466, x408, x447);
- uint32_t x471, uint8_t x472 = addcarryx_u32(x469, x411, x450);
- uint8_t x473 = (x472 + x412);
- uint32_t x475, uint32_t x476 = mulx_u32(x13, x15);
- uint32_t x478, uint32_t x479 = mulx_u32(x13, x17);
- uint32_t x481, uint32_t x482 = mulx_u32(x13, x19);
- uint32_t x484, uint32_t x485 = mulx_u32(x13, x21);
- uint32_t x487, uint32_t x488 = mulx_u32(x13, x23);
- uint32_t x490, uint32_t x491 = mulx_u32(x13, x22);
- uint32_t x493, uint8_t x494 = addcarryx_u32(0x0, x476, x478);
- uint32_t x496, uint8_t x497 = addcarryx_u32(x494, x479, x481);
- uint32_t x499, uint8_t x500 = addcarryx_u32(x497, x482, x484);
- uint32_t x502, uint8_t x503 = addcarryx_u32(x500, x485, x487);
- uint32_t x505, uint8_t x506 = addcarryx_u32(x503, x488, x490);
- uint32_t x508, uint8_t _ = addcarryx_u32(0x0, x506, x491);
- uint32_t x511, uint8_t x512 = addcarryx_u32(0x0, x456, x475);
- uint32_t x514, uint8_t x515 = addcarryx_u32(x512, x459, x493);
- uint32_t x517, uint8_t x518 = addcarryx_u32(x515, x462, x496);
- uint32_t x520, uint8_t x521 = addcarryx_u32(x518, x465, x499);
- uint32_t x523, uint8_t x524 = addcarryx_u32(x521, x468, x502);
- uint32_t x526, uint8_t x527 = addcarryx_u32(x524, x471, x505);
- uint32_t x529, uint8_t x530 = addcarryx_u32(x527, x473, x508);
- uint32_t x532, uint32_t _ = mulx_u32(x511, 0x286bca1b);
- uint32_t x535, uint32_t x536 = mulx_u32(x532, 0xffffffed);
- uint32_t x538, uint32_t x539 = mulx_u32(x532, 0xffffffff);
- uint32_t x541, uint32_t x542 = mulx_u32(x532, 0xffffffff);
- uint32_t x544, uint32_t x545 = mulx_u32(x532, 0xffffffff);
- uint32_t x547, uint32_t x548 = mulx_u32(x532, 0xffffffff);
- uint32_t x550, uint32_t x551 = mulx_u32(x532, 0x7ff);
- uint32_t x553, uint8_t x554 = addcarryx_u32(0x0, x536, x538);
- uint32_t x556, uint8_t x557 = addcarryx_u32(x554, x539, x541);
- uint32_t x559, uint8_t x560 = addcarryx_u32(x557, x542, x544);
- uint32_t x562, uint8_t x563 = addcarryx_u32(x560, x545, x547);
- uint32_t x565, uint8_t x566 = addcarryx_u32(x563, x548, x550);
- uint32_t x568, uint8_t _ = addcarryx_u32(0x0, x566, x551);
- uint32_t _, uint8_t x572 = addcarryx_u32(0x0, x511, x535);
- uint32_t x574, uint8_t x575 = addcarryx_u32(x572, x514, x553);
- uint32_t x577, uint8_t x578 = addcarryx_u32(x575, x517, x556);
- uint32_t x580, uint8_t x581 = addcarryx_u32(x578, x520, x559);
- uint32_t x583, uint8_t x584 = addcarryx_u32(x581, x523, x562);
- uint32_t x586, uint8_t x587 = addcarryx_u32(x584, x526, x565);
- uint32_t x589, uint8_t x590 = addcarryx_u32(x587, x529, x568);
- uint8_t x591 = (x590 + x530);
- uint32_t x593, uint32_t x594 = mulx_u32(x12, x15);
- uint32_t x596, uint32_t x597 = mulx_u32(x12, x17);
- uint32_t x599, uint32_t x600 = mulx_u32(x12, x19);
- uint32_t x602, uint32_t x603 = mulx_u32(x12, x21);
- uint32_t x605, uint32_t x606 = mulx_u32(x12, x23);
- uint32_t x608, uint32_t x609 = mulx_u32(x12, x22);
- uint32_t x611, uint8_t x612 = addcarryx_u32(0x0, x594, x596);
- uint32_t x614, uint8_t x615 = addcarryx_u32(x612, x597, x599);
- uint32_t x617, uint8_t x618 = addcarryx_u32(x615, x600, x602);
- uint32_t x620, uint8_t x621 = addcarryx_u32(x618, x603, x605);
- uint32_t x623, uint8_t x624 = addcarryx_u32(x621, x606, x608);
- uint32_t x626, uint8_t _ = addcarryx_u32(0x0, x624, x609);
- uint32_t x629, uint8_t x630 = addcarryx_u32(0x0, x574, x593);
- uint32_t x632, uint8_t x633 = addcarryx_u32(x630, x577, x611);
- uint32_t x635, uint8_t x636 = addcarryx_u32(x633, x580, x614);
- uint32_t x638, uint8_t x639 = addcarryx_u32(x636, x583, x617);
- uint32_t x641, uint8_t x642 = addcarryx_u32(x639, x586, x620);
- uint32_t x644, uint8_t x645 = addcarryx_u32(x642, x589, x623);
- uint32_t x647, uint8_t x648 = addcarryx_u32(x645, x591, x626);
- uint32_t x650, uint32_t _ = mulx_u32(x629, 0x286bca1b);
- uint32_t x653, uint32_t x654 = mulx_u32(x650, 0xffffffed);
- uint32_t x656, uint32_t x657 = mulx_u32(x650, 0xffffffff);
- uint32_t x659, uint32_t x660 = mulx_u32(x650, 0xffffffff);
- uint32_t x662, uint32_t x663 = mulx_u32(x650, 0xffffffff);
- uint32_t x665, uint32_t x666 = mulx_u32(x650, 0xffffffff);
- uint32_t x668, uint32_t x669 = mulx_u32(x650, 0x7ff);
- uint32_t x671, uint8_t x672 = addcarryx_u32(0x0, x654, x656);
- uint32_t x674, uint8_t x675 = addcarryx_u32(x672, x657, x659);
- uint32_t x677, uint8_t x678 = addcarryx_u32(x675, x660, x662);
- uint32_t x680, uint8_t x681 = addcarryx_u32(x678, x663, x665);
- uint32_t x683, uint8_t x684 = addcarryx_u32(x681, x666, x668);
- uint32_t x686, uint8_t _ = addcarryx_u32(0x0, x684, x669);
- uint32_t _, uint8_t x690 = addcarryx_u32(0x0, x629, x653);
- uint32_t x692, uint8_t x693 = addcarryx_u32(x690, x632, x671);
- uint32_t x695, uint8_t x696 = addcarryx_u32(x693, x635, x674);
- uint32_t x698, uint8_t x699 = addcarryx_u32(x696, x638, x677);
- uint32_t x701, uint8_t x702 = addcarryx_u32(x699, x641, x680);
- uint32_t x704, uint8_t x705 = addcarryx_u32(x702, x644, x683);
- uint32_t x707, uint8_t x708 = addcarryx_u32(x705, x647, x686);
- uint8_t x709 = (x708 + x648);
- uint32_t x711, uint8_t x712 = subborrow_u32(0x0, x692, 0xffffffed);
- uint32_t x714, uint8_t x715 = subborrow_u32(x712, x695, 0xffffffff);
- uint32_t x717, uint8_t x718 = subborrow_u32(x715, x698, 0xffffffff);
- uint32_t x720, uint8_t x721 = subborrow_u32(x718, x701, 0xffffffff);
- uint32_t x723, uint8_t x724 = subborrow_u32(x721, x704, 0xffffffff);
- uint32_t x726, uint8_t x727 = subborrow_u32(x724, x707, 0x7ff);
- uint32_t _, uint8_t x730 = subborrow_u32(x727, x709, 0x0);
- uint32_t x731 = cmovznz32(x730, x726, x707);
- uint32_t x732 = cmovznz32(x730, x723, x704);
- uint32_t x733 = cmovznz32(x730, x720, x701);
- uint32_t x734 = cmovznz32(x730, x717, x698);
- uint32_t x735 = cmovznz32(x730, x714, x695);
- uint32_t x736 = cmovznz32(x730, x711, x692);
- return (x731, x732, x733, x734, x735, x736))
-(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/montgomery32_2e171m19_6limbs/femulDisplay.v b/src/Specific/montgomery32_2e171m19_6limbs/femulDisplay.v
deleted file mode 100644
index 0b2f6980f..000000000
--- a/src/Specific/montgomery32_2e171m19_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e171m19_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e171m19_6limbs/fenz.c b/src/Specific/montgomery32_2e171m19_6limbs/fenz.c
deleted file mode 100644
index 2e0454af1..000000000
--- a/src/Specific/montgomery32_2e171m19_6limbs/fenz.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], 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 x11 = (x10 | x9);
- { uint32_t x12 = (x8 | x11);
- { uint32_t x13 = (x6 | x12);
- { uint32_t x14 = (x4 | x13);
- { uint32_t x15 = (x2 | x14);
- out[0] = x15;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e171m19_6limbs/fenz.v b/src/Specific/montgomery32_2e171m19_6limbs/fenz.v
deleted file mode 100644
index 114ac2f82..000000000
--- a/src/Specific/montgomery32_2e171m19_6limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e171m19_6limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e171m19_6limbs/fenzDisplay.log b/src/Specific/montgomery32_2e171m19_6limbs/fenzDisplay.log
deleted file mode 100644
index 616138b7b..000000000
--- a/src/Specific/montgomery32_2e171m19_6limbs/fenzDisplay.log
+++ /dev/null
@@ -1,12 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint32_t x11 = (x10 | x9);
- uint32_t x12 = (x8 | x11);
- uint32_t x13 = (x6 | x12);
- uint32_t x14 = (x4 | x13);
- uint32_t x15 = (x2 | x14);
- return x15)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e171m19_6limbs/fenzDisplay.v b/src/Specific/montgomery32_2e171m19_6limbs/fenzDisplay.v
deleted file mode 100644
index 592c288c7..000000000
--- a/src/Specific/montgomery32_2e171m19_6limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e171m19_6limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e171m19_6limbs/feopp.c b/src/Specific/montgomery32_2e171m19_6limbs/feopp.c
deleted file mode 100644
index c7d34f427..000000000
--- a/src/Specific/montgomery32_2e171m19_6limbs/feopp.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feopp(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 = _subborrow_u32(0x0, 0x0, x2, &x12);
- { uint32_t x15; uint8_t x16 = _subborrow_u32(x13, 0x0, x4, &x15);
- { uint32_t x18; uint8_t x19 = _subborrow_u32(x16, 0x0, x6, &x18);
- { uint32_t x21; uint8_t x22 = _subborrow_u32(x19, 0x0, x8, &x21);
- { uint32_t x24; uint8_t x25 = _subborrow_u32(x22, 0x0, x10, &x24);
- { uint32_t x27; uint8_t x28 = _subborrow_u32(x25, 0x0, x9, &x27);
- { uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- { uint32_t x30 = (x29 & 0xffffffed);
- { uint32_t x32; uint8_t x33 = _addcarryx_u32(0x0, x12, x30, &x32);
- { uint32_t x34 = (x29 & 0xffffffff);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(x33, x15, x34, &x36);
- { uint32_t x38 = (x29 & 0xffffffff);
- { uint32_t x40; uint8_t x41 = _addcarryx_u32(x37, x18, x38, &x40);
- { uint32_t x42 = (x29 & 0xffffffff);
- { uint32_t x44; uint8_t x45 = _addcarryx_u32(x41, x21, x42, &x44);
- { uint32_t x46 = (x29 & 0xffffffff);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x45, x24, x46, &x48);
- { uint32_t x50 = (x29 & 0x7ff);
- { uint32_t x52; uint8_t _ = _addcarryx_u32(x49, x27, x50, &x52);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e171m19_6limbs/feopp.v b/src/Specific/montgomery32_2e171m19_6limbs/feopp.v
deleted file mode 100644
index 2653d12a9..000000000
--- a/src/Specific/montgomery32_2e171m19_6limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e171m19_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e171m19_6limbs/feoppDisplay.log b/src/Specific/montgomery32_2e171m19_6limbs/feoppDisplay.log
deleted file mode 100644
index c49945ba8..000000000
--- a/src/Specific/montgomery32_2e171m19_6limbs/feoppDisplay.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 = subborrow_u32(0x0, 0x0, x2);
- uint32_t x15, uint8_t x16 = subborrow_u32(x13, 0x0, x4);
- uint32_t x18, uint8_t x19 = subborrow_u32(x16, 0x0, x6);
- uint32_t x21, uint8_t x22 = subborrow_u32(x19, 0x0, x8);
- uint32_t x24, uint8_t x25 = subborrow_u32(x22, 0x0, x10);
- uint32_t x27, uint8_t x28 = subborrow_u32(x25, 0x0, x9);
- uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- uint32_t x30 = (x29 & 0xffffffed);
- uint32_t x32, uint8_t x33 = addcarryx_u32(0x0, x12, x30);
- uint32_t x34 = (x29 & 0xffffffff);
- uint32_t x36, uint8_t x37 = addcarryx_u32(x33, x15, x34);
- uint32_t x38 = (x29 & 0xffffffff);
- uint32_t x40, uint8_t x41 = addcarryx_u32(x37, x18, x38);
- uint32_t x42 = (x29 & 0xffffffff);
- uint32_t x44, uint8_t x45 = addcarryx_u32(x41, x21, x42);
- uint32_t x46 = (x29 & 0xffffffff);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x45, x24, x46);
- uint32_t x50 = (x29 & 0x7ff);
- uint32_t x52, uint8_t _ = addcarryx_u32(x49, x27, 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/montgomery32_2e171m19_6limbs/feoppDisplay.v b/src/Specific/montgomery32_2e171m19_6limbs/feoppDisplay.v
deleted file mode 100644
index 7cb06a34f..000000000
--- a/src/Specific/montgomery32_2e171m19_6limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e171m19_6limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e171m19_6limbs/fesquare.c b/src/Specific/montgomery32_2e171m19_6limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e171m19_6limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e171m19_6limbs/fesub.c b/src/Specific/montgomery32_2e171m19_6limbs/fesub.c
deleted file mode 100644
index 7dc4f0d26..000000000
--- a/src/Specific/montgomery32_2e171m19_6limbs/fesub.c
+++ /dev/null
@@ -1,40 +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];
- { uint32_t x25; uint8_t x26 = _subborrow_u32(0x0, x5, x15, &x25);
- { uint32_t x28; uint8_t x29 = _subborrow_u32(x26, x7, x17, &x28);
- { uint32_t x31; uint8_t x32 = _subborrow_u32(x29, x9, x19, &x31);
- { uint32_t x34; uint8_t x35 = _subborrow_u32(x32, x11, x21, &x34);
- { uint32_t x37; uint8_t x38 = _subborrow_u32(x35, x13, x23, &x37);
- { uint32_t x40; uint8_t x41 = _subborrow_u32(x38, x12, x22, &x40);
- { uint32_t x42 = cmovznz32(x41, 0x0, 0xffffffff);
- { uint32_t x43 = (x42 & 0xffffffed);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(0x0, x25, x43, &x45);
- { uint32_t x47 = (x42 & 0xffffffff);
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(x46, x28, x47, &x49);
- { uint32_t x51 = (x42 & 0xffffffff);
- { uint32_t x53; uint8_t x54 = _addcarryx_u32(x50, x31, x51, &x53);
- { uint32_t x55 = (x42 & 0xffffffff);
- { uint32_t x57; uint8_t x58 = _addcarryx_u32(x54, x34, x55, &x57);
- { uint32_t x59 = (x42 & 0xffffffff);
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(x58, x37, x59, &x61);
- { uint32_t x63 = (x42 & 0x7ff);
- { uint32_t x65; uint8_t _ = _addcarryx_u32(x62, x40, x63, &x65);
- out[0] = x45;
- out[1] = x49;
- out[2] = x53;
- out[3] = x57;
- out[4] = x61;
- out[5] = x65;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e171m19_6limbs/fesub.v b/src/Specific/montgomery32_2e171m19_6limbs/fesub.v
deleted file mode 100644
index 31675ab9a..000000000
--- a/src/Specific/montgomery32_2e171m19_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e171m19_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e171m19_6limbs/fesubDisplay.log b/src/Specific/montgomery32_2e171m19_6limbs/fesubDisplay.log
deleted file mode 100644
index 4f3a0717b..000000000
--- a/src/Specific/montgomery32_2e171m19_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,26 +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,
- uint32_t x25, uint8_t x26 = subborrow_u32(0x0, x5, x15);
- uint32_t x28, uint8_t x29 = subborrow_u32(x26, x7, x17);
- uint32_t x31, uint8_t x32 = subborrow_u32(x29, x9, x19);
- uint32_t x34, uint8_t x35 = subborrow_u32(x32, x11, x21);
- uint32_t x37, uint8_t x38 = subborrow_u32(x35, x13, x23);
- uint32_t x40, uint8_t x41 = subborrow_u32(x38, x12, x22);
- uint32_t x42 = cmovznz32(x41, 0x0, 0xffffffff);
- uint32_t x43 = (x42 & 0xffffffed);
- uint32_t x45, uint8_t x46 = addcarryx_u32(0x0, x25, x43);
- uint32_t x47 = (x42 & 0xffffffff);
- uint32_t x49, uint8_t x50 = addcarryx_u32(x46, x28, x47);
- uint32_t x51 = (x42 & 0xffffffff);
- uint32_t x53, uint8_t x54 = addcarryx_u32(x50, x31, x51);
- uint32_t x55 = (x42 & 0xffffffff);
- uint32_t x57, uint8_t x58 = addcarryx_u32(x54, x34, x55);
- uint32_t x59 = (x42 & 0xffffffff);
- uint32_t x61, uint8_t x62 = addcarryx_u32(x58, x37, x59);
- uint32_t x63 = (x42 & 0x7ff);
- uint32_t x65, uint8_t _ = addcarryx_u32(x62, x40, x63);
- (Return x65, Return x61, Return x57, Return x53, Return x49, Return x45))
-(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/montgomery32_2e171m19_6limbs/fesubDisplay.v b/src/Specific/montgomery32_2e171m19_6limbs/fesubDisplay.v
deleted file mode 100644
index 6aa9ddfa8..000000000
--- a/src/Specific/montgomery32_2e171m19_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e171m19_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e171m19_6limbs/py_interpreter.sh b/src/Specific/montgomery32_2e171m19_6limbs/py_interpreter.sh
deleted file mode 100755
index 97053ad74..000000000
--- a/src/Specific/montgomery32_2e171m19_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**171 - 19' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e174m17_6limbs/CurveParameters.v b/src/Specific/montgomery32_2e174m17_6limbs/CurveParameters.v
deleted file mode 100644
index 4084ea061..000000000
--- a/src/Specific/montgomery32_2e174m17_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^174 - 17
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 32;
- bitwidth := 32;
- s := 2^174;
- c := [(1, 17)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e174m17_6limbs/Synthesis.v b/src/Specific/montgomery32_2e174m17_6limbs/Synthesis.v
deleted file mode 100644
index cf5b92427..000000000
--- a/src/Specific/montgomery32_2e174m17_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e174m17_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/montgomery32_2e174m17_6limbs/compiler.sh b/src/Specific/montgomery32_2e174m17_6limbs/compiler.sh
deleted file mode 100755
index 3fb9dca37..000000000
--- a/src/Specific/montgomery32_2e174m17_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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<174) - 17' "$@"
diff --git a/src/Specific/montgomery32_2e174m17_6limbs/compilerxx.sh b/src/Specific/montgomery32_2e174m17_6limbs/compilerxx.sh
deleted file mode 100755
index 0e3cff3a9..000000000
--- a/src/Specific/montgomery32_2e174m17_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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<174) - 17' "$@"
diff --git a/src/Specific/montgomery32_2e174m17_6limbs/feadd.c b/src/Specific/montgomery32_2e174m17_6limbs/feadd.c
deleted file mode 100644
index a361d09df..000000000
--- a/src/Specific/montgomery32_2e174m17_6limbs/feadd.c
+++ /dev/null
@@ -1,40 +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];
- { uint32_t x25; uint8_t x26 = _addcarryx_u32(0x0, x5, x15, &x25);
- { uint32_t x28; uint8_t x29 = _addcarryx_u32(x26, x7, x17, &x28);
- { uint32_t x31; uint8_t x32 = _addcarryx_u32(x29, x9, x19, &x31);
- { uint32_t x34; uint8_t x35 = _addcarryx_u32(x32, x11, x21, &x34);
- { uint32_t x37; uint8_t x38 = _addcarryx_u32(x35, x13, x23, &x37);
- { uint32_t x40; uint8_t x41 = _addcarryx_u32(x38, x12, x22, &x40);
- { uint32_t x43; uint8_t x44 = _subborrow_u32(0x0, x25, 0xffffffef, &x43);
- { uint32_t x46; uint8_t x47 = _subborrow_u32(x44, x28, 0xffffffff, &x46);
- { uint32_t x49; uint8_t x50 = _subborrow_u32(x47, x31, 0xffffffff, &x49);
- { uint32_t x52; uint8_t x53 = _subborrow_u32(x50, x34, 0xffffffff, &x52);
- { uint32_t x55; uint8_t x56 = _subborrow_u32(x53, x37, 0xffffffff, &x55);
- { uint32_t x58; uint8_t x59 = _subborrow_u32(x56, x40, 0x3fff, &x58);
- { uint32_t _; uint8_t x62 = _subborrow_u32(x59, x41, 0x0, &_);
- { uint32_t x63 = cmovznz32(x62, x58, x40);
- { uint32_t x64 = cmovznz32(x62, x55, x37);
- { uint32_t x65 = cmovznz32(x62, x52, x34);
- { uint32_t x66 = cmovznz32(x62, x49, x31);
- { uint32_t x67 = cmovznz32(x62, x46, x28);
- { uint32_t x68 = cmovznz32(x62, x43, x25);
- out[0] = x68;
- out[1] = x67;
- out[2] = x66;
- out[3] = x65;
- out[4] = x64;
- out[5] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e174m17_6limbs/feadd.v b/src/Specific/montgomery32_2e174m17_6limbs/feadd.v
deleted file mode 100644
index 81e8f3cf1..000000000
--- a/src/Specific/montgomery32_2e174m17_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e174m17_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e174m17_6limbs/feaddDisplay.log b/src/Specific/montgomery32_2e174m17_6limbs/feaddDisplay.log
deleted file mode 100644
index 31e22218b..000000000
--- a/src/Specific/montgomery32_2e174m17_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,26 +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,
- uint32_t x25, uint8_t x26 = addcarryx_u32(0x0, x5, x15);
- uint32_t x28, uint8_t x29 = addcarryx_u32(x26, x7, x17);
- uint32_t x31, uint8_t x32 = addcarryx_u32(x29, x9, x19);
- uint32_t x34, uint8_t x35 = addcarryx_u32(x32, x11, x21);
- uint32_t x37, uint8_t x38 = addcarryx_u32(x35, x13, x23);
- uint32_t x40, uint8_t x41 = addcarryx_u32(x38, x12, x22);
- uint32_t x43, uint8_t x44 = subborrow_u32(0x0, x25, 0xffffffef);
- uint32_t x46, uint8_t x47 = subborrow_u32(x44, x28, 0xffffffff);
- uint32_t x49, uint8_t x50 = subborrow_u32(x47, x31, 0xffffffff);
- uint32_t x52, uint8_t x53 = subborrow_u32(x50, x34, 0xffffffff);
- uint32_t x55, uint8_t x56 = subborrow_u32(x53, x37, 0xffffffff);
- uint32_t x58, uint8_t x59 = subborrow_u32(x56, x40, 0x3fff);
- uint32_t _, uint8_t x62 = subborrow_u32(x59, x41, 0x0);
- uint32_t x63 = cmovznz32(x62, x58, x40);
- uint32_t x64 = cmovznz32(x62, x55, x37);
- uint32_t x65 = cmovznz32(x62, x52, x34);
- uint32_t x66 = cmovznz32(x62, x49, x31);
- uint32_t x67 = cmovznz32(x62, x46, x28);
- uint32_t x68 = cmovznz32(x62, x43, x25);
- return (x63, x64, x65, x66, x67, x68))
-(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/montgomery32_2e174m17_6limbs/feaddDisplay.v b/src/Specific/montgomery32_2e174m17_6limbs/feaddDisplay.v
deleted file mode 100644
index 4ea08b6f1..000000000
--- a/src/Specific/montgomery32_2e174m17_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e174m17_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e174m17_6limbs/femul.c b/src/Specific/montgomery32_2e174m17_6limbs/femul.c
deleted file mode 100644
index b24bb3ee2..000000000
--- a/src/Specific/montgomery32_2e174m17_6limbs/femul.c
+++ /dev/null
@@ -1,266 +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];
- { uint32_t x26; uint32_t x25 = _mulx_u32(x5, x15, &x26);
- { uint32_t x29; uint32_t x28 = _mulx_u32(x5, x17, &x29);
- { uint32_t x32; uint32_t x31 = _mulx_u32(x5, x19, &x32);
- { uint32_t x35; uint32_t x34 = _mulx_u32(x5, x21, &x35);
- { uint32_t x38; uint32_t x37 = _mulx_u32(x5, x23, &x38);
- { uint32_t x41; uint32_t x40 = _mulx_u32(x5, x22, &x41);
- { uint32_t x43; uint8_t x44 = _addcarryx_u32(0x0, x26, x28, &x43);
- { uint32_t x46; uint8_t x47 = _addcarryx_u32(x44, x29, x31, &x46);
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(x47, x32, x34, &x49);
- { uint32_t x52; uint8_t x53 = _addcarryx_u32(x50, x35, x37, &x52);
- { uint32_t x55; uint8_t x56 = _addcarryx_u32(x53, x38, x40, &x55);
- { uint32_t x58; uint8_t _ = _addcarryx_u32(0x0, x56, x41, &x58);
- { uint32_t _; uint32_t x61 = _mulx_u32(x25, 0xf0f0f0f1, &_);
- { uint32_t x65; uint32_t x64 = _mulx_u32(x61, 0xffffffef, &x65);
- { uint32_t x68; uint32_t x67 = _mulx_u32(x61, 0xffffffff, &x68);
- { uint32_t x71; uint32_t x70 = _mulx_u32(x61, 0xffffffff, &x71);
- { uint32_t x74; uint32_t x73 = _mulx_u32(x61, 0xffffffff, &x74);
- { uint32_t x77; uint32_t x76 = _mulx_u32(x61, 0xffffffff, &x77);
- { uint32_t x80; uint32_t x79 = _mulx_u32(x61, 0x3fff, &x80);
- { uint32_t x82; uint8_t x83 = _addcarryx_u32(0x0, x65, x67, &x82);
- { uint32_t x85; uint8_t x86 = _addcarryx_u32(x83, x68, x70, &x85);
- { uint32_t x88; uint8_t x89 = _addcarryx_u32(x86, x71, x73, &x88);
- { uint32_t x91; uint8_t x92 = _addcarryx_u32(x89, x74, x76, &x91);
- { uint32_t x94; uint8_t x95 = _addcarryx_u32(x92, x77, x79, &x94);
- { uint32_t x97; uint8_t _ = _addcarryx_u32(0x0, x95, x80, &x97);
- { uint32_t _; uint8_t x101 = _addcarryx_u32(0x0, x25, x64, &_);
- { uint32_t x103; uint8_t x104 = _addcarryx_u32(x101, x43, x82, &x103);
- { uint32_t x106; uint8_t x107 = _addcarryx_u32(x104, x46, x85, &x106);
- { uint32_t x109; uint8_t x110 = _addcarryx_u32(x107, x49, x88, &x109);
- { uint32_t x112; uint8_t x113 = _addcarryx_u32(x110, x52, x91, &x112);
- { uint32_t x115; uint8_t x116 = _addcarryx_u32(x113, x55, x94, &x115);
- { uint32_t x118; uint8_t x119 = _addcarryx_u32(x116, x58, x97, &x118);
- { uint32_t x122; uint32_t x121 = _mulx_u32(x7, x15, &x122);
- { uint32_t x125; uint32_t x124 = _mulx_u32(x7, x17, &x125);
- { uint32_t x128; uint32_t x127 = _mulx_u32(x7, x19, &x128);
- { uint32_t x131; uint32_t x130 = _mulx_u32(x7, x21, &x131);
- { uint32_t x134; uint32_t x133 = _mulx_u32(x7, x23, &x134);
- { uint32_t x137; uint32_t x136 = _mulx_u32(x7, x22, &x137);
- { uint32_t x139; uint8_t x140 = _addcarryx_u32(0x0, x122, x124, &x139);
- { uint32_t x142; uint8_t x143 = _addcarryx_u32(x140, x125, x127, &x142);
- { uint32_t x145; uint8_t x146 = _addcarryx_u32(x143, x128, x130, &x145);
- { uint32_t x148; uint8_t x149 = _addcarryx_u32(x146, x131, x133, &x148);
- { uint32_t x151; uint8_t x152 = _addcarryx_u32(x149, x134, x136, &x151);
- { uint32_t x154; uint8_t _ = _addcarryx_u32(0x0, x152, x137, &x154);
- { uint32_t x157; uint8_t x158 = _addcarryx_u32(0x0, x103, x121, &x157);
- { uint32_t x160; uint8_t x161 = _addcarryx_u32(x158, x106, x139, &x160);
- { uint32_t x163; uint8_t x164 = _addcarryx_u32(x161, x109, x142, &x163);
- { uint32_t x166; uint8_t x167 = _addcarryx_u32(x164, x112, x145, &x166);
- { uint32_t x169; uint8_t x170 = _addcarryx_u32(x167, x115, x148, &x169);
- { uint32_t x172; uint8_t x173 = _addcarryx_u32(x170, x118, x151, &x172);
- { uint32_t x175; uint8_t x176 = _addcarryx_u32(x173, x119, x154, &x175);
- { uint32_t _; uint32_t x178 = _mulx_u32(x157, 0xf0f0f0f1, &_);
- { uint32_t x182; uint32_t x181 = _mulx_u32(x178, 0xffffffef, &x182);
- { uint32_t x185; uint32_t x184 = _mulx_u32(x178, 0xffffffff, &x185);
- { uint32_t x188; uint32_t x187 = _mulx_u32(x178, 0xffffffff, &x188);
- { uint32_t x191; uint32_t x190 = _mulx_u32(x178, 0xffffffff, &x191);
- { uint32_t x194; uint32_t x193 = _mulx_u32(x178, 0xffffffff, &x194);
- { uint32_t x197; uint32_t x196 = _mulx_u32(x178, 0x3fff, &x197);
- { uint32_t x199; uint8_t x200 = _addcarryx_u32(0x0, x182, x184, &x199);
- { uint32_t x202; uint8_t x203 = _addcarryx_u32(x200, x185, x187, &x202);
- { uint32_t x205; uint8_t x206 = _addcarryx_u32(x203, x188, x190, &x205);
- { uint32_t x208; uint8_t x209 = _addcarryx_u32(x206, x191, x193, &x208);
- { uint32_t x211; uint8_t x212 = _addcarryx_u32(x209, x194, x196, &x211);
- { uint32_t x214; uint8_t _ = _addcarryx_u32(0x0, x212, x197, &x214);
- { uint32_t _; uint8_t x218 = _addcarryx_u32(0x0, x157, x181, &_);
- { uint32_t x220; uint8_t x221 = _addcarryx_u32(x218, x160, x199, &x220);
- { uint32_t x223; uint8_t x224 = _addcarryx_u32(x221, x163, x202, &x223);
- { uint32_t x226; uint8_t x227 = _addcarryx_u32(x224, x166, x205, &x226);
- { uint32_t x229; uint8_t x230 = _addcarryx_u32(x227, x169, x208, &x229);
- { uint32_t x232; uint8_t x233 = _addcarryx_u32(x230, x172, x211, &x232);
- { uint32_t x235; uint8_t x236 = _addcarryx_u32(x233, x175, x214, &x235);
- { uint8_t x237 = (x236 + x176);
- { uint32_t x240; uint32_t x239 = _mulx_u32(x9, x15, &x240);
- { uint32_t x243; uint32_t x242 = _mulx_u32(x9, x17, &x243);
- { uint32_t x246; uint32_t x245 = _mulx_u32(x9, x19, &x246);
- { uint32_t x249; uint32_t x248 = _mulx_u32(x9, x21, &x249);
- { uint32_t x252; uint32_t x251 = _mulx_u32(x9, x23, &x252);
- { uint32_t x255; uint32_t x254 = _mulx_u32(x9, x22, &x255);
- { uint32_t x257; uint8_t x258 = _addcarryx_u32(0x0, x240, x242, &x257);
- { uint32_t x260; uint8_t x261 = _addcarryx_u32(x258, x243, x245, &x260);
- { uint32_t x263; uint8_t x264 = _addcarryx_u32(x261, x246, x248, &x263);
- { uint32_t x266; uint8_t x267 = _addcarryx_u32(x264, x249, x251, &x266);
- { uint32_t x269; uint8_t x270 = _addcarryx_u32(x267, x252, x254, &x269);
- { uint32_t x272; uint8_t _ = _addcarryx_u32(0x0, x270, x255, &x272);
- { uint32_t x275; uint8_t x276 = _addcarryx_u32(0x0, x220, x239, &x275);
- { uint32_t x278; uint8_t x279 = _addcarryx_u32(x276, x223, x257, &x278);
- { uint32_t x281; uint8_t x282 = _addcarryx_u32(x279, x226, x260, &x281);
- { uint32_t x284; uint8_t x285 = _addcarryx_u32(x282, x229, x263, &x284);
- { uint32_t x287; uint8_t x288 = _addcarryx_u32(x285, x232, x266, &x287);
- { uint32_t x290; uint8_t x291 = _addcarryx_u32(x288, x235, x269, &x290);
- { uint32_t x293; uint8_t x294 = _addcarryx_u32(x291, x237, x272, &x293);
- { uint32_t _; uint32_t x296 = _mulx_u32(x275, 0xf0f0f0f1, &_);
- { uint32_t x300; uint32_t x299 = _mulx_u32(x296, 0xffffffef, &x300);
- { uint32_t x303; uint32_t x302 = _mulx_u32(x296, 0xffffffff, &x303);
- { uint32_t x306; uint32_t x305 = _mulx_u32(x296, 0xffffffff, &x306);
- { uint32_t x309; uint32_t x308 = _mulx_u32(x296, 0xffffffff, &x309);
- { uint32_t x312; uint32_t x311 = _mulx_u32(x296, 0xffffffff, &x312);
- { uint32_t x315; uint32_t x314 = _mulx_u32(x296, 0x3fff, &x315);
- { uint32_t x317; uint8_t x318 = _addcarryx_u32(0x0, x300, x302, &x317);
- { uint32_t x320; uint8_t x321 = _addcarryx_u32(x318, x303, x305, &x320);
- { uint32_t x323; uint8_t x324 = _addcarryx_u32(x321, x306, x308, &x323);
- { uint32_t x326; uint8_t x327 = _addcarryx_u32(x324, x309, x311, &x326);
- { uint32_t x329; uint8_t x330 = _addcarryx_u32(x327, x312, x314, &x329);
- { uint32_t x332; uint8_t _ = _addcarryx_u32(0x0, x330, x315, &x332);
- { uint32_t _; uint8_t x336 = _addcarryx_u32(0x0, x275, x299, &_);
- { uint32_t x338; uint8_t x339 = _addcarryx_u32(x336, x278, x317, &x338);
- { uint32_t x341; uint8_t x342 = _addcarryx_u32(x339, x281, x320, &x341);
- { uint32_t x344; uint8_t x345 = _addcarryx_u32(x342, x284, x323, &x344);
- { uint32_t x347; uint8_t x348 = _addcarryx_u32(x345, x287, x326, &x347);
- { uint32_t x350; uint8_t x351 = _addcarryx_u32(x348, x290, x329, &x350);
- { uint32_t x353; uint8_t x354 = _addcarryx_u32(x351, x293, x332, &x353);
- { uint8_t x355 = (x354 + x294);
- { uint32_t x358; uint32_t x357 = _mulx_u32(x11, x15, &x358);
- { uint32_t x361; uint32_t x360 = _mulx_u32(x11, x17, &x361);
- { uint32_t x364; uint32_t x363 = _mulx_u32(x11, x19, &x364);
- { uint32_t x367; uint32_t x366 = _mulx_u32(x11, x21, &x367);
- { uint32_t x370; uint32_t x369 = _mulx_u32(x11, x23, &x370);
- { uint32_t x373; uint32_t x372 = _mulx_u32(x11, x22, &x373);
- { uint32_t x375; uint8_t x376 = _addcarryx_u32(0x0, x358, x360, &x375);
- { uint32_t x378; uint8_t x379 = _addcarryx_u32(x376, x361, x363, &x378);
- { uint32_t x381; uint8_t x382 = _addcarryx_u32(x379, x364, x366, &x381);
- { uint32_t x384; uint8_t x385 = _addcarryx_u32(x382, x367, x369, &x384);
- { uint32_t x387; uint8_t x388 = _addcarryx_u32(x385, x370, x372, &x387);
- { uint32_t x390; uint8_t _ = _addcarryx_u32(0x0, x388, x373, &x390);
- { uint32_t x393; uint8_t x394 = _addcarryx_u32(0x0, x338, x357, &x393);
- { uint32_t x396; uint8_t x397 = _addcarryx_u32(x394, x341, x375, &x396);
- { uint32_t x399; uint8_t x400 = _addcarryx_u32(x397, x344, x378, &x399);
- { uint32_t x402; uint8_t x403 = _addcarryx_u32(x400, x347, x381, &x402);
- { uint32_t x405; uint8_t x406 = _addcarryx_u32(x403, x350, x384, &x405);
- { uint32_t x408; uint8_t x409 = _addcarryx_u32(x406, x353, x387, &x408);
- { uint32_t x411; uint8_t x412 = _addcarryx_u32(x409, x355, x390, &x411);
- { uint32_t _; uint32_t x414 = _mulx_u32(x393, 0xf0f0f0f1, &_);
- { uint32_t x418; uint32_t x417 = _mulx_u32(x414, 0xffffffef, &x418);
- { uint32_t x421; uint32_t x420 = _mulx_u32(x414, 0xffffffff, &x421);
- { uint32_t x424; uint32_t x423 = _mulx_u32(x414, 0xffffffff, &x424);
- { uint32_t x427; uint32_t x426 = _mulx_u32(x414, 0xffffffff, &x427);
- { uint32_t x430; uint32_t x429 = _mulx_u32(x414, 0xffffffff, &x430);
- { uint32_t x433; uint32_t x432 = _mulx_u32(x414, 0x3fff, &x433);
- { uint32_t x435; uint8_t x436 = _addcarryx_u32(0x0, x418, x420, &x435);
- { uint32_t x438; uint8_t x439 = _addcarryx_u32(x436, x421, x423, &x438);
- { uint32_t x441; uint8_t x442 = _addcarryx_u32(x439, x424, x426, &x441);
- { uint32_t x444; uint8_t x445 = _addcarryx_u32(x442, x427, x429, &x444);
- { uint32_t x447; uint8_t x448 = _addcarryx_u32(x445, x430, x432, &x447);
- { uint32_t x450; uint8_t _ = _addcarryx_u32(0x0, x448, x433, &x450);
- { uint32_t _; uint8_t x454 = _addcarryx_u32(0x0, x393, x417, &_);
- { uint32_t x456; uint8_t x457 = _addcarryx_u32(x454, x396, x435, &x456);
- { uint32_t x459; uint8_t x460 = _addcarryx_u32(x457, x399, x438, &x459);
- { uint32_t x462; uint8_t x463 = _addcarryx_u32(x460, x402, x441, &x462);
- { uint32_t x465; uint8_t x466 = _addcarryx_u32(x463, x405, x444, &x465);
- { uint32_t x468; uint8_t x469 = _addcarryx_u32(x466, x408, x447, &x468);
- { uint32_t x471; uint8_t x472 = _addcarryx_u32(x469, x411, x450, &x471);
- { uint8_t x473 = (x472 + x412);
- { uint32_t x476; uint32_t x475 = _mulx_u32(x13, x15, &x476);
- { uint32_t x479; uint32_t x478 = _mulx_u32(x13, x17, &x479);
- { uint32_t x482; uint32_t x481 = _mulx_u32(x13, x19, &x482);
- { uint32_t x485; uint32_t x484 = _mulx_u32(x13, x21, &x485);
- { uint32_t x488; uint32_t x487 = _mulx_u32(x13, x23, &x488);
- { uint32_t x491; uint32_t x490 = _mulx_u32(x13, x22, &x491);
- { uint32_t x493; uint8_t x494 = _addcarryx_u32(0x0, x476, x478, &x493);
- { uint32_t x496; uint8_t x497 = _addcarryx_u32(x494, x479, x481, &x496);
- { uint32_t x499; uint8_t x500 = _addcarryx_u32(x497, x482, x484, &x499);
- { uint32_t x502; uint8_t x503 = _addcarryx_u32(x500, x485, x487, &x502);
- { uint32_t x505; uint8_t x506 = _addcarryx_u32(x503, x488, x490, &x505);
- { uint32_t x508; uint8_t _ = _addcarryx_u32(0x0, x506, x491, &x508);
- { uint32_t x511; uint8_t x512 = _addcarryx_u32(0x0, x456, x475, &x511);
- { uint32_t x514; uint8_t x515 = _addcarryx_u32(x512, x459, x493, &x514);
- { uint32_t x517; uint8_t x518 = _addcarryx_u32(x515, x462, x496, &x517);
- { uint32_t x520; uint8_t x521 = _addcarryx_u32(x518, x465, x499, &x520);
- { uint32_t x523; uint8_t x524 = _addcarryx_u32(x521, x468, x502, &x523);
- { uint32_t x526; uint8_t x527 = _addcarryx_u32(x524, x471, x505, &x526);
- { uint32_t x529; uint8_t x530 = _addcarryx_u32(x527, x473, x508, &x529);
- { uint32_t _; uint32_t x532 = _mulx_u32(x511, 0xf0f0f0f1, &_);
- { uint32_t x536; uint32_t x535 = _mulx_u32(x532, 0xffffffef, &x536);
- { uint32_t x539; uint32_t x538 = _mulx_u32(x532, 0xffffffff, &x539);
- { uint32_t x542; uint32_t x541 = _mulx_u32(x532, 0xffffffff, &x542);
- { uint32_t x545; uint32_t x544 = _mulx_u32(x532, 0xffffffff, &x545);
- { uint32_t x548; uint32_t x547 = _mulx_u32(x532, 0xffffffff, &x548);
- { uint32_t x551; uint32_t x550 = _mulx_u32(x532, 0x3fff, &x551);
- { uint32_t x553; uint8_t x554 = _addcarryx_u32(0x0, x536, x538, &x553);
- { uint32_t x556; uint8_t x557 = _addcarryx_u32(x554, x539, x541, &x556);
- { uint32_t x559; uint8_t x560 = _addcarryx_u32(x557, x542, x544, &x559);
- { uint32_t x562; uint8_t x563 = _addcarryx_u32(x560, x545, x547, &x562);
- { uint32_t x565; uint8_t x566 = _addcarryx_u32(x563, x548, x550, &x565);
- { uint32_t x568; uint8_t _ = _addcarryx_u32(0x0, x566, x551, &x568);
- { uint32_t _; uint8_t x572 = _addcarryx_u32(0x0, x511, x535, &_);
- { uint32_t x574; uint8_t x575 = _addcarryx_u32(x572, x514, x553, &x574);
- { uint32_t x577; uint8_t x578 = _addcarryx_u32(x575, x517, x556, &x577);
- { uint32_t x580; uint8_t x581 = _addcarryx_u32(x578, x520, x559, &x580);
- { uint32_t x583; uint8_t x584 = _addcarryx_u32(x581, x523, x562, &x583);
- { uint32_t x586; uint8_t x587 = _addcarryx_u32(x584, x526, x565, &x586);
- { uint32_t x589; uint8_t x590 = _addcarryx_u32(x587, x529, x568, &x589);
- { uint8_t x591 = (x590 + x530);
- { uint32_t x594; uint32_t x593 = _mulx_u32(x12, x15, &x594);
- { uint32_t x597; uint32_t x596 = _mulx_u32(x12, x17, &x597);
- { uint32_t x600; uint32_t x599 = _mulx_u32(x12, x19, &x600);
- { uint32_t x603; uint32_t x602 = _mulx_u32(x12, x21, &x603);
- { uint32_t x606; uint32_t x605 = _mulx_u32(x12, x23, &x606);
- { uint32_t x609; uint32_t x608 = _mulx_u32(x12, x22, &x609);
- { uint32_t x611; uint8_t x612 = _addcarryx_u32(0x0, x594, x596, &x611);
- { uint32_t x614; uint8_t x615 = _addcarryx_u32(x612, x597, x599, &x614);
- { uint32_t x617; uint8_t x618 = _addcarryx_u32(x615, x600, x602, &x617);
- { uint32_t x620; uint8_t x621 = _addcarryx_u32(x618, x603, x605, &x620);
- { uint32_t x623; uint8_t x624 = _addcarryx_u32(x621, x606, x608, &x623);
- { uint32_t x626; uint8_t _ = _addcarryx_u32(0x0, x624, x609, &x626);
- { uint32_t x629; uint8_t x630 = _addcarryx_u32(0x0, x574, x593, &x629);
- { uint32_t x632; uint8_t x633 = _addcarryx_u32(x630, x577, x611, &x632);
- { uint32_t x635; uint8_t x636 = _addcarryx_u32(x633, x580, x614, &x635);
- { uint32_t x638; uint8_t x639 = _addcarryx_u32(x636, x583, x617, &x638);
- { uint32_t x641; uint8_t x642 = _addcarryx_u32(x639, x586, x620, &x641);
- { uint32_t x644; uint8_t x645 = _addcarryx_u32(x642, x589, x623, &x644);
- { uint32_t x647; uint8_t x648 = _addcarryx_u32(x645, x591, x626, &x647);
- { uint32_t _; uint32_t x650 = _mulx_u32(x629, 0xf0f0f0f1, &_);
- { uint32_t x654; uint32_t x653 = _mulx_u32(x650, 0xffffffef, &x654);
- { uint32_t x657; uint32_t x656 = _mulx_u32(x650, 0xffffffff, &x657);
- { uint32_t x660; uint32_t x659 = _mulx_u32(x650, 0xffffffff, &x660);
- { uint32_t x663; uint32_t x662 = _mulx_u32(x650, 0xffffffff, &x663);
- { uint32_t x666; uint32_t x665 = _mulx_u32(x650, 0xffffffff, &x666);
- { uint32_t x669; uint32_t x668 = _mulx_u32(x650, 0x3fff, &x669);
- { uint32_t x671; uint8_t x672 = _addcarryx_u32(0x0, x654, x656, &x671);
- { uint32_t x674; uint8_t x675 = _addcarryx_u32(x672, x657, x659, &x674);
- { uint32_t x677; uint8_t x678 = _addcarryx_u32(x675, x660, x662, &x677);
- { uint32_t x680; uint8_t x681 = _addcarryx_u32(x678, x663, x665, &x680);
- { uint32_t x683; uint8_t x684 = _addcarryx_u32(x681, x666, x668, &x683);
- { uint32_t x686; uint8_t _ = _addcarryx_u32(0x0, x684, x669, &x686);
- { uint32_t _; uint8_t x690 = _addcarryx_u32(0x0, x629, x653, &_);
- { uint32_t x692; uint8_t x693 = _addcarryx_u32(x690, x632, x671, &x692);
- { uint32_t x695; uint8_t x696 = _addcarryx_u32(x693, x635, x674, &x695);
- { uint32_t x698; uint8_t x699 = _addcarryx_u32(x696, x638, x677, &x698);
- { uint32_t x701; uint8_t x702 = _addcarryx_u32(x699, x641, x680, &x701);
- { uint32_t x704; uint8_t x705 = _addcarryx_u32(x702, x644, x683, &x704);
- { uint32_t x707; uint8_t x708 = _addcarryx_u32(x705, x647, x686, &x707);
- { uint8_t x709 = (x708 + x648);
- { uint32_t x711; uint8_t x712 = _subborrow_u32(0x0, x692, 0xffffffef, &x711);
- { uint32_t x714; uint8_t x715 = _subborrow_u32(x712, x695, 0xffffffff, &x714);
- { uint32_t x717; uint8_t x718 = _subborrow_u32(x715, x698, 0xffffffff, &x717);
- { uint32_t x720; uint8_t x721 = _subborrow_u32(x718, x701, 0xffffffff, &x720);
- { uint32_t x723; uint8_t x724 = _subborrow_u32(x721, x704, 0xffffffff, &x723);
- { uint32_t x726; uint8_t x727 = _subborrow_u32(x724, x707, 0x3fff, &x726);
- { uint32_t _; uint8_t x730 = _subborrow_u32(x727, x709, 0x0, &_);
- { uint32_t x731 = cmovznz32(x730, x726, x707);
- { uint32_t x732 = cmovznz32(x730, x723, x704);
- { uint32_t x733 = cmovznz32(x730, x720, x701);
- { uint32_t x734 = cmovznz32(x730, x717, x698);
- { uint32_t x735 = cmovznz32(x730, x714, x695);
- { uint32_t x736 = cmovznz32(x730, x711, x692);
- out[0] = x736;
- out[1] = x735;
- out[2] = x734;
- out[3] = x733;
- out[4] = x732;
- out[5] = x731;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e174m17_6limbs/femul.v b/src/Specific/montgomery32_2e174m17_6limbs/femul.v
deleted file mode 100644
index 1f69b1793..000000000
--- a/src/Specific/montgomery32_2e174m17_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e174m17_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e174m17_6limbs/femulDisplay.log b/src/Specific/montgomery32_2e174m17_6limbs/femulDisplay.log
deleted file mode 100644
index 047054f7e..000000000
--- a/src/Specific/montgomery32_2e174m17_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,252 +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,
- uint32_t x25, uint32_t x26 = mulx_u32(x5, x15);
- uint32_t x28, uint32_t x29 = mulx_u32(x5, x17);
- uint32_t x31, uint32_t x32 = mulx_u32(x5, x19);
- uint32_t x34, uint32_t x35 = mulx_u32(x5, x21);
- uint32_t x37, uint32_t x38 = mulx_u32(x5, x23);
- uint32_t x40, uint32_t x41 = mulx_u32(x5, x22);
- uint32_t x43, uint8_t x44 = addcarryx_u32(0x0, x26, x28);
- uint32_t x46, uint8_t x47 = addcarryx_u32(x44, x29, x31);
- uint32_t x49, uint8_t x50 = addcarryx_u32(x47, x32, x34);
- uint32_t x52, uint8_t x53 = addcarryx_u32(x50, x35, x37);
- uint32_t x55, uint8_t x56 = addcarryx_u32(x53, x38, x40);
- uint32_t x58, uint8_t _ = addcarryx_u32(0x0, x56, x41);
- uint32_t x61, uint32_t _ = mulx_u32(x25, 0xf0f0f0f1);
- uint32_t x64, uint32_t x65 = mulx_u32(x61, 0xffffffef);
- uint32_t x67, uint32_t x68 = mulx_u32(x61, 0xffffffff);
- uint32_t x70, uint32_t x71 = mulx_u32(x61, 0xffffffff);
- uint32_t x73, uint32_t x74 = mulx_u32(x61, 0xffffffff);
- uint32_t x76, uint32_t x77 = mulx_u32(x61, 0xffffffff);
- uint32_t x79, uint32_t x80 = mulx_u32(x61, 0x3fff);
- uint32_t x82, uint8_t x83 = addcarryx_u32(0x0, x65, x67);
- uint32_t x85, uint8_t x86 = addcarryx_u32(x83, x68, x70);
- uint32_t x88, uint8_t x89 = addcarryx_u32(x86, x71, x73);
- uint32_t x91, uint8_t x92 = addcarryx_u32(x89, x74, x76);
- uint32_t x94, uint8_t x95 = addcarryx_u32(x92, x77, x79);
- uint32_t x97, uint8_t _ = addcarryx_u32(0x0, x95, x80);
- uint32_t _, uint8_t x101 = addcarryx_u32(0x0, x25, x64);
- uint32_t x103, uint8_t x104 = addcarryx_u32(x101, x43, x82);
- uint32_t x106, uint8_t x107 = addcarryx_u32(x104, x46, x85);
- uint32_t x109, uint8_t x110 = addcarryx_u32(x107, x49, x88);
- uint32_t x112, uint8_t x113 = addcarryx_u32(x110, x52, x91);
- uint32_t x115, uint8_t x116 = addcarryx_u32(x113, x55, x94);
- uint32_t x118, uint8_t x119 = addcarryx_u32(x116, x58, x97);
- uint32_t x121, uint32_t x122 = mulx_u32(x7, x15);
- uint32_t x124, uint32_t x125 = mulx_u32(x7, x17);
- uint32_t x127, uint32_t x128 = mulx_u32(x7, x19);
- uint32_t x130, uint32_t x131 = mulx_u32(x7, x21);
- uint32_t x133, uint32_t x134 = mulx_u32(x7, x23);
- uint32_t x136, uint32_t x137 = mulx_u32(x7, x22);
- uint32_t x139, uint8_t x140 = addcarryx_u32(0x0, x122, x124);
- uint32_t x142, uint8_t x143 = addcarryx_u32(x140, x125, x127);
- uint32_t x145, uint8_t x146 = addcarryx_u32(x143, x128, x130);
- uint32_t x148, uint8_t x149 = addcarryx_u32(x146, x131, x133);
- uint32_t x151, uint8_t x152 = addcarryx_u32(x149, x134, x136);
- uint32_t x154, uint8_t _ = addcarryx_u32(0x0, x152, x137);
- uint32_t x157, uint8_t x158 = addcarryx_u32(0x0, x103, x121);
- uint32_t x160, uint8_t x161 = addcarryx_u32(x158, x106, x139);
- uint32_t x163, uint8_t x164 = addcarryx_u32(x161, x109, x142);
- uint32_t x166, uint8_t x167 = addcarryx_u32(x164, x112, x145);
- uint32_t x169, uint8_t x170 = addcarryx_u32(x167, x115, x148);
- uint32_t x172, uint8_t x173 = addcarryx_u32(x170, x118, x151);
- uint32_t x175, uint8_t x176 = addcarryx_u32(x173, x119, x154);
- uint32_t x178, uint32_t _ = mulx_u32(x157, 0xf0f0f0f1);
- uint32_t x181, uint32_t x182 = mulx_u32(x178, 0xffffffef);
- uint32_t x184, uint32_t x185 = mulx_u32(x178, 0xffffffff);
- uint32_t x187, uint32_t x188 = mulx_u32(x178, 0xffffffff);
- uint32_t x190, uint32_t x191 = mulx_u32(x178, 0xffffffff);
- uint32_t x193, uint32_t x194 = mulx_u32(x178, 0xffffffff);
- uint32_t x196, uint32_t x197 = mulx_u32(x178, 0x3fff);
- uint32_t x199, uint8_t x200 = addcarryx_u32(0x0, x182, x184);
- uint32_t x202, uint8_t x203 = addcarryx_u32(x200, x185, x187);
- uint32_t x205, uint8_t x206 = addcarryx_u32(x203, x188, x190);
- uint32_t x208, uint8_t x209 = addcarryx_u32(x206, x191, x193);
- uint32_t x211, uint8_t x212 = addcarryx_u32(x209, x194, x196);
- uint32_t x214, uint8_t _ = addcarryx_u32(0x0, x212, x197);
- uint32_t _, uint8_t x218 = addcarryx_u32(0x0, x157, x181);
- uint32_t x220, uint8_t x221 = addcarryx_u32(x218, x160, x199);
- uint32_t x223, uint8_t x224 = addcarryx_u32(x221, x163, x202);
- uint32_t x226, uint8_t x227 = addcarryx_u32(x224, x166, x205);
- uint32_t x229, uint8_t x230 = addcarryx_u32(x227, x169, x208);
- uint32_t x232, uint8_t x233 = addcarryx_u32(x230, x172, x211);
- uint32_t x235, uint8_t x236 = addcarryx_u32(x233, x175, x214);
- uint8_t x237 = (x236 + x176);
- uint32_t x239, uint32_t x240 = mulx_u32(x9, x15);
- uint32_t x242, uint32_t x243 = mulx_u32(x9, x17);
- uint32_t x245, uint32_t x246 = mulx_u32(x9, x19);
- uint32_t x248, uint32_t x249 = mulx_u32(x9, x21);
- uint32_t x251, uint32_t x252 = mulx_u32(x9, x23);
- uint32_t x254, uint32_t x255 = mulx_u32(x9, x22);
- uint32_t x257, uint8_t x258 = addcarryx_u32(0x0, x240, x242);
- uint32_t x260, uint8_t x261 = addcarryx_u32(x258, x243, x245);
- uint32_t x263, uint8_t x264 = addcarryx_u32(x261, x246, x248);
- uint32_t x266, uint8_t x267 = addcarryx_u32(x264, x249, x251);
- uint32_t x269, uint8_t x270 = addcarryx_u32(x267, x252, x254);
- uint32_t x272, uint8_t _ = addcarryx_u32(0x0, x270, x255);
- uint32_t x275, uint8_t x276 = addcarryx_u32(0x0, x220, x239);
- uint32_t x278, uint8_t x279 = addcarryx_u32(x276, x223, x257);
- uint32_t x281, uint8_t x282 = addcarryx_u32(x279, x226, x260);
- uint32_t x284, uint8_t x285 = addcarryx_u32(x282, x229, x263);
- uint32_t x287, uint8_t x288 = addcarryx_u32(x285, x232, x266);
- uint32_t x290, uint8_t x291 = addcarryx_u32(x288, x235, x269);
- uint32_t x293, uint8_t x294 = addcarryx_u32(x291, x237, x272);
- uint32_t x296, uint32_t _ = mulx_u32(x275, 0xf0f0f0f1);
- uint32_t x299, uint32_t x300 = mulx_u32(x296, 0xffffffef);
- uint32_t x302, uint32_t x303 = mulx_u32(x296, 0xffffffff);
- uint32_t x305, uint32_t x306 = mulx_u32(x296, 0xffffffff);
- uint32_t x308, uint32_t x309 = mulx_u32(x296, 0xffffffff);
- uint32_t x311, uint32_t x312 = mulx_u32(x296, 0xffffffff);
- uint32_t x314, uint32_t x315 = mulx_u32(x296, 0x3fff);
- uint32_t x317, uint8_t x318 = addcarryx_u32(0x0, x300, x302);
- uint32_t x320, uint8_t x321 = addcarryx_u32(x318, x303, x305);
- uint32_t x323, uint8_t x324 = addcarryx_u32(x321, x306, x308);
- uint32_t x326, uint8_t x327 = addcarryx_u32(x324, x309, x311);
- uint32_t x329, uint8_t x330 = addcarryx_u32(x327, x312, x314);
- uint32_t x332, uint8_t _ = addcarryx_u32(0x0, x330, x315);
- uint32_t _, uint8_t x336 = addcarryx_u32(0x0, x275, x299);
- uint32_t x338, uint8_t x339 = addcarryx_u32(x336, x278, x317);
- uint32_t x341, uint8_t x342 = addcarryx_u32(x339, x281, x320);
- uint32_t x344, uint8_t x345 = addcarryx_u32(x342, x284, x323);
- uint32_t x347, uint8_t x348 = addcarryx_u32(x345, x287, x326);
- uint32_t x350, uint8_t x351 = addcarryx_u32(x348, x290, x329);
- uint32_t x353, uint8_t x354 = addcarryx_u32(x351, x293, x332);
- uint8_t x355 = (x354 + x294);
- uint32_t x357, uint32_t x358 = mulx_u32(x11, x15);
- uint32_t x360, uint32_t x361 = mulx_u32(x11, x17);
- uint32_t x363, uint32_t x364 = mulx_u32(x11, x19);
- uint32_t x366, uint32_t x367 = mulx_u32(x11, x21);
- uint32_t x369, uint32_t x370 = mulx_u32(x11, x23);
- uint32_t x372, uint32_t x373 = mulx_u32(x11, x22);
- uint32_t x375, uint8_t x376 = addcarryx_u32(0x0, x358, x360);
- uint32_t x378, uint8_t x379 = addcarryx_u32(x376, x361, x363);
- uint32_t x381, uint8_t x382 = addcarryx_u32(x379, x364, x366);
- uint32_t x384, uint8_t x385 = addcarryx_u32(x382, x367, x369);
- uint32_t x387, uint8_t x388 = addcarryx_u32(x385, x370, x372);
- uint32_t x390, uint8_t _ = addcarryx_u32(0x0, x388, x373);
- uint32_t x393, uint8_t x394 = addcarryx_u32(0x0, x338, x357);
- uint32_t x396, uint8_t x397 = addcarryx_u32(x394, x341, x375);
- uint32_t x399, uint8_t x400 = addcarryx_u32(x397, x344, x378);
- uint32_t x402, uint8_t x403 = addcarryx_u32(x400, x347, x381);
- uint32_t x405, uint8_t x406 = addcarryx_u32(x403, x350, x384);
- uint32_t x408, uint8_t x409 = addcarryx_u32(x406, x353, x387);
- uint32_t x411, uint8_t x412 = addcarryx_u32(x409, x355, x390);
- uint32_t x414, uint32_t _ = mulx_u32(x393, 0xf0f0f0f1);
- uint32_t x417, uint32_t x418 = mulx_u32(x414, 0xffffffef);
- uint32_t x420, uint32_t x421 = mulx_u32(x414, 0xffffffff);
- uint32_t x423, uint32_t x424 = mulx_u32(x414, 0xffffffff);
- uint32_t x426, uint32_t x427 = mulx_u32(x414, 0xffffffff);
- uint32_t x429, uint32_t x430 = mulx_u32(x414, 0xffffffff);
- uint32_t x432, uint32_t x433 = mulx_u32(x414, 0x3fff);
- uint32_t x435, uint8_t x436 = addcarryx_u32(0x0, x418, x420);
- uint32_t x438, uint8_t x439 = addcarryx_u32(x436, x421, x423);
- uint32_t x441, uint8_t x442 = addcarryx_u32(x439, x424, x426);
- uint32_t x444, uint8_t x445 = addcarryx_u32(x442, x427, x429);
- uint32_t x447, uint8_t x448 = addcarryx_u32(x445, x430, x432);
- uint32_t x450, uint8_t _ = addcarryx_u32(0x0, x448, x433);
- uint32_t _, uint8_t x454 = addcarryx_u32(0x0, x393, x417);
- uint32_t x456, uint8_t x457 = addcarryx_u32(x454, x396, x435);
- uint32_t x459, uint8_t x460 = addcarryx_u32(x457, x399, x438);
- uint32_t x462, uint8_t x463 = addcarryx_u32(x460, x402, x441);
- uint32_t x465, uint8_t x466 = addcarryx_u32(x463, x405, x444);
- uint32_t x468, uint8_t x469 = addcarryx_u32(x466, x408, x447);
- uint32_t x471, uint8_t x472 = addcarryx_u32(x469, x411, x450);
- uint8_t x473 = (x472 + x412);
- uint32_t x475, uint32_t x476 = mulx_u32(x13, x15);
- uint32_t x478, uint32_t x479 = mulx_u32(x13, x17);
- uint32_t x481, uint32_t x482 = mulx_u32(x13, x19);
- uint32_t x484, uint32_t x485 = mulx_u32(x13, x21);
- uint32_t x487, uint32_t x488 = mulx_u32(x13, x23);
- uint32_t x490, uint32_t x491 = mulx_u32(x13, x22);
- uint32_t x493, uint8_t x494 = addcarryx_u32(0x0, x476, x478);
- uint32_t x496, uint8_t x497 = addcarryx_u32(x494, x479, x481);
- uint32_t x499, uint8_t x500 = addcarryx_u32(x497, x482, x484);
- uint32_t x502, uint8_t x503 = addcarryx_u32(x500, x485, x487);
- uint32_t x505, uint8_t x506 = addcarryx_u32(x503, x488, x490);
- uint32_t x508, uint8_t _ = addcarryx_u32(0x0, x506, x491);
- uint32_t x511, uint8_t x512 = addcarryx_u32(0x0, x456, x475);
- uint32_t x514, uint8_t x515 = addcarryx_u32(x512, x459, x493);
- uint32_t x517, uint8_t x518 = addcarryx_u32(x515, x462, x496);
- uint32_t x520, uint8_t x521 = addcarryx_u32(x518, x465, x499);
- uint32_t x523, uint8_t x524 = addcarryx_u32(x521, x468, x502);
- uint32_t x526, uint8_t x527 = addcarryx_u32(x524, x471, x505);
- uint32_t x529, uint8_t x530 = addcarryx_u32(x527, x473, x508);
- uint32_t x532, uint32_t _ = mulx_u32(x511, 0xf0f0f0f1);
- uint32_t x535, uint32_t x536 = mulx_u32(x532, 0xffffffef);
- uint32_t x538, uint32_t x539 = mulx_u32(x532, 0xffffffff);
- uint32_t x541, uint32_t x542 = mulx_u32(x532, 0xffffffff);
- uint32_t x544, uint32_t x545 = mulx_u32(x532, 0xffffffff);
- uint32_t x547, uint32_t x548 = mulx_u32(x532, 0xffffffff);
- uint32_t x550, uint32_t x551 = mulx_u32(x532, 0x3fff);
- uint32_t x553, uint8_t x554 = addcarryx_u32(0x0, x536, x538);
- uint32_t x556, uint8_t x557 = addcarryx_u32(x554, x539, x541);
- uint32_t x559, uint8_t x560 = addcarryx_u32(x557, x542, x544);
- uint32_t x562, uint8_t x563 = addcarryx_u32(x560, x545, x547);
- uint32_t x565, uint8_t x566 = addcarryx_u32(x563, x548, x550);
- uint32_t x568, uint8_t _ = addcarryx_u32(0x0, x566, x551);
- uint32_t _, uint8_t x572 = addcarryx_u32(0x0, x511, x535);
- uint32_t x574, uint8_t x575 = addcarryx_u32(x572, x514, x553);
- uint32_t x577, uint8_t x578 = addcarryx_u32(x575, x517, x556);
- uint32_t x580, uint8_t x581 = addcarryx_u32(x578, x520, x559);
- uint32_t x583, uint8_t x584 = addcarryx_u32(x581, x523, x562);
- uint32_t x586, uint8_t x587 = addcarryx_u32(x584, x526, x565);
- uint32_t x589, uint8_t x590 = addcarryx_u32(x587, x529, x568);
- uint8_t x591 = (x590 + x530);
- uint32_t x593, uint32_t x594 = mulx_u32(x12, x15);
- uint32_t x596, uint32_t x597 = mulx_u32(x12, x17);
- uint32_t x599, uint32_t x600 = mulx_u32(x12, x19);
- uint32_t x602, uint32_t x603 = mulx_u32(x12, x21);
- uint32_t x605, uint32_t x606 = mulx_u32(x12, x23);
- uint32_t x608, uint32_t x609 = mulx_u32(x12, x22);
- uint32_t x611, uint8_t x612 = addcarryx_u32(0x0, x594, x596);
- uint32_t x614, uint8_t x615 = addcarryx_u32(x612, x597, x599);
- uint32_t x617, uint8_t x618 = addcarryx_u32(x615, x600, x602);
- uint32_t x620, uint8_t x621 = addcarryx_u32(x618, x603, x605);
- uint32_t x623, uint8_t x624 = addcarryx_u32(x621, x606, x608);
- uint32_t x626, uint8_t _ = addcarryx_u32(0x0, x624, x609);
- uint32_t x629, uint8_t x630 = addcarryx_u32(0x0, x574, x593);
- uint32_t x632, uint8_t x633 = addcarryx_u32(x630, x577, x611);
- uint32_t x635, uint8_t x636 = addcarryx_u32(x633, x580, x614);
- uint32_t x638, uint8_t x639 = addcarryx_u32(x636, x583, x617);
- uint32_t x641, uint8_t x642 = addcarryx_u32(x639, x586, x620);
- uint32_t x644, uint8_t x645 = addcarryx_u32(x642, x589, x623);
- uint32_t x647, uint8_t x648 = addcarryx_u32(x645, x591, x626);
- uint32_t x650, uint32_t _ = mulx_u32(x629, 0xf0f0f0f1);
- uint32_t x653, uint32_t x654 = mulx_u32(x650, 0xffffffef);
- uint32_t x656, uint32_t x657 = mulx_u32(x650, 0xffffffff);
- uint32_t x659, uint32_t x660 = mulx_u32(x650, 0xffffffff);
- uint32_t x662, uint32_t x663 = mulx_u32(x650, 0xffffffff);
- uint32_t x665, uint32_t x666 = mulx_u32(x650, 0xffffffff);
- uint32_t x668, uint32_t x669 = mulx_u32(x650, 0x3fff);
- uint32_t x671, uint8_t x672 = addcarryx_u32(0x0, x654, x656);
- uint32_t x674, uint8_t x675 = addcarryx_u32(x672, x657, x659);
- uint32_t x677, uint8_t x678 = addcarryx_u32(x675, x660, x662);
- uint32_t x680, uint8_t x681 = addcarryx_u32(x678, x663, x665);
- uint32_t x683, uint8_t x684 = addcarryx_u32(x681, x666, x668);
- uint32_t x686, uint8_t _ = addcarryx_u32(0x0, x684, x669);
- uint32_t _, uint8_t x690 = addcarryx_u32(0x0, x629, x653);
- uint32_t x692, uint8_t x693 = addcarryx_u32(x690, x632, x671);
- uint32_t x695, uint8_t x696 = addcarryx_u32(x693, x635, x674);
- uint32_t x698, uint8_t x699 = addcarryx_u32(x696, x638, x677);
- uint32_t x701, uint8_t x702 = addcarryx_u32(x699, x641, x680);
- uint32_t x704, uint8_t x705 = addcarryx_u32(x702, x644, x683);
- uint32_t x707, uint8_t x708 = addcarryx_u32(x705, x647, x686);
- uint8_t x709 = (x708 + x648);
- uint32_t x711, uint8_t x712 = subborrow_u32(0x0, x692, 0xffffffef);
- uint32_t x714, uint8_t x715 = subborrow_u32(x712, x695, 0xffffffff);
- uint32_t x717, uint8_t x718 = subborrow_u32(x715, x698, 0xffffffff);
- uint32_t x720, uint8_t x721 = subborrow_u32(x718, x701, 0xffffffff);
- uint32_t x723, uint8_t x724 = subborrow_u32(x721, x704, 0xffffffff);
- uint32_t x726, uint8_t x727 = subborrow_u32(x724, x707, 0x3fff);
- uint32_t _, uint8_t x730 = subborrow_u32(x727, x709, 0x0);
- uint32_t x731 = cmovznz32(x730, x726, x707);
- uint32_t x732 = cmovznz32(x730, x723, x704);
- uint32_t x733 = cmovznz32(x730, x720, x701);
- uint32_t x734 = cmovznz32(x730, x717, x698);
- uint32_t x735 = cmovznz32(x730, x714, x695);
- uint32_t x736 = cmovznz32(x730, x711, x692);
- return (x731, x732, x733, x734, x735, x736))
-(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/montgomery32_2e174m17_6limbs/femulDisplay.v b/src/Specific/montgomery32_2e174m17_6limbs/femulDisplay.v
deleted file mode 100644
index 05308cd1c..000000000
--- a/src/Specific/montgomery32_2e174m17_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e174m17_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e174m17_6limbs/fenz.c b/src/Specific/montgomery32_2e174m17_6limbs/fenz.c
deleted file mode 100644
index 2e0454af1..000000000
--- a/src/Specific/montgomery32_2e174m17_6limbs/fenz.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], 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 x11 = (x10 | x9);
- { uint32_t x12 = (x8 | x11);
- { uint32_t x13 = (x6 | x12);
- { uint32_t x14 = (x4 | x13);
- { uint32_t x15 = (x2 | x14);
- out[0] = x15;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e174m17_6limbs/fenz.v b/src/Specific/montgomery32_2e174m17_6limbs/fenz.v
deleted file mode 100644
index 994fabd7b..000000000
--- a/src/Specific/montgomery32_2e174m17_6limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e174m17_6limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e174m17_6limbs/fenzDisplay.log b/src/Specific/montgomery32_2e174m17_6limbs/fenzDisplay.log
deleted file mode 100644
index 616138b7b..000000000
--- a/src/Specific/montgomery32_2e174m17_6limbs/fenzDisplay.log
+++ /dev/null
@@ -1,12 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint32_t x11 = (x10 | x9);
- uint32_t x12 = (x8 | x11);
- uint32_t x13 = (x6 | x12);
- uint32_t x14 = (x4 | x13);
- uint32_t x15 = (x2 | x14);
- return x15)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e174m17_6limbs/fenzDisplay.v b/src/Specific/montgomery32_2e174m17_6limbs/fenzDisplay.v
deleted file mode 100644
index 07974e3c1..000000000
--- a/src/Specific/montgomery32_2e174m17_6limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e174m17_6limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e174m17_6limbs/feopp.c b/src/Specific/montgomery32_2e174m17_6limbs/feopp.c
deleted file mode 100644
index 65336f912..000000000
--- a/src/Specific/montgomery32_2e174m17_6limbs/feopp.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feopp(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 = _subborrow_u32(0x0, 0x0, x2, &x12);
- { uint32_t x15; uint8_t x16 = _subborrow_u32(x13, 0x0, x4, &x15);
- { uint32_t x18; uint8_t x19 = _subborrow_u32(x16, 0x0, x6, &x18);
- { uint32_t x21; uint8_t x22 = _subborrow_u32(x19, 0x0, x8, &x21);
- { uint32_t x24; uint8_t x25 = _subborrow_u32(x22, 0x0, x10, &x24);
- { uint32_t x27; uint8_t x28 = _subborrow_u32(x25, 0x0, x9, &x27);
- { uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- { uint32_t x30 = (x29 & 0xffffffef);
- { uint32_t x32; uint8_t x33 = _addcarryx_u32(0x0, x12, x30, &x32);
- { uint32_t x34 = (x29 & 0xffffffff);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(x33, x15, x34, &x36);
- { uint32_t x38 = (x29 & 0xffffffff);
- { uint32_t x40; uint8_t x41 = _addcarryx_u32(x37, x18, x38, &x40);
- { uint32_t x42 = (x29 & 0xffffffff);
- { uint32_t x44; uint8_t x45 = _addcarryx_u32(x41, x21, x42, &x44);
- { uint32_t x46 = (x29 & 0xffffffff);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x45, x24, x46, &x48);
- { uint32_t x50 = (x29 & 0x3fff);
- { uint32_t x52; uint8_t _ = _addcarryx_u32(x49, x27, x50, &x52);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e174m17_6limbs/feopp.v b/src/Specific/montgomery32_2e174m17_6limbs/feopp.v
deleted file mode 100644
index b165d23c1..000000000
--- a/src/Specific/montgomery32_2e174m17_6limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e174m17_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e174m17_6limbs/feoppDisplay.log b/src/Specific/montgomery32_2e174m17_6limbs/feoppDisplay.log
deleted file mode 100644
index 189315f28..000000000
--- a/src/Specific/montgomery32_2e174m17_6limbs/feoppDisplay.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 = subborrow_u32(0x0, 0x0, x2);
- uint32_t x15, uint8_t x16 = subborrow_u32(x13, 0x0, x4);
- uint32_t x18, uint8_t x19 = subborrow_u32(x16, 0x0, x6);
- uint32_t x21, uint8_t x22 = subborrow_u32(x19, 0x0, x8);
- uint32_t x24, uint8_t x25 = subborrow_u32(x22, 0x0, x10);
- uint32_t x27, uint8_t x28 = subborrow_u32(x25, 0x0, x9);
- uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- uint32_t x30 = (x29 & 0xffffffef);
- uint32_t x32, uint8_t x33 = addcarryx_u32(0x0, x12, x30);
- uint32_t x34 = (x29 & 0xffffffff);
- uint32_t x36, uint8_t x37 = addcarryx_u32(x33, x15, x34);
- uint32_t x38 = (x29 & 0xffffffff);
- uint32_t x40, uint8_t x41 = addcarryx_u32(x37, x18, x38);
- uint32_t x42 = (x29 & 0xffffffff);
- uint32_t x44, uint8_t x45 = addcarryx_u32(x41, x21, x42);
- uint32_t x46 = (x29 & 0xffffffff);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x45, x24, x46);
- uint32_t x50 = (x29 & 0x3fff);
- uint32_t x52, uint8_t _ = addcarryx_u32(x49, x27, 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/montgomery32_2e174m17_6limbs/feoppDisplay.v b/src/Specific/montgomery32_2e174m17_6limbs/feoppDisplay.v
deleted file mode 100644
index 91a7358f1..000000000
--- a/src/Specific/montgomery32_2e174m17_6limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e174m17_6limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e174m17_6limbs/fesquare.c b/src/Specific/montgomery32_2e174m17_6limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e174m17_6limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e174m17_6limbs/fesub.c b/src/Specific/montgomery32_2e174m17_6limbs/fesub.c
deleted file mode 100644
index e66d18339..000000000
--- a/src/Specific/montgomery32_2e174m17_6limbs/fesub.c
+++ /dev/null
@@ -1,40 +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];
- { uint32_t x25; uint8_t x26 = _subborrow_u32(0x0, x5, x15, &x25);
- { uint32_t x28; uint8_t x29 = _subborrow_u32(x26, x7, x17, &x28);
- { uint32_t x31; uint8_t x32 = _subborrow_u32(x29, x9, x19, &x31);
- { uint32_t x34; uint8_t x35 = _subborrow_u32(x32, x11, x21, &x34);
- { uint32_t x37; uint8_t x38 = _subborrow_u32(x35, x13, x23, &x37);
- { uint32_t x40; uint8_t x41 = _subborrow_u32(x38, x12, x22, &x40);
- { uint32_t x42 = cmovznz32(x41, 0x0, 0xffffffff);
- { uint32_t x43 = (x42 & 0xffffffef);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(0x0, x25, x43, &x45);
- { uint32_t x47 = (x42 & 0xffffffff);
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(x46, x28, x47, &x49);
- { uint32_t x51 = (x42 & 0xffffffff);
- { uint32_t x53; uint8_t x54 = _addcarryx_u32(x50, x31, x51, &x53);
- { uint32_t x55 = (x42 & 0xffffffff);
- { uint32_t x57; uint8_t x58 = _addcarryx_u32(x54, x34, x55, &x57);
- { uint32_t x59 = (x42 & 0xffffffff);
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(x58, x37, x59, &x61);
- { uint32_t x63 = (x42 & 0x3fff);
- { uint32_t x65; uint8_t _ = _addcarryx_u32(x62, x40, x63, &x65);
- out[0] = x45;
- out[1] = x49;
- out[2] = x53;
- out[3] = x57;
- out[4] = x61;
- out[5] = x65;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e174m17_6limbs/fesub.v b/src/Specific/montgomery32_2e174m17_6limbs/fesub.v
deleted file mode 100644
index 03d09f0b7..000000000
--- a/src/Specific/montgomery32_2e174m17_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e174m17_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e174m17_6limbs/fesubDisplay.log b/src/Specific/montgomery32_2e174m17_6limbs/fesubDisplay.log
deleted file mode 100644
index d5763203a..000000000
--- a/src/Specific/montgomery32_2e174m17_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,26 +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,
- uint32_t x25, uint8_t x26 = subborrow_u32(0x0, x5, x15);
- uint32_t x28, uint8_t x29 = subborrow_u32(x26, x7, x17);
- uint32_t x31, uint8_t x32 = subborrow_u32(x29, x9, x19);
- uint32_t x34, uint8_t x35 = subborrow_u32(x32, x11, x21);
- uint32_t x37, uint8_t x38 = subborrow_u32(x35, x13, x23);
- uint32_t x40, uint8_t x41 = subborrow_u32(x38, x12, x22);
- uint32_t x42 = cmovznz32(x41, 0x0, 0xffffffff);
- uint32_t x43 = (x42 & 0xffffffef);
- uint32_t x45, uint8_t x46 = addcarryx_u32(0x0, x25, x43);
- uint32_t x47 = (x42 & 0xffffffff);
- uint32_t x49, uint8_t x50 = addcarryx_u32(x46, x28, x47);
- uint32_t x51 = (x42 & 0xffffffff);
- uint32_t x53, uint8_t x54 = addcarryx_u32(x50, x31, x51);
- uint32_t x55 = (x42 & 0xffffffff);
- uint32_t x57, uint8_t x58 = addcarryx_u32(x54, x34, x55);
- uint32_t x59 = (x42 & 0xffffffff);
- uint32_t x61, uint8_t x62 = addcarryx_u32(x58, x37, x59);
- uint32_t x63 = (x42 & 0x3fff);
- uint32_t x65, uint8_t _ = addcarryx_u32(x62, x40, x63);
- (Return x65, Return x61, Return x57, Return x53, Return x49, Return x45))
-(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/montgomery32_2e174m17_6limbs/fesubDisplay.v b/src/Specific/montgomery32_2e174m17_6limbs/fesubDisplay.v
deleted file mode 100644
index 0c89f8a7b..000000000
--- a/src/Specific/montgomery32_2e174m17_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e174m17_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e174m17_6limbs/py_interpreter.sh b/src/Specific/montgomery32_2e174m17_6limbs/py_interpreter.sh
deleted file mode 100755
index d804b4d00..000000000
--- a/src/Specific/montgomery32_2e174m17_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**174 - 17' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e174m3_6limbs/CurveParameters.v b/src/Specific/montgomery32_2e174m3_6limbs/CurveParameters.v
deleted file mode 100644
index 722991370..000000000
--- a/src/Specific/montgomery32_2e174m3_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^174 - 3
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 32;
- bitwidth := 32;
- s := 2^174;
- c := [(1, 3)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e174m3_6limbs/Synthesis.v b/src/Specific/montgomery32_2e174m3_6limbs/Synthesis.v
deleted file mode 100644
index 8502091ec..000000000
--- a/src/Specific/montgomery32_2e174m3_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e174m3_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/montgomery32_2e174m3_6limbs/compiler.sh b/src/Specific/montgomery32_2e174m3_6limbs/compiler.sh
deleted file mode 100755
index 6668c860a..000000000
--- a/src/Specific/montgomery32_2e174m3_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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<174) - 3' "$@"
diff --git a/src/Specific/montgomery32_2e174m3_6limbs/compilerxx.sh b/src/Specific/montgomery32_2e174m3_6limbs/compilerxx.sh
deleted file mode 100755
index aa5307ecb..000000000
--- a/src/Specific/montgomery32_2e174m3_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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<174) - 3' "$@"
diff --git a/src/Specific/montgomery32_2e174m3_6limbs/feadd.c b/src/Specific/montgomery32_2e174m3_6limbs/feadd.c
deleted file mode 100644
index e6f12dcab..000000000
--- a/src/Specific/montgomery32_2e174m3_6limbs/feadd.c
+++ /dev/null
@@ -1,40 +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];
- { uint32_t x25; uint8_t x26 = _addcarryx_u32(0x0, x5, x15, &x25);
- { uint32_t x28; uint8_t x29 = _addcarryx_u32(x26, x7, x17, &x28);
- { uint32_t x31; uint8_t x32 = _addcarryx_u32(x29, x9, x19, &x31);
- { uint32_t x34; uint8_t x35 = _addcarryx_u32(x32, x11, x21, &x34);
- { uint32_t x37; uint8_t x38 = _addcarryx_u32(x35, x13, x23, &x37);
- { uint32_t x40; uint8_t x41 = _addcarryx_u32(x38, x12, x22, &x40);
- { uint32_t x43; uint8_t x44 = _subborrow_u32(0x0, x25, 0xfffffffd, &x43);
- { uint32_t x46; uint8_t x47 = _subborrow_u32(x44, x28, 0xffffffff, &x46);
- { uint32_t x49; uint8_t x50 = _subborrow_u32(x47, x31, 0xffffffff, &x49);
- { uint32_t x52; uint8_t x53 = _subborrow_u32(x50, x34, 0xffffffff, &x52);
- { uint32_t x55; uint8_t x56 = _subborrow_u32(x53, x37, 0xffffffff, &x55);
- { uint32_t x58; uint8_t x59 = _subborrow_u32(x56, x40, 0x3fff, &x58);
- { uint32_t _; uint8_t x62 = _subborrow_u32(x59, x41, 0x0, &_);
- { uint32_t x63 = cmovznz32(x62, x58, x40);
- { uint32_t x64 = cmovznz32(x62, x55, x37);
- { uint32_t x65 = cmovznz32(x62, x52, x34);
- { uint32_t x66 = cmovznz32(x62, x49, x31);
- { uint32_t x67 = cmovznz32(x62, x46, x28);
- { uint32_t x68 = cmovznz32(x62, x43, x25);
- out[0] = x68;
- out[1] = x67;
- out[2] = x66;
- out[3] = x65;
- out[4] = x64;
- out[5] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e174m3_6limbs/feadd.v b/src/Specific/montgomery32_2e174m3_6limbs/feadd.v
deleted file mode 100644
index 0832c6441..000000000
--- a/src/Specific/montgomery32_2e174m3_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e174m3_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e174m3_6limbs/feaddDisplay.log b/src/Specific/montgomery32_2e174m3_6limbs/feaddDisplay.log
deleted file mode 100644
index e0691d08d..000000000
--- a/src/Specific/montgomery32_2e174m3_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,26 +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,
- uint32_t x25, uint8_t x26 = addcarryx_u32(0x0, x5, x15);
- uint32_t x28, uint8_t x29 = addcarryx_u32(x26, x7, x17);
- uint32_t x31, uint8_t x32 = addcarryx_u32(x29, x9, x19);
- uint32_t x34, uint8_t x35 = addcarryx_u32(x32, x11, x21);
- uint32_t x37, uint8_t x38 = addcarryx_u32(x35, x13, x23);
- uint32_t x40, uint8_t x41 = addcarryx_u32(x38, x12, x22);
- uint32_t x43, uint8_t x44 = subborrow_u32(0x0, x25, 0xfffffffd);
- uint32_t x46, uint8_t x47 = subborrow_u32(x44, x28, 0xffffffff);
- uint32_t x49, uint8_t x50 = subborrow_u32(x47, x31, 0xffffffff);
- uint32_t x52, uint8_t x53 = subborrow_u32(x50, x34, 0xffffffff);
- uint32_t x55, uint8_t x56 = subborrow_u32(x53, x37, 0xffffffff);
- uint32_t x58, uint8_t x59 = subborrow_u32(x56, x40, 0x3fff);
- uint32_t _, uint8_t x62 = subborrow_u32(x59, x41, 0x0);
- uint32_t x63 = cmovznz32(x62, x58, x40);
- uint32_t x64 = cmovznz32(x62, x55, x37);
- uint32_t x65 = cmovznz32(x62, x52, x34);
- uint32_t x66 = cmovznz32(x62, x49, x31);
- uint32_t x67 = cmovznz32(x62, x46, x28);
- uint32_t x68 = cmovznz32(x62, x43, x25);
- return (x63, x64, x65, x66, x67, x68))
-(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/montgomery32_2e174m3_6limbs/feaddDisplay.v b/src/Specific/montgomery32_2e174m3_6limbs/feaddDisplay.v
deleted file mode 100644
index 59a5affe3..000000000
--- a/src/Specific/montgomery32_2e174m3_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e174m3_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e174m3_6limbs/femul.c b/src/Specific/montgomery32_2e174m3_6limbs/femul.c
deleted file mode 100644
index 62d0623a2..000000000
--- a/src/Specific/montgomery32_2e174m3_6limbs/femul.c
+++ /dev/null
@@ -1,266 +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];
- { uint32_t x26; uint32_t x25 = _mulx_u32(x5, x15, &x26);
- { uint32_t x29; uint32_t x28 = _mulx_u32(x5, x17, &x29);
- { uint32_t x32; uint32_t x31 = _mulx_u32(x5, x19, &x32);
- { uint32_t x35; uint32_t x34 = _mulx_u32(x5, x21, &x35);
- { uint32_t x38; uint32_t x37 = _mulx_u32(x5, x23, &x38);
- { uint32_t x41; uint32_t x40 = _mulx_u32(x5, x22, &x41);
- { uint32_t x43; uint8_t x44 = _addcarryx_u32(0x0, x26, x28, &x43);
- { uint32_t x46; uint8_t x47 = _addcarryx_u32(x44, x29, x31, &x46);
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(x47, x32, x34, &x49);
- { uint32_t x52; uint8_t x53 = _addcarryx_u32(x50, x35, x37, &x52);
- { uint32_t x55; uint8_t x56 = _addcarryx_u32(x53, x38, x40, &x55);
- { uint32_t x58; uint8_t _ = _addcarryx_u32(0x0, x56, x41, &x58);
- { uint32_t _; uint32_t x61 = _mulx_u32(x25, 0xaaaaaaab, &_);
- { uint32_t x65; uint32_t x64 = _mulx_u32(x61, 0xfffffffd, &x65);
- { uint32_t x68; uint32_t x67 = _mulx_u32(x61, 0xffffffff, &x68);
- { uint32_t x71; uint32_t x70 = _mulx_u32(x61, 0xffffffff, &x71);
- { uint32_t x74; uint32_t x73 = _mulx_u32(x61, 0xffffffff, &x74);
- { uint32_t x77; uint32_t x76 = _mulx_u32(x61, 0xffffffff, &x77);
- { uint32_t x80; uint32_t x79 = _mulx_u32(x61, 0x3fff, &x80);
- { uint32_t x82; uint8_t x83 = _addcarryx_u32(0x0, x65, x67, &x82);
- { uint32_t x85; uint8_t x86 = _addcarryx_u32(x83, x68, x70, &x85);
- { uint32_t x88; uint8_t x89 = _addcarryx_u32(x86, x71, x73, &x88);
- { uint32_t x91; uint8_t x92 = _addcarryx_u32(x89, x74, x76, &x91);
- { uint32_t x94; uint8_t x95 = _addcarryx_u32(x92, x77, x79, &x94);
- { uint32_t x97; uint8_t _ = _addcarryx_u32(0x0, x95, x80, &x97);
- { uint32_t _; uint8_t x101 = _addcarryx_u32(0x0, x25, x64, &_);
- { uint32_t x103; uint8_t x104 = _addcarryx_u32(x101, x43, x82, &x103);
- { uint32_t x106; uint8_t x107 = _addcarryx_u32(x104, x46, x85, &x106);
- { uint32_t x109; uint8_t x110 = _addcarryx_u32(x107, x49, x88, &x109);
- { uint32_t x112; uint8_t x113 = _addcarryx_u32(x110, x52, x91, &x112);
- { uint32_t x115; uint8_t x116 = _addcarryx_u32(x113, x55, x94, &x115);
- { uint32_t x118; uint8_t x119 = _addcarryx_u32(x116, x58, x97, &x118);
- { uint32_t x122; uint32_t x121 = _mulx_u32(x7, x15, &x122);
- { uint32_t x125; uint32_t x124 = _mulx_u32(x7, x17, &x125);
- { uint32_t x128; uint32_t x127 = _mulx_u32(x7, x19, &x128);
- { uint32_t x131; uint32_t x130 = _mulx_u32(x7, x21, &x131);
- { uint32_t x134; uint32_t x133 = _mulx_u32(x7, x23, &x134);
- { uint32_t x137; uint32_t x136 = _mulx_u32(x7, x22, &x137);
- { uint32_t x139; uint8_t x140 = _addcarryx_u32(0x0, x122, x124, &x139);
- { uint32_t x142; uint8_t x143 = _addcarryx_u32(x140, x125, x127, &x142);
- { uint32_t x145; uint8_t x146 = _addcarryx_u32(x143, x128, x130, &x145);
- { uint32_t x148; uint8_t x149 = _addcarryx_u32(x146, x131, x133, &x148);
- { uint32_t x151; uint8_t x152 = _addcarryx_u32(x149, x134, x136, &x151);
- { uint32_t x154; uint8_t _ = _addcarryx_u32(0x0, x152, x137, &x154);
- { uint32_t x157; uint8_t x158 = _addcarryx_u32(0x0, x103, x121, &x157);
- { uint32_t x160; uint8_t x161 = _addcarryx_u32(x158, x106, x139, &x160);
- { uint32_t x163; uint8_t x164 = _addcarryx_u32(x161, x109, x142, &x163);
- { uint32_t x166; uint8_t x167 = _addcarryx_u32(x164, x112, x145, &x166);
- { uint32_t x169; uint8_t x170 = _addcarryx_u32(x167, x115, x148, &x169);
- { uint32_t x172; uint8_t x173 = _addcarryx_u32(x170, x118, x151, &x172);
- { uint32_t x175; uint8_t x176 = _addcarryx_u32(x173, x119, x154, &x175);
- { uint32_t _; uint32_t x178 = _mulx_u32(x157, 0xaaaaaaab, &_);
- { uint32_t x182; uint32_t x181 = _mulx_u32(x178, 0xfffffffd, &x182);
- { uint32_t x185; uint32_t x184 = _mulx_u32(x178, 0xffffffff, &x185);
- { uint32_t x188; uint32_t x187 = _mulx_u32(x178, 0xffffffff, &x188);
- { uint32_t x191; uint32_t x190 = _mulx_u32(x178, 0xffffffff, &x191);
- { uint32_t x194; uint32_t x193 = _mulx_u32(x178, 0xffffffff, &x194);
- { uint32_t x197; uint32_t x196 = _mulx_u32(x178, 0x3fff, &x197);
- { uint32_t x199; uint8_t x200 = _addcarryx_u32(0x0, x182, x184, &x199);
- { uint32_t x202; uint8_t x203 = _addcarryx_u32(x200, x185, x187, &x202);
- { uint32_t x205; uint8_t x206 = _addcarryx_u32(x203, x188, x190, &x205);
- { uint32_t x208; uint8_t x209 = _addcarryx_u32(x206, x191, x193, &x208);
- { uint32_t x211; uint8_t x212 = _addcarryx_u32(x209, x194, x196, &x211);
- { uint32_t x214; uint8_t _ = _addcarryx_u32(0x0, x212, x197, &x214);
- { uint32_t _; uint8_t x218 = _addcarryx_u32(0x0, x157, x181, &_);
- { uint32_t x220; uint8_t x221 = _addcarryx_u32(x218, x160, x199, &x220);
- { uint32_t x223; uint8_t x224 = _addcarryx_u32(x221, x163, x202, &x223);
- { uint32_t x226; uint8_t x227 = _addcarryx_u32(x224, x166, x205, &x226);
- { uint32_t x229; uint8_t x230 = _addcarryx_u32(x227, x169, x208, &x229);
- { uint32_t x232; uint8_t x233 = _addcarryx_u32(x230, x172, x211, &x232);
- { uint32_t x235; uint8_t x236 = _addcarryx_u32(x233, x175, x214, &x235);
- { uint8_t x237 = (x236 + x176);
- { uint32_t x240; uint32_t x239 = _mulx_u32(x9, x15, &x240);
- { uint32_t x243; uint32_t x242 = _mulx_u32(x9, x17, &x243);
- { uint32_t x246; uint32_t x245 = _mulx_u32(x9, x19, &x246);
- { uint32_t x249; uint32_t x248 = _mulx_u32(x9, x21, &x249);
- { uint32_t x252; uint32_t x251 = _mulx_u32(x9, x23, &x252);
- { uint32_t x255; uint32_t x254 = _mulx_u32(x9, x22, &x255);
- { uint32_t x257; uint8_t x258 = _addcarryx_u32(0x0, x240, x242, &x257);
- { uint32_t x260; uint8_t x261 = _addcarryx_u32(x258, x243, x245, &x260);
- { uint32_t x263; uint8_t x264 = _addcarryx_u32(x261, x246, x248, &x263);
- { uint32_t x266; uint8_t x267 = _addcarryx_u32(x264, x249, x251, &x266);
- { uint32_t x269; uint8_t x270 = _addcarryx_u32(x267, x252, x254, &x269);
- { uint32_t x272; uint8_t _ = _addcarryx_u32(0x0, x270, x255, &x272);
- { uint32_t x275; uint8_t x276 = _addcarryx_u32(0x0, x220, x239, &x275);
- { uint32_t x278; uint8_t x279 = _addcarryx_u32(x276, x223, x257, &x278);
- { uint32_t x281; uint8_t x282 = _addcarryx_u32(x279, x226, x260, &x281);
- { uint32_t x284; uint8_t x285 = _addcarryx_u32(x282, x229, x263, &x284);
- { uint32_t x287; uint8_t x288 = _addcarryx_u32(x285, x232, x266, &x287);
- { uint32_t x290; uint8_t x291 = _addcarryx_u32(x288, x235, x269, &x290);
- { uint32_t x293; uint8_t x294 = _addcarryx_u32(x291, x237, x272, &x293);
- { uint32_t _; uint32_t x296 = _mulx_u32(x275, 0xaaaaaaab, &_);
- { uint32_t x300; uint32_t x299 = _mulx_u32(x296, 0xfffffffd, &x300);
- { uint32_t x303; uint32_t x302 = _mulx_u32(x296, 0xffffffff, &x303);
- { uint32_t x306; uint32_t x305 = _mulx_u32(x296, 0xffffffff, &x306);
- { uint32_t x309; uint32_t x308 = _mulx_u32(x296, 0xffffffff, &x309);
- { uint32_t x312; uint32_t x311 = _mulx_u32(x296, 0xffffffff, &x312);
- { uint32_t x315; uint32_t x314 = _mulx_u32(x296, 0x3fff, &x315);
- { uint32_t x317; uint8_t x318 = _addcarryx_u32(0x0, x300, x302, &x317);
- { uint32_t x320; uint8_t x321 = _addcarryx_u32(x318, x303, x305, &x320);
- { uint32_t x323; uint8_t x324 = _addcarryx_u32(x321, x306, x308, &x323);
- { uint32_t x326; uint8_t x327 = _addcarryx_u32(x324, x309, x311, &x326);
- { uint32_t x329; uint8_t x330 = _addcarryx_u32(x327, x312, x314, &x329);
- { uint32_t x332; uint8_t _ = _addcarryx_u32(0x0, x330, x315, &x332);
- { uint32_t _; uint8_t x336 = _addcarryx_u32(0x0, x275, x299, &_);
- { uint32_t x338; uint8_t x339 = _addcarryx_u32(x336, x278, x317, &x338);
- { uint32_t x341; uint8_t x342 = _addcarryx_u32(x339, x281, x320, &x341);
- { uint32_t x344; uint8_t x345 = _addcarryx_u32(x342, x284, x323, &x344);
- { uint32_t x347; uint8_t x348 = _addcarryx_u32(x345, x287, x326, &x347);
- { uint32_t x350; uint8_t x351 = _addcarryx_u32(x348, x290, x329, &x350);
- { uint32_t x353; uint8_t x354 = _addcarryx_u32(x351, x293, x332, &x353);
- { uint8_t x355 = (x354 + x294);
- { uint32_t x358; uint32_t x357 = _mulx_u32(x11, x15, &x358);
- { uint32_t x361; uint32_t x360 = _mulx_u32(x11, x17, &x361);
- { uint32_t x364; uint32_t x363 = _mulx_u32(x11, x19, &x364);
- { uint32_t x367; uint32_t x366 = _mulx_u32(x11, x21, &x367);
- { uint32_t x370; uint32_t x369 = _mulx_u32(x11, x23, &x370);
- { uint32_t x373; uint32_t x372 = _mulx_u32(x11, x22, &x373);
- { uint32_t x375; uint8_t x376 = _addcarryx_u32(0x0, x358, x360, &x375);
- { uint32_t x378; uint8_t x379 = _addcarryx_u32(x376, x361, x363, &x378);
- { uint32_t x381; uint8_t x382 = _addcarryx_u32(x379, x364, x366, &x381);
- { uint32_t x384; uint8_t x385 = _addcarryx_u32(x382, x367, x369, &x384);
- { uint32_t x387; uint8_t x388 = _addcarryx_u32(x385, x370, x372, &x387);
- { uint32_t x390; uint8_t _ = _addcarryx_u32(0x0, x388, x373, &x390);
- { uint32_t x393; uint8_t x394 = _addcarryx_u32(0x0, x338, x357, &x393);
- { uint32_t x396; uint8_t x397 = _addcarryx_u32(x394, x341, x375, &x396);
- { uint32_t x399; uint8_t x400 = _addcarryx_u32(x397, x344, x378, &x399);
- { uint32_t x402; uint8_t x403 = _addcarryx_u32(x400, x347, x381, &x402);
- { uint32_t x405; uint8_t x406 = _addcarryx_u32(x403, x350, x384, &x405);
- { uint32_t x408; uint8_t x409 = _addcarryx_u32(x406, x353, x387, &x408);
- { uint32_t x411; uint8_t x412 = _addcarryx_u32(x409, x355, x390, &x411);
- { uint32_t _; uint32_t x414 = _mulx_u32(x393, 0xaaaaaaab, &_);
- { uint32_t x418; uint32_t x417 = _mulx_u32(x414, 0xfffffffd, &x418);
- { uint32_t x421; uint32_t x420 = _mulx_u32(x414, 0xffffffff, &x421);
- { uint32_t x424; uint32_t x423 = _mulx_u32(x414, 0xffffffff, &x424);
- { uint32_t x427; uint32_t x426 = _mulx_u32(x414, 0xffffffff, &x427);
- { uint32_t x430; uint32_t x429 = _mulx_u32(x414, 0xffffffff, &x430);
- { uint32_t x433; uint32_t x432 = _mulx_u32(x414, 0x3fff, &x433);
- { uint32_t x435; uint8_t x436 = _addcarryx_u32(0x0, x418, x420, &x435);
- { uint32_t x438; uint8_t x439 = _addcarryx_u32(x436, x421, x423, &x438);
- { uint32_t x441; uint8_t x442 = _addcarryx_u32(x439, x424, x426, &x441);
- { uint32_t x444; uint8_t x445 = _addcarryx_u32(x442, x427, x429, &x444);
- { uint32_t x447; uint8_t x448 = _addcarryx_u32(x445, x430, x432, &x447);
- { uint32_t x450; uint8_t _ = _addcarryx_u32(0x0, x448, x433, &x450);
- { uint32_t _; uint8_t x454 = _addcarryx_u32(0x0, x393, x417, &_);
- { uint32_t x456; uint8_t x457 = _addcarryx_u32(x454, x396, x435, &x456);
- { uint32_t x459; uint8_t x460 = _addcarryx_u32(x457, x399, x438, &x459);
- { uint32_t x462; uint8_t x463 = _addcarryx_u32(x460, x402, x441, &x462);
- { uint32_t x465; uint8_t x466 = _addcarryx_u32(x463, x405, x444, &x465);
- { uint32_t x468; uint8_t x469 = _addcarryx_u32(x466, x408, x447, &x468);
- { uint32_t x471; uint8_t x472 = _addcarryx_u32(x469, x411, x450, &x471);
- { uint8_t x473 = (x472 + x412);
- { uint32_t x476; uint32_t x475 = _mulx_u32(x13, x15, &x476);
- { uint32_t x479; uint32_t x478 = _mulx_u32(x13, x17, &x479);
- { uint32_t x482; uint32_t x481 = _mulx_u32(x13, x19, &x482);
- { uint32_t x485; uint32_t x484 = _mulx_u32(x13, x21, &x485);
- { uint32_t x488; uint32_t x487 = _mulx_u32(x13, x23, &x488);
- { uint32_t x491; uint32_t x490 = _mulx_u32(x13, x22, &x491);
- { uint32_t x493; uint8_t x494 = _addcarryx_u32(0x0, x476, x478, &x493);
- { uint32_t x496; uint8_t x497 = _addcarryx_u32(x494, x479, x481, &x496);
- { uint32_t x499; uint8_t x500 = _addcarryx_u32(x497, x482, x484, &x499);
- { uint32_t x502; uint8_t x503 = _addcarryx_u32(x500, x485, x487, &x502);
- { uint32_t x505; uint8_t x506 = _addcarryx_u32(x503, x488, x490, &x505);
- { uint32_t x508; uint8_t _ = _addcarryx_u32(0x0, x506, x491, &x508);
- { uint32_t x511; uint8_t x512 = _addcarryx_u32(0x0, x456, x475, &x511);
- { uint32_t x514; uint8_t x515 = _addcarryx_u32(x512, x459, x493, &x514);
- { uint32_t x517; uint8_t x518 = _addcarryx_u32(x515, x462, x496, &x517);
- { uint32_t x520; uint8_t x521 = _addcarryx_u32(x518, x465, x499, &x520);
- { uint32_t x523; uint8_t x524 = _addcarryx_u32(x521, x468, x502, &x523);
- { uint32_t x526; uint8_t x527 = _addcarryx_u32(x524, x471, x505, &x526);
- { uint32_t x529; uint8_t x530 = _addcarryx_u32(x527, x473, x508, &x529);
- { uint32_t _; uint32_t x532 = _mulx_u32(x511, 0xaaaaaaab, &_);
- { uint32_t x536; uint32_t x535 = _mulx_u32(x532, 0xfffffffd, &x536);
- { uint32_t x539; uint32_t x538 = _mulx_u32(x532, 0xffffffff, &x539);
- { uint32_t x542; uint32_t x541 = _mulx_u32(x532, 0xffffffff, &x542);
- { uint32_t x545; uint32_t x544 = _mulx_u32(x532, 0xffffffff, &x545);
- { uint32_t x548; uint32_t x547 = _mulx_u32(x532, 0xffffffff, &x548);
- { uint32_t x551; uint32_t x550 = _mulx_u32(x532, 0x3fff, &x551);
- { uint32_t x553; uint8_t x554 = _addcarryx_u32(0x0, x536, x538, &x553);
- { uint32_t x556; uint8_t x557 = _addcarryx_u32(x554, x539, x541, &x556);
- { uint32_t x559; uint8_t x560 = _addcarryx_u32(x557, x542, x544, &x559);
- { uint32_t x562; uint8_t x563 = _addcarryx_u32(x560, x545, x547, &x562);
- { uint32_t x565; uint8_t x566 = _addcarryx_u32(x563, x548, x550, &x565);
- { uint32_t x568; uint8_t _ = _addcarryx_u32(0x0, x566, x551, &x568);
- { uint32_t _; uint8_t x572 = _addcarryx_u32(0x0, x511, x535, &_);
- { uint32_t x574; uint8_t x575 = _addcarryx_u32(x572, x514, x553, &x574);
- { uint32_t x577; uint8_t x578 = _addcarryx_u32(x575, x517, x556, &x577);
- { uint32_t x580; uint8_t x581 = _addcarryx_u32(x578, x520, x559, &x580);
- { uint32_t x583; uint8_t x584 = _addcarryx_u32(x581, x523, x562, &x583);
- { uint32_t x586; uint8_t x587 = _addcarryx_u32(x584, x526, x565, &x586);
- { uint32_t x589; uint8_t x590 = _addcarryx_u32(x587, x529, x568, &x589);
- { uint8_t x591 = (x590 + x530);
- { uint32_t x594; uint32_t x593 = _mulx_u32(x12, x15, &x594);
- { uint32_t x597; uint32_t x596 = _mulx_u32(x12, x17, &x597);
- { uint32_t x600; uint32_t x599 = _mulx_u32(x12, x19, &x600);
- { uint32_t x603; uint32_t x602 = _mulx_u32(x12, x21, &x603);
- { uint32_t x606; uint32_t x605 = _mulx_u32(x12, x23, &x606);
- { uint32_t x609; uint32_t x608 = _mulx_u32(x12, x22, &x609);
- { uint32_t x611; uint8_t x612 = _addcarryx_u32(0x0, x594, x596, &x611);
- { uint32_t x614; uint8_t x615 = _addcarryx_u32(x612, x597, x599, &x614);
- { uint32_t x617; uint8_t x618 = _addcarryx_u32(x615, x600, x602, &x617);
- { uint32_t x620; uint8_t x621 = _addcarryx_u32(x618, x603, x605, &x620);
- { uint32_t x623; uint8_t x624 = _addcarryx_u32(x621, x606, x608, &x623);
- { uint32_t x626; uint8_t _ = _addcarryx_u32(0x0, x624, x609, &x626);
- { uint32_t x629; uint8_t x630 = _addcarryx_u32(0x0, x574, x593, &x629);
- { uint32_t x632; uint8_t x633 = _addcarryx_u32(x630, x577, x611, &x632);
- { uint32_t x635; uint8_t x636 = _addcarryx_u32(x633, x580, x614, &x635);
- { uint32_t x638; uint8_t x639 = _addcarryx_u32(x636, x583, x617, &x638);
- { uint32_t x641; uint8_t x642 = _addcarryx_u32(x639, x586, x620, &x641);
- { uint32_t x644; uint8_t x645 = _addcarryx_u32(x642, x589, x623, &x644);
- { uint32_t x647; uint8_t x648 = _addcarryx_u32(x645, x591, x626, &x647);
- { uint32_t _; uint32_t x650 = _mulx_u32(x629, 0xaaaaaaab, &_);
- { uint32_t x654; uint32_t x653 = _mulx_u32(x650, 0xfffffffd, &x654);
- { uint32_t x657; uint32_t x656 = _mulx_u32(x650, 0xffffffff, &x657);
- { uint32_t x660; uint32_t x659 = _mulx_u32(x650, 0xffffffff, &x660);
- { uint32_t x663; uint32_t x662 = _mulx_u32(x650, 0xffffffff, &x663);
- { uint32_t x666; uint32_t x665 = _mulx_u32(x650, 0xffffffff, &x666);
- { uint32_t x669; uint32_t x668 = _mulx_u32(x650, 0x3fff, &x669);
- { uint32_t x671; uint8_t x672 = _addcarryx_u32(0x0, x654, x656, &x671);
- { uint32_t x674; uint8_t x675 = _addcarryx_u32(x672, x657, x659, &x674);
- { uint32_t x677; uint8_t x678 = _addcarryx_u32(x675, x660, x662, &x677);
- { uint32_t x680; uint8_t x681 = _addcarryx_u32(x678, x663, x665, &x680);
- { uint32_t x683; uint8_t x684 = _addcarryx_u32(x681, x666, x668, &x683);
- { uint32_t x686; uint8_t _ = _addcarryx_u32(0x0, x684, x669, &x686);
- { uint32_t _; uint8_t x690 = _addcarryx_u32(0x0, x629, x653, &_);
- { uint32_t x692; uint8_t x693 = _addcarryx_u32(x690, x632, x671, &x692);
- { uint32_t x695; uint8_t x696 = _addcarryx_u32(x693, x635, x674, &x695);
- { uint32_t x698; uint8_t x699 = _addcarryx_u32(x696, x638, x677, &x698);
- { uint32_t x701; uint8_t x702 = _addcarryx_u32(x699, x641, x680, &x701);
- { uint32_t x704; uint8_t x705 = _addcarryx_u32(x702, x644, x683, &x704);
- { uint32_t x707; uint8_t x708 = _addcarryx_u32(x705, x647, x686, &x707);
- { uint8_t x709 = (x708 + x648);
- { uint32_t x711; uint8_t x712 = _subborrow_u32(0x0, x692, 0xfffffffd, &x711);
- { uint32_t x714; uint8_t x715 = _subborrow_u32(x712, x695, 0xffffffff, &x714);
- { uint32_t x717; uint8_t x718 = _subborrow_u32(x715, x698, 0xffffffff, &x717);
- { uint32_t x720; uint8_t x721 = _subborrow_u32(x718, x701, 0xffffffff, &x720);
- { uint32_t x723; uint8_t x724 = _subborrow_u32(x721, x704, 0xffffffff, &x723);
- { uint32_t x726; uint8_t x727 = _subborrow_u32(x724, x707, 0x3fff, &x726);
- { uint32_t _; uint8_t x730 = _subborrow_u32(x727, x709, 0x0, &_);
- { uint32_t x731 = cmovznz32(x730, x726, x707);
- { uint32_t x732 = cmovznz32(x730, x723, x704);
- { uint32_t x733 = cmovznz32(x730, x720, x701);
- { uint32_t x734 = cmovznz32(x730, x717, x698);
- { uint32_t x735 = cmovznz32(x730, x714, x695);
- { uint32_t x736 = cmovznz32(x730, x711, x692);
- out[0] = x736;
- out[1] = x735;
- out[2] = x734;
- out[3] = x733;
- out[4] = x732;
- out[5] = x731;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e174m3_6limbs/femul.v b/src/Specific/montgomery32_2e174m3_6limbs/femul.v
deleted file mode 100644
index 02ab209a5..000000000
--- a/src/Specific/montgomery32_2e174m3_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e174m3_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e174m3_6limbs/femulDisplay.log b/src/Specific/montgomery32_2e174m3_6limbs/femulDisplay.log
deleted file mode 100644
index bc626a982..000000000
--- a/src/Specific/montgomery32_2e174m3_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,252 +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,
- uint32_t x25, uint32_t x26 = mulx_u32(x5, x15);
- uint32_t x28, uint32_t x29 = mulx_u32(x5, x17);
- uint32_t x31, uint32_t x32 = mulx_u32(x5, x19);
- uint32_t x34, uint32_t x35 = mulx_u32(x5, x21);
- uint32_t x37, uint32_t x38 = mulx_u32(x5, x23);
- uint32_t x40, uint32_t x41 = mulx_u32(x5, x22);
- uint32_t x43, uint8_t x44 = addcarryx_u32(0x0, x26, x28);
- uint32_t x46, uint8_t x47 = addcarryx_u32(x44, x29, x31);
- uint32_t x49, uint8_t x50 = addcarryx_u32(x47, x32, x34);
- uint32_t x52, uint8_t x53 = addcarryx_u32(x50, x35, x37);
- uint32_t x55, uint8_t x56 = addcarryx_u32(x53, x38, x40);
- uint32_t x58, uint8_t _ = addcarryx_u32(0x0, x56, x41);
- uint32_t x61, uint32_t _ = mulx_u32(x25, 0xaaaaaaab);
- uint32_t x64, uint32_t x65 = mulx_u32(x61, 0xfffffffd);
- uint32_t x67, uint32_t x68 = mulx_u32(x61, 0xffffffff);
- uint32_t x70, uint32_t x71 = mulx_u32(x61, 0xffffffff);
- uint32_t x73, uint32_t x74 = mulx_u32(x61, 0xffffffff);
- uint32_t x76, uint32_t x77 = mulx_u32(x61, 0xffffffff);
- uint32_t x79, uint32_t x80 = mulx_u32(x61, 0x3fff);
- uint32_t x82, uint8_t x83 = addcarryx_u32(0x0, x65, x67);
- uint32_t x85, uint8_t x86 = addcarryx_u32(x83, x68, x70);
- uint32_t x88, uint8_t x89 = addcarryx_u32(x86, x71, x73);
- uint32_t x91, uint8_t x92 = addcarryx_u32(x89, x74, x76);
- uint32_t x94, uint8_t x95 = addcarryx_u32(x92, x77, x79);
- uint32_t x97, uint8_t _ = addcarryx_u32(0x0, x95, x80);
- uint32_t _, uint8_t x101 = addcarryx_u32(0x0, x25, x64);
- uint32_t x103, uint8_t x104 = addcarryx_u32(x101, x43, x82);
- uint32_t x106, uint8_t x107 = addcarryx_u32(x104, x46, x85);
- uint32_t x109, uint8_t x110 = addcarryx_u32(x107, x49, x88);
- uint32_t x112, uint8_t x113 = addcarryx_u32(x110, x52, x91);
- uint32_t x115, uint8_t x116 = addcarryx_u32(x113, x55, x94);
- uint32_t x118, uint8_t x119 = addcarryx_u32(x116, x58, x97);
- uint32_t x121, uint32_t x122 = mulx_u32(x7, x15);
- uint32_t x124, uint32_t x125 = mulx_u32(x7, x17);
- uint32_t x127, uint32_t x128 = mulx_u32(x7, x19);
- uint32_t x130, uint32_t x131 = mulx_u32(x7, x21);
- uint32_t x133, uint32_t x134 = mulx_u32(x7, x23);
- uint32_t x136, uint32_t x137 = mulx_u32(x7, x22);
- uint32_t x139, uint8_t x140 = addcarryx_u32(0x0, x122, x124);
- uint32_t x142, uint8_t x143 = addcarryx_u32(x140, x125, x127);
- uint32_t x145, uint8_t x146 = addcarryx_u32(x143, x128, x130);
- uint32_t x148, uint8_t x149 = addcarryx_u32(x146, x131, x133);
- uint32_t x151, uint8_t x152 = addcarryx_u32(x149, x134, x136);
- uint32_t x154, uint8_t _ = addcarryx_u32(0x0, x152, x137);
- uint32_t x157, uint8_t x158 = addcarryx_u32(0x0, x103, x121);
- uint32_t x160, uint8_t x161 = addcarryx_u32(x158, x106, x139);
- uint32_t x163, uint8_t x164 = addcarryx_u32(x161, x109, x142);
- uint32_t x166, uint8_t x167 = addcarryx_u32(x164, x112, x145);
- uint32_t x169, uint8_t x170 = addcarryx_u32(x167, x115, x148);
- uint32_t x172, uint8_t x173 = addcarryx_u32(x170, x118, x151);
- uint32_t x175, uint8_t x176 = addcarryx_u32(x173, x119, x154);
- uint32_t x178, uint32_t _ = mulx_u32(x157, 0xaaaaaaab);
- uint32_t x181, uint32_t x182 = mulx_u32(x178, 0xfffffffd);
- uint32_t x184, uint32_t x185 = mulx_u32(x178, 0xffffffff);
- uint32_t x187, uint32_t x188 = mulx_u32(x178, 0xffffffff);
- uint32_t x190, uint32_t x191 = mulx_u32(x178, 0xffffffff);
- uint32_t x193, uint32_t x194 = mulx_u32(x178, 0xffffffff);
- uint32_t x196, uint32_t x197 = mulx_u32(x178, 0x3fff);
- uint32_t x199, uint8_t x200 = addcarryx_u32(0x0, x182, x184);
- uint32_t x202, uint8_t x203 = addcarryx_u32(x200, x185, x187);
- uint32_t x205, uint8_t x206 = addcarryx_u32(x203, x188, x190);
- uint32_t x208, uint8_t x209 = addcarryx_u32(x206, x191, x193);
- uint32_t x211, uint8_t x212 = addcarryx_u32(x209, x194, x196);
- uint32_t x214, uint8_t _ = addcarryx_u32(0x0, x212, x197);
- uint32_t _, uint8_t x218 = addcarryx_u32(0x0, x157, x181);
- uint32_t x220, uint8_t x221 = addcarryx_u32(x218, x160, x199);
- uint32_t x223, uint8_t x224 = addcarryx_u32(x221, x163, x202);
- uint32_t x226, uint8_t x227 = addcarryx_u32(x224, x166, x205);
- uint32_t x229, uint8_t x230 = addcarryx_u32(x227, x169, x208);
- uint32_t x232, uint8_t x233 = addcarryx_u32(x230, x172, x211);
- uint32_t x235, uint8_t x236 = addcarryx_u32(x233, x175, x214);
- uint8_t x237 = (x236 + x176);
- uint32_t x239, uint32_t x240 = mulx_u32(x9, x15);
- uint32_t x242, uint32_t x243 = mulx_u32(x9, x17);
- uint32_t x245, uint32_t x246 = mulx_u32(x9, x19);
- uint32_t x248, uint32_t x249 = mulx_u32(x9, x21);
- uint32_t x251, uint32_t x252 = mulx_u32(x9, x23);
- uint32_t x254, uint32_t x255 = mulx_u32(x9, x22);
- uint32_t x257, uint8_t x258 = addcarryx_u32(0x0, x240, x242);
- uint32_t x260, uint8_t x261 = addcarryx_u32(x258, x243, x245);
- uint32_t x263, uint8_t x264 = addcarryx_u32(x261, x246, x248);
- uint32_t x266, uint8_t x267 = addcarryx_u32(x264, x249, x251);
- uint32_t x269, uint8_t x270 = addcarryx_u32(x267, x252, x254);
- uint32_t x272, uint8_t _ = addcarryx_u32(0x0, x270, x255);
- uint32_t x275, uint8_t x276 = addcarryx_u32(0x0, x220, x239);
- uint32_t x278, uint8_t x279 = addcarryx_u32(x276, x223, x257);
- uint32_t x281, uint8_t x282 = addcarryx_u32(x279, x226, x260);
- uint32_t x284, uint8_t x285 = addcarryx_u32(x282, x229, x263);
- uint32_t x287, uint8_t x288 = addcarryx_u32(x285, x232, x266);
- uint32_t x290, uint8_t x291 = addcarryx_u32(x288, x235, x269);
- uint32_t x293, uint8_t x294 = addcarryx_u32(x291, x237, x272);
- uint32_t x296, uint32_t _ = mulx_u32(x275, 0xaaaaaaab);
- uint32_t x299, uint32_t x300 = mulx_u32(x296, 0xfffffffd);
- uint32_t x302, uint32_t x303 = mulx_u32(x296, 0xffffffff);
- uint32_t x305, uint32_t x306 = mulx_u32(x296, 0xffffffff);
- uint32_t x308, uint32_t x309 = mulx_u32(x296, 0xffffffff);
- uint32_t x311, uint32_t x312 = mulx_u32(x296, 0xffffffff);
- uint32_t x314, uint32_t x315 = mulx_u32(x296, 0x3fff);
- uint32_t x317, uint8_t x318 = addcarryx_u32(0x0, x300, x302);
- uint32_t x320, uint8_t x321 = addcarryx_u32(x318, x303, x305);
- uint32_t x323, uint8_t x324 = addcarryx_u32(x321, x306, x308);
- uint32_t x326, uint8_t x327 = addcarryx_u32(x324, x309, x311);
- uint32_t x329, uint8_t x330 = addcarryx_u32(x327, x312, x314);
- uint32_t x332, uint8_t _ = addcarryx_u32(0x0, x330, x315);
- uint32_t _, uint8_t x336 = addcarryx_u32(0x0, x275, x299);
- uint32_t x338, uint8_t x339 = addcarryx_u32(x336, x278, x317);
- uint32_t x341, uint8_t x342 = addcarryx_u32(x339, x281, x320);
- uint32_t x344, uint8_t x345 = addcarryx_u32(x342, x284, x323);
- uint32_t x347, uint8_t x348 = addcarryx_u32(x345, x287, x326);
- uint32_t x350, uint8_t x351 = addcarryx_u32(x348, x290, x329);
- uint32_t x353, uint8_t x354 = addcarryx_u32(x351, x293, x332);
- uint8_t x355 = (x354 + x294);
- uint32_t x357, uint32_t x358 = mulx_u32(x11, x15);
- uint32_t x360, uint32_t x361 = mulx_u32(x11, x17);
- uint32_t x363, uint32_t x364 = mulx_u32(x11, x19);
- uint32_t x366, uint32_t x367 = mulx_u32(x11, x21);
- uint32_t x369, uint32_t x370 = mulx_u32(x11, x23);
- uint32_t x372, uint32_t x373 = mulx_u32(x11, x22);
- uint32_t x375, uint8_t x376 = addcarryx_u32(0x0, x358, x360);
- uint32_t x378, uint8_t x379 = addcarryx_u32(x376, x361, x363);
- uint32_t x381, uint8_t x382 = addcarryx_u32(x379, x364, x366);
- uint32_t x384, uint8_t x385 = addcarryx_u32(x382, x367, x369);
- uint32_t x387, uint8_t x388 = addcarryx_u32(x385, x370, x372);
- uint32_t x390, uint8_t _ = addcarryx_u32(0x0, x388, x373);
- uint32_t x393, uint8_t x394 = addcarryx_u32(0x0, x338, x357);
- uint32_t x396, uint8_t x397 = addcarryx_u32(x394, x341, x375);
- uint32_t x399, uint8_t x400 = addcarryx_u32(x397, x344, x378);
- uint32_t x402, uint8_t x403 = addcarryx_u32(x400, x347, x381);
- uint32_t x405, uint8_t x406 = addcarryx_u32(x403, x350, x384);
- uint32_t x408, uint8_t x409 = addcarryx_u32(x406, x353, x387);
- uint32_t x411, uint8_t x412 = addcarryx_u32(x409, x355, x390);
- uint32_t x414, uint32_t _ = mulx_u32(x393, 0xaaaaaaab);
- uint32_t x417, uint32_t x418 = mulx_u32(x414, 0xfffffffd);
- uint32_t x420, uint32_t x421 = mulx_u32(x414, 0xffffffff);
- uint32_t x423, uint32_t x424 = mulx_u32(x414, 0xffffffff);
- uint32_t x426, uint32_t x427 = mulx_u32(x414, 0xffffffff);
- uint32_t x429, uint32_t x430 = mulx_u32(x414, 0xffffffff);
- uint32_t x432, uint32_t x433 = mulx_u32(x414, 0x3fff);
- uint32_t x435, uint8_t x436 = addcarryx_u32(0x0, x418, x420);
- uint32_t x438, uint8_t x439 = addcarryx_u32(x436, x421, x423);
- uint32_t x441, uint8_t x442 = addcarryx_u32(x439, x424, x426);
- uint32_t x444, uint8_t x445 = addcarryx_u32(x442, x427, x429);
- uint32_t x447, uint8_t x448 = addcarryx_u32(x445, x430, x432);
- uint32_t x450, uint8_t _ = addcarryx_u32(0x0, x448, x433);
- uint32_t _, uint8_t x454 = addcarryx_u32(0x0, x393, x417);
- uint32_t x456, uint8_t x457 = addcarryx_u32(x454, x396, x435);
- uint32_t x459, uint8_t x460 = addcarryx_u32(x457, x399, x438);
- uint32_t x462, uint8_t x463 = addcarryx_u32(x460, x402, x441);
- uint32_t x465, uint8_t x466 = addcarryx_u32(x463, x405, x444);
- uint32_t x468, uint8_t x469 = addcarryx_u32(x466, x408, x447);
- uint32_t x471, uint8_t x472 = addcarryx_u32(x469, x411, x450);
- uint8_t x473 = (x472 + x412);
- uint32_t x475, uint32_t x476 = mulx_u32(x13, x15);
- uint32_t x478, uint32_t x479 = mulx_u32(x13, x17);
- uint32_t x481, uint32_t x482 = mulx_u32(x13, x19);
- uint32_t x484, uint32_t x485 = mulx_u32(x13, x21);
- uint32_t x487, uint32_t x488 = mulx_u32(x13, x23);
- uint32_t x490, uint32_t x491 = mulx_u32(x13, x22);
- uint32_t x493, uint8_t x494 = addcarryx_u32(0x0, x476, x478);
- uint32_t x496, uint8_t x497 = addcarryx_u32(x494, x479, x481);
- uint32_t x499, uint8_t x500 = addcarryx_u32(x497, x482, x484);
- uint32_t x502, uint8_t x503 = addcarryx_u32(x500, x485, x487);
- uint32_t x505, uint8_t x506 = addcarryx_u32(x503, x488, x490);
- uint32_t x508, uint8_t _ = addcarryx_u32(0x0, x506, x491);
- uint32_t x511, uint8_t x512 = addcarryx_u32(0x0, x456, x475);
- uint32_t x514, uint8_t x515 = addcarryx_u32(x512, x459, x493);
- uint32_t x517, uint8_t x518 = addcarryx_u32(x515, x462, x496);
- uint32_t x520, uint8_t x521 = addcarryx_u32(x518, x465, x499);
- uint32_t x523, uint8_t x524 = addcarryx_u32(x521, x468, x502);
- uint32_t x526, uint8_t x527 = addcarryx_u32(x524, x471, x505);
- uint32_t x529, uint8_t x530 = addcarryx_u32(x527, x473, x508);
- uint32_t x532, uint32_t _ = mulx_u32(x511, 0xaaaaaaab);
- uint32_t x535, uint32_t x536 = mulx_u32(x532, 0xfffffffd);
- uint32_t x538, uint32_t x539 = mulx_u32(x532, 0xffffffff);
- uint32_t x541, uint32_t x542 = mulx_u32(x532, 0xffffffff);
- uint32_t x544, uint32_t x545 = mulx_u32(x532, 0xffffffff);
- uint32_t x547, uint32_t x548 = mulx_u32(x532, 0xffffffff);
- uint32_t x550, uint32_t x551 = mulx_u32(x532, 0x3fff);
- uint32_t x553, uint8_t x554 = addcarryx_u32(0x0, x536, x538);
- uint32_t x556, uint8_t x557 = addcarryx_u32(x554, x539, x541);
- uint32_t x559, uint8_t x560 = addcarryx_u32(x557, x542, x544);
- uint32_t x562, uint8_t x563 = addcarryx_u32(x560, x545, x547);
- uint32_t x565, uint8_t x566 = addcarryx_u32(x563, x548, x550);
- uint32_t x568, uint8_t _ = addcarryx_u32(0x0, x566, x551);
- uint32_t _, uint8_t x572 = addcarryx_u32(0x0, x511, x535);
- uint32_t x574, uint8_t x575 = addcarryx_u32(x572, x514, x553);
- uint32_t x577, uint8_t x578 = addcarryx_u32(x575, x517, x556);
- uint32_t x580, uint8_t x581 = addcarryx_u32(x578, x520, x559);
- uint32_t x583, uint8_t x584 = addcarryx_u32(x581, x523, x562);
- uint32_t x586, uint8_t x587 = addcarryx_u32(x584, x526, x565);
- uint32_t x589, uint8_t x590 = addcarryx_u32(x587, x529, x568);
- uint8_t x591 = (x590 + x530);
- uint32_t x593, uint32_t x594 = mulx_u32(x12, x15);
- uint32_t x596, uint32_t x597 = mulx_u32(x12, x17);
- uint32_t x599, uint32_t x600 = mulx_u32(x12, x19);
- uint32_t x602, uint32_t x603 = mulx_u32(x12, x21);
- uint32_t x605, uint32_t x606 = mulx_u32(x12, x23);
- uint32_t x608, uint32_t x609 = mulx_u32(x12, x22);
- uint32_t x611, uint8_t x612 = addcarryx_u32(0x0, x594, x596);
- uint32_t x614, uint8_t x615 = addcarryx_u32(x612, x597, x599);
- uint32_t x617, uint8_t x618 = addcarryx_u32(x615, x600, x602);
- uint32_t x620, uint8_t x621 = addcarryx_u32(x618, x603, x605);
- uint32_t x623, uint8_t x624 = addcarryx_u32(x621, x606, x608);
- uint32_t x626, uint8_t _ = addcarryx_u32(0x0, x624, x609);
- uint32_t x629, uint8_t x630 = addcarryx_u32(0x0, x574, x593);
- uint32_t x632, uint8_t x633 = addcarryx_u32(x630, x577, x611);
- uint32_t x635, uint8_t x636 = addcarryx_u32(x633, x580, x614);
- uint32_t x638, uint8_t x639 = addcarryx_u32(x636, x583, x617);
- uint32_t x641, uint8_t x642 = addcarryx_u32(x639, x586, x620);
- uint32_t x644, uint8_t x645 = addcarryx_u32(x642, x589, x623);
- uint32_t x647, uint8_t x648 = addcarryx_u32(x645, x591, x626);
- uint32_t x650, uint32_t _ = mulx_u32(x629, 0xaaaaaaab);
- uint32_t x653, uint32_t x654 = mulx_u32(x650, 0xfffffffd);
- uint32_t x656, uint32_t x657 = mulx_u32(x650, 0xffffffff);
- uint32_t x659, uint32_t x660 = mulx_u32(x650, 0xffffffff);
- uint32_t x662, uint32_t x663 = mulx_u32(x650, 0xffffffff);
- uint32_t x665, uint32_t x666 = mulx_u32(x650, 0xffffffff);
- uint32_t x668, uint32_t x669 = mulx_u32(x650, 0x3fff);
- uint32_t x671, uint8_t x672 = addcarryx_u32(0x0, x654, x656);
- uint32_t x674, uint8_t x675 = addcarryx_u32(x672, x657, x659);
- uint32_t x677, uint8_t x678 = addcarryx_u32(x675, x660, x662);
- uint32_t x680, uint8_t x681 = addcarryx_u32(x678, x663, x665);
- uint32_t x683, uint8_t x684 = addcarryx_u32(x681, x666, x668);
- uint32_t x686, uint8_t _ = addcarryx_u32(0x0, x684, x669);
- uint32_t _, uint8_t x690 = addcarryx_u32(0x0, x629, x653);
- uint32_t x692, uint8_t x693 = addcarryx_u32(x690, x632, x671);
- uint32_t x695, uint8_t x696 = addcarryx_u32(x693, x635, x674);
- uint32_t x698, uint8_t x699 = addcarryx_u32(x696, x638, x677);
- uint32_t x701, uint8_t x702 = addcarryx_u32(x699, x641, x680);
- uint32_t x704, uint8_t x705 = addcarryx_u32(x702, x644, x683);
- uint32_t x707, uint8_t x708 = addcarryx_u32(x705, x647, x686);
- uint8_t x709 = (x708 + x648);
- uint32_t x711, uint8_t x712 = subborrow_u32(0x0, x692, 0xfffffffd);
- uint32_t x714, uint8_t x715 = subborrow_u32(x712, x695, 0xffffffff);
- uint32_t x717, uint8_t x718 = subborrow_u32(x715, x698, 0xffffffff);
- uint32_t x720, uint8_t x721 = subborrow_u32(x718, x701, 0xffffffff);
- uint32_t x723, uint8_t x724 = subborrow_u32(x721, x704, 0xffffffff);
- uint32_t x726, uint8_t x727 = subborrow_u32(x724, x707, 0x3fff);
- uint32_t _, uint8_t x730 = subborrow_u32(x727, x709, 0x0);
- uint32_t x731 = cmovznz32(x730, x726, x707);
- uint32_t x732 = cmovznz32(x730, x723, x704);
- uint32_t x733 = cmovznz32(x730, x720, x701);
- uint32_t x734 = cmovznz32(x730, x717, x698);
- uint32_t x735 = cmovznz32(x730, x714, x695);
- uint32_t x736 = cmovznz32(x730, x711, x692);
- return (x731, x732, x733, x734, x735, x736))
-(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/montgomery32_2e174m3_6limbs/femulDisplay.v b/src/Specific/montgomery32_2e174m3_6limbs/femulDisplay.v
deleted file mode 100644
index 6e835a03f..000000000
--- a/src/Specific/montgomery32_2e174m3_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e174m3_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e174m3_6limbs/fenz.c b/src/Specific/montgomery32_2e174m3_6limbs/fenz.c
deleted file mode 100644
index 2e0454af1..000000000
--- a/src/Specific/montgomery32_2e174m3_6limbs/fenz.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], 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 x11 = (x10 | x9);
- { uint32_t x12 = (x8 | x11);
- { uint32_t x13 = (x6 | x12);
- { uint32_t x14 = (x4 | x13);
- { uint32_t x15 = (x2 | x14);
- out[0] = x15;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e174m3_6limbs/fenz.v b/src/Specific/montgomery32_2e174m3_6limbs/fenz.v
deleted file mode 100644
index 0cb249a45..000000000
--- a/src/Specific/montgomery32_2e174m3_6limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e174m3_6limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e174m3_6limbs/fenzDisplay.log b/src/Specific/montgomery32_2e174m3_6limbs/fenzDisplay.log
deleted file mode 100644
index 616138b7b..000000000
--- a/src/Specific/montgomery32_2e174m3_6limbs/fenzDisplay.log
+++ /dev/null
@@ -1,12 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint32_t x11 = (x10 | x9);
- uint32_t x12 = (x8 | x11);
- uint32_t x13 = (x6 | x12);
- uint32_t x14 = (x4 | x13);
- uint32_t x15 = (x2 | x14);
- return x15)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e174m3_6limbs/fenzDisplay.v b/src/Specific/montgomery32_2e174m3_6limbs/fenzDisplay.v
deleted file mode 100644
index e3a97d556..000000000
--- a/src/Specific/montgomery32_2e174m3_6limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e174m3_6limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e174m3_6limbs/feopp.c b/src/Specific/montgomery32_2e174m3_6limbs/feopp.c
deleted file mode 100644
index f163e0729..000000000
--- a/src/Specific/montgomery32_2e174m3_6limbs/feopp.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feopp(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 = _subborrow_u32(0x0, 0x0, x2, &x12);
- { uint32_t x15; uint8_t x16 = _subborrow_u32(x13, 0x0, x4, &x15);
- { uint32_t x18; uint8_t x19 = _subborrow_u32(x16, 0x0, x6, &x18);
- { uint32_t x21; uint8_t x22 = _subborrow_u32(x19, 0x0, x8, &x21);
- { uint32_t x24; uint8_t x25 = _subborrow_u32(x22, 0x0, x10, &x24);
- { uint32_t x27; uint8_t x28 = _subborrow_u32(x25, 0x0, x9, &x27);
- { uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- { uint32_t x30 = (x29 & 0xfffffffd);
- { uint32_t x32; uint8_t x33 = _addcarryx_u32(0x0, x12, x30, &x32);
- { uint32_t x34 = (x29 & 0xffffffff);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(x33, x15, x34, &x36);
- { uint32_t x38 = (x29 & 0xffffffff);
- { uint32_t x40; uint8_t x41 = _addcarryx_u32(x37, x18, x38, &x40);
- { uint32_t x42 = (x29 & 0xffffffff);
- { uint32_t x44; uint8_t x45 = _addcarryx_u32(x41, x21, x42, &x44);
- { uint32_t x46 = (x29 & 0xffffffff);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x45, x24, x46, &x48);
- { uint32_t x50 = (x29 & 0x3fff);
- { uint32_t x52; uint8_t _ = _addcarryx_u32(x49, x27, x50, &x52);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e174m3_6limbs/feopp.v b/src/Specific/montgomery32_2e174m3_6limbs/feopp.v
deleted file mode 100644
index 0f2f5c5eb..000000000
--- a/src/Specific/montgomery32_2e174m3_6limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e174m3_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e174m3_6limbs/feoppDisplay.log b/src/Specific/montgomery32_2e174m3_6limbs/feoppDisplay.log
deleted file mode 100644
index 1f234f789..000000000
--- a/src/Specific/montgomery32_2e174m3_6limbs/feoppDisplay.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 = subborrow_u32(0x0, 0x0, x2);
- uint32_t x15, uint8_t x16 = subborrow_u32(x13, 0x0, x4);
- uint32_t x18, uint8_t x19 = subborrow_u32(x16, 0x0, x6);
- uint32_t x21, uint8_t x22 = subborrow_u32(x19, 0x0, x8);
- uint32_t x24, uint8_t x25 = subborrow_u32(x22, 0x0, x10);
- uint32_t x27, uint8_t x28 = subborrow_u32(x25, 0x0, x9);
- uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- uint32_t x30 = (x29 & 0xfffffffd);
- uint32_t x32, uint8_t x33 = addcarryx_u32(0x0, x12, x30);
- uint32_t x34 = (x29 & 0xffffffff);
- uint32_t x36, uint8_t x37 = addcarryx_u32(x33, x15, x34);
- uint32_t x38 = (x29 & 0xffffffff);
- uint32_t x40, uint8_t x41 = addcarryx_u32(x37, x18, x38);
- uint32_t x42 = (x29 & 0xffffffff);
- uint32_t x44, uint8_t x45 = addcarryx_u32(x41, x21, x42);
- uint32_t x46 = (x29 & 0xffffffff);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x45, x24, x46);
- uint32_t x50 = (x29 & 0x3fff);
- uint32_t x52, uint8_t _ = addcarryx_u32(x49, x27, 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/montgomery32_2e174m3_6limbs/feoppDisplay.v b/src/Specific/montgomery32_2e174m3_6limbs/feoppDisplay.v
deleted file mode 100644
index 2d7d49d3b..000000000
--- a/src/Specific/montgomery32_2e174m3_6limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e174m3_6limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e174m3_6limbs/fesquare.c b/src/Specific/montgomery32_2e174m3_6limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e174m3_6limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e174m3_6limbs/fesub.c b/src/Specific/montgomery32_2e174m3_6limbs/fesub.c
deleted file mode 100644
index 01db95d89..000000000
--- a/src/Specific/montgomery32_2e174m3_6limbs/fesub.c
+++ /dev/null
@@ -1,40 +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];
- { uint32_t x25; uint8_t x26 = _subborrow_u32(0x0, x5, x15, &x25);
- { uint32_t x28; uint8_t x29 = _subborrow_u32(x26, x7, x17, &x28);
- { uint32_t x31; uint8_t x32 = _subborrow_u32(x29, x9, x19, &x31);
- { uint32_t x34; uint8_t x35 = _subborrow_u32(x32, x11, x21, &x34);
- { uint32_t x37; uint8_t x38 = _subborrow_u32(x35, x13, x23, &x37);
- { uint32_t x40; uint8_t x41 = _subborrow_u32(x38, x12, x22, &x40);
- { uint32_t x42 = cmovznz32(x41, 0x0, 0xffffffff);
- { uint32_t x43 = (x42 & 0xfffffffd);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(0x0, x25, x43, &x45);
- { uint32_t x47 = (x42 & 0xffffffff);
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(x46, x28, x47, &x49);
- { uint32_t x51 = (x42 & 0xffffffff);
- { uint32_t x53; uint8_t x54 = _addcarryx_u32(x50, x31, x51, &x53);
- { uint32_t x55 = (x42 & 0xffffffff);
- { uint32_t x57; uint8_t x58 = _addcarryx_u32(x54, x34, x55, &x57);
- { uint32_t x59 = (x42 & 0xffffffff);
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(x58, x37, x59, &x61);
- { uint32_t x63 = (x42 & 0x3fff);
- { uint32_t x65; uint8_t _ = _addcarryx_u32(x62, x40, x63, &x65);
- out[0] = x45;
- out[1] = x49;
- out[2] = x53;
- out[3] = x57;
- out[4] = x61;
- out[5] = x65;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e174m3_6limbs/fesub.v b/src/Specific/montgomery32_2e174m3_6limbs/fesub.v
deleted file mode 100644
index 973f21b8c..000000000
--- a/src/Specific/montgomery32_2e174m3_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e174m3_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e174m3_6limbs/fesubDisplay.log b/src/Specific/montgomery32_2e174m3_6limbs/fesubDisplay.log
deleted file mode 100644
index 7efb22e98..000000000
--- a/src/Specific/montgomery32_2e174m3_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,26 +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,
- uint32_t x25, uint8_t x26 = subborrow_u32(0x0, x5, x15);
- uint32_t x28, uint8_t x29 = subborrow_u32(x26, x7, x17);
- uint32_t x31, uint8_t x32 = subborrow_u32(x29, x9, x19);
- uint32_t x34, uint8_t x35 = subborrow_u32(x32, x11, x21);
- uint32_t x37, uint8_t x38 = subborrow_u32(x35, x13, x23);
- uint32_t x40, uint8_t x41 = subborrow_u32(x38, x12, x22);
- uint32_t x42 = cmovznz32(x41, 0x0, 0xffffffff);
- uint32_t x43 = (x42 & 0xfffffffd);
- uint32_t x45, uint8_t x46 = addcarryx_u32(0x0, x25, x43);
- uint32_t x47 = (x42 & 0xffffffff);
- uint32_t x49, uint8_t x50 = addcarryx_u32(x46, x28, x47);
- uint32_t x51 = (x42 & 0xffffffff);
- uint32_t x53, uint8_t x54 = addcarryx_u32(x50, x31, x51);
- uint32_t x55 = (x42 & 0xffffffff);
- uint32_t x57, uint8_t x58 = addcarryx_u32(x54, x34, x55);
- uint32_t x59 = (x42 & 0xffffffff);
- uint32_t x61, uint8_t x62 = addcarryx_u32(x58, x37, x59);
- uint32_t x63 = (x42 & 0x3fff);
- uint32_t x65, uint8_t _ = addcarryx_u32(x62, x40, x63);
- (Return x65, Return x61, Return x57, Return x53, Return x49, Return x45))
-(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/montgomery32_2e174m3_6limbs/fesubDisplay.v b/src/Specific/montgomery32_2e174m3_6limbs/fesubDisplay.v
deleted file mode 100644
index 9d3236693..000000000
--- a/src/Specific/montgomery32_2e174m3_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e174m3_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e174m3_6limbs/py_interpreter.sh b/src/Specific/montgomery32_2e174m3_6limbs/py_interpreter.sh
deleted file mode 100755
index a352c1e14..000000000
--- a/src/Specific/montgomery32_2e174m3_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**174 - 3' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e189m25_6limbs/CurveParameters.v b/src/Specific/montgomery32_2e189m25_6limbs/CurveParameters.v
deleted file mode 100644
index c6dffce9b..000000000
--- a/src/Specific/montgomery32_2e189m25_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^189 - 25
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 32;
- bitwidth := 32;
- s := 2^189;
- c := [(1, 25)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e189m25_6limbs/Synthesis.v b/src/Specific/montgomery32_2e189m25_6limbs/Synthesis.v
deleted file mode 100644
index 10fce69d6..000000000
--- a/src/Specific/montgomery32_2e189m25_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e189m25_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/montgomery32_2e189m25_6limbs/compiler.sh b/src/Specific/montgomery32_2e189m25_6limbs/compiler.sh
deleted file mode 100755
index a0966e875..000000000
--- a/src/Specific/montgomery32_2e189m25_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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<189) - 25' "$@"
diff --git a/src/Specific/montgomery32_2e189m25_6limbs/compilerxx.sh b/src/Specific/montgomery32_2e189m25_6limbs/compilerxx.sh
deleted file mode 100755
index 195032eeb..000000000
--- a/src/Specific/montgomery32_2e189m25_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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<189) - 25' "$@"
diff --git a/src/Specific/montgomery32_2e189m25_6limbs/feadd.c b/src/Specific/montgomery32_2e189m25_6limbs/feadd.c
deleted file mode 100644
index 7bc1da67f..000000000
--- a/src/Specific/montgomery32_2e189m25_6limbs/feadd.c
+++ /dev/null
@@ -1,40 +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];
- { uint32_t x25; uint8_t x26 = _addcarryx_u32(0x0, x5, x15, &x25);
- { uint32_t x28; uint8_t x29 = _addcarryx_u32(x26, x7, x17, &x28);
- { uint32_t x31; uint8_t x32 = _addcarryx_u32(x29, x9, x19, &x31);
- { uint32_t x34; uint8_t x35 = _addcarryx_u32(x32, x11, x21, &x34);
- { uint32_t x37; uint8_t x38 = _addcarryx_u32(x35, x13, x23, &x37);
- { uint32_t x40; uint8_t x41 = _addcarryx_u32(x38, x12, x22, &x40);
- { uint32_t x43; uint8_t x44 = _subborrow_u32(0x0, x25, 0xffffffe7, &x43);
- { uint32_t x46; uint8_t x47 = _subborrow_u32(x44, x28, 0xffffffff, &x46);
- { uint32_t x49; uint8_t x50 = _subborrow_u32(x47, x31, 0xffffffff, &x49);
- { uint32_t x52; uint8_t x53 = _subborrow_u32(x50, x34, 0xffffffff, &x52);
- { uint32_t x55; uint8_t x56 = _subborrow_u32(x53, x37, 0xffffffff, &x55);
- { uint32_t x58; uint8_t x59 = _subborrow_u32(x56, x40, 0x1fffffff, &x58);
- { uint32_t _; uint8_t x62 = _subborrow_u32(x59, x41, 0x0, &_);
- { uint32_t x63 = cmovznz32(x62, x58, x40);
- { uint32_t x64 = cmovznz32(x62, x55, x37);
- { uint32_t x65 = cmovznz32(x62, x52, x34);
- { uint32_t x66 = cmovznz32(x62, x49, x31);
- { uint32_t x67 = cmovznz32(x62, x46, x28);
- { uint32_t x68 = cmovznz32(x62, x43, x25);
- out[0] = x68;
- out[1] = x67;
- out[2] = x66;
- out[3] = x65;
- out[4] = x64;
- out[5] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e189m25_6limbs/feadd.v b/src/Specific/montgomery32_2e189m25_6limbs/feadd.v
deleted file mode 100644
index 7b5f01efa..000000000
--- a/src/Specific/montgomery32_2e189m25_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e189m25_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e189m25_6limbs/feaddDisplay.log b/src/Specific/montgomery32_2e189m25_6limbs/feaddDisplay.log
deleted file mode 100644
index 4a1bcdf23..000000000
--- a/src/Specific/montgomery32_2e189m25_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,26 +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,
- uint32_t x25, uint8_t x26 = addcarryx_u32(0x0, x5, x15);
- uint32_t x28, uint8_t x29 = addcarryx_u32(x26, x7, x17);
- uint32_t x31, uint8_t x32 = addcarryx_u32(x29, x9, x19);
- uint32_t x34, uint8_t x35 = addcarryx_u32(x32, x11, x21);
- uint32_t x37, uint8_t x38 = addcarryx_u32(x35, x13, x23);
- uint32_t x40, uint8_t x41 = addcarryx_u32(x38, x12, x22);
- uint32_t x43, uint8_t x44 = subborrow_u32(0x0, x25, 0xffffffe7);
- uint32_t x46, uint8_t x47 = subborrow_u32(x44, x28, 0xffffffff);
- uint32_t x49, uint8_t x50 = subborrow_u32(x47, x31, 0xffffffff);
- uint32_t x52, uint8_t x53 = subborrow_u32(x50, x34, 0xffffffff);
- uint32_t x55, uint8_t x56 = subborrow_u32(x53, x37, 0xffffffff);
- uint32_t x58, uint8_t x59 = subborrow_u32(x56, x40, 0x1fffffff);
- uint32_t _, uint8_t x62 = subborrow_u32(x59, x41, 0x0);
- uint32_t x63 = cmovznz32(x62, x58, x40);
- uint32_t x64 = cmovznz32(x62, x55, x37);
- uint32_t x65 = cmovznz32(x62, x52, x34);
- uint32_t x66 = cmovznz32(x62, x49, x31);
- uint32_t x67 = cmovznz32(x62, x46, x28);
- uint32_t x68 = cmovznz32(x62, x43, x25);
- return (x63, x64, x65, x66, x67, x68))
-(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/montgomery32_2e189m25_6limbs/feaddDisplay.v b/src/Specific/montgomery32_2e189m25_6limbs/feaddDisplay.v
deleted file mode 100644
index 84457773d..000000000
--- a/src/Specific/montgomery32_2e189m25_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e189m25_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e189m25_6limbs/femul.c b/src/Specific/montgomery32_2e189m25_6limbs/femul.c
deleted file mode 100644
index bca4a73ab..000000000
--- a/src/Specific/montgomery32_2e189m25_6limbs/femul.c
+++ /dev/null
@@ -1,266 +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];
- { uint32_t x26; uint32_t x25 = _mulx_u32(x5, x15, &x26);
- { uint32_t x29; uint32_t x28 = _mulx_u32(x5, x17, &x29);
- { uint32_t x32; uint32_t x31 = _mulx_u32(x5, x19, &x32);
- { uint32_t x35; uint32_t x34 = _mulx_u32(x5, x21, &x35);
- { uint32_t x38; uint32_t x37 = _mulx_u32(x5, x23, &x38);
- { uint32_t x41; uint32_t x40 = _mulx_u32(x5, x22, &x41);
- { uint32_t x43; uint8_t x44 = _addcarryx_u32(0x0, x26, x28, &x43);
- { uint32_t x46; uint8_t x47 = _addcarryx_u32(x44, x29, x31, &x46);
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(x47, x32, x34, &x49);
- { uint32_t x52; uint8_t x53 = _addcarryx_u32(x50, x35, x37, &x52);
- { uint32_t x55; uint8_t x56 = _addcarryx_u32(x53, x38, x40, &x55);
- { uint32_t x58; uint8_t _ = _addcarryx_u32(0x0, x56, x41, &x58);
- { uint32_t _; uint32_t x61 = _mulx_u32(x25, 0xc28f5c29, &_);
- { uint32_t x65; uint32_t x64 = _mulx_u32(x61, 0xffffffe7, &x65);
- { uint32_t x68; uint32_t x67 = _mulx_u32(x61, 0xffffffff, &x68);
- { uint32_t x71; uint32_t x70 = _mulx_u32(x61, 0xffffffff, &x71);
- { uint32_t x74; uint32_t x73 = _mulx_u32(x61, 0xffffffff, &x74);
- { uint32_t x77; uint32_t x76 = _mulx_u32(x61, 0xffffffff, &x77);
- { uint32_t x80; uint32_t x79 = _mulx_u32(x61, 0x1fffffff, &x80);
- { uint32_t x82; uint8_t x83 = _addcarryx_u32(0x0, x65, x67, &x82);
- { uint32_t x85; uint8_t x86 = _addcarryx_u32(x83, x68, x70, &x85);
- { uint32_t x88; uint8_t x89 = _addcarryx_u32(x86, x71, x73, &x88);
- { uint32_t x91; uint8_t x92 = _addcarryx_u32(x89, x74, x76, &x91);
- { uint32_t x94; uint8_t x95 = _addcarryx_u32(x92, x77, x79, &x94);
- { uint32_t x97; uint8_t _ = _addcarryx_u32(0x0, x95, x80, &x97);
- { uint32_t _; uint8_t x101 = _addcarryx_u32(0x0, x25, x64, &_);
- { uint32_t x103; uint8_t x104 = _addcarryx_u32(x101, x43, x82, &x103);
- { uint32_t x106; uint8_t x107 = _addcarryx_u32(x104, x46, x85, &x106);
- { uint32_t x109; uint8_t x110 = _addcarryx_u32(x107, x49, x88, &x109);
- { uint32_t x112; uint8_t x113 = _addcarryx_u32(x110, x52, x91, &x112);
- { uint32_t x115; uint8_t x116 = _addcarryx_u32(x113, x55, x94, &x115);
- { uint32_t x118; uint8_t x119 = _addcarryx_u32(x116, x58, x97, &x118);
- { uint32_t x122; uint32_t x121 = _mulx_u32(x7, x15, &x122);
- { uint32_t x125; uint32_t x124 = _mulx_u32(x7, x17, &x125);
- { uint32_t x128; uint32_t x127 = _mulx_u32(x7, x19, &x128);
- { uint32_t x131; uint32_t x130 = _mulx_u32(x7, x21, &x131);
- { uint32_t x134; uint32_t x133 = _mulx_u32(x7, x23, &x134);
- { uint32_t x137; uint32_t x136 = _mulx_u32(x7, x22, &x137);
- { uint32_t x139; uint8_t x140 = _addcarryx_u32(0x0, x122, x124, &x139);
- { uint32_t x142; uint8_t x143 = _addcarryx_u32(x140, x125, x127, &x142);
- { uint32_t x145; uint8_t x146 = _addcarryx_u32(x143, x128, x130, &x145);
- { uint32_t x148; uint8_t x149 = _addcarryx_u32(x146, x131, x133, &x148);
- { uint32_t x151; uint8_t x152 = _addcarryx_u32(x149, x134, x136, &x151);
- { uint32_t x154; uint8_t _ = _addcarryx_u32(0x0, x152, x137, &x154);
- { uint32_t x157; uint8_t x158 = _addcarryx_u32(0x0, x103, x121, &x157);
- { uint32_t x160; uint8_t x161 = _addcarryx_u32(x158, x106, x139, &x160);
- { uint32_t x163; uint8_t x164 = _addcarryx_u32(x161, x109, x142, &x163);
- { uint32_t x166; uint8_t x167 = _addcarryx_u32(x164, x112, x145, &x166);
- { uint32_t x169; uint8_t x170 = _addcarryx_u32(x167, x115, x148, &x169);
- { uint32_t x172; uint8_t x173 = _addcarryx_u32(x170, x118, x151, &x172);
- { uint32_t x175; uint8_t x176 = _addcarryx_u32(x173, x119, x154, &x175);
- { uint32_t _; uint32_t x178 = _mulx_u32(x157, 0xc28f5c29, &_);
- { uint32_t x182; uint32_t x181 = _mulx_u32(x178, 0xffffffe7, &x182);
- { uint32_t x185; uint32_t x184 = _mulx_u32(x178, 0xffffffff, &x185);
- { uint32_t x188; uint32_t x187 = _mulx_u32(x178, 0xffffffff, &x188);
- { uint32_t x191; uint32_t x190 = _mulx_u32(x178, 0xffffffff, &x191);
- { uint32_t x194; uint32_t x193 = _mulx_u32(x178, 0xffffffff, &x194);
- { uint32_t x197; uint32_t x196 = _mulx_u32(x178, 0x1fffffff, &x197);
- { uint32_t x199; uint8_t x200 = _addcarryx_u32(0x0, x182, x184, &x199);
- { uint32_t x202; uint8_t x203 = _addcarryx_u32(x200, x185, x187, &x202);
- { uint32_t x205; uint8_t x206 = _addcarryx_u32(x203, x188, x190, &x205);
- { uint32_t x208; uint8_t x209 = _addcarryx_u32(x206, x191, x193, &x208);
- { uint32_t x211; uint8_t x212 = _addcarryx_u32(x209, x194, x196, &x211);
- { uint32_t x214; uint8_t _ = _addcarryx_u32(0x0, x212, x197, &x214);
- { uint32_t _; uint8_t x218 = _addcarryx_u32(0x0, x157, x181, &_);
- { uint32_t x220; uint8_t x221 = _addcarryx_u32(x218, x160, x199, &x220);
- { uint32_t x223; uint8_t x224 = _addcarryx_u32(x221, x163, x202, &x223);
- { uint32_t x226; uint8_t x227 = _addcarryx_u32(x224, x166, x205, &x226);
- { uint32_t x229; uint8_t x230 = _addcarryx_u32(x227, x169, x208, &x229);
- { uint32_t x232; uint8_t x233 = _addcarryx_u32(x230, x172, x211, &x232);
- { uint32_t x235; uint8_t x236 = _addcarryx_u32(x233, x175, x214, &x235);
- { uint8_t x237 = (x236 + x176);
- { uint32_t x240; uint32_t x239 = _mulx_u32(x9, x15, &x240);
- { uint32_t x243; uint32_t x242 = _mulx_u32(x9, x17, &x243);
- { uint32_t x246; uint32_t x245 = _mulx_u32(x9, x19, &x246);
- { uint32_t x249; uint32_t x248 = _mulx_u32(x9, x21, &x249);
- { uint32_t x252; uint32_t x251 = _mulx_u32(x9, x23, &x252);
- { uint32_t x255; uint32_t x254 = _mulx_u32(x9, x22, &x255);
- { uint32_t x257; uint8_t x258 = _addcarryx_u32(0x0, x240, x242, &x257);
- { uint32_t x260; uint8_t x261 = _addcarryx_u32(x258, x243, x245, &x260);
- { uint32_t x263; uint8_t x264 = _addcarryx_u32(x261, x246, x248, &x263);
- { uint32_t x266; uint8_t x267 = _addcarryx_u32(x264, x249, x251, &x266);
- { uint32_t x269; uint8_t x270 = _addcarryx_u32(x267, x252, x254, &x269);
- { uint32_t x272; uint8_t _ = _addcarryx_u32(0x0, x270, x255, &x272);
- { uint32_t x275; uint8_t x276 = _addcarryx_u32(0x0, x220, x239, &x275);
- { uint32_t x278; uint8_t x279 = _addcarryx_u32(x276, x223, x257, &x278);
- { uint32_t x281; uint8_t x282 = _addcarryx_u32(x279, x226, x260, &x281);
- { uint32_t x284; uint8_t x285 = _addcarryx_u32(x282, x229, x263, &x284);
- { uint32_t x287; uint8_t x288 = _addcarryx_u32(x285, x232, x266, &x287);
- { uint32_t x290; uint8_t x291 = _addcarryx_u32(x288, x235, x269, &x290);
- { uint32_t x293; uint8_t x294 = _addcarryx_u32(x291, x237, x272, &x293);
- { uint32_t _; uint32_t x296 = _mulx_u32(x275, 0xc28f5c29, &_);
- { uint32_t x300; uint32_t x299 = _mulx_u32(x296, 0xffffffe7, &x300);
- { uint32_t x303; uint32_t x302 = _mulx_u32(x296, 0xffffffff, &x303);
- { uint32_t x306; uint32_t x305 = _mulx_u32(x296, 0xffffffff, &x306);
- { uint32_t x309; uint32_t x308 = _mulx_u32(x296, 0xffffffff, &x309);
- { uint32_t x312; uint32_t x311 = _mulx_u32(x296, 0xffffffff, &x312);
- { uint32_t x315; uint32_t x314 = _mulx_u32(x296, 0x1fffffff, &x315);
- { uint32_t x317; uint8_t x318 = _addcarryx_u32(0x0, x300, x302, &x317);
- { uint32_t x320; uint8_t x321 = _addcarryx_u32(x318, x303, x305, &x320);
- { uint32_t x323; uint8_t x324 = _addcarryx_u32(x321, x306, x308, &x323);
- { uint32_t x326; uint8_t x327 = _addcarryx_u32(x324, x309, x311, &x326);
- { uint32_t x329; uint8_t x330 = _addcarryx_u32(x327, x312, x314, &x329);
- { uint32_t x332; uint8_t _ = _addcarryx_u32(0x0, x330, x315, &x332);
- { uint32_t _; uint8_t x336 = _addcarryx_u32(0x0, x275, x299, &_);
- { uint32_t x338; uint8_t x339 = _addcarryx_u32(x336, x278, x317, &x338);
- { uint32_t x341; uint8_t x342 = _addcarryx_u32(x339, x281, x320, &x341);
- { uint32_t x344; uint8_t x345 = _addcarryx_u32(x342, x284, x323, &x344);
- { uint32_t x347; uint8_t x348 = _addcarryx_u32(x345, x287, x326, &x347);
- { uint32_t x350; uint8_t x351 = _addcarryx_u32(x348, x290, x329, &x350);
- { uint32_t x353; uint8_t x354 = _addcarryx_u32(x351, x293, x332, &x353);
- { uint8_t x355 = (x354 + x294);
- { uint32_t x358; uint32_t x357 = _mulx_u32(x11, x15, &x358);
- { uint32_t x361; uint32_t x360 = _mulx_u32(x11, x17, &x361);
- { uint32_t x364; uint32_t x363 = _mulx_u32(x11, x19, &x364);
- { uint32_t x367; uint32_t x366 = _mulx_u32(x11, x21, &x367);
- { uint32_t x370; uint32_t x369 = _mulx_u32(x11, x23, &x370);
- { uint32_t x373; uint32_t x372 = _mulx_u32(x11, x22, &x373);
- { uint32_t x375; uint8_t x376 = _addcarryx_u32(0x0, x358, x360, &x375);
- { uint32_t x378; uint8_t x379 = _addcarryx_u32(x376, x361, x363, &x378);
- { uint32_t x381; uint8_t x382 = _addcarryx_u32(x379, x364, x366, &x381);
- { uint32_t x384; uint8_t x385 = _addcarryx_u32(x382, x367, x369, &x384);
- { uint32_t x387; uint8_t x388 = _addcarryx_u32(x385, x370, x372, &x387);
- { uint32_t x390; uint8_t _ = _addcarryx_u32(0x0, x388, x373, &x390);
- { uint32_t x393; uint8_t x394 = _addcarryx_u32(0x0, x338, x357, &x393);
- { uint32_t x396; uint8_t x397 = _addcarryx_u32(x394, x341, x375, &x396);
- { uint32_t x399; uint8_t x400 = _addcarryx_u32(x397, x344, x378, &x399);
- { uint32_t x402; uint8_t x403 = _addcarryx_u32(x400, x347, x381, &x402);
- { uint32_t x405; uint8_t x406 = _addcarryx_u32(x403, x350, x384, &x405);
- { uint32_t x408; uint8_t x409 = _addcarryx_u32(x406, x353, x387, &x408);
- { uint32_t x411; uint8_t x412 = _addcarryx_u32(x409, x355, x390, &x411);
- { uint32_t _; uint32_t x414 = _mulx_u32(x393, 0xc28f5c29, &_);
- { uint32_t x418; uint32_t x417 = _mulx_u32(x414, 0xffffffe7, &x418);
- { uint32_t x421; uint32_t x420 = _mulx_u32(x414, 0xffffffff, &x421);
- { uint32_t x424; uint32_t x423 = _mulx_u32(x414, 0xffffffff, &x424);
- { uint32_t x427; uint32_t x426 = _mulx_u32(x414, 0xffffffff, &x427);
- { uint32_t x430; uint32_t x429 = _mulx_u32(x414, 0xffffffff, &x430);
- { uint32_t x433; uint32_t x432 = _mulx_u32(x414, 0x1fffffff, &x433);
- { uint32_t x435; uint8_t x436 = _addcarryx_u32(0x0, x418, x420, &x435);
- { uint32_t x438; uint8_t x439 = _addcarryx_u32(x436, x421, x423, &x438);
- { uint32_t x441; uint8_t x442 = _addcarryx_u32(x439, x424, x426, &x441);
- { uint32_t x444; uint8_t x445 = _addcarryx_u32(x442, x427, x429, &x444);
- { uint32_t x447; uint8_t x448 = _addcarryx_u32(x445, x430, x432, &x447);
- { uint32_t x450; uint8_t _ = _addcarryx_u32(0x0, x448, x433, &x450);
- { uint32_t _; uint8_t x454 = _addcarryx_u32(0x0, x393, x417, &_);
- { uint32_t x456; uint8_t x457 = _addcarryx_u32(x454, x396, x435, &x456);
- { uint32_t x459; uint8_t x460 = _addcarryx_u32(x457, x399, x438, &x459);
- { uint32_t x462; uint8_t x463 = _addcarryx_u32(x460, x402, x441, &x462);
- { uint32_t x465; uint8_t x466 = _addcarryx_u32(x463, x405, x444, &x465);
- { uint32_t x468; uint8_t x469 = _addcarryx_u32(x466, x408, x447, &x468);
- { uint32_t x471; uint8_t x472 = _addcarryx_u32(x469, x411, x450, &x471);
- { uint8_t x473 = (x472 + x412);
- { uint32_t x476; uint32_t x475 = _mulx_u32(x13, x15, &x476);
- { uint32_t x479; uint32_t x478 = _mulx_u32(x13, x17, &x479);
- { uint32_t x482; uint32_t x481 = _mulx_u32(x13, x19, &x482);
- { uint32_t x485; uint32_t x484 = _mulx_u32(x13, x21, &x485);
- { uint32_t x488; uint32_t x487 = _mulx_u32(x13, x23, &x488);
- { uint32_t x491; uint32_t x490 = _mulx_u32(x13, x22, &x491);
- { uint32_t x493; uint8_t x494 = _addcarryx_u32(0x0, x476, x478, &x493);
- { uint32_t x496; uint8_t x497 = _addcarryx_u32(x494, x479, x481, &x496);
- { uint32_t x499; uint8_t x500 = _addcarryx_u32(x497, x482, x484, &x499);
- { uint32_t x502; uint8_t x503 = _addcarryx_u32(x500, x485, x487, &x502);
- { uint32_t x505; uint8_t x506 = _addcarryx_u32(x503, x488, x490, &x505);
- { uint32_t x508; uint8_t _ = _addcarryx_u32(0x0, x506, x491, &x508);
- { uint32_t x511; uint8_t x512 = _addcarryx_u32(0x0, x456, x475, &x511);
- { uint32_t x514; uint8_t x515 = _addcarryx_u32(x512, x459, x493, &x514);
- { uint32_t x517; uint8_t x518 = _addcarryx_u32(x515, x462, x496, &x517);
- { uint32_t x520; uint8_t x521 = _addcarryx_u32(x518, x465, x499, &x520);
- { uint32_t x523; uint8_t x524 = _addcarryx_u32(x521, x468, x502, &x523);
- { uint32_t x526; uint8_t x527 = _addcarryx_u32(x524, x471, x505, &x526);
- { uint32_t x529; uint8_t x530 = _addcarryx_u32(x527, x473, x508, &x529);
- { uint32_t _; uint32_t x532 = _mulx_u32(x511, 0xc28f5c29, &_);
- { uint32_t x536; uint32_t x535 = _mulx_u32(x532, 0xffffffe7, &x536);
- { uint32_t x539; uint32_t x538 = _mulx_u32(x532, 0xffffffff, &x539);
- { uint32_t x542; uint32_t x541 = _mulx_u32(x532, 0xffffffff, &x542);
- { uint32_t x545; uint32_t x544 = _mulx_u32(x532, 0xffffffff, &x545);
- { uint32_t x548; uint32_t x547 = _mulx_u32(x532, 0xffffffff, &x548);
- { uint32_t x551; uint32_t x550 = _mulx_u32(x532, 0x1fffffff, &x551);
- { uint32_t x553; uint8_t x554 = _addcarryx_u32(0x0, x536, x538, &x553);
- { uint32_t x556; uint8_t x557 = _addcarryx_u32(x554, x539, x541, &x556);
- { uint32_t x559; uint8_t x560 = _addcarryx_u32(x557, x542, x544, &x559);
- { uint32_t x562; uint8_t x563 = _addcarryx_u32(x560, x545, x547, &x562);
- { uint32_t x565; uint8_t x566 = _addcarryx_u32(x563, x548, x550, &x565);
- { uint32_t x568; uint8_t _ = _addcarryx_u32(0x0, x566, x551, &x568);
- { uint32_t _; uint8_t x572 = _addcarryx_u32(0x0, x511, x535, &_);
- { uint32_t x574; uint8_t x575 = _addcarryx_u32(x572, x514, x553, &x574);
- { uint32_t x577; uint8_t x578 = _addcarryx_u32(x575, x517, x556, &x577);
- { uint32_t x580; uint8_t x581 = _addcarryx_u32(x578, x520, x559, &x580);
- { uint32_t x583; uint8_t x584 = _addcarryx_u32(x581, x523, x562, &x583);
- { uint32_t x586; uint8_t x587 = _addcarryx_u32(x584, x526, x565, &x586);
- { uint32_t x589; uint8_t x590 = _addcarryx_u32(x587, x529, x568, &x589);
- { uint8_t x591 = (x590 + x530);
- { uint32_t x594; uint32_t x593 = _mulx_u32(x12, x15, &x594);
- { uint32_t x597; uint32_t x596 = _mulx_u32(x12, x17, &x597);
- { uint32_t x600; uint32_t x599 = _mulx_u32(x12, x19, &x600);
- { uint32_t x603; uint32_t x602 = _mulx_u32(x12, x21, &x603);
- { uint32_t x606; uint32_t x605 = _mulx_u32(x12, x23, &x606);
- { uint32_t x609; uint32_t x608 = _mulx_u32(x12, x22, &x609);
- { uint32_t x611; uint8_t x612 = _addcarryx_u32(0x0, x594, x596, &x611);
- { uint32_t x614; uint8_t x615 = _addcarryx_u32(x612, x597, x599, &x614);
- { uint32_t x617; uint8_t x618 = _addcarryx_u32(x615, x600, x602, &x617);
- { uint32_t x620; uint8_t x621 = _addcarryx_u32(x618, x603, x605, &x620);
- { uint32_t x623; uint8_t x624 = _addcarryx_u32(x621, x606, x608, &x623);
- { uint32_t x626; uint8_t _ = _addcarryx_u32(0x0, x624, x609, &x626);
- { uint32_t x629; uint8_t x630 = _addcarryx_u32(0x0, x574, x593, &x629);
- { uint32_t x632; uint8_t x633 = _addcarryx_u32(x630, x577, x611, &x632);
- { uint32_t x635; uint8_t x636 = _addcarryx_u32(x633, x580, x614, &x635);
- { uint32_t x638; uint8_t x639 = _addcarryx_u32(x636, x583, x617, &x638);
- { uint32_t x641; uint8_t x642 = _addcarryx_u32(x639, x586, x620, &x641);
- { uint32_t x644; uint8_t x645 = _addcarryx_u32(x642, x589, x623, &x644);
- { uint32_t x647; uint8_t x648 = _addcarryx_u32(x645, x591, x626, &x647);
- { uint32_t _; uint32_t x650 = _mulx_u32(x629, 0xc28f5c29, &_);
- { uint32_t x654; uint32_t x653 = _mulx_u32(x650, 0xffffffe7, &x654);
- { uint32_t x657; uint32_t x656 = _mulx_u32(x650, 0xffffffff, &x657);
- { uint32_t x660; uint32_t x659 = _mulx_u32(x650, 0xffffffff, &x660);
- { uint32_t x663; uint32_t x662 = _mulx_u32(x650, 0xffffffff, &x663);
- { uint32_t x666; uint32_t x665 = _mulx_u32(x650, 0xffffffff, &x666);
- { uint32_t x669; uint32_t x668 = _mulx_u32(x650, 0x1fffffff, &x669);
- { uint32_t x671; uint8_t x672 = _addcarryx_u32(0x0, x654, x656, &x671);
- { uint32_t x674; uint8_t x675 = _addcarryx_u32(x672, x657, x659, &x674);
- { uint32_t x677; uint8_t x678 = _addcarryx_u32(x675, x660, x662, &x677);
- { uint32_t x680; uint8_t x681 = _addcarryx_u32(x678, x663, x665, &x680);
- { uint32_t x683; uint8_t x684 = _addcarryx_u32(x681, x666, x668, &x683);
- { uint32_t x686; uint8_t _ = _addcarryx_u32(0x0, x684, x669, &x686);
- { uint32_t _; uint8_t x690 = _addcarryx_u32(0x0, x629, x653, &_);
- { uint32_t x692; uint8_t x693 = _addcarryx_u32(x690, x632, x671, &x692);
- { uint32_t x695; uint8_t x696 = _addcarryx_u32(x693, x635, x674, &x695);
- { uint32_t x698; uint8_t x699 = _addcarryx_u32(x696, x638, x677, &x698);
- { uint32_t x701; uint8_t x702 = _addcarryx_u32(x699, x641, x680, &x701);
- { uint32_t x704; uint8_t x705 = _addcarryx_u32(x702, x644, x683, &x704);
- { uint32_t x707; uint8_t x708 = _addcarryx_u32(x705, x647, x686, &x707);
- { uint8_t x709 = (x708 + x648);
- { uint32_t x711; uint8_t x712 = _subborrow_u32(0x0, x692, 0xffffffe7, &x711);
- { uint32_t x714; uint8_t x715 = _subborrow_u32(x712, x695, 0xffffffff, &x714);
- { uint32_t x717; uint8_t x718 = _subborrow_u32(x715, x698, 0xffffffff, &x717);
- { uint32_t x720; uint8_t x721 = _subborrow_u32(x718, x701, 0xffffffff, &x720);
- { uint32_t x723; uint8_t x724 = _subborrow_u32(x721, x704, 0xffffffff, &x723);
- { uint32_t x726; uint8_t x727 = _subborrow_u32(x724, x707, 0x1fffffff, &x726);
- { uint32_t _; uint8_t x730 = _subborrow_u32(x727, x709, 0x0, &_);
- { uint32_t x731 = cmovznz32(x730, x726, x707);
- { uint32_t x732 = cmovznz32(x730, x723, x704);
- { uint32_t x733 = cmovznz32(x730, x720, x701);
- { uint32_t x734 = cmovznz32(x730, x717, x698);
- { uint32_t x735 = cmovznz32(x730, x714, x695);
- { uint32_t x736 = cmovznz32(x730, x711, x692);
- out[0] = x736;
- out[1] = x735;
- out[2] = x734;
- out[3] = x733;
- out[4] = x732;
- out[5] = x731;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e189m25_6limbs/femul.v b/src/Specific/montgomery32_2e189m25_6limbs/femul.v
deleted file mode 100644
index aad556f06..000000000
--- a/src/Specific/montgomery32_2e189m25_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e189m25_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e189m25_6limbs/femulDisplay.log b/src/Specific/montgomery32_2e189m25_6limbs/femulDisplay.log
deleted file mode 100644
index b5219a8ff..000000000
--- a/src/Specific/montgomery32_2e189m25_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,252 +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,
- uint32_t x25, uint32_t x26 = mulx_u32(x5, x15);
- uint32_t x28, uint32_t x29 = mulx_u32(x5, x17);
- uint32_t x31, uint32_t x32 = mulx_u32(x5, x19);
- uint32_t x34, uint32_t x35 = mulx_u32(x5, x21);
- uint32_t x37, uint32_t x38 = mulx_u32(x5, x23);
- uint32_t x40, uint32_t x41 = mulx_u32(x5, x22);
- uint32_t x43, uint8_t x44 = addcarryx_u32(0x0, x26, x28);
- uint32_t x46, uint8_t x47 = addcarryx_u32(x44, x29, x31);
- uint32_t x49, uint8_t x50 = addcarryx_u32(x47, x32, x34);
- uint32_t x52, uint8_t x53 = addcarryx_u32(x50, x35, x37);
- uint32_t x55, uint8_t x56 = addcarryx_u32(x53, x38, x40);
- uint32_t x58, uint8_t _ = addcarryx_u32(0x0, x56, x41);
- uint32_t x61, uint32_t _ = mulx_u32(x25, 0xc28f5c29);
- uint32_t x64, uint32_t x65 = mulx_u32(x61, 0xffffffe7);
- uint32_t x67, uint32_t x68 = mulx_u32(x61, 0xffffffff);
- uint32_t x70, uint32_t x71 = mulx_u32(x61, 0xffffffff);
- uint32_t x73, uint32_t x74 = mulx_u32(x61, 0xffffffff);
- uint32_t x76, uint32_t x77 = mulx_u32(x61, 0xffffffff);
- uint32_t x79, uint32_t x80 = mulx_u32(x61, 0x1fffffff);
- uint32_t x82, uint8_t x83 = addcarryx_u32(0x0, x65, x67);
- uint32_t x85, uint8_t x86 = addcarryx_u32(x83, x68, x70);
- uint32_t x88, uint8_t x89 = addcarryx_u32(x86, x71, x73);
- uint32_t x91, uint8_t x92 = addcarryx_u32(x89, x74, x76);
- uint32_t x94, uint8_t x95 = addcarryx_u32(x92, x77, x79);
- uint32_t x97, uint8_t _ = addcarryx_u32(0x0, x95, x80);
- uint32_t _, uint8_t x101 = addcarryx_u32(0x0, x25, x64);
- uint32_t x103, uint8_t x104 = addcarryx_u32(x101, x43, x82);
- uint32_t x106, uint8_t x107 = addcarryx_u32(x104, x46, x85);
- uint32_t x109, uint8_t x110 = addcarryx_u32(x107, x49, x88);
- uint32_t x112, uint8_t x113 = addcarryx_u32(x110, x52, x91);
- uint32_t x115, uint8_t x116 = addcarryx_u32(x113, x55, x94);
- uint32_t x118, uint8_t x119 = addcarryx_u32(x116, x58, x97);
- uint32_t x121, uint32_t x122 = mulx_u32(x7, x15);
- uint32_t x124, uint32_t x125 = mulx_u32(x7, x17);
- uint32_t x127, uint32_t x128 = mulx_u32(x7, x19);
- uint32_t x130, uint32_t x131 = mulx_u32(x7, x21);
- uint32_t x133, uint32_t x134 = mulx_u32(x7, x23);
- uint32_t x136, uint32_t x137 = mulx_u32(x7, x22);
- uint32_t x139, uint8_t x140 = addcarryx_u32(0x0, x122, x124);
- uint32_t x142, uint8_t x143 = addcarryx_u32(x140, x125, x127);
- uint32_t x145, uint8_t x146 = addcarryx_u32(x143, x128, x130);
- uint32_t x148, uint8_t x149 = addcarryx_u32(x146, x131, x133);
- uint32_t x151, uint8_t x152 = addcarryx_u32(x149, x134, x136);
- uint32_t x154, uint8_t _ = addcarryx_u32(0x0, x152, x137);
- uint32_t x157, uint8_t x158 = addcarryx_u32(0x0, x103, x121);
- uint32_t x160, uint8_t x161 = addcarryx_u32(x158, x106, x139);
- uint32_t x163, uint8_t x164 = addcarryx_u32(x161, x109, x142);
- uint32_t x166, uint8_t x167 = addcarryx_u32(x164, x112, x145);
- uint32_t x169, uint8_t x170 = addcarryx_u32(x167, x115, x148);
- uint32_t x172, uint8_t x173 = addcarryx_u32(x170, x118, x151);
- uint32_t x175, uint8_t x176 = addcarryx_u32(x173, x119, x154);
- uint32_t x178, uint32_t _ = mulx_u32(x157, 0xc28f5c29);
- uint32_t x181, uint32_t x182 = mulx_u32(x178, 0xffffffe7);
- uint32_t x184, uint32_t x185 = mulx_u32(x178, 0xffffffff);
- uint32_t x187, uint32_t x188 = mulx_u32(x178, 0xffffffff);
- uint32_t x190, uint32_t x191 = mulx_u32(x178, 0xffffffff);
- uint32_t x193, uint32_t x194 = mulx_u32(x178, 0xffffffff);
- uint32_t x196, uint32_t x197 = mulx_u32(x178, 0x1fffffff);
- uint32_t x199, uint8_t x200 = addcarryx_u32(0x0, x182, x184);
- uint32_t x202, uint8_t x203 = addcarryx_u32(x200, x185, x187);
- uint32_t x205, uint8_t x206 = addcarryx_u32(x203, x188, x190);
- uint32_t x208, uint8_t x209 = addcarryx_u32(x206, x191, x193);
- uint32_t x211, uint8_t x212 = addcarryx_u32(x209, x194, x196);
- uint32_t x214, uint8_t _ = addcarryx_u32(0x0, x212, x197);
- uint32_t _, uint8_t x218 = addcarryx_u32(0x0, x157, x181);
- uint32_t x220, uint8_t x221 = addcarryx_u32(x218, x160, x199);
- uint32_t x223, uint8_t x224 = addcarryx_u32(x221, x163, x202);
- uint32_t x226, uint8_t x227 = addcarryx_u32(x224, x166, x205);
- uint32_t x229, uint8_t x230 = addcarryx_u32(x227, x169, x208);
- uint32_t x232, uint8_t x233 = addcarryx_u32(x230, x172, x211);
- uint32_t x235, uint8_t x236 = addcarryx_u32(x233, x175, x214);
- uint8_t x237 = (x236 + x176);
- uint32_t x239, uint32_t x240 = mulx_u32(x9, x15);
- uint32_t x242, uint32_t x243 = mulx_u32(x9, x17);
- uint32_t x245, uint32_t x246 = mulx_u32(x9, x19);
- uint32_t x248, uint32_t x249 = mulx_u32(x9, x21);
- uint32_t x251, uint32_t x252 = mulx_u32(x9, x23);
- uint32_t x254, uint32_t x255 = mulx_u32(x9, x22);
- uint32_t x257, uint8_t x258 = addcarryx_u32(0x0, x240, x242);
- uint32_t x260, uint8_t x261 = addcarryx_u32(x258, x243, x245);
- uint32_t x263, uint8_t x264 = addcarryx_u32(x261, x246, x248);
- uint32_t x266, uint8_t x267 = addcarryx_u32(x264, x249, x251);
- uint32_t x269, uint8_t x270 = addcarryx_u32(x267, x252, x254);
- uint32_t x272, uint8_t _ = addcarryx_u32(0x0, x270, x255);
- uint32_t x275, uint8_t x276 = addcarryx_u32(0x0, x220, x239);
- uint32_t x278, uint8_t x279 = addcarryx_u32(x276, x223, x257);
- uint32_t x281, uint8_t x282 = addcarryx_u32(x279, x226, x260);
- uint32_t x284, uint8_t x285 = addcarryx_u32(x282, x229, x263);
- uint32_t x287, uint8_t x288 = addcarryx_u32(x285, x232, x266);
- uint32_t x290, uint8_t x291 = addcarryx_u32(x288, x235, x269);
- uint32_t x293, uint8_t x294 = addcarryx_u32(x291, x237, x272);
- uint32_t x296, uint32_t _ = mulx_u32(x275, 0xc28f5c29);
- uint32_t x299, uint32_t x300 = mulx_u32(x296, 0xffffffe7);
- uint32_t x302, uint32_t x303 = mulx_u32(x296, 0xffffffff);
- uint32_t x305, uint32_t x306 = mulx_u32(x296, 0xffffffff);
- uint32_t x308, uint32_t x309 = mulx_u32(x296, 0xffffffff);
- uint32_t x311, uint32_t x312 = mulx_u32(x296, 0xffffffff);
- uint32_t x314, uint32_t x315 = mulx_u32(x296, 0x1fffffff);
- uint32_t x317, uint8_t x318 = addcarryx_u32(0x0, x300, x302);
- uint32_t x320, uint8_t x321 = addcarryx_u32(x318, x303, x305);
- uint32_t x323, uint8_t x324 = addcarryx_u32(x321, x306, x308);
- uint32_t x326, uint8_t x327 = addcarryx_u32(x324, x309, x311);
- uint32_t x329, uint8_t x330 = addcarryx_u32(x327, x312, x314);
- uint32_t x332, uint8_t _ = addcarryx_u32(0x0, x330, x315);
- uint32_t _, uint8_t x336 = addcarryx_u32(0x0, x275, x299);
- uint32_t x338, uint8_t x339 = addcarryx_u32(x336, x278, x317);
- uint32_t x341, uint8_t x342 = addcarryx_u32(x339, x281, x320);
- uint32_t x344, uint8_t x345 = addcarryx_u32(x342, x284, x323);
- uint32_t x347, uint8_t x348 = addcarryx_u32(x345, x287, x326);
- uint32_t x350, uint8_t x351 = addcarryx_u32(x348, x290, x329);
- uint32_t x353, uint8_t x354 = addcarryx_u32(x351, x293, x332);
- uint8_t x355 = (x354 + x294);
- uint32_t x357, uint32_t x358 = mulx_u32(x11, x15);
- uint32_t x360, uint32_t x361 = mulx_u32(x11, x17);
- uint32_t x363, uint32_t x364 = mulx_u32(x11, x19);
- uint32_t x366, uint32_t x367 = mulx_u32(x11, x21);
- uint32_t x369, uint32_t x370 = mulx_u32(x11, x23);
- uint32_t x372, uint32_t x373 = mulx_u32(x11, x22);
- uint32_t x375, uint8_t x376 = addcarryx_u32(0x0, x358, x360);
- uint32_t x378, uint8_t x379 = addcarryx_u32(x376, x361, x363);
- uint32_t x381, uint8_t x382 = addcarryx_u32(x379, x364, x366);
- uint32_t x384, uint8_t x385 = addcarryx_u32(x382, x367, x369);
- uint32_t x387, uint8_t x388 = addcarryx_u32(x385, x370, x372);
- uint32_t x390, uint8_t _ = addcarryx_u32(0x0, x388, x373);
- uint32_t x393, uint8_t x394 = addcarryx_u32(0x0, x338, x357);
- uint32_t x396, uint8_t x397 = addcarryx_u32(x394, x341, x375);
- uint32_t x399, uint8_t x400 = addcarryx_u32(x397, x344, x378);
- uint32_t x402, uint8_t x403 = addcarryx_u32(x400, x347, x381);
- uint32_t x405, uint8_t x406 = addcarryx_u32(x403, x350, x384);
- uint32_t x408, uint8_t x409 = addcarryx_u32(x406, x353, x387);
- uint32_t x411, uint8_t x412 = addcarryx_u32(x409, x355, x390);
- uint32_t x414, uint32_t _ = mulx_u32(x393, 0xc28f5c29);
- uint32_t x417, uint32_t x418 = mulx_u32(x414, 0xffffffe7);
- uint32_t x420, uint32_t x421 = mulx_u32(x414, 0xffffffff);
- uint32_t x423, uint32_t x424 = mulx_u32(x414, 0xffffffff);
- uint32_t x426, uint32_t x427 = mulx_u32(x414, 0xffffffff);
- uint32_t x429, uint32_t x430 = mulx_u32(x414, 0xffffffff);
- uint32_t x432, uint32_t x433 = mulx_u32(x414, 0x1fffffff);
- uint32_t x435, uint8_t x436 = addcarryx_u32(0x0, x418, x420);
- uint32_t x438, uint8_t x439 = addcarryx_u32(x436, x421, x423);
- uint32_t x441, uint8_t x442 = addcarryx_u32(x439, x424, x426);
- uint32_t x444, uint8_t x445 = addcarryx_u32(x442, x427, x429);
- uint32_t x447, uint8_t x448 = addcarryx_u32(x445, x430, x432);
- uint32_t x450, uint8_t _ = addcarryx_u32(0x0, x448, x433);
- uint32_t _, uint8_t x454 = addcarryx_u32(0x0, x393, x417);
- uint32_t x456, uint8_t x457 = addcarryx_u32(x454, x396, x435);
- uint32_t x459, uint8_t x460 = addcarryx_u32(x457, x399, x438);
- uint32_t x462, uint8_t x463 = addcarryx_u32(x460, x402, x441);
- uint32_t x465, uint8_t x466 = addcarryx_u32(x463, x405, x444);
- uint32_t x468, uint8_t x469 = addcarryx_u32(x466, x408, x447);
- uint32_t x471, uint8_t x472 = addcarryx_u32(x469, x411, x450);
- uint8_t x473 = (x472 + x412);
- uint32_t x475, uint32_t x476 = mulx_u32(x13, x15);
- uint32_t x478, uint32_t x479 = mulx_u32(x13, x17);
- uint32_t x481, uint32_t x482 = mulx_u32(x13, x19);
- uint32_t x484, uint32_t x485 = mulx_u32(x13, x21);
- uint32_t x487, uint32_t x488 = mulx_u32(x13, x23);
- uint32_t x490, uint32_t x491 = mulx_u32(x13, x22);
- uint32_t x493, uint8_t x494 = addcarryx_u32(0x0, x476, x478);
- uint32_t x496, uint8_t x497 = addcarryx_u32(x494, x479, x481);
- uint32_t x499, uint8_t x500 = addcarryx_u32(x497, x482, x484);
- uint32_t x502, uint8_t x503 = addcarryx_u32(x500, x485, x487);
- uint32_t x505, uint8_t x506 = addcarryx_u32(x503, x488, x490);
- uint32_t x508, uint8_t _ = addcarryx_u32(0x0, x506, x491);
- uint32_t x511, uint8_t x512 = addcarryx_u32(0x0, x456, x475);
- uint32_t x514, uint8_t x515 = addcarryx_u32(x512, x459, x493);
- uint32_t x517, uint8_t x518 = addcarryx_u32(x515, x462, x496);
- uint32_t x520, uint8_t x521 = addcarryx_u32(x518, x465, x499);
- uint32_t x523, uint8_t x524 = addcarryx_u32(x521, x468, x502);
- uint32_t x526, uint8_t x527 = addcarryx_u32(x524, x471, x505);
- uint32_t x529, uint8_t x530 = addcarryx_u32(x527, x473, x508);
- uint32_t x532, uint32_t _ = mulx_u32(x511, 0xc28f5c29);
- uint32_t x535, uint32_t x536 = mulx_u32(x532, 0xffffffe7);
- uint32_t x538, uint32_t x539 = mulx_u32(x532, 0xffffffff);
- uint32_t x541, uint32_t x542 = mulx_u32(x532, 0xffffffff);
- uint32_t x544, uint32_t x545 = mulx_u32(x532, 0xffffffff);
- uint32_t x547, uint32_t x548 = mulx_u32(x532, 0xffffffff);
- uint32_t x550, uint32_t x551 = mulx_u32(x532, 0x1fffffff);
- uint32_t x553, uint8_t x554 = addcarryx_u32(0x0, x536, x538);
- uint32_t x556, uint8_t x557 = addcarryx_u32(x554, x539, x541);
- uint32_t x559, uint8_t x560 = addcarryx_u32(x557, x542, x544);
- uint32_t x562, uint8_t x563 = addcarryx_u32(x560, x545, x547);
- uint32_t x565, uint8_t x566 = addcarryx_u32(x563, x548, x550);
- uint32_t x568, uint8_t _ = addcarryx_u32(0x0, x566, x551);
- uint32_t _, uint8_t x572 = addcarryx_u32(0x0, x511, x535);
- uint32_t x574, uint8_t x575 = addcarryx_u32(x572, x514, x553);
- uint32_t x577, uint8_t x578 = addcarryx_u32(x575, x517, x556);
- uint32_t x580, uint8_t x581 = addcarryx_u32(x578, x520, x559);
- uint32_t x583, uint8_t x584 = addcarryx_u32(x581, x523, x562);
- uint32_t x586, uint8_t x587 = addcarryx_u32(x584, x526, x565);
- uint32_t x589, uint8_t x590 = addcarryx_u32(x587, x529, x568);
- uint8_t x591 = (x590 + x530);
- uint32_t x593, uint32_t x594 = mulx_u32(x12, x15);
- uint32_t x596, uint32_t x597 = mulx_u32(x12, x17);
- uint32_t x599, uint32_t x600 = mulx_u32(x12, x19);
- uint32_t x602, uint32_t x603 = mulx_u32(x12, x21);
- uint32_t x605, uint32_t x606 = mulx_u32(x12, x23);
- uint32_t x608, uint32_t x609 = mulx_u32(x12, x22);
- uint32_t x611, uint8_t x612 = addcarryx_u32(0x0, x594, x596);
- uint32_t x614, uint8_t x615 = addcarryx_u32(x612, x597, x599);
- uint32_t x617, uint8_t x618 = addcarryx_u32(x615, x600, x602);
- uint32_t x620, uint8_t x621 = addcarryx_u32(x618, x603, x605);
- uint32_t x623, uint8_t x624 = addcarryx_u32(x621, x606, x608);
- uint32_t x626, uint8_t _ = addcarryx_u32(0x0, x624, x609);
- uint32_t x629, uint8_t x630 = addcarryx_u32(0x0, x574, x593);
- uint32_t x632, uint8_t x633 = addcarryx_u32(x630, x577, x611);
- uint32_t x635, uint8_t x636 = addcarryx_u32(x633, x580, x614);
- uint32_t x638, uint8_t x639 = addcarryx_u32(x636, x583, x617);
- uint32_t x641, uint8_t x642 = addcarryx_u32(x639, x586, x620);
- uint32_t x644, uint8_t x645 = addcarryx_u32(x642, x589, x623);
- uint32_t x647, uint8_t x648 = addcarryx_u32(x645, x591, x626);
- uint32_t x650, uint32_t _ = mulx_u32(x629, 0xc28f5c29);
- uint32_t x653, uint32_t x654 = mulx_u32(x650, 0xffffffe7);
- uint32_t x656, uint32_t x657 = mulx_u32(x650, 0xffffffff);
- uint32_t x659, uint32_t x660 = mulx_u32(x650, 0xffffffff);
- uint32_t x662, uint32_t x663 = mulx_u32(x650, 0xffffffff);
- uint32_t x665, uint32_t x666 = mulx_u32(x650, 0xffffffff);
- uint32_t x668, uint32_t x669 = mulx_u32(x650, 0x1fffffff);
- uint32_t x671, uint8_t x672 = addcarryx_u32(0x0, x654, x656);
- uint32_t x674, uint8_t x675 = addcarryx_u32(x672, x657, x659);
- uint32_t x677, uint8_t x678 = addcarryx_u32(x675, x660, x662);
- uint32_t x680, uint8_t x681 = addcarryx_u32(x678, x663, x665);
- uint32_t x683, uint8_t x684 = addcarryx_u32(x681, x666, x668);
- uint32_t x686, uint8_t _ = addcarryx_u32(0x0, x684, x669);
- uint32_t _, uint8_t x690 = addcarryx_u32(0x0, x629, x653);
- uint32_t x692, uint8_t x693 = addcarryx_u32(x690, x632, x671);
- uint32_t x695, uint8_t x696 = addcarryx_u32(x693, x635, x674);
- uint32_t x698, uint8_t x699 = addcarryx_u32(x696, x638, x677);
- uint32_t x701, uint8_t x702 = addcarryx_u32(x699, x641, x680);
- uint32_t x704, uint8_t x705 = addcarryx_u32(x702, x644, x683);
- uint32_t x707, uint8_t x708 = addcarryx_u32(x705, x647, x686);
- uint8_t x709 = (x708 + x648);
- uint32_t x711, uint8_t x712 = subborrow_u32(0x0, x692, 0xffffffe7);
- uint32_t x714, uint8_t x715 = subborrow_u32(x712, x695, 0xffffffff);
- uint32_t x717, uint8_t x718 = subborrow_u32(x715, x698, 0xffffffff);
- uint32_t x720, uint8_t x721 = subborrow_u32(x718, x701, 0xffffffff);
- uint32_t x723, uint8_t x724 = subborrow_u32(x721, x704, 0xffffffff);
- uint32_t x726, uint8_t x727 = subborrow_u32(x724, x707, 0x1fffffff);
- uint32_t _, uint8_t x730 = subborrow_u32(x727, x709, 0x0);
- uint32_t x731 = cmovznz32(x730, x726, x707);
- uint32_t x732 = cmovznz32(x730, x723, x704);
- uint32_t x733 = cmovznz32(x730, x720, x701);
- uint32_t x734 = cmovznz32(x730, x717, x698);
- uint32_t x735 = cmovznz32(x730, x714, x695);
- uint32_t x736 = cmovznz32(x730, x711, x692);
- return (x731, x732, x733, x734, x735, x736))
-(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/montgomery32_2e189m25_6limbs/femulDisplay.v b/src/Specific/montgomery32_2e189m25_6limbs/femulDisplay.v
deleted file mode 100644
index f70776e7c..000000000
--- a/src/Specific/montgomery32_2e189m25_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e189m25_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e189m25_6limbs/fenz.c b/src/Specific/montgomery32_2e189m25_6limbs/fenz.c
deleted file mode 100644
index 2e0454af1..000000000
--- a/src/Specific/montgomery32_2e189m25_6limbs/fenz.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], 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 x11 = (x10 | x9);
- { uint32_t x12 = (x8 | x11);
- { uint32_t x13 = (x6 | x12);
- { uint32_t x14 = (x4 | x13);
- { uint32_t x15 = (x2 | x14);
- out[0] = x15;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e189m25_6limbs/fenz.v b/src/Specific/montgomery32_2e189m25_6limbs/fenz.v
deleted file mode 100644
index ab9fda2ab..000000000
--- a/src/Specific/montgomery32_2e189m25_6limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e189m25_6limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e189m25_6limbs/fenzDisplay.log b/src/Specific/montgomery32_2e189m25_6limbs/fenzDisplay.log
deleted file mode 100644
index 616138b7b..000000000
--- a/src/Specific/montgomery32_2e189m25_6limbs/fenzDisplay.log
+++ /dev/null
@@ -1,12 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint32_t x11 = (x10 | x9);
- uint32_t x12 = (x8 | x11);
- uint32_t x13 = (x6 | x12);
- uint32_t x14 = (x4 | x13);
- uint32_t x15 = (x2 | x14);
- return x15)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e189m25_6limbs/fenzDisplay.v b/src/Specific/montgomery32_2e189m25_6limbs/fenzDisplay.v
deleted file mode 100644
index 3ec4412a7..000000000
--- a/src/Specific/montgomery32_2e189m25_6limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e189m25_6limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e189m25_6limbs/feopp.c b/src/Specific/montgomery32_2e189m25_6limbs/feopp.c
deleted file mode 100644
index 53268a96c..000000000
--- a/src/Specific/montgomery32_2e189m25_6limbs/feopp.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feopp(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 = _subborrow_u32(0x0, 0x0, x2, &x12);
- { uint32_t x15; uint8_t x16 = _subborrow_u32(x13, 0x0, x4, &x15);
- { uint32_t x18; uint8_t x19 = _subborrow_u32(x16, 0x0, x6, &x18);
- { uint32_t x21; uint8_t x22 = _subborrow_u32(x19, 0x0, x8, &x21);
- { uint32_t x24; uint8_t x25 = _subborrow_u32(x22, 0x0, x10, &x24);
- { uint32_t x27; uint8_t x28 = _subborrow_u32(x25, 0x0, x9, &x27);
- { uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- { uint32_t x30 = (x29 & 0xffffffe7);
- { uint32_t x32; uint8_t x33 = _addcarryx_u32(0x0, x12, x30, &x32);
- { uint32_t x34 = (x29 & 0xffffffff);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(x33, x15, x34, &x36);
- { uint32_t x38 = (x29 & 0xffffffff);
- { uint32_t x40; uint8_t x41 = _addcarryx_u32(x37, x18, x38, &x40);
- { uint32_t x42 = (x29 & 0xffffffff);
- { uint32_t x44; uint8_t x45 = _addcarryx_u32(x41, x21, x42, &x44);
- { uint32_t x46 = (x29 & 0xffffffff);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x45, x24, x46, &x48);
- { uint32_t x50 = (x29 & 0x1fffffff);
- { uint32_t x52; uint8_t _ = _addcarryx_u32(x49, x27, x50, &x52);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e189m25_6limbs/feopp.v b/src/Specific/montgomery32_2e189m25_6limbs/feopp.v
deleted file mode 100644
index a3c27a45a..000000000
--- a/src/Specific/montgomery32_2e189m25_6limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e189m25_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e189m25_6limbs/feoppDisplay.log b/src/Specific/montgomery32_2e189m25_6limbs/feoppDisplay.log
deleted file mode 100644
index 619df7d75..000000000
--- a/src/Specific/montgomery32_2e189m25_6limbs/feoppDisplay.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 = subborrow_u32(0x0, 0x0, x2);
- uint32_t x15, uint8_t x16 = subborrow_u32(x13, 0x0, x4);
- uint32_t x18, uint8_t x19 = subborrow_u32(x16, 0x0, x6);
- uint32_t x21, uint8_t x22 = subborrow_u32(x19, 0x0, x8);
- uint32_t x24, uint8_t x25 = subborrow_u32(x22, 0x0, x10);
- uint32_t x27, uint8_t x28 = subborrow_u32(x25, 0x0, x9);
- uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- uint32_t x30 = (x29 & 0xffffffe7);
- uint32_t x32, uint8_t x33 = addcarryx_u32(0x0, x12, x30);
- uint32_t x34 = (x29 & 0xffffffff);
- uint32_t x36, uint8_t x37 = addcarryx_u32(x33, x15, x34);
- uint32_t x38 = (x29 & 0xffffffff);
- uint32_t x40, uint8_t x41 = addcarryx_u32(x37, x18, x38);
- uint32_t x42 = (x29 & 0xffffffff);
- uint32_t x44, uint8_t x45 = addcarryx_u32(x41, x21, x42);
- uint32_t x46 = (x29 & 0xffffffff);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x45, x24, x46);
- uint32_t x50 = (x29 & 0x1fffffff);
- uint32_t x52, uint8_t _ = addcarryx_u32(x49, x27, 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/montgomery32_2e189m25_6limbs/feoppDisplay.v b/src/Specific/montgomery32_2e189m25_6limbs/feoppDisplay.v
deleted file mode 100644
index 029c1cffe..000000000
--- a/src/Specific/montgomery32_2e189m25_6limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e189m25_6limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e189m25_6limbs/fesquare.c b/src/Specific/montgomery32_2e189m25_6limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e189m25_6limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e189m25_6limbs/fesub.c b/src/Specific/montgomery32_2e189m25_6limbs/fesub.c
deleted file mode 100644
index 6dcd995c0..000000000
--- a/src/Specific/montgomery32_2e189m25_6limbs/fesub.c
+++ /dev/null
@@ -1,40 +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];
- { uint32_t x25; uint8_t x26 = _subborrow_u32(0x0, x5, x15, &x25);
- { uint32_t x28; uint8_t x29 = _subborrow_u32(x26, x7, x17, &x28);
- { uint32_t x31; uint8_t x32 = _subborrow_u32(x29, x9, x19, &x31);
- { uint32_t x34; uint8_t x35 = _subborrow_u32(x32, x11, x21, &x34);
- { uint32_t x37; uint8_t x38 = _subborrow_u32(x35, x13, x23, &x37);
- { uint32_t x40; uint8_t x41 = _subborrow_u32(x38, x12, x22, &x40);
- { uint32_t x42 = cmovznz32(x41, 0x0, 0xffffffff);
- { uint32_t x43 = (x42 & 0xffffffe7);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(0x0, x25, x43, &x45);
- { uint32_t x47 = (x42 & 0xffffffff);
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(x46, x28, x47, &x49);
- { uint32_t x51 = (x42 & 0xffffffff);
- { uint32_t x53; uint8_t x54 = _addcarryx_u32(x50, x31, x51, &x53);
- { uint32_t x55 = (x42 & 0xffffffff);
- { uint32_t x57; uint8_t x58 = _addcarryx_u32(x54, x34, x55, &x57);
- { uint32_t x59 = (x42 & 0xffffffff);
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(x58, x37, x59, &x61);
- { uint32_t x63 = (x42 & 0x1fffffff);
- { uint32_t x65; uint8_t _ = _addcarryx_u32(x62, x40, x63, &x65);
- out[0] = x45;
- out[1] = x49;
- out[2] = x53;
- out[3] = x57;
- out[4] = x61;
- out[5] = x65;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e189m25_6limbs/fesub.v b/src/Specific/montgomery32_2e189m25_6limbs/fesub.v
deleted file mode 100644
index fafd61759..000000000
--- a/src/Specific/montgomery32_2e189m25_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e189m25_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e189m25_6limbs/fesubDisplay.log b/src/Specific/montgomery32_2e189m25_6limbs/fesubDisplay.log
deleted file mode 100644
index 2e7956b02..000000000
--- a/src/Specific/montgomery32_2e189m25_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,26 +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,
- uint32_t x25, uint8_t x26 = subborrow_u32(0x0, x5, x15);
- uint32_t x28, uint8_t x29 = subborrow_u32(x26, x7, x17);
- uint32_t x31, uint8_t x32 = subborrow_u32(x29, x9, x19);
- uint32_t x34, uint8_t x35 = subborrow_u32(x32, x11, x21);
- uint32_t x37, uint8_t x38 = subborrow_u32(x35, x13, x23);
- uint32_t x40, uint8_t x41 = subborrow_u32(x38, x12, x22);
- uint32_t x42 = cmovznz32(x41, 0x0, 0xffffffff);
- uint32_t x43 = (x42 & 0xffffffe7);
- uint32_t x45, uint8_t x46 = addcarryx_u32(0x0, x25, x43);
- uint32_t x47 = (x42 & 0xffffffff);
- uint32_t x49, uint8_t x50 = addcarryx_u32(x46, x28, x47);
- uint32_t x51 = (x42 & 0xffffffff);
- uint32_t x53, uint8_t x54 = addcarryx_u32(x50, x31, x51);
- uint32_t x55 = (x42 & 0xffffffff);
- uint32_t x57, uint8_t x58 = addcarryx_u32(x54, x34, x55);
- uint32_t x59 = (x42 & 0xffffffff);
- uint32_t x61, uint8_t x62 = addcarryx_u32(x58, x37, x59);
- uint32_t x63 = (x42 & 0x1fffffff);
- uint32_t x65, uint8_t _ = addcarryx_u32(x62, x40, x63);
- (Return x65, Return x61, Return x57, Return x53, Return x49, Return x45))
-(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/montgomery32_2e189m25_6limbs/fesubDisplay.v b/src/Specific/montgomery32_2e189m25_6limbs/fesubDisplay.v
deleted file mode 100644
index 6bd99aeb9..000000000
--- a/src/Specific/montgomery32_2e189m25_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e189m25_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e189m25_6limbs/py_interpreter.sh b/src/Specific/montgomery32_2e189m25_6limbs/py_interpreter.sh
deleted file mode 100755
index 91ca61590..000000000
--- a/src/Specific/montgomery32_2e189m25_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**189 - 25' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e190m11_6limbs/CurveParameters.v b/src/Specific/montgomery32_2e190m11_6limbs/CurveParameters.v
deleted file mode 100644
index 17ea93c10..000000000
--- a/src/Specific/montgomery32_2e190m11_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^190 - 11
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 32;
- bitwidth := 32;
- s := 2^190;
- c := [(1, 11)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e190m11_6limbs/Synthesis.v b/src/Specific/montgomery32_2e190m11_6limbs/Synthesis.v
deleted file mode 100644
index 212a68859..000000000
--- a/src/Specific/montgomery32_2e190m11_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e190m11_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/montgomery32_2e190m11_6limbs/compiler.sh b/src/Specific/montgomery32_2e190m11_6limbs/compiler.sh
deleted file mode 100755
index 3113c70b4..000000000
--- a/src/Specific/montgomery32_2e190m11_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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<190) - 11' "$@"
diff --git a/src/Specific/montgomery32_2e190m11_6limbs/compilerxx.sh b/src/Specific/montgomery32_2e190m11_6limbs/compilerxx.sh
deleted file mode 100755
index 9d381645f..000000000
--- a/src/Specific/montgomery32_2e190m11_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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<190) - 11' "$@"
diff --git a/src/Specific/montgomery32_2e190m11_6limbs/feadd.c b/src/Specific/montgomery32_2e190m11_6limbs/feadd.c
deleted file mode 100644
index 411144107..000000000
--- a/src/Specific/montgomery32_2e190m11_6limbs/feadd.c
+++ /dev/null
@@ -1,40 +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];
- { uint32_t x25; uint8_t x26 = _addcarryx_u32(0x0, x5, x15, &x25);
- { uint32_t x28; uint8_t x29 = _addcarryx_u32(x26, x7, x17, &x28);
- { uint32_t x31; uint8_t x32 = _addcarryx_u32(x29, x9, x19, &x31);
- { uint32_t x34; uint8_t x35 = _addcarryx_u32(x32, x11, x21, &x34);
- { uint32_t x37; uint8_t x38 = _addcarryx_u32(x35, x13, x23, &x37);
- { uint32_t x40; uint8_t x41 = _addcarryx_u32(x38, x12, x22, &x40);
- { uint32_t x43; uint8_t x44 = _subborrow_u32(0x0, x25, 0xfffffff5, &x43);
- { uint32_t x46; uint8_t x47 = _subborrow_u32(x44, x28, 0xffffffff, &x46);
- { uint32_t x49; uint8_t x50 = _subborrow_u32(x47, x31, 0xffffffff, &x49);
- { uint32_t x52; uint8_t x53 = _subborrow_u32(x50, x34, 0xffffffff, &x52);
- { uint32_t x55; uint8_t x56 = _subborrow_u32(x53, x37, 0xffffffff, &x55);
- { uint32_t x58; uint8_t x59 = _subborrow_u32(x56, x40, 0x3fffffff, &x58);
- { uint32_t _; uint8_t x62 = _subborrow_u32(x59, x41, 0x0, &_);
- { uint32_t x63 = cmovznz32(x62, x58, x40);
- { uint32_t x64 = cmovznz32(x62, x55, x37);
- { uint32_t x65 = cmovznz32(x62, x52, x34);
- { uint32_t x66 = cmovznz32(x62, x49, x31);
- { uint32_t x67 = cmovznz32(x62, x46, x28);
- { uint32_t x68 = cmovznz32(x62, x43, x25);
- out[0] = x68;
- out[1] = x67;
- out[2] = x66;
- out[3] = x65;
- out[4] = x64;
- out[5] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e190m11_6limbs/feadd.v b/src/Specific/montgomery32_2e190m11_6limbs/feadd.v
deleted file mode 100644
index 53ce999ae..000000000
--- a/src/Specific/montgomery32_2e190m11_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e190m11_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e190m11_6limbs/feaddDisplay.log b/src/Specific/montgomery32_2e190m11_6limbs/feaddDisplay.log
deleted file mode 100644
index 3b885fe29..000000000
--- a/src/Specific/montgomery32_2e190m11_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,26 +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,
- uint32_t x25, uint8_t x26 = addcarryx_u32(0x0, x5, x15);
- uint32_t x28, uint8_t x29 = addcarryx_u32(x26, x7, x17);
- uint32_t x31, uint8_t x32 = addcarryx_u32(x29, x9, x19);
- uint32_t x34, uint8_t x35 = addcarryx_u32(x32, x11, x21);
- uint32_t x37, uint8_t x38 = addcarryx_u32(x35, x13, x23);
- uint32_t x40, uint8_t x41 = addcarryx_u32(x38, x12, x22);
- uint32_t x43, uint8_t x44 = subborrow_u32(0x0, x25, 0xfffffff5);
- uint32_t x46, uint8_t x47 = subborrow_u32(x44, x28, 0xffffffff);
- uint32_t x49, uint8_t x50 = subborrow_u32(x47, x31, 0xffffffff);
- uint32_t x52, uint8_t x53 = subborrow_u32(x50, x34, 0xffffffff);
- uint32_t x55, uint8_t x56 = subborrow_u32(x53, x37, 0xffffffff);
- uint32_t x58, uint8_t x59 = subborrow_u32(x56, x40, 0x3fffffff);
- uint32_t _, uint8_t x62 = subborrow_u32(x59, x41, 0x0);
- uint32_t x63 = cmovznz32(x62, x58, x40);
- uint32_t x64 = cmovznz32(x62, x55, x37);
- uint32_t x65 = cmovznz32(x62, x52, x34);
- uint32_t x66 = cmovznz32(x62, x49, x31);
- uint32_t x67 = cmovznz32(x62, x46, x28);
- uint32_t x68 = cmovznz32(x62, x43, x25);
- return (x63, x64, x65, x66, x67, x68))
-(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/montgomery32_2e190m11_6limbs/feaddDisplay.v b/src/Specific/montgomery32_2e190m11_6limbs/feaddDisplay.v
deleted file mode 100644
index b28308124..000000000
--- a/src/Specific/montgomery32_2e190m11_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e190m11_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e190m11_6limbs/femul.c b/src/Specific/montgomery32_2e190m11_6limbs/femul.c
deleted file mode 100644
index b62e2cb3c..000000000
--- a/src/Specific/montgomery32_2e190m11_6limbs/femul.c
+++ /dev/null
@@ -1,266 +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];
- { uint32_t x26; uint32_t x25 = _mulx_u32(x5, x15, &x26);
- { uint32_t x29; uint32_t x28 = _mulx_u32(x5, x17, &x29);
- { uint32_t x32; uint32_t x31 = _mulx_u32(x5, x19, &x32);
- { uint32_t x35; uint32_t x34 = _mulx_u32(x5, x21, &x35);
- { uint32_t x38; uint32_t x37 = _mulx_u32(x5, x23, &x38);
- { uint32_t x41; uint32_t x40 = _mulx_u32(x5, x22, &x41);
- { uint32_t x43; uint8_t x44 = _addcarryx_u32(0x0, x26, x28, &x43);
- { uint32_t x46; uint8_t x47 = _addcarryx_u32(x44, x29, x31, &x46);
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(x47, x32, x34, &x49);
- { uint32_t x52; uint8_t x53 = _addcarryx_u32(x50, x35, x37, &x52);
- { uint32_t x55; uint8_t x56 = _addcarryx_u32(x53, x38, x40, &x55);
- { uint32_t x58; uint8_t _ = _addcarryx_u32(0x0, x56, x41, &x58);
- { uint32_t _; uint32_t x61 = _mulx_u32(x25, 0xba2e8ba3, &_);
- { uint32_t x65; uint32_t x64 = _mulx_u32(x61, 0xfffffff5, &x65);
- { uint32_t x68; uint32_t x67 = _mulx_u32(x61, 0xffffffff, &x68);
- { uint32_t x71; uint32_t x70 = _mulx_u32(x61, 0xffffffff, &x71);
- { uint32_t x74; uint32_t x73 = _mulx_u32(x61, 0xffffffff, &x74);
- { uint32_t x77; uint32_t x76 = _mulx_u32(x61, 0xffffffff, &x77);
- { uint32_t x80; uint32_t x79 = _mulx_u32(x61, 0x3fffffff, &x80);
- { uint32_t x82; uint8_t x83 = _addcarryx_u32(0x0, x65, x67, &x82);
- { uint32_t x85; uint8_t x86 = _addcarryx_u32(x83, x68, x70, &x85);
- { uint32_t x88; uint8_t x89 = _addcarryx_u32(x86, x71, x73, &x88);
- { uint32_t x91; uint8_t x92 = _addcarryx_u32(x89, x74, x76, &x91);
- { uint32_t x94; uint8_t x95 = _addcarryx_u32(x92, x77, x79, &x94);
- { uint32_t x97; uint8_t _ = _addcarryx_u32(0x0, x95, x80, &x97);
- { uint32_t _; uint8_t x101 = _addcarryx_u32(0x0, x25, x64, &_);
- { uint32_t x103; uint8_t x104 = _addcarryx_u32(x101, x43, x82, &x103);
- { uint32_t x106; uint8_t x107 = _addcarryx_u32(x104, x46, x85, &x106);
- { uint32_t x109; uint8_t x110 = _addcarryx_u32(x107, x49, x88, &x109);
- { uint32_t x112; uint8_t x113 = _addcarryx_u32(x110, x52, x91, &x112);
- { uint32_t x115; uint8_t x116 = _addcarryx_u32(x113, x55, x94, &x115);
- { uint32_t x118; uint8_t x119 = _addcarryx_u32(x116, x58, x97, &x118);
- { uint32_t x122; uint32_t x121 = _mulx_u32(x7, x15, &x122);
- { uint32_t x125; uint32_t x124 = _mulx_u32(x7, x17, &x125);
- { uint32_t x128; uint32_t x127 = _mulx_u32(x7, x19, &x128);
- { uint32_t x131; uint32_t x130 = _mulx_u32(x7, x21, &x131);
- { uint32_t x134; uint32_t x133 = _mulx_u32(x7, x23, &x134);
- { uint32_t x137; uint32_t x136 = _mulx_u32(x7, x22, &x137);
- { uint32_t x139; uint8_t x140 = _addcarryx_u32(0x0, x122, x124, &x139);
- { uint32_t x142; uint8_t x143 = _addcarryx_u32(x140, x125, x127, &x142);
- { uint32_t x145; uint8_t x146 = _addcarryx_u32(x143, x128, x130, &x145);
- { uint32_t x148; uint8_t x149 = _addcarryx_u32(x146, x131, x133, &x148);
- { uint32_t x151; uint8_t x152 = _addcarryx_u32(x149, x134, x136, &x151);
- { uint32_t x154; uint8_t _ = _addcarryx_u32(0x0, x152, x137, &x154);
- { uint32_t x157; uint8_t x158 = _addcarryx_u32(0x0, x103, x121, &x157);
- { uint32_t x160; uint8_t x161 = _addcarryx_u32(x158, x106, x139, &x160);
- { uint32_t x163; uint8_t x164 = _addcarryx_u32(x161, x109, x142, &x163);
- { uint32_t x166; uint8_t x167 = _addcarryx_u32(x164, x112, x145, &x166);
- { uint32_t x169; uint8_t x170 = _addcarryx_u32(x167, x115, x148, &x169);
- { uint32_t x172; uint8_t x173 = _addcarryx_u32(x170, x118, x151, &x172);
- { uint32_t x175; uint8_t x176 = _addcarryx_u32(x173, x119, x154, &x175);
- { uint32_t _; uint32_t x178 = _mulx_u32(x157, 0xba2e8ba3, &_);
- { uint32_t x182; uint32_t x181 = _mulx_u32(x178, 0xfffffff5, &x182);
- { uint32_t x185; uint32_t x184 = _mulx_u32(x178, 0xffffffff, &x185);
- { uint32_t x188; uint32_t x187 = _mulx_u32(x178, 0xffffffff, &x188);
- { uint32_t x191; uint32_t x190 = _mulx_u32(x178, 0xffffffff, &x191);
- { uint32_t x194; uint32_t x193 = _mulx_u32(x178, 0xffffffff, &x194);
- { uint32_t x197; uint32_t x196 = _mulx_u32(x178, 0x3fffffff, &x197);
- { uint32_t x199; uint8_t x200 = _addcarryx_u32(0x0, x182, x184, &x199);
- { uint32_t x202; uint8_t x203 = _addcarryx_u32(x200, x185, x187, &x202);
- { uint32_t x205; uint8_t x206 = _addcarryx_u32(x203, x188, x190, &x205);
- { uint32_t x208; uint8_t x209 = _addcarryx_u32(x206, x191, x193, &x208);
- { uint32_t x211; uint8_t x212 = _addcarryx_u32(x209, x194, x196, &x211);
- { uint32_t x214; uint8_t _ = _addcarryx_u32(0x0, x212, x197, &x214);
- { uint32_t _; uint8_t x218 = _addcarryx_u32(0x0, x157, x181, &_);
- { uint32_t x220; uint8_t x221 = _addcarryx_u32(x218, x160, x199, &x220);
- { uint32_t x223; uint8_t x224 = _addcarryx_u32(x221, x163, x202, &x223);
- { uint32_t x226; uint8_t x227 = _addcarryx_u32(x224, x166, x205, &x226);
- { uint32_t x229; uint8_t x230 = _addcarryx_u32(x227, x169, x208, &x229);
- { uint32_t x232; uint8_t x233 = _addcarryx_u32(x230, x172, x211, &x232);
- { uint32_t x235; uint8_t x236 = _addcarryx_u32(x233, x175, x214, &x235);
- { uint8_t x237 = (x236 + x176);
- { uint32_t x240; uint32_t x239 = _mulx_u32(x9, x15, &x240);
- { uint32_t x243; uint32_t x242 = _mulx_u32(x9, x17, &x243);
- { uint32_t x246; uint32_t x245 = _mulx_u32(x9, x19, &x246);
- { uint32_t x249; uint32_t x248 = _mulx_u32(x9, x21, &x249);
- { uint32_t x252; uint32_t x251 = _mulx_u32(x9, x23, &x252);
- { uint32_t x255; uint32_t x254 = _mulx_u32(x9, x22, &x255);
- { uint32_t x257; uint8_t x258 = _addcarryx_u32(0x0, x240, x242, &x257);
- { uint32_t x260; uint8_t x261 = _addcarryx_u32(x258, x243, x245, &x260);
- { uint32_t x263; uint8_t x264 = _addcarryx_u32(x261, x246, x248, &x263);
- { uint32_t x266; uint8_t x267 = _addcarryx_u32(x264, x249, x251, &x266);
- { uint32_t x269; uint8_t x270 = _addcarryx_u32(x267, x252, x254, &x269);
- { uint32_t x272; uint8_t _ = _addcarryx_u32(0x0, x270, x255, &x272);
- { uint32_t x275; uint8_t x276 = _addcarryx_u32(0x0, x220, x239, &x275);
- { uint32_t x278; uint8_t x279 = _addcarryx_u32(x276, x223, x257, &x278);
- { uint32_t x281; uint8_t x282 = _addcarryx_u32(x279, x226, x260, &x281);
- { uint32_t x284; uint8_t x285 = _addcarryx_u32(x282, x229, x263, &x284);
- { uint32_t x287; uint8_t x288 = _addcarryx_u32(x285, x232, x266, &x287);
- { uint32_t x290; uint8_t x291 = _addcarryx_u32(x288, x235, x269, &x290);
- { uint32_t x293; uint8_t x294 = _addcarryx_u32(x291, x237, x272, &x293);
- { uint32_t _; uint32_t x296 = _mulx_u32(x275, 0xba2e8ba3, &_);
- { uint32_t x300; uint32_t x299 = _mulx_u32(x296, 0xfffffff5, &x300);
- { uint32_t x303; uint32_t x302 = _mulx_u32(x296, 0xffffffff, &x303);
- { uint32_t x306; uint32_t x305 = _mulx_u32(x296, 0xffffffff, &x306);
- { uint32_t x309; uint32_t x308 = _mulx_u32(x296, 0xffffffff, &x309);
- { uint32_t x312; uint32_t x311 = _mulx_u32(x296, 0xffffffff, &x312);
- { uint32_t x315; uint32_t x314 = _mulx_u32(x296, 0x3fffffff, &x315);
- { uint32_t x317; uint8_t x318 = _addcarryx_u32(0x0, x300, x302, &x317);
- { uint32_t x320; uint8_t x321 = _addcarryx_u32(x318, x303, x305, &x320);
- { uint32_t x323; uint8_t x324 = _addcarryx_u32(x321, x306, x308, &x323);
- { uint32_t x326; uint8_t x327 = _addcarryx_u32(x324, x309, x311, &x326);
- { uint32_t x329; uint8_t x330 = _addcarryx_u32(x327, x312, x314, &x329);
- { uint32_t x332; uint8_t _ = _addcarryx_u32(0x0, x330, x315, &x332);
- { uint32_t _; uint8_t x336 = _addcarryx_u32(0x0, x275, x299, &_);
- { uint32_t x338; uint8_t x339 = _addcarryx_u32(x336, x278, x317, &x338);
- { uint32_t x341; uint8_t x342 = _addcarryx_u32(x339, x281, x320, &x341);
- { uint32_t x344; uint8_t x345 = _addcarryx_u32(x342, x284, x323, &x344);
- { uint32_t x347; uint8_t x348 = _addcarryx_u32(x345, x287, x326, &x347);
- { uint32_t x350; uint8_t x351 = _addcarryx_u32(x348, x290, x329, &x350);
- { uint32_t x353; uint8_t x354 = _addcarryx_u32(x351, x293, x332, &x353);
- { uint8_t x355 = (x354 + x294);
- { uint32_t x358; uint32_t x357 = _mulx_u32(x11, x15, &x358);
- { uint32_t x361; uint32_t x360 = _mulx_u32(x11, x17, &x361);
- { uint32_t x364; uint32_t x363 = _mulx_u32(x11, x19, &x364);
- { uint32_t x367; uint32_t x366 = _mulx_u32(x11, x21, &x367);
- { uint32_t x370; uint32_t x369 = _mulx_u32(x11, x23, &x370);
- { uint32_t x373; uint32_t x372 = _mulx_u32(x11, x22, &x373);
- { uint32_t x375; uint8_t x376 = _addcarryx_u32(0x0, x358, x360, &x375);
- { uint32_t x378; uint8_t x379 = _addcarryx_u32(x376, x361, x363, &x378);
- { uint32_t x381; uint8_t x382 = _addcarryx_u32(x379, x364, x366, &x381);
- { uint32_t x384; uint8_t x385 = _addcarryx_u32(x382, x367, x369, &x384);
- { uint32_t x387; uint8_t x388 = _addcarryx_u32(x385, x370, x372, &x387);
- { uint32_t x390; uint8_t _ = _addcarryx_u32(0x0, x388, x373, &x390);
- { uint32_t x393; uint8_t x394 = _addcarryx_u32(0x0, x338, x357, &x393);
- { uint32_t x396; uint8_t x397 = _addcarryx_u32(x394, x341, x375, &x396);
- { uint32_t x399; uint8_t x400 = _addcarryx_u32(x397, x344, x378, &x399);
- { uint32_t x402; uint8_t x403 = _addcarryx_u32(x400, x347, x381, &x402);
- { uint32_t x405; uint8_t x406 = _addcarryx_u32(x403, x350, x384, &x405);
- { uint32_t x408; uint8_t x409 = _addcarryx_u32(x406, x353, x387, &x408);
- { uint32_t x411; uint8_t x412 = _addcarryx_u32(x409, x355, x390, &x411);
- { uint32_t _; uint32_t x414 = _mulx_u32(x393, 0xba2e8ba3, &_);
- { uint32_t x418; uint32_t x417 = _mulx_u32(x414, 0xfffffff5, &x418);
- { uint32_t x421; uint32_t x420 = _mulx_u32(x414, 0xffffffff, &x421);
- { uint32_t x424; uint32_t x423 = _mulx_u32(x414, 0xffffffff, &x424);
- { uint32_t x427; uint32_t x426 = _mulx_u32(x414, 0xffffffff, &x427);
- { uint32_t x430; uint32_t x429 = _mulx_u32(x414, 0xffffffff, &x430);
- { uint32_t x433; uint32_t x432 = _mulx_u32(x414, 0x3fffffff, &x433);
- { uint32_t x435; uint8_t x436 = _addcarryx_u32(0x0, x418, x420, &x435);
- { uint32_t x438; uint8_t x439 = _addcarryx_u32(x436, x421, x423, &x438);
- { uint32_t x441; uint8_t x442 = _addcarryx_u32(x439, x424, x426, &x441);
- { uint32_t x444; uint8_t x445 = _addcarryx_u32(x442, x427, x429, &x444);
- { uint32_t x447; uint8_t x448 = _addcarryx_u32(x445, x430, x432, &x447);
- { uint32_t x450; uint8_t _ = _addcarryx_u32(0x0, x448, x433, &x450);
- { uint32_t _; uint8_t x454 = _addcarryx_u32(0x0, x393, x417, &_);
- { uint32_t x456; uint8_t x457 = _addcarryx_u32(x454, x396, x435, &x456);
- { uint32_t x459; uint8_t x460 = _addcarryx_u32(x457, x399, x438, &x459);
- { uint32_t x462; uint8_t x463 = _addcarryx_u32(x460, x402, x441, &x462);
- { uint32_t x465; uint8_t x466 = _addcarryx_u32(x463, x405, x444, &x465);
- { uint32_t x468; uint8_t x469 = _addcarryx_u32(x466, x408, x447, &x468);
- { uint32_t x471; uint8_t x472 = _addcarryx_u32(x469, x411, x450, &x471);
- { uint8_t x473 = (x472 + x412);
- { uint32_t x476; uint32_t x475 = _mulx_u32(x13, x15, &x476);
- { uint32_t x479; uint32_t x478 = _mulx_u32(x13, x17, &x479);
- { uint32_t x482; uint32_t x481 = _mulx_u32(x13, x19, &x482);
- { uint32_t x485; uint32_t x484 = _mulx_u32(x13, x21, &x485);
- { uint32_t x488; uint32_t x487 = _mulx_u32(x13, x23, &x488);
- { uint32_t x491; uint32_t x490 = _mulx_u32(x13, x22, &x491);
- { uint32_t x493; uint8_t x494 = _addcarryx_u32(0x0, x476, x478, &x493);
- { uint32_t x496; uint8_t x497 = _addcarryx_u32(x494, x479, x481, &x496);
- { uint32_t x499; uint8_t x500 = _addcarryx_u32(x497, x482, x484, &x499);
- { uint32_t x502; uint8_t x503 = _addcarryx_u32(x500, x485, x487, &x502);
- { uint32_t x505; uint8_t x506 = _addcarryx_u32(x503, x488, x490, &x505);
- { uint32_t x508; uint8_t _ = _addcarryx_u32(0x0, x506, x491, &x508);
- { uint32_t x511; uint8_t x512 = _addcarryx_u32(0x0, x456, x475, &x511);
- { uint32_t x514; uint8_t x515 = _addcarryx_u32(x512, x459, x493, &x514);
- { uint32_t x517; uint8_t x518 = _addcarryx_u32(x515, x462, x496, &x517);
- { uint32_t x520; uint8_t x521 = _addcarryx_u32(x518, x465, x499, &x520);
- { uint32_t x523; uint8_t x524 = _addcarryx_u32(x521, x468, x502, &x523);
- { uint32_t x526; uint8_t x527 = _addcarryx_u32(x524, x471, x505, &x526);
- { uint32_t x529; uint8_t x530 = _addcarryx_u32(x527, x473, x508, &x529);
- { uint32_t _; uint32_t x532 = _mulx_u32(x511, 0xba2e8ba3, &_);
- { uint32_t x536; uint32_t x535 = _mulx_u32(x532, 0xfffffff5, &x536);
- { uint32_t x539; uint32_t x538 = _mulx_u32(x532, 0xffffffff, &x539);
- { uint32_t x542; uint32_t x541 = _mulx_u32(x532, 0xffffffff, &x542);
- { uint32_t x545; uint32_t x544 = _mulx_u32(x532, 0xffffffff, &x545);
- { uint32_t x548; uint32_t x547 = _mulx_u32(x532, 0xffffffff, &x548);
- { uint32_t x551; uint32_t x550 = _mulx_u32(x532, 0x3fffffff, &x551);
- { uint32_t x553; uint8_t x554 = _addcarryx_u32(0x0, x536, x538, &x553);
- { uint32_t x556; uint8_t x557 = _addcarryx_u32(x554, x539, x541, &x556);
- { uint32_t x559; uint8_t x560 = _addcarryx_u32(x557, x542, x544, &x559);
- { uint32_t x562; uint8_t x563 = _addcarryx_u32(x560, x545, x547, &x562);
- { uint32_t x565; uint8_t x566 = _addcarryx_u32(x563, x548, x550, &x565);
- { uint32_t x568; uint8_t _ = _addcarryx_u32(0x0, x566, x551, &x568);
- { uint32_t _; uint8_t x572 = _addcarryx_u32(0x0, x511, x535, &_);
- { uint32_t x574; uint8_t x575 = _addcarryx_u32(x572, x514, x553, &x574);
- { uint32_t x577; uint8_t x578 = _addcarryx_u32(x575, x517, x556, &x577);
- { uint32_t x580; uint8_t x581 = _addcarryx_u32(x578, x520, x559, &x580);
- { uint32_t x583; uint8_t x584 = _addcarryx_u32(x581, x523, x562, &x583);
- { uint32_t x586; uint8_t x587 = _addcarryx_u32(x584, x526, x565, &x586);
- { uint32_t x589; uint8_t x590 = _addcarryx_u32(x587, x529, x568, &x589);
- { uint8_t x591 = (x590 + x530);
- { uint32_t x594; uint32_t x593 = _mulx_u32(x12, x15, &x594);
- { uint32_t x597; uint32_t x596 = _mulx_u32(x12, x17, &x597);
- { uint32_t x600; uint32_t x599 = _mulx_u32(x12, x19, &x600);
- { uint32_t x603; uint32_t x602 = _mulx_u32(x12, x21, &x603);
- { uint32_t x606; uint32_t x605 = _mulx_u32(x12, x23, &x606);
- { uint32_t x609; uint32_t x608 = _mulx_u32(x12, x22, &x609);
- { uint32_t x611; uint8_t x612 = _addcarryx_u32(0x0, x594, x596, &x611);
- { uint32_t x614; uint8_t x615 = _addcarryx_u32(x612, x597, x599, &x614);
- { uint32_t x617; uint8_t x618 = _addcarryx_u32(x615, x600, x602, &x617);
- { uint32_t x620; uint8_t x621 = _addcarryx_u32(x618, x603, x605, &x620);
- { uint32_t x623; uint8_t x624 = _addcarryx_u32(x621, x606, x608, &x623);
- { uint32_t x626; uint8_t _ = _addcarryx_u32(0x0, x624, x609, &x626);
- { uint32_t x629; uint8_t x630 = _addcarryx_u32(0x0, x574, x593, &x629);
- { uint32_t x632; uint8_t x633 = _addcarryx_u32(x630, x577, x611, &x632);
- { uint32_t x635; uint8_t x636 = _addcarryx_u32(x633, x580, x614, &x635);
- { uint32_t x638; uint8_t x639 = _addcarryx_u32(x636, x583, x617, &x638);
- { uint32_t x641; uint8_t x642 = _addcarryx_u32(x639, x586, x620, &x641);
- { uint32_t x644; uint8_t x645 = _addcarryx_u32(x642, x589, x623, &x644);
- { uint32_t x647; uint8_t x648 = _addcarryx_u32(x645, x591, x626, &x647);
- { uint32_t _; uint32_t x650 = _mulx_u32(x629, 0xba2e8ba3, &_);
- { uint32_t x654; uint32_t x653 = _mulx_u32(x650, 0xfffffff5, &x654);
- { uint32_t x657; uint32_t x656 = _mulx_u32(x650, 0xffffffff, &x657);
- { uint32_t x660; uint32_t x659 = _mulx_u32(x650, 0xffffffff, &x660);
- { uint32_t x663; uint32_t x662 = _mulx_u32(x650, 0xffffffff, &x663);
- { uint32_t x666; uint32_t x665 = _mulx_u32(x650, 0xffffffff, &x666);
- { uint32_t x669; uint32_t x668 = _mulx_u32(x650, 0x3fffffff, &x669);
- { uint32_t x671; uint8_t x672 = _addcarryx_u32(0x0, x654, x656, &x671);
- { uint32_t x674; uint8_t x675 = _addcarryx_u32(x672, x657, x659, &x674);
- { uint32_t x677; uint8_t x678 = _addcarryx_u32(x675, x660, x662, &x677);
- { uint32_t x680; uint8_t x681 = _addcarryx_u32(x678, x663, x665, &x680);
- { uint32_t x683; uint8_t x684 = _addcarryx_u32(x681, x666, x668, &x683);
- { uint32_t x686; uint8_t _ = _addcarryx_u32(0x0, x684, x669, &x686);
- { uint32_t _; uint8_t x690 = _addcarryx_u32(0x0, x629, x653, &_);
- { uint32_t x692; uint8_t x693 = _addcarryx_u32(x690, x632, x671, &x692);
- { uint32_t x695; uint8_t x696 = _addcarryx_u32(x693, x635, x674, &x695);
- { uint32_t x698; uint8_t x699 = _addcarryx_u32(x696, x638, x677, &x698);
- { uint32_t x701; uint8_t x702 = _addcarryx_u32(x699, x641, x680, &x701);
- { uint32_t x704; uint8_t x705 = _addcarryx_u32(x702, x644, x683, &x704);
- { uint32_t x707; uint8_t x708 = _addcarryx_u32(x705, x647, x686, &x707);
- { uint8_t x709 = (x708 + x648);
- { uint32_t x711; uint8_t x712 = _subborrow_u32(0x0, x692, 0xfffffff5, &x711);
- { uint32_t x714; uint8_t x715 = _subborrow_u32(x712, x695, 0xffffffff, &x714);
- { uint32_t x717; uint8_t x718 = _subborrow_u32(x715, x698, 0xffffffff, &x717);
- { uint32_t x720; uint8_t x721 = _subborrow_u32(x718, x701, 0xffffffff, &x720);
- { uint32_t x723; uint8_t x724 = _subborrow_u32(x721, x704, 0xffffffff, &x723);
- { uint32_t x726; uint8_t x727 = _subborrow_u32(x724, x707, 0x3fffffff, &x726);
- { uint32_t _; uint8_t x730 = _subborrow_u32(x727, x709, 0x0, &_);
- { uint32_t x731 = cmovznz32(x730, x726, x707);
- { uint32_t x732 = cmovznz32(x730, x723, x704);
- { uint32_t x733 = cmovznz32(x730, x720, x701);
- { uint32_t x734 = cmovznz32(x730, x717, x698);
- { uint32_t x735 = cmovznz32(x730, x714, x695);
- { uint32_t x736 = cmovznz32(x730, x711, x692);
- out[0] = x736;
- out[1] = x735;
- out[2] = x734;
- out[3] = x733;
- out[4] = x732;
- out[5] = x731;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e190m11_6limbs/femul.v b/src/Specific/montgomery32_2e190m11_6limbs/femul.v
deleted file mode 100644
index b0602fff1..000000000
--- a/src/Specific/montgomery32_2e190m11_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e190m11_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e190m11_6limbs/femulDisplay.log b/src/Specific/montgomery32_2e190m11_6limbs/femulDisplay.log
deleted file mode 100644
index c302cbb1d..000000000
--- a/src/Specific/montgomery32_2e190m11_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,252 +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,
- uint32_t x25, uint32_t x26 = mulx_u32(x5, x15);
- uint32_t x28, uint32_t x29 = mulx_u32(x5, x17);
- uint32_t x31, uint32_t x32 = mulx_u32(x5, x19);
- uint32_t x34, uint32_t x35 = mulx_u32(x5, x21);
- uint32_t x37, uint32_t x38 = mulx_u32(x5, x23);
- uint32_t x40, uint32_t x41 = mulx_u32(x5, x22);
- uint32_t x43, uint8_t x44 = addcarryx_u32(0x0, x26, x28);
- uint32_t x46, uint8_t x47 = addcarryx_u32(x44, x29, x31);
- uint32_t x49, uint8_t x50 = addcarryx_u32(x47, x32, x34);
- uint32_t x52, uint8_t x53 = addcarryx_u32(x50, x35, x37);
- uint32_t x55, uint8_t x56 = addcarryx_u32(x53, x38, x40);
- uint32_t x58, uint8_t _ = addcarryx_u32(0x0, x56, x41);
- uint32_t x61, uint32_t _ = mulx_u32(x25, 0xba2e8ba3);
- uint32_t x64, uint32_t x65 = mulx_u32(x61, 0xfffffff5);
- uint32_t x67, uint32_t x68 = mulx_u32(x61, 0xffffffff);
- uint32_t x70, uint32_t x71 = mulx_u32(x61, 0xffffffff);
- uint32_t x73, uint32_t x74 = mulx_u32(x61, 0xffffffff);
- uint32_t x76, uint32_t x77 = mulx_u32(x61, 0xffffffff);
- uint32_t x79, uint32_t x80 = mulx_u32(x61, 0x3fffffff);
- uint32_t x82, uint8_t x83 = addcarryx_u32(0x0, x65, x67);
- uint32_t x85, uint8_t x86 = addcarryx_u32(x83, x68, x70);
- uint32_t x88, uint8_t x89 = addcarryx_u32(x86, x71, x73);
- uint32_t x91, uint8_t x92 = addcarryx_u32(x89, x74, x76);
- uint32_t x94, uint8_t x95 = addcarryx_u32(x92, x77, x79);
- uint32_t x97, uint8_t _ = addcarryx_u32(0x0, x95, x80);
- uint32_t _, uint8_t x101 = addcarryx_u32(0x0, x25, x64);
- uint32_t x103, uint8_t x104 = addcarryx_u32(x101, x43, x82);
- uint32_t x106, uint8_t x107 = addcarryx_u32(x104, x46, x85);
- uint32_t x109, uint8_t x110 = addcarryx_u32(x107, x49, x88);
- uint32_t x112, uint8_t x113 = addcarryx_u32(x110, x52, x91);
- uint32_t x115, uint8_t x116 = addcarryx_u32(x113, x55, x94);
- uint32_t x118, uint8_t x119 = addcarryx_u32(x116, x58, x97);
- uint32_t x121, uint32_t x122 = mulx_u32(x7, x15);
- uint32_t x124, uint32_t x125 = mulx_u32(x7, x17);
- uint32_t x127, uint32_t x128 = mulx_u32(x7, x19);
- uint32_t x130, uint32_t x131 = mulx_u32(x7, x21);
- uint32_t x133, uint32_t x134 = mulx_u32(x7, x23);
- uint32_t x136, uint32_t x137 = mulx_u32(x7, x22);
- uint32_t x139, uint8_t x140 = addcarryx_u32(0x0, x122, x124);
- uint32_t x142, uint8_t x143 = addcarryx_u32(x140, x125, x127);
- uint32_t x145, uint8_t x146 = addcarryx_u32(x143, x128, x130);
- uint32_t x148, uint8_t x149 = addcarryx_u32(x146, x131, x133);
- uint32_t x151, uint8_t x152 = addcarryx_u32(x149, x134, x136);
- uint32_t x154, uint8_t _ = addcarryx_u32(0x0, x152, x137);
- uint32_t x157, uint8_t x158 = addcarryx_u32(0x0, x103, x121);
- uint32_t x160, uint8_t x161 = addcarryx_u32(x158, x106, x139);
- uint32_t x163, uint8_t x164 = addcarryx_u32(x161, x109, x142);
- uint32_t x166, uint8_t x167 = addcarryx_u32(x164, x112, x145);
- uint32_t x169, uint8_t x170 = addcarryx_u32(x167, x115, x148);
- uint32_t x172, uint8_t x173 = addcarryx_u32(x170, x118, x151);
- uint32_t x175, uint8_t x176 = addcarryx_u32(x173, x119, x154);
- uint32_t x178, uint32_t _ = mulx_u32(x157, 0xba2e8ba3);
- uint32_t x181, uint32_t x182 = mulx_u32(x178, 0xfffffff5);
- uint32_t x184, uint32_t x185 = mulx_u32(x178, 0xffffffff);
- uint32_t x187, uint32_t x188 = mulx_u32(x178, 0xffffffff);
- uint32_t x190, uint32_t x191 = mulx_u32(x178, 0xffffffff);
- uint32_t x193, uint32_t x194 = mulx_u32(x178, 0xffffffff);
- uint32_t x196, uint32_t x197 = mulx_u32(x178, 0x3fffffff);
- uint32_t x199, uint8_t x200 = addcarryx_u32(0x0, x182, x184);
- uint32_t x202, uint8_t x203 = addcarryx_u32(x200, x185, x187);
- uint32_t x205, uint8_t x206 = addcarryx_u32(x203, x188, x190);
- uint32_t x208, uint8_t x209 = addcarryx_u32(x206, x191, x193);
- uint32_t x211, uint8_t x212 = addcarryx_u32(x209, x194, x196);
- uint32_t x214, uint8_t _ = addcarryx_u32(0x0, x212, x197);
- uint32_t _, uint8_t x218 = addcarryx_u32(0x0, x157, x181);
- uint32_t x220, uint8_t x221 = addcarryx_u32(x218, x160, x199);
- uint32_t x223, uint8_t x224 = addcarryx_u32(x221, x163, x202);
- uint32_t x226, uint8_t x227 = addcarryx_u32(x224, x166, x205);
- uint32_t x229, uint8_t x230 = addcarryx_u32(x227, x169, x208);
- uint32_t x232, uint8_t x233 = addcarryx_u32(x230, x172, x211);
- uint32_t x235, uint8_t x236 = addcarryx_u32(x233, x175, x214);
- uint8_t x237 = (x236 + x176);
- uint32_t x239, uint32_t x240 = mulx_u32(x9, x15);
- uint32_t x242, uint32_t x243 = mulx_u32(x9, x17);
- uint32_t x245, uint32_t x246 = mulx_u32(x9, x19);
- uint32_t x248, uint32_t x249 = mulx_u32(x9, x21);
- uint32_t x251, uint32_t x252 = mulx_u32(x9, x23);
- uint32_t x254, uint32_t x255 = mulx_u32(x9, x22);
- uint32_t x257, uint8_t x258 = addcarryx_u32(0x0, x240, x242);
- uint32_t x260, uint8_t x261 = addcarryx_u32(x258, x243, x245);
- uint32_t x263, uint8_t x264 = addcarryx_u32(x261, x246, x248);
- uint32_t x266, uint8_t x267 = addcarryx_u32(x264, x249, x251);
- uint32_t x269, uint8_t x270 = addcarryx_u32(x267, x252, x254);
- uint32_t x272, uint8_t _ = addcarryx_u32(0x0, x270, x255);
- uint32_t x275, uint8_t x276 = addcarryx_u32(0x0, x220, x239);
- uint32_t x278, uint8_t x279 = addcarryx_u32(x276, x223, x257);
- uint32_t x281, uint8_t x282 = addcarryx_u32(x279, x226, x260);
- uint32_t x284, uint8_t x285 = addcarryx_u32(x282, x229, x263);
- uint32_t x287, uint8_t x288 = addcarryx_u32(x285, x232, x266);
- uint32_t x290, uint8_t x291 = addcarryx_u32(x288, x235, x269);
- uint32_t x293, uint8_t x294 = addcarryx_u32(x291, x237, x272);
- uint32_t x296, uint32_t _ = mulx_u32(x275, 0xba2e8ba3);
- uint32_t x299, uint32_t x300 = mulx_u32(x296, 0xfffffff5);
- uint32_t x302, uint32_t x303 = mulx_u32(x296, 0xffffffff);
- uint32_t x305, uint32_t x306 = mulx_u32(x296, 0xffffffff);
- uint32_t x308, uint32_t x309 = mulx_u32(x296, 0xffffffff);
- uint32_t x311, uint32_t x312 = mulx_u32(x296, 0xffffffff);
- uint32_t x314, uint32_t x315 = mulx_u32(x296, 0x3fffffff);
- uint32_t x317, uint8_t x318 = addcarryx_u32(0x0, x300, x302);
- uint32_t x320, uint8_t x321 = addcarryx_u32(x318, x303, x305);
- uint32_t x323, uint8_t x324 = addcarryx_u32(x321, x306, x308);
- uint32_t x326, uint8_t x327 = addcarryx_u32(x324, x309, x311);
- uint32_t x329, uint8_t x330 = addcarryx_u32(x327, x312, x314);
- uint32_t x332, uint8_t _ = addcarryx_u32(0x0, x330, x315);
- uint32_t _, uint8_t x336 = addcarryx_u32(0x0, x275, x299);
- uint32_t x338, uint8_t x339 = addcarryx_u32(x336, x278, x317);
- uint32_t x341, uint8_t x342 = addcarryx_u32(x339, x281, x320);
- uint32_t x344, uint8_t x345 = addcarryx_u32(x342, x284, x323);
- uint32_t x347, uint8_t x348 = addcarryx_u32(x345, x287, x326);
- uint32_t x350, uint8_t x351 = addcarryx_u32(x348, x290, x329);
- uint32_t x353, uint8_t x354 = addcarryx_u32(x351, x293, x332);
- uint8_t x355 = (x354 + x294);
- uint32_t x357, uint32_t x358 = mulx_u32(x11, x15);
- uint32_t x360, uint32_t x361 = mulx_u32(x11, x17);
- uint32_t x363, uint32_t x364 = mulx_u32(x11, x19);
- uint32_t x366, uint32_t x367 = mulx_u32(x11, x21);
- uint32_t x369, uint32_t x370 = mulx_u32(x11, x23);
- uint32_t x372, uint32_t x373 = mulx_u32(x11, x22);
- uint32_t x375, uint8_t x376 = addcarryx_u32(0x0, x358, x360);
- uint32_t x378, uint8_t x379 = addcarryx_u32(x376, x361, x363);
- uint32_t x381, uint8_t x382 = addcarryx_u32(x379, x364, x366);
- uint32_t x384, uint8_t x385 = addcarryx_u32(x382, x367, x369);
- uint32_t x387, uint8_t x388 = addcarryx_u32(x385, x370, x372);
- uint32_t x390, uint8_t _ = addcarryx_u32(0x0, x388, x373);
- uint32_t x393, uint8_t x394 = addcarryx_u32(0x0, x338, x357);
- uint32_t x396, uint8_t x397 = addcarryx_u32(x394, x341, x375);
- uint32_t x399, uint8_t x400 = addcarryx_u32(x397, x344, x378);
- uint32_t x402, uint8_t x403 = addcarryx_u32(x400, x347, x381);
- uint32_t x405, uint8_t x406 = addcarryx_u32(x403, x350, x384);
- uint32_t x408, uint8_t x409 = addcarryx_u32(x406, x353, x387);
- uint32_t x411, uint8_t x412 = addcarryx_u32(x409, x355, x390);
- uint32_t x414, uint32_t _ = mulx_u32(x393, 0xba2e8ba3);
- uint32_t x417, uint32_t x418 = mulx_u32(x414, 0xfffffff5);
- uint32_t x420, uint32_t x421 = mulx_u32(x414, 0xffffffff);
- uint32_t x423, uint32_t x424 = mulx_u32(x414, 0xffffffff);
- uint32_t x426, uint32_t x427 = mulx_u32(x414, 0xffffffff);
- uint32_t x429, uint32_t x430 = mulx_u32(x414, 0xffffffff);
- uint32_t x432, uint32_t x433 = mulx_u32(x414, 0x3fffffff);
- uint32_t x435, uint8_t x436 = addcarryx_u32(0x0, x418, x420);
- uint32_t x438, uint8_t x439 = addcarryx_u32(x436, x421, x423);
- uint32_t x441, uint8_t x442 = addcarryx_u32(x439, x424, x426);
- uint32_t x444, uint8_t x445 = addcarryx_u32(x442, x427, x429);
- uint32_t x447, uint8_t x448 = addcarryx_u32(x445, x430, x432);
- uint32_t x450, uint8_t _ = addcarryx_u32(0x0, x448, x433);
- uint32_t _, uint8_t x454 = addcarryx_u32(0x0, x393, x417);
- uint32_t x456, uint8_t x457 = addcarryx_u32(x454, x396, x435);
- uint32_t x459, uint8_t x460 = addcarryx_u32(x457, x399, x438);
- uint32_t x462, uint8_t x463 = addcarryx_u32(x460, x402, x441);
- uint32_t x465, uint8_t x466 = addcarryx_u32(x463, x405, x444);
- uint32_t x468, uint8_t x469 = addcarryx_u32(x466, x408, x447);
- uint32_t x471, uint8_t x472 = addcarryx_u32(x469, x411, x450);
- uint8_t x473 = (x472 + x412);
- uint32_t x475, uint32_t x476 = mulx_u32(x13, x15);
- uint32_t x478, uint32_t x479 = mulx_u32(x13, x17);
- uint32_t x481, uint32_t x482 = mulx_u32(x13, x19);
- uint32_t x484, uint32_t x485 = mulx_u32(x13, x21);
- uint32_t x487, uint32_t x488 = mulx_u32(x13, x23);
- uint32_t x490, uint32_t x491 = mulx_u32(x13, x22);
- uint32_t x493, uint8_t x494 = addcarryx_u32(0x0, x476, x478);
- uint32_t x496, uint8_t x497 = addcarryx_u32(x494, x479, x481);
- uint32_t x499, uint8_t x500 = addcarryx_u32(x497, x482, x484);
- uint32_t x502, uint8_t x503 = addcarryx_u32(x500, x485, x487);
- uint32_t x505, uint8_t x506 = addcarryx_u32(x503, x488, x490);
- uint32_t x508, uint8_t _ = addcarryx_u32(0x0, x506, x491);
- uint32_t x511, uint8_t x512 = addcarryx_u32(0x0, x456, x475);
- uint32_t x514, uint8_t x515 = addcarryx_u32(x512, x459, x493);
- uint32_t x517, uint8_t x518 = addcarryx_u32(x515, x462, x496);
- uint32_t x520, uint8_t x521 = addcarryx_u32(x518, x465, x499);
- uint32_t x523, uint8_t x524 = addcarryx_u32(x521, x468, x502);
- uint32_t x526, uint8_t x527 = addcarryx_u32(x524, x471, x505);
- uint32_t x529, uint8_t x530 = addcarryx_u32(x527, x473, x508);
- uint32_t x532, uint32_t _ = mulx_u32(x511, 0xba2e8ba3);
- uint32_t x535, uint32_t x536 = mulx_u32(x532, 0xfffffff5);
- uint32_t x538, uint32_t x539 = mulx_u32(x532, 0xffffffff);
- uint32_t x541, uint32_t x542 = mulx_u32(x532, 0xffffffff);
- uint32_t x544, uint32_t x545 = mulx_u32(x532, 0xffffffff);
- uint32_t x547, uint32_t x548 = mulx_u32(x532, 0xffffffff);
- uint32_t x550, uint32_t x551 = mulx_u32(x532, 0x3fffffff);
- uint32_t x553, uint8_t x554 = addcarryx_u32(0x0, x536, x538);
- uint32_t x556, uint8_t x557 = addcarryx_u32(x554, x539, x541);
- uint32_t x559, uint8_t x560 = addcarryx_u32(x557, x542, x544);
- uint32_t x562, uint8_t x563 = addcarryx_u32(x560, x545, x547);
- uint32_t x565, uint8_t x566 = addcarryx_u32(x563, x548, x550);
- uint32_t x568, uint8_t _ = addcarryx_u32(0x0, x566, x551);
- uint32_t _, uint8_t x572 = addcarryx_u32(0x0, x511, x535);
- uint32_t x574, uint8_t x575 = addcarryx_u32(x572, x514, x553);
- uint32_t x577, uint8_t x578 = addcarryx_u32(x575, x517, x556);
- uint32_t x580, uint8_t x581 = addcarryx_u32(x578, x520, x559);
- uint32_t x583, uint8_t x584 = addcarryx_u32(x581, x523, x562);
- uint32_t x586, uint8_t x587 = addcarryx_u32(x584, x526, x565);
- uint32_t x589, uint8_t x590 = addcarryx_u32(x587, x529, x568);
- uint8_t x591 = (x590 + x530);
- uint32_t x593, uint32_t x594 = mulx_u32(x12, x15);
- uint32_t x596, uint32_t x597 = mulx_u32(x12, x17);
- uint32_t x599, uint32_t x600 = mulx_u32(x12, x19);
- uint32_t x602, uint32_t x603 = mulx_u32(x12, x21);
- uint32_t x605, uint32_t x606 = mulx_u32(x12, x23);
- uint32_t x608, uint32_t x609 = mulx_u32(x12, x22);
- uint32_t x611, uint8_t x612 = addcarryx_u32(0x0, x594, x596);
- uint32_t x614, uint8_t x615 = addcarryx_u32(x612, x597, x599);
- uint32_t x617, uint8_t x618 = addcarryx_u32(x615, x600, x602);
- uint32_t x620, uint8_t x621 = addcarryx_u32(x618, x603, x605);
- uint32_t x623, uint8_t x624 = addcarryx_u32(x621, x606, x608);
- uint32_t x626, uint8_t _ = addcarryx_u32(0x0, x624, x609);
- uint32_t x629, uint8_t x630 = addcarryx_u32(0x0, x574, x593);
- uint32_t x632, uint8_t x633 = addcarryx_u32(x630, x577, x611);
- uint32_t x635, uint8_t x636 = addcarryx_u32(x633, x580, x614);
- uint32_t x638, uint8_t x639 = addcarryx_u32(x636, x583, x617);
- uint32_t x641, uint8_t x642 = addcarryx_u32(x639, x586, x620);
- uint32_t x644, uint8_t x645 = addcarryx_u32(x642, x589, x623);
- uint32_t x647, uint8_t x648 = addcarryx_u32(x645, x591, x626);
- uint32_t x650, uint32_t _ = mulx_u32(x629, 0xba2e8ba3);
- uint32_t x653, uint32_t x654 = mulx_u32(x650, 0xfffffff5);
- uint32_t x656, uint32_t x657 = mulx_u32(x650, 0xffffffff);
- uint32_t x659, uint32_t x660 = mulx_u32(x650, 0xffffffff);
- uint32_t x662, uint32_t x663 = mulx_u32(x650, 0xffffffff);
- uint32_t x665, uint32_t x666 = mulx_u32(x650, 0xffffffff);
- uint32_t x668, uint32_t x669 = mulx_u32(x650, 0x3fffffff);
- uint32_t x671, uint8_t x672 = addcarryx_u32(0x0, x654, x656);
- uint32_t x674, uint8_t x675 = addcarryx_u32(x672, x657, x659);
- uint32_t x677, uint8_t x678 = addcarryx_u32(x675, x660, x662);
- uint32_t x680, uint8_t x681 = addcarryx_u32(x678, x663, x665);
- uint32_t x683, uint8_t x684 = addcarryx_u32(x681, x666, x668);
- uint32_t x686, uint8_t _ = addcarryx_u32(0x0, x684, x669);
- uint32_t _, uint8_t x690 = addcarryx_u32(0x0, x629, x653);
- uint32_t x692, uint8_t x693 = addcarryx_u32(x690, x632, x671);
- uint32_t x695, uint8_t x696 = addcarryx_u32(x693, x635, x674);
- uint32_t x698, uint8_t x699 = addcarryx_u32(x696, x638, x677);
- uint32_t x701, uint8_t x702 = addcarryx_u32(x699, x641, x680);
- uint32_t x704, uint8_t x705 = addcarryx_u32(x702, x644, x683);
- uint32_t x707, uint8_t x708 = addcarryx_u32(x705, x647, x686);
- uint8_t x709 = (x708 + x648);
- uint32_t x711, uint8_t x712 = subborrow_u32(0x0, x692, 0xfffffff5);
- uint32_t x714, uint8_t x715 = subborrow_u32(x712, x695, 0xffffffff);
- uint32_t x717, uint8_t x718 = subborrow_u32(x715, x698, 0xffffffff);
- uint32_t x720, uint8_t x721 = subborrow_u32(x718, x701, 0xffffffff);
- uint32_t x723, uint8_t x724 = subborrow_u32(x721, x704, 0xffffffff);
- uint32_t x726, uint8_t x727 = subborrow_u32(x724, x707, 0x3fffffff);
- uint32_t _, uint8_t x730 = subborrow_u32(x727, x709, 0x0);
- uint32_t x731 = cmovznz32(x730, x726, x707);
- uint32_t x732 = cmovznz32(x730, x723, x704);
- uint32_t x733 = cmovznz32(x730, x720, x701);
- uint32_t x734 = cmovznz32(x730, x717, x698);
- uint32_t x735 = cmovznz32(x730, x714, x695);
- uint32_t x736 = cmovznz32(x730, x711, x692);
- return (x731, x732, x733, x734, x735, x736))
-(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/montgomery32_2e190m11_6limbs/femulDisplay.v b/src/Specific/montgomery32_2e190m11_6limbs/femulDisplay.v
deleted file mode 100644
index 124426d6f..000000000
--- a/src/Specific/montgomery32_2e190m11_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e190m11_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e190m11_6limbs/fenz.c b/src/Specific/montgomery32_2e190m11_6limbs/fenz.c
deleted file mode 100644
index 2e0454af1..000000000
--- a/src/Specific/montgomery32_2e190m11_6limbs/fenz.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], 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 x11 = (x10 | x9);
- { uint32_t x12 = (x8 | x11);
- { uint32_t x13 = (x6 | x12);
- { uint32_t x14 = (x4 | x13);
- { uint32_t x15 = (x2 | x14);
- out[0] = x15;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e190m11_6limbs/fenz.v b/src/Specific/montgomery32_2e190m11_6limbs/fenz.v
deleted file mode 100644
index 1a8450286..000000000
--- a/src/Specific/montgomery32_2e190m11_6limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e190m11_6limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e190m11_6limbs/fenzDisplay.log b/src/Specific/montgomery32_2e190m11_6limbs/fenzDisplay.log
deleted file mode 100644
index 616138b7b..000000000
--- a/src/Specific/montgomery32_2e190m11_6limbs/fenzDisplay.log
+++ /dev/null
@@ -1,12 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint32_t x11 = (x10 | x9);
- uint32_t x12 = (x8 | x11);
- uint32_t x13 = (x6 | x12);
- uint32_t x14 = (x4 | x13);
- uint32_t x15 = (x2 | x14);
- return x15)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e190m11_6limbs/fenzDisplay.v b/src/Specific/montgomery32_2e190m11_6limbs/fenzDisplay.v
deleted file mode 100644
index bfafc09ab..000000000
--- a/src/Specific/montgomery32_2e190m11_6limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e190m11_6limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e190m11_6limbs/feopp.c b/src/Specific/montgomery32_2e190m11_6limbs/feopp.c
deleted file mode 100644
index c3aa5103a..000000000
--- a/src/Specific/montgomery32_2e190m11_6limbs/feopp.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feopp(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 = _subborrow_u32(0x0, 0x0, x2, &x12);
- { uint32_t x15; uint8_t x16 = _subborrow_u32(x13, 0x0, x4, &x15);
- { uint32_t x18; uint8_t x19 = _subborrow_u32(x16, 0x0, x6, &x18);
- { uint32_t x21; uint8_t x22 = _subborrow_u32(x19, 0x0, x8, &x21);
- { uint32_t x24; uint8_t x25 = _subborrow_u32(x22, 0x0, x10, &x24);
- { uint32_t x27; uint8_t x28 = _subborrow_u32(x25, 0x0, x9, &x27);
- { uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- { uint32_t x30 = (x29 & 0xfffffff5);
- { uint32_t x32; uint8_t x33 = _addcarryx_u32(0x0, x12, x30, &x32);
- { uint32_t x34 = (x29 & 0xffffffff);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(x33, x15, x34, &x36);
- { uint32_t x38 = (x29 & 0xffffffff);
- { uint32_t x40; uint8_t x41 = _addcarryx_u32(x37, x18, x38, &x40);
- { uint32_t x42 = (x29 & 0xffffffff);
- { uint32_t x44; uint8_t x45 = _addcarryx_u32(x41, x21, x42, &x44);
- { uint32_t x46 = (x29 & 0xffffffff);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x45, x24, x46, &x48);
- { uint32_t x50 = (x29 & 0x3fffffff);
- { uint32_t x52; uint8_t _ = _addcarryx_u32(x49, x27, x50, &x52);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e190m11_6limbs/feopp.v b/src/Specific/montgomery32_2e190m11_6limbs/feopp.v
deleted file mode 100644
index df8e5ca34..000000000
--- a/src/Specific/montgomery32_2e190m11_6limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e190m11_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e190m11_6limbs/feoppDisplay.log b/src/Specific/montgomery32_2e190m11_6limbs/feoppDisplay.log
deleted file mode 100644
index 3a36d2db7..000000000
--- a/src/Specific/montgomery32_2e190m11_6limbs/feoppDisplay.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 = subborrow_u32(0x0, 0x0, x2);
- uint32_t x15, uint8_t x16 = subborrow_u32(x13, 0x0, x4);
- uint32_t x18, uint8_t x19 = subborrow_u32(x16, 0x0, x6);
- uint32_t x21, uint8_t x22 = subborrow_u32(x19, 0x0, x8);
- uint32_t x24, uint8_t x25 = subborrow_u32(x22, 0x0, x10);
- uint32_t x27, uint8_t x28 = subborrow_u32(x25, 0x0, x9);
- uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- uint32_t x30 = (x29 & 0xfffffff5);
- uint32_t x32, uint8_t x33 = addcarryx_u32(0x0, x12, x30);
- uint32_t x34 = (x29 & 0xffffffff);
- uint32_t x36, uint8_t x37 = addcarryx_u32(x33, x15, x34);
- uint32_t x38 = (x29 & 0xffffffff);
- uint32_t x40, uint8_t x41 = addcarryx_u32(x37, x18, x38);
- uint32_t x42 = (x29 & 0xffffffff);
- uint32_t x44, uint8_t x45 = addcarryx_u32(x41, x21, x42);
- uint32_t x46 = (x29 & 0xffffffff);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x45, x24, x46);
- uint32_t x50 = (x29 & 0x3fffffff);
- uint32_t x52, uint8_t _ = addcarryx_u32(x49, x27, 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/montgomery32_2e190m11_6limbs/feoppDisplay.v b/src/Specific/montgomery32_2e190m11_6limbs/feoppDisplay.v
deleted file mode 100644
index 7686263c9..000000000
--- a/src/Specific/montgomery32_2e190m11_6limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e190m11_6limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e190m11_6limbs/fesquare.c b/src/Specific/montgomery32_2e190m11_6limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e190m11_6limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e190m11_6limbs/fesub.c b/src/Specific/montgomery32_2e190m11_6limbs/fesub.c
deleted file mode 100644
index c1db0ba51..000000000
--- a/src/Specific/montgomery32_2e190m11_6limbs/fesub.c
+++ /dev/null
@@ -1,40 +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];
- { uint32_t x25; uint8_t x26 = _subborrow_u32(0x0, x5, x15, &x25);
- { uint32_t x28; uint8_t x29 = _subborrow_u32(x26, x7, x17, &x28);
- { uint32_t x31; uint8_t x32 = _subborrow_u32(x29, x9, x19, &x31);
- { uint32_t x34; uint8_t x35 = _subborrow_u32(x32, x11, x21, &x34);
- { uint32_t x37; uint8_t x38 = _subborrow_u32(x35, x13, x23, &x37);
- { uint32_t x40; uint8_t x41 = _subborrow_u32(x38, x12, x22, &x40);
- { uint32_t x42 = cmovznz32(x41, 0x0, 0xffffffff);
- { uint32_t x43 = (x42 & 0xfffffff5);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(0x0, x25, x43, &x45);
- { uint32_t x47 = (x42 & 0xffffffff);
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(x46, x28, x47, &x49);
- { uint32_t x51 = (x42 & 0xffffffff);
- { uint32_t x53; uint8_t x54 = _addcarryx_u32(x50, x31, x51, &x53);
- { uint32_t x55 = (x42 & 0xffffffff);
- { uint32_t x57; uint8_t x58 = _addcarryx_u32(x54, x34, x55, &x57);
- { uint32_t x59 = (x42 & 0xffffffff);
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(x58, x37, x59, &x61);
- { uint32_t x63 = (x42 & 0x3fffffff);
- { uint32_t x65; uint8_t _ = _addcarryx_u32(x62, x40, x63, &x65);
- out[0] = x45;
- out[1] = x49;
- out[2] = x53;
- out[3] = x57;
- out[4] = x61;
- out[5] = x65;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e190m11_6limbs/fesub.v b/src/Specific/montgomery32_2e190m11_6limbs/fesub.v
deleted file mode 100644
index 75bfed4f8..000000000
--- a/src/Specific/montgomery32_2e190m11_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e190m11_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e190m11_6limbs/fesubDisplay.log b/src/Specific/montgomery32_2e190m11_6limbs/fesubDisplay.log
deleted file mode 100644
index fc2472ce7..000000000
--- a/src/Specific/montgomery32_2e190m11_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,26 +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,
- uint32_t x25, uint8_t x26 = subborrow_u32(0x0, x5, x15);
- uint32_t x28, uint8_t x29 = subborrow_u32(x26, x7, x17);
- uint32_t x31, uint8_t x32 = subborrow_u32(x29, x9, x19);
- uint32_t x34, uint8_t x35 = subborrow_u32(x32, x11, x21);
- uint32_t x37, uint8_t x38 = subborrow_u32(x35, x13, x23);
- uint32_t x40, uint8_t x41 = subborrow_u32(x38, x12, x22);
- uint32_t x42 = cmovznz32(x41, 0x0, 0xffffffff);
- uint32_t x43 = (x42 & 0xfffffff5);
- uint32_t x45, uint8_t x46 = addcarryx_u32(0x0, x25, x43);
- uint32_t x47 = (x42 & 0xffffffff);
- uint32_t x49, uint8_t x50 = addcarryx_u32(x46, x28, x47);
- uint32_t x51 = (x42 & 0xffffffff);
- uint32_t x53, uint8_t x54 = addcarryx_u32(x50, x31, x51);
- uint32_t x55 = (x42 & 0xffffffff);
- uint32_t x57, uint8_t x58 = addcarryx_u32(x54, x34, x55);
- uint32_t x59 = (x42 & 0xffffffff);
- uint32_t x61, uint8_t x62 = addcarryx_u32(x58, x37, x59);
- uint32_t x63 = (x42 & 0x3fffffff);
- uint32_t x65, uint8_t _ = addcarryx_u32(x62, x40, x63);
- (Return x65, Return x61, Return x57, Return x53, Return x49, Return x45))
-(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/montgomery32_2e190m11_6limbs/fesubDisplay.v b/src/Specific/montgomery32_2e190m11_6limbs/fesubDisplay.v
deleted file mode 100644
index 61512e951..000000000
--- a/src/Specific/montgomery32_2e190m11_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e190m11_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e190m11_6limbs/py_interpreter.sh b/src/Specific/montgomery32_2e190m11_6limbs/py_interpreter.sh
deleted file mode 100755
index 8ea8cabcc..000000000
--- a/src/Specific/montgomery32_2e190m11_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**190 - 11' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e191m19_6limbs/CurveParameters.v b/src/Specific/montgomery32_2e191m19_6limbs/CurveParameters.v
deleted file mode 100644
index 173cd0e0e..000000000
--- a/src/Specific/montgomery32_2e191m19_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^191 - 19
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 32;
- bitwidth := 32;
- s := 2^191;
- c := [(1, 19)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e191m19_6limbs/Synthesis.v b/src/Specific/montgomery32_2e191m19_6limbs/Synthesis.v
deleted file mode 100644
index 683002931..000000000
--- a/src/Specific/montgomery32_2e191m19_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e191m19_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/montgomery32_2e191m19_6limbs/compiler.sh b/src/Specific/montgomery32_2e191m19_6limbs/compiler.sh
deleted file mode 100755
index d4d861f09..000000000
--- a/src/Specific/montgomery32_2e191m19_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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<191) - 19' "$@"
diff --git a/src/Specific/montgomery32_2e191m19_6limbs/compilerxx.sh b/src/Specific/montgomery32_2e191m19_6limbs/compilerxx.sh
deleted file mode 100755
index 62530fd91..000000000
--- a/src/Specific/montgomery32_2e191m19_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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<191) - 19' "$@"
diff --git a/src/Specific/montgomery32_2e191m19_6limbs/feadd.c b/src/Specific/montgomery32_2e191m19_6limbs/feadd.c
deleted file mode 100644
index 849c7a45e..000000000
--- a/src/Specific/montgomery32_2e191m19_6limbs/feadd.c
+++ /dev/null
@@ -1,40 +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];
- { uint32_t x25; uint8_t x26 = _addcarryx_u32(0x0, x5, x15, &x25);
- { uint32_t x28; uint8_t x29 = _addcarryx_u32(x26, x7, x17, &x28);
- { uint32_t x31; uint8_t x32 = _addcarryx_u32(x29, x9, x19, &x31);
- { uint32_t x34; uint8_t x35 = _addcarryx_u32(x32, x11, x21, &x34);
- { uint32_t x37; uint8_t x38 = _addcarryx_u32(x35, x13, x23, &x37);
- { uint32_t x40; uint8_t x41 = _addcarryx_u32(x38, x12, x22, &x40);
- { uint32_t x43; uint8_t x44 = _subborrow_u32(0x0, x25, 0xffffffed, &x43);
- { uint32_t x46; uint8_t x47 = _subborrow_u32(x44, x28, 0xffffffff, &x46);
- { uint32_t x49; uint8_t x50 = _subborrow_u32(x47, x31, 0xffffffff, &x49);
- { uint32_t x52; uint8_t x53 = _subborrow_u32(x50, x34, 0xffffffff, &x52);
- { uint32_t x55; uint8_t x56 = _subborrow_u32(x53, x37, 0xffffffff, &x55);
- { uint32_t x58; uint8_t x59 = _subborrow_u32(x56, x40, 0x7fffffff, &x58);
- { uint32_t _; uint8_t x62 = _subborrow_u32(x59, x41, 0x0, &_);
- { uint32_t x63 = cmovznz32(x62, x58, x40);
- { uint32_t x64 = cmovznz32(x62, x55, x37);
- { uint32_t x65 = cmovznz32(x62, x52, x34);
- { uint32_t x66 = cmovznz32(x62, x49, x31);
- { uint32_t x67 = cmovznz32(x62, x46, x28);
- { uint32_t x68 = cmovznz32(x62, x43, x25);
- out[0] = x68;
- out[1] = x67;
- out[2] = x66;
- out[3] = x65;
- out[4] = x64;
- out[5] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e191m19_6limbs/feadd.v b/src/Specific/montgomery32_2e191m19_6limbs/feadd.v
deleted file mode 100644
index c868adea6..000000000
--- a/src/Specific/montgomery32_2e191m19_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e191m19_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e191m19_6limbs/feaddDisplay.log b/src/Specific/montgomery32_2e191m19_6limbs/feaddDisplay.log
deleted file mode 100644
index 522ef5d71..000000000
--- a/src/Specific/montgomery32_2e191m19_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,26 +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,
- uint32_t x25, uint8_t x26 = addcarryx_u32(0x0, x5, x15);
- uint32_t x28, uint8_t x29 = addcarryx_u32(x26, x7, x17);
- uint32_t x31, uint8_t x32 = addcarryx_u32(x29, x9, x19);
- uint32_t x34, uint8_t x35 = addcarryx_u32(x32, x11, x21);
- uint32_t x37, uint8_t x38 = addcarryx_u32(x35, x13, x23);
- uint32_t x40, uint8_t x41 = addcarryx_u32(x38, x12, x22);
- uint32_t x43, uint8_t x44 = subborrow_u32(0x0, x25, 0xffffffed);
- uint32_t x46, uint8_t x47 = subborrow_u32(x44, x28, 0xffffffff);
- uint32_t x49, uint8_t x50 = subborrow_u32(x47, x31, 0xffffffff);
- uint32_t x52, uint8_t x53 = subborrow_u32(x50, x34, 0xffffffff);
- uint32_t x55, uint8_t x56 = subborrow_u32(x53, x37, 0xffffffff);
- uint32_t x58, uint8_t x59 = subborrow_u32(x56, x40, 0x7fffffff);
- uint32_t _, uint8_t x62 = subborrow_u32(x59, x41, 0x0);
- uint32_t x63 = cmovznz32(x62, x58, x40);
- uint32_t x64 = cmovznz32(x62, x55, x37);
- uint32_t x65 = cmovznz32(x62, x52, x34);
- uint32_t x66 = cmovznz32(x62, x49, x31);
- uint32_t x67 = cmovznz32(x62, x46, x28);
- uint32_t x68 = cmovznz32(x62, x43, x25);
- return (x63, x64, x65, x66, x67, x68))
-(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/montgomery32_2e191m19_6limbs/feaddDisplay.v b/src/Specific/montgomery32_2e191m19_6limbs/feaddDisplay.v
deleted file mode 100644
index decea4a95..000000000
--- a/src/Specific/montgomery32_2e191m19_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e191m19_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e191m19_6limbs/femul.c b/src/Specific/montgomery32_2e191m19_6limbs/femul.c
deleted file mode 100644
index 70f742a25..000000000
--- a/src/Specific/montgomery32_2e191m19_6limbs/femul.c
+++ /dev/null
@@ -1,266 +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];
- { uint32_t x26; uint32_t x25 = _mulx_u32(x5, x15, &x26);
- { uint32_t x29; uint32_t x28 = _mulx_u32(x5, x17, &x29);
- { uint32_t x32; uint32_t x31 = _mulx_u32(x5, x19, &x32);
- { uint32_t x35; uint32_t x34 = _mulx_u32(x5, x21, &x35);
- { uint32_t x38; uint32_t x37 = _mulx_u32(x5, x23, &x38);
- { uint32_t x41; uint32_t x40 = _mulx_u32(x5, x22, &x41);
- { uint32_t x43; uint8_t x44 = _addcarryx_u32(0x0, x26, x28, &x43);
- { uint32_t x46; uint8_t x47 = _addcarryx_u32(x44, x29, x31, &x46);
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(x47, x32, x34, &x49);
- { uint32_t x52; uint8_t x53 = _addcarryx_u32(x50, x35, x37, &x52);
- { uint32_t x55; uint8_t x56 = _addcarryx_u32(x53, x38, x40, &x55);
- { uint32_t x58; uint8_t _ = _addcarryx_u32(0x0, x56, x41, &x58);
- { uint32_t _; uint32_t x61 = _mulx_u32(x25, 0x286bca1b, &_);
- { uint32_t x65; uint32_t x64 = _mulx_u32(x61, 0xffffffed, &x65);
- { uint32_t x68; uint32_t x67 = _mulx_u32(x61, 0xffffffff, &x68);
- { uint32_t x71; uint32_t x70 = _mulx_u32(x61, 0xffffffff, &x71);
- { uint32_t x74; uint32_t x73 = _mulx_u32(x61, 0xffffffff, &x74);
- { uint32_t x77; uint32_t x76 = _mulx_u32(x61, 0xffffffff, &x77);
- { uint32_t x80; uint32_t x79 = _mulx_u32(x61, 0x7fffffff, &x80);
- { uint32_t x82; uint8_t x83 = _addcarryx_u32(0x0, x65, x67, &x82);
- { uint32_t x85; uint8_t x86 = _addcarryx_u32(x83, x68, x70, &x85);
- { uint32_t x88; uint8_t x89 = _addcarryx_u32(x86, x71, x73, &x88);
- { uint32_t x91; uint8_t x92 = _addcarryx_u32(x89, x74, x76, &x91);
- { uint32_t x94; uint8_t x95 = _addcarryx_u32(x92, x77, x79, &x94);
- { uint32_t x97; uint8_t _ = _addcarryx_u32(0x0, x95, x80, &x97);
- { uint32_t _; uint8_t x101 = _addcarryx_u32(0x0, x25, x64, &_);
- { uint32_t x103; uint8_t x104 = _addcarryx_u32(x101, x43, x82, &x103);
- { uint32_t x106; uint8_t x107 = _addcarryx_u32(x104, x46, x85, &x106);
- { uint32_t x109; uint8_t x110 = _addcarryx_u32(x107, x49, x88, &x109);
- { uint32_t x112; uint8_t x113 = _addcarryx_u32(x110, x52, x91, &x112);
- { uint32_t x115; uint8_t x116 = _addcarryx_u32(x113, x55, x94, &x115);
- { uint32_t x118; uint8_t x119 = _addcarryx_u32(x116, x58, x97, &x118);
- { uint32_t x122; uint32_t x121 = _mulx_u32(x7, x15, &x122);
- { uint32_t x125; uint32_t x124 = _mulx_u32(x7, x17, &x125);
- { uint32_t x128; uint32_t x127 = _mulx_u32(x7, x19, &x128);
- { uint32_t x131; uint32_t x130 = _mulx_u32(x7, x21, &x131);
- { uint32_t x134; uint32_t x133 = _mulx_u32(x7, x23, &x134);
- { uint32_t x137; uint32_t x136 = _mulx_u32(x7, x22, &x137);
- { uint32_t x139; uint8_t x140 = _addcarryx_u32(0x0, x122, x124, &x139);
- { uint32_t x142; uint8_t x143 = _addcarryx_u32(x140, x125, x127, &x142);
- { uint32_t x145; uint8_t x146 = _addcarryx_u32(x143, x128, x130, &x145);
- { uint32_t x148; uint8_t x149 = _addcarryx_u32(x146, x131, x133, &x148);
- { uint32_t x151; uint8_t x152 = _addcarryx_u32(x149, x134, x136, &x151);
- { uint32_t x154; uint8_t _ = _addcarryx_u32(0x0, x152, x137, &x154);
- { uint32_t x157; uint8_t x158 = _addcarryx_u32(0x0, x103, x121, &x157);
- { uint32_t x160; uint8_t x161 = _addcarryx_u32(x158, x106, x139, &x160);
- { uint32_t x163; uint8_t x164 = _addcarryx_u32(x161, x109, x142, &x163);
- { uint32_t x166; uint8_t x167 = _addcarryx_u32(x164, x112, x145, &x166);
- { uint32_t x169; uint8_t x170 = _addcarryx_u32(x167, x115, x148, &x169);
- { uint32_t x172; uint8_t x173 = _addcarryx_u32(x170, x118, x151, &x172);
- { uint32_t x175; uint8_t x176 = _addcarryx_u32(x173, x119, x154, &x175);
- { uint32_t _; uint32_t x178 = _mulx_u32(x157, 0x286bca1b, &_);
- { uint32_t x182; uint32_t x181 = _mulx_u32(x178, 0xffffffed, &x182);
- { uint32_t x185; uint32_t x184 = _mulx_u32(x178, 0xffffffff, &x185);
- { uint32_t x188; uint32_t x187 = _mulx_u32(x178, 0xffffffff, &x188);
- { uint32_t x191; uint32_t x190 = _mulx_u32(x178, 0xffffffff, &x191);
- { uint32_t x194; uint32_t x193 = _mulx_u32(x178, 0xffffffff, &x194);
- { uint32_t x197; uint32_t x196 = _mulx_u32(x178, 0x7fffffff, &x197);
- { uint32_t x199; uint8_t x200 = _addcarryx_u32(0x0, x182, x184, &x199);
- { uint32_t x202; uint8_t x203 = _addcarryx_u32(x200, x185, x187, &x202);
- { uint32_t x205; uint8_t x206 = _addcarryx_u32(x203, x188, x190, &x205);
- { uint32_t x208; uint8_t x209 = _addcarryx_u32(x206, x191, x193, &x208);
- { uint32_t x211; uint8_t x212 = _addcarryx_u32(x209, x194, x196, &x211);
- { uint32_t x214; uint8_t _ = _addcarryx_u32(0x0, x212, x197, &x214);
- { uint32_t _; uint8_t x218 = _addcarryx_u32(0x0, x157, x181, &_);
- { uint32_t x220; uint8_t x221 = _addcarryx_u32(x218, x160, x199, &x220);
- { uint32_t x223; uint8_t x224 = _addcarryx_u32(x221, x163, x202, &x223);
- { uint32_t x226; uint8_t x227 = _addcarryx_u32(x224, x166, x205, &x226);
- { uint32_t x229; uint8_t x230 = _addcarryx_u32(x227, x169, x208, &x229);
- { uint32_t x232; uint8_t x233 = _addcarryx_u32(x230, x172, x211, &x232);
- { uint32_t x235; uint8_t x236 = _addcarryx_u32(x233, x175, x214, &x235);
- { uint8_t x237 = (x236 + x176);
- { uint32_t x240; uint32_t x239 = _mulx_u32(x9, x15, &x240);
- { uint32_t x243; uint32_t x242 = _mulx_u32(x9, x17, &x243);
- { uint32_t x246; uint32_t x245 = _mulx_u32(x9, x19, &x246);
- { uint32_t x249; uint32_t x248 = _mulx_u32(x9, x21, &x249);
- { uint32_t x252; uint32_t x251 = _mulx_u32(x9, x23, &x252);
- { uint32_t x255; uint32_t x254 = _mulx_u32(x9, x22, &x255);
- { uint32_t x257; uint8_t x258 = _addcarryx_u32(0x0, x240, x242, &x257);
- { uint32_t x260; uint8_t x261 = _addcarryx_u32(x258, x243, x245, &x260);
- { uint32_t x263; uint8_t x264 = _addcarryx_u32(x261, x246, x248, &x263);
- { uint32_t x266; uint8_t x267 = _addcarryx_u32(x264, x249, x251, &x266);
- { uint32_t x269; uint8_t x270 = _addcarryx_u32(x267, x252, x254, &x269);
- { uint32_t x272; uint8_t _ = _addcarryx_u32(0x0, x270, x255, &x272);
- { uint32_t x275; uint8_t x276 = _addcarryx_u32(0x0, x220, x239, &x275);
- { uint32_t x278; uint8_t x279 = _addcarryx_u32(x276, x223, x257, &x278);
- { uint32_t x281; uint8_t x282 = _addcarryx_u32(x279, x226, x260, &x281);
- { uint32_t x284; uint8_t x285 = _addcarryx_u32(x282, x229, x263, &x284);
- { uint32_t x287; uint8_t x288 = _addcarryx_u32(x285, x232, x266, &x287);
- { uint32_t x290; uint8_t x291 = _addcarryx_u32(x288, x235, x269, &x290);
- { uint32_t x293; uint8_t x294 = _addcarryx_u32(x291, x237, x272, &x293);
- { uint32_t _; uint32_t x296 = _mulx_u32(x275, 0x286bca1b, &_);
- { uint32_t x300; uint32_t x299 = _mulx_u32(x296, 0xffffffed, &x300);
- { uint32_t x303; uint32_t x302 = _mulx_u32(x296, 0xffffffff, &x303);
- { uint32_t x306; uint32_t x305 = _mulx_u32(x296, 0xffffffff, &x306);
- { uint32_t x309; uint32_t x308 = _mulx_u32(x296, 0xffffffff, &x309);
- { uint32_t x312; uint32_t x311 = _mulx_u32(x296, 0xffffffff, &x312);
- { uint32_t x315; uint32_t x314 = _mulx_u32(x296, 0x7fffffff, &x315);
- { uint32_t x317; uint8_t x318 = _addcarryx_u32(0x0, x300, x302, &x317);
- { uint32_t x320; uint8_t x321 = _addcarryx_u32(x318, x303, x305, &x320);
- { uint32_t x323; uint8_t x324 = _addcarryx_u32(x321, x306, x308, &x323);
- { uint32_t x326; uint8_t x327 = _addcarryx_u32(x324, x309, x311, &x326);
- { uint32_t x329; uint8_t x330 = _addcarryx_u32(x327, x312, x314, &x329);
- { uint32_t x332; uint8_t _ = _addcarryx_u32(0x0, x330, x315, &x332);
- { uint32_t _; uint8_t x336 = _addcarryx_u32(0x0, x275, x299, &_);
- { uint32_t x338; uint8_t x339 = _addcarryx_u32(x336, x278, x317, &x338);
- { uint32_t x341; uint8_t x342 = _addcarryx_u32(x339, x281, x320, &x341);
- { uint32_t x344; uint8_t x345 = _addcarryx_u32(x342, x284, x323, &x344);
- { uint32_t x347; uint8_t x348 = _addcarryx_u32(x345, x287, x326, &x347);
- { uint32_t x350; uint8_t x351 = _addcarryx_u32(x348, x290, x329, &x350);
- { uint32_t x353; uint8_t x354 = _addcarryx_u32(x351, x293, x332, &x353);
- { uint8_t x355 = (x354 + x294);
- { uint32_t x358; uint32_t x357 = _mulx_u32(x11, x15, &x358);
- { uint32_t x361; uint32_t x360 = _mulx_u32(x11, x17, &x361);
- { uint32_t x364; uint32_t x363 = _mulx_u32(x11, x19, &x364);
- { uint32_t x367; uint32_t x366 = _mulx_u32(x11, x21, &x367);
- { uint32_t x370; uint32_t x369 = _mulx_u32(x11, x23, &x370);
- { uint32_t x373; uint32_t x372 = _mulx_u32(x11, x22, &x373);
- { uint32_t x375; uint8_t x376 = _addcarryx_u32(0x0, x358, x360, &x375);
- { uint32_t x378; uint8_t x379 = _addcarryx_u32(x376, x361, x363, &x378);
- { uint32_t x381; uint8_t x382 = _addcarryx_u32(x379, x364, x366, &x381);
- { uint32_t x384; uint8_t x385 = _addcarryx_u32(x382, x367, x369, &x384);
- { uint32_t x387; uint8_t x388 = _addcarryx_u32(x385, x370, x372, &x387);
- { uint32_t x390; uint8_t _ = _addcarryx_u32(0x0, x388, x373, &x390);
- { uint32_t x393; uint8_t x394 = _addcarryx_u32(0x0, x338, x357, &x393);
- { uint32_t x396; uint8_t x397 = _addcarryx_u32(x394, x341, x375, &x396);
- { uint32_t x399; uint8_t x400 = _addcarryx_u32(x397, x344, x378, &x399);
- { uint32_t x402; uint8_t x403 = _addcarryx_u32(x400, x347, x381, &x402);
- { uint32_t x405; uint8_t x406 = _addcarryx_u32(x403, x350, x384, &x405);
- { uint32_t x408; uint8_t x409 = _addcarryx_u32(x406, x353, x387, &x408);
- { uint32_t x411; uint8_t x412 = _addcarryx_u32(x409, x355, x390, &x411);
- { uint32_t _; uint32_t x414 = _mulx_u32(x393, 0x286bca1b, &_);
- { uint32_t x418; uint32_t x417 = _mulx_u32(x414, 0xffffffed, &x418);
- { uint32_t x421; uint32_t x420 = _mulx_u32(x414, 0xffffffff, &x421);
- { uint32_t x424; uint32_t x423 = _mulx_u32(x414, 0xffffffff, &x424);
- { uint32_t x427; uint32_t x426 = _mulx_u32(x414, 0xffffffff, &x427);
- { uint32_t x430; uint32_t x429 = _mulx_u32(x414, 0xffffffff, &x430);
- { uint32_t x433; uint32_t x432 = _mulx_u32(x414, 0x7fffffff, &x433);
- { uint32_t x435; uint8_t x436 = _addcarryx_u32(0x0, x418, x420, &x435);
- { uint32_t x438; uint8_t x439 = _addcarryx_u32(x436, x421, x423, &x438);
- { uint32_t x441; uint8_t x442 = _addcarryx_u32(x439, x424, x426, &x441);
- { uint32_t x444; uint8_t x445 = _addcarryx_u32(x442, x427, x429, &x444);
- { uint32_t x447; uint8_t x448 = _addcarryx_u32(x445, x430, x432, &x447);
- { uint32_t x450; uint8_t _ = _addcarryx_u32(0x0, x448, x433, &x450);
- { uint32_t _; uint8_t x454 = _addcarryx_u32(0x0, x393, x417, &_);
- { uint32_t x456; uint8_t x457 = _addcarryx_u32(x454, x396, x435, &x456);
- { uint32_t x459; uint8_t x460 = _addcarryx_u32(x457, x399, x438, &x459);
- { uint32_t x462; uint8_t x463 = _addcarryx_u32(x460, x402, x441, &x462);
- { uint32_t x465; uint8_t x466 = _addcarryx_u32(x463, x405, x444, &x465);
- { uint32_t x468; uint8_t x469 = _addcarryx_u32(x466, x408, x447, &x468);
- { uint32_t x471; uint8_t x472 = _addcarryx_u32(x469, x411, x450, &x471);
- { uint8_t x473 = (x472 + x412);
- { uint32_t x476; uint32_t x475 = _mulx_u32(x13, x15, &x476);
- { uint32_t x479; uint32_t x478 = _mulx_u32(x13, x17, &x479);
- { uint32_t x482; uint32_t x481 = _mulx_u32(x13, x19, &x482);
- { uint32_t x485; uint32_t x484 = _mulx_u32(x13, x21, &x485);
- { uint32_t x488; uint32_t x487 = _mulx_u32(x13, x23, &x488);
- { uint32_t x491; uint32_t x490 = _mulx_u32(x13, x22, &x491);
- { uint32_t x493; uint8_t x494 = _addcarryx_u32(0x0, x476, x478, &x493);
- { uint32_t x496; uint8_t x497 = _addcarryx_u32(x494, x479, x481, &x496);
- { uint32_t x499; uint8_t x500 = _addcarryx_u32(x497, x482, x484, &x499);
- { uint32_t x502; uint8_t x503 = _addcarryx_u32(x500, x485, x487, &x502);
- { uint32_t x505; uint8_t x506 = _addcarryx_u32(x503, x488, x490, &x505);
- { uint32_t x508; uint8_t _ = _addcarryx_u32(0x0, x506, x491, &x508);
- { uint32_t x511; uint8_t x512 = _addcarryx_u32(0x0, x456, x475, &x511);
- { uint32_t x514; uint8_t x515 = _addcarryx_u32(x512, x459, x493, &x514);
- { uint32_t x517; uint8_t x518 = _addcarryx_u32(x515, x462, x496, &x517);
- { uint32_t x520; uint8_t x521 = _addcarryx_u32(x518, x465, x499, &x520);
- { uint32_t x523; uint8_t x524 = _addcarryx_u32(x521, x468, x502, &x523);
- { uint32_t x526; uint8_t x527 = _addcarryx_u32(x524, x471, x505, &x526);
- { uint32_t x529; uint8_t x530 = _addcarryx_u32(x527, x473, x508, &x529);
- { uint32_t _; uint32_t x532 = _mulx_u32(x511, 0x286bca1b, &_);
- { uint32_t x536; uint32_t x535 = _mulx_u32(x532, 0xffffffed, &x536);
- { uint32_t x539; uint32_t x538 = _mulx_u32(x532, 0xffffffff, &x539);
- { uint32_t x542; uint32_t x541 = _mulx_u32(x532, 0xffffffff, &x542);
- { uint32_t x545; uint32_t x544 = _mulx_u32(x532, 0xffffffff, &x545);
- { uint32_t x548; uint32_t x547 = _mulx_u32(x532, 0xffffffff, &x548);
- { uint32_t x551; uint32_t x550 = _mulx_u32(x532, 0x7fffffff, &x551);
- { uint32_t x553; uint8_t x554 = _addcarryx_u32(0x0, x536, x538, &x553);
- { uint32_t x556; uint8_t x557 = _addcarryx_u32(x554, x539, x541, &x556);
- { uint32_t x559; uint8_t x560 = _addcarryx_u32(x557, x542, x544, &x559);
- { uint32_t x562; uint8_t x563 = _addcarryx_u32(x560, x545, x547, &x562);
- { uint32_t x565; uint8_t x566 = _addcarryx_u32(x563, x548, x550, &x565);
- { uint32_t x568; uint8_t _ = _addcarryx_u32(0x0, x566, x551, &x568);
- { uint32_t _; uint8_t x572 = _addcarryx_u32(0x0, x511, x535, &_);
- { uint32_t x574; uint8_t x575 = _addcarryx_u32(x572, x514, x553, &x574);
- { uint32_t x577; uint8_t x578 = _addcarryx_u32(x575, x517, x556, &x577);
- { uint32_t x580; uint8_t x581 = _addcarryx_u32(x578, x520, x559, &x580);
- { uint32_t x583; uint8_t x584 = _addcarryx_u32(x581, x523, x562, &x583);
- { uint32_t x586; uint8_t x587 = _addcarryx_u32(x584, x526, x565, &x586);
- { uint32_t x589; uint8_t x590 = _addcarryx_u32(x587, x529, x568, &x589);
- { uint8_t x591 = (x590 + x530);
- { uint32_t x594; uint32_t x593 = _mulx_u32(x12, x15, &x594);
- { uint32_t x597; uint32_t x596 = _mulx_u32(x12, x17, &x597);
- { uint32_t x600; uint32_t x599 = _mulx_u32(x12, x19, &x600);
- { uint32_t x603; uint32_t x602 = _mulx_u32(x12, x21, &x603);
- { uint32_t x606; uint32_t x605 = _mulx_u32(x12, x23, &x606);
- { uint32_t x609; uint32_t x608 = _mulx_u32(x12, x22, &x609);
- { uint32_t x611; uint8_t x612 = _addcarryx_u32(0x0, x594, x596, &x611);
- { uint32_t x614; uint8_t x615 = _addcarryx_u32(x612, x597, x599, &x614);
- { uint32_t x617; uint8_t x618 = _addcarryx_u32(x615, x600, x602, &x617);
- { uint32_t x620; uint8_t x621 = _addcarryx_u32(x618, x603, x605, &x620);
- { uint32_t x623; uint8_t x624 = _addcarryx_u32(x621, x606, x608, &x623);
- { uint32_t x626; uint8_t _ = _addcarryx_u32(0x0, x624, x609, &x626);
- { uint32_t x629; uint8_t x630 = _addcarryx_u32(0x0, x574, x593, &x629);
- { uint32_t x632; uint8_t x633 = _addcarryx_u32(x630, x577, x611, &x632);
- { uint32_t x635; uint8_t x636 = _addcarryx_u32(x633, x580, x614, &x635);
- { uint32_t x638; uint8_t x639 = _addcarryx_u32(x636, x583, x617, &x638);
- { uint32_t x641; uint8_t x642 = _addcarryx_u32(x639, x586, x620, &x641);
- { uint32_t x644; uint8_t x645 = _addcarryx_u32(x642, x589, x623, &x644);
- { uint32_t x647; uint8_t x648 = _addcarryx_u32(x645, x591, x626, &x647);
- { uint32_t _; uint32_t x650 = _mulx_u32(x629, 0x286bca1b, &_);
- { uint32_t x654; uint32_t x653 = _mulx_u32(x650, 0xffffffed, &x654);
- { uint32_t x657; uint32_t x656 = _mulx_u32(x650, 0xffffffff, &x657);
- { uint32_t x660; uint32_t x659 = _mulx_u32(x650, 0xffffffff, &x660);
- { uint32_t x663; uint32_t x662 = _mulx_u32(x650, 0xffffffff, &x663);
- { uint32_t x666; uint32_t x665 = _mulx_u32(x650, 0xffffffff, &x666);
- { uint32_t x669; uint32_t x668 = _mulx_u32(x650, 0x7fffffff, &x669);
- { uint32_t x671; uint8_t x672 = _addcarryx_u32(0x0, x654, x656, &x671);
- { uint32_t x674; uint8_t x675 = _addcarryx_u32(x672, x657, x659, &x674);
- { uint32_t x677; uint8_t x678 = _addcarryx_u32(x675, x660, x662, &x677);
- { uint32_t x680; uint8_t x681 = _addcarryx_u32(x678, x663, x665, &x680);
- { uint32_t x683; uint8_t x684 = _addcarryx_u32(x681, x666, x668, &x683);
- { uint32_t x686; uint8_t _ = _addcarryx_u32(0x0, x684, x669, &x686);
- { uint32_t _; uint8_t x690 = _addcarryx_u32(0x0, x629, x653, &_);
- { uint32_t x692; uint8_t x693 = _addcarryx_u32(x690, x632, x671, &x692);
- { uint32_t x695; uint8_t x696 = _addcarryx_u32(x693, x635, x674, &x695);
- { uint32_t x698; uint8_t x699 = _addcarryx_u32(x696, x638, x677, &x698);
- { uint32_t x701; uint8_t x702 = _addcarryx_u32(x699, x641, x680, &x701);
- { uint32_t x704; uint8_t x705 = _addcarryx_u32(x702, x644, x683, &x704);
- { uint32_t x707; uint8_t x708 = _addcarryx_u32(x705, x647, x686, &x707);
- { uint8_t x709 = (x708 + x648);
- { uint32_t x711; uint8_t x712 = _subborrow_u32(0x0, x692, 0xffffffed, &x711);
- { uint32_t x714; uint8_t x715 = _subborrow_u32(x712, x695, 0xffffffff, &x714);
- { uint32_t x717; uint8_t x718 = _subborrow_u32(x715, x698, 0xffffffff, &x717);
- { uint32_t x720; uint8_t x721 = _subborrow_u32(x718, x701, 0xffffffff, &x720);
- { uint32_t x723; uint8_t x724 = _subborrow_u32(x721, x704, 0xffffffff, &x723);
- { uint32_t x726; uint8_t x727 = _subborrow_u32(x724, x707, 0x7fffffff, &x726);
- { uint32_t _; uint8_t x730 = _subborrow_u32(x727, x709, 0x0, &_);
- { uint32_t x731 = cmovznz32(x730, x726, x707);
- { uint32_t x732 = cmovznz32(x730, x723, x704);
- { uint32_t x733 = cmovznz32(x730, x720, x701);
- { uint32_t x734 = cmovznz32(x730, x717, x698);
- { uint32_t x735 = cmovznz32(x730, x714, x695);
- { uint32_t x736 = cmovznz32(x730, x711, x692);
- out[0] = x736;
- out[1] = x735;
- out[2] = x734;
- out[3] = x733;
- out[4] = x732;
- out[5] = x731;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e191m19_6limbs/femul.v b/src/Specific/montgomery32_2e191m19_6limbs/femul.v
deleted file mode 100644
index 2bc9657e9..000000000
--- a/src/Specific/montgomery32_2e191m19_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e191m19_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e191m19_6limbs/femulDisplay.log b/src/Specific/montgomery32_2e191m19_6limbs/femulDisplay.log
deleted file mode 100644
index 7b0e96d28..000000000
--- a/src/Specific/montgomery32_2e191m19_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,252 +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,
- uint32_t x25, uint32_t x26 = mulx_u32(x5, x15);
- uint32_t x28, uint32_t x29 = mulx_u32(x5, x17);
- uint32_t x31, uint32_t x32 = mulx_u32(x5, x19);
- uint32_t x34, uint32_t x35 = mulx_u32(x5, x21);
- uint32_t x37, uint32_t x38 = mulx_u32(x5, x23);
- uint32_t x40, uint32_t x41 = mulx_u32(x5, x22);
- uint32_t x43, uint8_t x44 = addcarryx_u32(0x0, x26, x28);
- uint32_t x46, uint8_t x47 = addcarryx_u32(x44, x29, x31);
- uint32_t x49, uint8_t x50 = addcarryx_u32(x47, x32, x34);
- uint32_t x52, uint8_t x53 = addcarryx_u32(x50, x35, x37);
- uint32_t x55, uint8_t x56 = addcarryx_u32(x53, x38, x40);
- uint32_t x58, uint8_t _ = addcarryx_u32(0x0, x56, x41);
- uint32_t x61, uint32_t _ = mulx_u32(x25, 0x286bca1b);
- uint32_t x64, uint32_t x65 = mulx_u32(x61, 0xffffffed);
- uint32_t x67, uint32_t x68 = mulx_u32(x61, 0xffffffff);
- uint32_t x70, uint32_t x71 = mulx_u32(x61, 0xffffffff);
- uint32_t x73, uint32_t x74 = mulx_u32(x61, 0xffffffff);
- uint32_t x76, uint32_t x77 = mulx_u32(x61, 0xffffffff);
- uint32_t x79, uint32_t x80 = mulx_u32(x61, 0x7fffffff);
- uint32_t x82, uint8_t x83 = addcarryx_u32(0x0, x65, x67);
- uint32_t x85, uint8_t x86 = addcarryx_u32(x83, x68, x70);
- uint32_t x88, uint8_t x89 = addcarryx_u32(x86, x71, x73);
- uint32_t x91, uint8_t x92 = addcarryx_u32(x89, x74, x76);
- uint32_t x94, uint8_t x95 = addcarryx_u32(x92, x77, x79);
- uint32_t x97, uint8_t _ = addcarryx_u32(0x0, x95, x80);
- uint32_t _, uint8_t x101 = addcarryx_u32(0x0, x25, x64);
- uint32_t x103, uint8_t x104 = addcarryx_u32(x101, x43, x82);
- uint32_t x106, uint8_t x107 = addcarryx_u32(x104, x46, x85);
- uint32_t x109, uint8_t x110 = addcarryx_u32(x107, x49, x88);
- uint32_t x112, uint8_t x113 = addcarryx_u32(x110, x52, x91);
- uint32_t x115, uint8_t x116 = addcarryx_u32(x113, x55, x94);
- uint32_t x118, uint8_t x119 = addcarryx_u32(x116, x58, x97);
- uint32_t x121, uint32_t x122 = mulx_u32(x7, x15);
- uint32_t x124, uint32_t x125 = mulx_u32(x7, x17);
- uint32_t x127, uint32_t x128 = mulx_u32(x7, x19);
- uint32_t x130, uint32_t x131 = mulx_u32(x7, x21);
- uint32_t x133, uint32_t x134 = mulx_u32(x7, x23);
- uint32_t x136, uint32_t x137 = mulx_u32(x7, x22);
- uint32_t x139, uint8_t x140 = addcarryx_u32(0x0, x122, x124);
- uint32_t x142, uint8_t x143 = addcarryx_u32(x140, x125, x127);
- uint32_t x145, uint8_t x146 = addcarryx_u32(x143, x128, x130);
- uint32_t x148, uint8_t x149 = addcarryx_u32(x146, x131, x133);
- uint32_t x151, uint8_t x152 = addcarryx_u32(x149, x134, x136);
- uint32_t x154, uint8_t _ = addcarryx_u32(0x0, x152, x137);
- uint32_t x157, uint8_t x158 = addcarryx_u32(0x0, x103, x121);
- uint32_t x160, uint8_t x161 = addcarryx_u32(x158, x106, x139);
- uint32_t x163, uint8_t x164 = addcarryx_u32(x161, x109, x142);
- uint32_t x166, uint8_t x167 = addcarryx_u32(x164, x112, x145);
- uint32_t x169, uint8_t x170 = addcarryx_u32(x167, x115, x148);
- uint32_t x172, uint8_t x173 = addcarryx_u32(x170, x118, x151);
- uint32_t x175, uint8_t x176 = addcarryx_u32(x173, x119, x154);
- uint32_t x178, uint32_t _ = mulx_u32(x157, 0x286bca1b);
- uint32_t x181, uint32_t x182 = mulx_u32(x178, 0xffffffed);
- uint32_t x184, uint32_t x185 = mulx_u32(x178, 0xffffffff);
- uint32_t x187, uint32_t x188 = mulx_u32(x178, 0xffffffff);
- uint32_t x190, uint32_t x191 = mulx_u32(x178, 0xffffffff);
- uint32_t x193, uint32_t x194 = mulx_u32(x178, 0xffffffff);
- uint32_t x196, uint32_t x197 = mulx_u32(x178, 0x7fffffff);
- uint32_t x199, uint8_t x200 = addcarryx_u32(0x0, x182, x184);
- uint32_t x202, uint8_t x203 = addcarryx_u32(x200, x185, x187);
- uint32_t x205, uint8_t x206 = addcarryx_u32(x203, x188, x190);
- uint32_t x208, uint8_t x209 = addcarryx_u32(x206, x191, x193);
- uint32_t x211, uint8_t x212 = addcarryx_u32(x209, x194, x196);
- uint32_t x214, uint8_t _ = addcarryx_u32(0x0, x212, x197);
- uint32_t _, uint8_t x218 = addcarryx_u32(0x0, x157, x181);
- uint32_t x220, uint8_t x221 = addcarryx_u32(x218, x160, x199);
- uint32_t x223, uint8_t x224 = addcarryx_u32(x221, x163, x202);
- uint32_t x226, uint8_t x227 = addcarryx_u32(x224, x166, x205);
- uint32_t x229, uint8_t x230 = addcarryx_u32(x227, x169, x208);
- uint32_t x232, uint8_t x233 = addcarryx_u32(x230, x172, x211);
- uint32_t x235, uint8_t x236 = addcarryx_u32(x233, x175, x214);
- uint8_t x237 = (x236 + x176);
- uint32_t x239, uint32_t x240 = mulx_u32(x9, x15);
- uint32_t x242, uint32_t x243 = mulx_u32(x9, x17);
- uint32_t x245, uint32_t x246 = mulx_u32(x9, x19);
- uint32_t x248, uint32_t x249 = mulx_u32(x9, x21);
- uint32_t x251, uint32_t x252 = mulx_u32(x9, x23);
- uint32_t x254, uint32_t x255 = mulx_u32(x9, x22);
- uint32_t x257, uint8_t x258 = addcarryx_u32(0x0, x240, x242);
- uint32_t x260, uint8_t x261 = addcarryx_u32(x258, x243, x245);
- uint32_t x263, uint8_t x264 = addcarryx_u32(x261, x246, x248);
- uint32_t x266, uint8_t x267 = addcarryx_u32(x264, x249, x251);
- uint32_t x269, uint8_t x270 = addcarryx_u32(x267, x252, x254);
- uint32_t x272, uint8_t _ = addcarryx_u32(0x0, x270, x255);
- uint32_t x275, uint8_t x276 = addcarryx_u32(0x0, x220, x239);
- uint32_t x278, uint8_t x279 = addcarryx_u32(x276, x223, x257);
- uint32_t x281, uint8_t x282 = addcarryx_u32(x279, x226, x260);
- uint32_t x284, uint8_t x285 = addcarryx_u32(x282, x229, x263);
- uint32_t x287, uint8_t x288 = addcarryx_u32(x285, x232, x266);
- uint32_t x290, uint8_t x291 = addcarryx_u32(x288, x235, x269);
- uint32_t x293, uint8_t x294 = addcarryx_u32(x291, x237, x272);
- uint32_t x296, uint32_t _ = mulx_u32(x275, 0x286bca1b);
- uint32_t x299, uint32_t x300 = mulx_u32(x296, 0xffffffed);
- uint32_t x302, uint32_t x303 = mulx_u32(x296, 0xffffffff);
- uint32_t x305, uint32_t x306 = mulx_u32(x296, 0xffffffff);
- uint32_t x308, uint32_t x309 = mulx_u32(x296, 0xffffffff);
- uint32_t x311, uint32_t x312 = mulx_u32(x296, 0xffffffff);
- uint32_t x314, uint32_t x315 = mulx_u32(x296, 0x7fffffff);
- uint32_t x317, uint8_t x318 = addcarryx_u32(0x0, x300, x302);
- uint32_t x320, uint8_t x321 = addcarryx_u32(x318, x303, x305);
- uint32_t x323, uint8_t x324 = addcarryx_u32(x321, x306, x308);
- uint32_t x326, uint8_t x327 = addcarryx_u32(x324, x309, x311);
- uint32_t x329, uint8_t x330 = addcarryx_u32(x327, x312, x314);
- uint32_t x332, uint8_t _ = addcarryx_u32(0x0, x330, x315);
- uint32_t _, uint8_t x336 = addcarryx_u32(0x0, x275, x299);
- uint32_t x338, uint8_t x339 = addcarryx_u32(x336, x278, x317);
- uint32_t x341, uint8_t x342 = addcarryx_u32(x339, x281, x320);
- uint32_t x344, uint8_t x345 = addcarryx_u32(x342, x284, x323);
- uint32_t x347, uint8_t x348 = addcarryx_u32(x345, x287, x326);
- uint32_t x350, uint8_t x351 = addcarryx_u32(x348, x290, x329);
- uint32_t x353, uint8_t x354 = addcarryx_u32(x351, x293, x332);
- uint8_t x355 = (x354 + x294);
- uint32_t x357, uint32_t x358 = mulx_u32(x11, x15);
- uint32_t x360, uint32_t x361 = mulx_u32(x11, x17);
- uint32_t x363, uint32_t x364 = mulx_u32(x11, x19);
- uint32_t x366, uint32_t x367 = mulx_u32(x11, x21);
- uint32_t x369, uint32_t x370 = mulx_u32(x11, x23);
- uint32_t x372, uint32_t x373 = mulx_u32(x11, x22);
- uint32_t x375, uint8_t x376 = addcarryx_u32(0x0, x358, x360);
- uint32_t x378, uint8_t x379 = addcarryx_u32(x376, x361, x363);
- uint32_t x381, uint8_t x382 = addcarryx_u32(x379, x364, x366);
- uint32_t x384, uint8_t x385 = addcarryx_u32(x382, x367, x369);
- uint32_t x387, uint8_t x388 = addcarryx_u32(x385, x370, x372);
- uint32_t x390, uint8_t _ = addcarryx_u32(0x0, x388, x373);
- uint32_t x393, uint8_t x394 = addcarryx_u32(0x0, x338, x357);
- uint32_t x396, uint8_t x397 = addcarryx_u32(x394, x341, x375);
- uint32_t x399, uint8_t x400 = addcarryx_u32(x397, x344, x378);
- uint32_t x402, uint8_t x403 = addcarryx_u32(x400, x347, x381);
- uint32_t x405, uint8_t x406 = addcarryx_u32(x403, x350, x384);
- uint32_t x408, uint8_t x409 = addcarryx_u32(x406, x353, x387);
- uint32_t x411, uint8_t x412 = addcarryx_u32(x409, x355, x390);
- uint32_t x414, uint32_t _ = mulx_u32(x393, 0x286bca1b);
- uint32_t x417, uint32_t x418 = mulx_u32(x414, 0xffffffed);
- uint32_t x420, uint32_t x421 = mulx_u32(x414, 0xffffffff);
- uint32_t x423, uint32_t x424 = mulx_u32(x414, 0xffffffff);
- uint32_t x426, uint32_t x427 = mulx_u32(x414, 0xffffffff);
- uint32_t x429, uint32_t x430 = mulx_u32(x414, 0xffffffff);
- uint32_t x432, uint32_t x433 = mulx_u32(x414, 0x7fffffff);
- uint32_t x435, uint8_t x436 = addcarryx_u32(0x0, x418, x420);
- uint32_t x438, uint8_t x439 = addcarryx_u32(x436, x421, x423);
- uint32_t x441, uint8_t x442 = addcarryx_u32(x439, x424, x426);
- uint32_t x444, uint8_t x445 = addcarryx_u32(x442, x427, x429);
- uint32_t x447, uint8_t x448 = addcarryx_u32(x445, x430, x432);
- uint32_t x450, uint8_t _ = addcarryx_u32(0x0, x448, x433);
- uint32_t _, uint8_t x454 = addcarryx_u32(0x0, x393, x417);
- uint32_t x456, uint8_t x457 = addcarryx_u32(x454, x396, x435);
- uint32_t x459, uint8_t x460 = addcarryx_u32(x457, x399, x438);
- uint32_t x462, uint8_t x463 = addcarryx_u32(x460, x402, x441);
- uint32_t x465, uint8_t x466 = addcarryx_u32(x463, x405, x444);
- uint32_t x468, uint8_t x469 = addcarryx_u32(x466, x408, x447);
- uint32_t x471, uint8_t x472 = addcarryx_u32(x469, x411, x450);
- uint8_t x473 = (x472 + x412);
- uint32_t x475, uint32_t x476 = mulx_u32(x13, x15);
- uint32_t x478, uint32_t x479 = mulx_u32(x13, x17);
- uint32_t x481, uint32_t x482 = mulx_u32(x13, x19);
- uint32_t x484, uint32_t x485 = mulx_u32(x13, x21);
- uint32_t x487, uint32_t x488 = mulx_u32(x13, x23);
- uint32_t x490, uint32_t x491 = mulx_u32(x13, x22);
- uint32_t x493, uint8_t x494 = addcarryx_u32(0x0, x476, x478);
- uint32_t x496, uint8_t x497 = addcarryx_u32(x494, x479, x481);
- uint32_t x499, uint8_t x500 = addcarryx_u32(x497, x482, x484);
- uint32_t x502, uint8_t x503 = addcarryx_u32(x500, x485, x487);
- uint32_t x505, uint8_t x506 = addcarryx_u32(x503, x488, x490);
- uint32_t x508, uint8_t _ = addcarryx_u32(0x0, x506, x491);
- uint32_t x511, uint8_t x512 = addcarryx_u32(0x0, x456, x475);
- uint32_t x514, uint8_t x515 = addcarryx_u32(x512, x459, x493);
- uint32_t x517, uint8_t x518 = addcarryx_u32(x515, x462, x496);
- uint32_t x520, uint8_t x521 = addcarryx_u32(x518, x465, x499);
- uint32_t x523, uint8_t x524 = addcarryx_u32(x521, x468, x502);
- uint32_t x526, uint8_t x527 = addcarryx_u32(x524, x471, x505);
- uint32_t x529, uint8_t x530 = addcarryx_u32(x527, x473, x508);
- uint32_t x532, uint32_t _ = mulx_u32(x511, 0x286bca1b);
- uint32_t x535, uint32_t x536 = mulx_u32(x532, 0xffffffed);
- uint32_t x538, uint32_t x539 = mulx_u32(x532, 0xffffffff);
- uint32_t x541, uint32_t x542 = mulx_u32(x532, 0xffffffff);
- uint32_t x544, uint32_t x545 = mulx_u32(x532, 0xffffffff);
- uint32_t x547, uint32_t x548 = mulx_u32(x532, 0xffffffff);
- uint32_t x550, uint32_t x551 = mulx_u32(x532, 0x7fffffff);
- uint32_t x553, uint8_t x554 = addcarryx_u32(0x0, x536, x538);
- uint32_t x556, uint8_t x557 = addcarryx_u32(x554, x539, x541);
- uint32_t x559, uint8_t x560 = addcarryx_u32(x557, x542, x544);
- uint32_t x562, uint8_t x563 = addcarryx_u32(x560, x545, x547);
- uint32_t x565, uint8_t x566 = addcarryx_u32(x563, x548, x550);
- uint32_t x568, uint8_t _ = addcarryx_u32(0x0, x566, x551);
- uint32_t _, uint8_t x572 = addcarryx_u32(0x0, x511, x535);
- uint32_t x574, uint8_t x575 = addcarryx_u32(x572, x514, x553);
- uint32_t x577, uint8_t x578 = addcarryx_u32(x575, x517, x556);
- uint32_t x580, uint8_t x581 = addcarryx_u32(x578, x520, x559);
- uint32_t x583, uint8_t x584 = addcarryx_u32(x581, x523, x562);
- uint32_t x586, uint8_t x587 = addcarryx_u32(x584, x526, x565);
- uint32_t x589, uint8_t x590 = addcarryx_u32(x587, x529, x568);
- uint8_t x591 = (x590 + x530);
- uint32_t x593, uint32_t x594 = mulx_u32(x12, x15);
- uint32_t x596, uint32_t x597 = mulx_u32(x12, x17);
- uint32_t x599, uint32_t x600 = mulx_u32(x12, x19);
- uint32_t x602, uint32_t x603 = mulx_u32(x12, x21);
- uint32_t x605, uint32_t x606 = mulx_u32(x12, x23);
- uint32_t x608, uint32_t x609 = mulx_u32(x12, x22);
- uint32_t x611, uint8_t x612 = addcarryx_u32(0x0, x594, x596);
- uint32_t x614, uint8_t x615 = addcarryx_u32(x612, x597, x599);
- uint32_t x617, uint8_t x618 = addcarryx_u32(x615, x600, x602);
- uint32_t x620, uint8_t x621 = addcarryx_u32(x618, x603, x605);
- uint32_t x623, uint8_t x624 = addcarryx_u32(x621, x606, x608);
- uint32_t x626, uint8_t _ = addcarryx_u32(0x0, x624, x609);
- uint32_t x629, uint8_t x630 = addcarryx_u32(0x0, x574, x593);
- uint32_t x632, uint8_t x633 = addcarryx_u32(x630, x577, x611);
- uint32_t x635, uint8_t x636 = addcarryx_u32(x633, x580, x614);
- uint32_t x638, uint8_t x639 = addcarryx_u32(x636, x583, x617);
- uint32_t x641, uint8_t x642 = addcarryx_u32(x639, x586, x620);
- uint32_t x644, uint8_t x645 = addcarryx_u32(x642, x589, x623);
- uint32_t x647, uint8_t x648 = addcarryx_u32(x645, x591, x626);
- uint32_t x650, uint32_t _ = mulx_u32(x629, 0x286bca1b);
- uint32_t x653, uint32_t x654 = mulx_u32(x650, 0xffffffed);
- uint32_t x656, uint32_t x657 = mulx_u32(x650, 0xffffffff);
- uint32_t x659, uint32_t x660 = mulx_u32(x650, 0xffffffff);
- uint32_t x662, uint32_t x663 = mulx_u32(x650, 0xffffffff);
- uint32_t x665, uint32_t x666 = mulx_u32(x650, 0xffffffff);
- uint32_t x668, uint32_t x669 = mulx_u32(x650, 0x7fffffff);
- uint32_t x671, uint8_t x672 = addcarryx_u32(0x0, x654, x656);
- uint32_t x674, uint8_t x675 = addcarryx_u32(x672, x657, x659);
- uint32_t x677, uint8_t x678 = addcarryx_u32(x675, x660, x662);
- uint32_t x680, uint8_t x681 = addcarryx_u32(x678, x663, x665);
- uint32_t x683, uint8_t x684 = addcarryx_u32(x681, x666, x668);
- uint32_t x686, uint8_t _ = addcarryx_u32(0x0, x684, x669);
- uint32_t _, uint8_t x690 = addcarryx_u32(0x0, x629, x653);
- uint32_t x692, uint8_t x693 = addcarryx_u32(x690, x632, x671);
- uint32_t x695, uint8_t x696 = addcarryx_u32(x693, x635, x674);
- uint32_t x698, uint8_t x699 = addcarryx_u32(x696, x638, x677);
- uint32_t x701, uint8_t x702 = addcarryx_u32(x699, x641, x680);
- uint32_t x704, uint8_t x705 = addcarryx_u32(x702, x644, x683);
- uint32_t x707, uint8_t x708 = addcarryx_u32(x705, x647, x686);
- uint8_t x709 = (x708 + x648);
- uint32_t x711, uint8_t x712 = subborrow_u32(0x0, x692, 0xffffffed);
- uint32_t x714, uint8_t x715 = subborrow_u32(x712, x695, 0xffffffff);
- uint32_t x717, uint8_t x718 = subborrow_u32(x715, x698, 0xffffffff);
- uint32_t x720, uint8_t x721 = subborrow_u32(x718, x701, 0xffffffff);
- uint32_t x723, uint8_t x724 = subborrow_u32(x721, x704, 0xffffffff);
- uint32_t x726, uint8_t x727 = subborrow_u32(x724, x707, 0x7fffffff);
- uint32_t _, uint8_t x730 = subborrow_u32(x727, x709, 0x0);
- uint32_t x731 = cmovznz32(x730, x726, x707);
- uint32_t x732 = cmovznz32(x730, x723, x704);
- uint32_t x733 = cmovznz32(x730, x720, x701);
- uint32_t x734 = cmovznz32(x730, x717, x698);
- uint32_t x735 = cmovznz32(x730, x714, x695);
- uint32_t x736 = cmovznz32(x730, x711, x692);
- return (x731, x732, x733, x734, x735, x736))
-(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/montgomery32_2e191m19_6limbs/femulDisplay.v b/src/Specific/montgomery32_2e191m19_6limbs/femulDisplay.v
deleted file mode 100644
index bb5083ca5..000000000
--- a/src/Specific/montgomery32_2e191m19_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e191m19_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e191m19_6limbs/fenz.c b/src/Specific/montgomery32_2e191m19_6limbs/fenz.c
deleted file mode 100644
index 2e0454af1..000000000
--- a/src/Specific/montgomery32_2e191m19_6limbs/fenz.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], 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 x11 = (x10 | x9);
- { uint32_t x12 = (x8 | x11);
- { uint32_t x13 = (x6 | x12);
- { uint32_t x14 = (x4 | x13);
- { uint32_t x15 = (x2 | x14);
- out[0] = x15;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e191m19_6limbs/fenz.v b/src/Specific/montgomery32_2e191m19_6limbs/fenz.v
deleted file mode 100644
index 29b2a4078..000000000
--- a/src/Specific/montgomery32_2e191m19_6limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e191m19_6limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e191m19_6limbs/fenzDisplay.log b/src/Specific/montgomery32_2e191m19_6limbs/fenzDisplay.log
deleted file mode 100644
index 616138b7b..000000000
--- a/src/Specific/montgomery32_2e191m19_6limbs/fenzDisplay.log
+++ /dev/null
@@ -1,12 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint32_t x11 = (x10 | x9);
- uint32_t x12 = (x8 | x11);
- uint32_t x13 = (x6 | x12);
- uint32_t x14 = (x4 | x13);
- uint32_t x15 = (x2 | x14);
- return x15)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e191m19_6limbs/fenzDisplay.v b/src/Specific/montgomery32_2e191m19_6limbs/fenzDisplay.v
deleted file mode 100644
index 52de78906..000000000
--- a/src/Specific/montgomery32_2e191m19_6limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e191m19_6limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e191m19_6limbs/feopp.c b/src/Specific/montgomery32_2e191m19_6limbs/feopp.c
deleted file mode 100644
index 7d6c52941..000000000
--- a/src/Specific/montgomery32_2e191m19_6limbs/feopp.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feopp(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 = _subborrow_u32(0x0, 0x0, x2, &x12);
- { uint32_t x15; uint8_t x16 = _subborrow_u32(x13, 0x0, x4, &x15);
- { uint32_t x18; uint8_t x19 = _subborrow_u32(x16, 0x0, x6, &x18);
- { uint32_t x21; uint8_t x22 = _subborrow_u32(x19, 0x0, x8, &x21);
- { uint32_t x24; uint8_t x25 = _subborrow_u32(x22, 0x0, x10, &x24);
- { uint32_t x27; uint8_t x28 = _subborrow_u32(x25, 0x0, x9, &x27);
- { uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- { uint32_t x30 = (x29 & 0xffffffed);
- { uint32_t x32; uint8_t x33 = _addcarryx_u32(0x0, x12, x30, &x32);
- { uint32_t x34 = (x29 & 0xffffffff);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(x33, x15, x34, &x36);
- { uint32_t x38 = (x29 & 0xffffffff);
- { uint32_t x40; uint8_t x41 = _addcarryx_u32(x37, x18, x38, &x40);
- { uint32_t x42 = (x29 & 0xffffffff);
- { uint32_t x44; uint8_t x45 = _addcarryx_u32(x41, x21, x42, &x44);
- { uint32_t x46 = (x29 & 0xffffffff);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x45, x24, x46, &x48);
- { uint32_t x50 = (x29 & 0x7fffffff);
- { uint32_t x52; uint8_t _ = _addcarryx_u32(x49, x27, x50, &x52);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e191m19_6limbs/feopp.v b/src/Specific/montgomery32_2e191m19_6limbs/feopp.v
deleted file mode 100644
index 19ab6dd3d..000000000
--- a/src/Specific/montgomery32_2e191m19_6limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e191m19_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e191m19_6limbs/feoppDisplay.log b/src/Specific/montgomery32_2e191m19_6limbs/feoppDisplay.log
deleted file mode 100644
index eec3da830..000000000
--- a/src/Specific/montgomery32_2e191m19_6limbs/feoppDisplay.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 = subborrow_u32(0x0, 0x0, x2);
- uint32_t x15, uint8_t x16 = subborrow_u32(x13, 0x0, x4);
- uint32_t x18, uint8_t x19 = subborrow_u32(x16, 0x0, x6);
- uint32_t x21, uint8_t x22 = subborrow_u32(x19, 0x0, x8);
- uint32_t x24, uint8_t x25 = subborrow_u32(x22, 0x0, x10);
- uint32_t x27, uint8_t x28 = subborrow_u32(x25, 0x0, x9);
- uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- uint32_t x30 = (x29 & 0xffffffed);
- uint32_t x32, uint8_t x33 = addcarryx_u32(0x0, x12, x30);
- uint32_t x34 = (x29 & 0xffffffff);
- uint32_t x36, uint8_t x37 = addcarryx_u32(x33, x15, x34);
- uint32_t x38 = (x29 & 0xffffffff);
- uint32_t x40, uint8_t x41 = addcarryx_u32(x37, x18, x38);
- uint32_t x42 = (x29 & 0xffffffff);
- uint32_t x44, uint8_t x45 = addcarryx_u32(x41, x21, x42);
- uint32_t x46 = (x29 & 0xffffffff);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x45, x24, x46);
- uint32_t x50 = (x29 & 0x7fffffff);
- uint32_t x52, uint8_t _ = addcarryx_u32(x49, x27, 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/montgomery32_2e191m19_6limbs/feoppDisplay.v b/src/Specific/montgomery32_2e191m19_6limbs/feoppDisplay.v
deleted file mode 100644
index ffa7938a7..000000000
--- a/src/Specific/montgomery32_2e191m19_6limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e191m19_6limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e191m19_6limbs/fesquare.c b/src/Specific/montgomery32_2e191m19_6limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e191m19_6limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e191m19_6limbs/fesub.c b/src/Specific/montgomery32_2e191m19_6limbs/fesub.c
deleted file mode 100644
index 9a3cb209c..000000000
--- a/src/Specific/montgomery32_2e191m19_6limbs/fesub.c
+++ /dev/null
@@ -1,40 +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];
- { uint32_t x25; uint8_t x26 = _subborrow_u32(0x0, x5, x15, &x25);
- { uint32_t x28; uint8_t x29 = _subborrow_u32(x26, x7, x17, &x28);
- { uint32_t x31; uint8_t x32 = _subborrow_u32(x29, x9, x19, &x31);
- { uint32_t x34; uint8_t x35 = _subborrow_u32(x32, x11, x21, &x34);
- { uint32_t x37; uint8_t x38 = _subborrow_u32(x35, x13, x23, &x37);
- { uint32_t x40; uint8_t x41 = _subborrow_u32(x38, x12, x22, &x40);
- { uint32_t x42 = cmovznz32(x41, 0x0, 0xffffffff);
- { uint32_t x43 = (x42 & 0xffffffed);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(0x0, x25, x43, &x45);
- { uint32_t x47 = (x42 & 0xffffffff);
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(x46, x28, x47, &x49);
- { uint32_t x51 = (x42 & 0xffffffff);
- { uint32_t x53; uint8_t x54 = _addcarryx_u32(x50, x31, x51, &x53);
- { uint32_t x55 = (x42 & 0xffffffff);
- { uint32_t x57; uint8_t x58 = _addcarryx_u32(x54, x34, x55, &x57);
- { uint32_t x59 = (x42 & 0xffffffff);
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(x58, x37, x59, &x61);
- { uint32_t x63 = (x42 & 0x7fffffff);
- { uint32_t x65; uint8_t _ = _addcarryx_u32(x62, x40, x63, &x65);
- out[0] = x45;
- out[1] = x49;
- out[2] = x53;
- out[3] = x57;
- out[4] = x61;
- out[5] = x65;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e191m19_6limbs/fesub.v b/src/Specific/montgomery32_2e191m19_6limbs/fesub.v
deleted file mode 100644
index a027c4fd6..000000000
--- a/src/Specific/montgomery32_2e191m19_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e191m19_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e191m19_6limbs/fesubDisplay.log b/src/Specific/montgomery32_2e191m19_6limbs/fesubDisplay.log
deleted file mode 100644
index 25cedd032..000000000
--- a/src/Specific/montgomery32_2e191m19_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,26 +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,
- uint32_t x25, uint8_t x26 = subborrow_u32(0x0, x5, x15);
- uint32_t x28, uint8_t x29 = subborrow_u32(x26, x7, x17);
- uint32_t x31, uint8_t x32 = subborrow_u32(x29, x9, x19);
- uint32_t x34, uint8_t x35 = subborrow_u32(x32, x11, x21);
- uint32_t x37, uint8_t x38 = subborrow_u32(x35, x13, x23);
- uint32_t x40, uint8_t x41 = subborrow_u32(x38, x12, x22);
- uint32_t x42 = cmovznz32(x41, 0x0, 0xffffffff);
- uint32_t x43 = (x42 & 0xffffffed);
- uint32_t x45, uint8_t x46 = addcarryx_u32(0x0, x25, x43);
- uint32_t x47 = (x42 & 0xffffffff);
- uint32_t x49, uint8_t x50 = addcarryx_u32(x46, x28, x47);
- uint32_t x51 = (x42 & 0xffffffff);
- uint32_t x53, uint8_t x54 = addcarryx_u32(x50, x31, x51);
- uint32_t x55 = (x42 & 0xffffffff);
- uint32_t x57, uint8_t x58 = addcarryx_u32(x54, x34, x55);
- uint32_t x59 = (x42 & 0xffffffff);
- uint32_t x61, uint8_t x62 = addcarryx_u32(x58, x37, x59);
- uint32_t x63 = (x42 & 0x7fffffff);
- uint32_t x65, uint8_t _ = addcarryx_u32(x62, x40, x63);
- (Return x65, Return x61, Return x57, Return x53, Return x49, Return x45))
-(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/montgomery32_2e191m19_6limbs/fesubDisplay.v b/src/Specific/montgomery32_2e191m19_6limbs/fesubDisplay.v
deleted file mode 100644
index 4277db36c..000000000
--- a/src/Specific/montgomery32_2e191m19_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e191m19_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e191m19_6limbs/py_interpreter.sh b/src/Specific/montgomery32_2e191m19_6limbs/py_interpreter.sh
deleted file mode 100755
index ac9b7615f..000000000
--- a/src/Specific/montgomery32_2e191m19_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**191 - 19' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e192m2e64m1_6limbs/CurveParameters.v b/src/Specific/montgomery32_2e192m2e64m1_6limbs/CurveParameters.v
deleted file mode 100644
index 76ebb9d37..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^192 - 2^64 - 1
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 32;
- bitwidth := 32;
- s := 2^192;
- c := [(1, 1); (2^64, 1)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e192m2e64m1_6limbs/Synthesis.v b/src/Specific/montgomery32_2e192m2e64m1_6limbs/Synthesis.v
deleted file mode 100644
index 8a54ef877..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e192m2e64m1_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/montgomery32_2e192m2e64m1_6limbs/compiler.sh b/src/Specific/montgomery32_2e192m2e64m1_6limbs/compiler.sh
deleted file mode 100755
index 8e5739c23..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e192m2e64m1_6limbs/compilerxx.sh b/src/Specific/montgomery32_2e192m2e64m1_6limbs/compilerxx.sh
deleted file mode 100755
index 9135046d9..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e192m2e64m1_6limbs/feadd.c b/src/Specific/montgomery32_2e192m2e64m1_6limbs/feadd.c
deleted file mode 100644
index 9357de067..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_6limbs/feadd.c
+++ /dev/null
@@ -1,40 +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];
- { uint32_t x25; uint8_t x26 = _addcarryx_u32(0x0, x5, x15, &x25);
- { uint32_t x28; uint8_t x29 = _addcarryx_u32(x26, x7, x17, &x28);
- { uint32_t x31; uint8_t x32 = _addcarryx_u32(x29, x9, x19, &x31);
- { uint32_t x34; uint8_t x35 = _addcarryx_u32(x32, x11, x21, &x34);
- { uint32_t x37; uint8_t x38 = _addcarryx_u32(x35, x13, x23, &x37);
- { uint32_t x40; uint8_t x41 = _addcarryx_u32(x38, x12, x22, &x40);
- { uint32_t x43; uint8_t x44 = _subborrow_u32(0x0, x25, 0xffffffff, &x43);
- { uint32_t x46; uint8_t x47 = _subborrow_u32(x44, x28, 0xffffffff, &x46);
- { uint32_t x49; uint8_t x50 = _subborrow_u32(x47, x31, 0xfffffffe, &x49);
- { uint32_t x52; uint8_t x53 = _subborrow_u32(x50, x34, 0xffffffff, &x52);
- { uint32_t x55; uint8_t x56 = _subborrow_u32(x53, x37, 0xffffffff, &x55);
- { uint32_t x58; uint8_t x59 = _subborrow_u32(x56, x40, 0xffffffff, &x58);
- { uint32_t _; uint8_t x62 = _subborrow_u32(x59, x41, 0x0, &_);
- { uint32_t x63 = cmovznz32(x62, x58, x40);
- { uint32_t x64 = cmovznz32(x62, x55, x37);
- { uint32_t x65 = cmovznz32(x62, x52, x34);
- { uint32_t x66 = cmovznz32(x62, x49, x31);
- { uint32_t x67 = cmovznz32(x62, x46, x28);
- { uint32_t x68 = cmovznz32(x62, x43, x25);
- out[0] = x68;
- out[1] = x67;
- out[2] = x66;
- out[3] = x65;
- out[4] = x64;
- out[5] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e192m2e64m1_6limbs/feadd.v b/src/Specific/montgomery32_2e192m2e64m1_6limbs/feadd.v
deleted file mode 100644
index f0c5f5321..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e192m2e64m1_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e192m2e64m1_6limbs/feaddDisplay.log b/src/Specific/montgomery32_2e192m2e64m1_6limbs/feaddDisplay.log
deleted file mode 100644
index 630037baa..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,26 +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,
- uint32_t x25, uint8_t x26 = addcarryx_u32(0x0, x5, x15);
- uint32_t x28, uint8_t x29 = addcarryx_u32(x26, x7, x17);
- uint32_t x31, uint8_t x32 = addcarryx_u32(x29, x9, x19);
- uint32_t x34, uint8_t x35 = addcarryx_u32(x32, x11, x21);
- uint32_t x37, uint8_t x38 = addcarryx_u32(x35, x13, x23);
- uint32_t x40, uint8_t x41 = addcarryx_u32(x38, x12, x22);
- uint32_t x43, uint8_t x44 = subborrow_u32(0x0, x25, 0xffffffff);
- uint32_t x46, uint8_t x47 = subborrow_u32(x44, x28, 0xffffffff);
- uint32_t x49, uint8_t x50 = subborrow_u32(x47, x31, 0xfffffffe);
- uint32_t x52, uint8_t x53 = subborrow_u32(x50, x34, 0xffffffff);
- uint32_t x55, uint8_t x56 = subborrow_u32(x53, x37, 0xffffffff);
- uint32_t x58, uint8_t x59 = subborrow_u32(x56, x40, 0xffffffff);
- uint32_t _, uint8_t x62 = subborrow_u32(x59, x41, 0x0);
- uint32_t x63 = cmovznz32(x62, x58, x40);
- uint32_t x64 = cmovznz32(x62, x55, x37);
- uint32_t x65 = cmovznz32(x62, x52, x34);
- uint32_t x66 = cmovznz32(x62, x49, x31);
- uint32_t x67 = cmovznz32(x62, x46, x28);
- uint32_t x68 = cmovznz32(x62, x43, x25);
- return (x63, x64, x65, x66, x67, x68))
-(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/montgomery32_2e192m2e64m1_6limbs/feaddDisplay.v b/src/Specific/montgomery32_2e192m2e64m1_6limbs/feaddDisplay.v
deleted file mode 100644
index 6ee035747..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e192m2e64m1_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e192m2e64m1_6limbs/femul.c b/src/Specific/montgomery32_2e192m2e64m1_6limbs/femul.c
deleted file mode 100644
index 319702b09..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_6limbs/femul.c
+++ /dev/null
@@ -1,260 +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];
- { uint32_t x26; uint32_t x25 = _mulx_u32(x5, x15, &x26);
- { uint32_t x29; uint32_t x28 = _mulx_u32(x5, x17, &x29);
- { uint32_t x32; uint32_t x31 = _mulx_u32(x5, x19, &x32);
- { uint32_t x35; uint32_t x34 = _mulx_u32(x5, x21, &x35);
- { uint32_t x38; uint32_t x37 = _mulx_u32(x5, x23, &x38);
- { uint32_t x41; uint32_t x40 = _mulx_u32(x5, x22, &x41);
- { uint32_t x43; uint8_t x44 = _addcarryx_u32(0x0, x26, x28, &x43);
- { uint32_t x46; uint8_t x47 = _addcarryx_u32(x44, x29, x31, &x46);
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(x47, x32, x34, &x49);
- { uint32_t x52; uint8_t x53 = _addcarryx_u32(x50, x35, x37, &x52);
- { uint32_t x55; uint8_t x56 = _addcarryx_u32(x53, x38, x40, &x55);
- { uint32_t x58; uint8_t _ = _addcarryx_u32(0x0, x56, x41, &x58);
- { uint32_t x62; uint32_t x61 = _mulx_u32(x25, 0xffffffff, &x62);
- { uint32_t x65; uint32_t x64 = _mulx_u32(x25, 0xffffffff, &x65);
- { uint32_t x68; uint32_t x67 = _mulx_u32(x25, 0xfffffffe, &x68);
- { uint32_t x71; uint32_t x70 = _mulx_u32(x25, 0xffffffff, &x71);
- { uint32_t x74; uint32_t x73 = _mulx_u32(x25, 0xffffffff, &x74);
- { uint32_t x77; uint32_t x76 = _mulx_u32(x25, 0xffffffff, &x77);
- { uint32_t x79; uint8_t x80 = _addcarryx_u32(0x0, x62, x64, &x79);
- { uint32_t x82; uint8_t x83 = _addcarryx_u32(x80, x65, x67, &x82);
- { uint32_t x85; uint8_t x86 = _addcarryx_u32(x83, x68, x70, &x85);
- { uint32_t x88; uint8_t x89 = _addcarryx_u32(x86, x71, x73, &x88);
- { uint32_t x91; uint8_t x92 = _addcarryx_u32(x89, x74, x76, &x91);
- { uint32_t x94; uint8_t _ = _addcarryx_u32(0x0, x92, x77, &x94);
- { uint32_t _; uint8_t x98 = _addcarryx_u32(0x0, x25, x61, &_);
- { uint32_t x100; uint8_t x101 = _addcarryx_u32(x98, x43, x79, &x100);
- { uint32_t x103; uint8_t x104 = _addcarryx_u32(x101, x46, x82, &x103);
- { uint32_t x106; uint8_t x107 = _addcarryx_u32(x104, x49, x85, &x106);
- { uint32_t x109; uint8_t x110 = _addcarryx_u32(x107, x52, x88, &x109);
- { uint32_t x112; uint8_t x113 = _addcarryx_u32(x110, x55, x91, &x112);
- { uint32_t x115; uint8_t x116 = _addcarryx_u32(x113, x58, x94, &x115);
- { uint32_t x119; uint32_t x118 = _mulx_u32(x7, x15, &x119);
- { uint32_t x122; uint32_t x121 = _mulx_u32(x7, x17, &x122);
- { uint32_t x125; uint32_t x124 = _mulx_u32(x7, x19, &x125);
- { uint32_t x128; uint32_t x127 = _mulx_u32(x7, x21, &x128);
- { uint32_t x131; uint32_t x130 = _mulx_u32(x7, x23, &x131);
- { uint32_t x134; uint32_t x133 = _mulx_u32(x7, x22, &x134);
- { uint32_t x136; uint8_t x137 = _addcarryx_u32(0x0, x119, x121, &x136);
- { uint32_t x139; uint8_t x140 = _addcarryx_u32(x137, x122, x124, &x139);
- { uint32_t x142; uint8_t x143 = _addcarryx_u32(x140, x125, x127, &x142);
- { uint32_t x145; uint8_t x146 = _addcarryx_u32(x143, x128, x130, &x145);
- { uint32_t x148; uint8_t x149 = _addcarryx_u32(x146, x131, x133, &x148);
- { uint32_t x151; uint8_t _ = _addcarryx_u32(0x0, x149, x134, &x151);
- { uint32_t x154; uint8_t x155 = _addcarryx_u32(0x0, x100, x118, &x154);
- { uint32_t x157; uint8_t x158 = _addcarryx_u32(x155, x103, x136, &x157);
- { uint32_t x160; uint8_t x161 = _addcarryx_u32(x158, x106, x139, &x160);
- { uint32_t x163; uint8_t x164 = _addcarryx_u32(x161, x109, x142, &x163);
- { uint32_t x166; uint8_t x167 = _addcarryx_u32(x164, x112, x145, &x166);
- { uint32_t x169; uint8_t x170 = _addcarryx_u32(x167, x115, x148, &x169);
- { uint32_t x172; uint8_t x173 = _addcarryx_u32(x170, x116, x151, &x172);
- { uint32_t x176; uint32_t x175 = _mulx_u32(x154, 0xffffffff, &x176);
- { uint32_t x179; uint32_t x178 = _mulx_u32(x154, 0xffffffff, &x179);
- { uint32_t x182; uint32_t x181 = _mulx_u32(x154, 0xfffffffe, &x182);
- { uint32_t x185; uint32_t x184 = _mulx_u32(x154, 0xffffffff, &x185);
- { uint32_t x188; uint32_t x187 = _mulx_u32(x154, 0xffffffff, &x188);
- { uint32_t x191; uint32_t x190 = _mulx_u32(x154, 0xffffffff, &x191);
- { uint32_t x193; uint8_t x194 = _addcarryx_u32(0x0, x176, x178, &x193);
- { uint32_t x196; uint8_t x197 = _addcarryx_u32(x194, x179, x181, &x196);
- { uint32_t x199; uint8_t x200 = _addcarryx_u32(x197, x182, x184, &x199);
- { uint32_t x202; uint8_t x203 = _addcarryx_u32(x200, x185, x187, &x202);
- { uint32_t x205; uint8_t x206 = _addcarryx_u32(x203, x188, x190, &x205);
- { uint32_t x208; uint8_t _ = _addcarryx_u32(0x0, x206, x191, &x208);
- { uint32_t _; uint8_t x212 = _addcarryx_u32(0x0, x154, x175, &_);
- { uint32_t x214; uint8_t x215 = _addcarryx_u32(x212, x157, x193, &x214);
- { uint32_t x217; uint8_t x218 = _addcarryx_u32(x215, x160, x196, &x217);
- { uint32_t x220; uint8_t x221 = _addcarryx_u32(x218, x163, x199, &x220);
- { uint32_t x223; uint8_t x224 = _addcarryx_u32(x221, x166, x202, &x223);
- { uint32_t x226; uint8_t x227 = _addcarryx_u32(x224, x169, x205, &x226);
- { uint32_t x229; uint8_t x230 = _addcarryx_u32(x227, x172, x208, &x229);
- { uint8_t x231 = (x230 + x173);
- { uint32_t x234; uint32_t x233 = _mulx_u32(x9, x15, &x234);
- { uint32_t x237; uint32_t x236 = _mulx_u32(x9, x17, &x237);
- { uint32_t x240; uint32_t x239 = _mulx_u32(x9, x19, &x240);
- { uint32_t x243; uint32_t x242 = _mulx_u32(x9, x21, &x243);
- { uint32_t x246; uint32_t x245 = _mulx_u32(x9, x23, &x246);
- { uint32_t x249; uint32_t x248 = _mulx_u32(x9, x22, &x249);
- { uint32_t x251; uint8_t x252 = _addcarryx_u32(0x0, x234, x236, &x251);
- { uint32_t x254; uint8_t x255 = _addcarryx_u32(x252, x237, x239, &x254);
- { uint32_t x257; uint8_t x258 = _addcarryx_u32(x255, x240, x242, &x257);
- { uint32_t x260; uint8_t x261 = _addcarryx_u32(x258, x243, x245, &x260);
- { uint32_t x263; uint8_t x264 = _addcarryx_u32(x261, x246, x248, &x263);
- { uint32_t x266; uint8_t _ = _addcarryx_u32(0x0, x264, x249, &x266);
- { uint32_t x269; uint8_t x270 = _addcarryx_u32(0x0, x214, x233, &x269);
- { uint32_t x272; uint8_t x273 = _addcarryx_u32(x270, x217, x251, &x272);
- { uint32_t x275; uint8_t x276 = _addcarryx_u32(x273, x220, x254, &x275);
- { uint32_t x278; uint8_t x279 = _addcarryx_u32(x276, x223, x257, &x278);
- { uint32_t x281; uint8_t x282 = _addcarryx_u32(x279, x226, x260, &x281);
- { uint32_t x284; uint8_t x285 = _addcarryx_u32(x282, x229, x263, &x284);
- { uint32_t x287; uint8_t x288 = _addcarryx_u32(x285, x231, x266, &x287);
- { uint32_t x291; uint32_t x290 = _mulx_u32(x269, 0xffffffff, &x291);
- { uint32_t x294; uint32_t x293 = _mulx_u32(x269, 0xffffffff, &x294);
- { uint32_t x297; uint32_t x296 = _mulx_u32(x269, 0xfffffffe, &x297);
- { uint32_t x300; uint32_t x299 = _mulx_u32(x269, 0xffffffff, &x300);
- { uint32_t x303; uint32_t x302 = _mulx_u32(x269, 0xffffffff, &x303);
- { uint32_t x306; uint32_t x305 = _mulx_u32(x269, 0xffffffff, &x306);
- { uint32_t x308; uint8_t x309 = _addcarryx_u32(0x0, x291, x293, &x308);
- { uint32_t x311; uint8_t x312 = _addcarryx_u32(x309, x294, x296, &x311);
- { uint32_t x314; uint8_t x315 = _addcarryx_u32(x312, x297, x299, &x314);
- { uint32_t x317; uint8_t x318 = _addcarryx_u32(x315, x300, x302, &x317);
- { uint32_t x320; uint8_t x321 = _addcarryx_u32(x318, x303, x305, &x320);
- { uint32_t x323; uint8_t _ = _addcarryx_u32(0x0, x321, x306, &x323);
- { uint32_t _; uint8_t x327 = _addcarryx_u32(0x0, x269, x290, &_);
- { uint32_t x329; uint8_t x330 = _addcarryx_u32(x327, x272, x308, &x329);
- { uint32_t x332; uint8_t x333 = _addcarryx_u32(x330, x275, x311, &x332);
- { uint32_t x335; uint8_t x336 = _addcarryx_u32(x333, x278, x314, &x335);
- { uint32_t x338; uint8_t x339 = _addcarryx_u32(x336, x281, x317, &x338);
- { uint32_t x341; uint8_t x342 = _addcarryx_u32(x339, x284, x320, &x341);
- { uint32_t x344; uint8_t x345 = _addcarryx_u32(x342, x287, x323, &x344);
- { uint8_t x346 = (x345 + x288);
- { uint32_t x349; uint32_t x348 = _mulx_u32(x11, x15, &x349);
- { uint32_t x352; uint32_t x351 = _mulx_u32(x11, x17, &x352);
- { uint32_t x355; uint32_t x354 = _mulx_u32(x11, x19, &x355);
- { uint32_t x358; uint32_t x357 = _mulx_u32(x11, x21, &x358);
- { uint32_t x361; uint32_t x360 = _mulx_u32(x11, x23, &x361);
- { uint32_t x364; uint32_t x363 = _mulx_u32(x11, x22, &x364);
- { uint32_t x366; uint8_t x367 = _addcarryx_u32(0x0, x349, x351, &x366);
- { uint32_t x369; uint8_t x370 = _addcarryx_u32(x367, x352, x354, &x369);
- { uint32_t x372; uint8_t x373 = _addcarryx_u32(x370, x355, x357, &x372);
- { uint32_t x375; uint8_t x376 = _addcarryx_u32(x373, x358, x360, &x375);
- { uint32_t x378; uint8_t x379 = _addcarryx_u32(x376, x361, x363, &x378);
- { uint32_t x381; uint8_t _ = _addcarryx_u32(0x0, x379, x364, &x381);
- { uint32_t x384; uint8_t x385 = _addcarryx_u32(0x0, x329, x348, &x384);
- { uint32_t x387; uint8_t x388 = _addcarryx_u32(x385, x332, x366, &x387);
- { uint32_t x390; uint8_t x391 = _addcarryx_u32(x388, x335, x369, &x390);
- { uint32_t x393; uint8_t x394 = _addcarryx_u32(x391, x338, x372, &x393);
- { uint32_t x396; uint8_t x397 = _addcarryx_u32(x394, x341, x375, &x396);
- { uint32_t x399; uint8_t x400 = _addcarryx_u32(x397, x344, x378, &x399);
- { uint32_t x402; uint8_t x403 = _addcarryx_u32(x400, x346, x381, &x402);
- { uint32_t x406; uint32_t x405 = _mulx_u32(x384, 0xffffffff, &x406);
- { uint32_t x409; uint32_t x408 = _mulx_u32(x384, 0xffffffff, &x409);
- { uint32_t x412; uint32_t x411 = _mulx_u32(x384, 0xfffffffe, &x412);
- { uint32_t x415; uint32_t x414 = _mulx_u32(x384, 0xffffffff, &x415);
- { uint32_t x418; uint32_t x417 = _mulx_u32(x384, 0xffffffff, &x418);
- { uint32_t x421; uint32_t x420 = _mulx_u32(x384, 0xffffffff, &x421);
- { uint32_t x423; uint8_t x424 = _addcarryx_u32(0x0, x406, x408, &x423);
- { uint32_t x426; uint8_t x427 = _addcarryx_u32(x424, x409, x411, &x426);
- { uint32_t x429; uint8_t x430 = _addcarryx_u32(x427, x412, x414, &x429);
- { uint32_t x432; uint8_t x433 = _addcarryx_u32(x430, x415, x417, &x432);
- { uint32_t x435; uint8_t x436 = _addcarryx_u32(x433, x418, x420, &x435);
- { uint32_t x438; uint8_t _ = _addcarryx_u32(0x0, x436, x421, &x438);
- { uint32_t _; uint8_t x442 = _addcarryx_u32(0x0, x384, x405, &_);
- { uint32_t x444; uint8_t x445 = _addcarryx_u32(x442, x387, x423, &x444);
- { uint32_t x447; uint8_t x448 = _addcarryx_u32(x445, x390, x426, &x447);
- { uint32_t x450; uint8_t x451 = _addcarryx_u32(x448, x393, x429, &x450);
- { uint32_t x453; uint8_t x454 = _addcarryx_u32(x451, x396, x432, &x453);
- { uint32_t x456; uint8_t x457 = _addcarryx_u32(x454, x399, x435, &x456);
- { uint32_t x459; uint8_t x460 = _addcarryx_u32(x457, x402, x438, &x459);
- { uint8_t x461 = (x460 + x403);
- { uint32_t x464; uint32_t x463 = _mulx_u32(x13, x15, &x464);
- { uint32_t x467; uint32_t x466 = _mulx_u32(x13, x17, &x467);
- { uint32_t x470; uint32_t x469 = _mulx_u32(x13, x19, &x470);
- { uint32_t x473; uint32_t x472 = _mulx_u32(x13, x21, &x473);
- { uint32_t x476; uint32_t x475 = _mulx_u32(x13, x23, &x476);
- { uint32_t x479; uint32_t x478 = _mulx_u32(x13, x22, &x479);
- { uint32_t x481; uint8_t x482 = _addcarryx_u32(0x0, x464, x466, &x481);
- { uint32_t x484; uint8_t x485 = _addcarryx_u32(x482, x467, x469, &x484);
- { uint32_t x487; uint8_t x488 = _addcarryx_u32(x485, x470, x472, &x487);
- { uint32_t x490; uint8_t x491 = _addcarryx_u32(x488, x473, x475, &x490);
- { uint32_t x493; uint8_t x494 = _addcarryx_u32(x491, x476, x478, &x493);
- { uint32_t x496; uint8_t _ = _addcarryx_u32(0x0, x494, x479, &x496);
- { uint32_t x499; uint8_t x500 = _addcarryx_u32(0x0, x444, x463, &x499);
- { uint32_t x502; uint8_t x503 = _addcarryx_u32(x500, x447, x481, &x502);
- { uint32_t x505; uint8_t x506 = _addcarryx_u32(x503, x450, x484, &x505);
- { uint32_t x508; uint8_t x509 = _addcarryx_u32(x506, x453, x487, &x508);
- { uint32_t x511; uint8_t x512 = _addcarryx_u32(x509, x456, x490, &x511);
- { uint32_t x514; uint8_t x515 = _addcarryx_u32(x512, x459, x493, &x514);
- { uint32_t x517; uint8_t x518 = _addcarryx_u32(x515, x461, x496, &x517);
- { uint32_t x521; uint32_t x520 = _mulx_u32(x499, 0xffffffff, &x521);
- { uint32_t x524; uint32_t x523 = _mulx_u32(x499, 0xffffffff, &x524);
- { uint32_t x527; uint32_t x526 = _mulx_u32(x499, 0xfffffffe, &x527);
- { uint32_t x530; uint32_t x529 = _mulx_u32(x499, 0xffffffff, &x530);
- { uint32_t x533; uint32_t x532 = _mulx_u32(x499, 0xffffffff, &x533);
- { uint32_t x536; uint32_t x535 = _mulx_u32(x499, 0xffffffff, &x536);
- { uint32_t x538; uint8_t x539 = _addcarryx_u32(0x0, x521, x523, &x538);
- { uint32_t x541; uint8_t x542 = _addcarryx_u32(x539, x524, x526, &x541);
- { uint32_t x544; uint8_t x545 = _addcarryx_u32(x542, x527, x529, &x544);
- { uint32_t x547; uint8_t x548 = _addcarryx_u32(x545, x530, x532, &x547);
- { uint32_t x550; uint8_t x551 = _addcarryx_u32(x548, x533, x535, &x550);
- { uint32_t x553; uint8_t _ = _addcarryx_u32(0x0, x551, x536, &x553);
- { uint32_t _; uint8_t x557 = _addcarryx_u32(0x0, x499, x520, &_);
- { uint32_t x559; uint8_t x560 = _addcarryx_u32(x557, x502, x538, &x559);
- { uint32_t x562; uint8_t x563 = _addcarryx_u32(x560, x505, x541, &x562);
- { uint32_t x565; uint8_t x566 = _addcarryx_u32(x563, x508, x544, &x565);
- { uint32_t x568; uint8_t x569 = _addcarryx_u32(x566, x511, x547, &x568);
- { uint32_t x571; uint8_t x572 = _addcarryx_u32(x569, x514, x550, &x571);
- { uint32_t x574; uint8_t x575 = _addcarryx_u32(x572, x517, x553, &x574);
- { uint8_t x576 = (x575 + x518);
- { uint32_t x579; uint32_t x578 = _mulx_u32(x12, x15, &x579);
- { uint32_t x582; uint32_t x581 = _mulx_u32(x12, x17, &x582);
- { uint32_t x585; uint32_t x584 = _mulx_u32(x12, x19, &x585);
- { uint32_t x588; uint32_t x587 = _mulx_u32(x12, x21, &x588);
- { uint32_t x591; uint32_t x590 = _mulx_u32(x12, x23, &x591);
- { uint32_t x594; uint32_t x593 = _mulx_u32(x12, x22, &x594);
- { uint32_t x596; uint8_t x597 = _addcarryx_u32(0x0, x579, x581, &x596);
- { uint32_t x599; uint8_t x600 = _addcarryx_u32(x597, x582, x584, &x599);
- { uint32_t x602; uint8_t x603 = _addcarryx_u32(x600, x585, x587, &x602);
- { uint32_t x605; uint8_t x606 = _addcarryx_u32(x603, x588, x590, &x605);
- { uint32_t x608; uint8_t x609 = _addcarryx_u32(x606, x591, x593, &x608);
- { uint32_t x611; uint8_t _ = _addcarryx_u32(0x0, x609, x594, &x611);
- { uint32_t x614; uint8_t x615 = _addcarryx_u32(0x0, x559, x578, &x614);
- { uint32_t x617; uint8_t x618 = _addcarryx_u32(x615, x562, x596, &x617);
- { uint32_t x620; uint8_t x621 = _addcarryx_u32(x618, x565, x599, &x620);
- { uint32_t x623; uint8_t x624 = _addcarryx_u32(x621, x568, x602, &x623);
- { uint32_t x626; uint8_t x627 = _addcarryx_u32(x624, x571, x605, &x626);
- { uint32_t x629; uint8_t x630 = _addcarryx_u32(x627, x574, x608, &x629);
- { uint32_t x632; uint8_t x633 = _addcarryx_u32(x630, x576, x611, &x632);
- { uint32_t x636; uint32_t x635 = _mulx_u32(x614, 0xffffffff, &x636);
- { uint32_t x639; uint32_t x638 = _mulx_u32(x614, 0xffffffff, &x639);
- { uint32_t x642; uint32_t x641 = _mulx_u32(x614, 0xfffffffe, &x642);
- { uint32_t x645; uint32_t x644 = _mulx_u32(x614, 0xffffffff, &x645);
- { uint32_t x648; uint32_t x647 = _mulx_u32(x614, 0xffffffff, &x648);
- { uint32_t x651; uint32_t x650 = _mulx_u32(x614, 0xffffffff, &x651);
- { uint32_t x653; uint8_t x654 = _addcarryx_u32(0x0, x636, x638, &x653);
- { uint32_t x656; uint8_t x657 = _addcarryx_u32(x654, x639, x641, &x656);
- { uint32_t x659; uint8_t x660 = _addcarryx_u32(x657, x642, x644, &x659);
- { uint32_t x662; uint8_t x663 = _addcarryx_u32(x660, x645, x647, &x662);
- { uint32_t x665; uint8_t x666 = _addcarryx_u32(x663, x648, x650, &x665);
- { uint32_t x668; uint8_t _ = _addcarryx_u32(0x0, x666, x651, &x668);
- { uint32_t _; uint8_t x672 = _addcarryx_u32(0x0, x614, x635, &_);
- { uint32_t x674; uint8_t x675 = _addcarryx_u32(x672, x617, x653, &x674);
- { uint32_t x677; uint8_t x678 = _addcarryx_u32(x675, x620, x656, &x677);
- { uint32_t x680; uint8_t x681 = _addcarryx_u32(x678, x623, x659, &x680);
- { uint32_t x683; uint8_t x684 = _addcarryx_u32(x681, x626, x662, &x683);
- { uint32_t x686; uint8_t x687 = _addcarryx_u32(x684, x629, x665, &x686);
- { uint32_t x689; uint8_t x690 = _addcarryx_u32(x687, x632, x668, &x689);
- { uint8_t x691 = (x690 + x633);
- { uint32_t x693; uint8_t x694 = _subborrow_u32(0x0, x674, 0xffffffff, &x693);
- { uint32_t x696; uint8_t x697 = _subborrow_u32(x694, x677, 0xffffffff, &x696);
- { uint32_t x699; uint8_t x700 = _subborrow_u32(x697, x680, 0xfffffffe, &x699);
- { uint32_t x702; uint8_t x703 = _subborrow_u32(x700, x683, 0xffffffff, &x702);
- { uint32_t x705; uint8_t x706 = _subborrow_u32(x703, x686, 0xffffffff, &x705);
- { uint32_t x708; uint8_t x709 = _subborrow_u32(x706, x689, 0xffffffff, &x708);
- { uint32_t _; uint8_t x712 = _subborrow_u32(x709, x691, 0x0, &_);
- { uint32_t x713 = cmovznz32(x712, x708, x689);
- { uint32_t x714 = cmovznz32(x712, x705, x686);
- { uint32_t x715 = cmovznz32(x712, x702, x683);
- { uint32_t x716 = cmovznz32(x712, x699, x680);
- { uint32_t x717 = cmovznz32(x712, x696, x677);
- { uint32_t x718 = cmovznz32(x712, x693, x674);
- out[0] = x718;
- out[1] = x717;
- out[2] = x716;
- out[3] = x715;
- out[4] = x714;
- out[5] = x713;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e192m2e64m1_6limbs/femul.v b/src/Specific/montgomery32_2e192m2e64m1_6limbs/femul.v
deleted file mode 100644
index fa7d9599c..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e192m2e64m1_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e192m2e64m1_6limbs/femulDisplay.log b/src/Specific/montgomery32_2e192m2e64m1_6limbs/femulDisplay.log
deleted file mode 100644
index 8af983b0d..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,246 +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,
- uint32_t x25, uint32_t x26 = mulx_u32(x5, x15);
- uint32_t x28, uint32_t x29 = mulx_u32(x5, x17);
- uint32_t x31, uint32_t x32 = mulx_u32(x5, x19);
- uint32_t x34, uint32_t x35 = mulx_u32(x5, x21);
- uint32_t x37, uint32_t x38 = mulx_u32(x5, x23);
- uint32_t x40, uint32_t x41 = mulx_u32(x5, x22);
- uint32_t x43, uint8_t x44 = addcarryx_u32(0x0, x26, x28);
- uint32_t x46, uint8_t x47 = addcarryx_u32(x44, x29, x31);
- uint32_t x49, uint8_t x50 = addcarryx_u32(x47, x32, x34);
- uint32_t x52, uint8_t x53 = addcarryx_u32(x50, x35, x37);
- uint32_t x55, uint8_t x56 = addcarryx_u32(x53, x38, x40);
- uint32_t x58, uint8_t _ = addcarryx_u32(0x0, x56, x41);
- uint32_t x61, uint32_t x62 = mulx_u32(x25, 0xffffffff);
- uint32_t x64, uint32_t x65 = mulx_u32(x25, 0xffffffff);
- uint32_t x67, uint32_t x68 = mulx_u32(x25, 0xfffffffe);
- uint32_t x70, uint32_t x71 = mulx_u32(x25, 0xffffffff);
- uint32_t x73, uint32_t x74 = mulx_u32(x25, 0xffffffff);
- uint32_t x76, uint32_t x77 = mulx_u32(x25, 0xffffffff);
- uint32_t x79, uint8_t x80 = addcarryx_u32(0x0, x62, x64);
- uint32_t x82, uint8_t x83 = addcarryx_u32(x80, x65, x67);
- uint32_t x85, uint8_t x86 = addcarryx_u32(x83, x68, x70);
- uint32_t x88, uint8_t x89 = addcarryx_u32(x86, x71, x73);
- uint32_t x91, uint8_t x92 = addcarryx_u32(x89, x74, x76);
- uint32_t x94, uint8_t _ = addcarryx_u32(0x0, x92, x77);
- uint32_t _, uint8_t x98 = addcarryx_u32(0x0, x25, x61);
- uint32_t x100, uint8_t x101 = addcarryx_u32(x98, x43, x79);
- uint32_t x103, uint8_t x104 = addcarryx_u32(x101, x46, x82);
- uint32_t x106, uint8_t x107 = addcarryx_u32(x104, x49, x85);
- uint32_t x109, uint8_t x110 = addcarryx_u32(x107, x52, x88);
- uint32_t x112, uint8_t x113 = addcarryx_u32(x110, x55, x91);
- uint32_t x115, uint8_t x116 = addcarryx_u32(x113, x58, x94);
- uint32_t x118, uint32_t x119 = mulx_u32(x7, x15);
- uint32_t x121, uint32_t x122 = mulx_u32(x7, x17);
- uint32_t x124, uint32_t x125 = mulx_u32(x7, x19);
- uint32_t x127, uint32_t x128 = mulx_u32(x7, x21);
- uint32_t x130, uint32_t x131 = mulx_u32(x7, x23);
- uint32_t x133, uint32_t x134 = mulx_u32(x7, x22);
- uint32_t x136, uint8_t x137 = addcarryx_u32(0x0, x119, x121);
- uint32_t x139, uint8_t x140 = addcarryx_u32(x137, x122, x124);
- uint32_t x142, uint8_t x143 = addcarryx_u32(x140, x125, x127);
- uint32_t x145, uint8_t x146 = addcarryx_u32(x143, x128, x130);
- uint32_t x148, uint8_t x149 = addcarryx_u32(x146, x131, x133);
- uint32_t x151, uint8_t _ = addcarryx_u32(0x0, x149, x134);
- uint32_t x154, uint8_t x155 = addcarryx_u32(0x0, x100, x118);
- uint32_t x157, uint8_t x158 = addcarryx_u32(x155, x103, x136);
- uint32_t x160, uint8_t x161 = addcarryx_u32(x158, x106, x139);
- uint32_t x163, uint8_t x164 = addcarryx_u32(x161, x109, x142);
- uint32_t x166, uint8_t x167 = addcarryx_u32(x164, x112, x145);
- uint32_t x169, uint8_t x170 = addcarryx_u32(x167, x115, x148);
- uint32_t x172, uint8_t x173 = addcarryx_u32(x170, x116, x151);
- uint32_t x175, uint32_t x176 = mulx_u32(x154, 0xffffffff);
- uint32_t x178, uint32_t x179 = mulx_u32(x154, 0xffffffff);
- uint32_t x181, uint32_t x182 = mulx_u32(x154, 0xfffffffe);
- uint32_t x184, uint32_t x185 = mulx_u32(x154, 0xffffffff);
- uint32_t x187, uint32_t x188 = mulx_u32(x154, 0xffffffff);
- uint32_t x190, uint32_t x191 = mulx_u32(x154, 0xffffffff);
- uint32_t x193, uint8_t x194 = addcarryx_u32(0x0, x176, x178);
- uint32_t x196, uint8_t x197 = addcarryx_u32(x194, x179, x181);
- uint32_t x199, uint8_t x200 = addcarryx_u32(x197, x182, x184);
- uint32_t x202, uint8_t x203 = addcarryx_u32(x200, x185, x187);
- uint32_t x205, uint8_t x206 = addcarryx_u32(x203, x188, x190);
- uint32_t x208, uint8_t _ = addcarryx_u32(0x0, x206, x191);
- uint32_t _, uint8_t x212 = addcarryx_u32(0x0, x154, x175);
- uint32_t x214, uint8_t x215 = addcarryx_u32(x212, x157, x193);
- uint32_t x217, uint8_t x218 = addcarryx_u32(x215, x160, x196);
- uint32_t x220, uint8_t x221 = addcarryx_u32(x218, x163, x199);
- uint32_t x223, uint8_t x224 = addcarryx_u32(x221, x166, x202);
- uint32_t x226, uint8_t x227 = addcarryx_u32(x224, x169, x205);
- uint32_t x229, uint8_t x230 = addcarryx_u32(x227, x172, x208);
- uint8_t x231 = (x230 + x173);
- uint32_t x233, uint32_t x234 = mulx_u32(x9, x15);
- uint32_t x236, uint32_t x237 = mulx_u32(x9, x17);
- uint32_t x239, uint32_t x240 = mulx_u32(x9, x19);
- uint32_t x242, uint32_t x243 = mulx_u32(x9, x21);
- uint32_t x245, uint32_t x246 = mulx_u32(x9, x23);
- uint32_t x248, uint32_t x249 = mulx_u32(x9, x22);
- uint32_t x251, uint8_t x252 = addcarryx_u32(0x0, x234, x236);
- uint32_t x254, uint8_t x255 = addcarryx_u32(x252, x237, x239);
- uint32_t x257, uint8_t x258 = addcarryx_u32(x255, x240, x242);
- uint32_t x260, uint8_t x261 = addcarryx_u32(x258, x243, x245);
- uint32_t x263, uint8_t x264 = addcarryx_u32(x261, x246, x248);
- uint32_t x266, uint8_t _ = addcarryx_u32(0x0, x264, x249);
- uint32_t x269, uint8_t x270 = addcarryx_u32(0x0, x214, x233);
- uint32_t x272, uint8_t x273 = addcarryx_u32(x270, x217, x251);
- uint32_t x275, uint8_t x276 = addcarryx_u32(x273, x220, x254);
- uint32_t x278, uint8_t x279 = addcarryx_u32(x276, x223, x257);
- uint32_t x281, uint8_t x282 = addcarryx_u32(x279, x226, x260);
- uint32_t x284, uint8_t x285 = addcarryx_u32(x282, x229, x263);
- uint32_t x287, uint8_t x288 = addcarryx_u32(x285, x231, x266);
- uint32_t x290, uint32_t x291 = mulx_u32(x269, 0xffffffff);
- uint32_t x293, uint32_t x294 = mulx_u32(x269, 0xffffffff);
- uint32_t x296, uint32_t x297 = mulx_u32(x269, 0xfffffffe);
- uint32_t x299, uint32_t x300 = mulx_u32(x269, 0xffffffff);
- uint32_t x302, uint32_t x303 = mulx_u32(x269, 0xffffffff);
- uint32_t x305, uint32_t x306 = mulx_u32(x269, 0xffffffff);
- uint32_t x308, uint8_t x309 = addcarryx_u32(0x0, x291, x293);
- uint32_t x311, uint8_t x312 = addcarryx_u32(x309, x294, x296);
- uint32_t x314, uint8_t x315 = addcarryx_u32(x312, x297, x299);
- uint32_t x317, uint8_t x318 = addcarryx_u32(x315, x300, x302);
- uint32_t x320, uint8_t x321 = addcarryx_u32(x318, x303, x305);
- uint32_t x323, uint8_t _ = addcarryx_u32(0x0, x321, x306);
- uint32_t _, uint8_t x327 = addcarryx_u32(0x0, x269, x290);
- uint32_t x329, uint8_t x330 = addcarryx_u32(x327, x272, x308);
- uint32_t x332, uint8_t x333 = addcarryx_u32(x330, x275, x311);
- uint32_t x335, uint8_t x336 = addcarryx_u32(x333, x278, x314);
- uint32_t x338, uint8_t x339 = addcarryx_u32(x336, x281, x317);
- uint32_t x341, uint8_t x342 = addcarryx_u32(x339, x284, x320);
- uint32_t x344, uint8_t x345 = addcarryx_u32(x342, x287, x323);
- uint8_t x346 = (x345 + x288);
- uint32_t x348, uint32_t x349 = mulx_u32(x11, x15);
- uint32_t x351, uint32_t x352 = mulx_u32(x11, x17);
- uint32_t x354, uint32_t x355 = mulx_u32(x11, x19);
- uint32_t x357, uint32_t x358 = mulx_u32(x11, x21);
- uint32_t x360, uint32_t x361 = mulx_u32(x11, x23);
- uint32_t x363, uint32_t x364 = mulx_u32(x11, x22);
- uint32_t x366, uint8_t x367 = addcarryx_u32(0x0, x349, x351);
- uint32_t x369, uint8_t x370 = addcarryx_u32(x367, x352, x354);
- uint32_t x372, uint8_t x373 = addcarryx_u32(x370, x355, x357);
- uint32_t x375, uint8_t x376 = addcarryx_u32(x373, x358, x360);
- uint32_t x378, uint8_t x379 = addcarryx_u32(x376, x361, x363);
- uint32_t x381, uint8_t _ = addcarryx_u32(0x0, x379, x364);
- uint32_t x384, uint8_t x385 = addcarryx_u32(0x0, x329, x348);
- uint32_t x387, uint8_t x388 = addcarryx_u32(x385, x332, x366);
- uint32_t x390, uint8_t x391 = addcarryx_u32(x388, x335, x369);
- uint32_t x393, uint8_t x394 = addcarryx_u32(x391, x338, x372);
- uint32_t x396, uint8_t x397 = addcarryx_u32(x394, x341, x375);
- uint32_t x399, uint8_t x400 = addcarryx_u32(x397, x344, x378);
- uint32_t x402, uint8_t x403 = addcarryx_u32(x400, x346, x381);
- uint32_t x405, uint32_t x406 = mulx_u32(x384, 0xffffffff);
- uint32_t x408, uint32_t x409 = mulx_u32(x384, 0xffffffff);
- uint32_t x411, uint32_t x412 = mulx_u32(x384, 0xfffffffe);
- uint32_t x414, uint32_t x415 = mulx_u32(x384, 0xffffffff);
- uint32_t x417, uint32_t x418 = mulx_u32(x384, 0xffffffff);
- uint32_t x420, uint32_t x421 = mulx_u32(x384, 0xffffffff);
- uint32_t x423, uint8_t x424 = addcarryx_u32(0x0, x406, x408);
- uint32_t x426, uint8_t x427 = addcarryx_u32(x424, x409, x411);
- uint32_t x429, uint8_t x430 = addcarryx_u32(x427, x412, x414);
- uint32_t x432, uint8_t x433 = addcarryx_u32(x430, x415, x417);
- uint32_t x435, uint8_t x436 = addcarryx_u32(x433, x418, x420);
- uint32_t x438, uint8_t _ = addcarryx_u32(0x0, x436, x421);
- uint32_t _, uint8_t x442 = addcarryx_u32(0x0, x384, x405);
- uint32_t x444, uint8_t x445 = addcarryx_u32(x442, x387, x423);
- uint32_t x447, uint8_t x448 = addcarryx_u32(x445, x390, x426);
- uint32_t x450, uint8_t x451 = addcarryx_u32(x448, x393, x429);
- uint32_t x453, uint8_t x454 = addcarryx_u32(x451, x396, x432);
- uint32_t x456, uint8_t x457 = addcarryx_u32(x454, x399, x435);
- uint32_t x459, uint8_t x460 = addcarryx_u32(x457, x402, x438);
- uint8_t x461 = (x460 + x403);
- uint32_t x463, uint32_t x464 = mulx_u32(x13, x15);
- uint32_t x466, uint32_t x467 = mulx_u32(x13, x17);
- uint32_t x469, uint32_t x470 = mulx_u32(x13, x19);
- uint32_t x472, uint32_t x473 = mulx_u32(x13, x21);
- uint32_t x475, uint32_t x476 = mulx_u32(x13, x23);
- uint32_t x478, uint32_t x479 = mulx_u32(x13, x22);
- uint32_t x481, uint8_t x482 = addcarryx_u32(0x0, x464, x466);
- uint32_t x484, uint8_t x485 = addcarryx_u32(x482, x467, x469);
- uint32_t x487, uint8_t x488 = addcarryx_u32(x485, x470, x472);
- uint32_t x490, uint8_t x491 = addcarryx_u32(x488, x473, x475);
- uint32_t x493, uint8_t x494 = addcarryx_u32(x491, x476, x478);
- uint32_t x496, uint8_t _ = addcarryx_u32(0x0, x494, x479);
- uint32_t x499, uint8_t x500 = addcarryx_u32(0x0, x444, x463);
- uint32_t x502, uint8_t x503 = addcarryx_u32(x500, x447, x481);
- uint32_t x505, uint8_t x506 = addcarryx_u32(x503, x450, x484);
- uint32_t x508, uint8_t x509 = addcarryx_u32(x506, x453, x487);
- uint32_t x511, uint8_t x512 = addcarryx_u32(x509, x456, x490);
- uint32_t x514, uint8_t x515 = addcarryx_u32(x512, x459, x493);
- uint32_t x517, uint8_t x518 = addcarryx_u32(x515, x461, x496);
- uint32_t x520, uint32_t x521 = mulx_u32(x499, 0xffffffff);
- uint32_t x523, uint32_t x524 = mulx_u32(x499, 0xffffffff);
- uint32_t x526, uint32_t x527 = mulx_u32(x499, 0xfffffffe);
- uint32_t x529, uint32_t x530 = mulx_u32(x499, 0xffffffff);
- uint32_t x532, uint32_t x533 = mulx_u32(x499, 0xffffffff);
- uint32_t x535, uint32_t x536 = mulx_u32(x499, 0xffffffff);
- uint32_t x538, uint8_t x539 = addcarryx_u32(0x0, x521, x523);
- uint32_t x541, uint8_t x542 = addcarryx_u32(x539, x524, x526);
- uint32_t x544, uint8_t x545 = addcarryx_u32(x542, x527, x529);
- uint32_t x547, uint8_t x548 = addcarryx_u32(x545, x530, x532);
- uint32_t x550, uint8_t x551 = addcarryx_u32(x548, x533, x535);
- uint32_t x553, uint8_t _ = addcarryx_u32(0x0, x551, x536);
- uint32_t _, uint8_t x557 = addcarryx_u32(0x0, x499, x520);
- uint32_t x559, uint8_t x560 = addcarryx_u32(x557, x502, x538);
- uint32_t x562, uint8_t x563 = addcarryx_u32(x560, x505, x541);
- uint32_t x565, uint8_t x566 = addcarryx_u32(x563, x508, x544);
- uint32_t x568, uint8_t x569 = addcarryx_u32(x566, x511, x547);
- uint32_t x571, uint8_t x572 = addcarryx_u32(x569, x514, x550);
- uint32_t x574, uint8_t x575 = addcarryx_u32(x572, x517, x553);
- uint8_t x576 = (x575 + x518);
- uint32_t x578, uint32_t x579 = mulx_u32(x12, x15);
- uint32_t x581, uint32_t x582 = mulx_u32(x12, x17);
- uint32_t x584, uint32_t x585 = mulx_u32(x12, x19);
- uint32_t x587, uint32_t x588 = mulx_u32(x12, x21);
- uint32_t x590, uint32_t x591 = mulx_u32(x12, x23);
- uint32_t x593, uint32_t x594 = mulx_u32(x12, x22);
- uint32_t x596, uint8_t x597 = addcarryx_u32(0x0, x579, x581);
- uint32_t x599, uint8_t x600 = addcarryx_u32(x597, x582, x584);
- uint32_t x602, uint8_t x603 = addcarryx_u32(x600, x585, x587);
- uint32_t x605, uint8_t x606 = addcarryx_u32(x603, x588, x590);
- uint32_t x608, uint8_t x609 = addcarryx_u32(x606, x591, x593);
- uint32_t x611, uint8_t _ = addcarryx_u32(0x0, x609, x594);
- uint32_t x614, uint8_t x615 = addcarryx_u32(0x0, x559, x578);
- uint32_t x617, uint8_t x618 = addcarryx_u32(x615, x562, x596);
- uint32_t x620, uint8_t x621 = addcarryx_u32(x618, x565, x599);
- uint32_t x623, uint8_t x624 = addcarryx_u32(x621, x568, x602);
- uint32_t x626, uint8_t x627 = addcarryx_u32(x624, x571, x605);
- uint32_t x629, uint8_t x630 = addcarryx_u32(x627, x574, x608);
- uint32_t x632, uint8_t x633 = addcarryx_u32(x630, x576, x611);
- uint32_t x635, uint32_t x636 = mulx_u32(x614, 0xffffffff);
- uint32_t x638, uint32_t x639 = mulx_u32(x614, 0xffffffff);
- uint32_t x641, uint32_t x642 = mulx_u32(x614, 0xfffffffe);
- uint32_t x644, uint32_t x645 = mulx_u32(x614, 0xffffffff);
- uint32_t x647, uint32_t x648 = mulx_u32(x614, 0xffffffff);
- uint32_t x650, uint32_t x651 = mulx_u32(x614, 0xffffffff);
- uint32_t x653, uint8_t x654 = addcarryx_u32(0x0, x636, x638);
- uint32_t x656, uint8_t x657 = addcarryx_u32(x654, x639, x641);
- uint32_t x659, uint8_t x660 = addcarryx_u32(x657, x642, x644);
- uint32_t x662, uint8_t x663 = addcarryx_u32(x660, x645, x647);
- uint32_t x665, uint8_t x666 = addcarryx_u32(x663, x648, x650);
- uint32_t x668, uint8_t _ = addcarryx_u32(0x0, x666, x651);
- uint32_t _, uint8_t x672 = addcarryx_u32(0x0, x614, x635);
- uint32_t x674, uint8_t x675 = addcarryx_u32(x672, x617, x653);
- uint32_t x677, uint8_t x678 = addcarryx_u32(x675, x620, x656);
- uint32_t x680, uint8_t x681 = addcarryx_u32(x678, x623, x659);
- uint32_t x683, uint8_t x684 = addcarryx_u32(x681, x626, x662);
- uint32_t x686, uint8_t x687 = addcarryx_u32(x684, x629, x665);
- uint32_t x689, uint8_t x690 = addcarryx_u32(x687, x632, x668);
- uint8_t x691 = (x690 + x633);
- uint32_t x693, uint8_t x694 = subborrow_u32(0x0, x674, 0xffffffff);
- uint32_t x696, uint8_t x697 = subborrow_u32(x694, x677, 0xffffffff);
- uint32_t x699, uint8_t x700 = subborrow_u32(x697, x680, 0xfffffffe);
- uint32_t x702, uint8_t x703 = subborrow_u32(x700, x683, 0xffffffff);
- uint32_t x705, uint8_t x706 = subborrow_u32(x703, x686, 0xffffffff);
- uint32_t x708, uint8_t x709 = subborrow_u32(x706, x689, 0xffffffff);
- uint32_t _, uint8_t x712 = subborrow_u32(x709, x691, 0x0);
- uint32_t x713 = cmovznz32(x712, x708, x689);
- uint32_t x714 = cmovznz32(x712, x705, x686);
- uint32_t x715 = cmovznz32(x712, x702, x683);
- uint32_t x716 = cmovznz32(x712, x699, x680);
- uint32_t x717 = cmovznz32(x712, x696, x677);
- uint32_t x718 = cmovznz32(x712, x693, x674);
- return (x713, x714, x715, x716, x717, x718))
-(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/montgomery32_2e192m2e64m1_6limbs/femulDisplay.v b/src/Specific/montgomery32_2e192m2e64m1_6limbs/femulDisplay.v
deleted file mode 100644
index 48c89ae88..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e192m2e64m1_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e192m2e64m1_6limbs/fenz.c b/src/Specific/montgomery32_2e192m2e64m1_6limbs/fenz.c
deleted file mode 100644
index 2e0454af1..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_6limbs/fenz.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], 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 x11 = (x10 | x9);
- { uint32_t x12 = (x8 | x11);
- { uint32_t x13 = (x6 | x12);
- { uint32_t x14 = (x4 | x13);
- { uint32_t x15 = (x2 | x14);
- out[0] = x15;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e192m2e64m1_6limbs/fenz.v b/src/Specific/montgomery32_2e192m2e64m1_6limbs/fenz.v
deleted file mode 100644
index cd2517cd1..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_6limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e192m2e64m1_6limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e192m2e64m1_6limbs/fenzDisplay.log b/src/Specific/montgomery32_2e192m2e64m1_6limbs/fenzDisplay.log
deleted file mode 100644
index 616138b7b..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_6limbs/fenzDisplay.log
+++ /dev/null
@@ -1,12 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint32_t x11 = (x10 | x9);
- uint32_t x12 = (x8 | x11);
- uint32_t x13 = (x6 | x12);
- uint32_t x14 = (x4 | x13);
- uint32_t x15 = (x2 | x14);
- return x15)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e192m2e64m1_6limbs/fenzDisplay.v b/src/Specific/montgomery32_2e192m2e64m1_6limbs/fenzDisplay.v
deleted file mode 100644
index 7c73aecbf..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_6limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e192m2e64m1_6limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e192m2e64m1_6limbs/feopp.c b/src/Specific/montgomery32_2e192m2e64m1_6limbs/feopp.c
deleted file mode 100644
index 9e9f82dca..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_6limbs/feopp.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feopp(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 = _subborrow_u32(0x0, 0x0, x2, &x12);
- { uint32_t x15; uint8_t x16 = _subborrow_u32(x13, 0x0, x4, &x15);
- { uint32_t x18; uint8_t x19 = _subborrow_u32(x16, 0x0, x6, &x18);
- { uint32_t x21; uint8_t x22 = _subborrow_u32(x19, 0x0, x8, &x21);
- { uint32_t x24; uint8_t x25 = _subborrow_u32(x22, 0x0, x10, &x24);
- { uint32_t x27; uint8_t x28 = _subborrow_u32(x25, 0x0, x9, &x27);
- { uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- { uint32_t x30 = (x29 & 0xffffffff);
- { uint32_t x32; uint8_t x33 = _addcarryx_u32(0x0, x12, x30, &x32);
- { uint32_t x34 = (x29 & 0xffffffff);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(x33, x15, x34, &x36);
- { uint32_t x38 = (x29 & 0xfffffffe);
- { uint32_t x40; uint8_t x41 = _addcarryx_u32(x37, x18, x38, &x40);
- { uint32_t x42 = (x29 & 0xffffffff);
- { uint32_t x44; uint8_t x45 = _addcarryx_u32(x41, x21, x42, &x44);
- { uint32_t x46 = (x29 & 0xffffffff);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x45, x24, x46, &x48);
- { uint32_t x50 = (x29 & 0xffffffff);
- { uint32_t x52; uint8_t _ = _addcarryx_u32(x49, x27, x50, &x52);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e192m2e64m1_6limbs/feopp.v b/src/Specific/montgomery32_2e192m2e64m1_6limbs/feopp.v
deleted file mode 100644
index 35594e490..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_6limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e192m2e64m1_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e192m2e64m1_6limbs/feoppDisplay.log b/src/Specific/montgomery32_2e192m2e64m1_6limbs/feoppDisplay.log
deleted file mode 100644
index e937846f9..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_6limbs/feoppDisplay.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 = subborrow_u32(0x0, 0x0, x2);
- uint32_t x15, uint8_t x16 = subborrow_u32(x13, 0x0, x4);
- uint32_t x18, uint8_t x19 = subborrow_u32(x16, 0x0, x6);
- uint32_t x21, uint8_t x22 = subborrow_u32(x19, 0x0, x8);
- uint32_t x24, uint8_t x25 = subborrow_u32(x22, 0x0, x10);
- uint32_t x27, uint8_t x28 = subborrow_u32(x25, 0x0, x9);
- uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- uint32_t x30 = (x29 & 0xffffffff);
- uint32_t x32, uint8_t x33 = addcarryx_u32(0x0, x12, x30);
- uint32_t x34 = (x29 & 0xffffffff);
- uint32_t x36, uint8_t x37 = addcarryx_u32(x33, x15, x34);
- uint32_t x38 = (x29 & 0xfffffffe);
- uint32_t x40, uint8_t x41 = addcarryx_u32(x37, x18, x38);
- uint32_t x42 = (x29 & 0xffffffff);
- uint32_t x44, uint8_t x45 = addcarryx_u32(x41, x21, x42);
- uint32_t x46 = (x29 & 0xffffffff);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x45, x24, x46);
- uint32_t x50 = (x29 & 0xffffffff);
- uint32_t x52, uint8_t _ = addcarryx_u32(x49, x27, 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/montgomery32_2e192m2e64m1_6limbs/feoppDisplay.v b/src/Specific/montgomery32_2e192m2e64m1_6limbs/feoppDisplay.v
deleted file mode 100644
index a55a5e5c5..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_6limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e192m2e64m1_6limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e192m2e64m1_6limbs/fesquare.c b/src/Specific/montgomery32_2e192m2e64m1_6limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_6limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e192m2e64m1_6limbs/fesub.c b/src/Specific/montgomery32_2e192m2e64m1_6limbs/fesub.c
deleted file mode 100644
index 5c0d60043..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_6limbs/fesub.c
+++ /dev/null
@@ -1,40 +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];
- { uint32_t x25; uint8_t x26 = _subborrow_u32(0x0, x5, x15, &x25);
- { uint32_t x28; uint8_t x29 = _subborrow_u32(x26, x7, x17, &x28);
- { uint32_t x31; uint8_t x32 = _subborrow_u32(x29, x9, x19, &x31);
- { uint32_t x34; uint8_t x35 = _subborrow_u32(x32, x11, x21, &x34);
- { uint32_t x37; uint8_t x38 = _subborrow_u32(x35, x13, x23, &x37);
- { uint32_t x40; uint8_t x41 = _subborrow_u32(x38, x12, x22, &x40);
- { uint32_t x42 = cmovznz32(x41, 0x0, 0xffffffff);
- { uint32_t x43 = (x42 & 0xffffffff);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(0x0, x25, x43, &x45);
- { uint32_t x47 = (x42 & 0xffffffff);
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(x46, x28, x47, &x49);
- { uint32_t x51 = (x42 & 0xfffffffe);
- { uint32_t x53; uint8_t x54 = _addcarryx_u32(x50, x31, x51, &x53);
- { uint32_t x55 = (x42 & 0xffffffff);
- { uint32_t x57; uint8_t x58 = _addcarryx_u32(x54, x34, x55, &x57);
- { uint32_t x59 = (x42 & 0xffffffff);
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(x58, x37, x59, &x61);
- { uint32_t x63 = (x42 & 0xffffffff);
- { uint32_t x65; uint8_t _ = _addcarryx_u32(x62, x40, x63, &x65);
- out[0] = x45;
- out[1] = x49;
- out[2] = x53;
- out[3] = x57;
- out[4] = x61;
- out[5] = x65;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e192m2e64m1_6limbs/fesub.v b/src/Specific/montgomery32_2e192m2e64m1_6limbs/fesub.v
deleted file mode 100644
index 0efb3f48c..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e192m2e64m1_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e192m2e64m1_6limbs/fesubDisplay.log b/src/Specific/montgomery32_2e192m2e64m1_6limbs/fesubDisplay.log
deleted file mode 100644
index ec794c27f..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,26 +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,
- uint32_t x25, uint8_t x26 = subborrow_u32(0x0, x5, x15);
- uint32_t x28, uint8_t x29 = subborrow_u32(x26, x7, x17);
- uint32_t x31, uint8_t x32 = subborrow_u32(x29, x9, x19);
- uint32_t x34, uint8_t x35 = subborrow_u32(x32, x11, x21);
- uint32_t x37, uint8_t x38 = subborrow_u32(x35, x13, x23);
- uint32_t x40, uint8_t x41 = subborrow_u32(x38, x12, x22);
- uint32_t x42 = cmovznz32(x41, 0x0, 0xffffffff);
- uint32_t x43 = (x42 & 0xffffffff);
- uint32_t x45, uint8_t x46 = addcarryx_u32(0x0, x25, x43);
- uint32_t x47 = (x42 & 0xffffffff);
- uint32_t x49, uint8_t x50 = addcarryx_u32(x46, x28, x47);
- uint32_t x51 = (x42 & 0xfffffffe);
- uint32_t x53, uint8_t x54 = addcarryx_u32(x50, x31, x51);
- uint32_t x55 = (x42 & 0xffffffff);
- uint32_t x57, uint8_t x58 = addcarryx_u32(x54, x34, x55);
- uint32_t x59 = (x42 & 0xffffffff);
- uint32_t x61, uint8_t x62 = addcarryx_u32(x58, x37, x59);
- uint32_t x63 = (x42 & 0xffffffff);
- uint32_t x65, uint8_t _ = addcarryx_u32(x62, x40, x63);
- (Return x65, Return x61, Return x57, Return x53, Return x49, Return x45))
-(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/montgomery32_2e192m2e64m1_6limbs/fesubDisplay.v b/src/Specific/montgomery32_2e192m2e64m1_6limbs/fesubDisplay.v
deleted file mode 100644
index 077f2abdc..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e192m2e64m1_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e192m2e64m1_6limbs/py_interpreter.sh b/src/Specific/montgomery32_2e192m2e64m1_6limbs/py_interpreter.sh
deleted file mode 100755
index 9d29d1b0a..000000000
--- a/src/Specific/montgomery32_2e192m2e64m1_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**192 - 2**64 - 1' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e194m33_7limbs/CurveParameters.v b/src/Specific/montgomery32_2e194m33_7limbs/CurveParameters.v
deleted file mode 100644
index f0ea8cc22..000000000
--- a/src/Specific/montgomery32_2e194m33_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^194 - 33
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 32;
- bitwidth := 32;
- s := 2^194;
- c := [(1, 33)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e194m33_7limbs/Synthesis.v b/src/Specific/montgomery32_2e194m33_7limbs/Synthesis.v
deleted file mode 100644
index 4217255fc..000000000
--- a/src/Specific/montgomery32_2e194m33_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e194m33_7limbs.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/montgomery32_2e194m33_7limbs/compiler.sh b/src/Specific/montgomery32_2e194m33_7limbs/compiler.sh
deleted file mode 100755
index ab5acc8bb..000000000
--- a/src/Specific/montgomery32_2e194m33_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<194) - 33' "$@"
diff --git a/src/Specific/montgomery32_2e194m33_7limbs/compilerxx.sh b/src/Specific/montgomery32_2e194m33_7limbs/compilerxx.sh
deleted file mode 100755
index 1e2bec543..000000000
--- a/src/Specific/montgomery32_2e194m33_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<194) - 33' "$@"
diff --git a/src/Specific/montgomery32_2e194m33_7limbs/feadd.c b/src/Specific/montgomery32_2e194m33_7limbs/feadd.c
deleted file mode 100644
index ba45079f7..000000000
--- a/src/Specific/montgomery32_2e194m33_7limbs/feadd.c
+++ /dev/null
@@ -1,46 +0,0 @@
-static void feadd(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- { uint32_t x29; uint8_t x30 = _addcarryx_u32(0x0, x5, x17, &x29);
- { uint32_t x32; uint8_t x33 = _addcarryx_u32(x30, x7, x19, &x32);
- { uint32_t x35; uint8_t x36 = _addcarryx_u32(x33, x9, x21, &x35);
- { uint32_t x38; uint8_t x39 = _addcarryx_u32(x36, x11, x23, &x38);
- { uint32_t x41; uint8_t x42 = _addcarryx_u32(x39, x13, x25, &x41);
- { uint32_t x44; uint8_t x45 = _addcarryx_u32(x42, x15, x27, &x44);
- { uint32_t x47; uint8_t x48 = _addcarryx_u32(x45, x14, x26, &x47);
- { uint32_t x50; uint8_t x51 = _subborrow_u32(0x0, x29, 0xffffffdf, &x50);
- { uint32_t x53; uint8_t x54 = _subborrow_u32(x51, x32, 0xffffffff, &x53);
- { uint32_t x56; uint8_t x57 = _subborrow_u32(x54, x35, 0xffffffff, &x56);
- { uint32_t x59; uint8_t x60 = _subborrow_u32(x57, x38, 0xffffffff, &x59);
- { uint32_t x62; uint8_t x63 = _subborrow_u32(x60, x41, 0xffffffff, &x62);
- { uint32_t x65; uint8_t x66 = _subborrow_u32(x63, x44, 0xffffffff, &x65);
- { uint32_t x68; uint8_t x69 = _subborrow_u32(x66, x47, 0x3, &x68);
- { uint32_t _; uint8_t x72 = _subborrow_u32(x69, x48, 0x0, &_);
- { uint32_t x73 = cmovznz32(x72, x68, x47);
- { uint32_t x74 = cmovznz32(x72, x65, x44);
- { uint32_t x75 = cmovznz32(x72, x62, x41);
- { uint32_t x76 = cmovznz32(x72, x59, x38);
- { uint32_t x77 = cmovznz32(x72, x56, x35);
- { uint32_t x78 = cmovznz32(x72, x53, x32);
- { uint32_t x79 = cmovznz32(x72, x50, x29);
- out[0] = x79;
- out[1] = x78;
- out[2] = x77;
- out[3] = x76;
- out[4] = x75;
- out[5] = x74;
- out[6] = x73;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e194m33_7limbs/feadd.v b/src/Specific/montgomery32_2e194m33_7limbs/feadd.v
deleted file mode 100644
index 3fd1c6163..000000000
--- a/src/Specific/montgomery32_2e194m33_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e194m33_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e194m33_7limbs/feaddDisplay.log b/src/Specific/montgomery32_2e194m33_7limbs/feaddDisplay.log
deleted file mode 100644
index c217451c3..000000000
--- a/src/Specific/montgomery32_2e194m33_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint32_t x29, uint8_t x30 = addcarryx_u32(0x0, x5, x17);
- uint32_t x32, uint8_t x33 = addcarryx_u32(x30, x7, x19);
- uint32_t x35, uint8_t x36 = addcarryx_u32(x33, x9, x21);
- uint32_t x38, uint8_t x39 = addcarryx_u32(x36, x11, x23);
- uint32_t x41, uint8_t x42 = addcarryx_u32(x39, x13, x25);
- uint32_t x44, uint8_t x45 = addcarryx_u32(x42, x15, x27);
- uint32_t x47, uint8_t x48 = addcarryx_u32(x45, x14, x26);
- uint32_t x50, uint8_t x51 = subborrow_u32(0x0, x29, 0xffffffdf);
- uint32_t x53, uint8_t x54 = subborrow_u32(x51, x32, 0xffffffff);
- uint32_t x56, uint8_t x57 = subborrow_u32(x54, x35, 0xffffffff);
- uint32_t x59, uint8_t x60 = subborrow_u32(x57, x38, 0xffffffff);
- uint32_t x62, uint8_t x63 = subborrow_u32(x60, x41, 0xffffffff);
- uint32_t x65, uint8_t x66 = subborrow_u32(x63, x44, 0xffffffff);
- uint32_t x68, uint8_t x69 = subborrow_u32(x66, x47, 0x3);
- uint32_t _, uint8_t x72 = subborrow_u32(x69, x48, 0x0);
- uint32_t x73 = cmovznz32(x72, x68, x47);
- uint32_t x74 = cmovznz32(x72, x65, x44);
- uint32_t x75 = cmovznz32(x72, x62, x41);
- uint32_t x76 = cmovznz32(x72, x59, x38);
- uint32_t x77 = cmovznz32(x72, x56, x35);
- uint32_t x78 = cmovznz32(x72, x53, x32);
- uint32_t x79 = cmovznz32(x72, x50, x29);
- return (x73, x74, x75, x76, x77, x78, x79))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/montgomery32_2e194m33_7limbs/feaddDisplay.v b/src/Specific/montgomery32_2e194m33_7limbs/feaddDisplay.v
deleted file mode 100644
index 24139f59f..000000000
--- a/src/Specific/montgomery32_2e194m33_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e194m33_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e194m33_7limbs/femul.v b/src/Specific/montgomery32_2e194m33_7limbs/femul.v
deleted file mode 100644
index 61bc3205e..000000000
--- a/src/Specific/montgomery32_2e194m33_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e194m33_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e194m33_7limbs/femulDisplay.v b/src/Specific/montgomery32_2e194m33_7limbs/femulDisplay.v
deleted file mode 100644
index 8a5f86f05..000000000
--- a/src/Specific/montgomery32_2e194m33_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e194m33_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e194m33_7limbs/fenz.c b/src/Specific/montgomery32_2e194m33_7limbs/fenz.c
deleted file mode 100644
index 387dcfe67..000000000
--- a/src/Specific/montgomery32_2e194m33_7limbs/fenz.c
+++ /dev/null
@@ -1,17 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x13 = (x12 | x11);
- { uint32_t x14 = (x10 | x13);
- { uint32_t x15 = (x8 | x14);
- { uint32_t x16 = (x6 | x15);
- { uint32_t x17 = (x4 | x16);
- { uint32_t x18 = (x2 | x17);
- out[0] = x18;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e194m33_7limbs/fenz.v b/src/Specific/montgomery32_2e194m33_7limbs/fenz.v
deleted file mode 100644
index 6173c1322..000000000
--- a/src/Specific/montgomery32_2e194m33_7limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e194m33_7limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e194m33_7limbs/fenzDisplay.log b/src/Specific/montgomery32_2e194m33_7limbs/fenzDisplay.log
deleted file mode 100644
index 9685f89d7..000000000
--- a/src/Specific/montgomery32_2e194m33_7limbs/fenzDisplay.log
+++ /dev/null
@@ -1,13 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x13 = (x12 | x11);
- uint32_t x14 = (x10 | x13);
- uint32_t x15 = (x8 | x14);
- uint32_t x16 = (x6 | x15);
- uint32_t x17 = (x4 | x16);
- uint32_t x18 = (x2 | x17);
- return x18)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e194m33_7limbs/fenzDisplay.v b/src/Specific/montgomery32_2e194m33_7limbs/fenzDisplay.v
deleted file mode 100644
index 36b2f4bd2..000000000
--- a/src/Specific/montgomery32_2e194m33_7limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e194m33_7limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e194m33_7limbs/feopp.v b/src/Specific/montgomery32_2e194m33_7limbs/feopp.v
deleted file mode 100644
index cfdbf7abc..000000000
--- a/src/Specific/montgomery32_2e194m33_7limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e194m33_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e194m33_7limbs/feoppDisplay.v b/src/Specific/montgomery32_2e194m33_7limbs/feoppDisplay.v
deleted file mode 100644
index bbfac206f..000000000
--- a/src/Specific/montgomery32_2e194m33_7limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e194m33_7limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e194m33_7limbs/fesquare.c b/src/Specific/montgomery32_2e194m33_7limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e194m33_7limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e194m33_7limbs/fesub.v b/src/Specific/montgomery32_2e194m33_7limbs/fesub.v
deleted file mode 100644
index eacc6245e..000000000
--- a/src/Specific/montgomery32_2e194m33_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e194m33_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e194m33_7limbs/fesubDisplay.v b/src/Specific/montgomery32_2e194m33_7limbs/fesubDisplay.v
deleted file mode 100644
index 9efd45280..000000000
--- a/src/Specific/montgomery32_2e194m33_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e194m33_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e194m33_7limbs/py_interpreter.sh b/src/Specific/montgomery32_2e194m33_7limbs/py_interpreter.sh
deleted file mode 100755
index 19760a7c4..000000000
--- a/src/Specific/montgomery32_2e194m33_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**194 - 33' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e196m15_7limbs/CurveParameters.v b/src/Specific/montgomery32_2e196m15_7limbs/CurveParameters.v
deleted file mode 100644
index be8378ba9..000000000
--- a/src/Specific/montgomery32_2e196m15_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^196 - 15
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 32;
- bitwidth := 32;
- s := 2^196;
- c := [(1, 15)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e196m15_7limbs/Synthesis.v b/src/Specific/montgomery32_2e196m15_7limbs/Synthesis.v
deleted file mode 100644
index b50b59900..000000000
--- a/src/Specific/montgomery32_2e196m15_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e196m15_7limbs.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/montgomery32_2e196m15_7limbs/compiler.sh b/src/Specific/montgomery32_2e196m15_7limbs/compiler.sh
deleted file mode 100755
index d116e6a1f..000000000
--- a/src/Specific/montgomery32_2e196m15_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<196) - 15' "$@"
diff --git a/src/Specific/montgomery32_2e196m15_7limbs/compilerxx.sh b/src/Specific/montgomery32_2e196m15_7limbs/compilerxx.sh
deleted file mode 100755
index a230753d5..000000000
--- a/src/Specific/montgomery32_2e196m15_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<196) - 15' "$@"
diff --git a/src/Specific/montgomery32_2e196m15_7limbs/feadd.c b/src/Specific/montgomery32_2e196m15_7limbs/feadd.c
deleted file mode 100644
index 3fe2c20c9..000000000
--- a/src/Specific/montgomery32_2e196m15_7limbs/feadd.c
+++ /dev/null
@@ -1,46 +0,0 @@
-static void feadd(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- { uint32_t x29; uint8_t x30 = _addcarryx_u32(0x0, x5, x17, &x29);
- { uint32_t x32; uint8_t x33 = _addcarryx_u32(x30, x7, x19, &x32);
- { uint32_t x35; uint8_t x36 = _addcarryx_u32(x33, x9, x21, &x35);
- { uint32_t x38; uint8_t x39 = _addcarryx_u32(x36, x11, x23, &x38);
- { uint32_t x41; uint8_t x42 = _addcarryx_u32(x39, x13, x25, &x41);
- { uint32_t x44; uint8_t x45 = _addcarryx_u32(x42, x15, x27, &x44);
- { uint32_t x47; uint8_t x48 = _addcarryx_u32(x45, x14, x26, &x47);
- { uint32_t x50; uint8_t x51 = _subborrow_u32(0x0, x29, 0xfffffff1, &x50);
- { uint32_t x53; uint8_t x54 = _subborrow_u32(x51, x32, 0xffffffff, &x53);
- { uint32_t x56; uint8_t x57 = _subborrow_u32(x54, x35, 0xffffffff, &x56);
- { uint32_t x59; uint8_t x60 = _subborrow_u32(x57, x38, 0xffffffff, &x59);
- { uint32_t x62; uint8_t x63 = _subborrow_u32(x60, x41, 0xffffffff, &x62);
- { uint32_t x65; uint8_t x66 = _subborrow_u32(x63, x44, 0xffffffff, &x65);
- { uint32_t x68; uint8_t x69 = _subborrow_u32(x66, x47, 0xf, &x68);
- { uint32_t _; uint8_t x72 = _subborrow_u32(x69, x48, 0x0, &_);
- { uint32_t x73 = cmovznz32(x72, x68, x47);
- { uint32_t x74 = cmovznz32(x72, x65, x44);
- { uint32_t x75 = cmovznz32(x72, x62, x41);
- { uint32_t x76 = cmovznz32(x72, x59, x38);
- { uint32_t x77 = cmovznz32(x72, x56, x35);
- { uint32_t x78 = cmovznz32(x72, x53, x32);
- { uint32_t x79 = cmovznz32(x72, x50, x29);
- out[0] = x79;
- out[1] = x78;
- out[2] = x77;
- out[3] = x76;
- out[4] = x75;
- out[5] = x74;
- out[6] = x73;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e196m15_7limbs/feadd.v b/src/Specific/montgomery32_2e196m15_7limbs/feadd.v
deleted file mode 100644
index 7d6e10aa3..000000000
--- a/src/Specific/montgomery32_2e196m15_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e196m15_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e196m15_7limbs/feaddDisplay.log b/src/Specific/montgomery32_2e196m15_7limbs/feaddDisplay.log
deleted file mode 100644
index 9398047fb..000000000
--- a/src/Specific/montgomery32_2e196m15_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint32_t x29, uint8_t x30 = addcarryx_u32(0x0, x5, x17);
- uint32_t x32, uint8_t x33 = addcarryx_u32(x30, x7, x19);
- uint32_t x35, uint8_t x36 = addcarryx_u32(x33, x9, x21);
- uint32_t x38, uint8_t x39 = addcarryx_u32(x36, x11, x23);
- uint32_t x41, uint8_t x42 = addcarryx_u32(x39, x13, x25);
- uint32_t x44, uint8_t x45 = addcarryx_u32(x42, x15, x27);
- uint32_t x47, uint8_t x48 = addcarryx_u32(x45, x14, x26);
- uint32_t x50, uint8_t x51 = subborrow_u32(0x0, x29, 0xfffffff1);
- uint32_t x53, uint8_t x54 = subborrow_u32(x51, x32, 0xffffffff);
- uint32_t x56, uint8_t x57 = subborrow_u32(x54, x35, 0xffffffff);
- uint32_t x59, uint8_t x60 = subborrow_u32(x57, x38, 0xffffffff);
- uint32_t x62, uint8_t x63 = subborrow_u32(x60, x41, 0xffffffff);
- uint32_t x65, uint8_t x66 = subborrow_u32(x63, x44, 0xffffffff);
- uint32_t x68, uint8_t x69 = subborrow_u32(x66, x47, 0xf);
- uint32_t _, uint8_t x72 = subborrow_u32(x69, x48, 0x0);
- uint32_t x73 = cmovznz32(x72, x68, x47);
- uint32_t x74 = cmovznz32(x72, x65, x44);
- uint32_t x75 = cmovznz32(x72, x62, x41);
- uint32_t x76 = cmovznz32(x72, x59, x38);
- uint32_t x77 = cmovznz32(x72, x56, x35);
- uint32_t x78 = cmovznz32(x72, x53, x32);
- uint32_t x79 = cmovznz32(x72, x50, x29);
- return (x73, x74, x75, x76, x77, x78, x79))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/montgomery32_2e196m15_7limbs/feaddDisplay.v b/src/Specific/montgomery32_2e196m15_7limbs/feaddDisplay.v
deleted file mode 100644
index ccb561d37..000000000
--- a/src/Specific/montgomery32_2e196m15_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e196m15_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e196m15_7limbs/femul.v b/src/Specific/montgomery32_2e196m15_7limbs/femul.v
deleted file mode 100644
index dc6bb44ab..000000000
--- a/src/Specific/montgomery32_2e196m15_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e196m15_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e196m15_7limbs/femulDisplay.v b/src/Specific/montgomery32_2e196m15_7limbs/femulDisplay.v
deleted file mode 100644
index 9d359aed8..000000000
--- a/src/Specific/montgomery32_2e196m15_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e196m15_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e196m15_7limbs/fenz.c b/src/Specific/montgomery32_2e196m15_7limbs/fenz.c
deleted file mode 100644
index 387dcfe67..000000000
--- a/src/Specific/montgomery32_2e196m15_7limbs/fenz.c
+++ /dev/null
@@ -1,17 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x13 = (x12 | x11);
- { uint32_t x14 = (x10 | x13);
- { uint32_t x15 = (x8 | x14);
- { uint32_t x16 = (x6 | x15);
- { uint32_t x17 = (x4 | x16);
- { uint32_t x18 = (x2 | x17);
- out[0] = x18;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e196m15_7limbs/fenz.v b/src/Specific/montgomery32_2e196m15_7limbs/fenz.v
deleted file mode 100644
index c31b8e427..000000000
--- a/src/Specific/montgomery32_2e196m15_7limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e196m15_7limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e196m15_7limbs/fenzDisplay.log b/src/Specific/montgomery32_2e196m15_7limbs/fenzDisplay.log
deleted file mode 100644
index 9685f89d7..000000000
--- a/src/Specific/montgomery32_2e196m15_7limbs/fenzDisplay.log
+++ /dev/null
@@ -1,13 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x13 = (x12 | x11);
- uint32_t x14 = (x10 | x13);
- uint32_t x15 = (x8 | x14);
- uint32_t x16 = (x6 | x15);
- uint32_t x17 = (x4 | x16);
- uint32_t x18 = (x2 | x17);
- return x18)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e196m15_7limbs/fenzDisplay.v b/src/Specific/montgomery32_2e196m15_7limbs/fenzDisplay.v
deleted file mode 100644
index 5836b0c61..000000000
--- a/src/Specific/montgomery32_2e196m15_7limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e196m15_7limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e196m15_7limbs/feopp.v b/src/Specific/montgomery32_2e196m15_7limbs/feopp.v
deleted file mode 100644
index a44c60a6c..000000000
--- a/src/Specific/montgomery32_2e196m15_7limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e196m15_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e196m15_7limbs/feoppDisplay.v b/src/Specific/montgomery32_2e196m15_7limbs/feoppDisplay.v
deleted file mode 100644
index 660cf5399..000000000
--- a/src/Specific/montgomery32_2e196m15_7limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e196m15_7limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e196m15_7limbs/fesquare.c b/src/Specific/montgomery32_2e196m15_7limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e196m15_7limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e196m15_7limbs/fesub.v b/src/Specific/montgomery32_2e196m15_7limbs/fesub.v
deleted file mode 100644
index 87e4aa893..000000000
--- a/src/Specific/montgomery32_2e196m15_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e196m15_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e196m15_7limbs/fesubDisplay.v b/src/Specific/montgomery32_2e196m15_7limbs/fesubDisplay.v
deleted file mode 100644
index 442dd63b4..000000000
--- a/src/Specific/montgomery32_2e196m15_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e196m15_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e196m15_7limbs/py_interpreter.sh b/src/Specific/montgomery32_2e196m15_7limbs/py_interpreter.sh
deleted file mode 100755
index 1ed1c0b70..000000000
--- a/src/Specific/montgomery32_2e196m15_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**196 - 15' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e198m17_7limbs/CurveParameters.v b/src/Specific/montgomery32_2e198m17_7limbs/CurveParameters.v
deleted file mode 100644
index 18f056404..000000000
--- a/src/Specific/montgomery32_2e198m17_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^198 - 17
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 32;
- bitwidth := 32;
- s := 2^198;
- c := [(1, 17)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e198m17_7limbs/Synthesis.v b/src/Specific/montgomery32_2e198m17_7limbs/Synthesis.v
deleted file mode 100644
index 82d2c10f4..000000000
--- a/src/Specific/montgomery32_2e198m17_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e198m17_7limbs.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/montgomery32_2e198m17_7limbs/compiler.sh b/src/Specific/montgomery32_2e198m17_7limbs/compiler.sh
deleted file mode 100755
index cc8a57a00..000000000
--- a/src/Specific/montgomery32_2e198m17_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<198) - 17' "$@"
diff --git a/src/Specific/montgomery32_2e198m17_7limbs/compilerxx.sh b/src/Specific/montgomery32_2e198m17_7limbs/compilerxx.sh
deleted file mode 100755
index 33705d0e4..000000000
--- a/src/Specific/montgomery32_2e198m17_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<198) - 17' "$@"
diff --git a/src/Specific/montgomery32_2e198m17_7limbs/feadd.c b/src/Specific/montgomery32_2e198m17_7limbs/feadd.c
deleted file mode 100644
index 89081d51b..000000000
--- a/src/Specific/montgomery32_2e198m17_7limbs/feadd.c
+++ /dev/null
@@ -1,46 +0,0 @@
-static void feadd(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- { uint32_t x29; uint8_t x30 = _addcarryx_u32(0x0, x5, x17, &x29);
- { uint32_t x32; uint8_t x33 = _addcarryx_u32(x30, x7, x19, &x32);
- { uint32_t x35; uint8_t x36 = _addcarryx_u32(x33, x9, x21, &x35);
- { uint32_t x38; uint8_t x39 = _addcarryx_u32(x36, x11, x23, &x38);
- { uint32_t x41; uint8_t x42 = _addcarryx_u32(x39, x13, x25, &x41);
- { uint32_t x44; uint8_t x45 = _addcarryx_u32(x42, x15, x27, &x44);
- { uint32_t x47; uint8_t x48 = _addcarryx_u32(x45, x14, x26, &x47);
- { uint32_t x50; uint8_t x51 = _subborrow_u32(0x0, x29, 0xffffffef, &x50);
- { uint32_t x53; uint8_t x54 = _subborrow_u32(x51, x32, 0xffffffff, &x53);
- { uint32_t x56; uint8_t x57 = _subborrow_u32(x54, x35, 0xffffffff, &x56);
- { uint32_t x59; uint8_t x60 = _subborrow_u32(x57, x38, 0xffffffff, &x59);
- { uint32_t x62; uint8_t x63 = _subborrow_u32(x60, x41, 0xffffffff, &x62);
- { uint32_t x65; uint8_t x66 = _subborrow_u32(x63, x44, 0xffffffff, &x65);
- { uint32_t x68; uint8_t x69 = _subborrow_u32(x66, x47, 0x3f, &x68);
- { uint32_t _; uint8_t x72 = _subborrow_u32(x69, x48, 0x0, &_);
- { uint32_t x73 = cmovznz32(x72, x68, x47);
- { uint32_t x74 = cmovznz32(x72, x65, x44);
- { uint32_t x75 = cmovznz32(x72, x62, x41);
- { uint32_t x76 = cmovznz32(x72, x59, x38);
- { uint32_t x77 = cmovznz32(x72, x56, x35);
- { uint32_t x78 = cmovznz32(x72, x53, x32);
- { uint32_t x79 = cmovznz32(x72, x50, x29);
- out[0] = x79;
- out[1] = x78;
- out[2] = x77;
- out[3] = x76;
- out[4] = x75;
- out[5] = x74;
- out[6] = x73;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e198m17_7limbs/feadd.v b/src/Specific/montgomery32_2e198m17_7limbs/feadd.v
deleted file mode 100644
index efb274337..000000000
--- a/src/Specific/montgomery32_2e198m17_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e198m17_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e198m17_7limbs/feaddDisplay.log b/src/Specific/montgomery32_2e198m17_7limbs/feaddDisplay.log
deleted file mode 100644
index 5d5529301..000000000
--- a/src/Specific/montgomery32_2e198m17_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint32_t x29, uint8_t x30 = addcarryx_u32(0x0, x5, x17);
- uint32_t x32, uint8_t x33 = addcarryx_u32(x30, x7, x19);
- uint32_t x35, uint8_t x36 = addcarryx_u32(x33, x9, x21);
- uint32_t x38, uint8_t x39 = addcarryx_u32(x36, x11, x23);
- uint32_t x41, uint8_t x42 = addcarryx_u32(x39, x13, x25);
- uint32_t x44, uint8_t x45 = addcarryx_u32(x42, x15, x27);
- uint32_t x47, uint8_t x48 = addcarryx_u32(x45, x14, x26);
- uint32_t x50, uint8_t x51 = subborrow_u32(0x0, x29, 0xffffffef);
- uint32_t x53, uint8_t x54 = subborrow_u32(x51, x32, 0xffffffff);
- uint32_t x56, uint8_t x57 = subborrow_u32(x54, x35, 0xffffffff);
- uint32_t x59, uint8_t x60 = subborrow_u32(x57, x38, 0xffffffff);
- uint32_t x62, uint8_t x63 = subborrow_u32(x60, x41, 0xffffffff);
- uint32_t x65, uint8_t x66 = subborrow_u32(x63, x44, 0xffffffff);
- uint32_t x68, uint8_t x69 = subborrow_u32(x66, x47, 0x3f);
- uint32_t _, uint8_t x72 = subborrow_u32(x69, x48, 0x0);
- uint32_t x73 = cmovznz32(x72, x68, x47);
- uint32_t x74 = cmovznz32(x72, x65, x44);
- uint32_t x75 = cmovznz32(x72, x62, x41);
- uint32_t x76 = cmovznz32(x72, x59, x38);
- uint32_t x77 = cmovznz32(x72, x56, x35);
- uint32_t x78 = cmovznz32(x72, x53, x32);
- uint32_t x79 = cmovznz32(x72, x50, x29);
- return (x73, x74, x75, x76, x77, x78, x79))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/montgomery32_2e198m17_7limbs/feaddDisplay.v b/src/Specific/montgomery32_2e198m17_7limbs/feaddDisplay.v
deleted file mode 100644
index 4f439f46d..000000000
--- a/src/Specific/montgomery32_2e198m17_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e198m17_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e198m17_7limbs/femul.v b/src/Specific/montgomery32_2e198m17_7limbs/femul.v
deleted file mode 100644
index 674f32cbd..000000000
--- a/src/Specific/montgomery32_2e198m17_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e198m17_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e198m17_7limbs/femulDisplay.v b/src/Specific/montgomery32_2e198m17_7limbs/femulDisplay.v
deleted file mode 100644
index 37973475b..000000000
--- a/src/Specific/montgomery32_2e198m17_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e198m17_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e198m17_7limbs/fenz.c b/src/Specific/montgomery32_2e198m17_7limbs/fenz.c
deleted file mode 100644
index 387dcfe67..000000000
--- a/src/Specific/montgomery32_2e198m17_7limbs/fenz.c
+++ /dev/null
@@ -1,17 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x13 = (x12 | x11);
- { uint32_t x14 = (x10 | x13);
- { uint32_t x15 = (x8 | x14);
- { uint32_t x16 = (x6 | x15);
- { uint32_t x17 = (x4 | x16);
- { uint32_t x18 = (x2 | x17);
- out[0] = x18;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e198m17_7limbs/fenz.v b/src/Specific/montgomery32_2e198m17_7limbs/fenz.v
deleted file mode 100644
index c0bbad68e..000000000
--- a/src/Specific/montgomery32_2e198m17_7limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e198m17_7limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e198m17_7limbs/fenzDisplay.log b/src/Specific/montgomery32_2e198m17_7limbs/fenzDisplay.log
deleted file mode 100644
index 9685f89d7..000000000
--- a/src/Specific/montgomery32_2e198m17_7limbs/fenzDisplay.log
+++ /dev/null
@@ -1,13 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x13 = (x12 | x11);
- uint32_t x14 = (x10 | x13);
- uint32_t x15 = (x8 | x14);
- uint32_t x16 = (x6 | x15);
- uint32_t x17 = (x4 | x16);
- uint32_t x18 = (x2 | x17);
- return x18)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e198m17_7limbs/fenzDisplay.v b/src/Specific/montgomery32_2e198m17_7limbs/fenzDisplay.v
deleted file mode 100644
index 98f33ecd7..000000000
--- a/src/Specific/montgomery32_2e198m17_7limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e198m17_7limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e198m17_7limbs/feopp.v b/src/Specific/montgomery32_2e198m17_7limbs/feopp.v
deleted file mode 100644
index 95f7cc564..000000000
--- a/src/Specific/montgomery32_2e198m17_7limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e198m17_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e198m17_7limbs/feoppDisplay.v b/src/Specific/montgomery32_2e198m17_7limbs/feoppDisplay.v
deleted file mode 100644
index c30d38d85..000000000
--- a/src/Specific/montgomery32_2e198m17_7limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e198m17_7limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e198m17_7limbs/fesquare.c b/src/Specific/montgomery32_2e198m17_7limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e198m17_7limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e198m17_7limbs/fesub.v b/src/Specific/montgomery32_2e198m17_7limbs/fesub.v
deleted file mode 100644
index c51b616e8..000000000
--- a/src/Specific/montgomery32_2e198m17_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e198m17_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e198m17_7limbs/fesubDisplay.v b/src/Specific/montgomery32_2e198m17_7limbs/fesubDisplay.v
deleted file mode 100644
index 42d58f836..000000000
--- a/src/Specific/montgomery32_2e198m17_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e198m17_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e198m17_7limbs/py_interpreter.sh b/src/Specific/montgomery32_2e198m17_7limbs/py_interpreter.sh
deleted file mode 100755
index 46ee6ade2..000000000
--- a/src/Specific/montgomery32_2e198m17_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**198 - 17' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/CurveParameters.v b/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/CurveParameters.v
deleted file mode 100644
index d3ff2f8a7..000000000
--- a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^205 - 45*2^198 - 1
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 32;
- bitwidth := 32;
- s := 2^205;
- c := [(1, 1); (45, 2^198)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e205m45x2e198m1_7limbs/Synthesis.v b/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/Synthesis.v
deleted file mode 100644
index 3cb786103..000000000
--- a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e205m45x2e198m1_7limbs.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/montgomery32_2e205m45x2e198m1_7limbs/compiler.sh b/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/compiler.sh
deleted file mode 100755
index 51b8fe280..000000000
--- a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/compilerxx.sh b/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/compilerxx.sh
deleted file mode 100755
index df70d7763..000000000
--- a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/feadd.c b/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/feadd.c
deleted file mode 100644
index b879f8a35..000000000
--- a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/feadd.c
+++ /dev/null
@@ -1,46 +0,0 @@
-static void feadd(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- { uint32_t x29; uint8_t x30 = _addcarryx_u32(0x0, x5, x17, &x29);
- { uint32_t x32; uint8_t x33 = _addcarryx_u32(x30, x7, x19, &x32);
- { uint32_t x35; uint8_t x36 = _addcarryx_u32(x33, x9, x21, &x35);
- { uint32_t x38; uint8_t x39 = _addcarryx_u32(x36, x11, x23, &x38);
- { uint32_t x41; uint8_t x42 = _addcarryx_u32(x39, x13, x25, &x41);
- { uint32_t x44; uint8_t x45 = _addcarryx_u32(x42, x15, x27, &x44);
- { uint32_t x47; uint8_t x48 = _addcarryx_u32(x45, x14, x26, &x47);
- { uint32_t x50; uint8_t x51 = _subborrow_u32(0x0, x29, 0xffffffff, &x50);
- { uint32_t x53; uint8_t x54 = _subborrow_u32(x51, x32, 0xffffffff, &x53);
- { uint32_t x56; uint8_t x57 = _subborrow_u32(x54, x35, 0xffffffff, &x56);
- { uint32_t x59; uint8_t x60 = _subborrow_u32(x57, x38, 0xffffffff, &x59);
- { uint32_t x62; uint8_t x63 = _subborrow_u32(x60, x41, 0xffffffff, &x62);
- { uint32_t x65; uint8_t x66 = _subborrow_u32(x63, x44, 0xffffffff, &x65);
- { uint32_t x68; uint8_t x69 = _subborrow_u32(x66, x47, 0x14bf, &x68);
- { uint32_t _; uint8_t x72 = _subborrow_u32(x69, x48, 0x0, &_);
- { uint32_t x73 = cmovznz32(x72, x68, x47);
- { uint32_t x74 = cmovznz32(x72, x65, x44);
- { uint32_t x75 = cmovznz32(x72, x62, x41);
- { uint32_t x76 = cmovznz32(x72, x59, x38);
- { uint32_t x77 = cmovznz32(x72, x56, x35);
- { uint32_t x78 = cmovznz32(x72, x53, x32);
- { uint32_t x79 = cmovznz32(x72, x50, x29);
- out[0] = x79;
- out[1] = x78;
- out[2] = x77;
- out[3] = x76;
- out[4] = x75;
- out[5] = x74;
- out[6] = x73;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/feadd.v b/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/feadd.v
deleted file mode 100644
index 10194686a..000000000
--- a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e205m45x2e198m1_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/feaddDisplay.log b/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/feaddDisplay.log
deleted file mode 100644
index c0d73efa6..000000000
--- a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint32_t x29, uint8_t x30 = addcarryx_u32(0x0, x5, x17);
- uint32_t x32, uint8_t x33 = addcarryx_u32(x30, x7, x19);
- uint32_t x35, uint8_t x36 = addcarryx_u32(x33, x9, x21);
- uint32_t x38, uint8_t x39 = addcarryx_u32(x36, x11, x23);
- uint32_t x41, uint8_t x42 = addcarryx_u32(x39, x13, x25);
- uint32_t x44, uint8_t x45 = addcarryx_u32(x42, x15, x27);
- uint32_t x47, uint8_t x48 = addcarryx_u32(x45, x14, x26);
- uint32_t x50, uint8_t x51 = subborrow_u32(0x0, x29, 0xffffffff);
- uint32_t x53, uint8_t x54 = subborrow_u32(x51, x32, 0xffffffff);
- uint32_t x56, uint8_t x57 = subborrow_u32(x54, x35, 0xffffffff);
- uint32_t x59, uint8_t x60 = subborrow_u32(x57, x38, 0xffffffff);
- uint32_t x62, uint8_t x63 = subborrow_u32(x60, x41, 0xffffffff);
- uint32_t x65, uint8_t x66 = subborrow_u32(x63, x44, 0xffffffff);
- uint32_t x68, uint8_t x69 = subborrow_u32(x66, x47, 0x14bf);
- uint32_t _, uint8_t x72 = subborrow_u32(x69, x48, 0x0);
- uint32_t x73 = cmovznz32(x72, x68, x47);
- uint32_t x74 = cmovznz32(x72, x65, x44);
- uint32_t x75 = cmovznz32(x72, x62, x41);
- uint32_t x76 = cmovznz32(x72, x59, x38);
- uint32_t x77 = cmovznz32(x72, x56, x35);
- uint32_t x78 = cmovznz32(x72, x53, x32);
- uint32_t x79 = cmovznz32(x72, x50, x29);
- return (x73, x74, x75, x76, x77, x78, x79))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/feaddDisplay.v b/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/feaddDisplay.v
deleted file mode 100644
index a632bd4a9..000000000
--- a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e205m45x2e198m1_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/femul.v b/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/femul.v
deleted file mode 100644
index 18bdd83ea..000000000
--- a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e205m45x2e198m1_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/femulDisplay.v b/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/femulDisplay.v
deleted file mode 100644
index 217d15e03..000000000
--- a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e205m45x2e198m1_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fenz.c b/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fenz.c
deleted file mode 100644
index 387dcfe67..000000000
--- a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fenz.c
+++ /dev/null
@@ -1,17 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x13 = (x12 | x11);
- { uint32_t x14 = (x10 | x13);
- { uint32_t x15 = (x8 | x14);
- { uint32_t x16 = (x6 | x15);
- { uint32_t x17 = (x4 | x16);
- { uint32_t x18 = (x2 | x17);
- out[0] = x18;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fenz.v b/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fenz.v
deleted file mode 100644
index ea84cae2d..000000000
--- a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e205m45x2e198m1_7limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fenzDisplay.log b/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fenzDisplay.log
deleted file mode 100644
index 9685f89d7..000000000
--- a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fenzDisplay.log
+++ /dev/null
@@ -1,13 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x13 = (x12 | x11);
- uint32_t x14 = (x10 | x13);
- uint32_t x15 = (x8 | x14);
- uint32_t x16 = (x6 | x15);
- uint32_t x17 = (x4 | x16);
- uint32_t x18 = (x2 | x17);
- return x18)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fenzDisplay.v b/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fenzDisplay.v
deleted file mode 100644
index 682489513..000000000
--- a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e205m45x2e198m1_7limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/feopp.v b/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/feopp.v
deleted file mode 100644
index 5ede6a556..000000000
--- a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e205m45x2e198m1_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/feoppDisplay.v b/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/feoppDisplay.v
deleted file mode 100644
index 0f9925540..000000000
--- a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e205m45x2e198m1_7limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fesquare.c b/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fesub.v b/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fesub.v
deleted file mode 100644
index 329fb334f..000000000
--- a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e205m45x2e198m1_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fesubDisplay.v b/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fesubDisplay.v
deleted file mode 100644
index b248e8969..000000000
--- a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e205m45x2e198m1_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/py_interpreter.sh b/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/py_interpreter.sh
deleted file mode 100755
index 3649864ca..000000000
--- a/src/Specific/montgomery32_2e205m45x2e198m1_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**205 - 45*2**198 - 1' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e206m5_7limbs/CurveParameters.v b/src/Specific/montgomery32_2e206m5_7limbs/CurveParameters.v
deleted file mode 100644
index 8b51bfd39..000000000
--- a/src/Specific/montgomery32_2e206m5_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^206 - 5
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 32;
- bitwidth := 32;
- s := 2^206;
- c := [(1, 5)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e206m5_7limbs/Synthesis.v b/src/Specific/montgomery32_2e206m5_7limbs/Synthesis.v
deleted file mode 100644
index 9b3bc72e2..000000000
--- a/src/Specific/montgomery32_2e206m5_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e206m5_7limbs.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/montgomery32_2e206m5_7limbs/compiler.sh b/src/Specific/montgomery32_2e206m5_7limbs/compiler.sh
deleted file mode 100755
index 0677a4808..000000000
--- a/src/Specific/montgomery32_2e206m5_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<206) - 5' "$@"
diff --git a/src/Specific/montgomery32_2e206m5_7limbs/compilerxx.sh b/src/Specific/montgomery32_2e206m5_7limbs/compilerxx.sh
deleted file mode 100755
index edac6347c..000000000
--- a/src/Specific/montgomery32_2e206m5_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<206) - 5' "$@"
diff --git a/src/Specific/montgomery32_2e206m5_7limbs/feadd.c b/src/Specific/montgomery32_2e206m5_7limbs/feadd.c
deleted file mode 100644
index e6acc71b8..000000000
--- a/src/Specific/montgomery32_2e206m5_7limbs/feadd.c
+++ /dev/null
@@ -1,46 +0,0 @@
-static void feadd(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- { uint32_t x29; uint8_t x30 = _addcarryx_u32(0x0, x5, x17, &x29);
- { uint32_t x32; uint8_t x33 = _addcarryx_u32(x30, x7, x19, &x32);
- { uint32_t x35; uint8_t x36 = _addcarryx_u32(x33, x9, x21, &x35);
- { uint32_t x38; uint8_t x39 = _addcarryx_u32(x36, x11, x23, &x38);
- { uint32_t x41; uint8_t x42 = _addcarryx_u32(x39, x13, x25, &x41);
- { uint32_t x44; uint8_t x45 = _addcarryx_u32(x42, x15, x27, &x44);
- { uint32_t x47; uint8_t x48 = _addcarryx_u32(x45, x14, x26, &x47);
- { uint32_t x50; uint8_t x51 = _subborrow_u32(0x0, x29, 0xfffffffb, &x50);
- { uint32_t x53; uint8_t x54 = _subborrow_u32(x51, x32, 0xffffffff, &x53);
- { uint32_t x56; uint8_t x57 = _subborrow_u32(x54, x35, 0xffffffff, &x56);
- { uint32_t x59; uint8_t x60 = _subborrow_u32(x57, x38, 0xffffffff, &x59);
- { uint32_t x62; uint8_t x63 = _subborrow_u32(x60, x41, 0xffffffff, &x62);
- { uint32_t x65; uint8_t x66 = _subborrow_u32(x63, x44, 0xffffffff, &x65);
- { uint32_t x68; uint8_t x69 = _subborrow_u32(x66, x47, 0x3fff, &x68);
- { uint32_t _; uint8_t x72 = _subborrow_u32(x69, x48, 0x0, &_);
- { uint32_t x73 = cmovznz32(x72, x68, x47);
- { uint32_t x74 = cmovznz32(x72, x65, x44);
- { uint32_t x75 = cmovznz32(x72, x62, x41);
- { uint32_t x76 = cmovznz32(x72, x59, x38);
- { uint32_t x77 = cmovznz32(x72, x56, x35);
- { uint32_t x78 = cmovznz32(x72, x53, x32);
- { uint32_t x79 = cmovznz32(x72, x50, x29);
- out[0] = x79;
- out[1] = x78;
- out[2] = x77;
- out[3] = x76;
- out[4] = x75;
- out[5] = x74;
- out[6] = x73;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e206m5_7limbs/feadd.v b/src/Specific/montgomery32_2e206m5_7limbs/feadd.v
deleted file mode 100644
index 6434293e2..000000000
--- a/src/Specific/montgomery32_2e206m5_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e206m5_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e206m5_7limbs/feaddDisplay.log b/src/Specific/montgomery32_2e206m5_7limbs/feaddDisplay.log
deleted file mode 100644
index f74236c7a..000000000
--- a/src/Specific/montgomery32_2e206m5_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint32_t x29, uint8_t x30 = addcarryx_u32(0x0, x5, x17);
- uint32_t x32, uint8_t x33 = addcarryx_u32(x30, x7, x19);
- uint32_t x35, uint8_t x36 = addcarryx_u32(x33, x9, x21);
- uint32_t x38, uint8_t x39 = addcarryx_u32(x36, x11, x23);
- uint32_t x41, uint8_t x42 = addcarryx_u32(x39, x13, x25);
- uint32_t x44, uint8_t x45 = addcarryx_u32(x42, x15, x27);
- uint32_t x47, uint8_t x48 = addcarryx_u32(x45, x14, x26);
- uint32_t x50, uint8_t x51 = subborrow_u32(0x0, x29, 0xfffffffb);
- uint32_t x53, uint8_t x54 = subborrow_u32(x51, x32, 0xffffffff);
- uint32_t x56, uint8_t x57 = subborrow_u32(x54, x35, 0xffffffff);
- uint32_t x59, uint8_t x60 = subborrow_u32(x57, x38, 0xffffffff);
- uint32_t x62, uint8_t x63 = subborrow_u32(x60, x41, 0xffffffff);
- uint32_t x65, uint8_t x66 = subborrow_u32(x63, x44, 0xffffffff);
- uint32_t x68, uint8_t x69 = subborrow_u32(x66, x47, 0x3fff);
- uint32_t _, uint8_t x72 = subborrow_u32(x69, x48, 0x0);
- uint32_t x73 = cmovznz32(x72, x68, x47);
- uint32_t x74 = cmovznz32(x72, x65, x44);
- uint32_t x75 = cmovznz32(x72, x62, x41);
- uint32_t x76 = cmovznz32(x72, x59, x38);
- uint32_t x77 = cmovznz32(x72, x56, x35);
- uint32_t x78 = cmovznz32(x72, x53, x32);
- uint32_t x79 = cmovznz32(x72, x50, x29);
- return (x73, x74, x75, x76, x77, x78, x79))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/montgomery32_2e206m5_7limbs/feaddDisplay.v b/src/Specific/montgomery32_2e206m5_7limbs/feaddDisplay.v
deleted file mode 100644
index b0ca4d037..000000000
--- a/src/Specific/montgomery32_2e206m5_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e206m5_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e206m5_7limbs/femul.v b/src/Specific/montgomery32_2e206m5_7limbs/femul.v
deleted file mode 100644
index 23e7cb039..000000000
--- a/src/Specific/montgomery32_2e206m5_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e206m5_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e206m5_7limbs/femulDisplay.v b/src/Specific/montgomery32_2e206m5_7limbs/femulDisplay.v
deleted file mode 100644
index 9d6840ec4..000000000
--- a/src/Specific/montgomery32_2e206m5_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e206m5_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e206m5_7limbs/fenz.c b/src/Specific/montgomery32_2e206m5_7limbs/fenz.c
deleted file mode 100644
index 387dcfe67..000000000
--- a/src/Specific/montgomery32_2e206m5_7limbs/fenz.c
+++ /dev/null
@@ -1,17 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x13 = (x12 | x11);
- { uint32_t x14 = (x10 | x13);
- { uint32_t x15 = (x8 | x14);
- { uint32_t x16 = (x6 | x15);
- { uint32_t x17 = (x4 | x16);
- { uint32_t x18 = (x2 | x17);
- out[0] = x18;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e206m5_7limbs/fenz.v b/src/Specific/montgomery32_2e206m5_7limbs/fenz.v
deleted file mode 100644
index 9a0255e2a..000000000
--- a/src/Specific/montgomery32_2e206m5_7limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e206m5_7limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e206m5_7limbs/fenzDisplay.log b/src/Specific/montgomery32_2e206m5_7limbs/fenzDisplay.log
deleted file mode 100644
index 9685f89d7..000000000
--- a/src/Specific/montgomery32_2e206m5_7limbs/fenzDisplay.log
+++ /dev/null
@@ -1,13 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x13 = (x12 | x11);
- uint32_t x14 = (x10 | x13);
- uint32_t x15 = (x8 | x14);
- uint32_t x16 = (x6 | x15);
- uint32_t x17 = (x4 | x16);
- uint32_t x18 = (x2 | x17);
- return x18)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e206m5_7limbs/fenzDisplay.v b/src/Specific/montgomery32_2e206m5_7limbs/fenzDisplay.v
deleted file mode 100644
index a864da122..000000000
--- a/src/Specific/montgomery32_2e206m5_7limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e206m5_7limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e206m5_7limbs/feopp.v b/src/Specific/montgomery32_2e206m5_7limbs/feopp.v
deleted file mode 100644
index 5355aeeec..000000000
--- a/src/Specific/montgomery32_2e206m5_7limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e206m5_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e206m5_7limbs/feoppDisplay.v b/src/Specific/montgomery32_2e206m5_7limbs/feoppDisplay.v
deleted file mode 100644
index 32d119bdd..000000000
--- a/src/Specific/montgomery32_2e206m5_7limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e206m5_7limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e206m5_7limbs/fesquare.c b/src/Specific/montgomery32_2e206m5_7limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e206m5_7limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e206m5_7limbs/fesub.v b/src/Specific/montgomery32_2e206m5_7limbs/fesub.v
deleted file mode 100644
index a06e68b74..000000000
--- a/src/Specific/montgomery32_2e206m5_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e206m5_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e206m5_7limbs/fesubDisplay.v b/src/Specific/montgomery32_2e206m5_7limbs/fesubDisplay.v
deleted file mode 100644
index 781532864..000000000
--- a/src/Specific/montgomery32_2e206m5_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e206m5_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e206m5_7limbs/py_interpreter.sh b/src/Specific/montgomery32_2e206m5_7limbs/py_interpreter.sh
deleted file mode 100755
index 8bf66ae1a..000000000
--- a/src/Specific/montgomery32_2e206m5_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**206 - 5' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e212m29_7limbs/CurveParameters.v b/src/Specific/montgomery32_2e212m29_7limbs/CurveParameters.v
deleted file mode 100644
index eb3018b24..000000000
--- a/src/Specific/montgomery32_2e212m29_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^212 - 29
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 32;
- bitwidth := 32;
- s := 2^212;
- c := [(1, 29)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e212m29_7limbs/Synthesis.v b/src/Specific/montgomery32_2e212m29_7limbs/Synthesis.v
deleted file mode 100644
index 5b0134559..000000000
--- a/src/Specific/montgomery32_2e212m29_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e212m29_7limbs.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/montgomery32_2e212m29_7limbs/compiler.sh b/src/Specific/montgomery32_2e212m29_7limbs/compiler.sh
deleted file mode 100755
index e20e5ca02..000000000
--- a/src/Specific/montgomery32_2e212m29_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<212) - 29' "$@"
diff --git a/src/Specific/montgomery32_2e212m29_7limbs/compilerxx.sh b/src/Specific/montgomery32_2e212m29_7limbs/compilerxx.sh
deleted file mode 100755
index c96cbc7ec..000000000
--- a/src/Specific/montgomery32_2e212m29_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<212) - 29' "$@"
diff --git a/src/Specific/montgomery32_2e212m29_7limbs/feadd.c b/src/Specific/montgomery32_2e212m29_7limbs/feadd.c
deleted file mode 100644
index c075f0e44..000000000
--- a/src/Specific/montgomery32_2e212m29_7limbs/feadd.c
+++ /dev/null
@@ -1,46 +0,0 @@
-static void feadd(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- { uint32_t x29; uint8_t x30 = _addcarryx_u32(0x0, x5, x17, &x29);
- { uint32_t x32; uint8_t x33 = _addcarryx_u32(x30, x7, x19, &x32);
- { uint32_t x35; uint8_t x36 = _addcarryx_u32(x33, x9, x21, &x35);
- { uint32_t x38; uint8_t x39 = _addcarryx_u32(x36, x11, x23, &x38);
- { uint32_t x41; uint8_t x42 = _addcarryx_u32(x39, x13, x25, &x41);
- { uint32_t x44; uint8_t x45 = _addcarryx_u32(x42, x15, x27, &x44);
- { uint32_t x47; uint8_t x48 = _addcarryx_u32(x45, x14, x26, &x47);
- { uint32_t x50; uint8_t x51 = _subborrow_u32(0x0, x29, 0xffffffe3, &x50);
- { uint32_t x53; uint8_t x54 = _subborrow_u32(x51, x32, 0xffffffff, &x53);
- { uint32_t x56; uint8_t x57 = _subborrow_u32(x54, x35, 0xffffffff, &x56);
- { uint32_t x59; uint8_t x60 = _subborrow_u32(x57, x38, 0xffffffff, &x59);
- { uint32_t x62; uint8_t x63 = _subborrow_u32(x60, x41, 0xffffffff, &x62);
- { uint32_t x65; uint8_t x66 = _subborrow_u32(x63, x44, 0xffffffff, &x65);
- { uint32_t x68; uint8_t x69 = _subborrow_u32(x66, x47, 0xfffff, &x68);
- { uint32_t _; uint8_t x72 = _subborrow_u32(x69, x48, 0x0, &_);
- { uint32_t x73 = cmovznz32(x72, x68, x47);
- { uint32_t x74 = cmovznz32(x72, x65, x44);
- { uint32_t x75 = cmovznz32(x72, x62, x41);
- { uint32_t x76 = cmovznz32(x72, x59, x38);
- { uint32_t x77 = cmovznz32(x72, x56, x35);
- { uint32_t x78 = cmovznz32(x72, x53, x32);
- { uint32_t x79 = cmovznz32(x72, x50, x29);
- out[0] = x79;
- out[1] = x78;
- out[2] = x77;
- out[3] = x76;
- out[4] = x75;
- out[5] = x74;
- out[6] = x73;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e212m29_7limbs/feadd.v b/src/Specific/montgomery32_2e212m29_7limbs/feadd.v
deleted file mode 100644
index c0fe6e713..000000000
--- a/src/Specific/montgomery32_2e212m29_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e212m29_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e212m29_7limbs/feaddDisplay.log b/src/Specific/montgomery32_2e212m29_7limbs/feaddDisplay.log
deleted file mode 100644
index 4eb882853..000000000
--- a/src/Specific/montgomery32_2e212m29_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint32_t x29, uint8_t x30 = addcarryx_u32(0x0, x5, x17);
- uint32_t x32, uint8_t x33 = addcarryx_u32(x30, x7, x19);
- uint32_t x35, uint8_t x36 = addcarryx_u32(x33, x9, x21);
- uint32_t x38, uint8_t x39 = addcarryx_u32(x36, x11, x23);
- uint32_t x41, uint8_t x42 = addcarryx_u32(x39, x13, x25);
- uint32_t x44, uint8_t x45 = addcarryx_u32(x42, x15, x27);
- uint32_t x47, uint8_t x48 = addcarryx_u32(x45, x14, x26);
- uint32_t x50, uint8_t x51 = subborrow_u32(0x0, x29, 0xffffffe3);
- uint32_t x53, uint8_t x54 = subborrow_u32(x51, x32, 0xffffffff);
- uint32_t x56, uint8_t x57 = subborrow_u32(x54, x35, 0xffffffff);
- uint32_t x59, uint8_t x60 = subborrow_u32(x57, x38, 0xffffffff);
- uint32_t x62, uint8_t x63 = subborrow_u32(x60, x41, 0xffffffff);
- uint32_t x65, uint8_t x66 = subborrow_u32(x63, x44, 0xffffffff);
- uint32_t x68, uint8_t x69 = subborrow_u32(x66, x47, 0xfffff);
- uint32_t _, uint8_t x72 = subborrow_u32(x69, x48, 0x0);
- uint32_t x73 = cmovznz32(x72, x68, x47);
- uint32_t x74 = cmovznz32(x72, x65, x44);
- uint32_t x75 = cmovznz32(x72, x62, x41);
- uint32_t x76 = cmovznz32(x72, x59, x38);
- uint32_t x77 = cmovznz32(x72, x56, x35);
- uint32_t x78 = cmovznz32(x72, x53, x32);
- uint32_t x79 = cmovznz32(x72, x50, x29);
- return (x73, x74, x75, x76, x77, x78, x79))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/montgomery32_2e212m29_7limbs/feaddDisplay.v b/src/Specific/montgomery32_2e212m29_7limbs/feaddDisplay.v
deleted file mode 100644
index ca99d3b8b..000000000
--- a/src/Specific/montgomery32_2e212m29_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e212m29_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e212m29_7limbs/femul.v b/src/Specific/montgomery32_2e212m29_7limbs/femul.v
deleted file mode 100644
index b2d3355b8..000000000
--- a/src/Specific/montgomery32_2e212m29_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e212m29_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e212m29_7limbs/femulDisplay.v b/src/Specific/montgomery32_2e212m29_7limbs/femulDisplay.v
deleted file mode 100644
index c6e997070..000000000
--- a/src/Specific/montgomery32_2e212m29_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e212m29_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e212m29_7limbs/fenz.c b/src/Specific/montgomery32_2e212m29_7limbs/fenz.c
deleted file mode 100644
index 387dcfe67..000000000
--- a/src/Specific/montgomery32_2e212m29_7limbs/fenz.c
+++ /dev/null
@@ -1,17 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x13 = (x12 | x11);
- { uint32_t x14 = (x10 | x13);
- { uint32_t x15 = (x8 | x14);
- { uint32_t x16 = (x6 | x15);
- { uint32_t x17 = (x4 | x16);
- { uint32_t x18 = (x2 | x17);
- out[0] = x18;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e212m29_7limbs/fenz.v b/src/Specific/montgomery32_2e212m29_7limbs/fenz.v
deleted file mode 100644
index 95c840bb2..000000000
--- a/src/Specific/montgomery32_2e212m29_7limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e212m29_7limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e212m29_7limbs/fenzDisplay.log b/src/Specific/montgomery32_2e212m29_7limbs/fenzDisplay.log
deleted file mode 100644
index 9685f89d7..000000000
--- a/src/Specific/montgomery32_2e212m29_7limbs/fenzDisplay.log
+++ /dev/null
@@ -1,13 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x13 = (x12 | x11);
- uint32_t x14 = (x10 | x13);
- uint32_t x15 = (x8 | x14);
- uint32_t x16 = (x6 | x15);
- uint32_t x17 = (x4 | x16);
- uint32_t x18 = (x2 | x17);
- return x18)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e212m29_7limbs/fenzDisplay.v b/src/Specific/montgomery32_2e212m29_7limbs/fenzDisplay.v
deleted file mode 100644
index 037e5db94..000000000
--- a/src/Specific/montgomery32_2e212m29_7limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e212m29_7limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e212m29_7limbs/feopp.v b/src/Specific/montgomery32_2e212m29_7limbs/feopp.v
deleted file mode 100644
index 50ff0a780..000000000
--- a/src/Specific/montgomery32_2e212m29_7limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e212m29_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e212m29_7limbs/feoppDisplay.v b/src/Specific/montgomery32_2e212m29_7limbs/feoppDisplay.v
deleted file mode 100644
index 3624d5d16..000000000
--- a/src/Specific/montgomery32_2e212m29_7limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e212m29_7limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e212m29_7limbs/fesquare.c b/src/Specific/montgomery32_2e212m29_7limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e212m29_7limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e212m29_7limbs/fesub.v b/src/Specific/montgomery32_2e212m29_7limbs/fesub.v
deleted file mode 100644
index 320cc3d68..000000000
--- a/src/Specific/montgomery32_2e212m29_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e212m29_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e212m29_7limbs/fesubDisplay.v b/src/Specific/montgomery32_2e212m29_7limbs/fesubDisplay.v
deleted file mode 100644
index 1012d51d3..000000000
--- a/src/Specific/montgomery32_2e212m29_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e212m29_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e212m29_7limbs/py_interpreter.sh b/src/Specific/montgomery32_2e212m29_7limbs/py_interpreter.sh
deleted file mode 100755
index 765d27254..000000000
--- a/src/Specific/montgomery32_2e212m29_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**212 - 29' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e213m3_7limbs/CurveParameters.v b/src/Specific/montgomery32_2e213m3_7limbs/CurveParameters.v
deleted file mode 100644
index b54fe904f..000000000
--- a/src/Specific/montgomery32_2e213m3_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^213 - 3
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 32;
- bitwidth := 32;
- s := 2^213;
- c := [(1, 3)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e213m3_7limbs/Synthesis.v b/src/Specific/montgomery32_2e213m3_7limbs/Synthesis.v
deleted file mode 100644
index 212edbed6..000000000
--- a/src/Specific/montgomery32_2e213m3_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e213m3_7limbs.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/montgomery32_2e213m3_7limbs/compiler.sh b/src/Specific/montgomery32_2e213m3_7limbs/compiler.sh
deleted file mode 100755
index 87522275e..000000000
--- a/src/Specific/montgomery32_2e213m3_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<213) - 3' "$@"
diff --git a/src/Specific/montgomery32_2e213m3_7limbs/compilerxx.sh b/src/Specific/montgomery32_2e213m3_7limbs/compilerxx.sh
deleted file mode 100755
index 15a710d3f..000000000
--- a/src/Specific/montgomery32_2e213m3_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<213) - 3' "$@"
diff --git a/src/Specific/montgomery32_2e213m3_7limbs/feadd.c b/src/Specific/montgomery32_2e213m3_7limbs/feadd.c
deleted file mode 100644
index 240511a98..000000000
--- a/src/Specific/montgomery32_2e213m3_7limbs/feadd.c
+++ /dev/null
@@ -1,46 +0,0 @@
-static void feadd(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- { uint32_t x29; uint8_t x30 = _addcarryx_u32(0x0, x5, x17, &x29);
- { uint32_t x32; uint8_t x33 = _addcarryx_u32(x30, x7, x19, &x32);
- { uint32_t x35; uint8_t x36 = _addcarryx_u32(x33, x9, x21, &x35);
- { uint32_t x38; uint8_t x39 = _addcarryx_u32(x36, x11, x23, &x38);
- { uint32_t x41; uint8_t x42 = _addcarryx_u32(x39, x13, x25, &x41);
- { uint32_t x44; uint8_t x45 = _addcarryx_u32(x42, x15, x27, &x44);
- { uint32_t x47; uint8_t x48 = _addcarryx_u32(x45, x14, x26, &x47);
- { uint32_t x50; uint8_t x51 = _subborrow_u32(0x0, x29, 0xfffffffd, &x50);
- { uint32_t x53; uint8_t x54 = _subborrow_u32(x51, x32, 0xffffffff, &x53);
- { uint32_t x56; uint8_t x57 = _subborrow_u32(x54, x35, 0xffffffff, &x56);
- { uint32_t x59; uint8_t x60 = _subborrow_u32(x57, x38, 0xffffffff, &x59);
- { uint32_t x62; uint8_t x63 = _subborrow_u32(x60, x41, 0xffffffff, &x62);
- { uint32_t x65; uint8_t x66 = _subborrow_u32(x63, x44, 0xffffffff, &x65);
- { uint32_t x68; uint8_t x69 = _subborrow_u32(x66, x47, 0x1fffff, &x68);
- { uint32_t _; uint8_t x72 = _subborrow_u32(x69, x48, 0x0, &_);
- { uint32_t x73 = cmovznz32(x72, x68, x47);
- { uint32_t x74 = cmovznz32(x72, x65, x44);
- { uint32_t x75 = cmovznz32(x72, x62, x41);
- { uint32_t x76 = cmovznz32(x72, x59, x38);
- { uint32_t x77 = cmovznz32(x72, x56, x35);
- { uint32_t x78 = cmovznz32(x72, x53, x32);
- { uint32_t x79 = cmovznz32(x72, x50, x29);
- out[0] = x79;
- out[1] = x78;
- out[2] = x77;
- out[3] = x76;
- out[4] = x75;
- out[5] = x74;
- out[6] = x73;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e213m3_7limbs/feadd.v b/src/Specific/montgomery32_2e213m3_7limbs/feadd.v
deleted file mode 100644
index 7f27d21a1..000000000
--- a/src/Specific/montgomery32_2e213m3_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e213m3_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e213m3_7limbs/feaddDisplay.log b/src/Specific/montgomery32_2e213m3_7limbs/feaddDisplay.log
deleted file mode 100644
index 1410fe6af..000000000
--- a/src/Specific/montgomery32_2e213m3_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint32_t x29, uint8_t x30 = addcarryx_u32(0x0, x5, x17);
- uint32_t x32, uint8_t x33 = addcarryx_u32(x30, x7, x19);
- uint32_t x35, uint8_t x36 = addcarryx_u32(x33, x9, x21);
- uint32_t x38, uint8_t x39 = addcarryx_u32(x36, x11, x23);
- uint32_t x41, uint8_t x42 = addcarryx_u32(x39, x13, x25);
- uint32_t x44, uint8_t x45 = addcarryx_u32(x42, x15, x27);
- uint32_t x47, uint8_t x48 = addcarryx_u32(x45, x14, x26);
- uint32_t x50, uint8_t x51 = subborrow_u32(0x0, x29, 0xfffffffd);
- uint32_t x53, uint8_t x54 = subborrow_u32(x51, x32, 0xffffffff);
- uint32_t x56, uint8_t x57 = subborrow_u32(x54, x35, 0xffffffff);
- uint32_t x59, uint8_t x60 = subborrow_u32(x57, x38, 0xffffffff);
- uint32_t x62, uint8_t x63 = subborrow_u32(x60, x41, 0xffffffff);
- uint32_t x65, uint8_t x66 = subborrow_u32(x63, x44, 0xffffffff);
- uint32_t x68, uint8_t x69 = subborrow_u32(x66, x47, 0x1fffff);
- uint32_t _, uint8_t x72 = subborrow_u32(x69, x48, 0x0);
- uint32_t x73 = cmovznz32(x72, x68, x47);
- uint32_t x74 = cmovznz32(x72, x65, x44);
- uint32_t x75 = cmovznz32(x72, x62, x41);
- uint32_t x76 = cmovznz32(x72, x59, x38);
- uint32_t x77 = cmovznz32(x72, x56, x35);
- uint32_t x78 = cmovznz32(x72, x53, x32);
- uint32_t x79 = cmovznz32(x72, x50, x29);
- return (x73, x74, x75, x76, x77, x78, x79))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/montgomery32_2e213m3_7limbs/feaddDisplay.v b/src/Specific/montgomery32_2e213m3_7limbs/feaddDisplay.v
deleted file mode 100644
index 1265fb97b..000000000
--- a/src/Specific/montgomery32_2e213m3_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e213m3_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e213m3_7limbs/femul.v b/src/Specific/montgomery32_2e213m3_7limbs/femul.v
deleted file mode 100644
index bbe02230f..000000000
--- a/src/Specific/montgomery32_2e213m3_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e213m3_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e213m3_7limbs/femulDisplay.v b/src/Specific/montgomery32_2e213m3_7limbs/femulDisplay.v
deleted file mode 100644
index 33fb2c01e..000000000
--- a/src/Specific/montgomery32_2e213m3_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e213m3_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e213m3_7limbs/fenz.c b/src/Specific/montgomery32_2e213m3_7limbs/fenz.c
deleted file mode 100644
index 387dcfe67..000000000
--- a/src/Specific/montgomery32_2e213m3_7limbs/fenz.c
+++ /dev/null
@@ -1,17 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x13 = (x12 | x11);
- { uint32_t x14 = (x10 | x13);
- { uint32_t x15 = (x8 | x14);
- { uint32_t x16 = (x6 | x15);
- { uint32_t x17 = (x4 | x16);
- { uint32_t x18 = (x2 | x17);
- out[0] = x18;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e213m3_7limbs/fenz.v b/src/Specific/montgomery32_2e213m3_7limbs/fenz.v
deleted file mode 100644
index 607e2f7f6..000000000
--- a/src/Specific/montgomery32_2e213m3_7limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e213m3_7limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e213m3_7limbs/fenzDisplay.log b/src/Specific/montgomery32_2e213m3_7limbs/fenzDisplay.log
deleted file mode 100644
index 9685f89d7..000000000
--- a/src/Specific/montgomery32_2e213m3_7limbs/fenzDisplay.log
+++ /dev/null
@@ -1,13 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x13 = (x12 | x11);
- uint32_t x14 = (x10 | x13);
- uint32_t x15 = (x8 | x14);
- uint32_t x16 = (x6 | x15);
- uint32_t x17 = (x4 | x16);
- uint32_t x18 = (x2 | x17);
- return x18)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e213m3_7limbs/fenzDisplay.v b/src/Specific/montgomery32_2e213m3_7limbs/fenzDisplay.v
deleted file mode 100644
index 338b01d76..000000000
--- a/src/Specific/montgomery32_2e213m3_7limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e213m3_7limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e213m3_7limbs/feopp.v b/src/Specific/montgomery32_2e213m3_7limbs/feopp.v
deleted file mode 100644
index f9988be5b..000000000
--- a/src/Specific/montgomery32_2e213m3_7limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e213m3_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e213m3_7limbs/feoppDisplay.v b/src/Specific/montgomery32_2e213m3_7limbs/feoppDisplay.v
deleted file mode 100644
index cfd020301..000000000
--- a/src/Specific/montgomery32_2e213m3_7limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e213m3_7limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e213m3_7limbs/fesquare.c b/src/Specific/montgomery32_2e213m3_7limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e213m3_7limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e213m3_7limbs/fesub.v b/src/Specific/montgomery32_2e213m3_7limbs/fesub.v
deleted file mode 100644
index 4704a8254..000000000
--- a/src/Specific/montgomery32_2e213m3_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e213m3_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e213m3_7limbs/fesubDisplay.v b/src/Specific/montgomery32_2e213m3_7limbs/fesubDisplay.v
deleted file mode 100644
index f1f14e2b6..000000000
--- a/src/Specific/montgomery32_2e213m3_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e213m3_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e213m3_7limbs/py_interpreter.sh b/src/Specific/montgomery32_2e213m3_7limbs/py_interpreter.sh
deleted file mode 100755
index a5e8679c5..000000000
--- a/src/Specific/montgomery32_2e213m3_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**213 - 3' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e216m2e108m1_7limbs/CurveParameters.v b/src/Specific/montgomery32_2e216m2e108m1_7limbs/CurveParameters.v
deleted file mode 100644
index aac012bf0..000000000
--- a/src/Specific/montgomery32_2e216m2e108m1_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^216 - 2^108 - 1
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 32;
- bitwidth := 32;
- s := 2^216;
- c := [(1, 1); (2^108, 1)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e216m2e108m1_7limbs/Synthesis.v b/src/Specific/montgomery32_2e216m2e108m1_7limbs/Synthesis.v
deleted file mode 100644
index 2cd5c636b..000000000
--- a/src/Specific/montgomery32_2e216m2e108m1_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e216m2e108m1_7limbs.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/montgomery32_2e216m2e108m1_7limbs/compiler.sh b/src/Specific/montgomery32_2e216m2e108m1_7limbs/compiler.sh
deleted file mode 100755
index 2fa1f2f7d..000000000
--- a/src/Specific/montgomery32_2e216m2e108m1_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e216m2e108m1_7limbs/compilerxx.sh b/src/Specific/montgomery32_2e216m2e108m1_7limbs/compilerxx.sh
deleted file mode 100755
index 57d710a55..000000000
--- a/src/Specific/montgomery32_2e216m2e108m1_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e216m2e108m1_7limbs/feadd.c b/src/Specific/montgomery32_2e216m2e108m1_7limbs/feadd.c
deleted file mode 100644
index 7ddb08291..000000000
--- a/src/Specific/montgomery32_2e216m2e108m1_7limbs/feadd.c
+++ /dev/null
@@ -1,46 +0,0 @@
-static void feadd(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- { uint32_t x29; uint8_t x30 = _addcarryx_u32(0x0, x5, x17, &x29);
- { uint32_t x32; uint8_t x33 = _addcarryx_u32(x30, x7, x19, &x32);
- { uint32_t x35; uint8_t x36 = _addcarryx_u32(x33, x9, x21, &x35);
- { uint32_t x38; uint8_t x39 = _addcarryx_u32(x36, x11, x23, &x38);
- { uint32_t x41; uint8_t x42 = _addcarryx_u32(x39, x13, x25, &x41);
- { uint32_t x44; uint8_t x45 = _addcarryx_u32(x42, x15, x27, &x44);
- { uint32_t x47; uint8_t x48 = _addcarryx_u32(x45, x14, x26, &x47);
- { uint32_t x50; uint8_t x51 = _subborrow_u32(0x0, x29, 0xffffffff, &x50);
- { uint32_t x53; uint8_t x54 = _subborrow_u32(x51, x32, 0xffffffff, &x53);
- { uint32_t x56; uint8_t x57 = _subborrow_u32(x54, x35, 0xffffffff, &x56);
- { uint32_t x59; uint8_t x60 = _subborrow_u32(x57, x38, 0xffffefff, &x59);
- { uint32_t x62; uint8_t x63 = _subborrow_u32(x60, x41, 0xffffffff, &x62);
- { uint32_t x65; uint8_t x66 = _subborrow_u32(x63, x44, 0xffffffff, &x65);
- { uint32_t x68; uint8_t x69 = _subborrow_u32(x66, x47, 0xffffff, &x68);
- { uint32_t _; uint8_t x72 = _subborrow_u32(x69, x48, 0x0, &_);
- { uint32_t x73 = cmovznz32(x72, x68, x47);
- { uint32_t x74 = cmovznz32(x72, x65, x44);
- { uint32_t x75 = cmovznz32(x72, x62, x41);
- { uint32_t x76 = cmovznz32(x72, x59, x38);
- { uint32_t x77 = cmovznz32(x72, x56, x35);
- { uint32_t x78 = cmovznz32(x72, x53, x32);
- { uint32_t x79 = cmovznz32(x72, x50, x29);
- out[0] = x79;
- out[1] = x78;
- out[2] = x77;
- out[3] = x76;
- out[4] = x75;
- out[5] = x74;
- out[6] = x73;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e216m2e108m1_7limbs/feadd.v b/src/Specific/montgomery32_2e216m2e108m1_7limbs/feadd.v
deleted file mode 100644
index 964bc85ce..000000000
--- a/src/Specific/montgomery32_2e216m2e108m1_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e216m2e108m1_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e216m2e108m1_7limbs/feaddDisplay.log b/src/Specific/montgomery32_2e216m2e108m1_7limbs/feaddDisplay.log
deleted file mode 100644
index 8dd5626ae..000000000
--- a/src/Specific/montgomery32_2e216m2e108m1_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint32_t x29, uint8_t x30 = addcarryx_u32(0x0, x5, x17);
- uint32_t x32, uint8_t x33 = addcarryx_u32(x30, x7, x19);
- uint32_t x35, uint8_t x36 = addcarryx_u32(x33, x9, x21);
- uint32_t x38, uint8_t x39 = addcarryx_u32(x36, x11, x23);
- uint32_t x41, uint8_t x42 = addcarryx_u32(x39, x13, x25);
- uint32_t x44, uint8_t x45 = addcarryx_u32(x42, x15, x27);
- uint32_t x47, uint8_t x48 = addcarryx_u32(x45, x14, x26);
- uint32_t x50, uint8_t x51 = subborrow_u32(0x0, x29, 0xffffffff);
- uint32_t x53, uint8_t x54 = subborrow_u32(x51, x32, 0xffffffff);
- uint32_t x56, uint8_t x57 = subborrow_u32(x54, x35, 0xffffffff);
- uint32_t x59, uint8_t x60 = subborrow_u32(x57, x38, 0xffffefff);
- uint32_t x62, uint8_t x63 = subborrow_u32(x60, x41, 0xffffffff);
- uint32_t x65, uint8_t x66 = subborrow_u32(x63, x44, 0xffffffff);
- uint32_t x68, uint8_t x69 = subborrow_u32(x66, x47, 0xffffff);
- uint32_t _, uint8_t x72 = subborrow_u32(x69, x48, 0x0);
- uint32_t x73 = cmovznz32(x72, x68, x47);
- uint32_t x74 = cmovznz32(x72, x65, x44);
- uint32_t x75 = cmovznz32(x72, x62, x41);
- uint32_t x76 = cmovznz32(x72, x59, x38);
- uint32_t x77 = cmovznz32(x72, x56, x35);
- uint32_t x78 = cmovznz32(x72, x53, x32);
- uint32_t x79 = cmovznz32(x72, x50, x29);
- return (x73, x74, x75, x76, x77, x78, x79))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/montgomery32_2e216m2e108m1_7limbs/feaddDisplay.v b/src/Specific/montgomery32_2e216m2e108m1_7limbs/feaddDisplay.v
deleted file mode 100644
index 5bbd74cbe..000000000
--- a/src/Specific/montgomery32_2e216m2e108m1_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e216m2e108m1_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e216m2e108m1_7limbs/femul.v b/src/Specific/montgomery32_2e216m2e108m1_7limbs/femul.v
deleted file mode 100644
index 3a0da14ae..000000000
--- a/src/Specific/montgomery32_2e216m2e108m1_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e216m2e108m1_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e216m2e108m1_7limbs/femulDisplay.v b/src/Specific/montgomery32_2e216m2e108m1_7limbs/femulDisplay.v
deleted file mode 100644
index f9ca0157f..000000000
--- a/src/Specific/montgomery32_2e216m2e108m1_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e216m2e108m1_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e216m2e108m1_7limbs/fenz.c b/src/Specific/montgomery32_2e216m2e108m1_7limbs/fenz.c
deleted file mode 100644
index 387dcfe67..000000000
--- a/src/Specific/montgomery32_2e216m2e108m1_7limbs/fenz.c
+++ /dev/null
@@ -1,17 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x13 = (x12 | x11);
- { uint32_t x14 = (x10 | x13);
- { uint32_t x15 = (x8 | x14);
- { uint32_t x16 = (x6 | x15);
- { uint32_t x17 = (x4 | x16);
- { uint32_t x18 = (x2 | x17);
- out[0] = x18;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e216m2e108m1_7limbs/fenz.v b/src/Specific/montgomery32_2e216m2e108m1_7limbs/fenz.v
deleted file mode 100644
index 3dd34901b..000000000
--- a/src/Specific/montgomery32_2e216m2e108m1_7limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e216m2e108m1_7limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e216m2e108m1_7limbs/fenzDisplay.log b/src/Specific/montgomery32_2e216m2e108m1_7limbs/fenzDisplay.log
deleted file mode 100644
index 9685f89d7..000000000
--- a/src/Specific/montgomery32_2e216m2e108m1_7limbs/fenzDisplay.log
+++ /dev/null
@@ -1,13 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x13 = (x12 | x11);
- uint32_t x14 = (x10 | x13);
- uint32_t x15 = (x8 | x14);
- uint32_t x16 = (x6 | x15);
- uint32_t x17 = (x4 | x16);
- uint32_t x18 = (x2 | x17);
- return x18)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e216m2e108m1_7limbs/fenzDisplay.v b/src/Specific/montgomery32_2e216m2e108m1_7limbs/fenzDisplay.v
deleted file mode 100644
index a54e3a6bb..000000000
--- a/src/Specific/montgomery32_2e216m2e108m1_7limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e216m2e108m1_7limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e216m2e108m1_7limbs/feopp.v b/src/Specific/montgomery32_2e216m2e108m1_7limbs/feopp.v
deleted file mode 100644
index d2387b0ec..000000000
--- a/src/Specific/montgomery32_2e216m2e108m1_7limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e216m2e108m1_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e216m2e108m1_7limbs/feoppDisplay.v b/src/Specific/montgomery32_2e216m2e108m1_7limbs/feoppDisplay.v
deleted file mode 100644
index 0cf1976b5..000000000
--- a/src/Specific/montgomery32_2e216m2e108m1_7limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e216m2e108m1_7limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e216m2e108m1_7limbs/fesquare.c b/src/Specific/montgomery32_2e216m2e108m1_7limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e216m2e108m1_7limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e216m2e108m1_7limbs/fesub.v b/src/Specific/montgomery32_2e216m2e108m1_7limbs/fesub.v
deleted file mode 100644
index 69af6b8b0..000000000
--- a/src/Specific/montgomery32_2e216m2e108m1_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e216m2e108m1_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e216m2e108m1_7limbs/fesubDisplay.v b/src/Specific/montgomery32_2e216m2e108m1_7limbs/fesubDisplay.v
deleted file mode 100644
index 4ffd5ff16..000000000
--- a/src/Specific/montgomery32_2e216m2e108m1_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e216m2e108m1_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e216m2e108m1_7limbs/py_interpreter.sh b/src/Specific/montgomery32_2e216m2e108m1_7limbs/py_interpreter.sh
deleted file mode 100755
index 344ee243b..000000000
--- a/src/Specific/montgomery32_2e216m2e108m1_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**216 - 2**108 - 1' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e221m3_7limbs/CurveParameters.v b/src/Specific/montgomery32_2e221m3_7limbs/CurveParameters.v
deleted file mode 100644
index 433140906..000000000
--- a/src/Specific/montgomery32_2e221m3_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^221 - 3
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 32;
- bitwidth := 32;
- s := 2^221;
- c := [(1, 3)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e221m3_7limbs/Synthesis.v b/src/Specific/montgomery32_2e221m3_7limbs/Synthesis.v
deleted file mode 100644
index 8e0463490..000000000
--- a/src/Specific/montgomery32_2e221m3_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e221m3_7limbs.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/montgomery32_2e221m3_7limbs/compiler.sh b/src/Specific/montgomery32_2e221m3_7limbs/compiler.sh
deleted file mode 100755
index 377abb3f0..000000000
--- a/src/Specific/montgomery32_2e221m3_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<221) - 3' "$@"
diff --git a/src/Specific/montgomery32_2e221m3_7limbs/compilerxx.sh b/src/Specific/montgomery32_2e221m3_7limbs/compilerxx.sh
deleted file mode 100755
index 108f5bfe3..000000000
--- a/src/Specific/montgomery32_2e221m3_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<221) - 3' "$@"
diff --git a/src/Specific/montgomery32_2e221m3_7limbs/feadd.c b/src/Specific/montgomery32_2e221m3_7limbs/feadd.c
deleted file mode 100644
index abe3c2d31..000000000
--- a/src/Specific/montgomery32_2e221m3_7limbs/feadd.c
+++ /dev/null
@@ -1,46 +0,0 @@
-static void feadd(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- { uint32_t x29; uint8_t x30 = _addcarryx_u32(0x0, x5, x17, &x29);
- { uint32_t x32; uint8_t x33 = _addcarryx_u32(x30, x7, x19, &x32);
- { uint32_t x35; uint8_t x36 = _addcarryx_u32(x33, x9, x21, &x35);
- { uint32_t x38; uint8_t x39 = _addcarryx_u32(x36, x11, x23, &x38);
- { uint32_t x41; uint8_t x42 = _addcarryx_u32(x39, x13, x25, &x41);
- { uint32_t x44; uint8_t x45 = _addcarryx_u32(x42, x15, x27, &x44);
- { uint32_t x47; uint8_t x48 = _addcarryx_u32(x45, x14, x26, &x47);
- { uint32_t x50; uint8_t x51 = _subborrow_u32(0x0, x29, 0xfffffffd, &x50);
- { uint32_t x53; uint8_t x54 = _subborrow_u32(x51, x32, 0xffffffff, &x53);
- { uint32_t x56; uint8_t x57 = _subborrow_u32(x54, x35, 0xffffffff, &x56);
- { uint32_t x59; uint8_t x60 = _subborrow_u32(x57, x38, 0xffffffff, &x59);
- { uint32_t x62; uint8_t x63 = _subborrow_u32(x60, x41, 0xffffffff, &x62);
- { uint32_t x65; uint8_t x66 = _subborrow_u32(x63, x44, 0xffffffff, &x65);
- { uint32_t x68; uint8_t x69 = _subborrow_u32(x66, x47, 0x1fffffff, &x68);
- { uint32_t _; uint8_t x72 = _subborrow_u32(x69, x48, 0x0, &_);
- { uint32_t x73 = cmovznz32(x72, x68, x47);
- { uint32_t x74 = cmovznz32(x72, x65, x44);
- { uint32_t x75 = cmovznz32(x72, x62, x41);
- { uint32_t x76 = cmovznz32(x72, x59, x38);
- { uint32_t x77 = cmovznz32(x72, x56, x35);
- { uint32_t x78 = cmovznz32(x72, x53, x32);
- { uint32_t x79 = cmovznz32(x72, x50, x29);
- out[0] = x79;
- out[1] = x78;
- out[2] = x77;
- out[3] = x76;
- out[4] = x75;
- out[5] = x74;
- out[6] = x73;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e221m3_7limbs/feadd.v b/src/Specific/montgomery32_2e221m3_7limbs/feadd.v
deleted file mode 100644
index 42ea21a41..000000000
--- a/src/Specific/montgomery32_2e221m3_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e221m3_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e221m3_7limbs/feaddDisplay.log b/src/Specific/montgomery32_2e221m3_7limbs/feaddDisplay.log
deleted file mode 100644
index 9586e9d0b..000000000
--- a/src/Specific/montgomery32_2e221m3_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint32_t x29, uint8_t x30 = addcarryx_u32(0x0, x5, x17);
- uint32_t x32, uint8_t x33 = addcarryx_u32(x30, x7, x19);
- uint32_t x35, uint8_t x36 = addcarryx_u32(x33, x9, x21);
- uint32_t x38, uint8_t x39 = addcarryx_u32(x36, x11, x23);
- uint32_t x41, uint8_t x42 = addcarryx_u32(x39, x13, x25);
- uint32_t x44, uint8_t x45 = addcarryx_u32(x42, x15, x27);
- uint32_t x47, uint8_t x48 = addcarryx_u32(x45, x14, x26);
- uint32_t x50, uint8_t x51 = subborrow_u32(0x0, x29, 0xfffffffd);
- uint32_t x53, uint8_t x54 = subborrow_u32(x51, x32, 0xffffffff);
- uint32_t x56, uint8_t x57 = subborrow_u32(x54, x35, 0xffffffff);
- uint32_t x59, uint8_t x60 = subborrow_u32(x57, x38, 0xffffffff);
- uint32_t x62, uint8_t x63 = subborrow_u32(x60, x41, 0xffffffff);
- uint32_t x65, uint8_t x66 = subborrow_u32(x63, x44, 0xffffffff);
- uint32_t x68, uint8_t x69 = subborrow_u32(x66, x47, 0x1fffffff);
- uint32_t _, uint8_t x72 = subborrow_u32(x69, x48, 0x0);
- uint32_t x73 = cmovznz32(x72, x68, x47);
- uint32_t x74 = cmovznz32(x72, x65, x44);
- uint32_t x75 = cmovznz32(x72, x62, x41);
- uint32_t x76 = cmovznz32(x72, x59, x38);
- uint32_t x77 = cmovznz32(x72, x56, x35);
- uint32_t x78 = cmovznz32(x72, x53, x32);
- uint32_t x79 = cmovznz32(x72, x50, x29);
- return (x73, x74, x75, x76, x77, x78, x79))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/montgomery32_2e221m3_7limbs/feaddDisplay.v b/src/Specific/montgomery32_2e221m3_7limbs/feaddDisplay.v
deleted file mode 100644
index ae294b64f..000000000
--- a/src/Specific/montgomery32_2e221m3_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e221m3_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e221m3_7limbs/femul.v b/src/Specific/montgomery32_2e221m3_7limbs/femul.v
deleted file mode 100644
index 5330ee2ad..000000000
--- a/src/Specific/montgomery32_2e221m3_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e221m3_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e221m3_7limbs/femulDisplay.v b/src/Specific/montgomery32_2e221m3_7limbs/femulDisplay.v
deleted file mode 100644
index 8f37f08f4..000000000
--- a/src/Specific/montgomery32_2e221m3_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e221m3_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e221m3_7limbs/fenz.c b/src/Specific/montgomery32_2e221m3_7limbs/fenz.c
deleted file mode 100644
index 387dcfe67..000000000
--- a/src/Specific/montgomery32_2e221m3_7limbs/fenz.c
+++ /dev/null
@@ -1,17 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x13 = (x12 | x11);
- { uint32_t x14 = (x10 | x13);
- { uint32_t x15 = (x8 | x14);
- { uint32_t x16 = (x6 | x15);
- { uint32_t x17 = (x4 | x16);
- { uint32_t x18 = (x2 | x17);
- out[0] = x18;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e221m3_7limbs/fenz.v b/src/Specific/montgomery32_2e221m3_7limbs/fenz.v
deleted file mode 100644
index e5ebd6e56..000000000
--- a/src/Specific/montgomery32_2e221m3_7limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e221m3_7limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e221m3_7limbs/fenzDisplay.log b/src/Specific/montgomery32_2e221m3_7limbs/fenzDisplay.log
deleted file mode 100644
index 9685f89d7..000000000
--- a/src/Specific/montgomery32_2e221m3_7limbs/fenzDisplay.log
+++ /dev/null
@@ -1,13 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x13 = (x12 | x11);
- uint32_t x14 = (x10 | x13);
- uint32_t x15 = (x8 | x14);
- uint32_t x16 = (x6 | x15);
- uint32_t x17 = (x4 | x16);
- uint32_t x18 = (x2 | x17);
- return x18)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e221m3_7limbs/fenzDisplay.v b/src/Specific/montgomery32_2e221m3_7limbs/fenzDisplay.v
deleted file mode 100644
index 263da955d..000000000
--- a/src/Specific/montgomery32_2e221m3_7limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e221m3_7limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e221m3_7limbs/feopp.v b/src/Specific/montgomery32_2e221m3_7limbs/feopp.v
deleted file mode 100644
index 64a1af2ad..000000000
--- a/src/Specific/montgomery32_2e221m3_7limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e221m3_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e221m3_7limbs/feoppDisplay.v b/src/Specific/montgomery32_2e221m3_7limbs/feoppDisplay.v
deleted file mode 100644
index 2e30d7af3..000000000
--- a/src/Specific/montgomery32_2e221m3_7limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e221m3_7limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e221m3_7limbs/fesquare.c b/src/Specific/montgomery32_2e221m3_7limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e221m3_7limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e221m3_7limbs/fesub.v b/src/Specific/montgomery32_2e221m3_7limbs/fesub.v
deleted file mode 100644
index 0938af09d..000000000
--- a/src/Specific/montgomery32_2e221m3_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e221m3_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e221m3_7limbs/fesubDisplay.v b/src/Specific/montgomery32_2e221m3_7limbs/fesubDisplay.v
deleted file mode 100644
index 966fae95a..000000000
--- a/src/Specific/montgomery32_2e221m3_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e221m3_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e221m3_7limbs/py_interpreter.sh b/src/Specific/montgomery32_2e221m3_7limbs/py_interpreter.sh
deleted file mode 100755
index fb06eaaa5..000000000
--- a/src/Specific/montgomery32_2e221m3_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**221 - 3' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e222m117_7limbs/CurveParameters.v b/src/Specific/montgomery32_2e222m117_7limbs/CurveParameters.v
deleted file mode 100644
index fdfdf452e..000000000
--- a/src/Specific/montgomery32_2e222m117_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^222 - 117
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 32;
- bitwidth := 32;
- s := 2^222;
- c := [(1, 117)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e222m117_7limbs/Synthesis.v b/src/Specific/montgomery32_2e222m117_7limbs/Synthesis.v
deleted file mode 100644
index 395113bd9..000000000
--- a/src/Specific/montgomery32_2e222m117_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e222m117_7limbs.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/montgomery32_2e222m117_7limbs/compiler.sh b/src/Specific/montgomery32_2e222m117_7limbs/compiler.sh
deleted file mode 100755
index 11acff1e4..000000000
--- a/src/Specific/montgomery32_2e222m117_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<222) - 117' "$@"
diff --git a/src/Specific/montgomery32_2e222m117_7limbs/compilerxx.sh b/src/Specific/montgomery32_2e222m117_7limbs/compilerxx.sh
deleted file mode 100755
index 1dc8fd0f2..000000000
--- a/src/Specific/montgomery32_2e222m117_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<222) - 117' "$@"
diff --git a/src/Specific/montgomery32_2e222m117_7limbs/feadd.c b/src/Specific/montgomery32_2e222m117_7limbs/feadd.c
deleted file mode 100644
index b687807e2..000000000
--- a/src/Specific/montgomery32_2e222m117_7limbs/feadd.c
+++ /dev/null
@@ -1,46 +0,0 @@
-static void feadd(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- { uint32_t x29; uint8_t x30 = _addcarryx_u32(0x0, x5, x17, &x29);
- { uint32_t x32; uint8_t x33 = _addcarryx_u32(x30, x7, x19, &x32);
- { uint32_t x35; uint8_t x36 = _addcarryx_u32(x33, x9, x21, &x35);
- { uint32_t x38; uint8_t x39 = _addcarryx_u32(x36, x11, x23, &x38);
- { uint32_t x41; uint8_t x42 = _addcarryx_u32(x39, x13, x25, &x41);
- { uint32_t x44; uint8_t x45 = _addcarryx_u32(x42, x15, x27, &x44);
- { uint32_t x47; uint8_t x48 = _addcarryx_u32(x45, x14, x26, &x47);
- { uint32_t x50; uint8_t x51 = _subborrow_u32(0x0, x29, 0xffffff8b, &x50);
- { uint32_t x53; uint8_t x54 = _subborrow_u32(x51, x32, 0xffffffff, &x53);
- { uint32_t x56; uint8_t x57 = _subborrow_u32(x54, x35, 0xffffffff, &x56);
- { uint32_t x59; uint8_t x60 = _subborrow_u32(x57, x38, 0xffffffff, &x59);
- { uint32_t x62; uint8_t x63 = _subborrow_u32(x60, x41, 0xffffffff, &x62);
- { uint32_t x65; uint8_t x66 = _subborrow_u32(x63, x44, 0xffffffff, &x65);
- { uint32_t x68; uint8_t x69 = _subborrow_u32(x66, x47, 0x3fffffff, &x68);
- { uint32_t _; uint8_t x72 = _subborrow_u32(x69, x48, 0x0, &_);
- { uint32_t x73 = cmovznz32(x72, x68, x47);
- { uint32_t x74 = cmovznz32(x72, x65, x44);
- { uint32_t x75 = cmovznz32(x72, x62, x41);
- { uint32_t x76 = cmovznz32(x72, x59, x38);
- { uint32_t x77 = cmovznz32(x72, x56, x35);
- { uint32_t x78 = cmovznz32(x72, x53, x32);
- { uint32_t x79 = cmovznz32(x72, x50, x29);
- out[0] = x79;
- out[1] = x78;
- out[2] = x77;
- out[3] = x76;
- out[4] = x75;
- out[5] = x74;
- out[6] = x73;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e222m117_7limbs/feadd.v b/src/Specific/montgomery32_2e222m117_7limbs/feadd.v
deleted file mode 100644
index 2e16f156d..000000000
--- a/src/Specific/montgomery32_2e222m117_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e222m117_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e222m117_7limbs/feaddDisplay.log b/src/Specific/montgomery32_2e222m117_7limbs/feaddDisplay.log
deleted file mode 100644
index 42c686f39..000000000
--- a/src/Specific/montgomery32_2e222m117_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint32_t x29, uint8_t x30 = addcarryx_u32(0x0, x5, x17);
- uint32_t x32, uint8_t x33 = addcarryx_u32(x30, x7, x19);
- uint32_t x35, uint8_t x36 = addcarryx_u32(x33, x9, x21);
- uint32_t x38, uint8_t x39 = addcarryx_u32(x36, x11, x23);
- uint32_t x41, uint8_t x42 = addcarryx_u32(x39, x13, x25);
- uint32_t x44, uint8_t x45 = addcarryx_u32(x42, x15, x27);
- uint32_t x47, uint8_t x48 = addcarryx_u32(x45, x14, x26);
- uint32_t x50, uint8_t x51 = subborrow_u32(0x0, x29, 0xffffff8b);
- uint32_t x53, uint8_t x54 = subborrow_u32(x51, x32, 0xffffffff);
- uint32_t x56, uint8_t x57 = subborrow_u32(x54, x35, 0xffffffff);
- uint32_t x59, uint8_t x60 = subborrow_u32(x57, x38, 0xffffffff);
- uint32_t x62, uint8_t x63 = subborrow_u32(x60, x41, 0xffffffff);
- uint32_t x65, uint8_t x66 = subborrow_u32(x63, x44, 0xffffffff);
- uint32_t x68, uint8_t x69 = subborrow_u32(x66, x47, 0x3fffffff);
- uint32_t _, uint8_t x72 = subborrow_u32(x69, x48, 0x0);
- uint32_t x73 = cmovznz32(x72, x68, x47);
- uint32_t x74 = cmovznz32(x72, x65, x44);
- uint32_t x75 = cmovznz32(x72, x62, x41);
- uint32_t x76 = cmovznz32(x72, x59, x38);
- uint32_t x77 = cmovznz32(x72, x56, x35);
- uint32_t x78 = cmovznz32(x72, x53, x32);
- uint32_t x79 = cmovznz32(x72, x50, x29);
- return (x73, x74, x75, x76, x77, x78, x79))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/montgomery32_2e222m117_7limbs/feaddDisplay.v b/src/Specific/montgomery32_2e222m117_7limbs/feaddDisplay.v
deleted file mode 100644
index 96e40d62b..000000000
--- a/src/Specific/montgomery32_2e222m117_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e222m117_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e222m117_7limbs/femul.v b/src/Specific/montgomery32_2e222m117_7limbs/femul.v
deleted file mode 100644
index 83cc67c29..000000000
--- a/src/Specific/montgomery32_2e222m117_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e222m117_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e222m117_7limbs/femulDisplay.v b/src/Specific/montgomery32_2e222m117_7limbs/femulDisplay.v
deleted file mode 100644
index e50d33416..000000000
--- a/src/Specific/montgomery32_2e222m117_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e222m117_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e222m117_7limbs/fenz.c b/src/Specific/montgomery32_2e222m117_7limbs/fenz.c
deleted file mode 100644
index 387dcfe67..000000000
--- a/src/Specific/montgomery32_2e222m117_7limbs/fenz.c
+++ /dev/null
@@ -1,17 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x13 = (x12 | x11);
- { uint32_t x14 = (x10 | x13);
- { uint32_t x15 = (x8 | x14);
- { uint32_t x16 = (x6 | x15);
- { uint32_t x17 = (x4 | x16);
- { uint32_t x18 = (x2 | x17);
- out[0] = x18;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e222m117_7limbs/fenz.v b/src/Specific/montgomery32_2e222m117_7limbs/fenz.v
deleted file mode 100644
index 52897c98e..000000000
--- a/src/Specific/montgomery32_2e222m117_7limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e222m117_7limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e222m117_7limbs/fenzDisplay.log b/src/Specific/montgomery32_2e222m117_7limbs/fenzDisplay.log
deleted file mode 100644
index 9685f89d7..000000000
--- a/src/Specific/montgomery32_2e222m117_7limbs/fenzDisplay.log
+++ /dev/null
@@ -1,13 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x13 = (x12 | x11);
- uint32_t x14 = (x10 | x13);
- uint32_t x15 = (x8 | x14);
- uint32_t x16 = (x6 | x15);
- uint32_t x17 = (x4 | x16);
- uint32_t x18 = (x2 | x17);
- return x18)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e222m117_7limbs/fenzDisplay.v b/src/Specific/montgomery32_2e222m117_7limbs/fenzDisplay.v
deleted file mode 100644
index 5938d7ab9..000000000
--- a/src/Specific/montgomery32_2e222m117_7limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e222m117_7limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e222m117_7limbs/feopp.v b/src/Specific/montgomery32_2e222m117_7limbs/feopp.v
deleted file mode 100644
index 31c54f100..000000000
--- a/src/Specific/montgomery32_2e222m117_7limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e222m117_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e222m117_7limbs/feoppDisplay.v b/src/Specific/montgomery32_2e222m117_7limbs/feoppDisplay.v
deleted file mode 100644
index e51b7e893..000000000
--- a/src/Specific/montgomery32_2e222m117_7limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e222m117_7limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e222m117_7limbs/fesquare.c b/src/Specific/montgomery32_2e222m117_7limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e222m117_7limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e222m117_7limbs/fesub.v b/src/Specific/montgomery32_2e222m117_7limbs/fesub.v
deleted file mode 100644
index 24410b11b..000000000
--- a/src/Specific/montgomery32_2e222m117_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e222m117_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e222m117_7limbs/fesubDisplay.v b/src/Specific/montgomery32_2e222m117_7limbs/fesubDisplay.v
deleted file mode 100644
index c099e31ef..000000000
--- a/src/Specific/montgomery32_2e222m117_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e222m117_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e222m117_7limbs/py_interpreter.sh b/src/Specific/montgomery32_2e222m117_7limbs/py_interpreter.sh
deleted file mode 100755
index db48f60b3..000000000
--- a/src/Specific/montgomery32_2e222m117_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**222 - 117' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e224m2e96p1_7limbs/CurveParameters.v b/src/Specific/montgomery32_2e224m2e96p1_7limbs/CurveParameters.v
deleted file mode 100644
index 5777d34fe..000000000
--- a/src/Specific/montgomery32_2e224m2e96p1_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^224 - 2^96 + 1
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 32;
- bitwidth := 32;
- s := 2^224;
- c := [(1, -1); (2^96, 1)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e224m2e96p1_7limbs/Synthesis.v b/src/Specific/montgomery32_2e224m2e96p1_7limbs/Synthesis.v
deleted file mode 100644
index 818e75983..000000000
--- a/src/Specific/montgomery32_2e224m2e96p1_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e224m2e96p1_7limbs.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/montgomery32_2e224m2e96p1_7limbs/compiler.sh b/src/Specific/montgomery32_2e224m2e96p1_7limbs/compiler.sh
deleted file mode 100755
index c53957a89..000000000
--- a/src/Specific/montgomery32_2e224m2e96p1_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1' "$@"
diff --git a/src/Specific/montgomery32_2e224m2e96p1_7limbs/compilerxx.sh b/src/Specific/montgomery32_2e224m2e96p1_7limbs/compilerxx.sh
deleted file mode 100755
index 918088932..000000000
--- a/src/Specific/montgomery32_2e224m2e96p1_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1' "$@"
diff --git a/src/Specific/montgomery32_2e224m2e96p1_7limbs/feadd.c b/src/Specific/montgomery32_2e224m2e96p1_7limbs/feadd.c
deleted file mode 100644
index accfe4540..000000000
--- a/src/Specific/montgomery32_2e224m2e96p1_7limbs/feadd.c
+++ /dev/null
@@ -1,46 +0,0 @@
-static void feadd(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- { uint32_t x29; uint8_t x30 = _addcarryx_u32(0x0, x5, x17, &x29);
- { uint32_t x32; uint8_t x33 = _addcarryx_u32(x30, x7, x19, &x32);
- { uint32_t x35; uint8_t x36 = _addcarryx_u32(x33, x9, x21, &x35);
- { uint32_t x38; uint8_t x39 = _addcarryx_u32(x36, x11, x23, &x38);
- { uint32_t x41; uint8_t x42 = _addcarryx_u32(x39, x13, x25, &x41);
- { uint32_t x44; uint8_t x45 = _addcarryx_u32(x42, x15, x27, &x44);
- { uint32_t x47; uint8_t x48 = _addcarryx_u32(x45, x14, x26, &x47);
- { uint32_t x50; uint8_t x51 = _subborrow_u32(0x0, x29, 0x1, &x50);
- { uint32_t x53; uint8_t x54 = _subborrow_u32(x51, x32, 0x0, &x53);
- { uint32_t x56; uint8_t x57 = _subborrow_u32(x54, x35, 0x0, &x56);
- { uint32_t x59; uint8_t x60 = _subborrow_u32(x57, x38, 0xffffffff, &x59);
- { uint32_t x62; uint8_t x63 = _subborrow_u32(x60, x41, 0xffffffff, &x62);
- { uint32_t x65; uint8_t x66 = _subborrow_u32(x63, x44, 0xffffffff, &x65);
- { uint32_t x68; uint8_t x69 = _subborrow_u32(x66, x47, 0xffffffff, &x68);
- { uint32_t _; uint8_t x72 = _subborrow_u32(x69, x48, 0x0, &_);
- { uint32_t x73 = cmovznz32(x72, x68, x47);
- { uint32_t x74 = cmovznz32(x72, x65, x44);
- { uint32_t x75 = cmovznz32(x72, x62, x41);
- { uint32_t x76 = cmovznz32(x72, x59, x38);
- { uint32_t x77 = cmovznz32(x72, x56, x35);
- { uint32_t x78 = cmovznz32(x72, x53, x32);
- { uint32_t x79 = cmovznz32(x72, x50, x29);
- out[0] = x79;
- out[1] = x78;
- out[2] = x77;
- out[3] = x76;
- out[4] = x75;
- out[5] = x74;
- out[6] = x73;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e224m2e96p1_7limbs/feadd.v b/src/Specific/montgomery32_2e224m2e96p1_7limbs/feadd.v
deleted file mode 100644
index b5f8d616e..000000000
--- a/src/Specific/montgomery32_2e224m2e96p1_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e224m2e96p1_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e224m2e96p1_7limbs/feaddDisplay.log b/src/Specific/montgomery32_2e224m2e96p1_7limbs/feaddDisplay.log
deleted file mode 100644
index e35ab18d5..000000000
--- a/src/Specific/montgomery32_2e224m2e96p1_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint32_t x29, uint8_t x30 = addcarryx_u32(0x0, x5, x17);
- uint32_t x32, uint8_t x33 = addcarryx_u32(x30, x7, x19);
- uint32_t x35, uint8_t x36 = addcarryx_u32(x33, x9, x21);
- uint32_t x38, uint8_t x39 = addcarryx_u32(x36, x11, x23);
- uint32_t x41, uint8_t x42 = addcarryx_u32(x39, x13, x25);
- uint32_t x44, uint8_t x45 = addcarryx_u32(x42, x15, x27);
- uint32_t x47, uint8_t x48 = addcarryx_u32(x45, x14, x26);
- uint32_t x50, uint8_t x51 = subborrow_u32(0x0, x29, 0x1);
- uint32_t x53, uint8_t x54 = subborrow_u32(x51, x32, 0x0);
- uint32_t x56, uint8_t x57 = subborrow_u32(x54, x35, 0x0);
- uint32_t x59, uint8_t x60 = subborrow_u32(x57, x38, 0xffffffff);
- uint32_t x62, uint8_t x63 = subborrow_u32(x60, x41, 0xffffffff);
- uint32_t x65, uint8_t x66 = subborrow_u32(x63, x44, 0xffffffff);
- uint32_t x68, uint8_t x69 = subborrow_u32(x66, x47, 0xffffffff);
- uint32_t _, uint8_t x72 = subborrow_u32(x69, x48, 0x0);
- uint32_t x73 = cmovznz32(x72, x68, x47);
- uint32_t x74 = cmovznz32(x72, x65, x44);
- uint32_t x75 = cmovznz32(x72, x62, x41);
- uint32_t x76 = cmovznz32(x72, x59, x38);
- uint32_t x77 = cmovznz32(x72, x56, x35);
- uint32_t x78 = cmovznz32(x72, x53, x32);
- uint32_t x79 = cmovznz32(x72, x50, x29);
- return (x73, x74, x75, x76, x77, x78, x79))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/montgomery32_2e224m2e96p1_7limbs/feaddDisplay.v b/src/Specific/montgomery32_2e224m2e96p1_7limbs/feaddDisplay.v
deleted file mode 100644
index cd95abdd5..000000000
--- a/src/Specific/montgomery32_2e224m2e96p1_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e224m2e96p1_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e224m2e96p1_7limbs/femul.v b/src/Specific/montgomery32_2e224m2e96p1_7limbs/femul.v
deleted file mode 100644
index 1dbf704a0..000000000
--- a/src/Specific/montgomery32_2e224m2e96p1_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e224m2e96p1_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e224m2e96p1_7limbs/femulDisplay.v b/src/Specific/montgomery32_2e224m2e96p1_7limbs/femulDisplay.v
deleted file mode 100644
index bba88e5c1..000000000
--- a/src/Specific/montgomery32_2e224m2e96p1_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e224m2e96p1_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e224m2e96p1_7limbs/fenz.c b/src/Specific/montgomery32_2e224m2e96p1_7limbs/fenz.c
deleted file mode 100644
index 387dcfe67..000000000
--- a/src/Specific/montgomery32_2e224m2e96p1_7limbs/fenz.c
+++ /dev/null
@@ -1,17 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x13 = (x12 | x11);
- { uint32_t x14 = (x10 | x13);
- { uint32_t x15 = (x8 | x14);
- { uint32_t x16 = (x6 | x15);
- { uint32_t x17 = (x4 | x16);
- { uint32_t x18 = (x2 | x17);
- out[0] = x18;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e224m2e96p1_7limbs/fenz.v b/src/Specific/montgomery32_2e224m2e96p1_7limbs/fenz.v
deleted file mode 100644
index 455eca214..000000000
--- a/src/Specific/montgomery32_2e224m2e96p1_7limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e224m2e96p1_7limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e224m2e96p1_7limbs/fenzDisplay.log b/src/Specific/montgomery32_2e224m2e96p1_7limbs/fenzDisplay.log
deleted file mode 100644
index 9685f89d7..000000000
--- a/src/Specific/montgomery32_2e224m2e96p1_7limbs/fenzDisplay.log
+++ /dev/null
@@ -1,13 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x13 = (x12 | x11);
- uint32_t x14 = (x10 | x13);
- uint32_t x15 = (x8 | x14);
- uint32_t x16 = (x6 | x15);
- uint32_t x17 = (x4 | x16);
- uint32_t x18 = (x2 | x17);
- return x18)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e224m2e96p1_7limbs/fenzDisplay.v b/src/Specific/montgomery32_2e224m2e96p1_7limbs/fenzDisplay.v
deleted file mode 100644
index b703fdefb..000000000
--- a/src/Specific/montgomery32_2e224m2e96p1_7limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e224m2e96p1_7limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e224m2e96p1_7limbs/feopp.v b/src/Specific/montgomery32_2e224m2e96p1_7limbs/feopp.v
deleted file mode 100644
index d8e27ed3a..000000000
--- a/src/Specific/montgomery32_2e224m2e96p1_7limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e224m2e96p1_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e224m2e96p1_7limbs/feoppDisplay.v b/src/Specific/montgomery32_2e224m2e96p1_7limbs/feoppDisplay.v
deleted file mode 100644
index a00cc9448..000000000
--- a/src/Specific/montgomery32_2e224m2e96p1_7limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e224m2e96p1_7limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e224m2e96p1_7limbs/fesquare.c b/src/Specific/montgomery32_2e224m2e96p1_7limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e224m2e96p1_7limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e224m2e96p1_7limbs/fesub.v b/src/Specific/montgomery32_2e224m2e96p1_7limbs/fesub.v
deleted file mode 100644
index 5c0997f5d..000000000
--- a/src/Specific/montgomery32_2e224m2e96p1_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e224m2e96p1_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e224m2e96p1_7limbs/fesubDisplay.v b/src/Specific/montgomery32_2e224m2e96p1_7limbs/fesubDisplay.v
deleted file mode 100644
index f8ea98b3d..000000000
--- a/src/Specific/montgomery32_2e224m2e96p1_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e224m2e96p1_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e224m2e96p1_7limbs/py_interpreter.sh b/src/Specific/montgomery32_2e224m2e96p1_7limbs/py_interpreter.sh
deleted file mode 100755
index 9bbdf2022..000000000
--- a/src/Specific/montgomery32_2e224m2e96p1_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**224 - 2**96 + 1' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e226m5_8limbs/CurveParameters.v b/src/Specific/montgomery32_2e226m5_8limbs/CurveParameters.v
deleted file mode 100644
index d42852590..000000000
--- a/src/Specific/montgomery32_2e226m5_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^226 - 5
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 32;
- bitwidth := 32;
- s := 2^226;
- c := [(1, 5)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e226m5_8limbs/Synthesis.v b/src/Specific/montgomery32_2e226m5_8limbs/Synthesis.v
deleted file mode 100644
index fac23b95f..000000000
--- a/src/Specific/montgomery32_2e226m5_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e226m5_8limbs.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/montgomery32_2e226m5_8limbs/compiler.sh b/src/Specific/montgomery32_2e226m5_8limbs/compiler.sh
deleted file mode 100755
index 74803f86b..000000000
--- a/src/Specific/montgomery32_2e226m5_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<226) - 5' "$@"
diff --git a/src/Specific/montgomery32_2e226m5_8limbs/compilerxx.sh b/src/Specific/montgomery32_2e226m5_8limbs/compilerxx.sh
deleted file mode 100755
index 193556d2c..000000000
--- a/src/Specific/montgomery32_2e226m5_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<226) - 5' "$@"
diff --git a/src/Specific/montgomery32_2e226m5_8limbs/feadd.c b/src/Specific/montgomery32_2e226m5_8limbs/feadd.c
deleted file mode 100644
index e2743057b..000000000
--- a/src/Specific/montgomery32_2e226m5_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint32_t x33; uint8_t x34 = _addcarryx_u32(0x0, x5, x19, &x33);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(x34, x7, x21, &x36);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x37, x9, x23, &x39);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x40, x11, x25, &x42);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(x43, x13, x27, &x45);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x46, x15, x29, &x48);
- { uint32_t x51; uint8_t x52 = _addcarryx_u32(x49, x17, x31, &x51);
- { uint32_t x54; uint8_t x55 = _addcarryx_u32(x52, x16, x30, &x54);
- { uint32_t x57; uint8_t x58 = _subborrow_u32(0x0, x33, 0xfffffffb, &x57);
- { uint32_t x60; uint8_t x61 = _subborrow_u32(x58, x36, 0xffffffff, &x60);
- { uint32_t x63; uint8_t x64 = _subborrow_u32(x61, x39, 0xffffffff, &x63);
- { uint32_t x66; uint8_t x67 = _subborrow_u32(x64, x42, 0xffffffff, &x66);
- { uint32_t x69; uint8_t x70 = _subborrow_u32(x67, x45, 0xffffffff, &x69);
- { uint32_t x72; uint8_t x73 = _subborrow_u32(x70, x48, 0xffffffff, &x72);
- { uint32_t x75; uint8_t x76 = _subborrow_u32(x73, x51, 0xffffffff, &x75);
- { uint32_t x78; uint8_t x79 = _subborrow_u32(x76, x54, 0x3, &x78);
- { uint32_t _; uint8_t x82 = _subborrow_u32(x79, x55, 0x0, &_);
- { uint32_t x83 = cmovznz32(x82, x78, x54);
- { uint32_t x84 = cmovznz32(x82, x75, x51);
- { uint32_t x85 = cmovznz32(x82, x72, x48);
- { uint32_t x86 = cmovznz32(x82, x69, x45);
- { uint32_t x87 = cmovznz32(x82, x66, x42);
- { uint32_t x88 = cmovznz32(x82, x63, x39);
- { uint32_t x89 = cmovznz32(x82, x60, x36);
- { uint32_t x90 = cmovznz32(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e226m5_8limbs/feadd.v b/src/Specific/montgomery32_2e226m5_8limbs/feadd.v
deleted file mode 100644
index c8b4db270..000000000
--- a/src/Specific/montgomery32_2e226m5_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e226m5_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e226m5_8limbs/feaddDisplay.log b/src/Specific/montgomery32_2e226m5_8limbs/feaddDisplay.log
deleted file mode 100644
index 9b27bb47f..000000000
--- a/src/Specific/montgomery32_2e226m5_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint32_t x33, uint8_t x34 = addcarryx_u32(0x0, x5, x19);
- uint32_t x36, uint8_t x37 = addcarryx_u32(x34, x7, x21);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x37, x9, x23);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x40, x11, x25);
- uint32_t x45, uint8_t x46 = addcarryx_u32(x43, x13, x27);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x46, x15, x29);
- uint32_t x51, uint8_t x52 = addcarryx_u32(x49, x17, x31);
- uint32_t x54, uint8_t x55 = addcarryx_u32(x52, x16, x30);
- uint32_t x57, uint8_t x58 = subborrow_u32(0x0, x33, 0xfffffffb);
- uint32_t x60, uint8_t x61 = subborrow_u32(x58, x36, 0xffffffff);
- uint32_t x63, uint8_t x64 = subborrow_u32(x61, x39, 0xffffffff);
- uint32_t x66, uint8_t x67 = subborrow_u32(x64, x42, 0xffffffff);
- uint32_t x69, uint8_t x70 = subborrow_u32(x67, x45, 0xffffffff);
- uint32_t x72, uint8_t x73 = subborrow_u32(x70, x48, 0xffffffff);
- uint32_t x75, uint8_t x76 = subborrow_u32(x73, x51, 0xffffffff);
- uint32_t x78, uint8_t x79 = subborrow_u32(x76, x54, 0x3);
- uint32_t _, uint8_t x82 = subborrow_u32(x79, x55, 0x0);
- uint32_t x83 = cmovznz32(x82, x78, x54);
- uint32_t x84 = cmovznz32(x82, x75, x51);
- uint32_t x85 = cmovznz32(x82, x72, x48);
- uint32_t x86 = cmovznz32(x82, x69, x45);
- uint32_t x87 = cmovznz32(x82, x66, x42);
- uint32_t x88 = cmovznz32(x82, x63, x39);
- uint32_t x89 = cmovznz32(x82, x60, x36);
- uint32_t x90 = cmovznz32(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e226m5_8limbs/feaddDisplay.v b/src/Specific/montgomery32_2e226m5_8limbs/feaddDisplay.v
deleted file mode 100644
index 16d13de8f..000000000
--- a/src/Specific/montgomery32_2e226m5_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e226m5_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e226m5_8limbs/femul.v b/src/Specific/montgomery32_2e226m5_8limbs/femul.v
deleted file mode 100644
index c26fd6f50..000000000
--- a/src/Specific/montgomery32_2e226m5_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e226m5_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e226m5_8limbs/femulDisplay.v b/src/Specific/montgomery32_2e226m5_8limbs/femulDisplay.v
deleted file mode 100644
index f69955c30..000000000
--- a/src/Specific/montgomery32_2e226m5_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e226m5_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e226m5_8limbs/fenz.c b/src/Specific/montgomery32_2e226m5_8limbs/fenz.c
deleted file mode 100644
index 744f2aa5f..000000000
--- a/src/Specific/montgomery32_2e226m5_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (x14 | x13);
- { uint32_t x16 = (x12 | x15);
- { uint32_t x17 = (x10 | x16);
- { uint32_t x18 = (x8 | x17);
- { uint32_t x19 = (x6 | x18);
- { uint32_t x20 = (x4 | x19);
- { uint32_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e226m5_8limbs/fenz.v b/src/Specific/montgomery32_2e226m5_8limbs/fenz.v
deleted file mode 100644
index 5a6b10d50..000000000
--- a/src/Specific/montgomery32_2e226m5_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e226m5_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e226m5_8limbs/fenzDisplay.log b/src/Specific/montgomery32_2e226m5_8limbs/fenzDisplay.log
deleted file mode 100644
index c7c1c2df1..000000000
--- a/src/Specific/montgomery32_2e226m5_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x15 = (x14 | x13);
- uint32_t x16 = (x12 | x15);
- uint32_t x17 = (x10 | x16);
- uint32_t x18 = (x8 | x17);
- uint32_t x19 = (x6 | x18);
- uint32_t x20 = (x4 | x19);
- uint32_t x21 = (x2 | x20);
- return x21)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e226m5_8limbs/fenzDisplay.v b/src/Specific/montgomery32_2e226m5_8limbs/fenzDisplay.v
deleted file mode 100644
index ed9968406..000000000
--- a/src/Specific/montgomery32_2e226m5_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e226m5_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e226m5_8limbs/feopp.v b/src/Specific/montgomery32_2e226m5_8limbs/feopp.v
deleted file mode 100644
index cf12a1918..000000000
--- a/src/Specific/montgomery32_2e226m5_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e226m5_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e226m5_8limbs/feoppDisplay.v b/src/Specific/montgomery32_2e226m5_8limbs/feoppDisplay.v
deleted file mode 100644
index ff0575673..000000000
--- a/src/Specific/montgomery32_2e226m5_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e226m5_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e226m5_8limbs/fesquare.c b/src/Specific/montgomery32_2e226m5_8limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e226m5_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e226m5_8limbs/fesub.v b/src/Specific/montgomery32_2e226m5_8limbs/fesub.v
deleted file mode 100644
index dbc778d98..000000000
--- a/src/Specific/montgomery32_2e226m5_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e226m5_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e226m5_8limbs/fesubDisplay.v b/src/Specific/montgomery32_2e226m5_8limbs/fesubDisplay.v
deleted file mode 100644
index a1498690b..000000000
--- a/src/Specific/montgomery32_2e226m5_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e226m5_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e226m5_8limbs/py_interpreter.sh b/src/Specific/montgomery32_2e226m5_8limbs/py_interpreter.sh
deleted file mode 100755
index 37bc3bc38..000000000
--- a/src/Specific/montgomery32_2e226m5_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**226 - 5' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e230m27_8limbs/CurveParameters.v b/src/Specific/montgomery32_2e230m27_8limbs/CurveParameters.v
deleted file mode 100644
index 180742861..000000000
--- a/src/Specific/montgomery32_2e230m27_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^230 - 27
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 32;
- bitwidth := 32;
- s := 2^230;
- c := [(1, 27)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e230m27_8limbs/Synthesis.v b/src/Specific/montgomery32_2e230m27_8limbs/Synthesis.v
deleted file mode 100644
index 773f9fe2c..000000000
--- a/src/Specific/montgomery32_2e230m27_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e230m27_8limbs.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/montgomery32_2e230m27_8limbs/compiler.sh b/src/Specific/montgomery32_2e230m27_8limbs/compiler.sh
deleted file mode 100755
index eadd48b02..000000000
--- a/src/Specific/montgomery32_2e230m27_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<230) - 27' "$@"
diff --git a/src/Specific/montgomery32_2e230m27_8limbs/compilerxx.sh b/src/Specific/montgomery32_2e230m27_8limbs/compilerxx.sh
deleted file mode 100755
index 3d4a4edda..000000000
--- a/src/Specific/montgomery32_2e230m27_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<230) - 27' "$@"
diff --git a/src/Specific/montgomery32_2e230m27_8limbs/feadd.c b/src/Specific/montgomery32_2e230m27_8limbs/feadd.c
deleted file mode 100644
index 0b93efdbf..000000000
--- a/src/Specific/montgomery32_2e230m27_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint32_t x33; uint8_t x34 = _addcarryx_u32(0x0, x5, x19, &x33);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(x34, x7, x21, &x36);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x37, x9, x23, &x39);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x40, x11, x25, &x42);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(x43, x13, x27, &x45);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x46, x15, x29, &x48);
- { uint32_t x51; uint8_t x52 = _addcarryx_u32(x49, x17, x31, &x51);
- { uint32_t x54; uint8_t x55 = _addcarryx_u32(x52, x16, x30, &x54);
- { uint32_t x57; uint8_t x58 = _subborrow_u32(0x0, x33, 0xffffffe5, &x57);
- { uint32_t x60; uint8_t x61 = _subborrow_u32(x58, x36, 0xffffffff, &x60);
- { uint32_t x63; uint8_t x64 = _subborrow_u32(x61, x39, 0xffffffff, &x63);
- { uint32_t x66; uint8_t x67 = _subborrow_u32(x64, x42, 0xffffffff, &x66);
- { uint32_t x69; uint8_t x70 = _subborrow_u32(x67, x45, 0xffffffff, &x69);
- { uint32_t x72; uint8_t x73 = _subborrow_u32(x70, x48, 0xffffffff, &x72);
- { uint32_t x75; uint8_t x76 = _subborrow_u32(x73, x51, 0xffffffff, &x75);
- { uint32_t x78; uint8_t x79 = _subborrow_u32(x76, x54, 0x3f, &x78);
- { uint32_t _; uint8_t x82 = _subborrow_u32(x79, x55, 0x0, &_);
- { uint32_t x83 = cmovznz32(x82, x78, x54);
- { uint32_t x84 = cmovznz32(x82, x75, x51);
- { uint32_t x85 = cmovznz32(x82, x72, x48);
- { uint32_t x86 = cmovznz32(x82, x69, x45);
- { uint32_t x87 = cmovznz32(x82, x66, x42);
- { uint32_t x88 = cmovznz32(x82, x63, x39);
- { uint32_t x89 = cmovznz32(x82, x60, x36);
- { uint32_t x90 = cmovznz32(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e230m27_8limbs/feadd.v b/src/Specific/montgomery32_2e230m27_8limbs/feadd.v
deleted file mode 100644
index 491df52f6..000000000
--- a/src/Specific/montgomery32_2e230m27_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e230m27_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e230m27_8limbs/feaddDisplay.log b/src/Specific/montgomery32_2e230m27_8limbs/feaddDisplay.log
deleted file mode 100644
index 3b3330e0d..000000000
--- a/src/Specific/montgomery32_2e230m27_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint32_t x33, uint8_t x34 = addcarryx_u32(0x0, x5, x19);
- uint32_t x36, uint8_t x37 = addcarryx_u32(x34, x7, x21);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x37, x9, x23);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x40, x11, x25);
- uint32_t x45, uint8_t x46 = addcarryx_u32(x43, x13, x27);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x46, x15, x29);
- uint32_t x51, uint8_t x52 = addcarryx_u32(x49, x17, x31);
- uint32_t x54, uint8_t x55 = addcarryx_u32(x52, x16, x30);
- uint32_t x57, uint8_t x58 = subborrow_u32(0x0, x33, 0xffffffe5);
- uint32_t x60, uint8_t x61 = subborrow_u32(x58, x36, 0xffffffff);
- uint32_t x63, uint8_t x64 = subborrow_u32(x61, x39, 0xffffffff);
- uint32_t x66, uint8_t x67 = subborrow_u32(x64, x42, 0xffffffff);
- uint32_t x69, uint8_t x70 = subborrow_u32(x67, x45, 0xffffffff);
- uint32_t x72, uint8_t x73 = subborrow_u32(x70, x48, 0xffffffff);
- uint32_t x75, uint8_t x76 = subborrow_u32(x73, x51, 0xffffffff);
- uint32_t x78, uint8_t x79 = subborrow_u32(x76, x54, 0x3f);
- uint32_t _, uint8_t x82 = subborrow_u32(x79, x55, 0x0);
- uint32_t x83 = cmovznz32(x82, x78, x54);
- uint32_t x84 = cmovznz32(x82, x75, x51);
- uint32_t x85 = cmovznz32(x82, x72, x48);
- uint32_t x86 = cmovznz32(x82, x69, x45);
- uint32_t x87 = cmovznz32(x82, x66, x42);
- uint32_t x88 = cmovznz32(x82, x63, x39);
- uint32_t x89 = cmovznz32(x82, x60, x36);
- uint32_t x90 = cmovznz32(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e230m27_8limbs/feaddDisplay.v b/src/Specific/montgomery32_2e230m27_8limbs/feaddDisplay.v
deleted file mode 100644
index aabfdbfa7..000000000
--- a/src/Specific/montgomery32_2e230m27_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e230m27_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e230m27_8limbs/femul.v b/src/Specific/montgomery32_2e230m27_8limbs/femul.v
deleted file mode 100644
index 7ed4d0f71..000000000
--- a/src/Specific/montgomery32_2e230m27_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e230m27_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e230m27_8limbs/femulDisplay.v b/src/Specific/montgomery32_2e230m27_8limbs/femulDisplay.v
deleted file mode 100644
index c16dda340..000000000
--- a/src/Specific/montgomery32_2e230m27_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e230m27_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e230m27_8limbs/fenz.c b/src/Specific/montgomery32_2e230m27_8limbs/fenz.c
deleted file mode 100644
index 744f2aa5f..000000000
--- a/src/Specific/montgomery32_2e230m27_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (x14 | x13);
- { uint32_t x16 = (x12 | x15);
- { uint32_t x17 = (x10 | x16);
- { uint32_t x18 = (x8 | x17);
- { uint32_t x19 = (x6 | x18);
- { uint32_t x20 = (x4 | x19);
- { uint32_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e230m27_8limbs/fenz.v b/src/Specific/montgomery32_2e230m27_8limbs/fenz.v
deleted file mode 100644
index bb5977cb4..000000000
--- a/src/Specific/montgomery32_2e230m27_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e230m27_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e230m27_8limbs/fenzDisplay.log b/src/Specific/montgomery32_2e230m27_8limbs/fenzDisplay.log
deleted file mode 100644
index c7c1c2df1..000000000
--- a/src/Specific/montgomery32_2e230m27_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x15 = (x14 | x13);
- uint32_t x16 = (x12 | x15);
- uint32_t x17 = (x10 | x16);
- uint32_t x18 = (x8 | x17);
- uint32_t x19 = (x6 | x18);
- uint32_t x20 = (x4 | x19);
- uint32_t x21 = (x2 | x20);
- return x21)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e230m27_8limbs/fenzDisplay.v b/src/Specific/montgomery32_2e230m27_8limbs/fenzDisplay.v
deleted file mode 100644
index 874b4ad4e..000000000
--- a/src/Specific/montgomery32_2e230m27_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e230m27_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e230m27_8limbs/feopp.v b/src/Specific/montgomery32_2e230m27_8limbs/feopp.v
deleted file mode 100644
index d39a90f69..000000000
--- a/src/Specific/montgomery32_2e230m27_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e230m27_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e230m27_8limbs/feoppDisplay.v b/src/Specific/montgomery32_2e230m27_8limbs/feoppDisplay.v
deleted file mode 100644
index 6805ac515..000000000
--- a/src/Specific/montgomery32_2e230m27_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e230m27_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e230m27_8limbs/fesquare.c b/src/Specific/montgomery32_2e230m27_8limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e230m27_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e230m27_8limbs/fesub.v b/src/Specific/montgomery32_2e230m27_8limbs/fesub.v
deleted file mode 100644
index bddcf4200..000000000
--- a/src/Specific/montgomery32_2e230m27_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e230m27_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e230m27_8limbs/fesubDisplay.v b/src/Specific/montgomery32_2e230m27_8limbs/fesubDisplay.v
deleted file mode 100644
index 244a8404d..000000000
--- a/src/Specific/montgomery32_2e230m27_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e230m27_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e230m27_8limbs/py_interpreter.sh b/src/Specific/montgomery32_2e230m27_8limbs/py_interpreter.sh
deleted file mode 100755
index fc71de448..000000000
--- a/src/Specific/montgomery32_2e230m27_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**230 - 27' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e235m15_8limbs/CurveParameters.v b/src/Specific/montgomery32_2e235m15_8limbs/CurveParameters.v
deleted file mode 100644
index cc45478d6..000000000
--- a/src/Specific/montgomery32_2e235m15_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^235 - 15
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 32;
- bitwidth := 32;
- s := 2^235;
- c := [(1, 15)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e235m15_8limbs/Synthesis.v b/src/Specific/montgomery32_2e235m15_8limbs/Synthesis.v
deleted file mode 100644
index 711deadf0..000000000
--- a/src/Specific/montgomery32_2e235m15_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e235m15_8limbs.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/montgomery32_2e235m15_8limbs/compiler.sh b/src/Specific/montgomery32_2e235m15_8limbs/compiler.sh
deleted file mode 100755
index c82b15352..000000000
--- a/src/Specific/montgomery32_2e235m15_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='30' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<235) - 15' "$@"
diff --git a/src/Specific/montgomery32_2e235m15_8limbs/compilerxx.sh b/src/Specific/montgomery32_2e235m15_8limbs/compilerxx.sh
deleted file mode 100755
index e25ba1ce1..000000000
--- a/src/Specific/montgomery32_2e235m15_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='30' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<235) - 15' "$@"
diff --git a/src/Specific/montgomery32_2e235m15_8limbs/feadd.c b/src/Specific/montgomery32_2e235m15_8limbs/feadd.c
deleted file mode 100644
index a3c0c6920..000000000
--- a/src/Specific/montgomery32_2e235m15_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint32_t x33; uint8_t x34 = _addcarryx_u32(0x0, x5, x19, &x33);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(x34, x7, x21, &x36);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x37, x9, x23, &x39);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x40, x11, x25, &x42);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(x43, x13, x27, &x45);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x46, x15, x29, &x48);
- { uint32_t x51; uint8_t x52 = _addcarryx_u32(x49, x17, x31, &x51);
- { uint32_t x54; uint8_t x55 = _addcarryx_u32(x52, x16, x30, &x54);
- { uint32_t x57; uint8_t x58 = _subborrow_u32(0x0, x33, 0xfffffff1, &x57);
- { uint32_t x60; uint8_t x61 = _subborrow_u32(x58, x36, 0xffffffff, &x60);
- { uint32_t x63; uint8_t x64 = _subborrow_u32(x61, x39, 0xffffffff, &x63);
- { uint32_t x66; uint8_t x67 = _subborrow_u32(x64, x42, 0xffffffff, &x66);
- { uint32_t x69; uint8_t x70 = _subborrow_u32(x67, x45, 0xffffffff, &x69);
- { uint32_t x72; uint8_t x73 = _subborrow_u32(x70, x48, 0xffffffff, &x72);
- { uint32_t x75; uint8_t x76 = _subborrow_u32(x73, x51, 0xffffffff, &x75);
- { uint32_t x78; uint8_t x79 = _subborrow_u32(x76, x54, 0x7ff, &x78);
- { uint32_t _; uint8_t x82 = _subborrow_u32(x79, x55, 0x0, &_);
- { uint32_t x83 = cmovznz32(x82, x78, x54);
- { uint32_t x84 = cmovznz32(x82, x75, x51);
- { uint32_t x85 = cmovznz32(x82, x72, x48);
- { uint32_t x86 = cmovznz32(x82, x69, x45);
- { uint32_t x87 = cmovznz32(x82, x66, x42);
- { uint32_t x88 = cmovznz32(x82, x63, x39);
- { uint32_t x89 = cmovznz32(x82, x60, x36);
- { uint32_t x90 = cmovznz32(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e235m15_8limbs/feadd.v b/src/Specific/montgomery32_2e235m15_8limbs/feadd.v
deleted file mode 100644
index eb6866c08..000000000
--- a/src/Specific/montgomery32_2e235m15_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e235m15_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e235m15_8limbs/feaddDisplay.log b/src/Specific/montgomery32_2e235m15_8limbs/feaddDisplay.log
deleted file mode 100644
index 85a026c3e..000000000
--- a/src/Specific/montgomery32_2e235m15_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint32_t x33, uint8_t x34 = addcarryx_u32(0x0, x5, x19);
- uint32_t x36, uint8_t x37 = addcarryx_u32(x34, x7, x21);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x37, x9, x23);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x40, x11, x25);
- uint32_t x45, uint8_t x46 = addcarryx_u32(x43, x13, x27);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x46, x15, x29);
- uint32_t x51, uint8_t x52 = addcarryx_u32(x49, x17, x31);
- uint32_t x54, uint8_t x55 = addcarryx_u32(x52, x16, x30);
- uint32_t x57, uint8_t x58 = subborrow_u32(0x0, x33, 0xfffffff1);
- uint32_t x60, uint8_t x61 = subborrow_u32(x58, x36, 0xffffffff);
- uint32_t x63, uint8_t x64 = subborrow_u32(x61, x39, 0xffffffff);
- uint32_t x66, uint8_t x67 = subborrow_u32(x64, x42, 0xffffffff);
- uint32_t x69, uint8_t x70 = subborrow_u32(x67, x45, 0xffffffff);
- uint32_t x72, uint8_t x73 = subborrow_u32(x70, x48, 0xffffffff);
- uint32_t x75, uint8_t x76 = subborrow_u32(x73, x51, 0xffffffff);
- uint32_t x78, uint8_t x79 = subborrow_u32(x76, x54, 0x7ff);
- uint32_t _, uint8_t x82 = subborrow_u32(x79, x55, 0x0);
- uint32_t x83 = cmovznz32(x82, x78, x54);
- uint32_t x84 = cmovznz32(x82, x75, x51);
- uint32_t x85 = cmovznz32(x82, x72, x48);
- uint32_t x86 = cmovznz32(x82, x69, x45);
- uint32_t x87 = cmovznz32(x82, x66, x42);
- uint32_t x88 = cmovznz32(x82, x63, x39);
- uint32_t x89 = cmovznz32(x82, x60, x36);
- uint32_t x90 = cmovznz32(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e235m15_8limbs/feaddDisplay.v b/src/Specific/montgomery32_2e235m15_8limbs/feaddDisplay.v
deleted file mode 100644
index 09ff437fc..000000000
--- a/src/Specific/montgomery32_2e235m15_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e235m15_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e235m15_8limbs/femul.v b/src/Specific/montgomery32_2e235m15_8limbs/femul.v
deleted file mode 100644
index 9217df293..000000000
--- a/src/Specific/montgomery32_2e235m15_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e235m15_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e235m15_8limbs/femulDisplay.v b/src/Specific/montgomery32_2e235m15_8limbs/femulDisplay.v
deleted file mode 100644
index 921d3ccf7..000000000
--- a/src/Specific/montgomery32_2e235m15_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e235m15_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e235m15_8limbs/fenz.c b/src/Specific/montgomery32_2e235m15_8limbs/fenz.c
deleted file mode 100644
index 744f2aa5f..000000000
--- a/src/Specific/montgomery32_2e235m15_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (x14 | x13);
- { uint32_t x16 = (x12 | x15);
- { uint32_t x17 = (x10 | x16);
- { uint32_t x18 = (x8 | x17);
- { uint32_t x19 = (x6 | x18);
- { uint32_t x20 = (x4 | x19);
- { uint32_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e235m15_8limbs/fenz.v b/src/Specific/montgomery32_2e235m15_8limbs/fenz.v
deleted file mode 100644
index 32ab22a05..000000000
--- a/src/Specific/montgomery32_2e235m15_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e235m15_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e235m15_8limbs/fenzDisplay.log b/src/Specific/montgomery32_2e235m15_8limbs/fenzDisplay.log
deleted file mode 100644
index c7c1c2df1..000000000
--- a/src/Specific/montgomery32_2e235m15_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x15 = (x14 | x13);
- uint32_t x16 = (x12 | x15);
- uint32_t x17 = (x10 | x16);
- uint32_t x18 = (x8 | x17);
- uint32_t x19 = (x6 | x18);
- uint32_t x20 = (x4 | x19);
- uint32_t x21 = (x2 | x20);
- return x21)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e235m15_8limbs/fenzDisplay.v b/src/Specific/montgomery32_2e235m15_8limbs/fenzDisplay.v
deleted file mode 100644
index f4c24bb4f..000000000
--- a/src/Specific/montgomery32_2e235m15_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e235m15_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e235m15_8limbs/feopp.v b/src/Specific/montgomery32_2e235m15_8limbs/feopp.v
deleted file mode 100644
index 5174b9612..000000000
--- a/src/Specific/montgomery32_2e235m15_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e235m15_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e235m15_8limbs/feoppDisplay.v b/src/Specific/montgomery32_2e235m15_8limbs/feoppDisplay.v
deleted file mode 100644
index 0b8c0b559..000000000
--- a/src/Specific/montgomery32_2e235m15_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e235m15_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e235m15_8limbs/fesquare.c b/src/Specific/montgomery32_2e235m15_8limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e235m15_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e235m15_8limbs/fesub.v b/src/Specific/montgomery32_2e235m15_8limbs/fesub.v
deleted file mode 100644
index 7153324d5..000000000
--- a/src/Specific/montgomery32_2e235m15_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e235m15_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e235m15_8limbs/fesubDisplay.v b/src/Specific/montgomery32_2e235m15_8limbs/fesubDisplay.v
deleted file mode 100644
index a4256cd61..000000000
--- a/src/Specific/montgomery32_2e235m15_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e235m15_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e235m15_8limbs/py_interpreter.sh b/src/Specific/montgomery32_2e235m15_8limbs/py_interpreter.sh
deleted file mode 100755
index 92a64740a..000000000
--- a/src/Specific/montgomery32_2e235m15_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**235 - 15' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e243m9_8limbs/CurveParameters.v b/src/Specific/montgomery32_2e243m9_8limbs/CurveParameters.v
deleted file mode 100644
index f02ed60ce..000000000
--- a/src/Specific/montgomery32_2e243m9_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^243 - 9
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 32;
- bitwidth := 32;
- s := 2^243;
- c := [(1, 9)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e243m9_8limbs/Synthesis.v b/src/Specific/montgomery32_2e243m9_8limbs/Synthesis.v
deleted file mode 100644
index 303cd67a1..000000000
--- a/src/Specific/montgomery32_2e243m9_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e243m9_8limbs.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/montgomery32_2e243m9_8limbs/compiler.sh b/src/Specific/montgomery32_2e243m9_8limbs/compiler.sh
deleted file mode 100755
index 7164f4a9d..000000000
--- a/src/Specific/montgomery32_2e243m9_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='31' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<243) - 9' "$@"
diff --git a/src/Specific/montgomery32_2e243m9_8limbs/compilerxx.sh b/src/Specific/montgomery32_2e243m9_8limbs/compilerxx.sh
deleted file mode 100755
index 8bf821a2d..000000000
--- a/src/Specific/montgomery32_2e243m9_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='31' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<243) - 9' "$@"
diff --git a/src/Specific/montgomery32_2e243m9_8limbs/feadd.c b/src/Specific/montgomery32_2e243m9_8limbs/feadd.c
deleted file mode 100644
index f3ec8140b..000000000
--- a/src/Specific/montgomery32_2e243m9_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint32_t x33; uint8_t x34 = _addcarryx_u32(0x0, x5, x19, &x33);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(x34, x7, x21, &x36);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x37, x9, x23, &x39);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x40, x11, x25, &x42);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(x43, x13, x27, &x45);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x46, x15, x29, &x48);
- { uint32_t x51; uint8_t x52 = _addcarryx_u32(x49, x17, x31, &x51);
- { uint32_t x54; uint8_t x55 = _addcarryx_u32(x52, x16, x30, &x54);
- { uint32_t x57; uint8_t x58 = _subborrow_u32(0x0, x33, 0xfffffff7, &x57);
- { uint32_t x60; uint8_t x61 = _subborrow_u32(x58, x36, 0xffffffff, &x60);
- { uint32_t x63; uint8_t x64 = _subborrow_u32(x61, x39, 0xffffffff, &x63);
- { uint32_t x66; uint8_t x67 = _subborrow_u32(x64, x42, 0xffffffff, &x66);
- { uint32_t x69; uint8_t x70 = _subborrow_u32(x67, x45, 0xffffffff, &x69);
- { uint32_t x72; uint8_t x73 = _subborrow_u32(x70, x48, 0xffffffff, &x72);
- { uint32_t x75; uint8_t x76 = _subborrow_u32(x73, x51, 0xffffffff, &x75);
- { uint32_t x78; uint8_t x79 = _subborrow_u32(x76, x54, 0x7ffff, &x78);
- { uint32_t _; uint8_t x82 = _subborrow_u32(x79, x55, 0x0, &_);
- { uint32_t x83 = cmovznz32(x82, x78, x54);
- { uint32_t x84 = cmovznz32(x82, x75, x51);
- { uint32_t x85 = cmovznz32(x82, x72, x48);
- { uint32_t x86 = cmovznz32(x82, x69, x45);
- { uint32_t x87 = cmovznz32(x82, x66, x42);
- { uint32_t x88 = cmovznz32(x82, x63, x39);
- { uint32_t x89 = cmovznz32(x82, x60, x36);
- { uint32_t x90 = cmovznz32(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e243m9_8limbs/feadd.v b/src/Specific/montgomery32_2e243m9_8limbs/feadd.v
deleted file mode 100644
index 661dbe85d..000000000
--- a/src/Specific/montgomery32_2e243m9_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e243m9_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e243m9_8limbs/feaddDisplay.log b/src/Specific/montgomery32_2e243m9_8limbs/feaddDisplay.log
deleted file mode 100644
index 8c7f833ea..000000000
--- a/src/Specific/montgomery32_2e243m9_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint32_t x33, uint8_t x34 = addcarryx_u32(0x0, x5, x19);
- uint32_t x36, uint8_t x37 = addcarryx_u32(x34, x7, x21);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x37, x9, x23);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x40, x11, x25);
- uint32_t x45, uint8_t x46 = addcarryx_u32(x43, x13, x27);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x46, x15, x29);
- uint32_t x51, uint8_t x52 = addcarryx_u32(x49, x17, x31);
- uint32_t x54, uint8_t x55 = addcarryx_u32(x52, x16, x30);
- uint32_t x57, uint8_t x58 = subborrow_u32(0x0, x33, 0xfffffff7);
- uint32_t x60, uint8_t x61 = subborrow_u32(x58, x36, 0xffffffff);
- uint32_t x63, uint8_t x64 = subborrow_u32(x61, x39, 0xffffffff);
- uint32_t x66, uint8_t x67 = subborrow_u32(x64, x42, 0xffffffff);
- uint32_t x69, uint8_t x70 = subborrow_u32(x67, x45, 0xffffffff);
- uint32_t x72, uint8_t x73 = subborrow_u32(x70, x48, 0xffffffff);
- uint32_t x75, uint8_t x76 = subborrow_u32(x73, x51, 0xffffffff);
- uint32_t x78, uint8_t x79 = subborrow_u32(x76, x54, 0x7ffff);
- uint32_t _, uint8_t x82 = subborrow_u32(x79, x55, 0x0);
- uint32_t x83 = cmovznz32(x82, x78, x54);
- uint32_t x84 = cmovznz32(x82, x75, x51);
- uint32_t x85 = cmovznz32(x82, x72, x48);
- uint32_t x86 = cmovznz32(x82, x69, x45);
- uint32_t x87 = cmovznz32(x82, x66, x42);
- uint32_t x88 = cmovznz32(x82, x63, x39);
- uint32_t x89 = cmovznz32(x82, x60, x36);
- uint32_t x90 = cmovznz32(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e243m9_8limbs/feaddDisplay.v b/src/Specific/montgomery32_2e243m9_8limbs/feaddDisplay.v
deleted file mode 100644
index 0d66b61f8..000000000
--- a/src/Specific/montgomery32_2e243m9_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e243m9_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e243m9_8limbs/femul.v b/src/Specific/montgomery32_2e243m9_8limbs/femul.v
deleted file mode 100644
index 1127bc605..000000000
--- a/src/Specific/montgomery32_2e243m9_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e243m9_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e243m9_8limbs/femulDisplay.v b/src/Specific/montgomery32_2e243m9_8limbs/femulDisplay.v
deleted file mode 100644
index 5405e4733..000000000
--- a/src/Specific/montgomery32_2e243m9_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e243m9_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e243m9_8limbs/fenz.c b/src/Specific/montgomery32_2e243m9_8limbs/fenz.c
deleted file mode 100644
index 744f2aa5f..000000000
--- a/src/Specific/montgomery32_2e243m9_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (x14 | x13);
- { uint32_t x16 = (x12 | x15);
- { uint32_t x17 = (x10 | x16);
- { uint32_t x18 = (x8 | x17);
- { uint32_t x19 = (x6 | x18);
- { uint32_t x20 = (x4 | x19);
- { uint32_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e243m9_8limbs/fenz.v b/src/Specific/montgomery32_2e243m9_8limbs/fenz.v
deleted file mode 100644
index 65c05a852..000000000
--- a/src/Specific/montgomery32_2e243m9_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e243m9_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e243m9_8limbs/fenzDisplay.log b/src/Specific/montgomery32_2e243m9_8limbs/fenzDisplay.log
deleted file mode 100644
index c7c1c2df1..000000000
--- a/src/Specific/montgomery32_2e243m9_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x15 = (x14 | x13);
- uint32_t x16 = (x12 | x15);
- uint32_t x17 = (x10 | x16);
- uint32_t x18 = (x8 | x17);
- uint32_t x19 = (x6 | x18);
- uint32_t x20 = (x4 | x19);
- uint32_t x21 = (x2 | x20);
- return x21)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e243m9_8limbs/fenzDisplay.v b/src/Specific/montgomery32_2e243m9_8limbs/fenzDisplay.v
deleted file mode 100644
index 7c50cc807..000000000
--- a/src/Specific/montgomery32_2e243m9_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e243m9_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e243m9_8limbs/feopp.v b/src/Specific/montgomery32_2e243m9_8limbs/feopp.v
deleted file mode 100644
index 3b764a52c..000000000
--- a/src/Specific/montgomery32_2e243m9_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e243m9_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e243m9_8limbs/feoppDisplay.v b/src/Specific/montgomery32_2e243m9_8limbs/feoppDisplay.v
deleted file mode 100644
index 90082915f..000000000
--- a/src/Specific/montgomery32_2e243m9_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e243m9_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e243m9_8limbs/fesquare.c b/src/Specific/montgomery32_2e243m9_8limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e243m9_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e243m9_8limbs/fesub.v b/src/Specific/montgomery32_2e243m9_8limbs/fesub.v
deleted file mode 100644
index afc4e2de0..000000000
--- a/src/Specific/montgomery32_2e243m9_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e243m9_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e243m9_8limbs/fesubDisplay.v b/src/Specific/montgomery32_2e243m9_8limbs/fesubDisplay.v
deleted file mode 100644
index ef6899b42..000000000
--- a/src/Specific/montgomery32_2e243m9_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e243m9_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e243m9_8limbs/py_interpreter.sh b/src/Specific/montgomery32_2e243m9_8limbs/py_interpreter.sh
deleted file mode 100755
index 9dbce4aab..000000000
--- a/src/Specific/montgomery32_2e243m9_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**243 - 9' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e251m9_8limbs/CurveParameters.v b/src/Specific/montgomery32_2e251m9_8limbs/CurveParameters.v
deleted file mode 100644
index 243ea3437..000000000
--- a/src/Specific/montgomery32_2e251m9_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^251 - 9
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 32;
- bitwidth := 32;
- s := 2^251;
- c := [(1, 9)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e251m9_8limbs/Synthesis.v b/src/Specific/montgomery32_2e251m9_8limbs/Synthesis.v
deleted file mode 100644
index a536b3faf..000000000
--- a/src/Specific/montgomery32_2e251m9_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e251m9_8limbs.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/montgomery32_2e251m9_8limbs/compiler.sh b/src/Specific/montgomery32_2e251m9_8limbs/compiler.sh
deleted file mode 100755
index 3dafed688..000000000
--- a/src/Specific/montgomery32_2e251m9_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<251) - 9' "$@"
diff --git a/src/Specific/montgomery32_2e251m9_8limbs/compilerxx.sh b/src/Specific/montgomery32_2e251m9_8limbs/compilerxx.sh
deleted file mode 100755
index 9d0954277..000000000
--- a/src/Specific/montgomery32_2e251m9_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<251) - 9' "$@"
diff --git a/src/Specific/montgomery32_2e251m9_8limbs/feadd.c b/src/Specific/montgomery32_2e251m9_8limbs/feadd.c
deleted file mode 100644
index cfd21c577..000000000
--- a/src/Specific/montgomery32_2e251m9_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint32_t x33; uint8_t x34 = _addcarryx_u32(0x0, x5, x19, &x33);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(x34, x7, x21, &x36);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x37, x9, x23, &x39);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x40, x11, x25, &x42);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(x43, x13, x27, &x45);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x46, x15, x29, &x48);
- { uint32_t x51; uint8_t x52 = _addcarryx_u32(x49, x17, x31, &x51);
- { uint32_t x54; uint8_t x55 = _addcarryx_u32(x52, x16, x30, &x54);
- { uint32_t x57; uint8_t x58 = _subborrow_u32(0x0, x33, 0xfffffff7, &x57);
- { uint32_t x60; uint8_t x61 = _subborrow_u32(x58, x36, 0xffffffff, &x60);
- { uint32_t x63; uint8_t x64 = _subborrow_u32(x61, x39, 0xffffffff, &x63);
- { uint32_t x66; uint8_t x67 = _subborrow_u32(x64, x42, 0xffffffff, &x66);
- { uint32_t x69; uint8_t x70 = _subborrow_u32(x67, x45, 0xffffffff, &x69);
- { uint32_t x72; uint8_t x73 = _subborrow_u32(x70, x48, 0xffffffff, &x72);
- { uint32_t x75; uint8_t x76 = _subborrow_u32(x73, x51, 0xffffffff, &x75);
- { uint32_t x78; uint8_t x79 = _subborrow_u32(x76, x54, 0x7ffffff, &x78);
- { uint32_t _; uint8_t x82 = _subborrow_u32(x79, x55, 0x0, &_);
- { uint32_t x83 = cmovznz32(x82, x78, x54);
- { uint32_t x84 = cmovznz32(x82, x75, x51);
- { uint32_t x85 = cmovznz32(x82, x72, x48);
- { uint32_t x86 = cmovznz32(x82, x69, x45);
- { uint32_t x87 = cmovznz32(x82, x66, x42);
- { uint32_t x88 = cmovznz32(x82, x63, x39);
- { uint32_t x89 = cmovznz32(x82, x60, x36);
- { uint32_t x90 = cmovznz32(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e251m9_8limbs/feadd.v b/src/Specific/montgomery32_2e251m9_8limbs/feadd.v
deleted file mode 100644
index 4224af29c..000000000
--- a/src/Specific/montgomery32_2e251m9_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e251m9_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e251m9_8limbs/feaddDisplay.log b/src/Specific/montgomery32_2e251m9_8limbs/feaddDisplay.log
deleted file mode 100644
index 34bfeae75..000000000
--- a/src/Specific/montgomery32_2e251m9_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint32_t x33, uint8_t x34 = addcarryx_u32(0x0, x5, x19);
- uint32_t x36, uint8_t x37 = addcarryx_u32(x34, x7, x21);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x37, x9, x23);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x40, x11, x25);
- uint32_t x45, uint8_t x46 = addcarryx_u32(x43, x13, x27);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x46, x15, x29);
- uint32_t x51, uint8_t x52 = addcarryx_u32(x49, x17, x31);
- uint32_t x54, uint8_t x55 = addcarryx_u32(x52, x16, x30);
- uint32_t x57, uint8_t x58 = subborrow_u32(0x0, x33, 0xfffffff7);
- uint32_t x60, uint8_t x61 = subborrow_u32(x58, x36, 0xffffffff);
- uint32_t x63, uint8_t x64 = subborrow_u32(x61, x39, 0xffffffff);
- uint32_t x66, uint8_t x67 = subborrow_u32(x64, x42, 0xffffffff);
- uint32_t x69, uint8_t x70 = subborrow_u32(x67, x45, 0xffffffff);
- uint32_t x72, uint8_t x73 = subborrow_u32(x70, x48, 0xffffffff);
- uint32_t x75, uint8_t x76 = subborrow_u32(x73, x51, 0xffffffff);
- uint32_t x78, uint8_t x79 = subborrow_u32(x76, x54, 0x7ffffff);
- uint32_t _, uint8_t x82 = subborrow_u32(x79, x55, 0x0);
- uint32_t x83 = cmovznz32(x82, x78, x54);
- uint32_t x84 = cmovznz32(x82, x75, x51);
- uint32_t x85 = cmovznz32(x82, x72, x48);
- uint32_t x86 = cmovznz32(x82, x69, x45);
- uint32_t x87 = cmovznz32(x82, x66, x42);
- uint32_t x88 = cmovznz32(x82, x63, x39);
- uint32_t x89 = cmovznz32(x82, x60, x36);
- uint32_t x90 = cmovznz32(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e251m9_8limbs/feaddDisplay.v b/src/Specific/montgomery32_2e251m9_8limbs/feaddDisplay.v
deleted file mode 100644
index 5d404d4f5..000000000
--- a/src/Specific/montgomery32_2e251m9_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e251m9_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e251m9_8limbs/femul.v b/src/Specific/montgomery32_2e251m9_8limbs/femul.v
deleted file mode 100644
index 7fa9b8680..000000000
--- a/src/Specific/montgomery32_2e251m9_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e251m9_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e251m9_8limbs/femulDisplay.v b/src/Specific/montgomery32_2e251m9_8limbs/femulDisplay.v
deleted file mode 100644
index 98eac4c57..000000000
--- a/src/Specific/montgomery32_2e251m9_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e251m9_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e251m9_8limbs/fenz.c b/src/Specific/montgomery32_2e251m9_8limbs/fenz.c
deleted file mode 100644
index 744f2aa5f..000000000
--- a/src/Specific/montgomery32_2e251m9_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (x14 | x13);
- { uint32_t x16 = (x12 | x15);
- { uint32_t x17 = (x10 | x16);
- { uint32_t x18 = (x8 | x17);
- { uint32_t x19 = (x6 | x18);
- { uint32_t x20 = (x4 | x19);
- { uint32_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e251m9_8limbs/fenz.v b/src/Specific/montgomery32_2e251m9_8limbs/fenz.v
deleted file mode 100644
index 4bea597b2..000000000
--- a/src/Specific/montgomery32_2e251m9_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e251m9_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e251m9_8limbs/fenzDisplay.log b/src/Specific/montgomery32_2e251m9_8limbs/fenzDisplay.log
deleted file mode 100644
index c7c1c2df1..000000000
--- a/src/Specific/montgomery32_2e251m9_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x15 = (x14 | x13);
- uint32_t x16 = (x12 | x15);
- uint32_t x17 = (x10 | x16);
- uint32_t x18 = (x8 | x17);
- uint32_t x19 = (x6 | x18);
- uint32_t x20 = (x4 | x19);
- uint32_t x21 = (x2 | x20);
- return x21)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e251m9_8limbs/fenzDisplay.v b/src/Specific/montgomery32_2e251m9_8limbs/fenzDisplay.v
deleted file mode 100644
index b969646b5..000000000
--- a/src/Specific/montgomery32_2e251m9_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e251m9_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e251m9_8limbs/feopp.v b/src/Specific/montgomery32_2e251m9_8limbs/feopp.v
deleted file mode 100644
index 82dd8f6fa..000000000
--- a/src/Specific/montgomery32_2e251m9_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e251m9_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e251m9_8limbs/feoppDisplay.v b/src/Specific/montgomery32_2e251m9_8limbs/feoppDisplay.v
deleted file mode 100644
index d772f7876..000000000
--- a/src/Specific/montgomery32_2e251m9_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e251m9_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e251m9_8limbs/fesquare.c b/src/Specific/montgomery32_2e251m9_8limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e251m9_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e251m9_8limbs/fesub.v b/src/Specific/montgomery32_2e251m9_8limbs/fesub.v
deleted file mode 100644
index 834961a30..000000000
--- a/src/Specific/montgomery32_2e251m9_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e251m9_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e251m9_8limbs/fesubDisplay.v b/src/Specific/montgomery32_2e251m9_8limbs/fesubDisplay.v
deleted file mode 100644
index 2cc26b6f2..000000000
--- a/src/Specific/montgomery32_2e251m9_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e251m9_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e251m9_8limbs/py_interpreter.sh b/src/Specific/montgomery32_2e251m9_8limbs/py_interpreter.sh
deleted file mode 100755
index 8da552b58..000000000
--- a/src/Specific/montgomery32_2e251m9_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**251 - 9' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/CurveParameters.v b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/CurveParameters.v
deleted file mode 100644
index 04f2fa3e6..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^254 - 127*2^240 - 1
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 32;
- bitwidth := 32;
- s := 2^254;
- c := [(1, 1); (127, 2^240)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e254m127x2e240m1_8limbs/Synthesis.v b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/Synthesis.v
deleted file mode 100644
index eaacbfff5..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e254m127x2e240m1_8limbs.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/montgomery32_2e254m127x2e240m1_8limbs/compiler.sh b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/compiler.sh
deleted file mode 100755
index 5f1f5bc74..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/compilerxx.sh b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/compilerxx.sh
deleted file mode 100755
index 9400bbabb..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feadd.c b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feadd.c
deleted file mode 100644
index 6ffed3913..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint32_t x33; uint8_t x34 = _addcarryx_u32(0x0, x5, x19, &x33);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(x34, x7, x21, &x36);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x37, x9, x23, &x39);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x40, x11, x25, &x42);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(x43, x13, x27, &x45);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x46, x15, x29, &x48);
- { uint32_t x51; uint8_t x52 = _addcarryx_u32(x49, x17, x31, &x51);
- { uint32_t x54; uint8_t x55 = _addcarryx_u32(x52, x16, x30, &x54);
- { uint32_t x57; uint8_t x58 = _subborrow_u32(0x0, x33, 0xffffffff, &x57);
- { uint32_t x60; uint8_t x61 = _subborrow_u32(x58, x36, 0xffffffff, &x60);
- { uint32_t x63; uint8_t x64 = _subborrow_u32(x61, x39, 0xffffffff, &x63);
- { uint32_t x66; uint8_t x67 = _subborrow_u32(x64, x42, 0xffffffff, &x66);
- { uint32_t x69; uint8_t x70 = _subborrow_u32(x67, x45, 0xffffffff, &x69);
- { uint32_t x72; uint8_t x73 = _subborrow_u32(x70, x48, 0xffffffff, &x72);
- { uint32_t x75; uint8_t x76 = _subborrow_u32(x73, x51, 0xffffffff, &x75);
- { uint32_t x78; uint8_t x79 = _subborrow_u32(x76, x54, 0x3f80ffff, &x78);
- { uint32_t _; uint8_t x82 = _subborrow_u32(x79, x55, 0x0, &_);
- { uint32_t x83 = cmovznz32(x82, x78, x54);
- { uint32_t x84 = cmovznz32(x82, x75, x51);
- { uint32_t x85 = cmovznz32(x82, x72, x48);
- { uint32_t x86 = cmovznz32(x82, x69, x45);
- { uint32_t x87 = cmovznz32(x82, x66, x42);
- { uint32_t x88 = cmovznz32(x82, x63, x39);
- { uint32_t x89 = cmovznz32(x82, x60, x36);
- { uint32_t x90 = cmovznz32(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feadd.v b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feadd.v
deleted file mode 100644
index 129a7fe58..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e254m127x2e240m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feaddDisplay.log b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feaddDisplay.log
deleted file mode 100644
index 846e6f58d..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint32_t x33, uint8_t x34 = addcarryx_u32(0x0, x5, x19);
- uint32_t x36, uint8_t x37 = addcarryx_u32(x34, x7, x21);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x37, x9, x23);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x40, x11, x25);
- uint32_t x45, uint8_t x46 = addcarryx_u32(x43, x13, x27);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x46, x15, x29);
- uint32_t x51, uint8_t x52 = addcarryx_u32(x49, x17, x31);
- uint32_t x54, uint8_t x55 = addcarryx_u32(x52, x16, x30);
- uint32_t x57, uint8_t x58 = subborrow_u32(0x0, x33, 0xffffffff);
- uint32_t x60, uint8_t x61 = subborrow_u32(x58, x36, 0xffffffff);
- uint32_t x63, uint8_t x64 = subborrow_u32(x61, x39, 0xffffffff);
- uint32_t x66, uint8_t x67 = subborrow_u32(x64, x42, 0xffffffff);
- uint32_t x69, uint8_t x70 = subborrow_u32(x67, x45, 0xffffffff);
- uint32_t x72, uint8_t x73 = subborrow_u32(x70, x48, 0xffffffff);
- uint32_t x75, uint8_t x76 = subborrow_u32(x73, x51, 0xffffffff);
- uint32_t x78, uint8_t x79 = subborrow_u32(x76, x54, 0x3f80ffff);
- uint32_t _, uint8_t x82 = subborrow_u32(x79, x55, 0x0);
- uint32_t x83 = cmovznz32(x82, x78, x54);
- uint32_t x84 = cmovznz32(x82, x75, x51);
- uint32_t x85 = cmovznz32(x82, x72, x48);
- uint32_t x86 = cmovznz32(x82, x69, x45);
- uint32_t x87 = cmovznz32(x82, x66, x42);
- uint32_t x88 = cmovznz32(x82, x63, x39);
- uint32_t x89 = cmovznz32(x82, x60, x36);
- uint32_t x90 = cmovznz32(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feaddDisplay.v b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feaddDisplay.v
deleted file mode 100644
index cbbf5781c..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e254m127x2e240m1_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/femul.c b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/femul.c
deleted file mode 100644
index deddfa1db..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/femul.c
+++ /dev/null
@@ -1,443 +0,0 @@
-static void femul(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint32_t x34; uint32_t x33 = _mulx_u32(x5, x19, &x34);
- { uint32_t x37; uint32_t x36 = _mulx_u32(x5, x21, &x37);
- { uint32_t x40; uint32_t x39 = _mulx_u32(x5, x23, &x40);
- { uint32_t x43; uint32_t x42 = _mulx_u32(x5, x25, &x43);
- { uint32_t x46; uint32_t x45 = _mulx_u32(x5, x27, &x46);
- { uint32_t x49; uint32_t x48 = _mulx_u32(x5, x29, &x49);
- { uint32_t x52; uint32_t x51 = _mulx_u32(x5, x31, &x52);
- { uint32_t x55; uint32_t x54 = _mulx_u32(x5, x30, &x55);
- { uint32_t x57; uint8_t x58 = _addcarryx_u32(0x0, x34, x36, &x57);
- { uint32_t x60; uint8_t x61 = _addcarryx_u32(x58, x37, x39, &x60);
- { uint32_t x63; uint8_t x64 = _addcarryx_u32(x61, x40, x42, &x63);
- { uint32_t x66; uint8_t x67 = _addcarryx_u32(x64, x43, x45, &x66);
- { uint32_t x69; uint8_t x70 = _addcarryx_u32(x67, x46, x48, &x69);
- { uint32_t x72; uint8_t x73 = _addcarryx_u32(x70, x49, x51, &x72);
- { uint32_t x75; uint8_t x76 = _addcarryx_u32(x73, x52, x54, &x75);
- { uint32_t x78; uint8_t _ = _addcarryx_u32(0x0, x76, x55, &x78);
- { uint32_t x82; uint32_t x81 = _mulx_u32(x33, 0xffffffff, &x82);
- { uint32_t x85; uint32_t x84 = _mulx_u32(x33, 0xffffffff, &x85);
- { uint32_t x88; uint32_t x87 = _mulx_u32(x33, 0xffffffff, &x88);
- { uint32_t x91; uint32_t x90 = _mulx_u32(x33, 0xffffffff, &x91);
- { uint32_t x94; uint32_t x93 = _mulx_u32(x33, 0xffffffff, &x94);
- { uint32_t x97; uint32_t x96 = _mulx_u32(x33, 0xffffffff, &x97);
- { uint32_t x100; uint32_t x99 = _mulx_u32(x33, 0xffffffff, &x100);
- { uint32_t x103; uint32_t x102 = _mulx_u32(x33, 0x3f80ffff, &x103);
- { uint32_t x105; uint8_t x106 = _addcarryx_u32(0x0, x82, x84, &x105);
- { uint32_t x108; uint8_t x109 = _addcarryx_u32(x106, x85, x87, &x108);
- { uint32_t x111; uint8_t x112 = _addcarryx_u32(x109, x88, x90, &x111);
- { uint32_t x114; uint8_t x115 = _addcarryx_u32(x112, x91, x93, &x114);
- { uint32_t x117; uint8_t x118 = _addcarryx_u32(x115, x94, x96, &x117);
- { uint32_t x120; uint8_t x121 = _addcarryx_u32(x118, x97, x99, &x120);
- { uint32_t x123; uint8_t x124 = _addcarryx_u32(x121, x100, x102, &x123);
- { uint32_t x126; uint8_t _ = _addcarryx_u32(0x0, x124, x103, &x126);
- { uint32_t _; uint8_t x130 = _addcarryx_u32(0x0, x33, x81, &_);
- { uint32_t x132; uint8_t x133 = _addcarryx_u32(x130, x57, x105, &x132);
- { uint32_t x135; uint8_t x136 = _addcarryx_u32(x133, x60, x108, &x135);
- { uint32_t x138; uint8_t x139 = _addcarryx_u32(x136, x63, x111, &x138);
- { uint32_t x141; uint8_t x142 = _addcarryx_u32(x139, x66, x114, &x141);
- { uint32_t x144; uint8_t x145 = _addcarryx_u32(x142, x69, x117, &x144);
- { uint32_t x147; uint8_t x148 = _addcarryx_u32(x145, x72, x120, &x147);
- { uint32_t x150; uint8_t x151 = _addcarryx_u32(x148, x75, x123, &x150);
- { uint32_t x153; uint8_t x154 = _addcarryx_u32(x151, x78, x126, &x153);
- { uint8_t x155 = (x154 + 0x0);
- { uint32_t x158; uint32_t x157 = _mulx_u32(x7, x19, &x158);
- { uint32_t x161; uint32_t x160 = _mulx_u32(x7, x21, &x161);
- { uint32_t x164; uint32_t x163 = _mulx_u32(x7, x23, &x164);
- { uint32_t x167; uint32_t x166 = _mulx_u32(x7, x25, &x167);
- { uint32_t x170; uint32_t x169 = _mulx_u32(x7, x27, &x170);
- { uint32_t x173; uint32_t x172 = _mulx_u32(x7, x29, &x173);
- { uint32_t x176; uint32_t x175 = _mulx_u32(x7, x31, &x176);
- { uint32_t x179; uint32_t x178 = _mulx_u32(x7, x30, &x179);
- { uint32_t x181; uint8_t x182 = _addcarryx_u32(0x0, x158, x160, &x181);
- { uint32_t x184; uint8_t x185 = _addcarryx_u32(x182, x161, x163, &x184);
- { uint32_t x187; uint8_t x188 = _addcarryx_u32(x185, x164, x166, &x187);
- { uint32_t x190; uint8_t x191 = _addcarryx_u32(x188, x167, x169, &x190);
- { uint32_t x193; uint8_t x194 = _addcarryx_u32(x191, x170, x172, &x193);
- { uint32_t x196; uint8_t x197 = _addcarryx_u32(x194, x173, x175, &x196);
- { uint32_t x199; uint8_t x200 = _addcarryx_u32(x197, x176, x178, &x199);
- { uint32_t x202; uint8_t _ = _addcarryx_u32(0x0, x200, x179, &x202);
- { uint32_t x205; uint8_t x206 = _addcarryx_u32(0x0, x132, x157, &x205);
- { uint32_t x208; uint8_t x209 = _addcarryx_u32(x206, x135, x181, &x208);
- { uint32_t x211; uint8_t x212 = _addcarryx_u32(x209, x138, x184, &x211);
- { uint32_t x214; uint8_t x215 = _addcarryx_u32(x212, x141, x187, &x214);
- { uint32_t x217; uint8_t x218 = _addcarryx_u32(x215, x144, x190, &x217);
- { uint32_t x220; uint8_t x221 = _addcarryx_u32(x218, x147, x193, &x220);
- { uint32_t x223; uint8_t x224 = _addcarryx_u32(x221, x150, x196, &x223);
- { uint32_t x226; uint8_t x227 = _addcarryx_u32(x224, x153, x199, &x226);
- { uint32_t x229; uint8_t x230 = _addcarryx_u32(x227, x155, x202, &x229);
- { uint32_t x233; uint32_t x232 = _mulx_u32(x205, 0xffffffff, &x233);
- { uint32_t x236; uint32_t x235 = _mulx_u32(x205, 0xffffffff, &x236);
- { uint32_t x239; uint32_t x238 = _mulx_u32(x205, 0xffffffff, &x239);
- { uint32_t x242; uint32_t x241 = _mulx_u32(x205, 0xffffffff, &x242);
- { uint32_t x245; uint32_t x244 = _mulx_u32(x205, 0xffffffff, &x245);
- { uint32_t x248; uint32_t x247 = _mulx_u32(x205, 0xffffffff, &x248);
- { uint32_t x251; uint32_t x250 = _mulx_u32(x205, 0xffffffff, &x251);
- { uint32_t x254; uint32_t x253 = _mulx_u32(x205, 0x3f80ffff, &x254);
- { uint32_t x256; uint8_t x257 = _addcarryx_u32(0x0, x233, x235, &x256);
- { uint32_t x259; uint8_t x260 = _addcarryx_u32(x257, x236, x238, &x259);
- { uint32_t x262; uint8_t x263 = _addcarryx_u32(x260, x239, x241, &x262);
- { uint32_t x265; uint8_t x266 = _addcarryx_u32(x263, x242, x244, &x265);
- { uint32_t x268; uint8_t x269 = _addcarryx_u32(x266, x245, x247, &x268);
- { uint32_t x271; uint8_t x272 = _addcarryx_u32(x269, x248, x250, &x271);
- { uint32_t x274; uint8_t x275 = _addcarryx_u32(x272, x251, x253, &x274);
- { uint32_t x277; uint8_t _ = _addcarryx_u32(0x0, x275, x254, &x277);
- { uint32_t _; uint8_t x281 = _addcarryx_u32(0x0, x205, x232, &_);
- { uint32_t x283; uint8_t x284 = _addcarryx_u32(x281, x208, x256, &x283);
- { uint32_t x286; uint8_t x287 = _addcarryx_u32(x284, x211, x259, &x286);
- { uint32_t x289; uint8_t x290 = _addcarryx_u32(x287, x214, x262, &x289);
- { uint32_t x292; uint8_t x293 = _addcarryx_u32(x290, x217, x265, &x292);
- { uint32_t x295; uint8_t x296 = _addcarryx_u32(x293, x220, x268, &x295);
- { uint32_t x298; uint8_t x299 = _addcarryx_u32(x296, x223, x271, &x298);
- { uint32_t x301; uint8_t x302 = _addcarryx_u32(x299, x226, x274, &x301);
- { uint32_t x304; uint8_t x305 = _addcarryx_u32(x302, x229, x277, &x304);
- { uint8_t x306 = (x305 + x230);
- { uint32_t x309; uint32_t x308 = _mulx_u32(x9, x19, &x309);
- { uint32_t x312; uint32_t x311 = _mulx_u32(x9, x21, &x312);
- { uint32_t x315; uint32_t x314 = _mulx_u32(x9, x23, &x315);
- { uint32_t x318; uint32_t x317 = _mulx_u32(x9, x25, &x318);
- { uint32_t x321; uint32_t x320 = _mulx_u32(x9, x27, &x321);
- { uint32_t x324; uint32_t x323 = _mulx_u32(x9, x29, &x324);
- { uint32_t x327; uint32_t x326 = _mulx_u32(x9, x31, &x327);
- { uint32_t x330; uint32_t x329 = _mulx_u32(x9, x30, &x330);
- { uint32_t x332; uint8_t x333 = _addcarryx_u32(0x0, x309, x311, &x332);
- { uint32_t x335; uint8_t x336 = _addcarryx_u32(x333, x312, x314, &x335);
- { uint32_t x338; uint8_t x339 = _addcarryx_u32(x336, x315, x317, &x338);
- { uint32_t x341; uint8_t x342 = _addcarryx_u32(x339, x318, x320, &x341);
- { uint32_t x344; uint8_t x345 = _addcarryx_u32(x342, x321, x323, &x344);
- { uint32_t x347; uint8_t x348 = _addcarryx_u32(x345, x324, x326, &x347);
- { uint32_t x350; uint8_t x351 = _addcarryx_u32(x348, x327, x329, &x350);
- { uint32_t x353; uint8_t _ = _addcarryx_u32(0x0, x351, x330, &x353);
- { uint32_t x356; uint8_t x357 = _addcarryx_u32(0x0, x283, x308, &x356);
- { uint32_t x359; uint8_t x360 = _addcarryx_u32(x357, x286, x332, &x359);
- { uint32_t x362; uint8_t x363 = _addcarryx_u32(x360, x289, x335, &x362);
- { uint32_t x365; uint8_t x366 = _addcarryx_u32(x363, x292, x338, &x365);
- { uint32_t x368; uint8_t x369 = _addcarryx_u32(x366, x295, x341, &x368);
- { uint32_t x371; uint8_t x372 = _addcarryx_u32(x369, x298, x344, &x371);
- { uint32_t x374; uint8_t x375 = _addcarryx_u32(x372, x301, x347, &x374);
- { uint32_t x377; uint8_t x378 = _addcarryx_u32(x375, x304, x350, &x377);
- { uint32_t x380; uint8_t x381 = _addcarryx_u32(x378, x306, x353, &x380);
- { uint32_t x384; uint32_t x383 = _mulx_u32(x356, 0xffffffff, &x384);
- { uint32_t x387; uint32_t x386 = _mulx_u32(x356, 0xffffffff, &x387);
- { uint32_t x390; uint32_t x389 = _mulx_u32(x356, 0xffffffff, &x390);
- { uint32_t x393; uint32_t x392 = _mulx_u32(x356, 0xffffffff, &x393);
- { uint32_t x396; uint32_t x395 = _mulx_u32(x356, 0xffffffff, &x396);
- { uint32_t x399; uint32_t x398 = _mulx_u32(x356, 0xffffffff, &x399);
- { uint32_t x402; uint32_t x401 = _mulx_u32(x356, 0xffffffff, &x402);
- { uint32_t x405; uint32_t x404 = _mulx_u32(x356, 0x3f80ffff, &x405);
- { uint32_t x407; uint8_t x408 = _addcarryx_u32(0x0, x384, x386, &x407);
- { uint32_t x410; uint8_t x411 = _addcarryx_u32(x408, x387, x389, &x410);
- { uint32_t x413; uint8_t x414 = _addcarryx_u32(x411, x390, x392, &x413);
- { uint32_t x416; uint8_t x417 = _addcarryx_u32(x414, x393, x395, &x416);
- { uint32_t x419; uint8_t x420 = _addcarryx_u32(x417, x396, x398, &x419);
- { uint32_t x422; uint8_t x423 = _addcarryx_u32(x420, x399, x401, &x422);
- { uint32_t x425; uint8_t x426 = _addcarryx_u32(x423, x402, x404, &x425);
- { uint32_t x428; uint8_t _ = _addcarryx_u32(0x0, x426, x405, &x428);
- { uint32_t _; uint8_t x432 = _addcarryx_u32(0x0, x356, x383, &_);
- { uint32_t x434; uint8_t x435 = _addcarryx_u32(x432, x359, x407, &x434);
- { uint32_t x437; uint8_t x438 = _addcarryx_u32(x435, x362, x410, &x437);
- { uint32_t x440; uint8_t x441 = _addcarryx_u32(x438, x365, x413, &x440);
- { uint32_t x443; uint8_t x444 = _addcarryx_u32(x441, x368, x416, &x443);
- { uint32_t x446; uint8_t x447 = _addcarryx_u32(x444, x371, x419, &x446);
- { uint32_t x449; uint8_t x450 = _addcarryx_u32(x447, x374, x422, &x449);
- { uint32_t x452; uint8_t x453 = _addcarryx_u32(x450, x377, x425, &x452);
- { uint32_t x455; uint8_t x456 = _addcarryx_u32(x453, x380, x428, &x455);
- { uint8_t x457 = (x456 + x381);
- { uint32_t x460; uint32_t x459 = _mulx_u32(x11, x19, &x460);
- { uint32_t x463; uint32_t x462 = _mulx_u32(x11, x21, &x463);
- { uint32_t x466; uint32_t x465 = _mulx_u32(x11, x23, &x466);
- { uint32_t x469; uint32_t x468 = _mulx_u32(x11, x25, &x469);
- { uint32_t x472; uint32_t x471 = _mulx_u32(x11, x27, &x472);
- { uint32_t x475; uint32_t x474 = _mulx_u32(x11, x29, &x475);
- { uint32_t x478; uint32_t x477 = _mulx_u32(x11, x31, &x478);
- { uint32_t x481; uint32_t x480 = _mulx_u32(x11, x30, &x481);
- { uint32_t x483; uint8_t x484 = _addcarryx_u32(0x0, x460, x462, &x483);
- { uint32_t x486; uint8_t x487 = _addcarryx_u32(x484, x463, x465, &x486);
- { uint32_t x489; uint8_t x490 = _addcarryx_u32(x487, x466, x468, &x489);
- { uint32_t x492; uint8_t x493 = _addcarryx_u32(x490, x469, x471, &x492);
- { uint32_t x495; uint8_t x496 = _addcarryx_u32(x493, x472, x474, &x495);
- { uint32_t x498; uint8_t x499 = _addcarryx_u32(x496, x475, x477, &x498);
- { uint32_t x501; uint8_t x502 = _addcarryx_u32(x499, x478, x480, &x501);
- { uint32_t x504; uint8_t _ = _addcarryx_u32(0x0, x502, x481, &x504);
- { uint32_t x507; uint8_t x508 = _addcarryx_u32(0x0, x434, x459, &x507);
- { uint32_t x510; uint8_t x511 = _addcarryx_u32(x508, x437, x483, &x510);
- { uint32_t x513; uint8_t x514 = _addcarryx_u32(x511, x440, x486, &x513);
- { uint32_t x516; uint8_t x517 = _addcarryx_u32(x514, x443, x489, &x516);
- { uint32_t x519; uint8_t x520 = _addcarryx_u32(x517, x446, x492, &x519);
- { uint32_t x522; uint8_t x523 = _addcarryx_u32(x520, x449, x495, &x522);
- { uint32_t x525; uint8_t x526 = _addcarryx_u32(x523, x452, x498, &x525);
- { uint32_t x528; uint8_t x529 = _addcarryx_u32(x526, x455, x501, &x528);
- { uint32_t x531; uint8_t x532 = _addcarryx_u32(x529, x457, x504, &x531);
- { uint32_t x535; uint32_t x534 = _mulx_u32(x507, 0xffffffff, &x535);
- { uint32_t x538; uint32_t x537 = _mulx_u32(x507, 0xffffffff, &x538);
- { uint32_t x541; uint32_t x540 = _mulx_u32(x507, 0xffffffff, &x541);
- { uint32_t x544; uint32_t x543 = _mulx_u32(x507, 0xffffffff, &x544);
- { uint32_t x547; uint32_t x546 = _mulx_u32(x507, 0xffffffff, &x547);
- { uint32_t x550; uint32_t x549 = _mulx_u32(x507, 0xffffffff, &x550);
- { uint32_t x553; uint32_t x552 = _mulx_u32(x507, 0xffffffff, &x553);
- { uint32_t x556; uint32_t x555 = _mulx_u32(x507, 0x3f80ffff, &x556);
- { uint32_t x558; uint8_t x559 = _addcarryx_u32(0x0, x535, x537, &x558);
- { uint32_t x561; uint8_t x562 = _addcarryx_u32(x559, x538, x540, &x561);
- { uint32_t x564; uint8_t x565 = _addcarryx_u32(x562, x541, x543, &x564);
- { uint32_t x567; uint8_t x568 = _addcarryx_u32(x565, x544, x546, &x567);
- { uint32_t x570; uint8_t x571 = _addcarryx_u32(x568, x547, x549, &x570);
- { uint32_t x573; uint8_t x574 = _addcarryx_u32(x571, x550, x552, &x573);
- { uint32_t x576; uint8_t x577 = _addcarryx_u32(x574, x553, x555, &x576);
- { uint32_t x579; uint8_t _ = _addcarryx_u32(0x0, x577, x556, &x579);
- { uint32_t _; uint8_t x583 = _addcarryx_u32(0x0, x507, x534, &_);
- { uint32_t x585; uint8_t x586 = _addcarryx_u32(x583, x510, x558, &x585);
- { uint32_t x588; uint8_t x589 = _addcarryx_u32(x586, x513, x561, &x588);
- { uint32_t x591; uint8_t x592 = _addcarryx_u32(x589, x516, x564, &x591);
- { uint32_t x594; uint8_t x595 = _addcarryx_u32(x592, x519, x567, &x594);
- { uint32_t x597; uint8_t x598 = _addcarryx_u32(x595, x522, x570, &x597);
- { uint32_t x600; uint8_t x601 = _addcarryx_u32(x598, x525, x573, &x600);
- { uint32_t x603; uint8_t x604 = _addcarryx_u32(x601, x528, x576, &x603);
- { uint32_t x606; uint8_t x607 = _addcarryx_u32(x604, x531, x579, &x606);
- { uint8_t x608 = (x607 + x532);
- { uint32_t x611; uint32_t x610 = _mulx_u32(x13, x19, &x611);
- { uint32_t x614; uint32_t x613 = _mulx_u32(x13, x21, &x614);
- { uint32_t x617; uint32_t x616 = _mulx_u32(x13, x23, &x617);
- { uint32_t x620; uint32_t x619 = _mulx_u32(x13, x25, &x620);
- { uint32_t x623; uint32_t x622 = _mulx_u32(x13, x27, &x623);
- { uint32_t x626; uint32_t x625 = _mulx_u32(x13, x29, &x626);
- { uint32_t x629; uint32_t x628 = _mulx_u32(x13, x31, &x629);
- { uint32_t x632; uint32_t x631 = _mulx_u32(x13, x30, &x632);
- { uint32_t x634; uint8_t x635 = _addcarryx_u32(0x0, x611, x613, &x634);
- { uint32_t x637; uint8_t x638 = _addcarryx_u32(x635, x614, x616, &x637);
- { uint32_t x640; uint8_t x641 = _addcarryx_u32(x638, x617, x619, &x640);
- { uint32_t x643; uint8_t x644 = _addcarryx_u32(x641, x620, x622, &x643);
- { uint32_t x646; uint8_t x647 = _addcarryx_u32(x644, x623, x625, &x646);
- { uint32_t x649; uint8_t x650 = _addcarryx_u32(x647, x626, x628, &x649);
- { uint32_t x652; uint8_t x653 = _addcarryx_u32(x650, x629, x631, &x652);
- { uint32_t x655; uint8_t _ = _addcarryx_u32(0x0, x653, x632, &x655);
- { uint32_t x658; uint8_t x659 = _addcarryx_u32(0x0, x585, x610, &x658);
- { uint32_t x661; uint8_t x662 = _addcarryx_u32(x659, x588, x634, &x661);
- { uint32_t x664; uint8_t x665 = _addcarryx_u32(x662, x591, x637, &x664);
- { uint32_t x667; uint8_t x668 = _addcarryx_u32(x665, x594, x640, &x667);
- { uint32_t x670; uint8_t x671 = _addcarryx_u32(x668, x597, x643, &x670);
- { uint32_t x673; uint8_t x674 = _addcarryx_u32(x671, x600, x646, &x673);
- { uint32_t x676; uint8_t x677 = _addcarryx_u32(x674, x603, x649, &x676);
- { uint32_t x679; uint8_t x680 = _addcarryx_u32(x677, x606, x652, &x679);
- { uint32_t x682; uint8_t x683 = _addcarryx_u32(x680, x608, x655, &x682);
- { uint32_t x686; uint32_t x685 = _mulx_u32(x658, 0xffffffff, &x686);
- { uint32_t x689; uint32_t x688 = _mulx_u32(x658, 0xffffffff, &x689);
- { uint32_t x692; uint32_t x691 = _mulx_u32(x658, 0xffffffff, &x692);
- { uint32_t x695; uint32_t x694 = _mulx_u32(x658, 0xffffffff, &x695);
- { uint32_t x698; uint32_t x697 = _mulx_u32(x658, 0xffffffff, &x698);
- { uint32_t x701; uint32_t x700 = _mulx_u32(x658, 0xffffffff, &x701);
- { uint32_t x704; uint32_t x703 = _mulx_u32(x658, 0xffffffff, &x704);
- { uint32_t x707; uint32_t x706 = _mulx_u32(x658, 0x3f80ffff, &x707);
- { uint32_t x709; uint8_t x710 = _addcarryx_u32(0x0, x686, x688, &x709);
- { uint32_t x712; uint8_t x713 = _addcarryx_u32(x710, x689, x691, &x712);
- { uint32_t x715; uint8_t x716 = _addcarryx_u32(x713, x692, x694, &x715);
- { uint32_t x718; uint8_t x719 = _addcarryx_u32(x716, x695, x697, &x718);
- { uint32_t x721; uint8_t x722 = _addcarryx_u32(x719, x698, x700, &x721);
- { uint32_t x724; uint8_t x725 = _addcarryx_u32(x722, x701, x703, &x724);
- { uint32_t x727; uint8_t x728 = _addcarryx_u32(x725, x704, x706, &x727);
- { uint32_t x730; uint8_t _ = _addcarryx_u32(0x0, x728, x707, &x730);
- { uint32_t _; uint8_t x734 = _addcarryx_u32(0x0, x658, x685, &_);
- { uint32_t x736; uint8_t x737 = _addcarryx_u32(x734, x661, x709, &x736);
- { uint32_t x739; uint8_t x740 = _addcarryx_u32(x737, x664, x712, &x739);
- { uint32_t x742; uint8_t x743 = _addcarryx_u32(x740, x667, x715, &x742);
- { uint32_t x745; uint8_t x746 = _addcarryx_u32(x743, x670, x718, &x745);
- { uint32_t x748; uint8_t x749 = _addcarryx_u32(x746, x673, x721, &x748);
- { uint32_t x751; uint8_t x752 = _addcarryx_u32(x749, x676, x724, &x751);
- { uint32_t x754; uint8_t x755 = _addcarryx_u32(x752, x679, x727, &x754);
- { uint32_t x757; uint8_t x758 = _addcarryx_u32(x755, x682, x730, &x757);
- { uint8_t x759 = (x758 + x683);
- { uint32_t x762; uint32_t x761 = _mulx_u32(x15, x19, &x762);
- { uint32_t x765; uint32_t x764 = _mulx_u32(x15, x21, &x765);
- { uint32_t x768; uint32_t x767 = _mulx_u32(x15, x23, &x768);
- { uint32_t x771; uint32_t x770 = _mulx_u32(x15, x25, &x771);
- { uint32_t x774; uint32_t x773 = _mulx_u32(x15, x27, &x774);
- { uint32_t x777; uint32_t x776 = _mulx_u32(x15, x29, &x777);
- { uint32_t x780; uint32_t x779 = _mulx_u32(x15, x31, &x780);
- { uint32_t x783; uint32_t x782 = _mulx_u32(x15, x30, &x783);
- { uint32_t x785; uint8_t x786 = _addcarryx_u32(0x0, x762, x764, &x785);
- { uint32_t x788; uint8_t x789 = _addcarryx_u32(x786, x765, x767, &x788);
- { uint32_t x791; uint8_t x792 = _addcarryx_u32(x789, x768, x770, &x791);
- { uint32_t x794; uint8_t x795 = _addcarryx_u32(x792, x771, x773, &x794);
- { uint32_t x797; uint8_t x798 = _addcarryx_u32(x795, x774, x776, &x797);
- { uint32_t x800; uint8_t x801 = _addcarryx_u32(x798, x777, x779, &x800);
- { uint32_t x803; uint8_t x804 = _addcarryx_u32(x801, x780, x782, &x803);
- { uint32_t x806; uint8_t _ = _addcarryx_u32(0x0, x804, x783, &x806);
- { uint32_t x809; uint8_t x810 = _addcarryx_u32(0x0, x736, x761, &x809);
- { uint32_t x812; uint8_t x813 = _addcarryx_u32(x810, x739, x785, &x812);
- { uint32_t x815; uint8_t x816 = _addcarryx_u32(x813, x742, x788, &x815);
- { uint32_t x818; uint8_t x819 = _addcarryx_u32(x816, x745, x791, &x818);
- { uint32_t x821; uint8_t x822 = _addcarryx_u32(x819, x748, x794, &x821);
- { uint32_t x824; uint8_t x825 = _addcarryx_u32(x822, x751, x797, &x824);
- { uint32_t x827; uint8_t x828 = _addcarryx_u32(x825, x754, x800, &x827);
- { uint32_t x830; uint8_t x831 = _addcarryx_u32(x828, x757, x803, &x830);
- { uint32_t x833; uint8_t x834 = _addcarryx_u32(x831, x759, x806, &x833);
- { uint32_t x837; uint32_t x836 = _mulx_u32(x809, 0xffffffff, &x837);
- { uint32_t x840; uint32_t x839 = _mulx_u32(x809, 0xffffffff, &x840);
- { uint32_t x843; uint32_t x842 = _mulx_u32(x809, 0xffffffff, &x843);
- { uint32_t x846; uint32_t x845 = _mulx_u32(x809, 0xffffffff, &x846);
- { uint32_t x849; uint32_t x848 = _mulx_u32(x809, 0xffffffff, &x849);
- { uint32_t x852; uint32_t x851 = _mulx_u32(x809, 0xffffffff, &x852);
- { uint32_t x855; uint32_t x854 = _mulx_u32(x809, 0xffffffff, &x855);
- { uint32_t x858; uint32_t x857 = _mulx_u32(x809, 0x3f80ffff, &x858);
- { uint32_t x860; uint8_t x861 = _addcarryx_u32(0x0, x837, x839, &x860);
- { uint32_t x863; uint8_t x864 = _addcarryx_u32(x861, x840, x842, &x863);
- { uint32_t x866; uint8_t x867 = _addcarryx_u32(x864, x843, x845, &x866);
- { uint32_t x869; uint8_t x870 = _addcarryx_u32(x867, x846, x848, &x869);
- { uint32_t x872; uint8_t x873 = _addcarryx_u32(x870, x849, x851, &x872);
- { uint32_t x875; uint8_t x876 = _addcarryx_u32(x873, x852, x854, &x875);
- { uint32_t x878; uint8_t x879 = _addcarryx_u32(x876, x855, x857, &x878);
- { uint32_t x881; uint8_t _ = _addcarryx_u32(0x0, x879, x858, &x881);
- { uint32_t _; uint8_t x885 = _addcarryx_u32(0x0, x809, x836, &_);
- { uint32_t x887; uint8_t x888 = _addcarryx_u32(x885, x812, x860, &x887);
- { uint32_t x890; uint8_t x891 = _addcarryx_u32(x888, x815, x863, &x890);
- { uint32_t x893; uint8_t x894 = _addcarryx_u32(x891, x818, x866, &x893);
- { uint32_t x896; uint8_t x897 = _addcarryx_u32(x894, x821, x869, &x896);
- { uint32_t x899; uint8_t x900 = _addcarryx_u32(x897, x824, x872, &x899);
- { uint32_t x902; uint8_t x903 = _addcarryx_u32(x900, x827, x875, &x902);
- { uint32_t x905; uint8_t x906 = _addcarryx_u32(x903, x830, x878, &x905);
- { uint32_t x908; uint8_t x909 = _addcarryx_u32(x906, x833, x881, &x908);
- { uint8_t x910 = (x909 + x834);
- { uint32_t x913; uint32_t x912 = _mulx_u32(x17, x19, &x913);
- { uint32_t x916; uint32_t x915 = _mulx_u32(x17, x21, &x916);
- { uint32_t x919; uint32_t x918 = _mulx_u32(x17, x23, &x919);
- { uint32_t x922; uint32_t x921 = _mulx_u32(x17, x25, &x922);
- { uint32_t x925; uint32_t x924 = _mulx_u32(x17, x27, &x925);
- { uint32_t x928; uint32_t x927 = _mulx_u32(x17, x29, &x928);
- { uint32_t x931; uint32_t x930 = _mulx_u32(x17, x31, &x931);
- { uint32_t x934; uint32_t x933 = _mulx_u32(x17, x30, &x934);
- { uint32_t x936; uint8_t x937 = _addcarryx_u32(0x0, x913, x915, &x936);
- { uint32_t x939; uint8_t x940 = _addcarryx_u32(x937, x916, x918, &x939);
- { uint32_t x942; uint8_t x943 = _addcarryx_u32(x940, x919, x921, &x942);
- { uint32_t x945; uint8_t x946 = _addcarryx_u32(x943, x922, x924, &x945);
- { uint32_t x948; uint8_t x949 = _addcarryx_u32(x946, x925, x927, &x948);
- { uint32_t x951; uint8_t x952 = _addcarryx_u32(x949, x928, x930, &x951);
- { uint32_t x954; uint8_t x955 = _addcarryx_u32(x952, x931, x933, &x954);
- { uint32_t x957; uint8_t _ = _addcarryx_u32(0x0, x955, x934, &x957);
- { uint32_t x960; uint8_t x961 = _addcarryx_u32(0x0, x887, x912, &x960);
- { uint32_t x963; uint8_t x964 = _addcarryx_u32(x961, x890, x936, &x963);
- { uint32_t x966; uint8_t x967 = _addcarryx_u32(x964, x893, x939, &x966);
- { uint32_t x969; uint8_t x970 = _addcarryx_u32(x967, x896, x942, &x969);
- { uint32_t x972; uint8_t x973 = _addcarryx_u32(x970, x899, x945, &x972);
- { uint32_t x975; uint8_t x976 = _addcarryx_u32(x973, x902, x948, &x975);
- { uint32_t x978; uint8_t x979 = _addcarryx_u32(x976, x905, x951, &x978);
- { uint32_t x981; uint8_t x982 = _addcarryx_u32(x979, x908, x954, &x981);
- { uint32_t x984; uint8_t x985 = _addcarryx_u32(x982, x910, x957, &x984);
- { uint32_t x988; uint32_t x987 = _mulx_u32(x960, 0xffffffff, &x988);
- { uint32_t x991; uint32_t x990 = _mulx_u32(x960, 0xffffffff, &x991);
- { uint32_t x994; uint32_t x993 = _mulx_u32(x960, 0xffffffff, &x994);
- { uint32_t x997; uint32_t x996 = _mulx_u32(x960, 0xffffffff, &x997);
- { uint32_t x1000; uint32_t x999 = _mulx_u32(x960, 0xffffffff, &x1000);
- { uint32_t x1003; uint32_t x1002 = _mulx_u32(x960, 0xffffffff, &x1003);
- { uint32_t x1006; uint32_t x1005 = _mulx_u32(x960, 0xffffffff, &x1006);
- { uint32_t x1009; uint32_t x1008 = _mulx_u32(x960, 0x3f80ffff, &x1009);
- { uint32_t x1011; uint8_t x1012 = _addcarryx_u32(0x0, x988, x990, &x1011);
- { uint32_t x1014; uint8_t x1015 = _addcarryx_u32(x1012, x991, x993, &x1014);
- { uint32_t x1017; uint8_t x1018 = _addcarryx_u32(x1015, x994, x996, &x1017);
- { uint32_t x1020; uint8_t x1021 = _addcarryx_u32(x1018, x997, x999, &x1020);
- { uint32_t x1023; uint8_t x1024 = _addcarryx_u32(x1021, x1000, x1002, &x1023);
- { uint32_t x1026; uint8_t x1027 = _addcarryx_u32(x1024, x1003, x1005, &x1026);
- { uint32_t x1029; uint8_t x1030 = _addcarryx_u32(x1027, x1006, x1008, &x1029);
- { uint32_t x1032; uint8_t _ = _addcarryx_u32(0x0, x1030, x1009, &x1032);
- { uint32_t _; uint8_t x1036 = _addcarryx_u32(0x0, x960, x987, &_);
- { uint32_t x1038; uint8_t x1039 = _addcarryx_u32(x1036, x963, x1011, &x1038);
- { uint32_t x1041; uint8_t x1042 = _addcarryx_u32(x1039, x966, x1014, &x1041);
- { uint32_t x1044; uint8_t x1045 = _addcarryx_u32(x1042, x969, x1017, &x1044);
- { uint32_t x1047; uint8_t x1048 = _addcarryx_u32(x1045, x972, x1020, &x1047);
- { uint32_t x1050; uint8_t x1051 = _addcarryx_u32(x1048, x975, x1023, &x1050);
- { uint32_t x1053; uint8_t x1054 = _addcarryx_u32(x1051, x978, x1026, &x1053);
- { uint32_t x1056; uint8_t x1057 = _addcarryx_u32(x1054, x981, x1029, &x1056);
- { uint32_t x1059; uint8_t x1060 = _addcarryx_u32(x1057, x984, x1032, &x1059);
- { uint8_t x1061 = (x1060 + x985);
- { uint32_t x1064; uint32_t x1063 = _mulx_u32(x16, x19, &x1064);
- { uint32_t x1067; uint32_t x1066 = _mulx_u32(x16, x21, &x1067);
- { uint32_t x1070; uint32_t x1069 = _mulx_u32(x16, x23, &x1070);
- { uint32_t x1073; uint32_t x1072 = _mulx_u32(x16, x25, &x1073);
- { uint32_t x1076; uint32_t x1075 = _mulx_u32(x16, x27, &x1076);
- { uint32_t x1079; uint32_t x1078 = _mulx_u32(x16, x29, &x1079);
- { uint32_t x1082; uint32_t x1081 = _mulx_u32(x16, x31, &x1082);
- { uint32_t x1085; uint32_t x1084 = _mulx_u32(x16, x30, &x1085);
- { uint32_t x1087; uint8_t x1088 = _addcarryx_u32(0x0, x1064, x1066, &x1087);
- { uint32_t x1090; uint8_t x1091 = _addcarryx_u32(x1088, x1067, x1069, &x1090);
- { uint32_t x1093; uint8_t x1094 = _addcarryx_u32(x1091, x1070, x1072, &x1093);
- { uint32_t x1096; uint8_t x1097 = _addcarryx_u32(x1094, x1073, x1075, &x1096);
- { uint32_t x1099; uint8_t x1100 = _addcarryx_u32(x1097, x1076, x1078, &x1099);
- { uint32_t x1102; uint8_t x1103 = _addcarryx_u32(x1100, x1079, x1081, &x1102);
- { uint32_t x1105; uint8_t x1106 = _addcarryx_u32(x1103, x1082, x1084, &x1105);
- { uint32_t x1108; uint8_t _ = _addcarryx_u32(0x0, x1106, x1085, &x1108);
- { uint32_t x1111; uint8_t x1112 = _addcarryx_u32(0x0, x1038, x1063, &x1111);
- { uint32_t x1114; uint8_t x1115 = _addcarryx_u32(x1112, x1041, x1087, &x1114);
- { uint32_t x1117; uint8_t x1118 = _addcarryx_u32(x1115, x1044, x1090, &x1117);
- { uint32_t x1120; uint8_t x1121 = _addcarryx_u32(x1118, x1047, x1093, &x1120);
- { uint32_t x1123; uint8_t x1124 = _addcarryx_u32(x1121, x1050, x1096, &x1123);
- { uint32_t x1126; uint8_t x1127 = _addcarryx_u32(x1124, x1053, x1099, &x1126);
- { uint32_t x1129; uint8_t x1130 = _addcarryx_u32(x1127, x1056, x1102, &x1129);
- { uint32_t x1132; uint8_t x1133 = _addcarryx_u32(x1130, x1059, x1105, &x1132);
- { uint32_t x1135; uint8_t x1136 = _addcarryx_u32(x1133, x1061, x1108, &x1135);
- { uint32_t x1139; uint32_t x1138 = _mulx_u32(x1111, 0xffffffff, &x1139);
- { uint32_t x1142; uint32_t x1141 = _mulx_u32(x1111, 0xffffffff, &x1142);
- { uint32_t x1145; uint32_t x1144 = _mulx_u32(x1111, 0xffffffff, &x1145);
- { uint32_t x1148; uint32_t x1147 = _mulx_u32(x1111, 0xffffffff, &x1148);
- { uint32_t x1151; uint32_t x1150 = _mulx_u32(x1111, 0xffffffff, &x1151);
- { uint32_t x1154; uint32_t x1153 = _mulx_u32(x1111, 0xffffffff, &x1154);
- { uint32_t x1157; uint32_t x1156 = _mulx_u32(x1111, 0xffffffff, &x1157);
- { uint32_t x1160; uint32_t x1159 = _mulx_u32(x1111, 0x3f80ffff, &x1160);
- { uint32_t x1162; uint8_t x1163 = _addcarryx_u32(0x0, x1139, x1141, &x1162);
- { uint32_t x1165; uint8_t x1166 = _addcarryx_u32(x1163, x1142, x1144, &x1165);
- { uint32_t x1168; uint8_t x1169 = _addcarryx_u32(x1166, x1145, x1147, &x1168);
- { uint32_t x1171; uint8_t x1172 = _addcarryx_u32(x1169, x1148, x1150, &x1171);
- { uint32_t x1174; uint8_t x1175 = _addcarryx_u32(x1172, x1151, x1153, &x1174);
- { uint32_t x1177; uint8_t x1178 = _addcarryx_u32(x1175, x1154, x1156, &x1177);
- { uint32_t x1180; uint8_t x1181 = _addcarryx_u32(x1178, x1157, x1159, &x1180);
- { uint32_t x1183; uint8_t _ = _addcarryx_u32(0x0, x1181, x1160, &x1183);
- { uint32_t _; uint8_t x1187 = _addcarryx_u32(0x0, x1111, x1138, &_);
- { uint32_t x1189; uint8_t x1190 = _addcarryx_u32(x1187, x1114, x1162, &x1189);
- { uint32_t x1192; uint8_t x1193 = _addcarryx_u32(x1190, x1117, x1165, &x1192);
- { uint32_t x1195; uint8_t x1196 = _addcarryx_u32(x1193, x1120, x1168, &x1195);
- { uint32_t x1198; uint8_t x1199 = _addcarryx_u32(x1196, x1123, x1171, &x1198);
- { uint32_t x1201; uint8_t x1202 = _addcarryx_u32(x1199, x1126, x1174, &x1201);
- { uint32_t x1204; uint8_t x1205 = _addcarryx_u32(x1202, x1129, x1177, &x1204);
- { uint32_t x1207; uint8_t x1208 = _addcarryx_u32(x1205, x1132, x1180, &x1207);
- { uint32_t x1210; uint8_t x1211 = _addcarryx_u32(x1208, x1135, x1183, &x1210);
- { uint8_t x1212 = (x1211 + x1136);
- { uint32_t x1214; uint8_t x1215 = _subborrow_u32(0x0, x1189, 0xffffffff, &x1214);
- { uint32_t x1217; uint8_t x1218 = _subborrow_u32(x1215, x1192, 0xffffffff, &x1217);
- { uint32_t x1220; uint8_t x1221 = _subborrow_u32(x1218, x1195, 0xffffffff, &x1220);
- { uint32_t x1223; uint8_t x1224 = _subborrow_u32(x1221, x1198, 0xffffffff, &x1223);
- { uint32_t x1226; uint8_t x1227 = _subborrow_u32(x1224, x1201, 0xffffffff, &x1226);
- { uint32_t x1229; uint8_t x1230 = _subborrow_u32(x1227, x1204, 0xffffffff, &x1229);
- { uint32_t x1232; uint8_t x1233 = _subborrow_u32(x1230, x1207, 0xffffffff, &x1232);
- { uint32_t x1235; uint8_t x1236 = _subborrow_u32(x1233, x1210, 0x3f80ffff, &x1235);
- { uint32_t _; uint8_t x1239 = _subborrow_u32(x1236, x1212, 0x0, &_);
- { uint32_t x1240 = cmovznz32(x1239, x1235, x1210);
- { uint32_t x1241 = cmovznz32(x1239, x1232, x1207);
- { uint32_t x1242 = cmovznz32(x1239, x1229, x1204);
- { uint32_t x1243 = cmovznz32(x1239, x1226, x1201);
- { uint32_t x1244 = cmovznz32(x1239, x1223, x1198);
- { uint32_t x1245 = cmovznz32(x1239, x1220, x1195);
- { uint32_t x1246 = cmovznz32(x1239, x1217, x1192);
- { uint32_t x1247 = cmovznz32(x1239, x1214, x1189);
- out[0] = x1247;
- out[1] = x1246;
- out[2] = x1245;
- out[3] = x1244;
- out[4] = x1243;
- out[5] = x1242;
- out[6] = x1241;
- out[7] = x1240;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/femul.v b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/femul.v
deleted file mode 100644
index 055887526..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e254m127x2e240m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/femulDisplay.log b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/femulDisplay.log
deleted file mode 100644
index 8d2fde7c5..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,423 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint32_t x33, uint32_t x34 = mulx_u32(x5, x19);
- uint32_t x36, uint32_t x37 = mulx_u32(x5, x21);
- uint32_t x39, uint32_t x40 = mulx_u32(x5, x23);
- uint32_t x42, uint32_t x43 = mulx_u32(x5, x25);
- uint32_t x45, uint32_t x46 = mulx_u32(x5, x27);
- uint32_t x48, uint32_t x49 = mulx_u32(x5, x29);
- uint32_t x51, uint32_t x52 = mulx_u32(x5, x31);
- uint32_t x54, uint32_t x55 = mulx_u32(x5, x30);
- uint32_t x57, uint8_t x58 = addcarryx_u32(0x0, x34, x36);
- uint32_t x60, uint8_t x61 = addcarryx_u32(x58, x37, x39);
- uint32_t x63, uint8_t x64 = addcarryx_u32(x61, x40, x42);
- uint32_t x66, uint8_t x67 = addcarryx_u32(x64, x43, x45);
- uint32_t x69, uint8_t x70 = addcarryx_u32(x67, x46, x48);
- uint32_t x72, uint8_t x73 = addcarryx_u32(x70, x49, x51);
- uint32_t x75, uint8_t x76 = addcarryx_u32(x73, x52, x54);
- uint32_t x78, uint8_t _ = addcarryx_u32(0x0, x76, x55);
- uint32_t x81, uint32_t x82 = mulx_u32(x33, 0xffffffff);
- uint32_t x84, uint32_t x85 = mulx_u32(x33, 0xffffffff);
- uint32_t x87, uint32_t x88 = mulx_u32(x33, 0xffffffff);
- uint32_t x90, uint32_t x91 = mulx_u32(x33, 0xffffffff);
- uint32_t x93, uint32_t x94 = mulx_u32(x33, 0xffffffff);
- uint32_t x96, uint32_t x97 = mulx_u32(x33, 0xffffffff);
- uint32_t x99, uint32_t x100 = mulx_u32(x33, 0xffffffff);
- uint32_t x102, uint32_t x103 = mulx_u32(x33, 0x3f80ffff);
- uint32_t x105, uint8_t x106 = addcarryx_u32(0x0, x82, x84);
- uint32_t x108, uint8_t x109 = addcarryx_u32(x106, x85, x87);
- uint32_t x111, uint8_t x112 = addcarryx_u32(x109, x88, x90);
- uint32_t x114, uint8_t x115 = addcarryx_u32(x112, x91, x93);
- uint32_t x117, uint8_t x118 = addcarryx_u32(x115, x94, x96);
- uint32_t x120, uint8_t x121 = addcarryx_u32(x118, x97, x99);
- uint32_t x123, uint8_t x124 = addcarryx_u32(x121, x100, x102);
- uint32_t x126, uint8_t _ = addcarryx_u32(0x0, x124, x103);
- uint32_t _, uint8_t x130 = addcarryx_u32(0x0, x33, x81);
- uint32_t x132, uint8_t x133 = addcarryx_u32(x130, x57, x105);
- uint32_t x135, uint8_t x136 = addcarryx_u32(x133, x60, x108);
- uint32_t x138, uint8_t x139 = addcarryx_u32(x136, x63, x111);
- uint32_t x141, uint8_t x142 = addcarryx_u32(x139, x66, x114);
- uint32_t x144, uint8_t x145 = addcarryx_u32(x142, x69, x117);
- uint32_t x147, uint8_t x148 = addcarryx_u32(x145, x72, x120);
- uint32_t x150, uint8_t x151 = addcarryx_u32(x148, x75, x123);
- uint32_t x153, uint8_t x154 = addcarryx_u32(x151, x78, x126);
- uint8_t x155 = (x154 + 0x0);
- uint32_t x157, uint32_t x158 = mulx_u32(x7, x19);
- uint32_t x160, uint32_t x161 = mulx_u32(x7, x21);
- uint32_t x163, uint32_t x164 = mulx_u32(x7, x23);
- uint32_t x166, uint32_t x167 = mulx_u32(x7, x25);
- uint32_t x169, uint32_t x170 = mulx_u32(x7, x27);
- uint32_t x172, uint32_t x173 = mulx_u32(x7, x29);
- uint32_t x175, uint32_t x176 = mulx_u32(x7, x31);
- uint32_t x178, uint32_t x179 = mulx_u32(x7, x30);
- uint32_t x181, uint8_t x182 = addcarryx_u32(0x0, x158, x160);
- uint32_t x184, uint8_t x185 = addcarryx_u32(x182, x161, x163);
- uint32_t x187, uint8_t x188 = addcarryx_u32(x185, x164, x166);
- uint32_t x190, uint8_t x191 = addcarryx_u32(x188, x167, x169);
- uint32_t x193, uint8_t x194 = addcarryx_u32(x191, x170, x172);
- uint32_t x196, uint8_t x197 = addcarryx_u32(x194, x173, x175);
- uint32_t x199, uint8_t x200 = addcarryx_u32(x197, x176, x178);
- uint32_t x202, uint8_t _ = addcarryx_u32(0x0, x200, x179);
- uint32_t x205, uint8_t x206 = addcarryx_u32(0x0, x132, x157);
- uint32_t x208, uint8_t x209 = addcarryx_u32(x206, x135, x181);
- uint32_t x211, uint8_t x212 = addcarryx_u32(x209, x138, x184);
- uint32_t x214, uint8_t x215 = addcarryx_u32(x212, x141, x187);
- uint32_t x217, uint8_t x218 = addcarryx_u32(x215, x144, x190);
- uint32_t x220, uint8_t x221 = addcarryx_u32(x218, x147, x193);
- uint32_t x223, uint8_t x224 = addcarryx_u32(x221, x150, x196);
- uint32_t x226, uint8_t x227 = addcarryx_u32(x224, x153, x199);
- uint32_t x229, uint8_t x230 = addcarryx_u32(x227, x155, x202);
- uint32_t x232, uint32_t x233 = mulx_u32(x205, 0xffffffff);
- uint32_t x235, uint32_t x236 = mulx_u32(x205, 0xffffffff);
- uint32_t x238, uint32_t x239 = mulx_u32(x205, 0xffffffff);
- uint32_t x241, uint32_t x242 = mulx_u32(x205, 0xffffffff);
- uint32_t x244, uint32_t x245 = mulx_u32(x205, 0xffffffff);
- uint32_t x247, uint32_t x248 = mulx_u32(x205, 0xffffffff);
- uint32_t x250, uint32_t x251 = mulx_u32(x205, 0xffffffff);
- uint32_t x253, uint32_t x254 = mulx_u32(x205, 0x3f80ffff);
- uint32_t x256, uint8_t x257 = addcarryx_u32(0x0, x233, x235);
- uint32_t x259, uint8_t x260 = addcarryx_u32(x257, x236, x238);
- uint32_t x262, uint8_t x263 = addcarryx_u32(x260, x239, x241);
- uint32_t x265, uint8_t x266 = addcarryx_u32(x263, x242, x244);
- uint32_t x268, uint8_t x269 = addcarryx_u32(x266, x245, x247);
- uint32_t x271, uint8_t x272 = addcarryx_u32(x269, x248, x250);
- uint32_t x274, uint8_t x275 = addcarryx_u32(x272, x251, x253);
- uint32_t x277, uint8_t _ = addcarryx_u32(0x0, x275, x254);
- uint32_t _, uint8_t x281 = addcarryx_u32(0x0, x205, x232);
- uint32_t x283, uint8_t x284 = addcarryx_u32(x281, x208, x256);
- uint32_t x286, uint8_t x287 = addcarryx_u32(x284, x211, x259);
- uint32_t x289, uint8_t x290 = addcarryx_u32(x287, x214, x262);
- uint32_t x292, uint8_t x293 = addcarryx_u32(x290, x217, x265);
- uint32_t x295, uint8_t x296 = addcarryx_u32(x293, x220, x268);
- uint32_t x298, uint8_t x299 = addcarryx_u32(x296, x223, x271);
- uint32_t x301, uint8_t x302 = addcarryx_u32(x299, x226, x274);
- uint32_t x304, uint8_t x305 = addcarryx_u32(x302, x229, x277);
- uint8_t x306 = (x305 + x230);
- uint32_t x308, uint32_t x309 = mulx_u32(x9, x19);
- uint32_t x311, uint32_t x312 = mulx_u32(x9, x21);
- uint32_t x314, uint32_t x315 = mulx_u32(x9, x23);
- uint32_t x317, uint32_t x318 = mulx_u32(x9, x25);
- uint32_t x320, uint32_t x321 = mulx_u32(x9, x27);
- uint32_t x323, uint32_t x324 = mulx_u32(x9, x29);
- uint32_t x326, uint32_t x327 = mulx_u32(x9, x31);
- uint32_t x329, uint32_t x330 = mulx_u32(x9, x30);
- uint32_t x332, uint8_t x333 = addcarryx_u32(0x0, x309, x311);
- uint32_t x335, uint8_t x336 = addcarryx_u32(x333, x312, x314);
- uint32_t x338, uint8_t x339 = addcarryx_u32(x336, x315, x317);
- uint32_t x341, uint8_t x342 = addcarryx_u32(x339, x318, x320);
- uint32_t x344, uint8_t x345 = addcarryx_u32(x342, x321, x323);
- uint32_t x347, uint8_t x348 = addcarryx_u32(x345, x324, x326);
- uint32_t x350, uint8_t x351 = addcarryx_u32(x348, x327, x329);
- uint32_t x353, uint8_t _ = addcarryx_u32(0x0, x351, x330);
- uint32_t x356, uint8_t x357 = addcarryx_u32(0x0, x283, x308);
- uint32_t x359, uint8_t x360 = addcarryx_u32(x357, x286, x332);
- uint32_t x362, uint8_t x363 = addcarryx_u32(x360, x289, x335);
- uint32_t x365, uint8_t x366 = addcarryx_u32(x363, x292, x338);
- uint32_t x368, uint8_t x369 = addcarryx_u32(x366, x295, x341);
- uint32_t x371, uint8_t x372 = addcarryx_u32(x369, x298, x344);
- uint32_t x374, uint8_t x375 = addcarryx_u32(x372, x301, x347);
- uint32_t x377, uint8_t x378 = addcarryx_u32(x375, x304, x350);
- uint32_t x380, uint8_t x381 = addcarryx_u32(x378, x306, x353);
- uint32_t x383, uint32_t x384 = mulx_u32(x356, 0xffffffff);
- uint32_t x386, uint32_t x387 = mulx_u32(x356, 0xffffffff);
- uint32_t x389, uint32_t x390 = mulx_u32(x356, 0xffffffff);
- uint32_t x392, uint32_t x393 = mulx_u32(x356, 0xffffffff);
- uint32_t x395, uint32_t x396 = mulx_u32(x356, 0xffffffff);
- uint32_t x398, uint32_t x399 = mulx_u32(x356, 0xffffffff);
- uint32_t x401, uint32_t x402 = mulx_u32(x356, 0xffffffff);
- uint32_t x404, uint32_t x405 = mulx_u32(x356, 0x3f80ffff);
- uint32_t x407, uint8_t x408 = addcarryx_u32(0x0, x384, x386);
- uint32_t x410, uint8_t x411 = addcarryx_u32(x408, x387, x389);
- uint32_t x413, uint8_t x414 = addcarryx_u32(x411, x390, x392);
- uint32_t x416, uint8_t x417 = addcarryx_u32(x414, x393, x395);
- uint32_t x419, uint8_t x420 = addcarryx_u32(x417, x396, x398);
- uint32_t x422, uint8_t x423 = addcarryx_u32(x420, x399, x401);
- uint32_t x425, uint8_t x426 = addcarryx_u32(x423, x402, x404);
- uint32_t x428, uint8_t _ = addcarryx_u32(0x0, x426, x405);
- uint32_t _, uint8_t x432 = addcarryx_u32(0x0, x356, x383);
- uint32_t x434, uint8_t x435 = addcarryx_u32(x432, x359, x407);
- uint32_t x437, uint8_t x438 = addcarryx_u32(x435, x362, x410);
- uint32_t x440, uint8_t x441 = addcarryx_u32(x438, x365, x413);
- uint32_t x443, uint8_t x444 = addcarryx_u32(x441, x368, x416);
- uint32_t x446, uint8_t x447 = addcarryx_u32(x444, x371, x419);
- uint32_t x449, uint8_t x450 = addcarryx_u32(x447, x374, x422);
- uint32_t x452, uint8_t x453 = addcarryx_u32(x450, x377, x425);
- uint32_t x455, uint8_t x456 = addcarryx_u32(x453, x380, x428);
- uint8_t x457 = (x456 + x381);
- uint32_t x459, uint32_t x460 = mulx_u32(x11, x19);
- uint32_t x462, uint32_t x463 = mulx_u32(x11, x21);
- uint32_t x465, uint32_t x466 = mulx_u32(x11, x23);
- uint32_t x468, uint32_t x469 = mulx_u32(x11, x25);
- uint32_t x471, uint32_t x472 = mulx_u32(x11, x27);
- uint32_t x474, uint32_t x475 = mulx_u32(x11, x29);
- uint32_t x477, uint32_t x478 = mulx_u32(x11, x31);
- uint32_t x480, uint32_t x481 = mulx_u32(x11, x30);
- uint32_t x483, uint8_t x484 = addcarryx_u32(0x0, x460, x462);
- uint32_t x486, uint8_t x487 = addcarryx_u32(x484, x463, x465);
- uint32_t x489, uint8_t x490 = addcarryx_u32(x487, x466, x468);
- uint32_t x492, uint8_t x493 = addcarryx_u32(x490, x469, x471);
- uint32_t x495, uint8_t x496 = addcarryx_u32(x493, x472, x474);
- uint32_t x498, uint8_t x499 = addcarryx_u32(x496, x475, x477);
- uint32_t x501, uint8_t x502 = addcarryx_u32(x499, x478, x480);
- uint32_t x504, uint8_t _ = addcarryx_u32(0x0, x502, x481);
- uint32_t x507, uint8_t x508 = addcarryx_u32(0x0, x434, x459);
- uint32_t x510, uint8_t x511 = addcarryx_u32(x508, x437, x483);
- uint32_t x513, uint8_t x514 = addcarryx_u32(x511, x440, x486);
- uint32_t x516, uint8_t x517 = addcarryx_u32(x514, x443, x489);
- uint32_t x519, uint8_t x520 = addcarryx_u32(x517, x446, x492);
- uint32_t x522, uint8_t x523 = addcarryx_u32(x520, x449, x495);
- uint32_t x525, uint8_t x526 = addcarryx_u32(x523, x452, x498);
- uint32_t x528, uint8_t x529 = addcarryx_u32(x526, x455, x501);
- uint32_t x531, uint8_t x532 = addcarryx_u32(x529, x457, x504);
- uint32_t x534, uint32_t x535 = mulx_u32(x507, 0xffffffff);
- uint32_t x537, uint32_t x538 = mulx_u32(x507, 0xffffffff);
- uint32_t x540, uint32_t x541 = mulx_u32(x507, 0xffffffff);
- uint32_t x543, uint32_t x544 = mulx_u32(x507, 0xffffffff);
- uint32_t x546, uint32_t x547 = mulx_u32(x507, 0xffffffff);
- uint32_t x549, uint32_t x550 = mulx_u32(x507, 0xffffffff);
- uint32_t x552, uint32_t x553 = mulx_u32(x507, 0xffffffff);
- uint32_t x555, uint32_t x556 = mulx_u32(x507, 0x3f80ffff);
- uint32_t x558, uint8_t x559 = addcarryx_u32(0x0, x535, x537);
- uint32_t x561, uint8_t x562 = addcarryx_u32(x559, x538, x540);
- uint32_t x564, uint8_t x565 = addcarryx_u32(x562, x541, x543);
- uint32_t x567, uint8_t x568 = addcarryx_u32(x565, x544, x546);
- uint32_t x570, uint8_t x571 = addcarryx_u32(x568, x547, x549);
- uint32_t x573, uint8_t x574 = addcarryx_u32(x571, x550, x552);
- uint32_t x576, uint8_t x577 = addcarryx_u32(x574, x553, x555);
- uint32_t x579, uint8_t _ = addcarryx_u32(0x0, x577, x556);
- uint32_t _, uint8_t x583 = addcarryx_u32(0x0, x507, x534);
- uint32_t x585, uint8_t x586 = addcarryx_u32(x583, x510, x558);
- uint32_t x588, uint8_t x589 = addcarryx_u32(x586, x513, x561);
- uint32_t x591, uint8_t x592 = addcarryx_u32(x589, x516, x564);
- uint32_t x594, uint8_t x595 = addcarryx_u32(x592, x519, x567);
- uint32_t x597, uint8_t x598 = addcarryx_u32(x595, x522, x570);
- uint32_t x600, uint8_t x601 = addcarryx_u32(x598, x525, x573);
- uint32_t x603, uint8_t x604 = addcarryx_u32(x601, x528, x576);
- uint32_t x606, uint8_t x607 = addcarryx_u32(x604, x531, x579);
- uint8_t x608 = (x607 + x532);
- uint32_t x610, uint32_t x611 = mulx_u32(x13, x19);
- uint32_t x613, uint32_t x614 = mulx_u32(x13, x21);
- uint32_t x616, uint32_t x617 = mulx_u32(x13, x23);
- uint32_t x619, uint32_t x620 = mulx_u32(x13, x25);
- uint32_t x622, uint32_t x623 = mulx_u32(x13, x27);
- uint32_t x625, uint32_t x626 = mulx_u32(x13, x29);
- uint32_t x628, uint32_t x629 = mulx_u32(x13, x31);
- uint32_t x631, uint32_t x632 = mulx_u32(x13, x30);
- uint32_t x634, uint8_t x635 = addcarryx_u32(0x0, x611, x613);
- uint32_t x637, uint8_t x638 = addcarryx_u32(x635, x614, x616);
- uint32_t x640, uint8_t x641 = addcarryx_u32(x638, x617, x619);
- uint32_t x643, uint8_t x644 = addcarryx_u32(x641, x620, x622);
- uint32_t x646, uint8_t x647 = addcarryx_u32(x644, x623, x625);
- uint32_t x649, uint8_t x650 = addcarryx_u32(x647, x626, x628);
- uint32_t x652, uint8_t x653 = addcarryx_u32(x650, x629, x631);
- uint32_t x655, uint8_t _ = addcarryx_u32(0x0, x653, x632);
- uint32_t x658, uint8_t x659 = addcarryx_u32(0x0, x585, x610);
- uint32_t x661, uint8_t x662 = addcarryx_u32(x659, x588, x634);
- uint32_t x664, uint8_t x665 = addcarryx_u32(x662, x591, x637);
- uint32_t x667, uint8_t x668 = addcarryx_u32(x665, x594, x640);
- uint32_t x670, uint8_t x671 = addcarryx_u32(x668, x597, x643);
- uint32_t x673, uint8_t x674 = addcarryx_u32(x671, x600, x646);
- uint32_t x676, uint8_t x677 = addcarryx_u32(x674, x603, x649);
- uint32_t x679, uint8_t x680 = addcarryx_u32(x677, x606, x652);
- uint32_t x682, uint8_t x683 = addcarryx_u32(x680, x608, x655);
- uint32_t x685, uint32_t x686 = mulx_u32(x658, 0xffffffff);
- uint32_t x688, uint32_t x689 = mulx_u32(x658, 0xffffffff);
- uint32_t x691, uint32_t x692 = mulx_u32(x658, 0xffffffff);
- uint32_t x694, uint32_t x695 = mulx_u32(x658, 0xffffffff);
- uint32_t x697, uint32_t x698 = mulx_u32(x658, 0xffffffff);
- uint32_t x700, uint32_t x701 = mulx_u32(x658, 0xffffffff);
- uint32_t x703, uint32_t x704 = mulx_u32(x658, 0xffffffff);
- uint32_t x706, uint32_t x707 = mulx_u32(x658, 0x3f80ffff);
- uint32_t x709, uint8_t x710 = addcarryx_u32(0x0, x686, x688);
- uint32_t x712, uint8_t x713 = addcarryx_u32(x710, x689, x691);
- uint32_t x715, uint8_t x716 = addcarryx_u32(x713, x692, x694);
- uint32_t x718, uint8_t x719 = addcarryx_u32(x716, x695, x697);
- uint32_t x721, uint8_t x722 = addcarryx_u32(x719, x698, x700);
- uint32_t x724, uint8_t x725 = addcarryx_u32(x722, x701, x703);
- uint32_t x727, uint8_t x728 = addcarryx_u32(x725, x704, x706);
- uint32_t x730, uint8_t _ = addcarryx_u32(0x0, x728, x707);
- uint32_t _, uint8_t x734 = addcarryx_u32(0x0, x658, x685);
- uint32_t x736, uint8_t x737 = addcarryx_u32(x734, x661, x709);
- uint32_t x739, uint8_t x740 = addcarryx_u32(x737, x664, x712);
- uint32_t x742, uint8_t x743 = addcarryx_u32(x740, x667, x715);
- uint32_t x745, uint8_t x746 = addcarryx_u32(x743, x670, x718);
- uint32_t x748, uint8_t x749 = addcarryx_u32(x746, x673, x721);
- uint32_t x751, uint8_t x752 = addcarryx_u32(x749, x676, x724);
- uint32_t x754, uint8_t x755 = addcarryx_u32(x752, x679, x727);
- uint32_t x757, uint8_t x758 = addcarryx_u32(x755, x682, x730);
- uint8_t x759 = (x758 + x683);
- uint32_t x761, uint32_t x762 = mulx_u32(x15, x19);
- uint32_t x764, uint32_t x765 = mulx_u32(x15, x21);
- uint32_t x767, uint32_t x768 = mulx_u32(x15, x23);
- uint32_t x770, uint32_t x771 = mulx_u32(x15, x25);
- uint32_t x773, uint32_t x774 = mulx_u32(x15, x27);
- uint32_t x776, uint32_t x777 = mulx_u32(x15, x29);
- uint32_t x779, uint32_t x780 = mulx_u32(x15, x31);
- uint32_t x782, uint32_t x783 = mulx_u32(x15, x30);
- uint32_t x785, uint8_t x786 = addcarryx_u32(0x0, x762, x764);
- uint32_t x788, uint8_t x789 = addcarryx_u32(x786, x765, x767);
- uint32_t x791, uint8_t x792 = addcarryx_u32(x789, x768, x770);
- uint32_t x794, uint8_t x795 = addcarryx_u32(x792, x771, x773);
- uint32_t x797, uint8_t x798 = addcarryx_u32(x795, x774, x776);
- uint32_t x800, uint8_t x801 = addcarryx_u32(x798, x777, x779);
- uint32_t x803, uint8_t x804 = addcarryx_u32(x801, x780, x782);
- uint32_t x806, uint8_t _ = addcarryx_u32(0x0, x804, x783);
- uint32_t x809, uint8_t x810 = addcarryx_u32(0x0, x736, x761);
- uint32_t x812, uint8_t x813 = addcarryx_u32(x810, x739, x785);
- uint32_t x815, uint8_t x816 = addcarryx_u32(x813, x742, x788);
- uint32_t x818, uint8_t x819 = addcarryx_u32(x816, x745, x791);
- uint32_t x821, uint8_t x822 = addcarryx_u32(x819, x748, x794);
- uint32_t x824, uint8_t x825 = addcarryx_u32(x822, x751, x797);
- uint32_t x827, uint8_t x828 = addcarryx_u32(x825, x754, x800);
- uint32_t x830, uint8_t x831 = addcarryx_u32(x828, x757, x803);
- uint32_t x833, uint8_t x834 = addcarryx_u32(x831, x759, x806);
- uint32_t x836, uint32_t x837 = mulx_u32(x809, 0xffffffff);
- uint32_t x839, uint32_t x840 = mulx_u32(x809, 0xffffffff);
- uint32_t x842, uint32_t x843 = mulx_u32(x809, 0xffffffff);
- uint32_t x845, uint32_t x846 = mulx_u32(x809, 0xffffffff);
- uint32_t x848, uint32_t x849 = mulx_u32(x809, 0xffffffff);
- uint32_t x851, uint32_t x852 = mulx_u32(x809, 0xffffffff);
- uint32_t x854, uint32_t x855 = mulx_u32(x809, 0xffffffff);
- uint32_t x857, uint32_t x858 = mulx_u32(x809, 0x3f80ffff);
- uint32_t x860, uint8_t x861 = addcarryx_u32(0x0, x837, x839);
- uint32_t x863, uint8_t x864 = addcarryx_u32(x861, x840, x842);
- uint32_t x866, uint8_t x867 = addcarryx_u32(x864, x843, x845);
- uint32_t x869, uint8_t x870 = addcarryx_u32(x867, x846, x848);
- uint32_t x872, uint8_t x873 = addcarryx_u32(x870, x849, x851);
- uint32_t x875, uint8_t x876 = addcarryx_u32(x873, x852, x854);
- uint32_t x878, uint8_t x879 = addcarryx_u32(x876, x855, x857);
- uint32_t x881, uint8_t _ = addcarryx_u32(0x0, x879, x858);
- uint32_t _, uint8_t x885 = addcarryx_u32(0x0, x809, x836);
- uint32_t x887, uint8_t x888 = addcarryx_u32(x885, x812, x860);
- uint32_t x890, uint8_t x891 = addcarryx_u32(x888, x815, x863);
- uint32_t x893, uint8_t x894 = addcarryx_u32(x891, x818, x866);
- uint32_t x896, uint8_t x897 = addcarryx_u32(x894, x821, x869);
- uint32_t x899, uint8_t x900 = addcarryx_u32(x897, x824, x872);
- uint32_t x902, uint8_t x903 = addcarryx_u32(x900, x827, x875);
- uint32_t x905, uint8_t x906 = addcarryx_u32(x903, x830, x878);
- uint32_t x908, uint8_t x909 = addcarryx_u32(x906, x833, x881);
- uint8_t x910 = (x909 + x834);
- uint32_t x912, uint32_t x913 = mulx_u32(x17, x19);
- uint32_t x915, uint32_t x916 = mulx_u32(x17, x21);
- uint32_t x918, uint32_t x919 = mulx_u32(x17, x23);
- uint32_t x921, uint32_t x922 = mulx_u32(x17, x25);
- uint32_t x924, uint32_t x925 = mulx_u32(x17, x27);
- uint32_t x927, uint32_t x928 = mulx_u32(x17, x29);
- uint32_t x930, uint32_t x931 = mulx_u32(x17, x31);
- uint32_t x933, uint32_t x934 = mulx_u32(x17, x30);
- uint32_t x936, uint8_t x937 = addcarryx_u32(0x0, x913, x915);
- uint32_t x939, uint8_t x940 = addcarryx_u32(x937, x916, x918);
- uint32_t x942, uint8_t x943 = addcarryx_u32(x940, x919, x921);
- uint32_t x945, uint8_t x946 = addcarryx_u32(x943, x922, x924);
- uint32_t x948, uint8_t x949 = addcarryx_u32(x946, x925, x927);
- uint32_t x951, uint8_t x952 = addcarryx_u32(x949, x928, x930);
- uint32_t x954, uint8_t x955 = addcarryx_u32(x952, x931, x933);
- uint32_t x957, uint8_t _ = addcarryx_u32(0x0, x955, x934);
- uint32_t x960, uint8_t x961 = addcarryx_u32(0x0, x887, x912);
- uint32_t x963, uint8_t x964 = addcarryx_u32(x961, x890, x936);
- uint32_t x966, uint8_t x967 = addcarryx_u32(x964, x893, x939);
- uint32_t x969, uint8_t x970 = addcarryx_u32(x967, x896, x942);
- uint32_t x972, uint8_t x973 = addcarryx_u32(x970, x899, x945);
- uint32_t x975, uint8_t x976 = addcarryx_u32(x973, x902, x948);
- uint32_t x978, uint8_t x979 = addcarryx_u32(x976, x905, x951);
- uint32_t x981, uint8_t x982 = addcarryx_u32(x979, x908, x954);
- uint32_t x984, uint8_t x985 = addcarryx_u32(x982, x910, x957);
- uint32_t x987, uint32_t x988 = mulx_u32(x960, 0xffffffff);
- uint32_t x990, uint32_t x991 = mulx_u32(x960, 0xffffffff);
- uint32_t x993, uint32_t x994 = mulx_u32(x960, 0xffffffff);
- uint32_t x996, uint32_t x997 = mulx_u32(x960, 0xffffffff);
- uint32_t x999, uint32_t x1000 = mulx_u32(x960, 0xffffffff);
- uint32_t x1002, uint32_t x1003 = mulx_u32(x960, 0xffffffff);
- uint32_t x1005, uint32_t x1006 = mulx_u32(x960, 0xffffffff);
- uint32_t x1008, uint32_t x1009 = mulx_u32(x960, 0x3f80ffff);
- uint32_t x1011, uint8_t x1012 = addcarryx_u32(0x0, x988, x990);
- uint32_t x1014, uint8_t x1015 = addcarryx_u32(x1012, x991, x993);
- uint32_t x1017, uint8_t x1018 = addcarryx_u32(x1015, x994, x996);
- uint32_t x1020, uint8_t x1021 = addcarryx_u32(x1018, x997, x999);
- uint32_t x1023, uint8_t x1024 = addcarryx_u32(x1021, x1000, x1002);
- uint32_t x1026, uint8_t x1027 = addcarryx_u32(x1024, x1003, x1005);
- uint32_t x1029, uint8_t x1030 = addcarryx_u32(x1027, x1006, x1008);
- uint32_t x1032, uint8_t _ = addcarryx_u32(0x0, x1030, x1009);
- uint32_t _, uint8_t x1036 = addcarryx_u32(0x0, x960, x987);
- uint32_t x1038, uint8_t x1039 = addcarryx_u32(x1036, x963, x1011);
- uint32_t x1041, uint8_t x1042 = addcarryx_u32(x1039, x966, x1014);
- uint32_t x1044, uint8_t x1045 = addcarryx_u32(x1042, x969, x1017);
- uint32_t x1047, uint8_t x1048 = addcarryx_u32(x1045, x972, x1020);
- uint32_t x1050, uint8_t x1051 = addcarryx_u32(x1048, x975, x1023);
- uint32_t x1053, uint8_t x1054 = addcarryx_u32(x1051, x978, x1026);
- uint32_t x1056, uint8_t x1057 = addcarryx_u32(x1054, x981, x1029);
- uint32_t x1059, uint8_t x1060 = addcarryx_u32(x1057, x984, x1032);
- uint8_t x1061 = (x1060 + x985);
- uint32_t x1063, uint32_t x1064 = mulx_u32(x16, x19);
- uint32_t x1066, uint32_t x1067 = mulx_u32(x16, x21);
- uint32_t x1069, uint32_t x1070 = mulx_u32(x16, x23);
- uint32_t x1072, uint32_t x1073 = mulx_u32(x16, x25);
- uint32_t x1075, uint32_t x1076 = mulx_u32(x16, x27);
- uint32_t x1078, uint32_t x1079 = mulx_u32(x16, x29);
- uint32_t x1081, uint32_t x1082 = mulx_u32(x16, x31);
- uint32_t x1084, uint32_t x1085 = mulx_u32(x16, x30);
- uint32_t x1087, uint8_t x1088 = addcarryx_u32(0x0, x1064, x1066);
- uint32_t x1090, uint8_t x1091 = addcarryx_u32(x1088, x1067, x1069);
- uint32_t x1093, uint8_t x1094 = addcarryx_u32(x1091, x1070, x1072);
- uint32_t x1096, uint8_t x1097 = addcarryx_u32(x1094, x1073, x1075);
- uint32_t x1099, uint8_t x1100 = addcarryx_u32(x1097, x1076, x1078);
- uint32_t x1102, uint8_t x1103 = addcarryx_u32(x1100, x1079, x1081);
- uint32_t x1105, uint8_t x1106 = addcarryx_u32(x1103, x1082, x1084);
- uint32_t x1108, uint8_t _ = addcarryx_u32(0x0, x1106, x1085);
- uint32_t x1111, uint8_t x1112 = addcarryx_u32(0x0, x1038, x1063);
- uint32_t x1114, uint8_t x1115 = addcarryx_u32(x1112, x1041, x1087);
- uint32_t x1117, uint8_t x1118 = addcarryx_u32(x1115, x1044, x1090);
- uint32_t x1120, uint8_t x1121 = addcarryx_u32(x1118, x1047, x1093);
- uint32_t x1123, uint8_t x1124 = addcarryx_u32(x1121, x1050, x1096);
- uint32_t x1126, uint8_t x1127 = addcarryx_u32(x1124, x1053, x1099);
- uint32_t x1129, uint8_t x1130 = addcarryx_u32(x1127, x1056, x1102);
- uint32_t x1132, uint8_t x1133 = addcarryx_u32(x1130, x1059, x1105);
- uint32_t x1135, uint8_t x1136 = addcarryx_u32(x1133, x1061, x1108);
- uint32_t x1138, uint32_t x1139 = mulx_u32(x1111, 0xffffffff);
- uint32_t x1141, uint32_t x1142 = mulx_u32(x1111, 0xffffffff);
- uint32_t x1144, uint32_t x1145 = mulx_u32(x1111, 0xffffffff);
- uint32_t x1147, uint32_t x1148 = mulx_u32(x1111, 0xffffffff);
- uint32_t x1150, uint32_t x1151 = mulx_u32(x1111, 0xffffffff);
- uint32_t x1153, uint32_t x1154 = mulx_u32(x1111, 0xffffffff);
- uint32_t x1156, uint32_t x1157 = mulx_u32(x1111, 0xffffffff);
- uint32_t x1159, uint32_t x1160 = mulx_u32(x1111, 0x3f80ffff);
- uint32_t x1162, uint8_t x1163 = addcarryx_u32(0x0, x1139, x1141);
- uint32_t x1165, uint8_t x1166 = addcarryx_u32(x1163, x1142, x1144);
- uint32_t x1168, uint8_t x1169 = addcarryx_u32(x1166, x1145, x1147);
- uint32_t x1171, uint8_t x1172 = addcarryx_u32(x1169, x1148, x1150);
- uint32_t x1174, uint8_t x1175 = addcarryx_u32(x1172, x1151, x1153);
- uint32_t x1177, uint8_t x1178 = addcarryx_u32(x1175, x1154, x1156);
- uint32_t x1180, uint8_t x1181 = addcarryx_u32(x1178, x1157, x1159);
- uint32_t x1183, uint8_t _ = addcarryx_u32(0x0, x1181, x1160);
- uint32_t _, uint8_t x1187 = addcarryx_u32(0x0, x1111, x1138);
- uint32_t x1189, uint8_t x1190 = addcarryx_u32(x1187, x1114, x1162);
- uint32_t x1192, uint8_t x1193 = addcarryx_u32(x1190, x1117, x1165);
- uint32_t x1195, uint8_t x1196 = addcarryx_u32(x1193, x1120, x1168);
- uint32_t x1198, uint8_t x1199 = addcarryx_u32(x1196, x1123, x1171);
- uint32_t x1201, uint8_t x1202 = addcarryx_u32(x1199, x1126, x1174);
- uint32_t x1204, uint8_t x1205 = addcarryx_u32(x1202, x1129, x1177);
- uint32_t x1207, uint8_t x1208 = addcarryx_u32(x1205, x1132, x1180);
- uint32_t x1210, uint8_t x1211 = addcarryx_u32(x1208, x1135, x1183);
- uint8_t x1212 = (x1211 + x1136);
- uint32_t x1214, uint8_t x1215 = subborrow_u32(0x0, x1189, 0xffffffff);
- uint32_t x1217, uint8_t x1218 = subborrow_u32(x1215, x1192, 0xffffffff);
- uint32_t x1220, uint8_t x1221 = subborrow_u32(x1218, x1195, 0xffffffff);
- uint32_t x1223, uint8_t x1224 = subborrow_u32(x1221, x1198, 0xffffffff);
- uint32_t x1226, uint8_t x1227 = subborrow_u32(x1224, x1201, 0xffffffff);
- uint32_t x1229, uint8_t x1230 = subborrow_u32(x1227, x1204, 0xffffffff);
- uint32_t x1232, uint8_t x1233 = subborrow_u32(x1230, x1207, 0xffffffff);
- uint32_t x1235, uint8_t x1236 = subborrow_u32(x1233, x1210, 0x3f80ffff);
- uint32_t _, uint8_t x1239 = subborrow_u32(x1236, x1212, 0x0);
- uint32_t x1240 = cmovznz32(x1239, x1235, x1210);
- uint32_t x1241 = cmovznz32(x1239, x1232, x1207);
- uint32_t x1242 = cmovznz32(x1239, x1229, x1204);
- uint32_t x1243 = cmovznz32(x1239, x1226, x1201);
- uint32_t x1244 = cmovznz32(x1239, x1223, x1198);
- uint32_t x1245 = cmovznz32(x1239, x1220, x1195);
- uint32_t x1246 = cmovznz32(x1239, x1217, x1192);
- uint32_t x1247 = cmovznz32(x1239, x1214, x1189);
- return (x1240, x1241, x1242, x1243, x1244, x1245, x1246, x1247))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/femulDisplay.v b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/femulDisplay.v
deleted file mode 100644
index a1902f77e..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e254m127x2e240m1_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fenz.c b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fenz.c
deleted file mode 100644
index 744f2aa5f..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (x14 | x13);
- { uint32_t x16 = (x12 | x15);
- { uint32_t x17 = (x10 | x16);
- { uint32_t x18 = (x8 | x17);
- { uint32_t x19 = (x6 | x18);
- { uint32_t x20 = (x4 | x19);
- { uint32_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fenz.v b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fenz.v
deleted file mode 100644
index e3e36e358..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e254m127x2e240m1_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fenzDisplay.log b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fenzDisplay.log
deleted file mode 100644
index c7c1c2df1..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x15 = (x14 | x13);
- uint32_t x16 = (x12 | x15);
- uint32_t x17 = (x10 | x16);
- uint32_t x18 = (x8 | x17);
- uint32_t x19 = (x6 | x18);
- uint32_t x20 = (x4 | x19);
- uint32_t x21 = (x2 | x20);
- return x21)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fenzDisplay.v b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fenzDisplay.v
deleted file mode 100644
index 9ea8e9185..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e254m127x2e240m1_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feopp.c b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feopp.c
deleted file mode 100644
index 28a215411..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feopp.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void feopp(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x16; uint8_t x17 = _subborrow_u32(0x0, 0x0, x2, &x16);
- { uint32_t x19; uint8_t x20 = _subborrow_u32(x17, 0x0, x4, &x19);
- { uint32_t x22; uint8_t x23 = _subborrow_u32(x20, 0x0, x6, &x22);
- { uint32_t x25; uint8_t x26 = _subborrow_u32(x23, 0x0, x8, &x25);
- { uint32_t x28; uint8_t x29 = _subborrow_u32(x26, 0x0, x10, &x28);
- { uint32_t x31; uint8_t x32 = _subborrow_u32(x29, 0x0, x12, &x31);
- { uint32_t x34; uint8_t x35 = _subborrow_u32(x32, 0x0, x14, &x34);
- { uint32_t x37; uint8_t x38 = _subborrow_u32(x35, 0x0, x13, &x37);
- { uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- { uint32_t x40 = (x39 & 0xffffffff);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(0x0, x16, x40, &x42);
- { uint32_t x44 = (x39 & 0xffffffff);
- { uint32_t x46; uint8_t x47 = _addcarryx_u32(x43, x19, x44, &x46);
- { uint32_t x48 = (x39 & 0xffffffff);
- { uint32_t x50; uint8_t x51 = _addcarryx_u32(x47, x22, x48, &x50);
- { uint32_t x52 = (x39 & 0xffffffff);
- { uint32_t x54; uint8_t x55 = _addcarryx_u32(x51, x25, x52, &x54);
- { uint32_t x56 = (x39 & 0xffffffff);
- { uint32_t x58; uint8_t x59 = _addcarryx_u32(x55, x28, x56, &x58);
- { uint32_t x60 = (x39 & 0xffffffff);
- { uint32_t x62; uint8_t x63 = _addcarryx_u32(x59, x31, x60, &x62);
- { uint32_t x64 = (x39 & 0xffffffff);
- { uint32_t x66; uint8_t x67 = _addcarryx_u32(x63, x34, x64, &x66);
- { uint32_t x68 = (x39 & 0x3f80ffff);
- { uint32_t x70; uint8_t _ = _addcarryx_u32(x67, x37, x68, &x70);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feopp.v b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feopp.v
deleted file mode 100644
index 0b19dfa0b..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e254m127x2e240m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feoppDisplay.log b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feoppDisplay.log
deleted file mode 100644
index 2c9f03a70..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feoppDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x16, uint8_t x17 = subborrow_u32(0x0, 0x0, x2);
- uint32_t x19, uint8_t x20 = subborrow_u32(x17, 0x0, x4);
- uint32_t x22, uint8_t x23 = subborrow_u32(x20, 0x0, x6);
- uint32_t x25, uint8_t x26 = subborrow_u32(x23, 0x0, x8);
- uint32_t x28, uint8_t x29 = subborrow_u32(x26, 0x0, x10);
- uint32_t x31, uint8_t x32 = subborrow_u32(x29, 0x0, x12);
- uint32_t x34, uint8_t x35 = subborrow_u32(x32, 0x0, x14);
- uint32_t x37, uint8_t x38 = subborrow_u32(x35, 0x0, x13);
- uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- uint32_t x40 = (x39 & 0xffffffff);
- uint32_t x42, uint8_t x43 = addcarryx_u32(0x0, x16, x40);
- uint32_t x44 = (x39 & 0xffffffff);
- uint32_t x46, uint8_t x47 = addcarryx_u32(x43, x19, x44);
- uint32_t x48 = (x39 & 0xffffffff);
- uint32_t x50, uint8_t x51 = addcarryx_u32(x47, x22, x48);
- uint32_t x52 = (x39 & 0xffffffff);
- uint32_t x54, uint8_t x55 = addcarryx_u32(x51, x25, x52);
- uint32_t x56 = (x39 & 0xffffffff);
- uint32_t x58, uint8_t x59 = addcarryx_u32(x55, x28, x56);
- uint32_t x60 = (x39 & 0xffffffff);
- uint32_t x62, uint8_t x63 = addcarryx_u32(x59, x31, x60);
- uint32_t x64 = (x39 & 0xffffffff);
- uint32_t x66, uint8_t x67 = addcarryx_u32(x63, x34, x64);
- uint32_t x68 = (x39 & 0x3f80ffff);
- uint32_t x70, uint8_t _ = addcarryx_u32(x67, x37, x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feoppDisplay.v b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feoppDisplay.v
deleted file mode 100644
index 8fb72ea92..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e254m127x2e240m1_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fesquare.c b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fesub.c b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fesub.c
deleted file mode 100644
index a7634dcbc..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fesub.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void fesub(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint32_t x33; uint8_t x34 = _subborrow_u32(0x0, x5, x19, &x33);
- { uint32_t x36; uint8_t x37 = _subborrow_u32(x34, x7, x21, &x36);
- { uint32_t x39; uint8_t x40 = _subborrow_u32(x37, x9, x23, &x39);
- { uint32_t x42; uint8_t x43 = _subborrow_u32(x40, x11, x25, &x42);
- { uint32_t x45; uint8_t x46 = _subborrow_u32(x43, x13, x27, &x45);
- { uint32_t x48; uint8_t x49 = _subborrow_u32(x46, x15, x29, &x48);
- { uint32_t x51; uint8_t x52 = _subborrow_u32(x49, x17, x31, &x51);
- { uint32_t x54; uint8_t x55 = _subborrow_u32(x52, x16, x30, &x54);
- { uint32_t x56 = cmovznz32(x55, 0x0, 0xffffffff);
- { uint32_t x57 = (x56 & 0xffffffff);
- { uint32_t x59; uint8_t x60 = _addcarryx_u32(0x0, x33, x57, &x59);
- { uint32_t x61 = (x56 & 0xffffffff);
- { uint32_t x63; uint8_t x64 = _addcarryx_u32(x60, x36, x61, &x63);
- { uint32_t x65 = (x56 & 0xffffffff);
- { uint32_t x67; uint8_t x68 = _addcarryx_u32(x64, x39, x65, &x67);
- { uint32_t x69 = (x56 & 0xffffffff);
- { uint32_t x71; uint8_t x72 = _addcarryx_u32(x68, x42, x69, &x71);
- { uint32_t x73 = (x56 & 0xffffffff);
- { uint32_t x75; uint8_t x76 = _addcarryx_u32(x72, x45, x73, &x75);
- { uint32_t x77 = (x56 & 0xffffffff);
- { uint32_t x79; uint8_t x80 = _addcarryx_u32(x76, x48, x77, &x79);
- { uint32_t x81 = (x56 & 0xffffffff);
- { uint32_t x83; uint8_t x84 = _addcarryx_u32(x80, x51, x81, &x83);
- { uint32_t x85 = (x56 & 0x3f80ffff);
- { uint32_t x87; uint8_t _ = _addcarryx_u32(x84, x54, x85, &x87);
- out[0] = x59;
- out[1] = x63;
- out[2] = x67;
- out[3] = x71;
- out[4] = x75;
- out[5] = x79;
- out[6] = x83;
- out[7] = x87;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fesub.v b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fesub.v
deleted file mode 100644
index 300f6e100..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e254m127x2e240m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fesubDisplay.log b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fesubDisplay.log
deleted file mode 100644
index 76d3eb77f..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint32_t x33, uint8_t x34 = subborrow_u32(0x0, x5, x19);
- uint32_t x36, uint8_t x37 = subborrow_u32(x34, x7, x21);
- uint32_t x39, uint8_t x40 = subborrow_u32(x37, x9, x23);
- uint32_t x42, uint8_t x43 = subborrow_u32(x40, x11, x25);
- uint32_t x45, uint8_t x46 = subborrow_u32(x43, x13, x27);
- uint32_t x48, uint8_t x49 = subborrow_u32(x46, x15, x29);
- uint32_t x51, uint8_t x52 = subborrow_u32(x49, x17, x31);
- uint32_t x54, uint8_t x55 = subborrow_u32(x52, x16, x30);
- uint32_t x56 = cmovznz32(x55, 0x0, 0xffffffff);
- uint32_t x57 = (x56 & 0xffffffff);
- uint32_t x59, uint8_t x60 = addcarryx_u32(0x0, x33, x57);
- uint32_t x61 = (x56 & 0xffffffff);
- uint32_t x63, uint8_t x64 = addcarryx_u32(x60, x36, x61);
- uint32_t x65 = (x56 & 0xffffffff);
- uint32_t x67, uint8_t x68 = addcarryx_u32(x64, x39, x65);
- uint32_t x69 = (x56 & 0xffffffff);
- uint32_t x71, uint8_t x72 = addcarryx_u32(x68, x42, x69);
- uint32_t x73 = (x56 & 0xffffffff);
- uint32_t x75, uint8_t x76 = addcarryx_u32(x72, x45, x73);
- uint32_t x77 = (x56 & 0xffffffff);
- uint32_t x79, uint8_t x80 = addcarryx_u32(x76, x48, x77);
- uint32_t x81 = (x56 & 0xffffffff);
- uint32_t x83, uint8_t x84 = addcarryx_u32(x80, x51, x81);
- uint32_t x85 = (x56 & 0x3f80ffff);
- uint32_t x87, uint8_t _ = addcarryx_u32(x84, x54, x85);
- (Return x87, Return x83, Return x79, Return x75, Return x71, Return x67, Return x63, Return x59))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fesubDisplay.v b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fesubDisplay.v
deleted file mode 100644
index e57bd0ce4..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e254m127x2e240m1_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/py_interpreter.sh b/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/py_interpreter.sh
deleted file mode 100755
index 4893f7c8e..000000000
--- a/src/Specific/montgomery32_2e254m127x2e240m1_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**254 - 127*2**240 - 1' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e255m19_8limbs/CurveParameters.v b/src/Specific/montgomery32_2e255m19_8limbs/CurveParameters.v
deleted file mode 100644
index 2912d73c2..000000000
--- a/src/Specific/montgomery32_2e255m19_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^255 - 19
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 32;
- bitwidth := 32;
- s := 2^255;
- c := [(1, 19)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e255m19_8limbs/Synthesis.v b/src/Specific/montgomery32_2e255m19_8limbs/Synthesis.v
deleted file mode 100644
index 95e1946d1..000000000
--- a/src/Specific/montgomery32_2e255m19_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e255m19_8limbs.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/montgomery32_2e255m19_8limbs/compiler.sh b/src/Specific/montgomery32_2e255m19_8limbs/compiler.sh
deleted file mode 100755
index 8ee215067..000000000
--- a/src/Specific/montgomery32_2e255m19_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<255) - 19' "$@"
diff --git a/src/Specific/montgomery32_2e255m19_8limbs/compilerxx.sh b/src/Specific/montgomery32_2e255m19_8limbs/compilerxx.sh
deleted file mode 100755
index 76013648b..000000000
--- a/src/Specific/montgomery32_2e255m19_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<255) - 19' "$@"
diff --git a/src/Specific/montgomery32_2e255m19_8limbs/feadd.c b/src/Specific/montgomery32_2e255m19_8limbs/feadd.c
deleted file mode 100644
index 898843dd3..000000000
--- a/src/Specific/montgomery32_2e255m19_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint32_t x33; uint8_t x34 = _addcarryx_u32(0x0, x5, x19, &x33);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(x34, x7, x21, &x36);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x37, x9, x23, &x39);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x40, x11, x25, &x42);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(x43, x13, x27, &x45);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x46, x15, x29, &x48);
- { uint32_t x51; uint8_t x52 = _addcarryx_u32(x49, x17, x31, &x51);
- { uint32_t x54; uint8_t x55 = _addcarryx_u32(x52, x16, x30, &x54);
- { uint32_t x57; uint8_t x58 = _subborrow_u32(0x0, x33, 0xffffffed, &x57);
- { uint32_t x60; uint8_t x61 = _subborrow_u32(x58, x36, 0xffffffff, &x60);
- { uint32_t x63; uint8_t x64 = _subborrow_u32(x61, x39, 0xffffffff, &x63);
- { uint32_t x66; uint8_t x67 = _subborrow_u32(x64, x42, 0xffffffff, &x66);
- { uint32_t x69; uint8_t x70 = _subborrow_u32(x67, x45, 0xffffffff, &x69);
- { uint32_t x72; uint8_t x73 = _subborrow_u32(x70, x48, 0xffffffff, &x72);
- { uint32_t x75; uint8_t x76 = _subborrow_u32(x73, x51, 0xffffffff, &x75);
- { uint32_t x78; uint8_t x79 = _subborrow_u32(x76, x54, 0x7fffffff, &x78);
- { uint32_t _; uint8_t x82 = _subborrow_u32(x79, x55, 0x0, &_);
- { uint32_t x83 = cmovznz32(x82, x78, x54);
- { uint32_t x84 = cmovznz32(x82, x75, x51);
- { uint32_t x85 = cmovznz32(x82, x72, x48);
- { uint32_t x86 = cmovznz32(x82, x69, x45);
- { uint32_t x87 = cmovznz32(x82, x66, x42);
- { uint32_t x88 = cmovznz32(x82, x63, x39);
- { uint32_t x89 = cmovznz32(x82, x60, x36);
- { uint32_t x90 = cmovznz32(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e255m19_8limbs/feadd.v b/src/Specific/montgomery32_2e255m19_8limbs/feadd.v
deleted file mode 100644
index 235f7e489..000000000
--- a/src/Specific/montgomery32_2e255m19_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e255m19_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e255m19_8limbs/feaddDisplay.log b/src/Specific/montgomery32_2e255m19_8limbs/feaddDisplay.log
deleted file mode 100644
index 94c173f05..000000000
--- a/src/Specific/montgomery32_2e255m19_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint32_t x33, uint8_t x34 = addcarryx_u32(0x0, x5, x19);
- uint32_t x36, uint8_t x37 = addcarryx_u32(x34, x7, x21);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x37, x9, x23);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x40, x11, x25);
- uint32_t x45, uint8_t x46 = addcarryx_u32(x43, x13, x27);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x46, x15, x29);
- uint32_t x51, uint8_t x52 = addcarryx_u32(x49, x17, x31);
- uint32_t x54, uint8_t x55 = addcarryx_u32(x52, x16, x30);
- uint32_t x57, uint8_t x58 = subborrow_u32(0x0, x33, 0xffffffed);
- uint32_t x60, uint8_t x61 = subborrow_u32(x58, x36, 0xffffffff);
- uint32_t x63, uint8_t x64 = subborrow_u32(x61, x39, 0xffffffff);
- uint32_t x66, uint8_t x67 = subborrow_u32(x64, x42, 0xffffffff);
- uint32_t x69, uint8_t x70 = subborrow_u32(x67, x45, 0xffffffff);
- uint32_t x72, uint8_t x73 = subborrow_u32(x70, x48, 0xffffffff);
- uint32_t x75, uint8_t x76 = subborrow_u32(x73, x51, 0xffffffff);
- uint32_t x78, uint8_t x79 = subborrow_u32(x76, x54, 0x7fffffff);
- uint32_t _, uint8_t x82 = subborrow_u32(x79, x55, 0x0);
- uint32_t x83 = cmovznz32(x82, x78, x54);
- uint32_t x84 = cmovznz32(x82, x75, x51);
- uint32_t x85 = cmovznz32(x82, x72, x48);
- uint32_t x86 = cmovznz32(x82, x69, x45);
- uint32_t x87 = cmovznz32(x82, x66, x42);
- uint32_t x88 = cmovznz32(x82, x63, x39);
- uint32_t x89 = cmovznz32(x82, x60, x36);
- uint32_t x90 = cmovznz32(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e255m19_8limbs/feaddDisplay.v b/src/Specific/montgomery32_2e255m19_8limbs/feaddDisplay.v
deleted file mode 100644
index f3cdd8a0d..000000000
--- a/src/Specific/montgomery32_2e255m19_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e255m19_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e255m19_8limbs/femul.v b/src/Specific/montgomery32_2e255m19_8limbs/femul.v
deleted file mode 100644
index 61844d86e..000000000
--- a/src/Specific/montgomery32_2e255m19_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e255m19_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e255m19_8limbs/femulDisplay.v b/src/Specific/montgomery32_2e255m19_8limbs/femulDisplay.v
deleted file mode 100644
index aaa59f3c8..000000000
--- a/src/Specific/montgomery32_2e255m19_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e255m19_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e255m19_8limbs/fenz.c b/src/Specific/montgomery32_2e255m19_8limbs/fenz.c
deleted file mode 100644
index 744f2aa5f..000000000
--- a/src/Specific/montgomery32_2e255m19_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (x14 | x13);
- { uint32_t x16 = (x12 | x15);
- { uint32_t x17 = (x10 | x16);
- { uint32_t x18 = (x8 | x17);
- { uint32_t x19 = (x6 | x18);
- { uint32_t x20 = (x4 | x19);
- { uint32_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e255m19_8limbs/fenz.v b/src/Specific/montgomery32_2e255m19_8limbs/fenz.v
deleted file mode 100644
index 6668ff255..000000000
--- a/src/Specific/montgomery32_2e255m19_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e255m19_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e255m19_8limbs/fenzDisplay.log b/src/Specific/montgomery32_2e255m19_8limbs/fenzDisplay.log
deleted file mode 100644
index c7c1c2df1..000000000
--- a/src/Specific/montgomery32_2e255m19_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x15 = (x14 | x13);
- uint32_t x16 = (x12 | x15);
- uint32_t x17 = (x10 | x16);
- uint32_t x18 = (x8 | x17);
- uint32_t x19 = (x6 | x18);
- uint32_t x20 = (x4 | x19);
- uint32_t x21 = (x2 | x20);
- return x21)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e255m19_8limbs/fenzDisplay.v b/src/Specific/montgomery32_2e255m19_8limbs/fenzDisplay.v
deleted file mode 100644
index 35bb0b4e5..000000000
--- a/src/Specific/montgomery32_2e255m19_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e255m19_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e255m19_8limbs/feopp.v b/src/Specific/montgomery32_2e255m19_8limbs/feopp.v
deleted file mode 100644
index 349addf54..000000000
--- a/src/Specific/montgomery32_2e255m19_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e255m19_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e255m19_8limbs/feoppDisplay.v b/src/Specific/montgomery32_2e255m19_8limbs/feoppDisplay.v
deleted file mode 100644
index 46ae2ba55..000000000
--- a/src/Specific/montgomery32_2e255m19_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e255m19_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e255m19_8limbs/fesquare.c b/src/Specific/montgomery32_2e255m19_8limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e255m19_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e255m19_8limbs/fesub.v b/src/Specific/montgomery32_2e255m19_8limbs/fesub.v
deleted file mode 100644
index 10e6410cf..000000000
--- a/src/Specific/montgomery32_2e255m19_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e255m19_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e255m19_8limbs/fesubDisplay.v b/src/Specific/montgomery32_2e255m19_8limbs/fesubDisplay.v
deleted file mode 100644
index ddf45d162..000000000
--- a/src/Specific/montgomery32_2e255m19_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e255m19_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e255m19_8limbs/py_interpreter.sh b/src/Specific/montgomery32_2e255m19_8limbs/py_interpreter.sh
deleted file mode 100755
index da42d011a..000000000
--- a/src/Specific/montgomery32_2e255m19_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**255 - 19' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e255m765_8limbs/CurveParameters.v b/src/Specific/montgomery32_2e255m765_8limbs/CurveParameters.v
deleted file mode 100644
index 531d00bbb..000000000
--- a/src/Specific/montgomery32_2e255m765_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^255 - 765
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 32;
- bitwidth := 32;
- s := 2^255;
- c := [(1, 765)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e255m765_8limbs/Synthesis.v b/src/Specific/montgomery32_2e255m765_8limbs/Synthesis.v
deleted file mode 100644
index 7553856b5..000000000
--- a/src/Specific/montgomery32_2e255m765_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e255m765_8limbs.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/montgomery32_2e255m765_8limbs/compiler.sh b/src/Specific/montgomery32_2e255m765_8limbs/compiler.sh
deleted file mode 100755
index 332bc7c6e..000000000
--- a/src/Specific/montgomery32_2e255m765_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<255) - 765' "$@"
diff --git a/src/Specific/montgomery32_2e255m765_8limbs/compilerxx.sh b/src/Specific/montgomery32_2e255m765_8limbs/compilerxx.sh
deleted file mode 100755
index 15fe989f3..000000000
--- a/src/Specific/montgomery32_2e255m765_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<255) - 765' "$@"
diff --git a/src/Specific/montgomery32_2e255m765_8limbs/feadd.c b/src/Specific/montgomery32_2e255m765_8limbs/feadd.c
deleted file mode 100644
index c8a728e51..000000000
--- a/src/Specific/montgomery32_2e255m765_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint32_t x33; uint8_t x34 = _addcarryx_u32(0x0, x5, x19, &x33);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(x34, x7, x21, &x36);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x37, x9, x23, &x39);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x40, x11, x25, &x42);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(x43, x13, x27, &x45);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x46, x15, x29, &x48);
- { uint32_t x51; uint8_t x52 = _addcarryx_u32(x49, x17, x31, &x51);
- { uint32_t x54; uint8_t x55 = _addcarryx_u32(x52, x16, x30, &x54);
- { uint32_t x57; uint8_t x58 = _subborrow_u32(0x0, x33, 0xfffffd03, &x57);
- { uint32_t x60; uint8_t x61 = _subborrow_u32(x58, x36, 0xffffffff, &x60);
- { uint32_t x63; uint8_t x64 = _subborrow_u32(x61, x39, 0xffffffff, &x63);
- { uint32_t x66; uint8_t x67 = _subborrow_u32(x64, x42, 0xffffffff, &x66);
- { uint32_t x69; uint8_t x70 = _subborrow_u32(x67, x45, 0xffffffff, &x69);
- { uint32_t x72; uint8_t x73 = _subborrow_u32(x70, x48, 0xffffffff, &x72);
- { uint32_t x75; uint8_t x76 = _subborrow_u32(x73, x51, 0xffffffff, &x75);
- { uint32_t x78; uint8_t x79 = _subborrow_u32(x76, x54, 0x7fffffff, &x78);
- { uint32_t _; uint8_t x82 = _subborrow_u32(x79, x55, 0x0, &_);
- { uint32_t x83 = cmovznz32(x82, x78, x54);
- { uint32_t x84 = cmovznz32(x82, x75, x51);
- { uint32_t x85 = cmovznz32(x82, x72, x48);
- { uint32_t x86 = cmovznz32(x82, x69, x45);
- { uint32_t x87 = cmovznz32(x82, x66, x42);
- { uint32_t x88 = cmovznz32(x82, x63, x39);
- { uint32_t x89 = cmovznz32(x82, x60, x36);
- { uint32_t x90 = cmovznz32(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e255m765_8limbs/feadd.v b/src/Specific/montgomery32_2e255m765_8limbs/feadd.v
deleted file mode 100644
index 7a53941d4..000000000
--- a/src/Specific/montgomery32_2e255m765_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e255m765_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e255m765_8limbs/feaddDisplay.log b/src/Specific/montgomery32_2e255m765_8limbs/feaddDisplay.log
deleted file mode 100644
index dd7712447..000000000
--- a/src/Specific/montgomery32_2e255m765_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint32_t x33, uint8_t x34 = addcarryx_u32(0x0, x5, x19);
- uint32_t x36, uint8_t x37 = addcarryx_u32(x34, x7, x21);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x37, x9, x23);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x40, x11, x25);
- uint32_t x45, uint8_t x46 = addcarryx_u32(x43, x13, x27);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x46, x15, x29);
- uint32_t x51, uint8_t x52 = addcarryx_u32(x49, x17, x31);
- uint32_t x54, uint8_t x55 = addcarryx_u32(x52, x16, x30);
- uint32_t x57, uint8_t x58 = subborrow_u32(0x0, x33, 0xfffffd03);
- uint32_t x60, uint8_t x61 = subborrow_u32(x58, x36, 0xffffffff);
- uint32_t x63, uint8_t x64 = subborrow_u32(x61, x39, 0xffffffff);
- uint32_t x66, uint8_t x67 = subborrow_u32(x64, x42, 0xffffffff);
- uint32_t x69, uint8_t x70 = subborrow_u32(x67, x45, 0xffffffff);
- uint32_t x72, uint8_t x73 = subborrow_u32(x70, x48, 0xffffffff);
- uint32_t x75, uint8_t x76 = subborrow_u32(x73, x51, 0xffffffff);
- uint32_t x78, uint8_t x79 = subborrow_u32(x76, x54, 0x7fffffff);
- uint32_t _, uint8_t x82 = subborrow_u32(x79, x55, 0x0);
- uint32_t x83 = cmovznz32(x82, x78, x54);
- uint32_t x84 = cmovznz32(x82, x75, x51);
- uint32_t x85 = cmovznz32(x82, x72, x48);
- uint32_t x86 = cmovznz32(x82, x69, x45);
- uint32_t x87 = cmovznz32(x82, x66, x42);
- uint32_t x88 = cmovznz32(x82, x63, x39);
- uint32_t x89 = cmovznz32(x82, x60, x36);
- uint32_t x90 = cmovznz32(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e255m765_8limbs/feaddDisplay.v b/src/Specific/montgomery32_2e255m765_8limbs/feaddDisplay.v
deleted file mode 100644
index a23d1d0c1..000000000
--- a/src/Specific/montgomery32_2e255m765_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e255m765_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e255m765_8limbs/femul.v b/src/Specific/montgomery32_2e255m765_8limbs/femul.v
deleted file mode 100644
index cf3dd0305..000000000
--- a/src/Specific/montgomery32_2e255m765_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e255m765_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e255m765_8limbs/femulDisplay.v b/src/Specific/montgomery32_2e255m765_8limbs/femulDisplay.v
deleted file mode 100644
index 2dd8d03ca..000000000
--- a/src/Specific/montgomery32_2e255m765_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e255m765_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e255m765_8limbs/fenz.c b/src/Specific/montgomery32_2e255m765_8limbs/fenz.c
deleted file mode 100644
index 744f2aa5f..000000000
--- a/src/Specific/montgomery32_2e255m765_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (x14 | x13);
- { uint32_t x16 = (x12 | x15);
- { uint32_t x17 = (x10 | x16);
- { uint32_t x18 = (x8 | x17);
- { uint32_t x19 = (x6 | x18);
- { uint32_t x20 = (x4 | x19);
- { uint32_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e255m765_8limbs/fenz.v b/src/Specific/montgomery32_2e255m765_8limbs/fenz.v
deleted file mode 100644
index dea7924f3..000000000
--- a/src/Specific/montgomery32_2e255m765_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e255m765_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e255m765_8limbs/fenzDisplay.log b/src/Specific/montgomery32_2e255m765_8limbs/fenzDisplay.log
deleted file mode 100644
index c7c1c2df1..000000000
--- a/src/Specific/montgomery32_2e255m765_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x15 = (x14 | x13);
- uint32_t x16 = (x12 | x15);
- uint32_t x17 = (x10 | x16);
- uint32_t x18 = (x8 | x17);
- uint32_t x19 = (x6 | x18);
- uint32_t x20 = (x4 | x19);
- uint32_t x21 = (x2 | x20);
- return x21)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e255m765_8limbs/fenzDisplay.v b/src/Specific/montgomery32_2e255m765_8limbs/fenzDisplay.v
deleted file mode 100644
index 73a777b3b..000000000
--- a/src/Specific/montgomery32_2e255m765_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e255m765_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e255m765_8limbs/feopp.v b/src/Specific/montgomery32_2e255m765_8limbs/feopp.v
deleted file mode 100644
index 8ccd506fa..000000000
--- a/src/Specific/montgomery32_2e255m765_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e255m765_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e255m765_8limbs/feoppDisplay.v b/src/Specific/montgomery32_2e255m765_8limbs/feoppDisplay.v
deleted file mode 100644
index 3d41d35b5..000000000
--- a/src/Specific/montgomery32_2e255m765_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e255m765_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e255m765_8limbs/fesquare.c b/src/Specific/montgomery32_2e255m765_8limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e255m765_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e255m765_8limbs/fesub.v b/src/Specific/montgomery32_2e255m765_8limbs/fesub.v
deleted file mode 100644
index 499d96f16..000000000
--- a/src/Specific/montgomery32_2e255m765_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e255m765_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e255m765_8limbs/fesubDisplay.v b/src/Specific/montgomery32_2e255m765_8limbs/fesubDisplay.v
deleted file mode 100644
index 9e6ab8b9a..000000000
--- a/src/Specific/montgomery32_2e255m765_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e255m765_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e255m765_8limbs/py_interpreter.sh b/src/Specific/montgomery32_2e255m765_8limbs/py_interpreter.sh
deleted file mode 100755
index 014423320..000000000
--- a/src/Specific/montgomery32_2e255m765_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**255 - 765' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e256m189_8limbs/CurveParameters.v b/src/Specific/montgomery32_2e256m189_8limbs/CurveParameters.v
deleted file mode 100644
index c673cf6d9..000000000
--- a/src/Specific/montgomery32_2e256m189_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256 - 189
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 32;
- bitwidth := 32;
- s := 2^256;
- c := [(1, 189)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e256m189_8limbs/Synthesis.v b/src/Specific/montgomery32_2e256m189_8limbs/Synthesis.v
deleted file mode 100644
index cef5cd4ca..000000000
--- a/src/Specific/montgomery32_2e256m189_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e256m189_8limbs.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/montgomery32_2e256m189_8limbs/compiler.sh b/src/Specific/montgomery32_2e256m189_8limbs/compiler.sh
deleted file mode 100755
index 7bfb65e94..000000000
--- a/src/Specific/montgomery32_2e256m189_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<256) - 189' "$@"
diff --git a/src/Specific/montgomery32_2e256m189_8limbs/compilerxx.sh b/src/Specific/montgomery32_2e256m189_8limbs/compilerxx.sh
deleted file mode 100755
index f4aaec0dd..000000000
--- a/src/Specific/montgomery32_2e256m189_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<256) - 189' "$@"
diff --git a/src/Specific/montgomery32_2e256m189_8limbs/feadd.c b/src/Specific/montgomery32_2e256m189_8limbs/feadd.c
deleted file mode 100644
index d06e9223e..000000000
--- a/src/Specific/montgomery32_2e256m189_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint32_t x33; uint8_t x34 = _addcarryx_u32(0x0, x5, x19, &x33);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(x34, x7, x21, &x36);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x37, x9, x23, &x39);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x40, x11, x25, &x42);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(x43, x13, x27, &x45);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x46, x15, x29, &x48);
- { uint32_t x51; uint8_t x52 = _addcarryx_u32(x49, x17, x31, &x51);
- { uint32_t x54; uint8_t x55 = _addcarryx_u32(x52, x16, x30, &x54);
- { uint32_t x57; uint8_t x58 = _subborrow_u32(0x0, x33, 0xffffff43, &x57);
- { uint32_t x60; uint8_t x61 = _subborrow_u32(x58, x36, 0xffffffff, &x60);
- { uint32_t x63; uint8_t x64 = _subborrow_u32(x61, x39, 0xffffffff, &x63);
- { uint32_t x66; uint8_t x67 = _subborrow_u32(x64, x42, 0xffffffff, &x66);
- { uint32_t x69; uint8_t x70 = _subborrow_u32(x67, x45, 0xffffffff, &x69);
- { uint32_t x72; uint8_t x73 = _subborrow_u32(x70, x48, 0xffffffff, &x72);
- { uint32_t x75; uint8_t x76 = _subborrow_u32(x73, x51, 0xffffffff, &x75);
- { uint32_t x78; uint8_t x79 = _subborrow_u32(x76, x54, 0xffffffff, &x78);
- { uint32_t _; uint8_t x82 = _subborrow_u32(x79, x55, 0x0, &_);
- { uint32_t x83 = cmovznz32(x82, x78, x54);
- { uint32_t x84 = cmovznz32(x82, x75, x51);
- { uint32_t x85 = cmovznz32(x82, x72, x48);
- { uint32_t x86 = cmovznz32(x82, x69, x45);
- { uint32_t x87 = cmovznz32(x82, x66, x42);
- { uint32_t x88 = cmovznz32(x82, x63, x39);
- { uint32_t x89 = cmovznz32(x82, x60, x36);
- { uint32_t x90 = cmovznz32(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e256m189_8limbs/feadd.v b/src/Specific/montgomery32_2e256m189_8limbs/feadd.v
deleted file mode 100644
index 6398b5804..000000000
--- a/src/Specific/montgomery32_2e256m189_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m189_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e256m189_8limbs/feaddDisplay.log b/src/Specific/montgomery32_2e256m189_8limbs/feaddDisplay.log
deleted file mode 100644
index f20b63443..000000000
--- a/src/Specific/montgomery32_2e256m189_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint32_t x33, uint8_t x34 = addcarryx_u32(0x0, x5, x19);
- uint32_t x36, uint8_t x37 = addcarryx_u32(x34, x7, x21);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x37, x9, x23);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x40, x11, x25);
- uint32_t x45, uint8_t x46 = addcarryx_u32(x43, x13, x27);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x46, x15, x29);
- uint32_t x51, uint8_t x52 = addcarryx_u32(x49, x17, x31);
- uint32_t x54, uint8_t x55 = addcarryx_u32(x52, x16, x30);
- uint32_t x57, uint8_t x58 = subborrow_u32(0x0, x33, 0xffffff43);
- uint32_t x60, uint8_t x61 = subborrow_u32(x58, x36, 0xffffffff);
- uint32_t x63, uint8_t x64 = subborrow_u32(x61, x39, 0xffffffff);
- uint32_t x66, uint8_t x67 = subborrow_u32(x64, x42, 0xffffffff);
- uint32_t x69, uint8_t x70 = subborrow_u32(x67, x45, 0xffffffff);
- uint32_t x72, uint8_t x73 = subborrow_u32(x70, x48, 0xffffffff);
- uint32_t x75, uint8_t x76 = subborrow_u32(x73, x51, 0xffffffff);
- uint32_t x78, uint8_t x79 = subborrow_u32(x76, x54, 0xffffffff);
- uint32_t _, uint8_t x82 = subborrow_u32(x79, x55, 0x0);
- uint32_t x83 = cmovznz32(x82, x78, x54);
- uint32_t x84 = cmovznz32(x82, x75, x51);
- uint32_t x85 = cmovznz32(x82, x72, x48);
- uint32_t x86 = cmovznz32(x82, x69, x45);
- uint32_t x87 = cmovznz32(x82, x66, x42);
- uint32_t x88 = cmovznz32(x82, x63, x39);
- uint32_t x89 = cmovznz32(x82, x60, x36);
- uint32_t x90 = cmovznz32(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e256m189_8limbs/feaddDisplay.v b/src/Specific/montgomery32_2e256m189_8limbs/feaddDisplay.v
deleted file mode 100644
index 6ea724cdf..000000000
--- a/src/Specific/montgomery32_2e256m189_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m189_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e256m189_8limbs/femul.v b/src/Specific/montgomery32_2e256m189_8limbs/femul.v
deleted file mode 100644
index 148807359..000000000
--- a/src/Specific/montgomery32_2e256m189_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m189_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e256m189_8limbs/femulDisplay.v b/src/Specific/montgomery32_2e256m189_8limbs/femulDisplay.v
deleted file mode 100644
index 5924c8dfc..000000000
--- a/src/Specific/montgomery32_2e256m189_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m189_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e256m189_8limbs/fenz.c b/src/Specific/montgomery32_2e256m189_8limbs/fenz.c
deleted file mode 100644
index 744f2aa5f..000000000
--- a/src/Specific/montgomery32_2e256m189_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (x14 | x13);
- { uint32_t x16 = (x12 | x15);
- { uint32_t x17 = (x10 | x16);
- { uint32_t x18 = (x8 | x17);
- { uint32_t x19 = (x6 | x18);
- { uint32_t x20 = (x4 | x19);
- { uint32_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e256m189_8limbs/fenz.v b/src/Specific/montgomery32_2e256m189_8limbs/fenz.v
deleted file mode 100644
index 73da4791a..000000000
--- a/src/Specific/montgomery32_2e256m189_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m189_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e256m189_8limbs/fenzDisplay.log b/src/Specific/montgomery32_2e256m189_8limbs/fenzDisplay.log
deleted file mode 100644
index c7c1c2df1..000000000
--- a/src/Specific/montgomery32_2e256m189_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x15 = (x14 | x13);
- uint32_t x16 = (x12 | x15);
- uint32_t x17 = (x10 | x16);
- uint32_t x18 = (x8 | x17);
- uint32_t x19 = (x6 | x18);
- uint32_t x20 = (x4 | x19);
- uint32_t x21 = (x2 | x20);
- return x21)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e256m189_8limbs/fenzDisplay.v b/src/Specific/montgomery32_2e256m189_8limbs/fenzDisplay.v
deleted file mode 100644
index d3ce1b635..000000000
--- a/src/Specific/montgomery32_2e256m189_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m189_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e256m189_8limbs/feopp.v b/src/Specific/montgomery32_2e256m189_8limbs/feopp.v
deleted file mode 100644
index 8703562ab..000000000
--- a/src/Specific/montgomery32_2e256m189_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m189_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e256m189_8limbs/feoppDisplay.v b/src/Specific/montgomery32_2e256m189_8limbs/feoppDisplay.v
deleted file mode 100644
index d8846ef32..000000000
--- a/src/Specific/montgomery32_2e256m189_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m189_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e256m189_8limbs/fesquare.c b/src/Specific/montgomery32_2e256m189_8limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e256m189_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e256m189_8limbs/fesub.v b/src/Specific/montgomery32_2e256m189_8limbs/fesub.v
deleted file mode 100644
index 8df01bf62..000000000
--- a/src/Specific/montgomery32_2e256m189_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m189_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e256m189_8limbs/fesubDisplay.v b/src/Specific/montgomery32_2e256m189_8limbs/fesubDisplay.v
deleted file mode 100644
index e84d95cf1..000000000
--- a/src/Specific/montgomery32_2e256m189_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m189_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e256m189_8limbs/py_interpreter.sh b/src/Specific/montgomery32_2e256m189_8limbs/py_interpreter.sh
deleted file mode 100755
index fccf728a7..000000000
--- a/src/Specific/montgomery32_2e256m189_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256 - 189' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/CurveParameters.v b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/CurveParameters.v
deleted file mode 100644
index f8b2b996d..000000000
--- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256 - 2^224 + 2^192 + 2^96 - 1
-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)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/Synthesis.v b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/Synthesis.v
deleted file mode 100644
index b733e4ce9..000000000
--- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e256m2e224p2e192p2e96m1_8limbs.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/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/compiler.sh b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/compiler.sh
deleted file mode 100755
index df0737051..000000000
--- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/compilerxx.sh b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/compilerxx.sh
deleted file mode 100755
index 0b670506f..000000000
--- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/feadd.c b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/feadd.c
deleted file mode 100644
index 6dc8ca44c..000000000
--- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint32_t x33; uint8_t x34 = _addcarryx_u32(0x0, x5, x19, &x33);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(x34, x7, x21, &x36);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x37, x9, x23, &x39);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x40, x11, x25, &x42);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(x43, x13, x27, &x45);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x46, x15, x29, &x48);
- { uint32_t x51; uint8_t x52 = _addcarryx_u32(x49, x17, x31, &x51);
- { uint32_t x54; uint8_t x55 = _addcarryx_u32(x52, x16, x30, &x54);
- { uint32_t x57; uint8_t x58 = _subborrow_u32(0x0, x33, 0xffffffff, &x57);
- { uint32_t x60; uint8_t x61 = _subborrow_u32(x58, x36, 0xffffffff, &x60);
- { uint32_t x63; uint8_t x64 = _subborrow_u32(x61, x39, 0xffffffff, &x63);
- { uint32_t x66; uint8_t x67 = _subborrow_u32(x64, x42, 0x0, &x66);
- { uint32_t x69; uint8_t x70 = _subborrow_u32(x67, x45, 0x0, &x69);
- { uint32_t x72; uint8_t x73 = _subborrow_u32(x70, x48, 0x0, &x72);
- { uint32_t x75; uint8_t x76 = _subborrow_u32(x73, x51, 0x1, &x75);
- { uint32_t x78; uint8_t x79 = _subborrow_u32(x76, x54, 0xffffffff, &x78);
- { uint32_t _; uint8_t x82 = _subborrow_u32(x79, x55, 0x0, &_);
- { uint32_t x83 = cmovznz32(x82, x78, x54);
- { uint32_t x84 = cmovznz32(x82, x75, x51);
- { uint32_t x85 = cmovznz32(x82, x72, x48);
- { uint32_t x86 = cmovznz32(x82, x69, x45);
- { uint32_t x87 = cmovznz32(x82, x66, x42);
- { uint32_t x88 = cmovznz32(x82, x63, x39);
- { uint32_t x89 = cmovznz32(x82, x60, x36);
- { uint32_t x90 = cmovznz32(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/feadd.v b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/feadd.v
deleted file mode 100644
index 6df357075..000000000
--- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m2e224p2e192p2e96m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/feaddDisplay.log b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/feaddDisplay.log
deleted file mode 100644
index 6ce2399b9..000000000
--- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint32_t x33, uint8_t x34 = addcarryx_u32(0x0, x5, x19);
- uint32_t x36, uint8_t x37 = addcarryx_u32(x34, x7, x21);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x37, x9, x23);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x40, x11, x25);
- uint32_t x45, uint8_t x46 = addcarryx_u32(x43, x13, x27);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x46, x15, x29);
- uint32_t x51, uint8_t x52 = addcarryx_u32(x49, x17, x31);
- uint32_t x54, uint8_t x55 = addcarryx_u32(x52, x16, x30);
- uint32_t x57, uint8_t x58 = subborrow_u32(0x0, x33, 0xffffffff);
- uint32_t x60, uint8_t x61 = subborrow_u32(x58, x36, 0xffffffff);
- uint32_t x63, uint8_t x64 = subborrow_u32(x61, x39, 0xffffffff);
- uint32_t x66, uint8_t x67 = subborrow_u32(x64, x42, 0x0);
- uint32_t x69, uint8_t x70 = subborrow_u32(x67, x45, 0x0);
- uint32_t x72, uint8_t x73 = subborrow_u32(x70, x48, 0x0);
- uint32_t x75, uint8_t x76 = subborrow_u32(x73, x51, 0x1);
- uint32_t x78, uint8_t x79 = subborrow_u32(x76, x54, 0xffffffff);
- uint32_t _, uint8_t x82 = subborrow_u32(x79, x55, 0x0);
- uint32_t x83 = cmovznz32(x82, x78, x54);
- uint32_t x84 = cmovznz32(x82, x75, x51);
- uint32_t x85 = cmovznz32(x82, x72, x48);
- uint32_t x86 = cmovznz32(x82, x69, x45);
- uint32_t x87 = cmovznz32(x82, x66, x42);
- uint32_t x88 = cmovznz32(x82, x63, x39);
- uint32_t x89 = cmovznz32(x82, x60, x36);
- uint32_t x90 = cmovznz32(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/feaddDisplay.v b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/feaddDisplay.v
deleted file mode 100644
index 05abfc4b8..000000000
--- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m2e224p2e192p2e96m1_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/femul.c b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/femul.c
deleted file mode 100644
index c9e60baf3..000000000
--- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/femul.c
+++ /dev/null
@@ -1,379 +0,0 @@
-static void femul(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint32_t x34; uint32_t x33 = _mulx_u32(x5, x19, &x34);
- { uint32_t x37; uint32_t x36 = _mulx_u32(x5, x21, &x37);
- { uint32_t x40; uint32_t x39 = _mulx_u32(x5, x23, &x40);
- { uint32_t x43; uint32_t x42 = _mulx_u32(x5, x25, &x43);
- { uint32_t x46; uint32_t x45 = _mulx_u32(x5, x27, &x46);
- { uint32_t x49; uint32_t x48 = _mulx_u32(x5, x29, &x49);
- { uint32_t x52; uint32_t x51 = _mulx_u32(x5, x31, &x52);
- { uint32_t x55; uint32_t x54 = _mulx_u32(x5, x30, &x55);
- { uint32_t x57; uint8_t x58 = _addcarryx_u32(0x0, x34, x36, &x57);
- { uint32_t x60; uint8_t x61 = _addcarryx_u32(x58, x37, x39, &x60);
- { uint32_t x63; uint8_t x64 = _addcarryx_u32(x61, x40, x42, &x63);
- { uint32_t x66; uint8_t x67 = _addcarryx_u32(x64, x43, x45, &x66);
- { uint32_t x69; uint8_t x70 = _addcarryx_u32(x67, x46, x48, &x69);
- { uint32_t x72; uint8_t x73 = _addcarryx_u32(x70, x49, x51, &x72);
- { uint32_t x75; uint8_t x76 = _addcarryx_u32(x73, x52, x54, &x75);
- { uint32_t x78; uint8_t _ = _addcarryx_u32(0x0, x76, x55, &x78);
- { uint32_t x82; uint32_t x81 = _mulx_u32(x33, 0xffffffff, &x82);
- { uint32_t x85; uint32_t x84 = _mulx_u32(x33, 0xffffffff, &x85);
- { uint32_t x88; uint32_t x87 = _mulx_u32(x33, 0xffffffff, &x88);
- { uint32_t x91; uint32_t x90 = _mulx_u32(x33, 0xffffffff, &x91);
- { uint32_t x93; uint8_t x94 = _addcarryx_u32(0x0, x82, x84, &x93);
- { uint32_t x96; uint8_t x97 = _addcarryx_u32(x94, x85, x87, &x96);
- { uint32_t x99; uint8_t x100 = _addcarryx_u32(x97, x88, 0x0, &x99);
- { uint8_t x101 = (0x0 + 0x0);
- { uint32_t _; uint8_t x104 = _addcarryx_u32(0x0, x33, x81, &_);
- { uint32_t x106; uint8_t x107 = _addcarryx_u32(x104, x57, x93, &x106);
- { uint32_t x109; uint8_t x110 = _addcarryx_u32(x107, x60, x96, &x109);
- { uint32_t x112; uint8_t x113 = _addcarryx_u32(x110, x63, x99, &x112);
- { uint32_t x115; uint8_t x116 = _addcarryx_u32(x113, x66, x100, &x115);
- { uint32_t x118; uint8_t x119 = _addcarryx_u32(x116, x69, x101, &x118);
- { uint32_t x121; uint8_t x122 = _addcarryx_u32(x119, x72, x33, &x121);
- { uint32_t x124; uint8_t x125 = _addcarryx_u32(x122, x75, x90, &x124);
- { uint32_t x127; uint8_t x128 = _addcarryx_u32(x125, x78, x91, &x127);
- { uint8_t x129 = (x128 + 0x0);
- { uint32_t x132; uint32_t x131 = _mulx_u32(x7, x19, &x132);
- { uint32_t x135; uint32_t x134 = _mulx_u32(x7, x21, &x135);
- { uint32_t x138; uint32_t x137 = _mulx_u32(x7, x23, &x138);
- { uint32_t x141; uint32_t x140 = _mulx_u32(x7, x25, &x141);
- { uint32_t x144; uint32_t x143 = _mulx_u32(x7, x27, &x144);
- { uint32_t x147; uint32_t x146 = _mulx_u32(x7, x29, &x147);
- { uint32_t x150; uint32_t x149 = _mulx_u32(x7, x31, &x150);
- { uint32_t x153; uint32_t x152 = _mulx_u32(x7, x30, &x153);
- { uint32_t x155; uint8_t x156 = _addcarryx_u32(0x0, x132, x134, &x155);
- { uint32_t x158; uint8_t x159 = _addcarryx_u32(x156, x135, x137, &x158);
- { uint32_t x161; uint8_t x162 = _addcarryx_u32(x159, x138, x140, &x161);
- { uint32_t x164; uint8_t x165 = _addcarryx_u32(x162, x141, x143, &x164);
- { uint32_t x167; uint8_t x168 = _addcarryx_u32(x165, x144, x146, &x167);
- { uint32_t x170; uint8_t x171 = _addcarryx_u32(x168, x147, x149, &x170);
- { uint32_t x173; uint8_t x174 = _addcarryx_u32(x171, x150, x152, &x173);
- { uint32_t x176; uint8_t _ = _addcarryx_u32(0x0, x174, x153, &x176);
- { uint32_t x179; uint8_t x180 = _addcarryx_u32(0x0, x106, x131, &x179);
- { uint32_t x182; uint8_t x183 = _addcarryx_u32(x180, x109, x155, &x182);
- { uint32_t x185; uint8_t x186 = _addcarryx_u32(x183, x112, x158, &x185);
- { uint32_t x188; uint8_t x189 = _addcarryx_u32(x186, x115, x161, &x188);
- { uint32_t x191; uint8_t x192 = _addcarryx_u32(x189, x118, x164, &x191);
- { uint32_t x194; uint8_t x195 = _addcarryx_u32(x192, x121, x167, &x194);
- { uint32_t x197; uint8_t x198 = _addcarryx_u32(x195, x124, x170, &x197);
- { uint32_t x200; uint8_t x201 = _addcarryx_u32(x198, x127, x173, &x200);
- { uint32_t x203; uint8_t x204 = _addcarryx_u32(x201, x129, x176, &x203);
- { uint32_t x207; uint32_t x206 = _mulx_u32(x179, 0xffffffff, &x207);
- { uint32_t x210; uint32_t x209 = _mulx_u32(x179, 0xffffffff, &x210);
- { uint32_t x213; uint32_t x212 = _mulx_u32(x179, 0xffffffff, &x213);
- { uint32_t x216; uint32_t x215 = _mulx_u32(x179, 0xffffffff, &x216);
- { uint32_t x218; uint8_t x219 = _addcarryx_u32(0x0, x207, x209, &x218);
- { uint32_t x221; uint8_t x222 = _addcarryx_u32(x219, x210, x212, &x221);
- { uint32_t x224; uint8_t x225 = _addcarryx_u32(x222, x213, 0x0, &x224);
- { uint8_t x226 = (0x0 + 0x0);
- { uint32_t _; uint8_t x229 = _addcarryx_u32(0x0, x179, x206, &_);
- { uint32_t x231; uint8_t x232 = _addcarryx_u32(x229, x182, x218, &x231);
- { uint32_t x234; uint8_t x235 = _addcarryx_u32(x232, x185, x221, &x234);
- { uint32_t x237; uint8_t x238 = _addcarryx_u32(x235, x188, x224, &x237);
- { uint32_t x240; uint8_t x241 = _addcarryx_u32(x238, x191, x225, &x240);
- { uint32_t x243; uint8_t x244 = _addcarryx_u32(x241, x194, x226, &x243);
- { uint32_t x246; uint8_t x247 = _addcarryx_u32(x244, x197, x179, &x246);
- { uint32_t x249; uint8_t x250 = _addcarryx_u32(x247, x200, x215, &x249);
- { uint32_t x252; uint8_t x253 = _addcarryx_u32(x250, x203, x216, &x252);
- { uint8_t x254 = (x253 + x204);
- { uint32_t x257; uint32_t x256 = _mulx_u32(x9, x19, &x257);
- { uint32_t x260; uint32_t x259 = _mulx_u32(x9, x21, &x260);
- { uint32_t x263; uint32_t x262 = _mulx_u32(x9, x23, &x263);
- { uint32_t x266; uint32_t x265 = _mulx_u32(x9, x25, &x266);
- { uint32_t x269; uint32_t x268 = _mulx_u32(x9, x27, &x269);
- { uint32_t x272; uint32_t x271 = _mulx_u32(x9, x29, &x272);
- { uint32_t x275; uint32_t x274 = _mulx_u32(x9, x31, &x275);
- { uint32_t x278; uint32_t x277 = _mulx_u32(x9, x30, &x278);
- { uint32_t x280; uint8_t x281 = _addcarryx_u32(0x0, x257, x259, &x280);
- { uint32_t x283; uint8_t x284 = _addcarryx_u32(x281, x260, x262, &x283);
- { uint32_t x286; uint8_t x287 = _addcarryx_u32(x284, x263, x265, &x286);
- { uint32_t x289; uint8_t x290 = _addcarryx_u32(x287, x266, x268, &x289);
- { uint32_t x292; uint8_t x293 = _addcarryx_u32(x290, x269, x271, &x292);
- { uint32_t x295; uint8_t x296 = _addcarryx_u32(x293, x272, x274, &x295);
- { uint32_t x298; uint8_t x299 = _addcarryx_u32(x296, x275, x277, &x298);
- { uint32_t x301; uint8_t _ = _addcarryx_u32(0x0, x299, x278, &x301);
- { uint32_t x304; uint8_t x305 = _addcarryx_u32(0x0, x231, x256, &x304);
- { uint32_t x307; uint8_t x308 = _addcarryx_u32(x305, x234, x280, &x307);
- { uint32_t x310; uint8_t x311 = _addcarryx_u32(x308, x237, x283, &x310);
- { uint32_t x313; uint8_t x314 = _addcarryx_u32(x311, x240, x286, &x313);
- { uint32_t x316; uint8_t x317 = _addcarryx_u32(x314, x243, x289, &x316);
- { uint32_t x319; uint8_t x320 = _addcarryx_u32(x317, x246, x292, &x319);
- { uint32_t x322; uint8_t x323 = _addcarryx_u32(x320, x249, x295, &x322);
- { uint32_t x325; uint8_t x326 = _addcarryx_u32(x323, x252, x298, &x325);
- { uint32_t x328; uint8_t x329 = _addcarryx_u32(x326, x254, x301, &x328);
- { uint32_t x332; uint32_t x331 = _mulx_u32(x304, 0xffffffff, &x332);
- { uint32_t x335; uint32_t x334 = _mulx_u32(x304, 0xffffffff, &x335);
- { uint32_t x338; uint32_t x337 = _mulx_u32(x304, 0xffffffff, &x338);
- { uint32_t x341; uint32_t x340 = _mulx_u32(x304, 0xffffffff, &x341);
- { uint32_t x343; uint8_t x344 = _addcarryx_u32(0x0, x332, x334, &x343);
- { uint32_t x346; uint8_t x347 = _addcarryx_u32(x344, x335, x337, &x346);
- { uint32_t x349; uint8_t x350 = _addcarryx_u32(x347, x338, 0x0, &x349);
- { uint8_t x351 = (0x0 + 0x0);
- { uint32_t _; uint8_t x354 = _addcarryx_u32(0x0, x304, x331, &_);
- { uint32_t x356; uint8_t x357 = _addcarryx_u32(x354, x307, x343, &x356);
- { uint32_t x359; uint8_t x360 = _addcarryx_u32(x357, x310, x346, &x359);
- { uint32_t x362; uint8_t x363 = _addcarryx_u32(x360, x313, x349, &x362);
- { uint32_t x365; uint8_t x366 = _addcarryx_u32(x363, x316, x350, &x365);
- { uint32_t x368; uint8_t x369 = _addcarryx_u32(x366, x319, x351, &x368);
- { uint32_t x371; uint8_t x372 = _addcarryx_u32(x369, x322, x304, &x371);
- { uint32_t x374; uint8_t x375 = _addcarryx_u32(x372, x325, x340, &x374);
- { uint32_t x377; uint8_t x378 = _addcarryx_u32(x375, x328, x341, &x377);
- { uint8_t x379 = (x378 + x329);
- { uint32_t x382; uint32_t x381 = _mulx_u32(x11, x19, &x382);
- { uint32_t x385; uint32_t x384 = _mulx_u32(x11, x21, &x385);
- { uint32_t x388; uint32_t x387 = _mulx_u32(x11, x23, &x388);
- { uint32_t x391; uint32_t x390 = _mulx_u32(x11, x25, &x391);
- { uint32_t x394; uint32_t x393 = _mulx_u32(x11, x27, &x394);
- { uint32_t x397; uint32_t x396 = _mulx_u32(x11, x29, &x397);
- { uint32_t x400; uint32_t x399 = _mulx_u32(x11, x31, &x400);
- { uint32_t x403; uint32_t x402 = _mulx_u32(x11, x30, &x403);
- { uint32_t x405; uint8_t x406 = _addcarryx_u32(0x0, x382, x384, &x405);
- { uint32_t x408; uint8_t x409 = _addcarryx_u32(x406, x385, x387, &x408);
- { uint32_t x411; uint8_t x412 = _addcarryx_u32(x409, x388, x390, &x411);
- { uint32_t x414; uint8_t x415 = _addcarryx_u32(x412, x391, x393, &x414);
- { uint32_t x417; uint8_t x418 = _addcarryx_u32(x415, x394, x396, &x417);
- { uint32_t x420; uint8_t x421 = _addcarryx_u32(x418, x397, x399, &x420);
- { uint32_t x423; uint8_t x424 = _addcarryx_u32(x421, x400, x402, &x423);
- { uint32_t x426; uint8_t _ = _addcarryx_u32(0x0, x424, x403, &x426);
- { uint32_t x429; uint8_t x430 = _addcarryx_u32(0x0, x356, x381, &x429);
- { uint32_t x432; uint8_t x433 = _addcarryx_u32(x430, x359, x405, &x432);
- { uint32_t x435; uint8_t x436 = _addcarryx_u32(x433, x362, x408, &x435);
- { uint32_t x438; uint8_t x439 = _addcarryx_u32(x436, x365, x411, &x438);
- { uint32_t x441; uint8_t x442 = _addcarryx_u32(x439, x368, x414, &x441);
- { uint32_t x444; uint8_t x445 = _addcarryx_u32(x442, x371, x417, &x444);
- { uint32_t x447; uint8_t x448 = _addcarryx_u32(x445, x374, x420, &x447);
- { uint32_t x450; uint8_t x451 = _addcarryx_u32(x448, x377, x423, &x450);
- { uint32_t x453; uint8_t x454 = _addcarryx_u32(x451, x379, x426, &x453);
- { uint32_t x457; uint32_t x456 = _mulx_u32(x429, 0xffffffff, &x457);
- { uint32_t x460; uint32_t x459 = _mulx_u32(x429, 0xffffffff, &x460);
- { uint32_t x463; uint32_t x462 = _mulx_u32(x429, 0xffffffff, &x463);
- { uint32_t x466; uint32_t x465 = _mulx_u32(x429, 0xffffffff, &x466);
- { uint32_t x468; uint8_t x469 = _addcarryx_u32(0x0, x457, x459, &x468);
- { uint32_t x471; uint8_t x472 = _addcarryx_u32(x469, x460, x462, &x471);
- { uint32_t x474; uint8_t x475 = _addcarryx_u32(x472, x463, 0x0, &x474);
- { uint8_t x476 = (0x0 + 0x0);
- { uint32_t _; uint8_t x479 = _addcarryx_u32(0x0, x429, x456, &_);
- { uint32_t x481; uint8_t x482 = _addcarryx_u32(x479, x432, x468, &x481);
- { uint32_t x484; uint8_t x485 = _addcarryx_u32(x482, x435, x471, &x484);
- { uint32_t x487; uint8_t x488 = _addcarryx_u32(x485, x438, x474, &x487);
- { uint32_t x490; uint8_t x491 = _addcarryx_u32(x488, x441, x475, &x490);
- { uint32_t x493; uint8_t x494 = _addcarryx_u32(x491, x444, x476, &x493);
- { uint32_t x496; uint8_t x497 = _addcarryx_u32(x494, x447, x429, &x496);
- { uint32_t x499; uint8_t x500 = _addcarryx_u32(x497, x450, x465, &x499);
- { uint32_t x502; uint8_t x503 = _addcarryx_u32(x500, x453, x466, &x502);
- { uint8_t x504 = (x503 + x454);
- { uint32_t x507; uint32_t x506 = _mulx_u32(x13, x19, &x507);
- { uint32_t x510; uint32_t x509 = _mulx_u32(x13, x21, &x510);
- { uint32_t x513; uint32_t x512 = _mulx_u32(x13, x23, &x513);
- { uint32_t x516; uint32_t x515 = _mulx_u32(x13, x25, &x516);
- { uint32_t x519; uint32_t x518 = _mulx_u32(x13, x27, &x519);
- { uint32_t x522; uint32_t x521 = _mulx_u32(x13, x29, &x522);
- { uint32_t x525; uint32_t x524 = _mulx_u32(x13, x31, &x525);
- { uint32_t x528; uint32_t x527 = _mulx_u32(x13, x30, &x528);
- { uint32_t x530; uint8_t x531 = _addcarryx_u32(0x0, x507, x509, &x530);
- { uint32_t x533; uint8_t x534 = _addcarryx_u32(x531, x510, x512, &x533);
- { uint32_t x536; uint8_t x537 = _addcarryx_u32(x534, x513, x515, &x536);
- { uint32_t x539; uint8_t x540 = _addcarryx_u32(x537, x516, x518, &x539);
- { uint32_t x542; uint8_t x543 = _addcarryx_u32(x540, x519, x521, &x542);
- { uint32_t x545; uint8_t x546 = _addcarryx_u32(x543, x522, x524, &x545);
- { uint32_t x548; uint8_t x549 = _addcarryx_u32(x546, x525, x527, &x548);
- { uint32_t x551; uint8_t _ = _addcarryx_u32(0x0, x549, x528, &x551);
- { uint32_t x554; uint8_t x555 = _addcarryx_u32(0x0, x481, x506, &x554);
- { uint32_t x557; uint8_t x558 = _addcarryx_u32(x555, x484, x530, &x557);
- { uint32_t x560; uint8_t x561 = _addcarryx_u32(x558, x487, x533, &x560);
- { uint32_t x563; uint8_t x564 = _addcarryx_u32(x561, x490, x536, &x563);
- { uint32_t x566; uint8_t x567 = _addcarryx_u32(x564, x493, x539, &x566);
- { uint32_t x569; uint8_t x570 = _addcarryx_u32(x567, x496, x542, &x569);
- { uint32_t x572; uint8_t x573 = _addcarryx_u32(x570, x499, x545, &x572);
- { uint32_t x575; uint8_t x576 = _addcarryx_u32(x573, x502, x548, &x575);
- { uint32_t x578; uint8_t x579 = _addcarryx_u32(x576, x504, x551, &x578);
- { uint32_t x582; uint32_t x581 = _mulx_u32(x554, 0xffffffff, &x582);
- { uint32_t x585; uint32_t x584 = _mulx_u32(x554, 0xffffffff, &x585);
- { uint32_t x588; uint32_t x587 = _mulx_u32(x554, 0xffffffff, &x588);
- { uint32_t x591; uint32_t x590 = _mulx_u32(x554, 0xffffffff, &x591);
- { uint32_t x593; uint8_t x594 = _addcarryx_u32(0x0, x582, x584, &x593);
- { uint32_t x596; uint8_t x597 = _addcarryx_u32(x594, x585, x587, &x596);
- { uint32_t x599; uint8_t x600 = _addcarryx_u32(x597, x588, 0x0, &x599);
- { uint8_t x601 = (0x0 + 0x0);
- { uint32_t _; uint8_t x604 = _addcarryx_u32(0x0, x554, x581, &_);
- { uint32_t x606; uint8_t x607 = _addcarryx_u32(x604, x557, x593, &x606);
- { uint32_t x609; uint8_t x610 = _addcarryx_u32(x607, x560, x596, &x609);
- { uint32_t x612; uint8_t x613 = _addcarryx_u32(x610, x563, x599, &x612);
- { uint32_t x615; uint8_t x616 = _addcarryx_u32(x613, x566, x600, &x615);
- { uint32_t x618; uint8_t x619 = _addcarryx_u32(x616, x569, x601, &x618);
- { uint32_t x621; uint8_t x622 = _addcarryx_u32(x619, x572, x554, &x621);
- { uint32_t x624; uint8_t x625 = _addcarryx_u32(x622, x575, x590, &x624);
- { uint32_t x627; uint8_t x628 = _addcarryx_u32(x625, x578, x591, &x627);
- { uint8_t x629 = (x628 + x579);
- { uint32_t x632; uint32_t x631 = _mulx_u32(x15, x19, &x632);
- { uint32_t x635; uint32_t x634 = _mulx_u32(x15, x21, &x635);
- { uint32_t x638; uint32_t x637 = _mulx_u32(x15, x23, &x638);
- { uint32_t x641; uint32_t x640 = _mulx_u32(x15, x25, &x641);
- { uint32_t x644; uint32_t x643 = _mulx_u32(x15, x27, &x644);
- { uint32_t x647; uint32_t x646 = _mulx_u32(x15, x29, &x647);
- { uint32_t x650; uint32_t x649 = _mulx_u32(x15, x31, &x650);
- { uint32_t x653; uint32_t x652 = _mulx_u32(x15, x30, &x653);
- { uint32_t x655; uint8_t x656 = _addcarryx_u32(0x0, x632, x634, &x655);
- { uint32_t x658; uint8_t x659 = _addcarryx_u32(x656, x635, x637, &x658);
- { uint32_t x661; uint8_t x662 = _addcarryx_u32(x659, x638, x640, &x661);
- { uint32_t x664; uint8_t x665 = _addcarryx_u32(x662, x641, x643, &x664);
- { uint32_t x667; uint8_t x668 = _addcarryx_u32(x665, x644, x646, &x667);
- { uint32_t x670; uint8_t x671 = _addcarryx_u32(x668, x647, x649, &x670);
- { uint32_t x673; uint8_t x674 = _addcarryx_u32(x671, x650, x652, &x673);
- { uint32_t x676; uint8_t _ = _addcarryx_u32(0x0, x674, x653, &x676);
- { uint32_t x679; uint8_t x680 = _addcarryx_u32(0x0, x606, x631, &x679);
- { uint32_t x682; uint8_t x683 = _addcarryx_u32(x680, x609, x655, &x682);
- { uint32_t x685; uint8_t x686 = _addcarryx_u32(x683, x612, x658, &x685);
- { uint32_t x688; uint8_t x689 = _addcarryx_u32(x686, x615, x661, &x688);
- { uint32_t x691; uint8_t x692 = _addcarryx_u32(x689, x618, x664, &x691);
- { uint32_t x694; uint8_t x695 = _addcarryx_u32(x692, x621, x667, &x694);
- { uint32_t x697; uint8_t x698 = _addcarryx_u32(x695, x624, x670, &x697);
- { uint32_t x700; uint8_t x701 = _addcarryx_u32(x698, x627, x673, &x700);
- { uint32_t x703; uint8_t x704 = _addcarryx_u32(x701, x629, x676, &x703);
- { uint32_t x707; uint32_t x706 = _mulx_u32(x679, 0xffffffff, &x707);
- { uint32_t x710; uint32_t x709 = _mulx_u32(x679, 0xffffffff, &x710);
- { uint32_t x713; uint32_t x712 = _mulx_u32(x679, 0xffffffff, &x713);
- { uint32_t x716; uint32_t x715 = _mulx_u32(x679, 0xffffffff, &x716);
- { uint32_t x718; uint8_t x719 = _addcarryx_u32(0x0, x707, x709, &x718);
- { uint32_t x721; uint8_t x722 = _addcarryx_u32(x719, x710, x712, &x721);
- { uint32_t x724; uint8_t x725 = _addcarryx_u32(x722, x713, 0x0, &x724);
- { uint8_t x726 = (0x0 + 0x0);
- { uint32_t _; uint8_t x729 = _addcarryx_u32(0x0, x679, x706, &_);
- { uint32_t x731; uint8_t x732 = _addcarryx_u32(x729, x682, x718, &x731);
- { uint32_t x734; uint8_t x735 = _addcarryx_u32(x732, x685, x721, &x734);
- { uint32_t x737; uint8_t x738 = _addcarryx_u32(x735, x688, x724, &x737);
- { uint32_t x740; uint8_t x741 = _addcarryx_u32(x738, x691, x725, &x740);
- { uint32_t x743; uint8_t x744 = _addcarryx_u32(x741, x694, x726, &x743);
- { uint32_t x746; uint8_t x747 = _addcarryx_u32(x744, x697, x679, &x746);
- { uint32_t x749; uint8_t x750 = _addcarryx_u32(x747, x700, x715, &x749);
- { uint32_t x752; uint8_t x753 = _addcarryx_u32(x750, x703, x716, &x752);
- { uint8_t x754 = (x753 + x704);
- { uint32_t x757; uint32_t x756 = _mulx_u32(x17, x19, &x757);
- { uint32_t x760; uint32_t x759 = _mulx_u32(x17, x21, &x760);
- { uint32_t x763; uint32_t x762 = _mulx_u32(x17, x23, &x763);
- { uint32_t x766; uint32_t x765 = _mulx_u32(x17, x25, &x766);
- { uint32_t x769; uint32_t x768 = _mulx_u32(x17, x27, &x769);
- { uint32_t x772; uint32_t x771 = _mulx_u32(x17, x29, &x772);
- { uint32_t x775; uint32_t x774 = _mulx_u32(x17, x31, &x775);
- { uint32_t x778; uint32_t x777 = _mulx_u32(x17, x30, &x778);
- { uint32_t x780; uint8_t x781 = _addcarryx_u32(0x0, x757, x759, &x780);
- { uint32_t x783; uint8_t x784 = _addcarryx_u32(x781, x760, x762, &x783);
- { uint32_t x786; uint8_t x787 = _addcarryx_u32(x784, x763, x765, &x786);
- { uint32_t x789; uint8_t x790 = _addcarryx_u32(x787, x766, x768, &x789);
- { uint32_t x792; uint8_t x793 = _addcarryx_u32(x790, x769, x771, &x792);
- { uint32_t x795; uint8_t x796 = _addcarryx_u32(x793, x772, x774, &x795);
- { uint32_t x798; uint8_t x799 = _addcarryx_u32(x796, x775, x777, &x798);
- { uint32_t x801; uint8_t _ = _addcarryx_u32(0x0, x799, x778, &x801);
- { uint32_t x804; uint8_t x805 = _addcarryx_u32(0x0, x731, x756, &x804);
- { uint32_t x807; uint8_t x808 = _addcarryx_u32(x805, x734, x780, &x807);
- { uint32_t x810; uint8_t x811 = _addcarryx_u32(x808, x737, x783, &x810);
- { uint32_t x813; uint8_t x814 = _addcarryx_u32(x811, x740, x786, &x813);
- { uint32_t x816; uint8_t x817 = _addcarryx_u32(x814, x743, x789, &x816);
- { uint32_t x819; uint8_t x820 = _addcarryx_u32(x817, x746, x792, &x819);
- { uint32_t x822; uint8_t x823 = _addcarryx_u32(x820, x749, x795, &x822);
- { uint32_t x825; uint8_t x826 = _addcarryx_u32(x823, x752, x798, &x825);
- { uint32_t x828; uint8_t x829 = _addcarryx_u32(x826, x754, x801, &x828);
- { uint32_t x832; uint32_t x831 = _mulx_u32(x804, 0xffffffff, &x832);
- { uint32_t x835; uint32_t x834 = _mulx_u32(x804, 0xffffffff, &x835);
- { uint32_t x838; uint32_t x837 = _mulx_u32(x804, 0xffffffff, &x838);
- { uint32_t x841; uint32_t x840 = _mulx_u32(x804, 0xffffffff, &x841);
- { uint32_t x843; uint8_t x844 = _addcarryx_u32(0x0, x832, x834, &x843);
- { uint32_t x846; uint8_t x847 = _addcarryx_u32(x844, x835, x837, &x846);
- { uint32_t x849; uint8_t x850 = _addcarryx_u32(x847, x838, 0x0, &x849);
- { uint8_t x851 = (0x0 + 0x0);
- { uint32_t _; uint8_t x854 = _addcarryx_u32(0x0, x804, x831, &_);
- { uint32_t x856; uint8_t x857 = _addcarryx_u32(x854, x807, x843, &x856);
- { uint32_t x859; uint8_t x860 = _addcarryx_u32(x857, x810, x846, &x859);
- { uint32_t x862; uint8_t x863 = _addcarryx_u32(x860, x813, x849, &x862);
- { uint32_t x865; uint8_t x866 = _addcarryx_u32(x863, x816, x850, &x865);
- { uint32_t x868; uint8_t x869 = _addcarryx_u32(x866, x819, x851, &x868);
- { uint32_t x871; uint8_t x872 = _addcarryx_u32(x869, x822, x804, &x871);
- { uint32_t x874; uint8_t x875 = _addcarryx_u32(x872, x825, x840, &x874);
- { uint32_t x877; uint8_t x878 = _addcarryx_u32(x875, x828, x841, &x877);
- { uint8_t x879 = (x878 + x829);
- { uint32_t x882; uint32_t x881 = _mulx_u32(x16, x19, &x882);
- { uint32_t x885; uint32_t x884 = _mulx_u32(x16, x21, &x885);
- { uint32_t x888; uint32_t x887 = _mulx_u32(x16, x23, &x888);
- { uint32_t x891; uint32_t x890 = _mulx_u32(x16, x25, &x891);
- { uint32_t x894; uint32_t x893 = _mulx_u32(x16, x27, &x894);
- { uint32_t x897; uint32_t x896 = _mulx_u32(x16, x29, &x897);
- { uint32_t x900; uint32_t x899 = _mulx_u32(x16, x31, &x900);
- { uint32_t x903; uint32_t x902 = _mulx_u32(x16, x30, &x903);
- { uint32_t x905; uint8_t x906 = _addcarryx_u32(0x0, x882, x884, &x905);
- { uint32_t x908; uint8_t x909 = _addcarryx_u32(x906, x885, x887, &x908);
- { uint32_t x911; uint8_t x912 = _addcarryx_u32(x909, x888, x890, &x911);
- { uint32_t x914; uint8_t x915 = _addcarryx_u32(x912, x891, x893, &x914);
- { uint32_t x917; uint8_t x918 = _addcarryx_u32(x915, x894, x896, &x917);
- { uint32_t x920; uint8_t x921 = _addcarryx_u32(x918, x897, x899, &x920);
- { uint32_t x923; uint8_t x924 = _addcarryx_u32(x921, x900, x902, &x923);
- { uint32_t x926; uint8_t _ = _addcarryx_u32(0x0, x924, x903, &x926);
- { uint32_t x929; uint8_t x930 = _addcarryx_u32(0x0, x856, x881, &x929);
- { uint32_t x932; uint8_t x933 = _addcarryx_u32(x930, x859, x905, &x932);
- { uint32_t x935; uint8_t x936 = _addcarryx_u32(x933, x862, x908, &x935);
- { uint32_t x938; uint8_t x939 = _addcarryx_u32(x936, x865, x911, &x938);
- { uint32_t x941; uint8_t x942 = _addcarryx_u32(x939, x868, x914, &x941);
- { uint32_t x944; uint8_t x945 = _addcarryx_u32(x942, x871, x917, &x944);
- { uint32_t x947; uint8_t x948 = _addcarryx_u32(x945, x874, x920, &x947);
- { uint32_t x950; uint8_t x951 = _addcarryx_u32(x948, x877, x923, &x950);
- { uint32_t x953; uint8_t x954 = _addcarryx_u32(x951, x879, x926, &x953);
- { uint32_t x957; uint32_t x956 = _mulx_u32(x929, 0xffffffff, &x957);
- { uint32_t x960; uint32_t x959 = _mulx_u32(x929, 0xffffffff, &x960);
- { uint32_t x963; uint32_t x962 = _mulx_u32(x929, 0xffffffff, &x963);
- { uint32_t x966; uint32_t x965 = _mulx_u32(x929, 0xffffffff, &x966);
- { uint32_t x968; uint8_t x969 = _addcarryx_u32(0x0, x957, x959, &x968);
- { uint32_t x971; uint8_t x972 = _addcarryx_u32(x969, x960, x962, &x971);
- { uint32_t x974; uint8_t x975 = _addcarryx_u32(x972, x963, 0x0, &x974);
- { uint8_t x976 = (0x0 + 0x0);
- { uint32_t _; uint8_t x979 = _addcarryx_u32(0x0, x929, x956, &_);
- { uint32_t x981; uint8_t x982 = _addcarryx_u32(x979, x932, x968, &x981);
- { uint32_t x984; uint8_t x985 = _addcarryx_u32(x982, x935, x971, &x984);
- { uint32_t x987; uint8_t x988 = _addcarryx_u32(x985, x938, x974, &x987);
- { uint32_t x990; uint8_t x991 = _addcarryx_u32(x988, x941, x975, &x990);
- { uint32_t x993; uint8_t x994 = _addcarryx_u32(x991, x944, x976, &x993);
- { uint32_t x996; uint8_t x997 = _addcarryx_u32(x994, x947, x929, &x996);
- { uint32_t x999; uint8_t x1000 = _addcarryx_u32(x997, x950, x965, &x999);
- { uint32_t x1002; uint8_t x1003 = _addcarryx_u32(x1000, x953, x966, &x1002);
- { uint8_t x1004 = (x1003 + x954);
- { uint32_t x1006; uint8_t x1007 = _subborrow_u32(0x0, x981, 0xffffffff, &x1006);
- { uint32_t x1009; uint8_t x1010 = _subborrow_u32(x1007, x984, 0xffffffff, &x1009);
- { uint32_t x1012; uint8_t x1013 = _subborrow_u32(x1010, x987, 0xffffffff, &x1012);
- { uint32_t x1015; uint8_t x1016 = _subborrow_u32(x1013, x990, 0x0, &x1015);
- { uint32_t x1018; uint8_t x1019 = _subborrow_u32(x1016, x993, 0x0, &x1018);
- { uint32_t x1021; uint8_t x1022 = _subborrow_u32(x1019, x996, 0x0, &x1021);
- { uint32_t x1024; uint8_t x1025 = _subborrow_u32(x1022, x999, 0x1, &x1024);
- { uint32_t x1027; uint8_t x1028 = _subborrow_u32(x1025, x1002, 0xffffffff, &x1027);
- { uint32_t _; uint8_t x1031 = _subborrow_u32(x1028, x1004, 0x0, &_);
- { uint32_t x1032 = cmovznz32(x1031, x1027, x1002);
- { uint32_t x1033 = cmovznz32(x1031, x1024, x999);
- { uint32_t x1034 = cmovznz32(x1031, x1021, x996);
- { uint32_t x1035 = cmovznz32(x1031, x1018, x993);
- { uint32_t x1036 = cmovznz32(x1031, x1015, x990);
- { uint32_t x1037 = cmovznz32(x1031, x1012, x987);
- { uint32_t x1038 = cmovznz32(x1031, x1009, x984);
- { uint32_t x1039 = cmovznz32(x1031, x1006, x981);
- out[0] = x1039;
- out[1] = x1038;
- out[2] = x1037;
- out[3] = x1036;
- out[4] = x1035;
- out[5] = x1034;
- out[6] = x1033;
- out[7] = x1032;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/femul.v b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/femul.v
deleted file mode 100644
index 284b2cc23..000000000
--- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m2e224p2e192p2e96m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/femulDisplay.log b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/femulDisplay.log
deleted file mode 100644
index c7c748f7f..000000000
--- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,359 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint32_t x33, uint32_t x34 = mulx_u32(x5, x19);
- uint32_t x36, uint32_t x37 = mulx_u32(x5, x21);
- uint32_t x39, uint32_t x40 = mulx_u32(x5, x23);
- uint32_t x42, uint32_t x43 = mulx_u32(x5, x25);
- uint32_t x45, uint32_t x46 = mulx_u32(x5, x27);
- uint32_t x48, uint32_t x49 = mulx_u32(x5, x29);
- uint32_t x51, uint32_t x52 = mulx_u32(x5, x31);
- uint32_t x54, uint32_t x55 = mulx_u32(x5, x30);
- uint32_t x57, uint8_t x58 = addcarryx_u32(0x0, x34, x36);
- uint32_t x60, uint8_t x61 = addcarryx_u32(x58, x37, x39);
- uint32_t x63, uint8_t x64 = addcarryx_u32(x61, x40, x42);
- uint32_t x66, uint8_t x67 = addcarryx_u32(x64, x43, x45);
- uint32_t x69, uint8_t x70 = addcarryx_u32(x67, x46, x48);
- uint32_t x72, uint8_t x73 = addcarryx_u32(x70, x49, x51);
- uint32_t x75, uint8_t x76 = addcarryx_u32(x73, x52, x54);
- uint32_t x78, uint8_t _ = addcarryx_u32(0x0, x76, x55);
- uint32_t x81, uint32_t x82 = mulx_u32(x33, 0xffffffff);
- uint32_t x84, uint32_t x85 = mulx_u32(x33, 0xffffffff);
- uint32_t x87, uint32_t x88 = mulx_u32(x33, 0xffffffff);
- uint32_t x90, uint32_t x91 = mulx_u32(x33, 0xffffffff);
- uint32_t x93, uint8_t x94 = addcarryx_u32(0x0, x82, x84);
- uint32_t x96, uint8_t x97 = addcarryx_u32(x94, x85, x87);
- uint32_t x99, uint8_t x100 = addcarryx_u32(x97, x88, 0x0);
- uint8_t x101 = (0x0 + 0x0);
- uint32_t _, uint8_t x104 = addcarryx_u32(0x0, x33, x81);
- uint32_t x106, uint8_t x107 = addcarryx_u32(x104, x57, x93);
- uint32_t x109, uint8_t x110 = addcarryx_u32(x107, x60, x96);
- uint32_t x112, uint8_t x113 = addcarryx_u32(x110, x63, x99);
- uint32_t x115, uint8_t x116 = addcarryx_u32(x113, x66, x100);
- uint32_t x118, uint8_t x119 = addcarryx_u32(x116, x69, x101);
- uint32_t x121, uint8_t x122 = addcarryx_u32(x119, x72, x33);
- uint32_t x124, uint8_t x125 = addcarryx_u32(x122, x75, x90);
- uint32_t x127, uint8_t x128 = addcarryx_u32(x125, x78, x91);
- uint8_t x129 = (x128 + 0x0);
- uint32_t x131, uint32_t x132 = mulx_u32(x7, x19);
- uint32_t x134, uint32_t x135 = mulx_u32(x7, x21);
- uint32_t x137, uint32_t x138 = mulx_u32(x7, x23);
- uint32_t x140, uint32_t x141 = mulx_u32(x7, x25);
- uint32_t x143, uint32_t x144 = mulx_u32(x7, x27);
- uint32_t x146, uint32_t x147 = mulx_u32(x7, x29);
- uint32_t x149, uint32_t x150 = mulx_u32(x7, x31);
- uint32_t x152, uint32_t x153 = mulx_u32(x7, x30);
- uint32_t x155, uint8_t x156 = addcarryx_u32(0x0, x132, x134);
- uint32_t x158, uint8_t x159 = addcarryx_u32(x156, x135, x137);
- uint32_t x161, uint8_t x162 = addcarryx_u32(x159, x138, x140);
- uint32_t x164, uint8_t x165 = addcarryx_u32(x162, x141, x143);
- uint32_t x167, uint8_t x168 = addcarryx_u32(x165, x144, x146);
- uint32_t x170, uint8_t x171 = addcarryx_u32(x168, x147, x149);
- uint32_t x173, uint8_t x174 = addcarryx_u32(x171, x150, x152);
- uint32_t x176, uint8_t _ = addcarryx_u32(0x0, x174, x153);
- uint32_t x179, uint8_t x180 = addcarryx_u32(0x0, x106, x131);
- uint32_t x182, uint8_t x183 = addcarryx_u32(x180, x109, x155);
- uint32_t x185, uint8_t x186 = addcarryx_u32(x183, x112, x158);
- uint32_t x188, uint8_t x189 = addcarryx_u32(x186, x115, x161);
- uint32_t x191, uint8_t x192 = addcarryx_u32(x189, x118, x164);
- uint32_t x194, uint8_t x195 = addcarryx_u32(x192, x121, x167);
- uint32_t x197, uint8_t x198 = addcarryx_u32(x195, x124, x170);
- uint32_t x200, uint8_t x201 = addcarryx_u32(x198, x127, x173);
- uint32_t x203, uint8_t x204 = addcarryx_u32(x201, x129, x176);
- uint32_t x206, uint32_t x207 = mulx_u32(x179, 0xffffffff);
- uint32_t x209, uint32_t x210 = mulx_u32(x179, 0xffffffff);
- uint32_t x212, uint32_t x213 = mulx_u32(x179, 0xffffffff);
- uint32_t x215, uint32_t x216 = mulx_u32(x179, 0xffffffff);
- uint32_t x218, uint8_t x219 = addcarryx_u32(0x0, x207, x209);
- uint32_t x221, uint8_t x222 = addcarryx_u32(x219, x210, x212);
- uint32_t x224, uint8_t x225 = addcarryx_u32(x222, x213, 0x0);
- uint8_t x226 = (0x0 + 0x0);
- uint32_t _, uint8_t x229 = addcarryx_u32(0x0, x179, x206);
- uint32_t x231, uint8_t x232 = addcarryx_u32(x229, x182, x218);
- uint32_t x234, uint8_t x235 = addcarryx_u32(x232, x185, x221);
- uint32_t x237, uint8_t x238 = addcarryx_u32(x235, x188, x224);
- uint32_t x240, uint8_t x241 = addcarryx_u32(x238, x191, x225);
- uint32_t x243, uint8_t x244 = addcarryx_u32(x241, x194, x226);
- uint32_t x246, uint8_t x247 = addcarryx_u32(x244, x197, x179);
- uint32_t x249, uint8_t x250 = addcarryx_u32(x247, x200, x215);
- uint32_t x252, uint8_t x253 = addcarryx_u32(x250, x203, x216);
- uint8_t x254 = (x253 + x204);
- uint32_t x256, uint32_t x257 = mulx_u32(x9, x19);
- uint32_t x259, uint32_t x260 = mulx_u32(x9, x21);
- uint32_t x262, uint32_t x263 = mulx_u32(x9, x23);
- uint32_t x265, uint32_t x266 = mulx_u32(x9, x25);
- uint32_t x268, uint32_t x269 = mulx_u32(x9, x27);
- uint32_t x271, uint32_t x272 = mulx_u32(x9, x29);
- uint32_t x274, uint32_t x275 = mulx_u32(x9, x31);
- uint32_t x277, uint32_t x278 = mulx_u32(x9, x30);
- uint32_t x280, uint8_t x281 = addcarryx_u32(0x0, x257, x259);
- uint32_t x283, uint8_t x284 = addcarryx_u32(x281, x260, x262);
- uint32_t x286, uint8_t x287 = addcarryx_u32(x284, x263, x265);
- uint32_t x289, uint8_t x290 = addcarryx_u32(x287, x266, x268);
- uint32_t x292, uint8_t x293 = addcarryx_u32(x290, x269, x271);
- uint32_t x295, uint8_t x296 = addcarryx_u32(x293, x272, x274);
- uint32_t x298, uint8_t x299 = addcarryx_u32(x296, x275, x277);
- uint32_t x301, uint8_t _ = addcarryx_u32(0x0, x299, x278);
- uint32_t x304, uint8_t x305 = addcarryx_u32(0x0, x231, x256);
- uint32_t x307, uint8_t x308 = addcarryx_u32(x305, x234, x280);
- uint32_t x310, uint8_t x311 = addcarryx_u32(x308, x237, x283);
- uint32_t x313, uint8_t x314 = addcarryx_u32(x311, x240, x286);
- uint32_t x316, uint8_t x317 = addcarryx_u32(x314, x243, x289);
- uint32_t x319, uint8_t x320 = addcarryx_u32(x317, x246, x292);
- uint32_t x322, uint8_t x323 = addcarryx_u32(x320, x249, x295);
- uint32_t x325, uint8_t x326 = addcarryx_u32(x323, x252, x298);
- uint32_t x328, uint8_t x329 = addcarryx_u32(x326, x254, x301);
- uint32_t x331, uint32_t x332 = mulx_u32(x304, 0xffffffff);
- uint32_t x334, uint32_t x335 = mulx_u32(x304, 0xffffffff);
- uint32_t x337, uint32_t x338 = mulx_u32(x304, 0xffffffff);
- uint32_t x340, uint32_t x341 = mulx_u32(x304, 0xffffffff);
- uint32_t x343, uint8_t x344 = addcarryx_u32(0x0, x332, x334);
- uint32_t x346, uint8_t x347 = addcarryx_u32(x344, x335, x337);
- uint32_t x349, uint8_t x350 = addcarryx_u32(x347, x338, 0x0);
- uint8_t x351 = (0x0 + 0x0);
- uint32_t _, uint8_t x354 = addcarryx_u32(0x0, x304, x331);
- uint32_t x356, uint8_t x357 = addcarryx_u32(x354, x307, x343);
- uint32_t x359, uint8_t x360 = addcarryx_u32(x357, x310, x346);
- uint32_t x362, uint8_t x363 = addcarryx_u32(x360, x313, x349);
- uint32_t x365, uint8_t x366 = addcarryx_u32(x363, x316, x350);
- uint32_t x368, uint8_t x369 = addcarryx_u32(x366, x319, x351);
- uint32_t x371, uint8_t x372 = addcarryx_u32(x369, x322, x304);
- uint32_t x374, uint8_t x375 = addcarryx_u32(x372, x325, x340);
- uint32_t x377, uint8_t x378 = addcarryx_u32(x375, x328, x341);
- uint8_t x379 = (x378 + x329);
- uint32_t x381, uint32_t x382 = mulx_u32(x11, x19);
- uint32_t x384, uint32_t x385 = mulx_u32(x11, x21);
- uint32_t x387, uint32_t x388 = mulx_u32(x11, x23);
- uint32_t x390, uint32_t x391 = mulx_u32(x11, x25);
- uint32_t x393, uint32_t x394 = mulx_u32(x11, x27);
- uint32_t x396, uint32_t x397 = mulx_u32(x11, x29);
- uint32_t x399, uint32_t x400 = mulx_u32(x11, x31);
- uint32_t x402, uint32_t x403 = mulx_u32(x11, x30);
- uint32_t x405, uint8_t x406 = addcarryx_u32(0x0, x382, x384);
- uint32_t x408, uint8_t x409 = addcarryx_u32(x406, x385, x387);
- uint32_t x411, uint8_t x412 = addcarryx_u32(x409, x388, x390);
- uint32_t x414, uint8_t x415 = addcarryx_u32(x412, x391, x393);
- uint32_t x417, uint8_t x418 = addcarryx_u32(x415, x394, x396);
- uint32_t x420, uint8_t x421 = addcarryx_u32(x418, x397, x399);
- uint32_t x423, uint8_t x424 = addcarryx_u32(x421, x400, x402);
- uint32_t x426, uint8_t _ = addcarryx_u32(0x0, x424, x403);
- uint32_t x429, uint8_t x430 = addcarryx_u32(0x0, x356, x381);
- uint32_t x432, uint8_t x433 = addcarryx_u32(x430, x359, x405);
- uint32_t x435, uint8_t x436 = addcarryx_u32(x433, x362, x408);
- uint32_t x438, uint8_t x439 = addcarryx_u32(x436, x365, x411);
- uint32_t x441, uint8_t x442 = addcarryx_u32(x439, x368, x414);
- uint32_t x444, uint8_t x445 = addcarryx_u32(x442, x371, x417);
- uint32_t x447, uint8_t x448 = addcarryx_u32(x445, x374, x420);
- uint32_t x450, uint8_t x451 = addcarryx_u32(x448, x377, x423);
- uint32_t x453, uint8_t x454 = addcarryx_u32(x451, x379, x426);
- uint32_t x456, uint32_t x457 = mulx_u32(x429, 0xffffffff);
- uint32_t x459, uint32_t x460 = mulx_u32(x429, 0xffffffff);
- uint32_t x462, uint32_t x463 = mulx_u32(x429, 0xffffffff);
- uint32_t x465, uint32_t x466 = mulx_u32(x429, 0xffffffff);
- uint32_t x468, uint8_t x469 = addcarryx_u32(0x0, x457, x459);
- uint32_t x471, uint8_t x472 = addcarryx_u32(x469, x460, x462);
- uint32_t x474, uint8_t x475 = addcarryx_u32(x472, x463, 0x0);
- uint8_t x476 = (0x0 + 0x0);
- uint32_t _, uint8_t x479 = addcarryx_u32(0x0, x429, x456);
- uint32_t x481, uint8_t x482 = addcarryx_u32(x479, x432, x468);
- uint32_t x484, uint8_t x485 = addcarryx_u32(x482, x435, x471);
- uint32_t x487, uint8_t x488 = addcarryx_u32(x485, x438, x474);
- uint32_t x490, uint8_t x491 = addcarryx_u32(x488, x441, x475);
- uint32_t x493, uint8_t x494 = addcarryx_u32(x491, x444, x476);
- uint32_t x496, uint8_t x497 = addcarryx_u32(x494, x447, x429);
- uint32_t x499, uint8_t x500 = addcarryx_u32(x497, x450, x465);
- uint32_t x502, uint8_t x503 = addcarryx_u32(x500, x453, x466);
- uint8_t x504 = (x503 + x454);
- uint32_t x506, uint32_t x507 = mulx_u32(x13, x19);
- uint32_t x509, uint32_t x510 = mulx_u32(x13, x21);
- uint32_t x512, uint32_t x513 = mulx_u32(x13, x23);
- uint32_t x515, uint32_t x516 = mulx_u32(x13, x25);
- uint32_t x518, uint32_t x519 = mulx_u32(x13, x27);
- uint32_t x521, uint32_t x522 = mulx_u32(x13, x29);
- uint32_t x524, uint32_t x525 = mulx_u32(x13, x31);
- uint32_t x527, uint32_t x528 = mulx_u32(x13, x30);
- uint32_t x530, uint8_t x531 = addcarryx_u32(0x0, x507, x509);
- uint32_t x533, uint8_t x534 = addcarryx_u32(x531, x510, x512);
- uint32_t x536, uint8_t x537 = addcarryx_u32(x534, x513, x515);
- uint32_t x539, uint8_t x540 = addcarryx_u32(x537, x516, x518);
- uint32_t x542, uint8_t x543 = addcarryx_u32(x540, x519, x521);
- uint32_t x545, uint8_t x546 = addcarryx_u32(x543, x522, x524);
- uint32_t x548, uint8_t x549 = addcarryx_u32(x546, x525, x527);
- uint32_t x551, uint8_t _ = addcarryx_u32(0x0, x549, x528);
- uint32_t x554, uint8_t x555 = addcarryx_u32(0x0, x481, x506);
- uint32_t x557, uint8_t x558 = addcarryx_u32(x555, x484, x530);
- uint32_t x560, uint8_t x561 = addcarryx_u32(x558, x487, x533);
- uint32_t x563, uint8_t x564 = addcarryx_u32(x561, x490, x536);
- uint32_t x566, uint8_t x567 = addcarryx_u32(x564, x493, x539);
- uint32_t x569, uint8_t x570 = addcarryx_u32(x567, x496, x542);
- uint32_t x572, uint8_t x573 = addcarryx_u32(x570, x499, x545);
- uint32_t x575, uint8_t x576 = addcarryx_u32(x573, x502, x548);
- uint32_t x578, uint8_t x579 = addcarryx_u32(x576, x504, x551);
- uint32_t x581, uint32_t x582 = mulx_u32(x554, 0xffffffff);
- uint32_t x584, uint32_t x585 = mulx_u32(x554, 0xffffffff);
- uint32_t x587, uint32_t x588 = mulx_u32(x554, 0xffffffff);
- uint32_t x590, uint32_t x591 = mulx_u32(x554, 0xffffffff);
- uint32_t x593, uint8_t x594 = addcarryx_u32(0x0, x582, x584);
- uint32_t x596, uint8_t x597 = addcarryx_u32(x594, x585, x587);
- uint32_t x599, uint8_t x600 = addcarryx_u32(x597, x588, 0x0);
- uint8_t x601 = (0x0 + 0x0);
- uint32_t _, uint8_t x604 = addcarryx_u32(0x0, x554, x581);
- uint32_t x606, uint8_t x607 = addcarryx_u32(x604, x557, x593);
- uint32_t x609, uint8_t x610 = addcarryx_u32(x607, x560, x596);
- uint32_t x612, uint8_t x613 = addcarryx_u32(x610, x563, x599);
- uint32_t x615, uint8_t x616 = addcarryx_u32(x613, x566, x600);
- uint32_t x618, uint8_t x619 = addcarryx_u32(x616, x569, x601);
- uint32_t x621, uint8_t x622 = addcarryx_u32(x619, x572, x554);
- uint32_t x624, uint8_t x625 = addcarryx_u32(x622, x575, x590);
- uint32_t x627, uint8_t x628 = addcarryx_u32(x625, x578, x591);
- uint8_t x629 = (x628 + x579);
- uint32_t x631, uint32_t x632 = mulx_u32(x15, x19);
- uint32_t x634, uint32_t x635 = mulx_u32(x15, x21);
- uint32_t x637, uint32_t x638 = mulx_u32(x15, x23);
- uint32_t x640, uint32_t x641 = mulx_u32(x15, x25);
- uint32_t x643, uint32_t x644 = mulx_u32(x15, x27);
- uint32_t x646, uint32_t x647 = mulx_u32(x15, x29);
- uint32_t x649, uint32_t x650 = mulx_u32(x15, x31);
- uint32_t x652, uint32_t x653 = mulx_u32(x15, x30);
- uint32_t x655, uint8_t x656 = addcarryx_u32(0x0, x632, x634);
- uint32_t x658, uint8_t x659 = addcarryx_u32(x656, x635, x637);
- uint32_t x661, uint8_t x662 = addcarryx_u32(x659, x638, x640);
- uint32_t x664, uint8_t x665 = addcarryx_u32(x662, x641, x643);
- uint32_t x667, uint8_t x668 = addcarryx_u32(x665, x644, x646);
- uint32_t x670, uint8_t x671 = addcarryx_u32(x668, x647, x649);
- uint32_t x673, uint8_t x674 = addcarryx_u32(x671, x650, x652);
- uint32_t x676, uint8_t _ = addcarryx_u32(0x0, x674, x653);
- uint32_t x679, uint8_t x680 = addcarryx_u32(0x0, x606, x631);
- uint32_t x682, uint8_t x683 = addcarryx_u32(x680, x609, x655);
- uint32_t x685, uint8_t x686 = addcarryx_u32(x683, x612, x658);
- uint32_t x688, uint8_t x689 = addcarryx_u32(x686, x615, x661);
- uint32_t x691, uint8_t x692 = addcarryx_u32(x689, x618, x664);
- uint32_t x694, uint8_t x695 = addcarryx_u32(x692, x621, x667);
- uint32_t x697, uint8_t x698 = addcarryx_u32(x695, x624, x670);
- uint32_t x700, uint8_t x701 = addcarryx_u32(x698, x627, x673);
- uint32_t x703, uint8_t x704 = addcarryx_u32(x701, x629, x676);
- uint32_t x706, uint32_t x707 = mulx_u32(x679, 0xffffffff);
- uint32_t x709, uint32_t x710 = mulx_u32(x679, 0xffffffff);
- uint32_t x712, uint32_t x713 = mulx_u32(x679, 0xffffffff);
- uint32_t x715, uint32_t x716 = mulx_u32(x679, 0xffffffff);
- uint32_t x718, uint8_t x719 = addcarryx_u32(0x0, x707, x709);
- uint32_t x721, uint8_t x722 = addcarryx_u32(x719, x710, x712);
- uint32_t x724, uint8_t x725 = addcarryx_u32(x722, x713, 0x0);
- uint8_t x726 = (0x0 + 0x0);
- uint32_t _, uint8_t x729 = addcarryx_u32(0x0, x679, x706);
- uint32_t x731, uint8_t x732 = addcarryx_u32(x729, x682, x718);
- uint32_t x734, uint8_t x735 = addcarryx_u32(x732, x685, x721);
- uint32_t x737, uint8_t x738 = addcarryx_u32(x735, x688, x724);
- uint32_t x740, uint8_t x741 = addcarryx_u32(x738, x691, x725);
- uint32_t x743, uint8_t x744 = addcarryx_u32(x741, x694, x726);
- uint32_t x746, uint8_t x747 = addcarryx_u32(x744, x697, x679);
- uint32_t x749, uint8_t x750 = addcarryx_u32(x747, x700, x715);
- uint32_t x752, uint8_t x753 = addcarryx_u32(x750, x703, x716);
- uint8_t x754 = (x753 + x704);
- uint32_t x756, uint32_t x757 = mulx_u32(x17, x19);
- uint32_t x759, uint32_t x760 = mulx_u32(x17, x21);
- uint32_t x762, uint32_t x763 = mulx_u32(x17, x23);
- uint32_t x765, uint32_t x766 = mulx_u32(x17, x25);
- uint32_t x768, uint32_t x769 = mulx_u32(x17, x27);
- uint32_t x771, uint32_t x772 = mulx_u32(x17, x29);
- uint32_t x774, uint32_t x775 = mulx_u32(x17, x31);
- uint32_t x777, uint32_t x778 = mulx_u32(x17, x30);
- uint32_t x780, uint8_t x781 = addcarryx_u32(0x0, x757, x759);
- uint32_t x783, uint8_t x784 = addcarryx_u32(x781, x760, x762);
- uint32_t x786, uint8_t x787 = addcarryx_u32(x784, x763, x765);
- uint32_t x789, uint8_t x790 = addcarryx_u32(x787, x766, x768);
- uint32_t x792, uint8_t x793 = addcarryx_u32(x790, x769, x771);
- uint32_t x795, uint8_t x796 = addcarryx_u32(x793, x772, x774);
- uint32_t x798, uint8_t x799 = addcarryx_u32(x796, x775, x777);
- uint32_t x801, uint8_t _ = addcarryx_u32(0x0, x799, x778);
- uint32_t x804, uint8_t x805 = addcarryx_u32(0x0, x731, x756);
- uint32_t x807, uint8_t x808 = addcarryx_u32(x805, x734, x780);
- uint32_t x810, uint8_t x811 = addcarryx_u32(x808, x737, x783);
- uint32_t x813, uint8_t x814 = addcarryx_u32(x811, x740, x786);
- uint32_t x816, uint8_t x817 = addcarryx_u32(x814, x743, x789);
- uint32_t x819, uint8_t x820 = addcarryx_u32(x817, x746, x792);
- uint32_t x822, uint8_t x823 = addcarryx_u32(x820, x749, x795);
- uint32_t x825, uint8_t x826 = addcarryx_u32(x823, x752, x798);
- uint32_t x828, uint8_t x829 = addcarryx_u32(x826, x754, x801);
- uint32_t x831, uint32_t x832 = mulx_u32(x804, 0xffffffff);
- uint32_t x834, uint32_t x835 = mulx_u32(x804, 0xffffffff);
- uint32_t x837, uint32_t x838 = mulx_u32(x804, 0xffffffff);
- uint32_t x840, uint32_t x841 = mulx_u32(x804, 0xffffffff);
- uint32_t x843, uint8_t x844 = addcarryx_u32(0x0, x832, x834);
- uint32_t x846, uint8_t x847 = addcarryx_u32(x844, x835, x837);
- uint32_t x849, uint8_t x850 = addcarryx_u32(x847, x838, 0x0);
- uint8_t x851 = (0x0 + 0x0);
- uint32_t _, uint8_t x854 = addcarryx_u32(0x0, x804, x831);
- uint32_t x856, uint8_t x857 = addcarryx_u32(x854, x807, x843);
- uint32_t x859, uint8_t x860 = addcarryx_u32(x857, x810, x846);
- uint32_t x862, uint8_t x863 = addcarryx_u32(x860, x813, x849);
- uint32_t x865, uint8_t x866 = addcarryx_u32(x863, x816, x850);
- uint32_t x868, uint8_t x869 = addcarryx_u32(x866, x819, x851);
- uint32_t x871, uint8_t x872 = addcarryx_u32(x869, x822, x804);
- uint32_t x874, uint8_t x875 = addcarryx_u32(x872, x825, x840);
- uint32_t x877, uint8_t x878 = addcarryx_u32(x875, x828, x841);
- uint8_t x879 = (x878 + x829);
- uint32_t x881, uint32_t x882 = mulx_u32(x16, x19);
- uint32_t x884, uint32_t x885 = mulx_u32(x16, x21);
- uint32_t x887, uint32_t x888 = mulx_u32(x16, x23);
- uint32_t x890, uint32_t x891 = mulx_u32(x16, x25);
- uint32_t x893, uint32_t x894 = mulx_u32(x16, x27);
- uint32_t x896, uint32_t x897 = mulx_u32(x16, x29);
- uint32_t x899, uint32_t x900 = mulx_u32(x16, x31);
- uint32_t x902, uint32_t x903 = mulx_u32(x16, x30);
- uint32_t x905, uint8_t x906 = addcarryx_u32(0x0, x882, x884);
- uint32_t x908, uint8_t x909 = addcarryx_u32(x906, x885, x887);
- uint32_t x911, uint8_t x912 = addcarryx_u32(x909, x888, x890);
- uint32_t x914, uint8_t x915 = addcarryx_u32(x912, x891, x893);
- uint32_t x917, uint8_t x918 = addcarryx_u32(x915, x894, x896);
- uint32_t x920, uint8_t x921 = addcarryx_u32(x918, x897, x899);
- uint32_t x923, uint8_t x924 = addcarryx_u32(x921, x900, x902);
- uint32_t x926, uint8_t _ = addcarryx_u32(0x0, x924, x903);
- uint32_t x929, uint8_t x930 = addcarryx_u32(0x0, x856, x881);
- uint32_t x932, uint8_t x933 = addcarryx_u32(x930, x859, x905);
- uint32_t x935, uint8_t x936 = addcarryx_u32(x933, x862, x908);
- uint32_t x938, uint8_t x939 = addcarryx_u32(x936, x865, x911);
- uint32_t x941, uint8_t x942 = addcarryx_u32(x939, x868, x914);
- uint32_t x944, uint8_t x945 = addcarryx_u32(x942, x871, x917);
- uint32_t x947, uint8_t x948 = addcarryx_u32(x945, x874, x920);
- uint32_t x950, uint8_t x951 = addcarryx_u32(x948, x877, x923);
- uint32_t x953, uint8_t x954 = addcarryx_u32(x951, x879, x926);
- uint32_t x956, uint32_t x957 = mulx_u32(x929, 0xffffffff);
- uint32_t x959, uint32_t x960 = mulx_u32(x929, 0xffffffff);
- uint32_t x962, uint32_t x963 = mulx_u32(x929, 0xffffffff);
- uint32_t x965, uint32_t x966 = mulx_u32(x929, 0xffffffff);
- uint32_t x968, uint8_t x969 = addcarryx_u32(0x0, x957, x959);
- uint32_t x971, uint8_t x972 = addcarryx_u32(x969, x960, x962);
- uint32_t x974, uint8_t x975 = addcarryx_u32(x972, x963, 0x0);
- uint8_t x976 = (0x0 + 0x0);
- uint32_t _, uint8_t x979 = addcarryx_u32(0x0, x929, x956);
- uint32_t x981, uint8_t x982 = addcarryx_u32(x979, x932, x968);
- uint32_t x984, uint8_t x985 = addcarryx_u32(x982, x935, x971);
- uint32_t x987, uint8_t x988 = addcarryx_u32(x985, x938, x974);
- uint32_t x990, uint8_t x991 = addcarryx_u32(x988, x941, x975);
- uint32_t x993, uint8_t x994 = addcarryx_u32(x991, x944, x976);
- uint32_t x996, uint8_t x997 = addcarryx_u32(x994, x947, x929);
- uint32_t x999, uint8_t x1000 = addcarryx_u32(x997, x950, x965);
- uint32_t x1002, uint8_t x1003 = addcarryx_u32(x1000, x953, x966);
- uint8_t x1004 = (x1003 + x954);
- uint32_t x1006, uint8_t x1007 = subborrow_u32(0x0, x981, 0xffffffff);
- uint32_t x1009, uint8_t x1010 = subborrow_u32(x1007, x984, 0xffffffff);
- uint32_t x1012, uint8_t x1013 = subborrow_u32(x1010, x987, 0xffffffff);
- uint32_t x1015, uint8_t x1016 = subborrow_u32(x1013, x990, 0x0);
- uint32_t x1018, uint8_t x1019 = subborrow_u32(x1016, x993, 0x0);
- uint32_t x1021, uint8_t x1022 = subborrow_u32(x1019, x996, 0x0);
- uint32_t x1024, uint8_t x1025 = subborrow_u32(x1022, x999, 0x1);
- uint32_t x1027, uint8_t x1028 = subborrow_u32(x1025, x1002, 0xffffffff);
- uint32_t _, uint8_t x1031 = subborrow_u32(x1028, x1004, 0x0);
- uint32_t x1032 = cmovznz32(x1031, x1027, x1002);
- uint32_t x1033 = cmovznz32(x1031, x1024, x999);
- uint32_t x1034 = cmovznz32(x1031, x1021, x996);
- uint32_t x1035 = cmovznz32(x1031, x1018, x993);
- uint32_t x1036 = cmovznz32(x1031, x1015, x990);
- uint32_t x1037 = cmovznz32(x1031, x1012, x987);
- uint32_t x1038 = cmovznz32(x1031, x1009, x984);
- uint32_t x1039 = cmovznz32(x1031, x1006, x981);
- return (x1032, x1033, x1034, x1035, x1036, x1037, x1038, x1039))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/femulDisplay.v b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/femulDisplay.v
deleted file mode 100644
index 4ae2eaca0..000000000
--- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m2e224p2e192p2e96m1_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fenz.c b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fenz.c
deleted file mode 100644
index 744f2aa5f..000000000
--- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (x14 | x13);
- { uint32_t x16 = (x12 | x15);
- { uint32_t x17 = (x10 | x16);
- { uint32_t x18 = (x8 | x17);
- { uint32_t x19 = (x6 | x18);
- { uint32_t x20 = (x4 | x19);
- { uint32_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fenz.v b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fenz.v
deleted file mode 100644
index 5856d542c..000000000
--- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m2e224p2e192p2e96m1_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fenzDisplay.log b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fenzDisplay.log
deleted file mode 100644
index c7c1c2df1..000000000
--- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x15 = (x14 | x13);
- uint32_t x16 = (x12 | x15);
- uint32_t x17 = (x10 | x16);
- uint32_t x18 = (x8 | x17);
- uint32_t x19 = (x6 | x18);
- uint32_t x20 = (x4 | x19);
- uint32_t x21 = (x2 | x20);
- return x21)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fenzDisplay.v b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fenzDisplay.v
deleted file mode 100644
index 3154b837d..000000000
--- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m2e224p2e192p2e96m1_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/feopp.v b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/feopp.v
deleted file mode 100644
index 853164824..000000000
--- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m2e224p2e192p2e96m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/feoppDisplay.v b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/feoppDisplay.v
deleted file mode 100644
index 541ff2626..000000000
--- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m2e224p2e192p2e96m1_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fesquare.c b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fesub.v b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fesub.v
deleted file mode 100644
index 0d8fb6076..000000000
--- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m2e224p2e192p2e96m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fesubDisplay.v b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fesubDisplay.v
deleted file mode 100644
index 134feb3ee..000000000
--- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m2e224p2e192p2e96m1_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/py_interpreter.sh b/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/py_interpreter.sh
deleted file mode 100755
index 6e83fbf84..000000000
--- a/src/Specific/montgomery32_2e256m2e224p2e192p2e96m1_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256 - 2**224 + 2**192 + 2**96 - 1' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e256m2e32m977_8limbs/CurveParameters.v b/src/Specific/montgomery32_2e256m2e32m977_8limbs/CurveParameters.v
deleted file mode 100644
index 5badbfc52..000000000
--- a/src/Specific/montgomery32_2e256m2e32m977_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256 - 2^32 - 977
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 32;
- bitwidth := 32;
- s := 2^256;
- c := [(1, 977); (2^32, 1)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e256m2e32m977_8limbs/Synthesis.v b/src/Specific/montgomery32_2e256m2e32m977_8limbs/Synthesis.v
deleted file mode 100644
index 601de49c3..000000000
--- a/src/Specific/montgomery32_2e256m2e32m977_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e256m2e32m977_8limbs.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/montgomery32_2e256m2e32m977_8limbs/compiler.sh b/src/Specific/montgomery32_2e256m2e32m977_8limbs/compiler.sh
deleted file mode 100755
index 883eed7d8..000000000
--- a/src/Specific/montgomery32_2e256m2e32m977_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977' "$@"
diff --git a/src/Specific/montgomery32_2e256m2e32m977_8limbs/compilerxx.sh b/src/Specific/montgomery32_2e256m2e32m977_8limbs/compilerxx.sh
deleted file mode 100755
index 6a7c6bf30..000000000
--- a/src/Specific/montgomery32_2e256m2e32m977_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977' "$@"
diff --git a/src/Specific/montgomery32_2e256m2e32m977_8limbs/feadd.c b/src/Specific/montgomery32_2e256m2e32m977_8limbs/feadd.c
deleted file mode 100644
index d63a79de9..000000000
--- a/src/Specific/montgomery32_2e256m2e32m977_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint32_t x33; uint8_t x34 = _addcarryx_u32(0x0, x5, x19, &x33);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(x34, x7, x21, &x36);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x37, x9, x23, &x39);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x40, x11, x25, &x42);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(x43, x13, x27, &x45);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x46, x15, x29, &x48);
- { uint32_t x51; uint8_t x52 = _addcarryx_u32(x49, x17, x31, &x51);
- { uint32_t x54; uint8_t x55 = _addcarryx_u32(x52, x16, x30, &x54);
- { uint32_t x57; uint8_t x58 = _subborrow_u32(0x0, x33, 0xfffffc2f, &x57);
- { uint32_t x60; uint8_t x61 = _subborrow_u32(x58, x36, 0xfffffffe, &x60);
- { uint32_t x63; uint8_t x64 = _subborrow_u32(x61, x39, 0xffffffff, &x63);
- { uint32_t x66; uint8_t x67 = _subborrow_u32(x64, x42, 0xffffffff, &x66);
- { uint32_t x69; uint8_t x70 = _subborrow_u32(x67, x45, 0xffffffff, &x69);
- { uint32_t x72; uint8_t x73 = _subborrow_u32(x70, x48, 0xffffffff, &x72);
- { uint32_t x75; uint8_t x76 = _subborrow_u32(x73, x51, 0xffffffff, &x75);
- { uint32_t x78; uint8_t x79 = _subborrow_u32(x76, x54, 0xffffffff, &x78);
- { uint32_t _; uint8_t x82 = _subborrow_u32(x79, x55, 0x0, &_);
- { uint32_t x83 = cmovznz32(x82, x78, x54);
- { uint32_t x84 = cmovznz32(x82, x75, x51);
- { uint32_t x85 = cmovznz32(x82, x72, x48);
- { uint32_t x86 = cmovznz32(x82, x69, x45);
- { uint32_t x87 = cmovznz32(x82, x66, x42);
- { uint32_t x88 = cmovznz32(x82, x63, x39);
- { uint32_t x89 = cmovznz32(x82, x60, x36);
- { uint32_t x90 = cmovznz32(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e256m2e32m977_8limbs/feadd.v b/src/Specific/montgomery32_2e256m2e32m977_8limbs/feadd.v
deleted file mode 100644
index 32f747e8b..000000000
--- a/src/Specific/montgomery32_2e256m2e32m977_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m2e32m977_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e256m2e32m977_8limbs/feaddDisplay.log b/src/Specific/montgomery32_2e256m2e32m977_8limbs/feaddDisplay.log
deleted file mode 100644
index ae0590e29..000000000
--- a/src/Specific/montgomery32_2e256m2e32m977_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint32_t x33, uint8_t x34 = addcarryx_u32(0x0, x5, x19);
- uint32_t x36, uint8_t x37 = addcarryx_u32(x34, x7, x21);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x37, x9, x23);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x40, x11, x25);
- uint32_t x45, uint8_t x46 = addcarryx_u32(x43, x13, x27);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x46, x15, x29);
- uint32_t x51, uint8_t x52 = addcarryx_u32(x49, x17, x31);
- uint32_t x54, uint8_t x55 = addcarryx_u32(x52, x16, x30);
- uint32_t x57, uint8_t x58 = subborrow_u32(0x0, x33, 0xfffffc2f);
- uint32_t x60, uint8_t x61 = subborrow_u32(x58, x36, 0xfffffffe);
- uint32_t x63, uint8_t x64 = subborrow_u32(x61, x39, 0xffffffff);
- uint32_t x66, uint8_t x67 = subborrow_u32(x64, x42, 0xffffffff);
- uint32_t x69, uint8_t x70 = subborrow_u32(x67, x45, 0xffffffff);
- uint32_t x72, uint8_t x73 = subborrow_u32(x70, x48, 0xffffffff);
- uint32_t x75, uint8_t x76 = subborrow_u32(x73, x51, 0xffffffff);
- uint32_t x78, uint8_t x79 = subborrow_u32(x76, x54, 0xffffffff);
- uint32_t _, uint8_t x82 = subborrow_u32(x79, x55, 0x0);
- uint32_t x83 = cmovznz32(x82, x78, x54);
- uint32_t x84 = cmovznz32(x82, x75, x51);
- uint32_t x85 = cmovznz32(x82, x72, x48);
- uint32_t x86 = cmovznz32(x82, x69, x45);
- uint32_t x87 = cmovznz32(x82, x66, x42);
- uint32_t x88 = cmovznz32(x82, x63, x39);
- uint32_t x89 = cmovznz32(x82, x60, x36);
- uint32_t x90 = cmovznz32(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e256m2e32m977_8limbs/feaddDisplay.v b/src/Specific/montgomery32_2e256m2e32m977_8limbs/feaddDisplay.v
deleted file mode 100644
index d5bddcc71..000000000
--- a/src/Specific/montgomery32_2e256m2e32m977_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m2e32m977_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e256m2e32m977_8limbs/femul.v b/src/Specific/montgomery32_2e256m2e32m977_8limbs/femul.v
deleted file mode 100644
index d25d53787..000000000
--- a/src/Specific/montgomery32_2e256m2e32m977_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m2e32m977_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e256m2e32m977_8limbs/femulDisplay.v b/src/Specific/montgomery32_2e256m2e32m977_8limbs/femulDisplay.v
deleted file mode 100644
index a6b104151..000000000
--- a/src/Specific/montgomery32_2e256m2e32m977_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m2e32m977_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e256m2e32m977_8limbs/fenz.c b/src/Specific/montgomery32_2e256m2e32m977_8limbs/fenz.c
deleted file mode 100644
index 744f2aa5f..000000000
--- a/src/Specific/montgomery32_2e256m2e32m977_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (x14 | x13);
- { uint32_t x16 = (x12 | x15);
- { uint32_t x17 = (x10 | x16);
- { uint32_t x18 = (x8 | x17);
- { uint32_t x19 = (x6 | x18);
- { uint32_t x20 = (x4 | x19);
- { uint32_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e256m2e32m977_8limbs/fenz.v b/src/Specific/montgomery32_2e256m2e32m977_8limbs/fenz.v
deleted file mode 100644
index 50065ced7..000000000
--- a/src/Specific/montgomery32_2e256m2e32m977_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m2e32m977_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e256m2e32m977_8limbs/fenzDisplay.log b/src/Specific/montgomery32_2e256m2e32m977_8limbs/fenzDisplay.log
deleted file mode 100644
index c7c1c2df1..000000000
--- a/src/Specific/montgomery32_2e256m2e32m977_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x15 = (x14 | x13);
- uint32_t x16 = (x12 | x15);
- uint32_t x17 = (x10 | x16);
- uint32_t x18 = (x8 | x17);
- uint32_t x19 = (x6 | x18);
- uint32_t x20 = (x4 | x19);
- uint32_t x21 = (x2 | x20);
- return x21)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e256m2e32m977_8limbs/fenzDisplay.v b/src/Specific/montgomery32_2e256m2e32m977_8limbs/fenzDisplay.v
deleted file mode 100644
index 49b6e603e..000000000
--- a/src/Specific/montgomery32_2e256m2e32m977_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m2e32m977_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e256m2e32m977_8limbs/feopp.v b/src/Specific/montgomery32_2e256m2e32m977_8limbs/feopp.v
deleted file mode 100644
index 5c59949a6..000000000
--- a/src/Specific/montgomery32_2e256m2e32m977_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m2e32m977_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e256m2e32m977_8limbs/feoppDisplay.v b/src/Specific/montgomery32_2e256m2e32m977_8limbs/feoppDisplay.v
deleted file mode 100644
index 9456d0467..000000000
--- a/src/Specific/montgomery32_2e256m2e32m977_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m2e32m977_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e256m2e32m977_8limbs/fesquare.c b/src/Specific/montgomery32_2e256m2e32m977_8limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e256m2e32m977_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e256m2e32m977_8limbs/fesub.v b/src/Specific/montgomery32_2e256m2e32m977_8limbs/fesub.v
deleted file mode 100644
index 6b9977440..000000000
--- a/src/Specific/montgomery32_2e256m2e32m977_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m2e32m977_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e256m2e32m977_8limbs/fesubDisplay.v b/src/Specific/montgomery32_2e256m2e32m977_8limbs/fesubDisplay.v
deleted file mode 100644
index 620d05b68..000000000
--- a/src/Specific/montgomery32_2e256m2e32m977_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m2e32m977_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e256m2e32m977_8limbs/py_interpreter.sh b/src/Specific/montgomery32_2e256m2e32m977_8limbs/py_interpreter.sh
deleted file mode 100755
index ee01d5590..000000000
--- a/src/Specific/montgomery32_2e256m2e32m977_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256 - 2**32 - 977' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e256m4294968273_8limbs/CurveParameters.v b/src/Specific/montgomery32_2e256m4294968273_8limbs/CurveParameters.v
deleted file mode 100644
index d158a02eb..000000000
--- a/src/Specific/montgomery32_2e256m4294968273_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256 - 4294968273
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 32;
- bitwidth := 32;
- s := 2^256;
- c := [(1, 4294968273)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e256m4294968273_8limbs/Synthesis.v b/src/Specific/montgomery32_2e256m4294968273_8limbs/Synthesis.v
deleted file mode 100644
index 31478dac1..000000000
--- a/src/Specific/montgomery32_2e256m4294968273_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e256m4294968273_8limbs.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/montgomery32_2e256m4294968273_8limbs/compiler.sh b/src/Specific/montgomery32_2e256m4294968273_8limbs/compiler.sh
deleted file mode 100755
index 813ddf011..000000000
--- a/src/Specific/montgomery32_2e256m4294968273_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<256) - 4294968273' "$@"
diff --git a/src/Specific/montgomery32_2e256m4294968273_8limbs/compilerxx.sh b/src/Specific/montgomery32_2e256m4294968273_8limbs/compilerxx.sh
deleted file mode 100755
index 4c8bea533..000000000
--- a/src/Specific/montgomery32_2e256m4294968273_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<256) - 4294968273' "$@"
diff --git a/src/Specific/montgomery32_2e256m4294968273_8limbs/feadd.c b/src/Specific/montgomery32_2e256m4294968273_8limbs/feadd.c
deleted file mode 100644
index d63a79de9..000000000
--- a/src/Specific/montgomery32_2e256m4294968273_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint32_t x33; uint8_t x34 = _addcarryx_u32(0x0, x5, x19, &x33);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(x34, x7, x21, &x36);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x37, x9, x23, &x39);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x40, x11, x25, &x42);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(x43, x13, x27, &x45);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x46, x15, x29, &x48);
- { uint32_t x51; uint8_t x52 = _addcarryx_u32(x49, x17, x31, &x51);
- { uint32_t x54; uint8_t x55 = _addcarryx_u32(x52, x16, x30, &x54);
- { uint32_t x57; uint8_t x58 = _subborrow_u32(0x0, x33, 0xfffffc2f, &x57);
- { uint32_t x60; uint8_t x61 = _subborrow_u32(x58, x36, 0xfffffffe, &x60);
- { uint32_t x63; uint8_t x64 = _subborrow_u32(x61, x39, 0xffffffff, &x63);
- { uint32_t x66; uint8_t x67 = _subborrow_u32(x64, x42, 0xffffffff, &x66);
- { uint32_t x69; uint8_t x70 = _subborrow_u32(x67, x45, 0xffffffff, &x69);
- { uint32_t x72; uint8_t x73 = _subborrow_u32(x70, x48, 0xffffffff, &x72);
- { uint32_t x75; uint8_t x76 = _subborrow_u32(x73, x51, 0xffffffff, &x75);
- { uint32_t x78; uint8_t x79 = _subborrow_u32(x76, x54, 0xffffffff, &x78);
- { uint32_t _; uint8_t x82 = _subborrow_u32(x79, x55, 0x0, &_);
- { uint32_t x83 = cmovznz32(x82, x78, x54);
- { uint32_t x84 = cmovznz32(x82, x75, x51);
- { uint32_t x85 = cmovznz32(x82, x72, x48);
- { uint32_t x86 = cmovznz32(x82, x69, x45);
- { uint32_t x87 = cmovznz32(x82, x66, x42);
- { uint32_t x88 = cmovznz32(x82, x63, x39);
- { uint32_t x89 = cmovznz32(x82, x60, x36);
- { uint32_t x90 = cmovznz32(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e256m4294968273_8limbs/feadd.v b/src/Specific/montgomery32_2e256m4294968273_8limbs/feadd.v
deleted file mode 100644
index fe1eb4112..000000000
--- a/src/Specific/montgomery32_2e256m4294968273_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m4294968273_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e256m4294968273_8limbs/feaddDisplay.log b/src/Specific/montgomery32_2e256m4294968273_8limbs/feaddDisplay.log
deleted file mode 100644
index ae0590e29..000000000
--- a/src/Specific/montgomery32_2e256m4294968273_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint32_t x33, uint8_t x34 = addcarryx_u32(0x0, x5, x19);
- uint32_t x36, uint8_t x37 = addcarryx_u32(x34, x7, x21);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x37, x9, x23);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x40, x11, x25);
- uint32_t x45, uint8_t x46 = addcarryx_u32(x43, x13, x27);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x46, x15, x29);
- uint32_t x51, uint8_t x52 = addcarryx_u32(x49, x17, x31);
- uint32_t x54, uint8_t x55 = addcarryx_u32(x52, x16, x30);
- uint32_t x57, uint8_t x58 = subborrow_u32(0x0, x33, 0xfffffc2f);
- uint32_t x60, uint8_t x61 = subborrow_u32(x58, x36, 0xfffffffe);
- uint32_t x63, uint8_t x64 = subborrow_u32(x61, x39, 0xffffffff);
- uint32_t x66, uint8_t x67 = subborrow_u32(x64, x42, 0xffffffff);
- uint32_t x69, uint8_t x70 = subborrow_u32(x67, x45, 0xffffffff);
- uint32_t x72, uint8_t x73 = subborrow_u32(x70, x48, 0xffffffff);
- uint32_t x75, uint8_t x76 = subborrow_u32(x73, x51, 0xffffffff);
- uint32_t x78, uint8_t x79 = subborrow_u32(x76, x54, 0xffffffff);
- uint32_t _, uint8_t x82 = subborrow_u32(x79, x55, 0x0);
- uint32_t x83 = cmovznz32(x82, x78, x54);
- uint32_t x84 = cmovznz32(x82, x75, x51);
- uint32_t x85 = cmovznz32(x82, x72, x48);
- uint32_t x86 = cmovznz32(x82, x69, x45);
- uint32_t x87 = cmovznz32(x82, x66, x42);
- uint32_t x88 = cmovznz32(x82, x63, x39);
- uint32_t x89 = cmovznz32(x82, x60, x36);
- uint32_t x90 = cmovznz32(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e256m4294968273_8limbs/feaddDisplay.v b/src/Specific/montgomery32_2e256m4294968273_8limbs/feaddDisplay.v
deleted file mode 100644
index 7f422fa84..000000000
--- a/src/Specific/montgomery32_2e256m4294968273_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m4294968273_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e256m4294968273_8limbs/femul.v b/src/Specific/montgomery32_2e256m4294968273_8limbs/femul.v
deleted file mode 100644
index 3d63b3470..000000000
--- a/src/Specific/montgomery32_2e256m4294968273_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m4294968273_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e256m4294968273_8limbs/femulDisplay.v b/src/Specific/montgomery32_2e256m4294968273_8limbs/femulDisplay.v
deleted file mode 100644
index ecd88d96b..000000000
--- a/src/Specific/montgomery32_2e256m4294968273_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m4294968273_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e256m4294968273_8limbs/fenz.c b/src/Specific/montgomery32_2e256m4294968273_8limbs/fenz.c
deleted file mode 100644
index 744f2aa5f..000000000
--- a/src/Specific/montgomery32_2e256m4294968273_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (x14 | x13);
- { uint32_t x16 = (x12 | x15);
- { uint32_t x17 = (x10 | x16);
- { uint32_t x18 = (x8 | x17);
- { uint32_t x19 = (x6 | x18);
- { uint32_t x20 = (x4 | x19);
- { uint32_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e256m4294968273_8limbs/fenz.v b/src/Specific/montgomery32_2e256m4294968273_8limbs/fenz.v
deleted file mode 100644
index 77416a9d7..000000000
--- a/src/Specific/montgomery32_2e256m4294968273_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m4294968273_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e256m4294968273_8limbs/fenzDisplay.log b/src/Specific/montgomery32_2e256m4294968273_8limbs/fenzDisplay.log
deleted file mode 100644
index c7c1c2df1..000000000
--- a/src/Specific/montgomery32_2e256m4294968273_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x15 = (x14 | x13);
- uint32_t x16 = (x12 | x15);
- uint32_t x17 = (x10 | x16);
- uint32_t x18 = (x8 | x17);
- uint32_t x19 = (x6 | x18);
- uint32_t x20 = (x4 | x19);
- uint32_t x21 = (x2 | x20);
- return x21)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e256m4294968273_8limbs/fenzDisplay.v b/src/Specific/montgomery32_2e256m4294968273_8limbs/fenzDisplay.v
deleted file mode 100644
index 99cb21d7a..000000000
--- a/src/Specific/montgomery32_2e256m4294968273_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m4294968273_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e256m4294968273_8limbs/feopp.v b/src/Specific/montgomery32_2e256m4294968273_8limbs/feopp.v
deleted file mode 100644
index 9e9b04128..000000000
--- a/src/Specific/montgomery32_2e256m4294968273_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m4294968273_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e256m4294968273_8limbs/feoppDisplay.v b/src/Specific/montgomery32_2e256m4294968273_8limbs/feoppDisplay.v
deleted file mode 100644
index ecd4e21c5..000000000
--- a/src/Specific/montgomery32_2e256m4294968273_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m4294968273_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e256m4294968273_8limbs/fesquare.c b/src/Specific/montgomery32_2e256m4294968273_8limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e256m4294968273_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e256m4294968273_8limbs/fesub.v b/src/Specific/montgomery32_2e256m4294968273_8limbs/fesub.v
deleted file mode 100644
index 83b25aa26..000000000
--- a/src/Specific/montgomery32_2e256m4294968273_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m4294968273_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e256m4294968273_8limbs/fesubDisplay.v b/src/Specific/montgomery32_2e256m4294968273_8limbs/fesubDisplay.v
deleted file mode 100644
index cf2b9dd15..000000000
--- a/src/Specific/montgomery32_2e256m4294968273_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m4294968273_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e256m4294968273_8limbs/py_interpreter.sh b/src/Specific/montgomery32_2e256m4294968273_8limbs/py_interpreter.sh
deleted file mode 100755
index 4de64d06a..000000000
--- a/src/Specific/montgomery32_2e256m4294968273_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256 - 4294968273' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/CurveParameters.v b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/CurveParameters.v
deleted file mode 100644
index 6045bed0c..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256 - 88*2^240 - 1
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 32;
- bitwidth := 32;
- s := 2^256;
- c := [(1, 1); (88, 2^240)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e256m88x2e240m1_8limbs/Synthesis.v b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/Synthesis.v
deleted file mode 100644
index a4cf72e22..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e256m88x2e240m1_8limbs.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/montgomery32_2e256m88x2e240m1_8limbs/compiler.sh b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/compiler.sh
deleted file mode 100755
index db406c93a..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/compilerxx.sh b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/compilerxx.sh
deleted file mode 100755
index e7059f96a..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feadd.c b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feadd.c
deleted file mode 100644
index 056dbba53..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint32_t x33; uint8_t x34 = _addcarryx_u32(0x0, x5, x19, &x33);
- { uint32_t x36; uint8_t x37 = _addcarryx_u32(x34, x7, x21, &x36);
- { uint32_t x39; uint8_t x40 = _addcarryx_u32(x37, x9, x23, &x39);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(x40, x11, x25, &x42);
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(x43, x13, x27, &x45);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x46, x15, x29, &x48);
- { uint32_t x51; uint8_t x52 = _addcarryx_u32(x49, x17, x31, &x51);
- { uint32_t x54; uint8_t x55 = _addcarryx_u32(x52, x16, x30, &x54);
- { uint32_t x57; uint8_t x58 = _subborrow_u32(0x0, x33, 0xffffffff, &x57);
- { uint32_t x60; uint8_t x61 = _subborrow_u32(x58, x36, 0xffffffff, &x60);
- { uint32_t x63; uint8_t x64 = _subborrow_u32(x61, x39, 0xffffffff, &x63);
- { uint32_t x66; uint8_t x67 = _subborrow_u32(x64, x42, 0xffffffff, &x66);
- { uint32_t x69; uint8_t x70 = _subborrow_u32(x67, x45, 0xffffffff, &x69);
- { uint32_t x72; uint8_t x73 = _subborrow_u32(x70, x48, 0xffffffff, &x72);
- { uint32_t x75; uint8_t x76 = _subborrow_u32(x73, x51, 0xffffffff, &x75);
- { uint32_t x78; uint8_t x79 = _subborrow_u32(x76, x54, 0xffa7ffff, &x78);
- { uint32_t _; uint8_t x82 = _subborrow_u32(x79, x55, 0x0, &_);
- { uint32_t x83 = cmovznz32(x82, x78, x54);
- { uint32_t x84 = cmovznz32(x82, x75, x51);
- { uint32_t x85 = cmovznz32(x82, x72, x48);
- { uint32_t x86 = cmovznz32(x82, x69, x45);
- { uint32_t x87 = cmovznz32(x82, x66, x42);
- { uint32_t x88 = cmovznz32(x82, x63, x39);
- { uint32_t x89 = cmovznz32(x82, x60, x36);
- { uint32_t x90 = cmovznz32(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feadd.v b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feadd.v
deleted file mode 100644
index 7a6ee32c8..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m88x2e240m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feaddDisplay.log b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feaddDisplay.log
deleted file mode 100644
index c4b54ef1d..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint32_t x33, uint8_t x34 = addcarryx_u32(0x0, x5, x19);
- uint32_t x36, uint8_t x37 = addcarryx_u32(x34, x7, x21);
- uint32_t x39, uint8_t x40 = addcarryx_u32(x37, x9, x23);
- uint32_t x42, uint8_t x43 = addcarryx_u32(x40, x11, x25);
- uint32_t x45, uint8_t x46 = addcarryx_u32(x43, x13, x27);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x46, x15, x29);
- uint32_t x51, uint8_t x52 = addcarryx_u32(x49, x17, x31);
- uint32_t x54, uint8_t x55 = addcarryx_u32(x52, x16, x30);
- uint32_t x57, uint8_t x58 = subborrow_u32(0x0, x33, 0xffffffff);
- uint32_t x60, uint8_t x61 = subborrow_u32(x58, x36, 0xffffffff);
- uint32_t x63, uint8_t x64 = subborrow_u32(x61, x39, 0xffffffff);
- uint32_t x66, uint8_t x67 = subborrow_u32(x64, x42, 0xffffffff);
- uint32_t x69, uint8_t x70 = subborrow_u32(x67, x45, 0xffffffff);
- uint32_t x72, uint8_t x73 = subborrow_u32(x70, x48, 0xffffffff);
- uint32_t x75, uint8_t x76 = subborrow_u32(x73, x51, 0xffffffff);
- uint32_t x78, uint8_t x79 = subborrow_u32(x76, x54, 0xffa7ffff);
- uint32_t _, uint8_t x82 = subborrow_u32(x79, x55, 0x0);
- uint32_t x83 = cmovznz32(x82, x78, x54);
- uint32_t x84 = cmovznz32(x82, x75, x51);
- uint32_t x85 = cmovznz32(x82, x72, x48);
- uint32_t x86 = cmovznz32(x82, x69, x45);
- uint32_t x87 = cmovznz32(x82, x66, x42);
- uint32_t x88 = cmovznz32(x82, x63, x39);
- uint32_t x89 = cmovznz32(x82, x60, x36);
- uint32_t x90 = cmovznz32(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feaddDisplay.v b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feaddDisplay.v
deleted file mode 100644
index b79f8f1dc..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m88x2e240m1_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/femul.c b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/femul.c
deleted file mode 100644
index 325d3c74c..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/femul.c
+++ /dev/null
@@ -1,443 +0,0 @@
-static void femul(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint32_t x34; uint32_t x33 = _mulx_u32(x5, x19, &x34);
- { uint32_t x37; uint32_t x36 = _mulx_u32(x5, x21, &x37);
- { uint32_t x40; uint32_t x39 = _mulx_u32(x5, x23, &x40);
- { uint32_t x43; uint32_t x42 = _mulx_u32(x5, x25, &x43);
- { uint32_t x46; uint32_t x45 = _mulx_u32(x5, x27, &x46);
- { uint32_t x49; uint32_t x48 = _mulx_u32(x5, x29, &x49);
- { uint32_t x52; uint32_t x51 = _mulx_u32(x5, x31, &x52);
- { uint32_t x55; uint32_t x54 = _mulx_u32(x5, x30, &x55);
- { uint32_t x57; uint8_t x58 = _addcarryx_u32(0x0, x34, x36, &x57);
- { uint32_t x60; uint8_t x61 = _addcarryx_u32(x58, x37, x39, &x60);
- { uint32_t x63; uint8_t x64 = _addcarryx_u32(x61, x40, x42, &x63);
- { uint32_t x66; uint8_t x67 = _addcarryx_u32(x64, x43, x45, &x66);
- { uint32_t x69; uint8_t x70 = _addcarryx_u32(x67, x46, x48, &x69);
- { uint32_t x72; uint8_t x73 = _addcarryx_u32(x70, x49, x51, &x72);
- { uint32_t x75; uint8_t x76 = _addcarryx_u32(x73, x52, x54, &x75);
- { uint32_t x78; uint8_t _ = _addcarryx_u32(0x0, x76, x55, &x78);
- { uint32_t x82; uint32_t x81 = _mulx_u32(x33, 0xffffffff, &x82);
- { uint32_t x85; uint32_t x84 = _mulx_u32(x33, 0xffffffff, &x85);
- { uint32_t x88; uint32_t x87 = _mulx_u32(x33, 0xffffffff, &x88);
- { uint32_t x91; uint32_t x90 = _mulx_u32(x33, 0xffffffff, &x91);
- { uint32_t x94; uint32_t x93 = _mulx_u32(x33, 0xffffffff, &x94);
- { uint32_t x97; uint32_t x96 = _mulx_u32(x33, 0xffffffff, &x97);
- { uint32_t x100; uint32_t x99 = _mulx_u32(x33, 0xffffffff, &x100);
- { uint32_t x103; uint32_t x102 = _mulx_u32(x33, 0xffa7ffff, &x103);
- { uint32_t x105; uint8_t x106 = _addcarryx_u32(0x0, x82, x84, &x105);
- { uint32_t x108; uint8_t x109 = _addcarryx_u32(x106, x85, x87, &x108);
- { uint32_t x111; uint8_t x112 = _addcarryx_u32(x109, x88, x90, &x111);
- { uint32_t x114; uint8_t x115 = _addcarryx_u32(x112, x91, x93, &x114);
- { uint32_t x117; uint8_t x118 = _addcarryx_u32(x115, x94, x96, &x117);
- { uint32_t x120; uint8_t x121 = _addcarryx_u32(x118, x97, x99, &x120);
- { uint32_t x123; uint8_t x124 = _addcarryx_u32(x121, x100, x102, &x123);
- { uint32_t x126; uint8_t _ = _addcarryx_u32(0x0, x124, x103, &x126);
- { uint32_t _; uint8_t x130 = _addcarryx_u32(0x0, x33, x81, &_);
- { uint32_t x132; uint8_t x133 = _addcarryx_u32(x130, x57, x105, &x132);
- { uint32_t x135; uint8_t x136 = _addcarryx_u32(x133, x60, x108, &x135);
- { uint32_t x138; uint8_t x139 = _addcarryx_u32(x136, x63, x111, &x138);
- { uint32_t x141; uint8_t x142 = _addcarryx_u32(x139, x66, x114, &x141);
- { uint32_t x144; uint8_t x145 = _addcarryx_u32(x142, x69, x117, &x144);
- { uint32_t x147; uint8_t x148 = _addcarryx_u32(x145, x72, x120, &x147);
- { uint32_t x150; uint8_t x151 = _addcarryx_u32(x148, x75, x123, &x150);
- { uint32_t x153; uint8_t x154 = _addcarryx_u32(x151, x78, x126, &x153);
- { uint8_t x155 = (x154 + 0x0);
- { uint32_t x158; uint32_t x157 = _mulx_u32(x7, x19, &x158);
- { uint32_t x161; uint32_t x160 = _mulx_u32(x7, x21, &x161);
- { uint32_t x164; uint32_t x163 = _mulx_u32(x7, x23, &x164);
- { uint32_t x167; uint32_t x166 = _mulx_u32(x7, x25, &x167);
- { uint32_t x170; uint32_t x169 = _mulx_u32(x7, x27, &x170);
- { uint32_t x173; uint32_t x172 = _mulx_u32(x7, x29, &x173);
- { uint32_t x176; uint32_t x175 = _mulx_u32(x7, x31, &x176);
- { uint32_t x179; uint32_t x178 = _mulx_u32(x7, x30, &x179);
- { uint32_t x181; uint8_t x182 = _addcarryx_u32(0x0, x158, x160, &x181);
- { uint32_t x184; uint8_t x185 = _addcarryx_u32(x182, x161, x163, &x184);
- { uint32_t x187; uint8_t x188 = _addcarryx_u32(x185, x164, x166, &x187);
- { uint32_t x190; uint8_t x191 = _addcarryx_u32(x188, x167, x169, &x190);
- { uint32_t x193; uint8_t x194 = _addcarryx_u32(x191, x170, x172, &x193);
- { uint32_t x196; uint8_t x197 = _addcarryx_u32(x194, x173, x175, &x196);
- { uint32_t x199; uint8_t x200 = _addcarryx_u32(x197, x176, x178, &x199);
- { uint32_t x202; uint8_t _ = _addcarryx_u32(0x0, x200, x179, &x202);
- { uint32_t x205; uint8_t x206 = _addcarryx_u32(0x0, x132, x157, &x205);
- { uint32_t x208; uint8_t x209 = _addcarryx_u32(x206, x135, x181, &x208);
- { uint32_t x211; uint8_t x212 = _addcarryx_u32(x209, x138, x184, &x211);
- { uint32_t x214; uint8_t x215 = _addcarryx_u32(x212, x141, x187, &x214);
- { uint32_t x217; uint8_t x218 = _addcarryx_u32(x215, x144, x190, &x217);
- { uint32_t x220; uint8_t x221 = _addcarryx_u32(x218, x147, x193, &x220);
- { uint32_t x223; uint8_t x224 = _addcarryx_u32(x221, x150, x196, &x223);
- { uint32_t x226; uint8_t x227 = _addcarryx_u32(x224, x153, x199, &x226);
- { uint32_t x229; uint8_t x230 = _addcarryx_u32(x227, x155, x202, &x229);
- { uint32_t x233; uint32_t x232 = _mulx_u32(x205, 0xffffffff, &x233);
- { uint32_t x236; uint32_t x235 = _mulx_u32(x205, 0xffffffff, &x236);
- { uint32_t x239; uint32_t x238 = _mulx_u32(x205, 0xffffffff, &x239);
- { uint32_t x242; uint32_t x241 = _mulx_u32(x205, 0xffffffff, &x242);
- { uint32_t x245; uint32_t x244 = _mulx_u32(x205, 0xffffffff, &x245);
- { uint32_t x248; uint32_t x247 = _mulx_u32(x205, 0xffffffff, &x248);
- { uint32_t x251; uint32_t x250 = _mulx_u32(x205, 0xffffffff, &x251);
- { uint32_t x254; uint32_t x253 = _mulx_u32(x205, 0xffa7ffff, &x254);
- { uint32_t x256; uint8_t x257 = _addcarryx_u32(0x0, x233, x235, &x256);
- { uint32_t x259; uint8_t x260 = _addcarryx_u32(x257, x236, x238, &x259);
- { uint32_t x262; uint8_t x263 = _addcarryx_u32(x260, x239, x241, &x262);
- { uint32_t x265; uint8_t x266 = _addcarryx_u32(x263, x242, x244, &x265);
- { uint32_t x268; uint8_t x269 = _addcarryx_u32(x266, x245, x247, &x268);
- { uint32_t x271; uint8_t x272 = _addcarryx_u32(x269, x248, x250, &x271);
- { uint32_t x274; uint8_t x275 = _addcarryx_u32(x272, x251, x253, &x274);
- { uint32_t x277; uint8_t _ = _addcarryx_u32(0x0, x275, x254, &x277);
- { uint32_t _; uint8_t x281 = _addcarryx_u32(0x0, x205, x232, &_);
- { uint32_t x283; uint8_t x284 = _addcarryx_u32(x281, x208, x256, &x283);
- { uint32_t x286; uint8_t x287 = _addcarryx_u32(x284, x211, x259, &x286);
- { uint32_t x289; uint8_t x290 = _addcarryx_u32(x287, x214, x262, &x289);
- { uint32_t x292; uint8_t x293 = _addcarryx_u32(x290, x217, x265, &x292);
- { uint32_t x295; uint8_t x296 = _addcarryx_u32(x293, x220, x268, &x295);
- { uint32_t x298; uint8_t x299 = _addcarryx_u32(x296, x223, x271, &x298);
- { uint32_t x301; uint8_t x302 = _addcarryx_u32(x299, x226, x274, &x301);
- { uint32_t x304; uint8_t x305 = _addcarryx_u32(x302, x229, x277, &x304);
- { uint8_t x306 = (x305 + x230);
- { uint32_t x309; uint32_t x308 = _mulx_u32(x9, x19, &x309);
- { uint32_t x312; uint32_t x311 = _mulx_u32(x9, x21, &x312);
- { uint32_t x315; uint32_t x314 = _mulx_u32(x9, x23, &x315);
- { uint32_t x318; uint32_t x317 = _mulx_u32(x9, x25, &x318);
- { uint32_t x321; uint32_t x320 = _mulx_u32(x9, x27, &x321);
- { uint32_t x324; uint32_t x323 = _mulx_u32(x9, x29, &x324);
- { uint32_t x327; uint32_t x326 = _mulx_u32(x9, x31, &x327);
- { uint32_t x330; uint32_t x329 = _mulx_u32(x9, x30, &x330);
- { uint32_t x332; uint8_t x333 = _addcarryx_u32(0x0, x309, x311, &x332);
- { uint32_t x335; uint8_t x336 = _addcarryx_u32(x333, x312, x314, &x335);
- { uint32_t x338; uint8_t x339 = _addcarryx_u32(x336, x315, x317, &x338);
- { uint32_t x341; uint8_t x342 = _addcarryx_u32(x339, x318, x320, &x341);
- { uint32_t x344; uint8_t x345 = _addcarryx_u32(x342, x321, x323, &x344);
- { uint32_t x347; uint8_t x348 = _addcarryx_u32(x345, x324, x326, &x347);
- { uint32_t x350; uint8_t x351 = _addcarryx_u32(x348, x327, x329, &x350);
- { uint32_t x353; uint8_t _ = _addcarryx_u32(0x0, x351, x330, &x353);
- { uint32_t x356; uint8_t x357 = _addcarryx_u32(0x0, x283, x308, &x356);
- { uint32_t x359; uint8_t x360 = _addcarryx_u32(x357, x286, x332, &x359);
- { uint32_t x362; uint8_t x363 = _addcarryx_u32(x360, x289, x335, &x362);
- { uint32_t x365; uint8_t x366 = _addcarryx_u32(x363, x292, x338, &x365);
- { uint32_t x368; uint8_t x369 = _addcarryx_u32(x366, x295, x341, &x368);
- { uint32_t x371; uint8_t x372 = _addcarryx_u32(x369, x298, x344, &x371);
- { uint32_t x374; uint8_t x375 = _addcarryx_u32(x372, x301, x347, &x374);
- { uint32_t x377; uint8_t x378 = _addcarryx_u32(x375, x304, x350, &x377);
- { uint32_t x380; uint8_t x381 = _addcarryx_u32(x378, x306, x353, &x380);
- { uint32_t x384; uint32_t x383 = _mulx_u32(x356, 0xffffffff, &x384);
- { uint32_t x387; uint32_t x386 = _mulx_u32(x356, 0xffffffff, &x387);
- { uint32_t x390; uint32_t x389 = _mulx_u32(x356, 0xffffffff, &x390);
- { uint32_t x393; uint32_t x392 = _mulx_u32(x356, 0xffffffff, &x393);
- { uint32_t x396; uint32_t x395 = _mulx_u32(x356, 0xffffffff, &x396);
- { uint32_t x399; uint32_t x398 = _mulx_u32(x356, 0xffffffff, &x399);
- { uint32_t x402; uint32_t x401 = _mulx_u32(x356, 0xffffffff, &x402);
- { uint32_t x405; uint32_t x404 = _mulx_u32(x356, 0xffa7ffff, &x405);
- { uint32_t x407; uint8_t x408 = _addcarryx_u32(0x0, x384, x386, &x407);
- { uint32_t x410; uint8_t x411 = _addcarryx_u32(x408, x387, x389, &x410);
- { uint32_t x413; uint8_t x414 = _addcarryx_u32(x411, x390, x392, &x413);
- { uint32_t x416; uint8_t x417 = _addcarryx_u32(x414, x393, x395, &x416);
- { uint32_t x419; uint8_t x420 = _addcarryx_u32(x417, x396, x398, &x419);
- { uint32_t x422; uint8_t x423 = _addcarryx_u32(x420, x399, x401, &x422);
- { uint32_t x425; uint8_t x426 = _addcarryx_u32(x423, x402, x404, &x425);
- { uint32_t x428; uint8_t _ = _addcarryx_u32(0x0, x426, x405, &x428);
- { uint32_t _; uint8_t x432 = _addcarryx_u32(0x0, x356, x383, &_);
- { uint32_t x434; uint8_t x435 = _addcarryx_u32(x432, x359, x407, &x434);
- { uint32_t x437; uint8_t x438 = _addcarryx_u32(x435, x362, x410, &x437);
- { uint32_t x440; uint8_t x441 = _addcarryx_u32(x438, x365, x413, &x440);
- { uint32_t x443; uint8_t x444 = _addcarryx_u32(x441, x368, x416, &x443);
- { uint32_t x446; uint8_t x447 = _addcarryx_u32(x444, x371, x419, &x446);
- { uint32_t x449; uint8_t x450 = _addcarryx_u32(x447, x374, x422, &x449);
- { uint32_t x452; uint8_t x453 = _addcarryx_u32(x450, x377, x425, &x452);
- { uint32_t x455; uint8_t x456 = _addcarryx_u32(x453, x380, x428, &x455);
- { uint8_t x457 = (x456 + x381);
- { uint32_t x460; uint32_t x459 = _mulx_u32(x11, x19, &x460);
- { uint32_t x463; uint32_t x462 = _mulx_u32(x11, x21, &x463);
- { uint32_t x466; uint32_t x465 = _mulx_u32(x11, x23, &x466);
- { uint32_t x469; uint32_t x468 = _mulx_u32(x11, x25, &x469);
- { uint32_t x472; uint32_t x471 = _mulx_u32(x11, x27, &x472);
- { uint32_t x475; uint32_t x474 = _mulx_u32(x11, x29, &x475);
- { uint32_t x478; uint32_t x477 = _mulx_u32(x11, x31, &x478);
- { uint32_t x481; uint32_t x480 = _mulx_u32(x11, x30, &x481);
- { uint32_t x483; uint8_t x484 = _addcarryx_u32(0x0, x460, x462, &x483);
- { uint32_t x486; uint8_t x487 = _addcarryx_u32(x484, x463, x465, &x486);
- { uint32_t x489; uint8_t x490 = _addcarryx_u32(x487, x466, x468, &x489);
- { uint32_t x492; uint8_t x493 = _addcarryx_u32(x490, x469, x471, &x492);
- { uint32_t x495; uint8_t x496 = _addcarryx_u32(x493, x472, x474, &x495);
- { uint32_t x498; uint8_t x499 = _addcarryx_u32(x496, x475, x477, &x498);
- { uint32_t x501; uint8_t x502 = _addcarryx_u32(x499, x478, x480, &x501);
- { uint32_t x504; uint8_t _ = _addcarryx_u32(0x0, x502, x481, &x504);
- { uint32_t x507; uint8_t x508 = _addcarryx_u32(0x0, x434, x459, &x507);
- { uint32_t x510; uint8_t x511 = _addcarryx_u32(x508, x437, x483, &x510);
- { uint32_t x513; uint8_t x514 = _addcarryx_u32(x511, x440, x486, &x513);
- { uint32_t x516; uint8_t x517 = _addcarryx_u32(x514, x443, x489, &x516);
- { uint32_t x519; uint8_t x520 = _addcarryx_u32(x517, x446, x492, &x519);
- { uint32_t x522; uint8_t x523 = _addcarryx_u32(x520, x449, x495, &x522);
- { uint32_t x525; uint8_t x526 = _addcarryx_u32(x523, x452, x498, &x525);
- { uint32_t x528; uint8_t x529 = _addcarryx_u32(x526, x455, x501, &x528);
- { uint32_t x531; uint8_t x532 = _addcarryx_u32(x529, x457, x504, &x531);
- { uint32_t x535; uint32_t x534 = _mulx_u32(x507, 0xffffffff, &x535);
- { uint32_t x538; uint32_t x537 = _mulx_u32(x507, 0xffffffff, &x538);
- { uint32_t x541; uint32_t x540 = _mulx_u32(x507, 0xffffffff, &x541);
- { uint32_t x544; uint32_t x543 = _mulx_u32(x507, 0xffffffff, &x544);
- { uint32_t x547; uint32_t x546 = _mulx_u32(x507, 0xffffffff, &x547);
- { uint32_t x550; uint32_t x549 = _mulx_u32(x507, 0xffffffff, &x550);
- { uint32_t x553; uint32_t x552 = _mulx_u32(x507, 0xffffffff, &x553);
- { uint32_t x556; uint32_t x555 = _mulx_u32(x507, 0xffa7ffff, &x556);
- { uint32_t x558; uint8_t x559 = _addcarryx_u32(0x0, x535, x537, &x558);
- { uint32_t x561; uint8_t x562 = _addcarryx_u32(x559, x538, x540, &x561);
- { uint32_t x564; uint8_t x565 = _addcarryx_u32(x562, x541, x543, &x564);
- { uint32_t x567; uint8_t x568 = _addcarryx_u32(x565, x544, x546, &x567);
- { uint32_t x570; uint8_t x571 = _addcarryx_u32(x568, x547, x549, &x570);
- { uint32_t x573; uint8_t x574 = _addcarryx_u32(x571, x550, x552, &x573);
- { uint32_t x576; uint8_t x577 = _addcarryx_u32(x574, x553, x555, &x576);
- { uint32_t x579; uint8_t _ = _addcarryx_u32(0x0, x577, x556, &x579);
- { uint32_t _; uint8_t x583 = _addcarryx_u32(0x0, x507, x534, &_);
- { uint32_t x585; uint8_t x586 = _addcarryx_u32(x583, x510, x558, &x585);
- { uint32_t x588; uint8_t x589 = _addcarryx_u32(x586, x513, x561, &x588);
- { uint32_t x591; uint8_t x592 = _addcarryx_u32(x589, x516, x564, &x591);
- { uint32_t x594; uint8_t x595 = _addcarryx_u32(x592, x519, x567, &x594);
- { uint32_t x597; uint8_t x598 = _addcarryx_u32(x595, x522, x570, &x597);
- { uint32_t x600; uint8_t x601 = _addcarryx_u32(x598, x525, x573, &x600);
- { uint32_t x603; uint8_t x604 = _addcarryx_u32(x601, x528, x576, &x603);
- { uint32_t x606; uint8_t x607 = _addcarryx_u32(x604, x531, x579, &x606);
- { uint8_t x608 = (x607 + x532);
- { uint32_t x611; uint32_t x610 = _mulx_u32(x13, x19, &x611);
- { uint32_t x614; uint32_t x613 = _mulx_u32(x13, x21, &x614);
- { uint32_t x617; uint32_t x616 = _mulx_u32(x13, x23, &x617);
- { uint32_t x620; uint32_t x619 = _mulx_u32(x13, x25, &x620);
- { uint32_t x623; uint32_t x622 = _mulx_u32(x13, x27, &x623);
- { uint32_t x626; uint32_t x625 = _mulx_u32(x13, x29, &x626);
- { uint32_t x629; uint32_t x628 = _mulx_u32(x13, x31, &x629);
- { uint32_t x632; uint32_t x631 = _mulx_u32(x13, x30, &x632);
- { uint32_t x634; uint8_t x635 = _addcarryx_u32(0x0, x611, x613, &x634);
- { uint32_t x637; uint8_t x638 = _addcarryx_u32(x635, x614, x616, &x637);
- { uint32_t x640; uint8_t x641 = _addcarryx_u32(x638, x617, x619, &x640);
- { uint32_t x643; uint8_t x644 = _addcarryx_u32(x641, x620, x622, &x643);
- { uint32_t x646; uint8_t x647 = _addcarryx_u32(x644, x623, x625, &x646);
- { uint32_t x649; uint8_t x650 = _addcarryx_u32(x647, x626, x628, &x649);
- { uint32_t x652; uint8_t x653 = _addcarryx_u32(x650, x629, x631, &x652);
- { uint32_t x655; uint8_t _ = _addcarryx_u32(0x0, x653, x632, &x655);
- { uint32_t x658; uint8_t x659 = _addcarryx_u32(0x0, x585, x610, &x658);
- { uint32_t x661; uint8_t x662 = _addcarryx_u32(x659, x588, x634, &x661);
- { uint32_t x664; uint8_t x665 = _addcarryx_u32(x662, x591, x637, &x664);
- { uint32_t x667; uint8_t x668 = _addcarryx_u32(x665, x594, x640, &x667);
- { uint32_t x670; uint8_t x671 = _addcarryx_u32(x668, x597, x643, &x670);
- { uint32_t x673; uint8_t x674 = _addcarryx_u32(x671, x600, x646, &x673);
- { uint32_t x676; uint8_t x677 = _addcarryx_u32(x674, x603, x649, &x676);
- { uint32_t x679; uint8_t x680 = _addcarryx_u32(x677, x606, x652, &x679);
- { uint32_t x682; uint8_t x683 = _addcarryx_u32(x680, x608, x655, &x682);
- { uint32_t x686; uint32_t x685 = _mulx_u32(x658, 0xffffffff, &x686);
- { uint32_t x689; uint32_t x688 = _mulx_u32(x658, 0xffffffff, &x689);
- { uint32_t x692; uint32_t x691 = _mulx_u32(x658, 0xffffffff, &x692);
- { uint32_t x695; uint32_t x694 = _mulx_u32(x658, 0xffffffff, &x695);
- { uint32_t x698; uint32_t x697 = _mulx_u32(x658, 0xffffffff, &x698);
- { uint32_t x701; uint32_t x700 = _mulx_u32(x658, 0xffffffff, &x701);
- { uint32_t x704; uint32_t x703 = _mulx_u32(x658, 0xffffffff, &x704);
- { uint32_t x707; uint32_t x706 = _mulx_u32(x658, 0xffa7ffff, &x707);
- { uint32_t x709; uint8_t x710 = _addcarryx_u32(0x0, x686, x688, &x709);
- { uint32_t x712; uint8_t x713 = _addcarryx_u32(x710, x689, x691, &x712);
- { uint32_t x715; uint8_t x716 = _addcarryx_u32(x713, x692, x694, &x715);
- { uint32_t x718; uint8_t x719 = _addcarryx_u32(x716, x695, x697, &x718);
- { uint32_t x721; uint8_t x722 = _addcarryx_u32(x719, x698, x700, &x721);
- { uint32_t x724; uint8_t x725 = _addcarryx_u32(x722, x701, x703, &x724);
- { uint32_t x727; uint8_t x728 = _addcarryx_u32(x725, x704, x706, &x727);
- { uint32_t x730; uint8_t _ = _addcarryx_u32(0x0, x728, x707, &x730);
- { uint32_t _; uint8_t x734 = _addcarryx_u32(0x0, x658, x685, &_);
- { uint32_t x736; uint8_t x737 = _addcarryx_u32(x734, x661, x709, &x736);
- { uint32_t x739; uint8_t x740 = _addcarryx_u32(x737, x664, x712, &x739);
- { uint32_t x742; uint8_t x743 = _addcarryx_u32(x740, x667, x715, &x742);
- { uint32_t x745; uint8_t x746 = _addcarryx_u32(x743, x670, x718, &x745);
- { uint32_t x748; uint8_t x749 = _addcarryx_u32(x746, x673, x721, &x748);
- { uint32_t x751; uint8_t x752 = _addcarryx_u32(x749, x676, x724, &x751);
- { uint32_t x754; uint8_t x755 = _addcarryx_u32(x752, x679, x727, &x754);
- { uint32_t x757; uint8_t x758 = _addcarryx_u32(x755, x682, x730, &x757);
- { uint8_t x759 = (x758 + x683);
- { uint32_t x762; uint32_t x761 = _mulx_u32(x15, x19, &x762);
- { uint32_t x765; uint32_t x764 = _mulx_u32(x15, x21, &x765);
- { uint32_t x768; uint32_t x767 = _mulx_u32(x15, x23, &x768);
- { uint32_t x771; uint32_t x770 = _mulx_u32(x15, x25, &x771);
- { uint32_t x774; uint32_t x773 = _mulx_u32(x15, x27, &x774);
- { uint32_t x777; uint32_t x776 = _mulx_u32(x15, x29, &x777);
- { uint32_t x780; uint32_t x779 = _mulx_u32(x15, x31, &x780);
- { uint32_t x783; uint32_t x782 = _mulx_u32(x15, x30, &x783);
- { uint32_t x785; uint8_t x786 = _addcarryx_u32(0x0, x762, x764, &x785);
- { uint32_t x788; uint8_t x789 = _addcarryx_u32(x786, x765, x767, &x788);
- { uint32_t x791; uint8_t x792 = _addcarryx_u32(x789, x768, x770, &x791);
- { uint32_t x794; uint8_t x795 = _addcarryx_u32(x792, x771, x773, &x794);
- { uint32_t x797; uint8_t x798 = _addcarryx_u32(x795, x774, x776, &x797);
- { uint32_t x800; uint8_t x801 = _addcarryx_u32(x798, x777, x779, &x800);
- { uint32_t x803; uint8_t x804 = _addcarryx_u32(x801, x780, x782, &x803);
- { uint32_t x806; uint8_t _ = _addcarryx_u32(0x0, x804, x783, &x806);
- { uint32_t x809; uint8_t x810 = _addcarryx_u32(0x0, x736, x761, &x809);
- { uint32_t x812; uint8_t x813 = _addcarryx_u32(x810, x739, x785, &x812);
- { uint32_t x815; uint8_t x816 = _addcarryx_u32(x813, x742, x788, &x815);
- { uint32_t x818; uint8_t x819 = _addcarryx_u32(x816, x745, x791, &x818);
- { uint32_t x821; uint8_t x822 = _addcarryx_u32(x819, x748, x794, &x821);
- { uint32_t x824; uint8_t x825 = _addcarryx_u32(x822, x751, x797, &x824);
- { uint32_t x827; uint8_t x828 = _addcarryx_u32(x825, x754, x800, &x827);
- { uint32_t x830; uint8_t x831 = _addcarryx_u32(x828, x757, x803, &x830);
- { uint32_t x833; uint8_t x834 = _addcarryx_u32(x831, x759, x806, &x833);
- { uint32_t x837; uint32_t x836 = _mulx_u32(x809, 0xffffffff, &x837);
- { uint32_t x840; uint32_t x839 = _mulx_u32(x809, 0xffffffff, &x840);
- { uint32_t x843; uint32_t x842 = _mulx_u32(x809, 0xffffffff, &x843);
- { uint32_t x846; uint32_t x845 = _mulx_u32(x809, 0xffffffff, &x846);
- { uint32_t x849; uint32_t x848 = _mulx_u32(x809, 0xffffffff, &x849);
- { uint32_t x852; uint32_t x851 = _mulx_u32(x809, 0xffffffff, &x852);
- { uint32_t x855; uint32_t x854 = _mulx_u32(x809, 0xffffffff, &x855);
- { uint32_t x858; uint32_t x857 = _mulx_u32(x809, 0xffa7ffff, &x858);
- { uint32_t x860; uint8_t x861 = _addcarryx_u32(0x0, x837, x839, &x860);
- { uint32_t x863; uint8_t x864 = _addcarryx_u32(x861, x840, x842, &x863);
- { uint32_t x866; uint8_t x867 = _addcarryx_u32(x864, x843, x845, &x866);
- { uint32_t x869; uint8_t x870 = _addcarryx_u32(x867, x846, x848, &x869);
- { uint32_t x872; uint8_t x873 = _addcarryx_u32(x870, x849, x851, &x872);
- { uint32_t x875; uint8_t x876 = _addcarryx_u32(x873, x852, x854, &x875);
- { uint32_t x878; uint8_t x879 = _addcarryx_u32(x876, x855, x857, &x878);
- { uint32_t x881; uint8_t _ = _addcarryx_u32(0x0, x879, x858, &x881);
- { uint32_t _; uint8_t x885 = _addcarryx_u32(0x0, x809, x836, &_);
- { uint32_t x887; uint8_t x888 = _addcarryx_u32(x885, x812, x860, &x887);
- { uint32_t x890; uint8_t x891 = _addcarryx_u32(x888, x815, x863, &x890);
- { uint32_t x893; uint8_t x894 = _addcarryx_u32(x891, x818, x866, &x893);
- { uint32_t x896; uint8_t x897 = _addcarryx_u32(x894, x821, x869, &x896);
- { uint32_t x899; uint8_t x900 = _addcarryx_u32(x897, x824, x872, &x899);
- { uint32_t x902; uint8_t x903 = _addcarryx_u32(x900, x827, x875, &x902);
- { uint32_t x905; uint8_t x906 = _addcarryx_u32(x903, x830, x878, &x905);
- { uint32_t x908; uint8_t x909 = _addcarryx_u32(x906, x833, x881, &x908);
- { uint8_t x910 = (x909 + x834);
- { uint32_t x913; uint32_t x912 = _mulx_u32(x17, x19, &x913);
- { uint32_t x916; uint32_t x915 = _mulx_u32(x17, x21, &x916);
- { uint32_t x919; uint32_t x918 = _mulx_u32(x17, x23, &x919);
- { uint32_t x922; uint32_t x921 = _mulx_u32(x17, x25, &x922);
- { uint32_t x925; uint32_t x924 = _mulx_u32(x17, x27, &x925);
- { uint32_t x928; uint32_t x927 = _mulx_u32(x17, x29, &x928);
- { uint32_t x931; uint32_t x930 = _mulx_u32(x17, x31, &x931);
- { uint32_t x934; uint32_t x933 = _mulx_u32(x17, x30, &x934);
- { uint32_t x936; uint8_t x937 = _addcarryx_u32(0x0, x913, x915, &x936);
- { uint32_t x939; uint8_t x940 = _addcarryx_u32(x937, x916, x918, &x939);
- { uint32_t x942; uint8_t x943 = _addcarryx_u32(x940, x919, x921, &x942);
- { uint32_t x945; uint8_t x946 = _addcarryx_u32(x943, x922, x924, &x945);
- { uint32_t x948; uint8_t x949 = _addcarryx_u32(x946, x925, x927, &x948);
- { uint32_t x951; uint8_t x952 = _addcarryx_u32(x949, x928, x930, &x951);
- { uint32_t x954; uint8_t x955 = _addcarryx_u32(x952, x931, x933, &x954);
- { uint32_t x957; uint8_t _ = _addcarryx_u32(0x0, x955, x934, &x957);
- { uint32_t x960; uint8_t x961 = _addcarryx_u32(0x0, x887, x912, &x960);
- { uint32_t x963; uint8_t x964 = _addcarryx_u32(x961, x890, x936, &x963);
- { uint32_t x966; uint8_t x967 = _addcarryx_u32(x964, x893, x939, &x966);
- { uint32_t x969; uint8_t x970 = _addcarryx_u32(x967, x896, x942, &x969);
- { uint32_t x972; uint8_t x973 = _addcarryx_u32(x970, x899, x945, &x972);
- { uint32_t x975; uint8_t x976 = _addcarryx_u32(x973, x902, x948, &x975);
- { uint32_t x978; uint8_t x979 = _addcarryx_u32(x976, x905, x951, &x978);
- { uint32_t x981; uint8_t x982 = _addcarryx_u32(x979, x908, x954, &x981);
- { uint32_t x984; uint8_t x985 = _addcarryx_u32(x982, x910, x957, &x984);
- { uint32_t x988; uint32_t x987 = _mulx_u32(x960, 0xffffffff, &x988);
- { uint32_t x991; uint32_t x990 = _mulx_u32(x960, 0xffffffff, &x991);
- { uint32_t x994; uint32_t x993 = _mulx_u32(x960, 0xffffffff, &x994);
- { uint32_t x997; uint32_t x996 = _mulx_u32(x960, 0xffffffff, &x997);
- { uint32_t x1000; uint32_t x999 = _mulx_u32(x960, 0xffffffff, &x1000);
- { uint32_t x1003; uint32_t x1002 = _mulx_u32(x960, 0xffffffff, &x1003);
- { uint32_t x1006; uint32_t x1005 = _mulx_u32(x960, 0xffffffff, &x1006);
- { uint32_t x1009; uint32_t x1008 = _mulx_u32(x960, 0xffa7ffff, &x1009);
- { uint32_t x1011; uint8_t x1012 = _addcarryx_u32(0x0, x988, x990, &x1011);
- { uint32_t x1014; uint8_t x1015 = _addcarryx_u32(x1012, x991, x993, &x1014);
- { uint32_t x1017; uint8_t x1018 = _addcarryx_u32(x1015, x994, x996, &x1017);
- { uint32_t x1020; uint8_t x1021 = _addcarryx_u32(x1018, x997, x999, &x1020);
- { uint32_t x1023; uint8_t x1024 = _addcarryx_u32(x1021, x1000, x1002, &x1023);
- { uint32_t x1026; uint8_t x1027 = _addcarryx_u32(x1024, x1003, x1005, &x1026);
- { uint32_t x1029; uint8_t x1030 = _addcarryx_u32(x1027, x1006, x1008, &x1029);
- { uint32_t x1032; uint8_t _ = _addcarryx_u32(0x0, x1030, x1009, &x1032);
- { uint32_t _; uint8_t x1036 = _addcarryx_u32(0x0, x960, x987, &_);
- { uint32_t x1038; uint8_t x1039 = _addcarryx_u32(x1036, x963, x1011, &x1038);
- { uint32_t x1041; uint8_t x1042 = _addcarryx_u32(x1039, x966, x1014, &x1041);
- { uint32_t x1044; uint8_t x1045 = _addcarryx_u32(x1042, x969, x1017, &x1044);
- { uint32_t x1047; uint8_t x1048 = _addcarryx_u32(x1045, x972, x1020, &x1047);
- { uint32_t x1050; uint8_t x1051 = _addcarryx_u32(x1048, x975, x1023, &x1050);
- { uint32_t x1053; uint8_t x1054 = _addcarryx_u32(x1051, x978, x1026, &x1053);
- { uint32_t x1056; uint8_t x1057 = _addcarryx_u32(x1054, x981, x1029, &x1056);
- { uint32_t x1059; uint8_t x1060 = _addcarryx_u32(x1057, x984, x1032, &x1059);
- { uint8_t x1061 = (x1060 + x985);
- { uint32_t x1064; uint32_t x1063 = _mulx_u32(x16, x19, &x1064);
- { uint32_t x1067; uint32_t x1066 = _mulx_u32(x16, x21, &x1067);
- { uint32_t x1070; uint32_t x1069 = _mulx_u32(x16, x23, &x1070);
- { uint32_t x1073; uint32_t x1072 = _mulx_u32(x16, x25, &x1073);
- { uint32_t x1076; uint32_t x1075 = _mulx_u32(x16, x27, &x1076);
- { uint32_t x1079; uint32_t x1078 = _mulx_u32(x16, x29, &x1079);
- { uint32_t x1082; uint32_t x1081 = _mulx_u32(x16, x31, &x1082);
- { uint32_t x1085; uint32_t x1084 = _mulx_u32(x16, x30, &x1085);
- { uint32_t x1087; uint8_t x1088 = _addcarryx_u32(0x0, x1064, x1066, &x1087);
- { uint32_t x1090; uint8_t x1091 = _addcarryx_u32(x1088, x1067, x1069, &x1090);
- { uint32_t x1093; uint8_t x1094 = _addcarryx_u32(x1091, x1070, x1072, &x1093);
- { uint32_t x1096; uint8_t x1097 = _addcarryx_u32(x1094, x1073, x1075, &x1096);
- { uint32_t x1099; uint8_t x1100 = _addcarryx_u32(x1097, x1076, x1078, &x1099);
- { uint32_t x1102; uint8_t x1103 = _addcarryx_u32(x1100, x1079, x1081, &x1102);
- { uint32_t x1105; uint8_t x1106 = _addcarryx_u32(x1103, x1082, x1084, &x1105);
- { uint32_t x1108; uint8_t _ = _addcarryx_u32(0x0, x1106, x1085, &x1108);
- { uint32_t x1111; uint8_t x1112 = _addcarryx_u32(0x0, x1038, x1063, &x1111);
- { uint32_t x1114; uint8_t x1115 = _addcarryx_u32(x1112, x1041, x1087, &x1114);
- { uint32_t x1117; uint8_t x1118 = _addcarryx_u32(x1115, x1044, x1090, &x1117);
- { uint32_t x1120; uint8_t x1121 = _addcarryx_u32(x1118, x1047, x1093, &x1120);
- { uint32_t x1123; uint8_t x1124 = _addcarryx_u32(x1121, x1050, x1096, &x1123);
- { uint32_t x1126; uint8_t x1127 = _addcarryx_u32(x1124, x1053, x1099, &x1126);
- { uint32_t x1129; uint8_t x1130 = _addcarryx_u32(x1127, x1056, x1102, &x1129);
- { uint32_t x1132; uint8_t x1133 = _addcarryx_u32(x1130, x1059, x1105, &x1132);
- { uint32_t x1135; uint8_t x1136 = _addcarryx_u32(x1133, x1061, x1108, &x1135);
- { uint32_t x1139; uint32_t x1138 = _mulx_u32(x1111, 0xffffffff, &x1139);
- { uint32_t x1142; uint32_t x1141 = _mulx_u32(x1111, 0xffffffff, &x1142);
- { uint32_t x1145; uint32_t x1144 = _mulx_u32(x1111, 0xffffffff, &x1145);
- { uint32_t x1148; uint32_t x1147 = _mulx_u32(x1111, 0xffffffff, &x1148);
- { uint32_t x1151; uint32_t x1150 = _mulx_u32(x1111, 0xffffffff, &x1151);
- { uint32_t x1154; uint32_t x1153 = _mulx_u32(x1111, 0xffffffff, &x1154);
- { uint32_t x1157; uint32_t x1156 = _mulx_u32(x1111, 0xffffffff, &x1157);
- { uint32_t x1160; uint32_t x1159 = _mulx_u32(x1111, 0xffa7ffff, &x1160);
- { uint32_t x1162; uint8_t x1163 = _addcarryx_u32(0x0, x1139, x1141, &x1162);
- { uint32_t x1165; uint8_t x1166 = _addcarryx_u32(x1163, x1142, x1144, &x1165);
- { uint32_t x1168; uint8_t x1169 = _addcarryx_u32(x1166, x1145, x1147, &x1168);
- { uint32_t x1171; uint8_t x1172 = _addcarryx_u32(x1169, x1148, x1150, &x1171);
- { uint32_t x1174; uint8_t x1175 = _addcarryx_u32(x1172, x1151, x1153, &x1174);
- { uint32_t x1177; uint8_t x1178 = _addcarryx_u32(x1175, x1154, x1156, &x1177);
- { uint32_t x1180; uint8_t x1181 = _addcarryx_u32(x1178, x1157, x1159, &x1180);
- { uint32_t x1183; uint8_t _ = _addcarryx_u32(0x0, x1181, x1160, &x1183);
- { uint32_t _; uint8_t x1187 = _addcarryx_u32(0x0, x1111, x1138, &_);
- { uint32_t x1189; uint8_t x1190 = _addcarryx_u32(x1187, x1114, x1162, &x1189);
- { uint32_t x1192; uint8_t x1193 = _addcarryx_u32(x1190, x1117, x1165, &x1192);
- { uint32_t x1195; uint8_t x1196 = _addcarryx_u32(x1193, x1120, x1168, &x1195);
- { uint32_t x1198; uint8_t x1199 = _addcarryx_u32(x1196, x1123, x1171, &x1198);
- { uint32_t x1201; uint8_t x1202 = _addcarryx_u32(x1199, x1126, x1174, &x1201);
- { uint32_t x1204; uint8_t x1205 = _addcarryx_u32(x1202, x1129, x1177, &x1204);
- { uint32_t x1207; uint8_t x1208 = _addcarryx_u32(x1205, x1132, x1180, &x1207);
- { uint32_t x1210; uint8_t x1211 = _addcarryx_u32(x1208, x1135, x1183, &x1210);
- { uint8_t x1212 = (x1211 + x1136);
- { uint32_t x1214; uint8_t x1215 = _subborrow_u32(0x0, x1189, 0xffffffff, &x1214);
- { uint32_t x1217; uint8_t x1218 = _subborrow_u32(x1215, x1192, 0xffffffff, &x1217);
- { uint32_t x1220; uint8_t x1221 = _subborrow_u32(x1218, x1195, 0xffffffff, &x1220);
- { uint32_t x1223; uint8_t x1224 = _subborrow_u32(x1221, x1198, 0xffffffff, &x1223);
- { uint32_t x1226; uint8_t x1227 = _subborrow_u32(x1224, x1201, 0xffffffff, &x1226);
- { uint32_t x1229; uint8_t x1230 = _subborrow_u32(x1227, x1204, 0xffffffff, &x1229);
- { uint32_t x1232; uint8_t x1233 = _subborrow_u32(x1230, x1207, 0xffffffff, &x1232);
- { uint32_t x1235; uint8_t x1236 = _subborrow_u32(x1233, x1210, 0xffa7ffff, &x1235);
- { uint32_t _; uint8_t x1239 = _subborrow_u32(x1236, x1212, 0x0, &_);
- { uint32_t x1240 = cmovznz32(x1239, x1235, x1210);
- { uint32_t x1241 = cmovznz32(x1239, x1232, x1207);
- { uint32_t x1242 = cmovznz32(x1239, x1229, x1204);
- { uint32_t x1243 = cmovznz32(x1239, x1226, x1201);
- { uint32_t x1244 = cmovznz32(x1239, x1223, x1198);
- { uint32_t x1245 = cmovznz32(x1239, x1220, x1195);
- { uint32_t x1246 = cmovznz32(x1239, x1217, x1192);
- { uint32_t x1247 = cmovznz32(x1239, x1214, x1189);
- out[0] = x1247;
- out[1] = x1246;
- out[2] = x1245;
- out[3] = x1244;
- out[4] = x1243;
- out[5] = x1242;
- out[6] = x1241;
- out[7] = x1240;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/femul.v b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/femul.v
deleted file mode 100644
index 9e4fe9b9e..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m88x2e240m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/femulDisplay.log b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/femulDisplay.log
deleted file mode 100644
index 6f75c2fe9..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,423 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint32_t x33, uint32_t x34 = mulx_u32(x5, x19);
- uint32_t x36, uint32_t x37 = mulx_u32(x5, x21);
- uint32_t x39, uint32_t x40 = mulx_u32(x5, x23);
- uint32_t x42, uint32_t x43 = mulx_u32(x5, x25);
- uint32_t x45, uint32_t x46 = mulx_u32(x5, x27);
- uint32_t x48, uint32_t x49 = mulx_u32(x5, x29);
- uint32_t x51, uint32_t x52 = mulx_u32(x5, x31);
- uint32_t x54, uint32_t x55 = mulx_u32(x5, x30);
- uint32_t x57, uint8_t x58 = addcarryx_u32(0x0, x34, x36);
- uint32_t x60, uint8_t x61 = addcarryx_u32(x58, x37, x39);
- uint32_t x63, uint8_t x64 = addcarryx_u32(x61, x40, x42);
- uint32_t x66, uint8_t x67 = addcarryx_u32(x64, x43, x45);
- uint32_t x69, uint8_t x70 = addcarryx_u32(x67, x46, x48);
- uint32_t x72, uint8_t x73 = addcarryx_u32(x70, x49, x51);
- uint32_t x75, uint8_t x76 = addcarryx_u32(x73, x52, x54);
- uint32_t x78, uint8_t _ = addcarryx_u32(0x0, x76, x55);
- uint32_t x81, uint32_t x82 = mulx_u32(x33, 0xffffffff);
- uint32_t x84, uint32_t x85 = mulx_u32(x33, 0xffffffff);
- uint32_t x87, uint32_t x88 = mulx_u32(x33, 0xffffffff);
- uint32_t x90, uint32_t x91 = mulx_u32(x33, 0xffffffff);
- uint32_t x93, uint32_t x94 = mulx_u32(x33, 0xffffffff);
- uint32_t x96, uint32_t x97 = mulx_u32(x33, 0xffffffff);
- uint32_t x99, uint32_t x100 = mulx_u32(x33, 0xffffffff);
- uint32_t x102, uint32_t x103 = mulx_u32(x33, 0xffa7ffff);
- uint32_t x105, uint8_t x106 = addcarryx_u32(0x0, x82, x84);
- uint32_t x108, uint8_t x109 = addcarryx_u32(x106, x85, x87);
- uint32_t x111, uint8_t x112 = addcarryx_u32(x109, x88, x90);
- uint32_t x114, uint8_t x115 = addcarryx_u32(x112, x91, x93);
- uint32_t x117, uint8_t x118 = addcarryx_u32(x115, x94, x96);
- uint32_t x120, uint8_t x121 = addcarryx_u32(x118, x97, x99);
- uint32_t x123, uint8_t x124 = addcarryx_u32(x121, x100, x102);
- uint32_t x126, uint8_t _ = addcarryx_u32(0x0, x124, x103);
- uint32_t _, uint8_t x130 = addcarryx_u32(0x0, x33, x81);
- uint32_t x132, uint8_t x133 = addcarryx_u32(x130, x57, x105);
- uint32_t x135, uint8_t x136 = addcarryx_u32(x133, x60, x108);
- uint32_t x138, uint8_t x139 = addcarryx_u32(x136, x63, x111);
- uint32_t x141, uint8_t x142 = addcarryx_u32(x139, x66, x114);
- uint32_t x144, uint8_t x145 = addcarryx_u32(x142, x69, x117);
- uint32_t x147, uint8_t x148 = addcarryx_u32(x145, x72, x120);
- uint32_t x150, uint8_t x151 = addcarryx_u32(x148, x75, x123);
- uint32_t x153, uint8_t x154 = addcarryx_u32(x151, x78, x126);
- uint8_t x155 = (x154 + 0x0);
- uint32_t x157, uint32_t x158 = mulx_u32(x7, x19);
- uint32_t x160, uint32_t x161 = mulx_u32(x7, x21);
- uint32_t x163, uint32_t x164 = mulx_u32(x7, x23);
- uint32_t x166, uint32_t x167 = mulx_u32(x7, x25);
- uint32_t x169, uint32_t x170 = mulx_u32(x7, x27);
- uint32_t x172, uint32_t x173 = mulx_u32(x7, x29);
- uint32_t x175, uint32_t x176 = mulx_u32(x7, x31);
- uint32_t x178, uint32_t x179 = mulx_u32(x7, x30);
- uint32_t x181, uint8_t x182 = addcarryx_u32(0x0, x158, x160);
- uint32_t x184, uint8_t x185 = addcarryx_u32(x182, x161, x163);
- uint32_t x187, uint8_t x188 = addcarryx_u32(x185, x164, x166);
- uint32_t x190, uint8_t x191 = addcarryx_u32(x188, x167, x169);
- uint32_t x193, uint8_t x194 = addcarryx_u32(x191, x170, x172);
- uint32_t x196, uint8_t x197 = addcarryx_u32(x194, x173, x175);
- uint32_t x199, uint8_t x200 = addcarryx_u32(x197, x176, x178);
- uint32_t x202, uint8_t _ = addcarryx_u32(0x0, x200, x179);
- uint32_t x205, uint8_t x206 = addcarryx_u32(0x0, x132, x157);
- uint32_t x208, uint8_t x209 = addcarryx_u32(x206, x135, x181);
- uint32_t x211, uint8_t x212 = addcarryx_u32(x209, x138, x184);
- uint32_t x214, uint8_t x215 = addcarryx_u32(x212, x141, x187);
- uint32_t x217, uint8_t x218 = addcarryx_u32(x215, x144, x190);
- uint32_t x220, uint8_t x221 = addcarryx_u32(x218, x147, x193);
- uint32_t x223, uint8_t x224 = addcarryx_u32(x221, x150, x196);
- uint32_t x226, uint8_t x227 = addcarryx_u32(x224, x153, x199);
- uint32_t x229, uint8_t x230 = addcarryx_u32(x227, x155, x202);
- uint32_t x232, uint32_t x233 = mulx_u32(x205, 0xffffffff);
- uint32_t x235, uint32_t x236 = mulx_u32(x205, 0xffffffff);
- uint32_t x238, uint32_t x239 = mulx_u32(x205, 0xffffffff);
- uint32_t x241, uint32_t x242 = mulx_u32(x205, 0xffffffff);
- uint32_t x244, uint32_t x245 = mulx_u32(x205, 0xffffffff);
- uint32_t x247, uint32_t x248 = mulx_u32(x205, 0xffffffff);
- uint32_t x250, uint32_t x251 = mulx_u32(x205, 0xffffffff);
- uint32_t x253, uint32_t x254 = mulx_u32(x205, 0xffa7ffff);
- uint32_t x256, uint8_t x257 = addcarryx_u32(0x0, x233, x235);
- uint32_t x259, uint8_t x260 = addcarryx_u32(x257, x236, x238);
- uint32_t x262, uint8_t x263 = addcarryx_u32(x260, x239, x241);
- uint32_t x265, uint8_t x266 = addcarryx_u32(x263, x242, x244);
- uint32_t x268, uint8_t x269 = addcarryx_u32(x266, x245, x247);
- uint32_t x271, uint8_t x272 = addcarryx_u32(x269, x248, x250);
- uint32_t x274, uint8_t x275 = addcarryx_u32(x272, x251, x253);
- uint32_t x277, uint8_t _ = addcarryx_u32(0x0, x275, x254);
- uint32_t _, uint8_t x281 = addcarryx_u32(0x0, x205, x232);
- uint32_t x283, uint8_t x284 = addcarryx_u32(x281, x208, x256);
- uint32_t x286, uint8_t x287 = addcarryx_u32(x284, x211, x259);
- uint32_t x289, uint8_t x290 = addcarryx_u32(x287, x214, x262);
- uint32_t x292, uint8_t x293 = addcarryx_u32(x290, x217, x265);
- uint32_t x295, uint8_t x296 = addcarryx_u32(x293, x220, x268);
- uint32_t x298, uint8_t x299 = addcarryx_u32(x296, x223, x271);
- uint32_t x301, uint8_t x302 = addcarryx_u32(x299, x226, x274);
- uint32_t x304, uint8_t x305 = addcarryx_u32(x302, x229, x277);
- uint8_t x306 = (x305 + x230);
- uint32_t x308, uint32_t x309 = mulx_u32(x9, x19);
- uint32_t x311, uint32_t x312 = mulx_u32(x9, x21);
- uint32_t x314, uint32_t x315 = mulx_u32(x9, x23);
- uint32_t x317, uint32_t x318 = mulx_u32(x9, x25);
- uint32_t x320, uint32_t x321 = mulx_u32(x9, x27);
- uint32_t x323, uint32_t x324 = mulx_u32(x9, x29);
- uint32_t x326, uint32_t x327 = mulx_u32(x9, x31);
- uint32_t x329, uint32_t x330 = mulx_u32(x9, x30);
- uint32_t x332, uint8_t x333 = addcarryx_u32(0x0, x309, x311);
- uint32_t x335, uint8_t x336 = addcarryx_u32(x333, x312, x314);
- uint32_t x338, uint8_t x339 = addcarryx_u32(x336, x315, x317);
- uint32_t x341, uint8_t x342 = addcarryx_u32(x339, x318, x320);
- uint32_t x344, uint8_t x345 = addcarryx_u32(x342, x321, x323);
- uint32_t x347, uint8_t x348 = addcarryx_u32(x345, x324, x326);
- uint32_t x350, uint8_t x351 = addcarryx_u32(x348, x327, x329);
- uint32_t x353, uint8_t _ = addcarryx_u32(0x0, x351, x330);
- uint32_t x356, uint8_t x357 = addcarryx_u32(0x0, x283, x308);
- uint32_t x359, uint8_t x360 = addcarryx_u32(x357, x286, x332);
- uint32_t x362, uint8_t x363 = addcarryx_u32(x360, x289, x335);
- uint32_t x365, uint8_t x366 = addcarryx_u32(x363, x292, x338);
- uint32_t x368, uint8_t x369 = addcarryx_u32(x366, x295, x341);
- uint32_t x371, uint8_t x372 = addcarryx_u32(x369, x298, x344);
- uint32_t x374, uint8_t x375 = addcarryx_u32(x372, x301, x347);
- uint32_t x377, uint8_t x378 = addcarryx_u32(x375, x304, x350);
- uint32_t x380, uint8_t x381 = addcarryx_u32(x378, x306, x353);
- uint32_t x383, uint32_t x384 = mulx_u32(x356, 0xffffffff);
- uint32_t x386, uint32_t x387 = mulx_u32(x356, 0xffffffff);
- uint32_t x389, uint32_t x390 = mulx_u32(x356, 0xffffffff);
- uint32_t x392, uint32_t x393 = mulx_u32(x356, 0xffffffff);
- uint32_t x395, uint32_t x396 = mulx_u32(x356, 0xffffffff);
- uint32_t x398, uint32_t x399 = mulx_u32(x356, 0xffffffff);
- uint32_t x401, uint32_t x402 = mulx_u32(x356, 0xffffffff);
- uint32_t x404, uint32_t x405 = mulx_u32(x356, 0xffa7ffff);
- uint32_t x407, uint8_t x408 = addcarryx_u32(0x0, x384, x386);
- uint32_t x410, uint8_t x411 = addcarryx_u32(x408, x387, x389);
- uint32_t x413, uint8_t x414 = addcarryx_u32(x411, x390, x392);
- uint32_t x416, uint8_t x417 = addcarryx_u32(x414, x393, x395);
- uint32_t x419, uint8_t x420 = addcarryx_u32(x417, x396, x398);
- uint32_t x422, uint8_t x423 = addcarryx_u32(x420, x399, x401);
- uint32_t x425, uint8_t x426 = addcarryx_u32(x423, x402, x404);
- uint32_t x428, uint8_t _ = addcarryx_u32(0x0, x426, x405);
- uint32_t _, uint8_t x432 = addcarryx_u32(0x0, x356, x383);
- uint32_t x434, uint8_t x435 = addcarryx_u32(x432, x359, x407);
- uint32_t x437, uint8_t x438 = addcarryx_u32(x435, x362, x410);
- uint32_t x440, uint8_t x441 = addcarryx_u32(x438, x365, x413);
- uint32_t x443, uint8_t x444 = addcarryx_u32(x441, x368, x416);
- uint32_t x446, uint8_t x447 = addcarryx_u32(x444, x371, x419);
- uint32_t x449, uint8_t x450 = addcarryx_u32(x447, x374, x422);
- uint32_t x452, uint8_t x453 = addcarryx_u32(x450, x377, x425);
- uint32_t x455, uint8_t x456 = addcarryx_u32(x453, x380, x428);
- uint8_t x457 = (x456 + x381);
- uint32_t x459, uint32_t x460 = mulx_u32(x11, x19);
- uint32_t x462, uint32_t x463 = mulx_u32(x11, x21);
- uint32_t x465, uint32_t x466 = mulx_u32(x11, x23);
- uint32_t x468, uint32_t x469 = mulx_u32(x11, x25);
- uint32_t x471, uint32_t x472 = mulx_u32(x11, x27);
- uint32_t x474, uint32_t x475 = mulx_u32(x11, x29);
- uint32_t x477, uint32_t x478 = mulx_u32(x11, x31);
- uint32_t x480, uint32_t x481 = mulx_u32(x11, x30);
- uint32_t x483, uint8_t x484 = addcarryx_u32(0x0, x460, x462);
- uint32_t x486, uint8_t x487 = addcarryx_u32(x484, x463, x465);
- uint32_t x489, uint8_t x490 = addcarryx_u32(x487, x466, x468);
- uint32_t x492, uint8_t x493 = addcarryx_u32(x490, x469, x471);
- uint32_t x495, uint8_t x496 = addcarryx_u32(x493, x472, x474);
- uint32_t x498, uint8_t x499 = addcarryx_u32(x496, x475, x477);
- uint32_t x501, uint8_t x502 = addcarryx_u32(x499, x478, x480);
- uint32_t x504, uint8_t _ = addcarryx_u32(0x0, x502, x481);
- uint32_t x507, uint8_t x508 = addcarryx_u32(0x0, x434, x459);
- uint32_t x510, uint8_t x511 = addcarryx_u32(x508, x437, x483);
- uint32_t x513, uint8_t x514 = addcarryx_u32(x511, x440, x486);
- uint32_t x516, uint8_t x517 = addcarryx_u32(x514, x443, x489);
- uint32_t x519, uint8_t x520 = addcarryx_u32(x517, x446, x492);
- uint32_t x522, uint8_t x523 = addcarryx_u32(x520, x449, x495);
- uint32_t x525, uint8_t x526 = addcarryx_u32(x523, x452, x498);
- uint32_t x528, uint8_t x529 = addcarryx_u32(x526, x455, x501);
- uint32_t x531, uint8_t x532 = addcarryx_u32(x529, x457, x504);
- uint32_t x534, uint32_t x535 = mulx_u32(x507, 0xffffffff);
- uint32_t x537, uint32_t x538 = mulx_u32(x507, 0xffffffff);
- uint32_t x540, uint32_t x541 = mulx_u32(x507, 0xffffffff);
- uint32_t x543, uint32_t x544 = mulx_u32(x507, 0xffffffff);
- uint32_t x546, uint32_t x547 = mulx_u32(x507, 0xffffffff);
- uint32_t x549, uint32_t x550 = mulx_u32(x507, 0xffffffff);
- uint32_t x552, uint32_t x553 = mulx_u32(x507, 0xffffffff);
- uint32_t x555, uint32_t x556 = mulx_u32(x507, 0xffa7ffff);
- uint32_t x558, uint8_t x559 = addcarryx_u32(0x0, x535, x537);
- uint32_t x561, uint8_t x562 = addcarryx_u32(x559, x538, x540);
- uint32_t x564, uint8_t x565 = addcarryx_u32(x562, x541, x543);
- uint32_t x567, uint8_t x568 = addcarryx_u32(x565, x544, x546);
- uint32_t x570, uint8_t x571 = addcarryx_u32(x568, x547, x549);
- uint32_t x573, uint8_t x574 = addcarryx_u32(x571, x550, x552);
- uint32_t x576, uint8_t x577 = addcarryx_u32(x574, x553, x555);
- uint32_t x579, uint8_t _ = addcarryx_u32(0x0, x577, x556);
- uint32_t _, uint8_t x583 = addcarryx_u32(0x0, x507, x534);
- uint32_t x585, uint8_t x586 = addcarryx_u32(x583, x510, x558);
- uint32_t x588, uint8_t x589 = addcarryx_u32(x586, x513, x561);
- uint32_t x591, uint8_t x592 = addcarryx_u32(x589, x516, x564);
- uint32_t x594, uint8_t x595 = addcarryx_u32(x592, x519, x567);
- uint32_t x597, uint8_t x598 = addcarryx_u32(x595, x522, x570);
- uint32_t x600, uint8_t x601 = addcarryx_u32(x598, x525, x573);
- uint32_t x603, uint8_t x604 = addcarryx_u32(x601, x528, x576);
- uint32_t x606, uint8_t x607 = addcarryx_u32(x604, x531, x579);
- uint8_t x608 = (x607 + x532);
- uint32_t x610, uint32_t x611 = mulx_u32(x13, x19);
- uint32_t x613, uint32_t x614 = mulx_u32(x13, x21);
- uint32_t x616, uint32_t x617 = mulx_u32(x13, x23);
- uint32_t x619, uint32_t x620 = mulx_u32(x13, x25);
- uint32_t x622, uint32_t x623 = mulx_u32(x13, x27);
- uint32_t x625, uint32_t x626 = mulx_u32(x13, x29);
- uint32_t x628, uint32_t x629 = mulx_u32(x13, x31);
- uint32_t x631, uint32_t x632 = mulx_u32(x13, x30);
- uint32_t x634, uint8_t x635 = addcarryx_u32(0x0, x611, x613);
- uint32_t x637, uint8_t x638 = addcarryx_u32(x635, x614, x616);
- uint32_t x640, uint8_t x641 = addcarryx_u32(x638, x617, x619);
- uint32_t x643, uint8_t x644 = addcarryx_u32(x641, x620, x622);
- uint32_t x646, uint8_t x647 = addcarryx_u32(x644, x623, x625);
- uint32_t x649, uint8_t x650 = addcarryx_u32(x647, x626, x628);
- uint32_t x652, uint8_t x653 = addcarryx_u32(x650, x629, x631);
- uint32_t x655, uint8_t _ = addcarryx_u32(0x0, x653, x632);
- uint32_t x658, uint8_t x659 = addcarryx_u32(0x0, x585, x610);
- uint32_t x661, uint8_t x662 = addcarryx_u32(x659, x588, x634);
- uint32_t x664, uint8_t x665 = addcarryx_u32(x662, x591, x637);
- uint32_t x667, uint8_t x668 = addcarryx_u32(x665, x594, x640);
- uint32_t x670, uint8_t x671 = addcarryx_u32(x668, x597, x643);
- uint32_t x673, uint8_t x674 = addcarryx_u32(x671, x600, x646);
- uint32_t x676, uint8_t x677 = addcarryx_u32(x674, x603, x649);
- uint32_t x679, uint8_t x680 = addcarryx_u32(x677, x606, x652);
- uint32_t x682, uint8_t x683 = addcarryx_u32(x680, x608, x655);
- uint32_t x685, uint32_t x686 = mulx_u32(x658, 0xffffffff);
- uint32_t x688, uint32_t x689 = mulx_u32(x658, 0xffffffff);
- uint32_t x691, uint32_t x692 = mulx_u32(x658, 0xffffffff);
- uint32_t x694, uint32_t x695 = mulx_u32(x658, 0xffffffff);
- uint32_t x697, uint32_t x698 = mulx_u32(x658, 0xffffffff);
- uint32_t x700, uint32_t x701 = mulx_u32(x658, 0xffffffff);
- uint32_t x703, uint32_t x704 = mulx_u32(x658, 0xffffffff);
- uint32_t x706, uint32_t x707 = mulx_u32(x658, 0xffa7ffff);
- uint32_t x709, uint8_t x710 = addcarryx_u32(0x0, x686, x688);
- uint32_t x712, uint8_t x713 = addcarryx_u32(x710, x689, x691);
- uint32_t x715, uint8_t x716 = addcarryx_u32(x713, x692, x694);
- uint32_t x718, uint8_t x719 = addcarryx_u32(x716, x695, x697);
- uint32_t x721, uint8_t x722 = addcarryx_u32(x719, x698, x700);
- uint32_t x724, uint8_t x725 = addcarryx_u32(x722, x701, x703);
- uint32_t x727, uint8_t x728 = addcarryx_u32(x725, x704, x706);
- uint32_t x730, uint8_t _ = addcarryx_u32(0x0, x728, x707);
- uint32_t _, uint8_t x734 = addcarryx_u32(0x0, x658, x685);
- uint32_t x736, uint8_t x737 = addcarryx_u32(x734, x661, x709);
- uint32_t x739, uint8_t x740 = addcarryx_u32(x737, x664, x712);
- uint32_t x742, uint8_t x743 = addcarryx_u32(x740, x667, x715);
- uint32_t x745, uint8_t x746 = addcarryx_u32(x743, x670, x718);
- uint32_t x748, uint8_t x749 = addcarryx_u32(x746, x673, x721);
- uint32_t x751, uint8_t x752 = addcarryx_u32(x749, x676, x724);
- uint32_t x754, uint8_t x755 = addcarryx_u32(x752, x679, x727);
- uint32_t x757, uint8_t x758 = addcarryx_u32(x755, x682, x730);
- uint8_t x759 = (x758 + x683);
- uint32_t x761, uint32_t x762 = mulx_u32(x15, x19);
- uint32_t x764, uint32_t x765 = mulx_u32(x15, x21);
- uint32_t x767, uint32_t x768 = mulx_u32(x15, x23);
- uint32_t x770, uint32_t x771 = mulx_u32(x15, x25);
- uint32_t x773, uint32_t x774 = mulx_u32(x15, x27);
- uint32_t x776, uint32_t x777 = mulx_u32(x15, x29);
- uint32_t x779, uint32_t x780 = mulx_u32(x15, x31);
- uint32_t x782, uint32_t x783 = mulx_u32(x15, x30);
- uint32_t x785, uint8_t x786 = addcarryx_u32(0x0, x762, x764);
- uint32_t x788, uint8_t x789 = addcarryx_u32(x786, x765, x767);
- uint32_t x791, uint8_t x792 = addcarryx_u32(x789, x768, x770);
- uint32_t x794, uint8_t x795 = addcarryx_u32(x792, x771, x773);
- uint32_t x797, uint8_t x798 = addcarryx_u32(x795, x774, x776);
- uint32_t x800, uint8_t x801 = addcarryx_u32(x798, x777, x779);
- uint32_t x803, uint8_t x804 = addcarryx_u32(x801, x780, x782);
- uint32_t x806, uint8_t _ = addcarryx_u32(0x0, x804, x783);
- uint32_t x809, uint8_t x810 = addcarryx_u32(0x0, x736, x761);
- uint32_t x812, uint8_t x813 = addcarryx_u32(x810, x739, x785);
- uint32_t x815, uint8_t x816 = addcarryx_u32(x813, x742, x788);
- uint32_t x818, uint8_t x819 = addcarryx_u32(x816, x745, x791);
- uint32_t x821, uint8_t x822 = addcarryx_u32(x819, x748, x794);
- uint32_t x824, uint8_t x825 = addcarryx_u32(x822, x751, x797);
- uint32_t x827, uint8_t x828 = addcarryx_u32(x825, x754, x800);
- uint32_t x830, uint8_t x831 = addcarryx_u32(x828, x757, x803);
- uint32_t x833, uint8_t x834 = addcarryx_u32(x831, x759, x806);
- uint32_t x836, uint32_t x837 = mulx_u32(x809, 0xffffffff);
- uint32_t x839, uint32_t x840 = mulx_u32(x809, 0xffffffff);
- uint32_t x842, uint32_t x843 = mulx_u32(x809, 0xffffffff);
- uint32_t x845, uint32_t x846 = mulx_u32(x809, 0xffffffff);
- uint32_t x848, uint32_t x849 = mulx_u32(x809, 0xffffffff);
- uint32_t x851, uint32_t x852 = mulx_u32(x809, 0xffffffff);
- uint32_t x854, uint32_t x855 = mulx_u32(x809, 0xffffffff);
- uint32_t x857, uint32_t x858 = mulx_u32(x809, 0xffa7ffff);
- uint32_t x860, uint8_t x861 = addcarryx_u32(0x0, x837, x839);
- uint32_t x863, uint8_t x864 = addcarryx_u32(x861, x840, x842);
- uint32_t x866, uint8_t x867 = addcarryx_u32(x864, x843, x845);
- uint32_t x869, uint8_t x870 = addcarryx_u32(x867, x846, x848);
- uint32_t x872, uint8_t x873 = addcarryx_u32(x870, x849, x851);
- uint32_t x875, uint8_t x876 = addcarryx_u32(x873, x852, x854);
- uint32_t x878, uint8_t x879 = addcarryx_u32(x876, x855, x857);
- uint32_t x881, uint8_t _ = addcarryx_u32(0x0, x879, x858);
- uint32_t _, uint8_t x885 = addcarryx_u32(0x0, x809, x836);
- uint32_t x887, uint8_t x888 = addcarryx_u32(x885, x812, x860);
- uint32_t x890, uint8_t x891 = addcarryx_u32(x888, x815, x863);
- uint32_t x893, uint8_t x894 = addcarryx_u32(x891, x818, x866);
- uint32_t x896, uint8_t x897 = addcarryx_u32(x894, x821, x869);
- uint32_t x899, uint8_t x900 = addcarryx_u32(x897, x824, x872);
- uint32_t x902, uint8_t x903 = addcarryx_u32(x900, x827, x875);
- uint32_t x905, uint8_t x906 = addcarryx_u32(x903, x830, x878);
- uint32_t x908, uint8_t x909 = addcarryx_u32(x906, x833, x881);
- uint8_t x910 = (x909 + x834);
- uint32_t x912, uint32_t x913 = mulx_u32(x17, x19);
- uint32_t x915, uint32_t x916 = mulx_u32(x17, x21);
- uint32_t x918, uint32_t x919 = mulx_u32(x17, x23);
- uint32_t x921, uint32_t x922 = mulx_u32(x17, x25);
- uint32_t x924, uint32_t x925 = mulx_u32(x17, x27);
- uint32_t x927, uint32_t x928 = mulx_u32(x17, x29);
- uint32_t x930, uint32_t x931 = mulx_u32(x17, x31);
- uint32_t x933, uint32_t x934 = mulx_u32(x17, x30);
- uint32_t x936, uint8_t x937 = addcarryx_u32(0x0, x913, x915);
- uint32_t x939, uint8_t x940 = addcarryx_u32(x937, x916, x918);
- uint32_t x942, uint8_t x943 = addcarryx_u32(x940, x919, x921);
- uint32_t x945, uint8_t x946 = addcarryx_u32(x943, x922, x924);
- uint32_t x948, uint8_t x949 = addcarryx_u32(x946, x925, x927);
- uint32_t x951, uint8_t x952 = addcarryx_u32(x949, x928, x930);
- uint32_t x954, uint8_t x955 = addcarryx_u32(x952, x931, x933);
- uint32_t x957, uint8_t _ = addcarryx_u32(0x0, x955, x934);
- uint32_t x960, uint8_t x961 = addcarryx_u32(0x0, x887, x912);
- uint32_t x963, uint8_t x964 = addcarryx_u32(x961, x890, x936);
- uint32_t x966, uint8_t x967 = addcarryx_u32(x964, x893, x939);
- uint32_t x969, uint8_t x970 = addcarryx_u32(x967, x896, x942);
- uint32_t x972, uint8_t x973 = addcarryx_u32(x970, x899, x945);
- uint32_t x975, uint8_t x976 = addcarryx_u32(x973, x902, x948);
- uint32_t x978, uint8_t x979 = addcarryx_u32(x976, x905, x951);
- uint32_t x981, uint8_t x982 = addcarryx_u32(x979, x908, x954);
- uint32_t x984, uint8_t x985 = addcarryx_u32(x982, x910, x957);
- uint32_t x987, uint32_t x988 = mulx_u32(x960, 0xffffffff);
- uint32_t x990, uint32_t x991 = mulx_u32(x960, 0xffffffff);
- uint32_t x993, uint32_t x994 = mulx_u32(x960, 0xffffffff);
- uint32_t x996, uint32_t x997 = mulx_u32(x960, 0xffffffff);
- uint32_t x999, uint32_t x1000 = mulx_u32(x960, 0xffffffff);
- uint32_t x1002, uint32_t x1003 = mulx_u32(x960, 0xffffffff);
- uint32_t x1005, uint32_t x1006 = mulx_u32(x960, 0xffffffff);
- uint32_t x1008, uint32_t x1009 = mulx_u32(x960, 0xffa7ffff);
- uint32_t x1011, uint8_t x1012 = addcarryx_u32(0x0, x988, x990);
- uint32_t x1014, uint8_t x1015 = addcarryx_u32(x1012, x991, x993);
- uint32_t x1017, uint8_t x1018 = addcarryx_u32(x1015, x994, x996);
- uint32_t x1020, uint8_t x1021 = addcarryx_u32(x1018, x997, x999);
- uint32_t x1023, uint8_t x1024 = addcarryx_u32(x1021, x1000, x1002);
- uint32_t x1026, uint8_t x1027 = addcarryx_u32(x1024, x1003, x1005);
- uint32_t x1029, uint8_t x1030 = addcarryx_u32(x1027, x1006, x1008);
- uint32_t x1032, uint8_t _ = addcarryx_u32(0x0, x1030, x1009);
- uint32_t _, uint8_t x1036 = addcarryx_u32(0x0, x960, x987);
- uint32_t x1038, uint8_t x1039 = addcarryx_u32(x1036, x963, x1011);
- uint32_t x1041, uint8_t x1042 = addcarryx_u32(x1039, x966, x1014);
- uint32_t x1044, uint8_t x1045 = addcarryx_u32(x1042, x969, x1017);
- uint32_t x1047, uint8_t x1048 = addcarryx_u32(x1045, x972, x1020);
- uint32_t x1050, uint8_t x1051 = addcarryx_u32(x1048, x975, x1023);
- uint32_t x1053, uint8_t x1054 = addcarryx_u32(x1051, x978, x1026);
- uint32_t x1056, uint8_t x1057 = addcarryx_u32(x1054, x981, x1029);
- uint32_t x1059, uint8_t x1060 = addcarryx_u32(x1057, x984, x1032);
- uint8_t x1061 = (x1060 + x985);
- uint32_t x1063, uint32_t x1064 = mulx_u32(x16, x19);
- uint32_t x1066, uint32_t x1067 = mulx_u32(x16, x21);
- uint32_t x1069, uint32_t x1070 = mulx_u32(x16, x23);
- uint32_t x1072, uint32_t x1073 = mulx_u32(x16, x25);
- uint32_t x1075, uint32_t x1076 = mulx_u32(x16, x27);
- uint32_t x1078, uint32_t x1079 = mulx_u32(x16, x29);
- uint32_t x1081, uint32_t x1082 = mulx_u32(x16, x31);
- uint32_t x1084, uint32_t x1085 = mulx_u32(x16, x30);
- uint32_t x1087, uint8_t x1088 = addcarryx_u32(0x0, x1064, x1066);
- uint32_t x1090, uint8_t x1091 = addcarryx_u32(x1088, x1067, x1069);
- uint32_t x1093, uint8_t x1094 = addcarryx_u32(x1091, x1070, x1072);
- uint32_t x1096, uint8_t x1097 = addcarryx_u32(x1094, x1073, x1075);
- uint32_t x1099, uint8_t x1100 = addcarryx_u32(x1097, x1076, x1078);
- uint32_t x1102, uint8_t x1103 = addcarryx_u32(x1100, x1079, x1081);
- uint32_t x1105, uint8_t x1106 = addcarryx_u32(x1103, x1082, x1084);
- uint32_t x1108, uint8_t _ = addcarryx_u32(0x0, x1106, x1085);
- uint32_t x1111, uint8_t x1112 = addcarryx_u32(0x0, x1038, x1063);
- uint32_t x1114, uint8_t x1115 = addcarryx_u32(x1112, x1041, x1087);
- uint32_t x1117, uint8_t x1118 = addcarryx_u32(x1115, x1044, x1090);
- uint32_t x1120, uint8_t x1121 = addcarryx_u32(x1118, x1047, x1093);
- uint32_t x1123, uint8_t x1124 = addcarryx_u32(x1121, x1050, x1096);
- uint32_t x1126, uint8_t x1127 = addcarryx_u32(x1124, x1053, x1099);
- uint32_t x1129, uint8_t x1130 = addcarryx_u32(x1127, x1056, x1102);
- uint32_t x1132, uint8_t x1133 = addcarryx_u32(x1130, x1059, x1105);
- uint32_t x1135, uint8_t x1136 = addcarryx_u32(x1133, x1061, x1108);
- uint32_t x1138, uint32_t x1139 = mulx_u32(x1111, 0xffffffff);
- uint32_t x1141, uint32_t x1142 = mulx_u32(x1111, 0xffffffff);
- uint32_t x1144, uint32_t x1145 = mulx_u32(x1111, 0xffffffff);
- uint32_t x1147, uint32_t x1148 = mulx_u32(x1111, 0xffffffff);
- uint32_t x1150, uint32_t x1151 = mulx_u32(x1111, 0xffffffff);
- uint32_t x1153, uint32_t x1154 = mulx_u32(x1111, 0xffffffff);
- uint32_t x1156, uint32_t x1157 = mulx_u32(x1111, 0xffffffff);
- uint32_t x1159, uint32_t x1160 = mulx_u32(x1111, 0xffa7ffff);
- uint32_t x1162, uint8_t x1163 = addcarryx_u32(0x0, x1139, x1141);
- uint32_t x1165, uint8_t x1166 = addcarryx_u32(x1163, x1142, x1144);
- uint32_t x1168, uint8_t x1169 = addcarryx_u32(x1166, x1145, x1147);
- uint32_t x1171, uint8_t x1172 = addcarryx_u32(x1169, x1148, x1150);
- uint32_t x1174, uint8_t x1175 = addcarryx_u32(x1172, x1151, x1153);
- uint32_t x1177, uint8_t x1178 = addcarryx_u32(x1175, x1154, x1156);
- uint32_t x1180, uint8_t x1181 = addcarryx_u32(x1178, x1157, x1159);
- uint32_t x1183, uint8_t _ = addcarryx_u32(0x0, x1181, x1160);
- uint32_t _, uint8_t x1187 = addcarryx_u32(0x0, x1111, x1138);
- uint32_t x1189, uint8_t x1190 = addcarryx_u32(x1187, x1114, x1162);
- uint32_t x1192, uint8_t x1193 = addcarryx_u32(x1190, x1117, x1165);
- uint32_t x1195, uint8_t x1196 = addcarryx_u32(x1193, x1120, x1168);
- uint32_t x1198, uint8_t x1199 = addcarryx_u32(x1196, x1123, x1171);
- uint32_t x1201, uint8_t x1202 = addcarryx_u32(x1199, x1126, x1174);
- uint32_t x1204, uint8_t x1205 = addcarryx_u32(x1202, x1129, x1177);
- uint32_t x1207, uint8_t x1208 = addcarryx_u32(x1205, x1132, x1180);
- uint32_t x1210, uint8_t x1211 = addcarryx_u32(x1208, x1135, x1183);
- uint8_t x1212 = (x1211 + x1136);
- uint32_t x1214, uint8_t x1215 = subborrow_u32(0x0, x1189, 0xffffffff);
- uint32_t x1217, uint8_t x1218 = subborrow_u32(x1215, x1192, 0xffffffff);
- uint32_t x1220, uint8_t x1221 = subborrow_u32(x1218, x1195, 0xffffffff);
- uint32_t x1223, uint8_t x1224 = subborrow_u32(x1221, x1198, 0xffffffff);
- uint32_t x1226, uint8_t x1227 = subborrow_u32(x1224, x1201, 0xffffffff);
- uint32_t x1229, uint8_t x1230 = subborrow_u32(x1227, x1204, 0xffffffff);
- uint32_t x1232, uint8_t x1233 = subborrow_u32(x1230, x1207, 0xffffffff);
- uint32_t x1235, uint8_t x1236 = subborrow_u32(x1233, x1210, 0xffa7ffff);
- uint32_t _, uint8_t x1239 = subborrow_u32(x1236, x1212, 0x0);
- uint32_t x1240 = cmovznz32(x1239, x1235, x1210);
- uint32_t x1241 = cmovznz32(x1239, x1232, x1207);
- uint32_t x1242 = cmovznz32(x1239, x1229, x1204);
- uint32_t x1243 = cmovznz32(x1239, x1226, x1201);
- uint32_t x1244 = cmovznz32(x1239, x1223, x1198);
- uint32_t x1245 = cmovznz32(x1239, x1220, x1195);
- uint32_t x1246 = cmovznz32(x1239, x1217, x1192);
- uint32_t x1247 = cmovznz32(x1239, x1214, x1189);
- return (x1240, x1241, x1242, x1243, x1244, x1245, x1246, x1247))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/femulDisplay.v b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/femulDisplay.v
deleted file mode 100644
index a7fb74bc4..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m88x2e240m1_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fenz.c b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fenz.c
deleted file mode 100644
index 744f2aa5f..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (x14 | x13);
- { uint32_t x16 = (x12 | x15);
- { uint32_t x17 = (x10 | x16);
- { uint32_t x18 = (x8 | x17);
- { uint32_t x19 = (x6 | x18);
- { uint32_t x20 = (x4 | x19);
- { uint32_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fenz.v b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fenz.v
deleted file mode 100644
index f436e1855..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m88x2e240m1_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fenzDisplay.log b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fenzDisplay.log
deleted file mode 100644
index c7c1c2df1..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x15 = (x14 | x13);
- uint32_t x16 = (x12 | x15);
- uint32_t x17 = (x10 | x16);
- uint32_t x18 = (x8 | x17);
- uint32_t x19 = (x6 | x18);
- uint32_t x20 = (x4 | x19);
- uint32_t x21 = (x2 | x20);
- return x21)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fenzDisplay.v b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fenzDisplay.v
deleted file mode 100644
index 6f6fd1490..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m88x2e240m1_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feopp.c b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feopp.c
deleted file mode 100644
index e31162ea2..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feopp.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void feopp(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x16; uint8_t x17 = _subborrow_u32(0x0, 0x0, x2, &x16);
- { uint32_t x19; uint8_t x20 = _subborrow_u32(x17, 0x0, x4, &x19);
- { uint32_t x22; uint8_t x23 = _subborrow_u32(x20, 0x0, x6, &x22);
- { uint32_t x25; uint8_t x26 = _subborrow_u32(x23, 0x0, x8, &x25);
- { uint32_t x28; uint8_t x29 = _subborrow_u32(x26, 0x0, x10, &x28);
- { uint32_t x31; uint8_t x32 = _subborrow_u32(x29, 0x0, x12, &x31);
- { uint32_t x34; uint8_t x35 = _subborrow_u32(x32, 0x0, x14, &x34);
- { uint32_t x37; uint8_t x38 = _subborrow_u32(x35, 0x0, x13, &x37);
- { uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- { uint32_t x40 = (x39 & 0xffffffff);
- { uint32_t x42; uint8_t x43 = _addcarryx_u32(0x0, x16, x40, &x42);
- { uint32_t x44 = (x39 & 0xffffffff);
- { uint32_t x46; uint8_t x47 = _addcarryx_u32(x43, x19, x44, &x46);
- { uint32_t x48 = (x39 & 0xffffffff);
- { uint32_t x50; uint8_t x51 = _addcarryx_u32(x47, x22, x48, &x50);
- { uint32_t x52 = (x39 & 0xffffffff);
- { uint32_t x54; uint8_t x55 = _addcarryx_u32(x51, x25, x52, &x54);
- { uint32_t x56 = (x39 & 0xffffffff);
- { uint32_t x58; uint8_t x59 = _addcarryx_u32(x55, x28, x56, &x58);
- { uint32_t x60 = (x39 & 0xffffffff);
- { uint32_t x62; uint8_t x63 = _addcarryx_u32(x59, x31, x60, &x62);
- { uint32_t x64 = (x39 & 0xffffffff);
- { uint32_t x66; uint8_t x67 = _addcarryx_u32(x63, x34, x64, &x66);
- { uint32_t x68 = (x39 & 0xffa7ffff);
- { uint32_t x70; uint8_t _ = _addcarryx_u32(x67, x37, x68, &x70);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feopp.v b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feopp.v
deleted file mode 100644
index cb0f5ce19..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m88x2e240m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feoppDisplay.log b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feoppDisplay.log
deleted file mode 100644
index 947fb5f66..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feoppDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x16, uint8_t x17 = subborrow_u32(0x0, 0x0, x2);
- uint32_t x19, uint8_t x20 = subborrow_u32(x17, 0x0, x4);
- uint32_t x22, uint8_t x23 = subborrow_u32(x20, 0x0, x6);
- uint32_t x25, uint8_t x26 = subborrow_u32(x23, 0x0, x8);
- uint32_t x28, uint8_t x29 = subborrow_u32(x26, 0x0, x10);
- uint32_t x31, uint8_t x32 = subborrow_u32(x29, 0x0, x12);
- uint32_t x34, uint8_t x35 = subborrow_u32(x32, 0x0, x14);
- uint32_t x37, uint8_t x38 = subborrow_u32(x35, 0x0, x13);
- uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- uint32_t x40 = (x39 & 0xffffffff);
- uint32_t x42, uint8_t x43 = addcarryx_u32(0x0, x16, x40);
- uint32_t x44 = (x39 & 0xffffffff);
- uint32_t x46, uint8_t x47 = addcarryx_u32(x43, x19, x44);
- uint32_t x48 = (x39 & 0xffffffff);
- uint32_t x50, uint8_t x51 = addcarryx_u32(x47, x22, x48);
- uint32_t x52 = (x39 & 0xffffffff);
- uint32_t x54, uint8_t x55 = addcarryx_u32(x51, x25, x52);
- uint32_t x56 = (x39 & 0xffffffff);
- uint32_t x58, uint8_t x59 = addcarryx_u32(x55, x28, x56);
- uint32_t x60 = (x39 & 0xffffffff);
- uint32_t x62, uint8_t x63 = addcarryx_u32(x59, x31, x60);
- uint32_t x64 = (x39 & 0xffffffff);
- uint32_t x66, uint8_t x67 = addcarryx_u32(x63, x34, x64);
- uint32_t x68 = (x39 & 0xffa7ffff);
- uint32_t x70, uint8_t _ = addcarryx_u32(x67, x37, x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feoppDisplay.v b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feoppDisplay.v
deleted file mode 100644
index d88c3ee9e..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m88x2e240m1_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fesquare.c b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fesub.c b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fesub.c
deleted file mode 100644
index e192050b7..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fesub.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void fesub(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint32_t x33; uint8_t x34 = _subborrow_u32(0x0, x5, x19, &x33);
- { uint32_t x36; uint8_t x37 = _subborrow_u32(x34, x7, x21, &x36);
- { uint32_t x39; uint8_t x40 = _subborrow_u32(x37, x9, x23, &x39);
- { uint32_t x42; uint8_t x43 = _subborrow_u32(x40, x11, x25, &x42);
- { uint32_t x45; uint8_t x46 = _subborrow_u32(x43, x13, x27, &x45);
- { uint32_t x48; uint8_t x49 = _subborrow_u32(x46, x15, x29, &x48);
- { uint32_t x51; uint8_t x52 = _subborrow_u32(x49, x17, x31, &x51);
- { uint32_t x54; uint8_t x55 = _subborrow_u32(x52, x16, x30, &x54);
- { uint32_t x56 = cmovznz32(x55, 0x0, 0xffffffff);
- { uint32_t x57 = (x56 & 0xffffffff);
- { uint32_t x59; uint8_t x60 = _addcarryx_u32(0x0, x33, x57, &x59);
- { uint32_t x61 = (x56 & 0xffffffff);
- { uint32_t x63; uint8_t x64 = _addcarryx_u32(x60, x36, x61, &x63);
- { uint32_t x65 = (x56 & 0xffffffff);
- { uint32_t x67; uint8_t x68 = _addcarryx_u32(x64, x39, x65, &x67);
- { uint32_t x69 = (x56 & 0xffffffff);
- { uint32_t x71; uint8_t x72 = _addcarryx_u32(x68, x42, x69, &x71);
- { uint32_t x73 = (x56 & 0xffffffff);
- { uint32_t x75; uint8_t x76 = _addcarryx_u32(x72, x45, x73, &x75);
- { uint32_t x77 = (x56 & 0xffffffff);
- { uint32_t x79; uint8_t x80 = _addcarryx_u32(x76, x48, x77, &x79);
- { uint32_t x81 = (x56 & 0xffffffff);
- { uint32_t x83; uint8_t x84 = _addcarryx_u32(x80, x51, x81, &x83);
- { uint32_t x85 = (x56 & 0xffa7ffff);
- { uint32_t x87; uint8_t _ = _addcarryx_u32(x84, x54, x85, &x87);
- out[0] = x59;
- out[1] = x63;
- out[2] = x67;
- out[3] = x71;
- out[4] = x75;
- out[5] = x79;
- out[6] = x83;
- out[7] = x87;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fesub.v b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fesub.v
deleted file mode 100644
index f84ee3c48..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e256m88x2e240m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fesubDisplay.log b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fesubDisplay.log
deleted file mode 100644
index aab7d8d32..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint32_t x33, uint8_t x34 = subborrow_u32(0x0, x5, x19);
- uint32_t x36, uint8_t x37 = subborrow_u32(x34, x7, x21);
- uint32_t x39, uint8_t x40 = subborrow_u32(x37, x9, x23);
- uint32_t x42, uint8_t x43 = subborrow_u32(x40, x11, x25);
- uint32_t x45, uint8_t x46 = subborrow_u32(x43, x13, x27);
- uint32_t x48, uint8_t x49 = subborrow_u32(x46, x15, x29);
- uint32_t x51, uint8_t x52 = subborrow_u32(x49, x17, x31);
- uint32_t x54, uint8_t x55 = subborrow_u32(x52, x16, x30);
- uint32_t x56 = cmovznz32(x55, 0x0, 0xffffffff);
- uint32_t x57 = (x56 & 0xffffffff);
- uint32_t x59, uint8_t x60 = addcarryx_u32(0x0, x33, x57);
- uint32_t x61 = (x56 & 0xffffffff);
- uint32_t x63, uint8_t x64 = addcarryx_u32(x60, x36, x61);
- uint32_t x65 = (x56 & 0xffffffff);
- uint32_t x67, uint8_t x68 = addcarryx_u32(x64, x39, x65);
- uint32_t x69 = (x56 & 0xffffffff);
- uint32_t x71, uint8_t x72 = addcarryx_u32(x68, x42, x69);
- uint32_t x73 = (x56 & 0xffffffff);
- uint32_t x75, uint8_t x76 = addcarryx_u32(x72, x45, x73);
- uint32_t x77 = (x56 & 0xffffffff);
- uint32_t x79, uint8_t x80 = addcarryx_u32(x76, x48, x77);
- uint32_t x81 = (x56 & 0xffffffff);
- uint32_t x83, uint8_t x84 = addcarryx_u32(x80, x51, x81);
- uint32_t x85 = (x56 & 0xffa7ffff);
- uint32_t x87, uint8_t _ = addcarryx_u32(x84, x54, x85);
- (Return x87, Return x83, Return x79, Return x75, Return x71, Return x67, Return x63, Return x59))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fesubDisplay.v b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fesubDisplay.v
deleted file mode 100644
index 0d953d26e..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e256m88x2e240m1_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/py_interpreter.sh b/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/py_interpreter.sh
deleted file mode 100755
index 09e3d56cf..000000000
--- a/src/Specific/montgomery32_2e256m88x2e240m1_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256 - 88*2**240 - 1' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e266m3_9limbs/CurveParameters.v b/src/Specific/montgomery32_2e266m3_9limbs/CurveParameters.v
deleted file mode 100644
index 77b84da50..000000000
--- a/src/Specific/montgomery32_2e266m3_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^266 - 3
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 32;
- bitwidth := 32;
- s := 2^266;
- c := [(1, 3)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e266m3_9limbs/Synthesis.v b/src/Specific/montgomery32_2e266m3_9limbs/Synthesis.v
deleted file mode 100644
index bdeb64c63..000000000
--- a/src/Specific/montgomery32_2e266m3_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e266m3_9limbs.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/montgomery32_2e266m3_9limbs/compiler.sh b/src/Specific/montgomery32_2e266m3_9limbs/compiler.sh
deleted file mode 100755
index cb66392dd..000000000
--- a/src/Specific/montgomery32_2e266m3_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='34' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<266) - 3' "$@"
diff --git a/src/Specific/montgomery32_2e266m3_9limbs/compilerxx.sh b/src/Specific/montgomery32_2e266m3_9limbs/compilerxx.sh
deleted file mode 100755
index 5f503ca01..000000000
--- a/src/Specific/montgomery32_2e266m3_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='34' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<266) - 3' "$@"
diff --git a/src/Specific/montgomery32_2e266m3_9limbs/feadd.c b/src/Specific/montgomery32_2e266m3_9limbs/feadd.c
deleted file mode 100644
index c59fa710c..000000000
--- a/src/Specific/montgomery32_2e266m3_9limbs/feadd.c
+++ /dev/null
@@ -1,58 +0,0 @@
-static void feadd(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- { uint32_t x37; uint8_t x38 = _addcarryx_u32(0x0, x5, x21, &x37);
- { uint32_t x40; uint8_t x41 = _addcarryx_u32(x38, x7, x23, &x40);
- { uint32_t x43; uint8_t x44 = _addcarryx_u32(x41, x9, x25, &x43);
- { uint32_t x46; uint8_t x47 = _addcarryx_u32(x44, x11, x27, &x46);
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(x47, x13, x29, &x49);
- { uint32_t x52; uint8_t x53 = _addcarryx_u32(x50, x15, x31, &x52);
- { uint32_t x55; uint8_t x56 = _addcarryx_u32(x53, x17, x33, &x55);
- { uint32_t x58; uint8_t x59 = _addcarryx_u32(x56, x19, x35, &x58);
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(x59, x18, x34, &x61);
- { uint32_t x64; uint8_t x65 = _subborrow_u32(0x0, x37, 0xfffffffd, &x64);
- { uint32_t x67; uint8_t x68 = _subborrow_u32(x65, x40, 0xffffffff, &x67);
- { uint32_t x70; uint8_t x71 = _subborrow_u32(x68, x43, 0xffffffff, &x70);
- { uint32_t x73; uint8_t x74 = _subborrow_u32(x71, x46, 0xffffffff, &x73);
- { uint32_t x76; uint8_t x77 = _subborrow_u32(x74, x49, 0xffffffff, &x76);
- { uint32_t x79; uint8_t x80 = _subborrow_u32(x77, x52, 0xffffffff, &x79);
- { uint32_t x82; uint8_t x83 = _subborrow_u32(x80, x55, 0xffffffff, &x82);
- { uint32_t x85; uint8_t x86 = _subborrow_u32(x83, x58, 0xffffffff, &x85);
- { uint32_t x88; uint8_t x89 = _subborrow_u32(x86, x61, 0x3ff, &x88);
- { uint32_t _; uint8_t x92 = _subborrow_u32(x89, x62, 0x0, &_);
- { uint32_t x93 = cmovznz32(x92, x88, x61);
- { uint32_t x94 = cmovznz32(x92, x85, x58);
- { uint32_t x95 = cmovznz32(x92, x82, x55);
- { uint32_t x96 = cmovznz32(x92, x79, x52);
- { uint32_t x97 = cmovznz32(x92, x76, x49);
- { uint32_t x98 = cmovznz32(x92, x73, x46);
- { uint32_t x99 = cmovznz32(x92, x70, x43);
- { uint32_t x100 = cmovznz32(x92, x67, x40);
- { uint32_t x101 = cmovznz32(x92, x64, x37);
- out[0] = x101;
- out[1] = x100;
- out[2] = x99;
- out[3] = x98;
- out[4] = x97;
- out[5] = x96;
- out[6] = x95;
- out[7] = x94;
- out[8] = x93;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e266m3_9limbs/feadd.v b/src/Specific/montgomery32_2e266m3_9limbs/feadd.v
deleted file mode 100644
index 76bf68719..000000000
--- a/src/Specific/montgomery32_2e266m3_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e266m3_9limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e266m3_9limbs/feaddDisplay.log b/src/Specific/montgomery32_2e266m3_9limbs/feaddDisplay.log
deleted file mode 100644
index de4f4c7bf..000000000
--- a/src/Specific/montgomery32_2e266m3_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint32_t x37, uint8_t x38 = addcarryx_u32(0x0, x5, x21);
- uint32_t x40, uint8_t x41 = addcarryx_u32(x38, x7, x23);
- uint32_t x43, uint8_t x44 = addcarryx_u32(x41, x9, x25);
- uint32_t x46, uint8_t x47 = addcarryx_u32(x44, x11, x27);
- uint32_t x49, uint8_t x50 = addcarryx_u32(x47, x13, x29);
- uint32_t x52, uint8_t x53 = addcarryx_u32(x50, x15, x31);
- uint32_t x55, uint8_t x56 = addcarryx_u32(x53, x17, x33);
- uint32_t x58, uint8_t x59 = addcarryx_u32(x56, x19, x35);
- uint32_t x61, uint8_t x62 = addcarryx_u32(x59, x18, x34);
- uint32_t x64, uint8_t x65 = subborrow_u32(0x0, x37, 0xfffffffd);
- uint32_t x67, uint8_t x68 = subborrow_u32(x65, x40, 0xffffffff);
- uint32_t x70, uint8_t x71 = subborrow_u32(x68, x43, 0xffffffff);
- uint32_t x73, uint8_t x74 = subborrow_u32(x71, x46, 0xffffffff);
- uint32_t x76, uint8_t x77 = subborrow_u32(x74, x49, 0xffffffff);
- uint32_t x79, uint8_t x80 = subborrow_u32(x77, x52, 0xffffffff);
- uint32_t x82, uint8_t x83 = subborrow_u32(x80, x55, 0xffffffff);
- uint32_t x85, uint8_t x86 = subborrow_u32(x83, x58, 0xffffffff);
- uint32_t x88, uint8_t x89 = subborrow_u32(x86, x61, 0x3ff);
- uint32_t _, uint8_t x92 = subborrow_u32(x89, x62, 0x0);
- uint32_t x93 = cmovznz32(x92, x88, x61);
- uint32_t x94 = cmovznz32(x92, x85, x58);
- uint32_t x95 = cmovznz32(x92, x82, x55);
- uint32_t x96 = cmovznz32(x92, x79, x52);
- uint32_t x97 = cmovznz32(x92, x76, x49);
- uint32_t x98 = cmovznz32(x92, x73, x46);
- uint32_t x99 = cmovznz32(x92, x70, x43);
- uint32_t x100 = cmovznz32(x92, x67, x40);
- uint32_t x101 = cmovznz32(x92, x64, x37);
- return (x93, x94, x95, x96, x97, x98, x99, x100, x101))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e266m3_9limbs/feaddDisplay.v b/src/Specific/montgomery32_2e266m3_9limbs/feaddDisplay.v
deleted file mode 100644
index 36b9525c2..000000000
--- a/src/Specific/montgomery32_2e266m3_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e266m3_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e266m3_9limbs/femul.v b/src/Specific/montgomery32_2e266m3_9limbs/femul.v
deleted file mode 100644
index 35be13188..000000000
--- a/src/Specific/montgomery32_2e266m3_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e266m3_9limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e266m3_9limbs/femulDisplay.v b/src/Specific/montgomery32_2e266m3_9limbs/femulDisplay.v
deleted file mode 100644
index 9129251a9..000000000
--- a/src/Specific/montgomery32_2e266m3_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e266m3_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e266m3_9limbs/fenz.c b/src/Specific/montgomery32_2e266m3_9limbs/fenz.c
deleted file mode 100644
index c10600790..000000000
--- a/src/Specific/montgomery32_2e266m3_9limbs/fenz.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x17 = (x16 | x15);
- { uint32_t x18 = (x14 | x17);
- { uint32_t x19 = (x12 | x18);
- { uint32_t x20 = (x10 | x19);
- { uint32_t x21 = (x8 | x20);
- { uint32_t x22 = (x6 | x21);
- { uint32_t x23 = (x4 | x22);
- { uint32_t x24 = (x2 | x23);
- out[0] = x24;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e266m3_9limbs/fenz.v b/src/Specific/montgomery32_2e266m3_9limbs/fenz.v
deleted file mode 100644
index d2b5da571..000000000
--- a/src/Specific/montgomery32_2e266m3_9limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e266m3_9limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e266m3_9limbs/fenzDisplay.log b/src/Specific/montgomery32_2e266m3_9limbs/fenzDisplay.log
deleted file mode 100644
index d8d43b40b..000000000
--- a/src/Specific/montgomery32_2e266m3_9limbs/fenzDisplay.log
+++ /dev/null
@@ -1,15 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x17 = (x16 | x15);
- uint32_t x18 = (x14 | x17);
- uint32_t x19 = (x12 | x18);
- uint32_t x20 = (x10 | x19);
- uint32_t x21 = (x8 | x20);
- uint32_t x22 = (x6 | x21);
- uint32_t x23 = (x4 | x22);
- uint32_t x24 = (x2 | x23);
- return x24)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e266m3_9limbs/fenzDisplay.v b/src/Specific/montgomery32_2e266m3_9limbs/fenzDisplay.v
deleted file mode 100644
index 9ef0db2f9..000000000
--- a/src/Specific/montgomery32_2e266m3_9limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e266m3_9limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e266m3_9limbs/feopp.v b/src/Specific/montgomery32_2e266m3_9limbs/feopp.v
deleted file mode 100644
index 8aa749a6f..000000000
--- a/src/Specific/montgomery32_2e266m3_9limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e266m3_9limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e266m3_9limbs/feoppDisplay.v b/src/Specific/montgomery32_2e266m3_9limbs/feoppDisplay.v
deleted file mode 100644
index 2efa883dc..000000000
--- a/src/Specific/montgomery32_2e266m3_9limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e266m3_9limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e266m3_9limbs/fesquare.c b/src/Specific/montgomery32_2e266m3_9limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e266m3_9limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e266m3_9limbs/fesub.v b/src/Specific/montgomery32_2e266m3_9limbs/fesub.v
deleted file mode 100644
index 3ffbea356..000000000
--- a/src/Specific/montgomery32_2e266m3_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e266m3_9limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e266m3_9limbs/fesubDisplay.v b/src/Specific/montgomery32_2e266m3_9limbs/fesubDisplay.v
deleted file mode 100644
index b912f0de4..000000000
--- a/src/Specific/montgomery32_2e266m3_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e266m3_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e266m3_9limbs/py_interpreter.sh b/src/Specific/montgomery32_2e266m3_9limbs/py_interpreter.sh
deleted file mode 100755
index cd8d8f0a4..000000000
--- a/src/Specific/montgomery32_2e266m3_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**266 - 3' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e285m9_9limbs/CurveParameters.v b/src/Specific/montgomery32_2e285m9_9limbs/CurveParameters.v
deleted file mode 100644
index a17478355..000000000
--- a/src/Specific/montgomery32_2e285m9_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^285 - 9
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 32;
- bitwidth := 32;
- s := 2^285;
- c := [(1, 9)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e285m9_9limbs/Synthesis.v b/src/Specific/montgomery32_2e285m9_9limbs/Synthesis.v
deleted file mode 100644
index de9d8e76e..000000000
--- a/src/Specific/montgomery32_2e285m9_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e285m9_9limbs.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/montgomery32_2e285m9_9limbs/compiler.sh b/src/Specific/montgomery32_2e285m9_9limbs/compiler.sh
deleted file mode 100755
index c1dc7bdb1..000000000
--- a/src/Specific/montgomery32_2e285m9_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='36' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<285) - 9' "$@"
diff --git a/src/Specific/montgomery32_2e285m9_9limbs/compilerxx.sh b/src/Specific/montgomery32_2e285m9_9limbs/compilerxx.sh
deleted file mode 100755
index 4dc514d7d..000000000
--- a/src/Specific/montgomery32_2e285m9_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='36' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<285) - 9' "$@"
diff --git a/src/Specific/montgomery32_2e285m9_9limbs/feadd.c b/src/Specific/montgomery32_2e285m9_9limbs/feadd.c
deleted file mode 100644
index 2d47c9464..000000000
--- a/src/Specific/montgomery32_2e285m9_9limbs/feadd.c
+++ /dev/null
@@ -1,58 +0,0 @@
-static void feadd(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- { uint32_t x37; uint8_t x38 = _addcarryx_u32(0x0, x5, x21, &x37);
- { uint32_t x40; uint8_t x41 = _addcarryx_u32(x38, x7, x23, &x40);
- { uint32_t x43; uint8_t x44 = _addcarryx_u32(x41, x9, x25, &x43);
- { uint32_t x46; uint8_t x47 = _addcarryx_u32(x44, x11, x27, &x46);
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(x47, x13, x29, &x49);
- { uint32_t x52; uint8_t x53 = _addcarryx_u32(x50, x15, x31, &x52);
- { uint32_t x55; uint8_t x56 = _addcarryx_u32(x53, x17, x33, &x55);
- { uint32_t x58; uint8_t x59 = _addcarryx_u32(x56, x19, x35, &x58);
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(x59, x18, x34, &x61);
- { uint32_t x64; uint8_t x65 = _subborrow_u32(0x0, x37, 0xfffffff7, &x64);
- { uint32_t x67; uint8_t x68 = _subborrow_u32(x65, x40, 0xffffffff, &x67);
- { uint32_t x70; uint8_t x71 = _subborrow_u32(x68, x43, 0xffffffff, &x70);
- { uint32_t x73; uint8_t x74 = _subborrow_u32(x71, x46, 0xffffffff, &x73);
- { uint32_t x76; uint8_t x77 = _subborrow_u32(x74, x49, 0xffffffff, &x76);
- { uint32_t x79; uint8_t x80 = _subborrow_u32(x77, x52, 0xffffffff, &x79);
- { uint32_t x82; uint8_t x83 = _subborrow_u32(x80, x55, 0xffffffff, &x82);
- { uint32_t x85; uint8_t x86 = _subborrow_u32(x83, x58, 0xffffffff, &x85);
- { uint32_t x88; uint8_t x89 = _subborrow_u32(x86, x61, 0x1fffffff, &x88);
- { uint32_t _; uint8_t x92 = _subborrow_u32(x89, x62, 0x0, &_);
- { uint32_t x93 = cmovznz32(x92, x88, x61);
- { uint32_t x94 = cmovznz32(x92, x85, x58);
- { uint32_t x95 = cmovznz32(x92, x82, x55);
- { uint32_t x96 = cmovznz32(x92, x79, x52);
- { uint32_t x97 = cmovznz32(x92, x76, x49);
- { uint32_t x98 = cmovznz32(x92, x73, x46);
- { uint32_t x99 = cmovznz32(x92, x70, x43);
- { uint32_t x100 = cmovznz32(x92, x67, x40);
- { uint32_t x101 = cmovznz32(x92, x64, x37);
- out[0] = x101;
- out[1] = x100;
- out[2] = x99;
- out[3] = x98;
- out[4] = x97;
- out[5] = x96;
- out[6] = x95;
- out[7] = x94;
- out[8] = x93;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e285m9_9limbs/feadd.v b/src/Specific/montgomery32_2e285m9_9limbs/feadd.v
deleted file mode 100644
index 548a2f636..000000000
--- a/src/Specific/montgomery32_2e285m9_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e285m9_9limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e285m9_9limbs/feaddDisplay.log b/src/Specific/montgomery32_2e285m9_9limbs/feaddDisplay.log
deleted file mode 100644
index 1dabeafdc..000000000
--- a/src/Specific/montgomery32_2e285m9_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint32_t x37, uint8_t x38 = addcarryx_u32(0x0, x5, x21);
- uint32_t x40, uint8_t x41 = addcarryx_u32(x38, x7, x23);
- uint32_t x43, uint8_t x44 = addcarryx_u32(x41, x9, x25);
- uint32_t x46, uint8_t x47 = addcarryx_u32(x44, x11, x27);
- uint32_t x49, uint8_t x50 = addcarryx_u32(x47, x13, x29);
- uint32_t x52, uint8_t x53 = addcarryx_u32(x50, x15, x31);
- uint32_t x55, uint8_t x56 = addcarryx_u32(x53, x17, x33);
- uint32_t x58, uint8_t x59 = addcarryx_u32(x56, x19, x35);
- uint32_t x61, uint8_t x62 = addcarryx_u32(x59, x18, x34);
- uint32_t x64, uint8_t x65 = subborrow_u32(0x0, x37, 0xfffffff7);
- uint32_t x67, uint8_t x68 = subborrow_u32(x65, x40, 0xffffffff);
- uint32_t x70, uint8_t x71 = subborrow_u32(x68, x43, 0xffffffff);
- uint32_t x73, uint8_t x74 = subborrow_u32(x71, x46, 0xffffffff);
- uint32_t x76, uint8_t x77 = subborrow_u32(x74, x49, 0xffffffff);
- uint32_t x79, uint8_t x80 = subborrow_u32(x77, x52, 0xffffffff);
- uint32_t x82, uint8_t x83 = subborrow_u32(x80, x55, 0xffffffff);
- uint32_t x85, uint8_t x86 = subborrow_u32(x83, x58, 0xffffffff);
- uint32_t x88, uint8_t x89 = subborrow_u32(x86, x61, 0x1fffffff);
- uint32_t _, uint8_t x92 = subborrow_u32(x89, x62, 0x0);
- uint32_t x93 = cmovznz32(x92, x88, x61);
- uint32_t x94 = cmovznz32(x92, x85, x58);
- uint32_t x95 = cmovznz32(x92, x82, x55);
- uint32_t x96 = cmovznz32(x92, x79, x52);
- uint32_t x97 = cmovznz32(x92, x76, x49);
- uint32_t x98 = cmovznz32(x92, x73, x46);
- uint32_t x99 = cmovznz32(x92, x70, x43);
- uint32_t x100 = cmovznz32(x92, x67, x40);
- uint32_t x101 = cmovznz32(x92, x64, x37);
- return (x93, x94, x95, x96, x97, x98, x99, x100, x101))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e285m9_9limbs/feaddDisplay.v b/src/Specific/montgomery32_2e285m9_9limbs/feaddDisplay.v
deleted file mode 100644
index 7d021f1e1..000000000
--- a/src/Specific/montgomery32_2e285m9_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e285m9_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e285m9_9limbs/femul.v b/src/Specific/montgomery32_2e285m9_9limbs/femul.v
deleted file mode 100644
index 395794549..000000000
--- a/src/Specific/montgomery32_2e285m9_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e285m9_9limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e285m9_9limbs/femulDisplay.v b/src/Specific/montgomery32_2e285m9_9limbs/femulDisplay.v
deleted file mode 100644
index bde3785e9..000000000
--- a/src/Specific/montgomery32_2e285m9_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e285m9_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e285m9_9limbs/fenz.c b/src/Specific/montgomery32_2e285m9_9limbs/fenz.c
deleted file mode 100644
index c10600790..000000000
--- a/src/Specific/montgomery32_2e285m9_9limbs/fenz.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x17 = (x16 | x15);
- { uint32_t x18 = (x14 | x17);
- { uint32_t x19 = (x12 | x18);
- { uint32_t x20 = (x10 | x19);
- { uint32_t x21 = (x8 | x20);
- { uint32_t x22 = (x6 | x21);
- { uint32_t x23 = (x4 | x22);
- { uint32_t x24 = (x2 | x23);
- out[0] = x24;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e285m9_9limbs/fenz.v b/src/Specific/montgomery32_2e285m9_9limbs/fenz.v
deleted file mode 100644
index 5c5c5a2cc..000000000
--- a/src/Specific/montgomery32_2e285m9_9limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e285m9_9limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e285m9_9limbs/fenzDisplay.log b/src/Specific/montgomery32_2e285m9_9limbs/fenzDisplay.log
deleted file mode 100644
index d8d43b40b..000000000
--- a/src/Specific/montgomery32_2e285m9_9limbs/fenzDisplay.log
+++ /dev/null
@@ -1,15 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x17 = (x16 | x15);
- uint32_t x18 = (x14 | x17);
- uint32_t x19 = (x12 | x18);
- uint32_t x20 = (x10 | x19);
- uint32_t x21 = (x8 | x20);
- uint32_t x22 = (x6 | x21);
- uint32_t x23 = (x4 | x22);
- uint32_t x24 = (x2 | x23);
- return x24)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e285m9_9limbs/fenzDisplay.v b/src/Specific/montgomery32_2e285m9_9limbs/fenzDisplay.v
deleted file mode 100644
index 79fbfa65e..000000000
--- a/src/Specific/montgomery32_2e285m9_9limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e285m9_9limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e285m9_9limbs/feopp.v b/src/Specific/montgomery32_2e285m9_9limbs/feopp.v
deleted file mode 100644
index 944c20a63..000000000
--- a/src/Specific/montgomery32_2e285m9_9limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e285m9_9limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e285m9_9limbs/feoppDisplay.v b/src/Specific/montgomery32_2e285m9_9limbs/feoppDisplay.v
deleted file mode 100644
index 4a157a6db..000000000
--- a/src/Specific/montgomery32_2e285m9_9limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e285m9_9limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e285m9_9limbs/fesquare.c b/src/Specific/montgomery32_2e285m9_9limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e285m9_9limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e285m9_9limbs/fesub.v b/src/Specific/montgomery32_2e285m9_9limbs/fesub.v
deleted file mode 100644
index 94dfd086c..000000000
--- a/src/Specific/montgomery32_2e285m9_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e285m9_9limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e285m9_9limbs/fesubDisplay.v b/src/Specific/montgomery32_2e285m9_9limbs/fesubDisplay.v
deleted file mode 100644
index 6981915a3..000000000
--- a/src/Specific/montgomery32_2e285m9_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e285m9_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e285m9_9limbs/py_interpreter.sh b/src/Specific/montgomery32_2e285m9_9limbs/py_interpreter.sh
deleted file mode 100755
index c07e3f4a1..000000000
--- a/src/Specific/montgomery32_2e285m9_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**285 - 9' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e291m19_10limbs/CurveParameters.v b/src/Specific/montgomery32_2e291m19_10limbs/CurveParameters.v
deleted file mode 100644
index 5d1b126a1..000000000
--- a/src/Specific/montgomery32_2e291m19_10limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^291 - 19
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 32;
- bitwidth := 32;
- s := 2^291;
- c := [(1, 19)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e291m19_10limbs/Synthesis.v b/src/Specific/montgomery32_2e291m19_10limbs/Synthesis.v
deleted file mode 100644
index 101415039..000000000
--- a/src/Specific/montgomery32_2e291m19_10limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e291m19_10limbs.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/montgomery32_2e291m19_10limbs/compiler.sh b/src/Specific/montgomery32_2e291m19_10limbs/compiler.sh
deleted file mode 100755
index 631448ef0..000000000
--- a/src/Specific/montgomery32_2e291m19_10limbs/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,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='{32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='37' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<291) - 19' "$@"
diff --git a/src/Specific/montgomery32_2e291m19_10limbs/compilerxx.sh b/src/Specific/montgomery32_2e291m19_10limbs/compilerxx.sh
deleted file mode 100755
index 8780d3954..000000000
--- a/src/Specific/montgomery32_2e291m19_10limbs/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,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='{32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='37' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<291) - 19' "$@"
diff --git a/src/Specific/montgomery32_2e291m19_10limbs/feadd.c b/src/Specific/montgomery32_2e291m19_10limbs/feadd.c
deleted file mode 100644
index 999094fe2..000000000
--- a/src/Specific/montgomery32_2e291m19_10limbs/feadd.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void feadd(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- { uint32_t x41; uint8_t x42 = _addcarryx_u32(0x0, x5, x23, &x41);
- { uint32_t x44; uint8_t x45 = _addcarryx_u32(x42, x7, x25, &x44);
- { uint32_t x47; uint8_t x48 = _addcarryx_u32(x45, x9, x27, &x47);
- { uint32_t x50; uint8_t x51 = _addcarryx_u32(x48, x11, x29, &x50);
- { uint32_t x53; uint8_t x54 = _addcarryx_u32(x51, x13, x31, &x53);
- { uint32_t x56; uint8_t x57 = _addcarryx_u32(x54, x15, x33, &x56);
- { uint32_t x59; uint8_t x60 = _addcarryx_u32(x57, x17, x35, &x59);
- { uint32_t x62; uint8_t x63 = _addcarryx_u32(x60, x19, x37, &x62);
- { uint32_t x65; uint8_t x66 = _addcarryx_u32(x63, x21, x39, &x65);
- { uint32_t x68; uint8_t x69 = _addcarryx_u32(x66, x20, x38, &x68);
- { uint32_t x71; uint8_t x72 = _subborrow_u32(0x0, x41, 0xffffffed, &x71);
- { uint32_t x74; uint8_t x75 = _subborrow_u32(x72, x44, 0xffffffff, &x74);
- { uint32_t x77; uint8_t x78 = _subborrow_u32(x75, x47, 0xffffffff, &x77);
- { uint32_t x80; uint8_t x81 = _subborrow_u32(x78, x50, 0xffffffff, &x80);
- { uint32_t x83; uint8_t x84 = _subborrow_u32(x81, x53, 0xffffffff, &x83);
- { uint32_t x86; uint8_t x87 = _subborrow_u32(x84, x56, 0xffffffff, &x86);
- { uint32_t x89; uint8_t x90 = _subborrow_u32(x87, x59, 0xffffffff, &x89);
- { uint32_t x92; uint8_t x93 = _subborrow_u32(x90, x62, 0xffffffff, &x92);
- { uint32_t x95; uint8_t x96 = _subborrow_u32(x93, x65, 0xffffffff, &x95);
- { uint32_t x98; uint8_t x99 = _subborrow_u32(x96, x68, 0x7, &x98);
- { uint32_t _; uint8_t x102 = _subborrow_u32(x99, x69, 0x0, &_);
- { uint32_t x103 = cmovznz32(x102, x98, x68);
- { uint32_t x104 = cmovznz32(x102, x95, x65);
- { uint32_t x105 = cmovznz32(x102, x92, x62);
- { uint32_t x106 = cmovznz32(x102, x89, x59);
- { uint32_t x107 = cmovznz32(x102, x86, x56);
- { uint32_t x108 = cmovznz32(x102, x83, x53);
- { uint32_t x109 = cmovznz32(x102, x80, x50);
- { uint32_t x110 = cmovznz32(x102, x77, x47);
- { uint32_t x111 = cmovznz32(x102, x74, x44);
- { uint32_t x112 = cmovznz32(x102, x71, x41);
- out[0] = x112;
- out[1] = x111;
- out[2] = x110;
- out[3] = x109;
- out[4] = x108;
- out[5] = x107;
- out[6] = x106;
- out[7] = x105;
- out[8] = x104;
- out[9] = x103;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e291m19_10limbs/feadd.v b/src/Specific/montgomery32_2e291m19_10limbs/feadd.v
deleted file mode 100644
index cd3175a65..000000000
--- a/src/Specific/montgomery32_2e291m19_10limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e291m19_10limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e291m19_10limbs/feaddDisplay.log b/src/Specific/montgomery32_2e291m19_10limbs/feaddDisplay.log
deleted file mode 100644
index 6b530ebf5..000000000
--- a/src/Specific/montgomery32_2e291m19_10limbs/feaddDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- uint32_t x41, uint8_t x42 = addcarryx_u32(0x0, x5, x23);
- uint32_t x44, uint8_t x45 = addcarryx_u32(x42, x7, x25);
- uint32_t x47, uint8_t x48 = addcarryx_u32(x45, x9, x27);
- uint32_t x50, uint8_t x51 = addcarryx_u32(x48, x11, x29);
- uint32_t x53, uint8_t x54 = addcarryx_u32(x51, x13, x31);
- uint32_t x56, uint8_t x57 = addcarryx_u32(x54, x15, x33);
- uint32_t x59, uint8_t x60 = addcarryx_u32(x57, x17, x35);
- uint32_t x62, uint8_t x63 = addcarryx_u32(x60, x19, x37);
- uint32_t x65, uint8_t x66 = addcarryx_u32(x63, x21, x39);
- uint32_t x68, uint8_t x69 = addcarryx_u32(x66, x20, x38);
- uint32_t x71, uint8_t x72 = subborrow_u32(0x0, x41, 0xffffffed);
- uint32_t x74, uint8_t x75 = subborrow_u32(x72, x44, 0xffffffff);
- uint32_t x77, uint8_t x78 = subborrow_u32(x75, x47, 0xffffffff);
- uint32_t x80, uint8_t x81 = subborrow_u32(x78, x50, 0xffffffff);
- uint32_t x83, uint8_t x84 = subborrow_u32(x81, x53, 0xffffffff);
- uint32_t x86, uint8_t x87 = subborrow_u32(x84, x56, 0xffffffff);
- uint32_t x89, uint8_t x90 = subborrow_u32(x87, x59, 0xffffffff);
- uint32_t x92, uint8_t x93 = subborrow_u32(x90, x62, 0xffffffff);
- uint32_t x95, uint8_t x96 = subborrow_u32(x93, x65, 0xffffffff);
- uint32_t x98, uint8_t x99 = subborrow_u32(x96, x68, 0x7);
- uint32_t _, uint8_t x102 = subborrow_u32(x99, x69, 0x0);
- uint32_t x103 = cmovznz32(x102, x98, x68);
- uint32_t x104 = cmovznz32(x102, x95, x65);
- uint32_t x105 = cmovznz32(x102, x92, x62);
- uint32_t x106 = cmovznz32(x102, x89, x59);
- uint32_t x107 = cmovznz32(x102, x86, x56);
- uint32_t x108 = cmovznz32(x102, x83, x53);
- uint32_t x109 = cmovznz32(x102, x80, x50);
- uint32_t x110 = cmovznz32(x102, x77, x47);
- uint32_t x111 = cmovznz32(x102, x74, x44);
- uint32_t x112 = cmovznz32(x102, x71, x41);
- return (x103, x104, x105, x106, x107, x108, x109, x110, x111, x112))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e291m19_10limbs/feaddDisplay.v b/src/Specific/montgomery32_2e291m19_10limbs/feaddDisplay.v
deleted file mode 100644
index 4d1ccb5d3..000000000
--- a/src/Specific/montgomery32_2e291m19_10limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e291m19_10limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e291m19_10limbs/femul.v b/src/Specific/montgomery32_2e291m19_10limbs/femul.v
deleted file mode 100644
index 9f88a1ac7..000000000
--- a/src/Specific/montgomery32_2e291m19_10limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e291m19_10limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e291m19_10limbs/femulDisplay.v b/src/Specific/montgomery32_2e291m19_10limbs/femulDisplay.v
deleted file mode 100644
index 4615da62f..000000000
--- a/src/Specific/montgomery32_2e291m19_10limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e291m19_10limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e291m19_10limbs/fenz.c b/src/Specific/montgomery32_2e291m19_10limbs/fenz.c
deleted file mode 100644
index 4ad084ead..000000000
--- a/src/Specific/montgomery32_2e291m19_10limbs/fenz.c
+++ /dev/null
@@ -1,23 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x19 = (x18 | x17);
- { uint32_t x20 = (x16 | x19);
- { uint32_t x21 = (x14 | x20);
- { uint32_t x22 = (x12 | x21);
- { uint32_t x23 = (x10 | x22);
- { uint32_t x24 = (x8 | x23);
- { uint32_t x25 = (x6 | x24);
- { uint32_t x26 = (x4 | x25);
- { uint32_t x27 = (x2 | x26);
- out[0] = x27;
- }}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e291m19_10limbs/fenz.v b/src/Specific/montgomery32_2e291m19_10limbs/fenz.v
deleted file mode 100644
index d2e54da64..000000000
--- a/src/Specific/montgomery32_2e291m19_10limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e291m19_10limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e291m19_10limbs/fenzDisplay.log b/src/Specific/montgomery32_2e291m19_10limbs/fenzDisplay.log
deleted file mode 100644
index d57ef4050..000000000
--- a/src/Specific/montgomery32_2e291m19_10limbs/fenzDisplay.log
+++ /dev/null
@@ -1,16 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x19 = (x18 | x17);
- uint32_t x20 = (x16 | x19);
- uint32_t x21 = (x14 | x20);
- uint32_t x22 = (x12 | x21);
- uint32_t x23 = (x10 | x22);
- uint32_t x24 = (x8 | x23);
- uint32_t x25 = (x6 | x24);
- uint32_t x26 = (x4 | x25);
- uint32_t x27 = (x2 | x26);
- return x27)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e291m19_10limbs/fenzDisplay.v b/src/Specific/montgomery32_2e291m19_10limbs/fenzDisplay.v
deleted file mode 100644
index 42118c57d..000000000
--- a/src/Specific/montgomery32_2e291m19_10limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e291m19_10limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e291m19_10limbs/feopp.v b/src/Specific/montgomery32_2e291m19_10limbs/feopp.v
deleted file mode 100644
index b0d201e75..000000000
--- a/src/Specific/montgomery32_2e291m19_10limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e291m19_10limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e291m19_10limbs/feoppDisplay.v b/src/Specific/montgomery32_2e291m19_10limbs/feoppDisplay.v
deleted file mode 100644
index b392a1302..000000000
--- a/src/Specific/montgomery32_2e291m19_10limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e291m19_10limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e291m19_10limbs/fesquare.c b/src/Specific/montgomery32_2e291m19_10limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e291m19_10limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e291m19_10limbs/fesub.v b/src/Specific/montgomery32_2e291m19_10limbs/fesub.v
deleted file mode 100644
index 19fe13519..000000000
--- a/src/Specific/montgomery32_2e291m19_10limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e291m19_10limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e291m19_10limbs/fesubDisplay.v b/src/Specific/montgomery32_2e291m19_10limbs/fesubDisplay.v
deleted file mode 100644
index 611321ffc..000000000
--- a/src/Specific/montgomery32_2e291m19_10limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e291m19_10limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e291m19_10limbs/py_interpreter.sh b/src/Specific/montgomery32_2e291m19_10limbs/py_interpreter.sh
deleted file mode 100755
index 7e6097a09..000000000
--- a/src/Specific/montgomery32_2e291m19_10limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**291 - 19' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e321m9_11limbs/CurveParameters.v b/src/Specific/montgomery32_2e321m9_11limbs/CurveParameters.v
deleted file mode 100644
index 492ecac0f..000000000
--- a/src/Specific/montgomery32_2e321m9_11limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^321 - 9
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 11%nat;
- base := 32;
- bitwidth := 32;
- s := 2^321;
- c := [(1, 9)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e321m9_11limbs/Synthesis.v b/src/Specific/montgomery32_2e321m9_11limbs/Synthesis.v
deleted file mode 100644
index 86adf28bb..000000000
--- a/src/Specific/montgomery32_2e321m9_11limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e321m9_11limbs.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/montgomery32_2e321m9_11limbs/compiler.sh b/src/Specific/montgomery32_2e321m9_11limbs/compiler.sh
deleted file mode 100755
index da71a1cca..000000000
--- a/src/Specific/montgomery32_2e321m9_11limbs/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,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<321) - 9' "$@"
diff --git a/src/Specific/montgomery32_2e321m9_11limbs/compilerxx.sh b/src/Specific/montgomery32_2e321m9_11limbs/compilerxx.sh
deleted file mode 100755
index 8c462b7ee..000000000
--- a/src/Specific/montgomery32_2e321m9_11limbs/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,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<321) - 9' "$@"
diff --git a/src/Specific/montgomery32_2e321m9_11limbs/feadd.c b/src/Specific/montgomery32_2e321m9_11limbs/feadd.c
deleted file mode 100644
index c637bcba9..000000000
--- a/src/Specific/montgomery32_2e321m9_11limbs/feadd.c
+++ /dev/null
@@ -1,70 +0,0 @@
-static void feadd(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(0x0, x5, x25, &x45);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x46, x7, x27, &x48);
- { uint32_t x51; uint8_t x52 = _addcarryx_u32(x49, x9, x29, &x51);
- { uint32_t x54; uint8_t x55 = _addcarryx_u32(x52, x11, x31, &x54);
- { uint32_t x57; uint8_t x58 = _addcarryx_u32(x55, x13, x33, &x57);
- { uint32_t x60; uint8_t x61 = _addcarryx_u32(x58, x15, x35, &x60);
- { uint32_t x63; uint8_t x64 = _addcarryx_u32(x61, x17, x37, &x63);
- { uint32_t x66; uint8_t x67 = _addcarryx_u32(x64, x19, x39, &x66);
- { uint32_t x69; uint8_t x70 = _addcarryx_u32(x67, x21, x41, &x69);
- { uint32_t x72; uint8_t x73 = _addcarryx_u32(x70, x23, x43, &x72);
- { uint32_t x75; uint8_t x76 = _addcarryx_u32(x73, x22, x42, &x75);
- { uint32_t x78; uint8_t x79 = _subborrow_u32(0x0, x45, 0xfffffff7, &x78);
- { uint32_t x81; uint8_t x82 = _subborrow_u32(x79, x48, 0xffffffff, &x81);
- { uint32_t x84; uint8_t x85 = _subborrow_u32(x82, x51, 0xffffffff, &x84);
- { uint32_t x87; uint8_t x88 = _subborrow_u32(x85, x54, 0xffffffff, &x87);
- { uint32_t x90; uint8_t x91 = _subborrow_u32(x88, x57, 0xffffffff, &x90);
- { uint32_t x93; uint8_t x94 = _subborrow_u32(x91, x60, 0xffffffff, &x93);
- { uint32_t x96; uint8_t x97 = _subborrow_u32(x94, x63, 0xffffffff, &x96);
- { uint32_t x99; uint8_t x100 = _subborrow_u32(x97, x66, 0xffffffff, &x99);
- { uint32_t x102; uint8_t x103 = _subborrow_u32(x100, x69, 0xffffffff, &x102);
- { uint32_t x105; uint8_t x106 = _subborrow_u32(x103, x72, 0xffffffff, &x105);
- { uint32_t x108; uint8_t x109 = _subborrow_u32(x106, x75, 0x1, &x108);
- { uint32_t _; uint8_t x112 = _subborrow_u32(x109, x76, 0x0, &_);
- { uint32_t x113 = cmovznz32(x112, x108, x75);
- { uint32_t x114 = cmovznz32(x112, x105, x72);
- { uint32_t x115 = cmovznz32(x112, x102, x69);
- { uint32_t x116 = cmovznz32(x112, x99, x66);
- { uint32_t x117 = cmovznz32(x112, x96, x63);
- { uint32_t x118 = cmovznz32(x112, x93, x60);
- { uint32_t x119 = cmovznz32(x112, x90, x57);
- { uint32_t x120 = cmovznz32(x112, x87, x54);
- { uint32_t x121 = cmovznz32(x112, x84, x51);
- { uint32_t x122 = cmovznz32(x112, x81, x48);
- { uint32_t x123 = cmovznz32(x112, x78, x45);
- out[0] = x123;
- out[1] = x122;
- out[2] = x121;
- out[3] = x120;
- out[4] = x119;
- out[5] = x118;
- out[6] = x117;
- out[7] = x116;
- out[8] = x115;
- out[9] = x114;
- out[10] = x113;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e321m9_11limbs/feadd.v b/src/Specific/montgomery32_2e321m9_11limbs/feadd.v
deleted file mode 100644
index 317871919..000000000
--- a/src/Specific/montgomery32_2e321m9_11limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e321m9_11limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e321m9_11limbs/feaddDisplay.log b/src/Specific/montgomery32_2e321m9_11limbs/feaddDisplay.log
deleted file mode 100644
index 3f005e69e..000000000
--- a/src/Specific/montgomery32_2e321m9_11limbs/feaddDisplay.log
+++ /dev/null
@@ -1,41 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- uint32_t x45, uint8_t x46 = addcarryx_u32(0x0, x5, x25);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x46, x7, x27);
- uint32_t x51, uint8_t x52 = addcarryx_u32(x49, x9, x29);
- uint32_t x54, uint8_t x55 = addcarryx_u32(x52, x11, x31);
- uint32_t x57, uint8_t x58 = addcarryx_u32(x55, x13, x33);
- uint32_t x60, uint8_t x61 = addcarryx_u32(x58, x15, x35);
- uint32_t x63, uint8_t x64 = addcarryx_u32(x61, x17, x37);
- uint32_t x66, uint8_t x67 = addcarryx_u32(x64, x19, x39);
- uint32_t x69, uint8_t x70 = addcarryx_u32(x67, x21, x41);
- uint32_t x72, uint8_t x73 = addcarryx_u32(x70, x23, x43);
- uint32_t x75, uint8_t x76 = addcarryx_u32(x73, x22, x42);
- uint32_t x78, uint8_t x79 = subborrow_u32(0x0, x45, 0xfffffff7);
- uint32_t x81, uint8_t x82 = subborrow_u32(x79, x48, 0xffffffff);
- uint32_t x84, uint8_t x85 = subborrow_u32(x82, x51, 0xffffffff);
- uint32_t x87, uint8_t x88 = subborrow_u32(x85, x54, 0xffffffff);
- uint32_t x90, uint8_t x91 = subborrow_u32(x88, x57, 0xffffffff);
- uint32_t x93, uint8_t x94 = subborrow_u32(x91, x60, 0xffffffff);
- uint32_t x96, uint8_t x97 = subborrow_u32(x94, x63, 0xffffffff);
- uint32_t x99, uint8_t x100 = subborrow_u32(x97, x66, 0xffffffff);
- uint32_t x102, uint8_t x103 = subborrow_u32(x100, x69, 0xffffffff);
- uint32_t x105, uint8_t x106 = subborrow_u32(x103, x72, 0xffffffff);
- uint32_t x108, uint8_t x109 = subborrow_u32(x106, x75, 0x1);
- uint32_t _, uint8_t x112 = subborrow_u32(x109, x76, 0x0);
- uint32_t x113 = cmovznz32(x112, x108, x75);
- uint32_t x114 = cmovznz32(x112, x105, x72);
- uint32_t x115 = cmovznz32(x112, x102, x69);
- uint32_t x116 = cmovznz32(x112, x99, x66);
- uint32_t x117 = cmovznz32(x112, x96, x63);
- uint32_t x118 = cmovznz32(x112, x93, x60);
- uint32_t x119 = cmovznz32(x112, x90, x57);
- uint32_t x120 = cmovznz32(x112, x87, x54);
- uint32_t x121 = cmovznz32(x112, x84, x51);
- uint32_t x122 = cmovznz32(x112, x81, x48);
- uint32_t x123 = cmovznz32(x112, x78, x45);
- return (x113, x114, x115, x116, x117, x118, x119, x120, x121, x122, x123))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e321m9_11limbs/feaddDisplay.v b/src/Specific/montgomery32_2e321m9_11limbs/feaddDisplay.v
deleted file mode 100644
index 9da09c2bf..000000000
--- a/src/Specific/montgomery32_2e321m9_11limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e321m9_11limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e321m9_11limbs/femul.v b/src/Specific/montgomery32_2e321m9_11limbs/femul.v
deleted file mode 100644
index 69f51c5f5..000000000
--- a/src/Specific/montgomery32_2e321m9_11limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e321m9_11limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e321m9_11limbs/femulDisplay.v b/src/Specific/montgomery32_2e321m9_11limbs/femulDisplay.v
deleted file mode 100644
index d43feeadc..000000000
--- a/src/Specific/montgomery32_2e321m9_11limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e321m9_11limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e321m9_11limbs/fenz.c b/src/Specific/montgomery32_2e321m9_11limbs/fenz.c
deleted file mode 100644
index d962eda51..000000000
--- a/src/Specific/montgomery32_2e321m9_11limbs/fenz.c
+++ /dev/null
@@ -1,25 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[11]) {
- { const uint32_t x19 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x21 = (x20 | x19);
- { uint32_t x22 = (x18 | x21);
- { uint32_t x23 = (x16 | x22);
- { uint32_t x24 = (x14 | x23);
- { uint32_t x25 = (x12 | x24);
- { uint32_t x26 = (x10 | x25);
- { uint32_t x27 = (x8 | x26);
- { uint32_t x28 = (x6 | x27);
- { uint32_t x29 = (x4 | x28);
- { uint32_t x30 = (x2 | x29);
- out[0] = x30;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e321m9_11limbs/fenz.v b/src/Specific/montgomery32_2e321m9_11limbs/fenz.v
deleted file mode 100644
index dc2102ca7..000000000
--- a/src/Specific/montgomery32_2e321m9_11limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e321m9_11limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e321m9_11limbs/fenzDisplay.log b/src/Specific/montgomery32_2e321m9_11limbs/fenzDisplay.log
deleted file mode 100644
index 4c54f68e5..000000000
--- a/src/Specific/montgomery32_2e321m9_11limbs/fenzDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x21 = (x20 | x19);
- uint32_t x22 = (x18 | x21);
- uint32_t x23 = (x16 | x22);
- uint32_t x24 = (x14 | x23);
- uint32_t x25 = (x12 | x24);
- uint32_t x26 = (x10 | x25);
- uint32_t x27 = (x8 | x26);
- uint32_t x28 = (x6 | x27);
- uint32_t x29 = (x4 | x28);
- uint32_t x30 = (x2 | x29);
- return x30)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e321m9_11limbs/fenzDisplay.v b/src/Specific/montgomery32_2e321m9_11limbs/fenzDisplay.v
deleted file mode 100644
index 494df5722..000000000
--- a/src/Specific/montgomery32_2e321m9_11limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e321m9_11limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e321m9_11limbs/feopp.v b/src/Specific/montgomery32_2e321m9_11limbs/feopp.v
deleted file mode 100644
index 31535c883..000000000
--- a/src/Specific/montgomery32_2e321m9_11limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e321m9_11limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e321m9_11limbs/feoppDisplay.v b/src/Specific/montgomery32_2e321m9_11limbs/feoppDisplay.v
deleted file mode 100644
index 61088cb7b..000000000
--- a/src/Specific/montgomery32_2e321m9_11limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e321m9_11limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e321m9_11limbs/fesquare.c b/src/Specific/montgomery32_2e321m9_11limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e321m9_11limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e321m9_11limbs/fesub.v b/src/Specific/montgomery32_2e321m9_11limbs/fesub.v
deleted file mode 100644
index 85ab6e1f8..000000000
--- a/src/Specific/montgomery32_2e321m9_11limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e321m9_11limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e321m9_11limbs/fesubDisplay.v b/src/Specific/montgomery32_2e321m9_11limbs/fesubDisplay.v
deleted file mode 100644
index 11373c473..000000000
--- a/src/Specific/montgomery32_2e321m9_11limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e321m9_11limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e321m9_11limbs/py_interpreter.sh b/src/Specific/montgomery32_2e321m9_11limbs/py_interpreter.sh
deleted file mode 100755
index 262a89c32..000000000
--- a/src/Specific/montgomery32_2e321m9_11limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**321 - 9' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e322m2e161m1_11limbs/CurveParameters.v b/src/Specific/montgomery32_2e322m2e161m1_11limbs/CurveParameters.v
deleted file mode 100644
index 7486ca425..000000000
--- a/src/Specific/montgomery32_2e322m2e161m1_11limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^322 - 2^161 - 1
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 11%nat;
- base := 32;
- bitwidth := 32;
- s := 2^322;
- c := [(1, 1); (2^161, 1)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e322m2e161m1_11limbs/Synthesis.v b/src/Specific/montgomery32_2e322m2e161m1_11limbs/Synthesis.v
deleted file mode 100644
index e18642dfb..000000000
--- a/src/Specific/montgomery32_2e322m2e161m1_11limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e322m2e161m1_11limbs.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/montgomery32_2e322m2e161m1_11limbs/compiler.sh b/src/Specific/montgomery32_2e322m2e161m1_11limbs/compiler.sh
deleted file mode 100755
index ed31bcdb5..000000000
--- a/src/Specific/montgomery32_2e322m2e161m1_11limbs/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,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e322m2e161m1_11limbs/compilerxx.sh b/src/Specific/montgomery32_2e322m2e161m1_11limbs/compilerxx.sh
deleted file mode 100755
index f6d0de11e..000000000
--- a/src/Specific/montgomery32_2e322m2e161m1_11limbs/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,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e322m2e161m1_11limbs/feadd.c b/src/Specific/montgomery32_2e322m2e161m1_11limbs/feadd.c
deleted file mode 100644
index 60f7eb069..000000000
--- a/src/Specific/montgomery32_2e322m2e161m1_11limbs/feadd.c
+++ /dev/null
@@ -1,70 +0,0 @@
-static void feadd(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(0x0, x5, x25, &x45);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x46, x7, x27, &x48);
- { uint32_t x51; uint8_t x52 = _addcarryx_u32(x49, x9, x29, &x51);
- { uint32_t x54; uint8_t x55 = _addcarryx_u32(x52, x11, x31, &x54);
- { uint32_t x57; uint8_t x58 = _addcarryx_u32(x55, x13, x33, &x57);
- { uint32_t x60; uint8_t x61 = _addcarryx_u32(x58, x15, x35, &x60);
- { uint32_t x63; uint8_t x64 = _addcarryx_u32(x61, x17, x37, &x63);
- { uint32_t x66; uint8_t x67 = _addcarryx_u32(x64, x19, x39, &x66);
- { uint32_t x69; uint8_t x70 = _addcarryx_u32(x67, x21, x41, &x69);
- { uint32_t x72; uint8_t x73 = _addcarryx_u32(x70, x23, x43, &x72);
- { uint32_t x75; uint8_t x76 = _addcarryx_u32(x73, x22, x42, &x75);
- { uint32_t x78; uint8_t x79 = _subborrow_u32(0x0, x45, 0xffffffff, &x78);
- { uint32_t x81; uint8_t x82 = _subborrow_u32(x79, x48, 0xffffffff, &x81);
- { uint32_t x84; uint8_t x85 = _subborrow_u32(x82, x51, 0xffffffff, &x84);
- { uint32_t x87; uint8_t x88 = _subborrow_u32(x85, x54, 0xffffffff, &x87);
- { uint32_t x90; uint8_t x91 = _subborrow_u32(x88, x57, 0xffffffff, &x90);
- { uint32_t x93; uint8_t x94 = _subborrow_u32(x91, x60, 0xfffffffd, &x93);
- { uint32_t x96; uint8_t x97 = _subborrow_u32(x94, x63, 0xffffffff, &x96);
- { uint32_t x99; uint8_t x100 = _subborrow_u32(x97, x66, 0xffffffff, &x99);
- { uint32_t x102; uint8_t x103 = _subborrow_u32(x100, x69, 0xffffffff, &x102);
- { uint32_t x105; uint8_t x106 = _subborrow_u32(x103, x72, 0xffffffff, &x105);
- { uint32_t x108; uint8_t x109 = _subborrow_u32(x106, x75, 0x3, &x108);
- { uint32_t _; uint8_t x112 = _subborrow_u32(x109, x76, 0x0, &_);
- { uint32_t x113 = cmovznz32(x112, x108, x75);
- { uint32_t x114 = cmovznz32(x112, x105, x72);
- { uint32_t x115 = cmovznz32(x112, x102, x69);
- { uint32_t x116 = cmovznz32(x112, x99, x66);
- { uint32_t x117 = cmovznz32(x112, x96, x63);
- { uint32_t x118 = cmovznz32(x112, x93, x60);
- { uint32_t x119 = cmovznz32(x112, x90, x57);
- { uint32_t x120 = cmovznz32(x112, x87, x54);
- { uint32_t x121 = cmovznz32(x112, x84, x51);
- { uint32_t x122 = cmovznz32(x112, x81, x48);
- { uint32_t x123 = cmovznz32(x112, x78, x45);
- out[0] = x123;
- out[1] = x122;
- out[2] = x121;
- out[3] = x120;
- out[4] = x119;
- out[5] = x118;
- out[6] = x117;
- out[7] = x116;
- out[8] = x115;
- out[9] = x114;
- out[10] = x113;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e322m2e161m1_11limbs/feadd.v b/src/Specific/montgomery32_2e322m2e161m1_11limbs/feadd.v
deleted file mode 100644
index ab0bfda63..000000000
--- a/src/Specific/montgomery32_2e322m2e161m1_11limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e322m2e161m1_11limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e322m2e161m1_11limbs/feaddDisplay.log b/src/Specific/montgomery32_2e322m2e161m1_11limbs/feaddDisplay.log
deleted file mode 100644
index 4aa00c707..000000000
--- a/src/Specific/montgomery32_2e322m2e161m1_11limbs/feaddDisplay.log
+++ /dev/null
@@ -1,41 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- uint32_t x45, uint8_t x46 = addcarryx_u32(0x0, x5, x25);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x46, x7, x27);
- uint32_t x51, uint8_t x52 = addcarryx_u32(x49, x9, x29);
- uint32_t x54, uint8_t x55 = addcarryx_u32(x52, x11, x31);
- uint32_t x57, uint8_t x58 = addcarryx_u32(x55, x13, x33);
- uint32_t x60, uint8_t x61 = addcarryx_u32(x58, x15, x35);
- uint32_t x63, uint8_t x64 = addcarryx_u32(x61, x17, x37);
- uint32_t x66, uint8_t x67 = addcarryx_u32(x64, x19, x39);
- uint32_t x69, uint8_t x70 = addcarryx_u32(x67, x21, x41);
- uint32_t x72, uint8_t x73 = addcarryx_u32(x70, x23, x43);
- uint32_t x75, uint8_t x76 = addcarryx_u32(x73, x22, x42);
- uint32_t x78, uint8_t x79 = subborrow_u32(0x0, x45, 0xffffffff);
- uint32_t x81, uint8_t x82 = subborrow_u32(x79, x48, 0xffffffff);
- uint32_t x84, uint8_t x85 = subborrow_u32(x82, x51, 0xffffffff);
- uint32_t x87, uint8_t x88 = subborrow_u32(x85, x54, 0xffffffff);
- uint32_t x90, uint8_t x91 = subborrow_u32(x88, x57, 0xffffffff);
- uint32_t x93, uint8_t x94 = subborrow_u32(x91, x60, 0xfffffffd);
- uint32_t x96, uint8_t x97 = subborrow_u32(x94, x63, 0xffffffff);
- uint32_t x99, uint8_t x100 = subborrow_u32(x97, x66, 0xffffffff);
- uint32_t x102, uint8_t x103 = subborrow_u32(x100, x69, 0xffffffff);
- uint32_t x105, uint8_t x106 = subborrow_u32(x103, x72, 0xffffffff);
- uint32_t x108, uint8_t x109 = subborrow_u32(x106, x75, 0x3);
- uint32_t _, uint8_t x112 = subborrow_u32(x109, x76, 0x0);
- uint32_t x113 = cmovznz32(x112, x108, x75);
- uint32_t x114 = cmovznz32(x112, x105, x72);
- uint32_t x115 = cmovznz32(x112, x102, x69);
- uint32_t x116 = cmovznz32(x112, x99, x66);
- uint32_t x117 = cmovznz32(x112, x96, x63);
- uint32_t x118 = cmovznz32(x112, x93, x60);
- uint32_t x119 = cmovznz32(x112, x90, x57);
- uint32_t x120 = cmovznz32(x112, x87, x54);
- uint32_t x121 = cmovznz32(x112, x84, x51);
- uint32_t x122 = cmovznz32(x112, x81, x48);
- uint32_t x123 = cmovznz32(x112, x78, x45);
- return (x113, x114, x115, x116, x117, x118, x119, x120, x121, x122, x123))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e322m2e161m1_11limbs/feaddDisplay.v b/src/Specific/montgomery32_2e322m2e161m1_11limbs/feaddDisplay.v
deleted file mode 100644
index d1049262d..000000000
--- a/src/Specific/montgomery32_2e322m2e161m1_11limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e322m2e161m1_11limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e322m2e161m1_11limbs/femul.v b/src/Specific/montgomery32_2e322m2e161m1_11limbs/femul.v
deleted file mode 100644
index a9a4bbcc0..000000000
--- a/src/Specific/montgomery32_2e322m2e161m1_11limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e322m2e161m1_11limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e322m2e161m1_11limbs/femulDisplay.v b/src/Specific/montgomery32_2e322m2e161m1_11limbs/femulDisplay.v
deleted file mode 100644
index c7eae993b..000000000
--- a/src/Specific/montgomery32_2e322m2e161m1_11limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e322m2e161m1_11limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e322m2e161m1_11limbs/fenz.c b/src/Specific/montgomery32_2e322m2e161m1_11limbs/fenz.c
deleted file mode 100644
index d962eda51..000000000
--- a/src/Specific/montgomery32_2e322m2e161m1_11limbs/fenz.c
+++ /dev/null
@@ -1,25 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[11]) {
- { const uint32_t x19 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x21 = (x20 | x19);
- { uint32_t x22 = (x18 | x21);
- { uint32_t x23 = (x16 | x22);
- { uint32_t x24 = (x14 | x23);
- { uint32_t x25 = (x12 | x24);
- { uint32_t x26 = (x10 | x25);
- { uint32_t x27 = (x8 | x26);
- { uint32_t x28 = (x6 | x27);
- { uint32_t x29 = (x4 | x28);
- { uint32_t x30 = (x2 | x29);
- out[0] = x30;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e322m2e161m1_11limbs/fenz.v b/src/Specific/montgomery32_2e322m2e161m1_11limbs/fenz.v
deleted file mode 100644
index e3d48ddae..000000000
--- a/src/Specific/montgomery32_2e322m2e161m1_11limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e322m2e161m1_11limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e322m2e161m1_11limbs/fenzDisplay.log b/src/Specific/montgomery32_2e322m2e161m1_11limbs/fenzDisplay.log
deleted file mode 100644
index 4c54f68e5..000000000
--- a/src/Specific/montgomery32_2e322m2e161m1_11limbs/fenzDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x21 = (x20 | x19);
- uint32_t x22 = (x18 | x21);
- uint32_t x23 = (x16 | x22);
- uint32_t x24 = (x14 | x23);
- uint32_t x25 = (x12 | x24);
- uint32_t x26 = (x10 | x25);
- uint32_t x27 = (x8 | x26);
- uint32_t x28 = (x6 | x27);
- uint32_t x29 = (x4 | x28);
- uint32_t x30 = (x2 | x29);
- return x30)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e322m2e161m1_11limbs/fenzDisplay.v b/src/Specific/montgomery32_2e322m2e161m1_11limbs/fenzDisplay.v
deleted file mode 100644
index 1e1fae348..000000000
--- a/src/Specific/montgomery32_2e322m2e161m1_11limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e322m2e161m1_11limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e322m2e161m1_11limbs/feopp.v b/src/Specific/montgomery32_2e322m2e161m1_11limbs/feopp.v
deleted file mode 100644
index 1d1ede397..000000000
--- a/src/Specific/montgomery32_2e322m2e161m1_11limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e322m2e161m1_11limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e322m2e161m1_11limbs/feoppDisplay.v b/src/Specific/montgomery32_2e322m2e161m1_11limbs/feoppDisplay.v
deleted file mode 100644
index a24681b48..000000000
--- a/src/Specific/montgomery32_2e322m2e161m1_11limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e322m2e161m1_11limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e322m2e161m1_11limbs/fesquare.c b/src/Specific/montgomery32_2e322m2e161m1_11limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e322m2e161m1_11limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e322m2e161m1_11limbs/fesub.v b/src/Specific/montgomery32_2e322m2e161m1_11limbs/fesub.v
deleted file mode 100644
index e4b3d58f2..000000000
--- a/src/Specific/montgomery32_2e322m2e161m1_11limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e322m2e161m1_11limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e322m2e161m1_11limbs/fesubDisplay.v b/src/Specific/montgomery32_2e322m2e161m1_11limbs/fesubDisplay.v
deleted file mode 100644
index 43e7bb784..000000000
--- a/src/Specific/montgomery32_2e322m2e161m1_11limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e322m2e161m1_11limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e322m2e161m1_11limbs/py_interpreter.sh b/src/Specific/montgomery32_2e322m2e161m1_11limbs/py_interpreter.sh
deleted file mode 100755
index 4762f6ada..000000000
--- a/src/Specific/montgomery32_2e322m2e161m1_11limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**322 - 2**161 - 1' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e336m17_11limbs/CurveParameters.v b/src/Specific/montgomery32_2e336m17_11limbs/CurveParameters.v
deleted file mode 100644
index 231b9ddf7..000000000
--- a/src/Specific/montgomery32_2e336m17_11limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^336 - 17
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 11%nat;
- base := 32;
- bitwidth := 32;
- s := 2^336;
- c := [(1, 17)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e336m17_11limbs/Synthesis.v b/src/Specific/montgomery32_2e336m17_11limbs/Synthesis.v
deleted file mode 100644
index 4741fdc9c..000000000
--- a/src/Specific/montgomery32_2e336m17_11limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e336m17_11limbs.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/montgomery32_2e336m17_11limbs/compiler.sh b/src/Specific/montgomery32_2e336m17_11limbs/compiler.sh
deleted file mode 100755
index 700e474c6..000000000
--- a/src/Specific/montgomery32_2e336m17_11limbs/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,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<336) - 17' "$@"
diff --git a/src/Specific/montgomery32_2e336m17_11limbs/compilerxx.sh b/src/Specific/montgomery32_2e336m17_11limbs/compilerxx.sh
deleted file mode 100755
index eb9ba31e5..000000000
--- a/src/Specific/montgomery32_2e336m17_11limbs/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,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<336) - 17' "$@"
diff --git a/src/Specific/montgomery32_2e336m17_11limbs/feadd.c b/src/Specific/montgomery32_2e336m17_11limbs/feadd.c
deleted file mode 100644
index c5dd7f807..000000000
--- a/src/Specific/montgomery32_2e336m17_11limbs/feadd.c
+++ /dev/null
@@ -1,70 +0,0 @@
-static void feadd(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(0x0, x5, x25, &x45);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x46, x7, x27, &x48);
- { uint32_t x51; uint8_t x52 = _addcarryx_u32(x49, x9, x29, &x51);
- { uint32_t x54; uint8_t x55 = _addcarryx_u32(x52, x11, x31, &x54);
- { uint32_t x57; uint8_t x58 = _addcarryx_u32(x55, x13, x33, &x57);
- { uint32_t x60; uint8_t x61 = _addcarryx_u32(x58, x15, x35, &x60);
- { uint32_t x63; uint8_t x64 = _addcarryx_u32(x61, x17, x37, &x63);
- { uint32_t x66; uint8_t x67 = _addcarryx_u32(x64, x19, x39, &x66);
- { uint32_t x69; uint8_t x70 = _addcarryx_u32(x67, x21, x41, &x69);
- { uint32_t x72; uint8_t x73 = _addcarryx_u32(x70, x23, x43, &x72);
- { uint32_t x75; uint8_t x76 = _addcarryx_u32(x73, x22, x42, &x75);
- { uint32_t x78; uint8_t x79 = _subborrow_u32(0x0, x45, 0xffffffef, &x78);
- { uint32_t x81; uint8_t x82 = _subborrow_u32(x79, x48, 0xffffffff, &x81);
- { uint32_t x84; uint8_t x85 = _subborrow_u32(x82, x51, 0xffffffff, &x84);
- { uint32_t x87; uint8_t x88 = _subborrow_u32(x85, x54, 0xffffffff, &x87);
- { uint32_t x90; uint8_t x91 = _subborrow_u32(x88, x57, 0xffffffff, &x90);
- { uint32_t x93; uint8_t x94 = _subborrow_u32(x91, x60, 0xffffffff, &x93);
- { uint32_t x96; uint8_t x97 = _subborrow_u32(x94, x63, 0xffffffff, &x96);
- { uint32_t x99; uint8_t x100 = _subborrow_u32(x97, x66, 0xffffffff, &x99);
- { uint32_t x102; uint8_t x103 = _subborrow_u32(x100, x69, 0xffffffff, &x102);
- { uint32_t x105; uint8_t x106 = _subborrow_u32(x103, x72, 0xffffffff, &x105);
- { uint32_t x108; uint8_t x109 = _subborrow_u32(x106, x75, 0xffff, &x108);
- { uint32_t _; uint8_t x112 = _subborrow_u32(x109, x76, 0x0, &_);
- { uint32_t x113 = cmovznz32(x112, x108, x75);
- { uint32_t x114 = cmovznz32(x112, x105, x72);
- { uint32_t x115 = cmovznz32(x112, x102, x69);
- { uint32_t x116 = cmovznz32(x112, x99, x66);
- { uint32_t x117 = cmovznz32(x112, x96, x63);
- { uint32_t x118 = cmovznz32(x112, x93, x60);
- { uint32_t x119 = cmovznz32(x112, x90, x57);
- { uint32_t x120 = cmovznz32(x112, x87, x54);
- { uint32_t x121 = cmovznz32(x112, x84, x51);
- { uint32_t x122 = cmovznz32(x112, x81, x48);
- { uint32_t x123 = cmovznz32(x112, x78, x45);
- out[0] = x123;
- out[1] = x122;
- out[2] = x121;
- out[3] = x120;
- out[4] = x119;
- out[5] = x118;
- out[6] = x117;
- out[7] = x116;
- out[8] = x115;
- out[9] = x114;
- out[10] = x113;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e336m17_11limbs/feadd.v b/src/Specific/montgomery32_2e336m17_11limbs/feadd.v
deleted file mode 100644
index 369db708e..000000000
--- a/src/Specific/montgomery32_2e336m17_11limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e336m17_11limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e336m17_11limbs/feaddDisplay.log b/src/Specific/montgomery32_2e336m17_11limbs/feaddDisplay.log
deleted file mode 100644
index 09fdf8d10..000000000
--- a/src/Specific/montgomery32_2e336m17_11limbs/feaddDisplay.log
+++ /dev/null
@@ -1,41 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- uint32_t x45, uint8_t x46 = addcarryx_u32(0x0, x5, x25);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x46, x7, x27);
- uint32_t x51, uint8_t x52 = addcarryx_u32(x49, x9, x29);
- uint32_t x54, uint8_t x55 = addcarryx_u32(x52, x11, x31);
- uint32_t x57, uint8_t x58 = addcarryx_u32(x55, x13, x33);
- uint32_t x60, uint8_t x61 = addcarryx_u32(x58, x15, x35);
- uint32_t x63, uint8_t x64 = addcarryx_u32(x61, x17, x37);
- uint32_t x66, uint8_t x67 = addcarryx_u32(x64, x19, x39);
- uint32_t x69, uint8_t x70 = addcarryx_u32(x67, x21, x41);
- uint32_t x72, uint8_t x73 = addcarryx_u32(x70, x23, x43);
- uint32_t x75, uint8_t x76 = addcarryx_u32(x73, x22, x42);
- uint32_t x78, uint8_t x79 = subborrow_u32(0x0, x45, 0xffffffef);
- uint32_t x81, uint8_t x82 = subborrow_u32(x79, x48, 0xffffffff);
- uint32_t x84, uint8_t x85 = subborrow_u32(x82, x51, 0xffffffff);
- uint32_t x87, uint8_t x88 = subborrow_u32(x85, x54, 0xffffffff);
- uint32_t x90, uint8_t x91 = subborrow_u32(x88, x57, 0xffffffff);
- uint32_t x93, uint8_t x94 = subborrow_u32(x91, x60, 0xffffffff);
- uint32_t x96, uint8_t x97 = subborrow_u32(x94, x63, 0xffffffff);
- uint32_t x99, uint8_t x100 = subborrow_u32(x97, x66, 0xffffffff);
- uint32_t x102, uint8_t x103 = subborrow_u32(x100, x69, 0xffffffff);
- uint32_t x105, uint8_t x106 = subborrow_u32(x103, x72, 0xffffffff);
- uint32_t x108, uint8_t x109 = subborrow_u32(x106, x75, 0xffff);
- uint32_t _, uint8_t x112 = subborrow_u32(x109, x76, 0x0);
- uint32_t x113 = cmovznz32(x112, x108, x75);
- uint32_t x114 = cmovznz32(x112, x105, x72);
- uint32_t x115 = cmovznz32(x112, x102, x69);
- uint32_t x116 = cmovznz32(x112, x99, x66);
- uint32_t x117 = cmovznz32(x112, x96, x63);
- uint32_t x118 = cmovznz32(x112, x93, x60);
- uint32_t x119 = cmovznz32(x112, x90, x57);
- uint32_t x120 = cmovznz32(x112, x87, x54);
- uint32_t x121 = cmovznz32(x112, x84, x51);
- uint32_t x122 = cmovznz32(x112, x81, x48);
- uint32_t x123 = cmovznz32(x112, x78, x45);
- return (x113, x114, x115, x116, x117, x118, x119, x120, x121, x122, x123))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e336m17_11limbs/feaddDisplay.v b/src/Specific/montgomery32_2e336m17_11limbs/feaddDisplay.v
deleted file mode 100644
index 01821896b..000000000
--- a/src/Specific/montgomery32_2e336m17_11limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e336m17_11limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e336m17_11limbs/femul.v b/src/Specific/montgomery32_2e336m17_11limbs/femul.v
deleted file mode 100644
index 1e84c1849..000000000
--- a/src/Specific/montgomery32_2e336m17_11limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e336m17_11limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e336m17_11limbs/femulDisplay.v b/src/Specific/montgomery32_2e336m17_11limbs/femulDisplay.v
deleted file mode 100644
index a1ee7be3c..000000000
--- a/src/Specific/montgomery32_2e336m17_11limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e336m17_11limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e336m17_11limbs/fenz.c b/src/Specific/montgomery32_2e336m17_11limbs/fenz.c
deleted file mode 100644
index d962eda51..000000000
--- a/src/Specific/montgomery32_2e336m17_11limbs/fenz.c
+++ /dev/null
@@ -1,25 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[11]) {
- { const uint32_t x19 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x21 = (x20 | x19);
- { uint32_t x22 = (x18 | x21);
- { uint32_t x23 = (x16 | x22);
- { uint32_t x24 = (x14 | x23);
- { uint32_t x25 = (x12 | x24);
- { uint32_t x26 = (x10 | x25);
- { uint32_t x27 = (x8 | x26);
- { uint32_t x28 = (x6 | x27);
- { uint32_t x29 = (x4 | x28);
- { uint32_t x30 = (x2 | x29);
- out[0] = x30;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e336m17_11limbs/fenz.v b/src/Specific/montgomery32_2e336m17_11limbs/fenz.v
deleted file mode 100644
index 9390ef439..000000000
--- a/src/Specific/montgomery32_2e336m17_11limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e336m17_11limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e336m17_11limbs/fenzDisplay.log b/src/Specific/montgomery32_2e336m17_11limbs/fenzDisplay.log
deleted file mode 100644
index 4c54f68e5..000000000
--- a/src/Specific/montgomery32_2e336m17_11limbs/fenzDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x21 = (x20 | x19);
- uint32_t x22 = (x18 | x21);
- uint32_t x23 = (x16 | x22);
- uint32_t x24 = (x14 | x23);
- uint32_t x25 = (x12 | x24);
- uint32_t x26 = (x10 | x25);
- uint32_t x27 = (x8 | x26);
- uint32_t x28 = (x6 | x27);
- uint32_t x29 = (x4 | x28);
- uint32_t x30 = (x2 | x29);
- return x30)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e336m17_11limbs/fenzDisplay.v b/src/Specific/montgomery32_2e336m17_11limbs/fenzDisplay.v
deleted file mode 100644
index 1336481cb..000000000
--- a/src/Specific/montgomery32_2e336m17_11limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e336m17_11limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e336m17_11limbs/feopp.v b/src/Specific/montgomery32_2e336m17_11limbs/feopp.v
deleted file mode 100644
index ca9d40d78..000000000
--- a/src/Specific/montgomery32_2e336m17_11limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e336m17_11limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e336m17_11limbs/feoppDisplay.v b/src/Specific/montgomery32_2e336m17_11limbs/feoppDisplay.v
deleted file mode 100644
index ff0077782..000000000
--- a/src/Specific/montgomery32_2e336m17_11limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e336m17_11limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e336m17_11limbs/fesquare.c b/src/Specific/montgomery32_2e336m17_11limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e336m17_11limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e336m17_11limbs/fesub.v b/src/Specific/montgomery32_2e336m17_11limbs/fesub.v
deleted file mode 100644
index 7f100b1c3..000000000
--- a/src/Specific/montgomery32_2e336m17_11limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e336m17_11limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e336m17_11limbs/fesubDisplay.v b/src/Specific/montgomery32_2e336m17_11limbs/fesubDisplay.v
deleted file mode 100644
index e0a2ee2da..000000000
--- a/src/Specific/montgomery32_2e336m17_11limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e336m17_11limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e336m17_11limbs/py_interpreter.sh b/src/Specific/montgomery32_2e336m17_11limbs/py_interpreter.sh
deleted file mode 100755
index 53b5fec49..000000000
--- a/src/Specific/montgomery32_2e336m17_11limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**336 - 17' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e336m3_11limbs/CurveParameters.v b/src/Specific/montgomery32_2e336m3_11limbs/CurveParameters.v
deleted file mode 100644
index a03d11c28..000000000
--- a/src/Specific/montgomery32_2e336m3_11limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^336 - 3
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 11%nat;
- base := 32;
- bitwidth := 32;
- s := 2^336;
- c := [(1, 3)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e336m3_11limbs/Synthesis.v b/src/Specific/montgomery32_2e336m3_11limbs/Synthesis.v
deleted file mode 100644
index 21dd2d917..000000000
--- a/src/Specific/montgomery32_2e336m3_11limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e336m3_11limbs.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/montgomery32_2e336m3_11limbs/compiler.sh b/src/Specific/montgomery32_2e336m3_11limbs/compiler.sh
deleted file mode 100755
index cec08f58c..000000000
--- a/src/Specific/montgomery32_2e336m3_11limbs/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,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<336) - 3' "$@"
diff --git a/src/Specific/montgomery32_2e336m3_11limbs/compilerxx.sh b/src/Specific/montgomery32_2e336m3_11limbs/compilerxx.sh
deleted file mode 100755
index 10257d4d8..000000000
--- a/src/Specific/montgomery32_2e336m3_11limbs/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,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<336) - 3' "$@"
diff --git a/src/Specific/montgomery32_2e336m3_11limbs/feadd.c b/src/Specific/montgomery32_2e336m3_11limbs/feadd.c
deleted file mode 100644
index d78f51b80..000000000
--- a/src/Specific/montgomery32_2e336m3_11limbs/feadd.c
+++ /dev/null
@@ -1,70 +0,0 @@
-static void feadd(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(0x0, x5, x25, &x45);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x46, x7, x27, &x48);
- { uint32_t x51; uint8_t x52 = _addcarryx_u32(x49, x9, x29, &x51);
- { uint32_t x54; uint8_t x55 = _addcarryx_u32(x52, x11, x31, &x54);
- { uint32_t x57; uint8_t x58 = _addcarryx_u32(x55, x13, x33, &x57);
- { uint32_t x60; uint8_t x61 = _addcarryx_u32(x58, x15, x35, &x60);
- { uint32_t x63; uint8_t x64 = _addcarryx_u32(x61, x17, x37, &x63);
- { uint32_t x66; uint8_t x67 = _addcarryx_u32(x64, x19, x39, &x66);
- { uint32_t x69; uint8_t x70 = _addcarryx_u32(x67, x21, x41, &x69);
- { uint32_t x72; uint8_t x73 = _addcarryx_u32(x70, x23, x43, &x72);
- { uint32_t x75; uint8_t x76 = _addcarryx_u32(x73, x22, x42, &x75);
- { uint32_t x78; uint8_t x79 = _subborrow_u32(0x0, x45, 0xfffffffd, &x78);
- { uint32_t x81; uint8_t x82 = _subborrow_u32(x79, x48, 0xffffffff, &x81);
- { uint32_t x84; uint8_t x85 = _subborrow_u32(x82, x51, 0xffffffff, &x84);
- { uint32_t x87; uint8_t x88 = _subborrow_u32(x85, x54, 0xffffffff, &x87);
- { uint32_t x90; uint8_t x91 = _subborrow_u32(x88, x57, 0xffffffff, &x90);
- { uint32_t x93; uint8_t x94 = _subborrow_u32(x91, x60, 0xffffffff, &x93);
- { uint32_t x96; uint8_t x97 = _subborrow_u32(x94, x63, 0xffffffff, &x96);
- { uint32_t x99; uint8_t x100 = _subborrow_u32(x97, x66, 0xffffffff, &x99);
- { uint32_t x102; uint8_t x103 = _subborrow_u32(x100, x69, 0xffffffff, &x102);
- { uint32_t x105; uint8_t x106 = _subborrow_u32(x103, x72, 0xffffffff, &x105);
- { uint32_t x108; uint8_t x109 = _subborrow_u32(x106, x75, 0xffff, &x108);
- { uint32_t _; uint8_t x112 = _subborrow_u32(x109, x76, 0x0, &_);
- { uint32_t x113 = cmovznz32(x112, x108, x75);
- { uint32_t x114 = cmovznz32(x112, x105, x72);
- { uint32_t x115 = cmovznz32(x112, x102, x69);
- { uint32_t x116 = cmovznz32(x112, x99, x66);
- { uint32_t x117 = cmovznz32(x112, x96, x63);
- { uint32_t x118 = cmovznz32(x112, x93, x60);
- { uint32_t x119 = cmovznz32(x112, x90, x57);
- { uint32_t x120 = cmovznz32(x112, x87, x54);
- { uint32_t x121 = cmovznz32(x112, x84, x51);
- { uint32_t x122 = cmovznz32(x112, x81, x48);
- { uint32_t x123 = cmovznz32(x112, x78, x45);
- out[0] = x123;
- out[1] = x122;
- out[2] = x121;
- out[3] = x120;
- out[4] = x119;
- out[5] = x118;
- out[6] = x117;
- out[7] = x116;
- out[8] = x115;
- out[9] = x114;
- out[10] = x113;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e336m3_11limbs/feadd.v b/src/Specific/montgomery32_2e336m3_11limbs/feadd.v
deleted file mode 100644
index 3c374f5a4..000000000
--- a/src/Specific/montgomery32_2e336m3_11limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e336m3_11limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e336m3_11limbs/feaddDisplay.log b/src/Specific/montgomery32_2e336m3_11limbs/feaddDisplay.log
deleted file mode 100644
index fffeb4702..000000000
--- a/src/Specific/montgomery32_2e336m3_11limbs/feaddDisplay.log
+++ /dev/null
@@ -1,41 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- uint32_t x45, uint8_t x46 = addcarryx_u32(0x0, x5, x25);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x46, x7, x27);
- uint32_t x51, uint8_t x52 = addcarryx_u32(x49, x9, x29);
- uint32_t x54, uint8_t x55 = addcarryx_u32(x52, x11, x31);
- uint32_t x57, uint8_t x58 = addcarryx_u32(x55, x13, x33);
- uint32_t x60, uint8_t x61 = addcarryx_u32(x58, x15, x35);
- uint32_t x63, uint8_t x64 = addcarryx_u32(x61, x17, x37);
- uint32_t x66, uint8_t x67 = addcarryx_u32(x64, x19, x39);
- uint32_t x69, uint8_t x70 = addcarryx_u32(x67, x21, x41);
- uint32_t x72, uint8_t x73 = addcarryx_u32(x70, x23, x43);
- uint32_t x75, uint8_t x76 = addcarryx_u32(x73, x22, x42);
- uint32_t x78, uint8_t x79 = subborrow_u32(0x0, x45, 0xfffffffd);
- uint32_t x81, uint8_t x82 = subborrow_u32(x79, x48, 0xffffffff);
- uint32_t x84, uint8_t x85 = subborrow_u32(x82, x51, 0xffffffff);
- uint32_t x87, uint8_t x88 = subborrow_u32(x85, x54, 0xffffffff);
- uint32_t x90, uint8_t x91 = subborrow_u32(x88, x57, 0xffffffff);
- uint32_t x93, uint8_t x94 = subborrow_u32(x91, x60, 0xffffffff);
- uint32_t x96, uint8_t x97 = subborrow_u32(x94, x63, 0xffffffff);
- uint32_t x99, uint8_t x100 = subborrow_u32(x97, x66, 0xffffffff);
- uint32_t x102, uint8_t x103 = subborrow_u32(x100, x69, 0xffffffff);
- uint32_t x105, uint8_t x106 = subborrow_u32(x103, x72, 0xffffffff);
- uint32_t x108, uint8_t x109 = subborrow_u32(x106, x75, 0xffff);
- uint32_t _, uint8_t x112 = subborrow_u32(x109, x76, 0x0);
- uint32_t x113 = cmovznz32(x112, x108, x75);
- uint32_t x114 = cmovznz32(x112, x105, x72);
- uint32_t x115 = cmovznz32(x112, x102, x69);
- uint32_t x116 = cmovznz32(x112, x99, x66);
- uint32_t x117 = cmovznz32(x112, x96, x63);
- uint32_t x118 = cmovznz32(x112, x93, x60);
- uint32_t x119 = cmovznz32(x112, x90, x57);
- uint32_t x120 = cmovznz32(x112, x87, x54);
- uint32_t x121 = cmovznz32(x112, x84, x51);
- uint32_t x122 = cmovznz32(x112, x81, x48);
- uint32_t x123 = cmovznz32(x112, x78, x45);
- return (x113, x114, x115, x116, x117, x118, x119, x120, x121, x122, x123))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e336m3_11limbs/feaddDisplay.v b/src/Specific/montgomery32_2e336m3_11limbs/feaddDisplay.v
deleted file mode 100644
index 212abe903..000000000
--- a/src/Specific/montgomery32_2e336m3_11limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e336m3_11limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e336m3_11limbs/femul.v b/src/Specific/montgomery32_2e336m3_11limbs/femul.v
deleted file mode 100644
index a6f82db7a..000000000
--- a/src/Specific/montgomery32_2e336m3_11limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e336m3_11limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e336m3_11limbs/femulDisplay.v b/src/Specific/montgomery32_2e336m3_11limbs/femulDisplay.v
deleted file mode 100644
index 535c664ae..000000000
--- a/src/Specific/montgomery32_2e336m3_11limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e336m3_11limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e336m3_11limbs/fenz.c b/src/Specific/montgomery32_2e336m3_11limbs/fenz.c
deleted file mode 100644
index d962eda51..000000000
--- a/src/Specific/montgomery32_2e336m3_11limbs/fenz.c
+++ /dev/null
@@ -1,25 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[11]) {
- { const uint32_t x19 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x21 = (x20 | x19);
- { uint32_t x22 = (x18 | x21);
- { uint32_t x23 = (x16 | x22);
- { uint32_t x24 = (x14 | x23);
- { uint32_t x25 = (x12 | x24);
- { uint32_t x26 = (x10 | x25);
- { uint32_t x27 = (x8 | x26);
- { uint32_t x28 = (x6 | x27);
- { uint32_t x29 = (x4 | x28);
- { uint32_t x30 = (x2 | x29);
- out[0] = x30;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e336m3_11limbs/fenz.v b/src/Specific/montgomery32_2e336m3_11limbs/fenz.v
deleted file mode 100644
index 4b2aeb976..000000000
--- a/src/Specific/montgomery32_2e336m3_11limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e336m3_11limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e336m3_11limbs/fenzDisplay.log b/src/Specific/montgomery32_2e336m3_11limbs/fenzDisplay.log
deleted file mode 100644
index 4c54f68e5..000000000
--- a/src/Specific/montgomery32_2e336m3_11limbs/fenzDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x21 = (x20 | x19);
- uint32_t x22 = (x18 | x21);
- uint32_t x23 = (x16 | x22);
- uint32_t x24 = (x14 | x23);
- uint32_t x25 = (x12 | x24);
- uint32_t x26 = (x10 | x25);
- uint32_t x27 = (x8 | x26);
- uint32_t x28 = (x6 | x27);
- uint32_t x29 = (x4 | x28);
- uint32_t x30 = (x2 | x29);
- return x30)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e336m3_11limbs/fenzDisplay.v b/src/Specific/montgomery32_2e336m3_11limbs/fenzDisplay.v
deleted file mode 100644
index b09ceff76..000000000
--- a/src/Specific/montgomery32_2e336m3_11limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e336m3_11limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e336m3_11limbs/feopp.v b/src/Specific/montgomery32_2e336m3_11limbs/feopp.v
deleted file mode 100644
index b26c2ecc0..000000000
--- a/src/Specific/montgomery32_2e336m3_11limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e336m3_11limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e336m3_11limbs/feoppDisplay.v b/src/Specific/montgomery32_2e336m3_11limbs/feoppDisplay.v
deleted file mode 100644
index 54c141533..000000000
--- a/src/Specific/montgomery32_2e336m3_11limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e336m3_11limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e336m3_11limbs/fesquare.c b/src/Specific/montgomery32_2e336m3_11limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e336m3_11limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e336m3_11limbs/fesub.v b/src/Specific/montgomery32_2e336m3_11limbs/fesub.v
deleted file mode 100644
index 834a4fcbf..000000000
--- a/src/Specific/montgomery32_2e336m3_11limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e336m3_11limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e336m3_11limbs/fesubDisplay.v b/src/Specific/montgomery32_2e336m3_11limbs/fesubDisplay.v
deleted file mode 100644
index e0d814d02..000000000
--- a/src/Specific/montgomery32_2e336m3_11limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e336m3_11limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e336m3_11limbs/py_interpreter.sh b/src/Specific/montgomery32_2e336m3_11limbs/py_interpreter.sh
deleted file mode 100755
index 6ab4b54d5..000000000
--- a/src/Specific/montgomery32_2e336m3_11limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**336 - 3' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e338m15_11limbs/CurveParameters.v b/src/Specific/montgomery32_2e338m15_11limbs/CurveParameters.v
deleted file mode 100644
index acab46614..000000000
--- a/src/Specific/montgomery32_2e338m15_11limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^338 - 15
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 11%nat;
- base := 32;
- bitwidth := 32;
- s := 2^338;
- c := [(1, 15)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e338m15_11limbs/Synthesis.v b/src/Specific/montgomery32_2e338m15_11limbs/Synthesis.v
deleted file mode 100644
index c94a68c6a..000000000
--- a/src/Specific/montgomery32_2e338m15_11limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e338m15_11limbs.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/montgomery32_2e338m15_11limbs/compiler.sh b/src/Specific/montgomery32_2e338m15_11limbs/compiler.sh
deleted file mode 100755
index d2f4d779e..000000000
--- a/src/Specific/montgomery32_2e338m15_11limbs/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,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='43' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<338) - 15' "$@"
diff --git a/src/Specific/montgomery32_2e338m15_11limbs/compilerxx.sh b/src/Specific/montgomery32_2e338m15_11limbs/compilerxx.sh
deleted file mode 100755
index 5dda1826c..000000000
--- a/src/Specific/montgomery32_2e338m15_11limbs/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,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='43' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<338) - 15' "$@"
diff --git a/src/Specific/montgomery32_2e338m15_11limbs/feadd.c b/src/Specific/montgomery32_2e338m15_11limbs/feadd.c
deleted file mode 100644
index 7883f5102..000000000
--- a/src/Specific/montgomery32_2e338m15_11limbs/feadd.c
+++ /dev/null
@@ -1,70 +0,0 @@
-static void feadd(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- { uint32_t x45; uint8_t x46 = _addcarryx_u32(0x0, x5, x25, &x45);
- { uint32_t x48; uint8_t x49 = _addcarryx_u32(x46, x7, x27, &x48);
- { uint32_t x51; uint8_t x52 = _addcarryx_u32(x49, x9, x29, &x51);
- { uint32_t x54; uint8_t x55 = _addcarryx_u32(x52, x11, x31, &x54);
- { uint32_t x57; uint8_t x58 = _addcarryx_u32(x55, x13, x33, &x57);
- { uint32_t x60; uint8_t x61 = _addcarryx_u32(x58, x15, x35, &x60);
- { uint32_t x63; uint8_t x64 = _addcarryx_u32(x61, x17, x37, &x63);
- { uint32_t x66; uint8_t x67 = _addcarryx_u32(x64, x19, x39, &x66);
- { uint32_t x69; uint8_t x70 = _addcarryx_u32(x67, x21, x41, &x69);
- { uint32_t x72; uint8_t x73 = _addcarryx_u32(x70, x23, x43, &x72);
- { uint32_t x75; uint8_t x76 = _addcarryx_u32(x73, x22, x42, &x75);
- { uint32_t x78; uint8_t x79 = _subborrow_u32(0x0, x45, 0xfffffff1, &x78);
- { uint32_t x81; uint8_t x82 = _subborrow_u32(x79, x48, 0xffffffff, &x81);
- { uint32_t x84; uint8_t x85 = _subborrow_u32(x82, x51, 0xffffffff, &x84);
- { uint32_t x87; uint8_t x88 = _subborrow_u32(x85, x54, 0xffffffff, &x87);
- { uint32_t x90; uint8_t x91 = _subborrow_u32(x88, x57, 0xffffffff, &x90);
- { uint32_t x93; uint8_t x94 = _subborrow_u32(x91, x60, 0xffffffff, &x93);
- { uint32_t x96; uint8_t x97 = _subborrow_u32(x94, x63, 0xffffffff, &x96);
- { uint32_t x99; uint8_t x100 = _subborrow_u32(x97, x66, 0xffffffff, &x99);
- { uint32_t x102; uint8_t x103 = _subborrow_u32(x100, x69, 0xffffffff, &x102);
- { uint32_t x105; uint8_t x106 = _subborrow_u32(x103, x72, 0xffffffff, &x105);
- { uint32_t x108; uint8_t x109 = _subborrow_u32(x106, x75, 0x3ffff, &x108);
- { uint32_t _; uint8_t x112 = _subborrow_u32(x109, x76, 0x0, &_);
- { uint32_t x113 = cmovznz32(x112, x108, x75);
- { uint32_t x114 = cmovznz32(x112, x105, x72);
- { uint32_t x115 = cmovznz32(x112, x102, x69);
- { uint32_t x116 = cmovznz32(x112, x99, x66);
- { uint32_t x117 = cmovznz32(x112, x96, x63);
- { uint32_t x118 = cmovznz32(x112, x93, x60);
- { uint32_t x119 = cmovznz32(x112, x90, x57);
- { uint32_t x120 = cmovznz32(x112, x87, x54);
- { uint32_t x121 = cmovznz32(x112, x84, x51);
- { uint32_t x122 = cmovznz32(x112, x81, x48);
- { uint32_t x123 = cmovznz32(x112, x78, x45);
- out[0] = x123;
- out[1] = x122;
- out[2] = x121;
- out[3] = x120;
- out[4] = x119;
- out[5] = x118;
- out[6] = x117;
- out[7] = x116;
- out[8] = x115;
- out[9] = x114;
- out[10] = x113;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e338m15_11limbs/feadd.v b/src/Specific/montgomery32_2e338m15_11limbs/feadd.v
deleted file mode 100644
index f2e3a7a1e..000000000
--- a/src/Specific/montgomery32_2e338m15_11limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e338m15_11limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e338m15_11limbs/feaddDisplay.log b/src/Specific/montgomery32_2e338m15_11limbs/feaddDisplay.log
deleted file mode 100644
index 0c5d2c998..000000000
--- a/src/Specific/montgomery32_2e338m15_11limbs/feaddDisplay.log
+++ /dev/null
@@ -1,41 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- uint32_t x45, uint8_t x46 = addcarryx_u32(0x0, x5, x25);
- uint32_t x48, uint8_t x49 = addcarryx_u32(x46, x7, x27);
- uint32_t x51, uint8_t x52 = addcarryx_u32(x49, x9, x29);
- uint32_t x54, uint8_t x55 = addcarryx_u32(x52, x11, x31);
- uint32_t x57, uint8_t x58 = addcarryx_u32(x55, x13, x33);
- uint32_t x60, uint8_t x61 = addcarryx_u32(x58, x15, x35);
- uint32_t x63, uint8_t x64 = addcarryx_u32(x61, x17, x37);
- uint32_t x66, uint8_t x67 = addcarryx_u32(x64, x19, x39);
- uint32_t x69, uint8_t x70 = addcarryx_u32(x67, x21, x41);
- uint32_t x72, uint8_t x73 = addcarryx_u32(x70, x23, x43);
- uint32_t x75, uint8_t x76 = addcarryx_u32(x73, x22, x42);
- uint32_t x78, uint8_t x79 = subborrow_u32(0x0, x45, 0xfffffff1);
- uint32_t x81, uint8_t x82 = subborrow_u32(x79, x48, 0xffffffff);
- uint32_t x84, uint8_t x85 = subborrow_u32(x82, x51, 0xffffffff);
- uint32_t x87, uint8_t x88 = subborrow_u32(x85, x54, 0xffffffff);
- uint32_t x90, uint8_t x91 = subborrow_u32(x88, x57, 0xffffffff);
- uint32_t x93, uint8_t x94 = subborrow_u32(x91, x60, 0xffffffff);
- uint32_t x96, uint8_t x97 = subborrow_u32(x94, x63, 0xffffffff);
- uint32_t x99, uint8_t x100 = subborrow_u32(x97, x66, 0xffffffff);
- uint32_t x102, uint8_t x103 = subborrow_u32(x100, x69, 0xffffffff);
- uint32_t x105, uint8_t x106 = subborrow_u32(x103, x72, 0xffffffff);
- uint32_t x108, uint8_t x109 = subborrow_u32(x106, x75, 0x3ffff);
- uint32_t _, uint8_t x112 = subborrow_u32(x109, x76, 0x0);
- uint32_t x113 = cmovznz32(x112, x108, x75);
- uint32_t x114 = cmovznz32(x112, x105, x72);
- uint32_t x115 = cmovznz32(x112, x102, x69);
- uint32_t x116 = cmovznz32(x112, x99, x66);
- uint32_t x117 = cmovznz32(x112, x96, x63);
- uint32_t x118 = cmovznz32(x112, x93, x60);
- uint32_t x119 = cmovznz32(x112, x90, x57);
- uint32_t x120 = cmovznz32(x112, x87, x54);
- uint32_t x121 = cmovznz32(x112, x84, x51);
- uint32_t x122 = cmovznz32(x112, x81, x48);
- uint32_t x123 = cmovznz32(x112, x78, x45);
- return (x113, x114, x115, x116, x117, x118, x119, x120, x121, x122, x123))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e338m15_11limbs/feaddDisplay.v b/src/Specific/montgomery32_2e338m15_11limbs/feaddDisplay.v
deleted file mode 100644
index 8525953eb..000000000
--- a/src/Specific/montgomery32_2e338m15_11limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e338m15_11limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e338m15_11limbs/femul.v b/src/Specific/montgomery32_2e338m15_11limbs/femul.v
deleted file mode 100644
index e2631f9f4..000000000
--- a/src/Specific/montgomery32_2e338m15_11limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e338m15_11limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e338m15_11limbs/femulDisplay.v b/src/Specific/montgomery32_2e338m15_11limbs/femulDisplay.v
deleted file mode 100644
index 0b1d27781..000000000
--- a/src/Specific/montgomery32_2e338m15_11limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e338m15_11limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e338m15_11limbs/fenz.c b/src/Specific/montgomery32_2e338m15_11limbs/fenz.c
deleted file mode 100644
index d962eda51..000000000
--- a/src/Specific/montgomery32_2e338m15_11limbs/fenz.c
+++ /dev/null
@@ -1,25 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[11]) {
- { const uint32_t x19 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x21 = (x20 | x19);
- { uint32_t x22 = (x18 | x21);
- { uint32_t x23 = (x16 | x22);
- { uint32_t x24 = (x14 | x23);
- { uint32_t x25 = (x12 | x24);
- { uint32_t x26 = (x10 | x25);
- { uint32_t x27 = (x8 | x26);
- { uint32_t x28 = (x6 | x27);
- { uint32_t x29 = (x4 | x28);
- { uint32_t x30 = (x2 | x29);
- out[0] = x30;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e338m15_11limbs/fenz.v b/src/Specific/montgomery32_2e338m15_11limbs/fenz.v
deleted file mode 100644
index b1e974202..000000000
--- a/src/Specific/montgomery32_2e338m15_11limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e338m15_11limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e338m15_11limbs/fenzDisplay.log b/src/Specific/montgomery32_2e338m15_11limbs/fenzDisplay.log
deleted file mode 100644
index 4c54f68e5..000000000
--- a/src/Specific/montgomery32_2e338m15_11limbs/fenzDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x21 = (x20 | x19);
- uint32_t x22 = (x18 | x21);
- uint32_t x23 = (x16 | x22);
- uint32_t x24 = (x14 | x23);
- uint32_t x25 = (x12 | x24);
- uint32_t x26 = (x10 | x25);
- uint32_t x27 = (x8 | x26);
- uint32_t x28 = (x6 | x27);
- uint32_t x29 = (x4 | x28);
- uint32_t x30 = (x2 | x29);
- return x30)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e338m15_11limbs/fenzDisplay.v b/src/Specific/montgomery32_2e338m15_11limbs/fenzDisplay.v
deleted file mode 100644
index b4fbe0c5f..000000000
--- a/src/Specific/montgomery32_2e338m15_11limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e338m15_11limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e338m15_11limbs/feopp.v b/src/Specific/montgomery32_2e338m15_11limbs/feopp.v
deleted file mode 100644
index 12a89a350..000000000
--- a/src/Specific/montgomery32_2e338m15_11limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e338m15_11limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e338m15_11limbs/feoppDisplay.v b/src/Specific/montgomery32_2e338m15_11limbs/feoppDisplay.v
deleted file mode 100644
index b483ec2b6..000000000
--- a/src/Specific/montgomery32_2e338m15_11limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e338m15_11limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e338m15_11limbs/fesquare.c b/src/Specific/montgomery32_2e338m15_11limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e338m15_11limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e338m15_11limbs/fesub.v b/src/Specific/montgomery32_2e338m15_11limbs/fesub.v
deleted file mode 100644
index 0a71a37fa..000000000
--- a/src/Specific/montgomery32_2e338m15_11limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e338m15_11limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e338m15_11limbs/fesubDisplay.v b/src/Specific/montgomery32_2e338m15_11limbs/fesubDisplay.v
deleted file mode 100644
index 4b5cb5552..000000000
--- a/src/Specific/montgomery32_2e338m15_11limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e338m15_11limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e338m15_11limbs/py_interpreter.sh b/src/Specific/montgomery32_2e338m15_11limbs/py_interpreter.sh
deleted file mode 100755
index 892e73f13..000000000
--- a/src/Specific/montgomery32_2e338m15_11limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**338 - 15' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e369m25_12limbs/CurveParameters.v b/src/Specific/montgomery32_2e369m25_12limbs/CurveParameters.v
deleted file mode 100644
index 0ebd0e29c..000000000
--- a/src/Specific/montgomery32_2e369m25_12limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^369 - 25
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 12%nat;
- base := 32;
- bitwidth := 32;
- s := 2^369;
- c := [(1, 25)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e369m25_12limbs/Synthesis.v b/src/Specific/montgomery32_2e369m25_12limbs/Synthesis.v
deleted file mode 100644
index 30638ff55..000000000
--- a/src/Specific/montgomery32_2e369m25_12limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e369m25_12limbs.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/montgomery32_2e369m25_12limbs/compiler.sh b/src/Specific/montgomery32_2e369m25_12limbs/compiler.sh
deleted file mode 100755
index 7b6cb8655..000000000
--- a/src/Specific/montgomery32_2e369m25_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='47' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<369) - 25' "$@"
diff --git a/src/Specific/montgomery32_2e369m25_12limbs/compilerxx.sh b/src/Specific/montgomery32_2e369m25_12limbs/compilerxx.sh
deleted file mode 100755
index 9dc6273ba..000000000
--- a/src/Specific/montgomery32_2e369m25_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='47' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<369) - 25' "$@"
diff --git a/src/Specific/montgomery32_2e369m25_12limbs/feadd.c b/src/Specific/montgomery32_2e369m25_12limbs/feadd.c
deleted file mode 100644
index 36dd32b7d..000000000
--- a/src/Specific/montgomery32_2e369m25_12limbs/feadd.c
+++ /dev/null
@@ -1,76 +0,0 @@
-static void feadd(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(0x0, x5, x27, &x49);
- { uint32_t x52; uint8_t x53 = _addcarryx_u32(x50, x7, x29, &x52);
- { uint32_t x55; uint8_t x56 = _addcarryx_u32(x53, x9, x31, &x55);
- { uint32_t x58; uint8_t x59 = _addcarryx_u32(x56, x11, x33, &x58);
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(x59, x13, x35, &x61);
- { uint32_t x64; uint8_t x65 = _addcarryx_u32(x62, x15, x37, &x64);
- { uint32_t x67; uint8_t x68 = _addcarryx_u32(x65, x17, x39, &x67);
- { uint32_t x70; uint8_t x71 = _addcarryx_u32(x68, x19, x41, &x70);
- { uint32_t x73; uint8_t x74 = _addcarryx_u32(x71, x21, x43, &x73);
- { uint32_t x76; uint8_t x77 = _addcarryx_u32(x74, x23, x45, &x76);
- { uint32_t x79; uint8_t x80 = _addcarryx_u32(x77, x25, x47, &x79);
- { uint32_t x82; uint8_t x83 = _addcarryx_u32(x80, x24, x46, &x82);
- { uint32_t x85; uint8_t x86 = _subborrow_u32(0x0, x49, 0xffffffe7, &x85);
- { uint32_t x88; uint8_t x89 = _subborrow_u32(x86, x52, 0xffffffff, &x88);
- { uint32_t x91; uint8_t x92 = _subborrow_u32(x89, x55, 0xffffffff, &x91);
- { uint32_t x94; uint8_t x95 = _subborrow_u32(x92, x58, 0xffffffff, &x94);
- { uint32_t x97; uint8_t x98 = _subborrow_u32(x95, x61, 0xffffffff, &x97);
- { uint32_t x100; uint8_t x101 = _subborrow_u32(x98, x64, 0xffffffff, &x100);
- { uint32_t x103; uint8_t x104 = _subborrow_u32(x101, x67, 0xffffffff, &x103);
- { uint32_t x106; uint8_t x107 = _subborrow_u32(x104, x70, 0xffffffff, &x106);
- { uint32_t x109; uint8_t x110 = _subborrow_u32(x107, x73, 0xffffffff, &x109);
- { uint32_t x112; uint8_t x113 = _subborrow_u32(x110, x76, 0xffffffff, &x112);
- { uint32_t x115; uint8_t x116 = _subborrow_u32(x113, x79, 0xffffffff, &x115);
- { uint32_t x118; uint8_t x119 = _subborrow_u32(x116, x82, 0x1ffff, &x118);
- { uint32_t _; uint8_t x122 = _subborrow_u32(x119, x83, 0x0, &_);
- { uint32_t x123 = cmovznz32(x122, x118, x82);
- { uint32_t x124 = cmovznz32(x122, x115, x79);
- { uint32_t x125 = cmovznz32(x122, x112, x76);
- { uint32_t x126 = cmovznz32(x122, x109, x73);
- { uint32_t x127 = cmovznz32(x122, x106, x70);
- { uint32_t x128 = cmovznz32(x122, x103, x67);
- { uint32_t x129 = cmovznz32(x122, x100, x64);
- { uint32_t x130 = cmovznz32(x122, x97, x61);
- { uint32_t x131 = cmovznz32(x122, x94, x58);
- { uint32_t x132 = cmovznz32(x122, x91, x55);
- { uint32_t x133 = cmovznz32(x122, x88, x52);
- { uint32_t x134 = cmovznz32(x122, x85, x49);
- out[0] = x134;
- out[1] = x133;
- out[2] = x132;
- out[3] = x131;
- out[4] = x130;
- out[5] = x129;
- out[6] = x128;
- out[7] = x127;
- out[8] = x126;
- out[9] = x125;
- out[10] = x124;
- out[11] = x123;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e369m25_12limbs/feadd.v b/src/Specific/montgomery32_2e369m25_12limbs/feadd.v
deleted file mode 100644
index 1542a1e7c..000000000
--- a/src/Specific/montgomery32_2e369m25_12limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e369m25_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e369m25_12limbs/feaddDisplay.log b/src/Specific/montgomery32_2e369m25_12limbs/feaddDisplay.log
deleted file mode 100644
index 16fda009a..000000000
--- a/src/Specific/montgomery32_2e369m25_12limbs/feaddDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- uint32_t x49, uint8_t x50 = addcarryx_u32(0x0, x5, x27);
- uint32_t x52, uint8_t x53 = addcarryx_u32(x50, x7, x29);
- uint32_t x55, uint8_t x56 = addcarryx_u32(x53, x9, x31);
- uint32_t x58, uint8_t x59 = addcarryx_u32(x56, x11, x33);
- uint32_t x61, uint8_t x62 = addcarryx_u32(x59, x13, x35);
- uint32_t x64, uint8_t x65 = addcarryx_u32(x62, x15, x37);
- uint32_t x67, uint8_t x68 = addcarryx_u32(x65, x17, x39);
- uint32_t x70, uint8_t x71 = addcarryx_u32(x68, x19, x41);
- uint32_t x73, uint8_t x74 = addcarryx_u32(x71, x21, x43);
- uint32_t x76, uint8_t x77 = addcarryx_u32(x74, x23, x45);
- uint32_t x79, uint8_t x80 = addcarryx_u32(x77, x25, x47);
- uint32_t x82, uint8_t x83 = addcarryx_u32(x80, x24, x46);
- uint32_t x85, uint8_t x86 = subborrow_u32(0x0, x49, 0xffffffe7);
- uint32_t x88, uint8_t x89 = subborrow_u32(x86, x52, 0xffffffff);
- uint32_t x91, uint8_t x92 = subborrow_u32(x89, x55, 0xffffffff);
- uint32_t x94, uint8_t x95 = subborrow_u32(x92, x58, 0xffffffff);
- uint32_t x97, uint8_t x98 = subborrow_u32(x95, x61, 0xffffffff);
- uint32_t x100, uint8_t x101 = subborrow_u32(x98, x64, 0xffffffff);
- uint32_t x103, uint8_t x104 = subborrow_u32(x101, x67, 0xffffffff);
- uint32_t x106, uint8_t x107 = subborrow_u32(x104, x70, 0xffffffff);
- uint32_t x109, uint8_t x110 = subborrow_u32(x107, x73, 0xffffffff);
- uint32_t x112, uint8_t x113 = subborrow_u32(x110, x76, 0xffffffff);
- uint32_t x115, uint8_t x116 = subborrow_u32(x113, x79, 0xffffffff);
- uint32_t x118, uint8_t x119 = subborrow_u32(x116, x82, 0x1ffff);
- uint32_t _, uint8_t x122 = subborrow_u32(x119, x83, 0x0);
- uint32_t x123 = cmovznz32(x122, x118, x82);
- uint32_t x124 = cmovznz32(x122, x115, x79);
- uint32_t x125 = cmovznz32(x122, x112, x76);
- uint32_t x126 = cmovznz32(x122, x109, x73);
- uint32_t x127 = cmovznz32(x122, x106, x70);
- uint32_t x128 = cmovznz32(x122, x103, x67);
- uint32_t x129 = cmovznz32(x122, x100, x64);
- uint32_t x130 = cmovznz32(x122, x97, x61);
- uint32_t x131 = cmovznz32(x122, x94, x58);
- uint32_t x132 = cmovznz32(x122, x91, x55);
- uint32_t x133 = cmovznz32(x122, x88, x52);
- uint32_t x134 = cmovznz32(x122, x85, x49);
- return (x123, x124, x125, x126, x127, x128, x129, x130, x131, x132, x133, x134))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e369m25_12limbs/feaddDisplay.v b/src/Specific/montgomery32_2e369m25_12limbs/feaddDisplay.v
deleted file mode 100644
index 4edb5aa93..000000000
--- a/src/Specific/montgomery32_2e369m25_12limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e369m25_12limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e369m25_12limbs/femul.v b/src/Specific/montgomery32_2e369m25_12limbs/femul.v
deleted file mode 100644
index 0c931961c..000000000
--- a/src/Specific/montgomery32_2e369m25_12limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e369m25_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e369m25_12limbs/femulDisplay.v b/src/Specific/montgomery32_2e369m25_12limbs/femulDisplay.v
deleted file mode 100644
index 1207a3651..000000000
--- a/src/Specific/montgomery32_2e369m25_12limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e369m25_12limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e369m25_12limbs/fenz.c b/src/Specific/montgomery32_2e369m25_12limbs/fenz.c
deleted file mode 100644
index 61ca36c29..000000000
--- a/src/Specific/montgomery32_2e369m25_12limbs/fenz.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x23 = (x22 | x21);
- { uint32_t x24 = (x20 | x23);
- { uint32_t x25 = (x18 | x24);
- { uint32_t x26 = (x16 | x25);
- { uint32_t x27 = (x14 | x26);
- { uint32_t x28 = (x12 | x27);
- { uint32_t x29 = (x10 | x28);
- { uint32_t x30 = (x8 | x29);
- { uint32_t x31 = (x6 | x30);
- { uint32_t x32 = (x4 | x31);
- { uint32_t x33 = (x2 | x32);
- out[0] = x33;
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e369m25_12limbs/fenz.v b/src/Specific/montgomery32_2e369m25_12limbs/fenz.v
deleted file mode 100644
index a5fb2770d..000000000
--- a/src/Specific/montgomery32_2e369m25_12limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e369m25_12limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e369m25_12limbs/fenzDisplay.log b/src/Specific/montgomery32_2e369m25_12limbs/fenzDisplay.log
deleted file mode 100644
index 7a5f016e0..000000000
--- a/src/Specific/montgomery32_2e369m25_12limbs/fenzDisplay.log
+++ /dev/null
@@ -1,18 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x23 = (x22 | x21);
- uint32_t x24 = (x20 | x23);
- uint32_t x25 = (x18 | x24);
- uint32_t x26 = (x16 | x25);
- uint32_t x27 = (x14 | x26);
- uint32_t x28 = (x12 | x27);
- uint32_t x29 = (x10 | x28);
- uint32_t x30 = (x8 | x29);
- uint32_t x31 = (x6 | x30);
- uint32_t x32 = (x4 | x31);
- uint32_t x33 = (x2 | x32);
- return x33)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e369m25_12limbs/fenzDisplay.v b/src/Specific/montgomery32_2e369m25_12limbs/fenzDisplay.v
deleted file mode 100644
index 88ef4fabf..000000000
--- a/src/Specific/montgomery32_2e369m25_12limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e369m25_12limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e369m25_12limbs/feopp.v b/src/Specific/montgomery32_2e369m25_12limbs/feopp.v
deleted file mode 100644
index 6d74fccb0..000000000
--- a/src/Specific/montgomery32_2e369m25_12limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e369m25_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e369m25_12limbs/feoppDisplay.v b/src/Specific/montgomery32_2e369m25_12limbs/feoppDisplay.v
deleted file mode 100644
index 2b4c73ab5..000000000
--- a/src/Specific/montgomery32_2e369m25_12limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e369m25_12limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e369m25_12limbs/fesquare.c b/src/Specific/montgomery32_2e369m25_12limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e369m25_12limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e369m25_12limbs/fesub.v b/src/Specific/montgomery32_2e369m25_12limbs/fesub.v
deleted file mode 100644
index 371ba4eb4..000000000
--- a/src/Specific/montgomery32_2e369m25_12limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e369m25_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e369m25_12limbs/fesubDisplay.v b/src/Specific/montgomery32_2e369m25_12limbs/fesubDisplay.v
deleted file mode 100644
index 072bc7fcb..000000000
--- a/src/Specific/montgomery32_2e369m25_12limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e369m25_12limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e369m25_12limbs/py_interpreter.sh b/src/Specific/montgomery32_2e369m25_12limbs/py_interpreter.sh
deleted file mode 100755
index 3096f3a18..000000000
--- a/src/Specific/montgomery32_2e369m25_12limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**369 - 25' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e379m19_12limbs/CurveParameters.v b/src/Specific/montgomery32_2e379m19_12limbs/CurveParameters.v
deleted file mode 100644
index ffaec84e8..000000000
--- a/src/Specific/montgomery32_2e379m19_12limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^379 - 19
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 12%nat;
- base := 32;
- bitwidth := 32;
- s := 2^379;
- c := [(1, 19)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e379m19_12limbs/Synthesis.v b/src/Specific/montgomery32_2e379m19_12limbs/Synthesis.v
deleted file mode 100644
index eafb9f05a..000000000
--- a/src/Specific/montgomery32_2e379m19_12limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e379m19_12limbs.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/montgomery32_2e379m19_12limbs/compiler.sh b/src/Specific/montgomery32_2e379m19_12limbs/compiler.sh
deleted file mode 100755
index 8ee266867..000000000
--- a/src/Specific/montgomery32_2e379m19_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<379) - 19' "$@"
diff --git a/src/Specific/montgomery32_2e379m19_12limbs/compilerxx.sh b/src/Specific/montgomery32_2e379m19_12limbs/compilerxx.sh
deleted file mode 100755
index 25defc9c0..000000000
--- a/src/Specific/montgomery32_2e379m19_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<379) - 19' "$@"
diff --git a/src/Specific/montgomery32_2e379m19_12limbs/feadd.c b/src/Specific/montgomery32_2e379m19_12limbs/feadd.c
deleted file mode 100644
index 2add72b03..000000000
--- a/src/Specific/montgomery32_2e379m19_12limbs/feadd.c
+++ /dev/null
@@ -1,76 +0,0 @@
-static void feadd(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(0x0, x5, x27, &x49);
- { uint32_t x52; uint8_t x53 = _addcarryx_u32(x50, x7, x29, &x52);
- { uint32_t x55; uint8_t x56 = _addcarryx_u32(x53, x9, x31, &x55);
- { uint32_t x58; uint8_t x59 = _addcarryx_u32(x56, x11, x33, &x58);
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(x59, x13, x35, &x61);
- { uint32_t x64; uint8_t x65 = _addcarryx_u32(x62, x15, x37, &x64);
- { uint32_t x67; uint8_t x68 = _addcarryx_u32(x65, x17, x39, &x67);
- { uint32_t x70; uint8_t x71 = _addcarryx_u32(x68, x19, x41, &x70);
- { uint32_t x73; uint8_t x74 = _addcarryx_u32(x71, x21, x43, &x73);
- { uint32_t x76; uint8_t x77 = _addcarryx_u32(x74, x23, x45, &x76);
- { uint32_t x79; uint8_t x80 = _addcarryx_u32(x77, x25, x47, &x79);
- { uint32_t x82; uint8_t x83 = _addcarryx_u32(x80, x24, x46, &x82);
- { uint32_t x85; uint8_t x86 = _subborrow_u32(0x0, x49, 0xffffffed, &x85);
- { uint32_t x88; uint8_t x89 = _subborrow_u32(x86, x52, 0xffffffff, &x88);
- { uint32_t x91; uint8_t x92 = _subborrow_u32(x89, x55, 0xffffffff, &x91);
- { uint32_t x94; uint8_t x95 = _subborrow_u32(x92, x58, 0xffffffff, &x94);
- { uint32_t x97; uint8_t x98 = _subborrow_u32(x95, x61, 0xffffffff, &x97);
- { uint32_t x100; uint8_t x101 = _subborrow_u32(x98, x64, 0xffffffff, &x100);
- { uint32_t x103; uint8_t x104 = _subborrow_u32(x101, x67, 0xffffffff, &x103);
- { uint32_t x106; uint8_t x107 = _subborrow_u32(x104, x70, 0xffffffff, &x106);
- { uint32_t x109; uint8_t x110 = _subborrow_u32(x107, x73, 0xffffffff, &x109);
- { uint32_t x112; uint8_t x113 = _subborrow_u32(x110, x76, 0xffffffff, &x112);
- { uint32_t x115; uint8_t x116 = _subborrow_u32(x113, x79, 0xffffffff, &x115);
- { uint32_t x118; uint8_t x119 = _subborrow_u32(x116, x82, 0x7ffffff, &x118);
- { uint32_t _; uint8_t x122 = _subborrow_u32(x119, x83, 0x0, &_);
- { uint32_t x123 = cmovznz32(x122, x118, x82);
- { uint32_t x124 = cmovznz32(x122, x115, x79);
- { uint32_t x125 = cmovznz32(x122, x112, x76);
- { uint32_t x126 = cmovznz32(x122, x109, x73);
- { uint32_t x127 = cmovznz32(x122, x106, x70);
- { uint32_t x128 = cmovznz32(x122, x103, x67);
- { uint32_t x129 = cmovznz32(x122, x100, x64);
- { uint32_t x130 = cmovznz32(x122, x97, x61);
- { uint32_t x131 = cmovznz32(x122, x94, x58);
- { uint32_t x132 = cmovznz32(x122, x91, x55);
- { uint32_t x133 = cmovznz32(x122, x88, x52);
- { uint32_t x134 = cmovznz32(x122, x85, x49);
- out[0] = x134;
- out[1] = x133;
- out[2] = x132;
- out[3] = x131;
- out[4] = x130;
- out[5] = x129;
- out[6] = x128;
- out[7] = x127;
- out[8] = x126;
- out[9] = x125;
- out[10] = x124;
- out[11] = x123;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e379m19_12limbs/feadd.v b/src/Specific/montgomery32_2e379m19_12limbs/feadd.v
deleted file mode 100644
index f4a3f4d54..000000000
--- a/src/Specific/montgomery32_2e379m19_12limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e379m19_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e379m19_12limbs/feaddDisplay.log b/src/Specific/montgomery32_2e379m19_12limbs/feaddDisplay.log
deleted file mode 100644
index 48ec006e0..000000000
--- a/src/Specific/montgomery32_2e379m19_12limbs/feaddDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- uint32_t x49, uint8_t x50 = addcarryx_u32(0x0, x5, x27);
- uint32_t x52, uint8_t x53 = addcarryx_u32(x50, x7, x29);
- uint32_t x55, uint8_t x56 = addcarryx_u32(x53, x9, x31);
- uint32_t x58, uint8_t x59 = addcarryx_u32(x56, x11, x33);
- uint32_t x61, uint8_t x62 = addcarryx_u32(x59, x13, x35);
- uint32_t x64, uint8_t x65 = addcarryx_u32(x62, x15, x37);
- uint32_t x67, uint8_t x68 = addcarryx_u32(x65, x17, x39);
- uint32_t x70, uint8_t x71 = addcarryx_u32(x68, x19, x41);
- uint32_t x73, uint8_t x74 = addcarryx_u32(x71, x21, x43);
- uint32_t x76, uint8_t x77 = addcarryx_u32(x74, x23, x45);
- uint32_t x79, uint8_t x80 = addcarryx_u32(x77, x25, x47);
- uint32_t x82, uint8_t x83 = addcarryx_u32(x80, x24, x46);
- uint32_t x85, uint8_t x86 = subborrow_u32(0x0, x49, 0xffffffed);
- uint32_t x88, uint8_t x89 = subborrow_u32(x86, x52, 0xffffffff);
- uint32_t x91, uint8_t x92 = subborrow_u32(x89, x55, 0xffffffff);
- uint32_t x94, uint8_t x95 = subborrow_u32(x92, x58, 0xffffffff);
- uint32_t x97, uint8_t x98 = subborrow_u32(x95, x61, 0xffffffff);
- uint32_t x100, uint8_t x101 = subborrow_u32(x98, x64, 0xffffffff);
- uint32_t x103, uint8_t x104 = subborrow_u32(x101, x67, 0xffffffff);
- uint32_t x106, uint8_t x107 = subborrow_u32(x104, x70, 0xffffffff);
- uint32_t x109, uint8_t x110 = subborrow_u32(x107, x73, 0xffffffff);
- uint32_t x112, uint8_t x113 = subborrow_u32(x110, x76, 0xffffffff);
- uint32_t x115, uint8_t x116 = subborrow_u32(x113, x79, 0xffffffff);
- uint32_t x118, uint8_t x119 = subborrow_u32(x116, x82, 0x7ffffff);
- uint32_t _, uint8_t x122 = subborrow_u32(x119, x83, 0x0);
- uint32_t x123 = cmovznz32(x122, x118, x82);
- uint32_t x124 = cmovznz32(x122, x115, x79);
- uint32_t x125 = cmovznz32(x122, x112, x76);
- uint32_t x126 = cmovznz32(x122, x109, x73);
- uint32_t x127 = cmovznz32(x122, x106, x70);
- uint32_t x128 = cmovznz32(x122, x103, x67);
- uint32_t x129 = cmovznz32(x122, x100, x64);
- uint32_t x130 = cmovznz32(x122, x97, x61);
- uint32_t x131 = cmovznz32(x122, x94, x58);
- uint32_t x132 = cmovznz32(x122, x91, x55);
- uint32_t x133 = cmovznz32(x122, x88, x52);
- uint32_t x134 = cmovznz32(x122, x85, x49);
- return (x123, x124, x125, x126, x127, x128, x129, x130, x131, x132, x133, x134))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e379m19_12limbs/feaddDisplay.v b/src/Specific/montgomery32_2e379m19_12limbs/feaddDisplay.v
deleted file mode 100644
index 6aebaac3e..000000000
--- a/src/Specific/montgomery32_2e379m19_12limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e379m19_12limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e379m19_12limbs/femul.v b/src/Specific/montgomery32_2e379m19_12limbs/femul.v
deleted file mode 100644
index 4917b67b6..000000000
--- a/src/Specific/montgomery32_2e379m19_12limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e379m19_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e379m19_12limbs/femulDisplay.v b/src/Specific/montgomery32_2e379m19_12limbs/femulDisplay.v
deleted file mode 100644
index 1383fdb70..000000000
--- a/src/Specific/montgomery32_2e379m19_12limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e379m19_12limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e379m19_12limbs/fenz.c b/src/Specific/montgomery32_2e379m19_12limbs/fenz.c
deleted file mode 100644
index 61ca36c29..000000000
--- a/src/Specific/montgomery32_2e379m19_12limbs/fenz.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x23 = (x22 | x21);
- { uint32_t x24 = (x20 | x23);
- { uint32_t x25 = (x18 | x24);
- { uint32_t x26 = (x16 | x25);
- { uint32_t x27 = (x14 | x26);
- { uint32_t x28 = (x12 | x27);
- { uint32_t x29 = (x10 | x28);
- { uint32_t x30 = (x8 | x29);
- { uint32_t x31 = (x6 | x30);
- { uint32_t x32 = (x4 | x31);
- { uint32_t x33 = (x2 | x32);
- out[0] = x33;
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e379m19_12limbs/fenz.v b/src/Specific/montgomery32_2e379m19_12limbs/fenz.v
deleted file mode 100644
index 3752cdc76..000000000
--- a/src/Specific/montgomery32_2e379m19_12limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e379m19_12limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e379m19_12limbs/fenzDisplay.log b/src/Specific/montgomery32_2e379m19_12limbs/fenzDisplay.log
deleted file mode 100644
index 7a5f016e0..000000000
--- a/src/Specific/montgomery32_2e379m19_12limbs/fenzDisplay.log
+++ /dev/null
@@ -1,18 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x23 = (x22 | x21);
- uint32_t x24 = (x20 | x23);
- uint32_t x25 = (x18 | x24);
- uint32_t x26 = (x16 | x25);
- uint32_t x27 = (x14 | x26);
- uint32_t x28 = (x12 | x27);
- uint32_t x29 = (x10 | x28);
- uint32_t x30 = (x8 | x29);
- uint32_t x31 = (x6 | x30);
- uint32_t x32 = (x4 | x31);
- uint32_t x33 = (x2 | x32);
- return x33)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e379m19_12limbs/fenzDisplay.v b/src/Specific/montgomery32_2e379m19_12limbs/fenzDisplay.v
deleted file mode 100644
index 90f2f4505..000000000
--- a/src/Specific/montgomery32_2e379m19_12limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e379m19_12limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e379m19_12limbs/feopp.v b/src/Specific/montgomery32_2e379m19_12limbs/feopp.v
deleted file mode 100644
index 61f31b516..000000000
--- a/src/Specific/montgomery32_2e379m19_12limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e379m19_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e379m19_12limbs/feoppDisplay.v b/src/Specific/montgomery32_2e379m19_12limbs/feoppDisplay.v
deleted file mode 100644
index e12b173db..000000000
--- a/src/Specific/montgomery32_2e379m19_12limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e379m19_12limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e379m19_12limbs/fesquare.c b/src/Specific/montgomery32_2e379m19_12limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e379m19_12limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e379m19_12limbs/fesub.v b/src/Specific/montgomery32_2e379m19_12limbs/fesub.v
deleted file mode 100644
index ab1c67f45..000000000
--- a/src/Specific/montgomery32_2e379m19_12limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e379m19_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e379m19_12limbs/fesubDisplay.v b/src/Specific/montgomery32_2e379m19_12limbs/fesubDisplay.v
deleted file mode 100644
index 9257c5d13..000000000
--- a/src/Specific/montgomery32_2e379m19_12limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e379m19_12limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e379m19_12limbs/py_interpreter.sh b/src/Specific/montgomery32_2e379m19_12limbs/py_interpreter.sh
deleted file mode 100755
index c7fa9ec6d..000000000
--- a/src/Specific/montgomery32_2e379m19_12limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**379 - 19' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e382m105_12limbs/CurveParameters.v b/src/Specific/montgomery32_2e382m105_12limbs/CurveParameters.v
deleted file mode 100644
index fde7808fe..000000000
--- a/src/Specific/montgomery32_2e382m105_12limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^382 - 105
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 12%nat;
- base := 32;
- bitwidth := 32;
- s := 2^382;
- c := [(1, 105)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e382m105_12limbs/Synthesis.v b/src/Specific/montgomery32_2e382m105_12limbs/Synthesis.v
deleted file mode 100644
index db595ddc7..000000000
--- a/src/Specific/montgomery32_2e382m105_12limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e382m105_12limbs.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/montgomery32_2e382m105_12limbs/compiler.sh b/src/Specific/montgomery32_2e382m105_12limbs/compiler.sh
deleted file mode 100755
index 082c73b45..000000000
--- a/src/Specific/montgomery32_2e382m105_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<382) - 105' "$@"
diff --git a/src/Specific/montgomery32_2e382m105_12limbs/compilerxx.sh b/src/Specific/montgomery32_2e382m105_12limbs/compilerxx.sh
deleted file mode 100755
index e1e214d82..000000000
--- a/src/Specific/montgomery32_2e382m105_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<382) - 105' "$@"
diff --git a/src/Specific/montgomery32_2e382m105_12limbs/feadd.c b/src/Specific/montgomery32_2e382m105_12limbs/feadd.c
deleted file mode 100644
index 91d56558c..000000000
--- a/src/Specific/montgomery32_2e382m105_12limbs/feadd.c
+++ /dev/null
@@ -1,76 +0,0 @@
-static void feadd(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(0x0, x5, x27, &x49);
- { uint32_t x52; uint8_t x53 = _addcarryx_u32(x50, x7, x29, &x52);
- { uint32_t x55; uint8_t x56 = _addcarryx_u32(x53, x9, x31, &x55);
- { uint32_t x58; uint8_t x59 = _addcarryx_u32(x56, x11, x33, &x58);
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(x59, x13, x35, &x61);
- { uint32_t x64; uint8_t x65 = _addcarryx_u32(x62, x15, x37, &x64);
- { uint32_t x67; uint8_t x68 = _addcarryx_u32(x65, x17, x39, &x67);
- { uint32_t x70; uint8_t x71 = _addcarryx_u32(x68, x19, x41, &x70);
- { uint32_t x73; uint8_t x74 = _addcarryx_u32(x71, x21, x43, &x73);
- { uint32_t x76; uint8_t x77 = _addcarryx_u32(x74, x23, x45, &x76);
- { uint32_t x79; uint8_t x80 = _addcarryx_u32(x77, x25, x47, &x79);
- { uint32_t x82; uint8_t x83 = _addcarryx_u32(x80, x24, x46, &x82);
- { uint32_t x85; uint8_t x86 = _subborrow_u32(0x0, x49, 0xffffff97, &x85);
- { uint32_t x88; uint8_t x89 = _subborrow_u32(x86, x52, 0xffffffff, &x88);
- { uint32_t x91; uint8_t x92 = _subborrow_u32(x89, x55, 0xffffffff, &x91);
- { uint32_t x94; uint8_t x95 = _subborrow_u32(x92, x58, 0xffffffff, &x94);
- { uint32_t x97; uint8_t x98 = _subborrow_u32(x95, x61, 0xffffffff, &x97);
- { uint32_t x100; uint8_t x101 = _subborrow_u32(x98, x64, 0xffffffff, &x100);
- { uint32_t x103; uint8_t x104 = _subborrow_u32(x101, x67, 0xffffffff, &x103);
- { uint32_t x106; uint8_t x107 = _subborrow_u32(x104, x70, 0xffffffff, &x106);
- { uint32_t x109; uint8_t x110 = _subborrow_u32(x107, x73, 0xffffffff, &x109);
- { uint32_t x112; uint8_t x113 = _subborrow_u32(x110, x76, 0xffffffff, &x112);
- { uint32_t x115; uint8_t x116 = _subborrow_u32(x113, x79, 0xffffffff, &x115);
- { uint32_t x118; uint8_t x119 = _subborrow_u32(x116, x82, 0x3fffffff, &x118);
- { uint32_t _; uint8_t x122 = _subborrow_u32(x119, x83, 0x0, &_);
- { uint32_t x123 = cmovznz32(x122, x118, x82);
- { uint32_t x124 = cmovznz32(x122, x115, x79);
- { uint32_t x125 = cmovznz32(x122, x112, x76);
- { uint32_t x126 = cmovznz32(x122, x109, x73);
- { uint32_t x127 = cmovznz32(x122, x106, x70);
- { uint32_t x128 = cmovznz32(x122, x103, x67);
- { uint32_t x129 = cmovznz32(x122, x100, x64);
- { uint32_t x130 = cmovznz32(x122, x97, x61);
- { uint32_t x131 = cmovznz32(x122, x94, x58);
- { uint32_t x132 = cmovznz32(x122, x91, x55);
- { uint32_t x133 = cmovznz32(x122, x88, x52);
- { uint32_t x134 = cmovznz32(x122, x85, x49);
- out[0] = x134;
- out[1] = x133;
- out[2] = x132;
- out[3] = x131;
- out[4] = x130;
- out[5] = x129;
- out[6] = x128;
- out[7] = x127;
- out[8] = x126;
- out[9] = x125;
- out[10] = x124;
- out[11] = x123;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e382m105_12limbs/feadd.v b/src/Specific/montgomery32_2e382m105_12limbs/feadd.v
deleted file mode 100644
index 6679873a8..000000000
--- a/src/Specific/montgomery32_2e382m105_12limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e382m105_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e382m105_12limbs/feaddDisplay.log b/src/Specific/montgomery32_2e382m105_12limbs/feaddDisplay.log
deleted file mode 100644
index 1d5b08b0e..000000000
--- a/src/Specific/montgomery32_2e382m105_12limbs/feaddDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- uint32_t x49, uint8_t x50 = addcarryx_u32(0x0, x5, x27);
- uint32_t x52, uint8_t x53 = addcarryx_u32(x50, x7, x29);
- uint32_t x55, uint8_t x56 = addcarryx_u32(x53, x9, x31);
- uint32_t x58, uint8_t x59 = addcarryx_u32(x56, x11, x33);
- uint32_t x61, uint8_t x62 = addcarryx_u32(x59, x13, x35);
- uint32_t x64, uint8_t x65 = addcarryx_u32(x62, x15, x37);
- uint32_t x67, uint8_t x68 = addcarryx_u32(x65, x17, x39);
- uint32_t x70, uint8_t x71 = addcarryx_u32(x68, x19, x41);
- uint32_t x73, uint8_t x74 = addcarryx_u32(x71, x21, x43);
- uint32_t x76, uint8_t x77 = addcarryx_u32(x74, x23, x45);
- uint32_t x79, uint8_t x80 = addcarryx_u32(x77, x25, x47);
- uint32_t x82, uint8_t x83 = addcarryx_u32(x80, x24, x46);
- uint32_t x85, uint8_t x86 = subborrow_u32(0x0, x49, 0xffffff97);
- uint32_t x88, uint8_t x89 = subborrow_u32(x86, x52, 0xffffffff);
- uint32_t x91, uint8_t x92 = subborrow_u32(x89, x55, 0xffffffff);
- uint32_t x94, uint8_t x95 = subborrow_u32(x92, x58, 0xffffffff);
- uint32_t x97, uint8_t x98 = subborrow_u32(x95, x61, 0xffffffff);
- uint32_t x100, uint8_t x101 = subborrow_u32(x98, x64, 0xffffffff);
- uint32_t x103, uint8_t x104 = subborrow_u32(x101, x67, 0xffffffff);
- uint32_t x106, uint8_t x107 = subborrow_u32(x104, x70, 0xffffffff);
- uint32_t x109, uint8_t x110 = subborrow_u32(x107, x73, 0xffffffff);
- uint32_t x112, uint8_t x113 = subborrow_u32(x110, x76, 0xffffffff);
- uint32_t x115, uint8_t x116 = subborrow_u32(x113, x79, 0xffffffff);
- uint32_t x118, uint8_t x119 = subborrow_u32(x116, x82, 0x3fffffff);
- uint32_t _, uint8_t x122 = subborrow_u32(x119, x83, 0x0);
- uint32_t x123 = cmovznz32(x122, x118, x82);
- uint32_t x124 = cmovznz32(x122, x115, x79);
- uint32_t x125 = cmovznz32(x122, x112, x76);
- uint32_t x126 = cmovznz32(x122, x109, x73);
- uint32_t x127 = cmovznz32(x122, x106, x70);
- uint32_t x128 = cmovznz32(x122, x103, x67);
- uint32_t x129 = cmovznz32(x122, x100, x64);
- uint32_t x130 = cmovznz32(x122, x97, x61);
- uint32_t x131 = cmovznz32(x122, x94, x58);
- uint32_t x132 = cmovznz32(x122, x91, x55);
- uint32_t x133 = cmovznz32(x122, x88, x52);
- uint32_t x134 = cmovznz32(x122, x85, x49);
- return (x123, x124, x125, x126, x127, x128, x129, x130, x131, x132, x133, x134))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e382m105_12limbs/feaddDisplay.v b/src/Specific/montgomery32_2e382m105_12limbs/feaddDisplay.v
deleted file mode 100644
index fe5174d65..000000000
--- a/src/Specific/montgomery32_2e382m105_12limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e382m105_12limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e382m105_12limbs/femul.v b/src/Specific/montgomery32_2e382m105_12limbs/femul.v
deleted file mode 100644
index a1b034703..000000000
--- a/src/Specific/montgomery32_2e382m105_12limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e382m105_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e382m105_12limbs/femulDisplay.v b/src/Specific/montgomery32_2e382m105_12limbs/femulDisplay.v
deleted file mode 100644
index 064e3f2b9..000000000
--- a/src/Specific/montgomery32_2e382m105_12limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e382m105_12limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e382m105_12limbs/fenz.c b/src/Specific/montgomery32_2e382m105_12limbs/fenz.c
deleted file mode 100644
index 61ca36c29..000000000
--- a/src/Specific/montgomery32_2e382m105_12limbs/fenz.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x23 = (x22 | x21);
- { uint32_t x24 = (x20 | x23);
- { uint32_t x25 = (x18 | x24);
- { uint32_t x26 = (x16 | x25);
- { uint32_t x27 = (x14 | x26);
- { uint32_t x28 = (x12 | x27);
- { uint32_t x29 = (x10 | x28);
- { uint32_t x30 = (x8 | x29);
- { uint32_t x31 = (x6 | x30);
- { uint32_t x32 = (x4 | x31);
- { uint32_t x33 = (x2 | x32);
- out[0] = x33;
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e382m105_12limbs/fenz.v b/src/Specific/montgomery32_2e382m105_12limbs/fenz.v
deleted file mode 100644
index 6c0bdfb51..000000000
--- a/src/Specific/montgomery32_2e382m105_12limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e382m105_12limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e382m105_12limbs/fenzDisplay.log b/src/Specific/montgomery32_2e382m105_12limbs/fenzDisplay.log
deleted file mode 100644
index 7a5f016e0..000000000
--- a/src/Specific/montgomery32_2e382m105_12limbs/fenzDisplay.log
+++ /dev/null
@@ -1,18 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x23 = (x22 | x21);
- uint32_t x24 = (x20 | x23);
- uint32_t x25 = (x18 | x24);
- uint32_t x26 = (x16 | x25);
- uint32_t x27 = (x14 | x26);
- uint32_t x28 = (x12 | x27);
- uint32_t x29 = (x10 | x28);
- uint32_t x30 = (x8 | x29);
- uint32_t x31 = (x6 | x30);
- uint32_t x32 = (x4 | x31);
- uint32_t x33 = (x2 | x32);
- return x33)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e382m105_12limbs/fenzDisplay.v b/src/Specific/montgomery32_2e382m105_12limbs/fenzDisplay.v
deleted file mode 100644
index cd6302cd4..000000000
--- a/src/Specific/montgomery32_2e382m105_12limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e382m105_12limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e382m105_12limbs/feopp.v b/src/Specific/montgomery32_2e382m105_12limbs/feopp.v
deleted file mode 100644
index 5b4628a81..000000000
--- a/src/Specific/montgomery32_2e382m105_12limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e382m105_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e382m105_12limbs/feoppDisplay.v b/src/Specific/montgomery32_2e382m105_12limbs/feoppDisplay.v
deleted file mode 100644
index 31ead9e59..000000000
--- a/src/Specific/montgomery32_2e382m105_12limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e382m105_12limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e382m105_12limbs/fesquare.c b/src/Specific/montgomery32_2e382m105_12limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e382m105_12limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e382m105_12limbs/fesub.v b/src/Specific/montgomery32_2e382m105_12limbs/fesub.v
deleted file mode 100644
index f145f1342..000000000
--- a/src/Specific/montgomery32_2e382m105_12limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e382m105_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e382m105_12limbs/fesubDisplay.v b/src/Specific/montgomery32_2e382m105_12limbs/fesubDisplay.v
deleted file mode 100644
index 5e304427a..000000000
--- a/src/Specific/montgomery32_2e382m105_12limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e382m105_12limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e382m105_12limbs/py_interpreter.sh b/src/Specific/montgomery32_2e382m105_12limbs/py_interpreter.sh
deleted file mode 100755
index ddbb835fd..000000000
--- a/src/Specific/montgomery32_2e382m105_12limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**382 - 105' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e383m187_12limbs/CurveParameters.v b/src/Specific/montgomery32_2e383m187_12limbs/CurveParameters.v
deleted file mode 100644
index df9b2f250..000000000
--- a/src/Specific/montgomery32_2e383m187_12limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^383 - 187
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 12%nat;
- base := 32;
- bitwidth := 32;
- s := 2^383;
- c := [(1, 187)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e383m187_12limbs/Synthesis.v b/src/Specific/montgomery32_2e383m187_12limbs/Synthesis.v
deleted file mode 100644
index 9495174e5..000000000
--- a/src/Specific/montgomery32_2e383m187_12limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e383m187_12limbs.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/montgomery32_2e383m187_12limbs/compiler.sh b/src/Specific/montgomery32_2e383m187_12limbs/compiler.sh
deleted file mode 100755
index f6d254e73..000000000
--- a/src/Specific/montgomery32_2e383m187_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<383) - 187' "$@"
diff --git a/src/Specific/montgomery32_2e383m187_12limbs/compilerxx.sh b/src/Specific/montgomery32_2e383m187_12limbs/compilerxx.sh
deleted file mode 100755
index 0194c0b93..000000000
--- a/src/Specific/montgomery32_2e383m187_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<383) - 187' "$@"
diff --git a/src/Specific/montgomery32_2e383m187_12limbs/feadd.c b/src/Specific/montgomery32_2e383m187_12limbs/feadd.c
deleted file mode 100644
index 8bd80a3bf..000000000
--- a/src/Specific/montgomery32_2e383m187_12limbs/feadd.c
+++ /dev/null
@@ -1,76 +0,0 @@
-static void feadd(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(0x0, x5, x27, &x49);
- { uint32_t x52; uint8_t x53 = _addcarryx_u32(x50, x7, x29, &x52);
- { uint32_t x55; uint8_t x56 = _addcarryx_u32(x53, x9, x31, &x55);
- { uint32_t x58; uint8_t x59 = _addcarryx_u32(x56, x11, x33, &x58);
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(x59, x13, x35, &x61);
- { uint32_t x64; uint8_t x65 = _addcarryx_u32(x62, x15, x37, &x64);
- { uint32_t x67; uint8_t x68 = _addcarryx_u32(x65, x17, x39, &x67);
- { uint32_t x70; uint8_t x71 = _addcarryx_u32(x68, x19, x41, &x70);
- { uint32_t x73; uint8_t x74 = _addcarryx_u32(x71, x21, x43, &x73);
- { uint32_t x76; uint8_t x77 = _addcarryx_u32(x74, x23, x45, &x76);
- { uint32_t x79; uint8_t x80 = _addcarryx_u32(x77, x25, x47, &x79);
- { uint32_t x82; uint8_t x83 = _addcarryx_u32(x80, x24, x46, &x82);
- { uint32_t x85; uint8_t x86 = _subborrow_u32(0x0, x49, 0xffffff45, &x85);
- { uint32_t x88; uint8_t x89 = _subborrow_u32(x86, x52, 0xffffffff, &x88);
- { uint32_t x91; uint8_t x92 = _subborrow_u32(x89, x55, 0xffffffff, &x91);
- { uint32_t x94; uint8_t x95 = _subborrow_u32(x92, x58, 0xffffffff, &x94);
- { uint32_t x97; uint8_t x98 = _subborrow_u32(x95, x61, 0xffffffff, &x97);
- { uint32_t x100; uint8_t x101 = _subborrow_u32(x98, x64, 0xffffffff, &x100);
- { uint32_t x103; uint8_t x104 = _subborrow_u32(x101, x67, 0xffffffff, &x103);
- { uint32_t x106; uint8_t x107 = _subborrow_u32(x104, x70, 0xffffffff, &x106);
- { uint32_t x109; uint8_t x110 = _subborrow_u32(x107, x73, 0xffffffff, &x109);
- { uint32_t x112; uint8_t x113 = _subborrow_u32(x110, x76, 0xffffffff, &x112);
- { uint32_t x115; uint8_t x116 = _subborrow_u32(x113, x79, 0xffffffff, &x115);
- { uint32_t x118; uint8_t x119 = _subborrow_u32(x116, x82, 0x7fffffff, &x118);
- { uint32_t _; uint8_t x122 = _subborrow_u32(x119, x83, 0x0, &_);
- { uint32_t x123 = cmovznz32(x122, x118, x82);
- { uint32_t x124 = cmovznz32(x122, x115, x79);
- { uint32_t x125 = cmovznz32(x122, x112, x76);
- { uint32_t x126 = cmovznz32(x122, x109, x73);
- { uint32_t x127 = cmovznz32(x122, x106, x70);
- { uint32_t x128 = cmovznz32(x122, x103, x67);
- { uint32_t x129 = cmovznz32(x122, x100, x64);
- { uint32_t x130 = cmovznz32(x122, x97, x61);
- { uint32_t x131 = cmovznz32(x122, x94, x58);
- { uint32_t x132 = cmovznz32(x122, x91, x55);
- { uint32_t x133 = cmovznz32(x122, x88, x52);
- { uint32_t x134 = cmovznz32(x122, x85, x49);
- out[0] = x134;
- out[1] = x133;
- out[2] = x132;
- out[3] = x131;
- out[4] = x130;
- out[5] = x129;
- out[6] = x128;
- out[7] = x127;
- out[8] = x126;
- out[9] = x125;
- out[10] = x124;
- out[11] = x123;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e383m187_12limbs/feadd.v b/src/Specific/montgomery32_2e383m187_12limbs/feadd.v
deleted file mode 100644
index fb655bd91..000000000
--- a/src/Specific/montgomery32_2e383m187_12limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e383m187_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e383m187_12limbs/feaddDisplay.log b/src/Specific/montgomery32_2e383m187_12limbs/feaddDisplay.log
deleted file mode 100644
index b2077f6d1..000000000
--- a/src/Specific/montgomery32_2e383m187_12limbs/feaddDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- uint32_t x49, uint8_t x50 = addcarryx_u32(0x0, x5, x27);
- uint32_t x52, uint8_t x53 = addcarryx_u32(x50, x7, x29);
- uint32_t x55, uint8_t x56 = addcarryx_u32(x53, x9, x31);
- uint32_t x58, uint8_t x59 = addcarryx_u32(x56, x11, x33);
- uint32_t x61, uint8_t x62 = addcarryx_u32(x59, x13, x35);
- uint32_t x64, uint8_t x65 = addcarryx_u32(x62, x15, x37);
- uint32_t x67, uint8_t x68 = addcarryx_u32(x65, x17, x39);
- uint32_t x70, uint8_t x71 = addcarryx_u32(x68, x19, x41);
- uint32_t x73, uint8_t x74 = addcarryx_u32(x71, x21, x43);
- uint32_t x76, uint8_t x77 = addcarryx_u32(x74, x23, x45);
- uint32_t x79, uint8_t x80 = addcarryx_u32(x77, x25, x47);
- uint32_t x82, uint8_t x83 = addcarryx_u32(x80, x24, x46);
- uint32_t x85, uint8_t x86 = subborrow_u32(0x0, x49, 0xffffff45);
- uint32_t x88, uint8_t x89 = subborrow_u32(x86, x52, 0xffffffff);
- uint32_t x91, uint8_t x92 = subborrow_u32(x89, x55, 0xffffffff);
- uint32_t x94, uint8_t x95 = subborrow_u32(x92, x58, 0xffffffff);
- uint32_t x97, uint8_t x98 = subborrow_u32(x95, x61, 0xffffffff);
- uint32_t x100, uint8_t x101 = subborrow_u32(x98, x64, 0xffffffff);
- uint32_t x103, uint8_t x104 = subborrow_u32(x101, x67, 0xffffffff);
- uint32_t x106, uint8_t x107 = subborrow_u32(x104, x70, 0xffffffff);
- uint32_t x109, uint8_t x110 = subborrow_u32(x107, x73, 0xffffffff);
- uint32_t x112, uint8_t x113 = subborrow_u32(x110, x76, 0xffffffff);
- uint32_t x115, uint8_t x116 = subborrow_u32(x113, x79, 0xffffffff);
- uint32_t x118, uint8_t x119 = subborrow_u32(x116, x82, 0x7fffffff);
- uint32_t _, uint8_t x122 = subborrow_u32(x119, x83, 0x0);
- uint32_t x123 = cmovznz32(x122, x118, x82);
- uint32_t x124 = cmovznz32(x122, x115, x79);
- uint32_t x125 = cmovznz32(x122, x112, x76);
- uint32_t x126 = cmovznz32(x122, x109, x73);
- uint32_t x127 = cmovznz32(x122, x106, x70);
- uint32_t x128 = cmovznz32(x122, x103, x67);
- uint32_t x129 = cmovznz32(x122, x100, x64);
- uint32_t x130 = cmovznz32(x122, x97, x61);
- uint32_t x131 = cmovznz32(x122, x94, x58);
- uint32_t x132 = cmovznz32(x122, x91, x55);
- uint32_t x133 = cmovznz32(x122, x88, x52);
- uint32_t x134 = cmovznz32(x122, x85, x49);
- return (x123, x124, x125, x126, x127, x128, x129, x130, x131, x132, x133, x134))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e383m187_12limbs/feaddDisplay.v b/src/Specific/montgomery32_2e383m187_12limbs/feaddDisplay.v
deleted file mode 100644
index 4449f5c76..000000000
--- a/src/Specific/montgomery32_2e383m187_12limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e383m187_12limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e383m187_12limbs/femul.v b/src/Specific/montgomery32_2e383m187_12limbs/femul.v
deleted file mode 100644
index 6e60ee01c..000000000
--- a/src/Specific/montgomery32_2e383m187_12limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e383m187_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e383m187_12limbs/femulDisplay.v b/src/Specific/montgomery32_2e383m187_12limbs/femulDisplay.v
deleted file mode 100644
index 7be3ad994..000000000
--- a/src/Specific/montgomery32_2e383m187_12limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e383m187_12limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e383m187_12limbs/fenz.c b/src/Specific/montgomery32_2e383m187_12limbs/fenz.c
deleted file mode 100644
index 61ca36c29..000000000
--- a/src/Specific/montgomery32_2e383m187_12limbs/fenz.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x23 = (x22 | x21);
- { uint32_t x24 = (x20 | x23);
- { uint32_t x25 = (x18 | x24);
- { uint32_t x26 = (x16 | x25);
- { uint32_t x27 = (x14 | x26);
- { uint32_t x28 = (x12 | x27);
- { uint32_t x29 = (x10 | x28);
- { uint32_t x30 = (x8 | x29);
- { uint32_t x31 = (x6 | x30);
- { uint32_t x32 = (x4 | x31);
- { uint32_t x33 = (x2 | x32);
- out[0] = x33;
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e383m187_12limbs/fenz.v b/src/Specific/montgomery32_2e383m187_12limbs/fenz.v
deleted file mode 100644
index 8a0a63dd4..000000000
--- a/src/Specific/montgomery32_2e383m187_12limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e383m187_12limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e383m187_12limbs/fenzDisplay.log b/src/Specific/montgomery32_2e383m187_12limbs/fenzDisplay.log
deleted file mode 100644
index 7a5f016e0..000000000
--- a/src/Specific/montgomery32_2e383m187_12limbs/fenzDisplay.log
+++ /dev/null
@@ -1,18 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x23 = (x22 | x21);
- uint32_t x24 = (x20 | x23);
- uint32_t x25 = (x18 | x24);
- uint32_t x26 = (x16 | x25);
- uint32_t x27 = (x14 | x26);
- uint32_t x28 = (x12 | x27);
- uint32_t x29 = (x10 | x28);
- uint32_t x30 = (x8 | x29);
- uint32_t x31 = (x6 | x30);
- uint32_t x32 = (x4 | x31);
- uint32_t x33 = (x2 | x32);
- return x33)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e383m187_12limbs/fenzDisplay.v b/src/Specific/montgomery32_2e383m187_12limbs/fenzDisplay.v
deleted file mode 100644
index de94c6079..000000000
--- a/src/Specific/montgomery32_2e383m187_12limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e383m187_12limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e383m187_12limbs/feopp.v b/src/Specific/montgomery32_2e383m187_12limbs/feopp.v
deleted file mode 100644
index 3be118ee0..000000000
--- a/src/Specific/montgomery32_2e383m187_12limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e383m187_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e383m187_12limbs/feoppDisplay.v b/src/Specific/montgomery32_2e383m187_12limbs/feoppDisplay.v
deleted file mode 100644
index e27081165..000000000
--- a/src/Specific/montgomery32_2e383m187_12limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e383m187_12limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e383m187_12limbs/fesquare.c b/src/Specific/montgomery32_2e383m187_12limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e383m187_12limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e383m187_12limbs/fesub.v b/src/Specific/montgomery32_2e383m187_12limbs/fesub.v
deleted file mode 100644
index f2a7eebe3..000000000
--- a/src/Specific/montgomery32_2e383m187_12limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e383m187_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e383m187_12limbs/fesubDisplay.v b/src/Specific/montgomery32_2e383m187_12limbs/fesubDisplay.v
deleted file mode 100644
index c8b469047..000000000
--- a/src/Specific/montgomery32_2e383m187_12limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e383m187_12limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e383m187_12limbs/py_interpreter.sh b/src/Specific/montgomery32_2e383m187_12limbs/py_interpreter.sh
deleted file mode 100755
index 17568bd0f..000000000
--- a/src/Specific/montgomery32_2e383m187_12limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**383 - 187' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e383m31_12limbs/CurveParameters.v b/src/Specific/montgomery32_2e383m31_12limbs/CurveParameters.v
deleted file mode 100644
index 12f10af41..000000000
--- a/src/Specific/montgomery32_2e383m31_12limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^383 - 31
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 12%nat;
- base := 32;
- bitwidth := 32;
- s := 2^383;
- c := [(1, 31)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e383m31_12limbs/Synthesis.v b/src/Specific/montgomery32_2e383m31_12limbs/Synthesis.v
deleted file mode 100644
index 1d066fcdc..000000000
--- a/src/Specific/montgomery32_2e383m31_12limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e383m31_12limbs.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/montgomery32_2e383m31_12limbs/compiler.sh b/src/Specific/montgomery32_2e383m31_12limbs/compiler.sh
deleted file mode 100755
index ff129be59..000000000
--- a/src/Specific/montgomery32_2e383m31_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<383) - 31' "$@"
diff --git a/src/Specific/montgomery32_2e383m31_12limbs/compilerxx.sh b/src/Specific/montgomery32_2e383m31_12limbs/compilerxx.sh
deleted file mode 100755
index b3e9ebc62..000000000
--- a/src/Specific/montgomery32_2e383m31_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<383) - 31' "$@"
diff --git a/src/Specific/montgomery32_2e383m31_12limbs/feadd.c b/src/Specific/montgomery32_2e383m31_12limbs/feadd.c
deleted file mode 100644
index 9a542cca1..000000000
--- a/src/Specific/montgomery32_2e383m31_12limbs/feadd.c
+++ /dev/null
@@ -1,76 +0,0 @@
-static void feadd(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(0x0, x5, x27, &x49);
- { uint32_t x52; uint8_t x53 = _addcarryx_u32(x50, x7, x29, &x52);
- { uint32_t x55; uint8_t x56 = _addcarryx_u32(x53, x9, x31, &x55);
- { uint32_t x58; uint8_t x59 = _addcarryx_u32(x56, x11, x33, &x58);
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(x59, x13, x35, &x61);
- { uint32_t x64; uint8_t x65 = _addcarryx_u32(x62, x15, x37, &x64);
- { uint32_t x67; uint8_t x68 = _addcarryx_u32(x65, x17, x39, &x67);
- { uint32_t x70; uint8_t x71 = _addcarryx_u32(x68, x19, x41, &x70);
- { uint32_t x73; uint8_t x74 = _addcarryx_u32(x71, x21, x43, &x73);
- { uint32_t x76; uint8_t x77 = _addcarryx_u32(x74, x23, x45, &x76);
- { uint32_t x79; uint8_t x80 = _addcarryx_u32(x77, x25, x47, &x79);
- { uint32_t x82; uint8_t x83 = _addcarryx_u32(x80, x24, x46, &x82);
- { uint32_t x85; uint8_t x86 = _subborrow_u32(0x0, x49, 0xffffffe1, &x85);
- { uint32_t x88; uint8_t x89 = _subborrow_u32(x86, x52, 0xffffffff, &x88);
- { uint32_t x91; uint8_t x92 = _subborrow_u32(x89, x55, 0xffffffff, &x91);
- { uint32_t x94; uint8_t x95 = _subborrow_u32(x92, x58, 0xffffffff, &x94);
- { uint32_t x97; uint8_t x98 = _subborrow_u32(x95, x61, 0xffffffff, &x97);
- { uint32_t x100; uint8_t x101 = _subborrow_u32(x98, x64, 0xffffffff, &x100);
- { uint32_t x103; uint8_t x104 = _subborrow_u32(x101, x67, 0xffffffff, &x103);
- { uint32_t x106; uint8_t x107 = _subborrow_u32(x104, x70, 0xffffffff, &x106);
- { uint32_t x109; uint8_t x110 = _subborrow_u32(x107, x73, 0xffffffff, &x109);
- { uint32_t x112; uint8_t x113 = _subborrow_u32(x110, x76, 0xffffffff, &x112);
- { uint32_t x115; uint8_t x116 = _subborrow_u32(x113, x79, 0xffffffff, &x115);
- { uint32_t x118; uint8_t x119 = _subborrow_u32(x116, x82, 0x7fffffff, &x118);
- { uint32_t _; uint8_t x122 = _subborrow_u32(x119, x83, 0x0, &_);
- { uint32_t x123 = cmovznz32(x122, x118, x82);
- { uint32_t x124 = cmovznz32(x122, x115, x79);
- { uint32_t x125 = cmovznz32(x122, x112, x76);
- { uint32_t x126 = cmovznz32(x122, x109, x73);
- { uint32_t x127 = cmovznz32(x122, x106, x70);
- { uint32_t x128 = cmovznz32(x122, x103, x67);
- { uint32_t x129 = cmovznz32(x122, x100, x64);
- { uint32_t x130 = cmovznz32(x122, x97, x61);
- { uint32_t x131 = cmovznz32(x122, x94, x58);
- { uint32_t x132 = cmovznz32(x122, x91, x55);
- { uint32_t x133 = cmovznz32(x122, x88, x52);
- { uint32_t x134 = cmovznz32(x122, x85, x49);
- out[0] = x134;
- out[1] = x133;
- out[2] = x132;
- out[3] = x131;
- out[4] = x130;
- out[5] = x129;
- out[6] = x128;
- out[7] = x127;
- out[8] = x126;
- out[9] = x125;
- out[10] = x124;
- out[11] = x123;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e383m31_12limbs/feadd.v b/src/Specific/montgomery32_2e383m31_12limbs/feadd.v
deleted file mode 100644
index 4a27dd7e3..000000000
--- a/src/Specific/montgomery32_2e383m31_12limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e383m31_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e383m31_12limbs/feaddDisplay.log b/src/Specific/montgomery32_2e383m31_12limbs/feaddDisplay.log
deleted file mode 100644
index d8d6ae3d8..000000000
--- a/src/Specific/montgomery32_2e383m31_12limbs/feaddDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- uint32_t x49, uint8_t x50 = addcarryx_u32(0x0, x5, x27);
- uint32_t x52, uint8_t x53 = addcarryx_u32(x50, x7, x29);
- uint32_t x55, uint8_t x56 = addcarryx_u32(x53, x9, x31);
- uint32_t x58, uint8_t x59 = addcarryx_u32(x56, x11, x33);
- uint32_t x61, uint8_t x62 = addcarryx_u32(x59, x13, x35);
- uint32_t x64, uint8_t x65 = addcarryx_u32(x62, x15, x37);
- uint32_t x67, uint8_t x68 = addcarryx_u32(x65, x17, x39);
- uint32_t x70, uint8_t x71 = addcarryx_u32(x68, x19, x41);
- uint32_t x73, uint8_t x74 = addcarryx_u32(x71, x21, x43);
- uint32_t x76, uint8_t x77 = addcarryx_u32(x74, x23, x45);
- uint32_t x79, uint8_t x80 = addcarryx_u32(x77, x25, x47);
- uint32_t x82, uint8_t x83 = addcarryx_u32(x80, x24, x46);
- uint32_t x85, uint8_t x86 = subborrow_u32(0x0, x49, 0xffffffe1);
- uint32_t x88, uint8_t x89 = subborrow_u32(x86, x52, 0xffffffff);
- uint32_t x91, uint8_t x92 = subborrow_u32(x89, x55, 0xffffffff);
- uint32_t x94, uint8_t x95 = subborrow_u32(x92, x58, 0xffffffff);
- uint32_t x97, uint8_t x98 = subborrow_u32(x95, x61, 0xffffffff);
- uint32_t x100, uint8_t x101 = subborrow_u32(x98, x64, 0xffffffff);
- uint32_t x103, uint8_t x104 = subborrow_u32(x101, x67, 0xffffffff);
- uint32_t x106, uint8_t x107 = subborrow_u32(x104, x70, 0xffffffff);
- uint32_t x109, uint8_t x110 = subborrow_u32(x107, x73, 0xffffffff);
- uint32_t x112, uint8_t x113 = subborrow_u32(x110, x76, 0xffffffff);
- uint32_t x115, uint8_t x116 = subborrow_u32(x113, x79, 0xffffffff);
- uint32_t x118, uint8_t x119 = subborrow_u32(x116, x82, 0x7fffffff);
- uint32_t _, uint8_t x122 = subborrow_u32(x119, x83, 0x0);
- uint32_t x123 = cmovznz32(x122, x118, x82);
- uint32_t x124 = cmovznz32(x122, x115, x79);
- uint32_t x125 = cmovznz32(x122, x112, x76);
- uint32_t x126 = cmovznz32(x122, x109, x73);
- uint32_t x127 = cmovznz32(x122, x106, x70);
- uint32_t x128 = cmovznz32(x122, x103, x67);
- uint32_t x129 = cmovznz32(x122, x100, x64);
- uint32_t x130 = cmovznz32(x122, x97, x61);
- uint32_t x131 = cmovznz32(x122, x94, x58);
- uint32_t x132 = cmovznz32(x122, x91, x55);
- uint32_t x133 = cmovznz32(x122, x88, x52);
- uint32_t x134 = cmovznz32(x122, x85, x49);
- return (x123, x124, x125, x126, x127, x128, x129, x130, x131, x132, x133, x134))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e383m31_12limbs/feaddDisplay.v b/src/Specific/montgomery32_2e383m31_12limbs/feaddDisplay.v
deleted file mode 100644
index 1b2842c25..000000000
--- a/src/Specific/montgomery32_2e383m31_12limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e383m31_12limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e383m31_12limbs/femul.v b/src/Specific/montgomery32_2e383m31_12limbs/femul.v
deleted file mode 100644
index 976acc54e..000000000
--- a/src/Specific/montgomery32_2e383m31_12limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e383m31_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e383m31_12limbs/femulDisplay.v b/src/Specific/montgomery32_2e383m31_12limbs/femulDisplay.v
deleted file mode 100644
index 494b604b8..000000000
--- a/src/Specific/montgomery32_2e383m31_12limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e383m31_12limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e383m31_12limbs/fenz.c b/src/Specific/montgomery32_2e383m31_12limbs/fenz.c
deleted file mode 100644
index 61ca36c29..000000000
--- a/src/Specific/montgomery32_2e383m31_12limbs/fenz.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x23 = (x22 | x21);
- { uint32_t x24 = (x20 | x23);
- { uint32_t x25 = (x18 | x24);
- { uint32_t x26 = (x16 | x25);
- { uint32_t x27 = (x14 | x26);
- { uint32_t x28 = (x12 | x27);
- { uint32_t x29 = (x10 | x28);
- { uint32_t x30 = (x8 | x29);
- { uint32_t x31 = (x6 | x30);
- { uint32_t x32 = (x4 | x31);
- { uint32_t x33 = (x2 | x32);
- out[0] = x33;
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e383m31_12limbs/fenz.v b/src/Specific/montgomery32_2e383m31_12limbs/fenz.v
deleted file mode 100644
index b54203d72..000000000
--- a/src/Specific/montgomery32_2e383m31_12limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e383m31_12limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e383m31_12limbs/fenzDisplay.log b/src/Specific/montgomery32_2e383m31_12limbs/fenzDisplay.log
deleted file mode 100644
index 7a5f016e0..000000000
--- a/src/Specific/montgomery32_2e383m31_12limbs/fenzDisplay.log
+++ /dev/null
@@ -1,18 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x23 = (x22 | x21);
- uint32_t x24 = (x20 | x23);
- uint32_t x25 = (x18 | x24);
- uint32_t x26 = (x16 | x25);
- uint32_t x27 = (x14 | x26);
- uint32_t x28 = (x12 | x27);
- uint32_t x29 = (x10 | x28);
- uint32_t x30 = (x8 | x29);
- uint32_t x31 = (x6 | x30);
- uint32_t x32 = (x4 | x31);
- uint32_t x33 = (x2 | x32);
- return x33)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e383m31_12limbs/fenzDisplay.v b/src/Specific/montgomery32_2e383m31_12limbs/fenzDisplay.v
deleted file mode 100644
index df02764cd..000000000
--- a/src/Specific/montgomery32_2e383m31_12limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e383m31_12limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e383m31_12limbs/feopp.v b/src/Specific/montgomery32_2e383m31_12limbs/feopp.v
deleted file mode 100644
index ef7bb51e5..000000000
--- a/src/Specific/montgomery32_2e383m31_12limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e383m31_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e383m31_12limbs/feoppDisplay.v b/src/Specific/montgomery32_2e383m31_12limbs/feoppDisplay.v
deleted file mode 100644
index d0a4ae70b..000000000
--- a/src/Specific/montgomery32_2e383m31_12limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e383m31_12limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e383m31_12limbs/fesquare.c b/src/Specific/montgomery32_2e383m31_12limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e383m31_12limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e383m31_12limbs/fesub.v b/src/Specific/montgomery32_2e383m31_12limbs/fesub.v
deleted file mode 100644
index fd4669bb4..000000000
--- a/src/Specific/montgomery32_2e383m31_12limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e383m31_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e383m31_12limbs/fesubDisplay.v b/src/Specific/montgomery32_2e383m31_12limbs/fesubDisplay.v
deleted file mode 100644
index 84ced36a4..000000000
--- a/src/Specific/montgomery32_2e383m31_12limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e383m31_12limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e383m31_12limbs/py_interpreter.sh b/src/Specific/montgomery32_2e383m31_12limbs/py_interpreter.sh
deleted file mode 100755
index 09472c92c..000000000
--- a/src/Specific/montgomery32_2e383m31_12limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**383 - 31' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e383m421_12limbs/CurveParameters.v b/src/Specific/montgomery32_2e383m421_12limbs/CurveParameters.v
deleted file mode 100644
index 678e5243e..000000000
--- a/src/Specific/montgomery32_2e383m421_12limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^383 - 421
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 12%nat;
- base := 32;
- bitwidth := 32;
- s := 2^383;
- c := [(1, 421)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e383m421_12limbs/Synthesis.v b/src/Specific/montgomery32_2e383m421_12limbs/Synthesis.v
deleted file mode 100644
index abd38cea2..000000000
--- a/src/Specific/montgomery32_2e383m421_12limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e383m421_12limbs.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/montgomery32_2e383m421_12limbs/compiler.sh b/src/Specific/montgomery32_2e383m421_12limbs/compiler.sh
deleted file mode 100755
index e43247f53..000000000
--- a/src/Specific/montgomery32_2e383m421_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<383) - 421' "$@"
diff --git a/src/Specific/montgomery32_2e383m421_12limbs/compilerxx.sh b/src/Specific/montgomery32_2e383m421_12limbs/compilerxx.sh
deleted file mode 100755
index 0676af3b6..000000000
--- a/src/Specific/montgomery32_2e383m421_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<383) - 421' "$@"
diff --git a/src/Specific/montgomery32_2e383m421_12limbs/feadd.c b/src/Specific/montgomery32_2e383m421_12limbs/feadd.c
deleted file mode 100644
index 20a590121..000000000
--- a/src/Specific/montgomery32_2e383m421_12limbs/feadd.c
+++ /dev/null
@@ -1,76 +0,0 @@
-static void feadd(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(0x0, x5, x27, &x49);
- { uint32_t x52; uint8_t x53 = _addcarryx_u32(x50, x7, x29, &x52);
- { uint32_t x55; uint8_t x56 = _addcarryx_u32(x53, x9, x31, &x55);
- { uint32_t x58; uint8_t x59 = _addcarryx_u32(x56, x11, x33, &x58);
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(x59, x13, x35, &x61);
- { uint32_t x64; uint8_t x65 = _addcarryx_u32(x62, x15, x37, &x64);
- { uint32_t x67; uint8_t x68 = _addcarryx_u32(x65, x17, x39, &x67);
- { uint32_t x70; uint8_t x71 = _addcarryx_u32(x68, x19, x41, &x70);
- { uint32_t x73; uint8_t x74 = _addcarryx_u32(x71, x21, x43, &x73);
- { uint32_t x76; uint8_t x77 = _addcarryx_u32(x74, x23, x45, &x76);
- { uint32_t x79; uint8_t x80 = _addcarryx_u32(x77, x25, x47, &x79);
- { uint32_t x82; uint8_t x83 = _addcarryx_u32(x80, x24, x46, &x82);
- { uint32_t x85; uint8_t x86 = _subborrow_u32(0x0, x49, 0xfffffe5b, &x85);
- { uint32_t x88; uint8_t x89 = _subborrow_u32(x86, x52, 0xffffffff, &x88);
- { uint32_t x91; uint8_t x92 = _subborrow_u32(x89, x55, 0xffffffff, &x91);
- { uint32_t x94; uint8_t x95 = _subborrow_u32(x92, x58, 0xffffffff, &x94);
- { uint32_t x97; uint8_t x98 = _subborrow_u32(x95, x61, 0xffffffff, &x97);
- { uint32_t x100; uint8_t x101 = _subborrow_u32(x98, x64, 0xffffffff, &x100);
- { uint32_t x103; uint8_t x104 = _subborrow_u32(x101, x67, 0xffffffff, &x103);
- { uint32_t x106; uint8_t x107 = _subborrow_u32(x104, x70, 0xffffffff, &x106);
- { uint32_t x109; uint8_t x110 = _subborrow_u32(x107, x73, 0xffffffff, &x109);
- { uint32_t x112; uint8_t x113 = _subborrow_u32(x110, x76, 0xffffffff, &x112);
- { uint32_t x115; uint8_t x116 = _subborrow_u32(x113, x79, 0xffffffff, &x115);
- { uint32_t x118; uint8_t x119 = _subborrow_u32(x116, x82, 0x7fffffff, &x118);
- { uint32_t _; uint8_t x122 = _subborrow_u32(x119, x83, 0x0, &_);
- { uint32_t x123 = cmovznz32(x122, x118, x82);
- { uint32_t x124 = cmovznz32(x122, x115, x79);
- { uint32_t x125 = cmovznz32(x122, x112, x76);
- { uint32_t x126 = cmovznz32(x122, x109, x73);
- { uint32_t x127 = cmovznz32(x122, x106, x70);
- { uint32_t x128 = cmovznz32(x122, x103, x67);
- { uint32_t x129 = cmovznz32(x122, x100, x64);
- { uint32_t x130 = cmovznz32(x122, x97, x61);
- { uint32_t x131 = cmovznz32(x122, x94, x58);
- { uint32_t x132 = cmovznz32(x122, x91, x55);
- { uint32_t x133 = cmovznz32(x122, x88, x52);
- { uint32_t x134 = cmovznz32(x122, x85, x49);
- out[0] = x134;
- out[1] = x133;
- out[2] = x132;
- out[3] = x131;
- out[4] = x130;
- out[5] = x129;
- out[6] = x128;
- out[7] = x127;
- out[8] = x126;
- out[9] = x125;
- out[10] = x124;
- out[11] = x123;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e383m421_12limbs/feadd.v b/src/Specific/montgomery32_2e383m421_12limbs/feadd.v
deleted file mode 100644
index 49b4229fe..000000000
--- a/src/Specific/montgomery32_2e383m421_12limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e383m421_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e383m421_12limbs/feaddDisplay.log b/src/Specific/montgomery32_2e383m421_12limbs/feaddDisplay.log
deleted file mode 100644
index 21c18fb82..000000000
--- a/src/Specific/montgomery32_2e383m421_12limbs/feaddDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- uint32_t x49, uint8_t x50 = addcarryx_u32(0x0, x5, x27);
- uint32_t x52, uint8_t x53 = addcarryx_u32(x50, x7, x29);
- uint32_t x55, uint8_t x56 = addcarryx_u32(x53, x9, x31);
- uint32_t x58, uint8_t x59 = addcarryx_u32(x56, x11, x33);
- uint32_t x61, uint8_t x62 = addcarryx_u32(x59, x13, x35);
- uint32_t x64, uint8_t x65 = addcarryx_u32(x62, x15, x37);
- uint32_t x67, uint8_t x68 = addcarryx_u32(x65, x17, x39);
- uint32_t x70, uint8_t x71 = addcarryx_u32(x68, x19, x41);
- uint32_t x73, uint8_t x74 = addcarryx_u32(x71, x21, x43);
- uint32_t x76, uint8_t x77 = addcarryx_u32(x74, x23, x45);
- uint32_t x79, uint8_t x80 = addcarryx_u32(x77, x25, x47);
- uint32_t x82, uint8_t x83 = addcarryx_u32(x80, x24, x46);
- uint32_t x85, uint8_t x86 = subborrow_u32(0x0, x49, 0xfffffe5b);
- uint32_t x88, uint8_t x89 = subborrow_u32(x86, x52, 0xffffffff);
- uint32_t x91, uint8_t x92 = subborrow_u32(x89, x55, 0xffffffff);
- uint32_t x94, uint8_t x95 = subborrow_u32(x92, x58, 0xffffffff);
- uint32_t x97, uint8_t x98 = subborrow_u32(x95, x61, 0xffffffff);
- uint32_t x100, uint8_t x101 = subborrow_u32(x98, x64, 0xffffffff);
- uint32_t x103, uint8_t x104 = subborrow_u32(x101, x67, 0xffffffff);
- uint32_t x106, uint8_t x107 = subborrow_u32(x104, x70, 0xffffffff);
- uint32_t x109, uint8_t x110 = subborrow_u32(x107, x73, 0xffffffff);
- uint32_t x112, uint8_t x113 = subborrow_u32(x110, x76, 0xffffffff);
- uint32_t x115, uint8_t x116 = subborrow_u32(x113, x79, 0xffffffff);
- uint32_t x118, uint8_t x119 = subborrow_u32(x116, x82, 0x7fffffff);
- uint32_t _, uint8_t x122 = subborrow_u32(x119, x83, 0x0);
- uint32_t x123 = cmovznz32(x122, x118, x82);
- uint32_t x124 = cmovznz32(x122, x115, x79);
- uint32_t x125 = cmovznz32(x122, x112, x76);
- uint32_t x126 = cmovznz32(x122, x109, x73);
- uint32_t x127 = cmovznz32(x122, x106, x70);
- uint32_t x128 = cmovznz32(x122, x103, x67);
- uint32_t x129 = cmovznz32(x122, x100, x64);
- uint32_t x130 = cmovznz32(x122, x97, x61);
- uint32_t x131 = cmovznz32(x122, x94, x58);
- uint32_t x132 = cmovznz32(x122, x91, x55);
- uint32_t x133 = cmovznz32(x122, x88, x52);
- uint32_t x134 = cmovznz32(x122, x85, x49);
- return (x123, x124, x125, x126, x127, x128, x129, x130, x131, x132, x133, x134))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e383m421_12limbs/feaddDisplay.v b/src/Specific/montgomery32_2e383m421_12limbs/feaddDisplay.v
deleted file mode 100644
index 4809b20d4..000000000
--- a/src/Specific/montgomery32_2e383m421_12limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e383m421_12limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e383m421_12limbs/femul.v b/src/Specific/montgomery32_2e383m421_12limbs/femul.v
deleted file mode 100644
index 53925029e..000000000
--- a/src/Specific/montgomery32_2e383m421_12limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e383m421_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e383m421_12limbs/femulDisplay.v b/src/Specific/montgomery32_2e383m421_12limbs/femulDisplay.v
deleted file mode 100644
index 03a5dc750..000000000
--- a/src/Specific/montgomery32_2e383m421_12limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e383m421_12limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e383m421_12limbs/fenz.c b/src/Specific/montgomery32_2e383m421_12limbs/fenz.c
deleted file mode 100644
index 61ca36c29..000000000
--- a/src/Specific/montgomery32_2e383m421_12limbs/fenz.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x23 = (x22 | x21);
- { uint32_t x24 = (x20 | x23);
- { uint32_t x25 = (x18 | x24);
- { uint32_t x26 = (x16 | x25);
- { uint32_t x27 = (x14 | x26);
- { uint32_t x28 = (x12 | x27);
- { uint32_t x29 = (x10 | x28);
- { uint32_t x30 = (x8 | x29);
- { uint32_t x31 = (x6 | x30);
- { uint32_t x32 = (x4 | x31);
- { uint32_t x33 = (x2 | x32);
- out[0] = x33;
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e383m421_12limbs/fenz.v b/src/Specific/montgomery32_2e383m421_12limbs/fenz.v
deleted file mode 100644
index d6efed41c..000000000
--- a/src/Specific/montgomery32_2e383m421_12limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e383m421_12limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e383m421_12limbs/fenzDisplay.log b/src/Specific/montgomery32_2e383m421_12limbs/fenzDisplay.log
deleted file mode 100644
index 7a5f016e0..000000000
--- a/src/Specific/montgomery32_2e383m421_12limbs/fenzDisplay.log
+++ /dev/null
@@ -1,18 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x23 = (x22 | x21);
- uint32_t x24 = (x20 | x23);
- uint32_t x25 = (x18 | x24);
- uint32_t x26 = (x16 | x25);
- uint32_t x27 = (x14 | x26);
- uint32_t x28 = (x12 | x27);
- uint32_t x29 = (x10 | x28);
- uint32_t x30 = (x8 | x29);
- uint32_t x31 = (x6 | x30);
- uint32_t x32 = (x4 | x31);
- uint32_t x33 = (x2 | x32);
- return x33)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e383m421_12limbs/fenzDisplay.v b/src/Specific/montgomery32_2e383m421_12limbs/fenzDisplay.v
deleted file mode 100644
index bfafc4735..000000000
--- a/src/Specific/montgomery32_2e383m421_12limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e383m421_12limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e383m421_12limbs/feopp.v b/src/Specific/montgomery32_2e383m421_12limbs/feopp.v
deleted file mode 100644
index c4556ef13..000000000
--- a/src/Specific/montgomery32_2e383m421_12limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e383m421_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e383m421_12limbs/feoppDisplay.v b/src/Specific/montgomery32_2e383m421_12limbs/feoppDisplay.v
deleted file mode 100644
index 4c7f0dd17..000000000
--- a/src/Specific/montgomery32_2e383m421_12limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e383m421_12limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e383m421_12limbs/fesquare.c b/src/Specific/montgomery32_2e383m421_12limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e383m421_12limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e383m421_12limbs/fesub.v b/src/Specific/montgomery32_2e383m421_12limbs/fesub.v
deleted file mode 100644
index 94887fc76..000000000
--- a/src/Specific/montgomery32_2e383m421_12limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e383m421_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e383m421_12limbs/fesubDisplay.v b/src/Specific/montgomery32_2e383m421_12limbs/fesubDisplay.v
deleted file mode 100644
index 9749ba751..000000000
--- a/src/Specific/montgomery32_2e383m421_12limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e383m421_12limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e383m421_12limbs/py_interpreter.sh b/src/Specific/montgomery32_2e383m421_12limbs/py_interpreter.sh
deleted file mode 100755
index 6860efa7b..000000000
--- a/src/Specific/montgomery32_2e383m421_12limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**383 - 421' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/CurveParameters.v b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/CurveParameters.v
deleted file mode 100644
index e1d8d7f74..000000000
--- a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^384 - 2^128 - 2^96 + 2^32 - 1
-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)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/Synthesis.v b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/Synthesis.v
deleted file mode 100644
index 775c7acc4..000000000
--- a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e384m2e128m2e96p2e32m1_12limbs.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/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/compiler.sh b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/compiler.sh
deleted file mode 100755
index a4491c81f..000000000
--- a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/compilerxx.sh b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/compilerxx.sh
deleted file mode 100755
index b8d30cf89..000000000
--- a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/feadd.c b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/feadd.c
deleted file mode 100644
index 54f5cc05d..000000000
--- a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/feadd.c
+++ /dev/null
@@ -1,76 +0,0 @@
-static void feadd(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(0x0, x5, x27, &x49);
- { uint32_t x52; uint8_t x53 = _addcarryx_u32(x50, x7, x29, &x52);
- { uint32_t x55; uint8_t x56 = _addcarryx_u32(x53, x9, x31, &x55);
- { uint32_t x58; uint8_t x59 = _addcarryx_u32(x56, x11, x33, &x58);
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(x59, x13, x35, &x61);
- { uint32_t x64; uint8_t x65 = _addcarryx_u32(x62, x15, x37, &x64);
- { uint32_t x67; uint8_t x68 = _addcarryx_u32(x65, x17, x39, &x67);
- { uint32_t x70; uint8_t x71 = _addcarryx_u32(x68, x19, x41, &x70);
- { uint32_t x73; uint8_t x74 = _addcarryx_u32(x71, x21, x43, &x73);
- { uint32_t x76; uint8_t x77 = _addcarryx_u32(x74, x23, x45, &x76);
- { uint32_t x79; uint8_t x80 = _addcarryx_u32(x77, x25, x47, &x79);
- { uint32_t x82; uint8_t x83 = _addcarryx_u32(x80, x24, x46, &x82);
- { uint32_t x85; uint8_t x86 = _subborrow_u32(0x0, x49, 0xffffffff, &x85);
- { uint32_t x88; uint8_t x89 = _subborrow_u32(x86, x52, 0x0, &x88);
- { uint32_t x91; uint8_t x92 = _subborrow_u32(x89, x55, 0x0, &x91);
- { uint32_t x94; uint8_t x95 = _subborrow_u32(x92, x58, 0xffffffff, &x94);
- { uint32_t x97; uint8_t x98 = _subborrow_u32(x95, x61, 0xfffffffe, &x97);
- { uint32_t x100; uint8_t x101 = _subborrow_u32(x98, x64, 0xffffffff, &x100);
- { uint32_t x103; uint8_t x104 = _subborrow_u32(x101, x67, 0xffffffff, &x103);
- { uint32_t x106; uint8_t x107 = _subborrow_u32(x104, x70, 0xffffffff, &x106);
- { uint32_t x109; uint8_t x110 = _subborrow_u32(x107, x73, 0xffffffff, &x109);
- { uint32_t x112; uint8_t x113 = _subborrow_u32(x110, x76, 0xffffffff, &x112);
- { uint32_t x115; uint8_t x116 = _subborrow_u32(x113, x79, 0xffffffff, &x115);
- { uint32_t x118; uint8_t x119 = _subborrow_u32(x116, x82, 0xffffffff, &x118);
- { uint32_t _; uint8_t x122 = _subborrow_u32(x119, x83, 0x0, &_);
- { uint32_t x123 = cmovznz32(x122, x118, x82);
- { uint32_t x124 = cmovznz32(x122, x115, x79);
- { uint32_t x125 = cmovznz32(x122, x112, x76);
- { uint32_t x126 = cmovznz32(x122, x109, x73);
- { uint32_t x127 = cmovznz32(x122, x106, x70);
- { uint32_t x128 = cmovznz32(x122, x103, x67);
- { uint32_t x129 = cmovznz32(x122, x100, x64);
- { uint32_t x130 = cmovznz32(x122, x97, x61);
- { uint32_t x131 = cmovznz32(x122, x94, x58);
- { uint32_t x132 = cmovznz32(x122, x91, x55);
- { uint32_t x133 = cmovznz32(x122, x88, x52);
- { uint32_t x134 = cmovznz32(x122, x85, x49);
- out[0] = x134;
- out[1] = x133;
- out[2] = x132;
- out[3] = x131;
- out[4] = x130;
- out[5] = x129;
- out[6] = x128;
- out[7] = x127;
- out[8] = x126;
- out[9] = x125;
- out[10] = x124;
- out[11] = x123;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/feadd.v b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/feadd.v
deleted file mode 100644
index 4e2a14fd2..000000000
--- a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e384m2e128m2e96p2e32m1_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/feaddDisplay.log b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/feaddDisplay.log
deleted file mode 100644
index 3cef03129..000000000
--- a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/feaddDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- uint32_t x49, uint8_t x50 = addcarryx_u32(0x0, x5, x27);
- uint32_t x52, uint8_t x53 = addcarryx_u32(x50, x7, x29);
- uint32_t x55, uint8_t x56 = addcarryx_u32(x53, x9, x31);
- uint32_t x58, uint8_t x59 = addcarryx_u32(x56, x11, x33);
- uint32_t x61, uint8_t x62 = addcarryx_u32(x59, x13, x35);
- uint32_t x64, uint8_t x65 = addcarryx_u32(x62, x15, x37);
- uint32_t x67, uint8_t x68 = addcarryx_u32(x65, x17, x39);
- uint32_t x70, uint8_t x71 = addcarryx_u32(x68, x19, x41);
- uint32_t x73, uint8_t x74 = addcarryx_u32(x71, x21, x43);
- uint32_t x76, uint8_t x77 = addcarryx_u32(x74, x23, x45);
- uint32_t x79, uint8_t x80 = addcarryx_u32(x77, x25, x47);
- uint32_t x82, uint8_t x83 = addcarryx_u32(x80, x24, x46);
- uint32_t x85, uint8_t x86 = subborrow_u32(0x0, x49, 0xffffffff);
- uint32_t x88, uint8_t x89 = subborrow_u32(x86, x52, 0x0);
- uint32_t x91, uint8_t x92 = subborrow_u32(x89, x55, 0x0);
- uint32_t x94, uint8_t x95 = subborrow_u32(x92, x58, 0xffffffff);
- uint32_t x97, uint8_t x98 = subborrow_u32(x95, x61, 0xfffffffe);
- uint32_t x100, uint8_t x101 = subborrow_u32(x98, x64, 0xffffffff);
- uint32_t x103, uint8_t x104 = subborrow_u32(x101, x67, 0xffffffff);
- uint32_t x106, uint8_t x107 = subborrow_u32(x104, x70, 0xffffffff);
- uint32_t x109, uint8_t x110 = subborrow_u32(x107, x73, 0xffffffff);
- uint32_t x112, uint8_t x113 = subborrow_u32(x110, x76, 0xffffffff);
- uint32_t x115, uint8_t x116 = subborrow_u32(x113, x79, 0xffffffff);
- uint32_t x118, uint8_t x119 = subborrow_u32(x116, x82, 0xffffffff);
- uint32_t _, uint8_t x122 = subborrow_u32(x119, x83, 0x0);
- uint32_t x123 = cmovznz32(x122, x118, x82);
- uint32_t x124 = cmovznz32(x122, x115, x79);
- uint32_t x125 = cmovznz32(x122, x112, x76);
- uint32_t x126 = cmovznz32(x122, x109, x73);
- uint32_t x127 = cmovznz32(x122, x106, x70);
- uint32_t x128 = cmovznz32(x122, x103, x67);
- uint32_t x129 = cmovznz32(x122, x100, x64);
- uint32_t x130 = cmovznz32(x122, x97, x61);
- uint32_t x131 = cmovznz32(x122, x94, x58);
- uint32_t x132 = cmovznz32(x122, x91, x55);
- uint32_t x133 = cmovznz32(x122, x88, x52);
- uint32_t x134 = cmovznz32(x122, x85, x49);
- return (x123, x124, x125, x126, x127, x128, x129, x130, x131, x132, x133, x134))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/feaddDisplay.v b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/feaddDisplay.v
deleted file mode 100644
index 39f370377..000000000
--- a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e384m2e128m2e96p2e32m1_12limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/femul.v b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/femul.v
deleted file mode 100644
index 54499e4d3..000000000
--- a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e384m2e128m2e96p2e32m1_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/femulDisplay.v b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/femulDisplay.v
deleted file mode 100644
index 709afb701..000000000
--- a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e384m2e128m2e96p2e32m1_12limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fenz.c b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fenz.c
deleted file mode 100644
index 61ca36c29..000000000
--- a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fenz.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x23 = (x22 | x21);
- { uint32_t x24 = (x20 | x23);
- { uint32_t x25 = (x18 | x24);
- { uint32_t x26 = (x16 | x25);
- { uint32_t x27 = (x14 | x26);
- { uint32_t x28 = (x12 | x27);
- { uint32_t x29 = (x10 | x28);
- { uint32_t x30 = (x8 | x29);
- { uint32_t x31 = (x6 | x30);
- { uint32_t x32 = (x4 | x31);
- { uint32_t x33 = (x2 | x32);
- out[0] = x33;
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fenz.v b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fenz.v
deleted file mode 100644
index 8e71146fe..000000000
--- a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e384m2e128m2e96p2e32m1_12limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fenzDisplay.log b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fenzDisplay.log
deleted file mode 100644
index 7a5f016e0..000000000
--- a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fenzDisplay.log
+++ /dev/null
@@ -1,18 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x23 = (x22 | x21);
- uint32_t x24 = (x20 | x23);
- uint32_t x25 = (x18 | x24);
- uint32_t x26 = (x16 | x25);
- uint32_t x27 = (x14 | x26);
- uint32_t x28 = (x12 | x27);
- uint32_t x29 = (x10 | x28);
- uint32_t x30 = (x8 | x29);
- uint32_t x31 = (x6 | x30);
- uint32_t x32 = (x4 | x31);
- uint32_t x33 = (x2 | x32);
- return x33)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fenzDisplay.v b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fenzDisplay.v
deleted file mode 100644
index 458bb4d07..000000000
--- a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e384m2e128m2e96p2e32m1_12limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/feopp.v b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/feopp.v
deleted file mode 100644
index b7d181e0b..000000000
--- a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e384m2e128m2e96p2e32m1_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/feoppDisplay.v b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/feoppDisplay.v
deleted file mode 100644
index c96a0ef50..000000000
--- a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e384m2e128m2e96p2e32m1_12limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fesquare.c b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fesub.v b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fesub.v
deleted file mode 100644
index 8405ab290..000000000
--- a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e384m2e128m2e96p2e32m1_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fesubDisplay.v b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fesubDisplay.v
deleted file mode 100644
index 79dc1cb8d..000000000
--- a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e384m2e128m2e96p2e32m1_12limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/py_interpreter.sh b/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/py_interpreter.sh
deleted file mode 100755
index 60bc2eb7c..000000000
--- a/src/Specific/montgomery32_2e384m2e128m2e96p2e32m1_12limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**384 - 2**128 - 2**96 + 2**32 - 1' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e384m317_12limbs/CurveParameters.v b/src/Specific/montgomery32_2e384m317_12limbs/CurveParameters.v
deleted file mode 100644
index 01b7f54d7..000000000
--- a/src/Specific/montgomery32_2e384m317_12limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^384 - 317
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 12%nat;
- base := 32;
- bitwidth := 32;
- s := 2^384;
- c := [(1, 317)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e384m317_12limbs/Synthesis.v b/src/Specific/montgomery32_2e384m317_12limbs/Synthesis.v
deleted file mode 100644
index ebb5958b4..000000000
--- a/src/Specific/montgomery32_2e384m317_12limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e384m317_12limbs.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/montgomery32_2e384m317_12limbs/compiler.sh b/src/Specific/montgomery32_2e384m317_12limbs/compiler.sh
deleted file mode 100755
index 8551f6766..000000000
--- a/src/Specific/montgomery32_2e384m317_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<384) - 317' "$@"
diff --git a/src/Specific/montgomery32_2e384m317_12limbs/compilerxx.sh b/src/Specific/montgomery32_2e384m317_12limbs/compilerxx.sh
deleted file mode 100755
index 6e6f2bb9d..000000000
--- a/src/Specific/montgomery32_2e384m317_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<384) - 317' "$@"
diff --git a/src/Specific/montgomery32_2e384m317_12limbs/feadd.c b/src/Specific/montgomery32_2e384m317_12limbs/feadd.c
deleted file mode 100644
index ac3bf445a..000000000
--- a/src/Specific/montgomery32_2e384m317_12limbs/feadd.c
+++ /dev/null
@@ -1,76 +0,0 @@
-static void feadd(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(0x0, x5, x27, &x49);
- { uint32_t x52; uint8_t x53 = _addcarryx_u32(x50, x7, x29, &x52);
- { uint32_t x55; uint8_t x56 = _addcarryx_u32(x53, x9, x31, &x55);
- { uint32_t x58; uint8_t x59 = _addcarryx_u32(x56, x11, x33, &x58);
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(x59, x13, x35, &x61);
- { uint32_t x64; uint8_t x65 = _addcarryx_u32(x62, x15, x37, &x64);
- { uint32_t x67; uint8_t x68 = _addcarryx_u32(x65, x17, x39, &x67);
- { uint32_t x70; uint8_t x71 = _addcarryx_u32(x68, x19, x41, &x70);
- { uint32_t x73; uint8_t x74 = _addcarryx_u32(x71, x21, x43, &x73);
- { uint32_t x76; uint8_t x77 = _addcarryx_u32(x74, x23, x45, &x76);
- { uint32_t x79; uint8_t x80 = _addcarryx_u32(x77, x25, x47, &x79);
- { uint32_t x82; uint8_t x83 = _addcarryx_u32(x80, x24, x46, &x82);
- { uint32_t x85; uint8_t x86 = _subborrow_u32(0x0, x49, 0xfffffec3, &x85);
- { uint32_t x88; uint8_t x89 = _subborrow_u32(x86, x52, 0xffffffff, &x88);
- { uint32_t x91; uint8_t x92 = _subborrow_u32(x89, x55, 0xffffffff, &x91);
- { uint32_t x94; uint8_t x95 = _subborrow_u32(x92, x58, 0xffffffff, &x94);
- { uint32_t x97; uint8_t x98 = _subborrow_u32(x95, x61, 0xffffffff, &x97);
- { uint32_t x100; uint8_t x101 = _subborrow_u32(x98, x64, 0xffffffff, &x100);
- { uint32_t x103; uint8_t x104 = _subborrow_u32(x101, x67, 0xffffffff, &x103);
- { uint32_t x106; uint8_t x107 = _subborrow_u32(x104, x70, 0xffffffff, &x106);
- { uint32_t x109; uint8_t x110 = _subborrow_u32(x107, x73, 0xffffffff, &x109);
- { uint32_t x112; uint8_t x113 = _subborrow_u32(x110, x76, 0xffffffff, &x112);
- { uint32_t x115; uint8_t x116 = _subborrow_u32(x113, x79, 0xffffffff, &x115);
- { uint32_t x118; uint8_t x119 = _subborrow_u32(x116, x82, 0xffffffff, &x118);
- { uint32_t _; uint8_t x122 = _subborrow_u32(x119, x83, 0x0, &_);
- { uint32_t x123 = cmovznz32(x122, x118, x82);
- { uint32_t x124 = cmovznz32(x122, x115, x79);
- { uint32_t x125 = cmovznz32(x122, x112, x76);
- { uint32_t x126 = cmovznz32(x122, x109, x73);
- { uint32_t x127 = cmovznz32(x122, x106, x70);
- { uint32_t x128 = cmovznz32(x122, x103, x67);
- { uint32_t x129 = cmovznz32(x122, x100, x64);
- { uint32_t x130 = cmovznz32(x122, x97, x61);
- { uint32_t x131 = cmovznz32(x122, x94, x58);
- { uint32_t x132 = cmovznz32(x122, x91, x55);
- { uint32_t x133 = cmovznz32(x122, x88, x52);
- { uint32_t x134 = cmovznz32(x122, x85, x49);
- out[0] = x134;
- out[1] = x133;
- out[2] = x132;
- out[3] = x131;
- out[4] = x130;
- out[5] = x129;
- out[6] = x128;
- out[7] = x127;
- out[8] = x126;
- out[9] = x125;
- out[10] = x124;
- out[11] = x123;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e384m317_12limbs/feadd.v b/src/Specific/montgomery32_2e384m317_12limbs/feadd.v
deleted file mode 100644
index 7602cde88..000000000
--- a/src/Specific/montgomery32_2e384m317_12limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e384m317_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e384m317_12limbs/feaddDisplay.log b/src/Specific/montgomery32_2e384m317_12limbs/feaddDisplay.log
deleted file mode 100644
index d6ec1994f..000000000
--- a/src/Specific/montgomery32_2e384m317_12limbs/feaddDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- uint32_t x49, uint8_t x50 = addcarryx_u32(0x0, x5, x27);
- uint32_t x52, uint8_t x53 = addcarryx_u32(x50, x7, x29);
- uint32_t x55, uint8_t x56 = addcarryx_u32(x53, x9, x31);
- uint32_t x58, uint8_t x59 = addcarryx_u32(x56, x11, x33);
- uint32_t x61, uint8_t x62 = addcarryx_u32(x59, x13, x35);
- uint32_t x64, uint8_t x65 = addcarryx_u32(x62, x15, x37);
- uint32_t x67, uint8_t x68 = addcarryx_u32(x65, x17, x39);
- uint32_t x70, uint8_t x71 = addcarryx_u32(x68, x19, x41);
- uint32_t x73, uint8_t x74 = addcarryx_u32(x71, x21, x43);
- uint32_t x76, uint8_t x77 = addcarryx_u32(x74, x23, x45);
- uint32_t x79, uint8_t x80 = addcarryx_u32(x77, x25, x47);
- uint32_t x82, uint8_t x83 = addcarryx_u32(x80, x24, x46);
- uint32_t x85, uint8_t x86 = subborrow_u32(0x0, x49, 0xfffffec3);
- uint32_t x88, uint8_t x89 = subborrow_u32(x86, x52, 0xffffffff);
- uint32_t x91, uint8_t x92 = subborrow_u32(x89, x55, 0xffffffff);
- uint32_t x94, uint8_t x95 = subborrow_u32(x92, x58, 0xffffffff);
- uint32_t x97, uint8_t x98 = subborrow_u32(x95, x61, 0xffffffff);
- uint32_t x100, uint8_t x101 = subborrow_u32(x98, x64, 0xffffffff);
- uint32_t x103, uint8_t x104 = subborrow_u32(x101, x67, 0xffffffff);
- uint32_t x106, uint8_t x107 = subborrow_u32(x104, x70, 0xffffffff);
- uint32_t x109, uint8_t x110 = subborrow_u32(x107, x73, 0xffffffff);
- uint32_t x112, uint8_t x113 = subborrow_u32(x110, x76, 0xffffffff);
- uint32_t x115, uint8_t x116 = subborrow_u32(x113, x79, 0xffffffff);
- uint32_t x118, uint8_t x119 = subborrow_u32(x116, x82, 0xffffffff);
- uint32_t _, uint8_t x122 = subborrow_u32(x119, x83, 0x0);
- uint32_t x123 = cmovznz32(x122, x118, x82);
- uint32_t x124 = cmovznz32(x122, x115, x79);
- uint32_t x125 = cmovznz32(x122, x112, x76);
- uint32_t x126 = cmovznz32(x122, x109, x73);
- uint32_t x127 = cmovznz32(x122, x106, x70);
- uint32_t x128 = cmovznz32(x122, x103, x67);
- uint32_t x129 = cmovznz32(x122, x100, x64);
- uint32_t x130 = cmovznz32(x122, x97, x61);
- uint32_t x131 = cmovznz32(x122, x94, x58);
- uint32_t x132 = cmovznz32(x122, x91, x55);
- uint32_t x133 = cmovznz32(x122, x88, x52);
- uint32_t x134 = cmovznz32(x122, x85, x49);
- return (x123, x124, x125, x126, x127, x128, x129, x130, x131, x132, x133, x134))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e384m317_12limbs/feaddDisplay.v b/src/Specific/montgomery32_2e384m317_12limbs/feaddDisplay.v
deleted file mode 100644
index daddd7cec..000000000
--- a/src/Specific/montgomery32_2e384m317_12limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e384m317_12limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e384m317_12limbs/femul.v b/src/Specific/montgomery32_2e384m317_12limbs/femul.v
deleted file mode 100644
index 3d6513a58..000000000
--- a/src/Specific/montgomery32_2e384m317_12limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e384m317_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e384m317_12limbs/femulDisplay.v b/src/Specific/montgomery32_2e384m317_12limbs/femulDisplay.v
deleted file mode 100644
index 6b7d8ee14..000000000
--- a/src/Specific/montgomery32_2e384m317_12limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e384m317_12limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e384m317_12limbs/fenz.c b/src/Specific/montgomery32_2e384m317_12limbs/fenz.c
deleted file mode 100644
index 61ca36c29..000000000
--- a/src/Specific/montgomery32_2e384m317_12limbs/fenz.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x23 = (x22 | x21);
- { uint32_t x24 = (x20 | x23);
- { uint32_t x25 = (x18 | x24);
- { uint32_t x26 = (x16 | x25);
- { uint32_t x27 = (x14 | x26);
- { uint32_t x28 = (x12 | x27);
- { uint32_t x29 = (x10 | x28);
- { uint32_t x30 = (x8 | x29);
- { uint32_t x31 = (x6 | x30);
- { uint32_t x32 = (x4 | x31);
- { uint32_t x33 = (x2 | x32);
- out[0] = x33;
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e384m317_12limbs/fenz.v b/src/Specific/montgomery32_2e384m317_12limbs/fenz.v
deleted file mode 100644
index 345fdbfa7..000000000
--- a/src/Specific/montgomery32_2e384m317_12limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e384m317_12limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e384m317_12limbs/fenzDisplay.log b/src/Specific/montgomery32_2e384m317_12limbs/fenzDisplay.log
deleted file mode 100644
index 7a5f016e0..000000000
--- a/src/Specific/montgomery32_2e384m317_12limbs/fenzDisplay.log
+++ /dev/null
@@ -1,18 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x23 = (x22 | x21);
- uint32_t x24 = (x20 | x23);
- uint32_t x25 = (x18 | x24);
- uint32_t x26 = (x16 | x25);
- uint32_t x27 = (x14 | x26);
- uint32_t x28 = (x12 | x27);
- uint32_t x29 = (x10 | x28);
- uint32_t x30 = (x8 | x29);
- uint32_t x31 = (x6 | x30);
- uint32_t x32 = (x4 | x31);
- uint32_t x33 = (x2 | x32);
- return x33)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e384m317_12limbs/fenzDisplay.v b/src/Specific/montgomery32_2e384m317_12limbs/fenzDisplay.v
deleted file mode 100644
index ffc3961cc..000000000
--- a/src/Specific/montgomery32_2e384m317_12limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e384m317_12limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e384m317_12limbs/feopp.v b/src/Specific/montgomery32_2e384m317_12limbs/feopp.v
deleted file mode 100644
index 69b4ed2c6..000000000
--- a/src/Specific/montgomery32_2e384m317_12limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e384m317_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e384m317_12limbs/feoppDisplay.v b/src/Specific/montgomery32_2e384m317_12limbs/feoppDisplay.v
deleted file mode 100644
index f3832cecd..000000000
--- a/src/Specific/montgomery32_2e384m317_12limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e384m317_12limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e384m317_12limbs/fesquare.c b/src/Specific/montgomery32_2e384m317_12limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e384m317_12limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e384m317_12limbs/fesub.v b/src/Specific/montgomery32_2e384m317_12limbs/fesub.v
deleted file mode 100644
index f8ed56795..000000000
--- a/src/Specific/montgomery32_2e384m317_12limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e384m317_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e384m317_12limbs/fesubDisplay.v b/src/Specific/montgomery32_2e384m317_12limbs/fesubDisplay.v
deleted file mode 100644
index aedbd21c6..000000000
--- a/src/Specific/montgomery32_2e384m317_12limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e384m317_12limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e384m317_12limbs/py_interpreter.sh b/src/Specific/montgomery32_2e384m317_12limbs/py_interpreter.sh
deleted file mode 100755
index c7630a3c6..000000000
--- a/src/Specific/montgomery32_2e384m317_12limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**384 - 317' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/CurveParameters.v b/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/CurveParameters.v
deleted file mode 100644
index f220253fa..000000000
--- a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^384 - 5*2^368 - 1
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 12%nat;
- base := 32;
- bitwidth := 32;
- s := 2^384;
- c := [(1, 1); (5, 2^368)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e384m5x2e368m1_12limbs/Synthesis.v b/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/Synthesis.v
deleted file mode 100644
index 1625054ae..000000000
--- a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e384m5x2e368m1_12limbs.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/montgomery32_2e384m5x2e368m1_12limbs/compiler.sh b/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/compiler.sh
deleted file mode 100755
index 0a88da40b..000000000
--- a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/compilerxx.sh b/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/compilerxx.sh
deleted file mode 100755
index 135252883..000000000
--- a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/feadd.c b/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/feadd.c
deleted file mode 100644
index 66bd374ad..000000000
--- a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/feadd.c
+++ /dev/null
@@ -1,76 +0,0 @@
-static void feadd(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(0x0, x5, x27, &x49);
- { uint32_t x52; uint8_t x53 = _addcarryx_u32(x50, x7, x29, &x52);
- { uint32_t x55; uint8_t x56 = _addcarryx_u32(x53, x9, x31, &x55);
- { uint32_t x58; uint8_t x59 = _addcarryx_u32(x56, x11, x33, &x58);
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(x59, x13, x35, &x61);
- { uint32_t x64; uint8_t x65 = _addcarryx_u32(x62, x15, x37, &x64);
- { uint32_t x67; uint8_t x68 = _addcarryx_u32(x65, x17, x39, &x67);
- { uint32_t x70; uint8_t x71 = _addcarryx_u32(x68, x19, x41, &x70);
- { uint32_t x73; uint8_t x74 = _addcarryx_u32(x71, x21, x43, &x73);
- { uint32_t x76; uint8_t x77 = _addcarryx_u32(x74, x23, x45, &x76);
- { uint32_t x79; uint8_t x80 = _addcarryx_u32(x77, x25, x47, &x79);
- { uint32_t x82; uint8_t x83 = _addcarryx_u32(x80, x24, x46, &x82);
- { uint32_t x85; uint8_t x86 = _subborrow_u32(0x0, x49, 0xffffffff, &x85);
- { uint32_t x88; uint8_t x89 = _subborrow_u32(x86, x52, 0xffffffff, &x88);
- { uint32_t x91; uint8_t x92 = _subborrow_u32(x89, x55, 0xffffffff, &x91);
- { uint32_t x94; uint8_t x95 = _subborrow_u32(x92, x58, 0xffffffff, &x94);
- { uint32_t x97; uint8_t x98 = _subborrow_u32(x95, x61, 0xffffffff, &x97);
- { uint32_t x100; uint8_t x101 = _subborrow_u32(x98, x64, 0xffffffff, &x100);
- { uint32_t x103; uint8_t x104 = _subborrow_u32(x101, x67, 0xffffffff, &x103);
- { uint32_t x106; uint8_t x107 = _subborrow_u32(x104, x70, 0xffffffff, &x106);
- { uint32_t x109; uint8_t x110 = _subborrow_u32(x107, x73, 0xffffffff, &x109);
- { uint32_t x112; uint8_t x113 = _subborrow_u32(x110, x76, 0xffffffff, &x112);
- { uint32_t x115; uint8_t x116 = _subborrow_u32(x113, x79, 0xffffffff, &x115);
- { uint32_t x118; uint8_t x119 = _subborrow_u32(x116, x82, 0xfffaffff, &x118);
- { uint32_t _; uint8_t x122 = _subborrow_u32(x119, x83, 0x0, &_);
- { uint32_t x123 = cmovznz32(x122, x118, x82);
- { uint32_t x124 = cmovznz32(x122, x115, x79);
- { uint32_t x125 = cmovznz32(x122, x112, x76);
- { uint32_t x126 = cmovznz32(x122, x109, x73);
- { uint32_t x127 = cmovznz32(x122, x106, x70);
- { uint32_t x128 = cmovznz32(x122, x103, x67);
- { uint32_t x129 = cmovznz32(x122, x100, x64);
- { uint32_t x130 = cmovznz32(x122, x97, x61);
- { uint32_t x131 = cmovznz32(x122, x94, x58);
- { uint32_t x132 = cmovznz32(x122, x91, x55);
- { uint32_t x133 = cmovznz32(x122, x88, x52);
- { uint32_t x134 = cmovznz32(x122, x85, x49);
- out[0] = x134;
- out[1] = x133;
- out[2] = x132;
- out[3] = x131;
- out[4] = x130;
- out[5] = x129;
- out[6] = x128;
- out[7] = x127;
- out[8] = x126;
- out[9] = x125;
- out[10] = x124;
- out[11] = x123;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/feadd.v b/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/feadd.v
deleted file mode 100644
index 01955529a..000000000
--- a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e384m5x2e368m1_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/feaddDisplay.log b/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/feaddDisplay.log
deleted file mode 100644
index d13f97195..000000000
--- a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/feaddDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- uint32_t x49, uint8_t x50 = addcarryx_u32(0x0, x5, x27);
- uint32_t x52, uint8_t x53 = addcarryx_u32(x50, x7, x29);
- uint32_t x55, uint8_t x56 = addcarryx_u32(x53, x9, x31);
- uint32_t x58, uint8_t x59 = addcarryx_u32(x56, x11, x33);
- uint32_t x61, uint8_t x62 = addcarryx_u32(x59, x13, x35);
- uint32_t x64, uint8_t x65 = addcarryx_u32(x62, x15, x37);
- uint32_t x67, uint8_t x68 = addcarryx_u32(x65, x17, x39);
- uint32_t x70, uint8_t x71 = addcarryx_u32(x68, x19, x41);
- uint32_t x73, uint8_t x74 = addcarryx_u32(x71, x21, x43);
- uint32_t x76, uint8_t x77 = addcarryx_u32(x74, x23, x45);
- uint32_t x79, uint8_t x80 = addcarryx_u32(x77, x25, x47);
- uint32_t x82, uint8_t x83 = addcarryx_u32(x80, x24, x46);
- uint32_t x85, uint8_t x86 = subborrow_u32(0x0, x49, 0xffffffff);
- uint32_t x88, uint8_t x89 = subborrow_u32(x86, x52, 0xffffffff);
- uint32_t x91, uint8_t x92 = subborrow_u32(x89, x55, 0xffffffff);
- uint32_t x94, uint8_t x95 = subborrow_u32(x92, x58, 0xffffffff);
- uint32_t x97, uint8_t x98 = subborrow_u32(x95, x61, 0xffffffff);
- uint32_t x100, uint8_t x101 = subborrow_u32(x98, x64, 0xffffffff);
- uint32_t x103, uint8_t x104 = subborrow_u32(x101, x67, 0xffffffff);
- uint32_t x106, uint8_t x107 = subborrow_u32(x104, x70, 0xffffffff);
- uint32_t x109, uint8_t x110 = subborrow_u32(x107, x73, 0xffffffff);
- uint32_t x112, uint8_t x113 = subborrow_u32(x110, x76, 0xffffffff);
- uint32_t x115, uint8_t x116 = subborrow_u32(x113, x79, 0xffffffff);
- uint32_t x118, uint8_t x119 = subborrow_u32(x116, x82, 0xfffaffff);
- uint32_t _, uint8_t x122 = subborrow_u32(x119, x83, 0x0);
- uint32_t x123 = cmovznz32(x122, x118, x82);
- uint32_t x124 = cmovznz32(x122, x115, x79);
- uint32_t x125 = cmovznz32(x122, x112, x76);
- uint32_t x126 = cmovznz32(x122, x109, x73);
- uint32_t x127 = cmovznz32(x122, x106, x70);
- uint32_t x128 = cmovznz32(x122, x103, x67);
- uint32_t x129 = cmovznz32(x122, x100, x64);
- uint32_t x130 = cmovznz32(x122, x97, x61);
- uint32_t x131 = cmovznz32(x122, x94, x58);
- uint32_t x132 = cmovznz32(x122, x91, x55);
- uint32_t x133 = cmovznz32(x122, x88, x52);
- uint32_t x134 = cmovznz32(x122, x85, x49);
- return (x123, x124, x125, x126, x127, x128, x129, x130, x131, x132, x133, x134))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/feaddDisplay.v b/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/feaddDisplay.v
deleted file mode 100644
index 88c987120..000000000
--- a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e384m5x2e368m1_12limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/femul.v b/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/femul.v
deleted file mode 100644
index 587763a3b..000000000
--- a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e384m5x2e368m1_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/femulDisplay.v b/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/femulDisplay.v
deleted file mode 100644
index 020621142..000000000
--- a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e384m5x2e368m1_12limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fenz.c b/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fenz.c
deleted file mode 100644
index 61ca36c29..000000000
--- a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fenz.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x23 = (x22 | x21);
- { uint32_t x24 = (x20 | x23);
- { uint32_t x25 = (x18 | x24);
- { uint32_t x26 = (x16 | x25);
- { uint32_t x27 = (x14 | x26);
- { uint32_t x28 = (x12 | x27);
- { uint32_t x29 = (x10 | x28);
- { uint32_t x30 = (x8 | x29);
- { uint32_t x31 = (x6 | x30);
- { uint32_t x32 = (x4 | x31);
- { uint32_t x33 = (x2 | x32);
- out[0] = x33;
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fenz.v b/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fenz.v
deleted file mode 100644
index 4124189cf..000000000
--- a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e384m5x2e368m1_12limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fenzDisplay.log b/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fenzDisplay.log
deleted file mode 100644
index 7a5f016e0..000000000
--- a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fenzDisplay.log
+++ /dev/null
@@ -1,18 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x23 = (x22 | x21);
- uint32_t x24 = (x20 | x23);
- uint32_t x25 = (x18 | x24);
- uint32_t x26 = (x16 | x25);
- uint32_t x27 = (x14 | x26);
- uint32_t x28 = (x12 | x27);
- uint32_t x29 = (x10 | x28);
- uint32_t x30 = (x8 | x29);
- uint32_t x31 = (x6 | x30);
- uint32_t x32 = (x4 | x31);
- uint32_t x33 = (x2 | x32);
- return x33)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fenzDisplay.v b/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fenzDisplay.v
deleted file mode 100644
index 27a9bfdce..000000000
--- a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e384m5x2e368m1_12limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/feopp.v b/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/feopp.v
deleted file mode 100644
index 002e6a702..000000000
--- a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e384m5x2e368m1_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/feoppDisplay.v b/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/feoppDisplay.v
deleted file mode 100644
index 6292d6d62..000000000
--- a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e384m5x2e368m1_12limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fesquare.c b/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fesub.v b/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fesub.v
deleted file mode 100644
index 44a04938c..000000000
--- a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e384m5x2e368m1_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fesubDisplay.v b/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fesubDisplay.v
deleted file mode 100644
index e34e5cedb..000000000
--- a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e384m5x2e368m1_12limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/py_interpreter.sh b/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/py_interpreter.sh
deleted file mode 100755
index 579f5db77..000000000
--- a/src/Specific/montgomery32_2e384m5x2e368m1_12limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**384 - 5*2**368 - 1' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/CurveParameters.v b/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/CurveParameters.v
deleted file mode 100644
index cf5e93859..000000000
--- a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^384 - 79*2^376 - 1
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 12%nat;
- base := 32;
- bitwidth := 32;
- s := 2^384;
- c := [(1, 1); (79, 2^376)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e384m79x2e376m1_12limbs/Synthesis.v b/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/Synthesis.v
deleted file mode 100644
index a0385c10e..000000000
--- a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e384m79x2e376m1_12limbs.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/montgomery32_2e384m79x2e376m1_12limbs/compiler.sh b/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/compiler.sh
deleted file mode 100755
index 892fe2658..000000000
--- a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/compilerxx.sh b/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/compilerxx.sh
deleted file mode 100755
index 0fab4c6b1..000000000
--- a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/feadd.c b/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/feadd.c
deleted file mode 100644
index 52b84f7c0..000000000
--- a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/feadd.c
+++ /dev/null
@@ -1,76 +0,0 @@
-static void feadd(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- { uint32_t x49; uint8_t x50 = _addcarryx_u32(0x0, x5, x27, &x49);
- { uint32_t x52; uint8_t x53 = _addcarryx_u32(x50, x7, x29, &x52);
- { uint32_t x55; uint8_t x56 = _addcarryx_u32(x53, x9, x31, &x55);
- { uint32_t x58; uint8_t x59 = _addcarryx_u32(x56, x11, x33, &x58);
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(x59, x13, x35, &x61);
- { uint32_t x64; uint8_t x65 = _addcarryx_u32(x62, x15, x37, &x64);
- { uint32_t x67; uint8_t x68 = _addcarryx_u32(x65, x17, x39, &x67);
- { uint32_t x70; uint8_t x71 = _addcarryx_u32(x68, x19, x41, &x70);
- { uint32_t x73; uint8_t x74 = _addcarryx_u32(x71, x21, x43, &x73);
- { uint32_t x76; uint8_t x77 = _addcarryx_u32(x74, x23, x45, &x76);
- { uint32_t x79; uint8_t x80 = _addcarryx_u32(x77, x25, x47, &x79);
- { uint32_t x82; uint8_t x83 = _addcarryx_u32(x80, x24, x46, &x82);
- { uint32_t x85; uint8_t x86 = _subborrow_u32(0x0, x49, 0xffffffff, &x85);
- { uint32_t x88; uint8_t x89 = _subborrow_u32(x86, x52, 0xffffffff, &x88);
- { uint32_t x91; uint8_t x92 = _subborrow_u32(x89, x55, 0xffffffff, &x91);
- { uint32_t x94; uint8_t x95 = _subborrow_u32(x92, x58, 0xffffffff, &x94);
- { uint32_t x97; uint8_t x98 = _subborrow_u32(x95, x61, 0xffffffff, &x97);
- { uint32_t x100; uint8_t x101 = _subborrow_u32(x98, x64, 0xffffffff, &x100);
- { uint32_t x103; uint8_t x104 = _subborrow_u32(x101, x67, 0xffffffff, &x103);
- { uint32_t x106; uint8_t x107 = _subborrow_u32(x104, x70, 0xffffffff, &x106);
- { uint32_t x109; uint8_t x110 = _subborrow_u32(x107, x73, 0xffffffff, &x109);
- { uint32_t x112; uint8_t x113 = _subborrow_u32(x110, x76, 0xffffffff, &x112);
- { uint32_t x115; uint8_t x116 = _subborrow_u32(x113, x79, 0xffffffff, &x115);
- { uint32_t x118; uint8_t x119 = _subborrow_u32(x116, x82, 0xb0ffffff, &x118);
- { uint32_t _; uint8_t x122 = _subborrow_u32(x119, x83, 0x0, &_);
- { uint32_t x123 = cmovznz32(x122, x118, x82);
- { uint32_t x124 = cmovznz32(x122, x115, x79);
- { uint32_t x125 = cmovznz32(x122, x112, x76);
- { uint32_t x126 = cmovznz32(x122, x109, x73);
- { uint32_t x127 = cmovznz32(x122, x106, x70);
- { uint32_t x128 = cmovznz32(x122, x103, x67);
- { uint32_t x129 = cmovznz32(x122, x100, x64);
- { uint32_t x130 = cmovznz32(x122, x97, x61);
- { uint32_t x131 = cmovznz32(x122, x94, x58);
- { uint32_t x132 = cmovznz32(x122, x91, x55);
- { uint32_t x133 = cmovznz32(x122, x88, x52);
- { uint32_t x134 = cmovznz32(x122, x85, x49);
- out[0] = x134;
- out[1] = x133;
- out[2] = x132;
- out[3] = x131;
- out[4] = x130;
- out[5] = x129;
- out[6] = x128;
- out[7] = x127;
- out[8] = x126;
- out[9] = x125;
- out[10] = x124;
- out[11] = x123;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/feadd.v b/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/feadd.v
deleted file mode 100644
index 8ac7fe991..000000000
--- a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e384m79x2e376m1_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/feaddDisplay.log b/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/feaddDisplay.log
deleted file mode 100644
index a0a196ff2..000000000
--- a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/feaddDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- uint32_t x49, uint8_t x50 = addcarryx_u32(0x0, x5, x27);
- uint32_t x52, uint8_t x53 = addcarryx_u32(x50, x7, x29);
- uint32_t x55, uint8_t x56 = addcarryx_u32(x53, x9, x31);
- uint32_t x58, uint8_t x59 = addcarryx_u32(x56, x11, x33);
- uint32_t x61, uint8_t x62 = addcarryx_u32(x59, x13, x35);
- uint32_t x64, uint8_t x65 = addcarryx_u32(x62, x15, x37);
- uint32_t x67, uint8_t x68 = addcarryx_u32(x65, x17, x39);
- uint32_t x70, uint8_t x71 = addcarryx_u32(x68, x19, x41);
- uint32_t x73, uint8_t x74 = addcarryx_u32(x71, x21, x43);
- uint32_t x76, uint8_t x77 = addcarryx_u32(x74, x23, x45);
- uint32_t x79, uint8_t x80 = addcarryx_u32(x77, x25, x47);
- uint32_t x82, uint8_t x83 = addcarryx_u32(x80, x24, x46);
- uint32_t x85, uint8_t x86 = subborrow_u32(0x0, x49, 0xffffffff);
- uint32_t x88, uint8_t x89 = subborrow_u32(x86, x52, 0xffffffff);
- uint32_t x91, uint8_t x92 = subborrow_u32(x89, x55, 0xffffffff);
- uint32_t x94, uint8_t x95 = subborrow_u32(x92, x58, 0xffffffff);
- uint32_t x97, uint8_t x98 = subborrow_u32(x95, x61, 0xffffffff);
- uint32_t x100, uint8_t x101 = subborrow_u32(x98, x64, 0xffffffff);
- uint32_t x103, uint8_t x104 = subborrow_u32(x101, x67, 0xffffffff);
- uint32_t x106, uint8_t x107 = subborrow_u32(x104, x70, 0xffffffff);
- uint32_t x109, uint8_t x110 = subborrow_u32(x107, x73, 0xffffffff);
- uint32_t x112, uint8_t x113 = subborrow_u32(x110, x76, 0xffffffff);
- uint32_t x115, uint8_t x116 = subborrow_u32(x113, x79, 0xffffffff);
- uint32_t x118, uint8_t x119 = subborrow_u32(x116, x82, 0xb0ffffff);
- uint32_t _, uint8_t x122 = subborrow_u32(x119, x83, 0x0);
- uint32_t x123 = cmovznz32(x122, x118, x82);
- uint32_t x124 = cmovznz32(x122, x115, x79);
- uint32_t x125 = cmovznz32(x122, x112, x76);
- uint32_t x126 = cmovznz32(x122, x109, x73);
- uint32_t x127 = cmovznz32(x122, x106, x70);
- uint32_t x128 = cmovznz32(x122, x103, x67);
- uint32_t x129 = cmovznz32(x122, x100, x64);
- uint32_t x130 = cmovznz32(x122, x97, x61);
- uint32_t x131 = cmovznz32(x122, x94, x58);
- uint32_t x132 = cmovznz32(x122, x91, x55);
- uint32_t x133 = cmovznz32(x122, x88, x52);
- uint32_t x134 = cmovznz32(x122, x85, x49);
- return (x123, x124, x125, x126, x127, x128, x129, x130, x131, x132, x133, x134))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/feaddDisplay.v b/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/feaddDisplay.v
deleted file mode 100644
index 888048fb5..000000000
--- a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e384m79x2e376m1_12limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/femul.v b/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/femul.v
deleted file mode 100644
index 958b30e2e..000000000
--- a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e384m79x2e376m1_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/femulDisplay.v b/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/femulDisplay.v
deleted file mode 100644
index f04b5deb3..000000000
--- a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e384m79x2e376m1_12limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fenz.c b/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fenz.c
deleted file mode 100644
index 61ca36c29..000000000
--- a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fenz.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x23 = (x22 | x21);
- { uint32_t x24 = (x20 | x23);
- { uint32_t x25 = (x18 | x24);
- { uint32_t x26 = (x16 | x25);
- { uint32_t x27 = (x14 | x26);
- { uint32_t x28 = (x12 | x27);
- { uint32_t x29 = (x10 | x28);
- { uint32_t x30 = (x8 | x29);
- { uint32_t x31 = (x6 | x30);
- { uint32_t x32 = (x4 | x31);
- { uint32_t x33 = (x2 | x32);
- out[0] = x33;
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fenz.v b/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fenz.v
deleted file mode 100644
index 9a7f96595..000000000
--- a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e384m79x2e376m1_12limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fenzDisplay.log b/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fenzDisplay.log
deleted file mode 100644
index 7a5f016e0..000000000
--- a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fenzDisplay.log
+++ /dev/null
@@ -1,18 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x23 = (x22 | x21);
- uint32_t x24 = (x20 | x23);
- uint32_t x25 = (x18 | x24);
- uint32_t x26 = (x16 | x25);
- uint32_t x27 = (x14 | x26);
- uint32_t x28 = (x12 | x27);
- uint32_t x29 = (x10 | x28);
- uint32_t x30 = (x8 | x29);
- uint32_t x31 = (x6 | x30);
- uint32_t x32 = (x4 | x31);
- uint32_t x33 = (x2 | x32);
- return x33)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fenzDisplay.v b/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fenzDisplay.v
deleted file mode 100644
index f887d88c5..000000000
--- a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e384m79x2e376m1_12limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/feopp.v b/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/feopp.v
deleted file mode 100644
index 1460ae91f..000000000
--- a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e384m79x2e376m1_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/feoppDisplay.v b/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/feoppDisplay.v
deleted file mode 100644
index c704cd960..000000000
--- a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e384m79x2e376m1_12limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fesquare.c b/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fesub.v b/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fesub.v
deleted file mode 100644
index e8f033244..000000000
--- a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e384m79x2e376m1_12limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fesubDisplay.v b/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fesubDisplay.v
deleted file mode 100644
index 5404cd0d1..000000000
--- a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e384m79x2e376m1_12limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/py_interpreter.sh b/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/py_interpreter.sh
deleted file mode 100755
index 31ec19158..000000000
--- a/src/Specific/montgomery32_2e384m79x2e376m1_12limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**384 - 79*2**376 - 1' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e389m21_13limbs/CurveParameters.v b/src/Specific/montgomery32_2e389m21_13limbs/CurveParameters.v
deleted file mode 100644
index 53d697165..000000000
--- a/src/Specific/montgomery32_2e389m21_13limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^389 - 21
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 13%nat;
- base := 32;
- bitwidth := 32;
- s := 2^389;
- c := [(1, 21)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e389m21_13limbs/Synthesis.v b/src/Specific/montgomery32_2e389m21_13limbs/Synthesis.v
deleted file mode 100644
index 0068407b6..000000000
--- a/src/Specific/montgomery32_2e389m21_13limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e389m21_13limbs.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/montgomery32_2e389m21_13limbs/compiler.sh b/src/Specific/montgomery32_2e389m21_13limbs/compiler.sh
deleted file mode 100755
index 8c6f0837f..000000000
--- a/src/Specific/montgomery32_2e389m21_13limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='49' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<389) - 21' "$@"
diff --git a/src/Specific/montgomery32_2e389m21_13limbs/compilerxx.sh b/src/Specific/montgomery32_2e389m21_13limbs/compilerxx.sh
deleted file mode 100755
index 2cd025005..000000000
--- a/src/Specific/montgomery32_2e389m21_13limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='49' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<389) - 21' "$@"
diff --git a/src/Specific/montgomery32_2e389m21_13limbs/feadd.c b/src/Specific/montgomery32_2e389m21_13limbs/feadd.c
deleted file mode 100644
index ac55d2332..000000000
--- a/src/Specific/montgomery32_2e389m21_13limbs/feadd.c
+++ /dev/null
@@ -1,82 +0,0 @@
-static void feadd(uint32_t out[13], const uint32_t in1[13], const uint32_t in2[13]) {
- { const uint32_t x26 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x50 = in2[12];
- { const uint32_t x51 = in2[11];
- { const uint32_t x49 = in2[10];
- { const uint32_t x47 = in2[9];
- { const uint32_t x45 = in2[8];
- { const uint32_t x43 = in2[7];
- { const uint32_t x41 = in2[6];
- { const uint32_t x39 = in2[5];
- { const uint32_t x37 = in2[4];
- { const uint32_t x35 = in2[3];
- { const uint32_t x33 = in2[2];
- { const uint32_t x31 = in2[1];
- { const uint32_t x29 = in2[0];
- { uint32_t x53; uint8_t x54 = _addcarryx_u32(0x0, x5, x29, &x53);
- { uint32_t x56; uint8_t x57 = _addcarryx_u32(x54, x7, x31, &x56);
- { uint32_t x59; uint8_t x60 = _addcarryx_u32(x57, x9, x33, &x59);
- { uint32_t x62; uint8_t x63 = _addcarryx_u32(x60, x11, x35, &x62);
- { uint32_t x65; uint8_t x66 = _addcarryx_u32(x63, x13, x37, &x65);
- { uint32_t x68; uint8_t x69 = _addcarryx_u32(x66, x15, x39, &x68);
- { uint32_t x71; uint8_t x72 = _addcarryx_u32(x69, x17, x41, &x71);
- { uint32_t x74; uint8_t x75 = _addcarryx_u32(x72, x19, x43, &x74);
- { uint32_t x77; uint8_t x78 = _addcarryx_u32(x75, x21, x45, &x77);
- { uint32_t x80; uint8_t x81 = _addcarryx_u32(x78, x23, x47, &x80);
- { uint32_t x83; uint8_t x84 = _addcarryx_u32(x81, x25, x49, &x83);
- { uint32_t x86; uint8_t x87 = _addcarryx_u32(x84, x27, x51, &x86);
- { uint32_t x89; uint8_t x90 = _addcarryx_u32(x87, x26, x50, &x89);
- { uint32_t x92; uint8_t x93 = _subborrow_u32(0x0, x53, 0xffffffeb, &x92);
- { uint32_t x95; uint8_t x96 = _subborrow_u32(x93, x56, 0xffffffff, &x95);
- { uint32_t x98; uint8_t x99 = _subborrow_u32(x96, x59, 0xffffffff, &x98);
- { uint32_t x101; uint8_t x102 = _subborrow_u32(x99, x62, 0xffffffff, &x101);
- { uint32_t x104; uint8_t x105 = _subborrow_u32(x102, x65, 0xffffffff, &x104);
- { uint32_t x107; uint8_t x108 = _subborrow_u32(x105, x68, 0xffffffff, &x107);
- { uint32_t x110; uint8_t x111 = _subborrow_u32(x108, x71, 0xffffffff, &x110);
- { uint32_t x113; uint8_t x114 = _subborrow_u32(x111, x74, 0xffffffff, &x113);
- { uint32_t x116; uint8_t x117 = _subborrow_u32(x114, x77, 0xffffffff, &x116);
- { uint32_t x119; uint8_t x120 = _subborrow_u32(x117, x80, 0xffffffff, &x119);
- { uint32_t x122; uint8_t x123 = _subborrow_u32(x120, x83, 0xffffffff, &x122);
- { uint32_t x125; uint8_t x126 = _subborrow_u32(x123, x86, 0xffffffff, &x125);
- { uint32_t x128; uint8_t x129 = _subborrow_u32(x126, x89, 0x1f, &x128);
- { uint32_t _; uint8_t x132 = _subborrow_u32(x129, x90, 0x0, &_);
- { uint32_t x133 = cmovznz32(x132, x128, x89);
- { uint32_t x134 = cmovznz32(x132, x125, x86);
- { uint32_t x135 = cmovznz32(x132, x122, x83);
- { uint32_t x136 = cmovznz32(x132, x119, x80);
- { uint32_t x137 = cmovznz32(x132, x116, x77);
- { uint32_t x138 = cmovznz32(x132, x113, x74);
- { uint32_t x139 = cmovznz32(x132, x110, x71);
- { uint32_t x140 = cmovznz32(x132, x107, x68);
- { uint32_t x141 = cmovznz32(x132, x104, x65);
- { uint32_t x142 = cmovznz32(x132, x101, x62);
- { uint32_t x143 = cmovznz32(x132, x98, x59);
- { uint32_t x144 = cmovznz32(x132, x95, x56);
- { uint32_t x145 = cmovznz32(x132, x92, x53);
- out[0] = x145;
- out[1] = x144;
- out[2] = x143;
- out[3] = x142;
- out[4] = x141;
- out[5] = x140;
- out[6] = x139;
- out[7] = x138;
- out[8] = x137;
- out[9] = x136;
- out[10] = x135;
- out[11] = x134;
- out[12] = x133;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e389m21_13limbs/feadd.v b/src/Specific/montgomery32_2e389m21_13limbs/feadd.v
deleted file mode 100644
index d9479740e..000000000
--- a/src/Specific/montgomery32_2e389m21_13limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e389m21_13limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e389m21_13limbs/feaddDisplay.log b/src/Specific/montgomery32_2e389m21_13limbs/feaddDisplay.log
deleted file mode 100644
index c4db24a28..000000000
--- a/src/Specific/montgomery32_2e389m21_13limbs/feaddDisplay.log
+++ /dev/null
@@ -1,47 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x26, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29))%core,
- uint32_t x53, uint8_t x54 = addcarryx_u32(0x0, x5, x29);
- uint32_t x56, uint8_t x57 = addcarryx_u32(x54, x7, x31);
- uint32_t x59, uint8_t x60 = addcarryx_u32(x57, x9, x33);
- uint32_t x62, uint8_t x63 = addcarryx_u32(x60, x11, x35);
- uint32_t x65, uint8_t x66 = addcarryx_u32(x63, x13, x37);
- uint32_t x68, uint8_t x69 = addcarryx_u32(x66, x15, x39);
- uint32_t x71, uint8_t x72 = addcarryx_u32(x69, x17, x41);
- uint32_t x74, uint8_t x75 = addcarryx_u32(x72, x19, x43);
- uint32_t x77, uint8_t x78 = addcarryx_u32(x75, x21, x45);
- uint32_t x80, uint8_t x81 = addcarryx_u32(x78, x23, x47);
- uint32_t x83, uint8_t x84 = addcarryx_u32(x81, x25, x49);
- uint32_t x86, uint8_t x87 = addcarryx_u32(x84, x27, x51);
- uint32_t x89, uint8_t x90 = addcarryx_u32(x87, x26, x50);
- uint32_t x92, uint8_t x93 = subborrow_u32(0x0, x53, 0xffffffeb);
- uint32_t x95, uint8_t x96 = subborrow_u32(x93, x56, 0xffffffff);
- uint32_t x98, uint8_t x99 = subborrow_u32(x96, x59, 0xffffffff);
- uint32_t x101, uint8_t x102 = subborrow_u32(x99, x62, 0xffffffff);
- uint32_t x104, uint8_t x105 = subborrow_u32(x102, x65, 0xffffffff);
- uint32_t x107, uint8_t x108 = subborrow_u32(x105, x68, 0xffffffff);
- uint32_t x110, uint8_t x111 = subborrow_u32(x108, x71, 0xffffffff);
- uint32_t x113, uint8_t x114 = subborrow_u32(x111, x74, 0xffffffff);
- uint32_t x116, uint8_t x117 = subborrow_u32(x114, x77, 0xffffffff);
- uint32_t x119, uint8_t x120 = subborrow_u32(x117, x80, 0xffffffff);
- uint32_t x122, uint8_t x123 = subborrow_u32(x120, x83, 0xffffffff);
- uint32_t x125, uint8_t x126 = subborrow_u32(x123, x86, 0xffffffff);
- uint32_t x128, uint8_t x129 = subborrow_u32(x126, x89, 0x1f);
- uint32_t _, uint8_t x132 = subborrow_u32(x129, x90, 0x0);
- uint32_t x133 = cmovznz32(x132, x128, x89);
- uint32_t x134 = cmovznz32(x132, x125, x86);
- uint32_t x135 = cmovznz32(x132, x122, x83);
- uint32_t x136 = cmovznz32(x132, x119, x80);
- uint32_t x137 = cmovznz32(x132, x116, x77);
- uint32_t x138 = cmovznz32(x132, x113, x74);
- uint32_t x139 = cmovznz32(x132, x110, x71);
- uint32_t x140 = cmovznz32(x132, x107, x68);
- uint32_t x141 = cmovznz32(x132, x104, x65);
- uint32_t x142 = cmovznz32(x132, x101, x62);
- uint32_t x143 = cmovznz32(x132, x98, x59);
- uint32_t x144 = cmovznz32(x132, x95, x56);
- uint32_t x145 = cmovznz32(x132, x92, x53);
- return (x133, x134, x135, x136, x137, x138, x139, x140, x141, x142, x143, x144, x145))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e389m21_13limbs/feaddDisplay.v b/src/Specific/montgomery32_2e389m21_13limbs/feaddDisplay.v
deleted file mode 100644
index aa598995e..000000000
--- a/src/Specific/montgomery32_2e389m21_13limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e389m21_13limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e389m21_13limbs/femul.v b/src/Specific/montgomery32_2e389m21_13limbs/femul.v
deleted file mode 100644
index 887554302..000000000
--- a/src/Specific/montgomery32_2e389m21_13limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e389m21_13limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e389m21_13limbs/femulDisplay.v b/src/Specific/montgomery32_2e389m21_13limbs/femulDisplay.v
deleted file mode 100644
index 16026fa0c..000000000
--- a/src/Specific/montgomery32_2e389m21_13limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e389m21_13limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e389m21_13limbs/fenz.c b/src/Specific/montgomery32_2e389m21_13limbs/fenz.c
deleted file mode 100644
index c34513bef..000000000
--- a/src/Specific/montgomery32_2e389m21_13limbs/fenz.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[13]) {
- { const uint32_t x23 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x25 = (x24 | x23);
- { uint32_t x26 = (x22 | x25);
- { uint32_t x27 = (x20 | x26);
- { uint32_t x28 = (x18 | x27);
- { uint32_t x29 = (x16 | x28);
- { uint32_t x30 = (x14 | x29);
- { uint32_t x31 = (x12 | x30);
- { uint32_t x32 = (x10 | x31);
- { uint32_t x33 = (x8 | x32);
- { uint32_t x34 = (x6 | x33);
- { uint32_t x35 = (x4 | x34);
- { uint32_t x36 = (x2 | x35);
- out[0] = x36;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e389m21_13limbs/fenz.v b/src/Specific/montgomery32_2e389m21_13limbs/fenz.v
deleted file mode 100644
index 0166bee91..000000000
--- a/src/Specific/montgomery32_2e389m21_13limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e389m21_13limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e389m21_13limbs/fenzDisplay.log b/src/Specific/montgomery32_2e389m21_13limbs/fenzDisplay.log
deleted file mode 100644
index be61ce3d7..000000000
--- a/src/Specific/montgomery32_2e389m21_13limbs/fenzDisplay.log
+++ /dev/null
@@ -1,19 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x23, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x25 = (x24 | x23);
- uint32_t x26 = (x22 | x25);
- uint32_t x27 = (x20 | x26);
- uint32_t x28 = (x18 | x27);
- uint32_t x29 = (x16 | x28);
- uint32_t x30 = (x14 | x29);
- uint32_t x31 = (x12 | x30);
- uint32_t x32 = (x10 | x31);
- uint32_t x33 = (x8 | x32);
- uint32_t x34 = (x6 | x33);
- uint32_t x35 = (x4 | x34);
- uint32_t x36 = (x2 | x35);
- return x36)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e389m21_13limbs/fenzDisplay.v b/src/Specific/montgomery32_2e389m21_13limbs/fenzDisplay.v
deleted file mode 100644
index e8e99f72b..000000000
--- a/src/Specific/montgomery32_2e389m21_13limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e389m21_13limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e389m21_13limbs/feopp.v b/src/Specific/montgomery32_2e389m21_13limbs/feopp.v
deleted file mode 100644
index fa4c4c021..000000000
--- a/src/Specific/montgomery32_2e389m21_13limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e389m21_13limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e389m21_13limbs/feoppDisplay.v b/src/Specific/montgomery32_2e389m21_13limbs/feoppDisplay.v
deleted file mode 100644
index 243156a0d..000000000
--- a/src/Specific/montgomery32_2e389m21_13limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e389m21_13limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e389m21_13limbs/fesquare.c b/src/Specific/montgomery32_2e389m21_13limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e389m21_13limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e389m21_13limbs/fesub.v b/src/Specific/montgomery32_2e389m21_13limbs/fesub.v
deleted file mode 100644
index a8b402e4f..000000000
--- a/src/Specific/montgomery32_2e389m21_13limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e389m21_13limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e389m21_13limbs/fesubDisplay.v b/src/Specific/montgomery32_2e389m21_13limbs/fesubDisplay.v
deleted file mode 100644
index 5d4461558..000000000
--- a/src/Specific/montgomery32_2e389m21_13limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e389m21_13limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e389m21_13limbs/py_interpreter.sh b/src/Specific/montgomery32_2e389m21_13limbs/py_interpreter.sh
deleted file mode 100755
index 43b54b0d6..000000000
--- a/src/Specific/montgomery32_2e389m21_13limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**389 - 21' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e401m31_13limbs/CurveParameters.v b/src/Specific/montgomery32_2e401m31_13limbs/CurveParameters.v
deleted file mode 100644
index 131704a25..000000000
--- a/src/Specific/montgomery32_2e401m31_13limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^401 - 31
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 13%nat;
- base := 32;
- bitwidth := 32;
- s := 2^401;
- c := [(1, 31)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e401m31_13limbs/Synthesis.v b/src/Specific/montgomery32_2e401m31_13limbs/Synthesis.v
deleted file mode 100644
index 16804ee29..000000000
--- a/src/Specific/montgomery32_2e401m31_13limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e401m31_13limbs.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/montgomery32_2e401m31_13limbs/compiler.sh b/src/Specific/montgomery32_2e401m31_13limbs/compiler.sh
deleted file mode 100755
index 07720bf51..000000000
--- a/src/Specific/montgomery32_2e401m31_13limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='51' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<401) - 31' "$@"
diff --git a/src/Specific/montgomery32_2e401m31_13limbs/compilerxx.sh b/src/Specific/montgomery32_2e401m31_13limbs/compilerxx.sh
deleted file mode 100755
index b21ac5157..000000000
--- a/src/Specific/montgomery32_2e401m31_13limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='51' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<401) - 31' "$@"
diff --git a/src/Specific/montgomery32_2e401m31_13limbs/feadd.c b/src/Specific/montgomery32_2e401m31_13limbs/feadd.c
deleted file mode 100644
index 2a35ceda2..000000000
--- a/src/Specific/montgomery32_2e401m31_13limbs/feadd.c
+++ /dev/null
@@ -1,82 +0,0 @@
-static void feadd(uint32_t out[13], const uint32_t in1[13], const uint32_t in2[13]) {
- { const uint32_t x26 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x50 = in2[12];
- { const uint32_t x51 = in2[11];
- { const uint32_t x49 = in2[10];
- { const uint32_t x47 = in2[9];
- { const uint32_t x45 = in2[8];
- { const uint32_t x43 = in2[7];
- { const uint32_t x41 = in2[6];
- { const uint32_t x39 = in2[5];
- { const uint32_t x37 = in2[4];
- { const uint32_t x35 = in2[3];
- { const uint32_t x33 = in2[2];
- { const uint32_t x31 = in2[1];
- { const uint32_t x29 = in2[0];
- { uint32_t x53; uint8_t x54 = _addcarryx_u32(0x0, x5, x29, &x53);
- { uint32_t x56; uint8_t x57 = _addcarryx_u32(x54, x7, x31, &x56);
- { uint32_t x59; uint8_t x60 = _addcarryx_u32(x57, x9, x33, &x59);
- { uint32_t x62; uint8_t x63 = _addcarryx_u32(x60, x11, x35, &x62);
- { uint32_t x65; uint8_t x66 = _addcarryx_u32(x63, x13, x37, &x65);
- { uint32_t x68; uint8_t x69 = _addcarryx_u32(x66, x15, x39, &x68);
- { uint32_t x71; uint8_t x72 = _addcarryx_u32(x69, x17, x41, &x71);
- { uint32_t x74; uint8_t x75 = _addcarryx_u32(x72, x19, x43, &x74);
- { uint32_t x77; uint8_t x78 = _addcarryx_u32(x75, x21, x45, &x77);
- { uint32_t x80; uint8_t x81 = _addcarryx_u32(x78, x23, x47, &x80);
- { uint32_t x83; uint8_t x84 = _addcarryx_u32(x81, x25, x49, &x83);
- { uint32_t x86; uint8_t x87 = _addcarryx_u32(x84, x27, x51, &x86);
- { uint32_t x89; uint8_t x90 = _addcarryx_u32(x87, x26, x50, &x89);
- { uint32_t x92; uint8_t x93 = _subborrow_u32(0x0, x53, 0xffffffe1, &x92);
- { uint32_t x95; uint8_t x96 = _subborrow_u32(x93, x56, 0xffffffff, &x95);
- { uint32_t x98; uint8_t x99 = _subborrow_u32(x96, x59, 0xffffffff, &x98);
- { uint32_t x101; uint8_t x102 = _subborrow_u32(x99, x62, 0xffffffff, &x101);
- { uint32_t x104; uint8_t x105 = _subborrow_u32(x102, x65, 0xffffffff, &x104);
- { uint32_t x107; uint8_t x108 = _subborrow_u32(x105, x68, 0xffffffff, &x107);
- { uint32_t x110; uint8_t x111 = _subborrow_u32(x108, x71, 0xffffffff, &x110);
- { uint32_t x113; uint8_t x114 = _subborrow_u32(x111, x74, 0xffffffff, &x113);
- { uint32_t x116; uint8_t x117 = _subborrow_u32(x114, x77, 0xffffffff, &x116);
- { uint32_t x119; uint8_t x120 = _subborrow_u32(x117, x80, 0xffffffff, &x119);
- { uint32_t x122; uint8_t x123 = _subborrow_u32(x120, x83, 0xffffffff, &x122);
- { uint32_t x125; uint8_t x126 = _subborrow_u32(x123, x86, 0xffffffff, &x125);
- { uint32_t x128; uint8_t x129 = _subborrow_u32(x126, x89, 0x1ffff, &x128);
- { uint32_t _; uint8_t x132 = _subborrow_u32(x129, x90, 0x0, &_);
- { uint32_t x133 = cmovznz32(x132, x128, x89);
- { uint32_t x134 = cmovznz32(x132, x125, x86);
- { uint32_t x135 = cmovznz32(x132, x122, x83);
- { uint32_t x136 = cmovznz32(x132, x119, x80);
- { uint32_t x137 = cmovznz32(x132, x116, x77);
- { uint32_t x138 = cmovznz32(x132, x113, x74);
- { uint32_t x139 = cmovznz32(x132, x110, x71);
- { uint32_t x140 = cmovznz32(x132, x107, x68);
- { uint32_t x141 = cmovznz32(x132, x104, x65);
- { uint32_t x142 = cmovznz32(x132, x101, x62);
- { uint32_t x143 = cmovznz32(x132, x98, x59);
- { uint32_t x144 = cmovznz32(x132, x95, x56);
- { uint32_t x145 = cmovznz32(x132, x92, x53);
- out[0] = x145;
- out[1] = x144;
- out[2] = x143;
- out[3] = x142;
- out[4] = x141;
- out[5] = x140;
- out[6] = x139;
- out[7] = x138;
- out[8] = x137;
- out[9] = x136;
- out[10] = x135;
- out[11] = x134;
- out[12] = x133;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e401m31_13limbs/feadd.v b/src/Specific/montgomery32_2e401m31_13limbs/feadd.v
deleted file mode 100644
index 4db0e9e9a..000000000
--- a/src/Specific/montgomery32_2e401m31_13limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e401m31_13limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e401m31_13limbs/feaddDisplay.log b/src/Specific/montgomery32_2e401m31_13limbs/feaddDisplay.log
deleted file mode 100644
index 24b1f0bba..000000000
--- a/src/Specific/montgomery32_2e401m31_13limbs/feaddDisplay.log
+++ /dev/null
@@ -1,47 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x26, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29))%core,
- uint32_t x53, uint8_t x54 = addcarryx_u32(0x0, x5, x29);
- uint32_t x56, uint8_t x57 = addcarryx_u32(x54, x7, x31);
- uint32_t x59, uint8_t x60 = addcarryx_u32(x57, x9, x33);
- uint32_t x62, uint8_t x63 = addcarryx_u32(x60, x11, x35);
- uint32_t x65, uint8_t x66 = addcarryx_u32(x63, x13, x37);
- uint32_t x68, uint8_t x69 = addcarryx_u32(x66, x15, x39);
- uint32_t x71, uint8_t x72 = addcarryx_u32(x69, x17, x41);
- uint32_t x74, uint8_t x75 = addcarryx_u32(x72, x19, x43);
- uint32_t x77, uint8_t x78 = addcarryx_u32(x75, x21, x45);
- uint32_t x80, uint8_t x81 = addcarryx_u32(x78, x23, x47);
- uint32_t x83, uint8_t x84 = addcarryx_u32(x81, x25, x49);
- uint32_t x86, uint8_t x87 = addcarryx_u32(x84, x27, x51);
- uint32_t x89, uint8_t x90 = addcarryx_u32(x87, x26, x50);
- uint32_t x92, uint8_t x93 = subborrow_u32(0x0, x53, 0xffffffe1);
- uint32_t x95, uint8_t x96 = subborrow_u32(x93, x56, 0xffffffff);
- uint32_t x98, uint8_t x99 = subborrow_u32(x96, x59, 0xffffffff);
- uint32_t x101, uint8_t x102 = subborrow_u32(x99, x62, 0xffffffff);
- uint32_t x104, uint8_t x105 = subborrow_u32(x102, x65, 0xffffffff);
- uint32_t x107, uint8_t x108 = subborrow_u32(x105, x68, 0xffffffff);
- uint32_t x110, uint8_t x111 = subborrow_u32(x108, x71, 0xffffffff);
- uint32_t x113, uint8_t x114 = subborrow_u32(x111, x74, 0xffffffff);
- uint32_t x116, uint8_t x117 = subborrow_u32(x114, x77, 0xffffffff);
- uint32_t x119, uint8_t x120 = subborrow_u32(x117, x80, 0xffffffff);
- uint32_t x122, uint8_t x123 = subborrow_u32(x120, x83, 0xffffffff);
- uint32_t x125, uint8_t x126 = subborrow_u32(x123, x86, 0xffffffff);
- uint32_t x128, uint8_t x129 = subborrow_u32(x126, x89, 0x1ffff);
- uint32_t _, uint8_t x132 = subborrow_u32(x129, x90, 0x0);
- uint32_t x133 = cmovznz32(x132, x128, x89);
- uint32_t x134 = cmovznz32(x132, x125, x86);
- uint32_t x135 = cmovznz32(x132, x122, x83);
- uint32_t x136 = cmovznz32(x132, x119, x80);
- uint32_t x137 = cmovznz32(x132, x116, x77);
- uint32_t x138 = cmovznz32(x132, x113, x74);
- uint32_t x139 = cmovznz32(x132, x110, x71);
- uint32_t x140 = cmovznz32(x132, x107, x68);
- uint32_t x141 = cmovznz32(x132, x104, x65);
- uint32_t x142 = cmovznz32(x132, x101, x62);
- uint32_t x143 = cmovznz32(x132, x98, x59);
- uint32_t x144 = cmovznz32(x132, x95, x56);
- uint32_t x145 = cmovznz32(x132, x92, x53);
- return (x133, x134, x135, x136, x137, x138, x139, x140, x141, x142, x143, x144, x145))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e401m31_13limbs/feaddDisplay.v b/src/Specific/montgomery32_2e401m31_13limbs/feaddDisplay.v
deleted file mode 100644
index 50d57b25e..000000000
--- a/src/Specific/montgomery32_2e401m31_13limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e401m31_13limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e401m31_13limbs/femul.v b/src/Specific/montgomery32_2e401m31_13limbs/femul.v
deleted file mode 100644
index fc17e0188..000000000
--- a/src/Specific/montgomery32_2e401m31_13limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e401m31_13limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e401m31_13limbs/femulDisplay.v b/src/Specific/montgomery32_2e401m31_13limbs/femulDisplay.v
deleted file mode 100644
index d5ae278e3..000000000
--- a/src/Specific/montgomery32_2e401m31_13limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e401m31_13limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e401m31_13limbs/fenz.c b/src/Specific/montgomery32_2e401m31_13limbs/fenz.c
deleted file mode 100644
index c34513bef..000000000
--- a/src/Specific/montgomery32_2e401m31_13limbs/fenz.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[13]) {
- { const uint32_t x23 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x25 = (x24 | x23);
- { uint32_t x26 = (x22 | x25);
- { uint32_t x27 = (x20 | x26);
- { uint32_t x28 = (x18 | x27);
- { uint32_t x29 = (x16 | x28);
- { uint32_t x30 = (x14 | x29);
- { uint32_t x31 = (x12 | x30);
- { uint32_t x32 = (x10 | x31);
- { uint32_t x33 = (x8 | x32);
- { uint32_t x34 = (x6 | x33);
- { uint32_t x35 = (x4 | x34);
- { uint32_t x36 = (x2 | x35);
- out[0] = x36;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e401m31_13limbs/fenz.v b/src/Specific/montgomery32_2e401m31_13limbs/fenz.v
deleted file mode 100644
index 80bac23a9..000000000
--- a/src/Specific/montgomery32_2e401m31_13limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e401m31_13limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e401m31_13limbs/fenzDisplay.log b/src/Specific/montgomery32_2e401m31_13limbs/fenzDisplay.log
deleted file mode 100644
index be61ce3d7..000000000
--- a/src/Specific/montgomery32_2e401m31_13limbs/fenzDisplay.log
+++ /dev/null
@@ -1,19 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x23, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x25 = (x24 | x23);
- uint32_t x26 = (x22 | x25);
- uint32_t x27 = (x20 | x26);
- uint32_t x28 = (x18 | x27);
- uint32_t x29 = (x16 | x28);
- uint32_t x30 = (x14 | x29);
- uint32_t x31 = (x12 | x30);
- uint32_t x32 = (x10 | x31);
- uint32_t x33 = (x8 | x32);
- uint32_t x34 = (x6 | x33);
- uint32_t x35 = (x4 | x34);
- uint32_t x36 = (x2 | x35);
- return x36)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e401m31_13limbs/fenzDisplay.v b/src/Specific/montgomery32_2e401m31_13limbs/fenzDisplay.v
deleted file mode 100644
index b7e92c310..000000000
--- a/src/Specific/montgomery32_2e401m31_13limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e401m31_13limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e401m31_13limbs/feopp.v b/src/Specific/montgomery32_2e401m31_13limbs/feopp.v
deleted file mode 100644
index 3ac1535d0..000000000
--- a/src/Specific/montgomery32_2e401m31_13limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e401m31_13limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e401m31_13limbs/feoppDisplay.v b/src/Specific/montgomery32_2e401m31_13limbs/feoppDisplay.v
deleted file mode 100644
index fe1ecf79a..000000000
--- a/src/Specific/montgomery32_2e401m31_13limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e401m31_13limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e401m31_13limbs/fesquare.c b/src/Specific/montgomery32_2e401m31_13limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e401m31_13limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e401m31_13limbs/fesub.v b/src/Specific/montgomery32_2e401m31_13limbs/fesub.v
deleted file mode 100644
index 7d2b473b8..000000000
--- a/src/Specific/montgomery32_2e401m31_13limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e401m31_13limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e401m31_13limbs/fesubDisplay.v b/src/Specific/montgomery32_2e401m31_13limbs/fesubDisplay.v
deleted file mode 100644
index f76d6eb11..000000000
--- a/src/Specific/montgomery32_2e401m31_13limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e401m31_13limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e401m31_13limbs/py_interpreter.sh b/src/Specific/montgomery32_2e401m31_13limbs/py_interpreter.sh
deleted file mode 100755
index 364b0f1e4..000000000
--- a/src/Specific/montgomery32_2e401m31_13limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**401 - 31' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e413m21_13limbs/CurveParameters.v b/src/Specific/montgomery32_2e413m21_13limbs/CurveParameters.v
deleted file mode 100644
index dade6d2e9..000000000
--- a/src/Specific/montgomery32_2e413m21_13limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^413 - 21
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 13%nat;
- base := 32;
- bitwidth := 32;
- s := 2^413;
- c := [(1, 21)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e413m21_13limbs/Synthesis.v b/src/Specific/montgomery32_2e413m21_13limbs/Synthesis.v
deleted file mode 100644
index c1673e6d4..000000000
--- a/src/Specific/montgomery32_2e413m21_13limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e413m21_13limbs.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/montgomery32_2e413m21_13limbs/compiler.sh b/src/Specific/montgomery32_2e413m21_13limbs/compiler.sh
deleted file mode 100755
index 943b48bc3..000000000
--- a/src/Specific/montgomery32_2e413m21_13limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<413) - 21' "$@"
diff --git a/src/Specific/montgomery32_2e413m21_13limbs/compilerxx.sh b/src/Specific/montgomery32_2e413m21_13limbs/compilerxx.sh
deleted file mode 100755
index 9370e0a9d..000000000
--- a/src/Specific/montgomery32_2e413m21_13limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<413) - 21' "$@"
diff --git a/src/Specific/montgomery32_2e413m21_13limbs/feadd.c b/src/Specific/montgomery32_2e413m21_13limbs/feadd.c
deleted file mode 100644
index 23d76ab4d..000000000
--- a/src/Specific/montgomery32_2e413m21_13limbs/feadd.c
+++ /dev/null
@@ -1,82 +0,0 @@
-static void feadd(uint32_t out[13], const uint32_t in1[13], const uint32_t in2[13]) {
- { const uint32_t x26 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x50 = in2[12];
- { const uint32_t x51 = in2[11];
- { const uint32_t x49 = in2[10];
- { const uint32_t x47 = in2[9];
- { const uint32_t x45 = in2[8];
- { const uint32_t x43 = in2[7];
- { const uint32_t x41 = in2[6];
- { const uint32_t x39 = in2[5];
- { const uint32_t x37 = in2[4];
- { const uint32_t x35 = in2[3];
- { const uint32_t x33 = in2[2];
- { const uint32_t x31 = in2[1];
- { const uint32_t x29 = in2[0];
- { uint32_t x53; uint8_t x54 = _addcarryx_u32(0x0, x5, x29, &x53);
- { uint32_t x56; uint8_t x57 = _addcarryx_u32(x54, x7, x31, &x56);
- { uint32_t x59; uint8_t x60 = _addcarryx_u32(x57, x9, x33, &x59);
- { uint32_t x62; uint8_t x63 = _addcarryx_u32(x60, x11, x35, &x62);
- { uint32_t x65; uint8_t x66 = _addcarryx_u32(x63, x13, x37, &x65);
- { uint32_t x68; uint8_t x69 = _addcarryx_u32(x66, x15, x39, &x68);
- { uint32_t x71; uint8_t x72 = _addcarryx_u32(x69, x17, x41, &x71);
- { uint32_t x74; uint8_t x75 = _addcarryx_u32(x72, x19, x43, &x74);
- { uint32_t x77; uint8_t x78 = _addcarryx_u32(x75, x21, x45, &x77);
- { uint32_t x80; uint8_t x81 = _addcarryx_u32(x78, x23, x47, &x80);
- { uint32_t x83; uint8_t x84 = _addcarryx_u32(x81, x25, x49, &x83);
- { uint32_t x86; uint8_t x87 = _addcarryx_u32(x84, x27, x51, &x86);
- { uint32_t x89; uint8_t x90 = _addcarryx_u32(x87, x26, x50, &x89);
- { uint32_t x92; uint8_t x93 = _subborrow_u32(0x0, x53, 0xffffffeb, &x92);
- { uint32_t x95; uint8_t x96 = _subborrow_u32(x93, x56, 0xffffffff, &x95);
- { uint32_t x98; uint8_t x99 = _subborrow_u32(x96, x59, 0xffffffff, &x98);
- { uint32_t x101; uint8_t x102 = _subborrow_u32(x99, x62, 0xffffffff, &x101);
- { uint32_t x104; uint8_t x105 = _subborrow_u32(x102, x65, 0xffffffff, &x104);
- { uint32_t x107; uint8_t x108 = _subborrow_u32(x105, x68, 0xffffffff, &x107);
- { uint32_t x110; uint8_t x111 = _subborrow_u32(x108, x71, 0xffffffff, &x110);
- { uint32_t x113; uint8_t x114 = _subborrow_u32(x111, x74, 0xffffffff, &x113);
- { uint32_t x116; uint8_t x117 = _subborrow_u32(x114, x77, 0xffffffff, &x116);
- { uint32_t x119; uint8_t x120 = _subborrow_u32(x117, x80, 0xffffffff, &x119);
- { uint32_t x122; uint8_t x123 = _subborrow_u32(x120, x83, 0xffffffff, &x122);
- { uint32_t x125; uint8_t x126 = _subborrow_u32(x123, x86, 0xffffffff, &x125);
- { uint32_t x128; uint8_t x129 = _subborrow_u32(x126, x89, 0x1fffffff, &x128);
- { uint32_t _; uint8_t x132 = _subborrow_u32(x129, x90, 0x0, &_);
- { uint32_t x133 = cmovznz32(x132, x128, x89);
- { uint32_t x134 = cmovznz32(x132, x125, x86);
- { uint32_t x135 = cmovznz32(x132, x122, x83);
- { uint32_t x136 = cmovznz32(x132, x119, x80);
- { uint32_t x137 = cmovznz32(x132, x116, x77);
- { uint32_t x138 = cmovznz32(x132, x113, x74);
- { uint32_t x139 = cmovznz32(x132, x110, x71);
- { uint32_t x140 = cmovznz32(x132, x107, x68);
- { uint32_t x141 = cmovznz32(x132, x104, x65);
- { uint32_t x142 = cmovznz32(x132, x101, x62);
- { uint32_t x143 = cmovznz32(x132, x98, x59);
- { uint32_t x144 = cmovznz32(x132, x95, x56);
- { uint32_t x145 = cmovznz32(x132, x92, x53);
- out[0] = x145;
- out[1] = x144;
- out[2] = x143;
- out[3] = x142;
- out[4] = x141;
- out[5] = x140;
- out[6] = x139;
- out[7] = x138;
- out[8] = x137;
- out[9] = x136;
- out[10] = x135;
- out[11] = x134;
- out[12] = x133;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e413m21_13limbs/feadd.v b/src/Specific/montgomery32_2e413m21_13limbs/feadd.v
deleted file mode 100644
index 125acbfbc..000000000
--- a/src/Specific/montgomery32_2e413m21_13limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e413m21_13limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e413m21_13limbs/feaddDisplay.log b/src/Specific/montgomery32_2e413m21_13limbs/feaddDisplay.log
deleted file mode 100644
index 05c4f5ed1..000000000
--- a/src/Specific/montgomery32_2e413m21_13limbs/feaddDisplay.log
+++ /dev/null
@@ -1,47 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x26, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29))%core,
- uint32_t x53, uint8_t x54 = addcarryx_u32(0x0, x5, x29);
- uint32_t x56, uint8_t x57 = addcarryx_u32(x54, x7, x31);
- uint32_t x59, uint8_t x60 = addcarryx_u32(x57, x9, x33);
- uint32_t x62, uint8_t x63 = addcarryx_u32(x60, x11, x35);
- uint32_t x65, uint8_t x66 = addcarryx_u32(x63, x13, x37);
- uint32_t x68, uint8_t x69 = addcarryx_u32(x66, x15, x39);
- uint32_t x71, uint8_t x72 = addcarryx_u32(x69, x17, x41);
- uint32_t x74, uint8_t x75 = addcarryx_u32(x72, x19, x43);
- uint32_t x77, uint8_t x78 = addcarryx_u32(x75, x21, x45);
- uint32_t x80, uint8_t x81 = addcarryx_u32(x78, x23, x47);
- uint32_t x83, uint8_t x84 = addcarryx_u32(x81, x25, x49);
- uint32_t x86, uint8_t x87 = addcarryx_u32(x84, x27, x51);
- uint32_t x89, uint8_t x90 = addcarryx_u32(x87, x26, x50);
- uint32_t x92, uint8_t x93 = subborrow_u32(0x0, x53, 0xffffffeb);
- uint32_t x95, uint8_t x96 = subborrow_u32(x93, x56, 0xffffffff);
- uint32_t x98, uint8_t x99 = subborrow_u32(x96, x59, 0xffffffff);
- uint32_t x101, uint8_t x102 = subborrow_u32(x99, x62, 0xffffffff);
- uint32_t x104, uint8_t x105 = subborrow_u32(x102, x65, 0xffffffff);
- uint32_t x107, uint8_t x108 = subborrow_u32(x105, x68, 0xffffffff);
- uint32_t x110, uint8_t x111 = subborrow_u32(x108, x71, 0xffffffff);
- uint32_t x113, uint8_t x114 = subborrow_u32(x111, x74, 0xffffffff);
- uint32_t x116, uint8_t x117 = subborrow_u32(x114, x77, 0xffffffff);
- uint32_t x119, uint8_t x120 = subborrow_u32(x117, x80, 0xffffffff);
- uint32_t x122, uint8_t x123 = subborrow_u32(x120, x83, 0xffffffff);
- uint32_t x125, uint8_t x126 = subborrow_u32(x123, x86, 0xffffffff);
- uint32_t x128, uint8_t x129 = subborrow_u32(x126, x89, 0x1fffffff);
- uint32_t _, uint8_t x132 = subborrow_u32(x129, x90, 0x0);
- uint32_t x133 = cmovznz32(x132, x128, x89);
- uint32_t x134 = cmovznz32(x132, x125, x86);
- uint32_t x135 = cmovznz32(x132, x122, x83);
- uint32_t x136 = cmovznz32(x132, x119, x80);
- uint32_t x137 = cmovznz32(x132, x116, x77);
- uint32_t x138 = cmovznz32(x132, x113, x74);
- uint32_t x139 = cmovznz32(x132, x110, x71);
- uint32_t x140 = cmovznz32(x132, x107, x68);
- uint32_t x141 = cmovznz32(x132, x104, x65);
- uint32_t x142 = cmovznz32(x132, x101, x62);
- uint32_t x143 = cmovznz32(x132, x98, x59);
- uint32_t x144 = cmovznz32(x132, x95, x56);
- uint32_t x145 = cmovznz32(x132, x92, x53);
- return (x133, x134, x135, x136, x137, x138, x139, x140, x141, x142, x143, x144, x145))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e413m21_13limbs/feaddDisplay.v b/src/Specific/montgomery32_2e413m21_13limbs/feaddDisplay.v
deleted file mode 100644
index f162dfb47..000000000
--- a/src/Specific/montgomery32_2e413m21_13limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e413m21_13limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e413m21_13limbs/femul.v b/src/Specific/montgomery32_2e413m21_13limbs/femul.v
deleted file mode 100644
index 41c224f99..000000000
--- a/src/Specific/montgomery32_2e413m21_13limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e413m21_13limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e413m21_13limbs/femulDisplay.v b/src/Specific/montgomery32_2e413m21_13limbs/femulDisplay.v
deleted file mode 100644
index 2fa59e5b2..000000000
--- a/src/Specific/montgomery32_2e413m21_13limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e413m21_13limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e413m21_13limbs/fenz.c b/src/Specific/montgomery32_2e413m21_13limbs/fenz.c
deleted file mode 100644
index c34513bef..000000000
--- a/src/Specific/montgomery32_2e413m21_13limbs/fenz.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[13]) {
- { const uint32_t x23 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x25 = (x24 | x23);
- { uint32_t x26 = (x22 | x25);
- { uint32_t x27 = (x20 | x26);
- { uint32_t x28 = (x18 | x27);
- { uint32_t x29 = (x16 | x28);
- { uint32_t x30 = (x14 | x29);
- { uint32_t x31 = (x12 | x30);
- { uint32_t x32 = (x10 | x31);
- { uint32_t x33 = (x8 | x32);
- { uint32_t x34 = (x6 | x33);
- { uint32_t x35 = (x4 | x34);
- { uint32_t x36 = (x2 | x35);
- out[0] = x36;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e413m21_13limbs/fenz.v b/src/Specific/montgomery32_2e413m21_13limbs/fenz.v
deleted file mode 100644
index d80e3b304..000000000
--- a/src/Specific/montgomery32_2e413m21_13limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e413m21_13limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e413m21_13limbs/fenzDisplay.log b/src/Specific/montgomery32_2e413m21_13limbs/fenzDisplay.log
deleted file mode 100644
index be61ce3d7..000000000
--- a/src/Specific/montgomery32_2e413m21_13limbs/fenzDisplay.log
+++ /dev/null
@@ -1,19 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x23, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x25 = (x24 | x23);
- uint32_t x26 = (x22 | x25);
- uint32_t x27 = (x20 | x26);
- uint32_t x28 = (x18 | x27);
- uint32_t x29 = (x16 | x28);
- uint32_t x30 = (x14 | x29);
- uint32_t x31 = (x12 | x30);
- uint32_t x32 = (x10 | x31);
- uint32_t x33 = (x8 | x32);
- uint32_t x34 = (x6 | x33);
- uint32_t x35 = (x4 | x34);
- uint32_t x36 = (x2 | x35);
- return x36)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e413m21_13limbs/fenzDisplay.v b/src/Specific/montgomery32_2e413m21_13limbs/fenzDisplay.v
deleted file mode 100644
index 06cbfbc85..000000000
--- a/src/Specific/montgomery32_2e413m21_13limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e413m21_13limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e413m21_13limbs/feopp.v b/src/Specific/montgomery32_2e413m21_13limbs/feopp.v
deleted file mode 100644
index 7238c94fb..000000000
--- a/src/Specific/montgomery32_2e413m21_13limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e413m21_13limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e413m21_13limbs/feoppDisplay.v b/src/Specific/montgomery32_2e413m21_13limbs/feoppDisplay.v
deleted file mode 100644
index 5206bd23b..000000000
--- a/src/Specific/montgomery32_2e413m21_13limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e413m21_13limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e413m21_13limbs/fesquare.c b/src/Specific/montgomery32_2e413m21_13limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e413m21_13limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e413m21_13limbs/fesub.v b/src/Specific/montgomery32_2e413m21_13limbs/fesub.v
deleted file mode 100644
index 9e0c888dd..000000000
--- a/src/Specific/montgomery32_2e413m21_13limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e413m21_13limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e413m21_13limbs/fesubDisplay.v b/src/Specific/montgomery32_2e413m21_13limbs/fesubDisplay.v
deleted file mode 100644
index 71aad29c1..000000000
--- a/src/Specific/montgomery32_2e413m21_13limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e413m21_13limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e413m21_13limbs/py_interpreter.sh b/src/Specific/montgomery32_2e413m21_13limbs/py_interpreter.sh
deleted file mode 100755
index bf658bf19..000000000
--- a/src/Specific/montgomery32_2e413m21_13limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**413 - 21' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e414m17_13limbs/CurveParameters.v b/src/Specific/montgomery32_2e414m17_13limbs/CurveParameters.v
deleted file mode 100644
index cbe200a23..000000000
--- a/src/Specific/montgomery32_2e414m17_13limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^414 - 17
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 13%nat;
- base := 32;
- bitwidth := 32;
- s := 2^414;
- c := [(1, 17)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e414m17_13limbs/Synthesis.v b/src/Specific/montgomery32_2e414m17_13limbs/Synthesis.v
deleted file mode 100644
index afecde11b..000000000
--- a/src/Specific/montgomery32_2e414m17_13limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e414m17_13limbs.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/montgomery32_2e414m17_13limbs/compiler.sh b/src/Specific/montgomery32_2e414m17_13limbs/compiler.sh
deleted file mode 100755
index 531aa0d7f..000000000
--- a/src/Specific/montgomery32_2e414m17_13limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<414) - 17' "$@"
diff --git a/src/Specific/montgomery32_2e414m17_13limbs/compilerxx.sh b/src/Specific/montgomery32_2e414m17_13limbs/compilerxx.sh
deleted file mode 100755
index c3ff4697c..000000000
--- a/src/Specific/montgomery32_2e414m17_13limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<414) - 17' "$@"
diff --git a/src/Specific/montgomery32_2e414m17_13limbs/feadd.c b/src/Specific/montgomery32_2e414m17_13limbs/feadd.c
deleted file mode 100644
index 4ea3fef54..000000000
--- a/src/Specific/montgomery32_2e414m17_13limbs/feadd.c
+++ /dev/null
@@ -1,82 +0,0 @@
-static void feadd(uint32_t out[13], const uint32_t in1[13], const uint32_t in2[13]) {
- { const uint32_t x26 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x50 = in2[12];
- { const uint32_t x51 = in2[11];
- { const uint32_t x49 = in2[10];
- { const uint32_t x47 = in2[9];
- { const uint32_t x45 = in2[8];
- { const uint32_t x43 = in2[7];
- { const uint32_t x41 = in2[6];
- { const uint32_t x39 = in2[5];
- { const uint32_t x37 = in2[4];
- { const uint32_t x35 = in2[3];
- { const uint32_t x33 = in2[2];
- { const uint32_t x31 = in2[1];
- { const uint32_t x29 = in2[0];
- { uint32_t x53; uint8_t x54 = _addcarryx_u32(0x0, x5, x29, &x53);
- { uint32_t x56; uint8_t x57 = _addcarryx_u32(x54, x7, x31, &x56);
- { uint32_t x59; uint8_t x60 = _addcarryx_u32(x57, x9, x33, &x59);
- { uint32_t x62; uint8_t x63 = _addcarryx_u32(x60, x11, x35, &x62);
- { uint32_t x65; uint8_t x66 = _addcarryx_u32(x63, x13, x37, &x65);
- { uint32_t x68; uint8_t x69 = _addcarryx_u32(x66, x15, x39, &x68);
- { uint32_t x71; uint8_t x72 = _addcarryx_u32(x69, x17, x41, &x71);
- { uint32_t x74; uint8_t x75 = _addcarryx_u32(x72, x19, x43, &x74);
- { uint32_t x77; uint8_t x78 = _addcarryx_u32(x75, x21, x45, &x77);
- { uint32_t x80; uint8_t x81 = _addcarryx_u32(x78, x23, x47, &x80);
- { uint32_t x83; uint8_t x84 = _addcarryx_u32(x81, x25, x49, &x83);
- { uint32_t x86; uint8_t x87 = _addcarryx_u32(x84, x27, x51, &x86);
- { uint32_t x89; uint8_t x90 = _addcarryx_u32(x87, x26, x50, &x89);
- { uint32_t x92; uint8_t x93 = _subborrow_u32(0x0, x53, 0xffffffef, &x92);
- { uint32_t x95; uint8_t x96 = _subborrow_u32(x93, x56, 0xffffffff, &x95);
- { uint32_t x98; uint8_t x99 = _subborrow_u32(x96, x59, 0xffffffff, &x98);
- { uint32_t x101; uint8_t x102 = _subborrow_u32(x99, x62, 0xffffffff, &x101);
- { uint32_t x104; uint8_t x105 = _subborrow_u32(x102, x65, 0xffffffff, &x104);
- { uint32_t x107; uint8_t x108 = _subborrow_u32(x105, x68, 0xffffffff, &x107);
- { uint32_t x110; uint8_t x111 = _subborrow_u32(x108, x71, 0xffffffff, &x110);
- { uint32_t x113; uint8_t x114 = _subborrow_u32(x111, x74, 0xffffffff, &x113);
- { uint32_t x116; uint8_t x117 = _subborrow_u32(x114, x77, 0xffffffff, &x116);
- { uint32_t x119; uint8_t x120 = _subborrow_u32(x117, x80, 0xffffffff, &x119);
- { uint32_t x122; uint8_t x123 = _subborrow_u32(x120, x83, 0xffffffff, &x122);
- { uint32_t x125; uint8_t x126 = _subborrow_u32(x123, x86, 0xffffffff, &x125);
- { uint32_t x128; uint8_t x129 = _subborrow_u32(x126, x89, 0x3fffffff, &x128);
- { uint32_t _; uint8_t x132 = _subborrow_u32(x129, x90, 0x0, &_);
- { uint32_t x133 = cmovznz32(x132, x128, x89);
- { uint32_t x134 = cmovznz32(x132, x125, x86);
- { uint32_t x135 = cmovznz32(x132, x122, x83);
- { uint32_t x136 = cmovznz32(x132, x119, x80);
- { uint32_t x137 = cmovznz32(x132, x116, x77);
- { uint32_t x138 = cmovznz32(x132, x113, x74);
- { uint32_t x139 = cmovznz32(x132, x110, x71);
- { uint32_t x140 = cmovznz32(x132, x107, x68);
- { uint32_t x141 = cmovznz32(x132, x104, x65);
- { uint32_t x142 = cmovznz32(x132, x101, x62);
- { uint32_t x143 = cmovznz32(x132, x98, x59);
- { uint32_t x144 = cmovznz32(x132, x95, x56);
- { uint32_t x145 = cmovznz32(x132, x92, x53);
- out[0] = x145;
- out[1] = x144;
- out[2] = x143;
- out[3] = x142;
- out[4] = x141;
- out[5] = x140;
- out[6] = x139;
- out[7] = x138;
- out[8] = x137;
- out[9] = x136;
- out[10] = x135;
- out[11] = x134;
- out[12] = x133;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e414m17_13limbs/feadd.v b/src/Specific/montgomery32_2e414m17_13limbs/feadd.v
deleted file mode 100644
index 278785798..000000000
--- a/src/Specific/montgomery32_2e414m17_13limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e414m17_13limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e414m17_13limbs/feaddDisplay.log b/src/Specific/montgomery32_2e414m17_13limbs/feaddDisplay.log
deleted file mode 100644
index 0e9b0c7f7..000000000
--- a/src/Specific/montgomery32_2e414m17_13limbs/feaddDisplay.log
+++ /dev/null
@@ -1,47 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x26, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29))%core,
- uint32_t x53, uint8_t x54 = addcarryx_u32(0x0, x5, x29);
- uint32_t x56, uint8_t x57 = addcarryx_u32(x54, x7, x31);
- uint32_t x59, uint8_t x60 = addcarryx_u32(x57, x9, x33);
- uint32_t x62, uint8_t x63 = addcarryx_u32(x60, x11, x35);
- uint32_t x65, uint8_t x66 = addcarryx_u32(x63, x13, x37);
- uint32_t x68, uint8_t x69 = addcarryx_u32(x66, x15, x39);
- uint32_t x71, uint8_t x72 = addcarryx_u32(x69, x17, x41);
- uint32_t x74, uint8_t x75 = addcarryx_u32(x72, x19, x43);
- uint32_t x77, uint8_t x78 = addcarryx_u32(x75, x21, x45);
- uint32_t x80, uint8_t x81 = addcarryx_u32(x78, x23, x47);
- uint32_t x83, uint8_t x84 = addcarryx_u32(x81, x25, x49);
- uint32_t x86, uint8_t x87 = addcarryx_u32(x84, x27, x51);
- uint32_t x89, uint8_t x90 = addcarryx_u32(x87, x26, x50);
- uint32_t x92, uint8_t x93 = subborrow_u32(0x0, x53, 0xffffffef);
- uint32_t x95, uint8_t x96 = subborrow_u32(x93, x56, 0xffffffff);
- uint32_t x98, uint8_t x99 = subborrow_u32(x96, x59, 0xffffffff);
- uint32_t x101, uint8_t x102 = subborrow_u32(x99, x62, 0xffffffff);
- uint32_t x104, uint8_t x105 = subborrow_u32(x102, x65, 0xffffffff);
- uint32_t x107, uint8_t x108 = subborrow_u32(x105, x68, 0xffffffff);
- uint32_t x110, uint8_t x111 = subborrow_u32(x108, x71, 0xffffffff);
- uint32_t x113, uint8_t x114 = subborrow_u32(x111, x74, 0xffffffff);
- uint32_t x116, uint8_t x117 = subborrow_u32(x114, x77, 0xffffffff);
- uint32_t x119, uint8_t x120 = subborrow_u32(x117, x80, 0xffffffff);
- uint32_t x122, uint8_t x123 = subborrow_u32(x120, x83, 0xffffffff);
- uint32_t x125, uint8_t x126 = subborrow_u32(x123, x86, 0xffffffff);
- uint32_t x128, uint8_t x129 = subborrow_u32(x126, x89, 0x3fffffff);
- uint32_t _, uint8_t x132 = subborrow_u32(x129, x90, 0x0);
- uint32_t x133 = cmovznz32(x132, x128, x89);
- uint32_t x134 = cmovznz32(x132, x125, x86);
- uint32_t x135 = cmovznz32(x132, x122, x83);
- uint32_t x136 = cmovznz32(x132, x119, x80);
- uint32_t x137 = cmovznz32(x132, x116, x77);
- uint32_t x138 = cmovznz32(x132, x113, x74);
- uint32_t x139 = cmovznz32(x132, x110, x71);
- uint32_t x140 = cmovznz32(x132, x107, x68);
- uint32_t x141 = cmovznz32(x132, x104, x65);
- uint32_t x142 = cmovznz32(x132, x101, x62);
- uint32_t x143 = cmovznz32(x132, x98, x59);
- uint32_t x144 = cmovznz32(x132, x95, x56);
- uint32_t x145 = cmovznz32(x132, x92, x53);
- return (x133, x134, x135, x136, x137, x138, x139, x140, x141, x142, x143, x144, x145))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e414m17_13limbs/feaddDisplay.v b/src/Specific/montgomery32_2e414m17_13limbs/feaddDisplay.v
deleted file mode 100644
index 1f124bcc6..000000000
--- a/src/Specific/montgomery32_2e414m17_13limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e414m17_13limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e414m17_13limbs/femul.v b/src/Specific/montgomery32_2e414m17_13limbs/femul.v
deleted file mode 100644
index e40320788..000000000
--- a/src/Specific/montgomery32_2e414m17_13limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e414m17_13limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e414m17_13limbs/femulDisplay.v b/src/Specific/montgomery32_2e414m17_13limbs/femulDisplay.v
deleted file mode 100644
index d9d182558..000000000
--- a/src/Specific/montgomery32_2e414m17_13limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e414m17_13limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e414m17_13limbs/fenz.c b/src/Specific/montgomery32_2e414m17_13limbs/fenz.c
deleted file mode 100644
index c34513bef..000000000
--- a/src/Specific/montgomery32_2e414m17_13limbs/fenz.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[13]) {
- { const uint32_t x23 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x25 = (x24 | x23);
- { uint32_t x26 = (x22 | x25);
- { uint32_t x27 = (x20 | x26);
- { uint32_t x28 = (x18 | x27);
- { uint32_t x29 = (x16 | x28);
- { uint32_t x30 = (x14 | x29);
- { uint32_t x31 = (x12 | x30);
- { uint32_t x32 = (x10 | x31);
- { uint32_t x33 = (x8 | x32);
- { uint32_t x34 = (x6 | x33);
- { uint32_t x35 = (x4 | x34);
- { uint32_t x36 = (x2 | x35);
- out[0] = x36;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e414m17_13limbs/fenz.v b/src/Specific/montgomery32_2e414m17_13limbs/fenz.v
deleted file mode 100644
index 4a23baf4e..000000000
--- a/src/Specific/montgomery32_2e414m17_13limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e414m17_13limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e414m17_13limbs/fenzDisplay.log b/src/Specific/montgomery32_2e414m17_13limbs/fenzDisplay.log
deleted file mode 100644
index be61ce3d7..000000000
--- a/src/Specific/montgomery32_2e414m17_13limbs/fenzDisplay.log
+++ /dev/null
@@ -1,19 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x23, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x25 = (x24 | x23);
- uint32_t x26 = (x22 | x25);
- uint32_t x27 = (x20 | x26);
- uint32_t x28 = (x18 | x27);
- uint32_t x29 = (x16 | x28);
- uint32_t x30 = (x14 | x29);
- uint32_t x31 = (x12 | x30);
- uint32_t x32 = (x10 | x31);
- uint32_t x33 = (x8 | x32);
- uint32_t x34 = (x6 | x33);
- uint32_t x35 = (x4 | x34);
- uint32_t x36 = (x2 | x35);
- return x36)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e414m17_13limbs/fenzDisplay.v b/src/Specific/montgomery32_2e414m17_13limbs/fenzDisplay.v
deleted file mode 100644
index bb96b9b27..000000000
--- a/src/Specific/montgomery32_2e414m17_13limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e414m17_13limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e414m17_13limbs/feopp.v b/src/Specific/montgomery32_2e414m17_13limbs/feopp.v
deleted file mode 100644
index 3a522b003..000000000
--- a/src/Specific/montgomery32_2e414m17_13limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e414m17_13limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e414m17_13limbs/feoppDisplay.v b/src/Specific/montgomery32_2e414m17_13limbs/feoppDisplay.v
deleted file mode 100644
index 93300836c..000000000
--- a/src/Specific/montgomery32_2e414m17_13limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e414m17_13limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e414m17_13limbs/fesquare.c b/src/Specific/montgomery32_2e414m17_13limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e414m17_13limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e414m17_13limbs/fesub.v b/src/Specific/montgomery32_2e414m17_13limbs/fesub.v
deleted file mode 100644
index 017459a22..000000000
--- a/src/Specific/montgomery32_2e414m17_13limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e414m17_13limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e414m17_13limbs/fesubDisplay.v b/src/Specific/montgomery32_2e414m17_13limbs/fesubDisplay.v
deleted file mode 100644
index e0881e2f1..000000000
--- a/src/Specific/montgomery32_2e414m17_13limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e414m17_13limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e414m17_13limbs/py_interpreter.sh b/src/Specific/montgomery32_2e414m17_13limbs/py_interpreter.sh
deleted file mode 100755
index 1d0fb48f6..000000000
--- a/src/Specific/montgomery32_2e414m17_13limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**414 - 17' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e416m2e208m1_13limbs/CurveParameters.v b/src/Specific/montgomery32_2e416m2e208m1_13limbs/CurveParameters.v
deleted file mode 100644
index 199f2b1c8..000000000
--- a/src/Specific/montgomery32_2e416m2e208m1_13limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^416 - 2^208 - 1
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 13%nat;
- base := 32;
- bitwidth := 32;
- s := 2^416;
- c := [(1, 1); (2^208, 1)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e416m2e208m1_13limbs/Synthesis.v b/src/Specific/montgomery32_2e416m2e208m1_13limbs/Synthesis.v
deleted file mode 100644
index 32d191a87..000000000
--- a/src/Specific/montgomery32_2e416m2e208m1_13limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e416m2e208m1_13limbs.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/montgomery32_2e416m2e208m1_13limbs/compiler.sh b/src/Specific/montgomery32_2e416m2e208m1_13limbs/compiler.sh
deleted file mode 100755
index 3e8ec4324..000000000
--- a/src/Specific/montgomery32_2e416m2e208m1_13limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e416m2e208m1_13limbs/compilerxx.sh b/src/Specific/montgomery32_2e416m2e208m1_13limbs/compilerxx.sh
deleted file mode 100755
index 0491071d3..000000000
--- a/src/Specific/montgomery32_2e416m2e208m1_13limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e416m2e208m1_13limbs/feadd.c b/src/Specific/montgomery32_2e416m2e208m1_13limbs/feadd.c
deleted file mode 100644
index 400048e0d..000000000
--- a/src/Specific/montgomery32_2e416m2e208m1_13limbs/feadd.c
+++ /dev/null
@@ -1,82 +0,0 @@
-static void feadd(uint32_t out[13], const uint32_t in1[13], const uint32_t in2[13]) {
- { const uint32_t x26 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x50 = in2[12];
- { const uint32_t x51 = in2[11];
- { const uint32_t x49 = in2[10];
- { const uint32_t x47 = in2[9];
- { const uint32_t x45 = in2[8];
- { const uint32_t x43 = in2[7];
- { const uint32_t x41 = in2[6];
- { const uint32_t x39 = in2[5];
- { const uint32_t x37 = in2[4];
- { const uint32_t x35 = in2[3];
- { const uint32_t x33 = in2[2];
- { const uint32_t x31 = in2[1];
- { const uint32_t x29 = in2[0];
- { uint32_t x53; uint8_t x54 = _addcarryx_u32(0x0, x5, x29, &x53);
- { uint32_t x56; uint8_t x57 = _addcarryx_u32(x54, x7, x31, &x56);
- { uint32_t x59; uint8_t x60 = _addcarryx_u32(x57, x9, x33, &x59);
- { uint32_t x62; uint8_t x63 = _addcarryx_u32(x60, x11, x35, &x62);
- { uint32_t x65; uint8_t x66 = _addcarryx_u32(x63, x13, x37, &x65);
- { uint32_t x68; uint8_t x69 = _addcarryx_u32(x66, x15, x39, &x68);
- { uint32_t x71; uint8_t x72 = _addcarryx_u32(x69, x17, x41, &x71);
- { uint32_t x74; uint8_t x75 = _addcarryx_u32(x72, x19, x43, &x74);
- { uint32_t x77; uint8_t x78 = _addcarryx_u32(x75, x21, x45, &x77);
- { uint32_t x80; uint8_t x81 = _addcarryx_u32(x78, x23, x47, &x80);
- { uint32_t x83; uint8_t x84 = _addcarryx_u32(x81, x25, x49, &x83);
- { uint32_t x86; uint8_t x87 = _addcarryx_u32(x84, x27, x51, &x86);
- { uint32_t x89; uint8_t x90 = _addcarryx_u32(x87, x26, x50, &x89);
- { uint32_t x92; uint8_t x93 = _subborrow_u32(0x0, x53, 0xffffffff, &x92);
- { uint32_t x95; uint8_t x96 = _subborrow_u32(x93, x56, 0xffffffff, &x95);
- { uint32_t x98; uint8_t x99 = _subborrow_u32(x96, x59, 0xffffffff, &x98);
- { uint32_t x101; uint8_t x102 = _subborrow_u32(x99, x62, 0xffffffff, &x101);
- { uint32_t x104; uint8_t x105 = _subborrow_u32(x102, x65, 0xffffffff, &x104);
- { uint32_t x107; uint8_t x108 = _subborrow_u32(x105, x68, 0xffffffff, &x107);
- { uint32_t x110; uint8_t x111 = _subborrow_u32(x108, x71, 0xfffeffff, &x110);
- { uint32_t x113; uint8_t x114 = _subborrow_u32(x111, x74, 0xffffffff, &x113);
- { uint32_t x116; uint8_t x117 = _subborrow_u32(x114, x77, 0xffffffff, &x116);
- { uint32_t x119; uint8_t x120 = _subborrow_u32(x117, x80, 0xffffffff, &x119);
- { uint32_t x122; uint8_t x123 = _subborrow_u32(x120, x83, 0xffffffff, &x122);
- { uint32_t x125; uint8_t x126 = _subborrow_u32(x123, x86, 0xffffffff, &x125);
- { uint32_t x128; uint8_t x129 = _subborrow_u32(x126, x89, 0xffffffff, &x128);
- { uint32_t _; uint8_t x132 = _subborrow_u32(x129, x90, 0x0, &_);
- { uint32_t x133 = cmovznz32(x132, x128, x89);
- { uint32_t x134 = cmovznz32(x132, x125, x86);
- { uint32_t x135 = cmovznz32(x132, x122, x83);
- { uint32_t x136 = cmovznz32(x132, x119, x80);
- { uint32_t x137 = cmovznz32(x132, x116, x77);
- { uint32_t x138 = cmovznz32(x132, x113, x74);
- { uint32_t x139 = cmovznz32(x132, x110, x71);
- { uint32_t x140 = cmovznz32(x132, x107, x68);
- { uint32_t x141 = cmovznz32(x132, x104, x65);
- { uint32_t x142 = cmovznz32(x132, x101, x62);
- { uint32_t x143 = cmovznz32(x132, x98, x59);
- { uint32_t x144 = cmovznz32(x132, x95, x56);
- { uint32_t x145 = cmovznz32(x132, x92, x53);
- out[0] = x145;
- out[1] = x144;
- out[2] = x143;
- out[3] = x142;
- out[4] = x141;
- out[5] = x140;
- out[6] = x139;
- out[7] = x138;
- out[8] = x137;
- out[9] = x136;
- out[10] = x135;
- out[11] = x134;
- out[12] = x133;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e416m2e208m1_13limbs/feadd.v b/src/Specific/montgomery32_2e416m2e208m1_13limbs/feadd.v
deleted file mode 100644
index 6caf323a4..000000000
--- a/src/Specific/montgomery32_2e416m2e208m1_13limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e416m2e208m1_13limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e416m2e208m1_13limbs/feaddDisplay.log b/src/Specific/montgomery32_2e416m2e208m1_13limbs/feaddDisplay.log
deleted file mode 100644
index de529b044..000000000
--- a/src/Specific/montgomery32_2e416m2e208m1_13limbs/feaddDisplay.log
+++ /dev/null
@@ -1,47 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x26, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29))%core,
- uint32_t x53, uint8_t x54 = addcarryx_u32(0x0, x5, x29);
- uint32_t x56, uint8_t x57 = addcarryx_u32(x54, x7, x31);
- uint32_t x59, uint8_t x60 = addcarryx_u32(x57, x9, x33);
- uint32_t x62, uint8_t x63 = addcarryx_u32(x60, x11, x35);
- uint32_t x65, uint8_t x66 = addcarryx_u32(x63, x13, x37);
- uint32_t x68, uint8_t x69 = addcarryx_u32(x66, x15, x39);
- uint32_t x71, uint8_t x72 = addcarryx_u32(x69, x17, x41);
- uint32_t x74, uint8_t x75 = addcarryx_u32(x72, x19, x43);
- uint32_t x77, uint8_t x78 = addcarryx_u32(x75, x21, x45);
- uint32_t x80, uint8_t x81 = addcarryx_u32(x78, x23, x47);
- uint32_t x83, uint8_t x84 = addcarryx_u32(x81, x25, x49);
- uint32_t x86, uint8_t x87 = addcarryx_u32(x84, x27, x51);
- uint32_t x89, uint8_t x90 = addcarryx_u32(x87, x26, x50);
- uint32_t x92, uint8_t x93 = subborrow_u32(0x0, x53, 0xffffffff);
- uint32_t x95, uint8_t x96 = subborrow_u32(x93, x56, 0xffffffff);
- uint32_t x98, uint8_t x99 = subborrow_u32(x96, x59, 0xffffffff);
- uint32_t x101, uint8_t x102 = subborrow_u32(x99, x62, 0xffffffff);
- uint32_t x104, uint8_t x105 = subborrow_u32(x102, x65, 0xffffffff);
- uint32_t x107, uint8_t x108 = subborrow_u32(x105, x68, 0xffffffff);
- uint32_t x110, uint8_t x111 = subborrow_u32(x108, x71, 0xfffeffff);
- uint32_t x113, uint8_t x114 = subborrow_u32(x111, x74, 0xffffffff);
- uint32_t x116, uint8_t x117 = subborrow_u32(x114, x77, 0xffffffff);
- uint32_t x119, uint8_t x120 = subborrow_u32(x117, x80, 0xffffffff);
- uint32_t x122, uint8_t x123 = subborrow_u32(x120, x83, 0xffffffff);
- uint32_t x125, uint8_t x126 = subborrow_u32(x123, x86, 0xffffffff);
- uint32_t x128, uint8_t x129 = subborrow_u32(x126, x89, 0xffffffff);
- uint32_t _, uint8_t x132 = subborrow_u32(x129, x90, 0x0);
- uint32_t x133 = cmovznz32(x132, x128, x89);
- uint32_t x134 = cmovznz32(x132, x125, x86);
- uint32_t x135 = cmovznz32(x132, x122, x83);
- uint32_t x136 = cmovznz32(x132, x119, x80);
- uint32_t x137 = cmovznz32(x132, x116, x77);
- uint32_t x138 = cmovznz32(x132, x113, x74);
- uint32_t x139 = cmovznz32(x132, x110, x71);
- uint32_t x140 = cmovznz32(x132, x107, x68);
- uint32_t x141 = cmovznz32(x132, x104, x65);
- uint32_t x142 = cmovznz32(x132, x101, x62);
- uint32_t x143 = cmovznz32(x132, x98, x59);
- uint32_t x144 = cmovznz32(x132, x95, x56);
- uint32_t x145 = cmovznz32(x132, x92, x53);
- return (x133, x134, x135, x136, x137, x138, x139, x140, x141, x142, x143, x144, x145))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e416m2e208m1_13limbs/feaddDisplay.v b/src/Specific/montgomery32_2e416m2e208m1_13limbs/feaddDisplay.v
deleted file mode 100644
index 00ad389f7..000000000
--- a/src/Specific/montgomery32_2e416m2e208m1_13limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e416m2e208m1_13limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e416m2e208m1_13limbs/femul.v b/src/Specific/montgomery32_2e416m2e208m1_13limbs/femul.v
deleted file mode 100644
index 9bbf3530e..000000000
--- a/src/Specific/montgomery32_2e416m2e208m1_13limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e416m2e208m1_13limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e416m2e208m1_13limbs/femulDisplay.v b/src/Specific/montgomery32_2e416m2e208m1_13limbs/femulDisplay.v
deleted file mode 100644
index 442fcec84..000000000
--- a/src/Specific/montgomery32_2e416m2e208m1_13limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e416m2e208m1_13limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e416m2e208m1_13limbs/fenz.c b/src/Specific/montgomery32_2e416m2e208m1_13limbs/fenz.c
deleted file mode 100644
index c34513bef..000000000
--- a/src/Specific/montgomery32_2e416m2e208m1_13limbs/fenz.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[13]) {
- { const uint32_t x23 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x25 = (x24 | x23);
- { uint32_t x26 = (x22 | x25);
- { uint32_t x27 = (x20 | x26);
- { uint32_t x28 = (x18 | x27);
- { uint32_t x29 = (x16 | x28);
- { uint32_t x30 = (x14 | x29);
- { uint32_t x31 = (x12 | x30);
- { uint32_t x32 = (x10 | x31);
- { uint32_t x33 = (x8 | x32);
- { uint32_t x34 = (x6 | x33);
- { uint32_t x35 = (x4 | x34);
- { uint32_t x36 = (x2 | x35);
- out[0] = x36;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e416m2e208m1_13limbs/fenz.v b/src/Specific/montgomery32_2e416m2e208m1_13limbs/fenz.v
deleted file mode 100644
index 2f2efea07..000000000
--- a/src/Specific/montgomery32_2e416m2e208m1_13limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e416m2e208m1_13limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e416m2e208m1_13limbs/fenzDisplay.log b/src/Specific/montgomery32_2e416m2e208m1_13limbs/fenzDisplay.log
deleted file mode 100644
index be61ce3d7..000000000
--- a/src/Specific/montgomery32_2e416m2e208m1_13limbs/fenzDisplay.log
+++ /dev/null
@@ -1,19 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x23, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x25 = (x24 | x23);
- uint32_t x26 = (x22 | x25);
- uint32_t x27 = (x20 | x26);
- uint32_t x28 = (x18 | x27);
- uint32_t x29 = (x16 | x28);
- uint32_t x30 = (x14 | x29);
- uint32_t x31 = (x12 | x30);
- uint32_t x32 = (x10 | x31);
- uint32_t x33 = (x8 | x32);
- uint32_t x34 = (x6 | x33);
- uint32_t x35 = (x4 | x34);
- uint32_t x36 = (x2 | x35);
- return x36)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e416m2e208m1_13limbs/fenzDisplay.v b/src/Specific/montgomery32_2e416m2e208m1_13limbs/fenzDisplay.v
deleted file mode 100644
index 771394499..000000000
--- a/src/Specific/montgomery32_2e416m2e208m1_13limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e416m2e208m1_13limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e416m2e208m1_13limbs/feopp.v b/src/Specific/montgomery32_2e416m2e208m1_13limbs/feopp.v
deleted file mode 100644
index 4b0b1d12d..000000000
--- a/src/Specific/montgomery32_2e416m2e208m1_13limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e416m2e208m1_13limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e416m2e208m1_13limbs/feoppDisplay.v b/src/Specific/montgomery32_2e416m2e208m1_13limbs/feoppDisplay.v
deleted file mode 100644
index aeda3cb17..000000000
--- a/src/Specific/montgomery32_2e416m2e208m1_13limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e416m2e208m1_13limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e416m2e208m1_13limbs/fesquare.c b/src/Specific/montgomery32_2e416m2e208m1_13limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e416m2e208m1_13limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e416m2e208m1_13limbs/fesub.v b/src/Specific/montgomery32_2e416m2e208m1_13limbs/fesub.v
deleted file mode 100644
index 6e7e7768d..000000000
--- a/src/Specific/montgomery32_2e416m2e208m1_13limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e416m2e208m1_13limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e416m2e208m1_13limbs/fesubDisplay.v b/src/Specific/montgomery32_2e416m2e208m1_13limbs/fesubDisplay.v
deleted file mode 100644
index 91083932e..000000000
--- a/src/Specific/montgomery32_2e416m2e208m1_13limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e416m2e208m1_13limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e416m2e208m1_13limbs/py_interpreter.sh b/src/Specific/montgomery32_2e416m2e208m1_13limbs/py_interpreter.sh
deleted file mode 100755
index d760d16d7..000000000
--- a/src/Specific/montgomery32_2e416m2e208m1_13limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**416 - 2**208 - 1' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e444m17_14limbs/CurveParameters.v b/src/Specific/montgomery32_2e444m17_14limbs/CurveParameters.v
deleted file mode 100644
index 9911b3666..000000000
--- a/src/Specific/montgomery32_2e444m17_14limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^444 - 17
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 14%nat;
- base := 32;
- bitwidth := 32;
- s := 2^444;
- c := [(1, 17)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e444m17_14limbs/Synthesis.v b/src/Specific/montgomery32_2e444m17_14limbs/Synthesis.v
deleted file mode 100644
index 2e898efa0..000000000
--- a/src/Specific/montgomery32_2e444m17_14limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e444m17_14limbs.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/montgomery32_2e444m17_14limbs/compiler.sh b/src/Specific/montgomery32_2e444m17_14limbs/compiler.sh
deleted file mode 100755
index 0482ba705..000000000
--- a/src/Specific/montgomery32_2e444m17_14limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='14' -Dq_mpz='(1_mpz<<444) - 17' "$@"
diff --git a/src/Specific/montgomery32_2e444m17_14limbs/compilerxx.sh b/src/Specific/montgomery32_2e444m17_14limbs/compilerxx.sh
deleted file mode 100755
index 005386194..000000000
--- a/src/Specific/montgomery32_2e444m17_14limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='14' -Dq_mpz='(1_mpz<<444) - 17' "$@"
diff --git a/src/Specific/montgomery32_2e444m17_14limbs/feadd.c b/src/Specific/montgomery32_2e444m17_14limbs/feadd.c
deleted file mode 100644
index 27173d59a..000000000
--- a/src/Specific/montgomery32_2e444m17_14limbs/feadd.c
+++ /dev/null
@@ -1,88 +0,0 @@
-static void feadd(uint32_t out[14], const uint32_t in1[14], const uint32_t in2[14]) {
- { const uint32_t x28 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x54 = in2[13];
- { const uint32_t x55 = in2[12];
- { const uint32_t x53 = in2[11];
- { const uint32_t x51 = in2[10];
- { const uint32_t x49 = in2[9];
- { const uint32_t x47 = in2[8];
- { const uint32_t x45 = in2[7];
- { const uint32_t x43 = in2[6];
- { const uint32_t x41 = in2[5];
- { const uint32_t x39 = in2[4];
- { const uint32_t x37 = in2[3];
- { const uint32_t x35 = in2[2];
- { const uint32_t x33 = in2[1];
- { const uint32_t x31 = in2[0];
- { uint32_t x57; uint8_t x58 = _addcarryx_u32(0x0, x5, x31, &x57);
- { uint32_t x60; uint8_t x61 = _addcarryx_u32(x58, x7, x33, &x60);
- { uint32_t x63; uint8_t x64 = _addcarryx_u32(x61, x9, x35, &x63);
- { uint32_t x66; uint8_t x67 = _addcarryx_u32(x64, x11, x37, &x66);
- { uint32_t x69; uint8_t x70 = _addcarryx_u32(x67, x13, x39, &x69);
- { uint32_t x72; uint8_t x73 = _addcarryx_u32(x70, x15, x41, &x72);
- { uint32_t x75; uint8_t x76 = _addcarryx_u32(x73, x17, x43, &x75);
- { uint32_t x78; uint8_t x79 = _addcarryx_u32(x76, x19, x45, &x78);
- { uint32_t x81; uint8_t x82 = _addcarryx_u32(x79, x21, x47, &x81);
- { uint32_t x84; uint8_t x85 = _addcarryx_u32(x82, x23, x49, &x84);
- { uint32_t x87; uint8_t x88 = _addcarryx_u32(x85, x25, x51, &x87);
- { uint32_t x90; uint8_t x91 = _addcarryx_u32(x88, x27, x53, &x90);
- { uint32_t x93; uint8_t x94 = _addcarryx_u32(x91, x29, x55, &x93);
- { uint32_t x96; uint8_t x97 = _addcarryx_u32(x94, x28, x54, &x96);
- { uint32_t x99; uint8_t x100 = _subborrow_u32(0x0, x57, 0xffffffef, &x99);
- { uint32_t x102; uint8_t x103 = _subborrow_u32(x100, x60, 0xffffffff, &x102);
- { uint32_t x105; uint8_t x106 = _subborrow_u32(x103, x63, 0xffffffff, &x105);
- { uint32_t x108; uint8_t x109 = _subborrow_u32(x106, x66, 0xffffffff, &x108);
- { uint32_t x111; uint8_t x112 = _subborrow_u32(x109, x69, 0xffffffff, &x111);
- { uint32_t x114; uint8_t x115 = _subborrow_u32(x112, x72, 0xffffffff, &x114);
- { uint32_t x117; uint8_t x118 = _subborrow_u32(x115, x75, 0xffffffff, &x117);
- { uint32_t x120; uint8_t x121 = _subborrow_u32(x118, x78, 0xffffffff, &x120);
- { uint32_t x123; uint8_t x124 = _subborrow_u32(x121, x81, 0xffffffff, &x123);
- { uint32_t x126; uint8_t x127 = _subborrow_u32(x124, x84, 0xffffffff, &x126);
- { uint32_t x129; uint8_t x130 = _subborrow_u32(x127, x87, 0xffffffff, &x129);
- { uint32_t x132; uint8_t x133 = _subborrow_u32(x130, x90, 0xffffffff, &x132);
- { uint32_t x135; uint8_t x136 = _subborrow_u32(x133, x93, 0xffffffff, &x135);
- { uint32_t x138; uint8_t x139 = _subborrow_u32(x136, x96, 0xfffffff, &x138);
- { uint32_t _; uint8_t x142 = _subborrow_u32(x139, x97, 0x0, &_);
- { uint32_t x143 = cmovznz32(x142, x138, x96);
- { uint32_t x144 = cmovznz32(x142, x135, x93);
- { uint32_t x145 = cmovznz32(x142, x132, x90);
- { uint32_t x146 = cmovznz32(x142, x129, x87);
- { uint32_t x147 = cmovznz32(x142, x126, x84);
- { uint32_t x148 = cmovznz32(x142, x123, x81);
- { uint32_t x149 = cmovznz32(x142, x120, x78);
- { uint32_t x150 = cmovznz32(x142, x117, x75);
- { uint32_t x151 = cmovznz32(x142, x114, x72);
- { uint32_t x152 = cmovznz32(x142, x111, x69);
- { uint32_t x153 = cmovznz32(x142, x108, x66);
- { uint32_t x154 = cmovznz32(x142, x105, x63);
- { uint32_t x155 = cmovznz32(x142, x102, x60);
- { uint32_t x156 = cmovznz32(x142, x99, x57);
- out[0] = x156;
- out[1] = x155;
- out[2] = x154;
- out[3] = x153;
- out[4] = x152;
- out[5] = x151;
- out[6] = x150;
- out[7] = x149;
- out[8] = x148;
- out[9] = x147;
- out[10] = x146;
- out[11] = x145;
- out[12] = x144;
- out[13] = x143;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e444m17_14limbs/feadd.v b/src/Specific/montgomery32_2e444m17_14limbs/feadd.v
deleted file mode 100644
index c617e1dcd..000000000
--- a/src/Specific/montgomery32_2e444m17_14limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e444m17_14limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e444m17_14limbs/feaddDisplay.log b/src/Specific/montgomery32_2e444m17_14limbs/feaddDisplay.log
deleted file mode 100644
index 07d9c8b95..000000000
--- a/src/Specific/montgomery32_2e444m17_14limbs/feaddDisplay.log
+++ /dev/null
@@ -1,50 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x28, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x54, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31))%core,
- uint32_t x57, uint8_t x58 = addcarryx_u32(0x0, x5, x31);
- uint32_t x60, uint8_t x61 = addcarryx_u32(x58, x7, x33);
- uint32_t x63, uint8_t x64 = addcarryx_u32(x61, x9, x35);
- uint32_t x66, uint8_t x67 = addcarryx_u32(x64, x11, x37);
- uint32_t x69, uint8_t x70 = addcarryx_u32(x67, x13, x39);
- uint32_t x72, uint8_t x73 = addcarryx_u32(x70, x15, x41);
- uint32_t x75, uint8_t x76 = addcarryx_u32(x73, x17, x43);
- uint32_t x78, uint8_t x79 = addcarryx_u32(x76, x19, x45);
- uint32_t x81, uint8_t x82 = addcarryx_u32(x79, x21, x47);
- uint32_t x84, uint8_t x85 = addcarryx_u32(x82, x23, x49);
- uint32_t x87, uint8_t x88 = addcarryx_u32(x85, x25, x51);
- uint32_t x90, uint8_t x91 = addcarryx_u32(x88, x27, x53);
- uint32_t x93, uint8_t x94 = addcarryx_u32(x91, x29, x55);
- uint32_t x96, uint8_t x97 = addcarryx_u32(x94, x28, x54);
- uint32_t x99, uint8_t x100 = subborrow_u32(0x0, x57, 0xffffffef);
- uint32_t x102, uint8_t x103 = subborrow_u32(x100, x60, 0xffffffff);
- uint32_t x105, uint8_t x106 = subborrow_u32(x103, x63, 0xffffffff);
- uint32_t x108, uint8_t x109 = subborrow_u32(x106, x66, 0xffffffff);
- uint32_t x111, uint8_t x112 = subborrow_u32(x109, x69, 0xffffffff);
- uint32_t x114, uint8_t x115 = subborrow_u32(x112, x72, 0xffffffff);
- uint32_t x117, uint8_t x118 = subborrow_u32(x115, x75, 0xffffffff);
- uint32_t x120, uint8_t x121 = subborrow_u32(x118, x78, 0xffffffff);
- uint32_t x123, uint8_t x124 = subborrow_u32(x121, x81, 0xffffffff);
- uint32_t x126, uint8_t x127 = subborrow_u32(x124, x84, 0xffffffff);
- uint32_t x129, uint8_t x130 = subborrow_u32(x127, x87, 0xffffffff);
- uint32_t x132, uint8_t x133 = subborrow_u32(x130, x90, 0xffffffff);
- uint32_t x135, uint8_t x136 = subborrow_u32(x133, x93, 0xffffffff);
- uint32_t x138, uint8_t x139 = subborrow_u32(x136, x96, 0xfffffff);
- uint32_t _, uint8_t x142 = subborrow_u32(x139, x97, 0x0);
- uint32_t x143 = cmovznz32(x142, x138, x96);
- uint32_t x144 = cmovznz32(x142, x135, x93);
- uint32_t x145 = cmovznz32(x142, x132, x90);
- uint32_t x146 = cmovznz32(x142, x129, x87);
- uint32_t x147 = cmovznz32(x142, x126, x84);
- uint32_t x148 = cmovznz32(x142, x123, x81);
- uint32_t x149 = cmovznz32(x142, x120, x78);
- uint32_t x150 = cmovznz32(x142, x117, x75);
- uint32_t x151 = cmovznz32(x142, x114, x72);
- uint32_t x152 = cmovznz32(x142, x111, x69);
- uint32_t x153 = cmovznz32(x142, x108, x66);
- uint32_t x154 = cmovznz32(x142, x105, x63);
- uint32_t x155 = cmovznz32(x142, x102, x60);
- uint32_t x156 = cmovznz32(x142, x99, x57);
- return (x143, x144, x145, x146, x147, x148, x149, x150, x151, x152, x153, x154, x155, x156))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e444m17_14limbs/feaddDisplay.v b/src/Specific/montgomery32_2e444m17_14limbs/feaddDisplay.v
deleted file mode 100644
index c5ce0532e..000000000
--- a/src/Specific/montgomery32_2e444m17_14limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e444m17_14limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e444m17_14limbs/femul.v b/src/Specific/montgomery32_2e444m17_14limbs/femul.v
deleted file mode 100644
index 43f6e3801..000000000
--- a/src/Specific/montgomery32_2e444m17_14limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e444m17_14limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e444m17_14limbs/femulDisplay.v b/src/Specific/montgomery32_2e444m17_14limbs/femulDisplay.v
deleted file mode 100644
index e721f0531..000000000
--- a/src/Specific/montgomery32_2e444m17_14limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e444m17_14limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e444m17_14limbs/fenz.c b/src/Specific/montgomery32_2e444m17_14limbs/fenz.c
deleted file mode 100644
index 42fc27af3..000000000
--- a/src/Specific/montgomery32_2e444m17_14limbs/fenz.c
+++ /dev/null
@@ -1,31 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[14]) {
- { const uint32_t x25 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x27 = (x26 | x25);
- { uint32_t x28 = (x24 | x27);
- { uint32_t x29 = (x22 | x28);
- { uint32_t x30 = (x20 | x29);
- { uint32_t x31 = (x18 | x30);
- { uint32_t x32 = (x16 | x31);
- { uint32_t x33 = (x14 | x32);
- { uint32_t x34 = (x12 | x33);
- { uint32_t x35 = (x10 | x34);
- { uint32_t x36 = (x8 | x35);
- { uint32_t x37 = (x6 | x36);
- { uint32_t x38 = (x4 | x37);
- { uint32_t x39 = (x2 | x38);
- out[0] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e444m17_14limbs/fenz.v b/src/Specific/montgomery32_2e444m17_14limbs/fenz.v
deleted file mode 100644
index 014d61f96..000000000
--- a/src/Specific/montgomery32_2e444m17_14limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e444m17_14limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e444m17_14limbs/fenzDisplay.log b/src/Specific/montgomery32_2e444m17_14limbs/fenzDisplay.log
deleted file mode 100644
index 265fc8b8c..000000000
--- a/src/Specific/montgomery32_2e444m17_14limbs/fenzDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x25, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x27 = (x26 | x25);
- uint32_t x28 = (x24 | x27);
- uint32_t x29 = (x22 | x28);
- uint32_t x30 = (x20 | x29);
- uint32_t x31 = (x18 | x30);
- uint32_t x32 = (x16 | x31);
- uint32_t x33 = (x14 | x32);
- uint32_t x34 = (x12 | x33);
- uint32_t x35 = (x10 | x34);
- uint32_t x36 = (x8 | x35);
- uint32_t x37 = (x6 | x36);
- uint32_t x38 = (x4 | x37);
- uint32_t x39 = (x2 | x38);
- return x39)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e444m17_14limbs/fenzDisplay.v b/src/Specific/montgomery32_2e444m17_14limbs/fenzDisplay.v
deleted file mode 100644
index 55b547264..000000000
--- a/src/Specific/montgomery32_2e444m17_14limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e444m17_14limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e444m17_14limbs/feopp.v b/src/Specific/montgomery32_2e444m17_14limbs/feopp.v
deleted file mode 100644
index 85511f3c5..000000000
--- a/src/Specific/montgomery32_2e444m17_14limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e444m17_14limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e444m17_14limbs/feoppDisplay.v b/src/Specific/montgomery32_2e444m17_14limbs/feoppDisplay.v
deleted file mode 100644
index 1012b495b..000000000
--- a/src/Specific/montgomery32_2e444m17_14limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e444m17_14limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e444m17_14limbs/fesquare.c b/src/Specific/montgomery32_2e444m17_14limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e444m17_14limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e444m17_14limbs/fesub.v b/src/Specific/montgomery32_2e444m17_14limbs/fesub.v
deleted file mode 100644
index fd382b473..000000000
--- a/src/Specific/montgomery32_2e444m17_14limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e444m17_14limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e444m17_14limbs/fesubDisplay.v b/src/Specific/montgomery32_2e444m17_14limbs/fesubDisplay.v
deleted file mode 100644
index 77fd2fa6b..000000000
--- a/src/Specific/montgomery32_2e444m17_14limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e444m17_14limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e444m17_14limbs/py_interpreter.sh b/src/Specific/montgomery32_2e444m17_14limbs/py_interpreter.sh
deleted file mode 100755
index ac55d629a..000000000
--- a/src/Specific/montgomery32_2e444m17_14limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**444 - 17' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e448m2e224m1_14limbs/CurveParameters.v b/src/Specific/montgomery32_2e448m2e224m1_14limbs/CurveParameters.v
deleted file mode 100644
index 87cb9da35..000000000
--- a/src/Specific/montgomery32_2e448m2e224m1_14limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^448 - 2^224 - 1
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 14%nat;
- base := 32;
- bitwidth := 32;
- s := 2^448;
- c := [(1, 1); (2^224, 1)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e448m2e224m1_14limbs/Synthesis.v b/src/Specific/montgomery32_2e448m2e224m1_14limbs/Synthesis.v
deleted file mode 100644
index eb803fa67..000000000
--- a/src/Specific/montgomery32_2e448m2e224m1_14limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e448m2e224m1_14limbs.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/montgomery32_2e448m2e224m1_14limbs/compiler.sh b/src/Specific/montgomery32_2e448m2e224m1_14limbs/compiler.sh
deleted file mode 100755
index 507c6c3fe..000000000
--- a/src/Specific/montgomery32_2e448m2e224m1_14limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='14' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e448m2e224m1_14limbs/compilerxx.sh b/src/Specific/montgomery32_2e448m2e224m1_14limbs/compilerxx.sh
deleted file mode 100755
index 13644f139..000000000
--- a/src/Specific/montgomery32_2e448m2e224m1_14limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='14' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e448m2e224m1_14limbs/feadd.c b/src/Specific/montgomery32_2e448m2e224m1_14limbs/feadd.c
deleted file mode 100644
index be0570114..000000000
--- a/src/Specific/montgomery32_2e448m2e224m1_14limbs/feadd.c
+++ /dev/null
@@ -1,88 +0,0 @@
-static void feadd(uint32_t out[14], const uint32_t in1[14], const uint32_t in2[14]) {
- { const uint32_t x28 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x54 = in2[13];
- { const uint32_t x55 = in2[12];
- { const uint32_t x53 = in2[11];
- { const uint32_t x51 = in2[10];
- { const uint32_t x49 = in2[9];
- { const uint32_t x47 = in2[8];
- { const uint32_t x45 = in2[7];
- { const uint32_t x43 = in2[6];
- { const uint32_t x41 = in2[5];
- { const uint32_t x39 = in2[4];
- { const uint32_t x37 = in2[3];
- { const uint32_t x35 = in2[2];
- { const uint32_t x33 = in2[1];
- { const uint32_t x31 = in2[0];
- { uint32_t x57; uint8_t x58 = _addcarryx_u32(0x0, x5, x31, &x57);
- { uint32_t x60; uint8_t x61 = _addcarryx_u32(x58, x7, x33, &x60);
- { uint32_t x63; uint8_t x64 = _addcarryx_u32(x61, x9, x35, &x63);
- { uint32_t x66; uint8_t x67 = _addcarryx_u32(x64, x11, x37, &x66);
- { uint32_t x69; uint8_t x70 = _addcarryx_u32(x67, x13, x39, &x69);
- { uint32_t x72; uint8_t x73 = _addcarryx_u32(x70, x15, x41, &x72);
- { uint32_t x75; uint8_t x76 = _addcarryx_u32(x73, x17, x43, &x75);
- { uint32_t x78; uint8_t x79 = _addcarryx_u32(x76, x19, x45, &x78);
- { uint32_t x81; uint8_t x82 = _addcarryx_u32(x79, x21, x47, &x81);
- { uint32_t x84; uint8_t x85 = _addcarryx_u32(x82, x23, x49, &x84);
- { uint32_t x87; uint8_t x88 = _addcarryx_u32(x85, x25, x51, &x87);
- { uint32_t x90; uint8_t x91 = _addcarryx_u32(x88, x27, x53, &x90);
- { uint32_t x93; uint8_t x94 = _addcarryx_u32(x91, x29, x55, &x93);
- { uint32_t x96; uint8_t x97 = _addcarryx_u32(x94, x28, x54, &x96);
- { uint32_t x99; uint8_t x100 = _subborrow_u32(0x0, x57, 0xffffffff, &x99);
- { uint32_t x102; uint8_t x103 = _subborrow_u32(x100, x60, 0xffffffff, &x102);
- { uint32_t x105; uint8_t x106 = _subborrow_u32(x103, x63, 0xffffffff, &x105);
- { uint32_t x108; uint8_t x109 = _subborrow_u32(x106, x66, 0xffffffff, &x108);
- { uint32_t x111; uint8_t x112 = _subborrow_u32(x109, x69, 0xffffffff, &x111);
- { uint32_t x114; uint8_t x115 = _subborrow_u32(x112, x72, 0xffffffff, &x114);
- { uint32_t x117; uint8_t x118 = _subborrow_u32(x115, x75, 0xffffffff, &x117);
- { uint32_t x120; uint8_t x121 = _subborrow_u32(x118, x78, 0xfffffffe, &x120);
- { uint32_t x123; uint8_t x124 = _subborrow_u32(x121, x81, 0xffffffff, &x123);
- { uint32_t x126; uint8_t x127 = _subborrow_u32(x124, x84, 0xffffffff, &x126);
- { uint32_t x129; uint8_t x130 = _subborrow_u32(x127, x87, 0xffffffff, &x129);
- { uint32_t x132; uint8_t x133 = _subborrow_u32(x130, x90, 0xffffffff, &x132);
- { uint32_t x135; uint8_t x136 = _subborrow_u32(x133, x93, 0xffffffff, &x135);
- { uint32_t x138; uint8_t x139 = _subborrow_u32(x136, x96, 0xffffffff, &x138);
- { uint32_t _; uint8_t x142 = _subborrow_u32(x139, x97, 0x0, &_);
- { uint32_t x143 = cmovznz32(x142, x138, x96);
- { uint32_t x144 = cmovznz32(x142, x135, x93);
- { uint32_t x145 = cmovznz32(x142, x132, x90);
- { uint32_t x146 = cmovznz32(x142, x129, x87);
- { uint32_t x147 = cmovznz32(x142, x126, x84);
- { uint32_t x148 = cmovznz32(x142, x123, x81);
- { uint32_t x149 = cmovznz32(x142, x120, x78);
- { uint32_t x150 = cmovznz32(x142, x117, x75);
- { uint32_t x151 = cmovznz32(x142, x114, x72);
- { uint32_t x152 = cmovznz32(x142, x111, x69);
- { uint32_t x153 = cmovznz32(x142, x108, x66);
- { uint32_t x154 = cmovznz32(x142, x105, x63);
- { uint32_t x155 = cmovznz32(x142, x102, x60);
- { uint32_t x156 = cmovznz32(x142, x99, x57);
- out[0] = x156;
- out[1] = x155;
- out[2] = x154;
- out[3] = x153;
- out[4] = x152;
- out[5] = x151;
- out[6] = x150;
- out[7] = x149;
- out[8] = x148;
- out[9] = x147;
- out[10] = x146;
- out[11] = x145;
- out[12] = x144;
- out[13] = x143;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e448m2e224m1_14limbs/feadd.v b/src/Specific/montgomery32_2e448m2e224m1_14limbs/feadd.v
deleted file mode 100644
index c1e308867..000000000
--- a/src/Specific/montgomery32_2e448m2e224m1_14limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e448m2e224m1_14limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e448m2e224m1_14limbs/feaddDisplay.log b/src/Specific/montgomery32_2e448m2e224m1_14limbs/feaddDisplay.log
deleted file mode 100644
index 71a9485c1..000000000
--- a/src/Specific/montgomery32_2e448m2e224m1_14limbs/feaddDisplay.log
+++ /dev/null
@@ -1,50 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x28, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x54, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31))%core,
- uint32_t x57, uint8_t x58 = addcarryx_u32(0x0, x5, x31);
- uint32_t x60, uint8_t x61 = addcarryx_u32(x58, x7, x33);
- uint32_t x63, uint8_t x64 = addcarryx_u32(x61, x9, x35);
- uint32_t x66, uint8_t x67 = addcarryx_u32(x64, x11, x37);
- uint32_t x69, uint8_t x70 = addcarryx_u32(x67, x13, x39);
- uint32_t x72, uint8_t x73 = addcarryx_u32(x70, x15, x41);
- uint32_t x75, uint8_t x76 = addcarryx_u32(x73, x17, x43);
- uint32_t x78, uint8_t x79 = addcarryx_u32(x76, x19, x45);
- uint32_t x81, uint8_t x82 = addcarryx_u32(x79, x21, x47);
- uint32_t x84, uint8_t x85 = addcarryx_u32(x82, x23, x49);
- uint32_t x87, uint8_t x88 = addcarryx_u32(x85, x25, x51);
- uint32_t x90, uint8_t x91 = addcarryx_u32(x88, x27, x53);
- uint32_t x93, uint8_t x94 = addcarryx_u32(x91, x29, x55);
- uint32_t x96, uint8_t x97 = addcarryx_u32(x94, x28, x54);
- uint32_t x99, uint8_t x100 = subborrow_u32(0x0, x57, 0xffffffff);
- uint32_t x102, uint8_t x103 = subborrow_u32(x100, x60, 0xffffffff);
- uint32_t x105, uint8_t x106 = subborrow_u32(x103, x63, 0xffffffff);
- uint32_t x108, uint8_t x109 = subborrow_u32(x106, x66, 0xffffffff);
- uint32_t x111, uint8_t x112 = subborrow_u32(x109, x69, 0xffffffff);
- uint32_t x114, uint8_t x115 = subborrow_u32(x112, x72, 0xffffffff);
- uint32_t x117, uint8_t x118 = subborrow_u32(x115, x75, 0xffffffff);
- uint32_t x120, uint8_t x121 = subborrow_u32(x118, x78, 0xfffffffe);
- uint32_t x123, uint8_t x124 = subborrow_u32(x121, x81, 0xffffffff);
- uint32_t x126, uint8_t x127 = subborrow_u32(x124, x84, 0xffffffff);
- uint32_t x129, uint8_t x130 = subborrow_u32(x127, x87, 0xffffffff);
- uint32_t x132, uint8_t x133 = subborrow_u32(x130, x90, 0xffffffff);
- uint32_t x135, uint8_t x136 = subborrow_u32(x133, x93, 0xffffffff);
- uint32_t x138, uint8_t x139 = subborrow_u32(x136, x96, 0xffffffff);
- uint32_t _, uint8_t x142 = subborrow_u32(x139, x97, 0x0);
- uint32_t x143 = cmovznz32(x142, x138, x96);
- uint32_t x144 = cmovznz32(x142, x135, x93);
- uint32_t x145 = cmovznz32(x142, x132, x90);
- uint32_t x146 = cmovznz32(x142, x129, x87);
- uint32_t x147 = cmovznz32(x142, x126, x84);
- uint32_t x148 = cmovznz32(x142, x123, x81);
- uint32_t x149 = cmovznz32(x142, x120, x78);
- uint32_t x150 = cmovznz32(x142, x117, x75);
- uint32_t x151 = cmovznz32(x142, x114, x72);
- uint32_t x152 = cmovznz32(x142, x111, x69);
- uint32_t x153 = cmovznz32(x142, x108, x66);
- uint32_t x154 = cmovznz32(x142, x105, x63);
- uint32_t x155 = cmovznz32(x142, x102, x60);
- uint32_t x156 = cmovznz32(x142, x99, x57);
- return (x143, x144, x145, x146, x147, x148, x149, x150, x151, x152, x153, x154, x155, x156))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e448m2e224m1_14limbs/feaddDisplay.v b/src/Specific/montgomery32_2e448m2e224m1_14limbs/feaddDisplay.v
deleted file mode 100644
index 070d26dba..000000000
--- a/src/Specific/montgomery32_2e448m2e224m1_14limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e448m2e224m1_14limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e448m2e224m1_14limbs/femul.v b/src/Specific/montgomery32_2e448m2e224m1_14limbs/femul.v
deleted file mode 100644
index 054557c78..000000000
--- a/src/Specific/montgomery32_2e448m2e224m1_14limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e448m2e224m1_14limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e448m2e224m1_14limbs/femulDisplay.v b/src/Specific/montgomery32_2e448m2e224m1_14limbs/femulDisplay.v
deleted file mode 100644
index 45a9db438..000000000
--- a/src/Specific/montgomery32_2e448m2e224m1_14limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e448m2e224m1_14limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e448m2e224m1_14limbs/fenz.c b/src/Specific/montgomery32_2e448m2e224m1_14limbs/fenz.c
deleted file mode 100644
index 42fc27af3..000000000
--- a/src/Specific/montgomery32_2e448m2e224m1_14limbs/fenz.c
+++ /dev/null
@@ -1,31 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[14]) {
- { const uint32_t x25 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x27 = (x26 | x25);
- { uint32_t x28 = (x24 | x27);
- { uint32_t x29 = (x22 | x28);
- { uint32_t x30 = (x20 | x29);
- { uint32_t x31 = (x18 | x30);
- { uint32_t x32 = (x16 | x31);
- { uint32_t x33 = (x14 | x32);
- { uint32_t x34 = (x12 | x33);
- { uint32_t x35 = (x10 | x34);
- { uint32_t x36 = (x8 | x35);
- { uint32_t x37 = (x6 | x36);
- { uint32_t x38 = (x4 | x37);
- { uint32_t x39 = (x2 | x38);
- out[0] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e448m2e224m1_14limbs/fenz.v b/src/Specific/montgomery32_2e448m2e224m1_14limbs/fenz.v
deleted file mode 100644
index 2815d6e08..000000000
--- a/src/Specific/montgomery32_2e448m2e224m1_14limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e448m2e224m1_14limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e448m2e224m1_14limbs/fenzDisplay.log b/src/Specific/montgomery32_2e448m2e224m1_14limbs/fenzDisplay.log
deleted file mode 100644
index 265fc8b8c..000000000
--- a/src/Specific/montgomery32_2e448m2e224m1_14limbs/fenzDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x25, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x27 = (x26 | x25);
- uint32_t x28 = (x24 | x27);
- uint32_t x29 = (x22 | x28);
- uint32_t x30 = (x20 | x29);
- uint32_t x31 = (x18 | x30);
- uint32_t x32 = (x16 | x31);
- uint32_t x33 = (x14 | x32);
- uint32_t x34 = (x12 | x33);
- uint32_t x35 = (x10 | x34);
- uint32_t x36 = (x8 | x35);
- uint32_t x37 = (x6 | x36);
- uint32_t x38 = (x4 | x37);
- uint32_t x39 = (x2 | x38);
- return x39)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e448m2e224m1_14limbs/fenzDisplay.v b/src/Specific/montgomery32_2e448m2e224m1_14limbs/fenzDisplay.v
deleted file mode 100644
index 05b3cabdf..000000000
--- a/src/Specific/montgomery32_2e448m2e224m1_14limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e448m2e224m1_14limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e448m2e224m1_14limbs/feopp.v b/src/Specific/montgomery32_2e448m2e224m1_14limbs/feopp.v
deleted file mode 100644
index ea57ad51d..000000000
--- a/src/Specific/montgomery32_2e448m2e224m1_14limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e448m2e224m1_14limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e448m2e224m1_14limbs/feoppDisplay.v b/src/Specific/montgomery32_2e448m2e224m1_14limbs/feoppDisplay.v
deleted file mode 100644
index 37adbbacc..000000000
--- a/src/Specific/montgomery32_2e448m2e224m1_14limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e448m2e224m1_14limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e448m2e224m1_14limbs/fesquare.c b/src/Specific/montgomery32_2e448m2e224m1_14limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e448m2e224m1_14limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e448m2e224m1_14limbs/fesub.v b/src/Specific/montgomery32_2e448m2e224m1_14limbs/fesub.v
deleted file mode 100644
index dd3a13647..000000000
--- a/src/Specific/montgomery32_2e448m2e224m1_14limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e448m2e224m1_14limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e448m2e224m1_14limbs/fesubDisplay.v b/src/Specific/montgomery32_2e448m2e224m1_14limbs/fesubDisplay.v
deleted file mode 100644
index eb0b7a879..000000000
--- a/src/Specific/montgomery32_2e448m2e224m1_14limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e448m2e224m1_14limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e448m2e224m1_14limbs/py_interpreter.sh b/src/Specific/montgomery32_2e448m2e224m1_14limbs/py_interpreter.sh
deleted file mode 100755
index 7485cb514..000000000
--- a/src/Specific/montgomery32_2e448m2e224m1_14limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**448 - 2**224 - 1' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e450m2e225m1_15limbs/CurveParameters.v b/src/Specific/montgomery32_2e450m2e225m1_15limbs/CurveParameters.v
deleted file mode 100644
index ad40479c6..000000000
--- a/src/Specific/montgomery32_2e450m2e225m1_15limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^450 - 2^225 - 1
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 15%nat;
- base := 32;
- bitwidth := 32;
- s := 2^450;
- c := [(1, 1); (2^225, 1)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e450m2e225m1_15limbs/Synthesis.v b/src/Specific/montgomery32_2e450m2e225m1_15limbs/Synthesis.v
deleted file mode 100644
index b93b0e892..000000000
--- a/src/Specific/montgomery32_2e450m2e225m1_15limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e450m2e225m1_15limbs.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/montgomery32_2e450m2e225m1_15limbs/compiler.sh b/src/Specific/montgomery32_2e450m2e225m1_15limbs/compiler.sh
deleted file mode 100755
index b53bd3504..000000000
--- a/src/Specific/montgomery32_2e450m2e225m1_15limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e450m2e225m1_15limbs/compilerxx.sh b/src/Specific/montgomery32_2e450m2e225m1_15limbs/compilerxx.sh
deleted file mode 100755
index 37cbf164c..000000000
--- a/src/Specific/montgomery32_2e450m2e225m1_15limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e450m2e225m1_15limbs/feadd.c b/src/Specific/montgomery32_2e450m2e225m1_15limbs/feadd.c
deleted file mode 100644
index 3fad66efb..000000000
--- a/src/Specific/montgomery32_2e450m2e225m1_15limbs/feadd.c
+++ /dev/null
@@ -1,94 +0,0 @@
-static void feadd(uint32_t out[15], const uint32_t in1[15], const uint32_t in2[15]) {
- { const uint32_t x30 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x58 = in2[14];
- { const uint32_t x59 = in2[13];
- { const uint32_t x57 = in2[12];
- { const uint32_t x55 = in2[11];
- { const uint32_t x53 = in2[10];
- { const uint32_t x51 = in2[9];
- { const uint32_t x49 = in2[8];
- { const uint32_t x47 = in2[7];
- { const uint32_t x45 = in2[6];
- { const uint32_t x43 = in2[5];
- { const uint32_t x41 = in2[4];
- { const uint32_t x39 = in2[3];
- { const uint32_t x37 = in2[2];
- { const uint32_t x35 = in2[1];
- { const uint32_t x33 = in2[0];
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(0x0, x5, x33, &x61);
- { uint32_t x64; uint8_t x65 = _addcarryx_u32(x62, x7, x35, &x64);
- { uint32_t x67; uint8_t x68 = _addcarryx_u32(x65, x9, x37, &x67);
- { uint32_t x70; uint8_t x71 = _addcarryx_u32(x68, x11, x39, &x70);
- { uint32_t x73; uint8_t x74 = _addcarryx_u32(x71, x13, x41, &x73);
- { uint32_t x76; uint8_t x77 = _addcarryx_u32(x74, x15, x43, &x76);
- { uint32_t x79; uint8_t x80 = _addcarryx_u32(x77, x17, x45, &x79);
- { uint32_t x82; uint8_t x83 = _addcarryx_u32(x80, x19, x47, &x82);
- { uint32_t x85; uint8_t x86 = _addcarryx_u32(x83, x21, x49, &x85);
- { uint32_t x88; uint8_t x89 = _addcarryx_u32(x86, x23, x51, &x88);
- { uint32_t x91; uint8_t x92 = _addcarryx_u32(x89, x25, x53, &x91);
- { uint32_t x94; uint8_t x95 = _addcarryx_u32(x92, x27, x55, &x94);
- { uint32_t x97; uint8_t x98 = _addcarryx_u32(x95, x29, x57, &x97);
- { uint32_t x100; uint8_t x101 = _addcarryx_u32(x98, x31, x59, &x100);
- { uint32_t x103; uint8_t x104 = _addcarryx_u32(x101, x30, x58, &x103);
- { uint32_t x106; uint8_t x107 = _subborrow_u32(0x0, x61, 0xffffffff, &x106);
- { uint32_t x109; uint8_t x110 = _subborrow_u32(x107, x64, 0xffffffff, &x109);
- { uint32_t x112; uint8_t x113 = _subborrow_u32(x110, x67, 0xffffffff, &x112);
- { uint32_t x115; uint8_t x116 = _subborrow_u32(x113, x70, 0xffffffff, &x115);
- { uint32_t x118; uint8_t x119 = _subborrow_u32(x116, x73, 0xffffffff, &x118);
- { uint32_t x121; uint8_t x122 = _subborrow_u32(x119, x76, 0xffffffff, &x121);
- { uint32_t x124; uint8_t x125 = _subborrow_u32(x122, x79, 0xffffffff, &x124);
- { uint32_t x127; uint8_t x128 = _subborrow_u32(x125, x82, 0xfffffffd, &x127);
- { uint32_t x130; uint8_t x131 = _subborrow_u32(x128, x85, 0xffffffff, &x130);
- { uint32_t x133; uint8_t x134 = _subborrow_u32(x131, x88, 0xffffffff, &x133);
- { uint32_t x136; uint8_t x137 = _subborrow_u32(x134, x91, 0xffffffff, &x136);
- { uint32_t x139; uint8_t x140 = _subborrow_u32(x137, x94, 0xffffffff, &x139);
- { uint32_t x142; uint8_t x143 = _subborrow_u32(x140, x97, 0xffffffff, &x142);
- { uint32_t x145; uint8_t x146 = _subborrow_u32(x143, x100, 0xffffffff, &x145);
- { uint32_t x148; uint8_t x149 = _subborrow_u32(x146, x103, 0x3, &x148);
- { uint32_t _; uint8_t x152 = _subborrow_u32(x149, x104, 0x0, &_);
- { uint32_t x153 = cmovznz32(x152, x148, x103);
- { uint32_t x154 = cmovznz32(x152, x145, x100);
- { uint32_t x155 = cmovznz32(x152, x142, x97);
- { uint32_t x156 = cmovznz32(x152, x139, x94);
- { uint32_t x157 = cmovznz32(x152, x136, x91);
- { uint32_t x158 = cmovznz32(x152, x133, x88);
- { uint32_t x159 = cmovznz32(x152, x130, x85);
- { uint32_t x160 = cmovznz32(x152, x127, x82);
- { uint32_t x161 = cmovznz32(x152, x124, x79);
- { uint32_t x162 = cmovznz32(x152, x121, x76);
- { uint32_t x163 = cmovznz32(x152, x118, x73);
- { uint32_t x164 = cmovznz32(x152, x115, x70);
- { uint32_t x165 = cmovznz32(x152, x112, x67);
- { uint32_t x166 = cmovznz32(x152, x109, x64);
- { uint32_t x167 = cmovznz32(x152, x106, x61);
- out[0] = x167;
- out[1] = x166;
- out[2] = x165;
- out[3] = x164;
- out[4] = x163;
- out[5] = x162;
- out[6] = x161;
- out[7] = x160;
- out[8] = x159;
- out[9] = x158;
- out[10] = x157;
- out[11] = x156;
- out[12] = x155;
- out[13] = x154;
- out[14] = x153;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e450m2e225m1_15limbs/feadd.v b/src/Specific/montgomery32_2e450m2e225m1_15limbs/feadd.v
deleted file mode 100644
index 0b1f83d64..000000000
--- a/src/Specific/montgomery32_2e450m2e225m1_15limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e450m2e225m1_15limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e450m2e225m1_15limbs/feaddDisplay.log b/src/Specific/montgomery32_2e450m2e225m1_15limbs/feaddDisplay.log
deleted file mode 100644
index 5315b7fe3..000000000
--- a/src/Specific/montgomery32_2e450m2e225m1_15limbs/feaddDisplay.log
+++ /dev/null
@@ -1,53 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x30, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x58, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33))%core,
- uint32_t x61, uint8_t x62 = addcarryx_u32(0x0, x5, x33);
- uint32_t x64, uint8_t x65 = addcarryx_u32(x62, x7, x35);
- uint32_t x67, uint8_t x68 = addcarryx_u32(x65, x9, x37);
- uint32_t x70, uint8_t x71 = addcarryx_u32(x68, x11, x39);
- uint32_t x73, uint8_t x74 = addcarryx_u32(x71, x13, x41);
- uint32_t x76, uint8_t x77 = addcarryx_u32(x74, x15, x43);
- uint32_t x79, uint8_t x80 = addcarryx_u32(x77, x17, x45);
- uint32_t x82, uint8_t x83 = addcarryx_u32(x80, x19, x47);
- uint32_t x85, uint8_t x86 = addcarryx_u32(x83, x21, x49);
- uint32_t x88, uint8_t x89 = addcarryx_u32(x86, x23, x51);
- uint32_t x91, uint8_t x92 = addcarryx_u32(x89, x25, x53);
- uint32_t x94, uint8_t x95 = addcarryx_u32(x92, x27, x55);
- uint32_t x97, uint8_t x98 = addcarryx_u32(x95, x29, x57);
- uint32_t x100, uint8_t x101 = addcarryx_u32(x98, x31, x59);
- uint32_t x103, uint8_t x104 = addcarryx_u32(x101, x30, x58);
- uint32_t x106, uint8_t x107 = subborrow_u32(0x0, x61, 0xffffffff);
- uint32_t x109, uint8_t x110 = subborrow_u32(x107, x64, 0xffffffff);
- uint32_t x112, uint8_t x113 = subborrow_u32(x110, x67, 0xffffffff);
- uint32_t x115, uint8_t x116 = subborrow_u32(x113, x70, 0xffffffff);
- uint32_t x118, uint8_t x119 = subborrow_u32(x116, x73, 0xffffffff);
- uint32_t x121, uint8_t x122 = subborrow_u32(x119, x76, 0xffffffff);
- uint32_t x124, uint8_t x125 = subborrow_u32(x122, x79, 0xffffffff);
- uint32_t x127, uint8_t x128 = subborrow_u32(x125, x82, 0xfffffffd);
- uint32_t x130, uint8_t x131 = subborrow_u32(x128, x85, 0xffffffff);
- uint32_t x133, uint8_t x134 = subborrow_u32(x131, x88, 0xffffffff);
- uint32_t x136, uint8_t x137 = subborrow_u32(x134, x91, 0xffffffff);
- uint32_t x139, uint8_t x140 = subborrow_u32(x137, x94, 0xffffffff);
- uint32_t x142, uint8_t x143 = subborrow_u32(x140, x97, 0xffffffff);
- uint32_t x145, uint8_t x146 = subborrow_u32(x143, x100, 0xffffffff);
- uint32_t x148, uint8_t x149 = subborrow_u32(x146, x103, 0x3);
- uint32_t _, uint8_t x152 = subborrow_u32(x149, x104, 0x0);
- uint32_t x153 = cmovznz32(x152, x148, x103);
- uint32_t x154 = cmovznz32(x152, x145, x100);
- uint32_t x155 = cmovznz32(x152, x142, x97);
- uint32_t x156 = cmovznz32(x152, x139, x94);
- uint32_t x157 = cmovznz32(x152, x136, x91);
- uint32_t x158 = cmovznz32(x152, x133, x88);
- uint32_t x159 = cmovznz32(x152, x130, x85);
- uint32_t x160 = cmovznz32(x152, x127, x82);
- uint32_t x161 = cmovznz32(x152, x124, x79);
- uint32_t x162 = cmovznz32(x152, x121, x76);
- uint32_t x163 = cmovznz32(x152, x118, x73);
- uint32_t x164 = cmovznz32(x152, x115, x70);
- uint32_t x165 = cmovznz32(x152, x112, x67);
- uint32_t x166 = cmovznz32(x152, x109, x64);
- uint32_t x167 = cmovznz32(x152, x106, x61);
- return (x153, x154, x155, x156, x157, x158, x159, x160, x161, x162, x163, x164, x165, x166, x167))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e450m2e225m1_15limbs/feaddDisplay.v b/src/Specific/montgomery32_2e450m2e225m1_15limbs/feaddDisplay.v
deleted file mode 100644
index 80bbee60f..000000000
--- a/src/Specific/montgomery32_2e450m2e225m1_15limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e450m2e225m1_15limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e450m2e225m1_15limbs/femul.v b/src/Specific/montgomery32_2e450m2e225m1_15limbs/femul.v
deleted file mode 100644
index 49be40cc9..000000000
--- a/src/Specific/montgomery32_2e450m2e225m1_15limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e450m2e225m1_15limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e450m2e225m1_15limbs/femulDisplay.v b/src/Specific/montgomery32_2e450m2e225m1_15limbs/femulDisplay.v
deleted file mode 100644
index 4057056b8..000000000
--- a/src/Specific/montgomery32_2e450m2e225m1_15limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e450m2e225m1_15limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e450m2e225m1_15limbs/fenz.c b/src/Specific/montgomery32_2e450m2e225m1_15limbs/fenz.c
deleted file mode 100644
index d66853caf..000000000
--- a/src/Specific/montgomery32_2e450m2e225m1_15limbs/fenz.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[15]) {
- { const uint32_t x27 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x29 = (x28 | x27);
- { uint32_t x30 = (x26 | x29);
- { uint32_t x31 = (x24 | x30);
- { uint32_t x32 = (x22 | x31);
- { uint32_t x33 = (x20 | x32);
- { uint32_t x34 = (x18 | x33);
- { uint32_t x35 = (x16 | x34);
- { uint32_t x36 = (x14 | x35);
- { uint32_t x37 = (x12 | x36);
- { uint32_t x38 = (x10 | x37);
- { uint32_t x39 = (x8 | x38);
- { uint32_t x40 = (x6 | x39);
- { uint32_t x41 = (x4 | x40);
- { uint32_t x42 = (x2 | x41);
- out[0] = x42;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e450m2e225m1_15limbs/fenz.v b/src/Specific/montgomery32_2e450m2e225m1_15limbs/fenz.v
deleted file mode 100644
index 5d4164569..000000000
--- a/src/Specific/montgomery32_2e450m2e225m1_15limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e450m2e225m1_15limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e450m2e225m1_15limbs/fenzDisplay.log b/src/Specific/montgomery32_2e450m2e225m1_15limbs/fenzDisplay.log
deleted file mode 100644
index 8907c292b..000000000
--- a/src/Specific/montgomery32_2e450m2e225m1_15limbs/fenzDisplay.log
+++ /dev/null
@@ -1,21 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x27, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x29 = (x28 | x27);
- uint32_t x30 = (x26 | x29);
- uint32_t x31 = (x24 | x30);
- uint32_t x32 = (x22 | x31);
- uint32_t x33 = (x20 | x32);
- uint32_t x34 = (x18 | x33);
- uint32_t x35 = (x16 | x34);
- uint32_t x36 = (x14 | x35);
- uint32_t x37 = (x12 | x36);
- uint32_t x38 = (x10 | x37);
- uint32_t x39 = (x8 | x38);
- uint32_t x40 = (x6 | x39);
- uint32_t x41 = (x4 | x40);
- uint32_t x42 = (x2 | x41);
- return x42)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e450m2e225m1_15limbs/fenzDisplay.v b/src/Specific/montgomery32_2e450m2e225m1_15limbs/fenzDisplay.v
deleted file mode 100644
index 02aba4332..000000000
--- a/src/Specific/montgomery32_2e450m2e225m1_15limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e450m2e225m1_15limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e450m2e225m1_15limbs/feopp.v b/src/Specific/montgomery32_2e450m2e225m1_15limbs/feopp.v
deleted file mode 100644
index 50cc53453..000000000
--- a/src/Specific/montgomery32_2e450m2e225m1_15limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e450m2e225m1_15limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e450m2e225m1_15limbs/feoppDisplay.v b/src/Specific/montgomery32_2e450m2e225m1_15limbs/feoppDisplay.v
deleted file mode 100644
index 8adcfae5e..000000000
--- a/src/Specific/montgomery32_2e450m2e225m1_15limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e450m2e225m1_15limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e450m2e225m1_15limbs/fesquare.c b/src/Specific/montgomery32_2e450m2e225m1_15limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e450m2e225m1_15limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e450m2e225m1_15limbs/fesub.v b/src/Specific/montgomery32_2e450m2e225m1_15limbs/fesub.v
deleted file mode 100644
index fe0611b08..000000000
--- a/src/Specific/montgomery32_2e450m2e225m1_15limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e450m2e225m1_15limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e450m2e225m1_15limbs/fesubDisplay.v b/src/Specific/montgomery32_2e450m2e225m1_15limbs/fesubDisplay.v
deleted file mode 100644
index 862043852..000000000
--- a/src/Specific/montgomery32_2e450m2e225m1_15limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e450m2e225m1_15limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e450m2e225m1_15limbs/py_interpreter.sh b/src/Specific/montgomery32_2e450m2e225m1_15limbs/py_interpreter.sh
deleted file mode 100755
index 7129814fc..000000000
--- a/src/Specific/montgomery32_2e450m2e225m1_15limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**450 - 2**225 - 1' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e452m3_15limbs/CurveParameters.v b/src/Specific/montgomery32_2e452m3_15limbs/CurveParameters.v
deleted file mode 100644
index bc18572bd..000000000
--- a/src/Specific/montgomery32_2e452m3_15limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^452 - 3
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 15%nat;
- base := 32;
- bitwidth := 32;
- s := 2^452;
- c := [(1, 3)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e452m3_15limbs/Synthesis.v b/src/Specific/montgomery32_2e452m3_15limbs/Synthesis.v
deleted file mode 100644
index bddb2fd2a..000000000
--- a/src/Specific/montgomery32_2e452m3_15limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e452m3_15limbs.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/montgomery32_2e452m3_15limbs/compiler.sh b/src/Specific/montgomery32_2e452m3_15limbs/compiler.sh
deleted file mode 100755
index 04c8bef40..000000000
--- a/src/Specific/montgomery32_2e452m3_15limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<452) - 3' "$@"
diff --git a/src/Specific/montgomery32_2e452m3_15limbs/compilerxx.sh b/src/Specific/montgomery32_2e452m3_15limbs/compilerxx.sh
deleted file mode 100755
index e740d5e37..000000000
--- a/src/Specific/montgomery32_2e452m3_15limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<452) - 3' "$@"
diff --git a/src/Specific/montgomery32_2e452m3_15limbs/feadd.c b/src/Specific/montgomery32_2e452m3_15limbs/feadd.c
deleted file mode 100644
index d9de15f48..000000000
--- a/src/Specific/montgomery32_2e452m3_15limbs/feadd.c
+++ /dev/null
@@ -1,94 +0,0 @@
-static void feadd(uint32_t out[15], const uint32_t in1[15], const uint32_t in2[15]) {
- { const uint32_t x30 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x58 = in2[14];
- { const uint32_t x59 = in2[13];
- { const uint32_t x57 = in2[12];
- { const uint32_t x55 = in2[11];
- { const uint32_t x53 = in2[10];
- { const uint32_t x51 = in2[9];
- { const uint32_t x49 = in2[8];
- { const uint32_t x47 = in2[7];
- { const uint32_t x45 = in2[6];
- { const uint32_t x43 = in2[5];
- { const uint32_t x41 = in2[4];
- { const uint32_t x39 = in2[3];
- { const uint32_t x37 = in2[2];
- { const uint32_t x35 = in2[1];
- { const uint32_t x33 = in2[0];
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(0x0, x5, x33, &x61);
- { uint32_t x64; uint8_t x65 = _addcarryx_u32(x62, x7, x35, &x64);
- { uint32_t x67; uint8_t x68 = _addcarryx_u32(x65, x9, x37, &x67);
- { uint32_t x70; uint8_t x71 = _addcarryx_u32(x68, x11, x39, &x70);
- { uint32_t x73; uint8_t x74 = _addcarryx_u32(x71, x13, x41, &x73);
- { uint32_t x76; uint8_t x77 = _addcarryx_u32(x74, x15, x43, &x76);
- { uint32_t x79; uint8_t x80 = _addcarryx_u32(x77, x17, x45, &x79);
- { uint32_t x82; uint8_t x83 = _addcarryx_u32(x80, x19, x47, &x82);
- { uint32_t x85; uint8_t x86 = _addcarryx_u32(x83, x21, x49, &x85);
- { uint32_t x88; uint8_t x89 = _addcarryx_u32(x86, x23, x51, &x88);
- { uint32_t x91; uint8_t x92 = _addcarryx_u32(x89, x25, x53, &x91);
- { uint32_t x94; uint8_t x95 = _addcarryx_u32(x92, x27, x55, &x94);
- { uint32_t x97; uint8_t x98 = _addcarryx_u32(x95, x29, x57, &x97);
- { uint32_t x100; uint8_t x101 = _addcarryx_u32(x98, x31, x59, &x100);
- { uint32_t x103; uint8_t x104 = _addcarryx_u32(x101, x30, x58, &x103);
- { uint32_t x106; uint8_t x107 = _subborrow_u32(0x0, x61, 0xfffffffd, &x106);
- { uint32_t x109; uint8_t x110 = _subborrow_u32(x107, x64, 0xffffffff, &x109);
- { uint32_t x112; uint8_t x113 = _subborrow_u32(x110, x67, 0xffffffff, &x112);
- { uint32_t x115; uint8_t x116 = _subborrow_u32(x113, x70, 0xffffffff, &x115);
- { uint32_t x118; uint8_t x119 = _subborrow_u32(x116, x73, 0xffffffff, &x118);
- { uint32_t x121; uint8_t x122 = _subborrow_u32(x119, x76, 0xffffffff, &x121);
- { uint32_t x124; uint8_t x125 = _subborrow_u32(x122, x79, 0xffffffff, &x124);
- { uint32_t x127; uint8_t x128 = _subborrow_u32(x125, x82, 0xffffffff, &x127);
- { uint32_t x130; uint8_t x131 = _subborrow_u32(x128, x85, 0xffffffff, &x130);
- { uint32_t x133; uint8_t x134 = _subborrow_u32(x131, x88, 0xffffffff, &x133);
- { uint32_t x136; uint8_t x137 = _subborrow_u32(x134, x91, 0xffffffff, &x136);
- { uint32_t x139; uint8_t x140 = _subborrow_u32(x137, x94, 0xffffffff, &x139);
- { uint32_t x142; uint8_t x143 = _subborrow_u32(x140, x97, 0xffffffff, &x142);
- { uint32_t x145; uint8_t x146 = _subborrow_u32(x143, x100, 0xffffffff, &x145);
- { uint32_t x148; uint8_t x149 = _subborrow_u32(x146, x103, 0xf, &x148);
- { uint32_t _; uint8_t x152 = _subborrow_u32(x149, x104, 0x0, &_);
- { uint32_t x153 = cmovznz32(x152, x148, x103);
- { uint32_t x154 = cmovznz32(x152, x145, x100);
- { uint32_t x155 = cmovznz32(x152, x142, x97);
- { uint32_t x156 = cmovznz32(x152, x139, x94);
- { uint32_t x157 = cmovznz32(x152, x136, x91);
- { uint32_t x158 = cmovznz32(x152, x133, x88);
- { uint32_t x159 = cmovznz32(x152, x130, x85);
- { uint32_t x160 = cmovznz32(x152, x127, x82);
- { uint32_t x161 = cmovznz32(x152, x124, x79);
- { uint32_t x162 = cmovznz32(x152, x121, x76);
- { uint32_t x163 = cmovznz32(x152, x118, x73);
- { uint32_t x164 = cmovznz32(x152, x115, x70);
- { uint32_t x165 = cmovznz32(x152, x112, x67);
- { uint32_t x166 = cmovznz32(x152, x109, x64);
- { uint32_t x167 = cmovznz32(x152, x106, x61);
- out[0] = x167;
- out[1] = x166;
- out[2] = x165;
- out[3] = x164;
- out[4] = x163;
- out[5] = x162;
- out[6] = x161;
- out[7] = x160;
- out[8] = x159;
- out[9] = x158;
- out[10] = x157;
- out[11] = x156;
- out[12] = x155;
- out[13] = x154;
- out[14] = x153;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e452m3_15limbs/feadd.v b/src/Specific/montgomery32_2e452m3_15limbs/feadd.v
deleted file mode 100644
index 1db485153..000000000
--- a/src/Specific/montgomery32_2e452m3_15limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e452m3_15limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e452m3_15limbs/feaddDisplay.log b/src/Specific/montgomery32_2e452m3_15limbs/feaddDisplay.log
deleted file mode 100644
index 853ad2718..000000000
--- a/src/Specific/montgomery32_2e452m3_15limbs/feaddDisplay.log
+++ /dev/null
@@ -1,53 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x30, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x58, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33))%core,
- uint32_t x61, uint8_t x62 = addcarryx_u32(0x0, x5, x33);
- uint32_t x64, uint8_t x65 = addcarryx_u32(x62, x7, x35);
- uint32_t x67, uint8_t x68 = addcarryx_u32(x65, x9, x37);
- uint32_t x70, uint8_t x71 = addcarryx_u32(x68, x11, x39);
- uint32_t x73, uint8_t x74 = addcarryx_u32(x71, x13, x41);
- uint32_t x76, uint8_t x77 = addcarryx_u32(x74, x15, x43);
- uint32_t x79, uint8_t x80 = addcarryx_u32(x77, x17, x45);
- uint32_t x82, uint8_t x83 = addcarryx_u32(x80, x19, x47);
- uint32_t x85, uint8_t x86 = addcarryx_u32(x83, x21, x49);
- uint32_t x88, uint8_t x89 = addcarryx_u32(x86, x23, x51);
- uint32_t x91, uint8_t x92 = addcarryx_u32(x89, x25, x53);
- uint32_t x94, uint8_t x95 = addcarryx_u32(x92, x27, x55);
- uint32_t x97, uint8_t x98 = addcarryx_u32(x95, x29, x57);
- uint32_t x100, uint8_t x101 = addcarryx_u32(x98, x31, x59);
- uint32_t x103, uint8_t x104 = addcarryx_u32(x101, x30, x58);
- uint32_t x106, uint8_t x107 = subborrow_u32(0x0, x61, 0xfffffffd);
- uint32_t x109, uint8_t x110 = subborrow_u32(x107, x64, 0xffffffff);
- uint32_t x112, uint8_t x113 = subborrow_u32(x110, x67, 0xffffffff);
- uint32_t x115, uint8_t x116 = subborrow_u32(x113, x70, 0xffffffff);
- uint32_t x118, uint8_t x119 = subborrow_u32(x116, x73, 0xffffffff);
- uint32_t x121, uint8_t x122 = subborrow_u32(x119, x76, 0xffffffff);
- uint32_t x124, uint8_t x125 = subborrow_u32(x122, x79, 0xffffffff);
- uint32_t x127, uint8_t x128 = subborrow_u32(x125, x82, 0xffffffff);
- uint32_t x130, uint8_t x131 = subborrow_u32(x128, x85, 0xffffffff);
- uint32_t x133, uint8_t x134 = subborrow_u32(x131, x88, 0xffffffff);
- uint32_t x136, uint8_t x137 = subborrow_u32(x134, x91, 0xffffffff);
- uint32_t x139, uint8_t x140 = subborrow_u32(x137, x94, 0xffffffff);
- uint32_t x142, uint8_t x143 = subborrow_u32(x140, x97, 0xffffffff);
- uint32_t x145, uint8_t x146 = subborrow_u32(x143, x100, 0xffffffff);
- uint32_t x148, uint8_t x149 = subborrow_u32(x146, x103, 0xf);
- uint32_t _, uint8_t x152 = subborrow_u32(x149, x104, 0x0);
- uint32_t x153 = cmovznz32(x152, x148, x103);
- uint32_t x154 = cmovznz32(x152, x145, x100);
- uint32_t x155 = cmovznz32(x152, x142, x97);
- uint32_t x156 = cmovznz32(x152, x139, x94);
- uint32_t x157 = cmovznz32(x152, x136, x91);
- uint32_t x158 = cmovznz32(x152, x133, x88);
- uint32_t x159 = cmovznz32(x152, x130, x85);
- uint32_t x160 = cmovznz32(x152, x127, x82);
- uint32_t x161 = cmovznz32(x152, x124, x79);
- uint32_t x162 = cmovznz32(x152, x121, x76);
- uint32_t x163 = cmovznz32(x152, x118, x73);
- uint32_t x164 = cmovznz32(x152, x115, x70);
- uint32_t x165 = cmovznz32(x152, x112, x67);
- uint32_t x166 = cmovznz32(x152, x109, x64);
- uint32_t x167 = cmovznz32(x152, x106, x61);
- return (x153, x154, x155, x156, x157, x158, x159, x160, x161, x162, x163, x164, x165, x166, x167))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e452m3_15limbs/feaddDisplay.v b/src/Specific/montgomery32_2e452m3_15limbs/feaddDisplay.v
deleted file mode 100644
index 2772e6928..000000000
--- a/src/Specific/montgomery32_2e452m3_15limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e452m3_15limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e452m3_15limbs/femul.v b/src/Specific/montgomery32_2e452m3_15limbs/femul.v
deleted file mode 100644
index abaf9cb73..000000000
--- a/src/Specific/montgomery32_2e452m3_15limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e452m3_15limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e452m3_15limbs/femulDisplay.v b/src/Specific/montgomery32_2e452m3_15limbs/femulDisplay.v
deleted file mode 100644
index ed9d3a85e..000000000
--- a/src/Specific/montgomery32_2e452m3_15limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e452m3_15limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e452m3_15limbs/fenz.c b/src/Specific/montgomery32_2e452m3_15limbs/fenz.c
deleted file mode 100644
index d66853caf..000000000
--- a/src/Specific/montgomery32_2e452m3_15limbs/fenz.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[15]) {
- { const uint32_t x27 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x29 = (x28 | x27);
- { uint32_t x30 = (x26 | x29);
- { uint32_t x31 = (x24 | x30);
- { uint32_t x32 = (x22 | x31);
- { uint32_t x33 = (x20 | x32);
- { uint32_t x34 = (x18 | x33);
- { uint32_t x35 = (x16 | x34);
- { uint32_t x36 = (x14 | x35);
- { uint32_t x37 = (x12 | x36);
- { uint32_t x38 = (x10 | x37);
- { uint32_t x39 = (x8 | x38);
- { uint32_t x40 = (x6 | x39);
- { uint32_t x41 = (x4 | x40);
- { uint32_t x42 = (x2 | x41);
- out[0] = x42;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e452m3_15limbs/fenz.v b/src/Specific/montgomery32_2e452m3_15limbs/fenz.v
deleted file mode 100644
index 20d17e800..000000000
--- a/src/Specific/montgomery32_2e452m3_15limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e452m3_15limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e452m3_15limbs/fenzDisplay.log b/src/Specific/montgomery32_2e452m3_15limbs/fenzDisplay.log
deleted file mode 100644
index 8907c292b..000000000
--- a/src/Specific/montgomery32_2e452m3_15limbs/fenzDisplay.log
+++ /dev/null
@@ -1,21 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x27, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x29 = (x28 | x27);
- uint32_t x30 = (x26 | x29);
- uint32_t x31 = (x24 | x30);
- uint32_t x32 = (x22 | x31);
- uint32_t x33 = (x20 | x32);
- uint32_t x34 = (x18 | x33);
- uint32_t x35 = (x16 | x34);
- uint32_t x36 = (x14 | x35);
- uint32_t x37 = (x12 | x36);
- uint32_t x38 = (x10 | x37);
- uint32_t x39 = (x8 | x38);
- uint32_t x40 = (x6 | x39);
- uint32_t x41 = (x4 | x40);
- uint32_t x42 = (x2 | x41);
- return x42)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e452m3_15limbs/fenzDisplay.v b/src/Specific/montgomery32_2e452m3_15limbs/fenzDisplay.v
deleted file mode 100644
index 39797abc9..000000000
--- a/src/Specific/montgomery32_2e452m3_15limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e452m3_15limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e452m3_15limbs/feopp.v b/src/Specific/montgomery32_2e452m3_15limbs/feopp.v
deleted file mode 100644
index ee247668c..000000000
--- a/src/Specific/montgomery32_2e452m3_15limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e452m3_15limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e452m3_15limbs/feoppDisplay.v b/src/Specific/montgomery32_2e452m3_15limbs/feoppDisplay.v
deleted file mode 100644
index f4f483596..000000000
--- a/src/Specific/montgomery32_2e452m3_15limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e452m3_15limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e452m3_15limbs/fesquare.c b/src/Specific/montgomery32_2e452m3_15limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e452m3_15limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e452m3_15limbs/fesub.v b/src/Specific/montgomery32_2e452m3_15limbs/fesub.v
deleted file mode 100644
index a710bfde7..000000000
--- a/src/Specific/montgomery32_2e452m3_15limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e452m3_15limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e452m3_15limbs/fesubDisplay.v b/src/Specific/montgomery32_2e452m3_15limbs/fesubDisplay.v
deleted file mode 100644
index e9406db01..000000000
--- a/src/Specific/montgomery32_2e452m3_15limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e452m3_15limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e452m3_15limbs/py_interpreter.sh b/src/Specific/montgomery32_2e452m3_15limbs/py_interpreter.sh
deleted file mode 100755
index 4c5c4c1f8..000000000
--- a/src/Specific/montgomery32_2e452m3_15limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**452 - 3' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e468m17_15limbs/CurveParameters.v b/src/Specific/montgomery32_2e468m17_15limbs/CurveParameters.v
deleted file mode 100644
index 3f2a2d057..000000000
--- a/src/Specific/montgomery32_2e468m17_15limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^468 - 17
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 15%nat;
- base := 32;
- bitwidth := 32;
- s := 2^468;
- c := [(1, 17)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e468m17_15limbs/Synthesis.v b/src/Specific/montgomery32_2e468m17_15limbs/Synthesis.v
deleted file mode 100644
index 28df8e038..000000000
--- a/src/Specific/montgomery32_2e468m17_15limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e468m17_15limbs.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/montgomery32_2e468m17_15limbs/compiler.sh b/src/Specific/montgomery32_2e468m17_15limbs/compiler.sh
deleted file mode 100755
index 7e39e69c2..000000000
--- a/src/Specific/montgomery32_2e468m17_15limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='59' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<468) - 17' "$@"
diff --git a/src/Specific/montgomery32_2e468m17_15limbs/compilerxx.sh b/src/Specific/montgomery32_2e468m17_15limbs/compilerxx.sh
deleted file mode 100755
index 650b04aed..000000000
--- a/src/Specific/montgomery32_2e468m17_15limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='59' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<468) - 17' "$@"
diff --git a/src/Specific/montgomery32_2e468m17_15limbs/feadd.c b/src/Specific/montgomery32_2e468m17_15limbs/feadd.c
deleted file mode 100644
index 0ca8876bd..000000000
--- a/src/Specific/montgomery32_2e468m17_15limbs/feadd.c
+++ /dev/null
@@ -1,94 +0,0 @@
-static void feadd(uint32_t out[15], const uint32_t in1[15], const uint32_t in2[15]) {
- { const uint32_t x30 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x58 = in2[14];
- { const uint32_t x59 = in2[13];
- { const uint32_t x57 = in2[12];
- { const uint32_t x55 = in2[11];
- { const uint32_t x53 = in2[10];
- { const uint32_t x51 = in2[9];
- { const uint32_t x49 = in2[8];
- { const uint32_t x47 = in2[7];
- { const uint32_t x45 = in2[6];
- { const uint32_t x43 = in2[5];
- { const uint32_t x41 = in2[4];
- { const uint32_t x39 = in2[3];
- { const uint32_t x37 = in2[2];
- { const uint32_t x35 = in2[1];
- { const uint32_t x33 = in2[0];
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(0x0, x5, x33, &x61);
- { uint32_t x64; uint8_t x65 = _addcarryx_u32(x62, x7, x35, &x64);
- { uint32_t x67; uint8_t x68 = _addcarryx_u32(x65, x9, x37, &x67);
- { uint32_t x70; uint8_t x71 = _addcarryx_u32(x68, x11, x39, &x70);
- { uint32_t x73; uint8_t x74 = _addcarryx_u32(x71, x13, x41, &x73);
- { uint32_t x76; uint8_t x77 = _addcarryx_u32(x74, x15, x43, &x76);
- { uint32_t x79; uint8_t x80 = _addcarryx_u32(x77, x17, x45, &x79);
- { uint32_t x82; uint8_t x83 = _addcarryx_u32(x80, x19, x47, &x82);
- { uint32_t x85; uint8_t x86 = _addcarryx_u32(x83, x21, x49, &x85);
- { uint32_t x88; uint8_t x89 = _addcarryx_u32(x86, x23, x51, &x88);
- { uint32_t x91; uint8_t x92 = _addcarryx_u32(x89, x25, x53, &x91);
- { uint32_t x94; uint8_t x95 = _addcarryx_u32(x92, x27, x55, &x94);
- { uint32_t x97; uint8_t x98 = _addcarryx_u32(x95, x29, x57, &x97);
- { uint32_t x100; uint8_t x101 = _addcarryx_u32(x98, x31, x59, &x100);
- { uint32_t x103; uint8_t x104 = _addcarryx_u32(x101, x30, x58, &x103);
- { uint32_t x106; uint8_t x107 = _subborrow_u32(0x0, x61, 0xffffffef, &x106);
- { uint32_t x109; uint8_t x110 = _subborrow_u32(x107, x64, 0xffffffff, &x109);
- { uint32_t x112; uint8_t x113 = _subborrow_u32(x110, x67, 0xffffffff, &x112);
- { uint32_t x115; uint8_t x116 = _subborrow_u32(x113, x70, 0xffffffff, &x115);
- { uint32_t x118; uint8_t x119 = _subborrow_u32(x116, x73, 0xffffffff, &x118);
- { uint32_t x121; uint8_t x122 = _subborrow_u32(x119, x76, 0xffffffff, &x121);
- { uint32_t x124; uint8_t x125 = _subborrow_u32(x122, x79, 0xffffffff, &x124);
- { uint32_t x127; uint8_t x128 = _subborrow_u32(x125, x82, 0xffffffff, &x127);
- { uint32_t x130; uint8_t x131 = _subborrow_u32(x128, x85, 0xffffffff, &x130);
- { uint32_t x133; uint8_t x134 = _subborrow_u32(x131, x88, 0xffffffff, &x133);
- { uint32_t x136; uint8_t x137 = _subborrow_u32(x134, x91, 0xffffffff, &x136);
- { uint32_t x139; uint8_t x140 = _subborrow_u32(x137, x94, 0xffffffff, &x139);
- { uint32_t x142; uint8_t x143 = _subborrow_u32(x140, x97, 0xffffffff, &x142);
- { uint32_t x145; uint8_t x146 = _subborrow_u32(x143, x100, 0xffffffff, &x145);
- { uint32_t x148; uint8_t x149 = _subborrow_u32(x146, x103, 0xfffff, &x148);
- { uint32_t _; uint8_t x152 = _subborrow_u32(x149, x104, 0x0, &_);
- { uint32_t x153 = cmovznz32(x152, x148, x103);
- { uint32_t x154 = cmovznz32(x152, x145, x100);
- { uint32_t x155 = cmovznz32(x152, x142, x97);
- { uint32_t x156 = cmovznz32(x152, x139, x94);
- { uint32_t x157 = cmovznz32(x152, x136, x91);
- { uint32_t x158 = cmovznz32(x152, x133, x88);
- { uint32_t x159 = cmovznz32(x152, x130, x85);
- { uint32_t x160 = cmovznz32(x152, x127, x82);
- { uint32_t x161 = cmovznz32(x152, x124, x79);
- { uint32_t x162 = cmovznz32(x152, x121, x76);
- { uint32_t x163 = cmovznz32(x152, x118, x73);
- { uint32_t x164 = cmovznz32(x152, x115, x70);
- { uint32_t x165 = cmovznz32(x152, x112, x67);
- { uint32_t x166 = cmovznz32(x152, x109, x64);
- { uint32_t x167 = cmovznz32(x152, x106, x61);
- out[0] = x167;
- out[1] = x166;
- out[2] = x165;
- out[3] = x164;
- out[4] = x163;
- out[5] = x162;
- out[6] = x161;
- out[7] = x160;
- out[8] = x159;
- out[9] = x158;
- out[10] = x157;
- out[11] = x156;
- out[12] = x155;
- out[13] = x154;
- out[14] = x153;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e468m17_15limbs/feadd.v b/src/Specific/montgomery32_2e468m17_15limbs/feadd.v
deleted file mode 100644
index 91f007d4e..000000000
--- a/src/Specific/montgomery32_2e468m17_15limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e468m17_15limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e468m17_15limbs/feaddDisplay.log b/src/Specific/montgomery32_2e468m17_15limbs/feaddDisplay.log
deleted file mode 100644
index 49636caac..000000000
--- a/src/Specific/montgomery32_2e468m17_15limbs/feaddDisplay.log
+++ /dev/null
@@ -1,53 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x30, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x58, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33))%core,
- uint32_t x61, uint8_t x62 = addcarryx_u32(0x0, x5, x33);
- uint32_t x64, uint8_t x65 = addcarryx_u32(x62, x7, x35);
- uint32_t x67, uint8_t x68 = addcarryx_u32(x65, x9, x37);
- uint32_t x70, uint8_t x71 = addcarryx_u32(x68, x11, x39);
- uint32_t x73, uint8_t x74 = addcarryx_u32(x71, x13, x41);
- uint32_t x76, uint8_t x77 = addcarryx_u32(x74, x15, x43);
- uint32_t x79, uint8_t x80 = addcarryx_u32(x77, x17, x45);
- uint32_t x82, uint8_t x83 = addcarryx_u32(x80, x19, x47);
- uint32_t x85, uint8_t x86 = addcarryx_u32(x83, x21, x49);
- uint32_t x88, uint8_t x89 = addcarryx_u32(x86, x23, x51);
- uint32_t x91, uint8_t x92 = addcarryx_u32(x89, x25, x53);
- uint32_t x94, uint8_t x95 = addcarryx_u32(x92, x27, x55);
- uint32_t x97, uint8_t x98 = addcarryx_u32(x95, x29, x57);
- uint32_t x100, uint8_t x101 = addcarryx_u32(x98, x31, x59);
- uint32_t x103, uint8_t x104 = addcarryx_u32(x101, x30, x58);
- uint32_t x106, uint8_t x107 = subborrow_u32(0x0, x61, 0xffffffef);
- uint32_t x109, uint8_t x110 = subborrow_u32(x107, x64, 0xffffffff);
- uint32_t x112, uint8_t x113 = subborrow_u32(x110, x67, 0xffffffff);
- uint32_t x115, uint8_t x116 = subborrow_u32(x113, x70, 0xffffffff);
- uint32_t x118, uint8_t x119 = subborrow_u32(x116, x73, 0xffffffff);
- uint32_t x121, uint8_t x122 = subborrow_u32(x119, x76, 0xffffffff);
- uint32_t x124, uint8_t x125 = subborrow_u32(x122, x79, 0xffffffff);
- uint32_t x127, uint8_t x128 = subborrow_u32(x125, x82, 0xffffffff);
- uint32_t x130, uint8_t x131 = subborrow_u32(x128, x85, 0xffffffff);
- uint32_t x133, uint8_t x134 = subborrow_u32(x131, x88, 0xffffffff);
- uint32_t x136, uint8_t x137 = subborrow_u32(x134, x91, 0xffffffff);
- uint32_t x139, uint8_t x140 = subborrow_u32(x137, x94, 0xffffffff);
- uint32_t x142, uint8_t x143 = subborrow_u32(x140, x97, 0xffffffff);
- uint32_t x145, uint8_t x146 = subborrow_u32(x143, x100, 0xffffffff);
- uint32_t x148, uint8_t x149 = subborrow_u32(x146, x103, 0xfffff);
- uint32_t _, uint8_t x152 = subborrow_u32(x149, x104, 0x0);
- uint32_t x153 = cmovznz32(x152, x148, x103);
- uint32_t x154 = cmovznz32(x152, x145, x100);
- uint32_t x155 = cmovznz32(x152, x142, x97);
- uint32_t x156 = cmovznz32(x152, x139, x94);
- uint32_t x157 = cmovznz32(x152, x136, x91);
- uint32_t x158 = cmovznz32(x152, x133, x88);
- uint32_t x159 = cmovznz32(x152, x130, x85);
- uint32_t x160 = cmovznz32(x152, x127, x82);
- uint32_t x161 = cmovznz32(x152, x124, x79);
- uint32_t x162 = cmovznz32(x152, x121, x76);
- uint32_t x163 = cmovznz32(x152, x118, x73);
- uint32_t x164 = cmovznz32(x152, x115, x70);
- uint32_t x165 = cmovznz32(x152, x112, x67);
- uint32_t x166 = cmovznz32(x152, x109, x64);
- uint32_t x167 = cmovznz32(x152, x106, x61);
- return (x153, x154, x155, x156, x157, x158, x159, x160, x161, x162, x163, x164, x165, x166, x167))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e468m17_15limbs/feaddDisplay.v b/src/Specific/montgomery32_2e468m17_15limbs/feaddDisplay.v
deleted file mode 100644
index e67ffcf1f..000000000
--- a/src/Specific/montgomery32_2e468m17_15limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e468m17_15limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e468m17_15limbs/femul.v b/src/Specific/montgomery32_2e468m17_15limbs/femul.v
deleted file mode 100644
index 71f5be9b8..000000000
--- a/src/Specific/montgomery32_2e468m17_15limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e468m17_15limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e468m17_15limbs/femulDisplay.v b/src/Specific/montgomery32_2e468m17_15limbs/femulDisplay.v
deleted file mode 100644
index e4a2e53c3..000000000
--- a/src/Specific/montgomery32_2e468m17_15limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e468m17_15limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e468m17_15limbs/fenz.c b/src/Specific/montgomery32_2e468m17_15limbs/fenz.c
deleted file mode 100644
index d66853caf..000000000
--- a/src/Specific/montgomery32_2e468m17_15limbs/fenz.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[15]) {
- { const uint32_t x27 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x29 = (x28 | x27);
- { uint32_t x30 = (x26 | x29);
- { uint32_t x31 = (x24 | x30);
- { uint32_t x32 = (x22 | x31);
- { uint32_t x33 = (x20 | x32);
- { uint32_t x34 = (x18 | x33);
- { uint32_t x35 = (x16 | x34);
- { uint32_t x36 = (x14 | x35);
- { uint32_t x37 = (x12 | x36);
- { uint32_t x38 = (x10 | x37);
- { uint32_t x39 = (x8 | x38);
- { uint32_t x40 = (x6 | x39);
- { uint32_t x41 = (x4 | x40);
- { uint32_t x42 = (x2 | x41);
- out[0] = x42;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e468m17_15limbs/fenz.v b/src/Specific/montgomery32_2e468m17_15limbs/fenz.v
deleted file mode 100644
index 85427c9a0..000000000
--- a/src/Specific/montgomery32_2e468m17_15limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e468m17_15limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e468m17_15limbs/fenzDisplay.log b/src/Specific/montgomery32_2e468m17_15limbs/fenzDisplay.log
deleted file mode 100644
index 8907c292b..000000000
--- a/src/Specific/montgomery32_2e468m17_15limbs/fenzDisplay.log
+++ /dev/null
@@ -1,21 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x27, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x29 = (x28 | x27);
- uint32_t x30 = (x26 | x29);
- uint32_t x31 = (x24 | x30);
- uint32_t x32 = (x22 | x31);
- uint32_t x33 = (x20 | x32);
- uint32_t x34 = (x18 | x33);
- uint32_t x35 = (x16 | x34);
- uint32_t x36 = (x14 | x35);
- uint32_t x37 = (x12 | x36);
- uint32_t x38 = (x10 | x37);
- uint32_t x39 = (x8 | x38);
- uint32_t x40 = (x6 | x39);
- uint32_t x41 = (x4 | x40);
- uint32_t x42 = (x2 | x41);
- return x42)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e468m17_15limbs/fenzDisplay.v b/src/Specific/montgomery32_2e468m17_15limbs/fenzDisplay.v
deleted file mode 100644
index e242c5f5d..000000000
--- a/src/Specific/montgomery32_2e468m17_15limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e468m17_15limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e468m17_15limbs/feopp.v b/src/Specific/montgomery32_2e468m17_15limbs/feopp.v
deleted file mode 100644
index 40484e87f..000000000
--- a/src/Specific/montgomery32_2e468m17_15limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e468m17_15limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e468m17_15limbs/feoppDisplay.v b/src/Specific/montgomery32_2e468m17_15limbs/feoppDisplay.v
deleted file mode 100644
index 91a273b7d..000000000
--- a/src/Specific/montgomery32_2e468m17_15limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e468m17_15limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e468m17_15limbs/fesquare.c b/src/Specific/montgomery32_2e468m17_15limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e468m17_15limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e468m17_15limbs/fesub.v b/src/Specific/montgomery32_2e468m17_15limbs/fesub.v
deleted file mode 100644
index 69d6b56f6..000000000
--- a/src/Specific/montgomery32_2e468m17_15limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e468m17_15limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e468m17_15limbs/fesubDisplay.v b/src/Specific/montgomery32_2e468m17_15limbs/fesubDisplay.v
deleted file mode 100644
index 2276c4fbc..000000000
--- a/src/Specific/montgomery32_2e468m17_15limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e468m17_15limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e468m17_15limbs/py_interpreter.sh b/src/Specific/montgomery32_2e468m17_15limbs/py_interpreter.sh
deleted file mode 100755
index 7bdf454ae..000000000
--- a/src/Specific/montgomery32_2e468m17_15limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**468 - 17' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e480m2e240m1_15limbs/CurveParameters.v b/src/Specific/montgomery32_2e480m2e240m1_15limbs/CurveParameters.v
deleted file mode 100644
index df2d34dd7..000000000
--- a/src/Specific/montgomery32_2e480m2e240m1_15limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^480 - 2^240 - 1
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 15%nat;
- base := 32;
- bitwidth := 32;
- s := 2^480;
- c := [(1, 1); (2^240, 1)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e480m2e240m1_15limbs/Synthesis.v b/src/Specific/montgomery32_2e480m2e240m1_15limbs/Synthesis.v
deleted file mode 100644
index 6a6551985..000000000
--- a/src/Specific/montgomery32_2e480m2e240m1_15limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e480m2e240m1_15limbs.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/montgomery32_2e480m2e240m1_15limbs/compiler.sh b/src/Specific/montgomery32_2e480m2e240m1_15limbs/compiler.sh
deleted file mode 100755
index 897051c3d..000000000
--- a/src/Specific/montgomery32_2e480m2e240m1_15limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='60' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e480m2e240m1_15limbs/compilerxx.sh b/src/Specific/montgomery32_2e480m2e240m1_15limbs/compilerxx.sh
deleted file mode 100755
index e65b740d7..000000000
--- a/src/Specific/montgomery32_2e480m2e240m1_15limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='60' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e480m2e240m1_15limbs/feadd.c b/src/Specific/montgomery32_2e480m2e240m1_15limbs/feadd.c
deleted file mode 100644
index d56ddb00f..000000000
--- a/src/Specific/montgomery32_2e480m2e240m1_15limbs/feadd.c
+++ /dev/null
@@ -1,94 +0,0 @@
-static void feadd(uint32_t out[15], const uint32_t in1[15], const uint32_t in2[15]) {
- { const uint32_t x30 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x58 = in2[14];
- { const uint32_t x59 = in2[13];
- { const uint32_t x57 = in2[12];
- { const uint32_t x55 = in2[11];
- { const uint32_t x53 = in2[10];
- { const uint32_t x51 = in2[9];
- { const uint32_t x49 = in2[8];
- { const uint32_t x47 = in2[7];
- { const uint32_t x45 = in2[6];
- { const uint32_t x43 = in2[5];
- { const uint32_t x41 = in2[4];
- { const uint32_t x39 = in2[3];
- { const uint32_t x37 = in2[2];
- { const uint32_t x35 = in2[1];
- { const uint32_t x33 = in2[0];
- { uint32_t x61; uint8_t x62 = _addcarryx_u32(0x0, x5, x33, &x61);
- { uint32_t x64; uint8_t x65 = _addcarryx_u32(x62, x7, x35, &x64);
- { uint32_t x67; uint8_t x68 = _addcarryx_u32(x65, x9, x37, &x67);
- { uint32_t x70; uint8_t x71 = _addcarryx_u32(x68, x11, x39, &x70);
- { uint32_t x73; uint8_t x74 = _addcarryx_u32(x71, x13, x41, &x73);
- { uint32_t x76; uint8_t x77 = _addcarryx_u32(x74, x15, x43, &x76);
- { uint32_t x79; uint8_t x80 = _addcarryx_u32(x77, x17, x45, &x79);
- { uint32_t x82; uint8_t x83 = _addcarryx_u32(x80, x19, x47, &x82);
- { uint32_t x85; uint8_t x86 = _addcarryx_u32(x83, x21, x49, &x85);
- { uint32_t x88; uint8_t x89 = _addcarryx_u32(x86, x23, x51, &x88);
- { uint32_t x91; uint8_t x92 = _addcarryx_u32(x89, x25, x53, &x91);
- { uint32_t x94; uint8_t x95 = _addcarryx_u32(x92, x27, x55, &x94);
- { uint32_t x97; uint8_t x98 = _addcarryx_u32(x95, x29, x57, &x97);
- { uint32_t x100; uint8_t x101 = _addcarryx_u32(x98, x31, x59, &x100);
- { uint32_t x103; uint8_t x104 = _addcarryx_u32(x101, x30, x58, &x103);
- { uint32_t x106; uint8_t x107 = _subborrow_u32(0x0, x61, 0xffffffff, &x106);
- { uint32_t x109; uint8_t x110 = _subborrow_u32(x107, x64, 0xffffffff, &x109);
- { uint32_t x112; uint8_t x113 = _subborrow_u32(x110, x67, 0xffffffff, &x112);
- { uint32_t x115; uint8_t x116 = _subborrow_u32(x113, x70, 0xffffffff, &x115);
- { uint32_t x118; uint8_t x119 = _subborrow_u32(x116, x73, 0xffffffff, &x118);
- { uint32_t x121; uint8_t x122 = _subborrow_u32(x119, x76, 0xffffffff, &x121);
- { uint32_t x124; uint8_t x125 = _subborrow_u32(x122, x79, 0xffffffff, &x124);
- { uint32_t x127; uint8_t x128 = _subborrow_u32(x125, x82, 0xfffeffff, &x127);
- { uint32_t x130; uint8_t x131 = _subborrow_u32(x128, x85, 0xffffffff, &x130);
- { uint32_t x133; uint8_t x134 = _subborrow_u32(x131, x88, 0xffffffff, &x133);
- { uint32_t x136; uint8_t x137 = _subborrow_u32(x134, x91, 0xffffffff, &x136);
- { uint32_t x139; uint8_t x140 = _subborrow_u32(x137, x94, 0xffffffff, &x139);
- { uint32_t x142; uint8_t x143 = _subborrow_u32(x140, x97, 0xffffffff, &x142);
- { uint32_t x145; uint8_t x146 = _subborrow_u32(x143, x100, 0xffffffff, &x145);
- { uint32_t x148; uint8_t x149 = _subborrow_u32(x146, x103, 0xffffffff, &x148);
- { uint32_t _; uint8_t x152 = _subborrow_u32(x149, x104, 0x0, &_);
- { uint32_t x153 = cmovznz32(x152, x148, x103);
- { uint32_t x154 = cmovznz32(x152, x145, x100);
- { uint32_t x155 = cmovznz32(x152, x142, x97);
- { uint32_t x156 = cmovznz32(x152, x139, x94);
- { uint32_t x157 = cmovznz32(x152, x136, x91);
- { uint32_t x158 = cmovznz32(x152, x133, x88);
- { uint32_t x159 = cmovznz32(x152, x130, x85);
- { uint32_t x160 = cmovznz32(x152, x127, x82);
- { uint32_t x161 = cmovznz32(x152, x124, x79);
- { uint32_t x162 = cmovznz32(x152, x121, x76);
- { uint32_t x163 = cmovznz32(x152, x118, x73);
- { uint32_t x164 = cmovznz32(x152, x115, x70);
- { uint32_t x165 = cmovznz32(x152, x112, x67);
- { uint32_t x166 = cmovznz32(x152, x109, x64);
- { uint32_t x167 = cmovznz32(x152, x106, x61);
- out[0] = x167;
- out[1] = x166;
- out[2] = x165;
- out[3] = x164;
- out[4] = x163;
- out[5] = x162;
- out[6] = x161;
- out[7] = x160;
- out[8] = x159;
- out[9] = x158;
- out[10] = x157;
- out[11] = x156;
- out[12] = x155;
- out[13] = x154;
- out[14] = x153;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e480m2e240m1_15limbs/feadd.v b/src/Specific/montgomery32_2e480m2e240m1_15limbs/feadd.v
deleted file mode 100644
index 05b22310a..000000000
--- a/src/Specific/montgomery32_2e480m2e240m1_15limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e480m2e240m1_15limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e480m2e240m1_15limbs/feaddDisplay.log b/src/Specific/montgomery32_2e480m2e240m1_15limbs/feaddDisplay.log
deleted file mode 100644
index 89d8ec5de..000000000
--- a/src/Specific/montgomery32_2e480m2e240m1_15limbs/feaddDisplay.log
+++ /dev/null
@@ -1,53 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x30, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x58, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33))%core,
- uint32_t x61, uint8_t x62 = addcarryx_u32(0x0, x5, x33);
- uint32_t x64, uint8_t x65 = addcarryx_u32(x62, x7, x35);
- uint32_t x67, uint8_t x68 = addcarryx_u32(x65, x9, x37);
- uint32_t x70, uint8_t x71 = addcarryx_u32(x68, x11, x39);
- uint32_t x73, uint8_t x74 = addcarryx_u32(x71, x13, x41);
- uint32_t x76, uint8_t x77 = addcarryx_u32(x74, x15, x43);
- uint32_t x79, uint8_t x80 = addcarryx_u32(x77, x17, x45);
- uint32_t x82, uint8_t x83 = addcarryx_u32(x80, x19, x47);
- uint32_t x85, uint8_t x86 = addcarryx_u32(x83, x21, x49);
- uint32_t x88, uint8_t x89 = addcarryx_u32(x86, x23, x51);
- uint32_t x91, uint8_t x92 = addcarryx_u32(x89, x25, x53);
- uint32_t x94, uint8_t x95 = addcarryx_u32(x92, x27, x55);
- uint32_t x97, uint8_t x98 = addcarryx_u32(x95, x29, x57);
- uint32_t x100, uint8_t x101 = addcarryx_u32(x98, x31, x59);
- uint32_t x103, uint8_t x104 = addcarryx_u32(x101, x30, x58);
- uint32_t x106, uint8_t x107 = subborrow_u32(0x0, x61, 0xffffffff);
- uint32_t x109, uint8_t x110 = subborrow_u32(x107, x64, 0xffffffff);
- uint32_t x112, uint8_t x113 = subborrow_u32(x110, x67, 0xffffffff);
- uint32_t x115, uint8_t x116 = subborrow_u32(x113, x70, 0xffffffff);
- uint32_t x118, uint8_t x119 = subborrow_u32(x116, x73, 0xffffffff);
- uint32_t x121, uint8_t x122 = subborrow_u32(x119, x76, 0xffffffff);
- uint32_t x124, uint8_t x125 = subborrow_u32(x122, x79, 0xffffffff);
- uint32_t x127, uint8_t x128 = subborrow_u32(x125, x82, 0xfffeffff);
- uint32_t x130, uint8_t x131 = subborrow_u32(x128, x85, 0xffffffff);
- uint32_t x133, uint8_t x134 = subborrow_u32(x131, x88, 0xffffffff);
- uint32_t x136, uint8_t x137 = subborrow_u32(x134, x91, 0xffffffff);
- uint32_t x139, uint8_t x140 = subborrow_u32(x137, x94, 0xffffffff);
- uint32_t x142, uint8_t x143 = subborrow_u32(x140, x97, 0xffffffff);
- uint32_t x145, uint8_t x146 = subborrow_u32(x143, x100, 0xffffffff);
- uint32_t x148, uint8_t x149 = subborrow_u32(x146, x103, 0xffffffff);
- uint32_t _, uint8_t x152 = subborrow_u32(x149, x104, 0x0);
- uint32_t x153 = cmovznz32(x152, x148, x103);
- uint32_t x154 = cmovznz32(x152, x145, x100);
- uint32_t x155 = cmovznz32(x152, x142, x97);
- uint32_t x156 = cmovznz32(x152, x139, x94);
- uint32_t x157 = cmovznz32(x152, x136, x91);
- uint32_t x158 = cmovznz32(x152, x133, x88);
- uint32_t x159 = cmovznz32(x152, x130, x85);
- uint32_t x160 = cmovznz32(x152, x127, x82);
- uint32_t x161 = cmovznz32(x152, x124, x79);
- uint32_t x162 = cmovznz32(x152, x121, x76);
- uint32_t x163 = cmovznz32(x152, x118, x73);
- uint32_t x164 = cmovznz32(x152, x115, x70);
- uint32_t x165 = cmovznz32(x152, x112, x67);
- uint32_t x166 = cmovznz32(x152, x109, x64);
- uint32_t x167 = cmovznz32(x152, x106, x61);
- return (x153, x154, x155, x156, x157, x158, x159, x160, x161, x162, x163, x164, x165, x166, x167))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e480m2e240m1_15limbs/feaddDisplay.v b/src/Specific/montgomery32_2e480m2e240m1_15limbs/feaddDisplay.v
deleted file mode 100644
index 8674277be..000000000
--- a/src/Specific/montgomery32_2e480m2e240m1_15limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e480m2e240m1_15limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e480m2e240m1_15limbs/femul.v b/src/Specific/montgomery32_2e480m2e240m1_15limbs/femul.v
deleted file mode 100644
index 49cc90f7f..000000000
--- a/src/Specific/montgomery32_2e480m2e240m1_15limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e480m2e240m1_15limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e480m2e240m1_15limbs/femulDisplay.v b/src/Specific/montgomery32_2e480m2e240m1_15limbs/femulDisplay.v
deleted file mode 100644
index 4651a41f2..000000000
--- a/src/Specific/montgomery32_2e480m2e240m1_15limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e480m2e240m1_15limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e480m2e240m1_15limbs/fenz.c b/src/Specific/montgomery32_2e480m2e240m1_15limbs/fenz.c
deleted file mode 100644
index d66853caf..000000000
--- a/src/Specific/montgomery32_2e480m2e240m1_15limbs/fenz.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[15]) {
- { const uint32_t x27 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x29 = (x28 | x27);
- { uint32_t x30 = (x26 | x29);
- { uint32_t x31 = (x24 | x30);
- { uint32_t x32 = (x22 | x31);
- { uint32_t x33 = (x20 | x32);
- { uint32_t x34 = (x18 | x33);
- { uint32_t x35 = (x16 | x34);
- { uint32_t x36 = (x14 | x35);
- { uint32_t x37 = (x12 | x36);
- { uint32_t x38 = (x10 | x37);
- { uint32_t x39 = (x8 | x38);
- { uint32_t x40 = (x6 | x39);
- { uint32_t x41 = (x4 | x40);
- { uint32_t x42 = (x2 | x41);
- out[0] = x42;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e480m2e240m1_15limbs/fenz.v b/src/Specific/montgomery32_2e480m2e240m1_15limbs/fenz.v
deleted file mode 100644
index 17142f7f7..000000000
--- a/src/Specific/montgomery32_2e480m2e240m1_15limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e480m2e240m1_15limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e480m2e240m1_15limbs/fenzDisplay.log b/src/Specific/montgomery32_2e480m2e240m1_15limbs/fenzDisplay.log
deleted file mode 100644
index 8907c292b..000000000
--- a/src/Specific/montgomery32_2e480m2e240m1_15limbs/fenzDisplay.log
+++ /dev/null
@@ -1,21 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x27, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x29 = (x28 | x27);
- uint32_t x30 = (x26 | x29);
- uint32_t x31 = (x24 | x30);
- uint32_t x32 = (x22 | x31);
- uint32_t x33 = (x20 | x32);
- uint32_t x34 = (x18 | x33);
- uint32_t x35 = (x16 | x34);
- uint32_t x36 = (x14 | x35);
- uint32_t x37 = (x12 | x36);
- uint32_t x38 = (x10 | x37);
- uint32_t x39 = (x8 | x38);
- uint32_t x40 = (x6 | x39);
- uint32_t x41 = (x4 | x40);
- uint32_t x42 = (x2 | x41);
- return x42)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e480m2e240m1_15limbs/fenzDisplay.v b/src/Specific/montgomery32_2e480m2e240m1_15limbs/fenzDisplay.v
deleted file mode 100644
index c7ab1be50..000000000
--- a/src/Specific/montgomery32_2e480m2e240m1_15limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e480m2e240m1_15limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e480m2e240m1_15limbs/feopp.v b/src/Specific/montgomery32_2e480m2e240m1_15limbs/feopp.v
deleted file mode 100644
index 50799f314..000000000
--- a/src/Specific/montgomery32_2e480m2e240m1_15limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e480m2e240m1_15limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e480m2e240m1_15limbs/feoppDisplay.v b/src/Specific/montgomery32_2e480m2e240m1_15limbs/feoppDisplay.v
deleted file mode 100644
index f87a885cc..000000000
--- a/src/Specific/montgomery32_2e480m2e240m1_15limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e480m2e240m1_15limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e480m2e240m1_15limbs/fesquare.c b/src/Specific/montgomery32_2e480m2e240m1_15limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e480m2e240m1_15limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e480m2e240m1_15limbs/fesub.v b/src/Specific/montgomery32_2e480m2e240m1_15limbs/fesub.v
deleted file mode 100644
index 8a7d5d843..000000000
--- a/src/Specific/montgomery32_2e480m2e240m1_15limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e480m2e240m1_15limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e480m2e240m1_15limbs/fesubDisplay.v b/src/Specific/montgomery32_2e480m2e240m1_15limbs/fesubDisplay.v
deleted file mode 100644
index 9e365c337..000000000
--- a/src/Specific/montgomery32_2e480m2e240m1_15limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e480m2e240m1_15limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e480m2e240m1_15limbs/py_interpreter.sh b/src/Specific/montgomery32_2e480m2e240m1_15limbs/py_interpreter.sh
deleted file mode 100755
index a30165598..000000000
--- a/src/Specific/montgomery32_2e480m2e240m1_15limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**480 - 2**240 - 1' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e488m17_16limbs/CurveParameters.v b/src/Specific/montgomery32_2e488m17_16limbs/CurveParameters.v
deleted file mode 100644
index 7e8ed034f..000000000
--- a/src/Specific/montgomery32_2e488m17_16limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^488 - 17
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 16%nat;
- base := 32;
- bitwidth := 32;
- s := 2^488;
- c := [(1, 17)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e488m17_16limbs/Synthesis.v b/src/Specific/montgomery32_2e488m17_16limbs/Synthesis.v
deleted file mode 100644
index d41934183..000000000
--- a/src/Specific/montgomery32_2e488m17_16limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e488m17_16limbs.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/montgomery32_2e488m17_16limbs/compiler.sh b/src/Specific/montgomery32_2e488m17_16limbs/compiler.sh
deleted file mode 100755
index 44b8265ec..000000000
--- a/src/Specific/montgomery32_2e488m17_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='61' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<488) - 17' "$@"
diff --git a/src/Specific/montgomery32_2e488m17_16limbs/compilerxx.sh b/src/Specific/montgomery32_2e488m17_16limbs/compilerxx.sh
deleted file mode 100755
index 2d1fb577c..000000000
--- a/src/Specific/montgomery32_2e488m17_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='61' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<488) - 17' "$@"
diff --git a/src/Specific/montgomery32_2e488m17_16limbs/feadd.c b/src/Specific/montgomery32_2e488m17_16limbs/feadd.c
deleted file mode 100644
index 302b84c35..000000000
--- a/src/Specific/montgomery32_2e488m17_16limbs/feadd.c
+++ /dev/null
@@ -1,100 +0,0 @@
-static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- { uint32_t x65; uint8_t x66 = _addcarryx_u32(0x0, x5, x35, &x65);
- { uint32_t x68; uint8_t x69 = _addcarryx_u32(x66, x7, x37, &x68);
- { uint32_t x71; uint8_t x72 = _addcarryx_u32(x69, x9, x39, &x71);
- { uint32_t x74; uint8_t x75 = _addcarryx_u32(x72, x11, x41, &x74);
- { uint32_t x77; uint8_t x78 = _addcarryx_u32(x75, x13, x43, &x77);
- { uint32_t x80; uint8_t x81 = _addcarryx_u32(x78, x15, x45, &x80);
- { uint32_t x83; uint8_t x84 = _addcarryx_u32(x81, x17, x47, &x83);
- { uint32_t x86; uint8_t x87 = _addcarryx_u32(x84, x19, x49, &x86);
- { uint32_t x89; uint8_t x90 = _addcarryx_u32(x87, x21, x51, &x89);
- { uint32_t x92; uint8_t x93 = _addcarryx_u32(x90, x23, x53, &x92);
- { uint32_t x95; uint8_t x96 = _addcarryx_u32(x93, x25, x55, &x95);
- { uint32_t x98; uint8_t x99 = _addcarryx_u32(x96, x27, x57, &x98);
- { uint32_t x101; uint8_t x102 = _addcarryx_u32(x99, x29, x59, &x101);
- { uint32_t x104; uint8_t x105 = _addcarryx_u32(x102, x31, x61, &x104);
- { uint32_t x107; uint8_t x108 = _addcarryx_u32(x105, x33, x63, &x107);
- { uint32_t x110; uint8_t x111 = _addcarryx_u32(x108, x32, x62, &x110);
- { uint32_t x113; uint8_t x114 = _subborrow_u32(0x0, x65, 0xffffffef, &x113);
- { uint32_t x116; uint8_t x117 = _subborrow_u32(x114, x68, 0xffffffff, &x116);
- { uint32_t x119; uint8_t x120 = _subborrow_u32(x117, x71, 0xffffffff, &x119);
- { uint32_t x122; uint8_t x123 = _subborrow_u32(x120, x74, 0xffffffff, &x122);
- { uint32_t x125; uint8_t x126 = _subborrow_u32(x123, x77, 0xffffffff, &x125);
- { uint32_t x128; uint8_t x129 = _subborrow_u32(x126, x80, 0xffffffff, &x128);
- { uint32_t x131; uint8_t x132 = _subborrow_u32(x129, x83, 0xffffffff, &x131);
- { uint32_t x134; uint8_t x135 = _subborrow_u32(x132, x86, 0xffffffff, &x134);
- { uint32_t x137; uint8_t x138 = _subborrow_u32(x135, x89, 0xffffffff, &x137);
- { uint32_t x140; uint8_t x141 = _subborrow_u32(x138, x92, 0xffffffff, &x140);
- { uint32_t x143; uint8_t x144 = _subborrow_u32(x141, x95, 0xffffffff, &x143);
- { uint32_t x146; uint8_t x147 = _subborrow_u32(x144, x98, 0xffffffff, &x146);
- { uint32_t x149; uint8_t x150 = _subborrow_u32(x147, x101, 0xffffffff, &x149);
- { uint32_t x152; uint8_t x153 = _subborrow_u32(x150, x104, 0xffffffff, &x152);
- { uint32_t x155; uint8_t x156 = _subborrow_u32(x153, x107, 0xffffffff, &x155);
- { uint32_t x158; uint8_t x159 = _subborrow_u32(x156, x110, 0xff, &x158);
- { uint32_t _; uint8_t x162 = _subborrow_u32(x159, x111, 0x0, &_);
- { uint32_t x163 = cmovznz32(x162, x158, x110);
- { uint32_t x164 = cmovznz32(x162, x155, x107);
- { uint32_t x165 = cmovznz32(x162, x152, x104);
- { uint32_t x166 = cmovznz32(x162, x149, x101);
- { uint32_t x167 = cmovznz32(x162, x146, x98);
- { uint32_t x168 = cmovznz32(x162, x143, x95);
- { uint32_t x169 = cmovznz32(x162, x140, x92);
- { uint32_t x170 = cmovznz32(x162, x137, x89);
- { uint32_t x171 = cmovznz32(x162, x134, x86);
- { uint32_t x172 = cmovznz32(x162, x131, x83);
- { uint32_t x173 = cmovznz32(x162, x128, x80);
- { uint32_t x174 = cmovznz32(x162, x125, x77);
- { uint32_t x175 = cmovznz32(x162, x122, x74);
- { uint32_t x176 = cmovznz32(x162, x119, x71);
- { uint32_t x177 = cmovznz32(x162, x116, x68);
- { uint32_t x178 = cmovznz32(x162, x113, x65);
- out[0] = x178;
- out[1] = x177;
- out[2] = x176;
- out[3] = x175;
- out[4] = x174;
- out[5] = x173;
- out[6] = x172;
- out[7] = x171;
- out[8] = x170;
- out[9] = x169;
- out[10] = x168;
- out[11] = x167;
- out[12] = x166;
- out[13] = x165;
- out[14] = x164;
- out[15] = x163;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e488m17_16limbs/feadd.v b/src/Specific/montgomery32_2e488m17_16limbs/feadd.v
deleted file mode 100644
index efc60b647..000000000
--- a/src/Specific/montgomery32_2e488m17_16limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e488m17_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e488m17_16limbs/feaddDisplay.log b/src/Specific/montgomery32_2e488m17_16limbs/feaddDisplay.log
deleted file mode 100644
index d29341a8b..000000000
--- a/src/Specific/montgomery32_2e488m17_16limbs/feaddDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- uint32_t x65, uint8_t x66 = addcarryx_u32(0x0, x5, x35);
- uint32_t x68, uint8_t x69 = addcarryx_u32(x66, x7, x37);
- uint32_t x71, uint8_t x72 = addcarryx_u32(x69, x9, x39);
- uint32_t x74, uint8_t x75 = addcarryx_u32(x72, x11, x41);
- uint32_t x77, uint8_t x78 = addcarryx_u32(x75, x13, x43);
- uint32_t x80, uint8_t x81 = addcarryx_u32(x78, x15, x45);
- uint32_t x83, uint8_t x84 = addcarryx_u32(x81, x17, x47);
- uint32_t x86, uint8_t x87 = addcarryx_u32(x84, x19, x49);
- uint32_t x89, uint8_t x90 = addcarryx_u32(x87, x21, x51);
- uint32_t x92, uint8_t x93 = addcarryx_u32(x90, x23, x53);
- uint32_t x95, uint8_t x96 = addcarryx_u32(x93, x25, x55);
- uint32_t x98, uint8_t x99 = addcarryx_u32(x96, x27, x57);
- uint32_t x101, uint8_t x102 = addcarryx_u32(x99, x29, x59);
- uint32_t x104, uint8_t x105 = addcarryx_u32(x102, x31, x61);
- uint32_t x107, uint8_t x108 = addcarryx_u32(x105, x33, x63);
- uint32_t x110, uint8_t x111 = addcarryx_u32(x108, x32, x62);
- uint32_t x113, uint8_t x114 = subborrow_u32(0x0, x65, 0xffffffef);
- uint32_t x116, uint8_t x117 = subborrow_u32(x114, x68, 0xffffffff);
- uint32_t x119, uint8_t x120 = subborrow_u32(x117, x71, 0xffffffff);
- uint32_t x122, uint8_t x123 = subborrow_u32(x120, x74, 0xffffffff);
- uint32_t x125, uint8_t x126 = subborrow_u32(x123, x77, 0xffffffff);
- uint32_t x128, uint8_t x129 = subborrow_u32(x126, x80, 0xffffffff);
- uint32_t x131, uint8_t x132 = subborrow_u32(x129, x83, 0xffffffff);
- uint32_t x134, uint8_t x135 = subborrow_u32(x132, x86, 0xffffffff);
- uint32_t x137, uint8_t x138 = subborrow_u32(x135, x89, 0xffffffff);
- uint32_t x140, uint8_t x141 = subborrow_u32(x138, x92, 0xffffffff);
- uint32_t x143, uint8_t x144 = subborrow_u32(x141, x95, 0xffffffff);
- uint32_t x146, uint8_t x147 = subborrow_u32(x144, x98, 0xffffffff);
- uint32_t x149, uint8_t x150 = subborrow_u32(x147, x101, 0xffffffff);
- uint32_t x152, uint8_t x153 = subborrow_u32(x150, x104, 0xffffffff);
- uint32_t x155, uint8_t x156 = subborrow_u32(x153, x107, 0xffffffff);
- uint32_t x158, uint8_t x159 = subborrow_u32(x156, x110, 0xff);
- uint32_t _, uint8_t x162 = subborrow_u32(x159, x111, 0x0);
- uint32_t x163 = cmovznz32(x162, x158, x110);
- uint32_t x164 = cmovznz32(x162, x155, x107);
- uint32_t x165 = cmovznz32(x162, x152, x104);
- uint32_t x166 = cmovznz32(x162, x149, x101);
- uint32_t x167 = cmovznz32(x162, x146, x98);
- uint32_t x168 = cmovznz32(x162, x143, x95);
- uint32_t x169 = cmovznz32(x162, x140, x92);
- uint32_t x170 = cmovznz32(x162, x137, x89);
- uint32_t x171 = cmovznz32(x162, x134, x86);
- uint32_t x172 = cmovznz32(x162, x131, x83);
- uint32_t x173 = cmovznz32(x162, x128, x80);
- uint32_t x174 = cmovznz32(x162, x125, x77);
- uint32_t x175 = cmovznz32(x162, x122, x74);
- uint32_t x176 = cmovznz32(x162, x119, x71);
- uint32_t x177 = cmovznz32(x162, x116, x68);
- uint32_t x178 = cmovznz32(x162, x113, x65);
- return (x163, x164, x165, x166, x167, x168, x169, x170, x171, x172, x173, x174, x175, x176, x177, x178))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e488m17_16limbs/feaddDisplay.v b/src/Specific/montgomery32_2e488m17_16limbs/feaddDisplay.v
deleted file mode 100644
index a30c1ca31..000000000
--- a/src/Specific/montgomery32_2e488m17_16limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e488m17_16limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e488m17_16limbs/femul.v b/src/Specific/montgomery32_2e488m17_16limbs/femul.v
deleted file mode 100644
index 58f8f9ee5..000000000
--- a/src/Specific/montgomery32_2e488m17_16limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e488m17_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e488m17_16limbs/femulDisplay.v b/src/Specific/montgomery32_2e488m17_16limbs/femulDisplay.v
deleted file mode 100644
index 6e225c283..000000000
--- a/src/Specific/montgomery32_2e488m17_16limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e488m17_16limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e488m17_16limbs/fenz.c b/src/Specific/montgomery32_2e488m17_16limbs/fenz.c
deleted file mode 100644
index 5c5d21b0e..000000000
--- a/src/Specific/montgomery32_2e488m17_16limbs/fenz.c
+++ /dev/null
@@ -1,35 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x31 = (x30 | x29);
- { uint32_t x32 = (x28 | x31);
- { uint32_t x33 = (x26 | x32);
- { uint32_t x34 = (x24 | x33);
- { uint32_t x35 = (x22 | x34);
- { uint32_t x36 = (x20 | x35);
- { uint32_t x37 = (x18 | x36);
- { uint32_t x38 = (x16 | x37);
- { uint32_t x39 = (x14 | x38);
- { uint32_t x40 = (x12 | x39);
- { uint32_t x41 = (x10 | x40);
- { uint32_t x42 = (x8 | x41);
- { uint32_t x43 = (x6 | x42);
- { uint32_t x44 = (x4 | x43);
- { uint32_t x45 = (x2 | x44);
- out[0] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e488m17_16limbs/fenz.v b/src/Specific/montgomery32_2e488m17_16limbs/fenz.v
deleted file mode 100644
index 7b4278763..000000000
--- a/src/Specific/montgomery32_2e488m17_16limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e488m17_16limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e488m17_16limbs/fenzDisplay.log b/src/Specific/montgomery32_2e488m17_16limbs/fenzDisplay.log
deleted file mode 100644
index eb0b6ea33..000000000
--- a/src/Specific/montgomery32_2e488m17_16limbs/fenzDisplay.log
+++ /dev/null
@@ -1,22 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x31 = (x30 | x29);
- uint32_t x32 = (x28 | x31);
- uint32_t x33 = (x26 | x32);
- uint32_t x34 = (x24 | x33);
- uint32_t x35 = (x22 | x34);
- uint32_t x36 = (x20 | x35);
- uint32_t x37 = (x18 | x36);
- uint32_t x38 = (x16 | x37);
- uint32_t x39 = (x14 | x38);
- uint32_t x40 = (x12 | x39);
- uint32_t x41 = (x10 | x40);
- uint32_t x42 = (x8 | x41);
- uint32_t x43 = (x6 | x42);
- uint32_t x44 = (x4 | x43);
- uint32_t x45 = (x2 | x44);
- return x45)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e488m17_16limbs/fenzDisplay.v b/src/Specific/montgomery32_2e488m17_16limbs/fenzDisplay.v
deleted file mode 100644
index b9f64a0e6..000000000
--- a/src/Specific/montgomery32_2e488m17_16limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e488m17_16limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e488m17_16limbs/feopp.v b/src/Specific/montgomery32_2e488m17_16limbs/feopp.v
deleted file mode 100644
index b62c2bec7..000000000
--- a/src/Specific/montgomery32_2e488m17_16limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e488m17_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e488m17_16limbs/feoppDisplay.v b/src/Specific/montgomery32_2e488m17_16limbs/feoppDisplay.v
deleted file mode 100644
index 3abae5741..000000000
--- a/src/Specific/montgomery32_2e488m17_16limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e488m17_16limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e488m17_16limbs/fesquare.c b/src/Specific/montgomery32_2e488m17_16limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e488m17_16limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e488m17_16limbs/fesub.v b/src/Specific/montgomery32_2e488m17_16limbs/fesub.v
deleted file mode 100644
index 04166afa0..000000000
--- a/src/Specific/montgomery32_2e488m17_16limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e488m17_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e488m17_16limbs/fesubDisplay.v b/src/Specific/montgomery32_2e488m17_16limbs/fesubDisplay.v
deleted file mode 100644
index ac40869e1..000000000
--- a/src/Specific/montgomery32_2e488m17_16limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e488m17_16limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e488m17_16limbs/py_interpreter.sh b/src/Specific/montgomery32_2e488m17_16limbs/py_interpreter.sh
deleted file mode 100755
index 218293b7d..000000000
--- a/src/Specific/montgomery32_2e488m17_16limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**488 - 17' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e489m21_16limbs/CurveParameters.v b/src/Specific/montgomery32_2e489m21_16limbs/CurveParameters.v
deleted file mode 100644
index f73876229..000000000
--- a/src/Specific/montgomery32_2e489m21_16limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^489 - 21
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 16%nat;
- base := 32;
- bitwidth := 32;
- s := 2^489;
- c := [(1, 21)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e489m21_16limbs/Synthesis.v b/src/Specific/montgomery32_2e489m21_16limbs/Synthesis.v
deleted file mode 100644
index 7aeaecd07..000000000
--- a/src/Specific/montgomery32_2e489m21_16limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e489m21_16limbs.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/montgomery32_2e489m21_16limbs/compiler.sh b/src/Specific/montgomery32_2e489m21_16limbs/compiler.sh
deleted file mode 100755
index 6844c3d95..000000000
--- a/src/Specific/montgomery32_2e489m21_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<489) - 21' "$@"
diff --git a/src/Specific/montgomery32_2e489m21_16limbs/compilerxx.sh b/src/Specific/montgomery32_2e489m21_16limbs/compilerxx.sh
deleted file mode 100755
index 47ae4448a..000000000
--- a/src/Specific/montgomery32_2e489m21_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<489) - 21' "$@"
diff --git a/src/Specific/montgomery32_2e489m21_16limbs/feadd.c b/src/Specific/montgomery32_2e489m21_16limbs/feadd.c
deleted file mode 100644
index 007a47660..000000000
--- a/src/Specific/montgomery32_2e489m21_16limbs/feadd.c
+++ /dev/null
@@ -1,100 +0,0 @@
-static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- { uint32_t x65; uint8_t x66 = _addcarryx_u32(0x0, x5, x35, &x65);
- { uint32_t x68; uint8_t x69 = _addcarryx_u32(x66, x7, x37, &x68);
- { uint32_t x71; uint8_t x72 = _addcarryx_u32(x69, x9, x39, &x71);
- { uint32_t x74; uint8_t x75 = _addcarryx_u32(x72, x11, x41, &x74);
- { uint32_t x77; uint8_t x78 = _addcarryx_u32(x75, x13, x43, &x77);
- { uint32_t x80; uint8_t x81 = _addcarryx_u32(x78, x15, x45, &x80);
- { uint32_t x83; uint8_t x84 = _addcarryx_u32(x81, x17, x47, &x83);
- { uint32_t x86; uint8_t x87 = _addcarryx_u32(x84, x19, x49, &x86);
- { uint32_t x89; uint8_t x90 = _addcarryx_u32(x87, x21, x51, &x89);
- { uint32_t x92; uint8_t x93 = _addcarryx_u32(x90, x23, x53, &x92);
- { uint32_t x95; uint8_t x96 = _addcarryx_u32(x93, x25, x55, &x95);
- { uint32_t x98; uint8_t x99 = _addcarryx_u32(x96, x27, x57, &x98);
- { uint32_t x101; uint8_t x102 = _addcarryx_u32(x99, x29, x59, &x101);
- { uint32_t x104; uint8_t x105 = _addcarryx_u32(x102, x31, x61, &x104);
- { uint32_t x107; uint8_t x108 = _addcarryx_u32(x105, x33, x63, &x107);
- { uint32_t x110; uint8_t x111 = _addcarryx_u32(x108, x32, x62, &x110);
- { uint32_t x113; uint8_t x114 = _subborrow_u32(0x0, x65, 0xffffffeb, &x113);
- { uint32_t x116; uint8_t x117 = _subborrow_u32(x114, x68, 0xffffffff, &x116);
- { uint32_t x119; uint8_t x120 = _subborrow_u32(x117, x71, 0xffffffff, &x119);
- { uint32_t x122; uint8_t x123 = _subborrow_u32(x120, x74, 0xffffffff, &x122);
- { uint32_t x125; uint8_t x126 = _subborrow_u32(x123, x77, 0xffffffff, &x125);
- { uint32_t x128; uint8_t x129 = _subborrow_u32(x126, x80, 0xffffffff, &x128);
- { uint32_t x131; uint8_t x132 = _subborrow_u32(x129, x83, 0xffffffff, &x131);
- { uint32_t x134; uint8_t x135 = _subborrow_u32(x132, x86, 0xffffffff, &x134);
- { uint32_t x137; uint8_t x138 = _subborrow_u32(x135, x89, 0xffffffff, &x137);
- { uint32_t x140; uint8_t x141 = _subborrow_u32(x138, x92, 0xffffffff, &x140);
- { uint32_t x143; uint8_t x144 = _subborrow_u32(x141, x95, 0xffffffff, &x143);
- { uint32_t x146; uint8_t x147 = _subborrow_u32(x144, x98, 0xffffffff, &x146);
- { uint32_t x149; uint8_t x150 = _subborrow_u32(x147, x101, 0xffffffff, &x149);
- { uint32_t x152; uint8_t x153 = _subborrow_u32(x150, x104, 0xffffffff, &x152);
- { uint32_t x155; uint8_t x156 = _subborrow_u32(x153, x107, 0xffffffff, &x155);
- { uint32_t x158; uint8_t x159 = _subborrow_u32(x156, x110, 0x1ff, &x158);
- { uint32_t _; uint8_t x162 = _subborrow_u32(x159, x111, 0x0, &_);
- { uint32_t x163 = cmovznz32(x162, x158, x110);
- { uint32_t x164 = cmovznz32(x162, x155, x107);
- { uint32_t x165 = cmovznz32(x162, x152, x104);
- { uint32_t x166 = cmovznz32(x162, x149, x101);
- { uint32_t x167 = cmovznz32(x162, x146, x98);
- { uint32_t x168 = cmovznz32(x162, x143, x95);
- { uint32_t x169 = cmovznz32(x162, x140, x92);
- { uint32_t x170 = cmovznz32(x162, x137, x89);
- { uint32_t x171 = cmovznz32(x162, x134, x86);
- { uint32_t x172 = cmovznz32(x162, x131, x83);
- { uint32_t x173 = cmovznz32(x162, x128, x80);
- { uint32_t x174 = cmovznz32(x162, x125, x77);
- { uint32_t x175 = cmovznz32(x162, x122, x74);
- { uint32_t x176 = cmovznz32(x162, x119, x71);
- { uint32_t x177 = cmovznz32(x162, x116, x68);
- { uint32_t x178 = cmovznz32(x162, x113, x65);
- out[0] = x178;
- out[1] = x177;
- out[2] = x176;
- out[3] = x175;
- out[4] = x174;
- out[5] = x173;
- out[6] = x172;
- out[7] = x171;
- out[8] = x170;
- out[9] = x169;
- out[10] = x168;
- out[11] = x167;
- out[12] = x166;
- out[13] = x165;
- out[14] = x164;
- out[15] = x163;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e489m21_16limbs/feadd.v b/src/Specific/montgomery32_2e489m21_16limbs/feadd.v
deleted file mode 100644
index 7056a3afe..000000000
--- a/src/Specific/montgomery32_2e489m21_16limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e489m21_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e489m21_16limbs/feaddDisplay.log b/src/Specific/montgomery32_2e489m21_16limbs/feaddDisplay.log
deleted file mode 100644
index bb1861938..000000000
--- a/src/Specific/montgomery32_2e489m21_16limbs/feaddDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- uint32_t x65, uint8_t x66 = addcarryx_u32(0x0, x5, x35);
- uint32_t x68, uint8_t x69 = addcarryx_u32(x66, x7, x37);
- uint32_t x71, uint8_t x72 = addcarryx_u32(x69, x9, x39);
- uint32_t x74, uint8_t x75 = addcarryx_u32(x72, x11, x41);
- uint32_t x77, uint8_t x78 = addcarryx_u32(x75, x13, x43);
- uint32_t x80, uint8_t x81 = addcarryx_u32(x78, x15, x45);
- uint32_t x83, uint8_t x84 = addcarryx_u32(x81, x17, x47);
- uint32_t x86, uint8_t x87 = addcarryx_u32(x84, x19, x49);
- uint32_t x89, uint8_t x90 = addcarryx_u32(x87, x21, x51);
- uint32_t x92, uint8_t x93 = addcarryx_u32(x90, x23, x53);
- uint32_t x95, uint8_t x96 = addcarryx_u32(x93, x25, x55);
- uint32_t x98, uint8_t x99 = addcarryx_u32(x96, x27, x57);
- uint32_t x101, uint8_t x102 = addcarryx_u32(x99, x29, x59);
- uint32_t x104, uint8_t x105 = addcarryx_u32(x102, x31, x61);
- uint32_t x107, uint8_t x108 = addcarryx_u32(x105, x33, x63);
- uint32_t x110, uint8_t x111 = addcarryx_u32(x108, x32, x62);
- uint32_t x113, uint8_t x114 = subborrow_u32(0x0, x65, 0xffffffeb);
- uint32_t x116, uint8_t x117 = subborrow_u32(x114, x68, 0xffffffff);
- uint32_t x119, uint8_t x120 = subborrow_u32(x117, x71, 0xffffffff);
- uint32_t x122, uint8_t x123 = subborrow_u32(x120, x74, 0xffffffff);
- uint32_t x125, uint8_t x126 = subborrow_u32(x123, x77, 0xffffffff);
- uint32_t x128, uint8_t x129 = subborrow_u32(x126, x80, 0xffffffff);
- uint32_t x131, uint8_t x132 = subborrow_u32(x129, x83, 0xffffffff);
- uint32_t x134, uint8_t x135 = subborrow_u32(x132, x86, 0xffffffff);
- uint32_t x137, uint8_t x138 = subborrow_u32(x135, x89, 0xffffffff);
- uint32_t x140, uint8_t x141 = subborrow_u32(x138, x92, 0xffffffff);
- uint32_t x143, uint8_t x144 = subborrow_u32(x141, x95, 0xffffffff);
- uint32_t x146, uint8_t x147 = subborrow_u32(x144, x98, 0xffffffff);
- uint32_t x149, uint8_t x150 = subborrow_u32(x147, x101, 0xffffffff);
- uint32_t x152, uint8_t x153 = subborrow_u32(x150, x104, 0xffffffff);
- uint32_t x155, uint8_t x156 = subborrow_u32(x153, x107, 0xffffffff);
- uint32_t x158, uint8_t x159 = subborrow_u32(x156, x110, 0x1ff);
- uint32_t _, uint8_t x162 = subborrow_u32(x159, x111, 0x0);
- uint32_t x163 = cmovznz32(x162, x158, x110);
- uint32_t x164 = cmovznz32(x162, x155, x107);
- uint32_t x165 = cmovznz32(x162, x152, x104);
- uint32_t x166 = cmovznz32(x162, x149, x101);
- uint32_t x167 = cmovznz32(x162, x146, x98);
- uint32_t x168 = cmovznz32(x162, x143, x95);
- uint32_t x169 = cmovznz32(x162, x140, x92);
- uint32_t x170 = cmovznz32(x162, x137, x89);
- uint32_t x171 = cmovznz32(x162, x134, x86);
- uint32_t x172 = cmovznz32(x162, x131, x83);
- uint32_t x173 = cmovznz32(x162, x128, x80);
- uint32_t x174 = cmovznz32(x162, x125, x77);
- uint32_t x175 = cmovznz32(x162, x122, x74);
- uint32_t x176 = cmovznz32(x162, x119, x71);
- uint32_t x177 = cmovznz32(x162, x116, x68);
- uint32_t x178 = cmovznz32(x162, x113, x65);
- return (x163, x164, x165, x166, x167, x168, x169, x170, x171, x172, x173, x174, x175, x176, x177, x178))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e489m21_16limbs/feaddDisplay.v b/src/Specific/montgomery32_2e489m21_16limbs/feaddDisplay.v
deleted file mode 100644
index 2a7f7fdec..000000000
--- a/src/Specific/montgomery32_2e489m21_16limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e489m21_16limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e489m21_16limbs/femul.v b/src/Specific/montgomery32_2e489m21_16limbs/femul.v
deleted file mode 100644
index 909983b32..000000000
--- a/src/Specific/montgomery32_2e489m21_16limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e489m21_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e489m21_16limbs/femulDisplay.v b/src/Specific/montgomery32_2e489m21_16limbs/femulDisplay.v
deleted file mode 100644
index 2a90529ef..000000000
--- a/src/Specific/montgomery32_2e489m21_16limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e489m21_16limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e489m21_16limbs/fenz.c b/src/Specific/montgomery32_2e489m21_16limbs/fenz.c
deleted file mode 100644
index 5c5d21b0e..000000000
--- a/src/Specific/montgomery32_2e489m21_16limbs/fenz.c
+++ /dev/null
@@ -1,35 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x31 = (x30 | x29);
- { uint32_t x32 = (x28 | x31);
- { uint32_t x33 = (x26 | x32);
- { uint32_t x34 = (x24 | x33);
- { uint32_t x35 = (x22 | x34);
- { uint32_t x36 = (x20 | x35);
- { uint32_t x37 = (x18 | x36);
- { uint32_t x38 = (x16 | x37);
- { uint32_t x39 = (x14 | x38);
- { uint32_t x40 = (x12 | x39);
- { uint32_t x41 = (x10 | x40);
- { uint32_t x42 = (x8 | x41);
- { uint32_t x43 = (x6 | x42);
- { uint32_t x44 = (x4 | x43);
- { uint32_t x45 = (x2 | x44);
- out[0] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e489m21_16limbs/fenz.v b/src/Specific/montgomery32_2e489m21_16limbs/fenz.v
deleted file mode 100644
index cc8c5f473..000000000
--- a/src/Specific/montgomery32_2e489m21_16limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e489m21_16limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e489m21_16limbs/fenzDisplay.log b/src/Specific/montgomery32_2e489m21_16limbs/fenzDisplay.log
deleted file mode 100644
index eb0b6ea33..000000000
--- a/src/Specific/montgomery32_2e489m21_16limbs/fenzDisplay.log
+++ /dev/null
@@ -1,22 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x31 = (x30 | x29);
- uint32_t x32 = (x28 | x31);
- uint32_t x33 = (x26 | x32);
- uint32_t x34 = (x24 | x33);
- uint32_t x35 = (x22 | x34);
- uint32_t x36 = (x20 | x35);
- uint32_t x37 = (x18 | x36);
- uint32_t x38 = (x16 | x37);
- uint32_t x39 = (x14 | x38);
- uint32_t x40 = (x12 | x39);
- uint32_t x41 = (x10 | x40);
- uint32_t x42 = (x8 | x41);
- uint32_t x43 = (x6 | x42);
- uint32_t x44 = (x4 | x43);
- uint32_t x45 = (x2 | x44);
- return x45)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e489m21_16limbs/fenzDisplay.v b/src/Specific/montgomery32_2e489m21_16limbs/fenzDisplay.v
deleted file mode 100644
index cff6060a4..000000000
--- a/src/Specific/montgomery32_2e489m21_16limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e489m21_16limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e489m21_16limbs/feopp.v b/src/Specific/montgomery32_2e489m21_16limbs/feopp.v
deleted file mode 100644
index 215633a3f..000000000
--- a/src/Specific/montgomery32_2e489m21_16limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e489m21_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e489m21_16limbs/feoppDisplay.v b/src/Specific/montgomery32_2e489m21_16limbs/feoppDisplay.v
deleted file mode 100644
index ed9b75c77..000000000
--- a/src/Specific/montgomery32_2e489m21_16limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e489m21_16limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e489m21_16limbs/fesquare.c b/src/Specific/montgomery32_2e489m21_16limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e489m21_16limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e489m21_16limbs/fesub.v b/src/Specific/montgomery32_2e489m21_16limbs/fesub.v
deleted file mode 100644
index 4ffe05566..000000000
--- a/src/Specific/montgomery32_2e489m21_16limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e489m21_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e489m21_16limbs/fesubDisplay.v b/src/Specific/montgomery32_2e489m21_16limbs/fesubDisplay.v
deleted file mode 100644
index a856c078f..000000000
--- a/src/Specific/montgomery32_2e489m21_16limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e489m21_16limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e489m21_16limbs/py_interpreter.sh b/src/Specific/montgomery32_2e489m21_16limbs/py_interpreter.sh
deleted file mode 100755
index d0d1ab9cf..000000000
--- a/src/Specific/montgomery32_2e489m21_16limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**489 - 21' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e495m31_16limbs/CurveParameters.v b/src/Specific/montgomery32_2e495m31_16limbs/CurveParameters.v
deleted file mode 100644
index bcaa3e33b..000000000
--- a/src/Specific/montgomery32_2e495m31_16limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^495 - 31
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 16%nat;
- base := 32;
- bitwidth := 32;
- s := 2^495;
- c := [(1, 31)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e495m31_16limbs/Synthesis.v b/src/Specific/montgomery32_2e495m31_16limbs/Synthesis.v
deleted file mode 100644
index c177c1721..000000000
--- a/src/Specific/montgomery32_2e495m31_16limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e495m31_16limbs.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/montgomery32_2e495m31_16limbs/compiler.sh b/src/Specific/montgomery32_2e495m31_16limbs/compiler.sh
deleted file mode 100755
index 454b3b5db..000000000
--- a/src/Specific/montgomery32_2e495m31_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<495) - 31' "$@"
diff --git a/src/Specific/montgomery32_2e495m31_16limbs/compilerxx.sh b/src/Specific/montgomery32_2e495m31_16limbs/compilerxx.sh
deleted file mode 100755
index 7d5148624..000000000
--- a/src/Specific/montgomery32_2e495m31_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<495) - 31' "$@"
diff --git a/src/Specific/montgomery32_2e495m31_16limbs/feadd.c b/src/Specific/montgomery32_2e495m31_16limbs/feadd.c
deleted file mode 100644
index 98ff25687..000000000
--- a/src/Specific/montgomery32_2e495m31_16limbs/feadd.c
+++ /dev/null
@@ -1,100 +0,0 @@
-static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- { uint32_t x65; uint8_t x66 = _addcarryx_u32(0x0, x5, x35, &x65);
- { uint32_t x68; uint8_t x69 = _addcarryx_u32(x66, x7, x37, &x68);
- { uint32_t x71; uint8_t x72 = _addcarryx_u32(x69, x9, x39, &x71);
- { uint32_t x74; uint8_t x75 = _addcarryx_u32(x72, x11, x41, &x74);
- { uint32_t x77; uint8_t x78 = _addcarryx_u32(x75, x13, x43, &x77);
- { uint32_t x80; uint8_t x81 = _addcarryx_u32(x78, x15, x45, &x80);
- { uint32_t x83; uint8_t x84 = _addcarryx_u32(x81, x17, x47, &x83);
- { uint32_t x86; uint8_t x87 = _addcarryx_u32(x84, x19, x49, &x86);
- { uint32_t x89; uint8_t x90 = _addcarryx_u32(x87, x21, x51, &x89);
- { uint32_t x92; uint8_t x93 = _addcarryx_u32(x90, x23, x53, &x92);
- { uint32_t x95; uint8_t x96 = _addcarryx_u32(x93, x25, x55, &x95);
- { uint32_t x98; uint8_t x99 = _addcarryx_u32(x96, x27, x57, &x98);
- { uint32_t x101; uint8_t x102 = _addcarryx_u32(x99, x29, x59, &x101);
- { uint32_t x104; uint8_t x105 = _addcarryx_u32(x102, x31, x61, &x104);
- { uint32_t x107; uint8_t x108 = _addcarryx_u32(x105, x33, x63, &x107);
- { uint32_t x110; uint8_t x111 = _addcarryx_u32(x108, x32, x62, &x110);
- { uint32_t x113; uint8_t x114 = _subborrow_u32(0x0, x65, 0xffffffe1, &x113);
- { uint32_t x116; uint8_t x117 = _subborrow_u32(x114, x68, 0xffffffff, &x116);
- { uint32_t x119; uint8_t x120 = _subborrow_u32(x117, x71, 0xffffffff, &x119);
- { uint32_t x122; uint8_t x123 = _subborrow_u32(x120, x74, 0xffffffff, &x122);
- { uint32_t x125; uint8_t x126 = _subborrow_u32(x123, x77, 0xffffffff, &x125);
- { uint32_t x128; uint8_t x129 = _subborrow_u32(x126, x80, 0xffffffff, &x128);
- { uint32_t x131; uint8_t x132 = _subborrow_u32(x129, x83, 0xffffffff, &x131);
- { uint32_t x134; uint8_t x135 = _subborrow_u32(x132, x86, 0xffffffff, &x134);
- { uint32_t x137; uint8_t x138 = _subborrow_u32(x135, x89, 0xffffffff, &x137);
- { uint32_t x140; uint8_t x141 = _subborrow_u32(x138, x92, 0xffffffff, &x140);
- { uint32_t x143; uint8_t x144 = _subborrow_u32(x141, x95, 0xffffffff, &x143);
- { uint32_t x146; uint8_t x147 = _subborrow_u32(x144, x98, 0xffffffff, &x146);
- { uint32_t x149; uint8_t x150 = _subborrow_u32(x147, x101, 0xffffffff, &x149);
- { uint32_t x152; uint8_t x153 = _subborrow_u32(x150, x104, 0xffffffff, &x152);
- { uint32_t x155; uint8_t x156 = _subborrow_u32(x153, x107, 0xffffffff, &x155);
- { uint32_t x158; uint8_t x159 = _subborrow_u32(x156, x110, 0x7fff, &x158);
- { uint32_t _; uint8_t x162 = _subborrow_u32(x159, x111, 0x0, &_);
- { uint32_t x163 = cmovznz32(x162, x158, x110);
- { uint32_t x164 = cmovznz32(x162, x155, x107);
- { uint32_t x165 = cmovznz32(x162, x152, x104);
- { uint32_t x166 = cmovznz32(x162, x149, x101);
- { uint32_t x167 = cmovznz32(x162, x146, x98);
- { uint32_t x168 = cmovznz32(x162, x143, x95);
- { uint32_t x169 = cmovznz32(x162, x140, x92);
- { uint32_t x170 = cmovznz32(x162, x137, x89);
- { uint32_t x171 = cmovznz32(x162, x134, x86);
- { uint32_t x172 = cmovznz32(x162, x131, x83);
- { uint32_t x173 = cmovznz32(x162, x128, x80);
- { uint32_t x174 = cmovznz32(x162, x125, x77);
- { uint32_t x175 = cmovznz32(x162, x122, x74);
- { uint32_t x176 = cmovznz32(x162, x119, x71);
- { uint32_t x177 = cmovznz32(x162, x116, x68);
- { uint32_t x178 = cmovznz32(x162, x113, x65);
- out[0] = x178;
- out[1] = x177;
- out[2] = x176;
- out[3] = x175;
- out[4] = x174;
- out[5] = x173;
- out[6] = x172;
- out[7] = x171;
- out[8] = x170;
- out[9] = x169;
- out[10] = x168;
- out[11] = x167;
- out[12] = x166;
- out[13] = x165;
- out[14] = x164;
- out[15] = x163;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e495m31_16limbs/feadd.v b/src/Specific/montgomery32_2e495m31_16limbs/feadd.v
deleted file mode 100644
index 5319c4f28..000000000
--- a/src/Specific/montgomery32_2e495m31_16limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e495m31_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e495m31_16limbs/feaddDisplay.log b/src/Specific/montgomery32_2e495m31_16limbs/feaddDisplay.log
deleted file mode 100644
index 7dc2014d6..000000000
--- a/src/Specific/montgomery32_2e495m31_16limbs/feaddDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- uint32_t x65, uint8_t x66 = addcarryx_u32(0x0, x5, x35);
- uint32_t x68, uint8_t x69 = addcarryx_u32(x66, x7, x37);
- uint32_t x71, uint8_t x72 = addcarryx_u32(x69, x9, x39);
- uint32_t x74, uint8_t x75 = addcarryx_u32(x72, x11, x41);
- uint32_t x77, uint8_t x78 = addcarryx_u32(x75, x13, x43);
- uint32_t x80, uint8_t x81 = addcarryx_u32(x78, x15, x45);
- uint32_t x83, uint8_t x84 = addcarryx_u32(x81, x17, x47);
- uint32_t x86, uint8_t x87 = addcarryx_u32(x84, x19, x49);
- uint32_t x89, uint8_t x90 = addcarryx_u32(x87, x21, x51);
- uint32_t x92, uint8_t x93 = addcarryx_u32(x90, x23, x53);
- uint32_t x95, uint8_t x96 = addcarryx_u32(x93, x25, x55);
- uint32_t x98, uint8_t x99 = addcarryx_u32(x96, x27, x57);
- uint32_t x101, uint8_t x102 = addcarryx_u32(x99, x29, x59);
- uint32_t x104, uint8_t x105 = addcarryx_u32(x102, x31, x61);
- uint32_t x107, uint8_t x108 = addcarryx_u32(x105, x33, x63);
- uint32_t x110, uint8_t x111 = addcarryx_u32(x108, x32, x62);
- uint32_t x113, uint8_t x114 = subborrow_u32(0x0, x65, 0xffffffe1);
- uint32_t x116, uint8_t x117 = subborrow_u32(x114, x68, 0xffffffff);
- uint32_t x119, uint8_t x120 = subborrow_u32(x117, x71, 0xffffffff);
- uint32_t x122, uint8_t x123 = subborrow_u32(x120, x74, 0xffffffff);
- uint32_t x125, uint8_t x126 = subborrow_u32(x123, x77, 0xffffffff);
- uint32_t x128, uint8_t x129 = subborrow_u32(x126, x80, 0xffffffff);
- uint32_t x131, uint8_t x132 = subborrow_u32(x129, x83, 0xffffffff);
- uint32_t x134, uint8_t x135 = subborrow_u32(x132, x86, 0xffffffff);
- uint32_t x137, uint8_t x138 = subborrow_u32(x135, x89, 0xffffffff);
- uint32_t x140, uint8_t x141 = subborrow_u32(x138, x92, 0xffffffff);
- uint32_t x143, uint8_t x144 = subborrow_u32(x141, x95, 0xffffffff);
- uint32_t x146, uint8_t x147 = subborrow_u32(x144, x98, 0xffffffff);
- uint32_t x149, uint8_t x150 = subborrow_u32(x147, x101, 0xffffffff);
- uint32_t x152, uint8_t x153 = subborrow_u32(x150, x104, 0xffffffff);
- uint32_t x155, uint8_t x156 = subborrow_u32(x153, x107, 0xffffffff);
- uint32_t x158, uint8_t x159 = subborrow_u32(x156, x110, 0x7fff);
- uint32_t _, uint8_t x162 = subborrow_u32(x159, x111, 0x0);
- uint32_t x163 = cmovznz32(x162, x158, x110);
- uint32_t x164 = cmovznz32(x162, x155, x107);
- uint32_t x165 = cmovznz32(x162, x152, x104);
- uint32_t x166 = cmovznz32(x162, x149, x101);
- uint32_t x167 = cmovznz32(x162, x146, x98);
- uint32_t x168 = cmovznz32(x162, x143, x95);
- uint32_t x169 = cmovznz32(x162, x140, x92);
- uint32_t x170 = cmovznz32(x162, x137, x89);
- uint32_t x171 = cmovznz32(x162, x134, x86);
- uint32_t x172 = cmovznz32(x162, x131, x83);
- uint32_t x173 = cmovznz32(x162, x128, x80);
- uint32_t x174 = cmovznz32(x162, x125, x77);
- uint32_t x175 = cmovznz32(x162, x122, x74);
- uint32_t x176 = cmovznz32(x162, x119, x71);
- uint32_t x177 = cmovznz32(x162, x116, x68);
- uint32_t x178 = cmovznz32(x162, x113, x65);
- return (x163, x164, x165, x166, x167, x168, x169, x170, x171, x172, x173, x174, x175, x176, x177, x178))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e495m31_16limbs/feaddDisplay.v b/src/Specific/montgomery32_2e495m31_16limbs/feaddDisplay.v
deleted file mode 100644
index efa93a926..000000000
--- a/src/Specific/montgomery32_2e495m31_16limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e495m31_16limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e495m31_16limbs/femul.v b/src/Specific/montgomery32_2e495m31_16limbs/femul.v
deleted file mode 100644
index f73f7fd73..000000000
--- a/src/Specific/montgomery32_2e495m31_16limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e495m31_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e495m31_16limbs/femulDisplay.v b/src/Specific/montgomery32_2e495m31_16limbs/femulDisplay.v
deleted file mode 100644
index b41f7a64c..000000000
--- a/src/Specific/montgomery32_2e495m31_16limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e495m31_16limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e495m31_16limbs/fenz.c b/src/Specific/montgomery32_2e495m31_16limbs/fenz.c
deleted file mode 100644
index 5c5d21b0e..000000000
--- a/src/Specific/montgomery32_2e495m31_16limbs/fenz.c
+++ /dev/null
@@ -1,35 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x31 = (x30 | x29);
- { uint32_t x32 = (x28 | x31);
- { uint32_t x33 = (x26 | x32);
- { uint32_t x34 = (x24 | x33);
- { uint32_t x35 = (x22 | x34);
- { uint32_t x36 = (x20 | x35);
- { uint32_t x37 = (x18 | x36);
- { uint32_t x38 = (x16 | x37);
- { uint32_t x39 = (x14 | x38);
- { uint32_t x40 = (x12 | x39);
- { uint32_t x41 = (x10 | x40);
- { uint32_t x42 = (x8 | x41);
- { uint32_t x43 = (x6 | x42);
- { uint32_t x44 = (x4 | x43);
- { uint32_t x45 = (x2 | x44);
- out[0] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e495m31_16limbs/fenz.v b/src/Specific/montgomery32_2e495m31_16limbs/fenz.v
deleted file mode 100644
index 82cce2442..000000000
--- a/src/Specific/montgomery32_2e495m31_16limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e495m31_16limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e495m31_16limbs/fenzDisplay.log b/src/Specific/montgomery32_2e495m31_16limbs/fenzDisplay.log
deleted file mode 100644
index eb0b6ea33..000000000
--- a/src/Specific/montgomery32_2e495m31_16limbs/fenzDisplay.log
+++ /dev/null
@@ -1,22 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x31 = (x30 | x29);
- uint32_t x32 = (x28 | x31);
- uint32_t x33 = (x26 | x32);
- uint32_t x34 = (x24 | x33);
- uint32_t x35 = (x22 | x34);
- uint32_t x36 = (x20 | x35);
- uint32_t x37 = (x18 | x36);
- uint32_t x38 = (x16 | x37);
- uint32_t x39 = (x14 | x38);
- uint32_t x40 = (x12 | x39);
- uint32_t x41 = (x10 | x40);
- uint32_t x42 = (x8 | x41);
- uint32_t x43 = (x6 | x42);
- uint32_t x44 = (x4 | x43);
- uint32_t x45 = (x2 | x44);
- return x45)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e495m31_16limbs/fenzDisplay.v b/src/Specific/montgomery32_2e495m31_16limbs/fenzDisplay.v
deleted file mode 100644
index 9641e8ba6..000000000
--- a/src/Specific/montgomery32_2e495m31_16limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e495m31_16limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e495m31_16limbs/feopp.v b/src/Specific/montgomery32_2e495m31_16limbs/feopp.v
deleted file mode 100644
index 704610e8e..000000000
--- a/src/Specific/montgomery32_2e495m31_16limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e495m31_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e495m31_16limbs/feoppDisplay.v b/src/Specific/montgomery32_2e495m31_16limbs/feoppDisplay.v
deleted file mode 100644
index cdffe1b57..000000000
--- a/src/Specific/montgomery32_2e495m31_16limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e495m31_16limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e495m31_16limbs/fesquare.c b/src/Specific/montgomery32_2e495m31_16limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e495m31_16limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e495m31_16limbs/fesub.v b/src/Specific/montgomery32_2e495m31_16limbs/fesub.v
deleted file mode 100644
index a77795c9b..000000000
--- a/src/Specific/montgomery32_2e495m31_16limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e495m31_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e495m31_16limbs/fesubDisplay.v b/src/Specific/montgomery32_2e495m31_16limbs/fesubDisplay.v
deleted file mode 100644
index 6add7acf4..000000000
--- a/src/Specific/montgomery32_2e495m31_16limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e495m31_16limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e495m31_16limbs/py_interpreter.sh b/src/Specific/montgomery32_2e495m31_16limbs/py_interpreter.sh
deleted file mode 100755
index 1b69eb239..000000000
--- a/src/Specific/montgomery32_2e495m31_16limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**495 - 31' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/CurveParameters.v b/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/CurveParameters.v
deleted file mode 100644
index 8dd31f795..000000000
--- a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^510 - 290*2^496 - 1
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 16%nat;
- base := 32;
- bitwidth := 32;
- s := 2^510;
- c := [(1, 1); (290, 2^496)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e510m290x2e496m1_16limbs/Synthesis.v b/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/Synthesis.v
deleted file mode 100644
index a51058007..000000000
--- a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e510m290x2e496m1_16limbs.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/montgomery32_2e510m290x2e496m1_16limbs/compiler.sh b/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/compiler.sh
deleted file mode 100755
index b6155d473..000000000
--- a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/compilerxx.sh b/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/compilerxx.sh
deleted file mode 100755
index dc962804e..000000000
--- a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/feadd.c b/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/feadd.c
deleted file mode 100644
index 9ad623033..000000000
--- a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/feadd.c
+++ /dev/null
@@ -1,100 +0,0 @@
-static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- { uint32_t x65; uint8_t x66 = _addcarryx_u32(0x0, x5, x35, &x65);
- { uint32_t x68; uint8_t x69 = _addcarryx_u32(x66, x7, x37, &x68);
- { uint32_t x71; uint8_t x72 = _addcarryx_u32(x69, x9, x39, &x71);
- { uint32_t x74; uint8_t x75 = _addcarryx_u32(x72, x11, x41, &x74);
- { uint32_t x77; uint8_t x78 = _addcarryx_u32(x75, x13, x43, &x77);
- { uint32_t x80; uint8_t x81 = _addcarryx_u32(x78, x15, x45, &x80);
- { uint32_t x83; uint8_t x84 = _addcarryx_u32(x81, x17, x47, &x83);
- { uint32_t x86; uint8_t x87 = _addcarryx_u32(x84, x19, x49, &x86);
- { uint32_t x89; uint8_t x90 = _addcarryx_u32(x87, x21, x51, &x89);
- { uint32_t x92; uint8_t x93 = _addcarryx_u32(x90, x23, x53, &x92);
- { uint32_t x95; uint8_t x96 = _addcarryx_u32(x93, x25, x55, &x95);
- { uint32_t x98; uint8_t x99 = _addcarryx_u32(x96, x27, x57, &x98);
- { uint32_t x101; uint8_t x102 = _addcarryx_u32(x99, x29, x59, &x101);
- { uint32_t x104; uint8_t x105 = _addcarryx_u32(x102, x31, x61, &x104);
- { uint32_t x107; uint8_t x108 = _addcarryx_u32(x105, x33, x63, &x107);
- { uint32_t x110; uint8_t x111 = _addcarryx_u32(x108, x32, x62, &x110);
- { uint32_t x113; uint8_t x114 = _subborrow_u32(0x0, x65, 0xffffffff, &x113);
- { uint32_t x116; uint8_t x117 = _subborrow_u32(x114, x68, 0xffffffff, &x116);
- { uint32_t x119; uint8_t x120 = _subborrow_u32(x117, x71, 0xffffffff, &x119);
- { uint32_t x122; uint8_t x123 = _subborrow_u32(x120, x74, 0xffffffff, &x122);
- { uint32_t x125; uint8_t x126 = _subborrow_u32(x123, x77, 0xffffffff, &x125);
- { uint32_t x128; uint8_t x129 = _subborrow_u32(x126, x80, 0xffffffff, &x128);
- { uint32_t x131; uint8_t x132 = _subborrow_u32(x129, x83, 0xffffffff, &x131);
- { uint32_t x134; uint8_t x135 = _subborrow_u32(x132, x86, 0xffffffff, &x134);
- { uint32_t x137; uint8_t x138 = _subborrow_u32(x135, x89, 0xffffffff, &x137);
- { uint32_t x140; uint8_t x141 = _subborrow_u32(x138, x92, 0xffffffff, &x140);
- { uint32_t x143; uint8_t x144 = _subborrow_u32(x141, x95, 0xffffffff, &x143);
- { uint32_t x146; uint8_t x147 = _subborrow_u32(x144, x98, 0xffffffff, &x146);
- { uint32_t x149; uint8_t x150 = _subborrow_u32(x147, x101, 0xffffffff, &x149);
- { uint32_t x152; uint8_t x153 = _subborrow_u32(x150, x104, 0xffffffff, &x152);
- { uint32_t x155; uint8_t x156 = _subborrow_u32(x153, x107, 0xffffffff, &x155);
- { uint32_t x158; uint8_t x159 = _subborrow_u32(x156, x110, 0x3eddffff, &x158);
- { uint32_t _; uint8_t x162 = _subborrow_u32(x159, x111, 0x0, &_);
- { uint32_t x163 = cmovznz32(x162, x158, x110);
- { uint32_t x164 = cmovznz32(x162, x155, x107);
- { uint32_t x165 = cmovznz32(x162, x152, x104);
- { uint32_t x166 = cmovznz32(x162, x149, x101);
- { uint32_t x167 = cmovznz32(x162, x146, x98);
- { uint32_t x168 = cmovznz32(x162, x143, x95);
- { uint32_t x169 = cmovznz32(x162, x140, x92);
- { uint32_t x170 = cmovznz32(x162, x137, x89);
- { uint32_t x171 = cmovznz32(x162, x134, x86);
- { uint32_t x172 = cmovznz32(x162, x131, x83);
- { uint32_t x173 = cmovznz32(x162, x128, x80);
- { uint32_t x174 = cmovznz32(x162, x125, x77);
- { uint32_t x175 = cmovznz32(x162, x122, x74);
- { uint32_t x176 = cmovznz32(x162, x119, x71);
- { uint32_t x177 = cmovznz32(x162, x116, x68);
- { uint32_t x178 = cmovznz32(x162, x113, x65);
- out[0] = x178;
- out[1] = x177;
- out[2] = x176;
- out[3] = x175;
- out[4] = x174;
- out[5] = x173;
- out[6] = x172;
- out[7] = x171;
- out[8] = x170;
- out[9] = x169;
- out[10] = x168;
- out[11] = x167;
- out[12] = x166;
- out[13] = x165;
- out[14] = x164;
- out[15] = x163;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/feadd.v b/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/feadd.v
deleted file mode 100644
index e66a17d0a..000000000
--- a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e510m290x2e496m1_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/feaddDisplay.log b/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/feaddDisplay.log
deleted file mode 100644
index 36c81d199..000000000
--- a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/feaddDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- uint32_t x65, uint8_t x66 = addcarryx_u32(0x0, x5, x35);
- uint32_t x68, uint8_t x69 = addcarryx_u32(x66, x7, x37);
- uint32_t x71, uint8_t x72 = addcarryx_u32(x69, x9, x39);
- uint32_t x74, uint8_t x75 = addcarryx_u32(x72, x11, x41);
- uint32_t x77, uint8_t x78 = addcarryx_u32(x75, x13, x43);
- uint32_t x80, uint8_t x81 = addcarryx_u32(x78, x15, x45);
- uint32_t x83, uint8_t x84 = addcarryx_u32(x81, x17, x47);
- uint32_t x86, uint8_t x87 = addcarryx_u32(x84, x19, x49);
- uint32_t x89, uint8_t x90 = addcarryx_u32(x87, x21, x51);
- uint32_t x92, uint8_t x93 = addcarryx_u32(x90, x23, x53);
- uint32_t x95, uint8_t x96 = addcarryx_u32(x93, x25, x55);
- uint32_t x98, uint8_t x99 = addcarryx_u32(x96, x27, x57);
- uint32_t x101, uint8_t x102 = addcarryx_u32(x99, x29, x59);
- uint32_t x104, uint8_t x105 = addcarryx_u32(x102, x31, x61);
- uint32_t x107, uint8_t x108 = addcarryx_u32(x105, x33, x63);
- uint32_t x110, uint8_t x111 = addcarryx_u32(x108, x32, x62);
- uint32_t x113, uint8_t x114 = subborrow_u32(0x0, x65, 0xffffffff);
- uint32_t x116, uint8_t x117 = subborrow_u32(x114, x68, 0xffffffff);
- uint32_t x119, uint8_t x120 = subborrow_u32(x117, x71, 0xffffffff);
- uint32_t x122, uint8_t x123 = subborrow_u32(x120, x74, 0xffffffff);
- uint32_t x125, uint8_t x126 = subborrow_u32(x123, x77, 0xffffffff);
- uint32_t x128, uint8_t x129 = subborrow_u32(x126, x80, 0xffffffff);
- uint32_t x131, uint8_t x132 = subborrow_u32(x129, x83, 0xffffffff);
- uint32_t x134, uint8_t x135 = subborrow_u32(x132, x86, 0xffffffff);
- uint32_t x137, uint8_t x138 = subborrow_u32(x135, x89, 0xffffffff);
- uint32_t x140, uint8_t x141 = subborrow_u32(x138, x92, 0xffffffff);
- uint32_t x143, uint8_t x144 = subborrow_u32(x141, x95, 0xffffffff);
- uint32_t x146, uint8_t x147 = subborrow_u32(x144, x98, 0xffffffff);
- uint32_t x149, uint8_t x150 = subborrow_u32(x147, x101, 0xffffffff);
- uint32_t x152, uint8_t x153 = subborrow_u32(x150, x104, 0xffffffff);
- uint32_t x155, uint8_t x156 = subborrow_u32(x153, x107, 0xffffffff);
- uint32_t x158, uint8_t x159 = subborrow_u32(x156, x110, 0x3eddffff);
- uint32_t _, uint8_t x162 = subborrow_u32(x159, x111, 0x0);
- uint32_t x163 = cmovznz32(x162, x158, x110);
- uint32_t x164 = cmovznz32(x162, x155, x107);
- uint32_t x165 = cmovznz32(x162, x152, x104);
- uint32_t x166 = cmovznz32(x162, x149, x101);
- uint32_t x167 = cmovznz32(x162, x146, x98);
- uint32_t x168 = cmovznz32(x162, x143, x95);
- uint32_t x169 = cmovznz32(x162, x140, x92);
- uint32_t x170 = cmovznz32(x162, x137, x89);
- uint32_t x171 = cmovznz32(x162, x134, x86);
- uint32_t x172 = cmovznz32(x162, x131, x83);
- uint32_t x173 = cmovznz32(x162, x128, x80);
- uint32_t x174 = cmovznz32(x162, x125, x77);
- uint32_t x175 = cmovznz32(x162, x122, x74);
- uint32_t x176 = cmovznz32(x162, x119, x71);
- uint32_t x177 = cmovznz32(x162, x116, x68);
- uint32_t x178 = cmovznz32(x162, x113, x65);
- return (x163, x164, x165, x166, x167, x168, x169, x170, x171, x172, x173, x174, x175, x176, x177, x178))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/feaddDisplay.v b/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/feaddDisplay.v
deleted file mode 100644
index f5411c7b9..000000000
--- a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e510m290x2e496m1_16limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/femul.v b/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/femul.v
deleted file mode 100644
index 2d0530515..000000000
--- a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e510m290x2e496m1_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/femulDisplay.v b/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/femulDisplay.v
deleted file mode 100644
index 6908019e6..000000000
--- a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e510m290x2e496m1_16limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fenz.c b/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fenz.c
deleted file mode 100644
index 5c5d21b0e..000000000
--- a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fenz.c
+++ /dev/null
@@ -1,35 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x31 = (x30 | x29);
- { uint32_t x32 = (x28 | x31);
- { uint32_t x33 = (x26 | x32);
- { uint32_t x34 = (x24 | x33);
- { uint32_t x35 = (x22 | x34);
- { uint32_t x36 = (x20 | x35);
- { uint32_t x37 = (x18 | x36);
- { uint32_t x38 = (x16 | x37);
- { uint32_t x39 = (x14 | x38);
- { uint32_t x40 = (x12 | x39);
- { uint32_t x41 = (x10 | x40);
- { uint32_t x42 = (x8 | x41);
- { uint32_t x43 = (x6 | x42);
- { uint32_t x44 = (x4 | x43);
- { uint32_t x45 = (x2 | x44);
- out[0] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fenz.v b/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fenz.v
deleted file mode 100644
index f28b6235b..000000000
--- a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e510m290x2e496m1_16limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fenzDisplay.log b/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fenzDisplay.log
deleted file mode 100644
index eb0b6ea33..000000000
--- a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fenzDisplay.log
+++ /dev/null
@@ -1,22 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x31 = (x30 | x29);
- uint32_t x32 = (x28 | x31);
- uint32_t x33 = (x26 | x32);
- uint32_t x34 = (x24 | x33);
- uint32_t x35 = (x22 | x34);
- uint32_t x36 = (x20 | x35);
- uint32_t x37 = (x18 | x36);
- uint32_t x38 = (x16 | x37);
- uint32_t x39 = (x14 | x38);
- uint32_t x40 = (x12 | x39);
- uint32_t x41 = (x10 | x40);
- uint32_t x42 = (x8 | x41);
- uint32_t x43 = (x6 | x42);
- uint32_t x44 = (x4 | x43);
- uint32_t x45 = (x2 | x44);
- return x45)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fenzDisplay.v b/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fenzDisplay.v
deleted file mode 100644
index beb477c79..000000000
--- a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e510m290x2e496m1_16limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/feopp.v b/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/feopp.v
deleted file mode 100644
index ad725872f..000000000
--- a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e510m290x2e496m1_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/feoppDisplay.v b/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/feoppDisplay.v
deleted file mode 100644
index 6ee281365..000000000
--- a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e510m290x2e496m1_16limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fesquare.c b/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fesub.v b/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fesub.v
deleted file mode 100644
index dffd1a5e9..000000000
--- a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e510m290x2e496m1_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fesubDisplay.v b/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fesubDisplay.v
deleted file mode 100644
index 5819c30a6..000000000
--- a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e510m290x2e496m1_16limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/py_interpreter.sh b/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/py_interpreter.sh
deleted file mode 100755
index c7e51b970..000000000
--- a/src/Specific/montgomery32_2e510m290x2e496m1_16limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**510 - 290*2**496 - 1' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e511m187_16limbs/CurveParameters.v b/src/Specific/montgomery32_2e511m187_16limbs/CurveParameters.v
deleted file mode 100644
index 466621f72..000000000
--- a/src/Specific/montgomery32_2e511m187_16limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^511 - 187
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 16%nat;
- base := 32;
- bitwidth := 32;
- s := 2^511;
- c := [(1, 187)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e511m187_16limbs/Synthesis.v b/src/Specific/montgomery32_2e511m187_16limbs/Synthesis.v
deleted file mode 100644
index 9f3d257c0..000000000
--- a/src/Specific/montgomery32_2e511m187_16limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e511m187_16limbs.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/montgomery32_2e511m187_16limbs/compiler.sh b/src/Specific/montgomery32_2e511m187_16limbs/compiler.sh
deleted file mode 100755
index 181d02550..000000000
--- a/src/Specific/montgomery32_2e511m187_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<511) - 187' "$@"
diff --git a/src/Specific/montgomery32_2e511m187_16limbs/compilerxx.sh b/src/Specific/montgomery32_2e511m187_16limbs/compilerxx.sh
deleted file mode 100755
index 2256f4d06..000000000
--- a/src/Specific/montgomery32_2e511m187_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<511) - 187' "$@"
diff --git a/src/Specific/montgomery32_2e511m187_16limbs/feadd.c b/src/Specific/montgomery32_2e511m187_16limbs/feadd.c
deleted file mode 100644
index ccbd5e348..000000000
--- a/src/Specific/montgomery32_2e511m187_16limbs/feadd.c
+++ /dev/null
@@ -1,100 +0,0 @@
-static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- { uint32_t x65; uint8_t x66 = _addcarryx_u32(0x0, x5, x35, &x65);
- { uint32_t x68; uint8_t x69 = _addcarryx_u32(x66, x7, x37, &x68);
- { uint32_t x71; uint8_t x72 = _addcarryx_u32(x69, x9, x39, &x71);
- { uint32_t x74; uint8_t x75 = _addcarryx_u32(x72, x11, x41, &x74);
- { uint32_t x77; uint8_t x78 = _addcarryx_u32(x75, x13, x43, &x77);
- { uint32_t x80; uint8_t x81 = _addcarryx_u32(x78, x15, x45, &x80);
- { uint32_t x83; uint8_t x84 = _addcarryx_u32(x81, x17, x47, &x83);
- { uint32_t x86; uint8_t x87 = _addcarryx_u32(x84, x19, x49, &x86);
- { uint32_t x89; uint8_t x90 = _addcarryx_u32(x87, x21, x51, &x89);
- { uint32_t x92; uint8_t x93 = _addcarryx_u32(x90, x23, x53, &x92);
- { uint32_t x95; uint8_t x96 = _addcarryx_u32(x93, x25, x55, &x95);
- { uint32_t x98; uint8_t x99 = _addcarryx_u32(x96, x27, x57, &x98);
- { uint32_t x101; uint8_t x102 = _addcarryx_u32(x99, x29, x59, &x101);
- { uint32_t x104; uint8_t x105 = _addcarryx_u32(x102, x31, x61, &x104);
- { uint32_t x107; uint8_t x108 = _addcarryx_u32(x105, x33, x63, &x107);
- { uint32_t x110; uint8_t x111 = _addcarryx_u32(x108, x32, x62, &x110);
- { uint32_t x113; uint8_t x114 = _subborrow_u32(0x0, x65, 0xffffff45, &x113);
- { uint32_t x116; uint8_t x117 = _subborrow_u32(x114, x68, 0xffffffff, &x116);
- { uint32_t x119; uint8_t x120 = _subborrow_u32(x117, x71, 0xffffffff, &x119);
- { uint32_t x122; uint8_t x123 = _subborrow_u32(x120, x74, 0xffffffff, &x122);
- { uint32_t x125; uint8_t x126 = _subborrow_u32(x123, x77, 0xffffffff, &x125);
- { uint32_t x128; uint8_t x129 = _subborrow_u32(x126, x80, 0xffffffff, &x128);
- { uint32_t x131; uint8_t x132 = _subborrow_u32(x129, x83, 0xffffffff, &x131);
- { uint32_t x134; uint8_t x135 = _subborrow_u32(x132, x86, 0xffffffff, &x134);
- { uint32_t x137; uint8_t x138 = _subborrow_u32(x135, x89, 0xffffffff, &x137);
- { uint32_t x140; uint8_t x141 = _subborrow_u32(x138, x92, 0xffffffff, &x140);
- { uint32_t x143; uint8_t x144 = _subborrow_u32(x141, x95, 0xffffffff, &x143);
- { uint32_t x146; uint8_t x147 = _subborrow_u32(x144, x98, 0xffffffff, &x146);
- { uint32_t x149; uint8_t x150 = _subborrow_u32(x147, x101, 0xffffffff, &x149);
- { uint32_t x152; uint8_t x153 = _subborrow_u32(x150, x104, 0xffffffff, &x152);
- { uint32_t x155; uint8_t x156 = _subborrow_u32(x153, x107, 0xffffffff, &x155);
- { uint32_t x158; uint8_t x159 = _subborrow_u32(x156, x110, 0x7fffffff, &x158);
- { uint32_t _; uint8_t x162 = _subborrow_u32(x159, x111, 0x0, &_);
- { uint32_t x163 = cmovznz32(x162, x158, x110);
- { uint32_t x164 = cmovznz32(x162, x155, x107);
- { uint32_t x165 = cmovznz32(x162, x152, x104);
- { uint32_t x166 = cmovznz32(x162, x149, x101);
- { uint32_t x167 = cmovznz32(x162, x146, x98);
- { uint32_t x168 = cmovznz32(x162, x143, x95);
- { uint32_t x169 = cmovznz32(x162, x140, x92);
- { uint32_t x170 = cmovznz32(x162, x137, x89);
- { uint32_t x171 = cmovznz32(x162, x134, x86);
- { uint32_t x172 = cmovznz32(x162, x131, x83);
- { uint32_t x173 = cmovznz32(x162, x128, x80);
- { uint32_t x174 = cmovznz32(x162, x125, x77);
- { uint32_t x175 = cmovznz32(x162, x122, x74);
- { uint32_t x176 = cmovznz32(x162, x119, x71);
- { uint32_t x177 = cmovznz32(x162, x116, x68);
- { uint32_t x178 = cmovznz32(x162, x113, x65);
- out[0] = x178;
- out[1] = x177;
- out[2] = x176;
- out[3] = x175;
- out[4] = x174;
- out[5] = x173;
- out[6] = x172;
- out[7] = x171;
- out[8] = x170;
- out[9] = x169;
- out[10] = x168;
- out[11] = x167;
- out[12] = x166;
- out[13] = x165;
- out[14] = x164;
- out[15] = x163;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e511m187_16limbs/feadd.v b/src/Specific/montgomery32_2e511m187_16limbs/feadd.v
deleted file mode 100644
index 68f2c4961..000000000
--- a/src/Specific/montgomery32_2e511m187_16limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e511m187_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e511m187_16limbs/feaddDisplay.log b/src/Specific/montgomery32_2e511m187_16limbs/feaddDisplay.log
deleted file mode 100644
index 59330b3bf..000000000
--- a/src/Specific/montgomery32_2e511m187_16limbs/feaddDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- uint32_t x65, uint8_t x66 = addcarryx_u32(0x0, x5, x35);
- uint32_t x68, uint8_t x69 = addcarryx_u32(x66, x7, x37);
- uint32_t x71, uint8_t x72 = addcarryx_u32(x69, x9, x39);
- uint32_t x74, uint8_t x75 = addcarryx_u32(x72, x11, x41);
- uint32_t x77, uint8_t x78 = addcarryx_u32(x75, x13, x43);
- uint32_t x80, uint8_t x81 = addcarryx_u32(x78, x15, x45);
- uint32_t x83, uint8_t x84 = addcarryx_u32(x81, x17, x47);
- uint32_t x86, uint8_t x87 = addcarryx_u32(x84, x19, x49);
- uint32_t x89, uint8_t x90 = addcarryx_u32(x87, x21, x51);
- uint32_t x92, uint8_t x93 = addcarryx_u32(x90, x23, x53);
- uint32_t x95, uint8_t x96 = addcarryx_u32(x93, x25, x55);
- uint32_t x98, uint8_t x99 = addcarryx_u32(x96, x27, x57);
- uint32_t x101, uint8_t x102 = addcarryx_u32(x99, x29, x59);
- uint32_t x104, uint8_t x105 = addcarryx_u32(x102, x31, x61);
- uint32_t x107, uint8_t x108 = addcarryx_u32(x105, x33, x63);
- uint32_t x110, uint8_t x111 = addcarryx_u32(x108, x32, x62);
- uint32_t x113, uint8_t x114 = subborrow_u32(0x0, x65, 0xffffff45);
- uint32_t x116, uint8_t x117 = subborrow_u32(x114, x68, 0xffffffff);
- uint32_t x119, uint8_t x120 = subborrow_u32(x117, x71, 0xffffffff);
- uint32_t x122, uint8_t x123 = subborrow_u32(x120, x74, 0xffffffff);
- uint32_t x125, uint8_t x126 = subborrow_u32(x123, x77, 0xffffffff);
- uint32_t x128, uint8_t x129 = subborrow_u32(x126, x80, 0xffffffff);
- uint32_t x131, uint8_t x132 = subborrow_u32(x129, x83, 0xffffffff);
- uint32_t x134, uint8_t x135 = subborrow_u32(x132, x86, 0xffffffff);
- uint32_t x137, uint8_t x138 = subborrow_u32(x135, x89, 0xffffffff);
- uint32_t x140, uint8_t x141 = subborrow_u32(x138, x92, 0xffffffff);
- uint32_t x143, uint8_t x144 = subborrow_u32(x141, x95, 0xffffffff);
- uint32_t x146, uint8_t x147 = subborrow_u32(x144, x98, 0xffffffff);
- uint32_t x149, uint8_t x150 = subborrow_u32(x147, x101, 0xffffffff);
- uint32_t x152, uint8_t x153 = subborrow_u32(x150, x104, 0xffffffff);
- uint32_t x155, uint8_t x156 = subborrow_u32(x153, x107, 0xffffffff);
- uint32_t x158, uint8_t x159 = subborrow_u32(x156, x110, 0x7fffffff);
- uint32_t _, uint8_t x162 = subborrow_u32(x159, x111, 0x0);
- uint32_t x163 = cmovznz32(x162, x158, x110);
- uint32_t x164 = cmovznz32(x162, x155, x107);
- uint32_t x165 = cmovznz32(x162, x152, x104);
- uint32_t x166 = cmovznz32(x162, x149, x101);
- uint32_t x167 = cmovznz32(x162, x146, x98);
- uint32_t x168 = cmovznz32(x162, x143, x95);
- uint32_t x169 = cmovznz32(x162, x140, x92);
- uint32_t x170 = cmovznz32(x162, x137, x89);
- uint32_t x171 = cmovznz32(x162, x134, x86);
- uint32_t x172 = cmovznz32(x162, x131, x83);
- uint32_t x173 = cmovznz32(x162, x128, x80);
- uint32_t x174 = cmovznz32(x162, x125, x77);
- uint32_t x175 = cmovznz32(x162, x122, x74);
- uint32_t x176 = cmovznz32(x162, x119, x71);
- uint32_t x177 = cmovznz32(x162, x116, x68);
- uint32_t x178 = cmovznz32(x162, x113, x65);
- return (x163, x164, x165, x166, x167, x168, x169, x170, x171, x172, x173, x174, x175, x176, x177, x178))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e511m187_16limbs/feaddDisplay.v b/src/Specific/montgomery32_2e511m187_16limbs/feaddDisplay.v
deleted file mode 100644
index e0a27ff81..000000000
--- a/src/Specific/montgomery32_2e511m187_16limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e511m187_16limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e511m187_16limbs/femul.v b/src/Specific/montgomery32_2e511m187_16limbs/femul.v
deleted file mode 100644
index df868580c..000000000
--- a/src/Specific/montgomery32_2e511m187_16limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e511m187_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e511m187_16limbs/femulDisplay.v b/src/Specific/montgomery32_2e511m187_16limbs/femulDisplay.v
deleted file mode 100644
index c5ce90c96..000000000
--- a/src/Specific/montgomery32_2e511m187_16limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e511m187_16limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e511m187_16limbs/fenz.c b/src/Specific/montgomery32_2e511m187_16limbs/fenz.c
deleted file mode 100644
index 5c5d21b0e..000000000
--- a/src/Specific/montgomery32_2e511m187_16limbs/fenz.c
+++ /dev/null
@@ -1,35 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x31 = (x30 | x29);
- { uint32_t x32 = (x28 | x31);
- { uint32_t x33 = (x26 | x32);
- { uint32_t x34 = (x24 | x33);
- { uint32_t x35 = (x22 | x34);
- { uint32_t x36 = (x20 | x35);
- { uint32_t x37 = (x18 | x36);
- { uint32_t x38 = (x16 | x37);
- { uint32_t x39 = (x14 | x38);
- { uint32_t x40 = (x12 | x39);
- { uint32_t x41 = (x10 | x40);
- { uint32_t x42 = (x8 | x41);
- { uint32_t x43 = (x6 | x42);
- { uint32_t x44 = (x4 | x43);
- { uint32_t x45 = (x2 | x44);
- out[0] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e511m187_16limbs/fenz.v b/src/Specific/montgomery32_2e511m187_16limbs/fenz.v
deleted file mode 100644
index d81ba93b0..000000000
--- a/src/Specific/montgomery32_2e511m187_16limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e511m187_16limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e511m187_16limbs/fenzDisplay.log b/src/Specific/montgomery32_2e511m187_16limbs/fenzDisplay.log
deleted file mode 100644
index eb0b6ea33..000000000
--- a/src/Specific/montgomery32_2e511m187_16limbs/fenzDisplay.log
+++ /dev/null
@@ -1,22 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x31 = (x30 | x29);
- uint32_t x32 = (x28 | x31);
- uint32_t x33 = (x26 | x32);
- uint32_t x34 = (x24 | x33);
- uint32_t x35 = (x22 | x34);
- uint32_t x36 = (x20 | x35);
- uint32_t x37 = (x18 | x36);
- uint32_t x38 = (x16 | x37);
- uint32_t x39 = (x14 | x38);
- uint32_t x40 = (x12 | x39);
- uint32_t x41 = (x10 | x40);
- uint32_t x42 = (x8 | x41);
- uint32_t x43 = (x6 | x42);
- uint32_t x44 = (x4 | x43);
- uint32_t x45 = (x2 | x44);
- return x45)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e511m187_16limbs/fenzDisplay.v b/src/Specific/montgomery32_2e511m187_16limbs/fenzDisplay.v
deleted file mode 100644
index 0f8de2f53..000000000
--- a/src/Specific/montgomery32_2e511m187_16limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e511m187_16limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e511m187_16limbs/feopp.v b/src/Specific/montgomery32_2e511m187_16limbs/feopp.v
deleted file mode 100644
index 2457e068b..000000000
--- a/src/Specific/montgomery32_2e511m187_16limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e511m187_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e511m187_16limbs/feoppDisplay.v b/src/Specific/montgomery32_2e511m187_16limbs/feoppDisplay.v
deleted file mode 100644
index 798bcd7af..000000000
--- a/src/Specific/montgomery32_2e511m187_16limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e511m187_16limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e511m187_16limbs/fesquare.c b/src/Specific/montgomery32_2e511m187_16limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e511m187_16limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e511m187_16limbs/fesub.v b/src/Specific/montgomery32_2e511m187_16limbs/fesub.v
deleted file mode 100644
index 99a4118e7..000000000
--- a/src/Specific/montgomery32_2e511m187_16limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e511m187_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e511m187_16limbs/fesubDisplay.v b/src/Specific/montgomery32_2e511m187_16limbs/fesubDisplay.v
deleted file mode 100644
index bd817251a..000000000
--- a/src/Specific/montgomery32_2e511m187_16limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e511m187_16limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e511m187_16limbs/py_interpreter.sh b/src/Specific/montgomery32_2e511m187_16limbs/py_interpreter.sh
deleted file mode 100755
index a906c0086..000000000
--- a/src/Specific/montgomery32_2e511m187_16limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**511 - 187' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e511m481_16limbs/CurveParameters.v b/src/Specific/montgomery32_2e511m481_16limbs/CurveParameters.v
deleted file mode 100644
index 549de6e98..000000000
--- a/src/Specific/montgomery32_2e511m481_16limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^511 - 481
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 16%nat;
- base := 32;
- bitwidth := 32;
- s := 2^511;
- c := [(1, 481)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e511m481_16limbs/Synthesis.v b/src/Specific/montgomery32_2e511m481_16limbs/Synthesis.v
deleted file mode 100644
index 00f30f376..000000000
--- a/src/Specific/montgomery32_2e511m481_16limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e511m481_16limbs.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/montgomery32_2e511m481_16limbs/compiler.sh b/src/Specific/montgomery32_2e511m481_16limbs/compiler.sh
deleted file mode 100755
index 467e507df..000000000
--- a/src/Specific/montgomery32_2e511m481_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<511) - 481' "$@"
diff --git a/src/Specific/montgomery32_2e511m481_16limbs/compilerxx.sh b/src/Specific/montgomery32_2e511m481_16limbs/compilerxx.sh
deleted file mode 100755
index 498d748e0..000000000
--- a/src/Specific/montgomery32_2e511m481_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<511) - 481' "$@"
diff --git a/src/Specific/montgomery32_2e511m481_16limbs/feadd.c b/src/Specific/montgomery32_2e511m481_16limbs/feadd.c
deleted file mode 100644
index 17497e041..000000000
--- a/src/Specific/montgomery32_2e511m481_16limbs/feadd.c
+++ /dev/null
@@ -1,100 +0,0 @@
-static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- { uint32_t x65; uint8_t x66 = _addcarryx_u32(0x0, x5, x35, &x65);
- { uint32_t x68; uint8_t x69 = _addcarryx_u32(x66, x7, x37, &x68);
- { uint32_t x71; uint8_t x72 = _addcarryx_u32(x69, x9, x39, &x71);
- { uint32_t x74; uint8_t x75 = _addcarryx_u32(x72, x11, x41, &x74);
- { uint32_t x77; uint8_t x78 = _addcarryx_u32(x75, x13, x43, &x77);
- { uint32_t x80; uint8_t x81 = _addcarryx_u32(x78, x15, x45, &x80);
- { uint32_t x83; uint8_t x84 = _addcarryx_u32(x81, x17, x47, &x83);
- { uint32_t x86; uint8_t x87 = _addcarryx_u32(x84, x19, x49, &x86);
- { uint32_t x89; uint8_t x90 = _addcarryx_u32(x87, x21, x51, &x89);
- { uint32_t x92; uint8_t x93 = _addcarryx_u32(x90, x23, x53, &x92);
- { uint32_t x95; uint8_t x96 = _addcarryx_u32(x93, x25, x55, &x95);
- { uint32_t x98; uint8_t x99 = _addcarryx_u32(x96, x27, x57, &x98);
- { uint32_t x101; uint8_t x102 = _addcarryx_u32(x99, x29, x59, &x101);
- { uint32_t x104; uint8_t x105 = _addcarryx_u32(x102, x31, x61, &x104);
- { uint32_t x107; uint8_t x108 = _addcarryx_u32(x105, x33, x63, &x107);
- { uint32_t x110; uint8_t x111 = _addcarryx_u32(x108, x32, x62, &x110);
- { uint32_t x113; uint8_t x114 = _subborrow_u32(0x0, x65, 0xfffffe1f, &x113);
- { uint32_t x116; uint8_t x117 = _subborrow_u32(x114, x68, 0xffffffff, &x116);
- { uint32_t x119; uint8_t x120 = _subborrow_u32(x117, x71, 0xffffffff, &x119);
- { uint32_t x122; uint8_t x123 = _subborrow_u32(x120, x74, 0xffffffff, &x122);
- { uint32_t x125; uint8_t x126 = _subborrow_u32(x123, x77, 0xffffffff, &x125);
- { uint32_t x128; uint8_t x129 = _subborrow_u32(x126, x80, 0xffffffff, &x128);
- { uint32_t x131; uint8_t x132 = _subborrow_u32(x129, x83, 0xffffffff, &x131);
- { uint32_t x134; uint8_t x135 = _subborrow_u32(x132, x86, 0xffffffff, &x134);
- { uint32_t x137; uint8_t x138 = _subborrow_u32(x135, x89, 0xffffffff, &x137);
- { uint32_t x140; uint8_t x141 = _subborrow_u32(x138, x92, 0xffffffff, &x140);
- { uint32_t x143; uint8_t x144 = _subborrow_u32(x141, x95, 0xffffffff, &x143);
- { uint32_t x146; uint8_t x147 = _subborrow_u32(x144, x98, 0xffffffff, &x146);
- { uint32_t x149; uint8_t x150 = _subborrow_u32(x147, x101, 0xffffffff, &x149);
- { uint32_t x152; uint8_t x153 = _subborrow_u32(x150, x104, 0xffffffff, &x152);
- { uint32_t x155; uint8_t x156 = _subborrow_u32(x153, x107, 0xffffffff, &x155);
- { uint32_t x158; uint8_t x159 = _subborrow_u32(x156, x110, 0x7fffffff, &x158);
- { uint32_t _; uint8_t x162 = _subborrow_u32(x159, x111, 0x0, &_);
- { uint32_t x163 = cmovznz32(x162, x158, x110);
- { uint32_t x164 = cmovznz32(x162, x155, x107);
- { uint32_t x165 = cmovznz32(x162, x152, x104);
- { uint32_t x166 = cmovznz32(x162, x149, x101);
- { uint32_t x167 = cmovznz32(x162, x146, x98);
- { uint32_t x168 = cmovznz32(x162, x143, x95);
- { uint32_t x169 = cmovznz32(x162, x140, x92);
- { uint32_t x170 = cmovznz32(x162, x137, x89);
- { uint32_t x171 = cmovznz32(x162, x134, x86);
- { uint32_t x172 = cmovznz32(x162, x131, x83);
- { uint32_t x173 = cmovznz32(x162, x128, x80);
- { uint32_t x174 = cmovznz32(x162, x125, x77);
- { uint32_t x175 = cmovznz32(x162, x122, x74);
- { uint32_t x176 = cmovznz32(x162, x119, x71);
- { uint32_t x177 = cmovznz32(x162, x116, x68);
- { uint32_t x178 = cmovznz32(x162, x113, x65);
- out[0] = x178;
- out[1] = x177;
- out[2] = x176;
- out[3] = x175;
- out[4] = x174;
- out[5] = x173;
- out[6] = x172;
- out[7] = x171;
- out[8] = x170;
- out[9] = x169;
- out[10] = x168;
- out[11] = x167;
- out[12] = x166;
- out[13] = x165;
- out[14] = x164;
- out[15] = x163;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e511m481_16limbs/feadd.v b/src/Specific/montgomery32_2e511m481_16limbs/feadd.v
deleted file mode 100644
index a9e7ce2a6..000000000
--- a/src/Specific/montgomery32_2e511m481_16limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e511m481_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e511m481_16limbs/feaddDisplay.log b/src/Specific/montgomery32_2e511m481_16limbs/feaddDisplay.log
deleted file mode 100644
index 08f7c6c17..000000000
--- a/src/Specific/montgomery32_2e511m481_16limbs/feaddDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- uint32_t x65, uint8_t x66 = addcarryx_u32(0x0, x5, x35);
- uint32_t x68, uint8_t x69 = addcarryx_u32(x66, x7, x37);
- uint32_t x71, uint8_t x72 = addcarryx_u32(x69, x9, x39);
- uint32_t x74, uint8_t x75 = addcarryx_u32(x72, x11, x41);
- uint32_t x77, uint8_t x78 = addcarryx_u32(x75, x13, x43);
- uint32_t x80, uint8_t x81 = addcarryx_u32(x78, x15, x45);
- uint32_t x83, uint8_t x84 = addcarryx_u32(x81, x17, x47);
- uint32_t x86, uint8_t x87 = addcarryx_u32(x84, x19, x49);
- uint32_t x89, uint8_t x90 = addcarryx_u32(x87, x21, x51);
- uint32_t x92, uint8_t x93 = addcarryx_u32(x90, x23, x53);
- uint32_t x95, uint8_t x96 = addcarryx_u32(x93, x25, x55);
- uint32_t x98, uint8_t x99 = addcarryx_u32(x96, x27, x57);
- uint32_t x101, uint8_t x102 = addcarryx_u32(x99, x29, x59);
- uint32_t x104, uint8_t x105 = addcarryx_u32(x102, x31, x61);
- uint32_t x107, uint8_t x108 = addcarryx_u32(x105, x33, x63);
- uint32_t x110, uint8_t x111 = addcarryx_u32(x108, x32, x62);
- uint32_t x113, uint8_t x114 = subborrow_u32(0x0, x65, 0xfffffe1f);
- uint32_t x116, uint8_t x117 = subborrow_u32(x114, x68, 0xffffffff);
- uint32_t x119, uint8_t x120 = subborrow_u32(x117, x71, 0xffffffff);
- uint32_t x122, uint8_t x123 = subborrow_u32(x120, x74, 0xffffffff);
- uint32_t x125, uint8_t x126 = subborrow_u32(x123, x77, 0xffffffff);
- uint32_t x128, uint8_t x129 = subborrow_u32(x126, x80, 0xffffffff);
- uint32_t x131, uint8_t x132 = subborrow_u32(x129, x83, 0xffffffff);
- uint32_t x134, uint8_t x135 = subborrow_u32(x132, x86, 0xffffffff);
- uint32_t x137, uint8_t x138 = subborrow_u32(x135, x89, 0xffffffff);
- uint32_t x140, uint8_t x141 = subborrow_u32(x138, x92, 0xffffffff);
- uint32_t x143, uint8_t x144 = subborrow_u32(x141, x95, 0xffffffff);
- uint32_t x146, uint8_t x147 = subborrow_u32(x144, x98, 0xffffffff);
- uint32_t x149, uint8_t x150 = subborrow_u32(x147, x101, 0xffffffff);
- uint32_t x152, uint8_t x153 = subborrow_u32(x150, x104, 0xffffffff);
- uint32_t x155, uint8_t x156 = subborrow_u32(x153, x107, 0xffffffff);
- uint32_t x158, uint8_t x159 = subborrow_u32(x156, x110, 0x7fffffff);
- uint32_t _, uint8_t x162 = subborrow_u32(x159, x111, 0x0);
- uint32_t x163 = cmovznz32(x162, x158, x110);
- uint32_t x164 = cmovznz32(x162, x155, x107);
- uint32_t x165 = cmovznz32(x162, x152, x104);
- uint32_t x166 = cmovznz32(x162, x149, x101);
- uint32_t x167 = cmovznz32(x162, x146, x98);
- uint32_t x168 = cmovznz32(x162, x143, x95);
- uint32_t x169 = cmovznz32(x162, x140, x92);
- uint32_t x170 = cmovznz32(x162, x137, x89);
- uint32_t x171 = cmovznz32(x162, x134, x86);
- uint32_t x172 = cmovznz32(x162, x131, x83);
- uint32_t x173 = cmovznz32(x162, x128, x80);
- uint32_t x174 = cmovznz32(x162, x125, x77);
- uint32_t x175 = cmovznz32(x162, x122, x74);
- uint32_t x176 = cmovznz32(x162, x119, x71);
- uint32_t x177 = cmovznz32(x162, x116, x68);
- uint32_t x178 = cmovznz32(x162, x113, x65);
- return (x163, x164, x165, x166, x167, x168, x169, x170, x171, x172, x173, x174, x175, x176, x177, x178))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e511m481_16limbs/feaddDisplay.v b/src/Specific/montgomery32_2e511m481_16limbs/feaddDisplay.v
deleted file mode 100644
index 5e5d2032e..000000000
--- a/src/Specific/montgomery32_2e511m481_16limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e511m481_16limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e511m481_16limbs/femul.v b/src/Specific/montgomery32_2e511m481_16limbs/femul.v
deleted file mode 100644
index fd00ae1bf..000000000
--- a/src/Specific/montgomery32_2e511m481_16limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e511m481_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e511m481_16limbs/femulDisplay.v b/src/Specific/montgomery32_2e511m481_16limbs/femulDisplay.v
deleted file mode 100644
index 8d62e3686..000000000
--- a/src/Specific/montgomery32_2e511m481_16limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e511m481_16limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e511m481_16limbs/fenz.c b/src/Specific/montgomery32_2e511m481_16limbs/fenz.c
deleted file mode 100644
index 5c5d21b0e..000000000
--- a/src/Specific/montgomery32_2e511m481_16limbs/fenz.c
+++ /dev/null
@@ -1,35 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x31 = (x30 | x29);
- { uint32_t x32 = (x28 | x31);
- { uint32_t x33 = (x26 | x32);
- { uint32_t x34 = (x24 | x33);
- { uint32_t x35 = (x22 | x34);
- { uint32_t x36 = (x20 | x35);
- { uint32_t x37 = (x18 | x36);
- { uint32_t x38 = (x16 | x37);
- { uint32_t x39 = (x14 | x38);
- { uint32_t x40 = (x12 | x39);
- { uint32_t x41 = (x10 | x40);
- { uint32_t x42 = (x8 | x41);
- { uint32_t x43 = (x6 | x42);
- { uint32_t x44 = (x4 | x43);
- { uint32_t x45 = (x2 | x44);
- out[0] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e511m481_16limbs/fenz.v b/src/Specific/montgomery32_2e511m481_16limbs/fenz.v
deleted file mode 100644
index ae3c406dd..000000000
--- a/src/Specific/montgomery32_2e511m481_16limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e511m481_16limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e511m481_16limbs/fenzDisplay.log b/src/Specific/montgomery32_2e511m481_16limbs/fenzDisplay.log
deleted file mode 100644
index eb0b6ea33..000000000
--- a/src/Specific/montgomery32_2e511m481_16limbs/fenzDisplay.log
+++ /dev/null
@@ -1,22 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x31 = (x30 | x29);
- uint32_t x32 = (x28 | x31);
- uint32_t x33 = (x26 | x32);
- uint32_t x34 = (x24 | x33);
- uint32_t x35 = (x22 | x34);
- uint32_t x36 = (x20 | x35);
- uint32_t x37 = (x18 | x36);
- uint32_t x38 = (x16 | x37);
- uint32_t x39 = (x14 | x38);
- uint32_t x40 = (x12 | x39);
- uint32_t x41 = (x10 | x40);
- uint32_t x42 = (x8 | x41);
- uint32_t x43 = (x6 | x42);
- uint32_t x44 = (x4 | x43);
- uint32_t x45 = (x2 | x44);
- return x45)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e511m481_16limbs/fenzDisplay.v b/src/Specific/montgomery32_2e511m481_16limbs/fenzDisplay.v
deleted file mode 100644
index c79a45a35..000000000
--- a/src/Specific/montgomery32_2e511m481_16limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e511m481_16limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e511m481_16limbs/feopp.v b/src/Specific/montgomery32_2e511m481_16limbs/feopp.v
deleted file mode 100644
index 5d5bd5e9d..000000000
--- a/src/Specific/montgomery32_2e511m481_16limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e511m481_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e511m481_16limbs/feoppDisplay.v b/src/Specific/montgomery32_2e511m481_16limbs/feoppDisplay.v
deleted file mode 100644
index fe6ac1921..000000000
--- a/src/Specific/montgomery32_2e511m481_16limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e511m481_16limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e511m481_16limbs/fesquare.c b/src/Specific/montgomery32_2e511m481_16limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e511m481_16limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e511m481_16limbs/fesub.v b/src/Specific/montgomery32_2e511m481_16limbs/fesub.v
deleted file mode 100644
index 8ce4861c1..000000000
--- a/src/Specific/montgomery32_2e511m481_16limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e511m481_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e511m481_16limbs/fesubDisplay.v b/src/Specific/montgomery32_2e511m481_16limbs/fesubDisplay.v
deleted file mode 100644
index 609d3c784..000000000
--- a/src/Specific/montgomery32_2e511m481_16limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e511m481_16limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e511m481_16limbs/py_interpreter.sh b/src/Specific/montgomery32_2e511m481_16limbs/py_interpreter.sh
deleted file mode 100755
index 7d2b63d36..000000000
--- a/src/Specific/montgomery32_2e511m481_16limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**511 - 481' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/CurveParameters.v b/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/CurveParameters.v
deleted file mode 100644
index 1ae4f17f9..000000000
--- a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^512 - 491*2^496 - 1
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 16%nat;
- base := 32;
- bitwidth := 32;
- s := 2^512;
- c := [(1, 1); (491, 2^496)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e512m491x2e496m1_16limbs/Synthesis.v b/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/Synthesis.v
deleted file mode 100644
index ed19bc17d..000000000
--- a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e512m491x2e496m1_16limbs.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/montgomery32_2e512m491x2e496m1_16limbs/compiler.sh b/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/compiler.sh
deleted file mode 100755
index 0cdbf7285..000000000
--- a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/compilerxx.sh b/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/compilerxx.sh
deleted file mode 100755
index 5546086f1..000000000
--- a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/feadd.c b/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/feadd.c
deleted file mode 100644
index b107d1c5e..000000000
--- a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/feadd.c
+++ /dev/null
@@ -1,100 +0,0 @@
-static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- { uint32_t x65; uint8_t x66 = _addcarryx_u32(0x0, x5, x35, &x65);
- { uint32_t x68; uint8_t x69 = _addcarryx_u32(x66, x7, x37, &x68);
- { uint32_t x71; uint8_t x72 = _addcarryx_u32(x69, x9, x39, &x71);
- { uint32_t x74; uint8_t x75 = _addcarryx_u32(x72, x11, x41, &x74);
- { uint32_t x77; uint8_t x78 = _addcarryx_u32(x75, x13, x43, &x77);
- { uint32_t x80; uint8_t x81 = _addcarryx_u32(x78, x15, x45, &x80);
- { uint32_t x83; uint8_t x84 = _addcarryx_u32(x81, x17, x47, &x83);
- { uint32_t x86; uint8_t x87 = _addcarryx_u32(x84, x19, x49, &x86);
- { uint32_t x89; uint8_t x90 = _addcarryx_u32(x87, x21, x51, &x89);
- { uint32_t x92; uint8_t x93 = _addcarryx_u32(x90, x23, x53, &x92);
- { uint32_t x95; uint8_t x96 = _addcarryx_u32(x93, x25, x55, &x95);
- { uint32_t x98; uint8_t x99 = _addcarryx_u32(x96, x27, x57, &x98);
- { uint32_t x101; uint8_t x102 = _addcarryx_u32(x99, x29, x59, &x101);
- { uint32_t x104; uint8_t x105 = _addcarryx_u32(x102, x31, x61, &x104);
- { uint32_t x107; uint8_t x108 = _addcarryx_u32(x105, x33, x63, &x107);
- { uint32_t x110; uint8_t x111 = _addcarryx_u32(x108, x32, x62, &x110);
- { uint32_t x113; uint8_t x114 = _subborrow_u32(0x0, x65, 0xffffffff, &x113);
- { uint32_t x116; uint8_t x117 = _subborrow_u32(x114, x68, 0xffffffff, &x116);
- { uint32_t x119; uint8_t x120 = _subborrow_u32(x117, x71, 0xffffffff, &x119);
- { uint32_t x122; uint8_t x123 = _subborrow_u32(x120, x74, 0xffffffff, &x122);
- { uint32_t x125; uint8_t x126 = _subborrow_u32(x123, x77, 0xffffffff, &x125);
- { uint32_t x128; uint8_t x129 = _subborrow_u32(x126, x80, 0xffffffff, &x128);
- { uint32_t x131; uint8_t x132 = _subborrow_u32(x129, x83, 0xffffffff, &x131);
- { uint32_t x134; uint8_t x135 = _subborrow_u32(x132, x86, 0xffffffff, &x134);
- { uint32_t x137; uint8_t x138 = _subborrow_u32(x135, x89, 0xffffffff, &x137);
- { uint32_t x140; uint8_t x141 = _subborrow_u32(x138, x92, 0xffffffff, &x140);
- { uint32_t x143; uint8_t x144 = _subborrow_u32(x141, x95, 0xffffffff, &x143);
- { uint32_t x146; uint8_t x147 = _subborrow_u32(x144, x98, 0xffffffff, &x146);
- { uint32_t x149; uint8_t x150 = _subborrow_u32(x147, x101, 0xffffffff, &x149);
- { uint32_t x152; uint8_t x153 = _subborrow_u32(x150, x104, 0xffffffff, &x152);
- { uint32_t x155; uint8_t x156 = _subborrow_u32(x153, x107, 0xffffffff, &x155);
- { uint32_t x158; uint8_t x159 = _subborrow_u32(x156, x110, 0xfe14ffff, &x158);
- { uint32_t _; uint8_t x162 = _subborrow_u32(x159, x111, 0x0, &_);
- { uint32_t x163 = cmovznz32(x162, x158, x110);
- { uint32_t x164 = cmovznz32(x162, x155, x107);
- { uint32_t x165 = cmovznz32(x162, x152, x104);
- { uint32_t x166 = cmovznz32(x162, x149, x101);
- { uint32_t x167 = cmovznz32(x162, x146, x98);
- { uint32_t x168 = cmovznz32(x162, x143, x95);
- { uint32_t x169 = cmovznz32(x162, x140, x92);
- { uint32_t x170 = cmovznz32(x162, x137, x89);
- { uint32_t x171 = cmovznz32(x162, x134, x86);
- { uint32_t x172 = cmovznz32(x162, x131, x83);
- { uint32_t x173 = cmovznz32(x162, x128, x80);
- { uint32_t x174 = cmovznz32(x162, x125, x77);
- { uint32_t x175 = cmovznz32(x162, x122, x74);
- { uint32_t x176 = cmovznz32(x162, x119, x71);
- { uint32_t x177 = cmovznz32(x162, x116, x68);
- { uint32_t x178 = cmovznz32(x162, x113, x65);
- out[0] = x178;
- out[1] = x177;
- out[2] = x176;
- out[3] = x175;
- out[4] = x174;
- out[5] = x173;
- out[6] = x172;
- out[7] = x171;
- out[8] = x170;
- out[9] = x169;
- out[10] = x168;
- out[11] = x167;
- out[12] = x166;
- out[13] = x165;
- out[14] = x164;
- out[15] = x163;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/feadd.v b/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/feadd.v
deleted file mode 100644
index 9cb1f7c88..000000000
--- a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e512m491x2e496m1_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/feaddDisplay.log b/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/feaddDisplay.log
deleted file mode 100644
index e0fa0330d..000000000
--- a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/feaddDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- uint32_t x65, uint8_t x66 = addcarryx_u32(0x0, x5, x35);
- uint32_t x68, uint8_t x69 = addcarryx_u32(x66, x7, x37);
- uint32_t x71, uint8_t x72 = addcarryx_u32(x69, x9, x39);
- uint32_t x74, uint8_t x75 = addcarryx_u32(x72, x11, x41);
- uint32_t x77, uint8_t x78 = addcarryx_u32(x75, x13, x43);
- uint32_t x80, uint8_t x81 = addcarryx_u32(x78, x15, x45);
- uint32_t x83, uint8_t x84 = addcarryx_u32(x81, x17, x47);
- uint32_t x86, uint8_t x87 = addcarryx_u32(x84, x19, x49);
- uint32_t x89, uint8_t x90 = addcarryx_u32(x87, x21, x51);
- uint32_t x92, uint8_t x93 = addcarryx_u32(x90, x23, x53);
- uint32_t x95, uint8_t x96 = addcarryx_u32(x93, x25, x55);
- uint32_t x98, uint8_t x99 = addcarryx_u32(x96, x27, x57);
- uint32_t x101, uint8_t x102 = addcarryx_u32(x99, x29, x59);
- uint32_t x104, uint8_t x105 = addcarryx_u32(x102, x31, x61);
- uint32_t x107, uint8_t x108 = addcarryx_u32(x105, x33, x63);
- uint32_t x110, uint8_t x111 = addcarryx_u32(x108, x32, x62);
- uint32_t x113, uint8_t x114 = subborrow_u32(0x0, x65, 0xffffffff);
- uint32_t x116, uint8_t x117 = subborrow_u32(x114, x68, 0xffffffff);
- uint32_t x119, uint8_t x120 = subborrow_u32(x117, x71, 0xffffffff);
- uint32_t x122, uint8_t x123 = subborrow_u32(x120, x74, 0xffffffff);
- uint32_t x125, uint8_t x126 = subborrow_u32(x123, x77, 0xffffffff);
- uint32_t x128, uint8_t x129 = subborrow_u32(x126, x80, 0xffffffff);
- uint32_t x131, uint8_t x132 = subborrow_u32(x129, x83, 0xffffffff);
- uint32_t x134, uint8_t x135 = subborrow_u32(x132, x86, 0xffffffff);
- uint32_t x137, uint8_t x138 = subborrow_u32(x135, x89, 0xffffffff);
- uint32_t x140, uint8_t x141 = subborrow_u32(x138, x92, 0xffffffff);
- uint32_t x143, uint8_t x144 = subborrow_u32(x141, x95, 0xffffffff);
- uint32_t x146, uint8_t x147 = subborrow_u32(x144, x98, 0xffffffff);
- uint32_t x149, uint8_t x150 = subborrow_u32(x147, x101, 0xffffffff);
- uint32_t x152, uint8_t x153 = subborrow_u32(x150, x104, 0xffffffff);
- uint32_t x155, uint8_t x156 = subborrow_u32(x153, x107, 0xffffffff);
- uint32_t x158, uint8_t x159 = subborrow_u32(x156, x110, 0xfe14ffff);
- uint32_t _, uint8_t x162 = subborrow_u32(x159, x111, 0x0);
- uint32_t x163 = cmovznz32(x162, x158, x110);
- uint32_t x164 = cmovznz32(x162, x155, x107);
- uint32_t x165 = cmovznz32(x162, x152, x104);
- uint32_t x166 = cmovznz32(x162, x149, x101);
- uint32_t x167 = cmovznz32(x162, x146, x98);
- uint32_t x168 = cmovznz32(x162, x143, x95);
- uint32_t x169 = cmovznz32(x162, x140, x92);
- uint32_t x170 = cmovznz32(x162, x137, x89);
- uint32_t x171 = cmovznz32(x162, x134, x86);
- uint32_t x172 = cmovznz32(x162, x131, x83);
- uint32_t x173 = cmovznz32(x162, x128, x80);
- uint32_t x174 = cmovznz32(x162, x125, x77);
- uint32_t x175 = cmovznz32(x162, x122, x74);
- uint32_t x176 = cmovznz32(x162, x119, x71);
- uint32_t x177 = cmovznz32(x162, x116, x68);
- uint32_t x178 = cmovznz32(x162, x113, x65);
- return (x163, x164, x165, x166, x167, x168, x169, x170, x171, x172, x173, x174, x175, x176, x177, x178))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/feaddDisplay.v b/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/feaddDisplay.v
deleted file mode 100644
index 5a905fe77..000000000
--- a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e512m491x2e496m1_16limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/femul.v b/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/femul.v
deleted file mode 100644
index c40c520c3..000000000
--- a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e512m491x2e496m1_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/femulDisplay.v b/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/femulDisplay.v
deleted file mode 100644
index 715f87c08..000000000
--- a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e512m491x2e496m1_16limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fenz.c b/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fenz.c
deleted file mode 100644
index 5c5d21b0e..000000000
--- a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fenz.c
+++ /dev/null
@@ -1,35 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x31 = (x30 | x29);
- { uint32_t x32 = (x28 | x31);
- { uint32_t x33 = (x26 | x32);
- { uint32_t x34 = (x24 | x33);
- { uint32_t x35 = (x22 | x34);
- { uint32_t x36 = (x20 | x35);
- { uint32_t x37 = (x18 | x36);
- { uint32_t x38 = (x16 | x37);
- { uint32_t x39 = (x14 | x38);
- { uint32_t x40 = (x12 | x39);
- { uint32_t x41 = (x10 | x40);
- { uint32_t x42 = (x8 | x41);
- { uint32_t x43 = (x6 | x42);
- { uint32_t x44 = (x4 | x43);
- { uint32_t x45 = (x2 | x44);
- out[0] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fenz.v b/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fenz.v
deleted file mode 100644
index d7c39fd66..000000000
--- a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e512m491x2e496m1_16limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fenzDisplay.log b/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fenzDisplay.log
deleted file mode 100644
index eb0b6ea33..000000000
--- a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fenzDisplay.log
+++ /dev/null
@@ -1,22 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x31 = (x30 | x29);
- uint32_t x32 = (x28 | x31);
- uint32_t x33 = (x26 | x32);
- uint32_t x34 = (x24 | x33);
- uint32_t x35 = (x22 | x34);
- uint32_t x36 = (x20 | x35);
- uint32_t x37 = (x18 | x36);
- uint32_t x38 = (x16 | x37);
- uint32_t x39 = (x14 | x38);
- uint32_t x40 = (x12 | x39);
- uint32_t x41 = (x10 | x40);
- uint32_t x42 = (x8 | x41);
- uint32_t x43 = (x6 | x42);
- uint32_t x44 = (x4 | x43);
- uint32_t x45 = (x2 | x44);
- return x45)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fenzDisplay.v b/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fenzDisplay.v
deleted file mode 100644
index 767ac9a1e..000000000
--- a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e512m491x2e496m1_16limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/feopp.v b/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/feopp.v
deleted file mode 100644
index b944d8730..000000000
--- a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e512m491x2e496m1_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/feoppDisplay.v b/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/feoppDisplay.v
deleted file mode 100644
index 94aebc1b3..000000000
--- a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e512m491x2e496m1_16limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fesquare.c b/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fesub.v b/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fesub.v
deleted file mode 100644
index b05314489..000000000
--- a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e512m491x2e496m1_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fesubDisplay.v b/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fesubDisplay.v
deleted file mode 100644
index a7f04270e..000000000
--- a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e512m491x2e496m1_16limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/py_interpreter.sh b/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/py_interpreter.sh
deleted file mode 100755
index aa94ccb26..000000000
--- a/src/Specific/montgomery32_2e512m491x2e496m1_16limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**512 - 491*2**496 - 1' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e512m569_16limbs/CurveParameters.v b/src/Specific/montgomery32_2e512m569_16limbs/CurveParameters.v
deleted file mode 100644
index cb83eba64..000000000
--- a/src/Specific/montgomery32_2e512m569_16limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^512 - 569
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 16%nat;
- base := 32;
- bitwidth := 32;
- s := 2^512;
- c := [(1, 569)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e512m569_16limbs/Synthesis.v b/src/Specific/montgomery32_2e512m569_16limbs/Synthesis.v
deleted file mode 100644
index b2f247ba2..000000000
--- a/src/Specific/montgomery32_2e512m569_16limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e512m569_16limbs.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/montgomery32_2e512m569_16limbs/compiler.sh b/src/Specific/montgomery32_2e512m569_16limbs/compiler.sh
deleted file mode 100755
index c6b78b443..000000000
--- a/src/Specific/montgomery32_2e512m569_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<512) - 569' "$@"
diff --git a/src/Specific/montgomery32_2e512m569_16limbs/compilerxx.sh b/src/Specific/montgomery32_2e512m569_16limbs/compilerxx.sh
deleted file mode 100755
index c9d5da527..000000000
--- a/src/Specific/montgomery32_2e512m569_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<512) - 569' "$@"
diff --git a/src/Specific/montgomery32_2e512m569_16limbs/feadd.c b/src/Specific/montgomery32_2e512m569_16limbs/feadd.c
deleted file mode 100644
index 60bca6599..000000000
--- a/src/Specific/montgomery32_2e512m569_16limbs/feadd.c
+++ /dev/null
@@ -1,100 +0,0 @@
-static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- { uint32_t x65; uint8_t x66 = _addcarryx_u32(0x0, x5, x35, &x65);
- { uint32_t x68; uint8_t x69 = _addcarryx_u32(x66, x7, x37, &x68);
- { uint32_t x71; uint8_t x72 = _addcarryx_u32(x69, x9, x39, &x71);
- { uint32_t x74; uint8_t x75 = _addcarryx_u32(x72, x11, x41, &x74);
- { uint32_t x77; uint8_t x78 = _addcarryx_u32(x75, x13, x43, &x77);
- { uint32_t x80; uint8_t x81 = _addcarryx_u32(x78, x15, x45, &x80);
- { uint32_t x83; uint8_t x84 = _addcarryx_u32(x81, x17, x47, &x83);
- { uint32_t x86; uint8_t x87 = _addcarryx_u32(x84, x19, x49, &x86);
- { uint32_t x89; uint8_t x90 = _addcarryx_u32(x87, x21, x51, &x89);
- { uint32_t x92; uint8_t x93 = _addcarryx_u32(x90, x23, x53, &x92);
- { uint32_t x95; uint8_t x96 = _addcarryx_u32(x93, x25, x55, &x95);
- { uint32_t x98; uint8_t x99 = _addcarryx_u32(x96, x27, x57, &x98);
- { uint32_t x101; uint8_t x102 = _addcarryx_u32(x99, x29, x59, &x101);
- { uint32_t x104; uint8_t x105 = _addcarryx_u32(x102, x31, x61, &x104);
- { uint32_t x107; uint8_t x108 = _addcarryx_u32(x105, x33, x63, &x107);
- { uint32_t x110; uint8_t x111 = _addcarryx_u32(x108, x32, x62, &x110);
- { uint32_t x113; uint8_t x114 = _subborrow_u32(0x0, x65, 0xfffffdc7, &x113);
- { uint32_t x116; uint8_t x117 = _subborrow_u32(x114, x68, 0xffffffff, &x116);
- { uint32_t x119; uint8_t x120 = _subborrow_u32(x117, x71, 0xffffffff, &x119);
- { uint32_t x122; uint8_t x123 = _subborrow_u32(x120, x74, 0xffffffff, &x122);
- { uint32_t x125; uint8_t x126 = _subborrow_u32(x123, x77, 0xffffffff, &x125);
- { uint32_t x128; uint8_t x129 = _subborrow_u32(x126, x80, 0xffffffff, &x128);
- { uint32_t x131; uint8_t x132 = _subborrow_u32(x129, x83, 0xffffffff, &x131);
- { uint32_t x134; uint8_t x135 = _subborrow_u32(x132, x86, 0xffffffff, &x134);
- { uint32_t x137; uint8_t x138 = _subborrow_u32(x135, x89, 0xffffffff, &x137);
- { uint32_t x140; uint8_t x141 = _subborrow_u32(x138, x92, 0xffffffff, &x140);
- { uint32_t x143; uint8_t x144 = _subborrow_u32(x141, x95, 0xffffffff, &x143);
- { uint32_t x146; uint8_t x147 = _subborrow_u32(x144, x98, 0xffffffff, &x146);
- { uint32_t x149; uint8_t x150 = _subborrow_u32(x147, x101, 0xffffffff, &x149);
- { uint32_t x152; uint8_t x153 = _subborrow_u32(x150, x104, 0xffffffff, &x152);
- { uint32_t x155; uint8_t x156 = _subborrow_u32(x153, x107, 0xffffffff, &x155);
- { uint32_t x158; uint8_t x159 = _subborrow_u32(x156, x110, 0xffffffff, &x158);
- { uint32_t _; uint8_t x162 = _subborrow_u32(x159, x111, 0x0, &_);
- { uint32_t x163 = cmovznz32(x162, x158, x110);
- { uint32_t x164 = cmovznz32(x162, x155, x107);
- { uint32_t x165 = cmovznz32(x162, x152, x104);
- { uint32_t x166 = cmovznz32(x162, x149, x101);
- { uint32_t x167 = cmovznz32(x162, x146, x98);
- { uint32_t x168 = cmovznz32(x162, x143, x95);
- { uint32_t x169 = cmovznz32(x162, x140, x92);
- { uint32_t x170 = cmovznz32(x162, x137, x89);
- { uint32_t x171 = cmovznz32(x162, x134, x86);
- { uint32_t x172 = cmovznz32(x162, x131, x83);
- { uint32_t x173 = cmovznz32(x162, x128, x80);
- { uint32_t x174 = cmovznz32(x162, x125, x77);
- { uint32_t x175 = cmovznz32(x162, x122, x74);
- { uint32_t x176 = cmovznz32(x162, x119, x71);
- { uint32_t x177 = cmovznz32(x162, x116, x68);
- { uint32_t x178 = cmovznz32(x162, x113, x65);
- out[0] = x178;
- out[1] = x177;
- out[2] = x176;
- out[3] = x175;
- out[4] = x174;
- out[5] = x173;
- out[6] = x172;
- out[7] = x171;
- out[8] = x170;
- out[9] = x169;
- out[10] = x168;
- out[11] = x167;
- out[12] = x166;
- out[13] = x165;
- out[14] = x164;
- out[15] = x163;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e512m569_16limbs/feadd.v b/src/Specific/montgomery32_2e512m569_16limbs/feadd.v
deleted file mode 100644
index 2a2324723..000000000
--- a/src/Specific/montgomery32_2e512m569_16limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e512m569_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e512m569_16limbs/feaddDisplay.log b/src/Specific/montgomery32_2e512m569_16limbs/feaddDisplay.log
deleted file mode 100644
index 7b83b4a4f..000000000
--- a/src/Specific/montgomery32_2e512m569_16limbs/feaddDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- uint32_t x65, uint8_t x66 = addcarryx_u32(0x0, x5, x35);
- uint32_t x68, uint8_t x69 = addcarryx_u32(x66, x7, x37);
- uint32_t x71, uint8_t x72 = addcarryx_u32(x69, x9, x39);
- uint32_t x74, uint8_t x75 = addcarryx_u32(x72, x11, x41);
- uint32_t x77, uint8_t x78 = addcarryx_u32(x75, x13, x43);
- uint32_t x80, uint8_t x81 = addcarryx_u32(x78, x15, x45);
- uint32_t x83, uint8_t x84 = addcarryx_u32(x81, x17, x47);
- uint32_t x86, uint8_t x87 = addcarryx_u32(x84, x19, x49);
- uint32_t x89, uint8_t x90 = addcarryx_u32(x87, x21, x51);
- uint32_t x92, uint8_t x93 = addcarryx_u32(x90, x23, x53);
- uint32_t x95, uint8_t x96 = addcarryx_u32(x93, x25, x55);
- uint32_t x98, uint8_t x99 = addcarryx_u32(x96, x27, x57);
- uint32_t x101, uint8_t x102 = addcarryx_u32(x99, x29, x59);
- uint32_t x104, uint8_t x105 = addcarryx_u32(x102, x31, x61);
- uint32_t x107, uint8_t x108 = addcarryx_u32(x105, x33, x63);
- uint32_t x110, uint8_t x111 = addcarryx_u32(x108, x32, x62);
- uint32_t x113, uint8_t x114 = subborrow_u32(0x0, x65, 0xfffffdc7);
- uint32_t x116, uint8_t x117 = subborrow_u32(x114, x68, 0xffffffff);
- uint32_t x119, uint8_t x120 = subborrow_u32(x117, x71, 0xffffffff);
- uint32_t x122, uint8_t x123 = subborrow_u32(x120, x74, 0xffffffff);
- uint32_t x125, uint8_t x126 = subborrow_u32(x123, x77, 0xffffffff);
- uint32_t x128, uint8_t x129 = subborrow_u32(x126, x80, 0xffffffff);
- uint32_t x131, uint8_t x132 = subborrow_u32(x129, x83, 0xffffffff);
- uint32_t x134, uint8_t x135 = subborrow_u32(x132, x86, 0xffffffff);
- uint32_t x137, uint8_t x138 = subborrow_u32(x135, x89, 0xffffffff);
- uint32_t x140, uint8_t x141 = subborrow_u32(x138, x92, 0xffffffff);
- uint32_t x143, uint8_t x144 = subborrow_u32(x141, x95, 0xffffffff);
- uint32_t x146, uint8_t x147 = subborrow_u32(x144, x98, 0xffffffff);
- uint32_t x149, uint8_t x150 = subborrow_u32(x147, x101, 0xffffffff);
- uint32_t x152, uint8_t x153 = subborrow_u32(x150, x104, 0xffffffff);
- uint32_t x155, uint8_t x156 = subborrow_u32(x153, x107, 0xffffffff);
- uint32_t x158, uint8_t x159 = subborrow_u32(x156, x110, 0xffffffff);
- uint32_t _, uint8_t x162 = subborrow_u32(x159, x111, 0x0);
- uint32_t x163 = cmovznz32(x162, x158, x110);
- uint32_t x164 = cmovznz32(x162, x155, x107);
- uint32_t x165 = cmovznz32(x162, x152, x104);
- uint32_t x166 = cmovznz32(x162, x149, x101);
- uint32_t x167 = cmovznz32(x162, x146, x98);
- uint32_t x168 = cmovznz32(x162, x143, x95);
- uint32_t x169 = cmovznz32(x162, x140, x92);
- uint32_t x170 = cmovznz32(x162, x137, x89);
- uint32_t x171 = cmovznz32(x162, x134, x86);
- uint32_t x172 = cmovznz32(x162, x131, x83);
- uint32_t x173 = cmovznz32(x162, x128, x80);
- uint32_t x174 = cmovznz32(x162, x125, x77);
- uint32_t x175 = cmovznz32(x162, x122, x74);
- uint32_t x176 = cmovznz32(x162, x119, x71);
- uint32_t x177 = cmovznz32(x162, x116, x68);
- uint32_t x178 = cmovznz32(x162, x113, x65);
- return (x163, x164, x165, x166, x167, x168, x169, x170, x171, x172, x173, x174, x175, x176, x177, x178))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e512m569_16limbs/feaddDisplay.v b/src/Specific/montgomery32_2e512m569_16limbs/feaddDisplay.v
deleted file mode 100644
index f45a8aaa1..000000000
--- a/src/Specific/montgomery32_2e512m569_16limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e512m569_16limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e512m569_16limbs/femul.v b/src/Specific/montgomery32_2e512m569_16limbs/femul.v
deleted file mode 100644
index a756f22c4..000000000
--- a/src/Specific/montgomery32_2e512m569_16limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e512m569_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e512m569_16limbs/femulDisplay.v b/src/Specific/montgomery32_2e512m569_16limbs/femulDisplay.v
deleted file mode 100644
index 3185e3de3..000000000
--- a/src/Specific/montgomery32_2e512m569_16limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e512m569_16limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e512m569_16limbs/fenz.c b/src/Specific/montgomery32_2e512m569_16limbs/fenz.c
deleted file mode 100644
index 5c5d21b0e..000000000
--- a/src/Specific/montgomery32_2e512m569_16limbs/fenz.c
+++ /dev/null
@@ -1,35 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x31 = (x30 | x29);
- { uint32_t x32 = (x28 | x31);
- { uint32_t x33 = (x26 | x32);
- { uint32_t x34 = (x24 | x33);
- { uint32_t x35 = (x22 | x34);
- { uint32_t x36 = (x20 | x35);
- { uint32_t x37 = (x18 | x36);
- { uint32_t x38 = (x16 | x37);
- { uint32_t x39 = (x14 | x38);
- { uint32_t x40 = (x12 | x39);
- { uint32_t x41 = (x10 | x40);
- { uint32_t x42 = (x8 | x41);
- { uint32_t x43 = (x6 | x42);
- { uint32_t x44 = (x4 | x43);
- { uint32_t x45 = (x2 | x44);
- out[0] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e512m569_16limbs/fenz.v b/src/Specific/montgomery32_2e512m569_16limbs/fenz.v
deleted file mode 100644
index d7ddd39e1..000000000
--- a/src/Specific/montgomery32_2e512m569_16limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e512m569_16limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e512m569_16limbs/fenzDisplay.log b/src/Specific/montgomery32_2e512m569_16limbs/fenzDisplay.log
deleted file mode 100644
index eb0b6ea33..000000000
--- a/src/Specific/montgomery32_2e512m569_16limbs/fenzDisplay.log
+++ /dev/null
@@ -1,22 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x31 = (x30 | x29);
- uint32_t x32 = (x28 | x31);
- uint32_t x33 = (x26 | x32);
- uint32_t x34 = (x24 | x33);
- uint32_t x35 = (x22 | x34);
- uint32_t x36 = (x20 | x35);
- uint32_t x37 = (x18 | x36);
- uint32_t x38 = (x16 | x37);
- uint32_t x39 = (x14 | x38);
- uint32_t x40 = (x12 | x39);
- uint32_t x41 = (x10 | x40);
- uint32_t x42 = (x8 | x41);
- uint32_t x43 = (x6 | x42);
- uint32_t x44 = (x4 | x43);
- uint32_t x45 = (x2 | x44);
- return x45)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e512m569_16limbs/fenzDisplay.v b/src/Specific/montgomery32_2e512m569_16limbs/fenzDisplay.v
deleted file mode 100644
index 89fc31408..000000000
--- a/src/Specific/montgomery32_2e512m569_16limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e512m569_16limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e512m569_16limbs/feopp.v b/src/Specific/montgomery32_2e512m569_16limbs/feopp.v
deleted file mode 100644
index 4ec4faa75..000000000
--- a/src/Specific/montgomery32_2e512m569_16limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e512m569_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e512m569_16limbs/feoppDisplay.v b/src/Specific/montgomery32_2e512m569_16limbs/feoppDisplay.v
deleted file mode 100644
index 6b4cc0449..000000000
--- a/src/Specific/montgomery32_2e512m569_16limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e512m569_16limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e512m569_16limbs/fesquare.c b/src/Specific/montgomery32_2e512m569_16limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e512m569_16limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e512m569_16limbs/fesub.v b/src/Specific/montgomery32_2e512m569_16limbs/fesub.v
deleted file mode 100644
index ba7b9b198..000000000
--- a/src/Specific/montgomery32_2e512m569_16limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e512m569_16limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e512m569_16limbs/fesubDisplay.v b/src/Specific/montgomery32_2e512m569_16limbs/fesubDisplay.v
deleted file mode 100644
index b46b960ce..000000000
--- a/src/Specific/montgomery32_2e512m569_16limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e512m569_16limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e512m569_16limbs/py_interpreter.sh b/src/Specific/montgomery32_2e512m569_16limbs/py_interpreter.sh
deleted file mode 100755
index 3277ef6fc..000000000
--- a/src/Specific/montgomery32_2e512m569_16limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**512 - 569' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery32_2e521m1_17limbs/CurveParameters.v b/src/Specific/montgomery32_2e521m1_17limbs/CurveParameters.v
deleted file mode 100644
index 92329b455..000000000
--- a/src/Specific/montgomery32_2e521m1_17limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^521 - 1
-Base: 32
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 17%nat;
- base := 32;
- bitwidth := 32;
- s := 2^521;
- c := [(1, 1)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery32_2e521m1_17limbs/Synthesis.v b/src/Specific/montgomery32_2e521m1_17limbs/Synthesis.v
deleted file mode 100644
index 10de9b3e6..000000000
--- a/src/Specific/montgomery32_2e521m1_17limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery32_2e521m1_17limbs.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/montgomery32_2e521m1_17limbs/compiler.sh b/src/Specific/montgomery32_2e521m1_17limbs/compiler.sh
deleted file mode 100755
index 38e22a033..000000000
--- a/src/Specific/montgomery32_2e521m1_17limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='66' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<521) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e521m1_17limbs/compilerxx.sh b/src/Specific/montgomery32_2e521m1_17limbs/compilerxx.sh
deleted file mode 100755
index 0f6c7857d..000000000
--- a/src/Specific/montgomery32_2e521m1_17limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='66' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<521) - 1' "$@"
diff --git a/src/Specific/montgomery32_2e521m1_17limbs/feadd.c b/src/Specific/montgomery32_2e521m1_17limbs/feadd.c
deleted file mode 100644
index 7019270b1..000000000
--- a/src/Specific/montgomery32_2e521m1_17limbs/feadd.c
+++ /dev/null
@@ -1,106 +0,0 @@
-static void feadd(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- { uint32_t x69; uint8_t x70 = _addcarryx_u32(0x0, x5, x37, &x69);
- { uint32_t x72; uint8_t x73 = _addcarryx_u32(x70, x7, x39, &x72);
- { uint32_t x75; uint8_t x76 = _addcarryx_u32(x73, x9, x41, &x75);
- { uint32_t x78; uint8_t x79 = _addcarryx_u32(x76, x11, x43, &x78);
- { uint32_t x81; uint8_t x82 = _addcarryx_u32(x79, x13, x45, &x81);
- { uint32_t x84; uint8_t x85 = _addcarryx_u32(x82, x15, x47, &x84);
- { uint32_t x87; uint8_t x88 = _addcarryx_u32(x85, x17, x49, &x87);
- { uint32_t x90; uint8_t x91 = _addcarryx_u32(x88, x19, x51, &x90);
- { uint32_t x93; uint8_t x94 = _addcarryx_u32(x91, x21, x53, &x93);
- { uint32_t x96; uint8_t x97 = _addcarryx_u32(x94, x23, x55, &x96);
- { uint32_t x99; uint8_t x100 = _addcarryx_u32(x97, x25, x57, &x99);
- { uint32_t x102; uint8_t x103 = _addcarryx_u32(x100, x27, x59, &x102);
- { uint32_t x105; uint8_t x106 = _addcarryx_u32(x103, x29, x61, &x105);
- { uint32_t x108; uint8_t x109 = _addcarryx_u32(x106, x31, x63, &x108);
- { uint32_t x111; uint8_t x112 = _addcarryx_u32(x109, x33, x65, &x111);
- { uint32_t x114; uint8_t x115 = _addcarryx_u32(x112, x35, x67, &x114);
- { uint32_t x117; uint8_t x118 = _addcarryx_u32(x115, x34, x66, &x117);
- { uint32_t x120; uint8_t x121 = _subborrow_u32(0x0, x69, 0xffffffff, &x120);
- { uint32_t x123; uint8_t x124 = _subborrow_u32(x121, x72, 0xffffffff, &x123);
- { uint32_t x126; uint8_t x127 = _subborrow_u32(x124, x75, 0xffffffff, &x126);
- { uint32_t x129; uint8_t x130 = _subborrow_u32(x127, x78, 0xffffffff, &x129);
- { uint32_t x132; uint8_t x133 = _subborrow_u32(x130, x81, 0xffffffff, &x132);
- { uint32_t x135; uint8_t x136 = _subborrow_u32(x133, x84, 0xffffffff, &x135);
- { uint32_t x138; uint8_t x139 = _subborrow_u32(x136, x87, 0xffffffff, &x138);
- { uint32_t x141; uint8_t x142 = _subborrow_u32(x139, x90, 0xffffffff, &x141);
- { uint32_t x144; uint8_t x145 = _subborrow_u32(x142, x93, 0xffffffff, &x144);
- { uint32_t x147; uint8_t x148 = _subborrow_u32(x145, x96, 0xffffffff, &x147);
- { uint32_t x150; uint8_t x151 = _subborrow_u32(x148, x99, 0xffffffff, &x150);
- { uint32_t x153; uint8_t x154 = _subborrow_u32(x151, x102, 0xffffffff, &x153);
- { uint32_t x156; uint8_t x157 = _subborrow_u32(x154, x105, 0xffffffff, &x156);
- { uint32_t x159; uint8_t x160 = _subborrow_u32(x157, x108, 0xffffffff, &x159);
- { uint32_t x162; uint8_t x163 = _subborrow_u32(x160, x111, 0xffffffff, &x162);
- { uint32_t x165; uint8_t x166 = _subborrow_u32(x163, x114, 0xffffffff, &x165);
- { uint32_t x168; uint8_t x169 = _subborrow_u32(x166, x117, 0x1ff, &x168);
- { uint32_t _; uint8_t x172 = _subborrow_u32(x169, x118, 0x0, &_);
- { uint32_t x173 = cmovznz32(x172, x168, x117);
- { uint32_t x174 = cmovznz32(x172, x165, x114);
- { uint32_t x175 = cmovznz32(x172, x162, x111);
- { uint32_t x176 = cmovznz32(x172, x159, x108);
- { uint32_t x177 = cmovznz32(x172, x156, x105);
- { uint32_t x178 = cmovznz32(x172, x153, x102);
- { uint32_t x179 = cmovznz32(x172, x150, x99);
- { uint32_t x180 = cmovznz32(x172, x147, x96);
- { uint32_t x181 = cmovznz32(x172, x144, x93);
- { uint32_t x182 = cmovznz32(x172, x141, x90);
- { uint32_t x183 = cmovznz32(x172, x138, x87);
- { uint32_t x184 = cmovznz32(x172, x135, x84);
- { uint32_t x185 = cmovznz32(x172, x132, x81);
- { uint32_t x186 = cmovznz32(x172, x129, x78);
- { uint32_t x187 = cmovznz32(x172, x126, x75);
- { uint32_t x188 = cmovznz32(x172, x123, x72);
- { uint32_t x189 = cmovznz32(x172, x120, x69);
- out[0] = x189;
- out[1] = x188;
- out[2] = x187;
- out[3] = x186;
- out[4] = x185;
- out[5] = x184;
- out[6] = x183;
- out[7] = x182;
- out[8] = x181;
- out[9] = x180;
- out[10] = x179;
- out[11] = x178;
- out[12] = x177;
- out[13] = x176;
- out[14] = x175;
- out[15] = x174;
- out[16] = x173;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e521m1_17limbs/feadd.v b/src/Specific/montgomery32_2e521m1_17limbs/feadd.v
deleted file mode 100644
index c0a0264cd..000000000
--- a/src/Specific/montgomery32_2e521m1_17limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e521m1_17limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery32_2e521m1_17limbs/feaddDisplay.log b/src/Specific/montgomery32_2e521m1_17limbs/feaddDisplay.log
deleted file mode 100644
index 0dbd5526d..000000000
--- a/src/Specific/montgomery32_2e521m1_17limbs/feaddDisplay.log
+++ /dev/null
@@ -1,59 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- uint32_t x69, uint8_t x70 = addcarryx_u32(0x0, x5, x37);
- uint32_t x72, uint8_t x73 = addcarryx_u32(x70, x7, x39);
- uint32_t x75, uint8_t x76 = addcarryx_u32(x73, x9, x41);
- uint32_t x78, uint8_t x79 = addcarryx_u32(x76, x11, x43);
- uint32_t x81, uint8_t x82 = addcarryx_u32(x79, x13, x45);
- uint32_t x84, uint8_t x85 = addcarryx_u32(x82, x15, x47);
- uint32_t x87, uint8_t x88 = addcarryx_u32(x85, x17, x49);
- uint32_t x90, uint8_t x91 = addcarryx_u32(x88, x19, x51);
- uint32_t x93, uint8_t x94 = addcarryx_u32(x91, x21, x53);
- uint32_t x96, uint8_t x97 = addcarryx_u32(x94, x23, x55);
- uint32_t x99, uint8_t x100 = addcarryx_u32(x97, x25, x57);
- uint32_t x102, uint8_t x103 = addcarryx_u32(x100, x27, x59);
- uint32_t x105, uint8_t x106 = addcarryx_u32(x103, x29, x61);
- uint32_t x108, uint8_t x109 = addcarryx_u32(x106, x31, x63);
- uint32_t x111, uint8_t x112 = addcarryx_u32(x109, x33, x65);
- uint32_t x114, uint8_t x115 = addcarryx_u32(x112, x35, x67);
- uint32_t x117, uint8_t x118 = addcarryx_u32(x115, x34, x66);
- uint32_t x120, uint8_t x121 = subborrow_u32(0x0, x69, 0xffffffff);
- uint32_t x123, uint8_t x124 = subborrow_u32(x121, x72, 0xffffffff);
- uint32_t x126, uint8_t x127 = subborrow_u32(x124, x75, 0xffffffff);
- uint32_t x129, uint8_t x130 = subborrow_u32(x127, x78, 0xffffffff);
- uint32_t x132, uint8_t x133 = subborrow_u32(x130, x81, 0xffffffff);
- uint32_t x135, uint8_t x136 = subborrow_u32(x133, x84, 0xffffffff);
- uint32_t x138, uint8_t x139 = subborrow_u32(x136, x87, 0xffffffff);
- uint32_t x141, uint8_t x142 = subborrow_u32(x139, x90, 0xffffffff);
- uint32_t x144, uint8_t x145 = subborrow_u32(x142, x93, 0xffffffff);
- uint32_t x147, uint8_t x148 = subborrow_u32(x145, x96, 0xffffffff);
- uint32_t x150, uint8_t x151 = subborrow_u32(x148, x99, 0xffffffff);
- uint32_t x153, uint8_t x154 = subborrow_u32(x151, x102, 0xffffffff);
- uint32_t x156, uint8_t x157 = subborrow_u32(x154, x105, 0xffffffff);
- uint32_t x159, uint8_t x160 = subborrow_u32(x157, x108, 0xffffffff);
- uint32_t x162, uint8_t x163 = subborrow_u32(x160, x111, 0xffffffff);
- uint32_t x165, uint8_t x166 = subborrow_u32(x163, x114, 0xffffffff);
- uint32_t x168, uint8_t x169 = subborrow_u32(x166, x117, 0x1ff);
- uint32_t _, uint8_t x172 = subborrow_u32(x169, x118, 0x0);
- uint32_t x173 = cmovznz32(x172, x168, x117);
- uint32_t x174 = cmovznz32(x172, x165, x114);
- uint32_t x175 = cmovznz32(x172, x162, x111);
- uint32_t x176 = cmovznz32(x172, x159, x108);
- uint32_t x177 = cmovznz32(x172, x156, x105);
- uint32_t x178 = cmovznz32(x172, x153, x102);
- uint32_t x179 = cmovznz32(x172, x150, x99);
- uint32_t x180 = cmovznz32(x172, x147, x96);
- uint32_t x181 = cmovznz32(x172, x144, x93);
- uint32_t x182 = cmovznz32(x172, x141, x90);
- uint32_t x183 = cmovznz32(x172, x138, x87);
- uint32_t x184 = cmovznz32(x172, x135, x84);
- uint32_t x185 = cmovznz32(x172, x132, x81);
- uint32_t x186 = cmovznz32(x172, x129, x78);
- uint32_t x187 = cmovznz32(x172, x126, x75);
- uint32_t x188 = cmovznz32(x172, x123, x72);
- uint32_t x189 = cmovznz32(x172, x120, x69);
- return (x173, x174, x175, x176, x177, x178, x179, x180, x181, x182, x183, x184, x185, x186, x187, x188, x189))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/montgomery32_2e521m1_17limbs/feaddDisplay.v b/src/Specific/montgomery32_2e521m1_17limbs/feaddDisplay.v
deleted file mode 100644
index d7ae8cdd8..000000000
--- a/src/Specific/montgomery32_2e521m1_17limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e521m1_17limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery32_2e521m1_17limbs/femul.v b/src/Specific/montgomery32_2e521m1_17limbs/femul.v
deleted file mode 100644
index 856bef63d..000000000
--- a/src/Specific/montgomery32_2e521m1_17limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e521m1_17limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery32_2e521m1_17limbs/femulDisplay.v b/src/Specific/montgomery32_2e521m1_17limbs/femulDisplay.v
deleted file mode 100644
index f41ba2d0f..000000000
--- a/src/Specific/montgomery32_2e521m1_17limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e521m1_17limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery32_2e521m1_17limbs/fenz.c b/src/Specific/montgomery32_2e521m1_17limbs/fenz.c
deleted file mode 100644
index fdbe458c3..000000000
--- a/src/Specific/montgomery32_2e521m1_17limbs/fenz.c
+++ /dev/null
@@ -1,37 +0,0 @@
-static void fenz(ReturnType uint32_t out[1], const uint32_t in1[17]) {
- { const uint32_t x31 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x33 = (x32 | x31);
- { uint32_t x34 = (x30 | x33);
- { uint32_t x35 = (x28 | x34);
- { uint32_t x36 = (x26 | x35);
- { uint32_t x37 = (x24 | x36);
- { uint32_t x38 = (x22 | x37);
- { uint32_t x39 = (x20 | x38);
- { uint32_t x40 = (x18 | x39);
- { uint32_t x41 = (x16 | x40);
- { uint32_t x42 = (x14 | x41);
- { uint32_t x43 = (x12 | x42);
- { uint32_t x44 = (x10 | x43);
- { uint32_t x45 = (x8 | x44);
- { uint32_t x46 = (x6 | x45);
- { uint32_t x47 = (x4 | x46);
- { uint32_t x48 = (x2 | x47);
- out[0] = x48;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery32_2e521m1_17limbs/fenz.v b/src/Specific/montgomery32_2e521m1_17limbs/fenz.v
deleted file mode 100644
index 826fe316f..000000000
--- a/src/Specific/montgomery32_2e521m1_17limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e521m1_17limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery32_2e521m1_17limbs/fenzDisplay.log b/src/Specific/montgomery32_2e521m1_17limbs/fenzDisplay.log
deleted file mode 100644
index 47cc8d6b2..000000000
--- a/src/Specific/montgomery32_2e521m1_17limbs/fenzDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x31, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x33 = (x32 | x31);
- uint32_t x34 = (x30 | x33);
- uint32_t x35 = (x28 | x34);
- uint32_t x36 = (x26 | x35);
- uint32_t x37 = (x24 | x36);
- uint32_t x38 = (x22 | x37);
- uint32_t x39 = (x20 | x38);
- uint32_t x40 = (x18 | x39);
- uint32_t x41 = (x16 | x40);
- uint32_t x42 = (x14 | x41);
- uint32_t x43 = (x12 | x42);
- uint32_t x44 = (x10 | x43);
- uint32_t x45 = (x8 | x44);
- uint32_t x46 = (x6 | x45);
- uint32_t x47 = (x4 | x46);
- uint32_t x48 = (x2 | x47);
- return x48)
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType uint32_t
diff --git a/src/Specific/montgomery32_2e521m1_17limbs/fenzDisplay.v b/src/Specific/montgomery32_2e521m1_17limbs/fenzDisplay.v
deleted file mode 100644
index 093ea6bcc..000000000
--- a/src/Specific/montgomery32_2e521m1_17limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e521m1_17limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery32_2e521m1_17limbs/feopp.v b/src/Specific/montgomery32_2e521m1_17limbs/feopp.v
deleted file mode 100644
index 61b0cfa03..000000000
--- a/src/Specific/montgomery32_2e521m1_17limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e521m1_17limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery32_2e521m1_17limbs/feoppDisplay.v b/src/Specific/montgomery32_2e521m1_17limbs/feoppDisplay.v
deleted file mode 100644
index a38aac29d..000000000
--- a/src/Specific/montgomery32_2e521m1_17limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e521m1_17limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery32_2e521m1_17limbs/fesquare.c b/src/Specific/montgomery32_2e521m1_17limbs/fesquare.c
deleted file mode 100644
index e3345edfe..000000000
--- a/src/Specific/montgomery32_2e521m1_17limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery32/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint32_t *out, const uint32_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery32_2e521m1_17limbs/fesub.v b/src/Specific/montgomery32_2e521m1_17limbs/fesub.v
deleted file mode 100644
index 0d3390e19..000000000
--- a/src/Specific/montgomery32_2e521m1_17limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery32_2e521m1_17limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery32_2e521m1_17limbs/fesubDisplay.v b/src/Specific/montgomery32_2e521m1_17limbs/fesubDisplay.v
deleted file mode 100644
index 950af96c1..000000000
--- a/src/Specific/montgomery32_2e521m1_17limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery32_2e521m1_17limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery32_2e521m1_17limbs/py_interpreter.sh b/src/Specific/montgomery32_2e521m1_17limbs/py_interpreter.sh
deleted file mode 100755
index f8030cf9e..000000000
--- a/src/Specific/montgomery32_2e521m1_17limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**521 - 1' -Dmodulus_bytes='32' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e127m1_2limbs/CurveParameters.v b/src/Specific/montgomery64_2e127m1_2limbs/CurveParameters.v
deleted file mode 100644
index fb2a5146e..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^127 - 1
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 2%nat;
- base := 64;
- bitwidth := 64;
- s := 2^127;
- c := [(1, 1)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e127m1_2limbs/Synthesis.v b/src/Specific/montgomery64_2e127m1_2limbs/Synthesis.v
deleted file mode 100644
index 9ab5a4d27..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e127m1_2limbs.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/montgomery64_2e127m1_2limbs/compiler.sh b/src/Specific/montgomery64_2e127m1_2limbs/compiler.sh
deleted file mode 100755
index 31642bfb4..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='16' -Dmodulus_limbs='2' -Dq_mpz='(1_mpz<<127) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e127m1_2limbs/compilerxx.sh b/src/Specific/montgomery64_2e127m1_2limbs/compilerxx.sh
deleted file mode 100755
index 5d36e8a6f..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='16' -Dmodulus_limbs='2' -Dq_mpz='(1_mpz<<127) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e127m1_2limbs/feadd.c b/src/Specific/montgomery64_2e127m1_2limbs/feadd.c
deleted file mode 100644
index 91fa60600..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/feadd.c
+++ /dev/null
@@ -1,16 +0,0 @@
-static void feadd(uint64_t out[2], const uint64_t in1[2], const uint64_t in2[2]) {
- { const uint64_t x4 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x6 = in2[1];
- { const uint64_t x7 = in2[0];
- { uint64_t x9; uint8_t x10 = _addcarryx_u64(0x0, x5, x7, &x9);
- { uint64_t x12; uint8_t x13 = _addcarryx_u64(x10, x4, x6, &x12);
- { uint64_t x15; uint8_t x16 = _subborrow_u64(0x0, x9, 0xffffffffffffffffL, &x15);
- { uint64_t x18; uint8_t x19 = _subborrow_u64(x16, x12, 0x7fffffffffffffffL, &x18);
- { uint64_t _; uint8_t x22 = _subborrow_u64(x19, x13, 0x0, &_);
- { uint64_t x23 = cmovznz64(x22, x18, x12);
- { uint64_t x24 = cmovznz64(x22, x15, x9);
- out[0] = x24;
- out[1] = x23;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e127m1_2limbs/feadd.v b/src/Specific/montgomery64_2e127m1_2limbs/feadd.v
deleted file mode 100644
index b04fa87d7..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e127m1_2limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e127m1_2limbs/feaddDisplay.log b/src/Specific/montgomery64_2e127m1_2limbs/feaddDisplay.log
deleted file mode 100644
index a47056f6b..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/feaddDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x x0 : word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x4, x5, (x6, x7))%core,
- uint64_t x9, uint8_t x10 = addcarryx_u64(0x0, x5, x7);
- uint64_t x12, uint8_t x13 = addcarryx_u64(x10, x4, x6);
- uint64_t x15, uint8_t x16 = subborrow_u64(0x0, x9, 0xffffffffffffffffL);
- uint64_t x18, uint8_t x19 = subborrow_u64(x16, x12, 0x7fffffffffffffffL);
- uint64_t _, uint8_t x22 = subborrow_u64(x19, x13, 0x0);
- uint64_t x23 = cmovznz64(x22, x18, x12);
- uint64_t x24 = cmovznz64(x22, x15, x9);
- return (x23, x24))
-(x, x0)%core
- : word64 * word64 → word64 * word64 → ReturnType (uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e127m1_2limbs/feaddDisplay.v b/src/Specific/montgomery64_2e127m1_2limbs/feaddDisplay.v
deleted file mode 100644
index c4a26b0b0..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e127m1_2limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e127m1_2limbs/femul.c b/src/Specific/montgomery64_2e127m1_2limbs/femul.c
deleted file mode 100644
index c6f5ef6fb..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/femul.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void femul(uint64_t out[2], const uint64_t in1[2], const uint64_t in2[2]) {
- { const uint64_t x4 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x6 = in2[1];
- { const uint64_t x7 = in2[0];
- { uint64_t x10; uint64_t x9 = _mulx_u64(x5, x7, &x10);
- { uint64_t x13; uint64_t x12 = _mulx_u64(x5, x6, &x13);
- { uint64_t x15; uint8_t x16 = _addcarryx_u64(0x0, x10, x12, &x15);
- { uint64_t x18; uint8_t _ = _addcarryx_u64(0x0, x16, x13, &x18);
- { uint64_t x22; uint64_t x21 = _mulx_u64(x9, 0xffffffffffffffffL, &x22);
- { uint64_t x25; uint64_t x24 = _mulx_u64(x9, 0x7fffffffffffffffL, &x25);
- { uint64_t x27; uint8_t x28 = _addcarryx_u64(0x0, x22, x24, &x27);
- { uint64_t x30; uint8_t _ = _addcarryx_u64(0x0, x28, x25, &x30);
- { uint64_t _; uint8_t x34 = _addcarryx_u64(0x0, x9, x21, &_);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x34, x15, x27, &x36);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x37, x18, x30, &x39);
- { uint64_t x43; uint64_t x42 = _mulx_u64(x4, x7, &x43);
- { uint64_t x46; uint64_t x45 = _mulx_u64(x4, x6, &x46);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(0x0, x43, x45, &x48);
- { uint64_t x51; uint8_t _ = _addcarryx_u64(0x0, x49, x46, &x51);
- { uint64_t x54; uint8_t x55 = _addcarryx_u64(0x0, x36, x42, &x54);
- { uint64_t x57; uint8_t x58 = _addcarryx_u64(x55, x39, x48, &x57);
- { uint64_t x60; uint8_t x61 = _addcarryx_u64(x58, x40, x51, &x60);
- { uint64_t x64; uint64_t x63 = _mulx_u64(x54, 0xffffffffffffffffL, &x64);
- { uint64_t x67; uint64_t x66 = _mulx_u64(x54, 0x7fffffffffffffffL, &x67);
- { uint64_t x69; uint8_t x70 = _addcarryx_u64(0x0, x64, x66, &x69);
- { uint64_t x72; uint8_t _ = _addcarryx_u64(0x0, x70, x67, &x72);
- { uint64_t _; uint8_t x76 = _addcarryx_u64(0x0, x54, x63, &_);
- { uint64_t x78; uint8_t x79 = _addcarryx_u64(x76, x57, x69, &x78);
- { uint64_t x81; uint8_t x82 = _addcarryx_u64(x79, x60, x72, &x81);
- { uint8_t x83 = (x82 + x61);
- { uint64_t x85; uint8_t x86 = _subborrow_u64(0x0, x78, 0xffffffffffffffffL, &x85);
- { uint64_t x88; uint8_t x89 = _subborrow_u64(x86, x81, 0x7fffffffffffffffL, &x88);
- { uint64_t _; uint8_t x92 = _subborrow_u64(x89, x83, 0x0, &_);
- { uint64_t x93 = cmovznz64(x92, x88, x81);
- { uint64_t x94 = cmovznz64(x92, x85, x78);
- out[0] = x94;
- out[1] = x93;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e127m1_2limbs/femul.v b/src/Specific/montgomery64_2e127m1_2limbs/femul.v
deleted file mode 100644
index 66a33f9c3..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e127m1_2limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e127m1_2limbs/femulDisplay.log b/src/Specific/montgomery64_2e127m1_2limbs/femulDisplay.log
deleted file mode 100644
index ea19e6486..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/femulDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x x0 : word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x4, x5, (x6, x7))%core,
- uint64_t x9, uint64_t x10 = mulx_u64(x5, x7);
- uint64_t x12, uint64_t x13 = mulx_u64(x5, x6);
- uint64_t x15, uint8_t x16 = addcarryx_u64(0x0, x10, x12);
- uint64_t x18, uint8_t _ = addcarryx_u64(0x0, x16, x13);
- uint64_t x21, uint64_t x22 = mulx_u64(x9, 0xffffffffffffffffL);
- uint64_t x24, uint64_t x25 = mulx_u64(x9, 0x7fffffffffffffffL);
- uint64_t x27, uint8_t x28 = addcarryx_u64(0x0, x22, x24);
- uint64_t x30, uint8_t _ = addcarryx_u64(0x0, x28, x25);
- uint64_t _, uint8_t x34 = addcarryx_u64(0x0, x9, x21);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x34, x15, x27);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x37, x18, x30);
- uint64_t x42, uint64_t x43 = mulx_u64(x4, x7);
- uint64_t x45, uint64_t x46 = mulx_u64(x4, x6);
- uint64_t x48, uint8_t x49 = addcarryx_u64(0x0, x43, x45);
- uint64_t x51, uint8_t _ = addcarryx_u64(0x0, x49, x46);
- uint64_t x54, uint8_t x55 = addcarryx_u64(0x0, x36, x42);
- uint64_t x57, uint8_t x58 = addcarryx_u64(x55, x39, x48);
- uint64_t x60, uint8_t x61 = addcarryx_u64(x58, x40, x51);
- uint64_t x63, uint64_t x64 = mulx_u64(x54, 0xffffffffffffffffL);
- uint64_t x66, uint64_t x67 = mulx_u64(x54, 0x7fffffffffffffffL);
- uint64_t x69, uint8_t x70 = addcarryx_u64(0x0, x64, x66);
- uint64_t x72, uint8_t _ = addcarryx_u64(0x0, x70, x67);
- uint64_t _, uint8_t x76 = addcarryx_u64(0x0, x54, x63);
- uint64_t x78, uint8_t x79 = addcarryx_u64(x76, x57, x69);
- uint64_t x81, uint8_t x82 = addcarryx_u64(x79, x60, x72);
- uint8_t x83 = (x82 + x61);
- uint64_t x85, uint8_t x86 = subborrow_u64(0x0, x78, 0xffffffffffffffffL);
- uint64_t x88, uint8_t x89 = subborrow_u64(x86, x81, 0x7fffffffffffffffL);
- uint64_t _, uint8_t x92 = subborrow_u64(x89, x83, 0x0);
- uint64_t x93 = cmovznz64(x92, x88, x81);
- uint64_t x94 = cmovznz64(x92, x85, x78);
- return (x93, x94))
-(x, x0)%core
- : word64 * word64 → word64 * word64 → ReturnType (uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e127m1_2limbs/femulDisplay.v b/src/Specific/montgomery64_2e127m1_2limbs/femulDisplay.v
deleted file mode 100644
index 1d32b1bf0..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e127m1_2limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e127m1_2limbs/fenz.c b/src/Specific/montgomery64_2e127m1_2limbs/fenz.c
deleted file mode 100644
index 3b61c77b8..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/fenz.c
+++ /dev/null
@@ -1,7 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[2]) {
- { const uint64_t x1 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x3 = (x2 | x1);
- out[0] = x3;
- }}}
-}
diff --git a/src/Specific/montgomery64_2e127m1_2limbs/fenz.v b/src/Specific/montgomery64_2e127m1_2limbs/fenz.v
deleted file mode 100644
index 0f01535d9..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e127m1_2limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e127m1_2limbs/fenzDisplay.log b/src/Specific/montgomery64_2e127m1_2limbs/fenzDisplay.log
deleted file mode 100644
index 42367b877..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/fenzDisplay.log
+++ /dev/null
@@ -1,8 +0,0 @@
-λ x : word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x1, x2)%core,
- uint64_t x3 = (x2 | x1);
- return x3)
-x
- : word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e127m1_2limbs/fenzDisplay.v b/src/Specific/montgomery64_2e127m1_2limbs/fenzDisplay.v
deleted file mode 100644
index dd3265746..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e127m1_2limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e127m1_2limbs/feopp.c b/src/Specific/montgomery64_2e127m1_2limbs/feopp.c
deleted file mode 100644
index 2982fec31..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/feopp.c
+++ /dev/null
@@ -1,14 +0,0 @@
-static void feopp(uint64_t out[2], const uint64_t in1[2]) {
- { const uint64_t x1 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x4; uint8_t x5 = _subborrow_u64(0x0, 0x0, x2, &x4);
- { uint64_t x7; uint8_t x8 = _subborrow_u64(x5, 0x0, x1, &x7);
- { uint64_t x9 = cmovznz64(x8, 0x0, 0xffffffffffffffffL);
- { uint64_t x10 = (x9 & 0xffffffffffffffffL);
- { uint64_t x12; uint8_t x13 = _addcarryx_u64(0x0, x4, x10, &x12);
- { uint64_t x14 = (x9 & 0x7fffffffffffffffL);
- { uint64_t x16; uint8_t _ = _addcarryx_u64(x13, x7, x14, &x16);
- out[0] = x12;
- out[1] = x16;
- }}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e127m1_2limbs/feopp.v b/src/Specific/montgomery64_2e127m1_2limbs/feopp.v
deleted file mode 100644
index 3b4228859..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e127m1_2limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e127m1_2limbs/feoppDisplay.log b/src/Specific/montgomery64_2e127m1_2limbs/feoppDisplay.log
deleted file mode 100644
index 2e861c851..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/feoppDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x1, x2)%core,
- uint64_t x4, uint8_t x5 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x7, uint8_t x8 = subborrow_u64(x5, 0x0, x1);
- uint64_t x9 = cmovznz64(x8, 0x0, 0xffffffffffffffffL);
- uint64_t x10 = (x9 & 0xffffffffffffffffL);
- uint64_t x12, uint8_t x13 = addcarryx_u64(0x0, x4, x10);
- uint64_t x14 = (x9 & 0x7fffffffffffffffL);
- uint64_t x16, uint8_t _ = addcarryx_u64(x13, x7, x14);
- (Return x16, Return x12))
-x
- : word64 * word64 → ReturnType (uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e127m1_2limbs/feoppDisplay.v b/src/Specific/montgomery64_2e127m1_2limbs/feoppDisplay.v
deleted file mode 100644
index 409dbc85a..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e127m1_2limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e127m1_2limbs/fesquare.c b/src/Specific/montgomery64_2e127m1_2limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e127m1_2limbs/fesub.c b/src/Specific/montgomery64_2e127m1_2limbs/fesub.c
deleted file mode 100644
index 45bb624d9..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/fesub.c
+++ /dev/null
@@ -1,16 +0,0 @@
-static void fesub(uint64_t out[2], const uint64_t in1[2], const uint64_t in2[2]) {
- { const uint64_t x4 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x6 = in2[1];
- { const uint64_t x7 = in2[0];
- { uint64_t x9; uint8_t x10 = _subborrow_u64(0x0, x5, x7, &x9);
- { uint64_t x12; uint8_t x13 = _subborrow_u64(x10, x4, x6, &x12);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0xffffffffffffffffL);
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x9, x15, &x17);
- { uint64_t x19 = (x14 & 0x7fffffffffffffffL);
- { uint64_t x21; uint8_t _ = _addcarryx_u64(x18, x12, x19, &x21);
- out[0] = x17;
- out[1] = x21;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e127m1_2limbs/fesub.v b/src/Specific/montgomery64_2e127m1_2limbs/fesub.v
deleted file mode 100644
index c9f9a4b00..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e127m1_2limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e127m1_2limbs/fesubDisplay.log b/src/Specific/montgomery64_2e127m1_2limbs/fesubDisplay.log
deleted file mode 100644
index ec41671f0..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/fesubDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x x0 : word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x4, x5, (x6, x7))%core,
- uint64_t x9, uint8_t x10 = subborrow_u64(0x0, x5, x7);
- uint64_t x12, uint8_t x13 = subborrow_u64(x10, x4, x6);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0xffffffffffffffffL);
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x9, x15);
- uint64_t x19 = (x14 & 0x7fffffffffffffffL);
- uint64_t x21, uint8_t _ = addcarryx_u64(x18, x12, x19);
- (Return x21, Return x17))
-(x, x0)%core
- : word64 * word64 → word64 * word64 → ReturnType (uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e127m1_2limbs/fesubDisplay.v b/src/Specific/montgomery64_2e127m1_2limbs/fesubDisplay.v
deleted file mode 100644
index 1285480a7..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e127m1_2limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e127m1_2limbs/py_interpreter.sh b/src/Specific/montgomery64_2e127m1_2limbs/py_interpreter.sh
deleted file mode 100755
index 83c4398b2..000000000
--- a/src/Specific/montgomery64_2e127m1_2limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**127 - 1' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e129m25_3limbs/CurveParameters.v b/src/Specific/montgomery64_2e129m25_3limbs/CurveParameters.v
deleted file mode 100644
index a9a854de9..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^129 - 25
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 64;
- bitwidth := 64;
- s := 2^129;
- c := [(1, 25)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e129m25_3limbs/Synthesis.v b/src/Specific/montgomery64_2e129m25_3limbs/Synthesis.v
deleted file mode 100644
index 0c2f9af49..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e129m25_3limbs.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/montgomery64_2e129m25_3limbs/compiler.sh b/src/Specific/montgomery64_2e129m25_3limbs/compiler.sh
deleted file mode 100755
index 13bcfb67c..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<129) - 25' "$@"
diff --git a/src/Specific/montgomery64_2e129m25_3limbs/compilerxx.sh b/src/Specific/montgomery64_2e129m25_3limbs/compilerxx.sh
deleted file mode 100755
index f4ce10411..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<129) - 25' "$@"
diff --git a/src/Specific/montgomery64_2e129m25_3limbs/feadd.c b/src/Specific/montgomery64_2e129m25_3limbs/feadd.c
deleted file mode 100644
index 1f4da6ce2..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/feadd.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _addcarryx_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _addcarryx_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _addcarryx_u64(x17, x6, x10, &x19);
- { uint64_t x22; uint8_t x23 = _subborrow_u64(0x0, x13, 0xffffffffffffffe7L, &x22);
- { uint64_t x25; uint8_t x26 = _subborrow_u64(x23, x16, 0xffffffffffffffffL, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x19, 0x1, &x28);
- { uint64_t _; uint8_t x32 = _subborrow_u64(x29, x20, 0x0, &_);
- { uint64_t x33 = cmovznz64(x32, x28, x19);
- { uint64_t x34 = cmovznz64(x32, x25, x16);
- { uint64_t x35 = cmovznz64(x32, x22, x13);
- out[0] = x35;
- out[1] = x34;
- out[2] = x33;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e129m25_3limbs/feadd.v b/src/Specific/montgomery64_2e129m25_3limbs/feadd.v
deleted file mode 100644
index 17240f046..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e129m25_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e129m25_3limbs/feaddDisplay.log b/src/Specific/montgomery64_2e129m25_3limbs/feaddDisplay.log
deleted file mode 100644
index 429f30466..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = addcarryx_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = addcarryx_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = addcarryx_u64(x17, x6, x10);
- uint64_t x22, uint8_t x23 = subborrow_u64(0x0, x13, 0xffffffffffffffe7L);
- uint64_t x25, uint8_t x26 = subborrow_u64(x23, x16, 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x19, 0x1);
- uint64_t _, uint8_t x32 = subborrow_u64(x29, x20, 0x0);
- uint64_t x33 = cmovznz64(x32, x28, x19);
- uint64_t x34 = cmovznz64(x32, x25, x16);
- uint64_t x35 = cmovznz64(x32, x22, x13);
- return (x33, x34, x35))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e129m25_3limbs/feaddDisplay.v b/src/Specific/montgomery64_2e129m25_3limbs/feaddDisplay.v
deleted file mode 100644
index 674755c4e..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e129m25_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e129m25_3limbs/femul.c b/src/Specific/montgomery64_2e129m25_3limbs/femul.c
deleted file mode 100644
index 6e245304f..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/femul.c
+++ /dev/null
@@ -1,74 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x14; uint64_t x13 = _mulx_u64(x5, x9, &x14);
- { uint64_t x17; uint64_t x16 = _mulx_u64(x5, x11, &x17);
- { uint64_t x20; uint64_t x19 = _mulx_u64(x5, x10, &x20);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x14, x16, &x22);
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(x23, x17, x19, &x25);
- { uint64_t x28; uint8_t _ = _addcarryx_u64(0x0, x26, x20, &x28);
- { uint64_t _; uint64_t x31 = _mulx_u64(x13, 0x8f5c28f5c28f5c29L, &_);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x31, 0xffffffffffffffe7L, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x31, 0xffffffffffffffffL, &x38);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(0x0, x35, x37, &x40);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(x41, x38, x31, &x43);
- { uint64_t _; uint8_t x47 = _addcarryx_u64(0x0, x13, x34, &_);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x47, x22, x40, &x49);
- { uint64_t x52; uint8_t x53 = _addcarryx_u64(x50, x25, x43, &x52);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x28, x44, &x55);
- { uint64_t x59; uint64_t x58 = _mulx_u64(x7, x9, &x59);
- { uint64_t x62; uint64_t x61 = _mulx_u64(x7, x11, &x62);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x7, x10, &x65);
- { uint64_t x67; uint8_t x68 = _addcarryx_u64(0x0, x59, x61, &x67);
- { uint64_t x70; uint8_t x71 = _addcarryx_u64(x68, x62, x64, &x70);
- { uint64_t x73; uint8_t _ = _addcarryx_u64(0x0, x71, x65, &x73);
- { uint64_t x76; uint8_t x77 = _addcarryx_u64(0x0, x49, x58, &x76);
- { uint64_t x79; uint8_t x80 = _addcarryx_u64(x77, x52, x67, &x79);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(x80, x55, x70, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x56, x73, &x85);
- { uint64_t _; uint64_t x88 = _mulx_u64(x76, 0x8f5c28f5c28f5c29L, &_);
- { uint64_t x92; uint64_t x91 = _mulx_u64(x88, 0xffffffffffffffe7L, &x92);
- { uint64_t x95; uint64_t x94 = _mulx_u64(x88, 0xffffffffffffffffL, &x95);
- { uint64_t x97; uint8_t x98 = _addcarryx_u64(0x0, x92, x94, &x97);
- { uint64_t x100; uint8_t x101 = _addcarryx_u64(x98, x95, x88, &x100);
- { uint64_t _; uint8_t x104 = _addcarryx_u64(0x0, x76, x91, &_);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(x104, x79, x97, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x82, x100, &x109);
- { uint64_t x112; uint8_t x113 = _addcarryx_u64(x110, x85, x101, &x112);
- { uint8_t x114 = (x113 + x86);
- { uint64_t x117; uint64_t x116 = _mulx_u64(x6, x9, &x117);
- { uint64_t x120; uint64_t x119 = _mulx_u64(x6, x11, &x120);
- { uint64_t x123; uint64_t x122 = _mulx_u64(x6, x10, &x123);
- { uint64_t x125; uint8_t x126 = _addcarryx_u64(0x0, x117, x119, &x125);
- { uint64_t x128; uint8_t x129 = _addcarryx_u64(x126, x120, x122, &x128);
- { uint64_t x131; uint8_t _ = _addcarryx_u64(0x0, x129, x123, &x131);
- { uint64_t x134; uint8_t x135 = _addcarryx_u64(0x0, x106, x116, &x134);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(x135, x109, x125, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x112, x128, &x140);
- { uint64_t x143; uint8_t x144 = _addcarryx_u64(x141, x114, x131, &x143);
- { uint64_t _; uint64_t x146 = _mulx_u64(x134, 0x8f5c28f5c28f5c29L, &_);
- { uint64_t x150; uint64_t x149 = _mulx_u64(x146, 0xffffffffffffffe7L, &x150);
- { uint64_t x153; uint64_t x152 = _mulx_u64(x146, 0xffffffffffffffffL, &x153);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(0x0, x150, x152, &x155);
- { uint64_t x158; uint8_t x159 = _addcarryx_u64(x156, x153, x146, &x158);
- { uint64_t _; uint8_t x162 = _addcarryx_u64(0x0, x134, x149, &_);
- { uint64_t x164; uint8_t x165 = _addcarryx_u64(x162, x137, x155, &x164);
- { uint64_t x167; uint8_t x168 = _addcarryx_u64(x165, x140, x158, &x167);
- { uint64_t x170; uint8_t x171 = _addcarryx_u64(x168, x143, x159, &x170);
- { uint8_t x172 = (x171 + x144);
- { uint64_t x174; uint8_t x175 = _subborrow_u64(0x0, x164, 0xffffffffffffffe7L, &x174);
- { uint64_t x177; uint8_t x178 = _subborrow_u64(x175, x167, 0xffffffffffffffffL, &x177);
- { uint64_t x180; uint8_t x181 = _subborrow_u64(x178, x170, 0x1, &x180);
- { uint64_t _; uint8_t x184 = _subborrow_u64(x181, x172, 0x0, &_);
- { uint64_t x185 = cmovznz64(x184, x180, x170);
- { uint64_t x186 = cmovznz64(x184, x177, x167);
- { uint64_t x187 = cmovznz64(x184, x174, x164);
- out[0] = x187;
- out[1] = x186;
- out[2] = x185;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e129m25_3limbs/femul.v b/src/Specific/montgomery64_2e129m25_3limbs/femul.v
deleted file mode 100644
index 62ff3222d..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e129m25_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e129m25_3limbs/femulDisplay.log b/src/Specific/montgomery64_2e129m25_3limbs/femulDisplay.log
deleted file mode 100644
index 5e06221b0..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,69 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint64_t x14 = mulx_u64(x5, x9);
- uint64_t x16, uint64_t x17 = mulx_u64(x5, x11);
- uint64_t x19, uint64_t x20 = mulx_u64(x5, x10);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x14, x16);
- uint64_t x25, uint8_t x26 = addcarryx_u64(x23, x17, x19);
- uint64_t x28, uint8_t _ = addcarryx_u64(0x0, x26, x20);
- uint64_t x31, uint64_t _ = mulx_u64(x13, 0x8f5c28f5c28f5c29L);
- uint64_t x34, uint64_t x35 = mulx_u64(x31, 0xffffffffffffffe7L);
- uint64_t x37, uint64_t x38 = mulx_u64(x31, 0xffffffffffffffffL);
- uint64_t x40, uint8_t x41 = addcarryx_u64(0x0, x35, x37);
- uint64_t x43, uint8_t x44 = addcarryx_u64(x41, x38, x31);
- uint64_t _, uint8_t x47 = addcarryx_u64(0x0, x13, x34);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x47, x22, x40);
- uint64_t x52, uint8_t x53 = addcarryx_u64(x50, x25, x43);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x28, x44);
- uint64_t x58, uint64_t x59 = mulx_u64(x7, x9);
- uint64_t x61, uint64_t x62 = mulx_u64(x7, x11);
- uint64_t x64, uint64_t x65 = mulx_u64(x7, x10);
- uint64_t x67, uint8_t x68 = addcarryx_u64(0x0, x59, x61);
- uint64_t x70, uint8_t x71 = addcarryx_u64(x68, x62, x64);
- uint64_t x73, uint8_t _ = addcarryx_u64(0x0, x71, x65);
- uint64_t x76, uint8_t x77 = addcarryx_u64(0x0, x49, x58);
- uint64_t x79, uint8_t x80 = addcarryx_u64(x77, x52, x67);
- uint64_t x82, uint8_t x83 = addcarryx_u64(x80, x55, x70);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x56, x73);
- uint64_t x88, uint64_t _ = mulx_u64(x76, 0x8f5c28f5c28f5c29L);
- uint64_t x91, uint64_t x92 = mulx_u64(x88, 0xffffffffffffffe7L);
- uint64_t x94, uint64_t x95 = mulx_u64(x88, 0xffffffffffffffffL);
- uint64_t x97, uint8_t x98 = addcarryx_u64(0x0, x92, x94);
- uint64_t x100, uint8_t x101 = addcarryx_u64(x98, x95, x88);
- uint64_t _, uint8_t x104 = addcarryx_u64(0x0, x76, x91);
- uint64_t x106, uint8_t x107 = addcarryx_u64(x104, x79, x97);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x82, x100);
- uint64_t x112, uint8_t x113 = addcarryx_u64(x110, x85, x101);
- uint8_t x114 = (x113 + x86);
- uint64_t x116, uint64_t x117 = mulx_u64(x6, x9);
- uint64_t x119, uint64_t x120 = mulx_u64(x6, x11);
- uint64_t x122, uint64_t x123 = mulx_u64(x6, x10);
- uint64_t x125, uint8_t x126 = addcarryx_u64(0x0, x117, x119);
- uint64_t x128, uint8_t x129 = addcarryx_u64(x126, x120, x122);
- uint64_t x131, uint8_t _ = addcarryx_u64(0x0, x129, x123);
- uint64_t x134, uint8_t x135 = addcarryx_u64(0x0, x106, x116);
- uint64_t x137, uint8_t x138 = addcarryx_u64(x135, x109, x125);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x112, x128);
- uint64_t x143, uint8_t x144 = addcarryx_u64(x141, x114, x131);
- uint64_t x146, uint64_t _ = mulx_u64(x134, 0x8f5c28f5c28f5c29L);
- uint64_t x149, uint64_t x150 = mulx_u64(x146, 0xffffffffffffffe7L);
- uint64_t x152, uint64_t x153 = mulx_u64(x146, 0xffffffffffffffffL);
- uint64_t x155, uint8_t x156 = addcarryx_u64(0x0, x150, x152);
- uint64_t x158, uint8_t x159 = addcarryx_u64(x156, x153, x146);
- uint64_t _, uint8_t x162 = addcarryx_u64(0x0, x134, x149);
- uint64_t x164, uint8_t x165 = addcarryx_u64(x162, x137, x155);
- uint64_t x167, uint8_t x168 = addcarryx_u64(x165, x140, x158);
- uint64_t x170, uint8_t x171 = addcarryx_u64(x168, x143, x159);
- uint8_t x172 = (x171 + x144);
- uint64_t x174, uint8_t x175 = subborrow_u64(0x0, x164, 0xffffffffffffffe7L);
- uint64_t x177, uint8_t x178 = subborrow_u64(x175, x167, 0xffffffffffffffffL);
- uint64_t x180, uint8_t x181 = subborrow_u64(x178, x170, 0x1);
- uint64_t _, uint8_t x184 = subborrow_u64(x181, x172, 0x0);
- uint64_t x185 = cmovznz64(x184, x180, x170);
- uint64_t x186 = cmovznz64(x184, x177, x167);
- uint64_t x187 = cmovznz64(x184, x174, x164);
- return (x185, x186, x187))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e129m25_3limbs/femulDisplay.v b/src/Specific/montgomery64_2e129m25_3limbs/femulDisplay.v
deleted file mode 100644
index 80e0676ab..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e129m25_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e129m25_3limbs/fenz.c b/src/Specific/montgomery64_2e129m25_3limbs/fenz.c
deleted file mode 100644
index 2632a2866..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/fenz.c
+++ /dev/null
@@ -1,9 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x5 = (x4 | x3);
- { uint64_t x6 = (x2 | x5);
- out[0] = x6;
- }}}}}
-}
diff --git a/src/Specific/montgomery64_2e129m25_3limbs/fenz.v b/src/Specific/montgomery64_2e129m25_3limbs/fenz.v
deleted file mode 100644
index d798fc1b7..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e129m25_3limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e129m25_3limbs/fenzDisplay.log b/src/Specific/montgomery64_2e129m25_3limbs/fenzDisplay.log
deleted file mode 100644
index 680322e0f..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/fenzDisplay.log
+++ /dev/null
@@ -1,9 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x5 = (x4 | x3);
- uint64_t x6 = (x2 | x5);
- return x6)
-x
- : word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e129m25_3limbs/fenzDisplay.v b/src/Specific/montgomery64_2e129m25_3limbs/fenzDisplay.v
deleted file mode 100644
index cb39055d9..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e129m25_3limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e129m25_3limbs/feopp.c b/src/Specific/montgomery64_2e129m25_3limbs/feopp.c
deleted file mode 100644
index 57985379d..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/feopp.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void feopp(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6; uint8_t x7 = _subborrow_u64(0x0, 0x0, x2, &x6);
- { uint64_t x9; uint8_t x10 = _subborrow_u64(x7, 0x0, x4, &x9);
- { uint64_t x12; uint8_t x13 = _subborrow_u64(x10, 0x0, x3, &x12);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0xffffffffffffffe7L);
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x6, x15, &x17);
- { uint64_t x19 = (x14 & 0xffffffffffffffffL);
- { uint64_t x21; uint8_t x22 = _addcarryx_u64(x18, x9, x19, &x21);
- { uint8_t x23 = ((uint8_t)x14 & 0x1);
- { uint64_t x25; uint8_t _ = _addcarryx_u64(x22, x12, x23, &x25);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e129m25_3limbs/feopp.v b/src/Specific/montgomery64_2e129m25_3limbs/feopp.v
deleted file mode 100644
index 38ccc7883..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e129m25_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e129m25_3limbs/feoppDisplay.log b/src/Specific/montgomery64_2e129m25_3limbs/feoppDisplay.log
deleted file mode 100644
index e761bfab0..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/feoppDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x9, uint8_t x10 = subborrow_u64(x7, 0x0, x4);
- uint64_t x12, uint8_t x13 = subborrow_u64(x10, 0x0, x3);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0xffffffffffffffe7L);
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x6, x15);
- uint64_t x19 = (x14 & 0xffffffffffffffffL);
- uint64_t x21, uint8_t x22 = addcarryx_u64(x18, x9, x19);
- uint8_t x23 = ((uint8_t)x14 & 0x1);
- uint64_t x25, uint8_t _ = addcarryx_u64(x22, x12, x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e129m25_3limbs/feoppDisplay.v b/src/Specific/montgomery64_2e129m25_3limbs/feoppDisplay.v
deleted file mode 100644
index 9d27d4261..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e129m25_3limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e129m25_3limbs/fesquare.c b/src/Specific/montgomery64_2e129m25_3limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e129m25_3limbs/fesub.c b/src/Specific/montgomery64_2e129m25_3limbs/fesub.c
deleted file mode 100644
index d31d91734..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/fesub.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _subborrow_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _subborrow_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _subborrow_u64(x17, x6, x10, &x19);
- { uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- { uint64_t x22 = (x21 & 0xffffffffffffffe7L);
- { uint64_t x24; uint8_t x25 = _addcarryx_u64(0x0, x13, x22, &x24);
- { uint64_t x26 = (x21 & 0xffffffffffffffffL);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x25, x16, x26, &x28);
- { uint8_t x30 = ((uint8_t)x21 & 0x1);
- { uint64_t x32; uint8_t _ = _addcarryx_u64(x29, x19, x30, &x32);
- out[0] = x24;
- out[1] = x28;
- out[2] = x32;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e129m25_3limbs/fesub.v b/src/Specific/montgomery64_2e129m25_3limbs/fesub.v
deleted file mode 100644
index 886089943..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e129m25_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e129m25_3limbs/fesubDisplay.log b/src/Specific/montgomery64_2e129m25_3limbs/fesubDisplay.log
deleted file mode 100644
index b792af81b..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = subborrow_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = subborrow_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = subborrow_u64(x17, x6, x10);
- uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- uint64_t x22 = (x21 & 0xffffffffffffffe7L);
- uint64_t x24, uint8_t x25 = addcarryx_u64(0x0, x13, x22);
- uint64_t x26 = (x21 & 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x25, x16, x26);
- uint8_t x30 = ((uint8_t)x21 & 0x1);
- uint64_t x32, uint8_t _ = addcarryx_u64(x29, x19, x30);
- (Return x32, Return x28, Return x24))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e129m25_3limbs/fesubDisplay.v b/src/Specific/montgomery64_2e129m25_3limbs/fesubDisplay.v
deleted file mode 100644
index 128a01d46..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e129m25_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e129m25_3limbs/py_interpreter.sh b/src/Specific/montgomery64_2e129m25_3limbs/py_interpreter.sh
deleted file mode 100755
index 39c45c699..000000000
--- a/src/Specific/montgomery64_2e129m25_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**129 - 25' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e130m5_3limbs/CurveParameters.v b/src/Specific/montgomery64_2e130m5_3limbs/CurveParameters.v
deleted file mode 100644
index b4ff2f97e..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^130 - 5
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 64;
- bitwidth := 64;
- s := 2^130;
- c := [(1, 5)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e130m5_3limbs/Synthesis.v b/src/Specific/montgomery64_2e130m5_3limbs/Synthesis.v
deleted file mode 100644
index 447d033a0..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e130m5_3limbs.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/montgomery64_2e130m5_3limbs/compiler.sh b/src/Specific/montgomery64_2e130m5_3limbs/compiler.sh
deleted file mode 100755
index 06ffd20ae..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<130) - 5' "$@"
diff --git a/src/Specific/montgomery64_2e130m5_3limbs/compilerxx.sh b/src/Specific/montgomery64_2e130m5_3limbs/compilerxx.sh
deleted file mode 100755
index e8e32239d..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<130) - 5' "$@"
diff --git a/src/Specific/montgomery64_2e130m5_3limbs/feadd.c b/src/Specific/montgomery64_2e130m5_3limbs/feadd.c
deleted file mode 100644
index fd76ff39c..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/feadd.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _addcarryx_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _addcarryx_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _addcarryx_u64(x17, x6, x10, &x19);
- { uint64_t x22; uint8_t x23 = _subborrow_u64(0x0, x13, 0xfffffffffffffffbL, &x22);
- { uint64_t x25; uint8_t x26 = _subborrow_u64(x23, x16, 0xffffffffffffffffL, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x19, 0x3, &x28);
- { uint64_t _; uint8_t x32 = _subborrow_u64(x29, x20, 0x0, &_);
- { uint64_t x33 = cmovznz64(x32, x28, x19);
- { uint64_t x34 = cmovznz64(x32, x25, x16);
- { uint64_t x35 = cmovznz64(x32, x22, x13);
- out[0] = x35;
- out[1] = x34;
- out[2] = x33;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e130m5_3limbs/feadd.v b/src/Specific/montgomery64_2e130m5_3limbs/feadd.v
deleted file mode 100644
index 67b903a12..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e130m5_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e130m5_3limbs/feaddDisplay.log b/src/Specific/montgomery64_2e130m5_3limbs/feaddDisplay.log
deleted file mode 100644
index 3490818b1..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = addcarryx_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = addcarryx_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = addcarryx_u64(x17, x6, x10);
- uint64_t x22, uint8_t x23 = subborrow_u64(0x0, x13, 0xfffffffffffffffbL);
- uint64_t x25, uint8_t x26 = subborrow_u64(x23, x16, 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x19, 0x3);
- uint64_t _, uint8_t x32 = subborrow_u64(x29, x20, 0x0);
- uint64_t x33 = cmovznz64(x32, x28, x19);
- uint64_t x34 = cmovznz64(x32, x25, x16);
- uint64_t x35 = cmovznz64(x32, x22, x13);
- return (x33, x34, x35))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e130m5_3limbs/feaddDisplay.v b/src/Specific/montgomery64_2e130m5_3limbs/feaddDisplay.v
deleted file mode 100644
index ef6edb79c..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e130m5_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e130m5_3limbs/femul.c b/src/Specific/montgomery64_2e130m5_3limbs/femul.c
deleted file mode 100644
index fb6f4f400..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/femul.c
+++ /dev/null
@@ -1,80 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x14; uint64_t x13 = _mulx_u64(x5, x9, &x14);
- { uint64_t x17; uint64_t x16 = _mulx_u64(x5, x11, &x17);
- { uint64_t x20; uint64_t x19 = _mulx_u64(x5, x10, &x20);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x14, x16, &x22);
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(x23, x17, x19, &x25);
- { uint64_t x28; uint8_t _ = _addcarryx_u64(0x0, x26, x20, &x28);
- { uint64_t _; uint64_t x31 = _mulx_u64(x13, 0xcccccccccccccccdL, &_);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x31, 0xfffffffffffffffbL, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x31, 0xffffffffffffffffL, &x38);
- { uint8_t x41; uint64_t x40 = _mulx_u64_out_u8(x31, 0x3, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x35, x37, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x38, x40, &x46);
- { uint8_t x48 = (x47 + x41);
- { uint64_t _; uint8_t x51 = _addcarryx_u64(0x0, x13, x34, &_);
- { uint64_t x53; uint8_t x54 = _addcarryx_u64(x51, x22, x43, &x53);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(x54, x25, x46, &x56);
- { uint64_t x59; uint8_t x60 = _addcarryx_u64(x57, x28, x48, &x59);
- { uint64_t x63; uint64_t x62 = _mulx_u64(x7, x9, &x63);
- { uint64_t x66; uint64_t x65 = _mulx_u64(x7, x11, &x66);
- { uint64_t x69; uint64_t x68 = _mulx_u64(x7, x10, &x69);
- { uint64_t x71; uint8_t x72 = _addcarryx_u64(0x0, x63, x65, &x71);
- { uint64_t x74; uint8_t x75 = _addcarryx_u64(x72, x66, x68, &x74);
- { uint64_t x77; uint8_t _ = _addcarryx_u64(0x0, x75, x69, &x77);
- { uint64_t x80; uint8_t x81 = _addcarryx_u64(0x0, x53, x62, &x80);
- { uint64_t x83; uint8_t x84 = _addcarryx_u64(x81, x56, x71, &x83);
- { uint64_t x86; uint8_t x87 = _addcarryx_u64(x84, x59, x74, &x86);
- { uint64_t x89; uint8_t x90 = _addcarryx_u64(x87, x60, x77, &x89);
- { uint64_t _; uint64_t x92 = _mulx_u64(x80, 0xcccccccccccccccdL, &_);
- { uint64_t x96; uint64_t x95 = _mulx_u64(x92, 0xfffffffffffffffbL, &x96);
- { uint64_t x99; uint64_t x98 = _mulx_u64(x92, 0xffffffffffffffffL, &x99);
- { uint8_t x102; uint64_t x101 = _mulx_u64_out_u8(x92, 0x3, &x102);
- { uint64_t x104; uint8_t x105 = _addcarryx_u64(0x0, x96, x98, &x104);
- { uint64_t x107; uint8_t x108 = _addcarryx_u64(x105, x99, x101, &x107);
- { uint8_t x109 = (x108 + x102);
- { uint64_t _; uint8_t x112 = _addcarryx_u64(0x0, x80, x95, &_);
- { uint64_t x114; uint8_t x115 = _addcarryx_u64(x112, x83, x104, &x114);
- { uint64_t x117; uint8_t x118 = _addcarryx_u64(x115, x86, x107, &x117);
- { uint64_t x120; uint8_t x121 = _addcarryx_u64(x118, x89, x109, &x120);
- { uint8_t x122 = (x121 + x90);
- { uint64_t x125; uint64_t x124 = _mulx_u64(x6, x9, &x125);
- { uint64_t x128; uint64_t x127 = _mulx_u64(x6, x11, &x128);
- { uint64_t x131; uint64_t x130 = _mulx_u64(x6, x10, &x131);
- { uint64_t x133; uint8_t x134 = _addcarryx_u64(0x0, x125, x127, &x133);
- { uint64_t x136; uint8_t x137 = _addcarryx_u64(x134, x128, x130, &x136);
- { uint64_t x139; uint8_t _ = _addcarryx_u64(0x0, x137, x131, &x139);
- { uint64_t x142; uint8_t x143 = _addcarryx_u64(0x0, x114, x124, &x142);
- { uint64_t x145; uint8_t x146 = _addcarryx_u64(x143, x117, x133, &x145);
- { uint64_t x148; uint8_t x149 = _addcarryx_u64(x146, x120, x136, &x148);
- { uint64_t x151; uint8_t x152 = _addcarryx_u64(x149, x122, x139, &x151);
- { uint64_t _; uint64_t x154 = _mulx_u64(x142, 0xcccccccccccccccdL, &_);
- { uint64_t x158; uint64_t x157 = _mulx_u64(x154, 0xfffffffffffffffbL, &x158);
- { uint64_t x161; uint64_t x160 = _mulx_u64(x154, 0xffffffffffffffffL, &x161);
- { uint8_t x164; uint64_t x163 = _mulx_u64_out_u8(x154, 0x3, &x164);
- { uint64_t x166; uint8_t x167 = _addcarryx_u64(0x0, x158, x160, &x166);
- { uint64_t x169; uint8_t x170 = _addcarryx_u64(x167, x161, x163, &x169);
- { uint8_t x171 = (x170 + x164);
- { uint64_t _; uint8_t x174 = _addcarryx_u64(0x0, x142, x157, &_);
- { uint64_t x176; uint8_t x177 = _addcarryx_u64(x174, x145, x166, &x176);
- { uint64_t x179; uint8_t x180 = _addcarryx_u64(x177, x148, x169, &x179);
- { uint64_t x182; uint8_t x183 = _addcarryx_u64(x180, x151, x171, &x182);
- { uint8_t x184 = (x183 + x152);
- { uint64_t x186; uint8_t x187 = _subborrow_u64(0x0, x176, 0xfffffffffffffffbL, &x186);
- { uint64_t x189; uint8_t x190 = _subborrow_u64(x187, x179, 0xffffffffffffffffL, &x189);
- { uint64_t x192; uint8_t x193 = _subborrow_u64(x190, x182, 0x3, &x192);
- { uint64_t _; uint8_t x196 = _subborrow_u64(x193, x184, 0x0, &_);
- { uint64_t x197 = cmovznz64(x196, x192, x182);
- { uint64_t x198 = cmovznz64(x196, x189, x179);
- { uint64_t x199 = cmovznz64(x196, x186, x176);
- out[0] = x199;
- out[1] = x198;
- out[2] = x197;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e130m5_3limbs/femul.v b/src/Specific/montgomery64_2e130m5_3limbs/femul.v
deleted file mode 100644
index dc589557f..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e130m5_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e130m5_3limbs/femulDisplay.log b/src/Specific/montgomery64_2e130m5_3limbs/femulDisplay.log
deleted file mode 100644
index 51f4abe94..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,75 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint64_t x14 = mulx_u64(x5, x9);
- uint64_t x16, uint64_t x17 = mulx_u64(x5, x11);
- uint64_t x19, uint64_t x20 = mulx_u64(x5, x10);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x14, x16);
- uint64_t x25, uint8_t x26 = addcarryx_u64(x23, x17, x19);
- uint64_t x28, uint8_t _ = addcarryx_u64(0x0, x26, x20);
- uint64_t x31, uint64_t _ = mulx_u64(x13, 0xcccccccccccccccdL);
- uint64_t x34, uint64_t x35 = mulx_u64(x31, 0xfffffffffffffffbL);
- uint64_t x37, uint64_t x38 = mulx_u64(x31, 0xffffffffffffffffL);
- uint64_t x40, uint8_t x41 = mulx_u64_out_u8(x31, 0x3);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x35, x37);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x38, x40);
- uint8_t x48 = (x47 + x41);
- uint64_t _, uint8_t x51 = addcarryx_u64(0x0, x13, x34);
- uint64_t x53, uint8_t x54 = addcarryx_u64(x51, x22, x43);
- uint64_t x56, uint8_t x57 = addcarryx_u64(x54, x25, x46);
- uint64_t x59, uint8_t x60 = addcarryx_u64(x57, x28, x48);
- uint64_t x62, uint64_t x63 = mulx_u64(x7, x9);
- uint64_t x65, uint64_t x66 = mulx_u64(x7, x11);
- uint64_t x68, uint64_t x69 = mulx_u64(x7, x10);
- uint64_t x71, uint8_t x72 = addcarryx_u64(0x0, x63, x65);
- uint64_t x74, uint8_t x75 = addcarryx_u64(x72, x66, x68);
- uint64_t x77, uint8_t _ = addcarryx_u64(0x0, x75, x69);
- uint64_t x80, uint8_t x81 = addcarryx_u64(0x0, x53, x62);
- uint64_t x83, uint8_t x84 = addcarryx_u64(x81, x56, x71);
- uint64_t x86, uint8_t x87 = addcarryx_u64(x84, x59, x74);
- uint64_t x89, uint8_t x90 = addcarryx_u64(x87, x60, x77);
- uint64_t x92, uint64_t _ = mulx_u64(x80, 0xcccccccccccccccdL);
- uint64_t x95, uint64_t x96 = mulx_u64(x92, 0xfffffffffffffffbL);
- uint64_t x98, uint64_t x99 = mulx_u64(x92, 0xffffffffffffffffL);
- uint64_t x101, uint8_t x102 = mulx_u64_out_u8(x92, 0x3);
- uint64_t x104, uint8_t x105 = addcarryx_u64(0x0, x96, x98);
- uint64_t x107, uint8_t x108 = addcarryx_u64(x105, x99, x101);
- uint8_t x109 = (x108 + x102);
- uint64_t _, uint8_t x112 = addcarryx_u64(0x0, x80, x95);
- uint64_t x114, uint8_t x115 = addcarryx_u64(x112, x83, x104);
- uint64_t x117, uint8_t x118 = addcarryx_u64(x115, x86, x107);
- uint64_t x120, uint8_t x121 = addcarryx_u64(x118, x89, x109);
- uint8_t x122 = (x121 + x90);
- uint64_t x124, uint64_t x125 = mulx_u64(x6, x9);
- uint64_t x127, uint64_t x128 = mulx_u64(x6, x11);
- uint64_t x130, uint64_t x131 = mulx_u64(x6, x10);
- uint64_t x133, uint8_t x134 = addcarryx_u64(0x0, x125, x127);
- uint64_t x136, uint8_t x137 = addcarryx_u64(x134, x128, x130);
- uint64_t x139, uint8_t _ = addcarryx_u64(0x0, x137, x131);
- uint64_t x142, uint8_t x143 = addcarryx_u64(0x0, x114, x124);
- uint64_t x145, uint8_t x146 = addcarryx_u64(x143, x117, x133);
- uint64_t x148, uint8_t x149 = addcarryx_u64(x146, x120, x136);
- uint64_t x151, uint8_t x152 = addcarryx_u64(x149, x122, x139);
- uint64_t x154, uint64_t _ = mulx_u64(x142, 0xcccccccccccccccdL);
- uint64_t x157, uint64_t x158 = mulx_u64(x154, 0xfffffffffffffffbL);
- uint64_t x160, uint64_t x161 = mulx_u64(x154, 0xffffffffffffffffL);
- uint64_t x163, uint8_t x164 = mulx_u64_out_u8(x154, 0x3);
- uint64_t x166, uint8_t x167 = addcarryx_u64(0x0, x158, x160);
- uint64_t x169, uint8_t x170 = addcarryx_u64(x167, x161, x163);
- uint8_t x171 = (x170 + x164);
- uint64_t _, uint8_t x174 = addcarryx_u64(0x0, x142, x157);
- uint64_t x176, uint8_t x177 = addcarryx_u64(x174, x145, x166);
- uint64_t x179, uint8_t x180 = addcarryx_u64(x177, x148, x169);
- uint64_t x182, uint8_t x183 = addcarryx_u64(x180, x151, x171);
- uint8_t x184 = (x183 + x152);
- uint64_t x186, uint8_t x187 = subborrow_u64(0x0, x176, 0xfffffffffffffffbL);
- uint64_t x189, uint8_t x190 = subborrow_u64(x187, x179, 0xffffffffffffffffL);
- uint64_t x192, uint8_t x193 = subborrow_u64(x190, x182, 0x3);
- uint64_t _, uint8_t x196 = subborrow_u64(x193, x184, 0x0);
- uint64_t x197 = cmovznz64(x196, x192, x182);
- uint64_t x198 = cmovznz64(x196, x189, x179);
- uint64_t x199 = cmovznz64(x196, x186, x176);
- return (x197, x198, x199))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e130m5_3limbs/femulDisplay.v b/src/Specific/montgomery64_2e130m5_3limbs/femulDisplay.v
deleted file mode 100644
index 3019e3f31..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e130m5_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e130m5_3limbs/fenz.c b/src/Specific/montgomery64_2e130m5_3limbs/fenz.c
deleted file mode 100644
index 2632a2866..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/fenz.c
+++ /dev/null
@@ -1,9 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x5 = (x4 | x3);
- { uint64_t x6 = (x2 | x5);
- out[0] = x6;
- }}}}}
-}
diff --git a/src/Specific/montgomery64_2e130m5_3limbs/fenz.v b/src/Specific/montgomery64_2e130m5_3limbs/fenz.v
deleted file mode 100644
index e3604d43f..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e130m5_3limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e130m5_3limbs/fenzDisplay.log b/src/Specific/montgomery64_2e130m5_3limbs/fenzDisplay.log
deleted file mode 100644
index 680322e0f..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/fenzDisplay.log
+++ /dev/null
@@ -1,9 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x5 = (x4 | x3);
- uint64_t x6 = (x2 | x5);
- return x6)
-x
- : word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e130m5_3limbs/fenzDisplay.v b/src/Specific/montgomery64_2e130m5_3limbs/fenzDisplay.v
deleted file mode 100644
index 96aea020e..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e130m5_3limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e130m5_3limbs/feopp.c b/src/Specific/montgomery64_2e130m5_3limbs/feopp.c
deleted file mode 100644
index 5a36bd38d..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/feopp.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void feopp(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6; uint8_t x7 = _subborrow_u64(0x0, 0x0, x2, &x6);
- { uint64_t x9; uint8_t x10 = _subborrow_u64(x7, 0x0, x4, &x9);
- { uint64_t x12; uint8_t x13 = _subborrow_u64(x10, 0x0, x3, &x12);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0xfffffffffffffffbL);
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x6, x15, &x17);
- { uint64_t x19 = (x14 & 0xffffffffffffffffL);
- { uint64_t x21; uint8_t x22 = _addcarryx_u64(x18, x9, x19, &x21);
- { uint8_t x23 = ((uint8_t)x14 & 0x3);
- { uint64_t x25; uint8_t _ = _addcarryx_u64(x22, x12, x23, &x25);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e130m5_3limbs/feopp.v b/src/Specific/montgomery64_2e130m5_3limbs/feopp.v
deleted file mode 100644
index e90ba77cf..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e130m5_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e130m5_3limbs/feoppDisplay.log b/src/Specific/montgomery64_2e130m5_3limbs/feoppDisplay.log
deleted file mode 100644
index d35231424..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/feoppDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x9, uint8_t x10 = subborrow_u64(x7, 0x0, x4);
- uint64_t x12, uint8_t x13 = subborrow_u64(x10, 0x0, x3);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0xfffffffffffffffbL);
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x6, x15);
- uint64_t x19 = (x14 & 0xffffffffffffffffL);
- uint64_t x21, uint8_t x22 = addcarryx_u64(x18, x9, x19);
- uint8_t x23 = ((uint8_t)x14 & 0x3);
- uint64_t x25, uint8_t _ = addcarryx_u64(x22, x12, x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e130m5_3limbs/feoppDisplay.v b/src/Specific/montgomery64_2e130m5_3limbs/feoppDisplay.v
deleted file mode 100644
index 19683e664..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e130m5_3limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e130m5_3limbs/fesquare.c b/src/Specific/montgomery64_2e130m5_3limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e130m5_3limbs/fesub.c b/src/Specific/montgomery64_2e130m5_3limbs/fesub.c
deleted file mode 100644
index a7a5ad633..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/fesub.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _subborrow_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _subborrow_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _subborrow_u64(x17, x6, x10, &x19);
- { uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- { uint64_t x22 = (x21 & 0xfffffffffffffffbL);
- { uint64_t x24; uint8_t x25 = _addcarryx_u64(0x0, x13, x22, &x24);
- { uint64_t x26 = (x21 & 0xffffffffffffffffL);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x25, x16, x26, &x28);
- { uint8_t x30 = ((uint8_t)x21 & 0x3);
- { uint64_t x32; uint8_t _ = _addcarryx_u64(x29, x19, x30, &x32);
- out[0] = x24;
- out[1] = x28;
- out[2] = x32;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e130m5_3limbs/fesub.v b/src/Specific/montgomery64_2e130m5_3limbs/fesub.v
deleted file mode 100644
index 1e11cb37b..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e130m5_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e130m5_3limbs/fesubDisplay.log b/src/Specific/montgomery64_2e130m5_3limbs/fesubDisplay.log
deleted file mode 100644
index 28a5a458b..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = subborrow_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = subborrow_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = subborrow_u64(x17, x6, x10);
- uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- uint64_t x22 = (x21 & 0xfffffffffffffffbL);
- uint64_t x24, uint8_t x25 = addcarryx_u64(0x0, x13, x22);
- uint64_t x26 = (x21 & 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x25, x16, x26);
- uint8_t x30 = ((uint8_t)x21 & 0x3);
- uint64_t x32, uint8_t _ = addcarryx_u64(x29, x19, x30);
- (Return x32, Return x28, Return x24))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e130m5_3limbs/fesubDisplay.v b/src/Specific/montgomery64_2e130m5_3limbs/fesubDisplay.v
deleted file mode 100644
index 5fecb349f..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e130m5_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e130m5_3limbs/py_interpreter.sh b/src/Specific/montgomery64_2e130m5_3limbs/py_interpreter.sh
deleted file mode 100755
index 9db7098ab..000000000
--- a/src/Specific/montgomery64_2e130m5_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**130 - 5' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e137m13_3limbs/CurveParameters.v b/src/Specific/montgomery64_2e137m13_3limbs/CurveParameters.v
deleted file mode 100644
index 2e161dd87..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^137 - 13
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 64;
- bitwidth := 64;
- s := 2^137;
- c := [(1, 13)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e137m13_3limbs/Synthesis.v b/src/Specific/montgomery64_2e137m13_3limbs/Synthesis.v
deleted file mode 100644
index 5ec00bff6..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e137m13_3limbs.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/montgomery64_2e137m13_3limbs/compiler.sh b/src/Specific/montgomery64_2e137m13_3limbs/compiler.sh
deleted file mode 100755
index b63f7fef1..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<137) - 13' "$@"
diff --git a/src/Specific/montgomery64_2e137m13_3limbs/compilerxx.sh b/src/Specific/montgomery64_2e137m13_3limbs/compilerxx.sh
deleted file mode 100755
index aafdde49b..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<137) - 13' "$@"
diff --git a/src/Specific/montgomery64_2e137m13_3limbs/feadd.c b/src/Specific/montgomery64_2e137m13_3limbs/feadd.c
deleted file mode 100644
index 57dc9adb8..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/feadd.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _addcarryx_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _addcarryx_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _addcarryx_u64(x17, x6, x10, &x19);
- { uint64_t x22; uint8_t x23 = _subborrow_u64(0x0, x13, 0xfffffffffffffff3L, &x22);
- { uint64_t x25; uint8_t x26 = _subborrow_u64(x23, x16, 0xffffffffffffffffL, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x19, 0x1ff, &x28);
- { uint64_t _; uint8_t x32 = _subborrow_u64(x29, x20, 0x0, &_);
- { uint64_t x33 = cmovznz64(x32, x28, x19);
- { uint64_t x34 = cmovznz64(x32, x25, x16);
- { uint64_t x35 = cmovznz64(x32, x22, x13);
- out[0] = x35;
- out[1] = x34;
- out[2] = x33;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e137m13_3limbs/feadd.v b/src/Specific/montgomery64_2e137m13_3limbs/feadd.v
deleted file mode 100644
index c91238348..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e137m13_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e137m13_3limbs/feaddDisplay.log b/src/Specific/montgomery64_2e137m13_3limbs/feaddDisplay.log
deleted file mode 100644
index 656a4babe..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = addcarryx_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = addcarryx_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = addcarryx_u64(x17, x6, x10);
- uint64_t x22, uint8_t x23 = subborrow_u64(0x0, x13, 0xfffffffffffffff3L);
- uint64_t x25, uint8_t x26 = subborrow_u64(x23, x16, 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x19, 0x1ff);
- uint64_t _, uint8_t x32 = subborrow_u64(x29, x20, 0x0);
- uint64_t x33 = cmovznz64(x32, x28, x19);
- uint64_t x34 = cmovznz64(x32, x25, x16);
- uint64_t x35 = cmovznz64(x32, x22, x13);
- return (x33, x34, x35))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e137m13_3limbs/feaddDisplay.v b/src/Specific/montgomery64_2e137m13_3limbs/feaddDisplay.v
deleted file mode 100644
index c17888f1a..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e137m13_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e137m13_3limbs/femul.c b/src/Specific/montgomery64_2e137m13_3limbs/femul.c
deleted file mode 100644
index 6c502e42a..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/femul.c
+++ /dev/null
@@ -1,80 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x14; uint64_t x13 = _mulx_u64(x5, x9, &x14);
- { uint64_t x17; uint64_t x16 = _mulx_u64(x5, x11, &x17);
- { uint64_t x20; uint64_t x19 = _mulx_u64(x5, x10, &x20);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x14, x16, &x22);
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(x23, x17, x19, &x25);
- { uint64_t x28; uint8_t _ = _addcarryx_u64(0x0, x26, x20, &x28);
- { uint64_t _; uint64_t x31 = _mulx_u64(x13, 0x4ec4ec4ec4ec4ec5, &_);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x31, 0xfffffffffffffff3L, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x31, 0xffffffffffffffffL, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x31, 0x1ff, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x35, x37, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x38, x40, &x46);
- { uint64_t x49; uint8_t _ = _addcarryx_u64(0x0, x47, x41, &x49);
- { uint64_t _; uint8_t x53 = _addcarryx_u64(0x0, x13, x34, &_);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x22, x43, &x55);
- { uint64_t x58; uint8_t x59 = _addcarryx_u64(x56, x25, x46, &x58);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x59, x28, x49, &x61);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x7, x9, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x7, x11, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x7, x10, &x71);
- { uint64_t x73; uint8_t x74 = _addcarryx_u64(0x0, x65, x67, &x73);
- { uint64_t x76; uint8_t x77 = _addcarryx_u64(x74, x68, x70, &x76);
- { uint64_t x79; uint8_t _ = _addcarryx_u64(0x0, x77, x71, &x79);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x55, x64, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x58, x73, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x61, x76, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x62, x79, &x91);
- { uint64_t _; uint64_t x94 = _mulx_u64(x82, 0x4ec4ec4ec4ec4ec5, &_);
- { uint64_t x98; uint64_t x97 = _mulx_u64(x94, 0xfffffffffffffff3L, &x98);
- { uint64_t x101; uint64_t x100 = _mulx_u64(x94, 0xffffffffffffffffL, &x101);
- { uint64_t x104; uint64_t x103 = _mulx_u64(x94, 0x1ff, &x104);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(0x0, x98, x100, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x101, x103, &x109);
- { uint64_t x112; uint8_t _ = _addcarryx_u64(0x0, x110, x104, &x112);
- { uint64_t _; uint8_t x116 = _addcarryx_u64(0x0, x82, x97, &_);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x85, x106, &x118);
- { uint64_t x121; uint8_t x122 = _addcarryx_u64(x119, x88, x109, &x121);
- { uint64_t x124; uint8_t x125 = _addcarryx_u64(x122, x91, x112, &x124);
- { uint8_t x126 = (x125 + x92);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x6, x9, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x6, x11, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x6, x10, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x129, x131, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x132, x134, &x140);
- { uint64_t x143; uint8_t _ = _addcarryx_u64(0x0, x141, x135, &x143);
- { uint64_t x146; uint8_t x147 = _addcarryx_u64(0x0, x118, x128, &x146);
- { uint64_t x149; uint8_t x150 = _addcarryx_u64(x147, x121, x137, &x149);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x124, x140, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x126, x143, &x155);
- { uint64_t _; uint64_t x158 = _mulx_u64(x146, 0x4ec4ec4ec4ec4ec5, &_);
- { uint64_t x162; uint64_t x161 = _mulx_u64(x158, 0xfffffffffffffff3L, &x162);
- { uint64_t x165; uint64_t x164 = _mulx_u64(x158, 0xffffffffffffffffL, &x165);
- { uint64_t x168; uint64_t x167 = _mulx_u64(x158, 0x1ff, &x168);
- { uint64_t x170; uint8_t x171 = _addcarryx_u64(0x0, x162, x164, &x170);
- { uint64_t x173; uint8_t x174 = _addcarryx_u64(x171, x165, x167, &x173);
- { uint64_t x176; uint8_t _ = _addcarryx_u64(0x0, x174, x168, &x176);
- { uint64_t _; uint8_t x180 = _addcarryx_u64(0x0, x146, x161, &_);
- { uint64_t x182; uint8_t x183 = _addcarryx_u64(x180, x149, x170, &x182);
- { uint64_t x185; uint8_t x186 = _addcarryx_u64(x183, x152, x173, &x185);
- { uint64_t x188; uint8_t x189 = _addcarryx_u64(x186, x155, x176, &x188);
- { uint8_t x190 = (x189 + x156);
- { uint64_t x192; uint8_t x193 = _subborrow_u64(0x0, x182, 0xfffffffffffffff3L, &x192);
- { uint64_t x195; uint8_t x196 = _subborrow_u64(x193, x185, 0xffffffffffffffffL, &x195);
- { uint64_t x198; uint8_t x199 = _subborrow_u64(x196, x188, 0x1ff, &x198);
- { uint64_t _; uint8_t x202 = _subborrow_u64(x199, x190, 0x0, &_);
- { uint64_t x203 = cmovznz64(x202, x198, x188);
- { uint64_t x204 = cmovznz64(x202, x195, x185);
- { uint64_t x205 = cmovznz64(x202, x192, x182);
- out[0] = x205;
- out[1] = x204;
- out[2] = x203;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e137m13_3limbs/femul.v b/src/Specific/montgomery64_2e137m13_3limbs/femul.v
deleted file mode 100644
index 9ca491b89..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e137m13_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e137m13_3limbs/femulDisplay.log b/src/Specific/montgomery64_2e137m13_3limbs/femulDisplay.log
deleted file mode 100644
index 04fb62766..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,75 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint64_t x14 = mulx_u64(x5, x9);
- uint64_t x16, uint64_t x17 = mulx_u64(x5, x11);
- uint64_t x19, uint64_t x20 = mulx_u64(x5, x10);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x14, x16);
- uint64_t x25, uint8_t x26 = addcarryx_u64(x23, x17, x19);
- uint64_t x28, uint8_t _ = addcarryx_u64(0x0, x26, x20);
- uint64_t x31, uint64_t _ = mulx_u64(x13, 0x4ec4ec4ec4ec4ec5);
- uint64_t x34, uint64_t x35 = mulx_u64(x31, 0xfffffffffffffff3L);
- uint64_t x37, uint64_t x38 = mulx_u64(x31, 0xffffffffffffffffL);
- uint64_t x40, uint64_t x41 = mulx_u64(x31, 0x1ff);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x35, x37);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x38, x40);
- uint64_t x49, uint8_t _ = addcarryx_u64(0x0, x47, x41);
- uint64_t _, uint8_t x53 = addcarryx_u64(0x0, x13, x34);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x22, x43);
- uint64_t x58, uint8_t x59 = addcarryx_u64(x56, x25, x46);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x59, x28, x49);
- uint64_t x64, uint64_t x65 = mulx_u64(x7, x9);
- uint64_t x67, uint64_t x68 = mulx_u64(x7, x11);
- uint64_t x70, uint64_t x71 = mulx_u64(x7, x10);
- uint64_t x73, uint8_t x74 = addcarryx_u64(0x0, x65, x67);
- uint64_t x76, uint8_t x77 = addcarryx_u64(x74, x68, x70);
- uint64_t x79, uint8_t _ = addcarryx_u64(0x0, x77, x71);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x55, x64);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x58, x73);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x61, x76);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x62, x79);
- uint64_t x94, uint64_t _ = mulx_u64(x82, 0x4ec4ec4ec4ec4ec5);
- uint64_t x97, uint64_t x98 = mulx_u64(x94, 0xfffffffffffffff3L);
- uint64_t x100, uint64_t x101 = mulx_u64(x94, 0xffffffffffffffffL);
- uint64_t x103, uint64_t x104 = mulx_u64(x94, 0x1ff);
- uint64_t x106, uint8_t x107 = addcarryx_u64(0x0, x98, x100);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x101, x103);
- uint64_t x112, uint8_t _ = addcarryx_u64(0x0, x110, x104);
- uint64_t _, uint8_t x116 = addcarryx_u64(0x0, x82, x97);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x85, x106);
- uint64_t x121, uint8_t x122 = addcarryx_u64(x119, x88, x109);
- uint64_t x124, uint8_t x125 = addcarryx_u64(x122, x91, x112);
- uint8_t x126 = (x125 + x92);
- uint64_t x128, uint64_t x129 = mulx_u64(x6, x9);
- uint64_t x131, uint64_t x132 = mulx_u64(x6, x11);
- uint64_t x134, uint64_t x135 = mulx_u64(x6, x10);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x129, x131);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x132, x134);
- uint64_t x143, uint8_t _ = addcarryx_u64(0x0, x141, x135);
- uint64_t x146, uint8_t x147 = addcarryx_u64(0x0, x118, x128);
- uint64_t x149, uint8_t x150 = addcarryx_u64(x147, x121, x137);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x124, x140);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x126, x143);
- uint64_t x158, uint64_t _ = mulx_u64(x146, 0x4ec4ec4ec4ec4ec5);
- uint64_t x161, uint64_t x162 = mulx_u64(x158, 0xfffffffffffffff3L);
- uint64_t x164, uint64_t x165 = mulx_u64(x158, 0xffffffffffffffffL);
- uint64_t x167, uint64_t x168 = mulx_u64(x158, 0x1ff);
- uint64_t x170, uint8_t x171 = addcarryx_u64(0x0, x162, x164);
- uint64_t x173, uint8_t x174 = addcarryx_u64(x171, x165, x167);
- uint64_t x176, uint8_t _ = addcarryx_u64(0x0, x174, x168);
- uint64_t _, uint8_t x180 = addcarryx_u64(0x0, x146, x161);
- uint64_t x182, uint8_t x183 = addcarryx_u64(x180, x149, x170);
- uint64_t x185, uint8_t x186 = addcarryx_u64(x183, x152, x173);
- uint64_t x188, uint8_t x189 = addcarryx_u64(x186, x155, x176);
- uint8_t x190 = (x189 + x156);
- uint64_t x192, uint8_t x193 = subborrow_u64(0x0, x182, 0xfffffffffffffff3L);
- uint64_t x195, uint8_t x196 = subborrow_u64(x193, x185, 0xffffffffffffffffL);
- uint64_t x198, uint8_t x199 = subborrow_u64(x196, x188, 0x1ff);
- uint64_t _, uint8_t x202 = subborrow_u64(x199, x190, 0x0);
- uint64_t x203 = cmovznz64(x202, x198, x188);
- uint64_t x204 = cmovznz64(x202, x195, x185);
- uint64_t x205 = cmovznz64(x202, x192, x182);
- return (x203, x204, x205))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e137m13_3limbs/femulDisplay.v b/src/Specific/montgomery64_2e137m13_3limbs/femulDisplay.v
deleted file mode 100644
index 88da658f3..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e137m13_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e137m13_3limbs/fenz.c b/src/Specific/montgomery64_2e137m13_3limbs/fenz.c
deleted file mode 100644
index 2632a2866..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/fenz.c
+++ /dev/null
@@ -1,9 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x5 = (x4 | x3);
- { uint64_t x6 = (x2 | x5);
- out[0] = x6;
- }}}}}
-}
diff --git a/src/Specific/montgomery64_2e137m13_3limbs/fenz.v b/src/Specific/montgomery64_2e137m13_3limbs/fenz.v
deleted file mode 100644
index 57785dccb..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e137m13_3limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e137m13_3limbs/fenzDisplay.log b/src/Specific/montgomery64_2e137m13_3limbs/fenzDisplay.log
deleted file mode 100644
index 680322e0f..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/fenzDisplay.log
+++ /dev/null
@@ -1,9 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x5 = (x4 | x3);
- uint64_t x6 = (x2 | x5);
- return x6)
-x
- : word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e137m13_3limbs/fenzDisplay.v b/src/Specific/montgomery64_2e137m13_3limbs/fenzDisplay.v
deleted file mode 100644
index fee0e85cc..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e137m13_3limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e137m13_3limbs/feopp.c b/src/Specific/montgomery64_2e137m13_3limbs/feopp.c
deleted file mode 100644
index 77448545e..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/feopp.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void feopp(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6; uint8_t x7 = _subborrow_u64(0x0, 0x0, x2, &x6);
- { uint64_t x9; uint8_t x10 = _subborrow_u64(x7, 0x0, x4, &x9);
- { uint64_t x12; uint8_t x13 = _subborrow_u64(x10, 0x0, x3, &x12);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0xfffffffffffffff3L);
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x6, x15, &x17);
- { uint64_t x19 = (x14 & 0xffffffffffffffffL);
- { uint64_t x21; uint8_t x22 = _addcarryx_u64(x18, x9, x19, &x21);
- { uint64_t x23 = (x14 & 0x1ff);
- { uint64_t x25; uint8_t _ = _addcarryx_u64(x22, x12, x23, &x25);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e137m13_3limbs/feopp.v b/src/Specific/montgomery64_2e137m13_3limbs/feopp.v
deleted file mode 100644
index 5f26f7178..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e137m13_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e137m13_3limbs/feoppDisplay.log b/src/Specific/montgomery64_2e137m13_3limbs/feoppDisplay.log
deleted file mode 100644
index 40ece040b..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/feoppDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x9, uint8_t x10 = subborrow_u64(x7, 0x0, x4);
- uint64_t x12, uint8_t x13 = subborrow_u64(x10, 0x0, x3);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0xfffffffffffffff3L);
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x6, x15);
- uint64_t x19 = (x14 & 0xffffffffffffffffL);
- uint64_t x21, uint8_t x22 = addcarryx_u64(x18, x9, x19);
- uint64_t x23 = (x14 & 0x1ff);
- uint64_t x25, uint8_t _ = addcarryx_u64(x22, x12, x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e137m13_3limbs/feoppDisplay.v b/src/Specific/montgomery64_2e137m13_3limbs/feoppDisplay.v
deleted file mode 100644
index bd99daa02..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e137m13_3limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e137m13_3limbs/fesquare.c b/src/Specific/montgomery64_2e137m13_3limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e137m13_3limbs/fesub.c b/src/Specific/montgomery64_2e137m13_3limbs/fesub.c
deleted file mode 100644
index 48eba5996..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/fesub.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _subborrow_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _subborrow_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _subborrow_u64(x17, x6, x10, &x19);
- { uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- { uint64_t x22 = (x21 & 0xfffffffffffffff3L);
- { uint64_t x24; uint8_t x25 = _addcarryx_u64(0x0, x13, x22, &x24);
- { uint64_t x26 = (x21 & 0xffffffffffffffffL);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x25, x16, x26, &x28);
- { uint64_t x30 = (x21 & 0x1ff);
- { uint64_t x32; uint8_t _ = _addcarryx_u64(x29, x19, x30, &x32);
- out[0] = x24;
- out[1] = x28;
- out[2] = x32;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e137m13_3limbs/fesub.v b/src/Specific/montgomery64_2e137m13_3limbs/fesub.v
deleted file mode 100644
index c33fcdfa6..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e137m13_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e137m13_3limbs/fesubDisplay.log b/src/Specific/montgomery64_2e137m13_3limbs/fesubDisplay.log
deleted file mode 100644
index c9e562b56..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = subborrow_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = subborrow_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = subborrow_u64(x17, x6, x10);
- uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- uint64_t x22 = (x21 & 0xfffffffffffffff3L);
- uint64_t x24, uint8_t x25 = addcarryx_u64(0x0, x13, x22);
- uint64_t x26 = (x21 & 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x25, x16, x26);
- uint64_t x30 = (x21 & 0x1ff);
- uint64_t x32, uint8_t _ = addcarryx_u64(x29, x19, x30);
- (Return x32, Return x28, Return x24))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e137m13_3limbs/fesubDisplay.v b/src/Specific/montgomery64_2e137m13_3limbs/fesubDisplay.v
deleted file mode 100644
index cc4dd7b68..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e137m13_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e137m13_3limbs/py_interpreter.sh b/src/Specific/montgomery64_2e137m13_3limbs/py_interpreter.sh
deleted file mode 100755
index ad658f727..000000000
--- a/src/Specific/montgomery64_2e137m13_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**137 - 13' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e140m27_3limbs/CurveParameters.v b/src/Specific/montgomery64_2e140m27_3limbs/CurveParameters.v
deleted file mode 100644
index 7ff1f6a0f..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^140 - 27
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 64;
- bitwidth := 64;
- s := 2^140;
- c := [(1, 27)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e140m27_3limbs/Synthesis.v b/src/Specific/montgomery64_2e140m27_3limbs/Synthesis.v
deleted file mode 100644
index f5771c3a4..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e140m27_3limbs.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/montgomery64_2e140m27_3limbs/compiler.sh b/src/Specific/montgomery64_2e140m27_3limbs/compiler.sh
deleted file mode 100755
index 6048dffd9..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<140) - 27' "$@"
diff --git a/src/Specific/montgomery64_2e140m27_3limbs/compilerxx.sh b/src/Specific/montgomery64_2e140m27_3limbs/compilerxx.sh
deleted file mode 100755
index 416ee208b..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<140) - 27' "$@"
diff --git a/src/Specific/montgomery64_2e140m27_3limbs/feadd.c b/src/Specific/montgomery64_2e140m27_3limbs/feadd.c
deleted file mode 100644
index ef4942348..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/feadd.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _addcarryx_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _addcarryx_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _addcarryx_u64(x17, x6, x10, &x19);
- { uint64_t x22; uint8_t x23 = _subborrow_u64(0x0, x13, 0xffffffffffffffe5L, &x22);
- { uint64_t x25; uint8_t x26 = _subborrow_u64(x23, x16, 0xffffffffffffffffL, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x19, 0xfff, &x28);
- { uint64_t _; uint8_t x32 = _subborrow_u64(x29, x20, 0x0, &_);
- { uint64_t x33 = cmovznz64(x32, x28, x19);
- { uint64_t x34 = cmovznz64(x32, x25, x16);
- { uint64_t x35 = cmovznz64(x32, x22, x13);
- out[0] = x35;
- out[1] = x34;
- out[2] = x33;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e140m27_3limbs/feadd.v b/src/Specific/montgomery64_2e140m27_3limbs/feadd.v
deleted file mode 100644
index 3fe089dec..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e140m27_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e140m27_3limbs/feaddDisplay.log b/src/Specific/montgomery64_2e140m27_3limbs/feaddDisplay.log
deleted file mode 100644
index f20421f20..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = addcarryx_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = addcarryx_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = addcarryx_u64(x17, x6, x10);
- uint64_t x22, uint8_t x23 = subborrow_u64(0x0, x13, 0xffffffffffffffe5L);
- uint64_t x25, uint8_t x26 = subborrow_u64(x23, x16, 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x19, 0xfff);
- uint64_t _, uint8_t x32 = subborrow_u64(x29, x20, 0x0);
- uint64_t x33 = cmovznz64(x32, x28, x19);
- uint64_t x34 = cmovznz64(x32, x25, x16);
- uint64_t x35 = cmovznz64(x32, x22, x13);
- return (x33, x34, x35))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e140m27_3limbs/feaddDisplay.v b/src/Specific/montgomery64_2e140m27_3limbs/feaddDisplay.v
deleted file mode 100644
index fbcd93104..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e140m27_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e140m27_3limbs/femul.c b/src/Specific/montgomery64_2e140m27_3limbs/femul.c
deleted file mode 100644
index 4668a124b..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/femul.c
+++ /dev/null
@@ -1,80 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x14; uint64_t x13 = _mulx_u64(x5, x9, &x14);
- { uint64_t x17; uint64_t x16 = _mulx_u64(x5, x11, &x17);
- { uint64_t x20; uint64_t x19 = _mulx_u64(x5, x10, &x20);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x14, x16, &x22);
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(x23, x17, x19, &x25);
- { uint64_t x28; uint8_t _ = _addcarryx_u64(0x0, x26, x20, &x28);
- { uint64_t _; uint64_t x31 = _mulx_u64(x13, 0x84bda12f684bda13L, &_);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x31, 0xffffffffffffffe5L, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x31, 0xffffffffffffffffL, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x31, 0xfff, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x35, x37, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x38, x40, &x46);
- { uint64_t x49; uint8_t _ = _addcarryx_u64(0x0, x47, x41, &x49);
- { uint64_t _; uint8_t x53 = _addcarryx_u64(0x0, x13, x34, &_);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x22, x43, &x55);
- { uint64_t x58; uint8_t x59 = _addcarryx_u64(x56, x25, x46, &x58);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x59, x28, x49, &x61);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x7, x9, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x7, x11, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x7, x10, &x71);
- { uint64_t x73; uint8_t x74 = _addcarryx_u64(0x0, x65, x67, &x73);
- { uint64_t x76; uint8_t x77 = _addcarryx_u64(x74, x68, x70, &x76);
- { uint64_t x79; uint8_t _ = _addcarryx_u64(0x0, x77, x71, &x79);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x55, x64, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x58, x73, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x61, x76, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x62, x79, &x91);
- { uint64_t _; uint64_t x94 = _mulx_u64(x82, 0x84bda12f684bda13L, &_);
- { uint64_t x98; uint64_t x97 = _mulx_u64(x94, 0xffffffffffffffe5L, &x98);
- { uint64_t x101; uint64_t x100 = _mulx_u64(x94, 0xffffffffffffffffL, &x101);
- { uint64_t x104; uint64_t x103 = _mulx_u64(x94, 0xfff, &x104);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(0x0, x98, x100, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x101, x103, &x109);
- { uint64_t x112; uint8_t _ = _addcarryx_u64(0x0, x110, x104, &x112);
- { uint64_t _; uint8_t x116 = _addcarryx_u64(0x0, x82, x97, &_);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x85, x106, &x118);
- { uint64_t x121; uint8_t x122 = _addcarryx_u64(x119, x88, x109, &x121);
- { uint64_t x124; uint8_t x125 = _addcarryx_u64(x122, x91, x112, &x124);
- { uint8_t x126 = (x125 + x92);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x6, x9, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x6, x11, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x6, x10, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x129, x131, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x132, x134, &x140);
- { uint64_t x143; uint8_t _ = _addcarryx_u64(0x0, x141, x135, &x143);
- { uint64_t x146; uint8_t x147 = _addcarryx_u64(0x0, x118, x128, &x146);
- { uint64_t x149; uint8_t x150 = _addcarryx_u64(x147, x121, x137, &x149);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x124, x140, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x126, x143, &x155);
- { uint64_t _; uint64_t x158 = _mulx_u64(x146, 0x84bda12f684bda13L, &_);
- { uint64_t x162; uint64_t x161 = _mulx_u64(x158, 0xffffffffffffffe5L, &x162);
- { uint64_t x165; uint64_t x164 = _mulx_u64(x158, 0xffffffffffffffffL, &x165);
- { uint64_t x168; uint64_t x167 = _mulx_u64(x158, 0xfff, &x168);
- { uint64_t x170; uint8_t x171 = _addcarryx_u64(0x0, x162, x164, &x170);
- { uint64_t x173; uint8_t x174 = _addcarryx_u64(x171, x165, x167, &x173);
- { uint64_t x176; uint8_t _ = _addcarryx_u64(0x0, x174, x168, &x176);
- { uint64_t _; uint8_t x180 = _addcarryx_u64(0x0, x146, x161, &_);
- { uint64_t x182; uint8_t x183 = _addcarryx_u64(x180, x149, x170, &x182);
- { uint64_t x185; uint8_t x186 = _addcarryx_u64(x183, x152, x173, &x185);
- { uint64_t x188; uint8_t x189 = _addcarryx_u64(x186, x155, x176, &x188);
- { uint8_t x190 = (x189 + x156);
- { uint64_t x192; uint8_t x193 = _subborrow_u64(0x0, x182, 0xffffffffffffffe5L, &x192);
- { uint64_t x195; uint8_t x196 = _subborrow_u64(x193, x185, 0xffffffffffffffffL, &x195);
- { uint64_t x198; uint8_t x199 = _subborrow_u64(x196, x188, 0xfff, &x198);
- { uint64_t _; uint8_t x202 = _subborrow_u64(x199, x190, 0x0, &_);
- { uint64_t x203 = cmovznz64(x202, x198, x188);
- { uint64_t x204 = cmovznz64(x202, x195, x185);
- { uint64_t x205 = cmovznz64(x202, x192, x182);
- out[0] = x205;
- out[1] = x204;
- out[2] = x203;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e140m27_3limbs/femul.v b/src/Specific/montgomery64_2e140m27_3limbs/femul.v
deleted file mode 100644
index c874efa60..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e140m27_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e140m27_3limbs/femulDisplay.log b/src/Specific/montgomery64_2e140m27_3limbs/femulDisplay.log
deleted file mode 100644
index 3c21d92e6..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,75 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint64_t x14 = mulx_u64(x5, x9);
- uint64_t x16, uint64_t x17 = mulx_u64(x5, x11);
- uint64_t x19, uint64_t x20 = mulx_u64(x5, x10);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x14, x16);
- uint64_t x25, uint8_t x26 = addcarryx_u64(x23, x17, x19);
- uint64_t x28, uint8_t _ = addcarryx_u64(0x0, x26, x20);
- uint64_t x31, uint64_t _ = mulx_u64(x13, 0x84bda12f684bda13L);
- uint64_t x34, uint64_t x35 = mulx_u64(x31, 0xffffffffffffffe5L);
- uint64_t x37, uint64_t x38 = mulx_u64(x31, 0xffffffffffffffffL);
- uint64_t x40, uint64_t x41 = mulx_u64(x31, 0xfff);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x35, x37);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x38, x40);
- uint64_t x49, uint8_t _ = addcarryx_u64(0x0, x47, x41);
- uint64_t _, uint8_t x53 = addcarryx_u64(0x0, x13, x34);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x22, x43);
- uint64_t x58, uint8_t x59 = addcarryx_u64(x56, x25, x46);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x59, x28, x49);
- uint64_t x64, uint64_t x65 = mulx_u64(x7, x9);
- uint64_t x67, uint64_t x68 = mulx_u64(x7, x11);
- uint64_t x70, uint64_t x71 = mulx_u64(x7, x10);
- uint64_t x73, uint8_t x74 = addcarryx_u64(0x0, x65, x67);
- uint64_t x76, uint8_t x77 = addcarryx_u64(x74, x68, x70);
- uint64_t x79, uint8_t _ = addcarryx_u64(0x0, x77, x71);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x55, x64);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x58, x73);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x61, x76);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x62, x79);
- uint64_t x94, uint64_t _ = mulx_u64(x82, 0x84bda12f684bda13L);
- uint64_t x97, uint64_t x98 = mulx_u64(x94, 0xffffffffffffffe5L);
- uint64_t x100, uint64_t x101 = mulx_u64(x94, 0xffffffffffffffffL);
- uint64_t x103, uint64_t x104 = mulx_u64(x94, 0xfff);
- uint64_t x106, uint8_t x107 = addcarryx_u64(0x0, x98, x100);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x101, x103);
- uint64_t x112, uint8_t _ = addcarryx_u64(0x0, x110, x104);
- uint64_t _, uint8_t x116 = addcarryx_u64(0x0, x82, x97);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x85, x106);
- uint64_t x121, uint8_t x122 = addcarryx_u64(x119, x88, x109);
- uint64_t x124, uint8_t x125 = addcarryx_u64(x122, x91, x112);
- uint8_t x126 = (x125 + x92);
- uint64_t x128, uint64_t x129 = mulx_u64(x6, x9);
- uint64_t x131, uint64_t x132 = mulx_u64(x6, x11);
- uint64_t x134, uint64_t x135 = mulx_u64(x6, x10);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x129, x131);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x132, x134);
- uint64_t x143, uint8_t _ = addcarryx_u64(0x0, x141, x135);
- uint64_t x146, uint8_t x147 = addcarryx_u64(0x0, x118, x128);
- uint64_t x149, uint8_t x150 = addcarryx_u64(x147, x121, x137);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x124, x140);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x126, x143);
- uint64_t x158, uint64_t _ = mulx_u64(x146, 0x84bda12f684bda13L);
- uint64_t x161, uint64_t x162 = mulx_u64(x158, 0xffffffffffffffe5L);
- uint64_t x164, uint64_t x165 = mulx_u64(x158, 0xffffffffffffffffL);
- uint64_t x167, uint64_t x168 = mulx_u64(x158, 0xfff);
- uint64_t x170, uint8_t x171 = addcarryx_u64(0x0, x162, x164);
- uint64_t x173, uint8_t x174 = addcarryx_u64(x171, x165, x167);
- uint64_t x176, uint8_t _ = addcarryx_u64(0x0, x174, x168);
- uint64_t _, uint8_t x180 = addcarryx_u64(0x0, x146, x161);
- uint64_t x182, uint8_t x183 = addcarryx_u64(x180, x149, x170);
- uint64_t x185, uint8_t x186 = addcarryx_u64(x183, x152, x173);
- uint64_t x188, uint8_t x189 = addcarryx_u64(x186, x155, x176);
- uint8_t x190 = (x189 + x156);
- uint64_t x192, uint8_t x193 = subborrow_u64(0x0, x182, 0xffffffffffffffe5L);
- uint64_t x195, uint8_t x196 = subborrow_u64(x193, x185, 0xffffffffffffffffL);
- uint64_t x198, uint8_t x199 = subborrow_u64(x196, x188, 0xfff);
- uint64_t _, uint8_t x202 = subborrow_u64(x199, x190, 0x0);
- uint64_t x203 = cmovznz64(x202, x198, x188);
- uint64_t x204 = cmovznz64(x202, x195, x185);
- uint64_t x205 = cmovznz64(x202, x192, x182);
- return (x203, x204, x205))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e140m27_3limbs/femulDisplay.v b/src/Specific/montgomery64_2e140m27_3limbs/femulDisplay.v
deleted file mode 100644
index a40a4354a..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e140m27_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e140m27_3limbs/fenz.c b/src/Specific/montgomery64_2e140m27_3limbs/fenz.c
deleted file mode 100644
index 2632a2866..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/fenz.c
+++ /dev/null
@@ -1,9 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x5 = (x4 | x3);
- { uint64_t x6 = (x2 | x5);
- out[0] = x6;
- }}}}}
-}
diff --git a/src/Specific/montgomery64_2e140m27_3limbs/fenz.v b/src/Specific/montgomery64_2e140m27_3limbs/fenz.v
deleted file mode 100644
index 984ce7223..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e140m27_3limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e140m27_3limbs/fenzDisplay.log b/src/Specific/montgomery64_2e140m27_3limbs/fenzDisplay.log
deleted file mode 100644
index 680322e0f..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/fenzDisplay.log
+++ /dev/null
@@ -1,9 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x5 = (x4 | x3);
- uint64_t x6 = (x2 | x5);
- return x6)
-x
- : word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e140m27_3limbs/fenzDisplay.v b/src/Specific/montgomery64_2e140m27_3limbs/fenzDisplay.v
deleted file mode 100644
index 5380e0abd..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e140m27_3limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e140m27_3limbs/feopp.c b/src/Specific/montgomery64_2e140m27_3limbs/feopp.c
deleted file mode 100644
index b0a35f3f6..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/feopp.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void feopp(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6; uint8_t x7 = _subborrow_u64(0x0, 0x0, x2, &x6);
- { uint64_t x9; uint8_t x10 = _subborrow_u64(x7, 0x0, x4, &x9);
- { uint64_t x12; uint8_t x13 = _subborrow_u64(x10, 0x0, x3, &x12);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0xffffffffffffffe5L);
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x6, x15, &x17);
- { uint64_t x19 = (x14 & 0xffffffffffffffffL);
- { uint64_t x21; uint8_t x22 = _addcarryx_u64(x18, x9, x19, &x21);
- { uint64_t x23 = (x14 & 0xfff);
- { uint64_t x25; uint8_t _ = _addcarryx_u64(x22, x12, x23, &x25);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e140m27_3limbs/feopp.v b/src/Specific/montgomery64_2e140m27_3limbs/feopp.v
deleted file mode 100644
index 86bd005a9..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e140m27_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e140m27_3limbs/feoppDisplay.log b/src/Specific/montgomery64_2e140m27_3limbs/feoppDisplay.log
deleted file mode 100644
index 1709ee6e4..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/feoppDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x9, uint8_t x10 = subborrow_u64(x7, 0x0, x4);
- uint64_t x12, uint8_t x13 = subborrow_u64(x10, 0x0, x3);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0xffffffffffffffe5L);
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x6, x15);
- uint64_t x19 = (x14 & 0xffffffffffffffffL);
- uint64_t x21, uint8_t x22 = addcarryx_u64(x18, x9, x19);
- uint64_t x23 = (x14 & 0xfff);
- uint64_t x25, uint8_t _ = addcarryx_u64(x22, x12, x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e140m27_3limbs/feoppDisplay.v b/src/Specific/montgomery64_2e140m27_3limbs/feoppDisplay.v
deleted file mode 100644
index f033f6195..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e140m27_3limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e140m27_3limbs/fesquare.c b/src/Specific/montgomery64_2e140m27_3limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e140m27_3limbs/fesub.c b/src/Specific/montgomery64_2e140m27_3limbs/fesub.c
deleted file mode 100644
index f386086c1..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/fesub.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _subborrow_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _subborrow_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _subborrow_u64(x17, x6, x10, &x19);
- { uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- { uint64_t x22 = (x21 & 0xffffffffffffffe5L);
- { uint64_t x24; uint8_t x25 = _addcarryx_u64(0x0, x13, x22, &x24);
- { uint64_t x26 = (x21 & 0xffffffffffffffffL);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x25, x16, x26, &x28);
- { uint64_t x30 = (x21 & 0xfff);
- { uint64_t x32; uint8_t _ = _addcarryx_u64(x29, x19, x30, &x32);
- out[0] = x24;
- out[1] = x28;
- out[2] = x32;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e140m27_3limbs/fesub.v b/src/Specific/montgomery64_2e140m27_3limbs/fesub.v
deleted file mode 100644
index 092f2ae22..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e140m27_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e140m27_3limbs/fesubDisplay.log b/src/Specific/montgomery64_2e140m27_3limbs/fesubDisplay.log
deleted file mode 100644
index 7a2fde310..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = subborrow_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = subborrow_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = subborrow_u64(x17, x6, x10);
- uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- uint64_t x22 = (x21 & 0xffffffffffffffe5L);
- uint64_t x24, uint8_t x25 = addcarryx_u64(0x0, x13, x22);
- uint64_t x26 = (x21 & 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x25, x16, x26);
- uint64_t x30 = (x21 & 0xfff);
- uint64_t x32, uint8_t _ = addcarryx_u64(x29, x19, x30);
- (Return x32, Return x28, Return x24))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e140m27_3limbs/fesubDisplay.v b/src/Specific/montgomery64_2e140m27_3limbs/fesubDisplay.v
deleted file mode 100644
index ba9abfea1..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e140m27_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e140m27_3limbs/py_interpreter.sh b/src/Specific/montgomery64_2e140m27_3limbs/py_interpreter.sh
deleted file mode 100755
index 3b2de8348..000000000
--- a/src/Specific/montgomery64_2e140m27_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**140 - 27' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e141m9_3limbs/CurveParameters.v b/src/Specific/montgomery64_2e141m9_3limbs/CurveParameters.v
deleted file mode 100644
index 1d4146465..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^141 - 9
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 64;
- bitwidth := 64;
- s := 2^141;
- c := [(1, 9)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e141m9_3limbs/Synthesis.v b/src/Specific/montgomery64_2e141m9_3limbs/Synthesis.v
deleted file mode 100644
index 737c73876..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e141m9_3limbs.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/montgomery64_2e141m9_3limbs/compiler.sh b/src/Specific/montgomery64_2e141m9_3limbs/compiler.sh
deleted file mode 100755
index 31430d48d..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<141) - 9' "$@"
diff --git a/src/Specific/montgomery64_2e141m9_3limbs/compilerxx.sh b/src/Specific/montgomery64_2e141m9_3limbs/compilerxx.sh
deleted file mode 100755
index a13ba18cb..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<141) - 9' "$@"
diff --git a/src/Specific/montgomery64_2e141m9_3limbs/feadd.c b/src/Specific/montgomery64_2e141m9_3limbs/feadd.c
deleted file mode 100644
index 484a1128e..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/feadd.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _addcarryx_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _addcarryx_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _addcarryx_u64(x17, x6, x10, &x19);
- { uint64_t x22; uint8_t x23 = _subborrow_u64(0x0, x13, 0xfffffffffffffff7L, &x22);
- { uint64_t x25; uint8_t x26 = _subborrow_u64(x23, x16, 0xffffffffffffffffL, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x19, 0x1fff, &x28);
- { uint64_t _; uint8_t x32 = _subborrow_u64(x29, x20, 0x0, &_);
- { uint64_t x33 = cmovznz64(x32, x28, x19);
- { uint64_t x34 = cmovznz64(x32, x25, x16);
- { uint64_t x35 = cmovznz64(x32, x22, x13);
- out[0] = x35;
- out[1] = x34;
- out[2] = x33;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e141m9_3limbs/feadd.v b/src/Specific/montgomery64_2e141m9_3limbs/feadd.v
deleted file mode 100644
index d6c7afee0..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e141m9_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e141m9_3limbs/feaddDisplay.log b/src/Specific/montgomery64_2e141m9_3limbs/feaddDisplay.log
deleted file mode 100644
index 23d38a106..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = addcarryx_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = addcarryx_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = addcarryx_u64(x17, x6, x10);
- uint64_t x22, uint8_t x23 = subborrow_u64(0x0, x13, 0xfffffffffffffff7L);
- uint64_t x25, uint8_t x26 = subborrow_u64(x23, x16, 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x19, 0x1fff);
- uint64_t _, uint8_t x32 = subborrow_u64(x29, x20, 0x0);
- uint64_t x33 = cmovznz64(x32, x28, x19);
- uint64_t x34 = cmovznz64(x32, x25, x16);
- uint64_t x35 = cmovznz64(x32, x22, x13);
- return (x33, x34, x35))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e141m9_3limbs/feaddDisplay.v b/src/Specific/montgomery64_2e141m9_3limbs/feaddDisplay.v
deleted file mode 100644
index 1123110f3..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e141m9_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e141m9_3limbs/femul.c b/src/Specific/montgomery64_2e141m9_3limbs/femul.c
deleted file mode 100644
index 2d0bf967e..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/femul.c
+++ /dev/null
@@ -1,80 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x14; uint64_t x13 = _mulx_u64(x5, x9, &x14);
- { uint64_t x17; uint64_t x16 = _mulx_u64(x5, x11, &x17);
- { uint64_t x20; uint64_t x19 = _mulx_u64(x5, x10, &x20);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x14, x16, &x22);
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(x23, x17, x19, &x25);
- { uint64_t x28; uint8_t _ = _addcarryx_u64(0x0, x26, x20, &x28);
- { uint64_t _; uint64_t x31 = _mulx_u64(x13, 0x8e38e38e38e38e39L, &_);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x31, 0xfffffffffffffff7L, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x31, 0xffffffffffffffffL, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x31, 0x1fff, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x35, x37, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x38, x40, &x46);
- { uint64_t x49; uint8_t _ = _addcarryx_u64(0x0, x47, x41, &x49);
- { uint64_t _; uint8_t x53 = _addcarryx_u64(0x0, x13, x34, &_);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x22, x43, &x55);
- { uint64_t x58; uint8_t x59 = _addcarryx_u64(x56, x25, x46, &x58);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x59, x28, x49, &x61);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x7, x9, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x7, x11, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x7, x10, &x71);
- { uint64_t x73; uint8_t x74 = _addcarryx_u64(0x0, x65, x67, &x73);
- { uint64_t x76; uint8_t x77 = _addcarryx_u64(x74, x68, x70, &x76);
- { uint64_t x79; uint8_t _ = _addcarryx_u64(0x0, x77, x71, &x79);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x55, x64, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x58, x73, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x61, x76, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x62, x79, &x91);
- { uint64_t _; uint64_t x94 = _mulx_u64(x82, 0x8e38e38e38e38e39L, &_);
- { uint64_t x98; uint64_t x97 = _mulx_u64(x94, 0xfffffffffffffff7L, &x98);
- { uint64_t x101; uint64_t x100 = _mulx_u64(x94, 0xffffffffffffffffL, &x101);
- { uint64_t x104; uint64_t x103 = _mulx_u64(x94, 0x1fff, &x104);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(0x0, x98, x100, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x101, x103, &x109);
- { uint64_t x112; uint8_t _ = _addcarryx_u64(0x0, x110, x104, &x112);
- { uint64_t _; uint8_t x116 = _addcarryx_u64(0x0, x82, x97, &_);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x85, x106, &x118);
- { uint64_t x121; uint8_t x122 = _addcarryx_u64(x119, x88, x109, &x121);
- { uint64_t x124; uint8_t x125 = _addcarryx_u64(x122, x91, x112, &x124);
- { uint8_t x126 = (x125 + x92);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x6, x9, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x6, x11, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x6, x10, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x129, x131, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x132, x134, &x140);
- { uint64_t x143; uint8_t _ = _addcarryx_u64(0x0, x141, x135, &x143);
- { uint64_t x146; uint8_t x147 = _addcarryx_u64(0x0, x118, x128, &x146);
- { uint64_t x149; uint8_t x150 = _addcarryx_u64(x147, x121, x137, &x149);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x124, x140, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x126, x143, &x155);
- { uint64_t _; uint64_t x158 = _mulx_u64(x146, 0x8e38e38e38e38e39L, &_);
- { uint64_t x162; uint64_t x161 = _mulx_u64(x158, 0xfffffffffffffff7L, &x162);
- { uint64_t x165; uint64_t x164 = _mulx_u64(x158, 0xffffffffffffffffL, &x165);
- { uint64_t x168; uint64_t x167 = _mulx_u64(x158, 0x1fff, &x168);
- { uint64_t x170; uint8_t x171 = _addcarryx_u64(0x0, x162, x164, &x170);
- { uint64_t x173; uint8_t x174 = _addcarryx_u64(x171, x165, x167, &x173);
- { uint64_t x176; uint8_t _ = _addcarryx_u64(0x0, x174, x168, &x176);
- { uint64_t _; uint8_t x180 = _addcarryx_u64(0x0, x146, x161, &_);
- { uint64_t x182; uint8_t x183 = _addcarryx_u64(x180, x149, x170, &x182);
- { uint64_t x185; uint8_t x186 = _addcarryx_u64(x183, x152, x173, &x185);
- { uint64_t x188; uint8_t x189 = _addcarryx_u64(x186, x155, x176, &x188);
- { uint8_t x190 = (x189 + x156);
- { uint64_t x192; uint8_t x193 = _subborrow_u64(0x0, x182, 0xfffffffffffffff7L, &x192);
- { uint64_t x195; uint8_t x196 = _subborrow_u64(x193, x185, 0xffffffffffffffffL, &x195);
- { uint64_t x198; uint8_t x199 = _subborrow_u64(x196, x188, 0x1fff, &x198);
- { uint64_t _; uint8_t x202 = _subborrow_u64(x199, x190, 0x0, &_);
- { uint64_t x203 = cmovznz64(x202, x198, x188);
- { uint64_t x204 = cmovznz64(x202, x195, x185);
- { uint64_t x205 = cmovznz64(x202, x192, x182);
- out[0] = x205;
- out[1] = x204;
- out[2] = x203;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e141m9_3limbs/femul.v b/src/Specific/montgomery64_2e141m9_3limbs/femul.v
deleted file mode 100644
index 8199f911c..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e141m9_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e141m9_3limbs/femulDisplay.log b/src/Specific/montgomery64_2e141m9_3limbs/femulDisplay.log
deleted file mode 100644
index 55ed27c92..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,75 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint64_t x14 = mulx_u64(x5, x9);
- uint64_t x16, uint64_t x17 = mulx_u64(x5, x11);
- uint64_t x19, uint64_t x20 = mulx_u64(x5, x10);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x14, x16);
- uint64_t x25, uint8_t x26 = addcarryx_u64(x23, x17, x19);
- uint64_t x28, uint8_t _ = addcarryx_u64(0x0, x26, x20);
- uint64_t x31, uint64_t _ = mulx_u64(x13, 0x8e38e38e38e38e39L);
- uint64_t x34, uint64_t x35 = mulx_u64(x31, 0xfffffffffffffff7L);
- uint64_t x37, uint64_t x38 = mulx_u64(x31, 0xffffffffffffffffL);
- uint64_t x40, uint64_t x41 = mulx_u64(x31, 0x1fff);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x35, x37);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x38, x40);
- uint64_t x49, uint8_t _ = addcarryx_u64(0x0, x47, x41);
- uint64_t _, uint8_t x53 = addcarryx_u64(0x0, x13, x34);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x22, x43);
- uint64_t x58, uint8_t x59 = addcarryx_u64(x56, x25, x46);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x59, x28, x49);
- uint64_t x64, uint64_t x65 = mulx_u64(x7, x9);
- uint64_t x67, uint64_t x68 = mulx_u64(x7, x11);
- uint64_t x70, uint64_t x71 = mulx_u64(x7, x10);
- uint64_t x73, uint8_t x74 = addcarryx_u64(0x0, x65, x67);
- uint64_t x76, uint8_t x77 = addcarryx_u64(x74, x68, x70);
- uint64_t x79, uint8_t _ = addcarryx_u64(0x0, x77, x71);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x55, x64);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x58, x73);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x61, x76);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x62, x79);
- uint64_t x94, uint64_t _ = mulx_u64(x82, 0x8e38e38e38e38e39L);
- uint64_t x97, uint64_t x98 = mulx_u64(x94, 0xfffffffffffffff7L);
- uint64_t x100, uint64_t x101 = mulx_u64(x94, 0xffffffffffffffffL);
- uint64_t x103, uint64_t x104 = mulx_u64(x94, 0x1fff);
- uint64_t x106, uint8_t x107 = addcarryx_u64(0x0, x98, x100);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x101, x103);
- uint64_t x112, uint8_t _ = addcarryx_u64(0x0, x110, x104);
- uint64_t _, uint8_t x116 = addcarryx_u64(0x0, x82, x97);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x85, x106);
- uint64_t x121, uint8_t x122 = addcarryx_u64(x119, x88, x109);
- uint64_t x124, uint8_t x125 = addcarryx_u64(x122, x91, x112);
- uint8_t x126 = (x125 + x92);
- uint64_t x128, uint64_t x129 = mulx_u64(x6, x9);
- uint64_t x131, uint64_t x132 = mulx_u64(x6, x11);
- uint64_t x134, uint64_t x135 = mulx_u64(x6, x10);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x129, x131);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x132, x134);
- uint64_t x143, uint8_t _ = addcarryx_u64(0x0, x141, x135);
- uint64_t x146, uint8_t x147 = addcarryx_u64(0x0, x118, x128);
- uint64_t x149, uint8_t x150 = addcarryx_u64(x147, x121, x137);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x124, x140);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x126, x143);
- uint64_t x158, uint64_t _ = mulx_u64(x146, 0x8e38e38e38e38e39L);
- uint64_t x161, uint64_t x162 = mulx_u64(x158, 0xfffffffffffffff7L);
- uint64_t x164, uint64_t x165 = mulx_u64(x158, 0xffffffffffffffffL);
- uint64_t x167, uint64_t x168 = mulx_u64(x158, 0x1fff);
- uint64_t x170, uint8_t x171 = addcarryx_u64(0x0, x162, x164);
- uint64_t x173, uint8_t x174 = addcarryx_u64(x171, x165, x167);
- uint64_t x176, uint8_t _ = addcarryx_u64(0x0, x174, x168);
- uint64_t _, uint8_t x180 = addcarryx_u64(0x0, x146, x161);
- uint64_t x182, uint8_t x183 = addcarryx_u64(x180, x149, x170);
- uint64_t x185, uint8_t x186 = addcarryx_u64(x183, x152, x173);
- uint64_t x188, uint8_t x189 = addcarryx_u64(x186, x155, x176);
- uint8_t x190 = (x189 + x156);
- uint64_t x192, uint8_t x193 = subborrow_u64(0x0, x182, 0xfffffffffffffff7L);
- uint64_t x195, uint8_t x196 = subborrow_u64(x193, x185, 0xffffffffffffffffL);
- uint64_t x198, uint8_t x199 = subborrow_u64(x196, x188, 0x1fff);
- uint64_t _, uint8_t x202 = subborrow_u64(x199, x190, 0x0);
- uint64_t x203 = cmovznz64(x202, x198, x188);
- uint64_t x204 = cmovznz64(x202, x195, x185);
- uint64_t x205 = cmovznz64(x202, x192, x182);
- return (x203, x204, x205))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e141m9_3limbs/femulDisplay.v b/src/Specific/montgomery64_2e141m9_3limbs/femulDisplay.v
deleted file mode 100644
index 3b5b12251..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e141m9_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e141m9_3limbs/fenz.c b/src/Specific/montgomery64_2e141m9_3limbs/fenz.c
deleted file mode 100644
index 2632a2866..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/fenz.c
+++ /dev/null
@@ -1,9 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x5 = (x4 | x3);
- { uint64_t x6 = (x2 | x5);
- out[0] = x6;
- }}}}}
-}
diff --git a/src/Specific/montgomery64_2e141m9_3limbs/fenz.v b/src/Specific/montgomery64_2e141m9_3limbs/fenz.v
deleted file mode 100644
index 2ece89136..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e141m9_3limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e141m9_3limbs/fenzDisplay.log b/src/Specific/montgomery64_2e141m9_3limbs/fenzDisplay.log
deleted file mode 100644
index 680322e0f..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/fenzDisplay.log
+++ /dev/null
@@ -1,9 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x5 = (x4 | x3);
- uint64_t x6 = (x2 | x5);
- return x6)
-x
- : word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e141m9_3limbs/fenzDisplay.v b/src/Specific/montgomery64_2e141m9_3limbs/fenzDisplay.v
deleted file mode 100644
index 4f3fb14b0..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e141m9_3limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e141m9_3limbs/feopp.c b/src/Specific/montgomery64_2e141m9_3limbs/feopp.c
deleted file mode 100644
index 53662378d..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/feopp.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void feopp(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6; uint8_t x7 = _subborrow_u64(0x0, 0x0, x2, &x6);
- { uint64_t x9; uint8_t x10 = _subborrow_u64(x7, 0x0, x4, &x9);
- { uint64_t x12; uint8_t x13 = _subborrow_u64(x10, 0x0, x3, &x12);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0xfffffffffffffff7L);
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x6, x15, &x17);
- { uint64_t x19 = (x14 & 0xffffffffffffffffL);
- { uint64_t x21; uint8_t x22 = _addcarryx_u64(x18, x9, x19, &x21);
- { uint64_t x23 = (x14 & 0x1fff);
- { uint64_t x25; uint8_t _ = _addcarryx_u64(x22, x12, x23, &x25);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e141m9_3limbs/feopp.v b/src/Specific/montgomery64_2e141m9_3limbs/feopp.v
deleted file mode 100644
index f55172b1a..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e141m9_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e141m9_3limbs/feoppDisplay.log b/src/Specific/montgomery64_2e141m9_3limbs/feoppDisplay.log
deleted file mode 100644
index e542a5f6c..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/feoppDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x9, uint8_t x10 = subborrow_u64(x7, 0x0, x4);
- uint64_t x12, uint8_t x13 = subborrow_u64(x10, 0x0, x3);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0xfffffffffffffff7L);
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x6, x15);
- uint64_t x19 = (x14 & 0xffffffffffffffffL);
- uint64_t x21, uint8_t x22 = addcarryx_u64(x18, x9, x19);
- uint64_t x23 = (x14 & 0x1fff);
- uint64_t x25, uint8_t _ = addcarryx_u64(x22, x12, x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e141m9_3limbs/feoppDisplay.v b/src/Specific/montgomery64_2e141m9_3limbs/feoppDisplay.v
deleted file mode 100644
index 871c4929c..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e141m9_3limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e141m9_3limbs/fesquare.c b/src/Specific/montgomery64_2e141m9_3limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e141m9_3limbs/fesub.c b/src/Specific/montgomery64_2e141m9_3limbs/fesub.c
deleted file mode 100644
index b0a285053..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/fesub.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _subborrow_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _subborrow_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _subborrow_u64(x17, x6, x10, &x19);
- { uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- { uint64_t x22 = (x21 & 0xfffffffffffffff7L);
- { uint64_t x24; uint8_t x25 = _addcarryx_u64(0x0, x13, x22, &x24);
- { uint64_t x26 = (x21 & 0xffffffffffffffffL);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x25, x16, x26, &x28);
- { uint64_t x30 = (x21 & 0x1fff);
- { uint64_t x32; uint8_t _ = _addcarryx_u64(x29, x19, x30, &x32);
- out[0] = x24;
- out[1] = x28;
- out[2] = x32;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e141m9_3limbs/fesub.v b/src/Specific/montgomery64_2e141m9_3limbs/fesub.v
deleted file mode 100644
index e405c867d..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e141m9_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e141m9_3limbs/fesubDisplay.log b/src/Specific/montgomery64_2e141m9_3limbs/fesubDisplay.log
deleted file mode 100644
index 28e2d96ca..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = subborrow_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = subborrow_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = subborrow_u64(x17, x6, x10);
- uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- uint64_t x22 = (x21 & 0xfffffffffffffff7L);
- uint64_t x24, uint8_t x25 = addcarryx_u64(0x0, x13, x22);
- uint64_t x26 = (x21 & 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x25, x16, x26);
- uint64_t x30 = (x21 & 0x1fff);
- uint64_t x32, uint8_t _ = addcarryx_u64(x29, x19, x30);
- (Return x32, Return x28, Return x24))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e141m9_3limbs/fesubDisplay.v b/src/Specific/montgomery64_2e141m9_3limbs/fesubDisplay.v
deleted file mode 100644
index 3334d475e..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e141m9_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e141m9_3limbs/py_interpreter.sh b/src/Specific/montgomery64_2e141m9_3limbs/py_interpreter.sh
deleted file mode 100755
index 688f9b1ae..000000000
--- a/src/Specific/montgomery64_2e141m9_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**141 - 9' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e150m3_3limbs/CurveParameters.v b/src/Specific/montgomery64_2e150m3_3limbs/CurveParameters.v
deleted file mode 100644
index 9fa7b1f6b..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^150 - 3
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 64;
- bitwidth := 64;
- s := 2^150;
- c := [(1, 3)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e150m3_3limbs/Synthesis.v b/src/Specific/montgomery64_2e150m3_3limbs/Synthesis.v
deleted file mode 100644
index 9f819a862..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e150m3_3limbs.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/montgomery64_2e150m3_3limbs/compiler.sh b/src/Specific/montgomery64_2e150m3_3limbs/compiler.sh
deleted file mode 100755
index ca25cb24e..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<150) - 3' "$@"
diff --git a/src/Specific/montgomery64_2e150m3_3limbs/compilerxx.sh b/src/Specific/montgomery64_2e150m3_3limbs/compilerxx.sh
deleted file mode 100755
index 7b96d7c01..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<150) - 3' "$@"
diff --git a/src/Specific/montgomery64_2e150m3_3limbs/feadd.c b/src/Specific/montgomery64_2e150m3_3limbs/feadd.c
deleted file mode 100644
index f7bf1ae57..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/feadd.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _addcarryx_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _addcarryx_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _addcarryx_u64(x17, x6, x10, &x19);
- { uint64_t x22; uint8_t x23 = _subborrow_u64(0x0, x13, 0xfffffffffffffffdL, &x22);
- { uint64_t x25; uint8_t x26 = _subborrow_u64(x23, x16, 0xffffffffffffffffL, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x19, 0x3fffff, &x28);
- { uint64_t _; uint8_t x32 = _subborrow_u64(x29, x20, 0x0, &_);
- { uint64_t x33 = cmovznz64(x32, x28, x19);
- { uint64_t x34 = cmovznz64(x32, x25, x16);
- { uint64_t x35 = cmovznz64(x32, x22, x13);
- out[0] = x35;
- out[1] = x34;
- out[2] = x33;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e150m3_3limbs/feadd.v b/src/Specific/montgomery64_2e150m3_3limbs/feadd.v
deleted file mode 100644
index c936d4a4f..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e150m3_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e150m3_3limbs/feaddDisplay.log b/src/Specific/montgomery64_2e150m3_3limbs/feaddDisplay.log
deleted file mode 100644
index bf8484756..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = addcarryx_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = addcarryx_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = addcarryx_u64(x17, x6, x10);
- uint64_t x22, uint8_t x23 = subborrow_u64(0x0, x13, 0xfffffffffffffffdL);
- uint64_t x25, uint8_t x26 = subborrow_u64(x23, x16, 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x19, 0x3fffff);
- uint64_t _, uint8_t x32 = subborrow_u64(x29, x20, 0x0);
- uint64_t x33 = cmovznz64(x32, x28, x19);
- uint64_t x34 = cmovznz64(x32, x25, x16);
- uint64_t x35 = cmovznz64(x32, x22, x13);
- return (x33, x34, x35))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e150m3_3limbs/feaddDisplay.v b/src/Specific/montgomery64_2e150m3_3limbs/feaddDisplay.v
deleted file mode 100644
index 625a44ea6..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e150m3_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e150m3_3limbs/femul.c b/src/Specific/montgomery64_2e150m3_3limbs/femul.c
deleted file mode 100644
index e6c781e6d..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/femul.c
+++ /dev/null
@@ -1,80 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x14; uint64_t x13 = _mulx_u64(x5, x9, &x14);
- { uint64_t x17; uint64_t x16 = _mulx_u64(x5, x11, &x17);
- { uint64_t x20; uint64_t x19 = _mulx_u64(x5, x10, &x20);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x14, x16, &x22);
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(x23, x17, x19, &x25);
- { uint64_t x28; uint8_t _ = _addcarryx_u64(0x0, x26, x20, &x28);
- { uint64_t _; uint64_t x31 = _mulx_u64(x13, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x31, 0xfffffffffffffffdL, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x31, 0xffffffffffffffffL, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x31, 0x3fffff, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x35, x37, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x38, x40, &x46);
- { uint64_t x49; uint8_t _ = _addcarryx_u64(0x0, x47, x41, &x49);
- { uint64_t _; uint8_t x53 = _addcarryx_u64(0x0, x13, x34, &_);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x22, x43, &x55);
- { uint64_t x58; uint8_t x59 = _addcarryx_u64(x56, x25, x46, &x58);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x59, x28, x49, &x61);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x7, x9, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x7, x11, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x7, x10, &x71);
- { uint64_t x73; uint8_t x74 = _addcarryx_u64(0x0, x65, x67, &x73);
- { uint64_t x76; uint8_t x77 = _addcarryx_u64(x74, x68, x70, &x76);
- { uint64_t x79; uint8_t _ = _addcarryx_u64(0x0, x77, x71, &x79);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x55, x64, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x58, x73, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x61, x76, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x62, x79, &x91);
- { uint64_t _; uint64_t x94 = _mulx_u64(x82, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x98; uint64_t x97 = _mulx_u64(x94, 0xfffffffffffffffdL, &x98);
- { uint64_t x101; uint64_t x100 = _mulx_u64(x94, 0xffffffffffffffffL, &x101);
- { uint64_t x104; uint64_t x103 = _mulx_u64(x94, 0x3fffff, &x104);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(0x0, x98, x100, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x101, x103, &x109);
- { uint64_t x112; uint8_t _ = _addcarryx_u64(0x0, x110, x104, &x112);
- { uint64_t _; uint8_t x116 = _addcarryx_u64(0x0, x82, x97, &_);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x85, x106, &x118);
- { uint64_t x121; uint8_t x122 = _addcarryx_u64(x119, x88, x109, &x121);
- { uint64_t x124; uint8_t x125 = _addcarryx_u64(x122, x91, x112, &x124);
- { uint8_t x126 = (x125 + x92);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x6, x9, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x6, x11, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x6, x10, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x129, x131, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x132, x134, &x140);
- { uint64_t x143; uint8_t _ = _addcarryx_u64(0x0, x141, x135, &x143);
- { uint64_t x146; uint8_t x147 = _addcarryx_u64(0x0, x118, x128, &x146);
- { uint64_t x149; uint8_t x150 = _addcarryx_u64(x147, x121, x137, &x149);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x124, x140, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x126, x143, &x155);
- { uint64_t _; uint64_t x158 = _mulx_u64(x146, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x162; uint64_t x161 = _mulx_u64(x158, 0xfffffffffffffffdL, &x162);
- { uint64_t x165; uint64_t x164 = _mulx_u64(x158, 0xffffffffffffffffL, &x165);
- { uint64_t x168; uint64_t x167 = _mulx_u64(x158, 0x3fffff, &x168);
- { uint64_t x170; uint8_t x171 = _addcarryx_u64(0x0, x162, x164, &x170);
- { uint64_t x173; uint8_t x174 = _addcarryx_u64(x171, x165, x167, &x173);
- { uint64_t x176; uint8_t _ = _addcarryx_u64(0x0, x174, x168, &x176);
- { uint64_t _; uint8_t x180 = _addcarryx_u64(0x0, x146, x161, &_);
- { uint64_t x182; uint8_t x183 = _addcarryx_u64(x180, x149, x170, &x182);
- { uint64_t x185; uint8_t x186 = _addcarryx_u64(x183, x152, x173, &x185);
- { uint64_t x188; uint8_t x189 = _addcarryx_u64(x186, x155, x176, &x188);
- { uint8_t x190 = (x189 + x156);
- { uint64_t x192; uint8_t x193 = _subborrow_u64(0x0, x182, 0xfffffffffffffffdL, &x192);
- { uint64_t x195; uint8_t x196 = _subborrow_u64(x193, x185, 0xffffffffffffffffL, &x195);
- { uint64_t x198; uint8_t x199 = _subborrow_u64(x196, x188, 0x3fffff, &x198);
- { uint64_t _; uint8_t x202 = _subborrow_u64(x199, x190, 0x0, &_);
- { uint64_t x203 = cmovznz64(x202, x198, x188);
- { uint64_t x204 = cmovznz64(x202, x195, x185);
- { uint64_t x205 = cmovznz64(x202, x192, x182);
- out[0] = x205;
- out[1] = x204;
- out[2] = x203;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e150m3_3limbs/femul.v b/src/Specific/montgomery64_2e150m3_3limbs/femul.v
deleted file mode 100644
index badeb3085..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e150m3_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e150m3_3limbs/femulDisplay.log b/src/Specific/montgomery64_2e150m3_3limbs/femulDisplay.log
deleted file mode 100644
index e0c671325..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,75 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint64_t x14 = mulx_u64(x5, x9);
- uint64_t x16, uint64_t x17 = mulx_u64(x5, x11);
- uint64_t x19, uint64_t x20 = mulx_u64(x5, x10);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x14, x16);
- uint64_t x25, uint8_t x26 = addcarryx_u64(x23, x17, x19);
- uint64_t x28, uint8_t _ = addcarryx_u64(0x0, x26, x20);
- uint64_t x31, uint64_t _ = mulx_u64(x13, 0xaaaaaaaaaaaaaaabL);
- uint64_t x34, uint64_t x35 = mulx_u64(x31, 0xfffffffffffffffdL);
- uint64_t x37, uint64_t x38 = mulx_u64(x31, 0xffffffffffffffffL);
- uint64_t x40, uint64_t x41 = mulx_u64(x31, 0x3fffff);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x35, x37);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x38, x40);
- uint64_t x49, uint8_t _ = addcarryx_u64(0x0, x47, x41);
- uint64_t _, uint8_t x53 = addcarryx_u64(0x0, x13, x34);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x22, x43);
- uint64_t x58, uint8_t x59 = addcarryx_u64(x56, x25, x46);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x59, x28, x49);
- uint64_t x64, uint64_t x65 = mulx_u64(x7, x9);
- uint64_t x67, uint64_t x68 = mulx_u64(x7, x11);
- uint64_t x70, uint64_t x71 = mulx_u64(x7, x10);
- uint64_t x73, uint8_t x74 = addcarryx_u64(0x0, x65, x67);
- uint64_t x76, uint8_t x77 = addcarryx_u64(x74, x68, x70);
- uint64_t x79, uint8_t _ = addcarryx_u64(0x0, x77, x71);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x55, x64);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x58, x73);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x61, x76);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x62, x79);
- uint64_t x94, uint64_t _ = mulx_u64(x82, 0xaaaaaaaaaaaaaaabL);
- uint64_t x97, uint64_t x98 = mulx_u64(x94, 0xfffffffffffffffdL);
- uint64_t x100, uint64_t x101 = mulx_u64(x94, 0xffffffffffffffffL);
- uint64_t x103, uint64_t x104 = mulx_u64(x94, 0x3fffff);
- uint64_t x106, uint8_t x107 = addcarryx_u64(0x0, x98, x100);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x101, x103);
- uint64_t x112, uint8_t _ = addcarryx_u64(0x0, x110, x104);
- uint64_t _, uint8_t x116 = addcarryx_u64(0x0, x82, x97);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x85, x106);
- uint64_t x121, uint8_t x122 = addcarryx_u64(x119, x88, x109);
- uint64_t x124, uint8_t x125 = addcarryx_u64(x122, x91, x112);
- uint8_t x126 = (x125 + x92);
- uint64_t x128, uint64_t x129 = mulx_u64(x6, x9);
- uint64_t x131, uint64_t x132 = mulx_u64(x6, x11);
- uint64_t x134, uint64_t x135 = mulx_u64(x6, x10);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x129, x131);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x132, x134);
- uint64_t x143, uint8_t _ = addcarryx_u64(0x0, x141, x135);
- uint64_t x146, uint8_t x147 = addcarryx_u64(0x0, x118, x128);
- uint64_t x149, uint8_t x150 = addcarryx_u64(x147, x121, x137);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x124, x140);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x126, x143);
- uint64_t x158, uint64_t _ = mulx_u64(x146, 0xaaaaaaaaaaaaaaabL);
- uint64_t x161, uint64_t x162 = mulx_u64(x158, 0xfffffffffffffffdL);
- uint64_t x164, uint64_t x165 = mulx_u64(x158, 0xffffffffffffffffL);
- uint64_t x167, uint64_t x168 = mulx_u64(x158, 0x3fffff);
- uint64_t x170, uint8_t x171 = addcarryx_u64(0x0, x162, x164);
- uint64_t x173, uint8_t x174 = addcarryx_u64(x171, x165, x167);
- uint64_t x176, uint8_t _ = addcarryx_u64(0x0, x174, x168);
- uint64_t _, uint8_t x180 = addcarryx_u64(0x0, x146, x161);
- uint64_t x182, uint8_t x183 = addcarryx_u64(x180, x149, x170);
- uint64_t x185, uint8_t x186 = addcarryx_u64(x183, x152, x173);
- uint64_t x188, uint8_t x189 = addcarryx_u64(x186, x155, x176);
- uint8_t x190 = (x189 + x156);
- uint64_t x192, uint8_t x193 = subborrow_u64(0x0, x182, 0xfffffffffffffffdL);
- uint64_t x195, uint8_t x196 = subborrow_u64(x193, x185, 0xffffffffffffffffL);
- uint64_t x198, uint8_t x199 = subborrow_u64(x196, x188, 0x3fffff);
- uint64_t _, uint8_t x202 = subborrow_u64(x199, x190, 0x0);
- uint64_t x203 = cmovznz64(x202, x198, x188);
- uint64_t x204 = cmovznz64(x202, x195, x185);
- uint64_t x205 = cmovznz64(x202, x192, x182);
- return (x203, x204, x205))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e150m3_3limbs/femulDisplay.v b/src/Specific/montgomery64_2e150m3_3limbs/femulDisplay.v
deleted file mode 100644
index 59008ab56..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e150m3_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e150m3_3limbs/fenz.c b/src/Specific/montgomery64_2e150m3_3limbs/fenz.c
deleted file mode 100644
index 2632a2866..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/fenz.c
+++ /dev/null
@@ -1,9 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x5 = (x4 | x3);
- { uint64_t x6 = (x2 | x5);
- out[0] = x6;
- }}}}}
-}
diff --git a/src/Specific/montgomery64_2e150m3_3limbs/fenz.v b/src/Specific/montgomery64_2e150m3_3limbs/fenz.v
deleted file mode 100644
index 8da2117c7..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e150m3_3limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e150m3_3limbs/fenzDisplay.log b/src/Specific/montgomery64_2e150m3_3limbs/fenzDisplay.log
deleted file mode 100644
index 680322e0f..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/fenzDisplay.log
+++ /dev/null
@@ -1,9 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x5 = (x4 | x3);
- uint64_t x6 = (x2 | x5);
- return x6)
-x
- : word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e150m3_3limbs/fenzDisplay.v b/src/Specific/montgomery64_2e150m3_3limbs/fenzDisplay.v
deleted file mode 100644
index 575f5c536..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e150m3_3limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e150m3_3limbs/feopp.c b/src/Specific/montgomery64_2e150m3_3limbs/feopp.c
deleted file mode 100644
index d70d226e0..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/feopp.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void feopp(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6; uint8_t x7 = _subborrow_u64(0x0, 0x0, x2, &x6);
- { uint64_t x9; uint8_t x10 = _subborrow_u64(x7, 0x0, x4, &x9);
- { uint64_t x12; uint8_t x13 = _subborrow_u64(x10, 0x0, x3, &x12);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0xfffffffffffffffdL);
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x6, x15, &x17);
- { uint64_t x19 = (x14 & 0xffffffffffffffffL);
- { uint64_t x21; uint8_t x22 = _addcarryx_u64(x18, x9, x19, &x21);
- { uint64_t x23 = (x14 & 0x3fffff);
- { uint64_t x25; uint8_t _ = _addcarryx_u64(x22, x12, x23, &x25);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e150m3_3limbs/feopp.v b/src/Specific/montgomery64_2e150m3_3limbs/feopp.v
deleted file mode 100644
index a22ebf8df..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e150m3_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e150m3_3limbs/feoppDisplay.log b/src/Specific/montgomery64_2e150m3_3limbs/feoppDisplay.log
deleted file mode 100644
index 557bc3a13..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/feoppDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x9, uint8_t x10 = subborrow_u64(x7, 0x0, x4);
- uint64_t x12, uint8_t x13 = subborrow_u64(x10, 0x0, x3);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0xfffffffffffffffdL);
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x6, x15);
- uint64_t x19 = (x14 & 0xffffffffffffffffL);
- uint64_t x21, uint8_t x22 = addcarryx_u64(x18, x9, x19);
- uint64_t x23 = (x14 & 0x3fffff);
- uint64_t x25, uint8_t _ = addcarryx_u64(x22, x12, x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e150m3_3limbs/feoppDisplay.v b/src/Specific/montgomery64_2e150m3_3limbs/feoppDisplay.v
deleted file mode 100644
index b49d85661..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e150m3_3limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e150m3_3limbs/fesquare.c b/src/Specific/montgomery64_2e150m3_3limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e150m3_3limbs/fesub.c b/src/Specific/montgomery64_2e150m3_3limbs/fesub.c
deleted file mode 100644
index f25324f92..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/fesub.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _subborrow_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _subborrow_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _subborrow_u64(x17, x6, x10, &x19);
- { uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- { uint64_t x22 = (x21 & 0xfffffffffffffffdL);
- { uint64_t x24; uint8_t x25 = _addcarryx_u64(0x0, x13, x22, &x24);
- { uint64_t x26 = (x21 & 0xffffffffffffffffL);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x25, x16, x26, &x28);
- { uint64_t x30 = (x21 & 0x3fffff);
- { uint64_t x32; uint8_t _ = _addcarryx_u64(x29, x19, x30, &x32);
- out[0] = x24;
- out[1] = x28;
- out[2] = x32;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e150m3_3limbs/fesub.v b/src/Specific/montgomery64_2e150m3_3limbs/fesub.v
deleted file mode 100644
index 92e08e429..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e150m3_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e150m3_3limbs/fesubDisplay.log b/src/Specific/montgomery64_2e150m3_3limbs/fesubDisplay.log
deleted file mode 100644
index 11c135bd2..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = subborrow_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = subborrow_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = subborrow_u64(x17, x6, x10);
- uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- uint64_t x22 = (x21 & 0xfffffffffffffffdL);
- uint64_t x24, uint8_t x25 = addcarryx_u64(0x0, x13, x22);
- uint64_t x26 = (x21 & 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x25, x16, x26);
- uint64_t x30 = (x21 & 0x3fffff);
- uint64_t x32, uint8_t _ = addcarryx_u64(x29, x19, x30);
- (Return x32, Return x28, Return x24))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e150m3_3limbs/fesubDisplay.v b/src/Specific/montgomery64_2e150m3_3limbs/fesubDisplay.v
deleted file mode 100644
index 8cd9f347c..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e150m3_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e150m3_3limbs/py_interpreter.sh b/src/Specific/montgomery64_2e150m3_3limbs/py_interpreter.sh
deleted file mode 100755
index e14a82219..000000000
--- a/src/Specific/montgomery64_2e150m3_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**150 - 3' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e150m5_3limbs/CurveParameters.v b/src/Specific/montgomery64_2e150m5_3limbs/CurveParameters.v
deleted file mode 100644
index 249d46427..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^150 - 5
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 64;
- bitwidth := 64;
- s := 2^150;
- c := [(1, 5)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e150m5_3limbs/Synthesis.v b/src/Specific/montgomery64_2e150m5_3limbs/Synthesis.v
deleted file mode 100644
index 091670552..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e150m5_3limbs.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/montgomery64_2e150m5_3limbs/compiler.sh b/src/Specific/montgomery64_2e150m5_3limbs/compiler.sh
deleted file mode 100755
index 7f2862afe..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<150) - 5' "$@"
diff --git a/src/Specific/montgomery64_2e150m5_3limbs/compilerxx.sh b/src/Specific/montgomery64_2e150m5_3limbs/compilerxx.sh
deleted file mode 100755
index 3e1c57da0..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<150) - 5' "$@"
diff --git a/src/Specific/montgomery64_2e150m5_3limbs/feadd.c b/src/Specific/montgomery64_2e150m5_3limbs/feadd.c
deleted file mode 100644
index 0b31721e5..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/feadd.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _addcarryx_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _addcarryx_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _addcarryx_u64(x17, x6, x10, &x19);
- { uint64_t x22; uint8_t x23 = _subborrow_u64(0x0, x13, 0xfffffffffffffffbL, &x22);
- { uint64_t x25; uint8_t x26 = _subborrow_u64(x23, x16, 0xffffffffffffffffL, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x19, 0x3fffff, &x28);
- { uint64_t _; uint8_t x32 = _subborrow_u64(x29, x20, 0x0, &_);
- { uint64_t x33 = cmovznz64(x32, x28, x19);
- { uint64_t x34 = cmovznz64(x32, x25, x16);
- { uint64_t x35 = cmovznz64(x32, x22, x13);
- out[0] = x35;
- out[1] = x34;
- out[2] = x33;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e150m5_3limbs/feadd.v b/src/Specific/montgomery64_2e150m5_3limbs/feadd.v
deleted file mode 100644
index 73b8b10dc..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e150m5_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e150m5_3limbs/feaddDisplay.log b/src/Specific/montgomery64_2e150m5_3limbs/feaddDisplay.log
deleted file mode 100644
index 654bbedc7..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = addcarryx_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = addcarryx_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = addcarryx_u64(x17, x6, x10);
- uint64_t x22, uint8_t x23 = subborrow_u64(0x0, x13, 0xfffffffffffffffbL);
- uint64_t x25, uint8_t x26 = subborrow_u64(x23, x16, 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x19, 0x3fffff);
- uint64_t _, uint8_t x32 = subborrow_u64(x29, x20, 0x0);
- uint64_t x33 = cmovznz64(x32, x28, x19);
- uint64_t x34 = cmovznz64(x32, x25, x16);
- uint64_t x35 = cmovznz64(x32, x22, x13);
- return (x33, x34, x35))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e150m5_3limbs/feaddDisplay.v b/src/Specific/montgomery64_2e150m5_3limbs/feaddDisplay.v
deleted file mode 100644
index 25cb94d17..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e150m5_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e150m5_3limbs/femul.c b/src/Specific/montgomery64_2e150m5_3limbs/femul.c
deleted file mode 100644
index 0ae71da39..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/femul.c
+++ /dev/null
@@ -1,80 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x14; uint64_t x13 = _mulx_u64(x5, x9, &x14);
- { uint64_t x17; uint64_t x16 = _mulx_u64(x5, x11, &x17);
- { uint64_t x20; uint64_t x19 = _mulx_u64(x5, x10, &x20);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x14, x16, &x22);
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(x23, x17, x19, &x25);
- { uint64_t x28; uint8_t _ = _addcarryx_u64(0x0, x26, x20, &x28);
- { uint64_t _; uint64_t x31 = _mulx_u64(x13, 0xcccccccccccccccdL, &_);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x31, 0xfffffffffffffffbL, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x31, 0xffffffffffffffffL, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x31, 0x3fffff, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x35, x37, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x38, x40, &x46);
- { uint64_t x49; uint8_t _ = _addcarryx_u64(0x0, x47, x41, &x49);
- { uint64_t _; uint8_t x53 = _addcarryx_u64(0x0, x13, x34, &_);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x22, x43, &x55);
- { uint64_t x58; uint8_t x59 = _addcarryx_u64(x56, x25, x46, &x58);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x59, x28, x49, &x61);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x7, x9, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x7, x11, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x7, x10, &x71);
- { uint64_t x73; uint8_t x74 = _addcarryx_u64(0x0, x65, x67, &x73);
- { uint64_t x76; uint8_t x77 = _addcarryx_u64(x74, x68, x70, &x76);
- { uint64_t x79; uint8_t _ = _addcarryx_u64(0x0, x77, x71, &x79);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x55, x64, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x58, x73, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x61, x76, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x62, x79, &x91);
- { uint64_t _; uint64_t x94 = _mulx_u64(x82, 0xcccccccccccccccdL, &_);
- { uint64_t x98; uint64_t x97 = _mulx_u64(x94, 0xfffffffffffffffbL, &x98);
- { uint64_t x101; uint64_t x100 = _mulx_u64(x94, 0xffffffffffffffffL, &x101);
- { uint64_t x104; uint64_t x103 = _mulx_u64(x94, 0x3fffff, &x104);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(0x0, x98, x100, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x101, x103, &x109);
- { uint64_t x112; uint8_t _ = _addcarryx_u64(0x0, x110, x104, &x112);
- { uint64_t _; uint8_t x116 = _addcarryx_u64(0x0, x82, x97, &_);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x85, x106, &x118);
- { uint64_t x121; uint8_t x122 = _addcarryx_u64(x119, x88, x109, &x121);
- { uint64_t x124; uint8_t x125 = _addcarryx_u64(x122, x91, x112, &x124);
- { uint8_t x126 = (x125 + x92);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x6, x9, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x6, x11, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x6, x10, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x129, x131, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x132, x134, &x140);
- { uint64_t x143; uint8_t _ = _addcarryx_u64(0x0, x141, x135, &x143);
- { uint64_t x146; uint8_t x147 = _addcarryx_u64(0x0, x118, x128, &x146);
- { uint64_t x149; uint8_t x150 = _addcarryx_u64(x147, x121, x137, &x149);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x124, x140, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x126, x143, &x155);
- { uint64_t _; uint64_t x158 = _mulx_u64(x146, 0xcccccccccccccccdL, &_);
- { uint64_t x162; uint64_t x161 = _mulx_u64(x158, 0xfffffffffffffffbL, &x162);
- { uint64_t x165; uint64_t x164 = _mulx_u64(x158, 0xffffffffffffffffL, &x165);
- { uint64_t x168; uint64_t x167 = _mulx_u64(x158, 0x3fffff, &x168);
- { uint64_t x170; uint8_t x171 = _addcarryx_u64(0x0, x162, x164, &x170);
- { uint64_t x173; uint8_t x174 = _addcarryx_u64(x171, x165, x167, &x173);
- { uint64_t x176; uint8_t _ = _addcarryx_u64(0x0, x174, x168, &x176);
- { uint64_t _; uint8_t x180 = _addcarryx_u64(0x0, x146, x161, &_);
- { uint64_t x182; uint8_t x183 = _addcarryx_u64(x180, x149, x170, &x182);
- { uint64_t x185; uint8_t x186 = _addcarryx_u64(x183, x152, x173, &x185);
- { uint64_t x188; uint8_t x189 = _addcarryx_u64(x186, x155, x176, &x188);
- { uint8_t x190 = (x189 + x156);
- { uint64_t x192; uint8_t x193 = _subborrow_u64(0x0, x182, 0xfffffffffffffffbL, &x192);
- { uint64_t x195; uint8_t x196 = _subborrow_u64(x193, x185, 0xffffffffffffffffL, &x195);
- { uint64_t x198; uint8_t x199 = _subborrow_u64(x196, x188, 0x3fffff, &x198);
- { uint64_t _; uint8_t x202 = _subborrow_u64(x199, x190, 0x0, &_);
- { uint64_t x203 = cmovznz64(x202, x198, x188);
- { uint64_t x204 = cmovznz64(x202, x195, x185);
- { uint64_t x205 = cmovznz64(x202, x192, x182);
- out[0] = x205;
- out[1] = x204;
- out[2] = x203;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e150m5_3limbs/femul.v b/src/Specific/montgomery64_2e150m5_3limbs/femul.v
deleted file mode 100644
index 3efedb6cc..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e150m5_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e150m5_3limbs/femulDisplay.log b/src/Specific/montgomery64_2e150m5_3limbs/femulDisplay.log
deleted file mode 100644
index ea386329f..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,75 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint64_t x14 = mulx_u64(x5, x9);
- uint64_t x16, uint64_t x17 = mulx_u64(x5, x11);
- uint64_t x19, uint64_t x20 = mulx_u64(x5, x10);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x14, x16);
- uint64_t x25, uint8_t x26 = addcarryx_u64(x23, x17, x19);
- uint64_t x28, uint8_t _ = addcarryx_u64(0x0, x26, x20);
- uint64_t x31, uint64_t _ = mulx_u64(x13, 0xcccccccccccccccdL);
- uint64_t x34, uint64_t x35 = mulx_u64(x31, 0xfffffffffffffffbL);
- uint64_t x37, uint64_t x38 = mulx_u64(x31, 0xffffffffffffffffL);
- uint64_t x40, uint64_t x41 = mulx_u64(x31, 0x3fffff);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x35, x37);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x38, x40);
- uint64_t x49, uint8_t _ = addcarryx_u64(0x0, x47, x41);
- uint64_t _, uint8_t x53 = addcarryx_u64(0x0, x13, x34);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x22, x43);
- uint64_t x58, uint8_t x59 = addcarryx_u64(x56, x25, x46);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x59, x28, x49);
- uint64_t x64, uint64_t x65 = mulx_u64(x7, x9);
- uint64_t x67, uint64_t x68 = mulx_u64(x7, x11);
- uint64_t x70, uint64_t x71 = mulx_u64(x7, x10);
- uint64_t x73, uint8_t x74 = addcarryx_u64(0x0, x65, x67);
- uint64_t x76, uint8_t x77 = addcarryx_u64(x74, x68, x70);
- uint64_t x79, uint8_t _ = addcarryx_u64(0x0, x77, x71);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x55, x64);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x58, x73);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x61, x76);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x62, x79);
- uint64_t x94, uint64_t _ = mulx_u64(x82, 0xcccccccccccccccdL);
- uint64_t x97, uint64_t x98 = mulx_u64(x94, 0xfffffffffffffffbL);
- uint64_t x100, uint64_t x101 = mulx_u64(x94, 0xffffffffffffffffL);
- uint64_t x103, uint64_t x104 = mulx_u64(x94, 0x3fffff);
- uint64_t x106, uint8_t x107 = addcarryx_u64(0x0, x98, x100);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x101, x103);
- uint64_t x112, uint8_t _ = addcarryx_u64(0x0, x110, x104);
- uint64_t _, uint8_t x116 = addcarryx_u64(0x0, x82, x97);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x85, x106);
- uint64_t x121, uint8_t x122 = addcarryx_u64(x119, x88, x109);
- uint64_t x124, uint8_t x125 = addcarryx_u64(x122, x91, x112);
- uint8_t x126 = (x125 + x92);
- uint64_t x128, uint64_t x129 = mulx_u64(x6, x9);
- uint64_t x131, uint64_t x132 = mulx_u64(x6, x11);
- uint64_t x134, uint64_t x135 = mulx_u64(x6, x10);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x129, x131);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x132, x134);
- uint64_t x143, uint8_t _ = addcarryx_u64(0x0, x141, x135);
- uint64_t x146, uint8_t x147 = addcarryx_u64(0x0, x118, x128);
- uint64_t x149, uint8_t x150 = addcarryx_u64(x147, x121, x137);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x124, x140);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x126, x143);
- uint64_t x158, uint64_t _ = mulx_u64(x146, 0xcccccccccccccccdL);
- uint64_t x161, uint64_t x162 = mulx_u64(x158, 0xfffffffffffffffbL);
- uint64_t x164, uint64_t x165 = mulx_u64(x158, 0xffffffffffffffffL);
- uint64_t x167, uint64_t x168 = mulx_u64(x158, 0x3fffff);
- uint64_t x170, uint8_t x171 = addcarryx_u64(0x0, x162, x164);
- uint64_t x173, uint8_t x174 = addcarryx_u64(x171, x165, x167);
- uint64_t x176, uint8_t _ = addcarryx_u64(0x0, x174, x168);
- uint64_t _, uint8_t x180 = addcarryx_u64(0x0, x146, x161);
- uint64_t x182, uint8_t x183 = addcarryx_u64(x180, x149, x170);
- uint64_t x185, uint8_t x186 = addcarryx_u64(x183, x152, x173);
- uint64_t x188, uint8_t x189 = addcarryx_u64(x186, x155, x176);
- uint8_t x190 = (x189 + x156);
- uint64_t x192, uint8_t x193 = subborrow_u64(0x0, x182, 0xfffffffffffffffbL);
- uint64_t x195, uint8_t x196 = subborrow_u64(x193, x185, 0xffffffffffffffffL);
- uint64_t x198, uint8_t x199 = subborrow_u64(x196, x188, 0x3fffff);
- uint64_t _, uint8_t x202 = subborrow_u64(x199, x190, 0x0);
- uint64_t x203 = cmovznz64(x202, x198, x188);
- uint64_t x204 = cmovznz64(x202, x195, x185);
- uint64_t x205 = cmovznz64(x202, x192, x182);
- return (x203, x204, x205))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e150m5_3limbs/femulDisplay.v b/src/Specific/montgomery64_2e150m5_3limbs/femulDisplay.v
deleted file mode 100644
index 687a470d5..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e150m5_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e150m5_3limbs/fenz.c b/src/Specific/montgomery64_2e150m5_3limbs/fenz.c
deleted file mode 100644
index 2632a2866..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/fenz.c
+++ /dev/null
@@ -1,9 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x5 = (x4 | x3);
- { uint64_t x6 = (x2 | x5);
- out[0] = x6;
- }}}}}
-}
diff --git a/src/Specific/montgomery64_2e150m5_3limbs/fenz.v b/src/Specific/montgomery64_2e150m5_3limbs/fenz.v
deleted file mode 100644
index 86d1078c7..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e150m5_3limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e150m5_3limbs/fenzDisplay.log b/src/Specific/montgomery64_2e150m5_3limbs/fenzDisplay.log
deleted file mode 100644
index 680322e0f..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/fenzDisplay.log
+++ /dev/null
@@ -1,9 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x5 = (x4 | x3);
- uint64_t x6 = (x2 | x5);
- return x6)
-x
- : word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e150m5_3limbs/fenzDisplay.v b/src/Specific/montgomery64_2e150m5_3limbs/fenzDisplay.v
deleted file mode 100644
index 514ad74f6..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e150m5_3limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e150m5_3limbs/feopp.c b/src/Specific/montgomery64_2e150m5_3limbs/feopp.c
deleted file mode 100644
index f0bb881e1..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/feopp.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void feopp(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6; uint8_t x7 = _subborrow_u64(0x0, 0x0, x2, &x6);
- { uint64_t x9; uint8_t x10 = _subborrow_u64(x7, 0x0, x4, &x9);
- { uint64_t x12; uint8_t x13 = _subborrow_u64(x10, 0x0, x3, &x12);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0xfffffffffffffffbL);
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x6, x15, &x17);
- { uint64_t x19 = (x14 & 0xffffffffffffffffL);
- { uint64_t x21; uint8_t x22 = _addcarryx_u64(x18, x9, x19, &x21);
- { uint64_t x23 = (x14 & 0x3fffff);
- { uint64_t x25; uint8_t _ = _addcarryx_u64(x22, x12, x23, &x25);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e150m5_3limbs/feopp.v b/src/Specific/montgomery64_2e150m5_3limbs/feopp.v
deleted file mode 100644
index 39f7fb5d5..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e150m5_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e150m5_3limbs/feoppDisplay.log b/src/Specific/montgomery64_2e150m5_3limbs/feoppDisplay.log
deleted file mode 100644
index beeba9404..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/feoppDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x9, uint8_t x10 = subborrow_u64(x7, 0x0, x4);
- uint64_t x12, uint8_t x13 = subborrow_u64(x10, 0x0, x3);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0xfffffffffffffffbL);
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x6, x15);
- uint64_t x19 = (x14 & 0xffffffffffffffffL);
- uint64_t x21, uint8_t x22 = addcarryx_u64(x18, x9, x19);
- uint64_t x23 = (x14 & 0x3fffff);
- uint64_t x25, uint8_t _ = addcarryx_u64(x22, x12, x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e150m5_3limbs/feoppDisplay.v b/src/Specific/montgomery64_2e150m5_3limbs/feoppDisplay.v
deleted file mode 100644
index a3cd94e86..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e150m5_3limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e150m5_3limbs/fesquare.c b/src/Specific/montgomery64_2e150m5_3limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e150m5_3limbs/fesub.c b/src/Specific/montgomery64_2e150m5_3limbs/fesub.c
deleted file mode 100644
index ee9031dc5..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/fesub.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _subborrow_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _subborrow_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _subborrow_u64(x17, x6, x10, &x19);
- { uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- { uint64_t x22 = (x21 & 0xfffffffffffffffbL);
- { uint64_t x24; uint8_t x25 = _addcarryx_u64(0x0, x13, x22, &x24);
- { uint64_t x26 = (x21 & 0xffffffffffffffffL);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x25, x16, x26, &x28);
- { uint64_t x30 = (x21 & 0x3fffff);
- { uint64_t x32; uint8_t _ = _addcarryx_u64(x29, x19, x30, &x32);
- out[0] = x24;
- out[1] = x28;
- out[2] = x32;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e150m5_3limbs/fesub.v b/src/Specific/montgomery64_2e150m5_3limbs/fesub.v
deleted file mode 100644
index 4fc6b12e7..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e150m5_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e150m5_3limbs/fesubDisplay.log b/src/Specific/montgomery64_2e150m5_3limbs/fesubDisplay.log
deleted file mode 100644
index 1455a0777..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = subborrow_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = subborrow_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = subborrow_u64(x17, x6, x10);
- uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- uint64_t x22 = (x21 & 0xfffffffffffffffbL);
- uint64_t x24, uint8_t x25 = addcarryx_u64(0x0, x13, x22);
- uint64_t x26 = (x21 & 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x25, x16, x26);
- uint64_t x30 = (x21 & 0x3fffff);
- uint64_t x32, uint8_t _ = addcarryx_u64(x29, x19, x30);
- (Return x32, Return x28, Return x24))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e150m5_3limbs/fesubDisplay.v b/src/Specific/montgomery64_2e150m5_3limbs/fesubDisplay.v
deleted file mode 100644
index 947bd8fd2..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e150m5_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e150m5_3limbs/py_interpreter.sh b/src/Specific/montgomery64_2e150m5_3limbs/py_interpreter.sh
deleted file mode 100755
index 47b3f75d5..000000000
--- a/src/Specific/montgomery64_2e150m5_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**150 - 5' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e152m17_3limbs/CurveParameters.v b/src/Specific/montgomery64_2e152m17_3limbs/CurveParameters.v
deleted file mode 100644
index 581741f40..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^152 - 17
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 64;
- bitwidth := 64;
- s := 2^152;
- c := [(1, 17)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e152m17_3limbs/Synthesis.v b/src/Specific/montgomery64_2e152m17_3limbs/Synthesis.v
deleted file mode 100644
index 09c703965..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e152m17_3limbs.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/montgomery64_2e152m17_3limbs/compiler.sh b/src/Specific/montgomery64_2e152m17_3limbs/compiler.sh
deleted file mode 100755
index 0d78754b2..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<152) - 17' "$@"
diff --git a/src/Specific/montgomery64_2e152m17_3limbs/compilerxx.sh b/src/Specific/montgomery64_2e152m17_3limbs/compilerxx.sh
deleted file mode 100755
index ea28b88b3..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<152) - 17' "$@"
diff --git a/src/Specific/montgomery64_2e152m17_3limbs/feadd.c b/src/Specific/montgomery64_2e152m17_3limbs/feadd.c
deleted file mode 100644
index b280cb729..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/feadd.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _addcarryx_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _addcarryx_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _addcarryx_u64(x17, x6, x10, &x19);
- { uint64_t x22; uint8_t x23 = _subborrow_u64(0x0, x13, 0xffffffffffffffefL, &x22);
- { uint64_t x25; uint8_t x26 = _subborrow_u64(x23, x16, 0xffffffffffffffffL, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x19, 0xffffff, &x28);
- { uint64_t _; uint8_t x32 = _subborrow_u64(x29, x20, 0x0, &_);
- { uint64_t x33 = cmovznz64(x32, x28, x19);
- { uint64_t x34 = cmovznz64(x32, x25, x16);
- { uint64_t x35 = cmovznz64(x32, x22, x13);
- out[0] = x35;
- out[1] = x34;
- out[2] = x33;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e152m17_3limbs/feadd.v b/src/Specific/montgomery64_2e152m17_3limbs/feadd.v
deleted file mode 100644
index c4789708f..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e152m17_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e152m17_3limbs/feaddDisplay.log b/src/Specific/montgomery64_2e152m17_3limbs/feaddDisplay.log
deleted file mode 100644
index 3c1c0d937..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = addcarryx_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = addcarryx_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = addcarryx_u64(x17, x6, x10);
- uint64_t x22, uint8_t x23 = subborrow_u64(0x0, x13, 0xffffffffffffffefL);
- uint64_t x25, uint8_t x26 = subborrow_u64(x23, x16, 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x19, 0xffffff);
- uint64_t _, uint8_t x32 = subborrow_u64(x29, x20, 0x0);
- uint64_t x33 = cmovznz64(x32, x28, x19);
- uint64_t x34 = cmovznz64(x32, x25, x16);
- uint64_t x35 = cmovznz64(x32, x22, x13);
- return (x33, x34, x35))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e152m17_3limbs/feaddDisplay.v b/src/Specific/montgomery64_2e152m17_3limbs/feaddDisplay.v
deleted file mode 100644
index 771f8c841..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e152m17_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e152m17_3limbs/femul.c b/src/Specific/montgomery64_2e152m17_3limbs/femul.c
deleted file mode 100644
index 401222097..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/femul.c
+++ /dev/null
@@ -1,80 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x14; uint64_t x13 = _mulx_u64(x5, x9, &x14);
- { uint64_t x17; uint64_t x16 = _mulx_u64(x5, x11, &x17);
- { uint64_t x20; uint64_t x19 = _mulx_u64(x5, x10, &x20);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x14, x16, &x22);
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(x23, x17, x19, &x25);
- { uint64_t x28; uint8_t _ = _addcarryx_u64(0x0, x26, x20, &x28);
- { uint64_t _; uint64_t x31 = _mulx_u64(x13, 0xf0f0f0f0f0f0f0f1L, &_);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x31, 0xffffffffffffffefL, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x31, 0xffffffffffffffffL, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x31, 0xffffff, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x35, x37, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x38, x40, &x46);
- { uint64_t x49; uint8_t _ = _addcarryx_u64(0x0, x47, x41, &x49);
- { uint64_t _; uint8_t x53 = _addcarryx_u64(0x0, x13, x34, &_);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x22, x43, &x55);
- { uint64_t x58; uint8_t x59 = _addcarryx_u64(x56, x25, x46, &x58);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x59, x28, x49, &x61);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x7, x9, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x7, x11, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x7, x10, &x71);
- { uint64_t x73; uint8_t x74 = _addcarryx_u64(0x0, x65, x67, &x73);
- { uint64_t x76; uint8_t x77 = _addcarryx_u64(x74, x68, x70, &x76);
- { uint64_t x79; uint8_t _ = _addcarryx_u64(0x0, x77, x71, &x79);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x55, x64, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x58, x73, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x61, x76, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x62, x79, &x91);
- { uint64_t _; uint64_t x94 = _mulx_u64(x82, 0xf0f0f0f0f0f0f0f1L, &_);
- { uint64_t x98; uint64_t x97 = _mulx_u64(x94, 0xffffffffffffffefL, &x98);
- { uint64_t x101; uint64_t x100 = _mulx_u64(x94, 0xffffffffffffffffL, &x101);
- { uint64_t x104; uint64_t x103 = _mulx_u64(x94, 0xffffff, &x104);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(0x0, x98, x100, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x101, x103, &x109);
- { uint64_t x112; uint8_t _ = _addcarryx_u64(0x0, x110, x104, &x112);
- { uint64_t _; uint8_t x116 = _addcarryx_u64(0x0, x82, x97, &_);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x85, x106, &x118);
- { uint64_t x121; uint8_t x122 = _addcarryx_u64(x119, x88, x109, &x121);
- { uint64_t x124; uint8_t x125 = _addcarryx_u64(x122, x91, x112, &x124);
- { uint8_t x126 = (x125 + x92);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x6, x9, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x6, x11, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x6, x10, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x129, x131, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x132, x134, &x140);
- { uint64_t x143; uint8_t _ = _addcarryx_u64(0x0, x141, x135, &x143);
- { uint64_t x146; uint8_t x147 = _addcarryx_u64(0x0, x118, x128, &x146);
- { uint64_t x149; uint8_t x150 = _addcarryx_u64(x147, x121, x137, &x149);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x124, x140, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x126, x143, &x155);
- { uint64_t _; uint64_t x158 = _mulx_u64(x146, 0xf0f0f0f0f0f0f0f1L, &_);
- { uint64_t x162; uint64_t x161 = _mulx_u64(x158, 0xffffffffffffffefL, &x162);
- { uint64_t x165; uint64_t x164 = _mulx_u64(x158, 0xffffffffffffffffL, &x165);
- { uint64_t x168; uint64_t x167 = _mulx_u64(x158, 0xffffff, &x168);
- { uint64_t x170; uint8_t x171 = _addcarryx_u64(0x0, x162, x164, &x170);
- { uint64_t x173; uint8_t x174 = _addcarryx_u64(x171, x165, x167, &x173);
- { uint64_t x176; uint8_t _ = _addcarryx_u64(0x0, x174, x168, &x176);
- { uint64_t _; uint8_t x180 = _addcarryx_u64(0x0, x146, x161, &_);
- { uint64_t x182; uint8_t x183 = _addcarryx_u64(x180, x149, x170, &x182);
- { uint64_t x185; uint8_t x186 = _addcarryx_u64(x183, x152, x173, &x185);
- { uint64_t x188; uint8_t x189 = _addcarryx_u64(x186, x155, x176, &x188);
- { uint8_t x190 = (x189 + x156);
- { uint64_t x192; uint8_t x193 = _subborrow_u64(0x0, x182, 0xffffffffffffffefL, &x192);
- { uint64_t x195; uint8_t x196 = _subborrow_u64(x193, x185, 0xffffffffffffffffL, &x195);
- { uint64_t x198; uint8_t x199 = _subborrow_u64(x196, x188, 0xffffff, &x198);
- { uint64_t _; uint8_t x202 = _subborrow_u64(x199, x190, 0x0, &_);
- { uint64_t x203 = cmovznz64(x202, x198, x188);
- { uint64_t x204 = cmovznz64(x202, x195, x185);
- { uint64_t x205 = cmovznz64(x202, x192, x182);
- out[0] = x205;
- out[1] = x204;
- out[2] = x203;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e152m17_3limbs/femul.v b/src/Specific/montgomery64_2e152m17_3limbs/femul.v
deleted file mode 100644
index 1c3e1c133..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e152m17_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e152m17_3limbs/femulDisplay.log b/src/Specific/montgomery64_2e152m17_3limbs/femulDisplay.log
deleted file mode 100644
index 6c3eb91fb..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,75 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint64_t x14 = mulx_u64(x5, x9);
- uint64_t x16, uint64_t x17 = mulx_u64(x5, x11);
- uint64_t x19, uint64_t x20 = mulx_u64(x5, x10);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x14, x16);
- uint64_t x25, uint8_t x26 = addcarryx_u64(x23, x17, x19);
- uint64_t x28, uint8_t _ = addcarryx_u64(0x0, x26, x20);
- uint64_t x31, uint64_t _ = mulx_u64(x13, 0xf0f0f0f0f0f0f0f1L);
- uint64_t x34, uint64_t x35 = mulx_u64(x31, 0xffffffffffffffefL);
- uint64_t x37, uint64_t x38 = mulx_u64(x31, 0xffffffffffffffffL);
- uint64_t x40, uint64_t x41 = mulx_u64(x31, 0xffffff);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x35, x37);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x38, x40);
- uint64_t x49, uint8_t _ = addcarryx_u64(0x0, x47, x41);
- uint64_t _, uint8_t x53 = addcarryx_u64(0x0, x13, x34);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x22, x43);
- uint64_t x58, uint8_t x59 = addcarryx_u64(x56, x25, x46);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x59, x28, x49);
- uint64_t x64, uint64_t x65 = mulx_u64(x7, x9);
- uint64_t x67, uint64_t x68 = mulx_u64(x7, x11);
- uint64_t x70, uint64_t x71 = mulx_u64(x7, x10);
- uint64_t x73, uint8_t x74 = addcarryx_u64(0x0, x65, x67);
- uint64_t x76, uint8_t x77 = addcarryx_u64(x74, x68, x70);
- uint64_t x79, uint8_t _ = addcarryx_u64(0x0, x77, x71);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x55, x64);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x58, x73);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x61, x76);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x62, x79);
- uint64_t x94, uint64_t _ = mulx_u64(x82, 0xf0f0f0f0f0f0f0f1L);
- uint64_t x97, uint64_t x98 = mulx_u64(x94, 0xffffffffffffffefL);
- uint64_t x100, uint64_t x101 = mulx_u64(x94, 0xffffffffffffffffL);
- uint64_t x103, uint64_t x104 = mulx_u64(x94, 0xffffff);
- uint64_t x106, uint8_t x107 = addcarryx_u64(0x0, x98, x100);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x101, x103);
- uint64_t x112, uint8_t _ = addcarryx_u64(0x0, x110, x104);
- uint64_t _, uint8_t x116 = addcarryx_u64(0x0, x82, x97);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x85, x106);
- uint64_t x121, uint8_t x122 = addcarryx_u64(x119, x88, x109);
- uint64_t x124, uint8_t x125 = addcarryx_u64(x122, x91, x112);
- uint8_t x126 = (x125 + x92);
- uint64_t x128, uint64_t x129 = mulx_u64(x6, x9);
- uint64_t x131, uint64_t x132 = mulx_u64(x6, x11);
- uint64_t x134, uint64_t x135 = mulx_u64(x6, x10);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x129, x131);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x132, x134);
- uint64_t x143, uint8_t _ = addcarryx_u64(0x0, x141, x135);
- uint64_t x146, uint8_t x147 = addcarryx_u64(0x0, x118, x128);
- uint64_t x149, uint8_t x150 = addcarryx_u64(x147, x121, x137);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x124, x140);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x126, x143);
- uint64_t x158, uint64_t _ = mulx_u64(x146, 0xf0f0f0f0f0f0f0f1L);
- uint64_t x161, uint64_t x162 = mulx_u64(x158, 0xffffffffffffffefL);
- uint64_t x164, uint64_t x165 = mulx_u64(x158, 0xffffffffffffffffL);
- uint64_t x167, uint64_t x168 = mulx_u64(x158, 0xffffff);
- uint64_t x170, uint8_t x171 = addcarryx_u64(0x0, x162, x164);
- uint64_t x173, uint8_t x174 = addcarryx_u64(x171, x165, x167);
- uint64_t x176, uint8_t _ = addcarryx_u64(0x0, x174, x168);
- uint64_t _, uint8_t x180 = addcarryx_u64(0x0, x146, x161);
- uint64_t x182, uint8_t x183 = addcarryx_u64(x180, x149, x170);
- uint64_t x185, uint8_t x186 = addcarryx_u64(x183, x152, x173);
- uint64_t x188, uint8_t x189 = addcarryx_u64(x186, x155, x176);
- uint8_t x190 = (x189 + x156);
- uint64_t x192, uint8_t x193 = subborrow_u64(0x0, x182, 0xffffffffffffffefL);
- uint64_t x195, uint8_t x196 = subborrow_u64(x193, x185, 0xffffffffffffffffL);
- uint64_t x198, uint8_t x199 = subborrow_u64(x196, x188, 0xffffff);
- uint64_t _, uint8_t x202 = subborrow_u64(x199, x190, 0x0);
- uint64_t x203 = cmovznz64(x202, x198, x188);
- uint64_t x204 = cmovznz64(x202, x195, x185);
- uint64_t x205 = cmovznz64(x202, x192, x182);
- return (x203, x204, x205))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e152m17_3limbs/femulDisplay.v b/src/Specific/montgomery64_2e152m17_3limbs/femulDisplay.v
deleted file mode 100644
index 78af37297..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e152m17_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e152m17_3limbs/fenz.c b/src/Specific/montgomery64_2e152m17_3limbs/fenz.c
deleted file mode 100644
index 2632a2866..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/fenz.c
+++ /dev/null
@@ -1,9 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x5 = (x4 | x3);
- { uint64_t x6 = (x2 | x5);
- out[0] = x6;
- }}}}}
-}
diff --git a/src/Specific/montgomery64_2e152m17_3limbs/fenz.v b/src/Specific/montgomery64_2e152m17_3limbs/fenz.v
deleted file mode 100644
index 800904599..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e152m17_3limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e152m17_3limbs/fenzDisplay.log b/src/Specific/montgomery64_2e152m17_3limbs/fenzDisplay.log
deleted file mode 100644
index 680322e0f..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/fenzDisplay.log
+++ /dev/null
@@ -1,9 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x5 = (x4 | x3);
- uint64_t x6 = (x2 | x5);
- return x6)
-x
- : word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e152m17_3limbs/fenzDisplay.v b/src/Specific/montgomery64_2e152m17_3limbs/fenzDisplay.v
deleted file mode 100644
index a076b2db2..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e152m17_3limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e152m17_3limbs/feopp.c b/src/Specific/montgomery64_2e152m17_3limbs/feopp.c
deleted file mode 100644
index cbf79bcda..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/feopp.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void feopp(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6; uint8_t x7 = _subborrow_u64(0x0, 0x0, x2, &x6);
- { uint64_t x9; uint8_t x10 = _subborrow_u64(x7, 0x0, x4, &x9);
- { uint64_t x12; uint8_t x13 = _subborrow_u64(x10, 0x0, x3, &x12);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0xffffffffffffffefL);
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x6, x15, &x17);
- { uint64_t x19 = (x14 & 0xffffffffffffffffL);
- { uint64_t x21; uint8_t x22 = _addcarryx_u64(x18, x9, x19, &x21);
- { uint64_t x23 = (x14 & 0xffffff);
- { uint64_t x25; uint8_t _ = _addcarryx_u64(x22, x12, x23, &x25);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e152m17_3limbs/feopp.v b/src/Specific/montgomery64_2e152m17_3limbs/feopp.v
deleted file mode 100644
index 9ef6f4979..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e152m17_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e152m17_3limbs/feoppDisplay.log b/src/Specific/montgomery64_2e152m17_3limbs/feoppDisplay.log
deleted file mode 100644
index e27602ec5..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/feoppDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x9, uint8_t x10 = subborrow_u64(x7, 0x0, x4);
- uint64_t x12, uint8_t x13 = subborrow_u64(x10, 0x0, x3);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0xffffffffffffffefL);
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x6, x15);
- uint64_t x19 = (x14 & 0xffffffffffffffffL);
- uint64_t x21, uint8_t x22 = addcarryx_u64(x18, x9, x19);
- uint64_t x23 = (x14 & 0xffffff);
- uint64_t x25, uint8_t _ = addcarryx_u64(x22, x12, x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e152m17_3limbs/feoppDisplay.v b/src/Specific/montgomery64_2e152m17_3limbs/feoppDisplay.v
deleted file mode 100644
index 8af8e8a84..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e152m17_3limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e152m17_3limbs/fesquare.c b/src/Specific/montgomery64_2e152m17_3limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e152m17_3limbs/fesub.c b/src/Specific/montgomery64_2e152m17_3limbs/fesub.c
deleted file mode 100644
index 81ae44d47..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/fesub.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _subborrow_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _subborrow_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _subborrow_u64(x17, x6, x10, &x19);
- { uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- { uint64_t x22 = (x21 & 0xffffffffffffffefL);
- { uint64_t x24; uint8_t x25 = _addcarryx_u64(0x0, x13, x22, &x24);
- { uint64_t x26 = (x21 & 0xffffffffffffffffL);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x25, x16, x26, &x28);
- { uint64_t x30 = (x21 & 0xffffff);
- { uint64_t x32; uint8_t _ = _addcarryx_u64(x29, x19, x30, &x32);
- out[0] = x24;
- out[1] = x28;
- out[2] = x32;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e152m17_3limbs/fesub.v b/src/Specific/montgomery64_2e152m17_3limbs/fesub.v
deleted file mode 100644
index a7ad8dbc9..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e152m17_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e152m17_3limbs/fesubDisplay.log b/src/Specific/montgomery64_2e152m17_3limbs/fesubDisplay.log
deleted file mode 100644
index 3d107ab03..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = subborrow_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = subborrow_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = subborrow_u64(x17, x6, x10);
- uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- uint64_t x22 = (x21 & 0xffffffffffffffefL);
- uint64_t x24, uint8_t x25 = addcarryx_u64(0x0, x13, x22);
- uint64_t x26 = (x21 & 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x25, x16, x26);
- uint64_t x30 = (x21 & 0xffffff);
- uint64_t x32, uint8_t _ = addcarryx_u64(x29, x19, x30);
- (Return x32, Return x28, Return x24))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e152m17_3limbs/fesubDisplay.v b/src/Specific/montgomery64_2e152m17_3limbs/fesubDisplay.v
deleted file mode 100644
index cd65b26df..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e152m17_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e152m17_3limbs/py_interpreter.sh b/src/Specific/montgomery64_2e152m17_3limbs/py_interpreter.sh
deleted file mode 100755
index 15b8e2ca4..000000000
--- a/src/Specific/montgomery64_2e152m17_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**152 - 17' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e158m15_3limbs/CurveParameters.v b/src/Specific/montgomery64_2e158m15_3limbs/CurveParameters.v
deleted file mode 100644
index 82c1baba1..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^158 - 15
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 64;
- bitwidth := 64;
- s := 2^158;
- c := [(1, 15)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e158m15_3limbs/Synthesis.v b/src/Specific/montgomery64_2e158m15_3limbs/Synthesis.v
deleted file mode 100644
index e7ac59824..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e158m15_3limbs.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/montgomery64_2e158m15_3limbs/compiler.sh b/src/Specific/montgomery64_2e158m15_3limbs/compiler.sh
deleted file mode 100755
index 3c766e035..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/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='64' -Dlimb_weight_gaps_array='{64,64,64}' -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='3' -Dq_mpz='(1_mpz<<158) - 15' "$@"
diff --git a/src/Specific/montgomery64_2e158m15_3limbs/compilerxx.sh b/src/Specific/montgomery64_2e158m15_3limbs/compilerxx.sh
deleted file mode 100755
index 0ce18d17e..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/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='64' -Dlimb_weight_gaps_array='{64,64,64}' -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='3' -Dq_mpz='(1_mpz<<158) - 15' "$@"
diff --git a/src/Specific/montgomery64_2e158m15_3limbs/feadd.c b/src/Specific/montgomery64_2e158m15_3limbs/feadd.c
deleted file mode 100644
index 686fa28f6..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/feadd.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _addcarryx_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _addcarryx_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _addcarryx_u64(x17, x6, x10, &x19);
- { uint64_t x22; uint8_t x23 = _subborrow_u64(0x0, x13, 0xfffffffffffffff1L, &x22);
- { uint64_t x25; uint8_t x26 = _subborrow_u64(x23, x16, 0xffffffffffffffffL, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x19, 0x3fffffff, &x28);
- { uint64_t _; uint8_t x32 = _subborrow_u64(x29, x20, 0x0, &_);
- { uint64_t x33 = cmovznz64(x32, x28, x19);
- { uint64_t x34 = cmovznz64(x32, x25, x16);
- { uint64_t x35 = cmovznz64(x32, x22, x13);
- out[0] = x35;
- out[1] = x34;
- out[2] = x33;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e158m15_3limbs/feadd.v b/src/Specific/montgomery64_2e158m15_3limbs/feadd.v
deleted file mode 100644
index db2860447..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e158m15_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e158m15_3limbs/feaddDisplay.log b/src/Specific/montgomery64_2e158m15_3limbs/feaddDisplay.log
deleted file mode 100644
index e58fcd683..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = addcarryx_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = addcarryx_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = addcarryx_u64(x17, x6, x10);
- uint64_t x22, uint8_t x23 = subborrow_u64(0x0, x13, 0xfffffffffffffff1L);
- uint64_t x25, uint8_t x26 = subborrow_u64(x23, x16, 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x19, 0x3fffffff);
- uint64_t _, uint8_t x32 = subborrow_u64(x29, x20, 0x0);
- uint64_t x33 = cmovznz64(x32, x28, x19);
- uint64_t x34 = cmovznz64(x32, x25, x16);
- uint64_t x35 = cmovznz64(x32, x22, x13);
- return (x33, x34, x35))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e158m15_3limbs/feaddDisplay.v b/src/Specific/montgomery64_2e158m15_3limbs/feaddDisplay.v
deleted file mode 100644
index bc7390fda..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e158m15_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e158m15_3limbs/femul.c b/src/Specific/montgomery64_2e158m15_3limbs/femul.c
deleted file mode 100644
index d83532e8a..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/femul.c
+++ /dev/null
@@ -1,80 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x14; uint64_t x13 = _mulx_u64(x5, x9, &x14);
- { uint64_t x17; uint64_t x16 = _mulx_u64(x5, x11, &x17);
- { uint64_t x20; uint64_t x19 = _mulx_u64(x5, x10, &x20);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x14, x16, &x22);
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(x23, x17, x19, &x25);
- { uint64_t x28; uint8_t _ = _addcarryx_u64(0x0, x26, x20, &x28);
- { uint64_t _; uint64_t x31 = _mulx_u64(x13, 0xeeeeeeeeeeeeeeefL, &_);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x31, 0xfffffffffffffff1L, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x31, 0xffffffffffffffffL, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x31, 0x3fffffff, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x35, x37, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x38, x40, &x46);
- { uint64_t x49; uint8_t _ = _addcarryx_u64(0x0, x47, x41, &x49);
- { uint64_t _; uint8_t x53 = _addcarryx_u64(0x0, x13, x34, &_);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x22, x43, &x55);
- { uint64_t x58; uint8_t x59 = _addcarryx_u64(x56, x25, x46, &x58);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x59, x28, x49, &x61);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x7, x9, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x7, x11, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x7, x10, &x71);
- { uint64_t x73; uint8_t x74 = _addcarryx_u64(0x0, x65, x67, &x73);
- { uint64_t x76; uint8_t x77 = _addcarryx_u64(x74, x68, x70, &x76);
- { uint64_t x79; uint8_t _ = _addcarryx_u64(0x0, x77, x71, &x79);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x55, x64, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x58, x73, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x61, x76, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x62, x79, &x91);
- { uint64_t _; uint64_t x94 = _mulx_u64(x82, 0xeeeeeeeeeeeeeeefL, &_);
- { uint64_t x98; uint64_t x97 = _mulx_u64(x94, 0xfffffffffffffff1L, &x98);
- { uint64_t x101; uint64_t x100 = _mulx_u64(x94, 0xffffffffffffffffL, &x101);
- { uint64_t x104; uint64_t x103 = _mulx_u64(x94, 0x3fffffff, &x104);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(0x0, x98, x100, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x101, x103, &x109);
- { uint64_t x112; uint8_t _ = _addcarryx_u64(0x0, x110, x104, &x112);
- { uint64_t _; uint8_t x116 = _addcarryx_u64(0x0, x82, x97, &_);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x85, x106, &x118);
- { uint64_t x121; uint8_t x122 = _addcarryx_u64(x119, x88, x109, &x121);
- { uint64_t x124; uint8_t x125 = _addcarryx_u64(x122, x91, x112, &x124);
- { uint8_t x126 = (x125 + x92);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x6, x9, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x6, x11, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x6, x10, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x129, x131, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x132, x134, &x140);
- { uint64_t x143; uint8_t _ = _addcarryx_u64(0x0, x141, x135, &x143);
- { uint64_t x146; uint8_t x147 = _addcarryx_u64(0x0, x118, x128, &x146);
- { uint64_t x149; uint8_t x150 = _addcarryx_u64(x147, x121, x137, &x149);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x124, x140, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x126, x143, &x155);
- { uint64_t _; uint64_t x158 = _mulx_u64(x146, 0xeeeeeeeeeeeeeeefL, &_);
- { uint64_t x162; uint64_t x161 = _mulx_u64(x158, 0xfffffffffffffff1L, &x162);
- { uint64_t x165; uint64_t x164 = _mulx_u64(x158, 0xffffffffffffffffL, &x165);
- { uint64_t x168; uint64_t x167 = _mulx_u64(x158, 0x3fffffff, &x168);
- { uint64_t x170; uint8_t x171 = _addcarryx_u64(0x0, x162, x164, &x170);
- { uint64_t x173; uint8_t x174 = _addcarryx_u64(x171, x165, x167, &x173);
- { uint64_t x176; uint8_t _ = _addcarryx_u64(0x0, x174, x168, &x176);
- { uint64_t _; uint8_t x180 = _addcarryx_u64(0x0, x146, x161, &_);
- { uint64_t x182; uint8_t x183 = _addcarryx_u64(x180, x149, x170, &x182);
- { uint64_t x185; uint8_t x186 = _addcarryx_u64(x183, x152, x173, &x185);
- { uint64_t x188; uint8_t x189 = _addcarryx_u64(x186, x155, x176, &x188);
- { uint8_t x190 = (x189 + x156);
- { uint64_t x192; uint8_t x193 = _subborrow_u64(0x0, x182, 0xfffffffffffffff1L, &x192);
- { uint64_t x195; uint8_t x196 = _subborrow_u64(x193, x185, 0xffffffffffffffffL, &x195);
- { uint64_t x198; uint8_t x199 = _subborrow_u64(x196, x188, 0x3fffffff, &x198);
- { uint64_t _; uint8_t x202 = _subborrow_u64(x199, x190, 0x0, &_);
- { uint64_t x203 = cmovznz64(x202, x198, x188);
- { uint64_t x204 = cmovznz64(x202, x195, x185);
- { uint64_t x205 = cmovznz64(x202, x192, x182);
- out[0] = x205;
- out[1] = x204;
- out[2] = x203;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e158m15_3limbs/femul.v b/src/Specific/montgomery64_2e158m15_3limbs/femul.v
deleted file mode 100644
index fce127a7c..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e158m15_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e158m15_3limbs/femulDisplay.log b/src/Specific/montgomery64_2e158m15_3limbs/femulDisplay.log
deleted file mode 100644
index d982c5b1b..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,75 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint64_t x14 = mulx_u64(x5, x9);
- uint64_t x16, uint64_t x17 = mulx_u64(x5, x11);
- uint64_t x19, uint64_t x20 = mulx_u64(x5, x10);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x14, x16);
- uint64_t x25, uint8_t x26 = addcarryx_u64(x23, x17, x19);
- uint64_t x28, uint8_t _ = addcarryx_u64(0x0, x26, x20);
- uint64_t x31, uint64_t _ = mulx_u64(x13, 0xeeeeeeeeeeeeeeefL);
- uint64_t x34, uint64_t x35 = mulx_u64(x31, 0xfffffffffffffff1L);
- uint64_t x37, uint64_t x38 = mulx_u64(x31, 0xffffffffffffffffL);
- uint64_t x40, uint64_t x41 = mulx_u64(x31, 0x3fffffff);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x35, x37);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x38, x40);
- uint64_t x49, uint8_t _ = addcarryx_u64(0x0, x47, x41);
- uint64_t _, uint8_t x53 = addcarryx_u64(0x0, x13, x34);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x22, x43);
- uint64_t x58, uint8_t x59 = addcarryx_u64(x56, x25, x46);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x59, x28, x49);
- uint64_t x64, uint64_t x65 = mulx_u64(x7, x9);
- uint64_t x67, uint64_t x68 = mulx_u64(x7, x11);
- uint64_t x70, uint64_t x71 = mulx_u64(x7, x10);
- uint64_t x73, uint8_t x74 = addcarryx_u64(0x0, x65, x67);
- uint64_t x76, uint8_t x77 = addcarryx_u64(x74, x68, x70);
- uint64_t x79, uint8_t _ = addcarryx_u64(0x0, x77, x71);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x55, x64);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x58, x73);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x61, x76);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x62, x79);
- uint64_t x94, uint64_t _ = mulx_u64(x82, 0xeeeeeeeeeeeeeeefL);
- uint64_t x97, uint64_t x98 = mulx_u64(x94, 0xfffffffffffffff1L);
- uint64_t x100, uint64_t x101 = mulx_u64(x94, 0xffffffffffffffffL);
- uint64_t x103, uint64_t x104 = mulx_u64(x94, 0x3fffffff);
- uint64_t x106, uint8_t x107 = addcarryx_u64(0x0, x98, x100);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x101, x103);
- uint64_t x112, uint8_t _ = addcarryx_u64(0x0, x110, x104);
- uint64_t _, uint8_t x116 = addcarryx_u64(0x0, x82, x97);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x85, x106);
- uint64_t x121, uint8_t x122 = addcarryx_u64(x119, x88, x109);
- uint64_t x124, uint8_t x125 = addcarryx_u64(x122, x91, x112);
- uint8_t x126 = (x125 + x92);
- uint64_t x128, uint64_t x129 = mulx_u64(x6, x9);
- uint64_t x131, uint64_t x132 = mulx_u64(x6, x11);
- uint64_t x134, uint64_t x135 = mulx_u64(x6, x10);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x129, x131);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x132, x134);
- uint64_t x143, uint8_t _ = addcarryx_u64(0x0, x141, x135);
- uint64_t x146, uint8_t x147 = addcarryx_u64(0x0, x118, x128);
- uint64_t x149, uint8_t x150 = addcarryx_u64(x147, x121, x137);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x124, x140);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x126, x143);
- uint64_t x158, uint64_t _ = mulx_u64(x146, 0xeeeeeeeeeeeeeeefL);
- uint64_t x161, uint64_t x162 = mulx_u64(x158, 0xfffffffffffffff1L);
- uint64_t x164, uint64_t x165 = mulx_u64(x158, 0xffffffffffffffffL);
- uint64_t x167, uint64_t x168 = mulx_u64(x158, 0x3fffffff);
- uint64_t x170, uint8_t x171 = addcarryx_u64(0x0, x162, x164);
- uint64_t x173, uint8_t x174 = addcarryx_u64(x171, x165, x167);
- uint64_t x176, uint8_t _ = addcarryx_u64(0x0, x174, x168);
- uint64_t _, uint8_t x180 = addcarryx_u64(0x0, x146, x161);
- uint64_t x182, uint8_t x183 = addcarryx_u64(x180, x149, x170);
- uint64_t x185, uint8_t x186 = addcarryx_u64(x183, x152, x173);
- uint64_t x188, uint8_t x189 = addcarryx_u64(x186, x155, x176);
- uint8_t x190 = (x189 + x156);
- uint64_t x192, uint8_t x193 = subborrow_u64(0x0, x182, 0xfffffffffffffff1L);
- uint64_t x195, uint8_t x196 = subborrow_u64(x193, x185, 0xffffffffffffffffL);
- uint64_t x198, uint8_t x199 = subborrow_u64(x196, x188, 0x3fffffff);
- uint64_t _, uint8_t x202 = subborrow_u64(x199, x190, 0x0);
- uint64_t x203 = cmovznz64(x202, x198, x188);
- uint64_t x204 = cmovznz64(x202, x195, x185);
- uint64_t x205 = cmovznz64(x202, x192, x182);
- return (x203, x204, x205))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e158m15_3limbs/femulDisplay.v b/src/Specific/montgomery64_2e158m15_3limbs/femulDisplay.v
deleted file mode 100644
index 71f2c7c26..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e158m15_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e158m15_3limbs/fenz.c b/src/Specific/montgomery64_2e158m15_3limbs/fenz.c
deleted file mode 100644
index 2632a2866..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/fenz.c
+++ /dev/null
@@ -1,9 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x5 = (x4 | x3);
- { uint64_t x6 = (x2 | x5);
- out[0] = x6;
- }}}}}
-}
diff --git a/src/Specific/montgomery64_2e158m15_3limbs/fenz.v b/src/Specific/montgomery64_2e158m15_3limbs/fenz.v
deleted file mode 100644
index d2103a75c..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e158m15_3limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e158m15_3limbs/fenzDisplay.log b/src/Specific/montgomery64_2e158m15_3limbs/fenzDisplay.log
deleted file mode 100644
index 680322e0f..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/fenzDisplay.log
+++ /dev/null
@@ -1,9 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x5 = (x4 | x3);
- uint64_t x6 = (x2 | x5);
- return x6)
-x
- : word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e158m15_3limbs/fenzDisplay.v b/src/Specific/montgomery64_2e158m15_3limbs/fenzDisplay.v
deleted file mode 100644
index 2c436f2df..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e158m15_3limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e158m15_3limbs/feopp.c b/src/Specific/montgomery64_2e158m15_3limbs/feopp.c
deleted file mode 100644
index ded084772..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/feopp.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void feopp(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6; uint8_t x7 = _subborrow_u64(0x0, 0x0, x2, &x6);
- { uint64_t x9; uint8_t x10 = _subborrow_u64(x7, 0x0, x4, &x9);
- { uint64_t x12; uint8_t x13 = _subborrow_u64(x10, 0x0, x3, &x12);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0xfffffffffffffff1L);
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x6, x15, &x17);
- { uint64_t x19 = (x14 & 0xffffffffffffffffL);
- { uint64_t x21; uint8_t x22 = _addcarryx_u64(x18, x9, x19, &x21);
- { uint64_t x23 = (x14 & 0x3fffffff);
- { uint64_t x25; uint8_t _ = _addcarryx_u64(x22, x12, x23, &x25);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e158m15_3limbs/feopp.v b/src/Specific/montgomery64_2e158m15_3limbs/feopp.v
deleted file mode 100644
index b76d97a08..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e158m15_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e158m15_3limbs/feoppDisplay.log b/src/Specific/montgomery64_2e158m15_3limbs/feoppDisplay.log
deleted file mode 100644
index 958bc93f4..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/feoppDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x9, uint8_t x10 = subborrow_u64(x7, 0x0, x4);
- uint64_t x12, uint8_t x13 = subborrow_u64(x10, 0x0, x3);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0xfffffffffffffff1L);
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x6, x15);
- uint64_t x19 = (x14 & 0xffffffffffffffffL);
- uint64_t x21, uint8_t x22 = addcarryx_u64(x18, x9, x19);
- uint64_t x23 = (x14 & 0x3fffffff);
- uint64_t x25, uint8_t _ = addcarryx_u64(x22, x12, x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e158m15_3limbs/feoppDisplay.v b/src/Specific/montgomery64_2e158m15_3limbs/feoppDisplay.v
deleted file mode 100644
index 77d443efc..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e158m15_3limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e158m15_3limbs/fesquare.c b/src/Specific/montgomery64_2e158m15_3limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e158m15_3limbs/fesub.c b/src/Specific/montgomery64_2e158m15_3limbs/fesub.c
deleted file mode 100644
index 793809f57..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/fesub.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _subborrow_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _subborrow_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _subborrow_u64(x17, x6, x10, &x19);
- { uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- { uint64_t x22 = (x21 & 0xfffffffffffffff1L);
- { uint64_t x24; uint8_t x25 = _addcarryx_u64(0x0, x13, x22, &x24);
- { uint64_t x26 = (x21 & 0xffffffffffffffffL);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x25, x16, x26, &x28);
- { uint64_t x30 = (x21 & 0x3fffffff);
- { uint64_t x32; uint8_t _ = _addcarryx_u64(x29, x19, x30, &x32);
- out[0] = x24;
- out[1] = x28;
- out[2] = x32;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e158m15_3limbs/fesub.v b/src/Specific/montgomery64_2e158m15_3limbs/fesub.v
deleted file mode 100644
index bac77b733..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e158m15_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e158m15_3limbs/fesubDisplay.log b/src/Specific/montgomery64_2e158m15_3limbs/fesubDisplay.log
deleted file mode 100644
index 5539940ca..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = subborrow_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = subborrow_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = subborrow_u64(x17, x6, x10);
- uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- uint64_t x22 = (x21 & 0xfffffffffffffff1L);
- uint64_t x24, uint8_t x25 = addcarryx_u64(0x0, x13, x22);
- uint64_t x26 = (x21 & 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x25, x16, x26);
- uint64_t x30 = (x21 & 0x3fffffff);
- uint64_t x32, uint8_t _ = addcarryx_u64(x29, x19, x30);
- (Return x32, Return x28, Return x24))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e158m15_3limbs/fesubDisplay.v b/src/Specific/montgomery64_2e158m15_3limbs/fesubDisplay.v
deleted file mode 100644
index 4a7dc6241..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e158m15_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e158m15_3limbs/py_interpreter.sh b/src/Specific/montgomery64_2e158m15_3limbs/py_interpreter.sh
deleted file mode 100755
index d0abc4958..000000000
--- a/src/Specific/montgomery64_2e158m15_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**158 - 15' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e165m25_3limbs/CurveParameters.v b/src/Specific/montgomery64_2e165m25_3limbs/CurveParameters.v
deleted file mode 100644
index 3915190cb..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^165 - 25
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 64;
- bitwidth := 64;
- s := 2^165;
- c := [(1, 25)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e165m25_3limbs/Synthesis.v b/src/Specific/montgomery64_2e165m25_3limbs/Synthesis.v
deleted file mode 100644
index 456a52b20..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e165m25_3limbs.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/montgomery64_2e165m25_3limbs/compiler.sh b/src/Specific/montgomery64_2e165m25_3limbs/compiler.sh
deleted file mode 100755
index d97d73b6c..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/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,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<165) - 25' "$@"
diff --git a/src/Specific/montgomery64_2e165m25_3limbs/compilerxx.sh b/src/Specific/montgomery64_2e165m25_3limbs/compilerxx.sh
deleted file mode 100755
index e2b7ad2d1..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/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,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<165) - 25' "$@"
diff --git a/src/Specific/montgomery64_2e165m25_3limbs/feadd.c b/src/Specific/montgomery64_2e165m25_3limbs/feadd.c
deleted file mode 100644
index 8fd844560..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/feadd.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _addcarryx_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _addcarryx_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _addcarryx_u64(x17, x6, x10, &x19);
- { uint64_t x22; uint8_t x23 = _subborrow_u64(0x0, x13, 0xffffffffffffffe7L, &x22);
- { uint64_t x25; uint8_t x26 = _subborrow_u64(x23, x16, 0xffffffffffffffffL, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x19, 0x1fffffffff, &x28);
- { uint64_t _; uint8_t x32 = _subborrow_u64(x29, x20, 0x0, &_);
- { uint64_t x33 = cmovznz64(x32, x28, x19);
- { uint64_t x34 = cmovznz64(x32, x25, x16);
- { uint64_t x35 = cmovznz64(x32, x22, x13);
- out[0] = x35;
- out[1] = x34;
- out[2] = x33;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e165m25_3limbs/feadd.v b/src/Specific/montgomery64_2e165m25_3limbs/feadd.v
deleted file mode 100644
index f0c72969d..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e165m25_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e165m25_3limbs/feaddDisplay.log b/src/Specific/montgomery64_2e165m25_3limbs/feaddDisplay.log
deleted file mode 100644
index 909d6bf32..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = addcarryx_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = addcarryx_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = addcarryx_u64(x17, x6, x10);
- uint64_t x22, uint8_t x23 = subborrow_u64(0x0, x13, 0xffffffffffffffe7L);
- uint64_t x25, uint8_t x26 = subborrow_u64(x23, x16, 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x19, 0x1fffffffff);
- uint64_t _, uint8_t x32 = subborrow_u64(x29, x20, 0x0);
- uint64_t x33 = cmovznz64(x32, x28, x19);
- uint64_t x34 = cmovznz64(x32, x25, x16);
- uint64_t x35 = cmovznz64(x32, x22, x13);
- return (x33, x34, x35))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e165m25_3limbs/feaddDisplay.v b/src/Specific/montgomery64_2e165m25_3limbs/feaddDisplay.v
deleted file mode 100644
index f60581326..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e165m25_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e165m25_3limbs/femul.c b/src/Specific/montgomery64_2e165m25_3limbs/femul.c
deleted file mode 100644
index 1a40a737b..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/femul.c
+++ /dev/null
@@ -1,80 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x14; uint64_t x13 = _mulx_u64(x5, x9, &x14);
- { uint64_t x17; uint64_t x16 = _mulx_u64(x5, x11, &x17);
- { uint64_t x20; uint64_t x19 = _mulx_u64(x5, x10, &x20);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x14, x16, &x22);
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(x23, x17, x19, &x25);
- { uint64_t x28; uint8_t _ = _addcarryx_u64(0x0, x26, x20, &x28);
- { uint64_t _; uint64_t x31 = _mulx_u64(x13, 0x8f5c28f5c28f5c29L, &_);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x31, 0xffffffffffffffe7L, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x31, 0xffffffffffffffffL, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x31, 0x1fffffffff, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x35, x37, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x38, x40, &x46);
- { uint64_t x49; uint8_t _ = _addcarryx_u64(0x0, x47, x41, &x49);
- { uint64_t _; uint8_t x53 = _addcarryx_u64(0x0, x13, x34, &_);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x22, x43, &x55);
- { uint64_t x58; uint8_t x59 = _addcarryx_u64(x56, x25, x46, &x58);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x59, x28, x49, &x61);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x7, x9, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x7, x11, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x7, x10, &x71);
- { uint64_t x73; uint8_t x74 = _addcarryx_u64(0x0, x65, x67, &x73);
- { uint64_t x76; uint8_t x77 = _addcarryx_u64(x74, x68, x70, &x76);
- { uint64_t x79; uint8_t _ = _addcarryx_u64(0x0, x77, x71, &x79);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x55, x64, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x58, x73, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x61, x76, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x62, x79, &x91);
- { uint64_t _; uint64_t x94 = _mulx_u64(x82, 0x8f5c28f5c28f5c29L, &_);
- { uint64_t x98; uint64_t x97 = _mulx_u64(x94, 0xffffffffffffffe7L, &x98);
- { uint64_t x101; uint64_t x100 = _mulx_u64(x94, 0xffffffffffffffffL, &x101);
- { uint64_t x104; uint64_t x103 = _mulx_u64(x94, 0x1fffffffff, &x104);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(0x0, x98, x100, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x101, x103, &x109);
- { uint64_t x112; uint8_t _ = _addcarryx_u64(0x0, x110, x104, &x112);
- { uint64_t _; uint8_t x116 = _addcarryx_u64(0x0, x82, x97, &_);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x85, x106, &x118);
- { uint64_t x121; uint8_t x122 = _addcarryx_u64(x119, x88, x109, &x121);
- { uint64_t x124; uint8_t x125 = _addcarryx_u64(x122, x91, x112, &x124);
- { uint8_t x126 = (x125 + x92);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x6, x9, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x6, x11, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x6, x10, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x129, x131, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x132, x134, &x140);
- { uint64_t x143; uint8_t _ = _addcarryx_u64(0x0, x141, x135, &x143);
- { uint64_t x146; uint8_t x147 = _addcarryx_u64(0x0, x118, x128, &x146);
- { uint64_t x149; uint8_t x150 = _addcarryx_u64(x147, x121, x137, &x149);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x124, x140, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x126, x143, &x155);
- { uint64_t _; uint64_t x158 = _mulx_u64(x146, 0x8f5c28f5c28f5c29L, &_);
- { uint64_t x162; uint64_t x161 = _mulx_u64(x158, 0xffffffffffffffe7L, &x162);
- { uint64_t x165; uint64_t x164 = _mulx_u64(x158, 0xffffffffffffffffL, &x165);
- { uint64_t x168; uint64_t x167 = _mulx_u64(x158, 0x1fffffffff, &x168);
- { uint64_t x170; uint8_t x171 = _addcarryx_u64(0x0, x162, x164, &x170);
- { uint64_t x173; uint8_t x174 = _addcarryx_u64(x171, x165, x167, &x173);
- { uint64_t x176; uint8_t _ = _addcarryx_u64(0x0, x174, x168, &x176);
- { uint64_t _; uint8_t x180 = _addcarryx_u64(0x0, x146, x161, &_);
- { uint64_t x182; uint8_t x183 = _addcarryx_u64(x180, x149, x170, &x182);
- { uint64_t x185; uint8_t x186 = _addcarryx_u64(x183, x152, x173, &x185);
- { uint64_t x188; uint8_t x189 = _addcarryx_u64(x186, x155, x176, &x188);
- { uint8_t x190 = (x189 + x156);
- { uint64_t x192; uint8_t x193 = _subborrow_u64(0x0, x182, 0xffffffffffffffe7L, &x192);
- { uint64_t x195; uint8_t x196 = _subborrow_u64(x193, x185, 0xffffffffffffffffL, &x195);
- { uint64_t x198; uint8_t x199 = _subborrow_u64(x196, x188, 0x1fffffffff, &x198);
- { uint64_t _; uint8_t x202 = _subborrow_u64(x199, x190, 0x0, &_);
- { uint64_t x203 = cmovznz64(x202, x198, x188);
- { uint64_t x204 = cmovznz64(x202, x195, x185);
- { uint64_t x205 = cmovznz64(x202, x192, x182);
- out[0] = x205;
- out[1] = x204;
- out[2] = x203;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e165m25_3limbs/femul.v b/src/Specific/montgomery64_2e165m25_3limbs/femul.v
deleted file mode 100644
index 9d3fdafd9..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e165m25_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e165m25_3limbs/femulDisplay.log b/src/Specific/montgomery64_2e165m25_3limbs/femulDisplay.log
deleted file mode 100644
index 695ddce41..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,75 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint64_t x14 = mulx_u64(x5, x9);
- uint64_t x16, uint64_t x17 = mulx_u64(x5, x11);
- uint64_t x19, uint64_t x20 = mulx_u64(x5, x10);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x14, x16);
- uint64_t x25, uint8_t x26 = addcarryx_u64(x23, x17, x19);
- uint64_t x28, uint8_t _ = addcarryx_u64(0x0, x26, x20);
- uint64_t x31, uint64_t _ = mulx_u64(x13, 0x8f5c28f5c28f5c29L);
- uint64_t x34, uint64_t x35 = mulx_u64(x31, 0xffffffffffffffe7L);
- uint64_t x37, uint64_t x38 = mulx_u64(x31, 0xffffffffffffffffL);
- uint64_t x40, uint64_t x41 = mulx_u64(x31, 0x1fffffffff);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x35, x37);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x38, x40);
- uint64_t x49, uint8_t _ = addcarryx_u64(0x0, x47, x41);
- uint64_t _, uint8_t x53 = addcarryx_u64(0x0, x13, x34);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x22, x43);
- uint64_t x58, uint8_t x59 = addcarryx_u64(x56, x25, x46);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x59, x28, x49);
- uint64_t x64, uint64_t x65 = mulx_u64(x7, x9);
- uint64_t x67, uint64_t x68 = mulx_u64(x7, x11);
- uint64_t x70, uint64_t x71 = mulx_u64(x7, x10);
- uint64_t x73, uint8_t x74 = addcarryx_u64(0x0, x65, x67);
- uint64_t x76, uint8_t x77 = addcarryx_u64(x74, x68, x70);
- uint64_t x79, uint8_t _ = addcarryx_u64(0x0, x77, x71);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x55, x64);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x58, x73);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x61, x76);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x62, x79);
- uint64_t x94, uint64_t _ = mulx_u64(x82, 0x8f5c28f5c28f5c29L);
- uint64_t x97, uint64_t x98 = mulx_u64(x94, 0xffffffffffffffe7L);
- uint64_t x100, uint64_t x101 = mulx_u64(x94, 0xffffffffffffffffL);
- uint64_t x103, uint64_t x104 = mulx_u64(x94, 0x1fffffffff);
- uint64_t x106, uint8_t x107 = addcarryx_u64(0x0, x98, x100);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x101, x103);
- uint64_t x112, uint8_t _ = addcarryx_u64(0x0, x110, x104);
- uint64_t _, uint8_t x116 = addcarryx_u64(0x0, x82, x97);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x85, x106);
- uint64_t x121, uint8_t x122 = addcarryx_u64(x119, x88, x109);
- uint64_t x124, uint8_t x125 = addcarryx_u64(x122, x91, x112);
- uint8_t x126 = (x125 + x92);
- uint64_t x128, uint64_t x129 = mulx_u64(x6, x9);
- uint64_t x131, uint64_t x132 = mulx_u64(x6, x11);
- uint64_t x134, uint64_t x135 = mulx_u64(x6, x10);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x129, x131);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x132, x134);
- uint64_t x143, uint8_t _ = addcarryx_u64(0x0, x141, x135);
- uint64_t x146, uint8_t x147 = addcarryx_u64(0x0, x118, x128);
- uint64_t x149, uint8_t x150 = addcarryx_u64(x147, x121, x137);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x124, x140);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x126, x143);
- uint64_t x158, uint64_t _ = mulx_u64(x146, 0x8f5c28f5c28f5c29L);
- uint64_t x161, uint64_t x162 = mulx_u64(x158, 0xffffffffffffffe7L);
- uint64_t x164, uint64_t x165 = mulx_u64(x158, 0xffffffffffffffffL);
- uint64_t x167, uint64_t x168 = mulx_u64(x158, 0x1fffffffff);
- uint64_t x170, uint8_t x171 = addcarryx_u64(0x0, x162, x164);
- uint64_t x173, uint8_t x174 = addcarryx_u64(x171, x165, x167);
- uint64_t x176, uint8_t _ = addcarryx_u64(0x0, x174, x168);
- uint64_t _, uint8_t x180 = addcarryx_u64(0x0, x146, x161);
- uint64_t x182, uint8_t x183 = addcarryx_u64(x180, x149, x170);
- uint64_t x185, uint8_t x186 = addcarryx_u64(x183, x152, x173);
- uint64_t x188, uint8_t x189 = addcarryx_u64(x186, x155, x176);
- uint8_t x190 = (x189 + x156);
- uint64_t x192, uint8_t x193 = subborrow_u64(0x0, x182, 0xffffffffffffffe7L);
- uint64_t x195, uint8_t x196 = subborrow_u64(x193, x185, 0xffffffffffffffffL);
- uint64_t x198, uint8_t x199 = subborrow_u64(x196, x188, 0x1fffffffff);
- uint64_t _, uint8_t x202 = subborrow_u64(x199, x190, 0x0);
- uint64_t x203 = cmovznz64(x202, x198, x188);
- uint64_t x204 = cmovznz64(x202, x195, x185);
- uint64_t x205 = cmovznz64(x202, x192, x182);
- return (x203, x204, x205))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e165m25_3limbs/femulDisplay.v b/src/Specific/montgomery64_2e165m25_3limbs/femulDisplay.v
deleted file mode 100644
index deff6e70a..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e165m25_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e165m25_3limbs/fenz.c b/src/Specific/montgomery64_2e165m25_3limbs/fenz.c
deleted file mode 100644
index 2632a2866..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/fenz.c
+++ /dev/null
@@ -1,9 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x5 = (x4 | x3);
- { uint64_t x6 = (x2 | x5);
- out[0] = x6;
- }}}}}
-}
diff --git a/src/Specific/montgomery64_2e165m25_3limbs/fenz.v b/src/Specific/montgomery64_2e165m25_3limbs/fenz.v
deleted file mode 100644
index ac40c5c44..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e165m25_3limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e165m25_3limbs/fenzDisplay.log b/src/Specific/montgomery64_2e165m25_3limbs/fenzDisplay.log
deleted file mode 100644
index 680322e0f..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/fenzDisplay.log
+++ /dev/null
@@ -1,9 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x5 = (x4 | x3);
- uint64_t x6 = (x2 | x5);
- return x6)
-x
- : word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e165m25_3limbs/fenzDisplay.v b/src/Specific/montgomery64_2e165m25_3limbs/fenzDisplay.v
deleted file mode 100644
index 7162ad896..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e165m25_3limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e165m25_3limbs/feopp.c b/src/Specific/montgomery64_2e165m25_3limbs/feopp.c
deleted file mode 100644
index fbb4ed8d5..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/feopp.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void feopp(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6; uint8_t x7 = _subborrow_u64(0x0, 0x0, x2, &x6);
- { uint64_t x9; uint8_t x10 = _subborrow_u64(x7, 0x0, x4, &x9);
- { uint64_t x12; uint8_t x13 = _subborrow_u64(x10, 0x0, x3, &x12);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0xffffffffffffffe7L);
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x6, x15, &x17);
- { uint64_t x19 = (x14 & 0xffffffffffffffffL);
- { uint64_t x21; uint8_t x22 = _addcarryx_u64(x18, x9, x19, &x21);
- { uint64_t x23 = (x14 & 0x1fffffffff);
- { uint64_t x25; uint8_t _ = _addcarryx_u64(x22, x12, x23, &x25);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e165m25_3limbs/feopp.v b/src/Specific/montgomery64_2e165m25_3limbs/feopp.v
deleted file mode 100644
index 5862ef613..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e165m25_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e165m25_3limbs/feoppDisplay.log b/src/Specific/montgomery64_2e165m25_3limbs/feoppDisplay.log
deleted file mode 100644
index c82d3098f..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/feoppDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x9, uint8_t x10 = subborrow_u64(x7, 0x0, x4);
- uint64_t x12, uint8_t x13 = subborrow_u64(x10, 0x0, x3);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0xffffffffffffffe7L);
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x6, x15);
- uint64_t x19 = (x14 & 0xffffffffffffffffL);
- uint64_t x21, uint8_t x22 = addcarryx_u64(x18, x9, x19);
- uint64_t x23 = (x14 & 0x1fffffffff);
- uint64_t x25, uint8_t _ = addcarryx_u64(x22, x12, x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e165m25_3limbs/feoppDisplay.v b/src/Specific/montgomery64_2e165m25_3limbs/feoppDisplay.v
deleted file mode 100644
index 6370b90e8..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e165m25_3limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e165m25_3limbs/fesquare.c b/src/Specific/montgomery64_2e165m25_3limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e165m25_3limbs/fesub.c b/src/Specific/montgomery64_2e165m25_3limbs/fesub.c
deleted file mode 100644
index b7cec3891..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/fesub.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _subborrow_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _subborrow_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _subborrow_u64(x17, x6, x10, &x19);
- { uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- { uint64_t x22 = (x21 & 0xffffffffffffffe7L);
- { uint64_t x24; uint8_t x25 = _addcarryx_u64(0x0, x13, x22, &x24);
- { uint64_t x26 = (x21 & 0xffffffffffffffffL);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x25, x16, x26, &x28);
- { uint64_t x30 = (x21 & 0x1fffffffff);
- { uint64_t x32; uint8_t _ = _addcarryx_u64(x29, x19, x30, &x32);
- out[0] = x24;
- out[1] = x28;
- out[2] = x32;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e165m25_3limbs/fesub.v b/src/Specific/montgomery64_2e165m25_3limbs/fesub.v
deleted file mode 100644
index 0e0d27ef5..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e165m25_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e165m25_3limbs/fesubDisplay.log b/src/Specific/montgomery64_2e165m25_3limbs/fesubDisplay.log
deleted file mode 100644
index 505664e2b..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = subborrow_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = subborrow_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = subborrow_u64(x17, x6, x10);
- uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- uint64_t x22 = (x21 & 0xffffffffffffffe7L);
- uint64_t x24, uint8_t x25 = addcarryx_u64(0x0, x13, x22);
- uint64_t x26 = (x21 & 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x25, x16, x26);
- uint64_t x30 = (x21 & 0x1fffffffff);
- uint64_t x32, uint8_t _ = addcarryx_u64(x29, x19, x30);
- (Return x32, Return x28, Return x24))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e165m25_3limbs/fesubDisplay.v b/src/Specific/montgomery64_2e165m25_3limbs/fesubDisplay.v
deleted file mode 100644
index 1b9af7896..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e165m25_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e165m25_3limbs/py_interpreter.sh b/src/Specific/montgomery64_2e165m25_3limbs/py_interpreter.sh
deleted file mode 100755
index 5a5da3087..000000000
--- a/src/Specific/montgomery64_2e165m25_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**165 - 25' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e166m5_3limbs/CurveParameters.v b/src/Specific/montgomery64_2e166m5_3limbs/CurveParameters.v
deleted file mode 100644
index b80118c5e..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^166 - 5
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 64;
- bitwidth := 64;
- s := 2^166;
- c := [(1, 5)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e166m5_3limbs/Synthesis.v b/src/Specific/montgomery64_2e166m5_3limbs/Synthesis.v
deleted file mode 100644
index 4f271165d..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e166m5_3limbs.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/montgomery64_2e166m5_3limbs/compiler.sh b/src/Specific/montgomery64_2e166m5_3limbs/compiler.sh
deleted file mode 100755
index 12ae63583..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/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,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<166) - 5' "$@"
diff --git a/src/Specific/montgomery64_2e166m5_3limbs/compilerxx.sh b/src/Specific/montgomery64_2e166m5_3limbs/compilerxx.sh
deleted file mode 100755
index 26aebde3f..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/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,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<166) - 5' "$@"
diff --git a/src/Specific/montgomery64_2e166m5_3limbs/feadd.c b/src/Specific/montgomery64_2e166m5_3limbs/feadd.c
deleted file mode 100644
index ddd0e590c..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/feadd.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _addcarryx_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _addcarryx_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _addcarryx_u64(x17, x6, x10, &x19);
- { uint64_t x22; uint8_t x23 = _subborrow_u64(0x0, x13, 0xfffffffffffffffbL, &x22);
- { uint64_t x25; uint8_t x26 = _subborrow_u64(x23, x16, 0xffffffffffffffffL, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x19, 0x3fffffffff, &x28);
- { uint64_t _; uint8_t x32 = _subborrow_u64(x29, x20, 0x0, &_);
- { uint64_t x33 = cmovznz64(x32, x28, x19);
- { uint64_t x34 = cmovznz64(x32, x25, x16);
- { uint64_t x35 = cmovznz64(x32, x22, x13);
- out[0] = x35;
- out[1] = x34;
- out[2] = x33;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e166m5_3limbs/feadd.v b/src/Specific/montgomery64_2e166m5_3limbs/feadd.v
deleted file mode 100644
index e6cfdc036..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e166m5_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e166m5_3limbs/feaddDisplay.log b/src/Specific/montgomery64_2e166m5_3limbs/feaddDisplay.log
deleted file mode 100644
index 91dc59768..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = addcarryx_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = addcarryx_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = addcarryx_u64(x17, x6, x10);
- uint64_t x22, uint8_t x23 = subborrow_u64(0x0, x13, 0xfffffffffffffffbL);
- uint64_t x25, uint8_t x26 = subborrow_u64(x23, x16, 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x19, 0x3fffffffff);
- uint64_t _, uint8_t x32 = subborrow_u64(x29, x20, 0x0);
- uint64_t x33 = cmovznz64(x32, x28, x19);
- uint64_t x34 = cmovznz64(x32, x25, x16);
- uint64_t x35 = cmovznz64(x32, x22, x13);
- return (x33, x34, x35))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e166m5_3limbs/feaddDisplay.v b/src/Specific/montgomery64_2e166m5_3limbs/feaddDisplay.v
deleted file mode 100644
index a93030528..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e166m5_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e166m5_3limbs/femul.c b/src/Specific/montgomery64_2e166m5_3limbs/femul.c
deleted file mode 100644
index 90f8a9ba1..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/femul.c
+++ /dev/null
@@ -1,80 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x14; uint64_t x13 = _mulx_u64(x5, x9, &x14);
- { uint64_t x17; uint64_t x16 = _mulx_u64(x5, x11, &x17);
- { uint64_t x20; uint64_t x19 = _mulx_u64(x5, x10, &x20);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x14, x16, &x22);
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(x23, x17, x19, &x25);
- { uint64_t x28; uint8_t _ = _addcarryx_u64(0x0, x26, x20, &x28);
- { uint64_t _; uint64_t x31 = _mulx_u64(x13, 0xcccccccccccccccdL, &_);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x31, 0xfffffffffffffffbL, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x31, 0xffffffffffffffffL, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x31, 0x3fffffffff, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x35, x37, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x38, x40, &x46);
- { uint64_t x49; uint8_t _ = _addcarryx_u64(0x0, x47, x41, &x49);
- { uint64_t _; uint8_t x53 = _addcarryx_u64(0x0, x13, x34, &_);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x22, x43, &x55);
- { uint64_t x58; uint8_t x59 = _addcarryx_u64(x56, x25, x46, &x58);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x59, x28, x49, &x61);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x7, x9, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x7, x11, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x7, x10, &x71);
- { uint64_t x73; uint8_t x74 = _addcarryx_u64(0x0, x65, x67, &x73);
- { uint64_t x76; uint8_t x77 = _addcarryx_u64(x74, x68, x70, &x76);
- { uint64_t x79; uint8_t _ = _addcarryx_u64(0x0, x77, x71, &x79);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x55, x64, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x58, x73, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x61, x76, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x62, x79, &x91);
- { uint64_t _; uint64_t x94 = _mulx_u64(x82, 0xcccccccccccccccdL, &_);
- { uint64_t x98; uint64_t x97 = _mulx_u64(x94, 0xfffffffffffffffbL, &x98);
- { uint64_t x101; uint64_t x100 = _mulx_u64(x94, 0xffffffffffffffffL, &x101);
- { uint64_t x104; uint64_t x103 = _mulx_u64(x94, 0x3fffffffff, &x104);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(0x0, x98, x100, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x101, x103, &x109);
- { uint64_t x112; uint8_t _ = _addcarryx_u64(0x0, x110, x104, &x112);
- { uint64_t _; uint8_t x116 = _addcarryx_u64(0x0, x82, x97, &_);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x85, x106, &x118);
- { uint64_t x121; uint8_t x122 = _addcarryx_u64(x119, x88, x109, &x121);
- { uint64_t x124; uint8_t x125 = _addcarryx_u64(x122, x91, x112, &x124);
- { uint8_t x126 = (x125 + x92);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x6, x9, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x6, x11, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x6, x10, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x129, x131, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x132, x134, &x140);
- { uint64_t x143; uint8_t _ = _addcarryx_u64(0x0, x141, x135, &x143);
- { uint64_t x146; uint8_t x147 = _addcarryx_u64(0x0, x118, x128, &x146);
- { uint64_t x149; uint8_t x150 = _addcarryx_u64(x147, x121, x137, &x149);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x124, x140, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x126, x143, &x155);
- { uint64_t _; uint64_t x158 = _mulx_u64(x146, 0xcccccccccccccccdL, &_);
- { uint64_t x162; uint64_t x161 = _mulx_u64(x158, 0xfffffffffffffffbL, &x162);
- { uint64_t x165; uint64_t x164 = _mulx_u64(x158, 0xffffffffffffffffL, &x165);
- { uint64_t x168; uint64_t x167 = _mulx_u64(x158, 0x3fffffffff, &x168);
- { uint64_t x170; uint8_t x171 = _addcarryx_u64(0x0, x162, x164, &x170);
- { uint64_t x173; uint8_t x174 = _addcarryx_u64(x171, x165, x167, &x173);
- { uint64_t x176; uint8_t _ = _addcarryx_u64(0x0, x174, x168, &x176);
- { uint64_t _; uint8_t x180 = _addcarryx_u64(0x0, x146, x161, &_);
- { uint64_t x182; uint8_t x183 = _addcarryx_u64(x180, x149, x170, &x182);
- { uint64_t x185; uint8_t x186 = _addcarryx_u64(x183, x152, x173, &x185);
- { uint64_t x188; uint8_t x189 = _addcarryx_u64(x186, x155, x176, &x188);
- { uint8_t x190 = (x189 + x156);
- { uint64_t x192; uint8_t x193 = _subborrow_u64(0x0, x182, 0xfffffffffffffffbL, &x192);
- { uint64_t x195; uint8_t x196 = _subborrow_u64(x193, x185, 0xffffffffffffffffL, &x195);
- { uint64_t x198; uint8_t x199 = _subborrow_u64(x196, x188, 0x3fffffffff, &x198);
- { uint64_t _; uint8_t x202 = _subborrow_u64(x199, x190, 0x0, &_);
- { uint64_t x203 = cmovznz64(x202, x198, x188);
- { uint64_t x204 = cmovznz64(x202, x195, x185);
- { uint64_t x205 = cmovznz64(x202, x192, x182);
- out[0] = x205;
- out[1] = x204;
- out[2] = x203;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e166m5_3limbs/femul.v b/src/Specific/montgomery64_2e166m5_3limbs/femul.v
deleted file mode 100644
index 180bb0a9b..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e166m5_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e166m5_3limbs/femulDisplay.log b/src/Specific/montgomery64_2e166m5_3limbs/femulDisplay.log
deleted file mode 100644
index 71c77bb01..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,75 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint64_t x14 = mulx_u64(x5, x9);
- uint64_t x16, uint64_t x17 = mulx_u64(x5, x11);
- uint64_t x19, uint64_t x20 = mulx_u64(x5, x10);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x14, x16);
- uint64_t x25, uint8_t x26 = addcarryx_u64(x23, x17, x19);
- uint64_t x28, uint8_t _ = addcarryx_u64(0x0, x26, x20);
- uint64_t x31, uint64_t _ = mulx_u64(x13, 0xcccccccccccccccdL);
- uint64_t x34, uint64_t x35 = mulx_u64(x31, 0xfffffffffffffffbL);
- uint64_t x37, uint64_t x38 = mulx_u64(x31, 0xffffffffffffffffL);
- uint64_t x40, uint64_t x41 = mulx_u64(x31, 0x3fffffffff);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x35, x37);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x38, x40);
- uint64_t x49, uint8_t _ = addcarryx_u64(0x0, x47, x41);
- uint64_t _, uint8_t x53 = addcarryx_u64(0x0, x13, x34);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x22, x43);
- uint64_t x58, uint8_t x59 = addcarryx_u64(x56, x25, x46);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x59, x28, x49);
- uint64_t x64, uint64_t x65 = mulx_u64(x7, x9);
- uint64_t x67, uint64_t x68 = mulx_u64(x7, x11);
- uint64_t x70, uint64_t x71 = mulx_u64(x7, x10);
- uint64_t x73, uint8_t x74 = addcarryx_u64(0x0, x65, x67);
- uint64_t x76, uint8_t x77 = addcarryx_u64(x74, x68, x70);
- uint64_t x79, uint8_t _ = addcarryx_u64(0x0, x77, x71);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x55, x64);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x58, x73);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x61, x76);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x62, x79);
- uint64_t x94, uint64_t _ = mulx_u64(x82, 0xcccccccccccccccdL);
- uint64_t x97, uint64_t x98 = mulx_u64(x94, 0xfffffffffffffffbL);
- uint64_t x100, uint64_t x101 = mulx_u64(x94, 0xffffffffffffffffL);
- uint64_t x103, uint64_t x104 = mulx_u64(x94, 0x3fffffffff);
- uint64_t x106, uint8_t x107 = addcarryx_u64(0x0, x98, x100);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x101, x103);
- uint64_t x112, uint8_t _ = addcarryx_u64(0x0, x110, x104);
- uint64_t _, uint8_t x116 = addcarryx_u64(0x0, x82, x97);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x85, x106);
- uint64_t x121, uint8_t x122 = addcarryx_u64(x119, x88, x109);
- uint64_t x124, uint8_t x125 = addcarryx_u64(x122, x91, x112);
- uint8_t x126 = (x125 + x92);
- uint64_t x128, uint64_t x129 = mulx_u64(x6, x9);
- uint64_t x131, uint64_t x132 = mulx_u64(x6, x11);
- uint64_t x134, uint64_t x135 = mulx_u64(x6, x10);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x129, x131);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x132, x134);
- uint64_t x143, uint8_t _ = addcarryx_u64(0x0, x141, x135);
- uint64_t x146, uint8_t x147 = addcarryx_u64(0x0, x118, x128);
- uint64_t x149, uint8_t x150 = addcarryx_u64(x147, x121, x137);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x124, x140);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x126, x143);
- uint64_t x158, uint64_t _ = mulx_u64(x146, 0xcccccccccccccccdL);
- uint64_t x161, uint64_t x162 = mulx_u64(x158, 0xfffffffffffffffbL);
- uint64_t x164, uint64_t x165 = mulx_u64(x158, 0xffffffffffffffffL);
- uint64_t x167, uint64_t x168 = mulx_u64(x158, 0x3fffffffff);
- uint64_t x170, uint8_t x171 = addcarryx_u64(0x0, x162, x164);
- uint64_t x173, uint8_t x174 = addcarryx_u64(x171, x165, x167);
- uint64_t x176, uint8_t _ = addcarryx_u64(0x0, x174, x168);
- uint64_t _, uint8_t x180 = addcarryx_u64(0x0, x146, x161);
- uint64_t x182, uint8_t x183 = addcarryx_u64(x180, x149, x170);
- uint64_t x185, uint8_t x186 = addcarryx_u64(x183, x152, x173);
- uint64_t x188, uint8_t x189 = addcarryx_u64(x186, x155, x176);
- uint8_t x190 = (x189 + x156);
- uint64_t x192, uint8_t x193 = subborrow_u64(0x0, x182, 0xfffffffffffffffbL);
- uint64_t x195, uint8_t x196 = subborrow_u64(x193, x185, 0xffffffffffffffffL);
- uint64_t x198, uint8_t x199 = subborrow_u64(x196, x188, 0x3fffffffff);
- uint64_t _, uint8_t x202 = subborrow_u64(x199, x190, 0x0);
- uint64_t x203 = cmovznz64(x202, x198, x188);
- uint64_t x204 = cmovznz64(x202, x195, x185);
- uint64_t x205 = cmovznz64(x202, x192, x182);
- return (x203, x204, x205))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e166m5_3limbs/femulDisplay.v b/src/Specific/montgomery64_2e166m5_3limbs/femulDisplay.v
deleted file mode 100644
index 880ca464b..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e166m5_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e166m5_3limbs/fenz.c b/src/Specific/montgomery64_2e166m5_3limbs/fenz.c
deleted file mode 100644
index 2632a2866..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/fenz.c
+++ /dev/null
@@ -1,9 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x5 = (x4 | x3);
- { uint64_t x6 = (x2 | x5);
- out[0] = x6;
- }}}}}
-}
diff --git a/src/Specific/montgomery64_2e166m5_3limbs/fenz.v b/src/Specific/montgomery64_2e166m5_3limbs/fenz.v
deleted file mode 100644
index 78394c814..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e166m5_3limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e166m5_3limbs/fenzDisplay.log b/src/Specific/montgomery64_2e166m5_3limbs/fenzDisplay.log
deleted file mode 100644
index 680322e0f..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/fenzDisplay.log
+++ /dev/null
@@ -1,9 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x5 = (x4 | x3);
- uint64_t x6 = (x2 | x5);
- return x6)
-x
- : word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e166m5_3limbs/fenzDisplay.v b/src/Specific/montgomery64_2e166m5_3limbs/fenzDisplay.v
deleted file mode 100644
index 97e275229..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e166m5_3limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e166m5_3limbs/feopp.c b/src/Specific/montgomery64_2e166m5_3limbs/feopp.c
deleted file mode 100644
index c99dc61d8..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/feopp.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void feopp(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6; uint8_t x7 = _subborrow_u64(0x0, 0x0, x2, &x6);
- { uint64_t x9; uint8_t x10 = _subborrow_u64(x7, 0x0, x4, &x9);
- { uint64_t x12; uint8_t x13 = _subborrow_u64(x10, 0x0, x3, &x12);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0xfffffffffffffffbL);
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x6, x15, &x17);
- { uint64_t x19 = (x14 & 0xffffffffffffffffL);
- { uint64_t x21; uint8_t x22 = _addcarryx_u64(x18, x9, x19, &x21);
- { uint64_t x23 = (x14 & 0x3fffffffff);
- { uint64_t x25; uint8_t _ = _addcarryx_u64(x22, x12, x23, &x25);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e166m5_3limbs/feopp.v b/src/Specific/montgomery64_2e166m5_3limbs/feopp.v
deleted file mode 100644
index ec8152367..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e166m5_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e166m5_3limbs/feoppDisplay.log b/src/Specific/montgomery64_2e166m5_3limbs/feoppDisplay.log
deleted file mode 100644
index e58f8f51f..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/feoppDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x9, uint8_t x10 = subborrow_u64(x7, 0x0, x4);
- uint64_t x12, uint8_t x13 = subborrow_u64(x10, 0x0, x3);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0xfffffffffffffffbL);
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x6, x15);
- uint64_t x19 = (x14 & 0xffffffffffffffffL);
- uint64_t x21, uint8_t x22 = addcarryx_u64(x18, x9, x19);
- uint64_t x23 = (x14 & 0x3fffffffff);
- uint64_t x25, uint8_t _ = addcarryx_u64(x22, x12, x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e166m5_3limbs/feoppDisplay.v b/src/Specific/montgomery64_2e166m5_3limbs/feoppDisplay.v
deleted file mode 100644
index fead2b95a..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e166m5_3limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e166m5_3limbs/fesquare.c b/src/Specific/montgomery64_2e166m5_3limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e166m5_3limbs/fesub.c b/src/Specific/montgomery64_2e166m5_3limbs/fesub.c
deleted file mode 100644
index f4c87ad6d..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/fesub.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _subborrow_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _subborrow_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _subborrow_u64(x17, x6, x10, &x19);
- { uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- { uint64_t x22 = (x21 & 0xfffffffffffffffbL);
- { uint64_t x24; uint8_t x25 = _addcarryx_u64(0x0, x13, x22, &x24);
- { uint64_t x26 = (x21 & 0xffffffffffffffffL);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x25, x16, x26, &x28);
- { uint64_t x30 = (x21 & 0x3fffffffff);
- { uint64_t x32; uint8_t _ = _addcarryx_u64(x29, x19, x30, &x32);
- out[0] = x24;
- out[1] = x28;
- out[2] = x32;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e166m5_3limbs/fesub.v b/src/Specific/montgomery64_2e166m5_3limbs/fesub.v
deleted file mode 100644
index 51fcfecb1..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e166m5_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e166m5_3limbs/fesubDisplay.log b/src/Specific/montgomery64_2e166m5_3limbs/fesubDisplay.log
deleted file mode 100644
index 3ab9ec12d..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = subborrow_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = subborrow_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = subborrow_u64(x17, x6, x10);
- uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- uint64_t x22 = (x21 & 0xfffffffffffffffbL);
- uint64_t x24, uint8_t x25 = addcarryx_u64(0x0, x13, x22);
- uint64_t x26 = (x21 & 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x25, x16, x26);
- uint64_t x30 = (x21 & 0x3fffffffff);
- uint64_t x32, uint8_t _ = addcarryx_u64(x29, x19, x30);
- (Return x32, Return x28, Return x24))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e166m5_3limbs/fesubDisplay.v b/src/Specific/montgomery64_2e166m5_3limbs/fesubDisplay.v
deleted file mode 100644
index 71293c831..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e166m5_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e166m5_3limbs/py_interpreter.sh b/src/Specific/montgomery64_2e166m5_3limbs/py_interpreter.sh
deleted file mode 100755
index a5e2020e0..000000000
--- a/src/Specific/montgomery64_2e166m5_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**166 - 5' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e171m19_3limbs/CurveParameters.v b/src/Specific/montgomery64_2e171m19_3limbs/CurveParameters.v
deleted file mode 100644
index 776c36f1e..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^171 - 19
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 64;
- bitwidth := 64;
- s := 2^171;
- c := [(1, 19)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e171m19_3limbs/Synthesis.v b/src/Specific/montgomery64_2e171m19_3limbs/Synthesis.v
deleted file mode 100644
index 78cf8e037..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e171m19_3limbs.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/montgomery64_2e171m19_3limbs/compiler.sh b/src/Specific/montgomery64_2e171m19_3limbs/compiler.sh
deleted file mode 100755
index 713ccab40..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<171) - 19' "$@"
diff --git a/src/Specific/montgomery64_2e171m19_3limbs/compilerxx.sh b/src/Specific/montgomery64_2e171m19_3limbs/compilerxx.sh
deleted file mode 100755
index 7b5702392..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<171) - 19' "$@"
diff --git a/src/Specific/montgomery64_2e171m19_3limbs/feadd.c b/src/Specific/montgomery64_2e171m19_3limbs/feadd.c
deleted file mode 100644
index cfc2a28d9..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/feadd.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _addcarryx_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _addcarryx_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _addcarryx_u64(x17, x6, x10, &x19);
- { uint64_t x22; uint8_t x23 = _subborrow_u64(0x0, x13, 0xffffffffffffffedL, &x22);
- { uint64_t x25; uint8_t x26 = _subborrow_u64(x23, x16, 0xffffffffffffffffL, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x19, 0x7ffffffffff, &x28);
- { uint64_t _; uint8_t x32 = _subborrow_u64(x29, x20, 0x0, &_);
- { uint64_t x33 = cmovznz64(x32, x28, x19);
- { uint64_t x34 = cmovznz64(x32, x25, x16);
- { uint64_t x35 = cmovznz64(x32, x22, x13);
- out[0] = x35;
- out[1] = x34;
- out[2] = x33;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e171m19_3limbs/feadd.v b/src/Specific/montgomery64_2e171m19_3limbs/feadd.v
deleted file mode 100644
index 2b8f9218b..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e171m19_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e171m19_3limbs/feaddDisplay.log b/src/Specific/montgomery64_2e171m19_3limbs/feaddDisplay.log
deleted file mode 100644
index e1dee8a70..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = addcarryx_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = addcarryx_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = addcarryx_u64(x17, x6, x10);
- uint64_t x22, uint8_t x23 = subborrow_u64(0x0, x13, 0xffffffffffffffedL);
- uint64_t x25, uint8_t x26 = subborrow_u64(x23, x16, 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x19, 0x7ffffffffff);
- uint64_t _, uint8_t x32 = subborrow_u64(x29, x20, 0x0);
- uint64_t x33 = cmovznz64(x32, x28, x19);
- uint64_t x34 = cmovznz64(x32, x25, x16);
- uint64_t x35 = cmovznz64(x32, x22, x13);
- return (x33, x34, x35))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e171m19_3limbs/feaddDisplay.v b/src/Specific/montgomery64_2e171m19_3limbs/feaddDisplay.v
deleted file mode 100644
index bcbd06ffc..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e171m19_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e171m19_3limbs/femul.c b/src/Specific/montgomery64_2e171m19_3limbs/femul.c
deleted file mode 100644
index f48dbe98d..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/femul.c
+++ /dev/null
@@ -1,80 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x14; uint64_t x13 = _mulx_u64(x5, x9, &x14);
- { uint64_t x17; uint64_t x16 = _mulx_u64(x5, x11, &x17);
- { uint64_t x20; uint64_t x19 = _mulx_u64(x5, x10, &x20);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x14, x16, &x22);
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(x23, x17, x19, &x25);
- { uint64_t x28; uint8_t _ = _addcarryx_u64(0x0, x26, x20, &x28);
- { uint64_t _; uint64_t x31 = _mulx_u64(x13, 0x86bca1af286bca1bL, &_);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x31, 0xffffffffffffffedL, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x31, 0xffffffffffffffffL, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x31, 0x7ffffffffff, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x35, x37, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x38, x40, &x46);
- { uint64_t x49; uint8_t _ = _addcarryx_u64(0x0, x47, x41, &x49);
- { uint64_t _; uint8_t x53 = _addcarryx_u64(0x0, x13, x34, &_);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x22, x43, &x55);
- { uint64_t x58; uint8_t x59 = _addcarryx_u64(x56, x25, x46, &x58);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x59, x28, x49, &x61);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x7, x9, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x7, x11, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x7, x10, &x71);
- { uint64_t x73; uint8_t x74 = _addcarryx_u64(0x0, x65, x67, &x73);
- { uint64_t x76; uint8_t x77 = _addcarryx_u64(x74, x68, x70, &x76);
- { uint64_t x79; uint8_t _ = _addcarryx_u64(0x0, x77, x71, &x79);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x55, x64, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x58, x73, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x61, x76, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x62, x79, &x91);
- { uint64_t _; uint64_t x94 = _mulx_u64(x82, 0x86bca1af286bca1bL, &_);
- { uint64_t x98; uint64_t x97 = _mulx_u64(x94, 0xffffffffffffffedL, &x98);
- { uint64_t x101; uint64_t x100 = _mulx_u64(x94, 0xffffffffffffffffL, &x101);
- { uint64_t x104; uint64_t x103 = _mulx_u64(x94, 0x7ffffffffff, &x104);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(0x0, x98, x100, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x101, x103, &x109);
- { uint64_t x112; uint8_t _ = _addcarryx_u64(0x0, x110, x104, &x112);
- { uint64_t _; uint8_t x116 = _addcarryx_u64(0x0, x82, x97, &_);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x85, x106, &x118);
- { uint64_t x121; uint8_t x122 = _addcarryx_u64(x119, x88, x109, &x121);
- { uint64_t x124; uint8_t x125 = _addcarryx_u64(x122, x91, x112, &x124);
- { uint8_t x126 = (x125 + x92);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x6, x9, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x6, x11, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x6, x10, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x129, x131, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x132, x134, &x140);
- { uint64_t x143; uint8_t _ = _addcarryx_u64(0x0, x141, x135, &x143);
- { uint64_t x146; uint8_t x147 = _addcarryx_u64(0x0, x118, x128, &x146);
- { uint64_t x149; uint8_t x150 = _addcarryx_u64(x147, x121, x137, &x149);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x124, x140, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x126, x143, &x155);
- { uint64_t _; uint64_t x158 = _mulx_u64(x146, 0x86bca1af286bca1bL, &_);
- { uint64_t x162; uint64_t x161 = _mulx_u64(x158, 0xffffffffffffffedL, &x162);
- { uint64_t x165; uint64_t x164 = _mulx_u64(x158, 0xffffffffffffffffL, &x165);
- { uint64_t x168; uint64_t x167 = _mulx_u64(x158, 0x7ffffffffff, &x168);
- { uint64_t x170; uint8_t x171 = _addcarryx_u64(0x0, x162, x164, &x170);
- { uint64_t x173; uint8_t x174 = _addcarryx_u64(x171, x165, x167, &x173);
- { uint64_t x176; uint8_t _ = _addcarryx_u64(0x0, x174, x168, &x176);
- { uint64_t _; uint8_t x180 = _addcarryx_u64(0x0, x146, x161, &_);
- { uint64_t x182; uint8_t x183 = _addcarryx_u64(x180, x149, x170, &x182);
- { uint64_t x185; uint8_t x186 = _addcarryx_u64(x183, x152, x173, &x185);
- { uint64_t x188; uint8_t x189 = _addcarryx_u64(x186, x155, x176, &x188);
- { uint8_t x190 = (x189 + x156);
- { uint64_t x192; uint8_t x193 = _subborrow_u64(0x0, x182, 0xffffffffffffffedL, &x192);
- { uint64_t x195; uint8_t x196 = _subborrow_u64(x193, x185, 0xffffffffffffffffL, &x195);
- { uint64_t x198; uint8_t x199 = _subborrow_u64(x196, x188, 0x7ffffffffff, &x198);
- { uint64_t _; uint8_t x202 = _subborrow_u64(x199, x190, 0x0, &_);
- { uint64_t x203 = cmovznz64(x202, x198, x188);
- { uint64_t x204 = cmovznz64(x202, x195, x185);
- { uint64_t x205 = cmovznz64(x202, x192, x182);
- out[0] = x205;
- out[1] = x204;
- out[2] = x203;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e171m19_3limbs/femul.v b/src/Specific/montgomery64_2e171m19_3limbs/femul.v
deleted file mode 100644
index d7e8f70d2..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e171m19_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e171m19_3limbs/femulDisplay.log b/src/Specific/montgomery64_2e171m19_3limbs/femulDisplay.log
deleted file mode 100644
index 1025fdd76..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,75 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint64_t x14 = mulx_u64(x5, x9);
- uint64_t x16, uint64_t x17 = mulx_u64(x5, x11);
- uint64_t x19, uint64_t x20 = mulx_u64(x5, x10);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x14, x16);
- uint64_t x25, uint8_t x26 = addcarryx_u64(x23, x17, x19);
- uint64_t x28, uint8_t _ = addcarryx_u64(0x0, x26, x20);
- uint64_t x31, uint64_t _ = mulx_u64(x13, 0x86bca1af286bca1bL);
- uint64_t x34, uint64_t x35 = mulx_u64(x31, 0xffffffffffffffedL);
- uint64_t x37, uint64_t x38 = mulx_u64(x31, 0xffffffffffffffffL);
- uint64_t x40, uint64_t x41 = mulx_u64(x31, 0x7ffffffffff);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x35, x37);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x38, x40);
- uint64_t x49, uint8_t _ = addcarryx_u64(0x0, x47, x41);
- uint64_t _, uint8_t x53 = addcarryx_u64(0x0, x13, x34);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x22, x43);
- uint64_t x58, uint8_t x59 = addcarryx_u64(x56, x25, x46);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x59, x28, x49);
- uint64_t x64, uint64_t x65 = mulx_u64(x7, x9);
- uint64_t x67, uint64_t x68 = mulx_u64(x7, x11);
- uint64_t x70, uint64_t x71 = mulx_u64(x7, x10);
- uint64_t x73, uint8_t x74 = addcarryx_u64(0x0, x65, x67);
- uint64_t x76, uint8_t x77 = addcarryx_u64(x74, x68, x70);
- uint64_t x79, uint8_t _ = addcarryx_u64(0x0, x77, x71);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x55, x64);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x58, x73);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x61, x76);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x62, x79);
- uint64_t x94, uint64_t _ = mulx_u64(x82, 0x86bca1af286bca1bL);
- uint64_t x97, uint64_t x98 = mulx_u64(x94, 0xffffffffffffffedL);
- uint64_t x100, uint64_t x101 = mulx_u64(x94, 0xffffffffffffffffL);
- uint64_t x103, uint64_t x104 = mulx_u64(x94, 0x7ffffffffff);
- uint64_t x106, uint8_t x107 = addcarryx_u64(0x0, x98, x100);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x101, x103);
- uint64_t x112, uint8_t _ = addcarryx_u64(0x0, x110, x104);
- uint64_t _, uint8_t x116 = addcarryx_u64(0x0, x82, x97);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x85, x106);
- uint64_t x121, uint8_t x122 = addcarryx_u64(x119, x88, x109);
- uint64_t x124, uint8_t x125 = addcarryx_u64(x122, x91, x112);
- uint8_t x126 = (x125 + x92);
- uint64_t x128, uint64_t x129 = mulx_u64(x6, x9);
- uint64_t x131, uint64_t x132 = mulx_u64(x6, x11);
- uint64_t x134, uint64_t x135 = mulx_u64(x6, x10);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x129, x131);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x132, x134);
- uint64_t x143, uint8_t _ = addcarryx_u64(0x0, x141, x135);
- uint64_t x146, uint8_t x147 = addcarryx_u64(0x0, x118, x128);
- uint64_t x149, uint8_t x150 = addcarryx_u64(x147, x121, x137);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x124, x140);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x126, x143);
- uint64_t x158, uint64_t _ = mulx_u64(x146, 0x86bca1af286bca1bL);
- uint64_t x161, uint64_t x162 = mulx_u64(x158, 0xffffffffffffffedL);
- uint64_t x164, uint64_t x165 = mulx_u64(x158, 0xffffffffffffffffL);
- uint64_t x167, uint64_t x168 = mulx_u64(x158, 0x7ffffffffff);
- uint64_t x170, uint8_t x171 = addcarryx_u64(0x0, x162, x164);
- uint64_t x173, uint8_t x174 = addcarryx_u64(x171, x165, x167);
- uint64_t x176, uint8_t _ = addcarryx_u64(0x0, x174, x168);
- uint64_t _, uint8_t x180 = addcarryx_u64(0x0, x146, x161);
- uint64_t x182, uint8_t x183 = addcarryx_u64(x180, x149, x170);
- uint64_t x185, uint8_t x186 = addcarryx_u64(x183, x152, x173);
- uint64_t x188, uint8_t x189 = addcarryx_u64(x186, x155, x176);
- uint8_t x190 = (x189 + x156);
- uint64_t x192, uint8_t x193 = subborrow_u64(0x0, x182, 0xffffffffffffffedL);
- uint64_t x195, uint8_t x196 = subborrow_u64(x193, x185, 0xffffffffffffffffL);
- uint64_t x198, uint8_t x199 = subborrow_u64(x196, x188, 0x7ffffffffff);
- uint64_t _, uint8_t x202 = subborrow_u64(x199, x190, 0x0);
- uint64_t x203 = cmovznz64(x202, x198, x188);
- uint64_t x204 = cmovznz64(x202, x195, x185);
- uint64_t x205 = cmovznz64(x202, x192, x182);
- return (x203, x204, x205))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e171m19_3limbs/femulDisplay.v b/src/Specific/montgomery64_2e171m19_3limbs/femulDisplay.v
deleted file mode 100644
index 8155241f7..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e171m19_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e171m19_3limbs/fenz.c b/src/Specific/montgomery64_2e171m19_3limbs/fenz.c
deleted file mode 100644
index 2632a2866..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/fenz.c
+++ /dev/null
@@ -1,9 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x5 = (x4 | x3);
- { uint64_t x6 = (x2 | x5);
- out[0] = x6;
- }}}}}
-}
diff --git a/src/Specific/montgomery64_2e171m19_3limbs/fenz.v b/src/Specific/montgomery64_2e171m19_3limbs/fenz.v
deleted file mode 100644
index d10741407..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e171m19_3limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e171m19_3limbs/fenzDisplay.log b/src/Specific/montgomery64_2e171m19_3limbs/fenzDisplay.log
deleted file mode 100644
index 680322e0f..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/fenzDisplay.log
+++ /dev/null
@@ -1,9 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x5 = (x4 | x3);
- uint64_t x6 = (x2 | x5);
- return x6)
-x
- : word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e171m19_3limbs/fenzDisplay.v b/src/Specific/montgomery64_2e171m19_3limbs/fenzDisplay.v
deleted file mode 100644
index e2b2b174c..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e171m19_3limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e171m19_3limbs/feopp.c b/src/Specific/montgomery64_2e171m19_3limbs/feopp.c
deleted file mode 100644
index e62a4e9b6..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/feopp.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void feopp(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6; uint8_t x7 = _subborrow_u64(0x0, 0x0, x2, &x6);
- { uint64_t x9; uint8_t x10 = _subborrow_u64(x7, 0x0, x4, &x9);
- { uint64_t x12; uint8_t x13 = _subborrow_u64(x10, 0x0, x3, &x12);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0xffffffffffffffedL);
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x6, x15, &x17);
- { uint64_t x19 = (x14 & 0xffffffffffffffffL);
- { uint64_t x21; uint8_t x22 = _addcarryx_u64(x18, x9, x19, &x21);
- { uint64_t x23 = (x14 & 0x7ffffffffff);
- { uint64_t x25; uint8_t _ = _addcarryx_u64(x22, x12, x23, &x25);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e171m19_3limbs/feopp.v b/src/Specific/montgomery64_2e171m19_3limbs/feopp.v
deleted file mode 100644
index 846d7a13e..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e171m19_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e171m19_3limbs/feoppDisplay.log b/src/Specific/montgomery64_2e171m19_3limbs/feoppDisplay.log
deleted file mode 100644
index 4c3fc354d..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/feoppDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x9, uint8_t x10 = subborrow_u64(x7, 0x0, x4);
- uint64_t x12, uint8_t x13 = subborrow_u64(x10, 0x0, x3);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0xffffffffffffffedL);
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x6, x15);
- uint64_t x19 = (x14 & 0xffffffffffffffffL);
- uint64_t x21, uint8_t x22 = addcarryx_u64(x18, x9, x19);
- uint64_t x23 = (x14 & 0x7ffffffffff);
- uint64_t x25, uint8_t _ = addcarryx_u64(x22, x12, x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e171m19_3limbs/feoppDisplay.v b/src/Specific/montgomery64_2e171m19_3limbs/feoppDisplay.v
deleted file mode 100644
index 9952d5190..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e171m19_3limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e171m19_3limbs/fesquare.c b/src/Specific/montgomery64_2e171m19_3limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e171m19_3limbs/fesub.c b/src/Specific/montgomery64_2e171m19_3limbs/fesub.c
deleted file mode 100644
index dc95081fa..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/fesub.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _subborrow_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _subborrow_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _subborrow_u64(x17, x6, x10, &x19);
- { uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- { uint64_t x22 = (x21 & 0xffffffffffffffedL);
- { uint64_t x24; uint8_t x25 = _addcarryx_u64(0x0, x13, x22, &x24);
- { uint64_t x26 = (x21 & 0xffffffffffffffffL);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x25, x16, x26, &x28);
- { uint64_t x30 = (x21 & 0x7ffffffffff);
- { uint64_t x32; uint8_t _ = _addcarryx_u64(x29, x19, x30, &x32);
- out[0] = x24;
- out[1] = x28;
- out[2] = x32;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e171m19_3limbs/fesub.v b/src/Specific/montgomery64_2e171m19_3limbs/fesub.v
deleted file mode 100644
index a1a1c0f5c..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e171m19_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e171m19_3limbs/fesubDisplay.log b/src/Specific/montgomery64_2e171m19_3limbs/fesubDisplay.log
deleted file mode 100644
index aa902b08f..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = subborrow_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = subborrow_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = subborrow_u64(x17, x6, x10);
- uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- uint64_t x22 = (x21 & 0xffffffffffffffedL);
- uint64_t x24, uint8_t x25 = addcarryx_u64(0x0, x13, x22);
- uint64_t x26 = (x21 & 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x25, x16, x26);
- uint64_t x30 = (x21 & 0x7ffffffffff);
- uint64_t x32, uint8_t _ = addcarryx_u64(x29, x19, x30);
- (Return x32, Return x28, Return x24))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e171m19_3limbs/fesubDisplay.v b/src/Specific/montgomery64_2e171m19_3limbs/fesubDisplay.v
deleted file mode 100644
index f3039138f..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e171m19_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e171m19_3limbs/py_interpreter.sh b/src/Specific/montgomery64_2e171m19_3limbs/py_interpreter.sh
deleted file mode 100755
index 0fe99a0e3..000000000
--- a/src/Specific/montgomery64_2e171m19_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**171 - 19' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e174m17_3limbs/CurveParameters.v b/src/Specific/montgomery64_2e174m17_3limbs/CurveParameters.v
deleted file mode 100644
index 73ad4b3fe..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^174 - 17
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 64;
- bitwidth := 64;
- s := 2^174;
- c := [(1, 17)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e174m17_3limbs/Synthesis.v b/src/Specific/montgomery64_2e174m17_3limbs/Synthesis.v
deleted file mode 100644
index 70568abd2..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e174m17_3limbs.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/montgomery64_2e174m17_3limbs/compiler.sh b/src/Specific/montgomery64_2e174m17_3limbs/compiler.sh
deleted file mode 100755
index a9128a83d..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<174) - 17' "$@"
diff --git a/src/Specific/montgomery64_2e174m17_3limbs/compilerxx.sh b/src/Specific/montgomery64_2e174m17_3limbs/compilerxx.sh
deleted file mode 100755
index 399df141f..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<174) - 17' "$@"
diff --git a/src/Specific/montgomery64_2e174m17_3limbs/feadd.c b/src/Specific/montgomery64_2e174m17_3limbs/feadd.c
deleted file mode 100644
index 0b55b0a1f..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/feadd.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _addcarryx_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _addcarryx_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _addcarryx_u64(x17, x6, x10, &x19);
- { uint64_t x22; uint8_t x23 = _subborrow_u64(0x0, x13, 0xffffffffffffffefL, &x22);
- { uint64_t x25; uint8_t x26 = _subborrow_u64(x23, x16, 0xffffffffffffffffL, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x19, 0x3fffffffffff, &x28);
- { uint64_t _; uint8_t x32 = _subborrow_u64(x29, x20, 0x0, &_);
- { uint64_t x33 = cmovznz64(x32, x28, x19);
- { uint64_t x34 = cmovznz64(x32, x25, x16);
- { uint64_t x35 = cmovznz64(x32, x22, x13);
- out[0] = x35;
- out[1] = x34;
- out[2] = x33;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e174m17_3limbs/feadd.v b/src/Specific/montgomery64_2e174m17_3limbs/feadd.v
deleted file mode 100644
index d7d6f3077..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e174m17_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e174m17_3limbs/feaddDisplay.log b/src/Specific/montgomery64_2e174m17_3limbs/feaddDisplay.log
deleted file mode 100644
index 8e63c8563..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = addcarryx_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = addcarryx_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = addcarryx_u64(x17, x6, x10);
- uint64_t x22, uint8_t x23 = subborrow_u64(0x0, x13, 0xffffffffffffffefL);
- uint64_t x25, uint8_t x26 = subborrow_u64(x23, x16, 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x19, 0x3fffffffffff);
- uint64_t _, uint8_t x32 = subborrow_u64(x29, x20, 0x0);
- uint64_t x33 = cmovznz64(x32, x28, x19);
- uint64_t x34 = cmovznz64(x32, x25, x16);
- uint64_t x35 = cmovznz64(x32, x22, x13);
- return (x33, x34, x35))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e174m17_3limbs/feaddDisplay.v b/src/Specific/montgomery64_2e174m17_3limbs/feaddDisplay.v
deleted file mode 100644
index 6f5eb8593..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e174m17_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e174m17_3limbs/femul.c b/src/Specific/montgomery64_2e174m17_3limbs/femul.c
deleted file mode 100644
index 1b4daae65..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/femul.c
+++ /dev/null
@@ -1,80 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x14; uint64_t x13 = _mulx_u64(x5, x9, &x14);
- { uint64_t x17; uint64_t x16 = _mulx_u64(x5, x11, &x17);
- { uint64_t x20; uint64_t x19 = _mulx_u64(x5, x10, &x20);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x14, x16, &x22);
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(x23, x17, x19, &x25);
- { uint64_t x28; uint8_t _ = _addcarryx_u64(0x0, x26, x20, &x28);
- { uint64_t _; uint64_t x31 = _mulx_u64(x13, 0xf0f0f0f0f0f0f0f1L, &_);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x31, 0xffffffffffffffefL, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x31, 0xffffffffffffffffL, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x31, 0x3fffffffffff, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x35, x37, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x38, x40, &x46);
- { uint64_t x49; uint8_t _ = _addcarryx_u64(0x0, x47, x41, &x49);
- { uint64_t _; uint8_t x53 = _addcarryx_u64(0x0, x13, x34, &_);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x22, x43, &x55);
- { uint64_t x58; uint8_t x59 = _addcarryx_u64(x56, x25, x46, &x58);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x59, x28, x49, &x61);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x7, x9, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x7, x11, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x7, x10, &x71);
- { uint64_t x73; uint8_t x74 = _addcarryx_u64(0x0, x65, x67, &x73);
- { uint64_t x76; uint8_t x77 = _addcarryx_u64(x74, x68, x70, &x76);
- { uint64_t x79; uint8_t _ = _addcarryx_u64(0x0, x77, x71, &x79);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x55, x64, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x58, x73, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x61, x76, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x62, x79, &x91);
- { uint64_t _; uint64_t x94 = _mulx_u64(x82, 0xf0f0f0f0f0f0f0f1L, &_);
- { uint64_t x98; uint64_t x97 = _mulx_u64(x94, 0xffffffffffffffefL, &x98);
- { uint64_t x101; uint64_t x100 = _mulx_u64(x94, 0xffffffffffffffffL, &x101);
- { uint64_t x104; uint64_t x103 = _mulx_u64(x94, 0x3fffffffffff, &x104);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(0x0, x98, x100, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x101, x103, &x109);
- { uint64_t x112; uint8_t _ = _addcarryx_u64(0x0, x110, x104, &x112);
- { uint64_t _; uint8_t x116 = _addcarryx_u64(0x0, x82, x97, &_);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x85, x106, &x118);
- { uint64_t x121; uint8_t x122 = _addcarryx_u64(x119, x88, x109, &x121);
- { uint64_t x124; uint8_t x125 = _addcarryx_u64(x122, x91, x112, &x124);
- { uint8_t x126 = (x125 + x92);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x6, x9, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x6, x11, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x6, x10, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x129, x131, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x132, x134, &x140);
- { uint64_t x143; uint8_t _ = _addcarryx_u64(0x0, x141, x135, &x143);
- { uint64_t x146; uint8_t x147 = _addcarryx_u64(0x0, x118, x128, &x146);
- { uint64_t x149; uint8_t x150 = _addcarryx_u64(x147, x121, x137, &x149);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x124, x140, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x126, x143, &x155);
- { uint64_t _; uint64_t x158 = _mulx_u64(x146, 0xf0f0f0f0f0f0f0f1L, &_);
- { uint64_t x162; uint64_t x161 = _mulx_u64(x158, 0xffffffffffffffefL, &x162);
- { uint64_t x165; uint64_t x164 = _mulx_u64(x158, 0xffffffffffffffffL, &x165);
- { uint64_t x168; uint64_t x167 = _mulx_u64(x158, 0x3fffffffffff, &x168);
- { uint64_t x170; uint8_t x171 = _addcarryx_u64(0x0, x162, x164, &x170);
- { uint64_t x173; uint8_t x174 = _addcarryx_u64(x171, x165, x167, &x173);
- { uint64_t x176; uint8_t _ = _addcarryx_u64(0x0, x174, x168, &x176);
- { uint64_t _; uint8_t x180 = _addcarryx_u64(0x0, x146, x161, &_);
- { uint64_t x182; uint8_t x183 = _addcarryx_u64(x180, x149, x170, &x182);
- { uint64_t x185; uint8_t x186 = _addcarryx_u64(x183, x152, x173, &x185);
- { uint64_t x188; uint8_t x189 = _addcarryx_u64(x186, x155, x176, &x188);
- { uint8_t x190 = (x189 + x156);
- { uint64_t x192; uint8_t x193 = _subborrow_u64(0x0, x182, 0xffffffffffffffefL, &x192);
- { uint64_t x195; uint8_t x196 = _subborrow_u64(x193, x185, 0xffffffffffffffffL, &x195);
- { uint64_t x198; uint8_t x199 = _subborrow_u64(x196, x188, 0x3fffffffffff, &x198);
- { uint64_t _; uint8_t x202 = _subborrow_u64(x199, x190, 0x0, &_);
- { uint64_t x203 = cmovznz64(x202, x198, x188);
- { uint64_t x204 = cmovznz64(x202, x195, x185);
- { uint64_t x205 = cmovznz64(x202, x192, x182);
- out[0] = x205;
- out[1] = x204;
- out[2] = x203;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e174m17_3limbs/femul.v b/src/Specific/montgomery64_2e174m17_3limbs/femul.v
deleted file mode 100644
index 812ee9c1b..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e174m17_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e174m17_3limbs/femulDisplay.log b/src/Specific/montgomery64_2e174m17_3limbs/femulDisplay.log
deleted file mode 100644
index 8fbd68327..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,75 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint64_t x14 = mulx_u64(x5, x9);
- uint64_t x16, uint64_t x17 = mulx_u64(x5, x11);
- uint64_t x19, uint64_t x20 = mulx_u64(x5, x10);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x14, x16);
- uint64_t x25, uint8_t x26 = addcarryx_u64(x23, x17, x19);
- uint64_t x28, uint8_t _ = addcarryx_u64(0x0, x26, x20);
- uint64_t x31, uint64_t _ = mulx_u64(x13, 0xf0f0f0f0f0f0f0f1L);
- uint64_t x34, uint64_t x35 = mulx_u64(x31, 0xffffffffffffffefL);
- uint64_t x37, uint64_t x38 = mulx_u64(x31, 0xffffffffffffffffL);
- uint64_t x40, uint64_t x41 = mulx_u64(x31, 0x3fffffffffff);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x35, x37);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x38, x40);
- uint64_t x49, uint8_t _ = addcarryx_u64(0x0, x47, x41);
- uint64_t _, uint8_t x53 = addcarryx_u64(0x0, x13, x34);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x22, x43);
- uint64_t x58, uint8_t x59 = addcarryx_u64(x56, x25, x46);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x59, x28, x49);
- uint64_t x64, uint64_t x65 = mulx_u64(x7, x9);
- uint64_t x67, uint64_t x68 = mulx_u64(x7, x11);
- uint64_t x70, uint64_t x71 = mulx_u64(x7, x10);
- uint64_t x73, uint8_t x74 = addcarryx_u64(0x0, x65, x67);
- uint64_t x76, uint8_t x77 = addcarryx_u64(x74, x68, x70);
- uint64_t x79, uint8_t _ = addcarryx_u64(0x0, x77, x71);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x55, x64);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x58, x73);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x61, x76);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x62, x79);
- uint64_t x94, uint64_t _ = mulx_u64(x82, 0xf0f0f0f0f0f0f0f1L);
- uint64_t x97, uint64_t x98 = mulx_u64(x94, 0xffffffffffffffefL);
- uint64_t x100, uint64_t x101 = mulx_u64(x94, 0xffffffffffffffffL);
- uint64_t x103, uint64_t x104 = mulx_u64(x94, 0x3fffffffffff);
- uint64_t x106, uint8_t x107 = addcarryx_u64(0x0, x98, x100);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x101, x103);
- uint64_t x112, uint8_t _ = addcarryx_u64(0x0, x110, x104);
- uint64_t _, uint8_t x116 = addcarryx_u64(0x0, x82, x97);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x85, x106);
- uint64_t x121, uint8_t x122 = addcarryx_u64(x119, x88, x109);
- uint64_t x124, uint8_t x125 = addcarryx_u64(x122, x91, x112);
- uint8_t x126 = (x125 + x92);
- uint64_t x128, uint64_t x129 = mulx_u64(x6, x9);
- uint64_t x131, uint64_t x132 = mulx_u64(x6, x11);
- uint64_t x134, uint64_t x135 = mulx_u64(x6, x10);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x129, x131);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x132, x134);
- uint64_t x143, uint8_t _ = addcarryx_u64(0x0, x141, x135);
- uint64_t x146, uint8_t x147 = addcarryx_u64(0x0, x118, x128);
- uint64_t x149, uint8_t x150 = addcarryx_u64(x147, x121, x137);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x124, x140);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x126, x143);
- uint64_t x158, uint64_t _ = mulx_u64(x146, 0xf0f0f0f0f0f0f0f1L);
- uint64_t x161, uint64_t x162 = mulx_u64(x158, 0xffffffffffffffefL);
- uint64_t x164, uint64_t x165 = mulx_u64(x158, 0xffffffffffffffffL);
- uint64_t x167, uint64_t x168 = mulx_u64(x158, 0x3fffffffffff);
- uint64_t x170, uint8_t x171 = addcarryx_u64(0x0, x162, x164);
- uint64_t x173, uint8_t x174 = addcarryx_u64(x171, x165, x167);
- uint64_t x176, uint8_t _ = addcarryx_u64(0x0, x174, x168);
- uint64_t _, uint8_t x180 = addcarryx_u64(0x0, x146, x161);
- uint64_t x182, uint8_t x183 = addcarryx_u64(x180, x149, x170);
- uint64_t x185, uint8_t x186 = addcarryx_u64(x183, x152, x173);
- uint64_t x188, uint8_t x189 = addcarryx_u64(x186, x155, x176);
- uint8_t x190 = (x189 + x156);
- uint64_t x192, uint8_t x193 = subborrow_u64(0x0, x182, 0xffffffffffffffefL);
- uint64_t x195, uint8_t x196 = subborrow_u64(x193, x185, 0xffffffffffffffffL);
- uint64_t x198, uint8_t x199 = subborrow_u64(x196, x188, 0x3fffffffffff);
- uint64_t _, uint8_t x202 = subborrow_u64(x199, x190, 0x0);
- uint64_t x203 = cmovznz64(x202, x198, x188);
- uint64_t x204 = cmovznz64(x202, x195, x185);
- uint64_t x205 = cmovznz64(x202, x192, x182);
- return (x203, x204, x205))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e174m17_3limbs/femulDisplay.v b/src/Specific/montgomery64_2e174m17_3limbs/femulDisplay.v
deleted file mode 100644
index 85cdd2db3..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e174m17_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e174m17_3limbs/fenz.c b/src/Specific/montgomery64_2e174m17_3limbs/fenz.c
deleted file mode 100644
index 2632a2866..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/fenz.c
+++ /dev/null
@@ -1,9 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x5 = (x4 | x3);
- { uint64_t x6 = (x2 | x5);
- out[0] = x6;
- }}}}}
-}
diff --git a/src/Specific/montgomery64_2e174m17_3limbs/fenz.v b/src/Specific/montgomery64_2e174m17_3limbs/fenz.v
deleted file mode 100644
index 3320b4336..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e174m17_3limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e174m17_3limbs/fenzDisplay.log b/src/Specific/montgomery64_2e174m17_3limbs/fenzDisplay.log
deleted file mode 100644
index 680322e0f..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/fenzDisplay.log
+++ /dev/null
@@ -1,9 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x5 = (x4 | x3);
- uint64_t x6 = (x2 | x5);
- return x6)
-x
- : word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e174m17_3limbs/fenzDisplay.v b/src/Specific/montgomery64_2e174m17_3limbs/fenzDisplay.v
deleted file mode 100644
index fa6b82bf2..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e174m17_3limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e174m17_3limbs/feopp.c b/src/Specific/montgomery64_2e174m17_3limbs/feopp.c
deleted file mode 100644
index 9702a946c..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/feopp.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void feopp(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6; uint8_t x7 = _subborrow_u64(0x0, 0x0, x2, &x6);
- { uint64_t x9; uint8_t x10 = _subborrow_u64(x7, 0x0, x4, &x9);
- { uint64_t x12; uint8_t x13 = _subborrow_u64(x10, 0x0, x3, &x12);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0xffffffffffffffefL);
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x6, x15, &x17);
- { uint64_t x19 = (x14 & 0xffffffffffffffffL);
- { uint64_t x21; uint8_t x22 = _addcarryx_u64(x18, x9, x19, &x21);
- { uint64_t x23 = (x14 & 0x3fffffffffff);
- { uint64_t x25; uint8_t _ = _addcarryx_u64(x22, x12, x23, &x25);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e174m17_3limbs/feopp.v b/src/Specific/montgomery64_2e174m17_3limbs/feopp.v
deleted file mode 100644
index e0d83fe6d..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e174m17_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e174m17_3limbs/feoppDisplay.log b/src/Specific/montgomery64_2e174m17_3limbs/feoppDisplay.log
deleted file mode 100644
index c3b02e611..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/feoppDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x9, uint8_t x10 = subborrow_u64(x7, 0x0, x4);
- uint64_t x12, uint8_t x13 = subborrow_u64(x10, 0x0, x3);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0xffffffffffffffefL);
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x6, x15);
- uint64_t x19 = (x14 & 0xffffffffffffffffL);
- uint64_t x21, uint8_t x22 = addcarryx_u64(x18, x9, x19);
- uint64_t x23 = (x14 & 0x3fffffffffff);
- uint64_t x25, uint8_t _ = addcarryx_u64(x22, x12, x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e174m17_3limbs/feoppDisplay.v b/src/Specific/montgomery64_2e174m17_3limbs/feoppDisplay.v
deleted file mode 100644
index 7dd23b868..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e174m17_3limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e174m17_3limbs/fesquare.c b/src/Specific/montgomery64_2e174m17_3limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e174m17_3limbs/fesub.c b/src/Specific/montgomery64_2e174m17_3limbs/fesub.c
deleted file mode 100644
index 8c618bdcc..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/fesub.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _subborrow_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _subborrow_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _subborrow_u64(x17, x6, x10, &x19);
- { uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- { uint64_t x22 = (x21 & 0xffffffffffffffefL);
- { uint64_t x24; uint8_t x25 = _addcarryx_u64(0x0, x13, x22, &x24);
- { uint64_t x26 = (x21 & 0xffffffffffffffffL);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x25, x16, x26, &x28);
- { uint64_t x30 = (x21 & 0x3fffffffffff);
- { uint64_t x32; uint8_t _ = _addcarryx_u64(x29, x19, x30, &x32);
- out[0] = x24;
- out[1] = x28;
- out[2] = x32;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e174m17_3limbs/fesub.v b/src/Specific/montgomery64_2e174m17_3limbs/fesub.v
deleted file mode 100644
index e2e1b6fa7..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e174m17_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e174m17_3limbs/fesubDisplay.log b/src/Specific/montgomery64_2e174m17_3limbs/fesubDisplay.log
deleted file mode 100644
index 5274fa01c..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = subborrow_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = subborrow_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = subborrow_u64(x17, x6, x10);
- uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- uint64_t x22 = (x21 & 0xffffffffffffffefL);
- uint64_t x24, uint8_t x25 = addcarryx_u64(0x0, x13, x22);
- uint64_t x26 = (x21 & 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x25, x16, x26);
- uint64_t x30 = (x21 & 0x3fffffffffff);
- uint64_t x32, uint8_t _ = addcarryx_u64(x29, x19, x30);
- (Return x32, Return x28, Return x24))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e174m17_3limbs/fesubDisplay.v b/src/Specific/montgomery64_2e174m17_3limbs/fesubDisplay.v
deleted file mode 100644
index 7b02ea6e9..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e174m17_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e174m17_3limbs/py_interpreter.sh b/src/Specific/montgomery64_2e174m17_3limbs/py_interpreter.sh
deleted file mode 100755
index ac5979bf9..000000000
--- a/src/Specific/montgomery64_2e174m17_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**174 - 17' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e174m3_3limbs/CurveParameters.v b/src/Specific/montgomery64_2e174m3_3limbs/CurveParameters.v
deleted file mode 100644
index fe20134ec..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^174 - 3
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 64;
- bitwidth := 64;
- s := 2^174;
- c := [(1, 3)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e174m3_3limbs/Synthesis.v b/src/Specific/montgomery64_2e174m3_3limbs/Synthesis.v
deleted file mode 100644
index 4b475f02e..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e174m3_3limbs.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/montgomery64_2e174m3_3limbs/compiler.sh b/src/Specific/montgomery64_2e174m3_3limbs/compiler.sh
deleted file mode 100755
index 5f6e705d3..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<174) - 3' "$@"
diff --git a/src/Specific/montgomery64_2e174m3_3limbs/compilerxx.sh b/src/Specific/montgomery64_2e174m3_3limbs/compilerxx.sh
deleted file mode 100755
index cae2ec26f..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<174) - 3' "$@"
diff --git a/src/Specific/montgomery64_2e174m3_3limbs/feadd.c b/src/Specific/montgomery64_2e174m3_3limbs/feadd.c
deleted file mode 100644
index 3d83e59ed..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/feadd.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _addcarryx_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _addcarryx_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _addcarryx_u64(x17, x6, x10, &x19);
- { uint64_t x22; uint8_t x23 = _subborrow_u64(0x0, x13, 0xfffffffffffffffdL, &x22);
- { uint64_t x25; uint8_t x26 = _subborrow_u64(x23, x16, 0xffffffffffffffffL, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x19, 0x3fffffffffff, &x28);
- { uint64_t _; uint8_t x32 = _subborrow_u64(x29, x20, 0x0, &_);
- { uint64_t x33 = cmovznz64(x32, x28, x19);
- { uint64_t x34 = cmovznz64(x32, x25, x16);
- { uint64_t x35 = cmovznz64(x32, x22, x13);
- out[0] = x35;
- out[1] = x34;
- out[2] = x33;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e174m3_3limbs/feadd.v b/src/Specific/montgomery64_2e174m3_3limbs/feadd.v
deleted file mode 100644
index b43fdfa7b..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e174m3_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e174m3_3limbs/feaddDisplay.log b/src/Specific/montgomery64_2e174m3_3limbs/feaddDisplay.log
deleted file mode 100644
index c559ecee4..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = addcarryx_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = addcarryx_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = addcarryx_u64(x17, x6, x10);
- uint64_t x22, uint8_t x23 = subborrow_u64(0x0, x13, 0xfffffffffffffffdL);
- uint64_t x25, uint8_t x26 = subborrow_u64(x23, x16, 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x19, 0x3fffffffffff);
- uint64_t _, uint8_t x32 = subborrow_u64(x29, x20, 0x0);
- uint64_t x33 = cmovznz64(x32, x28, x19);
- uint64_t x34 = cmovznz64(x32, x25, x16);
- uint64_t x35 = cmovznz64(x32, x22, x13);
- return (x33, x34, x35))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e174m3_3limbs/feaddDisplay.v b/src/Specific/montgomery64_2e174m3_3limbs/feaddDisplay.v
deleted file mode 100644
index 514b81fda..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e174m3_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e174m3_3limbs/femul.c b/src/Specific/montgomery64_2e174m3_3limbs/femul.c
deleted file mode 100644
index ae9801d21..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/femul.c
+++ /dev/null
@@ -1,80 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x14; uint64_t x13 = _mulx_u64(x5, x9, &x14);
- { uint64_t x17; uint64_t x16 = _mulx_u64(x5, x11, &x17);
- { uint64_t x20; uint64_t x19 = _mulx_u64(x5, x10, &x20);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x14, x16, &x22);
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(x23, x17, x19, &x25);
- { uint64_t x28; uint8_t _ = _addcarryx_u64(0x0, x26, x20, &x28);
- { uint64_t _; uint64_t x31 = _mulx_u64(x13, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x31, 0xfffffffffffffffdL, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x31, 0xffffffffffffffffL, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x31, 0x3fffffffffff, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x35, x37, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x38, x40, &x46);
- { uint64_t x49; uint8_t _ = _addcarryx_u64(0x0, x47, x41, &x49);
- { uint64_t _; uint8_t x53 = _addcarryx_u64(0x0, x13, x34, &_);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x22, x43, &x55);
- { uint64_t x58; uint8_t x59 = _addcarryx_u64(x56, x25, x46, &x58);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x59, x28, x49, &x61);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x7, x9, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x7, x11, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x7, x10, &x71);
- { uint64_t x73; uint8_t x74 = _addcarryx_u64(0x0, x65, x67, &x73);
- { uint64_t x76; uint8_t x77 = _addcarryx_u64(x74, x68, x70, &x76);
- { uint64_t x79; uint8_t _ = _addcarryx_u64(0x0, x77, x71, &x79);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x55, x64, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x58, x73, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x61, x76, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x62, x79, &x91);
- { uint64_t _; uint64_t x94 = _mulx_u64(x82, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x98; uint64_t x97 = _mulx_u64(x94, 0xfffffffffffffffdL, &x98);
- { uint64_t x101; uint64_t x100 = _mulx_u64(x94, 0xffffffffffffffffL, &x101);
- { uint64_t x104; uint64_t x103 = _mulx_u64(x94, 0x3fffffffffff, &x104);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(0x0, x98, x100, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x101, x103, &x109);
- { uint64_t x112; uint8_t _ = _addcarryx_u64(0x0, x110, x104, &x112);
- { uint64_t _; uint8_t x116 = _addcarryx_u64(0x0, x82, x97, &_);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x85, x106, &x118);
- { uint64_t x121; uint8_t x122 = _addcarryx_u64(x119, x88, x109, &x121);
- { uint64_t x124; uint8_t x125 = _addcarryx_u64(x122, x91, x112, &x124);
- { uint8_t x126 = (x125 + x92);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x6, x9, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x6, x11, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x6, x10, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x129, x131, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x132, x134, &x140);
- { uint64_t x143; uint8_t _ = _addcarryx_u64(0x0, x141, x135, &x143);
- { uint64_t x146; uint8_t x147 = _addcarryx_u64(0x0, x118, x128, &x146);
- { uint64_t x149; uint8_t x150 = _addcarryx_u64(x147, x121, x137, &x149);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x124, x140, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x126, x143, &x155);
- { uint64_t _; uint64_t x158 = _mulx_u64(x146, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x162; uint64_t x161 = _mulx_u64(x158, 0xfffffffffffffffdL, &x162);
- { uint64_t x165; uint64_t x164 = _mulx_u64(x158, 0xffffffffffffffffL, &x165);
- { uint64_t x168; uint64_t x167 = _mulx_u64(x158, 0x3fffffffffff, &x168);
- { uint64_t x170; uint8_t x171 = _addcarryx_u64(0x0, x162, x164, &x170);
- { uint64_t x173; uint8_t x174 = _addcarryx_u64(x171, x165, x167, &x173);
- { uint64_t x176; uint8_t _ = _addcarryx_u64(0x0, x174, x168, &x176);
- { uint64_t _; uint8_t x180 = _addcarryx_u64(0x0, x146, x161, &_);
- { uint64_t x182; uint8_t x183 = _addcarryx_u64(x180, x149, x170, &x182);
- { uint64_t x185; uint8_t x186 = _addcarryx_u64(x183, x152, x173, &x185);
- { uint64_t x188; uint8_t x189 = _addcarryx_u64(x186, x155, x176, &x188);
- { uint8_t x190 = (x189 + x156);
- { uint64_t x192; uint8_t x193 = _subborrow_u64(0x0, x182, 0xfffffffffffffffdL, &x192);
- { uint64_t x195; uint8_t x196 = _subborrow_u64(x193, x185, 0xffffffffffffffffL, &x195);
- { uint64_t x198; uint8_t x199 = _subborrow_u64(x196, x188, 0x3fffffffffff, &x198);
- { uint64_t _; uint8_t x202 = _subborrow_u64(x199, x190, 0x0, &_);
- { uint64_t x203 = cmovznz64(x202, x198, x188);
- { uint64_t x204 = cmovznz64(x202, x195, x185);
- { uint64_t x205 = cmovznz64(x202, x192, x182);
- out[0] = x205;
- out[1] = x204;
- out[2] = x203;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e174m3_3limbs/femul.v b/src/Specific/montgomery64_2e174m3_3limbs/femul.v
deleted file mode 100644
index f3df08665..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e174m3_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e174m3_3limbs/femulDisplay.log b/src/Specific/montgomery64_2e174m3_3limbs/femulDisplay.log
deleted file mode 100644
index e8cea29ab..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,75 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint64_t x14 = mulx_u64(x5, x9);
- uint64_t x16, uint64_t x17 = mulx_u64(x5, x11);
- uint64_t x19, uint64_t x20 = mulx_u64(x5, x10);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x14, x16);
- uint64_t x25, uint8_t x26 = addcarryx_u64(x23, x17, x19);
- uint64_t x28, uint8_t _ = addcarryx_u64(0x0, x26, x20);
- uint64_t x31, uint64_t _ = mulx_u64(x13, 0xaaaaaaaaaaaaaaabL);
- uint64_t x34, uint64_t x35 = mulx_u64(x31, 0xfffffffffffffffdL);
- uint64_t x37, uint64_t x38 = mulx_u64(x31, 0xffffffffffffffffL);
- uint64_t x40, uint64_t x41 = mulx_u64(x31, 0x3fffffffffff);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x35, x37);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x38, x40);
- uint64_t x49, uint8_t _ = addcarryx_u64(0x0, x47, x41);
- uint64_t _, uint8_t x53 = addcarryx_u64(0x0, x13, x34);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x22, x43);
- uint64_t x58, uint8_t x59 = addcarryx_u64(x56, x25, x46);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x59, x28, x49);
- uint64_t x64, uint64_t x65 = mulx_u64(x7, x9);
- uint64_t x67, uint64_t x68 = mulx_u64(x7, x11);
- uint64_t x70, uint64_t x71 = mulx_u64(x7, x10);
- uint64_t x73, uint8_t x74 = addcarryx_u64(0x0, x65, x67);
- uint64_t x76, uint8_t x77 = addcarryx_u64(x74, x68, x70);
- uint64_t x79, uint8_t _ = addcarryx_u64(0x0, x77, x71);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x55, x64);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x58, x73);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x61, x76);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x62, x79);
- uint64_t x94, uint64_t _ = mulx_u64(x82, 0xaaaaaaaaaaaaaaabL);
- uint64_t x97, uint64_t x98 = mulx_u64(x94, 0xfffffffffffffffdL);
- uint64_t x100, uint64_t x101 = mulx_u64(x94, 0xffffffffffffffffL);
- uint64_t x103, uint64_t x104 = mulx_u64(x94, 0x3fffffffffff);
- uint64_t x106, uint8_t x107 = addcarryx_u64(0x0, x98, x100);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x101, x103);
- uint64_t x112, uint8_t _ = addcarryx_u64(0x0, x110, x104);
- uint64_t _, uint8_t x116 = addcarryx_u64(0x0, x82, x97);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x85, x106);
- uint64_t x121, uint8_t x122 = addcarryx_u64(x119, x88, x109);
- uint64_t x124, uint8_t x125 = addcarryx_u64(x122, x91, x112);
- uint8_t x126 = (x125 + x92);
- uint64_t x128, uint64_t x129 = mulx_u64(x6, x9);
- uint64_t x131, uint64_t x132 = mulx_u64(x6, x11);
- uint64_t x134, uint64_t x135 = mulx_u64(x6, x10);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x129, x131);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x132, x134);
- uint64_t x143, uint8_t _ = addcarryx_u64(0x0, x141, x135);
- uint64_t x146, uint8_t x147 = addcarryx_u64(0x0, x118, x128);
- uint64_t x149, uint8_t x150 = addcarryx_u64(x147, x121, x137);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x124, x140);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x126, x143);
- uint64_t x158, uint64_t _ = mulx_u64(x146, 0xaaaaaaaaaaaaaaabL);
- uint64_t x161, uint64_t x162 = mulx_u64(x158, 0xfffffffffffffffdL);
- uint64_t x164, uint64_t x165 = mulx_u64(x158, 0xffffffffffffffffL);
- uint64_t x167, uint64_t x168 = mulx_u64(x158, 0x3fffffffffff);
- uint64_t x170, uint8_t x171 = addcarryx_u64(0x0, x162, x164);
- uint64_t x173, uint8_t x174 = addcarryx_u64(x171, x165, x167);
- uint64_t x176, uint8_t _ = addcarryx_u64(0x0, x174, x168);
- uint64_t _, uint8_t x180 = addcarryx_u64(0x0, x146, x161);
- uint64_t x182, uint8_t x183 = addcarryx_u64(x180, x149, x170);
- uint64_t x185, uint8_t x186 = addcarryx_u64(x183, x152, x173);
- uint64_t x188, uint8_t x189 = addcarryx_u64(x186, x155, x176);
- uint8_t x190 = (x189 + x156);
- uint64_t x192, uint8_t x193 = subborrow_u64(0x0, x182, 0xfffffffffffffffdL);
- uint64_t x195, uint8_t x196 = subborrow_u64(x193, x185, 0xffffffffffffffffL);
- uint64_t x198, uint8_t x199 = subborrow_u64(x196, x188, 0x3fffffffffff);
- uint64_t _, uint8_t x202 = subborrow_u64(x199, x190, 0x0);
- uint64_t x203 = cmovznz64(x202, x198, x188);
- uint64_t x204 = cmovznz64(x202, x195, x185);
- uint64_t x205 = cmovznz64(x202, x192, x182);
- return (x203, x204, x205))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e174m3_3limbs/femulDisplay.v b/src/Specific/montgomery64_2e174m3_3limbs/femulDisplay.v
deleted file mode 100644
index e7c5d83b4..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e174m3_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e174m3_3limbs/fenz.c b/src/Specific/montgomery64_2e174m3_3limbs/fenz.c
deleted file mode 100644
index 2632a2866..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/fenz.c
+++ /dev/null
@@ -1,9 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x5 = (x4 | x3);
- { uint64_t x6 = (x2 | x5);
- out[0] = x6;
- }}}}}
-}
diff --git a/src/Specific/montgomery64_2e174m3_3limbs/fenz.v b/src/Specific/montgomery64_2e174m3_3limbs/fenz.v
deleted file mode 100644
index dbb484584..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e174m3_3limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e174m3_3limbs/fenzDisplay.log b/src/Specific/montgomery64_2e174m3_3limbs/fenzDisplay.log
deleted file mode 100644
index 680322e0f..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/fenzDisplay.log
+++ /dev/null
@@ -1,9 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x5 = (x4 | x3);
- uint64_t x6 = (x2 | x5);
- return x6)
-x
- : word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e174m3_3limbs/fenzDisplay.v b/src/Specific/montgomery64_2e174m3_3limbs/fenzDisplay.v
deleted file mode 100644
index 230660c92..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e174m3_3limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e174m3_3limbs/feopp.c b/src/Specific/montgomery64_2e174m3_3limbs/feopp.c
deleted file mode 100644
index 19ee56f31..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/feopp.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void feopp(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6; uint8_t x7 = _subborrow_u64(0x0, 0x0, x2, &x6);
- { uint64_t x9; uint8_t x10 = _subborrow_u64(x7, 0x0, x4, &x9);
- { uint64_t x12; uint8_t x13 = _subborrow_u64(x10, 0x0, x3, &x12);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0xfffffffffffffffdL);
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x6, x15, &x17);
- { uint64_t x19 = (x14 & 0xffffffffffffffffL);
- { uint64_t x21; uint8_t x22 = _addcarryx_u64(x18, x9, x19, &x21);
- { uint64_t x23 = (x14 & 0x3fffffffffff);
- { uint64_t x25; uint8_t _ = _addcarryx_u64(x22, x12, x23, &x25);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e174m3_3limbs/feopp.v b/src/Specific/montgomery64_2e174m3_3limbs/feopp.v
deleted file mode 100644
index 2cc6c0362..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e174m3_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e174m3_3limbs/feoppDisplay.log b/src/Specific/montgomery64_2e174m3_3limbs/feoppDisplay.log
deleted file mode 100644
index 1990945e3..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/feoppDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x9, uint8_t x10 = subborrow_u64(x7, 0x0, x4);
- uint64_t x12, uint8_t x13 = subborrow_u64(x10, 0x0, x3);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0xfffffffffffffffdL);
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x6, x15);
- uint64_t x19 = (x14 & 0xffffffffffffffffL);
- uint64_t x21, uint8_t x22 = addcarryx_u64(x18, x9, x19);
- uint64_t x23 = (x14 & 0x3fffffffffff);
- uint64_t x25, uint8_t _ = addcarryx_u64(x22, x12, x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e174m3_3limbs/feoppDisplay.v b/src/Specific/montgomery64_2e174m3_3limbs/feoppDisplay.v
deleted file mode 100644
index c99c43c1a..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e174m3_3limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e174m3_3limbs/fesquare.c b/src/Specific/montgomery64_2e174m3_3limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e174m3_3limbs/fesub.c b/src/Specific/montgomery64_2e174m3_3limbs/fesub.c
deleted file mode 100644
index d92e16d29..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/fesub.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _subborrow_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _subborrow_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _subborrow_u64(x17, x6, x10, &x19);
- { uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- { uint64_t x22 = (x21 & 0xfffffffffffffffdL);
- { uint64_t x24; uint8_t x25 = _addcarryx_u64(0x0, x13, x22, &x24);
- { uint64_t x26 = (x21 & 0xffffffffffffffffL);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x25, x16, x26, &x28);
- { uint64_t x30 = (x21 & 0x3fffffffffff);
- { uint64_t x32; uint8_t _ = _addcarryx_u64(x29, x19, x30, &x32);
- out[0] = x24;
- out[1] = x28;
- out[2] = x32;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e174m3_3limbs/fesub.v b/src/Specific/montgomery64_2e174m3_3limbs/fesub.v
deleted file mode 100644
index b2d6fd812..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e174m3_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e174m3_3limbs/fesubDisplay.log b/src/Specific/montgomery64_2e174m3_3limbs/fesubDisplay.log
deleted file mode 100644
index 06cc33bbf..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = subborrow_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = subborrow_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = subborrow_u64(x17, x6, x10);
- uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- uint64_t x22 = (x21 & 0xfffffffffffffffdL);
- uint64_t x24, uint8_t x25 = addcarryx_u64(0x0, x13, x22);
- uint64_t x26 = (x21 & 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x25, x16, x26);
- uint64_t x30 = (x21 & 0x3fffffffffff);
- uint64_t x32, uint8_t _ = addcarryx_u64(x29, x19, x30);
- (Return x32, Return x28, Return x24))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e174m3_3limbs/fesubDisplay.v b/src/Specific/montgomery64_2e174m3_3limbs/fesubDisplay.v
deleted file mode 100644
index cfc796386..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e174m3_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e174m3_3limbs/py_interpreter.sh b/src/Specific/montgomery64_2e174m3_3limbs/py_interpreter.sh
deleted file mode 100755
index d66ba455b..000000000
--- a/src/Specific/montgomery64_2e174m3_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**174 - 3' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e189m25_3limbs/CurveParameters.v b/src/Specific/montgomery64_2e189m25_3limbs/CurveParameters.v
deleted file mode 100644
index 6f8159a72..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^189 - 25
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 64;
- bitwidth := 64;
- s := 2^189;
- c := [(1, 25)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e189m25_3limbs/Synthesis.v b/src/Specific/montgomery64_2e189m25_3limbs/Synthesis.v
deleted file mode 100644
index 5721758fa..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e189m25_3limbs.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/montgomery64_2e189m25_3limbs/compiler.sh b/src/Specific/montgomery64_2e189m25_3limbs/compiler.sh
deleted file mode 100755
index ffd313718..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<189) - 25' "$@"
diff --git a/src/Specific/montgomery64_2e189m25_3limbs/compilerxx.sh b/src/Specific/montgomery64_2e189m25_3limbs/compilerxx.sh
deleted file mode 100755
index f5808a04e..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<189) - 25' "$@"
diff --git a/src/Specific/montgomery64_2e189m25_3limbs/feadd.c b/src/Specific/montgomery64_2e189m25_3limbs/feadd.c
deleted file mode 100644
index 297cd9cbc..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/feadd.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _addcarryx_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _addcarryx_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _addcarryx_u64(x17, x6, x10, &x19);
- { uint64_t x22; uint8_t x23 = _subborrow_u64(0x0, x13, 0xffffffffffffffe7L, &x22);
- { uint64_t x25; uint8_t x26 = _subborrow_u64(x23, x16, 0xffffffffffffffffL, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x19, 0x1fffffffffffffff, &x28);
- { uint64_t _; uint8_t x32 = _subborrow_u64(x29, x20, 0x0, &_);
- { uint64_t x33 = cmovznz64(x32, x28, x19);
- { uint64_t x34 = cmovznz64(x32, x25, x16);
- { uint64_t x35 = cmovznz64(x32, x22, x13);
- out[0] = x35;
- out[1] = x34;
- out[2] = x33;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e189m25_3limbs/feadd.v b/src/Specific/montgomery64_2e189m25_3limbs/feadd.v
deleted file mode 100644
index 581a541d2..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e189m25_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e189m25_3limbs/feaddDisplay.log b/src/Specific/montgomery64_2e189m25_3limbs/feaddDisplay.log
deleted file mode 100644
index 831ce8317..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = addcarryx_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = addcarryx_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = addcarryx_u64(x17, x6, x10);
- uint64_t x22, uint8_t x23 = subborrow_u64(0x0, x13, 0xffffffffffffffe7L);
- uint64_t x25, uint8_t x26 = subborrow_u64(x23, x16, 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x19, 0x1fffffffffffffff);
- uint64_t _, uint8_t x32 = subborrow_u64(x29, x20, 0x0);
- uint64_t x33 = cmovznz64(x32, x28, x19);
- uint64_t x34 = cmovznz64(x32, x25, x16);
- uint64_t x35 = cmovznz64(x32, x22, x13);
- return (x33, x34, x35))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e189m25_3limbs/feaddDisplay.v b/src/Specific/montgomery64_2e189m25_3limbs/feaddDisplay.v
deleted file mode 100644
index 84ce8b70f..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e189m25_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e189m25_3limbs/femul.c b/src/Specific/montgomery64_2e189m25_3limbs/femul.c
deleted file mode 100644
index c5a3d4492..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/femul.c
+++ /dev/null
@@ -1,80 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x14; uint64_t x13 = _mulx_u64(x5, x9, &x14);
- { uint64_t x17; uint64_t x16 = _mulx_u64(x5, x11, &x17);
- { uint64_t x20; uint64_t x19 = _mulx_u64(x5, x10, &x20);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x14, x16, &x22);
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(x23, x17, x19, &x25);
- { uint64_t x28; uint8_t _ = _addcarryx_u64(0x0, x26, x20, &x28);
- { uint64_t _; uint64_t x31 = _mulx_u64(x13, 0x8f5c28f5c28f5c29L, &_);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x31, 0xffffffffffffffe7L, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x31, 0xffffffffffffffffL, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x31, 0x1fffffffffffffff, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x35, x37, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x38, x40, &x46);
- { uint64_t x49; uint8_t _ = _addcarryx_u64(0x0, x47, x41, &x49);
- { uint64_t _; uint8_t x53 = _addcarryx_u64(0x0, x13, x34, &_);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x22, x43, &x55);
- { uint64_t x58; uint8_t x59 = _addcarryx_u64(x56, x25, x46, &x58);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x59, x28, x49, &x61);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x7, x9, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x7, x11, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x7, x10, &x71);
- { uint64_t x73; uint8_t x74 = _addcarryx_u64(0x0, x65, x67, &x73);
- { uint64_t x76; uint8_t x77 = _addcarryx_u64(x74, x68, x70, &x76);
- { uint64_t x79; uint8_t _ = _addcarryx_u64(0x0, x77, x71, &x79);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x55, x64, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x58, x73, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x61, x76, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x62, x79, &x91);
- { uint64_t _; uint64_t x94 = _mulx_u64(x82, 0x8f5c28f5c28f5c29L, &_);
- { uint64_t x98; uint64_t x97 = _mulx_u64(x94, 0xffffffffffffffe7L, &x98);
- { uint64_t x101; uint64_t x100 = _mulx_u64(x94, 0xffffffffffffffffL, &x101);
- { uint64_t x104; uint64_t x103 = _mulx_u64(x94, 0x1fffffffffffffff, &x104);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(0x0, x98, x100, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x101, x103, &x109);
- { uint64_t x112; uint8_t _ = _addcarryx_u64(0x0, x110, x104, &x112);
- { uint64_t _; uint8_t x116 = _addcarryx_u64(0x0, x82, x97, &_);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x85, x106, &x118);
- { uint64_t x121; uint8_t x122 = _addcarryx_u64(x119, x88, x109, &x121);
- { uint64_t x124; uint8_t x125 = _addcarryx_u64(x122, x91, x112, &x124);
- { uint8_t x126 = (x125 + x92);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x6, x9, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x6, x11, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x6, x10, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x129, x131, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x132, x134, &x140);
- { uint64_t x143; uint8_t _ = _addcarryx_u64(0x0, x141, x135, &x143);
- { uint64_t x146; uint8_t x147 = _addcarryx_u64(0x0, x118, x128, &x146);
- { uint64_t x149; uint8_t x150 = _addcarryx_u64(x147, x121, x137, &x149);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x124, x140, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x126, x143, &x155);
- { uint64_t _; uint64_t x158 = _mulx_u64(x146, 0x8f5c28f5c28f5c29L, &_);
- { uint64_t x162; uint64_t x161 = _mulx_u64(x158, 0xffffffffffffffe7L, &x162);
- { uint64_t x165; uint64_t x164 = _mulx_u64(x158, 0xffffffffffffffffL, &x165);
- { uint64_t x168; uint64_t x167 = _mulx_u64(x158, 0x1fffffffffffffff, &x168);
- { uint64_t x170; uint8_t x171 = _addcarryx_u64(0x0, x162, x164, &x170);
- { uint64_t x173; uint8_t x174 = _addcarryx_u64(x171, x165, x167, &x173);
- { uint64_t x176; uint8_t _ = _addcarryx_u64(0x0, x174, x168, &x176);
- { uint64_t _; uint8_t x180 = _addcarryx_u64(0x0, x146, x161, &_);
- { uint64_t x182; uint8_t x183 = _addcarryx_u64(x180, x149, x170, &x182);
- { uint64_t x185; uint8_t x186 = _addcarryx_u64(x183, x152, x173, &x185);
- { uint64_t x188; uint8_t x189 = _addcarryx_u64(x186, x155, x176, &x188);
- { uint8_t x190 = (x189 + x156);
- { uint64_t x192; uint8_t x193 = _subborrow_u64(0x0, x182, 0xffffffffffffffe7L, &x192);
- { uint64_t x195; uint8_t x196 = _subborrow_u64(x193, x185, 0xffffffffffffffffL, &x195);
- { uint64_t x198; uint8_t x199 = _subborrow_u64(x196, x188, 0x1fffffffffffffff, &x198);
- { uint64_t _; uint8_t x202 = _subborrow_u64(x199, x190, 0x0, &_);
- { uint64_t x203 = cmovznz64(x202, x198, x188);
- { uint64_t x204 = cmovznz64(x202, x195, x185);
- { uint64_t x205 = cmovznz64(x202, x192, x182);
- out[0] = x205;
- out[1] = x204;
- out[2] = x203;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e189m25_3limbs/femul.v b/src/Specific/montgomery64_2e189m25_3limbs/femul.v
deleted file mode 100644
index 9aa5bfdfb..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e189m25_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e189m25_3limbs/femulDisplay.log b/src/Specific/montgomery64_2e189m25_3limbs/femulDisplay.log
deleted file mode 100644
index d0507df07..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,75 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint64_t x14 = mulx_u64(x5, x9);
- uint64_t x16, uint64_t x17 = mulx_u64(x5, x11);
- uint64_t x19, uint64_t x20 = mulx_u64(x5, x10);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x14, x16);
- uint64_t x25, uint8_t x26 = addcarryx_u64(x23, x17, x19);
- uint64_t x28, uint8_t _ = addcarryx_u64(0x0, x26, x20);
- uint64_t x31, uint64_t _ = mulx_u64(x13, 0x8f5c28f5c28f5c29L);
- uint64_t x34, uint64_t x35 = mulx_u64(x31, 0xffffffffffffffe7L);
- uint64_t x37, uint64_t x38 = mulx_u64(x31, 0xffffffffffffffffL);
- uint64_t x40, uint64_t x41 = mulx_u64(x31, 0x1fffffffffffffff);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x35, x37);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x38, x40);
- uint64_t x49, uint8_t _ = addcarryx_u64(0x0, x47, x41);
- uint64_t _, uint8_t x53 = addcarryx_u64(0x0, x13, x34);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x22, x43);
- uint64_t x58, uint8_t x59 = addcarryx_u64(x56, x25, x46);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x59, x28, x49);
- uint64_t x64, uint64_t x65 = mulx_u64(x7, x9);
- uint64_t x67, uint64_t x68 = mulx_u64(x7, x11);
- uint64_t x70, uint64_t x71 = mulx_u64(x7, x10);
- uint64_t x73, uint8_t x74 = addcarryx_u64(0x0, x65, x67);
- uint64_t x76, uint8_t x77 = addcarryx_u64(x74, x68, x70);
- uint64_t x79, uint8_t _ = addcarryx_u64(0x0, x77, x71);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x55, x64);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x58, x73);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x61, x76);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x62, x79);
- uint64_t x94, uint64_t _ = mulx_u64(x82, 0x8f5c28f5c28f5c29L);
- uint64_t x97, uint64_t x98 = mulx_u64(x94, 0xffffffffffffffe7L);
- uint64_t x100, uint64_t x101 = mulx_u64(x94, 0xffffffffffffffffL);
- uint64_t x103, uint64_t x104 = mulx_u64(x94, 0x1fffffffffffffff);
- uint64_t x106, uint8_t x107 = addcarryx_u64(0x0, x98, x100);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x101, x103);
- uint64_t x112, uint8_t _ = addcarryx_u64(0x0, x110, x104);
- uint64_t _, uint8_t x116 = addcarryx_u64(0x0, x82, x97);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x85, x106);
- uint64_t x121, uint8_t x122 = addcarryx_u64(x119, x88, x109);
- uint64_t x124, uint8_t x125 = addcarryx_u64(x122, x91, x112);
- uint8_t x126 = (x125 + x92);
- uint64_t x128, uint64_t x129 = mulx_u64(x6, x9);
- uint64_t x131, uint64_t x132 = mulx_u64(x6, x11);
- uint64_t x134, uint64_t x135 = mulx_u64(x6, x10);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x129, x131);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x132, x134);
- uint64_t x143, uint8_t _ = addcarryx_u64(0x0, x141, x135);
- uint64_t x146, uint8_t x147 = addcarryx_u64(0x0, x118, x128);
- uint64_t x149, uint8_t x150 = addcarryx_u64(x147, x121, x137);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x124, x140);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x126, x143);
- uint64_t x158, uint64_t _ = mulx_u64(x146, 0x8f5c28f5c28f5c29L);
- uint64_t x161, uint64_t x162 = mulx_u64(x158, 0xffffffffffffffe7L);
- uint64_t x164, uint64_t x165 = mulx_u64(x158, 0xffffffffffffffffL);
- uint64_t x167, uint64_t x168 = mulx_u64(x158, 0x1fffffffffffffff);
- uint64_t x170, uint8_t x171 = addcarryx_u64(0x0, x162, x164);
- uint64_t x173, uint8_t x174 = addcarryx_u64(x171, x165, x167);
- uint64_t x176, uint8_t _ = addcarryx_u64(0x0, x174, x168);
- uint64_t _, uint8_t x180 = addcarryx_u64(0x0, x146, x161);
- uint64_t x182, uint8_t x183 = addcarryx_u64(x180, x149, x170);
- uint64_t x185, uint8_t x186 = addcarryx_u64(x183, x152, x173);
- uint64_t x188, uint8_t x189 = addcarryx_u64(x186, x155, x176);
- uint8_t x190 = (x189 + x156);
- uint64_t x192, uint8_t x193 = subborrow_u64(0x0, x182, 0xffffffffffffffe7L);
- uint64_t x195, uint8_t x196 = subborrow_u64(x193, x185, 0xffffffffffffffffL);
- uint64_t x198, uint8_t x199 = subborrow_u64(x196, x188, 0x1fffffffffffffff);
- uint64_t _, uint8_t x202 = subborrow_u64(x199, x190, 0x0);
- uint64_t x203 = cmovznz64(x202, x198, x188);
- uint64_t x204 = cmovznz64(x202, x195, x185);
- uint64_t x205 = cmovznz64(x202, x192, x182);
- return (x203, x204, x205))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e189m25_3limbs/femulDisplay.v b/src/Specific/montgomery64_2e189m25_3limbs/femulDisplay.v
deleted file mode 100644
index b02fa3fe8..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e189m25_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e189m25_3limbs/fenz.c b/src/Specific/montgomery64_2e189m25_3limbs/fenz.c
deleted file mode 100644
index 2632a2866..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/fenz.c
+++ /dev/null
@@ -1,9 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x5 = (x4 | x3);
- { uint64_t x6 = (x2 | x5);
- out[0] = x6;
- }}}}}
-}
diff --git a/src/Specific/montgomery64_2e189m25_3limbs/fenz.v b/src/Specific/montgomery64_2e189m25_3limbs/fenz.v
deleted file mode 100644
index fe339b027..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e189m25_3limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e189m25_3limbs/fenzDisplay.log b/src/Specific/montgomery64_2e189m25_3limbs/fenzDisplay.log
deleted file mode 100644
index 680322e0f..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/fenzDisplay.log
+++ /dev/null
@@ -1,9 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x5 = (x4 | x3);
- uint64_t x6 = (x2 | x5);
- return x6)
-x
- : word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e189m25_3limbs/fenzDisplay.v b/src/Specific/montgomery64_2e189m25_3limbs/fenzDisplay.v
deleted file mode 100644
index 1f99d8f4d..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e189m25_3limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e189m25_3limbs/feopp.c b/src/Specific/montgomery64_2e189m25_3limbs/feopp.c
deleted file mode 100644
index acef14dec..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/feopp.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void feopp(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6; uint8_t x7 = _subborrow_u64(0x0, 0x0, x2, &x6);
- { uint64_t x9; uint8_t x10 = _subborrow_u64(x7, 0x0, x4, &x9);
- { uint64_t x12; uint8_t x13 = _subborrow_u64(x10, 0x0, x3, &x12);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0xffffffffffffffe7L);
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x6, x15, &x17);
- { uint64_t x19 = (x14 & 0xffffffffffffffffL);
- { uint64_t x21; uint8_t x22 = _addcarryx_u64(x18, x9, x19, &x21);
- { uint64_t x23 = (x14 & 0x1fffffffffffffff);
- { uint64_t x25; uint8_t _ = _addcarryx_u64(x22, x12, x23, &x25);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e189m25_3limbs/feopp.v b/src/Specific/montgomery64_2e189m25_3limbs/feopp.v
deleted file mode 100644
index 08a4add86..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e189m25_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e189m25_3limbs/feoppDisplay.log b/src/Specific/montgomery64_2e189m25_3limbs/feoppDisplay.log
deleted file mode 100644
index c11948d1e..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/feoppDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x9, uint8_t x10 = subborrow_u64(x7, 0x0, x4);
- uint64_t x12, uint8_t x13 = subborrow_u64(x10, 0x0, x3);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0xffffffffffffffe7L);
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x6, x15);
- uint64_t x19 = (x14 & 0xffffffffffffffffL);
- uint64_t x21, uint8_t x22 = addcarryx_u64(x18, x9, x19);
- uint64_t x23 = (x14 & 0x1fffffffffffffff);
- uint64_t x25, uint8_t _ = addcarryx_u64(x22, x12, x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e189m25_3limbs/feoppDisplay.v b/src/Specific/montgomery64_2e189m25_3limbs/feoppDisplay.v
deleted file mode 100644
index f50f013df..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e189m25_3limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e189m25_3limbs/fesquare.c b/src/Specific/montgomery64_2e189m25_3limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e189m25_3limbs/fesub.c b/src/Specific/montgomery64_2e189m25_3limbs/fesub.c
deleted file mode 100644
index 9959078f0..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/fesub.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _subborrow_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _subborrow_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _subborrow_u64(x17, x6, x10, &x19);
- { uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- { uint64_t x22 = (x21 & 0xffffffffffffffe7L);
- { uint64_t x24; uint8_t x25 = _addcarryx_u64(0x0, x13, x22, &x24);
- { uint64_t x26 = (x21 & 0xffffffffffffffffL);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x25, x16, x26, &x28);
- { uint64_t x30 = (x21 & 0x1fffffffffffffff);
- { uint64_t x32; uint8_t _ = _addcarryx_u64(x29, x19, x30, &x32);
- out[0] = x24;
- out[1] = x28;
- out[2] = x32;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e189m25_3limbs/fesub.v b/src/Specific/montgomery64_2e189m25_3limbs/fesub.v
deleted file mode 100644
index b1f482285..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e189m25_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e189m25_3limbs/fesubDisplay.log b/src/Specific/montgomery64_2e189m25_3limbs/fesubDisplay.log
deleted file mode 100644
index 692e6a34c..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = subborrow_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = subborrow_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = subborrow_u64(x17, x6, x10);
- uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- uint64_t x22 = (x21 & 0xffffffffffffffe7L);
- uint64_t x24, uint8_t x25 = addcarryx_u64(0x0, x13, x22);
- uint64_t x26 = (x21 & 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x25, x16, x26);
- uint64_t x30 = (x21 & 0x1fffffffffffffff);
- uint64_t x32, uint8_t _ = addcarryx_u64(x29, x19, x30);
- (Return x32, Return x28, Return x24))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e189m25_3limbs/fesubDisplay.v b/src/Specific/montgomery64_2e189m25_3limbs/fesubDisplay.v
deleted file mode 100644
index 8ff18961a..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e189m25_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e189m25_3limbs/py_interpreter.sh b/src/Specific/montgomery64_2e189m25_3limbs/py_interpreter.sh
deleted file mode 100755
index 4170c37e6..000000000
--- a/src/Specific/montgomery64_2e189m25_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**189 - 25' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e190m11_3limbs/CurveParameters.v b/src/Specific/montgomery64_2e190m11_3limbs/CurveParameters.v
deleted file mode 100644
index 18a845f0f..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^190 - 11
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 64;
- bitwidth := 64;
- s := 2^190;
- c := [(1, 11)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e190m11_3limbs/Synthesis.v b/src/Specific/montgomery64_2e190m11_3limbs/Synthesis.v
deleted file mode 100644
index 1ca0a7186..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e190m11_3limbs.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/montgomery64_2e190m11_3limbs/compiler.sh b/src/Specific/montgomery64_2e190m11_3limbs/compiler.sh
deleted file mode 100755
index 761ff4f92..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<190) - 11' "$@"
diff --git a/src/Specific/montgomery64_2e190m11_3limbs/compilerxx.sh b/src/Specific/montgomery64_2e190m11_3limbs/compilerxx.sh
deleted file mode 100755
index 76c561ed1..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<190) - 11' "$@"
diff --git a/src/Specific/montgomery64_2e190m11_3limbs/feadd.c b/src/Specific/montgomery64_2e190m11_3limbs/feadd.c
deleted file mode 100644
index 8b2ff0c3f..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/feadd.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _addcarryx_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _addcarryx_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _addcarryx_u64(x17, x6, x10, &x19);
- { uint64_t x22; uint8_t x23 = _subborrow_u64(0x0, x13, 0xfffffffffffffff5L, &x22);
- { uint64_t x25; uint8_t x26 = _subborrow_u64(x23, x16, 0xffffffffffffffffL, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x19, 0x3fffffffffffffff, &x28);
- { uint64_t _; uint8_t x32 = _subborrow_u64(x29, x20, 0x0, &_);
- { uint64_t x33 = cmovznz64(x32, x28, x19);
- { uint64_t x34 = cmovznz64(x32, x25, x16);
- { uint64_t x35 = cmovznz64(x32, x22, x13);
- out[0] = x35;
- out[1] = x34;
- out[2] = x33;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e190m11_3limbs/feadd.v b/src/Specific/montgomery64_2e190m11_3limbs/feadd.v
deleted file mode 100644
index a1f6b2082..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e190m11_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e190m11_3limbs/feaddDisplay.log b/src/Specific/montgomery64_2e190m11_3limbs/feaddDisplay.log
deleted file mode 100644
index f6f352aec..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = addcarryx_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = addcarryx_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = addcarryx_u64(x17, x6, x10);
- uint64_t x22, uint8_t x23 = subborrow_u64(0x0, x13, 0xfffffffffffffff5L);
- uint64_t x25, uint8_t x26 = subborrow_u64(x23, x16, 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x19, 0x3fffffffffffffff);
- uint64_t _, uint8_t x32 = subborrow_u64(x29, x20, 0x0);
- uint64_t x33 = cmovznz64(x32, x28, x19);
- uint64_t x34 = cmovznz64(x32, x25, x16);
- uint64_t x35 = cmovznz64(x32, x22, x13);
- return (x33, x34, x35))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e190m11_3limbs/feaddDisplay.v b/src/Specific/montgomery64_2e190m11_3limbs/feaddDisplay.v
deleted file mode 100644
index f7646fee8..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e190m11_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e190m11_3limbs/femul.c b/src/Specific/montgomery64_2e190m11_3limbs/femul.c
deleted file mode 100644
index 0119b01ed..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/femul.c
+++ /dev/null
@@ -1,80 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x14; uint64_t x13 = _mulx_u64(x5, x9, &x14);
- { uint64_t x17; uint64_t x16 = _mulx_u64(x5, x11, &x17);
- { uint64_t x20; uint64_t x19 = _mulx_u64(x5, x10, &x20);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x14, x16, &x22);
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(x23, x17, x19, &x25);
- { uint64_t x28; uint8_t _ = _addcarryx_u64(0x0, x26, x20, &x28);
- { uint64_t _; uint64_t x31 = _mulx_u64(x13, 0x2e8ba2e8ba2e8ba3, &_);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x31, 0xfffffffffffffff5L, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x31, 0xffffffffffffffffL, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x31, 0x3fffffffffffffff, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x35, x37, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x38, x40, &x46);
- { uint64_t x49; uint8_t _ = _addcarryx_u64(0x0, x47, x41, &x49);
- { uint64_t _; uint8_t x53 = _addcarryx_u64(0x0, x13, x34, &_);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x22, x43, &x55);
- { uint64_t x58; uint8_t x59 = _addcarryx_u64(x56, x25, x46, &x58);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x59, x28, x49, &x61);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x7, x9, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x7, x11, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x7, x10, &x71);
- { uint64_t x73; uint8_t x74 = _addcarryx_u64(0x0, x65, x67, &x73);
- { uint64_t x76; uint8_t x77 = _addcarryx_u64(x74, x68, x70, &x76);
- { uint64_t x79; uint8_t _ = _addcarryx_u64(0x0, x77, x71, &x79);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x55, x64, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x58, x73, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x61, x76, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x62, x79, &x91);
- { uint64_t _; uint64_t x94 = _mulx_u64(x82, 0x2e8ba2e8ba2e8ba3, &_);
- { uint64_t x98; uint64_t x97 = _mulx_u64(x94, 0xfffffffffffffff5L, &x98);
- { uint64_t x101; uint64_t x100 = _mulx_u64(x94, 0xffffffffffffffffL, &x101);
- { uint64_t x104; uint64_t x103 = _mulx_u64(x94, 0x3fffffffffffffff, &x104);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(0x0, x98, x100, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x101, x103, &x109);
- { uint64_t x112; uint8_t _ = _addcarryx_u64(0x0, x110, x104, &x112);
- { uint64_t _; uint8_t x116 = _addcarryx_u64(0x0, x82, x97, &_);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x85, x106, &x118);
- { uint64_t x121; uint8_t x122 = _addcarryx_u64(x119, x88, x109, &x121);
- { uint64_t x124; uint8_t x125 = _addcarryx_u64(x122, x91, x112, &x124);
- { uint8_t x126 = (x125 + x92);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x6, x9, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x6, x11, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x6, x10, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x129, x131, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x132, x134, &x140);
- { uint64_t x143; uint8_t _ = _addcarryx_u64(0x0, x141, x135, &x143);
- { uint64_t x146; uint8_t x147 = _addcarryx_u64(0x0, x118, x128, &x146);
- { uint64_t x149; uint8_t x150 = _addcarryx_u64(x147, x121, x137, &x149);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x124, x140, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x126, x143, &x155);
- { uint64_t _; uint64_t x158 = _mulx_u64(x146, 0x2e8ba2e8ba2e8ba3, &_);
- { uint64_t x162; uint64_t x161 = _mulx_u64(x158, 0xfffffffffffffff5L, &x162);
- { uint64_t x165; uint64_t x164 = _mulx_u64(x158, 0xffffffffffffffffL, &x165);
- { uint64_t x168; uint64_t x167 = _mulx_u64(x158, 0x3fffffffffffffff, &x168);
- { uint64_t x170; uint8_t x171 = _addcarryx_u64(0x0, x162, x164, &x170);
- { uint64_t x173; uint8_t x174 = _addcarryx_u64(x171, x165, x167, &x173);
- { uint64_t x176; uint8_t _ = _addcarryx_u64(0x0, x174, x168, &x176);
- { uint64_t _; uint8_t x180 = _addcarryx_u64(0x0, x146, x161, &_);
- { uint64_t x182; uint8_t x183 = _addcarryx_u64(x180, x149, x170, &x182);
- { uint64_t x185; uint8_t x186 = _addcarryx_u64(x183, x152, x173, &x185);
- { uint64_t x188; uint8_t x189 = _addcarryx_u64(x186, x155, x176, &x188);
- { uint8_t x190 = (x189 + x156);
- { uint64_t x192; uint8_t x193 = _subborrow_u64(0x0, x182, 0xfffffffffffffff5L, &x192);
- { uint64_t x195; uint8_t x196 = _subborrow_u64(x193, x185, 0xffffffffffffffffL, &x195);
- { uint64_t x198; uint8_t x199 = _subborrow_u64(x196, x188, 0x3fffffffffffffff, &x198);
- { uint64_t _; uint8_t x202 = _subborrow_u64(x199, x190, 0x0, &_);
- { uint64_t x203 = cmovznz64(x202, x198, x188);
- { uint64_t x204 = cmovznz64(x202, x195, x185);
- { uint64_t x205 = cmovznz64(x202, x192, x182);
- out[0] = x205;
- out[1] = x204;
- out[2] = x203;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e190m11_3limbs/femul.v b/src/Specific/montgomery64_2e190m11_3limbs/femul.v
deleted file mode 100644
index 78cdb1acf..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e190m11_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e190m11_3limbs/femulDisplay.log b/src/Specific/montgomery64_2e190m11_3limbs/femulDisplay.log
deleted file mode 100644
index 185717349..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,75 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint64_t x14 = mulx_u64(x5, x9);
- uint64_t x16, uint64_t x17 = mulx_u64(x5, x11);
- uint64_t x19, uint64_t x20 = mulx_u64(x5, x10);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x14, x16);
- uint64_t x25, uint8_t x26 = addcarryx_u64(x23, x17, x19);
- uint64_t x28, uint8_t _ = addcarryx_u64(0x0, x26, x20);
- uint64_t x31, uint64_t _ = mulx_u64(x13, 0x2e8ba2e8ba2e8ba3);
- uint64_t x34, uint64_t x35 = mulx_u64(x31, 0xfffffffffffffff5L);
- uint64_t x37, uint64_t x38 = mulx_u64(x31, 0xffffffffffffffffL);
- uint64_t x40, uint64_t x41 = mulx_u64(x31, 0x3fffffffffffffff);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x35, x37);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x38, x40);
- uint64_t x49, uint8_t _ = addcarryx_u64(0x0, x47, x41);
- uint64_t _, uint8_t x53 = addcarryx_u64(0x0, x13, x34);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x22, x43);
- uint64_t x58, uint8_t x59 = addcarryx_u64(x56, x25, x46);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x59, x28, x49);
- uint64_t x64, uint64_t x65 = mulx_u64(x7, x9);
- uint64_t x67, uint64_t x68 = mulx_u64(x7, x11);
- uint64_t x70, uint64_t x71 = mulx_u64(x7, x10);
- uint64_t x73, uint8_t x74 = addcarryx_u64(0x0, x65, x67);
- uint64_t x76, uint8_t x77 = addcarryx_u64(x74, x68, x70);
- uint64_t x79, uint8_t _ = addcarryx_u64(0x0, x77, x71);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x55, x64);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x58, x73);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x61, x76);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x62, x79);
- uint64_t x94, uint64_t _ = mulx_u64(x82, 0x2e8ba2e8ba2e8ba3);
- uint64_t x97, uint64_t x98 = mulx_u64(x94, 0xfffffffffffffff5L);
- uint64_t x100, uint64_t x101 = mulx_u64(x94, 0xffffffffffffffffL);
- uint64_t x103, uint64_t x104 = mulx_u64(x94, 0x3fffffffffffffff);
- uint64_t x106, uint8_t x107 = addcarryx_u64(0x0, x98, x100);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x101, x103);
- uint64_t x112, uint8_t _ = addcarryx_u64(0x0, x110, x104);
- uint64_t _, uint8_t x116 = addcarryx_u64(0x0, x82, x97);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x85, x106);
- uint64_t x121, uint8_t x122 = addcarryx_u64(x119, x88, x109);
- uint64_t x124, uint8_t x125 = addcarryx_u64(x122, x91, x112);
- uint8_t x126 = (x125 + x92);
- uint64_t x128, uint64_t x129 = mulx_u64(x6, x9);
- uint64_t x131, uint64_t x132 = mulx_u64(x6, x11);
- uint64_t x134, uint64_t x135 = mulx_u64(x6, x10);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x129, x131);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x132, x134);
- uint64_t x143, uint8_t _ = addcarryx_u64(0x0, x141, x135);
- uint64_t x146, uint8_t x147 = addcarryx_u64(0x0, x118, x128);
- uint64_t x149, uint8_t x150 = addcarryx_u64(x147, x121, x137);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x124, x140);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x126, x143);
- uint64_t x158, uint64_t _ = mulx_u64(x146, 0x2e8ba2e8ba2e8ba3);
- uint64_t x161, uint64_t x162 = mulx_u64(x158, 0xfffffffffffffff5L);
- uint64_t x164, uint64_t x165 = mulx_u64(x158, 0xffffffffffffffffL);
- uint64_t x167, uint64_t x168 = mulx_u64(x158, 0x3fffffffffffffff);
- uint64_t x170, uint8_t x171 = addcarryx_u64(0x0, x162, x164);
- uint64_t x173, uint8_t x174 = addcarryx_u64(x171, x165, x167);
- uint64_t x176, uint8_t _ = addcarryx_u64(0x0, x174, x168);
- uint64_t _, uint8_t x180 = addcarryx_u64(0x0, x146, x161);
- uint64_t x182, uint8_t x183 = addcarryx_u64(x180, x149, x170);
- uint64_t x185, uint8_t x186 = addcarryx_u64(x183, x152, x173);
- uint64_t x188, uint8_t x189 = addcarryx_u64(x186, x155, x176);
- uint8_t x190 = (x189 + x156);
- uint64_t x192, uint8_t x193 = subborrow_u64(0x0, x182, 0xfffffffffffffff5L);
- uint64_t x195, uint8_t x196 = subborrow_u64(x193, x185, 0xffffffffffffffffL);
- uint64_t x198, uint8_t x199 = subborrow_u64(x196, x188, 0x3fffffffffffffff);
- uint64_t _, uint8_t x202 = subborrow_u64(x199, x190, 0x0);
- uint64_t x203 = cmovznz64(x202, x198, x188);
- uint64_t x204 = cmovznz64(x202, x195, x185);
- uint64_t x205 = cmovznz64(x202, x192, x182);
- return (x203, x204, x205))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e190m11_3limbs/femulDisplay.v b/src/Specific/montgomery64_2e190m11_3limbs/femulDisplay.v
deleted file mode 100644
index f8621943c..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e190m11_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e190m11_3limbs/fenz.c b/src/Specific/montgomery64_2e190m11_3limbs/fenz.c
deleted file mode 100644
index 2632a2866..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/fenz.c
+++ /dev/null
@@ -1,9 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x5 = (x4 | x3);
- { uint64_t x6 = (x2 | x5);
- out[0] = x6;
- }}}}}
-}
diff --git a/src/Specific/montgomery64_2e190m11_3limbs/fenz.v b/src/Specific/montgomery64_2e190m11_3limbs/fenz.v
deleted file mode 100644
index 5032740ca..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e190m11_3limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e190m11_3limbs/fenzDisplay.log b/src/Specific/montgomery64_2e190m11_3limbs/fenzDisplay.log
deleted file mode 100644
index 680322e0f..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/fenzDisplay.log
+++ /dev/null
@@ -1,9 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x5 = (x4 | x3);
- uint64_t x6 = (x2 | x5);
- return x6)
-x
- : word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e190m11_3limbs/fenzDisplay.v b/src/Specific/montgomery64_2e190m11_3limbs/fenzDisplay.v
deleted file mode 100644
index 4516a9137..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e190m11_3limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e190m11_3limbs/feopp.c b/src/Specific/montgomery64_2e190m11_3limbs/feopp.c
deleted file mode 100644
index bb4485f74..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/feopp.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void feopp(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6; uint8_t x7 = _subborrow_u64(0x0, 0x0, x2, &x6);
- { uint64_t x9; uint8_t x10 = _subborrow_u64(x7, 0x0, x4, &x9);
- { uint64_t x12; uint8_t x13 = _subborrow_u64(x10, 0x0, x3, &x12);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0xfffffffffffffff5L);
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x6, x15, &x17);
- { uint64_t x19 = (x14 & 0xffffffffffffffffL);
- { uint64_t x21; uint8_t x22 = _addcarryx_u64(x18, x9, x19, &x21);
- { uint64_t x23 = (x14 & 0x3fffffffffffffff);
- { uint64_t x25; uint8_t _ = _addcarryx_u64(x22, x12, x23, &x25);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e190m11_3limbs/feopp.v b/src/Specific/montgomery64_2e190m11_3limbs/feopp.v
deleted file mode 100644
index 9a927f245..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e190m11_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e190m11_3limbs/feoppDisplay.log b/src/Specific/montgomery64_2e190m11_3limbs/feoppDisplay.log
deleted file mode 100644
index 9fdeaa269..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/feoppDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x9, uint8_t x10 = subborrow_u64(x7, 0x0, x4);
- uint64_t x12, uint8_t x13 = subborrow_u64(x10, 0x0, x3);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0xfffffffffffffff5L);
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x6, x15);
- uint64_t x19 = (x14 & 0xffffffffffffffffL);
- uint64_t x21, uint8_t x22 = addcarryx_u64(x18, x9, x19);
- uint64_t x23 = (x14 & 0x3fffffffffffffff);
- uint64_t x25, uint8_t _ = addcarryx_u64(x22, x12, x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e190m11_3limbs/feoppDisplay.v b/src/Specific/montgomery64_2e190m11_3limbs/feoppDisplay.v
deleted file mode 100644
index 5e940e5bf..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e190m11_3limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e190m11_3limbs/fesquare.c b/src/Specific/montgomery64_2e190m11_3limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e190m11_3limbs/fesub.c b/src/Specific/montgomery64_2e190m11_3limbs/fesub.c
deleted file mode 100644
index a88dac55b..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/fesub.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _subborrow_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _subborrow_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _subborrow_u64(x17, x6, x10, &x19);
- { uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- { uint64_t x22 = (x21 & 0xfffffffffffffff5L);
- { uint64_t x24; uint8_t x25 = _addcarryx_u64(0x0, x13, x22, &x24);
- { uint64_t x26 = (x21 & 0xffffffffffffffffL);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x25, x16, x26, &x28);
- { uint64_t x30 = (x21 & 0x3fffffffffffffff);
- { uint64_t x32; uint8_t _ = _addcarryx_u64(x29, x19, x30, &x32);
- out[0] = x24;
- out[1] = x28;
- out[2] = x32;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e190m11_3limbs/fesub.v b/src/Specific/montgomery64_2e190m11_3limbs/fesub.v
deleted file mode 100644
index 7ab9ec756..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e190m11_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e190m11_3limbs/fesubDisplay.log b/src/Specific/montgomery64_2e190m11_3limbs/fesubDisplay.log
deleted file mode 100644
index 152265c89..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = subborrow_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = subborrow_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = subborrow_u64(x17, x6, x10);
- uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- uint64_t x22 = (x21 & 0xfffffffffffffff5L);
- uint64_t x24, uint8_t x25 = addcarryx_u64(0x0, x13, x22);
- uint64_t x26 = (x21 & 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x25, x16, x26);
- uint64_t x30 = (x21 & 0x3fffffffffffffff);
- uint64_t x32, uint8_t _ = addcarryx_u64(x29, x19, x30);
- (Return x32, Return x28, Return x24))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e190m11_3limbs/fesubDisplay.v b/src/Specific/montgomery64_2e190m11_3limbs/fesubDisplay.v
deleted file mode 100644
index 725e0072a..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e190m11_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e190m11_3limbs/py_interpreter.sh b/src/Specific/montgomery64_2e190m11_3limbs/py_interpreter.sh
deleted file mode 100755
index ae6a726fd..000000000
--- a/src/Specific/montgomery64_2e190m11_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**190 - 11' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e191m19_3limbs/CurveParameters.v b/src/Specific/montgomery64_2e191m19_3limbs/CurveParameters.v
deleted file mode 100644
index 54d7d6487..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^191 - 19
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 64;
- bitwidth := 64;
- s := 2^191;
- c := [(1, 19)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e191m19_3limbs/Synthesis.v b/src/Specific/montgomery64_2e191m19_3limbs/Synthesis.v
deleted file mode 100644
index 32de8a922..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e191m19_3limbs.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/montgomery64_2e191m19_3limbs/compiler.sh b/src/Specific/montgomery64_2e191m19_3limbs/compiler.sh
deleted file mode 100755
index 452d706ee..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<191) - 19' "$@"
diff --git a/src/Specific/montgomery64_2e191m19_3limbs/compilerxx.sh b/src/Specific/montgomery64_2e191m19_3limbs/compilerxx.sh
deleted file mode 100755
index dfead1db3..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<191) - 19' "$@"
diff --git a/src/Specific/montgomery64_2e191m19_3limbs/feadd.c b/src/Specific/montgomery64_2e191m19_3limbs/feadd.c
deleted file mode 100644
index 3139704bc..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/feadd.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _addcarryx_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _addcarryx_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _addcarryx_u64(x17, x6, x10, &x19);
- { uint64_t x22; uint8_t x23 = _subborrow_u64(0x0, x13, 0xffffffffffffffedL, &x22);
- { uint64_t x25; uint8_t x26 = _subborrow_u64(x23, x16, 0xffffffffffffffffL, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x19, 0x7fffffffffffffffL, &x28);
- { uint64_t _; uint8_t x32 = _subborrow_u64(x29, x20, 0x0, &_);
- { uint64_t x33 = cmovznz64(x32, x28, x19);
- { uint64_t x34 = cmovznz64(x32, x25, x16);
- { uint64_t x35 = cmovznz64(x32, x22, x13);
- out[0] = x35;
- out[1] = x34;
- out[2] = x33;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e191m19_3limbs/feadd.v b/src/Specific/montgomery64_2e191m19_3limbs/feadd.v
deleted file mode 100644
index ebf97915e..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e191m19_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e191m19_3limbs/feaddDisplay.log b/src/Specific/montgomery64_2e191m19_3limbs/feaddDisplay.log
deleted file mode 100644
index 0ebc92482..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = addcarryx_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = addcarryx_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = addcarryx_u64(x17, x6, x10);
- uint64_t x22, uint8_t x23 = subborrow_u64(0x0, x13, 0xffffffffffffffedL);
- uint64_t x25, uint8_t x26 = subborrow_u64(x23, x16, 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x19, 0x7fffffffffffffffL);
- uint64_t _, uint8_t x32 = subborrow_u64(x29, x20, 0x0);
- uint64_t x33 = cmovznz64(x32, x28, x19);
- uint64_t x34 = cmovznz64(x32, x25, x16);
- uint64_t x35 = cmovznz64(x32, x22, x13);
- return (x33, x34, x35))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e191m19_3limbs/feaddDisplay.v b/src/Specific/montgomery64_2e191m19_3limbs/feaddDisplay.v
deleted file mode 100644
index 5a709da06..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e191m19_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e191m19_3limbs/femul.c b/src/Specific/montgomery64_2e191m19_3limbs/femul.c
deleted file mode 100644
index df68f86c4..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/femul.c
+++ /dev/null
@@ -1,80 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x14; uint64_t x13 = _mulx_u64(x5, x9, &x14);
- { uint64_t x17; uint64_t x16 = _mulx_u64(x5, x11, &x17);
- { uint64_t x20; uint64_t x19 = _mulx_u64(x5, x10, &x20);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x14, x16, &x22);
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(x23, x17, x19, &x25);
- { uint64_t x28; uint8_t _ = _addcarryx_u64(0x0, x26, x20, &x28);
- { uint64_t _; uint64_t x31 = _mulx_u64(x13, 0x86bca1af286bca1bL, &_);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x31, 0xffffffffffffffedL, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x31, 0xffffffffffffffffL, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x31, 0x7fffffffffffffffL, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x35, x37, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x38, x40, &x46);
- { uint64_t x49; uint8_t _ = _addcarryx_u64(0x0, x47, x41, &x49);
- { uint64_t _; uint8_t x53 = _addcarryx_u64(0x0, x13, x34, &_);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x22, x43, &x55);
- { uint64_t x58; uint8_t x59 = _addcarryx_u64(x56, x25, x46, &x58);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x59, x28, x49, &x61);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x7, x9, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x7, x11, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x7, x10, &x71);
- { uint64_t x73; uint8_t x74 = _addcarryx_u64(0x0, x65, x67, &x73);
- { uint64_t x76; uint8_t x77 = _addcarryx_u64(x74, x68, x70, &x76);
- { uint64_t x79; uint8_t _ = _addcarryx_u64(0x0, x77, x71, &x79);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x55, x64, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x58, x73, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x61, x76, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x62, x79, &x91);
- { uint64_t _; uint64_t x94 = _mulx_u64(x82, 0x86bca1af286bca1bL, &_);
- { uint64_t x98; uint64_t x97 = _mulx_u64(x94, 0xffffffffffffffedL, &x98);
- { uint64_t x101; uint64_t x100 = _mulx_u64(x94, 0xffffffffffffffffL, &x101);
- { uint64_t x104; uint64_t x103 = _mulx_u64(x94, 0x7fffffffffffffffL, &x104);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(0x0, x98, x100, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x101, x103, &x109);
- { uint64_t x112; uint8_t _ = _addcarryx_u64(0x0, x110, x104, &x112);
- { uint64_t _; uint8_t x116 = _addcarryx_u64(0x0, x82, x97, &_);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x85, x106, &x118);
- { uint64_t x121; uint8_t x122 = _addcarryx_u64(x119, x88, x109, &x121);
- { uint64_t x124; uint8_t x125 = _addcarryx_u64(x122, x91, x112, &x124);
- { uint8_t x126 = (x125 + x92);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x6, x9, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x6, x11, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x6, x10, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x129, x131, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x132, x134, &x140);
- { uint64_t x143; uint8_t _ = _addcarryx_u64(0x0, x141, x135, &x143);
- { uint64_t x146; uint8_t x147 = _addcarryx_u64(0x0, x118, x128, &x146);
- { uint64_t x149; uint8_t x150 = _addcarryx_u64(x147, x121, x137, &x149);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x124, x140, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x126, x143, &x155);
- { uint64_t _; uint64_t x158 = _mulx_u64(x146, 0x86bca1af286bca1bL, &_);
- { uint64_t x162; uint64_t x161 = _mulx_u64(x158, 0xffffffffffffffedL, &x162);
- { uint64_t x165; uint64_t x164 = _mulx_u64(x158, 0xffffffffffffffffL, &x165);
- { uint64_t x168; uint64_t x167 = _mulx_u64(x158, 0x7fffffffffffffffL, &x168);
- { uint64_t x170; uint8_t x171 = _addcarryx_u64(0x0, x162, x164, &x170);
- { uint64_t x173; uint8_t x174 = _addcarryx_u64(x171, x165, x167, &x173);
- { uint64_t x176; uint8_t _ = _addcarryx_u64(0x0, x174, x168, &x176);
- { uint64_t _; uint8_t x180 = _addcarryx_u64(0x0, x146, x161, &_);
- { uint64_t x182; uint8_t x183 = _addcarryx_u64(x180, x149, x170, &x182);
- { uint64_t x185; uint8_t x186 = _addcarryx_u64(x183, x152, x173, &x185);
- { uint64_t x188; uint8_t x189 = _addcarryx_u64(x186, x155, x176, &x188);
- { uint8_t x190 = (x189 + x156);
- { uint64_t x192; uint8_t x193 = _subborrow_u64(0x0, x182, 0xffffffffffffffedL, &x192);
- { uint64_t x195; uint8_t x196 = _subborrow_u64(x193, x185, 0xffffffffffffffffL, &x195);
- { uint64_t x198; uint8_t x199 = _subborrow_u64(x196, x188, 0x7fffffffffffffffL, &x198);
- { uint64_t _; uint8_t x202 = _subborrow_u64(x199, x190, 0x0, &_);
- { uint64_t x203 = cmovznz64(x202, x198, x188);
- { uint64_t x204 = cmovznz64(x202, x195, x185);
- { uint64_t x205 = cmovznz64(x202, x192, x182);
- out[0] = x205;
- out[1] = x204;
- out[2] = x203;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e191m19_3limbs/femul.v b/src/Specific/montgomery64_2e191m19_3limbs/femul.v
deleted file mode 100644
index 6434bcd37..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e191m19_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e191m19_3limbs/femulDisplay.log b/src/Specific/montgomery64_2e191m19_3limbs/femulDisplay.log
deleted file mode 100644
index 0534b16de..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,75 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint64_t x14 = mulx_u64(x5, x9);
- uint64_t x16, uint64_t x17 = mulx_u64(x5, x11);
- uint64_t x19, uint64_t x20 = mulx_u64(x5, x10);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x14, x16);
- uint64_t x25, uint8_t x26 = addcarryx_u64(x23, x17, x19);
- uint64_t x28, uint8_t _ = addcarryx_u64(0x0, x26, x20);
- uint64_t x31, uint64_t _ = mulx_u64(x13, 0x86bca1af286bca1bL);
- uint64_t x34, uint64_t x35 = mulx_u64(x31, 0xffffffffffffffedL);
- uint64_t x37, uint64_t x38 = mulx_u64(x31, 0xffffffffffffffffL);
- uint64_t x40, uint64_t x41 = mulx_u64(x31, 0x7fffffffffffffffL);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x35, x37);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x38, x40);
- uint64_t x49, uint8_t _ = addcarryx_u64(0x0, x47, x41);
- uint64_t _, uint8_t x53 = addcarryx_u64(0x0, x13, x34);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x22, x43);
- uint64_t x58, uint8_t x59 = addcarryx_u64(x56, x25, x46);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x59, x28, x49);
- uint64_t x64, uint64_t x65 = mulx_u64(x7, x9);
- uint64_t x67, uint64_t x68 = mulx_u64(x7, x11);
- uint64_t x70, uint64_t x71 = mulx_u64(x7, x10);
- uint64_t x73, uint8_t x74 = addcarryx_u64(0x0, x65, x67);
- uint64_t x76, uint8_t x77 = addcarryx_u64(x74, x68, x70);
- uint64_t x79, uint8_t _ = addcarryx_u64(0x0, x77, x71);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x55, x64);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x58, x73);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x61, x76);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x62, x79);
- uint64_t x94, uint64_t _ = mulx_u64(x82, 0x86bca1af286bca1bL);
- uint64_t x97, uint64_t x98 = mulx_u64(x94, 0xffffffffffffffedL);
- uint64_t x100, uint64_t x101 = mulx_u64(x94, 0xffffffffffffffffL);
- uint64_t x103, uint64_t x104 = mulx_u64(x94, 0x7fffffffffffffffL);
- uint64_t x106, uint8_t x107 = addcarryx_u64(0x0, x98, x100);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x101, x103);
- uint64_t x112, uint8_t _ = addcarryx_u64(0x0, x110, x104);
- uint64_t _, uint8_t x116 = addcarryx_u64(0x0, x82, x97);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x85, x106);
- uint64_t x121, uint8_t x122 = addcarryx_u64(x119, x88, x109);
- uint64_t x124, uint8_t x125 = addcarryx_u64(x122, x91, x112);
- uint8_t x126 = (x125 + x92);
- uint64_t x128, uint64_t x129 = mulx_u64(x6, x9);
- uint64_t x131, uint64_t x132 = mulx_u64(x6, x11);
- uint64_t x134, uint64_t x135 = mulx_u64(x6, x10);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x129, x131);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x132, x134);
- uint64_t x143, uint8_t _ = addcarryx_u64(0x0, x141, x135);
- uint64_t x146, uint8_t x147 = addcarryx_u64(0x0, x118, x128);
- uint64_t x149, uint8_t x150 = addcarryx_u64(x147, x121, x137);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x124, x140);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x126, x143);
- uint64_t x158, uint64_t _ = mulx_u64(x146, 0x86bca1af286bca1bL);
- uint64_t x161, uint64_t x162 = mulx_u64(x158, 0xffffffffffffffedL);
- uint64_t x164, uint64_t x165 = mulx_u64(x158, 0xffffffffffffffffL);
- uint64_t x167, uint64_t x168 = mulx_u64(x158, 0x7fffffffffffffffL);
- uint64_t x170, uint8_t x171 = addcarryx_u64(0x0, x162, x164);
- uint64_t x173, uint8_t x174 = addcarryx_u64(x171, x165, x167);
- uint64_t x176, uint8_t _ = addcarryx_u64(0x0, x174, x168);
- uint64_t _, uint8_t x180 = addcarryx_u64(0x0, x146, x161);
- uint64_t x182, uint8_t x183 = addcarryx_u64(x180, x149, x170);
- uint64_t x185, uint8_t x186 = addcarryx_u64(x183, x152, x173);
- uint64_t x188, uint8_t x189 = addcarryx_u64(x186, x155, x176);
- uint8_t x190 = (x189 + x156);
- uint64_t x192, uint8_t x193 = subborrow_u64(0x0, x182, 0xffffffffffffffedL);
- uint64_t x195, uint8_t x196 = subborrow_u64(x193, x185, 0xffffffffffffffffL);
- uint64_t x198, uint8_t x199 = subborrow_u64(x196, x188, 0x7fffffffffffffffL);
- uint64_t _, uint8_t x202 = subborrow_u64(x199, x190, 0x0);
- uint64_t x203 = cmovznz64(x202, x198, x188);
- uint64_t x204 = cmovznz64(x202, x195, x185);
- uint64_t x205 = cmovznz64(x202, x192, x182);
- return (x203, x204, x205))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e191m19_3limbs/femulDisplay.v b/src/Specific/montgomery64_2e191m19_3limbs/femulDisplay.v
deleted file mode 100644
index 7410b8ffb..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e191m19_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e191m19_3limbs/fenz.c b/src/Specific/montgomery64_2e191m19_3limbs/fenz.c
deleted file mode 100644
index 2632a2866..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/fenz.c
+++ /dev/null
@@ -1,9 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x5 = (x4 | x3);
- { uint64_t x6 = (x2 | x5);
- out[0] = x6;
- }}}}}
-}
diff --git a/src/Specific/montgomery64_2e191m19_3limbs/fenz.v b/src/Specific/montgomery64_2e191m19_3limbs/fenz.v
deleted file mode 100644
index 180980a54..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e191m19_3limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e191m19_3limbs/fenzDisplay.log b/src/Specific/montgomery64_2e191m19_3limbs/fenzDisplay.log
deleted file mode 100644
index 680322e0f..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/fenzDisplay.log
+++ /dev/null
@@ -1,9 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x5 = (x4 | x3);
- uint64_t x6 = (x2 | x5);
- return x6)
-x
- : word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e191m19_3limbs/fenzDisplay.v b/src/Specific/montgomery64_2e191m19_3limbs/fenzDisplay.v
deleted file mode 100644
index 408b1852a..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e191m19_3limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e191m19_3limbs/feopp.c b/src/Specific/montgomery64_2e191m19_3limbs/feopp.c
deleted file mode 100644
index 9c2e12b67..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/feopp.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void feopp(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6; uint8_t x7 = _subborrow_u64(0x0, 0x0, x2, &x6);
- { uint64_t x9; uint8_t x10 = _subborrow_u64(x7, 0x0, x4, &x9);
- { uint64_t x12; uint8_t x13 = _subborrow_u64(x10, 0x0, x3, &x12);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0xffffffffffffffedL);
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x6, x15, &x17);
- { uint64_t x19 = (x14 & 0xffffffffffffffffL);
- { uint64_t x21; uint8_t x22 = _addcarryx_u64(x18, x9, x19, &x21);
- { uint64_t x23 = (x14 & 0x7fffffffffffffffL);
- { uint64_t x25; uint8_t _ = _addcarryx_u64(x22, x12, x23, &x25);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e191m19_3limbs/feopp.v b/src/Specific/montgomery64_2e191m19_3limbs/feopp.v
deleted file mode 100644
index 84f43edf7..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e191m19_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e191m19_3limbs/feoppDisplay.log b/src/Specific/montgomery64_2e191m19_3limbs/feoppDisplay.log
deleted file mode 100644
index 3b72f2aea..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/feoppDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x9, uint8_t x10 = subborrow_u64(x7, 0x0, x4);
- uint64_t x12, uint8_t x13 = subborrow_u64(x10, 0x0, x3);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0xffffffffffffffedL);
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x6, x15);
- uint64_t x19 = (x14 & 0xffffffffffffffffL);
- uint64_t x21, uint8_t x22 = addcarryx_u64(x18, x9, x19);
- uint64_t x23 = (x14 & 0x7fffffffffffffffL);
- uint64_t x25, uint8_t _ = addcarryx_u64(x22, x12, x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e191m19_3limbs/feoppDisplay.v b/src/Specific/montgomery64_2e191m19_3limbs/feoppDisplay.v
deleted file mode 100644
index 635b58fdb..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e191m19_3limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e191m19_3limbs/fesquare.c b/src/Specific/montgomery64_2e191m19_3limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e191m19_3limbs/fesub.c b/src/Specific/montgomery64_2e191m19_3limbs/fesub.c
deleted file mode 100644
index e6683bd03..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/fesub.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _subborrow_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _subborrow_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _subborrow_u64(x17, x6, x10, &x19);
- { uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- { uint64_t x22 = (x21 & 0xffffffffffffffedL);
- { uint64_t x24; uint8_t x25 = _addcarryx_u64(0x0, x13, x22, &x24);
- { uint64_t x26 = (x21 & 0xffffffffffffffffL);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x25, x16, x26, &x28);
- { uint64_t x30 = (x21 & 0x7fffffffffffffffL);
- { uint64_t x32; uint8_t _ = _addcarryx_u64(x29, x19, x30, &x32);
- out[0] = x24;
- out[1] = x28;
- out[2] = x32;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e191m19_3limbs/fesub.v b/src/Specific/montgomery64_2e191m19_3limbs/fesub.v
deleted file mode 100644
index a032b33aa..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e191m19_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e191m19_3limbs/fesubDisplay.log b/src/Specific/montgomery64_2e191m19_3limbs/fesubDisplay.log
deleted file mode 100644
index 0a4d49441..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = subborrow_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = subborrow_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = subborrow_u64(x17, x6, x10);
- uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- uint64_t x22 = (x21 & 0xffffffffffffffedL);
- uint64_t x24, uint8_t x25 = addcarryx_u64(0x0, x13, x22);
- uint64_t x26 = (x21 & 0xffffffffffffffffL);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x25, x16, x26);
- uint64_t x30 = (x21 & 0x7fffffffffffffffL);
- uint64_t x32, uint8_t _ = addcarryx_u64(x29, x19, x30);
- (Return x32, Return x28, Return x24))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e191m19_3limbs/fesubDisplay.v b/src/Specific/montgomery64_2e191m19_3limbs/fesubDisplay.v
deleted file mode 100644
index 23419c34e..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e191m19_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e191m19_3limbs/py_interpreter.sh b/src/Specific/montgomery64_2e191m19_3limbs/py_interpreter.sh
deleted file mode 100755
index 33c60afb6..000000000
--- a/src/Specific/montgomery64_2e191m19_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**191 - 19' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e192m2e64m1_3limbs/CurveParameters.v b/src/Specific/montgomery64_2e192m2e64m1_3limbs/CurveParameters.v
deleted file mode 100644
index bdd7fe851..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^192 - 2^64 - 1
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 64;
- bitwidth := 64;
- s := 2^192;
- c := [(1, 1); (2^64, 1)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e192m2e64m1_3limbs/Synthesis.v b/src/Specific/montgomery64_2e192m2e64m1_3limbs/Synthesis.v
deleted file mode 100644
index 0cba6c8b2..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e192m2e64m1_3limbs.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/montgomery64_2e192m2e64m1_3limbs/compiler.sh b/src/Specific/montgomery64_2e192m2e64m1_3limbs/compiler.sh
deleted file mode 100755
index 62e2b56ab..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e192m2e64m1_3limbs/compilerxx.sh b/src/Specific/montgomery64_2e192m2e64m1_3limbs/compilerxx.sh
deleted file mode 100755
index dc2fd5d10..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e192m2e64m1_3limbs/feadd.c b/src/Specific/montgomery64_2e192m2e64m1_3limbs/feadd.c
deleted file mode 100644
index b46c6c8d6..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/feadd.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _addcarryx_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _addcarryx_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _addcarryx_u64(x17, x6, x10, &x19);
- { uint64_t x22; uint8_t x23 = _subborrow_u64(0x0, x13, 0xffffffffffffffffL, &x22);
- { uint64_t x25; uint8_t x26 = _subborrow_u64(x23, x16, 0xfffffffffffffffeL, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x19, 0xffffffffffffffffL, &x28);
- { uint64_t _; uint8_t x32 = _subborrow_u64(x29, x20, 0x0, &_);
- { uint64_t x33 = cmovznz64(x32, x28, x19);
- { uint64_t x34 = cmovznz64(x32, x25, x16);
- { uint64_t x35 = cmovznz64(x32, x22, x13);
- out[0] = x35;
- out[1] = x34;
- out[2] = x33;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e192m2e64m1_3limbs/feadd.v b/src/Specific/montgomery64_2e192m2e64m1_3limbs/feadd.v
deleted file mode 100644
index 79eccab6f..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e192m2e64m1_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e192m2e64m1_3limbs/feaddDisplay.log b/src/Specific/montgomery64_2e192m2e64m1_3limbs/feaddDisplay.log
deleted file mode 100644
index 6ab76e5b9..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = addcarryx_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = addcarryx_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = addcarryx_u64(x17, x6, x10);
- uint64_t x22, uint8_t x23 = subborrow_u64(0x0, x13, 0xffffffffffffffffL);
- uint64_t x25, uint8_t x26 = subborrow_u64(x23, x16, 0xfffffffffffffffeL);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x19, 0xffffffffffffffffL);
- uint64_t _, uint8_t x32 = subborrow_u64(x29, x20, 0x0);
- uint64_t x33 = cmovznz64(x32, x28, x19);
- uint64_t x34 = cmovznz64(x32, x25, x16);
- uint64_t x35 = cmovznz64(x32, x22, x13);
- return (x33, x34, x35))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e192m2e64m1_3limbs/feaddDisplay.v b/src/Specific/montgomery64_2e192m2e64m1_3limbs/feaddDisplay.v
deleted file mode 100644
index 78697c705..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e192m2e64m1_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e192m2e64m1_3limbs/femul.c b/src/Specific/montgomery64_2e192m2e64m1_3limbs/femul.c
deleted file mode 100644
index aea170aaa..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/femul.c
+++ /dev/null
@@ -1,77 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x14; uint64_t x13 = _mulx_u64(x5, x9, &x14);
- { uint64_t x17; uint64_t x16 = _mulx_u64(x5, x11, &x17);
- { uint64_t x20; uint64_t x19 = _mulx_u64(x5, x10, &x20);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x14, x16, &x22);
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(x23, x17, x19, &x25);
- { uint64_t x28; uint8_t _ = _addcarryx_u64(0x0, x26, x20, &x28);
- { uint64_t x32; uint64_t x31 = _mulx_u64(x13, 0xffffffffffffffffL, &x32);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x13, 0xfffffffffffffffeL, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x13, 0xffffffffffffffffL, &x38);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(0x0, x32, x34, &x40);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(x41, x35, x37, &x43);
- { uint64_t x46; uint8_t _ = _addcarryx_u64(0x0, x44, x38, &x46);
- { uint64_t _; uint8_t x50 = _addcarryx_u64(0x0, x13, x31, &_);
- { uint64_t x52; uint8_t x53 = _addcarryx_u64(x50, x22, x40, &x52);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x25, x43, &x55);
- { uint64_t x58; uint8_t x59 = _addcarryx_u64(x56, x28, x46, &x58);
- { uint64_t x62; uint64_t x61 = _mulx_u64(x7, x9, &x62);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x7, x11, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x7, x10, &x68);
- { uint64_t x70; uint8_t x71 = _addcarryx_u64(0x0, x62, x64, &x70);
- { uint64_t x73; uint8_t x74 = _addcarryx_u64(x71, x65, x67, &x73);
- { uint64_t x76; uint8_t _ = _addcarryx_u64(0x0, x74, x68, &x76);
- { uint64_t x79; uint8_t x80 = _addcarryx_u64(0x0, x52, x61, &x79);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(x80, x55, x70, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x58, x73, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x59, x76, &x88);
- { uint64_t x92; uint64_t x91 = _mulx_u64(x79, 0xffffffffffffffffL, &x92);
- { uint64_t x95; uint64_t x94 = _mulx_u64(x79, 0xfffffffffffffffeL, &x95);
- { uint64_t x98; uint64_t x97 = _mulx_u64(x79, 0xffffffffffffffffL, &x98);
- { uint64_t x100; uint8_t x101 = _addcarryx_u64(0x0, x92, x94, &x100);
- { uint64_t x103; uint8_t x104 = _addcarryx_u64(x101, x95, x97, &x103);
- { uint64_t x106; uint8_t _ = _addcarryx_u64(0x0, x104, x98, &x106);
- { uint64_t _; uint8_t x110 = _addcarryx_u64(0x0, x79, x91, &_);
- { uint64_t x112; uint8_t x113 = _addcarryx_u64(x110, x82, x100, &x112);
- { uint64_t x115; uint8_t x116 = _addcarryx_u64(x113, x85, x103, &x115);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x88, x106, &x118);
- { uint8_t x120 = (x119 + x89);
- { uint64_t x123; uint64_t x122 = _mulx_u64(x6, x9, &x123);
- { uint64_t x126; uint64_t x125 = _mulx_u64(x6, x11, &x126);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x6, x10, &x129);
- { uint64_t x131; uint8_t x132 = _addcarryx_u64(0x0, x123, x125, &x131);
- { uint64_t x134; uint8_t x135 = _addcarryx_u64(x132, x126, x128, &x134);
- { uint64_t x137; uint8_t _ = _addcarryx_u64(0x0, x135, x129, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(0x0, x112, x122, &x140);
- { uint64_t x143; uint8_t x144 = _addcarryx_u64(x141, x115, x131, &x143);
- { uint64_t x146; uint8_t x147 = _addcarryx_u64(x144, x118, x134, &x146);
- { uint64_t x149; uint8_t x150 = _addcarryx_u64(x147, x120, x137, &x149);
- { uint64_t x153; uint64_t x152 = _mulx_u64(x140, 0xffffffffffffffffL, &x153);
- { uint64_t x156; uint64_t x155 = _mulx_u64(x140, 0xfffffffffffffffeL, &x156);
- { uint64_t x159; uint64_t x158 = _mulx_u64(x140, 0xffffffffffffffffL, &x159);
- { uint64_t x161; uint8_t x162 = _addcarryx_u64(0x0, x153, x155, &x161);
- { uint64_t x164; uint8_t x165 = _addcarryx_u64(x162, x156, x158, &x164);
- { uint64_t x167; uint8_t _ = _addcarryx_u64(0x0, x165, x159, &x167);
- { uint64_t _; uint8_t x171 = _addcarryx_u64(0x0, x140, x152, &_);
- { uint64_t x173; uint8_t x174 = _addcarryx_u64(x171, x143, x161, &x173);
- { uint64_t x176; uint8_t x177 = _addcarryx_u64(x174, x146, x164, &x176);
- { uint64_t x179; uint8_t x180 = _addcarryx_u64(x177, x149, x167, &x179);
- { uint8_t x181 = (x180 + x150);
- { uint64_t x183; uint8_t x184 = _subborrow_u64(0x0, x173, 0xffffffffffffffffL, &x183);
- { uint64_t x186; uint8_t x187 = _subborrow_u64(x184, x176, 0xfffffffffffffffeL, &x186);
- { uint64_t x189; uint8_t x190 = _subborrow_u64(x187, x179, 0xffffffffffffffffL, &x189);
- { uint64_t _; uint8_t x193 = _subborrow_u64(x190, x181, 0x0, &_);
- { uint64_t x194 = cmovznz64(x193, x189, x179);
- { uint64_t x195 = cmovznz64(x193, x186, x176);
- { uint64_t x196 = cmovznz64(x193, x183, x173);
- out[0] = x196;
- out[1] = x195;
- out[2] = x194;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e192m2e64m1_3limbs/femul.v b/src/Specific/montgomery64_2e192m2e64m1_3limbs/femul.v
deleted file mode 100644
index f1ba1337b..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e192m2e64m1_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e192m2e64m1_3limbs/femulDisplay.log b/src/Specific/montgomery64_2e192m2e64m1_3limbs/femulDisplay.log
deleted file mode 100644
index 7607e6c7f..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,72 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint64_t x14 = mulx_u64(x5, x9);
- uint64_t x16, uint64_t x17 = mulx_u64(x5, x11);
- uint64_t x19, uint64_t x20 = mulx_u64(x5, x10);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x14, x16);
- uint64_t x25, uint8_t x26 = addcarryx_u64(x23, x17, x19);
- uint64_t x28, uint8_t _ = addcarryx_u64(0x0, x26, x20);
- uint64_t x31, uint64_t x32 = mulx_u64(x13, 0xffffffffffffffffL);
- uint64_t x34, uint64_t x35 = mulx_u64(x13, 0xfffffffffffffffeL);
- uint64_t x37, uint64_t x38 = mulx_u64(x13, 0xffffffffffffffffL);
- uint64_t x40, uint8_t x41 = addcarryx_u64(0x0, x32, x34);
- uint64_t x43, uint8_t x44 = addcarryx_u64(x41, x35, x37);
- uint64_t x46, uint8_t _ = addcarryx_u64(0x0, x44, x38);
- uint64_t _, uint8_t x50 = addcarryx_u64(0x0, x13, x31);
- uint64_t x52, uint8_t x53 = addcarryx_u64(x50, x22, x40);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x25, x43);
- uint64_t x58, uint8_t x59 = addcarryx_u64(x56, x28, x46);
- uint64_t x61, uint64_t x62 = mulx_u64(x7, x9);
- uint64_t x64, uint64_t x65 = mulx_u64(x7, x11);
- uint64_t x67, uint64_t x68 = mulx_u64(x7, x10);
- uint64_t x70, uint8_t x71 = addcarryx_u64(0x0, x62, x64);
- uint64_t x73, uint8_t x74 = addcarryx_u64(x71, x65, x67);
- uint64_t x76, uint8_t _ = addcarryx_u64(0x0, x74, x68);
- uint64_t x79, uint8_t x80 = addcarryx_u64(0x0, x52, x61);
- uint64_t x82, uint8_t x83 = addcarryx_u64(x80, x55, x70);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x58, x73);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x59, x76);
- uint64_t x91, uint64_t x92 = mulx_u64(x79, 0xffffffffffffffffL);
- uint64_t x94, uint64_t x95 = mulx_u64(x79, 0xfffffffffffffffeL);
- uint64_t x97, uint64_t x98 = mulx_u64(x79, 0xffffffffffffffffL);
- uint64_t x100, uint8_t x101 = addcarryx_u64(0x0, x92, x94);
- uint64_t x103, uint8_t x104 = addcarryx_u64(x101, x95, x97);
- uint64_t x106, uint8_t _ = addcarryx_u64(0x0, x104, x98);
- uint64_t _, uint8_t x110 = addcarryx_u64(0x0, x79, x91);
- uint64_t x112, uint8_t x113 = addcarryx_u64(x110, x82, x100);
- uint64_t x115, uint8_t x116 = addcarryx_u64(x113, x85, x103);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x88, x106);
- uint8_t x120 = (x119 + x89);
- uint64_t x122, uint64_t x123 = mulx_u64(x6, x9);
- uint64_t x125, uint64_t x126 = mulx_u64(x6, x11);
- uint64_t x128, uint64_t x129 = mulx_u64(x6, x10);
- uint64_t x131, uint8_t x132 = addcarryx_u64(0x0, x123, x125);
- uint64_t x134, uint8_t x135 = addcarryx_u64(x132, x126, x128);
- uint64_t x137, uint8_t _ = addcarryx_u64(0x0, x135, x129);
- uint64_t x140, uint8_t x141 = addcarryx_u64(0x0, x112, x122);
- uint64_t x143, uint8_t x144 = addcarryx_u64(x141, x115, x131);
- uint64_t x146, uint8_t x147 = addcarryx_u64(x144, x118, x134);
- uint64_t x149, uint8_t x150 = addcarryx_u64(x147, x120, x137);
- uint64_t x152, uint64_t x153 = mulx_u64(x140, 0xffffffffffffffffL);
- uint64_t x155, uint64_t x156 = mulx_u64(x140, 0xfffffffffffffffeL);
- uint64_t x158, uint64_t x159 = mulx_u64(x140, 0xffffffffffffffffL);
- uint64_t x161, uint8_t x162 = addcarryx_u64(0x0, x153, x155);
- uint64_t x164, uint8_t x165 = addcarryx_u64(x162, x156, x158);
- uint64_t x167, uint8_t _ = addcarryx_u64(0x0, x165, x159);
- uint64_t _, uint8_t x171 = addcarryx_u64(0x0, x140, x152);
- uint64_t x173, uint8_t x174 = addcarryx_u64(x171, x143, x161);
- uint64_t x176, uint8_t x177 = addcarryx_u64(x174, x146, x164);
- uint64_t x179, uint8_t x180 = addcarryx_u64(x177, x149, x167);
- uint8_t x181 = (x180 + x150);
- uint64_t x183, uint8_t x184 = subborrow_u64(0x0, x173, 0xffffffffffffffffL);
- uint64_t x186, uint8_t x187 = subborrow_u64(x184, x176, 0xfffffffffffffffeL);
- uint64_t x189, uint8_t x190 = subborrow_u64(x187, x179, 0xffffffffffffffffL);
- uint64_t _, uint8_t x193 = subborrow_u64(x190, x181, 0x0);
- uint64_t x194 = cmovznz64(x193, x189, x179);
- uint64_t x195 = cmovznz64(x193, x186, x176);
- uint64_t x196 = cmovznz64(x193, x183, x173);
- return (x194, x195, x196))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e192m2e64m1_3limbs/femulDisplay.v b/src/Specific/montgomery64_2e192m2e64m1_3limbs/femulDisplay.v
deleted file mode 100644
index fdd8499d0..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e192m2e64m1_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e192m2e64m1_3limbs/fenz.c b/src/Specific/montgomery64_2e192m2e64m1_3limbs/fenz.c
deleted file mode 100644
index 2632a2866..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/fenz.c
+++ /dev/null
@@ -1,9 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x5 = (x4 | x3);
- { uint64_t x6 = (x2 | x5);
- out[0] = x6;
- }}}}}
-}
diff --git a/src/Specific/montgomery64_2e192m2e64m1_3limbs/fenz.v b/src/Specific/montgomery64_2e192m2e64m1_3limbs/fenz.v
deleted file mode 100644
index da71ee297..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e192m2e64m1_3limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e192m2e64m1_3limbs/fenzDisplay.log b/src/Specific/montgomery64_2e192m2e64m1_3limbs/fenzDisplay.log
deleted file mode 100644
index 680322e0f..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/fenzDisplay.log
+++ /dev/null
@@ -1,9 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x5 = (x4 | x3);
- uint64_t x6 = (x2 | x5);
- return x6)
-x
- : word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e192m2e64m1_3limbs/fenzDisplay.v b/src/Specific/montgomery64_2e192m2e64m1_3limbs/fenzDisplay.v
deleted file mode 100644
index 05f27ba77..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e192m2e64m1_3limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e192m2e64m1_3limbs/feopp.c b/src/Specific/montgomery64_2e192m2e64m1_3limbs/feopp.c
deleted file mode 100644
index 13a4cb613..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/feopp.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void feopp(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6; uint8_t x7 = _subborrow_u64(0x0, 0x0, x2, &x6);
- { uint64_t x9; uint8_t x10 = _subborrow_u64(x7, 0x0, x4, &x9);
- { uint64_t x12; uint8_t x13 = _subborrow_u64(x10, 0x0, x3, &x12);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0xffffffffffffffffL);
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x6, x15, &x17);
- { uint64_t x19 = (x14 & 0xfffffffffffffffeL);
- { uint64_t x21; uint8_t x22 = _addcarryx_u64(x18, x9, x19, &x21);
- { uint64_t x23 = (x14 & 0xffffffffffffffffL);
- { uint64_t x25; uint8_t _ = _addcarryx_u64(x22, x12, x23, &x25);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e192m2e64m1_3limbs/feopp.v b/src/Specific/montgomery64_2e192m2e64m1_3limbs/feopp.v
deleted file mode 100644
index 8ac57eeae..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e192m2e64m1_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e192m2e64m1_3limbs/feoppDisplay.log b/src/Specific/montgomery64_2e192m2e64m1_3limbs/feoppDisplay.log
deleted file mode 100644
index 130eb71da..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/feoppDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x9, uint8_t x10 = subborrow_u64(x7, 0x0, x4);
- uint64_t x12, uint8_t x13 = subborrow_u64(x10, 0x0, x3);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0xffffffffffffffffL);
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x6, x15);
- uint64_t x19 = (x14 & 0xfffffffffffffffeL);
- uint64_t x21, uint8_t x22 = addcarryx_u64(x18, x9, x19);
- uint64_t x23 = (x14 & 0xffffffffffffffffL);
- uint64_t x25, uint8_t _ = addcarryx_u64(x22, x12, x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e192m2e64m1_3limbs/feoppDisplay.v b/src/Specific/montgomery64_2e192m2e64m1_3limbs/feoppDisplay.v
deleted file mode 100644
index 5086092dd..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e192m2e64m1_3limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e192m2e64m1_3limbs/fesquare.c b/src/Specific/montgomery64_2e192m2e64m1_3limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e192m2e64m1_3limbs/fesub.c b/src/Specific/montgomery64_2e192m2e64m1_3limbs/fesub.c
deleted file mode 100644
index 5ccff56fb..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/fesub.c
+++ /dev/null
@@ -1,22 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint64_t x13; uint8_t x14 = _subborrow_u64(0x0, x5, x9, &x13);
- { uint64_t x16; uint8_t x17 = _subborrow_u64(x14, x7, x11, &x16);
- { uint64_t x19; uint8_t x20 = _subborrow_u64(x17, x6, x10, &x19);
- { uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- { uint64_t x22 = (x21 & 0xffffffffffffffffL);
- { uint64_t x24; uint8_t x25 = _addcarryx_u64(0x0, x13, x22, &x24);
- { uint64_t x26 = (x21 & 0xfffffffffffffffeL);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x25, x16, x26, &x28);
- { uint64_t x30 = (x21 & 0xffffffffffffffffL);
- { uint64_t x32; uint8_t _ = _addcarryx_u64(x29, x19, x30, &x32);
- out[0] = x24;
- out[1] = x28;
- out[2] = x32;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e192m2e64m1_3limbs/fesub.v b/src/Specific/montgomery64_2e192m2e64m1_3limbs/fesub.v
deleted file mode 100644
index 4e63c1baa..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e192m2e64m1_3limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e192m2e64m1_3limbs/fesubDisplay.log b/src/Specific/montgomery64_2e192m2e64m1_3limbs/fesubDisplay.log
deleted file mode 100644
index d0da94fa8..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint64_t x13, uint8_t x14 = subborrow_u64(0x0, x5, x9);
- uint64_t x16, uint8_t x17 = subborrow_u64(x14, x7, x11);
- uint64_t x19, uint8_t x20 = subborrow_u64(x17, x6, x10);
- uint64_t x21 = cmovznz64(x20, 0x0, 0xffffffffffffffffL);
- uint64_t x22 = (x21 & 0xffffffffffffffffL);
- uint64_t x24, uint8_t x25 = addcarryx_u64(0x0, x13, x22);
- uint64_t x26 = (x21 & 0xfffffffffffffffeL);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x25, x16, x26);
- uint64_t x30 = (x21 & 0xffffffffffffffffL);
- uint64_t x32, uint8_t _ = addcarryx_u64(x29, x19, x30);
- (Return x32, Return x28, Return x24))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e192m2e64m1_3limbs/fesubDisplay.v b/src/Specific/montgomery64_2e192m2e64m1_3limbs/fesubDisplay.v
deleted file mode 100644
index f5f075671..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e192m2e64m1_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e192m2e64m1_3limbs/py_interpreter.sh b/src/Specific/montgomery64_2e192m2e64m1_3limbs/py_interpreter.sh
deleted file mode 100755
index 5b7c36b50..000000000
--- a/src/Specific/montgomery64_2e192m2e64m1_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**192 - 2**64 - 1' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e194m33_4limbs/CurveParameters.v b/src/Specific/montgomery64_2e194m33_4limbs/CurveParameters.v
deleted file mode 100644
index 2b450282c..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^194 - 33
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 64;
- bitwidth := 64;
- s := 2^194;
- c := [(1, 33)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e194m33_4limbs/Synthesis.v b/src/Specific/montgomery64_2e194m33_4limbs/Synthesis.v
deleted file mode 100644
index 03a183c79..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e194m33_4limbs.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/montgomery64_2e194m33_4limbs/compiler.sh b/src/Specific/montgomery64_2e194m33_4limbs/compiler.sh
deleted file mode 100755
index 6f4ffcdbb..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<194) - 33' "$@"
diff --git a/src/Specific/montgomery64_2e194m33_4limbs/compilerxx.sh b/src/Specific/montgomery64_2e194m33_4limbs/compilerxx.sh
deleted file mode 100755
index ac5fbd0c6..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<194) - 33' "$@"
diff --git a/src/Specific/montgomery64_2e194m33_4limbs/feadd.c b/src/Specific/montgomery64_2e194m33_4limbs/feadd.c
deleted file mode 100644
index ac925e7c3..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _addcarryx_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _addcarryx_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x24, x8, x14, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u64(0x0, x17, 0xffffffffffffffdfL, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u64(x30, x20, 0xffffffffffffffffL, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u64(x33, x23, 0xffffffffffffffffL, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u64(x36, x26, 0x3, &x38);
- { uint64_t _; uint8_t x42 = _subborrow_u64(x39, x27, 0x0, &_);
- { uint64_t x43 = cmovznz64(x42, x38, x26);
- { uint64_t x44 = cmovznz64(x42, x35, x23);
- { uint64_t x45 = cmovznz64(x42, x32, x20);
- { uint64_t x46 = cmovznz64(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e194m33_4limbs/feadd.v b/src/Specific/montgomery64_2e194m33_4limbs/feadd.v
deleted file mode 100644
index 2e181c924..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e194m33_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e194m33_4limbs/feaddDisplay.log b/src/Specific/montgomery64_2e194m33_4limbs/feaddDisplay.log
deleted file mode 100644
index 031dc3bf4..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t x30 = subborrow_u64(0x0, x17, 0xffffffffffffffdfL);
- uint64_t x32, uint8_t x33 = subborrow_u64(x30, x20, 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = subborrow_u64(x33, x23, 0xffffffffffffffffL);
- uint64_t x38, uint8_t x39 = subborrow_u64(x36, x26, 0x3);
- uint64_t _, uint8_t x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e194m33_4limbs/feaddDisplay.v b/src/Specific/montgomery64_2e194m33_4limbs/feaddDisplay.v
deleted file mode 100644
index c38357610..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e194m33_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e194m33_4limbs/femul.c b/src/Specific/montgomery64_2e194m33_4limbs/femul.c
deleted file mode 100644
index 273eabe04..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/femul.c
+++ /dev/null
@@ -1,130 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x18; uint64_t x17 = _mulx_u64(x5, x11, &x18);
- { uint64_t x21; uint64_t x20 = _mulx_u64(x5, x13, &x21);
- { uint64_t x24; uint64_t x23 = _mulx_u64(x5, x15, &x24);
- { uint64_t x27; uint64_t x26 = _mulx_u64(x5, x14, &x27);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x18, x20, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x21, x23, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x24, x26, &x35);
- { uint64_t x38; uint8_t _ = _addcarryx_u64(0x0, x36, x27, &x38);
- { uint64_t _; uint64_t x41 = _mulx_u64(x17, 0xf83e0f83e0f83e1, &_);
- { uint64_t x45; uint64_t x44 = _mulx_u64(x41, 0xffffffffffffffdfL, &x45);
- { uint64_t x48; uint64_t x47 = _mulx_u64(x41, 0xffffffffffffffffL, &x48);
- { uint64_t x51; uint64_t x50 = _mulx_u64(x41, 0xffffffffffffffffL, &x51);
- { uint8_t x54; uint64_t x53 = _mulx_u64_out_u8(x41, 0x3, &x54);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(0x0, x45, x47, &x56);
- { uint64_t x59; uint8_t x60 = _addcarryx_u64(x57, x48, x50, &x59);
- { uint64_t x62; uint8_t x63 = _addcarryx_u64(x60, x51, x53, &x62);
- { uint8_t x64 = (x63 + x54);
- { uint64_t _; uint8_t x67 = _addcarryx_u64(0x0, x17, x44, &_);
- { uint64_t x69; uint8_t x70 = _addcarryx_u64(x67, x29, x56, &x69);
- { uint64_t x72; uint8_t x73 = _addcarryx_u64(x70, x32, x59, &x72);
- { uint64_t x75; uint8_t x76 = _addcarryx_u64(x73, x35, x62, &x75);
- { uint64_t x78; uint8_t x79 = _addcarryx_u64(x76, x38, x64, &x78);
- { uint64_t x82; uint64_t x81 = _mulx_u64(x7, x11, &x82);
- { uint64_t x85; uint64_t x84 = _mulx_u64(x7, x13, &x85);
- { uint64_t x88; uint64_t x87 = _mulx_u64(x7, x15, &x88);
- { uint64_t x91; uint64_t x90 = _mulx_u64(x7, x14, &x91);
- { uint64_t x93; uint8_t x94 = _addcarryx_u64(0x0, x82, x84, &x93);
- { uint64_t x96; uint8_t x97 = _addcarryx_u64(x94, x85, x87, &x96);
- { uint64_t x99; uint8_t x100 = _addcarryx_u64(x97, x88, x90, &x99);
- { uint64_t x102; uint8_t _ = _addcarryx_u64(0x0, x100, x91, &x102);
- { uint64_t x105; uint8_t x106 = _addcarryx_u64(0x0, x69, x81, &x105);
- { uint64_t x108; uint8_t x109 = _addcarryx_u64(x106, x72, x93, &x108);
- { uint64_t x111; uint8_t x112 = _addcarryx_u64(x109, x75, x96, &x111);
- { uint64_t x114; uint8_t x115 = _addcarryx_u64(x112, x78, x99, &x114);
- { uint64_t x117; uint8_t x118 = _addcarryx_u64(x115, x79, x102, &x117);
- { uint64_t _; uint64_t x120 = _mulx_u64(x105, 0xf83e0f83e0f83e1, &_);
- { uint64_t x124; uint64_t x123 = _mulx_u64(x120, 0xffffffffffffffdfL, &x124);
- { uint64_t x127; uint64_t x126 = _mulx_u64(x120, 0xffffffffffffffffL, &x127);
- { uint64_t x130; uint64_t x129 = _mulx_u64(x120, 0xffffffffffffffffL, &x130);
- { uint8_t x133; uint64_t x132 = _mulx_u64_out_u8(x120, 0x3, &x133);
- { uint64_t x135; uint8_t x136 = _addcarryx_u64(0x0, x124, x126, &x135);
- { uint64_t x138; uint8_t x139 = _addcarryx_u64(x136, x127, x129, &x138);
- { uint64_t x141; uint8_t x142 = _addcarryx_u64(x139, x130, x132, &x141);
- { uint8_t x143 = (x142 + x133);
- { uint64_t _; uint8_t x146 = _addcarryx_u64(0x0, x105, x123, &_);
- { uint64_t x148; uint8_t x149 = _addcarryx_u64(x146, x108, x135, &x148);
- { uint64_t x151; uint8_t x152 = _addcarryx_u64(x149, x111, x138, &x151);
- { uint64_t x154; uint8_t x155 = _addcarryx_u64(x152, x114, x141, &x154);
- { uint64_t x157; uint8_t x158 = _addcarryx_u64(x155, x117, x143, &x157);
- { uint8_t x159 = (x158 + x118);
- { uint64_t x162; uint64_t x161 = _mulx_u64(x9, x11, &x162);
- { uint64_t x165; uint64_t x164 = _mulx_u64(x9, x13, &x165);
- { uint64_t x168; uint64_t x167 = _mulx_u64(x9, x15, &x168);
- { uint64_t x171; uint64_t x170 = _mulx_u64(x9, x14, &x171);
- { uint64_t x173; uint8_t x174 = _addcarryx_u64(0x0, x162, x164, &x173);
- { uint64_t x176; uint8_t x177 = _addcarryx_u64(x174, x165, x167, &x176);
- { uint64_t x179; uint8_t x180 = _addcarryx_u64(x177, x168, x170, &x179);
- { uint64_t x182; uint8_t _ = _addcarryx_u64(0x0, x180, x171, &x182);
- { uint64_t x185; uint8_t x186 = _addcarryx_u64(0x0, x148, x161, &x185);
- { uint64_t x188; uint8_t x189 = _addcarryx_u64(x186, x151, x173, &x188);
- { uint64_t x191; uint8_t x192 = _addcarryx_u64(x189, x154, x176, &x191);
- { uint64_t x194; uint8_t x195 = _addcarryx_u64(x192, x157, x179, &x194);
- { uint64_t x197; uint8_t x198 = _addcarryx_u64(x195, x159, x182, &x197);
- { uint64_t _; uint64_t x200 = _mulx_u64(x185, 0xf83e0f83e0f83e1, &_);
- { uint64_t x204; uint64_t x203 = _mulx_u64(x200, 0xffffffffffffffdfL, &x204);
- { uint64_t x207; uint64_t x206 = _mulx_u64(x200, 0xffffffffffffffffL, &x207);
- { uint64_t x210; uint64_t x209 = _mulx_u64(x200, 0xffffffffffffffffL, &x210);
- { uint8_t x213; uint64_t x212 = _mulx_u64_out_u8(x200, 0x3, &x213);
- { uint64_t x215; uint8_t x216 = _addcarryx_u64(0x0, x204, x206, &x215);
- { uint64_t x218; uint8_t x219 = _addcarryx_u64(x216, x207, x209, &x218);
- { uint64_t x221; uint8_t x222 = _addcarryx_u64(x219, x210, x212, &x221);
- { uint8_t x223 = (x222 + x213);
- { uint64_t _; uint8_t x226 = _addcarryx_u64(0x0, x185, x203, &_);
- { uint64_t x228; uint8_t x229 = _addcarryx_u64(x226, x188, x215, &x228);
- { uint64_t x231; uint8_t x232 = _addcarryx_u64(x229, x191, x218, &x231);
- { uint64_t x234; uint8_t x235 = _addcarryx_u64(x232, x194, x221, &x234);
- { uint64_t x237; uint8_t x238 = _addcarryx_u64(x235, x197, x223, &x237);
- { uint8_t x239 = (x238 + x198);
- { uint64_t x242; uint64_t x241 = _mulx_u64(x8, x11, &x242);
- { uint64_t x245; uint64_t x244 = _mulx_u64(x8, x13, &x245);
- { uint64_t x248; uint64_t x247 = _mulx_u64(x8, x15, &x248);
- { uint64_t x251; uint64_t x250 = _mulx_u64(x8, x14, &x251);
- { uint64_t x253; uint8_t x254 = _addcarryx_u64(0x0, x242, x244, &x253);
- { uint64_t x256; uint8_t x257 = _addcarryx_u64(x254, x245, x247, &x256);
- { uint64_t x259; uint8_t x260 = _addcarryx_u64(x257, x248, x250, &x259);
- { uint64_t x262; uint8_t _ = _addcarryx_u64(0x0, x260, x251, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(0x0, x228, x241, &x265);
- { uint64_t x268; uint8_t x269 = _addcarryx_u64(x266, x231, x253, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(x269, x234, x256, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x237, x259, &x274);
- { uint64_t x277; uint8_t x278 = _addcarryx_u64(x275, x239, x262, &x277);
- { uint64_t _; uint64_t x280 = _mulx_u64(x265, 0xf83e0f83e0f83e1, &_);
- { uint64_t x284; uint64_t x283 = _mulx_u64(x280, 0xffffffffffffffdfL, &x284);
- { uint64_t x287; uint64_t x286 = _mulx_u64(x280, 0xffffffffffffffffL, &x287);
- { uint64_t x290; uint64_t x289 = _mulx_u64(x280, 0xffffffffffffffffL, &x290);
- { uint8_t x293; uint64_t x292 = _mulx_u64_out_u8(x280, 0x3, &x293);
- { uint64_t x295; uint8_t x296 = _addcarryx_u64(0x0, x284, x286, &x295);
- { uint64_t x298; uint8_t x299 = _addcarryx_u64(x296, x287, x289, &x298);
- { uint64_t x301; uint8_t x302 = _addcarryx_u64(x299, x290, x292, &x301);
- { uint8_t x303 = (x302 + x293);
- { uint64_t _; uint8_t x306 = _addcarryx_u64(0x0, x265, x283, &_);
- { uint64_t x308; uint8_t x309 = _addcarryx_u64(x306, x268, x295, &x308);
- { uint64_t x311; uint8_t x312 = _addcarryx_u64(x309, x271, x298, &x311);
- { uint64_t x314; uint8_t x315 = _addcarryx_u64(x312, x274, x301, &x314);
- { uint64_t x317; uint8_t x318 = _addcarryx_u64(x315, x277, x303, &x317);
- { uint8_t x319 = (x318 + x278);
- { uint64_t x321; uint8_t x322 = _subborrow_u64(0x0, x308, 0xffffffffffffffdfL, &x321);
- { uint64_t x324; uint8_t x325 = _subborrow_u64(x322, x311, 0xffffffffffffffffL, &x324);
- { uint64_t x327; uint8_t x328 = _subborrow_u64(x325, x314, 0xffffffffffffffffL, &x327);
- { uint64_t x330; uint8_t x331 = _subborrow_u64(x328, x317, 0x3, &x330);
- { uint64_t _; uint8_t x334 = _subborrow_u64(x331, x319, 0x0, &_);
- { uint64_t x335 = cmovznz64(x334, x330, x317);
- { uint64_t x336 = cmovznz64(x334, x327, x314);
- { uint64_t x337 = cmovznz64(x334, x324, x311);
- { uint64_t x338 = cmovznz64(x334, x321, x308);
- out[0] = x338;
- out[1] = x337;
- out[2] = x336;
- out[3] = x335;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e194m33_4limbs/femul.v b/src/Specific/montgomery64_2e194m33_4limbs/femul.v
deleted file mode 100644
index 4dcca4d23..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e194m33_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e194m33_4limbs/femulDisplay.log b/src/Specific/montgomery64_2e194m33_4limbs/femulDisplay.log
deleted file mode 100644
index e7bf4c410..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,122 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t _ = mulx_u64(x17, 0xf83e0f83e0f83e1);
- uint64_t x44, uint64_t x45 = mulx_u64(x41, 0xffffffffffffffdfL);
- uint64_t x47, uint64_t x48 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x50, uint64_t x51 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x53, uint8_t x54 = mulx_u64_out_u8(x41, 0x3);
- uint64_t x56, uint8_t x57 = addcarryx_u64(0x0, x45, x47);
- uint64_t x59, uint8_t x60 = addcarryx_u64(x57, x48, x50);
- uint64_t x62, uint8_t x63 = addcarryx_u64(x60, x51, x53);
- uint8_t x64 = (x63 + x54);
- uint64_t _, uint8_t x67 = addcarryx_u64(0x0, x17, x44);
- uint64_t x69, uint8_t x70 = addcarryx_u64(x67, x29, x56);
- uint64_t x72, uint8_t x73 = addcarryx_u64(x70, x32, x59);
- uint64_t x75, uint8_t x76 = addcarryx_u64(x73, x35, x62);
- uint64_t x78, uint8_t x79 = addcarryx_u64(x76, x38, x64);
- uint64_t x81, uint64_t x82 = mulx_u64(x7, x11);
- uint64_t x84, uint64_t x85 = mulx_u64(x7, x13);
- uint64_t x87, uint64_t x88 = mulx_u64(x7, x15);
- uint64_t x90, uint64_t x91 = mulx_u64(x7, x14);
- uint64_t x93, uint8_t x94 = addcarryx_u64(0x0, x82, x84);
- uint64_t x96, uint8_t x97 = addcarryx_u64(x94, x85, x87);
- uint64_t x99, uint8_t x100 = addcarryx_u64(x97, x88, x90);
- uint64_t x102, uint8_t _ = addcarryx_u64(0x0, x100, x91);
- uint64_t x105, uint8_t x106 = addcarryx_u64(0x0, x69, x81);
- uint64_t x108, uint8_t x109 = addcarryx_u64(x106, x72, x93);
- uint64_t x111, uint8_t x112 = addcarryx_u64(x109, x75, x96);
- uint64_t x114, uint8_t x115 = addcarryx_u64(x112, x78, x99);
- uint64_t x117, uint8_t x118 = addcarryx_u64(x115, x79, x102);
- uint64_t x120, uint64_t _ = mulx_u64(x105, 0xf83e0f83e0f83e1);
- uint64_t x123, uint64_t x124 = mulx_u64(x120, 0xffffffffffffffdfL);
- uint64_t x126, uint64_t x127 = mulx_u64(x120, 0xffffffffffffffffL);
- uint64_t x129, uint64_t x130 = mulx_u64(x120, 0xffffffffffffffffL);
- uint64_t x132, uint8_t x133 = mulx_u64_out_u8(x120, 0x3);
- uint64_t x135, uint8_t x136 = addcarryx_u64(0x0, x124, x126);
- uint64_t x138, uint8_t x139 = addcarryx_u64(x136, x127, x129);
- uint64_t x141, uint8_t x142 = addcarryx_u64(x139, x130, x132);
- uint8_t x143 = (x142 + x133);
- uint64_t _, uint8_t x146 = addcarryx_u64(0x0, x105, x123);
- uint64_t x148, uint8_t x149 = addcarryx_u64(x146, x108, x135);
- uint64_t x151, uint8_t x152 = addcarryx_u64(x149, x111, x138);
- uint64_t x154, uint8_t x155 = addcarryx_u64(x152, x114, x141);
- uint64_t x157, uint8_t x158 = addcarryx_u64(x155, x117, x143);
- uint8_t x159 = (x158 + x118);
- uint64_t x161, uint64_t x162 = mulx_u64(x9, x11);
- uint64_t x164, uint64_t x165 = mulx_u64(x9, x13);
- uint64_t x167, uint64_t x168 = mulx_u64(x9, x15);
- uint64_t x170, uint64_t x171 = mulx_u64(x9, x14);
- uint64_t x173, uint8_t x174 = addcarryx_u64(0x0, x162, x164);
- uint64_t x176, uint8_t x177 = addcarryx_u64(x174, x165, x167);
- uint64_t x179, uint8_t x180 = addcarryx_u64(x177, x168, x170);
- uint64_t x182, uint8_t _ = addcarryx_u64(0x0, x180, x171);
- uint64_t x185, uint8_t x186 = addcarryx_u64(0x0, x148, x161);
- uint64_t x188, uint8_t x189 = addcarryx_u64(x186, x151, x173);
- uint64_t x191, uint8_t x192 = addcarryx_u64(x189, x154, x176);
- uint64_t x194, uint8_t x195 = addcarryx_u64(x192, x157, x179);
- uint64_t x197, uint8_t x198 = addcarryx_u64(x195, x159, x182);
- uint64_t x200, uint64_t _ = mulx_u64(x185, 0xf83e0f83e0f83e1);
- uint64_t x203, uint64_t x204 = mulx_u64(x200, 0xffffffffffffffdfL);
- uint64_t x206, uint64_t x207 = mulx_u64(x200, 0xffffffffffffffffL);
- uint64_t x209, uint64_t x210 = mulx_u64(x200, 0xffffffffffffffffL);
- uint64_t x212, uint8_t x213 = mulx_u64_out_u8(x200, 0x3);
- uint64_t x215, uint8_t x216 = addcarryx_u64(0x0, x204, x206);
- uint64_t x218, uint8_t x219 = addcarryx_u64(x216, x207, x209);
- uint64_t x221, uint8_t x222 = addcarryx_u64(x219, x210, x212);
- uint8_t x223 = (x222 + x213);
- uint64_t _, uint8_t x226 = addcarryx_u64(0x0, x185, x203);
- uint64_t x228, uint8_t x229 = addcarryx_u64(x226, x188, x215);
- uint64_t x231, uint8_t x232 = addcarryx_u64(x229, x191, x218);
- uint64_t x234, uint8_t x235 = addcarryx_u64(x232, x194, x221);
- uint64_t x237, uint8_t x238 = addcarryx_u64(x235, x197, x223);
- uint8_t x239 = (x238 + x198);
- uint64_t x241, uint64_t x242 = mulx_u64(x8, x11);
- uint64_t x244, uint64_t x245 = mulx_u64(x8, x13);
- uint64_t x247, uint64_t x248 = mulx_u64(x8, x15);
- uint64_t x250, uint64_t x251 = mulx_u64(x8, x14);
- uint64_t x253, uint8_t x254 = addcarryx_u64(0x0, x242, x244);
- uint64_t x256, uint8_t x257 = addcarryx_u64(x254, x245, x247);
- uint64_t x259, uint8_t x260 = addcarryx_u64(x257, x248, x250);
- uint64_t x262, uint8_t _ = addcarryx_u64(0x0, x260, x251);
- uint64_t x265, uint8_t x266 = addcarryx_u64(0x0, x228, x241);
- uint64_t x268, uint8_t x269 = addcarryx_u64(x266, x231, x253);
- uint64_t x271, uint8_t x272 = addcarryx_u64(x269, x234, x256);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x237, x259);
- uint64_t x277, uint8_t x278 = addcarryx_u64(x275, x239, x262);
- uint64_t x280, uint64_t _ = mulx_u64(x265, 0xf83e0f83e0f83e1);
- uint64_t x283, uint64_t x284 = mulx_u64(x280, 0xffffffffffffffdfL);
- uint64_t x286, uint64_t x287 = mulx_u64(x280, 0xffffffffffffffffL);
- uint64_t x289, uint64_t x290 = mulx_u64(x280, 0xffffffffffffffffL);
- uint64_t x292, uint8_t x293 = mulx_u64_out_u8(x280, 0x3);
- uint64_t x295, uint8_t x296 = addcarryx_u64(0x0, x284, x286);
- uint64_t x298, uint8_t x299 = addcarryx_u64(x296, x287, x289);
- uint64_t x301, uint8_t x302 = addcarryx_u64(x299, x290, x292);
- uint8_t x303 = (x302 + x293);
- uint64_t _, uint8_t x306 = addcarryx_u64(0x0, x265, x283);
- uint64_t x308, uint8_t x309 = addcarryx_u64(x306, x268, x295);
- uint64_t x311, uint8_t x312 = addcarryx_u64(x309, x271, x298);
- uint64_t x314, uint8_t x315 = addcarryx_u64(x312, x274, x301);
- uint64_t x317, uint8_t x318 = addcarryx_u64(x315, x277, x303);
- uint8_t x319 = (x318 + x278);
- uint64_t x321, uint8_t x322 = subborrow_u64(0x0, x308, 0xffffffffffffffdfL);
- uint64_t x324, uint8_t x325 = subborrow_u64(x322, x311, 0xffffffffffffffffL);
- uint64_t x327, uint8_t x328 = subborrow_u64(x325, x314, 0xffffffffffffffffL);
- uint64_t x330, uint8_t x331 = subborrow_u64(x328, x317, 0x3);
- uint64_t _, uint8_t x334 = subborrow_u64(x331, x319, 0x0);
- uint64_t x335 = cmovznz64(x334, x330, x317);
- uint64_t x336 = cmovznz64(x334, x327, x314);
- uint64_t x337 = cmovznz64(x334, x324, x311);
- uint64_t x338 = cmovznz64(x334, x321, x308);
- return (x335, x336, x337, x338))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e194m33_4limbs/femulDisplay.v b/src/Specific/montgomery64_2e194m33_4limbs/femulDisplay.v
deleted file mode 100644
index f201525fc..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e194m33_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e194m33_4limbs/fenz.c b/src/Specific/montgomery64_2e194m33_4limbs/fenz.c
deleted file mode 100644
index 7541094ff..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x7 = (x6 | x5);
- { uint64_t x8 = (x4 | x7);
- { uint64_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e194m33_4limbs/fenz.v b/src/Specific/montgomery64_2e194m33_4limbs/fenz.v
deleted file mode 100644
index 55c922f36..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e194m33_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e194m33_4limbs/fenzDisplay.log b/src/Specific/montgomery64_2e194m33_4limbs/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e194m33_4limbs/fenzDisplay.v b/src/Specific/montgomery64_2e194m33_4limbs/fenzDisplay.v
deleted file mode 100644
index e05e4785a..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e194m33_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e194m33_4limbs/feopp.c b/src/Specific/montgomery64_2e194m33_4limbs/feopp.c
deleted file mode 100644
index a12db40d3..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/feopp.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feopp(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8; uint8_t x9 = _subborrow_u64(0x0, 0x0, x2, &x8);
- { uint64_t x11; uint8_t x12 = _subborrow_u64(x9, 0x0, x4, &x11);
- { uint64_t x14; uint8_t x15 = _subborrow_u64(x12, 0x0, x6, &x14);
- { uint64_t x17; uint8_t x18 = _subborrow_u64(x15, 0x0, x5, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xffffffffffffffdfL);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x8, x20, &x22);
- { uint64_t x24 = (x19 & 0xffffffffffffffffL);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x23, x11, x24, &x26);
- { uint64_t x28 = (x19 & 0xffffffffffffffffL);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x27, x14, x28, &x30);
- { uint8_t x32 = ((uint8_t)x19 & 0x3);
- { uint64_t x34; uint8_t _ = _addcarryx_u64(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e194m33_4limbs/feopp.v b/src/Specific/montgomery64_2e194m33_4limbs/feopp.v
deleted file mode 100644
index c67ce9c3b..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e194m33_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e194m33_4limbs/feoppDisplay.log b/src/Specific/montgomery64_2e194m33_4limbs/feoppDisplay.log
deleted file mode 100644
index 48c2b2587..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xffffffffffffffdfL);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffffffffffffffL);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x28 = (x19 & 0xffffffffffffffffL);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x27, x14, x28);
- uint8_t x32 = ((uint8_t)x19 & 0x3);
- uint64_t x34, uint8_t _ = addcarryx_u64(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e194m33_4limbs/feoppDisplay.v b/src/Specific/montgomery64_2e194m33_4limbs/feoppDisplay.v
deleted file mode 100644
index 77065b5e2..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e194m33_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e194m33_4limbs/fesquare.c b/src/Specific/montgomery64_2e194m33_4limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e194m33_4limbs/fesub.c b/src/Specific/montgomery64_2e194m33_4limbs/fesub.c
deleted file mode 100644
index 0d8b5aea0..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/fesub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _subborrow_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _subborrow_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _subborrow_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u64(x24, x8, x14, &x26);
- { uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- { uint64_t x29 = (x28 & 0xffffffffffffffdfL);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(0x0, x17, x29, &x31);
- { uint64_t x33 = (x28 & 0xffffffffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x20, x33, &x35);
- { uint64_t x37 = (x28 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x23, x37, &x39);
- { uint8_t x41 = ((uint8_t)x28 & 0x3);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x26, x41, &x43);
- out[0] = x31;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e194m33_4limbs/fesub.v b/src/Specific/montgomery64_2e194m33_4limbs/fesub.v
deleted file mode 100644
index b5fe9dad0..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e194m33_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e194m33_4limbs/fesubDisplay.log b/src/Specific/montgomery64_2e194m33_4limbs/fesubDisplay.log
deleted file mode 100644
index 07812034e..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint64_t x29 = (x28 & 0xffffffffffffffdfL);
- uint64_t x31, uint8_t x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x37 = (x28 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x23, x37);
- uint8_t x41 = ((uint8_t)x28 & 0x3);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x26, x41);
- (Return x43, Return x39, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e194m33_4limbs/fesubDisplay.v b/src/Specific/montgomery64_2e194m33_4limbs/fesubDisplay.v
deleted file mode 100644
index 3638569b3..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e194m33_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e194m33_4limbs/py_interpreter.sh b/src/Specific/montgomery64_2e194m33_4limbs/py_interpreter.sh
deleted file mode 100755
index 28ef9a8a4..000000000
--- a/src/Specific/montgomery64_2e194m33_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**194 - 33' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e196m15_4limbs/CurveParameters.v b/src/Specific/montgomery64_2e196m15_4limbs/CurveParameters.v
deleted file mode 100644
index f876ce2bf..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^196 - 15
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 64;
- bitwidth := 64;
- s := 2^196;
- c := [(1, 15)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e196m15_4limbs/Synthesis.v b/src/Specific/montgomery64_2e196m15_4limbs/Synthesis.v
deleted file mode 100644
index 5d0bab3a1..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e196m15_4limbs.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/montgomery64_2e196m15_4limbs/compiler.sh b/src/Specific/montgomery64_2e196m15_4limbs/compiler.sh
deleted file mode 100755
index 31cf6c03d..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<196) - 15' "$@"
diff --git a/src/Specific/montgomery64_2e196m15_4limbs/compilerxx.sh b/src/Specific/montgomery64_2e196m15_4limbs/compilerxx.sh
deleted file mode 100755
index 6a71b5f18..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<196) - 15' "$@"
diff --git a/src/Specific/montgomery64_2e196m15_4limbs/feadd.c b/src/Specific/montgomery64_2e196m15_4limbs/feadd.c
deleted file mode 100644
index 1411b0e95..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _addcarryx_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _addcarryx_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x24, x8, x14, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u64(0x0, x17, 0xfffffffffffffff1L, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u64(x30, x20, 0xffffffffffffffffL, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u64(x33, x23, 0xffffffffffffffffL, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u64(x36, x26, 0xf, &x38);
- { uint64_t _; uint8_t x42 = _subborrow_u64(x39, x27, 0x0, &_);
- { uint64_t x43 = cmovznz64(x42, x38, x26);
- { uint64_t x44 = cmovznz64(x42, x35, x23);
- { uint64_t x45 = cmovznz64(x42, x32, x20);
- { uint64_t x46 = cmovznz64(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e196m15_4limbs/feadd.v b/src/Specific/montgomery64_2e196m15_4limbs/feadd.v
deleted file mode 100644
index a9d7dce04..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e196m15_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e196m15_4limbs/feaddDisplay.log b/src/Specific/montgomery64_2e196m15_4limbs/feaddDisplay.log
deleted file mode 100644
index 35d293c7c..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t x30 = subborrow_u64(0x0, x17, 0xfffffffffffffff1L);
- uint64_t x32, uint8_t x33 = subborrow_u64(x30, x20, 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = subborrow_u64(x33, x23, 0xffffffffffffffffL);
- uint64_t x38, uint8_t x39 = subborrow_u64(x36, x26, 0xf);
- uint64_t _, uint8_t x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e196m15_4limbs/feaddDisplay.v b/src/Specific/montgomery64_2e196m15_4limbs/feaddDisplay.v
deleted file mode 100644
index 3fdbff070..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e196m15_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e196m15_4limbs/femul.c b/src/Specific/montgomery64_2e196m15_4limbs/femul.c
deleted file mode 100644
index 9e6c9aeaf..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/femul.c
+++ /dev/null
@@ -1,130 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x18; uint64_t x17 = _mulx_u64(x5, x11, &x18);
- { uint64_t x21; uint64_t x20 = _mulx_u64(x5, x13, &x21);
- { uint64_t x24; uint64_t x23 = _mulx_u64(x5, x15, &x24);
- { uint64_t x27; uint64_t x26 = _mulx_u64(x5, x14, &x27);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x18, x20, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x21, x23, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x24, x26, &x35);
- { uint64_t x38; uint8_t _ = _addcarryx_u64(0x0, x36, x27, &x38);
- { uint64_t _; uint64_t x41 = _mulx_u64(x17, 0xeeeeeeeeeeeeeeefL, &_);
- { uint64_t x45; uint64_t x44 = _mulx_u64(x41, 0xfffffffffffffff1L, &x45);
- { uint64_t x48; uint64_t x47 = _mulx_u64(x41, 0xffffffffffffffffL, &x48);
- { uint64_t x51; uint64_t x50 = _mulx_u64(x41, 0xffffffffffffffffL, &x51);
- { uint8_t x54; uint64_t x53 = _mulx_u64_out_u8(x41, 0xf, &x54);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(0x0, x45, x47, &x56);
- { uint64_t x59; uint8_t x60 = _addcarryx_u64(x57, x48, x50, &x59);
- { uint64_t x62; uint8_t x63 = _addcarryx_u64(x60, x51, x53, &x62);
- { uint8_t x64 = (x63 + x54);
- { uint64_t _; uint8_t x67 = _addcarryx_u64(0x0, x17, x44, &_);
- { uint64_t x69; uint8_t x70 = _addcarryx_u64(x67, x29, x56, &x69);
- { uint64_t x72; uint8_t x73 = _addcarryx_u64(x70, x32, x59, &x72);
- { uint64_t x75; uint8_t x76 = _addcarryx_u64(x73, x35, x62, &x75);
- { uint64_t x78; uint8_t x79 = _addcarryx_u64(x76, x38, x64, &x78);
- { uint64_t x82; uint64_t x81 = _mulx_u64(x7, x11, &x82);
- { uint64_t x85; uint64_t x84 = _mulx_u64(x7, x13, &x85);
- { uint64_t x88; uint64_t x87 = _mulx_u64(x7, x15, &x88);
- { uint64_t x91; uint64_t x90 = _mulx_u64(x7, x14, &x91);
- { uint64_t x93; uint8_t x94 = _addcarryx_u64(0x0, x82, x84, &x93);
- { uint64_t x96; uint8_t x97 = _addcarryx_u64(x94, x85, x87, &x96);
- { uint64_t x99; uint8_t x100 = _addcarryx_u64(x97, x88, x90, &x99);
- { uint64_t x102; uint8_t _ = _addcarryx_u64(0x0, x100, x91, &x102);
- { uint64_t x105; uint8_t x106 = _addcarryx_u64(0x0, x69, x81, &x105);
- { uint64_t x108; uint8_t x109 = _addcarryx_u64(x106, x72, x93, &x108);
- { uint64_t x111; uint8_t x112 = _addcarryx_u64(x109, x75, x96, &x111);
- { uint64_t x114; uint8_t x115 = _addcarryx_u64(x112, x78, x99, &x114);
- { uint64_t x117; uint8_t x118 = _addcarryx_u64(x115, x79, x102, &x117);
- { uint64_t _; uint64_t x120 = _mulx_u64(x105, 0xeeeeeeeeeeeeeeefL, &_);
- { uint64_t x124; uint64_t x123 = _mulx_u64(x120, 0xfffffffffffffff1L, &x124);
- { uint64_t x127; uint64_t x126 = _mulx_u64(x120, 0xffffffffffffffffL, &x127);
- { uint64_t x130; uint64_t x129 = _mulx_u64(x120, 0xffffffffffffffffL, &x130);
- { uint8_t x133; uint64_t x132 = _mulx_u64_out_u8(x120, 0xf, &x133);
- { uint64_t x135; uint8_t x136 = _addcarryx_u64(0x0, x124, x126, &x135);
- { uint64_t x138; uint8_t x139 = _addcarryx_u64(x136, x127, x129, &x138);
- { uint64_t x141; uint8_t x142 = _addcarryx_u64(x139, x130, x132, &x141);
- { uint8_t x143 = (x142 + x133);
- { uint64_t _; uint8_t x146 = _addcarryx_u64(0x0, x105, x123, &_);
- { uint64_t x148; uint8_t x149 = _addcarryx_u64(x146, x108, x135, &x148);
- { uint64_t x151; uint8_t x152 = _addcarryx_u64(x149, x111, x138, &x151);
- { uint64_t x154; uint8_t x155 = _addcarryx_u64(x152, x114, x141, &x154);
- { uint64_t x157; uint8_t x158 = _addcarryx_u64(x155, x117, x143, &x157);
- { uint8_t x159 = (x158 + x118);
- { uint64_t x162; uint64_t x161 = _mulx_u64(x9, x11, &x162);
- { uint64_t x165; uint64_t x164 = _mulx_u64(x9, x13, &x165);
- { uint64_t x168; uint64_t x167 = _mulx_u64(x9, x15, &x168);
- { uint64_t x171; uint64_t x170 = _mulx_u64(x9, x14, &x171);
- { uint64_t x173; uint8_t x174 = _addcarryx_u64(0x0, x162, x164, &x173);
- { uint64_t x176; uint8_t x177 = _addcarryx_u64(x174, x165, x167, &x176);
- { uint64_t x179; uint8_t x180 = _addcarryx_u64(x177, x168, x170, &x179);
- { uint64_t x182; uint8_t _ = _addcarryx_u64(0x0, x180, x171, &x182);
- { uint64_t x185; uint8_t x186 = _addcarryx_u64(0x0, x148, x161, &x185);
- { uint64_t x188; uint8_t x189 = _addcarryx_u64(x186, x151, x173, &x188);
- { uint64_t x191; uint8_t x192 = _addcarryx_u64(x189, x154, x176, &x191);
- { uint64_t x194; uint8_t x195 = _addcarryx_u64(x192, x157, x179, &x194);
- { uint64_t x197; uint8_t x198 = _addcarryx_u64(x195, x159, x182, &x197);
- { uint64_t _; uint64_t x200 = _mulx_u64(x185, 0xeeeeeeeeeeeeeeefL, &_);
- { uint64_t x204; uint64_t x203 = _mulx_u64(x200, 0xfffffffffffffff1L, &x204);
- { uint64_t x207; uint64_t x206 = _mulx_u64(x200, 0xffffffffffffffffL, &x207);
- { uint64_t x210; uint64_t x209 = _mulx_u64(x200, 0xffffffffffffffffL, &x210);
- { uint8_t x213; uint64_t x212 = _mulx_u64_out_u8(x200, 0xf, &x213);
- { uint64_t x215; uint8_t x216 = _addcarryx_u64(0x0, x204, x206, &x215);
- { uint64_t x218; uint8_t x219 = _addcarryx_u64(x216, x207, x209, &x218);
- { uint64_t x221; uint8_t x222 = _addcarryx_u64(x219, x210, x212, &x221);
- { uint8_t x223 = (x222 + x213);
- { uint64_t _; uint8_t x226 = _addcarryx_u64(0x0, x185, x203, &_);
- { uint64_t x228; uint8_t x229 = _addcarryx_u64(x226, x188, x215, &x228);
- { uint64_t x231; uint8_t x232 = _addcarryx_u64(x229, x191, x218, &x231);
- { uint64_t x234; uint8_t x235 = _addcarryx_u64(x232, x194, x221, &x234);
- { uint64_t x237; uint8_t x238 = _addcarryx_u64(x235, x197, x223, &x237);
- { uint8_t x239 = (x238 + x198);
- { uint64_t x242; uint64_t x241 = _mulx_u64(x8, x11, &x242);
- { uint64_t x245; uint64_t x244 = _mulx_u64(x8, x13, &x245);
- { uint64_t x248; uint64_t x247 = _mulx_u64(x8, x15, &x248);
- { uint64_t x251; uint64_t x250 = _mulx_u64(x8, x14, &x251);
- { uint64_t x253; uint8_t x254 = _addcarryx_u64(0x0, x242, x244, &x253);
- { uint64_t x256; uint8_t x257 = _addcarryx_u64(x254, x245, x247, &x256);
- { uint64_t x259; uint8_t x260 = _addcarryx_u64(x257, x248, x250, &x259);
- { uint64_t x262; uint8_t _ = _addcarryx_u64(0x0, x260, x251, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(0x0, x228, x241, &x265);
- { uint64_t x268; uint8_t x269 = _addcarryx_u64(x266, x231, x253, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(x269, x234, x256, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x237, x259, &x274);
- { uint64_t x277; uint8_t x278 = _addcarryx_u64(x275, x239, x262, &x277);
- { uint64_t _; uint64_t x280 = _mulx_u64(x265, 0xeeeeeeeeeeeeeeefL, &_);
- { uint64_t x284; uint64_t x283 = _mulx_u64(x280, 0xfffffffffffffff1L, &x284);
- { uint64_t x287; uint64_t x286 = _mulx_u64(x280, 0xffffffffffffffffL, &x287);
- { uint64_t x290; uint64_t x289 = _mulx_u64(x280, 0xffffffffffffffffL, &x290);
- { uint8_t x293; uint64_t x292 = _mulx_u64_out_u8(x280, 0xf, &x293);
- { uint64_t x295; uint8_t x296 = _addcarryx_u64(0x0, x284, x286, &x295);
- { uint64_t x298; uint8_t x299 = _addcarryx_u64(x296, x287, x289, &x298);
- { uint64_t x301; uint8_t x302 = _addcarryx_u64(x299, x290, x292, &x301);
- { uint8_t x303 = (x302 + x293);
- { uint64_t _; uint8_t x306 = _addcarryx_u64(0x0, x265, x283, &_);
- { uint64_t x308; uint8_t x309 = _addcarryx_u64(x306, x268, x295, &x308);
- { uint64_t x311; uint8_t x312 = _addcarryx_u64(x309, x271, x298, &x311);
- { uint64_t x314; uint8_t x315 = _addcarryx_u64(x312, x274, x301, &x314);
- { uint64_t x317; uint8_t x318 = _addcarryx_u64(x315, x277, x303, &x317);
- { uint8_t x319 = (x318 + x278);
- { uint64_t x321; uint8_t x322 = _subborrow_u64(0x0, x308, 0xfffffffffffffff1L, &x321);
- { uint64_t x324; uint8_t x325 = _subborrow_u64(x322, x311, 0xffffffffffffffffL, &x324);
- { uint64_t x327; uint8_t x328 = _subborrow_u64(x325, x314, 0xffffffffffffffffL, &x327);
- { uint64_t x330; uint8_t x331 = _subborrow_u64(x328, x317, 0xf, &x330);
- { uint64_t _; uint8_t x334 = _subborrow_u64(x331, x319, 0x0, &_);
- { uint64_t x335 = cmovznz64(x334, x330, x317);
- { uint64_t x336 = cmovznz64(x334, x327, x314);
- { uint64_t x337 = cmovznz64(x334, x324, x311);
- { uint64_t x338 = cmovznz64(x334, x321, x308);
- out[0] = x338;
- out[1] = x337;
- out[2] = x336;
- out[3] = x335;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e196m15_4limbs/femul.v b/src/Specific/montgomery64_2e196m15_4limbs/femul.v
deleted file mode 100644
index c1c8c8285..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e196m15_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e196m15_4limbs/femulDisplay.log b/src/Specific/montgomery64_2e196m15_4limbs/femulDisplay.log
deleted file mode 100644
index a2c56f3fd..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,122 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t _ = mulx_u64(x17, 0xeeeeeeeeeeeeeeefL);
- uint64_t x44, uint64_t x45 = mulx_u64(x41, 0xfffffffffffffff1L);
- uint64_t x47, uint64_t x48 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x50, uint64_t x51 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x53, uint8_t x54 = mulx_u64_out_u8(x41, 0xf);
- uint64_t x56, uint8_t x57 = addcarryx_u64(0x0, x45, x47);
- uint64_t x59, uint8_t x60 = addcarryx_u64(x57, x48, x50);
- uint64_t x62, uint8_t x63 = addcarryx_u64(x60, x51, x53);
- uint8_t x64 = (x63 + x54);
- uint64_t _, uint8_t x67 = addcarryx_u64(0x0, x17, x44);
- uint64_t x69, uint8_t x70 = addcarryx_u64(x67, x29, x56);
- uint64_t x72, uint8_t x73 = addcarryx_u64(x70, x32, x59);
- uint64_t x75, uint8_t x76 = addcarryx_u64(x73, x35, x62);
- uint64_t x78, uint8_t x79 = addcarryx_u64(x76, x38, x64);
- uint64_t x81, uint64_t x82 = mulx_u64(x7, x11);
- uint64_t x84, uint64_t x85 = mulx_u64(x7, x13);
- uint64_t x87, uint64_t x88 = mulx_u64(x7, x15);
- uint64_t x90, uint64_t x91 = mulx_u64(x7, x14);
- uint64_t x93, uint8_t x94 = addcarryx_u64(0x0, x82, x84);
- uint64_t x96, uint8_t x97 = addcarryx_u64(x94, x85, x87);
- uint64_t x99, uint8_t x100 = addcarryx_u64(x97, x88, x90);
- uint64_t x102, uint8_t _ = addcarryx_u64(0x0, x100, x91);
- uint64_t x105, uint8_t x106 = addcarryx_u64(0x0, x69, x81);
- uint64_t x108, uint8_t x109 = addcarryx_u64(x106, x72, x93);
- uint64_t x111, uint8_t x112 = addcarryx_u64(x109, x75, x96);
- uint64_t x114, uint8_t x115 = addcarryx_u64(x112, x78, x99);
- uint64_t x117, uint8_t x118 = addcarryx_u64(x115, x79, x102);
- uint64_t x120, uint64_t _ = mulx_u64(x105, 0xeeeeeeeeeeeeeeefL);
- uint64_t x123, uint64_t x124 = mulx_u64(x120, 0xfffffffffffffff1L);
- uint64_t x126, uint64_t x127 = mulx_u64(x120, 0xffffffffffffffffL);
- uint64_t x129, uint64_t x130 = mulx_u64(x120, 0xffffffffffffffffL);
- uint64_t x132, uint8_t x133 = mulx_u64_out_u8(x120, 0xf);
- uint64_t x135, uint8_t x136 = addcarryx_u64(0x0, x124, x126);
- uint64_t x138, uint8_t x139 = addcarryx_u64(x136, x127, x129);
- uint64_t x141, uint8_t x142 = addcarryx_u64(x139, x130, x132);
- uint8_t x143 = (x142 + x133);
- uint64_t _, uint8_t x146 = addcarryx_u64(0x0, x105, x123);
- uint64_t x148, uint8_t x149 = addcarryx_u64(x146, x108, x135);
- uint64_t x151, uint8_t x152 = addcarryx_u64(x149, x111, x138);
- uint64_t x154, uint8_t x155 = addcarryx_u64(x152, x114, x141);
- uint64_t x157, uint8_t x158 = addcarryx_u64(x155, x117, x143);
- uint8_t x159 = (x158 + x118);
- uint64_t x161, uint64_t x162 = mulx_u64(x9, x11);
- uint64_t x164, uint64_t x165 = mulx_u64(x9, x13);
- uint64_t x167, uint64_t x168 = mulx_u64(x9, x15);
- uint64_t x170, uint64_t x171 = mulx_u64(x9, x14);
- uint64_t x173, uint8_t x174 = addcarryx_u64(0x0, x162, x164);
- uint64_t x176, uint8_t x177 = addcarryx_u64(x174, x165, x167);
- uint64_t x179, uint8_t x180 = addcarryx_u64(x177, x168, x170);
- uint64_t x182, uint8_t _ = addcarryx_u64(0x0, x180, x171);
- uint64_t x185, uint8_t x186 = addcarryx_u64(0x0, x148, x161);
- uint64_t x188, uint8_t x189 = addcarryx_u64(x186, x151, x173);
- uint64_t x191, uint8_t x192 = addcarryx_u64(x189, x154, x176);
- uint64_t x194, uint8_t x195 = addcarryx_u64(x192, x157, x179);
- uint64_t x197, uint8_t x198 = addcarryx_u64(x195, x159, x182);
- uint64_t x200, uint64_t _ = mulx_u64(x185, 0xeeeeeeeeeeeeeeefL);
- uint64_t x203, uint64_t x204 = mulx_u64(x200, 0xfffffffffffffff1L);
- uint64_t x206, uint64_t x207 = mulx_u64(x200, 0xffffffffffffffffL);
- uint64_t x209, uint64_t x210 = mulx_u64(x200, 0xffffffffffffffffL);
- uint64_t x212, uint8_t x213 = mulx_u64_out_u8(x200, 0xf);
- uint64_t x215, uint8_t x216 = addcarryx_u64(0x0, x204, x206);
- uint64_t x218, uint8_t x219 = addcarryx_u64(x216, x207, x209);
- uint64_t x221, uint8_t x222 = addcarryx_u64(x219, x210, x212);
- uint8_t x223 = (x222 + x213);
- uint64_t _, uint8_t x226 = addcarryx_u64(0x0, x185, x203);
- uint64_t x228, uint8_t x229 = addcarryx_u64(x226, x188, x215);
- uint64_t x231, uint8_t x232 = addcarryx_u64(x229, x191, x218);
- uint64_t x234, uint8_t x235 = addcarryx_u64(x232, x194, x221);
- uint64_t x237, uint8_t x238 = addcarryx_u64(x235, x197, x223);
- uint8_t x239 = (x238 + x198);
- uint64_t x241, uint64_t x242 = mulx_u64(x8, x11);
- uint64_t x244, uint64_t x245 = mulx_u64(x8, x13);
- uint64_t x247, uint64_t x248 = mulx_u64(x8, x15);
- uint64_t x250, uint64_t x251 = mulx_u64(x8, x14);
- uint64_t x253, uint8_t x254 = addcarryx_u64(0x0, x242, x244);
- uint64_t x256, uint8_t x257 = addcarryx_u64(x254, x245, x247);
- uint64_t x259, uint8_t x260 = addcarryx_u64(x257, x248, x250);
- uint64_t x262, uint8_t _ = addcarryx_u64(0x0, x260, x251);
- uint64_t x265, uint8_t x266 = addcarryx_u64(0x0, x228, x241);
- uint64_t x268, uint8_t x269 = addcarryx_u64(x266, x231, x253);
- uint64_t x271, uint8_t x272 = addcarryx_u64(x269, x234, x256);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x237, x259);
- uint64_t x277, uint8_t x278 = addcarryx_u64(x275, x239, x262);
- uint64_t x280, uint64_t _ = mulx_u64(x265, 0xeeeeeeeeeeeeeeefL);
- uint64_t x283, uint64_t x284 = mulx_u64(x280, 0xfffffffffffffff1L);
- uint64_t x286, uint64_t x287 = mulx_u64(x280, 0xffffffffffffffffL);
- uint64_t x289, uint64_t x290 = mulx_u64(x280, 0xffffffffffffffffL);
- uint64_t x292, uint8_t x293 = mulx_u64_out_u8(x280, 0xf);
- uint64_t x295, uint8_t x296 = addcarryx_u64(0x0, x284, x286);
- uint64_t x298, uint8_t x299 = addcarryx_u64(x296, x287, x289);
- uint64_t x301, uint8_t x302 = addcarryx_u64(x299, x290, x292);
- uint8_t x303 = (x302 + x293);
- uint64_t _, uint8_t x306 = addcarryx_u64(0x0, x265, x283);
- uint64_t x308, uint8_t x309 = addcarryx_u64(x306, x268, x295);
- uint64_t x311, uint8_t x312 = addcarryx_u64(x309, x271, x298);
- uint64_t x314, uint8_t x315 = addcarryx_u64(x312, x274, x301);
- uint64_t x317, uint8_t x318 = addcarryx_u64(x315, x277, x303);
- uint8_t x319 = (x318 + x278);
- uint64_t x321, uint8_t x322 = subborrow_u64(0x0, x308, 0xfffffffffffffff1L);
- uint64_t x324, uint8_t x325 = subborrow_u64(x322, x311, 0xffffffffffffffffL);
- uint64_t x327, uint8_t x328 = subborrow_u64(x325, x314, 0xffffffffffffffffL);
- uint64_t x330, uint8_t x331 = subborrow_u64(x328, x317, 0xf);
- uint64_t _, uint8_t x334 = subborrow_u64(x331, x319, 0x0);
- uint64_t x335 = cmovznz64(x334, x330, x317);
- uint64_t x336 = cmovznz64(x334, x327, x314);
- uint64_t x337 = cmovznz64(x334, x324, x311);
- uint64_t x338 = cmovznz64(x334, x321, x308);
- return (x335, x336, x337, x338))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e196m15_4limbs/femulDisplay.v b/src/Specific/montgomery64_2e196m15_4limbs/femulDisplay.v
deleted file mode 100644
index 5898011f8..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e196m15_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e196m15_4limbs/fenz.c b/src/Specific/montgomery64_2e196m15_4limbs/fenz.c
deleted file mode 100644
index 7541094ff..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x7 = (x6 | x5);
- { uint64_t x8 = (x4 | x7);
- { uint64_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e196m15_4limbs/fenz.v b/src/Specific/montgomery64_2e196m15_4limbs/fenz.v
deleted file mode 100644
index f37678d02..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e196m15_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e196m15_4limbs/fenzDisplay.log b/src/Specific/montgomery64_2e196m15_4limbs/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e196m15_4limbs/fenzDisplay.v b/src/Specific/montgomery64_2e196m15_4limbs/fenzDisplay.v
deleted file mode 100644
index 974087bd0..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e196m15_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e196m15_4limbs/feopp.c b/src/Specific/montgomery64_2e196m15_4limbs/feopp.c
deleted file mode 100644
index 19622bda1..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/feopp.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feopp(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8; uint8_t x9 = _subborrow_u64(0x0, 0x0, x2, &x8);
- { uint64_t x11; uint8_t x12 = _subborrow_u64(x9, 0x0, x4, &x11);
- { uint64_t x14; uint8_t x15 = _subborrow_u64(x12, 0x0, x6, &x14);
- { uint64_t x17; uint8_t x18 = _subborrow_u64(x15, 0x0, x5, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xfffffffffffffff1L);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x8, x20, &x22);
- { uint64_t x24 = (x19 & 0xffffffffffffffffL);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x23, x11, x24, &x26);
- { uint64_t x28 = (x19 & 0xffffffffffffffffL);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x27, x14, x28, &x30);
- { uint8_t x32 = ((uint8_t)x19 & 0xf);
- { uint64_t x34; uint8_t _ = _addcarryx_u64(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e196m15_4limbs/feopp.v b/src/Specific/montgomery64_2e196m15_4limbs/feopp.v
deleted file mode 100644
index a8742e2b5..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e196m15_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e196m15_4limbs/feoppDisplay.log b/src/Specific/montgomery64_2e196m15_4limbs/feoppDisplay.log
deleted file mode 100644
index cc51b2dd1..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xfffffffffffffff1L);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffffffffffffffL);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x28 = (x19 & 0xffffffffffffffffL);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x27, x14, x28);
- uint8_t x32 = ((uint8_t)x19 & 0xf);
- uint64_t x34, uint8_t _ = addcarryx_u64(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e196m15_4limbs/feoppDisplay.v b/src/Specific/montgomery64_2e196m15_4limbs/feoppDisplay.v
deleted file mode 100644
index 8d7f56818..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e196m15_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e196m15_4limbs/fesquare.c b/src/Specific/montgomery64_2e196m15_4limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e196m15_4limbs/fesub.c b/src/Specific/montgomery64_2e196m15_4limbs/fesub.c
deleted file mode 100644
index 8ce694442..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/fesub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _subborrow_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _subborrow_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _subborrow_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u64(x24, x8, x14, &x26);
- { uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- { uint64_t x29 = (x28 & 0xfffffffffffffff1L);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(0x0, x17, x29, &x31);
- { uint64_t x33 = (x28 & 0xffffffffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x20, x33, &x35);
- { uint64_t x37 = (x28 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x23, x37, &x39);
- { uint8_t x41 = ((uint8_t)x28 & 0xf);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x26, x41, &x43);
- out[0] = x31;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e196m15_4limbs/fesub.v b/src/Specific/montgomery64_2e196m15_4limbs/fesub.v
deleted file mode 100644
index b7fbe0ba6..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e196m15_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e196m15_4limbs/fesubDisplay.log b/src/Specific/montgomery64_2e196m15_4limbs/fesubDisplay.log
deleted file mode 100644
index 961fd6c8d..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint64_t x29 = (x28 & 0xfffffffffffffff1L);
- uint64_t x31, uint8_t x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x37 = (x28 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x23, x37);
- uint8_t x41 = ((uint8_t)x28 & 0xf);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x26, x41);
- (Return x43, Return x39, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e196m15_4limbs/fesubDisplay.v b/src/Specific/montgomery64_2e196m15_4limbs/fesubDisplay.v
deleted file mode 100644
index 10b8c075e..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e196m15_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e196m15_4limbs/py_interpreter.sh b/src/Specific/montgomery64_2e196m15_4limbs/py_interpreter.sh
deleted file mode 100755
index f8a492b8c..000000000
--- a/src/Specific/montgomery64_2e196m15_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**196 - 15' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e198m17_4limbs/CurveParameters.v b/src/Specific/montgomery64_2e198m17_4limbs/CurveParameters.v
deleted file mode 100644
index 16c39e743..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^198 - 17
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 64;
- bitwidth := 64;
- s := 2^198;
- c := [(1, 17)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e198m17_4limbs/Synthesis.v b/src/Specific/montgomery64_2e198m17_4limbs/Synthesis.v
deleted file mode 100644
index 8c1e199d8..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e198m17_4limbs.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/montgomery64_2e198m17_4limbs/compiler.sh b/src/Specific/montgomery64_2e198m17_4limbs/compiler.sh
deleted file mode 100755
index 365b34dfe..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<198) - 17' "$@"
diff --git a/src/Specific/montgomery64_2e198m17_4limbs/compilerxx.sh b/src/Specific/montgomery64_2e198m17_4limbs/compilerxx.sh
deleted file mode 100755
index fa415d831..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<198) - 17' "$@"
diff --git a/src/Specific/montgomery64_2e198m17_4limbs/feadd.c b/src/Specific/montgomery64_2e198m17_4limbs/feadd.c
deleted file mode 100644
index 462dab71d..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _addcarryx_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _addcarryx_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x24, x8, x14, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u64(0x0, x17, 0xffffffffffffffefL, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u64(x30, x20, 0xffffffffffffffffL, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u64(x33, x23, 0xffffffffffffffffL, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u64(x36, x26, 0x3f, &x38);
- { uint64_t _; uint8_t x42 = _subborrow_u64(x39, x27, 0x0, &_);
- { uint64_t x43 = cmovznz64(x42, x38, x26);
- { uint64_t x44 = cmovznz64(x42, x35, x23);
- { uint64_t x45 = cmovznz64(x42, x32, x20);
- { uint64_t x46 = cmovznz64(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e198m17_4limbs/feadd.v b/src/Specific/montgomery64_2e198m17_4limbs/feadd.v
deleted file mode 100644
index 94635fa24..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e198m17_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e198m17_4limbs/feaddDisplay.log b/src/Specific/montgomery64_2e198m17_4limbs/feaddDisplay.log
deleted file mode 100644
index d4d34eddd..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t x30 = subborrow_u64(0x0, x17, 0xffffffffffffffefL);
- uint64_t x32, uint8_t x33 = subborrow_u64(x30, x20, 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = subborrow_u64(x33, x23, 0xffffffffffffffffL);
- uint64_t x38, uint8_t x39 = subborrow_u64(x36, x26, 0x3f);
- uint64_t _, uint8_t x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e198m17_4limbs/feaddDisplay.v b/src/Specific/montgomery64_2e198m17_4limbs/feaddDisplay.v
deleted file mode 100644
index 7a94878bf..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e198m17_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e198m17_4limbs/femul.c b/src/Specific/montgomery64_2e198m17_4limbs/femul.c
deleted file mode 100644
index 3e5aad476..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/femul.c
+++ /dev/null
@@ -1,130 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x18; uint64_t x17 = _mulx_u64(x5, x11, &x18);
- { uint64_t x21; uint64_t x20 = _mulx_u64(x5, x13, &x21);
- { uint64_t x24; uint64_t x23 = _mulx_u64(x5, x15, &x24);
- { uint64_t x27; uint64_t x26 = _mulx_u64(x5, x14, &x27);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x18, x20, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x21, x23, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x24, x26, &x35);
- { uint64_t x38; uint8_t _ = _addcarryx_u64(0x0, x36, x27, &x38);
- { uint64_t _; uint64_t x41 = _mulx_u64(x17, 0xf0f0f0f0f0f0f0f1L, &_);
- { uint64_t x45; uint64_t x44 = _mulx_u64(x41, 0xffffffffffffffefL, &x45);
- { uint64_t x48; uint64_t x47 = _mulx_u64(x41, 0xffffffffffffffffL, &x48);
- { uint64_t x51; uint64_t x50 = _mulx_u64(x41, 0xffffffffffffffffL, &x51);
- { uint8_t x54; uint64_t x53 = _mulx_u64_out_u8(x41, 0x3f, &x54);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(0x0, x45, x47, &x56);
- { uint64_t x59; uint8_t x60 = _addcarryx_u64(x57, x48, x50, &x59);
- { uint64_t x62; uint8_t x63 = _addcarryx_u64(x60, x51, x53, &x62);
- { uint8_t x64 = (x63 + x54);
- { uint64_t _; uint8_t x67 = _addcarryx_u64(0x0, x17, x44, &_);
- { uint64_t x69; uint8_t x70 = _addcarryx_u64(x67, x29, x56, &x69);
- { uint64_t x72; uint8_t x73 = _addcarryx_u64(x70, x32, x59, &x72);
- { uint64_t x75; uint8_t x76 = _addcarryx_u64(x73, x35, x62, &x75);
- { uint64_t x78; uint8_t x79 = _addcarryx_u64(x76, x38, x64, &x78);
- { uint64_t x82; uint64_t x81 = _mulx_u64(x7, x11, &x82);
- { uint64_t x85; uint64_t x84 = _mulx_u64(x7, x13, &x85);
- { uint64_t x88; uint64_t x87 = _mulx_u64(x7, x15, &x88);
- { uint64_t x91; uint64_t x90 = _mulx_u64(x7, x14, &x91);
- { uint64_t x93; uint8_t x94 = _addcarryx_u64(0x0, x82, x84, &x93);
- { uint64_t x96; uint8_t x97 = _addcarryx_u64(x94, x85, x87, &x96);
- { uint64_t x99; uint8_t x100 = _addcarryx_u64(x97, x88, x90, &x99);
- { uint64_t x102; uint8_t _ = _addcarryx_u64(0x0, x100, x91, &x102);
- { uint64_t x105; uint8_t x106 = _addcarryx_u64(0x0, x69, x81, &x105);
- { uint64_t x108; uint8_t x109 = _addcarryx_u64(x106, x72, x93, &x108);
- { uint64_t x111; uint8_t x112 = _addcarryx_u64(x109, x75, x96, &x111);
- { uint64_t x114; uint8_t x115 = _addcarryx_u64(x112, x78, x99, &x114);
- { uint64_t x117; uint8_t x118 = _addcarryx_u64(x115, x79, x102, &x117);
- { uint64_t _; uint64_t x120 = _mulx_u64(x105, 0xf0f0f0f0f0f0f0f1L, &_);
- { uint64_t x124; uint64_t x123 = _mulx_u64(x120, 0xffffffffffffffefL, &x124);
- { uint64_t x127; uint64_t x126 = _mulx_u64(x120, 0xffffffffffffffffL, &x127);
- { uint64_t x130; uint64_t x129 = _mulx_u64(x120, 0xffffffffffffffffL, &x130);
- { uint8_t x133; uint64_t x132 = _mulx_u64_out_u8(x120, 0x3f, &x133);
- { uint64_t x135; uint8_t x136 = _addcarryx_u64(0x0, x124, x126, &x135);
- { uint64_t x138; uint8_t x139 = _addcarryx_u64(x136, x127, x129, &x138);
- { uint64_t x141; uint8_t x142 = _addcarryx_u64(x139, x130, x132, &x141);
- { uint8_t x143 = (x142 + x133);
- { uint64_t _; uint8_t x146 = _addcarryx_u64(0x0, x105, x123, &_);
- { uint64_t x148; uint8_t x149 = _addcarryx_u64(x146, x108, x135, &x148);
- { uint64_t x151; uint8_t x152 = _addcarryx_u64(x149, x111, x138, &x151);
- { uint64_t x154; uint8_t x155 = _addcarryx_u64(x152, x114, x141, &x154);
- { uint64_t x157; uint8_t x158 = _addcarryx_u64(x155, x117, x143, &x157);
- { uint8_t x159 = (x158 + x118);
- { uint64_t x162; uint64_t x161 = _mulx_u64(x9, x11, &x162);
- { uint64_t x165; uint64_t x164 = _mulx_u64(x9, x13, &x165);
- { uint64_t x168; uint64_t x167 = _mulx_u64(x9, x15, &x168);
- { uint64_t x171; uint64_t x170 = _mulx_u64(x9, x14, &x171);
- { uint64_t x173; uint8_t x174 = _addcarryx_u64(0x0, x162, x164, &x173);
- { uint64_t x176; uint8_t x177 = _addcarryx_u64(x174, x165, x167, &x176);
- { uint64_t x179; uint8_t x180 = _addcarryx_u64(x177, x168, x170, &x179);
- { uint64_t x182; uint8_t _ = _addcarryx_u64(0x0, x180, x171, &x182);
- { uint64_t x185; uint8_t x186 = _addcarryx_u64(0x0, x148, x161, &x185);
- { uint64_t x188; uint8_t x189 = _addcarryx_u64(x186, x151, x173, &x188);
- { uint64_t x191; uint8_t x192 = _addcarryx_u64(x189, x154, x176, &x191);
- { uint64_t x194; uint8_t x195 = _addcarryx_u64(x192, x157, x179, &x194);
- { uint64_t x197; uint8_t x198 = _addcarryx_u64(x195, x159, x182, &x197);
- { uint64_t _; uint64_t x200 = _mulx_u64(x185, 0xf0f0f0f0f0f0f0f1L, &_);
- { uint64_t x204; uint64_t x203 = _mulx_u64(x200, 0xffffffffffffffefL, &x204);
- { uint64_t x207; uint64_t x206 = _mulx_u64(x200, 0xffffffffffffffffL, &x207);
- { uint64_t x210; uint64_t x209 = _mulx_u64(x200, 0xffffffffffffffffL, &x210);
- { uint8_t x213; uint64_t x212 = _mulx_u64_out_u8(x200, 0x3f, &x213);
- { uint64_t x215; uint8_t x216 = _addcarryx_u64(0x0, x204, x206, &x215);
- { uint64_t x218; uint8_t x219 = _addcarryx_u64(x216, x207, x209, &x218);
- { uint64_t x221; uint8_t x222 = _addcarryx_u64(x219, x210, x212, &x221);
- { uint8_t x223 = (x222 + x213);
- { uint64_t _; uint8_t x226 = _addcarryx_u64(0x0, x185, x203, &_);
- { uint64_t x228; uint8_t x229 = _addcarryx_u64(x226, x188, x215, &x228);
- { uint64_t x231; uint8_t x232 = _addcarryx_u64(x229, x191, x218, &x231);
- { uint64_t x234; uint8_t x235 = _addcarryx_u64(x232, x194, x221, &x234);
- { uint64_t x237; uint8_t x238 = _addcarryx_u64(x235, x197, x223, &x237);
- { uint8_t x239 = (x238 + x198);
- { uint64_t x242; uint64_t x241 = _mulx_u64(x8, x11, &x242);
- { uint64_t x245; uint64_t x244 = _mulx_u64(x8, x13, &x245);
- { uint64_t x248; uint64_t x247 = _mulx_u64(x8, x15, &x248);
- { uint64_t x251; uint64_t x250 = _mulx_u64(x8, x14, &x251);
- { uint64_t x253; uint8_t x254 = _addcarryx_u64(0x0, x242, x244, &x253);
- { uint64_t x256; uint8_t x257 = _addcarryx_u64(x254, x245, x247, &x256);
- { uint64_t x259; uint8_t x260 = _addcarryx_u64(x257, x248, x250, &x259);
- { uint64_t x262; uint8_t _ = _addcarryx_u64(0x0, x260, x251, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(0x0, x228, x241, &x265);
- { uint64_t x268; uint8_t x269 = _addcarryx_u64(x266, x231, x253, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(x269, x234, x256, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x237, x259, &x274);
- { uint64_t x277; uint8_t x278 = _addcarryx_u64(x275, x239, x262, &x277);
- { uint64_t _; uint64_t x280 = _mulx_u64(x265, 0xf0f0f0f0f0f0f0f1L, &_);
- { uint64_t x284; uint64_t x283 = _mulx_u64(x280, 0xffffffffffffffefL, &x284);
- { uint64_t x287; uint64_t x286 = _mulx_u64(x280, 0xffffffffffffffffL, &x287);
- { uint64_t x290; uint64_t x289 = _mulx_u64(x280, 0xffffffffffffffffL, &x290);
- { uint8_t x293; uint64_t x292 = _mulx_u64_out_u8(x280, 0x3f, &x293);
- { uint64_t x295; uint8_t x296 = _addcarryx_u64(0x0, x284, x286, &x295);
- { uint64_t x298; uint8_t x299 = _addcarryx_u64(x296, x287, x289, &x298);
- { uint64_t x301; uint8_t x302 = _addcarryx_u64(x299, x290, x292, &x301);
- { uint8_t x303 = (x302 + x293);
- { uint64_t _; uint8_t x306 = _addcarryx_u64(0x0, x265, x283, &_);
- { uint64_t x308; uint8_t x309 = _addcarryx_u64(x306, x268, x295, &x308);
- { uint64_t x311; uint8_t x312 = _addcarryx_u64(x309, x271, x298, &x311);
- { uint64_t x314; uint8_t x315 = _addcarryx_u64(x312, x274, x301, &x314);
- { uint64_t x317; uint8_t x318 = _addcarryx_u64(x315, x277, x303, &x317);
- { uint8_t x319 = (x318 + x278);
- { uint64_t x321; uint8_t x322 = _subborrow_u64(0x0, x308, 0xffffffffffffffefL, &x321);
- { uint64_t x324; uint8_t x325 = _subborrow_u64(x322, x311, 0xffffffffffffffffL, &x324);
- { uint64_t x327; uint8_t x328 = _subborrow_u64(x325, x314, 0xffffffffffffffffL, &x327);
- { uint64_t x330; uint8_t x331 = _subborrow_u64(x328, x317, 0x3f, &x330);
- { uint64_t _; uint8_t x334 = _subborrow_u64(x331, x319, 0x0, &_);
- { uint64_t x335 = cmovznz64(x334, x330, x317);
- { uint64_t x336 = cmovznz64(x334, x327, x314);
- { uint64_t x337 = cmovznz64(x334, x324, x311);
- { uint64_t x338 = cmovznz64(x334, x321, x308);
- out[0] = x338;
- out[1] = x337;
- out[2] = x336;
- out[3] = x335;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e198m17_4limbs/femul.v b/src/Specific/montgomery64_2e198m17_4limbs/femul.v
deleted file mode 100644
index 185665bac..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e198m17_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e198m17_4limbs/femulDisplay.log b/src/Specific/montgomery64_2e198m17_4limbs/femulDisplay.log
deleted file mode 100644
index 8823d6e80..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,122 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t _ = mulx_u64(x17, 0xf0f0f0f0f0f0f0f1L);
- uint64_t x44, uint64_t x45 = mulx_u64(x41, 0xffffffffffffffefL);
- uint64_t x47, uint64_t x48 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x50, uint64_t x51 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x53, uint8_t x54 = mulx_u64_out_u8(x41, 0x3f);
- uint64_t x56, uint8_t x57 = addcarryx_u64(0x0, x45, x47);
- uint64_t x59, uint8_t x60 = addcarryx_u64(x57, x48, x50);
- uint64_t x62, uint8_t x63 = addcarryx_u64(x60, x51, x53);
- uint8_t x64 = (x63 + x54);
- uint64_t _, uint8_t x67 = addcarryx_u64(0x0, x17, x44);
- uint64_t x69, uint8_t x70 = addcarryx_u64(x67, x29, x56);
- uint64_t x72, uint8_t x73 = addcarryx_u64(x70, x32, x59);
- uint64_t x75, uint8_t x76 = addcarryx_u64(x73, x35, x62);
- uint64_t x78, uint8_t x79 = addcarryx_u64(x76, x38, x64);
- uint64_t x81, uint64_t x82 = mulx_u64(x7, x11);
- uint64_t x84, uint64_t x85 = mulx_u64(x7, x13);
- uint64_t x87, uint64_t x88 = mulx_u64(x7, x15);
- uint64_t x90, uint64_t x91 = mulx_u64(x7, x14);
- uint64_t x93, uint8_t x94 = addcarryx_u64(0x0, x82, x84);
- uint64_t x96, uint8_t x97 = addcarryx_u64(x94, x85, x87);
- uint64_t x99, uint8_t x100 = addcarryx_u64(x97, x88, x90);
- uint64_t x102, uint8_t _ = addcarryx_u64(0x0, x100, x91);
- uint64_t x105, uint8_t x106 = addcarryx_u64(0x0, x69, x81);
- uint64_t x108, uint8_t x109 = addcarryx_u64(x106, x72, x93);
- uint64_t x111, uint8_t x112 = addcarryx_u64(x109, x75, x96);
- uint64_t x114, uint8_t x115 = addcarryx_u64(x112, x78, x99);
- uint64_t x117, uint8_t x118 = addcarryx_u64(x115, x79, x102);
- uint64_t x120, uint64_t _ = mulx_u64(x105, 0xf0f0f0f0f0f0f0f1L);
- uint64_t x123, uint64_t x124 = mulx_u64(x120, 0xffffffffffffffefL);
- uint64_t x126, uint64_t x127 = mulx_u64(x120, 0xffffffffffffffffL);
- uint64_t x129, uint64_t x130 = mulx_u64(x120, 0xffffffffffffffffL);
- uint64_t x132, uint8_t x133 = mulx_u64_out_u8(x120, 0x3f);
- uint64_t x135, uint8_t x136 = addcarryx_u64(0x0, x124, x126);
- uint64_t x138, uint8_t x139 = addcarryx_u64(x136, x127, x129);
- uint64_t x141, uint8_t x142 = addcarryx_u64(x139, x130, x132);
- uint8_t x143 = (x142 + x133);
- uint64_t _, uint8_t x146 = addcarryx_u64(0x0, x105, x123);
- uint64_t x148, uint8_t x149 = addcarryx_u64(x146, x108, x135);
- uint64_t x151, uint8_t x152 = addcarryx_u64(x149, x111, x138);
- uint64_t x154, uint8_t x155 = addcarryx_u64(x152, x114, x141);
- uint64_t x157, uint8_t x158 = addcarryx_u64(x155, x117, x143);
- uint8_t x159 = (x158 + x118);
- uint64_t x161, uint64_t x162 = mulx_u64(x9, x11);
- uint64_t x164, uint64_t x165 = mulx_u64(x9, x13);
- uint64_t x167, uint64_t x168 = mulx_u64(x9, x15);
- uint64_t x170, uint64_t x171 = mulx_u64(x9, x14);
- uint64_t x173, uint8_t x174 = addcarryx_u64(0x0, x162, x164);
- uint64_t x176, uint8_t x177 = addcarryx_u64(x174, x165, x167);
- uint64_t x179, uint8_t x180 = addcarryx_u64(x177, x168, x170);
- uint64_t x182, uint8_t _ = addcarryx_u64(0x0, x180, x171);
- uint64_t x185, uint8_t x186 = addcarryx_u64(0x0, x148, x161);
- uint64_t x188, uint8_t x189 = addcarryx_u64(x186, x151, x173);
- uint64_t x191, uint8_t x192 = addcarryx_u64(x189, x154, x176);
- uint64_t x194, uint8_t x195 = addcarryx_u64(x192, x157, x179);
- uint64_t x197, uint8_t x198 = addcarryx_u64(x195, x159, x182);
- uint64_t x200, uint64_t _ = mulx_u64(x185, 0xf0f0f0f0f0f0f0f1L);
- uint64_t x203, uint64_t x204 = mulx_u64(x200, 0xffffffffffffffefL);
- uint64_t x206, uint64_t x207 = mulx_u64(x200, 0xffffffffffffffffL);
- uint64_t x209, uint64_t x210 = mulx_u64(x200, 0xffffffffffffffffL);
- uint64_t x212, uint8_t x213 = mulx_u64_out_u8(x200, 0x3f);
- uint64_t x215, uint8_t x216 = addcarryx_u64(0x0, x204, x206);
- uint64_t x218, uint8_t x219 = addcarryx_u64(x216, x207, x209);
- uint64_t x221, uint8_t x222 = addcarryx_u64(x219, x210, x212);
- uint8_t x223 = (x222 + x213);
- uint64_t _, uint8_t x226 = addcarryx_u64(0x0, x185, x203);
- uint64_t x228, uint8_t x229 = addcarryx_u64(x226, x188, x215);
- uint64_t x231, uint8_t x232 = addcarryx_u64(x229, x191, x218);
- uint64_t x234, uint8_t x235 = addcarryx_u64(x232, x194, x221);
- uint64_t x237, uint8_t x238 = addcarryx_u64(x235, x197, x223);
- uint8_t x239 = (x238 + x198);
- uint64_t x241, uint64_t x242 = mulx_u64(x8, x11);
- uint64_t x244, uint64_t x245 = mulx_u64(x8, x13);
- uint64_t x247, uint64_t x248 = mulx_u64(x8, x15);
- uint64_t x250, uint64_t x251 = mulx_u64(x8, x14);
- uint64_t x253, uint8_t x254 = addcarryx_u64(0x0, x242, x244);
- uint64_t x256, uint8_t x257 = addcarryx_u64(x254, x245, x247);
- uint64_t x259, uint8_t x260 = addcarryx_u64(x257, x248, x250);
- uint64_t x262, uint8_t _ = addcarryx_u64(0x0, x260, x251);
- uint64_t x265, uint8_t x266 = addcarryx_u64(0x0, x228, x241);
- uint64_t x268, uint8_t x269 = addcarryx_u64(x266, x231, x253);
- uint64_t x271, uint8_t x272 = addcarryx_u64(x269, x234, x256);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x237, x259);
- uint64_t x277, uint8_t x278 = addcarryx_u64(x275, x239, x262);
- uint64_t x280, uint64_t _ = mulx_u64(x265, 0xf0f0f0f0f0f0f0f1L);
- uint64_t x283, uint64_t x284 = mulx_u64(x280, 0xffffffffffffffefL);
- uint64_t x286, uint64_t x287 = mulx_u64(x280, 0xffffffffffffffffL);
- uint64_t x289, uint64_t x290 = mulx_u64(x280, 0xffffffffffffffffL);
- uint64_t x292, uint8_t x293 = mulx_u64_out_u8(x280, 0x3f);
- uint64_t x295, uint8_t x296 = addcarryx_u64(0x0, x284, x286);
- uint64_t x298, uint8_t x299 = addcarryx_u64(x296, x287, x289);
- uint64_t x301, uint8_t x302 = addcarryx_u64(x299, x290, x292);
- uint8_t x303 = (x302 + x293);
- uint64_t _, uint8_t x306 = addcarryx_u64(0x0, x265, x283);
- uint64_t x308, uint8_t x309 = addcarryx_u64(x306, x268, x295);
- uint64_t x311, uint8_t x312 = addcarryx_u64(x309, x271, x298);
- uint64_t x314, uint8_t x315 = addcarryx_u64(x312, x274, x301);
- uint64_t x317, uint8_t x318 = addcarryx_u64(x315, x277, x303);
- uint8_t x319 = (x318 + x278);
- uint64_t x321, uint8_t x322 = subborrow_u64(0x0, x308, 0xffffffffffffffefL);
- uint64_t x324, uint8_t x325 = subborrow_u64(x322, x311, 0xffffffffffffffffL);
- uint64_t x327, uint8_t x328 = subborrow_u64(x325, x314, 0xffffffffffffffffL);
- uint64_t x330, uint8_t x331 = subborrow_u64(x328, x317, 0x3f);
- uint64_t _, uint8_t x334 = subborrow_u64(x331, x319, 0x0);
- uint64_t x335 = cmovznz64(x334, x330, x317);
- uint64_t x336 = cmovznz64(x334, x327, x314);
- uint64_t x337 = cmovznz64(x334, x324, x311);
- uint64_t x338 = cmovznz64(x334, x321, x308);
- return (x335, x336, x337, x338))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e198m17_4limbs/femulDisplay.v b/src/Specific/montgomery64_2e198m17_4limbs/femulDisplay.v
deleted file mode 100644
index d75c2feda..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e198m17_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e198m17_4limbs/fenz.c b/src/Specific/montgomery64_2e198m17_4limbs/fenz.c
deleted file mode 100644
index 7541094ff..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x7 = (x6 | x5);
- { uint64_t x8 = (x4 | x7);
- { uint64_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e198m17_4limbs/fenz.v b/src/Specific/montgomery64_2e198m17_4limbs/fenz.v
deleted file mode 100644
index 4a7446ca3..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e198m17_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e198m17_4limbs/fenzDisplay.log b/src/Specific/montgomery64_2e198m17_4limbs/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e198m17_4limbs/fenzDisplay.v b/src/Specific/montgomery64_2e198m17_4limbs/fenzDisplay.v
deleted file mode 100644
index 188c1157e..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e198m17_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e198m17_4limbs/feopp.c b/src/Specific/montgomery64_2e198m17_4limbs/feopp.c
deleted file mode 100644
index 710608892..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/feopp.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feopp(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8; uint8_t x9 = _subborrow_u64(0x0, 0x0, x2, &x8);
- { uint64_t x11; uint8_t x12 = _subborrow_u64(x9, 0x0, x4, &x11);
- { uint64_t x14; uint8_t x15 = _subborrow_u64(x12, 0x0, x6, &x14);
- { uint64_t x17; uint8_t x18 = _subborrow_u64(x15, 0x0, x5, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xffffffffffffffefL);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x8, x20, &x22);
- { uint64_t x24 = (x19 & 0xffffffffffffffffL);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x23, x11, x24, &x26);
- { uint64_t x28 = (x19 & 0xffffffffffffffffL);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x27, x14, x28, &x30);
- { uint8_t x32 = ((uint8_t)x19 & 0x3f);
- { uint64_t x34; uint8_t _ = _addcarryx_u64(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e198m17_4limbs/feopp.v b/src/Specific/montgomery64_2e198m17_4limbs/feopp.v
deleted file mode 100644
index 580fc90d0..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e198m17_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e198m17_4limbs/feoppDisplay.log b/src/Specific/montgomery64_2e198m17_4limbs/feoppDisplay.log
deleted file mode 100644
index cb54ba741..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xffffffffffffffefL);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffffffffffffffL);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x28 = (x19 & 0xffffffffffffffffL);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x27, x14, x28);
- uint8_t x32 = ((uint8_t)x19 & 0x3f);
- uint64_t x34, uint8_t _ = addcarryx_u64(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e198m17_4limbs/feoppDisplay.v b/src/Specific/montgomery64_2e198m17_4limbs/feoppDisplay.v
deleted file mode 100644
index 24280fac3..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e198m17_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e198m17_4limbs/fesquare.c b/src/Specific/montgomery64_2e198m17_4limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e198m17_4limbs/fesub.c b/src/Specific/montgomery64_2e198m17_4limbs/fesub.c
deleted file mode 100644
index eb73e957b..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/fesub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _subborrow_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _subborrow_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _subborrow_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u64(x24, x8, x14, &x26);
- { uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- { uint64_t x29 = (x28 & 0xffffffffffffffefL);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(0x0, x17, x29, &x31);
- { uint64_t x33 = (x28 & 0xffffffffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x20, x33, &x35);
- { uint64_t x37 = (x28 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x23, x37, &x39);
- { uint8_t x41 = ((uint8_t)x28 & 0x3f);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x26, x41, &x43);
- out[0] = x31;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e198m17_4limbs/fesub.v b/src/Specific/montgomery64_2e198m17_4limbs/fesub.v
deleted file mode 100644
index 9fa121538..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e198m17_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e198m17_4limbs/fesubDisplay.log b/src/Specific/montgomery64_2e198m17_4limbs/fesubDisplay.log
deleted file mode 100644
index a70ca85ad..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint64_t x29 = (x28 & 0xffffffffffffffefL);
- uint64_t x31, uint8_t x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x37 = (x28 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x23, x37);
- uint8_t x41 = ((uint8_t)x28 & 0x3f);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x26, x41);
- (Return x43, Return x39, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e198m17_4limbs/fesubDisplay.v b/src/Specific/montgomery64_2e198m17_4limbs/fesubDisplay.v
deleted file mode 100644
index 016486afc..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e198m17_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e198m17_4limbs/py_interpreter.sh b/src/Specific/montgomery64_2e198m17_4limbs/py_interpreter.sh
deleted file mode 100755
index 4e637fbc6..000000000
--- a/src/Specific/montgomery64_2e198m17_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**198 - 17' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/CurveParameters.v b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/CurveParameters.v
deleted file mode 100644
index 69690d6d5..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^205 - 45*2^198 - 1
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 64;
- bitwidth := 64;
- s := 2^205;
- c := [(1, 1); (45, 2^198)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e205m45x2e198m1_4limbs/Synthesis.v b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/Synthesis.v
deleted file mode 100644
index d6a3ee4d8..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e205m45x2e198m1_4limbs.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/montgomery64_2e205m45x2e198m1_4limbs/compiler.sh b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/compiler.sh
deleted file mode 100755
index 8ebfba4a2..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/compilerxx.sh b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/compilerxx.sh
deleted file mode 100755
index dcb2e56c6..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x14,0xbf,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<205) - 45*(1_mpz<<198) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feadd.c b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feadd.c
deleted file mode 100644
index efa3e56d5..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _addcarryx_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _addcarryx_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x24, x8, x14, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u64(0x0, x17, 0xffffffffffffffffL, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u64(x30, x20, 0xffffffffffffffffL, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u64(x33, x23, 0xffffffffffffffffL, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u64(x36, x26, 0x14bf, &x38);
- { uint64_t _; uint8_t x42 = _subborrow_u64(x39, x27, 0x0, &_);
- { uint64_t x43 = cmovznz64(x42, x38, x26);
- { uint64_t x44 = cmovznz64(x42, x35, x23);
- { uint64_t x45 = cmovznz64(x42, x32, x20);
- { uint64_t x46 = cmovznz64(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feadd.v b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feadd.v
deleted file mode 100644
index 64b8ec57c..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e205m45x2e198m1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feaddDisplay.log b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feaddDisplay.log
deleted file mode 100644
index f0bef4fdc..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t x30 = subborrow_u64(0x0, x17, 0xffffffffffffffffL);
- uint64_t x32, uint8_t x33 = subborrow_u64(x30, x20, 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = subborrow_u64(x33, x23, 0xffffffffffffffffL);
- uint64_t x38, uint8_t x39 = subborrow_u64(x36, x26, 0x14bf);
- uint64_t _, uint8_t x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feaddDisplay.v b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feaddDisplay.v
deleted file mode 100644
index 325ad0713..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e205m45x2e198m1_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/femul.c b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/femul.c
deleted file mode 100644
index 48e9c8511..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/femul.c
+++ /dev/null
@@ -1,126 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x18; uint64_t x17 = _mulx_u64(x5, x11, &x18);
- { uint64_t x21; uint64_t x20 = _mulx_u64(x5, x13, &x21);
- { uint64_t x24; uint64_t x23 = _mulx_u64(x5, x15, &x24);
- { uint64_t x27; uint64_t x26 = _mulx_u64(x5, x14, &x27);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x18, x20, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x21, x23, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x24, x26, &x35);
- { uint64_t x38; uint8_t _ = _addcarryx_u64(0x0, x36, x27, &x38);
- { uint64_t x42; uint64_t x41 = _mulx_u64(x17, 0xffffffffffffffffL, &x42);
- { uint64_t x45; uint64_t x44 = _mulx_u64(x17, 0xffffffffffffffffL, &x45);
- { uint64_t x48; uint64_t x47 = _mulx_u64(x17, 0xffffffffffffffffL, &x48);
- { uint64_t x51; uint64_t x50 = _mulx_u64(x17, 0x14bf, &x51);
- { uint64_t x53; uint8_t x54 = _addcarryx_u64(0x0, x42, x44, &x53);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(x54, x45, x47, &x56);
- { uint64_t x59; uint8_t x60 = _addcarryx_u64(x57, x48, x50, &x59);
- { uint64_t x62; uint8_t _ = _addcarryx_u64(0x0, x60, x51, &x62);
- { uint64_t _; uint8_t x66 = _addcarryx_u64(0x0, x17, x41, &_);
- { uint64_t x68; uint8_t x69 = _addcarryx_u64(x66, x29, x53, &x68);
- { uint64_t x71; uint8_t x72 = _addcarryx_u64(x69, x32, x56, &x71);
- { uint64_t x74; uint8_t x75 = _addcarryx_u64(x72, x35, x59, &x74);
- { uint64_t x77; uint8_t x78 = _addcarryx_u64(x75, x38, x62, &x77);
- { uint64_t x81; uint64_t x80 = _mulx_u64(x7, x11, &x81);
- { uint64_t x84; uint64_t x83 = _mulx_u64(x7, x13, &x84);
- { uint64_t x87; uint64_t x86 = _mulx_u64(x7, x15, &x87);
- { uint64_t x90; uint64_t x89 = _mulx_u64(x7, x14, &x90);
- { uint64_t x92; uint8_t x93 = _addcarryx_u64(0x0, x81, x83, &x92);
- { uint64_t x95; uint8_t x96 = _addcarryx_u64(x93, x84, x86, &x95);
- { uint64_t x98; uint8_t x99 = _addcarryx_u64(x96, x87, x89, &x98);
- { uint64_t x101; uint8_t _ = _addcarryx_u64(0x0, x99, x90, &x101);
- { uint64_t x104; uint8_t x105 = _addcarryx_u64(0x0, x68, x80, &x104);
- { uint64_t x107; uint8_t x108 = _addcarryx_u64(x105, x71, x92, &x107);
- { uint64_t x110; uint8_t x111 = _addcarryx_u64(x108, x74, x95, &x110);
- { uint64_t x113; uint8_t x114 = _addcarryx_u64(x111, x77, x98, &x113);
- { uint64_t x116; uint8_t x117 = _addcarryx_u64(x114, x78, x101, &x116);
- { uint64_t x120; uint64_t x119 = _mulx_u64(x104, 0xffffffffffffffffL, &x120);
- { uint64_t x123; uint64_t x122 = _mulx_u64(x104, 0xffffffffffffffffL, &x123);
- { uint64_t x126; uint64_t x125 = _mulx_u64(x104, 0xffffffffffffffffL, &x126);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x104, 0x14bf, &x129);
- { uint64_t x131; uint8_t x132 = _addcarryx_u64(0x0, x120, x122, &x131);
- { uint64_t x134; uint8_t x135 = _addcarryx_u64(x132, x123, x125, &x134);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(x135, x126, x128, &x137);
- { uint64_t x140; uint8_t _ = _addcarryx_u64(0x0, x138, x129, &x140);
- { uint64_t _; uint8_t x144 = _addcarryx_u64(0x0, x104, x119, &_);
- { uint64_t x146; uint8_t x147 = _addcarryx_u64(x144, x107, x131, &x146);
- { uint64_t x149; uint8_t x150 = _addcarryx_u64(x147, x110, x134, &x149);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x113, x137, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x116, x140, &x155);
- { uint8_t x157 = (x156 + x117);
- { uint64_t x160; uint64_t x159 = _mulx_u64(x9, x11, &x160);
- { uint64_t x163; uint64_t x162 = _mulx_u64(x9, x13, &x163);
- { uint64_t x166; uint64_t x165 = _mulx_u64(x9, x15, &x166);
- { uint64_t x169; uint64_t x168 = _mulx_u64(x9, x14, &x169);
- { uint64_t x171; uint8_t x172 = _addcarryx_u64(0x0, x160, x162, &x171);
- { uint64_t x174; uint8_t x175 = _addcarryx_u64(x172, x163, x165, &x174);
- { uint64_t x177; uint8_t x178 = _addcarryx_u64(x175, x166, x168, &x177);
- { uint64_t x180; uint8_t _ = _addcarryx_u64(0x0, x178, x169, &x180);
- { uint64_t x183; uint8_t x184 = _addcarryx_u64(0x0, x146, x159, &x183);
- { uint64_t x186; uint8_t x187 = _addcarryx_u64(x184, x149, x171, &x186);
- { uint64_t x189; uint8_t x190 = _addcarryx_u64(x187, x152, x174, &x189);
- { uint64_t x192; uint8_t x193 = _addcarryx_u64(x190, x155, x177, &x192);
- { uint64_t x195; uint8_t x196 = _addcarryx_u64(x193, x157, x180, &x195);
- { uint64_t x199; uint64_t x198 = _mulx_u64(x183, 0xffffffffffffffffL, &x199);
- { uint64_t x202; uint64_t x201 = _mulx_u64(x183, 0xffffffffffffffffL, &x202);
- { uint64_t x205; uint64_t x204 = _mulx_u64(x183, 0xffffffffffffffffL, &x205);
- { uint64_t x208; uint64_t x207 = _mulx_u64(x183, 0x14bf, &x208);
- { uint64_t x210; uint8_t x211 = _addcarryx_u64(0x0, x199, x201, &x210);
- { uint64_t x213; uint8_t x214 = _addcarryx_u64(x211, x202, x204, &x213);
- { uint64_t x216; uint8_t x217 = _addcarryx_u64(x214, x205, x207, &x216);
- { uint64_t x219; uint8_t _ = _addcarryx_u64(0x0, x217, x208, &x219);
- { uint64_t _; uint8_t x223 = _addcarryx_u64(0x0, x183, x198, &_);
- { uint64_t x225; uint8_t x226 = _addcarryx_u64(x223, x186, x210, &x225);
- { uint64_t x228; uint8_t x229 = _addcarryx_u64(x226, x189, x213, &x228);
- { uint64_t x231; uint8_t x232 = _addcarryx_u64(x229, x192, x216, &x231);
- { uint64_t x234; uint8_t x235 = _addcarryx_u64(x232, x195, x219, &x234);
- { uint8_t x236 = (x235 + x196);
- { uint64_t x239; uint64_t x238 = _mulx_u64(x8, x11, &x239);
- { uint64_t x242; uint64_t x241 = _mulx_u64(x8, x13, &x242);
- { uint64_t x245; uint64_t x244 = _mulx_u64(x8, x15, &x245);
- { uint64_t x248; uint64_t x247 = _mulx_u64(x8, x14, &x248);
- { uint64_t x250; uint8_t x251 = _addcarryx_u64(0x0, x239, x241, &x250);
- { uint64_t x253; uint8_t x254 = _addcarryx_u64(x251, x242, x244, &x253);
- { uint64_t x256; uint8_t x257 = _addcarryx_u64(x254, x245, x247, &x256);
- { uint64_t x259; uint8_t _ = _addcarryx_u64(0x0, x257, x248, &x259);
- { uint64_t x262; uint8_t x263 = _addcarryx_u64(0x0, x225, x238, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(x263, x228, x250, &x265);
- { uint64_t x268; uint8_t x269 = _addcarryx_u64(x266, x231, x253, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(x269, x234, x256, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x236, x259, &x274);
- { uint64_t x278; uint64_t x277 = _mulx_u64(x262, 0xffffffffffffffffL, &x278);
- { uint64_t x281; uint64_t x280 = _mulx_u64(x262, 0xffffffffffffffffL, &x281);
- { uint64_t x284; uint64_t x283 = _mulx_u64(x262, 0xffffffffffffffffL, &x284);
- { uint64_t x287; uint64_t x286 = _mulx_u64(x262, 0x14bf, &x287);
- { uint64_t x289; uint8_t x290 = _addcarryx_u64(0x0, x278, x280, &x289);
- { uint64_t x292; uint8_t x293 = _addcarryx_u64(x290, x281, x283, &x292);
- { uint64_t x295; uint8_t x296 = _addcarryx_u64(x293, x284, x286, &x295);
- { uint64_t x298; uint8_t _ = _addcarryx_u64(0x0, x296, x287, &x298);
- { uint64_t _; uint8_t x302 = _addcarryx_u64(0x0, x262, x277, &_);
- { uint64_t x304; uint8_t x305 = _addcarryx_u64(x302, x265, x289, &x304);
- { uint64_t x307; uint8_t x308 = _addcarryx_u64(x305, x268, x292, &x307);
- { uint64_t x310; uint8_t x311 = _addcarryx_u64(x308, x271, x295, &x310);
- { uint64_t x313; uint8_t x314 = _addcarryx_u64(x311, x274, x298, &x313);
- { uint8_t x315 = (x314 + x275);
- { uint64_t x317; uint8_t x318 = _subborrow_u64(0x0, x304, 0xffffffffffffffffL, &x317);
- { uint64_t x320; uint8_t x321 = _subborrow_u64(x318, x307, 0xffffffffffffffffL, &x320);
- { uint64_t x323; uint8_t x324 = _subborrow_u64(x321, x310, 0xffffffffffffffffL, &x323);
- { uint64_t x326; uint8_t x327 = _subborrow_u64(x324, x313, 0x14bf, &x326);
- { uint64_t _; uint8_t x330 = _subborrow_u64(x327, x315, 0x0, &_);
- { uint64_t x331 = cmovznz64(x330, x326, x313);
- { uint64_t x332 = cmovznz64(x330, x323, x310);
- { uint64_t x333 = cmovznz64(x330, x320, x307);
- { uint64_t x334 = cmovznz64(x330, x317, x304);
- out[0] = x334;
- out[1] = x333;
- out[2] = x332;
- out[3] = x331;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/femul.v b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/femul.v
deleted file mode 100644
index 877c1dac7..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e205m45x2e198m1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/femulDisplay.log b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/femulDisplay.log
deleted file mode 100644
index 1d65f9a33..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,118 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t x42 = mulx_u64(x17, 0xffffffffffffffffL);
- uint64_t x44, uint64_t x45 = mulx_u64(x17, 0xffffffffffffffffL);
- uint64_t x47, uint64_t x48 = mulx_u64(x17, 0xffffffffffffffffL);
- uint64_t x50, uint64_t x51 = mulx_u64(x17, 0x14bf);
- uint64_t x53, uint8_t x54 = addcarryx_u64(0x0, x42, x44);
- uint64_t x56, uint8_t x57 = addcarryx_u64(x54, x45, x47);
- uint64_t x59, uint8_t x60 = addcarryx_u64(x57, x48, x50);
- uint64_t x62, uint8_t _ = addcarryx_u64(0x0, x60, x51);
- uint64_t _, uint8_t x66 = addcarryx_u64(0x0, x17, x41);
- uint64_t x68, uint8_t x69 = addcarryx_u64(x66, x29, x53);
- uint64_t x71, uint8_t x72 = addcarryx_u64(x69, x32, x56);
- uint64_t x74, uint8_t x75 = addcarryx_u64(x72, x35, x59);
- uint64_t x77, uint8_t x78 = addcarryx_u64(x75, x38, x62);
- uint64_t x80, uint64_t x81 = mulx_u64(x7, x11);
- uint64_t x83, uint64_t x84 = mulx_u64(x7, x13);
- uint64_t x86, uint64_t x87 = mulx_u64(x7, x15);
- uint64_t x89, uint64_t x90 = mulx_u64(x7, x14);
- uint64_t x92, uint8_t x93 = addcarryx_u64(0x0, x81, x83);
- uint64_t x95, uint8_t x96 = addcarryx_u64(x93, x84, x86);
- uint64_t x98, uint8_t x99 = addcarryx_u64(x96, x87, x89);
- uint64_t x101, uint8_t _ = addcarryx_u64(0x0, x99, x90);
- uint64_t x104, uint8_t x105 = addcarryx_u64(0x0, x68, x80);
- uint64_t x107, uint8_t x108 = addcarryx_u64(x105, x71, x92);
- uint64_t x110, uint8_t x111 = addcarryx_u64(x108, x74, x95);
- uint64_t x113, uint8_t x114 = addcarryx_u64(x111, x77, x98);
- uint64_t x116, uint8_t x117 = addcarryx_u64(x114, x78, x101);
- uint64_t x119, uint64_t x120 = mulx_u64(x104, 0xffffffffffffffffL);
- uint64_t x122, uint64_t x123 = mulx_u64(x104, 0xffffffffffffffffL);
- uint64_t x125, uint64_t x126 = mulx_u64(x104, 0xffffffffffffffffL);
- uint64_t x128, uint64_t x129 = mulx_u64(x104, 0x14bf);
- uint64_t x131, uint8_t x132 = addcarryx_u64(0x0, x120, x122);
- uint64_t x134, uint8_t x135 = addcarryx_u64(x132, x123, x125);
- uint64_t x137, uint8_t x138 = addcarryx_u64(x135, x126, x128);
- uint64_t x140, uint8_t _ = addcarryx_u64(0x0, x138, x129);
- uint64_t _, uint8_t x144 = addcarryx_u64(0x0, x104, x119);
- uint64_t x146, uint8_t x147 = addcarryx_u64(x144, x107, x131);
- uint64_t x149, uint8_t x150 = addcarryx_u64(x147, x110, x134);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x113, x137);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x116, x140);
- uint8_t x157 = (x156 + x117);
- uint64_t x159, uint64_t x160 = mulx_u64(x9, x11);
- uint64_t x162, uint64_t x163 = mulx_u64(x9, x13);
- uint64_t x165, uint64_t x166 = mulx_u64(x9, x15);
- uint64_t x168, uint64_t x169 = mulx_u64(x9, x14);
- uint64_t x171, uint8_t x172 = addcarryx_u64(0x0, x160, x162);
- uint64_t x174, uint8_t x175 = addcarryx_u64(x172, x163, x165);
- uint64_t x177, uint8_t x178 = addcarryx_u64(x175, x166, x168);
- uint64_t x180, uint8_t _ = addcarryx_u64(0x0, x178, x169);
- uint64_t x183, uint8_t x184 = addcarryx_u64(0x0, x146, x159);
- uint64_t x186, uint8_t x187 = addcarryx_u64(x184, x149, x171);
- uint64_t x189, uint8_t x190 = addcarryx_u64(x187, x152, x174);
- uint64_t x192, uint8_t x193 = addcarryx_u64(x190, x155, x177);
- uint64_t x195, uint8_t x196 = addcarryx_u64(x193, x157, x180);
- uint64_t x198, uint64_t x199 = mulx_u64(x183, 0xffffffffffffffffL);
- uint64_t x201, uint64_t x202 = mulx_u64(x183, 0xffffffffffffffffL);
- uint64_t x204, uint64_t x205 = mulx_u64(x183, 0xffffffffffffffffL);
- uint64_t x207, uint64_t x208 = mulx_u64(x183, 0x14bf);
- uint64_t x210, uint8_t x211 = addcarryx_u64(0x0, x199, x201);
- uint64_t x213, uint8_t x214 = addcarryx_u64(x211, x202, x204);
- uint64_t x216, uint8_t x217 = addcarryx_u64(x214, x205, x207);
- uint64_t x219, uint8_t _ = addcarryx_u64(0x0, x217, x208);
- uint64_t _, uint8_t x223 = addcarryx_u64(0x0, x183, x198);
- uint64_t x225, uint8_t x226 = addcarryx_u64(x223, x186, x210);
- uint64_t x228, uint8_t x229 = addcarryx_u64(x226, x189, x213);
- uint64_t x231, uint8_t x232 = addcarryx_u64(x229, x192, x216);
- uint64_t x234, uint8_t x235 = addcarryx_u64(x232, x195, x219);
- uint8_t x236 = (x235 + x196);
- uint64_t x238, uint64_t x239 = mulx_u64(x8, x11);
- uint64_t x241, uint64_t x242 = mulx_u64(x8, x13);
- uint64_t x244, uint64_t x245 = mulx_u64(x8, x15);
- uint64_t x247, uint64_t x248 = mulx_u64(x8, x14);
- uint64_t x250, uint8_t x251 = addcarryx_u64(0x0, x239, x241);
- uint64_t x253, uint8_t x254 = addcarryx_u64(x251, x242, x244);
- uint64_t x256, uint8_t x257 = addcarryx_u64(x254, x245, x247);
- uint64_t x259, uint8_t _ = addcarryx_u64(0x0, x257, x248);
- uint64_t x262, uint8_t x263 = addcarryx_u64(0x0, x225, x238);
- uint64_t x265, uint8_t x266 = addcarryx_u64(x263, x228, x250);
- uint64_t x268, uint8_t x269 = addcarryx_u64(x266, x231, x253);
- uint64_t x271, uint8_t x272 = addcarryx_u64(x269, x234, x256);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x236, x259);
- uint64_t x277, uint64_t x278 = mulx_u64(x262, 0xffffffffffffffffL);
- uint64_t x280, uint64_t x281 = mulx_u64(x262, 0xffffffffffffffffL);
- uint64_t x283, uint64_t x284 = mulx_u64(x262, 0xffffffffffffffffL);
- uint64_t x286, uint64_t x287 = mulx_u64(x262, 0x14bf);
- uint64_t x289, uint8_t x290 = addcarryx_u64(0x0, x278, x280);
- uint64_t x292, uint8_t x293 = addcarryx_u64(x290, x281, x283);
- uint64_t x295, uint8_t x296 = addcarryx_u64(x293, x284, x286);
- uint64_t x298, uint8_t _ = addcarryx_u64(0x0, x296, x287);
- uint64_t _, uint8_t x302 = addcarryx_u64(0x0, x262, x277);
- uint64_t x304, uint8_t x305 = addcarryx_u64(x302, x265, x289);
- uint64_t x307, uint8_t x308 = addcarryx_u64(x305, x268, x292);
- uint64_t x310, uint8_t x311 = addcarryx_u64(x308, x271, x295);
- uint64_t x313, uint8_t x314 = addcarryx_u64(x311, x274, x298);
- uint8_t x315 = (x314 + x275);
- uint64_t x317, uint8_t x318 = subborrow_u64(0x0, x304, 0xffffffffffffffffL);
- uint64_t x320, uint8_t x321 = subborrow_u64(x318, x307, 0xffffffffffffffffL);
- uint64_t x323, uint8_t x324 = subborrow_u64(x321, x310, 0xffffffffffffffffL);
- uint64_t x326, uint8_t x327 = subborrow_u64(x324, x313, 0x14bf);
- uint64_t _, uint8_t x330 = subborrow_u64(x327, x315, 0x0);
- uint64_t x331 = cmovznz64(x330, x326, x313);
- uint64_t x332 = cmovznz64(x330, x323, x310);
- uint64_t x333 = cmovznz64(x330, x320, x307);
- uint64_t x334 = cmovznz64(x330, x317, x304);
- return (x331, x332, x333, x334))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/femulDisplay.v b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/femulDisplay.v
deleted file mode 100644
index 81cb9de27..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e205m45x2e198m1_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fenz.c b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fenz.c
deleted file mode 100644
index 7541094ff..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x7 = (x6 | x5);
- { uint64_t x8 = (x4 | x7);
- { uint64_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fenz.v b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fenz.v
deleted file mode 100644
index c4a3d1b8f..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e205m45x2e198m1_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fenzDisplay.log b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fenzDisplay.v b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fenzDisplay.v
deleted file mode 100644
index 695e0c41a..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e205m45x2e198m1_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feopp.c b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feopp.c
deleted file mode 100644
index 0f3e0e288..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feopp.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feopp(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8; uint8_t x9 = _subborrow_u64(0x0, 0x0, x2, &x8);
- { uint64_t x11; uint8_t x12 = _subborrow_u64(x9, 0x0, x4, &x11);
- { uint64_t x14; uint8_t x15 = _subborrow_u64(x12, 0x0, x6, &x14);
- { uint64_t x17; uint8_t x18 = _subborrow_u64(x15, 0x0, x5, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xffffffffffffffffL);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x8, x20, &x22);
- { uint64_t x24 = (x19 & 0xffffffffffffffffL);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x23, x11, x24, &x26);
- { uint64_t x28 = (x19 & 0xffffffffffffffffL);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x27, x14, x28, &x30);
- { uint64_t x32 = (x19 & 0x14bf);
- { uint64_t x34; uint8_t _ = _addcarryx_u64(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feopp.v b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feopp.v
deleted file mode 100644
index 3c2768abb..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e205m45x2e198m1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feoppDisplay.log b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feoppDisplay.log
deleted file mode 100644
index 1d4dfdaf4..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xffffffffffffffffL);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffffffffffffffL);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x28 = (x19 & 0xffffffffffffffffL);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x27, x14, x28);
- uint64_t x32 = (x19 & 0x14bf);
- uint64_t x34, uint8_t _ = addcarryx_u64(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feoppDisplay.v b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feoppDisplay.v
deleted file mode 100644
index 340969cfe..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e205m45x2e198m1_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fesquare.c b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fesub.c b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fesub.c
deleted file mode 100644
index 8a803be34..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fesub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _subborrow_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _subborrow_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _subborrow_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u64(x24, x8, x14, &x26);
- { uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- { uint64_t x29 = (x28 & 0xffffffffffffffffL);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(0x0, x17, x29, &x31);
- { uint64_t x33 = (x28 & 0xffffffffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x20, x33, &x35);
- { uint64_t x37 = (x28 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x23, x37, &x39);
- { uint64_t x41 = (x28 & 0x14bf);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x26, x41, &x43);
- out[0] = x31;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fesub.v b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fesub.v
deleted file mode 100644
index f77e07583..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e205m45x2e198m1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fesubDisplay.log b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fesubDisplay.log
deleted file mode 100644
index ea83e4737..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint64_t x29 = (x28 & 0xffffffffffffffffL);
- uint64_t x31, uint8_t x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x37 = (x28 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x23, x37);
- uint64_t x41 = (x28 & 0x14bf);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x26, x41);
- (Return x43, Return x39, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fesubDisplay.v b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fesubDisplay.v
deleted file mode 100644
index dd01cb919..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e205m45x2e198m1_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/py_interpreter.sh b/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/py_interpreter.sh
deleted file mode 100755
index 65ae1af0b..000000000
--- a/src/Specific/montgomery64_2e205m45x2e198m1_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**205 - 45*2**198 - 1' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e206m5_4limbs/CurveParameters.v b/src/Specific/montgomery64_2e206m5_4limbs/CurveParameters.v
deleted file mode 100644
index b96f6d0a6..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^206 - 5
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 64;
- bitwidth := 64;
- s := 2^206;
- c := [(1, 5)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e206m5_4limbs/Synthesis.v b/src/Specific/montgomery64_2e206m5_4limbs/Synthesis.v
deleted file mode 100644
index 2b2669eb6..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e206m5_4limbs.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/montgomery64_2e206m5_4limbs/compiler.sh b/src/Specific/montgomery64_2e206m5_4limbs/compiler.sh
deleted file mode 100755
index 5f7cd8e77..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<206) - 5' "$@"
diff --git a/src/Specific/montgomery64_2e206m5_4limbs/compilerxx.sh b/src/Specific/montgomery64_2e206m5_4limbs/compilerxx.sh
deleted file mode 100755
index 7f847b2ad..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<206) - 5' "$@"
diff --git a/src/Specific/montgomery64_2e206m5_4limbs/feadd.c b/src/Specific/montgomery64_2e206m5_4limbs/feadd.c
deleted file mode 100644
index bf6500712..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _addcarryx_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _addcarryx_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x24, x8, x14, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u64(0x0, x17, 0xfffffffffffffffbL, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u64(x30, x20, 0xffffffffffffffffL, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u64(x33, x23, 0xffffffffffffffffL, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u64(x36, x26, 0x3fff, &x38);
- { uint64_t _; uint8_t x42 = _subborrow_u64(x39, x27, 0x0, &_);
- { uint64_t x43 = cmovznz64(x42, x38, x26);
- { uint64_t x44 = cmovznz64(x42, x35, x23);
- { uint64_t x45 = cmovznz64(x42, x32, x20);
- { uint64_t x46 = cmovznz64(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e206m5_4limbs/feadd.v b/src/Specific/montgomery64_2e206m5_4limbs/feadd.v
deleted file mode 100644
index 863728097..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e206m5_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e206m5_4limbs/feaddDisplay.log b/src/Specific/montgomery64_2e206m5_4limbs/feaddDisplay.log
deleted file mode 100644
index b639a1e26..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t x30 = subborrow_u64(0x0, x17, 0xfffffffffffffffbL);
- uint64_t x32, uint8_t x33 = subborrow_u64(x30, x20, 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = subborrow_u64(x33, x23, 0xffffffffffffffffL);
- uint64_t x38, uint8_t x39 = subborrow_u64(x36, x26, 0x3fff);
- uint64_t _, uint8_t x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e206m5_4limbs/feaddDisplay.v b/src/Specific/montgomery64_2e206m5_4limbs/feaddDisplay.v
deleted file mode 100644
index 2b0d45f81..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e206m5_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e206m5_4limbs/femul.c b/src/Specific/montgomery64_2e206m5_4limbs/femul.c
deleted file mode 100644
index 63fd232b1..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/femul.c
+++ /dev/null
@@ -1,130 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x18; uint64_t x17 = _mulx_u64(x5, x11, &x18);
- { uint64_t x21; uint64_t x20 = _mulx_u64(x5, x13, &x21);
- { uint64_t x24; uint64_t x23 = _mulx_u64(x5, x15, &x24);
- { uint64_t x27; uint64_t x26 = _mulx_u64(x5, x14, &x27);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x18, x20, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x21, x23, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x24, x26, &x35);
- { uint64_t x38; uint8_t _ = _addcarryx_u64(0x0, x36, x27, &x38);
- { uint64_t _; uint64_t x41 = _mulx_u64(x17, 0xcccccccccccccccdL, &_);
- { uint64_t x45; uint64_t x44 = _mulx_u64(x41, 0xfffffffffffffffbL, &x45);
- { uint64_t x48; uint64_t x47 = _mulx_u64(x41, 0xffffffffffffffffL, &x48);
- { uint64_t x51; uint64_t x50 = _mulx_u64(x41, 0xffffffffffffffffL, &x51);
- { uint64_t x54; uint64_t x53 = _mulx_u64(x41, 0x3fff, &x54);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(0x0, x45, x47, &x56);
- { uint64_t x59; uint8_t x60 = _addcarryx_u64(x57, x48, x50, &x59);
- { uint64_t x62; uint8_t x63 = _addcarryx_u64(x60, x51, x53, &x62);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(0x0, x63, x54, &x65);
- { uint64_t _; uint8_t x69 = _addcarryx_u64(0x0, x17, x44, &_);
- { uint64_t x71; uint8_t x72 = _addcarryx_u64(x69, x29, x56, &x71);
- { uint64_t x74; uint8_t x75 = _addcarryx_u64(x72, x32, x59, &x74);
- { uint64_t x77; uint8_t x78 = _addcarryx_u64(x75, x35, x62, &x77);
- { uint64_t x80; uint8_t x81 = _addcarryx_u64(x78, x38, x65, &x80);
- { uint64_t x84; uint64_t x83 = _mulx_u64(x7, x11, &x84);
- { uint64_t x87; uint64_t x86 = _mulx_u64(x7, x13, &x87);
- { uint64_t x90; uint64_t x89 = _mulx_u64(x7, x15, &x90);
- { uint64_t x93; uint64_t x92 = _mulx_u64(x7, x14, &x93);
- { uint64_t x95; uint8_t x96 = _addcarryx_u64(0x0, x84, x86, &x95);
- { uint64_t x98; uint8_t x99 = _addcarryx_u64(x96, x87, x89, &x98);
- { uint64_t x101; uint8_t x102 = _addcarryx_u64(x99, x90, x92, &x101);
- { uint64_t x104; uint8_t _ = _addcarryx_u64(0x0, x102, x93, &x104);
- { uint64_t x107; uint8_t x108 = _addcarryx_u64(0x0, x71, x83, &x107);
- { uint64_t x110; uint8_t x111 = _addcarryx_u64(x108, x74, x95, &x110);
- { uint64_t x113; uint8_t x114 = _addcarryx_u64(x111, x77, x98, &x113);
- { uint64_t x116; uint8_t x117 = _addcarryx_u64(x114, x80, x101, &x116);
- { uint64_t x119; uint8_t x120 = _addcarryx_u64(x117, x81, x104, &x119);
- { uint64_t _; uint64_t x122 = _mulx_u64(x107, 0xcccccccccccccccdL, &_);
- { uint64_t x126; uint64_t x125 = _mulx_u64(x122, 0xfffffffffffffffbL, &x126);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x122, 0xffffffffffffffffL, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x122, 0xffffffffffffffffL, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x122, 0x3fff, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x126, x128, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x129, x131, &x140);
- { uint64_t x143; uint8_t x144 = _addcarryx_u64(x141, x132, x134, &x143);
- { uint64_t x146; uint8_t _ = _addcarryx_u64(0x0, x144, x135, &x146);
- { uint64_t _; uint8_t x150 = _addcarryx_u64(0x0, x107, x125, &_);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x110, x137, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x113, x140, &x155);
- { uint64_t x158; uint8_t x159 = _addcarryx_u64(x156, x116, x143, &x158);
- { uint64_t x161; uint8_t x162 = _addcarryx_u64(x159, x119, x146, &x161);
- { uint8_t x163 = (x162 + x120);
- { uint64_t x166; uint64_t x165 = _mulx_u64(x9, x11, &x166);
- { uint64_t x169; uint64_t x168 = _mulx_u64(x9, x13, &x169);
- { uint64_t x172; uint64_t x171 = _mulx_u64(x9, x15, &x172);
- { uint64_t x175; uint64_t x174 = _mulx_u64(x9, x14, &x175);
- { uint64_t x177; uint8_t x178 = _addcarryx_u64(0x0, x166, x168, &x177);
- { uint64_t x180; uint8_t x181 = _addcarryx_u64(x178, x169, x171, &x180);
- { uint64_t x183; uint8_t x184 = _addcarryx_u64(x181, x172, x174, &x183);
- { uint64_t x186; uint8_t _ = _addcarryx_u64(0x0, x184, x175, &x186);
- { uint64_t x189; uint8_t x190 = _addcarryx_u64(0x0, x152, x165, &x189);
- { uint64_t x192; uint8_t x193 = _addcarryx_u64(x190, x155, x177, &x192);
- { uint64_t x195; uint8_t x196 = _addcarryx_u64(x193, x158, x180, &x195);
- { uint64_t x198; uint8_t x199 = _addcarryx_u64(x196, x161, x183, &x198);
- { uint64_t x201; uint8_t x202 = _addcarryx_u64(x199, x163, x186, &x201);
- { uint64_t _; uint64_t x204 = _mulx_u64(x189, 0xcccccccccccccccdL, &_);
- { uint64_t x208; uint64_t x207 = _mulx_u64(x204, 0xfffffffffffffffbL, &x208);
- { uint64_t x211; uint64_t x210 = _mulx_u64(x204, 0xffffffffffffffffL, &x211);
- { uint64_t x214; uint64_t x213 = _mulx_u64(x204, 0xffffffffffffffffL, &x214);
- { uint64_t x217; uint64_t x216 = _mulx_u64(x204, 0x3fff, &x217);
- { uint64_t x219; uint8_t x220 = _addcarryx_u64(0x0, x208, x210, &x219);
- { uint64_t x222; uint8_t x223 = _addcarryx_u64(x220, x211, x213, &x222);
- { uint64_t x225; uint8_t x226 = _addcarryx_u64(x223, x214, x216, &x225);
- { uint64_t x228; uint8_t _ = _addcarryx_u64(0x0, x226, x217, &x228);
- { uint64_t _; uint8_t x232 = _addcarryx_u64(0x0, x189, x207, &_);
- { uint64_t x234; uint8_t x235 = _addcarryx_u64(x232, x192, x219, &x234);
- { uint64_t x237; uint8_t x238 = _addcarryx_u64(x235, x195, x222, &x237);
- { uint64_t x240; uint8_t x241 = _addcarryx_u64(x238, x198, x225, &x240);
- { uint64_t x243; uint8_t x244 = _addcarryx_u64(x241, x201, x228, &x243);
- { uint8_t x245 = (x244 + x202);
- { uint64_t x248; uint64_t x247 = _mulx_u64(x8, x11, &x248);
- { uint64_t x251; uint64_t x250 = _mulx_u64(x8, x13, &x251);
- { uint64_t x254; uint64_t x253 = _mulx_u64(x8, x15, &x254);
- { uint64_t x257; uint64_t x256 = _mulx_u64(x8, x14, &x257);
- { uint64_t x259; uint8_t x260 = _addcarryx_u64(0x0, x248, x250, &x259);
- { uint64_t x262; uint8_t x263 = _addcarryx_u64(x260, x251, x253, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(x263, x254, x256, &x265);
- { uint64_t x268; uint8_t _ = _addcarryx_u64(0x0, x266, x257, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(0x0, x234, x247, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x237, x259, &x274);
- { uint64_t x277; uint8_t x278 = _addcarryx_u64(x275, x240, x262, &x277);
- { uint64_t x280; uint8_t x281 = _addcarryx_u64(x278, x243, x265, &x280);
- { uint64_t x283; uint8_t x284 = _addcarryx_u64(x281, x245, x268, &x283);
- { uint64_t _; uint64_t x286 = _mulx_u64(x271, 0xcccccccccccccccdL, &_);
- { uint64_t x290; uint64_t x289 = _mulx_u64(x286, 0xfffffffffffffffbL, &x290);
- { uint64_t x293; uint64_t x292 = _mulx_u64(x286, 0xffffffffffffffffL, &x293);
- { uint64_t x296; uint64_t x295 = _mulx_u64(x286, 0xffffffffffffffffL, &x296);
- { uint64_t x299; uint64_t x298 = _mulx_u64(x286, 0x3fff, &x299);
- { uint64_t x301; uint8_t x302 = _addcarryx_u64(0x0, x290, x292, &x301);
- { uint64_t x304; uint8_t x305 = _addcarryx_u64(x302, x293, x295, &x304);
- { uint64_t x307; uint8_t x308 = _addcarryx_u64(x305, x296, x298, &x307);
- { uint64_t x310; uint8_t _ = _addcarryx_u64(0x0, x308, x299, &x310);
- { uint64_t _; uint8_t x314 = _addcarryx_u64(0x0, x271, x289, &_);
- { uint64_t x316; uint8_t x317 = _addcarryx_u64(x314, x274, x301, &x316);
- { uint64_t x319; uint8_t x320 = _addcarryx_u64(x317, x277, x304, &x319);
- { uint64_t x322; uint8_t x323 = _addcarryx_u64(x320, x280, x307, &x322);
- { uint64_t x325; uint8_t x326 = _addcarryx_u64(x323, x283, x310, &x325);
- { uint8_t x327 = (x326 + x284);
- { uint64_t x329; uint8_t x330 = _subborrow_u64(0x0, x316, 0xfffffffffffffffbL, &x329);
- { uint64_t x332; uint8_t x333 = _subborrow_u64(x330, x319, 0xffffffffffffffffL, &x332);
- { uint64_t x335; uint8_t x336 = _subborrow_u64(x333, x322, 0xffffffffffffffffL, &x335);
- { uint64_t x338; uint8_t x339 = _subborrow_u64(x336, x325, 0x3fff, &x338);
- { uint64_t _; uint8_t x342 = _subborrow_u64(x339, x327, 0x0, &_);
- { uint64_t x343 = cmovznz64(x342, x338, x325);
- { uint64_t x344 = cmovznz64(x342, x335, x322);
- { uint64_t x345 = cmovznz64(x342, x332, x319);
- { uint64_t x346 = cmovznz64(x342, x329, x316);
- out[0] = x346;
- out[1] = x345;
- out[2] = x344;
- out[3] = x343;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e206m5_4limbs/femul.v b/src/Specific/montgomery64_2e206m5_4limbs/femul.v
deleted file mode 100644
index 8ceef20c4..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e206m5_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e206m5_4limbs/femulDisplay.log b/src/Specific/montgomery64_2e206m5_4limbs/femulDisplay.log
deleted file mode 100644
index 597866bef..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,122 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t _ = mulx_u64(x17, 0xcccccccccccccccdL);
- uint64_t x44, uint64_t x45 = mulx_u64(x41, 0xfffffffffffffffbL);
- uint64_t x47, uint64_t x48 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x50, uint64_t x51 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x53, uint64_t x54 = mulx_u64(x41, 0x3fff);
- uint64_t x56, uint8_t x57 = addcarryx_u64(0x0, x45, x47);
- uint64_t x59, uint8_t x60 = addcarryx_u64(x57, x48, x50);
- uint64_t x62, uint8_t x63 = addcarryx_u64(x60, x51, x53);
- uint64_t x65, uint8_t _ = addcarryx_u64(0x0, x63, x54);
- uint64_t _, uint8_t x69 = addcarryx_u64(0x0, x17, x44);
- uint64_t x71, uint8_t x72 = addcarryx_u64(x69, x29, x56);
- uint64_t x74, uint8_t x75 = addcarryx_u64(x72, x32, x59);
- uint64_t x77, uint8_t x78 = addcarryx_u64(x75, x35, x62);
- uint64_t x80, uint8_t x81 = addcarryx_u64(x78, x38, x65);
- uint64_t x83, uint64_t x84 = mulx_u64(x7, x11);
- uint64_t x86, uint64_t x87 = mulx_u64(x7, x13);
- uint64_t x89, uint64_t x90 = mulx_u64(x7, x15);
- uint64_t x92, uint64_t x93 = mulx_u64(x7, x14);
- uint64_t x95, uint8_t x96 = addcarryx_u64(0x0, x84, x86);
- uint64_t x98, uint8_t x99 = addcarryx_u64(x96, x87, x89);
- uint64_t x101, uint8_t x102 = addcarryx_u64(x99, x90, x92);
- uint64_t x104, uint8_t _ = addcarryx_u64(0x0, x102, x93);
- uint64_t x107, uint8_t x108 = addcarryx_u64(0x0, x71, x83);
- uint64_t x110, uint8_t x111 = addcarryx_u64(x108, x74, x95);
- uint64_t x113, uint8_t x114 = addcarryx_u64(x111, x77, x98);
- uint64_t x116, uint8_t x117 = addcarryx_u64(x114, x80, x101);
- uint64_t x119, uint8_t x120 = addcarryx_u64(x117, x81, x104);
- uint64_t x122, uint64_t _ = mulx_u64(x107, 0xcccccccccccccccdL);
- uint64_t x125, uint64_t x126 = mulx_u64(x122, 0xfffffffffffffffbL);
- uint64_t x128, uint64_t x129 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x131, uint64_t x132 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x134, uint64_t x135 = mulx_u64(x122, 0x3fff);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x126, x128);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x129, x131);
- uint64_t x143, uint8_t x144 = addcarryx_u64(x141, x132, x134);
- uint64_t x146, uint8_t _ = addcarryx_u64(0x0, x144, x135);
- uint64_t _, uint8_t x150 = addcarryx_u64(0x0, x107, x125);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x110, x137);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x113, x140);
- uint64_t x158, uint8_t x159 = addcarryx_u64(x156, x116, x143);
- uint64_t x161, uint8_t x162 = addcarryx_u64(x159, x119, x146);
- uint8_t x163 = (x162 + x120);
- uint64_t x165, uint64_t x166 = mulx_u64(x9, x11);
- uint64_t x168, uint64_t x169 = mulx_u64(x9, x13);
- uint64_t x171, uint64_t x172 = mulx_u64(x9, x15);
- uint64_t x174, uint64_t x175 = mulx_u64(x9, x14);
- uint64_t x177, uint8_t x178 = addcarryx_u64(0x0, x166, x168);
- uint64_t x180, uint8_t x181 = addcarryx_u64(x178, x169, x171);
- uint64_t x183, uint8_t x184 = addcarryx_u64(x181, x172, x174);
- uint64_t x186, uint8_t _ = addcarryx_u64(0x0, x184, x175);
- uint64_t x189, uint8_t x190 = addcarryx_u64(0x0, x152, x165);
- uint64_t x192, uint8_t x193 = addcarryx_u64(x190, x155, x177);
- uint64_t x195, uint8_t x196 = addcarryx_u64(x193, x158, x180);
- uint64_t x198, uint8_t x199 = addcarryx_u64(x196, x161, x183);
- uint64_t x201, uint8_t x202 = addcarryx_u64(x199, x163, x186);
- uint64_t x204, uint64_t _ = mulx_u64(x189, 0xcccccccccccccccdL);
- uint64_t x207, uint64_t x208 = mulx_u64(x204, 0xfffffffffffffffbL);
- uint64_t x210, uint64_t x211 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x213, uint64_t x214 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x216, uint64_t x217 = mulx_u64(x204, 0x3fff);
- uint64_t x219, uint8_t x220 = addcarryx_u64(0x0, x208, x210);
- uint64_t x222, uint8_t x223 = addcarryx_u64(x220, x211, x213);
- uint64_t x225, uint8_t x226 = addcarryx_u64(x223, x214, x216);
- uint64_t x228, uint8_t _ = addcarryx_u64(0x0, x226, x217);
- uint64_t _, uint8_t x232 = addcarryx_u64(0x0, x189, x207);
- uint64_t x234, uint8_t x235 = addcarryx_u64(x232, x192, x219);
- uint64_t x237, uint8_t x238 = addcarryx_u64(x235, x195, x222);
- uint64_t x240, uint8_t x241 = addcarryx_u64(x238, x198, x225);
- uint64_t x243, uint8_t x244 = addcarryx_u64(x241, x201, x228);
- uint8_t x245 = (x244 + x202);
- uint64_t x247, uint64_t x248 = mulx_u64(x8, x11);
- uint64_t x250, uint64_t x251 = mulx_u64(x8, x13);
- uint64_t x253, uint64_t x254 = mulx_u64(x8, x15);
- uint64_t x256, uint64_t x257 = mulx_u64(x8, x14);
- uint64_t x259, uint8_t x260 = addcarryx_u64(0x0, x248, x250);
- uint64_t x262, uint8_t x263 = addcarryx_u64(x260, x251, x253);
- uint64_t x265, uint8_t x266 = addcarryx_u64(x263, x254, x256);
- uint64_t x268, uint8_t _ = addcarryx_u64(0x0, x266, x257);
- uint64_t x271, uint8_t x272 = addcarryx_u64(0x0, x234, x247);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x237, x259);
- uint64_t x277, uint8_t x278 = addcarryx_u64(x275, x240, x262);
- uint64_t x280, uint8_t x281 = addcarryx_u64(x278, x243, x265);
- uint64_t x283, uint8_t x284 = addcarryx_u64(x281, x245, x268);
- uint64_t x286, uint64_t _ = mulx_u64(x271, 0xcccccccccccccccdL);
- uint64_t x289, uint64_t x290 = mulx_u64(x286, 0xfffffffffffffffbL);
- uint64_t x292, uint64_t x293 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x295, uint64_t x296 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x298, uint64_t x299 = mulx_u64(x286, 0x3fff);
- uint64_t x301, uint8_t x302 = addcarryx_u64(0x0, x290, x292);
- uint64_t x304, uint8_t x305 = addcarryx_u64(x302, x293, x295);
- uint64_t x307, uint8_t x308 = addcarryx_u64(x305, x296, x298);
- uint64_t x310, uint8_t _ = addcarryx_u64(0x0, x308, x299);
- uint64_t _, uint8_t x314 = addcarryx_u64(0x0, x271, x289);
- uint64_t x316, uint8_t x317 = addcarryx_u64(x314, x274, x301);
- uint64_t x319, uint8_t x320 = addcarryx_u64(x317, x277, x304);
- uint64_t x322, uint8_t x323 = addcarryx_u64(x320, x280, x307);
- uint64_t x325, uint8_t x326 = addcarryx_u64(x323, x283, x310);
- uint8_t x327 = (x326 + x284);
- uint64_t x329, uint8_t x330 = subborrow_u64(0x0, x316, 0xfffffffffffffffbL);
- uint64_t x332, uint8_t x333 = subborrow_u64(x330, x319, 0xffffffffffffffffL);
- uint64_t x335, uint8_t x336 = subborrow_u64(x333, x322, 0xffffffffffffffffL);
- uint64_t x338, uint8_t x339 = subborrow_u64(x336, x325, 0x3fff);
- uint64_t _, uint8_t x342 = subborrow_u64(x339, x327, 0x0);
- uint64_t x343 = cmovznz64(x342, x338, x325);
- uint64_t x344 = cmovznz64(x342, x335, x322);
- uint64_t x345 = cmovznz64(x342, x332, x319);
- uint64_t x346 = cmovznz64(x342, x329, x316);
- return (x343, x344, x345, x346))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e206m5_4limbs/femulDisplay.v b/src/Specific/montgomery64_2e206m5_4limbs/femulDisplay.v
deleted file mode 100644
index 0c1e8f71c..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e206m5_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e206m5_4limbs/fenz.c b/src/Specific/montgomery64_2e206m5_4limbs/fenz.c
deleted file mode 100644
index 7541094ff..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x7 = (x6 | x5);
- { uint64_t x8 = (x4 | x7);
- { uint64_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e206m5_4limbs/fenz.v b/src/Specific/montgomery64_2e206m5_4limbs/fenz.v
deleted file mode 100644
index 29e13f108..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e206m5_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e206m5_4limbs/fenzDisplay.log b/src/Specific/montgomery64_2e206m5_4limbs/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e206m5_4limbs/fenzDisplay.v b/src/Specific/montgomery64_2e206m5_4limbs/fenzDisplay.v
deleted file mode 100644
index 239ba0e38..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e206m5_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e206m5_4limbs/feopp.c b/src/Specific/montgomery64_2e206m5_4limbs/feopp.c
deleted file mode 100644
index 14512cb65..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/feopp.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feopp(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8; uint8_t x9 = _subborrow_u64(0x0, 0x0, x2, &x8);
- { uint64_t x11; uint8_t x12 = _subborrow_u64(x9, 0x0, x4, &x11);
- { uint64_t x14; uint8_t x15 = _subborrow_u64(x12, 0x0, x6, &x14);
- { uint64_t x17; uint8_t x18 = _subborrow_u64(x15, 0x0, x5, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xfffffffffffffffbL);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x8, x20, &x22);
- { uint64_t x24 = (x19 & 0xffffffffffffffffL);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x23, x11, x24, &x26);
- { uint64_t x28 = (x19 & 0xffffffffffffffffL);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x27, x14, x28, &x30);
- { uint64_t x32 = (x19 & 0x3fff);
- { uint64_t x34; uint8_t _ = _addcarryx_u64(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e206m5_4limbs/feopp.v b/src/Specific/montgomery64_2e206m5_4limbs/feopp.v
deleted file mode 100644
index da531035a..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e206m5_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e206m5_4limbs/feoppDisplay.log b/src/Specific/montgomery64_2e206m5_4limbs/feoppDisplay.log
deleted file mode 100644
index 66766af29..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xfffffffffffffffbL);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffffffffffffffL);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x28 = (x19 & 0xffffffffffffffffL);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x27, x14, x28);
- uint64_t x32 = (x19 & 0x3fff);
- uint64_t x34, uint8_t _ = addcarryx_u64(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e206m5_4limbs/feoppDisplay.v b/src/Specific/montgomery64_2e206m5_4limbs/feoppDisplay.v
deleted file mode 100644
index c1cfbd778..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e206m5_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e206m5_4limbs/fesquare.c b/src/Specific/montgomery64_2e206m5_4limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e206m5_4limbs/fesub.c b/src/Specific/montgomery64_2e206m5_4limbs/fesub.c
deleted file mode 100644
index e8a81cfcb..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/fesub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _subborrow_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _subborrow_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _subborrow_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u64(x24, x8, x14, &x26);
- { uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- { uint64_t x29 = (x28 & 0xfffffffffffffffbL);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(0x0, x17, x29, &x31);
- { uint64_t x33 = (x28 & 0xffffffffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x20, x33, &x35);
- { uint64_t x37 = (x28 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x23, x37, &x39);
- { uint64_t x41 = (x28 & 0x3fff);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x26, x41, &x43);
- out[0] = x31;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e206m5_4limbs/fesub.v b/src/Specific/montgomery64_2e206m5_4limbs/fesub.v
deleted file mode 100644
index b8819bb15..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e206m5_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e206m5_4limbs/fesubDisplay.log b/src/Specific/montgomery64_2e206m5_4limbs/fesubDisplay.log
deleted file mode 100644
index c2474635a..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint64_t x29 = (x28 & 0xfffffffffffffffbL);
- uint64_t x31, uint8_t x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x37 = (x28 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x23, x37);
- uint64_t x41 = (x28 & 0x3fff);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x26, x41);
- (Return x43, Return x39, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e206m5_4limbs/fesubDisplay.v b/src/Specific/montgomery64_2e206m5_4limbs/fesubDisplay.v
deleted file mode 100644
index 8911c0480..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e206m5_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e206m5_4limbs/py_interpreter.sh b/src/Specific/montgomery64_2e206m5_4limbs/py_interpreter.sh
deleted file mode 100755
index 80e73f064..000000000
--- a/src/Specific/montgomery64_2e206m5_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**206 - 5' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e212m29_4limbs/CurveParameters.v b/src/Specific/montgomery64_2e212m29_4limbs/CurveParameters.v
deleted file mode 100644
index 569504adc..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^212 - 29
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 64;
- bitwidth := 64;
- s := 2^212;
- c := [(1, 29)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e212m29_4limbs/Synthesis.v b/src/Specific/montgomery64_2e212m29_4limbs/Synthesis.v
deleted file mode 100644
index 67eb0d836..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e212m29_4limbs.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/montgomery64_2e212m29_4limbs/compiler.sh b/src/Specific/montgomery64_2e212m29_4limbs/compiler.sh
deleted file mode 100755
index bf97b0512..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<212) - 29' "$@"
diff --git a/src/Specific/montgomery64_2e212m29_4limbs/compilerxx.sh b/src/Specific/montgomery64_2e212m29_4limbs/compilerxx.sh
deleted file mode 100755
index b027c34ea..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<212) - 29' "$@"
diff --git a/src/Specific/montgomery64_2e212m29_4limbs/feadd.c b/src/Specific/montgomery64_2e212m29_4limbs/feadd.c
deleted file mode 100644
index 849154657..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _addcarryx_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _addcarryx_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x24, x8, x14, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u64(0x0, x17, 0xffffffffffffffe3L, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u64(x30, x20, 0xffffffffffffffffL, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u64(x33, x23, 0xffffffffffffffffL, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u64(x36, x26, 0xfffff, &x38);
- { uint64_t _; uint8_t x42 = _subborrow_u64(x39, x27, 0x0, &_);
- { uint64_t x43 = cmovznz64(x42, x38, x26);
- { uint64_t x44 = cmovznz64(x42, x35, x23);
- { uint64_t x45 = cmovznz64(x42, x32, x20);
- { uint64_t x46 = cmovznz64(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e212m29_4limbs/feadd.v b/src/Specific/montgomery64_2e212m29_4limbs/feadd.v
deleted file mode 100644
index 52e77bb5e..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e212m29_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e212m29_4limbs/feaddDisplay.log b/src/Specific/montgomery64_2e212m29_4limbs/feaddDisplay.log
deleted file mode 100644
index 7d014a6a5..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t x30 = subborrow_u64(0x0, x17, 0xffffffffffffffe3L);
- uint64_t x32, uint8_t x33 = subborrow_u64(x30, x20, 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = subborrow_u64(x33, x23, 0xffffffffffffffffL);
- uint64_t x38, uint8_t x39 = subborrow_u64(x36, x26, 0xfffff);
- uint64_t _, uint8_t x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e212m29_4limbs/feaddDisplay.v b/src/Specific/montgomery64_2e212m29_4limbs/feaddDisplay.v
deleted file mode 100644
index 3901e8920..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e212m29_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e212m29_4limbs/femul.c b/src/Specific/montgomery64_2e212m29_4limbs/femul.c
deleted file mode 100644
index 1782985d0..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/femul.c
+++ /dev/null
@@ -1,130 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x18; uint64_t x17 = _mulx_u64(x5, x11, &x18);
- { uint64_t x21; uint64_t x20 = _mulx_u64(x5, x13, &x21);
- { uint64_t x24; uint64_t x23 = _mulx_u64(x5, x15, &x24);
- { uint64_t x27; uint64_t x26 = _mulx_u64(x5, x14, &x27);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x18, x20, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x21, x23, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x24, x26, &x35);
- { uint64_t x38; uint8_t _ = _addcarryx_u64(0x0, x36, x27, &x38);
- { uint64_t _; uint64_t x41 = _mulx_u64(x17, 0x34f72c234f72c235, &_);
- { uint64_t x45; uint64_t x44 = _mulx_u64(x41, 0xffffffffffffffe3L, &x45);
- { uint64_t x48; uint64_t x47 = _mulx_u64(x41, 0xffffffffffffffffL, &x48);
- { uint64_t x51; uint64_t x50 = _mulx_u64(x41, 0xffffffffffffffffL, &x51);
- { uint64_t x54; uint64_t x53 = _mulx_u64(x41, 0xfffff, &x54);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(0x0, x45, x47, &x56);
- { uint64_t x59; uint8_t x60 = _addcarryx_u64(x57, x48, x50, &x59);
- { uint64_t x62; uint8_t x63 = _addcarryx_u64(x60, x51, x53, &x62);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(0x0, x63, x54, &x65);
- { uint64_t _; uint8_t x69 = _addcarryx_u64(0x0, x17, x44, &_);
- { uint64_t x71; uint8_t x72 = _addcarryx_u64(x69, x29, x56, &x71);
- { uint64_t x74; uint8_t x75 = _addcarryx_u64(x72, x32, x59, &x74);
- { uint64_t x77; uint8_t x78 = _addcarryx_u64(x75, x35, x62, &x77);
- { uint64_t x80; uint8_t x81 = _addcarryx_u64(x78, x38, x65, &x80);
- { uint64_t x84; uint64_t x83 = _mulx_u64(x7, x11, &x84);
- { uint64_t x87; uint64_t x86 = _mulx_u64(x7, x13, &x87);
- { uint64_t x90; uint64_t x89 = _mulx_u64(x7, x15, &x90);
- { uint64_t x93; uint64_t x92 = _mulx_u64(x7, x14, &x93);
- { uint64_t x95; uint8_t x96 = _addcarryx_u64(0x0, x84, x86, &x95);
- { uint64_t x98; uint8_t x99 = _addcarryx_u64(x96, x87, x89, &x98);
- { uint64_t x101; uint8_t x102 = _addcarryx_u64(x99, x90, x92, &x101);
- { uint64_t x104; uint8_t _ = _addcarryx_u64(0x0, x102, x93, &x104);
- { uint64_t x107; uint8_t x108 = _addcarryx_u64(0x0, x71, x83, &x107);
- { uint64_t x110; uint8_t x111 = _addcarryx_u64(x108, x74, x95, &x110);
- { uint64_t x113; uint8_t x114 = _addcarryx_u64(x111, x77, x98, &x113);
- { uint64_t x116; uint8_t x117 = _addcarryx_u64(x114, x80, x101, &x116);
- { uint64_t x119; uint8_t x120 = _addcarryx_u64(x117, x81, x104, &x119);
- { uint64_t _; uint64_t x122 = _mulx_u64(x107, 0x34f72c234f72c235, &_);
- { uint64_t x126; uint64_t x125 = _mulx_u64(x122, 0xffffffffffffffe3L, &x126);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x122, 0xffffffffffffffffL, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x122, 0xffffffffffffffffL, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x122, 0xfffff, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x126, x128, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x129, x131, &x140);
- { uint64_t x143; uint8_t x144 = _addcarryx_u64(x141, x132, x134, &x143);
- { uint64_t x146; uint8_t _ = _addcarryx_u64(0x0, x144, x135, &x146);
- { uint64_t _; uint8_t x150 = _addcarryx_u64(0x0, x107, x125, &_);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x110, x137, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x113, x140, &x155);
- { uint64_t x158; uint8_t x159 = _addcarryx_u64(x156, x116, x143, &x158);
- { uint64_t x161; uint8_t x162 = _addcarryx_u64(x159, x119, x146, &x161);
- { uint8_t x163 = (x162 + x120);
- { uint64_t x166; uint64_t x165 = _mulx_u64(x9, x11, &x166);
- { uint64_t x169; uint64_t x168 = _mulx_u64(x9, x13, &x169);
- { uint64_t x172; uint64_t x171 = _mulx_u64(x9, x15, &x172);
- { uint64_t x175; uint64_t x174 = _mulx_u64(x9, x14, &x175);
- { uint64_t x177; uint8_t x178 = _addcarryx_u64(0x0, x166, x168, &x177);
- { uint64_t x180; uint8_t x181 = _addcarryx_u64(x178, x169, x171, &x180);
- { uint64_t x183; uint8_t x184 = _addcarryx_u64(x181, x172, x174, &x183);
- { uint64_t x186; uint8_t _ = _addcarryx_u64(0x0, x184, x175, &x186);
- { uint64_t x189; uint8_t x190 = _addcarryx_u64(0x0, x152, x165, &x189);
- { uint64_t x192; uint8_t x193 = _addcarryx_u64(x190, x155, x177, &x192);
- { uint64_t x195; uint8_t x196 = _addcarryx_u64(x193, x158, x180, &x195);
- { uint64_t x198; uint8_t x199 = _addcarryx_u64(x196, x161, x183, &x198);
- { uint64_t x201; uint8_t x202 = _addcarryx_u64(x199, x163, x186, &x201);
- { uint64_t _; uint64_t x204 = _mulx_u64(x189, 0x34f72c234f72c235, &_);
- { uint64_t x208; uint64_t x207 = _mulx_u64(x204, 0xffffffffffffffe3L, &x208);
- { uint64_t x211; uint64_t x210 = _mulx_u64(x204, 0xffffffffffffffffL, &x211);
- { uint64_t x214; uint64_t x213 = _mulx_u64(x204, 0xffffffffffffffffL, &x214);
- { uint64_t x217; uint64_t x216 = _mulx_u64(x204, 0xfffff, &x217);
- { uint64_t x219; uint8_t x220 = _addcarryx_u64(0x0, x208, x210, &x219);
- { uint64_t x222; uint8_t x223 = _addcarryx_u64(x220, x211, x213, &x222);
- { uint64_t x225; uint8_t x226 = _addcarryx_u64(x223, x214, x216, &x225);
- { uint64_t x228; uint8_t _ = _addcarryx_u64(0x0, x226, x217, &x228);
- { uint64_t _; uint8_t x232 = _addcarryx_u64(0x0, x189, x207, &_);
- { uint64_t x234; uint8_t x235 = _addcarryx_u64(x232, x192, x219, &x234);
- { uint64_t x237; uint8_t x238 = _addcarryx_u64(x235, x195, x222, &x237);
- { uint64_t x240; uint8_t x241 = _addcarryx_u64(x238, x198, x225, &x240);
- { uint64_t x243; uint8_t x244 = _addcarryx_u64(x241, x201, x228, &x243);
- { uint8_t x245 = (x244 + x202);
- { uint64_t x248; uint64_t x247 = _mulx_u64(x8, x11, &x248);
- { uint64_t x251; uint64_t x250 = _mulx_u64(x8, x13, &x251);
- { uint64_t x254; uint64_t x253 = _mulx_u64(x8, x15, &x254);
- { uint64_t x257; uint64_t x256 = _mulx_u64(x8, x14, &x257);
- { uint64_t x259; uint8_t x260 = _addcarryx_u64(0x0, x248, x250, &x259);
- { uint64_t x262; uint8_t x263 = _addcarryx_u64(x260, x251, x253, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(x263, x254, x256, &x265);
- { uint64_t x268; uint8_t _ = _addcarryx_u64(0x0, x266, x257, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(0x0, x234, x247, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x237, x259, &x274);
- { uint64_t x277; uint8_t x278 = _addcarryx_u64(x275, x240, x262, &x277);
- { uint64_t x280; uint8_t x281 = _addcarryx_u64(x278, x243, x265, &x280);
- { uint64_t x283; uint8_t x284 = _addcarryx_u64(x281, x245, x268, &x283);
- { uint64_t _; uint64_t x286 = _mulx_u64(x271, 0x34f72c234f72c235, &_);
- { uint64_t x290; uint64_t x289 = _mulx_u64(x286, 0xffffffffffffffe3L, &x290);
- { uint64_t x293; uint64_t x292 = _mulx_u64(x286, 0xffffffffffffffffL, &x293);
- { uint64_t x296; uint64_t x295 = _mulx_u64(x286, 0xffffffffffffffffL, &x296);
- { uint64_t x299; uint64_t x298 = _mulx_u64(x286, 0xfffff, &x299);
- { uint64_t x301; uint8_t x302 = _addcarryx_u64(0x0, x290, x292, &x301);
- { uint64_t x304; uint8_t x305 = _addcarryx_u64(x302, x293, x295, &x304);
- { uint64_t x307; uint8_t x308 = _addcarryx_u64(x305, x296, x298, &x307);
- { uint64_t x310; uint8_t _ = _addcarryx_u64(0x0, x308, x299, &x310);
- { uint64_t _; uint8_t x314 = _addcarryx_u64(0x0, x271, x289, &_);
- { uint64_t x316; uint8_t x317 = _addcarryx_u64(x314, x274, x301, &x316);
- { uint64_t x319; uint8_t x320 = _addcarryx_u64(x317, x277, x304, &x319);
- { uint64_t x322; uint8_t x323 = _addcarryx_u64(x320, x280, x307, &x322);
- { uint64_t x325; uint8_t x326 = _addcarryx_u64(x323, x283, x310, &x325);
- { uint8_t x327 = (x326 + x284);
- { uint64_t x329; uint8_t x330 = _subborrow_u64(0x0, x316, 0xffffffffffffffe3L, &x329);
- { uint64_t x332; uint8_t x333 = _subborrow_u64(x330, x319, 0xffffffffffffffffL, &x332);
- { uint64_t x335; uint8_t x336 = _subborrow_u64(x333, x322, 0xffffffffffffffffL, &x335);
- { uint64_t x338; uint8_t x339 = _subborrow_u64(x336, x325, 0xfffff, &x338);
- { uint64_t _; uint8_t x342 = _subborrow_u64(x339, x327, 0x0, &_);
- { uint64_t x343 = cmovznz64(x342, x338, x325);
- { uint64_t x344 = cmovznz64(x342, x335, x322);
- { uint64_t x345 = cmovznz64(x342, x332, x319);
- { uint64_t x346 = cmovznz64(x342, x329, x316);
- out[0] = x346;
- out[1] = x345;
- out[2] = x344;
- out[3] = x343;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e212m29_4limbs/femul.v b/src/Specific/montgomery64_2e212m29_4limbs/femul.v
deleted file mode 100644
index 3e84d080d..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e212m29_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e212m29_4limbs/femulDisplay.log b/src/Specific/montgomery64_2e212m29_4limbs/femulDisplay.log
deleted file mode 100644
index 98e14dbdc..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,122 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t _ = mulx_u64(x17, 0x34f72c234f72c235);
- uint64_t x44, uint64_t x45 = mulx_u64(x41, 0xffffffffffffffe3L);
- uint64_t x47, uint64_t x48 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x50, uint64_t x51 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x53, uint64_t x54 = mulx_u64(x41, 0xfffff);
- uint64_t x56, uint8_t x57 = addcarryx_u64(0x0, x45, x47);
- uint64_t x59, uint8_t x60 = addcarryx_u64(x57, x48, x50);
- uint64_t x62, uint8_t x63 = addcarryx_u64(x60, x51, x53);
- uint64_t x65, uint8_t _ = addcarryx_u64(0x0, x63, x54);
- uint64_t _, uint8_t x69 = addcarryx_u64(0x0, x17, x44);
- uint64_t x71, uint8_t x72 = addcarryx_u64(x69, x29, x56);
- uint64_t x74, uint8_t x75 = addcarryx_u64(x72, x32, x59);
- uint64_t x77, uint8_t x78 = addcarryx_u64(x75, x35, x62);
- uint64_t x80, uint8_t x81 = addcarryx_u64(x78, x38, x65);
- uint64_t x83, uint64_t x84 = mulx_u64(x7, x11);
- uint64_t x86, uint64_t x87 = mulx_u64(x7, x13);
- uint64_t x89, uint64_t x90 = mulx_u64(x7, x15);
- uint64_t x92, uint64_t x93 = mulx_u64(x7, x14);
- uint64_t x95, uint8_t x96 = addcarryx_u64(0x0, x84, x86);
- uint64_t x98, uint8_t x99 = addcarryx_u64(x96, x87, x89);
- uint64_t x101, uint8_t x102 = addcarryx_u64(x99, x90, x92);
- uint64_t x104, uint8_t _ = addcarryx_u64(0x0, x102, x93);
- uint64_t x107, uint8_t x108 = addcarryx_u64(0x0, x71, x83);
- uint64_t x110, uint8_t x111 = addcarryx_u64(x108, x74, x95);
- uint64_t x113, uint8_t x114 = addcarryx_u64(x111, x77, x98);
- uint64_t x116, uint8_t x117 = addcarryx_u64(x114, x80, x101);
- uint64_t x119, uint8_t x120 = addcarryx_u64(x117, x81, x104);
- uint64_t x122, uint64_t _ = mulx_u64(x107, 0x34f72c234f72c235);
- uint64_t x125, uint64_t x126 = mulx_u64(x122, 0xffffffffffffffe3L);
- uint64_t x128, uint64_t x129 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x131, uint64_t x132 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x134, uint64_t x135 = mulx_u64(x122, 0xfffff);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x126, x128);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x129, x131);
- uint64_t x143, uint8_t x144 = addcarryx_u64(x141, x132, x134);
- uint64_t x146, uint8_t _ = addcarryx_u64(0x0, x144, x135);
- uint64_t _, uint8_t x150 = addcarryx_u64(0x0, x107, x125);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x110, x137);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x113, x140);
- uint64_t x158, uint8_t x159 = addcarryx_u64(x156, x116, x143);
- uint64_t x161, uint8_t x162 = addcarryx_u64(x159, x119, x146);
- uint8_t x163 = (x162 + x120);
- uint64_t x165, uint64_t x166 = mulx_u64(x9, x11);
- uint64_t x168, uint64_t x169 = mulx_u64(x9, x13);
- uint64_t x171, uint64_t x172 = mulx_u64(x9, x15);
- uint64_t x174, uint64_t x175 = mulx_u64(x9, x14);
- uint64_t x177, uint8_t x178 = addcarryx_u64(0x0, x166, x168);
- uint64_t x180, uint8_t x181 = addcarryx_u64(x178, x169, x171);
- uint64_t x183, uint8_t x184 = addcarryx_u64(x181, x172, x174);
- uint64_t x186, uint8_t _ = addcarryx_u64(0x0, x184, x175);
- uint64_t x189, uint8_t x190 = addcarryx_u64(0x0, x152, x165);
- uint64_t x192, uint8_t x193 = addcarryx_u64(x190, x155, x177);
- uint64_t x195, uint8_t x196 = addcarryx_u64(x193, x158, x180);
- uint64_t x198, uint8_t x199 = addcarryx_u64(x196, x161, x183);
- uint64_t x201, uint8_t x202 = addcarryx_u64(x199, x163, x186);
- uint64_t x204, uint64_t _ = mulx_u64(x189, 0x34f72c234f72c235);
- uint64_t x207, uint64_t x208 = mulx_u64(x204, 0xffffffffffffffe3L);
- uint64_t x210, uint64_t x211 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x213, uint64_t x214 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x216, uint64_t x217 = mulx_u64(x204, 0xfffff);
- uint64_t x219, uint8_t x220 = addcarryx_u64(0x0, x208, x210);
- uint64_t x222, uint8_t x223 = addcarryx_u64(x220, x211, x213);
- uint64_t x225, uint8_t x226 = addcarryx_u64(x223, x214, x216);
- uint64_t x228, uint8_t _ = addcarryx_u64(0x0, x226, x217);
- uint64_t _, uint8_t x232 = addcarryx_u64(0x0, x189, x207);
- uint64_t x234, uint8_t x235 = addcarryx_u64(x232, x192, x219);
- uint64_t x237, uint8_t x238 = addcarryx_u64(x235, x195, x222);
- uint64_t x240, uint8_t x241 = addcarryx_u64(x238, x198, x225);
- uint64_t x243, uint8_t x244 = addcarryx_u64(x241, x201, x228);
- uint8_t x245 = (x244 + x202);
- uint64_t x247, uint64_t x248 = mulx_u64(x8, x11);
- uint64_t x250, uint64_t x251 = mulx_u64(x8, x13);
- uint64_t x253, uint64_t x254 = mulx_u64(x8, x15);
- uint64_t x256, uint64_t x257 = mulx_u64(x8, x14);
- uint64_t x259, uint8_t x260 = addcarryx_u64(0x0, x248, x250);
- uint64_t x262, uint8_t x263 = addcarryx_u64(x260, x251, x253);
- uint64_t x265, uint8_t x266 = addcarryx_u64(x263, x254, x256);
- uint64_t x268, uint8_t _ = addcarryx_u64(0x0, x266, x257);
- uint64_t x271, uint8_t x272 = addcarryx_u64(0x0, x234, x247);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x237, x259);
- uint64_t x277, uint8_t x278 = addcarryx_u64(x275, x240, x262);
- uint64_t x280, uint8_t x281 = addcarryx_u64(x278, x243, x265);
- uint64_t x283, uint8_t x284 = addcarryx_u64(x281, x245, x268);
- uint64_t x286, uint64_t _ = mulx_u64(x271, 0x34f72c234f72c235);
- uint64_t x289, uint64_t x290 = mulx_u64(x286, 0xffffffffffffffe3L);
- uint64_t x292, uint64_t x293 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x295, uint64_t x296 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x298, uint64_t x299 = mulx_u64(x286, 0xfffff);
- uint64_t x301, uint8_t x302 = addcarryx_u64(0x0, x290, x292);
- uint64_t x304, uint8_t x305 = addcarryx_u64(x302, x293, x295);
- uint64_t x307, uint8_t x308 = addcarryx_u64(x305, x296, x298);
- uint64_t x310, uint8_t _ = addcarryx_u64(0x0, x308, x299);
- uint64_t _, uint8_t x314 = addcarryx_u64(0x0, x271, x289);
- uint64_t x316, uint8_t x317 = addcarryx_u64(x314, x274, x301);
- uint64_t x319, uint8_t x320 = addcarryx_u64(x317, x277, x304);
- uint64_t x322, uint8_t x323 = addcarryx_u64(x320, x280, x307);
- uint64_t x325, uint8_t x326 = addcarryx_u64(x323, x283, x310);
- uint8_t x327 = (x326 + x284);
- uint64_t x329, uint8_t x330 = subborrow_u64(0x0, x316, 0xffffffffffffffe3L);
- uint64_t x332, uint8_t x333 = subborrow_u64(x330, x319, 0xffffffffffffffffL);
- uint64_t x335, uint8_t x336 = subborrow_u64(x333, x322, 0xffffffffffffffffL);
- uint64_t x338, uint8_t x339 = subborrow_u64(x336, x325, 0xfffff);
- uint64_t _, uint8_t x342 = subborrow_u64(x339, x327, 0x0);
- uint64_t x343 = cmovznz64(x342, x338, x325);
- uint64_t x344 = cmovznz64(x342, x335, x322);
- uint64_t x345 = cmovznz64(x342, x332, x319);
- uint64_t x346 = cmovznz64(x342, x329, x316);
- return (x343, x344, x345, x346))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e212m29_4limbs/femulDisplay.v b/src/Specific/montgomery64_2e212m29_4limbs/femulDisplay.v
deleted file mode 100644
index 05a1d9342..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e212m29_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e212m29_4limbs/fenz.c b/src/Specific/montgomery64_2e212m29_4limbs/fenz.c
deleted file mode 100644
index 7541094ff..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x7 = (x6 | x5);
- { uint64_t x8 = (x4 | x7);
- { uint64_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e212m29_4limbs/fenz.v b/src/Specific/montgomery64_2e212m29_4limbs/fenz.v
deleted file mode 100644
index 094a58750..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e212m29_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e212m29_4limbs/fenzDisplay.log b/src/Specific/montgomery64_2e212m29_4limbs/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e212m29_4limbs/fenzDisplay.v b/src/Specific/montgomery64_2e212m29_4limbs/fenzDisplay.v
deleted file mode 100644
index b0676631a..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e212m29_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e212m29_4limbs/feopp.c b/src/Specific/montgomery64_2e212m29_4limbs/feopp.c
deleted file mode 100644
index ad381e68b..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/feopp.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feopp(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8; uint8_t x9 = _subborrow_u64(0x0, 0x0, x2, &x8);
- { uint64_t x11; uint8_t x12 = _subborrow_u64(x9, 0x0, x4, &x11);
- { uint64_t x14; uint8_t x15 = _subborrow_u64(x12, 0x0, x6, &x14);
- { uint64_t x17; uint8_t x18 = _subborrow_u64(x15, 0x0, x5, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xffffffffffffffe3L);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x8, x20, &x22);
- { uint64_t x24 = (x19 & 0xffffffffffffffffL);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x23, x11, x24, &x26);
- { uint64_t x28 = (x19 & 0xffffffffffffffffL);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x27, x14, x28, &x30);
- { uint64_t x32 = (x19 & 0xfffff);
- { uint64_t x34; uint8_t _ = _addcarryx_u64(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e212m29_4limbs/feopp.v b/src/Specific/montgomery64_2e212m29_4limbs/feopp.v
deleted file mode 100644
index 2b37dfe9c..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e212m29_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e212m29_4limbs/feoppDisplay.log b/src/Specific/montgomery64_2e212m29_4limbs/feoppDisplay.log
deleted file mode 100644
index 3b7584aeb..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xffffffffffffffe3L);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffffffffffffffL);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x28 = (x19 & 0xffffffffffffffffL);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x27, x14, x28);
- uint64_t x32 = (x19 & 0xfffff);
- uint64_t x34, uint8_t _ = addcarryx_u64(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e212m29_4limbs/feoppDisplay.v b/src/Specific/montgomery64_2e212m29_4limbs/feoppDisplay.v
deleted file mode 100644
index b788cc2a9..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e212m29_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e212m29_4limbs/fesquare.c b/src/Specific/montgomery64_2e212m29_4limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e212m29_4limbs/fesub.c b/src/Specific/montgomery64_2e212m29_4limbs/fesub.c
deleted file mode 100644
index 7911800fc..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/fesub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _subborrow_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _subborrow_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _subborrow_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u64(x24, x8, x14, &x26);
- { uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- { uint64_t x29 = (x28 & 0xffffffffffffffe3L);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(0x0, x17, x29, &x31);
- { uint64_t x33 = (x28 & 0xffffffffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x20, x33, &x35);
- { uint64_t x37 = (x28 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x23, x37, &x39);
- { uint64_t x41 = (x28 & 0xfffff);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x26, x41, &x43);
- out[0] = x31;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e212m29_4limbs/fesub.v b/src/Specific/montgomery64_2e212m29_4limbs/fesub.v
deleted file mode 100644
index cca124485..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e212m29_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e212m29_4limbs/fesubDisplay.log b/src/Specific/montgomery64_2e212m29_4limbs/fesubDisplay.log
deleted file mode 100644
index 11fdb98c0..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint64_t x29 = (x28 & 0xffffffffffffffe3L);
- uint64_t x31, uint8_t x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x37 = (x28 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x23, x37);
- uint64_t x41 = (x28 & 0xfffff);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x26, x41);
- (Return x43, Return x39, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e212m29_4limbs/fesubDisplay.v b/src/Specific/montgomery64_2e212m29_4limbs/fesubDisplay.v
deleted file mode 100644
index bbe2fd511..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e212m29_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e212m29_4limbs/py_interpreter.sh b/src/Specific/montgomery64_2e212m29_4limbs/py_interpreter.sh
deleted file mode 100755
index 75c8d487d..000000000
--- a/src/Specific/montgomery64_2e212m29_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**212 - 29' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e213m3_4limbs/CurveParameters.v b/src/Specific/montgomery64_2e213m3_4limbs/CurveParameters.v
deleted file mode 100644
index f260326b0..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^213 - 3
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 64;
- bitwidth := 64;
- s := 2^213;
- c := [(1, 3)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e213m3_4limbs/Synthesis.v b/src/Specific/montgomery64_2e213m3_4limbs/Synthesis.v
deleted file mode 100644
index a84e7e9b2..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e213m3_4limbs.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/montgomery64_2e213m3_4limbs/compiler.sh b/src/Specific/montgomery64_2e213m3_4limbs/compiler.sh
deleted file mode 100755
index 548533422..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<213) - 3' "$@"
diff --git a/src/Specific/montgomery64_2e213m3_4limbs/compilerxx.sh b/src/Specific/montgomery64_2e213m3_4limbs/compilerxx.sh
deleted file mode 100755
index ef7024180..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<213) - 3' "$@"
diff --git a/src/Specific/montgomery64_2e213m3_4limbs/feadd.c b/src/Specific/montgomery64_2e213m3_4limbs/feadd.c
deleted file mode 100644
index 007d524ae..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _addcarryx_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _addcarryx_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x24, x8, x14, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u64(0x0, x17, 0xfffffffffffffffdL, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u64(x30, x20, 0xffffffffffffffffL, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u64(x33, x23, 0xffffffffffffffffL, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u64(x36, x26, 0x1fffff, &x38);
- { uint64_t _; uint8_t x42 = _subborrow_u64(x39, x27, 0x0, &_);
- { uint64_t x43 = cmovznz64(x42, x38, x26);
- { uint64_t x44 = cmovznz64(x42, x35, x23);
- { uint64_t x45 = cmovznz64(x42, x32, x20);
- { uint64_t x46 = cmovznz64(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e213m3_4limbs/feadd.v b/src/Specific/montgomery64_2e213m3_4limbs/feadd.v
deleted file mode 100644
index 11efe4929..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e213m3_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e213m3_4limbs/feaddDisplay.log b/src/Specific/montgomery64_2e213m3_4limbs/feaddDisplay.log
deleted file mode 100644
index a2348cfc3..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t x30 = subborrow_u64(0x0, x17, 0xfffffffffffffffdL);
- uint64_t x32, uint8_t x33 = subborrow_u64(x30, x20, 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = subborrow_u64(x33, x23, 0xffffffffffffffffL);
- uint64_t x38, uint8_t x39 = subborrow_u64(x36, x26, 0x1fffff);
- uint64_t _, uint8_t x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e213m3_4limbs/feaddDisplay.v b/src/Specific/montgomery64_2e213m3_4limbs/feaddDisplay.v
deleted file mode 100644
index 4cb88857e..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e213m3_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e213m3_4limbs/femul.c b/src/Specific/montgomery64_2e213m3_4limbs/femul.c
deleted file mode 100644
index 6e80f4806..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/femul.c
+++ /dev/null
@@ -1,130 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x18; uint64_t x17 = _mulx_u64(x5, x11, &x18);
- { uint64_t x21; uint64_t x20 = _mulx_u64(x5, x13, &x21);
- { uint64_t x24; uint64_t x23 = _mulx_u64(x5, x15, &x24);
- { uint64_t x27; uint64_t x26 = _mulx_u64(x5, x14, &x27);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x18, x20, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x21, x23, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x24, x26, &x35);
- { uint64_t x38; uint8_t _ = _addcarryx_u64(0x0, x36, x27, &x38);
- { uint64_t _; uint64_t x41 = _mulx_u64(x17, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x45; uint64_t x44 = _mulx_u64(x41, 0xfffffffffffffffdL, &x45);
- { uint64_t x48; uint64_t x47 = _mulx_u64(x41, 0xffffffffffffffffL, &x48);
- { uint64_t x51; uint64_t x50 = _mulx_u64(x41, 0xffffffffffffffffL, &x51);
- { uint64_t x54; uint64_t x53 = _mulx_u64(x41, 0x1fffff, &x54);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(0x0, x45, x47, &x56);
- { uint64_t x59; uint8_t x60 = _addcarryx_u64(x57, x48, x50, &x59);
- { uint64_t x62; uint8_t x63 = _addcarryx_u64(x60, x51, x53, &x62);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(0x0, x63, x54, &x65);
- { uint64_t _; uint8_t x69 = _addcarryx_u64(0x0, x17, x44, &_);
- { uint64_t x71; uint8_t x72 = _addcarryx_u64(x69, x29, x56, &x71);
- { uint64_t x74; uint8_t x75 = _addcarryx_u64(x72, x32, x59, &x74);
- { uint64_t x77; uint8_t x78 = _addcarryx_u64(x75, x35, x62, &x77);
- { uint64_t x80; uint8_t x81 = _addcarryx_u64(x78, x38, x65, &x80);
- { uint64_t x84; uint64_t x83 = _mulx_u64(x7, x11, &x84);
- { uint64_t x87; uint64_t x86 = _mulx_u64(x7, x13, &x87);
- { uint64_t x90; uint64_t x89 = _mulx_u64(x7, x15, &x90);
- { uint64_t x93; uint64_t x92 = _mulx_u64(x7, x14, &x93);
- { uint64_t x95; uint8_t x96 = _addcarryx_u64(0x0, x84, x86, &x95);
- { uint64_t x98; uint8_t x99 = _addcarryx_u64(x96, x87, x89, &x98);
- { uint64_t x101; uint8_t x102 = _addcarryx_u64(x99, x90, x92, &x101);
- { uint64_t x104; uint8_t _ = _addcarryx_u64(0x0, x102, x93, &x104);
- { uint64_t x107; uint8_t x108 = _addcarryx_u64(0x0, x71, x83, &x107);
- { uint64_t x110; uint8_t x111 = _addcarryx_u64(x108, x74, x95, &x110);
- { uint64_t x113; uint8_t x114 = _addcarryx_u64(x111, x77, x98, &x113);
- { uint64_t x116; uint8_t x117 = _addcarryx_u64(x114, x80, x101, &x116);
- { uint64_t x119; uint8_t x120 = _addcarryx_u64(x117, x81, x104, &x119);
- { uint64_t _; uint64_t x122 = _mulx_u64(x107, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x126; uint64_t x125 = _mulx_u64(x122, 0xfffffffffffffffdL, &x126);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x122, 0xffffffffffffffffL, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x122, 0xffffffffffffffffL, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x122, 0x1fffff, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x126, x128, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x129, x131, &x140);
- { uint64_t x143; uint8_t x144 = _addcarryx_u64(x141, x132, x134, &x143);
- { uint64_t x146; uint8_t _ = _addcarryx_u64(0x0, x144, x135, &x146);
- { uint64_t _; uint8_t x150 = _addcarryx_u64(0x0, x107, x125, &_);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x110, x137, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x113, x140, &x155);
- { uint64_t x158; uint8_t x159 = _addcarryx_u64(x156, x116, x143, &x158);
- { uint64_t x161; uint8_t x162 = _addcarryx_u64(x159, x119, x146, &x161);
- { uint8_t x163 = (x162 + x120);
- { uint64_t x166; uint64_t x165 = _mulx_u64(x9, x11, &x166);
- { uint64_t x169; uint64_t x168 = _mulx_u64(x9, x13, &x169);
- { uint64_t x172; uint64_t x171 = _mulx_u64(x9, x15, &x172);
- { uint64_t x175; uint64_t x174 = _mulx_u64(x9, x14, &x175);
- { uint64_t x177; uint8_t x178 = _addcarryx_u64(0x0, x166, x168, &x177);
- { uint64_t x180; uint8_t x181 = _addcarryx_u64(x178, x169, x171, &x180);
- { uint64_t x183; uint8_t x184 = _addcarryx_u64(x181, x172, x174, &x183);
- { uint64_t x186; uint8_t _ = _addcarryx_u64(0x0, x184, x175, &x186);
- { uint64_t x189; uint8_t x190 = _addcarryx_u64(0x0, x152, x165, &x189);
- { uint64_t x192; uint8_t x193 = _addcarryx_u64(x190, x155, x177, &x192);
- { uint64_t x195; uint8_t x196 = _addcarryx_u64(x193, x158, x180, &x195);
- { uint64_t x198; uint8_t x199 = _addcarryx_u64(x196, x161, x183, &x198);
- { uint64_t x201; uint8_t x202 = _addcarryx_u64(x199, x163, x186, &x201);
- { uint64_t _; uint64_t x204 = _mulx_u64(x189, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x208; uint64_t x207 = _mulx_u64(x204, 0xfffffffffffffffdL, &x208);
- { uint64_t x211; uint64_t x210 = _mulx_u64(x204, 0xffffffffffffffffL, &x211);
- { uint64_t x214; uint64_t x213 = _mulx_u64(x204, 0xffffffffffffffffL, &x214);
- { uint64_t x217; uint64_t x216 = _mulx_u64(x204, 0x1fffff, &x217);
- { uint64_t x219; uint8_t x220 = _addcarryx_u64(0x0, x208, x210, &x219);
- { uint64_t x222; uint8_t x223 = _addcarryx_u64(x220, x211, x213, &x222);
- { uint64_t x225; uint8_t x226 = _addcarryx_u64(x223, x214, x216, &x225);
- { uint64_t x228; uint8_t _ = _addcarryx_u64(0x0, x226, x217, &x228);
- { uint64_t _; uint8_t x232 = _addcarryx_u64(0x0, x189, x207, &_);
- { uint64_t x234; uint8_t x235 = _addcarryx_u64(x232, x192, x219, &x234);
- { uint64_t x237; uint8_t x238 = _addcarryx_u64(x235, x195, x222, &x237);
- { uint64_t x240; uint8_t x241 = _addcarryx_u64(x238, x198, x225, &x240);
- { uint64_t x243; uint8_t x244 = _addcarryx_u64(x241, x201, x228, &x243);
- { uint8_t x245 = (x244 + x202);
- { uint64_t x248; uint64_t x247 = _mulx_u64(x8, x11, &x248);
- { uint64_t x251; uint64_t x250 = _mulx_u64(x8, x13, &x251);
- { uint64_t x254; uint64_t x253 = _mulx_u64(x8, x15, &x254);
- { uint64_t x257; uint64_t x256 = _mulx_u64(x8, x14, &x257);
- { uint64_t x259; uint8_t x260 = _addcarryx_u64(0x0, x248, x250, &x259);
- { uint64_t x262; uint8_t x263 = _addcarryx_u64(x260, x251, x253, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(x263, x254, x256, &x265);
- { uint64_t x268; uint8_t _ = _addcarryx_u64(0x0, x266, x257, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(0x0, x234, x247, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x237, x259, &x274);
- { uint64_t x277; uint8_t x278 = _addcarryx_u64(x275, x240, x262, &x277);
- { uint64_t x280; uint8_t x281 = _addcarryx_u64(x278, x243, x265, &x280);
- { uint64_t x283; uint8_t x284 = _addcarryx_u64(x281, x245, x268, &x283);
- { uint64_t _; uint64_t x286 = _mulx_u64(x271, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x290; uint64_t x289 = _mulx_u64(x286, 0xfffffffffffffffdL, &x290);
- { uint64_t x293; uint64_t x292 = _mulx_u64(x286, 0xffffffffffffffffL, &x293);
- { uint64_t x296; uint64_t x295 = _mulx_u64(x286, 0xffffffffffffffffL, &x296);
- { uint64_t x299; uint64_t x298 = _mulx_u64(x286, 0x1fffff, &x299);
- { uint64_t x301; uint8_t x302 = _addcarryx_u64(0x0, x290, x292, &x301);
- { uint64_t x304; uint8_t x305 = _addcarryx_u64(x302, x293, x295, &x304);
- { uint64_t x307; uint8_t x308 = _addcarryx_u64(x305, x296, x298, &x307);
- { uint64_t x310; uint8_t _ = _addcarryx_u64(0x0, x308, x299, &x310);
- { uint64_t _; uint8_t x314 = _addcarryx_u64(0x0, x271, x289, &_);
- { uint64_t x316; uint8_t x317 = _addcarryx_u64(x314, x274, x301, &x316);
- { uint64_t x319; uint8_t x320 = _addcarryx_u64(x317, x277, x304, &x319);
- { uint64_t x322; uint8_t x323 = _addcarryx_u64(x320, x280, x307, &x322);
- { uint64_t x325; uint8_t x326 = _addcarryx_u64(x323, x283, x310, &x325);
- { uint8_t x327 = (x326 + x284);
- { uint64_t x329; uint8_t x330 = _subborrow_u64(0x0, x316, 0xfffffffffffffffdL, &x329);
- { uint64_t x332; uint8_t x333 = _subborrow_u64(x330, x319, 0xffffffffffffffffL, &x332);
- { uint64_t x335; uint8_t x336 = _subborrow_u64(x333, x322, 0xffffffffffffffffL, &x335);
- { uint64_t x338; uint8_t x339 = _subborrow_u64(x336, x325, 0x1fffff, &x338);
- { uint64_t _; uint8_t x342 = _subborrow_u64(x339, x327, 0x0, &_);
- { uint64_t x343 = cmovznz64(x342, x338, x325);
- { uint64_t x344 = cmovznz64(x342, x335, x322);
- { uint64_t x345 = cmovznz64(x342, x332, x319);
- { uint64_t x346 = cmovznz64(x342, x329, x316);
- out[0] = x346;
- out[1] = x345;
- out[2] = x344;
- out[3] = x343;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e213m3_4limbs/femul.v b/src/Specific/montgomery64_2e213m3_4limbs/femul.v
deleted file mode 100644
index a47f8679b..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e213m3_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e213m3_4limbs/femulDisplay.log b/src/Specific/montgomery64_2e213m3_4limbs/femulDisplay.log
deleted file mode 100644
index 2205892f9..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,122 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t _ = mulx_u64(x17, 0xaaaaaaaaaaaaaaabL);
- uint64_t x44, uint64_t x45 = mulx_u64(x41, 0xfffffffffffffffdL);
- uint64_t x47, uint64_t x48 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x50, uint64_t x51 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x53, uint64_t x54 = mulx_u64(x41, 0x1fffff);
- uint64_t x56, uint8_t x57 = addcarryx_u64(0x0, x45, x47);
- uint64_t x59, uint8_t x60 = addcarryx_u64(x57, x48, x50);
- uint64_t x62, uint8_t x63 = addcarryx_u64(x60, x51, x53);
- uint64_t x65, uint8_t _ = addcarryx_u64(0x0, x63, x54);
- uint64_t _, uint8_t x69 = addcarryx_u64(0x0, x17, x44);
- uint64_t x71, uint8_t x72 = addcarryx_u64(x69, x29, x56);
- uint64_t x74, uint8_t x75 = addcarryx_u64(x72, x32, x59);
- uint64_t x77, uint8_t x78 = addcarryx_u64(x75, x35, x62);
- uint64_t x80, uint8_t x81 = addcarryx_u64(x78, x38, x65);
- uint64_t x83, uint64_t x84 = mulx_u64(x7, x11);
- uint64_t x86, uint64_t x87 = mulx_u64(x7, x13);
- uint64_t x89, uint64_t x90 = mulx_u64(x7, x15);
- uint64_t x92, uint64_t x93 = mulx_u64(x7, x14);
- uint64_t x95, uint8_t x96 = addcarryx_u64(0x0, x84, x86);
- uint64_t x98, uint8_t x99 = addcarryx_u64(x96, x87, x89);
- uint64_t x101, uint8_t x102 = addcarryx_u64(x99, x90, x92);
- uint64_t x104, uint8_t _ = addcarryx_u64(0x0, x102, x93);
- uint64_t x107, uint8_t x108 = addcarryx_u64(0x0, x71, x83);
- uint64_t x110, uint8_t x111 = addcarryx_u64(x108, x74, x95);
- uint64_t x113, uint8_t x114 = addcarryx_u64(x111, x77, x98);
- uint64_t x116, uint8_t x117 = addcarryx_u64(x114, x80, x101);
- uint64_t x119, uint8_t x120 = addcarryx_u64(x117, x81, x104);
- uint64_t x122, uint64_t _ = mulx_u64(x107, 0xaaaaaaaaaaaaaaabL);
- uint64_t x125, uint64_t x126 = mulx_u64(x122, 0xfffffffffffffffdL);
- uint64_t x128, uint64_t x129 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x131, uint64_t x132 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x134, uint64_t x135 = mulx_u64(x122, 0x1fffff);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x126, x128);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x129, x131);
- uint64_t x143, uint8_t x144 = addcarryx_u64(x141, x132, x134);
- uint64_t x146, uint8_t _ = addcarryx_u64(0x0, x144, x135);
- uint64_t _, uint8_t x150 = addcarryx_u64(0x0, x107, x125);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x110, x137);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x113, x140);
- uint64_t x158, uint8_t x159 = addcarryx_u64(x156, x116, x143);
- uint64_t x161, uint8_t x162 = addcarryx_u64(x159, x119, x146);
- uint8_t x163 = (x162 + x120);
- uint64_t x165, uint64_t x166 = mulx_u64(x9, x11);
- uint64_t x168, uint64_t x169 = mulx_u64(x9, x13);
- uint64_t x171, uint64_t x172 = mulx_u64(x9, x15);
- uint64_t x174, uint64_t x175 = mulx_u64(x9, x14);
- uint64_t x177, uint8_t x178 = addcarryx_u64(0x0, x166, x168);
- uint64_t x180, uint8_t x181 = addcarryx_u64(x178, x169, x171);
- uint64_t x183, uint8_t x184 = addcarryx_u64(x181, x172, x174);
- uint64_t x186, uint8_t _ = addcarryx_u64(0x0, x184, x175);
- uint64_t x189, uint8_t x190 = addcarryx_u64(0x0, x152, x165);
- uint64_t x192, uint8_t x193 = addcarryx_u64(x190, x155, x177);
- uint64_t x195, uint8_t x196 = addcarryx_u64(x193, x158, x180);
- uint64_t x198, uint8_t x199 = addcarryx_u64(x196, x161, x183);
- uint64_t x201, uint8_t x202 = addcarryx_u64(x199, x163, x186);
- uint64_t x204, uint64_t _ = mulx_u64(x189, 0xaaaaaaaaaaaaaaabL);
- uint64_t x207, uint64_t x208 = mulx_u64(x204, 0xfffffffffffffffdL);
- uint64_t x210, uint64_t x211 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x213, uint64_t x214 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x216, uint64_t x217 = mulx_u64(x204, 0x1fffff);
- uint64_t x219, uint8_t x220 = addcarryx_u64(0x0, x208, x210);
- uint64_t x222, uint8_t x223 = addcarryx_u64(x220, x211, x213);
- uint64_t x225, uint8_t x226 = addcarryx_u64(x223, x214, x216);
- uint64_t x228, uint8_t _ = addcarryx_u64(0x0, x226, x217);
- uint64_t _, uint8_t x232 = addcarryx_u64(0x0, x189, x207);
- uint64_t x234, uint8_t x235 = addcarryx_u64(x232, x192, x219);
- uint64_t x237, uint8_t x238 = addcarryx_u64(x235, x195, x222);
- uint64_t x240, uint8_t x241 = addcarryx_u64(x238, x198, x225);
- uint64_t x243, uint8_t x244 = addcarryx_u64(x241, x201, x228);
- uint8_t x245 = (x244 + x202);
- uint64_t x247, uint64_t x248 = mulx_u64(x8, x11);
- uint64_t x250, uint64_t x251 = mulx_u64(x8, x13);
- uint64_t x253, uint64_t x254 = mulx_u64(x8, x15);
- uint64_t x256, uint64_t x257 = mulx_u64(x8, x14);
- uint64_t x259, uint8_t x260 = addcarryx_u64(0x0, x248, x250);
- uint64_t x262, uint8_t x263 = addcarryx_u64(x260, x251, x253);
- uint64_t x265, uint8_t x266 = addcarryx_u64(x263, x254, x256);
- uint64_t x268, uint8_t _ = addcarryx_u64(0x0, x266, x257);
- uint64_t x271, uint8_t x272 = addcarryx_u64(0x0, x234, x247);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x237, x259);
- uint64_t x277, uint8_t x278 = addcarryx_u64(x275, x240, x262);
- uint64_t x280, uint8_t x281 = addcarryx_u64(x278, x243, x265);
- uint64_t x283, uint8_t x284 = addcarryx_u64(x281, x245, x268);
- uint64_t x286, uint64_t _ = mulx_u64(x271, 0xaaaaaaaaaaaaaaabL);
- uint64_t x289, uint64_t x290 = mulx_u64(x286, 0xfffffffffffffffdL);
- uint64_t x292, uint64_t x293 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x295, uint64_t x296 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x298, uint64_t x299 = mulx_u64(x286, 0x1fffff);
- uint64_t x301, uint8_t x302 = addcarryx_u64(0x0, x290, x292);
- uint64_t x304, uint8_t x305 = addcarryx_u64(x302, x293, x295);
- uint64_t x307, uint8_t x308 = addcarryx_u64(x305, x296, x298);
- uint64_t x310, uint8_t _ = addcarryx_u64(0x0, x308, x299);
- uint64_t _, uint8_t x314 = addcarryx_u64(0x0, x271, x289);
- uint64_t x316, uint8_t x317 = addcarryx_u64(x314, x274, x301);
- uint64_t x319, uint8_t x320 = addcarryx_u64(x317, x277, x304);
- uint64_t x322, uint8_t x323 = addcarryx_u64(x320, x280, x307);
- uint64_t x325, uint8_t x326 = addcarryx_u64(x323, x283, x310);
- uint8_t x327 = (x326 + x284);
- uint64_t x329, uint8_t x330 = subborrow_u64(0x0, x316, 0xfffffffffffffffdL);
- uint64_t x332, uint8_t x333 = subborrow_u64(x330, x319, 0xffffffffffffffffL);
- uint64_t x335, uint8_t x336 = subborrow_u64(x333, x322, 0xffffffffffffffffL);
- uint64_t x338, uint8_t x339 = subborrow_u64(x336, x325, 0x1fffff);
- uint64_t _, uint8_t x342 = subborrow_u64(x339, x327, 0x0);
- uint64_t x343 = cmovznz64(x342, x338, x325);
- uint64_t x344 = cmovznz64(x342, x335, x322);
- uint64_t x345 = cmovznz64(x342, x332, x319);
- uint64_t x346 = cmovznz64(x342, x329, x316);
- return (x343, x344, x345, x346))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e213m3_4limbs/femulDisplay.v b/src/Specific/montgomery64_2e213m3_4limbs/femulDisplay.v
deleted file mode 100644
index 975b6e10e..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e213m3_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e213m3_4limbs/fenz.c b/src/Specific/montgomery64_2e213m3_4limbs/fenz.c
deleted file mode 100644
index 7541094ff..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x7 = (x6 | x5);
- { uint64_t x8 = (x4 | x7);
- { uint64_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e213m3_4limbs/fenz.v b/src/Specific/montgomery64_2e213m3_4limbs/fenz.v
deleted file mode 100644
index 1ee57066c..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e213m3_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e213m3_4limbs/fenzDisplay.log b/src/Specific/montgomery64_2e213m3_4limbs/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e213m3_4limbs/fenzDisplay.v b/src/Specific/montgomery64_2e213m3_4limbs/fenzDisplay.v
deleted file mode 100644
index c71c5f639..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e213m3_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e213m3_4limbs/feopp.c b/src/Specific/montgomery64_2e213m3_4limbs/feopp.c
deleted file mode 100644
index 9600b219b..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/feopp.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feopp(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8; uint8_t x9 = _subborrow_u64(0x0, 0x0, x2, &x8);
- { uint64_t x11; uint8_t x12 = _subborrow_u64(x9, 0x0, x4, &x11);
- { uint64_t x14; uint8_t x15 = _subborrow_u64(x12, 0x0, x6, &x14);
- { uint64_t x17; uint8_t x18 = _subborrow_u64(x15, 0x0, x5, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xfffffffffffffffdL);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x8, x20, &x22);
- { uint64_t x24 = (x19 & 0xffffffffffffffffL);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x23, x11, x24, &x26);
- { uint64_t x28 = (x19 & 0xffffffffffffffffL);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x27, x14, x28, &x30);
- { uint64_t x32 = (x19 & 0x1fffff);
- { uint64_t x34; uint8_t _ = _addcarryx_u64(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e213m3_4limbs/feopp.v b/src/Specific/montgomery64_2e213m3_4limbs/feopp.v
deleted file mode 100644
index c9f58a3e4..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e213m3_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e213m3_4limbs/feoppDisplay.log b/src/Specific/montgomery64_2e213m3_4limbs/feoppDisplay.log
deleted file mode 100644
index 9d47c9866..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xfffffffffffffffdL);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffffffffffffffL);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x28 = (x19 & 0xffffffffffffffffL);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x27, x14, x28);
- uint64_t x32 = (x19 & 0x1fffff);
- uint64_t x34, uint8_t _ = addcarryx_u64(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e213m3_4limbs/feoppDisplay.v b/src/Specific/montgomery64_2e213m3_4limbs/feoppDisplay.v
deleted file mode 100644
index 41f77b62c..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e213m3_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e213m3_4limbs/fesquare.c b/src/Specific/montgomery64_2e213m3_4limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e213m3_4limbs/fesub.c b/src/Specific/montgomery64_2e213m3_4limbs/fesub.c
deleted file mode 100644
index e27dc5c35..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/fesub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _subborrow_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _subborrow_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _subborrow_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u64(x24, x8, x14, &x26);
- { uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- { uint64_t x29 = (x28 & 0xfffffffffffffffdL);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(0x0, x17, x29, &x31);
- { uint64_t x33 = (x28 & 0xffffffffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x20, x33, &x35);
- { uint64_t x37 = (x28 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x23, x37, &x39);
- { uint64_t x41 = (x28 & 0x1fffff);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x26, x41, &x43);
- out[0] = x31;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e213m3_4limbs/fesub.v b/src/Specific/montgomery64_2e213m3_4limbs/fesub.v
deleted file mode 100644
index 28edaf9b5..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e213m3_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e213m3_4limbs/fesubDisplay.log b/src/Specific/montgomery64_2e213m3_4limbs/fesubDisplay.log
deleted file mode 100644
index 066544600..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint64_t x29 = (x28 & 0xfffffffffffffffdL);
- uint64_t x31, uint8_t x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x37 = (x28 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x23, x37);
- uint64_t x41 = (x28 & 0x1fffff);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x26, x41);
- (Return x43, Return x39, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e213m3_4limbs/fesubDisplay.v b/src/Specific/montgomery64_2e213m3_4limbs/fesubDisplay.v
deleted file mode 100644
index dd8c0a0ed..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e213m3_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e213m3_4limbs/py_interpreter.sh b/src/Specific/montgomery64_2e213m3_4limbs/py_interpreter.sh
deleted file mode 100755
index 0ae74aca7..000000000
--- a/src/Specific/montgomery64_2e213m3_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**213 - 3' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e216m2e108m1_4limbs/CurveParameters.v b/src/Specific/montgomery64_2e216m2e108m1_4limbs/CurveParameters.v
deleted file mode 100644
index 945150d91..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^216 - 2^108 - 1
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 64;
- bitwidth := 64;
- s := 2^216;
- c := [(1, 1); (2^108, 1)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e216m2e108m1_4limbs/Synthesis.v b/src/Specific/montgomery64_2e216m2e108m1_4limbs/Synthesis.v
deleted file mode 100644
index 2274084d2..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e216m2e108m1_4limbs.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/montgomery64_2e216m2e108m1_4limbs/compiler.sh b/src/Specific/montgomery64_2e216m2e108m1_4limbs/compiler.sh
deleted file mode 100755
index 574d96977..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e216m2e108m1_4limbs/compilerxx.sh b/src/Specific/montgomery64_2e216m2e108m1_4limbs/compilerxx.sh
deleted file mode 100755
index ff1ee0ec3..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e216m2e108m1_4limbs/feadd.c b/src/Specific/montgomery64_2e216m2e108m1_4limbs/feadd.c
deleted file mode 100644
index 8bbafb674..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _addcarryx_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _addcarryx_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x24, x8, x14, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u64(0x0, x17, 0xffffffffffffffffL, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u64(x30, x20, 0xffffefffffffffffL, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u64(x33, x23, 0xffffffffffffffffL, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u64(x36, x26, 0xffffff, &x38);
- { uint64_t _; uint8_t x42 = _subborrow_u64(x39, x27, 0x0, &_);
- { uint64_t x43 = cmovznz64(x42, x38, x26);
- { uint64_t x44 = cmovznz64(x42, x35, x23);
- { uint64_t x45 = cmovznz64(x42, x32, x20);
- { uint64_t x46 = cmovznz64(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e216m2e108m1_4limbs/feadd.v b/src/Specific/montgomery64_2e216m2e108m1_4limbs/feadd.v
deleted file mode 100644
index 1401567e2..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e216m2e108m1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e216m2e108m1_4limbs/feaddDisplay.log b/src/Specific/montgomery64_2e216m2e108m1_4limbs/feaddDisplay.log
deleted file mode 100644
index 7b28d893c..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t x30 = subborrow_u64(0x0, x17, 0xffffffffffffffffL);
- uint64_t x32, uint8_t x33 = subborrow_u64(x30, x20, 0xffffefffffffffffL);
- uint64_t x35, uint8_t x36 = subborrow_u64(x33, x23, 0xffffffffffffffffL);
- uint64_t x38, uint8_t x39 = subborrow_u64(x36, x26, 0xffffff);
- uint64_t _, uint8_t x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e216m2e108m1_4limbs/feaddDisplay.v b/src/Specific/montgomery64_2e216m2e108m1_4limbs/feaddDisplay.v
deleted file mode 100644
index bbd56c14b..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e216m2e108m1_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e216m2e108m1_4limbs/femul.c b/src/Specific/montgomery64_2e216m2e108m1_4limbs/femul.c
deleted file mode 100644
index d010f3680..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/femul.c
+++ /dev/null
@@ -1,126 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x18; uint64_t x17 = _mulx_u64(x5, x11, &x18);
- { uint64_t x21; uint64_t x20 = _mulx_u64(x5, x13, &x21);
- { uint64_t x24; uint64_t x23 = _mulx_u64(x5, x15, &x24);
- { uint64_t x27; uint64_t x26 = _mulx_u64(x5, x14, &x27);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x18, x20, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x21, x23, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x24, x26, &x35);
- { uint64_t x38; uint8_t _ = _addcarryx_u64(0x0, x36, x27, &x38);
- { uint64_t x42; uint64_t x41 = _mulx_u64(x17, 0xffffffffffffffffL, &x42);
- { uint64_t x45; uint64_t x44 = _mulx_u64(x17, 0xffffefffffffffffL, &x45);
- { uint64_t x48; uint64_t x47 = _mulx_u64(x17, 0xffffffffffffffffL, &x48);
- { uint64_t x51; uint64_t x50 = _mulx_u64(x17, 0xffffff, &x51);
- { uint64_t x53; uint8_t x54 = _addcarryx_u64(0x0, x42, x44, &x53);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(x54, x45, x47, &x56);
- { uint64_t x59; uint8_t x60 = _addcarryx_u64(x57, x48, x50, &x59);
- { uint64_t x62; uint8_t _ = _addcarryx_u64(0x0, x60, x51, &x62);
- { uint64_t _; uint8_t x66 = _addcarryx_u64(0x0, x17, x41, &_);
- { uint64_t x68; uint8_t x69 = _addcarryx_u64(x66, x29, x53, &x68);
- { uint64_t x71; uint8_t x72 = _addcarryx_u64(x69, x32, x56, &x71);
- { uint64_t x74; uint8_t x75 = _addcarryx_u64(x72, x35, x59, &x74);
- { uint64_t x77; uint8_t x78 = _addcarryx_u64(x75, x38, x62, &x77);
- { uint64_t x81; uint64_t x80 = _mulx_u64(x7, x11, &x81);
- { uint64_t x84; uint64_t x83 = _mulx_u64(x7, x13, &x84);
- { uint64_t x87; uint64_t x86 = _mulx_u64(x7, x15, &x87);
- { uint64_t x90; uint64_t x89 = _mulx_u64(x7, x14, &x90);
- { uint64_t x92; uint8_t x93 = _addcarryx_u64(0x0, x81, x83, &x92);
- { uint64_t x95; uint8_t x96 = _addcarryx_u64(x93, x84, x86, &x95);
- { uint64_t x98; uint8_t x99 = _addcarryx_u64(x96, x87, x89, &x98);
- { uint64_t x101; uint8_t _ = _addcarryx_u64(0x0, x99, x90, &x101);
- { uint64_t x104; uint8_t x105 = _addcarryx_u64(0x0, x68, x80, &x104);
- { uint64_t x107; uint8_t x108 = _addcarryx_u64(x105, x71, x92, &x107);
- { uint64_t x110; uint8_t x111 = _addcarryx_u64(x108, x74, x95, &x110);
- { uint64_t x113; uint8_t x114 = _addcarryx_u64(x111, x77, x98, &x113);
- { uint64_t x116; uint8_t x117 = _addcarryx_u64(x114, x78, x101, &x116);
- { uint64_t x120; uint64_t x119 = _mulx_u64(x104, 0xffffffffffffffffL, &x120);
- { uint64_t x123; uint64_t x122 = _mulx_u64(x104, 0xffffefffffffffffL, &x123);
- { uint64_t x126; uint64_t x125 = _mulx_u64(x104, 0xffffffffffffffffL, &x126);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x104, 0xffffff, &x129);
- { uint64_t x131; uint8_t x132 = _addcarryx_u64(0x0, x120, x122, &x131);
- { uint64_t x134; uint8_t x135 = _addcarryx_u64(x132, x123, x125, &x134);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(x135, x126, x128, &x137);
- { uint64_t x140; uint8_t _ = _addcarryx_u64(0x0, x138, x129, &x140);
- { uint64_t _; uint8_t x144 = _addcarryx_u64(0x0, x104, x119, &_);
- { uint64_t x146; uint8_t x147 = _addcarryx_u64(x144, x107, x131, &x146);
- { uint64_t x149; uint8_t x150 = _addcarryx_u64(x147, x110, x134, &x149);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x113, x137, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x116, x140, &x155);
- { uint8_t x157 = (x156 + x117);
- { uint64_t x160; uint64_t x159 = _mulx_u64(x9, x11, &x160);
- { uint64_t x163; uint64_t x162 = _mulx_u64(x9, x13, &x163);
- { uint64_t x166; uint64_t x165 = _mulx_u64(x9, x15, &x166);
- { uint64_t x169; uint64_t x168 = _mulx_u64(x9, x14, &x169);
- { uint64_t x171; uint8_t x172 = _addcarryx_u64(0x0, x160, x162, &x171);
- { uint64_t x174; uint8_t x175 = _addcarryx_u64(x172, x163, x165, &x174);
- { uint64_t x177; uint8_t x178 = _addcarryx_u64(x175, x166, x168, &x177);
- { uint64_t x180; uint8_t _ = _addcarryx_u64(0x0, x178, x169, &x180);
- { uint64_t x183; uint8_t x184 = _addcarryx_u64(0x0, x146, x159, &x183);
- { uint64_t x186; uint8_t x187 = _addcarryx_u64(x184, x149, x171, &x186);
- { uint64_t x189; uint8_t x190 = _addcarryx_u64(x187, x152, x174, &x189);
- { uint64_t x192; uint8_t x193 = _addcarryx_u64(x190, x155, x177, &x192);
- { uint64_t x195; uint8_t x196 = _addcarryx_u64(x193, x157, x180, &x195);
- { uint64_t x199; uint64_t x198 = _mulx_u64(x183, 0xffffffffffffffffL, &x199);
- { uint64_t x202; uint64_t x201 = _mulx_u64(x183, 0xffffefffffffffffL, &x202);
- { uint64_t x205; uint64_t x204 = _mulx_u64(x183, 0xffffffffffffffffL, &x205);
- { uint64_t x208; uint64_t x207 = _mulx_u64(x183, 0xffffff, &x208);
- { uint64_t x210; uint8_t x211 = _addcarryx_u64(0x0, x199, x201, &x210);
- { uint64_t x213; uint8_t x214 = _addcarryx_u64(x211, x202, x204, &x213);
- { uint64_t x216; uint8_t x217 = _addcarryx_u64(x214, x205, x207, &x216);
- { uint64_t x219; uint8_t _ = _addcarryx_u64(0x0, x217, x208, &x219);
- { uint64_t _; uint8_t x223 = _addcarryx_u64(0x0, x183, x198, &_);
- { uint64_t x225; uint8_t x226 = _addcarryx_u64(x223, x186, x210, &x225);
- { uint64_t x228; uint8_t x229 = _addcarryx_u64(x226, x189, x213, &x228);
- { uint64_t x231; uint8_t x232 = _addcarryx_u64(x229, x192, x216, &x231);
- { uint64_t x234; uint8_t x235 = _addcarryx_u64(x232, x195, x219, &x234);
- { uint8_t x236 = (x235 + x196);
- { uint64_t x239; uint64_t x238 = _mulx_u64(x8, x11, &x239);
- { uint64_t x242; uint64_t x241 = _mulx_u64(x8, x13, &x242);
- { uint64_t x245; uint64_t x244 = _mulx_u64(x8, x15, &x245);
- { uint64_t x248; uint64_t x247 = _mulx_u64(x8, x14, &x248);
- { uint64_t x250; uint8_t x251 = _addcarryx_u64(0x0, x239, x241, &x250);
- { uint64_t x253; uint8_t x254 = _addcarryx_u64(x251, x242, x244, &x253);
- { uint64_t x256; uint8_t x257 = _addcarryx_u64(x254, x245, x247, &x256);
- { uint64_t x259; uint8_t _ = _addcarryx_u64(0x0, x257, x248, &x259);
- { uint64_t x262; uint8_t x263 = _addcarryx_u64(0x0, x225, x238, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(x263, x228, x250, &x265);
- { uint64_t x268; uint8_t x269 = _addcarryx_u64(x266, x231, x253, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(x269, x234, x256, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x236, x259, &x274);
- { uint64_t x278; uint64_t x277 = _mulx_u64(x262, 0xffffffffffffffffL, &x278);
- { uint64_t x281; uint64_t x280 = _mulx_u64(x262, 0xffffefffffffffffL, &x281);
- { uint64_t x284; uint64_t x283 = _mulx_u64(x262, 0xffffffffffffffffL, &x284);
- { uint64_t x287; uint64_t x286 = _mulx_u64(x262, 0xffffff, &x287);
- { uint64_t x289; uint8_t x290 = _addcarryx_u64(0x0, x278, x280, &x289);
- { uint64_t x292; uint8_t x293 = _addcarryx_u64(x290, x281, x283, &x292);
- { uint64_t x295; uint8_t x296 = _addcarryx_u64(x293, x284, x286, &x295);
- { uint64_t x298; uint8_t _ = _addcarryx_u64(0x0, x296, x287, &x298);
- { uint64_t _; uint8_t x302 = _addcarryx_u64(0x0, x262, x277, &_);
- { uint64_t x304; uint8_t x305 = _addcarryx_u64(x302, x265, x289, &x304);
- { uint64_t x307; uint8_t x308 = _addcarryx_u64(x305, x268, x292, &x307);
- { uint64_t x310; uint8_t x311 = _addcarryx_u64(x308, x271, x295, &x310);
- { uint64_t x313; uint8_t x314 = _addcarryx_u64(x311, x274, x298, &x313);
- { uint8_t x315 = (x314 + x275);
- { uint64_t x317; uint8_t x318 = _subborrow_u64(0x0, x304, 0xffffffffffffffffL, &x317);
- { uint64_t x320; uint8_t x321 = _subborrow_u64(x318, x307, 0xffffefffffffffffL, &x320);
- { uint64_t x323; uint8_t x324 = _subborrow_u64(x321, x310, 0xffffffffffffffffL, &x323);
- { uint64_t x326; uint8_t x327 = _subborrow_u64(x324, x313, 0xffffff, &x326);
- { uint64_t _; uint8_t x330 = _subborrow_u64(x327, x315, 0x0, &_);
- { uint64_t x331 = cmovznz64(x330, x326, x313);
- { uint64_t x332 = cmovznz64(x330, x323, x310);
- { uint64_t x333 = cmovznz64(x330, x320, x307);
- { uint64_t x334 = cmovznz64(x330, x317, x304);
- out[0] = x334;
- out[1] = x333;
- out[2] = x332;
- out[3] = x331;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e216m2e108m1_4limbs/femul.v b/src/Specific/montgomery64_2e216m2e108m1_4limbs/femul.v
deleted file mode 100644
index dea143d0c..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e216m2e108m1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e216m2e108m1_4limbs/femulDisplay.log b/src/Specific/montgomery64_2e216m2e108m1_4limbs/femulDisplay.log
deleted file mode 100644
index a24ee7be3..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,118 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t x42 = mulx_u64(x17, 0xffffffffffffffffL);
- uint64_t x44, uint64_t x45 = mulx_u64(x17, 0xffffefffffffffffL);
- uint64_t x47, uint64_t x48 = mulx_u64(x17, 0xffffffffffffffffL);
- uint64_t x50, uint64_t x51 = mulx_u64(x17, 0xffffff);
- uint64_t x53, uint8_t x54 = addcarryx_u64(0x0, x42, x44);
- uint64_t x56, uint8_t x57 = addcarryx_u64(x54, x45, x47);
- uint64_t x59, uint8_t x60 = addcarryx_u64(x57, x48, x50);
- uint64_t x62, uint8_t _ = addcarryx_u64(0x0, x60, x51);
- uint64_t _, uint8_t x66 = addcarryx_u64(0x0, x17, x41);
- uint64_t x68, uint8_t x69 = addcarryx_u64(x66, x29, x53);
- uint64_t x71, uint8_t x72 = addcarryx_u64(x69, x32, x56);
- uint64_t x74, uint8_t x75 = addcarryx_u64(x72, x35, x59);
- uint64_t x77, uint8_t x78 = addcarryx_u64(x75, x38, x62);
- uint64_t x80, uint64_t x81 = mulx_u64(x7, x11);
- uint64_t x83, uint64_t x84 = mulx_u64(x7, x13);
- uint64_t x86, uint64_t x87 = mulx_u64(x7, x15);
- uint64_t x89, uint64_t x90 = mulx_u64(x7, x14);
- uint64_t x92, uint8_t x93 = addcarryx_u64(0x0, x81, x83);
- uint64_t x95, uint8_t x96 = addcarryx_u64(x93, x84, x86);
- uint64_t x98, uint8_t x99 = addcarryx_u64(x96, x87, x89);
- uint64_t x101, uint8_t _ = addcarryx_u64(0x0, x99, x90);
- uint64_t x104, uint8_t x105 = addcarryx_u64(0x0, x68, x80);
- uint64_t x107, uint8_t x108 = addcarryx_u64(x105, x71, x92);
- uint64_t x110, uint8_t x111 = addcarryx_u64(x108, x74, x95);
- uint64_t x113, uint8_t x114 = addcarryx_u64(x111, x77, x98);
- uint64_t x116, uint8_t x117 = addcarryx_u64(x114, x78, x101);
- uint64_t x119, uint64_t x120 = mulx_u64(x104, 0xffffffffffffffffL);
- uint64_t x122, uint64_t x123 = mulx_u64(x104, 0xffffefffffffffffL);
- uint64_t x125, uint64_t x126 = mulx_u64(x104, 0xffffffffffffffffL);
- uint64_t x128, uint64_t x129 = mulx_u64(x104, 0xffffff);
- uint64_t x131, uint8_t x132 = addcarryx_u64(0x0, x120, x122);
- uint64_t x134, uint8_t x135 = addcarryx_u64(x132, x123, x125);
- uint64_t x137, uint8_t x138 = addcarryx_u64(x135, x126, x128);
- uint64_t x140, uint8_t _ = addcarryx_u64(0x0, x138, x129);
- uint64_t _, uint8_t x144 = addcarryx_u64(0x0, x104, x119);
- uint64_t x146, uint8_t x147 = addcarryx_u64(x144, x107, x131);
- uint64_t x149, uint8_t x150 = addcarryx_u64(x147, x110, x134);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x113, x137);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x116, x140);
- uint8_t x157 = (x156 + x117);
- uint64_t x159, uint64_t x160 = mulx_u64(x9, x11);
- uint64_t x162, uint64_t x163 = mulx_u64(x9, x13);
- uint64_t x165, uint64_t x166 = mulx_u64(x9, x15);
- uint64_t x168, uint64_t x169 = mulx_u64(x9, x14);
- uint64_t x171, uint8_t x172 = addcarryx_u64(0x0, x160, x162);
- uint64_t x174, uint8_t x175 = addcarryx_u64(x172, x163, x165);
- uint64_t x177, uint8_t x178 = addcarryx_u64(x175, x166, x168);
- uint64_t x180, uint8_t _ = addcarryx_u64(0x0, x178, x169);
- uint64_t x183, uint8_t x184 = addcarryx_u64(0x0, x146, x159);
- uint64_t x186, uint8_t x187 = addcarryx_u64(x184, x149, x171);
- uint64_t x189, uint8_t x190 = addcarryx_u64(x187, x152, x174);
- uint64_t x192, uint8_t x193 = addcarryx_u64(x190, x155, x177);
- uint64_t x195, uint8_t x196 = addcarryx_u64(x193, x157, x180);
- uint64_t x198, uint64_t x199 = mulx_u64(x183, 0xffffffffffffffffL);
- uint64_t x201, uint64_t x202 = mulx_u64(x183, 0xffffefffffffffffL);
- uint64_t x204, uint64_t x205 = mulx_u64(x183, 0xffffffffffffffffL);
- uint64_t x207, uint64_t x208 = mulx_u64(x183, 0xffffff);
- uint64_t x210, uint8_t x211 = addcarryx_u64(0x0, x199, x201);
- uint64_t x213, uint8_t x214 = addcarryx_u64(x211, x202, x204);
- uint64_t x216, uint8_t x217 = addcarryx_u64(x214, x205, x207);
- uint64_t x219, uint8_t _ = addcarryx_u64(0x0, x217, x208);
- uint64_t _, uint8_t x223 = addcarryx_u64(0x0, x183, x198);
- uint64_t x225, uint8_t x226 = addcarryx_u64(x223, x186, x210);
- uint64_t x228, uint8_t x229 = addcarryx_u64(x226, x189, x213);
- uint64_t x231, uint8_t x232 = addcarryx_u64(x229, x192, x216);
- uint64_t x234, uint8_t x235 = addcarryx_u64(x232, x195, x219);
- uint8_t x236 = (x235 + x196);
- uint64_t x238, uint64_t x239 = mulx_u64(x8, x11);
- uint64_t x241, uint64_t x242 = mulx_u64(x8, x13);
- uint64_t x244, uint64_t x245 = mulx_u64(x8, x15);
- uint64_t x247, uint64_t x248 = mulx_u64(x8, x14);
- uint64_t x250, uint8_t x251 = addcarryx_u64(0x0, x239, x241);
- uint64_t x253, uint8_t x254 = addcarryx_u64(x251, x242, x244);
- uint64_t x256, uint8_t x257 = addcarryx_u64(x254, x245, x247);
- uint64_t x259, uint8_t _ = addcarryx_u64(0x0, x257, x248);
- uint64_t x262, uint8_t x263 = addcarryx_u64(0x0, x225, x238);
- uint64_t x265, uint8_t x266 = addcarryx_u64(x263, x228, x250);
- uint64_t x268, uint8_t x269 = addcarryx_u64(x266, x231, x253);
- uint64_t x271, uint8_t x272 = addcarryx_u64(x269, x234, x256);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x236, x259);
- uint64_t x277, uint64_t x278 = mulx_u64(x262, 0xffffffffffffffffL);
- uint64_t x280, uint64_t x281 = mulx_u64(x262, 0xffffefffffffffffL);
- uint64_t x283, uint64_t x284 = mulx_u64(x262, 0xffffffffffffffffL);
- uint64_t x286, uint64_t x287 = mulx_u64(x262, 0xffffff);
- uint64_t x289, uint8_t x290 = addcarryx_u64(0x0, x278, x280);
- uint64_t x292, uint8_t x293 = addcarryx_u64(x290, x281, x283);
- uint64_t x295, uint8_t x296 = addcarryx_u64(x293, x284, x286);
- uint64_t x298, uint8_t _ = addcarryx_u64(0x0, x296, x287);
- uint64_t _, uint8_t x302 = addcarryx_u64(0x0, x262, x277);
- uint64_t x304, uint8_t x305 = addcarryx_u64(x302, x265, x289);
- uint64_t x307, uint8_t x308 = addcarryx_u64(x305, x268, x292);
- uint64_t x310, uint8_t x311 = addcarryx_u64(x308, x271, x295);
- uint64_t x313, uint8_t x314 = addcarryx_u64(x311, x274, x298);
- uint8_t x315 = (x314 + x275);
- uint64_t x317, uint8_t x318 = subborrow_u64(0x0, x304, 0xffffffffffffffffL);
- uint64_t x320, uint8_t x321 = subborrow_u64(x318, x307, 0xffffefffffffffffL);
- uint64_t x323, uint8_t x324 = subborrow_u64(x321, x310, 0xffffffffffffffffL);
- uint64_t x326, uint8_t x327 = subborrow_u64(x324, x313, 0xffffff);
- uint64_t _, uint8_t x330 = subborrow_u64(x327, x315, 0x0);
- uint64_t x331 = cmovznz64(x330, x326, x313);
- uint64_t x332 = cmovznz64(x330, x323, x310);
- uint64_t x333 = cmovznz64(x330, x320, x307);
- uint64_t x334 = cmovznz64(x330, x317, x304);
- return (x331, x332, x333, x334))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e216m2e108m1_4limbs/femulDisplay.v b/src/Specific/montgomery64_2e216m2e108m1_4limbs/femulDisplay.v
deleted file mode 100644
index 438efaade..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e216m2e108m1_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e216m2e108m1_4limbs/fenz.c b/src/Specific/montgomery64_2e216m2e108m1_4limbs/fenz.c
deleted file mode 100644
index 7541094ff..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x7 = (x6 | x5);
- { uint64_t x8 = (x4 | x7);
- { uint64_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e216m2e108m1_4limbs/fenz.v b/src/Specific/montgomery64_2e216m2e108m1_4limbs/fenz.v
deleted file mode 100644
index f8e2faebf..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e216m2e108m1_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e216m2e108m1_4limbs/fenzDisplay.log b/src/Specific/montgomery64_2e216m2e108m1_4limbs/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e216m2e108m1_4limbs/fenzDisplay.v b/src/Specific/montgomery64_2e216m2e108m1_4limbs/fenzDisplay.v
deleted file mode 100644
index fb39ad201..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e216m2e108m1_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e216m2e108m1_4limbs/feopp.c b/src/Specific/montgomery64_2e216m2e108m1_4limbs/feopp.c
deleted file mode 100644
index 78aa58a09..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/feopp.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feopp(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8; uint8_t x9 = _subborrow_u64(0x0, 0x0, x2, &x8);
- { uint64_t x11; uint8_t x12 = _subborrow_u64(x9, 0x0, x4, &x11);
- { uint64_t x14; uint8_t x15 = _subborrow_u64(x12, 0x0, x6, &x14);
- { uint64_t x17; uint8_t x18 = _subborrow_u64(x15, 0x0, x5, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xffffffffffffffffL);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x8, x20, &x22);
- { uint64_t x24 = (x19 & 0xffffefffffffffffL);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x23, x11, x24, &x26);
- { uint64_t x28 = (x19 & 0xffffffffffffffffL);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x27, x14, x28, &x30);
- { uint64_t x32 = (x19 & 0xffffff);
- { uint64_t x34; uint8_t _ = _addcarryx_u64(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e216m2e108m1_4limbs/feopp.v b/src/Specific/montgomery64_2e216m2e108m1_4limbs/feopp.v
deleted file mode 100644
index 4f7c9a494..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e216m2e108m1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e216m2e108m1_4limbs/feoppDisplay.log b/src/Specific/montgomery64_2e216m2e108m1_4limbs/feoppDisplay.log
deleted file mode 100644
index 70322fe03..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xffffffffffffffffL);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffefffffffffffL);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x28 = (x19 & 0xffffffffffffffffL);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x27, x14, x28);
- uint64_t x32 = (x19 & 0xffffff);
- uint64_t x34, uint8_t _ = addcarryx_u64(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e216m2e108m1_4limbs/feoppDisplay.v b/src/Specific/montgomery64_2e216m2e108m1_4limbs/feoppDisplay.v
deleted file mode 100644
index aa876f5ed..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e216m2e108m1_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e216m2e108m1_4limbs/fesquare.c b/src/Specific/montgomery64_2e216m2e108m1_4limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e216m2e108m1_4limbs/fesub.c b/src/Specific/montgomery64_2e216m2e108m1_4limbs/fesub.c
deleted file mode 100644
index 74132016f..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/fesub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _subborrow_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _subborrow_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _subborrow_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u64(x24, x8, x14, &x26);
- { uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- { uint64_t x29 = (x28 & 0xffffffffffffffffL);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(0x0, x17, x29, &x31);
- { uint64_t x33 = (x28 & 0xffffefffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x20, x33, &x35);
- { uint64_t x37 = (x28 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x23, x37, &x39);
- { uint64_t x41 = (x28 & 0xffffff);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x26, x41, &x43);
- out[0] = x31;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e216m2e108m1_4limbs/fesub.v b/src/Specific/montgomery64_2e216m2e108m1_4limbs/fesub.v
deleted file mode 100644
index d916bc6a4..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e216m2e108m1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e216m2e108m1_4limbs/fesubDisplay.log b/src/Specific/montgomery64_2e216m2e108m1_4limbs/fesubDisplay.log
deleted file mode 100644
index 7d9995253..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint64_t x29 = (x28 & 0xffffffffffffffffL);
- uint64_t x31, uint8_t x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffefffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x37 = (x28 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x23, x37);
- uint64_t x41 = (x28 & 0xffffff);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x26, x41);
- (Return x43, Return x39, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e216m2e108m1_4limbs/fesubDisplay.v b/src/Specific/montgomery64_2e216m2e108m1_4limbs/fesubDisplay.v
deleted file mode 100644
index 692657b3f..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e216m2e108m1_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e216m2e108m1_4limbs/py_interpreter.sh b/src/Specific/montgomery64_2e216m2e108m1_4limbs/py_interpreter.sh
deleted file mode 100755
index 57e84d282..000000000
--- a/src/Specific/montgomery64_2e216m2e108m1_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**216 - 2**108 - 1' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e221m3_4limbs/CurveParameters.v b/src/Specific/montgomery64_2e221m3_4limbs/CurveParameters.v
deleted file mode 100644
index 2eb4ee31e..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^221 - 3
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 64;
- bitwidth := 64;
- s := 2^221;
- c := [(1, 3)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e221m3_4limbs/Synthesis.v b/src/Specific/montgomery64_2e221m3_4limbs/Synthesis.v
deleted file mode 100644
index e7ed95c62..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e221m3_4limbs.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/montgomery64_2e221m3_4limbs/compiler.sh b/src/Specific/montgomery64_2e221m3_4limbs/compiler.sh
deleted file mode 100755
index e04386f64..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<221) - 3' "$@"
diff --git a/src/Specific/montgomery64_2e221m3_4limbs/compilerxx.sh b/src/Specific/montgomery64_2e221m3_4limbs/compilerxx.sh
deleted file mode 100755
index d7f492030..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<221) - 3' "$@"
diff --git a/src/Specific/montgomery64_2e221m3_4limbs/feadd.c b/src/Specific/montgomery64_2e221m3_4limbs/feadd.c
deleted file mode 100644
index 24f858061..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _addcarryx_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _addcarryx_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x24, x8, x14, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u64(0x0, x17, 0xfffffffffffffffdL, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u64(x30, x20, 0xffffffffffffffffL, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u64(x33, x23, 0xffffffffffffffffL, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u64(x36, x26, 0x1fffffff, &x38);
- { uint64_t _; uint8_t x42 = _subborrow_u64(x39, x27, 0x0, &_);
- { uint64_t x43 = cmovznz64(x42, x38, x26);
- { uint64_t x44 = cmovznz64(x42, x35, x23);
- { uint64_t x45 = cmovznz64(x42, x32, x20);
- { uint64_t x46 = cmovznz64(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e221m3_4limbs/feadd.v b/src/Specific/montgomery64_2e221m3_4limbs/feadd.v
deleted file mode 100644
index ba27adcaf..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e221m3_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e221m3_4limbs/feaddDisplay.log b/src/Specific/montgomery64_2e221m3_4limbs/feaddDisplay.log
deleted file mode 100644
index 212988003..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t x30 = subborrow_u64(0x0, x17, 0xfffffffffffffffdL);
- uint64_t x32, uint8_t x33 = subborrow_u64(x30, x20, 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = subborrow_u64(x33, x23, 0xffffffffffffffffL);
- uint64_t x38, uint8_t x39 = subborrow_u64(x36, x26, 0x1fffffff);
- uint64_t _, uint8_t x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e221m3_4limbs/feaddDisplay.v b/src/Specific/montgomery64_2e221m3_4limbs/feaddDisplay.v
deleted file mode 100644
index da667cf63..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e221m3_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e221m3_4limbs/femul.c b/src/Specific/montgomery64_2e221m3_4limbs/femul.c
deleted file mode 100644
index 9ef17c44b..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/femul.c
+++ /dev/null
@@ -1,130 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x18; uint64_t x17 = _mulx_u64(x5, x11, &x18);
- { uint64_t x21; uint64_t x20 = _mulx_u64(x5, x13, &x21);
- { uint64_t x24; uint64_t x23 = _mulx_u64(x5, x15, &x24);
- { uint64_t x27; uint64_t x26 = _mulx_u64(x5, x14, &x27);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x18, x20, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x21, x23, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x24, x26, &x35);
- { uint64_t x38; uint8_t _ = _addcarryx_u64(0x0, x36, x27, &x38);
- { uint64_t _; uint64_t x41 = _mulx_u64(x17, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x45; uint64_t x44 = _mulx_u64(x41, 0xfffffffffffffffdL, &x45);
- { uint64_t x48; uint64_t x47 = _mulx_u64(x41, 0xffffffffffffffffL, &x48);
- { uint64_t x51; uint64_t x50 = _mulx_u64(x41, 0xffffffffffffffffL, &x51);
- { uint64_t x54; uint64_t x53 = _mulx_u64(x41, 0x1fffffff, &x54);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(0x0, x45, x47, &x56);
- { uint64_t x59; uint8_t x60 = _addcarryx_u64(x57, x48, x50, &x59);
- { uint64_t x62; uint8_t x63 = _addcarryx_u64(x60, x51, x53, &x62);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(0x0, x63, x54, &x65);
- { uint64_t _; uint8_t x69 = _addcarryx_u64(0x0, x17, x44, &_);
- { uint64_t x71; uint8_t x72 = _addcarryx_u64(x69, x29, x56, &x71);
- { uint64_t x74; uint8_t x75 = _addcarryx_u64(x72, x32, x59, &x74);
- { uint64_t x77; uint8_t x78 = _addcarryx_u64(x75, x35, x62, &x77);
- { uint64_t x80; uint8_t x81 = _addcarryx_u64(x78, x38, x65, &x80);
- { uint64_t x84; uint64_t x83 = _mulx_u64(x7, x11, &x84);
- { uint64_t x87; uint64_t x86 = _mulx_u64(x7, x13, &x87);
- { uint64_t x90; uint64_t x89 = _mulx_u64(x7, x15, &x90);
- { uint64_t x93; uint64_t x92 = _mulx_u64(x7, x14, &x93);
- { uint64_t x95; uint8_t x96 = _addcarryx_u64(0x0, x84, x86, &x95);
- { uint64_t x98; uint8_t x99 = _addcarryx_u64(x96, x87, x89, &x98);
- { uint64_t x101; uint8_t x102 = _addcarryx_u64(x99, x90, x92, &x101);
- { uint64_t x104; uint8_t _ = _addcarryx_u64(0x0, x102, x93, &x104);
- { uint64_t x107; uint8_t x108 = _addcarryx_u64(0x0, x71, x83, &x107);
- { uint64_t x110; uint8_t x111 = _addcarryx_u64(x108, x74, x95, &x110);
- { uint64_t x113; uint8_t x114 = _addcarryx_u64(x111, x77, x98, &x113);
- { uint64_t x116; uint8_t x117 = _addcarryx_u64(x114, x80, x101, &x116);
- { uint64_t x119; uint8_t x120 = _addcarryx_u64(x117, x81, x104, &x119);
- { uint64_t _; uint64_t x122 = _mulx_u64(x107, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x126; uint64_t x125 = _mulx_u64(x122, 0xfffffffffffffffdL, &x126);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x122, 0xffffffffffffffffL, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x122, 0xffffffffffffffffL, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x122, 0x1fffffff, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x126, x128, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x129, x131, &x140);
- { uint64_t x143; uint8_t x144 = _addcarryx_u64(x141, x132, x134, &x143);
- { uint64_t x146; uint8_t _ = _addcarryx_u64(0x0, x144, x135, &x146);
- { uint64_t _; uint8_t x150 = _addcarryx_u64(0x0, x107, x125, &_);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x110, x137, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x113, x140, &x155);
- { uint64_t x158; uint8_t x159 = _addcarryx_u64(x156, x116, x143, &x158);
- { uint64_t x161; uint8_t x162 = _addcarryx_u64(x159, x119, x146, &x161);
- { uint8_t x163 = (x162 + x120);
- { uint64_t x166; uint64_t x165 = _mulx_u64(x9, x11, &x166);
- { uint64_t x169; uint64_t x168 = _mulx_u64(x9, x13, &x169);
- { uint64_t x172; uint64_t x171 = _mulx_u64(x9, x15, &x172);
- { uint64_t x175; uint64_t x174 = _mulx_u64(x9, x14, &x175);
- { uint64_t x177; uint8_t x178 = _addcarryx_u64(0x0, x166, x168, &x177);
- { uint64_t x180; uint8_t x181 = _addcarryx_u64(x178, x169, x171, &x180);
- { uint64_t x183; uint8_t x184 = _addcarryx_u64(x181, x172, x174, &x183);
- { uint64_t x186; uint8_t _ = _addcarryx_u64(0x0, x184, x175, &x186);
- { uint64_t x189; uint8_t x190 = _addcarryx_u64(0x0, x152, x165, &x189);
- { uint64_t x192; uint8_t x193 = _addcarryx_u64(x190, x155, x177, &x192);
- { uint64_t x195; uint8_t x196 = _addcarryx_u64(x193, x158, x180, &x195);
- { uint64_t x198; uint8_t x199 = _addcarryx_u64(x196, x161, x183, &x198);
- { uint64_t x201; uint8_t x202 = _addcarryx_u64(x199, x163, x186, &x201);
- { uint64_t _; uint64_t x204 = _mulx_u64(x189, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x208; uint64_t x207 = _mulx_u64(x204, 0xfffffffffffffffdL, &x208);
- { uint64_t x211; uint64_t x210 = _mulx_u64(x204, 0xffffffffffffffffL, &x211);
- { uint64_t x214; uint64_t x213 = _mulx_u64(x204, 0xffffffffffffffffL, &x214);
- { uint64_t x217; uint64_t x216 = _mulx_u64(x204, 0x1fffffff, &x217);
- { uint64_t x219; uint8_t x220 = _addcarryx_u64(0x0, x208, x210, &x219);
- { uint64_t x222; uint8_t x223 = _addcarryx_u64(x220, x211, x213, &x222);
- { uint64_t x225; uint8_t x226 = _addcarryx_u64(x223, x214, x216, &x225);
- { uint64_t x228; uint8_t _ = _addcarryx_u64(0x0, x226, x217, &x228);
- { uint64_t _; uint8_t x232 = _addcarryx_u64(0x0, x189, x207, &_);
- { uint64_t x234; uint8_t x235 = _addcarryx_u64(x232, x192, x219, &x234);
- { uint64_t x237; uint8_t x238 = _addcarryx_u64(x235, x195, x222, &x237);
- { uint64_t x240; uint8_t x241 = _addcarryx_u64(x238, x198, x225, &x240);
- { uint64_t x243; uint8_t x244 = _addcarryx_u64(x241, x201, x228, &x243);
- { uint8_t x245 = (x244 + x202);
- { uint64_t x248; uint64_t x247 = _mulx_u64(x8, x11, &x248);
- { uint64_t x251; uint64_t x250 = _mulx_u64(x8, x13, &x251);
- { uint64_t x254; uint64_t x253 = _mulx_u64(x8, x15, &x254);
- { uint64_t x257; uint64_t x256 = _mulx_u64(x8, x14, &x257);
- { uint64_t x259; uint8_t x260 = _addcarryx_u64(0x0, x248, x250, &x259);
- { uint64_t x262; uint8_t x263 = _addcarryx_u64(x260, x251, x253, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(x263, x254, x256, &x265);
- { uint64_t x268; uint8_t _ = _addcarryx_u64(0x0, x266, x257, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(0x0, x234, x247, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x237, x259, &x274);
- { uint64_t x277; uint8_t x278 = _addcarryx_u64(x275, x240, x262, &x277);
- { uint64_t x280; uint8_t x281 = _addcarryx_u64(x278, x243, x265, &x280);
- { uint64_t x283; uint8_t x284 = _addcarryx_u64(x281, x245, x268, &x283);
- { uint64_t _; uint64_t x286 = _mulx_u64(x271, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x290; uint64_t x289 = _mulx_u64(x286, 0xfffffffffffffffdL, &x290);
- { uint64_t x293; uint64_t x292 = _mulx_u64(x286, 0xffffffffffffffffL, &x293);
- { uint64_t x296; uint64_t x295 = _mulx_u64(x286, 0xffffffffffffffffL, &x296);
- { uint64_t x299; uint64_t x298 = _mulx_u64(x286, 0x1fffffff, &x299);
- { uint64_t x301; uint8_t x302 = _addcarryx_u64(0x0, x290, x292, &x301);
- { uint64_t x304; uint8_t x305 = _addcarryx_u64(x302, x293, x295, &x304);
- { uint64_t x307; uint8_t x308 = _addcarryx_u64(x305, x296, x298, &x307);
- { uint64_t x310; uint8_t _ = _addcarryx_u64(0x0, x308, x299, &x310);
- { uint64_t _; uint8_t x314 = _addcarryx_u64(0x0, x271, x289, &_);
- { uint64_t x316; uint8_t x317 = _addcarryx_u64(x314, x274, x301, &x316);
- { uint64_t x319; uint8_t x320 = _addcarryx_u64(x317, x277, x304, &x319);
- { uint64_t x322; uint8_t x323 = _addcarryx_u64(x320, x280, x307, &x322);
- { uint64_t x325; uint8_t x326 = _addcarryx_u64(x323, x283, x310, &x325);
- { uint8_t x327 = (x326 + x284);
- { uint64_t x329; uint8_t x330 = _subborrow_u64(0x0, x316, 0xfffffffffffffffdL, &x329);
- { uint64_t x332; uint8_t x333 = _subborrow_u64(x330, x319, 0xffffffffffffffffL, &x332);
- { uint64_t x335; uint8_t x336 = _subborrow_u64(x333, x322, 0xffffffffffffffffL, &x335);
- { uint64_t x338; uint8_t x339 = _subborrow_u64(x336, x325, 0x1fffffff, &x338);
- { uint64_t _; uint8_t x342 = _subborrow_u64(x339, x327, 0x0, &_);
- { uint64_t x343 = cmovznz64(x342, x338, x325);
- { uint64_t x344 = cmovznz64(x342, x335, x322);
- { uint64_t x345 = cmovznz64(x342, x332, x319);
- { uint64_t x346 = cmovznz64(x342, x329, x316);
- out[0] = x346;
- out[1] = x345;
- out[2] = x344;
- out[3] = x343;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e221m3_4limbs/femul.v b/src/Specific/montgomery64_2e221m3_4limbs/femul.v
deleted file mode 100644
index 7ee4bd6dd..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e221m3_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e221m3_4limbs/femulDisplay.log b/src/Specific/montgomery64_2e221m3_4limbs/femulDisplay.log
deleted file mode 100644
index b50291902..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,122 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t _ = mulx_u64(x17, 0xaaaaaaaaaaaaaaabL);
- uint64_t x44, uint64_t x45 = mulx_u64(x41, 0xfffffffffffffffdL);
- uint64_t x47, uint64_t x48 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x50, uint64_t x51 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x53, uint64_t x54 = mulx_u64(x41, 0x1fffffff);
- uint64_t x56, uint8_t x57 = addcarryx_u64(0x0, x45, x47);
- uint64_t x59, uint8_t x60 = addcarryx_u64(x57, x48, x50);
- uint64_t x62, uint8_t x63 = addcarryx_u64(x60, x51, x53);
- uint64_t x65, uint8_t _ = addcarryx_u64(0x0, x63, x54);
- uint64_t _, uint8_t x69 = addcarryx_u64(0x0, x17, x44);
- uint64_t x71, uint8_t x72 = addcarryx_u64(x69, x29, x56);
- uint64_t x74, uint8_t x75 = addcarryx_u64(x72, x32, x59);
- uint64_t x77, uint8_t x78 = addcarryx_u64(x75, x35, x62);
- uint64_t x80, uint8_t x81 = addcarryx_u64(x78, x38, x65);
- uint64_t x83, uint64_t x84 = mulx_u64(x7, x11);
- uint64_t x86, uint64_t x87 = mulx_u64(x7, x13);
- uint64_t x89, uint64_t x90 = mulx_u64(x7, x15);
- uint64_t x92, uint64_t x93 = mulx_u64(x7, x14);
- uint64_t x95, uint8_t x96 = addcarryx_u64(0x0, x84, x86);
- uint64_t x98, uint8_t x99 = addcarryx_u64(x96, x87, x89);
- uint64_t x101, uint8_t x102 = addcarryx_u64(x99, x90, x92);
- uint64_t x104, uint8_t _ = addcarryx_u64(0x0, x102, x93);
- uint64_t x107, uint8_t x108 = addcarryx_u64(0x0, x71, x83);
- uint64_t x110, uint8_t x111 = addcarryx_u64(x108, x74, x95);
- uint64_t x113, uint8_t x114 = addcarryx_u64(x111, x77, x98);
- uint64_t x116, uint8_t x117 = addcarryx_u64(x114, x80, x101);
- uint64_t x119, uint8_t x120 = addcarryx_u64(x117, x81, x104);
- uint64_t x122, uint64_t _ = mulx_u64(x107, 0xaaaaaaaaaaaaaaabL);
- uint64_t x125, uint64_t x126 = mulx_u64(x122, 0xfffffffffffffffdL);
- uint64_t x128, uint64_t x129 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x131, uint64_t x132 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x134, uint64_t x135 = mulx_u64(x122, 0x1fffffff);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x126, x128);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x129, x131);
- uint64_t x143, uint8_t x144 = addcarryx_u64(x141, x132, x134);
- uint64_t x146, uint8_t _ = addcarryx_u64(0x0, x144, x135);
- uint64_t _, uint8_t x150 = addcarryx_u64(0x0, x107, x125);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x110, x137);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x113, x140);
- uint64_t x158, uint8_t x159 = addcarryx_u64(x156, x116, x143);
- uint64_t x161, uint8_t x162 = addcarryx_u64(x159, x119, x146);
- uint8_t x163 = (x162 + x120);
- uint64_t x165, uint64_t x166 = mulx_u64(x9, x11);
- uint64_t x168, uint64_t x169 = mulx_u64(x9, x13);
- uint64_t x171, uint64_t x172 = mulx_u64(x9, x15);
- uint64_t x174, uint64_t x175 = mulx_u64(x9, x14);
- uint64_t x177, uint8_t x178 = addcarryx_u64(0x0, x166, x168);
- uint64_t x180, uint8_t x181 = addcarryx_u64(x178, x169, x171);
- uint64_t x183, uint8_t x184 = addcarryx_u64(x181, x172, x174);
- uint64_t x186, uint8_t _ = addcarryx_u64(0x0, x184, x175);
- uint64_t x189, uint8_t x190 = addcarryx_u64(0x0, x152, x165);
- uint64_t x192, uint8_t x193 = addcarryx_u64(x190, x155, x177);
- uint64_t x195, uint8_t x196 = addcarryx_u64(x193, x158, x180);
- uint64_t x198, uint8_t x199 = addcarryx_u64(x196, x161, x183);
- uint64_t x201, uint8_t x202 = addcarryx_u64(x199, x163, x186);
- uint64_t x204, uint64_t _ = mulx_u64(x189, 0xaaaaaaaaaaaaaaabL);
- uint64_t x207, uint64_t x208 = mulx_u64(x204, 0xfffffffffffffffdL);
- uint64_t x210, uint64_t x211 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x213, uint64_t x214 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x216, uint64_t x217 = mulx_u64(x204, 0x1fffffff);
- uint64_t x219, uint8_t x220 = addcarryx_u64(0x0, x208, x210);
- uint64_t x222, uint8_t x223 = addcarryx_u64(x220, x211, x213);
- uint64_t x225, uint8_t x226 = addcarryx_u64(x223, x214, x216);
- uint64_t x228, uint8_t _ = addcarryx_u64(0x0, x226, x217);
- uint64_t _, uint8_t x232 = addcarryx_u64(0x0, x189, x207);
- uint64_t x234, uint8_t x235 = addcarryx_u64(x232, x192, x219);
- uint64_t x237, uint8_t x238 = addcarryx_u64(x235, x195, x222);
- uint64_t x240, uint8_t x241 = addcarryx_u64(x238, x198, x225);
- uint64_t x243, uint8_t x244 = addcarryx_u64(x241, x201, x228);
- uint8_t x245 = (x244 + x202);
- uint64_t x247, uint64_t x248 = mulx_u64(x8, x11);
- uint64_t x250, uint64_t x251 = mulx_u64(x8, x13);
- uint64_t x253, uint64_t x254 = mulx_u64(x8, x15);
- uint64_t x256, uint64_t x257 = mulx_u64(x8, x14);
- uint64_t x259, uint8_t x260 = addcarryx_u64(0x0, x248, x250);
- uint64_t x262, uint8_t x263 = addcarryx_u64(x260, x251, x253);
- uint64_t x265, uint8_t x266 = addcarryx_u64(x263, x254, x256);
- uint64_t x268, uint8_t _ = addcarryx_u64(0x0, x266, x257);
- uint64_t x271, uint8_t x272 = addcarryx_u64(0x0, x234, x247);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x237, x259);
- uint64_t x277, uint8_t x278 = addcarryx_u64(x275, x240, x262);
- uint64_t x280, uint8_t x281 = addcarryx_u64(x278, x243, x265);
- uint64_t x283, uint8_t x284 = addcarryx_u64(x281, x245, x268);
- uint64_t x286, uint64_t _ = mulx_u64(x271, 0xaaaaaaaaaaaaaaabL);
- uint64_t x289, uint64_t x290 = mulx_u64(x286, 0xfffffffffffffffdL);
- uint64_t x292, uint64_t x293 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x295, uint64_t x296 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x298, uint64_t x299 = mulx_u64(x286, 0x1fffffff);
- uint64_t x301, uint8_t x302 = addcarryx_u64(0x0, x290, x292);
- uint64_t x304, uint8_t x305 = addcarryx_u64(x302, x293, x295);
- uint64_t x307, uint8_t x308 = addcarryx_u64(x305, x296, x298);
- uint64_t x310, uint8_t _ = addcarryx_u64(0x0, x308, x299);
- uint64_t _, uint8_t x314 = addcarryx_u64(0x0, x271, x289);
- uint64_t x316, uint8_t x317 = addcarryx_u64(x314, x274, x301);
- uint64_t x319, uint8_t x320 = addcarryx_u64(x317, x277, x304);
- uint64_t x322, uint8_t x323 = addcarryx_u64(x320, x280, x307);
- uint64_t x325, uint8_t x326 = addcarryx_u64(x323, x283, x310);
- uint8_t x327 = (x326 + x284);
- uint64_t x329, uint8_t x330 = subborrow_u64(0x0, x316, 0xfffffffffffffffdL);
- uint64_t x332, uint8_t x333 = subborrow_u64(x330, x319, 0xffffffffffffffffL);
- uint64_t x335, uint8_t x336 = subborrow_u64(x333, x322, 0xffffffffffffffffL);
- uint64_t x338, uint8_t x339 = subborrow_u64(x336, x325, 0x1fffffff);
- uint64_t _, uint8_t x342 = subborrow_u64(x339, x327, 0x0);
- uint64_t x343 = cmovznz64(x342, x338, x325);
- uint64_t x344 = cmovznz64(x342, x335, x322);
- uint64_t x345 = cmovznz64(x342, x332, x319);
- uint64_t x346 = cmovznz64(x342, x329, x316);
- return (x343, x344, x345, x346))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e221m3_4limbs/femulDisplay.v b/src/Specific/montgomery64_2e221m3_4limbs/femulDisplay.v
deleted file mode 100644
index 6107f200d..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e221m3_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e221m3_4limbs/fenz.c b/src/Specific/montgomery64_2e221m3_4limbs/fenz.c
deleted file mode 100644
index 7541094ff..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x7 = (x6 | x5);
- { uint64_t x8 = (x4 | x7);
- { uint64_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e221m3_4limbs/fenz.v b/src/Specific/montgomery64_2e221m3_4limbs/fenz.v
deleted file mode 100644
index 75c98b024..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e221m3_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e221m3_4limbs/fenzDisplay.log b/src/Specific/montgomery64_2e221m3_4limbs/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e221m3_4limbs/fenzDisplay.v b/src/Specific/montgomery64_2e221m3_4limbs/fenzDisplay.v
deleted file mode 100644
index 72a05c3d0..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e221m3_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e221m3_4limbs/feopp.c b/src/Specific/montgomery64_2e221m3_4limbs/feopp.c
deleted file mode 100644
index 1f92ce83d..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/feopp.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feopp(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8; uint8_t x9 = _subborrow_u64(0x0, 0x0, x2, &x8);
- { uint64_t x11; uint8_t x12 = _subborrow_u64(x9, 0x0, x4, &x11);
- { uint64_t x14; uint8_t x15 = _subborrow_u64(x12, 0x0, x6, &x14);
- { uint64_t x17; uint8_t x18 = _subborrow_u64(x15, 0x0, x5, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xfffffffffffffffdL);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x8, x20, &x22);
- { uint64_t x24 = (x19 & 0xffffffffffffffffL);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x23, x11, x24, &x26);
- { uint64_t x28 = (x19 & 0xffffffffffffffffL);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x27, x14, x28, &x30);
- { uint64_t x32 = (x19 & 0x1fffffff);
- { uint64_t x34; uint8_t _ = _addcarryx_u64(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e221m3_4limbs/feopp.v b/src/Specific/montgomery64_2e221m3_4limbs/feopp.v
deleted file mode 100644
index 6d0b247e3..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e221m3_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e221m3_4limbs/feoppDisplay.log b/src/Specific/montgomery64_2e221m3_4limbs/feoppDisplay.log
deleted file mode 100644
index f298014bc..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xfffffffffffffffdL);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffffffffffffffL);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x28 = (x19 & 0xffffffffffffffffL);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x27, x14, x28);
- uint64_t x32 = (x19 & 0x1fffffff);
- uint64_t x34, uint8_t _ = addcarryx_u64(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e221m3_4limbs/feoppDisplay.v b/src/Specific/montgomery64_2e221m3_4limbs/feoppDisplay.v
deleted file mode 100644
index cdefdba08..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e221m3_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e221m3_4limbs/fesquare.c b/src/Specific/montgomery64_2e221m3_4limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e221m3_4limbs/fesub.c b/src/Specific/montgomery64_2e221m3_4limbs/fesub.c
deleted file mode 100644
index 7db2e8c61..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/fesub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _subborrow_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _subborrow_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _subborrow_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u64(x24, x8, x14, &x26);
- { uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- { uint64_t x29 = (x28 & 0xfffffffffffffffdL);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(0x0, x17, x29, &x31);
- { uint64_t x33 = (x28 & 0xffffffffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x20, x33, &x35);
- { uint64_t x37 = (x28 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x23, x37, &x39);
- { uint64_t x41 = (x28 & 0x1fffffff);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x26, x41, &x43);
- out[0] = x31;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e221m3_4limbs/fesub.v b/src/Specific/montgomery64_2e221m3_4limbs/fesub.v
deleted file mode 100644
index d6843bca4..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e221m3_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e221m3_4limbs/fesubDisplay.log b/src/Specific/montgomery64_2e221m3_4limbs/fesubDisplay.log
deleted file mode 100644
index 3c9cbaee3..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint64_t x29 = (x28 & 0xfffffffffffffffdL);
- uint64_t x31, uint8_t x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x37 = (x28 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x23, x37);
- uint64_t x41 = (x28 & 0x1fffffff);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x26, x41);
- (Return x43, Return x39, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e221m3_4limbs/fesubDisplay.v b/src/Specific/montgomery64_2e221m3_4limbs/fesubDisplay.v
deleted file mode 100644
index 378491963..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e221m3_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e221m3_4limbs/py_interpreter.sh b/src/Specific/montgomery64_2e221m3_4limbs/py_interpreter.sh
deleted file mode 100755
index 0d3b6ff7f..000000000
--- a/src/Specific/montgomery64_2e221m3_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**221 - 3' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e222m117_4limbs/CurveParameters.v b/src/Specific/montgomery64_2e222m117_4limbs/CurveParameters.v
deleted file mode 100644
index 894baebcb..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^222 - 117
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 64;
- bitwidth := 64;
- s := 2^222;
- c := [(1, 117)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e222m117_4limbs/Synthesis.v b/src/Specific/montgomery64_2e222m117_4limbs/Synthesis.v
deleted file mode 100644
index 7ab729b8f..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e222m117_4limbs.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/montgomery64_2e222m117_4limbs/compiler.sh b/src/Specific/montgomery64_2e222m117_4limbs/compiler.sh
deleted file mode 100755
index 4c026c91c..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<222) - 117' "$@"
diff --git a/src/Specific/montgomery64_2e222m117_4limbs/compilerxx.sh b/src/Specific/montgomery64_2e222m117_4limbs/compilerxx.sh
deleted file mode 100755
index f8e7e244c..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<222) - 117' "$@"
diff --git a/src/Specific/montgomery64_2e222m117_4limbs/feadd.c b/src/Specific/montgomery64_2e222m117_4limbs/feadd.c
deleted file mode 100644
index f91088926..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _addcarryx_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _addcarryx_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x24, x8, x14, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u64(0x0, x17, 0xffffffffffffff8bL, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u64(x30, x20, 0xffffffffffffffffL, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u64(x33, x23, 0xffffffffffffffffL, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u64(x36, x26, 0x3fffffff, &x38);
- { uint64_t _; uint8_t x42 = _subborrow_u64(x39, x27, 0x0, &_);
- { uint64_t x43 = cmovznz64(x42, x38, x26);
- { uint64_t x44 = cmovznz64(x42, x35, x23);
- { uint64_t x45 = cmovznz64(x42, x32, x20);
- { uint64_t x46 = cmovznz64(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e222m117_4limbs/feadd.v b/src/Specific/montgomery64_2e222m117_4limbs/feadd.v
deleted file mode 100644
index 52495a550..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e222m117_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e222m117_4limbs/feaddDisplay.log b/src/Specific/montgomery64_2e222m117_4limbs/feaddDisplay.log
deleted file mode 100644
index 855ae784b..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t x30 = subborrow_u64(0x0, x17, 0xffffffffffffff8bL);
- uint64_t x32, uint8_t x33 = subborrow_u64(x30, x20, 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = subborrow_u64(x33, x23, 0xffffffffffffffffL);
- uint64_t x38, uint8_t x39 = subborrow_u64(x36, x26, 0x3fffffff);
- uint64_t _, uint8_t x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e222m117_4limbs/feaddDisplay.v b/src/Specific/montgomery64_2e222m117_4limbs/feaddDisplay.v
deleted file mode 100644
index 843dae2da..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e222m117_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e222m117_4limbs/femul.c b/src/Specific/montgomery64_2e222m117_4limbs/femul.c
deleted file mode 100644
index 899159869..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/femul.c
+++ /dev/null
@@ -1,130 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x18; uint64_t x17 = _mulx_u64(x5, x11, &x18);
- { uint64_t x21; uint64_t x20 = _mulx_u64(x5, x13, &x21);
- { uint64_t x24; uint64_t x23 = _mulx_u64(x5, x15, &x24);
- { uint64_t x27; uint64_t x26 = _mulx_u64(x5, x14, &x27);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x18, x20, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x21, x23, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x24, x26, &x35);
- { uint64_t x38; uint8_t _ = _addcarryx_u64(0x0, x36, x27, &x38);
- { uint64_t _; uint64_t x41 = _mulx_u64(x17, 0xcfdcfdcfdcfdcfddL, &_);
- { uint64_t x45; uint64_t x44 = _mulx_u64(x41, 0xffffffffffffff8bL, &x45);
- { uint64_t x48; uint64_t x47 = _mulx_u64(x41, 0xffffffffffffffffL, &x48);
- { uint64_t x51; uint64_t x50 = _mulx_u64(x41, 0xffffffffffffffffL, &x51);
- { uint64_t x54; uint64_t x53 = _mulx_u64(x41, 0x3fffffff, &x54);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(0x0, x45, x47, &x56);
- { uint64_t x59; uint8_t x60 = _addcarryx_u64(x57, x48, x50, &x59);
- { uint64_t x62; uint8_t x63 = _addcarryx_u64(x60, x51, x53, &x62);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(0x0, x63, x54, &x65);
- { uint64_t _; uint8_t x69 = _addcarryx_u64(0x0, x17, x44, &_);
- { uint64_t x71; uint8_t x72 = _addcarryx_u64(x69, x29, x56, &x71);
- { uint64_t x74; uint8_t x75 = _addcarryx_u64(x72, x32, x59, &x74);
- { uint64_t x77; uint8_t x78 = _addcarryx_u64(x75, x35, x62, &x77);
- { uint64_t x80; uint8_t x81 = _addcarryx_u64(x78, x38, x65, &x80);
- { uint64_t x84; uint64_t x83 = _mulx_u64(x7, x11, &x84);
- { uint64_t x87; uint64_t x86 = _mulx_u64(x7, x13, &x87);
- { uint64_t x90; uint64_t x89 = _mulx_u64(x7, x15, &x90);
- { uint64_t x93; uint64_t x92 = _mulx_u64(x7, x14, &x93);
- { uint64_t x95; uint8_t x96 = _addcarryx_u64(0x0, x84, x86, &x95);
- { uint64_t x98; uint8_t x99 = _addcarryx_u64(x96, x87, x89, &x98);
- { uint64_t x101; uint8_t x102 = _addcarryx_u64(x99, x90, x92, &x101);
- { uint64_t x104; uint8_t _ = _addcarryx_u64(0x0, x102, x93, &x104);
- { uint64_t x107; uint8_t x108 = _addcarryx_u64(0x0, x71, x83, &x107);
- { uint64_t x110; uint8_t x111 = _addcarryx_u64(x108, x74, x95, &x110);
- { uint64_t x113; uint8_t x114 = _addcarryx_u64(x111, x77, x98, &x113);
- { uint64_t x116; uint8_t x117 = _addcarryx_u64(x114, x80, x101, &x116);
- { uint64_t x119; uint8_t x120 = _addcarryx_u64(x117, x81, x104, &x119);
- { uint64_t _; uint64_t x122 = _mulx_u64(x107, 0xcfdcfdcfdcfdcfddL, &_);
- { uint64_t x126; uint64_t x125 = _mulx_u64(x122, 0xffffffffffffff8bL, &x126);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x122, 0xffffffffffffffffL, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x122, 0xffffffffffffffffL, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x122, 0x3fffffff, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x126, x128, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x129, x131, &x140);
- { uint64_t x143; uint8_t x144 = _addcarryx_u64(x141, x132, x134, &x143);
- { uint64_t x146; uint8_t _ = _addcarryx_u64(0x0, x144, x135, &x146);
- { uint64_t _; uint8_t x150 = _addcarryx_u64(0x0, x107, x125, &_);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x110, x137, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x113, x140, &x155);
- { uint64_t x158; uint8_t x159 = _addcarryx_u64(x156, x116, x143, &x158);
- { uint64_t x161; uint8_t x162 = _addcarryx_u64(x159, x119, x146, &x161);
- { uint8_t x163 = (x162 + x120);
- { uint64_t x166; uint64_t x165 = _mulx_u64(x9, x11, &x166);
- { uint64_t x169; uint64_t x168 = _mulx_u64(x9, x13, &x169);
- { uint64_t x172; uint64_t x171 = _mulx_u64(x9, x15, &x172);
- { uint64_t x175; uint64_t x174 = _mulx_u64(x9, x14, &x175);
- { uint64_t x177; uint8_t x178 = _addcarryx_u64(0x0, x166, x168, &x177);
- { uint64_t x180; uint8_t x181 = _addcarryx_u64(x178, x169, x171, &x180);
- { uint64_t x183; uint8_t x184 = _addcarryx_u64(x181, x172, x174, &x183);
- { uint64_t x186; uint8_t _ = _addcarryx_u64(0x0, x184, x175, &x186);
- { uint64_t x189; uint8_t x190 = _addcarryx_u64(0x0, x152, x165, &x189);
- { uint64_t x192; uint8_t x193 = _addcarryx_u64(x190, x155, x177, &x192);
- { uint64_t x195; uint8_t x196 = _addcarryx_u64(x193, x158, x180, &x195);
- { uint64_t x198; uint8_t x199 = _addcarryx_u64(x196, x161, x183, &x198);
- { uint64_t x201; uint8_t x202 = _addcarryx_u64(x199, x163, x186, &x201);
- { uint64_t _; uint64_t x204 = _mulx_u64(x189, 0xcfdcfdcfdcfdcfddL, &_);
- { uint64_t x208; uint64_t x207 = _mulx_u64(x204, 0xffffffffffffff8bL, &x208);
- { uint64_t x211; uint64_t x210 = _mulx_u64(x204, 0xffffffffffffffffL, &x211);
- { uint64_t x214; uint64_t x213 = _mulx_u64(x204, 0xffffffffffffffffL, &x214);
- { uint64_t x217; uint64_t x216 = _mulx_u64(x204, 0x3fffffff, &x217);
- { uint64_t x219; uint8_t x220 = _addcarryx_u64(0x0, x208, x210, &x219);
- { uint64_t x222; uint8_t x223 = _addcarryx_u64(x220, x211, x213, &x222);
- { uint64_t x225; uint8_t x226 = _addcarryx_u64(x223, x214, x216, &x225);
- { uint64_t x228; uint8_t _ = _addcarryx_u64(0x0, x226, x217, &x228);
- { uint64_t _; uint8_t x232 = _addcarryx_u64(0x0, x189, x207, &_);
- { uint64_t x234; uint8_t x235 = _addcarryx_u64(x232, x192, x219, &x234);
- { uint64_t x237; uint8_t x238 = _addcarryx_u64(x235, x195, x222, &x237);
- { uint64_t x240; uint8_t x241 = _addcarryx_u64(x238, x198, x225, &x240);
- { uint64_t x243; uint8_t x244 = _addcarryx_u64(x241, x201, x228, &x243);
- { uint8_t x245 = (x244 + x202);
- { uint64_t x248; uint64_t x247 = _mulx_u64(x8, x11, &x248);
- { uint64_t x251; uint64_t x250 = _mulx_u64(x8, x13, &x251);
- { uint64_t x254; uint64_t x253 = _mulx_u64(x8, x15, &x254);
- { uint64_t x257; uint64_t x256 = _mulx_u64(x8, x14, &x257);
- { uint64_t x259; uint8_t x260 = _addcarryx_u64(0x0, x248, x250, &x259);
- { uint64_t x262; uint8_t x263 = _addcarryx_u64(x260, x251, x253, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(x263, x254, x256, &x265);
- { uint64_t x268; uint8_t _ = _addcarryx_u64(0x0, x266, x257, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(0x0, x234, x247, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x237, x259, &x274);
- { uint64_t x277; uint8_t x278 = _addcarryx_u64(x275, x240, x262, &x277);
- { uint64_t x280; uint8_t x281 = _addcarryx_u64(x278, x243, x265, &x280);
- { uint64_t x283; uint8_t x284 = _addcarryx_u64(x281, x245, x268, &x283);
- { uint64_t _; uint64_t x286 = _mulx_u64(x271, 0xcfdcfdcfdcfdcfddL, &_);
- { uint64_t x290; uint64_t x289 = _mulx_u64(x286, 0xffffffffffffff8bL, &x290);
- { uint64_t x293; uint64_t x292 = _mulx_u64(x286, 0xffffffffffffffffL, &x293);
- { uint64_t x296; uint64_t x295 = _mulx_u64(x286, 0xffffffffffffffffL, &x296);
- { uint64_t x299; uint64_t x298 = _mulx_u64(x286, 0x3fffffff, &x299);
- { uint64_t x301; uint8_t x302 = _addcarryx_u64(0x0, x290, x292, &x301);
- { uint64_t x304; uint8_t x305 = _addcarryx_u64(x302, x293, x295, &x304);
- { uint64_t x307; uint8_t x308 = _addcarryx_u64(x305, x296, x298, &x307);
- { uint64_t x310; uint8_t _ = _addcarryx_u64(0x0, x308, x299, &x310);
- { uint64_t _; uint8_t x314 = _addcarryx_u64(0x0, x271, x289, &_);
- { uint64_t x316; uint8_t x317 = _addcarryx_u64(x314, x274, x301, &x316);
- { uint64_t x319; uint8_t x320 = _addcarryx_u64(x317, x277, x304, &x319);
- { uint64_t x322; uint8_t x323 = _addcarryx_u64(x320, x280, x307, &x322);
- { uint64_t x325; uint8_t x326 = _addcarryx_u64(x323, x283, x310, &x325);
- { uint8_t x327 = (x326 + x284);
- { uint64_t x329; uint8_t x330 = _subborrow_u64(0x0, x316, 0xffffffffffffff8bL, &x329);
- { uint64_t x332; uint8_t x333 = _subborrow_u64(x330, x319, 0xffffffffffffffffL, &x332);
- { uint64_t x335; uint8_t x336 = _subborrow_u64(x333, x322, 0xffffffffffffffffL, &x335);
- { uint64_t x338; uint8_t x339 = _subborrow_u64(x336, x325, 0x3fffffff, &x338);
- { uint64_t _; uint8_t x342 = _subborrow_u64(x339, x327, 0x0, &_);
- { uint64_t x343 = cmovznz64(x342, x338, x325);
- { uint64_t x344 = cmovznz64(x342, x335, x322);
- { uint64_t x345 = cmovznz64(x342, x332, x319);
- { uint64_t x346 = cmovznz64(x342, x329, x316);
- out[0] = x346;
- out[1] = x345;
- out[2] = x344;
- out[3] = x343;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e222m117_4limbs/femul.v b/src/Specific/montgomery64_2e222m117_4limbs/femul.v
deleted file mode 100644
index ea08179e2..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e222m117_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e222m117_4limbs/femulDisplay.log b/src/Specific/montgomery64_2e222m117_4limbs/femulDisplay.log
deleted file mode 100644
index 2031fec31..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,122 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t _ = mulx_u64(x17, 0xcfdcfdcfdcfdcfddL);
- uint64_t x44, uint64_t x45 = mulx_u64(x41, 0xffffffffffffff8bL);
- uint64_t x47, uint64_t x48 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x50, uint64_t x51 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x53, uint64_t x54 = mulx_u64(x41, 0x3fffffff);
- uint64_t x56, uint8_t x57 = addcarryx_u64(0x0, x45, x47);
- uint64_t x59, uint8_t x60 = addcarryx_u64(x57, x48, x50);
- uint64_t x62, uint8_t x63 = addcarryx_u64(x60, x51, x53);
- uint64_t x65, uint8_t _ = addcarryx_u64(0x0, x63, x54);
- uint64_t _, uint8_t x69 = addcarryx_u64(0x0, x17, x44);
- uint64_t x71, uint8_t x72 = addcarryx_u64(x69, x29, x56);
- uint64_t x74, uint8_t x75 = addcarryx_u64(x72, x32, x59);
- uint64_t x77, uint8_t x78 = addcarryx_u64(x75, x35, x62);
- uint64_t x80, uint8_t x81 = addcarryx_u64(x78, x38, x65);
- uint64_t x83, uint64_t x84 = mulx_u64(x7, x11);
- uint64_t x86, uint64_t x87 = mulx_u64(x7, x13);
- uint64_t x89, uint64_t x90 = mulx_u64(x7, x15);
- uint64_t x92, uint64_t x93 = mulx_u64(x7, x14);
- uint64_t x95, uint8_t x96 = addcarryx_u64(0x0, x84, x86);
- uint64_t x98, uint8_t x99 = addcarryx_u64(x96, x87, x89);
- uint64_t x101, uint8_t x102 = addcarryx_u64(x99, x90, x92);
- uint64_t x104, uint8_t _ = addcarryx_u64(0x0, x102, x93);
- uint64_t x107, uint8_t x108 = addcarryx_u64(0x0, x71, x83);
- uint64_t x110, uint8_t x111 = addcarryx_u64(x108, x74, x95);
- uint64_t x113, uint8_t x114 = addcarryx_u64(x111, x77, x98);
- uint64_t x116, uint8_t x117 = addcarryx_u64(x114, x80, x101);
- uint64_t x119, uint8_t x120 = addcarryx_u64(x117, x81, x104);
- uint64_t x122, uint64_t _ = mulx_u64(x107, 0xcfdcfdcfdcfdcfddL);
- uint64_t x125, uint64_t x126 = mulx_u64(x122, 0xffffffffffffff8bL);
- uint64_t x128, uint64_t x129 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x131, uint64_t x132 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x134, uint64_t x135 = mulx_u64(x122, 0x3fffffff);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x126, x128);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x129, x131);
- uint64_t x143, uint8_t x144 = addcarryx_u64(x141, x132, x134);
- uint64_t x146, uint8_t _ = addcarryx_u64(0x0, x144, x135);
- uint64_t _, uint8_t x150 = addcarryx_u64(0x0, x107, x125);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x110, x137);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x113, x140);
- uint64_t x158, uint8_t x159 = addcarryx_u64(x156, x116, x143);
- uint64_t x161, uint8_t x162 = addcarryx_u64(x159, x119, x146);
- uint8_t x163 = (x162 + x120);
- uint64_t x165, uint64_t x166 = mulx_u64(x9, x11);
- uint64_t x168, uint64_t x169 = mulx_u64(x9, x13);
- uint64_t x171, uint64_t x172 = mulx_u64(x9, x15);
- uint64_t x174, uint64_t x175 = mulx_u64(x9, x14);
- uint64_t x177, uint8_t x178 = addcarryx_u64(0x0, x166, x168);
- uint64_t x180, uint8_t x181 = addcarryx_u64(x178, x169, x171);
- uint64_t x183, uint8_t x184 = addcarryx_u64(x181, x172, x174);
- uint64_t x186, uint8_t _ = addcarryx_u64(0x0, x184, x175);
- uint64_t x189, uint8_t x190 = addcarryx_u64(0x0, x152, x165);
- uint64_t x192, uint8_t x193 = addcarryx_u64(x190, x155, x177);
- uint64_t x195, uint8_t x196 = addcarryx_u64(x193, x158, x180);
- uint64_t x198, uint8_t x199 = addcarryx_u64(x196, x161, x183);
- uint64_t x201, uint8_t x202 = addcarryx_u64(x199, x163, x186);
- uint64_t x204, uint64_t _ = mulx_u64(x189, 0xcfdcfdcfdcfdcfddL);
- uint64_t x207, uint64_t x208 = mulx_u64(x204, 0xffffffffffffff8bL);
- uint64_t x210, uint64_t x211 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x213, uint64_t x214 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x216, uint64_t x217 = mulx_u64(x204, 0x3fffffff);
- uint64_t x219, uint8_t x220 = addcarryx_u64(0x0, x208, x210);
- uint64_t x222, uint8_t x223 = addcarryx_u64(x220, x211, x213);
- uint64_t x225, uint8_t x226 = addcarryx_u64(x223, x214, x216);
- uint64_t x228, uint8_t _ = addcarryx_u64(0x0, x226, x217);
- uint64_t _, uint8_t x232 = addcarryx_u64(0x0, x189, x207);
- uint64_t x234, uint8_t x235 = addcarryx_u64(x232, x192, x219);
- uint64_t x237, uint8_t x238 = addcarryx_u64(x235, x195, x222);
- uint64_t x240, uint8_t x241 = addcarryx_u64(x238, x198, x225);
- uint64_t x243, uint8_t x244 = addcarryx_u64(x241, x201, x228);
- uint8_t x245 = (x244 + x202);
- uint64_t x247, uint64_t x248 = mulx_u64(x8, x11);
- uint64_t x250, uint64_t x251 = mulx_u64(x8, x13);
- uint64_t x253, uint64_t x254 = mulx_u64(x8, x15);
- uint64_t x256, uint64_t x257 = mulx_u64(x8, x14);
- uint64_t x259, uint8_t x260 = addcarryx_u64(0x0, x248, x250);
- uint64_t x262, uint8_t x263 = addcarryx_u64(x260, x251, x253);
- uint64_t x265, uint8_t x266 = addcarryx_u64(x263, x254, x256);
- uint64_t x268, uint8_t _ = addcarryx_u64(0x0, x266, x257);
- uint64_t x271, uint8_t x272 = addcarryx_u64(0x0, x234, x247);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x237, x259);
- uint64_t x277, uint8_t x278 = addcarryx_u64(x275, x240, x262);
- uint64_t x280, uint8_t x281 = addcarryx_u64(x278, x243, x265);
- uint64_t x283, uint8_t x284 = addcarryx_u64(x281, x245, x268);
- uint64_t x286, uint64_t _ = mulx_u64(x271, 0xcfdcfdcfdcfdcfddL);
- uint64_t x289, uint64_t x290 = mulx_u64(x286, 0xffffffffffffff8bL);
- uint64_t x292, uint64_t x293 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x295, uint64_t x296 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x298, uint64_t x299 = mulx_u64(x286, 0x3fffffff);
- uint64_t x301, uint8_t x302 = addcarryx_u64(0x0, x290, x292);
- uint64_t x304, uint8_t x305 = addcarryx_u64(x302, x293, x295);
- uint64_t x307, uint8_t x308 = addcarryx_u64(x305, x296, x298);
- uint64_t x310, uint8_t _ = addcarryx_u64(0x0, x308, x299);
- uint64_t _, uint8_t x314 = addcarryx_u64(0x0, x271, x289);
- uint64_t x316, uint8_t x317 = addcarryx_u64(x314, x274, x301);
- uint64_t x319, uint8_t x320 = addcarryx_u64(x317, x277, x304);
- uint64_t x322, uint8_t x323 = addcarryx_u64(x320, x280, x307);
- uint64_t x325, uint8_t x326 = addcarryx_u64(x323, x283, x310);
- uint8_t x327 = (x326 + x284);
- uint64_t x329, uint8_t x330 = subborrow_u64(0x0, x316, 0xffffffffffffff8bL);
- uint64_t x332, uint8_t x333 = subborrow_u64(x330, x319, 0xffffffffffffffffL);
- uint64_t x335, uint8_t x336 = subborrow_u64(x333, x322, 0xffffffffffffffffL);
- uint64_t x338, uint8_t x339 = subborrow_u64(x336, x325, 0x3fffffff);
- uint64_t _, uint8_t x342 = subborrow_u64(x339, x327, 0x0);
- uint64_t x343 = cmovznz64(x342, x338, x325);
- uint64_t x344 = cmovznz64(x342, x335, x322);
- uint64_t x345 = cmovznz64(x342, x332, x319);
- uint64_t x346 = cmovznz64(x342, x329, x316);
- return (x343, x344, x345, x346))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e222m117_4limbs/femulDisplay.v b/src/Specific/montgomery64_2e222m117_4limbs/femulDisplay.v
deleted file mode 100644
index 68915c088..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e222m117_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e222m117_4limbs/fenz.c b/src/Specific/montgomery64_2e222m117_4limbs/fenz.c
deleted file mode 100644
index 7541094ff..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x7 = (x6 | x5);
- { uint64_t x8 = (x4 | x7);
- { uint64_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e222m117_4limbs/fenz.v b/src/Specific/montgomery64_2e222m117_4limbs/fenz.v
deleted file mode 100644
index bf3a8e7af..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e222m117_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e222m117_4limbs/fenzDisplay.log b/src/Specific/montgomery64_2e222m117_4limbs/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e222m117_4limbs/fenzDisplay.v b/src/Specific/montgomery64_2e222m117_4limbs/fenzDisplay.v
deleted file mode 100644
index f56874bf5..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e222m117_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e222m117_4limbs/feopp.c b/src/Specific/montgomery64_2e222m117_4limbs/feopp.c
deleted file mode 100644
index 447eee8ab..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/feopp.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feopp(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8; uint8_t x9 = _subborrow_u64(0x0, 0x0, x2, &x8);
- { uint64_t x11; uint8_t x12 = _subborrow_u64(x9, 0x0, x4, &x11);
- { uint64_t x14; uint8_t x15 = _subborrow_u64(x12, 0x0, x6, &x14);
- { uint64_t x17; uint8_t x18 = _subborrow_u64(x15, 0x0, x5, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xffffffffffffff8bL);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x8, x20, &x22);
- { uint64_t x24 = (x19 & 0xffffffffffffffffL);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x23, x11, x24, &x26);
- { uint64_t x28 = (x19 & 0xffffffffffffffffL);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x27, x14, x28, &x30);
- { uint64_t x32 = (x19 & 0x3fffffff);
- { uint64_t x34; uint8_t _ = _addcarryx_u64(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e222m117_4limbs/feopp.v b/src/Specific/montgomery64_2e222m117_4limbs/feopp.v
deleted file mode 100644
index 31c1016a0..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e222m117_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e222m117_4limbs/feoppDisplay.log b/src/Specific/montgomery64_2e222m117_4limbs/feoppDisplay.log
deleted file mode 100644
index c4aa04fad..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xffffffffffffff8bL);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffffffffffffffL);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x28 = (x19 & 0xffffffffffffffffL);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x27, x14, x28);
- uint64_t x32 = (x19 & 0x3fffffff);
- uint64_t x34, uint8_t _ = addcarryx_u64(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e222m117_4limbs/feoppDisplay.v b/src/Specific/montgomery64_2e222m117_4limbs/feoppDisplay.v
deleted file mode 100644
index 824c8685c..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e222m117_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e222m117_4limbs/fesquare.c b/src/Specific/montgomery64_2e222m117_4limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e222m117_4limbs/fesub.c b/src/Specific/montgomery64_2e222m117_4limbs/fesub.c
deleted file mode 100644
index b138dafbd..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/fesub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _subborrow_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _subborrow_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _subborrow_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u64(x24, x8, x14, &x26);
- { uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- { uint64_t x29 = (x28 & 0xffffffffffffff8bL);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(0x0, x17, x29, &x31);
- { uint64_t x33 = (x28 & 0xffffffffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x20, x33, &x35);
- { uint64_t x37 = (x28 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x23, x37, &x39);
- { uint64_t x41 = (x28 & 0x3fffffff);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x26, x41, &x43);
- out[0] = x31;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e222m117_4limbs/fesub.v b/src/Specific/montgomery64_2e222m117_4limbs/fesub.v
deleted file mode 100644
index f8ded826b..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e222m117_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e222m117_4limbs/fesubDisplay.log b/src/Specific/montgomery64_2e222m117_4limbs/fesubDisplay.log
deleted file mode 100644
index 13abe8776..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint64_t x29 = (x28 & 0xffffffffffffff8bL);
- uint64_t x31, uint8_t x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x37 = (x28 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x23, x37);
- uint64_t x41 = (x28 & 0x3fffffff);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x26, x41);
- (Return x43, Return x39, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e222m117_4limbs/fesubDisplay.v b/src/Specific/montgomery64_2e222m117_4limbs/fesubDisplay.v
deleted file mode 100644
index 7755e6aca..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e222m117_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e222m117_4limbs/py_interpreter.sh b/src/Specific/montgomery64_2e222m117_4limbs/py_interpreter.sh
deleted file mode 100755
index ae39189e8..000000000
--- a/src/Specific/montgomery64_2e222m117_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**222 - 117' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e224m2e96p1_4limbs/CurveParameters.v b/src/Specific/montgomery64_2e224m2e96p1_4limbs/CurveParameters.v
deleted file mode 100644
index e28cc7788..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^224 - 2^96 + 1
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 64;
- bitwidth := 64;
- s := 2^224;
- c := [(1, -1); (2^96, 1)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e224m2e96p1_4limbs/Synthesis.v b/src/Specific/montgomery64_2e224m2e96p1_4limbs/Synthesis.v
deleted file mode 100644
index fe000ddb6..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e224m2e96p1_4limbs.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/montgomery64_2e224m2e96p1_4limbs/compiler.sh b/src/Specific/montgomery64_2e224m2e96p1_4limbs/compiler.sh
deleted file mode 100755
index a89085f42..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1' "$@"
diff --git a/src/Specific/montgomery64_2e224m2e96p1_4limbs/compilerxx.sh b/src/Specific/montgomery64_2e224m2e96p1_4limbs/compilerxx.sh
deleted file mode 100755
index 7ecd49ae7..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1' "$@"
diff --git a/src/Specific/montgomery64_2e224m2e96p1_4limbs/feadd.c b/src/Specific/montgomery64_2e224m2e96p1_4limbs/feadd.c
deleted file mode 100644
index 1cb91cd34..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _addcarryx_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _addcarryx_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x24, x8, x14, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u64(0x0, x17, 0x1, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u64(x30, x20, 0xffffffff00000000L, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u64(x33, x23, 0xffffffffffffffffL, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u64(x36, x26, 0xffffffff, &x38);
- { uint64_t _; uint8_t x42 = _subborrow_u64(x39, x27, 0x0, &_);
- { uint64_t x43 = cmovznz64(x42, x38, x26);
- { uint64_t x44 = cmovznz64(x42, x35, x23);
- { uint64_t x45 = cmovznz64(x42, x32, x20);
- { uint64_t x46 = cmovznz64(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e224m2e96p1_4limbs/feadd.v b/src/Specific/montgomery64_2e224m2e96p1_4limbs/feadd.v
deleted file mode 100644
index 86bc0cb4d..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e224m2e96p1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e224m2e96p1_4limbs/feaddDisplay.log b/src/Specific/montgomery64_2e224m2e96p1_4limbs/feaddDisplay.log
deleted file mode 100644
index c653739ee..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t x30 = subborrow_u64(0x0, x17, 0x1);
- uint64_t x32, uint8_t x33 = subborrow_u64(x30, x20, 0xffffffff00000000L);
- uint64_t x35, uint8_t x36 = subborrow_u64(x33, x23, 0xffffffffffffffffL);
- uint64_t x38, uint8_t x39 = subborrow_u64(x36, x26, 0xffffffff);
- uint64_t _, uint8_t x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e224m2e96p1_4limbs/feaddDisplay.v b/src/Specific/montgomery64_2e224m2e96p1_4limbs/feaddDisplay.v
deleted file mode 100644
index eaabe2e75..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e224m2e96p1_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e224m2e96p1_4limbs/femul.c b/src/Specific/montgomery64_2e224m2e96p1_4limbs/femul.c
deleted file mode 100644
index eacac67f9..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/femul.c
+++ /dev/null
@@ -1,122 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x18; uint64_t x17 = _mulx_u64(x5, x11, &x18);
- { uint64_t x21; uint64_t x20 = _mulx_u64(x5, x13, &x21);
- { uint64_t x24; uint64_t x23 = _mulx_u64(x5, x15, &x24);
- { uint64_t x27; uint64_t x26 = _mulx_u64(x5, x14, &x27);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x18, x20, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x21, x23, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x24, x26, &x35);
- { uint64_t x38; uint8_t _ = _addcarryx_u64(0x0, x36, x27, &x38);
- { uint64_t _; uint64_t x41 = _mulx_u64(x17, 0xffffffffffffffffL, &_);
- { uint64_t x45; uint64_t x44 = _mulx_u64(x41, 0xffffffff00000000L, &x45);
- { uint64_t x48; uint64_t x47 = _mulx_u64(x41, 0xffffffffffffffffL, &x48);
- { uint64_t x51; uint64_t x50 = _mulx_u64(x41, 0xffffffff, &x51);
- { uint64_t x53; uint8_t x54 = _addcarryx_u64(0x0, x45, x47, &x53);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(x54, x48, x50, &x56);
- { uint64_t x59; uint8_t _ = _addcarryx_u64(0x0, x57, x51, &x59);
- { uint64_t _; uint8_t x63 = _addcarryx_u64(0x0, x17, x41, &_);
- { uint64_t x65; uint8_t x66 = _addcarryx_u64(x63, x29, x44, &x65);
- { uint64_t x68; uint8_t x69 = _addcarryx_u64(x66, x32, x53, &x68);
- { uint64_t x71; uint8_t x72 = _addcarryx_u64(x69, x35, x56, &x71);
- { uint64_t x74; uint8_t x75 = _addcarryx_u64(x72, x38, x59, &x74);
- { uint64_t x78; uint64_t x77 = _mulx_u64(x7, x11, &x78);
- { uint64_t x81; uint64_t x80 = _mulx_u64(x7, x13, &x81);
- { uint64_t x84; uint64_t x83 = _mulx_u64(x7, x15, &x84);
- { uint64_t x87; uint64_t x86 = _mulx_u64(x7, x14, &x87);
- { uint64_t x89; uint8_t x90 = _addcarryx_u64(0x0, x78, x80, &x89);
- { uint64_t x92; uint8_t x93 = _addcarryx_u64(x90, x81, x83, &x92);
- { uint64_t x95; uint8_t x96 = _addcarryx_u64(x93, x84, x86, &x95);
- { uint64_t x98; uint8_t _ = _addcarryx_u64(0x0, x96, x87, &x98);
- { uint64_t x101; uint8_t x102 = _addcarryx_u64(0x0, x65, x77, &x101);
- { uint64_t x104; uint8_t x105 = _addcarryx_u64(x102, x68, x89, &x104);
- { uint64_t x107; uint8_t x108 = _addcarryx_u64(x105, x71, x92, &x107);
- { uint64_t x110; uint8_t x111 = _addcarryx_u64(x108, x74, x95, &x110);
- { uint64_t x113; uint8_t x114 = _addcarryx_u64(x111, x75, x98, &x113);
- { uint64_t _; uint64_t x116 = _mulx_u64(x101, 0xffffffffffffffffL, &_);
- { uint64_t x120; uint64_t x119 = _mulx_u64(x116, 0xffffffff00000000L, &x120);
- { uint64_t x123; uint64_t x122 = _mulx_u64(x116, 0xffffffffffffffffL, &x123);
- { uint64_t x126; uint64_t x125 = _mulx_u64(x116, 0xffffffff, &x126);
- { uint64_t x128; uint8_t x129 = _addcarryx_u64(0x0, x120, x122, &x128);
- { uint64_t x131; uint8_t x132 = _addcarryx_u64(x129, x123, x125, &x131);
- { uint64_t x134; uint8_t _ = _addcarryx_u64(0x0, x132, x126, &x134);
- { uint64_t _; uint8_t x138 = _addcarryx_u64(0x0, x101, x116, &_);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x104, x119, &x140);
- { uint64_t x143; uint8_t x144 = _addcarryx_u64(x141, x107, x128, &x143);
- { uint64_t x146; uint8_t x147 = _addcarryx_u64(x144, x110, x131, &x146);
- { uint64_t x149; uint8_t x150 = _addcarryx_u64(x147, x113, x134, &x149);
- { uint8_t x151 = (x150 + x114);
- { uint64_t x154; uint64_t x153 = _mulx_u64(x9, x11, &x154);
- { uint64_t x157; uint64_t x156 = _mulx_u64(x9, x13, &x157);
- { uint64_t x160; uint64_t x159 = _mulx_u64(x9, x15, &x160);
- { uint64_t x163; uint64_t x162 = _mulx_u64(x9, x14, &x163);
- { uint64_t x165; uint8_t x166 = _addcarryx_u64(0x0, x154, x156, &x165);
- { uint64_t x168; uint8_t x169 = _addcarryx_u64(x166, x157, x159, &x168);
- { uint64_t x171; uint8_t x172 = _addcarryx_u64(x169, x160, x162, &x171);
- { uint64_t x174; uint8_t _ = _addcarryx_u64(0x0, x172, x163, &x174);
- { uint64_t x177; uint8_t x178 = _addcarryx_u64(0x0, x140, x153, &x177);
- { uint64_t x180; uint8_t x181 = _addcarryx_u64(x178, x143, x165, &x180);
- { uint64_t x183; uint8_t x184 = _addcarryx_u64(x181, x146, x168, &x183);
- { uint64_t x186; uint8_t x187 = _addcarryx_u64(x184, x149, x171, &x186);
- { uint64_t x189; uint8_t x190 = _addcarryx_u64(x187, x151, x174, &x189);
- { uint64_t _; uint64_t x192 = _mulx_u64(x177, 0xffffffffffffffffL, &_);
- { uint64_t x196; uint64_t x195 = _mulx_u64(x192, 0xffffffff00000000L, &x196);
- { uint64_t x199; uint64_t x198 = _mulx_u64(x192, 0xffffffffffffffffL, &x199);
- { uint64_t x202; uint64_t x201 = _mulx_u64(x192, 0xffffffff, &x202);
- { uint64_t x204; uint8_t x205 = _addcarryx_u64(0x0, x196, x198, &x204);
- { uint64_t x207; uint8_t x208 = _addcarryx_u64(x205, x199, x201, &x207);
- { uint64_t x210; uint8_t _ = _addcarryx_u64(0x0, x208, x202, &x210);
- { uint64_t _; uint8_t x214 = _addcarryx_u64(0x0, x177, x192, &_);
- { uint64_t x216; uint8_t x217 = _addcarryx_u64(x214, x180, x195, &x216);
- { uint64_t x219; uint8_t x220 = _addcarryx_u64(x217, x183, x204, &x219);
- { uint64_t x222; uint8_t x223 = _addcarryx_u64(x220, x186, x207, &x222);
- { uint64_t x225; uint8_t x226 = _addcarryx_u64(x223, x189, x210, &x225);
- { uint8_t x227 = (x226 + x190);
- { uint64_t x230; uint64_t x229 = _mulx_u64(x8, x11, &x230);
- { uint64_t x233; uint64_t x232 = _mulx_u64(x8, x13, &x233);
- { uint64_t x236; uint64_t x235 = _mulx_u64(x8, x15, &x236);
- { uint64_t x239; uint64_t x238 = _mulx_u64(x8, x14, &x239);
- { uint64_t x241; uint8_t x242 = _addcarryx_u64(0x0, x230, x232, &x241);
- { uint64_t x244; uint8_t x245 = _addcarryx_u64(x242, x233, x235, &x244);
- { uint64_t x247; uint8_t x248 = _addcarryx_u64(x245, x236, x238, &x247);
- { uint64_t x250; uint8_t _ = _addcarryx_u64(0x0, x248, x239, &x250);
- { uint64_t x253; uint8_t x254 = _addcarryx_u64(0x0, x216, x229, &x253);
- { uint64_t x256; uint8_t x257 = _addcarryx_u64(x254, x219, x241, &x256);
- { uint64_t x259; uint8_t x260 = _addcarryx_u64(x257, x222, x244, &x259);
- { uint64_t x262; uint8_t x263 = _addcarryx_u64(x260, x225, x247, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(x263, x227, x250, &x265);
- { uint64_t _; uint64_t x268 = _mulx_u64(x253, 0xffffffffffffffffL, &_);
- { uint64_t x272; uint64_t x271 = _mulx_u64(x268, 0xffffffff00000000L, &x272);
- { uint64_t x275; uint64_t x274 = _mulx_u64(x268, 0xffffffffffffffffL, &x275);
- { uint64_t x278; uint64_t x277 = _mulx_u64(x268, 0xffffffff, &x278);
- { uint64_t x280; uint8_t x281 = _addcarryx_u64(0x0, x272, x274, &x280);
- { uint64_t x283; uint8_t x284 = _addcarryx_u64(x281, x275, x277, &x283);
- { uint64_t x286; uint8_t _ = _addcarryx_u64(0x0, x284, x278, &x286);
- { uint64_t _; uint8_t x290 = _addcarryx_u64(0x0, x253, x268, &_);
- { uint64_t x292; uint8_t x293 = _addcarryx_u64(x290, x256, x271, &x292);
- { uint64_t x295; uint8_t x296 = _addcarryx_u64(x293, x259, x280, &x295);
- { uint64_t x298; uint8_t x299 = _addcarryx_u64(x296, x262, x283, &x298);
- { uint64_t x301; uint8_t x302 = _addcarryx_u64(x299, x265, x286, &x301);
- { uint8_t x303 = (x302 + x266);
- { uint64_t x305; uint8_t x306 = _subborrow_u64(0x0, x292, 0x1, &x305);
- { uint64_t x308; uint8_t x309 = _subborrow_u64(x306, x295, 0xffffffff00000000L, &x308);
- { uint64_t x311; uint8_t x312 = _subborrow_u64(x309, x298, 0xffffffffffffffffL, &x311);
- { uint64_t x314; uint8_t x315 = _subborrow_u64(x312, x301, 0xffffffff, &x314);
- { uint64_t _; uint8_t x318 = _subborrow_u64(x315, x303, 0x0, &_);
- { uint64_t x319 = cmovznz64(x318, x314, x301);
- { uint64_t x320 = cmovznz64(x318, x311, x298);
- { uint64_t x321 = cmovznz64(x318, x308, x295);
- { uint64_t x322 = cmovznz64(x318, x305, x292);
- out[0] = x322;
- out[1] = x321;
- out[2] = x320;
- out[3] = x319;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e224m2e96p1_4limbs/femul.v b/src/Specific/montgomery64_2e224m2e96p1_4limbs/femul.v
deleted file mode 100644
index a0a30863f..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e224m2e96p1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e224m2e96p1_4limbs/femulDisplay.log b/src/Specific/montgomery64_2e224m2e96p1_4limbs/femulDisplay.log
deleted file mode 100644
index 7482561e4..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,114 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t _ = mulx_u64(x17, 0xffffffffffffffffL);
- uint64_t x44, uint64_t x45 = mulx_u64(x41, 0xffffffff00000000L);
- uint64_t x47, uint64_t x48 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x50, uint64_t x51 = mulx_u64(x41, 0xffffffff);
- uint64_t x53, uint8_t x54 = addcarryx_u64(0x0, x45, x47);
- uint64_t x56, uint8_t x57 = addcarryx_u64(x54, x48, x50);
- uint64_t x59, uint8_t _ = addcarryx_u64(0x0, x57, x51);
- uint64_t _, uint8_t x63 = addcarryx_u64(0x0, x17, x41);
- uint64_t x65, uint8_t x66 = addcarryx_u64(x63, x29, x44);
- uint64_t x68, uint8_t x69 = addcarryx_u64(x66, x32, x53);
- uint64_t x71, uint8_t x72 = addcarryx_u64(x69, x35, x56);
- uint64_t x74, uint8_t x75 = addcarryx_u64(x72, x38, x59);
- uint64_t x77, uint64_t x78 = mulx_u64(x7, x11);
- uint64_t x80, uint64_t x81 = mulx_u64(x7, x13);
- uint64_t x83, uint64_t x84 = mulx_u64(x7, x15);
- uint64_t x86, uint64_t x87 = mulx_u64(x7, x14);
- uint64_t x89, uint8_t x90 = addcarryx_u64(0x0, x78, x80);
- uint64_t x92, uint8_t x93 = addcarryx_u64(x90, x81, x83);
- uint64_t x95, uint8_t x96 = addcarryx_u64(x93, x84, x86);
- uint64_t x98, uint8_t _ = addcarryx_u64(0x0, x96, x87);
- uint64_t x101, uint8_t x102 = addcarryx_u64(0x0, x65, x77);
- uint64_t x104, uint8_t x105 = addcarryx_u64(x102, x68, x89);
- uint64_t x107, uint8_t x108 = addcarryx_u64(x105, x71, x92);
- uint64_t x110, uint8_t x111 = addcarryx_u64(x108, x74, x95);
- uint64_t x113, uint8_t x114 = addcarryx_u64(x111, x75, x98);
- uint64_t x116, uint64_t _ = mulx_u64(x101, 0xffffffffffffffffL);
- uint64_t x119, uint64_t x120 = mulx_u64(x116, 0xffffffff00000000L);
- uint64_t x122, uint64_t x123 = mulx_u64(x116, 0xffffffffffffffffL);
- uint64_t x125, uint64_t x126 = mulx_u64(x116, 0xffffffff);
- uint64_t x128, uint8_t x129 = addcarryx_u64(0x0, x120, x122);
- uint64_t x131, uint8_t x132 = addcarryx_u64(x129, x123, x125);
- uint64_t x134, uint8_t _ = addcarryx_u64(0x0, x132, x126);
- uint64_t _, uint8_t x138 = addcarryx_u64(0x0, x101, x116);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x104, x119);
- uint64_t x143, uint8_t x144 = addcarryx_u64(x141, x107, x128);
- uint64_t x146, uint8_t x147 = addcarryx_u64(x144, x110, x131);
- uint64_t x149, uint8_t x150 = addcarryx_u64(x147, x113, x134);
- uint8_t x151 = (x150 + x114);
- uint64_t x153, uint64_t x154 = mulx_u64(x9, x11);
- uint64_t x156, uint64_t x157 = mulx_u64(x9, x13);
- uint64_t x159, uint64_t x160 = mulx_u64(x9, x15);
- uint64_t x162, uint64_t x163 = mulx_u64(x9, x14);
- uint64_t x165, uint8_t x166 = addcarryx_u64(0x0, x154, x156);
- uint64_t x168, uint8_t x169 = addcarryx_u64(x166, x157, x159);
- uint64_t x171, uint8_t x172 = addcarryx_u64(x169, x160, x162);
- uint64_t x174, uint8_t _ = addcarryx_u64(0x0, x172, x163);
- uint64_t x177, uint8_t x178 = addcarryx_u64(0x0, x140, x153);
- uint64_t x180, uint8_t x181 = addcarryx_u64(x178, x143, x165);
- uint64_t x183, uint8_t x184 = addcarryx_u64(x181, x146, x168);
- uint64_t x186, uint8_t x187 = addcarryx_u64(x184, x149, x171);
- uint64_t x189, uint8_t x190 = addcarryx_u64(x187, x151, x174);
- uint64_t x192, uint64_t _ = mulx_u64(x177, 0xffffffffffffffffL);
- uint64_t x195, uint64_t x196 = mulx_u64(x192, 0xffffffff00000000L);
- uint64_t x198, uint64_t x199 = mulx_u64(x192, 0xffffffffffffffffL);
- uint64_t x201, uint64_t x202 = mulx_u64(x192, 0xffffffff);
- uint64_t x204, uint8_t x205 = addcarryx_u64(0x0, x196, x198);
- uint64_t x207, uint8_t x208 = addcarryx_u64(x205, x199, x201);
- uint64_t x210, uint8_t _ = addcarryx_u64(0x0, x208, x202);
- uint64_t _, uint8_t x214 = addcarryx_u64(0x0, x177, x192);
- uint64_t x216, uint8_t x217 = addcarryx_u64(x214, x180, x195);
- uint64_t x219, uint8_t x220 = addcarryx_u64(x217, x183, x204);
- uint64_t x222, uint8_t x223 = addcarryx_u64(x220, x186, x207);
- uint64_t x225, uint8_t x226 = addcarryx_u64(x223, x189, x210);
- uint8_t x227 = (x226 + x190);
- uint64_t x229, uint64_t x230 = mulx_u64(x8, x11);
- uint64_t x232, uint64_t x233 = mulx_u64(x8, x13);
- uint64_t x235, uint64_t x236 = mulx_u64(x8, x15);
- uint64_t x238, uint64_t x239 = mulx_u64(x8, x14);
- uint64_t x241, uint8_t x242 = addcarryx_u64(0x0, x230, x232);
- uint64_t x244, uint8_t x245 = addcarryx_u64(x242, x233, x235);
- uint64_t x247, uint8_t x248 = addcarryx_u64(x245, x236, x238);
- uint64_t x250, uint8_t _ = addcarryx_u64(0x0, x248, x239);
- uint64_t x253, uint8_t x254 = addcarryx_u64(0x0, x216, x229);
- uint64_t x256, uint8_t x257 = addcarryx_u64(x254, x219, x241);
- uint64_t x259, uint8_t x260 = addcarryx_u64(x257, x222, x244);
- uint64_t x262, uint8_t x263 = addcarryx_u64(x260, x225, x247);
- uint64_t x265, uint8_t x266 = addcarryx_u64(x263, x227, x250);
- uint64_t x268, uint64_t _ = mulx_u64(x253, 0xffffffffffffffffL);
- uint64_t x271, uint64_t x272 = mulx_u64(x268, 0xffffffff00000000L);
- uint64_t x274, uint64_t x275 = mulx_u64(x268, 0xffffffffffffffffL);
- uint64_t x277, uint64_t x278 = mulx_u64(x268, 0xffffffff);
- uint64_t x280, uint8_t x281 = addcarryx_u64(0x0, x272, x274);
- uint64_t x283, uint8_t x284 = addcarryx_u64(x281, x275, x277);
- uint64_t x286, uint8_t _ = addcarryx_u64(0x0, x284, x278);
- uint64_t _, uint8_t x290 = addcarryx_u64(0x0, x253, x268);
- uint64_t x292, uint8_t x293 = addcarryx_u64(x290, x256, x271);
- uint64_t x295, uint8_t x296 = addcarryx_u64(x293, x259, x280);
- uint64_t x298, uint8_t x299 = addcarryx_u64(x296, x262, x283);
- uint64_t x301, uint8_t x302 = addcarryx_u64(x299, x265, x286);
- uint8_t x303 = (x302 + x266);
- uint64_t x305, uint8_t x306 = subborrow_u64(0x0, x292, 0x1);
- uint64_t x308, uint8_t x309 = subborrow_u64(x306, x295, 0xffffffff00000000L);
- uint64_t x311, uint8_t x312 = subborrow_u64(x309, x298, 0xffffffffffffffffL);
- uint64_t x314, uint8_t x315 = subborrow_u64(x312, x301, 0xffffffff);
- uint64_t _, uint8_t x318 = subborrow_u64(x315, x303, 0x0);
- uint64_t x319 = cmovznz64(x318, x314, x301);
- uint64_t x320 = cmovznz64(x318, x311, x298);
- uint64_t x321 = cmovznz64(x318, x308, x295);
- uint64_t x322 = cmovznz64(x318, x305, x292);
- return (x319, x320, x321, x322))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e224m2e96p1_4limbs/femulDisplay.v b/src/Specific/montgomery64_2e224m2e96p1_4limbs/femulDisplay.v
deleted file mode 100644
index 88f2f2724..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e224m2e96p1_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e224m2e96p1_4limbs/fenz.c b/src/Specific/montgomery64_2e224m2e96p1_4limbs/fenz.c
deleted file mode 100644
index 7541094ff..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x7 = (x6 | x5);
- { uint64_t x8 = (x4 | x7);
- { uint64_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e224m2e96p1_4limbs/fenz.v b/src/Specific/montgomery64_2e224m2e96p1_4limbs/fenz.v
deleted file mode 100644
index 2145482c8..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e224m2e96p1_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e224m2e96p1_4limbs/fenzDisplay.log b/src/Specific/montgomery64_2e224m2e96p1_4limbs/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e224m2e96p1_4limbs/fenzDisplay.v b/src/Specific/montgomery64_2e224m2e96p1_4limbs/fenzDisplay.v
deleted file mode 100644
index f4f781d8a..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e224m2e96p1_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e224m2e96p1_4limbs/feopp.c b/src/Specific/montgomery64_2e224m2e96p1_4limbs/feopp.c
deleted file mode 100644
index 6bb56a416..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/feopp.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feopp(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8; uint8_t x9 = _subborrow_u64(0x0, 0x0, x2, &x8);
- { uint64_t x11; uint8_t x12 = _subborrow_u64(x9, 0x0, x4, &x11);
- { uint64_t x14; uint8_t x15 = _subborrow_u64(x12, 0x0, x6, &x14);
- { uint64_t x17; uint8_t x18 = _subborrow_u64(x15, 0x0, x5, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint8_t x20 = ((uint8_t)x19 & 0x1);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x8, x20, &x22);
- { uint64_t x24 = (x19 & 0xffffffff00000000L);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x23, x11, x24, &x26);
- { uint64_t x28 = (x19 & 0xffffffffffffffffL);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x27, x14, x28, &x30);
- { uint64_t x32 = (x19 & 0xffffffff);
- { uint64_t x34; uint8_t _ = _addcarryx_u64(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e224m2e96p1_4limbs/feopp.v b/src/Specific/montgomery64_2e224m2e96p1_4limbs/feopp.v
deleted file mode 100644
index af178f50e..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e224m2e96p1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e224m2e96p1_4limbs/feoppDisplay.log b/src/Specific/montgomery64_2e224m2e96p1_4limbs/feoppDisplay.log
deleted file mode 100644
index 2885df362..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint8_t x20 = ((uint8_t)x19 & 0x1);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffffff00000000L);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x28 = (x19 & 0xffffffffffffffffL);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x27, x14, x28);
- uint64_t x32 = (x19 & 0xffffffff);
- uint64_t x34, uint8_t _ = addcarryx_u64(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e224m2e96p1_4limbs/feoppDisplay.v b/src/Specific/montgomery64_2e224m2e96p1_4limbs/feoppDisplay.v
deleted file mode 100644
index db4a25b69..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e224m2e96p1_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e224m2e96p1_4limbs/fesquare.c b/src/Specific/montgomery64_2e224m2e96p1_4limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e224m2e96p1_4limbs/fesub.c b/src/Specific/montgomery64_2e224m2e96p1_4limbs/fesub.c
deleted file mode 100644
index 91a2004fc..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/fesub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _subborrow_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _subborrow_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _subborrow_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u64(x24, x8, x14, &x26);
- { uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- { uint8_t x29 = ((uint8_t)x28 & 0x1);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(0x0, x17, x29, &x31);
- { uint64_t x33 = (x28 & 0xffffffff00000000L);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x20, x33, &x35);
- { uint64_t x37 = (x28 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x23, x37, &x39);
- { uint64_t x41 = (x28 & 0xffffffff);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x26, x41, &x43);
- out[0] = x31;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e224m2e96p1_4limbs/fesub.v b/src/Specific/montgomery64_2e224m2e96p1_4limbs/fesub.v
deleted file mode 100644
index 665bee9b6..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e224m2e96p1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e224m2e96p1_4limbs/fesubDisplay.log b/src/Specific/montgomery64_2e224m2e96p1_4limbs/fesubDisplay.log
deleted file mode 100644
index 73f4b09ed..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint8_t x29 = ((uint8_t)x28 & 0x1);
- uint64_t x31, uint8_t x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffffff00000000L);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x37 = (x28 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x23, x37);
- uint64_t x41 = (x28 & 0xffffffff);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x26, x41);
- (Return x43, Return x39, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e224m2e96p1_4limbs/fesubDisplay.v b/src/Specific/montgomery64_2e224m2e96p1_4limbs/fesubDisplay.v
deleted file mode 100644
index d58f143e5..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e224m2e96p1_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e224m2e96p1_4limbs/py_interpreter.sh b/src/Specific/montgomery64_2e224m2e96p1_4limbs/py_interpreter.sh
deleted file mode 100755
index 442eebd51..000000000
--- a/src/Specific/montgomery64_2e224m2e96p1_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**224 - 2**96 + 1' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e226m5_4limbs/CurveParameters.v b/src/Specific/montgomery64_2e226m5_4limbs/CurveParameters.v
deleted file mode 100644
index 3e97cd422..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^226 - 5
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 64;
- bitwidth := 64;
- s := 2^226;
- c := [(1, 5)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e226m5_4limbs/Synthesis.v b/src/Specific/montgomery64_2e226m5_4limbs/Synthesis.v
deleted file mode 100644
index cb21ccb1c..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e226m5_4limbs.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/montgomery64_2e226m5_4limbs/compiler.sh b/src/Specific/montgomery64_2e226m5_4limbs/compiler.sh
deleted file mode 100755
index 3e50e7d51..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<226) - 5' "$@"
diff --git a/src/Specific/montgomery64_2e226m5_4limbs/compilerxx.sh b/src/Specific/montgomery64_2e226m5_4limbs/compilerxx.sh
deleted file mode 100755
index 770599734..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<226) - 5' "$@"
diff --git a/src/Specific/montgomery64_2e226m5_4limbs/feadd.c b/src/Specific/montgomery64_2e226m5_4limbs/feadd.c
deleted file mode 100644
index 4334bc35d..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _addcarryx_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _addcarryx_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x24, x8, x14, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u64(0x0, x17, 0xfffffffffffffffbL, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u64(x30, x20, 0xffffffffffffffffL, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u64(x33, x23, 0xffffffffffffffffL, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u64(x36, x26, 0x3ffffffff, &x38);
- { uint64_t _; uint8_t x42 = _subborrow_u64(x39, x27, 0x0, &_);
- { uint64_t x43 = cmovznz64(x42, x38, x26);
- { uint64_t x44 = cmovznz64(x42, x35, x23);
- { uint64_t x45 = cmovznz64(x42, x32, x20);
- { uint64_t x46 = cmovznz64(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e226m5_4limbs/feadd.v b/src/Specific/montgomery64_2e226m5_4limbs/feadd.v
deleted file mode 100644
index 2f06dd51a..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e226m5_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e226m5_4limbs/feaddDisplay.log b/src/Specific/montgomery64_2e226m5_4limbs/feaddDisplay.log
deleted file mode 100644
index 1c5eb603b..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t x30 = subborrow_u64(0x0, x17, 0xfffffffffffffffbL);
- uint64_t x32, uint8_t x33 = subborrow_u64(x30, x20, 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = subborrow_u64(x33, x23, 0xffffffffffffffffL);
- uint64_t x38, uint8_t x39 = subborrow_u64(x36, x26, 0x3ffffffff);
- uint64_t _, uint8_t x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e226m5_4limbs/feaddDisplay.v b/src/Specific/montgomery64_2e226m5_4limbs/feaddDisplay.v
deleted file mode 100644
index e5c90eae9..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e226m5_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e226m5_4limbs/femul.c b/src/Specific/montgomery64_2e226m5_4limbs/femul.c
deleted file mode 100644
index e894281fb..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/femul.c
+++ /dev/null
@@ -1,130 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x18; uint64_t x17 = _mulx_u64(x5, x11, &x18);
- { uint64_t x21; uint64_t x20 = _mulx_u64(x5, x13, &x21);
- { uint64_t x24; uint64_t x23 = _mulx_u64(x5, x15, &x24);
- { uint64_t x27; uint64_t x26 = _mulx_u64(x5, x14, &x27);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x18, x20, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x21, x23, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x24, x26, &x35);
- { uint64_t x38; uint8_t _ = _addcarryx_u64(0x0, x36, x27, &x38);
- { uint64_t _; uint64_t x41 = _mulx_u64(x17, 0xcccccccccccccccdL, &_);
- { uint64_t x45; uint64_t x44 = _mulx_u64(x41, 0xfffffffffffffffbL, &x45);
- { uint64_t x48; uint64_t x47 = _mulx_u64(x41, 0xffffffffffffffffL, &x48);
- { uint64_t x51; uint64_t x50 = _mulx_u64(x41, 0xffffffffffffffffL, &x51);
- { uint64_t x54; uint64_t x53 = _mulx_u64(x41, 0x3ffffffff, &x54);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(0x0, x45, x47, &x56);
- { uint64_t x59; uint8_t x60 = _addcarryx_u64(x57, x48, x50, &x59);
- { uint64_t x62; uint8_t x63 = _addcarryx_u64(x60, x51, x53, &x62);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(0x0, x63, x54, &x65);
- { uint64_t _; uint8_t x69 = _addcarryx_u64(0x0, x17, x44, &_);
- { uint64_t x71; uint8_t x72 = _addcarryx_u64(x69, x29, x56, &x71);
- { uint64_t x74; uint8_t x75 = _addcarryx_u64(x72, x32, x59, &x74);
- { uint64_t x77; uint8_t x78 = _addcarryx_u64(x75, x35, x62, &x77);
- { uint64_t x80; uint8_t x81 = _addcarryx_u64(x78, x38, x65, &x80);
- { uint64_t x84; uint64_t x83 = _mulx_u64(x7, x11, &x84);
- { uint64_t x87; uint64_t x86 = _mulx_u64(x7, x13, &x87);
- { uint64_t x90; uint64_t x89 = _mulx_u64(x7, x15, &x90);
- { uint64_t x93; uint64_t x92 = _mulx_u64(x7, x14, &x93);
- { uint64_t x95; uint8_t x96 = _addcarryx_u64(0x0, x84, x86, &x95);
- { uint64_t x98; uint8_t x99 = _addcarryx_u64(x96, x87, x89, &x98);
- { uint64_t x101; uint8_t x102 = _addcarryx_u64(x99, x90, x92, &x101);
- { uint64_t x104; uint8_t _ = _addcarryx_u64(0x0, x102, x93, &x104);
- { uint64_t x107; uint8_t x108 = _addcarryx_u64(0x0, x71, x83, &x107);
- { uint64_t x110; uint8_t x111 = _addcarryx_u64(x108, x74, x95, &x110);
- { uint64_t x113; uint8_t x114 = _addcarryx_u64(x111, x77, x98, &x113);
- { uint64_t x116; uint8_t x117 = _addcarryx_u64(x114, x80, x101, &x116);
- { uint64_t x119; uint8_t x120 = _addcarryx_u64(x117, x81, x104, &x119);
- { uint64_t _; uint64_t x122 = _mulx_u64(x107, 0xcccccccccccccccdL, &_);
- { uint64_t x126; uint64_t x125 = _mulx_u64(x122, 0xfffffffffffffffbL, &x126);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x122, 0xffffffffffffffffL, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x122, 0xffffffffffffffffL, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x122, 0x3ffffffff, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x126, x128, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x129, x131, &x140);
- { uint64_t x143; uint8_t x144 = _addcarryx_u64(x141, x132, x134, &x143);
- { uint64_t x146; uint8_t _ = _addcarryx_u64(0x0, x144, x135, &x146);
- { uint64_t _; uint8_t x150 = _addcarryx_u64(0x0, x107, x125, &_);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x110, x137, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x113, x140, &x155);
- { uint64_t x158; uint8_t x159 = _addcarryx_u64(x156, x116, x143, &x158);
- { uint64_t x161; uint8_t x162 = _addcarryx_u64(x159, x119, x146, &x161);
- { uint8_t x163 = (x162 + x120);
- { uint64_t x166; uint64_t x165 = _mulx_u64(x9, x11, &x166);
- { uint64_t x169; uint64_t x168 = _mulx_u64(x9, x13, &x169);
- { uint64_t x172; uint64_t x171 = _mulx_u64(x9, x15, &x172);
- { uint64_t x175; uint64_t x174 = _mulx_u64(x9, x14, &x175);
- { uint64_t x177; uint8_t x178 = _addcarryx_u64(0x0, x166, x168, &x177);
- { uint64_t x180; uint8_t x181 = _addcarryx_u64(x178, x169, x171, &x180);
- { uint64_t x183; uint8_t x184 = _addcarryx_u64(x181, x172, x174, &x183);
- { uint64_t x186; uint8_t _ = _addcarryx_u64(0x0, x184, x175, &x186);
- { uint64_t x189; uint8_t x190 = _addcarryx_u64(0x0, x152, x165, &x189);
- { uint64_t x192; uint8_t x193 = _addcarryx_u64(x190, x155, x177, &x192);
- { uint64_t x195; uint8_t x196 = _addcarryx_u64(x193, x158, x180, &x195);
- { uint64_t x198; uint8_t x199 = _addcarryx_u64(x196, x161, x183, &x198);
- { uint64_t x201; uint8_t x202 = _addcarryx_u64(x199, x163, x186, &x201);
- { uint64_t _; uint64_t x204 = _mulx_u64(x189, 0xcccccccccccccccdL, &_);
- { uint64_t x208; uint64_t x207 = _mulx_u64(x204, 0xfffffffffffffffbL, &x208);
- { uint64_t x211; uint64_t x210 = _mulx_u64(x204, 0xffffffffffffffffL, &x211);
- { uint64_t x214; uint64_t x213 = _mulx_u64(x204, 0xffffffffffffffffL, &x214);
- { uint64_t x217; uint64_t x216 = _mulx_u64(x204, 0x3ffffffff, &x217);
- { uint64_t x219; uint8_t x220 = _addcarryx_u64(0x0, x208, x210, &x219);
- { uint64_t x222; uint8_t x223 = _addcarryx_u64(x220, x211, x213, &x222);
- { uint64_t x225; uint8_t x226 = _addcarryx_u64(x223, x214, x216, &x225);
- { uint64_t x228; uint8_t _ = _addcarryx_u64(0x0, x226, x217, &x228);
- { uint64_t _; uint8_t x232 = _addcarryx_u64(0x0, x189, x207, &_);
- { uint64_t x234; uint8_t x235 = _addcarryx_u64(x232, x192, x219, &x234);
- { uint64_t x237; uint8_t x238 = _addcarryx_u64(x235, x195, x222, &x237);
- { uint64_t x240; uint8_t x241 = _addcarryx_u64(x238, x198, x225, &x240);
- { uint64_t x243; uint8_t x244 = _addcarryx_u64(x241, x201, x228, &x243);
- { uint8_t x245 = (x244 + x202);
- { uint64_t x248; uint64_t x247 = _mulx_u64(x8, x11, &x248);
- { uint64_t x251; uint64_t x250 = _mulx_u64(x8, x13, &x251);
- { uint64_t x254; uint64_t x253 = _mulx_u64(x8, x15, &x254);
- { uint64_t x257; uint64_t x256 = _mulx_u64(x8, x14, &x257);
- { uint64_t x259; uint8_t x260 = _addcarryx_u64(0x0, x248, x250, &x259);
- { uint64_t x262; uint8_t x263 = _addcarryx_u64(x260, x251, x253, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(x263, x254, x256, &x265);
- { uint64_t x268; uint8_t _ = _addcarryx_u64(0x0, x266, x257, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(0x0, x234, x247, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x237, x259, &x274);
- { uint64_t x277; uint8_t x278 = _addcarryx_u64(x275, x240, x262, &x277);
- { uint64_t x280; uint8_t x281 = _addcarryx_u64(x278, x243, x265, &x280);
- { uint64_t x283; uint8_t x284 = _addcarryx_u64(x281, x245, x268, &x283);
- { uint64_t _; uint64_t x286 = _mulx_u64(x271, 0xcccccccccccccccdL, &_);
- { uint64_t x290; uint64_t x289 = _mulx_u64(x286, 0xfffffffffffffffbL, &x290);
- { uint64_t x293; uint64_t x292 = _mulx_u64(x286, 0xffffffffffffffffL, &x293);
- { uint64_t x296; uint64_t x295 = _mulx_u64(x286, 0xffffffffffffffffL, &x296);
- { uint64_t x299; uint64_t x298 = _mulx_u64(x286, 0x3ffffffff, &x299);
- { uint64_t x301; uint8_t x302 = _addcarryx_u64(0x0, x290, x292, &x301);
- { uint64_t x304; uint8_t x305 = _addcarryx_u64(x302, x293, x295, &x304);
- { uint64_t x307; uint8_t x308 = _addcarryx_u64(x305, x296, x298, &x307);
- { uint64_t x310; uint8_t _ = _addcarryx_u64(0x0, x308, x299, &x310);
- { uint64_t _; uint8_t x314 = _addcarryx_u64(0x0, x271, x289, &_);
- { uint64_t x316; uint8_t x317 = _addcarryx_u64(x314, x274, x301, &x316);
- { uint64_t x319; uint8_t x320 = _addcarryx_u64(x317, x277, x304, &x319);
- { uint64_t x322; uint8_t x323 = _addcarryx_u64(x320, x280, x307, &x322);
- { uint64_t x325; uint8_t x326 = _addcarryx_u64(x323, x283, x310, &x325);
- { uint8_t x327 = (x326 + x284);
- { uint64_t x329; uint8_t x330 = _subborrow_u64(0x0, x316, 0xfffffffffffffffbL, &x329);
- { uint64_t x332; uint8_t x333 = _subborrow_u64(x330, x319, 0xffffffffffffffffL, &x332);
- { uint64_t x335; uint8_t x336 = _subborrow_u64(x333, x322, 0xffffffffffffffffL, &x335);
- { uint64_t x338; uint8_t x339 = _subborrow_u64(x336, x325, 0x3ffffffff, &x338);
- { uint64_t _; uint8_t x342 = _subborrow_u64(x339, x327, 0x0, &_);
- { uint64_t x343 = cmovznz64(x342, x338, x325);
- { uint64_t x344 = cmovznz64(x342, x335, x322);
- { uint64_t x345 = cmovznz64(x342, x332, x319);
- { uint64_t x346 = cmovznz64(x342, x329, x316);
- out[0] = x346;
- out[1] = x345;
- out[2] = x344;
- out[3] = x343;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e226m5_4limbs/femul.v b/src/Specific/montgomery64_2e226m5_4limbs/femul.v
deleted file mode 100644
index 3965c4d41..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e226m5_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e226m5_4limbs/femulDisplay.log b/src/Specific/montgomery64_2e226m5_4limbs/femulDisplay.log
deleted file mode 100644
index 646644444..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,122 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t _ = mulx_u64(x17, 0xcccccccccccccccdL);
- uint64_t x44, uint64_t x45 = mulx_u64(x41, 0xfffffffffffffffbL);
- uint64_t x47, uint64_t x48 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x50, uint64_t x51 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x53, uint64_t x54 = mulx_u64(x41, 0x3ffffffff);
- uint64_t x56, uint8_t x57 = addcarryx_u64(0x0, x45, x47);
- uint64_t x59, uint8_t x60 = addcarryx_u64(x57, x48, x50);
- uint64_t x62, uint8_t x63 = addcarryx_u64(x60, x51, x53);
- uint64_t x65, uint8_t _ = addcarryx_u64(0x0, x63, x54);
- uint64_t _, uint8_t x69 = addcarryx_u64(0x0, x17, x44);
- uint64_t x71, uint8_t x72 = addcarryx_u64(x69, x29, x56);
- uint64_t x74, uint8_t x75 = addcarryx_u64(x72, x32, x59);
- uint64_t x77, uint8_t x78 = addcarryx_u64(x75, x35, x62);
- uint64_t x80, uint8_t x81 = addcarryx_u64(x78, x38, x65);
- uint64_t x83, uint64_t x84 = mulx_u64(x7, x11);
- uint64_t x86, uint64_t x87 = mulx_u64(x7, x13);
- uint64_t x89, uint64_t x90 = mulx_u64(x7, x15);
- uint64_t x92, uint64_t x93 = mulx_u64(x7, x14);
- uint64_t x95, uint8_t x96 = addcarryx_u64(0x0, x84, x86);
- uint64_t x98, uint8_t x99 = addcarryx_u64(x96, x87, x89);
- uint64_t x101, uint8_t x102 = addcarryx_u64(x99, x90, x92);
- uint64_t x104, uint8_t _ = addcarryx_u64(0x0, x102, x93);
- uint64_t x107, uint8_t x108 = addcarryx_u64(0x0, x71, x83);
- uint64_t x110, uint8_t x111 = addcarryx_u64(x108, x74, x95);
- uint64_t x113, uint8_t x114 = addcarryx_u64(x111, x77, x98);
- uint64_t x116, uint8_t x117 = addcarryx_u64(x114, x80, x101);
- uint64_t x119, uint8_t x120 = addcarryx_u64(x117, x81, x104);
- uint64_t x122, uint64_t _ = mulx_u64(x107, 0xcccccccccccccccdL);
- uint64_t x125, uint64_t x126 = mulx_u64(x122, 0xfffffffffffffffbL);
- uint64_t x128, uint64_t x129 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x131, uint64_t x132 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x134, uint64_t x135 = mulx_u64(x122, 0x3ffffffff);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x126, x128);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x129, x131);
- uint64_t x143, uint8_t x144 = addcarryx_u64(x141, x132, x134);
- uint64_t x146, uint8_t _ = addcarryx_u64(0x0, x144, x135);
- uint64_t _, uint8_t x150 = addcarryx_u64(0x0, x107, x125);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x110, x137);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x113, x140);
- uint64_t x158, uint8_t x159 = addcarryx_u64(x156, x116, x143);
- uint64_t x161, uint8_t x162 = addcarryx_u64(x159, x119, x146);
- uint8_t x163 = (x162 + x120);
- uint64_t x165, uint64_t x166 = mulx_u64(x9, x11);
- uint64_t x168, uint64_t x169 = mulx_u64(x9, x13);
- uint64_t x171, uint64_t x172 = mulx_u64(x9, x15);
- uint64_t x174, uint64_t x175 = mulx_u64(x9, x14);
- uint64_t x177, uint8_t x178 = addcarryx_u64(0x0, x166, x168);
- uint64_t x180, uint8_t x181 = addcarryx_u64(x178, x169, x171);
- uint64_t x183, uint8_t x184 = addcarryx_u64(x181, x172, x174);
- uint64_t x186, uint8_t _ = addcarryx_u64(0x0, x184, x175);
- uint64_t x189, uint8_t x190 = addcarryx_u64(0x0, x152, x165);
- uint64_t x192, uint8_t x193 = addcarryx_u64(x190, x155, x177);
- uint64_t x195, uint8_t x196 = addcarryx_u64(x193, x158, x180);
- uint64_t x198, uint8_t x199 = addcarryx_u64(x196, x161, x183);
- uint64_t x201, uint8_t x202 = addcarryx_u64(x199, x163, x186);
- uint64_t x204, uint64_t _ = mulx_u64(x189, 0xcccccccccccccccdL);
- uint64_t x207, uint64_t x208 = mulx_u64(x204, 0xfffffffffffffffbL);
- uint64_t x210, uint64_t x211 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x213, uint64_t x214 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x216, uint64_t x217 = mulx_u64(x204, 0x3ffffffff);
- uint64_t x219, uint8_t x220 = addcarryx_u64(0x0, x208, x210);
- uint64_t x222, uint8_t x223 = addcarryx_u64(x220, x211, x213);
- uint64_t x225, uint8_t x226 = addcarryx_u64(x223, x214, x216);
- uint64_t x228, uint8_t _ = addcarryx_u64(0x0, x226, x217);
- uint64_t _, uint8_t x232 = addcarryx_u64(0x0, x189, x207);
- uint64_t x234, uint8_t x235 = addcarryx_u64(x232, x192, x219);
- uint64_t x237, uint8_t x238 = addcarryx_u64(x235, x195, x222);
- uint64_t x240, uint8_t x241 = addcarryx_u64(x238, x198, x225);
- uint64_t x243, uint8_t x244 = addcarryx_u64(x241, x201, x228);
- uint8_t x245 = (x244 + x202);
- uint64_t x247, uint64_t x248 = mulx_u64(x8, x11);
- uint64_t x250, uint64_t x251 = mulx_u64(x8, x13);
- uint64_t x253, uint64_t x254 = mulx_u64(x8, x15);
- uint64_t x256, uint64_t x257 = mulx_u64(x8, x14);
- uint64_t x259, uint8_t x260 = addcarryx_u64(0x0, x248, x250);
- uint64_t x262, uint8_t x263 = addcarryx_u64(x260, x251, x253);
- uint64_t x265, uint8_t x266 = addcarryx_u64(x263, x254, x256);
- uint64_t x268, uint8_t _ = addcarryx_u64(0x0, x266, x257);
- uint64_t x271, uint8_t x272 = addcarryx_u64(0x0, x234, x247);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x237, x259);
- uint64_t x277, uint8_t x278 = addcarryx_u64(x275, x240, x262);
- uint64_t x280, uint8_t x281 = addcarryx_u64(x278, x243, x265);
- uint64_t x283, uint8_t x284 = addcarryx_u64(x281, x245, x268);
- uint64_t x286, uint64_t _ = mulx_u64(x271, 0xcccccccccccccccdL);
- uint64_t x289, uint64_t x290 = mulx_u64(x286, 0xfffffffffffffffbL);
- uint64_t x292, uint64_t x293 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x295, uint64_t x296 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x298, uint64_t x299 = mulx_u64(x286, 0x3ffffffff);
- uint64_t x301, uint8_t x302 = addcarryx_u64(0x0, x290, x292);
- uint64_t x304, uint8_t x305 = addcarryx_u64(x302, x293, x295);
- uint64_t x307, uint8_t x308 = addcarryx_u64(x305, x296, x298);
- uint64_t x310, uint8_t _ = addcarryx_u64(0x0, x308, x299);
- uint64_t _, uint8_t x314 = addcarryx_u64(0x0, x271, x289);
- uint64_t x316, uint8_t x317 = addcarryx_u64(x314, x274, x301);
- uint64_t x319, uint8_t x320 = addcarryx_u64(x317, x277, x304);
- uint64_t x322, uint8_t x323 = addcarryx_u64(x320, x280, x307);
- uint64_t x325, uint8_t x326 = addcarryx_u64(x323, x283, x310);
- uint8_t x327 = (x326 + x284);
- uint64_t x329, uint8_t x330 = subborrow_u64(0x0, x316, 0xfffffffffffffffbL);
- uint64_t x332, uint8_t x333 = subborrow_u64(x330, x319, 0xffffffffffffffffL);
- uint64_t x335, uint8_t x336 = subborrow_u64(x333, x322, 0xffffffffffffffffL);
- uint64_t x338, uint8_t x339 = subborrow_u64(x336, x325, 0x3ffffffff);
- uint64_t _, uint8_t x342 = subborrow_u64(x339, x327, 0x0);
- uint64_t x343 = cmovznz64(x342, x338, x325);
- uint64_t x344 = cmovznz64(x342, x335, x322);
- uint64_t x345 = cmovznz64(x342, x332, x319);
- uint64_t x346 = cmovznz64(x342, x329, x316);
- return (x343, x344, x345, x346))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e226m5_4limbs/femulDisplay.v b/src/Specific/montgomery64_2e226m5_4limbs/femulDisplay.v
deleted file mode 100644
index bcf32be28..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e226m5_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e226m5_4limbs/fenz.c b/src/Specific/montgomery64_2e226m5_4limbs/fenz.c
deleted file mode 100644
index 7541094ff..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x7 = (x6 | x5);
- { uint64_t x8 = (x4 | x7);
- { uint64_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e226m5_4limbs/fenz.v b/src/Specific/montgomery64_2e226m5_4limbs/fenz.v
deleted file mode 100644
index 5aed15975..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e226m5_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e226m5_4limbs/fenzDisplay.log b/src/Specific/montgomery64_2e226m5_4limbs/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e226m5_4limbs/fenzDisplay.v b/src/Specific/montgomery64_2e226m5_4limbs/fenzDisplay.v
deleted file mode 100644
index 8ef3e785d..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e226m5_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e226m5_4limbs/feopp.c b/src/Specific/montgomery64_2e226m5_4limbs/feopp.c
deleted file mode 100644
index 6f2c1f751..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/feopp.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feopp(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8; uint8_t x9 = _subborrow_u64(0x0, 0x0, x2, &x8);
- { uint64_t x11; uint8_t x12 = _subborrow_u64(x9, 0x0, x4, &x11);
- { uint64_t x14; uint8_t x15 = _subborrow_u64(x12, 0x0, x6, &x14);
- { uint64_t x17; uint8_t x18 = _subborrow_u64(x15, 0x0, x5, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xfffffffffffffffbL);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x8, x20, &x22);
- { uint64_t x24 = (x19 & 0xffffffffffffffffL);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x23, x11, x24, &x26);
- { uint64_t x28 = (x19 & 0xffffffffffffffffL);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x27, x14, x28, &x30);
- { uint64_t x32 = (x19 & 0x3ffffffff);
- { uint64_t x34; uint8_t _ = _addcarryx_u64(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e226m5_4limbs/feopp.v b/src/Specific/montgomery64_2e226m5_4limbs/feopp.v
deleted file mode 100644
index a8007ab31..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e226m5_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e226m5_4limbs/feoppDisplay.log b/src/Specific/montgomery64_2e226m5_4limbs/feoppDisplay.log
deleted file mode 100644
index dc4cd833a..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xfffffffffffffffbL);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffffffffffffffL);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x28 = (x19 & 0xffffffffffffffffL);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x27, x14, x28);
- uint64_t x32 = (x19 & 0x3ffffffff);
- uint64_t x34, uint8_t _ = addcarryx_u64(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e226m5_4limbs/feoppDisplay.v b/src/Specific/montgomery64_2e226m5_4limbs/feoppDisplay.v
deleted file mode 100644
index f16c25942..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e226m5_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e226m5_4limbs/fesquare.c b/src/Specific/montgomery64_2e226m5_4limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e226m5_4limbs/fesub.c b/src/Specific/montgomery64_2e226m5_4limbs/fesub.c
deleted file mode 100644
index 0bd48dc55..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/fesub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _subborrow_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _subborrow_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _subborrow_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u64(x24, x8, x14, &x26);
- { uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- { uint64_t x29 = (x28 & 0xfffffffffffffffbL);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(0x0, x17, x29, &x31);
- { uint64_t x33 = (x28 & 0xffffffffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x20, x33, &x35);
- { uint64_t x37 = (x28 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x23, x37, &x39);
- { uint64_t x41 = (x28 & 0x3ffffffff);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x26, x41, &x43);
- out[0] = x31;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e226m5_4limbs/fesub.v b/src/Specific/montgomery64_2e226m5_4limbs/fesub.v
deleted file mode 100644
index e3ef8730b..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e226m5_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e226m5_4limbs/fesubDisplay.log b/src/Specific/montgomery64_2e226m5_4limbs/fesubDisplay.log
deleted file mode 100644
index cf4c950b3..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint64_t x29 = (x28 & 0xfffffffffffffffbL);
- uint64_t x31, uint8_t x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x37 = (x28 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x23, x37);
- uint64_t x41 = (x28 & 0x3ffffffff);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x26, x41);
- (Return x43, Return x39, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e226m5_4limbs/fesubDisplay.v b/src/Specific/montgomery64_2e226m5_4limbs/fesubDisplay.v
deleted file mode 100644
index bb87a8f2f..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e226m5_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e226m5_4limbs/py_interpreter.sh b/src/Specific/montgomery64_2e226m5_4limbs/py_interpreter.sh
deleted file mode 100755
index 7850c705f..000000000
--- a/src/Specific/montgomery64_2e226m5_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**226 - 5' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e230m27_4limbs/CurveParameters.v b/src/Specific/montgomery64_2e230m27_4limbs/CurveParameters.v
deleted file mode 100644
index 488698c86..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^230 - 27
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 64;
- bitwidth := 64;
- s := 2^230;
- c := [(1, 27)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e230m27_4limbs/Synthesis.v b/src/Specific/montgomery64_2e230m27_4limbs/Synthesis.v
deleted file mode 100644
index f26b1a0be..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e230m27_4limbs.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/montgomery64_2e230m27_4limbs/compiler.sh b/src/Specific/montgomery64_2e230m27_4limbs/compiler.sh
deleted file mode 100755
index ecd2cb3f0..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<230) - 27' "$@"
diff --git a/src/Specific/montgomery64_2e230m27_4limbs/compilerxx.sh b/src/Specific/montgomery64_2e230m27_4limbs/compilerxx.sh
deleted file mode 100755
index e367d075e..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<230) - 27' "$@"
diff --git a/src/Specific/montgomery64_2e230m27_4limbs/feadd.c b/src/Specific/montgomery64_2e230m27_4limbs/feadd.c
deleted file mode 100644
index 0027b2e0e..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _addcarryx_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _addcarryx_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x24, x8, x14, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u64(0x0, x17, 0xffffffffffffffe5L, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u64(x30, x20, 0xffffffffffffffffL, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u64(x33, x23, 0xffffffffffffffffL, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u64(x36, x26, 0x3fffffffff, &x38);
- { uint64_t _; uint8_t x42 = _subborrow_u64(x39, x27, 0x0, &_);
- { uint64_t x43 = cmovznz64(x42, x38, x26);
- { uint64_t x44 = cmovznz64(x42, x35, x23);
- { uint64_t x45 = cmovznz64(x42, x32, x20);
- { uint64_t x46 = cmovznz64(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e230m27_4limbs/feadd.v b/src/Specific/montgomery64_2e230m27_4limbs/feadd.v
deleted file mode 100644
index 0d7c759cb..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e230m27_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e230m27_4limbs/feaddDisplay.log b/src/Specific/montgomery64_2e230m27_4limbs/feaddDisplay.log
deleted file mode 100644
index e6e4b6cfe..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t x30 = subborrow_u64(0x0, x17, 0xffffffffffffffe5L);
- uint64_t x32, uint8_t x33 = subborrow_u64(x30, x20, 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = subborrow_u64(x33, x23, 0xffffffffffffffffL);
- uint64_t x38, uint8_t x39 = subborrow_u64(x36, x26, 0x3fffffffff);
- uint64_t _, uint8_t x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e230m27_4limbs/feaddDisplay.v b/src/Specific/montgomery64_2e230m27_4limbs/feaddDisplay.v
deleted file mode 100644
index 46cfb118e..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e230m27_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e230m27_4limbs/femul.c b/src/Specific/montgomery64_2e230m27_4limbs/femul.c
deleted file mode 100644
index 11104a07f..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/femul.c
+++ /dev/null
@@ -1,130 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x18; uint64_t x17 = _mulx_u64(x5, x11, &x18);
- { uint64_t x21; uint64_t x20 = _mulx_u64(x5, x13, &x21);
- { uint64_t x24; uint64_t x23 = _mulx_u64(x5, x15, &x24);
- { uint64_t x27; uint64_t x26 = _mulx_u64(x5, x14, &x27);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x18, x20, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x21, x23, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x24, x26, &x35);
- { uint64_t x38; uint8_t _ = _addcarryx_u64(0x0, x36, x27, &x38);
- { uint64_t _; uint64_t x41 = _mulx_u64(x17, 0x84bda12f684bda13L, &_);
- { uint64_t x45; uint64_t x44 = _mulx_u64(x41, 0xffffffffffffffe5L, &x45);
- { uint64_t x48; uint64_t x47 = _mulx_u64(x41, 0xffffffffffffffffL, &x48);
- { uint64_t x51; uint64_t x50 = _mulx_u64(x41, 0xffffffffffffffffL, &x51);
- { uint64_t x54; uint64_t x53 = _mulx_u64(x41, 0x3fffffffff, &x54);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(0x0, x45, x47, &x56);
- { uint64_t x59; uint8_t x60 = _addcarryx_u64(x57, x48, x50, &x59);
- { uint64_t x62; uint8_t x63 = _addcarryx_u64(x60, x51, x53, &x62);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(0x0, x63, x54, &x65);
- { uint64_t _; uint8_t x69 = _addcarryx_u64(0x0, x17, x44, &_);
- { uint64_t x71; uint8_t x72 = _addcarryx_u64(x69, x29, x56, &x71);
- { uint64_t x74; uint8_t x75 = _addcarryx_u64(x72, x32, x59, &x74);
- { uint64_t x77; uint8_t x78 = _addcarryx_u64(x75, x35, x62, &x77);
- { uint64_t x80; uint8_t x81 = _addcarryx_u64(x78, x38, x65, &x80);
- { uint64_t x84; uint64_t x83 = _mulx_u64(x7, x11, &x84);
- { uint64_t x87; uint64_t x86 = _mulx_u64(x7, x13, &x87);
- { uint64_t x90; uint64_t x89 = _mulx_u64(x7, x15, &x90);
- { uint64_t x93; uint64_t x92 = _mulx_u64(x7, x14, &x93);
- { uint64_t x95; uint8_t x96 = _addcarryx_u64(0x0, x84, x86, &x95);
- { uint64_t x98; uint8_t x99 = _addcarryx_u64(x96, x87, x89, &x98);
- { uint64_t x101; uint8_t x102 = _addcarryx_u64(x99, x90, x92, &x101);
- { uint64_t x104; uint8_t _ = _addcarryx_u64(0x0, x102, x93, &x104);
- { uint64_t x107; uint8_t x108 = _addcarryx_u64(0x0, x71, x83, &x107);
- { uint64_t x110; uint8_t x111 = _addcarryx_u64(x108, x74, x95, &x110);
- { uint64_t x113; uint8_t x114 = _addcarryx_u64(x111, x77, x98, &x113);
- { uint64_t x116; uint8_t x117 = _addcarryx_u64(x114, x80, x101, &x116);
- { uint64_t x119; uint8_t x120 = _addcarryx_u64(x117, x81, x104, &x119);
- { uint64_t _; uint64_t x122 = _mulx_u64(x107, 0x84bda12f684bda13L, &_);
- { uint64_t x126; uint64_t x125 = _mulx_u64(x122, 0xffffffffffffffe5L, &x126);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x122, 0xffffffffffffffffL, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x122, 0xffffffffffffffffL, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x122, 0x3fffffffff, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x126, x128, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x129, x131, &x140);
- { uint64_t x143; uint8_t x144 = _addcarryx_u64(x141, x132, x134, &x143);
- { uint64_t x146; uint8_t _ = _addcarryx_u64(0x0, x144, x135, &x146);
- { uint64_t _; uint8_t x150 = _addcarryx_u64(0x0, x107, x125, &_);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x110, x137, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x113, x140, &x155);
- { uint64_t x158; uint8_t x159 = _addcarryx_u64(x156, x116, x143, &x158);
- { uint64_t x161; uint8_t x162 = _addcarryx_u64(x159, x119, x146, &x161);
- { uint8_t x163 = (x162 + x120);
- { uint64_t x166; uint64_t x165 = _mulx_u64(x9, x11, &x166);
- { uint64_t x169; uint64_t x168 = _mulx_u64(x9, x13, &x169);
- { uint64_t x172; uint64_t x171 = _mulx_u64(x9, x15, &x172);
- { uint64_t x175; uint64_t x174 = _mulx_u64(x9, x14, &x175);
- { uint64_t x177; uint8_t x178 = _addcarryx_u64(0x0, x166, x168, &x177);
- { uint64_t x180; uint8_t x181 = _addcarryx_u64(x178, x169, x171, &x180);
- { uint64_t x183; uint8_t x184 = _addcarryx_u64(x181, x172, x174, &x183);
- { uint64_t x186; uint8_t _ = _addcarryx_u64(0x0, x184, x175, &x186);
- { uint64_t x189; uint8_t x190 = _addcarryx_u64(0x0, x152, x165, &x189);
- { uint64_t x192; uint8_t x193 = _addcarryx_u64(x190, x155, x177, &x192);
- { uint64_t x195; uint8_t x196 = _addcarryx_u64(x193, x158, x180, &x195);
- { uint64_t x198; uint8_t x199 = _addcarryx_u64(x196, x161, x183, &x198);
- { uint64_t x201; uint8_t x202 = _addcarryx_u64(x199, x163, x186, &x201);
- { uint64_t _; uint64_t x204 = _mulx_u64(x189, 0x84bda12f684bda13L, &_);
- { uint64_t x208; uint64_t x207 = _mulx_u64(x204, 0xffffffffffffffe5L, &x208);
- { uint64_t x211; uint64_t x210 = _mulx_u64(x204, 0xffffffffffffffffL, &x211);
- { uint64_t x214; uint64_t x213 = _mulx_u64(x204, 0xffffffffffffffffL, &x214);
- { uint64_t x217; uint64_t x216 = _mulx_u64(x204, 0x3fffffffff, &x217);
- { uint64_t x219; uint8_t x220 = _addcarryx_u64(0x0, x208, x210, &x219);
- { uint64_t x222; uint8_t x223 = _addcarryx_u64(x220, x211, x213, &x222);
- { uint64_t x225; uint8_t x226 = _addcarryx_u64(x223, x214, x216, &x225);
- { uint64_t x228; uint8_t _ = _addcarryx_u64(0x0, x226, x217, &x228);
- { uint64_t _; uint8_t x232 = _addcarryx_u64(0x0, x189, x207, &_);
- { uint64_t x234; uint8_t x235 = _addcarryx_u64(x232, x192, x219, &x234);
- { uint64_t x237; uint8_t x238 = _addcarryx_u64(x235, x195, x222, &x237);
- { uint64_t x240; uint8_t x241 = _addcarryx_u64(x238, x198, x225, &x240);
- { uint64_t x243; uint8_t x244 = _addcarryx_u64(x241, x201, x228, &x243);
- { uint8_t x245 = (x244 + x202);
- { uint64_t x248; uint64_t x247 = _mulx_u64(x8, x11, &x248);
- { uint64_t x251; uint64_t x250 = _mulx_u64(x8, x13, &x251);
- { uint64_t x254; uint64_t x253 = _mulx_u64(x8, x15, &x254);
- { uint64_t x257; uint64_t x256 = _mulx_u64(x8, x14, &x257);
- { uint64_t x259; uint8_t x260 = _addcarryx_u64(0x0, x248, x250, &x259);
- { uint64_t x262; uint8_t x263 = _addcarryx_u64(x260, x251, x253, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(x263, x254, x256, &x265);
- { uint64_t x268; uint8_t _ = _addcarryx_u64(0x0, x266, x257, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(0x0, x234, x247, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x237, x259, &x274);
- { uint64_t x277; uint8_t x278 = _addcarryx_u64(x275, x240, x262, &x277);
- { uint64_t x280; uint8_t x281 = _addcarryx_u64(x278, x243, x265, &x280);
- { uint64_t x283; uint8_t x284 = _addcarryx_u64(x281, x245, x268, &x283);
- { uint64_t _; uint64_t x286 = _mulx_u64(x271, 0x84bda12f684bda13L, &_);
- { uint64_t x290; uint64_t x289 = _mulx_u64(x286, 0xffffffffffffffe5L, &x290);
- { uint64_t x293; uint64_t x292 = _mulx_u64(x286, 0xffffffffffffffffL, &x293);
- { uint64_t x296; uint64_t x295 = _mulx_u64(x286, 0xffffffffffffffffL, &x296);
- { uint64_t x299; uint64_t x298 = _mulx_u64(x286, 0x3fffffffff, &x299);
- { uint64_t x301; uint8_t x302 = _addcarryx_u64(0x0, x290, x292, &x301);
- { uint64_t x304; uint8_t x305 = _addcarryx_u64(x302, x293, x295, &x304);
- { uint64_t x307; uint8_t x308 = _addcarryx_u64(x305, x296, x298, &x307);
- { uint64_t x310; uint8_t _ = _addcarryx_u64(0x0, x308, x299, &x310);
- { uint64_t _; uint8_t x314 = _addcarryx_u64(0x0, x271, x289, &_);
- { uint64_t x316; uint8_t x317 = _addcarryx_u64(x314, x274, x301, &x316);
- { uint64_t x319; uint8_t x320 = _addcarryx_u64(x317, x277, x304, &x319);
- { uint64_t x322; uint8_t x323 = _addcarryx_u64(x320, x280, x307, &x322);
- { uint64_t x325; uint8_t x326 = _addcarryx_u64(x323, x283, x310, &x325);
- { uint8_t x327 = (x326 + x284);
- { uint64_t x329; uint8_t x330 = _subborrow_u64(0x0, x316, 0xffffffffffffffe5L, &x329);
- { uint64_t x332; uint8_t x333 = _subborrow_u64(x330, x319, 0xffffffffffffffffL, &x332);
- { uint64_t x335; uint8_t x336 = _subborrow_u64(x333, x322, 0xffffffffffffffffL, &x335);
- { uint64_t x338; uint8_t x339 = _subborrow_u64(x336, x325, 0x3fffffffff, &x338);
- { uint64_t _; uint8_t x342 = _subborrow_u64(x339, x327, 0x0, &_);
- { uint64_t x343 = cmovznz64(x342, x338, x325);
- { uint64_t x344 = cmovznz64(x342, x335, x322);
- { uint64_t x345 = cmovznz64(x342, x332, x319);
- { uint64_t x346 = cmovznz64(x342, x329, x316);
- out[0] = x346;
- out[1] = x345;
- out[2] = x344;
- out[3] = x343;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e230m27_4limbs/femul.v b/src/Specific/montgomery64_2e230m27_4limbs/femul.v
deleted file mode 100644
index 662a17122..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e230m27_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e230m27_4limbs/femulDisplay.log b/src/Specific/montgomery64_2e230m27_4limbs/femulDisplay.log
deleted file mode 100644
index 4f8e62a26..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,122 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t _ = mulx_u64(x17, 0x84bda12f684bda13L);
- uint64_t x44, uint64_t x45 = mulx_u64(x41, 0xffffffffffffffe5L);
- uint64_t x47, uint64_t x48 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x50, uint64_t x51 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x53, uint64_t x54 = mulx_u64(x41, 0x3fffffffff);
- uint64_t x56, uint8_t x57 = addcarryx_u64(0x0, x45, x47);
- uint64_t x59, uint8_t x60 = addcarryx_u64(x57, x48, x50);
- uint64_t x62, uint8_t x63 = addcarryx_u64(x60, x51, x53);
- uint64_t x65, uint8_t _ = addcarryx_u64(0x0, x63, x54);
- uint64_t _, uint8_t x69 = addcarryx_u64(0x0, x17, x44);
- uint64_t x71, uint8_t x72 = addcarryx_u64(x69, x29, x56);
- uint64_t x74, uint8_t x75 = addcarryx_u64(x72, x32, x59);
- uint64_t x77, uint8_t x78 = addcarryx_u64(x75, x35, x62);
- uint64_t x80, uint8_t x81 = addcarryx_u64(x78, x38, x65);
- uint64_t x83, uint64_t x84 = mulx_u64(x7, x11);
- uint64_t x86, uint64_t x87 = mulx_u64(x7, x13);
- uint64_t x89, uint64_t x90 = mulx_u64(x7, x15);
- uint64_t x92, uint64_t x93 = mulx_u64(x7, x14);
- uint64_t x95, uint8_t x96 = addcarryx_u64(0x0, x84, x86);
- uint64_t x98, uint8_t x99 = addcarryx_u64(x96, x87, x89);
- uint64_t x101, uint8_t x102 = addcarryx_u64(x99, x90, x92);
- uint64_t x104, uint8_t _ = addcarryx_u64(0x0, x102, x93);
- uint64_t x107, uint8_t x108 = addcarryx_u64(0x0, x71, x83);
- uint64_t x110, uint8_t x111 = addcarryx_u64(x108, x74, x95);
- uint64_t x113, uint8_t x114 = addcarryx_u64(x111, x77, x98);
- uint64_t x116, uint8_t x117 = addcarryx_u64(x114, x80, x101);
- uint64_t x119, uint8_t x120 = addcarryx_u64(x117, x81, x104);
- uint64_t x122, uint64_t _ = mulx_u64(x107, 0x84bda12f684bda13L);
- uint64_t x125, uint64_t x126 = mulx_u64(x122, 0xffffffffffffffe5L);
- uint64_t x128, uint64_t x129 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x131, uint64_t x132 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x134, uint64_t x135 = mulx_u64(x122, 0x3fffffffff);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x126, x128);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x129, x131);
- uint64_t x143, uint8_t x144 = addcarryx_u64(x141, x132, x134);
- uint64_t x146, uint8_t _ = addcarryx_u64(0x0, x144, x135);
- uint64_t _, uint8_t x150 = addcarryx_u64(0x0, x107, x125);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x110, x137);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x113, x140);
- uint64_t x158, uint8_t x159 = addcarryx_u64(x156, x116, x143);
- uint64_t x161, uint8_t x162 = addcarryx_u64(x159, x119, x146);
- uint8_t x163 = (x162 + x120);
- uint64_t x165, uint64_t x166 = mulx_u64(x9, x11);
- uint64_t x168, uint64_t x169 = mulx_u64(x9, x13);
- uint64_t x171, uint64_t x172 = mulx_u64(x9, x15);
- uint64_t x174, uint64_t x175 = mulx_u64(x9, x14);
- uint64_t x177, uint8_t x178 = addcarryx_u64(0x0, x166, x168);
- uint64_t x180, uint8_t x181 = addcarryx_u64(x178, x169, x171);
- uint64_t x183, uint8_t x184 = addcarryx_u64(x181, x172, x174);
- uint64_t x186, uint8_t _ = addcarryx_u64(0x0, x184, x175);
- uint64_t x189, uint8_t x190 = addcarryx_u64(0x0, x152, x165);
- uint64_t x192, uint8_t x193 = addcarryx_u64(x190, x155, x177);
- uint64_t x195, uint8_t x196 = addcarryx_u64(x193, x158, x180);
- uint64_t x198, uint8_t x199 = addcarryx_u64(x196, x161, x183);
- uint64_t x201, uint8_t x202 = addcarryx_u64(x199, x163, x186);
- uint64_t x204, uint64_t _ = mulx_u64(x189, 0x84bda12f684bda13L);
- uint64_t x207, uint64_t x208 = mulx_u64(x204, 0xffffffffffffffe5L);
- uint64_t x210, uint64_t x211 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x213, uint64_t x214 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x216, uint64_t x217 = mulx_u64(x204, 0x3fffffffff);
- uint64_t x219, uint8_t x220 = addcarryx_u64(0x0, x208, x210);
- uint64_t x222, uint8_t x223 = addcarryx_u64(x220, x211, x213);
- uint64_t x225, uint8_t x226 = addcarryx_u64(x223, x214, x216);
- uint64_t x228, uint8_t _ = addcarryx_u64(0x0, x226, x217);
- uint64_t _, uint8_t x232 = addcarryx_u64(0x0, x189, x207);
- uint64_t x234, uint8_t x235 = addcarryx_u64(x232, x192, x219);
- uint64_t x237, uint8_t x238 = addcarryx_u64(x235, x195, x222);
- uint64_t x240, uint8_t x241 = addcarryx_u64(x238, x198, x225);
- uint64_t x243, uint8_t x244 = addcarryx_u64(x241, x201, x228);
- uint8_t x245 = (x244 + x202);
- uint64_t x247, uint64_t x248 = mulx_u64(x8, x11);
- uint64_t x250, uint64_t x251 = mulx_u64(x8, x13);
- uint64_t x253, uint64_t x254 = mulx_u64(x8, x15);
- uint64_t x256, uint64_t x257 = mulx_u64(x8, x14);
- uint64_t x259, uint8_t x260 = addcarryx_u64(0x0, x248, x250);
- uint64_t x262, uint8_t x263 = addcarryx_u64(x260, x251, x253);
- uint64_t x265, uint8_t x266 = addcarryx_u64(x263, x254, x256);
- uint64_t x268, uint8_t _ = addcarryx_u64(0x0, x266, x257);
- uint64_t x271, uint8_t x272 = addcarryx_u64(0x0, x234, x247);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x237, x259);
- uint64_t x277, uint8_t x278 = addcarryx_u64(x275, x240, x262);
- uint64_t x280, uint8_t x281 = addcarryx_u64(x278, x243, x265);
- uint64_t x283, uint8_t x284 = addcarryx_u64(x281, x245, x268);
- uint64_t x286, uint64_t _ = mulx_u64(x271, 0x84bda12f684bda13L);
- uint64_t x289, uint64_t x290 = mulx_u64(x286, 0xffffffffffffffe5L);
- uint64_t x292, uint64_t x293 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x295, uint64_t x296 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x298, uint64_t x299 = mulx_u64(x286, 0x3fffffffff);
- uint64_t x301, uint8_t x302 = addcarryx_u64(0x0, x290, x292);
- uint64_t x304, uint8_t x305 = addcarryx_u64(x302, x293, x295);
- uint64_t x307, uint8_t x308 = addcarryx_u64(x305, x296, x298);
- uint64_t x310, uint8_t _ = addcarryx_u64(0x0, x308, x299);
- uint64_t _, uint8_t x314 = addcarryx_u64(0x0, x271, x289);
- uint64_t x316, uint8_t x317 = addcarryx_u64(x314, x274, x301);
- uint64_t x319, uint8_t x320 = addcarryx_u64(x317, x277, x304);
- uint64_t x322, uint8_t x323 = addcarryx_u64(x320, x280, x307);
- uint64_t x325, uint8_t x326 = addcarryx_u64(x323, x283, x310);
- uint8_t x327 = (x326 + x284);
- uint64_t x329, uint8_t x330 = subborrow_u64(0x0, x316, 0xffffffffffffffe5L);
- uint64_t x332, uint8_t x333 = subborrow_u64(x330, x319, 0xffffffffffffffffL);
- uint64_t x335, uint8_t x336 = subborrow_u64(x333, x322, 0xffffffffffffffffL);
- uint64_t x338, uint8_t x339 = subborrow_u64(x336, x325, 0x3fffffffff);
- uint64_t _, uint8_t x342 = subborrow_u64(x339, x327, 0x0);
- uint64_t x343 = cmovznz64(x342, x338, x325);
- uint64_t x344 = cmovznz64(x342, x335, x322);
- uint64_t x345 = cmovznz64(x342, x332, x319);
- uint64_t x346 = cmovznz64(x342, x329, x316);
- return (x343, x344, x345, x346))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e230m27_4limbs/femulDisplay.v b/src/Specific/montgomery64_2e230m27_4limbs/femulDisplay.v
deleted file mode 100644
index e5bbdda0b..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e230m27_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e230m27_4limbs/fenz.c b/src/Specific/montgomery64_2e230m27_4limbs/fenz.c
deleted file mode 100644
index 7541094ff..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x7 = (x6 | x5);
- { uint64_t x8 = (x4 | x7);
- { uint64_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e230m27_4limbs/fenz.v b/src/Specific/montgomery64_2e230m27_4limbs/fenz.v
deleted file mode 100644
index bd7592861..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e230m27_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e230m27_4limbs/fenzDisplay.log b/src/Specific/montgomery64_2e230m27_4limbs/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e230m27_4limbs/fenzDisplay.v b/src/Specific/montgomery64_2e230m27_4limbs/fenzDisplay.v
deleted file mode 100644
index 71a83217d..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e230m27_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e230m27_4limbs/feopp.c b/src/Specific/montgomery64_2e230m27_4limbs/feopp.c
deleted file mode 100644
index a94c07462..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/feopp.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feopp(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8; uint8_t x9 = _subborrow_u64(0x0, 0x0, x2, &x8);
- { uint64_t x11; uint8_t x12 = _subborrow_u64(x9, 0x0, x4, &x11);
- { uint64_t x14; uint8_t x15 = _subborrow_u64(x12, 0x0, x6, &x14);
- { uint64_t x17; uint8_t x18 = _subborrow_u64(x15, 0x0, x5, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xffffffffffffffe5L);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x8, x20, &x22);
- { uint64_t x24 = (x19 & 0xffffffffffffffffL);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x23, x11, x24, &x26);
- { uint64_t x28 = (x19 & 0xffffffffffffffffL);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x27, x14, x28, &x30);
- { uint64_t x32 = (x19 & 0x3fffffffff);
- { uint64_t x34; uint8_t _ = _addcarryx_u64(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e230m27_4limbs/feopp.v b/src/Specific/montgomery64_2e230m27_4limbs/feopp.v
deleted file mode 100644
index 72ca4d646..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e230m27_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e230m27_4limbs/feoppDisplay.log b/src/Specific/montgomery64_2e230m27_4limbs/feoppDisplay.log
deleted file mode 100644
index 467219dc4..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xffffffffffffffe5L);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffffffffffffffL);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x28 = (x19 & 0xffffffffffffffffL);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x27, x14, x28);
- uint64_t x32 = (x19 & 0x3fffffffff);
- uint64_t x34, uint8_t _ = addcarryx_u64(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e230m27_4limbs/feoppDisplay.v b/src/Specific/montgomery64_2e230m27_4limbs/feoppDisplay.v
deleted file mode 100644
index 303cc946a..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e230m27_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e230m27_4limbs/fesquare.c b/src/Specific/montgomery64_2e230m27_4limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e230m27_4limbs/fesub.c b/src/Specific/montgomery64_2e230m27_4limbs/fesub.c
deleted file mode 100644
index 0227c54e6..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/fesub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _subborrow_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _subborrow_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _subborrow_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u64(x24, x8, x14, &x26);
- { uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- { uint64_t x29 = (x28 & 0xffffffffffffffe5L);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(0x0, x17, x29, &x31);
- { uint64_t x33 = (x28 & 0xffffffffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x20, x33, &x35);
- { uint64_t x37 = (x28 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x23, x37, &x39);
- { uint64_t x41 = (x28 & 0x3fffffffff);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x26, x41, &x43);
- out[0] = x31;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e230m27_4limbs/fesub.v b/src/Specific/montgomery64_2e230m27_4limbs/fesub.v
deleted file mode 100644
index b1ccc65aa..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e230m27_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e230m27_4limbs/fesubDisplay.log b/src/Specific/montgomery64_2e230m27_4limbs/fesubDisplay.log
deleted file mode 100644
index 08985aaf7..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint64_t x29 = (x28 & 0xffffffffffffffe5L);
- uint64_t x31, uint8_t x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x37 = (x28 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x23, x37);
- uint64_t x41 = (x28 & 0x3fffffffff);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x26, x41);
- (Return x43, Return x39, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e230m27_4limbs/fesubDisplay.v b/src/Specific/montgomery64_2e230m27_4limbs/fesubDisplay.v
deleted file mode 100644
index 831205a62..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e230m27_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e230m27_4limbs/py_interpreter.sh b/src/Specific/montgomery64_2e230m27_4limbs/py_interpreter.sh
deleted file mode 100755
index 069fa6d19..000000000
--- a/src/Specific/montgomery64_2e230m27_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**230 - 27' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e235m15_4limbs/CurveParameters.v b/src/Specific/montgomery64_2e235m15_4limbs/CurveParameters.v
deleted file mode 100644
index bf979d13d..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^235 - 15
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 64;
- bitwidth := 64;
- s := 2^235;
- c := [(1, 15)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e235m15_4limbs/Synthesis.v b/src/Specific/montgomery64_2e235m15_4limbs/Synthesis.v
deleted file mode 100644
index c1a67ed8f..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e235m15_4limbs.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/montgomery64_2e235m15_4limbs/compiler.sh b/src/Specific/montgomery64_2e235m15_4limbs/compiler.sh
deleted file mode 100755
index 008c49f39..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='30' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<235) - 15' "$@"
diff --git a/src/Specific/montgomery64_2e235m15_4limbs/compilerxx.sh b/src/Specific/montgomery64_2e235m15_4limbs/compilerxx.sh
deleted file mode 100755
index 7a4a6453d..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='30' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<235) - 15' "$@"
diff --git a/src/Specific/montgomery64_2e235m15_4limbs/feadd.c b/src/Specific/montgomery64_2e235m15_4limbs/feadd.c
deleted file mode 100644
index 6537ac9bf..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _addcarryx_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _addcarryx_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x24, x8, x14, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u64(0x0, x17, 0xfffffffffffffff1L, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u64(x30, x20, 0xffffffffffffffffL, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u64(x33, x23, 0xffffffffffffffffL, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u64(x36, x26, 0x7ffffffffff, &x38);
- { uint64_t _; uint8_t x42 = _subborrow_u64(x39, x27, 0x0, &_);
- { uint64_t x43 = cmovznz64(x42, x38, x26);
- { uint64_t x44 = cmovznz64(x42, x35, x23);
- { uint64_t x45 = cmovznz64(x42, x32, x20);
- { uint64_t x46 = cmovznz64(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e235m15_4limbs/feadd.v b/src/Specific/montgomery64_2e235m15_4limbs/feadd.v
deleted file mode 100644
index 91bf1a9a3..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e235m15_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e235m15_4limbs/feaddDisplay.log b/src/Specific/montgomery64_2e235m15_4limbs/feaddDisplay.log
deleted file mode 100644
index 9827efd67..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t x30 = subborrow_u64(0x0, x17, 0xfffffffffffffff1L);
- uint64_t x32, uint8_t x33 = subborrow_u64(x30, x20, 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = subborrow_u64(x33, x23, 0xffffffffffffffffL);
- uint64_t x38, uint8_t x39 = subborrow_u64(x36, x26, 0x7ffffffffff);
- uint64_t _, uint8_t x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e235m15_4limbs/feaddDisplay.v b/src/Specific/montgomery64_2e235m15_4limbs/feaddDisplay.v
deleted file mode 100644
index ca9221ebb..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e235m15_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e235m15_4limbs/femul.c b/src/Specific/montgomery64_2e235m15_4limbs/femul.c
deleted file mode 100644
index 3f0c87231..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/femul.c
+++ /dev/null
@@ -1,130 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x18; uint64_t x17 = _mulx_u64(x5, x11, &x18);
- { uint64_t x21; uint64_t x20 = _mulx_u64(x5, x13, &x21);
- { uint64_t x24; uint64_t x23 = _mulx_u64(x5, x15, &x24);
- { uint64_t x27; uint64_t x26 = _mulx_u64(x5, x14, &x27);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x18, x20, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x21, x23, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x24, x26, &x35);
- { uint64_t x38; uint8_t _ = _addcarryx_u64(0x0, x36, x27, &x38);
- { uint64_t _; uint64_t x41 = _mulx_u64(x17, 0xeeeeeeeeeeeeeeefL, &_);
- { uint64_t x45; uint64_t x44 = _mulx_u64(x41, 0xfffffffffffffff1L, &x45);
- { uint64_t x48; uint64_t x47 = _mulx_u64(x41, 0xffffffffffffffffL, &x48);
- { uint64_t x51; uint64_t x50 = _mulx_u64(x41, 0xffffffffffffffffL, &x51);
- { uint64_t x54; uint64_t x53 = _mulx_u64(x41, 0x7ffffffffff, &x54);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(0x0, x45, x47, &x56);
- { uint64_t x59; uint8_t x60 = _addcarryx_u64(x57, x48, x50, &x59);
- { uint64_t x62; uint8_t x63 = _addcarryx_u64(x60, x51, x53, &x62);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(0x0, x63, x54, &x65);
- { uint64_t _; uint8_t x69 = _addcarryx_u64(0x0, x17, x44, &_);
- { uint64_t x71; uint8_t x72 = _addcarryx_u64(x69, x29, x56, &x71);
- { uint64_t x74; uint8_t x75 = _addcarryx_u64(x72, x32, x59, &x74);
- { uint64_t x77; uint8_t x78 = _addcarryx_u64(x75, x35, x62, &x77);
- { uint64_t x80; uint8_t x81 = _addcarryx_u64(x78, x38, x65, &x80);
- { uint64_t x84; uint64_t x83 = _mulx_u64(x7, x11, &x84);
- { uint64_t x87; uint64_t x86 = _mulx_u64(x7, x13, &x87);
- { uint64_t x90; uint64_t x89 = _mulx_u64(x7, x15, &x90);
- { uint64_t x93; uint64_t x92 = _mulx_u64(x7, x14, &x93);
- { uint64_t x95; uint8_t x96 = _addcarryx_u64(0x0, x84, x86, &x95);
- { uint64_t x98; uint8_t x99 = _addcarryx_u64(x96, x87, x89, &x98);
- { uint64_t x101; uint8_t x102 = _addcarryx_u64(x99, x90, x92, &x101);
- { uint64_t x104; uint8_t _ = _addcarryx_u64(0x0, x102, x93, &x104);
- { uint64_t x107; uint8_t x108 = _addcarryx_u64(0x0, x71, x83, &x107);
- { uint64_t x110; uint8_t x111 = _addcarryx_u64(x108, x74, x95, &x110);
- { uint64_t x113; uint8_t x114 = _addcarryx_u64(x111, x77, x98, &x113);
- { uint64_t x116; uint8_t x117 = _addcarryx_u64(x114, x80, x101, &x116);
- { uint64_t x119; uint8_t x120 = _addcarryx_u64(x117, x81, x104, &x119);
- { uint64_t _; uint64_t x122 = _mulx_u64(x107, 0xeeeeeeeeeeeeeeefL, &_);
- { uint64_t x126; uint64_t x125 = _mulx_u64(x122, 0xfffffffffffffff1L, &x126);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x122, 0xffffffffffffffffL, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x122, 0xffffffffffffffffL, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x122, 0x7ffffffffff, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x126, x128, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x129, x131, &x140);
- { uint64_t x143; uint8_t x144 = _addcarryx_u64(x141, x132, x134, &x143);
- { uint64_t x146; uint8_t _ = _addcarryx_u64(0x0, x144, x135, &x146);
- { uint64_t _; uint8_t x150 = _addcarryx_u64(0x0, x107, x125, &_);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x110, x137, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x113, x140, &x155);
- { uint64_t x158; uint8_t x159 = _addcarryx_u64(x156, x116, x143, &x158);
- { uint64_t x161; uint8_t x162 = _addcarryx_u64(x159, x119, x146, &x161);
- { uint8_t x163 = (x162 + x120);
- { uint64_t x166; uint64_t x165 = _mulx_u64(x9, x11, &x166);
- { uint64_t x169; uint64_t x168 = _mulx_u64(x9, x13, &x169);
- { uint64_t x172; uint64_t x171 = _mulx_u64(x9, x15, &x172);
- { uint64_t x175; uint64_t x174 = _mulx_u64(x9, x14, &x175);
- { uint64_t x177; uint8_t x178 = _addcarryx_u64(0x0, x166, x168, &x177);
- { uint64_t x180; uint8_t x181 = _addcarryx_u64(x178, x169, x171, &x180);
- { uint64_t x183; uint8_t x184 = _addcarryx_u64(x181, x172, x174, &x183);
- { uint64_t x186; uint8_t _ = _addcarryx_u64(0x0, x184, x175, &x186);
- { uint64_t x189; uint8_t x190 = _addcarryx_u64(0x0, x152, x165, &x189);
- { uint64_t x192; uint8_t x193 = _addcarryx_u64(x190, x155, x177, &x192);
- { uint64_t x195; uint8_t x196 = _addcarryx_u64(x193, x158, x180, &x195);
- { uint64_t x198; uint8_t x199 = _addcarryx_u64(x196, x161, x183, &x198);
- { uint64_t x201; uint8_t x202 = _addcarryx_u64(x199, x163, x186, &x201);
- { uint64_t _; uint64_t x204 = _mulx_u64(x189, 0xeeeeeeeeeeeeeeefL, &_);
- { uint64_t x208; uint64_t x207 = _mulx_u64(x204, 0xfffffffffffffff1L, &x208);
- { uint64_t x211; uint64_t x210 = _mulx_u64(x204, 0xffffffffffffffffL, &x211);
- { uint64_t x214; uint64_t x213 = _mulx_u64(x204, 0xffffffffffffffffL, &x214);
- { uint64_t x217; uint64_t x216 = _mulx_u64(x204, 0x7ffffffffff, &x217);
- { uint64_t x219; uint8_t x220 = _addcarryx_u64(0x0, x208, x210, &x219);
- { uint64_t x222; uint8_t x223 = _addcarryx_u64(x220, x211, x213, &x222);
- { uint64_t x225; uint8_t x226 = _addcarryx_u64(x223, x214, x216, &x225);
- { uint64_t x228; uint8_t _ = _addcarryx_u64(0x0, x226, x217, &x228);
- { uint64_t _; uint8_t x232 = _addcarryx_u64(0x0, x189, x207, &_);
- { uint64_t x234; uint8_t x235 = _addcarryx_u64(x232, x192, x219, &x234);
- { uint64_t x237; uint8_t x238 = _addcarryx_u64(x235, x195, x222, &x237);
- { uint64_t x240; uint8_t x241 = _addcarryx_u64(x238, x198, x225, &x240);
- { uint64_t x243; uint8_t x244 = _addcarryx_u64(x241, x201, x228, &x243);
- { uint8_t x245 = (x244 + x202);
- { uint64_t x248; uint64_t x247 = _mulx_u64(x8, x11, &x248);
- { uint64_t x251; uint64_t x250 = _mulx_u64(x8, x13, &x251);
- { uint64_t x254; uint64_t x253 = _mulx_u64(x8, x15, &x254);
- { uint64_t x257; uint64_t x256 = _mulx_u64(x8, x14, &x257);
- { uint64_t x259; uint8_t x260 = _addcarryx_u64(0x0, x248, x250, &x259);
- { uint64_t x262; uint8_t x263 = _addcarryx_u64(x260, x251, x253, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(x263, x254, x256, &x265);
- { uint64_t x268; uint8_t _ = _addcarryx_u64(0x0, x266, x257, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(0x0, x234, x247, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x237, x259, &x274);
- { uint64_t x277; uint8_t x278 = _addcarryx_u64(x275, x240, x262, &x277);
- { uint64_t x280; uint8_t x281 = _addcarryx_u64(x278, x243, x265, &x280);
- { uint64_t x283; uint8_t x284 = _addcarryx_u64(x281, x245, x268, &x283);
- { uint64_t _; uint64_t x286 = _mulx_u64(x271, 0xeeeeeeeeeeeeeeefL, &_);
- { uint64_t x290; uint64_t x289 = _mulx_u64(x286, 0xfffffffffffffff1L, &x290);
- { uint64_t x293; uint64_t x292 = _mulx_u64(x286, 0xffffffffffffffffL, &x293);
- { uint64_t x296; uint64_t x295 = _mulx_u64(x286, 0xffffffffffffffffL, &x296);
- { uint64_t x299; uint64_t x298 = _mulx_u64(x286, 0x7ffffffffff, &x299);
- { uint64_t x301; uint8_t x302 = _addcarryx_u64(0x0, x290, x292, &x301);
- { uint64_t x304; uint8_t x305 = _addcarryx_u64(x302, x293, x295, &x304);
- { uint64_t x307; uint8_t x308 = _addcarryx_u64(x305, x296, x298, &x307);
- { uint64_t x310; uint8_t _ = _addcarryx_u64(0x0, x308, x299, &x310);
- { uint64_t _; uint8_t x314 = _addcarryx_u64(0x0, x271, x289, &_);
- { uint64_t x316; uint8_t x317 = _addcarryx_u64(x314, x274, x301, &x316);
- { uint64_t x319; uint8_t x320 = _addcarryx_u64(x317, x277, x304, &x319);
- { uint64_t x322; uint8_t x323 = _addcarryx_u64(x320, x280, x307, &x322);
- { uint64_t x325; uint8_t x326 = _addcarryx_u64(x323, x283, x310, &x325);
- { uint8_t x327 = (x326 + x284);
- { uint64_t x329; uint8_t x330 = _subborrow_u64(0x0, x316, 0xfffffffffffffff1L, &x329);
- { uint64_t x332; uint8_t x333 = _subborrow_u64(x330, x319, 0xffffffffffffffffL, &x332);
- { uint64_t x335; uint8_t x336 = _subborrow_u64(x333, x322, 0xffffffffffffffffL, &x335);
- { uint64_t x338; uint8_t x339 = _subborrow_u64(x336, x325, 0x7ffffffffff, &x338);
- { uint64_t _; uint8_t x342 = _subborrow_u64(x339, x327, 0x0, &_);
- { uint64_t x343 = cmovznz64(x342, x338, x325);
- { uint64_t x344 = cmovznz64(x342, x335, x322);
- { uint64_t x345 = cmovznz64(x342, x332, x319);
- { uint64_t x346 = cmovznz64(x342, x329, x316);
- out[0] = x346;
- out[1] = x345;
- out[2] = x344;
- out[3] = x343;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e235m15_4limbs/femul.v b/src/Specific/montgomery64_2e235m15_4limbs/femul.v
deleted file mode 100644
index 8ca528e6c..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e235m15_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e235m15_4limbs/femulDisplay.log b/src/Specific/montgomery64_2e235m15_4limbs/femulDisplay.log
deleted file mode 100644
index 2b9931cf7..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,122 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t _ = mulx_u64(x17, 0xeeeeeeeeeeeeeeefL);
- uint64_t x44, uint64_t x45 = mulx_u64(x41, 0xfffffffffffffff1L);
- uint64_t x47, uint64_t x48 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x50, uint64_t x51 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x53, uint64_t x54 = mulx_u64(x41, 0x7ffffffffff);
- uint64_t x56, uint8_t x57 = addcarryx_u64(0x0, x45, x47);
- uint64_t x59, uint8_t x60 = addcarryx_u64(x57, x48, x50);
- uint64_t x62, uint8_t x63 = addcarryx_u64(x60, x51, x53);
- uint64_t x65, uint8_t _ = addcarryx_u64(0x0, x63, x54);
- uint64_t _, uint8_t x69 = addcarryx_u64(0x0, x17, x44);
- uint64_t x71, uint8_t x72 = addcarryx_u64(x69, x29, x56);
- uint64_t x74, uint8_t x75 = addcarryx_u64(x72, x32, x59);
- uint64_t x77, uint8_t x78 = addcarryx_u64(x75, x35, x62);
- uint64_t x80, uint8_t x81 = addcarryx_u64(x78, x38, x65);
- uint64_t x83, uint64_t x84 = mulx_u64(x7, x11);
- uint64_t x86, uint64_t x87 = mulx_u64(x7, x13);
- uint64_t x89, uint64_t x90 = mulx_u64(x7, x15);
- uint64_t x92, uint64_t x93 = mulx_u64(x7, x14);
- uint64_t x95, uint8_t x96 = addcarryx_u64(0x0, x84, x86);
- uint64_t x98, uint8_t x99 = addcarryx_u64(x96, x87, x89);
- uint64_t x101, uint8_t x102 = addcarryx_u64(x99, x90, x92);
- uint64_t x104, uint8_t _ = addcarryx_u64(0x0, x102, x93);
- uint64_t x107, uint8_t x108 = addcarryx_u64(0x0, x71, x83);
- uint64_t x110, uint8_t x111 = addcarryx_u64(x108, x74, x95);
- uint64_t x113, uint8_t x114 = addcarryx_u64(x111, x77, x98);
- uint64_t x116, uint8_t x117 = addcarryx_u64(x114, x80, x101);
- uint64_t x119, uint8_t x120 = addcarryx_u64(x117, x81, x104);
- uint64_t x122, uint64_t _ = mulx_u64(x107, 0xeeeeeeeeeeeeeeefL);
- uint64_t x125, uint64_t x126 = mulx_u64(x122, 0xfffffffffffffff1L);
- uint64_t x128, uint64_t x129 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x131, uint64_t x132 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x134, uint64_t x135 = mulx_u64(x122, 0x7ffffffffff);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x126, x128);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x129, x131);
- uint64_t x143, uint8_t x144 = addcarryx_u64(x141, x132, x134);
- uint64_t x146, uint8_t _ = addcarryx_u64(0x0, x144, x135);
- uint64_t _, uint8_t x150 = addcarryx_u64(0x0, x107, x125);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x110, x137);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x113, x140);
- uint64_t x158, uint8_t x159 = addcarryx_u64(x156, x116, x143);
- uint64_t x161, uint8_t x162 = addcarryx_u64(x159, x119, x146);
- uint8_t x163 = (x162 + x120);
- uint64_t x165, uint64_t x166 = mulx_u64(x9, x11);
- uint64_t x168, uint64_t x169 = mulx_u64(x9, x13);
- uint64_t x171, uint64_t x172 = mulx_u64(x9, x15);
- uint64_t x174, uint64_t x175 = mulx_u64(x9, x14);
- uint64_t x177, uint8_t x178 = addcarryx_u64(0x0, x166, x168);
- uint64_t x180, uint8_t x181 = addcarryx_u64(x178, x169, x171);
- uint64_t x183, uint8_t x184 = addcarryx_u64(x181, x172, x174);
- uint64_t x186, uint8_t _ = addcarryx_u64(0x0, x184, x175);
- uint64_t x189, uint8_t x190 = addcarryx_u64(0x0, x152, x165);
- uint64_t x192, uint8_t x193 = addcarryx_u64(x190, x155, x177);
- uint64_t x195, uint8_t x196 = addcarryx_u64(x193, x158, x180);
- uint64_t x198, uint8_t x199 = addcarryx_u64(x196, x161, x183);
- uint64_t x201, uint8_t x202 = addcarryx_u64(x199, x163, x186);
- uint64_t x204, uint64_t _ = mulx_u64(x189, 0xeeeeeeeeeeeeeeefL);
- uint64_t x207, uint64_t x208 = mulx_u64(x204, 0xfffffffffffffff1L);
- uint64_t x210, uint64_t x211 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x213, uint64_t x214 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x216, uint64_t x217 = mulx_u64(x204, 0x7ffffffffff);
- uint64_t x219, uint8_t x220 = addcarryx_u64(0x0, x208, x210);
- uint64_t x222, uint8_t x223 = addcarryx_u64(x220, x211, x213);
- uint64_t x225, uint8_t x226 = addcarryx_u64(x223, x214, x216);
- uint64_t x228, uint8_t _ = addcarryx_u64(0x0, x226, x217);
- uint64_t _, uint8_t x232 = addcarryx_u64(0x0, x189, x207);
- uint64_t x234, uint8_t x235 = addcarryx_u64(x232, x192, x219);
- uint64_t x237, uint8_t x238 = addcarryx_u64(x235, x195, x222);
- uint64_t x240, uint8_t x241 = addcarryx_u64(x238, x198, x225);
- uint64_t x243, uint8_t x244 = addcarryx_u64(x241, x201, x228);
- uint8_t x245 = (x244 + x202);
- uint64_t x247, uint64_t x248 = mulx_u64(x8, x11);
- uint64_t x250, uint64_t x251 = mulx_u64(x8, x13);
- uint64_t x253, uint64_t x254 = mulx_u64(x8, x15);
- uint64_t x256, uint64_t x257 = mulx_u64(x8, x14);
- uint64_t x259, uint8_t x260 = addcarryx_u64(0x0, x248, x250);
- uint64_t x262, uint8_t x263 = addcarryx_u64(x260, x251, x253);
- uint64_t x265, uint8_t x266 = addcarryx_u64(x263, x254, x256);
- uint64_t x268, uint8_t _ = addcarryx_u64(0x0, x266, x257);
- uint64_t x271, uint8_t x272 = addcarryx_u64(0x0, x234, x247);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x237, x259);
- uint64_t x277, uint8_t x278 = addcarryx_u64(x275, x240, x262);
- uint64_t x280, uint8_t x281 = addcarryx_u64(x278, x243, x265);
- uint64_t x283, uint8_t x284 = addcarryx_u64(x281, x245, x268);
- uint64_t x286, uint64_t _ = mulx_u64(x271, 0xeeeeeeeeeeeeeeefL);
- uint64_t x289, uint64_t x290 = mulx_u64(x286, 0xfffffffffffffff1L);
- uint64_t x292, uint64_t x293 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x295, uint64_t x296 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x298, uint64_t x299 = mulx_u64(x286, 0x7ffffffffff);
- uint64_t x301, uint8_t x302 = addcarryx_u64(0x0, x290, x292);
- uint64_t x304, uint8_t x305 = addcarryx_u64(x302, x293, x295);
- uint64_t x307, uint8_t x308 = addcarryx_u64(x305, x296, x298);
- uint64_t x310, uint8_t _ = addcarryx_u64(0x0, x308, x299);
- uint64_t _, uint8_t x314 = addcarryx_u64(0x0, x271, x289);
- uint64_t x316, uint8_t x317 = addcarryx_u64(x314, x274, x301);
- uint64_t x319, uint8_t x320 = addcarryx_u64(x317, x277, x304);
- uint64_t x322, uint8_t x323 = addcarryx_u64(x320, x280, x307);
- uint64_t x325, uint8_t x326 = addcarryx_u64(x323, x283, x310);
- uint8_t x327 = (x326 + x284);
- uint64_t x329, uint8_t x330 = subborrow_u64(0x0, x316, 0xfffffffffffffff1L);
- uint64_t x332, uint8_t x333 = subborrow_u64(x330, x319, 0xffffffffffffffffL);
- uint64_t x335, uint8_t x336 = subborrow_u64(x333, x322, 0xffffffffffffffffL);
- uint64_t x338, uint8_t x339 = subborrow_u64(x336, x325, 0x7ffffffffff);
- uint64_t _, uint8_t x342 = subborrow_u64(x339, x327, 0x0);
- uint64_t x343 = cmovznz64(x342, x338, x325);
- uint64_t x344 = cmovznz64(x342, x335, x322);
- uint64_t x345 = cmovznz64(x342, x332, x319);
- uint64_t x346 = cmovznz64(x342, x329, x316);
- return (x343, x344, x345, x346))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e235m15_4limbs/femulDisplay.v b/src/Specific/montgomery64_2e235m15_4limbs/femulDisplay.v
deleted file mode 100644
index e0e048a4a..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e235m15_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e235m15_4limbs/fenz.c b/src/Specific/montgomery64_2e235m15_4limbs/fenz.c
deleted file mode 100644
index 7541094ff..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x7 = (x6 | x5);
- { uint64_t x8 = (x4 | x7);
- { uint64_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e235m15_4limbs/fenz.v b/src/Specific/montgomery64_2e235m15_4limbs/fenz.v
deleted file mode 100644
index ca720f2f6..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e235m15_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e235m15_4limbs/fenzDisplay.log b/src/Specific/montgomery64_2e235m15_4limbs/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e235m15_4limbs/fenzDisplay.v b/src/Specific/montgomery64_2e235m15_4limbs/fenzDisplay.v
deleted file mode 100644
index 09d4d92bb..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e235m15_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e235m15_4limbs/feopp.c b/src/Specific/montgomery64_2e235m15_4limbs/feopp.c
deleted file mode 100644
index 8030e3746..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/feopp.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feopp(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8; uint8_t x9 = _subborrow_u64(0x0, 0x0, x2, &x8);
- { uint64_t x11; uint8_t x12 = _subborrow_u64(x9, 0x0, x4, &x11);
- { uint64_t x14; uint8_t x15 = _subborrow_u64(x12, 0x0, x6, &x14);
- { uint64_t x17; uint8_t x18 = _subborrow_u64(x15, 0x0, x5, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xfffffffffffffff1L);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x8, x20, &x22);
- { uint64_t x24 = (x19 & 0xffffffffffffffffL);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x23, x11, x24, &x26);
- { uint64_t x28 = (x19 & 0xffffffffffffffffL);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x27, x14, x28, &x30);
- { uint64_t x32 = (x19 & 0x7ffffffffff);
- { uint64_t x34; uint8_t _ = _addcarryx_u64(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e235m15_4limbs/feopp.v b/src/Specific/montgomery64_2e235m15_4limbs/feopp.v
deleted file mode 100644
index 8ab10418b..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e235m15_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e235m15_4limbs/feoppDisplay.log b/src/Specific/montgomery64_2e235m15_4limbs/feoppDisplay.log
deleted file mode 100644
index 94ec9e81b..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xfffffffffffffff1L);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffffffffffffffL);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x28 = (x19 & 0xffffffffffffffffL);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x27, x14, x28);
- uint64_t x32 = (x19 & 0x7ffffffffff);
- uint64_t x34, uint8_t _ = addcarryx_u64(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e235m15_4limbs/feoppDisplay.v b/src/Specific/montgomery64_2e235m15_4limbs/feoppDisplay.v
deleted file mode 100644
index 2537ac69b..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e235m15_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e235m15_4limbs/fesquare.c b/src/Specific/montgomery64_2e235m15_4limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e235m15_4limbs/fesub.c b/src/Specific/montgomery64_2e235m15_4limbs/fesub.c
deleted file mode 100644
index 88f0cc105..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/fesub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _subborrow_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _subborrow_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _subborrow_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u64(x24, x8, x14, &x26);
- { uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- { uint64_t x29 = (x28 & 0xfffffffffffffff1L);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(0x0, x17, x29, &x31);
- { uint64_t x33 = (x28 & 0xffffffffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x20, x33, &x35);
- { uint64_t x37 = (x28 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x23, x37, &x39);
- { uint64_t x41 = (x28 & 0x7ffffffffff);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x26, x41, &x43);
- out[0] = x31;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e235m15_4limbs/fesub.v b/src/Specific/montgomery64_2e235m15_4limbs/fesub.v
deleted file mode 100644
index 2bf8f3d6e..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e235m15_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e235m15_4limbs/fesubDisplay.log b/src/Specific/montgomery64_2e235m15_4limbs/fesubDisplay.log
deleted file mode 100644
index 1faf8a6e8..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint64_t x29 = (x28 & 0xfffffffffffffff1L);
- uint64_t x31, uint8_t x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x37 = (x28 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x23, x37);
- uint64_t x41 = (x28 & 0x7ffffffffff);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x26, x41);
- (Return x43, Return x39, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e235m15_4limbs/fesubDisplay.v b/src/Specific/montgomery64_2e235m15_4limbs/fesubDisplay.v
deleted file mode 100644
index 7ecdc27fe..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e235m15_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e235m15_4limbs/py_interpreter.sh b/src/Specific/montgomery64_2e235m15_4limbs/py_interpreter.sh
deleted file mode 100755
index 0adf3e5ba..000000000
--- a/src/Specific/montgomery64_2e235m15_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**235 - 15' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e243m9_4limbs/CurveParameters.v b/src/Specific/montgomery64_2e243m9_4limbs/CurveParameters.v
deleted file mode 100644
index 51d5b0a88..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^243 - 9
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 64;
- bitwidth := 64;
- s := 2^243;
- c := [(1, 9)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e243m9_4limbs/Synthesis.v b/src/Specific/montgomery64_2e243m9_4limbs/Synthesis.v
deleted file mode 100644
index 088828941..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e243m9_4limbs.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/montgomery64_2e243m9_4limbs/compiler.sh b/src/Specific/montgomery64_2e243m9_4limbs/compiler.sh
deleted file mode 100755
index d3db17fac..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='31' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<243) - 9' "$@"
diff --git a/src/Specific/montgomery64_2e243m9_4limbs/compilerxx.sh b/src/Specific/montgomery64_2e243m9_4limbs/compilerxx.sh
deleted file mode 100755
index f6aec86c3..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='31' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<243) - 9' "$@"
diff --git a/src/Specific/montgomery64_2e243m9_4limbs/feadd.c b/src/Specific/montgomery64_2e243m9_4limbs/feadd.c
deleted file mode 100644
index 01f0c4674..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _addcarryx_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _addcarryx_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x24, x8, x14, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u64(0x0, x17, 0xfffffffffffffff7L, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u64(x30, x20, 0xffffffffffffffffL, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u64(x33, x23, 0xffffffffffffffffL, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u64(x36, x26, 0x7ffffffffffff, &x38);
- { uint64_t _; uint8_t x42 = _subborrow_u64(x39, x27, 0x0, &_);
- { uint64_t x43 = cmovznz64(x42, x38, x26);
- { uint64_t x44 = cmovznz64(x42, x35, x23);
- { uint64_t x45 = cmovznz64(x42, x32, x20);
- { uint64_t x46 = cmovznz64(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e243m9_4limbs/feadd.v b/src/Specific/montgomery64_2e243m9_4limbs/feadd.v
deleted file mode 100644
index f731c61b0..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e243m9_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e243m9_4limbs/feaddDisplay.log b/src/Specific/montgomery64_2e243m9_4limbs/feaddDisplay.log
deleted file mode 100644
index 9871bcfa8..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t x30 = subborrow_u64(0x0, x17, 0xfffffffffffffff7L);
- uint64_t x32, uint8_t x33 = subborrow_u64(x30, x20, 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = subborrow_u64(x33, x23, 0xffffffffffffffffL);
- uint64_t x38, uint8_t x39 = subborrow_u64(x36, x26, 0x7ffffffffffff);
- uint64_t _, uint8_t x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e243m9_4limbs/feaddDisplay.v b/src/Specific/montgomery64_2e243m9_4limbs/feaddDisplay.v
deleted file mode 100644
index 3451553de..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e243m9_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e243m9_4limbs/femul.c b/src/Specific/montgomery64_2e243m9_4limbs/femul.c
deleted file mode 100644
index b515b9f12..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/femul.c
+++ /dev/null
@@ -1,130 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x18; uint64_t x17 = _mulx_u64(x5, x11, &x18);
- { uint64_t x21; uint64_t x20 = _mulx_u64(x5, x13, &x21);
- { uint64_t x24; uint64_t x23 = _mulx_u64(x5, x15, &x24);
- { uint64_t x27; uint64_t x26 = _mulx_u64(x5, x14, &x27);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x18, x20, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x21, x23, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x24, x26, &x35);
- { uint64_t x38; uint8_t _ = _addcarryx_u64(0x0, x36, x27, &x38);
- { uint64_t _; uint64_t x41 = _mulx_u64(x17, 0x8e38e38e38e38e39L, &_);
- { uint64_t x45; uint64_t x44 = _mulx_u64(x41, 0xfffffffffffffff7L, &x45);
- { uint64_t x48; uint64_t x47 = _mulx_u64(x41, 0xffffffffffffffffL, &x48);
- { uint64_t x51; uint64_t x50 = _mulx_u64(x41, 0xffffffffffffffffL, &x51);
- { uint64_t x54; uint64_t x53 = _mulx_u64(x41, 0x7ffffffffffff, &x54);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(0x0, x45, x47, &x56);
- { uint64_t x59; uint8_t x60 = _addcarryx_u64(x57, x48, x50, &x59);
- { uint64_t x62; uint8_t x63 = _addcarryx_u64(x60, x51, x53, &x62);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(0x0, x63, x54, &x65);
- { uint64_t _; uint8_t x69 = _addcarryx_u64(0x0, x17, x44, &_);
- { uint64_t x71; uint8_t x72 = _addcarryx_u64(x69, x29, x56, &x71);
- { uint64_t x74; uint8_t x75 = _addcarryx_u64(x72, x32, x59, &x74);
- { uint64_t x77; uint8_t x78 = _addcarryx_u64(x75, x35, x62, &x77);
- { uint64_t x80; uint8_t x81 = _addcarryx_u64(x78, x38, x65, &x80);
- { uint64_t x84; uint64_t x83 = _mulx_u64(x7, x11, &x84);
- { uint64_t x87; uint64_t x86 = _mulx_u64(x7, x13, &x87);
- { uint64_t x90; uint64_t x89 = _mulx_u64(x7, x15, &x90);
- { uint64_t x93; uint64_t x92 = _mulx_u64(x7, x14, &x93);
- { uint64_t x95; uint8_t x96 = _addcarryx_u64(0x0, x84, x86, &x95);
- { uint64_t x98; uint8_t x99 = _addcarryx_u64(x96, x87, x89, &x98);
- { uint64_t x101; uint8_t x102 = _addcarryx_u64(x99, x90, x92, &x101);
- { uint64_t x104; uint8_t _ = _addcarryx_u64(0x0, x102, x93, &x104);
- { uint64_t x107; uint8_t x108 = _addcarryx_u64(0x0, x71, x83, &x107);
- { uint64_t x110; uint8_t x111 = _addcarryx_u64(x108, x74, x95, &x110);
- { uint64_t x113; uint8_t x114 = _addcarryx_u64(x111, x77, x98, &x113);
- { uint64_t x116; uint8_t x117 = _addcarryx_u64(x114, x80, x101, &x116);
- { uint64_t x119; uint8_t x120 = _addcarryx_u64(x117, x81, x104, &x119);
- { uint64_t _; uint64_t x122 = _mulx_u64(x107, 0x8e38e38e38e38e39L, &_);
- { uint64_t x126; uint64_t x125 = _mulx_u64(x122, 0xfffffffffffffff7L, &x126);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x122, 0xffffffffffffffffL, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x122, 0xffffffffffffffffL, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x122, 0x7ffffffffffff, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x126, x128, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x129, x131, &x140);
- { uint64_t x143; uint8_t x144 = _addcarryx_u64(x141, x132, x134, &x143);
- { uint64_t x146; uint8_t _ = _addcarryx_u64(0x0, x144, x135, &x146);
- { uint64_t _; uint8_t x150 = _addcarryx_u64(0x0, x107, x125, &_);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x110, x137, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x113, x140, &x155);
- { uint64_t x158; uint8_t x159 = _addcarryx_u64(x156, x116, x143, &x158);
- { uint64_t x161; uint8_t x162 = _addcarryx_u64(x159, x119, x146, &x161);
- { uint8_t x163 = (x162 + x120);
- { uint64_t x166; uint64_t x165 = _mulx_u64(x9, x11, &x166);
- { uint64_t x169; uint64_t x168 = _mulx_u64(x9, x13, &x169);
- { uint64_t x172; uint64_t x171 = _mulx_u64(x9, x15, &x172);
- { uint64_t x175; uint64_t x174 = _mulx_u64(x9, x14, &x175);
- { uint64_t x177; uint8_t x178 = _addcarryx_u64(0x0, x166, x168, &x177);
- { uint64_t x180; uint8_t x181 = _addcarryx_u64(x178, x169, x171, &x180);
- { uint64_t x183; uint8_t x184 = _addcarryx_u64(x181, x172, x174, &x183);
- { uint64_t x186; uint8_t _ = _addcarryx_u64(0x0, x184, x175, &x186);
- { uint64_t x189; uint8_t x190 = _addcarryx_u64(0x0, x152, x165, &x189);
- { uint64_t x192; uint8_t x193 = _addcarryx_u64(x190, x155, x177, &x192);
- { uint64_t x195; uint8_t x196 = _addcarryx_u64(x193, x158, x180, &x195);
- { uint64_t x198; uint8_t x199 = _addcarryx_u64(x196, x161, x183, &x198);
- { uint64_t x201; uint8_t x202 = _addcarryx_u64(x199, x163, x186, &x201);
- { uint64_t _; uint64_t x204 = _mulx_u64(x189, 0x8e38e38e38e38e39L, &_);
- { uint64_t x208; uint64_t x207 = _mulx_u64(x204, 0xfffffffffffffff7L, &x208);
- { uint64_t x211; uint64_t x210 = _mulx_u64(x204, 0xffffffffffffffffL, &x211);
- { uint64_t x214; uint64_t x213 = _mulx_u64(x204, 0xffffffffffffffffL, &x214);
- { uint64_t x217; uint64_t x216 = _mulx_u64(x204, 0x7ffffffffffff, &x217);
- { uint64_t x219; uint8_t x220 = _addcarryx_u64(0x0, x208, x210, &x219);
- { uint64_t x222; uint8_t x223 = _addcarryx_u64(x220, x211, x213, &x222);
- { uint64_t x225; uint8_t x226 = _addcarryx_u64(x223, x214, x216, &x225);
- { uint64_t x228; uint8_t _ = _addcarryx_u64(0x0, x226, x217, &x228);
- { uint64_t _; uint8_t x232 = _addcarryx_u64(0x0, x189, x207, &_);
- { uint64_t x234; uint8_t x235 = _addcarryx_u64(x232, x192, x219, &x234);
- { uint64_t x237; uint8_t x238 = _addcarryx_u64(x235, x195, x222, &x237);
- { uint64_t x240; uint8_t x241 = _addcarryx_u64(x238, x198, x225, &x240);
- { uint64_t x243; uint8_t x244 = _addcarryx_u64(x241, x201, x228, &x243);
- { uint8_t x245 = (x244 + x202);
- { uint64_t x248; uint64_t x247 = _mulx_u64(x8, x11, &x248);
- { uint64_t x251; uint64_t x250 = _mulx_u64(x8, x13, &x251);
- { uint64_t x254; uint64_t x253 = _mulx_u64(x8, x15, &x254);
- { uint64_t x257; uint64_t x256 = _mulx_u64(x8, x14, &x257);
- { uint64_t x259; uint8_t x260 = _addcarryx_u64(0x0, x248, x250, &x259);
- { uint64_t x262; uint8_t x263 = _addcarryx_u64(x260, x251, x253, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(x263, x254, x256, &x265);
- { uint64_t x268; uint8_t _ = _addcarryx_u64(0x0, x266, x257, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(0x0, x234, x247, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x237, x259, &x274);
- { uint64_t x277; uint8_t x278 = _addcarryx_u64(x275, x240, x262, &x277);
- { uint64_t x280; uint8_t x281 = _addcarryx_u64(x278, x243, x265, &x280);
- { uint64_t x283; uint8_t x284 = _addcarryx_u64(x281, x245, x268, &x283);
- { uint64_t _; uint64_t x286 = _mulx_u64(x271, 0x8e38e38e38e38e39L, &_);
- { uint64_t x290; uint64_t x289 = _mulx_u64(x286, 0xfffffffffffffff7L, &x290);
- { uint64_t x293; uint64_t x292 = _mulx_u64(x286, 0xffffffffffffffffL, &x293);
- { uint64_t x296; uint64_t x295 = _mulx_u64(x286, 0xffffffffffffffffL, &x296);
- { uint64_t x299; uint64_t x298 = _mulx_u64(x286, 0x7ffffffffffff, &x299);
- { uint64_t x301; uint8_t x302 = _addcarryx_u64(0x0, x290, x292, &x301);
- { uint64_t x304; uint8_t x305 = _addcarryx_u64(x302, x293, x295, &x304);
- { uint64_t x307; uint8_t x308 = _addcarryx_u64(x305, x296, x298, &x307);
- { uint64_t x310; uint8_t _ = _addcarryx_u64(0x0, x308, x299, &x310);
- { uint64_t _; uint8_t x314 = _addcarryx_u64(0x0, x271, x289, &_);
- { uint64_t x316; uint8_t x317 = _addcarryx_u64(x314, x274, x301, &x316);
- { uint64_t x319; uint8_t x320 = _addcarryx_u64(x317, x277, x304, &x319);
- { uint64_t x322; uint8_t x323 = _addcarryx_u64(x320, x280, x307, &x322);
- { uint64_t x325; uint8_t x326 = _addcarryx_u64(x323, x283, x310, &x325);
- { uint8_t x327 = (x326 + x284);
- { uint64_t x329; uint8_t x330 = _subborrow_u64(0x0, x316, 0xfffffffffffffff7L, &x329);
- { uint64_t x332; uint8_t x333 = _subborrow_u64(x330, x319, 0xffffffffffffffffL, &x332);
- { uint64_t x335; uint8_t x336 = _subborrow_u64(x333, x322, 0xffffffffffffffffL, &x335);
- { uint64_t x338; uint8_t x339 = _subborrow_u64(x336, x325, 0x7ffffffffffff, &x338);
- { uint64_t _; uint8_t x342 = _subborrow_u64(x339, x327, 0x0, &_);
- { uint64_t x343 = cmovznz64(x342, x338, x325);
- { uint64_t x344 = cmovznz64(x342, x335, x322);
- { uint64_t x345 = cmovznz64(x342, x332, x319);
- { uint64_t x346 = cmovznz64(x342, x329, x316);
- out[0] = x346;
- out[1] = x345;
- out[2] = x344;
- out[3] = x343;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e243m9_4limbs/femul.v b/src/Specific/montgomery64_2e243m9_4limbs/femul.v
deleted file mode 100644
index a6283e9d9..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e243m9_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e243m9_4limbs/femulDisplay.log b/src/Specific/montgomery64_2e243m9_4limbs/femulDisplay.log
deleted file mode 100644
index 6b961a6ce..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,122 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t _ = mulx_u64(x17, 0x8e38e38e38e38e39L);
- uint64_t x44, uint64_t x45 = mulx_u64(x41, 0xfffffffffffffff7L);
- uint64_t x47, uint64_t x48 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x50, uint64_t x51 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x53, uint64_t x54 = mulx_u64(x41, 0x7ffffffffffff);
- uint64_t x56, uint8_t x57 = addcarryx_u64(0x0, x45, x47);
- uint64_t x59, uint8_t x60 = addcarryx_u64(x57, x48, x50);
- uint64_t x62, uint8_t x63 = addcarryx_u64(x60, x51, x53);
- uint64_t x65, uint8_t _ = addcarryx_u64(0x0, x63, x54);
- uint64_t _, uint8_t x69 = addcarryx_u64(0x0, x17, x44);
- uint64_t x71, uint8_t x72 = addcarryx_u64(x69, x29, x56);
- uint64_t x74, uint8_t x75 = addcarryx_u64(x72, x32, x59);
- uint64_t x77, uint8_t x78 = addcarryx_u64(x75, x35, x62);
- uint64_t x80, uint8_t x81 = addcarryx_u64(x78, x38, x65);
- uint64_t x83, uint64_t x84 = mulx_u64(x7, x11);
- uint64_t x86, uint64_t x87 = mulx_u64(x7, x13);
- uint64_t x89, uint64_t x90 = mulx_u64(x7, x15);
- uint64_t x92, uint64_t x93 = mulx_u64(x7, x14);
- uint64_t x95, uint8_t x96 = addcarryx_u64(0x0, x84, x86);
- uint64_t x98, uint8_t x99 = addcarryx_u64(x96, x87, x89);
- uint64_t x101, uint8_t x102 = addcarryx_u64(x99, x90, x92);
- uint64_t x104, uint8_t _ = addcarryx_u64(0x0, x102, x93);
- uint64_t x107, uint8_t x108 = addcarryx_u64(0x0, x71, x83);
- uint64_t x110, uint8_t x111 = addcarryx_u64(x108, x74, x95);
- uint64_t x113, uint8_t x114 = addcarryx_u64(x111, x77, x98);
- uint64_t x116, uint8_t x117 = addcarryx_u64(x114, x80, x101);
- uint64_t x119, uint8_t x120 = addcarryx_u64(x117, x81, x104);
- uint64_t x122, uint64_t _ = mulx_u64(x107, 0x8e38e38e38e38e39L);
- uint64_t x125, uint64_t x126 = mulx_u64(x122, 0xfffffffffffffff7L);
- uint64_t x128, uint64_t x129 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x131, uint64_t x132 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x134, uint64_t x135 = mulx_u64(x122, 0x7ffffffffffff);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x126, x128);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x129, x131);
- uint64_t x143, uint8_t x144 = addcarryx_u64(x141, x132, x134);
- uint64_t x146, uint8_t _ = addcarryx_u64(0x0, x144, x135);
- uint64_t _, uint8_t x150 = addcarryx_u64(0x0, x107, x125);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x110, x137);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x113, x140);
- uint64_t x158, uint8_t x159 = addcarryx_u64(x156, x116, x143);
- uint64_t x161, uint8_t x162 = addcarryx_u64(x159, x119, x146);
- uint8_t x163 = (x162 + x120);
- uint64_t x165, uint64_t x166 = mulx_u64(x9, x11);
- uint64_t x168, uint64_t x169 = mulx_u64(x9, x13);
- uint64_t x171, uint64_t x172 = mulx_u64(x9, x15);
- uint64_t x174, uint64_t x175 = mulx_u64(x9, x14);
- uint64_t x177, uint8_t x178 = addcarryx_u64(0x0, x166, x168);
- uint64_t x180, uint8_t x181 = addcarryx_u64(x178, x169, x171);
- uint64_t x183, uint8_t x184 = addcarryx_u64(x181, x172, x174);
- uint64_t x186, uint8_t _ = addcarryx_u64(0x0, x184, x175);
- uint64_t x189, uint8_t x190 = addcarryx_u64(0x0, x152, x165);
- uint64_t x192, uint8_t x193 = addcarryx_u64(x190, x155, x177);
- uint64_t x195, uint8_t x196 = addcarryx_u64(x193, x158, x180);
- uint64_t x198, uint8_t x199 = addcarryx_u64(x196, x161, x183);
- uint64_t x201, uint8_t x202 = addcarryx_u64(x199, x163, x186);
- uint64_t x204, uint64_t _ = mulx_u64(x189, 0x8e38e38e38e38e39L);
- uint64_t x207, uint64_t x208 = mulx_u64(x204, 0xfffffffffffffff7L);
- uint64_t x210, uint64_t x211 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x213, uint64_t x214 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x216, uint64_t x217 = mulx_u64(x204, 0x7ffffffffffff);
- uint64_t x219, uint8_t x220 = addcarryx_u64(0x0, x208, x210);
- uint64_t x222, uint8_t x223 = addcarryx_u64(x220, x211, x213);
- uint64_t x225, uint8_t x226 = addcarryx_u64(x223, x214, x216);
- uint64_t x228, uint8_t _ = addcarryx_u64(0x0, x226, x217);
- uint64_t _, uint8_t x232 = addcarryx_u64(0x0, x189, x207);
- uint64_t x234, uint8_t x235 = addcarryx_u64(x232, x192, x219);
- uint64_t x237, uint8_t x238 = addcarryx_u64(x235, x195, x222);
- uint64_t x240, uint8_t x241 = addcarryx_u64(x238, x198, x225);
- uint64_t x243, uint8_t x244 = addcarryx_u64(x241, x201, x228);
- uint8_t x245 = (x244 + x202);
- uint64_t x247, uint64_t x248 = mulx_u64(x8, x11);
- uint64_t x250, uint64_t x251 = mulx_u64(x8, x13);
- uint64_t x253, uint64_t x254 = mulx_u64(x8, x15);
- uint64_t x256, uint64_t x257 = mulx_u64(x8, x14);
- uint64_t x259, uint8_t x260 = addcarryx_u64(0x0, x248, x250);
- uint64_t x262, uint8_t x263 = addcarryx_u64(x260, x251, x253);
- uint64_t x265, uint8_t x266 = addcarryx_u64(x263, x254, x256);
- uint64_t x268, uint8_t _ = addcarryx_u64(0x0, x266, x257);
- uint64_t x271, uint8_t x272 = addcarryx_u64(0x0, x234, x247);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x237, x259);
- uint64_t x277, uint8_t x278 = addcarryx_u64(x275, x240, x262);
- uint64_t x280, uint8_t x281 = addcarryx_u64(x278, x243, x265);
- uint64_t x283, uint8_t x284 = addcarryx_u64(x281, x245, x268);
- uint64_t x286, uint64_t _ = mulx_u64(x271, 0x8e38e38e38e38e39L);
- uint64_t x289, uint64_t x290 = mulx_u64(x286, 0xfffffffffffffff7L);
- uint64_t x292, uint64_t x293 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x295, uint64_t x296 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x298, uint64_t x299 = mulx_u64(x286, 0x7ffffffffffff);
- uint64_t x301, uint8_t x302 = addcarryx_u64(0x0, x290, x292);
- uint64_t x304, uint8_t x305 = addcarryx_u64(x302, x293, x295);
- uint64_t x307, uint8_t x308 = addcarryx_u64(x305, x296, x298);
- uint64_t x310, uint8_t _ = addcarryx_u64(0x0, x308, x299);
- uint64_t _, uint8_t x314 = addcarryx_u64(0x0, x271, x289);
- uint64_t x316, uint8_t x317 = addcarryx_u64(x314, x274, x301);
- uint64_t x319, uint8_t x320 = addcarryx_u64(x317, x277, x304);
- uint64_t x322, uint8_t x323 = addcarryx_u64(x320, x280, x307);
- uint64_t x325, uint8_t x326 = addcarryx_u64(x323, x283, x310);
- uint8_t x327 = (x326 + x284);
- uint64_t x329, uint8_t x330 = subborrow_u64(0x0, x316, 0xfffffffffffffff7L);
- uint64_t x332, uint8_t x333 = subborrow_u64(x330, x319, 0xffffffffffffffffL);
- uint64_t x335, uint8_t x336 = subborrow_u64(x333, x322, 0xffffffffffffffffL);
- uint64_t x338, uint8_t x339 = subborrow_u64(x336, x325, 0x7ffffffffffff);
- uint64_t _, uint8_t x342 = subborrow_u64(x339, x327, 0x0);
- uint64_t x343 = cmovznz64(x342, x338, x325);
- uint64_t x344 = cmovznz64(x342, x335, x322);
- uint64_t x345 = cmovznz64(x342, x332, x319);
- uint64_t x346 = cmovznz64(x342, x329, x316);
- return (x343, x344, x345, x346))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e243m9_4limbs/femulDisplay.v b/src/Specific/montgomery64_2e243m9_4limbs/femulDisplay.v
deleted file mode 100644
index 804f3a43f..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e243m9_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e243m9_4limbs/fenz.c b/src/Specific/montgomery64_2e243m9_4limbs/fenz.c
deleted file mode 100644
index 7541094ff..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x7 = (x6 | x5);
- { uint64_t x8 = (x4 | x7);
- { uint64_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e243m9_4limbs/fenz.v b/src/Specific/montgomery64_2e243m9_4limbs/fenz.v
deleted file mode 100644
index fc3a244d4..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e243m9_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e243m9_4limbs/fenzDisplay.log b/src/Specific/montgomery64_2e243m9_4limbs/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e243m9_4limbs/fenzDisplay.v b/src/Specific/montgomery64_2e243m9_4limbs/fenzDisplay.v
deleted file mode 100644
index f6b53c52a..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e243m9_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e243m9_4limbs/feopp.c b/src/Specific/montgomery64_2e243m9_4limbs/feopp.c
deleted file mode 100644
index 956373177..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/feopp.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feopp(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8; uint8_t x9 = _subborrow_u64(0x0, 0x0, x2, &x8);
- { uint64_t x11; uint8_t x12 = _subborrow_u64(x9, 0x0, x4, &x11);
- { uint64_t x14; uint8_t x15 = _subborrow_u64(x12, 0x0, x6, &x14);
- { uint64_t x17; uint8_t x18 = _subborrow_u64(x15, 0x0, x5, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xfffffffffffffff7L);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x8, x20, &x22);
- { uint64_t x24 = (x19 & 0xffffffffffffffffL);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x23, x11, x24, &x26);
- { uint64_t x28 = (x19 & 0xffffffffffffffffL);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x27, x14, x28, &x30);
- { uint64_t x32 = (x19 & 0x7ffffffffffff);
- { uint64_t x34; uint8_t _ = _addcarryx_u64(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e243m9_4limbs/feopp.v b/src/Specific/montgomery64_2e243m9_4limbs/feopp.v
deleted file mode 100644
index 7f88e6a95..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e243m9_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e243m9_4limbs/feoppDisplay.log b/src/Specific/montgomery64_2e243m9_4limbs/feoppDisplay.log
deleted file mode 100644
index f40ba16b9..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xfffffffffffffff7L);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffffffffffffffL);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x28 = (x19 & 0xffffffffffffffffL);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x27, x14, x28);
- uint64_t x32 = (x19 & 0x7ffffffffffff);
- uint64_t x34, uint8_t _ = addcarryx_u64(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e243m9_4limbs/feoppDisplay.v b/src/Specific/montgomery64_2e243m9_4limbs/feoppDisplay.v
deleted file mode 100644
index fe5f34f93..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e243m9_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e243m9_4limbs/fesquare.c b/src/Specific/montgomery64_2e243m9_4limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e243m9_4limbs/fesub.c b/src/Specific/montgomery64_2e243m9_4limbs/fesub.c
deleted file mode 100644
index 93debaaa9..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/fesub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _subborrow_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _subborrow_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _subborrow_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u64(x24, x8, x14, &x26);
- { uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- { uint64_t x29 = (x28 & 0xfffffffffffffff7L);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(0x0, x17, x29, &x31);
- { uint64_t x33 = (x28 & 0xffffffffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x20, x33, &x35);
- { uint64_t x37 = (x28 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x23, x37, &x39);
- { uint64_t x41 = (x28 & 0x7ffffffffffff);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x26, x41, &x43);
- out[0] = x31;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e243m9_4limbs/fesub.v b/src/Specific/montgomery64_2e243m9_4limbs/fesub.v
deleted file mode 100644
index 017554c3c..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e243m9_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e243m9_4limbs/fesubDisplay.log b/src/Specific/montgomery64_2e243m9_4limbs/fesubDisplay.log
deleted file mode 100644
index c730ca129..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint64_t x29 = (x28 & 0xfffffffffffffff7L);
- uint64_t x31, uint8_t x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x37 = (x28 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x23, x37);
- uint64_t x41 = (x28 & 0x7ffffffffffff);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x26, x41);
- (Return x43, Return x39, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e243m9_4limbs/fesubDisplay.v b/src/Specific/montgomery64_2e243m9_4limbs/fesubDisplay.v
deleted file mode 100644
index 9855c30d3..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e243m9_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e243m9_4limbs/py_interpreter.sh b/src/Specific/montgomery64_2e243m9_4limbs/py_interpreter.sh
deleted file mode 100755
index 67bc8d431..000000000
--- a/src/Specific/montgomery64_2e243m9_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**243 - 9' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e251m9_4limbs/CurveParameters.v b/src/Specific/montgomery64_2e251m9_4limbs/CurveParameters.v
deleted file mode 100644
index 0f61ec8c0..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^251 - 9
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 64;
- bitwidth := 64;
- s := 2^251;
- c := [(1, 9)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e251m9_4limbs/Synthesis.v b/src/Specific/montgomery64_2e251m9_4limbs/Synthesis.v
deleted file mode 100644
index 58051c4ad..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e251m9_4limbs.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/montgomery64_2e251m9_4limbs/compiler.sh b/src/Specific/montgomery64_2e251m9_4limbs/compiler.sh
deleted file mode 100755
index 4b7275528..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<251) - 9' "$@"
diff --git a/src/Specific/montgomery64_2e251m9_4limbs/compilerxx.sh b/src/Specific/montgomery64_2e251m9_4limbs/compilerxx.sh
deleted file mode 100755
index 68323b9ee..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<251) - 9' "$@"
diff --git a/src/Specific/montgomery64_2e251m9_4limbs/feadd.c b/src/Specific/montgomery64_2e251m9_4limbs/feadd.c
deleted file mode 100644
index 42b9ea878..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _addcarryx_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _addcarryx_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x24, x8, x14, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u64(0x0, x17, 0xfffffffffffffff7L, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u64(x30, x20, 0xffffffffffffffffL, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u64(x33, x23, 0xffffffffffffffffL, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u64(x36, x26, 0x7ffffffffffffff, &x38);
- { uint64_t _; uint8_t x42 = _subborrow_u64(x39, x27, 0x0, &_);
- { uint64_t x43 = cmovznz64(x42, x38, x26);
- { uint64_t x44 = cmovznz64(x42, x35, x23);
- { uint64_t x45 = cmovznz64(x42, x32, x20);
- { uint64_t x46 = cmovznz64(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e251m9_4limbs/feadd.v b/src/Specific/montgomery64_2e251m9_4limbs/feadd.v
deleted file mode 100644
index df1c84e04..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e251m9_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e251m9_4limbs/feaddDisplay.log b/src/Specific/montgomery64_2e251m9_4limbs/feaddDisplay.log
deleted file mode 100644
index a4fd422d6..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t x30 = subborrow_u64(0x0, x17, 0xfffffffffffffff7L);
- uint64_t x32, uint8_t x33 = subborrow_u64(x30, x20, 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = subborrow_u64(x33, x23, 0xffffffffffffffffL);
- uint64_t x38, uint8_t x39 = subborrow_u64(x36, x26, 0x7ffffffffffffff);
- uint64_t _, uint8_t x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e251m9_4limbs/feaddDisplay.v b/src/Specific/montgomery64_2e251m9_4limbs/feaddDisplay.v
deleted file mode 100644
index e1bab30b4..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e251m9_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e251m9_4limbs/femul.c b/src/Specific/montgomery64_2e251m9_4limbs/femul.c
deleted file mode 100644
index c10aea27b..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/femul.c
+++ /dev/null
@@ -1,130 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x18; uint64_t x17 = _mulx_u64(x5, x11, &x18);
- { uint64_t x21; uint64_t x20 = _mulx_u64(x5, x13, &x21);
- { uint64_t x24; uint64_t x23 = _mulx_u64(x5, x15, &x24);
- { uint64_t x27; uint64_t x26 = _mulx_u64(x5, x14, &x27);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x18, x20, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x21, x23, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x24, x26, &x35);
- { uint64_t x38; uint8_t _ = _addcarryx_u64(0x0, x36, x27, &x38);
- { uint64_t _; uint64_t x41 = _mulx_u64(x17, 0x8e38e38e38e38e39L, &_);
- { uint64_t x45; uint64_t x44 = _mulx_u64(x41, 0xfffffffffffffff7L, &x45);
- { uint64_t x48; uint64_t x47 = _mulx_u64(x41, 0xffffffffffffffffL, &x48);
- { uint64_t x51; uint64_t x50 = _mulx_u64(x41, 0xffffffffffffffffL, &x51);
- { uint64_t x54; uint64_t x53 = _mulx_u64(x41, 0x7ffffffffffffff, &x54);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(0x0, x45, x47, &x56);
- { uint64_t x59; uint8_t x60 = _addcarryx_u64(x57, x48, x50, &x59);
- { uint64_t x62; uint8_t x63 = _addcarryx_u64(x60, x51, x53, &x62);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(0x0, x63, x54, &x65);
- { uint64_t _; uint8_t x69 = _addcarryx_u64(0x0, x17, x44, &_);
- { uint64_t x71; uint8_t x72 = _addcarryx_u64(x69, x29, x56, &x71);
- { uint64_t x74; uint8_t x75 = _addcarryx_u64(x72, x32, x59, &x74);
- { uint64_t x77; uint8_t x78 = _addcarryx_u64(x75, x35, x62, &x77);
- { uint64_t x80; uint8_t x81 = _addcarryx_u64(x78, x38, x65, &x80);
- { uint64_t x84; uint64_t x83 = _mulx_u64(x7, x11, &x84);
- { uint64_t x87; uint64_t x86 = _mulx_u64(x7, x13, &x87);
- { uint64_t x90; uint64_t x89 = _mulx_u64(x7, x15, &x90);
- { uint64_t x93; uint64_t x92 = _mulx_u64(x7, x14, &x93);
- { uint64_t x95; uint8_t x96 = _addcarryx_u64(0x0, x84, x86, &x95);
- { uint64_t x98; uint8_t x99 = _addcarryx_u64(x96, x87, x89, &x98);
- { uint64_t x101; uint8_t x102 = _addcarryx_u64(x99, x90, x92, &x101);
- { uint64_t x104; uint8_t _ = _addcarryx_u64(0x0, x102, x93, &x104);
- { uint64_t x107; uint8_t x108 = _addcarryx_u64(0x0, x71, x83, &x107);
- { uint64_t x110; uint8_t x111 = _addcarryx_u64(x108, x74, x95, &x110);
- { uint64_t x113; uint8_t x114 = _addcarryx_u64(x111, x77, x98, &x113);
- { uint64_t x116; uint8_t x117 = _addcarryx_u64(x114, x80, x101, &x116);
- { uint64_t x119; uint8_t x120 = _addcarryx_u64(x117, x81, x104, &x119);
- { uint64_t _; uint64_t x122 = _mulx_u64(x107, 0x8e38e38e38e38e39L, &_);
- { uint64_t x126; uint64_t x125 = _mulx_u64(x122, 0xfffffffffffffff7L, &x126);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x122, 0xffffffffffffffffL, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x122, 0xffffffffffffffffL, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x122, 0x7ffffffffffffff, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x126, x128, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x129, x131, &x140);
- { uint64_t x143; uint8_t x144 = _addcarryx_u64(x141, x132, x134, &x143);
- { uint64_t x146; uint8_t _ = _addcarryx_u64(0x0, x144, x135, &x146);
- { uint64_t _; uint8_t x150 = _addcarryx_u64(0x0, x107, x125, &_);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x110, x137, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x113, x140, &x155);
- { uint64_t x158; uint8_t x159 = _addcarryx_u64(x156, x116, x143, &x158);
- { uint64_t x161; uint8_t x162 = _addcarryx_u64(x159, x119, x146, &x161);
- { uint8_t x163 = (x162 + x120);
- { uint64_t x166; uint64_t x165 = _mulx_u64(x9, x11, &x166);
- { uint64_t x169; uint64_t x168 = _mulx_u64(x9, x13, &x169);
- { uint64_t x172; uint64_t x171 = _mulx_u64(x9, x15, &x172);
- { uint64_t x175; uint64_t x174 = _mulx_u64(x9, x14, &x175);
- { uint64_t x177; uint8_t x178 = _addcarryx_u64(0x0, x166, x168, &x177);
- { uint64_t x180; uint8_t x181 = _addcarryx_u64(x178, x169, x171, &x180);
- { uint64_t x183; uint8_t x184 = _addcarryx_u64(x181, x172, x174, &x183);
- { uint64_t x186; uint8_t _ = _addcarryx_u64(0x0, x184, x175, &x186);
- { uint64_t x189; uint8_t x190 = _addcarryx_u64(0x0, x152, x165, &x189);
- { uint64_t x192; uint8_t x193 = _addcarryx_u64(x190, x155, x177, &x192);
- { uint64_t x195; uint8_t x196 = _addcarryx_u64(x193, x158, x180, &x195);
- { uint64_t x198; uint8_t x199 = _addcarryx_u64(x196, x161, x183, &x198);
- { uint64_t x201; uint8_t x202 = _addcarryx_u64(x199, x163, x186, &x201);
- { uint64_t _; uint64_t x204 = _mulx_u64(x189, 0x8e38e38e38e38e39L, &_);
- { uint64_t x208; uint64_t x207 = _mulx_u64(x204, 0xfffffffffffffff7L, &x208);
- { uint64_t x211; uint64_t x210 = _mulx_u64(x204, 0xffffffffffffffffL, &x211);
- { uint64_t x214; uint64_t x213 = _mulx_u64(x204, 0xffffffffffffffffL, &x214);
- { uint64_t x217; uint64_t x216 = _mulx_u64(x204, 0x7ffffffffffffff, &x217);
- { uint64_t x219; uint8_t x220 = _addcarryx_u64(0x0, x208, x210, &x219);
- { uint64_t x222; uint8_t x223 = _addcarryx_u64(x220, x211, x213, &x222);
- { uint64_t x225; uint8_t x226 = _addcarryx_u64(x223, x214, x216, &x225);
- { uint64_t x228; uint8_t _ = _addcarryx_u64(0x0, x226, x217, &x228);
- { uint64_t _; uint8_t x232 = _addcarryx_u64(0x0, x189, x207, &_);
- { uint64_t x234; uint8_t x235 = _addcarryx_u64(x232, x192, x219, &x234);
- { uint64_t x237; uint8_t x238 = _addcarryx_u64(x235, x195, x222, &x237);
- { uint64_t x240; uint8_t x241 = _addcarryx_u64(x238, x198, x225, &x240);
- { uint64_t x243; uint8_t x244 = _addcarryx_u64(x241, x201, x228, &x243);
- { uint8_t x245 = (x244 + x202);
- { uint64_t x248; uint64_t x247 = _mulx_u64(x8, x11, &x248);
- { uint64_t x251; uint64_t x250 = _mulx_u64(x8, x13, &x251);
- { uint64_t x254; uint64_t x253 = _mulx_u64(x8, x15, &x254);
- { uint64_t x257; uint64_t x256 = _mulx_u64(x8, x14, &x257);
- { uint64_t x259; uint8_t x260 = _addcarryx_u64(0x0, x248, x250, &x259);
- { uint64_t x262; uint8_t x263 = _addcarryx_u64(x260, x251, x253, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(x263, x254, x256, &x265);
- { uint64_t x268; uint8_t _ = _addcarryx_u64(0x0, x266, x257, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(0x0, x234, x247, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x237, x259, &x274);
- { uint64_t x277; uint8_t x278 = _addcarryx_u64(x275, x240, x262, &x277);
- { uint64_t x280; uint8_t x281 = _addcarryx_u64(x278, x243, x265, &x280);
- { uint64_t x283; uint8_t x284 = _addcarryx_u64(x281, x245, x268, &x283);
- { uint64_t _; uint64_t x286 = _mulx_u64(x271, 0x8e38e38e38e38e39L, &_);
- { uint64_t x290; uint64_t x289 = _mulx_u64(x286, 0xfffffffffffffff7L, &x290);
- { uint64_t x293; uint64_t x292 = _mulx_u64(x286, 0xffffffffffffffffL, &x293);
- { uint64_t x296; uint64_t x295 = _mulx_u64(x286, 0xffffffffffffffffL, &x296);
- { uint64_t x299; uint64_t x298 = _mulx_u64(x286, 0x7ffffffffffffff, &x299);
- { uint64_t x301; uint8_t x302 = _addcarryx_u64(0x0, x290, x292, &x301);
- { uint64_t x304; uint8_t x305 = _addcarryx_u64(x302, x293, x295, &x304);
- { uint64_t x307; uint8_t x308 = _addcarryx_u64(x305, x296, x298, &x307);
- { uint64_t x310; uint8_t _ = _addcarryx_u64(0x0, x308, x299, &x310);
- { uint64_t _; uint8_t x314 = _addcarryx_u64(0x0, x271, x289, &_);
- { uint64_t x316; uint8_t x317 = _addcarryx_u64(x314, x274, x301, &x316);
- { uint64_t x319; uint8_t x320 = _addcarryx_u64(x317, x277, x304, &x319);
- { uint64_t x322; uint8_t x323 = _addcarryx_u64(x320, x280, x307, &x322);
- { uint64_t x325; uint8_t x326 = _addcarryx_u64(x323, x283, x310, &x325);
- { uint8_t x327 = (x326 + x284);
- { uint64_t x329; uint8_t x330 = _subborrow_u64(0x0, x316, 0xfffffffffffffff7L, &x329);
- { uint64_t x332; uint8_t x333 = _subborrow_u64(x330, x319, 0xffffffffffffffffL, &x332);
- { uint64_t x335; uint8_t x336 = _subborrow_u64(x333, x322, 0xffffffffffffffffL, &x335);
- { uint64_t x338; uint8_t x339 = _subborrow_u64(x336, x325, 0x7ffffffffffffff, &x338);
- { uint64_t _; uint8_t x342 = _subborrow_u64(x339, x327, 0x0, &_);
- { uint64_t x343 = cmovznz64(x342, x338, x325);
- { uint64_t x344 = cmovznz64(x342, x335, x322);
- { uint64_t x345 = cmovznz64(x342, x332, x319);
- { uint64_t x346 = cmovznz64(x342, x329, x316);
- out[0] = x346;
- out[1] = x345;
- out[2] = x344;
- out[3] = x343;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e251m9_4limbs/femul.v b/src/Specific/montgomery64_2e251m9_4limbs/femul.v
deleted file mode 100644
index 8602b3811..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e251m9_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e251m9_4limbs/femulDisplay.log b/src/Specific/montgomery64_2e251m9_4limbs/femulDisplay.log
deleted file mode 100644
index 0f9304f68..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,122 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t _ = mulx_u64(x17, 0x8e38e38e38e38e39L);
- uint64_t x44, uint64_t x45 = mulx_u64(x41, 0xfffffffffffffff7L);
- uint64_t x47, uint64_t x48 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x50, uint64_t x51 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x53, uint64_t x54 = mulx_u64(x41, 0x7ffffffffffffff);
- uint64_t x56, uint8_t x57 = addcarryx_u64(0x0, x45, x47);
- uint64_t x59, uint8_t x60 = addcarryx_u64(x57, x48, x50);
- uint64_t x62, uint8_t x63 = addcarryx_u64(x60, x51, x53);
- uint64_t x65, uint8_t _ = addcarryx_u64(0x0, x63, x54);
- uint64_t _, uint8_t x69 = addcarryx_u64(0x0, x17, x44);
- uint64_t x71, uint8_t x72 = addcarryx_u64(x69, x29, x56);
- uint64_t x74, uint8_t x75 = addcarryx_u64(x72, x32, x59);
- uint64_t x77, uint8_t x78 = addcarryx_u64(x75, x35, x62);
- uint64_t x80, uint8_t x81 = addcarryx_u64(x78, x38, x65);
- uint64_t x83, uint64_t x84 = mulx_u64(x7, x11);
- uint64_t x86, uint64_t x87 = mulx_u64(x7, x13);
- uint64_t x89, uint64_t x90 = mulx_u64(x7, x15);
- uint64_t x92, uint64_t x93 = mulx_u64(x7, x14);
- uint64_t x95, uint8_t x96 = addcarryx_u64(0x0, x84, x86);
- uint64_t x98, uint8_t x99 = addcarryx_u64(x96, x87, x89);
- uint64_t x101, uint8_t x102 = addcarryx_u64(x99, x90, x92);
- uint64_t x104, uint8_t _ = addcarryx_u64(0x0, x102, x93);
- uint64_t x107, uint8_t x108 = addcarryx_u64(0x0, x71, x83);
- uint64_t x110, uint8_t x111 = addcarryx_u64(x108, x74, x95);
- uint64_t x113, uint8_t x114 = addcarryx_u64(x111, x77, x98);
- uint64_t x116, uint8_t x117 = addcarryx_u64(x114, x80, x101);
- uint64_t x119, uint8_t x120 = addcarryx_u64(x117, x81, x104);
- uint64_t x122, uint64_t _ = mulx_u64(x107, 0x8e38e38e38e38e39L);
- uint64_t x125, uint64_t x126 = mulx_u64(x122, 0xfffffffffffffff7L);
- uint64_t x128, uint64_t x129 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x131, uint64_t x132 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x134, uint64_t x135 = mulx_u64(x122, 0x7ffffffffffffff);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x126, x128);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x129, x131);
- uint64_t x143, uint8_t x144 = addcarryx_u64(x141, x132, x134);
- uint64_t x146, uint8_t _ = addcarryx_u64(0x0, x144, x135);
- uint64_t _, uint8_t x150 = addcarryx_u64(0x0, x107, x125);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x110, x137);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x113, x140);
- uint64_t x158, uint8_t x159 = addcarryx_u64(x156, x116, x143);
- uint64_t x161, uint8_t x162 = addcarryx_u64(x159, x119, x146);
- uint8_t x163 = (x162 + x120);
- uint64_t x165, uint64_t x166 = mulx_u64(x9, x11);
- uint64_t x168, uint64_t x169 = mulx_u64(x9, x13);
- uint64_t x171, uint64_t x172 = mulx_u64(x9, x15);
- uint64_t x174, uint64_t x175 = mulx_u64(x9, x14);
- uint64_t x177, uint8_t x178 = addcarryx_u64(0x0, x166, x168);
- uint64_t x180, uint8_t x181 = addcarryx_u64(x178, x169, x171);
- uint64_t x183, uint8_t x184 = addcarryx_u64(x181, x172, x174);
- uint64_t x186, uint8_t _ = addcarryx_u64(0x0, x184, x175);
- uint64_t x189, uint8_t x190 = addcarryx_u64(0x0, x152, x165);
- uint64_t x192, uint8_t x193 = addcarryx_u64(x190, x155, x177);
- uint64_t x195, uint8_t x196 = addcarryx_u64(x193, x158, x180);
- uint64_t x198, uint8_t x199 = addcarryx_u64(x196, x161, x183);
- uint64_t x201, uint8_t x202 = addcarryx_u64(x199, x163, x186);
- uint64_t x204, uint64_t _ = mulx_u64(x189, 0x8e38e38e38e38e39L);
- uint64_t x207, uint64_t x208 = mulx_u64(x204, 0xfffffffffffffff7L);
- uint64_t x210, uint64_t x211 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x213, uint64_t x214 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x216, uint64_t x217 = mulx_u64(x204, 0x7ffffffffffffff);
- uint64_t x219, uint8_t x220 = addcarryx_u64(0x0, x208, x210);
- uint64_t x222, uint8_t x223 = addcarryx_u64(x220, x211, x213);
- uint64_t x225, uint8_t x226 = addcarryx_u64(x223, x214, x216);
- uint64_t x228, uint8_t _ = addcarryx_u64(0x0, x226, x217);
- uint64_t _, uint8_t x232 = addcarryx_u64(0x0, x189, x207);
- uint64_t x234, uint8_t x235 = addcarryx_u64(x232, x192, x219);
- uint64_t x237, uint8_t x238 = addcarryx_u64(x235, x195, x222);
- uint64_t x240, uint8_t x241 = addcarryx_u64(x238, x198, x225);
- uint64_t x243, uint8_t x244 = addcarryx_u64(x241, x201, x228);
- uint8_t x245 = (x244 + x202);
- uint64_t x247, uint64_t x248 = mulx_u64(x8, x11);
- uint64_t x250, uint64_t x251 = mulx_u64(x8, x13);
- uint64_t x253, uint64_t x254 = mulx_u64(x8, x15);
- uint64_t x256, uint64_t x257 = mulx_u64(x8, x14);
- uint64_t x259, uint8_t x260 = addcarryx_u64(0x0, x248, x250);
- uint64_t x262, uint8_t x263 = addcarryx_u64(x260, x251, x253);
- uint64_t x265, uint8_t x266 = addcarryx_u64(x263, x254, x256);
- uint64_t x268, uint8_t _ = addcarryx_u64(0x0, x266, x257);
- uint64_t x271, uint8_t x272 = addcarryx_u64(0x0, x234, x247);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x237, x259);
- uint64_t x277, uint8_t x278 = addcarryx_u64(x275, x240, x262);
- uint64_t x280, uint8_t x281 = addcarryx_u64(x278, x243, x265);
- uint64_t x283, uint8_t x284 = addcarryx_u64(x281, x245, x268);
- uint64_t x286, uint64_t _ = mulx_u64(x271, 0x8e38e38e38e38e39L);
- uint64_t x289, uint64_t x290 = mulx_u64(x286, 0xfffffffffffffff7L);
- uint64_t x292, uint64_t x293 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x295, uint64_t x296 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x298, uint64_t x299 = mulx_u64(x286, 0x7ffffffffffffff);
- uint64_t x301, uint8_t x302 = addcarryx_u64(0x0, x290, x292);
- uint64_t x304, uint8_t x305 = addcarryx_u64(x302, x293, x295);
- uint64_t x307, uint8_t x308 = addcarryx_u64(x305, x296, x298);
- uint64_t x310, uint8_t _ = addcarryx_u64(0x0, x308, x299);
- uint64_t _, uint8_t x314 = addcarryx_u64(0x0, x271, x289);
- uint64_t x316, uint8_t x317 = addcarryx_u64(x314, x274, x301);
- uint64_t x319, uint8_t x320 = addcarryx_u64(x317, x277, x304);
- uint64_t x322, uint8_t x323 = addcarryx_u64(x320, x280, x307);
- uint64_t x325, uint8_t x326 = addcarryx_u64(x323, x283, x310);
- uint8_t x327 = (x326 + x284);
- uint64_t x329, uint8_t x330 = subborrow_u64(0x0, x316, 0xfffffffffffffff7L);
- uint64_t x332, uint8_t x333 = subborrow_u64(x330, x319, 0xffffffffffffffffL);
- uint64_t x335, uint8_t x336 = subborrow_u64(x333, x322, 0xffffffffffffffffL);
- uint64_t x338, uint8_t x339 = subborrow_u64(x336, x325, 0x7ffffffffffffff);
- uint64_t _, uint8_t x342 = subborrow_u64(x339, x327, 0x0);
- uint64_t x343 = cmovznz64(x342, x338, x325);
- uint64_t x344 = cmovznz64(x342, x335, x322);
- uint64_t x345 = cmovznz64(x342, x332, x319);
- uint64_t x346 = cmovznz64(x342, x329, x316);
- return (x343, x344, x345, x346))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e251m9_4limbs/femulDisplay.v b/src/Specific/montgomery64_2e251m9_4limbs/femulDisplay.v
deleted file mode 100644
index 884821965..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e251m9_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e251m9_4limbs/fenz.c b/src/Specific/montgomery64_2e251m9_4limbs/fenz.c
deleted file mode 100644
index 7541094ff..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x7 = (x6 | x5);
- { uint64_t x8 = (x4 | x7);
- { uint64_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e251m9_4limbs/fenz.v b/src/Specific/montgomery64_2e251m9_4limbs/fenz.v
deleted file mode 100644
index c993d57b8..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e251m9_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e251m9_4limbs/fenzDisplay.log b/src/Specific/montgomery64_2e251m9_4limbs/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e251m9_4limbs/fenzDisplay.v b/src/Specific/montgomery64_2e251m9_4limbs/fenzDisplay.v
deleted file mode 100644
index 25c78f288..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e251m9_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e251m9_4limbs/feopp.c b/src/Specific/montgomery64_2e251m9_4limbs/feopp.c
deleted file mode 100644
index e37c6d0d9..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/feopp.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feopp(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8; uint8_t x9 = _subborrow_u64(0x0, 0x0, x2, &x8);
- { uint64_t x11; uint8_t x12 = _subborrow_u64(x9, 0x0, x4, &x11);
- { uint64_t x14; uint8_t x15 = _subborrow_u64(x12, 0x0, x6, &x14);
- { uint64_t x17; uint8_t x18 = _subborrow_u64(x15, 0x0, x5, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xfffffffffffffff7L);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x8, x20, &x22);
- { uint64_t x24 = (x19 & 0xffffffffffffffffL);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x23, x11, x24, &x26);
- { uint64_t x28 = (x19 & 0xffffffffffffffffL);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x27, x14, x28, &x30);
- { uint64_t x32 = (x19 & 0x7ffffffffffffff);
- { uint64_t x34; uint8_t _ = _addcarryx_u64(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e251m9_4limbs/feopp.v b/src/Specific/montgomery64_2e251m9_4limbs/feopp.v
deleted file mode 100644
index ed21323a5..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e251m9_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e251m9_4limbs/feoppDisplay.log b/src/Specific/montgomery64_2e251m9_4limbs/feoppDisplay.log
deleted file mode 100644
index 237800aa3..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xfffffffffffffff7L);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffffffffffffffL);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x28 = (x19 & 0xffffffffffffffffL);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x27, x14, x28);
- uint64_t x32 = (x19 & 0x7ffffffffffffff);
- uint64_t x34, uint8_t _ = addcarryx_u64(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e251m9_4limbs/feoppDisplay.v b/src/Specific/montgomery64_2e251m9_4limbs/feoppDisplay.v
deleted file mode 100644
index 531508bee..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e251m9_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e251m9_4limbs/fesquare.c b/src/Specific/montgomery64_2e251m9_4limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e251m9_4limbs/fesub.c b/src/Specific/montgomery64_2e251m9_4limbs/fesub.c
deleted file mode 100644
index 8391d0892..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/fesub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _subborrow_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _subborrow_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _subborrow_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u64(x24, x8, x14, &x26);
- { uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- { uint64_t x29 = (x28 & 0xfffffffffffffff7L);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(0x0, x17, x29, &x31);
- { uint64_t x33 = (x28 & 0xffffffffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x20, x33, &x35);
- { uint64_t x37 = (x28 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x23, x37, &x39);
- { uint64_t x41 = (x28 & 0x7ffffffffffffff);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x26, x41, &x43);
- out[0] = x31;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e251m9_4limbs/fesub.v b/src/Specific/montgomery64_2e251m9_4limbs/fesub.v
deleted file mode 100644
index daa52e52b..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e251m9_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e251m9_4limbs/fesubDisplay.log b/src/Specific/montgomery64_2e251m9_4limbs/fesubDisplay.log
deleted file mode 100644
index d98803e52..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint64_t x29 = (x28 & 0xfffffffffffffff7L);
- uint64_t x31, uint8_t x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x37 = (x28 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x23, x37);
- uint64_t x41 = (x28 & 0x7ffffffffffffff);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x26, x41);
- (Return x43, Return x39, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e251m9_4limbs/fesubDisplay.v b/src/Specific/montgomery64_2e251m9_4limbs/fesubDisplay.v
deleted file mode 100644
index bfe64ae82..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e251m9_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e251m9_4limbs/py_interpreter.sh b/src/Specific/montgomery64_2e251m9_4limbs/py_interpreter.sh
deleted file mode 100755
index 97e1673a8..000000000
--- a/src/Specific/montgomery64_2e251m9_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**251 - 9' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/CurveParameters.v b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/CurveParameters.v
deleted file mode 100644
index 34d6d4b0c..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^254 - 127*2^240 - 1
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 64;
- bitwidth := 64;
- s := 2^254;
- c := [(1, 1); (127, 2^240)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e254m127x2e240m1_4limbs/Synthesis.v b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/Synthesis.v
deleted file mode 100644
index 9eb3bc57b..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e254m127x2e240m1_4limbs.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/montgomery64_2e254m127x2e240m1_4limbs/compiler.sh b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/compiler.sh
deleted file mode 100755
index 3de125e40..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/compilerxx.sh b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/compilerxx.sh
deleted file mode 100755
index 70cd49670..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x3f,0x80,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<254) - 127*(1_mpz<<240) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feadd.c b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feadd.c
deleted file mode 100644
index 6921369c7..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _addcarryx_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _addcarryx_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x24, x8, x14, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u64(0x0, x17, 0xffffffffffffffffL, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u64(x30, x20, 0xffffffffffffffffL, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u64(x33, x23, 0xffffffffffffffffL, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u64(x36, x26, 0x3f80ffffffffffff, &x38);
- { uint64_t _; uint8_t x42 = _subborrow_u64(x39, x27, 0x0, &_);
- { uint64_t x43 = cmovznz64(x42, x38, x26);
- { uint64_t x44 = cmovznz64(x42, x35, x23);
- { uint64_t x45 = cmovznz64(x42, x32, x20);
- { uint64_t x46 = cmovznz64(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feadd.v b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feadd.v
deleted file mode 100644
index 6eb12fd58..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e254m127x2e240m1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feaddDisplay.log b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feaddDisplay.log
deleted file mode 100644
index acf9736ba..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t x30 = subborrow_u64(0x0, x17, 0xffffffffffffffffL);
- uint64_t x32, uint8_t x33 = subborrow_u64(x30, x20, 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = subborrow_u64(x33, x23, 0xffffffffffffffffL);
- uint64_t x38, uint8_t x39 = subborrow_u64(x36, x26, 0x3f80ffffffffffff);
- uint64_t _, uint8_t x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feaddDisplay.v b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feaddDisplay.v
deleted file mode 100644
index 4ad4e08c1..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e254m127x2e240m1_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/femul.c b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/femul.c
deleted file mode 100644
index 69062aa1d..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/femul.c
+++ /dev/null
@@ -1,126 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x18; uint64_t x17 = _mulx_u64(x5, x11, &x18);
- { uint64_t x21; uint64_t x20 = _mulx_u64(x5, x13, &x21);
- { uint64_t x24; uint64_t x23 = _mulx_u64(x5, x15, &x24);
- { uint64_t x27; uint64_t x26 = _mulx_u64(x5, x14, &x27);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x18, x20, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x21, x23, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x24, x26, &x35);
- { uint64_t x38; uint8_t _ = _addcarryx_u64(0x0, x36, x27, &x38);
- { uint64_t x42; uint64_t x41 = _mulx_u64(x17, 0xffffffffffffffffL, &x42);
- { uint64_t x45; uint64_t x44 = _mulx_u64(x17, 0xffffffffffffffffL, &x45);
- { uint64_t x48; uint64_t x47 = _mulx_u64(x17, 0xffffffffffffffffL, &x48);
- { uint64_t x51; uint64_t x50 = _mulx_u64(x17, 0x3f80ffffffffffff, &x51);
- { uint64_t x53; uint8_t x54 = _addcarryx_u64(0x0, x42, x44, &x53);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(x54, x45, x47, &x56);
- { uint64_t x59; uint8_t x60 = _addcarryx_u64(x57, x48, x50, &x59);
- { uint64_t x62; uint8_t _ = _addcarryx_u64(0x0, x60, x51, &x62);
- { uint64_t _; uint8_t x66 = _addcarryx_u64(0x0, x17, x41, &_);
- { uint64_t x68; uint8_t x69 = _addcarryx_u64(x66, x29, x53, &x68);
- { uint64_t x71; uint8_t x72 = _addcarryx_u64(x69, x32, x56, &x71);
- { uint64_t x74; uint8_t x75 = _addcarryx_u64(x72, x35, x59, &x74);
- { uint64_t x77; uint8_t x78 = _addcarryx_u64(x75, x38, x62, &x77);
- { uint64_t x81; uint64_t x80 = _mulx_u64(x7, x11, &x81);
- { uint64_t x84; uint64_t x83 = _mulx_u64(x7, x13, &x84);
- { uint64_t x87; uint64_t x86 = _mulx_u64(x7, x15, &x87);
- { uint64_t x90; uint64_t x89 = _mulx_u64(x7, x14, &x90);
- { uint64_t x92; uint8_t x93 = _addcarryx_u64(0x0, x81, x83, &x92);
- { uint64_t x95; uint8_t x96 = _addcarryx_u64(x93, x84, x86, &x95);
- { uint64_t x98; uint8_t x99 = _addcarryx_u64(x96, x87, x89, &x98);
- { uint64_t x101; uint8_t _ = _addcarryx_u64(0x0, x99, x90, &x101);
- { uint64_t x104; uint8_t x105 = _addcarryx_u64(0x0, x68, x80, &x104);
- { uint64_t x107; uint8_t x108 = _addcarryx_u64(x105, x71, x92, &x107);
- { uint64_t x110; uint8_t x111 = _addcarryx_u64(x108, x74, x95, &x110);
- { uint64_t x113; uint8_t x114 = _addcarryx_u64(x111, x77, x98, &x113);
- { uint64_t x116; uint8_t x117 = _addcarryx_u64(x114, x78, x101, &x116);
- { uint64_t x120; uint64_t x119 = _mulx_u64(x104, 0xffffffffffffffffL, &x120);
- { uint64_t x123; uint64_t x122 = _mulx_u64(x104, 0xffffffffffffffffL, &x123);
- { uint64_t x126; uint64_t x125 = _mulx_u64(x104, 0xffffffffffffffffL, &x126);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x104, 0x3f80ffffffffffff, &x129);
- { uint64_t x131; uint8_t x132 = _addcarryx_u64(0x0, x120, x122, &x131);
- { uint64_t x134; uint8_t x135 = _addcarryx_u64(x132, x123, x125, &x134);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(x135, x126, x128, &x137);
- { uint64_t x140; uint8_t _ = _addcarryx_u64(0x0, x138, x129, &x140);
- { uint64_t _; uint8_t x144 = _addcarryx_u64(0x0, x104, x119, &_);
- { uint64_t x146; uint8_t x147 = _addcarryx_u64(x144, x107, x131, &x146);
- { uint64_t x149; uint8_t x150 = _addcarryx_u64(x147, x110, x134, &x149);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x113, x137, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x116, x140, &x155);
- { uint8_t x157 = (x156 + x117);
- { uint64_t x160; uint64_t x159 = _mulx_u64(x9, x11, &x160);
- { uint64_t x163; uint64_t x162 = _mulx_u64(x9, x13, &x163);
- { uint64_t x166; uint64_t x165 = _mulx_u64(x9, x15, &x166);
- { uint64_t x169; uint64_t x168 = _mulx_u64(x9, x14, &x169);
- { uint64_t x171; uint8_t x172 = _addcarryx_u64(0x0, x160, x162, &x171);
- { uint64_t x174; uint8_t x175 = _addcarryx_u64(x172, x163, x165, &x174);
- { uint64_t x177; uint8_t x178 = _addcarryx_u64(x175, x166, x168, &x177);
- { uint64_t x180; uint8_t _ = _addcarryx_u64(0x0, x178, x169, &x180);
- { uint64_t x183; uint8_t x184 = _addcarryx_u64(0x0, x146, x159, &x183);
- { uint64_t x186; uint8_t x187 = _addcarryx_u64(x184, x149, x171, &x186);
- { uint64_t x189; uint8_t x190 = _addcarryx_u64(x187, x152, x174, &x189);
- { uint64_t x192; uint8_t x193 = _addcarryx_u64(x190, x155, x177, &x192);
- { uint64_t x195; uint8_t x196 = _addcarryx_u64(x193, x157, x180, &x195);
- { uint64_t x199; uint64_t x198 = _mulx_u64(x183, 0xffffffffffffffffL, &x199);
- { uint64_t x202; uint64_t x201 = _mulx_u64(x183, 0xffffffffffffffffL, &x202);
- { uint64_t x205; uint64_t x204 = _mulx_u64(x183, 0xffffffffffffffffL, &x205);
- { uint64_t x208; uint64_t x207 = _mulx_u64(x183, 0x3f80ffffffffffff, &x208);
- { uint64_t x210; uint8_t x211 = _addcarryx_u64(0x0, x199, x201, &x210);
- { uint64_t x213; uint8_t x214 = _addcarryx_u64(x211, x202, x204, &x213);
- { uint64_t x216; uint8_t x217 = _addcarryx_u64(x214, x205, x207, &x216);
- { uint64_t x219; uint8_t _ = _addcarryx_u64(0x0, x217, x208, &x219);
- { uint64_t _; uint8_t x223 = _addcarryx_u64(0x0, x183, x198, &_);
- { uint64_t x225; uint8_t x226 = _addcarryx_u64(x223, x186, x210, &x225);
- { uint64_t x228; uint8_t x229 = _addcarryx_u64(x226, x189, x213, &x228);
- { uint64_t x231; uint8_t x232 = _addcarryx_u64(x229, x192, x216, &x231);
- { uint64_t x234; uint8_t x235 = _addcarryx_u64(x232, x195, x219, &x234);
- { uint8_t x236 = (x235 + x196);
- { uint64_t x239; uint64_t x238 = _mulx_u64(x8, x11, &x239);
- { uint64_t x242; uint64_t x241 = _mulx_u64(x8, x13, &x242);
- { uint64_t x245; uint64_t x244 = _mulx_u64(x8, x15, &x245);
- { uint64_t x248; uint64_t x247 = _mulx_u64(x8, x14, &x248);
- { uint64_t x250; uint8_t x251 = _addcarryx_u64(0x0, x239, x241, &x250);
- { uint64_t x253; uint8_t x254 = _addcarryx_u64(x251, x242, x244, &x253);
- { uint64_t x256; uint8_t x257 = _addcarryx_u64(x254, x245, x247, &x256);
- { uint64_t x259; uint8_t _ = _addcarryx_u64(0x0, x257, x248, &x259);
- { uint64_t x262; uint8_t x263 = _addcarryx_u64(0x0, x225, x238, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(x263, x228, x250, &x265);
- { uint64_t x268; uint8_t x269 = _addcarryx_u64(x266, x231, x253, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(x269, x234, x256, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x236, x259, &x274);
- { uint64_t x278; uint64_t x277 = _mulx_u64(x262, 0xffffffffffffffffL, &x278);
- { uint64_t x281; uint64_t x280 = _mulx_u64(x262, 0xffffffffffffffffL, &x281);
- { uint64_t x284; uint64_t x283 = _mulx_u64(x262, 0xffffffffffffffffL, &x284);
- { uint64_t x287; uint64_t x286 = _mulx_u64(x262, 0x3f80ffffffffffff, &x287);
- { uint64_t x289; uint8_t x290 = _addcarryx_u64(0x0, x278, x280, &x289);
- { uint64_t x292; uint8_t x293 = _addcarryx_u64(x290, x281, x283, &x292);
- { uint64_t x295; uint8_t x296 = _addcarryx_u64(x293, x284, x286, &x295);
- { uint64_t x298; uint8_t _ = _addcarryx_u64(0x0, x296, x287, &x298);
- { uint64_t _; uint8_t x302 = _addcarryx_u64(0x0, x262, x277, &_);
- { uint64_t x304; uint8_t x305 = _addcarryx_u64(x302, x265, x289, &x304);
- { uint64_t x307; uint8_t x308 = _addcarryx_u64(x305, x268, x292, &x307);
- { uint64_t x310; uint8_t x311 = _addcarryx_u64(x308, x271, x295, &x310);
- { uint64_t x313; uint8_t x314 = _addcarryx_u64(x311, x274, x298, &x313);
- { uint8_t x315 = (x314 + x275);
- { uint64_t x317; uint8_t x318 = _subborrow_u64(0x0, x304, 0xffffffffffffffffL, &x317);
- { uint64_t x320; uint8_t x321 = _subborrow_u64(x318, x307, 0xffffffffffffffffL, &x320);
- { uint64_t x323; uint8_t x324 = _subborrow_u64(x321, x310, 0xffffffffffffffffL, &x323);
- { uint64_t x326; uint8_t x327 = _subborrow_u64(x324, x313, 0x3f80ffffffffffff, &x326);
- { uint64_t _; uint8_t x330 = _subborrow_u64(x327, x315, 0x0, &_);
- { uint64_t x331 = cmovznz64(x330, x326, x313);
- { uint64_t x332 = cmovznz64(x330, x323, x310);
- { uint64_t x333 = cmovznz64(x330, x320, x307);
- { uint64_t x334 = cmovznz64(x330, x317, x304);
- out[0] = x334;
- out[1] = x333;
- out[2] = x332;
- out[3] = x331;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/femul.v b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/femul.v
deleted file mode 100644
index 0ca722ef1..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e254m127x2e240m1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/femulDisplay.log b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/femulDisplay.log
deleted file mode 100644
index 730bbce58..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,118 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t x42 = mulx_u64(x17, 0xffffffffffffffffL);
- uint64_t x44, uint64_t x45 = mulx_u64(x17, 0xffffffffffffffffL);
- uint64_t x47, uint64_t x48 = mulx_u64(x17, 0xffffffffffffffffL);
- uint64_t x50, uint64_t x51 = mulx_u64(x17, 0x3f80ffffffffffff);
- uint64_t x53, uint8_t x54 = addcarryx_u64(0x0, x42, x44);
- uint64_t x56, uint8_t x57 = addcarryx_u64(x54, x45, x47);
- uint64_t x59, uint8_t x60 = addcarryx_u64(x57, x48, x50);
- uint64_t x62, uint8_t _ = addcarryx_u64(0x0, x60, x51);
- uint64_t _, uint8_t x66 = addcarryx_u64(0x0, x17, x41);
- uint64_t x68, uint8_t x69 = addcarryx_u64(x66, x29, x53);
- uint64_t x71, uint8_t x72 = addcarryx_u64(x69, x32, x56);
- uint64_t x74, uint8_t x75 = addcarryx_u64(x72, x35, x59);
- uint64_t x77, uint8_t x78 = addcarryx_u64(x75, x38, x62);
- uint64_t x80, uint64_t x81 = mulx_u64(x7, x11);
- uint64_t x83, uint64_t x84 = mulx_u64(x7, x13);
- uint64_t x86, uint64_t x87 = mulx_u64(x7, x15);
- uint64_t x89, uint64_t x90 = mulx_u64(x7, x14);
- uint64_t x92, uint8_t x93 = addcarryx_u64(0x0, x81, x83);
- uint64_t x95, uint8_t x96 = addcarryx_u64(x93, x84, x86);
- uint64_t x98, uint8_t x99 = addcarryx_u64(x96, x87, x89);
- uint64_t x101, uint8_t _ = addcarryx_u64(0x0, x99, x90);
- uint64_t x104, uint8_t x105 = addcarryx_u64(0x0, x68, x80);
- uint64_t x107, uint8_t x108 = addcarryx_u64(x105, x71, x92);
- uint64_t x110, uint8_t x111 = addcarryx_u64(x108, x74, x95);
- uint64_t x113, uint8_t x114 = addcarryx_u64(x111, x77, x98);
- uint64_t x116, uint8_t x117 = addcarryx_u64(x114, x78, x101);
- uint64_t x119, uint64_t x120 = mulx_u64(x104, 0xffffffffffffffffL);
- uint64_t x122, uint64_t x123 = mulx_u64(x104, 0xffffffffffffffffL);
- uint64_t x125, uint64_t x126 = mulx_u64(x104, 0xffffffffffffffffL);
- uint64_t x128, uint64_t x129 = mulx_u64(x104, 0x3f80ffffffffffff);
- uint64_t x131, uint8_t x132 = addcarryx_u64(0x0, x120, x122);
- uint64_t x134, uint8_t x135 = addcarryx_u64(x132, x123, x125);
- uint64_t x137, uint8_t x138 = addcarryx_u64(x135, x126, x128);
- uint64_t x140, uint8_t _ = addcarryx_u64(0x0, x138, x129);
- uint64_t _, uint8_t x144 = addcarryx_u64(0x0, x104, x119);
- uint64_t x146, uint8_t x147 = addcarryx_u64(x144, x107, x131);
- uint64_t x149, uint8_t x150 = addcarryx_u64(x147, x110, x134);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x113, x137);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x116, x140);
- uint8_t x157 = (x156 + x117);
- uint64_t x159, uint64_t x160 = mulx_u64(x9, x11);
- uint64_t x162, uint64_t x163 = mulx_u64(x9, x13);
- uint64_t x165, uint64_t x166 = mulx_u64(x9, x15);
- uint64_t x168, uint64_t x169 = mulx_u64(x9, x14);
- uint64_t x171, uint8_t x172 = addcarryx_u64(0x0, x160, x162);
- uint64_t x174, uint8_t x175 = addcarryx_u64(x172, x163, x165);
- uint64_t x177, uint8_t x178 = addcarryx_u64(x175, x166, x168);
- uint64_t x180, uint8_t _ = addcarryx_u64(0x0, x178, x169);
- uint64_t x183, uint8_t x184 = addcarryx_u64(0x0, x146, x159);
- uint64_t x186, uint8_t x187 = addcarryx_u64(x184, x149, x171);
- uint64_t x189, uint8_t x190 = addcarryx_u64(x187, x152, x174);
- uint64_t x192, uint8_t x193 = addcarryx_u64(x190, x155, x177);
- uint64_t x195, uint8_t x196 = addcarryx_u64(x193, x157, x180);
- uint64_t x198, uint64_t x199 = mulx_u64(x183, 0xffffffffffffffffL);
- uint64_t x201, uint64_t x202 = mulx_u64(x183, 0xffffffffffffffffL);
- uint64_t x204, uint64_t x205 = mulx_u64(x183, 0xffffffffffffffffL);
- uint64_t x207, uint64_t x208 = mulx_u64(x183, 0x3f80ffffffffffff);
- uint64_t x210, uint8_t x211 = addcarryx_u64(0x0, x199, x201);
- uint64_t x213, uint8_t x214 = addcarryx_u64(x211, x202, x204);
- uint64_t x216, uint8_t x217 = addcarryx_u64(x214, x205, x207);
- uint64_t x219, uint8_t _ = addcarryx_u64(0x0, x217, x208);
- uint64_t _, uint8_t x223 = addcarryx_u64(0x0, x183, x198);
- uint64_t x225, uint8_t x226 = addcarryx_u64(x223, x186, x210);
- uint64_t x228, uint8_t x229 = addcarryx_u64(x226, x189, x213);
- uint64_t x231, uint8_t x232 = addcarryx_u64(x229, x192, x216);
- uint64_t x234, uint8_t x235 = addcarryx_u64(x232, x195, x219);
- uint8_t x236 = (x235 + x196);
- uint64_t x238, uint64_t x239 = mulx_u64(x8, x11);
- uint64_t x241, uint64_t x242 = mulx_u64(x8, x13);
- uint64_t x244, uint64_t x245 = mulx_u64(x8, x15);
- uint64_t x247, uint64_t x248 = mulx_u64(x8, x14);
- uint64_t x250, uint8_t x251 = addcarryx_u64(0x0, x239, x241);
- uint64_t x253, uint8_t x254 = addcarryx_u64(x251, x242, x244);
- uint64_t x256, uint8_t x257 = addcarryx_u64(x254, x245, x247);
- uint64_t x259, uint8_t _ = addcarryx_u64(0x0, x257, x248);
- uint64_t x262, uint8_t x263 = addcarryx_u64(0x0, x225, x238);
- uint64_t x265, uint8_t x266 = addcarryx_u64(x263, x228, x250);
- uint64_t x268, uint8_t x269 = addcarryx_u64(x266, x231, x253);
- uint64_t x271, uint8_t x272 = addcarryx_u64(x269, x234, x256);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x236, x259);
- uint64_t x277, uint64_t x278 = mulx_u64(x262, 0xffffffffffffffffL);
- uint64_t x280, uint64_t x281 = mulx_u64(x262, 0xffffffffffffffffL);
- uint64_t x283, uint64_t x284 = mulx_u64(x262, 0xffffffffffffffffL);
- uint64_t x286, uint64_t x287 = mulx_u64(x262, 0x3f80ffffffffffff);
- uint64_t x289, uint8_t x290 = addcarryx_u64(0x0, x278, x280);
- uint64_t x292, uint8_t x293 = addcarryx_u64(x290, x281, x283);
- uint64_t x295, uint8_t x296 = addcarryx_u64(x293, x284, x286);
- uint64_t x298, uint8_t _ = addcarryx_u64(0x0, x296, x287);
- uint64_t _, uint8_t x302 = addcarryx_u64(0x0, x262, x277);
- uint64_t x304, uint8_t x305 = addcarryx_u64(x302, x265, x289);
- uint64_t x307, uint8_t x308 = addcarryx_u64(x305, x268, x292);
- uint64_t x310, uint8_t x311 = addcarryx_u64(x308, x271, x295);
- uint64_t x313, uint8_t x314 = addcarryx_u64(x311, x274, x298);
- uint8_t x315 = (x314 + x275);
- uint64_t x317, uint8_t x318 = subborrow_u64(0x0, x304, 0xffffffffffffffffL);
- uint64_t x320, uint8_t x321 = subborrow_u64(x318, x307, 0xffffffffffffffffL);
- uint64_t x323, uint8_t x324 = subborrow_u64(x321, x310, 0xffffffffffffffffL);
- uint64_t x326, uint8_t x327 = subborrow_u64(x324, x313, 0x3f80ffffffffffff);
- uint64_t _, uint8_t x330 = subborrow_u64(x327, x315, 0x0);
- uint64_t x331 = cmovznz64(x330, x326, x313);
- uint64_t x332 = cmovznz64(x330, x323, x310);
- uint64_t x333 = cmovznz64(x330, x320, x307);
- uint64_t x334 = cmovznz64(x330, x317, x304);
- return (x331, x332, x333, x334))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/femulDisplay.v b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/femulDisplay.v
deleted file mode 100644
index d43c115fc..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e254m127x2e240m1_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fenz.c b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fenz.c
deleted file mode 100644
index 7541094ff..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x7 = (x6 | x5);
- { uint64_t x8 = (x4 | x7);
- { uint64_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fenz.v b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fenz.v
deleted file mode 100644
index 36fd50b9e..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e254m127x2e240m1_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fenzDisplay.log b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fenzDisplay.v b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fenzDisplay.v
deleted file mode 100644
index 4ba2ec450..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e254m127x2e240m1_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feopp.c b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feopp.c
deleted file mode 100644
index 862551d03..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feopp.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feopp(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8; uint8_t x9 = _subborrow_u64(0x0, 0x0, x2, &x8);
- { uint64_t x11; uint8_t x12 = _subborrow_u64(x9, 0x0, x4, &x11);
- { uint64_t x14; uint8_t x15 = _subborrow_u64(x12, 0x0, x6, &x14);
- { uint64_t x17; uint8_t x18 = _subborrow_u64(x15, 0x0, x5, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xffffffffffffffffL);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x8, x20, &x22);
- { uint64_t x24 = (x19 & 0xffffffffffffffffL);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x23, x11, x24, &x26);
- { uint64_t x28 = (x19 & 0xffffffffffffffffL);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x27, x14, x28, &x30);
- { uint64_t x32 = (x19 & 0x3f80ffffffffffff);
- { uint64_t x34; uint8_t _ = _addcarryx_u64(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feopp.v b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feopp.v
deleted file mode 100644
index 01bca31ae..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e254m127x2e240m1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feoppDisplay.log b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feoppDisplay.log
deleted file mode 100644
index dc4848371..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xffffffffffffffffL);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffffffffffffffL);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x28 = (x19 & 0xffffffffffffffffL);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x27, x14, x28);
- uint64_t x32 = (x19 & 0x3f80ffffffffffff);
- uint64_t x34, uint8_t _ = addcarryx_u64(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feoppDisplay.v b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feoppDisplay.v
deleted file mode 100644
index dc2fe3d94..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e254m127x2e240m1_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fesquare.c b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fesub.c b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fesub.c
deleted file mode 100644
index 82b995af4..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fesub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _subborrow_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _subborrow_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _subborrow_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u64(x24, x8, x14, &x26);
- { uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- { uint64_t x29 = (x28 & 0xffffffffffffffffL);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(0x0, x17, x29, &x31);
- { uint64_t x33 = (x28 & 0xffffffffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x20, x33, &x35);
- { uint64_t x37 = (x28 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x23, x37, &x39);
- { uint64_t x41 = (x28 & 0x3f80ffffffffffff);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x26, x41, &x43);
- out[0] = x31;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fesub.v b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fesub.v
deleted file mode 100644
index c895dd9df..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e254m127x2e240m1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fesubDisplay.log b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fesubDisplay.log
deleted file mode 100644
index a9f5ecefa..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint64_t x29 = (x28 & 0xffffffffffffffffL);
- uint64_t x31, uint8_t x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x37 = (x28 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x23, x37);
- uint64_t x41 = (x28 & 0x3f80ffffffffffff);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x26, x41);
- (Return x43, Return x39, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fesubDisplay.v b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fesubDisplay.v
deleted file mode 100644
index 0d00ee3e6..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e254m127x2e240m1_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/py_interpreter.sh b/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/py_interpreter.sh
deleted file mode 100755
index 05bd087a0..000000000
--- a/src/Specific/montgomery64_2e254m127x2e240m1_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**254 - 127*2**240 - 1' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e255m19_4limbs/CurveParameters.v b/src/Specific/montgomery64_2e255m19_4limbs/CurveParameters.v
deleted file mode 100644
index a82c6a4f3..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^255 - 19
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 64;
- bitwidth := 64;
- s := 2^255;
- c := [(1, 19)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e255m19_4limbs/Synthesis.v b/src/Specific/montgomery64_2e255m19_4limbs/Synthesis.v
deleted file mode 100644
index 4fc32ad44..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e255m19_4limbs.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/montgomery64_2e255m19_4limbs/compiler.sh b/src/Specific/montgomery64_2e255m19_4limbs/compiler.sh
deleted file mode 100755
index 1ad053970..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<255) - 19' "$@"
diff --git a/src/Specific/montgomery64_2e255m19_4limbs/compilerxx.sh b/src/Specific/montgomery64_2e255m19_4limbs/compilerxx.sh
deleted file mode 100755
index 69bc6a8e0..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<255) - 19' "$@"
diff --git a/src/Specific/montgomery64_2e255m19_4limbs/feadd.c b/src/Specific/montgomery64_2e255m19_4limbs/feadd.c
deleted file mode 100644
index caf4ae59e..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _addcarryx_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _addcarryx_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x24, x8, x14, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u64(0x0, x17, 0xffffffffffffffedL, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u64(x30, x20, 0xffffffffffffffffL, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u64(x33, x23, 0xffffffffffffffffL, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u64(x36, x26, 0x7fffffffffffffffL, &x38);
- { uint64_t _; uint8_t x42 = _subborrow_u64(x39, x27, 0x0, &_);
- { uint64_t x43 = cmovznz64(x42, x38, x26);
- { uint64_t x44 = cmovznz64(x42, x35, x23);
- { uint64_t x45 = cmovznz64(x42, x32, x20);
- { uint64_t x46 = cmovznz64(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e255m19_4limbs/feadd.v b/src/Specific/montgomery64_2e255m19_4limbs/feadd.v
deleted file mode 100644
index b2f2a364d..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e255m19_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e255m19_4limbs/feaddDisplay.log b/src/Specific/montgomery64_2e255m19_4limbs/feaddDisplay.log
deleted file mode 100644
index 0afad5f44..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t x30 = subborrow_u64(0x0, x17, 0xffffffffffffffedL);
- uint64_t x32, uint8_t x33 = subborrow_u64(x30, x20, 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = subborrow_u64(x33, x23, 0xffffffffffffffffL);
- uint64_t x38, uint8_t x39 = subborrow_u64(x36, x26, 0x7fffffffffffffffL);
- uint64_t _, uint8_t x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e255m19_4limbs/feaddDisplay.v b/src/Specific/montgomery64_2e255m19_4limbs/feaddDisplay.v
deleted file mode 100644
index 450f306c3..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e255m19_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e255m19_4limbs/femul.c b/src/Specific/montgomery64_2e255m19_4limbs/femul.c
deleted file mode 100644
index 27976f9d3..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/femul.c
+++ /dev/null
@@ -1,130 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x18; uint64_t x17 = _mulx_u64(x5, x11, &x18);
- { uint64_t x21; uint64_t x20 = _mulx_u64(x5, x13, &x21);
- { uint64_t x24; uint64_t x23 = _mulx_u64(x5, x15, &x24);
- { uint64_t x27; uint64_t x26 = _mulx_u64(x5, x14, &x27);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x18, x20, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x21, x23, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x24, x26, &x35);
- { uint64_t x38; uint8_t _ = _addcarryx_u64(0x0, x36, x27, &x38);
- { uint64_t _; uint64_t x41 = _mulx_u64(x17, 0x86bca1af286bca1bL, &_);
- { uint64_t x45; uint64_t x44 = _mulx_u64(x41, 0xffffffffffffffedL, &x45);
- { uint64_t x48; uint64_t x47 = _mulx_u64(x41, 0xffffffffffffffffL, &x48);
- { uint64_t x51; uint64_t x50 = _mulx_u64(x41, 0xffffffffffffffffL, &x51);
- { uint64_t x54; uint64_t x53 = _mulx_u64(x41, 0x7fffffffffffffffL, &x54);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(0x0, x45, x47, &x56);
- { uint64_t x59; uint8_t x60 = _addcarryx_u64(x57, x48, x50, &x59);
- { uint64_t x62; uint8_t x63 = _addcarryx_u64(x60, x51, x53, &x62);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(0x0, x63, x54, &x65);
- { uint64_t _; uint8_t x69 = _addcarryx_u64(0x0, x17, x44, &_);
- { uint64_t x71; uint8_t x72 = _addcarryx_u64(x69, x29, x56, &x71);
- { uint64_t x74; uint8_t x75 = _addcarryx_u64(x72, x32, x59, &x74);
- { uint64_t x77; uint8_t x78 = _addcarryx_u64(x75, x35, x62, &x77);
- { uint64_t x80; uint8_t x81 = _addcarryx_u64(x78, x38, x65, &x80);
- { uint64_t x84; uint64_t x83 = _mulx_u64(x7, x11, &x84);
- { uint64_t x87; uint64_t x86 = _mulx_u64(x7, x13, &x87);
- { uint64_t x90; uint64_t x89 = _mulx_u64(x7, x15, &x90);
- { uint64_t x93; uint64_t x92 = _mulx_u64(x7, x14, &x93);
- { uint64_t x95; uint8_t x96 = _addcarryx_u64(0x0, x84, x86, &x95);
- { uint64_t x98; uint8_t x99 = _addcarryx_u64(x96, x87, x89, &x98);
- { uint64_t x101; uint8_t x102 = _addcarryx_u64(x99, x90, x92, &x101);
- { uint64_t x104; uint8_t _ = _addcarryx_u64(0x0, x102, x93, &x104);
- { uint64_t x107; uint8_t x108 = _addcarryx_u64(0x0, x71, x83, &x107);
- { uint64_t x110; uint8_t x111 = _addcarryx_u64(x108, x74, x95, &x110);
- { uint64_t x113; uint8_t x114 = _addcarryx_u64(x111, x77, x98, &x113);
- { uint64_t x116; uint8_t x117 = _addcarryx_u64(x114, x80, x101, &x116);
- { uint64_t x119; uint8_t x120 = _addcarryx_u64(x117, x81, x104, &x119);
- { uint64_t _; uint64_t x122 = _mulx_u64(x107, 0x86bca1af286bca1bL, &_);
- { uint64_t x126; uint64_t x125 = _mulx_u64(x122, 0xffffffffffffffedL, &x126);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x122, 0xffffffffffffffffL, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x122, 0xffffffffffffffffL, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x122, 0x7fffffffffffffffL, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x126, x128, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x129, x131, &x140);
- { uint64_t x143; uint8_t x144 = _addcarryx_u64(x141, x132, x134, &x143);
- { uint64_t x146; uint8_t _ = _addcarryx_u64(0x0, x144, x135, &x146);
- { uint64_t _; uint8_t x150 = _addcarryx_u64(0x0, x107, x125, &_);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x110, x137, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x113, x140, &x155);
- { uint64_t x158; uint8_t x159 = _addcarryx_u64(x156, x116, x143, &x158);
- { uint64_t x161; uint8_t x162 = _addcarryx_u64(x159, x119, x146, &x161);
- { uint8_t x163 = (x162 + x120);
- { uint64_t x166; uint64_t x165 = _mulx_u64(x9, x11, &x166);
- { uint64_t x169; uint64_t x168 = _mulx_u64(x9, x13, &x169);
- { uint64_t x172; uint64_t x171 = _mulx_u64(x9, x15, &x172);
- { uint64_t x175; uint64_t x174 = _mulx_u64(x9, x14, &x175);
- { uint64_t x177; uint8_t x178 = _addcarryx_u64(0x0, x166, x168, &x177);
- { uint64_t x180; uint8_t x181 = _addcarryx_u64(x178, x169, x171, &x180);
- { uint64_t x183; uint8_t x184 = _addcarryx_u64(x181, x172, x174, &x183);
- { uint64_t x186; uint8_t _ = _addcarryx_u64(0x0, x184, x175, &x186);
- { uint64_t x189; uint8_t x190 = _addcarryx_u64(0x0, x152, x165, &x189);
- { uint64_t x192; uint8_t x193 = _addcarryx_u64(x190, x155, x177, &x192);
- { uint64_t x195; uint8_t x196 = _addcarryx_u64(x193, x158, x180, &x195);
- { uint64_t x198; uint8_t x199 = _addcarryx_u64(x196, x161, x183, &x198);
- { uint64_t x201; uint8_t x202 = _addcarryx_u64(x199, x163, x186, &x201);
- { uint64_t _; uint64_t x204 = _mulx_u64(x189, 0x86bca1af286bca1bL, &_);
- { uint64_t x208; uint64_t x207 = _mulx_u64(x204, 0xffffffffffffffedL, &x208);
- { uint64_t x211; uint64_t x210 = _mulx_u64(x204, 0xffffffffffffffffL, &x211);
- { uint64_t x214; uint64_t x213 = _mulx_u64(x204, 0xffffffffffffffffL, &x214);
- { uint64_t x217; uint64_t x216 = _mulx_u64(x204, 0x7fffffffffffffffL, &x217);
- { uint64_t x219; uint8_t x220 = _addcarryx_u64(0x0, x208, x210, &x219);
- { uint64_t x222; uint8_t x223 = _addcarryx_u64(x220, x211, x213, &x222);
- { uint64_t x225; uint8_t x226 = _addcarryx_u64(x223, x214, x216, &x225);
- { uint64_t x228; uint8_t _ = _addcarryx_u64(0x0, x226, x217, &x228);
- { uint64_t _; uint8_t x232 = _addcarryx_u64(0x0, x189, x207, &_);
- { uint64_t x234; uint8_t x235 = _addcarryx_u64(x232, x192, x219, &x234);
- { uint64_t x237; uint8_t x238 = _addcarryx_u64(x235, x195, x222, &x237);
- { uint64_t x240; uint8_t x241 = _addcarryx_u64(x238, x198, x225, &x240);
- { uint64_t x243; uint8_t x244 = _addcarryx_u64(x241, x201, x228, &x243);
- { uint8_t x245 = (x244 + x202);
- { uint64_t x248; uint64_t x247 = _mulx_u64(x8, x11, &x248);
- { uint64_t x251; uint64_t x250 = _mulx_u64(x8, x13, &x251);
- { uint64_t x254; uint64_t x253 = _mulx_u64(x8, x15, &x254);
- { uint64_t x257; uint64_t x256 = _mulx_u64(x8, x14, &x257);
- { uint64_t x259; uint8_t x260 = _addcarryx_u64(0x0, x248, x250, &x259);
- { uint64_t x262; uint8_t x263 = _addcarryx_u64(x260, x251, x253, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(x263, x254, x256, &x265);
- { uint64_t x268; uint8_t _ = _addcarryx_u64(0x0, x266, x257, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(0x0, x234, x247, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x237, x259, &x274);
- { uint64_t x277; uint8_t x278 = _addcarryx_u64(x275, x240, x262, &x277);
- { uint64_t x280; uint8_t x281 = _addcarryx_u64(x278, x243, x265, &x280);
- { uint64_t x283; uint8_t x284 = _addcarryx_u64(x281, x245, x268, &x283);
- { uint64_t _; uint64_t x286 = _mulx_u64(x271, 0x86bca1af286bca1bL, &_);
- { uint64_t x290; uint64_t x289 = _mulx_u64(x286, 0xffffffffffffffedL, &x290);
- { uint64_t x293; uint64_t x292 = _mulx_u64(x286, 0xffffffffffffffffL, &x293);
- { uint64_t x296; uint64_t x295 = _mulx_u64(x286, 0xffffffffffffffffL, &x296);
- { uint64_t x299; uint64_t x298 = _mulx_u64(x286, 0x7fffffffffffffffL, &x299);
- { uint64_t x301; uint8_t x302 = _addcarryx_u64(0x0, x290, x292, &x301);
- { uint64_t x304; uint8_t x305 = _addcarryx_u64(x302, x293, x295, &x304);
- { uint64_t x307; uint8_t x308 = _addcarryx_u64(x305, x296, x298, &x307);
- { uint64_t x310; uint8_t _ = _addcarryx_u64(0x0, x308, x299, &x310);
- { uint64_t _; uint8_t x314 = _addcarryx_u64(0x0, x271, x289, &_);
- { uint64_t x316; uint8_t x317 = _addcarryx_u64(x314, x274, x301, &x316);
- { uint64_t x319; uint8_t x320 = _addcarryx_u64(x317, x277, x304, &x319);
- { uint64_t x322; uint8_t x323 = _addcarryx_u64(x320, x280, x307, &x322);
- { uint64_t x325; uint8_t x326 = _addcarryx_u64(x323, x283, x310, &x325);
- { uint8_t x327 = (x326 + x284);
- { uint64_t x329; uint8_t x330 = _subborrow_u64(0x0, x316, 0xffffffffffffffedL, &x329);
- { uint64_t x332; uint8_t x333 = _subborrow_u64(x330, x319, 0xffffffffffffffffL, &x332);
- { uint64_t x335; uint8_t x336 = _subborrow_u64(x333, x322, 0xffffffffffffffffL, &x335);
- { uint64_t x338; uint8_t x339 = _subborrow_u64(x336, x325, 0x7fffffffffffffffL, &x338);
- { uint64_t _; uint8_t x342 = _subborrow_u64(x339, x327, 0x0, &_);
- { uint64_t x343 = cmovznz64(x342, x338, x325);
- { uint64_t x344 = cmovznz64(x342, x335, x322);
- { uint64_t x345 = cmovznz64(x342, x332, x319);
- { uint64_t x346 = cmovznz64(x342, x329, x316);
- out[0] = x346;
- out[1] = x345;
- out[2] = x344;
- out[3] = x343;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e255m19_4limbs/femul.v b/src/Specific/montgomery64_2e255m19_4limbs/femul.v
deleted file mode 100644
index b2c1f97c4..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e255m19_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e255m19_4limbs/femulDisplay.log b/src/Specific/montgomery64_2e255m19_4limbs/femulDisplay.log
deleted file mode 100644
index 0a8c04e28..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,122 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t _ = mulx_u64(x17, 0x86bca1af286bca1bL);
- uint64_t x44, uint64_t x45 = mulx_u64(x41, 0xffffffffffffffedL);
- uint64_t x47, uint64_t x48 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x50, uint64_t x51 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x53, uint64_t x54 = mulx_u64(x41, 0x7fffffffffffffffL);
- uint64_t x56, uint8_t x57 = addcarryx_u64(0x0, x45, x47);
- uint64_t x59, uint8_t x60 = addcarryx_u64(x57, x48, x50);
- uint64_t x62, uint8_t x63 = addcarryx_u64(x60, x51, x53);
- uint64_t x65, uint8_t _ = addcarryx_u64(0x0, x63, x54);
- uint64_t _, uint8_t x69 = addcarryx_u64(0x0, x17, x44);
- uint64_t x71, uint8_t x72 = addcarryx_u64(x69, x29, x56);
- uint64_t x74, uint8_t x75 = addcarryx_u64(x72, x32, x59);
- uint64_t x77, uint8_t x78 = addcarryx_u64(x75, x35, x62);
- uint64_t x80, uint8_t x81 = addcarryx_u64(x78, x38, x65);
- uint64_t x83, uint64_t x84 = mulx_u64(x7, x11);
- uint64_t x86, uint64_t x87 = mulx_u64(x7, x13);
- uint64_t x89, uint64_t x90 = mulx_u64(x7, x15);
- uint64_t x92, uint64_t x93 = mulx_u64(x7, x14);
- uint64_t x95, uint8_t x96 = addcarryx_u64(0x0, x84, x86);
- uint64_t x98, uint8_t x99 = addcarryx_u64(x96, x87, x89);
- uint64_t x101, uint8_t x102 = addcarryx_u64(x99, x90, x92);
- uint64_t x104, uint8_t _ = addcarryx_u64(0x0, x102, x93);
- uint64_t x107, uint8_t x108 = addcarryx_u64(0x0, x71, x83);
- uint64_t x110, uint8_t x111 = addcarryx_u64(x108, x74, x95);
- uint64_t x113, uint8_t x114 = addcarryx_u64(x111, x77, x98);
- uint64_t x116, uint8_t x117 = addcarryx_u64(x114, x80, x101);
- uint64_t x119, uint8_t x120 = addcarryx_u64(x117, x81, x104);
- uint64_t x122, uint64_t _ = mulx_u64(x107, 0x86bca1af286bca1bL);
- uint64_t x125, uint64_t x126 = mulx_u64(x122, 0xffffffffffffffedL);
- uint64_t x128, uint64_t x129 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x131, uint64_t x132 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x134, uint64_t x135 = mulx_u64(x122, 0x7fffffffffffffffL);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x126, x128);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x129, x131);
- uint64_t x143, uint8_t x144 = addcarryx_u64(x141, x132, x134);
- uint64_t x146, uint8_t _ = addcarryx_u64(0x0, x144, x135);
- uint64_t _, uint8_t x150 = addcarryx_u64(0x0, x107, x125);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x110, x137);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x113, x140);
- uint64_t x158, uint8_t x159 = addcarryx_u64(x156, x116, x143);
- uint64_t x161, uint8_t x162 = addcarryx_u64(x159, x119, x146);
- uint8_t x163 = (x162 + x120);
- uint64_t x165, uint64_t x166 = mulx_u64(x9, x11);
- uint64_t x168, uint64_t x169 = mulx_u64(x9, x13);
- uint64_t x171, uint64_t x172 = mulx_u64(x9, x15);
- uint64_t x174, uint64_t x175 = mulx_u64(x9, x14);
- uint64_t x177, uint8_t x178 = addcarryx_u64(0x0, x166, x168);
- uint64_t x180, uint8_t x181 = addcarryx_u64(x178, x169, x171);
- uint64_t x183, uint8_t x184 = addcarryx_u64(x181, x172, x174);
- uint64_t x186, uint8_t _ = addcarryx_u64(0x0, x184, x175);
- uint64_t x189, uint8_t x190 = addcarryx_u64(0x0, x152, x165);
- uint64_t x192, uint8_t x193 = addcarryx_u64(x190, x155, x177);
- uint64_t x195, uint8_t x196 = addcarryx_u64(x193, x158, x180);
- uint64_t x198, uint8_t x199 = addcarryx_u64(x196, x161, x183);
- uint64_t x201, uint8_t x202 = addcarryx_u64(x199, x163, x186);
- uint64_t x204, uint64_t _ = mulx_u64(x189, 0x86bca1af286bca1bL);
- uint64_t x207, uint64_t x208 = mulx_u64(x204, 0xffffffffffffffedL);
- uint64_t x210, uint64_t x211 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x213, uint64_t x214 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x216, uint64_t x217 = mulx_u64(x204, 0x7fffffffffffffffL);
- uint64_t x219, uint8_t x220 = addcarryx_u64(0x0, x208, x210);
- uint64_t x222, uint8_t x223 = addcarryx_u64(x220, x211, x213);
- uint64_t x225, uint8_t x226 = addcarryx_u64(x223, x214, x216);
- uint64_t x228, uint8_t _ = addcarryx_u64(0x0, x226, x217);
- uint64_t _, uint8_t x232 = addcarryx_u64(0x0, x189, x207);
- uint64_t x234, uint8_t x235 = addcarryx_u64(x232, x192, x219);
- uint64_t x237, uint8_t x238 = addcarryx_u64(x235, x195, x222);
- uint64_t x240, uint8_t x241 = addcarryx_u64(x238, x198, x225);
- uint64_t x243, uint8_t x244 = addcarryx_u64(x241, x201, x228);
- uint8_t x245 = (x244 + x202);
- uint64_t x247, uint64_t x248 = mulx_u64(x8, x11);
- uint64_t x250, uint64_t x251 = mulx_u64(x8, x13);
- uint64_t x253, uint64_t x254 = mulx_u64(x8, x15);
- uint64_t x256, uint64_t x257 = mulx_u64(x8, x14);
- uint64_t x259, uint8_t x260 = addcarryx_u64(0x0, x248, x250);
- uint64_t x262, uint8_t x263 = addcarryx_u64(x260, x251, x253);
- uint64_t x265, uint8_t x266 = addcarryx_u64(x263, x254, x256);
- uint64_t x268, uint8_t _ = addcarryx_u64(0x0, x266, x257);
- uint64_t x271, uint8_t x272 = addcarryx_u64(0x0, x234, x247);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x237, x259);
- uint64_t x277, uint8_t x278 = addcarryx_u64(x275, x240, x262);
- uint64_t x280, uint8_t x281 = addcarryx_u64(x278, x243, x265);
- uint64_t x283, uint8_t x284 = addcarryx_u64(x281, x245, x268);
- uint64_t x286, uint64_t _ = mulx_u64(x271, 0x86bca1af286bca1bL);
- uint64_t x289, uint64_t x290 = mulx_u64(x286, 0xffffffffffffffedL);
- uint64_t x292, uint64_t x293 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x295, uint64_t x296 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x298, uint64_t x299 = mulx_u64(x286, 0x7fffffffffffffffL);
- uint64_t x301, uint8_t x302 = addcarryx_u64(0x0, x290, x292);
- uint64_t x304, uint8_t x305 = addcarryx_u64(x302, x293, x295);
- uint64_t x307, uint8_t x308 = addcarryx_u64(x305, x296, x298);
- uint64_t x310, uint8_t _ = addcarryx_u64(0x0, x308, x299);
- uint64_t _, uint8_t x314 = addcarryx_u64(0x0, x271, x289);
- uint64_t x316, uint8_t x317 = addcarryx_u64(x314, x274, x301);
- uint64_t x319, uint8_t x320 = addcarryx_u64(x317, x277, x304);
- uint64_t x322, uint8_t x323 = addcarryx_u64(x320, x280, x307);
- uint64_t x325, uint8_t x326 = addcarryx_u64(x323, x283, x310);
- uint8_t x327 = (x326 + x284);
- uint64_t x329, uint8_t x330 = subborrow_u64(0x0, x316, 0xffffffffffffffedL);
- uint64_t x332, uint8_t x333 = subborrow_u64(x330, x319, 0xffffffffffffffffL);
- uint64_t x335, uint8_t x336 = subborrow_u64(x333, x322, 0xffffffffffffffffL);
- uint64_t x338, uint8_t x339 = subborrow_u64(x336, x325, 0x7fffffffffffffffL);
- uint64_t _, uint8_t x342 = subborrow_u64(x339, x327, 0x0);
- uint64_t x343 = cmovznz64(x342, x338, x325);
- uint64_t x344 = cmovznz64(x342, x335, x322);
- uint64_t x345 = cmovznz64(x342, x332, x319);
- uint64_t x346 = cmovznz64(x342, x329, x316);
- return (x343, x344, x345, x346))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e255m19_4limbs/femulDisplay.v b/src/Specific/montgomery64_2e255m19_4limbs/femulDisplay.v
deleted file mode 100644
index d1bef8998..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e255m19_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e255m19_4limbs/fenz.c b/src/Specific/montgomery64_2e255m19_4limbs/fenz.c
deleted file mode 100644
index 7541094ff..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x7 = (x6 | x5);
- { uint64_t x8 = (x4 | x7);
- { uint64_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e255m19_4limbs/fenz.v b/src/Specific/montgomery64_2e255m19_4limbs/fenz.v
deleted file mode 100644
index deab9711a..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e255m19_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e255m19_4limbs/fenzDisplay.log b/src/Specific/montgomery64_2e255m19_4limbs/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e255m19_4limbs/fenzDisplay.v b/src/Specific/montgomery64_2e255m19_4limbs/fenzDisplay.v
deleted file mode 100644
index 1902024fd..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e255m19_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e255m19_4limbs/feopp.c b/src/Specific/montgomery64_2e255m19_4limbs/feopp.c
deleted file mode 100644
index f7bc56926..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/feopp.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feopp(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8; uint8_t x9 = _subborrow_u64(0x0, 0x0, x2, &x8);
- { uint64_t x11; uint8_t x12 = _subborrow_u64(x9, 0x0, x4, &x11);
- { uint64_t x14; uint8_t x15 = _subborrow_u64(x12, 0x0, x6, &x14);
- { uint64_t x17; uint8_t x18 = _subborrow_u64(x15, 0x0, x5, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xffffffffffffffedL);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x8, x20, &x22);
- { uint64_t x24 = (x19 & 0xffffffffffffffffL);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x23, x11, x24, &x26);
- { uint64_t x28 = (x19 & 0xffffffffffffffffL);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x27, x14, x28, &x30);
- { uint64_t x32 = (x19 & 0x7fffffffffffffffL);
- { uint64_t x34; uint8_t _ = _addcarryx_u64(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e255m19_4limbs/feopp.v b/src/Specific/montgomery64_2e255m19_4limbs/feopp.v
deleted file mode 100644
index 1c288f624..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e255m19_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e255m19_4limbs/feoppDisplay.log b/src/Specific/montgomery64_2e255m19_4limbs/feoppDisplay.log
deleted file mode 100644
index ef7f18fdb..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xffffffffffffffedL);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffffffffffffffL);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x28 = (x19 & 0xffffffffffffffffL);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x27, x14, x28);
- uint64_t x32 = (x19 & 0x7fffffffffffffffL);
- uint64_t x34, uint8_t _ = addcarryx_u64(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e255m19_4limbs/feoppDisplay.v b/src/Specific/montgomery64_2e255m19_4limbs/feoppDisplay.v
deleted file mode 100644
index 69a1c33a7..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e255m19_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e255m19_4limbs/fesquare.c b/src/Specific/montgomery64_2e255m19_4limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e255m19_4limbs/fesub.c b/src/Specific/montgomery64_2e255m19_4limbs/fesub.c
deleted file mode 100644
index 8e4400464..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/fesub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _subborrow_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _subborrow_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _subborrow_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u64(x24, x8, x14, &x26);
- { uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- { uint64_t x29 = (x28 & 0xffffffffffffffedL);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(0x0, x17, x29, &x31);
- { uint64_t x33 = (x28 & 0xffffffffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x20, x33, &x35);
- { uint64_t x37 = (x28 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x23, x37, &x39);
- { uint64_t x41 = (x28 & 0x7fffffffffffffffL);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x26, x41, &x43);
- out[0] = x31;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e255m19_4limbs/fesub.v b/src/Specific/montgomery64_2e255m19_4limbs/fesub.v
deleted file mode 100644
index 0cbd08a32..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e255m19_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e255m19_4limbs/fesubDisplay.log b/src/Specific/montgomery64_2e255m19_4limbs/fesubDisplay.log
deleted file mode 100644
index 68b1ede8b..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint64_t x29 = (x28 & 0xffffffffffffffedL);
- uint64_t x31, uint8_t x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x37 = (x28 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x23, x37);
- uint64_t x41 = (x28 & 0x7fffffffffffffffL);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x26, x41);
- (Return x43, Return x39, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e255m19_4limbs/fesubDisplay.v b/src/Specific/montgomery64_2e255m19_4limbs/fesubDisplay.v
deleted file mode 100644
index cbc7270f7..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e255m19_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e255m19_4limbs/py_interpreter.sh b/src/Specific/montgomery64_2e255m19_4limbs/py_interpreter.sh
deleted file mode 100755
index 90e12d083..000000000
--- a/src/Specific/montgomery64_2e255m19_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**255 - 19' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e255m765_4limbs/CurveParameters.v b/src/Specific/montgomery64_2e255m765_4limbs/CurveParameters.v
deleted file mode 100644
index 24ae9e3d8..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^255 - 765
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 64;
- bitwidth := 64;
- s := 2^255;
- c := [(1, 765)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e255m765_4limbs/Synthesis.v b/src/Specific/montgomery64_2e255m765_4limbs/Synthesis.v
deleted file mode 100644
index 1062894ae..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e255m765_4limbs.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/montgomery64_2e255m765_4limbs/compiler.sh b/src/Specific/montgomery64_2e255m765_4limbs/compiler.sh
deleted file mode 100755
index 257309184..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<255) - 765' "$@"
diff --git a/src/Specific/montgomery64_2e255m765_4limbs/compilerxx.sh b/src/Specific/montgomery64_2e255m765_4limbs/compilerxx.sh
deleted file mode 100755
index b82c81aae..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<255) - 765' "$@"
diff --git a/src/Specific/montgomery64_2e255m765_4limbs/feadd.c b/src/Specific/montgomery64_2e255m765_4limbs/feadd.c
deleted file mode 100644
index 44d3c7827..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _addcarryx_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _addcarryx_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x24, x8, x14, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u64(0x0, x17, 0xfffffffffffffd03L, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u64(x30, x20, 0xffffffffffffffffL, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u64(x33, x23, 0xffffffffffffffffL, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u64(x36, x26, 0x7fffffffffffffffL, &x38);
- { uint64_t _; uint8_t x42 = _subborrow_u64(x39, x27, 0x0, &_);
- { uint64_t x43 = cmovznz64(x42, x38, x26);
- { uint64_t x44 = cmovznz64(x42, x35, x23);
- { uint64_t x45 = cmovznz64(x42, x32, x20);
- { uint64_t x46 = cmovznz64(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e255m765_4limbs/feadd.v b/src/Specific/montgomery64_2e255m765_4limbs/feadd.v
deleted file mode 100644
index c79fa3c96..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e255m765_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e255m765_4limbs/feaddDisplay.log b/src/Specific/montgomery64_2e255m765_4limbs/feaddDisplay.log
deleted file mode 100644
index fe4bb1921..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t x30 = subborrow_u64(0x0, x17, 0xfffffffffffffd03L);
- uint64_t x32, uint8_t x33 = subborrow_u64(x30, x20, 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = subborrow_u64(x33, x23, 0xffffffffffffffffL);
- uint64_t x38, uint8_t x39 = subborrow_u64(x36, x26, 0x7fffffffffffffffL);
- uint64_t _, uint8_t x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e255m765_4limbs/feaddDisplay.v b/src/Specific/montgomery64_2e255m765_4limbs/feaddDisplay.v
deleted file mode 100644
index 5b4720878..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e255m765_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e255m765_4limbs/femul.c b/src/Specific/montgomery64_2e255m765_4limbs/femul.c
deleted file mode 100644
index b2c04e1ce..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/femul.c
+++ /dev/null
@@ -1,130 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x18; uint64_t x17 = _mulx_u64(x5, x11, &x18);
- { uint64_t x21; uint64_t x20 = _mulx_u64(x5, x13, &x21);
- { uint64_t x24; uint64_t x23 = _mulx_u64(x5, x15, &x24);
- { uint64_t x27; uint64_t x26 = _mulx_u64(x5, x14, &x27);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x18, x20, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x21, x23, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x24, x26, &x35);
- { uint64_t x38; uint8_t _ = _addcarryx_u64(0x0, x36, x27, &x38);
- { uint64_t _; uint64_t x41 = _mulx_u64(x17, 0xaa54ffaa54ffaa55L, &_);
- { uint64_t x45; uint64_t x44 = _mulx_u64(x41, 0xfffffffffffffd03L, &x45);
- { uint64_t x48; uint64_t x47 = _mulx_u64(x41, 0xffffffffffffffffL, &x48);
- { uint64_t x51; uint64_t x50 = _mulx_u64(x41, 0xffffffffffffffffL, &x51);
- { uint64_t x54; uint64_t x53 = _mulx_u64(x41, 0x7fffffffffffffffL, &x54);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(0x0, x45, x47, &x56);
- { uint64_t x59; uint8_t x60 = _addcarryx_u64(x57, x48, x50, &x59);
- { uint64_t x62; uint8_t x63 = _addcarryx_u64(x60, x51, x53, &x62);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(0x0, x63, x54, &x65);
- { uint64_t _; uint8_t x69 = _addcarryx_u64(0x0, x17, x44, &_);
- { uint64_t x71; uint8_t x72 = _addcarryx_u64(x69, x29, x56, &x71);
- { uint64_t x74; uint8_t x75 = _addcarryx_u64(x72, x32, x59, &x74);
- { uint64_t x77; uint8_t x78 = _addcarryx_u64(x75, x35, x62, &x77);
- { uint64_t x80; uint8_t x81 = _addcarryx_u64(x78, x38, x65, &x80);
- { uint64_t x84; uint64_t x83 = _mulx_u64(x7, x11, &x84);
- { uint64_t x87; uint64_t x86 = _mulx_u64(x7, x13, &x87);
- { uint64_t x90; uint64_t x89 = _mulx_u64(x7, x15, &x90);
- { uint64_t x93; uint64_t x92 = _mulx_u64(x7, x14, &x93);
- { uint64_t x95; uint8_t x96 = _addcarryx_u64(0x0, x84, x86, &x95);
- { uint64_t x98; uint8_t x99 = _addcarryx_u64(x96, x87, x89, &x98);
- { uint64_t x101; uint8_t x102 = _addcarryx_u64(x99, x90, x92, &x101);
- { uint64_t x104; uint8_t _ = _addcarryx_u64(0x0, x102, x93, &x104);
- { uint64_t x107; uint8_t x108 = _addcarryx_u64(0x0, x71, x83, &x107);
- { uint64_t x110; uint8_t x111 = _addcarryx_u64(x108, x74, x95, &x110);
- { uint64_t x113; uint8_t x114 = _addcarryx_u64(x111, x77, x98, &x113);
- { uint64_t x116; uint8_t x117 = _addcarryx_u64(x114, x80, x101, &x116);
- { uint64_t x119; uint8_t x120 = _addcarryx_u64(x117, x81, x104, &x119);
- { uint64_t _; uint64_t x122 = _mulx_u64(x107, 0xaa54ffaa54ffaa55L, &_);
- { uint64_t x126; uint64_t x125 = _mulx_u64(x122, 0xfffffffffffffd03L, &x126);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x122, 0xffffffffffffffffL, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x122, 0xffffffffffffffffL, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x122, 0x7fffffffffffffffL, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x126, x128, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x129, x131, &x140);
- { uint64_t x143; uint8_t x144 = _addcarryx_u64(x141, x132, x134, &x143);
- { uint64_t x146; uint8_t _ = _addcarryx_u64(0x0, x144, x135, &x146);
- { uint64_t _; uint8_t x150 = _addcarryx_u64(0x0, x107, x125, &_);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x110, x137, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x113, x140, &x155);
- { uint64_t x158; uint8_t x159 = _addcarryx_u64(x156, x116, x143, &x158);
- { uint64_t x161; uint8_t x162 = _addcarryx_u64(x159, x119, x146, &x161);
- { uint8_t x163 = (x162 + x120);
- { uint64_t x166; uint64_t x165 = _mulx_u64(x9, x11, &x166);
- { uint64_t x169; uint64_t x168 = _mulx_u64(x9, x13, &x169);
- { uint64_t x172; uint64_t x171 = _mulx_u64(x9, x15, &x172);
- { uint64_t x175; uint64_t x174 = _mulx_u64(x9, x14, &x175);
- { uint64_t x177; uint8_t x178 = _addcarryx_u64(0x0, x166, x168, &x177);
- { uint64_t x180; uint8_t x181 = _addcarryx_u64(x178, x169, x171, &x180);
- { uint64_t x183; uint8_t x184 = _addcarryx_u64(x181, x172, x174, &x183);
- { uint64_t x186; uint8_t _ = _addcarryx_u64(0x0, x184, x175, &x186);
- { uint64_t x189; uint8_t x190 = _addcarryx_u64(0x0, x152, x165, &x189);
- { uint64_t x192; uint8_t x193 = _addcarryx_u64(x190, x155, x177, &x192);
- { uint64_t x195; uint8_t x196 = _addcarryx_u64(x193, x158, x180, &x195);
- { uint64_t x198; uint8_t x199 = _addcarryx_u64(x196, x161, x183, &x198);
- { uint64_t x201; uint8_t x202 = _addcarryx_u64(x199, x163, x186, &x201);
- { uint64_t _; uint64_t x204 = _mulx_u64(x189, 0xaa54ffaa54ffaa55L, &_);
- { uint64_t x208; uint64_t x207 = _mulx_u64(x204, 0xfffffffffffffd03L, &x208);
- { uint64_t x211; uint64_t x210 = _mulx_u64(x204, 0xffffffffffffffffL, &x211);
- { uint64_t x214; uint64_t x213 = _mulx_u64(x204, 0xffffffffffffffffL, &x214);
- { uint64_t x217; uint64_t x216 = _mulx_u64(x204, 0x7fffffffffffffffL, &x217);
- { uint64_t x219; uint8_t x220 = _addcarryx_u64(0x0, x208, x210, &x219);
- { uint64_t x222; uint8_t x223 = _addcarryx_u64(x220, x211, x213, &x222);
- { uint64_t x225; uint8_t x226 = _addcarryx_u64(x223, x214, x216, &x225);
- { uint64_t x228; uint8_t _ = _addcarryx_u64(0x0, x226, x217, &x228);
- { uint64_t _; uint8_t x232 = _addcarryx_u64(0x0, x189, x207, &_);
- { uint64_t x234; uint8_t x235 = _addcarryx_u64(x232, x192, x219, &x234);
- { uint64_t x237; uint8_t x238 = _addcarryx_u64(x235, x195, x222, &x237);
- { uint64_t x240; uint8_t x241 = _addcarryx_u64(x238, x198, x225, &x240);
- { uint64_t x243; uint8_t x244 = _addcarryx_u64(x241, x201, x228, &x243);
- { uint8_t x245 = (x244 + x202);
- { uint64_t x248; uint64_t x247 = _mulx_u64(x8, x11, &x248);
- { uint64_t x251; uint64_t x250 = _mulx_u64(x8, x13, &x251);
- { uint64_t x254; uint64_t x253 = _mulx_u64(x8, x15, &x254);
- { uint64_t x257; uint64_t x256 = _mulx_u64(x8, x14, &x257);
- { uint64_t x259; uint8_t x260 = _addcarryx_u64(0x0, x248, x250, &x259);
- { uint64_t x262; uint8_t x263 = _addcarryx_u64(x260, x251, x253, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(x263, x254, x256, &x265);
- { uint64_t x268; uint8_t _ = _addcarryx_u64(0x0, x266, x257, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(0x0, x234, x247, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x237, x259, &x274);
- { uint64_t x277; uint8_t x278 = _addcarryx_u64(x275, x240, x262, &x277);
- { uint64_t x280; uint8_t x281 = _addcarryx_u64(x278, x243, x265, &x280);
- { uint64_t x283; uint8_t x284 = _addcarryx_u64(x281, x245, x268, &x283);
- { uint64_t _; uint64_t x286 = _mulx_u64(x271, 0xaa54ffaa54ffaa55L, &_);
- { uint64_t x290; uint64_t x289 = _mulx_u64(x286, 0xfffffffffffffd03L, &x290);
- { uint64_t x293; uint64_t x292 = _mulx_u64(x286, 0xffffffffffffffffL, &x293);
- { uint64_t x296; uint64_t x295 = _mulx_u64(x286, 0xffffffffffffffffL, &x296);
- { uint64_t x299; uint64_t x298 = _mulx_u64(x286, 0x7fffffffffffffffL, &x299);
- { uint64_t x301; uint8_t x302 = _addcarryx_u64(0x0, x290, x292, &x301);
- { uint64_t x304; uint8_t x305 = _addcarryx_u64(x302, x293, x295, &x304);
- { uint64_t x307; uint8_t x308 = _addcarryx_u64(x305, x296, x298, &x307);
- { uint64_t x310; uint8_t _ = _addcarryx_u64(0x0, x308, x299, &x310);
- { uint64_t _; uint8_t x314 = _addcarryx_u64(0x0, x271, x289, &_);
- { uint64_t x316; uint8_t x317 = _addcarryx_u64(x314, x274, x301, &x316);
- { uint64_t x319; uint8_t x320 = _addcarryx_u64(x317, x277, x304, &x319);
- { uint64_t x322; uint8_t x323 = _addcarryx_u64(x320, x280, x307, &x322);
- { uint64_t x325; uint8_t x326 = _addcarryx_u64(x323, x283, x310, &x325);
- { uint8_t x327 = (x326 + x284);
- { uint64_t x329; uint8_t x330 = _subborrow_u64(0x0, x316, 0xfffffffffffffd03L, &x329);
- { uint64_t x332; uint8_t x333 = _subborrow_u64(x330, x319, 0xffffffffffffffffL, &x332);
- { uint64_t x335; uint8_t x336 = _subborrow_u64(x333, x322, 0xffffffffffffffffL, &x335);
- { uint64_t x338; uint8_t x339 = _subborrow_u64(x336, x325, 0x7fffffffffffffffL, &x338);
- { uint64_t _; uint8_t x342 = _subborrow_u64(x339, x327, 0x0, &_);
- { uint64_t x343 = cmovznz64(x342, x338, x325);
- { uint64_t x344 = cmovznz64(x342, x335, x322);
- { uint64_t x345 = cmovznz64(x342, x332, x319);
- { uint64_t x346 = cmovznz64(x342, x329, x316);
- out[0] = x346;
- out[1] = x345;
- out[2] = x344;
- out[3] = x343;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e255m765_4limbs/femul.v b/src/Specific/montgomery64_2e255m765_4limbs/femul.v
deleted file mode 100644
index 1f615977e..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e255m765_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e255m765_4limbs/femulDisplay.log b/src/Specific/montgomery64_2e255m765_4limbs/femulDisplay.log
deleted file mode 100644
index 88a22cde6..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,122 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t _ = mulx_u64(x17, 0xaa54ffaa54ffaa55L);
- uint64_t x44, uint64_t x45 = mulx_u64(x41, 0xfffffffffffffd03L);
- uint64_t x47, uint64_t x48 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x50, uint64_t x51 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x53, uint64_t x54 = mulx_u64(x41, 0x7fffffffffffffffL);
- uint64_t x56, uint8_t x57 = addcarryx_u64(0x0, x45, x47);
- uint64_t x59, uint8_t x60 = addcarryx_u64(x57, x48, x50);
- uint64_t x62, uint8_t x63 = addcarryx_u64(x60, x51, x53);
- uint64_t x65, uint8_t _ = addcarryx_u64(0x0, x63, x54);
- uint64_t _, uint8_t x69 = addcarryx_u64(0x0, x17, x44);
- uint64_t x71, uint8_t x72 = addcarryx_u64(x69, x29, x56);
- uint64_t x74, uint8_t x75 = addcarryx_u64(x72, x32, x59);
- uint64_t x77, uint8_t x78 = addcarryx_u64(x75, x35, x62);
- uint64_t x80, uint8_t x81 = addcarryx_u64(x78, x38, x65);
- uint64_t x83, uint64_t x84 = mulx_u64(x7, x11);
- uint64_t x86, uint64_t x87 = mulx_u64(x7, x13);
- uint64_t x89, uint64_t x90 = mulx_u64(x7, x15);
- uint64_t x92, uint64_t x93 = mulx_u64(x7, x14);
- uint64_t x95, uint8_t x96 = addcarryx_u64(0x0, x84, x86);
- uint64_t x98, uint8_t x99 = addcarryx_u64(x96, x87, x89);
- uint64_t x101, uint8_t x102 = addcarryx_u64(x99, x90, x92);
- uint64_t x104, uint8_t _ = addcarryx_u64(0x0, x102, x93);
- uint64_t x107, uint8_t x108 = addcarryx_u64(0x0, x71, x83);
- uint64_t x110, uint8_t x111 = addcarryx_u64(x108, x74, x95);
- uint64_t x113, uint8_t x114 = addcarryx_u64(x111, x77, x98);
- uint64_t x116, uint8_t x117 = addcarryx_u64(x114, x80, x101);
- uint64_t x119, uint8_t x120 = addcarryx_u64(x117, x81, x104);
- uint64_t x122, uint64_t _ = mulx_u64(x107, 0xaa54ffaa54ffaa55L);
- uint64_t x125, uint64_t x126 = mulx_u64(x122, 0xfffffffffffffd03L);
- uint64_t x128, uint64_t x129 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x131, uint64_t x132 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x134, uint64_t x135 = mulx_u64(x122, 0x7fffffffffffffffL);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x126, x128);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x129, x131);
- uint64_t x143, uint8_t x144 = addcarryx_u64(x141, x132, x134);
- uint64_t x146, uint8_t _ = addcarryx_u64(0x0, x144, x135);
- uint64_t _, uint8_t x150 = addcarryx_u64(0x0, x107, x125);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x110, x137);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x113, x140);
- uint64_t x158, uint8_t x159 = addcarryx_u64(x156, x116, x143);
- uint64_t x161, uint8_t x162 = addcarryx_u64(x159, x119, x146);
- uint8_t x163 = (x162 + x120);
- uint64_t x165, uint64_t x166 = mulx_u64(x9, x11);
- uint64_t x168, uint64_t x169 = mulx_u64(x9, x13);
- uint64_t x171, uint64_t x172 = mulx_u64(x9, x15);
- uint64_t x174, uint64_t x175 = mulx_u64(x9, x14);
- uint64_t x177, uint8_t x178 = addcarryx_u64(0x0, x166, x168);
- uint64_t x180, uint8_t x181 = addcarryx_u64(x178, x169, x171);
- uint64_t x183, uint8_t x184 = addcarryx_u64(x181, x172, x174);
- uint64_t x186, uint8_t _ = addcarryx_u64(0x0, x184, x175);
- uint64_t x189, uint8_t x190 = addcarryx_u64(0x0, x152, x165);
- uint64_t x192, uint8_t x193 = addcarryx_u64(x190, x155, x177);
- uint64_t x195, uint8_t x196 = addcarryx_u64(x193, x158, x180);
- uint64_t x198, uint8_t x199 = addcarryx_u64(x196, x161, x183);
- uint64_t x201, uint8_t x202 = addcarryx_u64(x199, x163, x186);
- uint64_t x204, uint64_t _ = mulx_u64(x189, 0xaa54ffaa54ffaa55L);
- uint64_t x207, uint64_t x208 = mulx_u64(x204, 0xfffffffffffffd03L);
- uint64_t x210, uint64_t x211 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x213, uint64_t x214 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x216, uint64_t x217 = mulx_u64(x204, 0x7fffffffffffffffL);
- uint64_t x219, uint8_t x220 = addcarryx_u64(0x0, x208, x210);
- uint64_t x222, uint8_t x223 = addcarryx_u64(x220, x211, x213);
- uint64_t x225, uint8_t x226 = addcarryx_u64(x223, x214, x216);
- uint64_t x228, uint8_t _ = addcarryx_u64(0x0, x226, x217);
- uint64_t _, uint8_t x232 = addcarryx_u64(0x0, x189, x207);
- uint64_t x234, uint8_t x235 = addcarryx_u64(x232, x192, x219);
- uint64_t x237, uint8_t x238 = addcarryx_u64(x235, x195, x222);
- uint64_t x240, uint8_t x241 = addcarryx_u64(x238, x198, x225);
- uint64_t x243, uint8_t x244 = addcarryx_u64(x241, x201, x228);
- uint8_t x245 = (x244 + x202);
- uint64_t x247, uint64_t x248 = mulx_u64(x8, x11);
- uint64_t x250, uint64_t x251 = mulx_u64(x8, x13);
- uint64_t x253, uint64_t x254 = mulx_u64(x8, x15);
- uint64_t x256, uint64_t x257 = mulx_u64(x8, x14);
- uint64_t x259, uint8_t x260 = addcarryx_u64(0x0, x248, x250);
- uint64_t x262, uint8_t x263 = addcarryx_u64(x260, x251, x253);
- uint64_t x265, uint8_t x266 = addcarryx_u64(x263, x254, x256);
- uint64_t x268, uint8_t _ = addcarryx_u64(0x0, x266, x257);
- uint64_t x271, uint8_t x272 = addcarryx_u64(0x0, x234, x247);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x237, x259);
- uint64_t x277, uint8_t x278 = addcarryx_u64(x275, x240, x262);
- uint64_t x280, uint8_t x281 = addcarryx_u64(x278, x243, x265);
- uint64_t x283, uint8_t x284 = addcarryx_u64(x281, x245, x268);
- uint64_t x286, uint64_t _ = mulx_u64(x271, 0xaa54ffaa54ffaa55L);
- uint64_t x289, uint64_t x290 = mulx_u64(x286, 0xfffffffffffffd03L);
- uint64_t x292, uint64_t x293 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x295, uint64_t x296 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x298, uint64_t x299 = mulx_u64(x286, 0x7fffffffffffffffL);
- uint64_t x301, uint8_t x302 = addcarryx_u64(0x0, x290, x292);
- uint64_t x304, uint8_t x305 = addcarryx_u64(x302, x293, x295);
- uint64_t x307, uint8_t x308 = addcarryx_u64(x305, x296, x298);
- uint64_t x310, uint8_t _ = addcarryx_u64(0x0, x308, x299);
- uint64_t _, uint8_t x314 = addcarryx_u64(0x0, x271, x289);
- uint64_t x316, uint8_t x317 = addcarryx_u64(x314, x274, x301);
- uint64_t x319, uint8_t x320 = addcarryx_u64(x317, x277, x304);
- uint64_t x322, uint8_t x323 = addcarryx_u64(x320, x280, x307);
- uint64_t x325, uint8_t x326 = addcarryx_u64(x323, x283, x310);
- uint8_t x327 = (x326 + x284);
- uint64_t x329, uint8_t x330 = subborrow_u64(0x0, x316, 0xfffffffffffffd03L);
- uint64_t x332, uint8_t x333 = subborrow_u64(x330, x319, 0xffffffffffffffffL);
- uint64_t x335, uint8_t x336 = subborrow_u64(x333, x322, 0xffffffffffffffffL);
- uint64_t x338, uint8_t x339 = subborrow_u64(x336, x325, 0x7fffffffffffffffL);
- uint64_t _, uint8_t x342 = subborrow_u64(x339, x327, 0x0);
- uint64_t x343 = cmovznz64(x342, x338, x325);
- uint64_t x344 = cmovznz64(x342, x335, x322);
- uint64_t x345 = cmovznz64(x342, x332, x319);
- uint64_t x346 = cmovznz64(x342, x329, x316);
- return (x343, x344, x345, x346))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e255m765_4limbs/femulDisplay.v b/src/Specific/montgomery64_2e255m765_4limbs/femulDisplay.v
deleted file mode 100644
index dde0a7c9f..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e255m765_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e255m765_4limbs/fenz.c b/src/Specific/montgomery64_2e255m765_4limbs/fenz.c
deleted file mode 100644
index 7541094ff..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x7 = (x6 | x5);
- { uint64_t x8 = (x4 | x7);
- { uint64_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e255m765_4limbs/fenz.v b/src/Specific/montgomery64_2e255m765_4limbs/fenz.v
deleted file mode 100644
index 00f4de132..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e255m765_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e255m765_4limbs/fenzDisplay.log b/src/Specific/montgomery64_2e255m765_4limbs/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e255m765_4limbs/fenzDisplay.v b/src/Specific/montgomery64_2e255m765_4limbs/fenzDisplay.v
deleted file mode 100644
index a4922ce86..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e255m765_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e255m765_4limbs/feopp.c b/src/Specific/montgomery64_2e255m765_4limbs/feopp.c
deleted file mode 100644
index 3842bfcc0..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/feopp.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feopp(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8; uint8_t x9 = _subborrow_u64(0x0, 0x0, x2, &x8);
- { uint64_t x11; uint8_t x12 = _subborrow_u64(x9, 0x0, x4, &x11);
- { uint64_t x14; uint8_t x15 = _subborrow_u64(x12, 0x0, x6, &x14);
- { uint64_t x17; uint8_t x18 = _subborrow_u64(x15, 0x0, x5, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xfffffffffffffd03L);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x8, x20, &x22);
- { uint64_t x24 = (x19 & 0xffffffffffffffffL);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x23, x11, x24, &x26);
- { uint64_t x28 = (x19 & 0xffffffffffffffffL);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x27, x14, x28, &x30);
- { uint64_t x32 = (x19 & 0x7fffffffffffffffL);
- { uint64_t x34; uint8_t _ = _addcarryx_u64(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e255m765_4limbs/feopp.v b/src/Specific/montgomery64_2e255m765_4limbs/feopp.v
deleted file mode 100644
index 88c79387d..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e255m765_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e255m765_4limbs/feoppDisplay.log b/src/Specific/montgomery64_2e255m765_4limbs/feoppDisplay.log
deleted file mode 100644
index bc3a61489..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xfffffffffffffd03L);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffffffffffffffL);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x28 = (x19 & 0xffffffffffffffffL);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x27, x14, x28);
- uint64_t x32 = (x19 & 0x7fffffffffffffffL);
- uint64_t x34, uint8_t _ = addcarryx_u64(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e255m765_4limbs/feoppDisplay.v b/src/Specific/montgomery64_2e255m765_4limbs/feoppDisplay.v
deleted file mode 100644
index 5d6635c3d..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e255m765_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e255m765_4limbs/fesquare.c b/src/Specific/montgomery64_2e255m765_4limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e255m765_4limbs/fesub.c b/src/Specific/montgomery64_2e255m765_4limbs/fesub.c
deleted file mode 100644
index 61706f866..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/fesub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _subborrow_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _subborrow_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _subborrow_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u64(x24, x8, x14, &x26);
- { uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- { uint64_t x29 = (x28 & 0xfffffffffffffd03L);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(0x0, x17, x29, &x31);
- { uint64_t x33 = (x28 & 0xffffffffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x20, x33, &x35);
- { uint64_t x37 = (x28 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x23, x37, &x39);
- { uint64_t x41 = (x28 & 0x7fffffffffffffffL);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x26, x41, &x43);
- out[0] = x31;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e255m765_4limbs/fesub.v b/src/Specific/montgomery64_2e255m765_4limbs/fesub.v
deleted file mode 100644
index 5a98a42f6..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e255m765_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e255m765_4limbs/fesubDisplay.log b/src/Specific/montgomery64_2e255m765_4limbs/fesubDisplay.log
deleted file mode 100644
index f31b891f6..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint64_t x29 = (x28 & 0xfffffffffffffd03L);
- uint64_t x31, uint8_t x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x37 = (x28 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x23, x37);
- uint64_t x41 = (x28 & 0x7fffffffffffffffL);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x26, x41);
- (Return x43, Return x39, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e255m765_4limbs/fesubDisplay.v b/src/Specific/montgomery64_2e255m765_4limbs/fesubDisplay.v
deleted file mode 100644
index 7cb3ba9df..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e255m765_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e255m765_4limbs/py_interpreter.sh b/src/Specific/montgomery64_2e255m765_4limbs/py_interpreter.sh
deleted file mode 100755
index 1dca40d71..000000000
--- a/src/Specific/montgomery64_2e255m765_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**255 - 765' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e256m189_4limbs/CurveParameters.v b/src/Specific/montgomery64_2e256m189_4limbs/CurveParameters.v
deleted file mode 100644
index c6844835e..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256 - 189
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 64;
- bitwidth := 64;
- s := 2^256;
- c := [(1, 189)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e256m189_4limbs/Synthesis.v b/src/Specific/montgomery64_2e256m189_4limbs/Synthesis.v
deleted file mode 100644
index c848649b6..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e256m189_4limbs.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/montgomery64_2e256m189_4limbs/compiler.sh b/src/Specific/montgomery64_2e256m189_4limbs/compiler.sh
deleted file mode 100755
index 28dd82c5c..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<256) - 189' "$@"
diff --git a/src/Specific/montgomery64_2e256m189_4limbs/compilerxx.sh b/src/Specific/montgomery64_2e256m189_4limbs/compilerxx.sh
deleted file mode 100755
index c04a39e78..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<256) - 189' "$@"
diff --git a/src/Specific/montgomery64_2e256m189_4limbs/feadd.c b/src/Specific/montgomery64_2e256m189_4limbs/feadd.c
deleted file mode 100644
index 1f8f68ebe..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _addcarryx_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _addcarryx_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x24, x8, x14, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u64(0x0, x17, 0xffffffffffffff43L, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u64(x30, x20, 0xffffffffffffffffL, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u64(x33, x23, 0xffffffffffffffffL, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u64(x36, x26, 0xffffffffffffffffL, &x38);
- { uint64_t _; uint8_t x42 = _subborrow_u64(x39, x27, 0x0, &_);
- { uint64_t x43 = cmovznz64(x42, x38, x26);
- { uint64_t x44 = cmovznz64(x42, x35, x23);
- { uint64_t x45 = cmovznz64(x42, x32, x20);
- { uint64_t x46 = cmovznz64(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m189_4limbs/feadd.v b/src/Specific/montgomery64_2e256m189_4limbs/feadd.v
deleted file mode 100644
index 82683d6a9..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m189_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e256m189_4limbs/feaddDisplay.log b/src/Specific/montgomery64_2e256m189_4limbs/feaddDisplay.log
deleted file mode 100644
index 5b28c3467..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t x30 = subborrow_u64(0x0, x17, 0xffffffffffffff43L);
- uint64_t x32, uint8_t x33 = subborrow_u64(x30, x20, 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = subborrow_u64(x33, x23, 0xffffffffffffffffL);
- uint64_t x38, uint8_t x39 = subborrow_u64(x36, x26, 0xffffffffffffffffL);
- uint64_t _, uint8_t x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e256m189_4limbs/feaddDisplay.v b/src/Specific/montgomery64_2e256m189_4limbs/feaddDisplay.v
deleted file mode 100644
index 92c1c0c1e..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m189_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e256m189_4limbs/femul.c b/src/Specific/montgomery64_2e256m189_4limbs/femul.c
deleted file mode 100644
index 7acb54447..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/femul.c
+++ /dev/null
@@ -1,130 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x18; uint64_t x17 = _mulx_u64(x5, x11, &x18);
- { uint64_t x21; uint64_t x20 = _mulx_u64(x5, x13, &x21);
- { uint64_t x24; uint64_t x23 = _mulx_u64(x5, x15, &x24);
- { uint64_t x27; uint64_t x26 = _mulx_u64(x5, x14, &x27);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x18, x20, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x21, x23, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x24, x26, &x35);
- { uint64_t x38; uint8_t _ = _addcarryx_u64(0x0, x36, x27, &x38);
- { uint64_t _; uint64_t x41 = _mulx_u64(x17, 0xa53fa94fea53fa95L, &_);
- { uint64_t x45; uint64_t x44 = _mulx_u64(x41, 0xffffffffffffff43L, &x45);
- { uint64_t x48; uint64_t x47 = _mulx_u64(x41, 0xffffffffffffffffL, &x48);
- { uint64_t x51; uint64_t x50 = _mulx_u64(x41, 0xffffffffffffffffL, &x51);
- { uint64_t x54; uint64_t x53 = _mulx_u64(x41, 0xffffffffffffffffL, &x54);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(0x0, x45, x47, &x56);
- { uint64_t x59; uint8_t x60 = _addcarryx_u64(x57, x48, x50, &x59);
- { uint64_t x62; uint8_t x63 = _addcarryx_u64(x60, x51, x53, &x62);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(0x0, x63, x54, &x65);
- { uint64_t _; uint8_t x69 = _addcarryx_u64(0x0, x17, x44, &_);
- { uint64_t x71; uint8_t x72 = _addcarryx_u64(x69, x29, x56, &x71);
- { uint64_t x74; uint8_t x75 = _addcarryx_u64(x72, x32, x59, &x74);
- { uint64_t x77; uint8_t x78 = _addcarryx_u64(x75, x35, x62, &x77);
- { uint64_t x80; uint8_t x81 = _addcarryx_u64(x78, x38, x65, &x80);
- { uint64_t x84; uint64_t x83 = _mulx_u64(x7, x11, &x84);
- { uint64_t x87; uint64_t x86 = _mulx_u64(x7, x13, &x87);
- { uint64_t x90; uint64_t x89 = _mulx_u64(x7, x15, &x90);
- { uint64_t x93; uint64_t x92 = _mulx_u64(x7, x14, &x93);
- { uint64_t x95; uint8_t x96 = _addcarryx_u64(0x0, x84, x86, &x95);
- { uint64_t x98; uint8_t x99 = _addcarryx_u64(x96, x87, x89, &x98);
- { uint64_t x101; uint8_t x102 = _addcarryx_u64(x99, x90, x92, &x101);
- { uint64_t x104; uint8_t _ = _addcarryx_u64(0x0, x102, x93, &x104);
- { uint64_t x107; uint8_t x108 = _addcarryx_u64(0x0, x71, x83, &x107);
- { uint64_t x110; uint8_t x111 = _addcarryx_u64(x108, x74, x95, &x110);
- { uint64_t x113; uint8_t x114 = _addcarryx_u64(x111, x77, x98, &x113);
- { uint64_t x116; uint8_t x117 = _addcarryx_u64(x114, x80, x101, &x116);
- { uint64_t x119; uint8_t x120 = _addcarryx_u64(x117, x81, x104, &x119);
- { uint64_t _; uint64_t x122 = _mulx_u64(x107, 0xa53fa94fea53fa95L, &_);
- { uint64_t x126; uint64_t x125 = _mulx_u64(x122, 0xffffffffffffff43L, &x126);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x122, 0xffffffffffffffffL, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x122, 0xffffffffffffffffL, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x122, 0xffffffffffffffffL, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x126, x128, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x129, x131, &x140);
- { uint64_t x143; uint8_t x144 = _addcarryx_u64(x141, x132, x134, &x143);
- { uint64_t x146; uint8_t _ = _addcarryx_u64(0x0, x144, x135, &x146);
- { uint64_t _; uint8_t x150 = _addcarryx_u64(0x0, x107, x125, &_);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x110, x137, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x113, x140, &x155);
- { uint64_t x158; uint8_t x159 = _addcarryx_u64(x156, x116, x143, &x158);
- { uint64_t x161; uint8_t x162 = _addcarryx_u64(x159, x119, x146, &x161);
- { uint8_t x163 = (x162 + x120);
- { uint64_t x166; uint64_t x165 = _mulx_u64(x9, x11, &x166);
- { uint64_t x169; uint64_t x168 = _mulx_u64(x9, x13, &x169);
- { uint64_t x172; uint64_t x171 = _mulx_u64(x9, x15, &x172);
- { uint64_t x175; uint64_t x174 = _mulx_u64(x9, x14, &x175);
- { uint64_t x177; uint8_t x178 = _addcarryx_u64(0x0, x166, x168, &x177);
- { uint64_t x180; uint8_t x181 = _addcarryx_u64(x178, x169, x171, &x180);
- { uint64_t x183; uint8_t x184 = _addcarryx_u64(x181, x172, x174, &x183);
- { uint64_t x186; uint8_t _ = _addcarryx_u64(0x0, x184, x175, &x186);
- { uint64_t x189; uint8_t x190 = _addcarryx_u64(0x0, x152, x165, &x189);
- { uint64_t x192; uint8_t x193 = _addcarryx_u64(x190, x155, x177, &x192);
- { uint64_t x195; uint8_t x196 = _addcarryx_u64(x193, x158, x180, &x195);
- { uint64_t x198; uint8_t x199 = _addcarryx_u64(x196, x161, x183, &x198);
- { uint64_t x201; uint8_t x202 = _addcarryx_u64(x199, x163, x186, &x201);
- { uint64_t _; uint64_t x204 = _mulx_u64(x189, 0xa53fa94fea53fa95L, &_);
- { uint64_t x208; uint64_t x207 = _mulx_u64(x204, 0xffffffffffffff43L, &x208);
- { uint64_t x211; uint64_t x210 = _mulx_u64(x204, 0xffffffffffffffffL, &x211);
- { uint64_t x214; uint64_t x213 = _mulx_u64(x204, 0xffffffffffffffffL, &x214);
- { uint64_t x217; uint64_t x216 = _mulx_u64(x204, 0xffffffffffffffffL, &x217);
- { uint64_t x219; uint8_t x220 = _addcarryx_u64(0x0, x208, x210, &x219);
- { uint64_t x222; uint8_t x223 = _addcarryx_u64(x220, x211, x213, &x222);
- { uint64_t x225; uint8_t x226 = _addcarryx_u64(x223, x214, x216, &x225);
- { uint64_t x228; uint8_t _ = _addcarryx_u64(0x0, x226, x217, &x228);
- { uint64_t _; uint8_t x232 = _addcarryx_u64(0x0, x189, x207, &_);
- { uint64_t x234; uint8_t x235 = _addcarryx_u64(x232, x192, x219, &x234);
- { uint64_t x237; uint8_t x238 = _addcarryx_u64(x235, x195, x222, &x237);
- { uint64_t x240; uint8_t x241 = _addcarryx_u64(x238, x198, x225, &x240);
- { uint64_t x243; uint8_t x244 = _addcarryx_u64(x241, x201, x228, &x243);
- { uint8_t x245 = (x244 + x202);
- { uint64_t x248; uint64_t x247 = _mulx_u64(x8, x11, &x248);
- { uint64_t x251; uint64_t x250 = _mulx_u64(x8, x13, &x251);
- { uint64_t x254; uint64_t x253 = _mulx_u64(x8, x15, &x254);
- { uint64_t x257; uint64_t x256 = _mulx_u64(x8, x14, &x257);
- { uint64_t x259; uint8_t x260 = _addcarryx_u64(0x0, x248, x250, &x259);
- { uint64_t x262; uint8_t x263 = _addcarryx_u64(x260, x251, x253, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(x263, x254, x256, &x265);
- { uint64_t x268; uint8_t _ = _addcarryx_u64(0x0, x266, x257, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(0x0, x234, x247, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x237, x259, &x274);
- { uint64_t x277; uint8_t x278 = _addcarryx_u64(x275, x240, x262, &x277);
- { uint64_t x280; uint8_t x281 = _addcarryx_u64(x278, x243, x265, &x280);
- { uint64_t x283; uint8_t x284 = _addcarryx_u64(x281, x245, x268, &x283);
- { uint64_t _; uint64_t x286 = _mulx_u64(x271, 0xa53fa94fea53fa95L, &_);
- { uint64_t x290; uint64_t x289 = _mulx_u64(x286, 0xffffffffffffff43L, &x290);
- { uint64_t x293; uint64_t x292 = _mulx_u64(x286, 0xffffffffffffffffL, &x293);
- { uint64_t x296; uint64_t x295 = _mulx_u64(x286, 0xffffffffffffffffL, &x296);
- { uint64_t x299; uint64_t x298 = _mulx_u64(x286, 0xffffffffffffffffL, &x299);
- { uint64_t x301; uint8_t x302 = _addcarryx_u64(0x0, x290, x292, &x301);
- { uint64_t x304; uint8_t x305 = _addcarryx_u64(x302, x293, x295, &x304);
- { uint64_t x307; uint8_t x308 = _addcarryx_u64(x305, x296, x298, &x307);
- { uint64_t x310; uint8_t _ = _addcarryx_u64(0x0, x308, x299, &x310);
- { uint64_t _; uint8_t x314 = _addcarryx_u64(0x0, x271, x289, &_);
- { uint64_t x316; uint8_t x317 = _addcarryx_u64(x314, x274, x301, &x316);
- { uint64_t x319; uint8_t x320 = _addcarryx_u64(x317, x277, x304, &x319);
- { uint64_t x322; uint8_t x323 = _addcarryx_u64(x320, x280, x307, &x322);
- { uint64_t x325; uint8_t x326 = _addcarryx_u64(x323, x283, x310, &x325);
- { uint8_t x327 = (x326 + x284);
- { uint64_t x329; uint8_t x330 = _subborrow_u64(0x0, x316, 0xffffffffffffff43L, &x329);
- { uint64_t x332; uint8_t x333 = _subborrow_u64(x330, x319, 0xffffffffffffffffL, &x332);
- { uint64_t x335; uint8_t x336 = _subborrow_u64(x333, x322, 0xffffffffffffffffL, &x335);
- { uint64_t x338; uint8_t x339 = _subborrow_u64(x336, x325, 0xffffffffffffffffL, &x338);
- { uint64_t _; uint8_t x342 = _subborrow_u64(x339, x327, 0x0, &_);
- { uint64_t x343 = cmovznz64(x342, x338, x325);
- { uint64_t x344 = cmovznz64(x342, x335, x322);
- { uint64_t x345 = cmovznz64(x342, x332, x319);
- { uint64_t x346 = cmovznz64(x342, x329, x316);
- out[0] = x346;
- out[1] = x345;
- out[2] = x344;
- out[3] = x343;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m189_4limbs/femul.v b/src/Specific/montgomery64_2e256m189_4limbs/femul.v
deleted file mode 100644
index ce046d552..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m189_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e256m189_4limbs/femulDisplay.log b/src/Specific/montgomery64_2e256m189_4limbs/femulDisplay.log
deleted file mode 100644
index e9d9a9334..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,122 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t _ = mulx_u64(x17, 0xa53fa94fea53fa95L);
- uint64_t x44, uint64_t x45 = mulx_u64(x41, 0xffffffffffffff43L);
- uint64_t x47, uint64_t x48 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x50, uint64_t x51 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x53, uint64_t x54 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x56, uint8_t x57 = addcarryx_u64(0x0, x45, x47);
- uint64_t x59, uint8_t x60 = addcarryx_u64(x57, x48, x50);
- uint64_t x62, uint8_t x63 = addcarryx_u64(x60, x51, x53);
- uint64_t x65, uint8_t _ = addcarryx_u64(0x0, x63, x54);
- uint64_t _, uint8_t x69 = addcarryx_u64(0x0, x17, x44);
- uint64_t x71, uint8_t x72 = addcarryx_u64(x69, x29, x56);
- uint64_t x74, uint8_t x75 = addcarryx_u64(x72, x32, x59);
- uint64_t x77, uint8_t x78 = addcarryx_u64(x75, x35, x62);
- uint64_t x80, uint8_t x81 = addcarryx_u64(x78, x38, x65);
- uint64_t x83, uint64_t x84 = mulx_u64(x7, x11);
- uint64_t x86, uint64_t x87 = mulx_u64(x7, x13);
- uint64_t x89, uint64_t x90 = mulx_u64(x7, x15);
- uint64_t x92, uint64_t x93 = mulx_u64(x7, x14);
- uint64_t x95, uint8_t x96 = addcarryx_u64(0x0, x84, x86);
- uint64_t x98, uint8_t x99 = addcarryx_u64(x96, x87, x89);
- uint64_t x101, uint8_t x102 = addcarryx_u64(x99, x90, x92);
- uint64_t x104, uint8_t _ = addcarryx_u64(0x0, x102, x93);
- uint64_t x107, uint8_t x108 = addcarryx_u64(0x0, x71, x83);
- uint64_t x110, uint8_t x111 = addcarryx_u64(x108, x74, x95);
- uint64_t x113, uint8_t x114 = addcarryx_u64(x111, x77, x98);
- uint64_t x116, uint8_t x117 = addcarryx_u64(x114, x80, x101);
- uint64_t x119, uint8_t x120 = addcarryx_u64(x117, x81, x104);
- uint64_t x122, uint64_t _ = mulx_u64(x107, 0xa53fa94fea53fa95L);
- uint64_t x125, uint64_t x126 = mulx_u64(x122, 0xffffffffffffff43L);
- uint64_t x128, uint64_t x129 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x131, uint64_t x132 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x134, uint64_t x135 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x126, x128);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x129, x131);
- uint64_t x143, uint8_t x144 = addcarryx_u64(x141, x132, x134);
- uint64_t x146, uint8_t _ = addcarryx_u64(0x0, x144, x135);
- uint64_t _, uint8_t x150 = addcarryx_u64(0x0, x107, x125);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x110, x137);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x113, x140);
- uint64_t x158, uint8_t x159 = addcarryx_u64(x156, x116, x143);
- uint64_t x161, uint8_t x162 = addcarryx_u64(x159, x119, x146);
- uint8_t x163 = (x162 + x120);
- uint64_t x165, uint64_t x166 = mulx_u64(x9, x11);
- uint64_t x168, uint64_t x169 = mulx_u64(x9, x13);
- uint64_t x171, uint64_t x172 = mulx_u64(x9, x15);
- uint64_t x174, uint64_t x175 = mulx_u64(x9, x14);
- uint64_t x177, uint8_t x178 = addcarryx_u64(0x0, x166, x168);
- uint64_t x180, uint8_t x181 = addcarryx_u64(x178, x169, x171);
- uint64_t x183, uint8_t x184 = addcarryx_u64(x181, x172, x174);
- uint64_t x186, uint8_t _ = addcarryx_u64(0x0, x184, x175);
- uint64_t x189, uint8_t x190 = addcarryx_u64(0x0, x152, x165);
- uint64_t x192, uint8_t x193 = addcarryx_u64(x190, x155, x177);
- uint64_t x195, uint8_t x196 = addcarryx_u64(x193, x158, x180);
- uint64_t x198, uint8_t x199 = addcarryx_u64(x196, x161, x183);
- uint64_t x201, uint8_t x202 = addcarryx_u64(x199, x163, x186);
- uint64_t x204, uint64_t _ = mulx_u64(x189, 0xa53fa94fea53fa95L);
- uint64_t x207, uint64_t x208 = mulx_u64(x204, 0xffffffffffffff43L);
- uint64_t x210, uint64_t x211 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x213, uint64_t x214 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x216, uint64_t x217 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x219, uint8_t x220 = addcarryx_u64(0x0, x208, x210);
- uint64_t x222, uint8_t x223 = addcarryx_u64(x220, x211, x213);
- uint64_t x225, uint8_t x226 = addcarryx_u64(x223, x214, x216);
- uint64_t x228, uint8_t _ = addcarryx_u64(0x0, x226, x217);
- uint64_t _, uint8_t x232 = addcarryx_u64(0x0, x189, x207);
- uint64_t x234, uint8_t x235 = addcarryx_u64(x232, x192, x219);
- uint64_t x237, uint8_t x238 = addcarryx_u64(x235, x195, x222);
- uint64_t x240, uint8_t x241 = addcarryx_u64(x238, x198, x225);
- uint64_t x243, uint8_t x244 = addcarryx_u64(x241, x201, x228);
- uint8_t x245 = (x244 + x202);
- uint64_t x247, uint64_t x248 = mulx_u64(x8, x11);
- uint64_t x250, uint64_t x251 = mulx_u64(x8, x13);
- uint64_t x253, uint64_t x254 = mulx_u64(x8, x15);
- uint64_t x256, uint64_t x257 = mulx_u64(x8, x14);
- uint64_t x259, uint8_t x260 = addcarryx_u64(0x0, x248, x250);
- uint64_t x262, uint8_t x263 = addcarryx_u64(x260, x251, x253);
- uint64_t x265, uint8_t x266 = addcarryx_u64(x263, x254, x256);
- uint64_t x268, uint8_t _ = addcarryx_u64(0x0, x266, x257);
- uint64_t x271, uint8_t x272 = addcarryx_u64(0x0, x234, x247);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x237, x259);
- uint64_t x277, uint8_t x278 = addcarryx_u64(x275, x240, x262);
- uint64_t x280, uint8_t x281 = addcarryx_u64(x278, x243, x265);
- uint64_t x283, uint8_t x284 = addcarryx_u64(x281, x245, x268);
- uint64_t x286, uint64_t _ = mulx_u64(x271, 0xa53fa94fea53fa95L);
- uint64_t x289, uint64_t x290 = mulx_u64(x286, 0xffffffffffffff43L);
- uint64_t x292, uint64_t x293 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x295, uint64_t x296 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x298, uint64_t x299 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x301, uint8_t x302 = addcarryx_u64(0x0, x290, x292);
- uint64_t x304, uint8_t x305 = addcarryx_u64(x302, x293, x295);
- uint64_t x307, uint8_t x308 = addcarryx_u64(x305, x296, x298);
- uint64_t x310, uint8_t _ = addcarryx_u64(0x0, x308, x299);
- uint64_t _, uint8_t x314 = addcarryx_u64(0x0, x271, x289);
- uint64_t x316, uint8_t x317 = addcarryx_u64(x314, x274, x301);
- uint64_t x319, uint8_t x320 = addcarryx_u64(x317, x277, x304);
- uint64_t x322, uint8_t x323 = addcarryx_u64(x320, x280, x307);
- uint64_t x325, uint8_t x326 = addcarryx_u64(x323, x283, x310);
- uint8_t x327 = (x326 + x284);
- uint64_t x329, uint8_t x330 = subborrow_u64(0x0, x316, 0xffffffffffffff43L);
- uint64_t x332, uint8_t x333 = subborrow_u64(x330, x319, 0xffffffffffffffffL);
- uint64_t x335, uint8_t x336 = subborrow_u64(x333, x322, 0xffffffffffffffffL);
- uint64_t x338, uint8_t x339 = subborrow_u64(x336, x325, 0xffffffffffffffffL);
- uint64_t _, uint8_t x342 = subborrow_u64(x339, x327, 0x0);
- uint64_t x343 = cmovznz64(x342, x338, x325);
- uint64_t x344 = cmovznz64(x342, x335, x322);
- uint64_t x345 = cmovznz64(x342, x332, x319);
- uint64_t x346 = cmovznz64(x342, x329, x316);
- return (x343, x344, x345, x346))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e256m189_4limbs/femulDisplay.v b/src/Specific/montgomery64_2e256m189_4limbs/femulDisplay.v
deleted file mode 100644
index 247fc3ba8..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m189_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e256m189_4limbs/fenz.c b/src/Specific/montgomery64_2e256m189_4limbs/fenz.c
deleted file mode 100644
index 7541094ff..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x7 = (x6 | x5);
- { uint64_t x8 = (x4 | x7);
- { uint64_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m189_4limbs/fenz.v b/src/Specific/montgomery64_2e256m189_4limbs/fenz.v
deleted file mode 100644
index e6a62189a..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m189_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e256m189_4limbs/fenzDisplay.log b/src/Specific/montgomery64_2e256m189_4limbs/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e256m189_4limbs/fenzDisplay.v b/src/Specific/montgomery64_2e256m189_4limbs/fenzDisplay.v
deleted file mode 100644
index fc77eb948..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m189_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e256m189_4limbs/feopp.c b/src/Specific/montgomery64_2e256m189_4limbs/feopp.c
deleted file mode 100644
index e6fb61c33..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/feopp.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feopp(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8; uint8_t x9 = _subborrow_u64(0x0, 0x0, x2, &x8);
- { uint64_t x11; uint8_t x12 = _subborrow_u64(x9, 0x0, x4, &x11);
- { uint64_t x14; uint8_t x15 = _subborrow_u64(x12, 0x0, x6, &x14);
- { uint64_t x17; uint8_t x18 = _subborrow_u64(x15, 0x0, x5, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xffffffffffffff43L);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x8, x20, &x22);
- { uint64_t x24 = (x19 & 0xffffffffffffffffL);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x23, x11, x24, &x26);
- { uint64_t x28 = (x19 & 0xffffffffffffffffL);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x27, x14, x28, &x30);
- { uint64_t x32 = (x19 & 0xffffffffffffffffL);
- { uint64_t x34; uint8_t _ = _addcarryx_u64(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m189_4limbs/feopp.v b/src/Specific/montgomery64_2e256m189_4limbs/feopp.v
deleted file mode 100644
index 88e81e1bb..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m189_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e256m189_4limbs/feoppDisplay.log b/src/Specific/montgomery64_2e256m189_4limbs/feoppDisplay.log
deleted file mode 100644
index 9eabbbfcf..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xffffffffffffff43L);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffffffffffffffL);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x28 = (x19 & 0xffffffffffffffffL);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x27, x14, x28);
- uint64_t x32 = (x19 & 0xffffffffffffffffL);
- uint64_t x34, uint8_t _ = addcarryx_u64(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e256m189_4limbs/feoppDisplay.v b/src/Specific/montgomery64_2e256m189_4limbs/feoppDisplay.v
deleted file mode 100644
index 727d3a5e4..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m189_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e256m189_4limbs/fesquare.c b/src/Specific/montgomery64_2e256m189_4limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e256m189_4limbs/fesub.c b/src/Specific/montgomery64_2e256m189_4limbs/fesub.c
deleted file mode 100644
index 235e733b4..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/fesub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _subborrow_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _subborrow_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _subborrow_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u64(x24, x8, x14, &x26);
- { uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- { uint64_t x29 = (x28 & 0xffffffffffffff43L);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(0x0, x17, x29, &x31);
- { uint64_t x33 = (x28 & 0xffffffffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x20, x33, &x35);
- { uint64_t x37 = (x28 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x23, x37, &x39);
- { uint64_t x41 = (x28 & 0xffffffffffffffffL);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x26, x41, &x43);
- out[0] = x31;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m189_4limbs/fesub.v b/src/Specific/montgomery64_2e256m189_4limbs/fesub.v
deleted file mode 100644
index 818853ad0..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m189_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e256m189_4limbs/fesubDisplay.log b/src/Specific/montgomery64_2e256m189_4limbs/fesubDisplay.log
deleted file mode 100644
index a7aa158b4..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint64_t x29 = (x28 & 0xffffffffffffff43L);
- uint64_t x31, uint8_t x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x37 = (x28 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x23, x37);
- uint64_t x41 = (x28 & 0xffffffffffffffffL);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x26, x41);
- (Return x43, Return x39, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e256m189_4limbs/fesubDisplay.v b/src/Specific/montgomery64_2e256m189_4limbs/fesubDisplay.v
deleted file mode 100644
index 912959003..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m189_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e256m189_4limbs/py_interpreter.sh b/src/Specific/montgomery64_2e256m189_4limbs/py_interpreter.sh
deleted file mode 100755
index 457d92c81..000000000
--- a/src/Specific/montgomery64_2e256m189_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256 - 189' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/CurveParameters.v b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/CurveParameters.v
deleted file mode 100644
index 1d1a9e4a7..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256 - 2^224 + 2^192 + 2^96 - 1
-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)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/Synthesis.v b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/Synthesis.v
deleted file mode 100644
index bfe232445..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e256m2e224p2e192p2e96m1_4limbs.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/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/compiler.sh b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/compiler.sh
deleted file mode 100755
index edc6484fe..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/compilerxx.sh b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/compilerxx.sh
deleted file mode 100755
index dc5d0ca5f..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feadd.c b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feadd.c
deleted file mode 100644
index 9b4c39955..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _addcarryx_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _addcarryx_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x24, x8, x14, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u64(0x0, x17, 0xffffffffffffffffL, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u64(x30, x20, 0xffffffff, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u64(x33, x23, 0x0, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u64(x36, x26, 0xffffffff00000001L, &x38);
- { uint64_t _; uint8_t x42 = _subborrow_u64(x39, x27, 0x0, &_);
- { uint64_t x43 = cmovznz64(x42, x38, x26);
- { uint64_t x44 = cmovznz64(x42, x35, x23);
- { uint64_t x45 = cmovznz64(x42, x32, x20);
- { uint64_t x46 = cmovznz64(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feadd.v b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feadd.v
deleted file mode 100644
index 152486e84..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m2e224p2e192p2e96m1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feaddDisplay.log b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feaddDisplay.log
deleted file mode 100644
index 9849e94ae..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t x30 = subborrow_u64(0x0, x17, 0xffffffffffffffffL);
- uint64_t x32, uint8_t x33 = subborrow_u64(x30, x20, 0xffffffff);
- uint64_t x35, uint8_t x36 = subborrow_u64(x33, x23, 0x0);
- uint64_t x38, uint8_t x39 = subborrow_u64(x36, x26, 0xffffffff00000001L);
- uint64_t _, uint8_t x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feaddDisplay.v b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feaddDisplay.v
deleted file mode 100644
index 2a123f9d3..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m2e224p2e192p2e96m1_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/femul.c b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/femul.c
deleted file mode 100644
index 71c0a2e99..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/femul.c
+++ /dev/null
@@ -1,122 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x18; uint64_t x17 = _mulx_u64(x5, x11, &x18);
- { uint64_t x21; uint64_t x20 = _mulx_u64(x5, x13, &x21);
- { uint64_t x24; uint64_t x23 = _mulx_u64(x5, x15, &x24);
- { uint64_t x27; uint64_t x26 = _mulx_u64(x5, x14, &x27);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x18, x20, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x21, x23, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x24, x26, &x35);
- { uint64_t x38; uint8_t _ = _addcarryx_u64(0x0, x36, x27, &x38);
- { uint64_t x42; uint64_t x41 = _mulx_u64(x17, 0xffffffffffffffffL, &x42);
- { uint64_t x45; uint64_t x44 = _mulx_u64(x17, 0xffffffff, &x45);
- { uint64_t x48; uint64_t x47 = _mulx_u64(x17, 0xffffffff00000001L, &x48);
- { uint64_t x50; uint8_t x51 = _addcarryx_u64(0x0, x42, x44, &x50);
- { uint64_t x53; uint8_t x54 = _addcarryx_u64(x51, x45, 0x0, &x53);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(x54, 0x0, x47, &x56);
- { uint64_t x59; uint8_t _ = _addcarryx_u64(0x0, x57, x48, &x59);
- { uint64_t _; uint8_t x63 = _addcarryx_u64(0x0, x17, x41, &_);
- { uint64_t x65; uint8_t x66 = _addcarryx_u64(x63, x29, x50, &x65);
- { uint64_t x68; uint8_t x69 = _addcarryx_u64(x66, x32, x53, &x68);
- { uint64_t x71; uint8_t x72 = _addcarryx_u64(x69, x35, x56, &x71);
- { uint64_t x74; uint8_t x75 = _addcarryx_u64(x72, x38, x59, &x74);
- { uint64_t x78; uint64_t x77 = _mulx_u64(x7, x11, &x78);
- { uint64_t x81; uint64_t x80 = _mulx_u64(x7, x13, &x81);
- { uint64_t x84; uint64_t x83 = _mulx_u64(x7, x15, &x84);
- { uint64_t x87; uint64_t x86 = _mulx_u64(x7, x14, &x87);
- { uint64_t x89; uint8_t x90 = _addcarryx_u64(0x0, x78, x80, &x89);
- { uint64_t x92; uint8_t x93 = _addcarryx_u64(x90, x81, x83, &x92);
- { uint64_t x95; uint8_t x96 = _addcarryx_u64(x93, x84, x86, &x95);
- { uint64_t x98; uint8_t _ = _addcarryx_u64(0x0, x96, x87, &x98);
- { uint64_t x101; uint8_t x102 = _addcarryx_u64(0x0, x65, x77, &x101);
- { uint64_t x104; uint8_t x105 = _addcarryx_u64(x102, x68, x89, &x104);
- { uint64_t x107; uint8_t x108 = _addcarryx_u64(x105, x71, x92, &x107);
- { uint64_t x110; uint8_t x111 = _addcarryx_u64(x108, x74, x95, &x110);
- { uint64_t x113; uint8_t x114 = _addcarryx_u64(x111, x75, x98, &x113);
- { uint64_t x117; uint64_t x116 = _mulx_u64(x101, 0xffffffffffffffffL, &x117);
- { uint64_t x120; uint64_t x119 = _mulx_u64(x101, 0xffffffff, &x120);
- { uint64_t x123; uint64_t x122 = _mulx_u64(x101, 0xffffffff00000001L, &x123);
- { uint64_t x125; uint8_t x126 = _addcarryx_u64(0x0, x117, x119, &x125);
- { uint64_t x128; uint8_t x129 = _addcarryx_u64(x126, x120, 0x0, &x128);
- { uint64_t x131; uint8_t x132 = _addcarryx_u64(x129, 0x0, x122, &x131);
- { uint64_t x134; uint8_t _ = _addcarryx_u64(0x0, x132, x123, &x134);
- { uint64_t _; uint8_t x138 = _addcarryx_u64(0x0, x101, x116, &_);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x104, x125, &x140);
- { uint64_t x143; uint8_t x144 = _addcarryx_u64(x141, x107, x128, &x143);
- { uint64_t x146; uint8_t x147 = _addcarryx_u64(x144, x110, x131, &x146);
- { uint64_t x149; uint8_t x150 = _addcarryx_u64(x147, x113, x134, &x149);
- { uint8_t x151 = (x150 + x114);
- { uint64_t x154; uint64_t x153 = _mulx_u64(x9, x11, &x154);
- { uint64_t x157; uint64_t x156 = _mulx_u64(x9, x13, &x157);
- { uint64_t x160; uint64_t x159 = _mulx_u64(x9, x15, &x160);
- { uint64_t x163; uint64_t x162 = _mulx_u64(x9, x14, &x163);
- { uint64_t x165; uint8_t x166 = _addcarryx_u64(0x0, x154, x156, &x165);
- { uint64_t x168; uint8_t x169 = _addcarryx_u64(x166, x157, x159, &x168);
- { uint64_t x171; uint8_t x172 = _addcarryx_u64(x169, x160, x162, &x171);
- { uint64_t x174; uint8_t _ = _addcarryx_u64(0x0, x172, x163, &x174);
- { uint64_t x177; uint8_t x178 = _addcarryx_u64(0x0, x140, x153, &x177);
- { uint64_t x180; uint8_t x181 = _addcarryx_u64(x178, x143, x165, &x180);
- { uint64_t x183; uint8_t x184 = _addcarryx_u64(x181, x146, x168, &x183);
- { uint64_t x186; uint8_t x187 = _addcarryx_u64(x184, x149, x171, &x186);
- { uint64_t x189; uint8_t x190 = _addcarryx_u64(x187, x151, x174, &x189);
- { uint64_t x193; uint64_t x192 = _mulx_u64(x177, 0xffffffffffffffffL, &x193);
- { uint64_t x196; uint64_t x195 = _mulx_u64(x177, 0xffffffff, &x196);
- { uint64_t x199; uint64_t x198 = _mulx_u64(x177, 0xffffffff00000001L, &x199);
- { uint64_t x201; uint8_t x202 = _addcarryx_u64(0x0, x193, x195, &x201);
- { uint64_t x204; uint8_t x205 = _addcarryx_u64(x202, x196, 0x0, &x204);
- { uint64_t x207; uint8_t x208 = _addcarryx_u64(x205, 0x0, x198, &x207);
- { uint64_t x210; uint8_t _ = _addcarryx_u64(0x0, x208, x199, &x210);
- { uint64_t _; uint8_t x214 = _addcarryx_u64(0x0, x177, x192, &_);
- { uint64_t x216; uint8_t x217 = _addcarryx_u64(x214, x180, x201, &x216);
- { uint64_t x219; uint8_t x220 = _addcarryx_u64(x217, x183, x204, &x219);
- { uint64_t x222; uint8_t x223 = _addcarryx_u64(x220, x186, x207, &x222);
- { uint64_t x225; uint8_t x226 = _addcarryx_u64(x223, x189, x210, &x225);
- { uint8_t x227 = (x226 + x190);
- { uint64_t x230; uint64_t x229 = _mulx_u64(x8, x11, &x230);
- { uint64_t x233; uint64_t x232 = _mulx_u64(x8, x13, &x233);
- { uint64_t x236; uint64_t x235 = _mulx_u64(x8, x15, &x236);
- { uint64_t x239; uint64_t x238 = _mulx_u64(x8, x14, &x239);
- { uint64_t x241; uint8_t x242 = _addcarryx_u64(0x0, x230, x232, &x241);
- { uint64_t x244; uint8_t x245 = _addcarryx_u64(x242, x233, x235, &x244);
- { uint64_t x247; uint8_t x248 = _addcarryx_u64(x245, x236, x238, &x247);
- { uint64_t x250; uint8_t _ = _addcarryx_u64(0x0, x248, x239, &x250);
- { uint64_t x253; uint8_t x254 = _addcarryx_u64(0x0, x216, x229, &x253);
- { uint64_t x256; uint8_t x257 = _addcarryx_u64(x254, x219, x241, &x256);
- { uint64_t x259; uint8_t x260 = _addcarryx_u64(x257, x222, x244, &x259);
- { uint64_t x262; uint8_t x263 = _addcarryx_u64(x260, x225, x247, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(x263, x227, x250, &x265);
- { uint64_t x269; uint64_t x268 = _mulx_u64(x253, 0xffffffffffffffffL, &x269);
- { uint64_t x272; uint64_t x271 = _mulx_u64(x253, 0xffffffff, &x272);
- { uint64_t x275; uint64_t x274 = _mulx_u64(x253, 0xffffffff00000001L, &x275);
- { uint64_t x277; uint8_t x278 = _addcarryx_u64(0x0, x269, x271, &x277);
- { uint64_t x280; uint8_t x281 = _addcarryx_u64(x278, x272, 0x0, &x280);
- { uint64_t x283; uint8_t x284 = _addcarryx_u64(x281, 0x0, x274, &x283);
- { uint64_t x286; uint8_t _ = _addcarryx_u64(0x0, x284, x275, &x286);
- { uint64_t _; uint8_t x290 = _addcarryx_u64(0x0, x253, x268, &_);
- { uint64_t x292; uint8_t x293 = _addcarryx_u64(x290, x256, x277, &x292);
- { uint64_t x295; uint8_t x296 = _addcarryx_u64(x293, x259, x280, &x295);
- { uint64_t x298; uint8_t x299 = _addcarryx_u64(x296, x262, x283, &x298);
- { uint64_t x301; uint8_t x302 = _addcarryx_u64(x299, x265, x286, &x301);
- { uint8_t x303 = (x302 + x266);
- { uint64_t x305; uint8_t x306 = _subborrow_u64(0x0, x292, 0xffffffffffffffffL, &x305);
- { uint64_t x308; uint8_t x309 = _subborrow_u64(x306, x295, 0xffffffff, &x308);
- { uint64_t x311; uint8_t x312 = _subborrow_u64(x309, x298, 0x0, &x311);
- { uint64_t x314; uint8_t x315 = _subborrow_u64(x312, x301, 0xffffffff00000001L, &x314);
- { uint64_t _; uint8_t x318 = _subborrow_u64(x315, x303, 0x0, &_);
- { uint64_t x319 = cmovznz64(x318, x314, x301);
- { uint64_t x320 = cmovznz64(x318, x311, x298);
- { uint64_t x321 = cmovznz64(x318, x308, x295);
- { uint64_t x322 = cmovznz64(x318, x305, x292);
- out[0] = x322;
- out[1] = x321;
- out[2] = x320;
- out[3] = x319;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/femul.v b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/femul.v
deleted file mode 100644
index 921d38ccb..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m2e224p2e192p2e96m1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/femulDisplay.log b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/femulDisplay.log
deleted file mode 100644
index 1ad198fe0..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,114 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t x42 = mulx_u64(x17, 0xffffffffffffffffL);
- uint64_t x44, uint64_t x45 = mulx_u64(x17, 0xffffffff);
- uint64_t x47, uint64_t x48 = mulx_u64(x17, 0xffffffff00000001L);
- uint64_t x50, uint8_t x51 = addcarryx_u64(0x0, x42, x44);
- uint64_t x53, uint8_t x54 = addcarryx_u64(x51, x45, 0x0);
- uint64_t x56, uint8_t x57 = addcarryx_u64(x54, 0x0, x47);
- uint64_t x59, uint8_t _ = addcarryx_u64(0x0, x57, x48);
- uint64_t _, uint8_t x63 = addcarryx_u64(0x0, x17, x41);
- uint64_t x65, uint8_t x66 = addcarryx_u64(x63, x29, x50);
- uint64_t x68, uint8_t x69 = addcarryx_u64(x66, x32, x53);
- uint64_t x71, uint8_t x72 = addcarryx_u64(x69, x35, x56);
- uint64_t x74, uint8_t x75 = addcarryx_u64(x72, x38, x59);
- uint64_t x77, uint64_t x78 = mulx_u64(x7, x11);
- uint64_t x80, uint64_t x81 = mulx_u64(x7, x13);
- uint64_t x83, uint64_t x84 = mulx_u64(x7, x15);
- uint64_t x86, uint64_t x87 = mulx_u64(x7, x14);
- uint64_t x89, uint8_t x90 = addcarryx_u64(0x0, x78, x80);
- uint64_t x92, uint8_t x93 = addcarryx_u64(x90, x81, x83);
- uint64_t x95, uint8_t x96 = addcarryx_u64(x93, x84, x86);
- uint64_t x98, uint8_t _ = addcarryx_u64(0x0, x96, x87);
- uint64_t x101, uint8_t x102 = addcarryx_u64(0x0, x65, x77);
- uint64_t x104, uint8_t x105 = addcarryx_u64(x102, x68, x89);
- uint64_t x107, uint8_t x108 = addcarryx_u64(x105, x71, x92);
- uint64_t x110, uint8_t x111 = addcarryx_u64(x108, x74, x95);
- uint64_t x113, uint8_t x114 = addcarryx_u64(x111, x75, x98);
- uint64_t x116, uint64_t x117 = mulx_u64(x101, 0xffffffffffffffffL);
- uint64_t x119, uint64_t x120 = mulx_u64(x101, 0xffffffff);
- uint64_t x122, uint64_t x123 = mulx_u64(x101, 0xffffffff00000001L);
- uint64_t x125, uint8_t x126 = addcarryx_u64(0x0, x117, x119);
- uint64_t x128, uint8_t x129 = addcarryx_u64(x126, x120, 0x0);
- uint64_t x131, uint8_t x132 = addcarryx_u64(x129, 0x0, x122);
- uint64_t x134, uint8_t _ = addcarryx_u64(0x0, x132, x123);
- uint64_t _, uint8_t x138 = addcarryx_u64(0x0, x101, x116);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x104, x125);
- uint64_t x143, uint8_t x144 = addcarryx_u64(x141, x107, x128);
- uint64_t x146, uint8_t x147 = addcarryx_u64(x144, x110, x131);
- uint64_t x149, uint8_t x150 = addcarryx_u64(x147, x113, x134);
- uint8_t x151 = (x150 + x114);
- uint64_t x153, uint64_t x154 = mulx_u64(x9, x11);
- uint64_t x156, uint64_t x157 = mulx_u64(x9, x13);
- uint64_t x159, uint64_t x160 = mulx_u64(x9, x15);
- uint64_t x162, uint64_t x163 = mulx_u64(x9, x14);
- uint64_t x165, uint8_t x166 = addcarryx_u64(0x0, x154, x156);
- uint64_t x168, uint8_t x169 = addcarryx_u64(x166, x157, x159);
- uint64_t x171, uint8_t x172 = addcarryx_u64(x169, x160, x162);
- uint64_t x174, uint8_t _ = addcarryx_u64(0x0, x172, x163);
- uint64_t x177, uint8_t x178 = addcarryx_u64(0x0, x140, x153);
- uint64_t x180, uint8_t x181 = addcarryx_u64(x178, x143, x165);
- uint64_t x183, uint8_t x184 = addcarryx_u64(x181, x146, x168);
- uint64_t x186, uint8_t x187 = addcarryx_u64(x184, x149, x171);
- uint64_t x189, uint8_t x190 = addcarryx_u64(x187, x151, x174);
- uint64_t x192, uint64_t x193 = mulx_u64(x177, 0xffffffffffffffffL);
- uint64_t x195, uint64_t x196 = mulx_u64(x177, 0xffffffff);
- uint64_t x198, uint64_t x199 = mulx_u64(x177, 0xffffffff00000001L);
- uint64_t x201, uint8_t x202 = addcarryx_u64(0x0, x193, x195);
- uint64_t x204, uint8_t x205 = addcarryx_u64(x202, x196, 0x0);
- uint64_t x207, uint8_t x208 = addcarryx_u64(x205, 0x0, x198);
- uint64_t x210, uint8_t _ = addcarryx_u64(0x0, x208, x199);
- uint64_t _, uint8_t x214 = addcarryx_u64(0x0, x177, x192);
- uint64_t x216, uint8_t x217 = addcarryx_u64(x214, x180, x201);
- uint64_t x219, uint8_t x220 = addcarryx_u64(x217, x183, x204);
- uint64_t x222, uint8_t x223 = addcarryx_u64(x220, x186, x207);
- uint64_t x225, uint8_t x226 = addcarryx_u64(x223, x189, x210);
- uint8_t x227 = (x226 + x190);
- uint64_t x229, uint64_t x230 = mulx_u64(x8, x11);
- uint64_t x232, uint64_t x233 = mulx_u64(x8, x13);
- uint64_t x235, uint64_t x236 = mulx_u64(x8, x15);
- uint64_t x238, uint64_t x239 = mulx_u64(x8, x14);
- uint64_t x241, uint8_t x242 = addcarryx_u64(0x0, x230, x232);
- uint64_t x244, uint8_t x245 = addcarryx_u64(x242, x233, x235);
- uint64_t x247, uint8_t x248 = addcarryx_u64(x245, x236, x238);
- uint64_t x250, uint8_t _ = addcarryx_u64(0x0, x248, x239);
- uint64_t x253, uint8_t x254 = addcarryx_u64(0x0, x216, x229);
- uint64_t x256, uint8_t x257 = addcarryx_u64(x254, x219, x241);
- uint64_t x259, uint8_t x260 = addcarryx_u64(x257, x222, x244);
- uint64_t x262, uint8_t x263 = addcarryx_u64(x260, x225, x247);
- uint64_t x265, uint8_t x266 = addcarryx_u64(x263, x227, x250);
- uint64_t x268, uint64_t x269 = mulx_u64(x253, 0xffffffffffffffffL);
- uint64_t x271, uint64_t x272 = mulx_u64(x253, 0xffffffff);
- uint64_t x274, uint64_t x275 = mulx_u64(x253, 0xffffffff00000001L);
- uint64_t x277, uint8_t x278 = addcarryx_u64(0x0, x269, x271);
- uint64_t x280, uint8_t x281 = addcarryx_u64(x278, x272, 0x0);
- uint64_t x283, uint8_t x284 = addcarryx_u64(x281, 0x0, x274);
- uint64_t x286, uint8_t _ = addcarryx_u64(0x0, x284, x275);
- uint64_t _, uint8_t x290 = addcarryx_u64(0x0, x253, x268);
- uint64_t x292, uint8_t x293 = addcarryx_u64(x290, x256, x277);
- uint64_t x295, uint8_t x296 = addcarryx_u64(x293, x259, x280);
- uint64_t x298, uint8_t x299 = addcarryx_u64(x296, x262, x283);
- uint64_t x301, uint8_t x302 = addcarryx_u64(x299, x265, x286);
- uint8_t x303 = (x302 + x266);
- uint64_t x305, uint8_t x306 = subborrow_u64(0x0, x292, 0xffffffffffffffffL);
- uint64_t x308, uint8_t x309 = subborrow_u64(x306, x295, 0xffffffff);
- uint64_t x311, uint8_t x312 = subborrow_u64(x309, x298, 0x0);
- uint64_t x314, uint8_t x315 = subborrow_u64(x312, x301, 0xffffffff00000001L);
- uint64_t _, uint8_t x318 = subborrow_u64(x315, x303, 0x0);
- uint64_t x319 = cmovznz64(x318, x314, x301);
- uint64_t x320 = cmovznz64(x318, x311, x298);
- uint64_t x321 = cmovznz64(x318, x308, x295);
- uint64_t x322 = cmovznz64(x318, x305, x292);
- return (x319, x320, x321, x322))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/femulDisplay.v b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/femulDisplay.v
deleted file mode 100644
index 18f0467cb..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m2e224p2e192p2e96m1_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fenz.c b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fenz.c
deleted file mode 100644
index 7541094ff..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x7 = (x6 | x5);
- { uint64_t x8 = (x4 | x7);
- { uint64_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fenz.v b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fenz.v
deleted file mode 100644
index 76dc46dd4..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m2e224p2e192p2e96m1_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fenzDisplay.log b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fenzDisplay.v b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fenzDisplay.v
deleted file mode 100644
index 8544084a1..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m2e224p2e192p2e96m1_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feopp.c b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feopp.c
deleted file mode 100644
index 680f0ec5b..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feopp.c
+++ /dev/null
@@ -1,23 +0,0 @@
-static void feopp(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8; uint8_t x9 = _subborrow_u64(0x0, 0x0, x2, &x8);
- { uint64_t x11; uint8_t x12 = _subborrow_u64(x9, 0x0, x4, &x11);
- { uint64_t x14; uint8_t x15 = _subborrow_u64(x12, 0x0, x6, &x14);
- { uint64_t x17; uint8_t x18 = _subborrow_u64(x15, 0x0, x5, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xffffffffffffffffL);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x8, x20, &x22);
- { uint64_t x24 = (x19 & 0xffffffff);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x23, x11, x24, &x26);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(x27, x14, 0x0, &x29);
- { uint64_t x31 = (x19 & 0xffffffff00000001L);
- { uint64_t x33; uint8_t _ = _addcarryx_u64(x30, x17, x31, &x33);
- out[0] = x22;
- out[1] = x26;
- out[2] = x29;
- out[3] = x33;
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feopp.v b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feopp.v
deleted file mode 100644
index 839f259b0..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m2e224p2e192p2e96m1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feoppDisplay.log b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feoppDisplay.log
deleted file mode 100644
index b08bcd7fb..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,19 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xffffffffffffffffL);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffffff);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x29, uint8_t x30 = addcarryx_u64(x27, x14, 0x0);
- uint64_t x31 = (x19 & 0xffffffff00000001L);
- uint64_t x33, uint8_t _ = addcarryx_u64(x30, x17, x31);
- (Return x33, Return x29, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feoppDisplay.v b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feoppDisplay.v
deleted file mode 100644
index b08796e1d..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m2e224p2e192p2e96m1_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fesquare.c b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fesub.c b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fesub.c
deleted file mode 100644
index 7697d07d2..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _subborrow_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _subborrow_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _subborrow_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u64(x24, x8, x14, &x26);
- { uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- { uint64_t x29 = (x28 & 0xffffffffffffffffL);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(0x0, x17, x29, &x31);
- { uint64_t x33 = (x28 & 0xffffffff);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x20, x33, &x35);
- { uint64_t x38; uint8_t x39 = _addcarryx_u64(x36, x23, 0x0, &x38);
- { uint64_t x40 = (x28 & 0xffffffff00000001L);
- { uint64_t x42; uint8_t _ = _addcarryx_u64(x39, x26, x40, &x42);
- out[0] = x31;
- out[1] = x35;
- out[2] = x38;
- out[3] = x42;
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fesub.v b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fesub.v
deleted file mode 100644
index bd5ef89b7..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m2e224p2e192p2e96m1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fesubDisplay.log b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fesubDisplay.log
deleted file mode 100644
index 9175c3383..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,19 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint64_t x29 = (x28 & 0xffffffffffffffffL);
- uint64_t x31, uint8_t x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffffff);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x38, uint8_t x39 = addcarryx_u64(x36, x23, 0x0);
- uint64_t x40 = (x28 & 0xffffffff00000001L);
- uint64_t x42, uint8_t _ = addcarryx_u64(x39, x26, x40);
- (Return x42, Return x38, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fesubDisplay.v b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fesubDisplay.v
deleted file mode 100644
index c72236eec..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m2e224p2e192p2e96m1_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/py_interpreter.sh b/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/py_interpreter.sh
deleted file mode 100755
index 211c82368..000000000
--- a/src/Specific/montgomery64_2e256m2e224p2e192p2e96m1_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256 - 2**224 + 2**192 + 2**96 - 1' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e256m2e32m977_4limbs/CurveParameters.v b/src/Specific/montgomery64_2e256m2e32m977_4limbs/CurveParameters.v
deleted file mode 100644
index 0c0b5f720..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256 - 2^32 - 977
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 64;
- bitwidth := 64;
- s := 2^256;
- c := [(1, 977); (2^32, 1)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e256m2e32m977_4limbs/Synthesis.v b/src/Specific/montgomery64_2e256m2e32m977_4limbs/Synthesis.v
deleted file mode 100644
index c0a8e8529..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e256m2e32m977_4limbs.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/montgomery64_2e256m2e32m977_4limbs/compiler.sh b/src/Specific/montgomery64_2e256m2e32m977_4limbs/compiler.sh
deleted file mode 100755
index 676d2b25f..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977' "$@"
diff --git a/src/Specific/montgomery64_2e256m2e32m977_4limbs/compilerxx.sh b/src/Specific/montgomery64_2e256m2e32m977_4limbs/compilerxx.sh
deleted file mode 100755
index 76971cd96..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977' "$@"
diff --git a/src/Specific/montgomery64_2e256m2e32m977_4limbs/feadd.c b/src/Specific/montgomery64_2e256m2e32m977_4limbs/feadd.c
deleted file mode 100644
index 14f720f2d..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _addcarryx_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _addcarryx_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x24, x8, x14, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u64(0x0, x17, 0xfffffffefffffc2fL, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u64(x30, x20, 0xffffffffffffffffL, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u64(x33, x23, 0xffffffffffffffffL, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u64(x36, x26, 0xffffffffffffffffL, &x38);
- { uint64_t _; uint8_t x42 = _subborrow_u64(x39, x27, 0x0, &_);
- { uint64_t x43 = cmovznz64(x42, x38, x26);
- { uint64_t x44 = cmovznz64(x42, x35, x23);
- { uint64_t x45 = cmovznz64(x42, x32, x20);
- { uint64_t x46 = cmovznz64(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m2e32m977_4limbs/feadd.v b/src/Specific/montgomery64_2e256m2e32m977_4limbs/feadd.v
deleted file mode 100644
index c466a6925..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m2e32m977_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e256m2e32m977_4limbs/feaddDisplay.log b/src/Specific/montgomery64_2e256m2e32m977_4limbs/feaddDisplay.log
deleted file mode 100644
index ae304849e..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t x30 = subborrow_u64(0x0, x17, 0xfffffffefffffc2fL);
- uint64_t x32, uint8_t x33 = subborrow_u64(x30, x20, 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = subborrow_u64(x33, x23, 0xffffffffffffffffL);
- uint64_t x38, uint8_t x39 = subborrow_u64(x36, x26, 0xffffffffffffffffL);
- uint64_t _, uint8_t x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e256m2e32m977_4limbs/feaddDisplay.v b/src/Specific/montgomery64_2e256m2e32m977_4limbs/feaddDisplay.v
deleted file mode 100644
index 4af4b73d5..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m2e32m977_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e256m2e32m977_4limbs/femul.c b/src/Specific/montgomery64_2e256m2e32m977_4limbs/femul.c
deleted file mode 100644
index e6301b612..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/femul.c
+++ /dev/null
@@ -1,130 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x18; uint64_t x17 = _mulx_u64(x5, x11, &x18);
- { uint64_t x21; uint64_t x20 = _mulx_u64(x5, x13, &x21);
- { uint64_t x24; uint64_t x23 = _mulx_u64(x5, x15, &x24);
- { uint64_t x27; uint64_t x26 = _mulx_u64(x5, x14, &x27);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x18, x20, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x21, x23, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x24, x26, &x35);
- { uint64_t x38; uint8_t _ = _addcarryx_u64(0x0, x36, x27, &x38);
- { uint64_t _; uint64_t x41 = _mulx_u64(x17, 0xd838091dd2253531L, &_);
- { uint64_t x45; uint64_t x44 = _mulx_u64(x41, 0xfffffffefffffc2fL, &x45);
- { uint64_t x48; uint64_t x47 = _mulx_u64(x41, 0xffffffffffffffffL, &x48);
- { uint64_t x51; uint64_t x50 = _mulx_u64(x41, 0xffffffffffffffffL, &x51);
- { uint64_t x54; uint64_t x53 = _mulx_u64(x41, 0xffffffffffffffffL, &x54);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(0x0, x45, x47, &x56);
- { uint64_t x59; uint8_t x60 = _addcarryx_u64(x57, x48, x50, &x59);
- { uint64_t x62; uint8_t x63 = _addcarryx_u64(x60, x51, x53, &x62);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(0x0, x63, x54, &x65);
- { uint64_t _; uint8_t x69 = _addcarryx_u64(0x0, x17, x44, &_);
- { uint64_t x71; uint8_t x72 = _addcarryx_u64(x69, x29, x56, &x71);
- { uint64_t x74; uint8_t x75 = _addcarryx_u64(x72, x32, x59, &x74);
- { uint64_t x77; uint8_t x78 = _addcarryx_u64(x75, x35, x62, &x77);
- { uint64_t x80; uint8_t x81 = _addcarryx_u64(x78, x38, x65, &x80);
- { uint64_t x84; uint64_t x83 = _mulx_u64(x7, x11, &x84);
- { uint64_t x87; uint64_t x86 = _mulx_u64(x7, x13, &x87);
- { uint64_t x90; uint64_t x89 = _mulx_u64(x7, x15, &x90);
- { uint64_t x93; uint64_t x92 = _mulx_u64(x7, x14, &x93);
- { uint64_t x95; uint8_t x96 = _addcarryx_u64(0x0, x84, x86, &x95);
- { uint64_t x98; uint8_t x99 = _addcarryx_u64(x96, x87, x89, &x98);
- { uint64_t x101; uint8_t x102 = _addcarryx_u64(x99, x90, x92, &x101);
- { uint64_t x104; uint8_t _ = _addcarryx_u64(0x0, x102, x93, &x104);
- { uint64_t x107; uint8_t x108 = _addcarryx_u64(0x0, x71, x83, &x107);
- { uint64_t x110; uint8_t x111 = _addcarryx_u64(x108, x74, x95, &x110);
- { uint64_t x113; uint8_t x114 = _addcarryx_u64(x111, x77, x98, &x113);
- { uint64_t x116; uint8_t x117 = _addcarryx_u64(x114, x80, x101, &x116);
- { uint64_t x119; uint8_t x120 = _addcarryx_u64(x117, x81, x104, &x119);
- { uint64_t _; uint64_t x122 = _mulx_u64(x107, 0xd838091dd2253531L, &_);
- { uint64_t x126; uint64_t x125 = _mulx_u64(x122, 0xfffffffefffffc2fL, &x126);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x122, 0xffffffffffffffffL, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x122, 0xffffffffffffffffL, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x122, 0xffffffffffffffffL, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x126, x128, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x129, x131, &x140);
- { uint64_t x143; uint8_t x144 = _addcarryx_u64(x141, x132, x134, &x143);
- { uint64_t x146; uint8_t _ = _addcarryx_u64(0x0, x144, x135, &x146);
- { uint64_t _; uint8_t x150 = _addcarryx_u64(0x0, x107, x125, &_);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x110, x137, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x113, x140, &x155);
- { uint64_t x158; uint8_t x159 = _addcarryx_u64(x156, x116, x143, &x158);
- { uint64_t x161; uint8_t x162 = _addcarryx_u64(x159, x119, x146, &x161);
- { uint8_t x163 = (x162 + x120);
- { uint64_t x166; uint64_t x165 = _mulx_u64(x9, x11, &x166);
- { uint64_t x169; uint64_t x168 = _mulx_u64(x9, x13, &x169);
- { uint64_t x172; uint64_t x171 = _mulx_u64(x9, x15, &x172);
- { uint64_t x175; uint64_t x174 = _mulx_u64(x9, x14, &x175);
- { uint64_t x177; uint8_t x178 = _addcarryx_u64(0x0, x166, x168, &x177);
- { uint64_t x180; uint8_t x181 = _addcarryx_u64(x178, x169, x171, &x180);
- { uint64_t x183; uint8_t x184 = _addcarryx_u64(x181, x172, x174, &x183);
- { uint64_t x186; uint8_t _ = _addcarryx_u64(0x0, x184, x175, &x186);
- { uint64_t x189; uint8_t x190 = _addcarryx_u64(0x0, x152, x165, &x189);
- { uint64_t x192; uint8_t x193 = _addcarryx_u64(x190, x155, x177, &x192);
- { uint64_t x195; uint8_t x196 = _addcarryx_u64(x193, x158, x180, &x195);
- { uint64_t x198; uint8_t x199 = _addcarryx_u64(x196, x161, x183, &x198);
- { uint64_t x201; uint8_t x202 = _addcarryx_u64(x199, x163, x186, &x201);
- { uint64_t _; uint64_t x204 = _mulx_u64(x189, 0xd838091dd2253531L, &_);
- { uint64_t x208; uint64_t x207 = _mulx_u64(x204, 0xfffffffefffffc2fL, &x208);
- { uint64_t x211; uint64_t x210 = _mulx_u64(x204, 0xffffffffffffffffL, &x211);
- { uint64_t x214; uint64_t x213 = _mulx_u64(x204, 0xffffffffffffffffL, &x214);
- { uint64_t x217; uint64_t x216 = _mulx_u64(x204, 0xffffffffffffffffL, &x217);
- { uint64_t x219; uint8_t x220 = _addcarryx_u64(0x0, x208, x210, &x219);
- { uint64_t x222; uint8_t x223 = _addcarryx_u64(x220, x211, x213, &x222);
- { uint64_t x225; uint8_t x226 = _addcarryx_u64(x223, x214, x216, &x225);
- { uint64_t x228; uint8_t _ = _addcarryx_u64(0x0, x226, x217, &x228);
- { uint64_t _; uint8_t x232 = _addcarryx_u64(0x0, x189, x207, &_);
- { uint64_t x234; uint8_t x235 = _addcarryx_u64(x232, x192, x219, &x234);
- { uint64_t x237; uint8_t x238 = _addcarryx_u64(x235, x195, x222, &x237);
- { uint64_t x240; uint8_t x241 = _addcarryx_u64(x238, x198, x225, &x240);
- { uint64_t x243; uint8_t x244 = _addcarryx_u64(x241, x201, x228, &x243);
- { uint8_t x245 = (x244 + x202);
- { uint64_t x248; uint64_t x247 = _mulx_u64(x8, x11, &x248);
- { uint64_t x251; uint64_t x250 = _mulx_u64(x8, x13, &x251);
- { uint64_t x254; uint64_t x253 = _mulx_u64(x8, x15, &x254);
- { uint64_t x257; uint64_t x256 = _mulx_u64(x8, x14, &x257);
- { uint64_t x259; uint8_t x260 = _addcarryx_u64(0x0, x248, x250, &x259);
- { uint64_t x262; uint8_t x263 = _addcarryx_u64(x260, x251, x253, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(x263, x254, x256, &x265);
- { uint64_t x268; uint8_t _ = _addcarryx_u64(0x0, x266, x257, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(0x0, x234, x247, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x237, x259, &x274);
- { uint64_t x277; uint8_t x278 = _addcarryx_u64(x275, x240, x262, &x277);
- { uint64_t x280; uint8_t x281 = _addcarryx_u64(x278, x243, x265, &x280);
- { uint64_t x283; uint8_t x284 = _addcarryx_u64(x281, x245, x268, &x283);
- { uint64_t _; uint64_t x286 = _mulx_u64(x271, 0xd838091dd2253531L, &_);
- { uint64_t x290; uint64_t x289 = _mulx_u64(x286, 0xfffffffefffffc2fL, &x290);
- { uint64_t x293; uint64_t x292 = _mulx_u64(x286, 0xffffffffffffffffL, &x293);
- { uint64_t x296; uint64_t x295 = _mulx_u64(x286, 0xffffffffffffffffL, &x296);
- { uint64_t x299; uint64_t x298 = _mulx_u64(x286, 0xffffffffffffffffL, &x299);
- { uint64_t x301; uint8_t x302 = _addcarryx_u64(0x0, x290, x292, &x301);
- { uint64_t x304; uint8_t x305 = _addcarryx_u64(x302, x293, x295, &x304);
- { uint64_t x307; uint8_t x308 = _addcarryx_u64(x305, x296, x298, &x307);
- { uint64_t x310; uint8_t _ = _addcarryx_u64(0x0, x308, x299, &x310);
- { uint64_t _; uint8_t x314 = _addcarryx_u64(0x0, x271, x289, &_);
- { uint64_t x316; uint8_t x317 = _addcarryx_u64(x314, x274, x301, &x316);
- { uint64_t x319; uint8_t x320 = _addcarryx_u64(x317, x277, x304, &x319);
- { uint64_t x322; uint8_t x323 = _addcarryx_u64(x320, x280, x307, &x322);
- { uint64_t x325; uint8_t x326 = _addcarryx_u64(x323, x283, x310, &x325);
- { uint8_t x327 = (x326 + x284);
- { uint64_t x329; uint8_t x330 = _subborrow_u64(0x0, x316, 0xfffffffefffffc2fL, &x329);
- { uint64_t x332; uint8_t x333 = _subborrow_u64(x330, x319, 0xffffffffffffffffL, &x332);
- { uint64_t x335; uint8_t x336 = _subborrow_u64(x333, x322, 0xffffffffffffffffL, &x335);
- { uint64_t x338; uint8_t x339 = _subborrow_u64(x336, x325, 0xffffffffffffffffL, &x338);
- { uint64_t _; uint8_t x342 = _subborrow_u64(x339, x327, 0x0, &_);
- { uint64_t x343 = cmovznz64(x342, x338, x325);
- { uint64_t x344 = cmovznz64(x342, x335, x322);
- { uint64_t x345 = cmovznz64(x342, x332, x319);
- { uint64_t x346 = cmovznz64(x342, x329, x316);
- out[0] = x346;
- out[1] = x345;
- out[2] = x344;
- out[3] = x343;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m2e32m977_4limbs/femul.v b/src/Specific/montgomery64_2e256m2e32m977_4limbs/femul.v
deleted file mode 100644
index ade94b2bc..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m2e32m977_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e256m2e32m977_4limbs/femulDisplay.log b/src/Specific/montgomery64_2e256m2e32m977_4limbs/femulDisplay.log
deleted file mode 100644
index 59bd5d082..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,122 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t _ = mulx_u64(x17, 0xd838091dd2253531L);
- uint64_t x44, uint64_t x45 = mulx_u64(x41, 0xfffffffefffffc2fL);
- uint64_t x47, uint64_t x48 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x50, uint64_t x51 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x53, uint64_t x54 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x56, uint8_t x57 = addcarryx_u64(0x0, x45, x47);
- uint64_t x59, uint8_t x60 = addcarryx_u64(x57, x48, x50);
- uint64_t x62, uint8_t x63 = addcarryx_u64(x60, x51, x53);
- uint64_t x65, uint8_t _ = addcarryx_u64(0x0, x63, x54);
- uint64_t _, uint8_t x69 = addcarryx_u64(0x0, x17, x44);
- uint64_t x71, uint8_t x72 = addcarryx_u64(x69, x29, x56);
- uint64_t x74, uint8_t x75 = addcarryx_u64(x72, x32, x59);
- uint64_t x77, uint8_t x78 = addcarryx_u64(x75, x35, x62);
- uint64_t x80, uint8_t x81 = addcarryx_u64(x78, x38, x65);
- uint64_t x83, uint64_t x84 = mulx_u64(x7, x11);
- uint64_t x86, uint64_t x87 = mulx_u64(x7, x13);
- uint64_t x89, uint64_t x90 = mulx_u64(x7, x15);
- uint64_t x92, uint64_t x93 = mulx_u64(x7, x14);
- uint64_t x95, uint8_t x96 = addcarryx_u64(0x0, x84, x86);
- uint64_t x98, uint8_t x99 = addcarryx_u64(x96, x87, x89);
- uint64_t x101, uint8_t x102 = addcarryx_u64(x99, x90, x92);
- uint64_t x104, uint8_t _ = addcarryx_u64(0x0, x102, x93);
- uint64_t x107, uint8_t x108 = addcarryx_u64(0x0, x71, x83);
- uint64_t x110, uint8_t x111 = addcarryx_u64(x108, x74, x95);
- uint64_t x113, uint8_t x114 = addcarryx_u64(x111, x77, x98);
- uint64_t x116, uint8_t x117 = addcarryx_u64(x114, x80, x101);
- uint64_t x119, uint8_t x120 = addcarryx_u64(x117, x81, x104);
- uint64_t x122, uint64_t _ = mulx_u64(x107, 0xd838091dd2253531L);
- uint64_t x125, uint64_t x126 = mulx_u64(x122, 0xfffffffefffffc2fL);
- uint64_t x128, uint64_t x129 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x131, uint64_t x132 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x134, uint64_t x135 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x126, x128);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x129, x131);
- uint64_t x143, uint8_t x144 = addcarryx_u64(x141, x132, x134);
- uint64_t x146, uint8_t _ = addcarryx_u64(0x0, x144, x135);
- uint64_t _, uint8_t x150 = addcarryx_u64(0x0, x107, x125);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x110, x137);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x113, x140);
- uint64_t x158, uint8_t x159 = addcarryx_u64(x156, x116, x143);
- uint64_t x161, uint8_t x162 = addcarryx_u64(x159, x119, x146);
- uint8_t x163 = (x162 + x120);
- uint64_t x165, uint64_t x166 = mulx_u64(x9, x11);
- uint64_t x168, uint64_t x169 = mulx_u64(x9, x13);
- uint64_t x171, uint64_t x172 = mulx_u64(x9, x15);
- uint64_t x174, uint64_t x175 = mulx_u64(x9, x14);
- uint64_t x177, uint8_t x178 = addcarryx_u64(0x0, x166, x168);
- uint64_t x180, uint8_t x181 = addcarryx_u64(x178, x169, x171);
- uint64_t x183, uint8_t x184 = addcarryx_u64(x181, x172, x174);
- uint64_t x186, uint8_t _ = addcarryx_u64(0x0, x184, x175);
- uint64_t x189, uint8_t x190 = addcarryx_u64(0x0, x152, x165);
- uint64_t x192, uint8_t x193 = addcarryx_u64(x190, x155, x177);
- uint64_t x195, uint8_t x196 = addcarryx_u64(x193, x158, x180);
- uint64_t x198, uint8_t x199 = addcarryx_u64(x196, x161, x183);
- uint64_t x201, uint8_t x202 = addcarryx_u64(x199, x163, x186);
- uint64_t x204, uint64_t _ = mulx_u64(x189, 0xd838091dd2253531L);
- uint64_t x207, uint64_t x208 = mulx_u64(x204, 0xfffffffefffffc2fL);
- uint64_t x210, uint64_t x211 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x213, uint64_t x214 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x216, uint64_t x217 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x219, uint8_t x220 = addcarryx_u64(0x0, x208, x210);
- uint64_t x222, uint8_t x223 = addcarryx_u64(x220, x211, x213);
- uint64_t x225, uint8_t x226 = addcarryx_u64(x223, x214, x216);
- uint64_t x228, uint8_t _ = addcarryx_u64(0x0, x226, x217);
- uint64_t _, uint8_t x232 = addcarryx_u64(0x0, x189, x207);
- uint64_t x234, uint8_t x235 = addcarryx_u64(x232, x192, x219);
- uint64_t x237, uint8_t x238 = addcarryx_u64(x235, x195, x222);
- uint64_t x240, uint8_t x241 = addcarryx_u64(x238, x198, x225);
- uint64_t x243, uint8_t x244 = addcarryx_u64(x241, x201, x228);
- uint8_t x245 = (x244 + x202);
- uint64_t x247, uint64_t x248 = mulx_u64(x8, x11);
- uint64_t x250, uint64_t x251 = mulx_u64(x8, x13);
- uint64_t x253, uint64_t x254 = mulx_u64(x8, x15);
- uint64_t x256, uint64_t x257 = mulx_u64(x8, x14);
- uint64_t x259, uint8_t x260 = addcarryx_u64(0x0, x248, x250);
- uint64_t x262, uint8_t x263 = addcarryx_u64(x260, x251, x253);
- uint64_t x265, uint8_t x266 = addcarryx_u64(x263, x254, x256);
- uint64_t x268, uint8_t _ = addcarryx_u64(0x0, x266, x257);
- uint64_t x271, uint8_t x272 = addcarryx_u64(0x0, x234, x247);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x237, x259);
- uint64_t x277, uint8_t x278 = addcarryx_u64(x275, x240, x262);
- uint64_t x280, uint8_t x281 = addcarryx_u64(x278, x243, x265);
- uint64_t x283, uint8_t x284 = addcarryx_u64(x281, x245, x268);
- uint64_t x286, uint64_t _ = mulx_u64(x271, 0xd838091dd2253531L);
- uint64_t x289, uint64_t x290 = mulx_u64(x286, 0xfffffffefffffc2fL);
- uint64_t x292, uint64_t x293 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x295, uint64_t x296 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x298, uint64_t x299 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x301, uint8_t x302 = addcarryx_u64(0x0, x290, x292);
- uint64_t x304, uint8_t x305 = addcarryx_u64(x302, x293, x295);
- uint64_t x307, uint8_t x308 = addcarryx_u64(x305, x296, x298);
- uint64_t x310, uint8_t _ = addcarryx_u64(0x0, x308, x299);
- uint64_t _, uint8_t x314 = addcarryx_u64(0x0, x271, x289);
- uint64_t x316, uint8_t x317 = addcarryx_u64(x314, x274, x301);
- uint64_t x319, uint8_t x320 = addcarryx_u64(x317, x277, x304);
- uint64_t x322, uint8_t x323 = addcarryx_u64(x320, x280, x307);
- uint64_t x325, uint8_t x326 = addcarryx_u64(x323, x283, x310);
- uint8_t x327 = (x326 + x284);
- uint64_t x329, uint8_t x330 = subborrow_u64(0x0, x316, 0xfffffffefffffc2fL);
- uint64_t x332, uint8_t x333 = subborrow_u64(x330, x319, 0xffffffffffffffffL);
- uint64_t x335, uint8_t x336 = subborrow_u64(x333, x322, 0xffffffffffffffffL);
- uint64_t x338, uint8_t x339 = subborrow_u64(x336, x325, 0xffffffffffffffffL);
- uint64_t _, uint8_t x342 = subborrow_u64(x339, x327, 0x0);
- uint64_t x343 = cmovznz64(x342, x338, x325);
- uint64_t x344 = cmovznz64(x342, x335, x322);
- uint64_t x345 = cmovznz64(x342, x332, x319);
- uint64_t x346 = cmovznz64(x342, x329, x316);
- return (x343, x344, x345, x346))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e256m2e32m977_4limbs/femulDisplay.v b/src/Specific/montgomery64_2e256m2e32m977_4limbs/femulDisplay.v
deleted file mode 100644
index b90c1fe4c..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m2e32m977_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e256m2e32m977_4limbs/fenz.c b/src/Specific/montgomery64_2e256m2e32m977_4limbs/fenz.c
deleted file mode 100644
index 7541094ff..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x7 = (x6 | x5);
- { uint64_t x8 = (x4 | x7);
- { uint64_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m2e32m977_4limbs/fenz.v b/src/Specific/montgomery64_2e256m2e32m977_4limbs/fenz.v
deleted file mode 100644
index 0ec4ad9e9..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m2e32m977_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e256m2e32m977_4limbs/fenzDisplay.log b/src/Specific/montgomery64_2e256m2e32m977_4limbs/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e256m2e32m977_4limbs/fenzDisplay.v b/src/Specific/montgomery64_2e256m2e32m977_4limbs/fenzDisplay.v
deleted file mode 100644
index 46e4d1c5e..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m2e32m977_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e256m2e32m977_4limbs/feopp.c b/src/Specific/montgomery64_2e256m2e32m977_4limbs/feopp.c
deleted file mode 100644
index 6461080dc..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/feopp.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feopp(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8; uint8_t x9 = _subborrow_u64(0x0, 0x0, x2, &x8);
- { uint64_t x11; uint8_t x12 = _subborrow_u64(x9, 0x0, x4, &x11);
- { uint64_t x14; uint8_t x15 = _subborrow_u64(x12, 0x0, x6, &x14);
- { uint64_t x17; uint8_t x18 = _subborrow_u64(x15, 0x0, x5, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xfffffffefffffc2fL);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x8, x20, &x22);
- { uint64_t x24 = (x19 & 0xffffffffffffffffL);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x23, x11, x24, &x26);
- { uint64_t x28 = (x19 & 0xffffffffffffffffL);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x27, x14, x28, &x30);
- { uint64_t x32 = (x19 & 0xffffffffffffffffL);
- { uint64_t x34; uint8_t _ = _addcarryx_u64(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m2e32m977_4limbs/feopp.v b/src/Specific/montgomery64_2e256m2e32m977_4limbs/feopp.v
deleted file mode 100644
index bedc6d60b..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m2e32m977_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e256m2e32m977_4limbs/feoppDisplay.log b/src/Specific/montgomery64_2e256m2e32m977_4limbs/feoppDisplay.log
deleted file mode 100644
index b89811d28..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xfffffffefffffc2fL);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffffffffffffffL);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x28 = (x19 & 0xffffffffffffffffL);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x27, x14, x28);
- uint64_t x32 = (x19 & 0xffffffffffffffffL);
- uint64_t x34, uint8_t _ = addcarryx_u64(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e256m2e32m977_4limbs/feoppDisplay.v b/src/Specific/montgomery64_2e256m2e32m977_4limbs/feoppDisplay.v
deleted file mode 100644
index 8c83c69c9..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m2e32m977_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e256m2e32m977_4limbs/fesquare.c b/src/Specific/montgomery64_2e256m2e32m977_4limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e256m2e32m977_4limbs/fesub.c b/src/Specific/montgomery64_2e256m2e32m977_4limbs/fesub.c
deleted file mode 100644
index 7bb6ec2a2..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/fesub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _subborrow_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _subborrow_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _subborrow_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u64(x24, x8, x14, &x26);
- { uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- { uint64_t x29 = (x28 & 0xfffffffefffffc2fL);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(0x0, x17, x29, &x31);
- { uint64_t x33 = (x28 & 0xffffffffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x20, x33, &x35);
- { uint64_t x37 = (x28 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x23, x37, &x39);
- { uint64_t x41 = (x28 & 0xffffffffffffffffL);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x26, x41, &x43);
- out[0] = x31;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m2e32m977_4limbs/fesub.v b/src/Specific/montgomery64_2e256m2e32m977_4limbs/fesub.v
deleted file mode 100644
index 1e773b5aa..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m2e32m977_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e256m2e32m977_4limbs/fesubDisplay.log b/src/Specific/montgomery64_2e256m2e32m977_4limbs/fesubDisplay.log
deleted file mode 100644
index fd2507333..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint64_t x29 = (x28 & 0xfffffffefffffc2fL);
- uint64_t x31, uint8_t x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x37 = (x28 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x23, x37);
- uint64_t x41 = (x28 & 0xffffffffffffffffL);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x26, x41);
- (Return x43, Return x39, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e256m2e32m977_4limbs/fesubDisplay.v b/src/Specific/montgomery64_2e256m2e32m977_4limbs/fesubDisplay.v
deleted file mode 100644
index 9c280f42b..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m2e32m977_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e256m2e32m977_4limbs/py_interpreter.sh b/src/Specific/montgomery64_2e256m2e32m977_4limbs/py_interpreter.sh
deleted file mode 100755
index 465dcfb46..000000000
--- a/src/Specific/montgomery64_2e256m2e32m977_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256 - 2**32 - 977' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e256m4294968273_4limbs/CurveParameters.v b/src/Specific/montgomery64_2e256m4294968273_4limbs/CurveParameters.v
deleted file mode 100644
index 6e5f55ff1..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256 - 4294968273
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 64;
- bitwidth := 64;
- s := 2^256;
- c := [(1, 4294968273)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e256m4294968273_4limbs/Synthesis.v b/src/Specific/montgomery64_2e256m4294968273_4limbs/Synthesis.v
deleted file mode 100644
index 41b3e63c9..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e256m4294968273_4limbs.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/montgomery64_2e256m4294968273_4limbs/compiler.sh b/src/Specific/montgomery64_2e256m4294968273_4limbs/compiler.sh
deleted file mode 100755
index f5498d3a2..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<256) - 4294968273' "$@"
diff --git a/src/Specific/montgomery64_2e256m4294968273_4limbs/compilerxx.sh b/src/Specific/montgomery64_2e256m4294968273_4limbs/compilerxx.sh
deleted file mode 100755
index 0ca360bb6..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<256) - 4294968273' "$@"
diff --git a/src/Specific/montgomery64_2e256m4294968273_4limbs/feadd.c b/src/Specific/montgomery64_2e256m4294968273_4limbs/feadd.c
deleted file mode 100644
index 14f720f2d..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _addcarryx_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _addcarryx_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x24, x8, x14, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u64(0x0, x17, 0xfffffffefffffc2fL, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u64(x30, x20, 0xffffffffffffffffL, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u64(x33, x23, 0xffffffffffffffffL, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u64(x36, x26, 0xffffffffffffffffL, &x38);
- { uint64_t _; uint8_t x42 = _subborrow_u64(x39, x27, 0x0, &_);
- { uint64_t x43 = cmovznz64(x42, x38, x26);
- { uint64_t x44 = cmovznz64(x42, x35, x23);
- { uint64_t x45 = cmovznz64(x42, x32, x20);
- { uint64_t x46 = cmovznz64(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m4294968273_4limbs/feadd.v b/src/Specific/montgomery64_2e256m4294968273_4limbs/feadd.v
deleted file mode 100644
index 369b01033..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m4294968273_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e256m4294968273_4limbs/feaddDisplay.log b/src/Specific/montgomery64_2e256m4294968273_4limbs/feaddDisplay.log
deleted file mode 100644
index ae304849e..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t x30 = subborrow_u64(0x0, x17, 0xfffffffefffffc2fL);
- uint64_t x32, uint8_t x33 = subborrow_u64(x30, x20, 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = subborrow_u64(x33, x23, 0xffffffffffffffffL);
- uint64_t x38, uint8_t x39 = subborrow_u64(x36, x26, 0xffffffffffffffffL);
- uint64_t _, uint8_t x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e256m4294968273_4limbs/feaddDisplay.v b/src/Specific/montgomery64_2e256m4294968273_4limbs/feaddDisplay.v
deleted file mode 100644
index a85921d5c..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m4294968273_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e256m4294968273_4limbs/femul.c b/src/Specific/montgomery64_2e256m4294968273_4limbs/femul.c
deleted file mode 100644
index e6301b612..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/femul.c
+++ /dev/null
@@ -1,130 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x18; uint64_t x17 = _mulx_u64(x5, x11, &x18);
- { uint64_t x21; uint64_t x20 = _mulx_u64(x5, x13, &x21);
- { uint64_t x24; uint64_t x23 = _mulx_u64(x5, x15, &x24);
- { uint64_t x27; uint64_t x26 = _mulx_u64(x5, x14, &x27);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x18, x20, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x21, x23, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x24, x26, &x35);
- { uint64_t x38; uint8_t _ = _addcarryx_u64(0x0, x36, x27, &x38);
- { uint64_t _; uint64_t x41 = _mulx_u64(x17, 0xd838091dd2253531L, &_);
- { uint64_t x45; uint64_t x44 = _mulx_u64(x41, 0xfffffffefffffc2fL, &x45);
- { uint64_t x48; uint64_t x47 = _mulx_u64(x41, 0xffffffffffffffffL, &x48);
- { uint64_t x51; uint64_t x50 = _mulx_u64(x41, 0xffffffffffffffffL, &x51);
- { uint64_t x54; uint64_t x53 = _mulx_u64(x41, 0xffffffffffffffffL, &x54);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(0x0, x45, x47, &x56);
- { uint64_t x59; uint8_t x60 = _addcarryx_u64(x57, x48, x50, &x59);
- { uint64_t x62; uint8_t x63 = _addcarryx_u64(x60, x51, x53, &x62);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(0x0, x63, x54, &x65);
- { uint64_t _; uint8_t x69 = _addcarryx_u64(0x0, x17, x44, &_);
- { uint64_t x71; uint8_t x72 = _addcarryx_u64(x69, x29, x56, &x71);
- { uint64_t x74; uint8_t x75 = _addcarryx_u64(x72, x32, x59, &x74);
- { uint64_t x77; uint8_t x78 = _addcarryx_u64(x75, x35, x62, &x77);
- { uint64_t x80; uint8_t x81 = _addcarryx_u64(x78, x38, x65, &x80);
- { uint64_t x84; uint64_t x83 = _mulx_u64(x7, x11, &x84);
- { uint64_t x87; uint64_t x86 = _mulx_u64(x7, x13, &x87);
- { uint64_t x90; uint64_t x89 = _mulx_u64(x7, x15, &x90);
- { uint64_t x93; uint64_t x92 = _mulx_u64(x7, x14, &x93);
- { uint64_t x95; uint8_t x96 = _addcarryx_u64(0x0, x84, x86, &x95);
- { uint64_t x98; uint8_t x99 = _addcarryx_u64(x96, x87, x89, &x98);
- { uint64_t x101; uint8_t x102 = _addcarryx_u64(x99, x90, x92, &x101);
- { uint64_t x104; uint8_t _ = _addcarryx_u64(0x0, x102, x93, &x104);
- { uint64_t x107; uint8_t x108 = _addcarryx_u64(0x0, x71, x83, &x107);
- { uint64_t x110; uint8_t x111 = _addcarryx_u64(x108, x74, x95, &x110);
- { uint64_t x113; uint8_t x114 = _addcarryx_u64(x111, x77, x98, &x113);
- { uint64_t x116; uint8_t x117 = _addcarryx_u64(x114, x80, x101, &x116);
- { uint64_t x119; uint8_t x120 = _addcarryx_u64(x117, x81, x104, &x119);
- { uint64_t _; uint64_t x122 = _mulx_u64(x107, 0xd838091dd2253531L, &_);
- { uint64_t x126; uint64_t x125 = _mulx_u64(x122, 0xfffffffefffffc2fL, &x126);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x122, 0xffffffffffffffffL, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x122, 0xffffffffffffffffL, &x132);
- { uint64_t x135; uint64_t x134 = _mulx_u64(x122, 0xffffffffffffffffL, &x135);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(0x0, x126, x128, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x129, x131, &x140);
- { uint64_t x143; uint8_t x144 = _addcarryx_u64(x141, x132, x134, &x143);
- { uint64_t x146; uint8_t _ = _addcarryx_u64(0x0, x144, x135, &x146);
- { uint64_t _; uint8_t x150 = _addcarryx_u64(0x0, x107, x125, &_);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x110, x137, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x113, x140, &x155);
- { uint64_t x158; uint8_t x159 = _addcarryx_u64(x156, x116, x143, &x158);
- { uint64_t x161; uint8_t x162 = _addcarryx_u64(x159, x119, x146, &x161);
- { uint8_t x163 = (x162 + x120);
- { uint64_t x166; uint64_t x165 = _mulx_u64(x9, x11, &x166);
- { uint64_t x169; uint64_t x168 = _mulx_u64(x9, x13, &x169);
- { uint64_t x172; uint64_t x171 = _mulx_u64(x9, x15, &x172);
- { uint64_t x175; uint64_t x174 = _mulx_u64(x9, x14, &x175);
- { uint64_t x177; uint8_t x178 = _addcarryx_u64(0x0, x166, x168, &x177);
- { uint64_t x180; uint8_t x181 = _addcarryx_u64(x178, x169, x171, &x180);
- { uint64_t x183; uint8_t x184 = _addcarryx_u64(x181, x172, x174, &x183);
- { uint64_t x186; uint8_t _ = _addcarryx_u64(0x0, x184, x175, &x186);
- { uint64_t x189; uint8_t x190 = _addcarryx_u64(0x0, x152, x165, &x189);
- { uint64_t x192; uint8_t x193 = _addcarryx_u64(x190, x155, x177, &x192);
- { uint64_t x195; uint8_t x196 = _addcarryx_u64(x193, x158, x180, &x195);
- { uint64_t x198; uint8_t x199 = _addcarryx_u64(x196, x161, x183, &x198);
- { uint64_t x201; uint8_t x202 = _addcarryx_u64(x199, x163, x186, &x201);
- { uint64_t _; uint64_t x204 = _mulx_u64(x189, 0xd838091dd2253531L, &_);
- { uint64_t x208; uint64_t x207 = _mulx_u64(x204, 0xfffffffefffffc2fL, &x208);
- { uint64_t x211; uint64_t x210 = _mulx_u64(x204, 0xffffffffffffffffL, &x211);
- { uint64_t x214; uint64_t x213 = _mulx_u64(x204, 0xffffffffffffffffL, &x214);
- { uint64_t x217; uint64_t x216 = _mulx_u64(x204, 0xffffffffffffffffL, &x217);
- { uint64_t x219; uint8_t x220 = _addcarryx_u64(0x0, x208, x210, &x219);
- { uint64_t x222; uint8_t x223 = _addcarryx_u64(x220, x211, x213, &x222);
- { uint64_t x225; uint8_t x226 = _addcarryx_u64(x223, x214, x216, &x225);
- { uint64_t x228; uint8_t _ = _addcarryx_u64(0x0, x226, x217, &x228);
- { uint64_t _; uint8_t x232 = _addcarryx_u64(0x0, x189, x207, &_);
- { uint64_t x234; uint8_t x235 = _addcarryx_u64(x232, x192, x219, &x234);
- { uint64_t x237; uint8_t x238 = _addcarryx_u64(x235, x195, x222, &x237);
- { uint64_t x240; uint8_t x241 = _addcarryx_u64(x238, x198, x225, &x240);
- { uint64_t x243; uint8_t x244 = _addcarryx_u64(x241, x201, x228, &x243);
- { uint8_t x245 = (x244 + x202);
- { uint64_t x248; uint64_t x247 = _mulx_u64(x8, x11, &x248);
- { uint64_t x251; uint64_t x250 = _mulx_u64(x8, x13, &x251);
- { uint64_t x254; uint64_t x253 = _mulx_u64(x8, x15, &x254);
- { uint64_t x257; uint64_t x256 = _mulx_u64(x8, x14, &x257);
- { uint64_t x259; uint8_t x260 = _addcarryx_u64(0x0, x248, x250, &x259);
- { uint64_t x262; uint8_t x263 = _addcarryx_u64(x260, x251, x253, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(x263, x254, x256, &x265);
- { uint64_t x268; uint8_t _ = _addcarryx_u64(0x0, x266, x257, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(0x0, x234, x247, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x237, x259, &x274);
- { uint64_t x277; uint8_t x278 = _addcarryx_u64(x275, x240, x262, &x277);
- { uint64_t x280; uint8_t x281 = _addcarryx_u64(x278, x243, x265, &x280);
- { uint64_t x283; uint8_t x284 = _addcarryx_u64(x281, x245, x268, &x283);
- { uint64_t _; uint64_t x286 = _mulx_u64(x271, 0xd838091dd2253531L, &_);
- { uint64_t x290; uint64_t x289 = _mulx_u64(x286, 0xfffffffefffffc2fL, &x290);
- { uint64_t x293; uint64_t x292 = _mulx_u64(x286, 0xffffffffffffffffL, &x293);
- { uint64_t x296; uint64_t x295 = _mulx_u64(x286, 0xffffffffffffffffL, &x296);
- { uint64_t x299; uint64_t x298 = _mulx_u64(x286, 0xffffffffffffffffL, &x299);
- { uint64_t x301; uint8_t x302 = _addcarryx_u64(0x0, x290, x292, &x301);
- { uint64_t x304; uint8_t x305 = _addcarryx_u64(x302, x293, x295, &x304);
- { uint64_t x307; uint8_t x308 = _addcarryx_u64(x305, x296, x298, &x307);
- { uint64_t x310; uint8_t _ = _addcarryx_u64(0x0, x308, x299, &x310);
- { uint64_t _; uint8_t x314 = _addcarryx_u64(0x0, x271, x289, &_);
- { uint64_t x316; uint8_t x317 = _addcarryx_u64(x314, x274, x301, &x316);
- { uint64_t x319; uint8_t x320 = _addcarryx_u64(x317, x277, x304, &x319);
- { uint64_t x322; uint8_t x323 = _addcarryx_u64(x320, x280, x307, &x322);
- { uint64_t x325; uint8_t x326 = _addcarryx_u64(x323, x283, x310, &x325);
- { uint8_t x327 = (x326 + x284);
- { uint64_t x329; uint8_t x330 = _subborrow_u64(0x0, x316, 0xfffffffefffffc2fL, &x329);
- { uint64_t x332; uint8_t x333 = _subborrow_u64(x330, x319, 0xffffffffffffffffL, &x332);
- { uint64_t x335; uint8_t x336 = _subborrow_u64(x333, x322, 0xffffffffffffffffL, &x335);
- { uint64_t x338; uint8_t x339 = _subborrow_u64(x336, x325, 0xffffffffffffffffL, &x338);
- { uint64_t _; uint8_t x342 = _subborrow_u64(x339, x327, 0x0, &_);
- { uint64_t x343 = cmovznz64(x342, x338, x325);
- { uint64_t x344 = cmovznz64(x342, x335, x322);
- { uint64_t x345 = cmovznz64(x342, x332, x319);
- { uint64_t x346 = cmovznz64(x342, x329, x316);
- out[0] = x346;
- out[1] = x345;
- out[2] = x344;
- out[3] = x343;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m4294968273_4limbs/femul.v b/src/Specific/montgomery64_2e256m4294968273_4limbs/femul.v
deleted file mode 100644
index e449959b1..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m4294968273_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e256m4294968273_4limbs/femulDisplay.log b/src/Specific/montgomery64_2e256m4294968273_4limbs/femulDisplay.log
deleted file mode 100644
index 59bd5d082..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,122 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t _ = mulx_u64(x17, 0xd838091dd2253531L);
- uint64_t x44, uint64_t x45 = mulx_u64(x41, 0xfffffffefffffc2fL);
- uint64_t x47, uint64_t x48 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x50, uint64_t x51 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x53, uint64_t x54 = mulx_u64(x41, 0xffffffffffffffffL);
- uint64_t x56, uint8_t x57 = addcarryx_u64(0x0, x45, x47);
- uint64_t x59, uint8_t x60 = addcarryx_u64(x57, x48, x50);
- uint64_t x62, uint8_t x63 = addcarryx_u64(x60, x51, x53);
- uint64_t x65, uint8_t _ = addcarryx_u64(0x0, x63, x54);
- uint64_t _, uint8_t x69 = addcarryx_u64(0x0, x17, x44);
- uint64_t x71, uint8_t x72 = addcarryx_u64(x69, x29, x56);
- uint64_t x74, uint8_t x75 = addcarryx_u64(x72, x32, x59);
- uint64_t x77, uint8_t x78 = addcarryx_u64(x75, x35, x62);
- uint64_t x80, uint8_t x81 = addcarryx_u64(x78, x38, x65);
- uint64_t x83, uint64_t x84 = mulx_u64(x7, x11);
- uint64_t x86, uint64_t x87 = mulx_u64(x7, x13);
- uint64_t x89, uint64_t x90 = mulx_u64(x7, x15);
- uint64_t x92, uint64_t x93 = mulx_u64(x7, x14);
- uint64_t x95, uint8_t x96 = addcarryx_u64(0x0, x84, x86);
- uint64_t x98, uint8_t x99 = addcarryx_u64(x96, x87, x89);
- uint64_t x101, uint8_t x102 = addcarryx_u64(x99, x90, x92);
- uint64_t x104, uint8_t _ = addcarryx_u64(0x0, x102, x93);
- uint64_t x107, uint8_t x108 = addcarryx_u64(0x0, x71, x83);
- uint64_t x110, uint8_t x111 = addcarryx_u64(x108, x74, x95);
- uint64_t x113, uint8_t x114 = addcarryx_u64(x111, x77, x98);
- uint64_t x116, uint8_t x117 = addcarryx_u64(x114, x80, x101);
- uint64_t x119, uint8_t x120 = addcarryx_u64(x117, x81, x104);
- uint64_t x122, uint64_t _ = mulx_u64(x107, 0xd838091dd2253531L);
- uint64_t x125, uint64_t x126 = mulx_u64(x122, 0xfffffffefffffc2fL);
- uint64_t x128, uint64_t x129 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x131, uint64_t x132 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x134, uint64_t x135 = mulx_u64(x122, 0xffffffffffffffffL);
- uint64_t x137, uint8_t x138 = addcarryx_u64(0x0, x126, x128);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x129, x131);
- uint64_t x143, uint8_t x144 = addcarryx_u64(x141, x132, x134);
- uint64_t x146, uint8_t _ = addcarryx_u64(0x0, x144, x135);
- uint64_t _, uint8_t x150 = addcarryx_u64(0x0, x107, x125);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x110, x137);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x113, x140);
- uint64_t x158, uint8_t x159 = addcarryx_u64(x156, x116, x143);
- uint64_t x161, uint8_t x162 = addcarryx_u64(x159, x119, x146);
- uint8_t x163 = (x162 + x120);
- uint64_t x165, uint64_t x166 = mulx_u64(x9, x11);
- uint64_t x168, uint64_t x169 = mulx_u64(x9, x13);
- uint64_t x171, uint64_t x172 = mulx_u64(x9, x15);
- uint64_t x174, uint64_t x175 = mulx_u64(x9, x14);
- uint64_t x177, uint8_t x178 = addcarryx_u64(0x0, x166, x168);
- uint64_t x180, uint8_t x181 = addcarryx_u64(x178, x169, x171);
- uint64_t x183, uint8_t x184 = addcarryx_u64(x181, x172, x174);
- uint64_t x186, uint8_t _ = addcarryx_u64(0x0, x184, x175);
- uint64_t x189, uint8_t x190 = addcarryx_u64(0x0, x152, x165);
- uint64_t x192, uint8_t x193 = addcarryx_u64(x190, x155, x177);
- uint64_t x195, uint8_t x196 = addcarryx_u64(x193, x158, x180);
- uint64_t x198, uint8_t x199 = addcarryx_u64(x196, x161, x183);
- uint64_t x201, uint8_t x202 = addcarryx_u64(x199, x163, x186);
- uint64_t x204, uint64_t _ = mulx_u64(x189, 0xd838091dd2253531L);
- uint64_t x207, uint64_t x208 = mulx_u64(x204, 0xfffffffefffffc2fL);
- uint64_t x210, uint64_t x211 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x213, uint64_t x214 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x216, uint64_t x217 = mulx_u64(x204, 0xffffffffffffffffL);
- uint64_t x219, uint8_t x220 = addcarryx_u64(0x0, x208, x210);
- uint64_t x222, uint8_t x223 = addcarryx_u64(x220, x211, x213);
- uint64_t x225, uint8_t x226 = addcarryx_u64(x223, x214, x216);
- uint64_t x228, uint8_t _ = addcarryx_u64(0x0, x226, x217);
- uint64_t _, uint8_t x232 = addcarryx_u64(0x0, x189, x207);
- uint64_t x234, uint8_t x235 = addcarryx_u64(x232, x192, x219);
- uint64_t x237, uint8_t x238 = addcarryx_u64(x235, x195, x222);
- uint64_t x240, uint8_t x241 = addcarryx_u64(x238, x198, x225);
- uint64_t x243, uint8_t x244 = addcarryx_u64(x241, x201, x228);
- uint8_t x245 = (x244 + x202);
- uint64_t x247, uint64_t x248 = mulx_u64(x8, x11);
- uint64_t x250, uint64_t x251 = mulx_u64(x8, x13);
- uint64_t x253, uint64_t x254 = mulx_u64(x8, x15);
- uint64_t x256, uint64_t x257 = mulx_u64(x8, x14);
- uint64_t x259, uint8_t x260 = addcarryx_u64(0x0, x248, x250);
- uint64_t x262, uint8_t x263 = addcarryx_u64(x260, x251, x253);
- uint64_t x265, uint8_t x266 = addcarryx_u64(x263, x254, x256);
- uint64_t x268, uint8_t _ = addcarryx_u64(0x0, x266, x257);
- uint64_t x271, uint8_t x272 = addcarryx_u64(0x0, x234, x247);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x237, x259);
- uint64_t x277, uint8_t x278 = addcarryx_u64(x275, x240, x262);
- uint64_t x280, uint8_t x281 = addcarryx_u64(x278, x243, x265);
- uint64_t x283, uint8_t x284 = addcarryx_u64(x281, x245, x268);
- uint64_t x286, uint64_t _ = mulx_u64(x271, 0xd838091dd2253531L);
- uint64_t x289, uint64_t x290 = mulx_u64(x286, 0xfffffffefffffc2fL);
- uint64_t x292, uint64_t x293 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x295, uint64_t x296 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x298, uint64_t x299 = mulx_u64(x286, 0xffffffffffffffffL);
- uint64_t x301, uint8_t x302 = addcarryx_u64(0x0, x290, x292);
- uint64_t x304, uint8_t x305 = addcarryx_u64(x302, x293, x295);
- uint64_t x307, uint8_t x308 = addcarryx_u64(x305, x296, x298);
- uint64_t x310, uint8_t _ = addcarryx_u64(0x0, x308, x299);
- uint64_t _, uint8_t x314 = addcarryx_u64(0x0, x271, x289);
- uint64_t x316, uint8_t x317 = addcarryx_u64(x314, x274, x301);
- uint64_t x319, uint8_t x320 = addcarryx_u64(x317, x277, x304);
- uint64_t x322, uint8_t x323 = addcarryx_u64(x320, x280, x307);
- uint64_t x325, uint8_t x326 = addcarryx_u64(x323, x283, x310);
- uint8_t x327 = (x326 + x284);
- uint64_t x329, uint8_t x330 = subborrow_u64(0x0, x316, 0xfffffffefffffc2fL);
- uint64_t x332, uint8_t x333 = subborrow_u64(x330, x319, 0xffffffffffffffffL);
- uint64_t x335, uint8_t x336 = subborrow_u64(x333, x322, 0xffffffffffffffffL);
- uint64_t x338, uint8_t x339 = subborrow_u64(x336, x325, 0xffffffffffffffffL);
- uint64_t _, uint8_t x342 = subborrow_u64(x339, x327, 0x0);
- uint64_t x343 = cmovznz64(x342, x338, x325);
- uint64_t x344 = cmovznz64(x342, x335, x322);
- uint64_t x345 = cmovznz64(x342, x332, x319);
- uint64_t x346 = cmovznz64(x342, x329, x316);
- return (x343, x344, x345, x346))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e256m4294968273_4limbs/femulDisplay.v b/src/Specific/montgomery64_2e256m4294968273_4limbs/femulDisplay.v
deleted file mode 100644
index ecbd96059..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m4294968273_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e256m4294968273_4limbs/fenz.c b/src/Specific/montgomery64_2e256m4294968273_4limbs/fenz.c
deleted file mode 100644
index 7541094ff..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x7 = (x6 | x5);
- { uint64_t x8 = (x4 | x7);
- { uint64_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m4294968273_4limbs/fenz.v b/src/Specific/montgomery64_2e256m4294968273_4limbs/fenz.v
deleted file mode 100644
index f991f921b..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m4294968273_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e256m4294968273_4limbs/fenzDisplay.log b/src/Specific/montgomery64_2e256m4294968273_4limbs/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e256m4294968273_4limbs/fenzDisplay.v b/src/Specific/montgomery64_2e256m4294968273_4limbs/fenzDisplay.v
deleted file mode 100644
index 95a803b86..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m4294968273_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e256m4294968273_4limbs/feopp.c b/src/Specific/montgomery64_2e256m4294968273_4limbs/feopp.c
deleted file mode 100644
index 6461080dc..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/feopp.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feopp(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8; uint8_t x9 = _subborrow_u64(0x0, 0x0, x2, &x8);
- { uint64_t x11; uint8_t x12 = _subborrow_u64(x9, 0x0, x4, &x11);
- { uint64_t x14; uint8_t x15 = _subborrow_u64(x12, 0x0, x6, &x14);
- { uint64_t x17; uint8_t x18 = _subborrow_u64(x15, 0x0, x5, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xfffffffefffffc2fL);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x8, x20, &x22);
- { uint64_t x24 = (x19 & 0xffffffffffffffffL);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x23, x11, x24, &x26);
- { uint64_t x28 = (x19 & 0xffffffffffffffffL);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x27, x14, x28, &x30);
- { uint64_t x32 = (x19 & 0xffffffffffffffffL);
- { uint64_t x34; uint8_t _ = _addcarryx_u64(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m4294968273_4limbs/feopp.v b/src/Specific/montgomery64_2e256m4294968273_4limbs/feopp.v
deleted file mode 100644
index 1b9ead4e0..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m4294968273_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e256m4294968273_4limbs/feoppDisplay.log b/src/Specific/montgomery64_2e256m4294968273_4limbs/feoppDisplay.log
deleted file mode 100644
index b89811d28..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xfffffffefffffc2fL);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffffffffffffffL);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x28 = (x19 & 0xffffffffffffffffL);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x27, x14, x28);
- uint64_t x32 = (x19 & 0xffffffffffffffffL);
- uint64_t x34, uint8_t _ = addcarryx_u64(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e256m4294968273_4limbs/feoppDisplay.v b/src/Specific/montgomery64_2e256m4294968273_4limbs/feoppDisplay.v
deleted file mode 100644
index 0819567d5..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m4294968273_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e256m4294968273_4limbs/fesquare.c b/src/Specific/montgomery64_2e256m4294968273_4limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e256m4294968273_4limbs/fesub.c b/src/Specific/montgomery64_2e256m4294968273_4limbs/fesub.c
deleted file mode 100644
index 7bb6ec2a2..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/fesub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _subborrow_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _subborrow_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _subborrow_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u64(x24, x8, x14, &x26);
- { uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- { uint64_t x29 = (x28 & 0xfffffffefffffc2fL);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(0x0, x17, x29, &x31);
- { uint64_t x33 = (x28 & 0xffffffffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x20, x33, &x35);
- { uint64_t x37 = (x28 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x23, x37, &x39);
- { uint64_t x41 = (x28 & 0xffffffffffffffffL);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x26, x41, &x43);
- out[0] = x31;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m4294968273_4limbs/fesub.v b/src/Specific/montgomery64_2e256m4294968273_4limbs/fesub.v
deleted file mode 100644
index 29dd21063..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m4294968273_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e256m4294968273_4limbs/fesubDisplay.log b/src/Specific/montgomery64_2e256m4294968273_4limbs/fesubDisplay.log
deleted file mode 100644
index fd2507333..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint64_t x29 = (x28 & 0xfffffffefffffc2fL);
- uint64_t x31, uint8_t x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x37 = (x28 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x23, x37);
- uint64_t x41 = (x28 & 0xffffffffffffffffL);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x26, x41);
- (Return x43, Return x39, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e256m4294968273_4limbs/fesubDisplay.v b/src/Specific/montgomery64_2e256m4294968273_4limbs/fesubDisplay.v
deleted file mode 100644
index 0dd519b2e..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m4294968273_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e256m4294968273_4limbs/py_interpreter.sh b/src/Specific/montgomery64_2e256m4294968273_4limbs/py_interpreter.sh
deleted file mode 100755
index f44b49d86..000000000
--- a/src/Specific/montgomery64_2e256m4294968273_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256 - 4294968273' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/CurveParameters.v b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/CurveParameters.v
deleted file mode 100644
index e0f31c209..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256 - 88*2^240 - 1
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 64;
- bitwidth := 64;
- s := 2^256;
- c := [(1, 1); (88, 2^240)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e256m88x2e240m1_4limbs/Synthesis.v b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/Synthesis.v
deleted file mode 100644
index 3840e91c2..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e256m88x2e240m1_4limbs.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/montgomery64_2e256m88x2e240m1_4limbs/compiler.sh b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/compiler.sh
deleted file mode 100755
index ebb206363..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/compilerxx.sh b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/compilerxx.sh
deleted file mode 100755
index bb27ce1e1..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64}' -Dmodulus_array='{0xff,0xa7,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<256) - 88*(1_mpz<<240) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feadd.c b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feadd.c
deleted file mode 100644
index bc65ab093..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feadd.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _addcarryx_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _addcarryx_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _addcarryx_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x24, x8, x14, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u64(0x0, x17, 0xffffffffffffffffL, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u64(x30, x20, 0xffffffffffffffffL, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u64(x33, x23, 0xffffffffffffffffL, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u64(x36, x26, 0xffa7ffffffffffffL, &x38);
- { uint64_t _; uint8_t x42 = _subborrow_u64(x39, x27, 0x0, &_);
- { uint64_t x43 = cmovznz64(x42, x38, x26);
- { uint64_t x44 = cmovznz64(x42, x35, x23);
- { uint64_t x45 = cmovznz64(x42, x32, x20);
- { uint64_t x46 = cmovznz64(x42, x29, x17);
- out[0] = x46;
- out[1] = x45;
- out[2] = x44;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feadd.v b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feadd.v
deleted file mode 100644
index 1e1ac45af..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m88x2e240m1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feaddDisplay.log b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feaddDisplay.log
deleted file mode 100644
index 81d0d6f63..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = addcarryx_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = addcarryx_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = addcarryx_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x24, x8, x14);
- uint64_t x29, uint8_t x30 = subborrow_u64(0x0, x17, 0xffffffffffffffffL);
- uint64_t x32, uint8_t x33 = subborrow_u64(x30, x20, 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = subborrow_u64(x33, x23, 0xffffffffffffffffL);
- uint64_t x38, uint8_t x39 = subborrow_u64(x36, x26, 0xffa7ffffffffffffL);
- uint64_t _, uint8_t x42 = subborrow_u64(x39, x27, 0x0);
- uint64_t x43 = cmovznz64(x42, x38, x26);
- uint64_t x44 = cmovznz64(x42, x35, x23);
- uint64_t x45 = cmovznz64(x42, x32, x20);
- uint64_t x46 = cmovznz64(x42, x29, x17);
- return (x43, x44, x45, x46))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feaddDisplay.v b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feaddDisplay.v
deleted file mode 100644
index 16a034685..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m88x2e240m1_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/femul.c b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/femul.c
deleted file mode 100644
index 82b06c926..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/femul.c
+++ /dev/null
@@ -1,126 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x18; uint64_t x17 = _mulx_u64(x5, x11, &x18);
- { uint64_t x21; uint64_t x20 = _mulx_u64(x5, x13, &x21);
- { uint64_t x24; uint64_t x23 = _mulx_u64(x5, x15, &x24);
- { uint64_t x27; uint64_t x26 = _mulx_u64(x5, x14, &x27);
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x18, x20, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x21, x23, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x24, x26, &x35);
- { uint64_t x38; uint8_t _ = _addcarryx_u64(0x0, x36, x27, &x38);
- { uint64_t x42; uint64_t x41 = _mulx_u64(x17, 0xffffffffffffffffL, &x42);
- { uint64_t x45; uint64_t x44 = _mulx_u64(x17, 0xffffffffffffffffL, &x45);
- { uint64_t x48; uint64_t x47 = _mulx_u64(x17, 0xffffffffffffffffL, &x48);
- { uint64_t x51; uint64_t x50 = _mulx_u64(x17, 0xffa7ffffffffffffL, &x51);
- { uint64_t x53; uint8_t x54 = _addcarryx_u64(0x0, x42, x44, &x53);
- { uint64_t x56; uint8_t x57 = _addcarryx_u64(x54, x45, x47, &x56);
- { uint64_t x59; uint8_t x60 = _addcarryx_u64(x57, x48, x50, &x59);
- { uint64_t x62; uint8_t _ = _addcarryx_u64(0x0, x60, x51, &x62);
- { uint64_t _; uint8_t x66 = _addcarryx_u64(0x0, x17, x41, &_);
- { uint64_t x68; uint8_t x69 = _addcarryx_u64(x66, x29, x53, &x68);
- { uint64_t x71; uint8_t x72 = _addcarryx_u64(x69, x32, x56, &x71);
- { uint64_t x74; uint8_t x75 = _addcarryx_u64(x72, x35, x59, &x74);
- { uint64_t x77; uint8_t x78 = _addcarryx_u64(x75, x38, x62, &x77);
- { uint64_t x81; uint64_t x80 = _mulx_u64(x7, x11, &x81);
- { uint64_t x84; uint64_t x83 = _mulx_u64(x7, x13, &x84);
- { uint64_t x87; uint64_t x86 = _mulx_u64(x7, x15, &x87);
- { uint64_t x90; uint64_t x89 = _mulx_u64(x7, x14, &x90);
- { uint64_t x92; uint8_t x93 = _addcarryx_u64(0x0, x81, x83, &x92);
- { uint64_t x95; uint8_t x96 = _addcarryx_u64(x93, x84, x86, &x95);
- { uint64_t x98; uint8_t x99 = _addcarryx_u64(x96, x87, x89, &x98);
- { uint64_t x101; uint8_t _ = _addcarryx_u64(0x0, x99, x90, &x101);
- { uint64_t x104; uint8_t x105 = _addcarryx_u64(0x0, x68, x80, &x104);
- { uint64_t x107; uint8_t x108 = _addcarryx_u64(x105, x71, x92, &x107);
- { uint64_t x110; uint8_t x111 = _addcarryx_u64(x108, x74, x95, &x110);
- { uint64_t x113; uint8_t x114 = _addcarryx_u64(x111, x77, x98, &x113);
- { uint64_t x116; uint8_t x117 = _addcarryx_u64(x114, x78, x101, &x116);
- { uint64_t x120; uint64_t x119 = _mulx_u64(x104, 0xffffffffffffffffL, &x120);
- { uint64_t x123; uint64_t x122 = _mulx_u64(x104, 0xffffffffffffffffL, &x123);
- { uint64_t x126; uint64_t x125 = _mulx_u64(x104, 0xffffffffffffffffL, &x126);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x104, 0xffa7ffffffffffffL, &x129);
- { uint64_t x131; uint8_t x132 = _addcarryx_u64(0x0, x120, x122, &x131);
- { uint64_t x134; uint8_t x135 = _addcarryx_u64(x132, x123, x125, &x134);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(x135, x126, x128, &x137);
- { uint64_t x140; uint8_t _ = _addcarryx_u64(0x0, x138, x129, &x140);
- { uint64_t _; uint8_t x144 = _addcarryx_u64(0x0, x104, x119, &_);
- { uint64_t x146; uint8_t x147 = _addcarryx_u64(x144, x107, x131, &x146);
- { uint64_t x149; uint8_t x150 = _addcarryx_u64(x147, x110, x134, &x149);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(x150, x113, x137, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x116, x140, &x155);
- { uint8_t x157 = (x156 + x117);
- { uint64_t x160; uint64_t x159 = _mulx_u64(x9, x11, &x160);
- { uint64_t x163; uint64_t x162 = _mulx_u64(x9, x13, &x163);
- { uint64_t x166; uint64_t x165 = _mulx_u64(x9, x15, &x166);
- { uint64_t x169; uint64_t x168 = _mulx_u64(x9, x14, &x169);
- { uint64_t x171; uint8_t x172 = _addcarryx_u64(0x0, x160, x162, &x171);
- { uint64_t x174; uint8_t x175 = _addcarryx_u64(x172, x163, x165, &x174);
- { uint64_t x177; uint8_t x178 = _addcarryx_u64(x175, x166, x168, &x177);
- { uint64_t x180; uint8_t _ = _addcarryx_u64(0x0, x178, x169, &x180);
- { uint64_t x183; uint8_t x184 = _addcarryx_u64(0x0, x146, x159, &x183);
- { uint64_t x186; uint8_t x187 = _addcarryx_u64(x184, x149, x171, &x186);
- { uint64_t x189; uint8_t x190 = _addcarryx_u64(x187, x152, x174, &x189);
- { uint64_t x192; uint8_t x193 = _addcarryx_u64(x190, x155, x177, &x192);
- { uint64_t x195; uint8_t x196 = _addcarryx_u64(x193, x157, x180, &x195);
- { uint64_t x199; uint64_t x198 = _mulx_u64(x183, 0xffffffffffffffffL, &x199);
- { uint64_t x202; uint64_t x201 = _mulx_u64(x183, 0xffffffffffffffffL, &x202);
- { uint64_t x205; uint64_t x204 = _mulx_u64(x183, 0xffffffffffffffffL, &x205);
- { uint64_t x208; uint64_t x207 = _mulx_u64(x183, 0xffa7ffffffffffffL, &x208);
- { uint64_t x210; uint8_t x211 = _addcarryx_u64(0x0, x199, x201, &x210);
- { uint64_t x213; uint8_t x214 = _addcarryx_u64(x211, x202, x204, &x213);
- { uint64_t x216; uint8_t x217 = _addcarryx_u64(x214, x205, x207, &x216);
- { uint64_t x219; uint8_t _ = _addcarryx_u64(0x0, x217, x208, &x219);
- { uint64_t _; uint8_t x223 = _addcarryx_u64(0x0, x183, x198, &_);
- { uint64_t x225; uint8_t x226 = _addcarryx_u64(x223, x186, x210, &x225);
- { uint64_t x228; uint8_t x229 = _addcarryx_u64(x226, x189, x213, &x228);
- { uint64_t x231; uint8_t x232 = _addcarryx_u64(x229, x192, x216, &x231);
- { uint64_t x234; uint8_t x235 = _addcarryx_u64(x232, x195, x219, &x234);
- { uint8_t x236 = (x235 + x196);
- { uint64_t x239; uint64_t x238 = _mulx_u64(x8, x11, &x239);
- { uint64_t x242; uint64_t x241 = _mulx_u64(x8, x13, &x242);
- { uint64_t x245; uint64_t x244 = _mulx_u64(x8, x15, &x245);
- { uint64_t x248; uint64_t x247 = _mulx_u64(x8, x14, &x248);
- { uint64_t x250; uint8_t x251 = _addcarryx_u64(0x0, x239, x241, &x250);
- { uint64_t x253; uint8_t x254 = _addcarryx_u64(x251, x242, x244, &x253);
- { uint64_t x256; uint8_t x257 = _addcarryx_u64(x254, x245, x247, &x256);
- { uint64_t x259; uint8_t _ = _addcarryx_u64(0x0, x257, x248, &x259);
- { uint64_t x262; uint8_t x263 = _addcarryx_u64(0x0, x225, x238, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(x263, x228, x250, &x265);
- { uint64_t x268; uint8_t x269 = _addcarryx_u64(x266, x231, x253, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(x269, x234, x256, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x236, x259, &x274);
- { uint64_t x278; uint64_t x277 = _mulx_u64(x262, 0xffffffffffffffffL, &x278);
- { uint64_t x281; uint64_t x280 = _mulx_u64(x262, 0xffffffffffffffffL, &x281);
- { uint64_t x284; uint64_t x283 = _mulx_u64(x262, 0xffffffffffffffffL, &x284);
- { uint64_t x287; uint64_t x286 = _mulx_u64(x262, 0xffa7ffffffffffffL, &x287);
- { uint64_t x289; uint8_t x290 = _addcarryx_u64(0x0, x278, x280, &x289);
- { uint64_t x292; uint8_t x293 = _addcarryx_u64(x290, x281, x283, &x292);
- { uint64_t x295; uint8_t x296 = _addcarryx_u64(x293, x284, x286, &x295);
- { uint64_t x298; uint8_t _ = _addcarryx_u64(0x0, x296, x287, &x298);
- { uint64_t _; uint8_t x302 = _addcarryx_u64(0x0, x262, x277, &_);
- { uint64_t x304; uint8_t x305 = _addcarryx_u64(x302, x265, x289, &x304);
- { uint64_t x307; uint8_t x308 = _addcarryx_u64(x305, x268, x292, &x307);
- { uint64_t x310; uint8_t x311 = _addcarryx_u64(x308, x271, x295, &x310);
- { uint64_t x313; uint8_t x314 = _addcarryx_u64(x311, x274, x298, &x313);
- { uint8_t x315 = (x314 + x275);
- { uint64_t x317; uint8_t x318 = _subborrow_u64(0x0, x304, 0xffffffffffffffffL, &x317);
- { uint64_t x320; uint8_t x321 = _subborrow_u64(x318, x307, 0xffffffffffffffffL, &x320);
- { uint64_t x323; uint8_t x324 = _subborrow_u64(x321, x310, 0xffffffffffffffffL, &x323);
- { uint64_t x326; uint8_t x327 = _subborrow_u64(x324, x313, 0xffa7ffffffffffffL, &x326);
- { uint64_t _; uint8_t x330 = _subborrow_u64(x327, x315, 0x0, &_);
- { uint64_t x331 = cmovznz64(x330, x326, x313);
- { uint64_t x332 = cmovznz64(x330, x323, x310);
- { uint64_t x333 = cmovznz64(x330, x320, x307);
- { uint64_t x334 = cmovznz64(x330, x317, x304);
- out[0] = x334;
- out[1] = x333;
- out[2] = x332;
- out[3] = x331;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/femul.v b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/femul.v
deleted file mode 100644
index cf302e69e..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m88x2e240m1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/femulDisplay.log b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/femulDisplay.log
deleted file mode 100644
index aff28190a..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,118 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint64_t x18 = mulx_u64(x5, x11);
- uint64_t x20, uint64_t x21 = mulx_u64(x5, x13);
- uint64_t x23, uint64_t x24 = mulx_u64(x5, x15);
- uint64_t x26, uint64_t x27 = mulx_u64(x5, x14);
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x18, x20);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x21, x23);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x24, x26);
- uint64_t x38, uint8_t _ = addcarryx_u64(0x0, x36, x27);
- uint64_t x41, uint64_t x42 = mulx_u64(x17, 0xffffffffffffffffL);
- uint64_t x44, uint64_t x45 = mulx_u64(x17, 0xffffffffffffffffL);
- uint64_t x47, uint64_t x48 = mulx_u64(x17, 0xffffffffffffffffL);
- uint64_t x50, uint64_t x51 = mulx_u64(x17, 0xffa7ffffffffffffL);
- uint64_t x53, uint8_t x54 = addcarryx_u64(0x0, x42, x44);
- uint64_t x56, uint8_t x57 = addcarryx_u64(x54, x45, x47);
- uint64_t x59, uint8_t x60 = addcarryx_u64(x57, x48, x50);
- uint64_t x62, uint8_t _ = addcarryx_u64(0x0, x60, x51);
- uint64_t _, uint8_t x66 = addcarryx_u64(0x0, x17, x41);
- uint64_t x68, uint8_t x69 = addcarryx_u64(x66, x29, x53);
- uint64_t x71, uint8_t x72 = addcarryx_u64(x69, x32, x56);
- uint64_t x74, uint8_t x75 = addcarryx_u64(x72, x35, x59);
- uint64_t x77, uint8_t x78 = addcarryx_u64(x75, x38, x62);
- uint64_t x80, uint64_t x81 = mulx_u64(x7, x11);
- uint64_t x83, uint64_t x84 = mulx_u64(x7, x13);
- uint64_t x86, uint64_t x87 = mulx_u64(x7, x15);
- uint64_t x89, uint64_t x90 = mulx_u64(x7, x14);
- uint64_t x92, uint8_t x93 = addcarryx_u64(0x0, x81, x83);
- uint64_t x95, uint8_t x96 = addcarryx_u64(x93, x84, x86);
- uint64_t x98, uint8_t x99 = addcarryx_u64(x96, x87, x89);
- uint64_t x101, uint8_t _ = addcarryx_u64(0x0, x99, x90);
- uint64_t x104, uint8_t x105 = addcarryx_u64(0x0, x68, x80);
- uint64_t x107, uint8_t x108 = addcarryx_u64(x105, x71, x92);
- uint64_t x110, uint8_t x111 = addcarryx_u64(x108, x74, x95);
- uint64_t x113, uint8_t x114 = addcarryx_u64(x111, x77, x98);
- uint64_t x116, uint8_t x117 = addcarryx_u64(x114, x78, x101);
- uint64_t x119, uint64_t x120 = mulx_u64(x104, 0xffffffffffffffffL);
- uint64_t x122, uint64_t x123 = mulx_u64(x104, 0xffffffffffffffffL);
- uint64_t x125, uint64_t x126 = mulx_u64(x104, 0xffffffffffffffffL);
- uint64_t x128, uint64_t x129 = mulx_u64(x104, 0xffa7ffffffffffffL);
- uint64_t x131, uint8_t x132 = addcarryx_u64(0x0, x120, x122);
- uint64_t x134, uint8_t x135 = addcarryx_u64(x132, x123, x125);
- uint64_t x137, uint8_t x138 = addcarryx_u64(x135, x126, x128);
- uint64_t x140, uint8_t _ = addcarryx_u64(0x0, x138, x129);
- uint64_t _, uint8_t x144 = addcarryx_u64(0x0, x104, x119);
- uint64_t x146, uint8_t x147 = addcarryx_u64(x144, x107, x131);
- uint64_t x149, uint8_t x150 = addcarryx_u64(x147, x110, x134);
- uint64_t x152, uint8_t x153 = addcarryx_u64(x150, x113, x137);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x116, x140);
- uint8_t x157 = (x156 + x117);
- uint64_t x159, uint64_t x160 = mulx_u64(x9, x11);
- uint64_t x162, uint64_t x163 = mulx_u64(x9, x13);
- uint64_t x165, uint64_t x166 = mulx_u64(x9, x15);
- uint64_t x168, uint64_t x169 = mulx_u64(x9, x14);
- uint64_t x171, uint8_t x172 = addcarryx_u64(0x0, x160, x162);
- uint64_t x174, uint8_t x175 = addcarryx_u64(x172, x163, x165);
- uint64_t x177, uint8_t x178 = addcarryx_u64(x175, x166, x168);
- uint64_t x180, uint8_t _ = addcarryx_u64(0x0, x178, x169);
- uint64_t x183, uint8_t x184 = addcarryx_u64(0x0, x146, x159);
- uint64_t x186, uint8_t x187 = addcarryx_u64(x184, x149, x171);
- uint64_t x189, uint8_t x190 = addcarryx_u64(x187, x152, x174);
- uint64_t x192, uint8_t x193 = addcarryx_u64(x190, x155, x177);
- uint64_t x195, uint8_t x196 = addcarryx_u64(x193, x157, x180);
- uint64_t x198, uint64_t x199 = mulx_u64(x183, 0xffffffffffffffffL);
- uint64_t x201, uint64_t x202 = mulx_u64(x183, 0xffffffffffffffffL);
- uint64_t x204, uint64_t x205 = mulx_u64(x183, 0xffffffffffffffffL);
- uint64_t x207, uint64_t x208 = mulx_u64(x183, 0xffa7ffffffffffffL);
- uint64_t x210, uint8_t x211 = addcarryx_u64(0x0, x199, x201);
- uint64_t x213, uint8_t x214 = addcarryx_u64(x211, x202, x204);
- uint64_t x216, uint8_t x217 = addcarryx_u64(x214, x205, x207);
- uint64_t x219, uint8_t _ = addcarryx_u64(0x0, x217, x208);
- uint64_t _, uint8_t x223 = addcarryx_u64(0x0, x183, x198);
- uint64_t x225, uint8_t x226 = addcarryx_u64(x223, x186, x210);
- uint64_t x228, uint8_t x229 = addcarryx_u64(x226, x189, x213);
- uint64_t x231, uint8_t x232 = addcarryx_u64(x229, x192, x216);
- uint64_t x234, uint8_t x235 = addcarryx_u64(x232, x195, x219);
- uint8_t x236 = (x235 + x196);
- uint64_t x238, uint64_t x239 = mulx_u64(x8, x11);
- uint64_t x241, uint64_t x242 = mulx_u64(x8, x13);
- uint64_t x244, uint64_t x245 = mulx_u64(x8, x15);
- uint64_t x247, uint64_t x248 = mulx_u64(x8, x14);
- uint64_t x250, uint8_t x251 = addcarryx_u64(0x0, x239, x241);
- uint64_t x253, uint8_t x254 = addcarryx_u64(x251, x242, x244);
- uint64_t x256, uint8_t x257 = addcarryx_u64(x254, x245, x247);
- uint64_t x259, uint8_t _ = addcarryx_u64(0x0, x257, x248);
- uint64_t x262, uint8_t x263 = addcarryx_u64(0x0, x225, x238);
- uint64_t x265, uint8_t x266 = addcarryx_u64(x263, x228, x250);
- uint64_t x268, uint8_t x269 = addcarryx_u64(x266, x231, x253);
- uint64_t x271, uint8_t x272 = addcarryx_u64(x269, x234, x256);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x236, x259);
- uint64_t x277, uint64_t x278 = mulx_u64(x262, 0xffffffffffffffffL);
- uint64_t x280, uint64_t x281 = mulx_u64(x262, 0xffffffffffffffffL);
- uint64_t x283, uint64_t x284 = mulx_u64(x262, 0xffffffffffffffffL);
- uint64_t x286, uint64_t x287 = mulx_u64(x262, 0xffa7ffffffffffffL);
- uint64_t x289, uint8_t x290 = addcarryx_u64(0x0, x278, x280);
- uint64_t x292, uint8_t x293 = addcarryx_u64(x290, x281, x283);
- uint64_t x295, uint8_t x296 = addcarryx_u64(x293, x284, x286);
- uint64_t x298, uint8_t _ = addcarryx_u64(0x0, x296, x287);
- uint64_t _, uint8_t x302 = addcarryx_u64(0x0, x262, x277);
- uint64_t x304, uint8_t x305 = addcarryx_u64(x302, x265, x289);
- uint64_t x307, uint8_t x308 = addcarryx_u64(x305, x268, x292);
- uint64_t x310, uint8_t x311 = addcarryx_u64(x308, x271, x295);
- uint64_t x313, uint8_t x314 = addcarryx_u64(x311, x274, x298);
- uint8_t x315 = (x314 + x275);
- uint64_t x317, uint8_t x318 = subborrow_u64(0x0, x304, 0xffffffffffffffffL);
- uint64_t x320, uint8_t x321 = subborrow_u64(x318, x307, 0xffffffffffffffffL);
- uint64_t x323, uint8_t x324 = subborrow_u64(x321, x310, 0xffffffffffffffffL);
- uint64_t x326, uint8_t x327 = subborrow_u64(x324, x313, 0xffa7ffffffffffffL);
- uint64_t _, uint8_t x330 = subborrow_u64(x327, x315, 0x0);
- uint64_t x331 = cmovznz64(x330, x326, x313);
- uint64_t x332 = cmovznz64(x330, x323, x310);
- uint64_t x333 = cmovznz64(x330, x320, x307);
- uint64_t x334 = cmovznz64(x330, x317, x304);
- return (x331, x332, x333, x334))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/femulDisplay.v b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/femulDisplay.v
deleted file mode 100644
index 593735c7f..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m88x2e240m1_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fenz.c b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fenz.c
deleted file mode 100644
index 7541094ff..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fenz.c
+++ /dev/null
@@ -1,11 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x7 = (x6 | x5);
- { uint64_t x8 = (x4 | x7);
- { uint64_t x9 = (x2 | x8);
- out[0] = x9;
- }}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fenz.v b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fenz.v
deleted file mode 100644
index 2840c9231..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m88x2e240m1_4limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fenzDisplay.log b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fenzDisplay.log
deleted file mode 100644
index 65afbc2d6..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fenzDisplay.log
+++ /dev/null
@@ -1,10 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x7 = (x6 | x5);
- uint64_t x8 = (x4 | x7);
- uint64_t x9 = (x2 | x8);
- return x9)
-x
- : word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fenzDisplay.v b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fenzDisplay.v
deleted file mode 100644
index c2c51eea6..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m88x2e240m1_4limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feopp.c b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feopp.c
deleted file mode 100644
index 80cc7ff84..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feopp.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feopp(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8; uint8_t x9 = _subborrow_u64(0x0, 0x0, x2, &x8);
- { uint64_t x11; uint8_t x12 = _subborrow_u64(x9, 0x0, x4, &x11);
- { uint64_t x14; uint8_t x15 = _subborrow_u64(x12, 0x0, x6, &x14);
- { uint64_t x17; uint8_t x18 = _subborrow_u64(x15, 0x0, x5, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xffffffffffffffffL);
- { uint64_t x22; uint8_t x23 = _addcarryx_u64(0x0, x8, x20, &x22);
- { uint64_t x24 = (x19 & 0xffffffffffffffffL);
- { uint64_t x26; uint8_t x27 = _addcarryx_u64(x23, x11, x24, &x26);
- { uint64_t x28 = (x19 & 0xffffffffffffffffL);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x27, x14, x28, &x30);
- { uint64_t x32 = (x19 & 0xffa7ffffffffffffL);
- { uint64_t x34; uint8_t _ = _addcarryx_u64(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feopp.v b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feopp.v
deleted file mode 100644
index fbbae9059..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m88x2e240m1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feoppDisplay.log b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feoppDisplay.log
deleted file mode 100644
index 216af93d4..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feoppDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x11, uint8_t x12 = subborrow_u64(x9, 0x0, x4);
- uint64_t x14, uint8_t x15 = subborrow_u64(x12, 0x0, x6);
- uint64_t x17, uint8_t x18 = subborrow_u64(x15, 0x0, x5);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xffffffffffffffffL);
- uint64_t x22, uint8_t x23 = addcarryx_u64(0x0, x8, x20);
- uint64_t x24 = (x19 & 0xffffffffffffffffL);
- uint64_t x26, uint8_t x27 = addcarryx_u64(x23, x11, x24);
- uint64_t x28 = (x19 & 0xffffffffffffffffL);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x27, x14, x28);
- uint64_t x32 = (x19 & 0xffa7ffffffffffffL);
- uint64_t x34, uint8_t _ = addcarryx_u64(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feoppDisplay.v b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feoppDisplay.v
deleted file mode 100644
index 37e5a9e1b..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m88x2e240m1_4limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fesquare.c b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fesub.c b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fesub.c
deleted file mode 100644
index 974f1cf0d..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fesub.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint64_t x17; uint8_t x18 = _subborrow_u64(0x0, x5, x11, &x17);
- { uint64_t x20; uint8_t x21 = _subborrow_u64(x18, x7, x13, &x20);
- { uint64_t x23; uint8_t x24 = _subborrow_u64(x21, x9, x15, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u64(x24, x8, x14, &x26);
- { uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- { uint64_t x29 = (x28 & 0xffffffffffffffffL);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(0x0, x17, x29, &x31);
- { uint64_t x33 = (x28 & 0xffffffffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x20, x33, &x35);
- { uint64_t x37 = (x28 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x23, x37, &x39);
- { uint64_t x41 = (x28 & 0xffa7ffffffffffffL);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x26, x41, &x43);
- out[0] = x31;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fesub.v b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fesub.v
deleted file mode 100644
index dc65cf5d1..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e256m88x2e240m1_4limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fesubDisplay.log b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fesubDisplay.log
deleted file mode 100644
index bf22dbebe..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint64_t x17, uint8_t x18 = subborrow_u64(0x0, x5, x11);
- uint64_t x20, uint8_t x21 = subborrow_u64(x18, x7, x13);
- uint64_t x23, uint8_t x24 = subborrow_u64(x21, x9, x15);
- uint64_t x26, uint8_t x27 = subborrow_u64(x24, x8, x14);
- uint64_t x28 = cmovznz64(x27, 0x0, 0xffffffffffffffffL);
- uint64_t x29 = (x28 & 0xffffffffffffffffL);
- uint64_t x31, uint8_t x32 = addcarryx_u64(0x0, x17, x29);
- uint64_t x33 = (x28 & 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x20, x33);
- uint64_t x37 = (x28 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x23, x37);
- uint64_t x41 = (x28 & 0xffa7ffffffffffffL);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x26, x41);
- (Return x43, Return x39, Return x35, Return x31))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fesubDisplay.v b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fesubDisplay.v
deleted file mode 100644
index b3b8fa34f..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e256m88x2e240m1_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/py_interpreter.sh b/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/py_interpreter.sh
deleted file mode 100755
index 4df5aee31..000000000
--- a/src/Specific/montgomery64_2e256m88x2e240m1_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256 - 88*2**240 - 1' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e266m3_5limbs/CurveParameters.v b/src/Specific/montgomery64_2e266m3_5limbs/CurveParameters.v
deleted file mode 100644
index fb791dd86..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^266 - 3
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 64;
- bitwidth := 64;
- s := 2^266;
- c := [(1, 3)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e266m3_5limbs/Synthesis.v b/src/Specific/montgomery64_2e266m3_5limbs/Synthesis.v
deleted file mode 100644
index 9e57e20b5..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e266m3_5limbs.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/montgomery64_2e266m3_5limbs/compiler.sh b/src/Specific/montgomery64_2e266m3_5limbs/compiler.sh
deleted file mode 100755
index eca6a5a8c..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='34' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<266) - 3' "$@"
diff --git a/src/Specific/montgomery64_2e266m3_5limbs/compilerxx.sh b/src/Specific/montgomery64_2e266m3_5limbs/compilerxx.sh
deleted file mode 100755
index 376c8d1d2..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='34' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<266) - 3' "$@"
diff --git a/src/Specific/montgomery64_2e266m3_5limbs/feadd.c b/src/Specific/montgomery64_2e266m3_5limbs/feadd.c
deleted file mode 100644
index 74e984d17..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/feadd.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint64_t x21; uint8_t x22 = _addcarryx_u64(0x0, x5, x13, &x21);
- { uint64_t x24; uint8_t x25 = _addcarryx_u64(x22, x7, x15, &x24);
- { uint64_t x27; uint8_t x28 = _addcarryx_u64(x25, x9, x17, &x27);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x28, x11, x19, &x30);
- { uint64_t x33; uint8_t x34 = _addcarryx_u64(x31, x10, x18, &x33);
- { uint64_t x36; uint8_t x37 = _subborrow_u64(0x0, x21, 0xfffffffffffffffdL, &x36);
- { uint64_t x39; uint8_t x40 = _subborrow_u64(x37, x24, 0xffffffffffffffffL, &x39);
- { uint64_t x42; uint8_t x43 = _subborrow_u64(x40, x27, 0xffffffffffffffffL, &x42);
- { uint64_t x45; uint8_t x46 = _subborrow_u64(x43, x30, 0xffffffffffffffffL, &x45);
- { uint64_t x48; uint8_t x49 = _subborrow_u64(x46, x33, 0x3ff, &x48);
- { uint64_t _; uint8_t x52 = _subborrow_u64(x49, x34, 0x0, &_);
- { uint64_t x53 = cmovznz64(x52, x48, x33);
- { uint64_t x54 = cmovznz64(x52, x45, x30);
- { uint64_t x55 = cmovznz64(x52, x42, x27);
- { uint64_t x56 = cmovznz64(x52, x39, x24);
- { uint64_t x57 = cmovznz64(x52, x36, x21);
- out[0] = x57;
- out[1] = x56;
- out[2] = x55;
- out[3] = x54;
- out[4] = x53;
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e266m3_5limbs/feadd.v b/src/Specific/montgomery64_2e266m3_5limbs/feadd.v
deleted file mode 100644
index efe84e292..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e266m3_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e266m3_5limbs/feaddDisplay.log b/src/Specific/montgomery64_2e266m3_5limbs/feaddDisplay.log
deleted file mode 100644
index 5a46897ef..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint64_t x21, uint8_t x22 = addcarryx_u64(0x0, x5, x13);
- uint64_t x24, uint8_t x25 = addcarryx_u64(x22, x7, x15);
- uint64_t x27, uint8_t x28 = addcarryx_u64(x25, x9, x17);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x28, x11, x19);
- uint64_t x33, uint8_t x34 = addcarryx_u64(x31, x10, x18);
- uint64_t x36, uint8_t x37 = subborrow_u64(0x0, x21, 0xfffffffffffffffdL);
- uint64_t x39, uint8_t x40 = subborrow_u64(x37, x24, 0xffffffffffffffffL);
- uint64_t x42, uint8_t x43 = subborrow_u64(x40, x27, 0xffffffffffffffffL);
- uint64_t x45, uint8_t x46 = subborrow_u64(x43, x30, 0xffffffffffffffffL);
- uint64_t x48, uint8_t x49 = subborrow_u64(x46, x33, 0x3ff);
- uint64_t _, uint8_t x52 = subborrow_u64(x49, x34, 0x0);
- uint64_t x53 = cmovznz64(x52, x48, x33);
- uint64_t x54 = cmovznz64(x52, x45, x30);
- uint64_t x55 = cmovznz64(x52, x42, x27);
- uint64_t x56 = cmovznz64(x52, x39, x24);
- uint64_t x57 = cmovznz64(x52, x36, x21);
- return (x53, x54, x55, x56, x57))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e266m3_5limbs/feaddDisplay.v b/src/Specific/montgomery64_2e266m3_5limbs/feaddDisplay.v
deleted file mode 100644
index 0709cf6d0..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e266m3_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e266m3_5limbs/femul.c b/src/Specific/montgomery64_2e266m3_5limbs/femul.c
deleted file mode 100644
index fb45d44d2..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/femul.c
+++ /dev/null
@@ -1,192 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint64_t x22; uint64_t x21 = _mulx_u64(x5, x13, &x22);
- { uint64_t x25; uint64_t x24 = _mulx_u64(x5, x15, &x25);
- { uint64_t x28; uint64_t x27 = _mulx_u64(x5, x17, &x28);
- { uint64_t x31; uint64_t x30 = _mulx_u64(x5, x19, &x31);
- { uint64_t x34; uint64_t x33 = _mulx_u64(x5, x18, &x34);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(0x0, x22, x24, &x36);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x37, x25, x27, &x39);
- { uint64_t x42; uint8_t x43 = _addcarryx_u64(x40, x28, x30, &x42);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(x43, x31, x33, &x45);
- { uint64_t x48; uint8_t _ = _addcarryx_u64(0x0, x46, x34, &x48);
- { uint64_t _; uint64_t x51 = _mulx_u64(x21, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x55; uint64_t x54 = _mulx_u64(x51, 0xfffffffffffffffdL, &x55);
- { uint64_t x58; uint64_t x57 = _mulx_u64(x51, 0xffffffffffffffffL, &x58);
- { uint64_t x61; uint64_t x60 = _mulx_u64(x51, 0xffffffffffffffffL, &x61);
- { uint64_t x64; uint64_t x63 = _mulx_u64(x51, 0xffffffffffffffffL, &x64);
- { uint64_t x67; uint64_t x66 = _mulx_u64(x51, 0x3ff, &x67);
- { uint64_t x69; uint8_t x70 = _addcarryx_u64(0x0, x55, x57, &x69);
- { uint64_t x72; uint8_t x73 = _addcarryx_u64(x70, x58, x60, &x72);
- { uint64_t x75; uint8_t x76 = _addcarryx_u64(x73, x61, x63, &x75);
- { uint64_t x78; uint8_t x79 = _addcarryx_u64(x76, x64, x66, &x78);
- { uint64_t x81; uint8_t _ = _addcarryx_u64(0x0, x79, x67, &x81);
- { uint64_t _; uint8_t x85 = _addcarryx_u64(0x0, x21, x54, &_);
- { uint64_t x87; uint8_t x88 = _addcarryx_u64(x85, x36, x69, &x87);
- { uint64_t x90; uint8_t x91 = _addcarryx_u64(x88, x39, x72, &x90);
- { uint64_t x93; uint8_t x94 = _addcarryx_u64(x91, x42, x75, &x93);
- { uint64_t x96; uint8_t x97 = _addcarryx_u64(x94, x45, x78, &x96);
- { uint64_t x99; uint8_t x100 = _addcarryx_u64(x97, x48, x81, &x99);
- { uint64_t x103; uint64_t x102 = _mulx_u64(x7, x13, &x103);
- { uint64_t x106; uint64_t x105 = _mulx_u64(x7, x15, &x106);
- { uint64_t x109; uint64_t x108 = _mulx_u64(x7, x17, &x109);
- { uint64_t x112; uint64_t x111 = _mulx_u64(x7, x19, &x112);
- { uint64_t x115; uint64_t x114 = _mulx_u64(x7, x18, &x115);
- { uint64_t x117; uint8_t x118 = _addcarryx_u64(0x0, x103, x105, &x117);
- { uint64_t x120; uint8_t x121 = _addcarryx_u64(x118, x106, x108, &x120);
- { uint64_t x123; uint8_t x124 = _addcarryx_u64(x121, x109, x111, &x123);
- { uint64_t x126; uint8_t x127 = _addcarryx_u64(x124, x112, x114, &x126);
- { uint64_t x129; uint8_t _ = _addcarryx_u64(0x0, x127, x115, &x129);
- { uint64_t x132; uint8_t x133 = _addcarryx_u64(0x0, x87, x102, &x132);
- { uint64_t x135; uint8_t x136 = _addcarryx_u64(x133, x90, x117, &x135);
- { uint64_t x138; uint8_t x139 = _addcarryx_u64(x136, x93, x120, &x138);
- { uint64_t x141; uint8_t x142 = _addcarryx_u64(x139, x96, x123, &x141);
- { uint64_t x144; uint8_t x145 = _addcarryx_u64(x142, x99, x126, &x144);
- { uint64_t x147; uint8_t x148 = _addcarryx_u64(x145, x100, x129, &x147);
- { uint64_t _; uint64_t x150 = _mulx_u64(x132, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x154; uint64_t x153 = _mulx_u64(x150, 0xfffffffffffffffdL, &x154);
- { uint64_t x157; uint64_t x156 = _mulx_u64(x150, 0xffffffffffffffffL, &x157);
- { uint64_t x160; uint64_t x159 = _mulx_u64(x150, 0xffffffffffffffffL, &x160);
- { uint64_t x163; uint64_t x162 = _mulx_u64(x150, 0xffffffffffffffffL, &x163);
- { uint64_t x166; uint64_t x165 = _mulx_u64(x150, 0x3ff, &x166);
- { uint64_t x168; uint8_t x169 = _addcarryx_u64(0x0, x154, x156, &x168);
- { uint64_t x171; uint8_t x172 = _addcarryx_u64(x169, x157, x159, &x171);
- { uint64_t x174; uint8_t x175 = _addcarryx_u64(x172, x160, x162, &x174);
- { uint64_t x177; uint8_t x178 = _addcarryx_u64(x175, x163, x165, &x177);
- { uint64_t x180; uint8_t _ = _addcarryx_u64(0x0, x178, x166, &x180);
- { uint64_t _; uint8_t x184 = _addcarryx_u64(0x0, x132, x153, &_);
- { uint64_t x186; uint8_t x187 = _addcarryx_u64(x184, x135, x168, &x186);
- { uint64_t x189; uint8_t x190 = _addcarryx_u64(x187, x138, x171, &x189);
- { uint64_t x192; uint8_t x193 = _addcarryx_u64(x190, x141, x174, &x192);
- { uint64_t x195; uint8_t x196 = _addcarryx_u64(x193, x144, x177, &x195);
- { uint64_t x198; uint8_t x199 = _addcarryx_u64(x196, x147, x180, &x198);
- { uint8_t x200 = (x199 + x148);
- { uint64_t x203; uint64_t x202 = _mulx_u64(x9, x13, &x203);
- { uint64_t x206; uint64_t x205 = _mulx_u64(x9, x15, &x206);
- { uint64_t x209; uint64_t x208 = _mulx_u64(x9, x17, &x209);
- { uint64_t x212; uint64_t x211 = _mulx_u64(x9, x19, &x212);
- { uint64_t x215; uint64_t x214 = _mulx_u64(x9, x18, &x215);
- { uint64_t x217; uint8_t x218 = _addcarryx_u64(0x0, x203, x205, &x217);
- { uint64_t x220; uint8_t x221 = _addcarryx_u64(x218, x206, x208, &x220);
- { uint64_t x223; uint8_t x224 = _addcarryx_u64(x221, x209, x211, &x223);
- { uint64_t x226; uint8_t x227 = _addcarryx_u64(x224, x212, x214, &x226);
- { uint64_t x229; uint8_t _ = _addcarryx_u64(0x0, x227, x215, &x229);
- { uint64_t x232; uint8_t x233 = _addcarryx_u64(0x0, x186, x202, &x232);
- { uint64_t x235; uint8_t x236 = _addcarryx_u64(x233, x189, x217, &x235);
- { uint64_t x238; uint8_t x239 = _addcarryx_u64(x236, x192, x220, &x238);
- { uint64_t x241; uint8_t x242 = _addcarryx_u64(x239, x195, x223, &x241);
- { uint64_t x244; uint8_t x245 = _addcarryx_u64(x242, x198, x226, &x244);
- { uint64_t x247; uint8_t x248 = _addcarryx_u64(x245, x200, x229, &x247);
- { uint64_t _; uint64_t x250 = _mulx_u64(x232, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x254; uint64_t x253 = _mulx_u64(x250, 0xfffffffffffffffdL, &x254);
- { uint64_t x257; uint64_t x256 = _mulx_u64(x250, 0xffffffffffffffffL, &x257);
- { uint64_t x260; uint64_t x259 = _mulx_u64(x250, 0xffffffffffffffffL, &x260);
- { uint64_t x263; uint64_t x262 = _mulx_u64(x250, 0xffffffffffffffffL, &x263);
- { uint64_t x266; uint64_t x265 = _mulx_u64(x250, 0x3ff, &x266);
- { uint64_t x268; uint8_t x269 = _addcarryx_u64(0x0, x254, x256, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(x269, x257, x259, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x260, x262, &x274);
- { uint64_t x277; uint8_t x278 = _addcarryx_u64(x275, x263, x265, &x277);
- { uint64_t x280; uint8_t _ = _addcarryx_u64(0x0, x278, x266, &x280);
- { uint64_t _; uint8_t x284 = _addcarryx_u64(0x0, x232, x253, &_);
- { uint64_t x286; uint8_t x287 = _addcarryx_u64(x284, x235, x268, &x286);
- { uint64_t x289; uint8_t x290 = _addcarryx_u64(x287, x238, x271, &x289);
- { uint64_t x292; uint8_t x293 = _addcarryx_u64(x290, x241, x274, &x292);
- { uint64_t x295; uint8_t x296 = _addcarryx_u64(x293, x244, x277, &x295);
- { uint64_t x298; uint8_t x299 = _addcarryx_u64(x296, x247, x280, &x298);
- { uint8_t x300 = (x299 + x248);
- { uint64_t x303; uint64_t x302 = _mulx_u64(x11, x13, &x303);
- { uint64_t x306; uint64_t x305 = _mulx_u64(x11, x15, &x306);
- { uint64_t x309; uint64_t x308 = _mulx_u64(x11, x17, &x309);
- { uint64_t x312; uint64_t x311 = _mulx_u64(x11, x19, &x312);
- { uint64_t x315; uint64_t x314 = _mulx_u64(x11, x18, &x315);
- { uint64_t x317; uint8_t x318 = _addcarryx_u64(0x0, x303, x305, &x317);
- { uint64_t x320; uint8_t x321 = _addcarryx_u64(x318, x306, x308, &x320);
- { uint64_t x323; uint8_t x324 = _addcarryx_u64(x321, x309, x311, &x323);
- { uint64_t x326; uint8_t x327 = _addcarryx_u64(x324, x312, x314, &x326);
- { uint64_t x329; uint8_t _ = _addcarryx_u64(0x0, x327, x315, &x329);
- { uint64_t x332; uint8_t x333 = _addcarryx_u64(0x0, x286, x302, &x332);
- { uint64_t x335; uint8_t x336 = _addcarryx_u64(x333, x289, x317, &x335);
- { uint64_t x338; uint8_t x339 = _addcarryx_u64(x336, x292, x320, &x338);
- { uint64_t x341; uint8_t x342 = _addcarryx_u64(x339, x295, x323, &x341);
- { uint64_t x344; uint8_t x345 = _addcarryx_u64(x342, x298, x326, &x344);
- { uint64_t x347; uint8_t x348 = _addcarryx_u64(x345, x300, x329, &x347);
- { uint64_t _; uint64_t x350 = _mulx_u64(x332, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x354; uint64_t x353 = _mulx_u64(x350, 0xfffffffffffffffdL, &x354);
- { uint64_t x357; uint64_t x356 = _mulx_u64(x350, 0xffffffffffffffffL, &x357);
- { uint64_t x360; uint64_t x359 = _mulx_u64(x350, 0xffffffffffffffffL, &x360);
- { uint64_t x363; uint64_t x362 = _mulx_u64(x350, 0xffffffffffffffffL, &x363);
- { uint64_t x366; uint64_t x365 = _mulx_u64(x350, 0x3ff, &x366);
- { uint64_t x368; uint8_t x369 = _addcarryx_u64(0x0, x354, x356, &x368);
- { uint64_t x371; uint8_t x372 = _addcarryx_u64(x369, x357, x359, &x371);
- { uint64_t x374; uint8_t x375 = _addcarryx_u64(x372, x360, x362, &x374);
- { uint64_t x377; uint8_t x378 = _addcarryx_u64(x375, x363, x365, &x377);
- { uint64_t x380; uint8_t _ = _addcarryx_u64(0x0, x378, x366, &x380);
- { uint64_t _; uint8_t x384 = _addcarryx_u64(0x0, x332, x353, &_);
- { uint64_t x386; uint8_t x387 = _addcarryx_u64(x384, x335, x368, &x386);
- { uint64_t x389; uint8_t x390 = _addcarryx_u64(x387, x338, x371, &x389);
- { uint64_t x392; uint8_t x393 = _addcarryx_u64(x390, x341, x374, &x392);
- { uint64_t x395; uint8_t x396 = _addcarryx_u64(x393, x344, x377, &x395);
- { uint64_t x398; uint8_t x399 = _addcarryx_u64(x396, x347, x380, &x398);
- { uint8_t x400 = (x399 + x348);
- { uint64_t x403; uint64_t x402 = _mulx_u64(x10, x13, &x403);
- { uint64_t x406; uint64_t x405 = _mulx_u64(x10, x15, &x406);
- { uint64_t x409; uint64_t x408 = _mulx_u64(x10, x17, &x409);
- { uint64_t x412; uint64_t x411 = _mulx_u64(x10, x19, &x412);
- { uint64_t x415; uint64_t x414 = _mulx_u64(x10, x18, &x415);
- { uint64_t x417; uint8_t x418 = _addcarryx_u64(0x0, x403, x405, &x417);
- { uint64_t x420; uint8_t x421 = _addcarryx_u64(x418, x406, x408, &x420);
- { uint64_t x423; uint8_t x424 = _addcarryx_u64(x421, x409, x411, &x423);
- { uint64_t x426; uint8_t x427 = _addcarryx_u64(x424, x412, x414, &x426);
- { uint64_t x429; uint8_t _ = _addcarryx_u64(0x0, x427, x415, &x429);
- { uint64_t x432; uint8_t x433 = _addcarryx_u64(0x0, x386, x402, &x432);
- { uint64_t x435; uint8_t x436 = _addcarryx_u64(x433, x389, x417, &x435);
- { uint64_t x438; uint8_t x439 = _addcarryx_u64(x436, x392, x420, &x438);
- { uint64_t x441; uint8_t x442 = _addcarryx_u64(x439, x395, x423, &x441);
- { uint64_t x444; uint8_t x445 = _addcarryx_u64(x442, x398, x426, &x444);
- { uint64_t x447; uint8_t x448 = _addcarryx_u64(x445, x400, x429, &x447);
- { uint64_t _; uint64_t x450 = _mulx_u64(x432, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x454; uint64_t x453 = _mulx_u64(x450, 0xfffffffffffffffdL, &x454);
- { uint64_t x457; uint64_t x456 = _mulx_u64(x450, 0xffffffffffffffffL, &x457);
- { uint64_t x460; uint64_t x459 = _mulx_u64(x450, 0xffffffffffffffffL, &x460);
- { uint64_t x463; uint64_t x462 = _mulx_u64(x450, 0xffffffffffffffffL, &x463);
- { uint64_t x466; uint64_t x465 = _mulx_u64(x450, 0x3ff, &x466);
- { uint64_t x468; uint8_t x469 = _addcarryx_u64(0x0, x454, x456, &x468);
- { uint64_t x471; uint8_t x472 = _addcarryx_u64(x469, x457, x459, &x471);
- { uint64_t x474; uint8_t x475 = _addcarryx_u64(x472, x460, x462, &x474);
- { uint64_t x477; uint8_t x478 = _addcarryx_u64(x475, x463, x465, &x477);
- { uint64_t x480; uint8_t _ = _addcarryx_u64(0x0, x478, x466, &x480);
- { uint64_t _; uint8_t x484 = _addcarryx_u64(0x0, x432, x453, &_);
- { uint64_t x486; uint8_t x487 = _addcarryx_u64(x484, x435, x468, &x486);
- { uint64_t x489; uint8_t x490 = _addcarryx_u64(x487, x438, x471, &x489);
- { uint64_t x492; uint8_t x493 = _addcarryx_u64(x490, x441, x474, &x492);
- { uint64_t x495; uint8_t x496 = _addcarryx_u64(x493, x444, x477, &x495);
- { uint64_t x498; uint8_t x499 = _addcarryx_u64(x496, x447, x480, &x498);
- { uint8_t x500 = (x499 + x448);
- { uint64_t x502; uint8_t x503 = _subborrow_u64(0x0, x486, 0xfffffffffffffffdL, &x502);
- { uint64_t x505; uint8_t x506 = _subborrow_u64(x503, x489, 0xffffffffffffffffL, &x505);
- { uint64_t x508; uint8_t x509 = _subborrow_u64(x506, x492, 0xffffffffffffffffL, &x508);
- { uint64_t x511; uint8_t x512 = _subborrow_u64(x509, x495, 0xffffffffffffffffL, &x511);
- { uint64_t x514; uint8_t x515 = _subborrow_u64(x512, x498, 0x3ff, &x514);
- { uint64_t _; uint8_t x518 = _subborrow_u64(x515, x500, 0x0, &_);
- { uint64_t x519 = cmovznz64(x518, x514, x498);
- { uint64_t x520 = cmovznz64(x518, x511, x495);
- { uint64_t x521 = cmovznz64(x518, x508, x492);
- { uint64_t x522 = cmovznz64(x518, x505, x489);
- { uint64_t x523 = cmovznz64(x518, x502, x486);
- out[0] = x523;
- out[1] = x522;
- out[2] = x521;
- out[3] = x520;
- out[4] = x519;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e266m3_5limbs/femul.v b/src/Specific/montgomery64_2e266m3_5limbs/femul.v
deleted file mode 100644
index 1975c3afc..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e266m3_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e266m3_5limbs/femulDisplay.log b/src/Specific/montgomery64_2e266m3_5limbs/femulDisplay.log
deleted file mode 100644
index d80a655d8..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,181 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint64_t x21, uint64_t x22 = mulx_u64(x5, x13);
- uint64_t x24, uint64_t x25 = mulx_u64(x5, x15);
- uint64_t x27, uint64_t x28 = mulx_u64(x5, x17);
- uint64_t x30, uint64_t x31 = mulx_u64(x5, x19);
- uint64_t x33, uint64_t x34 = mulx_u64(x5, x18);
- uint64_t x36, uint8_t x37 = addcarryx_u64(0x0, x22, x24);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x37, x25, x27);
- uint64_t x42, uint8_t x43 = addcarryx_u64(x40, x28, x30);
- uint64_t x45, uint8_t x46 = addcarryx_u64(x43, x31, x33);
- uint64_t x48, uint8_t _ = addcarryx_u64(0x0, x46, x34);
- uint64_t x51, uint64_t _ = mulx_u64(x21, 0xaaaaaaaaaaaaaaabL);
- uint64_t x54, uint64_t x55 = mulx_u64(x51, 0xfffffffffffffffdL);
- uint64_t x57, uint64_t x58 = mulx_u64(x51, 0xffffffffffffffffL);
- uint64_t x60, uint64_t x61 = mulx_u64(x51, 0xffffffffffffffffL);
- uint64_t x63, uint64_t x64 = mulx_u64(x51, 0xffffffffffffffffL);
- uint64_t x66, uint64_t x67 = mulx_u64(x51, 0x3ff);
- uint64_t x69, uint8_t x70 = addcarryx_u64(0x0, x55, x57);
- uint64_t x72, uint8_t x73 = addcarryx_u64(x70, x58, x60);
- uint64_t x75, uint8_t x76 = addcarryx_u64(x73, x61, x63);
- uint64_t x78, uint8_t x79 = addcarryx_u64(x76, x64, x66);
- uint64_t x81, uint8_t _ = addcarryx_u64(0x0, x79, x67);
- uint64_t _, uint8_t x85 = addcarryx_u64(0x0, x21, x54);
- uint64_t x87, uint8_t x88 = addcarryx_u64(x85, x36, x69);
- uint64_t x90, uint8_t x91 = addcarryx_u64(x88, x39, x72);
- uint64_t x93, uint8_t x94 = addcarryx_u64(x91, x42, x75);
- uint64_t x96, uint8_t x97 = addcarryx_u64(x94, x45, x78);
- uint64_t x99, uint8_t x100 = addcarryx_u64(x97, x48, x81);
- uint64_t x102, uint64_t x103 = mulx_u64(x7, x13);
- uint64_t x105, uint64_t x106 = mulx_u64(x7, x15);
- uint64_t x108, uint64_t x109 = mulx_u64(x7, x17);
- uint64_t x111, uint64_t x112 = mulx_u64(x7, x19);
- uint64_t x114, uint64_t x115 = mulx_u64(x7, x18);
- uint64_t x117, uint8_t x118 = addcarryx_u64(0x0, x103, x105);
- uint64_t x120, uint8_t x121 = addcarryx_u64(x118, x106, x108);
- uint64_t x123, uint8_t x124 = addcarryx_u64(x121, x109, x111);
- uint64_t x126, uint8_t x127 = addcarryx_u64(x124, x112, x114);
- uint64_t x129, uint8_t _ = addcarryx_u64(0x0, x127, x115);
- uint64_t x132, uint8_t x133 = addcarryx_u64(0x0, x87, x102);
- uint64_t x135, uint8_t x136 = addcarryx_u64(x133, x90, x117);
- uint64_t x138, uint8_t x139 = addcarryx_u64(x136, x93, x120);
- uint64_t x141, uint8_t x142 = addcarryx_u64(x139, x96, x123);
- uint64_t x144, uint8_t x145 = addcarryx_u64(x142, x99, x126);
- uint64_t x147, uint8_t x148 = addcarryx_u64(x145, x100, x129);
- uint64_t x150, uint64_t _ = mulx_u64(x132, 0xaaaaaaaaaaaaaaabL);
- uint64_t x153, uint64_t x154 = mulx_u64(x150, 0xfffffffffffffffdL);
- uint64_t x156, uint64_t x157 = mulx_u64(x150, 0xffffffffffffffffL);
- uint64_t x159, uint64_t x160 = mulx_u64(x150, 0xffffffffffffffffL);
- uint64_t x162, uint64_t x163 = mulx_u64(x150, 0xffffffffffffffffL);
- uint64_t x165, uint64_t x166 = mulx_u64(x150, 0x3ff);
- uint64_t x168, uint8_t x169 = addcarryx_u64(0x0, x154, x156);
- uint64_t x171, uint8_t x172 = addcarryx_u64(x169, x157, x159);
- uint64_t x174, uint8_t x175 = addcarryx_u64(x172, x160, x162);
- uint64_t x177, uint8_t x178 = addcarryx_u64(x175, x163, x165);
- uint64_t x180, uint8_t _ = addcarryx_u64(0x0, x178, x166);
- uint64_t _, uint8_t x184 = addcarryx_u64(0x0, x132, x153);
- uint64_t x186, uint8_t x187 = addcarryx_u64(x184, x135, x168);
- uint64_t x189, uint8_t x190 = addcarryx_u64(x187, x138, x171);
- uint64_t x192, uint8_t x193 = addcarryx_u64(x190, x141, x174);
- uint64_t x195, uint8_t x196 = addcarryx_u64(x193, x144, x177);
- uint64_t x198, uint8_t x199 = addcarryx_u64(x196, x147, x180);
- uint8_t x200 = (x199 + x148);
- uint64_t x202, uint64_t x203 = mulx_u64(x9, x13);
- uint64_t x205, uint64_t x206 = mulx_u64(x9, x15);
- uint64_t x208, uint64_t x209 = mulx_u64(x9, x17);
- uint64_t x211, uint64_t x212 = mulx_u64(x9, x19);
- uint64_t x214, uint64_t x215 = mulx_u64(x9, x18);
- uint64_t x217, uint8_t x218 = addcarryx_u64(0x0, x203, x205);
- uint64_t x220, uint8_t x221 = addcarryx_u64(x218, x206, x208);
- uint64_t x223, uint8_t x224 = addcarryx_u64(x221, x209, x211);
- uint64_t x226, uint8_t x227 = addcarryx_u64(x224, x212, x214);
- uint64_t x229, uint8_t _ = addcarryx_u64(0x0, x227, x215);
- uint64_t x232, uint8_t x233 = addcarryx_u64(0x0, x186, x202);
- uint64_t x235, uint8_t x236 = addcarryx_u64(x233, x189, x217);
- uint64_t x238, uint8_t x239 = addcarryx_u64(x236, x192, x220);
- uint64_t x241, uint8_t x242 = addcarryx_u64(x239, x195, x223);
- uint64_t x244, uint8_t x245 = addcarryx_u64(x242, x198, x226);
- uint64_t x247, uint8_t x248 = addcarryx_u64(x245, x200, x229);
- uint64_t x250, uint64_t _ = mulx_u64(x232, 0xaaaaaaaaaaaaaaabL);
- uint64_t x253, uint64_t x254 = mulx_u64(x250, 0xfffffffffffffffdL);
- uint64_t x256, uint64_t x257 = mulx_u64(x250, 0xffffffffffffffffL);
- uint64_t x259, uint64_t x260 = mulx_u64(x250, 0xffffffffffffffffL);
- uint64_t x262, uint64_t x263 = mulx_u64(x250, 0xffffffffffffffffL);
- uint64_t x265, uint64_t x266 = mulx_u64(x250, 0x3ff);
- uint64_t x268, uint8_t x269 = addcarryx_u64(0x0, x254, x256);
- uint64_t x271, uint8_t x272 = addcarryx_u64(x269, x257, x259);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x260, x262);
- uint64_t x277, uint8_t x278 = addcarryx_u64(x275, x263, x265);
- uint64_t x280, uint8_t _ = addcarryx_u64(0x0, x278, x266);
- uint64_t _, uint8_t x284 = addcarryx_u64(0x0, x232, x253);
- uint64_t x286, uint8_t x287 = addcarryx_u64(x284, x235, x268);
- uint64_t x289, uint8_t x290 = addcarryx_u64(x287, x238, x271);
- uint64_t x292, uint8_t x293 = addcarryx_u64(x290, x241, x274);
- uint64_t x295, uint8_t x296 = addcarryx_u64(x293, x244, x277);
- uint64_t x298, uint8_t x299 = addcarryx_u64(x296, x247, x280);
- uint8_t x300 = (x299 + x248);
- uint64_t x302, uint64_t x303 = mulx_u64(x11, x13);
- uint64_t x305, uint64_t x306 = mulx_u64(x11, x15);
- uint64_t x308, uint64_t x309 = mulx_u64(x11, x17);
- uint64_t x311, uint64_t x312 = mulx_u64(x11, x19);
- uint64_t x314, uint64_t x315 = mulx_u64(x11, x18);
- uint64_t x317, uint8_t x318 = addcarryx_u64(0x0, x303, x305);
- uint64_t x320, uint8_t x321 = addcarryx_u64(x318, x306, x308);
- uint64_t x323, uint8_t x324 = addcarryx_u64(x321, x309, x311);
- uint64_t x326, uint8_t x327 = addcarryx_u64(x324, x312, x314);
- uint64_t x329, uint8_t _ = addcarryx_u64(0x0, x327, x315);
- uint64_t x332, uint8_t x333 = addcarryx_u64(0x0, x286, x302);
- uint64_t x335, uint8_t x336 = addcarryx_u64(x333, x289, x317);
- uint64_t x338, uint8_t x339 = addcarryx_u64(x336, x292, x320);
- uint64_t x341, uint8_t x342 = addcarryx_u64(x339, x295, x323);
- uint64_t x344, uint8_t x345 = addcarryx_u64(x342, x298, x326);
- uint64_t x347, uint8_t x348 = addcarryx_u64(x345, x300, x329);
- uint64_t x350, uint64_t _ = mulx_u64(x332, 0xaaaaaaaaaaaaaaabL);
- uint64_t x353, uint64_t x354 = mulx_u64(x350, 0xfffffffffffffffdL);
- uint64_t x356, uint64_t x357 = mulx_u64(x350, 0xffffffffffffffffL);
- uint64_t x359, uint64_t x360 = mulx_u64(x350, 0xffffffffffffffffL);
- uint64_t x362, uint64_t x363 = mulx_u64(x350, 0xffffffffffffffffL);
- uint64_t x365, uint64_t x366 = mulx_u64(x350, 0x3ff);
- uint64_t x368, uint8_t x369 = addcarryx_u64(0x0, x354, x356);
- uint64_t x371, uint8_t x372 = addcarryx_u64(x369, x357, x359);
- uint64_t x374, uint8_t x375 = addcarryx_u64(x372, x360, x362);
- uint64_t x377, uint8_t x378 = addcarryx_u64(x375, x363, x365);
- uint64_t x380, uint8_t _ = addcarryx_u64(0x0, x378, x366);
- uint64_t _, uint8_t x384 = addcarryx_u64(0x0, x332, x353);
- uint64_t x386, uint8_t x387 = addcarryx_u64(x384, x335, x368);
- uint64_t x389, uint8_t x390 = addcarryx_u64(x387, x338, x371);
- uint64_t x392, uint8_t x393 = addcarryx_u64(x390, x341, x374);
- uint64_t x395, uint8_t x396 = addcarryx_u64(x393, x344, x377);
- uint64_t x398, uint8_t x399 = addcarryx_u64(x396, x347, x380);
- uint8_t x400 = (x399 + x348);
- uint64_t x402, uint64_t x403 = mulx_u64(x10, x13);
- uint64_t x405, uint64_t x406 = mulx_u64(x10, x15);
- uint64_t x408, uint64_t x409 = mulx_u64(x10, x17);
- uint64_t x411, uint64_t x412 = mulx_u64(x10, x19);
- uint64_t x414, uint64_t x415 = mulx_u64(x10, x18);
- uint64_t x417, uint8_t x418 = addcarryx_u64(0x0, x403, x405);
- uint64_t x420, uint8_t x421 = addcarryx_u64(x418, x406, x408);
- uint64_t x423, uint8_t x424 = addcarryx_u64(x421, x409, x411);
- uint64_t x426, uint8_t x427 = addcarryx_u64(x424, x412, x414);
- uint64_t x429, uint8_t _ = addcarryx_u64(0x0, x427, x415);
- uint64_t x432, uint8_t x433 = addcarryx_u64(0x0, x386, x402);
- uint64_t x435, uint8_t x436 = addcarryx_u64(x433, x389, x417);
- uint64_t x438, uint8_t x439 = addcarryx_u64(x436, x392, x420);
- uint64_t x441, uint8_t x442 = addcarryx_u64(x439, x395, x423);
- uint64_t x444, uint8_t x445 = addcarryx_u64(x442, x398, x426);
- uint64_t x447, uint8_t x448 = addcarryx_u64(x445, x400, x429);
- uint64_t x450, uint64_t _ = mulx_u64(x432, 0xaaaaaaaaaaaaaaabL);
- uint64_t x453, uint64_t x454 = mulx_u64(x450, 0xfffffffffffffffdL);
- uint64_t x456, uint64_t x457 = mulx_u64(x450, 0xffffffffffffffffL);
- uint64_t x459, uint64_t x460 = mulx_u64(x450, 0xffffffffffffffffL);
- uint64_t x462, uint64_t x463 = mulx_u64(x450, 0xffffffffffffffffL);
- uint64_t x465, uint64_t x466 = mulx_u64(x450, 0x3ff);
- uint64_t x468, uint8_t x469 = addcarryx_u64(0x0, x454, x456);
- uint64_t x471, uint8_t x472 = addcarryx_u64(x469, x457, x459);
- uint64_t x474, uint8_t x475 = addcarryx_u64(x472, x460, x462);
- uint64_t x477, uint8_t x478 = addcarryx_u64(x475, x463, x465);
- uint64_t x480, uint8_t _ = addcarryx_u64(0x0, x478, x466);
- uint64_t _, uint8_t x484 = addcarryx_u64(0x0, x432, x453);
- uint64_t x486, uint8_t x487 = addcarryx_u64(x484, x435, x468);
- uint64_t x489, uint8_t x490 = addcarryx_u64(x487, x438, x471);
- uint64_t x492, uint8_t x493 = addcarryx_u64(x490, x441, x474);
- uint64_t x495, uint8_t x496 = addcarryx_u64(x493, x444, x477);
- uint64_t x498, uint8_t x499 = addcarryx_u64(x496, x447, x480);
- uint8_t x500 = (x499 + x448);
- uint64_t x502, uint8_t x503 = subborrow_u64(0x0, x486, 0xfffffffffffffffdL);
- uint64_t x505, uint8_t x506 = subborrow_u64(x503, x489, 0xffffffffffffffffL);
- uint64_t x508, uint8_t x509 = subborrow_u64(x506, x492, 0xffffffffffffffffL);
- uint64_t x511, uint8_t x512 = subborrow_u64(x509, x495, 0xffffffffffffffffL);
- uint64_t x514, uint8_t x515 = subborrow_u64(x512, x498, 0x3ff);
- uint64_t _, uint8_t x518 = subborrow_u64(x515, x500, 0x0);
- uint64_t x519 = cmovznz64(x518, x514, x498);
- uint64_t x520 = cmovznz64(x518, x511, x495);
- uint64_t x521 = cmovznz64(x518, x508, x492);
- uint64_t x522 = cmovznz64(x518, x505, x489);
- uint64_t x523 = cmovznz64(x518, x502, x486);
- return (x519, x520, x521, x522, x523))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e266m3_5limbs/femulDisplay.v b/src/Specific/montgomery64_2e266m3_5limbs/femulDisplay.v
deleted file mode 100644
index 41c7cfa21..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e266m3_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e266m3_5limbs/fenz.c b/src/Specific/montgomery64_2e266m3_5limbs/fenz.c
deleted file mode 100644
index 0a779af7c..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/fenz.c
+++ /dev/null
@@ -1,13 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x9 = (x8 | x7);
- { uint64_t x10 = (x6 | x9);
- { uint64_t x11 = (x4 | x10);
- { uint64_t x12 = (x2 | x11);
- out[0] = x12;
- }}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e266m3_5limbs/fenz.v b/src/Specific/montgomery64_2e266m3_5limbs/fenz.v
deleted file mode 100644
index 6a7fd8054..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e266m3_5limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e266m3_5limbs/fenzDisplay.log b/src/Specific/montgomery64_2e266m3_5limbs/fenzDisplay.log
deleted file mode 100644
index 4f18295b0..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/fenzDisplay.log
+++ /dev/null
@@ -1,11 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x9 = (x8 | x7);
- uint64_t x10 = (x6 | x9);
- uint64_t x11 = (x4 | x10);
- uint64_t x12 = (x2 | x11);
- return x12)
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e266m3_5limbs/fenzDisplay.v b/src/Specific/montgomery64_2e266m3_5limbs/fenzDisplay.v
deleted file mode 100644
index b2bf9998f..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e266m3_5limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e266m3_5limbs/feopp.c b/src/Specific/montgomery64_2e266m3_5limbs/feopp.c
deleted file mode 100644
index 73d56aa32..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/feopp.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void feopp(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10; uint8_t x11 = _subborrow_u64(0x0, 0x0, x2, &x10);
- { uint64_t x13; uint8_t x14 = _subborrow_u64(x11, 0x0, x4, &x13);
- { uint64_t x16; uint8_t x17 = _subborrow_u64(x14, 0x0, x6, &x16);
- { uint64_t x19; uint8_t x20 = _subborrow_u64(x17, 0x0, x8, &x19);
- { uint64_t x22; uint8_t x23 = _subborrow_u64(x20, 0x0, x7, &x22);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0xfffffffffffffffdL);
- { uint64_t x27; uint8_t x28 = _addcarryx_u64(0x0, x10, x25, &x27);
- { uint64_t x29 = (x24 & 0xffffffffffffffffL);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(x28, x13, x29, &x31);
- { uint64_t x33 = (x24 & 0xffffffffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x16, x33, &x35);
- { uint64_t x37 = (x24 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x19, x37, &x39);
- { uint64_t x41 = (x24 & 0x3ff);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x22, x41, &x43);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e266m3_5limbs/feopp.v b/src/Specific/montgomery64_2e266m3_5limbs/feopp.v
deleted file mode 100644
index 7a3ba7eaf..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e266m3_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e266m3_5limbs/feoppDisplay.log b/src/Specific/montgomery64_2e266m3_5limbs/feoppDisplay.log
deleted file mode 100644
index fe7f00b63..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/feoppDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x13, uint8_t x14 = subborrow_u64(x11, 0x0, x4);
- uint64_t x16, uint8_t x17 = subborrow_u64(x14, 0x0, x6);
- uint64_t x19, uint8_t x20 = subborrow_u64(x17, 0x0, x8);
- uint64_t x22, uint8_t x23 = subborrow_u64(x20, 0x0, x7);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0xfffffffffffffffdL);
- uint64_t x27, uint8_t x28 = addcarryx_u64(0x0, x10, x25);
- uint64_t x29 = (x24 & 0xffffffffffffffffL);
- uint64_t x31, uint8_t x32 = addcarryx_u64(x28, x13, x29);
- uint64_t x33 = (x24 & 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x16, x33);
- uint64_t x37 = (x24 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x19, x37);
- uint64_t x41 = (x24 & 0x3ff);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x22, x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e266m3_5limbs/feoppDisplay.v b/src/Specific/montgomery64_2e266m3_5limbs/feoppDisplay.v
deleted file mode 100644
index f78a4f0ba..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e266m3_5limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e266m3_5limbs/fesquare.c b/src/Specific/montgomery64_2e266m3_5limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e266m3_5limbs/fesub.c b/src/Specific/montgomery64_2e266m3_5limbs/fesub.c
deleted file mode 100644
index 17bb0bd90..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/fesub.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint64_t x21; uint8_t x22 = _subborrow_u64(0x0, x5, x13, &x21);
- { uint64_t x24; uint8_t x25 = _subborrow_u64(x22, x7, x15, &x24);
- { uint64_t x27; uint8_t x28 = _subborrow_u64(x25, x9, x17, &x27);
- { uint64_t x30; uint8_t x31 = _subborrow_u64(x28, x11, x19, &x30);
- { uint64_t x33; uint8_t x34 = _subborrow_u64(x31, x10, x18, &x33);
- { uint64_t x35 = cmovznz64(x34, 0x0, 0xffffffffffffffffL);
- { uint64_t x36 = (x35 & 0xfffffffffffffffdL);
- { uint64_t x38; uint8_t x39 = _addcarryx_u64(0x0, x21, x36, &x38);
- { uint64_t x40 = (x35 & 0xffffffffffffffffL);
- { uint64_t x42; uint8_t x43 = _addcarryx_u64(x39, x24, x40, &x42);
- { uint64_t x44 = (x35 & 0xffffffffffffffffL);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x43, x27, x44, &x46);
- { uint64_t x48 = (x35 & 0xffffffffffffffffL);
- { uint64_t x50; uint8_t x51 = _addcarryx_u64(x47, x30, x48, &x50);
- { uint64_t x52 = (x35 & 0x3ff);
- { uint64_t x54; uint8_t _ = _addcarryx_u64(x51, x33, x52, &x54);
- out[0] = x38;
- out[1] = x42;
- out[2] = x46;
- out[3] = x50;
- out[4] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e266m3_5limbs/fesub.v b/src/Specific/montgomery64_2e266m3_5limbs/fesub.v
deleted file mode 100644
index 3bcf49286..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e266m3_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e266m3_5limbs/fesubDisplay.log b/src/Specific/montgomery64_2e266m3_5limbs/fesubDisplay.log
deleted file mode 100644
index 695b18f9a..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint64_t x21, uint8_t x22 = subborrow_u64(0x0, x5, x13);
- uint64_t x24, uint8_t x25 = subborrow_u64(x22, x7, x15);
- uint64_t x27, uint8_t x28 = subborrow_u64(x25, x9, x17);
- uint64_t x30, uint8_t x31 = subborrow_u64(x28, x11, x19);
- uint64_t x33, uint8_t x34 = subborrow_u64(x31, x10, x18);
- uint64_t x35 = cmovznz64(x34, 0x0, 0xffffffffffffffffL);
- uint64_t x36 = (x35 & 0xfffffffffffffffdL);
- uint64_t x38, uint8_t x39 = addcarryx_u64(0x0, x21, x36);
- uint64_t x40 = (x35 & 0xffffffffffffffffL);
- uint64_t x42, uint8_t x43 = addcarryx_u64(x39, x24, x40);
- uint64_t x44 = (x35 & 0xffffffffffffffffL);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x43, x27, x44);
- uint64_t x48 = (x35 & 0xffffffffffffffffL);
- uint64_t x50, uint8_t x51 = addcarryx_u64(x47, x30, x48);
- uint64_t x52 = (x35 & 0x3ff);
- uint64_t x54, uint8_t _ = addcarryx_u64(x51, x33, x52);
- (Return x54, Return x50, Return x46, Return x42, Return x38))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e266m3_5limbs/fesubDisplay.v b/src/Specific/montgomery64_2e266m3_5limbs/fesubDisplay.v
deleted file mode 100644
index b866dff96..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e266m3_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e266m3_5limbs/py_interpreter.sh b/src/Specific/montgomery64_2e266m3_5limbs/py_interpreter.sh
deleted file mode 100755
index 5a0ea5b68..000000000
--- a/src/Specific/montgomery64_2e266m3_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**266 - 3' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e285m9_5limbs/CurveParameters.v b/src/Specific/montgomery64_2e285m9_5limbs/CurveParameters.v
deleted file mode 100644
index 2fa34e17e..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^285 - 9
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 64;
- bitwidth := 64;
- s := 2^285;
- c := [(1, 9)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e285m9_5limbs/Synthesis.v b/src/Specific/montgomery64_2e285m9_5limbs/Synthesis.v
deleted file mode 100644
index 95e54093e..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e285m9_5limbs.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/montgomery64_2e285m9_5limbs/compiler.sh b/src/Specific/montgomery64_2e285m9_5limbs/compiler.sh
deleted file mode 100755
index 7cb6f23b0..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='36' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<285) - 9' "$@"
diff --git a/src/Specific/montgomery64_2e285m9_5limbs/compilerxx.sh b/src/Specific/montgomery64_2e285m9_5limbs/compilerxx.sh
deleted file mode 100755
index b19826115..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='36' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<285) - 9' "$@"
diff --git a/src/Specific/montgomery64_2e285m9_5limbs/feadd.c b/src/Specific/montgomery64_2e285m9_5limbs/feadd.c
deleted file mode 100644
index 9ab6448cf..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/feadd.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint64_t x21; uint8_t x22 = _addcarryx_u64(0x0, x5, x13, &x21);
- { uint64_t x24; uint8_t x25 = _addcarryx_u64(x22, x7, x15, &x24);
- { uint64_t x27; uint8_t x28 = _addcarryx_u64(x25, x9, x17, &x27);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x28, x11, x19, &x30);
- { uint64_t x33; uint8_t x34 = _addcarryx_u64(x31, x10, x18, &x33);
- { uint64_t x36; uint8_t x37 = _subborrow_u64(0x0, x21, 0xfffffffffffffff7L, &x36);
- { uint64_t x39; uint8_t x40 = _subborrow_u64(x37, x24, 0xffffffffffffffffL, &x39);
- { uint64_t x42; uint8_t x43 = _subborrow_u64(x40, x27, 0xffffffffffffffffL, &x42);
- { uint64_t x45; uint8_t x46 = _subborrow_u64(x43, x30, 0xffffffffffffffffL, &x45);
- { uint64_t x48; uint8_t x49 = _subborrow_u64(x46, x33, 0x1fffffff, &x48);
- { uint64_t _; uint8_t x52 = _subborrow_u64(x49, x34, 0x0, &_);
- { uint64_t x53 = cmovznz64(x52, x48, x33);
- { uint64_t x54 = cmovznz64(x52, x45, x30);
- { uint64_t x55 = cmovznz64(x52, x42, x27);
- { uint64_t x56 = cmovznz64(x52, x39, x24);
- { uint64_t x57 = cmovznz64(x52, x36, x21);
- out[0] = x57;
- out[1] = x56;
- out[2] = x55;
- out[3] = x54;
- out[4] = x53;
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e285m9_5limbs/feadd.v b/src/Specific/montgomery64_2e285m9_5limbs/feadd.v
deleted file mode 100644
index 0fad18600..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e285m9_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e285m9_5limbs/feaddDisplay.log b/src/Specific/montgomery64_2e285m9_5limbs/feaddDisplay.log
deleted file mode 100644
index 5d3ecfdc2..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint64_t x21, uint8_t x22 = addcarryx_u64(0x0, x5, x13);
- uint64_t x24, uint8_t x25 = addcarryx_u64(x22, x7, x15);
- uint64_t x27, uint8_t x28 = addcarryx_u64(x25, x9, x17);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x28, x11, x19);
- uint64_t x33, uint8_t x34 = addcarryx_u64(x31, x10, x18);
- uint64_t x36, uint8_t x37 = subborrow_u64(0x0, x21, 0xfffffffffffffff7L);
- uint64_t x39, uint8_t x40 = subborrow_u64(x37, x24, 0xffffffffffffffffL);
- uint64_t x42, uint8_t x43 = subborrow_u64(x40, x27, 0xffffffffffffffffL);
- uint64_t x45, uint8_t x46 = subborrow_u64(x43, x30, 0xffffffffffffffffL);
- uint64_t x48, uint8_t x49 = subborrow_u64(x46, x33, 0x1fffffff);
- uint64_t _, uint8_t x52 = subborrow_u64(x49, x34, 0x0);
- uint64_t x53 = cmovznz64(x52, x48, x33);
- uint64_t x54 = cmovznz64(x52, x45, x30);
- uint64_t x55 = cmovznz64(x52, x42, x27);
- uint64_t x56 = cmovznz64(x52, x39, x24);
- uint64_t x57 = cmovznz64(x52, x36, x21);
- return (x53, x54, x55, x56, x57))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e285m9_5limbs/feaddDisplay.v b/src/Specific/montgomery64_2e285m9_5limbs/feaddDisplay.v
deleted file mode 100644
index 60c2ea779..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e285m9_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e285m9_5limbs/femul.c b/src/Specific/montgomery64_2e285m9_5limbs/femul.c
deleted file mode 100644
index 2adf31093..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/femul.c
+++ /dev/null
@@ -1,192 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint64_t x22; uint64_t x21 = _mulx_u64(x5, x13, &x22);
- { uint64_t x25; uint64_t x24 = _mulx_u64(x5, x15, &x25);
- { uint64_t x28; uint64_t x27 = _mulx_u64(x5, x17, &x28);
- { uint64_t x31; uint64_t x30 = _mulx_u64(x5, x19, &x31);
- { uint64_t x34; uint64_t x33 = _mulx_u64(x5, x18, &x34);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(0x0, x22, x24, &x36);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x37, x25, x27, &x39);
- { uint64_t x42; uint8_t x43 = _addcarryx_u64(x40, x28, x30, &x42);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(x43, x31, x33, &x45);
- { uint64_t x48; uint8_t _ = _addcarryx_u64(0x0, x46, x34, &x48);
- { uint64_t _; uint64_t x51 = _mulx_u64(x21, 0x8e38e38e38e38e39L, &_);
- { uint64_t x55; uint64_t x54 = _mulx_u64(x51, 0xfffffffffffffff7L, &x55);
- { uint64_t x58; uint64_t x57 = _mulx_u64(x51, 0xffffffffffffffffL, &x58);
- { uint64_t x61; uint64_t x60 = _mulx_u64(x51, 0xffffffffffffffffL, &x61);
- { uint64_t x64; uint64_t x63 = _mulx_u64(x51, 0xffffffffffffffffL, &x64);
- { uint64_t x67; uint64_t x66 = _mulx_u64(x51, 0x1fffffff, &x67);
- { uint64_t x69; uint8_t x70 = _addcarryx_u64(0x0, x55, x57, &x69);
- { uint64_t x72; uint8_t x73 = _addcarryx_u64(x70, x58, x60, &x72);
- { uint64_t x75; uint8_t x76 = _addcarryx_u64(x73, x61, x63, &x75);
- { uint64_t x78; uint8_t x79 = _addcarryx_u64(x76, x64, x66, &x78);
- { uint64_t x81; uint8_t _ = _addcarryx_u64(0x0, x79, x67, &x81);
- { uint64_t _; uint8_t x85 = _addcarryx_u64(0x0, x21, x54, &_);
- { uint64_t x87; uint8_t x88 = _addcarryx_u64(x85, x36, x69, &x87);
- { uint64_t x90; uint8_t x91 = _addcarryx_u64(x88, x39, x72, &x90);
- { uint64_t x93; uint8_t x94 = _addcarryx_u64(x91, x42, x75, &x93);
- { uint64_t x96; uint8_t x97 = _addcarryx_u64(x94, x45, x78, &x96);
- { uint64_t x99; uint8_t x100 = _addcarryx_u64(x97, x48, x81, &x99);
- { uint64_t x103; uint64_t x102 = _mulx_u64(x7, x13, &x103);
- { uint64_t x106; uint64_t x105 = _mulx_u64(x7, x15, &x106);
- { uint64_t x109; uint64_t x108 = _mulx_u64(x7, x17, &x109);
- { uint64_t x112; uint64_t x111 = _mulx_u64(x7, x19, &x112);
- { uint64_t x115; uint64_t x114 = _mulx_u64(x7, x18, &x115);
- { uint64_t x117; uint8_t x118 = _addcarryx_u64(0x0, x103, x105, &x117);
- { uint64_t x120; uint8_t x121 = _addcarryx_u64(x118, x106, x108, &x120);
- { uint64_t x123; uint8_t x124 = _addcarryx_u64(x121, x109, x111, &x123);
- { uint64_t x126; uint8_t x127 = _addcarryx_u64(x124, x112, x114, &x126);
- { uint64_t x129; uint8_t _ = _addcarryx_u64(0x0, x127, x115, &x129);
- { uint64_t x132; uint8_t x133 = _addcarryx_u64(0x0, x87, x102, &x132);
- { uint64_t x135; uint8_t x136 = _addcarryx_u64(x133, x90, x117, &x135);
- { uint64_t x138; uint8_t x139 = _addcarryx_u64(x136, x93, x120, &x138);
- { uint64_t x141; uint8_t x142 = _addcarryx_u64(x139, x96, x123, &x141);
- { uint64_t x144; uint8_t x145 = _addcarryx_u64(x142, x99, x126, &x144);
- { uint64_t x147; uint8_t x148 = _addcarryx_u64(x145, x100, x129, &x147);
- { uint64_t _; uint64_t x150 = _mulx_u64(x132, 0x8e38e38e38e38e39L, &_);
- { uint64_t x154; uint64_t x153 = _mulx_u64(x150, 0xfffffffffffffff7L, &x154);
- { uint64_t x157; uint64_t x156 = _mulx_u64(x150, 0xffffffffffffffffL, &x157);
- { uint64_t x160; uint64_t x159 = _mulx_u64(x150, 0xffffffffffffffffL, &x160);
- { uint64_t x163; uint64_t x162 = _mulx_u64(x150, 0xffffffffffffffffL, &x163);
- { uint64_t x166; uint64_t x165 = _mulx_u64(x150, 0x1fffffff, &x166);
- { uint64_t x168; uint8_t x169 = _addcarryx_u64(0x0, x154, x156, &x168);
- { uint64_t x171; uint8_t x172 = _addcarryx_u64(x169, x157, x159, &x171);
- { uint64_t x174; uint8_t x175 = _addcarryx_u64(x172, x160, x162, &x174);
- { uint64_t x177; uint8_t x178 = _addcarryx_u64(x175, x163, x165, &x177);
- { uint64_t x180; uint8_t _ = _addcarryx_u64(0x0, x178, x166, &x180);
- { uint64_t _; uint8_t x184 = _addcarryx_u64(0x0, x132, x153, &_);
- { uint64_t x186; uint8_t x187 = _addcarryx_u64(x184, x135, x168, &x186);
- { uint64_t x189; uint8_t x190 = _addcarryx_u64(x187, x138, x171, &x189);
- { uint64_t x192; uint8_t x193 = _addcarryx_u64(x190, x141, x174, &x192);
- { uint64_t x195; uint8_t x196 = _addcarryx_u64(x193, x144, x177, &x195);
- { uint64_t x198; uint8_t x199 = _addcarryx_u64(x196, x147, x180, &x198);
- { uint8_t x200 = (x199 + x148);
- { uint64_t x203; uint64_t x202 = _mulx_u64(x9, x13, &x203);
- { uint64_t x206; uint64_t x205 = _mulx_u64(x9, x15, &x206);
- { uint64_t x209; uint64_t x208 = _mulx_u64(x9, x17, &x209);
- { uint64_t x212; uint64_t x211 = _mulx_u64(x9, x19, &x212);
- { uint64_t x215; uint64_t x214 = _mulx_u64(x9, x18, &x215);
- { uint64_t x217; uint8_t x218 = _addcarryx_u64(0x0, x203, x205, &x217);
- { uint64_t x220; uint8_t x221 = _addcarryx_u64(x218, x206, x208, &x220);
- { uint64_t x223; uint8_t x224 = _addcarryx_u64(x221, x209, x211, &x223);
- { uint64_t x226; uint8_t x227 = _addcarryx_u64(x224, x212, x214, &x226);
- { uint64_t x229; uint8_t _ = _addcarryx_u64(0x0, x227, x215, &x229);
- { uint64_t x232; uint8_t x233 = _addcarryx_u64(0x0, x186, x202, &x232);
- { uint64_t x235; uint8_t x236 = _addcarryx_u64(x233, x189, x217, &x235);
- { uint64_t x238; uint8_t x239 = _addcarryx_u64(x236, x192, x220, &x238);
- { uint64_t x241; uint8_t x242 = _addcarryx_u64(x239, x195, x223, &x241);
- { uint64_t x244; uint8_t x245 = _addcarryx_u64(x242, x198, x226, &x244);
- { uint64_t x247; uint8_t x248 = _addcarryx_u64(x245, x200, x229, &x247);
- { uint64_t _; uint64_t x250 = _mulx_u64(x232, 0x8e38e38e38e38e39L, &_);
- { uint64_t x254; uint64_t x253 = _mulx_u64(x250, 0xfffffffffffffff7L, &x254);
- { uint64_t x257; uint64_t x256 = _mulx_u64(x250, 0xffffffffffffffffL, &x257);
- { uint64_t x260; uint64_t x259 = _mulx_u64(x250, 0xffffffffffffffffL, &x260);
- { uint64_t x263; uint64_t x262 = _mulx_u64(x250, 0xffffffffffffffffL, &x263);
- { uint64_t x266; uint64_t x265 = _mulx_u64(x250, 0x1fffffff, &x266);
- { uint64_t x268; uint8_t x269 = _addcarryx_u64(0x0, x254, x256, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(x269, x257, x259, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x260, x262, &x274);
- { uint64_t x277; uint8_t x278 = _addcarryx_u64(x275, x263, x265, &x277);
- { uint64_t x280; uint8_t _ = _addcarryx_u64(0x0, x278, x266, &x280);
- { uint64_t _; uint8_t x284 = _addcarryx_u64(0x0, x232, x253, &_);
- { uint64_t x286; uint8_t x287 = _addcarryx_u64(x284, x235, x268, &x286);
- { uint64_t x289; uint8_t x290 = _addcarryx_u64(x287, x238, x271, &x289);
- { uint64_t x292; uint8_t x293 = _addcarryx_u64(x290, x241, x274, &x292);
- { uint64_t x295; uint8_t x296 = _addcarryx_u64(x293, x244, x277, &x295);
- { uint64_t x298; uint8_t x299 = _addcarryx_u64(x296, x247, x280, &x298);
- { uint8_t x300 = (x299 + x248);
- { uint64_t x303; uint64_t x302 = _mulx_u64(x11, x13, &x303);
- { uint64_t x306; uint64_t x305 = _mulx_u64(x11, x15, &x306);
- { uint64_t x309; uint64_t x308 = _mulx_u64(x11, x17, &x309);
- { uint64_t x312; uint64_t x311 = _mulx_u64(x11, x19, &x312);
- { uint64_t x315; uint64_t x314 = _mulx_u64(x11, x18, &x315);
- { uint64_t x317; uint8_t x318 = _addcarryx_u64(0x0, x303, x305, &x317);
- { uint64_t x320; uint8_t x321 = _addcarryx_u64(x318, x306, x308, &x320);
- { uint64_t x323; uint8_t x324 = _addcarryx_u64(x321, x309, x311, &x323);
- { uint64_t x326; uint8_t x327 = _addcarryx_u64(x324, x312, x314, &x326);
- { uint64_t x329; uint8_t _ = _addcarryx_u64(0x0, x327, x315, &x329);
- { uint64_t x332; uint8_t x333 = _addcarryx_u64(0x0, x286, x302, &x332);
- { uint64_t x335; uint8_t x336 = _addcarryx_u64(x333, x289, x317, &x335);
- { uint64_t x338; uint8_t x339 = _addcarryx_u64(x336, x292, x320, &x338);
- { uint64_t x341; uint8_t x342 = _addcarryx_u64(x339, x295, x323, &x341);
- { uint64_t x344; uint8_t x345 = _addcarryx_u64(x342, x298, x326, &x344);
- { uint64_t x347; uint8_t x348 = _addcarryx_u64(x345, x300, x329, &x347);
- { uint64_t _; uint64_t x350 = _mulx_u64(x332, 0x8e38e38e38e38e39L, &_);
- { uint64_t x354; uint64_t x353 = _mulx_u64(x350, 0xfffffffffffffff7L, &x354);
- { uint64_t x357; uint64_t x356 = _mulx_u64(x350, 0xffffffffffffffffL, &x357);
- { uint64_t x360; uint64_t x359 = _mulx_u64(x350, 0xffffffffffffffffL, &x360);
- { uint64_t x363; uint64_t x362 = _mulx_u64(x350, 0xffffffffffffffffL, &x363);
- { uint64_t x366; uint64_t x365 = _mulx_u64(x350, 0x1fffffff, &x366);
- { uint64_t x368; uint8_t x369 = _addcarryx_u64(0x0, x354, x356, &x368);
- { uint64_t x371; uint8_t x372 = _addcarryx_u64(x369, x357, x359, &x371);
- { uint64_t x374; uint8_t x375 = _addcarryx_u64(x372, x360, x362, &x374);
- { uint64_t x377; uint8_t x378 = _addcarryx_u64(x375, x363, x365, &x377);
- { uint64_t x380; uint8_t _ = _addcarryx_u64(0x0, x378, x366, &x380);
- { uint64_t _; uint8_t x384 = _addcarryx_u64(0x0, x332, x353, &_);
- { uint64_t x386; uint8_t x387 = _addcarryx_u64(x384, x335, x368, &x386);
- { uint64_t x389; uint8_t x390 = _addcarryx_u64(x387, x338, x371, &x389);
- { uint64_t x392; uint8_t x393 = _addcarryx_u64(x390, x341, x374, &x392);
- { uint64_t x395; uint8_t x396 = _addcarryx_u64(x393, x344, x377, &x395);
- { uint64_t x398; uint8_t x399 = _addcarryx_u64(x396, x347, x380, &x398);
- { uint8_t x400 = (x399 + x348);
- { uint64_t x403; uint64_t x402 = _mulx_u64(x10, x13, &x403);
- { uint64_t x406; uint64_t x405 = _mulx_u64(x10, x15, &x406);
- { uint64_t x409; uint64_t x408 = _mulx_u64(x10, x17, &x409);
- { uint64_t x412; uint64_t x411 = _mulx_u64(x10, x19, &x412);
- { uint64_t x415; uint64_t x414 = _mulx_u64(x10, x18, &x415);
- { uint64_t x417; uint8_t x418 = _addcarryx_u64(0x0, x403, x405, &x417);
- { uint64_t x420; uint8_t x421 = _addcarryx_u64(x418, x406, x408, &x420);
- { uint64_t x423; uint8_t x424 = _addcarryx_u64(x421, x409, x411, &x423);
- { uint64_t x426; uint8_t x427 = _addcarryx_u64(x424, x412, x414, &x426);
- { uint64_t x429; uint8_t _ = _addcarryx_u64(0x0, x427, x415, &x429);
- { uint64_t x432; uint8_t x433 = _addcarryx_u64(0x0, x386, x402, &x432);
- { uint64_t x435; uint8_t x436 = _addcarryx_u64(x433, x389, x417, &x435);
- { uint64_t x438; uint8_t x439 = _addcarryx_u64(x436, x392, x420, &x438);
- { uint64_t x441; uint8_t x442 = _addcarryx_u64(x439, x395, x423, &x441);
- { uint64_t x444; uint8_t x445 = _addcarryx_u64(x442, x398, x426, &x444);
- { uint64_t x447; uint8_t x448 = _addcarryx_u64(x445, x400, x429, &x447);
- { uint64_t _; uint64_t x450 = _mulx_u64(x432, 0x8e38e38e38e38e39L, &_);
- { uint64_t x454; uint64_t x453 = _mulx_u64(x450, 0xfffffffffffffff7L, &x454);
- { uint64_t x457; uint64_t x456 = _mulx_u64(x450, 0xffffffffffffffffL, &x457);
- { uint64_t x460; uint64_t x459 = _mulx_u64(x450, 0xffffffffffffffffL, &x460);
- { uint64_t x463; uint64_t x462 = _mulx_u64(x450, 0xffffffffffffffffL, &x463);
- { uint64_t x466; uint64_t x465 = _mulx_u64(x450, 0x1fffffff, &x466);
- { uint64_t x468; uint8_t x469 = _addcarryx_u64(0x0, x454, x456, &x468);
- { uint64_t x471; uint8_t x472 = _addcarryx_u64(x469, x457, x459, &x471);
- { uint64_t x474; uint8_t x475 = _addcarryx_u64(x472, x460, x462, &x474);
- { uint64_t x477; uint8_t x478 = _addcarryx_u64(x475, x463, x465, &x477);
- { uint64_t x480; uint8_t _ = _addcarryx_u64(0x0, x478, x466, &x480);
- { uint64_t _; uint8_t x484 = _addcarryx_u64(0x0, x432, x453, &_);
- { uint64_t x486; uint8_t x487 = _addcarryx_u64(x484, x435, x468, &x486);
- { uint64_t x489; uint8_t x490 = _addcarryx_u64(x487, x438, x471, &x489);
- { uint64_t x492; uint8_t x493 = _addcarryx_u64(x490, x441, x474, &x492);
- { uint64_t x495; uint8_t x496 = _addcarryx_u64(x493, x444, x477, &x495);
- { uint64_t x498; uint8_t x499 = _addcarryx_u64(x496, x447, x480, &x498);
- { uint8_t x500 = (x499 + x448);
- { uint64_t x502; uint8_t x503 = _subborrow_u64(0x0, x486, 0xfffffffffffffff7L, &x502);
- { uint64_t x505; uint8_t x506 = _subborrow_u64(x503, x489, 0xffffffffffffffffL, &x505);
- { uint64_t x508; uint8_t x509 = _subborrow_u64(x506, x492, 0xffffffffffffffffL, &x508);
- { uint64_t x511; uint8_t x512 = _subborrow_u64(x509, x495, 0xffffffffffffffffL, &x511);
- { uint64_t x514; uint8_t x515 = _subborrow_u64(x512, x498, 0x1fffffff, &x514);
- { uint64_t _; uint8_t x518 = _subborrow_u64(x515, x500, 0x0, &_);
- { uint64_t x519 = cmovznz64(x518, x514, x498);
- { uint64_t x520 = cmovznz64(x518, x511, x495);
- { uint64_t x521 = cmovznz64(x518, x508, x492);
- { uint64_t x522 = cmovznz64(x518, x505, x489);
- { uint64_t x523 = cmovznz64(x518, x502, x486);
- out[0] = x523;
- out[1] = x522;
- out[2] = x521;
- out[3] = x520;
- out[4] = x519;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e285m9_5limbs/femul.v b/src/Specific/montgomery64_2e285m9_5limbs/femul.v
deleted file mode 100644
index 7e9c75d66..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e285m9_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e285m9_5limbs/femulDisplay.log b/src/Specific/montgomery64_2e285m9_5limbs/femulDisplay.log
deleted file mode 100644
index c6e894c2b..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,181 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint64_t x21, uint64_t x22 = mulx_u64(x5, x13);
- uint64_t x24, uint64_t x25 = mulx_u64(x5, x15);
- uint64_t x27, uint64_t x28 = mulx_u64(x5, x17);
- uint64_t x30, uint64_t x31 = mulx_u64(x5, x19);
- uint64_t x33, uint64_t x34 = mulx_u64(x5, x18);
- uint64_t x36, uint8_t x37 = addcarryx_u64(0x0, x22, x24);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x37, x25, x27);
- uint64_t x42, uint8_t x43 = addcarryx_u64(x40, x28, x30);
- uint64_t x45, uint8_t x46 = addcarryx_u64(x43, x31, x33);
- uint64_t x48, uint8_t _ = addcarryx_u64(0x0, x46, x34);
- uint64_t x51, uint64_t _ = mulx_u64(x21, 0x8e38e38e38e38e39L);
- uint64_t x54, uint64_t x55 = mulx_u64(x51, 0xfffffffffffffff7L);
- uint64_t x57, uint64_t x58 = mulx_u64(x51, 0xffffffffffffffffL);
- uint64_t x60, uint64_t x61 = mulx_u64(x51, 0xffffffffffffffffL);
- uint64_t x63, uint64_t x64 = mulx_u64(x51, 0xffffffffffffffffL);
- uint64_t x66, uint64_t x67 = mulx_u64(x51, 0x1fffffff);
- uint64_t x69, uint8_t x70 = addcarryx_u64(0x0, x55, x57);
- uint64_t x72, uint8_t x73 = addcarryx_u64(x70, x58, x60);
- uint64_t x75, uint8_t x76 = addcarryx_u64(x73, x61, x63);
- uint64_t x78, uint8_t x79 = addcarryx_u64(x76, x64, x66);
- uint64_t x81, uint8_t _ = addcarryx_u64(0x0, x79, x67);
- uint64_t _, uint8_t x85 = addcarryx_u64(0x0, x21, x54);
- uint64_t x87, uint8_t x88 = addcarryx_u64(x85, x36, x69);
- uint64_t x90, uint8_t x91 = addcarryx_u64(x88, x39, x72);
- uint64_t x93, uint8_t x94 = addcarryx_u64(x91, x42, x75);
- uint64_t x96, uint8_t x97 = addcarryx_u64(x94, x45, x78);
- uint64_t x99, uint8_t x100 = addcarryx_u64(x97, x48, x81);
- uint64_t x102, uint64_t x103 = mulx_u64(x7, x13);
- uint64_t x105, uint64_t x106 = mulx_u64(x7, x15);
- uint64_t x108, uint64_t x109 = mulx_u64(x7, x17);
- uint64_t x111, uint64_t x112 = mulx_u64(x7, x19);
- uint64_t x114, uint64_t x115 = mulx_u64(x7, x18);
- uint64_t x117, uint8_t x118 = addcarryx_u64(0x0, x103, x105);
- uint64_t x120, uint8_t x121 = addcarryx_u64(x118, x106, x108);
- uint64_t x123, uint8_t x124 = addcarryx_u64(x121, x109, x111);
- uint64_t x126, uint8_t x127 = addcarryx_u64(x124, x112, x114);
- uint64_t x129, uint8_t _ = addcarryx_u64(0x0, x127, x115);
- uint64_t x132, uint8_t x133 = addcarryx_u64(0x0, x87, x102);
- uint64_t x135, uint8_t x136 = addcarryx_u64(x133, x90, x117);
- uint64_t x138, uint8_t x139 = addcarryx_u64(x136, x93, x120);
- uint64_t x141, uint8_t x142 = addcarryx_u64(x139, x96, x123);
- uint64_t x144, uint8_t x145 = addcarryx_u64(x142, x99, x126);
- uint64_t x147, uint8_t x148 = addcarryx_u64(x145, x100, x129);
- uint64_t x150, uint64_t _ = mulx_u64(x132, 0x8e38e38e38e38e39L);
- uint64_t x153, uint64_t x154 = mulx_u64(x150, 0xfffffffffffffff7L);
- uint64_t x156, uint64_t x157 = mulx_u64(x150, 0xffffffffffffffffL);
- uint64_t x159, uint64_t x160 = mulx_u64(x150, 0xffffffffffffffffL);
- uint64_t x162, uint64_t x163 = mulx_u64(x150, 0xffffffffffffffffL);
- uint64_t x165, uint64_t x166 = mulx_u64(x150, 0x1fffffff);
- uint64_t x168, uint8_t x169 = addcarryx_u64(0x0, x154, x156);
- uint64_t x171, uint8_t x172 = addcarryx_u64(x169, x157, x159);
- uint64_t x174, uint8_t x175 = addcarryx_u64(x172, x160, x162);
- uint64_t x177, uint8_t x178 = addcarryx_u64(x175, x163, x165);
- uint64_t x180, uint8_t _ = addcarryx_u64(0x0, x178, x166);
- uint64_t _, uint8_t x184 = addcarryx_u64(0x0, x132, x153);
- uint64_t x186, uint8_t x187 = addcarryx_u64(x184, x135, x168);
- uint64_t x189, uint8_t x190 = addcarryx_u64(x187, x138, x171);
- uint64_t x192, uint8_t x193 = addcarryx_u64(x190, x141, x174);
- uint64_t x195, uint8_t x196 = addcarryx_u64(x193, x144, x177);
- uint64_t x198, uint8_t x199 = addcarryx_u64(x196, x147, x180);
- uint8_t x200 = (x199 + x148);
- uint64_t x202, uint64_t x203 = mulx_u64(x9, x13);
- uint64_t x205, uint64_t x206 = mulx_u64(x9, x15);
- uint64_t x208, uint64_t x209 = mulx_u64(x9, x17);
- uint64_t x211, uint64_t x212 = mulx_u64(x9, x19);
- uint64_t x214, uint64_t x215 = mulx_u64(x9, x18);
- uint64_t x217, uint8_t x218 = addcarryx_u64(0x0, x203, x205);
- uint64_t x220, uint8_t x221 = addcarryx_u64(x218, x206, x208);
- uint64_t x223, uint8_t x224 = addcarryx_u64(x221, x209, x211);
- uint64_t x226, uint8_t x227 = addcarryx_u64(x224, x212, x214);
- uint64_t x229, uint8_t _ = addcarryx_u64(0x0, x227, x215);
- uint64_t x232, uint8_t x233 = addcarryx_u64(0x0, x186, x202);
- uint64_t x235, uint8_t x236 = addcarryx_u64(x233, x189, x217);
- uint64_t x238, uint8_t x239 = addcarryx_u64(x236, x192, x220);
- uint64_t x241, uint8_t x242 = addcarryx_u64(x239, x195, x223);
- uint64_t x244, uint8_t x245 = addcarryx_u64(x242, x198, x226);
- uint64_t x247, uint8_t x248 = addcarryx_u64(x245, x200, x229);
- uint64_t x250, uint64_t _ = mulx_u64(x232, 0x8e38e38e38e38e39L);
- uint64_t x253, uint64_t x254 = mulx_u64(x250, 0xfffffffffffffff7L);
- uint64_t x256, uint64_t x257 = mulx_u64(x250, 0xffffffffffffffffL);
- uint64_t x259, uint64_t x260 = mulx_u64(x250, 0xffffffffffffffffL);
- uint64_t x262, uint64_t x263 = mulx_u64(x250, 0xffffffffffffffffL);
- uint64_t x265, uint64_t x266 = mulx_u64(x250, 0x1fffffff);
- uint64_t x268, uint8_t x269 = addcarryx_u64(0x0, x254, x256);
- uint64_t x271, uint8_t x272 = addcarryx_u64(x269, x257, x259);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x260, x262);
- uint64_t x277, uint8_t x278 = addcarryx_u64(x275, x263, x265);
- uint64_t x280, uint8_t _ = addcarryx_u64(0x0, x278, x266);
- uint64_t _, uint8_t x284 = addcarryx_u64(0x0, x232, x253);
- uint64_t x286, uint8_t x287 = addcarryx_u64(x284, x235, x268);
- uint64_t x289, uint8_t x290 = addcarryx_u64(x287, x238, x271);
- uint64_t x292, uint8_t x293 = addcarryx_u64(x290, x241, x274);
- uint64_t x295, uint8_t x296 = addcarryx_u64(x293, x244, x277);
- uint64_t x298, uint8_t x299 = addcarryx_u64(x296, x247, x280);
- uint8_t x300 = (x299 + x248);
- uint64_t x302, uint64_t x303 = mulx_u64(x11, x13);
- uint64_t x305, uint64_t x306 = mulx_u64(x11, x15);
- uint64_t x308, uint64_t x309 = mulx_u64(x11, x17);
- uint64_t x311, uint64_t x312 = mulx_u64(x11, x19);
- uint64_t x314, uint64_t x315 = mulx_u64(x11, x18);
- uint64_t x317, uint8_t x318 = addcarryx_u64(0x0, x303, x305);
- uint64_t x320, uint8_t x321 = addcarryx_u64(x318, x306, x308);
- uint64_t x323, uint8_t x324 = addcarryx_u64(x321, x309, x311);
- uint64_t x326, uint8_t x327 = addcarryx_u64(x324, x312, x314);
- uint64_t x329, uint8_t _ = addcarryx_u64(0x0, x327, x315);
- uint64_t x332, uint8_t x333 = addcarryx_u64(0x0, x286, x302);
- uint64_t x335, uint8_t x336 = addcarryx_u64(x333, x289, x317);
- uint64_t x338, uint8_t x339 = addcarryx_u64(x336, x292, x320);
- uint64_t x341, uint8_t x342 = addcarryx_u64(x339, x295, x323);
- uint64_t x344, uint8_t x345 = addcarryx_u64(x342, x298, x326);
- uint64_t x347, uint8_t x348 = addcarryx_u64(x345, x300, x329);
- uint64_t x350, uint64_t _ = mulx_u64(x332, 0x8e38e38e38e38e39L);
- uint64_t x353, uint64_t x354 = mulx_u64(x350, 0xfffffffffffffff7L);
- uint64_t x356, uint64_t x357 = mulx_u64(x350, 0xffffffffffffffffL);
- uint64_t x359, uint64_t x360 = mulx_u64(x350, 0xffffffffffffffffL);
- uint64_t x362, uint64_t x363 = mulx_u64(x350, 0xffffffffffffffffL);
- uint64_t x365, uint64_t x366 = mulx_u64(x350, 0x1fffffff);
- uint64_t x368, uint8_t x369 = addcarryx_u64(0x0, x354, x356);
- uint64_t x371, uint8_t x372 = addcarryx_u64(x369, x357, x359);
- uint64_t x374, uint8_t x375 = addcarryx_u64(x372, x360, x362);
- uint64_t x377, uint8_t x378 = addcarryx_u64(x375, x363, x365);
- uint64_t x380, uint8_t _ = addcarryx_u64(0x0, x378, x366);
- uint64_t _, uint8_t x384 = addcarryx_u64(0x0, x332, x353);
- uint64_t x386, uint8_t x387 = addcarryx_u64(x384, x335, x368);
- uint64_t x389, uint8_t x390 = addcarryx_u64(x387, x338, x371);
- uint64_t x392, uint8_t x393 = addcarryx_u64(x390, x341, x374);
- uint64_t x395, uint8_t x396 = addcarryx_u64(x393, x344, x377);
- uint64_t x398, uint8_t x399 = addcarryx_u64(x396, x347, x380);
- uint8_t x400 = (x399 + x348);
- uint64_t x402, uint64_t x403 = mulx_u64(x10, x13);
- uint64_t x405, uint64_t x406 = mulx_u64(x10, x15);
- uint64_t x408, uint64_t x409 = mulx_u64(x10, x17);
- uint64_t x411, uint64_t x412 = mulx_u64(x10, x19);
- uint64_t x414, uint64_t x415 = mulx_u64(x10, x18);
- uint64_t x417, uint8_t x418 = addcarryx_u64(0x0, x403, x405);
- uint64_t x420, uint8_t x421 = addcarryx_u64(x418, x406, x408);
- uint64_t x423, uint8_t x424 = addcarryx_u64(x421, x409, x411);
- uint64_t x426, uint8_t x427 = addcarryx_u64(x424, x412, x414);
- uint64_t x429, uint8_t _ = addcarryx_u64(0x0, x427, x415);
- uint64_t x432, uint8_t x433 = addcarryx_u64(0x0, x386, x402);
- uint64_t x435, uint8_t x436 = addcarryx_u64(x433, x389, x417);
- uint64_t x438, uint8_t x439 = addcarryx_u64(x436, x392, x420);
- uint64_t x441, uint8_t x442 = addcarryx_u64(x439, x395, x423);
- uint64_t x444, uint8_t x445 = addcarryx_u64(x442, x398, x426);
- uint64_t x447, uint8_t x448 = addcarryx_u64(x445, x400, x429);
- uint64_t x450, uint64_t _ = mulx_u64(x432, 0x8e38e38e38e38e39L);
- uint64_t x453, uint64_t x454 = mulx_u64(x450, 0xfffffffffffffff7L);
- uint64_t x456, uint64_t x457 = mulx_u64(x450, 0xffffffffffffffffL);
- uint64_t x459, uint64_t x460 = mulx_u64(x450, 0xffffffffffffffffL);
- uint64_t x462, uint64_t x463 = mulx_u64(x450, 0xffffffffffffffffL);
- uint64_t x465, uint64_t x466 = mulx_u64(x450, 0x1fffffff);
- uint64_t x468, uint8_t x469 = addcarryx_u64(0x0, x454, x456);
- uint64_t x471, uint8_t x472 = addcarryx_u64(x469, x457, x459);
- uint64_t x474, uint8_t x475 = addcarryx_u64(x472, x460, x462);
- uint64_t x477, uint8_t x478 = addcarryx_u64(x475, x463, x465);
- uint64_t x480, uint8_t _ = addcarryx_u64(0x0, x478, x466);
- uint64_t _, uint8_t x484 = addcarryx_u64(0x0, x432, x453);
- uint64_t x486, uint8_t x487 = addcarryx_u64(x484, x435, x468);
- uint64_t x489, uint8_t x490 = addcarryx_u64(x487, x438, x471);
- uint64_t x492, uint8_t x493 = addcarryx_u64(x490, x441, x474);
- uint64_t x495, uint8_t x496 = addcarryx_u64(x493, x444, x477);
- uint64_t x498, uint8_t x499 = addcarryx_u64(x496, x447, x480);
- uint8_t x500 = (x499 + x448);
- uint64_t x502, uint8_t x503 = subborrow_u64(0x0, x486, 0xfffffffffffffff7L);
- uint64_t x505, uint8_t x506 = subborrow_u64(x503, x489, 0xffffffffffffffffL);
- uint64_t x508, uint8_t x509 = subborrow_u64(x506, x492, 0xffffffffffffffffL);
- uint64_t x511, uint8_t x512 = subborrow_u64(x509, x495, 0xffffffffffffffffL);
- uint64_t x514, uint8_t x515 = subborrow_u64(x512, x498, 0x1fffffff);
- uint64_t _, uint8_t x518 = subborrow_u64(x515, x500, 0x0);
- uint64_t x519 = cmovznz64(x518, x514, x498);
- uint64_t x520 = cmovznz64(x518, x511, x495);
- uint64_t x521 = cmovznz64(x518, x508, x492);
- uint64_t x522 = cmovznz64(x518, x505, x489);
- uint64_t x523 = cmovznz64(x518, x502, x486);
- return (x519, x520, x521, x522, x523))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e285m9_5limbs/femulDisplay.v b/src/Specific/montgomery64_2e285m9_5limbs/femulDisplay.v
deleted file mode 100644
index c32eb0420..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e285m9_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e285m9_5limbs/fenz.c b/src/Specific/montgomery64_2e285m9_5limbs/fenz.c
deleted file mode 100644
index 0a779af7c..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/fenz.c
+++ /dev/null
@@ -1,13 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x9 = (x8 | x7);
- { uint64_t x10 = (x6 | x9);
- { uint64_t x11 = (x4 | x10);
- { uint64_t x12 = (x2 | x11);
- out[0] = x12;
- }}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e285m9_5limbs/fenz.v b/src/Specific/montgomery64_2e285m9_5limbs/fenz.v
deleted file mode 100644
index 287d4dd67..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e285m9_5limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e285m9_5limbs/fenzDisplay.log b/src/Specific/montgomery64_2e285m9_5limbs/fenzDisplay.log
deleted file mode 100644
index 4f18295b0..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/fenzDisplay.log
+++ /dev/null
@@ -1,11 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x9 = (x8 | x7);
- uint64_t x10 = (x6 | x9);
- uint64_t x11 = (x4 | x10);
- uint64_t x12 = (x2 | x11);
- return x12)
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e285m9_5limbs/fenzDisplay.v b/src/Specific/montgomery64_2e285m9_5limbs/fenzDisplay.v
deleted file mode 100644
index f8efe8625..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e285m9_5limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e285m9_5limbs/feopp.c b/src/Specific/montgomery64_2e285m9_5limbs/feopp.c
deleted file mode 100644
index 64e1b5bd1..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/feopp.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void feopp(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10; uint8_t x11 = _subborrow_u64(0x0, 0x0, x2, &x10);
- { uint64_t x13; uint8_t x14 = _subborrow_u64(x11, 0x0, x4, &x13);
- { uint64_t x16; uint8_t x17 = _subborrow_u64(x14, 0x0, x6, &x16);
- { uint64_t x19; uint8_t x20 = _subborrow_u64(x17, 0x0, x8, &x19);
- { uint64_t x22; uint8_t x23 = _subborrow_u64(x20, 0x0, x7, &x22);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0xfffffffffffffff7L);
- { uint64_t x27; uint8_t x28 = _addcarryx_u64(0x0, x10, x25, &x27);
- { uint64_t x29 = (x24 & 0xffffffffffffffffL);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(x28, x13, x29, &x31);
- { uint64_t x33 = (x24 & 0xffffffffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x16, x33, &x35);
- { uint64_t x37 = (x24 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x19, x37, &x39);
- { uint64_t x41 = (x24 & 0x1fffffff);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x22, x41, &x43);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e285m9_5limbs/feopp.v b/src/Specific/montgomery64_2e285m9_5limbs/feopp.v
deleted file mode 100644
index b1ead836d..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e285m9_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e285m9_5limbs/feoppDisplay.log b/src/Specific/montgomery64_2e285m9_5limbs/feoppDisplay.log
deleted file mode 100644
index 68ec2f162..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/feoppDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x13, uint8_t x14 = subborrow_u64(x11, 0x0, x4);
- uint64_t x16, uint8_t x17 = subborrow_u64(x14, 0x0, x6);
- uint64_t x19, uint8_t x20 = subborrow_u64(x17, 0x0, x8);
- uint64_t x22, uint8_t x23 = subborrow_u64(x20, 0x0, x7);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0xfffffffffffffff7L);
- uint64_t x27, uint8_t x28 = addcarryx_u64(0x0, x10, x25);
- uint64_t x29 = (x24 & 0xffffffffffffffffL);
- uint64_t x31, uint8_t x32 = addcarryx_u64(x28, x13, x29);
- uint64_t x33 = (x24 & 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x16, x33);
- uint64_t x37 = (x24 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x19, x37);
- uint64_t x41 = (x24 & 0x1fffffff);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x22, x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e285m9_5limbs/feoppDisplay.v b/src/Specific/montgomery64_2e285m9_5limbs/feoppDisplay.v
deleted file mode 100644
index 91850b52e..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e285m9_5limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e285m9_5limbs/fesquare.c b/src/Specific/montgomery64_2e285m9_5limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e285m9_5limbs/fesub.c b/src/Specific/montgomery64_2e285m9_5limbs/fesub.c
deleted file mode 100644
index 12c16d5f5..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/fesub.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint64_t x21; uint8_t x22 = _subborrow_u64(0x0, x5, x13, &x21);
- { uint64_t x24; uint8_t x25 = _subborrow_u64(x22, x7, x15, &x24);
- { uint64_t x27; uint8_t x28 = _subborrow_u64(x25, x9, x17, &x27);
- { uint64_t x30; uint8_t x31 = _subborrow_u64(x28, x11, x19, &x30);
- { uint64_t x33; uint8_t x34 = _subborrow_u64(x31, x10, x18, &x33);
- { uint64_t x35 = cmovznz64(x34, 0x0, 0xffffffffffffffffL);
- { uint64_t x36 = (x35 & 0xfffffffffffffff7L);
- { uint64_t x38; uint8_t x39 = _addcarryx_u64(0x0, x21, x36, &x38);
- { uint64_t x40 = (x35 & 0xffffffffffffffffL);
- { uint64_t x42; uint8_t x43 = _addcarryx_u64(x39, x24, x40, &x42);
- { uint64_t x44 = (x35 & 0xffffffffffffffffL);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x43, x27, x44, &x46);
- { uint64_t x48 = (x35 & 0xffffffffffffffffL);
- { uint64_t x50; uint8_t x51 = _addcarryx_u64(x47, x30, x48, &x50);
- { uint64_t x52 = (x35 & 0x1fffffff);
- { uint64_t x54; uint8_t _ = _addcarryx_u64(x51, x33, x52, &x54);
- out[0] = x38;
- out[1] = x42;
- out[2] = x46;
- out[3] = x50;
- out[4] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e285m9_5limbs/fesub.v b/src/Specific/montgomery64_2e285m9_5limbs/fesub.v
deleted file mode 100644
index 18a2560bf..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e285m9_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e285m9_5limbs/fesubDisplay.log b/src/Specific/montgomery64_2e285m9_5limbs/fesubDisplay.log
deleted file mode 100644
index f6cdb966c..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint64_t x21, uint8_t x22 = subborrow_u64(0x0, x5, x13);
- uint64_t x24, uint8_t x25 = subborrow_u64(x22, x7, x15);
- uint64_t x27, uint8_t x28 = subborrow_u64(x25, x9, x17);
- uint64_t x30, uint8_t x31 = subborrow_u64(x28, x11, x19);
- uint64_t x33, uint8_t x34 = subborrow_u64(x31, x10, x18);
- uint64_t x35 = cmovznz64(x34, 0x0, 0xffffffffffffffffL);
- uint64_t x36 = (x35 & 0xfffffffffffffff7L);
- uint64_t x38, uint8_t x39 = addcarryx_u64(0x0, x21, x36);
- uint64_t x40 = (x35 & 0xffffffffffffffffL);
- uint64_t x42, uint8_t x43 = addcarryx_u64(x39, x24, x40);
- uint64_t x44 = (x35 & 0xffffffffffffffffL);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x43, x27, x44);
- uint64_t x48 = (x35 & 0xffffffffffffffffL);
- uint64_t x50, uint8_t x51 = addcarryx_u64(x47, x30, x48);
- uint64_t x52 = (x35 & 0x1fffffff);
- uint64_t x54, uint8_t _ = addcarryx_u64(x51, x33, x52);
- (Return x54, Return x50, Return x46, Return x42, Return x38))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e285m9_5limbs/fesubDisplay.v b/src/Specific/montgomery64_2e285m9_5limbs/fesubDisplay.v
deleted file mode 100644
index 06b1e8d3e..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e285m9_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e285m9_5limbs/py_interpreter.sh b/src/Specific/montgomery64_2e285m9_5limbs/py_interpreter.sh
deleted file mode 100755
index 0202a546c..000000000
--- a/src/Specific/montgomery64_2e285m9_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**285 - 9' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e291m19_5limbs/CurveParameters.v b/src/Specific/montgomery64_2e291m19_5limbs/CurveParameters.v
deleted file mode 100644
index 8067dfdd2..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^291 - 19
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 64;
- bitwidth := 64;
- s := 2^291;
- c := [(1, 19)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e291m19_5limbs/Synthesis.v b/src/Specific/montgomery64_2e291m19_5limbs/Synthesis.v
deleted file mode 100644
index 671fc7f80..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e291m19_5limbs.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/montgomery64_2e291m19_5limbs/compiler.sh b/src/Specific/montgomery64_2e291m19_5limbs/compiler.sh
deleted file mode 100755
index c8e3f48cc..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='37' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<291) - 19' "$@"
diff --git a/src/Specific/montgomery64_2e291m19_5limbs/compilerxx.sh b/src/Specific/montgomery64_2e291m19_5limbs/compilerxx.sh
deleted file mode 100755
index bb4ef6c5a..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='37' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<291) - 19' "$@"
diff --git a/src/Specific/montgomery64_2e291m19_5limbs/feadd.c b/src/Specific/montgomery64_2e291m19_5limbs/feadd.c
deleted file mode 100644
index d7626cf52..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/feadd.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint64_t x21; uint8_t x22 = _addcarryx_u64(0x0, x5, x13, &x21);
- { uint64_t x24; uint8_t x25 = _addcarryx_u64(x22, x7, x15, &x24);
- { uint64_t x27; uint8_t x28 = _addcarryx_u64(x25, x9, x17, &x27);
- { uint64_t x30; uint8_t x31 = _addcarryx_u64(x28, x11, x19, &x30);
- { uint64_t x33; uint8_t x34 = _addcarryx_u64(x31, x10, x18, &x33);
- { uint64_t x36; uint8_t x37 = _subborrow_u64(0x0, x21, 0xffffffffffffffedL, &x36);
- { uint64_t x39; uint8_t x40 = _subborrow_u64(x37, x24, 0xffffffffffffffffL, &x39);
- { uint64_t x42; uint8_t x43 = _subborrow_u64(x40, x27, 0xffffffffffffffffL, &x42);
- { uint64_t x45; uint8_t x46 = _subborrow_u64(x43, x30, 0xffffffffffffffffL, &x45);
- { uint64_t x48; uint8_t x49 = _subborrow_u64(x46, x33, 0x7ffffffff, &x48);
- { uint64_t _; uint8_t x52 = _subborrow_u64(x49, x34, 0x0, &_);
- { uint64_t x53 = cmovznz64(x52, x48, x33);
- { uint64_t x54 = cmovznz64(x52, x45, x30);
- { uint64_t x55 = cmovznz64(x52, x42, x27);
- { uint64_t x56 = cmovznz64(x52, x39, x24);
- { uint64_t x57 = cmovznz64(x52, x36, x21);
- out[0] = x57;
- out[1] = x56;
- out[2] = x55;
- out[3] = x54;
- out[4] = x53;
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e291m19_5limbs/feadd.v b/src/Specific/montgomery64_2e291m19_5limbs/feadd.v
deleted file mode 100644
index 0dfaf4578..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e291m19_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e291m19_5limbs/feaddDisplay.log b/src/Specific/montgomery64_2e291m19_5limbs/feaddDisplay.log
deleted file mode 100644
index 0475ac351..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint64_t x21, uint8_t x22 = addcarryx_u64(0x0, x5, x13);
- uint64_t x24, uint8_t x25 = addcarryx_u64(x22, x7, x15);
- uint64_t x27, uint8_t x28 = addcarryx_u64(x25, x9, x17);
- uint64_t x30, uint8_t x31 = addcarryx_u64(x28, x11, x19);
- uint64_t x33, uint8_t x34 = addcarryx_u64(x31, x10, x18);
- uint64_t x36, uint8_t x37 = subborrow_u64(0x0, x21, 0xffffffffffffffedL);
- uint64_t x39, uint8_t x40 = subborrow_u64(x37, x24, 0xffffffffffffffffL);
- uint64_t x42, uint8_t x43 = subborrow_u64(x40, x27, 0xffffffffffffffffL);
- uint64_t x45, uint8_t x46 = subborrow_u64(x43, x30, 0xffffffffffffffffL);
- uint64_t x48, uint8_t x49 = subborrow_u64(x46, x33, 0x7ffffffff);
- uint64_t _, uint8_t x52 = subborrow_u64(x49, x34, 0x0);
- uint64_t x53 = cmovznz64(x52, x48, x33);
- uint64_t x54 = cmovznz64(x52, x45, x30);
- uint64_t x55 = cmovznz64(x52, x42, x27);
- uint64_t x56 = cmovznz64(x52, x39, x24);
- uint64_t x57 = cmovznz64(x52, x36, x21);
- return (x53, x54, x55, x56, x57))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e291m19_5limbs/feaddDisplay.v b/src/Specific/montgomery64_2e291m19_5limbs/feaddDisplay.v
deleted file mode 100644
index becefa76d..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e291m19_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e291m19_5limbs/femul.c b/src/Specific/montgomery64_2e291m19_5limbs/femul.c
deleted file mode 100644
index 13d0393aa..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/femul.c
+++ /dev/null
@@ -1,192 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint64_t x22; uint64_t x21 = _mulx_u64(x5, x13, &x22);
- { uint64_t x25; uint64_t x24 = _mulx_u64(x5, x15, &x25);
- { uint64_t x28; uint64_t x27 = _mulx_u64(x5, x17, &x28);
- { uint64_t x31; uint64_t x30 = _mulx_u64(x5, x19, &x31);
- { uint64_t x34; uint64_t x33 = _mulx_u64(x5, x18, &x34);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(0x0, x22, x24, &x36);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x37, x25, x27, &x39);
- { uint64_t x42; uint8_t x43 = _addcarryx_u64(x40, x28, x30, &x42);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(x43, x31, x33, &x45);
- { uint64_t x48; uint8_t _ = _addcarryx_u64(0x0, x46, x34, &x48);
- { uint64_t _; uint64_t x51 = _mulx_u64(x21, 0x86bca1af286bca1bL, &_);
- { uint64_t x55; uint64_t x54 = _mulx_u64(x51, 0xffffffffffffffedL, &x55);
- { uint64_t x58; uint64_t x57 = _mulx_u64(x51, 0xffffffffffffffffL, &x58);
- { uint64_t x61; uint64_t x60 = _mulx_u64(x51, 0xffffffffffffffffL, &x61);
- { uint64_t x64; uint64_t x63 = _mulx_u64(x51, 0xffffffffffffffffL, &x64);
- { uint64_t x67; uint64_t x66 = _mulx_u64(x51, 0x7ffffffff, &x67);
- { uint64_t x69; uint8_t x70 = _addcarryx_u64(0x0, x55, x57, &x69);
- { uint64_t x72; uint8_t x73 = _addcarryx_u64(x70, x58, x60, &x72);
- { uint64_t x75; uint8_t x76 = _addcarryx_u64(x73, x61, x63, &x75);
- { uint64_t x78; uint8_t x79 = _addcarryx_u64(x76, x64, x66, &x78);
- { uint64_t x81; uint8_t _ = _addcarryx_u64(0x0, x79, x67, &x81);
- { uint64_t _; uint8_t x85 = _addcarryx_u64(0x0, x21, x54, &_);
- { uint64_t x87; uint8_t x88 = _addcarryx_u64(x85, x36, x69, &x87);
- { uint64_t x90; uint8_t x91 = _addcarryx_u64(x88, x39, x72, &x90);
- { uint64_t x93; uint8_t x94 = _addcarryx_u64(x91, x42, x75, &x93);
- { uint64_t x96; uint8_t x97 = _addcarryx_u64(x94, x45, x78, &x96);
- { uint64_t x99; uint8_t x100 = _addcarryx_u64(x97, x48, x81, &x99);
- { uint64_t x103; uint64_t x102 = _mulx_u64(x7, x13, &x103);
- { uint64_t x106; uint64_t x105 = _mulx_u64(x7, x15, &x106);
- { uint64_t x109; uint64_t x108 = _mulx_u64(x7, x17, &x109);
- { uint64_t x112; uint64_t x111 = _mulx_u64(x7, x19, &x112);
- { uint64_t x115; uint64_t x114 = _mulx_u64(x7, x18, &x115);
- { uint64_t x117; uint8_t x118 = _addcarryx_u64(0x0, x103, x105, &x117);
- { uint64_t x120; uint8_t x121 = _addcarryx_u64(x118, x106, x108, &x120);
- { uint64_t x123; uint8_t x124 = _addcarryx_u64(x121, x109, x111, &x123);
- { uint64_t x126; uint8_t x127 = _addcarryx_u64(x124, x112, x114, &x126);
- { uint64_t x129; uint8_t _ = _addcarryx_u64(0x0, x127, x115, &x129);
- { uint64_t x132; uint8_t x133 = _addcarryx_u64(0x0, x87, x102, &x132);
- { uint64_t x135; uint8_t x136 = _addcarryx_u64(x133, x90, x117, &x135);
- { uint64_t x138; uint8_t x139 = _addcarryx_u64(x136, x93, x120, &x138);
- { uint64_t x141; uint8_t x142 = _addcarryx_u64(x139, x96, x123, &x141);
- { uint64_t x144; uint8_t x145 = _addcarryx_u64(x142, x99, x126, &x144);
- { uint64_t x147; uint8_t x148 = _addcarryx_u64(x145, x100, x129, &x147);
- { uint64_t _; uint64_t x150 = _mulx_u64(x132, 0x86bca1af286bca1bL, &_);
- { uint64_t x154; uint64_t x153 = _mulx_u64(x150, 0xffffffffffffffedL, &x154);
- { uint64_t x157; uint64_t x156 = _mulx_u64(x150, 0xffffffffffffffffL, &x157);
- { uint64_t x160; uint64_t x159 = _mulx_u64(x150, 0xffffffffffffffffL, &x160);
- { uint64_t x163; uint64_t x162 = _mulx_u64(x150, 0xffffffffffffffffL, &x163);
- { uint64_t x166; uint64_t x165 = _mulx_u64(x150, 0x7ffffffff, &x166);
- { uint64_t x168; uint8_t x169 = _addcarryx_u64(0x0, x154, x156, &x168);
- { uint64_t x171; uint8_t x172 = _addcarryx_u64(x169, x157, x159, &x171);
- { uint64_t x174; uint8_t x175 = _addcarryx_u64(x172, x160, x162, &x174);
- { uint64_t x177; uint8_t x178 = _addcarryx_u64(x175, x163, x165, &x177);
- { uint64_t x180; uint8_t _ = _addcarryx_u64(0x0, x178, x166, &x180);
- { uint64_t _; uint8_t x184 = _addcarryx_u64(0x0, x132, x153, &_);
- { uint64_t x186; uint8_t x187 = _addcarryx_u64(x184, x135, x168, &x186);
- { uint64_t x189; uint8_t x190 = _addcarryx_u64(x187, x138, x171, &x189);
- { uint64_t x192; uint8_t x193 = _addcarryx_u64(x190, x141, x174, &x192);
- { uint64_t x195; uint8_t x196 = _addcarryx_u64(x193, x144, x177, &x195);
- { uint64_t x198; uint8_t x199 = _addcarryx_u64(x196, x147, x180, &x198);
- { uint8_t x200 = (x199 + x148);
- { uint64_t x203; uint64_t x202 = _mulx_u64(x9, x13, &x203);
- { uint64_t x206; uint64_t x205 = _mulx_u64(x9, x15, &x206);
- { uint64_t x209; uint64_t x208 = _mulx_u64(x9, x17, &x209);
- { uint64_t x212; uint64_t x211 = _mulx_u64(x9, x19, &x212);
- { uint64_t x215; uint64_t x214 = _mulx_u64(x9, x18, &x215);
- { uint64_t x217; uint8_t x218 = _addcarryx_u64(0x0, x203, x205, &x217);
- { uint64_t x220; uint8_t x221 = _addcarryx_u64(x218, x206, x208, &x220);
- { uint64_t x223; uint8_t x224 = _addcarryx_u64(x221, x209, x211, &x223);
- { uint64_t x226; uint8_t x227 = _addcarryx_u64(x224, x212, x214, &x226);
- { uint64_t x229; uint8_t _ = _addcarryx_u64(0x0, x227, x215, &x229);
- { uint64_t x232; uint8_t x233 = _addcarryx_u64(0x0, x186, x202, &x232);
- { uint64_t x235; uint8_t x236 = _addcarryx_u64(x233, x189, x217, &x235);
- { uint64_t x238; uint8_t x239 = _addcarryx_u64(x236, x192, x220, &x238);
- { uint64_t x241; uint8_t x242 = _addcarryx_u64(x239, x195, x223, &x241);
- { uint64_t x244; uint8_t x245 = _addcarryx_u64(x242, x198, x226, &x244);
- { uint64_t x247; uint8_t x248 = _addcarryx_u64(x245, x200, x229, &x247);
- { uint64_t _; uint64_t x250 = _mulx_u64(x232, 0x86bca1af286bca1bL, &_);
- { uint64_t x254; uint64_t x253 = _mulx_u64(x250, 0xffffffffffffffedL, &x254);
- { uint64_t x257; uint64_t x256 = _mulx_u64(x250, 0xffffffffffffffffL, &x257);
- { uint64_t x260; uint64_t x259 = _mulx_u64(x250, 0xffffffffffffffffL, &x260);
- { uint64_t x263; uint64_t x262 = _mulx_u64(x250, 0xffffffffffffffffL, &x263);
- { uint64_t x266; uint64_t x265 = _mulx_u64(x250, 0x7ffffffff, &x266);
- { uint64_t x268; uint8_t x269 = _addcarryx_u64(0x0, x254, x256, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(x269, x257, x259, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x260, x262, &x274);
- { uint64_t x277; uint8_t x278 = _addcarryx_u64(x275, x263, x265, &x277);
- { uint64_t x280; uint8_t _ = _addcarryx_u64(0x0, x278, x266, &x280);
- { uint64_t _; uint8_t x284 = _addcarryx_u64(0x0, x232, x253, &_);
- { uint64_t x286; uint8_t x287 = _addcarryx_u64(x284, x235, x268, &x286);
- { uint64_t x289; uint8_t x290 = _addcarryx_u64(x287, x238, x271, &x289);
- { uint64_t x292; uint8_t x293 = _addcarryx_u64(x290, x241, x274, &x292);
- { uint64_t x295; uint8_t x296 = _addcarryx_u64(x293, x244, x277, &x295);
- { uint64_t x298; uint8_t x299 = _addcarryx_u64(x296, x247, x280, &x298);
- { uint8_t x300 = (x299 + x248);
- { uint64_t x303; uint64_t x302 = _mulx_u64(x11, x13, &x303);
- { uint64_t x306; uint64_t x305 = _mulx_u64(x11, x15, &x306);
- { uint64_t x309; uint64_t x308 = _mulx_u64(x11, x17, &x309);
- { uint64_t x312; uint64_t x311 = _mulx_u64(x11, x19, &x312);
- { uint64_t x315; uint64_t x314 = _mulx_u64(x11, x18, &x315);
- { uint64_t x317; uint8_t x318 = _addcarryx_u64(0x0, x303, x305, &x317);
- { uint64_t x320; uint8_t x321 = _addcarryx_u64(x318, x306, x308, &x320);
- { uint64_t x323; uint8_t x324 = _addcarryx_u64(x321, x309, x311, &x323);
- { uint64_t x326; uint8_t x327 = _addcarryx_u64(x324, x312, x314, &x326);
- { uint64_t x329; uint8_t _ = _addcarryx_u64(0x0, x327, x315, &x329);
- { uint64_t x332; uint8_t x333 = _addcarryx_u64(0x0, x286, x302, &x332);
- { uint64_t x335; uint8_t x336 = _addcarryx_u64(x333, x289, x317, &x335);
- { uint64_t x338; uint8_t x339 = _addcarryx_u64(x336, x292, x320, &x338);
- { uint64_t x341; uint8_t x342 = _addcarryx_u64(x339, x295, x323, &x341);
- { uint64_t x344; uint8_t x345 = _addcarryx_u64(x342, x298, x326, &x344);
- { uint64_t x347; uint8_t x348 = _addcarryx_u64(x345, x300, x329, &x347);
- { uint64_t _; uint64_t x350 = _mulx_u64(x332, 0x86bca1af286bca1bL, &_);
- { uint64_t x354; uint64_t x353 = _mulx_u64(x350, 0xffffffffffffffedL, &x354);
- { uint64_t x357; uint64_t x356 = _mulx_u64(x350, 0xffffffffffffffffL, &x357);
- { uint64_t x360; uint64_t x359 = _mulx_u64(x350, 0xffffffffffffffffL, &x360);
- { uint64_t x363; uint64_t x362 = _mulx_u64(x350, 0xffffffffffffffffL, &x363);
- { uint64_t x366; uint64_t x365 = _mulx_u64(x350, 0x7ffffffff, &x366);
- { uint64_t x368; uint8_t x369 = _addcarryx_u64(0x0, x354, x356, &x368);
- { uint64_t x371; uint8_t x372 = _addcarryx_u64(x369, x357, x359, &x371);
- { uint64_t x374; uint8_t x375 = _addcarryx_u64(x372, x360, x362, &x374);
- { uint64_t x377; uint8_t x378 = _addcarryx_u64(x375, x363, x365, &x377);
- { uint64_t x380; uint8_t _ = _addcarryx_u64(0x0, x378, x366, &x380);
- { uint64_t _; uint8_t x384 = _addcarryx_u64(0x0, x332, x353, &_);
- { uint64_t x386; uint8_t x387 = _addcarryx_u64(x384, x335, x368, &x386);
- { uint64_t x389; uint8_t x390 = _addcarryx_u64(x387, x338, x371, &x389);
- { uint64_t x392; uint8_t x393 = _addcarryx_u64(x390, x341, x374, &x392);
- { uint64_t x395; uint8_t x396 = _addcarryx_u64(x393, x344, x377, &x395);
- { uint64_t x398; uint8_t x399 = _addcarryx_u64(x396, x347, x380, &x398);
- { uint8_t x400 = (x399 + x348);
- { uint64_t x403; uint64_t x402 = _mulx_u64(x10, x13, &x403);
- { uint64_t x406; uint64_t x405 = _mulx_u64(x10, x15, &x406);
- { uint64_t x409; uint64_t x408 = _mulx_u64(x10, x17, &x409);
- { uint64_t x412; uint64_t x411 = _mulx_u64(x10, x19, &x412);
- { uint64_t x415; uint64_t x414 = _mulx_u64(x10, x18, &x415);
- { uint64_t x417; uint8_t x418 = _addcarryx_u64(0x0, x403, x405, &x417);
- { uint64_t x420; uint8_t x421 = _addcarryx_u64(x418, x406, x408, &x420);
- { uint64_t x423; uint8_t x424 = _addcarryx_u64(x421, x409, x411, &x423);
- { uint64_t x426; uint8_t x427 = _addcarryx_u64(x424, x412, x414, &x426);
- { uint64_t x429; uint8_t _ = _addcarryx_u64(0x0, x427, x415, &x429);
- { uint64_t x432; uint8_t x433 = _addcarryx_u64(0x0, x386, x402, &x432);
- { uint64_t x435; uint8_t x436 = _addcarryx_u64(x433, x389, x417, &x435);
- { uint64_t x438; uint8_t x439 = _addcarryx_u64(x436, x392, x420, &x438);
- { uint64_t x441; uint8_t x442 = _addcarryx_u64(x439, x395, x423, &x441);
- { uint64_t x444; uint8_t x445 = _addcarryx_u64(x442, x398, x426, &x444);
- { uint64_t x447; uint8_t x448 = _addcarryx_u64(x445, x400, x429, &x447);
- { uint64_t _; uint64_t x450 = _mulx_u64(x432, 0x86bca1af286bca1bL, &_);
- { uint64_t x454; uint64_t x453 = _mulx_u64(x450, 0xffffffffffffffedL, &x454);
- { uint64_t x457; uint64_t x456 = _mulx_u64(x450, 0xffffffffffffffffL, &x457);
- { uint64_t x460; uint64_t x459 = _mulx_u64(x450, 0xffffffffffffffffL, &x460);
- { uint64_t x463; uint64_t x462 = _mulx_u64(x450, 0xffffffffffffffffL, &x463);
- { uint64_t x466; uint64_t x465 = _mulx_u64(x450, 0x7ffffffff, &x466);
- { uint64_t x468; uint8_t x469 = _addcarryx_u64(0x0, x454, x456, &x468);
- { uint64_t x471; uint8_t x472 = _addcarryx_u64(x469, x457, x459, &x471);
- { uint64_t x474; uint8_t x475 = _addcarryx_u64(x472, x460, x462, &x474);
- { uint64_t x477; uint8_t x478 = _addcarryx_u64(x475, x463, x465, &x477);
- { uint64_t x480; uint8_t _ = _addcarryx_u64(0x0, x478, x466, &x480);
- { uint64_t _; uint8_t x484 = _addcarryx_u64(0x0, x432, x453, &_);
- { uint64_t x486; uint8_t x487 = _addcarryx_u64(x484, x435, x468, &x486);
- { uint64_t x489; uint8_t x490 = _addcarryx_u64(x487, x438, x471, &x489);
- { uint64_t x492; uint8_t x493 = _addcarryx_u64(x490, x441, x474, &x492);
- { uint64_t x495; uint8_t x496 = _addcarryx_u64(x493, x444, x477, &x495);
- { uint64_t x498; uint8_t x499 = _addcarryx_u64(x496, x447, x480, &x498);
- { uint8_t x500 = (x499 + x448);
- { uint64_t x502; uint8_t x503 = _subborrow_u64(0x0, x486, 0xffffffffffffffedL, &x502);
- { uint64_t x505; uint8_t x506 = _subborrow_u64(x503, x489, 0xffffffffffffffffL, &x505);
- { uint64_t x508; uint8_t x509 = _subborrow_u64(x506, x492, 0xffffffffffffffffL, &x508);
- { uint64_t x511; uint8_t x512 = _subborrow_u64(x509, x495, 0xffffffffffffffffL, &x511);
- { uint64_t x514; uint8_t x515 = _subborrow_u64(x512, x498, 0x7ffffffff, &x514);
- { uint64_t _; uint8_t x518 = _subborrow_u64(x515, x500, 0x0, &_);
- { uint64_t x519 = cmovznz64(x518, x514, x498);
- { uint64_t x520 = cmovznz64(x518, x511, x495);
- { uint64_t x521 = cmovznz64(x518, x508, x492);
- { uint64_t x522 = cmovznz64(x518, x505, x489);
- { uint64_t x523 = cmovznz64(x518, x502, x486);
- out[0] = x523;
- out[1] = x522;
- out[2] = x521;
- out[3] = x520;
- out[4] = x519;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e291m19_5limbs/femul.v b/src/Specific/montgomery64_2e291m19_5limbs/femul.v
deleted file mode 100644
index 0ac794521..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e291m19_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e291m19_5limbs/femulDisplay.log b/src/Specific/montgomery64_2e291m19_5limbs/femulDisplay.log
deleted file mode 100644
index 5cf09abe3..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,181 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint64_t x21, uint64_t x22 = mulx_u64(x5, x13);
- uint64_t x24, uint64_t x25 = mulx_u64(x5, x15);
- uint64_t x27, uint64_t x28 = mulx_u64(x5, x17);
- uint64_t x30, uint64_t x31 = mulx_u64(x5, x19);
- uint64_t x33, uint64_t x34 = mulx_u64(x5, x18);
- uint64_t x36, uint8_t x37 = addcarryx_u64(0x0, x22, x24);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x37, x25, x27);
- uint64_t x42, uint8_t x43 = addcarryx_u64(x40, x28, x30);
- uint64_t x45, uint8_t x46 = addcarryx_u64(x43, x31, x33);
- uint64_t x48, uint8_t _ = addcarryx_u64(0x0, x46, x34);
- uint64_t x51, uint64_t _ = mulx_u64(x21, 0x86bca1af286bca1bL);
- uint64_t x54, uint64_t x55 = mulx_u64(x51, 0xffffffffffffffedL);
- uint64_t x57, uint64_t x58 = mulx_u64(x51, 0xffffffffffffffffL);
- uint64_t x60, uint64_t x61 = mulx_u64(x51, 0xffffffffffffffffL);
- uint64_t x63, uint64_t x64 = mulx_u64(x51, 0xffffffffffffffffL);
- uint64_t x66, uint64_t x67 = mulx_u64(x51, 0x7ffffffff);
- uint64_t x69, uint8_t x70 = addcarryx_u64(0x0, x55, x57);
- uint64_t x72, uint8_t x73 = addcarryx_u64(x70, x58, x60);
- uint64_t x75, uint8_t x76 = addcarryx_u64(x73, x61, x63);
- uint64_t x78, uint8_t x79 = addcarryx_u64(x76, x64, x66);
- uint64_t x81, uint8_t _ = addcarryx_u64(0x0, x79, x67);
- uint64_t _, uint8_t x85 = addcarryx_u64(0x0, x21, x54);
- uint64_t x87, uint8_t x88 = addcarryx_u64(x85, x36, x69);
- uint64_t x90, uint8_t x91 = addcarryx_u64(x88, x39, x72);
- uint64_t x93, uint8_t x94 = addcarryx_u64(x91, x42, x75);
- uint64_t x96, uint8_t x97 = addcarryx_u64(x94, x45, x78);
- uint64_t x99, uint8_t x100 = addcarryx_u64(x97, x48, x81);
- uint64_t x102, uint64_t x103 = mulx_u64(x7, x13);
- uint64_t x105, uint64_t x106 = mulx_u64(x7, x15);
- uint64_t x108, uint64_t x109 = mulx_u64(x7, x17);
- uint64_t x111, uint64_t x112 = mulx_u64(x7, x19);
- uint64_t x114, uint64_t x115 = mulx_u64(x7, x18);
- uint64_t x117, uint8_t x118 = addcarryx_u64(0x0, x103, x105);
- uint64_t x120, uint8_t x121 = addcarryx_u64(x118, x106, x108);
- uint64_t x123, uint8_t x124 = addcarryx_u64(x121, x109, x111);
- uint64_t x126, uint8_t x127 = addcarryx_u64(x124, x112, x114);
- uint64_t x129, uint8_t _ = addcarryx_u64(0x0, x127, x115);
- uint64_t x132, uint8_t x133 = addcarryx_u64(0x0, x87, x102);
- uint64_t x135, uint8_t x136 = addcarryx_u64(x133, x90, x117);
- uint64_t x138, uint8_t x139 = addcarryx_u64(x136, x93, x120);
- uint64_t x141, uint8_t x142 = addcarryx_u64(x139, x96, x123);
- uint64_t x144, uint8_t x145 = addcarryx_u64(x142, x99, x126);
- uint64_t x147, uint8_t x148 = addcarryx_u64(x145, x100, x129);
- uint64_t x150, uint64_t _ = mulx_u64(x132, 0x86bca1af286bca1bL);
- uint64_t x153, uint64_t x154 = mulx_u64(x150, 0xffffffffffffffedL);
- uint64_t x156, uint64_t x157 = mulx_u64(x150, 0xffffffffffffffffL);
- uint64_t x159, uint64_t x160 = mulx_u64(x150, 0xffffffffffffffffL);
- uint64_t x162, uint64_t x163 = mulx_u64(x150, 0xffffffffffffffffL);
- uint64_t x165, uint64_t x166 = mulx_u64(x150, 0x7ffffffff);
- uint64_t x168, uint8_t x169 = addcarryx_u64(0x0, x154, x156);
- uint64_t x171, uint8_t x172 = addcarryx_u64(x169, x157, x159);
- uint64_t x174, uint8_t x175 = addcarryx_u64(x172, x160, x162);
- uint64_t x177, uint8_t x178 = addcarryx_u64(x175, x163, x165);
- uint64_t x180, uint8_t _ = addcarryx_u64(0x0, x178, x166);
- uint64_t _, uint8_t x184 = addcarryx_u64(0x0, x132, x153);
- uint64_t x186, uint8_t x187 = addcarryx_u64(x184, x135, x168);
- uint64_t x189, uint8_t x190 = addcarryx_u64(x187, x138, x171);
- uint64_t x192, uint8_t x193 = addcarryx_u64(x190, x141, x174);
- uint64_t x195, uint8_t x196 = addcarryx_u64(x193, x144, x177);
- uint64_t x198, uint8_t x199 = addcarryx_u64(x196, x147, x180);
- uint8_t x200 = (x199 + x148);
- uint64_t x202, uint64_t x203 = mulx_u64(x9, x13);
- uint64_t x205, uint64_t x206 = mulx_u64(x9, x15);
- uint64_t x208, uint64_t x209 = mulx_u64(x9, x17);
- uint64_t x211, uint64_t x212 = mulx_u64(x9, x19);
- uint64_t x214, uint64_t x215 = mulx_u64(x9, x18);
- uint64_t x217, uint8_t x218 = addcarryx_u64(0x0, x203, x205);
- uint64_t x220, uint8_t x221 = addcarryx_u64(x218, x206, x208);
- uint64_t x223, uint8_t x224 = addcarryx_u64(x221, x209, x211);
- uint64_t x226, uint8_t x227 = addcarryx_u64(x224, x212, x214);
- uint64_t x229, uint8_t _ = addcarryx_u64(0x0, x227, x215);
- uint64_t x232, uint8_t x233 = addcarryx_u64(0x0, x186, x202);
- uint64_t x235, uint8_t x236 = addcarryx_u64(x233, x189, x217);
- uint64_t x238, uint8_t x239 = addcarryx_u64(x236, x192, x220);
- uint64_t x241, uint8_t x242 = addcarryx_u64(x239, x195, x223);
- uint64_t x244, uint8_t x245 = addcarryx_u64(x242, x198, x226);
- uint64_t x247, uint8_t x248 = addcarryx_u64(x245, x200, x229);
- uint64_t x250, uint64_t _ = mulx_u64(x232, 0x86bca1af286bca1bL);
- uint64_t x253, uint64_t x254 = mulx_u64(x250, 0xffffffffffffffedL);
- uint64_t x256, uint64_t x257 = mulx_u64(x250, 0xffffffffffffffffL);
- uint64_t x259, uint64_t x260 = mulx_u64(x250, 0xffffffffffffffffL);
- uint64_t x262, uint64_t x263 = mulx_u64(x250, 0xffffffffffffffffL);
- uint64_t x265, uint64_t x266 = mulx_u64(x250, 0x7ffffffff);
- uint64_t x268, uint8_t x269 = addcarryx_u64(0x0, x254, x256);
- uint64_t x271, uint8_t x272 = addcarryx_u64(x269, x257, x259);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x260, x262);
- uint64_t x277, uint8_t x278 = addcarryx_u64(x275, x263, x265);
- uint64_t x280, uint8_t _ = addcarryx_u64(0x0, x278, x266);
- uint64_t _, uint8_t x284 = addcarryx_u64(0x0, x232, x253);
- uint64_t x286, uint8_t x287 = addcarryx_u64(x284, x235, x268);
- uint64_t x289, uint8_t x290 = addcarryx_u64(x287, x238, x271);
- uint64_t x292, uint8_t x293 = addcarryx_u64(x290, x241, x274);
- uint64_t x295, uint8_t x296 = addcarryx_u64(x293, x244, x277);
- uint64_t x298, uint8_t x299 = addcarryx_u64(x296, x247, x280);
- uint8_t x300 = (x299 + x248);
- uint64_t x302, uint64_t x303 = mulx_u64(x11, x13);
- uint64_t x305, uint64_t x306 = mulx_u64(x11, x15);
- uint64_t x308, uint64_t x309 = mulx_u64(x11, x17);
- uint64_t x311, uint64_t x312 = mulx_u64(x11, x19);
- uint64_t x314, uint64_t x315 = mulx_u64(x11, x18);
- uint64_t x317, uint8_t x318 = addcarryx_u64(0x0, x303, x305);
- uint64_t x320, uint8_t x321 = addcarryx_u64(x318, x306, x308);
- uint64_t x323, uint8_t x324 = addcarryx_u64(x321, x309, x311);
- uint64_t x326, uint8_t x327 = addcarryx_u64(x324, x312, x314);
- uint64_t x329, uint8_t _ = addcarryx_u64(0x0, x327, x315);
- uint64_t x332, uint8_t x333 = addcarryx_u64(0x0, x286, x302);
- uint64_t x335, uint8_t x336 = addcarryx_u64(x333, x289, x317);
- uint64_t x338, uint8_t x339 = addcarryx_u64(x336, x292, x320);
- uint64_t x341, uint8_t x342 = addcarryx_u64(x339, x295, x323);
- uint64_t x344, uint8_t x345 = addcarryx_u64(x342, x298, x326);
- uint64_t x347, uint8_t x348 = addcarryx_u64(x345, x300, x329);
- uint64_t x350, uint64_t _ = mulx_u64(x332, 0x86bca1af286bca1bL);
- uint64_t x353, uint64_t x354 = mulx_u64(x350, 0xffffffffffffffedL);
- uint64_t x356, uint64_t x357 = mulx_u64(x350, 0xffffffffffffffffL);
- uint64_t x359, uint64_t x360 = mulx_u64(x350, 0xffffffffffffffffL);
- uint64_t x362, uint64_t x363 = mulx_u64(x350, 0xffffffffffffffffL);
- uint64_t x365, uint64_t x366 = mulx_u64(x350, 0x7ffffffff);
- uint64_t x368, uint8_t x369 = addcarryx_u64(0x0, x354, x356);
- uint64_t x371, uint8_t x372 = addcarryx_u64(x369, x357, x359);
- uint64_t x374, uint8_t x375 = addcarryx_u64(x372, x360, x362);
- uint64_t x377, uint8_t x378 = addcarryx_u64(x375, x363, x365);
- uint64_t x380, uint8_t _ = addcarryx_u64(0x0, x378, x366);
- uint64_t _, uint8_t x384 = addcarryx_u64(0x0, x332, x353);
- uint64_t x386, uint8_t x387 = addcarryx_u64(x384, x335, x368);
- uint64_t x389, uint8_t x390 = addcarryx_u64(x387, x338, x371);
- uint64_t x392, uint8_t x393 = addcarryx_u64(x390, x341, x374);
- uint64_t x395, uint8_t x396 = addcarryx_u64(x393, x344, x377);
- uint64_t x398, uint8_t x399 = addcarryx_u64(x396, x347, x380);
- uint8_t x400 = (x399 + x348);
- uint64_t x402, uint64_t x403 = mulx_u64(x10, x13);
- uint64_t x405, uint64_t x406 = mulx_u64(x10, x15);
- uint64_t x408, uint64_t x409 = mulx_u64(x10, x17);
- uint64_t x411, uint64_t x412 = mulx_u64(x10, x19);
- uint64_t x414, uint64_t x415 = mulx_u64(x10, x18);
- uint64_t x417, uint8_t x418 = addcarryx_u64(0x0, x403, x405);
- uint64_t x420, uint8_t x421 = addcarryx_u64(x418, x406, x408);
- uint64_t x423, uint8_t x424 = addcarryx_u64(x421, x409, x411);
- uint64_t x426, uint8_t x427 = addcarryx_u64(x424, x412, x414);
- uint64_t x429, uint8_t _ = addcarryx_u64(0x0, x427, x415);
- uint64_t x432, uint8_t x433 = addcarryx_u64(0x0, x386, x402);
- uint64_t x435, uint8_t x436 = addcarryx_u64(x433, x389, x417);
- uint64_t x438, uint8_t x439 = addcarryx_u64(x436, x392, x420);
- uint64_t x441, uint8_t x442 = addcarryx_u64(x439, x395, x423);
- uint64_t x444, uint8_t x445 = addcarryx_u64(x442, x398, x426);
- uint64_t x447, uint8_t x448 = addcarryx_u64(x445, x400, x429);
- uint64_t x450, uint64_t _ = mulx_u64(x432, 0x86bca1af286bca1bL);
- uint64_t x453, uint64_t x454 = mulx_u64(x450, 0xffffffffffffffedL);
- uint64_t x456, uint64_t x457 = mulx_u64(x450, 0xffffffffffffffffL);
- uint64_t x459, uint64_t x460 = mulx_u64(x450, 0xffffffffffffffffL);
- uint64_t x462, uint64_t x463 = mulx_u64(x450, 0xffffffffffffffffL);
- uint64_t x465, uint64_t x466 = mulx_u64(x450, 0x7ffffffff);
- uint64_t x468, uint8_t x469 = addcarryx_u64(0x0, x454, x456);
- uint64_t x471, uint8_t x472 = addcarryx_u64(x469, x457, x459);
- uint64_t x474, uint8_t x475 = addcarryx_u64(x472, x460, x462);
- uint64_t x477, uint8_t x478 = addcarryx_u64(x475, x463, x465);
- uint64_t x480, uint8_t _ = addcarryx_u64(0x0, x478, x466);
- uint64_t _, uint8_t x484 = addcarryx_u64(0x0, x432, x453);
- uint64_t x486, uint8_t x487 = addcarryx_u64(x484, x435, x468);
- uint64_t x489, uint8_t x490 = addcarryx_u64(x487, x438, x471);
- uint64_t x492, uint8_t x493 = addcarryx_u64(x490, x441, x474);
- uint64_t x495, uint8_t x496 = addcarryx_u64(x493, x444, x477);
- uint64_t x498, uint8_t x499 = addcarryx_u64(x496, x447, x480);
- uint8_t x500 = (x499 + x448);
- uint64_t x502, uint8_t x503 = subborrow_u64(0x0, x486, 0xffffffffffffffedL);
- uint64_t x505, uint8_t x506 = subborrow_u64(x503, x489, 0xffffffffffffffffL);
- uint64_t x508, uint8_t x509 = subborrow_u64(x506, x492, 0xffffffffffffffffL);
- uint64_t x511, uint8_t x512 = subborrow_u64(x509, x495, 0xffffffffffffffffL);
- uint64_t x514, uint8_t x515 = subborrow_u64(x512, x498, 0x7ffffffff);
- uint64_t _, uint8_t x518 = subborrow_u64(x515, x500, 0x0);
- uint64_t x519 = cmovznz64(x518, x514, x498);
- uint64_t x520 = cmovznz64(x518, x511, x495);
- uint64_t x521 = cmovznz64(x518, x508, x492);
- uint64_t x522 = cmovznz64(x518, x505, x489);
- uint64_t x523 = cmovznz64(x518, x502, x486);
- return (x519, x520, x521, x522, x523))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e291m19_5limbs/femulDisplay.v b/src/Specific/montgomery64_2e291m19_5limbs/femulDisplay.v
deleted file mode 100644
index 555e4ba04..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e291m19_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e291m19_5limbs/fenz.c b/src/Specific/montgomery64_2e291m19_5limbs/fenz.c
deleted file mode 100644
index 0a779af7c..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/fenz.c
+++ /dev/null
@@ -1,13 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x9 = (x8 | x7);
- { uint64_t x10 = (x6 | x9);
- { uint64_t x11 = (x4 | x10);
- { uint64_t x12 = (x2 | x11);
- out[0] = x12;
- }}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e291m19_5limbs/fenz.v b/src/Specific/montgomery64_2e291m19_5limbs/fenz.v
deleted file mode 100644
index fa3922b93..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e291m19_5limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e291m19_5limbs/fenzDisplay.log b/src/Specific/montgomery64_2e291m19_5limbs/fenzDisplay.log
deleted file mode 100644
index 4f18295b0..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/fenzDisplay.log
+++ /dev/null
@@ -1,11 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x9 = (x8 | x7);
- uint64_t x10 = (x6 | x9);
- uint64_t x11 = (x4 | x10);
- uint64_t x12 = (x2 | x11);
- return x12)
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e291m19_5limbs/fenzDisplay.v b/src/Specific/montgomery64_2e291m19_5limbs/fenzDisplay.v
deleted file mode 100644
index 06f67cb4e..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e291m19_5limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e291m19_5limbs/feopp.c b/src/Specific/montgomery64_2e291m19_5limbs/feopp.c
deleted file mode 100644
index 31390ffd8..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/feopp.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void feopp(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10; uint8_t x11 = _subborrow_u64(0x0, 0x0, x2, &x10);
- { uint64_t x13; uint8_t x14 = _subborrow_u64(x11, 0x0, x4, &x13);
- { uint64_t x16; uint8_t x17 = _subborrow_u64(x14, 0x0, x6, &x16);
- { uint64_t x19; uint8_t x20 = _subborrow_u64(x17, 0x0, x8, &x19);
- { uint64_t x22; uint8_t x23 = _subborrow_u64(x20, 0x0, x7, &x22);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0xffffffffffffffedL);
- { uint64_t x27; uint8_t x28 = _addcarryx_u64(0x0, x10, x25, &x27);
- { uint64_t x29 = (x24 & 0xffffffffffffffffL);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(x28, x13, x29, &x31);
- { uint64_t x33 = (x24 & 0xffffffffffffffffL);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x32, x16, x33, &x35);
- { uint64_t x37 = (x24 & 0xffffffffffffffffL);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x36, x19, x37, &x39);
- { uint64_t x41 = (x24 & 0x7ffffffff);
- { uint64_t x43; uint8_t _ = _addcarryx_u64(x40, x22, x41, &x43);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e291m19_5limbs/feopp.v b/src/Specific/montgomery64_2e291m19_5limbs/feopp.v
deleted file mode 100644
index 1b35f18e2..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e291m19_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e291m19_5limbs/feoppDisplay.log b/src/Specific/montgomery64_2e291m19_5limbs/feoppDisplay.log
deleted file mode 100644
index 5c4609742..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/feoppDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x13, uint8_t x14 = subborrow_u64(x11, 0x0, x4);
- uint64_t x16, uint8_t x17 = subborrow_u64(x14, 0x0, x6);
- uint64_t x19, uint8_t x20 = subborrow_u64(x17, 0x0, x8);
- uint64_t x22, uint8_t x23 = subborrow_u64(x20, 0x0, x7);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0xffffffffffffffedL);
- uint64_t x27, uint8_t x28 = addcarryx_u64(0x0, x10, x25);
- uint64_t x29 = (x24 & 0xffffffffffffffffL);
- uint64_t x31, uint8_t x32 = addcarryx_u64(x28, x13, x29);
- uint64_t x33 = (x24 & 0xffffffffffffffffL);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x32, x16, x33);
- uint64_t x37 = (x24 & 0xffffffffffffffffL);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x36, x19, x37);
- uint64_t x41 = (x24 & 0x7ffffffff);
- uint64_t x43, uint8_t _ = addcarryx_u64(x40, x22, x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e291m19_5limbs/feoppDisplay.v b/src/Specific/montgomery64_2e291m19_5limbs/feoppDisplay.v
deleted file mode 100644
index 263c48e3f..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e291m19_5limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e291m19_5limbs/fesquare.c b/src/Specific/montgomery64_2e291m19_5limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e291m19_5limbs/fesub.c b/src/Specific/montgomery64_2e291m19_5limbs/fesub.c
deleted file mode 100644
index cfc10c92f..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/fesub.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint64_t x21; uint8_t x22 = _subborrow_u64(0x0, x5, x13, &x21);
- { uint64_t x24; uint8_t x25 = _subborrow_u64(x22, x7, x15, &x24);
- { uint64_t x27; uint8_t x28 = _subborrow_u64(x25, x9, x17, &x27);
- { uint64_t x30; uint8_t x31 = _subborrow_u64(x28, x11, x19, &x30);
- { uint64_t x33; uint8_t x34 = _subborrow_u64(x31, x10, x18, &x33);
- { uint64_t x35 = cmovznz64(x34, 0x0, 0xffffffffffffffffL);
- { uint64_t x36 = (x35 & 0xffffffffffffffedL);
- { uint64_t x38; uint8_t x39 = _addcarryx_u64(0x0, x21, x36, &x38);
- { uint64_t x40 = (x35 & 0xffffffffffffffffL);
- { uint64_t x42; uint8_t x43 = _addcarryx_u64(x39, x24, x40, &x42);
- { uint64_t x44 = (x35 & 0xffffffffffffffffL);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x43, x27, x44, &x46);
- { uint64_t x48 = (x35 & 0xffffffffffffffffL);
- { uint64_t x50; uint8_t x51 = _addcarryx_u64(x47, x30, x48, &x50);
- { uint64_t x52 = (x35 & 0x7ffffffff);
- { uint64_t x54; uint8_t _ = _addcarryx_u64(x51, x33, x52, &x54);
- out[0] = x38;
- out[1] = x42;
- out[2] = x46;
- out[3] = x50;
- out[4] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e291m19_5limbs/fesub.v b/src/Specific/montgomery64_2e291m19_5limbs/fesub.v
deleted file mode 100644
index d19f6790d..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e291m19_5limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e291m19_5limbs/fesubDisplay.log b/src/Specific/montgomery64_2e291m19_5limbs/fesubDisplay.log
deleted file mode 100644
index 75ea81a86..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint64_t x21, uint8_t x22 = subborrow_u64(0x0, x5, x13);
- uint64_t x24, uint8_t x25 = subborrow_u64(x22, x7, x15);
- uint64_t x27, uint8_t x28 = subborrow_u64(x25, x9, x17);
- uint64_t x30, uint8_t x31 = subborrow_u64(x28, x11, x19);
- uint64_t x33, uint8_t x34 = subborrow_u64(x31, x10, x18);
- uint64_t x35 = cmovznz64(x34, 0x0, 0xffffffffffffffffL);
- uint64_t x36 = (x35 & 0xffffffffffffffedL);
- uint64_t x38, uint8_t x39 = addcarryx_u64(0x0, x21, x36);
- uint64_t x40 = (x35 & 0xffffffffffffffffL);
- uint64_t x42, uint8_t x43 = addcarryx_u64(x39, x24, x40);
- uint64_t x44 = (x35 & 0xffffffffffffffffL);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x43, x27, x44);
- uint64_t x48 = (x35 & 0xffffffffffffffffL);
- uint64_t x50, uint8_t x51 = addcarryx_u64(x47, x30, x48);
- uint64_t x52 = (x35 & 0x7ffffffff);
- uint64_t x54, uint8_t _ = addcarryx_u64(x51, x33, x52);
- (Return x54, Return x50, Return x46, Return x42, Return x38))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e291m19_5limbs/fesubDisplay.v b/src/Specific/montgomery64_2e291m19_5limbs/fesubDisplay.v
deleted file mode 100644
index 0d79990e5..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e291m19_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e291m19_5limbs/py_interpreter.sh b/src/Specific/montgomery64_2e291m19_5limbs/py_interpreter.sh
deleted file mode 100755
index 3ba9fdbd4..000000000
--- a/src/Specific/montgomery64_2e291m19_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**291 - 19' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e321m9_6limbs/CurveParameters.v b/src/Specific/montgomery64_2e321m9_6limbs/CurveParameters.v
deleted file mode 100644
index 040e23d2d..000000000
--- a/src/Specific/montgomery64_2e321m9_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^321 - 9
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 64;
- bitwidth := 64;
- s := 2^321;
- c := [(1, 9)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e321m9_6limbs/Synthesis.v b/src/Specific/montgomery64_2e321m9_6limbs/Synthesis.v
deleted file mode 100644
index f085b9d5d..000000000
--- a/src/Specific/montgomery64_2e321m9_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e321m9_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/montgomery64_2e321m9_6limbs/compiler.sh b/src/Specific/montgomery64_2e321m9_6limbs/compiler.sh
deleted file mode 100755
index cb2337264..000000000
--- a/src/Specific/montgomery64_2e321m9_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<321) - 9' "$@"
diff --git a/src/Specific/montgomery64_2e321m9_6limbs/compilerxx.sh b/src/Specific/montgomery64_2e321m9_6limbs/compilerxx.sh
deleted file mode 100755
index 06cf9951e..000000000
--- a/src/Specific/montgomery64_2e321m9_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<321) - 9' "$@"
diff --git a/src/Specific/montgomery64_2e321m9_6limbs/feadd.c b/src/Specific/montgomery64_2e321m9_6limbs/feadd.c
deleted file mode 100644
index a995a347f..000000000
--- a/src/Specific/montgomery64_2e321m9_6limbs/feadd.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _addcarryx_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _addcarryx_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x38, x12, x22, &x40);
- { uint64_t x43; uint8_t x44 = _subborrow_u64(0x0, x25, 0xfffffffffffffff7L, &x43);
- { uint64_t x46; uint8_t x47 = _subborrow_u64(x44, x28, 0xffffffffffffffffL, &x46);
- { uint64_t x49; uint8_t x50 = _subborrow_u64(x47, x31, 0xffffffffffffffffL, &x49);
- { uint64_t x52; uint8_t x53 = _subborrow_u64(x50, x34, 0xffffffffffffffffL, &x52);
- { uint64_t x55; uint8_t x56 = _subborrow_u64(x53, x37, 0xffffffffffffffffL, &x55);
- { uint64_t x58; uint8_t x59 = _subborrow_u64(x56, x40, 0x1, &x58);
- { uint64_t _; uint8_t x62 = _subborrow_u64(x59, x41, 0x0, &_);
- { uint64_t x63 = cmovznz64(x62, x58, x40);
- { uint64_t x64 = cmovznz64(x62, x55, x37);
- { uint64_t x65 = cmovznz64(x62, x52, x34);
- { uint64_t x66 = cmovznz64(x62, x49, x31);
- { uint64_t x67 = cmovznz64(x62, x46, x28);
- { uint64_t x68 = cmovznz64(x62, x43, x25);
- out[0] = x68;
- out[1] = x67;
- out[2] = x66;
- out[3] = x65;
- out[4] = x64;
- out[5] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e321m9_6limbs/feadd.v b/src/Specific/montgomery64_2e321m9_6limbs/feadd.v
deleted file mode 100644
index f40c6c43b..000000000
--- a/src/Specific/montgomery64_2e321m9_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e321m9_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e321m9_6limbs/feaddDisplay.log b/src/Specific/montgomery64_2e321m9_6limbs/feaddDisplay.log
deleted file mode 100644
index 7af9dbdbc..000000000
--- a/src/Specific/montgomery64_2e321m9_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = addcarryx_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = addcarryx_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = addcarryx_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = addcarryx_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x38, x12, x22);
- uint64_t x43, uint8_t x44 = subborrow_u64(0x0, x25, 0xfffffffffffffff7L);
- uint64_t x46, uint8_t x47 = subborrow_u64(x44, x28, 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = subborrow_u64(x47, x31, 0xffffffffffffffffL);
- uint64_t x52, uint8_t x53 = subborrow_u64(x50, x34, 0xffffffffffffffffL);
- uint64_t x55, uint8_t x56 = subborrow_u64(x53, x37, 0xffffffffffffffffL);
- uint64_t x58, uint8_t x59 = subborrow_u64(x56, x40, 0x1);
- uint64_t _, uint8_t x62 = subborrow_u64(x59, x41, 0x0);
- uint64_t x63 = cmovznz64(x62, x58, x40);
- uint64_t x64 = cmovznz64(x62, x55, x37);
- uint64_t x65 = cmovznz64(x62, x52, x34);
- uint64_t x66 = cmovznz64(x62, x49, x31);
- uint64_t x67 = cmovznz64(x62, x46, x28);
- uint64_t x68 = cmovznz64(x62, x43, x25);
- return (x63, x64, x65, x66, x67, x68))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e321m9_6limbs/feaddDisplay.v b/src/Specific/montgomery64_2e321m9_6limbs/feaddDisplay.v
deleted file mode 100644
index f72c54942..000000000
--- a/src/Specific/montgomery64_2e321m9_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e321m9_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e321m9_6limbs/femul.c b/src/Specific/montgomery64_2e321m9_6limbs/femul.c
deleted file mode 100644
index b56aef734..000000000
--- a/src/Specific/montgomery64_2e321m9_6limbs/femul.c
+++ /dev/null
@@ -1,254 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x26; uint64_t x25 = _mulx_u64(x5, x15, &x26);
- { uint64_t x29; uint64_t x28 = _mulx_u64(x5, x17, &x29);
- { uint64_t x32; uint64_t x31 = _mulx_u64(x5, x19, &x32);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x5, x21, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x5, x23, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x5, x22, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x26, x28, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x29, x31, &x46);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x47, x32, x34, &x49);
- { uint64_t x52; uint8_t x53 = _addcarryx_u64(x50, x35, x37, &x52);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x38, x40, &x55);
- { uint64_t x58; uint8_t _ = _addcarryx_u64(0x0, x56, x41, &x58);
- { uint64_t _; uint64_t x61 = _mulx_u64(x25, 0x8e38e38e38e38e39L, &_);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x61, 0xfffffffffffffff7L, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x61, 0xffffffffffffffffL, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x61, 0xffffffffffffffffL, &x71);
- { uint64_t x74; uint64_t x73 = _mulx_u64(x61, 0xffffffffffffffffL, &x74);
- { uint64_t x77; uint64_t x76 = _mulx_u64(x61, 0xffffffffffffffffL, &x77);
- { uint64_t x79; uint8_t x80 = _addcarryx_u64(0x0, x65, x67, &x79);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(x80, x68, x70, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x71, x73, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x74, x76, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x77, x61, &x91);
- { uint64_t _; uint8_t x95 = _addcarryx_u64(0x0, x25, x64, &_);
- { uint64_t x97; uint8_t x98 = _addcarryx_u64(x95, x43, x79, &x97);
- { uint64_t x100; uint8_t x101 = _addcarryx_u64(x98, x46, x82, &x100);
- { uint64_t x103; uint8_t x104 = _addcarryx_u64(x101, x49, x85, &x103);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(x104, x52, x88, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x55, x91, &x109);
- { uint64_t x112; uint8_t x113 = _addcarryx_u64(x110, x58, x92, &x112);
- { uint64_t x116; uint64_t x115 = _mulx_u64(x7, x15, &x116);
- { uint64_t x119; uint64_t x118 = _mulx_u64(x7, x17, &x119);
- { uint64_t x122; uint64_t x121 = _mulx_u64(x7, x19, &x122);
- { uint64_t x125; uint64_t x124 = _mulx_u64(x7, x21, &x125);
- { uint64_t x128; uint64_t x127 = _mulx_u64(x7, x23, &x128);
- { uint64_t x131; uint64_t x130 = _mulx_u64(x7, x22, &x131);
- { uint64_t x133; uint8_t x134 = _addcarryx_u64(0x0, x116, x118, &x133);
- { uint64_t x136; uint8_t x137 = _addcarryx_u64(x134, x119, x121, &x136);
- { uint64_t x139; uint8_t x140 = _addcarryx_u64(x137, x122, x124, &x139);
- { uint64_t x142; uint8_t x143 = _addcarryx_u64(x140, x125, x127, &x142);
- { uint64_t x145; uint8_t x146 = _addcarryx_u64(x143, x128, x130, &x145);
- { uint64_t x148; uint8_t _ = _addcarryx_u64(0x0, x146, x131, &x148);
- { uint64_t x151; uint8_t x152 = _addcarryx_u64(0x0, x97, x115, &x151);
- { uint64_t x154; uint8_t x155 = _addcarryx_u64(x152, x100, x133, &x154);
- { uint64_t x157; uint8_t x158 = _addcarryx_u64(x155, x103, x136, &x157);
- { uint64_t x160; uint8_t x161 = _addcarryx_u64(x158, x106, x139, &x160);
- { uint64_t x163; uint8_t x164 = _addcarryx_u64(x161, x109, x142, &x163);
- { uint64_t x166; uint8_t x167 = _addcarryx_u64(x164, x112, x145, &x166);
- { uint64_t x169; uint8_t x170 = _addcarryx_u64(x167, x113, x148, &x169);
- { uint64_t _; uint64_t x172 = _mulx_u64(x151, 0x8e38e38e38e38e39L, &_);
- { uint64_t x176; uint64_t x175 = _mulx_u64(x172, 0xfffffffffffffff7L, &x176);
- { uint64_t x179; uint64_t x178 = _mulx_u64(x172, 0xffffffffffffffffL, &x179);
- { uint64_t x182; uint64_t x181 = _mulx_u64(x172, 0xffffffffffffffffL, &x182);
- { uint64_t x185; uint64_t x184 = _mulx_u64(x172, 0xffffffffffffffffL, &x185);
- { uint64_t x188; uint64_t x187 = _mulx_u64(x172, 0xffffffffffffffffL, &x188);
- { uint64_t x190; uint8_t x191 = _addcarryx_u64(0x0, x176, x178, &x190);
- { uint64_t x193; uint8_t x194 = _addcarryx_u64(x191, x179, x181, &x193);
- { uint64_t x196; uint8_t x197 = _addcarryx_u64(x194, x182, x184, &x196);
- { uint64_t x199; uint8_t x200 = _addcarryx_u64(x197, x185, x187, &x199);
- { uint64_t x202; uint8_t x203 = _addcarryx_u64(x200, x188, x172, &x202);
- { uint64_t _; uint8_t x206 = _addcarryx_u64(0x0, x151, x175, &_);
- { uint64_t x208; uint8_t x209 = _addcarryx_u64(x206, x154, x190, &x208);
- { uint64_t x211; uint8_t x212 = _addcarryx_u64(x209, x157, x193, &x211);
- { uint64_t x214; uint8_t x215 = _addcarryx_u64(x212, x160, x196, &x214);
- { uint64_t x217; uint8_t x218 = _addcarryx_u64(x215, x163, x199, &x217);
- { uint64_t x220; uint8_t x221 = _addcarryx_u64(x218, x166, x202, &x220);
- { uint64_t x223; uint8_t x224 = _addcarryx_u64(x221, x169, x203, &x223);
- { uint8_t x225 = (x224 + x170);
- { uint64_t x228; uint64_t x227 = _mulx_u64(x9, x15, &x228);
- { uint64_t x231; uint64_t x230 = _mulx_u64(x9, x17, &x231);
- { uint64_t x234; uint64_t x233 = _mulx_u64(x9, x19, &x234);
- { uint64_t x237; uint64_t x236 = _mulx_u64(x9, x21, &x237);
- { uint64_t x240; uint64_t x239 = _mulx_u64(x9, x23, &x240);
- { uint64_t x243; uint64_t x242 = _mulx_u64(x9, x22, &x243);
- { uint64_t x245; uint8_t x246 = _addcarryx_u64(0x0, x228, x230, &x245);
- { uint64_t x248; uint8_t x249 = _addcarryx_u64(x246, x231, x233, &x248);
- { uint64_t x251; uint8_t x252 = _addcarryx_u64(x249, x234, x236, &x251);
- { uint64_t x254; uint8_t x255 = _addcarryx_u64(x252, x237, x239, &x254);
- { uint64_t x257; uint8_t x258 = _addcarryx_u64(x255, x240, x242, &x257);
- { uint64_t x260; uint8_t _ = _addcarryx_u64(0x0, x258, x243, &x260);
- { uint64_t x263; uint8_t x264 = _addcarryx_u64(0x0, x208, x227, &x263);
- { uint64_t x266; uint8_t x267 = _addcarryx_u64(x264, x211, x245, &x266);
- { uint64_t x269; uint8_t x270 = _addcarryx_u64(x267, x214, x248, &x269);
- { uint64_t x272; uint8_t x273 = _addcarryx_u64(x270, x217, x251, &x272);
- { uint64_t x275; uint8_t x276 = _addcarryx_u64(x273, x220, x254, &x275);
- { uint64_t x278; uint8_t x279 = _addcarryx_u64(x276, x223, x257, &x278);
- { uint64_t x281; uint8_t x282 = _addcarryx_u64(x279, x225, x260, &x281);
- { uint64_t _; uint64_t x284 = _mulx_u64(x263, 0x8e38e38e38e38e39L, &_);
- { uint64_t x288; uint64_t x287 = _mulx_u64(x284, 0xfffffffffffffff7L, &x288);
- { uint64_t x291; uint64_t x290 = _mulx_u64(x284, 0xffffffffffffffffL, &x291);
- { uint64_t x294; uint64_t x293 = _mulx_u64(x284, 0xffffffffffffffffL, &x294);
- { uint64_t x297; uint64_t x296 = _mulx_u64(x284, 0xffffffffffffffffL, &x297);
- { uint64_t x300; uint64_t x299 = _mulx_u64(x284, 0xffffffffffffffffL, &x300);
- { uint64_t x302; uint8_t x303 = _addcarryx_u64(0x0, x288, x290, &x302);
- { uint64_t x305; uint8_t x306 = _addcarryx_u64(x303, x291, x293, &x305);
- { uint64_t x308; uint8_t x309 = _addcarryx_u64(x306, x294, x296, &x308);
- { uint64_t x311; uint8_t x312 = _addcarryx_u64(x309, x297, x299, &x311);
- { uint64_t x314; uint8_t x315 = _addcarryx_u64(x312, x300, x284, &x314);
- { uint64_t _; uint8_t x318 = _addcarryx_u64(0x0, x263, x287, &_);
- { uint64_t x320; uint8_t x321 = _addcarryx_u64(x318, x266, x302, &x320);
- { uint64_t x323; uint8_t x324 = _addcarryx_u64(x321, x269, x305, &x323);
- { uint64_t x326; uint8_t x327 = _addcarryx_u64(x324, x272, x308, &x326);
- { uint64_t x329; uint8_t x330 = _addcarryx_u64(x327, x275, x311, &x329);
- { uint64_t x332; uint8_t x333 = _addcarryx_u64(x330, x278, x314, &x332);
- { uint64_t x335; uint8_t x336 = _addcarryx_u64(x333, x281, x315, &x335);
- { uint8_t x337 = (x336 + x282);
- { uint64_t x340; uint64_t x339 = _mulx_u64(x11, x15, &x340);
- { uint64_t x343; uint64_t x342 = _mulx_u64(x11, x17, &x343);
- { uint64_t x346; uint64_t x345 = _mulx_u64(x11, x19, &x346);
- { uint64_t x349; uint64_t x348 = _mulx_u64(x11, x21, &x349);
- { uint64_t x352; uint64_t x351 = _mulx_u64(x11, x23, &x352);
- { uint64_t x355; uint64_t x354 = _mulx_u64(x11, x22, &x355);
- { uint64_t x357; uint8_t x358 = _addcarryx_u64(0x0, x340, x342, &x357);
- { uint64_t x360; uint8_t x361 = _addcarryx_u64(x358, x343, x345, &x360);
- { uint64_t x363; uint8_t x364 = _addcarryx_u64(x361, x346, x348, &x363);
- { uint64_t x366; uint8_t x367 = _addcarryx_u64(x364, x349, x351, &x366);
- { uint64_t x369; uint8_t x370 = _addcarryx_u64(x367, x352, x354, &x369);
- { uint64_t x372; uint8_t _ = _addcarryx_u64(0x0, x370, x355, &x372);
- { uint64_t x375; uint8_t x376 = _addcarryx_u64(0x0, x320, x339, &x375);
- { uint64_t x378; uint8_t x379 = _addcarryx_u64(x376, x323, x357, &x378);
- { uint64_t x381; uint8_t x382 = _addcarryx_u64(x379, x326, x360, &x381);
- { uint64_t x384; uint8_t x385 = _addcarryx_u64(x382, x329, x363, &x384);
- { uint64_t x387; uint8_t x388 = _addcarryx_u64(x385, x332, x366, &x387);
- { uint64_t x390; uint8_t x391 = _addcarryx_u64(x388, x335, x369, &x390);
- { uint64_t x393; uint8_t x394 = _addcarryx_u64(x391, x337, x372, &x393);
- { uint64_t _; uint64_t x396 = _mulx_u64(x375, 0x8e38e38e38e38e39L, &_);
- { uint64_t x400; uint64_t x399 = _mulx_u64(x396, 0xfffffffffffffff7L, &x400);
- { uint64_t x403; uint64_t x402 = _mulx_u64(x396, 0xffffffffffffffffL, &x403);
- { uint64_t x406; uint64_t x405 = _mulx_u64(x396, 0xffffffffffffffffL, &x406);
- { uint64_t x409; uint64_t x408 = _mulx_u64(x396, 0xffffffffffffffffL, &x409);
- { uint64_t x412; uint64_t x411 = _mulx_u64(x396, 0xffffffffffffffffL, &x412);
- { uint64_t x414; uint8_t x415 = _addcarryx_u64(0x0, x400, x402, &x414);
- { uint64_t x417; uint8_t x418 = _addcarryx_u64(x415, x403, x405, &x417);
- { uint64_t x420; uint8_t x421 = _addcarryx_u64(x418, x406, x408, &x420);
- { uint64_t x423; uint8_t x424 = _addcarryx_u64(x421, x409, x411, &x423);
- { uint64_t x426; uint8_t x427 = _addcarryx_u64(x424, x412, x396, &x426);
- { uint64_t _; uint8_t x430 = _addcarryx_u64(0x0, x375, x399, &_);
- { uint64_t x432; uint8_t x433 = _addcarryx_u64(x430, x378, x414, &x432);
- { uint64_t x435; uint8_t x436 = _addcarryx_u64(x433, x381, x417, &x435);
- { uint64_t x438; uint8_t x439 = _addcarryx_u64(x436, x384, x420, &x438);
- { uint64_t x441; uint8_t x442 = _addcarryx_u64(x439, x387, x423, &x441);
- { uint64_t x444; uint8_t x445 = _addcarryx_u64(x442, x390, x426, &x444);
- { uint64_t x447; uint8_t x448 = _addcarryx_u64(x445, x393, x427, &x447);
- { uint8_t x449 = (x448 + x394);
- { uint64_t x452; uint64_t x451 = _mulx_u64(x13, x15, &x452);
- { uint64_t x455; uint64_t x454 = _mulx_u64(x13, x17, &x455);
- { uint64_t x458; uint64_t x457 = _mulx_u64(x13, x19, &x458);
- { uint64_t x461; uint64_t x460 = _mulx_u64(x13, x21, &x461);
- { uint64_t x464; uint64_t x463 = _mulx_u64(x13, x23, &x464);
- { uint64_t x467; uint64_t x466 = _mulx_u64(x13, x22, &x467);
- { uint64_t x469; uint8_t x470 = _addcarryx_u64(0x0, x452, x454, &x469);
- { uint64_t x472; uint8_t x473 = _addcarryx_u64(x470, x455, x457, &x472);
- { uint64_t x475; uint8_t x476 = _addcarryx_u64(x473, x458, x460, &x475);
- { uint64_t x478; uint8_t x479 = _addcarryx_u64(x476, x461, x463, &x478);
- { uint64_t x481; uint8_t x482 = _addcarryx_u64(x479, x464, x466, &x481);
- { uint64_t x484; uint8_t _ = _addcarryx_u64(0x0, x482, x467, &x484);
- { uint64_t x487; uint8_t x488 = _addcarryx_u64(0x0, x432, x451, &x487);
- { uint64_t x490; uint8_t x491 = _addcarryx_u64(x488, x435, x469, &x490);
- { uint64_t x493; uint8_t x494 = _addcarryx_u64(x491, x438, x472, &x493);
- { uint64_t x496; uint8_t x497 = _addcarryx_u64(x494, x441, x475, &x496);
- { uint64_t x499; uint8_t x500 = _addcarryx_u64(x497, x444, x478, &x499);
- { uint64_t x502; uint8_t x503 = _addcarryx_u64(x500, x447, x481, &x502);
- { uint64_t x505; uint8_t x506 = _addcarryx_u64(x503, x449, x484, &x505);
- { uint64_t _; uint64_t x508 = _mulx_u64(x487, 0x8e38e38e38e38e39L, &_);
- { uint64_t x512; uint64_t x511 = _mulx_u64(x508, 0xfffffffffffffff7L, &x512);
- { uint64_t x515; uint64_t x514 = _mulx_u64(x508, 0xffffffffffffffffL, &x515);
- { uint64_t x518; uint64_t x517 = _mulx_u64(x508, 0xffffffffffffffffL, &x518);
- { uint64_t x521; uint64_t x520 = _mulx_u64(x508, 0xffffffffffffffffL, &x521);
- { uint64_t x524; uint64_t x523 = _mulx_u64(x508, 0xffffffffffffffffL, &x524);
- { uint64_t x526; uint8_t x527 = _addcarryx_u64(0x0, x512, x514, &x526);
- { uint64_t x529; uint8_t x530 = _addcarryx_u64(x527, x515, x517, &x529);
- { uint64_t x532; uint8_t x533 = _addcarryx_u64(x530, x518, x520, &x532);
- { uint64_t x535; uint8_t x536 = _addcarryx_u64(x533, x521, x523, &x535);
- { uint64_t x538; uint8_t x539 = _addcarryx_u64(x536, x524, x508, &x538);
- { uint64_t _; uint8_t x542 = _addcarryx_u64(0x0, x487, x511, &_);
- { uint64_t x544; uint8_t x545 = _addcarryx_u64(x542, x490, x526, &x544);
- { uint64_t x547; uint8_t x548 = _addcarryx_u64(x545, x493, x529, &x547);
- { uint64_t x550; uint8_t x551 = _addcarryx_u64(x548, x496, x532, &x550);
- { uint64_t x553; uint8_t x554 = _addcarryx_u64(x551, x499, x535, &x553);
- { uint64_t x556; uint8_t x557 = _addcarryx_u64(x554, x502, x538, &x556);
- { uint64_t x559; uint8_t x560 = _addcarryx_u64(x557, x505, x539, &x559);
- { uint8_t x561 = (x560 + x506);
- { uint64_t x564; uint64_t x563 = _mulx_u64(x12, x15, &x564);
- { uint64_t x567; uint64_t x566 = _mulx_u64(x12, x17, &x567);
- { uint64_t x570; uint64_t x569 = _mulx_u64(x12, x19, &x570);
- { uint64_t x573; uint64_t x572 = _mulx_u64(x12, x21, &x573);
- { uint64_t x576; uint64_t x575 = _mulx_u64(x12, x23, &x576);
- { uint64_t x579; uint64_t x578 = _mulx_u64(x12, x22, &x579);
- { uint64_t x581; uint8_t x582 = _addcarryx_u64(0x0, x564, x566, &x581);
- { uint64_t x584; uint8_t x585 = _addcarryx_u64(x582, x567, x569, &x584);
- { uint64_t x587; uint8_t x588 = _addcarryx_u64(x585, x570, x572, &x587);
- { uint64_t x590; uint8_t x591 = _addcarryx_u64(x588, x573, x575, &x590);
- { uint64_t x593; uint8_t x594 = _addcarryx_u64(x591, x576, x578, &x593);
- { uint64_t x596; uint8_t _ = _addcarryx_u64(0x0, x594, x579, &x596);
- { uint64_t x599; uint8_t x600 = _addcarryx_u64(0x0, x544, x563, &x599);
- { uint64_t x602; uint8_t x603 = _addcarryx_u64(x600, x547, x581, &x602);
- { uint64_t x605; uint8_t x606 = _addcarryx_u64(x603, x550, x584, &x605);
- { uint64_t x608; uint8_t x609 = _addcarryx_u64(x606, x553, x587, &x608);
- { uint64_t x611; uint8_t x612 = _addcarryx_u64(x609, x556, x590, &x611);
- { uint64_t x614; uint8_t x615 = _addcarryx_u64(x612, x559, x593, &x614);
- { uint64_t x617; uint8_t x618 = _addcarryx_u64(x615, x561, x596, &x617);
- { uint64_t _; uint64_t x620 = _mulx_u64(x599, 0x8e38e38e38e38e39L, &_);
- { uint64_t x624; uint64_t x623 = _mulx_u64(x620, 0xfffffffffffffff7L, &x624);
- { uint64_t x627; uint64_t x626 = _mulx_u64(x620, 0xffffffffffffffffL, &x627);
- { uint64_t x630; uint64_t x629 = _mulx_u64(x620, 0xffffffffffffffffL, &x630);
- { uint64_t x633; uint64_t x632 = _mulx_u64(x620, 0xffffffffffffffffL, &x633);
- { uint64_t x636; uint64_t x635 = _mulx_u64(x620, 0xffffffffffffffffL, &x636);
- { uint64_t x638; uint8_t x639 = _addcarryx_u64(0x0, x624, x626, &x638);
- { uint64_t x641; uint8_t x642 = _addcarryx_u64(x639, x627, x629, &x641);
- { uint64_t x644; uint8_t x645 = _addcarryx_u64(x642, x630, x632, &x644);
- { uint64_t x647; uint8_t x648 = _addcarryx_u64(x645, x633, x635, &x647);
- { uint64_t x650; uint8_t x651 = _addcarryx_u64(x648, x636, x620, &x650);
- { uint64_t _; uint8_t x654 = _addcarryx_u64(0x0, x599, x623, &_);
- { uint64_t x656; uint8_t x657 = _addcarryx_u64(x654, x602, x638, &x656);
- { uint64_t x659; uint8_t x660 = _addcarryx_u64(x657, x605, x641, &x659);
- { uint64_t x662; uint8_t x663 = _addcarryx_u64(x660, x608, x644, &x662);
- { uint64_t x665; uint8_t x666 = _addcarryx_u64(x663, x611, x647, &x665);
- { uint64_t x668; uint8_t x669 = _addcarryx_u64(x666, x614, x650, &x668);
- { uint64_t x671; uint8_t x672 = _addcarryx_u64(x669, x617, x651, &x671);
- { uint8_t x673 = (x672 + x618);
- { uint64_t x675; uint8_t x676 = _subborrow_u64(0x0, x656, 0xfffffffffffffff7L, &x675);
- { uint64_t x678; uint8_t x679 = _subborrow_u64(x676, x659, 0xffffffffffffffffL, &x678);
- { uint64_t x681; uint8_t x682 = _subborrow_u64(x679, x662, 0xffffffffffffffffL, &x681);
- { uint64_t x684; uint8_t x685 = _subborrow_u64(x682, x665, 0xffffffffffffffffL, &x684);
- { uint64_t x687; uint8_t x688 = _subborrow_u64(x685, x668, 0xffffffffffffffffL, &x687);
- { uint64_t x690; uint8_t x691 = _subborrow_u64(x688, x671, 0x1, &x690);
- { uint64_t _; uint8_t x694 = _subborrow_u64(x691, x673, 0x0, &_);
- { uint64_t x695 = cmovznz64(x694, x690, x671);
- { uint64_t x696 = cmovznz64(x694, x687, x668);
- { uint64_t x697 = cmovznz64(x694, x684, x665);
- { uint64_t x698 = cmovznz64(x694, x681, x662);
- { uint64_t x699 = cmovznz64(x694, x678, x659);
- { uint64_t x700 = cmovznz64(x694, x675, x656);
- out[0] = x700;
- out[1] = x699;
- out[2] = x698;
- out[3] = x697;
- out[4] = x696;
- out[5] = x695;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e321m9_6limbs/femul.v b/src/Specific/montgomery64_2e321m9_6limbs/femul.v
deleted file mode 100644
index 4b75e66ff..000000000
--- a/src/Specific/montgomery64_2e321m9_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e321m9_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e321m9_6limbs/femulDisplay.log b/src/Specific/montgomery64_2e321m9_6limbs/femulDisplay.log
deleted file mode 100644
index adf3b5b55..000000000
--- a/src/Specific/montgomery64_2e321m9_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,240 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint64_t x26 = mulx_u64(x5, x15);
- uint64_t x28, uint64_t x29 = mulx_u64(x5, x17);
- uint64_t x31, uint64_t x32 = mulx_u64(x5, x19);
- uint64_t x34, uint64_t x35 = mulx_u64(x5, x21);
- uint64_t x37, uint64_t x38 = mulx_u64(x5, x23);
- uint64_t x40, uint64_t x41 = mulx_u64(x5, x22);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x26, x28);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x29, x31);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x47, x32, x34);
- uint64_t x52, uint8_t x53 = addcarryx_u64(x50, x35, x37);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x38, x40);
- uint64_t x58, uint8_t _ = addcarryx_u64(0x0, x56, x41);
- uint64_t x61, uint64_t _ = mulx_u64(x25, 0x8e38e38e38e38e39L);
- uint64_t x64, uint64_t x65 = mulx_u64(x61, 0xfffffffffffffff7L);
- uint64_t x67, uint64_t x68 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x70, uint64_t x71 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x73, uint64_t x74 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x76, uint64_t x77 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x79, uint8_t x80 = addcarryx_u64(0x0, x65, x67);
- uint64_t x82, uint8_t x83 = addcarryx_u64(x80, x68, x70);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x71, x73);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x74, x76);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x77, x61);
- uint64_t _, uint8_t x95 = addcarryx_u64(0x0, x25, x64);
- uint64_t x97, uint8_t x98 = addcarryx_u64(x95, x43, x79);
- uint64_t x100, uint8_t x101 = addcarryx_u64(x98, x46, x82);
- uint64_t x103, uint8_t x104 = addcarryx_u64(x101, x49, x85);
- uint64_t x106, uint8_t x107 = addcarryx_u64(x104, x52, x88);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x55, x91);
- uint64_t x112, uint8_t x113 = addcarryx_u64(x110, x58, x92);
- uint64_t x115, uint64_t x116 = mulx_u64(x7, x15);
- uint64_t x118, uint64_t x119 = mulx_u64(x7, x17);
- uint64_t x121, uint64_t x122 = mulx_u64(x7, x19);
- uint64_t x124, uint64_t x125 = mulx_u64(x7, x21);
- uint64_t x127, uint64_t x128 = mulx_u64(x7, x23);
- uint64_t x130, uint64_t x131 = mulx_u64(x7, x22);
- uint64_t x133, uint8_t x134 = addcarryx_u64(0x0, x116, x118);
- uint64_t x136, uint8_t x137 = addcarryx_u64(x134, x119, x121);
- uint64_t x139, uint8_t x140 = addcarryx_u64(x137, x122, x124);
- uint64_t x142, uint8_t x143 = addcarryx_u64(x140, x125, x127);
- uint64_t x145, uint8_t x146 = addcarryx_u64(x143, x128, x130);
- uint64_t x148, uint8_t _ = addcarryx_u64(0x0, x146, x131);
- uint64_t x151, uint8_t x152 = addcarryx_u64(0x0, x97, x115);
- uint64_t x154, uint8_t x155 = addcarryx_u64(x152, x100, x133);
- uint64_t x157, uint8_t x158 = addcarryx_u64(x155, x103, x136);
- uint64_t x160, uint8_t x161 = addcarryx_u64(x158, x106, x139);
- uint64_t x163, uint8_t x164 = addcarryx_u64(x161, x109, x142);
- uint64_t x166, uint8_t x167 = addcarryx_u64(x164, x112, x145);
- uint64_t x169, uint8_t x170 = addcarryx_u64(x167, x113, x148);
- uint64_t x172, uint64_t _ = mulx_u64(x151, 0x8e38e38e38e38e39L);
- uint64_t x175, uint64_t x176 = mulx_u64(x172, 0xfffffffffffffff7L);
- uint64_t x178, uint64_t x179 = mulx_u64(x172, 0xffffffffffffffffL);
- uint64_t x181, uint64_t x182 = mulx_u64(x172, 0xffffffffffffffffL);
- uint64_t x184, uint64_t x185 = mulx_u64(x172, 0xffffffffffffffffL);
- uint64_t x187, uint64_t x188 = mulx_u64(x172, 0xffffffffffffffffL);
- uint64_t x190, uint8_t x191 = addcarryx_u64(0x0, x176, x178);
- uint64_t x193, uint8_t x194 = addcarryx_u64(x191, x179, x181);
- uint64_t x196, uint8_t x197 = addcarryx_u64(x194, x182, x184);
- uint64_t x199, uint8_t x200 = addcarryx_u64(x197, x185, x187);
- uint64_t x202, uint8_t x203 = addcarryx_u64(x200, x188, x172);
- uint64_t _, uint8_t x206 = addcarryx_u64(0x0, x151, x175);
- uint64_t x208, uint8_t x209 = addcarryx_u64(x206, x154, x190);
- uint64_t x211, uint8_t x212 = addcarryx_u64(x209, x157, x193);
- uint64_t x214, uint8_t x215 = addcarryx_u64(x212, x160, x196);
- uint64_t x217, uint8_t x218 = addcarryx_u64(x215, x163, x199);
- uint64_t x220, uint8_t x221 = addcarryx_u64(x218, x166, x202);
- uint64_t x223, uint8_t x224 = addcarryx_u64(x221, x169, x203);
- uint8_t x225 = (x224 + x170);
- uint64_t x227, uint64_t x228 = mulx_u64(x9, x15);
- uint64_t x230, uint64_t x231 = mulx_u64(x9, x17);
- uint64_t x233, uint64_t x234 = mulx_u64(x9, x19);
- uint64_t x236, uint64_t x237 = mulx_u64(x9, x21);
- uint64_t x239, uint64_t x240 = mulx_u64(x9, x23);
- uint64_t x242, uint64_t x243 = mulx_u64(x9, x22);
- uint64_t x245, uint8_t x246 = addcarryx_u64(0x0, x228, x230);
- uint64_t x248, uint8_t x249 = addcarryx_u64(x246, x231, x233);
- uint64_t x251, uint8_t x252 = addcarryx_u64(x249, x234, x236);
- uint64_t x254, uint8_t x255 = addcarryx_u64(x252, x237, x239);
- uint64_t x257, uint8_t x258 = addcarryx_u64(x255, x240, x242);
- uint64_t x260, uint8_t _ = addcarryx_u64(0x0, x258, x243);
- uint64_t x263, uint8_t x264 = addcarryx_u64(0x0, x208, x227);
- uint64_t x266, uint8_t x267 = addcarryx_u64(x264, x211, x245);
- uint64_t x269, uint8_t x270 = addcarryx_u64(x267, x214, x248);
- uint64_t x272, uint8_t x273 = addcarryx_u64(x270, x217, x251);
- uint64_t x275, uint8_t x276 = addcarryx_u64(x273, x220, x254);
- uint64_t x278, uint8_t x279 = addcarryx_u64(x276, x223, x257);
- uint64_t x281, uint8_t x282 = addcarryx_u64(x279, x225, x260);
- uint64_t x284, uint64_t _ = mulx_u64(x263, 0x8e38e38e38e38e39L);
- uint64_t x287, uint64_t x288 = mulx_u64(x284, 0xfffffffffffffff7L);
- uint64_t x290, uint64_t x291 = mulx_u64(x284, 0xffffffffffffffffL);
- uint64_t x293, uint64_t x294 = mulx_u64(x284, 0xffffffffffffffffL);
- uint64_t x296, uint64_t x297 = mulx_u64(x284, 0xffffffffffffffffL);
- uint64_t x299, uint64_t x300 = mulx_u64(x284, 0xffffffffffffffffL);
- uint64_t x302, uint8_t x303 = addcarryx_u64(0x0, x288, x290);
- uint64_t x305, uint8_t x306 = addcarryx_u64(x303, x291, x293);
- uint64_t x308, uint8_t x309 = addcarryx_u64(x306, x294, x296);
- uint64_t x311, uint8_t x312 = addcarryx_u64(x309, x297, x299);
- uint64_t x314, uint8_t x315 = addcarryx_u64(x312, x300, x284);
- uint64_t _, uint8_t x318 = addcarryx_u64(0x0, x263, x287);
- uint64_t x320, uint8_t x321 = addcarryx_u64(x318, x266, x302);
- uint64_t x323, uint8_t x324 = addcarryx_u64(x321, x269, x305);
- uint64_t x326, uint8_t x327 = addcarryx_u64(x324, x272, x308);
- uint64_t x329, uint8_t x330 = addcarryx_u64(x327, x275, x311);
- uint64_t x332, uint8_t x333 = addcarryx_u64(x330, x278, x314);
- uint64_t x335, uint8_t x336 = addcarryx_u64(x333, x281, x315);
- uint8_t x337 = (x336 + x282);
- uint64_t x339, uint64_t x340 = mulx_u64(x11, x15);
- uint64_t x342, uint64_t x343 = mulx_u64(x11, x17);
- uint64_t x345, uint64_t x346 = mulx_u64(x11, x19);
- uint64_t x348, uint64_t x349 = mulx_u64(x11, x21);
- uint64_t x351, uint64_t x352 = mulx_u64(x11, x23);
- uint64_t x354, uint64_t x355 = mulx_u64(x11, x22);
- uint64_t x357, uint8_t x358 = addcarryx_u64(0x0, x340, x342);
- uint64_t x360, uint8_t x361 = addcarryx_u64(x358, x343, x345);
- uint64_t x363, uint8_t x364 = addcarryx_u64(x361, x346, x348);
- uint64_t x366, uint8_t x367 = addcarryx_u64(x364, x349, x351);
- uint64_t x369, uint8_t x370 = addcarryx_u64(x367, x352, x354);
- uint64_t x372, uint8_t _ = addcarryx_u64(0x0, x370, x355);
- uint64_t x375, uint8_t x376 = addcarryx_u64(0x0, x320, x339);
- uint64_t x378, uint8_t x379 = addcarryx_u64(x376, x323, x357);
- uint64_t x381, uint8_t x382 = addcarryx_u64(x379, x326, x360);
- uint64_t x384, uint8_t x385 = addcarryx_u64(x382, x329, x363);
- uint64_t x387, uint8_t x388 = addcarryx_u64(x385, x332, x366);
- uint64_t x390, uint8_t x391 = addcarryx_u64(x388, x335, x369);
- uint64_t x393, uint8_t x394 = addcarryx_u64(x391, x337, x372);
- uint64_t x396, uint64_t _ = mulx_u64(x375, 0x8e38e38e38e38e39L);
- uint64_t x399, uint64_t x400 = mulx_u64(x396, 0xfffffffffffffff7L);
- uint64_t x402, uint64_t x403 = mulx_u64(x396, 0xffffffffffffffffL);
- uint64_t x405, uint64_t x406 = mulx_u64(x396, 0xffffffffffffffffL);
- uint64_t x408, uint64_t x409 = mulx_u64(x396, 0xffffffffffffffffL);
- uint64_t x411, uint64_t x412 = mulx_u64(x396, 0xffffffffffffffffL);
- uint64_t x414, uint8_t x415 = addcarryx_u64(0x0, x400, x402);
- uint64_t x417, uint8_t x418 = addcarryx_u64(x415, x403, x405);
- uint64_t x420, uint8_t x421 = addcarryx_u64(x418, x406, x408);
- uint64_t x423, uint8_t x424 = addcarryx_u64(x421, x409, x411);
- uint64_t x426, uint8_t x427 = addcarryx_u64(x424, x412, x396);
- uint64_t _, uint8_t x430 = addcarryx_u64(0x0, x375, x399);
- uint64_t x432, uint8_t x433 = addcarryx_u64(x430, x378, x414);
- uint64_t x435, uint8_t x436 = addcarryx_u64(x433, x381, x417);
- uint64_t x438, uint8_t x439 = addcarryx_u64(x436, x384, x420);
- uint64_t x441, uint8_t x442 = addcarryx_u64(x439, x387, x423);
- uint64_t x444, uint8_t x445 = addcarryx_u64(x442, x390, x426);
- uint64_t x447, uint8_t x448 = addcarryx_u64(x445, x393, x427);
- uint8_t x449 = (x448 + x394);
- uint64_t x451, uint64_t x452 = mulx_u64(x13, x15);
- uint64_t x454, uint64_t x455 = mulx_u64(x13, x17);
- uint64_t x457, uint64_t x458 = mulx_u64(x13, x19);
- uint64_t x460, uint64_t x461 = mulx_u64(x13, x21);
- uint64_t x463, uint64_t x464 = mulx_u64(x13, x23);
- uint64_t x466, uint64_t x467 = mulx_u64(x13, x22);
- uint64_t x469, uint8_t x470 = addcarryx_u64(0x0, x452, x454);
- uint64_t x472, uint8_t x473 = addcarryx_u64(x470, x455, x457);
- uint64_t x475, uint8_t x476 = addcarryx_u64(x473, x458, x460);
- uint64_t x478, uint8_t x479 = addcarryx_u64(x476, x461, x463);
- uint64_t x481, uint8_t x482 = addcarryx_u64(x479, x464, x466);
- uint64_t x484, uint8_t _ = addcarryx_u64(0x0, x482, x467);
- uint64_t x487, uint8_t x488 = addcarryx_u64(0x0, x432, x451);
- uint64_t x490, uint8_t x491 = addcarryx_u64(x488, x435, x469);
- uint64_t x493, uint8_t x494 = addcarryx_u64(x491, x438, x472);
- uint64_t x496, uint8_t x497 = addcarryx_u64(x494, x441, x475);
- uint64_t x499, uint8_t x500 = addcarryx_u64(x497, x444, x478);
- uint64_t x502, uint8_t x503 = addcarryx_u64(x500, x447, x481);
- uint64_t x505, uint8_t x506 = addcarryx_u64(x503, x449, x484);
- uint64_t x508, uint64_t _ = mulx_u64(x487, 0x8e38e38e38e38e39L);
- uint64_t x511, uint64_t x512 = mulx_u64(x508, 0xfffffffffffffff7L);
- uint64_t x514, uint64_t x515 = mulx_u64(x508, 0xffffffffffffffffL);
- uint64_t x517, uint64_t x518 = mulx_u64(x508, 0xffffffffffffffffL);
- uint64_t x520, uint64_t x521 = mulx_u64(x508, 0xffffffffffffffffL);
- uint64_t x523, uint64_t x524 = mulx_u64(x508, 0xffffffffffffffffL);
- uint64_t x526, uint8_t x527 = addcarryx_u64(0x0, x512, x514);
- uint64_t x529, uint8_t x530 = addcarryx_u64(x527, x515, x517);
- uint64_t x532, uint8_t x533 = addcarryx_u64(x530, x518, x520);
- uint64_t x535, uint8_t x536 = addcarryx_u64(x533, x521, x523);
- uint64_t x538, uint8_t x539 = addcarryx_u64(x536, x524, x508);
- uint64_t _, uint8_t x542 = addcarryx_u64(0x0, x487, x511);
- uint64_t x544, uint8_t x545 = addcarryx_u64(x542, x490, x526);
- uint64_t x547, uint8_t x548 = addcarryx_u64(x545, x493, x529);
- uint64_t x550, uint8_t x551 = addcarryx_u64(x548, x496, x532);
- uint64_t x553, uint8_t x554 = addcarryx_u64(x551, x499, x535);
- uint64_t x556, uint8_t x557 = addcarryx_u64(x554, x502, x538);
- uint64_t x559, uint8_t x560 = addcarryx_u64(x557, x505, x539);
- uint8_t x561 = (x560 + x506);
- uint64_t x563, uint64_t x564 = mulx_u64(x12, x15);
- uint64_t x566, uint64_t x567 = mulx_u64(x12, x17);
- uint64_t x569, uint64_t x570 = mulx_u64(x12, x19);
- uint64_t x572, uint64_t x573 = mulx_u64(x12, x21);
- uint64_t x575, uint64_t x576 = mulx_u64(x12, x23);
- uint64_t x578, uint64_t x579 = mulx_u64(x12, x22);
- uint64_t x581, uint8_t x582 = addcarryx_u64(0x0, x564, x566);
- uint64_t x584, uint8_t x585 = addcarryx_u64(x582, x567, x569);
- uint64_t x587, uint8_t x588 = addcarryx_u64(x585, x570, x572);
- uint64_t x590, uint8_t x591 = addcarryx_u64(x588, x573, x575);
- uint64_t x593, uint8_t x594 = addcarryx_u64(x591, x576, x578);
- uint64_t x596, uint8_t _ = addcarryx_u64(0x0, x594, x579);
- uint64_t x599, uint8_t x600 = addcarryx_u64(0x0, x544, x563);
- uint64_t x602, uint8_t x603 = addcarryx_u64(x600, x547, x581);
- uint64_t x605, uint8_t x606 = addcarryx_u64(x603, x550, x584);
- uint64_t x608, uint8_t x609 = addcarryx_u64(x606, x553, x587);
- uint64_t x611, uint8_t x612 = addcarryx_u64(x609, x556, x590);
- uint64_t x614, uint8_t x615 = addcarryx_u64(x612, x559, x593);
- uint64_t x617, uint8_t x618 = addcarryx_u64(x615, x561, x596);
- uint64_t x620, uint64_t _ = mulx_u64(x599, 0x8e38e38e38e38e39L);
- uint64_t x623, uint64_t x624 = mulx_u64(x620, 0xfffffffffffffff7L);
- uint64_t x626, uint64_t x627 = mulx_u64(x620, 0xffffffffffffffffL);
- uint64_t x629, uint64_t x630 = mulx_u64(x620, 0xffffffffffffffffL);
- uint64_t x632, uint64_t x633 = mulx_u64(x620, 0xffffffffffffffffL);
- uint64_t x635, uint64_t x636 = mulx_u64(x620, 0xffffffffffffffffL);
- uint64_t x638, uint8_t x639 = addcarryx_u64(0x0, x624, x626);
- uint64_t x641, uint8_t x642 = addcarryx_u64(x639, x627, x629);
- uint64_t x644, uint8_t x645 = addcarryx_u64(x642, x630, x632);
- uint64_t x647, uint8_t x648 = addcarryx_u64(x645, x633, x635);
- uint64_t x650, uint8_t x651 = addcarryx_u64(x648, x636, x620);
- uint64_t _, uint8_t x654 = addcarryx_u64(0x0, x599, x623);
- uint64_t x656, uint8_t x657 = addcarryx_u64(x654, x602, x638);
- uint64_t x659, uint8_t x660 = addcarryx_u64(x657, x605, x641);
- uint64_t x662, uint8_t x663 = addcarryx_u64(x660, x608, x644);
- uint64_t x665, uint8_t x666 = addcarryx_u64(x663, x611, x647);
- uint64_t x668, uint8_t x669 = addcarryx_u64(x666, x614, x650);
- uint64_t x671, uint8_t x672 = addcarryx_u64(x669, x617, x651);
- uint8_t x673 = (x672 + x618);
- uint64_t x675, uint8_t x676 = subborrow_u64(0x0, x656, 0xfffffffffffffff7L);
- uint64_t x678, uint8_t x679 = subborrow_u64(x676, x659, 0xffffffffffffffffL);
- uint64_t x681, uint8_t x682 = subborrow_u64(x679, x662, 0xffffffffffffffffL);
- uint64_t x684, uint8_t x685 = subborrow_u64(x682, x665, 0xffffffffffffffffL);
- uint64_t x687, uint8_t x688 = subborrow_u64(x685, x668, 0xffffffffffffffffL);
- uint64_t x690, uint8_t x691 = subborrow_u64(x688, x671, 0x1);
- uint64_t _, uint8_t x694 = subborrow_u64(x691, x673, 0x0);
- uint64_t x695 = cmovznz64(x694, x690, x671);
- uint64_t x696 = cmovznz64(x694, x687, x668);
- uint64_t x697 = cmovznz64(x694, x684, x665);
- uint64_t x698 = cmovznz64(x694, x681, x662);
- uint64_t x699 = cmovznz64(x694, x678, x659);
- uint64_t x700 = cmovznz64(x694, x675, x656);
- return (x695, x696, x697, x698, x699, x700))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e321m9_6limbs/femulDisplay.v b/src/Specific/montgomery64_2e321m9_6limbs/femulDisplay.v
deleted file mode 100644
index 66a1d87e9..000000000
--- a/src/Specific/montgomery64_2e321m9_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e321m9_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e321m9_6limbs/fenz.c b/src/Specific/montgomery64_2e321m9_6limbs/fenz.c
deleted file mode 100644
index c93f74257..000000000
--- a/src/Specific/montgomery64_2e321m9_6limbs/fenz.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x11 = (x10 | x9);
- { uint64_t x12 = (x8 | x11);
- { uint64_t x13 = (x6 | x12);
- { uint64_t x14 = (x4 | x13);
- { uint64_t x15 = (x2 | x14);
- out[0] = x15;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e321m9_6limbs/fenz.v b/src/Specific/montgomery64_2e321m9_6limbs/fenz.v
deleted file mode 100644
index a6a081c6b..000000000
--- a/src/Specific/montgomery64_2e321m9_6limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e321m9_6limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e321m9_6limbs/fenzDisplay.log b/src/Specific/montgomery64_2e321m9_6limbs/fenzDisplay.log
deleted file mode 100644
index f39f1d91b..000000000
--- a/src/Specific/montgomery64_2e321m9_6limbs/fenzDisplay.log
+++ /dev/null
@@ -1,12 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x11 = (x10 | x9);
- uint64_t x12 = (x8 | x11);
- uint64_t x13 = (x6 | x12);
- uint64_t x14 = (x4 | x13);
- uint64_t x15 = (x2 | x14);
- return x15)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e321m9_6limbs/fenzDisplay.v b/src/Specific/montgomery64_2e321m9_6limbs/fenzDisplay.v
deleted file mode 100644
index c6254b2eb..000000000
--- a/src/Specific/montgomery64_2e321m9_6limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e321m9_6limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e321m9_6limbs/feopp.c b/src/Specific/montgomery64_2e321m9_6limbs/feopp.c
deleted file mode 100644
index f0a4603ea..000000000
--- a/src/Specific/montgomery64_2e321m9_6limbs/feopp.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feopp(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12; uint8_t x13 = _subborrow_u64(0x0, 0x0, x2, &x12);
- { uint64_t x15; uint8_t x16 = _subborrow_u64(x13, 0x0, x4, &x15);
- { uint64_t x18; uint8_t x19 = _subborrow_u64(x16, 0x0, x6, &x18);
- { uint64_t x21; uint8_t x22 = _subborrow_u64(x19, 0x0, x8, &x21);
- { uint64_t x24; uint8_t x25 = _subborrow_u64(x22, 0x0, x10, &x24);
- { uint64_t x27; uint8_t x28 = _subborrow_u64(x25, 0x0, x9, &x27);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0xfffffffffffffff7L);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(0x0, x12, x30, &x32);
- { uint64_t x34 = (x29 & 0xffffffffffffffffL);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x33, x15, x34, &x36);
- { uint64_t x38 = (x29 & 0xffffffffffffffffL);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x37, x18, x38, &x40);
- { uint64_t x42 = (x29 & 0xffffffffffffffffL);
- { uint64_t x44; uint8_t x45 = _addcarryx_u64(x41, x21, x42, &x44);
- { uint64_t x46 = (x29 & 0xffffffffffffffffL);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x45, x24, x46, &x48);
- { uint8_t x50 = ((uint8_t)x29 & 0x1);
- { uint64_t x52; uint8_t _ = _addcarryx_u64(x49, x27, x50, &x52);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e321m9_6limbs/feopp.v b/src/Specific/montgomery64_2e321m9_6limbs/feopp.v
deleted file mode 100644
index d7d19fbc2..000000000
--- a/src/Specific/montgomery64_2e321m9_6limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e321m9_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e321m9_6limbs/feoppDisplay.log b/src/Specific/montgomery64_2e321m9_6limbs/feoppDisplay.log
deleted file mode 100644
index 07d8bfd39..000000000
--- a/src/Specific/montgomery64_2e321m9_6limbs/feoppDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x15, uint8_t x16 = subborrow_u64(x13, 0x0, x4);
- uint64_t x18, uint8_t x19 = subborrow_u64(x16, 0x0, x6);
- uint64_t x21, uint8_t x22 = subborrow_u64(x19, 0x0, x8);
- uint64_t x24, uint8_t x25 = subborrow_u64(x22, 0x0, x10);
- uint64_t x27, uint8_t x28 = subborrow_u64(x25, 0x0, x9);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0xfffffffffffffff7L);
- uint64_t x32, uint8_t x33 = addcarryx_u64(0x0, x12, x30);
- uint64_t x34 = (x29 & 0xffffffffffffffffL);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x33, x15, x34);
- uint64_t x38 = (x29 & 0xffffffffffffffffL);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x37, x18, x38);
- uint64_t x42 = (x29 & 0xffffffffffffffffL);
- uint64_t x44, uint8_t x45 = addcarryx_u64(x41, x21, x42);
- uint64_t x46 = (x29 & 0xffffffffffffffffL);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x45, x24, x46);
- uint8_t x50 = ((uint8_t)x29 & 0x1);
- uint64_t x52, uint8_t _ = addcarryx_u64(x49, x27, x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e321m9_6limbs/feoppDisplay.v b/src/Specific/montgomery64_2e321m9_6limbs/feoppDisplay.v
deleted file mode 100644
index 6a052f147..000000000
--- a/src/Specific/montgomery64_2e321m9_6limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e321m9_6limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e321m9_6limbs/fesquare.c b/src/Specific/montgomery64_2e321m9_6limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e321m9_6limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e321m9_6limbs/fesub.c b/src/Specific/montgomery64_2e321m9_6limbs/fesub.c
deleted file mode 100644
index 5bb8fc37b..000000000
--- a/src/Specific/montgomery64_2e321m9_6limbs/fesub.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _subborrow_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _subborrow_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _subborrow_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _subborrow_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _subborrow_u64(x38, x12, x22, &x40);
- { uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- { uint64_t x43 = (x42 & 0xfffffffffffffff7L);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(0x0, x25, x43, &x45);
- { uint64_t x47 = (x42 & 0xffffffffffffffffL);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x46, x28, x47, &x49);
- { uint64_t x51 = (x42 & 0xffffffffffffffffL);
- { uint64_t x53; uint8_t x54 = _addcarryx_u64(x50, x31, x51, &x53);
- { uint64_t x55 = (x42 & 0xffffffffffffffffL);
- { uint64_t x57; uint8_t x58 = _addcarryx_u64(x54, x34, x55, &x57);
- { uint64_t x59 = (x42 & 0xffffffffffffffffL);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x58, x37, x59, &x61);
- { uint8_t x63 = ((uint8_t)x42 & 0x1);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(x62, x40, x63, &x65);
- out[0] = x45;
- out[1] = x49;
- out[2] = x53;
- out[3] = x57;
- out[4] = x61;
- out[5] = x65;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e321m9_6limbs/fesub.v b/src/Specific/montgomery64_2e321m9_6limbs/fesub.v
deleted file mode 100644
index 54be69609..000000000
--- a/src/Specific/montgomery64_2e321m9_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e321m9_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e321m9_6limbs/fesubDisplay.log b/src/Specific/montgomery64_2e321m9_6limbs/fesubDisplay.log
deleted file mode 100644
index 482ae2c09..000000000
--- a/src/Specific/montgomery64_2e321m9_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = subborrow_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = subborrow_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = subborrow_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = subborrow_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = subborrow_u64(x38, x12, x22);
- uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- uint64_t x43 = (x42 & 0xfffffffffffffff7L);
- uint64_t x45, uint8_t x46 = addcarryx_u64(0x0, x25, x43);
- uint64_t x47 = (x42 & 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x46, x28, x47);
- uint64_t x51 = (x42 & 0xffffffffffffffffL);
- uint64_t x53, uint8_t x54 = addcarryx_u64(x50, x31, x51);
- uint64_t x55 = (x42 & 0xffffffffffffffffL);
- uint64_t x57, uint8_t x58 = addcarryx_u64(x54, x34, x55);
- uint64_t x59 = (x42 & 0xffffffffffffffffL);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x58, x37, x59);
- uint8_t x63 = ((uint8_t)x42 & 0x1);
- uint64_t x65, uint8_t _ = addcarryx_u64(x62, x40, x63);
- (Return x65, Return x61, Return x57, Return x53, Return x49, Return x45))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e321m9_6limbs/fesubDisplay.v b/src/Specific/montgomery64_2e321m9_6limbs/fesubDisplay.v
deleted file mode 100644
index 5b27aece0..000000000
--- a/src/Specific/montgomery64_2e321m9_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e321m9_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e321m9_6limbs/py_interpreter.sh b/src/Specific/montgomery64_2e321m9_6limbs/py_interpreter.sh
deleted file mode 100755
index 568a64ea0..000000000
--- a/src/Specific/montgomery64_2e321m9_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**321 - 9' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e322m2e161m1_6limbs/CurveParameters.v b/src/Specific/montgomery64_2e322m2e161m1_6limbs/CurveParameters.v
deleted file mode 100644
index 340e7f55a..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^322 - 2^161 - 1
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 64;
- bitwidth := 64;
- s := 2^322;
- c := [(1, 1); (2^161, 1)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e322m2e161m1_6limbs/Synthesis.v b/src/Specific/montgomery64_2e322m2e161m1_6limbs/Synthesis.v
deleted file mode 100644
index 414b2efaf..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e322m2e161m1_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/montgomery64_2e322m2e161m1_6limbs/compiler.sh b/src/Specific/montgomery64_2e322m2e161m1_6limbs/compiler.sh
deleted file mode 100755
index 0a29f9a09..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e322m2e161m1_6limbs/compilerxx.sh b/src/Specific/montgomery64_2e322m2e161m1_6limbs/compilerxx.sh
deleted file mode 100755
index 0b186ffe2..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e322m2e161m1_6limbs/feadd.c b/src/Specific/montgomery64_2e322m2e161m1_6limbs/feadd.c
deleted file mode 100644
index 44531fadd..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_6limbs/feadd.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _addcarryx_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _addcarryx_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x38, x12, x22, &x40);
- { uint64_t x43; uint8_t x44 = _subborrow_u64(0x0, x25, 0xffffffffffffffffL, &x43);
- { uint64_t x46; uint8_t x47 = _subborrow_u64(x44, x28, 0xffffffffffffffffL, &x46);
- { uint64_t x49; uint8_t x50 = _subborrow_u64(x47, x31, 0xfffffffdffffffffL, &x49);
- { uint64_t x52; uint8_t x53 = _subborrow_u64(x50, x34, 0xffffffffffffffffL, &x52);
- { uint64_t x55; uint8_t x56 = _subborrow_u64(x53, x37, 0xffffffffffffffffL, &x55);
- { uint64_t x58; uint8_t x59 = _subborrow_u64(x56, x40, 0x3, &x58);
- { uint64_t _; uint8_t x62 = _subborrow_u64(x59, x41, 0x0, &_);
- { uint64_t x63 = cmovznz64(x62, x58, x40);
- { uint64_t x64 = cmovznz64(x62, x55, x37);
- { uint64_t x65 = cmovznz64(x62, x52, x34);
- { uint64_t x66 = cmovznz64(x62, x49, x31);
- { uint64_t x67 = cmovznz64(x62, x46, x28);
- { uint64_t x68 = cmovznz64(x62, x43, x25);
- out[0] = x68;
- out[1] = x67;
- out[2] = x66;
- out[3] = x65;
- out[4] = x64;
- out[5] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e322m2e161m1_6limbs/feadd.v b/src/Specific/montgomery64_2e322m2e161m1_6limbs/feadd.v
deleted file mode 100644
index ff6d282d2..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e322m2e161m1_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e322m2e161m1_6limbs/feaddDisplay.log b/src/Specific/montgomery64_2e322m2e161m1_6limbs/feaddDisplay.log
deleted file mode 100644
index 407fc8bb8..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = addcarryx_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = addcarryx_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = addcarryx_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = addcarryx_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x38, x12, x22);
- uint64_t x43, uint8_t x44 = subborrow_u64(0x0, x25, 0xffffffffffffffffL);
- uint64_t x46, uint8_t x47 = subborrow_u64(x44, x28, 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = subborrow_u64(x47, x31, 0xfffffffdffffffffL);
- uint64_t x52, uint8_t x53 = subborrow_u64(x50, x34, 0xffffffffffffffffL);
- uint64_t x55, uint8_t x56 = subborrow_u64(x53, x37, 0xffffffffffffffffL);
- uint64_t x58, uint8_t x59 = subborrow_u64(x56, x40, 0x3);
- uint64_t _, uint8_t x62 = subborrow_u64(x59, x41, 0x0);
- uint64_t x63 = cmovznz64(x62, x58, x40);
- uint64_t x64 = cmovznz64(x62, x55, x37);
- uint64_t x65 = cmovznz64(x62, x52, x34);
- uint64_t x66 = cmovznz64(x62, x49, x31);
- uint64_t x67 = cmovznz64(x62, x46, x28);
- uint64_t x68 = cmovznz64(x62, x43, x25);
- return (x63, x64, x65, x66, x67, x68))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e322m2e161m1_6limbs/feaddDisplay.v b/src/Specific/montgomery64_2e322m2e161m1_6limbs/feaddDisplay.v
deleted file mode 100644
index 963e5e0a3..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e322m2e161m1_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e322m2e161m1_6limbs/femul.c b/src/Specific/montgomery64_2e322m2e161m1_6limbs/femul.c
deleted file mode 100644
index 21650b616..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_6limbs/femul.c
+++ /dev/null
@@ -1,260 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x26; uint64_t x25 = _mulx_u64(x5, x15, &x26);
- { uint64_t x29; uint64_t x28 = _mulx_u64(x5, x17, &x29);
- { uint64_t x32; uint64_t x31 = _mulx_u64(x5, x19, &x32);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x5, x21, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x5, x23, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x5, x22, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x26, x28, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x29, x31, &x46);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x47, x32, x34, &x49);
- { uint64_t x52; uint8_t x53 = _addcarryx_u64(x50, x35, x37, &x52);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x38, x40, &x55);
- { uint64_t x58; uint8_t _ = _addcarryx_u64(0x0, x56, x41, &x58);
- { uint64_t x62; uint64_t x61 = _mulx_u64(x25, 0xffffffffffffffffL, &x62);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x25, 0xffffffffffffffffL, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x25, 0xfffffffdffffffffL, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x25, 0xffffffffffffffffL, &x71);
- { uint64_t x74; uint64_t x73 = _mulx_u64(x25, 0xffffffffffffffffL, &x74);
- { uint8_t x77; uint64_t x76 = _mulx_u64_out_u8(x25, 0x3, &x77);
- { uint64_t x79; uint8_t x80 = _addcarryx_u64(0x0, x62, x64, &x79);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(x80, x65, x67, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x68, x70, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x71, x73, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x74, x76, &x91);
- { uint8_t x93 = (x92 + x77);
- { uint64_t _; uint8_t x96 = _addcarryx_u64(0x0, x25, x61, &_);
- { uint64_t x98; uint8_t x99 = _addcarryx_u64(x96, x43, x79, &x98);
- { uint64_t x101; uint8_t x102 = _addcarryx_u64(x99, x46, x82, &x101);
- { uint64_t x104; uint8_t x105 = _addcarryx_u64(x102, x49, x85, &x104);
- { uint64_t x107; uint8_t x108 = _addcarryx_u64(x105, x52, x88, &x107);
- { uint64_t x110; uint8_t x111 = _addcarryx_u64(x108, x55, x91, &x110);
- { uint64_t x113; uint8_t x114 = _addcarryx_u64(x111, x58, x93, &x113);
- { uint64_t x117; uint64_t x116 = _mulx_u64(x7, x15, &x117);
- { uint64_t x120; uint64_t x119 = _mulx_u64(x7, x17, &x120);
- { uint64_t x123; uint64_t x122 = _mulx_u64(x7, x19, &x123);
- { uint64_t x126; uint64_t x125 = _mulx_u64(x7, x21, &x126);
- { uint64_t x129; uint64_t x128 = _mulx_u64(x7, x23, &x129);
- { uint64_t x132; uint64_t x131 = _mulx_u64(x7, x22, &x132);
- { uint64_t x134; uint8_t x135 = _addcarryx_u64(0x0, x117, x119, &x134);
- { uint64_t x137; uint8_t x138 = _addcarryx_u64(x135, x120, x122, &x137);
- { uint64_t x140; uint8_t x141 = _addcarryx_u64(x138, x123, x125, &x140);
- { uint64_t x143; uint8_t x144 = _addcarryx_u64(x141, x126, x128, &x143);
- { uint64_t x146; uint8_t x147 = _addcarryx_u64(x144, x129, x131, &x146);
- { uint64_t x149; uint8_t _ = _addcarryx_u64(0x0, x147, x132, &x149);
- { uint64_t x152; uint8_t x153 = _addcarryx_u64(0x0, x98, x116, &x152);
- { uint64_t x155; uint8_t x156 = _addcarryx_u64(x153, x101, x134, &x155);
- { uint64_t x158; uint8_t x159 = _addcarryx_u64(x156, x104, x137, &x158);
- { uint64_t x161; uint8_t x162 = _addcarryx_u64(x159, x107, x140, &x161);
- { uint64_t x164; uint8_t x165 = _addcarryx_u64(x162, x110, x143, &x164);
- { uint64_t x167; uint8_t x168 = _addcarryx_u64(x165, x113, x146, &x167);
- { uint64_t x170; uint8_t x171 = _addcarryx_u64(x168, x114, x149, &x170);
- { uint64_t x174; uint64_t x173 = _mulx_u64(x152, 0xffffffffffffffffL, &x174);
- { uint64_t x177; uint64_t x176 = _mulx_u64(x152, 0xffffffffffffffffL, &x177);
- { uint64_t x180; uint64_t x179 = _mulx_u64(x152, 0xfffffffdffffffffL, &x180);
- { uint64_t x183; uint64_t x182 = _mulx_u64(x152, 0xffffffffffffffffL, &x183);
- { uint64_t x186; uint64_t x185 = _mulx_u64(x152, 0xffffffffffffffffL, &x186);
- { uint8_t x189; uint64_t x188 = _mulx_u64_out_u8(x152, 0x3, &x189);
- { uint64_t x191; uint8_t x192 = _addcarryx_u64(0x0, x174, x176, &x191);
- { uint64_t x194; uint8_t x195 = _addcarryx_u64(x192, x177, x179, &x194);
- { uint64_t x197; uint8_t x198 = _addcarryx_u64(x195, x180, x182, &x197);
- { uint64_t x200; uint8_t x201 = _addcarryx_u64(x198, x183, x185, &x200);
- { uint64_t x203; uint8_t x204 = _addcarryx_u64(x201, x186, x188, &x203);
- { uint8_t x205 = (x204 + x189);
- { uint64_t _; uint8_t x208 = _addcarryx_u64(0x0, x152, x173, &_);
- { uint64_t x210; uint8_t x211 = _addcarryx_u64(x208, x155, x191, &x210);
- { uint64_t x213; uint8_t x214 = _addcarryx_u64(x211, x158, x194, &x213);
- { uint64_t x216; uint8_t x217 = _addcarryx_u64(x214, x161, x197, &x216);
- { uint64_t x219; uint8_t x220 = _addcarryx_u64(x217, x164, x200, &x219);
- { uint64_t x222; uint8_t x223 = _addcarryx_u64(x220, x167, x203, &x222);
- { uint64_t x225; uint8_t x226 = _addcarryx_u64(x223, x170, x205, &x225);
- { uint8_t x227 = (x226 + x171);
- { uint64_t x230; uint64_t x229 = _mulx_u64(x9, x15, &x230);
- { uint64_t x233; uint64_t x232 = _mulx_u64(x9, x17, &x233);
- { uint64_t x236; uint64_t x235 = _mulx_u64(x9, x19, &x236);
- { uint64_t x239; uint64_t x238 = _mulx_u64(x9, x21, &x239);
- { uint64_t x242; uint64_t x241 = _mulx_u64(x9, x23, &x242);
- { uint64_t x245; uint64_t x244 = _mulx_u64(x9, x22, &x245);
- { uint64_t x247; uint8_t x248 = _addcarryx_u64(0x0, x230, x232, &x247);
- { uint64_t x250; uint8_t x251 = _addcarryx_u64(x248, x233, x235, &x250);
- { uint64_t x253; uint8_t x254 = _addcarryx_u64(x251, x236, x238, &x253);
- { uint64_t x256; uint8_t x257 = _addcarryx_u64(x254, x239, x241, &x256);
- { uint64_t x259; uint8_t x260 = _addcarryx_u64(x257, x242, x244, &x259);
- { uint64_t x262; uint8_t _ = _addcarryx_u64(0x0, x260, x245, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(0x0, x210, x229, &x265);
- { uint64_t x268; uint8_t x269 = _addcarryx_u64(x266, x213, x247, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(x269, x216, x250, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x219, x253, &x274);
- { uint64_t x277; uint8_t x278 = _addcarryx_u64(x275, x222, x256, &x277);
- { uint64_t x280; uint8_t x281 = _addcarryx_u64(x278, x225, x259, &x280);
- { uint64_t x283; uint8_t x284 = _addcarryx_u64(x281, x227, x262, &x283);
- { uint64_t x287; uint64_t x286 = _mulx_u64(x265, 0xffffffffffffffffL, &x287);
- { uint64_t x290; uint64_t x289 = _mulx_u64(x265, 0xffffffffffffffffL, &x290);
- { uint64_t x293; uint64_t x292 = _mulx_u64(x265, 0xfffffffdffffffffL, &x293);
- { uint64_t x296; uint64_t x295 = _mulx_u64(x265, 0xffffffffffffffffL, &x296);
- { uint64_t x299; uint64_t x298 = _mulx_u64(x265, 0xffffffffffffffffL, &x299);
- { uint8_t x302; uint64_t x301 = _mulx_u64_out_u8(x265, 0x3, &x302);
- { uint64_t x304; uint8_t x305 = _addcarryx_u64(0x0, x287, x289, &x304);
- { uint64_t x307; uint8_t x308 = _addcarryx_u64(x305, x290, x292, &x307);
- { uint64_t x310; uint8_t x311 = _addcarryx_u64(x308, x293, x295, &x310);
- { uint64_t x313; uint8_t x314 = _addcarryx_u64(x311, x296, x298, &x313);
- { uint64_t x316; uint8_t x317 = _addcarryx_u64(x314, x299, x301, &x316);
- { uint8_t x318 = (x317 + x302);
- { uint64_t _; uint8_t x321 = _addcarryx_u64(0x0, x265, x286, &_);
- { uint64_t x323; uint8_t x324 = _addcarryx_u64(x321, x268, x304, &x323);
- { uint64_t x326; uint8_t x327 = _addcarryx_u64(x324, x271, x307, &x326);
- { uint64_t x329; uint8_t x330 = _addcarryx_u64(x327, x274, x310, &x329);
- { uint64_t x332; uint8_t x333 = _addcarryx_u64(x330, x277, x313, &x332);
- { uint64_t x335; uint8_t x336 = _addcarryx_u64(x333, x280, x316, &x335);
- { uint64_t x338; uint8_t x339 = _addcarryx_u64(x336, x283, x318, &x338);
- { uint8_t x340 = (x339 + x284);
- { uint64_t x343; uint64_t x342 = _mulx_u64(x11, x15, &x343);
- { uint64_t x346; uint64_t x345 = _mulx_u64(x11, x17, &x346);
- { uint64_t x349; uint64_t x348 = _mulx_u64(x11, x19, &x349);
- { uint64_t x352; uint64_t x351 = _mulx_u64(x11, x21, &x352);
- { uint64_t x355; uint64_t x354 = _mulx_u64(x11, x23, &x355);
- { uint64_t x358; uint64_t x357 = _mulx_u64(x11, x22, &x358);
- { uint64_t x360; uint8_t x361 = _addcarryx_u64(0x0, x343, x345, &x360);
- { uint64_t x363; uint8_t x364 = _addcarryx_u64(x361, x346, x348, &x363);
- { uint64_t x366; uint8_t x367 = _addcarryx_u64(x364, x349, x351, &x366);
- { uint64_t x369; uint8_t x370 = _addcarryx_u64(x367, x352, x354, &x369);
- { uint64_t x372; uint8_t x373 = _addcarryx_u64(x370, x355, x357, &x372);
- { uint64_t x375; uint8_t _ = _addcarryx_u64(0x0, x373, x358, &x375);
- { uint64_t x378; uint8_t x379 = _addcarryx_u64(0x0, x323, x342, &x378);
- { uint64_t x381; uint8_t x382 = _addcarryx_u64(x379, x326, x360, &x381);
- { uint64_t x384; uint8_t x385 = _addcarryx_u64(x382, x329, x363, &x384);
- { uint64_t x387; uint8_t x388 = _addcarryx_u64(x385, x332, x366, &x387);
- { uint64_t x390; uint8_t x391 = _addcarryx_u64(x388, x335, x369, &x390);
- { uint64_t x393; uint8_t x394 = _addcarryx_u64(x391, x338, x372, &x393);
- { uint64_t x396; uint8_t x397 = _addcarryx_u64(x394, x340, x375, &x396);
- { uint64_t x400; uint64_t x399 = _mulx_u64(x378, 0xffffffffffffffffL, &x400);
- { uint64_t x403; uint64_t x402 = _mulx_u64(x378, 0xffffffffffffffffL, &x403);
- { uint64_t x406; uint64_t x405 = _mulx_u64(x378, 0xfffffffdffffffffL, &x406);
- { uint64_t x409; uint64_t x408 = _mulx_u64(x378, 0xffffffffffffffffL, &x409);
- { uint64_t x412; uint64_t x411 = _mulx_u64(x378, 0xffffffffffffffffL, &x412);
- { uint8_t x415; uint64_t x414 = _mulx_u64_out_u8(x378, 0x3, &x415);
- { uint64_t x417; uint8_t x418 = _addcarryx_u64(0x0, x400, x402, &x417);
- { uint64_t x420; uint8_t x421 = _addcarryx_u64(x418, x403, x405, &x420);
- { uint64_t x423; uint8_t x424 = _addcarryx_u64(x421, x406, x408, &x423);
- { uint64_t x426; uint8_t x427 = _addcarryx_u64(x424, x409, x411, &x426);
- { uint64_t x429; uint8_t x430 = _addcarryx_u64(x427, x412, x414, &x429);
- { uint8_t x431 = (x430 + x415);
- { uint64_t _; uint8_t x434 = _addcarryx_u64(0x0, x378, x399, &_);
- { uint64_t x436; uint8_t x437 = _addcarryx_u64(x434, x381, x417, &x436);
- { uint64_t x439; uint8_t x440 = _addcarryx_u64(x437, x384, x420, &x439);
- { uint64_t x442; uint8_t x443 = _addcarryx_u64(x440, x387, x423, &x442);
- { uint64_t x445; uint8_t x446 = _addcarryx_u64(x443, x390, x426, &x445);
- { uint64_t x448; uint8_t x449 = _addcarryx_u64(x446, x393, x429, &x448);
- { uint64_t x451; uint8_t x452 = _addcarryx_u64(x449, x396, x431, &x451);
- { uint8_t x453 = (x452 + x397);
- { uint64_t x456; uint64_t x455 = _mulx_u64(x13, x15, &x456);
- { uint64_t x459; uint64_t x458 = _mulx_u64(x13, x17, &x459);
- { uint64_t x462; uint64_t x461 = _mulx_u64(x13, x19, &x462);
- { uint64_t x465; uint64_t x464 = _mulx_u64(x13, x21, &x465);
- { uint64_t x468; uint64_t x467 = _mulx_u64(x13, x23, &x468);
- { uint64_t x471; uint64_t x470 = _mulx_u64(x13, x22, &x471);
- { uint64_t x473; uint8_t x474 = _addcarryx_u64(0x0, x456, x458, &x473);
- { uint64_t x476; uint8_t x477 = _addcarryx_u64(x474, x459, x461, &x476);
- { uint64_t x479; uint8_t x480 = _addcarryx_u64(x477, x462, x464, &x479);
- { uint64_t x482; uint8_t x483 = _addcarryx_u64(x480, x465, x467, &x482);
- { uint64_t x485; uint8_t x486 = _addcarryx_u64(x483, x468, x470, &x485);
- { uint64_t x488; uint8_t _ = _addcarryx_u64(0x0, x486, x471, &x488);
- { uint64_t x491; uint8_t x492 = _addcarryx_u64(0x0, x436, x455, &x491);
- { uint64_t x494; uint8_t x495 = _addcarryx_u64(x492, x439, x473, &x494);
- { uint64_t x497; uint8_t x498 = _addcarryx_u64(x495, x442, x476, &x497);
- { uint64_t x500; uint8_t x501 = _addcarryx_u64(x498, x445, x479, &x500);
- { uint64_t x503; uint8_t x504 = _addcarryx_u64(x501, x448, x482, &x503);
- { uint64_t x506; uint8_t x507 = _addcarryx_u64(x504, x451, x485, &x506);
- { uint64_t x509; uint8_t x510 = _addcarryx_u64(x507, x453, x488, &x509);
- { uint64_t x513; uint64_t x512 = _mulx_u64(x491, 0xffffffffffffffffL, &x513);
- { uint64_t x516; uint64_t x515 = _mulx_u64(x491, 0xffffffffffffffffL, &x516);
- { uint64_t x519; uint64_t x518 = _mulx_u64(x491, 0xfffffffdffffffffL, &x519);
- { uint64_t x522; uint64_t x521 = _mulx_u64(x491, 0xffffffffffffffffL, &x522);
- { uint64_t x525; uint64_t x524 = _mulx_u64(x491, 0xffffffffffffffffL, &x525);
- { uint8_t x528; uint64_t x527 = _mulx_u64_out_u8(x491, 0x3, &x528);
- { uint64_t x530; uint8_t x531 = _addcarryx_u64(0x0, x513, x515, &x530);
- { uint64_t x533; uint8_t x534 = _addcarryx_u64(x531, x516, x518, &x533);
- { uint64_t x536; uint8_t x537 = _addcarryx_u64(x534, x519, x521, &x536);
- { uint64_t x539; uint8_t x540 = _addcarryx_u64(x537, x522, x524, &x539);
- { uint64_t x542; uint8_t x543 = _addcarryx_u64(x540, x525, x527, &x542);
- { uint8_t x544 = (x543 + x528);
- { uint64_t _; uint8_t x547 = _addcarryx_u64(0x0, x491, x512, &_);
- { uint64_t x549; uint8_t x550 = _addcarryx_u64(x547, x494, x530, &x549);
- { uint64_t x552; uint8_t x553 = _addcarryx_u64(x550, x497, x533, &x552);
- { uint64_t x555; uint8_t x556 = _addcarryx_u64(x553, x500, x536, &x555);
- { uint64_t x558; uint8_t x559 = _addcarryx_u64(x556, x503, x539, &x558);
- { uint64_t x561; uint8_t x562 = _addcarryx_u64(x559, x506, x542, &x561);
- { uint64_t x564; uint8_t x565 = _addcarryx_u64(x562, x509, x544, &x564);
- { uint8_t x566 = (x565 + x510);
- { uint64_t x569; uint64_t x568 = _mulx_u64(x12, x15, &x569);
- { uint64_t x572; uint64_t x571 = _mulx_u64(x12, x17, &x572);
- { uint64_t x575; uint64_t x574 = _mulx_u64(x12, x19, &x575);
- { uint64_t x578; uint64_t x577 = _mulx_u64(x12, x21, &x578);
- { uint64_t x581; uint64_t x580 = _mulx_u64(x12, x23, &x581);
- { uint64_t x584; uint64_t x583 = _mulx_u64(x12, x22, &x584);
- { uint64_t x586; uint8_t x587 = _addcarryx_u64(0x0, x569, x571, &x586);
- { uint64_t x589; uint8_t x590 = _addcarryx_u64(x587, x572, x574, &x589);
- { uint64_t x592; uint8_t x593 = _addcarryx_u64(x590, x575, x577, &x592);
- { uint64_t x595; uint8_t x596 = _addcarryx_u64(x593, x578, x580, &x595);
- { uint64_t x598; uint8_t x599 = _addcarryx_u64(x596, x581, x583, &x598);
- { uint64_t x601; uint8_t _ = _addcarryx_u64(0x0, x599, x584, &x601);
- { uint64_t x604; uint8_t x605 = _addcarryx_u64(0x0, x549, x568, &x604);
- { uint64_t x607; uint8_t x608 = _addcarryx_u64(x605, x552, x586, &x607);
- { uint64_t x610; uint8_t x611 = _addcarryx_u64(x608, x555, x589, &x610);
- { uint64_t x613; uint8_t x614 = _addcarryx_u64(x611, x558, x592, &x613);
- { uint64_t x616; uint8_t x617 = _addcarryx_u64(x614, x561, x595, &x616);
- { uint64_t x619; uint8_t x620 = _addcarryx_u64(x617, x564, x598, &x619);
- { uint64_t x622; uint8_t x623 = _addcarryx_u64(x620, x566, x601, &x622);
- { uint64_t x626; uint64_t x625 = _mulx_u64(x604, 0xffffffffffffffffL, &x626);
- { uint64_t x629; uint64_t x628 = _mulx_u64(x604, 0xffffffffffffffffL, &x629);
- { uint64_t x632; uint64_t x631 = _mulx_u64(x604, 0xfffffffdffffffffL, &x632);
- { uint64_t x635; uint64_t x634 = _mulx_u64(x604, 0xffffffffffffffffL, &x635);
- { uint64_t x638; uint64_t x637 = _mulx_u64(x604, 0xffffffffffffffffL, &x638);
- { uint8_t x641; uint64_t x640 = _mulx_u64_out_u8(x604, 0x3, &x641);
- { uint64_t x643; uint8_t x644 = _addcarryx_u64(0x0, x626, x628, &x643);
- { uint64_t x646; uint8_t x647 = _addcarryx_u64(x644, x629, x631, &x646);
- { uint64_t x649; uint8_t x650 = _addcarryx_u64(x647, x632, x634, &x649);
- { uint64_t x652; uint8_t x653 = _addcarryx_u64(x650, x635, x637, &x652);
- { uint64_t x655; uint8_t x656 = _addcarryx_u64(x653, x638, x640, &x655);
- { uint8_t x657 = (x656 + x641);
- { uint64_t _; uint8_t x660 = _addcarryx_u64(0x0, x604, x625, &_);
- { uint64_t x662; uint8_t x663 = _addcarryx_u64(x660, x607, x643, &x662);
- { uint64_t x665; uint8_t x666 = _addcarryx_u64(x663, x610, x646, &x665);
- { uint64_t x668; uint8_t x669 = _addcarryx_u64(x666, x613, x649, &x668);
- { uint64_t x671; uint8_t x672 = _addcarryx_u64(x669, x616, x652, &x671);
- { uint64_t x674; uint8_t x675 = _addcarryx_u64(x672, x619, x655, &x674);
- { uint64_t x677; uint8_t x678 = _addcarryx_u64(x675, x622, x657, &x677);
- { uint8_t x679 = (x678 + x623);
- { uint64_t x681; uint8_t x682 = _subborrow_u64(0x0, x662, 0xffffffffffffffffL, &x681);
- { uint64_t x684; uint8_t x685 = _subborrow_u64(x682, x665, 0xffffffffffffffffL, &x684);
- { uint64_t x687; uint8_t x688 = _subborrow_u64(x685, x668, 0xfffffffdffffffffL, &x687);
- { uint64_t x690; uint8_t x691 = _subborrow_u64(x688, x671, 0xffffffffffffffffL, &x690);
- { uint64_t x693; uint8_t x694 = _subborrow_u64(x691, x674, 0xffffffffffffffffL, &x693);
- { uint64_t x696; uint8_t x697 = _subborrow_u64(x694, x677, 0x3, &x696);
- { uint64_t _; uint8_t x700 = _subborrow_u64(x697, x679, 0x0, &_);
- { uint64_t x701 = cmovznz64(x700, x696, x677);
- { uint64_t x702 = cmovznz64(x700, x693, x674);
- { uint64_t x703 = cmovznz64(x700, x690, x671);
- { uint64_t x704 = cmovznz64(x700, x687, x668);
- { uint64_t x705 = cmovznz64(x700, x684, x665);
- { uint64_t x706 = cmovznz64(x700, x681, x662);
- out[0] = x706;
- out[1] = x705;
- out[2] = x704;
- out[3] = x703;
- out[4] = x702;
- out[5] = x701;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e322m2e161m1_6limbs/femul.v b/src/Specific/montgomery64_2e322m2e161m1_6limbs/femul.v
deleted file mode 100644
index 2c8b34a65..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e322m2e161m1_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e322m2e161m1_6limbs/femulDisplay.log b/src/Specific/montgomery64_2e322m2e161m1_6limbs/femulDisplay.log
deleted file mode 100644
index bd69c25d5..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,246 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint64_t x26 = mulx_u64(x5, x15);
- uint64_t x28, uint64_t x29 = mulx_u64(x5, x17);
- uint64_t x31, uint64_t x32 = mulx_u64(x5, x19);
- uint64_t x34, uint64_t x35 = mulx_u64(x5, x21);
- uint64_t x37, uint64_t x38 = mulx_u64(x5, x23);
- uint64_t x40, uint64_t x41 = mulx_u64(x5, x22);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x26, x28);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x29, x31);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x47, x32, x34);
- uint64_t x52, uint8_t x53 = addcarryx_u64(x50, x35, x37);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x38, x40);
- uint64_t x58, uint8_t _ = addcarryx_u64(0x0, x56, x41);
- uint64_t x61, uint64_t x62 = mulx_u64(x25, 0xffffffffffffffffL);
- uint64_t x64, uint64_t x65 = mulx_u64(x25, 0xffffffffffffffffL);
- uint64_t x67, uint64_t x68 = mulx_u64(x25, 0xfffffffdffffffffL);
- uint64_t x70, uint64_t x71 = mulx_u64(x25, 0xffffffffffffffffL);
- uint64_t x73, uint64_t x74 = mulx_u64(x25, 0xffffffffffffffffL);
- uint64_t x76, uint8_t x77 = mulx_u64_out_u8(x25, 0x3);
- uint64_t x79, uint8_t x80 = addcarryx_u64(0x0, x62, x64);
- uint64_t x82, uint8_t x83 = addcarryx_u64(x80, x65, x67);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x68, x70);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x71, x73);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x74, x76);
- uint8_t x93 = (x92 + x77);
- uint64_t _, uint8_t x96 = addcarryx_u64(0x0, x25, x61);
- uint64_t x98, uint8_t x99 = addcarryx_u64(x96, x43, x79);
- uint64_t x101, uint8_t x102 = addcarryx_u64(x99, x46, x82);
- uint64_t x104, uint8_t x105 = addcarryx_u64(x102, x49, x85);
- uint64_t x107, uint8_t x108 = addcarryx_u64(x105, x52, x88);
- uint64_t x110, uint8_t x111 = addcarryx_u64(x108, x55, x91);
- uint64_t x113, uint8_t x114 = addcarryx_u64(x111, x58, x93);
- uint64_t x116, uint64_t x117 = mulx_u64(x7, x15);
- uint64_t x119, uint64_t x120 = mulx_u64(x7, x17);
- uint64_t x122, uint64_t x123 = mulx_u64(x7, x19);
- uint64_t x125, uint64_t x126 = mulx_u64(x7, x21);
- uint64_t x128, uint64_t x129 = mulx_u64(x7, x23);
- uint64_t x131, uint64_t x132 = mulx_u64(x7, x22);
- uint64_t x134, uint8_t x135 = addcarryx_u64(0x0, x117, x119);
- uint64_t x137, uint8_t x138 = addcarryx_u64(x135, x120, x122);
- uint64_t x140, uint8_t x141 = addcarryx_u64(x138, x123, x125);
- uint64_t x143, uint8_t x144 = addcarryx_u64(x141, x126, x128);
- uint64_t x146, uint8_t x147 = addcarryx_u64(x144, x129, x131);
- uint64_t x149, uint8_t _ = addcarryx_u64(0x0, x147, x132);
- uint64_t x152, uint8_t x153 = addcarryx_u64(0x0, x98, x116);
- uint64_t x155, uint8_t x156 = addcarryx_u64(x153, x101, x134);
- uint64_t x158, uint8_t x159 = addcarryx_u64(x156, x104, x137);
- uint64_t x161, uint8_t x162 = addcarryx_u64(x159, x107, x140);
- uint64_t x164, uint8_t x165 = addcarryx_u64(x162, x110, x143);
- uint64_t x167, uint8_t x168 = addcarryx_u64(x165, x113, x146);
- uint64_t x170, uint8_t x171 = addcarryx_u64(x168, x114, x149);
- uint64_t x173, uint64_t x174 = mulx_u64(x152, 0xffffffffffffffffL);
- uint64_t x176, uint64_t x177 = mulx_u64(x152, 0xffffffffffffffffL);
- uint64_t x179, uint64_t x180 = mulx_u64(x152, 0xfffffffdffffffffL);
- uint64_t x182, uint64_t x183 = mulx_u64(x152, 0xffffffffffffffffL);
- uint64_t x185, uint64_t x186 = mulx_u64(x152, 0xffffffffffffffffL);
- uint64_t x188, uint8_t x189 = mulx_u64_out_u8(x152, 0x3);
- uint64_t x191, uint8_t x192 = addcarryx_u64(0x0, x174, x176);
- uint64_t x194, uint8_t x195 = addcarryx_u64(x192, x177, x179);
- uint64_t x197, uint8_t x198 = addcarryx_u64(x195, x180, x182);
- uint64_t x200, uint8_t x201 = addcarryx_u64(x198, x183, x185);
- uint64_t x203, uint8_t x204 = addcarryx_u64(x201, x186, x188);
- uint8_t x205 = (x204 + x189);
- uint64_t _, uint8_t x208 = addcarryx_u64(0x0, x152, x173);
- uint64_t x210, uint8_t x211 = addcarryx_u64(x208, x155, x191);
- uint64_t x213, uint8_t x214 = addcarryx_u64(x211, x158, x194);
- uint64_t x216, uint8_t x217 = addcarryx_u64(x214, x161, x197);
- uint64_t x219, uint8_t x220 = addcarryx_u64(x217, x164, x200);
- uint64_t x222, uint8_t x223 = addcarryx_u64(x220, x167, x203);
- uint64_t x225, uint8_t x226 = addcarryx_u64(x223, x170, x205);
- uint8_t x227 = (x226 + x171);
- uint64_t x229, uint64_t x230 = mulx_u64(x9, x15);
- uint64_t x232, uint64_t x233 = mulx_u64(x9, x17);
- uint64_t x235, uint64_t x236 = mulx_u64(x9, x19);
- uint64_t x238, uint64_t x239 = mulx_u64(x9, x21);
- uint64_t x241, uint64_t x242 = mulx_u64(x9, x23);
- uint64_t x244, uint64_t x245 = mulx_u64(x9, x22);
- uint64_t x247, uint8_t x248 = addcarryx_u64(0x0, x230, x232);
- uint64_t x250, uint8_t x251 = addcarryx_u64(x248, x233, x235);
- uint64_t x253, uint8_t x254 = addcarryx_u64(x251, x236, x238);
- uint64_t x256, uint8_t x257 = addcarryx_u64(x254, x239, x241);
- uint64_t x259, uint8_t x260 = addcarryx_u64(x257, x242, x244);
- uint64_t x262, uint8_t _ = addcarryx_u64(0x0, x260, x245);
- uint64_t x265, uint8_t x266 = addcarryx_u64(0x0, x210, x229);
- uint64_t x268, uint8_t x269 = addcarryx_u64(x266, x213, x247);
- uint64_t x271, uint8_t x272 = addcarryx_u64(x269, x216, x250);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x219, x253);
- uint64_t x277, uint8_t x278 = addcarryx_u64(x275, x222, x256);
- uint64_t x280, uint8_t x281 = addcarryx_u64(x278, x225, x259);
- uint64_t x283, uint8_t x284 = addcarryx_u64(x281, x227, x262);
- uint64_t x286, uint64_t x287 = mulx_u64(x265, 0xffffffffffffffffL);
- uint64_t x289, uint64_t x290 = mulx_u64(x265, 0xffffffffffffffffL);
- uint64_t x292, uint64_t x293 = mulx_u64(x265, 0xfffffffdffffffffL);
- uint64_t x295, uint64_t x296 = mulx_u64(x265, 0xffffffffffffffffL);
- uint64_t x298, uint64_t x299 = mulx_u64(x265, 0xffffffffffffffffL);
- uint64_t x301, uint8_t x302 = mulx_u64_out_u8(x265, 0x3);
- uint64_t x304, uint8_t x305 = addcarryx_u64(0x0, x287, x289);
- uint64_t x307, uint8_t x308 = addcarryx_u64(x305, x290, x292);
- uint64_t x310, uint8_t x311 = addcarryx_u64(x308, x293, x295);
- uint64_t x313, uint8_t x314 = addcarryx_u64(x311, x296, x298);
- uint64_t x316, uint8_t x317 = addcarryx_u64(x314, x299, x301);
- uint8_t x318 = (x317 + x302);
- uint64_t _, uint8_t x321 = addcarryx_u64(0x0, x265, x286);
- uint64_t x323, uint8_t x324 = addcarryx_u64(x321, x268, x304);
- uint64_t x326, uint8_t x327 = addcarryx_u64(x324, x271, x307);
- uint64_t x329, uint8_t x330 = addcarryx_u64(x327, x274, x310);
- uint64_t x332, uint8_t x333 = addcarryx_u64(x330, x277, x313);
- uint64_t x335, uint8_t x336 = addcarryx_u64(x333, x280, x316);
- uint64_t x338, uint8_t x339 = addcarryx_u64(x336, x283, x318);
- uint8_t x340 = (x339 + x284);
- uint64_t x342, uint64_t x343 = mulx_u64(x11, x15);
- uint64_t x345, uint64_t x346 = mulx_u64(x11, x17);
- uint64_t x348, uint64_t x349 = mulx_u64(x11, x19);
- uint64_t x351, uint64_t x352 = mulx_u64(x11, x21);
- uint64_t x354, uint64_t x355 = mulx_u64(x11, x23);
- uint64_t x357, uint64_t x358 = mulx_u64(x11, x22);
- uint64_t x360, uint8_t x361 = addcarryx_u64(0x0, x343, x345);
- uint64_t x363, uint8_t x364 = addcarryx_u64(x361, x346, x348);
- uint64_t x366, uint8_t x367 = addcarryx_u64(x364, x349, x351);
- uint64_t x369, uint8_t x370 = addcarryx_u64(x367, x352, x354);
- uint64_t x372, uint8_t x373 = addcarryx_u64(x370, x355, x357);
- uint64_t x375, uint8_t _ = addcarryx_u64(0x0, x373, x358);
- uint64_t x378, uint8_t x379 = addcarryx_u64(0x0, x323, x342);
- uint64_t x381, uint8_t x382 = addcarryx_u64(x379, x326, x360);
- uint64_t x384, uint8_t x385 = addcarryx_u64(x382, x329, x363);
- uint64_t x387, uint8_t x388 = addcarryx_u64(x385, x332, x366);
- uint64_t x390, uint8_t x391 = addcarryx_u64(x388, x335, x369);
- uint64_t x393, uint8_t x394 = addcarryx_u64(x391, x338, x372);
- uint64_t x396, uint8_t x397 = addcarryx_u64(x394, x340, x375);
- uint64_t x399, uint64_t x400 = mulx_u64(x378, 0xffffffffffffffffL);
- uint64_t x402, uint64_t x403 = mulx_u64(x378, 0xffffffffffffffffL);
- uint64_t x405, uint64_t x406 = mulx_u64(x378, 0xfffffffdffffffffL);
- uint64_t x408, uint64_t x409 = mulx_u64(x378, 0xffffffffffffffffL);
- uint64_t x411, uint64_t x412 = mulx_u64(x378, 0xffffffffffffffffL);
- uint64_t x414, uint8_t x415 = mulx_u64_out_u8(x378, 0x3);
- uint64_t x417, uint8_t x418 = addcarryx_u64(0x0, x400, x402);
- uint64_t x420, uint8_t x421 = addcarryx_u64(x418, x403, x405);
- uint64_t x423, uint8_t x424 = addcarryx_u64(x421, x406, x408);
- uint64_t x426, uint8_t x427 = addcarryx_u64(x424, x409, x411);
- uint64_t x429, uint8_t x430 = addcarryx_u64(x427, x412, x414);
- uint8_t x431 = (x430 + x415);
- uint64_t _, uint8_t x434 = addcarryx_u64(0x0, x378, x399);
- uint64_t x436, uint8_t x437 = addcarryx_u64(x434, x381, x417);
- uint64_t x439, uint8_t x440 = addcarryx_u64(x437, x384, x420);
- uint64_t x442, uint8_t x443 = addcarryx_u64(x440, x387, x423);
- uint64_t x445, uint8_t x446 = addcarryx_u64(x443, x390, x426);
- uint64_t x448, uint8_t x449 = addcarryx_u64(x446, x393, x429);
- uint64_t x451, uint8_t x452 = addcarryx_u64(x449, x396, x431);
- uint8_t x453 = (x452 + x397);
- uint64_t x455, uint64_t x456 = mulx_u64(x13, x15);
- uint64_t x458, uint64_t x459 = mulx_u64(x13, x17);
- uint64_t x461, uint64_t x462 = mulx_u64(x13, x19);
- uint64_t x464, uint64_t x465 = mulx_u64(x13, x21);
- uint64_t x467, uint64_t x468 = mulx_u64(x13, x23);
- uint64_t x470, uint64_t x471 = mulx_u64(x13, x22);
- uint64_t x473, uint8_t x474 = addcarryx_u64(0x0, x456, x458);
- uint64_t x476, uint8_t x477 = addcarryx_u64(x474, x459, x461);
- uint64_t x479, uint8_t x480 = addcarryx_u64(x477, x462, x464);
- uint64_t x482, uint8_t x483 = addcarryx_u64(x480, x465, x467);
- uint64_t x485, uint8_t x486 = addcarryx_u64(x483, x468, x470);
- uint64_t x488, uint8_t _ = addcarryx_u64(0x0, x486, x471);
- uint64_t x491, uint8_t x492 = addcarryx_u64(0x0, x436, x455);
- uint64_t x494, uint8_t x495 = addcarryx_u64(x492, x439, x473);
- uint64_t x497, uint8_t x498 = addcarryx_u64(x495, x442, x476);
- uint64_t x500, uint8_t x501 = addcarryx_u64(x498, x445, x479);
- uint64_t x503, uint8_t x504 = addcarryx_u64(x501, x448, x482);
- uint64_t x506, uint8_t x507 = addcarryx_u64(x504, x451, x485);
- uint64_t x509, uint8_t x510 = addcarryx_u64(x507, x453, x488);
- uint64_t x512, uint64_t x513 = mulx_u64(x491, 0xffffffffffffffffL);
- uint64_t x515, uint64_t x516 = mulx_u64(x491, 0xffffffffffffffffL);
- uint64_t x518, uint64_t x519 = mulx_u64(x491, 0xfffffffdffffffffL);
- uint64_t x521, uint64_t x522 = mulx_u64(x491, 0xffffffffffffffffL);
- uint64_t x524, uint64_t x525 = mulx_u64(x491, 0xffffffffffffffffL);
- uint64_t x527, uint8_t x528 = mulx_u64_out_u8(x491, 0x3);
- uint64_t x530, uint8_t x531 = addcarryx_u64(0x0, x513, x515);
- uint64_t x533, uint8_t x534 = addcarryx_u64(x531, x516, x518);
- uint64_t x536, uint8_t x537 = addcarryx_u64(x534, x519, x521);
- uint64_t x539, uint8_t x540 = addcarryx_u64(x537, x522, x524);
- uint64_t x542, uint8_t x543 = addcarryx_u64(x540, x525, x527);
- uint8_t x544 = (x543 + x528);
- uint64_t _, uint8_t x547 = addcarryx_u64(0x0, x491, x512);
- uint64_t x549, uint8_t x550 = addcarryx_u64(x547, x494, x530);
- uint64_t x552, uint8_t x553 = addcarryx_u64(x550, x497, x533);
- uint64_t x555, uint8_t x556 = addcarryx_u64(x553, x500, x536);
- uint64_t x558, uint8_t x559 = addcarryx_u64(x556, x503, x539);
- uint64_t x561, uint8_t x562 = addcarryx_u64(x559, x506, x542);
- uint64_t x564, uint8_t x565 = addcarryx_u64(x562, x509, x544);
- uint8_t x566 = (x565 + x510);
- uint64_t x568, uint64_t x569 = mulx_u64(x12, x15);
- uint64_t x571, uint64_t x572 = mulx_u64(x12, x17);
- uint64_t x574, uint64_t x575 = mulx_u64(x12, x19);
- uint64_t x577, uint64_t x578 = mulx_u64(x12, x21);
- uint64_t x580, uint64_t x581 = mulx_u64(x12, x23);
- uint64_t x583, uint64_t x584 = mulx_u64(x12, x22);
- uint64_t x586, uint8_t x587 = addcarryx_u64(0x0, x569, x571);
- uint64_t x589, uint8_t x590 = addcarryx_u64(x587, x572, x574);
- uint64_t x592, uint8_t x593 = addcarryx_u64(x590, x575, x577);
- uint64_t x595, uint8_t x596 = addcarryx_u64(x593, x578, x580);
- uint64_t x598, uint8_t x599 = addcarryx_u64(x596, x581, x583);
- uint64_t x601, uint8_t _ = addcarryx_u64(0x0, x599, x584);
- uint64_t x604, uint8_t x605 = addcarryx_u64(0x0, x549, x568);
- uint64_t x607, uint8_t x608 = addcarryx_u64(x605, x552, x586);
- uint64_t x610, uint8_t x611 = addcarryx_u64(x608, x555, x589);
- uint64_t x613, uint8_t x614 = addcarryx_u64(x611, x558, x592);
- uint64_t x616, uint8_t x617 = addcarryx_u64(x614, x561, x595);
- uint64_t x619, uint8_t x620 = addcarryx_u64(x617, x564, x598);
- uint64_t x622, uint8_t x623 = addcarryx_u64(x620, x566, x601);
- uint64_t x625, uint64_t x626 = mulx_u64(x604, 0xffffffffffffffffL);
- uint64_t x628, uint64_t x629 = mulx_u64(x604, 0xffffffffffffffffL);
- uint64_t x631, uint64_t x632 = mulx_u64(x604, 0xfffffffdffffffffL);
- uint64_t x634, uint64_t x635 = mulx_u64(x604, 0xffffffffffffffffL);
- uint64_t x637, uint64_t x638 = mulx_u64(x604, 0xffffffffffffffffL);
- uint64_t x640, uint8_t x641 = mulx_u64_out_u8(x604, 0x3);
- uint64_t x643, uint8_t x644 = addcarryx_u64(0x0, x626, x628);
- uint64_t x646, uint8_t x647 = addcarryx_u64(x644, x629, x631);
- uint64_t x649, uint8_t x650 = addcarryx_u64(x647, x632, x634);
- uint64_t x652, uint8_t x653 = addcarryx_u64(x650, x635, x637);
- uint64_t x655, uint8_t x656 = addcarryx_u64(x653, x638, x640);
- uint8_t x657 = (x656 + x641);
- uint64_t _, uint8_t x660 = addcarryx_u64(0x0, x604, x625);
- uint64_t x662, uint8_t x663 = addcarryx_u64(x660, x607, x643);
- uint64_t x665, uint8_t x666 = addcarryx_u64(x663, x610, x646);
- uint64_t x668, uint8_t x669 = addcarryx_u64(x666, x613, x649);
- uint64_t x671, uint8_t x672 = addcarryx_u64(x669, x616, x652);
- uint64_t x674, uint8_t x675 = addcarryx_u64(x672, x619, x655);
- uint64_t x677, uint8_t x678 = addcarryx_u64(x675, x622, x657);
- uint8_t x679 = (x678 + x623);
- uint64_t x681, uint8_t x682 = subborrow_u64(0x0, x662, 0xffffffffffffffffL);
- uint64_t x684, uint8_t x685 = subborrow_u64(x682, x665, 0xffffffffffffffffL);
- uint64_t x687, uint8_t x688 = subborrow_u64(x685, x668, 0xfffffffdffffffffL);
- uint64_t x690, uint8_t x691 = subborrow_u64(x688, x671, 0xffffffffffffffffL);
- uint64_t x693, uint8_t x694 = subborrow_u64(x691, x674, 0xffffffffffffffffL);
- uint64_t x696, uint8_t x697 = subborrow_u64(x694, x677, 0x3);
- uint64_t _, uint8_t x700 = subborrow_u64(x697, x679, 0x0);
- uint64_t x701 = cmovznz64(x700, x696, x677);
- uint64_t x702 = cmovznz64(x700, x693, x674);
- uint64_t x703 = cmovznz64(x700, x690, x671);
- uint64_t x704 = cmovznz64(x700, x687, x668);
- uint64_t x705 = cmovznz64(x700, x684, x665);
- uint64_t x706 = cmovznz64(x700, x681, x662);
- return (x701, x702, x703, x704, x705, x706))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e322m2e161m1_6limbs/femulDisplay.v b/src/Specific/montgomery64_2e322m2e161m1_6limbs/femulDisplay.v
deleted file mode 100644
index c8a68a640..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e322m2e161m1_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e322m2e161m1_6limbs/fenz.c b/src/Specific/montgomery64_2e322m2e161m1_6limbs/fenz.c
deleted file mode 100644
index c93f74257..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_6limbs/fenz.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x11 = (x10 | x9);
- { uint64_t x12 = (x8 | x11);
- { uint64_t x13 = (x6 | x12);
- { uint64_t x14 = (x4 | x13);
- { uint64_t x15 = (x2 | x14);
- out[0] = x15;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e322m2e161m1_6limbs/fenz.v b/src/Specific/montgomery64_2e322m2e161m1_6limbs/fenz.v
deleted file mode 100644
index 2dae98686..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_6limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e322m2e161m1_6limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e322m2e161m1_6limbs/fenzDisplay.log b/src/Specific/montgomery64_2e322m2e161m1_6limbs/fenzDisplay.log
deleted file mode 100644
index f39f1d91b..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_6limbs/fenzDisplay.log
+++ /dev/null
@@ -1,12 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x11 = (x10 | x9);
- uint64_t x12 = (x8 | x11);
- uint64_t x13 = (x6 | x12);
- uint64_t x14 = (x4 | x13);
- uint64_t x15 = (x2 | x14);
- return x15)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e322m2e161m1_6limbs/fenzDisplay.v b/src/Specific/montgomery64_2e322m2e161m1_6limbs/fenzDisplay.v
deleted file mode 100644
index 7bcfc415e..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_6limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e322m2e161m1_6limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e322m2e161m1_6limbs/feopp.c b/src/Specific/montgomery64_2e322m2e161m1_6limbs/feopp.c
deleted file mode 100644
index 7445311c5..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_6limbs/feopp.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feopp(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12; uint8_t x13 = _subborrow_u64(0x0, 0x0, x2, &x12);
- { uint64_t x15; uint8_t x16 = _subborrow_u64(x13, 0x0, x4, &x15);
- { uint64_t x18; uint8_t x19 = _subborrow_u64(x16, 0x0, x6, &x18);
- { uint64_t x21; uint8_t x22 = _subborrow_u64(x19, 0x0, x8, &x21);
- { uint64_t x24; uint8_t x25 = _subborrow_u64(x22, 0x0, x10, &x24);
- { uint64_t x27; uint8_t x28 = _subborrow_u64(x25, 0x0, x9, &x27);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0xffffffffffffffffL);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(0x0, x12, x30, &x32);
- { uint64_t x34 = (x29 & 0xffffffffffffffffL);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x33, x15, x34, &x36);
- { uint64_t x38 = (x29 & 0xfffffffdffffffffL);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x37, x18, x38, &x40);
- { uint64_t x42 = (x29 & 0xffffffffffffffffL);
- { uint64_t x44; uint8_t x45 = _addcarryx_u64(x41, x21, x42, &x44);
- { uint64_t x46 = (x29 & 0xffffffffffffffffL);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x45, x24, x46, &x48);
- { uint8_t x50 = ((uint8_t)x29 & 0x3);
- { uint64_t x52; uint8_t _ = _addcarryx_u64(x49, x27, x50, &x52);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e322m2e161m1_6limbs/feopp.v b/src/Specific/montgomery64_2e322m2e161m1_6limbs/feopp.v
deleted file mode 100644
index c8ec1aa08..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_6limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e322m2e161m1_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e322m2e161m1_6limbs/feoppDisplay.log b/src/Specific/montgomery64_2e322m2e161m1_6limbs/feoppDisplay.log
deleted file mode 100644
index 2dee04d64..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_6limbs/feoppDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x15, uint8_t x16 = subborrow_u64(x13, 0x0, x4);
- uint64_t x18, uint8_t x19 = subborrow_u64(x16, 0x0, x6);
- uint64_t x21, uint8_t x22 = subborrow_u64(x19, 0x0, x8);
- uint64_t x24, uint8_t x25 = subborrow_u64(x22, 0x0, x10);
- uint64_t x27, uint8_t x28 = subborrow_u64(x25, 0x0, x9);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0xffffffffffffffffL);
- uint64_t x32, uint8_t x33 = addcarryx_u64(0x0, x12, x30);
- uint64_t x34 = (x29 & 0xffffffffffffffffL);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x33, x15, x34);
- uint64_t x38 = (x29 & 0xfffffffdffffffffL);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x37, x18, x38);
- uint64_t x42 = (x29 & 0xffffffffffffffffL);
- uint64_t x44, uint8_t x45 = addcarryx_u64(x41, x21, x42);
- uint64_t x46 = (x29 & 0xffffffffffffffffL);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x45, x24, x46);
- uint8_t x50 = ((uint8_t)x29 & 0x3);
- uint64_t x52, uint8_t _ = addcarryx_u64(x49, x27, x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e322m2e161m1_6limbs/feoppDisplay.v b/src/Specific/montgomery64_2e322m2e161m1_6limbs/feoppDisplay.v
deleted file mode 100644
index 0b82855e5..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_6limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e322m2e161m1_6limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e322m2e161m1_6limbs/fesquare.c b/src/Specific/montgomery64_2e322m2e161m1_6limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_6limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e322m2e161m1_6limbs/fesub.c b/src/Specific/montgomery64_2e322m2e161m1_6limbs/fesub.c
deleted file mode 100644
index 587de6e27..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_6limbs/fesub.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _subborrow_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _subborrow_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _subborrow_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _subborrow_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _subborrow_u64(x38, x12, x22, &x40);
- { uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- { uint64_t x43 = (x42 & 0xffffffffffffffffL);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(0x0, x25, x43, &x45);
- { uint64_t x47 = (x42 & 0xffffffffffffffffL);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x46, x28, x47, &x49);
- { uint64_t x51 = (x42 & 0xfffffffdffffffffL);
- { uint64_t x53; uint8_t x54 = _addcarryx_u64(x50, x31, x51, &x53);
- { uint64_t x55 = (x42 & 0xffffffffffffffffL);
- { uint64_t x57; uint8_t x58 = _addcarryx_u64(x54, x34, x55, &x57);
- { uint64_t x59 = (x42 & 0xffffffffffffffffL);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x58, x37, x59, &x61);
- { uint8_t x63 = ((uint8_t)x42 & 0x3);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(x62, x40, x63, &x65);
- out[0] = x45;
- out[1] = x49;
- out[2] = x53;
- out[3] = x57;
- out[4] = x61;
- out[5] = x65;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e322m2e161m1_6limbs/fesub.v b/src/Specific/montgomery64_2e322m2e161m1_6limbs/fesub.v
deleted file mode 100644
index de8d97b91..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e322m2e161m1_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e322m2e161m1_6limbs/fesubDisplay.log b/src/Specific/montgomery64_2e322m2e161m1_6limbs/fesubDisplay.log
deleted file mode 100644
index 3068ccc4e..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = subborrow_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = subborrow_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = subborrow_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = subborrow_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = subborrow_u64(x38, x12, x22);
- uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- uint64_t x43 = (x42 & 0xffffffffffffffffL);
- uint64_t x45, uint8_t x46 = addcarryx_u64(0x0, x25, x43);
- uint64_t x47 = (x42 & 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x46, x28, x47);
- uint64_t x51 = (x42 & 0xfffffffdffffffffL);
- uint64_t x53, uint8_t x54 = addcarryx_u64(x50, x31, x51);
- uint64_t x55 = (x42 & 0xffffffffffffffffL);
- uint64_t x57, uint8_t x58 = addcarryx_u64(x54, x34, x55);
- uint64_t x59 = (x42 & 0xffffffffffffffffL);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x58, x37, x59);
- uint8_t x63 = ((uint8_t)x42 & 0x3);
- uint64_t x65, uint8_t _ = addcarryx_u64(x62, x40, x63);
- (Return x65, Return x61, Return x57, Return x53, Return x49, Return x45))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e322m2e161m1_6limbs/fesubDisplay.v b/src/Specific/montgomery64_2e322m2e161m1_6limbs/fesubDisplay.v
deleted file mode 100644
index 18b8f014d..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e322m2e161m1_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e322m2e161m1_6limbs/py_interpreter.sh b/src/Specific/montgomery64_2e322m2e161m1_6limbs/py_interpreter.sh
deleted file mode 100755
index ec91a5000..000000000
--- a/src/Specific/montgomery64_2e322m2e161m1_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**322 - 2**161 - 1' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e336m17_6limbs/CurveParameters.v b/src/Specific/montgomery64_2e336m17_6limbs/CurveParameters.v
deleted file mode 100644
index b0d15fb57..000000000
--- a/src/Specific/montgomery64_2e336m17_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^336 - 17
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 64;
- bitwidth := 64;
- s := 2^336;
- c := [(1, 17)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e336m17_6limbs/Synthesis.v b/src/Specific/montgomery64_2e336m17_6limbs/Synthesis.v
deleted file mode 100644
index 1fd9783bf..000000000
--- a/src/Specific/montgomery64_2e336m17_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e336m17_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/montgomery64_2e336m17_6limbs/compiler.sh b/src/Specific/montgomery64_2e336m17_6limbs/compiler.sh
deleted file mode 100755
index a8151d050..000000000
--- a/src/Specific/montgomery64_2e336m17_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<336) - 17' "$@"
diff --git a/src/Specific/montgomery64_2e336m17_6limbs/compilerxx.sh b/src/Specific/montgomery64_2e336m17_6limbs/compilerxx.sh
deleted file mode 100755
index 6158bf1ca..000000000
--- a/src/Specific/montgomery64_2e336m17_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<336) - 17' "$@"
diff --git a/src/Specific/montgomery64_2e336m17_6limbs/feadd.c b/src/Specific/montgomery64_2e336m17_6limbs/feadd.c
deleted file mode 100644
index 3d3730fc9..000000000
--- a/src/Specific/montgomery64_2e336m17_6limbs/feadd.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _addcarryx_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _addcarryx_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x38, x12, x22, &x40);
- { uint64_t x43; uint8_t x44 = _subborrow_u64(0x0, x25, 0xffffffffffffffefL, &x43);
- { uint64_t x46; uint8_t x47 = _subborrow_u64(x44, x28, 0xffffffffffffffffL, &x46);
- { uint64_t x49; uint8_t x50 = _subborrow_u64(x47, x31, 0xffffffffffffffffL, &x49);
- { uint64_t x52; uint8_t x53 = _subborrow_u64(x50, x34, 0xffffffffffffffffL, &x52);
- { uint64_t x55; uint8_t x56 = _subborrow_u64(x53, x37, 0xffffffffffffffffL, &x55);
- { uint64_t x58; uint8_t x59 = _subborrow_u64(x56, x40, 0xffff, &x58);
- { uint64_t _; uint8_t x62 = _subborrow_u64(x59, x41, 0x0, &_);
- { uint64_t x63 = cmovznz64(x62, x58, x40);
- { uint64_t x64 = cmovznz64(x62, x55, x37);
- { uint64_t x65 = cmovznz64(x62, x52, x34);
- { uint64_t x66 = cmovznz64(x62, x49, x31);
- { uint64_t x67 = cmovznz64(x62, x46, x28);
- { uint64_t x68 = cmovznz64(x62, x43, x25);
- out[0] = x68;
- out[1] = x67;
- out[2] = x66;
- out[3] = x65;
- out[4] = x64;
- out[5] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e336m17_6limbs/feadd.v b/src/Specific/montgomery64_2e336m17_6limbs/feadd.v
deleted file mode 100644
index d2fda5116..000000000
--- a/src/Specific/montgomery64_2e336m17_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e336m17_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e336m17_6limbs/feaddDisplay.log b/src/Specific/montgomery64_2e336m17_6limbs/feaddDisplay.log
deleted file mode 100644
index 12075332c..000000000
--- a/src/Specific/montgomery64_2e336m17_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = addcarryx_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = addcarryx_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = addcarryx_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = addcarryx_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x38, x12, x22);
- uint64_t x43, uint8_t x44 = subborrow_u64(0x0, x25, 0xffffffffffffffefL);
- uint64_t x46, uint8_t x47 = subborrow_u64(x44, x28, 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = subborrow_u64(x47, x31, 0xffffffffffffffffL);
- uint64_t x52, uint8_t x53 = subborrow_u64(x50, x34, 0xffffffffffffffffL);
- uint64_t x55, uint8_t x56 = subborrow_u64(x53, x37, 0xffffffffffffffffL);
- uint64_t x58, uint8_t x59 = subborrow_u64(x56, x40, 0xffff);
- uint64_t _, uint8_t x62 = subborrow_u64(x59, x41, 0x0);
- uint64_t x63 = cmovznz64(x62, x58, x40);
- uint64_t x64 = cmovznz64(x62, x55, x37);
- uint64_t x65 = cmovznz64(x62, x52, x34);
- uint64_t x66 = cmovznz64(x62, x49, x31);
- uint64_t x67 = cmovznz64(x62, x46, x28);
- uint64_t x68 = cmovznz64(x62, x43, x25);
- return (x63, x64, x65, x66, x67, x68))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e336m17_6limbs/feaddDisplay.v b/src/Specific/montgomery64_2e336m17_6limbs/feaddDisplay.v
deleted file mode 100644
index 2c16a1bfa..000000000
--- a/src/Specific/montgomery64_2e336m17_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e336m17_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e336m17_6limbs/femul.c b/src/Specific/montgomery64_2e336m17_6limbs/femul.c
deleted file mode 100644
index fdc0e2bd4..000000000
--- a/src/Specific/montgomery64_2e336m17_6limbs/femul.c
+++ /dev/null
@@ -1,266 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x26; uint64_t x25 = _mulx_u64(x5, x15, &x26);
- { uint64_t x29; uint64_t x28 = _mulx_u64(x5, x17, &x29);
- { uint64_t x32; uint64_t x31 = _mulx_u64(x5, x19, &x32);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x5, x21, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x5, x23, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x5, x22, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x26, x28, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x29, x31, &x46);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x47, x32, x34, &x49);
- { uint64_t x52; uint8_t x53 = _addcarryx_u64(x50, x35, x37, &x52);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x38, x40, &x55);
- { uint64_t x58; uint8_t _ = _addcarryx_u64(0x0, x56, x41, &x58);
- { uint64_t _; uint64_t x61 = _mulx_u64(x25, 0xf0f0f0f0f0f0f0f1L, &_);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x61, 0xffffffffffffffefL, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x61, 0xffffffffffffffffL, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x61, 0xffffffffffffffffL, &x71);
- { uint64_t x74; uint64_t x73 = _mulx_u64(x61, 0xffffffffffffffffL, &x74);
- { uint64_t x77; uint64_t x76 = _mulx_u64(x61, 0xffffffffffffffffL, &x77);
- { uint64_t x80; uint64_t x79 = _mulx_u64(x61, 0xffff, &x80);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x65, x67, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x68, x70, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x71, x73, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x74, x76, &x91);
- { uint64_t x94; uint8_t x95 = _addcarryx_u64(x92, x77, x79, &x94);
- { uint64_t x97; uint8_t _ = _addcarryx_u64(0x0, x95, x80, &x97);
- { uint64_t _; uint8_t x101 = _addcarryx_u64(0x0, x25, x64, &_);
- { uint64_t x103; uint8_t x104 = _addcarryx_u64(x101, x43, x82, &x103);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(x104, x46, x85, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x49, x88, &x109);
- { uint64_t x112; uint8_t x113 = _addcarryx_u64(x110, x52, x91, &x112);
- { uint64_t x115; uint8_t x116 = _addcarryx_u64(x113, x55, x94, &x115);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x58, x97, &x118);
- { uint64_t x122; uint64_t x121 = _mulx_u64(x7, x15, &x122);
- { uint64_t x125; uint64_t x124 = _mulx_u64(x7, x17, &x125);
- { uint64_t x128; uint64_t x127 = _mulx_u64(x7, x19, &x128);
- { uint64_t x131; uint64_t x130 = _mulx_u64(x7, x21, &x131);
- { uint64_t x134; uint64_t x133 = _mulx_u64(x7, x23, &x134);
- { uint64_t x137; uint64_t x136 = _mulx_u64(x7, x22, &x137);
- { uint64_t x139; uint8_t x140 = _addcarryx_u64(0x0, x122, x124, &x139);
- { uint64_t x142; uint8_t x143 = _addcarryx_u64(x140, x125, x127, &x142);
- { uint64_t x145; uint8_t x146 = _addcarryx_u64(x143, x128, x130, &x145);
- { uint64_t x148; uint8_t x149 = _addcarryx_u64(x146, x131, x133, &x148);
- { uint64_t x151; uint8_t x152 = _addcarryx_u64(x149, x134, x136, &x151);
- { uint64_t x154; uint8_t _ = _addcarryx_u64(0x0, x152, x137, &x154);
- { uint64_t x157; uint8_t x158 = _addcarryx_u64(0x0, x103, x121, &x157);
- { uint64_t x160; uint8_t x161 = _addcarryx_u64(x158, x106, x139, &x160);
- { uint64_t x163; uint8_t x164 = _addcarryx_u64(x161, x109, x142, &x163);
- { uint64_t x166; uint8_t x167 = _addcarryx_u64(x164, x112, x145, &x166);
- { uint64_t x169; uint8_t x170 = _addcarryx_u64(x167, x115, x148, &x169);
- { uint64_t x172; uint8_t x173 = _addcarryx_u64(x170, x118, x151, &x172);
- { uint64_t x175; uint8_t x176 = _addcarryx_u64(x173, x119, x154, &x175);
- { uint64_t _; uint64_t x178 = _mulx_u64(x157, 0xf0f0f0f0f0f0f0f1L, &_);
- { uint64_t x182; uint64_t x181 = _mulx_u64(x178, 0xffffffffffffffefL, &x182);
- { uint64_t x185; uint64_t x184 = _mulx_u64(x178, 0xffffffffffffffffL, &x185);
- { uint64_t x188; uint64_t x187 = _mulx_u64(x178, 0xffffffffffffffffL, &x188);
- { uint64_t x191; uint64_t x190 = _mulx_u64(x178, 0xffffffffffffffffL, &x191);
- { uint64_t x194; uint64_t x193 = _mulx_u64(x178, 0xffffffffffffffffL, &x194);
- { uint64_t x197; uint64_t x196 = _mulx_u64(x178, 0xffff, &x197);
- { uint64_t x199; uint8_t x200 = _addcarryx_u64(0x0, x182, x184, &x199);
- { uint64_t x202; uint8_t x203 = _addcarryx_u64(x200, x185, x187, &x202);
- { uint64_t x205; uint8_t x206 = _addcarryx_u64(x203, x188, x190, &x205);
- { uint64_t x208; uint8_t x209 = _addcarryx_u64(x206, x191, x193, &x208);
- { uint64_t x211; uint8_t x212 = _addcarryx_u64(x209, x194, x196, &x211);
- { uint64_t x214; uint8_t _ = _addcarryx_u64(0x0, x212, x197, &x214);
- { uint64_t _; uint8_t x218 = _addcarryx_u64(0x0, x157, x181, &_);
- { uint64_t x220; uint8_t x221 = _addcarryx_u64(x218, x160, x199, &x220);
- { uint64_t x223; uint8_t x224 = _addcarryx_u64(x221, x163, x202, &x223);
- { uint64_t x226; uint8_t x227 = _addcarryx_u64(x224, x166, x205, &x226);
- { uint64_t x229; uint8_t x230 = _addcarryx_u64(x227, x169, x208, &x229);
- { uint64_t x232; uint8_t x233 = _addcarryx_u64(x230, x172, x211, &x232);
- { uint64_t x235; uint8_t x236 = _addcarryx_u64(x233, x175, x214, &x235);
- { uint8_t x237 = (x236 + x176);
- { uint64_t x240; uint64_t x239 = _mulx_u64(x9, x15, &x240);
- { uint64_t x243; uint64_t x242 = _mulx_u64(x9, x17, &x243);
- { uint64_t x246; uint64_t x245 = _mulx_u64(x9, x19, &x246);
- { uint64_t x249; uint64_t x248 = _mulx_u64(x9, x21, &x249);
- { uint64_t x252; uint64_t x251 = _mulx_u64(x9, x23, &x252);
- { uint64_t x255; uint64_t x254 = _mulx_u64(x9, x22, &x255);
- { uint64_t x257; uint8_t x258 = _addcarryx_u64(0x0, x240, x242, &x257);
- { uint64_t x260; uint8_t x261 = _addcarryx_u64(x258, x243, x245, &x260);
- { uint64_t x263; uint8_t x264 = _addcarryx_u64(x261, x246, x248, &x263);
- { uint64_t x266; uint8_t x267 = _addcarryx_u64(x264, x249, x251, &x266);
- { uint64_t x269; uint8_t x270 = _addcarryx_u64(x267, x252, x254, &x269);
- { uint64_t x272; uint8_t _ = _addcarryx_u64(0x0, x270, x255, &x272);
- { uint64_t x275; uint8_t x276 = _addcarryx_u64(0x0, x220, x239, &x275);
- { uint64_t x278; uint8_t x279 = _addcarryx_u64(x276, x223, x257, &x278);
- { uint64_t x281; uint8_t x282 = _addcarryx_u64(x279, x226, x260, &x281);
- { uint64_t x284; uint8_t x285 = _addcarryx_u64(x282, x229, x263, &x284);
- { uint64_t x287; uint8_t x288 = _addcarryx_u64(x285, x232, x266, &x287);
- { uint64_t x290; uint8_t x291 = _addcarryx_u64(x288, x235, x269, &x290);
- { uint64_t x293; uint8_t x294 = _addcarryx_u64(x291, x237, x272, &x293);
- { uint64_t _; uint64_t x296 = _mulx_u64(x275, 0xf0f0f0f0f0f0f0f1L, &_);
- { uint64_t x300; uint64_t x299 = _mulx_u64(x296, 0xffffffffffffffefL, &x300);
- { uint64_t x303; uint64_t x302 = _mulx_u64(x296, 0xffffffffffffffffL, &x303);
- { uint64_t x306; uint64_t x305 = _mulx_u64(x296, 0xffffffffffffffffL, &x306);
- { uint64_t x309; uint64_t x308 = _mulx_u64(x296, 0xffffffffffffffffL, &x309);
- { uint64_t x312; uint64_t x311 = _mulx_u64(x296, 0xffffffffffffffffL, &x312);
- { uint64_t x315; uint64_t x314 = _mulx_u64(x296, 0xffff, &x315);
- { uint64_t x317; uint8_t x318 = _addcarryx_u64(0x0, x300, x302, &x317);
- { uint64_t x320; uint8_t x321 = _addcarryx_u64(x318, x303, x305, &x320);
- { uint64_t x323; uint8_t x324 = _addcarryx_u64(x321, x306, x308, &x323);
- { uint64_t x326; uint8_t x327 = _addcarryx_u64(x324, x309, x311, &x326);
- { uint64_t x329; uint8_t x330 = _addcarryx_u64(x327, x312, x314, &x329);
- { uint64_t x332; uint8_t _ = _addcarryx_u64(0x0, x330, x315, &x332);
- { uint64_t _; uint8_t x336 = _addcarryx_u64(0x0, x275, x299, &_);
- { uint64_t x338; uint8_t x339 = _addcarryx_u64(x336, x278, x317, &x338);
- { uint64_t x341; uint8_t x342 = _addcarryx_u64(x339, x281, x320, &x341);
- { uint64_t x344; uint8_t x345 = _addcarryx_u64(x342, x284, x323, &x344);
- { uint64_t x347; uint8_t x348 = _addcarryx_u64(x345, x287, x326, &x347);
- { uint64_t x350; uint8_t x351 = _addcarryx_u64(x348, x290, x329, &x350);
- { uint64_t x353; uint8_t x354 = _addcarryx_u64(x351, x293, x332, &x353);
- { uint8_t x355 = (x354 + x294);
- { uint64_t x358; uint64_t x357 = _mulx_u64(x11, x15, &x358);
- { uint64_t x361; uint64_t x360 = _mulx_u64(x11, x17, &x361);
- { uint64_t x364; uint64_t x363 = _mulx_u64(x11, x19, &x364);
- { uint64_t x367; uint64_t x366 = _mulx_u64(x11, x21, &x367);
- { uint64_t x370; uint64_t x369 = _mulx_u64(x11, x23, &x370);
- { uint64_t x373; uint64_t x372 = _mulx_u64(x11, x22, &x373);
- { uint64_t x375; uint8_t x376 = _addcarryx_u64(0x0, x358, x360, &x375);
- { uint64_t x378; uint8_t x379 = _addcarryx_u64(x376, x361, x363, &x378);
- { uint64_t x381; uint8_t x382 = _addcarryx_u64(x379, x364, x366, &x381);
- { uint64_t x384; uint8_t x385 = _addcarryx_u64(x382, x367, x369, &x384);
- { uint64_t x387; uint8_t x388 = _addcarryx_u64(x385, x370, x372, &x387);
- { uint64_t x390; uint8_t _ = _addcarryx_u64(0x0, x388, x373, &x390);
- { uint64_t x393; uint8_t x394 = _addcarryx_u64(0x0, x338, x357, &x393);
- { uint64_t x396; uint8_t x397 = _addcarryx_u64(x394, x341, x375, &x396);
- { uint64_t x399; uint8_t x400 = _addcarryx_u64(x397, x344, x378, &x399);
- { uint64_t x402; uint8_t x403 = _addcarryx_u64(x400, x347, x381, &x402);
- { uint64_t x405; uint8_t x406 = _addcarryx_u64(x403, x350, x384, &x405);
- { uint64_t x408; uint8_t x409 = _addcarryx_u64(x406, x353, x387, &x408);
- { uint64_t x411; uint8_t x412 = _addcarryx_u64(x409, x355, x390, &x411);
- { uint64_t _; uint64_t x414 = _mulx_u64(x393, 0xf0f0f0f0f0f0f0f1L, &_);
- { uint64_t x418; uint64_t x417 = _mulx_u64(x414, 0xffffffffffffffefL, &x418);
- { uint64_t x421; uint64_t x420 = _mulx_u64(x414, 0xffffffffffffffffL, &x421);
- { uint64_t x424; uint64_t x423 = _mulx_u64(x414, 0xffffffffffffffffL, &x424);
- { uint64_t x427; uint64_t x426 = _mulx_u64(x414, 0xffffffffffffffffL, &x427);
- { uint64_t x430; uint64_t x429 = _mulx_u64(x414, 0xffffffffffffffffL, &x430);
- { uint64_t x433; uint64_t x432 = _mulx_u64(x414, 0xffff, &x433);
- { uint64_t x435; uint8_t x436 = _addcarryx_u64(0x0, x418, x420, &x435);
- { uint64_t x438; uint8_t x439 = _addcarryx_u64(x436, x421, x423, &x438);
- { uint64_t x441; uint8_t x442 = _addcarryx_u64(x439, x424, x426, &x441);
- { uint64_t x444; uint8_t x445 = _addcarryx_u64(x442, x427, x429, &x444);
- { uint64_t x447; uint8_t x448 = _addcarryx_u64(x445, x430, x432, &x447);
- { uint64_t x450; uint8_t _ = _addcarryx_u64(0x0, x448, x433, &x450);
- { uint64_t _; uint8_t x454 = _addcarryx_u64(0x0, x393, x417, &_);
- { uint64_t x456; uint8_t x457 = _addcarryx_u64(x454, x396, x435, &x456);
- { uint64_t x459; uint8_t x460 = _addcarryx_u64(x457, x399, x438, &x459);
- { uint64_t x462; uint8_t x463 = _addcarryx_u64(x460, x402, x441, &x462);
- { uint64_t x465; uint8_t x466 = _addcarryx_u64(x463, x405, x444, &x465);
- { uint64_t x468; uint8_t x469 = _addcarryx_u64(x466, x408, x447, &x468);
- { uint64_t x471; uint8_t x472 = _addcarryx_u64(x469, x411, x450, &x471);
- { uint8_t x473 = (x472 + x412);
- { uint64_t x476; uint64_t x475 = _mulx_u64(x13, x15, &x476);
- { uint64_t x479; uint64_t x478 = _mulx_u64(x13, x17, &x479);
- { uint64_t x482; uint64_t x481 = _mulx_u64(x13, x19, &x482);
- { uint64_t x485; uint64_t x484 = _mulx_u64(x13, x21, &x485);
- { uint64_t x488; uint64_t x487 = _mulx_u64(x13, x23, &x488);
- { uint64_t x491; uint64_t x490 = _mulx_u64(x13, x22, &x491);
- { uint64_t x493; uint8_t x494 = _addcarryx_u64(0x0, x476, x478, &x493);
- { uint64_t x496; uint8_t x497 = _addcarryx_u64(x494, x479, x481, &x496);
- { uint64_t x499; uint8_t x500 = _addcarryx_u64(x497, x482, x484, &x499);
- { uint64_t x502; uint8_t x503 = _addcarryx_u64(x500, x485, x487, &x502);
- { uint64_t x505; uint8_t x506 = _addcarryx_u64(x503, x488, x490, &x505);
- { uint64_t x508; uint8_t _ = _addcarryx_u64(0x0, x506, x491, &x508);
- { uint64_t x511; uint8_t x512 = _addcarryx_u64(0x0, x456, x475, &x511);
- { uint64_t x514; uint8_t x515 = _addcarryx_u64(x512, x459, x493, &x514);
- { uint64_t x517; uint8_t x518 = _addcarryx_u64(x515, x462, x496, &x517);
- { uint64_t x520; uint8_t x521 = _addcarryx_u64(x518, x465, x499, &x520);
- { uint64_t x523; uint8_t x524 = _addcarryx_u64(x521, x468, x502, &x523);
- { uint64_t x526; uint8_t x527 = _addcarryx_u64(x524, x471, x505, &x526);
- { uint64_t x529; uint8_t x530 = _addcarryx_u64(x527, x473, x508, &x529);
- { uint64_t _; uint64_t x532 = _mulx_u64(x511, 0xf0f0f0f0f0f0f0f1L, &_);
- { uint64_t x536; uint64_t x535 = _mulx_u64(x532, 0xffffffffffffffefL, &x536);
- { uint64_t x539; uint64_t x538 = _mulx_u64(x532, 0xffffffffffffffffL, &x539);
- { uint64_t x542; uint64_t x541 = _mulx_u64(x532, 0xffffffffffffffffL, &x542);
- { uint64_t x545; uint64_t x544 = _mulx_u64(x532, 0xffffffffffffffffL, &x545);
- { uint64_t x548; uint64_t x547 = _mulx_u64(x532, 0xffffffffffffffffL, &x548);
- { uint64_t x551; uint64_t x550 = _mulx_u64(x532, 0xffff, &x551);
- { uint64_t x553; uint8_t x554 = _addcarryx_u64(0x0, x536, x538, &x553);
- { uint64_t x556; uint8_t x557 = _addcarryx_u64(x554, x539, x541, &x556);
- { uint64_t x559; uint8_t x560 = _addcarryx_u64(x557, x542, x544, &x559);
- { uint64_t x562; uint8_t x563 = _addcarryx_u64(x560, x545, x547, &x562);
- { uint64_t x565; uint8_t x566 = _addcarryx_u64(x563, x548, x550, &x565);
- { uint64_t x568; uint8_t _ = _addcarryx_u64(0x0, x566, x551, &x568);
- { uint64_t _; uint8_t x572 = _addcarryx_u64(0x0, x511, x535, &_);
- { uint64_t x574; uint8_t x575 = _addcarryx_u64(x572, x514, x553, &x574);
- { uint64_t x577; uint8_t x578 = _addcarryx_u64(x575, x517, x556, &x577);
- { uint64_t x580; uint8_t x581 = _addcarryx_u64(x578, x520, x559, &x580);
- { uint64_t x583; uint8_t x584 = _addcarryx_u64(x581, x523, x562, &x583);
- { uint64_t x586; uint8_t x587 = _addcarryx_u64(x584, x526, x565, &x586);
- { uint64_t x589; uint8_t x590 = _addcarryx_u64(x587, x529, x568, &x589);
- { uint8_t x591 = (x590 + x530);
- { uint64_t x594; uint64_t x593 = _mulx_u64(x12, x15, &x594);
- { uint64_t x597; uint64_t x596 = _mulx_u64(x12, x17, &x597);
- { uint64_t x600; uint64_t x599 = _mulx_u64(x12, x19, &x600);
- { uint64_t x603; uint64_t x602 = _mulx_u64(x12, x21, &x603);
- { uint64_t x606; uint64_t x605 = _mulx_u64(x12, x23, &x606);
- { uint64_t x609; uint64_t x608 = _mulx_u64(x12, x22, &x609);
- { uint64_t x611; uint8_t x612 = _addcarryx_u64(0x0, x594, x596, &x611);
- { uint64_t x614; uint8_t x615 = _addcarryx_u64(x612, x597, x599, &x614);
- { uint64_t x617; uint8_t x618 = _addcarryx_u64(x615, x600, x602, &x617);
- { uint64_t x620; uint8_t x621 = _addcarryx_u64(x618, x603, x605, &x620);
- { uint64_t x623; uint8_t x624 = _addcarryx_u64(x621, x606, x608, &x623);
- { uint64_t x626; uint8_t _ = _addcarryx_u64(0x0, x624, x609, &x626);
- { uint64_t x629; uint8_t x630 = _addcarryx_u64(0x0, x574, x593, &x629);
- { uint64_t x632; uint8_t x633 = _addcarryx_u64(x630, x577, x611, &x632);
- { uint64_t x635; uint8_t x636 = _addcarryx_u64(x633, x580, x614, &x635);
- { uint64_t x638; uint8_t x639 = _addcarryx_u64(x636, x583, x617, &x638);
- { uint64_t x641; uint8_t x642 = _addcarryx_u64(x639, x586, x620, &x641);
- { uint64_t x644; uint8_t x645 = _addcarryx_u64(x642, x589, x623, &x644);
- { uint64_t x647; uint8_t x648 = _addcarryx_u64(x645, x591, x626, &x647);
- { uint64_t _; uint64_t x650 = _mulx_u64(x629, 0xf0f0f0f0f0f0f0f1L, &_);
- { uint64_t x654; uint64_t x653 = _mulx_u64(x650, 0xffffffffffffffefL, &x654);
- { uint64_t x657; uint64_t x656 = _mulx_u64(x650, 0xffffffffffffffffL, &x657);
- { uint64_t x660; uint64_t x659 = _mulx_u64(x650, 0xffffffffffffffffL, &x660);
- { uint64_t x663; uint64_t x662 = _mulx_u64(x650, 0xffffffffffffffffL, &x663);
- { uint64_t x666; uint64_t x665 = _mulx_u64(x650, 0xffffffffffffffffL, &x666);
- { uint64_t x669; uint64_t x668 = _mulx_u64(x650, 0xffff, &x669);
- { uint64_t x671; uint8_t x672 = _addcarryx_u64(0x0, x654, x656, &x671);
- { uint64_t x674; uint8_t x675 = _addcarryx_u64(x672, x657, x659, &x674);
- { uint64_t x677; uint8_t x678 = _addcarryx_u64(x675, x660, x662, &x677);
- { uint64_t x680; uint8_t x681 = _addcarryx_u64(x678, x663, x665, &x680);
- { uint64_t x683; uint8_t x684 = _addcarryx_u64(x681, x666, x668, &x683);
- { uint64_t x686; uint8_t _ = _addcarryx_u64(0x0, x684, x669, &x686);
- { uint64_t _; uint8_t x690 = _addcarryx_u64(0x0, x629, x653, &_);
- { uint64_t x692; uint8_t x693 = _addcarryx_u64(x690, x632, x671, &x692);
- { uint64_t x695; uint8_t x696 = _addcarryx_u64(x693, x635, x674, &x695);
- { uint64_t x698; uint8_t x699 = _addcarryx_u64(x696, x638, x677, &x698);
- { uint64_t x701; uint8_t x702 = _addcarryx_u64(x699, x641, x680, &x701);
- { uint64_t x704; uint8_t x705 = _addcarryx_u64(x702, x644, x683, &x704);
- { uint64_t x707; uint8_t x708 = _addcarryx_u64(x705, x647, x686, &x707);
- { uint8_t x709 = (x708 + x648);
- { uint64_t x711; uint8_t x712 = _subborrow_u64(0x0, x692, 0xffffffffffffffefL, &x711);
- { uint64_t x714; uint8_t x715 = _subborrow_u64(x712, x695, 0xffffffffffffffffL, &x714);
- { uint64_t x717; uint8_t x718 = _subborrow_u64(x715, x698, 0xffffffffffffffffL, &x717);
- { uint64_t x720; uint8_t x721 = _subborrow_u64(x718, x701, 0xffffffffffffffffL, &x720);
- { uint64_t x723; uint8_t x724 = _subborrow_u64(x721, x704, 0xffffffffffffffffL, &x723);
- { uint64_t x726; uint8_t x727 = _subborrow_u64(x724, x707, 0xffff, &x726);
- { uint64_t _; uint8_t x730 = _subborrow_u64(x727, x709, 0x0, &_);
- { uint64_t x731 = cmovznz64(x730, x726, x707);
- { uint64_t x732 = cmovznz64(x730, x723, x704);
- { uint64_t x733 = cmovznz64(x730, x720, x701);
- { uint64_t x734 = cmovznz64(x730, x717, x698);
- { uint64_t x735 = cmovznz64(x730, x714, x695);
- { uint64_t x736 = cmovznz64(x730, x711, x692);
- out[0] = x736;
- out[1] = x735;
- out[2] = x734;
- out[3] = x733;
- out[4] = x732;
- out[5] = x731;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e336m17_6limbs/femul.v b/src/Specific/montgomery64_2e336m17_6limbs/femul.v
deleted file mode 100644
index d5efc0842..000000000
--- a/src/Specific/montgomery64_2e336m17_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e336m17_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e336m17_6limbs/femulDisplay.log b/src/Specific/montgomery64_2e336m17_6limbs/femulDisplay.log
deleted file mode 100644
index 491804734..000000000
--- a/src/Specific/montgomery64_2e336m17_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,252 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint64_t x26 = mulx_u64(x5, x15);
- uint64_t x28, uint64_t x29 = mulx_u64(x5, x17);
- uint64_t x31, uint64_t x32 = mulx_u64(x5, x19);
- uint64_t x34, uint64_t x35 = mulx_u64(x5, x21);
- uint64_t x37, uint64_t x38 = mulx_u64(x5, x23);
- uint64_t x40, uint64_t x41 = mulx_u64(x5, x22);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x26, x28);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x29, x31);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x47, x32, x34);
- uint64_t x52, uint8_t x53 = addcarryx_u64(x50, x35, x37);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x38, x40);
- uint64_t x58, uint8_t _ = addcarryx_u64(0x0, x56, x41);
- uint64_t x61, uint64_t _ = mulx_u64(x25, 0xf0f0f0f0f0f0f0f1L);
- uint64_t x64, uint64_t x65 = mulx_u64(x61, 0xffffffffffffffefL);
- uint64_t x67, uint64_t x68 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x70, uint64_t x71 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x73, uint64_t x74 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x76, uint64_t x77 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x79, uint64_t x80 = mulx_u64(x61, 0xffff);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x65, x67);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x68, x70);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x71, x73);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x74, x76);
- uint64_t x94, uint8_t x95 = addcarryx_u64(x92, x77, x79);
- uint64_t x97, uint8_t _ = addcarryx_u64(0x0, x95, x80);
- uint64_t _, uint8_t x101 = addcarryx_u64(0x0, x25, x64);
- uint64_t x103, uint8_t x104 = addcarryx_u64(x101, x43, x82);
- uint64_t x106, uint8_t x107 = addcarryx_u64(x104, x46, x85);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x49, x88);
- uint64_t x112, uint8_t x113 = addcarryx_u64(x110, x52, x91);
- uint64_t x115, uint8_t x116 = addcarryx_u64(x113, x55, x94);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x58, x97);
- uint64_t x121, uint64_t x122 = mulx_u64(x7, x15);
- uint64_t x124, uint64_t x125 = mulx_u64(x7, x17);
- uint64_t x127, uint64_t x128 = mulx_u64(x7, x19);
- uint64_t x130, uint64_t x131 = mulx_u64(x7, x21);
- uint64_t x133, uint64_t x134 = mulx_u64(x7, x23);
- uint64_t x136, uint64_t x137 = mulx_u64(x7, x22);
- uint64_t x139, uint8_t x140 = addcarryx_u64(0x0, x122, x124);
- uint64_t x142, uint8_t x143 = addcarryx_u64(x140, x125, x127);
- uint64_t x145, uint8_t x146 = addcarryx_u64(x143, x128, x130);
- uint64_t x148, uint8_t x149 = addcarryx_u64(x146, x131, x133);
- uint64_t x151, uint8_t x152 = addcarryx_u64(x149, x134, x136);
- uint64_t x154, uint8_t _ = addcarryx_u64(0x0, x152, x137);
- uint64_t x157, uint8_t x158 = addcarryx_u64(0x0, x103, x121);
- uint64_t x160, uint8_t x161 = addcarryx_u64(x158, x106, x139);
- uint64_t x163, uint8_t x164 = addcarryx_u64(x161, x109, x142);
- uint64_t x166, uint8_t x167 = addcarryx_u64(x164, x112, x145);
- uint64_t x169, uint8_t x170 = addcarryx_u64(x167, x115, x148);
- uint64_t x172, uint8_t x173 = addcarryx_u64(x170, x118, x151);
- uint64_t x175, uint8_t x176 = addcarryx_u64(x173, x119, x154);
- uint64_t x178, uint64_t _ = mulx_u64(x157, 0xf0f0f0f0f0f0f0f1L);
- uint64_t x181, uint64_t x182 = mulx_u64(x178, 0xffffffffffffffefL);
- uint64_t x184, uint64_t x185 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x187, uint64_t x188 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x190, uint64_t x191 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x193, uint64_t x194 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x196, uint64_t x197 = mulx_u64(x178, 0xffff);
- uint64_t x199, uint8_t x200 = addcarryx_u64(0x0, x182, x184);
- uint64_t x202, uint8_t x203 = addcarryx_u64(x200, x185, x187);
- uint64_t x205, uint8_t x206 = addcarryx_u64(x203, x188, x190);
- uint64_t x208, uint8_t x209 = addcarryx_u64(x206, x191, x193);
- uint64_t x211, uint8_t x212 = addcarryx_u64(x209, x194, x196);
- uint64_t x214, uint8_t _ = addcarryx_u64(0x0, x212, x197);
- uint64_t _, uint8_t x218 = addcarryx_u64(0x0, x157, x181);
- uint64_t x220, uint8_t x221 = addcarryx_u64(x218, x160, x199);
- uint64_t x223, uint8_t x224 = addcarryx_u64(x221, x163, x202);
- uint64_t x226, uint8_t x227 = addcarryx_u64(x224, x166, x205);
- uint64_t x229, uint8_t x230 = addcarryx_u64(x227, x169, x208);
- uint64_t x232, uint8_t x233 = addcarryx_u64(x230, x172, x211);
- uint64_t x235, uint8_t x236 = addcarryx_u64(x233, x175, x214);
- uint8_t x237 = (x236 + x176);
- uint64_t x239, uint64_t x240 = mulx_u64(x9, x15);
- uint64_t x242, uint64_t x243 = mulx_u64(x9, x17);
- uint64_t x245, uint64_t x246 = mulx_u64(x9, x19);
- uint64_t x248, uint64_t x249 = mulx_u64(x9, x21);
- uint64_t x251, uint64_t x252 = mulx_u64(x9, x23);
- uint64_t x254, uint64_t x255 = mulx_u64(x9, x22);
- uint64_t x257, uint8_t x258 = addcarryx_u64(0x0, x240, x242);
- uint64_t x260, uint8_t x261 = addcarryx_u64(x258, x243, x245);
- uint64_t x263, uint8_t x264 = addcarryx_u64(x261, x246, x248);
- uint64_t x266, uint8_t x267 = addcarryx_u64(x264, x249, x251);
- uint64_t x269, uint8_t x270 = addcarryx_u64(x267, x252, x254);
- uint64_t x272, uint8_t _ = addcarryx_u64(0x0, x270, x255);
- uint64_t x275, uint8_t x276 = addcarryx_u64(0x0, x220, x239);
- uint64_t x278, uint8_t x279 = addcarryx_u64(x276, x223, x257);
- uint64_t x281, uint8_t x282 = addcarryx_u64(x279, x226, x260);
- uint64_t x284, uint8_t x285 = addcarryx_u64(x282, x229, x263);
- uint64_t x287, uint8_t x288 = addcarryx_u64(x285, x232, x266);
- uint64_t x290, uint8_t x291 = addcarryx_u64(x288, x235, x269);
- uint64_t x293, uint8_t x294 = addcarryx_u64(x291, x237, x272);
- uint64_t x296, uint64_t _ = mulx_u64(x275, 0xf0f0f0f0f0f0f0f1L);
- uint64_t x299, uint64_t x300 = mulx_u64(x296, 0xffffffffffffffefL);
- uint64_t x302, uint64_t x303 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x305, uint64_t x306 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x308, uint64_t x309 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x311, uint64_t x312 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x314, uint64_t x315 = mulx_u64(x296, 0xffff);
- uint64_t x317, uint8_t x318 = addcarryx_u64(0x0, x300, x302);
- uint64_t x320, uint8_t x321 = addcarryx_u64(x318, x303, x305);
- uint64_t x323, uint8_t x324 = addcarryx_u64(x321, x306, x308);
- uint64_t x326, uint8_t x327 = addcarryx_u64(x324, x309, x311);
- uint64_t x329, uint8_t x330 = addcarryx_u64(x327, x312, x314);
- uint64_t x332, uint8_t _ = addcarryx_u64(0x0, x330, x315);
- uint64_t _, uint8_t x336 = addcarryx_u64(0x0, x275, x299);
- uint64_t x338, uint8_t x339 = addcarryx_u64(x336, x278, x317);
- uint64_t x341, uint8_t x342 = addcarryx_u64(x339, x281, x320);
- uint64_t x344, uint8_t x345 = addcarryx_u64(x342, x284, x323);
- uint64_t x347, uint8_t x348 = addcarryx_u64(x345, x287, x326);
- uint64_t x350, uint8_t x351 = addcarryx_u64(x348, x290, x329);
- uint64_t x353, uint8_t x354 = addcarryx_u64(x351, x293, x332);
- uint8_t x355 = (x354 + x294);
- uint64_t x357, uint64_t x358 = mulx_u64(x11, x15);
- uint64_t x360, uint64_t x361 = mulx_u64(x11, x17);
- uint64_t x363, uint64_t x364 = mulx_u64(x11, x19);
- uint64_t x366, uint64_t x367 = mulx_u64(x11, x21);
- uint64_t x369, uint64_t x370 = mulx_u64(x11, x23);
- uint64_t x372, uint64_t x373 = mulx_u64(x11, x22);
- uint64_t x375, uint8_t x376 = addcarryx_u64(0x0, x358, x360);
- uint64_t x378, uint8_t x379 = addcarryx_u64(x376, x361, x363);
- uint64_t x381, uint8_t x382 = addcarryx_u64(x379, x364, x366);
- uint64_t x384, uint8_t x385 = addcarryx_u64(x382, x367, x369);
- uint64_t x387, uint8_t x388 = addcarryx_u64(x385, x370, x372);
- uint64_t x390, uint8_t _ = addcarryx_u64(0x0, x388, x373);
- uint64_t x393, uint8_t x394 = addcarryx_u64(0x0, x338, x357);
- uint64_t x396, uint8_t x397 = addcarryx_u64(x394, x341, x375);
- uint64_t x399, uint8_t x400 = addcarryx_u64(x397, x344, x378);
- uint64_t x402, uint8_t x403 = addcarryx_u64(x400, x347, x381);
- uint64_t x405, uint8_t x406 = addcarryx_u64(x403, x350, x384);
- uint64_t x408, uint8_t x409 = addcarryx_u64(x406, x353, x387);
- uint64_t x411, uint8_t x412 = addcarryx_u64(x409, x355, x390);
- uint64_t x414, uint64_t _ = mulx_u64(x393, 0xf0f0f0f0f0f0f0f1L);
- uint64_t x417, uint64_t x418 = mulx_u64(x414, 0xffffffffffffffefL);
- uint64_t x420, uint64_t x421 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x423, uint64_t x424 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x426, uint64_t x427 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x429, uint64_t x430 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x432, uint64_t x433 = mulx_u64(x414, 0xffff);
- uint64_t x435, uint8_t x436 = addcarryx_u64(0x0, x418, x420);
- uint64_t x438, uint8_t x439 = addcarryx_u64(x436, x421, x423);
- uint64_t x441, uint8_t x442 = addcarryx_u64(x439, x424, x426);
- uint64_t x444, uint8_t x445 = addcarryx_u64(x442, x427, x429);
- uint64_t x447, uint8_t x448 = addcarryx_u64(x445, x430, x432);
- uint64_t x450, uint8_t _ = addcarryx_u64(0x0, x448, x433);
- uint64_t _, uint8_t x454 = addcarryx_u64(0x0, x393, x417);
- uint64_t x456, uint8_t x457 = addcarryx_u64(x454, x396, x435);
- uint64_t x459, uint8_t x460 = addcarryx_u64(x457, x399, x438);
- uint64_t x462, uint8_t x463 = addcarryx_u64(x460, x402, x441);
- uint64_t x465, uint8_t x466 = addcarryx_u64(x463, x405, x444);
- uint64_t x468, uint8_t x469 = addcarryx_u64(x466, x408, x447);
- uint64_t x471, uint8_t x472 = addcarryx_u64(x469, x411, x450);
- uint8_t x473 = (x472 + x412);
- uint64_t x475, uint64_t x476 = mulx_u64(x13, x15);
- uint64_t x478, uint64_t x479 = mulx_u64(x13, x17);
- uint64_t x481, uint64_t x482 = mulx_u64(x13, x19);
- uint64_t x484, uint64_t x485 = mulx_u64(x13, x21);
- uint64_t x487, uint64_t x488 = mulx_u64(x13, x23);
- uint64_t x490, uint64_t x491 = mulx_u64(x13, x22);
- uint64_t x493, uint8_t x494 = addcarryx_u64(0x0, x476, x478);
- uint64_t x496, uint8_t x497 = addcarryx_u64(x494, x479, x481);
- uint64_t x499, uint8_t x500 = addcarryx_u64(x497, x482, x484);
- uint64_t x502, uint8_t x503 = addcarryx_u64(x500, x485, x487);
- uint64_t x505, uint8_t x506 = addcarryx_u64(x503, x488, x490);
- uint64_t x508, uint8_t _ = addcarryx_u64(0x0, x506, x491);
- uint64_t x511, uint8_t x512 = addcarryx_u64(0x0, x456, x475);
- uint64_t x514, uint8_t x515 = addcarryx_u64(x512, x459, x493);
- uint64_t x517, uint8_t x518 = addcarryx_u64(x515, x462, x496);
- uint64_t x520, uint8_t x521 = addcarryx_u64(x518, x465, x499);
- uint64_t x523, uint8_t x524 = addcarryx_u64(x521, x468, x502);
- uint64_t x526, uint8_t x527 = addcarryx_u64(x524, x471, x505);
- uint64_t x529, uint8_t x530 = addcarryx_u64(x527, x473, x508);
- uint64_t x532, uint64_t _ = mulx_u64(x511, 0xf0f0f0f0f0f0f0f1L);
- uint64_t x535, uint64_t x536 = mulx_u64(x532, 0xffffffffffffffefL);
- uint64_t x538, uint64_t x539 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x541, uint64_t x542 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x544, uint64_t x545 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x547, uint64_t x548 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x550, uint64_t x551 = mulx_u64(x532, 0xffff);
- uint64_t x553, uint8_t x554 = addcarryx_u64(0x0, x536, x538);
- uint64_t x556, uint8_t x557 = addcarryx_u64(x554, x539, x541);
- uint64_t x559, uint8_t x560 = addcarryx_u64(x557, x542, x544);
- uint64_t x562, uint8_t x563 = addcarryx_u64(x560, x545, x547);
- uint64_t x565, uint8_t x566 = addcarryx_u64(x563, x548, x550);
- uint64_t x568, uint8_t _ = addcarryx_u64(0x0, x566, x551);
- uint64_t _, uint8_t x572 = addcarryx_u64(0x0, x511, x535);
- uint64_t x574, uint8_t x575 = addcarryx_u64(x572, x514, x553);
- uint64_t x577, uint8_t x578 = addcarryx_u64(x575, x517, x556);
- uint64_t x580, uint8_t x581 = addcarryx_u64(x578, x520, x559);
- uint64_t x583, uint8_t x584 = addcarryx_u64(x581, x523, x562);
- uint64_t x586, uint8_t x587 = addcarryx_u64(x584, x526, x565);
- uint64_t x589, uint8_t x590 = addcarryx_u64(x587, x529, x568);
- uint8_t x591 = (x590 + x530);
- uint64_t x593, uint64_t x594 = mulx_u64(x12, x15);
- uint64_t x596, uint64_t x597 = mulx_u64(x12, x17);
- uint64_t x599, uint64_t x600 = mulx_u64(x12, x19);
- uint64_t x602, uint64_t x603 = mulx_u64(x12, x21);
- uint64_t x605, uint64_t x606 = mulx_u64(x12, x23);
- uint64_t x608, uint64_t x609 = mulx_u64(x12, x22);
- uint64_t x611, uint8_t x612 = addcarryx_u64(0x0, x594, x596);
- uint64_t x614, uint8_t x615 = addcarryx_u64(x612, x597, x599);
- uint64_t x617, uint8_t x618 = addcarryx_u64(x615, x600, x602);
- uint64_t x620, uint8_t x621 = addcarryx_u64(x618, x603, x605);
- uint64_t x623, uint8_t x624 = addcarryx_u64(x621, x606, x608);
- uint64_t x626, uint8_t _ = addcarryx_u64(0x0, x624, x609);
- uint64_t x629, uint8_t x630 = addcarryx_u64(0x0, x574, x593);
- uint64_t x632, uint8_t x633 = addcarryx_u64(x630, x577, x611);
- uint64_t x635, uint8_t x636 = addcarryx_u64(x633, x580, x614);
- uint64_t x638, uint8_t x639 = addcarryx_u64(x636, x583, x617);
- uint64_t x641, uint8_t x642 = addcarryx_u64(x639, x586, x620);
- uint64_t x644, uint8_t x645 = addcarryx_u64(x642, x589, x623);
- uint64_t x647, uint8_t x648 = addcarryx_u64(x645, x591, x626);
- uint64_t x650, uint64_t _ = mulx_u64(x629, 0xf0f0f0f0f0f0f0f1L);
- uint64_t x653, uint64_t x654 = mulx_u64(x650, 0xffffffffffffffefL);
- uint64_t x656, uint64_t x657 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x659, uint64_t x660 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x662, uint64_t x663 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x665, uint64_t x666 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x668, uint64_t x669 = mulx_u64(x650, 0xffff);
- uint64_t x671, uint8_t x672 = addcarryx_u64(0x0, x654, x656);
- uint64_t x674, uint8_t x675 = addcarryx_u64(x672, x657, x659);
- uint64_t x677, uint8_t x678 = addcarryx_u64(x675, x660, x662);
- uint64_t x680, uint8_t x681 = addcarryx_u64(x678, x663, x665);
- uint64_t x683, uint8_t x684 = addcarryx_u64(x681, x666, x668);
- uint64_t x686, uint8_t _ = addcarryx_u64(0x0, x684, x669);
- uint64_t _, uint8_t x690 = addcarryx_u64(0x0, x629, x653);
- uint64_t x692, uint8_t x693 = addcarryx_u64(x690, x632, x671);
- uint64_t x695, uint8_t x696 = addcarryx_u64(x693, x635, x674);
- uint64_t x698, uint8_t x699 = addcarryx_u64(x696, x638, x677);
- uint64_t x701, uint8_t x702 = addcarryx_u64(x699, x641, x680);
- uint64_t x704, uint8_t x705 = addcarryx_u64(x702, x644, x683);
- uint64_t x707, uint8_t x708 = addcarryx_u64(x705, x647, x686);
- uint8_t x709 = (x708 + x648);
- uint64_t x711, uint8_t x712 = subborrow_u64(0x0, x692, 0xffffffffffffffefL);
- uint64_t x714, uint8_t x715 = subborrow_u64(x712, x695, 0xffffffffffffffffL);
- uint64_t x717, uint8_t x718 = subborrow_u64(x715, x698, 0xffffffffffffffffL);
- uint64_t x720, uint8_t x721 = subborrow_u64(x718, x701, 0xffffffffffffffffL);
- uint64_t x723, uint8_t x724 = subborrow_u64(x721, x704, 0xffffffffffffffffL);
- uint64_t x726, uint8_t x727 = subborrow_u64(x724, x707, 0xffff);
- uint64_t _, uint8_t x730 = subborrow_u64(x727, x709, 0x0);
- uint64_t x731 = cmovznz64(x730, x726, x707);
- uint64_t x732 = cmovznz64(x730, x723, x704);
- uint64_t x733 = cmovznz64(x730, x720, x701);
- uint64_t x734 = cmovznz64(x730, x717, x698);
- uint64_t x735 = cmovznz64(x730, x714, x695);
- uint64_t x736 = cmovznz64(x730, x711, x692);
- return (x731, x732, x733, x734, x735, x736))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e336m17_6limbs/femulDisplay.v b/src/Specific/montgomery64_2e336m17_6limbs/femulDisplay.v
deleted file mode 100644
index 7d4aa4e50..000000000
--- a/src/Specific/montgomery64_2e336m17_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e336m17_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e336m17_6limbs/fenz.c b/src/Specific/montgomery64_2e336m17_6limbs/fenz.c
deleted file mode 100644
index c93f74257..000000000
--- a/src/Specific/montgomery64_2e336m17_6limbs/fenz.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x11 = (x10 | x9);
- { uint64_t x12 = (x8 | x11);
- { uint64_t x13 = (x6 | x12);
- { uint64_t x14 = (x4 | x13);
- { uint64_t x15 = (x2 | x14);
- out[0] = x15;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e336m17_6limbs/fenz.v b/src/Specific/montgomery64_2e336m17_6limbs/fenz.v
deleted file mode 100644
index e1bfc11d7..000000000
--- a/src/Specific/montgomery64_2e336m17_6limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e336m17_6limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e336m17_6limbs/fenzDisplay.log b/src/Specific/montgomery64_2e336m17_6limbs/fenzDisplay.log
deleted file mode 100644
index f39f1d91b..000000000
--- a/src/Specific/montgomery64_2e336m17_6limbs/fenzDisplay.log
+++ /dev/null
@@ -1,12 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x11 = (x10 | x9);
- uint64_t x12 = (x8 | x11);
- uint64_t x13 = (x6 | x12);
- uint64_t x14 = (x4 | x13);
- uint64_t x15 = (x2 | x14);
- return x15)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e336m17_6limbs/fenzDisplay.v b/src/Specific/montgomery64_2e336m17_6limbs/fenzDisplay.v
deleted file mode 100644
index 1fa6d318c..000000000
--- a/src/Specific/montgomery64_2e336m17_6limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e336m17_6limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e336m17_6limbs/feopp.c b/src/Specific/montgomery64_2e336m17_6limbs/feopp.c
deleted file mode 100644
index c3255daf6..000000000
--- a/src/Specific/montgomery64_2e336m17_6limbs/feopp.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feopp(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12; uint8_t x13 = _subborrow_u64(0x0, 0x0, x2, &x12);
- { uint64_t x15; uint8_t x16 = _subborrow_u64(x13, 0x0, x4, &x15);
- { uint64_t x18; uint8_t x19 = _subborrow_u64(x16, 0x0, x6, &x18);
- { uint64_t x21; uint8_t x22 = _subborrow_u64(x19, 0x0, x8, &x21);
- { uint64_t x24; uint8_t x25 = _subborrow_u64(x22, 0x0, x10, &x24);
- { uint64_t x27; uint8_t x28 = _subborrow_u64(x25, 0x0, x9, &x27);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0xffffffffffffffefL);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(0x0, x12, x30, &x32);
- { uint64_t x34 = (x29 & 0xffffffffffffffffL);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x33, x15, x34, &x36);
- { uint64_t x38 = (x29 & 0xffffffffffffffffL);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x37, x18, x38, &x40);
- { uint64_t x42 = (x29 & 0xffffffffffffffffL);
- { uint64_t x44; uint8_t x45 = _addcarryx_u64(x41, x21, x42, &x44);
- { uint64_t x46 = (x29 & 0xffffffffffffffffL);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x45, x24, x46, &x48);
- { uint64_t x50 = (x29 & 0xffff);
- { uint64_t x52; uint8_t _ = _addcarryx_u64(x49, x27, x50, &x52);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e336m17_6limbs/feopp.v b/src/Specific/montgomery64_2e336m17_6limbs/feopp.v
deleted file mode 100644
index 14bfc46d8..000000000
--- a/src/Specific/montgomery64_2e336m17_6limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e336m17_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e336m17_6limbs/feoppDisplay.log b/src/Specific/montgomery64_2e336m17_6limbs/feoppDisplay.log
deleted file mode 100644
index 272ed2bf5..000000000
--- a/src/Specific/montgomery64_2e336m17_6limbs/feoppDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x15, uint8_t x16 = subborrow_u64(x13, 0x0, x4);
- uint64_t x18, uint8_t x19 = subborrow_u64(x16, 0x0, x6);
- uint64_t x21, uint8_t x22 = subborrow_u64(x19, 0x0, x8);
- uint64_t x24, uint8_t x25 = subborrow_u64(x22, 0x0, x10);
- uint64_t x27, uint8_t x28 = subborrow_u64(x25, 0x0, x9);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0xffffffffffffffefL);
- uint64_t x32, uint8_t x33 = addcarryx_u64(0x0, x12, x30);
- uint64_t x34 = (x29 & 0xffffffffffffffffL);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x33, x15, x34);
- uint64_t x38 = (x29 & 0xffffffffffffffffL);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x37, x18, x38);
- uint64_t x42 = (x29 & 0xffffffffffffffffL);
- uint64_t x44, uint8_t x45 = addcarryx_u64(x41, x21, x42);
- uint64_t x46 = (x29 & 0xffffffffffffffffL);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x45, x24, x46);
- uint64_t x50 = (x29 & 0xffff);
- uint64_t x52, uint8_t _ = addcarryx_u64(x49, x27, x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e336m17_6limbs/feoppDisplay.v b/src/Specific/montgomery64_2e336m17_6limbs/feoppDisplay.v
deleted file mode 100644
index 2bb2ab58d..000000000
--- a/src/Specific/montgomery64_2e336m17_6limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e336m17_6limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e336m17_6limbs/fesquare.c b/src/Specific/montgomery64_2e336m17_6limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e336m17_6limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e336m17_6limbs/fesub.c b/src/Specific/montgomery64_2e336m17_6limbs/fesub.c
deleted file mode 100644
index a0b2a3273..000000000
--- a/src/Specific/montgomery64_2e336m17_6limbs/fesub.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _subborrow_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _subborrow_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _subborrow_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _subborrow_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _subborrow_u64(x38, x12, x22, &x40);
- { uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- { uint64_t x43 = (x42 & 0xffffffffffffffefL);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(0x0, x25, x43, &x45);
- { uint64_t x47 = (x42 & 0xffffffffffffffffL);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x46, x28, x47, &x49);
- { uint64_t x51 = (x42 & 0xffffffffffffffffL);
- { uint64_t x53; uint8_t x54 = _addcarryx_u64(x50, x31, x51, &x53);
- { uint64_t x55 = (x42 & 0xffffffffffffffffL);
- { uint64_t x57; uint8_t x58 = _addcarryx_u64(x54, x34, x55, &x57);
- { uint64_t x59 = (x42 & 0xffffffffffffffffL);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x58, x37, x59, &x61);
- { uint64_t x63 = (x42 & 0xffff);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(x62, x40, x63, &x65);
- out[0] = x45;
- out[1] = x49;
- out[2] = x53;
- out[3] = x57;
- out[4] = x61;
- out[5] = x65;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e336m17_6limbs/fesub.v b/src/Specific/montgomery64_2e336m17_6limbs/fesub.v
deleted file mode 100644
index 3407b2615..000000000
--- a/src/Specific/montgomery64_2e336m17_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e336m17_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e336m17_6limbs/fesubDisplay.log b/src/Specific/montgomery64_2e336m17_6limbs/fesubDisplay.log
deleted file mode 100644
index 1c36f7753..000000000
--- a/src/Specific/montgomery64_2e336m17_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = subborrow_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = subborrow_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = subborrow_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = subborrow_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = subborrow_u64(x38, x12, x22);
- uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- uint64_t x43 = (x42 & 0xffffffffffffffefL);
- uint64_t x45, uint8_t x46 = addcarryx_u64(0x0, x25, x43);
- uint64_t x47 = (x42 & 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x46, x28, x47);
- uint64_t x51 = (x42 & 0xffffffffffffffffL);
- uint64_t x53, uint8_t x54 = addcarryx_u64(x50, x31, x51);
- uint64_t x55 = (x42 & 0xffffffffffffffffL);
- uint64_t x57, uint8_t x58 = addcarryx_u64(x54, x34, x55);
- uint64_t x59 = (x42 & 0xffffffffffffffffL);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x58, x37, x59);
- uint64_t x63 = (x42 & 0xffff);
- uint64_t x65, uint8_t _ = addcarryx_u64(x62, x40, x63);
- (Return x65, Return x61, Return x57, Return x53, Return x49, Return x45))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e336m17_6limbs/fesubDisplay.v b/src/Specific/montgomery64_2e336m17_6limbs/fesubDisplay.v
deleted file mode 100644
index d568858aa..000000000
--- a/src/Specific/montgomery64_2e336m17_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e336m17_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e336m17_6limbs/py_interpreter.sh b/src/Specific/montgomery64_2e336m17_6limbs/py_interpreter.sh
deleted file mode 100755
index 553c015ba..000000000
--- a/src/Specific/montgomery64_2e336m17_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**336 - 17' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e336m3_6limbs/CurveParameters.v b/src/Specific/montgomery64_2e336m3_6limbs/CurveParameters.v
deleted file mode 100644
index eb90a6f99..000000000
--- a/src/Specific/montgomery64_2e336m3_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^336 - 3
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 64;
- bitwidth := 64;
- s := 2^336;
- c := [(1, 3)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e336m3_6limbs/Synthesis.v b/src/Specific/montgomery64_2e336m3_6limbs/Synthesis.v
deleted file mode 100644
index a006a946a..000000000
--- a/src/Specific/montgomery64_2e336m3_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e336m3_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/montgomery64_2e336m3_6limbs/compiler.sh b/src/Specific/montgomery64_2e336m3_6limbs/compiler.sh
deleted file mode 100755
index 10100a3cd..000000000
--- a/src/Specific/montgomery64_2e336m3_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<336) - 3' "$@"
diff --git a/src/Specific/montgomery64_2e336m3_6limbs/compilerxx.sh b/src/Specific/montgomery64_2e336m3_6limbs/compilerxx.sh
deleted file mode 100755
index 7243088ea..000000000
--- a/src/Specific/montgomery64_2e336m3_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<336) - 3' "$@"
diff --git a/src/Specific/montgomery64_2e336m3_6limbs/feadd.c b/src/Specific/montgomery64_2e336m3_6limbs/feadd.c
deleted file mode 100644
index f9e5f21b7..000000000
--- a/src/Specific/montgomery64_2e336m3_6limbs/feadd.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _addcarryx_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _addcarryx_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x38, x12, x22, &x40);
- { uint64_t x43; uint8_t x44 = _subborrow_u64(0x0, x25, 0xfffffffffffffffdL, &x43);
- { uint64_t x46; uint8_t x47 = _subborrow_u64(x44, x28, 0xffffffffffffffffL, &x46);
- { uint64_t x49; uint8_t x50 = _subborrow_u64(x47, x31, 0xffffffffffffffffL, &x49);
- { uint64_t x52; uint8_t x53 = _subborrow_u64(x50, x34, 0xffffffffffffffffL, &x52);
- { uint64_t x55; uint8_t x56 = _subborrow_u64(x53, x37, 0xffffffffffffffffL, &x55);
- { uint64_t x58; uint8_t x59 = _subborrow_u64(x56, x40, 0xffff, &x58);
- { uint64_t _; uint8_t x62 = _subborrow_u64(x59, x41, 0x0, &_);
- { uint64_t x63 = cmovznz64(x62, x58, x40);
- { uint64_t x64 = cmovznz64(x62, x55, x37);
- { uint64_t x65 = cmovznz64(x62, x52, x34);
- { uint64_t x66 = cmovznz64(x62, x49, x31);
- { uint64_t x67 = cmovznz64(x62, x46, x28);
- { uint64_t x68 = cmovznz64(x62, x43, x25);
- out[0] = x68;
- out[1] = x67;
- out[2] = x66;
- out[3] = x65;
- out[4] = x64;
- out[5] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e336m3_6limbs/feadd.v b/src/Specific/montgomery64_2e336m3_6limbs/feadd.v
deleted file mode 100644
index 9d646bae3..000000000
--- a/src/Specific/montgomery64_2e336m3_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e336m3_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e336m3_6limbs/feaddDisplay.log b/src/Specific/montgomery64_2e336m3_6limbs/feaddDisplay.log
deleted file mode 100644
index bba653e9a..000000000
--- a/src/Specific/montgomery64_2e336m3_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = addcarryx_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = addcarryx_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = addcarryx_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = addcarryx_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x38, x12, x22);
- uint64_t x43, uint8_t x44 = subborrow_u64(0x0, x25, 0xfffffffffffffffdL);
- uint64_t x46, uint8_t x47 = subborrow_u64(x44, x28, 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = subborrow_u64(x47, x31, 0xffffffffffffffffL);
- uint64_t x52, uint8_t x53 = subborrow_u64(x50, x34, 0xffffffffffffffffL);
- uint64_t x55, uint8_t x56 = subborrow_u64(x53, x37, 0xffffffffffffffffL);
- uint64_t x58, uint8_t x59 = subborrow_u64(x56, x40, 0xffff);
- uint64_t _, uint8_t x62 = subborrow_u64(x59, x41, 0x0);
- uint64_t x63 = cmovznz64(x62, x58, x40);
- uint64_t x64 = cmovznz64(x62, x55, x37);
- uint64_t x65 = cmovznz64(x62, x52, x34);
- uint64_t x66 = cmovznz64(x62, x49, x31);
- uint64_t x67 = cmovznz64(x62, x46, x28);
- uint64_t x68 = cmovznz64(x62, x43, x25);
- return (x63, x64, x65, x66, x67, x68))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e336m3_6limbs/feaddDisplay.v b/src/Specific/montgomery64_2e336m3_6limbs/feaddDisplay.v
deleted file mode 100644
index c52f98147..000000000
--- a/src/Specific/montgomery64_2e336m3_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e336m3_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e336m3_6limbs/femul.c b/src/Specific/montgomery64_2e336m3_6limbs/femul.c
deleted file mode 100644
index ef7679b78..000000000
--- a/src/Specific/montgomery64_2e336m3_6limbs/femul.c
+++ /dev/null
@@ -1,266 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x26; uint64_t x25 = _mulx_u64(x5, x15, &x26);
- { uint64_t x29; uint64_t x28 = _mulx_u64(x5, x17, &x29);
- { uint64_t x32; uint64_t x31 = _mulx_u64(x5, x19, &x32);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x5, x21, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x5, x23, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x5, x22, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x26, x28, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x29, x31, &x46);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x47, x32, x34, &x49);
- { uint64_t x52; uint8_t x53 = _addcarryx_u64(x50, x35, x37, &x52);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x38, x40, &x55);
- { uint64_t x58; uint8_t _ = _addcarryx_u64(0x0, x56, x41, &x58);
- { uint64_t _; uint64_t x61 = _mulx_u64(x25, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x61, 0xfffffffffffffffdL, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x61, 0xffffffffffffffffL, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x61, 0xffffffffffffffffL, &x71);
- { uint64_t x74; uint64_t x73 = _mulx_u64(x61, 0xffffffffffffffffL, &x74);
- { uint64_t x77; uint64_t x76 = _mulx_u64(x61, 0xffffffffffffffffL, &x77);
- { uint64_t x80; uint64_t x79 = _mulx_u64(x61, 0xffff, &x80);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x65, x67, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x68, x70, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x71, x73, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x74, x76, &x91);
- { uint64_t x94; uint8_t x95 = _addcarryx_u64(x92, x77, x79, &x94);
- { uint64_t x97; uint8_t _ = _addcarryx_u64(0x0, x95, x80, &x97);
- { uint64_t _; uint8_t x101 = _addcarryx_u64(0x0, x25, x64, &_);
- { uint64_t x103; uint8_t x104 = _addcarryx_u64(x101, x43, x82, &x103);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(x104, x46, x85, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x49, x88, &x109);
- { uint64_t x112; uint8_t x113 = _addcarryx_u64(x110, x52, x91, &x112);
- { uint64_t x115; uint8_t x116 = _addcarryx_u64(x113, x55, x94, &x115);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x58, x97, &x118);
- { uint64_t x122; uint64_t x121 = _mulx_u64(x7, x15, &x122);
- { uint64_t x125; uint64_t x124 = _mulx_u64(x7, x17, &x125);
- { uint64_t x128; uint64_t x127 = _mulx_u64(x7, x19, &x128);
- { uint64_t x131; uint64_t x130 = _mulx_u64(x7, x21, &x131);
- { uint64_t x134; uint64_t x133 = _mulx_u64(x7, x23, &x134);
- { uint64_t x137; uint64_t x136 = _mulx_u64(x7, x22, &x137);
- { uint64_t x139; uint8_t x140 = _addcarryx_u64(0x0, x122, x124, &x139);
- { uint64_t x142; uint8_t x143 = _addcarryx_u64(x140, x125, x127, &x142);
- { uint64_t x145; uint8_t x146 = _addcarryx_u64(x143, x128, x130, &x145);
- { uint64_t x148; uint8_t x149 = _addcarryx_u64(x146, x131, x133, &x148);
- { uint64_t x151; uint8_t x152 = _addcarryx_u64(x149, x134, x136, &x151);
- { uint64_t x154; uint8_t _ = _addcarryx_u64(0x0, x152, x137, &x154);
- { uint64_t x157; uint8_t x158 = _addcarryx_u64(0x0, x103, x121, &x157);
- { uint64_t x160; uint8_t x161 = _addcarryx_u64(x158, x106, x139, &x160);
- { uint64_t x163; uint8_t x164 = _addcarryx_u64(x161, x109, x142, &x163);
- { uint64_t x166; uint8_t x167 = _addcarryx_u64(x164, x112, x145, &x166);
- { uint64_t x169; uint8_t x170 = _addcarryx_u64(x167, x115, x148, &x169);
- { uint64_t x172; uint8_t x173 = _addcarryx_u64(x170, x118, x151, &x172);
- { uint64_t x175; uint8_t x176 = _addcarryx_u64(x173, x119, x154, &x175);
- { uint64_t _; uint64_t x178 = _mulx_u64(x157, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x182; uint64_t x181 = _mulx_u64(x178, 0xfffffffffffffffdL, &x182);
- { uint64_t x185; uint64_t x184 = _mulx_u64(x178, 0xffffffffffffffffL, &x185);
- { uint64_t x188; uint64_t x187 = _mulx_u64(x178, 0xffffffffffffffffL, &x188);
- { uint64_t x191; uint64_t x190 = _mulx_u64(x178, 0xffffffffffffffffL, &x191);
- { uint64_t x194; uint64_t x193 = _mulx_u64(x178, 0xffffffffffffffffL, &x194);
- { uint64_t x197; uint64_t x196 = _mulx_u64(x178, 0xffff, &x197);
- { uint64_t x199; uint8_t x200 = _addcarryx_u64(0x0, x182, x184, &x199);
- { uint64_t x202; uint8_t x203 = _addcarryx_u64(x200, x185, x187, &x202);
- { uint64_t x205; uint8_t x206 = _addcarryx_u64(x203, x188, x190, &x205);
- { uint64_t x208; uint8_t x209 = _addcarryx_u64(x206, x191, x193, &x208);
- { uint64_t x211; uint8_t x212 = _addcarryx_u64(x209, x194, x196, &x211);
- { uint64_t x214; uint8_t _ = _addcarryx_u64(0x0, x212, x197, &x214);
- { uint64_t _; uint8_t x218 = _addcarryx_u64(0x0, x157, x181, &_);
- { uint64_t x220; uint8_t x221 = _addcarryx_u64(x218, x160, x199, &x220);
- { uint64_t x223; uint8_t x224 = _addcarryx_u64(x221, x163, x202, &x223);
- { uint64_t x226; uint8_t x227 = _addcarryx_u64(x224, x166, x205, &x226);
- { uint64_t x229; uint8_t x230 = _addcarryx_u64(x227, x169, x208, &x229);
- { uint64_t x232; uint8_t x233 = _addcarryx_u64(x230, x172, x211, &x232);
- { uint64_t x235; uint8_t x236 = _addcarryx_u64(x233, x175, x214, &x235);
- { uint8_t x237 = (x236 + x176);
- { uint64_t x240; uint64_t x239 = _mulx_u64(x9, x15, &x240);
- { uint64_t x243; uint64_t x242 = _mulx_u64(x9, x17, &x243);
- { uint64_t x246; uint64_t x245 = _mulx_u64(x9, x19, &x246);
- { uint64_t x249; uint64_t x248 = _mulx_u64(x9, x21, &x249);
- { uint64_t x252; uint64_t x251 = _mulx_u64(x9, x23, &x252);
- { uint64_t x255; uint64_t x254 = _mulx_u64(x9, x22, &x255);
- { uint64_t x257; uint8_t x258 = _addcarryx_u64(0x0, x240, x242, &x257);
- { uint64_t x260; uint8_t x261 = _addcarryx_u64(x258, x243, x245, &x260);
- { uint64_t x263; uint8_t x264 = _addcarryx_u64(x261, x246, x248, &x263);
- { uint64_t x266; uint8_t x267 = _addcarryx_u64(x264, x249, x251, &x266);
- { uint64_t x269; uint8_t x270 = _addcarryx_u64(x267, x252, x254, &x269);
- { uint64_t x272; uint8_t _ = _addcarryx_u64(0x0, x270, x255, &x272);
- { uint64_t x275; uint8_t x276 = _addcarryx_u64(0x0, x220, x239, &x275);
- { uint64_t x278; uint8_t x279 = _addcarryx_u64(x276, x223, x257, &x278);
- { uint64_t x281; uint8_t x282 = _addcarryx_u64(x279, x226, x260, &x281);
- { uint64_t x284; uint8_t x285 = _addcarryx_u64(x282, x229, x263, &x284);
- { uint64_t x287; uint8_t x288 = _addcarryx_u64(x285, x232, x266, &x287);
- { uint64_t x290; uint8_t x291 = _addcarryx_u64(x288, x235, x269, &x290);
- { uint64_t x293; uint8_t x294 = _addcarryx_u64(x291, x237, x272, &x293);
- { uint64_t _; uint64_t x296 = _mulx_u64(x275, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x300; uint64_t x299 = _mulx_u64(x296, 0xfffffffffffffffdL, &x300);
- { uint64_t x303; uint64_t x302 = _mulx_u64(x296, 0xffffffffffffffffL, &x303);
- { uint64_t x306; uint64_t x305 = _mulx_u64(x296, 0xffffffffffffffffL, &x306);
- { uint64_t x309; uint64_t x308 = _mulx_u64(x296, 0xffffffffffffffffL, &x309);
- { uint64_t x312; uint64_t x311 = _mulx_u64(x296, 0xffffffffffffffffL, &x312);
- { uint64_t x315; uint64_t x314 = _mulx_u64(x296, 0xffff, &x315);
- { uint64_t x317; uint8_t x318 = _addcarryx_u64(0x0, x300, x302, &x317);
- { uint64_t x320; uint8_t x321 = _addcarryx_u64(x318, x303, x305, &x320);
- { uint64_t x323; uint8_t x324 = _addcarryx_u64(x321, x306, x308, &x323);
- { uint64_t x326; uint8_t x327 = _addcarryx_u64(x324, x309, x311, &x326);
- { uint64_t x329; uint8_t x330 = _addcarryx_u64(x327, x312, x314, &x329);
- { uint64_t x332; uint8_t _ = _addcarryx_u64(0x0, x330, x315, &x332);
- { uint64_t _; uint8_t x336 = _addcarryx_u64(0x0, x275, x299, &_);
- { uint64_t x338; uint8_t x339 = _addcarryx_u64(x336, x278, x317, &x338);
- { uint64_t x341; uint8_t x342 = _addcarryx_u64(x339, x281, x320, &x341);
- { uint64_t x344; uint8_t x345 = _addcarryx_u64(x342, x284, x323, &x344);
- { uint64_t x347; uint8_t x348 = _addcarryx_u64(x345, x287, x326, &x347);
- { uint64_t x350; uint8_t x351 = _addcarryx_u64(x348, x290, x329, &x350);
- { uint64_t x353; uint8_t x354 = _addcarryx_u64(x351, x293, x332, &x353);
- { uint8_t x355 = (x354 + x294);
- { uint64_t x358; uint64_t x357 = _mulx_u64(x11, x15, &x358);
- { uint64_t x361; uint64_t x360 = _mulx_u64(x11, x17, &x361);
- { uint64_t x364; uint64_t x363 = _mulx_u64(x11, x19, &x364);
- { uint64_t x367; uint64_t x366 = _mulx_u64(x11, x21, &x367);
- { uint64_t x370; uint64_t x369 = _mulx_u64(x11, x23, &x370);
- { uint64_t x373; uint64_t x372 = _mulx_u64(x11, x22, &x373);
- { uint64_t x375; uint8_t x376 = _addcarryx_u64(0x0, x358, x360, &x375);
- { uint64_t x378; uint8_t x379 = _addcarryx_u64(x376, x361, x363, &x378);
- { uint64_t x381; uint8_t x382 = _addcarryx_u64(x379, x364, x366, &x381);
- { uint64_t x384; uint8_t x385 = _addcarryx_u64(x382, x367, x369, &x384);
- { uint64_t x387; uint8_t x388 = _addcarryx_u64(x385, x370, x372, &x387);
- { uint64_t x390; uint8_t _ = _addcarryx_u64(0x0, x388, x373, &x390);
- { uint64_t x393; uint8_t x394 = _addcarryx_u64(0x0, x338, x357, &x393);
- { uint64_t x396; uint8_t x397 = _addcarryx_u64(x394, x341, x375, &x396);
- { uint64_t x399; uint8_t x400 = _addcarryx_u64(x397, x344, x378, &x399);
- { uint64_t x402; uint8_t x403 = _addcarryx_u64(x400, x347, x381, &x402);
- { uint64_t x405; uint8_t x406 = _addcarryx_u64(x403, x350, x384, &x405);
- { uint64_t x408; uint8_t x409 = _addcarryx_u64(x406, x353, x387, &x408);
- { uint64_t x411; uint8_t x412 = _addcarryx_u64(x409, x355, x390, &x411);
- { uint64_t _; uint64_t x414 = _mulx_u64(x393, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x418; uint64_t x417 = _mulx_u64(x414, 0xfffffffffffffffdL, &x418);
- { uint64_t x421; uint64_t x420 = _mulx_u64(x414, 0xffffffffffffffffL, &x421);
- { uint64_t x424; uint64_t x423 = _mulx_u64(x414, 0xffffffffffffffffL, &x424);
- { uint64_t x427; uint64_t x426 = _mulx_u64(x414, 0xffffffffffffffffL, &x427);
- { uint64_t x430; uint64_t x429 = _mulx_u64(x414, 0xffffffffffffffffL, &x430);
- { uint64_t x433; uint64_t x432 = _mulx_u64(x414, 0xffff, &x433);
- { uint64_t x435; uint8_t x436 = _addcarryx_u64(0x0, x418, x420, &x435);
- { uint64_t x438; uint8_t x439 = _addcarryx_u64(x436, x421, x423, &x438);
- { uint64_t x441; uint8_t x442 = _addcarryx_u64(x439, x424, x426, &x441);
- { uint64_t x444; uint8_t x445 = _addcarryx_u64(x442, x427, x429, &x444);
- { uint64_t x447; uint8_t x448 = _addcarryx_u64(x445, x430, x432, &x447);
- { uint64_t x450; uint8_t _ = _addcarryx_u64(0x0, x448, x433, &x450);
- { uint64_t _; uint8_t x454 = _addcarryx_u64(0x0, x393, x417, &_);
- { uint64_t x456; uint8_t x457 = _addcarryx_u64(x454, x396, x435, &x456);
- { uint64_t x459; uint8_t x460 = _addcarryx_u64(x457, x399, x438, &x459);
- { uint64_t x462; uint8_t x463 = _addcarryx_u64(x460, x402, x441, &x462);
- { uint64_t x465; uint8_t x466 = _addcarryx_u64(x463, x405, x444, &x465);
- { uint64_t x468; uint8_t x469 = _addcarryx_u64(x466, x408, x447, &x468);
- { uint64_t x471; uint8_t x472 = _addcarryx_u64(x469, x411, x450, &x471);
- { uint8_t x473 = (x472 + x412);
- { uint64_t x476; uint64_t x475 = _mulx_u64(x13, x15, &x476);
- { uint64_t x479; uint64_t x478 = _mulx_u64(x13, x17, &x479);
- { uint64_t x482; uint64_t x481 = _mulx_u64(x13, x19, &x482);
- { uint64_t x485; uint64_t x484 = _mulx_u64(x13, x21, &x485);
- { uint64_t x488; uint64_t x487 = _mulx_u64(x13, x23, &x488);
- { uint64_t x491; uint64_t x490 = _mulx_u64(x13, x22, &x491);
- { uint64_t x493; uint8_t x494 = _addcarryx_u64(0x0, x476, x478, &x493);
- { uint64_t x496; uint8_t x497 = _addcarryx_u64(x494, x479, x481, &x496);
- { uint64_t x499; uint8_t x500 = _addcarryx_u64(x497, x482, x484, &x499);
- { uint64_t x502; uint8_t x503 = _addcarryx_u64(x500, x485, x487, &x502);
- { uint64_t x505; uint8_t x506 = _addcarryx_u64(x503, x488, x490, &x505);
- { uint64_t x508; uint8_t _ = _addcarryx_u64(0x0, x506, x491, &x508);
- { uint64_t x511; uint8_t x512 = _addcarryx_u64(0x0, x456, x475, &x511);
- { uint64_t x514; uint8_t x515 = _addcarryx_u64(x512, x459, x493, &x514);
- { uint64_t x517; uint8_t x518 = _addcarryx_u64(x515, x462, x496, &x517);
- { uint64_t x520; uint8_t x521 = _addcarryx_u64(x518, x465, x499, &x520);
- { uint64_t x523; uint8_t x524 = _addcarryx_u64(x521, x468, x502, &x523);
- { uint64_t x526; uint8_t x527 = _addcarryx_u64(x524, x471, x505, &x526);
- { uint64_t x529; uint8_t x530 = _addcarryx_u64(x527, x473, x508, &x529);
- { uint64_t _; uint64_t x532 = _mulx_u64(x511, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x536; uint64_t x535 = _mulx_u64(x532, 0xfffffffffffffffdL, &x536);
- { uint64_t x539; uint64_t x538 = _mulx_u64(x532, 0xffffffffffffffffL, &x539);
- { uint64_t x542; uint64_t x541 = _mulx_u64(x532, 0xffffffffffffffffL, &x542);
- { uint64_t x545; uint64_t x544 = _mulx_u64(x532, 0xffffffffffffffffL, &x545);
- { uint64_t x548; uint64_t x547 = _mulx_u64(x532, 0xffffffffffffffffL, &x548);
- { uint64_t x551; uint64_t x550 = _mulx_u64(x532, 0xffff, &x551);
- { uint64_t x553; uint8_t x554 = _addcarryx_u64(0x0, x536, x538, &x553);
- { uint64_t x556; uint8_t x557 = _addcarryx_u64(x554, x539, x541, &x556);
- { uint64_t x559; uint8_t x560 = _addcarryx_u64(x557, x542, x544, &x559);
- { uint64_t x562; uint8_t x563 = _addcarryx_u64(x560, x545, x547, &x562);
- { uint64_t x565; uint8_t x566 = _addcarryx_u64(x563, x548, x550, &x565);
- { uint64_t x568; uint8_t _ = _addcarryx_u64(0x0, x566, x551, &x568);
- { uint64_t _; uint8_t x572 = _addcarryx_u64(0x0, x511, x535, &_);
- { uint64_t x574; uint8_t x575 = _addcarryx_u64(x572, x514, x553, &x574);
- { uint64_t x577; uint8_t x578 = _addcarryx_u64(x575, x517, x556, &x577);
- { uint64_t x580; uint8_t x581 = _addcarryx_u64(x578, x520, x559, &x580);
- { uint64_t x583; uint8_t x584 = _addcarryx_u64(x581, x523, x562, &x583);
- { uint64_t x586; uint8_t x587 = _addcarryx_u64(x584, x526, x565, &x586);
- { uint64_t x589; uint8_t x590 = _addcarryx_u64(x587, x529, x568, &x589);
- { uint8_t x591 = (x590 + x530);
- { uint64_t x594; uint64_t x593 = _mulx_u64(x12, x15, &x594);
- { uint64_t x597; uint64_t x596 = _mulx_u64(x12, x17, &x597);
- { uint64_t x600; uint64_t x599 = _mulx_u64(x12, x19, &x600);
- { uint64_t x603; uint64_t x602 = _mulx_u64(x12, x21, &x603);
- { uint64_t x606; uint64_t x605 = _mulx_u64(x12, x23, &x606);
- { uint64_t x609; uint64_t x608 = _mulx_u64(x12, x22, &x609);
- { uint64_t x611; uint8_t x612 = _addcarryx_u64(0x0, x594, x596, &x611);
- { uint64_t x614; uint8_t x615 = _addcarryx_u64(x612, x597, x599, &x614);
- { uint64_t x617; uint8_t x618 = _addcarryx_u64(x615, x600, x602, &x617);
- { uint64_t x620; uint8_t x621 = _addcarryx_u64(x618, x603, x605, &x620);
- { uint64_t x623; uint8_t x624 = _addcarryx_u64(x621, x606, x608, &x623);
- { uint64_t x626; uint8_t _ = _addcarryx_u64(0x0, x624, x609, &x626);
- { uint64_t x629; uint8_t x630 = _addcarryx_u64(0x0, x574, x593, &x629);
- { uint64_t x632; uint8_t x633 = _addcarryx_u64(x630, x577, x611, &x632);
- { uint64_t x635; uint8_t x636 = _addcarryx_u64(x633, x580, x614, &x635);
- { uint64_t x638; uint8_t x639 = _addcarryx_u64(x636, x583, x617, &x638);
- { uint64_t x641; uint8_t x642 = _addcarryx_u64(x639, x586, x620, &x641);
- { uint64_t x644; uint8_t x645 = _addcarryx_u64(x642, x589, x623, &x644);
- { uint64_t x647; uint8_t x648 = _addcarryx_u64(x645, x591, x626, &x647);
- { uint64_t _; uint64_t x650 = _mulx_u64(x629, 0xaaaaaaaaaaaaaaabL, &_);
- { uint64_t x654; uint64_t x653 = _mulx_u64(x650, 0xfffffffffffffffdL, &x654);
- { uint64_t x657; uint64_t x656 = _mulx_u64(x650, 0xffffffffffffffffL, &x657);
- { uint64_t x660; uint64_t x659 = _mulx_u64(x650, 0xffffffffffffffffL, &x660);
- { uint64_t x663; uint64_t x662 = _mulx_u64(x650, 0xffffffffffffffffL, &x663);
- { uint64_t x666; uint64_t x665 = _mulx_u64(x650, 0xffffffffffffffffL, &x666);
- { uint64_t x669; uint64_t x668 = _mulx_u64(x650, 0xffff, &x669);
- { uint64_t x671; uint8_t x672 = _addcarryx_u64(0x0, x654, x656, &x671);
- { uint64_t x674; uint8_t x675 = _addcarryx_u64(x672, x657, x659, &x674);
- { uint64_t x677; uint8_t x678 = _addcarryx_u64(x675, x660, x662, &x677);
- { uint64_t x680; uint8_t x681 = _addcarryx_u64(x678, x663, x665, &x680);
- { uint64_t x683; uint8_t x684 = _addcarryx_u64(x681, x666, x668, &x683);
- { uint64_t x686; uint8_t _ = _addcarryx_u64(0x0, x684, x669, &x686);
- { uint64_t _; uint8_t x690 = _addcarryx_u64(0x0, x629, x653, &_);
- { uint64_t x692; uint8_t x693 = _addcarryx_u64(x690, x632, x671, &x692);
- { uint64_t x695; uint8_t x696 = _addcarryx_u64(x693, x635, x674, &x695);
- { uint64_t x698; uint8_t x699 = _addcarryx_u64(x696, x638, x677, &x698);
- { uint64_t x701; uint8_t x702 = _addcarryx_u64(x699, x641, x680, &x701);
- { uint64_t x704; uint8_t x705 = _addcarryx_u64(x702, x644, x683, &x704);
- { uint64_t x707; uint8_t x708 = _addcarryx_u64(x705, x647, x686, &x707);
- { uint8_t x709 = (x708 + x648);
- { uint64_t x711; uint8_t x712 = _subborrow_u64(0x0, x692, 0xfffffffffffffffdL, &x711);
- { uint64_t x714; uint8_t x715 = _subborrow_u64(x712, x695, 0xffffffffffffffffL, &x714);
- { uint64_t x717; uint8_t x718 = _subborrow_u64(x715, x698, 0xffffffffffffffffL, &x717);
- { uint64_t x720; uint8_t x721 = _subborrow_u64(x718, x701, 0xffffffffffffffffL, &x720);
- { uint64_t x723; uint8_t x724 = _subborrow_u64(x721, x704, 0xffffffffffffffffL, &x723);
- { uint64_t x726; uint8_t x727 = _subborrow_u64(x724, x707, 0xffff, &x726);
- { uint64_t _; uint8_t x730 = _subborrow_u64(x727, x709, 0x0, &_);
- { uint64_t x731 = cmovznz64(x730, x726, x707);
- { uint64_t x732 = cmovznz64(x730, x723, x704);
- { uint64_t x733 = cmovznz64(x730, x720, x701);
- { uint64_t x734 = cmovznz64(x730, x717, x698);
- { uint64_t x735 = cmovznz64(x730, x714, x695);
- { uint64_t x736 = cmovznz64(x730, x711, x692);
- out[0] = x736;
- out[1] = x735;
- out[2] = x734;
- out[3] = x733;
- out[4] = x732;
- out[5] = x731;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e336m3_6limbs/femul.v b/src/Specific/montgomery64_2e336m3_6limbs/femul.v
deleted file mode 100644
index 2d87f54f2..000000000
--- a/src/Specific/montgomery64_2e336m3_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e336m3_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e336m3_6limbs/femulDisplay.log b/src/Specific/montgomery64_2e336m3_6limbs/femulDisplay.log
deleted file mode 100644
index 329612ea5..000000000
--- a/src/Specific/montgomery64_2e336m3_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,252 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint64_t x26 = mulx_u64(x5, x15);
- uint64_t x28, uint64_t x29 = mulx_u64(x5, x17);
- uint64_t x31, uint64_t x32 = mulx_u64(x5, x19);
- uint64_t x34, uint64_t x35 = mulx_u64(x5, x21);
- uint64_t x37, uint64_t x38 = mulx_u64(x5, x23);
- uint64_t x40, uint64_t x41 = mulx_u64(x5, x22);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x26, x28);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x29, x31);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x47, x32, x34);
- uint64_t x52, uint8_t x53 = addcarryx_u64(x50, x35, x37);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x38, x40);
- uint64_t x58, uint8_t _ = addcarryx_u64(0x0, x56, x41);
- uint64_t x61, uint64_t _ = mulx_u64(x25, 0xaaaaaaaaaaaaaaabL);
- uint64_t x64, uint64_t x65 = mulx_u64(x61, 0xfffffffffffffffdL);
- uint64_t x67, uint64_t x68 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x70, uint64_t x71 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x73, uint64_t x74 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x76, uint64_t x77 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x79, uint64_t x80 = mulx_u64(x61, 0xffff);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x65, x67);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x68, x70);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x71, x73);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x74, x76);
- uint64_t x94, uint8_t x95 = addcarryx_u64(x92, x77, x79);
- uint64_t x97, uint8_t _ = addcarryx_u64(0x0, x95, x80);
- uint64_t _, uint8_t x101 = addcarryx_u64(0x0, x25, x64);
- uint64_t x103, uint8_t x104 = addcarryx_u64(x101, x43, x82);
- uint64_t x106, uint8_t x107 = addcarryx_u64(x104, x46, x85);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x49, x88);
- uint64_t x112, uint8_t x113 = addcarryx_u64(x110, x52, x91);
- uint64_t x115, uint8_t x116 = addcarryx_u64(x113, x55, x94);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x58, x97);
- uint64_t x121, uint64_t x122 = mulx_u64(x7, x15);
- uint64_t x124, uint64_t x125 = mulx_u64(x7, x17);
- uint64_t x127, uint64_t x128 = mulx_u64(x7, x19);
- uint64_t x130, uint64_t x131 = mulx_u64(x7, x21);
- uint64_t x133, uint64_t x134 = mulx_u64(x7, x23);
- uint64_t x136, uint64_t x137 = mulx_u64(x7, x22);
- uint64_t x139, uint8_t x140 = addcarryx_u64(0x0, x122, x124);
- uint64_t x142, uint8_t x143 = addcarryx_u64(x140, x125, x127);
- uint64_t x145, uint8_t x146 = addcarryx_u64(x143, x128, x130);
- uint64_t x148, uint8_t x149 = addcarryx_u64(x146, x131, x133);
- uint64_t x151, uint8_t x152 = addcarryx_u64(x149, x134, x136);
- uint64_t x154, uint8_t _ = addcarryx_u64(0x0, x152, x137);
- uint64_t x157, uint8_t x158 = addcarryx_u64(0x0, x103, x121);
- uint64_t x160, uint8_t x161 = addcarryx_u64(x158, x106, x139);
- uint64_t x163, uint8_t x164 = addcarryx_u64(x161, x109, x142);
- uint64_t x166, uint8_t x167 = addcarryx_u64(x164, x112, x145);
- uint64_t x169, uint8_t x170 = addcarryx_u64(x167, x115, x148);
- uint64_t x172, uint8_t x173 = addcarryx_u64(x170, x118, x151);
- uint64_t x175, uint8_t x176 = addcarryx_u64(x173, x119, x154);
- uint64_t x178, uint64_t _ = mulx_u64(x157, 0xaaaaaaaaaaaaaaabL);
- uint64_t x181, uint64_t x182 = mulx_u64(x178, 0xfffffffffffffffdL);
- uint64_t x184, uint64_t x185 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x187, uint64_t x188 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x190, uint64_t x191 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x193, uint64_t x194 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x196, uint64_t x197 = mulx_u64(x178, 0xffff);
- uint64_t x199, uint8_t x200 = addcarryx_u64(0x0, x182, x184);
- uint64_t x202, uint8_t x203 = addcarryx_u64(x200, x185, x187);
- uint64_t x205, uint8_t x206 = addcarryx_u64(x203, x188, x190);
- uint64_t x208, uint8_t x209 = addcarryx_u64(x206, x191, x193);
- uint64_t x211, uint8_t x212 = addcarryx_u64(x209, x194, x196);
- uint64_t x214, uint8_t _ = addcarryx_u64(0x0, x212, x197);
- uint64_t _, uint8_t x218 = addcarryx_u64(0x0, x157, x181);
- uint64_t x220, uint8_t x221 = addcarryx_u64(x218, x160, x199);
- uint64_t x223, uint8_t x224 = addcarryx_u64(x221, x163, x202);
- uint64_t x226, uint8_t x227 = addcarryx_u64(x224, x166, x205);
- uint64_t x229, uint8_t x230 = addcarryx_u64(x227, x169, x208);
- uint64_t x232, uint8_t x233 = addcarryx_u64(x230, x172, x211);
- uint64_t x235, uint8_t x236 = addcarryx_u64(x233, x175, x214);
- uint8_t x237 = (x236 + x176);
- uint64_t x239, uint64_t x240 = mulx_u64(x9, x15);
- uint64_t x242, uint64_t x243 = mulx_u64(x9, x17);
- uint64_t x245, uint64_t x246 = mulx_u64(x9, x19);
- uint64_t x248, uint64_t x249 = mulx_u64(x9, x21);
- uint64_t x251, uint64_t x252 = mulx_u64(x9, x23);
- uint64_t x254, uint64_t x255 = mulx_u64(x9, x22);
- uint64_t x257, uint8_t x258 = addcarryx_u64(0x0, x240, x242);
- uint64_t x260, uint8_t x261 = addcarryx_u64(x258, x243, x245);
- uint64_t x263, uint8_t x264 = addcarryx_u64(x261, x246, x248);
- uint64_t x266, uint8_t x267 = addcarryx_u64(x264, x249, x251);
- uint64_t x269, uint8_t x270 = addcarryx_u64(x267, x252, x254);
- uint64_t x272, uint8_t _ = addcarryx_u64(0x0, x270, x255);
- uint64_t x275, uint8_t x276 = addcarryx_u64(0x0, x220, x239);
- uint64_t x278, uint8_t x279 = addcarryx_u64(x276, x223, x257);
- uint64_t x281, uint8_t x282 = addcarryx_u64(x279, x226, x260);
- uint64_t x284, uint8_t x285 = addcarryx_u64(x282, x229, x263);
- uint64_t x287, uint8_t x288 = addcarryx_u64(x285, x232, x266);
- uint64_t x290, uint8_t x291 = addcarryx_u64(x288, x235, x269);
- uint64_t x293, uint8_t x294 = addcarryx_u64(x291, x237, x272);
- uint64_t x296, uint64_t _ = mulx_u64(x275, 0xaaaaaaaaaaaaaaabL);
- uint64_t x299, uint64_t x300 = mulx_u64(x296, 0xfffffffffffffffdL);
- uint64_t x302, uint64_t x303 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x305, uint64_t x306 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x308, uint64_t x309 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x311, uint64_t x312 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x314, uint64_t x315 = mulx_u64(x296, 0xffff);
- uint64_t x317, uint8_t x318 = addcarryx_u64(0x0, x300, x302);
- uint64_t x320, uint8_t x321 = addcarryx_u64(x318, x303, x305);
- uint64_t x323, uint8_t x324 = addcarryx_u64(x321, x306, x308);
- uint64_t x326, uint8_t x327 = addcarryx_u64(x324, x309, x311);
- uint64_t x329, uint8_t x330 = addcarryx_u64(x327, x312, x314);
- uint64_t x332, uint8_t _ = addcarryx_u64(0x0, x330, x315);
- uint64_t _, uint8_t x336 = addcarryx_u64(0x0, x275, x299);
- uint64_t x338, uint8_t x339 = addcarryx_u64(x336, x278, x317);
- uint64_t x341, uint8_t x342 = addcarryx_u64(x339, x281, x320);
- uint64_t x344, uint8_t x345 = addcarryx_u64(x342, x284, x323);
- uint64_t x347, uint8_t x348 = addcarryx_u64(x345, x287, x326);
- uint64_t x350, uint8_t x351 = addcarryx_u64(x348, x290, x329);
- uint64_t x353, uint8_t x354 = addcarryx_u64(x351, x293, x332);
- uint8_t x355 = (x354 + x294);
- uint64_t x357, uint64_t x358 = mulx_u64(x11, x15);
- uint64_t x360, uint64_t x361 = mulx_u64(x11, x17);
- uint64_t x363, uint64_t x364 = mulx_u64(x11, x19);
- uint64_t x366, uint64_t x367 = mulx_u64(x11, x21);
- uint64_t x369, uint64_t x370 = mulx_u64(x11, x23);
- uint64_t x372, uint64_t x373 = mulx_u64(x11, x22);
- uint64_t x375, uint8_t x376 = addcarryx_u64(0x0, x358, x360);
- uint64_t x378, uint8_t x379 = addcarryx_u64(x376, x361, x363);
- uint64_t x381, uint8_t x382 = addcarryx_u64(x379, x364, x366);
- uint64_t x384, uint8_t x385 = addcarryx_u64(x382, x367, x369);
- uint64_t x387, uint8_t x388 = addcarryx_u64(x385, x370, x372);
- uint64_t x390, uint8_t _ = addcarryx_u64(0x0, x388, x373);
- uint64_t x393, uint8_t x394 = addcarryx_u64(0x0, x338, x357);
- uint64_t x396, uint8_t x397 = addcarryx_u64(x394, x341, x375);
- uint64_t x399, uint8_t x400 = addcarryx_u64(x397, x344, x378);
- uint64_t x402, uint8_t x403 = addcarryx_u64(x400, x347, x381);
- uint64_t x405, uint8_t x406 = addcarryx_u64(x403, x350, x384);
- uint64_t x408, uint8_t x409 = addcarryx_u64(x406, x353, x387);
- uint64_t x411, uint8_t x412 = addcarryx_u64(x409, x355, x390);
- uint64_t x414, uint64_t _ = mulx_u64(x393, 0xaaaaaaaaaaaaaaabL);
- uint64_t x417, uint64_t x418 = mulx_u64(x414, 0xfffffffffffffffdL);
- uint64_t x420, uint64_t x421 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x423, uint64_t x424 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x426, uint64_t x427 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x429, uint64_t x430 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x432, uint64_t x433 = mulx_u64(x414, 0xffff);
- uint64_t x435, uint8_t x436 = addcarryx_u64(0x0, x418, x420);
- uint64_t x438, uint8_t x439 = addcarryx_u64(x436, x421, x423);
- uint64_t x441, uint8_t x442 = addcarryx_u64(x439, x424, x426);
- uint64_t x444, uint8_t x445 = addcarryx_u64(x442, x427, x429);
- uint64_t x447, uint8_t x448 = addcarryx_u64(x445, x430, x432);
- uint64_t x450, uint8_t _ = addcarryx_u64(0x0, x448, x433);
- uint64_t _, uint8_t x454 = addcarryx_u64(0x0, x393, x417);
- uint64_t x456, uint8_t x457 = addcarryx_u64(x454, x396, x435);
- uint64_t x459, uint8_t x460 = addcarryx_u64(x457, x399, x438);
- uint64_t x462, uint8_t x463 = addcarryx_u64(x460, x402, x441);
- uint64_t x465, uint8_t x466 = addcarryx_u64(x463, x405, x444);
- uint64_t x468, uint8_t x469 = addcarryx_u64(x466, x408, x447);
- uint64_t x471, uint8_t x472 = addcarryx_u64(x469, x411, x450);
- uint8_t x473 = (x472 + x412);
- uint64_t x475, uint64_t x476 = mulx_u64(x13, x15);
- uint64_t x478, uint64_t x479 = mulx_u64(x13, x17);
- uint64_t x481, uint64_t x482 = mulx_u64(x13, x19);
- uint64_t x484, uint64_t x485 = mulx_u64(x13, x21);
- uint64_t x487, uint64_t x488 = mulx_u64(x13, x23);
- uint64_t x490, uint64_t x491 = mulx_u64(x13, x22);
- uint64_t x493, uint8_t x494 = addcarryx_u64(0x0, x476, x478);
- uint64_t x496, uint8_t x497 = addcarryx_u64(x494, x479, x481);
- uint64_t x499, uint8_t x500 = addcarryx_u64(x497, x482, x484);
- uint64_t x502, uint8_t x503 = addcarryx_u64(x500, x485, x487);
- uint64_t x505, uint8_t x506 = addcarryx_u64(x503, x488, x490);
- uint64_t x508, uint8_t _ = addcarryx_u64(0x0, x506, x491);
- uint64_t x511, uint8_t x512 = addcarryx_u64(0x0, x456, x475);
- uint64_t x514, uint8_t x515 = addcarryx_u64(x512, x459, x493);
- uint64_t x517, uint8_t x518 = addcarryx_u64(x515, x462, x496);
- uint64_t x520, uint8_t x521 = addcarryx_u64(x518, x465, x499);
- uint64_t x523, uint8_t x524 = addcarryx_u64(x521, x468, x502);
- uint64_t x526, uint8_t x527 = addcarryx_u64(x524, x471, x505);
- uint64_t x529, uint8_t x530 = addcarryx_u64(x527, x473, x508);
- uint64_t x532, uint64_t _ = mulx_u64(x511, 0xaaaaaaaaaaaaaaabL);
- uint64_t x535, uint64_t x536 = mulx_u64(x532, 0xfffffffffffffffdL);
- uint64_t x538, uint64_t x539 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x541, uint64_t x542 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x544, uint64_t x545 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x547, uint64_t x548 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x550, uint64_t x551 = mulx_u64(x532, 0xffff);
- uint64_t x553, uint8_t x554 = addcarryx_u64(0x0, x536, x538);
- uint64_t x556, uint8_t x557 = addcarryx_u64(x554, x539, x541);
- uint64_t x559, uint8_t x560 = addcarryx_u64(x557, x542, x544);
- uint64_t x562, uint8_t x563 = addcarryx_u64(x560, x545, x547);
- uint64_t x565, uint8_t x566 = addcarryx_u64(x563, x548, x550);
- uint64_t x568, uint8_t _ = addcarryx_u64(0x0, x566, x551);
- uint64_t _, uint8_t x572 = addcarryx_u64(0x0, x511, x535);
- uint64_t x574, uint8_t x575 = addcarryx_u64(x572, x514, x553);
- uint64_t x577, uint8_t x578 = addcarryx_u64(x575, x517, x556);
- uint64_t x580, uint8_t x581 = addcarryx_u64(x578, x520, x559);
- uint64_t x583, uint8_t x584 = addcarryx_u64(x581, x523, x562);
- uint64_t x586, uint8_t x587 = addcarryx_u64(x584, x526, x565);
- uint64_t x589, uint8_t x590 = addcarryx_u64(x587, x529, x568);
- uint8_t x591 = (x590 + x530);
- uint64_t x593, uint64_t x594 = mulx_u64(x12, x15);
- uint64_t x596, uint64_t x597 = mulx_u64(x12, x17);
- uint64_t x599, uint64_t x600 = mulx_u64(x12, x19);
- uint64_t x602, uint64_t x603 = mulx_u64(x12, x21);
- uint64_t x605, uint64_t x606 = mulx_u64(x12, x23);
- uint64_t x608, uint64_t x609 = mulx_u64(x12, x22);
- uint64_t x611, uint8_t x612 = addcarryx_u64(0x0, x594, x596);
- uint64_t x614, uint8_t x615 = addcarryx_u64(x612, x597, x599);
- uint64_t x617, uint8_t x618 = addcarryx_u64(x615, x600, x602);
- uint64_t x620, uint8_t x621 = addcarryx_u64(x618, x603, x605);
- uint64_t x623, uint8_t x624 = addcarryx_u64(x621, x606, x608);
- uint64_t x626, uint8_t _ = addcarryx_u64(0x0, x624, x609);
- uint64_t x629, uint8_t x630 = addcarryx_u64(0x0, x574, x593);
- uint64_t x632, uint8_t x633 = addcarryx_u64(x630, x577, x611);
- uint64_t x635, uint8_t x636 = addcarryx_u64(x633, x580, x614);
- uint64_t x638, uint8_t x639 = addcarryx_u64(x636, x583, x617);
- uint64_t x641, uint8_t x642 = addcarryx_u64(x639, x586, x620);
- uint64_t x644, uint8_t x645 = addcarryx_u64(x642, x589, x623);
- uint64_t x647, uint8_t x648 = addcarryx_u64(x645, x591, x626);
- uint64_t x650, uint64_t _ = mulx_u64(x629, 0xaaaaaaaaaaaaaaabL);
- uint64_t x653, uint64_t x654 = mulx_u64(x650, 0xfffffffffffffffdL);
- uint64_t x656, uint64_t x657 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x659, uint64_t x660 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x662, uint64_t x663 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x665, uint64_t x666 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x668, uint64_t x669 = mulx_u64(x650, 0xffff);
- uint64_t x671, uint8_t x672 = addcarryx_u64(0x0, x654, x656);
- uint64_t x674, uint8_t x675 = addcarryx_u64(x672, x657, x659);
- uint64_t x677, uint8_t x678 = addcarryx_u64(x675, x660, x662);
- uint64_t x680, uint8_t x681 = addcarryx_u64(x678, x663, x665);
- uint64_t x683, uint8_t x684 = addcarryx_u64(x681, x666, x668);
- uint64_t x686, uint8_t _ = addcarryx_u64(0x0, x684, x669);
- uint64_t _, uint8_t x690 = addcarryx_u64(0x0, x629, x653);
- uint64_t x692, uint8_t x693 = addcarryx_u64(x690, x632, x671);
- uint64_t x695, uint8_t x696 = addcarryx_u64(x693, x635, x674);
- uint64_t x698, uint8_t x699 = addcarryx_u64(x696, x638, x677);
- uint64_t x701, uint8_t x702 = addcarryx_u64(x699, x641, x680);
- uint64_t x704, uint8_t x705 = addcarryx_u64(x702, x644, x683);
- uint64_t x707, uint8_t x708 = addcarryx_u64(x705, x647, x686);
- uint8_t x709 = (x708 + x648);
- uint64_t x711, uint8_t x712 = subborrow_u64(0x0, x692, 0xfffffffffffffffdL);
- uint64_t x714, uint8_t x715 = subborrow_u64(x712, x695, 0xffffffffffffffffL);
- uint64_t x717, uint8_t x718 = subborrow_u64(x715, x698, 0xffffffffffffffffL);
- uint64_t x720, uint8_t x721 = subborrow_u64(x718, x701, 0xffffffffffffffffL);
- uint64_t x723, uint8_t x724 = subborrow_u64(x721, x704, 0xffffffffffffffffL);
- uint64_t x726, uint8_t x727 = subborrow_u64(x724, x707, 0xffff);
- uint64_t _, uint8_t x730 = subborrow_u64(x727, x709, 0x0);
- uint64_t x731 = cmovznz64(x730, x726, x707);
- uint64_t x732 = cmovznz64(x730, x723, x704);
- uint64_t x733 = cmovznz64(x730, x720, x701);
- uint64_t x734 = cmovznz64(x730, x717, x698);
- uint64_t x735 = cmovznz64(x730, x714, x695);
- uint64_t x736 = cmovznz64(x730, x711, x692);
- return (x731, x732, x733, x734, x735, x736))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e336m3_6limbs/femulDisplay.v b/src/Specific/montgomery64_2e336m3_6limbs/femulDisplay.v
deleted file mode 100644
index e6e5755ee..000000000
--- a/src/Specific/montgomery64_2e336m3_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e336m3_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e336m3_6limbs/fenz.c b/src/Specific/montgomery64_2e336m3_6limbs/fenz.c
deleted file mode 100644
index c93f74257..000000000
--- a/src/Specific/montgomery64_2e336m3_6limbs/fenz.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x11 = (x10 | x9);
- { uint64_t x12 = (x8 | x11);
- { uint64_t x13 = (x6 | x12);
- { uint64_t x14 = (x4 | x13);
- { uint64_t x15 = (x2 | x14);
- out[0] = x15;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e336m3_6limbs/fenz.v b/src/Specific/montgomery64_2e336m3_6limbs/fenz.v
deleted file mode 100644
index c1380cc71..000000000
--- a/src/Specific/montgomery64_2e336m3_6limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e336m3_6limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e336m3_6limbs/fenzDisplay.log b/src/Specific/montgomery64_2e336m3_6limbs/fenzDisplay.log
deleted file mode 100644
index f39f1d91b..000000000
--- a/src/Specific/montgomery64_2e336m3_6limbs/fenzDisplay.log
+++ /dev/null
@@ -1,12 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x11 = (x10 | x9);
- uint64_t x12 = (x8 | x11);
- uint64_t x13 = (x6 | x12);
- uint64_t x14 = (x4 | x13);
- uint64_t x15 = (x2 | x14);
- return x15)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e336m3_6limbs/fenzDisplay.v b/src/Specific/montgomery64_2e336m3_6limbs/fenzDisplay.v
deleted file mode 100644
index c914f46d5..000000000
--- a/src/Specific/montgomery64_2e336m3_6limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e336m3_6limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e336m3_6limbs/feopp.c b/src/Specific/montgomery64_2e336m3_6limbs/feopp.c
deleted file mode 100644
index 17bbd7bd0..000000000
--- a/src/Specific/montgomery64_2e336m3_6limbs/feopp.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feopp(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12; uint8_t x13 = _subborrow_u64(0x0, 0x0, x2, &x12);
- { uint64_t x15; uint8_t x16 = _subborrow_u64(x13, 0x0, x4, &x15);
- { uint64_t x18; uint8_t x19 = _subborrow_u64(x16, 0x0, x6, &x18);
- { uint64_t x21; uint8_t x22 = _subborrow_u64(x19, 0x0, x8, &x21);
- { uint64_t x24; uint8_t x25 = _subborrow_u64(x22, 0x0, x10, &x24);
- { uint64_t x27; uint8_t x28 = _subborrow_u64(x25, 0x0, x9, &x27);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0xfffffffffffffffdL);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(0x0, x12, x30, &x32);
- { uint64_t x34 = (x29 & 0xffffffffffffffffL);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x33, x15, x34, &x36);
- { uint64_t x38 = (x29 & 0xffffffffffffffffL);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x37, x18, x38, &x40);
- { uint64_t x42 = (x29 & 0xffffffffffffffffL);
- { uint64_t x44; uint8_t x45 = _addcarryx_u64(x41, x21, x42, &x44);
- { uint64_t x46 = (x29 & 0xffffffffffffffffL);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x45, x24, x46, &x48);
- { uint64_t x50 = (x29 & 0xffff);
- { uint64_t x52; uint8_t _ = _addcarryx_u64(x49, x27, x50, &x52);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e336m3_6limbs/feopp.v b/src/Specific/montgomery64_2e336m3_6limbs/feopp.v
deleted file mode 100644
index d7e0acaa0..000000000
--- a/src/Specific/montgomery64_2e336m3_6limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e336m3_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e336m3_6limbs/feoppDisplay.log b/src/Specific/montgomery64_2e336m3_6limbs/feoppDisplay.log
deleted file mode 100644
index 1591801df..000000000
--- a/src/Specific/montgomery64_2e336m3_6limbs/feoppDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x15, uint8_t x16 = subborrow_u64(x13, 0x0, x4);
- uint64_t x18, uint8_t x19 = subborrow_u64(x16, 0x0, x6);
- uint64_t x21, uint8_t x22 = subborrow_u64(x19, 0x0, x8);
- uint64_t x24, uint8_t x25 = subborrow_u64(x22, 0x0, x10);
- uint64_t x27, uint8_t x28 = subborrow_u64(x25, 0x0, x9);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0xfffffffffffffffdL);
- uint64_t x32, uint8_t x33 = addcarryx_u64(0x0, x12, x30);
- uint64_t x34 = (x29 & 0xffffffffffffffffL);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x33, x15, x34);
- uint64_t x38 = (x29 & 0xffffffffffffffffL);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x37, x18, x38);
- uint64_t x42 = (x29 & 0xffffffffffffffffL);
- uint64_t x44, uint8_t x45 = addcarryx_u64(x41, x21, x42);
- uint64_t x46 = (x29 & 0xffffffffffffffffL);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x45, x24, x46);
- uint64_t x50 = (x29 & 0xffff);
- uint64_t x52, uint8_t _ = addcarryx_u64(x49, x27, x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e336m3_6limbs/feoppDisplay.v b/src/Specific/montgomery64_2e336m3_6limbs/feoppDisplay.v
deleted file mode 100644
index 8050722a8..000000000
--- a/src/Specific/montgomery64_2e336m3_6limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e336m3_6limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e336m3_6limbs/fesquare.c b/src/Specific/montgomery64_2e336m3_6limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e336m3_6limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e336m3_6limbs/fesub.c b/src/Specific/montgomery64_2e336m3_6limbs/fesub.c
deleted file mode 100644
index a765dc44e..000000000
--- a/src/Specific/montgomery64_2e336m3_6limbs/fesub.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _subborrow_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _subborrow_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _subborrow_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _subborrow_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _subborrow_u64(x38, x12, x22, &x40);
- { uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- { uint64_t x43 = (x42 & 0xfffffffffffffffdL);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(0x0, x25, x43, &x45);
- { uint64_t x47 = (x42 & 0xffffffffffffffffL);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x46, x28, x47, &x49);
- { uint64_t x51 = (x42 & 0xffffffffffffffffL);
- { uint64_t x53; uint8_t x54 = _addcarryx_u64(x50, x31, x51, &x53);
- { uint64_t x55 = (x42 & 0xffffffffffffffffL);
- { uint64_t x57; uint8_t x58 = _addcarryx_u64(x54, x34, x55, &x57);
- { uint64_t x59 = (x42 & 0xffffffffffffffffL);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x58, x37, x59, &x61);
- { uint64_t x63 = (x42 & 0xffff);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(x62, x40, x63, &x65);
- out[0] = x45;
- out[1] = x49;
- out[2] = x53;
- out[3] = x57;
- out[4] = x61;
- out[5] = x65;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e336m3_6limbs/fesub.v b/src/Specific/montgomery64_2e336m3_6limbs/fesub.v
deleted file mode 100644
index 686c84bc5..000000000
--- a/src/Specific/montgomery64_2e336m3_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e336m3_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e336m3_6limbs/fesubDisplay.log b/src/Specific/montgomery64_2e336m3_6limbs/fesubDisplay.log
deleted file mode 100644
index ca77cd145..000000000
--- a/src/Specific/montgomery64_2e336m3_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = subborrow_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = subborrow_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = subborrow_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = subborrow_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = subborrow_u64(x38, x12, x22);
- uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- uint64_t x43 = (x42 & 0xfffffffffffffffdL);
- uint64_t x45, uint8_t x46 = addcarryx_u64(0x0, x25, x43);
- uint64_t x47 = (x42 & 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x46, x28, x47);
- uint64_t x51 = (x42 & 0xffffffffffffffffL);
- uint64_t x53, uint8_t x54 = addcarryx_u64(x50, x31, x51);
- uint64_t x55 = (x42 & 0xffffffffffffffffL);
- uint64_t x57, uint8_t x58 = addcarryx_u64(x54, x34, x55);
- uint64_t x59 = (x42 & 0xffffffffffffffffL);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x58, x37, x59);
- uint64_t x63 = (x42 & 0xffff);
- uint64_t x65, uint8_t _ = addcarryx_u64(x62, x40, x63);
- (Return x65, Return x61, Return x57, Return x53, Return x49, Return x45))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e336m3_6limbs/fesubDisplay.v b/src/Specific/montgomery64_2e336m3_6limbs/fesubDisplay.v
deleted file mode 100644
index bbb417cc5..000000000
--- a/src/Specific/montgomery64_2e336m3_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e336m3_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e336m3_6limbs/py_interpreter.sh b/src/Specific/montgomery64_2e336m3_6limbs/py_interpreter.sh
deleted file mode 100755
index 3b939c233..000000000
--- a/src/Specific/montgomery64_2e336m3_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**336 - 3' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e338m15_6limbs/CurveParameters.v b/src/Specific/montgomery64_2e338m15_6limbs/CurveParameters.v
deleted file mode 100644
index 2aca237b6..000000000
--- a/src/Specific/montgomery64_2e338m15_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^338 - 15
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 64;
- bitwidth := 64;
- s := 2^338;
- c := [(1, 15)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e338m15_6limbs/Synthesis.v b/src/Specific/montgomery64_2e338m15_6limbs/Synthesis.v
deleted file mode 100644
index cb1dae8df..000000000
--- a/src/Specific/montgomery64_2e338m15_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e338m15_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/montgomery64_2e338m15_6limbs/compiler.sh b/src/Specific/montgomery64_2e338m15_6limbs/compiler.sh
deleted file mode 100755
index 2156b2d91..000000000
--- a/src/Specific/montgomery64_2e338m15_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='43' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<338) - 15' "$@"
diff --git a/src/Specific/montgomery64_2e338m15_6limbs/compilerxx.sh b/src/Specific/montgomery64_2e338m15_6limbs/compilerxx.sh
deleted file mode 100755
index f6046535f..000000000
--- a/src/Specific/montgomery64_2e338m15_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='43' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<338) - 15' "$@"
diff --git a/src/Specific/montgomery64_2e338m15_6limbs/feadd.c b/src/Specific/montgomery64_2e338m15_6limbs/feadd.c
deleted file mode 100644
index 32e3e705b..000000000
--- a/src/Specific/montgomery64_2e338m15_6limbs/feadd.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _addcarryx_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _addcarryx_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x38, x12, x22, &x40);
- { uint64_t x43; uint8_t x44 = _subborrow_u64(0x0, x25, 0xfffffffffffffff1L, &x43);
- { uint64_t x46; uint8_t x47 = _subborrow_u64(x44, x28, 0xffffffffffffffffL, &x46);
- { uint64_t x49; uint8_t x50 = _subborrow_u64(x47, x31, 0xffffffffffffffffL, &x49);
- { uint64_t x52; uint8_t x53 = _subborrow_u64(x50, x34, 0xffffffffffffffffL, &x52);
- { uint64_t x55; uint8_t x56 = _subborrow_u64(x53, x37, 0xffffffffffffffffL, &x55);
- { uint64_t x58; uint8_t x59 = _subborrow_u64(x56, x40, 0x3ffff, &x58);
- { uint64_t _; uint8_t x62 = _subborrow_u64(x59, x41, 0x0, &_);
- { uint64_t x63 = cmovznz64(x62, x58, x40);
- { uint64_t x64 = cmovznz64(x62, x55, x37);
- { uint64_t x65 = cmovznz64(x62, x52, x34);
- { uint64_t x66 = cmovznz64(x62, x49, x31);
- { uint64_t x67 = cmovznz64(x62, x46, x28);
- { uint64_t x68 = cmovznz64(x62, x43, x25);
- out[0] = x68;
- out[1] = x67;
- out[2] = x66;
- out[3] = x65;
- out[4] = x64;
- out[5] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e338m15_6limbs/feadd.v b/src/Specific/montgomery64_2e338m15_6limbs/feadd.v
deleted file mode 100644
index 38cc76f2a..000000000
--- a/src/Specific/montgomery64_2e338m15_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e338m15_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e338m15_6limbs/feaddDisplay.log b/src/Specific/montgomery64_2e338m15_6limbs/feaddDisplay.log
deleted file mode 100644
index 5336bcf27..000000000
--- a/src/Specific/montgomery64_2e338m15_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = addcarryx_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = addcarryx_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = addcarryx_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = addcarryx_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x38, x12, x22);
- uint64_t x43, uint8_t x44 = subborrow_u64(0x0, x25, 0xfffffffffffffff1L);
- uint64_t x46, uint8_t x47 = subborrow_u64(x44, x28, 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = subborrow_u64(x47, x31, 0xffffffffffffffffL);
- uint64_t x52, uint8_t x53 = subborrow_u64(x50, x34, 0xffffffffffffffffL);
- uint64_t x55, uint8_t x56 = subborrow_u64(x53, x37, 0xffffffffffffffffL);
- uint64_t x58, uint8_t x59 = subborrow_u64(x56, x40, 0x3ffff);
- uint64_t _, uint8_t x62 = subborrow_u64(x59, x41, 0x0);
- uint64_t x63 = cmovznz64(x62, x58, x40);
- uint64_t x64 = cmovznz64(x62, x55, x37);
- uint64_t x65 = cmovznz64(x62, x52, x34);
- uint64_t x66 = cmovznz64(x62, x49, x31);
- uint64_t x67 = cmovznz64(x62, x46, x28);
- uint64_t x68 = cmovznz64(x62, x43, x25);
- return (x63, x64, x65, x66, x67, x68))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e338m15_6limbs/feaddDisplay.v b/src/Specific/montgomery64_2e338m15_6limbs/feaddDisplay.v
deleted file mode 100644
index 851a9efb1..000000000
--- a/src/Specific/montgomery64_2e338m15_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e338m15_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e338m15_6limbs/femul.c b/src/Specific/montgomery64_2e338m15_6limbs/femul.c
deleted file mode 100644
index 90a1d477d..000000000
--- a/src/Specific/montgomery64_2e338m15_6limbs/femul.c
+++ /dev/null
@@ -1,266 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x26; uint64_t x25 = _mulx_u64(x5, x15, &x26);
- { uint64_t x29; uint64_t x28 = _mulx_u64(x5, x17, &x29);
- { uint64_t x32; uint64_t x31 = _mulx_u64(x5, x19, &x32);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x5, x21, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x5, x23, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x5, x22, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x26, x28, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x29, x31, &x46);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x47, x32, x34, &x49);
- { uint64_t x52; uint8_t x53 = _addcarryx_u64(x50, x35, x37, &x52);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x38, x40, &x55);
- { uint64_t x58; uint8_t _ = _addcarryx_u64(0x0, x56, x41, &x58);
- { uint64_t _; uint64_t x61 = _mulx_u64(x25, 0xeeeeeeeeeeeeeeefL, &_);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x61, 0xfffffffffffffff1L, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x61, 0xffffffffffffffffL, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x61, 0xffffffffffffffffL, &x71);
- { uint64_t x74; uint64_t x73 = _mulx_u64(x61, 0xffffffffffffffffL, &x74);
- { uint64_t x77; uint64_t x76 = _mulx_u64(x61, 0xffffffffffffffffL, &x77);
- { uint64_t x80; uint64_t x79 = _mulx_u64(x61, 0x3ffff, &x80);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x65, x67, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x68, x70, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x71, x73, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x74, x76, &x91);
- { uint64_t x94; uint8_t x95 = _addcarryx_u64(x92, x77, x79, &x94);
- { uint64_t x97; uint8_t _ = _addcarryx_u64(0x0, x95, x80, &x97);
- { uint64_t _; uint8_t x101 = _addcarryx_u64(0x0, x25, x64, &_);
- { uint64_t x103; uint8_t x104 = _addcarryx_u64(x101, x43, x82, &x103);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(x104, x46, x85, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x49, x88, &x109);
- { uint64_t x112; uint8_t x113 = _addcarryx_u64(x110, x52, x91, &x112);
- { uint64_t x115; uint8_t x116 = _addcarryx_u64(x113, x55, x94, &x115);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x58, x97, &x118);
- { uint64_t x122; uint64_t x121 = _mulx_u64(x7, x15, &x122);
- { uint64_t x125; uint64_t x124 = _mulx_u64(x7, x17, &x125);
- { uint64_t x128; uint64_t x127 = _mulx_u64(x7, x19, &x128);
- { uint64_t x131; uint64_t x130 = _mulx_u64(x7, x21, &x131);
- { uint64_t x134; uint64_t x133 = _mulx_u64(x7, x23, &x134);
- { uint64_t x137; uint64_t x136 = _mulx_u64(x7, x22, &x137);
- { uint64_t x139; uint8_t x140 = _addcarryx_u64(0x0, x122, x124, &x139);
- { uint64_t x142; uint8_t x143 = _addcarryx_u64(x140, x125, x127, &x142);
- { uint64_t x145; uint8_t x146 = _addcarryx_u64(x143, x128, x130, &x145);
- { uint64_t x148; uint8_t x149 = _addcarryx_u64(x146, x131, x133, &x148);
- { uint64_t x151; uint8_t x152 = _addcarryx_u64(x149, x134, x136, &x151);
- { uint64_t x154; uint8_t _ = _addcarryx_u64(0x0, x152, x137, &x154);
- { uint64_t x157; uint8_t x158 = _addcarryx_u64(0x0, x103, x121, &x157);
- { uint64_t x160; uint8_t x161 = _addcarryx_u64(x158, x106, x139, &x160);
- { uint64_t x163; uint8_t x164 = _addcarryx_u64(x161, x109, x142, &x163);
- { uint64_t x166; uint8_t x167 = _addcarryx_u64(x164, x112, x145, &x166);
- { uint64_t x169; uint8_t x170 = _addcarryx_u64(x167, x115, x148, &x169);
- { uint64_t x172; uint8_t x173 = _addcarryx_u64(x170, x118, x151, &x172);
- { uint64_t x175; uint8_t x176 = _addcarryx_u64(x173, x119, x154, &x175);
- { uint64_t _; uint64_t x178 = _mulx_u64(x157, 0xeeeeeeeeeeeeeeefL, &_);
- { uint64_t x182; uint64_t x181 = _mulx_u64(x178, 0xfffffffffffffff1L, &x182);
- { uint64_t x185; uint64_t x184 = _mulx_u64(x178, 0xffffffffffffffffL, &x185);
- { uint64_t x188; uint64_t x187 = _mulx_u64(x178, 0xffffffffffffffffL, &x188);
- { uint64_t x191; uint64_t x190 = _mulx_u64(x178, 0xffffffffffffffffL, &x191);
- { uint64_t x194; uint64_t x193 = _mulx_u64(x178, 0xffffffffffffffffL, &x194);
- { uint64_t x197; uint64_t x196 = _mulx_u64(x178, 0x3ffff, &x197);
- { uint64_t x199; uint8_t x200 = _addcarryx_u64(0x0, x182, x184, &x199);
- { uint64_t x202; uint8_t x203 = _addcarryx_u64(x200, x185, x187, &x202);
- { uint64_t x205; uint8_t x206 = _addcarryx_u64(x203, x188, x190, &x205);
- { uint64_t x208; uint8_t x209 = _addcarryx_u64(x206, x191, x193, &x208);
- { uint64_t x211; uint8_t x212 = _addcarryx_u64(x209, x194, x196, &x211);
- { uint64_t x214; uint8_t _ = _addcarryx_u64(0x0, x212, x197, &x214);
- { uint64_t _; uint8_t x218 = _addcarryx_u64(0x0, x157, x181, &_);
- { uint64_t x220; uint8_t x221 = _addcarryx_u64(x218, x160, x199, &x220);
- { uint64_t x223; uint8_t x224 = _addcarryx_u64(x221, x163, x202, &x223);
- { uint64_t x226; uint8_t x227 = _addcarryx_u64(x224, x166, x205, &x226);
- { uint64_t x229; uint8_t x230 = _addcarryx_u64(x227, x169, x208, &x229);
- { uint64_t x232; uint8_t x233 = _addcarryx_u64(x230, x172, x211, &x232);
- { uint64_t x235; uint8_t x236 = _addcarryx_u64(x233, x175, x214, &x235);
- { uint8_t x237 = (x236 + x176);
- { uint64_t x240; uint64_t x239 = _mulx_u64(x9, x15, &x240);
- { uint64_t x243; uint64_t x242 = _mulx_u64(x9, x17, &x243);
- { uint64_t x246; uint64_t x245 = _mulx_u64(x9, x19, &x246);
- { uint64_t x249; uint64_t x248 = _mulx_u64(x9, x21, &x249);
- { uint64_t x252; uint64_t x251 = _mulx_u64(x9, x23, &x252);
- { uint64_t x255; uint64_t x254 = _mulx_u64(x9, x22, &x255);
- { uint64_t x257; uint8_t x258 = _addcarryx_u64(0x0, x240, x242, &x257);
- { uint64_t x260; uint8_t x261 = _addcarryx_u64(x258, x243, x245, &x260);
- { uint64_t x263; uint8_t x264 = _addcarryx_u64(x261, x246, x248, &x263);
- { uint64_t x266; uint8_t x267 = _addcarryx_u64(x264, x249, x251, &x266);
- { uint64_t x269; uint8_t x270 = _addcarryx_u64(x267, x252, x254, &x269);
- { uint64_t x272; uint8_t _ = _addcarryx_u64(0x0, x270, x255, &x272);
- { uint64_t x275; uint8_t x276 = _addcarryx_u64(0x0, x220, x239, &x275);
- { uint64_t x278; uint8_t x279 = _addcarryx_u64(x276, x223, x257, &x278);
- { uint64_t x281; uint8_t x282 = _addcarryx_u64(x279, x226, x260, &x281);
- { uint64_t x284; uint8_t x285 = _addcarryx_u64(x282, x229, x263, &x284);
- { uint64_t x287; uint8_t x288 = _addcarryx_u64(x285, x232, x266, &x287);
- { uint64_t x290; uint8_t x291 = _addcarryx_u64(x288, x235, x269, &x290);
- { uint64_t x293; uint8_t x294 = _addcarryx_u64(x291, x237, x272, &x293);
- { uint64_t _; uint64_t x296 = _mulx_u64(x275, 0xeeeeeeeeeeeeeeefL, &_);
- { uint64_t x300; uint64_t x299 = _mulx_u64(x296, 0xfffffffffffffff1L, &x300);
- { uint64_t x303; uint64_t x302 = _mulx_u64(x296, 0xffffffffffffffffL, &x303);
- { uint64_t x306; uint64_t x305 = _mulx_u64(x296, 0xffffffffffffffffL, &x306);
- { uint64_t x309; uint64_t x308 = _mulx_u64(x296, 0xffffffffffffffffL, &x309);
- { uint64_t x312; uint64_t x311 = _mulx_u64(x296, 0xffffffffffffffffL, &x312);
- { uint64_t x315; uint64_t x314 = _mulx_u64(x296, 0x3ffff, &x315);
- { uint64_t x317; uint8_t x318 = _addcarryx_u64(0x0, x300, x302, &x317);
- { uint64_t x320; uint8_t x321 = _addcarryx_u64(x318, x303, x305, &x320);
- { uint64_t x323; uint8_t x324 = _addcarryx_u64(x321, x306, x308, &x323);
- { uint64_t x326; uint8_t x327 = _addcarryx_u64(x324, x309, x311, &x326);
- { uint64_t x329; uint8_t x330 = _addcarryx_u64(x327, x312, x314, &x329);
- { uint64_t x332; uint8_t _ = _addcarryx_u64(0x0, x330, x315, &x332);
- { uint64_t _; uint8_t x336 = _addcarryx_u64(0x0, x275, x299, &_);
- { uint64_t x338; uint8_t x339 = _addcarryx_u64(x336, x278, x317, &x338);
- { uint64_t x341; uint8_t x342 = _addcarryx_u64(x339, x281, x320, &x341);
- { uint64_t x344; uint8_t x345 = _addcarryx_u64(x342, x284, x323, &x344);
- { uint64_t x347; uint8_t x348 = _addcarryx_u64(x345, x287, x326, &x347);
- { uint64_t x350; uint8_t x351 = _addcarryx_u64(x348, x290, x329, &x350);
- { uint64_t x353; uint8_t x354 = _addcarryx_u64(x351, x293, x332, &x353);
- { uint8_t x355 = (x354 + x294);
- { uint64_t x358; uint64_t x357 = _mulx_u64(x11, x15, &x358);
- { uint64_t x361; uint64_t x360 = _mulx_u64(x11, x17, &x361);
- { uint64_t x364; uint64_t x363 = _mulx_u64(x11, x19, &x364);
- { uint64_t x367; uint64_t x366 = _mulx_u64(x11, x21, &x367);
- { uint64_t x370; uint64_t x369 = _mulx_u64(x11, x23, &x370);
- { uint64_t x373; uint64_t x372 = _mulx_u64(x11, x22, &x373);
- { uint64_t x375; uint8_t x376 = _addcarryx_u64(0x0, x358, x360, &x375);
- { uint64_t x378; uint8_t x379 = _addcarryx_u64(x376, x361, x363, &x378);
- { uint64_t x381; uint8_t x382 = _addcarryx_u64(x379, x364, x366, &x381);
- { uint64_t x384; uint8_t x385 = _addcarryx_u64(x382, x367, x369, &x384);
- { uint64_t x387; uint8_t x388 = _addcarryx_u64(x385, x370, x372, &x387);
- { uint64_t x390; uint8_t _ = _addcarryx_u64(0x0, x388, x373, &x390);
- { uint64_t x393; uint8_t x394 = _addcarryx_u64(0x0, x338, x357, &x393);
- { uint64_t x396; uint8_t x397 = _addcarryx_u64(x394, x341, x375, &x396);
- { uint64_t x399; uint8_t x400 = _addcarryx_u64(x397, x344, x378, &x399);
- { uint64_t x402; uint8_t x403 = _addcarryx_u64(x400, x347, x381, &x402);
- { uint64_t x405; uint8_t x406 = _addcarryx_u64(x403, x350, x384, &x405);
- { uint64_t x408; uint8_t x409 = _addcarryx_u64(x406, x353, x387, &x408);
- { uint64_t x411; uint8_t x412 = _addcarryx_u64(x409, x355, x390, &x411);
- { uint64_t _; uint64_t x414 = _mulx_u64(x393, 0xeeeeeeeeeeeeeeefL, &_);
- { uint64_t x418; uint64_t x417 = _mulx_u64(x414, 0xfffffffffffffff1L, &x418);
- { uint64_t x421; uint64_t x420 = _mulx_u64(x414, 0xffffffffffffffffL, &x421);
- { uint64_t x424; uint64_t x423 = _mulx_u64(x414, 0xffffffffffffffffL, &x424);
- { uint64_t x427; uint64_t x426 = _mulx_u64(x414, 0xffffffffffffffffL, &x427);
- { uint64_t x430; uint64_t x429 = _mulx_u64(x414, 0xffffffffffffffffL, &x430);
- { uint64_t x433; uint64_t x432 = _mulx_u64(x414, 0x3ffff, &x433);
- { uint64_t x435; uint8_t x436 = _addcarryx_u64(0x0, x418, x420, &x435);
- { uint64_t x438; uint8_t x439 = _addcarryx_u64(x436, x421, x423, &x438);
- { uint64_t x441; uint8_t x442 = _addcarryx_u64(x439, x424, x426, &x441);
- { uint64_t x444; uint8_t x445 = _addcarryx_u64(x442, x427, x429, &x444);
- { uint64_t x447; uint8_t x448 = _addcarryx_u64(x445, x430, x432, &x447);
- { uint64_t x450; uint8_t _ = _addcarryx_u64(0x0, x448, x433, &x450);
- { uint64_t _; uint8_t x454 = _addcarryx_u64(0x0, x393, x417, &_);
- { uint64_t x456; uint8_t x457 = _addcarryx_u64(x454, x396, x435, &x456);
- { uint64_t x459; uint8_t x460 = _addcarryx_u64(x457, x399, x438, &x459);
- { uint64_t x462; uint8_t x463 = _addcarryx_u64(x460, x402, x441, &x462);
- { uint64_t x465; uint8_t x466 = _addcarryx_u64(x463, x405, x444, &x465);
- { uint64_t x468; uint8_t x469 = _addcarryx_u64(x466, x408, x447, &x468);
- { uint64_t x471; uint8_t x472 = _addcarryx_u64(x469, x411, x450, &x471);
- { uint8_t x473 = (x472 + x412);
- { uint64_t x476; uint64_t x475 = _mulx_u64(x13, x15, &x476);
- { uint64_t x479; uint64_t x478 = _mulx_u64(x13, x17, &x479);
- { uint64_t x482; uint64_t x481 = _mulx_u64(x13, x19, &x482);
- { uint64_t x485; uint64_t x484 = _mulx_u64(x13, x21, &x485);
- { uint64_t x488; uint64_t x487 = _mulx_u64(x13, x23, &x488);
- { uint64_t x491; uint64_t x490 = _mulx_u64(x13, x22, &x491);
- { uint64_t x493; uint8_t x494 = _addcarryx_u64(0x0, x476, x478, &x493);
- { uint64_t x496; uint8_t x497 = _addcarryx_u64(x494, x479, x481, &x496);
- { uint64_t x499; uint8_t x500 = _addcarryx_u64(x497, x482, x484, &x499);
- { uint64_t x502; uint8_t x503 = _addcarryx_u64(x500, x485, x487, &x502);
- { uint64_t x505; uint8_t x506 = _addcarryx_u64(x503, x488, x490, &x505);
- { uint64_t x508; uint8_t _ = _addcarryx_u64(0x0, x506, x491, &x508);
- { uint64_t x511; uint8_t x512 = _addcarryx_u64(0x0, x456, x475, &x511);
- { uint64_t x514; uint8_t x515 = _addcarryx_u64(x512, x459, x493, &x514);
- { uint64_t x517; uint8_t x518 = _addcarryx_u64(x515, x462, x496, &x517);
- { uint64_t x520; uint8_t x521 = _addcarryx_u64(x518, x465, x499, &x520);
- { uint64_t x523; uint8_t x524 = _addcarryx_u64(x521, x468, x502, &x523);
- { uint64_t x526; uint8_t x527 = _addcarryx_u64(x524, x471, x505, &x526);
- { uint64_t x529; uint8_t x530 = _addcarryx_u64(x527, x473, x508, &x529);
- { uint64_t _; uint64_t x532 = _mulx_u64(x511, 0xeeeeeeeeeeeeeeefL, &_);
- { uint64_t x536; uint64_t x535 = _mulx_u64(x532, 0xfffffffffffffff1L, &x536);
- { uint64_t x539; uint64_t x538 = _mulx_u64(x532, 0xffffffffffffffffL, &x539);
- { uint64_t x542; uint64_t x541 = _mulx_u64(x532, 0xffffffffffffffffL, &x542);
- { uint64_t x545; uint64_t x544 = _mulx_u64(x532, 0xffffffffffffffffL, &x545);
- { uint64_t x548; uint64_t x547 = _mulx_u64(x532, 0xffffffffffffffffL, &x548);
- { uint64_t x551; uint64_t x550 = _mulx_u64(x532, 0x3ffff, &x551);
- { uint64_t x553; uint8_t x554 = _addcarryx_u64(0x0, x536, x538, &x553);
- { uint64_t x556; uint8_t x557 = _addcarryx_u64(x554, x539, x541, &x556);
- { uint64_t x559; uint8_t x560 = _addcarryx_u64(x557, x542, x544, &x559);
- { uint64_t x562; uint8_t x563 = _addcarryx_u64(x560, x545, x547, &x562);
- { uint64_t x565; uint8_t x566 = _addcarryx_u64(x563, x548, x550, &x565);
- { uint64_t x568; uint8_t _ = _addcarryx_u64(0x0, x566, x551, &x568);
- { uint64_t _; uint8_t x572 = _addcarryx_u64(0x0, x511, x535, &_);
- { uint64_t x574; uint8_t x575 = _addcarryx_u64(x572, x514, x553, &x574);
- { uint64_t x577; uint8_t x578 = _addcarryx_u64(x575, x517, x556, &x577);
- { uint64_t x580; uint8_t x581 = _addcarryx_u64(x578, x520, x559, &x580);
- { uint64_t x583; uint8_t x584 = _addcarryx_u64(x581, x523, x562, &x583);
- { uint64_t x586; uint8_t x587 = _addcarryx_u64(x584, x526, x565, &x586);
- { uint64_t x589; uint8_t x590 = _addcarryx_u64(x587, x529, x568, &x589);
- { uint8_t x591 = (x590 + x530);
- { uint64_t x594; uint64_t x593 = _mulx_u64(x12, x15, &x594);
- { uint64_t x597; uint64_t x596 = _mulx_u64(x12, x17, &x597);
- { uint64_t x600; uint64_t x599 = _mulx_u64(x12, x19, &x600);
- { uint64_t x603; uint64_t x602 = _mulx_u64(x12, x21, &x603);
- { uint64_t x606; uint64_t x605 = _mulx_u64(x12, x23, &x606);
- { uint64_t x609; uint64_t x608 = _mulx_u64(x12, x22, &x609);
- { uint64_t x611; uint8_t x612 = _addcarryx_u64(0x0, x594, x596, &x611);
- { uint64_t x614; uint8_t x615 = _addcarryx_u64(x612, x597, x599, &x614);
- { uint64_t x617; uint8_t x618 = _addcarryx_u64(x615, x600, x602, &x617);
- { uint64_t x620; uint8_t x621 = _addcarryx_u64(x618, x603, x605, &x620);
- { uint64_t x623; uint8_t x624 = _addcarryx_u64(x621, x606, x608, &x623);
- { uint64_t x626; uint8_t _ = _addcarryx_u64(0x0, x624, x609, &x626);
- { uint64_t x629; uint8_t x630 = _addcarryx_u64(0x0, x574, x593, &x629);
- { uint64_t x632; uint8_t x633 = _addcarryx_u64(x630, x577, x611, &x632);
- { uint64_t x635; uint8_t x636 = _addcarryx_u64(x633, x580, x614, &x635);
- { uint64_t x638; uint8_t x639 = _addcarryx_u64(x636, x583, x617, &x638);
- { uint64_t x641; uint8_t x642 = _addcarryx_u64(x639, x586, x620, &x641);
- { uint64_t x644; uint8_t x645 = _addcarryx_u64(x642, x589, x623, &x644);
- { uint64_t x647; uint8_t x648 = _addcarryx_u64(x645, x591, x626, &x647);
- { uint64_t _; uint64_t x650 = _mulx_u64(x629, 0xeeeeeeeeeeeeeeefL, &_);
- { uint64_t x654; uint64_t x653 = _mulx_u64(x650, 0xfffffffffffffff1L, &x654);
- { uint64_t x657; uint64_t x656 = _mulx_u64(x650, 0xffffffffffffffffL, &x657);
- { uint64_t x660; uint64_t x659 = _mulx_u64(x650, 0xffffffffffffffffL, &x660);
- { uint64_t x663; uint64_t x662 = _mulx_u64(x650, 0xffffffffffffffffL, &x663);
- { uint64_t x666; uint64_t x665 = _mulx_u64(x650, 0xffffffffffffffffL, &x666);
- { uint64_t x669; uint64_t x668 = _mulx_u64(x650, 0x3ffff, &x669);
- { uint64_t x671; uint8_t x672 = _addcarryx_u64(0x0, x654, x656, &x671);
- { uint64_t x674; uint8_t x675 = _addcarryx_u64(x672, x657, x659, &x674);
- { uint64_t x677; uint8_t x678 = _addcarryx_u64(x675, x660, x662, &x677);
- { uint64_t x680; uint8_t x681 = _addcarryx_u64(x678, x663, x665, &x680);
- { uint64_t x683; uint8_t x684 = _addcarryx_u64(x681, x666, x668, &x683);
- { uint64_t x686; uint8_t _ = _addcarryx_u64(0x0, x684, x669, &x686);
- { uint64_t _; uint8_t x690 = _addcarryx_u64(0x0, x629, x653, &_);
- { uint64_t x692; uint8_t x693 = _addcarryx_u64(x690, x632, x671, &x692);
- { uint64_t x695; uint8_t x696 = _addcarryx_u64(x693, x635, x674, &x695);
- { uint64_t x698; uint8_t x699 = _addcarryx_u64(x696, x638, x677, &x698);
- { uint64_t x701; uint8_t x702 = _addcarryx_u64(x699, x641, x680, &x701);
- { uint64_t x704; uint8_t x705 = _addcarryx_u64(x702, x644, x683, &x704);
- { uint64_t x707; uint8_t x708 = _addcarryx_u64(x705, x647, x686, &x707);
- { uint8_t x709 = (x708 + x648);
- { uint64_t x711; uint8_t x712 = _subborrow_u64(0x0, x692, 0xfffffffffffffff1L, &x711);
- { uint64_t x714; uint8_t x715 = _subborrow_u64(x712, x695, 0xffffffffffffffffL, &x714);
- { uint64_t x717; uint8_t x718 = _subborrow_u64(x715, x698, 0xffffffffffffffffL, &x717);
- { uint64_t x720; uint8_t x721 = _subborrow_u64(x718, x701, 0xffffffffffffffffL, &x720);
- { uint64_t x723; uint8_t x724 = _subborrow_u64(x721, x704, 0xffffffffffffffffL, &x723);
- { uint64_t x726; uint8_t x727 = _subborrow_u64(x724, x707, 0x3ffff, &x726);
- { uint64_t _; uint8_t x730 = _subborrow_u64(x727, x709, 0x0, &_);
- { uint64_t x731 = cmovznz64(x730, x726, x707);
- { uint64_t x732 = cmovznz64(x730, x723, x704);
- { uint64_t x733 = cmovznz64(x730, x720, x701);
- { uint64_t x734 = cmovznz64(x730, x717, x698);
- { uint64_t x735 = cmovznz64(x730, x714, x695);
- { uint64_t x736 = cmovznz64(x730, x711, x692);
- out[0] = x736;
- out[1] = x735;
- out[2] = x734;
- out[3] = x733;
- out[4] = x732;
- out[5] = x731;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e338m15_6limbs/femul.v b/src/Specific/montgomery64_2e338m15_6limbs/femul.v
deleted file mode 100644
index 1261fa7ce..000000000
--- a/src/Specific/montgomery64_2e338m15_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e338m15_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e338m15_6limbs/femulDisplay.log b/src/Specific/montgomery64_2e338m15_6limbs/femulDisplay.log
deleted file mode 100644
index fda5a2d0a..000000000
--- a/src/Specific/montgomery64_2e338m15_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,252 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint64_t x26 = mulx_u64(x5, x15);
- uint64_t x28, uint64_t x29 = mulx_u64(x5, x17);
- uint64_t x31, uint64_t x32 = mulx_u64(x5, x19);
- uint64_t x34, uint64_t x35 = mulx_u64(x5, x21);
- uint64_t x37, uint64_t x38 = mulx_u64(x5, x23);
- uint64_t x40, uint64_t x41 = mulx_u64(x5, x22);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x26, x28);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x29, x31);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x47, x32, x34);
- uint64_t x52, uint8_t x53 = addcarryx_u64(x50, x35, x37);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x38, x40);
- uint64_t x58, uint8_t _ = addcarryx_u64(0x0, x56, x41);
- uint64_t x61, uint64_t _ = mulx_u64(x25, 0xeeeeeeeeeeeeeeefL);
- uint64_t x64, uint64_t x65 = mulx_u64(x61, 0xfffffffffffffff1L);
- uint64_t x67, uint64_t x68 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x70, uint64_t x71 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x73, uint64_t x74 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x76, uint64_t x77 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x79, uint64_t x80 = mulx_u64(x61, 0x3ffff);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x65, x67);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x68, x70);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x71, x73);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x74, x76);
- uint64_t x94, uint8_t x95 = addcarryx_u64(x92, x77, x79);
- uint64_t x97, uint8_t _ = addcarryx_u64(0x0, x95, x80);
- uint64_t _, uint8_t x101 = addcarryx_u64(0x0, x25, x64);
- uint64_t x103, uint8_t x104 = addcarryx_u64(x101, x43, x82);
- uint64_t x106, uint8_t x107 = addcarryx_u64(x104, x46, x85);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x49, x88);
- uint64_t x112, uint8_t x113 = addcarryx_u64(x110, x52, x91);
- uint64_t x115, uint8_t x116 = addcarryx_u64(x113, x55, x94);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x58, x97);
- uint64_t x121, uint64_t x122 = mulx_u64(x7, x15);
- uint64_t x124, uint64_t x125 = mulx_u64(x7, x17);
- uint64_t x127, uint64_t x128 = mulx_u64(x7, x19);
- uint64_t x130, uint64_t x131 = mulx_u64(x7, x21);
- uint64_t x133, uint64_t x134 = mulx_u64(x7, x23);
- uint64_t x136, uint64_t x137 = mulx_u64(x7, x22);
- uint64_t x139, uint8_t x140 = addcarryx_u64(0x0, x122, x124);
- uint64_t x142, uint8_t x143 = addcarryx_u64(x140, x125, x127);
- uint64_t x145, uint8_t x146 = addcarryx_u64(x143, x128, x130);
- uint64_t x148, uint8_t x149 = addcarryx_u64(x146, x131, x133);
- uint64_t x151, uint8_t x152 = addcarryx_u64(x149, x134, x136);
- uint64_t x154, uint8_t _ = addcarryx_u64(0x0, x152, x137);
- uint64_t x157, uint8_t x158 = addcarryx_u64(0x0, x103, x121);
- uint64_t x160, uint8_t x161 = addcarryx_u64(x158, x106, x139);
- uint64_t x163, uint8_t x164 = addcarryx_u64(x161, x109, x142);
- uint64_t x166, uint8_t x167 = addcarryx_u64(x164, x112, x145);
- uint64_t x169, uint8_t x170 = addcarryx_u64(x167, x115, x148);
- uint64_t x172, uint8_t x173 = addcarryx_u64(x170, x118, x151);
- uint64_t x175, uint8_t x176 = addcarryx_u64(x173, x119, x154);
- uint64_t x178, uint64_t _ = mulx_u64(x157, 0xeeeeeeeeeeeeeeefL);
- uint64_t x181, uint64_t x182 = mulx_u64(x178, 0xfffffffffffffff1L);
- uint64_t x184, uint64_t x185 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x187, uint64_t x188 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x190, uint64_t x191 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x193, uint64_t x194 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x196, uint64_t x197 = mulx_u64(x178, 0x3ffff);
- uint64_t x199, uint8_t x200 = addcarryx_u64(0x0, x182, x184);
- uint64_t x202, uint8_t x203 = addcarryx_u64(x200, x185, x187);
- uint64_t x205, uint8_t x206 = addcarryx_u64(x203, x188, x190);
- uint64_t x208, uint8_t x209 = addcarryx_u64(x206, x191, x193);
- uint64_t x211, uint8_t x212 = addcarryx_u64(x209, x194, x196);
- uint64_t x214, uint8_t _ = addcarryx_u64(0x0, x212, x197);
- uint64_t _, uint8_t x218 = addcarryx_u64(0x0, x157, x181);
- uint64_t x220, uint8_t x221 = addcarryx_u64(x218, x160, x199);
- uint64_t x223, uint8_t x224 = addcarryx_u64(x221, x163, x202);
- uint64_t x226, uint8_t x227 = addcarryx_u64(x224, x166, x205);
- uint64_t x229, uint8_t x230 = addcarryx_u64(x227, x169, x208);
- uint64_t x232, uint8_t x233 = addcarryx_u64(x230, x172, x211);
- uint64_t x235, uint8_t x236 = addcarryx_u64(x233, x175, x214);
- uint8_t x237 = (x236 + x176);
- uint64_t x239, uint64_t x240 = mulx_u64(x9, x15);
- uint64_t x242, uint64_t x243 = mulx_u64(x9, x17);
- uint64_t x245, uint64_t x246 = mulx_u64(x9, x19);
- uint64_t x248, uint64_t x249 = mulx_u64(x9, x21);
- uint64_t x251, uint64_t x252 = mulx_u64(x9, x23);
- uint64_t x254, uint64_t x255 = mulx_u64(x9, x22);
- uint64_t x257, uint8_t x258 = addcarryx_u64(0x0, x240, x242);
- uint64_t x260, uint8_t x261 = addcarryx_u64(x258, x243, x245);
- uint64_t x263, uint8_t x264 = addcarryx_u64(x261, x246, x248);
- uint64_t x266, uint8_t x267 = addcarryx_u64(x264, x249, x251);
- uint64_t x269, uint8_t x270 = addcarryx_u64(x267, x252, x254);
- uint64_t x272, uint8_t _ = addcarryx_u64(0x0, x270, x255);
- uint64_t x275, uint8_t x276 = addcarryx_u64(0x0, x220, x239);
- uint64_t x278, uint8_t x279 = addcarryx_u64(x276, x223, x257);
- uint64_t x281, uint8_t x282 = addcarryx_u64(x279, x226, x260);
- uint64_t x284, uint8_t x285 = addcarryx_u64(x282, x229, x263);
- uint64_t x287, uint8_t x288 = addcarryx_u64(x285, x232, x266);
- uint64_t x290, uint8_t x291 = addcarryx_u64(x288, x235, x269);
- uint64_t x293, uint8_t x294 = addcarryx_u64(x291, x237, x272);
- uint64_t x296, uint64_t _ = mulx_u64(x275, 0xeeeeeeeeeeeeeeefL);
- uint64_t x299, uint64_t x300 = mulx_u64(x296, 0xfffffffffffffff1L);
- uint64_t x302, uint64_t x303 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x305, uint64_t x306 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x308, uint64_t x309 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x311, uint64_t x312 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x314, uint64_t x315 = mulx_u64(x296, 0x3ffff);
- uint64_t x317, uint8_t x318 = addcarryx_u64(0x0, x300, x302);
- uint64_t x320, uint8_t x321 = addcarryx_u64(x318, x303, x305);
- uint64_t x323, uint8_t x324 = addcarryx_u64(x321, x306, x308);
- uint64_t x326, uint8_t x327 = addcarryx_u64(x324, x309, x311);
- uint64_t x329, uint8_t x330 = addcarryx_u64(x327, x312, x314);
- uint64_t x332, uint8_t _ = addcarryx_u64(0x0, x330, x315);
- uint64_t _, uint8_t x336 = addcarryx_u64(0x0, x275, x299);
- uint64_t x338, uint8_t x339 = addcarryx_u64(x336, x278, x317);
- uint64_t x341, uint8_t x342 = addcarryx_u64(x339, x281, x320);
- uint64_t x344, uint8_t x345 = addcarryx_u64(x342, x284, x323);
- uint64_t x347, uint8_t x348 = addcarryx_u64(x345, x287, x326);
- uint64_t x350, uint8_t x351 = addcarryx_u64(x348, x290, x329);
- uint64_t x353, uint8_t x354 = addcarryx_u64(x351, x293, x332);
- uint8_t x355 = (x354 + x294);
- uint64_t x357, uint64_t x358 = mulx_u64(x11, x15);
- uint64_t x360, uint64_t x361 = mulx_u64(x11, x17);
- uint64_t x363, uint64_t x364 = mulx_u64(x11, x19);
- uint64_t x366, uint64_t x367 = mulx_u64(x11, x21);
- uint64_t x369, uint64_t x370 = mulx_u64(x11, x23);
- uint64_t x372, uint64_t x373 = mulx_u64(x11, x22);
- uint64_t x375, uint8_t x376 = addcarryx_u64(0x0, x358, x360);
- uint64_t x378, uint8_t x379 = addcarryx_u64(x376, x361, x363);
- uint64_t x381, uint8_t x382 = addcarryx_u64(x379, x364, x366);
- uint64_t x384, uint8_t x385 = addcarryx_u64(x382, x367, x369);
- uint64_t x387, uint8_t x388 = addcarryx_u64(x385, x370, x372);
- uint64_t x390, uint8_t _ = addcarryx_u64(0x0, x388, x373);
- uint64_t x393, uint8_t x394 = addcarryx_u64(0x0, x338, x357);
- uint64_t x396, uint8_t x397 = addcarryx_u64(x394, x341, x375);
- uint64_t x399, uint8_t x400 = addcarryx_u64(x397, x344, x378);
- uint64_t x402, uint8_t x403 = addcarryx_u64(x400, x347, x381);
- uint64_t x405, uint8_t x406 = addcarryx_u64(x403, x350, x384);
- uint64_t x408, uint8_t x409 = addcarryx_u64(x406, x353, x387);
- uint64_t x411, uint8_t x412 = addcarryx_u64(x409, x355, x390);
- uint64_t x414, uint64_t _ = mulx_u64(x393, 0xeeeeeeeeeeeeeeefL);
- uint64_t x417, uint64_t x418 = mulx_u64(x414, 0xfffffffffffffff1L);
- uint64_t x420, uint64_t x421 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x423, uint64_t x424 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x426, uint64_t x427 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x429, uint64_t x430 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x432, uint64_t x433 = mulx_u64(x414, 0x3ffff);
- uint64_t x435, uint8_t x436 = addcarryx_u64(0x0, x418, x420);
- uint64_t x438, uint8_t x439 = addcarryx_u64(x436, x421, x423);
- uint64_t x441, uint8_t x442 = addcarryx_u64(x439, x424, x426);
- uint64_t x444, uint8_t x445 = addcarryx_u64(x442, x427, x429);
- uint64_t x447, uint8_t x448 = addcarryx_u64(x445, x430, x432);
- uint64_t x450, uint8_t _ = addcarryx_u64(0x0, x448, x433);
- uint64_t _, uint8_t x454 = addcarryx_u64(0x0, x393, x417);
- uint64_t x456, uint8_t x457 = addcarryx_u64(x454, x396, x435);
- uint64_t x459, uint8_t x460 = addcarryx_u64(x457, x399, x438);
- uint64_t x462, uint8_t x463 = addcarryx_u64(x460, x402, x441);
- uint64_t x465, uint8_t x466 = addcarryx_u64(x463, x405, x444);
- uint64_t x468, uint8_t x469 = addcarryx_u64(x466, x408, x447);
- uint64_t x471, uint8_t x472 = addcarryx_u64(x469, x411, x450);
- uint8_t x473 = (x472 + x412);
- uint64_t x475, uint64_t x476 = mulx_u64(x13, x15);
- uint64_t x478, uint64_t x479 = mulx_u64(x13, x17);
- uint64_t x481, uint64_t x482 = mulx_u64(x13, x19);
- uint64_t x484, uint64_t x485 = mulx_u64(x13, x21);
- uint64_t x487, uint64_t x488 = mulx_u64(x13, x23);
- uint64_t x490, uint64_t x491 = mulx_u64(x13, x22);
- uint64_t x493, uint8_t x494 = addcarryx_u64(0x0, x476, x478);
- uint64_t x496, uint8_t x497 = addcarryx_u64(x494, x479, x481);
- uint64_t x499, uint8_t x500 = addcarryx_u64(x497, x482, x484);
- uint64_t x502, uint8_t x503 = addcarryx_u64(x500, x485, x487);
- uint64_t x505, uint8_t x506 = addcarryx_u64(x503, x488, x490);
- uint64_t x508, uint8_t _ = addcarryx_u64(0x0, x506, x491);
- uint64_t x511, uint8_t x512 = addcarryx_u64(0x0, x456, x475);
- uint64_t x514, uint8_t x515 = addcarryx_u64(x512, x459, x493);
- uint64_t x517, uint8_t x518 = addcarryx_u64(x515, x462, x496);
- uint64_t x520, uint8_t x521 = addcarryx_u64(x518, x465, x499);
- uint64_t x523, uint8_t x524 = addcarryx_u64(x521, x468, x502);
- uint64_t x526, uint8_t x527 = addcarryx_u64(x524, x471, x505);
- uint64_t x529, uint8_t x530 = addcarryx_u64(x527, x473, x508);
- uint64_t x532, uint64_t _ = mulx_u64(x511, 0xeeeeeeeeeeeeeeefL);
- uint64_t x535, uint64_t x536 = mulx_u64(x532, 0xfffffffffffffff1L);
- uint64_t x538, uint64_t x539 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x541, uint64_t x542 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x544, uint64_t x545 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x547, uint64_t x548 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x550, uint64_t x551 = mulx_u64(x532, 0x3ffff);
- uint64_t x553, uint8_t x554 = addcarryx_u64(0x0, x536, x538);
- uint64_t x556, uint8_t x557 = addcarryx_u64(x554, x539, x541);
- uint64_t x559, uint8_t x560 = addcarryx_u64(x557, x542, x544);
- uint64_t x562, uint8_t x563 = addcarryx_u64(x560, x545, x547);
- uint64_t x565, uint8_t x566 = addcarryx_u64(x563, x548, x550);
- uint64_t x568, uint8_t _ = addcarryx_u64(0x0, x566, x551);
- uint64_t _, uint8_t x572 = addcarryx_u64(0x0, x511, x535);
- uint64_t x574, uint8_t x575 = addcarryx_u64(x572, x514, x553);
- uint64_t x577, uint8_t x578 = addcarryx_u64(x575, x517, x556);
- uint64_t x580, uint8_t x581 = addcarryx_u64(x578, x520, x559);
- uint64_t x583, uint8_t x584 = addcarryx_u64(x581, x523, x562);
- uint64_t x586, uint8_t x587 = addcarryx_u64(x584, x526, x565);
- uint64_t x589, uint8_t x590 = addcarryx_u64(x587, x529, x568);
- uint8_t x591 = (x590 + x530);
- uint64_t x593, uint64_t x594 = mulx_u64(x12, x15);
- uint64_t x596, uint64_t x597 = mulx_u64(x12, x17);
- uint64_t x599, uint64_t x600 = mulx_u64(x12, x19);
- uint64_t x602, uint64_t x603 = mulx_u64(x12, x21);
- uint64_t x605, uint64_t x606 = mulx_u64(x12, x23);
- uint64_t x608, uint64_t x609 = mulx_u64(x12, x22);
- uint64_t x611, uint8_t x612 = addcarryx_u64(0x0, x594, x596);
- uint64_t x614, uint8_t x615 = addcarryx_u64(x612, x597, x599);
- uint64_t x617, uint8_t x618 = addcarryx_u64(x615, x600, x602);
- uint64_t x620, uint8_t x621 = addcarryx_u64(x618, x603, x605);
- uint64_t x623, uint8_t x624 = addcarryx_u64(x621, x606, x608);
- uint64_t x626, uint8_t _ = addcarryx_u64(0x0, x624, x609);
- uint64_t x629, uint8_t x630 = addcarryx_u64(0x0, x574, x593);
- uint64_t x632, uint8_t x633 = addcarryx_u64(x630, x577, x611);
- uint64_t x635, uint8_t x636 = addcarryx_u64(x633, x580, x614);
- uint64_t x638, uint8_t x639 = addcarryx_u64(x636, x583, x617);
- uint64_t x641, uint8_t x642 = addcarryx_u64(x639, x586, x620);
- uint64_t x644, uint8_t x645 = addcarryx_u64(x642, x589, x623);
- uint64_t x647, uint8_t x648 = addcarryx_u64(x645, x591, x626);
- uint64_t x650, uint64_t _ = mulx_u64(x629, 0xeeeeeeeeeeeeeeefL);
- uint64_t x653, uint64_t x654 = mulx_u64(x650, 0xfffffffffffffff1L);
- uint64_t x656, uint64_t x657 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x659, uint64_t x660 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x662, uint64_t x663 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x665, uint64_t x666 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x668, uint64_t x669 = mulx_u64(x650, 0x3ffff);
- uint64_t x671, uint8_t x672 = addcarryx_u64(0x0, x654, x656);
- uint64_t x674, uint8_t x675 = addcarryx_u64(x672, x657, x659);
- uint64_t x677, uint8_t x678 = addcarryx_u64(x675, x660, x662);
- uint64_t x680, uint8_t x681 = addcarryx_u64(x678, x663, x665);
- uint64_t x683, uint8_t x684 = addcarryx_u64(x681, x666, x668);
- uint64_t x686, uint8_t _ = addcarryx_u64(0x0, x684, x669);
- uint64_t _, uint8_t x690 = addcarryx_u64(0x0, x629, x653);
- uint64_t x692, uint8_t x693 = addcarryx_u64(x690, x632, x671);
- uint64_t x695, uint8_t x696 = addcarryx_u64(x693, x635, x674);
- uint64_t x698, uint8_t x699 = addcarryx_u64(x696, x638, x677);
- uint64_t x701, uint8_t x702 = addcarryx_u64(x699, x641, x680);
- uint64_t x704, uint8_t x705 = addcarryx_u64(x702, x644, x683);
- uint64_t x707, uint8_t x708 = addcarryx_u64(x705, x647, x686);
- uint8_t x709 = (x708 + x648);
- uint64_t x711, uint8_t x712 = subborrow_u64(0x0, x692, 0xfffffffffffffff1L);
- uint64_t x714, uint8_t x715 = subborrow_u64(x712, x695, 0xffffffffffffffffL);
- uint64_t x717, uint8_t x718 = subborrow_u64(x715, x698, 0xffffffffffffffffL);
- uint64_t x720, uint8_t x721 = subborrow_u64(x718, x701, 0xffffffffffffffffL);
- uint64_t x723, uint8_t x724 = subborrow_u64(x721, x704, 0xffffffffffffffffL);
- uint64_t x726, uint8_t x727 = subborrow_u64(x724, x707, 0x3ffff);
- uint64_t _, uint8_t x730 = subborrow_u64(x727, x709, 0x0);
- uint64_t x731 = cmovznz64(x730, x726, x707);
- uint64_t x732 = cmovznz64(x730, x723, x704);
- uint64_t x733 = cmovznz64(x730, x720, x701);
- uint64_t x734 = cmovznz64(x730, x717, x698);
- uint64_t x735 = cmovznz64(x730, x714, x695);
- uint64_t x736 = cmovznz64(x730, x711, x692);
- return (x731, x732, x733, x734, x735, x736))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e338m15_6limbs/femulDisplay.v b/src/Specific/montgomery64_2e338m15_6limbs/femulDisplay.v
deleted file mode 100644
index 7859aab29..000000000
--- a/src/Specific/montgomery64_2e338m15_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e338m15_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e338m15_6limbs/fenz.c b/src/Specific/montgomery64_2e338m15_6limbs/fenz.c
deleted file mode 100644
index c93f74257..000000000
--- a/src/Specific/montgomery64_2e338m15_6limbs/fenz.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x11 = (x10 | x9);
- { uint64_t x12 = (x8 | x11);
- { uint64_t x13 = (x6 | x12);
- { uint64_t x14 = (x4 | x13);
- { uint64_t x15 = (x2 | x14);
- out[0] = x15;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e338m15_6limbs/fenz.v b/src/Specific/montgomery64_2e338m15_6limbs/fenz.v
deleted file mode 100644
index 7d51939bd..000000000
--- a/src/Specific/montgomery64_2e338m15_6limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e338m15_6limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e338m15_6limbs/fenzDisplay.log b/src/Specific/montgomery64_2e338m15_6limbs/fenzDisplay.log
deleted file mode 100644
index f39f1d91b..000000000
--- a/src/Specific/montgomery64_2e338m15_6limbs/fenzDisplay.log
+++ /dev/null
@@ -1,12 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x11 = (x10 | x9);
- uint64_t x12 = (x8 | x11);
- uint64_t x13 = (x6 | x12);
- uint64_t x14 = (x4 | x13);
- uint64_t x15 = (x2 | x14);
- return x15)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e338m15_6limbs/fenzDisplay.v b/src/Specific/montgomery64_2e338m15_6limbs/fenzDisplay.v
deleted file mode 100644
index 5342b4d9a..000000000
--- a/src/Specific/montgomery64_2e338m15_6limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e338m15_6limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e338m15_6limbs/feopp.c b/src/Specific/montgomery64_2e338m15_6limbs/feopp.c
deleted file mode 100644
index 0ded68efb..000000000
--- a/src/Specific/montgomery64_2e338m15_6limbs/feopp.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feopp(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12; uint8_t x13 = _subborrow_u64(0x0, 0x0, x2, &x12);
- { uint64_t x15; uint8_t x16 = _subborrow_u64(x13, 0x0, x4, &x15);
- { uint64_t x18; uint8_t x19 = _subborrow_u64(x16, 0x0, x6, &x18);
- { uint64_t x21; uint8_t x22 = _subborrow_u64(x19, 0x0, x8, &x21);
- { uint64_t x24; uint8_t x25 = _subborrow_u64(x22, 0x0, x10, &x24);
- { uint64_t x27; uint8_t x28 = _subborrow_u64(x25, 0x0, x9, &x27);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0xfffffffffffffff1L);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(0x0, x12, x30, &x32);
- { uint64_t x34 = (x29 & 0xffffffffffffffffL);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x33, x15, x34, &x36);
- { uint64_t x38 = (x29 & 0xffffffffffffffffL);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x37, x18, x38, &x40);
- { uint64_t x42 = (x29 & 0xffffffffffffffffL);
- { uint64_t x44; uint8_t x45 = _addcarryx_u64(x41, x21, x42, &x44);
- { uint64_t x46 = (x29 & 0xffffffffffffffffL);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x45, x24, x46, &x48);
- { uint64_t x50 = (x29 & 0x3ffff);
- { uint64_t x52; uint8_t _ = _addcarryx_u64(x49, x27, x50, &x52);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e338m15_6limbs/feopp.v b/src/Specific/montgomery64_2e338m15_6limbs/feopp.v
deleted file mode 100644
index 2ef0bcf8a..000000000
--- a/src/Specific/montgomery64_2e338m15_6limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e338m15_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e338m15_6limbs/feoppDisplay.log b/src/Specific/montgomery64_2e338m15_6limbs/feoppDisplay.log
deleted file mode 100644
index eadb1d5a3..000000000
--- a/src/Specific/montgomery64_2e338m15_6limbs/feoppDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x15, uint8_t x16 = subborrow_u64(x13, 0x0, x4);
- uint64_t x18, uint8_t x19 = subborrow_u64(x16, 0x0, x6);
- uint64_t x21, uint8_t x22 = subborrow_u64(x19, 0x0, x8);
- uint64_t x24, uint8_t x25 = subborrow_u64(x22, 0x0, x10);
- uint64_t x27, uint8_t x28 = subborrow_u64(x25, 0x0, x9);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0xfffffffffffffff1L);
- uint64_t x32, uint8_t x33 = addcarryx_u64(0x0, x12, x30);
- uint64_t x34 = (x29 & 0xffffffffffffffffL);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x33, x15, x34);
- uint64_t x38 = (x29 & 0xffffffffffffffffL);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x37, x18, x38);
- uint64_t x42 = (x29 & 0xffffffffffffffffL);
- uint64_t x44, uint8_t x45 = addcarryx_u64(x41, x21, x42);
- uint64_t x46 = (x29 & 0xffffffffffffffffL);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x45, x24, x46);
- uint64_t x50 = (x29 & 0x3ffff);
- uint64_t x52, uint8_t _ = addcarryx_u64(x49, x27, x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e338m15_6limbs/feoppDisplay.v b/src/Specific/montgomery64_2e338m15_6limbs/feoppDisplay.v
deleted file mode 100644
index 4ae43c87b..000000000
--- a/src/Specific/montgomery64_2e338m15_6limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e338m15_6limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e338m15_6limbs/fesquare.c b/src/Specific/montgomery64_2e338m15_6limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e338m15_6limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e338m15_6limbs/fesub.c b/src/Specific/montgomery64_2e338m15_6limbs/fesub.c
deleted file mode 100644
index 5fbb3bd1e..000000000
--- a/src/Specific/montgomery64_2e338m15_6limbs/fesub.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _subborrow_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _subborrow_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _subborrow_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _subborrow_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _subborrow_u64(x38, x12, x22, &x40);
- { uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- { uint64_t x43 = (x42 & 0xfffffffffffffff1L);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(0x0, x25, x43, &x45);
- { uint64_t x47 = (x42 & 0xffffffffffffffffL);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x46, x28, x47, &x49);
- { uint64_t x51 = (x42 & 0xffffffffffffffffL);
- { uint64_t x53; uint8_t x54 = _addcarryx_u64(x50, x31, x51, &x53);
- { uint64_t x55 = (x42 & 0xffffffffffffffffL);
- { uint64_t x57; uint8_t x58 = _addcarryx_u64(x54, x34, x55, &x57);
- { uint64_t x59 = (x42 & 0xffffffffffffffffL);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x58, x37, x59, &x61);
- { uint64_t x63 = (x42 & 0x3ffff);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(x62, x40, x63, &x65);
- out[0] = x45;
- out[1] = x49;
- out[2] = x53;
- out[3] = x57;
- out[4] = x61;
- out[5] = x65;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e338m15_6limbs/fesub.v b/src/Specific/montgomery64_2e338m15_6limbs/fesub.v
deleted file mode 100644
index 8a750d9d2..000000000
--- a/src/Specific/montgomery64_2e338m15_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e338m15_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e338m15_6limbs/fesubDisplay.log b/src/Specific/montgomery64_2e338m15_6limbs/fesubDisplay.log
deleted file mode 100644
index 1a34e9483..000000000
--- a/src/Specific/montgomery64_2e338m15_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = subborrow_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = subborrow_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = subborrow_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = subborrow_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = subborrow_u64(x38, x12, x22);
- uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- uint64_t x43 = (x42 & 0xfffffffffffffff1L);
- uint64_t x45, uint8_t x46 = addcarryx_u64(0x0, x25, x43);
- uint64_t x47 = (x42 & 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x46, x28, x47);
- uint64_t x51 = (x42 & 0xffffffffffffffffL);
- uint64_t x53, uint8_t x54 = addcarryx_u64(x50, x31, x51);
- uint64_t x55 = (x42 & 0xffffffffffffffffL);
- uint64_t x57, uint8_t x58 = addcarryx_u64(x54, x34, x55);
- uint64_t x59 = (x42 & 0xffffffffffffffffL);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x58, x37, x59);
- uint64_t x63 = (x42 & 0x3ffff);
- uint64_t x65, uint8_t _ = addcarryx_u64(x62, x40, x63);
- (Return x65, Return x61, Return x57, Return x53, Return x49, Return x45))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e338m15_6limbs/fesubDisplay.v b/src/Specific/montgomery64_2e338m15_6limbs/fesubDisplay.v
deleted file mode 100644
index 01ad028a6..000000000
--- a/src/Specific/montgomery64_2e338m15_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e338m15_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e338m15_6limbs/py_interpreter.sh b/src/Specific/montgomery64_2e338m15_6limbs/py_interpreter.sh
deleted file mode 100755
index b1c53f325..000000000
--- a/src/Specific/montgomery64_2e338m15_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**338 - 15' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e369m25_6limbs/CurveParameters.v b/src/Specific/montgomery64_2e369m25_6limbs/CurveParameters.v
deleted file mode 100644
index 5cddeef19..000000000
--- a/src/Specific/montgomery64_2e369m25_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^369 - 25
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 64;
- bitwidth := 64;
- s := 2^369;
- c := [(1, 25)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e369m25_6limbs/Synthesis.v b/src/Specific/montgomery64_2e369m25_6limbs/Synthesis.v
deleted file mode 100644
index e6e41bb51..000000000
--- a/src/Specific/montgomery64_2e369m25_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e369m25_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/montgomery64_2e369m25_6limbs/compiler.sh b/src/Specific/montgomery64_2e369m25_6limbs/compiler.sh
deleted file mode 100755
index 095bc944c..000000000
--- a/src/Specific/montgomery64_2e369m25_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='47' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<369) - 25' "$@"
diff --git a/src/Specific/montgomery64_2e369m25_6limbs/compilerxx.sh b/src/Specific/montgomery64_2e369m25_6limbs/compilerxx.sh
deleted file mode 100755
index 9e6a5894e..000000000
--- a/src/Specific/montgomery64_2e369m25_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='47' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<369) - 25' "$@"
diff --git a/src/Specific/montgomery64_2e369m25_6limbs/feadd.c b/src/Specific/montgomery64_2e369m25_6limbs/feadd.c
deleted file mode 100644
index 45754f978..000000000
--- a/src/Specific/montgomery64_2e369m25_6limbs/feadd.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _addcarryx_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _addcarryx_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x38, x12, x22, &x40);
- { uint64_t x43; uint8_t x44 = _subborrow_u64(0x0, x25, 0xffffffffffffffe7L, &x43);
- { uint64_t x46; uint8_t x47 = _subborrow_u64(x44, x28, 0xffffffffffffffffL, &x46);
- { uint64_t x49; uint8_t x50 = _subborrow_u64(x47, x31, 0xffffffffffffffffL, &x49);
- { uint64_t x52; uint8_t x53 = _subborrow_u64(x50, x34, 0xffffffffffffffffL, &x52);
- { uint64_t x55; uint8_t x56 = _subborrow_u64(x53, x37, 0xffffffffffffffffL, &x55);
- { uint64_t x58; uint8_t x59 = _subborrow_u64(x56, x40, 0x1ffffffffffff, &x58);
- { uint64_t _; uint8_t x62 = _subborrow_u64(x59, x41, 0x0, &_);
- { uint64_t x63 = cmovznz64(x62, x58, x40);
- { uint64_t x64 = cmovznz64(x62, x55, x37);
- { uint64_t x65 = cmovznz64(x62, x52, x34);
- { uint64_t x66 = cmovznz64(x62, x49, x31);
- { uint64_t x67 = cmovznz64(x62, x46, x28);
- { uint64_t x68 = cmovznz64(x62, x43, x25);
- out[0] = x68;
- out[1] = x67;
- out[2] = x66;
- out[3] = x65;
- out[4] = x64;
- out[5] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e369m25_6limbs/feadd.v b/src/Specific/montgomery64_2e369m25_6limbs/feadd.v
deleted file mode 100644
index d4b7a3ec8..000000000
--- a/src/Specific/montgomery64_2e369m25_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e369m25_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e369m25_6limbs/feaddDisplay.log b/src/Specific/montgomery64_2e369m25_6limbs/feaddDisplay.log
deleted file mode 100644
index cacc80702..000000000
--- a/src/Specific/montgomery64_2e369m25_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = addcarryx_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = addcarryx_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = addcarryx_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = addcarryx_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x38, x12, x22);
- uint64_t x43, uint8_t x44 = subborrow_u64(0x0, x25, 0xffffffffffffffe7L);
- uint64_t x46, uint8_t x47 = subborrow_u64(x44, x28, 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = subborrow_u64(x47, x31, 0xffffffffffffffffL);
- uint64_t x52, uint8_t x53 = subborrow_u64(x50, x34, 0xffffffffffffffffL);
- uint64_t x55, uint8_t x56 = subborrow_u64(x53, x37, 0xffffffffffffffffL);
- uint64_t x58, uint8_t x59 = subborrow_u64(x56, x40, 0x1ffffffffffff);
- uint64_t _, uint8_t x62 = subborrow_u64(x59, x41, 0x0);
- uint64_t x63 = cmovznz64(x62, x58, x40);
- uint64_t x64 = cmovznz64(x62, x55, x37);
- uint64_t x65 = cmovznz64(x62, x52, x34);
- uint64_t x66 = cmovznz64(x62, x49, x31);
- uint64_t x67 = cmovznz64(x62, x46, x28);
- uint64_t x68 = cmovznz64(x62, x43, x25);
- return (x63, x64, x65, x66, x67, x68))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e369m25_6limbs/feaddDisplay.v b/src/Specific/montgomery64_2e369m25_6limbs/feaddDisplay.v
deleted file mode 100644
index c0d1571c2..000000000
--- a/src/Specific/montgomery64_2e369m25_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e369m25_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e369m25_6limbs/femul.c b/src/Specific/montgomery64_2e369m25_6limbs/femul.c
deleted file mode 100644
index 5ab804164..000000000
--- a/src/Specific/montgomery64_2e369m25_6limbs/femul.c
+++ /dev/null
@@ -1,266 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x26; uint64_t x25 = _mulx_u64(x5, x15, &x26);
- { uint64_t x29; uint64_t x28 = _mulx_u64(x5, x17, &x29);
- { uint64_t x32; uint64_t x31 = _mulx_u64(x5, x19, &x32);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x5, x21, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x5, x23, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x5, x22, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x26, x28, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x29, x31, &x46);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x47, x32, x34, &x49);
- { uint64_t x52; uint8_t x53 = _addcarryx_u64(x50, x35, x37, &x52);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x38, x40, &x55);
- { uint64_t x58; uint8_t _ = _addcarryx_u64(0x0, x56, x41, &x58);
- { uint64_t _; uint64_t x61 = _mulx_u64(x25, 0x8f5c28f5c28f5c29L, &_);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x61, 0xffffffffffffffe7L, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x61, 0xffffffffffffffffL, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x61, 0xffffffffffffffffL, &x71);
- { uint64_t x74; uint64_t x73 = _mulx_u64(x61, 0xffffffffffffffffL, &x74);
- { uint64_t x77; uint64_t x76 = _mulx_u64(x61, 0xffffffffffffffffL, &x77);
- { uint64_t x80; uint64_t x79 = _mulx_u64(x61, 0x1ffffffffffff, &x80);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x65, x67, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x68, x70, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x71, x73, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x74, x76, &x91);
- { uint64_t x94; uint8_t x95 = _addcarryx_u64(x92, x77, x79, &x94);
- { uint64_t x97; uint8_t _ = _addcarryx_u64(0x0, x95, x80, &x97);
- { uint64_t _; uint8_t x101 = _addcarryx_u64(0x0, x25, x64, &_);
- { uint64_t x103; uint8_t x104 = _addcarryx_u64(x101, x43, x82, &x103);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(x104, x46, x85, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x49, x88, &x109);
- { uint64_t x112; uint8_t x113 = _addcarryx_u64(x110, x52, x91, &x112);
- { uint64_t x115; uint8_t x116 = _addcarryx_u64(x113, x55, x94, &x115);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x58, x97, &x118);
- { uint64_t x122; uint64_t x121 = _mulx_u64(x7, x15, &x122);
- { uint64_t x125; uint64_t x124 = _mulx_u64(x7, x17, &x125);
- { uint64_t x128; uint64_t x127 = _mulx_u64(x7, x19, &x128);
- { uint64_t x131; uint64_t x130 = _mulx_u64(x7, x21, &x131);
- { uint64_t x134; uint64_t x133 = _mulx_u64(x7, x23, &x134);
- { uint64_t x137; uint64_t x136 = _mulx_u64(x7, x22, &x137);
- { uint64_t x139; uint8_t x140 = _addcarryx_u64(0x0, x122, x124, &x139);
- { uint64_t x142; uint8_t x143 = _addcarryx_u64(x140, x125, x127, &x142);
- { uint64_t x145; uint8_t x146 = _addcarryx_u64(x143, x128, x130, &x145);
- { uint64_t x148; uint8_t x149 = _addcarryx_u64(x146, x131, x133, &x148);
- { uint64_t x151; uint8_t x152 = _addcarryx_u64(x149, x134, x136, &x151);
- { uint64_t x154; uint8_t _ = _addcarryx_u64(0x0, x152, x137, &x154);
- { uint64_t x157; uint8_t x158 = _addcarryx_u64(0x0, x103, x121, &x157);
- { uint64_t x160; uint8_t x161 = _addcarryx_u64(x158, x106, x139, &x160);
- { uint64_t x163; uint8_t x164 = _addcarryx_u64(x161, x109, x142, &x163);
- { uint64_t x166; uint8_t x167 = _addcarryx_u64(x164, x112, x145, &x166);
- { uint64_t x169; uint8_t x170 = _addcarryx_u64(x167, x115, x148, &x169);
- { uint64_t x172; uint8_t x173 = _addcarryx_u64(x170, x118, x151, &x172);
- { uint64_t x175; uint8_t x176 = _addcarryx_u64(x173, x119, x154, &x175);
- { uint64_t _; uint64_t x178 = _mulx_u64(x157, 0x8f5c28f5c28f5c29L, &_);
- { uint64_t x182; uint64_t x181 = _mulx_u64(x178, 0xffffffffffffffe7L, &x182);
- { uint64_t x185; uint64_t x184 = _mulx_u64(x178, 0xffffffffffffffffL, &x185);
- { uint64_t x188; uint64_t x187 = _mulx_u64(x178, 0xffffffffffffffffL, &x188);
- { uint64_t x191; uint64_t x190 = _mulx_u64(x178, 0xffffffffffffffffL, &x191);
- { uint64_t x194; uint64_t x193 = _mulx_u64(x178, 0xffffffffffffffffL, &x194);
- { uint64_t x197; uint64_t x196 = _mulx_u64(x178, 0x1ffffffffffff, &x197);
- { uint64_t x199; uint8_t x200 = _addcarryx_u64(0x0, x182, x184, &x199);
- { uint64_t x202; uint8_t x203 = _addcarryx_u64(x200, x185, x187, &x202);
- { uint64_t x205; uint8_t x206 = _addcarryx_u64(x203, x188, x190, &x205);
- { uint64_t x208; uint8_t x209 = _addcarryx_u64(x206, x191, x193, &x208);
- { uint64_t x211; uint8_t x212 = _addcarryx_u64(x209, x194, x196, &x211);
- { uint64_t x214; uint8_t _ = _addcarryx_u64(0x0, x212, x197, &x214);
- { uint64_t _; uint8_t x218 = _addcarryx_u64(0x0, x157, x181, &_);
- { uint64_t x220; uint8_t x221 = _addcarryx_u64(x218, x160, x199, &x220);
- { uint64_t x223; uint8_t x224 = _addcarryx_u64(x221, x163, x202, &x223);
- { uint64_t x226; uint8_t x227 = _addcarryx_u64(x224, x166, x205, &x226);
- { uint64_t x229; uint8_t x230 = _addcarryx_u64(x227, x169, x208, &x229);
- { uint64_t x232; uint8_t x233 = _addcarryx_u64(x230, x172, x211, &x232);
- { uint64_t x235; uint8_t x236 = _addcarryx_u64(x233, x175, x214, &x235);
- { uint8_t x237 = (x236 + x176);
- { uint64_t x240; uint64_t x239 = _mulx_u64(x9, x15, &x240);
- { uint64_t x243; uint64_t x242 = _mulx_u64(x9, x17, &x243);
- { uint64_t x246; uint64_t x245 = _mulx_u64(x9, x19, &x246);
- { uint64_t x249; uint64_t x248 = _mulx_u64(x9, x21, &x249);
- { uint64_t x252; uint64_t x251 = _mulx_u64(x9, x23, &x252);
- { uint64_t x255; uint64_t x254 = _mulx_u64(x9, x22, &x255);
- { uint64_t x257; uint8_t x258 = _addcarryx_u64(0x0, x240, x242, &x257);
- { uint64_t x260; uint8_t x261 = _addcarryx_u64(x258, x243, x245, &x260);
- { uint64_t x263; uint8_t x264 = _addcarryx_u64(x261, x246, x248, &x263);
- { uint64_t x266; uint8_t x267 = _addcarryx_u64(x264, x249, x251, &x266);
- { uint64_t x269; uint8_t x270 = _addcarryx_u64(x267, x252, x254, &x269);
- { uint64_t x272; uint8_t _ = _addcarryx_u64(0x0, x270, x255, &x272);
- { uint64_t x275; uint8_t x276 = _addcarryx_u64(0x0, x220, x239, &x275);
- { uint64_t x278; uint8_t x279 = _addcarryx_u64(x276, x223, x257, &x278);
- { uint64_t x281; uint8_t x282 = _addcarryx_u64(x279, x226, x260, &x281);
- { uint64_t x284; uint8_t x285 = _addcarryx_u64(x282, x229, x263, &x284);
- { uint64_t x287; uint8_t x288 = _addcarryx_u64(x285, x232, x266, &x287);
- { uint64_t x290; uint8_t x291 = _addcarryx_u64(x288, x235, x269, &x290);
- { uint64_t x293; uint8_t x294 = _addcarryx_u64(x291, x237, x272, &x293);
- { uint64_t _; uint64_t x296 = _mulx_u64(x275, 0x8f5c28f5c28f5c29L, &_);
- { uint64_t x300; uint64_t x299 = _mulx_u64(x296, 0xffffffffffffffe7L, &x300);
- { uint64_t x303; uint64_t x302 = _mulx_u64(x296, 0xffffffffffffffffL, &x303);
- { uint64_t x306; uint64_t x305 = _mulx_u64(x296, 0xffffffffffffffffL, &x306);
- { uint64_t x309; uint64_t x308 = _mulx_u64(x296, 0xffffffffffffffffL, &x309);
- { uint64_t x312; uint64_t x311 = _mulx_u64(x296, 0xffffffffffffffffL, &x312);
- { uint64_t x315; uint64_t x314 = _mulx_u64(x296, 0x1ffffffffffff, &x315);
- { uint64_t x317; uint8_t x318 = _addcarryx_u64(0x0, x300, x302, &x317);
- { uint64_t x320; uint8_t x321 = _addcarryx_u64(x318, x303, x305, &x320);
- { uint64_t x323; uint8_t x324 = _addcarryx_u64(x321, x306, x308, &x323);
- { uint64_t x326; uint8_t x327 = _addcarryx_u64(x324, x309, x311, &x326);
- { uint64_t x329; uint8_t x330 = _addcarryx_u64(x327, x312, x314, &x329);
- { uint64_t x332; uint8_t _ = _addcarryx_u64(0x0, x330, x315, &x332);
- { uint64_t _; uint8_t x336 = _addcarryx_u64(0x0, x275, x299, &_);
- { uint64_t x338; uint8_t x339 = _addcarryx_u64(x336, x278, x317, &x338);
- { uint64_t x341; uint8_t x342 = _addcarryx_u64(x339, x281, x320, &x341);
- { uint64_t x344; uint8_t x345 = _addcarryx_u64(x342, x284, x323, &x344);
- { uint64_t x347; uint8_t x348 = _addcarryx_u64(x345, x287, x326, &x347);
- { uint64_t x350; uint8_t x351 = _addcarryx_u64(x348, x290, x329, &x350);
- { uint64_t x353; uint8_t x354 = _addcarryx_u64(x351, x293, x332, &x353);
- { uint8_t x355 = (x354 + x294);
- { uint64_t x358; uint64_t x357 = _mulx_u64(x11, x15, &x358);
- { uint64_t x361; uint64_t x360 = _mulx_u64(x11, x17, &x361);
- { uint64_t x364; uint64_t x363 = _mulx_u64(x11, x19, &x364);
- { uint64_t x367; uint64_t x366 = _mulx_u64(x11, x21, &x367);
- { uint64_t x370; uint64_t x369 = _mulx_u64(x11, x23, &x370);
- { uint64_t x373; uint64_t x372 = _mulx_u64(x11, x22, &x373);
- { uint64_t x375; uint8_t x376 = _addcarryx_u64(0x0, x358, x360, &x375);
- { uint64_t x378; uint8_t x379 = _addcarryx_u64(x376, x361, x363, &x378);
- { uint64_t x381; uint8_t x382 = _addcarryx_u64(x379, x364, x366, &x381);
- { uint64_t x384; uint8_t x385 = _addcarryx_u64(x382, x367, x369, &x384);
- { uint64_t x387; uint8_t x388 = _addcarryx_u64(x385, x370, x372, &x387);
- { uint64_t x390; uint8_t _ = _addcarryx_u64(0x0, x388, x373, &x390);
- { uint64_t x393; uint8_t x394 = _addcarryx_u64(0x0, x338, x357, &x393);
- { uint64_t x396; uint8_t x397 = _addcarryx_u64(x394, x341, x375, &x396);
- { uint64_t x399; uint8_t x400 = _addcarryx_u64(x397, x344, x378, &x399);
- { uint64_t x402; uint8_t x403 = _addcarryx_u64(x400, x347, x381, &x402);
- { uint64_t x405; uint8_t x406 = _addcarryx_u64(x403, x350, x384, &x405);
- { uint64_t x408; uint8_t x409 = _addcarryx_u64(x406, x353, x387, &x408);
- { uint64_t x411; uint8_t x412 = _addcarryx_u64(x409, x355, x390, &x411);
- { uint64_t _; uint64_t x414 = _mulx_u64(x393, 0x8f5c28f5c28f5c29L, &_);
- { uint64_t x418; uint64_t x417 = _mulx_u64(x414, 0xffffffffffffffe7L, &x418);
- { uint64_t x421; uint64_t x420 = _mulx_u64(x414, 0xffffffffffffffffL, &x421);
- { uint64_t x424; uint64_t x423 = _mulx_u64(x414, 0xffffffffffffffffL, &x424);
- { uint64_t x427; uint64_t x426 = _mulx_u64(x414, 0xffffffffffffffffL, &x427);
- { uint64_t x430; uint64_t x429 = _mulx_u64(x414, 0xffffffffffffffffL, &x430);
- { uint64_t x433; uint64_t x432 = _mulx_u64(x414, 0x1ffffffffffff, &x433);
- { uint64_t x435; uint8_t x436 = _addcarryx_u64(0x0, x418, x420, &x435);
- { uint64_t x438; uint8_t x439 = _addcarryx_u64(x436, x421, x423, &x438);
- { uint64_t x441; uint8_t x442 = _addcarryx_u64(x439, x424, x426, &x441);
- { uint64_t x444; uint8_t x445 = _addcarryx_u64(x442, x427, x429, &x444);
- { uint64_t x447; uint8_t x448 = _addcarryx_u64(x445, x430, x432, &x447);
- { uint64_t x450; uint8_t _ = _addcarryx_u64(0x0, x448, x433, &x450);
- { uint64_t _; uint8_t x454 = _addcarryx_u64(0x0, x393, x417, &_);
- { uint64_t x456; uint8_t x457 = _addcarryx_u64(x454, x396, x435, &x456);
- { uint64_t x459; uint8_t x460 = _addcarryx_u64(x457, x399, x438, &x459);
- { uint64_t x462; uint8_t x463 = _addcarryx_u64(x460, x402, x441, &x462);
- { uint64_t x465; uint8_t x466 = _addcarryx_u64(x463, x405, x444, &x465);
- { uint64_t x468; uint8_t x469 = _addcarryx_u64(x466, x408, x447, &x468);
- { uint64_t x471; uint8_t x472 = _addcarryx_u64(x469, x411, x450, &x471);
- { uint8_t x473 = (x472 + x412);
- { uint64_t x476; uint64_t x475 = _mulx_u64(x13, x15, &x476);
- { uint64_t x479; uint64_t x478 = _mulx_u64(x13, x17, &x479);
- { uint64_t x482; uint64_t x481 = _mulx_u64(x13, x19, &x482);
- { uint64_t x485; uint64_t x484 = _mulx_u64(x13, x21, &x485);
- { uint64_t x488; uint64_t x487 = _mulx_u64(x13, x23, &x488);
- { uint64_t x491; uint64_t x490 = _mulx_u64(x13, x22, &x491);
- { uint64_t x493; uint8_t x494 = _addcarryx_u64(0x0, x476, x478, &x493);
- { uint64_t x496; uint8_t x497 = _addcarryx_u64(x494, x479, x481, &x496);
- { uint64_t x499; uint8_t x500 = _addcarryx_u64(x497, x482, x484, &x499);
- { uint64_t x502; uint8_t x503 = _addcarryx_u64(x500, x485, x487, &x502);
- { uint64_t x505; uint8_t x506 = _addcarryx_u64(x503, x488, x490, &x505);
- { uint64_t x508; uint8_t _ = _addcarryx_u64(0x0, x506, x491, &x508);
- { uint64_t x511; uint8_t x512 = _addcarryx_u64(0x0, x456, x475, &x511);
- { uint64_t x514; uint8_t x515 = _addcarryx_u64(x512, x459, x493, &x514);
- { uint64_t x517; uint8_t x518 = _addcarryx_u64(x515, x462, x496, &x517);
- { uint64_t x520; uint8_t x521 = _addcarryx_u64(x518, x465, x499, &x520);
- { uint64_t x523; uint8_t x524 = _addcarryx_u64(x521, x468, x502, &x523);
- { uint64_t x526; uint8_t x527 = _addcarryx_u64(x524, x471, x505, &x526);
- { uint64_t x529; uint8_t x530 = _addcarryx_u64(x527, x473, x508, &x529);
- { uint64_t _; uint64_t x532 = _mulx_u64(x511, 0x8f5c28f5c28f5c29L, &_);
- { uint64_t x536; uint64_t x535 = _mulx_u64(x532, 0xffffffffffffffe7L, &x536);
- { uint64_t x539; uint64_t x538 = _mulx_u64(x532, 0xffffffffffffffffL, &x539);
- { uint64_t x542; uint64_t x541 = _mulx_u64(x532, 0xffffffffffffffffL, &x542);
- { uint64_t x545; uint64_t x544 = _mulx_u64(x532, 0xffffffffffffffffL, &x545);
- { uint64_t x548; uint64_t x547 = _mulx_u64(x532, 0xffffffffffffffffL, &x548);
- { uint64_t x551; uint64_t x550 = _mulx_u64(x532, 0x1ffffffffffff, &x551);
- { uint64_t x553; uint8_t x554 = _addcarryx_u64(0x0, x536, x538, &x553);
- { uint64_t x556; uint8_t x557 = _addcarryx_u64(x554, x539, x541, &x556);
- { uint64_t x559; uint8_t x560 = _addcarryx_u64(x557, x542, x544, &x559);
- { uint64_t x562; uint8_t x563 = _addcarryx_u64(x560, x545, x547, &x562);
- { uint64_t x565; uint8_t x566 = _addcarryx_u64(x563, x548, x550, &x565);
- { uint64_t x568; uint8_t _ = _addcarryx_u64(0x0, x566, x551, &x568);
- { uint64_t _; uint8_t x572 = _addcarryx_u64(0x0, x511, x535, &_);
- { uint64_t x574; uint8_t x575 = _addcarryx_u64(x572, x514, x553, &x574);
- { uint64_t x577; uint8_t x578 = _addcarryx_u64(x575, x517, x556, &x577);
- { uint64_t x580; uint8_t x581 = _addcarryx_u64(x578, x520, x559, &x580);
- { uint64_t x583; uint8_t x584 = _addcarryx_u64(x581, x523, x562, &x583);
- { uint64_t x586; uint8_t x587 = _addcarryx_u64(x584, x526, x565, &x586);
- { uint64_t x589; uint8_t x590 = _addcarryx_u64(x587, x529, x568, &x589);
- { uint8_t x591 = (x590 + x530);
- { uint64_t x594; uint64_t x593 = _mulx_u64(x12, x15, &x594);
- { uint64_t x597; uint64_t x596 = _mulx_u64(x12, x17, &x597);
- { uint64_t x600; uint64_t x599 = _mulx_u64(x12, x19, &x600);
- { uint64_t x603; uint64_t x602 = _mulx_u64(x12, x21, &x603);
- { uint64_t x606; uint64_t x605 = _mulx_u64(x12, x23, &x606);
- { uint64_t x609; uint64_t x608 = _mulx_u64(x12, x22, &x609);
- { uint64_t x611; uint8_t x612 = _addcarryx_u64(0x0, x594, x596, &x611);
- { uint64_t x614; uint8_t x615 = _addcarryx_u64(x612, x597, x599, &x614);
- { uint64_t x617; uint8_t x618 = _addcarryx_u64(x615, x600, x602, &x617);
- { uint64_t x620; uint8_t x621 = _addcarryx_u64(x618, x603, x605, &x620);
- { uint64_t x623; uint8_t x624 = _addcarryx_u64(x621, x606, x608, &x623);
- { uint64_t x626; uint8_t _ = _addcarryx_u64(0x0, x624, x609, &x626);
- { uint64_t x629; uint8_t x630 = _addcarryx_u64(0x0, x574, x593, &x629);
- { uint64_t x632; uint8_t x633 = _addcarryx_u64(x630, x577, x611, &x632);
- { uint64_t x635; uint8_t x636 = _addcarryx_u64(x633, x580, x614, &x635);
- { uint64_t x638; uint8_t x639 = _addcarryx_u64(x636, x583, x617, &x638);
- { uint64_t x641; uint8_t x642 = _addcarryx_u64(x639, x586, x620, &x641);
- { uint64_t x644; uint8_t x645 = _addcarryx_u64(x642, x589, x623, &x644);
- { uint64_t x647; uint8_t x648 = _addcarryx_u64(x645, x591, x626, &x647);
- { uint64_t _; uint64_t x650 = _mulx_u64(x629, 0x8f5c28f5c28f5c29L, &_);
- { uint64_t x654; uint64_t x653 = _mulx_u64(x650, 0xffffffffffffffe7L, &x654);
- { uint64_t x657; uint64_t x656 = _mulx_u64(x650, 0xffffffffffffffffL, &x657);
- { uint64_t x660; uint64_t x659 = _mulx_u64(x650, 0xffffffffffffffffL, &x660);
- { uint64_t x663; uint64_t x662 = _mulx_u64(x650, 0xffffffffffffffffL, &x663);
- { uint64_t x666; uint64_t x665 = _mulx_u64(x650, 0xffffffffffffffffL, &x666);
- { uint64_t x669; uint64_t x668 = _mulx_u64(x650, 0x1ffffffffffff, &x669);
- { uint64_t x671; uint8_t x672 = _addcarryx_u64(0x0, x654, x656, &x671);
- { uint64_t x674; uint8_t x675 = _addcarryx_u64(x672, x657, x659, &x674);
- { uint64_t x677; uint8_t x678 = _addcarryx_u64(x675, x660, x662, &x677);
- { uint64_t x680; uint8_t x681 = _addcarryx_u64(x678, x663, x665, &x680);
- { uint64_t x683; uint8_t x684 = _addcarryx_u64(x681, x666, x668, &x683);
- { uint64_t x686; uint8_t _ = _addcarryx_u64(0x0, x684, x669, &x686);
- { uint64_t _; uint8_t x690 = _addcarryx_u64(0x0, x629, x653, &_);
- { uint64_t x692; uint8_t x693 = _addcarryx_u64(x690, x632, x671, &x692);
- { uint64_t x695; uint8_t x696 = _addcarryx_u64(x693, x635, x674, &x695);
- { uint64_t x698; uint8_t x699 = _addcarryx_u64(x696, x638, x677, &x698);
- { uint64_t x701; uint8_t x702 = _addcarryx_u64(x699, x641, x680, &x701);
- { uint64_t x704; uint8_t x705 = _addcarryx_u64(x702, x644, x683, &x704);
- { uint64_t x707; uint8_t x708 = _addcarryx_u64(x705, x647, x686, &x707);
- { uint8_t x709 = (x708 + x648);
- { uint64_t x711; uint8_t x712 = _subborrow_u64(0x0, x692, 0xffffffffffffffe7L, &x711);
- { uint64_t x714; uint8_t x715 = _subborrow_u64(x712, x695, 0xffffffffffffffffL, &x714);
- { uint64_t x717; uint8_t x718 = _subborrow_u64(x715, x698, 0xffffffffffffffffL, &x717);
- { uint64_t x720; uint8_t x721 = _subborrow_u64(x718, x701, 0xffffffffffffffffL, &x720);
- { uint64_t x723; uint8_t x724 = _subborrow_u64(x721, x704, 0xffffffffffffffffL, &x723);
- { uint64_t x726; uint8_t x727 = _subborrow_u64(x724, x707, 0x1ffffffffffff, &x726);
- { uint64_t _; uint8_t x730 = _subborrow_u64(x727, x709, 0x0, &_);
- { uint64_t x731 = cmovznz64(x730, x726, x707);
- { uint64_t x732 = cmovznz64(x730, x723, x704);
- { uint64_t x733 = cmovznz64(x730, x720, x701);
- { uint64_t x734 = cmovznz64(x730, x717, x698);
- { uint64_t x735 = cmovznz64(x730, x714, x695);
- { uint64_t x736 = cmovznz64(x730, x711, x692);
- out[0] = x736;
- out[1] = x735;
- out[2] = x734;
- out[3] = x733;
- out[4] = x732;
- out[5] = x731;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e369m25_6limbs/femul.v b/src/Specific/montgomery64_2e369m25_6limbs/femul.v
deleted file mode 100644
index 081ad3654..000000000
--- a/src/Specific/montgomery64_2e369m25_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e369m25_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e369m25_6limbs/femulDisplay.log b/src/Specific/montgomery64_2e369m25_6limbs/femulDisplay.log
deleted file mode 100644
index c0898b04c..000000000
--- a/src/Specific/montgomery64_2e369m25_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,252 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint64_t x26 = mulx_u64(x5, x15);
- uint64_t x28, uint64_t x29 = mulx_u64(x5, x17);
- uint64_t x31, uint64_t x32 = mulx_u64(x5, x19);
- uint64_t x34, uint64_t x35 = mulx_u64(x5, x21);
- uint64_t x37, uint64_t x38 = mulx_u64(x5, x23);
- uint64_t x40, uint64_t x41 = mulx_u64(x5, x22);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x26, x28);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x29, x31);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x47, x32, x34);
- uint64_t x52, uint8_t x53 = addcarryx_u64(x50, x35, x37);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x38, x40);
- uint64_t x58, uint8_t _ = addcarryx_u64(0x0, x56, x41);
- uint64_t x61, uint64_t _ = mulx_u64(x25, 0x8f5c28f5c28f5c29L);
- uint64_t x64, uint64_t x65 = mulx_u64(x61, 0xffffffffffffffe7L);
- uint64_t x67, uint64_t x68 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x70, uint64_t x71 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x73, uint64_t x74 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x76, uint64_t x77 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x79, uint64_t x80 = mulx_u64(x61, 0x1ffffffffffff);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x65, x67);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x68, x70);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x71, x73);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x74, x76);
- uint64_t x94, uint8_t x95 = addcarryx_u64(x92, x77, x79);
- uint64_t x97, uint8_t _ = addcarryx_u64(0x0, x95, x80);
- uint64_t _, uint8_t x101 = addcarryx_u64(0x0, x25, x64);
- uint64_t x103, uint8_t x104 = addcarryx_u64(x101, x43, x82);
- uint64_t x106, uint8_t x107 = addcarryx_u64(x104, x46, x85);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x49, x88);
- uint64_t x112, uint8_t x113 = addcarryx_u64(x110, x52, x91);
- uint64_t x115, uint8_t x116 = addcarryx_u64(x113, x55, x94);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x58, x97);
- uint64_t x121, uint64_t x122 = mulx_u64(x7, x15);
- uint64_t x124, uint64_t x125 = mulx_u64(x7, x17);
- uint64_t x127, uint64_t x128 = mulx_u64(x7, x19);
- uint64_t x130, uint64_t x131 = mulx_u64(x7, x21);
- uint64_t x133, uint64_t x134 = mulx_u64(x7, x23);
- uint64_t x136, uint64_t x137 = mulx_u64(x7, x22);
- uint64_t x139, uint8_t x140 = addcarryx_u64(0x0, x122, x124);
- uint64_t x142, uint8_t x143 = addcarryx_u64(x140, x125, x127);
- uint64_t x145, uint8_t x146 = addcarryx_u64(x143, x128, x130);
- uint64_t x148, uint8_t x149 = addcarryx_u64(x146, x131, x133);
- uint64_t x151, uint8_t x152 = addcarryx_u64(x149, x134, x136);
- uint64_t x154, uint8_t _ = addcarryx_u64(0x0, x152, x137);
- uint64_t x157, uint8_t x158 = addcarryx_u64(0x0, x103, x121);
- uint64_t x160, uint8_t x161 = addcarryx_u64(x158, x106, x139);
- uint64_t x163, uint8_t x164 = addcarryx_u64(x161, x109, x142);
- uint64_t x166, uint8_t x167 = addcarryx_u64(x164, x112, x145);
- uint64_t x169, uint8_t x170 = addcarryx_u64(x167, x115, x148);
- uint64_t x172, uint8_t x173 = addcarryx_u64(x170, x118, x151);
- uint64_t x175, uint8_t x176 = addcarryx_u64(x173, x119, x154);
- uint64_t x178, uint64_t _ = mulx_u64(x157, 0x8f5c28f5c28f5c29L);
- uint64_t x181, uint64_t x182 = mulx_u64(x178, 0xffffffffffffffe7L);
- uint64_t x184, uint64_t x185 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x187, uint64_t x188 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x190, uint64_t x191 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x193, uint64_t x194 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x196, uint64_t x197 = mulx_u64(x178, 0x1ffffffffffff);
- uint64_t x199, uint8_t x200 = addcarryx_u64(0x0, x182, x184);
- uint64_t x202, uint8_t x203 = addcarryx_u64(x200, x185, x187);
- uint64_t x205, uint8_t x206 = addcarryx_u64(x203, x188, x190);
- uint64_t x208, uint8_t x209 = addcarryx_u64(x206, x191, x193);
- uint64_t x211, uint8_t x212 = addcarryx_u64(x209, x194, x196);
- uint64_t x214, uint8_t _ = addcarryx_u64(0x0, x212, x197);
- uint64_t _, uint8_t x218 = addcarryx_u64(0x0, x157, x181);
- uint64_t x220, uint8_t x221 = addcarryx_u64(x218, x160, x199);
- uint64_t x223, uint8_t x224 = addcarryx_u64(x221, x163, x202);
- uint64_t x226, uint8_t x227 = addcarryx_u64(x224, x166, x205);
- uint64_t x229, uint8_t x230 = addcarryx_u64(x227, x169, x208);
- uint64_t x232, uint8_t x233 = addcarryx_u64(x230, x172, x211);
- uint64_t x235, uint8_t x236 = addcarryx_u64(x233, x175, x214);
- uint8_t x237 = (x236 + x176);
- uint64_t x239, uint64_t x240 = mulx_u64(x9, x15);
- uint64_t x242, uint64_t x243 = mulx_u64(x9, x17);
- uint64_t x245, uint64_t x246 = mulx_u64(x9, x19);
- uint64_t x248, uint64_t x249 = mulx_u64(x9, x21);
- uint64_t x251, uint64_t x252 = mulx_u64(x9, x23);
- uint64_t x254, uint64_t x255 = mulx_u64(x9, x22);
- uint64_t x257, uint8_t x258 = addcarryx_u64(0x0, x240, x242);
- uint64_t x260, uint8_t x261 = addcarryx_u64(x258, x243, x245);
- uint64_t x263, uint8_t x264 = addcarryx_u64(x261, x246, x248);
- uint64_t x266, uint8_t x267 = addcarryx_u64(x264, x249, x251);
- uint64_t x269, uint8_t x270 = addcarryx_u64(x267, x252, x254);
- uint64_t x272, uint8_t _ = addcarryx_u64(0x0, x270, x255);
- uint64_t x275, uint8_t x276 = addcarryx_u64(0x0, x220, x239);
- uint64_t x278, uint8_t x279 = addcarryx_u64(x276, x223, x257);
- uint64_t x281, uint8_t x282 = addcarryx_u64(x279, x226, x260);
- uint64_t x284, uint8_t x285 = addcarryx_u64(x282, x229, x263);
- uint64_t x287, uint8_t x288 = addcarryx_u64(x285, x232, x266);
- uint64_t x290, uint8_t x291 = addcarryx_u64(x288, x235, x269);
- uint64_t x293, uint8_t x294 = addcarryx_u64(x291, x237, x272);
- uint64_t x296, uint64_t _ = mulx_u64(x275, 0x8f5c28f5c28f5c29L);
- uint64_t x299, uint64_t x300 = mulx_u64(x296, 0xffffffffffffffe7L);
- uint64_t x302, uint64_t x303 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x305, uint64_t x306 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x308, uint64_t x309 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x311, uint64_t x312 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x314, uint64_t x315 = mulx_u64(x296, 0x1ffffffffffff);
- uint64_t x317, uint8_t x318 = addcarryx_u64(0x0, x300, x302);
- uint64_t x320, uint8_t x321 = addcarryx_u64(x318, x303, x305);
- uint64_t x323, uint8_t x324 = addcarryx_u64(x321, x306, x308);
- uint64_t x326, uint8_t x327 = addcarryx_u64(x324, x309, x311);
- uint64_t x329, uint8_t x330 = addcarryx_u64(x327, x312, x314);
- uint64_t x332, uint8_t _ = addcarryx_u64(0x0, x330, x315);
- uint64_t _, uint8_t x336 = addcarryx_u64(0x0, x275, x299);
- uint64_t x338, uint8_t x339 = addcarryx_u64(x336, x278, x317);
- uint64_t x341, uint8_t x342 = addcarryx_u64(x339, x281, x320);
- uint64_t x344, uint8_t x345 = addcarryx_u64(x342, x284, x323);
- uint64_t x347, uint8_t x348 = addcarryx_u64(x345, x287, x326);
- uint64_t x350, uint8_t x351 = addcarryx_u64(x348, x290, x329);
- uint64_t x353, uint8_t x354 = addcarryx_u64(x351, x293, x332);
- uint8_t x355 = (x354 + x294);
- uint64_t x357, uint64_t x358 = mulx_u64(x11, x15);
- uint64_t x360, uint64_t x361 = mulx_u64(x11, x17);
- uint64_t x363, uint64_t x364 = mulx_u64(x11, x19);
- uint64_t x366, uint64_t x367 = mulx_u64(x11, x21);
- uint64_t x369, uint64_t x370 = mulx_u64(x11, x23);
- uint64_t x372, uint64_t x373 = mulx_u64(x11, x22);
- uint64_t x375, uint8_t x376 = addcarryx_u64(0x0, x358, x360);
- uint64_t x378, uint8_t x379 = addcarryx_u64(x376, x361, x363);
- uint64_t x381, uint8_t x382 = addcarryx_u64(x379, x364, x366);
- uint64_t x384, uint8_t x385 = addcarryx_u64(x382, x367, x369);
- uint64_t x387, uint8_t x388 = addcarryx_u64(x385, x370, x372);
- uint64_t x390, uint8_t _ = addcarryx_u64(0x0, x388, x373);
- uint64_t x393, uint8_t x394 = addcarryx_u64(0x0, x338, x357);
- uint64_t x396, uint8_t x397 = addcarryx_u64(x394, x341, x375);
- uint64_t x399, uint8_t x400 = addcarryx_u64(x397, x344, x378);
- uint64_t x402, uint8_t x403 = addcarryx_u64(x400, x347, x381);
- uint64_t x405, uint8_t x406 = addcarryx_u64(x403, x350, x384);
- uint64_t x408, uint8_t x409 = addcarryx_u64(x406, x353, x387);
- uint64_t x411, uint8_t x412 = addcarryx_u64(x409, x355, x390);
- uint64_t x414, uint64_t _ = mulx_u64(x393, 0x8f5c28f5c28f5c29L);
- uint64_t x417, uint64_t x418 = mulx_u64(x414, 0xffffffffffffffe7L);
- uint64_t x420, uint64_t x421 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x423, uint64_t x424 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x426, uint64_t x427 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x429, uint64_t x430 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x432, uint64_t x433 = mulx_u64(x414, 0x1ffffffffffff);
- uint64_t x435, uint8_t x436 = addcarryx_u64(0x0, x418, x420);
- uint64_t x438, uint8_t x439 = addcarryx_u64(x436, x421, x423);
- uint64_t x441, uint8_t x442 = addcarryx_u64(x439, x424, x426);
- uint64_t x444, uint8_t x445 = addcarryx_u64(x442, x427, x429);
- uint64_t x447, uint8_t x448 = addcarryx_u64(x445, x430, x432);
- uint64_t x450, uint8_t _ = addcarryx_u64(0x0, x448, x433);
- uint64_t _, uint8_t x454 = addcarryx_u64(0x0, x393, x417);
- uint64_t x456, uint8_t x457 = addcarryx_u64(x454, x396, x435);
- uint64_t x459, uint8_t x460 = addcarryx_u64(x457, x399, x438);
- uint64_t x462, uint8_t x463 = addcarryx_u64(x460, x402, x441);
- uint64_t x465, uint8_t x466 = addcarryx_u64(x463, x405, x444);
- uint64_t x468, uint8_t x469 = addcarryx_u64(x466, x408, x447);
- uint64_t x471, uint8_t x472 = addcarryx_u64(x469, x411, x450);
- uint8_t x473 = (x472 + x412);
- uint64_t x475, uint64_t x476 = mulx_u64(x13, x15);
- uint64_t x478, uint64_t x479 = mulx_u64(x13, x17);
- uint64_t x481, uint64_t x482 = mulx_u64(x13, x19);
- uint64_t x484, uint64_t x485 = mulx_u64(x13, x21);
- uint64_t x487, uint64_t x488 = mulx_u64(x13, x23);
- uint64_t x490, uint64_t x491 = mulx_u64(x13, x22);
- uint64_t x493, uint8_t x494 = addcarryx_u64(0x0, x476, x478);
- uint64_t x496, uint8_t x497 = addcarryx_u64(x494, x479, x481);
- uint64_t x499, uint8_t x500 = addcarryx_u64(x497, x482, x484);
- uint64_t x502, uint8_t x503 = addcarryx_u64(x500, x485, x487);
- uint64_t x505, uint8_t x506 = addcarryx_u64(x503, x488, x490);
- uint64_t x508, uint8_t _ = addcarryx_u64(0x0, x506, x491);
- uint64_t x511, uint8_t x512 = addcarryx_u64(0x0, x456, x475);
- uint64_t x514, uint8_t x515 = addcarryx_u64(x512, x459, x493);
- uint64_t x517, uint8_t x518 = addcarryx_u64(x515, x462, x496);
- uint64_t x520, uint8_t x521 = addcarryx_u64(x518, x465, x499);
- uint64_t x523, uint8_t x524 = addcarryx_u64(x521, x468, x502);
- uint64_t x526, uint8_t x527 = addcarryx_u64(x524, x471, x505);
- uint64_t x529, uint8_t x530 = addcarryx_u64(x527, x473, x508);
- uint64_t x532, uint64_t _ = mulx_u64(x511, 0x8f5c28f5c28f5c29L);
- uint64_t x535, uint64_t x536 = mulx_u64(x532, 0xffffffffffffffe7L);
- uint64_t x538, uint64_t x539 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x541, uint64_t x542 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x544, uint64_t x545 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x547, uint64_t x548 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x550, uint64_t x551 = mulx_u64(x532, 0x1ffffffffffff);
- uint64_t x553, uint8_t x554 = addcarryx_u64(0x0, x536, x538);
- uint64_t x556, uint8_t x557 = addcarryx_u64(x554, x539, x541);
- uint64_t x559, uint8_t x560 = addcarryx_u64(x557, x542, x544);
- uint64_t x562, uint8_t x563 = addcarryx_u64(x560, x545, x547);
- uint64_t x565, uint8_t x566 = addcarryx_u64(x563, x548, x550);
- uint64_t x568, uint8_t _ = addcarryx_u64(0x0, x566, x551);
- uint64_t _, uint8_t x572 = addcarryx_u64(0x0, x511, x535);
- uint64_t x574, uint8_t x575 = addcarryx_u64(x572, x514, x553);
- uint64_t x577, uint8_t x578 = addcarryx_u64(x575, x517, x556);
- uint64_t x580, uint8_t x581 = addcarryx_u64(x578, x520, x559);
- uint64_t x583, uint8_t x584 = addcarryx_u64(x581, x523, x562);
- uint64_t x586, uint8_t x587 = addcarryx_u64(x584, x526, x565);
- uint64_t x589, uint8_t x590 = addcarryx_u64(x587, x529, x568);
- uint8_t x591 = (x590 + x530);
- uint64_t x593, uint64_t x594 = mulx_u64(x12, x15);
- uint64_t x596, uint64_t x597 = mulx_u64(x12, x17);
- uint64_t x599, uint64_t x600 = mulx_u64(x12, x19);
- uint64_t x602, uint64_t x603 = mulx_u64(x12, x21);
- uint64_t x605, uint64_t x606 = mulx_u64(x12, x23);
- uint64_t x608, uint64_t x609 = mulx_u64(x12, x22);
- uint64_t x611, uint8_t x612 = addcarryx_u64(0x0, x594, x596);
- uint64_t x614, uint8_t x615 = addcarryx_u64(x612, x597, x599);
- uint64_t x617, uint8_t x618 = addcarryx_u64(x615, x600, x602);
- uint64_t x620, uint8_t x621 = addcarryx_u64(x618, x603, x605);
- uint64_t x623, uint8_t x624 = addcarryx_u64(x621, x606, x608);
- uint64_t x626, uint8_t _ = addcarryx_u64(0x0, x624, x609);
- uint64_t x629, uint8_t x630 = addcarryx_u64(0x0, x574, x593);
- uint64_t x632, uint8_t x633 = addcarryx_u64(x630, x577, x611);
- uint64_t x635, uint8_t x636 = addcarryx_u64(x633, x580, x614);
- uint64_t x638, uint8_t x639 = addcarryx_u64(x636, x583, x617);
- uint64_t x641, uint8_t x642 = addcarryx_u64(x639, x586, x620);
- uint64_t x644, uint8_t x645 = addcarryx_u64(x642, x589, x623);
- uint64_t x647, uint8_t x648 = addcarryx_u64(x645, x591, x626);
- uint64_t x650, uint64_t _ = mulx_u64(x629, 0x8f5c28f5c28f5c29L);
- uint64_t x653, uint64_t x654 = mulx_u64(x650, 0xffffffffffffffe7L);
- uint64_t x656, uint64_t x657 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x659, uint64_t x660 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x662, uint64_t x663 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x665, uint64_t x666 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x668, uint64_t x669 = mulx_u64(x650, 0x1ffffffffffff);
- uint64_t x671, uint8_t x672 = addcarryx_u64(0x0, x654, x656);
- uint64_t x674, uint8_t x675 = addcarryx_u64(x672, x657, x659);
- uint64_t x677, uint8_t x678 = addcarryx_u64(x675, x660, x662);
- uint64_t x680, uint8_t x681 = addcarryx_u64(x678, x663, x665);
- uint64_t x683, uint8_t x684 = addcarryx_u64(x681, x666, x668);
- uint64_t x686, uint8_t _ = addcarryx_u64(0x0, x684, x669);
- uint64_t _, uint8_t x690 = addcarryx_u64(0x0, x629, x653);
- uint64_t x692, uint8_t x693 = addcarryx_u64(x690, x632, x671);
- uint64_t x695, uint8_t x696 = addcarryx_u64(x693, x635, x674);
- uint64_t x698, uint8_t x699 = addcarryx_u64(x696, x638, x677);
- uint64_t x701, uint8_t x702 = addcarryx_u64(x699, x641, x680);
- uint64_t x704, uint8_t x705 = addcarryx_u64(x702, x644, x683);
- uint64_t x707, uint8_t x708 = addcarryx_u64(x705, x647, x686);
- uint8_t x709 = (x708 + x648);
- uint64_t x711, uint8_t x712 = subborrow_u64(0x0, x692, 0xffffffffffffffe7L);
- uint64_t x714, uint8_t x715 = subborrow_u64(x712, x695, 0xffffffffffffffffL);
- uint64_t x717, uint8_t x718 = subborrow_u64(x715, x698, 0xffffffffffffffffL);
- uint64_t x720, uint8_t x721 = subborrow_u64(x718, x701, 0xffffffffffffffffL);
- uint64_t x723, uint8_t x724 = subborrow_u64(x721, x704, 0xffffffffffffffffL);
- uint64_t x726, uint8_t x727 = subborrow_u64(x724, x707, 0x1ffffffffffff);
- uint64_t _, uint8_t x730 = subborrow_u64(x727, x709, 0x0);
- uint64_t x731 = cmovznz64(x730, x726, x707);
- uint64_t x732 = cmovznz64(x730, x723, x704);
- uint64_t x733 = cmovznz64(x730, x720, x701);
- uint64_t x734 = cmovznz64(x730, x717, x698);
- uint64_t x735 = cmovznz64(x730, x714, x695);
- uint64_t x736 = cmovznz64(x730, x711, x692);
- return (x731, x732, x733, x734, x735, x736))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e369m25_6limbs/femulDisplay.v b/src/Specific/montgomery64_2e369m25_6limbs/femulDisplay.v
deleted file mode 100644
index f78c4a083..000000000
--- a/src/Specific/montgomery64_2e369m25_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e369m25_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e369m25_6limbs/fenz.c b/src/Specific/montgomery64_2e369m25_6limbs/fenz.c
deleted file mode 100644
index c93f74257..000000000
--- a/src/Specific/montgomery64_2e369m25_6limbs/fenz.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x11 = (x10 | x9);
- { uint64_t x12 = (x8 | x11);
- { uint64_t x13 = (x6 | x12);
- { uint64_t x14 = (x4 | x13);
- { uint64_t x15 = (x2 | x14);
- out[0] = x15;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e369m25_6limbs/fenz.v b/src/Specific/montgomery64_2e369m25_6limbs/fenz.v
deleted file mode 100644
index 0126b8fd1..000000000
--- a/src/Specific/montgomery64_2e369m25_6limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e369m25_6limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e369m25_6limbs/fenzDisplay.log b/src/Specific/montgomery64_2e369m25_6limbs/fenzDisplay.log
deleted file mode 100644
index f39f1d91b..000000000
--- a/src/Specific/montgomery64_2e369m25_6limbs/fenzDisplay.log
+++ /dev/null
@@ -1,12 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x11 = (x10 | x9);
- uint64_t x12 = (x8 | x11);
- uint64_t x13 = (x6 | x12);
- uint64_t x14 = (x4 | x13);
- uint64_t x15 = (x2 | x14);
- return x15)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e369m25_6limbs/fenzDisplay.v b/src/Specific/montgomery64_2e369m25_6limbs/fenzDisplay.v
deleted file mode 100644
index 87fa839a0..000000000
--- a/src/Specific/montgomery64_2e369m25_6limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e369m25_6limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e369m25_6limbs/feopp.c b/src/Specific/montgomery64_2e369m25_6limbs/feopp.c
deleted file mode 100644
index 894e0aa8a..000000000
--- a/src/Specific/montgomery64_2e369m25_6limbs/feopp.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feopp(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12; uint8_t x13 = _subborrow_u64(0x0, 0x0, x2, &x12);
- { uint64_t x15; uint8_t x16 = _subborrow_u64(x13, 0x0, x4, &x15);
- { uint64_t x18; uint8_t x19 = _subborrow_u64(x16, 0x0, x6, &x18);
- { uint64_t x21; uint8_t x22 = _subborrow_u64(x19, 0x0, x8, &x21);
- { uint64_t x24; uint8_t x25 = _subborrow_u64(x22, 0x0, x10, &x24);
- { uint64_t x27; uint8_t x28 = _subborrow_u64(x25, 0x0, x9, &x27);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0xffffffffffffffe7L);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(0x0, x12, x30, &x32);
- { uint64_t x34 = (x29 & 0xffffffffffffffffL);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x33, x15, x34, &x36);
- { uint64_t x38 = (x29 & 0xffffffffffffffffL);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x37, x18, x38, &x40);
- { uint64_t x42 = (x29 & 0xffffffffffffffffL);
- { uint64_t x44; uint8_t x45 = _addcarryx_u64(x41, x21, x42, &x44);
- { uint64_t x46 = (x29 & 0xffffffffffffffffL);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x45, x24, x46, &x48);
- { uint64_t x50 = (x29 & 0x1ffffffffffff);
- { uint64_t x52; uint8_t _ = _addcarryx_u64(x49, x27, x50, &x52);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e369m25_6limbs/feopp.v b/src/Specific/montgomery64_2e369m25_6limbs/feopp.v
deleted file mode 100644
index aca02740b..000000000
--- a/src/Specific/montgomery64_2e369m25_6limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e369m25_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e369m25_6limbs/feoppDisplay.log b/src/Specific/montgomery64_2e369m25_6limbs/feoppDisplay.log
deleted file mode 100644
index b026fa121..000000000
--- a/src/Specific/montgomery64_2e369m25_6limbs/feoppDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x15, uint8_t x16 = subborrow_u64(x13, 0x0, x4);
- uint64_t x18, uint8_t x19 = subborrow_u64(x16, 0x0, x6);
- uint64_t x21, uint8_t x22 = subborrow_u64(x19, 0x0, x8);
- uint64_t x24, uint8_t x25 = subborrow_u64(x22, 0x0, x10);
- uint64_t x27, uint8_t x28 = subborrow_u64(x25, 0x0, x9);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0xffffffffffffffe7L);
- uint64_t x32, uint8_t x33 = addcarryx_u64(0x0, x12, x30);
- uint64_t x34 = (x29 & 0xffffffffffffffffL);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x33, x15, x34);
- uint64_t x38 = (x29 & 0xffffffffffffffffL);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x37, x18, x38);
- uint64_t x42 = (x29 & 0xffffffffffffffffL);
- uint64_t x44, uint8_t x45 = addcarryx_u64(x41, x21, x42);
- uint64_t x46 = (x29 & 0xffffffffffffffffL);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x45, x24, x46);
- uint64_t x50 = (x29 & 0x1ffffffffffff);
- uint64_t x52, uint8_t _ = addcarryx_u64(x49, x27, x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e369m25_6limbs/feoppDisplay.v b/src/Specific/montgomery64_2e369m25_6limbs/feoppDisplay.v
deleted file mode 100644
index 3a870069d..000000000
--- a/src/Specific/montgomery64_2e369m25_6limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e369m25_6limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e369m25_6limbs/fesquare.c b/src/Specific/montgomery64_2e369m25_6limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e369m25_6limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e369m25_6limbs/fesub.c b/src/Specific/montgomery64_2e369m25_6limbs/fesub.c
deleted file mode 100644
index f1c7b6a7b..000000000
--- a/src/Specific/montgomery64_2e369m25_6limbs/fesub.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _subborrow_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _subborrow_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _subborrow_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _subborrow_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _subborrow_u64(x38, x12, x22, &x40);
- { uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- { uint64_t x43 = (x42 & 0xffffffffffffffe7L);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(0x0, x25, x43, &x45);
- { uint64_t x47 = (x42 & 0xffffffffffffffffL);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x46, x28, x47, &x49);
- { uint64_t x51 = (x42 & 0xffffffffffffffffL);
- { uint64_t x53; uint8_t x54 = _addcarryx_u64(x50, x31, x51, &x53);
- { uint64_t x55 = (x42 & 0xffffffffffffffffL);
- { uint64_t x57; uint8_t x58 = _addcarryx_u64(x54, x34, x55, &x57);
- { uint64_t x59 = (x42 & 0xffffffffffffffffL);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x58, x37, x59, &x61);
- { uint64_t x63 = (x42 & 0x1ffffffffffff);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(x62, x40, x63, &x65);
- out[0] = x45;
- out[1] = x49;
- out[2] = x53;
- out[3] = x57;
- out[4] = x61;
- out[5] = x65;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e369m25_6limbs/fesub.v b/src/Specific/montgomery64_2e369m25_6limbs/fesub.v
deleted file mode 100644
index c3902efc8..000000000
--- a/src/Specific/montgomery64_2e369m25_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e369m25_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e369m25_6limbs/fesubDisplay.log b/src/Specific/montgomery64_2e369m25_6limbs/fesubDisplay.log
deleted file mode 100644
index 4b3eaa015..000000000
--- a/src/Specific/montgomery64_2e369m25_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = subborrow_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = subborrow_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = subborrow_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = subborrow_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = subborrow_u64(x38, x12, x22);
- uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- uint64_t x43 = (x42 & 0xffffffffffffffe7L);
- uint64_t x45, uint8_t x46 = addcarryx_u64(0x0, x25, x43);
- uint64_t x47 = (x42 & 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x46, x28, x47);
- uint64_t x51 = (x42 & 0xffffffffffffffffL);
- uint64_t x53, uint8_t x54 = addcarryx_u64(x50, x31, x51);
- uint64_t x55 = (x42 & 0xffffffffffffffffL);
- uint64_t x57, uint8_t x58 = addcarryx_u64(x54, x34, x55);
- uint64_t x59 = (x42 & 0xffffffffffffffffL);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x58, x37, x59);
- uint64_t x63 = (x42 & 0x1ffffffffffff);
- uint64_t x65, uint8_t _ = addcarryx_u64(x62, x40, x63);
- (Return x65, Return x61, Return x57, Return x53, Return x49, Return x45))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e369m25_6limbs/fesubDisplay.v b/src/Specific/montgomery64_2e369m25_6limbs/fesubDisplay.v
deleted file mode 100644
index d7819d83b..000000000
--- a/src/Specific/montgomery64_2e369m25_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e369m25_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e369m25_6limbs/py_interpreter.sh b/src/Specific/montgomery64_2e369m25_6limbs/py_interpreter.sh
deleted file mode 100755
index ac96489c7..000000000
--- a/src/Specific/montgomery64_2e369m25_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**369 - 25' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e379m19_6limbs/CurveParameters.v b/src/Specific/montgomery64_2e379m19_6limbs/CurveParameters.v
deleted file mode 100644
index 47dad6280..000000000
--- a/src/Specific/montgomery64_2e379m19_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^379 - 19
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 64;
- bitwidth := 64;
- s := 2^379;
- c := [(1, 19)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e379m19_6limbs/Synthesis.v b/src/Specific/montgomery64_2e379m19_6limbs/Synthesis.v
deleted file mode 100644
index 307ac87c9..000000000
--- a/src/Specific/montgomery64_2e379m19_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e379m19_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/montgomery64_2e379m19_6limbs/compiler.sh b/src/Specific/montgomery64_2e379m19_6limbs/compiler.sh
deleted file mode 100755
index d25b73e09..000000000
--- a/src/Specific/montgomery64_2e379m19_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<379) - 19' "$@"
diff --git a/src/Specific/montgomery64_2e379m19_6limbs/compilerxx.sh b/src/Specific/montgomery64_2e379m19_6limbs/compilerxx.sh
deleted file mode 100755
index 94c51f2a6..000000000
--- a/src/Specific/montgomery64_2e379m19_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<379) - 19' "$@"
diff --git a/src/Specific/montgomery64_2e379m19_6limbs/feadd.c b/src/Specific/montgomery64_2e379m19_6limbs/feadd.c
deleted file mode 100644
index cd9f98c5f..000000000
--- a/src/Specific/montgomery64_2e379m19_6limbs/feadd.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _addcarryx_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _addcarryx_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x38, x12, x22, &x40);
- { uint64_t x43; uint8_t x44 = _subborrow_u64(0x0, x25, 0xffffffffffffffedL, &x43);
- { uint64_t x46; uint8_t x47 = _subborrow_u64(x44, x28, 0xffffffffffffffffL, &x46);
- { uint64_t x49; uint8_t x50 = _subborrow_u64(x47, x31, 0xffffffffffffffffL, &x49);
- { uint64_t x52; uint8_t x53 = _subborrow_u64(x50, x34, 0xffffffffffffffffL, &x52);
- { uint64_t x55; uint8_t x56 = _subborrow_u64(x53, x37, 0xffffffffffffffffL, &x55);
- { uint64_t x58; uint8_t x59 = _subborrow_u64(x56, x40, 0x7ffffffffffffff, &x58);
- { uint64_t _; uint8_t x62 = _subborrow_u64(x59, x41, 0x0, &_);
- { uint64_t x63 = cmovznz64(x62, x58, x40);
- { uint64_t x64 = cmovznz64(x62, x55, x37);
- { uint64_t x65 = cmovznz64(x62, x52, x34);
- { uint64_t x66 = cmovznz64(x62, x49, x31);
- { uint64_t x67 = cmovznz64(x62, x46, x28);
- { uint64_t x68 = cmovznz64(x62, x43, x25);
- out[0] = x68;
- out[1] = x67;
- out[2] = x66;
- out[3] = x65;
- out[4] = x64;
- out[5] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e379m19_6limbs/feadd.v b/src/Specific/montgomery64_2e379m19_6limbs/feadd.v
deleted file mode 100644
index d2e4243ed..000000000
--- a/src/Specific/montgomery64_2e379m19_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e379m19_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e379m19_6limbs/feaddDisplay.log b/src/Specific/montgomery64_2e379m19_6limbs/feaddDisplay.log
deleted file mode 100644
index 5c48f68c5..000000000
--- a/src/Specific/montgomery64_2e379m19_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = addcarryx_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = addcarryx_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = addcarryx_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = addcarryx_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x38, x12, x22);
- uint64_t x43, uint8_t x44 = subborrow_u64(0x0, x25, 0xffffffffffffffedL);
- uint64_t x46, uint8_t x47 = subborrow_u64(x44, x28, 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = subborrow_u64(x47, x31, 0xffffffffffffffffL);
- uint64_t x52, uint8_t x53 = subborrow_u64(x50, x34, 0xffffffffffffffffL);
- uint64_t x55, uint8_t x56 = subborrow_u64(x53, x37, 0xffffffffffffffffL);
- uint64_t x58, uint8_t x59 = subborrow_u64(x56, x40, 0x7ffffffffffffff);
- uint64_t _, uint8_t x62 = subborrow_u64(x59, x41, 0x0);
- uint64_t x63 = cmovznz64(x62, x58, x40);
- uint64_t x64 = cmovznz64(x62, x55, x37);
- uint64_t x65 = cmovznz64(x62, x52, x34);
- uint64_t x66 = cmovznz64(x62, x49, x31);
- uint64_t x67 = cmovznz64(x62, x46, x28);
- uint64_t x68 = cmovznz64(x62, x43, x25);
- return (x63, x64, x65, x66, x67, x68))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e379m19_6limbs/feaddDisplay.v b/src/Specific/montgomery64_2e379m19_6limbs/feaddDisplay.v
deleted file mode 100644
index 52be7bff7..000000000
--- a/src/Specific/montgomery64_2e379m19_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e379m19_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e379m19_6limbs/femul.c b/src/Specific/montgomery64_2e379m19_6limbs/femul.c
deleted file mode 100644
index cdf5ff0fc..000000000
--- a/src/Specific/montgomery64_2e379m19_6limbs/femul.c
+++ /dev/null
@@ -1,266 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x26; uint64_t x25 = _mulx_u64(x5, x15, &x26);
- { uint64_t x29; uint64_t x28 = _mulx_u64(x5, x17, &x29);
- { uint64_t x32; uint64_t x31 = _mulx_u64(x5, x19, &x32);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x5, x21, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x5, x23, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x5, x22, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x26, x28, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x29, x31, &x46);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x47, x32, x34, &x49);
- { uint64_t x52; uint8_t x53 = _addcarryx_u64(x50, x35, x37, &x52);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x38, x40, &x55);
- { uint64_t x58; uint8_t _ = _addcarryx_u64(0x0, x56, x41, &x58);
- { uint64_t _; uint64_t x61 = _mulx_u64(x25, 0x86bca1af286bca1bL, &_);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x61, 0xffffffffffffffedL, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x61, 0xffffffffffffffffL, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x61, 0xffffffffffffffffL, &x71);
- { uint64_t x74; uint64_t x73 = _mulx_u64(x61, 0xffffffffffffffffL, &x74);
- { uint64_t x77; uint64_t x76 = _mulx_u64(x61, 0xffffffffffffffffL, &x77);
- { uint64_t x80; uint64_t x79 = _mulx_u64(x61, 0x7ffffffffffffff, &x80);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x65, x67, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x68, x70, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x71, x73, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x74, x76, &x91);
- { uint64_t x94; uint8_t x95 = _addcarryx_u64(x92, x77, x79, &x94);
- { uint64_t x97; uint8_t _ = _addcarryx_u64(0x0, x95, x80, &x97);
- { uint64_t _; uint8_t x101 = _addcarryx_u64(0x0, x25, x64, &_);
- { uint64_t x103; uint8_t x104 = _addcarryx_u64(x101, x43, x82, &x103);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(x104, x46, x85, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x49, x88, &x109);
- { uint64_t x112; uint8_t x113 = _addcarryx_u64(x110, x52, x91, &x112);
- { uint64_t x115; uint8_t x116 = _addcarryx_u64(x113, x55, x94, &x115);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x58, x97, &x118);
- { uint64_t x122; uint64_t x121 = _mulx_u64(x7, x15, &x122);
- { uint64_t x125; uint64_t x124 = _mulx_u64(x7, x17, &x125);
- { uint64_t x128; uint64_t x127 = _mulx_u64(x7, x19, &x128);
- { uint64_t x131; uint64_t x130 = _mulx_u64(x7, x21, &x131);
- { uint64_t x134; uint64_t x133 = _mulx_u64(x7, x23, &x134);
- { uint64_t x137; uint64_t x136 = _mulx_u64(x7, x22, &x137);
- { uint64_t x139; uint8_t x140 = _addcarryx_u64(0x0, x122, x124, &x139);
- { uint64_t x142; uint8_t x143 = _addcarryx_u64(x140, x125, x127, &x142);
- { uint64_t x145; uint8_t x146 = _addcarryx_u64(x143, x128, x130, &x145);
- { uint64_t x148; uint8_t x149 = _addcarryx_u64(x146, x131, x133, &x148);
- { uint64_t x151; uint8_t x152 = _addcarryx_u64(x149, x134, x136, &x151);
- { uint64_t x154; uint8_t _ = _addcarryx_u64(0x0, x152, x137, &x154);
- { uint64_t x157; uint8_t x158 = _addcarryx_u64(0x0, x103, x121, &x157);
- { uint64_t x160; uint8_t x161 = _addcarryx_u64(x158, x106, x139, &x160);
- { uint64_t x163; uint8_t x164 = _addcarryx_u64(x161, x109, x142, &x163);
- { uint64_t x166; uint8_t x167 = _addcarryx_u64(x164, x112, x145, &x166);
- { uint64_t x169; uint8_t x170 = _addcarryx_u64(x167, x115, x148, &x169);
- { uint64_t x172; uint8_t x173 = _addcarryx_u64(x170, x118, x151, &x172);
- { uint64_t x175; uint8_t x176 = _addcarryx_u64(x173, x119, x154, &x175);
- { uint64_t _; uint64_t x178 = _mulx_u64(x157, 0x86bca1af286bca1bL, &_);
- { uint64_t x182; uint64_t x181 = _mulx_u64(x178, 0xffffffffffffffedL, &x182);
- { uint64_t x185; uint64_t x184 = _mulx_u64(x178, 0xffffffffffffffffL, &x185);
- { uint64_t x188; uint64_t x187 = _mulx_u64(x178, 0xffffffffffffffffL, &x188);
- { uint64_t x191; uint64_t x190 = _mulx_u64(x178, 0xffffffffffffffffL, &x191);
- { uint64_t x194; uint64_t x193 = _mulx_u64(x178, 0xffffffffffffffffL, &x194);
- { uint64_t x197; uint64_t x196 = _mulx_u64(x178, 0x7ffffffffffffff, &x197);
- { uint64_t x199; uint8_t x200 = _addcarryx_u64(0x0, x182, x184, &x199);
- { uint64_t x202; uint8_t x203 = _addcarryx_u64(x200, x185, x187, &x202);
- { uint64_t x205; uint8_t x206 = _addcarryx_u64(x203, x188, x190, &x205);
- { uint64_t x208; uint8_t x209 = _addcarryx_u64(x206, x191, x193, &x208);
- { uint64_t x211; uint8_t x212 = _addcarryx_u64(x209, x194, x196, &x211);
- { uint64_t x214; uint8_t _ = _addcarryx_u64(0x0, x212, x197, &x214);
- { uint64_t _; uint8_t x218 = _addcarryx_u64(0x0, x157, x181, &_);
- { uint64_t x220; uint8_t x221 = _addcarryx_u64(x218, x160, x199, &x220);
- { uint64_t x223; uint8_t x224 = _addcarryx_u64(x221, x163, x202, &x223);
- { uint64_t x226; uint8_t x227 = _addcarryx_u64(x224, x166, x205, &x226);
- { uint64_t x229; uint8_t x230 = _addcarryx_u64(x227, x169, x208, &x229);
- { uint64_t x232; uint8_t x233 = _addcarryx_u64(x230, x172, x211, &x232);
- { uint64_t x235; uint8_t x236 = _addcarryx_u64(x233, x175, x214, &x235);
- { uint8_t x237 = (x236 + x176);
- { uint64_t x240; uint64_t x239 = _mulx_u64(x9, x15, &x240);
- { uint64_t x243; uint64_t x242 = _mulx_u64(x9, x17, &x243);
- { uint64_t x246; uint64_t x245 = _mulx_u64(x9, x19, &x246);
- { uint64_t x249; uint64_t x248 = _mulx_u64(x9, x21, &x249);
- { uint64_t x252; uint64_t x251 = _mulx_u64(x9, x23, &x252);
- { uint64_t x255; uint64_t x254 = _mulx_u64(x9, x22, &x255);
- { uint64_t x257; uint8_t x258 = _addcarryx_u64(0x0, x240, x242, &x257);
- { uint64_t x260; uint8_t x261 = _addcarryx_u64(x258, x243, x245, &x260);
- { uint64_t x263; uint8_t x264 = _addcarryx_u64(x261, x246, x248, &x263);
- { uint64_t x266; uint8_t x267 = _addcarryx_u64(x264, x249, x251, &x266);
- { uint64_t x269; uint8_t x270 = _addcarryx_u64(x267, x252, x254, &x269);
- { uint64_t x272; uint8_t _ = _addcarryx_u64(0x0, x270, x255, &x272);
- { uint64_t x275; uint8_t x276 = _addcarryx_u64(0x0, x220, x239, &x275);
- { uint64_t x278; uint8_t x279 = _addcarryx_u64(x276, x223, x257, &x278);
- { uint64_t x281; uint8_t x282 = _addcarryx_u64(x279, x226, x260, &x281);
- { uint64_t x284; uint8_t x285 = _addcarryx_u64(x282, x229, x263, &x284);
- { uint64_t x287; uint8_t x288 = _addcarryx_u64(x285, x232, x266, &x287);
- { uint64_t x290; uint8_t x291 = _addcarryx_u64(x288, x235, x269, &x290);
- { uint64_t x293; uint8_t x294 = _addcarryx_u64(x291, x237, x272, &x293);
- { uint64_t _; uint64_t x296 = _mulx_u64(x275, 0x86bca1af286bca1bL, &_);
- { uint64_t x300; uint64_t x299 = _mulx_u64(x296, 0xffffffffffffffedL, &x300);
- { uint64_t x303; uint64_t x302 = _mulx_u64(x296, 0xffffffffffffffffL, &x303);
- { uint64_t x306; uint64_t x305 = _mulx_u64(x296, 0xffffffffffffffffL, &x306);
- { uint64_t x309; uint64_t x308 = _mulx_u64(x296, 0xffffffffffffffffL, &x309);
- { uint64_t x312; uint64_t x311 = _mulx_u64(x296, 0xffffffffffffffffL, &x312);
- { uint64_t x315; uint64_t x314 = _mulx_u64(x296, 0x7ffffffffffffff, &x315);
- { uint64_t x317; uint8_t x318 = _addcarryx_u64(0x0, x300, x302, &x317);
- { uint64_t x320; uint8_t x321 = _addcarryx_u64(x318, x303, x305, &x320);
- { uint64_t x323; uint8_t x324 = _addcarryx_u64(x321, x306, x308, &x323);
- { uint64_t x326; uint8_t x327 = _addcarryx_u64(x324, x309, x311, &x326);
- { uint64_t x329; uint8_t x330 = _addcarryx_u64(x327, x312, x314, &x329);
- { uint64_t x332; uint8_t _ = _addcarryx_u64(0x0, x330, x315, &x332);
- { uint64_t _; uint8_t x336 = _addcarryx_u64(0x0, x275, x299, &_);
- { uint64_t x338; uint8_t x339 = _addcarryx_u64(x336, x278, x317, &x338);
- { uint64_t x341; uint8_t x342 = _addcarryx_u64(x339, x281, x320, &x341);
- { uint64_t x344; uint8_t x345 = _addcarryx_u64(x342, x284, x323, &x344);
- { uint64_t x347; uint8_t x348 = _addcarryx_u64(x345, x287, x326, &x347);
- { uint64_t x350; uint8_t x351 = _addcarryx_u64(x348, x290, x329, &x350);
- { uint64_t x353; uint8_t x354 = _addcarryx_u64(x351, x293, x332, &x353);
- { uint8_t x355 = (x354 + x294);
- { uint64_t x358; uint64_t x357 = _mulx_u64(x11, x15, &x358);
- { uint64_t x361; uint64_t x360 = _mulx_u64(x11, x17, &x361);
- { uint64_t x364; uint64_t x363 = _mulx_u64(x11, x19, &x364);
- { uint64_t x367; uint64_t x366 = _mulx_u64(x11, x21, &x367);
- { uint64_t x370; uint64_t x369 = _mulx_u64(x11, x23, &x370);
- { uint64_t x373; uint64_t x372 = _mulx_u64(x11, x22, &x373);
- { uint64_t x375; uint8_t x376 = _addcarryx_u64(0x0, x358, x360, &x375);
- { uint64_t x378; uint8_t x379 = _addcarryx_u64(x376, x361, x363, &x378);
- { uint64_t x381; uint8_t x382 = _addcarryx_u64(x379, x364, x366, &x381);
- { uint64_t x384; uint8_t x385 = _addcarryx_u64(x382, x367, x369, &x384);
- { uint64_t x387; uint8_t x388 = _addcarryx_u64(x385, x370, x372, &x387);
- { uint64_t x390; uint8_t _ = _addcarryx_u64(0x0, x388, x373, &x390);
- { uint64_t x393; uint8_t x394 = _addcarryx_u64(0x0, x338, x357, &x393);
- { uint64_t x396; uint8_t x397 = _addcarryx_u64(x394, x341, x375, &x396);
- { uint64_t x399; uint8_t x400 = _addcarryx_u64(x397, x344, x378, &x399);
- { uint64_t x402; uint8_t x403 = _addcarryx_u64(x400, x347, x381, &x402);
- { uint64_t x405; uint8_t x406 = _addcarryx_u64(x403, x350, x384, &x405);
- { uint64_t x408; uint8_t x409 = _addcarryx_u64(x406, x353, x387, &x408);
- { uint64_t x411; uint8_t x412 = _addcarryx_u64(x409, x355, x390, &x411);
- { uint64_t _; uint64_t x414 = _mulx_u64(x393, 0x86bca1af286bca1bL, &_);
- { uint64_t x418; uint64_t x417 = _mulx_u64(x414, 0xffffffffffffffedL, &x418);
- { uint64_t x421; uint64_t x420 = _mulx_u64(x414, 0xffffffffffffffffL, &x421);
- { uint64_t x424; uint64_t x423 = _mulx_u64(x414, 0xffffffffffffffffL, &x424);
- { uint64_t x427; uint64_t x426 = _mulx_u64(x414, 0xffffffffffffffffL, &x427);
- { uint64_t x430; uint64_t x429 = _mulx_u64(x414, 0xffffffffffffffffL, &x430);
- { uint64_t x433; uint64_t x432 = _mulx_u64(x414, 0x7ffffffffffffff, &x433);
- { uint64_t x435; uint8_t x436 = _addcarryx_u64(0x0, x418, x420, &x435);
- { uint64_t x438; uint8_t x439 = _addcarryx_u64(x436, x421, x423, &x438);
- { uint64_t x441; uint8_t x442 = _addcarryx_u64(x439, x424, x426, &x441);
- { uint64_t x444; uint8_t x445 = _addcarryx_u64(x442, x427, x429, &x444);
- { uint64_t x447; uint8_t x448 = _addcarryx_u64(x445, x430, x432, &x447);
- { uint64_t x450; uint8_t _ = _addcarryx_u64(0x0, x448, x433, &x450);
- { uint64_t _; uint8_t x454 = _addcarryx_u64(0x0, x393, x417, &_);
- { uint64_t x456; uint8_t x457 = _addcarryx_u64(x454, x396, x435, &x456);
- { uint64_t x459; uint8_t x460 = _addcarryx_u64(x457, x399, x438, &x459);
- { uint64_t x462; uint8_t x463 = _addcarryx_u64(x460, x402, x441, &x462);
- { uint64_t x465; uint8_t x466 = _addcarryx_u64(x463, x405, x444, &x465);
- { uint64_t x468; uint8_t x469 = _addcarryx_u64(x466, x408, x447, &x468);
- { uint64_t x471; uint8_t x472 = _addcarryx_u64(x469, x411, x450, &x471);
- { uint8_t x473 = (x472 + x412);
- { uint64_t x476; uint64_t x475 = _mulx_u64(x13, x15, &x476);
- { uint64_t x479; uint64_t x478 = _mulx_u64(x13, x17, &x479);
- { uint64_t x482; uint64_t x481 = _mulx_u64(x13, x19, &x482);
- { uint64_t x485; uint64_t x484 = _mulx_u64(x13, x21, &x485);
- { uint64_t x488; uint64_t x487 = _mulx_u64(x13, x23, &x488);
- { uint64_t x491; uint64_t x490 = _mulx_u64(x13, x22, &x491);
- { uint64_t x493; uint8_t x494 = _addcarryx_u64(0x0, x476, x478, &x493);
- { uint64_t x496; uint8_t x497 = _addcarryx_u64(x494, x479, x481, &x496);
- { uint64_t x499; uint8_t x500 = _addcarryx_u64(x497, x482, x484, &x499);
- { uint64_t x502; uint8_t x503 = _addcarryx_u64(x500, x485, x487, &x502);
- { uint64_t x505; uint8_t x506 = _addcarryx_u64(x503, x488, x490, &x505);
- { uint64_t x508; uint8_t _ = _addcarryx_u64(0x0, x506, x491, &x508);
- { uint64_t x511; uint8_t x512 = _addcarryx_u64(0x0, x456, x475, &x511);
- { uint64_t x514; uint8_t x515 = _addcarryx_u64(x512, x459, x493, &x514);
- { uint64_t x517; uint8_t x518 = _addcarryx_u64(x515, x462, x496, &x517);
- { uint64_t x520; uint8_t x521 = _addcarryx_u64(x518, x465, x499, &x520);
- { uint64_t x523; uint8_t x524 = _addcarryx_u64(x521, x468, x502, &x523);
- { uint64_t x526; uint8_t x527 = _addcarryx_u64(x524, x471, x505, &x526);
- { uint64_t x529; uint8_t x530 = _addcarryx_u64(x527, x473, x508, &x529);
- { uint64_t _; uint64_t x532 = _mulx_u64(x511, 0x86bca1af286bca1bL, &_);
- { uint64_t x536; uint64_t x535 = _mulx_u64(x532, 0xffffffffffffffedL, &x536);
- { uint64_t x539; uint64_t x538 = _mulx_u64(x532, 0xffffffffffffffffL, &x539);
- { uint64_t x542; uint64_t x541 = _mulx_u64(x532, 0xffffffffffffffffL, &x542);
- { uint64_t x545; uint64_t x544 = _mulx_u64(x532, 0xffffffffffffffffL, &x545);
- { uint64_t x548; uint64_t x547 = _mulx_u64(x532, 0xffffffffffffffffL, &x548);
- { uint64_t x551; uint64_t x550 = _mulx_u64(x532, 0x7ffffffffffffff, &x551);
- { uint64_t x553; uint8_t x554 = _addcarryx_u64(0x0, x536, x538, &x553);
- { uint64_t x556; uint8_t x557 = _addcarryx_u64(x554, x539, x541, &x556);
- { uint64_t x559; uint8_t x560 = _addcarryx_u64(x557, x542, x544, &x559);
- { uint64_t x562; uint8_t x563 = _addcarryx_u64(x560, x545, x547, &x562);
- { uint64_t x565; uint8_t x566 = _addcarryx_u64(x563, x548, x550, &x565);
- { uint64_t x568; uint8_t _ = _addcarryx_u64(0x0, x566, x551, &x568);
- { uint64_t _; uint8_t x572 = _addcarryx_u64(0x0, x511, x535, &_);
- { uint64_t x574; uint8_t x575 = _addcarryx_u64(x572, x514, x553, &x574);
- { uint64_t x577; uint8_t x578 = _addcarryx_u64(x575, x517, x556, &x577);
- { uint64_t x580; uint8_t x581 = _addcarryx_u64(x578, x520, x559, &x580);
- { uint64_t x583; uint8_t x584 = _addcarryx_u64(x581, x523, x562, &x583);
- { uint64_t x586; uint8_t x587 = _addcarryx_u64(x584, x526, x565, &x586);
- { uint64_t x589; uint8_t x590 = _addcarryx_u64(x587, x529, x568, &x589);
- { uint8_t x591 = (x590 + x530);
- { uint64_t x594; uint64_t x593 = _mulx_u64(x12, x15, &x594);
- { uint64_t x597; uint64_t x596 = _mulx_u64(x12, x17, &x597);
- { uint64_t x600; uint64_t x599 = _mulx_u64(x12, x19, &x600);
- { uint64_t x603; uint64_t x602 = _mulx_u64(x12, x21, &x603);
- { uint64_t x606; uint64_t x605 = _mulx_u64(x12, x23, &x606);
- { uint64_t x609; uint64_t x608 = _mulx_u64(x12, x22, &x609);
- { uint64_t x611; uint8_t x612 = _addcarryx_u64(0x0, x594, x596, &x611);
- { uint64_t x614; uint8_t x615 = _addcarryx_u64(x612, x597, x599, &x614);
- { uint64_t x617; uint8_t x618 = _addcarryx_u64(x615, x600, x602, &x617);
- { uint64_t x620; uint8_t x621 = _addcarryx_u64(x618, x603, x605, &x620);
- { uint64_t x623; uint8_t x624 = _addcarryx_u64(x621, x606, x608, &x623);
- { uint64_t x626; uint8_t _ = _addcarryx_u64(0x0, x624, x609, &x626);
- { uint64_t x629; uint8_t x630 = _addcarryx_u64(0x0, x574, x593, &x629);
- { uint64_t x632; uint8_t x633 = _addcarryx_u64(x630, x577, x611, &x632);
- { uint64_t x635; uint8_t x636 = _addcarryx_u64(x633, x580, x614, &x635);
- { uint64_t x638; uint8_t x639 = _addcarryx_u64(x636, x583, x617, &x638);
- { uint64_t x641; uint8_t x642 = _addcarryx_u64(x639, x586, x620, &x641);
- { uint64_t x644; uint8_t x645 = _addcarryx_u64(x642, x589, x623, &x644);
- { uint64_t x647; uint8_t x648 = _addcarryx_u64(x645, x591, x626, &x647);
- { uint64_t _; uint64_t x650 = _mulx_u64(x629, 0x86bca1af286bca1bL, &_);
- { uint64_t x654; uint64_t x653 = _mulx_u64(x650, 0xffffffffffffffedL, &x654);
- { uint64_t x657; uint64_t x656 = _mulx_u64(x650, 0xffffffffffffffffL, &x657);
- { uint64_t x660; uint64_t x659 = _mulx_u64(x650, 0xffffffffffffffffL, &x660);
- { uint64_t x663; uint64_t x662 = _mulx_u64(x650, 0xffffffffffffffffL, &x663);
- { uint64_t x666; uint64_t x665 = _mulx_u64(x650, 0xffffffffffffffffL, &x666);
- { uint64_t x669; uint64_t x668 = _mulx_u64(x650, 0x7ffffffffffffff, &x669);
- { uint64_t x671; uint8_t x672 = _addcarryx_u64(0x0, x654, x656, &x671);
- { uint64_t x674; uint8_t x675 = _addcarryx_u64(x672, x657, x659, &x674);
- { uint64_t x677; uint8_t x678 = _addcarryx_u64(x675, x660, x662, &x677);
- { uint64_t x680; uint8_t x681 = _addcarryx_u64(x678, x663, x665, &x680);
- { uint64_t x683; uint8_t x684 = _addcarryx_u64(x681, x666, x668, &x683);
- { uint64_t x686; uint8_t _ = _addcarryx_u64(0x0, x684, x669, &x686);
- { uint64_t _; uint8_t x690 = _addcarryx_u64(0x0, x629, x653, &_);
- { uint64_t x692; uint8_t x693 = _addcarryx_u64(x690, x632, x671, &x692);
- { uint64_t x695; uint8_t x696 = _addcarryx_u64(x693, x635, x674, &x695);
- { uint64_t x698; uint8_t x699 = _addcarryx_u64(x696, x638, x677, &x698);
- { uint64_t x701; uint8_t x702 = _addcarryx_u64(x699, x641, x680, &x701);
- { uint64_t x704; uint8_t x705 = _addcarryx_u64(x702, x644, x683, &x704);
- { uint64_t x707; uint8_t x708 = _addcarryx_u64(x705, x647, x686, &x707);
- { uint8_t x709 = (x708 + x648);
- { uint64_t x711; uint8_t x712 = _subborrow_u64(0x0, x692, 0xffffffffffffffedL, &x711);
- { uint64_t x714; uint8_t x715 = _subborrow_u64(x712, x695, 0xffffffffffffffffL, &x714);
- { uint64_t x717; uint8_t x718 = _subborrow_u64(x715, x698, 0xffffffffffffffffL, &x717);
- { uint64_t x720; uint8_t x721 = _subborrow_u64(x718, x701, 0xffffffffffffffffL, &x720);
- { uint64_t x723; uint8_t x724 = _subborrow_u64(x721, x704, 0xffffffffffffffffL, &x723);
- { uint64_t x726; uint8_t x727 = _subborrow_u64(x724, x707, 0x7ffffffffffffff, &x726);
- { uint64_t _; uint8_t x730 = _subborrow_u64(x727, x709, 0x0, &_);
- { uint64_t x731 = cmovznz64(x730, x726, x707);
- { uint64_t x732 = cmovznz64(x730, x723, x704);
- { uint64_t x733 = cmovznz64(x730, x720, x701);
- { uint64_t x734 = cmovznz64(x730, x717, x698);
- { uint64_t x735 = cmovznz64(x730, x714, x695);
- { uint64_t x736 = cmovznz64(x730, x711, x692);
- out[0] = x736;
- out[1] = x735;
- out[2] = x734;
- out[3] = x733;
- out[4] = x732;
- out[5] = x731;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e379m19_6limbs/femul.v b/src/Specific/montgomery64_2e379m19_6limbs/femul.v
deleted file mode 100644
index 3bf9fed05..000000000
--- a/src/Specific/montgomery64_2e379m19_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e379m19_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e379m19_6limbs/femulDisplay.log b/src/Specific/montgomery64_2e379m19_6limbs/femulDisplay.log
deleted file mode 100644
index 5154ce6bd..000000000
--- a/src/Specific/montgomery64_2e379m19_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,252 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint64_t x26 = mulx_u64(x5, x15);
- uint64_t x28, uint64_t x29 = mulx_u64(x5, x17);
- uint64_t x31, uint64_t x32 = mulx_u64(x5, x19);
- uint64_t x34, uint64_t x35 = mulx_u64(x5, x21);
- uint64_t x37, uint64_t x38 = mulx_u64(x5, x23);
- uint64_t x40, uint64_t x41 = mulx_u64(x5, x22);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x26, x28);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x29, x31);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x47, x32, x34);
- uint64_t x52, uint8_t x53 = addcarryx_u64(x50, x35, x37);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x38, x40);
- uint64_t x58, uint8_t _ = addcarryx_u64(0x0, x56, x41);
- uint64_t x61, uint64_t _ = mulx_u64(x25, 0x86bca1af286bca1bL);
- uint64_t x64, uint64_t x65 = mulx_u64(x61, 0xffffffffffffffedL);
- uint64_t x67, uint64_t x68 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x70, uint64_t x71 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x73, uint64_t x74 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x76, uint64_t x77 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x79, uint64_t x80 = mulx_u64(x61, 0x7ffffffffffffff);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x65, x67);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x68, x70);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x71, x73);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x74, x76);
- uint64_t x94, uint8_t x95 = addcarryx_u64(x92, x77, x79);
- uint64_t x97, uint8_t _ = addcarryx_u64(0x0, x95, x80);
- uint64_t _, uint8_t x101 = addcarryx_u64(0x0, x25, x64);
- uint64_t x103, uint8_t x104 = addcarryx_u64(x101, x43, x82);
- uint64_t x106, uint8_t x107 = addcarryx_u64(x104, x46, x85);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x49, x88);
- uint64_t x112, uint8_t x113 = addcarryx_u64(x110, x52, x91);
- uint64_t x115, uint8_t x116 = addcarryx_u64(x113, x55, x94);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x58, x97);
- uint64_t x121, uint64_t x122 = mulx_u64(x7, x15);
- uint64_t x124, uint64_t x125 = mulx_u64(x7, x17);
- uint64_t x127, uint64_t x128 = mulx_u64(x7, x19);
- uint64_t x130, uint64_t x131 = mulx_u64(x7, x21);
- uint64_t x133, uint64_t x134 = mulx_u64(x7, x23);
- uint64_t x136, uint64_t x137 = mulx_u64(x7, x22);
- uint64_t x139, uint8_t x140 = addcarryx_u64(0x0, x122, x124);
- uint64_t x142, uint8_t x143 = addcarryx_u64(x140, x125, x127);
- uint64_t x145, uint8_t x146 = addcarryx_u64(x143, x128, x130);
- uint64_t x148, uint8_t x149 = addcarryx_u64(x146, x131, x133);
- uint64_t x151, uint8_t x152 = addcarryx_u64(x149, x134, x136);
- uint64_t x154, uint8_t _ = addcarryx_u64(0x0, x152, x137);
- uint64_t x157, uint8_t x158 = addcarryx_u64(0x0, x103, x121);
- uint64_t x160, uint8_t x161 = addcarryx_u64(x158, x106, x139);
- uint64_t x163, uint8_t x164 = addcarryx_u64(x161, x109, x142);
- uint64_t x166, uint8_t x167 = addcarryx_u64(x164, x112, x145);
- uint64_t x169, uint8_t x170 = addcarryx_u64(x167, x115, x148);
- uint64_t x172, uint8_t x173 = addcarryx_u64(x170, x118, x151);
- uint64_t x175, uint8_t x176 = addcarryx_u64(x173, x119, x154);
- uint64_t x178, uint64_t _ = mulx_u64(x157, 0x86bca1af286bca1bL);
- uint64_t x181, uint64_t x182 = mulx_u64(x178, 0xffffffffffffffedL);
- uint64_t x184, uint64_t x185 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x187, uint64_t x188 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x190, uint64_t x191 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x193, uint64_t x194 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x196, uint64_t x197 = mulx_u64(x178, 0x7ffffffffffffff);
- uint64_t x199, uint8_t x200 = addcarryx_u64(0x0, x182, x184);
- uint64_t x202, uint8_t x203 = addcarryx_u64(x200, x185, x187);
- uint64_t x205, uint8_t x206 = addcarryx_u64(x203, x188, x190);
- uint64_t x208, uint8_t x209 = addcarryx_u64(x206, x191, x193);
- uint64_t x211, uint8_t x212 = addcarryx_u64(x209, x194, x196);
- uint64_t x214, uint8_t _ = addcarryx_u64(0x0, x212, x197);
- uint64_t _, uint8_t x218 = addcarryx_u64(0x0, x157, x181);
- uint64_t x220, uint8_t x221 = addcarryx_u64(x218, x160, x199);
- uint64_t x223, uint8_t x224 = addcarryx_u64(x221, x163, x202);
- uint64_t x226, uint8_t x227 = addcarryx_u64(x224, x166, x205);
- uint64_t x229, uint8_t x230 = addcarryx_u64(x227, x169, x208);
- uint64_t x232, uint8_t x233 = addcarryx_u64(x230, x172, x211);
- uint64_t x235, uint8_t x236 = addcarryx_u64(x233, x175, x214);
- uint8_t x237 = (x236 + x176);
- uint64_t x239, uint64_t x240 = mulx_u64(x9, x15);
- uint64_t x242, uint64_t x243 = mulx_u64(x9, x17);
- uint64_t x245, uint64_t x246 = mulx_u64(x9, x19);
- uint64_t x248, uint64_t x249 = mulx_u64(x9, x21);
- uint64_t x251, uint64_t x252 = mulx_u64(x9, x23);
- uint64_t x254, uint64_t x255 = mulx_u64(x9, x22);
- uint64_t x257, uint8_t x258 = addcarryx_u64(0x0, x240, x242);
- uint64_t x260, uint8_t x261 = addcarryx_u64(x258, x243, x245);
- uint64_t x263, uint8_t x264 = addcarryx_u64(x261, x246, x248);
- uint64_t x266, uint8_t x267 = addcarryx_u64(x264, x249, x251);
- uint64_t x269, uint8_t x270 = addcarryx_u64(x267, x252, x254);
- uint64_t x272, uint8_t _ = addcarryx_u64(0x0, x270, x255);
- uint64_t x275, uint8_t x276 = addcarryx_u64(0x0, x220, x239);
- uint64_t x278, uint8_t x279 = addcarryx_u64(x276, x223, x257);
- uint64_t x281, uint8_t x282 = addcarryx_u64(x279, x226, x260);
- uint64_t x284, uint8_t x285 = addcarryx_u64(x282, x229, x263);
- uint64_t x287, uint8_t x288 = addcarryx_u64(x285, x232, x266);
- uint64_t x290, uint8_t x291 = addcarryx_u64(x288, x235, x269);
- uint64_t x293, uint8_t x294 = addcarryx_u64(x291, x237, x272);
- uint64_t x296, uint64_t _ = mulx_u64(x275, 0x86bca1af286bca1bL);
- uint64_t x299, uint64_t x300 = mulx_u64(x296, 0xffffffffffffffedL);
- uint64_t x302, uint64_t x303 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x305, uint64_t x306 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x308, uint64_t x309 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x311, uint64_t x312 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x314, uint64_t x315 = mulx_u64(x296, 0x7ffffffffffffff);
- uint64_t x317, uint8_t x318 = addcarryx_u64(0x0, x300, x302);
- uint64_t x320, uint8_t x321 = addcarryx_u64(x318, x303, x305);
- uint64_t x323, uint8_t x324 = addcarryx_u64(x321, x306, x308);
- uint64_t x326, uint8_t x327 = addcarryx_u64(x324, x309, x311);
- uint64_t x329, uint8_t x330 = addcarryx_u64(x327, x312, x314);
- uint64_t x332, uint8_t _ = addcarryx_u64(0x0, x330, x315);
- uint64_t _, uint8_t x336 = addcarryx_u64(0x0, x275, x299);
- uint64_t x338, uint8_t x339 = addcarryx_u64(x336, x278, x317);
- uint64_t x341, uint8_t x342 = addcarryx_u64(x339, x281, x320);
- uint64_t x344, uint8_t x345 = addcarryx_u64(x342, x284, x323);
- uint64_t x347, uint8_t x348 = addcarryx_u64(x345, x287, x326);
- uint64_t x350, uint8_t x351 = addcarryx_u64(x348, x290, x329);
- uint64_t x353, uint8_t x354 = addcarryx_u64(x351, x293, x332);
- uint8_t x355 = (x354 + x294);
- uint64_t x357, uint64_t x358 = mulx_u64(x11, x15);
- uint64_t x360, uint64_t x361 = mulx_u64(x11, x17);
- uint64_t x363, uint64_t x364 = mulx_u64(x11, x19);
- uint64_t x366, uint64_t x367 = mulx_u64(x11, x21);
- uint64_t x369, uint64_t x370 = mulx_u64(x11, x23);
- uint64_t x372, uint64_t x373 = mulx_u64(x11, x22);
- uint64_t x375, uint8_t x376 = addcarryx_u64(0x0, x358, x360);
- uint64_t x378, uint8_t x379 = addcarryx_u64(x376, x361, x363);
- uint64_t x381, uint8_t x382 = addcarryx_u64(x379, x364, x366);
- uint64_t x384, uint8_t x385 = addcarryx_u64(x382, x367, x369);
- uint64_t x387, uint8_t x388 = addcarryx_u64(x385, x370, x372);
- uint64_t x390, uint8_t _ = addcarryx_u64(0x0, x388, x373);
- uint64_t x393, uint8_t x394 = addcarryx_u64(0x0, x338, x357);
- uint64_t x396, uint8_t x397 = addcarryx_u64(x394, x341, x375);
- uint64_t x399, uint8_t x400 = addcarryx_u64(x397, x344, x378);
- uint64_t x402, uint8_t x403 = addcarryx_u64(x400, x347, x381);
- uint64_t x405, uint8_t x406 = addcarryx_u64(x403, x350, x384);
- uint64_t x408, uint8_t x409 = addcarryx_u64(x406, x353, x387);
- uint64_t x411, uint8_t x412 = addcarryx_u64(x409, x355, x390);
- uint64_t x414, uint64_t _ = mulx_u64(x393, 0x86bca1af286bca1bL);
- uint64_t x417, uint64_t x418 = mulx_u64(x414, 0xffffffffffffffedL);
- uint64_t x420, uint64_t x421 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x423, uint64_t x424 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x426, uint64_t x427 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x429, uint64_t x430 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x432, uint64_t x433 = mulx_u64(x414, 0x7ffffffffffffff);
- uint64_t x435, uint8_t x436 = addcarryx_u64(0x0, x418, x420);
- uint64_t x438, uint8_t x439 = addcarryx_u64(x436, x421, x423);
- uint64_t x441, uint8_t x442 = addcarryx_u64(x439, x424, x426);
- uint64_t x444, uint8_t x445 = addcarryx_u64(x442, x427, x429);
- uint64_t x447, uint8_t x448 = addcarryx_u64(x445, x430, x432);
- uint64_t x450, uint8_t _ = addcarryx_u64(0x0, x448, x433);
- uint64_t _, uint8_t x454 = addcarryx_u64(0x0, x393, x417);
- uint64_t x456, uint8_t x457 = addcarryx_u64(x454, x396, x435);
- uint64_t x459, uint8_t x460 = addcarryx_u64(x457, x399, x438);
- uint64_t x462, uint8_t x463 = addcarryx_u64(x460, x402, x441);
- uint64_t x465, uint8_t x466 = addcarryx_u64(x463, x405, x444);
- uint64_t x468, uint8_t x469 = addcarryx_u64(x466, x408, x447);
- uint64_t x471, uint8_t x472 = addcarryx_u64(x469, x411, x450);
- uint8_t x473 = (x472 + x412);
- uint64_t x475, uint64_t x476 = mulx_u64(x13, x15);
- uint64_t x478, uint64_t x479 = mulx_u64(x13, x17);
- uint64_t x481, uint64_t x482 = mulx_u64(x13, x19);
- uint64_t x484, uint64_t x485 = mulx_u64(x13, x21);
- uint64_t x487, uint64_t x488 = mulx_u64(x13, x23);
- uint64_t x490, uint64_t x491 = mulx_u64(x13, x22);
- uint64_t x493, uint8_t x494 = addcarryx_u64(0x0, x476, x478);
- uint64_t x496, uint8_t x497 = addcarryx_u64(x494, x479, x481);
- uint64_t x499, uint8_t x500 = addcarryx_u64(x497, x482, x484);
- uint64_t x502, uint8_t x503 = addcarryx_u64(x500, x485, x487);
- uint64_t x505, uint8_t x506 = addcarryx_u64(x503, x488, x490);
- uint64_t x508, uint8_t _ = addcarryx_u64(0x0, x506, x491);
- uint64_t x511, uint8_t x512 = addcarryx_u64(0x0, x456, x475);
- uint64_t x514, uint8_t x515 = addcarryx_u64(x512, x459, x493);
- uint64_t x517, uint8_t x518 = addcarryx_u64(x515, x462, x496);
- uint64_t x520, uint8_t x521 = addcarryx_u64(x518, x465, x499);
- uint64_t x523, uint8_t x524 = addcarryx_u64(x521, x468, x502);
- uint64_t x526, uint8_t x527 = addcarryx_u64(x524, x471, x505);
- uint64_t x529, uint8_t x530 = addcarryx_u64(x527, x473, x508);
- uint64_t x532, uint64_t _ = mulx_u64(x511, 0x86bca1af286bca1bL);
- uint64_t x535, uint64_t x536 = mulx_u64(x532, 0xffffffffffffffedL);
- uint64_t x538, uint64_t x539 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x541, uint64_t x542 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x544, uint64_t x545 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x547, uint64_t x548 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x550, uint64_t x551 = mulx_u64(x532, 0x7ffffffffffffff);
- uint64_t x553, uint8_t x554 = addcarryx_u64(0x0, x536, x538);
- uint64_t x556, uint8_t x557 = addcarryx_u64(x554, x539, x541);
- uint64_t x559, uint8_t x560 = addcarryx_u64(x557, x542, x544);
- uint64_t x562, uint8_t x563 = addcarryx_u64(x560, x545, x547);
- uint64_t x565, uint8_t x566 = addcarryx_u64(x563, x548, x550);
- uint64_t x568, uint8_t _ = addcarryx_u64(0x0, x566, x551);
- uint64_t _, uint8_t x572 = addcarryx_u64(0x0, x511, x535);
- uint64_t x574, uint8_t x575 = addcarryx_u64(x572, x514, x553);
- uint64_t x577, uint8_t x578 = addcarryx_u64(x575, x517, x556);
- uint64_t x580, uint8_t x581 = addcarryx_u64(x578, x520, x559);
- uint64_t x583, uint8_t x584 = addcarryx_u64(x581, x523, x562);
- uint64_t x586, uint8_t x587 = addcarryx_u64(x584, x526, x565);
- uint64_t x589, uint8_t x590 = addcarryx_u64(x587, x529, x568);
- uint8_t x591 = (x590 + x530);
- uint64_t x593, uint64_t x594 = mulx_u64(x12, x15);
- uint64_t x596, uint64_t x597 = mulx_u64(x12, x17);
- uint64_t x599, uint64_t x600 = mulx_u64(x12, x19);
- uint64_t x602, uint64_t x603 = mulx_u64(x12, x21);
- uint64_t x605, uint64_t x606 = mulx_u64(x12, x23);
- uint64_t x608, uint64_t x609 = mulx_u64(x12, x22);
- uint64_t x611, uint8_t x612 = addcarryx_u64(0x0, x594, x596);
- uint64_t x614, uint8_t x615 = addcarryx_u64(x612, x597, x599);
- uint64_t x617, uint8_t x618 = addcarryx_u64(x615, x600, x602);
- uint64_t x620, uint8_t x621 = addcarryx_u64(x618, x603, x605);
- uint64_t x623, uint8_t x624 = addcarryx_u64(x621, x606, x608);
- uint64_t x626, uint8_t _ = addcarryx_u64(0x0, x624, x609);
- uint64_t x629, uint8_t x630 = addcarryx_u64(0x0, x574, x593);
- uint64_t x632, uint8_t x633 = addcarryx_u64(x630, x577, x611);
- uint64_t x635, uint8_t x636 = addcarryx_u64(x633, x580, x614);
- uint64_t x638, uint8_t x639 = addcarryx_u64(x636, x583, x617);
- uint64_t x641, uint8_t x642 = addcarryx_u64(x639, x586, x620);
- uint64_t x644, uint8_t x645 = addcarryx_u64(x642, x589, x623);
- uint64_t x647, uint8_t x648 = addcarryx_u64(x645, x591, x626);
- uint64_t x650, uint64_t _ = mulx_u64(x629, 0x86bca1af286bca1bL);
- uint64_t x653, uint64_t x654 = mulx_u64(x650, 0xffffffffffffffedL);
- uint64_t x656, uint64_t x657 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x659, uint64_t x660 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x662, uint64_t x663 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x665, uint64_t x666 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x668, uint64_t x669 = mulx_u64(x650, 0x7ffffffffffffff);
- uint64_t x671, uint8_t x672 = addcarryx_u64(0x0, x654, x656);
- uint64_t x674, uint8_t x675 = addcarryx_u64(x672, x657, x659);
- uint64_t x677, uint8_t x678 = addcarryx_u64(x675, x660, x662);
- uint64_t x680, uint8_t x681 = addcarryx_u64(x678, x663, x665);
- uint64_t x683, uint8_t x684 = addcarryx_u64(x681, x666, x668);
- uint64_t x686, uint8_t _ = addcarryx_u64(0x0, x684, x669);
- uint64_t _, uint8_t x690 = addcarryx_u64(0x0, x629, x653);
- uint64_t x692, uint8_t x693 = addcarryx_u64(x690, x632, x671);
- uint64_t x695, uint8_t x696 = addcarryx_u64(x693, x635, x674);
- uint64_t x698, uint8_t x699 = addcarryx_u64(x696, x638, x677);
- uint64_t x701, uint8_t x702 = addcarryx_u64(x699, x641, x680);
- uint64_t x704, uint8_t x705 = addcarryx_u64(x702, x644, x683);
- uint64_t x707, uint8_t x708 = addcarryx_u64(x705, x647, x686);
- uint8_t x709 = (x708 + x648);
- uint64_t x711, uint8_t x712 = subborrow_u64(0x0, x692, 0xffffffffffffffedL);
- uint64_t x714, uint8_t x715 = subborrow_u64(x712, x695, 0xffffffffffffffffL);
- uint64_t x717, uint8_t x718 = subborrow_u64(x715, x698, 0xffffffffffffffffL);
- uint64_t x720, uint8_t x721 = subborrow_u64(x718, x701, 0xffffffffffffffffL);
- uint64_t x723, uint8_t x724 = subborrow_u64(x721, x704, 0xffffffffffffffffL);
- uint64_t x726, uint8_t x727 = subborrow_u64(x724, x707, 0x7ffffffffffffff);
- uint64_t _, uint8_t x730 = subborrow_u64(x727, x709, 0x0);
- uint64_t x731 = cmovznz64(x730, x726, x707);
- uint64_t x732 = cmovznz64(x730, x723, x704);
- uint64_t x733 = cmovznz64(x730, x720, x701);
- uint64_t x734 = cmovznz64(x730, x717, x698);
- uint64_t x735 = cmovznz64(x730, x714, x695);
- uint64_t x736 = cmovznz64(x730, x711, x692);
- return (x731, x732, x733, x734, x735, x736))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e379m19_6limbs/femulDisplay.v b/src/Specific/montgomery64_2e379m19_6limbs/femulDisplay.v
deleted file mode 100644
index 9faed2f1c..000000000
--- a/src/Specific/montgomery64_2e379m19_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e379m19_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e379m19_6limbs/fenz.c b/src/Specific/montgomery64_2e379m19_6limbs/fenz.c
deleted file mode 100644
index c93f74257..000000000
--- a/src/Specific/montgomery64_2e379m19_6limbs/fenz.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x11 = (x10 | x9);
- { uint64_t x12 = (x8 | x11);
- { uint64_t x13 = (x6 | x12);
- { uint64_t x14 = (x4 | x13);
- { uint64_t x15 = (x2 | x14);
- out[0] = x15;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e379m19_6limbs/fenz.v b/src/Specific/montgomery64_2e379m19_6limbs/fenz.v
deleted file mode 100644
index adc795c4d..000000000
--- a/src/Specific/montgomery64_2e379m19_6limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e379m19_6limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e379m19_6limbs/fenzDisplay.log b/src/Specific/montgomery64_2e379m19_6limbs/fenzDisplay.log
deleted file mode 100644
index f39f1d91b..000000000
--- a/src/Specific/montgomery64_2e379m19_6limbs/fenzDisplay.log
+++ /dev/null
@@ -1,12 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x11 = (x10 | x9);
- uint64_t x12 = (x8 | x11);
- uint64_t x13 = (x6 | x12);
- uint64_t x14 = (x4 | x13);
- uint64_t x15 = (x2 | x14);
- return x15)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e379m19_6limbs/fenzDisplay.v b/src/Specific/montgomery64_2e379m19_6limbs/fenzDisplay.v
deleted file mode 100644
index 8535ad120..000000000
--- a/src/Specific/montgomery64_2e379m19_6limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e379m19_6limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e379m19_6limbs/feopp.c b/src/Specific/montgomery64_2e379m19_6limbs/feopp.c
deleted file mode 100644
index 27f51512a..000000000
--- a/src/Specific/montgomery64_2e379m19_6limbs/feopp.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feopp(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12; uint8_t x13 = _subborrow_u64(0x0, 0x0, x2, &x12);
- { uint64_t x15; uint8_t x16 = _subborrow_u64(x13, 0x0, x4, &x15);
- { uint64_t x18; uint8_t x19 = _subborrow_u64(x16, 0x0, x6, &x18);
- { uint64_t x21; uint8_t x22 = _subborrow_u64(x19, 0x0, x8, &x21);
- { uint64_t x24; uint8_t x25 = _subborrow_u64(x22, 0x0, x10, &x24);
- { uint64_t x27; uint8_t x28 = _subborrow_u64(x25, 0x0, x9, &x27);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0xffffffffffffffedL);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(0x0, x12, x30, &x32);
- { uint64_t x34 = (x29 & 0xffffffffffffffffL);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x33, x15, x34, &x36);
- { uint64_t x38 = (x29 & 0xffffffffffffffffL);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x37, x18, x38, &x40);
- { uint64_t x42 = (x29 & 0xffffffffffffffffL);
- { uint64_t x44; uint8_t x45 = _addcarryx_u64(x41, x21, x42, &x44);
- { uint64_t x46 = (x29 & 0xffffffffffffffffL);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x45, x24, x46, &x48);
- { uint64_t x50 = (x29 & 0x7ffffffffffffff);
- { uint64_t x52; uint8_t _ = _addcarryx_u64(x49, x27, x50, &x52);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e379m19_6limbs/feopp.v b/src/Specific/montgomery64_2e379m19_6limbs/feopp.v
deleted file mode 100644
index e56046afb..000000000
--- a/src/Specific/montgomery64_2e379m19_6limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e379m19_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e379m19_6limbs/feoppDisplay.log b/src/Specific/montgomery64_2e379m19_6limbs/feoppDisplay.log
deleted file mode 100644
index cf97d003d..000000000
--- a/src/Specific/montgomery64_2e379m19_6limbs/feoppDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x15, uint8_t x16 = subborrow_u64(x13, 0x0, x4);
- uint64_t x18, uint8_t x19 = subborrow_u64(x16, 0x0, x6);
- uint64_t x21, uint8_t x22 = subborrow_u64(x19, 0x0, x8);
- uint64_t x24, uint8_t x25 = subborrow_u64(x22, 0x0, x10);
- uint64_t x27, uint8_t x28 = subborrow_u64(x25, 0x0, x9);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0xffffffffffffffedL);
- uint64_t x32, uint8_t x33 = addcarryx_u64(0x0, x12, x30);
- uint64_t x34 = (x29 & 0xffffffffffffffffL);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x33, x15, x34);
- uint64_t x38 = (x29 & 0xffffffffffffffffL);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x37, x18, x38);
- uint64_t x42 = (x29 & 0xffffffffffffffffL);
- uint64_t x44, uint8_t x45 = addcarryx_u64(x41, x21, x42);
- uint64_t x46 = (x29 & 0xffffffffffffffffL);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x45, x24, x46);
- uint64_t x50 = (x29 & 0x7ffffffffffffff);
- uint64_t x52, uint8_t _ = addcarryx_u64(x49, x27, x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e379m19_6limbs/feoppDisplay.v b/src/Specific/montgomery64_2e379m19_6limbs/feoppDisplay.v
deleted file mode 100644
index a8a14e428..000000000
--- a/src/Specific/montgomery64_2e379m19_6limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e379m19_6limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e379m19_6limbs/fesquare.c b/src/Specific/montgomery64_2e379m19_6limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e379m19_6limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e379m19_6limbs/fesub.c b/src/Specific/montgomery64_2e379m19_6limbs/fesub.c
deleted file mode 100644
index a3e301761..000000000
--- a/src/Specific/montgomery64_2e379m19_6limbs/fesub.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _subborrow_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _subborrow_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _subborrow_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _subborrow_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _subborrow_u64(x38, x12, x22, &x40);
- { uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- { uint64_t x43 = (x42 & 0xffffffffffffffedL);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(0x0, x25, x43, &x45);
- { uint64_t x47 = (x42 & 0xffffffffffffffffL);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x46, x28, x47, &x49);
- { uint64_t x51 = (x42 & 0xffffffffffffffffL);
- { uint64_t x53; uint8_t x54 = _addcarryx_u64(x50, x31, x51, &x53);
- { uint64_t x55 = (x42 & 0xffffffffffffffffL);
- { uint64_t x57; uint8_t x58 = _addcarryx_u64(x54, x34, x55, &x57);
- { uint64_t x59 = (x42 & 0xffffffffffffffffL);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x58, x37, x59, &x61);
- { uint64_t x63 = (x42 & 0x7ffffffffffffff);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(x62, x40, x63, &x65);
- out[0] = x45;
- out[1] = x49;
- out[2] = x53;
- out[3] = x57;
- out[4] = x61;
- out[5] = x65;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e379m19_6limbs/fesub.v b/src/Specific/montgomery64_2e379m19_6limbs/fesub.v
deleted file mode 100644
index 95fdc36cf..000000000
--- a/src/Specific/montgomery64_2e379m19_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e379m19_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e379m19_6limbs/fesubDisplay.log b/src/Specific/montgomery64_2e379m19_6limbs/fesubDisplay.log
deleted file mode 100644
index c242d0109..000000000
--- a/src/Specific/montgomery64_2e379m19_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = subborrow_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = subborrow_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = subborrow_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = subborrow_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = subborrow_u64(x38, x12, x22);
- uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- uint64_t x43 = (x42 & 0xffffffffffffffedL);
- uint64_t x45, uint8_t x46 = addcarryx_u64(0x0, x25, x43);
- uint64_t x47 = (x42 & 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x46, x28, x47);
- uint64_t x51 = (x42 & 0xffffffffffffffffL);
- uint64_t x53, uint8_t x54 = addcarryx_u64(x50, x31, x51);
- uint64_t x55 = (x42 & 0xffffffffffffffffL);
- uint64_t x57, uint8_t x58 = addcarryx_u64(x54, x34, x55);
- uint64_t x59 = (x42 & 0xffffffffffffffffL);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x58, x37, x59);
- uint64_t x63 = (x42 & 0x7ffffffffffffff);
- uint64_t x65, uint8_t _ = addcarryx_u64(x62, x40, x63);
- (Return x65, Return x61, Return x57, Return x53, Return x49, Return x45))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e379m19_6limbs/fesubDisplay.v b/src/Specific/montgomery64_2e379m19_6limbs/fesubDisplay.v
deleted file mode 100644
index 86df9b001..000000000
--- a/src/Specific/montgomery64_2e379m19_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e379m19_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e379m19_6limbs/py_interpreter.sh b/src/Specific/montgomery64_2e379m19_6limbs/py_interpreter.sh
deleted file mode 100755
index a12fc0ea5..000000000
--- a/src/Specific/montgomery64_2e379m19_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**379 - 19' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e382m105_6limbs/CurveParameters.v b/src/Specific/montgomery64_2e382m105_6limbs/CurveParameters.v
deleted file mode 100644
index 3a16d34a1..000000000
--- a/src/Specific/montgomery64_2e382m105_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^382 - 105
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 64;
- bitwidth := 64;
- s := 2^382;
- c := [(1, 105)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e382m105_6limbs/Synthesis.v b/src/Specific/montgomery64_2e382m105_6limbs/Synthesis.v
deleted file mode 100644
index c34ff4ad8..000000000
--- a/src/Specific/montgomery64_2e382m105_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e382m105_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/montgomery64_2e382m105_6limbs/compiler.sh b/src/Specific/montgomery64_2e382m105_6limbs/compiler.sh
deleted file mode 100755
index 9d11c85a4..000000000
--- a/src/Specific/montgomery64_2e382m105_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<382) - 105' "$@"
diff --git a/src/Specific/montgomery64_2e382m105_6limbs/compilerxx.sh b/src/Specific/montgomery64_2e382m105_6limbs/compilerxx.sh
deleted file mode 100755
index b9a4361ce..000000000
--- a/src/Specific/montgomery64_2e382m105_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<382) - 105' "$@"
diff --git a/src/Specific/montgomery64_2e382m105_6limbs/feadd.c b/src/Specific/montgomery64_2e382m105_6limbs/feadd.c
deleted file mode 100644
index d153cc986..000000000
--- a/src/Specific/montgomery64_2e382m105_6limbs/feadd.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _addcarryx_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _addcarryx_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x38, x12, x22, &x40);
- { uint64_t x43; uint8_t x44 = _subborrow_u64(0x0, x25, 0xffffffffffffff97L, &x43);
- { uint64_t x46; uint8_t x47 = _subborrow_u64(x44, x28, 0xffffffffffffffffL, &x46);
- { uint64_t x49; uint8_t x50 = _subborrow_u64(x47, x31, 0xffffffffffffffffL, &x49);
- { uint64_t x52; uint8_t x53 = _subborrow_u64(x50, x34, 0xffffffffffffffffL, &x52);
- { uint64_t x55; uint8_t x56 = _subborrow_u64(x53, x37, 0xffffffffffffffffL, &x55);
- { uint64_t x58; uint8_t x59 = _subborrow_u64(x56, x40, 0x3fffffffffffffff, &x58);
- { uint64_t _; uint8_t x62 = _subborrow_u64(x59, x41, 0x0, &_);
- { uint64_t x63 = cmovznz64(x62, x58, x40);
- { uint64_t x64 = cmovznz64(x62, x55, x37);
- { uint64_t x65 = cmovznz64(x62, x52, x34);
- { uint64_t x66 = cmovznz64(x62, x49, x31);
- { uint64_t x67 = cmovznz64(x62, x46, x28);
- { uint64_t x68 = cmovznz64(x62, x43, x25);
- out[0] = x68;
- out[1] = x67;
- out[2] = x66;
- out[3] = x65;
- out[4] = x64;
- out[5] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e382m105_6limbs/feadd.v b/src/Specific/montgomery64_2e382m105_6limbs/feadd.v
deleted file mode 100644
index 255f7be00..000000000
--- a/src/Specific/montgomery64_2e382m105_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e382m105_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e382m105_6limbs/feaddDisplay.log b/src/Specific/montgomery64_2e382m105_6limbs/feaddDisplay.log
deleted file mode 100644
index ca32ff087..000000000
--- a/src/Specific/montgomery64_2e382m105_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = addcarryx_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = addcarryx_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = addcarryx_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = addcarryx_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x38, x12, x22);
- uint64_t x43, uint8_t x44 = subborrow_u64(0x0, x25, 0xffffffffffffff97L);
- uint64_t x46, uint8_t x47 = subborrow_u64(x44, x28, 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = subborrow_u64(x47, x31, 0xffffffffffffffffL);
- uint64_t x52, uint8_t x53 = subborrow_u64(x50, x34, 0xffffffffffffffffL);
- uint64_t x55, uint8_t x56 = subborrow_u64(x53, x37, 0xffffffffffffffffL);
- uint64_t x58, uint8_t x59 = subborrow_u64(x56, x40, 0x3fffffffffffffff);
- uint64_t _, uint8_t x62 = subborrow_u64(x59, x41, 0x0);
- uint64_t x63 = cmovznz64(x62, x58, x40);
- uint64_t x64 = cmovznz64(x62, x55, x37);
- uint64_t x65 = cmovznz64(x62, x52, x34);
- uint64_t x66 = cmovznz64(x62, x49, x31);
- uint64_t x67 = cmovznz64(x62, x46, x28);
- uint64_t x68 = cmovznz64(x62, x43, x25);
- return (x63, x64, x65, x66, x67, x68))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e382m105_6limbs/feaddDisplay.v b/src/Specific/montgomery64_2e382m105_6limbs/feaddDisplay.v
deleted file mode 100644
index 13a071768..000000000
--- a/src/Specific/montgomery64_2e382m105_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e382m105_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e382m105_6limbs/femul.c b/src/Specific/montgomery64_2e382m105_6limbs/femul.c
deleted file mode 100644
index c18796dcb..000000000
--- a/src/Specific/montgomery64_2e382m105_6limbs/femul.c
+++ /dev/null
@@ -1,266 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x26; uint64_t x25 = _mulx_u64(x5, x15, &x26);
- { uint64_t x29; uint64_t x28 = _mulx_u64(x5, x17, &x29);
- { uint64_t x32; uint64_t x31 = _mulx_u64(x5, x19, &x32);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x5, x21, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x5, x23, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x5, x22, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x26, x28, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x29, x31, &x46);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x47, x32, x34, &x49);
- { uint64_t x52; uint8_t x53 = _addcarryx_u64(x50, x35, x37, &x52);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x38, x40, &x55);
- { uint64_t x58; uint8_t _ = _addcarryx_u64(0x0, x56, x41, &x58);
- { uint64_t _; uint64_t x61 = _mulx_u64(x25, 0x8fd8fd8fd8fd8fd9L, &_);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x61, 0xffffffffffffff97L, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x61, 0xffffffffffffffffL, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x61, 0xffffffffffffffffL, &x71);
- { uint64_t x74; uint64_t x73 = _mulx_u64(x61, 0xffffffffffffffffL, &x74);
- { uint64_t x77; uint64_t x76 = _mulx_u64(x61, 0xffffffffffffffffL, &x77);
- { uint64_t x80; uint64_t x79 = _mulx_u64(x61, 0x3fffffffffffffff, &x80);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x65, x67, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x68, x70, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x71, x73, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x74, x76, &x91);
- { uint64_t x94; uint8_t x95 = _addcarryx_u64(x92, x77, x79, &x94);
- { uint64_t x97; uint8_t _ = _addcarryx_u64(0x0, x95, x80, &x97);
- { uint64_t _; uint8_t x101 = _addcarryx_u64(0x0, x25, x64, &_);
- { uint64_t x103; uint8_t x104 = _addcarryx_u64(x101, x43, x82, &x103);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(x104, x46, x85, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x49, x88, &x109);
- { uint64_t x112; uint8_t x113 = _addcarryx_u64(x110, x52, x91, &x112);
- { uint64_t x115; uint8_t x116 = _addcarryx_u64(x113, x55, x94, &x115);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x58, x97, &x118);
- { uint64_t x122; uint64_t x121 = _mulx_u64(x7, x15, &x122);
- { uint64_t x125; uint64_t x124 = _mulx_u64(x7, x17, &x125);
- { uint64_t x128; uint64_t x127 = _mulx_u64(x7, x19, &x128);
- { uint64_t x131; uint64_t x130 = _mulx_u64(x7, x21, &x131);
- { uint64_t x134; uint64_t x133 = _mulx_u64(x7, x23, &x134);
- { uint64_t x137; uint64_t x136 = _mulx_u64(x7, x22, &x137);
- { uint64_t x139; uint8_t x140 = _addcarryx_u64(0x0, x122, x124, &x139);
- { uint64_t x142; uint8_t x143 = _addcarryx_u64(x140, x125, x127, &x142);
- { uint64_t x145; uint8_t x146 = _addcarryx_u64(x143, x128, x130, &x145);
- { uint64_t x148; uint8_t x149 = _addcarryx_u64(x146, x131, x133, &x148);
- { uint64_t x151; uint8_t x152 = _addcarryx_u64(x149, x134, x136, &x151);
- { uint64_t x154; uint8_t _ = _addcarryx_u64(0x0, x152, x137, &x154);
- { uint64_t x157; uint8_t x158 = _addcarryx_u64(0x0, x103, x121, &x157);
- { uint64_t x160; uint8_t x161 = _addcarryx_u64(x158, x106, x139, &x160);
- { uint64_t x163; uint8_t x164 = _addcarryx_u64(x161, x109, x142, &x163);
- { uint64_t x166; uint8_t x167 = _addcarryx_u64(x164, x112, x145, &x166);
- { uint64_t x169; uint8_t x170 = _addcarryx_u64(x167, x115, x148, &x169);
- { uint64_t x172; uint8_t x173 = _addcarryx_u64(x170, x118, x151, &x172);
- { uint64_t x175; uint8_t x176 = _addcarryx_u64(x173, x119, x154, &x175);
- { uint64_t _; uint64_t x178 = _mulx_u64(x157, 0x8fd8fd8fd8fd8fd9L, &_);
- { uint64_t x182; uint64_t x181 = _mulx_u64(x178, 0xffffffffffffff97L, &x182);
- { uint64_t x185; uint64_t x184 = _mulx_u64(x178, 0xffffffffffffffffL, &x185);
- { uint64_t x188; uint64_t x187 = _mulx_u64(x178, 0xffffffffffffffffL, &x188);
- { uint64_t x191; uint64_t x190 = _mulx_u64(x178, 0xffffffffffffffffL, &x191);
- { uint64_t x194; uint64_t x193 = _mulx_u64(x178, 0xffffffffffffffffL, &x194);
- { uint64_t x197; uint64_t x196 = _mulx_u64(x178, 0x3fffffffffffffff, &x197);
- { uint64_t x199; uint8_t x200 = _addcarryx_u64(0x0, x182, x184, &x199);
- { uint64_t x202; uint8_t x203 = _addcarryx_u64(x200, x185, x187, &x202);
- { uint64_t x205; uint8_t x206 = _addcarryx_u64(x203, x188, x190, &x205);
- { uint64_t x208; uint8_t x209 = _addcarryx_u64(x206, x191, x193, &x208);
- { uint64_t x211; uint8_t x212 = _addcarryx_u64(x209, x194, x196, &x211);
- { uint64_t x214; uint8_t _ = _addcarryx_u64(0x0, x212, x197, &x214);
- { uint64_t _; uint8_t x218 = _addcarryx_u64(0x0, x157, x181, &_);
- { uint64_t x220; uint8_t x221 = _addcarryx_u64(x218, x160, x199, &x220);
- { uint64_t x223; uint8_t x224 = _addcarryx_u64(x221, x163, x202, &x223);
- { uint64_t x226; uint8_t x227 = _addcarryx_u64(x224, x166, x205, &x226);
- { uint64_t x229; uint8_t x230 = _addcarryx_u64(x227, x169, x208, &x229);
- { uint64_t x232; uint8_t x233 = _addcarryx_u64(x230, x172, x211, &x232);
- { uint64_t x235; uint8_t x236 = _addcarryx_u64(x233, x175, x214, &x235);
- { uint8_t x237 = (x236 + x176);
- { uint64_t x240; uint64_t x239 = _mulx_u64(x9, x15, &x240);
- { uint64_t x243; uint64_t x242 = _mulx_u64(x9, x17, &x243);
- { uint64_t x246; uint64_t x245 = _mulx_u64(x9, x19, &x246);
- { uint64_t x249; uint64_t x248 = _mulx_u64(x9, x21, &x249);
- { uint64_t x252; uint64_t x251 = _mulx_u64(x9, x23, &x252);
- { uint64_t x255; uint64_t x254 = _mulx_u64(x9, x22, &x255);
- { uint64_t x257; uint8_t x258 = _addcarryx_u64(0x0, x240, x242, &x257);
- { uint64_t x260; uint8_t x261 = _addcarryx_u64(x258, x243, x245, &x260);
- { uint64_t x263; uint8_t x264 = _addcarryx_u64(x261, x246, x248, &x263);
- { uint64_t x266; uint8_t x267 = _addcarryx_u64(x264, x249, x251, &x266);
- { uint64_t x269; uint8_t x270 = _addcarryx_u64(x267, x252, x254, &x269);
- { uint64_t x272; uint8_t _ = _addcarryx_u64(0x0, x270, x255, &x272);
- { uint64_t x275; uint8_t x276 = _addcarryx_u64(0x0, x220, x239, &x275);
- { uint64_t x278; uint8_t x279 = _addcarryx_u64(x276, x223, x257, &x278);
- { uint64_t x281; uint8_t x282 = _addcarryx_u64(x279, x226, x260, &x281);
- { uint64_t x284; uint8_t x285 = _addcarryx_u64(x282, x229, x263, &x284);
- { uint64_t x287; uint8_t x288 = _addcarryx_u64(x285, x232, x266, &x287);
- { uint64_t x290; uint8_t x291 = _addcarryx_u64(x288, x235, x269, &x290);
- { uint64_t x293; uint8_t x294 = _addcarryx_u64(x291, x237, x272, &x293);
- { uint64_t _; uint64_t x296 = _mulx_u64(x275, 0x8fd8fd8fd8fd8fd9L, &_);
- { uint64_t x300; uint64_t x299 = _mulx_u64(x296, 0xffffffffffffff97L, &x300);
- { uint64_t x303; uint64_t x302 = _mulx_u64(x296, 0xffffffffffffffffL, &x303);
- { uint64_t x306; uint64_t x305 = _mulx_u64(x296, 0xffffffffffffffffL, &x306);
- { uint64_t x309; uint64_t x308 = _mulx_u64(x296, 0xffffffffffffffffL, &x309);
- { uint64_t x312; uint64_t x311 = _mulx_u64(x296, 0xffffffffffffffffL, &x312);
- { uint64_t x315; uint64_t x314 = _mulx_u64(x296, 0x3fffffffffffffff, &x315);
- { uint64_t x317; uint8_t x318 = _addcarryx_u64(0x0, x300, x302, &x317);
- { uint64_t x320; uint8_t x321 = _addcarryx_u64(x318, x303, x305, &x320);
- { uint64_t x323; uint8_t x324 = _addcarryx_u64(x321, x306, x308, &x323);
- { uint64_t x326; uint8_t x327 = _addcarryx_u64(x324, x309, x311, &x326);
- { uint64_t x329; uint8_t x330 = _addcarryx_u64(x327, x312, x314, &x329);
- { uint64_t x332; uint8_t _ = _addcarryx_u64(0x0, x330, x315, &x332);
- { uint64_t _; uint8_t x336 = _addcarryx_u64(0x0, x275, x299, &_);
- { uint64_t x338; uint8_t x339 = _addcarryx_u64(x336, x278, x317, &x338);
- { uint64_t x341; uint8_t x342 = _addcarryx_u64(x339, x281, x320, &x341);
- { uint64_t x344; uint8_t x345 = _addcarryx_u64(x342, x284, x323, &x344);
- { uint64_t x347; uint8_t x348 = _addcarryx_u64(x345, x287, x326, &x347);
- { uint64_t x350; uint8_t x351 = _addcarryx_u64(x348, x290, x329, &x350);
- { uint64_t x353; uint8_t x354 = _addcarryx_u64(x351, x293, x332, &x353);
- { uint8_t x355 = (x354 + x294);
- { uint64_t x358; uint64_t x357 = _mulx_u64(x11, x15, &x358);
- { uint64_t x361; uint64_t x360 = _mulx_u64(x11, x17, &x361);
- { uint64_t x364; uint64_t x363 = _mulx_u64(x11, x19, &x364);
- { uint64_t x367; uint64_t x366 = _mulx_u64(x11, x21, &x367);
- { uint64_t x370; uint64_t x369 = _mulx_u64(x11, x23, &x370);
- { uint64_t x373; uint64_t x372 = _mulx_u64(x11, x22, &x373);
- { uint64_t x375; uint8_t x376 = _addcarryx_u64(0x0, x358, x360, &x375);
- { uint64_t x378; uint8_t x379 = _addcarryx_u64(x376, x361, x363, &x378);
- { uint64_t x381; uint8_t x382 = _addcarryx_u64(x379, x364, x366, &x381);
- { uint64_t x384; uint8_t x385 = _addcarryx_u64(x382, x367, x369, &x384);
- { uint64_t x387; uint8_t x388 = _addcarryx_u64(x385, x370, x372, &x387);
- { uint64_t x390; uint8_t _ = _addcarryx_u64(0x0, x388, x373, &x390);
- { uint64_t x393; uint8_t x394 = _addcarryx_u64(0x0, x338, x357, &x393);
- { uint64_t x396; uint8_t x397 = _addcarryx_u64(x394, x341, x375, &x396);
- { uint64_t x399; uint8_t x400 = _addcarryx_u64(x397, x344, x378, &x399);
- { uint64_t x402; uint8_t x403 = _addcarryx_u64(x400, x347, x381, &x402);
- { uint64_t x405; uint8_t x406 = _addcarryx_u64(x403, x350, x384, &x405);
- { uint64_t x408; uint8_t x409 = _addcarryx_u64(x406, x353, x387, &x408);
- { uint64_t x411; uint8_t x412 = _addcarryx_u64(x409, x355, x390, &x411);
- { uint64_t _; uint64_t x414 = _mulx_u64(x393, 0x8fd8fd8fd8fd8fd9L, &_);
- { uint64_t x418; uint64_t x417 = _mulx_u64(x414, 0xffffffffffffff97L, &x418);
- { uint64_t x421; uint64_t x420 = _mulx_u64(x414, 0xffffffffffffffffL, &x421);
- { uint64_t x424; uint64_t x423 = _mulx_u64(x414, 0xffffffffffffffffL, &x424);
- { uint64_t x427; uint64_t x426 = _mulx_u64(x414, 0xffffffffffffffffL, &x427);
- { uint64_t x430; uint64_t x429 = _mulx_u64(x414, 0xffffffffffffffffL, &x430);
- { uint64_t x433; uint64_t x432 = _mulx_u64(x414, 0x3fffffffffffffff, &x433);
- { uint64_t x435; uint8_t x436 = _addcarryx_u64(0x0, x418, x420, &x435);
- { uint64_t x438; uint8_t x439 = _addcarryx_u64(x436, x421, x423, &x438);
- { uint64_t x441; uint8_t x442 = _addcarryx_u64(x439, x424, x426, &x441);
- { uint64_t x444; uint8_t x445 = _addcarryx_u64(x442, x427, x429, &x444);
- { uint64_t x447; uint8_t x448 = _addcarryx_u64(x445, x430, x432, &x447);
- { uint64_t x450; uint8_t _ = _addcarryx_u64(0x0, x448, x433, &x450);
- { uint64_t _; uint8_t x454 = _addcarryx_u64(0x0, x393, x417, &_);
- { uint64_t x456; uint8_t x457 = _addcarryx_u64(x454, x396, x435, &x456);
- { uint64_t x459; uint8_t x460 = _addcarryx_u64(x457, x399, x438, &x459);
- { uint64_t x462; uint8_t x463 = _addcarryx_u64(x460, x402, x441, &x462);
- { uint64_t x465; uint8_t x466 = _addcarryx_u64(x463, x405, x444, &x465);
- { uint64_t x468; uint8_t x469 = _addcarryx_u64(x466, x408, x447, &x468);
- { uint64_t x471; uint8_t x472 = _addcarryx_u64(x469, x411, x450, &x471);
- { uint8_t x473 = (x472 + x412);
- { uint64_t x476; uint64_t x475 = _mulx_u64(x13, x15, &x476);
- { uint64_t x479; uint64_t x478 = _mulx_u64(x13, x17, &x479);
- { uint64_t x482; uint64_t x481 = _mulx_u64(x13, x19, &x482);
- { uint64_t x485; uint64_t x484 = _mulx_u64(x13, x21, &x485);
- { uint64_t x488; uint64_t x487 = _mulx_u64(x13, x23, &x488);
- { uint64_t x491; uint64_t x490 = _mulx_u64(x13, x22, &x491);
- { uint64_t x493; uint8_t x494 = _addcarryx_u64(0x0, x476, x478, &x493);
- { uint64_t x496; uint8_t x497 = _addcarryx_u64(x494, x479, x481, &x496);
- { uint64_t x499; uint8_t x500 = _addcarryx_u64(x497, x482, x484, &x499);
- { uint64_t x502; uint8_t x503 = _addcarryx_u64(x500, x485, x487, &x502);
- { uint64_t x505; uint8_t x506 = _addcarryx_u64(x503, x488, x490, &x505);
- { uint64_t x508; uint8_t _ = _addcarryx_u64(0x0, x506, x491, &x508);
- { uint64_t x511; uint8_t x512 = _addcarryx_u64(0x0, x456, x475, &x511);
- { uint64_t x514; uint8_t x515 = _addcarryx_u64(x512, x459, x493, &x514);
- { uint64_t x517; uint8_t x518 = _addcarryx_u64(x515, x462, x496, &x517);
- { uint64_t x520; uint8_t x521 = _addcarryx_u64(x518, x465, x499, &x520);
- { uint64_t x523; uint8_t x524 = _addcarryx_u64(x521, x468, x502, &x523);
- { uint64_t x526; uint8_t x527 = _addcarryx_u64(x524, x471, x505, &x526);
- { uint64_t x529; uint8_t x530 = _addcarryx_u64(x527, x473, x508, &x529);
- { uint64_t _; uint64_t x532 = _mulx_u64(x511, 0x8fd8fd8fd8fd8fd9L, &_);
- { uint64_t x536; uint64_t x535 = _mulx_u64(x532, 0xffffffffffffff97L, &x536);
- { uint64_t x539; uint64_t x538 = _mulx_u64(x532, 0xffffffffffffffffL, &x539);
- { uint64_t x542; uint64_t x541 = _mulx_u64(x532, 0xffffffffffffffffL, &x542);
- { uint64_t x545; uint64_t x544 = _mulx_u64(x532, 0xffffffffffffffffL, &x545);
- { uint64_t x548; uint64_t x547 = _mulx_u64(x532, 0xffffffffffffffffL, &x548);
- { uint64_t x551; uint64_t x550 = _mulx_u64(x532, 0x3fffffffffffffff, &x551);
- { uint64_t x553; uint8_t x554 = _addcarryx_u64(0x0, x536, x538, &x553);
- { uint64_t x556; uint8_t x557 = _addcarryx_u64(x554, x539, x541, &x556);
- { uint64_t x559; uint8_t x560 = _addcarryx_u64(x557, x542, x544, &x559);
- { uint64_t x562; uint8_t x563 = _addcarryx_u64(x560, x545, x547, &x562);
- { uint64_t x565; uint8_t x566 = _addcarryx_u64(x563, x548, x550, &x565);
- { uint64_t x568; uint8_t _ = _addcarryx_u64(0x0, x566, x551, &x568);
- { uint64_t _; uint8_t x572 = _addcarryx_u64(0x0, x511, x535, &_);
- { uint64_t x574; uint8_t x575 = _addcarryx_u64(x572, x514, x553, &x574);
- { uint64_t x577; uint8_t x578 = _addcarryx_u64(x575, x517, x556, &x577);
- { uint64_t x580; uint8_t x581 = _addcarryx_u64(x578, x520, x559, &x580);
- { uint64_t x583; uint8_t x584 = _addcarryx_u64(x581, x523, x562, &x583);
- { uint64_t x586; uint8_t x587 = _addcarryx_u64(x584, x526, x565, &x586);
- { uint64_t x589; uint8_t x590 = _addcarryx_u64(x587, x529, x568, &x589);
- { uint8_t x591 = (x590 + x530);
- { uint64_t x594; uint64_t x593 = _mulx_u64(x12, x15, &x594);
- { uint64_t x597; uint64_t x596 = _mulx_u64(x12, x17, &x597);
- { uint64_t x600; uint64_t x599 = _mulx_u64(x12, x19, &x600);
- { uint64_t x603; uint64_t x602 = _mulx_u64(x12, x21, &x603);
- { uint64_t x606; uint64_t x605 = _mulx_u64(x12, x23, &x606);
- { uint64_t x609; uint64_t x608 = _mulx_u64(x12, x22, &x609);
- { uint64_t x611; uint8_t x612 = _addcarryx_u64(0x0, x594, x596, &x611);
- { uint64_t x614; uint8_t x615 = _addcarryx_u64(x612, x597, x599, &x614);
- { uint64_t x617; uint8_t x618 = _addcarryx_u64(x615, x600, x602, &x617);
- { uint64_t x620; uint8_t x621 = _addcarryx_u64(x618, x603, x605, &x620);
- { uint64_t x623; uint8_t x624 = _addcarryx_u64(x621, x606, x608, &x623);
- { uint64_t x626; uint8_t _ = _addcarryx_u64(0x0, x624, x609, &x626);
- { uint64_t x629; uint8_t x630 = _addcarryx_u64(0x0, x574, x593, &x629);
- { uint64_t x632; uint8_t x633 = _addcarryx_u64(x630, x577, x611, &x632);
- { uint64_t x635; uint8_t x636 = _addcarryx_u64(x633, x580, x614, &x635);
- { uint64_t x638; uint8_t x639 = _addcarryx_u64(x636, x583, x617, &x638);
- { uint64_t x641; uint8_t x642 = _addcarryx_u64(x639, x586, x620, &x641);
- { uint64_t x644; uint8_t x645 = _addcarryx_u64(x642, x589, x623, &x644);
- { uint64_t x647; uint8_t x648 = _addcarryx_u64(x645, x591, x626, &x647);
- { uint64_t _; uint64_t x650 = _mulx_u64(x629, 0x8fd8fd8fd8fd8fd9L, &_);
- { uint64_t x654; uint64_t x653 = _mulx_u64(x650, 0xffffffffffffff97L, &x654);
- { uint64_t x657; uint64_t x656 = _mulx_u64(x650, 0xffffffffffffffffL, &x657);
- { uint64_t x660; uint64_t x659 = _mulx_u64(x650, 0xffffffffffffffffL, &x660);
- { uint64_t x663; uint64_t x662 = _mulx_u64(x650, 0xffffffffffffffffL, &x663);
- { uint64_t x666; uint64_t x665 = _mulx_u64(x650, 0xffffffffffffffffL, &x666);
- { uint64_t x669; uint64_t x668 = _mulx_u64(x650, 0x3fffffffffffffff, &x669);
- { uint64_t x671; uint8_t x672 = _addcarryx_u64(0x0, x654, x656, &x671);
- { uint64_t x674; uint8_t x675 = _addcarryx_u64(x672, x657, x659, &x674);
- { uint64_t x677; uint8_t x678 = _addcarryx_u64(x675, x660, x662, &x677);
- { uint64_t x680; uint8_t x681 = _addcarryx_u64(x678, x663, x665, &x680);
- { uint64_t x683; uint8_t x684 = _addcarryx_u64(x681, x666, x668, &x683);
- { uint64_t x686; uint8_t _ = _addcarryx_u64(0x0, x684, x669, &x686);
- { uint64_t _; uint8_t x690 = _addcarryx_u64(0x0, x629, x653, &_);
- { uint64_t x692; uint8_t x693 = _addcarryx_u64(x690, x632, x671, &x692);
- { uint64_t x695; uint8_t x696 = _addcarryx_u64(x693, x635, x674, &x695);
- { uint64_t x698; uint8_t x699 = _addcarryx_u64(x696, x638, x677, &x698);
- { uint64_t x701; uint8_t x702 = _addcarryx_u64(x699, x641, x680, &x701);
- { uint64_t x704; uint8_t x705 = _addcarryx_u64(x702, x644, x683, &x704);
- { uint64_t x707; uint8_t x708 = _addcarryx_u64(x705, x647, x686, &x707);
- { uint8_t x709 = (x708 + x648);
- { uint64_t x711; uint8_t x712 = _subborrow_u64(0x0, x692, 0xffffffffffffff97L, &x711);
- { uint64_t x714; uint8_t x715 = _subborrow_u64(x712, x695, 0xffffffffffffffffL, &x714);
- { uint64_t x717; uint8_t x718 = _subborrow_u64(x715, x698, 0xffffffffffffffffL, &x717);
- { uint64_t x720; uint8_t x721 = _subborrow_u64(x718, x701, 0xffffffffffffffffL, &x720);
- { uint64_t x723; uint8_t x724 = _subborrow_u64(x721, x704, 0xffffffffffffffffL, &x723);
- { uint64_t x726; uint8_t x727 = _subborrow_u64(x724, x707, 0x3fffffffffffffff, &x726);
- { uint64_t _; uint8_t x730 = _subborrow_u64(x727, x709, 0x0, &_);
- { uint64_t x731 = cmovznz64(x730, x726, x707);
- { uint64_t x732 = cmovznz64(x730, x723, x704);
- { uint64_t x733 = cmovznz64(x730, x720, x701);
- { uint64_t x734 = cmovznz64(x730, x717, x698);
- { uint64_t x735 = cmovznz64(x730, x714, x695);
- { uint64_t x736 = cmovznz64(x730, x711, x692);
- out[0] = x736;
- out[1] = x735;
- out[2] = x734;
- out[3] = x733;
- out[4] = x732;
- out[5] = x731;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e382m105_6limbs/femul.v b/src/Specific/montgomery64_2e382m105_6limbs/femul.v
deleted file mode 100644
index 7b95bb62a..000000000
--- a/src/Specific/montgomery64_2e382m105_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e382m105_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e382m105_6limbs/femulDisplay.log b/src/Specific/montgomery64_2e382m105_6limbs/femulDisplay.log
deleted file mode 100644
index 473609891..000000000
--- a/src/Specific/montgomery64_2e382m105_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,252 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint64_t x26 = mulx_u64(x5, x15);
- uint64_t x28, uint64_t x29 = mulx_u64(x5, x17);
- uint64_t x31, uint64_t x32 = mulx_u64(x5, x19);
- uint64_t x34, uint64_t x35 = mulx_u64(x5, x21);
- uint64_t x37, uint64_t x38 = mulx_u64(x5, x23);
- uint64_t x40, uint64_t x41 = mulx_u64(x5, x22);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x26, x28);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x29, x31);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x47, x32, x34);
- uint64_t x52, uint8_t x53 = addcarryx_u64(x50, x35, x37);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x38, x40);
- uint64_t x58, uint8_t _ = addcarryx_u64(0x0, x56, x41);
- uint64_t x61, uint64_t _ = mulx_u64(x25, 0x8fd8fd8fd8fd8fd9L);
- uint64_t x64, uint64_t x65 = mulx_u64(x61, 0xffffffffffffff97L);
- uint64_t x67, uint64_t x68 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x70, uint64_t x71 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x73, uint64_t x74 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x76, uint64_t x77 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x79, uint64_t x80 = mulx_u64(x61, 0x3fffffffffffffff);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x65, x67);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x68, x70);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x71, x73);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x74, x76);
- uint64_t x94, uint8_t x95 = addcarryx_u64(x92, x77, x79);
- uint64_t x97, uint8_t _ = addcarryx_u64(0x0, x95, x80);
- uint64_t _, uint8_t x101 = addcarryx_u64(0x0, x25, x64);
- uint64_t x103, uint8_t x104 = addcarryx_u64(x101, x43, x82);
- uint64_t x106, uint8_t x107 = addcarryx_u64(x104, x46, x85);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x49, x88);
- uint64_t x112, uint8_t x113 = addcarryx_u64(x110, x52, x91);
- uint64_t x115, uint8_t x116 = addcarryx_u64(x113, x55, x94);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x58, x97);
- uint64_t x121, uint64_t x122 = mulx_u64(x7, x15);
- uint64_t x124, uint64_t x125 = mulx_u64(x7, x17);
- uint64_t x127, uint64_t x128 = mulx_u64(x7, x19);
- uint64_t x130, uint64_t x131 = mulx_u64(x7, x21);
- uint64_t x133, uint64_t x134 = mulx_u64(x7, x23);
- uint64_t x136, uint64_t x137 = mulx_u64(x7, x22);
- uint64_t x139, uint8_t x140 = addcarryx_u64(0x0, x122, x124);
- uint64_t x142, uint8_t x143 = addcarryx_u64(x140, x125, x127);
- uint64_t x145, uint8_t x146 = addcarryx_u64(x143, x128, x130);
- uint64_t x148, uint8_t x149 = addcarryx_u64(x146, x131, x133);
- uint64_t x151, uint8_t x152 = addcarryx_u64(x149, x134, x136);
- uint64_t x154, uint8_t _ = addcarryx_u64(0x0, x152, x137);
- uint64_t x157, uint8_t x158 = addcarryx_u64(0x0, x103, x121);
- uint64_t x160, uint8_t x161 = addcarryx_u64(x158, x106, x139);
- uint64_t x163, uint8_t x164 = addcarryx_u64(x161, x109, x142);
- uint64_t x166, uint8_t x167 = addcarryx_u64(x164, x112, x145);
- uint64_t x169, uint8_t x170 = addcarryx_u64(x167, x115, x148);
- uint64_t x172, uint8_t x173 = addcarryx_u64(x170, x118, x151);
- uint64_t x175, uint8_t x176 = addcarryx_u64(x173, x119, x154);
- uint64_t x178, uint64_t _ = mulx_u64(x157, 0x8fd8fd8fd8fd8fd9L);
- uint64_t x181, uint64_t x182 = mulx_u64(x178, 0xffffffffffffff97L);
- uint64_t x184, uint64_t x185 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x187, uint64_t x188 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x190, uint64_t x191 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x193, uint64_t x194 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x196, uint64_t x197 = mulx_u64(x178, 0x3fffffffffffffff);
- uint64_t x199, uint8_t x200 = addcarryx_u64(0x0, x182, x184);
- uint64_t x202, uint8_t x203 = addcarryx_u64(x200, x185, x187);
- uint64_t x205, uint8_t x206 = addcarryx_u64(x203, x188, x190);
- uint64_t x208, uint8_t x209 = addcarryx_u64(x206, x191, x193);
- uint64_t x211, uint8_t x212 = addcarryx_u64(x209, x194, x196);
- uint64_t x214, uint8_t _ = addcarryx_u64(0x0, x212, x197);
- uint64_t _, uint8_t x218 = addcarryx_u64(0x0, x157, x181);
- uint64_t x220, uint8_t x221 = addcarryx_u64(x218, x160, x199);
- uint64_t x223, uint8_t x224 = addcarryx_u64(x221, x163, x202);
- uint64_t x226, uint8_t x227 = addcarryx_u64(x224, x166, x205);
- uint64_t x229, uint8_t x230 = addcarryx_u64(x227, x169, x208);
- uint64_t x232, uint8_t x233 = addcarryx_u64(x230, x172, x211);
- uint64_t x235, uint8_t x236 = addcarryx_u64(x233, x175, x214);
- uint8_t x237 = (x236 + x176);
- uint64_t x239, uint64_t x240 = mulx_u64(x9, x15);
- uint64_t x242, uint64_t x243 = mulx_u64(x9, x17);
- uint64_t x245, uint64_t x246 = mulx_u64(x9, x19);
- uint64_t x248, uint64_t x249 = mulx_u64(x9, x21);
- uint64_t x251, uint64_t x252 = mulx_u64(x9, x23);
- uint64_t x254, uint64_t x255 = mulx_u64(x9, x22);
- uint64_t x257, uint8_t x258 = addcarryx_u64(0x0, x240, x242);
- uint64_t x260, uint8_t x261 = addcarryx_u64(x258, x243, x245);
- uint64_t x263, uint8_t x264 = addcarryx_u64(x261, x246, x248);
- uint64_t x266, uint8_t x267 = addcarryx_u64(x264, x249, x251);
- uint64_t x269, uint8_t x270 = addcarryx_u64(x267, x252, x254);
- uint64_t x272, uint8_t _ = addcarryx_u64(0x0, x270, x255);
- uint64_t x275, uint8_t x276 = addcarryx_u64(0x0, x220, x239);
- uint64_t x278, uint8_t x279 = addcarryx_u64(x276, x223, x257);
- uint64_t x281, uint8_t x282 = addcarryx_u64(x279, x226, x260);
- uint64_t x284, uint8_t x285 = addcarryx_u64(x282, x229, x263);
- uint64_t x287, uint8_t x288 = addcarryx_u64(x285, x232, x266);
- uint64_t x290, uint8_t x291 = addcarryx_u64(x288, x235, x269);
- uint64_t x293, uint8_t x294 = addcarryx_u64(x291, x237, x272);
- uint64_t x296, uint64_t _ = mulx_u64(x275, 0x8fd8fd8fd8fd8fd9L);
- uint64_t x299, uint64_t x300 = mulx_u64(x296, 0xffffffffffffff97L);
- uint64_t x302, uint64_t x303 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x305, uint64_t x306 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x308, uint64_t x309 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x311, uint64_t x312 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x314, uint64_t x315 = mulx_u64(x296, 0x3fffffffffffffff);
- uint64_t x317, uint8_t x318 = addcarryx_u64(0x0, x300, x302);
- uint64_t x320, uint8_t x321 = addcarryx_u64(x318, x303, x305);
- uint64_t x323, uint8_t x324 = addcarryx_u64(x321, x306, x308);
- uint64_t x326, uint8_t x327 = addcarryx_u64(x324, x309, x311);
- uint64_t x329, uint8_t x330 = addcarryx_u64(x327, x312, x314);
- uint64_t x332, uint8_t _ = addcarryx_u64(0x0, x330, x315);
- uint64_t _, uint8_t x336 = addcarryx_u64(0x0, x275, x299);
- uint64_t x338, uint8_t x339 = addcarryx_u64(x336, x278, x317);
- uint64_t x341, uint8_t x342 = addcarryx_u64(x339, x281, x320);
- uint64_t x344, uint8_t x345 = addcarryx_u64(x342, x284, x323);
- uint64_t x347, uint8_t x348 = addcarryx_u64(x345, x287, x326);
- uint64_t x350, uint8_t x351 = addcarryx_u64(x348, x290, x329);
- uint64_t x353, uint8_t x354 = addcarryx_u64(x351, x293, x332);
- uint8_t x355 = (x354 + x294);
- uint64_t x357, uint64_t x358 = mulx_u64(x11, x15);
- uint64_t x360, uint64_t x361 = mulx_u64(x11, x17);
- uint64_t x363, uint64_t x364 = mulx_u64(x11, x19);
- uint64_t x366, uint64_t x367 = mulx_u64(x11, x21);
- uint64_t x369, uint64_t x370 = mulx_u64(x11, x23);
- uint64_t x372, uint64_t x373 = mulx_u64(x11, x22);
- uint64_t x375, uint8_t x376 = addcarryx_u64(0x0, x358, x360);
- uint64_t x378, uint8_t x379 = addcarryx_u64(x376, x361, x363);
- uint64_t x381, uint8_t x382 = addcarryx_u64(x379, x364, x366);
- uint64_t x384, uint8_t x385 = addcarryx_u64(x382, x367, x369);
- uint64_t x387, uint8_t x388 = addcarryx_u64(x385, x370, x372);
- uint64_t x390, uint8_t _ = addcarryx_u64(0x0, x388, x373);
- uint64_t x393, uint8_t x394 = addcarryx_u64(0x0, x338, x357);
- uint64_t x396, uint8_t x397 = addcarryx_u64(x394, x341, x375);
- uint64_t x399, uint8_t x400 = addcarryx_u64(x397, x344, x378);
- uint64_t x402, uint8_t x403 = addcarryx_u64(x400, x347, x381);
- uint64_t x405, uint8_t x406 = addcarryx_u64(x403, x350, x384);
- uint64_t x408, uint8_t x409 = addcarryx_u64(x406, x353, x387);
- uint64_t x411, uint8_t x412 = addcarryx_u64(x409, x355, x390);
- uint64_t x414, uint64_t _ = mulx_u64(x393, 0x8fd8fd8fd8fd8fd9L);
- uint64_t x417, uint64_t x418 = mulx_u64(x414, 0xffffffffffffff97L);
- uint64_t x420, uint64_t x421 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x423, uint64_t x424 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x426, uint64_t x427 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x429, uint64_t x430 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x432, uint64_t x433 = mulx_u64(x414, 0x3fffffffffffffff);
- uint64_t x435, uint8_t x436 = addcarryx_u64(0x0, x418, x420);
- uint64_t x438, uint8_t x439 = addcarryx_u64(x436, x421, x423);
- uint64_t x441, uint8_t x442 = addcarryx_u64(x439, x424, x426);
- uint64_t x444, uint8_t x445 = addcarryx_u64(x442, x427, x429);
- uint64_t x447, uint8_t x448 = addcarryx_u64(x445, x430, x432);
- uint64_t x450, uint8_t _ = addcarryx_u64(0x0, x448, x433);
- uint64_t _, uint8_t x454 = addcarryx_u64(0x0, x393, x417);
- uint64_t x456, uint8_t x457 = addcarryx_u64(x454, x396, x435);
- uint64_t x459, uint8_t x460 = addcarryx_u64(x457, x399, x438);
- uint64_t x462, uint8_t x463 = addcarryx_u64(x460, x402, x441);
- uint64_t x465, uint8_t x466 = addcarryx_u64(x463, x405, x444);
- uint64_t x468, uint8_t x469 = addcarryx_u64(x466, x408, x447);
- uint64_t x471, uint8_t x472 = addcarryx_u64(x469, x411, x450);
- uint8_t x473 = (x472 + x412);
- uint64_t x475, uint64_t x476 = mulx_u64(x13, x15);
- uint64_t x478, uint64_t x479 = mulx_u64(x13, x17);
- uint64_t x481, uint64_t x482 = mulx_u64(x13, x19);
- uint64_t x484, uint64_t x485 = mulx_u64(x13, x21);
- uint64_t x487, uint64_t x488 = mulx_u64(x13, x23);
- uint64_t x490, uint64_t x491 = mulx_u64(x13, x22);
- uint64_t x493, uint8_t x494 = addcarryx_u64(0x0, x476, x478);
- uint64_t x496, uint8_t x497 = addcarryx_u64(x494, x479, x481);
- uint64_t x499, uint8_t x500 = addcarryx_u64(x497, x482, x484);
- uint64_t x502, uint8_t x503 = addcarryx_u64(x500, x485, x487);
- uint64_t x505, uint8_t x506 = addcarryx_u64(x503, x488, x490);
- uint64_t x508, uint8_t _ = addcarryx_u64(0x0, x506, x491);
- uint64_t x511, uint8_t x512 = addcarryx_u64(0x0, x456, x475);
- uint64_t x514, uint8_t x515 = addcarryx_u64(x512, x459, x493);
- uint64_t x517, uint8_t x518 = addcarryx_u64(x515, x462, x496);
- uint64_t x520, uint8_t x521 = addcarryx_u64(x518, x465, x499);
- uint64_t x523, uint8_t x524 = addcarryx_u64(x521, x468, x502);
- uint64_t x526, uint8_t x527 = addcarryx_u64(x524, x471, x505);
- uint64_t x529, uint8_t x530 = addcarryx_u64(x527, x473, x508);
- uint64_t x532, uint64_t _ = mulx_u64(x511, 0x8fd8fd8fd8fd8fd9L);
- uint64_t x535, uint64_t x536 = mulx_u64(x532, 0xffffffffffffff97L);
- uint64_t x538, uint64_t x539 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x541, uint64_t x542 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x544, uint64_t x545 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x547, uint64_t x548 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x550, uint64_t x551 = mulx_u64(x532, 0x3fffffffffffffff);
- uint64_t x553, uint8_t x554 = addcarryx_u64(0x0, x536, x538);
- uint64_t x556, uint8_t x557 = addcarryx_u64(x554, x539, x541);
- uint64_t x559, uint8_t x560 = addcarryx_u64(x557, x542, x544);
- uint64_t x562, uint8_t x563 = addcarryx_u64(x560, x545, x547);
- uint64_t x565, uint8_t x566 = addcarryx_u64(x563, x548, x550);
- uint64_t x568, uint8_t _ = addcarryx_u64(0x0, x566, x551);
- uint64_t _, uint8_t x572 = addcarryx_u64(0x0, x511, x535);
- uint64_t x574, uint8_t x575 = addcarryx_u64(x572, x514, x553);
- uint64_t x577, uint8_t x578 = addcarryx_u64(x575, x517, x556);
- uint64_t x580, uint8_t x581 = addcarryx_u64(x578, x520, x559);
- uint64_t x583, uint8_t x584 = addcarryx_u64(x581, x523, x562);
- uint64_t x586, uint8_t x587 = addcarryx_u64(x584, x526, x565);
- uint64_t x589, uint8_t x590 = addcarryx_u64(x587, x529, x568);
- uint8_t x591 = (x590 + x530);
- uint64_t x593, uint64_t x594 = mulx_u64(x12, x15);
- uint64_t x596, uint64_t x597 = mulx_u64(x12, x17);
- uint64_t x599, uint64_t x600 = mulx_u64(x12, x19);
- uint64_t x602, uint64_t x603 = mulx_u64(x12, x21);
- uint64_t x605, uint64_t x606 = mulx_u64(x12, x23);
- uint64_t x608, uint64_t x609 = mulx_u64(x12, x22);
- uint64_t x611, uint8_t x612 = addcarryx_u64(0x0, x594, x596);
- uint64_t x614, uint8_t x615 = addcarryx_u64(x612, x597, x599);
- uint64_t x617, uint8_t x618 = addcarryx_u64(x615, x600, x602);
- uint64_t x620, uint8_t x621 = addcarryx_u64(x618, x603, x605);
- uint64_t x623, uint8_t x624 = addcarryx_u64(x621, x606, x608);
- uint64_t x626, uint8_t _ = addcarryx_u64(0x0, x624, x609);
- uint64_t x629, uint8_t x630 = addcarryx_u64(0x0, x574, x593);
- uint64_t x632, uint8_t x633 = addcarryx_u64(x630, x577, x611);
- uint64_t x635, uint8_t x636 = addcarryx_u64(x633, x580, x614);
- uint64_t x638, uint8_t x639 = addcarryx_u64(x636, x583, x617);
- uint64_t x641, uint8_t x642 = addcarryx_u64(x639, x586, x620);
- uint64_t x644, uint8_t x645 = addcarryx_u64(x642, x589, x623);
- uint64_t x647, uint8_t x648 = addcarryx_u64(x645, x591, x626);
- uint64_t x650, uint64_t _ = mulx_u64(x629, 0x8fd8fd8fd8fd8fd9L);
- uint64_t x653, uint64_t x654 = mulx_u64(x650, 0xffffffffffffff97L);
- uint64_t x656, uint64_t x657 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x659, uint64_t x660 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x662, uint64_t x663 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x665, uint64_t x666 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x668, uint64_t x669 = mulx_u64(x650, 0x3fffffffffffffff);
- uint64_t x671, uint8_t x672 = addcarryx_u64(0x0, x654, x656);
- uint64_t x674, uint8_t x675 = addcarryx_u64(x672, x657, x659);
- uint64_t x677, uint8_t x678 = addcarryx_u64(x675, x660, x662);
- uint64_t x680, uint8_t x681 = addcarryx_u64(x678, x663, x665);
- uint64_t x683, uint8_t x684 = addcarryx_u64(x681, x666, x668);
- uint64_t x686, uint8_t _ = addcarryx_u64(0x0, x684, x669);
- uint64_t _, uint8_t x690 = addcarryx_u64(0x0, x629, x653);
- uint64_t x692, uint8_t x693 = addcarryx_u64(x690, x632, x671);
- uint64_t x695, uint8_t x696 = addcarryx_u64(x693, x635, x674);
- uint64_t x698, uint8_t x699 = addcarryx_u64(x696, x638, x677);
- uint64_t x701, uint8_t x702 = addcarryx_u64(x699, x641, x680);
- uint64_t x704, uint8_t x705 = addcarryx_u64(x702, x644, x683);
- uint64_t x707, uint8_t x708 = addcarryx_u64(x705, x647, x686);
- uint8_t x709 = (x708 + x648);
- uint64_t x711, uint8_t x712 = subborrow_u64(0x0, x692, 0xffffffffffffff97L);
- uint64_t x714, uint8_t x715 = subborrow_u64(x712, x695, 0xffffffffffffffffL);
- uint64_t x717, uint8_t x718 = subborrow_u64(x715, x698, 0xffffffffffffffffL);
- uint64_t x720, uint8_t x721 = subborrow_u64(x718, x701, 0xffffffffffffffffL);
- uint64_t x723, uint8_t x724 = subborrow_u64(x721, x704, 0xffffffffffffffffL);
- uint64_t x726, uint8_t x727 = subborrow_u64(x724, x707, 0x3fffffffffffffff);
- uint64_t _, uint8_t x730 = subborrow_u64(x727, x709, 0x0);
- uint64_t x731 = cmovznz64(x730, x726, x707);
- uint64_t x732 = cmovznz64(x730, x723, x704);
- uint64_t x733 = cmovznz64(x730, x720, x701);
- uint64_t x734 = cmovznz64(x730, x717, x698);
- uint64_t x735 = cmovznz64(x730, x714, x695);
- uint64_t x736 = cmovznz64(x730, x711, x692);
- return (x731, x732, x733, x734, x735, x736))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e382m105_6limbs/femulDisplay.v b/src/Specific/montgomery64_2e382m105_6limbs/femulDisplay.v
deleted file mode 100644
index 1652a3102..000000000
--- a/src/Specific/montgomery64_2e382m105_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e382m105_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e382m105_6limbs/fenz.c b/src/Specific/montgomery64_2e382m105_6limbs/fenz.c
deleted file mode 100644
index c93f74257..000000000
--- a/src/Specific/montgomery64_2e382m105_6limbs/fenz.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x11 = (x10 | x9);
- { uint64_t x12 = (x8 | x11);
- { uint64_t x13 = (x6 | x12);
- { uint64_t x14 = (x4 | x13);
- { uint64_t x15 = (x2 | x14);
- out[0] = x15;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e382m105_6limbs/fenz.v b/src/Specific/montgomery64_2e382m105_6limbs/fenz.v
deleted file mode 100644
index 289b666cb..000000000
--- a/src/Specific/montgomery64_2e382m105_6limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e382m105_6limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e382m105_6limbs/fenzDisplay.log b/src/Specific/montgomery64_2e382m105_6limbs/fenzDisplay.log
deleted file mode 100644
index f39f1d91b..000000000
--- a/src/Specific/montgomery64_2e382m105_6limbs/fenzDisplay.log
+++ /dev/null
@@ -1,12 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x11 = (x10 | x9);
- uint64_t x12 = (x8 | x11);
- uint64_t x13 = (x6 | x12);
- uint64_t x14 = (x4 | x13);
- uint64_t x15 = (x2 | x14);
- return x15)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e382m105_6limbs/fenzDisplay.v b/src/Specific/montgomery64_2e382m105_6limbs/fenzDisplay.v
deleted file mode 100644
index 732add0fd..000000000
--- a/src/Specific/montgomery64_2e382m105_6limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e382m105_6limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e382m105_6limbs/feopp.c b/src/Specific/montgomery64_2e382m105_6limbs/feopp.c
deleted file mode 100644
index 8c3f46737..000000000
--- a/src/Specific/montgomery64_2e382m105_6limbs/feopp.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feopp(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12; uint8_t x13 = _subborrow_u64(0x0, 0x0, x2, &x12);
- { uint64_t x15; uint8_t x16 = _subborrow_u64(x13, 0x0, x4, &x15);
- { uint64_t x18; uint8_t x19 = _subborrow_u64(x16, 0x0, x6, &x18);
- { uint64_t x21; uint8_t x22 = _subborrow_u64(x19, 0x0, x8, &x21);
- { uint64_t x24; uint8_t x25 = _subborrow_u64(x22, 0x0, x10, &x24);
- { uint64_t x27; uint8_t x28 = _subborrow_u64(x25, 0x0, x9, &x27);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0xffffffffffffff97L);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(0x0, x12, x30, &x32);
- { uint64_t x34 = (x29 & 0xffffffffffffffffL);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x33, x15, x34, &x36);
- { uint64_t x38 = (x29 & 0xffffffffffffffffL);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x37, x18, x38, &x40);
- { uint64_t x42 = (x29 & 0xffffffffffffffffL);
- { uint64_t x44; uint8_t x45 = _addcarryx_u64(x41, x21, x42, &x44);
- { uint64_t x46 = (x29 & 0xffffffffffffffffL);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x45, x24, x46, &x48);
- { uint64_t x50 = (x29 & 0x3fffffffffffffff);
- { uint64_t x52; uint8_t _ = _addcarryx_u64(x49, x27, x50, &x52);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e382m105_6limbs/feopp.v b/src/Specific/montgomery64_2e382m105_6limbs/feopp.v
deleted file mode 100644
index ee6434f80..000000000
--- a/src/Specific/montgomery64_2e382m105_6limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e382m105_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e382m105_6limbs/feoppDisplay.log b/src/Specific/montgomery64_2e382m105_6limbs/feoppDisplay.log
deleted file mode 100644
index a9d8ca2d7..000000000
--- a/src/Specific/montgomery64_2e382m105_6limbs/feoppDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x15, uint8_t x16 = subborrow_u64(x13, 0x0, x4);
- uint64_t x18, uint8_t x19 = subborrow_u64(x16, 0x0, x6);
- uint64_t x21, uint8_t x22 = subborrow_u64(x19, 0x0, x8);
- uint64_t x24, uint8_t x25 = subborrow_u64(x22, 0x0, x10);
- uint64_t x27, uint8_t x28 = subborrow_u64(x25, 0x0, x9);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0xffffffffffffff97L);
- uint64_t x32, uint8_t x33 = addcarryx_u64(0x0, x12, x30);
- uint64_t x34 = (x29 & 0xffffffffffffffffL);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x33, x15, x34);
- uint64_t x38 = (x29 & 0xffffffffffffffffL);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x37, x18, x38);
- uint64_t x42 = (x29 & 0xffffffffffffffffL);
- uint64_t x44, uint8_t x45 = addcarryx_u64(x41, x21, x42);
- uint64_t x46 = (x29 & 0xffffffffffffffffL);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x45, x24, x46);
- uint64_t x50 = (x29 & 0x3fffffffffffffff);
- uint64_t x52, uint8_t _ = addcarryx_u64(x49, x27, x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e382m105_6limbs/feoppDisplay.v b/src/Specific/montgomery64_2e382m105_6limbs/feoppDisplay.v
deleted file mode 100644
index 989fe9a06..000000000
--- a/src/Specific/montgomery64_2e382m105_6limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e382m105_6limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e382m105_6limbs/fesquare.c b/src/Specific/montgomery64_2e382m105_6limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e382m105_6limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e382m105_6limbs/fesub.c b/src/Specific/montgomery64_2e382m105_6limbs/fesub.c
deleted file mode 100644
index d4902b9b9..000000000
--- a/src/Specific/montgomery64_2e382m105_6limbs/fesub.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _subborrow_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _subborrow_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _subborrow_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _subborrow_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _subborrow_u64(x38, x12, x22, &x40);
- { uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- { uint64_t x43 = (x42 & 0xffffffffffffff97L);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(0x0, x25, x43, &x45);
- { uint64_t x47 = (x42 & 0xffffffffffffffffL);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x46, x28, x47, &x49);
- { uint64_t x51 = (x42 & 0xffffffffffffffffL);
- { uint64_t x53; uint8_t x54 = _addcarryx_u64(x50, x31, x51, &x53);
- { uint64_t x55 = (x42 & 0xffffffffffffffffL);
- { uint64_t x57; uint8_t x58 = _addcarryx_u64(x54, x34, x55, &x57);
- { uint64_t x59 = (x42 & 0xffffffffffffffffL);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x58, x37, x59, &x61);
- { uint64_t x63 = (x42 & 0x3fffffffffffffff);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(x62, x40, x63, &x65);
- out[0] = x45;
- out[1] = x49;
- out[2] = x53;
- out[3] = x57;
- out[4] = x61;
- out[5] = x65;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e382m105_6limbs/fesub.v b/src/Specific/montgomery64_2e382m105_6limbs/fesub.v
deleted file mode 100644
index 4b7dd1105..000000000
--- a/src/Specific/montgomery64_2e382m105_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e382m105_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e382m105_6limbs/fesubDisplay.log b/src/Specific/montgomery64_2e382m105_6limbs/fesubDisplay.log
deleted file mode 100644
index 9669d06c8..000000000
--- a/src/Specific/montgomery64_2e382m105_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = subborrow_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = subborrow_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = subborrow_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = subborrow_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = subborrow_u64(x38, x12, x22);
- uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- uint64_t x43 = (x42 & 0xffffffffffffff97L);
- uint64_t x45, uint8_t x46 = addcarryx_u64(0x0, x25, x43);
- uint64_t x47 = (x42 & 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x46, x28, x47);
- uint64_t x51 = (x42 & 0xffffffffffffffffL);
- uint64_t x53, uint8_t x54 = addcarryx_u64(x50, x31, x51);
- uint64_t x55 = (x42 & 0xffffffffffffffffL);
- uint64_t x57, uint8_t x58 = addcarryx_u64(x54, x34, x55);
- uint64_t x59 = (x42 & 0xffffffffffffffffL);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x58, x37, x59);
- uint64_t x63 = (x42 & 0x3fffffffffffffff);
- uint64_t x65, uint8_t _ = addcarryx_u64(x62, x40, x63);
- (Return x65, Return x61, Return x57, Return x53, Return x49, Return x45))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e382m105_6limbs/fesubDisplay.v b/src/Specific/montgomery64_2e382m105_6limbs/fesubDisplay.v
deleted file mode 100644
index 6d7605d7b..000000000
--- a/src/Specific/montgomery64_2e382m105_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e382m105_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e382m105_6limbs/py_interpreter.sh b/src/Specific/montgomery64_2e382m105_6limbs/py_interpreter.sh
deleted file mode 100755
index 04dd71243..000000000
--- a/src/Specific/montgomery64_2e382m105_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**382 - 105' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e383m187_6limbs/CurveParameters.v b/src/Specific/montgomery64_2e383m187_6limbs/CurveParameters.v
deleted file mode 100644
index cc4e4efae..000000000
--- a/src/Specific/montgomery64_2e383m187_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^383 - 187
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 64;
- bitwidth := 64;
- s := 2^383;
- c := [(1, 187)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e383m187_6limbs/Synthesis.v b/src/Specific/montgomery64_2e383m187_6limbs/Synthesis.v
deleted file mode 100644
index 13e8bc2eb..000000000
--- a/src/Specific/montgomery64_2e383m187_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e383m187_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/montgomery64_2e383m187_6limbs/compiler.sh b/src/Specific/montgomery64_2e383m187_6limbs/compiler.sh
deleted file mode 100755
index 59ba84de3..000000000
--- a/src/Specific/montgomery64_2e383m187_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<383) - 187' "$@"
diff --git a/src/Specific/montgomery64_2e383m187_6limbs/compilerxx.sh b/src/Specific/montgomery64_2e383m187_6limbs/compilerxx.sh
deleted file mode 100755
index 01f8ac981..000000000
--- a/src/Specific/montgomery64_2e383m187_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<383) - 187' "$@"
diff --git a/src/Specific/montgomery64_2e383m187_6limbs/feadd.c b/src/Specific/montgomery64_2e383m187_6limbs/feadd.c
deleted file mode 100644
index eced0e029..000000000
--- a/src/Specific/montgomery64_2e383m187_6limbs/feadd.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _addcarryx_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _addcarryx_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x38, x12, x22, &x40);
- { uint64_t x43; uint8_t x44 = _subborrow_u64(0x0, x25, 0xffffffffffffff45L, &x43);
- { uint64_t x46; uint8_t x47 = _subborrow_u64(x44, x28, 0xffffffffffffffffL, &x46);
- { uint64_t x49; uint8_t x50 = _subborrow_u64(x47, x31, 0xffffffffffffffffL, &x49);
- { uint64_t x52; uint8_t x53 = _subborrow_u64(x50, x34, 0xffffffffffffffffL, &x52);
- { uint64_t x55; uint8_t x56 = _subborrow_u64(x53, x37, 0xffffffffffffffffL, &x55);
- { uint64_t x58; uint8_t x59 = _subborrow_u64(x56, x40, 0x7fffffffffffffffL, &x58);
- { uint64_t _; uint8_t x62 = _subborrow_u64(x59, x41, 0x0, &_);
- { uint64_t x63 = cmovznz64(x62, x58, x40);
- { uint64_t x64 = cmovznz64(x62, x55, x37);
- { uint64_t x65 = cmovznz64(x62, x52, x34);
- { uint64_t x66 = cmovznz64(x62, x49, x31);
- { uint64_t x67 = cmovznz64(x62, x46, x28);
- { uint64_t x68 = cmovznz64(x62, x43, x25);
- out[0] = x68;
- out[1] = x67;
- out[2] = x66;
- out[3] = x65;
- out[4] = x64;
- out[5] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e383m187_6limbs/feadd.v b/src/Specific/montgomery64_2e383m187_6limbs/feadd.v
deleted file mode 100644
index b989ba32e..000000000
--- a/src/Specific/montgomery64_2e383m187_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e383m187_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e383m187_6limbs/feaddDisplay.log b/src/Specific/montgomery64_2e383m187_6limbs/feaddDisplay.log
deleted file mode 100644
index f29301fe6..000000000
--- a/src/Specific/montgomery64_2e383m187_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = addcarryx_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = addcarryx_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = addcarryx_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = addcarryx_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x38, x12, x22);
- uint64_t x43, uint8_t x44 = subborrow_u64(0x0, x25, 0xffffffffffffff45L);
- uint64_t x46, uint8_t x47 = subborrow_u64(x44, x28, 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = subborrow_u64(x47, x31, 0xffffffffffffffffL);
- uint64_t x52, uint8_t x53 = subborrow_u64(x50, x34, 0xffffffffffffffffL);
- uint64_t x55, uint8_t x56 = subborrow_u64(x53, x37, 0xffffffffffffffffL);
- uint64_t x58, uint8_t x59 = subborrow_u64(x56, x40, 0x7fffffffffffffffL);
- uint64_t _, uint8_t x62 = subborrow_u64(x59, x41, 0x0);
- uint64_t x63 = cmovznz64(x62, x58, x40);
- uint64_t x64 = cmovznz64(x62, x55, x37);
- uint64_t x65 = cmovznz64(x62, x52, x34);
- uint64_t x66 = cmovznz64(x62, x49, x31);
- uint64_t x67 = cmovznz64(x62, x46, x28);
- uint64_t x68 = cmovznz64(x62, x43, x25);
- return (x63, x64, x65, x66, x67, x68))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e383m187_6limbs/feaddDisplay.v b/src/Specific/montgomery64_2e383m187_6limbs/feaddDisplay.v
deleted file mode 100644
index c46fc78ff..000000000
--- a/src/Specific/montgomery64_2e383m187_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e383m187_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e383m187_6limbs/femul.c b/src/Specific/montgomery64_2e383m187_6limbs/femul.c
deleted file mode 100644
index 9f87a6997..000000000
--- a/src/Specific/montgomery64_2e383m187_6limbs/femul.c
+++ /dev/null
@@ -1,266 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x26; uint64_t x25 = _mulx_u64(x5, x15, &x26);
- { uint64_t x29; uint64_t x28 = _mulx_u64(x5, x17, &x29);
- { uint64_t x32; uint64_t x31 = _mulx_u64(x5, x19, &x32);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x5, x21, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x5, x23, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x5, x22, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x26, x28, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x29, x31, &x46);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x47, x32, x34, &x49);
- { uint64_t x52; uint8_t x53 = _addcarryx_u64(x50, x35, x37, &x52);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x38, x40, &x55);
- { uint64_t x58; uint8_t _ = _addcarryx_u64(0x0, x56, x41, &x58);
- { uint64_t _; uint64_t x61 = _mulx_u64(x25, 0x8a4472fea18a4473L, &_);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x61, 0xffffffffffffff45L, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x61, 0xffffffffffffffffL, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x61, 0xffffffffffffffffL, &x71);
- { uint64_t x74; uint64_t x73 = _mulx_u64(x61, 0xffffffffffffffffL, &x74);
- { uint64_t x77; uint64_t x76 = _mulx_u64(x61, 0xffffffffffffffffL, &x77);
- { uint64_t x80; uint64_t x79 = _mulx_u64(x61, 0x7fffffffffffffffL, &x80);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x65, x67, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x68, x70, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x71, x73, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x74, x76, &x91);
- { uint64_t x94; uint8_t x95 = _addcarryx_u64(x92, x77, x79, &x94);
- { uint64_t x97; uint8_t _ = _addcarryx_u64(0x0, x95, x80, &x97);
- { uint64_t _; uint8_t x101 = _addcarryx_u64(0x0, x25, x64, &_);
- { uint64_t x103; uint8_t x104 = _addcarryx_u64(x101, x43, x82, &x103);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(x104, x46, x85, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x49, x88, &x109);
- { uint64_t x112; uint8_t x113 = _addcarryx_u64(x110, x52, x91, &x112);
- { uint64_t x115; uint8_t x116 = _addcarryx_u64(x113, x55, x94, &x115);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x58, x97, &x118);
- { uint64_t x122; uint64_t x121 = _mulx_u64(x7, x15, &x122);
- { uint64_t x125; uint64_t x124 = _mulx_u64(x7, x17, &x125);
- { uint64_t x128; uint64_t x127 = _mulx_u64(x7, x19, &x128);
- { uint64_t x131; uint64_t x130 = _mulx_u64(x7, x21, &x131);
- { uint64_t x134; uint64_t x133 = _mulx_u64(x7, x23, &x134);
- { uint64_t x137; uint64_t x136 = _mulx_u64(x7, x22, &x137);
- { uint64_t x139; uint8_t x140 = _addcarryx_u64(0x0, x122, x124, &x139);
- { uint64_t x142; uint8_t x143 = _addcarryx_u64(x140, x125, x127, &x142);
- { uint64_t x145; uint8_t x146 = _addcarryx_u64(x143, x128, x130, &x145);
- { uint64_t x148; uint8_t x149 = _addcarryx_u64(x146, x131, x133, &x148);
- { uint64_t x151; uint8_t x152 = _addcarryx_u64(x149, x134, x136, &x151);
- { uint64_t x154; uint8_t _ = _addcarryx_u64(0x0, x152, x137, &x154);
- { uint64_t x157; uint8_t x158 = _addcarryx_u64(0x0, x103, x121, &x157);
- { uint64_t x160; uint8_t x161 = _addcarryx_u64(x158, x106, x139, &x160);
- { uint64_t x163; uint8_t x164 = _addcarryx_u64(x161, x109, x142, &x163);
- { uint64_t x166; uint8_t x167 = _addcarryx_u64(x164, x112, x145, &x166);
- { uint64_t x169; uint8_t x170 = _addcarryx_u64(x167, x115, x148, &x169);
- { uint64_t x172; uint8_t x173 = _addcarryx_u64(x170, x118, x151, &x172);
- { uint64_t x175; uint8_t x176 = _addcarryx_u64(x173, x119, x154, &x175);
- { uint64_t _; uint64_t x178 = _mulx_u64(x157, 0x8a4472fea18a4473L, &_);
- { uint64_t x182; uint64_t x181 = _mulx_u64(x178, 0xffffffffffffff45L, &x182);
- { uint64_t x185; uint64_t x184 = _mulx_u64(x178, 0xffffffffffffffffL, &x185);
- { uint64_t x188; uint64_t x187 = _mulx_u64(x178, 0xffffffffffffffffL, &x188);
- { uint64_t x191; uint64_t x190 = _mulx_u64(x178, 0xffffffffffffffffL, &x191);
- { uint64_t x194; uint64_t x193 = _mulx_u64(x178, 0xffffffffffffffffL, &x194);
- { uint64_t x197; uint64_t x196 = _mulx_u64(x178, 0x7fffffffffffffffL, &x197);
- { uint64_t x199; uint8_t x200 = _addcarryx_u64(0x0, x182, x184, &x199);
- { uint64_t x202; uint8_t x203 = _addcarryx_u64(x200, x185, x187, &x202);
- { uint64_t x205; uint8_t x206 = _addcarryx_u64(x203, x188, x190, &x205);
- { uint64_t x208; uint8_t x209 = _addcarryx_u64(x206, x191, x193, &x208);
- { uint64_t x211; uint8_t x212 = _addcarryx_u64(x209, x194, x196, &x211);
- { uint64_t x214; uint8_t _ = _addcarryx_u64(0x0, x212, x197, &x214);
- { uint64_t _; uint8_t x218 = _addcarryx_u64(0x0, x157, x181, &_);
- { uint64_t x220; uint8_t x221 = _addcarryx_u64(x218, x160, x199, &x220);
- { uint64_t x223; uint8_t x224 = _addcarryx_u64(x221, x163, x202, &x223);
- { uint64_t x226; uint8_t x227 = _addcarryx_u64(x224, x166, x205, &x226);
- { uint64_t x229; uint8_t x230 = _addcarryx_u64(x227, x169, x208, &x229);
- { uint64_t x232; uint8_t x233 = _addcarryx_u64(x230, x172, x211, &x232);
- { uint64_t x235; uint8_t x236 = _addcarryx_u64(x233, x175, x214, &x235);
- { uint8_t x237 = (x236 + x176);
- { uint64_t x240; uint64_t x239 = _mulx_u64(x9, x15, &x240);
- { uint64_t x243; uint64_t x242 = _mulx_u64(x9, x17, &x243);
- { uint64_t x246; uint64_t x245 = _mulx_u64(x9, x19, &x246);
- { uint64_t x249; uint64_t x248 = _mulx_u64(x9, x21, &x249);
- { uint64_t x252; uint64_t x251 = _mulx_u64(x9, x23, &x252);
- { uint64_t x255; uint64_t x254 = _mulx_u64(x9, x22, &x255);
- { uint64_t x257; uint8_t x258 = _addcarryx_u64(0x0, x240, x242, &x257);
- { uint64_t x260; uint8_t x261 = _addcarryx_u64(x258, x243, x245, &x260);
- { uint64_t x263; uint8_t x264 = _addcarryx_u64(x261, x246, x248, &x263);
- { uint64_t x266; uint8_t x267 = _addcarryx_u64(x264, x249, x251, &x266);
- { uint64_t x269; uint8_t x270 = _addcarryx_u64(x267, x252, x254, &x269);
- { uint64_t x272; uint8_t _ = _addcarryx_u64(0x0, x270, x255, &x272);
- { uint64_t x275; uint8_t x276 = _addcarryx_u64(0x0, x220, x239, &x275);
- { uint64_t x278; uint8_t x279 = _addcarryx_u64(x276, x223, x257, &x278);
- { uint64_t x281; uint8_t x282 = _addcarryx_u64(x279, x226, x260, &x281);
- { uint64_t x284; uint8_t x285 = _addcarryx_u64(x282, x229, x263, &x284);
- { uint64_t x287; uint8_t x288 = _addcarryx_u64(x285, x232, x266, &x287);
- { uint64_t x290; uint8_t x291 = _addcarryx_u64(x288, x235, x269, &x290);
- { uint64_t x293; uint8_t x294 = _addcarryx_u64(x291, x237, x272, &x293);
- { uint64_t _; uint64_t x296 = _mulx_u64(x275, 0x8a4472fea18a4473L, &_);
- { uint64_t x300; uint64_t x299 = _mulx_u64(x296, 0xffffffffffffff45L, &x300);
- { uint64_t x303; uint64_t x302 = _mulx_u64(x296, 0xffffffffffffffffL, &x303);
- { uint64_t x306; uint64_t x305 = _mulx_u64(x296, 0xffffffffffffffffL, &x306);
- { uint64_t x309; uint64_t x308 = _mulx_u64(x296, 0xffffffffffffffffL, &x309);
- { uint64_t x312; uint64_t x311 = _mulx_u64(x296, 0xffffffffffffffffL, &x312);
- { uint64_t x315; uint64_t x314 = _mulx_u64(x296, 0x7fffffffffffffffL, &x315);
- { uint64_t x317; uint8_t x318 = _addcarryx_u64(0x0, x300, x302, &x317);
- { uint64_t x320; uint8_t x321 = _addcarryx_u64(x318, x303, x305, &x320);
- { uint64_t x323; uint8_t x324 = _addcarryx_u64(x321, x306, x308, &x323);
- { uint64_t x326; uint8_t x327 = _addcarryx_u64(x324, x309, x311, &x326);
- { uint64_t x329; uint8_t x330 = _addcarryx_u64(x327, x312, x314, &x329);
- { uint64_t x332; uint8_t _ = _addcarryx_u64(0x0, x330, x315, &x332);
- { uint64_t _; uint8_t x336 = _addcarryx_u64(0x0, x275, x299, &_);
- { uint64_t x338; uint8_t x339 = _addcarryx_u64(x336, x278, x317, &x338);
- { uint64_t x341; uint8_t x342 = _addcarryx_u64(x339, x281, x320, &x341);
- { uint64_t x344; uint8_t x345 = _addcarryx_u64(x342, x284, x323, &x344);
- { uint64_t x347; uint8_t x348 = _addcarryx_u64(x345, x287, x326, &x347);
- { uint64_t x350; uint8_t x351 = _addcarryx_u64(x348, x290, x329, &x350);
- { uint64_t x353; uint8_t x354 = _addcarryx_u64(x351, x293, x332, &x353);
- { uint8_t x355 = (x354 + x294);
- { uint64_t x358; uint64_t x357 = _mulx_u64(x11, x15, &x358);
- { uint64_t x361; uint64_t x360 = _mulx_u64(x11, x17, &x361);
- { uint64_t x364; uint64_t x363 = _mulx_u64(x11, x19, &x364);
- { uint64_t x367; uint64_t x366 = _mulx_u64(x11, x21, &x367);
- { uint64_t x370; uint64_t x369 = _mulx_u64(x11, x23, &x370);
- { uint64_t x373; uint64_t x372 = _mulx_u64(x11, x22, &x373);
- { uint64_t x375; uint8_t x376 = _addcarryx_u64(0x0, x358, x360, &x375);
- { uint64_t x378; uint8_t x379 = _addcarryx_u64(x376, x361, x363, &x378);
- { uint64_t x381; uint8_t x382 = _addcarryx_u64(x379, x364, x366, &x381);
- { uint64_t x384; uint8_t x385 = _addcarryx_u64(x382, x367, x369, &x384);
- { uint64_t x387; uint8_t x388 = _addcarryx_u64(x385, x370, x372, &x387);
- { uint64_t x390; uint8_t _ = _addcarryx_u64(0x0, x388, x373, &x390);
- { uint64_t x393; uint8_t x394 = _addcarryx_u64(0x0, x338, x357, &x393);
- { uint64_t x396; uint8_t x397 = _addcarryx_u64(x394, x341, x375, &x396);
- { uint64_t x399; uint8_t x400 = _addcarryx_u64(x397, x344, x378, &x399);
- { uint64_t x402; uint8_t x403 = _addcarryx_u64(x400, x347, x381, &x402);
- { uint64_t x405; uint8_t x406 = _addcarryx_u64(x403, x350, x384, &x405);
- { uint64_t x408; uint8_t x409 = _addcarryx_u64(x406, x353, x387, &x408);
- { uint64_t x411; uint8_t x412 = _addcarryx_u64(x409, x355, x390, &x411);
- { uint64_t _; uint64_t x414 = _mulx_u64(x393, 0x8a4472fea18a4473L, &_);
- { uint64_t x418; uint64_t x417 = _mulx_u64(x414, 0xffffffffffffff45L, &x418);
- { uint64_t x421; uint64_t x420 = _mulx_u64(x414, 0xffffffffffffffffL, &x421);
- { uint64_t x424; uint64_t x423 = _mulx_u64(x414, 0xffffffffffffffffL, &x424);
- { uint64_t x427; uint64_t x426 = _mulx_u64(x414, 0xffffffffffffffffL, &x427);
- { uint64_t x430; uint64_t x429 = _mulx_u64(x414, 0xffffffffffffffffL, &x430);
- { uint64_t x433; uint64_t x432 = _mulx_u64(x414, 0x7fffffffffffffffL, &x433);
- { uint64_t x435; uint8_t x436 = _addcarryx_u64(0x0, x418, x420, &x435);
- { uint64_t x438; uint8_t x439 = _addcarryx_u64(x436, x421, x423, &x438);
- { uint64_t x441; uint8_t x442 = _addcarryx_u64(x439, x424, x426, &x441);
- { uint64_t x444; uint8_t x445 = _addcarryx_u64(x442, x427, x429, &x444);
- { uint64_t x447; uint8_t x448 = _addcarryx_u64(x445, x430, x432, &x447);
- { uint64_t x450; uint8_t _ = _addcarryx_u64(0x0, x448, x433, &x450);
- { uint64_t _; uint8_t x454 = _addcarryx_u64(0x0, x393, x417, &_);
- { uint64_t x456; uint8_t x457 = _addcarryx_u64(x454, x396, x435, &x456);
- { uint64_t x459; uint8_t x460 = _addcarryx_u64(x457, x399, x438, &x459);
- { uint64_t x462; uint8_t x463 = _addcarryx_u64(x460, x402, x441, &x462);
- { uint64_t x465; uint8_t x466 = _addcarryx_u64(x463, x405, x444, &x465);
- { uint64_t x468; uint8_t x469 = _addcarryx_u64(x466, x408, x447, &x468);
- { uint64_t x471; uint8_t x472 = _addcarryx_u64(x469, x411, x450, &x471);
- { uint8_t x473 = (x472 + x412);
- { uint64_t x476; uint64_t x475 = _mulx_u64(x13, x15, &x476);
- { uint64_t x479; uint64_t x478 = _mulx_u64(x13, x17, &x479);
- { uint64_t x482; uint64_t x481 = _mulx_u64(x13, x19, &x482);
- { uint64_t x485; uint64_t x484 = _mulx_u64(x13, x21, &x485);
- { uint64_t x488; uint64_t x487 = _mulx_u64(x13, x23, &x488);
- { uint64_t x491; uint64_t x490 = _mulx_u64(x13, x22, &x491);
- { uint64_t x493; uint8_t x494 = _addcarryx_u64(0x0, x476, x478, &x493);
- { uint64_t x496; uint8_t x497 = _addcarryx_u64(x494, x479, x481, &x496);
- { uint64_t x499; uint8_t x500 = _addcarryx_u64(x497, x482, x484, &x499);
- { uint64_t x502; uint8_t x503 = _addcarryx_u64(x500, x485, x487, &x502);
- { uint64_t x505; uint8_t x506 = _addcarryx_u64(x503, x488, x490, &x505);
- { uint64_t x508; uint8_t _ = _addcarryx_u64(0x0, x506, x491, &x508);
- { uint64_t x511; uint8_t x512 = _addcarryx_u64(0x0, x456, x475, &x511);
- { uint64_t x514; uint8_t x515 = _addcarryx_u64(x512, x459, x493, &x514);
- { uint64_t x517; uint8_t x518 = _addcarryx_u64(x515, x462, x496, &x517);
- { uint64_t x520; uint8_t x521 = _addcarryx_u64(x518, x465, x499, &x520);
- { uint64_t x523; uint8_t x524 = _addcarryx_u64(x521, x468, x502, &x523);
- { uint64_t x526; uint8_t x527 = _addcarryx_u64(x524, x471, x505, &x526);
- { uint64_t x529; uint8_t x530 = _addcarryx_u64(x527, x473, x508, &x529);
- { uint64_t _; uint64_t x532 = _mulx_u64(x511, 0x8a4472fea18a4473L, &_);
- { uint64_t x536; uint64_t x535 = _mulx_u64(x532, 0xffffffffffffff45L, &x536);
- { uint64_t x539; uint64_t x538 = _mulx_u64(x532, 0xffffffffffffffffL, &x539);
- { uint64_t x542; uint64_t x541 = _mulx_u64(x532, 0xffffffffffffffffL, &x542);
- { uint64_t x545; uint64_t x544 = _mulx_u64(x532, 0xffffffffffffffffL, &x545);
- { uint64_t x548; uint64_t x547 = _mulx_u64(x532, 0xffffffffffffffffL, &x548);
- { uint64_t x551; uint64_t x550 = _mulx_u64(x532, 0x7fffffffffffffffL, &x551);
- { uint64_t x553; uint8_t x554 = _addcarryx_u64(0x0, x536, x538, &x553);
- { uint64_t x556; uint8_t x557 = _addcarryx_u64(x554, x539, x541, &x556);
- { uint64_t x559; uint8_t x560 = _addcarryx_u64(x557, x542, x544, &x559);
- { uint64_t x562; uint8_t x563 = _addcarryx_u64(x560, x545, x547, &x562);
- { uint64_t x565; uint8_t x566 = _addcarryx_u64(x563, x548, x550, &x565);
- { uint64_t x568; uint8_t _ = _addcarryx_u64(0x0, x566, x551, &x568);
- { uint64_t _; uint8_t x572 = _addcarryx_u64(0x0, x511, x535, &_);
- { uint64_t x574; uint8_t x575 = _addcarryx_u64(x572, x514, x553, &x574);
- { uint64_t x577; uint8_t x578 = _addcarryx_u64(x575, x517, x556, &x577);
- { uint64_t x580; uint8_t x581 = _addcarryx_u64(x578, x520, x559, &x580);
- { uint64_t x583; uint8_t x584 = _addcarryx_u64(x581, x523, x562, &x583);
- { uint64_t x586; uint8_t x587 = _addcarryx_u64(x584, x526, x565, &x586);
- { uint64_t x589; uint8_t x590 = _addcarryx_u64(x587, x529, x568, &x589);
- { uint8_t x591 = (x590 + x530);
- { uint64_t x594; uint64_t x593 = _mulx_u64(x12, x15, &x594);
- { uint64_t x597; uint64_t x596 = _mulx_u64(x12, x17, &x597);
- { uint64_t x600; uint64_t x599 = _mulx_u64(x12, x19, &x600);
- { uint64_t x603; uint64_t x602 = _mulx_u64(x12, x21, &x603);
- { uint64_t x606; uint64_t x605 = _mulx_u64(x12, x23, &x606);
- { uint64_t x609; uint64_t x608 = _mulx_u64(x12, x22, &x609);
- { uint64_t x611; uint8_t x612 = _addcarryx_u64(0x0, x594, x596, &x611);
- { uint64_t x614; uint8_t x615 = _addcarryx_u64(x612, x597, x599, &x614);
- { uint64_t x617; uint8_t x618 = _addcarryx_u64(x615, x600, x602, &x617);
- { uint64_t x620; uint8_t x621 = _addcarryx_u64(x618, x603, x605, &x620);
- { uint64_t x623; uint8_t x624 = _addcarryx_u64(x621, x606, x608, &x623);
- { uint64_t x626; uint8_t _ = _addcarryx_u64(0x0, x624, x609, &x626);
- { uint64_t x629; uint8_t x630 = _addcarryx_u64(0x0, x574, x593, &x629);
- { uint64_t x632; uint8_t x633 = _addcarryx_u64(x630, x577, x611, &x632);
- { uint64_t x635; uint8_t x636 = _addcarryx_u64(x633, x580, x614, &x635);
- { uint64_t x638; uint8_t x639 = _addcarryx_u64(x636, x583, x617, &x638);
- { uint64_t x641; uint8_t x642 = _addcarryx_u64(x639, x586, x620, &x641);
- { uint64_t x644; uint8_t x645 = _addcarryx_u64(x642, x589, x623, &x644);
- { uint64_t x647; uint8_t x648 = _addcarryx_u64(x645, x591, x626, &x647);
- { uint64_t _; uint64_t x650 = _mulx_u64(x629, 0x8a4472fea18a4473L, &_);
- { uint64_t x654; uint64_t x653 = _mulx_u64(x650, 0xffffffffffffff45L, &x654);
- { uint64_t x657; uint64_t x656 = _mulx_u64(x650, 0xffffffffffffffffL, &x657);
- { uint64_t x660; uint64_t x659 = _mulx_u64(x650, 0xffffffffffffffffL, &x660);
- { uint64_t x663; uint64_t x662 = _mulx_u64(x650, 0xffffffffffffffffL, &x663);
- { uint64_t x666; uint64_t x665 = _mulx_u64(x650, 0xffffffffffffffffL, &x666);
- { uint64_t x669; uint64_t x668 = _mulx_u64(x650, 0x7fffffffffffffffL, &x669);
- { uint64_t x671; uint8_t x672 = _addcarryx_u64(0x0, x654, x656, &x671);
- { uint64_t x674; uint8_t x675 = _addcarryx_u64(x672, x657, x659, &x674);
- { uint64_t x677; uint8_t x678 = _addcarryx_u64(x675, x660, x662, &x677);
- { uint64_t x680; uint8_t x681 = _addcarryx_u64(x678, x663, x665, &x680);
- { uint64_t x683; uint8_t x684 = _addcarryx_u64(x681, x666, x668, &x683);
- { uint64_t x686; uint8_t _ = _addcarryx_u64(0x0, x684, x669, &x686);
- { uint64_t _; uint8_t x690 = _addcarryx_u64(0x0, x629, x653, &_);
- { uint64_t x692; uint8_t x693 = _addcarryx_u64(x690, x632, x671, &x692);
- { uint64_t x695; uint8_t x696 = _addcarryx_u64(x693, x635, x674, &x695);
- { uint64_t x698; uint8_t x699 = _addcarryx_u64(x696, x638, x677, &x698);
- { uint64_t x701; uint8_t x702 = _addcarryx_u64(x699, x641, x680, &x701);
- { uint64_t x704; uint8_t x705 = _addcarryx_u64(x702, x644, x683, &x704);
- { uint64_t x707; uint8_t x708 = _addcarryx_u64(x705, x647, x686, &x707);
- { uint8_t x709 = (x708 + x648);
- { uint64_t x711; uint8_t x712 = _subborrow_u64(0x0, x692, 0xffffffffffffff45L, &x711);
- { uint64_t x714; uint8_t x715 = _subborrow_u64(x712, x695, 0xffffffffffffffffL, &x714);
- { uint64_t x717; uint8_t x718 = _subborrow_u64(x715, x698, 0xffffffffffffffffL, &x717);
- { uint64_t x720; uint8_t x721 = _subborrow_u64(x718, x701, 0xffffffffffffffffL, &x720);
- { uint64_t x723; uint8_t x724 = _subborrow_u64(x721, x704, 0xffffffffffffffffL, &x723);
- { uint64_t x726; uint8_t x727 = _subborrow_u64(x724, x707, 0x7fffffffffffffffL, &x726);
- { uint64_t _; uint8_t x730 = _subborrow_u64(x727, x709, 0x0, &_);
- { uint64_t x731 = cmovznz64(x730, x726, x707);
- { uint64_t x732 = cmovznz64(x730, x723, x704);
- { uint64_t x733 = cmovznz64(x730, x720, x701);
- { uint64_t x734 = cmovznz64(x730, x717, x698);
- { uint64_t x735 = cmovznz64(x730, x714, x695);
- { uint64_t x736 = cmovznz64(x730, x711, x692);
- out[0] = x736;
- out[1] = x735;
- out[2] = x734;
- out[3] = x733;
- out[4] = x732;
- out[5] = x731;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e383m187_6limbs/femul.v b/src/Specific/montgomery64_2e383m187_6limbs/femul.v
deleted file mode 100644
index d3afb8360..000000000
--- a/src/Specific/montgomery64_2e383m187_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e383m187_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e383m187_6limbs/femulDisplay.log b/src/Specific/montgomery64_2e383m187_6limbs/femulDisplay.log
deleted file mode 100644
index 9e36aea47..000000000
--- a/src/Specific/montgomery64_2e383m187_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,252 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint64_t x26 = mulx_u64(x5, x15);
- uint64_t x28, uint64_t x29 = mulx_u64(x5, x17);
- uint64_t x31, uint64_t x32 = mulx_u64(x5, x19);
- uint64_t x34, uint64_t x35 = mulx_u64(x5, x21);
- uint64_t x37, uint64_t x38 = mulx_u64(x5, x23);
- uint64_t x40, uint64_t x41 = mulx_u64(x5, x22);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x26, x28);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x29, x31);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x47, x32, x34);
- uint64_t x52, uint8_t x53 = addcarryx_u64(x50, x35, x37);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x38, x40);
- uint64_t x58, uint8_t _ = addcarryx_u64(0x0, x56, x41);
- uint64_t x61, uint64_t _ = mulx_u64(x25, 0x8a4472fea18a4473L);
- uint64_t x64, uint64_t x65 = mulx_u64(x61, 0xffffffffffffff45L);
- uint64_t x67, uint64_t x68 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x70, uint64_t x71 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x73, uint64_t x74 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x76, uint64_t x77 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x79, uint64_t x80 = mulx_u64(x61, 0x7fffffffffffffffL);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x65, x67);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x68, x70);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x71, x73);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x74, x76);
- uint64_t x94, uint8_t x95 = addcarryx_u64(x92, x77, x79);
- uint64_t x97, uint8_t _ = addcarryx_u64(0x0, x95, x80);
- uint64_t _, uint8_t x101 = addcarryx_u64(0x0, x25, x64);
- uint64_t x103, uint8_t x104 = addcarryx_u64(x101, x43, x82);
- uint64_t x106, uint8_t x107 = addcarryx_u64(x104, x46, x85);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x49, x88);
- uint64_t x112, uint8_t x113 = addcarryx_u64(x110, x52, x91);
- uint64_t x115, uint8_t x116 = addcarryx_u64(x113, x55, x94);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x58, x97);
- uint64_t x121, uint64_t x122 = mulx_u64(x7, x15);
- uint64_t x124, uint64_t x125 = mulx_u64(x7, x17);
- uint64_t x127, uint64_t x128 = mulx_u64(x7, x19);
- uint64_t x130, uint64_t x131 = mulx_u64(x7, x21);
- uint64_t x133, uint64_t x134 = mulx_u64(x7, x23);
- uint64_t x136, uint64_t x137 = mulx_u64(x7, x22);
- uint64_t x139, uint8_t x140 = addcarryx_u64(0x0, x122, x124);
- uint64_t x142, uint8_t x143 = addcarryx_u64(x140, x125, x127);
- uint64_t x145, uint8_t x146 = addcarryx_u64(x143, x128, x130);
- uint64_t x148, uint8_t x149 = addcarryx_u64(x146, x131, x133);
- uint64_t x151, uint8_t x152 = addcarryx_u64(x149, x134, x136);
- uint64_t x154, uint8_t _ = addcarryx_u64(0x0, x152, x137);
- uint64_t x157, uint8_t x158 = addcarryx_u64(0x0, x103, x121);
- uint64_t x160, uint8_t x161 = addcarryx_u64(x158, x106, x139);
- uint64_t x163, uint8_t x164 = addcarryx_u64(x161, x109, x142);
- uint64_t x166, uint8_t x167 = addcarryx_u64(x164, x112, x145);
- uint64_t x169, uint8_t x170 = addcarryx_u64(x167, x115, x148);
- uint64_t x172, uint8_t x173 = addcarryx_u64(x170, x118, x151);
- uint64_t x175, uint8_t x176 = addcarryx_u64(x173, x119, x154);
- uint64_t x178, uint64_t _ = mulx_u64(x157, 0x8a4472fea18a4473L);
- uint64_t x181, uint64_t x182 = mulx_u64(x178, 0xffffffffffffff45L);
- uint64_t x184, uint64_t x185 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x187, uint64_t x188 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x190, uint64_t x191 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x193, uint64_t x194 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x196, uint64_t x197 = mulx_u64(x178, 0x7fffffffffffffffL);
- uint64_t x199, uint8_t x200 = addcarryx_u64(0x0, x182, x184);
- uint64_t x202, uint8_t x203 = addcarryx_u64(x200, x185, x187);
- uint64_t x205, uint8_t x206 = addcarryx_u64(x203, x188, x190);
- uint64_t x208, uint8_t x209 = addcarryx_u64(x206, x191, x193);
- uint64_t x211, uint8_t x212 = addcarryx_u64(x209, x194, x196);
- uint64_t x214, uint8_t _ = addcarryx_u64(0x0, x212, x197);
- uint64_t _, uint8_t x218 = addcarryx_u64(0x0, x157, x181);
- uint64_t x220, uint8_t x221 = addcarryx_u64(x218, x160, x199);
- uint64_t x223, uint8_t x224 = addcarryx_u64(x221, x163, x202);
- uint64_t x226, uint8_t x227 = addcarryx_u64(x224, x166, x205);
- uint64_t x229, uint8_t x230 = addcarryx_u64(x227, x169, x208);
- uint64_t x232, uint8_t x233 = addcarryx_u64(x230, x172, x211);
- uint64_t x235, uint8_t x236 = addcarryx_u64(x233, x175, x214);
- uint8_t x237 = (x236 + x176);
- uint64_t x239, uint64_t x240 = mulx_u64(x9, x15);
- uint64_t x242, uint64_t x243 = mulx_u64(x9, x17);
- uint64_t x245, uint64_t x246 = mulx_u64(x9, x19);
- uint64_t x248, uint64_t x249 = mulx_u64(x9, x21);
- uint64_t x251, uint64_t x252 = mulx_u64(x9, x23);
- uint64_t x254, uint64_t x255 = mulx_u64(x9, x22);
- uint64_t x257, uint8_t x258 = addcarryx_u64(0x0, x240, x242);
- uint64_t x260, uint8_t x261 = addcarryx_u64(x258, x243, x245);
- uint64_t x263, uint8_t x264 = addcarryx_u64(x261, x246, x248);
- uint64_t x266, uint8_t x267 = addcarryx_u64(x264, x249, x251);
- uint64_t x269, uint8_t x270 = addcarryx_u64(x267, x252, x254);
- uint64_t x272, uint8_t _ = addcarryx_u64(0x0, x270, x255);
- uint64_t x275, uint8_t x276 = addcarryx_u64(0x0, x220, x239);
- uint64_t x278, uint8_t x279 = addcarryx_u64(x276, x223, x257);
- uint64_t x281, uint8_t x282 = addcarryx_u64(x279, x226, x260);
- uint64_t x284, uint8_t x285 = addcarryx_u64(x282, x229, x263);
- uint64_t x287, uint8_t x288 = addcarryx_u64(x285, x232, x266);
- uint64_t x290, uint8_t x291 = addcarryx_u64(x288, x235, x269);
- uint64_t x293, uint8_t x294 = addcarryx_u64(x291, x237, x272);
- uint64_t x296, uint64_t _ = mulx_u64(x275, 0x8a4472fea18a4473L);
- uint64_t x299, uint64_t x300 = mulx_u64(x296, 0xffffffffffffff45L);
- uint64_t x302, uint64_t x303 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x305, uint64_t x306 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x308, uint64_t x309 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x311, uint64_t x312 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x314, uint64_t x315 = mulx_u64(x296, 0x7fffffffffffffffL);
- uint64_t x317, uint8_t x318 = addcarryx_u64(0x0, x300, x302);
- uint64_t x320, uint8_t x321 = addcarryx_u64(x318, x303, x305);
- uint64_t x323, uint8_t x324 = addcarryx_u64(x321, x306, x308);
- uint64_t x326, uint8_t x327 = addcarryx_u64(x324, x309, x311);
- uint64_t x329, uint8_t x330 = addcarryx_u64(x327, x312, x314);
- uint64_t x332, uint8_t _ = addcarryx_u64(0x0, x330, x315);
- uint64_t _, uint8_t x336 = addcarryx_u64(0x0, x275, x299);
- uint64_t x338, uint8_t x339 = addcarryx_u64(x336, x278, x317);
- uint64_t x341, uint8_t x342 = addcarryx_u64(x339, x281, x320);
- uint64_t x344, uint8_t x345 = addcarryx_u64(x342, x284, x323);
- uint64_t x347, uint8_t x348 = addcarryx_u64(x345, x287, x326);
- uint64_t x350, uint8_t x351 = addcarryx_u64(x348, x290, x329);
- uint64_t x353, uint8_t x354 = addcarryx_u64(x351, x293, x332);
- uint8_t x355 = (x354 + x294);
- uint64_t x357, uint64_t x358 = mulx_u64(x11, x15);
- uint64_t x360, uint64_t x361 = mulx_u64(x11, x17);
- uint64_t x363, uint64_t x364 = mulx_u64(x11, x19);
- uint64_t x366, uint64_t x367 = mulx_u64(x11, x21);
- uint64_t x369, uint64_t x370 = mulx_u64(x11, x23);
- uint64_t x372, uint64_t x373 = mulx_u64(x11, x22);
- uint64_t x375, uint8_t x376 = addcarryx_u64(0x0, x358, x360);
- uint64_t x378, uint8_t x379 = addcarryx_u64(x376, x361, x363);
- uint64_t x381, uint8_t x382 = addcarryx_u64(x379, x364, x366);
- uint64_t x384, uint8_t x385 = addcarryx_u64(x382, x367, x369);
- uint64_t x387, uint8_t x388 = addcarryx_u64(x385, x370, x372);
- uint64_t x390, uint8_t _ = addcarryx_u64(0x0, x388, x373);
- uint64_t x393, uint8_t x394 = addcarryx_u64(0x0, x338, x357);
- uint64_t x396, uint8_t x397 = addcarryx_u64(x394, x341, x375);
- uint64_t x399, uint8_t x400 = addcarryx_u64(x397, x344, x378);
- uint64_t x402, uint8_t x403 = addcarryx_u64(x400, x347, x381);
- uint64_t x405, uint8_t x406 = addcarryx_u64(x403, x350, x384);
- uint64_t x408, uint8_t x409 = addcarryx_u64(x406, x353, x387);
- uint64_t x411, uint8_t x412 = addcarryx_u64(x409, x355, x390);
- uint64_t x414, uint64_t _ = mulx_u64(x393, 0x8a4472fea18a4473L);
- uint64_t x417, uint64_t x418 = mulx_u64(x414, 0xffffffffffffff45L);
- uint64_t x420, uint64_t x421 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x423, uint64_t x424 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x426, uint64_t x427 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x429, uint64_t x430 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x432, uint64_t x433 = mulx_u64(x414, 0x7fffffffffffffffL);
- uint64_t x435, uint8_t x436 = addcarryx_u64(0x0, x418, x420);
- uint64_t x438, uint8_t x439 = addcarryx_u64(x436, x421, x423);
- uint64_t x441, uint8_t x442 = addcarryx_u64(x439, x424, x426);
- uint64_t x444, uint8_t x445 = addcarryx_u64(x442, x427, x429);
- uint64_t x447, uint8_t x448 = addcarryx_u64(x445, x430, x432);
- uint64_t x450, uint8_t _ = addcarryx_u64(0x0, x448, x433);
- uint64_t _, uint8_t x454 = addcarryx_u64(0x0, x393, x417);
- uint64_t x456, uint8_t x457 = addcarryx_u64(x454, x396, x435);
- uint64_t x459, uint8_t x460 = addcarryx_u64(x457, x399, x438);
- uint64_t x462, uint8_t x463 = addcarryx_u64(x460, x402, x441);
- uint64_t x465, uint8_t x466 = addcarryx_u64(x463, x405, x444);
- uint64_t x468, uint8_t x469 = addcarryx_u64(x466, x408, x447);
- uint64_t x471, uint8_t x472 = addcarryx_u64(x469, x411, x450);
- uint8_t x473 = (x472 + x412);
- uint64_t x475, uint64_t x476 = mulx_u64(x13, x15);
- uint64_t x478, uint64_t x479 = mulx_u64(x13, x17);
- uint64_t x481, uint64_t x482 = mulx_u64(x13, x19);
- uint64_t x484, uint64_t x485 = mulx_u64(x13, x21);
- uint64_t x487, uint64_t x488 = mulx_u64(x13, x23);
- uint64_t x490, uint64_t x491 = mulx_u64(x13, x22);
- uint64_t x493, uint8_t x494 = addcarryx_u64(0x0, x476, x478);
- uint64_t x496, uint8_t x497 = addcarryx_u64(x494, x479, x481);
- uint64_t x499, uint8_t x500 = addcarryx_u64(x497, x482, x484);
- uint64_t x502, uint8_t x503 = addcarryx_u64(x500, x485, x487);
- uint64_t x505, uint8_t x506 = addcarryx_u64(x503, x488, x490);
- uint64_t x508, uint8_t _ = addcarryx_u64(0x0, x506, x491);
- uint64_t x511, uint8_t x512 = addcarryx_u64(0x0, x456, x475);
- uint64_t x514, uint8_t x515 = addcarryx_u64(x512, x459, x493);
- uint64_t x517, uint8_t x518 = addcarryx_u64(x515, x462, x496);
- uint64_t x520, uint8_t x521 = addcarryx_u64(x518, x465, x499);
- uint64_t x523, uint8_t x524 = addcarryx_u64(x521, x468, x502);
- uint64_t x526, uint8_t x527 = addcarryx_u64(x524, x471, x505);
- uint64_t x529, uint8_t x530 = addcarryx_u64(x527, x473, x508);
- uint64_t x532, uint64_t _ = mulx_u64(x511, 0x8a4472fea18a4473L);
- uint64_t x535, uint64_t x536 = mulx_u64(x532, 0xffffffffffffff45L);
- uint64_t x538, uint64_t x539 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x541, uint64_t x542 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x544, uint64_t x545 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x547, uint64_t x548 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x550, uint64_t x551 = mulx_u64(x532, 0x7fffffffffffffffL);
- uint64_t x553, uint8_t x554 = addcarryx_u64(0x0, x536, x538);
- uint64_t x556, uint8_t x557 = addcarryx_u64(x554, x539, x541);
- uint64_t x559, uint8_t x560 = addcarryx_u64(x557, x542, x544);
- uint64_t x562, uint8_t x563 = addcarryx_u64(x560, x545, x547);
- uint64_t x565, uint8_t x566 = addcarryx_u64(x563, x548, x550);
- uint64_t x568, uint8_t _ = addcarryx_u64(0x0, x566, x551);
- uint64_t _, uint8_t x572 = addcarryx_u64(0x0, x511, x535);
- uint64_t x574, uint8_t x575 = addcarryx_u64(x572, x514, x553);
- uint64_t x577, uint8_t x578 = addcarryx_u64(x575, x517, x556);
- uint64_t x580, uint8_t x581 = addcarryx_u64(x578, x520, x559);
- uint64_t x583, uint8_t x584 = addcarryx_u64(x581, x523, x562);
- uint64_t x586, uint8_t x587 = addcarryx_u64(x584, x526, x565);
- uint64_t x589, uint8_t x590 = addcarryx_u64(x587, x529, x568);
- uint8_t x591 = (x590 + x530);
- uint64_t x593, uint64_t x594 = mulx_u64(x12, x15);
- uint64_t x596, uint64_t x597 = mulx_u64(x12, x17);
- uint64_t x599, uint64_t x600 = mulx_u64(x12, x19);
- uint64_t x602, uint64_t x603 = mulx_u64(x12, x21);
- uint64_t x605, uint64_t x606 = mulx_u64(x12, x23);
- uint64_t x608, uint64_t x609 = mulx_u64(x12, x22);
- uint64_t x611, uint8_t x612 = addcarryx_u64(0x0, x594, x596);
- uint64_t x614, uint8_t x615 = addcarryx_u64(x612, x597, x599);
- uint64_t x617, uint8_t x618 = addcarryx_u64(x615, x600, x602);
- uint64_t x620, uint8_t x621 = addcarryx_u64(x618, x603, x605);
- uint64_t x623, uint8_t x624 = addcarryx_u64(x621, x606, x608);
- uint64_t x626, uint8_t _ = addcarryx_u64(0x0, x624, x609);
- uint64_t x629, uint8_t x630 = addcarryx_u64(0x0, x574, x593);
- uint64_t x632, uint8_t x633 = addcarryx_u64(x630, x577, x611);
- uint64_t x635, uint8_t x636 = addcarryx_u64(x633, x580, x614);
- uint64_t x638, uint8_t x639 = addcarryx_u64(x636, x583, x617);
- uint64_t x641, uint8_t x642 = addcarryx_u64(x639, x586, x620);
- uint64_t x644, uint8_t x645 = addcarryx_u64(x642, x589, x623);
- uint64_t x647, uint8_t x648 = addcarryx_u64(x645, x591, x626);
- uint64_t x650, uint64_t _ = mulx_u64(x629, 0x8a4472fea18a4473L);
- uint64_t x653, uint64_t x654 = mulx_u64(x650, 0xffffffffffffff45L);
- uint64_t x656, uint64_t x657 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x659, uint64_t x660 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x662, uint64_t x663 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x665, uint64_t x666 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x668, uint64_t x669 = mulx_u64(x650, 0x7fffffffffffffffL);
- uint64_t x671, uint8_t x672 = addcarryx_u64(0x0, x654, x656);
- uint64_t x674, uint8_t x675 = addcarryx_u64(x672, x657, x659);
- uint64_t x677, uint8_t x678 = addcarryx_u64(x675, x660, x662);
- uint64_t x680, uint8_t x681 = addcarryx_u64(x678, x663, x665);
- uint64_t x683, uint8_t x684 = addcarryx_u64(x681, x666, x668);
- uint64_t x686, uint8_t _ = addcarryx_u64(0x0, x684, x669);
- uint64_t _, uint8_t x690 = addcarryx_u64(0x0, x629, x653);
- uint64_t x692, uint8_t x693 = addcarryx_u64(x690, x632, x671);
- uint64_t x695, uint8_t x696 = addcarryx_u64(x693, x635, x674);
- uint64_t x698, uint8_t x699 = addcarryx_u64(x696, x638, x677);
- uint64_t x701, uint8_t x702 = addcarryx_u64(x699, x641, x680);
- uint64_t x704, uint8_t x705 = addcarryx_u64(x702, x644, x683);
- uint64_t x707, uint8_t x708 = addcarryx_u64(x705, x647, x686);
- uint8_t x709 = (x708 + x648);
- uint64_t x711, uint8_t x712 = subborrow_u64(0x0, x692, 0xffffffffffffff45L);
- uint64_t x714, uint8_t x715 = subborrow_u64(x712, x695, 0xffffffffffffffffL);
- uint64_t x717, uint8_t x718 = subborrow_u64(x715, x698, 0xffffffffffffffffL);
- uint64_t x720, uint8_t x721 = subborrow_u64(x718, x701, 0xffffffffffffffffL);
- uint64_t x723, uint8_t x724 = subborrow_u64(x721, x704, 0xffffffffffffffffL);
- uint64_t x726, uint8_t x727 = subborrow_u64(x724, x707, 0x7fffffffffffffffL);
- uint64_t _, uint8_t x730 = subborrow_u64(x727, x709, 0x0);
- uint64_t x731 = cmovznz64(x730, x726, x707);
- uint64_t x732 = cmovznz64(x730, x723, x704);
- uint64_t x733 = cmovznz64(x730, x720, x701);
- uint64_t x734 = cmovznz64(x730, x717, x698);
- uint64_t x735 = cmovznz64(x730, x714, x695);
- uint64_t x736 = cmovznz64(x730, x711, x692);
- return (x731, x732, x733, x734, x735, x736))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e383m187_6limbs/femulDisplay.v b/src/Specific/montgomery64_2e383m187_6limbs/femulDisplay.v
deleted file mode 100644
index 295809b26..000000000
--- a/src/Specific/montgomery64_2e383m187_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e383m187_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e383m187_6limbs/fenz.c b/src/Specific/montgomery64_2e383m187_6limbs/fenz.c
deleted file mode 100644
index c93f74257..000000000
--- a/src/Specific/montgomery64_2e383m187_6limbs/fenz.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x11 = (x10 | x9);
- { uint64_t x12 = (x8 | x11);
- { uint64_t x13 = (x6 | x12);
- { uint64_t x14 = (x4 | x13);
- { uint64_t x15 = (x2 | x14);
- out[0] = x15;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e383m187_6limbs/fenz.v b/src/Specific/montgomery64_2e383m187_6limbs/fenz.v
deleted file mode 100644
index 1646d4d4a..000000000
--- a/src/Specific/montgomery64_2e383m187_6limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e383m187_6limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e383m187_6limbs/fenzDisplay.log b/src/Specific/montgomery64_2e383m187_6limbs/fenzDisplay.log
deleted file mode 100644
index f39f1d91b..000000000
--- a/src/Specific/montgomery64_2e383m187_6limbs/fenzDisplay.log
+++ /dev/null
@@ -1,12 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x11 = (x10 | x9);
- uint64_t x12 = (x8 | x11);
- uint64_t x13 = (x6 | x12);
- uint64_t x14 = (x4 | x13);
- uint64_t x15 = (x2 | x14);
- return x15)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e383m187_6limbs/fenzDisplay.v b/src/Specific/montgomery64_2e383m187_6limbs/fenzDisplay.v
deleted file mode 100644
index 3a4db400d..000000000
--- a/src/Specific/montgomery64_2e383m187_6limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e383m187_6limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e383m187_6limbs/feopp.c b/src/Specific/montgomery64_2e383m187_6limbs/feopp.c
deleted file mode 100644
index ee38728fa..000000000
--- a/src/Specific/montgomery64_2e383m187_6limbs/feopp.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feopp(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12; uint8_t x13 = _subborrow_u64(0x0, 0x0, x2, &x12);
- { uint64_t x15; uint8_t x16 = _subborrow_u64(x13, 0x0, x4, &x15);
- { uint64_t x18; uint8_t x19 = _subborrow_u64(x16, 0x0, x6, &x18);
- { uint64_t x21; uint8_t x22 = _subborrow_u64(x19, 0x0, x8, &x21);
- { uint64_t x24; uint8_t x25 = _subborrow_u64(x22, 0x0, x10, &x24);
- { uint64_t x27; uint8_t x28 = _subborrow_u64(x25, 0x0, x9, &x27);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0xffffffffffffff45L);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(0x0, x12, x30, &x32);
- { uint64_t x34 = (x29 & 0xffffffffffffffffL);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x33, x15, x34, &x36);
- { uint64_t x38 = (x29 & 0xffffffffffffffffL);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x37, x18, x38, &x40);
- { uint64_t x42 = (x29 & 0xffffffffffffffffL);
- { uint64_t x44; uint8_t x45 = _addcarryx_u64(x41, x21, x42, &x44);
- { uint64_t x46 = (x29 & 0xffffffffffffffffL);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x45, x24, x46, &x48);
- { uint64_t x50 = (x29 & 0x7fffffffffffffffL);
- { uint64_t x52; uint8_t _ = _addcarryx_u64(x49, x27, x50, &x52);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e383m187_6limbs/feopp.v b/src/Specific/montgomery64_2e383m187_6limbs/feopp.v
deleted file mode 100644
index 8f9732300..000000000
--- a/src/Specific/montgomery64_2e383m187_6limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e383m187_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e383m187_6limbs/feoppDisplay.log b/src/Specific/montgomery64_2e383m187_6limbs/feoppDisplay.log
deleted file mode 100644
index 89b5bb87b..000000000
--- a/src/Specific/montgomery64_2e383m187_6limbs/feoppDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x15, uint8_t x16 = subborrow_u64(x13, 0x0, x4);
- uint64_t x18, uint8_t x19 = subborrow_u64(x16, 0x0, x6);
- uint64_t x21, uint8_t x22 = subborrow_u64(x19, 0x0, x8);
- uint64_t x24, uint8_t x25 = subborrow_u64(x22, 0x0, x10);
- uint64_t x27, uint8_t x28 = subborrow_u64(x25, 0x0, x9);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0xffffffffffffff45L);
- uint64_t x32, uint8_t x33 = addcarryx_u64(0x0, x12, x30);
- uint64_t x34 = (x29 & 0xffffffffffffffffL);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x33, x15, x34);
- uint64_t x38 = (x29 & 0xffffffffffffffffL);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x37, x18, x38);
- uint64_t x42 = (x29 & 0xffffffffffffffffL);
- uint64_t x44, uint8_t x45 = addcarryx_u64(x41, x21, x42);
- uint64_t x46 = (x29 & 0xffffffffffffffffL);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x45, x24, x46);
- uint64_t x50 = (x29 & 0x7fffffffffffffffL);
- uint64_t x52, uint8_t _ = addcarryx_u64(x49, x27, x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e383m187_6limbs/feoppDisplay.v b/src/Specific/montgomery64_2e383m187_6limbs/feoppDisplay.v
deleted file mode 100644
index a9f0b61e5..000000000
--- a/src/Specific/montgomery64_2e383m187_6limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e383m187_6limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e383m187_6limbs/fesquare.c b/src/Specific/montgomery64_2e383m187_6limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e383m187_6limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e383m187_6limbs/fesub.c b/src/Specific/montgomery64_2e383m187_6limbs/fesub.c
deleted file mode 100644
index c92fe3d39..000000000
--- a/src/Specific/montgomery64_2e383m187_6limbs/fesub.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _subborrow_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _subborrow_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _subborrow_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _subborrow_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _subborrow_u64(x38, x12, x22, &x40);
- { uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- { uint64_t x43 = (x42 & 0xffffffffffffff45L);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(0x0, x25, x43, &x45);
- { uint64_t x47 = (x42 & 0xffffffffffffffffL);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x46, x28, x47, &x49);
- { uint64_t x51 = (x42 & 0xffffffffffffffffL);
- { uint64_t x53; uint8_t x54 = _addcarryx_u64(x50, x31, x51, &x53);
- { uint64_t x55 = (x42 & 0xffffffffffffffffL);
- { uint64_t x57; uint8_t x58 = _addcarryx_u64(x54, x34, x55, &x57);
- { uint64_t x59 = (x42 & 0xffffffffffffffffL);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x58, x37, x59, &x61);
- { uint64_t x63 = (x42 & 0x7fffffffffffffffL);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(x62, x40, x63, &x65);
- out[0] = x45;
- out[1] = x49;
- out[2] = x53;
- out[3] = x57;
- out[4] = x61;
- out[5] = x65;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e383m187_6limbs/fesub.v b/src/Specific/montgomery64_2e383m187_6limbs/fesub.v
deleted file mode 100644
index a70f23825..000000000
--- a/src/Specific/montgomery64_2e383m187_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e383m187_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e383m187_6limbs/fesubDisplay.log b/src/Specific/montgomery64_2e383m187_6limbs/fesubDisplay.log
deleted file mode 100644
index 08c1e5b26..000000000
--- a/src/Specific/montgomery64_2e383m187_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = subborrow_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = subborrow_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = subborrow_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = subborrow_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = subborrow_u64(x38, x12, x22);
- uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- uint64_t x43 = (x42 & 0xffffffffffffff45L);
- uint64_t x45, uint8_t x46 = addcarryx_u64(0x0, x25, x43);
- uint64_t x47 = (x42 & 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x46, x28, x47);
- uint64_t x51 = (x42 & 0xffffffffffffffffL);
- uint64_t x53, uint8_t x54 = addcarryx_u64(x50, x31, x51);
- uint64_t x55 = (x42 & 0xffffffffffffffffL);
- uint64_t x57, uint8_t x58 = addcarryx_u64(x54, x34, x55);
- uint64_t x59 = (x42 & 0xffffffffffffffffL);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x58, x37, x59);
- uint64_t x63 = (x42 & 0x7fffffffffffffffL);
- uint64_t x65, uint8_t _ = addcarryx_u64(x62, x40, x63);
- (Return x65, Return x61, Return x57, Return x53, Return x49, Return x45))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e383m187_6limbs/fesubDisplay.v b/src/Specific/montgomery64_2e383m187_6limbs/fesubDisplay.v
deleted file mode 100644
index 11726cf1a..000000000
--- a/src/Specific/montgomery64_2e383m187_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e383m187_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e383m187_6limbs/py_interpreter.sh b/src/Specific/montgomery64_2e383m187_6limbs/py_interpreter.sh
deleted file mode 100755
index 48c948770..000000000
--- a/src/Specific/montgomery64_2e383m187_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**383 - 187' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e383m31_6limbs/CurveParameters.v b/src/Specific/montgomery64_2e383m31_6limbs/CurveParameters.v
deleted file mode 100644
index da9efc880..000000000
--- a/src/Specific/montgomery64_2e383m31_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^383 - 31
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 64;
- bitwidth := 64;
- s := 2^383;
- c := [(1, 31)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e383m31_6limbs/Synthesis.v b/src/Specific/montgomery64_2e383m31_6limbs/Synthesis.v
deleted file mode 100644
index 89bd970fa..000000000
--- a/src/Specific/montgomery64_2e383m31_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e383m31_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/montgomery64_2e383m31_6limbs/compiler.sh b/src/Specific/montgomery64_2e383m31_6limbs/compiler.sh
deleted file mode 100755
index d8b662d5b..000000000
--- a/src/Specific/montgomery64_2e383m31_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<383) - 31' "$@"
diff --git a/src/Specific/montgomery64_2e383m31_6limbs/compilerxx.sh b/src/Specific/montgomery64_2e383m31_6limbs/compilerxx.sh
deleted file mode 100755
index f2ad4cc1b..000000000
--- a/src/Specific/montgomery64_2e383m31_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<383) - 31' "$@"
diff --git a/src/Specific/montgomery64_2e383m31_6limbs/feadd.c b/src/Specific/montgomery64_2e383m31_6limbs/feadd.c
deleted file mode 100644
index 5b393973b..000000000
--- a/src/Specific/montgomery64_2e383m31_6limbs/feadd.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _addcarryx_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _addcarryx_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x38, x12, x22, &x40);
- { uint64_t x43; uint8_t x44 = _subborrow_u64(0x0, x25, 0xffffffffffffffe1L, &x43);
- { uint64_t x46; uint8_t x47 = _subborrow_u64(x44, x28, 0xffffffffffffffffL, &x46);
- { uint64_t x49; uint8_t x50 = _subborrow_u64(x47, x31, 0xffffffffffffffffL, &x49);
- { uint64_t x52; uint8_t x53 = _subborrow_u64(x50, x34, 0xffffffffffffffffL, &x52);
- { uint64_t x55; uint8_t x56 = _subborrow_u64(x53, x37, 0xffffffffffffffffL, &x55);
- { uint64_t x58; uint8_t x59 = _subborrow_u64(x56, x40, 0x7fffffffffffffffL, &x58);
- { uint64_t _; uint8_t x62 = _subborrow_u64(x59, x41, 0x0, &_);
- { uint64_t x63 = cmovznz64(x62, x58, x40);
- { uint64_t x64 = cmovznz64(x62, x55, x37);
- { uint64_t x65 = cmovznz64(x62, x52, x34);
- { uint64_t x66 = cmovznz64(x62, x49, x31);
- { uint64_t x67 = cmovznz64(x62, x46, x28);
- { uint64_t x68 = cmovznz64(x62, x43, x25);
- out[0] = x68;
- out[1] = x67;
- out[2] = x66;
- out[3] = x65;
- out[4] = x64;
- out[5] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e383m31_6limbs/feadd.v b/src/Specific/montgomery64_2e383m31_6limbs/feadd.v
deleted file mode 100644
index a3160536b..000000000
--- a/src/Specific/montgomery64_2e383m31_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e383m31_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e383m31_6limbs/feaddDisplay.log b/src/Specific/montgomery64_2e383m31_6limbs/feaddDisplay.log
deleted file mode 100644
index de4ad4faf..000000000
--- a/src/Specific/montgomery64_2e383m31_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = addcarryx_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = addcarryx_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = addcarryx_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = addcarryx_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x38, x12, x22);
- uint64_t x43, uint8_t x44 = subborrow_u64(0x0, x25, 0xffffffffffffffe1L);
- uint64_t x46, uint8_t x47 = subborrow_u64(x44, x28, 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = subborrow_u64(x47, x31, 0xffffffffffffffffL);
- uint64_t x52, uint8_t x53 = subborrow_u64(x50, x34, 0xffffffffffffffffL);
- uint64_t x55, uint8_t x56 = subborrow_u64(x53, x37, 0xffffffffffffffffL);
- uint64_t x58, uint8_t x59 = subborrow_u64(x56, x40, 0x7fffffffffffffffL);
- uint64_t _, uint8_t x62 = subborrow_u64(x59, x41, 0x0);
- uint64_t x63 = cmovznz64(x62, x58, x40);
- uint64_t x64 = cmovznz64(x62, x55, x37);
- uint64_t x65 = cmovznz64(x62, x52, x34);
- uint64_t x66 = cmovznz64(x62, x49, x31);
- uint64_t x67 = cmovznz64(x62, x46, x28);
- uint64_t x68 = cmovznz64(x62, x43, x25);
- return (x63, x64, x65, x66, x67, x68))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e383m31_6limbs/feaddDisplay.v b/src/Specific/montgomery64_2e383m31_6limbs/feaddDisplay.v
deleted file mode 100644
index ff69e9f60..000000000
--- a/src/Specific/montgomery64_2e383m31_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e383m31_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e383m31_6limbs/femul.c b/src/Specific/montgomery64_2e383m31_6limbs/femul.c
deleted file mode 100644
index 04a4c08bd..000000000
--- a/src/Specific/montgomery64_2e383m31_6limbs/femul.c
+++ /dev/null
@@ -1,266 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x26; uint64_t x25 = _mulx_u64(x5, x15, &x26);
- { uint64_t x29; uint64_t x28 = _mulx_u64(x5, x17, &x29);
- { uint64_t x32; uint64_t x31 = _mulx_u64(x5, x19, &x32);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x5, x21, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x5, x23, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x5, x22, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x26, x28, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x29, x31, &x46);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x47, x32, x34, &x49);
- { uint64_t x52; uint8_t x53 = _addcarryx_u64(x50, x35, x37, &x52);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x38, x40, &x55);
- { uint64_t x58; uint8_t _ = _addcarryx_u64(0x0, x56, x41, &x58);
- { uint64_t _; uint64_t x61 = _mulx_u64(x25, 0xef7bdef7bdef7bdfL, &_);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x61, 0xffffffffffffffe1L, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x61, 0xffffffffffffffffL, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x61, 0xffffffffffffffffL, &x71);
- { uint64_t x74; uint64_t x73 = _mulx_u64(x61, 0xffffffffffffffffL, &x74);
- { uint64_t x77; uint64_t x76 = _mulx_u64(x61, 0xffffffffffffffffL, &x77);
- { uint64_t x80; uint64_t x79 = _mulx_u64(x61, 0x7fffffffffffffffL, &x80);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x65, x67, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x68, x70, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x71, x73, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x74, x76, &x91);
- { uint64_t x94; uint8_t x95 = _addcarryx_u64(x92, x77, x79, &x94);
- { uint64_t x97; uint8_t _ = _addcarryx_u64(0x0, x95, x80, &x97);
- { uint64_t _; uint8_t x101 = _addcarryx_u64(0x0, x25, x64, &_);
- { uint64_t x103; uint8_t x104 = _addcarryx_u64(x101, x43, x82, &x103);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(x104, x46, x85, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x49, x88, &x109);
- { uint64_t x112; uint8_t x113 = _addcarryx_u64(x110, x52, x91, &x112);
- { uint64_t x115; uint8_t x116 = _addcarryx_u64(x113, x55, x94, &x115);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x58, x97, &x118);
- { uint64_t x122; uint64_t x121 = _mulx_u64(x7, x15, &x122);
- { uint64_t x125; uint64_t x124 = _mulx_u64(x7, x17, &x125);
- { uint64_t x128; uint64_t x127 = _mulx_u64(x7, x19, &x128);
- { uint64_t x131; uint64_t x130 = _mulx_u64(x7, x21, &x131);
- { uint64_t x134; uint64_t x133 = _mulx_u64(x7, x23, &x134);
- { uint64_t x137; uint64_t x136 = _mulx_u64(x7, x22, &x137);
- { uint64_t x139; uint8_t x140 = _addcarryx_u64(0x0, x122, x124, &x139);
- { uint64_t x142; uint8_t x143 = _addcarryx_u64(x140, x125, x127, &x142);
- { uint64_t x145; uint8_t x146 = _addcarryx_u64(x143, x128, x130, &x145);
- { uint64_t x148; uint8_t x149 = _addcarryx_u64(x146, x131, x133, &x148);
- { uint64_t x151; uint8_t x152 = _addcarryx_u64(x149, x134, x136, &x151);
- { uint64_t x154; uint8_t _ = _addcarryx_u64(0x0, x152, x137, &x154);
- { uint64_t x157; uint8_t x158 = _addcarryx_u64(0x0, x103, x121, &x157);
- { uint64_t x160; uint8_t x161 = _addcarryx_u64(x158, x106, x139, &x160);
- { uint64_t x163; uint8_t x164 = _addcarryx_u64(x161, x109, x142, &x163);
- { uint64_t x166; uint8_t x167 = _addcarryx_u64(x164, x112, x145, &x166);
- { uint64_t x169; uint8_t x170 = _addcarryx_u64(x167, x115, x148, &x169);
- { uint64_t x172; uint8_t x173 = _addcarryx_u64(x170, x118, x151, &x172);
- { uint64_t x175; uint8_t x176 = _addcarryx_u64(x173, x119, x154, &x175);
- { uint64_t _; uint64_t x178 = _mulx_u64(x157, 0xef7bdef7bdef7bdfL, &_);
- { uint64_t x182; uint64_t x181 = _mulx_u64(x178, 0xffffffffffffffe1L, &x182);
- { uint64_t x185; uint64_t x184 = _mulx_u64(x178, 0xffffffffffffffffL, &x185);
- { uint64_t x188; uint64_t x187 = _mulx_u64(x178, 0xffffffffffffffffL, &x188);
- { uint64_t x191; uint64_t x190 = _mulx_u64(x178, 0xffffffffffffffffL, &x191);
- { uint64_t x194; uint64_t x193 = _mulx_u64(x178, 0xffffffffffffffffL, &x194);
- { uint64_t x197; uint64_t x196 = _mulx_u64(x178, 0x7fffffffffffffffL, &x197);
- { uint64_t x199; uint8_t x200 = _addcarryx_u64(0x0, x182, x184, &x199);
- { uint64_t x202; uint8_t x203 = _addcarryx_u64(x200, x185, x187, &x202);
- { uint64_t x205; uint8_t x206 = _addcarryx_u64(x203, x188, x190, &x205);
- { uint64_t x208; uint8_t x209 = _addcarryx_u64(x206, x191, x193, &x208);
- { uint64_t x211; uint8_t x212 = _addcarryx_u64(x209, x194, x196, &x211);
- { uint64_t x214; uint8_t _ = _addcarryx_u64(0x0, x212, x197, &x214);
- { uint64_t _; uint8_t x218 = _addcarryx_u64(0x0, x157, x181, &_);
- { uint64_t x220; uint8_t x221 = _addcarryx_u64(x218, x160, x199, &x220);
- { uint64_t x223; uint8_t x224 = _addcarryx_u64(x221, x163, x202, &x223);
- { uint64_t x226; uint8_t x227 = _addcarryx_u64(x224, x166, x205, &x226);
- { uint64_t x229; uint8_t x230 = _addcarryx_u64(x227, x169, x208, &x229);
- { uint64_t x232; uint8_t x233 = _addcarryx_u64(x230, x172, x211, &x232);
- { uint64_t x235; uint8_t x236 = _addcarryx_u64(x233, x175, x214, &x235);
- { uint8_t x237 = (x236 + x176);
- { uint64_t x240; uint64_t x239 = _mulx_u64(x9, x15, &x240);
- { uint64_t x243; uint64_t x242 = _mulx_u64(x9, x17, &x243);
- { uint64_t x246; uint64_t x245 = _mulx_u64(x9, x19, &x246);
- { uint64_t x249; uint64_t x248 = _mulx_u64(x9, x21, &x249);
- { uint64_t x252; uint64_t x251 = _mulx_u64(x9, x23, &x252);
- { uint64_t x255; uint64_t x254 = _mulx_u64(x9, x22, &x255);
- { uint64_t x257; uint8_t x258 = _addcarryx_u64(0x0, x240, x242, &x257);
- { uint64_t x260; uint8_t x261 = _addcarryx_u64(x258, x243, x245, &x260);
- { uint64_t x263; uint8_t x264 = _addcarryx_u64(x261, x246, x248, &x263);
- { uint64_t x266; uint8_t x267 = _addcarryx_u64(x264, x249, x251, &x266);
- { uint64_t x269; uint8_t x270 = _addcarryx_u64(x267, x252, x254, &x269);
- { uint64_t x272; uint8_t _ = _addcarryx_u64(0x0, x270, x255, &x272);
- { uint64_t x275; uint8_t x276 = _addcarryx_u64(0x0, x220, x239, &x275);
- { uint64_t x278; uint8_t x279 = _addcarryx_u64(x276, x223, x257, &x278);
- { uint64_t x281; uint8_t x282 = _addcarryx_u64(x279, x226, x260, &x281);
- { uint64_t x284; uint8_t x285 = _addcarryx_u64(x282, x229, x263, &x284);
- { uint64_t x287; uint8_t x288 = _addcarryx_u64(x285, x232, x266, &x287);
- { uint64_t x290; uint8_t x291 = _addcarryx_u64(x288, x235, x269, &x290);
- { uint64_t x293; uint8_t x294 = _addcarryx_u64(x291, x237, x272, &x293);
- { uint64_t _; uint64_t x296 = _mulx_u64(x275, 0xef7bdef7bdef7bdfL, &_);
- { uint64_t x300; uint64_t x299 = _mulx_u64(x296, 0xffffffffffffffe1L, &x300);
- { uint64_t x303; uint64_t x302 = _mulx_u64(x296, 0xffffffffffffffffL, &x303);
- { uint64_t x306; uint64_t x305 = _mulx_u64(x296, 0xffffffffffffffffL, &x306);
- { uint64_t x309; uint64_t x308 = _mulx_u64(x296, 0xffffffffffffffffL, &x309);
- { uint64_t x312; uint64_t x311 = _mulx_u64(x296, 0xffffffffffffffffL, &x312);
- { uint64_t x315; uint64_t x314 = _mulx_u64(x296, 0x7fffffffffffffffL, &x315);
- { uint64_t x317; uint8_t x318 = _addcarryx_u64(0x0, x300, x302, &x317);
- { uint64_t x320; uint8_t x321 = _addcarryx_u64(x318, x303, x305, &x320);
- { uint64_t x323; uint8_t x324 = _addcarryx_u64(x321, x306, x308, &x323);
- { uint64_t x326; uint8_t x327 = _addcarryx_u64(x324, x309, x311, &x326);
- { uint64_t x329; uint8_t x330 = _addcarryx_u64(x327, x312, x314, &x329);
- { uint64_t x332; uint8_t _ = _addcarryx_u64(0x0, x330, x315, &x332);
- { uint64_t _; uint8_t x336 = _addcarryx_u64(0x0, x275, x299, &_);
- { uint64_t x338; uint8_t x339 = _addcarryx_u64(x336, x278, x317, &x338);
- { uint64_t x341; uint8_t x342 = _addcarryx_u64(x339, x281, x320, &x341);
- { uint64_t x344; uint8_t x345 = _addcarryx_u64(x342, x284, x323, &x344);
- { uint64_t x347; uint8_t x348 = _addcarryx_u64(x345, x287, x326, &x347);
- { uint64_t x350; uint8_t x351 = _addcarryx_u64(x348, x290, x329, &x350);
- { uint64_t x353; uint8_t x354 = _addcarryx_u64(x351, x293, x332, &x353);
- { uint8_t x355 = (x354 + x294);
- { uint64_t x358; uint64_t x357 = _mulx_u64(x11, x15, &x358);
- { uint64_t x361; uint64_t x360 = _mulx_u64(x11, x17, &x361);
- { uint64_t x364; uint64_t x363 = _mulx_u64(x11, x19, &x364);
- { uint64_t x367; uint64_t x366 = _mulx_u64(x11, x21, &x367);
- { uint64_t x370; uint64_t x369 = _mulx_u64(x11, x23, &x370);
- { uint64_t x373; uint64_t x372 = _mulx_u64(x11, x22, &x373);
- { uint64_t x375; uint8_t x376 = _addcarryx_u64(0x0, x358, x360, &x375);
- { uint64_t x378; uint8_t x379 = _addcarryx_u64(x376, x361, x363, &x378);
- { uint64_t x381; uint8_t x382 = _addcarryx_u64(x379, x364, x366, &x381);
- { uint64_t x384; uint8_t x385 = _addcarryx_u64(x382, x367, x369, &x384);
- { uint64_t x387; uint8_t x388 = _addcarryx_u64(x385, x370, x372, &x387);
- { uint64_t x390; uint8_t _ = _addcarryx_u64(0x0, x388, x373, &x390);
- { uint64_t x393; uint8_t x394 = _addcarryx_u64(0x0, x338, x357, &x393);
- { uint64_t x396; uint8_t x397 = _addcarryx_u64(x394, x341, x375, &x396);
- { uint64_t x399; uint8_t x400 = _addcarryx_u64(x397, x344, x378, &x399);
- { uint64_t x402; uint8_t x403 = _addcarryx_u64(x400, x347, x381, &x402);
- { uint64_t x405; uint8_t x406 = _addcarryx_u64(x403, x350, x384, &x405);
- { uint64_t x408; uint8_t x409 = _addcarryx_u64(x406, x353, x387, &x408);
- { uint64_t x411; uint8_t x412 = _addcarryx_u64(x409, x355, x390, &x411);
- { uint64_t _; uint64_t x414 = _mulx_u64(x393, 0xef7bdef7bdef7bdfL, &_);
- { uint64_t x418; uint64_t x417 = _mulx_u64(x414, 0xffffffffffffffe1L, &x418);
- { uint64_t x421; uint64_t x420 = _mulx_u64(x414, 0xffffffffffffffffL, &x421);
- { uint64_t x424; uint64_t x423 = _mulx_u64(x414, 0xffffffffffffffffL, &x424);
- { uint64_t x427; uint64_t x426 = _mulx_u64(x414, 0xffffffffffffffffL, &x427);
- { uint64_t x430; uint64_t x429 = _mulx_u64(x414, 0xffffffffffffffffL, &x430);
- { uint64_t x433; uint64_t x432 = _mulx_u64(x414, 0x7fffffffffffffffL, &x433);
- { uint64_t x435; uint8_t x436 = _addcarryx_u64(0x0, x418, x420, &x435);
- { uint64_t x438; uint8_t x439 = _addcarryx_u64(x436, x421, x423, &x438);
- { uint64_t x441; uint8_t x442 = _addcarryx_u64(x439, x424, x426, &x441);
- { uint64_t x444; uint8_t x445 = _addcarryx_u64(x442, x427, x429, &x444);
- { uint64_t x447; uint8_t x448 = _addcarryx_u64(x445, x430, x432, &x447);
- { uint64_t x450; uint8_t _ = _addcarryx_u64(0x0, x448, x433, &x450);
- { uint64_t _; uint8_t x454 = _addcarryx_u64(0x0, x393, x417, &_);
- { uint64_t x456; uint8_t x457 = _addcarryx_u64(x454, x396, x435, &x456);
- { uint64_t x459; uint8_t x460 = _addcarryx_u64(x457, x399, x438, &x459);
- { uint64_t x462; uint8_t x463 = _addcarryx_u64(x460, x402, x441, &x462);
- { uint64_t x465; uint8_t x466 = _addcarryx_u64(x463, x405, x444, &x465);
- { uint64_t x468; uint8_t x469 = _addcarryx_u64(x466, x408, x447, &x468);
- { uint64_t x471; uint8_t x472 = _addcarryx_u64(x469, x411, x450, &x471);
- { uint8_t x473 = (x472 + x412);
- { uint64_t x476; uint64_t x475 = _mulx_u64(x13, x15, &x476);
- { uint64_t x479; uint64_t x478 = _mulx_u64(x13, x17, &x479);
- { uint64_t x482; uint64_t x481 = _mulx_u64(x13, x19, &x482);
- { uint64_t x485; uint64_t x484 = _mulx_u64(x13, x21, &x485);
- { uint64_t x488; uint64_t x487 = _mulx_u64(x13, x23, &x488);
- { uint64_t x491; uint64_t x490 = _mulx_u64(x13, x22, &x491);
- { uint64_t x493; uint8_t x494 = _addcarryx_u64(0x0, x476, x478, &x493);
- { uint64_t x496; uint8_t x497 = _addcarryx_u64(x494, x479, x481, &x496);
- { uint64_t x499; uint8_t x500 = _addcarryx_u64(x497, x482, x484, &x499);
- { uint64_t x502; uint8_t x503 = _addcarryx_u64(x500, x485, x487, &x502);
- { uint64_t x505; uint8_t x506 = _addcarryx_u64(x503, x488, x490, &x505);
- { uint64_t x508; uint8_t _ = _addcarryx_u64(0x0, x506, x491, &x508);
- { uint64_t x511; uint8_t x512 = _addcarryx_u64(0x0, x456, x475, &x511);
- { uint64_t x514; uint8_t x515 = _addcarryx_u64(x512, x459, x493, &x514);
- { uint64_t x517; uint8_t x518 = _addcarryx_u64(x515, x462, x496, &x517);
- { uint64_t x520; uint8_t x521 = _addcarryx_u64(x518, x465, x499, &x520);
- { uint64_t x523; uint8_t x524 = _addcarryx_u64(x521, x468, x502, &x523);
- { uint64_t x526; uint8_t x527 = _addcarryx_u64(x524, x471, x505, &x526);
- { uint64_t x529; uint8_t x530 = _addcarryx_u64(x527, x473, x508, &x529);
- { uint64_t _; uint64_t x532 = _mulx_u64(x511, 0xef7bdef7bdef7bdfL, &_);
- { uint64_t x536; uint64_t x535 = _mulx_u64(x532, 0xffffffffffffffe1L, &x536);
- { uint64_t x539; uint64_t x538 = _mulx_u64(x532, 0xffffffffffffffffL, &x539);
- { uint64_t x542; uint64_t x541 = _mulx_u64(x532, 0xffffffffffffffffL, &x542);
- { uint64_t x545; uint64_t x544 = _mulx_u64(x532, 0xffffffffffffffffL, &x545);
- { uint64_t x548; uint64_t x547 = _mulx_u64(x532, 0xffffffffffffffffL, &x548);
- { uint64_t x551; uint64_t x550 = _mulx_u64(x532, 0x7fffffffffffffffL, &x551);
- { uint64_t x553; uint8_t x554 = _addcarryx_u64(0x0, x536, x538, &x553);
- { uint64_t x556; uint8_t x557 = _addcarryx_u64(x554, x539, x541, &x556);
- { uint64_t x559; uint8_t x560 = _addcarryx_u64(x557, x542, x544, &x559);
- { uint64_t x562; uint8_t x563 = _addcarryx_u64(x560, x545, x547, &x562);
- { uint64_t x565; uint8_t x566 = _addcarryx_u64(x563, x548, x550, &x565);
- { uint64_t x568; uint8_t _ = _addcarryx_u64(0x0, x566, x551, &x568);
- { uint64_t _; uint8_t x572 = _addcarryx_u64(0x0, x511, x535, &_);
- { uint64_t x574; uint8_t x575 = _addcarryx_u64(x572, x514, x553, &x574);
- { uint64_t x577; uint8_t x578 = _addcarryx_u64(x575, x517, x556, &x577);
- { uint64_t x580; uint8_t x581 = _addcarryx_u64(x578, x520, x559, &x580);
- { uint64_t x583; uint8_t x584 = _addcarryx_u64(x581, x523, x562, &x583);
- { uint64_t x586; uint8_t x587 = _addcarryx_u64(x584, x526, x565, &x586);
- { uint64_t x589; uint8_t x590 = _addcarryx_u64(x587, x529, x568, &x589);
- { uint8_t x591 = (x590 + x530);
- { uint64_t x594; uint64_t x593 = _mulx_u64(x12, x15, &x594);
- { uint64_t x597; uint64_t x596 = _mulx_u64(x12, x17, &x597);
- { uint64_t x600; uint64_t x599 = _mulx_u64(x12, x19, &x600);
- { uint64_t x603; uint64_t x602 = _mulx_u64(x12, x21, &x603);
- { uint64_t x606; uint64_t x605 = _mulx_u64(x12, x23, &x606);
- { uint64_t x609; uint64_t x608 = _mulx_u64(x12, x22, &x609);
- { uint64_t x611; uint8_t x612 = _addcarryx_u64(0x0, x594, x596, &x611);
- { uint64_t x614; uint8_t x615 = _addcarryx_u64(x612, x597, x599, &x614);
- { uint64_t x617; uint8_t x618 = _addcarryx_u64(x615, x600, x602, &x617);
- { uint64_t x620; uint8_t x621 = _addcarryx_u64(x618, x603, x605, &x620);
- { uint64_t x623; uint8_t x624 = _addcarryx_u64(x621, x606, x608, &x623);
- { uint64_t x626; uint8_t _ = _addcarryx_u64(0x0, x624, x609, &x626);
- { uint64_t x629; uint8_t x630 = _addcarryx_u64(0x0, x574, x593, &x629);
- { uint64_t x632; uint8_t x633 = _addcarryx_u64(x630, x577, x611, &x632);
- { uint64_t x635; uint8_t x636 = _addcarryx_u64(x633, x580, x614, &x635);
- { uint64_t x638; uint8_t x639 = _addcarryx_u64(x636, x583, x617, &x638);
- { uint64_t x641; uint8_t x642 = _addcarryx_u64(x639, x586, x620, &x641);
- { uint64_t x644; uint8_t x645 = _addcarryx_u64(x642, x589, x623, &x644);
- { uint64_t x647; uint8_t x648 = _addcarryx_u64(x645, x591, x626, &x647);
- { uint64_t _; uint64_t x650 = _mulx_u64(x629, 0xef7bdef7bdef7bdfL, &_);
- { uint64_t x654; uint64_t x653 = _mulx_u64(x650, 0xffffffffffffffe1L, &x654);
- { uint64_t x657; uint64_t x656 = _mulx_u64(x650, 0xffffffffffffffffL, &x657);
- { uint64_t x660; uint64_t x659 = _mulx_u64(x650, 0xffffffffffffffffL, &x660);
- { uint64_t x663; uint64_t x662 = _mulx_u64(x650, 0xffffffffffffffffL, &x663);
- { uint64_t x666; uint64_t x665 = _mulx_u64(x650, 0xffffffffffffffffL, &x666);
- { uint64_t x669; uint64_t x668 = _mulx_u64(x650, 0x7fffffffffffffffL, &x669);
- { uint64_t x671; uint8_t x672 = _addcarryx_u64(0x0, x654, x656, &x671);
- { uint64_t x674; uint8_t x675 = _addcarryx_u64(x672, x657, x659, &x674);
- { uint64_t x677; uint8_t x678 = _addcarryx_u64(x675, x660, x662, &x677);
- { uint64_t x680; uint8_t x681 = _addcarryx_u64(x678, x663, x665, &x680);
- { uint64_t x683; uint8_t x684 = _addcarryx_u64(x681, x666, x668, &x683);
- { uint64_t x686; uint8_t _ = _addcarryx_u64(0x0, x684, x669, &x686);
- { uint64_t _; uint8_t x690 = _addcarryx_u64(0x0, x629, x653, &_);
- { uint64_t x692; uint8_t x693 = _addcarryx_u64(x690, x632, x671, &x692);
- { uint64_t x695; uint8_t x696 = _addcarryx_u64(x693, x635, x674, &x695);
- { uint64_t x698; uint8_t x699 = _addcarryx_u64(x696, x638, x677, &x698);
- { uint64_t x701; uint8_t x702 = _addcarryx_u64(x699, x641, x680, &x701);
- { uint64_t x704; uint8_t x705 = _addcarryx_u64(x702, x644, x683, &x704);
- { uint64_t x707; uint8_t x708 = _addcarryx_u64(x705, x647, x686, &x707);
- { uint8_t x709 = (x708 + x648);
- { uint64_t x711; uint8_t x712 = _subborrow_u64(0x0, x692, 0xffffffffffffffe1L, &x711);
- { uint64_t x714; uint8_t x715 = _subborrow_u64(x712, x695, 0xffffffffffffffffL, &x714);
- { uint64_t x717; uint8_t x718 = _subborrow_u64(x715, x698, 0xffffffffffffffffL, &x717);
- { uint64_t x720; uint8_t x721 = _subborrow_u64(x718, x701, 0xffffffffffffffffL, &x720);
- { uint64_t x723; uint8_t x724 = _subborrow_u64(x721, x704, 0xffffffffffffffffL, &x723);
- { uint64_t x726; uint8_t x727 = _subborrow_u64(x724, x707, 0x7fffffffffffffffL, &x726);
- { uint64_t _; uint8_t x730 = _subborrow_u64(x727, x709, 0x0, &_);
- { uint64_t x731 = cmovznz64(x730, x726, x707);
- { uint64_t x732 = cmovznz64(x730, x723, x704);
- { uint64_t x733 = cmovznz64(x730, x720, x701);
- { uint64_t x734 = cmovznz64(x730, x717, x698);
- { uint64_t x735 = cmovznz64(x730, x714, x695);
- { uint64_t x736 = cmovznz64(x730, x711, x692);
- out[0] = x736;
- out[1] = x735;
- out[2] = x734;
- out[3] = x733;
- out[4] = x732;
- out[5] = x731;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e383m31_6limbs/femul.v b/src/Specific/montgomery64_2e383m31_6limbs/femul.v
deleted file mode 100644
index 2b0cdaf86..000000000
--- a/src/Specific/montgomery64_2e383m31_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e383m31_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e383m31_6limbs/femulDisplay.log b/src/Specific/montgomery64_2e383m31_6limbs/femulDisplay.log
deleted file mode 100644
index 73e05e2f9..000000000
--- a/src/Specific/montgomery64_2e383m31_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,252 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint64_t x26 = mulx_u64(x5, x15);
- uint64_t x28, uint64_t x29 = mulx_u64(x5, x17);
- uint64_t x31, uint64_t x32 = mulx_u64(x5, x19);
- uint64_t x34, uint64_t x35 = mulx_u64(x5, x21);
- uint64_t x37, uint64_t x38 = mulx_u64(x5, x23);
- uint64_t x40, uint64_t x41 = mulx_u64(x5, x22);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x26, x28);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x29, x31);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x47, x32, x34);
- uint64_t x52, uint8_t x53 = addcarryx_u64(x50, x35, x37);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x38, x40);
- uint64_t x58, uint8_t _ = addcarryx_u64(0x0, x56, x41);
- uint64_t x61, uint64_t _ = mulx_u64(x25, 0xef7bdef7bdef7bdfL);
- uint64_t x64, uint64_t x65 = mulx_u64(x61, 0xffffffffffffffe1L);
- uint64_t x67, uint64_t x68 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x70, uint64_t x71 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x73, uint64_t x74 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x76, uint64_t x77 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x79, uint64_t x80 = mulx_u64(x61, 0x7fffffffffffffffL);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x65, x67);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x68, x70);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x71, x73);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x74, x76);
- uint64_t x94, uint8_t x95 = addcarryx_u64(x92, x77, x79);
- uint64_t x97, uint8_t _ = addcarryx_u64(0x0, x95, x80);
- uint64_t _, uint8_t x101 = addcarryx_u64(0x0, x25, x64);
- uint64_t x103, uint8_t x104 = addcarryx_u64(x101, x43, x82);
- uint64_t x106, uint8_t x107 = addcarryx_u64(x104, x46, x85);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x49, x88);
- uint64_t x112, uint8_t x113 = addcarryx_u64(x110, x52, x91);
- uint64_t x115, uint8_t x116 = addcarryx_u64(x113, x55, x94);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x58, x97);
- uint64_t x121, uint64_t x122 = mulx_u64(x7, x15);
- uint64_t x124, uint64_t x125 = mulx_u64(x7, x17);
- uint64_t x127, uint64_t x128 = mulx_u64(x7, x19);
- uint64_t x130, uint64_t x131 = mulx_u64(x7, x21);
- uint64_t x133, uint64_t x134 = mulx_u64(x7, x23);
- uint64_t x136, uint64_t x137 = mulx_u64(x7, x22);
- uint64_t x139, uint8_t x140 = addcarryx_u64(0x0, x122, x124);
- uint64_t x142, uint8_t x143 = addcarryx_u64(x140, x125, x127);
- uint64_t x145, uint8_t x146 = addcarryx_u64(x143, x128, x130);
- uint64_t x148, uint8_t x149 = addcarryx_u64(x146, x131, x133);
- uint64_t x151, uint8_t x152 = addcarryx_u64(x149, x134, x136);
- uint64_t x154, uint8_t _ = addcarryx_u64(0x0, x152, x137);
- uint64_t x157, uint8_t x158 = addcarryx_u64(0x0, x103, x121);
- uint64_t x160, uint8_t x161 = addcarryx_u64(x158, x106, x139);
- uint64_t x163, uint8_t x164 = addcarryx_u64(x161, x109, x142);
- uint64_t x166, uint8_t x167 = addcarryx_u64(x164, x112, x145);
- uint64_t x169, uint8_t x170 = addcarryx_u64(x167, x115, x148);
- uint64_t x172, uint8_t x173 = addcarryx_u64(x170, x118, x151);
- uint64_t x175, uint8_t x176 = addcarryx_u64(x173, x119, x154);
- uint64_t x178, uint64_t _ = mulx_u64(x157, 0xef7bdef7bdef7bdfL);
- uint64_t x181, uint64_t x182 = mulx_u64(x178, 0xffffffffffffffe1L);
- uint64_t x184, uint64_t x185 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x187, uint64_t x188 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x190, uint64_t x191 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x193, uint64_t x194 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x196, uint64_t x197 = mulx_u64(x178, 0x7fffffffffffffffL);
- uint64_t x199, uint8_t x200 = addcarryx_u64(0x0, x182, x184);
- uint64_t x202, uint8_t x203 = addcarryx_u64(x200, x185, x187);
- uint64_t x205, uint8_t x206 = addcarryx_u64(x203, x188, x190);
- uint64_t x208, uint8_t x209 = addcarryx_u64(x206, x191, x193);
- uint64_t x211, uint8_t x212 = addcarryx_u64(x209, x194, x196);
- uint64_t x214, uint8_t _ = addcarryx_u64(0x0, x212, x197);
- uint64_t _, uint8_t x218 = addcarryx_u64(0x0, x157, x181);
- uint64_t x220, uint8_t x221 = addcarryx_u64(x218, x160, x199);
- uint64_t x223, uint8_t x224 = addcarryx_u64(x221, x163, x202);
- uint64_t x226, uint8_t x227 = addcarryx_u64(x224, x166, x205);
- uint64_t x229, uint8_t x230 = addcarryx_u64(x227, x169, x208);
- uint64_t x232, uint8_t x233 = addcarryx_u64(x230, x172, x211);
- uint64_t x235, uint8_t x236 = addcarryx_u64(x233, x175, x214);
- uint8_t x237 = (x236 + x176);
- uint64_t x239, uint64_t x240 = mulx_u64(x9, x15);
- uint64_t x242, uint64_t x243 = mulx_u64(x9, x17);
- uint64_t x245, uint64_t x246 = mulx_u64(x9, x19);
- uint64_t x248, uint64_t x249 = mulx_u64(x9, x21);
- uint64_t x251, uint64_t x252 = mulx_u64(x9, x23);
- uint64_t x254, uint64_t x255 = mulx_u64(x9, x22);
- uint64_t x257, uint8_t x258 = addcarryx_u64(0x0, x240, x242);
- uint64_t x260, uint8_t x261 = addcarryx_u64(x258, x243, x245);
- uint64_t x263, uint8_t x264 = addcarryx_u64(x261, x246, x248);
- uint64_t x266, uint8_t x267 = addcarryx_u64(x264, x249, x251);
- uint64_t x269, uint8_t x270 = addcarryx_u64(x267, x252, x254);
- uint64_t x272, uint8_t _ = addcarryx_u64(0x0, x270, x255);
- uint64_t x275, uint8_t x276 = addcarryx_u64(0x0, x220, x239);
- uint64_t x278, uint8_t x279 = addcarryx_u64(x276, x223, x257);
- uint64_t x281, uint8_t x282 = addcarryx_u64(x279, x226, x260);
- uint64_t x284, uint8_t x285 = addcarryx_u64(x282, x229, x263);
- uint64_t x287, uint8_t x288 = addcarryx_u64(x285, x232, x266);
- uint64_t x290, uint8_t x291 = addcarryx_u64(x288, x235, x269);
- uint64_t x293, uint8_t x294 = addcarryx_u64(x291, x237, x272);
- uint64_t x296, uint64_t _ = mulx_u64(x275, 0xef7bdef7bdef7bdfL);
- uint64_t x299, uint64_t x300 = mulx_u64(x296, 0xffffffffffffffe1L);
- uint64_t x302, uint64_t x303 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x305, uint64_t x306 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x308, uint64_t x309 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x311, uint64_t x312 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x314, uint64_t x315 = mulx_u64(x296, 0x7fffffffffffffffL);
- uint64_t x317, uint8_t x318 = addcarryx_u64(0x0, x300, x302);
- uint64_t x320, uint8_t x321 = addcarryx_u64(x318, x303, x305);
- uint64_t x323, uint8_t x324 = addcarryx_u64(x321, x306, x308);
- uint64_t x326, uint8_t x327 = addcarryx_u64(x324, x309, x311);
- uint64_t x329, uint8_t x330 = addcarryx_u64(x327, x312, x314);
- uint64_t x332, uint8_t _ = addcarryx_u64(0x0, x330, x315);
- uint64_t _, uint8_t x336 = addcarryx_u64(0x0, x275, x299);
- uint64_t x338, uint8_t x339 = addcarryx_u64(x336, x278, x317);
- uint64_t x341, uint8_t x342 = addcarryx_u64(x339, x281, x320);
- uint64_t x344, uint8_t x345 = addcarryx_u64(x342, x284, x323);
- uint64_t x347, uint8_t x348 = addcarryx_u64(x345, x287, x326);
- uint64_t x350, uint8_t x351 = addcarryx_u64(x348, x290, x329);
- uint64_t x353, uint8_t x354 = addcarryx_u64(x351, x293, x332);
- uint8_t x355 = (x354 + x294);
- uint64_t x357, uint64_t x358 = mulx_u64(x11, x15);
- uint64_t x360, uint64_t x361 = mulx_u64(x11, x17);
- uint64_t x363, uint64_t x364 = mulx_u64(x11, x19);
- uint64_t x366, uint64_t x367 = mulx_u64(x11, x21);
- uint64_t x369, uint64_t x370 = mulx_u64(x11, x23);
- uint64_t x372, uint64_t x373 = mulx_u64(x11, x22);
- uint64_t x375, uint8_t x376 = addcarryx_u64(0x0, x358, x360);
- uint64_t x378, uint8_t x379 = addcarryx_u64(x376, x361, x363);
- uint64_t x381, uint8_t x382 = addcarryx_u64(x379, x364, x366);
- uint64_t x384, uint8_t x385 = addcarryx_u64(x382, x367, x369);
- uint64_t x387, uint8_t x388 = addcarryx_u64(x385, x370, x372);
- uint64_t x390, uint8_t _ = addcarryx_u64(0x0, x388, x373);
- uint64_t x393, uint8_t x394 = addcarryx_u64(0x0, x338, x357);
- uint64_t x396, uint8_t x397 = addcarryx_u64(x394, x341, x375);
- uint64_t x399, uint8_t x400 = addcarryx_u64(x397, x344, x378);
- uint64_t x402, uint8_t x403 = addcarryx_u64(x400, x347, x381);
- uint64_t x405, uint8_t x406 = addcarryx_u64(x403, x350, x384);
- uint64_t x408, uint8_t x409 = addcarryx_u64(x406, x353, x387);
- uint64_t x411, uint8_t x412 = addcarryx_u64(x409, x355, x390);
- uint64_t x414, uint64_t _ = mulx_u64(x393, 0xef7bdef7bdef7bdfL);
- uint64_t x417, uint64_t x418 = mulx_u64(x414, 0xffffffffffffffe1L);
- uint64_t x420, uint64_t x421 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x423, uint64_t x424 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x426, uint64_t x427 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x429, uint64_t x430 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x432, uint64_t x433 = mulx_u64(x414, 0x7fffffffffffffffL);
- uint64_t x435, uint8_t x436 = addcarryx_u64(0x0, x418, x420);
- uint64_t x438, uint8_t x439 = addcarryx_u64(x436, x421, x423);
- uint64_t x441, uint8_t x442 = addcarryx_u64(x439, x424, x426);
- uint64_t x444, uint8_t x445 = addcarryx_u64(x442, x427, x429);
- uint64_t x447, uint8_t x448 = addcarryx_u64(x445, x430, x432);
- uint64_t x450, uint8_t _ = addcarryx_u64(0x0, x448, x433);
- uint64_t _, uint8_t x454 = addcarryx_u64(0x0, x393, x417);
- uint64_t x456, uint8_t x457 = addcarryx_u64(x454, x396, x435);
- uint64_t x459, uint8_t x460 = addcarryx_u64(x457, x399, x438);
- uint64_t x462, uint8_t x463 = addcarryx_u64(x460, x402, x441);
- uint64_t x465, uint8_t x466 = addcarryx_u64(x463, x405, x444);
- uint64_t x468, uint8_t x469 = addcarryx_u64(x466, x408, x447);
- uint64_t x471, uint8_t x472 = addcarryx_u64(x469, x411, x450);
- uint8_t x473 = (x472 + x412);
- uint64_t x475, uint64_t x476 = mulx_u64(x13, x15);
- uint64_t x478, uint64_t x479 = mulx_u64(x13, x17);
- uint64_t x481, uint64_t x482 = mulx_u64(x13, x19);
- uint64_t x484, uint64_t x485 = mulx_u64(x13, x21);
- uint64_t x487, uint64_t x488 = mulx_u64(x13, x23);
- uint64_t x490, uint64_t x491 = mulx_u64(x13, x22);
- uint64_t x493, uint8_t x494 = addcarryx_u64(0x0, x476, x478);
- uint64_t x496, uint8_t x497 = addcarryx_u64(x494, x479, x481);
- uint64_t x499, uint8_t x500 = addcarryx_u64(x497, x482, x484);
- uint64_t x502, uint8_t x503 = addcarryx_u64(x500, x485, x487);
- uint64_t x505, uint8_t x506 = addcarryx_u64(x503, x488, x490);
- uint64_t x508, uint8_t _ = addcarryx_u64(0x0, x506, x491);
- uint64_t x511, uint8_t x512 = addcarryx_u64(0x0, x456, x475);
- uint64_t x514, uint8_t x515 = addcarryx_u64(x512, x459, x493);
- uint64_t x517, uint8_t x518 = addcarryx_u64(x515, x462, x496);
- uint64_t x520, uint8_t x521 = addcarryx_u64(x518, x465, x499);
- uint64_t x523, uint8_t x524 = addcarryx_u64(x521, x468, x502);
- uint64_t x526, uint8_t x527 = addcarryx_u64(x524, x471, x505);
- uint64_t x529, uint8_t x530 = addcarryx_u64(x527, x473, x508);
- uint64_t x532, uint64_t _ = mulx_u64(x511, 0xef7bdef7bdef7bdfL);
- uint64_t x535, uint64_t x536 = mulx_u64(x532, 0xffffffffffffffe1L);
- uint64_t x538, uint64_t x539 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x541, uint64_t x542 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x544, uint64_t x545 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x547, uint64_t x548 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x550, uint64_t x551 = mulx_u64(x532, 0x7fffffffffffffffL);
- uint64_t x553, uint8_t x554 = addcarryx_u64(0x0, x536, x538);
- uint64_t x556, uint8_t x557 = addcarryx_u64(x554, x539, x541);
- uint64_t x559, uint8_t x560 = addcarryx_u64(x557, x542, x544);
- uint64_t x562, uint8_t x563 = addcarryx_u64(x560, x545, x547);
- uint64_t x565, uint8_t x566 = addcarryx_u64(x563, x548, x550);
- uint64_t x568, uint8_t _ = addcarryx_u64(0x0, x566, x551);
- uint64_t _, uint8_t x572 = addcarryx_u64(0x0, x511, x535);
- uint64_t x574, uint8_t x575 = addcarryx_u64(x572, x514, x553);
- uint64_t x577, uint8_t x578 = addcarryx_u64(x575, x517, x556);
- uint64_t x580, uint8_t x581 = addcarryx_u64(x578, x520, x559);
- uint64_t x583, uint8_t x584 = addcarryx_u64(x581, x523, x562);
- uint64_t x586, uint8_t x587 = addcarryx_u64(x584, x526, x565);
- uint64_t x589, uint8_t x590 = addcarryx_u64(x587, x529, x568);
- uint8_t x591 = (x590 + x530);
- uint64_t x593, uint64_t x594 = mulx_u64(x12, x15);
- uint64_t x596, uint64_t x597 = mulx_u64(x12, x17);
- uint64_t x599, uint64_t x600 = mulx_u64(x12, x19);
- uint64_t x602, uint64_t x603 = mulx_u64(x12, x21);
- uint64_t x605, uint64_t x606 = mulx_u64(x12, x23);
- uint64_t x608, uint64_t x609 = mulx_u64(x12, x22);
- uint64_t x611, uint8_t x612 = addcarryx_u64(0x0, x594, x596);
- uint64_t x614, uint8_t x615 = addcarryx_u64(x612, x597, x599);
- uint64_t x617, uint8_t x618 = addcarryx_u64(x615, x600, x602);
- uint64_t x620, uint8_t x621 = addcarryx_u64(x618, x603, x605);
- uint64_t x623, uint8_t x624 = addcarryx_u64(x621, x606, x608);
- uint64_t x626, uint8_t _ = addcarryx_u64(0x0, x624, x609);
- uint64_t x629, uint8_t x630 = addcarryx_u64(0x0, x574, x593);
- uint64_t x632, uint8_t x633 = addcarryx_u64(x630, x577, x611);
- uint64_t x635, uint8_t x636 = addcarryx_u64(x633, x580, x614);
- uint64_t x638, uint8_t x639 = addcarryx_u64(x636, x583, x617);
- uint64_t x641, uint8_t x642 = addcarryx_u64(x639, x586, x620);
- uint64_t x644, uint8_t x645 = addcarryx_u64(x642, x589, x623);
- uint64_t x647, uint8_t x648 = addcarryx_u64(x645, x591, x626);
- uint64_t x650, uint64_t _ = mulx_u64(x629, 0xef7bdef7bdef7bdfL);
- uint64_t x653, uint64_t x654 = mulx_u64(x650, 0xffffffffffffffe1L);
- uint64_t x656, uint64_t x657 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x659, uint64_t x660 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x662, uint64_t x663 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x665, uint64_t x666 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x668, uint64_t x669 = mulx_u64(x650, 0x7fffffffffffffffL);
- uint64_t x671, uint8_t x672 = addcarryx_u64(0x0, x654, x656);
- uint64_t x674, uint8_t x675 = addcarryx_u64(x672, x657, x659);
- uint64_t x677, uint8_t x678 = addcarryx_u64(x675, x660, x662);
- uint64_t x680, uint8_t x681 = addcarryx_u64(x678, x663, x665);
- uint64_t x683, uint8_t x684 = addcarryx_u64(x681, x666, x668);
- uint64_t x686, uint8_t _ = addcarryx_u64(0x0, x684, x669);
- uint64_t _, uint8_t x690 = addcarryx_u64(0x0, x629, x653);
- uint64_t x692, uint8_t x693 = addcarryx_u64(x690, x632, x671);
- uint64_t x695, uint8_t x696 = addcarryx_u64(x693, x635, x674);
- uint64_t x698, uint8_t x699 = addcarryx_u64(x696, x638, x677);
- uint64_t x701, uint8_t x702 = addcarryx_u64(x699, x641, x680);
- uint64_t x704, uint8_t x705 = addcarryx_u64(x702, x644, x683);
- uint64_t x707, uint8_t x708 = addcarryx_u64(x705, x647, x686);
- uint8_t x709 = (x708 + x648);
- uint64_t x711, uint8_t x712 = subborrow_u64(0x0, x692, 0xffffffffffffffe1L);
- uint64_t x714, uint8_t x715 = subborrow_u64(x712, x695, 0xffffffffffffffffL);
- uint64_t x717, uint8_t x718 = subborrow_u64(x715, x698, 0xffffffffffffffffL);
- uint64_t x720, uint8_t x721 = subborrow_u64(x718, x701, 0xffffffffffffffffL);
- uint64_t x723, uint8_t x724 = subborrow_u64(x721, x704, 0xffffffffffffffffL);
- uint64_t x726, uint8_t x727 = subborrow_u64(x724, x707, 0x7fffffffffffffffL);
- uint64_t _, uint8_t x730 = subborrow_u64(x727, x709, 0x0);
- uint64_t x731 = cmovznz64(x730, x726, x707);
- uint64_t x732 = cmovznz64(x730, x723, x704);
- uint64_t x733 = cmovznz64(x730, x720, x701);
- uint64_t x734 = cmovznz64(x730, x717, x698);
- uint64_t x735 = cmovznz64(x730, x714, x695);
- uint64_t x736 = cmovznz64(x730, x711, x692);
- return (x731, x732, x733, x734, x735, x736))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e383m31_6limbs/femulDisplay.v b/src/Specific/montgomery64_2e383m31_6limbs/femulDisplay.v
deleted file mode 100644
index b06781896..000000000
--- a/src/Specific/montgomery64_2e383m31_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e383m31_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e383m31_6limbs/fenz.c b/src/Specific/montgomery64_2e383m31_6limbs/fenz.c
deleted file mode 100644
index c93f74257..000000000
--- a/src/Specific/montgomery64_2e383m31_6limbs/fenz.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x11 = (x10 | x9);
- { uint64_t x12 = (x8 | x11);
- { uint64_t x13 = (x6 | x12);
- { uint64_t x14 = (x4 | x13);
- { uint64_t x15 = (x2 | x14);
- out[0] = x15;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e383m31_6limbs/fenz.v b/src/Specific/montgomery64_2e383m31_6limbs/fenz.v
deleted file mode 100644
index 52676b5bb..000000000
--- a/src/Specific/montgomery64_2e383m31_6limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e383m31_6limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e383m31_6limbs/fenzDisplay.log b/src/Specific/montgomery64_2e383m31_6limbs/fenzDisplay.log
deleted file mode 100644
index f39f1d91b..000000000
--- a/src/Specific/montgomery64_2e383m31_6limbs/fenzDisplay.log
+++ /dev/null
@@ -1,12 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x11 = (x10 | x9);
- uint64_t x12 = (x8 | x11);
- uint64_t x13 = (x6 | x12);
- uint64_t x14 = (x4 | x13);
- uint64_t x15 = (x2 | x14);
- return x15)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e383m31_6limbs/fenzDisplay.v b/src/Specific/montgomery64_2e383m31_6limbs/fenzDisplay.v
deleted file mode 100644
index 5f0dfec98..000000000
--- a/src/Specific/montgomery64_2e383m31_6limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e383m31_6limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e383m31_6limbs/feopp.c b/src/Specific/montgomery64_2e383m31_6limbs/feopp.c
deleted file mode 100644
index f5e2debdb..000000000
--- a/src/Specific/montgomery64_2e383m31_6limbs/feopp.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feopp(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12; uint8_t x13 = _subborrow_u64(0x0, 0x0, x2, &x12);
- { uint64_t x15; uint8_t x16 = _subborrow_u64(x13, 0x0, x4, &x15);
- { uint64_t x18; uint8_t x19 = _subborrow_u64(x16, 0x0, x6, &x18);
- { uint64_t x21; uint8_t x22 = _subborrow_u64(x19, 0x0, x8, &x21);
- { uint64_t x24; uint8_t x25 = _subborrow_u64(x22, 0x0, x10, &x24);
- { uint64_t x27; uint8_t x28 = _subborrow_u64(x25, 0x0, x9, &x27);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0xffffffffffffffe1L);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(0x0, x12, x30, &x32);
- { uint64_t x34 = (x29 & 0xffffffffffffffffL);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x33, x15, x34, &x36);
- { uint64_t x38 = (x29 & 0xffffffffffffffffL);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x37, x18, x38, &x40);
- { uint64_t x42 = (x29 & 0xffffffffffffffffL);
- { uint64_t x44; uint8_t x45 = _addcarryx_u64(x41, x21, x42, &x44);
- { uint64_t x46 = (x29 & 0xffffffffffffffffL);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x45, x24, x46, &x48);
- { uint64_t x50 = (x29 & 0x7fffffffffffffffL);
- { uint64_t x52; uint8_t _ = _addcarryx_u64(x49, x27, x50, &x52);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e383m31_6limbs/feopp.v b/src/Specific/montgomery64_2e383m31_6limbs/feopp.v
deleted file mode 100644
index 16d17cfb1..000000000
--- a/src/Specific/montgomery64_2e383m31_6limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e383m31_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e383m31_6limbs/feoppDisplay.log b/src/Specific/montgomery64_2e383m31_6limbs/feoppDisplay.log
deleted file mode 100644
index f906c81b3..000000000
--- a/src/Specific/montgomery64_2e383m31_6limbs/feoppDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x15, uint8_t x16 = subborrow_u64(x13, 0x0, x4);
- uint64_t x18, uint8_t x19 = subborrow_u64(x16, 0x0, x6);
- uint64_t x21, uint8_t x22 = subborrow_u64(x19, 0x0, x8);
- uint64_t x24, uint8_t x25 = subborrow_u64(x22, 0x0, x10);
- uint64_t x27, uint8_t x28 = subborrow_u64(x25, 0x0, x9);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0xffffffffffffffe1L);
- uint64_t x32, uint8_t x33 = addcarryx_u64(0x0, x12, x30);
- uint64_t x34 = (x29 & 0xffffffffffffffffL);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x33, x15, x34);
- uint64_t x38 = (x29 & 0xffffffffffffffffL);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x37, x18, x38);
- uint64_t x42 = (x29 & 0xffffffffffffffffL);
- uint64_t x44, uint8_t x45 = addcarryx_u64(x41, x21, x42);
- uint64_t x46 = (x29 & 0xffffffffffffffffL);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x45, x24, x46);
- uint64_t x50 = (x29 & 0x7fffffffffffffffL);
- uint64_t x52, uint8_t _ = addcarryx_u64(x49, x27, x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e383m31_6limbs/feoppDisplay.v b/src/Specific/montgomery64_2e383m31_6limbs/feoppDisplay.v
deleted file mode 100644
index 4c4e06342..000000000
--- a/src/Specific/montgomery64_2e383m31_6limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e383m31_6limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e383m31_6limbs/fesquare.c b/src/Specific/montgomery64_2e383m31_6limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e383m31_6limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e383m31_6limbs/fesub.c b/src/Specific/montgomery64_2e383m31_6limbs/fesub.c
deleted file mode 100644
index d759ffa5a..000000000
--- a/src/Specific/montgomery64_2e383m31_6limbs/fesub.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _subborrow_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _subborrow_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _subborrow_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _subborrow_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _subborrow_u64(x38, x12, x22, &x40);
- { uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- { uint64_t x43 = (x42 & 0xffffffffffffffe1L);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(0x0, x25, x43, &x45);
- { uint64_t x47 = (x42 & 0xffffffffffffffffL);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x46, x28, x47, &x49);
- { uint64_t x51 = (x42 & 0xffffffffffffffffL);
- { uint64_t x53; uint8_t x54 = _addcarryx_u64(x50, x31, x51, &x53);
- { uint64_t x55 = (x42 & 0xffffffffffffffffL);
- { uint64_t x57; uint8_t x58 = _addcarryx_u64(x54, x34, x55, &x57);
- { uint64_t x59 = (x42 & 0xffffffffffffffffL);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x58, x37, x59, &x61);
- { uint64_t x63 = (x42 & 0x7fffffffffffffffL);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(x62, x40, x63, &x65);
- out[0] = x45;
- out[1] = x49;
- out[2] = x53;
- out[3] = x57;
- out[4] = x61;
- out[5] = x65;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e383m31_6limbs/fesub.v b/src/Specific/montgomery64_2e383m31_6limbs/fesub.v
deleted file mode 100644
index a74a89a01..000000000
--- a/src/Specific/montgomery64_2e383m31_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e383m31_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e383m31_6limbs/fesubDisplay.log b/src/Specific/montgomery64_2e383m31_6limbs/fesubDisplay.log
deleted file mode 100644
index be101216c..000000000
--- a/src/Specific/montgomery64_2e383m31_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = subborrow_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = subborrow_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = subborrow_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = subborrow_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = subborrow_u64(x38, x12, x22);
- uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- uint64_t x43 = (x42 & 0xffffffffffffffe1L);
- uint64_t x45, uint8_t x46 = addcarryx_u64(0x0, x25, x43);
- uint64_t x47 = (x42 & 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x46, x28, x47);
- uint64_t x51 = (x42 & 0xffffffffffffffffL);
- uint64_t x53, uint8_t x54 = addcarryx_u64(x50, x31, x51);
- uint64_t x55 = (x42 & 0xffffffffffffffffL);
- uint64_t x57, uint8_t x58 = addcarryx_u64(x54, x34, x55);
- uint64_t x59 = (x42 & 0xffffffffffffffffL);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x58, x37, x59);
- uint64_t x63 = (x42 & 0x7fffffffffffffffL);
- uint64_t x65, uint8_t _ = addcarryx_u64(x62, x40, x63);
- (Return x65, Return x61, Return x57, Return x53, Return x49, Return x45))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e383m31_6limbs/fesubDisplay.v b/src/Specific/montgomery64_2e383m31_6limbs/fesubDisplay.v
deleted file mode 100644
index 18ce569d5..000000000
--- a/src/Specific/montgomery64_2e383m31_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e383m31_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e383m31_6limbs/py_interpreter.sh b/src/Specific/montgomery64_2e383m31_6limbs/py_interpreter.sh
deleted file mode 100755
index a453e9812..000000000
--- a/src/Specific/montgomery64_2e383m31_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**383 - 31' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e383m421_6limbs/CurveParameters.v b/src/Specific/montgomery64_2e383m421_6limbs/CurveParameters.v
deleted file mode 100644
index 65b26ddae..000000000
--- a/src/Specific/montgomery64_2e383m421_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^383 - 421
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 64;
- bitwidth := 64;
- s := 2^383;
- c := [(1, 421)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e383m421_6limbs/Synthesis.v b/src/Specific/montgomery64_2e383m421_6limbs/Synthesis.v
deleted file mode 100644
index 5554094a3..000000000
--- a/src/Specific/montgomery64_2e383m421_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e383m421_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/montgomery64_2e383m421_6limbs/compiler.sh b/src/Specific/montgomery64_2e383m421_6limbs/compiler.sh
deleted file mode 100755
index 70c7de9b7..000000000
--- a/src/Specific/montgomery64_2e383m421_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<383) - 421' "$@"
diff --git a/src/Specific/montgomery64_2e383m421_6limbs/compilerxx.sh b/src/Specific/montgomery64_2e383m421_6limbs/compilerxx.sh
deleted file mode 100755
index 21f897a48..000000000
--- a/src/Specific/montgomery64_2e383m421_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<383) - 421' "$@"
diff --git a/src/Specific/montgomery64_2e383m421_6limbs/feadd.c b/src/Specific/montgomery64_2e383m421_6limbs/feadd.c
deleted file mode 100644
index 244b4e633..000000000
--- a/src/Specific/montgomery64_2e383m421_6limbs/feadd.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _addcarryx_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _addcarryx_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x38, x12, x22, &x40);
- { uint64_t x43; uint8_t x44 = _subborrow_u64(0x0, x25, 0xfffffffffffffe5bL, &x43);
- { uint64_t x46; uint8_t x47 = _subborrow_u64(x44, x28, 0xffffffffffffffffL, &x46);
- { uint64_t x49; uint8_t x50 = _subborrow_u64(x47, x31, 0xffffffffffffffffL, &x49);
- { uint64_t x52; uint8_t x53 = _subborrow_u64(x50, x34, 0xffffffffffffffffL, &x52);
- { uint64_t x55; uint8_t x56 = _subborrow_u64(x53, x37, 0xffffffffffffffffL, &x55);
- { uint64_t x58; uint8_t x59 = _subborrow_u64(x56, x40, 0x7fffffffffffffffL, &x58);
- { uint64_t _; uint8_t x62 = _subborrow_u64(x59, x41, 0x0, &_);
- { uint64_t x63 = cmovznz64(x62, x58, x40);
- { uint64_t x64 = cmovznz64(x62, x55, x37);
- { uint64_t x65 = cmovznz64(x62, x52, x34);
- { uint64_t x66 = cmovznz64(x62, x49, x31);
- { uint64_t x67 = cmovznz64(x62, x46, x28);
- { uint64_t x68 = cmovznz64(x62, x43, x25);
- out[0] = x68;
- out[1] = x67;
- out[2] = x66;
- out[3] = x65;
- out[4] = x64;
- out[5] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e383m421_6limbs/feadd.v b/src/Specific/montgomery64_2e383m421_6limbs/feadd.v
deleted file mode 100644
index c45dcaf3d..000000000
--- a/src/Specific/montgomery64_2e383m421_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e383m421_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e383m421_6limbs/feaddDisplay.log b/src/Specific/montgomery64_2e383m421_6limbs/feaddDisplay.log
deleted file mode 100644
index 4e71e5e9c..000000000
--- a/src/Specific/montgomery64_2e383m421_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = addcarryx_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = addcarryx_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = addcarryx_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = addcarryx_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x38, x12, x22);
- uint64_t x43, uint8_t x44 = subborrow_u64(0x0, x25, 0xfffffffffffffe5bL);
- uint64_t x46, uint8_t x47 = subborrow_u64(x44, x28, 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = subborrow_u64(x47, x31, 0xffffffffffffffffL);
- uint64_t x52, uint8_t x53 = subborrow_u64(x50, x34, 0xffffffffffffffffL);
- uint64_t x55, uint8_t x56 = subborrow_u64(x53, x37, 0xffffffffffffffffL);
- uint64_t x58, uint8_t x59 = subborrow_u64(x56, x40, 0x7fffffffffffffffL);
- uint64_t _, uint8_t x62 = subborrow_u64(x59, x41, 0x0);
- uint64_t x63 = cmovznz64(x62, x58, x40);
- uint64_t x64 = cmovznz64(x62, x55, x37);
- uint64_t x65 = cmovznz64(x62, x52, x34);
- uint64_t x66 = cmovznz64(x62, x49, x31);
- uint64_t x67 = cmovznz64(x62, x46, x28);
- uint64_t x68 = cmovznz64(x62, x43, x25);
- return (x63, x64, x65, x66, x67, x68))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e383m421_6limbs/feaddDisplay.v b/src/Specific/montgomery64_2e383m421_6limbs/feaddDisplay.v
deleted file mode 100644
index f77f3834a..000000000
--- a/src/Specific/montgomery64_2e383m421_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e383m421_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e383m421_6limbs/femul.c b/src/Specific/montgomery64_2e383m421_6limbs/femul.c
deleted file mode 100644
index b8ab8b2c6..000000000
--- a/src/Specific/montgomery64_2e383m421_6limbs/femul.c
+++ /dev/null
@@ -1,266 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x26; uint64_t x25 = _mulx_u64(x5, x15, &x26);
- { uint64_t x29; uint64_t x28 = _mulx_u64(x5, x17, &x29);
- { uint64_t x32; uint64_t x31 = _mulx_u64(x5, x19, &x32);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x5, x21, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x5, x23, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x5, x22, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x26, x28, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x29, x31, &x46);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x47, x32, x34, &x49);
- { uint64_t x52; uint8_t x53 = _addcarryx_u64(x50, x35, x37, &x52);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x38, x40, &x55);
- { uint64_t x58; uint8_t _ = _addcarryx_u64(0x0, x56, x41, &x58);
- { uint64_t _; uint64_t x61 = _mulx_u64(x25, 0xcebeef94fa86fe2dL, &_);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x61, 0xfffffffffffffe5bL, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x61, 0xffffffffffffffffL, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x61, 0xffffffffffffffffL, &x71);
- { uint64_t x74; uint64_t x73 = _mulx_u64(x61, 0xffffffffffffffffL, &x74);
- { uint64_t x77; uint64_t x76 = _mulx_u64(x61, 0xffffffffffffffffL, &x77);
- { uint64_t x80; uint64_t x79 = _mulx_u64(x61, 0x7fffffffffffffffL, &x80);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x65, x67, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x68, x70, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x71, x73, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x74, x76, &x91);
- { uint64_t x94; uint8_t x95 = _addcarryx_u64(x92, x77, x79, &x94);
- { uint64_t x97; uint8_t _ = _addcarryx_u64(0x0, x95, x80, &x97);
- { uint64_t _; uint8_t x101 = _addcarryx_u64(0x0, x25, x64, &_);
- { uint64_t x103; uint8_t x104 = _addcarryx_u64(x101, x43, x82, &x103);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(x104, x46, x85, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x49, x88, &x109);
- { uint64_t x112; uint8_t x113 = _addcarryx_u64(x110, x52, x91, &x112);
- { uint64_t x115; uint8_t x116 = _addcarryx_u64(x113, x55, x94, &x115);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x58, x97, &x118);
- { uint64_t x122; uint64_t x121 = _mulx_u64(x7, x15, &x122);
- { uint64_t x125; uint64_t x124 = _mulx_u64(x7, x17, &x125);
- { uint64_t x128; uint64_t x127 = _mulx_u64(x7, x19, &x128);
- { uint64_t x131; uint64_t x130 = _mulx_u64(x7, x21, &x131);
- { uint64_t x134; uint64_t x133 = _mulx_u64(x7, x23, &x134);
- { uint64_t x137; uint64_t x136 = _mulx_u64(x7, x22, &x137);
- { uint64_t x139; uint8_t x140 = _addcarryx_u64(0x0, x122, x124, &x139);
- { uint64_t x142; uint8_t x143 = _addcarryx_u64(x140, x125, x127, &x142);
- { uint64_t x145; uint8_t x146 = _addcarryx_u64(x143, x128, x130, &x145);
- { uint64_t x148; uint8_t x149 = _addcarryx_u64(x146, x131, x133, &x148);
- { uint64_t x151; uint8_t x152 = _addcarryx_u64(x149, x134, x136, &x151);
- { uint64_t x154; uint8_t _ = _addcarryx_u64(0x0, x152, x137, &x154);
- { uint64_t x157; uint8_t x158 = _addcarryx_u64(0x0, x103, x121, &x157);
- { uint64_t x160; uint8_t x161 = _addcarryx_u64(x158, x106, x139, &x160);
- { uint64_t x163; uint8_t x164 = _addcarryx_u64(x161, x109, x142, &x163);
- { uint64_t x166; uint8_t x167 = _addcarryx_u64(x164, x112, x145, &x166);
- { uint64_t x169; uint8_t x170 = _addcarryx_u64(x167, x115, x148, &x169);
- { uint64_t x172; uint8_t x173 = _addcarryx_u64(x170, x118, x151, &x172);
- { uint64_t x175; uint8_t x176 = _addcarryx_u64(x173, x119, x154, &x175);
- { uint64_t _; uint64_t x178 = _mulx_u64(x157, 0xcebeef94fa86fe2dL, &_);
- { uint64_t x182; uint64_t x181 = _mulx_u64(x178, 0xfffffffffffffe5bL, &x182);
- { uint64_t x185; uint64_t x184 = _mulx_u64(x178, 0xffffffffffffffffL, &x185);
- { uint64_t x188; uint64_t x187 = _mulx_u64(x178, 0xffffffffffffffffL, &x188);
- { uint64_t x191; uint64_t x190 = _mulx_u64(x178, 0xffffffffffffffffL, &x191);
- { uint64_t x194; uint64_t x193 = _mulx_u64(x178, 0xffffffffffffffffL, &x194);
- { uint64_t x197; uint64_t x196 = _mulx_u64(x178, 0x7fffffffffffffffL, &x197);
- { uint64_t x199; uint8_t x200 = _addcarryx_u64(0x0, x182, x184, &x199);
- { uint64_t x202; uint8_t x203 = _addcarryx_u64(x200, x185, x187, &x202);
- { uint64_t x205; uint8_t x206 = _addcarryx_u64(x203, x188, x190, &x205);
- { uint64_t x208; uint8_t x209 = _addcarryx_u64(x206, x191, x193, &x208);
- { uint64_t x211; uint8_t x212 = _addcarryx_u64(x209, x194, x196, &x211);
- { uint64_t x214; uint8_t _ = _addcarryx_u64(0x0, x212, x197, &x214);
- { uint64_t _; uint8_t x218 = _addcarryx_u64(0x0, x157, x181, &_);
- { uint64_t x220; uint8_t x221 = _addcarryx_u64(x218, x160, x199, &x220);
- { uint64_t x223; uint8_t x224 = _addcarryx_u64(x221, x163, x202, &x223);
- { uint64_t x226; uint8_t x227 = _addcarryx_u64(x224, x166, x205, &x226);
- { uint64_t x229; uint8_t x230 = _addcarryx_u64(x227, x169, x208, &x229);
- { uint64_t x232; uint8_t x233 = _addcarryx_u64(x230, x172, x211, &x232);
- { uint64_t x235; uint8_t x236 = _addcarryx_u64(x233, x175, x214, &x235);
- { uint8_t x237 = (x236 + x176);
- { uint64_t x240; uint64_t x239 = _mulx_u64(x9, x15, &x240);
- { uint64_t x243; uint64_t x242 = _mulx_u64(x9, x17, &x243);
- { uint64_t x246; uint64_t x245 = _mulx_u64(x9, x19, &x246);
- { uint64_t x249; uint64_t x248 = _mulx_u64(x9, x21, &x249);
- { uint64_t x252; uint64_t x251 = _mulx_u64(x9, x23, &x252);
- { uint64_t x255; uint64_t x254 = _mulx_u64(x9, x22, &x255);
- { uint64_t x257; uint8_t x258 = _addcarryx_u64(0x0, x240, x242, &x257);
- { uint64_t x260; uint8_t x261 = _addcarryx_u64(x258, x243, x245, &x260);
- { uint64_t x263; uint8_t x264 = _addcarryx_u64(x261, x246, x248, &x263);
- { uint64_t x266; uint8_t x267 = _addcarryx_u64(x264, x249, x251, &x266);
- { uint64_t x269; uint8_t x270 = _addcarryx_u64(x267, x252, x254, &x269);
- { uint64_t x272; uint8_t _ = _addcarryx_u64(0x0, x270, x255, &x272);
- { uint64_t x275; uint8_t x276 = _addcarryx_u64(0x0, x220, x239, &x275);
- { uint64_t x278; uint8_t x279 = _addcarryx_u64(x276, x223, x257, &x278);
- { uint64_t x281; uint8_t x282 = _addcarryx_u64(x279, x226, x260, &x281);
- { uint64_t x284; uint8_t x285 = _addcarryx_u64(x282, x229, x263, &x284);
- { uint64_t x287; uint8_t x288 = _addcarryx_u64(x285, x232, x266, &x287);
- { uint64_t x290; uint8_t x291 = _addcarryx_u64(x288, x235, x269, &x290);
- { uint64_t x293; uint8_t x294 = _addcarryx_u64(x291, x237, x272, &x293);
- { uint64_t _; uint64_t x296 = _mulx_u64(x275, 0xcebeef94fa86fe2dL, &_);
- { uint64_t x300; uint64_t x299 = _mulx_u64(x296, 0xfffffffffffffe5bL, &x300);
- { uint64_t x303; uint64_t x302 = _mulx_u64(x296, 0xffffffffffffffffL, &x303);
- { uint64_t x306; uint64_t x305 = _mulx_u64(x296, 0xffffffffffffffffL, &x306);
- { uint64_t x309; uint64_t x308 = _mulx_u64(x296, 0xffffffffffffffffL, &x309);
- { uint64_t x312; uint64_t x311 = _mulx_u64(x296, 0xffffffffffffffffL, &x312);
- { uint64_t x315; uint64_t x314 = _mulx_u64(x296, 0x7fffffffffffffffL, &x315);
- { uint64_t x317; uint8_t x318 = _addcarryx_u64(0x0, x300, x302, &x317);
- { uint64_t x320; uint8_t x321 = _addcarryx_u64(x318, x303, x305, &x320);
- { uint64_t x323; uint8_t x324 = _addcarryx_u64(x321, x306, x308, &x323);
- { uint64_t x326; uint8_t x327 = _addcarryx_u64(x324, x309, x311, &x326);
- { uint64_t x329; uint8_t x330 = _addcarryx_u64(x327, x312, x314, &x329);
- { uint64_t x332; uint8_t _ = _addcarryx_u64(0x0, x330, x315, &x332);
- { uint64_t _; uint8_t x336 = _addcarryx_u64(0x0, x275, x299, &_);
- { uint64_t x338; uint8_t x339 = _addcarryx_u64(x336, x278, x317, &x338);
- { uint64_t x341; uint8_t x342 = _addcarryx_u64(x339, x281, x320, &x341);
- { uint64_t x344; uint8_t x345 = _addcarryx_u64(x342, x284, x323, &x344);
- { uint64_t x347; uint8_t x348 = _addcarryx_u64(x345, x287, x326, &x347);
- { uint64_t x350; uint8_t x351 = _addcarryx_u64(x348, x290, x329, &x350);
- { uint64_t x353; uint8_t x354 = _addcarryx_u64(x351, x293, x332, &x353);
- { uint8_t x355 = (x354 + x294);
- { uint64_t x358; uint64_t x357 = _mulx_u64(x11, x15, &x358);
- { uint64_t x361; uint64_t x360 = _mulx_u64(x11, x17, &x361);
- { uint64_t x364; uint64_t x363 = _mulx_u64(x11, x19, &x364);
- { uint64_t x367; uint64_t x366 = _mulx_u64(x11, x21, &x367);
- { uint64_t x370; uint64_t x369 = _mulx_u64(x11, x23, &x370);
- { uint64_t x373; uint64_t x372 = _mulx_u64(x11, x22, &x373);
- { uint64_t x375; uint8_t x376 = _addcarryx_u64(0x0, x358, x360, &x375);
- { uint64_t x378; uint8_t x379 = _addcarryx_u64(x376, x361, x363, &x378);
- { uint64_t x381; uint8_t x382 = _addcarryx_u64(x379, x364, x366, &x381);
- { uint64_t x384; uint8_t x385 = _addcarryx_u64(x382, x367, x369, &x384);
- { uint64_t x387; uint8_t x388 = _addcarryx_u64(x385, x370, x372, &x387);
- { uint64_t x390; uint8_t _ = _addcarryx_u64(0x0, x388, x373, &x390);
- { uint64_t x393; uint8_t x394 = _addcarryx_u64(0x0, x338, x357, &x393);
- { uint64_t x396; uint8_t x397 = _addcarryx_u64(x394, x341, x375, &x396);
- { uint64_t x399; uint8_t x400 = _addcarryx_u64(x397, x344, x378, &x399);
- { uint64_t x402; uint8_t x403 = _addcarryx_u64(x400, x347, x381, &x402);
- { uint64_t x405; uint8_t x406 = _addcarryx_u64(x403, x350, x384, &x405);
- { uint64_t x408; uint8_t x409 = _addcarryx_u64(x406, x353, x387, &x408);
- { uint64_t x411; uint8_t x412 = _addcarryx_u64(x409, x355, x390, &x411);
- { uint64_t _; uint64_t x414 = _mulx_u64(x393, 0xcebeef94fa86fe2dL, &_);
- { uint64_t x418; uint64_t x417 = _mulx_u64(x414, 0xfffffffffffffe5bL, &x418);
- { uint64_t x421; uint64_t x420 = _mulx_u64(x414, 0xffffffffffffffffL, &x421);
- { uint64_t x424; uint64_t x423 = _mulx_u64(x414, 0xffffffffffffffffL, &x424);
- { uint64_t x427; uint64_t x426 = _mulx_u64(x414, 0xffffffffffffffffL, &x427);
- { uint64_t x430; uint64_t x429 = _mulx_u64(x414, 0xffffffffffffffffL, &x430);
- { uint64_t x433; uint64_t x432 = _mulx_u64(x414, 0x7fffffffffffffffL, &x433);
- { uint64_t x435; uint8_t x436 = _addcarryx_u64(0x0, x418, x420, &x435);
- { uint64_t x438; uint8_t x439 = _addcarryx_u64(x436, x421, x423, &x438);
- { uint64_t x441; uint8_t x442 = _addcarryx_u64(x439, x424, x426, &x441);
- { uint64_t x444; uint8_t x445 = _addcarryx_u64(x442, x427, x429, &x444);
- { uint64_t x447; uint8_t x448 = _addcarryx_u64(x445, x430, x432, &x447);
- { uint64_t x450; uint8_t _ = _addcarryx_u64(0x0, x448, x433, &x450);
- { uint64_t _; uint8_t x454 = _addcarryx_u64(0x0, x393, x417, &_);
- { uint64_t x456; uint8_t x457 = _addcarryx_u64(x454, x396, x435, &x456);
- { uint64_t x459; uint8_t x460 = _addcarryx_u64(x457, x399, x438, &x459);
- { uint64_t x462; uint8_t x463 = _addcarryx_u64(x460, x402, x441, &x462);
- { uint64_t x465; uint8_t x466 = _addcarryx_u64(x463, x405, x444, &x465);
- { uint64_t x468; uint8_t x469 = _addcarryx_u64(x466, x408, x447, &x468);
- { uint64_t x471; uint8_t x472 = _addcarryx_u64(x469, x411, x450, &x471);
- { uint8_t x473 = (x472 + x412);
- { uint64_t x476; uint64_t x475 = _mulx_u64(x13, x15, &x476);
- { uint64_t x479; uint64_t x478 = _mulx_u64(x13, x17, &x479);
- { uint64_t x482; uint64_t x481 = _mulx_u64(x13, x19, &x482);
- { uint64_t x485; uint64_t x484 = _mulx_u64(x13, x21, &x485);
- { uint64_t x488; uint64_t x487 = _mulx_u64(x13, x23, &x488);
- { uint64_t x491; uint64_t x490 = _mulx_u64(x13, x22, &x491);
- { uint64_t x493; uint8_t x494 = _addcarryx_u64(0x0, x476, x478, &x493);
- { uint64_t x496; uint8_t x497 = _addcarryx_u64(x494, x479, x481, &x496);
- { uint64_t x499; uint8_t x500 = _addcarryx_u64(x497, x482, x484, &x499);
- { uint64_t x502; uint8_t x503 = _addcarryx_u64(x500, x485, x487, &x502);
- { uint64_t x505; uint8_t x506 = _addcarryx_u64(x503, x488, x490, &x505);
- { uint64_t x508; uint8_t _ = _addcarryx_u64(0x0, x506, x491, &x508);
- { uint64_t x511; uint8_t x512 = _addcarryx_u64(0x0, x456, x475, &x511);
- { uint64_t x514; uint8_t x515 = _addcarryx_u64(x512, x459, x493, &x514);
- { uint64_t x517; uint8_t x518 = _addcarryx_u64(x515, x462, x496, &x517);
- { uint64_t x520; uint8_t x521 = _addcarryx_u64(x518, x465, x499, &x520);
- { uint64_t x523; uint8_t x524 = _addcarryx_u64(x521, x468, x502, &x523);
- { uint64_t x526; uint8_t x527 = _addcarryx_u64(x524, x471, x505, &x526);
- { uint64_t x529; uint8_t x530 = _addcarryx_u64(x527, x473, x508, &x529);
- { uint64_t _; uint64_t x532 = _mulx_u64(x511, 0xcebeef94fa86fe2dL, &_);
- { uint64_t x536; uint64_t x535 = _mulx_u64(x532, 0xfffffffffffffe5bL, &x536);
- { uint64_t x539; uint64_t x538 = _mulx_u64(x532, 0xffffffffffffffffL, &x539);
- { uint64_t x542; uint64_t x541 = _mulx_u64(x532, 0xffffffffffffffffL, &x542);
- { uint64_t x545; uint64_t x544 = _mulx_u64(x532, 0xffffffffffffffffL, &x545);
- { uint64_t x548; uint64_t x547 = _mulx_u64(x532, 0xffffffffffffffffL, &x548);
- { uint64_t x551; uint64_t x550 = _mulx_u64(x532, 0x7fffffffffffffffL, &x551);
- { uint64_t x553; uint8_t x554 = _addcarryx_u64(0x0, x536, x538, &x553);
- { uint64_t x556; uint8_t x557 = _addcarryx_u64(x554, x539, x541, &x556);
- { uint64_t x559; uint8_t x560 = _addcarryx_u64(x557, x542, x544, &x559);
- { uint64_t x562; uint8_t x563 = _addcarryx_u64(x560, x545, x547, &x562);
- { uint64_t x565; uint8_t x566 = _addcarryx_u64(x563, x548, x550, &x565);
- { uint64_t x568; uint8_t _ = _addcarryx_u64(0x0, x566, x551, &x568);
- { uint64_t _; uint8_t x572 = _addcarryx_u64(0x0, x511, x535, &_);
- { uint64_t x574; uint8_t x575 = _addcarryx_u64(x572, x514, x553, &x574);
- { uint64_t x577; uint8_t x578 = _addcarryx_u64(x575, x517, x556, &x577);
- { uint64_t x580; uint8_t x581 = _addcarryx_u64(x578, x520, x559, &x580);
- { uint64_t x583; uint8_t x584 = _addcarryx_u64(x581, x523, x562, &x583);
- { uint64_t x586; uint8_t x587 = _addcarryx_u64(x584, x526, x565, &x586);
- { uint64_t x589; uint8_t x590 = _addcarryx_u64(x587, x529, x568, &x589);
- { uint8_t x591 = (x590 + x530);
- { uint64_t x594; uint64_t x593 = _mulx_u64(x12, x15, &x594);
- { uint64_t x597; uint64_t x596 = _mulx_u64(x12, x17, &x597);
- { uint64_t x600; uint64_t x599 = _mulx_u64(x12, x19, &x600);
- { uint64_t x603; uint64_t x602 = _mulx_u64(x12, x21, &x603);
- { uint64_t x606; uint64_t x605 = _mulx_u64(x12, x23, &x606);
- { uint64_t x609; uint64_t x608 = _mulx_u64(x12, x22, &x609);
- { uint64_t x611; uint8_t x612 = _addcarryx_u64(0x0, x594, x596, &x611);
- { uint64_t x614; uint8_t x615 = _addcarryx_u64(x612, x597, x599, &x614);
- { uint64_t x617; uint8_t x618 = _addcarryx_u64(x615, x600, x602, &x617);
- { uint64_t x620; uint8_t x621 = _addcarryx_u64(x618, x603, x605, &x620);
- { uint64_t x623; uint8_t x624 = _addcarryx_u64(x621, x606, x608, &x623);
- { uint64_t x626; uint8_t _ = _addcarryx_u64(0x0, x624, x609, &x626);
- { uint64_t x629; uint8_t x630 = _addcarryx_u64(0x0, x574, x593, &x629);
- { uint64_t x632; uint8_t x633 = _addcarryx_u64(x630, x577, x611, &x632);
- { uint64_t x635; uint8_t x636 = _addcarryx_u64(x633, x580, x614, &x635);
- { uint64_t x638; uint8_t x639 = _addcarryx_u64(x636, x583, x617, &x638);
- { uint64_t x641; uint8_t x642 = _addcarryx_u64(x639, x586, x620, &x641);
- { uint64_t x644; uint8_t x645 = _addcarryx_u64(x642, x589, x623, &x644);
- { uint64_t x647; uint8_t x648 = _addcarryx_u64(x645, x591, x626, &x647);
- { uint64_t _; uint64_t x650 = _mulx_u64(x629, 0xcebeef94fa86fe2dL, &_);
- { uint64_t x654; uint64_t x653 = _mulx_u64(x650, 0xfffffffffffffe5bL, &x654);
- { uint64_t x657; uint64_t x656 = _mulx_u64(x650, 0xffffffffffffffffL, &x657);
- { uint64_t x660; uint64_t x659 = _mulx_u64(x650, 0xffffffffffffffffL, &x660);
- { uint64_t x663; uint64_t x662 = _mulx_u64(x650, 0xffffffffffffffffL, &x663);
- { uint64_t x666; uint64_t x665 = _mulx_u64(x650, 0xffffffffffffffffL, &x666);
- { uint64_t x669; uint64_t x668 = _mulx_u64(x650, 0x7fffffffffffffffL, &x669);
- { uint64_t x671; uint8_t x672 = _addcarryx_u64(0x0, x654, x656, &x671);
- { uint64_t x674; uint8_t x675 = _addcarryx_u64(x672, x657, x659, &x674);
- { uint64_t x677; uint8_t x678 = _addcarryx_u64(x675, x660, x662, &x677);
- { uint64_t x680; uint8_t x681 = _addcarryx_u64(x678, x663, x665, &x680);
- { uint64_t x683; uint8_t x684 = _addcarryx_u64(x681, x666, x668, &x683);
- { uint64_t x686; uint8_t _ = _addcarryx_u64(0x0, x684, x669, &x686);
- { uint64_t _; uint8_t x690 = _addcarryx_u64(0x0, x629, x653, &_);
- { uint64_t x692; uint8_t x693 = _addcarryx_u64(x690, x632, x671, &x692);
- { uint64_t x695; uint8_t x696 = _addcarryx_u64(x693, x635, x674, &x695);
- { uint64_t x698; uint8_t x699 = _addcarryx_u64(x696, x638, x677, &x698);
- { uint64_t x701; uint8_t x702 = _addcarryx_u64(x699, x641, x680, &x701);
- { uint64_t x704; uint8_t x705 = _addcarryx_u64(x702, x644, x683, &x704);
- { uint64_t x707; uint8_t x708 = _addcarryx_u64(x705, x647, x686, &x707);
- { uint8_t x709 = (x708 + x648);
- { uint64_t x711; uint8_t x712 = _subborrow_u64(0x0, x692, 0xfffffffffffffe5bL, &x711);
- { uint64_t x714; uint8_t x715 = _subborrow_u64(x712, x695, 0xffffffffffffffffL, &x714);
- { uint64_t x717; uint8_t x718 = _subborrow_u64(x715, x698, 0xffffffffffffffffL, &x717);
- { uint64_t x720; uint8_t x721 = _subborrow_u64(x718, x701, 0xffffffffffffffffL, &x720);
- { uint64_t x723; uint8_t x724 = _subborrow_u64(x721, x704, 0xffffffffffffffffL, &x723);
- { uint64_t x726; uint8_t x727 = _subborrow_u64(x724, x707, 0x7fffffffffffffffL, &x726);
- { uint64_t _; uint8_t x730 = _subborrow_u64(x727, x709, 0x0, &_);
- { uint64_t x731 = cmovznz64(x730, x726, x707);
- { uint64_t x732 = cmovznz64(x730, x723, x704);
- { uint64_t x733 = cmovznz64(x730, x720, x701);
- { uint64_t x734 = cmovznz64(x730, x717, x698);
- { uint64_t x735 = cmovznz64(x730, x714, x695);
- { uint64_t x736 = cmovznz64(x730, x711, x692);
- out[0] = x736;
- out[1] = x735;
- out[2] = x734;
- out[3] = x733;
- out[4] = x732;
- out[5] = x731;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e383m421_6limbs/femul.v b/src/Specific/montgomery64_2e383m421_6limbs/femul.v
deleted file mode 100644
index d8b72a7c7..000000000
--- a/src/Specific/montgomery64_2e383m421_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e383m421_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e383m421_6limbs/femulDisplay.log b/src/Specific/montgomery64_2e383m421_6limbs/femulDisplay.log
deleted file mode 100644
index 74ffddec5..000000000
--- a/src/Specific/montgomery64_2e383m421_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,252 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint64_t x26 = mulx_u64(x5, x15);
- uint64_t x28, uint64_t x29 = mulx_u64(x5, x17);
- uint64_t x31, uint64_t x32 = mulx_u64(x5, x19);
- uint64_t x34, uint64_t x35 = mulx_u64(x5, x21);
- uint64_t x37, uint64_t x38 = mulx_u64(x5, x23);
- uint64_t x40, uint64_t x41 = mulx_u64(x5, x22);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x26, x28);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x29, x31);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x47, x32, x34);
- uint64_t x52, uint8_t x53 = addcarryx_u64(x50, x35, x37);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x38, x40);
- uint64_t x58, uint8_t _ = addcarryx_u64(0x0, x56, x41);
- uint64_t x61, uint64_t _ = mulx_u64(x25, 0xcebeef94fa86fe2dL);
- uint64_t x64, uint64_t x65 = mulx_u64(x61, 0xfffffffffffffe5bL);
- uint64_t x67, uint64_t x68 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x70, uint64_t x71 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x73, uint64_t x74 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x76, uint64_t x77 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x79, uint64_t x80 = mulx_u64(x61, 0x7fffffffffffffffL);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x65, x67);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x68, x70);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x71, x73);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x74, x76);
- uint64_t x94, uint8_t x95 = addcarryx_u64(x92, x77, x79);
- uint64_t x97, uint8_t _ = addcarryx_u64(0x0, x95, x80);
- uint64_t _, uint8_t x101 = addcarryx_u64(0x0, x25, x64);
- uint64_t x103, uint8_t x104 = addcarryx_u64(x101, x43, x82);
- uint64_t x106, uint8_t x107 = addcarryx_u64(x104, x46, x85);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x49, x88);
- uint64_t x112, uint8_t x113 = addcarryx_u64(x110, x52, x91);
- uint64_t x115, uint8_t x116 = addcarryx_u64(x113, x55, x94);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x58, x97);
- uint64_t x121, uint64_t x122 = mulx_u64(x7, x15);
- uint64_t x124, uint64_t x125 = mulx_u64(x7, x17);
- uint64_t x127, uint64_t x128 = mulx_u64(x7, x19);
- uint64_t x130, uint64_t x131 = mulx_u64(x7, x21);
- uint64_t x133, uint64_t x134 = mulx_u64(x7, x23);
- uint64_t x136, uint64_t x137 = mulx_u64(x7, x22);
- uint64_t x139, uint8_t x140 = addcarryx_u64(0x0, x122, x124);
- uint64_t x142, uint8_t x143 = addcarryx_u64(x140, x125, x127);
- uint64_t x145, uint8_t x146 = addcarryx_u64(x143, x128, x130);
- uint64_t x148, uint8_t x149 = addcarryx_u64(x146, x131, x133);
- uint64_t x151, uint8_t x152 = addcarryx_u64(x149, x134, x136);
- uint64_t x154, uint8_t _ = addcarryx_u64(0x0, x152, x137);
- uint64_t x157, uint8_t x158 = addcarryx_u64(0x0, x103, x121);
- uint64_t x160, uint8_t x161 = addcarryx_u64(x158, x106, x139);
- uint64_t x163, uint8_t x164 = addcarryx_u64(x161, x109, x142);
- uint64_t x166, uint8_t x167 = addcarryx_u64(x164, x112, x145);
- uint64_t x169, uint8_t x170 = addcarryx_u64(x167, x115, x148);
- uint64_t x172, uint8_t x173 = addcarryx_u64(x170, x118, x151);
- uint64_t x175, uint8_t x176 = addcarryx_u64(x173, x119, x154);
- uint64_t x178, uint64_t _ = mulx_u64(x157, 0xcebeef94fa86fe2dL);
- uint64_t x181, uint64_t x182 = mulx_u64(x178, 0xfffffffffffffe5bL);
- uint64_t x184, uint64_t x185 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x187, uint64_t x188 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x190, uint64_t x191 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x193, uint64_t x194 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x196, uint64_t x197 = mulx_u64(x178, 0x7fffffffffffffffL);
- uint64_t x199, uint8_t x200 = addcarryx_u64(0x0, x182, x184);
- uint64_t x202, uint8_t x203 = addcarryx_u64(x200, x185, x187);
- uint64_t x205, uint8_t x206 = addcarryx_u64(x203, x188, x190);
- uint64_t x208, uint8_t x209 = addcarryx_u64(x206, x191, x193);
- uint64_t x211, uint8_t x212 = addcarryx_u64(x209, x194, x196);
- uint64_t x214, uint8_t _ = addcarryx_u64(0x0, x212, x197);
- uint64_t _, uint8_t x218 = addcarryx_u64(0x0, x157, x181);
- uint64_t x220, uint8_t x221 = addcarryx_u64(x218, x160, x199);
- uint64_t x223, uint8_t x224 = addcarryx_u64(x221, x163, x202);
- uint64_t x226, uint8_t x227 = addcarryx_u64(x224, x166, x205);
- uint64_t x229, uint8_t x230 = addcarryx_u64(x227, x169, x208);
- uint64_t x232, uint8_t x233 = addcarryx_u64(x230, x172, x211);
- uint64_t x235, uint8_t x236 = addcarryx_u64(x233, x175, x214);
- uint8_t x237 = (x236 + x176);
- uint64_t x239, uint64_t x240 = mulx_u64(x9, x15);
- uint64_t x242, uint64_t x243 = mulx_u64(x9, x17);
- uint64_t x245, uint64_t x246 = mulx_u64(x9, x19);
- uint64_t x248, uint64_t x249 = mulx_u64(x9, x21);
- uint64_t x251, uint64_t x252 = mulx_u64(x9, x23);
- uint64_t x254, uint64_t x255 = mulx_u64(x9, x22);
- uint64_t x257, uint8_t x258 = addcarryx_u64(0x0, x240, x242);
- uint64_t x260, uint8_t x261 = addcarryx_u64(x258, x243, x245);
- uint64_t x263, uint8_t x264 = addcarryx_u64(x261, x246, x248);
- uint64_t x266, uint8_t x267 = addcarryx_u64(x264, x249, x251);
- uint64_t x269, uint8_t x270 = addcarryx_u64(x267, x252, x254);
- uint64_t x272, uint8_t _ = addcarryx_u64(0x0, x270, x255);
- uint64_t x275, uint8_t x276 = addcarryx_u64(0x0, x220, x239);
- uint64_t x278, uint8_t x279 = addcarryx_u64(x276, x223, x257);
- uint64_t x281, uint8_t x282 = addcarryx_u64(x279, x226, x260);
- uint64_t x284, uint8_t x285 = addcarryx_u64(x282, x229, x263);
- uint64_t x287, uint8_t x288 = addcarryx_u64(x285, x232, x266);
- uint64_t x290, uint8_t x291 = addcarryx_u64(x288, x235, x269);
- uint64_t x293, uint8_t x294 = addcarryx_u64(x291, x237, x272);
- uint64_t x296, uint64_t _ = mulx_u64(x275, 0xcebeef94fa86fe2dL);
- uint64_t x299, uint64_t x300 = mulx_u64(x296, 0xfffffffffffffe5bL);
- uint64_t x302, uint64_t x303 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x305, uint64_t x306 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x308, uint64_t x309 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x311, uint64_t x312 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x314, uint64_t x315 = mulx_u64(x296, 0x7fffffffffffffffL);
- uint64_t x317, uint8_t x318 = addcarryx_u64(0x0, x300, x302);
- uint64_t x320, uint8_t x321 = addcarryx_u64(x318, x303, x305);
- uint64_t x323, uint8_t x324 = addcarryx_u64(x321, x306, x308);
- uint64_t x326, uint8_t x327 = addcarryx_u64(x324, x309, x311);
- uint64_t x329, uint8_t x330 = addcarryx_u64(x327, x312, x314);
- uint64_t x332, uint8_t _ = addcarryx_u64(0x0, x330, x315);
- uint64_t _, uint8_t x336 = addcarryx_u64(0x0, x275, x299);
- uint64_t x338, uint8_t x339 = addcarryx_u64(x336, x278, x317);
- uint64_t x341, uint8_t x342 = addcarryx_u64(x339, x281, x320);
- uint64_t x344, uint8_t x345 = addcarryx_u64(x342, x284, x323);
- uint64_t x347, uint8_t x348 = addcarryx_u64(x345, x287, x326);
- uint64_t x350, uint8_t x351 = addcarryx_u64(x348, x290, x329);
- uint64_t x353, uint8_t x354 = addcarryx_u64(x351, x293, x332);
- uint8_t x355 = (x354 + x294);
- uint64_t x357, uint64_t x358 = mulx_u64(x11, x15);
- uint64_t x360, uint64_t x361 = mulx_u64(x11, x17);
- uint64_t x363, uint64_t x364 = mulx_u64(x11, x19);
- uint64_t x366, uint64_t x367 = mulx_u64(x11, x21);
- uint64_t x369, uint64_t x370 = mulx_u64(x11, x23);
- uint64_t x372, uint64_t x373 = mulx_u64(x11, x22);
- uint64_t x375, uint8_t x376 = addcarryx_u64(0x0, x358, x360);
- uint64_t x378, uint8_t x379 = addcarryx_u64(x376, x361, x363);
- uint64_t x381, uint8_t x382 = addcarryx_u64(x379, x364, x366);
- uint64_t x384, uint8_t x385 = addcarryx_u64(x382, x367, x369);
- uint64_t x387, uint8_t x388 = addcarryx_u64(x385, x370, x372);
- uint64_t x390, uint8_t _ = addcarryx_u64(0x0, x388, x373);
- uint64_t x393, uint8_t x394 = addcarryx_u64(0x0, x338, x357);
- uint64_t x396, uint8_t x397 = addcarryx_u64(x394, x341, x375);
- uint64_t x399, uint8_t x400 = addcarryx_u64(x397, x344, x378);
- uint64_t x402, uint8_t x403 = addcarryx_u64(x400, x347, x381);
- uint64_t x405, uint8_t x406 = addcarryx_u64(x403, x350, x384);
- uint64_t x408, uint8_t x409 = addcarryx_u64(x406, x353, x387);
- uint64_t x411, uint8_t x412 = addcarryx_u64(x409, x355, x390);
- uint64_t x414, uint64_t _ = mulx_u64(x393, 0xcebeef94fa86fe2dL);
- uint64_t x417, uint64_t x418 = mulx_u64(x414, 0xfffffffffffffe5bL);
- uint64_t x420, uint64_t x421 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x423, uint64_t x424 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x426, uint64_t x427 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x429, uint64_t x430 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x432, uint64_t x433 = mulx_u64(x414, 0x7fffffffffffffffL);
- uint64_t x435, uint8_t x436 = addcarryx_u64(0x0, x418, x420);
- uint64_t x438, uint8_t x439 = addcarryx_u64(x436, x421, x423);
- uint64_t x441, uint8_t x442 = addcarryx_u64(x439, x424, x426);
- uint64_t x444, uint8_t x445 = addcarryx_u64(x442, x427, x429);
- uint64_t x447, uint8_t x448 = addcarryx_u64(x445, x430, x432);
- uint64_t x450, uint8_t _ = addcarryx_u64(0x0, x448, x433);
- uint64_t _, uint8_t x454 = addcarryx_u64(0x0, x393, x417);
- uint64_t x456, uint8_t x457 = addcarryx_u64(x454, x396, x435);
- uint64_t x459, uint8_t x460 = addcarryx_u64(x457, x399, x438);
- uint64_t x462, uint8_t x463 = addcarryx_u64(x460, x402, x441);
- uint64_t x465, uint8_t x466 = addcarryx_u64(x463, x405, x444);
- uint64_t x468, uint8_t x469 = addcarryx_u64(x466, x408, x447);
- uint64_t x471, uint8_t x472 = addcarryx_u64(x469, x411, x450);
- uint8_t x473 = (x472 + x412);
- uint64_t x475, uint64_t x476 = mulx_u64(x13, x15);
- uint64_t x478, uint64_t x479 = mulx_u64(x13, x17);
- uint64_t x481, uint64_t x482 = mulx_u64(x13, x19);
- uint64_t x484, uint64_t x485 = mulx_u64(x13, x21);
- uint64_t x487, uint64_t x488 = mulx_u64(x13, x23);
- uint64_t x490, uint64_t x491 = mulx_u64(x13, x22);
- uint64_t x493, uint8_t x494 = addcarryx_u64(0x0, x476, x478);
- uint64_t x496, uint8_t x497 = addcarryx_u64(x494, x479, x481);
- uint64_t x499, uint8_t x500 = addcarryx_u64(x497, x482, x484);
- uint64_t x502, uint8_t x503 = addcarryx_u64(x500, x485, x487);
- uint64_t x505, uint8_t x506 = addcarryx_u64(x503, x488, x490);
- uint64_t x508, uint8_t _ = addcarryx_u64(0x0, x506, x491);
- uint64_t x511, uint8_t x512 = addcarryx_u64(0x0, x456, x475);
- uint64_t x514, uint8_t x515 = addcarryx_u64(x512, x459, x493);
- uint64_t x517, uint8_t x518 = addcarryx_u64(x515, x462, x496);
- uint64_t x520, uint8_t x521 = addcarryx_u64(x518, x465, x499);
- uint64_t x523, uint8_t x524 = addcarryx_u64(x521, x468, x502);
- uint64_t x526, uint8_t x527 = addcarryx_u64(x524, x471, x505);
- uint64_t x529, uint8_t x530 = addcarryx_u64(x527, x473, x508);
- uint64_t x532, uint64_t _ = mulx_u64(x511, 0xcebeef94fa86fe2dL);
- uint64_t x535, uint64_t x536 = mulx_u64(x532, 0xfffffffffffffe5bL);
- uint64_t x538, uint64_t x539 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x541, uint64_t x542 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x544, uint64_t x545 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x547, uint64_t x548 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x550, uint64_t x551 = mulx_u64(x532, 0x7fffffffffffffffL);
- uint64_t x553, uint8_t x554 = addcarryx_u64(0x0, x536, x538);
- uint64_t x556, uint8_t x557 = addcarryx_u64(x554, x539, x541);
- uint64_t x559, uint8_t x560 = addcarryx_u64(x557, x542, x544);
- uint64_t x562, uint8_t x563 = addcarryx_u64(x560, x545, x547);
- uint64_t x565, uint8_t x566 = addcarryx_u64(x563, x548, x550);
- uint64_t x568, uint8_t _ = addcarryx_u64(0x0, x566, x551);
- uint64_t _, uint8_t x572 = addcarryx_u64(0x0, x511, x535);
- uint64_t x574, uint8_t x575 = addcarryx_u64(x572, x514, x553);
- uint64_t x577, uint8_t x578 = addcarryx_u64(x575, x517, x556);
- uint64_t x580, uint8_t x581 = addcarryx_u64(x578, x520, x559);
- uint64_t x583, uint8_t x584 = addcarryx_u64(x581, x523, x562);
- uint64_t x586, uint8_t x587 = addcarryx_u64(x584, x526, x565);
- uint64_t x589, uint8_t x590 = addcarryx_u64(x587, x529, x568);
- uint8_t x591 = (x590 + x530);
- uint64_t x593, uint64_t x594 = mulx_u64(x12, x15);
- uint64_t x596, uint64_t x597 = mulx_u64(x12, x17);
- uint64_t x599, uint64_t x600 = mulx_u64(x12, x19);
- uint64_t x602, uint64_t x603 = mulx_u64(x12, x21);
- uint64_t x605, uint64_t x606 = mulx_u64(x12, x23);
- uint64_t x608, uint64_t x609 = mulx_u64(x12, x22);
- uint64_t x611, uint8_t x612 = addcarryx_u64(0x0, x594, x596);
- uint64_t x614, uint8_t x615 = addcarryx_u64(x612, x597, x599);
- uint64_t x617, uint8_t x618 = addcarryx_u64(x615, x600, x602);
- uint64_t x620, uint8_t x621 = addcarryx_u64(x618, x603, x605);
- uint64_t x623, uint8_t x624 = addcarryx_u64(x621, x606, x608);
- uint64_t x626, uint8_t _ = addcarryx_u64(0x0, x624, x609);
- uint64_t x629, uint8_t x630 = addcarryx_u64(0x0, x574, x593);
- uint64_t x632, uint8_t x633 = addcarryx_u64(x630, x577, x611);
- uint64_t x635, uint8_t x636 = addcarryx_u64(x633, x580, x614);
- uint64_t x638, uint8_t x639 = addcarryx_u64(x636, x583, x617);
- uint64_t x641, uint8_t x642 = addcarryx_u64(x639, x586, x620);
- uint64_t x644, uint8_t x645 = addcarryx_u64(x642, x589, x623);
- uint64_t x647, uint8_t x648 = addcarryx_u64(x645, x591, x626);
- uint64_t x650, uint64_t _ = mulx_u64(x629, 0xcebeef94fa86fe2dL);
- uint64_t x653, uint64_t x654 = mulx_u64(x650, 0xfffffffffffffe5bL);
- uint64_t x656, uint64_t x657 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x659, uint64_t x660 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x662, uint64_t x663 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x665, uint64_t x666 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x668, uint64_t x669 = mulx_u64(x650, 0x7fffffffffffffffL);
- uint64_t x671, uint8_t x672 = addcarryx_u64(0x0, x654, x656);
- uint64_t x674, uint8_t x675 = addcarryx_u64(x672, x657, x659);
- uint64_t x677, uint8_t x678 = addcarryx_u64(x675, x660, x662);
- uint64_t x680, uint8_t x681 = addcarryx_u64(x678, x663, x665);
- uint64_t x683, uint8_t x684 = addcarryx_u64(x681, x666, x668);
- uint64_t x686, uint8_t _ = addcarryx_u64(0x0, x684, x669);
- uint64_t _, uint8_t x690 = addcarryx_u64(0x0, x629, x653);
- uint64_t x692, uint8_t x693 = addcarryx_u64(x690, x632, x671);
- uint64_t x695, uint8_t x696 = addcarryx_u64(x693, x635, x674);
- uint64_t x698, uint8_t x699 = addcarryx_u64(x696, x638, x677);
- uint64_t x701, uint8_t x702 = addcarryx_u64(x699, x641, x680);
- uint64_t x704, uint8_t x705 = addcarryx_u64(x702, x644, x683);
- uint64_t x707, uint8_t x708 = addcarryx_u64(x705, x647, x686);
- uint8_t x709 = (x708 + x648);
- uint64_t x711, uint8_t x712 = subborrow_u64(0x0, x692, 0xfffffffffffffe5bL);
- uint64_t x714, uint8_t x715 = subborrow_u64(x712, x695, 0xffffffffffffffffL);
- uint64_t x717, uint8_t x718 = subborrow_u64(x715, x698, 0xffffffffffffffffL);
- uint64_t x720, uint8_t x721 = subborrow_u64(x718, x701, 0xffffffffffffffffL);
- uint64_t x723, uint8_t x724 = subborrow_u64(x721, x704, 0xffffffffffffffffL);
- uint64_t x726, uint8_t x727 = subborrow_u64(x724, x707, 0x7fffffffffffffffL);
- uint64_t _, uint8_t x730 = subborrow_u64(x727, x709, 0x0);
- uint64_t x731 = cmovznz64(x730, x726, x707);
- uint64_t x732 = cmovznz64(x730, x723, x704);
- uint64_t x733 = cmovznz64(x730, x720, x701);
- uint64_t x734 = cmovznz64(x730, x717, x698);
- uint64_t x735 = cmovznz64(x730, x714, x695);
- uint64_t x736 = cmovznz64(x730, x711, x692);
- return (x731, x732, x733, x734, x735, x736))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e383m421_6limbs/femulDisplay.v b/src/Specific/montgomery64_2e383m421_6limbs/femulDisplay.v
deleted file mode 100644
index 1ad3cec4b..000000000
--- a/src/Specific/montgomery64_2e383m421_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e383m421_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e383m421_6limbs/fenz.c b/src/Specific/montgomery64_2e383m421_6limbs/fenz.c
deleted file mode 100644
index c93f74257..000000000
--- a/src/Specific/montgomery64_2e383m421_6limbs/fenz.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x11 = (x10 | x9);
- { uint64_t x12 = (x8 | x11);
- { uint64_t x13 = (x6 | x12);
- { uint64_t x14 = (x4 | x13);
- { uint64_t x15 = (x2 | x14);
- out[0] = x15;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e383m421_6limbs/fenz.v b/src/Specific/montgomery64_2e383m421_6limbs/fenz.v
deleted file mode 100644
index 7a27a012f..000000000
--- a/src/Specific/montgomery64_2e383m421_6limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e383m421_6limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e383m421_6limbs/fenzDisplay.log b/src/Specific/montgomery64_2e383m421_6limbs/fenzDisplay.log
deleted file mode 100644
index f39f1d91b..000000000
--- a/src/Specific/montgomery64_2e383m421_6limbs/fenzDisplay.log
+++ /dev/null
@@ -1,12 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x11 = (x10 | x9);
- uint64_t x12 = (x8 | x11);
- uint64_t x13 = (x6 | x12);
- uint64_t x14 = (x4 | x13);
- uint64_t x15 = (x2 | x14);
- return x15)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e383m421_6limbs/fenzDisplay.v b/src/Specific/montgomery64_2e383m421_6limbs/fenzDisplay.v
deleted file mode 100644
index e18170690..000000000
--- a/src/Specific/montgomery64_2e383m421_6limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e383m421_6limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e383m421_6limbs/feopp.c b/src/Specific/montgomery64_2e383m421_6limbs/feopp.c
deleted file mode 100644
index 0139d56bd..000000000
--- a/src/Specific/montgomery64_2e383m421_6limbs/feopp.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feopp(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12; uint8_t x13 = _subborrow_u64(0x0, 0x0, x2, &x12);
- { uint64_t x15; uint8_t x16 = _subborrow_u64(x13, 0x0, x4, &x15);
- { uint64_t x18; uint8_t x19 = _subborrow_u64(x16, 0x0, x6, &x18);
- { uint64_t x21; uint8_t x22 = _subborrow_u64(x19, 0x0, x8, &x21);
- { uint64_t x24; uint8_t x25 = _subborrow_u64(x22, 0x0, x10, &x24);
- { uint64_t x27; uint8_t x28 = _subborrow_u64(x25, 0x0, x9, &x27);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0xfffffffffffffe5bL);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(0x0, x12, x30, &x32);
- { uint64_t x34 = (x29 & 0xffffffffffffffffL);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x33, x15, x34, &x36);
- { uint64_t x38 = (x29 & 0xffffffffffffffffL);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x37, x18, x38, &x40);
- { uint64_t x42 = (x29 & 0xffffffffffffffffL);
- { uint64_t x44; uint8_t x45 = _addcarryx_u64(x41, x21, x42, &x44);
- { uint64_t x46 = (x29 & 0xffffffffffffffffL);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x45, x24, x46, &x48);
- { uint64_t x50 = (x29 & 0x7fffffffffffffffL);
- { uint64_t x52; uint8_t _ = _addcarryx_u64(x49, x27, x50, &x52);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e383m421_6limbs/feopp.v b/src/Specific/montgomery64_2e383m421_6limbs/feopp.v
deleted file mode 100644
index 11d9c9cf3..000000000
--- a/src/Specific/montgomery64_2e383m421_6limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e383m421_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e383m421_6limbs/feoppDisplay.log b/src/Specific/montgomery64_2e383m421_6limbs/feoppDisplay.log
deleted file mode 100644
index 53b451dbb..000000000
--- a/src/Specific/montgomery64_2e383m421_6limbs/feoppDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x15, uint8_t x16 = subborrow_u64(x13, 0x0, x4);
- uint64_t x18, uint8_t x19 = subborrow_u64(x16, 0x0, x6);
- uint64_t x21, uint8_t x22 = subborrow_u64(x19, 0x0, x8);
- uint64_t x24, uint8_t x25 = subborrow_u64(x22, 0x0, x10);
- uint64_t x27, uint8_t x28 = subborrow_u64(x25, 0x0, x9);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0xfffffffffffffe5bL);
- uint64_t x32, uint8_t x33 = addcarryx_u64(0x0, x12, x30);
- uint64_t x34 = (x29 & 0xffffffffffffffffL);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x33, x15, x34);
- uint64_t x38 = (x29 & 0xffffffffffffffffL);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x37, x18, x38);
- uint64_t x42 = (x29 & 0xffffffffffffffffL);
- uint64_t x44, uint8_t x45 = addcarryx_u64(x41, x21, x42);
- uint64_t x46 = (x29 & 0xffffffffffffffffL);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x45, x24, x46);
- uint64_t x50 = (x29 & 0x7fffffffffffffffL);
- uint64_t x52, uint8_t _ = addcarryx_u64(x49, x27, x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e383m421_6limbs/feoppDisplay.v b/src/Specific/montgomery64_2e383m421_6limbs/feoppDisplay.v
deleted file mode 100644
index 26b045ec6..000000000
--- a/src/Specific/montgomery64_2e383m421_6limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e383m421_6limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e383m421_6limbs/fesquare.c b/src/Specific/montgomery64_2e383m421_6limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e383m421_6limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e383m421_6limbs/fesub.c b/src/Specific/montgomery64_2e383m421_6limbs/fesub.c
deleted file mode 100644
index 6d05dc19e..000000000
--- a/src/Specific/montgomery64_2e383m421_6limbs/fesub.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _subborrow_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _subborrow_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _subborrow_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _subborrow_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _subborrow_u64(x38, x12, x22, &x40);
- { uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- { uint64_t x43 = (x42 & 0xfffffffffffffe5bL);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(0x0, x25, x43, &x45);
- { uint64_t x47 = (x42 & 0xffffffffffffffffL);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x46, x28, x47, &x49);
- { uint64_t x51 = (x42 & 0xffffffffffffffffL);
- { uint64_t x53; uint8_t x54 = _addcarryx_u64(x50, x31, x51, &x53);
- { uint64_t x55 = (x42 & 0xffffffffffffffffL);
- { uint64_t x57; uint8_t x58 = _addcarryx_u64(x54, x34, x55, &x57);
- { uint64_t x59 = (x42 & 0xffffffffffffffffL);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x58, x37, x59, &x61);
- { uint64_t x63 = (x42 & 0x7fffffffffffffffL);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(x62, x40, x63, &x65);
- out[0] = x45;
- out[1] = x49;
- out[2] = x53;
- out[3] = x57;
- out[4] = x61;
- out[5] = x65;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e383m421_6limbs/fesub.v b/src/Specific/montgomery64_2e383m421_6limbs/fesub.v
deleted file mode 100644
index 2e59a4263..000000000
--- a/src/Specific/montgomery64_2e383m421_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e383m421_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e383m421_6limbs/fesubDisplay.log b/src/Specific/montgomery64_2e383m421_6limbs/fesubDisplay.log
deleted file mode 100644
index f6d3bd616..000000000
--- a/src/Specific/montgomery64_2e383m421_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = subborrow_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = subborrow_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = subborrow_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = subborrow_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = subborrow_u64(x38, x12, x22);
- uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- uint64_t x43 = (x42 & 0xfffffffffffffe5bL);
- uint64_t x45, uint8_t x46 = addcarryx_u64(0x0, x25, x43);
- uint64_t x47 = (x42 & 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x46, x28, x47);
- uint64_t x51 = (x42 & 0xffffffffffffffffL);
- uint64_t x53, uint8_t x54 = addcarryx_u64(x50, x31, x51);
- uint64_t x55 = (x42 & 0xffffffffffffffffL);
- uint64_t x57, uint8_t x58 = addcarryx_u64(x54, x34, x55);
- uint64_t x59 = (x42 & 0xffffffffffffffffL);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x58, x37, x59);
- uint64_t x63 = (x42 & 0x7fffffffffffffffL);
- uint64_t x65, uint8_t _ = addcarryx_u64(x62, x40, x63);
- (Return x65, Return x61, Return x57, Return x53, Return x49, Return x45))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e383m421_6limbs/fesubDisplay.v b/src/Specific/montgomery64_2e383m421_6limbs/fesubDisplay.v
deleted file mode 100644
index c38b2eaff..000000000
--- a/src/Specific/montgomery64_2e383m421_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e383m421_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e383m421_6limbs/py_interpreter.sh b/src/Specific/montgomery64_2e383m421_6limbs/py_interpreter.sh
deleted file mode 100755
index 7a586c0db..000000000
--- a/src/Specific/montgomery64_2e383m421_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**383 - 421' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/CurveParameters.v b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/CurveParameters.v
deleted file mode 100644
index 406a8de00..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^384 - 2^128 - 2^96 + 2^32 - 1
-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)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/Synthesis.v b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/Synthesis.v
deleted file mode 100644
index 92b98a050..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e384m2e128m2e96p2e32m1_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/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/compiler.sh b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/compiler.sh
deleted file mode 100755
index fcf2a8557..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/compilerxx.sh b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/compilerxx.sh
deleted file mode 100755
index 61ceb8a5c..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feadd.c b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feadd.c
deleted file mode 100644
index ac69883a5..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feadd.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _addcarryx_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _addcarryx_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x38, x12, x22, &x40);
- { uint64_t x43; uint8_t x44 = _subborrow_u64(0x0, x25, 0xffffffff, &x43);
- { uint64_t x46; uint8_t x47 = _subborrow_u64(x44, x28, 0xffffffff00000000L, &x46);
- { uint64_t x49; uint8_t x50 = _subborrow_u64(x47, x31, 0xfffffffffffffffeL, &x49);
- { uint64_t x52; uint8_t x53 = _subborrow_u64(x50, x34, 0xffffffffffffffffL, &x52);
- { uint64_t x55; uint8_t x56 = _subborrow_u64(x53, x37, 0xffffffffffffffffL, &x55);
- { uint64_t x58; uint8_t x59 = _subborrow_u64(x56, x40, 0xffffffffffffffffL, &x58);
- { uint64_t _; uint8_t x62 = _subborrow_u64(x59, x41, 0x0, &_);
- { uint64_t x63 = cmovznz64(x62, x58, x40);
- { uint64_t x64 = cmovznz64(x62, x55, x37);
- { uint64_t x65 = cmovznz64(x62, x52, x34);
- { uint64_t x66 = cmovznz64(x62, x49, x31);
- { uint64_t x67 = cmovznz64(x62, x46, x28);
- { uint64_t x68 = cmovznz64(x62, x43, x25);
- out[0] = x68;
- out[1] = x67;
- out[2] = x66;
- out[3] = x65;
- out[4] = x64;
- out[5] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feadd.v b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feadd.v
deleted file mode 100644
index 92d74f4df..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e384m2e128m2e96p2e32m1_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feaddDisplay.log b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feaddDisplay.log
deleted file mode 100644
index 82253f65f..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = addcarryx_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = addcarryx_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = addcarryx_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = addcarryx_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x38, x12, x22);
- uint64_t x43, uint8_t x44 = subborrow_u64(0x0, x25, 0xffffffff);
- uint64_t x46, uint8_t x47 = subborrow_u64(x44, x28, 0xffffffff00000000L);
- uint64_t x49, uint8_t x50 = subborrow_u64(x47, x31, 0xfffffffffffffffeL);
- uint64_t x52, uint8_t x53 = subborrow_u64(x50, x34, 0xffffffffffffffffL);
- uint64_t x55, uint8_t x56 = subborrow_u64(x53, x37, 0xffffffffffffffffL);
- uint64_t x58, uint8_t x59 = subborrow_u64(x56, x40, 0xffffffffffffffffL);
- uint64_t _, uint8_t x62 = subborrow_u64(x59, x41, 0x0);
- uint64_t x63 = cmovznz64(x62, x58, x40);
- uint64_t x64 = cmovznz64(x62, x55, x37);
- uint64_t x65 = cmovznz64(x62, x52, x34);
- uint64_t x66 = cmovznz64(x62, x49, x31);
- uint64_t x67 = cmovznz64(x62, x46, x28);
- uint64_t x68 = cmovznz64(x62, x43, x25);
- return (x63, x64, x65, x66, x67, x68))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feaddDisplay.v b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feaddDisplay.v
deleted file mode 100644
index 7bb6a9648..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e384m2e128m2e96p2e32m1_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/femul.c b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/femul.c
deleted file mode 100644
index 77fcb4861..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/femul.c
+++ /dev/null
@@ -1,266 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x26; uint64_t x25 = _mulx_u64(x5, x15, &x26);
- { uint64_t x29; uint64_t x28 = _mulx_u64(x5, x17, &x29);
- { uint64_t x32; uint64_t x31 = _mulx_u64(x5, x19, &x32);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x5, x21, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x5, x23, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x5, x22, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x26, x28, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x29, x31, &x46);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x47, x32, x34, &x49);
- { uint64_t x52; uint8_t x53 = _addcarryx_u64(x50, x35, x37, &x52);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x38, x40, &x55);
- { uint64_t x58; uint8_t _ = _addcarryx_u64(0x0, x56, x41, &x58);
- { uint64_t _; uint64_t x61 = _mulx_u64(x25, 0x100000001, &_);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x61, 0xffffffff, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x61, 0xffffffff00000000L, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x61, 0xfffffffffffffffeL, &x71);
- { uint64_t x74; uint64_t x73 = _mulx_u64(x61, 0xffffffffffffffffL, &x74);
- { uint64_t x77; uint64_t x76 = _mulx_u64(x61, 0xffffffffffffffffL, &x77);
- { uint64_t x80; uint64_t x79 = _mulx_u64(x61, 0xffffffffffffffffL, &x80);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x65, x67, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x68, x70, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x71, x73, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x74, x76, &x91);
- { uint64_t x94; uint8_t x95 = _addcarryx_u64(x92, x77, x79, &x94);
- { uint64_t x97; uint8_t _ = _addcarryx_u64(0x0, x95, x80, &x97);
- { uint64_t _; uint8_t x101 = _addcarryx_u64(0x0, x25, x64, &_);
- { uint64_t x103; uint8_t x104 = _addcarryx_u64(x101, x43, x82, &x103);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(x104, x46, x85, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x49, x88, &x109);
- { uint64_t x112; uint8_t x113 = _addcarryx_u64(x110, x52, x91, &x112);
- { uint64_t x115; uint8_t x116 = _addcarryx_u64(x113, x55, x94, &x115);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x58, x97, &x118);
- { uint64_t x122; uint64_t x121 = _mulx_u64(x7, x15, &x122);
- { uint64_t x125; uint64_t x124 = _mulx_u64(x7, x17, &x125);
- { uint64_t x128; uint64_t x127 = _mulx_u64(x7, x19, &x128);
- { uint64_t x131; uint64_t x130 = _mulx_u64(x7, x21, &x131);
- { uint64_t x134; uint64_t x133 = _mulx_u64(x7, x23, &x134);
- { uint64_t x137; uint64_t x136 = _mulx_u64(x7, x22, &x137);
- { uint64_t x139; uint8_t x140 = _addcarryx_u64(0x0, x122, x124, &x139);
- { uint64_t x142; uint8_t x143 = _addcarryx_u64(x140, x125, x127, &x142);
- { uint64_t x145; uint8_t x146 = _addcarryx_u64(x143, x128, x130, &x145);
- { uint64_t x148; uint8_t x149 = _addcarryx_u64(x146, x131, x133, &x148);
- { uint64_t x151; uint8_t x152 = _addcarryx_u64(x149, x134, x136, &x151);
- { uint64_t x154; uint8_t _ = _addcarryx_u64(0x0, x152, x137, &x154);
- { uint64_t x157; uint8_t x158 = _addcarryx_u64(0x0, x103, x121, &x157);
- { uint64_t x160; uint8_t x161 = _addcarryx_u64(x158, x106, x139, &x160);
- { uint64_t x163; uint8_t x164 = _addcarryx_u64(x161, x109, x142, &x163);
- { uint64_t x166; uint8_t x167 = _addcarryx_u64(x164, x112, x145, &x166);
- { uint64_t x169; uint8_t x170 = _addcarryx_u64(x167, x115, x148, &x169);
- { uint64_t x172; uint8_t x173 = _addcarryx_u64(x170, x118, x151, &x172);
- { uint64_t x175; uint8_t x176 = _addcarryx_u64(x173, x119, x154, &x175);
- { uint64_t _; uint64_t x178 = _mulx_u64(x157, 0x100000001, &_);
- { uint64_t x182; uint64_t x181 = _mulx_u64(x178, 0xffffffff, &x182);
- { uint64_t x185; uint64_t x184 = _mulx_u64(x178, 0xffffffff00000000L, &x185);
- { uint64_t x188; uint64_t x187 = _mulx_u64(x178, 0xfffffffffffffffeL, &x188);
- { uint64_t x191; uint64_t x190 = _mulx_u64(x178, 0xffffffffffffffffL, &x191);
- { uint64_t x194; uint64_t x193 = _mulx_u64(x178, 0xffffffffffffffffL, &x194);
- { uint64_t x197; uint64_t x196 = _mulx_u64(x178, 0xffffffffffffffffL, &x197);
- { uint64_t x199; uint8_t x200 = _addcarryx_u64(0x0, x182, x184, &x199);
- { uint64_t x202; uint8_t x203 = _addcarryx_u64(x200, x185, x187, &x202);
- { uint64_t x205; uint8_t x206 = _addcarryx_u64(x203, x188, x190, &x205);
- { uint64_t x208; uint8_t x209 = _addcarryx_u64(x206, x191, x193, &x208);
- { uint64_t x211; uint8_t x212 = _addcarryx_u64(x209, x194, x196, &x211);
- { uint64_t x214; uint8_t _ = _addcarryx_u64(0x0, x212, x197, &x214);
- { uint64_t _; uint8_t x218 = _addcarryx_u64(0x0, x157, x181, &_);
- { uint64_t x220; uint8_t x221 = _addcarryx_u64(x218, x160, x199, &x220);
- { uint64_t x223; uint8_t x224 = _addcarryx_u64(x221, x163, x202, &x223);
- { uint64_t x226; uint8_t x227 = _addcarryx_u64(x224, x166, x205, &x226);
- { uint64_t x229; uint8_t x230 = _addcarryx_u64(x227, x169, x208, &x229);
- { uint64_t x232; uint8_t x233 = _addcarryx_u64(x230, x172, x211, &x232);
- { uint64_t x235; uint8_t x236 = _addcarryx_u64(x233, x175, x214, &x235);
- { uint8_t x237 = (x236 + x176);
- { uint64_t x240; uint64_t x239 = _mulx_u64(x9, x15, &x240);
- { uint64_t x243; uint64_t x242 = _mulx_u64(x9, x17, &x243);
- { uint64_t x246; uint64_t x245 = _mulx_u64(x9, x19, &x246);
- { uint64_t x249; uint64_t x248 = _mulx_u64(x9, x21, &x249);
- { uint64_t x252; uint64_t x251 = _mulx_u64(x9, x23, &x252);
- { uint64_t x255; uint64_t x254 = _mulx_u64(x9, x22, &x255);
- { uint64_t x257; uint8_t x258 = _addcarryx_u64(0x0, x240, x242, &x257);
- { uint64_t x260; uint8_t x261 = _addcarryx_u64(x258, x243, x245, &x260);
- { uint64_t x263; uint8_t x264 = _addcarryx_u64(x261, x246, x248, &x263);
- { uint64_t x266; uint8_t x267 = _addcarryx_u64(x264, x249, x251, &x266);
- { uint64_t x269; uint8_t x270 = _addcarryx_u64(x267, x252, x254, &x269);
- { uint64_t x272; uint8_t _ = _addcarryx_u64(0x0, x270, x255, &x272);
- { uint64_t x275; uint8_t x276 = _addcarryx_u64(0x0, x220, x239, &x275);
- { uint64_t x278; uint8_t x279 = _addcarryx_u64(x276, x223, x257, &x278);
- { uint64_t x281; uint8_t x282 = _addcarryx_u64(x279, x226, x260, &x281);
- { uint64_t x284; uint8_t x285 = _addcarryx_u64(x282, x229, x263, &x284);
- { uint64_t x287; uint8_t x288 = _addcarryx_u64(x285, x232, x266, &x287);
- { uint64_t x290; uint8_t x291 = _addcarryx_u64(x288, x235, x269, &x290);
- { uint64_t x293; uint8_t x294 = _addcarryx_u64(x291, x237, x272, &x293);
- { uint64_t _; uint64_t x296 = _mulx_u64(x275, 0x100000001, &_);
- { uint64_t x300; uint64_t x299 = _mulx_u64(x296, 0xffffffff, &x300);
- { uint64_t x303; uint64_t x302 = _mulx_u64(x296, 0xffffffff00000000L, &x303);
- { uint64_t x306; uint64_t x305 = _mulx_u64(x296, 0xfffffffffffffffeL, &x306);
- { uint64_t x309; uint64_t x308 = _mulx_u64(x296, 0xffffffffffffffffL, &x309);
- { uint64_t x312; uint64_t x311 = _mulx_u64(x296, 0xffffffffffffffffL, &x312);
- { uint64_t x315; uint64_t x314 = _mulx_u64(x296, 0xffffffffffffffffL, &x315);
- { uint64_t x317; uint8_t x318 = _addcarryx_u64(0x0, x300, x302, &x317);
- { uint64_t x320; uint8_t x321 = _addcarryx_u64(x318, x303, x305, &x320);
- { uint64_t x323; uint8_t x324 = _addcarryx_u64(x321, x306, x308, &x323);
- { uint64_t x326; uint8_t x327 = _addcarryx_u64(x324, x309, x311, &x326);
- { uint64_t x329; uint8_t x330 = _addcarryx_u64(x327, x312, x314, &x329);
- { uint64_t x332; uint8_t _ = _addcarryx_u64(0x0, x330, x315, &x332);
- { uint64_t _; uint8_t x336 = _addcarryx_u64(0x0, x275, x299, &_);
- { uint64_t x338; uint8_t x339 = _addcarryx_u64(x336, x278, x317, &x338);
- { uint64_t x341; uint8_t x342 = _addcarryx_u64(x339, x281, x320, &x341);
- { uint64_t x344; uint8_t x345 = _addcarryx_u64(x342, x284, x323, &x344);
- { uint64_t x347; uint8_t x348 = _addcarryx_u64(x345, x287, x326, &x347);
- { uint64_t x350; uint8_t x351 = _addcarryx_u64(x348, x290, x329, &x350);
- { uint64_t x353; uint8_t x354 = _addcarryx_u64(x351, x293, x332, &x353);
- { uint8_t x355 = (x354 + x294);
- { uint64_t x358; uint64_t x357 = _mulx_u64(x11, x15, &x358);
- { uint64_t x361; uint64_t x360 = _mulx_u64(x11, x17, &x361);
- { uint64_t x364; uint64_t x363 = _mulx_u64(x11, x19, &x364);
- { uint64_t x367; uint64_t x366 = _mulx_u64(x11, x21, &x367);
- { uint64_t x370; uint64_t x369 = _mulx_u64(x11, x23, &x370);
- { uint64_t x373; uint64_t x372 = _mulx_u64(x11, x22, &x373);
- { uint64_t x375; uint8_t x376 = _addcarryx_u64(0x0, x358, x360, &x375);
- { uint64_t x378; uint8_t x379 = _addcarryx_u64(x376, x361, x363, &x378);
- { uint64_t x381; uint8_t x382 = _addcarryx_u64(x379, x364, x366, &x381);
- { uint64_t x384; uint8_t x385 = _addcarryx_u64(x382, x367, x369, &x384);
- { uint64_t x387; uint8_t x388 = _addcarryx_u64(x385, x370, x372, &x387);
- { uint64_t x390; uint8_t _ = _addcarryx_u64(0x0, x388, x373, &x390);
- { uint64_t x393; uint8_t x394 = _addcarryx_u64(0x0, x338, x357, &x393);
- { uint64_t x396; uint8_t x397 = _addcarryx_u64(x394, x341, x375, &x396);
- { uint64_t x399; uint8_t x400 = _addcarryx_u64(x397, x344, x378, &x399);
- { uint64_t x402; uint8_t x403 = _addcarryx_u64(x400, x347, x381, &x402);
- { uint64_t x405; uint8_t x406 = _addcarryx_u64(x403, x350, x384, &x405);
- { uint64_t x408; uint8_t x409 = _addcarryx_u64(x406, x353, x387, &x408);
- { uint64_t x411; uint8_t x412 = _addcarryx_u64(x409, x355, x390, &x411);
- { uint64_t _; uint64_t x414 = _mulx_u64(x393, 0x100000001, &_);
- { uint64_t x418; uint64_t x417 = _mulx_u64(x414, 0xffffffff, &x418);
- { uint64_t x421; uint64_t x420 = _mulx_u64(x414, 0xffffffff00000000L, &x421);
- { uint64_t x424; uint64_t x423 = _mulx_u64(x414, 0xfffffffffffffffeL, &x424);
- { uint64_t x427; uint64_t x426 = _mulx_u64(x414, 0xffffffffffffffffL, &x427);
- { uint64_t x430; uint64_t x429 = _mulx_u64(x414, 0xffffffffffffffffL, &x430);
- { uint64_t x433; uint64_t x432 = _mulx_u64(x414, 0xffffffffffffffffL, &x433);
- { uint64_t x435; uint8_t x436 = _addcarryx_u64(0x0, x418, x420, &x435);
- { uint64_t x438; uint8_t x439 = _addcarryx_u64(x436, x421, x423, &x438);
- { uint64_t x441; uint8_t x442 = _addcarryx_u64(x439, x424, x426, &x441);
- { uint64_t x444; uint8_t x445 = _addcarryx_u64(x442, x427, x429, &x444);
- { uint64_t x447; uint8_t x448 = _addcarryx_u64(x445, x430, x432, &x447);
- { uint64_t x450; uint8_t _ = _addcarryx_u64(0x0, x448, x433, &x450);
- { uint64_t _; uint8_t x454 = _addcarryx_u64(0x0, x393, x417, &_);
- { uint64_t x456; uint8_t x457 = _addcarryx_u64(x454, x396, x435, &x456);
- { uint64_t x459; uint8_t x460 = _addcarryx_u64(x457, x399, x438, &x459);
- { uint64_t x462; uint8_t x463 = _addcarryx_u64(x460, x402, x441, &x462);
- { uint64_t x465; uint8_t x466 = _addcarryx_u64(x463, x405, x444, &x465);
- { uint64_t x468; uint8_t x469 = _addcarryx_u64(x466, x408, x447, &x468);
- { uint64_t x471; uint8_t x472 = _addcarryx_u64(x469, x411, x450, &x471);
- { uint8_t x473 = (x472 + x412);
- { uint64_t x476; uint64_t x475 = _mulx_u64(x13, x15, &x476);
- { uint64_t x479; uint64_t x478 = _mulx_u64(x13, x17, &x479);
- { uint64_t x482; uint64_t x481 = _mulx_u64(x13, x19, &x482);
- { uint64_t x485; uint64_t x484 = _mulx_u64(x13, x21, &x485);
- { uint64_t x488; uint64_t x487 = _mulx_u64(x13, x23, &x488);
- { uint64_t x491; uint64_t x490 = _mulx_u64(x13, x22, &x491);
- { uint64_t x493; uint8_t x494 = _addcarryx_u64(0x0, x476, x478, &x493);
- { uint64_t x496; uint8_t x497 = _addcarryx_u64(x494, x479, x481, &x496);
- { uint64_t x499; uint8_t x500 = _addcarryx_u64(x497, x482, x484, &x499);
- { uint64_t x502; uint8_t x503 = _addcarryx_u64(x500, x485, x487, &x502);
- { uint64_t x505; uint8_t x506 = _addcarryx_u64(x503, x488, x490, &x505);
- { uint64_t x508; uint8_t _ = _addcarryx_u64(0x0, x506, x491, &x508);
- { uint64_t x511; uint8_t x512 = _addcarryx_u64(0x0, x456, x475, &x511);
- { uint64_t x514; uint8_t x515 = _addcarryx_u64(x512, x459, x493, &x514);
- { uint64_t x517; uint8_t x518 = _addcarryx_u64(x515, x462, x496, &x517);
- { uint64_t x520; uint8_t x521 = _addcarryx_u64(x518, x465, x499, &x520);
- { uint64_t x523; uint8_t x524 = _addcarryx_u64(x521, x468, x502, &x523);
- { uint64_t x526; uint8_t x527 = _addcarryx_u64(x524, x471, x505, &x526);
- { uint64_t x529; uint8_t x530 = _addcarryx_u64(x527, x473, x508, &x529);
- { uint64_t _; uint64_t x532 = _mulx_u64(x511, 0x100000001, &_);
- { uint64_t x536; uint64_t x535 = _mulx_u64(x532, 0xffffffff, &x536);
- { uint64_t x539; uint64_t x538 = _mulx_u64(x532, 0xffffffff00000000L, &x539);
- { uint64_t x542; uint64_t x541 = _mulx_u64(x532, 0xfffffffffffffffeL, &x542);
- { uint64_t x545; uint64_t x544 = _mulx_u64(x532, 0xffffffffffffffffL, &x545);
- { uint64_t x548; uint64_t x547 = _mulx_u64(x532, 0xffffffffffffffffL, &x548);
- { uint64_t x551; uint64_t x550 = _mulx_u64(x532, 0xffffffffffffffffL, &x551);
- { uint64_t x553; uint8_t x554 = _addcarryx_u64(0x0, x536, x538, &x553);
- { uint64_t x556; uint8_t x557 = _addcarryx_u64(x554, x539, x541, &x556);
- { uint64_t x559; uint8_t x560 = _addcarryx_u64(x557, x542, x544, &x559);
- { uint64_t x562; uint8_t x563 = _addcarryx_u64(x560, x545, x547, &x562);
- { uint64_t x565; uint8_t x566 = _addcarryx_u64(x563, x548, x550, &x565);
- { uint64_t x568; uint8_t _ = _addcarryx_u64(0x0, x566, x551, &x568);
- { uint64_t _; uint8_t x572 = _addcarryx_u64(0x0, x511, x535, &_);
- { uint64_t x574; uint8_t x575 = _addcarryx_u64(x572, x514, x553, &x574);
- { uint64_t x577; uint8_t x578 = _addcarryx_u64(x575, x517, x556, &x577);
- { uint64_t x580; uint8_t x581 = _addcarryx_u64(x578, x520, x559, &x580);
- { uint64_t x583; uint8_t x584 = _addcarryx_u64(x581, x523, x562, &x583);
- { uint64_t x586; uint8_t x587 = _addcarryx_u64(x584, x526, x565, &x586);
- { uint64_t x589; uint8_t x590 = _addcarryx_u64(x587, x529, x568, &x589);
- { uint8_t x591 = (x590 + x530);
- { uint64_t x594; uint64_t x593 = _mulx_u64(x12, x15, &x594);
- { uint64_t x597; uint64_t x596 = _mulx_u64(x12, x17, &x597);
- { uint64_t x600; uint64_t x599 = _mulx_u64(x12, x19, &x600);
- { uint64_t x603; uint64_t x602 = _mulx_u64(x12, x21, &x603);
- { uint64_t x606; uint64_t x605 = _mulx_u64(x12, x23, &x606);
- { uint64_t x609; uint64_t x608 = _mulx_u64(x12, x22, &x609);
- { uint64_t x611; uint8_t x612 = _addcarryx_u64(0x0, x594, x596, &x611);
- { uint64_t x614; uint8_t x615 = _addcarryx_u64(x612, x597, x599, &x614);
- { uint64_t x617; uint8_t x618 = _addcarryx_u64(x615, x600, x602, &x617);
- { uint64_t x620; uint8_t x621 = _addcarryx_u64(x618, x603, x605, &x620);
- { uint64_t x623; uint8_t x624 = _addcarryx_u64(x621, x606, x608, &x623);
- { uint64_t x626; uint8_t _ = _addcarryx_u64(0x0, x624, x609, &x626);
- { uint64_t x629; uint8_t x630 = _addcarryx_u64(0x0, x574, x593, &x629);
- { uint64_t x632; uint8_t x633 = _addcarryx_u64(x630, x577, x611, &x632);
- { uint64_t x635; uint8_t x636 = _addcarryx_u64(x633, x580, x614, &x635);
- { uint64_t x638; uint8_t x639 = _addcarryx_u64(x636, x583, x617, &x638);
- { uint64_t x641; uint8_t x642 = _addcarryx_u64(x639, x586, x620, &x641);
- { uint64_t x644; uint8_t x645 = _addcarryx_u64(x642, x589, x623, &x644);
- { uint64_t x647; uint8_t x648 = _addcarryx_u64(x645, x591, x626, &x647);
- { uint64_t _; uint64_t x650 = _mulx_u64(x629, 0x100000001, &_);
- { uint64_t x654; uint64_t x653 = _mulx_u64(x650, 0xffffffff, &x654);
- { uint64_t x657; uint64_t x656 = _mulx_u64(x650, 0xffffffff00000000L, &x657);
- { uint64_t x660; uint64_t x659 = _mulx_u64(x650, 0xfffffffffffffffeL, &x660);
- { uint64_t x663; uint64_t x662 = _mulx_u64(x650, 0xffffffffffffffffL, &x663);
- { uint64_t x666; uint64_t x665 = _mulx_u64(x650, 0xffffffffffffffffL, &x666);
- { uint64_t x669; uint64_t x668 = _mulx_u64(x650, 0xffffffffffffffffL, &x669);
- { uint64_t x671; uint8_t x672 = _addcarryx_u64(0x0, x654, x656, &x671);
- { uint64_t x674; uint8_t x675 = _addcarryx_u64(x672, x657, x659, &x674);
- { uint64_t x677; uint8_t x678 = _addcarryx_u64(x675, x660, x662, &x677);
- { uint64_t x680; uint8_t x681 = _addcarryx_u64(x678, x663, x665, &x680);
- { uint64_t x683; uint8_t x684 = _addcarryx_u64(x681, x666, x668, &x683);
- { uint64_t x686; uint8_t _ = _addcarryx_u64(0x0, x684, x669, &x686);
- { uint64_t _; uint8_t x690 = _addcarryx_u64(0x0, x629, x653, &_);
- { uint64_t x692; uint8_t x693 = _addcarryx_u64(x690, x632, x671, &x692);
- { uint64_t x695; uint8_t x696 = _addcarryx_u64(x693, x635, x674, &x695);
- { uint64_t x698; uint8_t x699 = _addcarryx_u64(x696, x638, x677, &x698);
- { uint64_t x701; uint8_t x702 = _addcarryx_u64(x699, x641, x680, &x701);
- { uint64_t x704; uint8_t x705 = _addcarryx_u64(x702, x644, x683, &x704);
- { uint64_t x707; uint8_t x708 = _addcarryx_u64(x705, x647, x686, &x707);
- { uint8_t x709 = (x708 + x648);
- { uint64_t x711; uint8_t x712 = _subborrow_u64(0x0, x692, 0xffffffff, &x711);
- { uint64_t x714; uint8_t x715 = _subborrow_u64(x712, x695, 0xffffffff00000000L, &x714);
- { uint64_t x717; uint8_t x718 = _subborrow_u64(x715, x698, 0xfffffffffffffffeL, &x717);
- { uint64_t x720; uint8_t x721 = _subborrow_u64(x718, x701, 0xffffffffffffffffL, &x720);
- { uint64_t x723; uint8_t x724 = _subborrow_u64(x721, x704, 0xffffffffffffffffL, &x723);
- { uint64_t x726; uint8_t x727 = _subborrow_u64(x724, x707, 0xffffffffffffffffL, &x726);
- { uint64_t _; uint8_t x730 = _subborrow_u64(x727, x709, 0x0, &_);
- { uint64_t x731 = cmovznz64(x730, x726, x707);
- { uint64_t x732 = cmovznz64(x730, x723, x704);
- { uint64_t x733 = cmovznz64(x730, x720, x701);
- { uint64_t x734 = cmovznz64(x730, x717, x698);
- { uint64_t x735 = cmovznz64(x730, x714, x695);
- { uint64_t x736 = cmovznz64(x730, x711, x692);
- out[0] = x736;
- out[1] = x735;
- out[2] = x734;
- out[3] = x733;
- out[4] = x732;
- out[5] = x731;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/femul.v b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/femul.v
deleted file mode 100644
index d0c12b483..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e384m2e128m2e96p2e32m1_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/femulDisplay.log b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/femulDisplay.log
deleted file mode 100644
index bda309185..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,252 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint64_t x26 = mulx_u64(x5, x15);
- uint64_t x28, uint64_t x29 = mulx_u64(x5, x17);
- uint64_t x31, uint64_t x32 = mulx_u64(x5, x19);
- uint64_t x34, uint64_t x35 = mulx_u64(x5, x21);
- uint64_t x37, uint64_t x38 = mulx_u64(x5, x23);
- uint64_t x40, uint64_t x41 = mulx_u64(x5, x22);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x26, x28);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x29, x31);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x47, x32, x34);
- uint64_t x52, uint8_t x53 = addcarryx_u64(x50, x35, x37);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x38, x40);
- uint64_t x58, uint8_t _ = addcarryx_u64(0x0, x56, x41);
- uint64_t x61, uint64_t _ = mulx_u64(x25, 0x100000001);
- uint64_t x64, uint64_t x65 = mulx_u64(x61, 0xffffffff);
- uint64_t x67, uint64_t x68 = mulx_u64(x61, 0xffffffff00000000L);
- uint64_t x70, uint64_t x71 = mulx_u64(x61, 0xfffffffffffffffeL);
- uint64_t x73, uint64_t x74 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x76, uint64_t x77 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x79, uint64_t x80 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x65, x67);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x68, x70);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x71, x73);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x74, x76);
- uint64_t x94, uint8_t x95 = addcarryx_u64(x92, x77, x79);
- uint64_t x97, uint8_t _ = addcarryx_u64(0x0, x95, x80);
- uint64_t _, uint8_t x101 = addcarryx_u64(0x0, x25, x64);
- uint64_t x103, uint8_t x104 = addcarryx_u64(x101, x43, x82);
- uint64_t x106, uint8_t x107 = addcarryx_u64(x104, x46, x85);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x49, x88);
- uint64_t x112, uint8_t x113 = addcarryx_u64(x110, x52, x91);
- uint64_t x115, uint8_t x116 = addcarryx_u64(x113, x55, x94);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x58, x97);
- uint64_t x121, uint64_t x122 = mulx_u64(x7, x15);
- uint64_t x124, uint64_t x125 = mulx_u64(x7, x17);
- uint64_t x127, uint64_t x128 = mulx_u64(x7, x19);
- uint64_t x130, uint64_t x131 = mulx_u64(x7, x21);
- uint64_t x133, uint64_t x134 = mulx_u64(x7, x23);
- uint64_t x136, uint64_t x137 = mulx_u64(x7, x22);
- uint64_t x139, uint8_t x140 = addcarryx_u64(0x0, x122, x124);
- uint64_t x142, uint8_t x143 = addcarryx_u64(x140, x125, x127);
- uint64_t x145, uint8_t x146 = addcarryx_u64(x143, x128, x130);
- uint64_t x148, uint8_t x149 = addcarryx_u64(x146, x131, x133);
- uint64_t x151, uint8_t x152 = addcarryx_u64(x149, x134, x136);
- uint64_t x154, uint8_t _ = addcarryx_u64(0x0, x152, x137);
- uint64_t x157, uint8_t x158 = addcarryx_u64(0x0, x103, x121);
- uint64_t x160, uint8_t x161 = addcarryx_u64(x158, x106, x139);
- uint64_t x163, uint8_t x164 = addcarryx_u64(x161, x109, x142);
- uint64_t x166, uint8_t x167 = addcarryx_u64(x164, x112, x145);
- uint64_t x169, uint8_t x170 = addcarryx_u64(x167, x115, x148);
- uint64_t x172, uint8_t x173 = addcarryx_u64(x170, x118, x151);
- uint64_t x175, uint8_t x176 = addcarryx_u64(x173, x119, x154);
- uint64_t x178, uint64_t _ = mulx_u64(x157, 0x100000001);
- uint64_t x181, uint64_t x182 = mulx_u64(x178, 0xffffffff);
- uint64_t x184, uint64_t x185 = mulx_u64(x178, 0xffffffff00000000L);
- uint64_t x187, uint64_t x188 = mulx_u64(x178, 0xfffffffffffffffeL);
- uint64_t x190, uint64_t x191 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x193, uint64_t x194 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x196, uint64_t x197 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x199, uint8_t x200 = addcarryx_u64(0x0, x182, x184);
- uint64_t x202, uint8_t x203 = addcarryx_u64(x200, x185, x187);
- uint64_t x205, uint8_t x206 = addcarryx_u64(x203, x188, x190);
- uint64_t x208, uint8_t x209 = addcarryx_u64(x206, x191, x193);
- uint64_t x211, uint8_t x212 = addcarryx_u64(x209, x194, x196);
- uint64_t x214, uint8_t _ = addcarryx_u64(0x0, x212, x197);
- uint64_t _, uint8_t x218 = addcarryx_u64(0x0, x157, x181);
- uint64_t x220, uint8_t x221 = addcarryx_u64(x218, x160, x199);
- uint64_t x223, uint8_t x224 = addcarryx_u64(x221, x163, x202);
- uint64_t x226, uint8_t x227 = addcarryx_u64(x224, x166, x205);
- uint64_t x229, uint8_t x230 = addcarryx_u64(x227, x169, x208);
- uint64_t x232, uint8_t x233 = addcarryx_u64(x230, x172, x211);
- uint64_t x235, uint8_t x236 = addcarryx_u64(x233, x175, x214);
- uint8_t x237 = (x236 + x176);
- uint64_t x239, uint64_t x240 = mulx_u64(x9, x15);
- uint64_t x242, uint64_t x243 = mulx_u64(x9, x17);
- uint64_t x245, uint64_t x246 = mulx_u64(x9, x19);
- uint64_t x248, uint64_t x249 = mulx_u64(x9, x21);
- uint64_t x251, uint64_t x252 = mulx_u64(x9, x23);
- uint64_t x254, uint64_t x255 = mulx_u64(x9, x22);
- uint64_t x257, uint8_t x258 = addcarryx_u64(0x0, x240, x242);
- uint64_t x260, uint8_t x261 = addcarryx_u64(x258, x243, x245);
- uint64_t x263, uint8_t x264 = addcarryx_u64(x261, x246, x248);
- uint64_t x266, uint8_t x267 = addcarryx_u64(x264, x249, x251);
- uint64_t x269, uint8_t x270 = addcarryx_u64(x267, x252, x254);
- uint64_t x272, uint8_t _ = addcarryx_u64(0x0, x270, x255);
- uint64_t x275, uint8_t x276 = addcarryx_u64(0x0, x220, x239);
- uint64_t x278, uint8_t x279 = addcarryx_u64(x276, x223, x257);
- uint64_t x281, uint8_t x282 = addcarryx_u64(x279, x226, x260);
- uint64_t x284, uint8_t x285 = addcarryx_u64(x282, x229, x263);
- uint64_t x287, uint8_t x288 = addcarryx_u64(x285, x232, x266);
- uint64_t x290, uint8_t x291 = addcarryx_u64(x288, x235, x269);
- uint64_t x293, uint8_t x294 = addcarryx_u64(x291, x237, x272);
- uint64_t x296, uint64_t _ = mulx_u64(x275, 0x100000001);
- uint64_t x299, uint64_t x300 = mulx_u64(x296, 0xffffffff);
- uint64_t x302, uint64_t x303 = mulx_u64(x296, 0xffffffff00000000L);
- uint64_t x305, uint64_t x306 = mulx_u64(x296, 0xfffffffffffffffeL);
- uint64_t x308, uint64_t x309 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x311, uint64_t x312 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x314, uint64_t x315 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x317, uint8_t x318 = addcarryx_u64(0x0, x300, x302);
- uint64_t x320, uint8_t x321 = addcarryx_u64(x318, x303, x305);
- uint64_t x323, uint8_t x324 = addcarryx_u64(x321, x306, x308);
- uint64_t x326, uint8_t x327 = addcarryx_u64(x324, x309, x311);
- uint64_t x329, uint8_t x330 = addcarryx_u64(x327, x312, x314);
- uint64_t x332, uint8_t _ = addcarryx_u64(0x0, x330, x315);
- uint64_t _, uint8_t x336 = addcarryx_u64(0x0, x275, x299);
- uint64_t x338, uint8_t x339 = addcarryx_u64(x336, x278, x317);
- uint64_t x341, uint8_t x342 = addcarryx_u64(x339, x281, x320);
- uint64_t x344, uint8_t x345 = addcarryx_u64(x342, x284, x323);
- uint64_t x347, uint8_t x348 = addcarryx_u64(x345, x287, x326);
- uint64_t x350, uint8_t x351 = addcarryx_u64(x348, x290, x329);
- uint64_t x353, uint8_t x354 = addcarryx_u64(x351, x293, x332);
- uint8_t x355 = (x354 + x294);
- uint64_t x357, uint64_t x358 = mulx_u64(x11, x15);
- uint64_t x360, uint64_t x361 = mulx_u64(x11, x17);
- uint64_t x363, uint64_t x364 = mulx_u64(x11, x19);
- uint64_t x366, uint64_t x367 = mulx_u64(x11, x21);
- uint64_t x369, uint64_t x370 = mulx_u64(x11, x23);
- uint64_t x372, uint64_t x373 = mulx_u64(x11, x22);
- uint64_t x375, uint8_t x376 = addcarryx_u64(0x0, x358, x360);
- uint64_t x378, uint8_t x379 = addcarryx_u64(x376, x361, x363);
- uint64_t x381, uint8_t x382 = addcarryx_u64(x379, x364, x366);
- uint64_t x384, uint8_t x385 = addcarryx_u64(x382, x367, x369);
- uint64_t x387, uint8_t x388 = addcarryx_u64(x385, x370, x372);
- uint64_t x390, uint8_t _ = addcarryx_u64(0x0, x388, x373);
- uint64_t x393, uint8_t x394 = addcarryx_u64(0x0, x338, x357);
- uint64_t x396, uint8_t x397 = addcarryx_u64(x394, x341, x375);
- uint64_t x399, uint8_t x400 = addcarryx_u64(x397, x344, x378);
- uint64_t x402, uint8_t x403 = addcarryx_u64(x400, x347, x381);
- uint64_t x405, uint8_t x406 = addcarryx_u64(x403, x350, x384);
- uint64_t x408, uint8_t x409 = addcarryx_u64(x406, x353, x387);
- uint64_t x411, uint8_t x412 = addcarryx_u64(x409, x355, x390);
- uint64_t x414, uint64_t _ = mulx_u64(x393, 0x100000001);
- uint64_t x417, uint64_t x418 = mulx_u64(x414, 0xffffffff);
- uint64_t x420, uint64_t x421 = mulx_u64(x414, 0xffffffff00000000L);
- uint64_t x423, uint64_t x424 = mulx_u64(x414, 0xfffffffffffffffeL);
- uint64_t x426, uint64_t x427 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x429, uint64_t x430 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x432, uint64_t x433 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x435, uint8_t x436 = addcarryx_u64(0x0, x418, x420);
- uint64_t x438, uint8_t x439 = addcarryx_u64(x436, x421, x423);
- uint64_t x441, uint8_t x442 = addcarryx_u64(x439, x424, x426);
- uint64_t x444, uint8_t x445 = addcarryx_u64(x442, x427, x429);
- uint64_t x447, uint8_t x448 = addcarryx_u64(x445, x430, x432);
- uint64_t x450, uint8_t _ = addcarryx_u64(0x0, x448, x433);
- uint64_t _, uint8_t x454 = addcarryx_u64(0x0, x393, x417);
- uint64_t x456, uint8_t x457 = addcarryx_u64(x454, x396, x435);
- uint64_t x459, uint8_t x460 = addcarryx_u64(x457, x399, x438);
- uint64_t x462, uint8_t x463 = addcarryx_u64(x460, x402, x441);
- uint64_t x465, uint8_t x466 = addcarryx_u64(x463, x405, x444);
- uint64_t x468, uint8_t x469 = addcarryx_u64(x466, x408, x447);
- uint64_t x471, uint8_t x472 = addcarryx_u64(x469, x411, x450);
- uint8_t x473 = (x472 + x412);
- uint64_t x475, uint64_t x476 = mulx_u64(x13, x15);
- uint64_t x478, uint64_t x479 = mulx_u64(x13, x17);
- uint64_t x481, uint64_t x482 = mulx_u64(x13, x19);
- uint64_t x484, uint64_t x485 = mulx_u64(x13, x21);
- uint64_t x487, uint64_t x488 = mulx_u64(x13, x23);
- uint64_t x490, uint64_t x491 = mulx_u64(x13, x22);
- uint64_t x493, uint8_t x494 = addcarryx_u64(0x0, x476, x478);
- uint64_t x496, uint8_t x497 = addcarryx_u64(x494, x479, x481);
- uint64_t x499, uint8_t x500 = addcarryx_u64(x497, x482, x484);
- uint64_t x502, uint8_t x503 = addcarryx_u64(x500, x485, x487);
- uint64_t x505, uint8_t x506 = addcarryx_u64(x503, x488, x490);
- uint64_t x508, uint8_t _ = addcarryx_u64(0x0, x506, x491);
- uint64_t x511, uint8_t x512 = addcarryx_u64(0x0, x456, x475);
- uint64_t x514, uint8_t x515 = addcarryx_u64(x512, x459, x493);
- uint64_t x517, uint8_t x518 = addcarryx_u64(x515, x462, x496);
- uint64_t x520, uint8_t x521 = addcarryx_u64(x518, x465, x499);
- uint64_t x523, uint8_t x524 = addcarryx_u64(x521, x468, x502);
- uint64_t x526, uint8_t x527 = addcarryx_u64(x524, x471, x505);
- uint64_t x529, uint8_t x530 = addcarryx_u64(x527, x473, x508);
- uint64_t x532, uint64_t _ = mulx_u64(x511, 0x100000001);
- uint64_t x535, uint64_t x536 = mulx_u64(x532, 0xffffffff);
- uint64_t x538, uint64_t x539 = mulx_u64(x532, 0xffffffff00000000L);
- uint64_t x541, uint64_t x542 = mulx_u64(x532, 0xfffffffffffffffeL);
- uint64_t x544, uint64_t x545 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x547, uint64_t x548 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x550, uint64_t x551 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x553, uint8_t x554 = addcarryx_u64(0x0, x536, x538);
- uint64_t x556, uint8_t x557 = addcarryx_u64(x554, x539, x541);
- uint64_t x559, uint8_t x560 = addcarryx_u64(x557, x542, x544);
- uint64_t x562, uint8_t x563 = addcarryx_u64(x560, x545, x547);
- uint64_t x565, uint8_t x566 = addcarryx_u64(x563, x548, x550);
- uint64_t x568, uint8_t _ = addcarryx_u64(0x0, x566, x551);
- uint64_t _, uint8_t x572 = addcarryx_u64(0x0, x511, x535);
- uint64_t x574, uint8_t x575 = addcarryx_u64(x572, x514, x553);
- uint64_t x577, uint8_t x578 = addcarryx_u64(x575, x517, x556);
- uint64_t x580, uint8_t x581 = addcarryx_u64(x578, x520, x559);
- uint64_t x583, uint8_t x584 = addcarryx_u64(x581, x523, x562);
- uint64_t x586, uint8_t x587 = addcarryx_u64(x584, x526, x565);
- uint64_t x589, uint8_t x590 = addcarryx_u64(x587, x529, x568);
- uint8_t x591 = (x590 + x530);
- uint64_t x593, uint64_t x594 = mulx_u64(x12, x15);
- uint64_t x596, uint64_t x597 = mulx_u64(x12, x17);
- uint64_t x599, uint64_t x600 = mulx_u64(x12, x19);
- uint64_t x602, uint64_t x603 = mulx_u64(x12, x21);
- uint64_t x605, uint64_t x606 = mulx_u64(x12, x23);
- uint64_t x608, uint64_t x609 = mulx_u64(x12, x22);
- uint64_t x611, uint8_t x612 = addcarryx_u64(0x0, x594, x596);
- uint64_t x614, uint8_t x615 = addcarryx_u64(x612, x597, x599);
- uint64_t x617, uint8_t x618 = addcarryx_u64(x615, x600, x602);
- uint64_t x620, uint8_t x621 = addcarryx_u64(x618, x603, x605);
- uint64_t x623, uint8_t x624 = addcarryx_u64(x621, x606, x608);
- uint64_t x626, uint8_t _ = addcarryx_u64(0x0, x624, x609);
- uint64_t x629, uint8_t x630 = addcarryx_u64(0x0, x574, x593);
- uint64_t x632, uint8_t x633 = addcarryx_u64(x630, x577, x611);
- uint64_t x635, uint8_t x636 = addcarryx_u64(x633, x580, x614);
- uint64_t x638, uint8_t x639 = addcarryx_u64(x636, x583, x617);
- uint64_t x641, uint8_t x642 = addcarryx_u64(x639, x586, x620);
- uint64_t x644, uint8_t x645 = addcarryx_u64(x642, x589, x623);
- uint64_t x647, uint8_t x648 = addcarryx_u64(x645, x591, x626);
- uint64_t x650, uint64_t _ = mulx_u64(x629, 0x100000001);
- uint64_t x653, uint64_t x654 = mulx_u64(x650, 0xffffffff);
- uint64_t x656, uint64_t x657 = mulx_u64(x650, 0xffffffff00000000L);
- uint64_t x659, uint64_t x660 = mulx_u64(x650, 0xfffffffffffffffeL);
- uint64_t x662, uint64_t x663 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x665, uint64_t x666 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x668, uint64_t x669 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x671, uint8_t x672 = addcarryx_u64(0x0, x654, x656);
- uint64_t x674, uint8_t x675 = addcarryx_u64(x672, x657, x659);
- uint64_t x677, uint8_t x678 = addcarryx_u64(x675, x660, x662);
- uint64_t x680, uint8_t x681 = addcarryx_u64(x678, x663, x665);
- uint64_t x683, uint8_t x684 = addcarryx_u64(x681, x666, x668);
- uint64_t x686, uint8_t _ = addcarryx_u64(0x0, x684, x669);
- uint64_t _, uint8_t x690 = addcarryx_u64(0x0, x629, x653);
- uint64_t x692, uint8_t x693 = addcarryx_u64(x690, x632, x671);
- uint64_t x695, uint8_t x696 = addcarryx_u64(x693, x635, x674);
- uint64_t x698, uint8_t x699 = addcarryx_u64(x696, x638, x677);
- uint64_t x701, uint8_t x702 = addcarryx_u64(x699, x641, x680);
- uint64_t x704, uint8_t x705 = addcarryx_u64(x702, x644, x683);
- uint64_t x707, uint8_t x708 = addcarryx_u64(x705, x647, x686);
- uint8_t x709 = (x708 + x648);
- uint64_t x711, uint8_t x712 = subborrow_u64(0x0, x692, 0xffffffff);
- uint64_t x714, uint8_t x715 = subborrow_u64(x712, x695, 0xffffffff00000000L);
- uint64_t x717, uint8_t x718 = subborrow_u64(x715, x698, 0xfffffffffffffffeL);
- uint64_t x720, uint8_t x721 = subborrow_u64(x718, x701, 0xffffffffffffffffL);
- uint64_t x723, uint8_t x724 = subborrow_u64(x721, x704, 0xffffffffffffffffL);
- uint64_t x726, uint8_t x727 = subborrow_u64(x724, x707, 0xffffffffffffffffL);
- uint64_t _, uint8_t x730 = subborrow_u64(x727, x709, 0x0);
- uint64_t x731 = cmovznz64(x730, x726, x707);
- uint64_t x732 = cmovznz64(x730, x723, x704);
- uint64_t x733 = cmovznz64(x730, x720, x701);
- uint64_t x734 = cmovznz64(x730, x717, x698);
- uint64_t x735 = cmovznz64(x730, x714, x695);
- uint64_t x736 = cmovznz64(x730, x711, x692);
- return (x731, x732, x733, x734, x735, x736))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/femulDisplay.v b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/femulDisplay.v
deleted file mode 100644
index 9b74c4039..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e384m2e128m2e96p2e32m1_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fenz.c b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fenz.c
deleted file mode 100644
index c93f74257..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fenz.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x11 = (x10 | x9);
- { uint64_t x12 = (x8 | x11);
- { uint64_t x13 = (x6 | x12);
- { uint64_t x14 = (x4 | x13);
- { uint64_t x15 = (x2 | x14);
- out[0] = x15;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fenz.v b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fenz.v
deleted file mode 100644
index be98c5c31..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e384m2e128m2e96p2e32m1_6limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fenzDisplay.log b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fenzDisplay.log
deleted file mode 100644
index f39f1d91b..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fenzDisplay.log
+++ /dev/null
@@ -1,12 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x11 = (x10 | x9);
- uint64_t x12 = (x8 | x11);
- uint64_t x13 = (x6 | x12);
- uint64_t x14 = (x4 | x13);
- uint64_t x15 = (x2 | x14);
- return x15)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fenzDisplay.v b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fenzDisplay.v
deleted file mode 100644
index 8ebbc12c6..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e384m2e128m2e96p2e32m1_6limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feopp.c b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feopp.c
deleted file mode 100644
index 51a571f4d..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feopp.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feopp(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12; uint8_t x13 = _subborrow_u64(0x0, 0x0, x2, &x12);
- { uint64_t x15; uint8_t x16 = _subborrow_u64(x13, 0x0, x4, &x15);
- { uint64_t x18; uint8_t x19 = _subborrow_u64(x16, 0x0, x6, &x18);
- { uint64_t x21; uint8_t x22 = _subborrow_u64(x19, 0x0, x8, &x21);
- { uint64_t x24; uint8_t x25 = _subborrow_u64(x22, 0x0, x10, &x24);
- { uint64_t x27; uint8_t x28 = _subborrow_u64(x25, 0x0, x9, &x27);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0xffffffff);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(0x0, x12, x30, &x32);
- { uint64_t x34 = (x29 & 0xffffffff00000000L);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x33, x15, x34, &x36);
- { uint64_t x38 = (x29 & 0xfffffffffffffffeL);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x37, x18, x38, &x40);
- { uint64_t x42 = (x29 & 0xffffffffffffffffL);
- { uint64_t x44; uint8_t x45 = _addcarryx_u64(x41, x21, x42, &x44);
- { uint64_t x46 = (x29 & 0xffffffffffffffffL);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x45, x24, x46, &x48);
- { uint64_t x50 = (x29 & 0xffffffffffffffffL);
- { uint64_t x52; uint8_t _ = _addcarryx_u64(x49, x27, x50, &x52);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feopp.v b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feopp.v
deleted file mode 100644
index 10b84eab0..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e384m2e128m2e96p2e32m1_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feoppDisplay.log b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feoppDisplay.log
deleted file mode 100644
index ab3378641..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feoppDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x15, uint8_t x16 = subborrow_u64(x13, 0x0, x4);
- uint64_t x18, uint8_t x19 = subborrow_u64(x16, 0x0, x6);
- uint64_t x21, uint8_t x22 = subborrow_u64(x19, 0x0, x8);
- uint64_t x24, uint8_t x25 = subborrow_u64(x22, 0x0, x10);
- uint64_t x27, uint8_t x28 = subborrow_u64(x25, 0x0, x9);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0xffffffff);
- uint64_t x32, uint8_t x33 = addcarryx_u64(0x0, x12, x30);
- uint64_t x34 = (x29 & 0xffffffff00000000L);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x33, x15, x34);
- uint64_t x38 = (x29 & 0xfffffffffffffffeL);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x37, x18, x38);
- uint64_t x42 = (x29 & 0xffffffffffffffffL);
- uint64_t x44, uint8_t x45 = addcarryx_u64(x41, x21, x42);
- uint64_t x46 = (x29 & 0xffffffffffffffffL);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x45, x24, x46);
- uint64_t x50 = (x29 & 0xffffffffffffffffL);
- uint64_t x52, uint8_t _ = addcarryx_u64(x49, x27, x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feoppDisplay.v b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feoppDisplay.v
deleted file mode 100644
index 16f4125ed..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e384m2e128m2e96p2e32m1_6limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fesquare.c b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fesub.c b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fesub.c
deleted file mode 100644
index f14f24207..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fesub.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _subborrow_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _subborrow_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _subborrow_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _subborrow_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _subborrow_u64(x38, x12, x22, &x40);
- { uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- { uint64_t x43 = (x42 & 0xffffffff);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(0x0, x25, x43, &x45);
- { uint64_t x47 = (x42 & 0xffffffff00000000L);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x46, x28, x47, &x49);
- { uint64_t x51 = (x42 & 0xfffffffffffffffeL);
- { uint64_t x53; uint8_t x54 = _addcarryx_u64(x50, x31, x51, &x53);
- { uint64_t x55 = (x42 & 0xffffffffffffffffL);
- { uint64_t x57; uint8_t x58 = _addcarryx_u64(x54, x34, x55, &x57);
- { uint64_t x59 = (x42 & 0xffffffffffffffffL);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x58, x37, x59, &x61);
- { uint64_t x63 = (x42 & 0xffffffffffffffffL);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(x62, x40, x63, &x65);
- out[0] = x45;
- out[1] = x49;
- out[2] = x53;
- out[3] = x57;
- out[4] = x61;
- out[5] = x65;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fesub.v b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fesub.v
deleted file mode 100644
index de7c490e7..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e384m2e128m2e96p2e32m1_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fesubDisplay.log b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fesubDisplay.log
deleted file mode 100644
index 63da9b2f5..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = subborrow_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = subborrow_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = subborrow_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = subborrow_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = subborrow_u64(x38, x12, x22);
- uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- uint64_t x43 = (x42 & 0xffffffff);
- uint64_t x45, uint8_t x46 = addcarryx_u64(0x0, x25, x43);
- uint64_t x47 = (x42 & 0xffffffff00000000L);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x46, x28, x47);
- uint64_t x51 = (x42 & 0xfffffffffffffffeL);
- uint64_t x53, uint8_t x54 = addcarryx_u64(x50, x31, x51);
- uint64_t x55 = (x42 & 0xffffffffffffffffL);
- uint64_t x57, uint8_t x58 = addcarryx_u64(x54, x34, x55);
- uint64_t x59 = (x42 & 0xffffffffffffffffL);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x58, x37, x59);
- uint64_t x63 = (x42 & 0xffffffffffffffffL);
- uint64_t x65, uint8_t _ = addcarryx_u64(x62, x40, x63);
- (Return x65, Return x61, Return x57, Return x53, Return x49, Return x45))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fesubDisplay.v b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fesubDisplay.v
deleted file mode 100644
index 53541241f..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e384m2e128m2e96p2e32m1_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/py_interpreter.sh b/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/py_interpreter.sh
deleted file mode 100755
index 4b6905b2a..000000000
--- a/src/Specific/montgomery64_2e384m2e128m2e96p2e32m1_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**384 - 2**128 - 2**96 + 2**32 - 1' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e384m317_6limbs/CurveParameters.v b/src/Specific/montgomery64_2e384m317_6limbs/CurveParameters.v
deleted file mode 100644
index 9616800d3..000000000
--- a/src/Specific/montgomery64_2e384m317_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^384 - 317
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 64;
- bitwidth := 64;
- s := 2^384;
- c := [(1, 317)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e384m317_6limbs/Synthesis.v b/src/Specific/montgomery64_2e384m317_6limbs/Synthesis.v
deleted file mode 100644
index 4bbd7bd60..000000000
--- a/src/Specific/montgomery64_2e384m317_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e384m317_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/montgomery64_2e384m317_6limbs/compiler.sh b/src/Specific/montgomery64_2e384m317_6limbs/compiler.sh
deleted file mode 100755
index 9a7389212..000000000
--- a/src/Specific/montgomery64_2e384m317_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<384) - 317' "$@"
diff --git a/src/Specific/montgomery64_2e384m317_6limbs/compilerxx.sh b/src/Specific/montgomery64_2e384m317_6limbs/compilerxx.sh
deleted file mode 100755
index 084fafa58..000000000
--- a/src/Specific/montgomery64_2e384m317_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<384) - 317' "$@"
diff --git a/src/Specific/montgomery64_2e384m317_6limbs/feadd.c b/src/Specific/montgomery64_2e384m317_6limbs/feadd.c
deleted file mode 100644
index a73e2c353..000000000
--- a/src/Specific/montgomery64_2e384m317_6limbs/feadd.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _addcarryx_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _addcarryx_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x38, x12, x22, &x40);
- { uint64_t x43; uint8_t x44 = _subborrow_u64(0x0, x25, 0xfffffffffffffec3L, &x43);
- { uint64_t x46; uint8_t x47 = _subborrow_u64(x44, x28, 0xffffffffffffffffL, &x46);
- { uint64_t x49; uint8_t x50 = _subborrow_u64(x47, x31, 0xffffffffffffffffL, &x49);
- { uint64_t x52; uint8_t x53 = _subborrow_u64(x50, x34, 0xffffffffffffffffL, &x52);
- { uint64_t x55; uint8_t x56 = _subborrow_u64(x53, x37, 0xffffffffffffffffL, &x55);
- { uint64_t x58; uint8_t x59 = _subborrow_u64(x56, x40, 0xffffffffffffffffL, &x58);
- { uint64_t _; uint8_t x62 = _subborrow_u64(x59, x41, 0x0, &_);
- { uint64_t x63 = cmovznz64(x62, x58, x40);
- { uint64_t x64 = cmovznz64(x62, x55, x37);
- { uint64_t x65 = cmovznz64(x62, x52, x34);
- { uint64_t x66 = cmovznz64(x62, x49, x31);
- { uint64_t x67 = cmovznz64(x62, x46, x28);
- { uint64_t x68 = cmovznz64(x62, x43, x25);
- out[0] = x68;
- out[1] = x67;
- out[2] = x66;
- out[3] = x65;
- out[4] = x64;
- out[5] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e384m317_6limbs/feadd.v b/src/Specific/montgomery64_2e384m317_6limbs/feadd.v
deleted file mode 100644
index e4476d5bc..000000000
--- a/src/Specific/montgomery64_2e384m317_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e384m317_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e384m317_6limbs/feaddDisplay.log b/src/Specific/montgomery64_2e384m317_6limbs/feaddDisplay.log
deleted file mode 100644
index fe11d57ba..000000000
--- a/src/Specific/montgomery64_2e384m317_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = addcarryx_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = addcarryx_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = addcarryx_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = addcarryx_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x38, x12, x22);
- uint64_t x43, uint8_t x44 = subborrow_u64(0x0, x25, 0xfffffffffffffec3L);
- uint64_t x46, uint8_t x47 = subborrow_u64(x44, x28, 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = subborrow_u64(x47, x31, 0xffffffffffffffffL);
- uint64_t x52, uint8_t x53 = subborrow_u64(x50, x34, 0xffffffffffffffffL);
- uint64_t x55, uint8_t x56 = subborrow_u64(x53, x37, 0xffffffffffffffffL);
- uint64_t x58, uint8_t x59 = subborrow_u64(x56, x40, 0xffffffffffffffffL);
- uint64_t _, uint8_t x62 = subborrow_u64(x59, x41, 0x0);
- uint64_t x63 = cmovznz64(x62, x58, x40);
- uint64_t x64 = cmovznz64(x62, x55, x37);
- uint64_t x65 = cmovznz64(x62, x52, x34);
- uint64_t x66 = cmovznz64(x62, x49, x31);
- uint64_t x67 = cmovznz64(x62, x46, x28);
- uint64_t x68 = cmovznz64(x62, x43, x25);
- return (x63, x64, x65, x66, x67, x68))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e384m317_6limbs/feaddDisplay.v b/src/Specific/montgomery64_2e384m317_6limbs/feaddDisplay.v
deleted file mode 100644
index 1956f08b9..000000000
--- a/src/Specific/montgomery64_2e384m317_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e384m317_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e384m317_6limbs/femul.c b/src/Specific/montgomery64_2e384m317_6limbs/femul.c
deleted file mode 100644
index ef9dec8be..000000000
--- a/src/Specific/montgomery64_2e384m317_6limbs/femul.c
+++ /dev/null
@@ -1,266 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x26; uint64_t x25 = _mulx_u64(x5, x15, &x26);
- { uint64_t x29; uint64_t x28 = _mulx_u64(x5, x17, &x29);
- { uint64_t x32; uint64_t x31 = _mulx_u64(x5, x19, &x32);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x5, x21, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x5, x23, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x5, x22, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x26, x28, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x29, x31, &x46);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x47, x32, x34, &x49);
- { uint64_t x52; uint8_t x53 = _addcarryx_u64(x50, x35, x37, &x52);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x38, x40, &x55);
- { uint64_t x58; uint8_t _ = _addcarryx_u64(0x0, x56, x41, &x58);
- { uint64_t _; uint64_t x61 = _mulx_u64(x25, 0xec9e48ae6f71de15L, &_);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x61, 0xfffffffffffffec3L, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x61, 0xffffffffffffffffL, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x61, 0xffffffffffffffffL, &x71);
- { uint64_t x74; uint64_t x73 = _mulx_u64(x61, 0xffffffffffffffffL, &x74);
- { uint64_t x77; uint64_t x76 = _mulx_u64(x61, 0xffffffffffffffffL, &x77);
- { uint64_t x80; uint64_t x79 = _mulx_u64(x61, 0xffffffffffffffffL, &x80);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(0x0, x65, x67, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x68, x70, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x71, x73, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x74, x76, &x91);
- { uint64_t x94; uint8_t x95 = _addcarryx_u64(x92, x77, x79, &x94);
- { uint64_t x97; uint8_t _ = _addcarryx_u64(0x0, x95, x80, &x97);
- { uint64_t _; uint8_t x101 = _addcarryx_u64(0x0, x25, x64, &_);
- { uint64_t x103; uint8_t x104 = _addcarryx_u64(x101, x43, x82, &x103);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(x104, x46, x85, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x49, x88, &x109);
- { uint64_t x112; uint8_t x113 = _addcarryx_u64(x110, x52, x91, &x112);
- { uint64_t x115; uint8_t x116 = _addcarryx_u64(x113, x55, x94, &x115);
- { uint64_t x118; uint8_t x119 = _addcarryx_u64(x116, x58, x97, &x118);
- { uint64_t x122; uint64_t x121 = _mulx_u64(x7, x15, &x122);
- { uint64_t x125; uint64_t x124 = _mulx_u64(x7, x17, &x125);
- { uint64_t x128; uint64_t x127 = _mulx_u64(x7, x19, &x128);
- { uint64_t x131; uint64_t x130 = _mulx_u64(x7, x21, &x131);
- { uint64_t x134; uint64_t x133 = _mulx_u64(x7, x23, &x134);
- { uint64_t x137; uint64_t x136 = _mulx_u64(x7, x22, &x137);
- { uint64_t x139; uint8_t x140 = _addcarryx_u64(0x0, x122, x124, &x139);
- { uint64_t x142; uint8_t x143 = _addcarryx_u64(x140, x125, x127, &x142);
- { uint64_t x145; uint8_t x146 = _addcarryx_u64(x143, x128, x130, &x145);
- { uint64_t x148; uint8_t x149 = _addcarryx_u64(x146, x131, x133, &x148);
- { uint64_t x151; uint8_t x152 = _addcarryx_u64(x149, x134, x136, &x151);
- { uint64_t x154; uint8_t _ = _addcarryx_u64(0x0, x152, x137, &x154);
- { uint64_t x157; uint8_t x158 = _addcarryx_u64(0x0, x103, x121, &x157);
- { uint64_t x160; uint8_t x161 = _addcarryx_u64(x158, x106, x139, &x160);
- { uint64_t x163; uint8_t x164 = _addcarryx_u64(x161, x109, x142, &x163);
- { uint64_t x166; uint8_t x167 = _addcarryx_u64(x164, x112, x145, &x166);
- { uint64_t x169; uint8_t x170 = _addcarryx_u64(x167, x115, x148, &x169);
- { uint64_t x172; uint8_t x173 = _addcarryx_u64(x170, x118, x151, &x172);
- { uint64_t x175; uint8_t x176 = _addcarryx_u64(x173, x119, x154, &x175);
- { uint64_t _; uint64_t x178 = _mulx_u64(x157, 0xec9e48ae6f71de15L, &_);
- { uint64_t x182; uint64_t x181 = _mulx_u64(x178, 0xfffffffffffffec3L, &x182);
- { uint64_t x185; uint64_t x184 = _mulx_u64(x178, 0xffffffffffffffffL, &x185);
- { uint64_t x188; uint64_t x187 = _mulx_u64(x178, 0xffffffffffffffffL, &x188);
- { uint64_t x191; uint64_t x190 = _mulx_u64(x178, 0xffffffffffffffffL, &x191);
- { uint64_t x194; uint64_t x193 = _mulx_u64(x178, 0xffffffffffffffffL, &x194);
- { uint64_t x197; uint64_t x196 = _mulx_u64(x178, 0xffffffffffffffffL, &x197);
- { uint64_t x199; uint8_t x200 = _addcarryx_u64(0x0, x182, x184, &x199);
- { uint64_t x202; uint8_t x203 = _addcarryx_u64(x200, x185, x187, &x202);
- { uint64_t x205; uint8_t x206 = _addcarryx_u64(x203, x188, x190, &x205);
- { uint64_t x208; uint8_t x209 = _addcarryx_u64(x206, x191, x193, &x208);
- { uint64_t x211; uint8_t x212 = _addcarryx_u64(x209, x194, x196, &x211);
- { uint64_t x214; uint8_t _ = _addcarryx_u64(0x0, x212, x197, &x214);
- { uint64_t _; uint8_t x218 = _addcarryx_u64(0x0, x157, x181, &_);
- { uint64_t x220; uint8_t x221 = _addcarryx_u64(x218, x160, x199, &x220);
- { uint64_t x223; uint8_t x224 = _addcarryx_u64(x221, x163, x202, &x223);
- { uint64_t x226; uint8_t x227 = _addcarryx_u64(x224, x166, x205, &x226);
- { uint64_t x229; uint8_t x230 = _addcarryx_u64(x227, x169, x208, &x229);
- { uint64_t x232; uint8_t x233 = _addcarryx_u64(x230, x172, x211, &x232);
- { uint64_t x235; uint8_t x236 = _addcarryx_u64(x233, x175, x214, &x235);
- { uint8_t x237 = (x236 + x176);
- { uint64_t x240; uint64_t x239 = _mulx_u64(x9, x15, &x240);
- { uint64_t x243; uint64_t x242 = _mulx_u64(x9, x17, &x243);
- { uint64_t x246; uint64_t x245 = _mulx_u64(x9, x19, &x246);
- { uint64_t x249; uint64_t x248 = _mulx_u64(x9, x21, &x249);
- { uint64_t x252; uint64_t x251 = _mulx_u64(x9, x23, &x252);
- { uint64_t x255; uint64_t x254 = _mulx_u64(x9, x22, &x255);
- { uint64_t x257; uint8_t x258 = _addcarryx_u64(0x0, x240, x242, &x257);
- { uint64_t x260; uint8_t x261 = _addcarryx_u64(x258, x243, x245, &x260);
- { uint64_t x263; uint8_t x264 = _addcarryx_u64(x261, x246, x248, &x263);
- { uint64_t x266; uint8_t x267 = _addcarryx_u64(x264, x249, x251, &x266);
- { uint64_t x269; uint8_t x270 = _addcarryx_u64(x267, x252, x254, &x269);
- { uint64_t x272; uint8_t _ = _addcarryx_u64(0x0, x270, x255, &x272);
- { uint64_t x275; uint8_t x276 = _addcarryx_u64(0x0, x220, x239, &x275);
- { uint64_t x278; uint8_t x279 = _addcarryx_u64(x276, x223, x257, &x278);
- { uint64_t x281; uint8_t x282 = _addcarryx_u64(x279, x226, x260, &x281);
- { uint64_t x284; uint8_t x285 = _addcarryx_u64(x282, x229, x263, &x284);
- { uint64_t x287; uint8_t x288 = _addcarryx_u64(x285, x232, x266, &x287);
- { uint64_t x290; uint8_t x291 = _addcarryx_u64(x288, x235, x269, &x290);
- { uint64_t x293; uint8_t x294 = _addcarryx_u64(x291, x237, x272, &x293);
- { uint64_t _; uint64_t x296 = _mulx_u64(x275, 0xec9e48ae6f71de15L, &_);
- { uint64_t x300; uint64_t x299 = _mulx_u64(x296, 0xfffffffffffffec3L, &x300);
- { uint64_t x303; uint64_t x302 = _mulx_u64(x296, 0xffffffffffffffffL, &x303);
- { uint64_t x306; uint64_t x305 = _mulx_u64(x296, 0xffffffffffffffffL, &x306);
- { uint64_t x309; uint64_t x308 = _mulx_u64(x296, 0xffffffffffffffffL, &x309);
- { uint64_t x312; uint64_t x311 = _mulx_u64(x296, 0xffffffffffffffffL, &x312);
- { uint64_t x315; uint64_t x314 = _mulx_u64(x296, 0xffffffffffffffffL, &x315);
- { uint64_t x317; uint8_t x318 = _addcarryx_u64(0x0, x300, x302, &x317);
- { uint64_t x320; uint8_t x321 = _addcarryx_u64(x318, x303, x305, &x320);
- { uint64_t x323; uint8_t x324 = _addcarryx_u64(x321, x306, x308, &x323);
- { uint64_t x326; uint8_t x327 = _addcarryx_u64(x324, x309, x311, &x326);
- { uint64_t x329; uint8_t x330 = _addcarryx_u64(x327, x312, x314, &x329);
- { uint64_t x332; uint8_t _ = _addcarryx_u64(0x0, x330, x315, &x332);
- { uint64_t _; uint8_t x336 = _addcarryx_u64(0x0, x275, x299, &_);
- { uint64_t x338; uint8_t x339 = _addcarryx_u64(x336, x278, x317, &x338);
- { uint64_t x341; uint8_t x342 = _addcarryx_u64(x339, x281, x320, &x341);
- { uint64_t x344; uint8_t x345 = _addcarryx_u64(x342, x284, x323, &x344);
- { uint64_t x347; uint8_t x348 = _addcarryx_u64(x345, x287, x326, &x347);
- { uint64_t x350; uint8_t x351 = _addcarryx_u64(x348, x290, x329, &x350);
- { uint64_t x353; uint8_t x354 = _addcarryx_u64(x351, x293, x332, &x353);
- { uint8_t x355 = (x354 + x294);
- { uint64_t x358; uint64_t x357 = _mulx_u64(x11, x15, &x358);
- { uint64_t x361; uint64_t x360 = _mulx_u64(x11, x17, &x361);
- { uint64_t x364; uint64_t x363 = _mulx_u64(x11, x19, &x364);
- { uint64_t x367; uint64_t x366 = _mulx_u64(x11, x21, &x367);
- { uint64_t x370; uint64_t x369 = _mulx_u64(x11, x23, &x370);
- { uint64_t x373; uint64_t x372 = _mulx_u64(x11, x22, &x373);
- { uint64_t x375; uint8_t x376 = _addcarryx_u64(0x0, x358, x360, &x375);
- { uint64_t x378; uint8_t x379 = _addcarryx_u64(x376, x361, x363, &x378);
- { uint64_t x381; uint8_t x382 = _addcarryx_u64(x379, x364, x366, &x381);
- { uint64_t x384; uint8_t x385 = _addcarryx_u64(x382, x367, x369, &x384);
- { uint64_t x387; uint8_t x388 = _addcarryx_u64(x385, x370, x372, &x387);
- { uint64_t x390; uint8_t _ = _addcarryx_u64(0x0, x388, x373, &x390);
- { uint64_t x393; uint8_t x394 = _addcarryx_u64(0x0, x338, x357, &x393);
- { uint64_t x396; uint8_t x397 = _addcarryx_u64(x394, x341, x375, &x396);
- { uint64_t x399; uint8_t x400 = _addcarryx_u64(x397, x344, x378, &x399);
- { uint64_t x402; uint8_t x403 = _addcarryx_u64(x400, x347, x381, &x402);
- { uint64_t x405; uint8_t x406 = _addcarryx_u64(x403, x350, x384, &x405);
- { uint64_t x408; uint8_t x409 = _addcarryx_u64(x406, x353, x387, &x408);
- { uint64_t x411; uint8_t x412 = _addcarryx_u64(x409, x355, x390, &x411);
- { uint64_t _; uint64_t x414 = _mulx_u64(x393, 0xec9e48ae6f71de15L, &_);
- { uint64_t x418; uint64_t x417 = _mulx_u64(x414, 0xfffffffffffffec3L, &x418);
- { uint64_t x421; uint64_t x420 = _mulx_u64(x414, 0xffffffffffffffffL, &x421);
- { uint64_t x424; uint64_t x423 = _mulx_u64(x414, 0xffffffffffffffffL, &x424);
- { uint64_t x427; uint64_t x426 = _mulx_u64(x414, 0xffffffffffffffffL, &x427);
- { uint64_t x430; uint64_t x429 = _mulx_u64(x414, 0xffffffffffffffffL, &x430);
- { uint64_t x433; uint64_t x432 = _mulx_u64(x414, 0xffffffffffffffffL, &x433);
- { uint64_t x435; uint8_t x436 = _addcarryx_u64(0x0, x418, x420, &x435);
- { uint64_t x438; uint8_t x439 = _addcarryx_u64(x436, x421, x423, &x438);
- { uint64_t x441; uint8_t x442 = _addcarryx_u64(x439, x424, x426, &x441);
- { uint64_t x444; uint8_t x445 = _addcarryx_u64(x442, x427, x429, &x444);
- { uint64_t x447; uint8_t x448 = _addcarryx_u64(x445, x430, x432, &x447);
- { uint64_t x450; uint8_t _ = _addcarryx_u64(0x0, x448, x433, &x450);
- { uint64_t _; uint8_t x454 = _addcarryx_u64(0x0, x393, x417, &_);
- { uint64_t x456; uint8_t x457 = _addcarryx_u64(x454, x396, x435, &x456);
- { uint64_t x459; uint8_t x460 = _addcarryx_u64(x457, x399, x438, &x459);
- { uint64_t x462; uint8_t x463 = _addcarryx_u64(x460, x402, x441, &x462);
- { uint64_t x465; uint8_t x466 = _addcarryx_u64(x463, x405, x444, &x465);
- { uint64_t x468; uint8_t x469 = _addcarryx_u64(x466, x408, x447, &x468);
- { uint64_t x471; uint8_t x472 = _addcarryx_u64(x469, x411, x450, &x471);
- { uint8_t x473 = (x472 + x412);
- { uint64_t x476; uint64_t x475 = _mulx_u64(x13, x15, &x476);
- { uint64_t x479; uint64_t x478 = _mulx_u64(x13, x17, &x479);
- { uint64_t x482; uint64_t x481 = _mulx_u64(x13, x19, &x482);
- { uint64_t x485; uint64_t x484 = _mulx_u64(x13, x21, &x485);
- { uint64_t x488; uint64_t x487 = _mulx_u64(x13, x23, &x488);
- { uint64_t x491; uint64_t x490 = _mulx_u64(x13, x22, &x491);
- { uint64_t x493; uint8_t x494 = _addcarryx_u64(0x0, x476, x478, &x493);
- { uint64_t x496; uint8_t x497 = _addcarryx_u64(x494, x479, x481, &x496);
- { uint64_t x499; uint8_t x500 = _addcarryx_u64(x497, x482, x484, &x499);
- { uint64_t x502; uint8_t x503 = _addcarryx_u64(x500, x485, x487, &x502);
- { uint64_t x505; uint8_t x506 = _addcarryx_u64(x503, x488, x490, &x505);
- { uint64_t x508; uint8_t _ = _addcarryx_u64(0x0, x506, x491, &x508);
- { uint64_t x511; uint8_t x512 = _addcarryx_u64(0x0, x456, x475, &x511);
- { uint64_t x514; uint8_t x515 = _addcarryx_u64(x512, x459, x493, &x514);
- { uint64_t x517; uint8_t x518 = _addcarryx_u64(x515, x462, x496, &x517);
- { uint64_t x520; uint8_t x521 = _addcarryx_u64(x518, x465, x499, &x520);
- { uint64_t x523; uint8_t x524 = _addcarryx_u64(x521, x468, x502, &x523);
- { uint64_t x526; uint8_t x527 = _addcarryx_u64(x524, x471, x505, &x526);
- { uint64_t x529; uint8_t x530 = _addcarryx_u64(x527, x473, x508, &x529);
- { uint64_t _; uint64_t x532 = _mulx_u64(x511, 0xec9e48ae6f71de15L, &_);
- { uint64_t x536; uint64_t x535 = _mulx_u64(x532, 0xfffffffffffffec3L, &x536);
- { uint64_t x539; uint64_t x538 = _mulx_u64(x532, 0xffffffffffffffffL, &x539);
- { uint64_t x542; uint64_t x541 = _mulx_u64(x532, 0xffffffffffffffffL, &x542);
- { uint64_t x545; uint64_t x544 = _mulx_u64(x532, 0xffffffffffffffffL, &x545);
- { uint64_t x548; uint64_t x547 = _mulx_u64(x532, 0xffffffffffffffffL, &x548);
- { uint64_t x551; uint64_t x550 = _mulx_u64(x532, 0xffffffffffffffffL, &x551);
- { uint64_t x553; uint8_t x554 = _addcarryx_u64(0x0, x536, x538, &x553);
- { uint64_t x556; uint8_t x557 = _addcarryx_u64(x554, x539, x541, &x556);
- { uint64_t x559; uint8_t x560 = _addcarryx_u64(x557, x542, x544, &x559);
- { uint64_t x562; uint8_t x563 = _addcarryx_u64(x560, x545, x547, &x562);
- { uint64_t x565; uint8_t x566 = _addcarryx_u64(x563, x548, x550, &x565);
- { uint64_t x568; uint8_t _ = _addcarryx_u64(0x0, x566, x551, &x568);
- { uint64_t _; uint8_t x572 = _addcarryx_u64(0x0, x511, x535, &_);
- { uint64_t x574; uint8_t x575 = _addcarryx_u64(x572, x514, x553, &x574);
- { uint64_t x577; uint8_t x578 = _addcarryx_u64(x575, x517, x556, &x577);
- { uint64_t x580; uint8_t x581 = _addcarryx_u64(x578, x520, x559, &x580);
- { uint64_t x583; uint8_t x584 = _addcarryx_u64(x581, x523, x562, &x583);
- { uint64_t x586; uint8_t x587 = _addcarryx_u64(x584, x526, x565, &x586);
- { uint64_t x589; uint8_t x590 = _addcarryx_u64(x587, x529, x568, &x589);
- { uint8_t x591 = (x590 + x530);
- { uint64_t x594; uint64_t x593 = _mulx_u64(x12, x15, &x594);
- { uint64_t x597; uint64_t x596 = _mulx_u64(x12, x17, &x597);
- { uint64_t x600; uint64_t x599 = _mulx_u64(x12, x19, &x600);
- { uint64_t x603; uint64_t x602 = _mulx_u64(x12, x21, &x603);
- { uint64_t x606; uint64_t x605 = _mulx_u64(x12, x23, &x606);
- { uint64_t x609; uint64_t x608 = _mulx_u64(x12, x22, &x609);
- { uint64_t x611; uint8_t x612 = _addcarryx_u64(0x0, x594, x596, &x611);
- { uint64_t x614; uint8_t x615 = _addcarryx_u64(x612, x597, x599, &x614);
- { uint64_t x617; uint8_t x618 = _addcarryx_u64(x615, x600, x602, &x617);
- { uint64_t x620; uint8_t x621 = _addcarryx_u64(x618, x603, x605, &x620);
- { uint64_t x623; uint8_t x624 = _addcarryx_u64(x621, x606, x608, &x623);
- { uint64_t x626; uint8_t _ = _addcarryx_u64(0x0, x624, x609, &x626);
- { uint64_t x629; uint8_t x630 = _addcarryx_u64(0x0, x574, x593, &x629);
- { uint64_t x632; uint8_t x633 = _addcarryx_u64(x630, x577, x611, &x632);
- { uint64_t x635; uint8_t x636 = _addcarryx_u64(x633, x580, x614, &x635);
- { uint64_t x638; uint8_t x639 = _addcarryx_u64(x636, x583, x617, &x638);
- { uint64_t x641; uint8_t x642 = _addcarryx_u64(x639, x586, x620, &x641);
- { uint64_t x644; uint8_t x645 = _addcarryx_u64(x642, x589, x623, &x644);
- { uint64_t x647; uint8_t x648 = _addcarryx_u64(x645, x591, x626, &x647);
- { uint64_t _; uint64_t x650 = _mulx_u64(x629, 0xec9e48ae6f71de15L, &_);
- { uint64_t x654; uint64_t x653 = _mulx_u64(x650, 0xfffffffffffffec3L, &x654);
- { uint64_t x657; uint64_t x656 = _mulx_u64(x650, 0xffffffffffffffffL, &x657);
- { uint64_t x660; uint64_t x659 = _mulx_u64(x650, 0xffffffffffffffffL, &x660);
- { uint64_t x663; uint64_t x662 = _mulx_u64(x650, 0xffffffffffffffffL, &x663);
- { uint64_t x666; uint64_t x665 = _mulx_u64(x650, 0xffffffffffffffffL, &x666);
- { uint64_t x669; uint64_t x668 = _mulx_u64(x650, 0xffffffffffffffffL, &x669);
- { uint64_t x671; uint8_t x672 = _addcarryx_u64(0x0, x654, x656, &x671);
- { uint64_t x674; uint8_t x675 = _addcarryx_u64(x672, x657, x659, &x674);
- { uint64_t x677; uint8_t x678 = _addcarryx_u64(x675, x660, x662, &x677);
- { uint64_t x680; uint8_t x681 = _addcarryx_u64(x678, x663, x665, &x680);
- { uint64_t x683; uint8_t x684 = _addcarryx_u64(x681, x666, x668, &x683);
- { uint64_t x686; uint8_t _ = _addcarryx_u64(0x0, x684, x669, &x686);
- { uint64_t _; uint8_t x690 = _addcarryx_u64(0x0, x629, x653, &_);
- { uint64_t x692; uint8_t x693 = _addcarryx_u64(x690, x632, x671, &x692);
- { uint64_t x695; uint8_t x696 = _addcarryx_u64(x693, x635, x674, &x695);
- { uint64_t x698; uint8_t x699 = _addcarryx_u64(x696, x638, x677, &x698);
- { uint64_t x701; uint8_t x702 = _addcarryx_u64(x699, x641, x680, &x701);
- { uint64_t x704; uint8_t x705 = _addcarryx_u64(x702, x644, x683, &x704);
- { uint64_t x707; uint8_t x708 = _addcarryx_u64(x705, x647, x686, &x707);
- { uint8_t x709 = (x708 + x648);
- { uint64_t x711; uint8_t x712 = _subborrow_u64(0x0, x692, 0xfffffffffffffec3L, &x711);
- { uint64_t x714; uint8_t x715 = _subborrow_u64(x712, x695, 0xffffffffffffffffL, &x714);
- { uint64_t x717; uint8_t x718 = _subborrow_u64(x715, x698, 0xffffffffffffffffL, &x717);
- { uint64_t x720; uint8_t x721 = _subborrow_u64(x718, x701, 0xffffffffffffffffL, &x720);
- { uint64_t x723; uint8_t x724 = _subborrow_u64(x721, x704, 0xffffffffffffffffL, &x723);
- { uint64_t x726; uint8_t x727 = _subborrow_u64(x724, x707, 0xffffffffffffffffL, &x726);
- { uint64_t _; uint8_t x730 = _subborrow_u64(x727, x709, 0x0, &_);
- { uint64_t x731 = cmovznz64(x730, x726, x707);
- { uint64_t x732 = cmovznz64(x730, x723, x704);
- { uint64_t x733 = cmovznz64(x730, x720, x701);
- { uint64_t x734 = cmovznz64(x730, x717, x698);
- { uint64_t x735 = cmovznz64(x730, x714, x695);
- { uint64_t x736 = cmovznz64(x730, x711, x692);
- out[0] = x736;
- out[1] = x735;
- out[2] = x734;
- out[3] = x733;
- out[4] = x732;
- out[5] = x731;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e384m317_6limbs/femul.v b/src/Specific/montgomery64_2e384m317_6limbs/femul.v
deleted file mode 100644
index 5fafa981a..000000000
--- a/src/Specific/montgomery64_2e384m317_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e384m317_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e384m317_6limbs/femulDisplay.log b/src/Specific/montgomery64_2e384m317_6limbs/femulDisplay.log
deleted file mode 100644
index eadcc1c62..000000000
--- a/src/Specific/montgomery64_2e384m317_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,252 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint64_t x26 = mulx_u64(x5, x15);
- uint64_t x28, uint64_t x29 = mulx_u64(x5, x17);
- uint64_t x31, uint64_t x32 = mulx_u64(x5, x19);
- uint64_t x34, uint64_t x35 = mulx_u64(x5, x21);
- uint64_t x37, uint64_t x38 = mulx_u64(x5, x23);
- uint64_t x40, uint64_t x41 = mulx_u64(x5, x22);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x26, x28);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x29, x31);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x47, x32, x34);
- uint64_t x52, uint8_t x53 = addcarryx_u64(x50, x35, x37);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x38, x40);
- uint64_t x58, uint8_t _ = addcarryx_u64(0x0, x56, x41);
- uint64_t x61, uint64_t _ = mulx_u64(x25, 0xec9e48ae6f71de15L);
- uint64_t x64, uint64_t x65 = mulx_u64(x61, 0xfffffffffffffec3L);
- uint64_t x67, uint64_t x68 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x70, uint64_t x71 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x73, uint64_t x74 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x76, uint64_t x77 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x79, uint64_t x80 = mulx_u64(x61, 0xffffffffffffffffL);
- uint64_t x82, uint8_t x83 = addcarryx_u64(0x0, x65, x67);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x68, x70);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x71, x73);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x74, x76);
- uint64_t x94, uint8_t x95 = addcarryx_u64(x92, x77, x79);
- uint64_t x97, uint8_t _ = addcarryx_u64(0x0, x95, x80);
- uint64_t _, uint8_t x101 = addcarryx_u64(0x0, x25, x64);
- uint64_t x103, uint8_t x104 = addcarryx_u64(x101, x43, x82);
- uint64_t x106, uint8_t x107 = addcarryx_u64(x104, x46, x85);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x49, x88);
- uint64_t x112, uint8_t x113 = addcarryx_u64(x110, x52, x91);
- uint64_t x115, uint8_t x116 = addcarryx_u64(x113, x55, x94);
- uint64_t x118, uint8_t x119 = addcarryx_u64(x116, x58, x97);
- uint64_t x121, uint64_t x122 = mulx_u64(x7, x15);
- uint64_t x124, uint64_t x125 = mulx_u64(x7, x17);
- uint64_t x127, uint64_t x128 = mulx_u64(x7, x19);
- uint64_t x130, uint64_t x131 = mulx_u64(x7, x21);
- uint64_t x133, uint64_t x134 = mulx_u64(x7, x23);
- uint64_t x136, uint64_t x137 = mulx_u64(x7, x22);
- uint64_t x139, uint8_t x140 = addcarryx_u64(0x0, x122, x124);
- uint64_t x142, uint8_t x143 = addcarryx_u64(x140, x125, x127);
- uint64_t x145, uint8_t x146 = addcarryx_u64(x143, x128, x130);
- uint64_t x148, uint8_t x149 = addcarryx_u64(x146, x131, x133);
- uint64_t x151, uint8_t x152 = addcarryx_u64(x149, x134, x136);
- uint64_t x154, uint8_t _ = addcarryx_u64(0x0, x152, x137);
- uint64_t x157, uint8_t x158 = addcarryx_u64(0x0, x103, x121);
- uint64_t x160, uint8_t x161 = addcarryx_u64(x158, x106, x139);
- uint64_t x163, uint8_t x164 = addcarryx_u64(x161, x109, x142);
- uint64_t x166, uint8_t x167 = addcarryx_u64(x164, x112, x145);
- uint64_t x169, uint8_t x170 = addcarryx_u64(x167, x115, x148);
- uint64_t x172, uint8_t x173 = addcarryx_u64(x170, x118, x151);
- uint64_t x175, uint8_t x176 = addcarryx_u64(x173, x119, x154);
- uint64_t x178, uint64_t _ = mulx_u64(x157, 0xec9e48ae6f71de15L);
- uint64_t x181, uint64_t x182 = mulx_u64(x178, 0xfffffffffffffec3L);
- uint64_t x184, uint64_t x185 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x187, uint64_t x188 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x190, uint64_t x191 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x193, uint64_t x194 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x196, uint64_t x197 = mulx_u64(x178, 0xffffffffffffffffL);
- uint64_t x199, uint8_t x200 = addcarryx_u64(0x0, x182, x184);
- uint64_t x202, uint8_t x203 = addcarryx_u64(x200, x185, x187);
- uint64_t x205, uint8_t x206 = addcarryx_u64(x203, x188, x190);
- uint64_t x208, uint8_t x209 = addcarryx_u64(x206, x191, x193);
- uint64_t x211, uint8_t x212 = addcarryx_u64(x209, x194, x196);
- uint64_t x214, uint8_t _ = addcarryx_u64(0x0, x212, x197);
- uint64_t _, uint8_t x218 = addcarryx_u64(0x0, x157, x181);
- uint64_t x220, uint8_t x221 = addcarryx_u64(x218, x160, x199);
- uint64_t x223, uint8_t x224 = addcarryx_u64(x221, x163, x202);
- uint64_t x226, uint8_t x227 = addcarryx_u64(x224, x166, x205);
- uint64_t x229, uint8_t x230 = addcarryx_u64(x227, x169, x208);
- uint64_t x232, uint8_t x233 = addcarryx_u64(x230, x172, x211);
- uint64_t x235, uint8_t x236 = addcarryx_u64(x233, x175, x214);
- uint8_t x237 = (x236 + x176);
- uint64_t x239, uint64_t x240 = mulx_u64(x9, x15);
- uint64_t x242, uint64_t x243 = mulx_u64(x9, x17);
- uint64_t x245, uint64_t x246 = mulx_u64(x9, x19);
- uint64_t x248, uint64_t x249 = mulx_u64(x9, x21);
- uint64_t x251, uint64_t x252 = mulx_u64(x9, x23);
- uint64_t x254, uint64_t x255 = mulx_u64(x9, x22);
- uint64_t x257, uint8_t x258 = addcarryx_u64(0x0, x240, x242);
- uint64_t x260, uint8_t x261 = addcarryx_u64(x258, x243, x245);
- uint64_t x263, uint8_t x264 = addcarryx_u64(x261, x246, x248);
- uint64_t x266, uint8_t x267 = addcarryx_u64(x264, x249, x251);
- uint64_t x269, uint8_t x270 = addcarryx_u64(x267, x252, x254);
- uint64_t x272, uint8_t _ = addcarryx_u64(0x0, x270, x255);
- uint64_t x275, uint8_t x276 = addcarryx_u64(0x0, x220, x239);
- uint64_t x278, uint8_t x279 = addcarryx_u64(x276, x223, x257);
- uint64_t x281, uint8_t x282 = addcarryx_u64(x279, x226, x260);
- uint64_t x284, uint8_t x285 = addcarryx_u64(x282, x229, x263);
- uint64_t x287, uint8_t x288 = addcarryx_u64(x285, x232, x266);
- uint64_t x290, uint8_t x291 = addcarryx_u64(x288, x235, x269);
- uint64_t x293, uint8_t x294 = addcarryx_u64(x291, x237, x272);
- uint64_t x296, uint64_t _ = mulx_u64(x275, 0xec9e48ae6f71de15L);
- uint64_t x299, uint64_t x300 = mulx_u64(x296, 0xfffffffffffffec3L);
- uint64_t x302, uint64_t x303 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x305, uint64_t x306 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x308, uint64_t x309 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x311, uint64_t x312 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x314, uint64_t x315 = mulx_u64(x296, 0xffffffffffffffffL);
- uint64_t x317, uint8_t x318 = addcarryx_u64(0x0, x300, x302);
- uint64_t x320, uint8_t x321 = addcarryx_u64(x318, x303, x305);
- uint64_t x323, uint8_t x324 = addcarryx_u64(x321, x306, x308);
- uint64_t x326, uint8_t x327 = addcarryx_u64(x324, x309, x311);
- uint64_t x329, uint8_t x330 = addcarryx_u64(x327, x312, x314);
- uint64_t x332, uint8_t _ = addcarryx_u64(0x0, x330, x315);
- uint64_t _, uint8_t x336 = addcarryx_u64(0x0, x275, x299);
- uint64_t x338, uint8_t x339 = addcarryx_u64(x336, x278, x317);
- uint64_t x341, uint8_t x342 = addcarryx_u64(x339, x281, x320);
- uint64_t x344, uint8_t x345 = addcarryx_u64(x342, x284, x323);
- uint64_t x347, uint8_t x348 = addcarryx_u64(x345, x287, x326);
- uint64_t x350, uint8_t x351 = addcarryx_u64(x348, x290, x329);
- uint64_t x353, uint8_t x354 = addcarryx_u64(x351, x293, x332);
- uint8_t x355 = (x354 + x294);
- uint64_t x357, uint64_t x358 = mulx_u64(x11, x15);
- uint64_t x360, uint64_t x361 = mulx_u64(x11, x17);
- uint64_t x363, uint64_t x364 = mulx_u64(x11, x19);
- uint64_t x366, uint64_t x367 = mulx_u64(x11, x21);
- uint64_t x369, uint64_t x370 = mulx_u64(x11, x23);
- uint64_t x372, uint64_t x373 = mulx_u64(x11, x22);
- uint64_t x375, uint8_t x376 = addcarryx_u64(0x0, x358, x360);
- uint64_t x378, uint8_t x379 = addcarryx_u64(x376, x361, x363);
- uint64_t x381, uint8_t x382 = addcarryx_u64(x379, x364, x366);
- uint64_t x384, uint8_t x385 = addcarryx_u64(x382, x367, x369);
- uint64_t x387, uint8_t x388 = addcarryx_u64(x385, x370, x372);
- uint64_t x390, uint8_t _ = addcarryx_u64(0x0, x388, x373);
- uint64_t x393, uint8_t x394 = addcarryx_u64(0x0, x338, x357);
- uint64_t x396, uint8_t x397 = addcarryx_u64(x394, x341, x375);
- uint64_t x399, uint8_t x400 = addcarryx_u64(x397, x344, x378);
- uint64_t x402, uint8_t x403 = addcarryx_u64(x400, x347, x381);
- uint64_t x405, uint8_t x406 = addcarryx_u64(x403, x350, x384);
- uint64_t x408, uint8_t x409 = addcarryx_u64(x406, x353, x387);
- uint64_t x411, uint8_t x412 = addcarryx_u64(x409, x355, x390);
- uint64_t x414, uint64_t _ = mulx_u64(x393, 0xec9e48ae6f71de15L);
- uint64_t x417, uint64_t x418 = mulx_u64(x414, 0xfffffffffffffec3L);
- uint64_t x420, uint64_t x421 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x423, uint64_t x424 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x426, uint64_t x427 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x429, uint64_t x430 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x432, uint64_t x433 = mulx_u64(x414, 0xffffffffffffffffL);
- uint64_t x435, uint8_t x436 = addcarryx_u64(0x0, x418, x420);
- uint64_t x438, uint8_t x439 = addcarryx_u64(x436, x421, x423);
- uint64_t x441, uint8_t x442 = addcarryx_u64(x439, x424, x426);
- uint64_t x444, uint8_t x445 = addcarryx_u64(x442, x427, x429);
- uint64_t x447, uint8_t x448 = addcarryx_u64(x445, x430, x432);
- uint64_t x450, uint8_t _ = addcarryx_u64(0x0, x448, x433);
- uint64_t _, uint8_t x454 = addcarryx_u64(0x0, x393, x417);
- uint64_t x456, uint8_t x457 = addcarryx_u64(x454, x396, x435);
- uint64_t x459, uint8_t x460 = addcarryx_u64(x457, x399, x438);
- uint64_t x462, uint8_t x463 = addcarryx_u64(x460, x402, x441);
- uint64_t x465, uint8_t x466 = addcarryx_u64(x463, x405, x444);
- uint64_t x468, uint8_t x469 = addcarryx_u64(x466, x408, x447);
- uint64_t x471, uint8_t x472 = addcarryx_u64(x469, x411, x450);
- uint8_t x473 = (x472 + x412);
- uint64_t x475, uint64_t x476 = mulx_u64(x13, x15);
- uint64_t x478, uint64_t x479 = mulx_u64(x13, x17);
- uint64_t x481, uint64_t x482 = mulx_u64(x13, x19);
- uint64_t x484, uint64_t x485 = mulx_u64(x13, x21);
- uint64_t x487, uint64_t x488 = mulx_u64(x13, x23);
- uint64_t x490, uint64_t x491 = mulx_u64(x13, x22);
- uint64_t x493, uint8_t x494 = addcarryx_u64(0x0, x476, x478);
- uint64_t x496, uint8_t x497 = addcarryx_u64(x494, x479, x481);
- uint64_t x499, uint8_t x500 = addcarryx_u64(x497, x482, x484);
- uint64_t x502, uint8_t x503 = addcarryx_u64(x500, x485, x487);
- uint64_t x505, uint8_t x506 = addcarryx_u64(x503, x488, x490);
- uint64_t x508, uint8_t _ = addcarryx_u64(0x0, x506, x491);
- uint64_t x511, uint8_t x512 = addcarryx_u64(0x0, x456, x475);
- uint64_t x514, uint8_t x515 = addcarryx_u64(x512, x459, x493);
- uint64_t x517, uint8_t x518 = addcarryx_u64(x515, x462, x496);
- uint64_t x520, uint8_t x521 = addcarryx_u64(x518, x465, x499);
- uint64_t x523, uint8_t x524 = addcarryx_u64(x521, x468, x502);
- uint64_t x526, uint8_t x527 = addcarryx_u64(x524, x471, x505);
- uint64_t x529, uint8_t x530 = addcarryx_u64(x527, x473, x508);
- uint64_t x532, uint64_t _ = mulx_u64(x511, 0xec9e48ae6f71de15L);
- uint64_t x535, uint64_t x536 = mulx_u64(x532, 0xfffffffffffffec3L);
- uint64_t x538, uint64_t x539 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x541, uint64_t x542 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x544, uint64_t x545 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x547, uint64_t x548 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x550, uint64_t x551 = mulx_u64(x532, 0xffffffffffffffffL);
- uint64_t x553, uint8_t x554 = addcarryx_u64(0x0, x536, x538);
- uint64_t x556, uint8_t x557 = addcarryx_u64(x554, x539, x541);
- uint64_t x559, uint8_t x560 = addcarryx_u64(x557, x542, x544);
- uint64_t x562, uint8_t x563 = addcarryx_u64(x560, x545, x547);
- uint64_t x565, uint8_t x566 = addcarryx_u64(x563, x548, x550);
- uint64_t x568, uint8_t _ = addcarryx_u64(0x0, x566, x551);
- uint64_t _, uint8_t x572 = addcarryx_u64(0x0, x511, x535);
- uint64_t x574, uint8_t x575 = addcarryx_u64(x572, x514, x553);
- uint64_t x577, uint8_t x578 = addcarryx_u64(x575, x517, x556);
- uint64_t x580, uint8_t x581 = addcarryx_u64(x578, x520, x559);
- uint64_t x583, uint8_t x584 = addcarryx_u64(x581, x523, x562);
- uint64_t x586, uint8_t x587 = addcarryx_u64(x584, x526, x565);
- uint64_t x589, uint8_t x590 = addcarryx_u64(x587, x529, x568);
- uint8_t x591 = (x590 + x530);
- uint64_t x593, uint64_t x594 = mulx_u64(x12, x15);
- uint64_t x596, uint64_t x597 = mulx_u64(x12, x17);
- uint64_t x599, uint64_t x600 = mulx_u64(x12, x19);
- uint64_t x602, uint64_t x603 = mulx_u64(x12, x21);
- uint64_t x605, uint64_t x606 = mulx_u64(x12, x23);
- uint64_t x608, uint64_t x609 = mulx_u64(x12, x22);
- uint64_t x611, uint8_t x612 = addcarryx_u64(0x0, x594, x596);
- uint64_t x614, uint8_t x615 = addcarryx_u64(x612, x597, x599);
- uint64_t x617, uint8_t x618 = addcarryx_u64(x615, x600, x602);
- uint64_t x620, uint8_t x621 = addcarryx_u64(x618, x603, x605);
- uint64_t x623, uint8_t x624 = addcarryx_u64(x621, x606, x608);
- uint64_t x626, uint8_t _ = addcarryx_u64(0x0, x624, x609);
- uint64_t x629, uint8_t x630 = addcarryx_u64(0x0, x574, x593);
- uint64_t x632, uint8_t x633 = addcarryx_u64(x630, x577, x611);
- uint64_t x635, uint8_t x636 = addcarryx_u64(x633, x580, x614);
- uint64_t x638, uint8_t x639 = addcarryx_u64(x636, x583, x617);
- uint64_t x641, uint8_t x642 = addcarryx_u64(x639, x586, x620);
- uint64_t x644, uint8_t x645 = addcarryx_u64(x642, x589, x623);
- uint64_t x647, uint8_t x648 = addcarryx_u64(x645, x591, x626);
- uint64_t x650, uint64_t _ = mulx_u64(x629, 0xec9e48ae6f71de15L);
- uint64_t x653, uint64_t x654 = mulx_u64(x650, 0xfffffffffffffec3L);
- uint64_t x656, uint64_t x657 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x659, uint64_t x660 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x662, uint64_t x663 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x665, uint64_t x666 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x668, uint64_t x669 = mulx_u64(x650, 0xffffffffffffffffL);
- uint64_t x671, uint8_t x672 = addcarryx_u64(0x0, x654, x656);
- uint64_t x674, uint8_t x675 = addcarryx_u64(x672, x657, x659);
- uint64_t x677, uint8_t x678 = addcarryx_u64(x675, x660, x662);
- uint64_t x680, uint8_t x681 = addcarryx_u64(x678, x663, x665);
- uint64_t x683, uint8_t x684 = addcarryx_u64(x681, x666, x668);
- uint64_t x686, uint8_t _ = addcarryx_u64(0x0, x684, x669);
- uint64_t _, uint8_t x690 = addcarryx_u64(0x0, x629, x653);
- uint64_t x692, uint8_t x693 = addcarryx_u64(x690, x632, x671);
- uint64_t x695, uint8_t x696 = addcarryx_u64(x693, x635, x674);
- uint64_t x698, uint8_t x699 = addcarryx_u64(x696, x638, x677);
- uint64_t x701, uint8_t x702 = addcarryx_u64(x699, x641, x680);
- uint64_t x704, uint8_t x705 = addcarryx_u64(x702, x644, x683);
- uint64_t x707, uint8_t x708 = addcarryx_u64(x705, x647, x686);
- uint8_t x709 = (x708 + x648);
- uint64_t x711, uint8_t x712 = subborrow_u64(0x0, x692, 0xfffffffffffffec3L);
- uint64_t x714, uint8_t x715 = subborrow_u64(x712, x695, 0xffffffffffffffffL);
- uint64_t x717, uint8_t x718 = subborrow_u64(x715, x698, 0xffffffffffffffffL);
- uint64_t x720, uint8_t x721 = subborrow_u64(x718, x701, 0xffffffffffffffffL);
- uint64_t x723, uint8_t x724 = subborrow_u64(x721, x704, 0xffffffffffffffffL);
- uint64_t x726, uint8_t x727 = subborrow_u64(x724, x707, 0xffffffffffffffffL);
- uint64_t _, uint8_t x730 = subborrow_u64(x727, x709, 0x0);
- uint64_t x731 = cmovznz64(x730, x726, x707);
- uint64_t x732 = cmovznz64(x730, x723, x704);
- uint64_t x733 = cmovznz64(x730, x720, x701);
- uint64_t x734 = cmovznz64(x730, x717, x698);
- uint64_t x735 = cmovznz64(x730, x714, x695);
- uint64_t x736 = cmovznz64(x730, x711, x692);
- return (x731, x732, x733, x734, x735, x736))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e384m317_6limbs/femulDisplay.v b/src/Specific/montgomery64_2e384m317_6limbs/femulDisplay.v
deleted file mode 100644
index e50dbcf16..000000000
--- a/src/Specific/montgomery64_2e384m317_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e384m317_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e384m317_6limbs/fenz.c b/src/Specific/montgomery64_2e384m317_6limbs/fenz.c
deleted file mode 100644
index c93f74257..000000000
--- a/src/Specific/montgomery64_2e384m317_6limbs/fenz.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x11 = (x10 | x9);
- { uint64_t x12 = (x8 | x11);
- { uint64_t x13 = (x6 | x12);
- { uint64_t x14 = (x4 | x13);
- { uint64_t x15 = (x2 | x14);
- out[0] = x15;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e384m317_6limbs/fenz.v b/src/Specific/montgomery64_2e384m317_6limbs/fenz.v
deleted file mode 100644
index b18aee6c7..000000000
--- a/src/Specific/montgomery64_2e384m317_6limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e384m317_6limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e384m317_6limbs/fenzDisplay.log b/src/Specific/montgomery64_2e384m317_6limbs/fenzDisplay.log
deleted file mode 100644
index f39f1d91b..000000000
--- a/src/Specific/montgomery64_2e384m317_6limbs/fenzDisplay.log
+++ /dev/null
@@ -1,12 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x11 = (x10 | x9);
- uint64_t x12 = (x8 | x11);
- uint64_t x13 = (x6 | x12);
- uint64_t x14 = (x4 | x13);
- uint64_t x15 = (x2 | x14);
- return x15)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e384m317_6limbs/fenzDisplay.v b/src/Specific/montgomery64_2e384m317_6limbs/fenzDisplay.v
deleted file mode 100644
index 577a48502..000000000
--- a/src/Specific/montgomery64_2e384m317_6limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e384m317_6limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e384m317_6limbs/feopp.c b/src/Specific/montgomery64_2e384m317_6limbs/feopp.c
deleted file mode 100644
index 1e3821350..000000000
--- a/src/Specific/montgomery64_2e384m317_6limbs/feopp.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feopp(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12; uint8_t x13 = _subborrow_u64(0x0, 0x0, x2, &x12);
- { uint64_t x15; uint8_t x16 = _subborrow_u64(x13, 0x0, x4, &x15);
- { uint64_t x18; uint8_t x19 = _subborrow_u64(x16, 0x0, x6, &x18);
- { uint64_t x21; uint8_t x22 = _subborrow_u64(x19, 0x0, x8, &x21);
- { uint64_t x24; uint8_t x25 = _subborrow_u64(x22, 0x0, x10, &x24);
- { uint64_t x27; uint8_t x28 = _subborrow_u64(x25, 0x0, x9, &x27);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0xfffffffffffffec3L);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(0x0, x12, x30, &x32);
- { uint64_t x34 = (x29 & 0xffffffffffffffffL);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x33, x15, x34, &x36);
- { uint64_t x38 = (x29 & 0xffffffffffffffffL);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x37, x18, x38, &x40);
- { uint64_t x42 = (x29 & 0xffffffffffffffffL);
- { uint64_t x44; uint8_t x45 = _addcarryx_u64(x41, x21, x42, &x44);
- { uint64_t x46 = (x29 & 0xffffffffffffffffL);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x45, x24, x46, &x48);
- { uint64_t x50 = (x29 & 0xffffffffffffffffL);
- { uint64_t x52; uint8_t _ = _addcarryx_u64(x49, x27, x50, &x52);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e384m317_6limbs/feopp.v b/src/Specific/montgomery64_2e384m317_6limbs/feopp.v
deleted file mode 100644
index 1397f11e0..000000000
--- a/src/Specific/montgomery64_2e384m317_6limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e384m317_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e384m317_6limbs/feoppDisplay.log b/src/Specific/montgomery64_2e384m317_6limbs/feoppDisplay.log
deleted file mode 100644
index 096edacb8..000000000
--- a/src/Specific/montgomery64_2e384m317_6limbs/feoppDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x15, uint8_t x16 = subborrow_u64(x13, 0x0, x4);
- uint64_t x18, uint8_t x19 = subborrow_u64(x16, 0x0, x6);
- uint64_t x21, uint8_t x22 = subborrow_u64(x19, 0x0, x8);
- uint64_t x24, uint8_t x25 = subborrow_u64(x22, 0x0, x10);
- uint64_t x27, uint8_t x28 = subborrow_u64(x25, 0x0, x9);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0xfffffffffffffec3L);
- uint64_t x32, uint8_t x33 = addcarryx_u64(0x0, x12, x30);
- uint64_t x34 = (x29 & 0xffffffffffffffffL);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x33, x15, x34);
- uint64_t x38 = (x29 & 0xffffffffffffffffL);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x37, x18, x38);
- uint64_t x42 = (x29 & 0xffffffffffffffffL);
- uint64_t x44, uint8_t x45 = addcarryx_u64(x41, x21, x42);
- uint64_t x46 = (x29 & 0xffffffffffffffffL);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x45, x24, x46);
- uint64_t x50 = (x29 & 0xffffffffffffffffL);
- uint64_t x52, uint8_t _ = addcarryx_u64(x49, x27, x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e384m317_6limbs/feoppDisplay.v b/src/Specific/montgomery64_2e384m317_6limbs/feoppDisplay.v
deleted file mode 100644
index 302f7d604..000000000
--- a/src/Specific/montgomery64_2e384m317_6limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e384m317_6limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e384m317_6limbs/fesquare.c b/src/Specific/montgomery64_2e384m317_6limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e384m317_6limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e384m317_6limbs/fesub.c b/src/Specific/montgomery64_2e384m317_6limbs/fesub.c
deleted file mode 100644
index 600d8f46f..000000000
--- a/src/Specific/montgomery64_2e384m317_6limbs/fesub.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _subborrow_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _subborrow_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _subborrow_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _subborrow_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _subborrow_u64(x38, x12, x22, &x40);
- { uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- { uint64_t x43 = (x42 & 0xfffffffffffffec3L);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(0x0, x25, x43, &x45);
- { uint64_t x47 = (x42 & 0xffffffffffffffffL);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x46, x28, x47, &x49);
- { uint64_t x51 = (x42 & 0xffffffffffffffffL);
- { uint64_t x53; uint8_t x54 = _addcarryx_u64(x50, x31, x51, &x53);
- { uint64_t x55 = (x42 & 0xffffffffffffffffL);
- { uint64_t x57; uint8_t x58 = _addcarryx_u64(x54, x34, x55, &x57);
- { uint64_t x59 = (x42 & 0xffffffffffffffffL);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x58, x37, x59, &x61);
- { uint64_t x63 = (x42 & 0xffffffffffffffffL);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(x62, x40, x63, &x65);
- out[0] = x45;
- out[1] = x49;
- out[2] = x53;
- out[3] = x57;
- out[4] = x61;
- out[5] = x65;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e384m317_6limbs/fesub.v b/src/Specific/montgomery64_2e384m317_6limbs/fesub.v
deleted file mode 100644
index 8e5c971b5..000000000
--- a/src/Specific/montgomery64_2e384m317_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e384m317_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e384m317_6limbs/fesubDisplay.log b/src/Specific/montgomery64_2e384m317_6limbs/fesubDisplay.log
deleted file mode 100644
index f66a7568e..000000000
--- a/src/Specific/montgomery64_2e384m317_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = subborrow_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = subborrow_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = subborrow_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = subborrow_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = subborrow_u64(x38, x12, x22);
- uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- uint64_t x43 = (x42 & 0xfffffffffffffec3L);
- uint64_t x45, uint8_t x46 = addcarryx_u64(0x0, x25, x43);
- uint64_t x47 = (x42 & 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x46, x28, x47);
- uint64_t x51 = (x42 & 0xffffffffffffffffL);
- uint64_t x53, uint8_t x54 = addcarryx_u64(x50, x31, x51);
- uint64_t x55 = (x42 & 0xffffffffffffffffL);
- uint64_t x57, uint8_t x58 = addcarryx_u64(x54, x34, x55);
- uint64_t x59 = (x42 & 0xffffffffffffffffL);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x58, x37, x59);
- uint64_t x63 = (x42 & 0xffffffffffffffffL);
- uint64_t x65, uint8_t _ = addcarryx_u64(x62, x40, x63);
- (Return x65, Return x61, Return x57, Return x53, Return x49, Return x45))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e384m317_6limbs/fesubDisplay.v b/src/Specific/montgomery64_2e384m317_6limbs/fesubDisplay.v
deleted file mode 100644
index ace83fedb..000000000
--- a/src/Specific/montgomery64_2e384m317_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e384m317_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e384m317_6limbs/py_interpreter.sh b/src/Specific/montgomery64_2e384m317_6limbs/py_interpreter.sh
deleted file mode 100755
index b209001ee..000000000
--- a/src/Specific/montgomery64_2e384m317_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**384 - 317' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/CurveParameters.v b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/CurveParameters.v
deleted file mode 100644
index 6642c8a5b..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^384 - 5*2^368 - 1
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 64;
- bitwidth := 64;
- s := 2^384;
- c := [(1, 1); (5, 2^368)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e384m5x2e368m1_6limbs/Synthesis.v b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/Synthesis.v
deleted file mode 100644
index 6ff233bdb..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e384m5x2e368m1_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/montgomery64_2e384m5x2e368m1_6limbs/compiler.sh b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/compiler.sh
deleted file mode 100755
index 6da62391e..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/compilerxx.sh b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/compilerxx.sh
deleted file mode 100755
index 493868c16..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xfa,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<384) - 5*(1_mpz<<368) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feadd.c b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feadd.c
deleted file mode 100644
index f7bc3c4f8..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feadd.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _addcarryx_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _addcarryx_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x38, x12, x22, &x40);
- { uint64_t x43; uint8_t x44 = _subborrow_u64(0x0, x25, 0xffffffffffffffffL, &x43);
- { uint64_t x46; uint8_t x47 = _subborrow_u64(x44, x28, 0xffffffffffffffffL, &x46);
- { uint64_t x49; uint8_t x50 = _subborrow_u64(x47, x31, 0xffffffffffffffffL, &x49);
- { uint64_t x52; uint8_t x53 = _subborrow_u64(x50, x34, 0xffffffffffffffffL, &x52);
- { uint64_t x55; uint8_t x56 = _subborrow_u64(x53, x37, 0xffffffffffffffffL, &x55);
- { uint64_t x58; uint8_t x59 = _subborrow_u64(x56, x40, 0xfffaffffffffffffL, &x58);
- { uint64_t _; uint8_t x62 = _subborrow_u64(x59, x41, 0x0, &_);
- { uint64_t x63 = cmovznz64(x62, x58, x40);
- { uint64_t x64 = cmovznz64(x62, x55, x37);
- { uint64_t x65 = cmovznz64(x62, x52, x34);
- { uint64_t x66 = cmovznz64(x62, x49, x31);
- { uint64_t x67 = cmovznz64(x62, x46, x28);
- { uint64_t x68 = cmovznz64(x62, x43, x25);
- out[0] = x68;
- out[1] = x67;
- out[2] = x66;
- out[3] = x65;
- out[4] = x64;
- out[5] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feadd.v b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feadd.v
deleted file mode 100644
index c1e435b4e..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e384m5x2e368m1_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feaddDisplay.log b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feaddDisplay.log
deleted file mode 100644
index 222cf00b2..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = addcarryx_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = addcarryx_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = addcarryx_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = addcarryx_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x38, x12, x22);
- uint64_t x43, uint8_t x44 = subborrow_u64(0x0, x25, 0xffffffffffffffffL);
- uint64_t x46, uint8_t x47 = subborrow_u64(x44, x28, 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = subborrow_u64(x47, x31, 0xffffffffffffffffL);
- uint64_t x52, uint8_t x53 = subborrow_u64(x50, x34, 0xffffffffffffffffL);
- uint64_t x55, uint8_t x56 = subborrow_u64(x53, x37, 0xffffffffffffffffL);
- uint64_t x58, uint8_t x59 = subborrow_u64(x56, x40, 0xfffaffffffffffffL);
- uint64_t _, uint8_t x62 = subborrow_u64(x59, x41, 0x0);
- uint64_t x63 = cmovznz64(x62, x58, x40);
- uint64_t x64 = cmovznz64(x62, x55, x37);
- uint64_t x65 = cmovznz64(x62, x52, x34);
- uint64_t x66 = cmovznz64(x62, x49, x31);
- uint64_t x67 = cmovznz64(x62, x46, x28);
- uint64_t x68 = cmovznz64(x62, x43, x25);
- return (x63, x64, x65, x66, x67, x68))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feaddDisplay.v b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feaddDisplay.v
deleted file mode 100644
index b405d92ab..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e384m5x2e368m1_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/femul.c b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/femul.c
deleted file mode 100644
index 1df4cfe62..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/femul.c
+++ /dev/null
@@ -1,260 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x26; uint64_t x25 = _mulx_u64(x5, x15, &x26);
- { uint64_t x29; uint64_t x28 = _mulx_u64(x5, x17, &x29);
- { uint64_t x32; uint64_t x31 = _mulx_u64(x5, x19, &x32);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x5, x21, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x5, x23, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x5, x22, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x26, x28, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x29, x31, &x46);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x47, x32, x34, &x49);
- { uint64_t x52; uint8_t x53 = _addcarryx_u64(x50, x35, x37, &x52);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x38, x40, &x55);
- { uint64_t x58; uint8_t _ = _addcarryx_u64(0x0, x56, x41, &x58);
- { uint64_t x62; uint64_t x61 = _mulx_u64(x25, 0xffffffffffffffffL, &x62);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x25, 0xffffffffffffffffL, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x25, 0xffffffffffffffffL, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x25, 0xffffffffffffffffL, &x71);
- { uint64_t x74; uint64_t x73 = _mulx_u64(x25, 0xffffffffffffffffL, &x74);
- { uint64_t x77; uint64_t x76 = _mulx_u64(x25, 0xfffaffffffffffffL, &x77);
- { uint64_t x79; uint8_t x80 = _addcarryx_u64(0x0, x62, x64, &x79);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(x80, x65, x67, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x68, x70, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x71, x73, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x74, x76, &x91);
- { uint64_t x94; uint8_t _ = _addcarryx_u64(0x0, x92, x77, &x94);
- { uint64_t _; uint8_t x98 = _addcarryx_u64(0x0, x25, x61, &_);
- { uint64_t x100; uint8_t x101 = _addcarryx_u64(x98, x43, x79, &x100);
- { uint64_t x103; uint8_t x104 = _addcarryx_u64(x101, x46, x82, &x103);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(x104, x49, x85, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x52, x88, &x109);
- { uint64_t x112; uint8_t x113 = _addcarryx_u64(x110, x55, x91, &x112);
- { uint64_t x115; uint8_t x116 = _addcarryx_u64(x113, x58, x94, &x115);
- { uint64_t x119; uint64_t x118 = _mulx_u64(x7, x15, &x119);
- { uint64_t x122; uint64_t x121 = _mulx_u64(x7, x17, &x122);
- { uint64_t x125; uint64_t x124 = _mulx_u64(x7, x19, &x125);
- { uint64_t x128; uint64_t x127 = _mulx_u64(x7, x21, &x128);
- { uint64_t x131; uint64_t x130 = _mulx_u64(x7, x23, &x131);
- { uint64_t x134; uint64_t x133 = _mulx_u64(x7, x22, &x134);
- { uint64_t x136; uint8_t x137 = _addcarryx_u64(0x0, x119, x121, &x136);
- { uint64_t x139; uint8_t x140 = _addcarryx_u64(x137, x122, x124, &x139);
- { uint64_t x142; uint8_t x143 = _addcarryx_u64(x140, x125, x127, &x142);
- { uint64_t x145; uint8_t x146 = _addcarryx_u64(x143, x128, x130, &x145);
- { uint64_t x148; uint8_t x149 = _addcarryx_u64(x146, x131, x133, &x148);
- { uint64_t x151; uint8_t _ = _addcarryx_u64(0x0, x149, x134, &x151);
- { uint64_t x154; uint8_t x155 = _addcarryx_u64(0x0, x100, x118, &x154);
- { uint64_t x157; uint8_t x158 = _addcarryx_u64(x155, x103, x136, &x157);
- { uint64_t x160; uint8_t x161 = _addcarryx_u64(x158, x106, x139, &x160);
- { uint64_t x163; uint8_t x164 = _addcarryx_u64(x161, x109, x142, &x163);
- { uint64_t x166; uint8_t x167 = _addcarryx_u64(x164, x112, x145, &x166);
- { uint64_t x169; uint8_t x170 = _addcarryx_u64(x167, x115, x148, &x169);
- { uint64_t x172; uint8_t x173 = _addcarryx_u64(x170, x116, x151, &x172);
- { uint64_t x176; uint64_t x175 = _mulx_u64(x154, 0xffffffffffffffffL, &x176);
- { uint64_t x179; uint64_t x178 = _mulx_u64(x154, 0xffffffffffffffffL, &x179);
- { uint64_t x182; uint64_t x181 = _mulx_u64(x154, 0xffffffffffffffffL, &x182);
- { uint64_t x185; uint64_t x184 = _mulx_u64(x154, 0xffffffffffffffffL, &x185);
- { uint64_t x188; uint64_t x187 = _mulx_u64(x154, 0xffffffffffffffffL, &x188);
- { uint64_t x191; uint64_t x190 = _mulx_u64(x154, 0xfffaffffffffffffL, &x191);
- { uint64_t x193; uint8_t x194 = _addcarryx_u64(0x0, x176, x178, &x193);
- { uint64_t x196; uint8_t x197 = _addcarryx_u64(x194, x179, x181, &x196);
- { uint64_t x199; uint8_t x200 = _addcarryx_u64(x197, x182, x184, &x199);
- { uint64_t x202; uint8_t x203 = _addcarryx_u64(x200, x185, x187, &x202);
- { uint64_t x205; uint8_t x206 = _addcarryx_u64(x203, x188, x190, &x205);
- { uint64_t x208; uint8_t _ = _addcarryx_u64(0x0, x206, x191, &x208);
- { uint64_t _; uint8_t x212 = _addcarryx_u64(0x0, x154, x175, &_);
- { uint64_t x214; uint8_t x215 = _addcarryx_u64(x212, x157, x193, &x214);
- { uint64_t x217; uint8_t x218 = _addcarryx_u64(x215, x160, x196, &x217);
- { uint64_t x220; uint8_t x221 = _addcarryx_u64(x218, x163, x199, &x220);
- { uint64_t x223; uint8_t x224 = _addcarryx_u64(x221, x166, x202, &x223);
- { uint64_t x226; uint8_t x227 = _addcarryx_u64(x224, x169, x205, &x226);
- { uint64_t x229; uint8_t x230 = _addcarryx_u64(x227, x172, x208, &x229);
- { uint8_t x231 = (x230 + x173);
- { uint64_t x234; uint64_t x233 = _mulx_u64(x9, x15, &x234);
- { uint64_t x237; uint64_t x236 = _mulx_u64(x9, x17, &x237);
- { uint64_t x240; uint64_t x239 = _mulx_u64(x9, x19, &x240);
- { uint64_t x243; uint64_t x242 = _mulx_u64(x9, x21, &x243);
- { uint64_t x246; uint64_t x245 = _mulx_u64(x9, x23, &x246);
- { uint64_t x249; uint64_t x248 = _mulx_u64(x9, x22, &x249);
- { uint64_t x251; uint8_t x252 = _addcarryx_u64(0x0, x234, x236, &x251);
- { uint64_t x254; uint8_t x255 = _addcarryx_u64(x252, x237, x239, &x254);
- { uint64_t x257; uint8_t x258 = _addcarryx_u64(x255, x240, x242, &x257);
- { uint64_t x260; uint8_t x261 = _addcarryx_u64(x258, x243, x245, &x260);
- { uint64_t x263; uint8_t x264 = _addcarryx_u64(x261, x246, x248, &x263);
- { uint64_t x266; uint8_t _ = _addcarryx_u64(0x0, x264, x249, &x266);
- { uint64_t x269; uint8_t x270 = _addcarryx_u64(0x0, x214, x233, &x269);
- { uint64_t x272; uint8_t x273 = _addcarryx_u64(x270, x217, x251, &x272);
- { uint64_t x275; uint8_t x276 = _addcarryx_u64(x273, x220, x254, &x275);
- { uint64_t x278; uint8_t x279 = _addcarryx_u64(x276, x223, x257, &x278);
- { uint64_t x281; uint8_t x282 = _addcarryx_u64(x279, x226, x260, &x281);
- { uint64_t x284; uint8_t x285 = _addcarryx_u64(x282, x229, x263, &x284);
- { uint64_t x287; uint8_t x288 = _addcarryx_u64(x285, x231, x266, &x287);
- { uint64_t x291; uint64_t x290 = _mulx_u64(x269, 0xffffffffffffffffL, &x291);
- { uint64_t x294; uint64_t x293 = _mulx_u64(x269, 0xffffffffffffffffL, &x294);
- { uint64_t x297; uint64_t x296 = _mulx_u64(x269, 0xffffffffffffffffL, &x297);
- { uint64_t x300; uint64_t x299 = _mulx_u64(x269, 0xffffffffffffffffL, &x300);
- { uint64_t x303; uint64_t x302 = _mulx_u64(x269, 0xffffffffffffffffL, &x303);
- { uint64_t x306; uint64_t x305 = _mulx_u64(x269, 0xfffaffffffffffffL, &x306);
- { uint64_t x308; uint8_t x309 = _addcarryx_u64(0x0, x291, x293, &x308);
- { uint64_t x311; uint8_t x312 = _addcarryx_u64(x309, x294, x296, &x311);
- { uint64_t x314; uint8_t x315 = _addcarryx_u64(x312, x297, x299, &x314);
- { uint64_t x317; uint8_t x318 = _addcarryx_u64(x315, x300, x302, &x317);
- { uint64_t x320; uint8_t x321 = _addcarryx_u64(x318, x303, x305, &x320);
- { uint64_t x323; uint8_t _ = _addcarryx_u64(0x0, x321, x306, &x323);
- { uint64_t _; uint8_t x327 = _addcarryx_u64(0x0, x269, x290, &_);
- { uint64_t x329; uint8_t x330 = _addcarryx_u64(x327, x272, x308, &x329);
- { uint64_t x332; uint8_t x333 = _addcarryx_u64(x330, x275, x311, &x332);
- { uint64_t x335; uint8_t x336 = _addcarryx_u64(x333, x278, x314, &x335);
- { uint64_t x338; uint8_t x339 = _addcarryx_u64(x336, x281, x317, &x338);
- { uint64_t x341; uint8_t x342 = _addcarryx_u64(x339, x284, x320, &x341);
- { uint64_t x344; uint8_t x345 = _addcarryx_u64(x342, x287, x323, &x344);
- { uint8_t x346 = (x345 + x288);
- { uint64_t x349; uint64_t x348 = _mulx_u64(x11, x15, &x349);
- { uint64_t x352; uint64_t x351 = _mulx_u64(x11, x17, &x352);
- { uint64_t x355; uint64_t x354 = _mulx_u64(x11, x19, &x355);
- { uint64_t x358; uint64_t x357 = _mulx_u64(x11, x21, &x358);
- { uint64_t x361; uint64_t x360 = _mulx_u64(x11, x23, &x361);
- { uint64_t x364; uint64_t x363 = _mulx_u64(x11, x22, &x364);
- { uint64_t x366; uint8_t x367 = _addcarryx_u64(0x0, x349, x351, &x366);
- { uint64_t x369; uint8_t x370 = _addcarryx_u64(x367, x352, x354, &x369);
- { uint64_t x372; uint8_t x373 = _addcarryx_u64(x370, x355, x357, &x372);
- { uint64_t x375; uint8_t x376 = _addcarryx_u64(x373, x358, x360, &x375);
- { uint64_t x378; uint8_t x379 = _addcarryx_u64(x376, x361, x363, &x378);
- { uint64_t x381; uint8_t _ = _addcarryx_u64(0x0, x379, x364, &x381);
- { uint64_t x384; uint8_t x385 = _addcarryx_u64(0x0, x329, x348, &x384);
- { uint64_t x387; uint8_t x388 = _addcarryx_u64(x385, x332, x366, &x387);
- { uint64_t x390; uint8_t x391 = _addcarryx_u64(x388, x335, x369, &x390);
- { uint64_t x393; uint8_t x394 = _addcarryx_u64(x391, x338, x372, &x393);
- { uint64_t x396; uint8_t x397 = _addcarryx_u64(x394, x341, x375, &x396);
- { uint64_t x399; uint8_t x400 = _addcarryx_u64(x397, x344, x378, &x399);
- { uint64_t x402; uint8_t x403 = _addcarryx_u64(x400, x346, x381, &x402);
- { uint64_t x406; uint64_t x405 = _mulx_u64(x384, 0xffffffffffffffffL, &x406);
- { uint64_t x409; uint64_t x408 = _mulx_u64(x384, 0xffffffffffffffffL, &x409);
- { uint64_t x412; uint64_t x411 = _mulx_u64(x384, 0xffffffffffffffffL, &x412);
- { uint64_t x415; uint64_t x414 = _mulx_u64(x384, 0xffffffffffffffffL, &x415);
- { uint64_t x418; uint64_t x417 = _mulx_u64(x384, 0xffffffffffffffffL, &x418);
- { uint64_t x421; uint64_t x420 = _mulx_u64(x384, 0xfffaffffffffffffL, &x421);
- { uint64_t x423; uint8_t x424 = _addcarryx_u64(0x0, x406, x408, &x423);
- { uint64_t x426; uint8_t x427 = _addcarryx_u64(x424, x409, x411, &x426);
- { uint64_t x429; uint8_t x430 = _addcarryx_u64(x427, x412, x414, &x429);
- { uint64_t x432; uint8_t x433 = _addcarryx_u64(x430, x415, x417, &x432);
- { uint64_t x435; uint8_t x436 = _addcarryx_u64(x433, x418, x420, &x435);
- { uint64_t x438; uint8_t _ = _addcarryx_u64(0x0, x436, x421, &x438);
- { uint64_t _; uint8_t x442 = _addcarryx_u64(0x0, x384, x405, &_);
- { uint64_t x444; uint8_t x445 = _addcarryx_u64(x442, x387, x423, &x444);
- { uint64_t x447; uint8_t x448 = _addcarryx_u64(x445, x390, x426, &x447);
- { uint64_t x450; uint8_t x451 = _addcarryx_u64(x448, x393, x429, &x450);
- { uint64_t x453; uint8_t x454 = _addcarryx_u64(x451, x396, x432, &x453);
- { uint64_t x456; uint8_t x457 = _addcarryx_u64(x454, x399, x435, &x456);
- { uint64_t x459; uint8_t x460 = _addcarryx_u64(x457, x402, x438, &x459);
- { uint8_t x461 = (x460 + x403);
- { uint64_t x464; uint64_t x463 = _mulx_u64(x13, x15, &x464);
- { uint64_t x467; uint64_t x466 = _mulx_u64(x13, x17, &x467);
- { uint64_t x470; uint64_t x469 = _mulx_u64(x13, x19, &x470);
- { uint64_t x473; uint64_t x472 = _mulx_u64(x13, x21, &x473);
- { uint64_t x476; uint64_t x475 = _mulx_u64(x13, x23, &x476);
- { uint64_t x479; uint64_t x478 = _mulx_u64(x13, x22, &x479);
- { uint64_t x481; uint8_t x482 = _addcarryx_u64(0x0, x464, x466, &x481);
- { uint64_t x484; uint8_t x485 = _addcarryx_u64(x482, x467, x469, &x484);
- { uint64_t x487; uint8_t x488 = _addcarryx_u64(x485, x470, x472, &x487);
- { uint64_t x490; uint8_t x491 = _addcarryx_u64(x488, x473, x475, &x490);
- { uint64_t x493; uint8_t x494 = _addcarryx_u64(x491, x476, x478, &x493);
- { uint64_t x496; uint8_t _ = _addcarryx_u64(0x0, x494, x479, &x496);
- { uint64_t x499; uint8_t x500 = _addcarryx_u64(0x0, x444, x463, &x499);
- { uint64_t x502; uint8_t x503 = _addcarryx_u64(x500, x447, x481, &x502);
- { uint64_t x505; uint8_t x506 = _addcarryx_u64(x503, x450, x484, &x505);
- { uint64_t x508; uint8_t x509 = _addcarryx_u64(x506, x453, x487, &x508);
- { uint64_t x511; uint8_t x512 = _addcarryx_u64(x509, x456, x490, &x511);
- { uint64_t x514; uint8_t x515 = _addcarryx_u64(x512, x459, x493, &x514);
- { uint64_t x517; uint8_t x518 = _addcarryx_u64(x515, x461, x496, &x517);
- { uint64_t x521; uint64_t x520 = _mulx_u64(x499, 0xffffffffffffffffL, &x521);
- { uint64_t x524; uint64_t x523 = _mulx_u64(x499, 0xffffffffffffffffL, &x524);
- { uint64_t x527; uint64_t x526 = _mulx_u64(x499, 0xffffffffffffffffL, &x527);
- { uint64_t x530; uint64_t x529 = _mulx_u64(x499, 0xffffffffffffffffL, &x530);
- { uint64_t x533; uint64_t x532 = _mulx_u64(x499, 0xffffffffffffffffL, &x533);
- { uint64_t x536; uint64_t x535 = _mulx_u64(x499, 0xfffaffffffffffffL, &x536);
- { uint64_t x538; uint8_t x539 = _addcarryx_u64(0x0, x521, x523, &x538);
- { uint64_t x541; uint8_t x542 = _addcarryx_u64(x539, x524, x526, &x541);
- { uint64_t x544; uint8_t x545 = _addcarryx_u64(x542, x527, x529, &x544);
- { uint64_t x547; uint8_t x548 = _addcarryx_u64(x545, x530, x532, &x547);
- { uint64_t x550; uint8_t x551 = _addcarryx_u64(x548, x533, x535, &x550);
- { uint64_t x553; uint8_t _ = _addcarryx_u64(0x0, x551, x536, &x553);
- { uint64_t _; uint8_t x557 = _addcarryx_u64(0x0, x499, x520, &_);
- { uint64_t x559; uint8_t x560 = _addcarryx_u64(x557, x502, x538, &x559);
- { uint64_t x562; uint8_t x563 = _addcarryx_u64(x560, x505, x541, &x562);
- { uint64_t x565; uint8_t x566 = _addcarryx_u64(x563, x508, x544, &x565);
- { uint64_t x568; uint8_t x569 = _addcarryx_u64(x566, x511, x547, &x568);
- { uint64_t x571; uint8_t x572 = _addcarryx_u64(x569, x514, x550, &x571);
- { uint64_t x574; uint8_t x575 = _addcarryx_u64(x572, x517, x553, &x574);
- { uint8_t x576 = (x575 + x518);
- { uint64_t x579; uint64_t x578 = _mulx_u64(x12, x15, &x579);
- { uint64_t x582; uint64_t x581 = _mulx_u64(x12, x17, &x582);
- { uint64_t x585; uint64_t x584 = _mulx_u64(x12, x19, &x585);
- { uint64_t x588; uint64_t x587 = _mulx_u64(x12, x21, &x588);
- { uint64_t x591; uint64_t x590 = _mulx_u64(x12, x23, &x591);
- { uint64_t x594; uint64_t x593 = _mulx_u64(x12, x22, &x594);
- { uint64_t x596; uint8_t x597 = _addcarryx_u64(0x0, x579, x581, &x596);
- { uint64_t x599; uint8_t x600 = _addcarryx_u64(x597, x582, x584, &x599);
- { uint64_t x602; uint8_t x603 = _addcarryx_u64(x600, x585, x587, &x602);
- { uint64_t x605; uint8_t x606 = _addcarryx_u64(x603, x588, x590, &x605);
- { uint64_t x608; uint8_t x609 = _addcarryx_u64(x606, x591, x593, &x608);
- { uint64_t x611; uint8_t _ = _addcarryx_u64(0x0, x609, x594, &x611);
- { uint64_t x614; uint8_t x615 = _addcarryx_u64(0x0, x559, x578, &x614);
- { uint64_t x617; uint8_t x618 = _addcarryx_u64(x615, x562, x596, &x617);
- { uint64_t x620; uint8_t x621 = _addcarryx_u64(x618, x565, x599, &x620);
- { uint64_t x623; uint8_t x624 = _addcarryx_u64(x621, x568, x602, &x623);
- { uint64_t x626; uint8_t x627 = _addcarryx_u64(x624, x571, x605, &x626);
- { uint64_t x629; uint8_t x630 = _addcarryx_u64(x627, x574, x608, &x629);
- { uint64_t x632; uint8_t x633 = _addcarryx_u64(x630, x576, x611, &x632);
- { uint64_t x636; uint64_t x635 = _mulx_u64(x614, 0xffffffffffffffffL, &x636);
- { uint64_t x639; uint64_t x638 = _mulx_u64(x614, 0xffffffffffffffffL, &x639);
- { uint64_t x642; uint64_t x641 = _mulx_u64(x614, 0xffffffffffffffffL, &x642);
- { uint64_t x645; uint64_t x644 = _mulx_u64(x614, 0xffffffffffffffffL, &x645);
- { uint64_t x648; uint64_t x647 = _mulx_u64(x614, 0xffffffffffffffffL, &x648);
- { uint64_t x651; uint64_t x650 = _mulx_u64(x614, 0xfffaffffffffffffL, &x651);
- { uint64_t x653; uint8_t x654 = _addcarryx_u64(0x0, x636, x638, &x653);
- { uint64_t x656; uint8_t x657 = _addcarryx_u64(x654, x639, x641, &x656);
- { uint64_t x659; uint8_t x660 = _addcarryx_u64(x657, x642, x644, &x659);
- { uint64_t x662; uint8_t x663 = _addcarryx_u64(x660, x645, x647, &x662);
- { uint64_t x665; uint8_t x666 = _addcarryx_u64(x663, x648, x650, &x665);
- { uint64_t x668; uint8_t _ = _addcarryx_u64(0x0, x666, x651, &x668);
- { uint64_t _; uint8_t x672 = _addcarryx_u64(0x0, x614, x635, &_);
- { uint64_t x674; uint8_t x675 = _addcarryx_u64(x672, x617, x653, &x674);
- { uint64_t x677; uint8_t x678 = _addcarryx_u64(x675, x620, x656, &x677);
- { uint64_t x680; uint8_t x681 = _addcarryx_u64(x678, x623, x659, &x680);
- { uint64_t x683; uint8_t x684 = _addcarryx_u64(x681, x626, x662, &x683);
- { uint64_t x686; uint8_t x687 = _addcarryx_u64(x684, x629, x665, &x686);
- { uint64_t x689; uint8_t x690 = _addcarryx_u64(x687, x632, x668, &x689);
- { uint8_t x691 = (x690 + x633);
- { uint64_t x693; uint8_t x694 = _subborrow_u64(0x0, x674, 0xffffffffffffffffL, &x693);
- { uint64_t x696; uint8_t x697 = _subborrow_u64(x694, x677, 0xffffffffffffffffL, &x696);
- { uint64_t x699; uint8_t x700 = _subborrow_u64(x697, x680, 0xffffffffffffffffL, &x699);
- { uint64_t x702; uint8_t x703 = _subborrow_u64(x700, x683, 0xffffffffffffffffL, &x702);
- { uint64_t x705; uint8_t x706 = _subborrow_u64(x703, x686, 0xffffffffffffffffL, &x705);
- { uint64_t x708; uint8_t x709 = _subborrow_u64(x706, x689, 0xfffaffffffffffffL, &x708);
- { uint64_t _; uint8_t x712 = _subborrow_u64(x709, x691, 0x0, &_);
- { uint64_t x713 = cmovznz64(x712, x708, x689);
- { uint64_t x714 = cmovznz64(x712, x705, x686);
- { uint64_t x715 = cmovznz64(x712, x702, x683);
- { uint64_t x716 = cmovznz64(x712, x699, x680);
- { uint64_t x717 = cmovznz64(x712, x696, x677);
- { uint64_t x718 = cmovznz64(x712, x693, x674);
- out[0] = x718;
- out[1] = x717;
- out[2] = x716;
- out[3] = x715;
- out[4] = x714;
- out[5] = x713;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/femul.v b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/femul.v
deleted file mode 100644
index 6b6b602f6..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e384m5x2e368m1_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/femulDisplay.log b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/femulDisplay.log
deleted file mode 100644
index 1e07e0934..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,246 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint64_t x26 = mulx_u64(x5, x15);
- uint64_t x28, uint64_t x29 = mulx_u64(x5, x17);
- uint64_t x31, uint64_t x32 = mulx_u64(x5, x19);
- uint64_t x34, uint64_t x35 = mulx_u64(x5, x21);
- uint64_t x37, uint64_t x38 = mulx_u64(x5, x23);
- uint64_t x40, uint64_t x41 = mulx_u64(x5, x22);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x26, x28);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x29, x31);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x47, x32, x34);
- uint64_t x52, uint8_t x53 = addcarryx_u64(x50, x35, x37);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x38, x40);
- uint64_t x58, uint8_t _ = addcarryx_u64(0x0, x56, x41);
- uint64_t x61, uint64_t x62 = mulx_u64(x25, 0xffffffffffffffffL);
- uint64_t x64, uint64_t x65 = mulx_u64(x25, 0xffffffffffffffffL);
- uint64_t x67, uint64_t x68 = mulx_u64(x25, 0xffffffffffffffffL);
- uint64_t x70, uint64_t x71 = mulx_u64(x25, 0xffffffffffffffffL);
- uint64_t x73, uint64_t x74 = mulx_u64(x25, 0xffffffffffffffffL);
- uint64_t x76, uint64_t x77 = mulx_u64(x25, 0xfffaffffffffffffL);
- uint64_t x79, uint8_t x80 = addcarryx_u64(0x0, x62, x64);
- uint64_t x82, uint8_t x83 = addcarryx_u64(x80, x65, x67);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x68, x70);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x71, x73);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x74, x76);
- uint64_t x94, uint8_t _ = addcarryx_u64(0x0, x92, x77);
- uint64_t _, uint8_t x98 = addcarryx_u64(0x0, x25, x61);
- uint64_t x100, uint8_t x101 = addcarryx_u64(x98, x43, x79);
- uint64_t x103, uint8_t x104 = addcarryx_u64(x101, x46, x82);
- uint64_t x106, uint8_t x107 = addcarryx_u64(x104, x49, x85);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x52, x88);
- uint64_t x112, uint8_t x113 = addcarryx_u64(x110, x55, x91);
- uint64_t x115, uint8_t x116 = addcarryx_u64(x113, x58, x94);
- uint64_t x118, uint64_t x119 = mulx_u64(x7, x15);
- uint64_t x121, uint64_t x122 = mulx_u64(x7, x17);
- uint64_t x124, uint64_t x125 = mulx_u64(x7, x19);
- uint64_t x127, uint64_t x128 = mulx_u64(x7, x21);
- uint64_t x130, uint64_t x131 = mulx_u64(x7, x23);
- uint64_t x133, uint64_t x134 = mulx_u64(x7, x22);
- uint64_t x136, uint8_t x137 = addcarryx_u64(0x0, x119, x121);
- uint64_t x139, uint8_t x140 = addcarryx_u64(x137, x122, x124);
- uint64_t x142, uint8_t x143 = addcarryx_u64(x140, x125, x127);
- uint64_t x145, uint8_t x146 = addcarryx_u64(x143, x128, x130);
- uint64_t x148, uint8_t x149 = addcarryx_u64(x146, x131, x133);
- uint64_t x151, uint8_t _ = addcarryx_u64(0x0, x149, x134);
- uint64_t x154, uint8_t x155 = addcarryx_u64(0x0, x100, x118);
- uint64_t x157, uint8_t x158 = addcarryx_u64(x155, x103, x136);
- uint64_t x160, uint8_t x161 = addcarryx_u64(x158, x106, x139);
- uint64_t x163, uint8_t x164 = addcarryx_u64(x161, x109, x142);
- uint64_t x166, uint8_t x167 = addcarryx_u64(x164, x112, x145);
- uint64_t x169, uint8_t x170 = addcarryx_u64(x167, x115, x148);
- uint64_t x172, uint8_t x173 = addcarryx_u64(x170, x116, x151);
- uint64_t x175, uint64_t x176 = mulx_u64(x154, 0xffffffffffffffffL);
- uint64_t x178, uint64_t x179 = mulx_u64(x154, 0xffffffffffffffffL);
- uint64_t x181, uint64_t x182 = mulx_u64(x154, 0xffffffffffffffffL);
- uint64_t x184, uint64_t x185 = mulx_u64(x154, 0xffffffffffffffffL);
- uint64_t x187, uint64_t x188 = mulx_u64(x154, 0xffffffffffffffffL);
- uint64_t x190, uint64_t x191 = mulx_u64(x154, 0xfffaffffffffffffL);
- uint64_t x193, uint8_t x194 = addcarryx_u64(0x0, x176, x178);
- uint64_t x196, uint8_t x197 = addcarryx_u64(x194, x179, x181);
- uint64_t x199, uint8_t x200 = addcarryx_u64(x197, x182, x184);
- uint64_t x202, uint8_t x203 = addcarryx_u64(x200, x185, x187);
- uint64_t x205, uint8_t x206 = addcarryx_u64(x203, x188, x190);
- uint64_t x208, uint8_t _ = addcarryx_u64(0x0, x206, x191);
- uint64_t _, uint8_t x212 = addcarryx_u64(0x0, x154, x175);
- uint64_t x214, uint8_t x215 = addcarryx_u64(x212, x157, x193);
- uint64_t x217, uint8_t x218 = addcarryx_u64(x215, x160, x196);
- uint64_t x220, uint8_t x221 = addcarryx_u64(x218, x163, x199);
- uint64_t x223, uint8_t x224 = addcarryx_u64(x221, x166, x202);
- uint64_t x226, uint8_t x227 = addcarryx_u64(x224, x169, x205);
- uint64_t x229, uint8_t x230 = addcarryx_u64(x227, x172, x208);
- uint8_t x231 = (x230 + x173);
- uint64_t x233, uint64_t x234 = mulx_u64(x9, x15);
- uint64_t x236, uint64_t x237 = mulx_u64(x9, x17);
- uint64_t x239, uint64_t x240 = mulx_u64(x9, x19);
- uint64_t x242, uint64_t x243 = mulx_u64(x9, x21);
- uint64_t x245, uint64_t x246 = mulx_u64(x9, x23);
- uint64_t x248, uint64_t x249 = mulx_u64(x9, x22);
- uint64_t x251, uint8_t x252 = addcarryx_u64(0x0, x234, x236);
- uint64_t x254, uint8_t x255 = addcarryx_u64(x252, x237, x239);
- uint64_t x257, uint8_t x258 = addcarryx_u64(x255, x240, x242);
- uint64_t x260, uint8_t x261 = addcarryx_u64(x258, x243, x245);
- uint64_t x263, uint8_t x264 = addcarryx_u64(x261, x246, x248);
- uint64_t x266, uint8_t _ = addcarryx_u64(0x0, x264, x249);
- uint64_t x269, uint8_t x270 = addcarryx_u64(0x0, x214, x233);
- uint64_t x272, uint8_t x273 = addcarryx_u64(x270, x217, x251);
- uint64_t x275, uint8_t x276 = addcarryx_u64(x273, x220, x254);
- uint64_t x278, uint8_t x279 = addcarryx_u64(x276, x223, x257);
- uint64_t x281, uint8_t x282 = addcarryx_u64(x279, x226, x260);
- uint64_t x284, uint8_t x285 = addcarryx_u64(x282, x229, x263);
- uint64_t x287, uint8_t x288 = addcarryx_u64(x285, x231, x266);
- uint64_t x290, uint64_t x291 = mulx_u64(x269, 0xffffffffffffffffL);
- uint64_t x293, uint64_t x294 = mulx_u64(x269, 0xffffffffffffffffL);
- uint64_t x296, uint64_t x297 = mulx_u64(x269, 0xffffffffffffffffL);
- uint64_t x299, uint64_t x300 = mulx_u64(x269, 0xffffffffffffffffL);
- uint64_t x302, uint64_t x303 = mulx_u64(x269, 0xffffffffffffffffL);
- uint64_t x305, uint64_t x306 = mulx_u64(x269, 0xfffaffffffffffffL);
- uint64_t x308, uint8_t x309 = addcarryx_u64(0x0, x291, x293);
- uint64_t x311, uint8_t x312 = addcarryx_u64(x309, x294, x296);
- uint64_t x314, uint8_t x315 = addcarryx_u64(x312, x297, x299);
- uint64_t x317, uint8_t x318 = addcarryx_u64(x315, x300, x302);
- uint64_t x320, uint8_t x321 = addcarryx_u64(x318, x303, x305);
- uint64_t x323, uint8_t _ = addcarryx_u64(0x0, x321, x306);
- uint64_t _, uint8_t x327 = addcarryx_u64(0x0, x269, x290);
- uint64_t x329, uint8_t x330 = addcarryx_u64(x327, x272, x308);
- uint64_t x332, uint8_t x333 = addcarryx_u64(x330, x275, x311);
- uint64_t x335, uint8_t x336 = addcarryx_u64(x333, x278, x314);
- uint64_t x338, uint8_t x339 = addcarryx_u64(x336, x281, x317);
- uint64_t x341, uint8_t x342 = addcarryx_u64(x339, x284, x320);
- uint64_t x344, uint8_t x345 = addcarryx_u64(x342, x287, x323);
- uint8_t x346 = (x345 + x288);
- uint64_t x348, uint64_t x349 = mulx_u64(x11, x15);
- uint64_t x351, uint64_t x352 = mulx_u64(x11, x17);
- uint64_t x354, uint64_t x355 = mulx_u64(x11, x19);
- uint64_t x357, uint64_t x358 = mulx_u64(x11, x21);
- uint64_t x360, uint64_t x361 = mulx_u64(x11, x23);
- uint64_t x363, uint64_t x364 = mulx_u64(x11, x22);
- uint64_t x366, uint8_t x367 = addcarryx_u64(0x0, x349, x351);
- uint64_t x369, uint8_t x370 = addcarryx_u64(x367, x352, x354);
- uint64_t x372, uint8_t x373 = addcarryx_u64(x370, x355, x357);
- uint64_t x375, uint8_t x376 = addcarryx_u64(x373, x358, x360);
- uint64_t x378, uint8_t x379 = addcarryx_u64(x376, x361, x363);
- uint64_t x381, uint8_t _ = addcarryx_u64(0x0, x379, x364);
- uint64_t x384, uint8_t x385 = addcarryx_u64(0x0, x329, x348);
- uint64_t x387, uint8_t x388 = addcarryx_u64(x385, x332, x366);
- uint64_t x390, uint8_t x391 = addcarryx_u64(x388, x335, x369);
- uint64_t x393, uint8_t x394 = addcarryx_u64(x391, x338, x372);
- uint64_t x396, uint8_t x397 = addcarryx_u64(x394, x341, x375);
- uint64_t x399, uint8_t x400 = addcarryx_u64(x397, x344, x378);
- uint64_t x402, uint8_t x403 = addcarryx_u64(x400, x346, x381);
- uint64_t x405, uint64_t x406 = mulx_u64(x384, 0xffffffffffffffffL);
- uint64_t x408, uint64_t x409 = mulx_u64(x384, 0xffffffffffffffffL);
- uint64_t x411, uint64_t x412 = mulx_u64(x384, 0xffffffffffffffffL);
- uint64_t x414, uint64_t x415 = mulx_u64(x384, 0xffffffffffffffffL);
- uint64_t x417, uint64_t x418 = mulx_u64(x384, 0xffffffffffffffffL);
- uint64_t x420, uint64_t x421 = mulx_u64(x384, 0xfffaffffffffffffL);
- uint64_t x423, uint8_t x424 = addcarryx_u64(0x0, x406, x408);
- uint64_t x426, uint8_t x427 = addcarryx_u64(x424, x409, x411);
- uint64_t x429, uint8_t x430 = addcarryx_u64(x427, x412, x414);
- uint64_t x432, uint8_t x433 = addcarryx_u64(x430, x415, x417);
- uint64_t x435, uint8_t x436 = addcarryx_u64(x433, x418, x420);
- uint64_t x438, uint8_t _ = addcarryx_u64(0x0, x436, x421);
- uint64_t _, uint8_t x442 = addcarryx_u64(0x0, x384, x405);
- uint64_t x444, uint8_t x445 = addcarryx_u64(x442, x387, x423);
- uint64_t x447, uint8_t x448 = addcarryx_u64(x445, x390, x426);
- uint64_t x450, uint8_t x451 = addcarryx_u64(x448, x393, x429);
- uint64_t x453, uint8_t x454 = addcarryx_u64(x451, x396, x432);
- uint64_t x456, uint8_t x457 = addcarryx_u64(x454, x399, x435);
- uint64_t x459, uint8_t x460 = addcarryx_u64(x457, x402, x438);
- uint8_t x461 = (x460 + x403);
- uint64_t x463, uint64_t x464 = mulx_u64(x13, x15);
- uint64_t x466, uint64_t x467 = mulx_u64(x13, x17);
- uint64_t x469, uint64_t x470 = mulx_u64(x13, x19);
- uint64_t x472, uint64_t x473 = mulx_u64(x13, x21);
- uint64_t x475, uint64_t x476 = mulx_u64(x13, x23);
- uint64_t x478, uint64_t x479 = mulx_u64(x13, x22);
- uint64_t x481, uint8_t x482 = addcarryx_u64(0x0, x464, x466);
- uint64_t x484, uint8_t x485 = addcarryx_u64(x482, x467, x469);
- uint64_t x487, uint8_t x488 = addcarryx_u64(x485, x470, x472);
- uint64_t x490, uint8_t x491 = addcarryx_u64(x488, x473, x475);
- uint64_t x493, uint8_t x494 = addcarryx_u64(x491, x476, x478);
- uint64_t x496, uint8_t _ = addcarryx_u64(0x0, x494, x479);
- uint64_t x499, uint8_t x500 = addcarryx_u64(0x0, x444, x463);
- uint64_t x502, uint8_t x503 = addcarryx_u64(x500, x447, x481);
- uint64_t x505, uint8_t x506 = addcarryx_u64(x503, x450, x484);
- uint64_t x508, uint8_t x509 = addcarryx_u64(x506, x453, x487);
- uint64_t x511, uint8_t x512 = addcarryx_u64(x509, x456, x490);
- uint64_t x514, uint8_t x515 = addcarryx_u64(x512, x459, x493);
- uint64_t x517, uint8_t x518 = addcarryx_u64(x515, x461, x496);
- uint64_t x520, uint64_t x521 = mulx_u64(x499, 0xffffffffffffffffL);
- uint64_t x523, uint64_t x524 = mulx_u64(x499, 0xffffffffffffffffL);
- uint64_t x526, uint64_t x527 = mulx_u64(x499, 0xffffffffffffffffL);
- uint64_t x529, uint64_t x530 = mulx_u64(x499, 0xffffffffffffffffL);
- uint64_t x532, uint64_t x533 = mulx_u64(x499, 0xffffffffffffffffL);
- uint64_t x535, uint64_t x536 = mulx_u64(x499, 0xfffaffffffffffffL);
- uint64_t x538, uint8_t x539 = addcarryx_u64(0x0, x521, x523);
- uint64_t x541, uint8_t x542 = addcarryx_u64(x539, x524, x526);
- uint64_t x544, uint8_t x545 = addcarryx_u64(x542, x527, x529);
- uint64_t x547, uint8_t x548 = addcarryx_u64(x545, x530, x532);
- uint64_t x550, uint8_t x551 = addcarryx_u64(x548, x533, x535);
- uint64_t x553, uint8_t _ = addcarryx_u64(0x0, x551, x536);
- uint64_t _, uint8_t x557 = addcarryx_u64(0x0, x499, x520);
- uint64_t x559, uint8_t x560 = addcarryx_u64(x557, x502, x538);
- uint64_t x562, uint8_t x563 = addcarryx_u64(x560, x505, x541);
- uint64_t x565, uint8_t x566 = addcarryx_u64(x563, x508, x544);
- uint64_t x568, uint8_t x569 = addcarryx_u64(x566, x511, x547);
- uint64_t x571, uint8_t x572 = addcarryx_u64(x569, x514, x550);
- uint64_t x574, uint8_t x575 = addcarryx_u64(x572, x517, x553);
- uint8_t x576 = (x575 + x518);
- uint64_t x578, uint64_t x579 = mulx_u64(x12, x15);
- uint64_t x581, uint64_t x582 = mulx_u64(x12, x17);
- uint64_t x584, uint64_t x585 = mulx_u64(x12, x19);
- uint64_t x587, uint64_t x588 = mulx_u64(x12, x21);
- uint64_t x590, uint64_t x591 = mulx_u64(x12, x23);
- uint64_t x593, uint64_t x594 = mulx_u64(x12, x22);
- uint64_t x596, uint8_t x597 = addcarryx_u64(0x0, x579, x581);
- uint64_t x599, uint8_t x600 = addcarryx_u64(x597, x582, x584);
- uint64_t x602, uint8_t x603 = addcarryx_u64(x600, x585, x587);
- uint64_t x605, uint8_t x606 = addcarryx_u64(x603, x588, x590);
- uint64_t x608, uint8_t x609 = addcarryx_u64(x606, x591, x593);
- uint64_t x611, uint8_t _ = addcarryx_u64(0x0, x609, x594);
- uint64_t x614, uint8_t x615 = addcarryx_u64(0x0, x559, x578);
- uint64_t x617, uint8_t x618 = addcarryx_u64(x615, x562, x596);
- uint64_t x620, uint8_t x621 = addcarryx_u64(x618, x565, x599);
- uint64_t x623, uint8_t x624 = addcarryx_u64(x621, x568, x602);
- uint64_t x626, uint8_t x627 = addcarryx_u64(x624, x571, x605);
- uint64_t x629, uint8_t x630 = addcarryx_u64(x627, x574, x608);
- uint64_t x632, uint8_t x633 = addcarryx_u64(x630, x576, x611);
- uint64_t x635, uint64_t x636 = mulx_u64(x614, 0xffffffffffffffffL);
- uint64_t x638, uint64_t x639 = mulx_u64(x614, 0xffffffffffffffffL);
- uint64_t x641, uint64_t x642 = mulx_u64(x614, 0xffffffffffffffffL);
- uint64_t x644, uint64_t x645 = mulx_u64(x614, 0xffffffffffffffffL);
- uint64_t x647, uint64_t x648 = mulx_u64(x614, 0xffffffffffffffffL);
- uint64_t x650, uint64_t x651 = mulx_u64(x614, 0xfffaffffffffffffL);
- uint64_t x653, uint8_t x654 = addcarryx_u64(0x0, x636, x638);
- uint64_t x656, uint8_t x657 = addcarryx_u64(x654, x639, x641);
- uint64_t x659, uint8_t x660 = addcarryx_u64(x657, x642, x644);
- uint64_t x662, uint8_t x663 = addcarryx_u64(x660, x645, x647);
- uint64_t x665, uint8_t x666 = addcarryx_u64(x663, x648, x650);
- uint64_t x668, uint8_t _ = addcarryx_u64(0x0, x666, x651);
- uint64_t _, uint8_t x672 = addcarryx_u64(0x0, x614, x635);
- uint64_t x674, uint8_t x675 = addcarryx_u64(x672, x617, x653);
- uint64_t x677, uint8_t x678 = addcarryx_u64(x675, x620, x656);
- uint64_t x680, uint8_t x681 = addcarryx_u64(x678, x623, x659);
- uint64_t x683, uint8_t x684 = addcarryx_u64(x681, x626, x662);
- uint64_t x686, uint8_t x687 = addcarryx_u64(x684, x629, x665);
- uint64_t x689, uint8_t x690 = addcarryx_u64(x687, x632, x668);
- uint8_t x691 = (x690 + x633);
- uint64_t x693, uint8_t x694 = subborrow_u64(0x0, x674, 0xffffffffffffffffL);
- uint64_t x696, uint8_t x697 = subborrow_u64(x694, x677, 0xffffffffffffffffL);
- uint64_t x699, uint8_t x700 = subborrow_u64(x697, x680, 0xffffffffffffffffL);
- uint64_t x702, uint8_t x703 = subborrow_u64(x700, x683, 0xffffffffffffffffL);
- uint64_t x705, uint8_t x706 = subborrow_u64(x703, x686, 0xffffffffffffffffL);
- uint64_t x708, uint8_t x709 = subborrow_u64(x706, x689, 0xfffaffffffffffffL);
- uint64_t _, uint8_t x712 = subborrow_u64(x709, x691, 0x0);
- uint64_t x713 = cmovznz64(x712, x708, x689);
- uint64_t x714 = cmovznz64(x712, x705, x686);
- uint64_t x715 = cmovznz64(x712, x702, x683);
- uint64_t x716 = cmovznz64(x712, x699, x680);
- uint64_t x717 = cmovznz64(x712, x696, x677);
- uint64_t x718 = cmovznz64(x712, x693, x674);
- return (x713, x714, x715, x716, x717, x718))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/femulDisplay.v b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/femulDisplay.v
deleted file mode 100644
index babd0a93e..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e384m5x2e368m1_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fenz.c b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fenz.c
deleted file mode 100644
index c93f74257..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fenz.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x11 = (x10 | x9);
- { uint64_t x12 = (x8 | x11);
- { uint64_t x13 = (x6 | x12);
- { uint64_t x14 = (x4 | x13);
- { uint64_t x15 = (x2 | x14);
- out[0] = x15;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fenz.v b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fenz.v
deleted file mode 100644
index 7ff722693..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e384m5x2e368m1_6limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fenzDisplay.log b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fenzDisplay.log
deleted file mode 100644
index f39f1d91b..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fenzDisplay.log
+++ /dev/null
@@ -1,12 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x11 = (x10 | x9);
- uint64_t x12 = (x8 | x11);
- uint64_t x13 = (x6 | x12);
- uint64_t x14 = (x4 | x13);
- uint64_t x15 = (x2 | x14);
- return x15)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fenzDisplay.v b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fenzDisplay.v
deleted file mode 100644
index f665f19a5..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e384m5x2e368m1_6limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feopp.c b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feopp.c
deleted file mode 100644
index 666ec0ad1..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feopp.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feopp(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12; uint8_t x13 = _subborrow_u64(0x0, 0x0, x2, &x12);
- { uint64_t x15; uint8_t x16 = _subborrow_u64(x13, 0x0, x4, &x15);
- { uint64_t x18; uint8_t x19 = _subborrow_u64(x16, 0x0, x6, &x18);
- { uint64_t x21; uint8_t x22 = _subborrow_u64(x19, 0x0, x8, &x21);
- { uint64_t x24; uint8_t x25 = _subborrow_u64(x22, 0x0, x10, &x24);
- { uint64_t x27; uint8_t x28 = _subborrow_u64(x25, 0x0, x9, &x27);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0xffffffffffffffffL);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(0x0, x12, x30, &x32);
- { uint64_t x34 = (x29 & 0xffffffffffffffffL);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x33, x15, x34, &x36);
- { uint64_t x38 = (x29 & 0xffffffffffffffffL);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x37, x18, x38, &x40);
- { uint64_t x42 = (x29 & 0xffffffffffffffffL);
- { uint64_t x44; uint8_t x45 = _addcarryx_u64(x41, x21, x42, &x44);
- { uint64_t x46 = (x29 & 0xffffffffffffffffL);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x45, x24, x46, &x48);
- { uint64_t x50 = (x29 & 0xfffaffffffffffffL);
- { uint64_t x52; uint8_t _ = _addcarryx_u64(x49, x27, x50, &x52);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feopp.v b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feopp.v
deleted file mode 100644
index 7d93fdca8..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e384m5x2e368m1_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feoppDisplay.log b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feoppDisplay.log
deleted file mode 100644
index 625c3e169..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feoppDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x15, uint8_t x16 = subborrow_u64(x13, 0x0, x4);
- uint64_t x18, uint8_t x19 = subborrow_u64(x16, 0x0, x6);
- uint64_t x21, uint8_t x22 = subborrow_u64(x19, 0x0, x8);
- uint64_t x24, uint8_t x25 = subborrow_u64(x22, 0x0, x10);
- uint64_t x27, uint8_t x28 = subborrow_u64(x25, 0x0, x9);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0xffffffffffffffffL);
- uint64_t x32, uint8_t x33 = addcarryx_u64(0x0, x12, x30);
- uint64_t x34 = (x29 & 0xffffffffffffffffL);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x33, x15, x34);
- uint64_t x38 = (x29 & 0xffffffffffffffffL);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x37, x18, x38);
- uint64_t x42 = (x29 & 0xffffffffffffffffL);
- uint64_t x44, uint8_t x45 = addcarryx_u64(x41, x21, x42);
- uint64_t x46 = (x29 & 0xffffffffffffffffL);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x45, x24, x46);
- uint64_t x50 = (x29 & 0xfffaffffffffffffL);
- uint64_t x52, uint8_t _ = addcarryx_u64(x49, x27, x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feoppDisplay.v b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feoppDisplay.v
deleted file mode 100644
index 5ce8d1487..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e384m5x2e368m1_6limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fesquare.c b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fesub.c b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fesub.c
deleted file mode 100644
index 8e5943404..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fesub.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _subborrow_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _subborrow_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _subborrow_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _subborrow_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _subborrow_u64(x38, x12, x22, &x40);
- { uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- { uint64_t x43 = (x42 & 0xffffffffffffffffL);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(0x0, x25, x43, &x45);
- { uint64_t x47 = (x42 & 0xffffffffffffffffL);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x46, x28, x47, &x49);
- { uint64_t x51 = (x42 & 0xffffffffffffffffL);
- { uint64_t x53; uint8_t x54 = _addcarryx_u64(x50, x31, x51, &x53);
- { uint64_t x55 = (x42 & 0xffffffffffffffffL);
- { uint64_t x57; uint8_t x58 = _addcarryx_u64(x54, x34, x55, &x57);
- { uint64_t x59 = (x42 & 0xffffffffffffffffL);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x58, x37, x59, &x61);
- { uint64_t x63 = (x42 & 0xfffaffffffffffffL);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(x62, x40, x63, &x65);
- out[0] = x45;
- out[1] = x49;
- out[2] = x53;
- out[3] = x57;
- out[4] = x61;
- out[5] = x65;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fesub.v b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fesub.v
deleted file mode 100644
index 980c15f82..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e384m5x2e368m1_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fesubDisplay.log b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fesubDisplay.log
deleted file mode 100644
index 2787b77d5..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = subborrow_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = subborrow_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = subborrow_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = subborrow_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = subborrow_u64(x38, x12, x22);
- uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- uint64_t x43 = (x42 & 0xffffffffffffffffL);
- uint64_t x45, uint8_t x46 = addcarryx_u64(0x0, x25, x43);
- uint64_t x47 = (x42 & 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x46, x28, x47);
- uint64_t x51 = (x42 & 0xffffffffffffffffL);
- uint64_t x53, uint8_t x54 = addcarryx_u64(x50, x31, x51);
- uint64_t x55 = (x42 & 0xffffffffffffffffL);
- uint64_t x57, uint8_t x58 = addcarryx_u64(x54, x34, x55);
- uint64_t x59 = (x42 & 0xffffffffffffffffL);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x58, x37, x59);
- uint64_t x63 = (x42 & 0xfffaffffffffffffL);
- uint64_t x65, uint8_t _ = addcarryx_u64(x62, x40, x63);
- (Return x65, Return x61, Return x57, Return x53, Return x49, Return x45))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fesubDisplay.v b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fesubDisplay.v
deleted file mode 100644
index e9bdd3242..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e384m5x2e368m1_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/py_interpreter.sh b/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/py_interpreter.sh
deleted file mode 100755
index e960ac224..000000000
--- a/src/Specific/montgomery64_2e384m5x2e368m1_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**384 - 5*2**368 - 1' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/CurveParameters.v b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/CurveParameters.v
deleted file mode 100644
index 67ec75679..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^384 - 79*2^376 - 1
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 64;
- bitwidth := 64;
- s := 2^384;
- c := [(1, 1); (79, 2^376)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e384m79x2e376m1_6limbs/Synthesis.v b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/Synthesis.v
deleted file mode 100644
index 9929ba1e0..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e384m79x2e376m1_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/montgomery64_2e384m79x2e376m1_6limbs/compiler.sh b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/compiler.sh
deleted file mode 100755
index 03e4aaaf7..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/compilerxx.sh b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/compilerxx.sh
deleted file mode 100755
index 12db4e310..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64}' -Dmodulus_array='{0xb0,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<384) - 79*(1_mpz<<376) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feadd.c b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feadd.c
deleted file mode 100644
index 1bc58a70d..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feadd.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _addcarryx_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _addcarryx_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _addcarryx_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _addcarryx_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _addcarryx_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x38, x12, x22, &x40);
- { uint64_t x43; uint8_t x44 = _subborrow_u64(0x0, x25, 0xffffffffffffffffL, &x43);
- { uint64_t x46; uint8_t x47 = _subborrow_u64(x44, x28, 0xffffffffffffffffL, &x46);
- { uint64_t x49; uint8_t x50 = _subborrow_u64(x47, x31, 0xffffffffffffffffL, &x49);
- { uint64_t x52; uint8_t x53 = _subborrow_u64(x50, x34, 0xffffffffffffffffL, &x52);
- { uint64_t x55; uint8_t x56 = _subborrow_u64(x53, x37, 0xffffffffffffffffL, &x55);
- { uint64_t x58; uint8_t x59 = _subborrow_u64(x56, x40, 0xb0ffffffffffffffL, &x58);
- { uint64_t _; uint8_t x62 = _subborrow_u64(x59, x41, 0x0, &_);
- { uint64_t x63 = cmovznz64(x62, x58, x40);
- { uint64_t x64 = cmovznz64(x62, x55, x37);
- { uint64_t x65 = cmovznz64(x62, x52, x34);
- { uint64_t x66 = cmovznz64(x62, x49, x31);
- { uint64_t x67 = cmovznz64(x62, x46, x28);
- { uint64_t x68 = cmovznz64(x62, x43, x25);
- out[0] = x68;
- out[1] = x67;
- out[2] = x66;
- out[3] = x65;
- out[4] = x64;
- out[5] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feadd.v b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feadd.v
deleted file mode 100644
index 772d0f206..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e384m79x2e376m1_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feaddDisplay.log b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feaddDisplay.log
deleted file mode 100644
index d44abf137..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = addcarryx_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = addcarryx_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = addcarryx_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = addcarryx_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = addcarryx_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x38, x12, x22);
- uint64_t x43, uint8_t x44 = subborrow_u64(0x0, x25, 0xffffffffffffffffL);
- uint64_t x46, uint8_t x47 = subborrow_u64(x44, x28, 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = subborrow_u64(x47, x31, 0xffffffffffffffffL);
- uint64_t x52, uint8_t x53 = subborrow_u64(x50, x34, 0xffffffffffffffffL);
- uint64_t x55, uint8_t x56 = subborrow_u64(x53, x37, 0xffffffffffffffffL);
- uint64_t x58, uint8_t x59 = subborrow_u64(x56, x40, 0xb0ffffffffffffffL);
- uint64_t _, uint8_t x62 = subborrow_u64(x59, x41, 0x0);
- uint64_t x63 = cmovznz64(x62, x58, x40);
- uint64_t x64 = cmovznz64(x62, x55, x37);
- uint64_t x65 = cmovznz64(x62, x52, x34);
- uint64_t x66 = cmovznz64(x62, x49, x31);
- uint64_t x67 = cmovznz64(x62, x46, x28);
- uint64_t x68 = cmovznz64(x62, x43, x25);
- return (x63, x64, x65, x66, x67, x68))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feaddDisplay.v b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feaddDisplay.v
deleted file mode 100644
index 7b38a59cb..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e384m79x2e376m1_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/femul.c b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/femul.c
deleted file mode 100644
index 65495b82a..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/femul.c
+++ /dev/null
@@ -1,260 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x26; uint64_t x25 = _mulx_u64(x5, x15, &x26);
- { uint64_t x29; uint64_t x28 = _mulx_u64(x5, x17, &x29);
- { uint64_t x32; uint64_t x31 = _mulx_u64(x5, x19, &x32);
- { uint64_t x35; uint64_t x34 = _mulx_u64(x5, x21, &x35);
- { uint64_t x38; uint64_t x37 = _mulx_u64(x5, x23, &x38);
- { uint64_t x41; uint64_t x40 = _mulx_u64(x5, x22, &x41);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(0x0, x26, x28, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x29, x31, &x46);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x47, x32, x34, &x49);
- { uint64_t x52; uint8_t x53 = _addcarryx_u64(x50, x35, x37, &x52);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x38, x40, &x55);
- { uint64_t x58; uint8_t _ = _addcarryx_u64(0x0, x56, x41, &x58);
- { uint64_t x62; uint64_t x61 = _mulx_u64(x25, 0xffffffffffffffffL, &x62);
- { uint64_t x65; uint64_t x64 = _mulx_u64(x25, 0xffffffffffffffffL, &x65);
- { uint64_t x68; uint64_t x67 = _mulx_u64(x25, 0xffffffffffffffffL, &x68);
- { uint64_t x71; uint64_t x70 = _mulx_u64(x25, 0xffffffffffffffffL, &x71);
- { uint64_t x74; uint64_t x73 = _mulx_u64(x25, 0xffffffffffffffffL, &x74);
- { uint64_t x77; uint64_t x76 = _mulx_u64(x25, 0xb0ffffffffffffffL, &x77);
- { uint64_t x79; uint8_t x80 = _addcarryx_u64(0x0, x62, x64, &x79);
- { uint64_t x82; uint8_t x83 = _addcarryx_u64(x80, x65, x67, &x82);
- { uint64_t x85; uint8_t x86 = _addcarryx_u64(x83, x68, x70, &x85);
- { uint64_t x88; uint8_t x89 = _addcarryx_u64(x86, x71, x73, &x88);
- { uint64_t x91; uint8_t x92 = _addcarryx_u64(x89, x74, x76, &x91);
- { uint64_t x94; uint8_t _ = _addcarryx_u64(0x0, x92, x77, &x94);
- { uint64_t _; uint8_t x98 = _addcarryx_u64(0x0, x25, x61, &_);
- { uint64_t x100; uint8_t x101 = _addcarryx_u64(x98, x43, x79, &x100);
- { uint64_t x103; uint8_t x104 = _addcarryx_u64(x101, x46, x82, &x103);
- { uint64_t x106; uint8_t x107 = _addcarryx_u64(x104, x49, x85, &x106);
- { uint64_t x109; uint8_t x110 = _addcarryx_u64(x107, x52, x88, &x109);
- { uint64_t x112; uint8_t x113 = _addcarryx_u64(x110, x55, x91, &x112);
- { uint64_t x115; uint8_t x116 = _addcarryx_u64(x113, x58, x94, &x115);
- { uint64_t x119; uint64_t x118 = _mulx_u64(x7, x15, &x119);
- { uint64_t x122; uint64_t x121 = _mulx_u64(x7, x17, &x122);
- { uint64_t x125; uint64_t x124 = _mulx_u64(x7, x19, &x125);
- { uint64_t x128; uint64_t x127 = _mulx_u64(x7, x21, &x128);
- { uint64_t x131; uint64_t x130 = _mulx_u64(x7, x23, &x131);
- { uint64_t x134; uint64_t x133 = _mulx_u64(x7, x22, &x134);
- { uint64_t x136; uint8_t x137 = _addcarryx_u64(0x0, x119, x121, &x136);
- { uint64_t x139; uint8_t x140 = _addcarryx_u64(x137, x122, x124, &x139);
- { uint64_t x142; uint8_t x143 = _addcarryx_u64(x140, x125, x127, &x142);
- { uint64_t x145; uint8_t x146 = _addcarryx_u64(x143, x128, x130, &x145);
- { uint64_t x148; uint8_t x149 = _addcarryx_u64(x146, x131, x133, &x148);
- { uint64_t x151; uint8_t _ = _addcarryx_u64(0x0, x149, x134, &x151);
- { uint64_t x154; uint8_t x155 = _addcarryx_u64(0x0, x100, x118, &x154);
- { uint64_t x157; uint8_t x158 = _addcarryx_u64(x155, x103, x136, &x157);
- { uint64_t x160; uint8_t x161 = _addcarryx_u64(x158, x106, x139, &x160);
- { uint64_t x163; uint8_t x164 = _addcarryx_u64(x161, x109, x142, &x163);
- { uint64_t x166; uint8_t x167 = _addcarryx_u64(x164, x112, x145, &x166);
- { uint64_t x169; uint8_t x170 = _addcarryx_u64(x167, x115, x148, &x169);
- { uint64_t x172; uint8_t x173 = _addcarryx_u64(x170, x116, x151, &x172);
- { uint64_t x176; uint64_t x175 = _mulx_u64(x154, 0xffffffffffffffffL, &x176);
- { uint64_t x179; uint64_t x178 = _mulx_u64(x154, 0xffffffffffffffffL, &x179);
- { uint64_t x182; uint64_t x181 = _mulx_u64(x154, 0xffffffffffffffffL, &x182);
- { uint64_t x185; uint64_t x184 = _mulx_u64(x154, 0xffffffffffffffffL, &x185);
- { uint64_t x188; uint64_t x187 = _mulx_u64(x154, 0xffffffffffffffffL, &x188);
- { uint64_t x191; uint64_t x190 = _mulx_u64(x154, 0xb0ffffffffffffffL, &x191);
- { uint64_t x193; uint8_t x194 = _addcarryx_u64(0x0, x176, x178, &x193);
- { uint64_t x196; uint8_t x197 = _addcarryx_u64(x194, x179, x181, &x196);
- { uint64_t x199; uint8_t x200 = _addcarryx_u64(x197, x182, x184, &x199);
- { uint64_t x202; uint8_t x203 = _addcarryx_u64(x200, x185, x187, &x202);
- { uint64_t x205; uint8_t x206 = _addcarryx_u64(x203, x188, x190, &x205);
- { uint64_t x208; uint8_t _ = _addcarryx_u64(0x0, x206, x191, &x208);
- { uint64_t _; uint8_t x212 = _addcarryx_u64(0x0, x154, x175, &_);
- { uint64_t x214; uint8_t x215 = _addcarryx_u64(x212, x157, x193, &x214);
- { uint64_t x217; uint8_t x218 = _addcarryx_u64(x215, x160, x196, &x217);
- { uint64_t x220; uint8_t x221 = _addcarryx_u64(x218, x163, x199, &x220);
- { uint64_t x223; uint8_t x224 = _addcarryx_u64(x221, x166, x202, &x223);
- { uint64_t x226; uint8_t x227 = _addcarryx_u64(x224, x169, x205, &x226);
- { uint64_t x229; uint8_t x230 = _addcarryx_u64(x227, x172, x208, &x229);
- { uint8_t x231 = (x230 + x173);
- { uint64_t x234; uint64_t x233 = _mulx_u64(x9, x15, &x234);
- { uint64_t x237; uint64_t x236 = _mulx_u64(x9, x17, &x237);
- { uint64_t x240; uint64_t x239 = _mulx_u64(x9, x19, &x240);
- { uint64_t x243; uint64_t x242 = _mulx_u64(x9, x21, &x243);
- { uint64_t x246; uint64_t x245 = _mulx_u64(x9, x23, &x246);
- { uint64_t x249; uint64_t x248 = _mulx_u64(x9, x22, &x249);
- { uint64_t x251; uint8_t x252 = _addcarryx_u64(0x0, x234, x236, &x251);
- { uint64_t x254; uint8_t x255 = _addcarryx_u64(x252, x237, x239, &x254);
- { uint64_t x257; uint8_t x258 = _addcarryx_u64(x255, x240, x242, &x257);
- { uint64_t x260; uint8_t x261 = _addcarryx_u64(x258, x243, x245, &x260);
- { uint64_t x263; uint8_t x264 = _addcarryx_u64(x261, x246, x248, &x263);
- { uint64_t x266; uint8_t _ = _addcarryx_u64(0x0, x264, x249, &x266);
- { uint64_t x269; uint8_t x270 = _addcarryx_u64(0x0, x214, x233, &x269);
- { uint64_t x272; uint8_t x273 = _addcarryx_u64(x270, x217, x251, &x272);
- { uint64_t x275; uint8_t x276 = _addcarryx_u64(x273, x220, x254, &x275);
- { uint64_t x278; uint8_t x279 = _addcarryx_u64(x276, x223, x257, &x278);
- { uint64_t x281; uint8_t x282 = _addcarryx_u64(x279, x226, x260, &x281);
- { uint64_t x284; uint8_t x285 = _addcarryx_u64(x282, x229, x263, &x284);
- { uint64_t x287; uint8_t x288 = _addcarryx_u64(x285, x231, x266, &x287);
- { uint64_t x291; uint64_t x290 = _mulx_u64(x269, 0xffffffffffffffffL, &x291);
- { uint64_t x294; uint64_t x293 = _mulx_u64(x269, 0xffffffffffffffffL, &x294);
- { uint64_t x297; uint64_t x296 = _mulx_u64(x269, 0xffffffffffffffffL, &x297);
- { uint64_t x300; uint64_t x299 = _mulx_u64(x269, 0xffffffffffffffffL, &x300);
- { uint64_t x303; uint64_t x302 = _mulx_u64(x269, 0xffffffffffffffffL, &x303);
- { uint64_t x306; uint64_t x305 = _mulx_u64(x269, 0xb0ffffffffffffffL, &x306);
- { uint64_t x308; uint8_t x309 = _addcarryx_u64(0x0, x291, x293, &x308);
- { uint64_t x311; uint8_t x312 = _addcarryx_u64(x309, x294, x296, &x311);
- { uint64_t x314; uint8_t x315 = _addcarryx_u64(x312, x297, x299, &x314);
- { uint64_t x317; uint8_t x318 = _addcarryx_u64(x315, x300, x302, &x317);
- { uint64_t x320; uint8_t x321 = _addcarryx_u64(x318, x303, x305, &x320);
- { uint64_t x323; uint8_t _ = _addcarryx_u64(0x0, x321, x306, &x323);
- { uint64_t _; uint8_t x327 = _addcarryx_u64(0x0, x269, x290, &_);
- { uint64_t x329; uint8_t x330 = _addcarryx_u64(x327, x272, x308, &x329);
- { uint64_t x332; uint8_t x333 = _addcarryx_u64(x330, x275, x311, &x332);
- { uint64_t x335; uint8_t x336 = _addcarryx_u64(x333, x278, x314, &x335);
- { uint64_t x338; uint8_t x339 = _addcarryx_u64(x336, x281, x317, &x338);
- { uint64_t x341; uint8_t x342 = _addcarryx_u64(x339, x284, x320, &x341);
- { uint64_t x344; uint8_t x345 = _addcarryx_u64(x342, x287, x323, &x344);
- { uint8_t x346 = (x345 + x288);
- { uint64_t x349; uint64_t x348 = _mulx_u64(x11, x15, &x349);
- { uint64_t x352; uint64_t x351 = _mulx_u64(x11, x17, &x352);
- { uint64_t x355; uint64_t x354 = _mulx_u64(x11, x19, &x355);
- { uint64_t x358; uint64_t x357 = _mulx_u64(x11, x21, &x358);
- { uint64_t x361; uint64_t x360 = _mulx_u64(x11, x23, &x361);
- { uint64_t x364; uint64_t x363 = _mulx_u64(x11, x22, &x364);
- { uint64_t x366; uint8_t x367 = _addcarryx_u64(0x0, x349, x351, &x366);
- { uint64_t x369; uint8_t x370 = _addcarryx_u64(x367, x352, x354, &x369);
- { uint64_t x372; uint8_t x373 = _addcarryx_u64(x370, x355, x357, &x372);
- { uint64_t x375; uint8_t x376 = _addcarryx_u64(x373, x358, x360, &x375);
- { uint64_t x378; uint8_t x379 = _addcarryx_u64(x376, x361, x363, &x378);
- { uint64_t x381; uint8_t _ = _addcarryx_u64(0x0, x379, x364, &x381);
- { uint64_t x384; uint8_t x385 = _addcarryx_u64(0x0, x329, x348, &x384);
- { uint64_t x387; uint8_t x388 = _addcarryx_u64(x385, x332, x366, &x387);
- { uint64_t x390; uint8_t x391 = _addcarryx_u64(x388, x335, x369, &x390);
- { uint64_t x393; uint8_t x394 = _addcarryx_u64(x391, x338, x372, &x393);
- { uint64_t x396; uint8_t x397 = _addcarryx_u64(x394, x341, x375, &x396);
- { uint64_t x399; uint8_t x400 = _addcarryx_u64(x397, x344, x378, &x399);
- { uint64_t x402; uint8_t x403 = _addcarryx_u64(x400, x346, x381, &x402);
- { uint64_t x406; uint64_t x405 = _mulx_u64(x384, 0xffffffffffffffffL, &x406);
- { uint64_t x409; uint64_t x408 = _mulx_u64(x384, 0xffffffffffffffffL, &x409);
- { uint64_t x412; uint64_t x411 = _mulx_u64(x384, 0xffffffffffffffffL, &x412);
- { uint64_t x415; uint64_t x414 = _mulx_u64(x384, 0xffffffffffffffffL, &x415);
- { uint64_t x418; uint64_t x417 = _mulx_u64(x384, 0xffffffffffffffffL, &x418);
- { uint64_t x421; uint64_t x420 = _mulx_u64(x384, 0xb0ffffffffffffffL, &x421);
- { uint64_t x423; uint8_t x424 = _addcarryx_u64(0x0, x406, x408, &x423);
- { uint64_t x426; uint8_t x427 = _addcarryx_u64(x424, x409, x411, &x426);
- { uint64_t x429; uint8_t x430 = _addcarryx_u64(x427, x412, x414, &x429);
- { uint64_t x432; uint8_t x433 = _addcarryx_u64(x430, x415, x417, &x432);
- { uint64_t x435; uint8_t x436 = _addcarryx_u64(x433, x418, x420, &x435);
- { uint64_t x438; uint8_t _ = _addcarryx_u64(0x0, x436, x421, &x438);
- { uint64_t _; uint8_t x442 = _addcarryx_u64(0x0, x384, x405, &_);
- { uint64_t x444; uint8_t x445 = _addcarryx_u64(x442, x387, x423, &x444);
- { uint64_t x447; uint8_t x448 = _addcarryx_u64(x445, x390, x426, &x447);
- { uint64_t x450; uint8_t x451 = _addcarryx_u64(x448, x393, x429, &x450);
- { uint64_t x453; uint8_t x454 = _addcarryx_u64(x451, x396, x432, &x453);
- { uint64_t x456; uint8_t x457 = _addcarryx_u64(x454, x399, x435, &x456);
- { uint64_t x459; uint8_t x460 = _addcarryx_u64(x457, x402, x438, &x459);
- { uint8_t x461 = (x460 + x403);
- { uint64_t x464; uint64_t x463 = _mulx_u64(x13, x15, &x464);
- { uint64_t x467; uint64_t x466 = _mulx_u64(x13, x17, &x467);
- { uint64_t x470; uint64_t x469 = _mulx_u64(x13, x19, &x470);
- { uint64_t x473; uint64_t x472 = _mulx_u64(x13, x21, &x473);
- { uint64_t x476; uint64_t x475 = _mulx_u64(x13, x23, &x476);
- { uint64_t x479; uint64_t x478 = _mulx_u64(x13, x22, &x479);
- { uint64_t x481; uint8_t x482 = _addcarryx_u64(0x0, x464, x466, &x481);
- { uint64_t x484; uint8_t x485 = _addcarryx_u64(x482, x467, x469, &x484);
- { uint64_t x487; uint8_t x488 = _addcarryx_u64(x485, x470, x472, &x487);
- { uint64_t x490; uint8_t x491 = _addcarryx_u64(x488, x473, x475, &x490);
- { uint64_t x493; uint8_t x494 = _addcarryx_u64(x491, x476, x478, &x493);
- { uint64_t x496; uint8_t _ = _addcarryx_u64(0x0, x494, x479, &x496);
- { uint64_t x499; uint8_t x500 = _addcarryx_u64(0x0, x444, x463, &x499);
- { uint64_t x502; uint8_t x503 = _addcarryx_u64(x500, x447, x481, &x502);
- { uint64_t x505; uint8_t x506 = _addcarryx_u64(x503, x450, x484, &x505);
- { uint64_t x508; uint8_t x509 = _addcarryx_u64(x506, x453, x487, &x508);
- { uint64_t x511; uint8_t x512 = _addcarryx_u64(x509, x456, x490, &x511);
- { uint64_t x514; uint8_t x515 = _addcarryx_u64(x512, x459, x493, &x514);
- { uint64_t x517; uint8_t x518 = _addcarryx_u64(x515, x461, x496, &x517);
- { uint64_t x521; uint64_t x520 = _mulx_u64(x499, 0xffffffffffffffffL, &x521);
- { uint64_t x524; uint64_t x523 = _mulx_u64(x499, 0xffffffffffffffffL, &x524);
- { uint64_t x527; uint64_t x526 = _mulx_u64(x499, 0xffffffffffffffffL, &x527);
- { uint64_t x530; uint64_t x529 = _mulx_u64(x499, 0xffffffffffffffffL, &x530);
- { uint64_t x533; uint64_t x532 = _mulx_u64(x499, 0xffffffffffffffffL, &x533);
- { uint64_t x536; uint64_t x535 = _mulx_u64(x499, 0xb0ffffffffffffffL, &x536);
- { uint64_t x538; uint8_t x539 = _addcarryx_u64(0x0, x521, x523, &x538);
- { uint64_t x541; uint8_t x542 = _addcarryx_u64(x539, x524, x526, &x541);
- { uint64_t x544; uint8_t x545 = _addcarryx_u64(x542, x527, x529, &x544);
- { uint64_t x547; uint8_t x548 = _addcarryx_u64(x545, x530, x532, &x547);
- { uint64_t x550; uint8_t x551 = _addcarryx_u64(x548, x533, x535, &x550);
- { uint64_t x553; uint8_t _ = _addcarryx_u64(0x0, x551, x536, &x553);
- { uint64_t _; uint8_t x557 = _addcarryx_u64(0x0, x499, x520, &_);
- { uint64_t x559; uint8_t x560 = _addcarryx_u64(x557, x502, x538, &x559);
- { uint64_t x562; uint8_t x563 = _addcarryx_u64(x560, x505, x541, &x562);
- { uint64_t x565; uint8_t x566 = _addcarryx_u64(x563, x508, x544, &x565);
- { uint64_t x568; uint8_t x569 = _addcarryx_u64(x566, x511, x547, &x568);
- { uint64_t x571; uint8_t x572 = _addcarryx_u64(x569, x514, x550, &x571);
- { uint64_t x574; uint8_t x575 = _addcarryx_u64(x572, x517, x553, &x574);
- { uint8_t x576 = (x575 + x518);
- { uint64_t x579; uint64_t x578 = _mulx_u64(x12, x15, &x579);
- { uint64_t x582; uint64_t x581 = _mulx_u64(x12, x17, &x582);
- { uint64_t x585; uint64_t x584 = _mulx_u64(x12, x19, &x585);
- { uint64_t x588; uint64_t x587 = _mulx_u64(x12, x21, &x588);
- { uint64_t x591; uint64_t x590 = _mulx_u64(x12, x23, &x591);
- { uint64_t x594; uint64_t x593 = _mulx_u64(x12, x22, &x594);
- { uint64_t x596; uint8_t x597 = _addcarryx_u64(0x0, x579, x581, &x596);
- { uint64_t x599; uint8_t x600 = _addcarryx_u64(x597, x582, x584, &x599);
- { uint64_t x602; uint8_t x603 = _addcarryx_u64(x600, x585, x587, &x602);
- { uint64_t x605; uint8_t x606 = _addcarryx_u64(x603, x588, x590, &x605);
- { uint64_t x608; uint8_t x609 = _addcarryx_u64(x606, x591, x593, &x608);
- { uint64_t x611; uint8_t _ = _addcarryx_u64(0x0, x609, x594, &x611);
- { uint64_t x614; uint8_t x615 = _addcarryx_u64(0x0, x559, x578, &x614);
- { uint64_t x617; uint8_t x618 = _addcarryx_u64(x615, x562, x596, &x617);
- { uint64_t x620; uint8_t x621 = _addcarryx_u64(x618, x565, x599, &x620);
- { uint64_t x623; uint8_t x624 = _addcarryx_u64(x621, x568, x602, &x623);
- { uint64_t x626; uint8_t x627 = _addcarryx_u64(x624, x571, x605, &x626);
- { uint64_t x629; uint8_t x630 = _addcarryx_u64(x627, x574, x608, &x629);
- { uint64_t x632; uint8_t x633 = _addcarryx_u64(x630, x576, x611, &x632);
- { uint64_t x636; uint64_t x635 = _mulx_u64(x614, 0xffffffffffffffffL, &x636);
- { uint64_t x639; uint64_t x638 = _mulx_u64(x614, 0xffffffffffffffffL, &x639);
- { uint64_t x642; uint64_t x641 = _mulx_u64(x614, 0xffffffffffffffffL, &x642);
- { uint64_t x645; uint64_t x644 = _mulx_u64(x614, 0xffffffffffffffffL, &x645);
- { uint64_t x648; uint64_t x647 = _mulx_u64(x614, 0xffffffffffffffffL, &x648);
- { uint64_t x651; uint64_t x650 = _mulx_u64(x614, 0xb0ffffffffffffffL, &x651);
- { uint64_t x653; uint8_t x654 = _addcarryx_u64(0x0, x636, x638, &x653);
- { uint64_t x656; uint8_t x657 = _addcarryx_u64(x654, x639, x641, &x656);
- { uint64_t x659; uint8_t x660 = _addcarryx_u64(x657, x642, x644, &x659);
- { uint64_t x662; uint8_t x663 = _addcarryx_u64(x660, x645, x647, &x662);
- { uint64_t x665; uint8_t x666 = _addcarryx_u64(x663, x648, x650, &x665);
- { uint64_t x668; uint8_t _ = _addcarryx_u64(0x0, x666, x651, &x668);
- { uint64_t _; uint8_t x672 = _addcarryx_u64(0x0, x614, x635, &_);
- { uint64_t x674; uint8_t x675 = _addcarryx_u64(x672, x617, x653, &x674);
- { uint64_t x677; uint8_t x678 = _addcarryx_u64(x675, x620, x656, &x677);
- { uint64_t x680; uint8_t x681 = _addcarryx_u64(x678, x623, x659, &x680);
- { uint64_t x683; uint8_t x684 = _addcarryx_u64(x681, x626, x662, &x683);
- { uint64_t x686; uint8_t x687 = _addcarryx_u64(x684, x629, x665, &x686);
- { uint64_t x689; uint8_t x690 = _addcarryx_u64(x687, x632, x668, &x689);
- { uint8_t x691 = (x690 + x633);
- { uint64_t x693; uint8_t x694 = _subborrow_u64(0x0, x674, 0xffffffffffffffffL, &x693);
- { uint64_t x696; uint8_t x697 = _subborrow_u64(x694, x677, 0xffffffffffffffffL, &x696);
- { uint64_t x699; uint8_t x700 = _subborrow_u64(x697, x680, 0xffffffffffffffffL, &x699);
- { uint64_t x702; uint8_t x703 = _subborrow_u64(x700, x683, 0xffffffffffffffffL, &x702);
- { uint64_t x705; uint8_t x706 = _subborrow_u64(x703, x686, 0xffffffffffffffffL, &x705);
- { uint64_t x708; uint8_t x709 = _subborrow_u64(x706, x689, 0xb0ffffffffffffffL, &x708);
- { uint64_t _; uint8_t x712 = _subborrow_u64(x709, x691, 0x0, &_);
- { uint64_t x713 = cmovznz64(x712, x708, x689);
- { uint64_t x714 = cmovznz64(x712, x705, x686);
- { uint64_t x715 = cmovznz64(x712, x702, x683);
- { uint64_t x716 = cmovznz64(x712, x699, x680);
- { uint64_t x717 = cmovznz64(x712, x696, x677);
- { uint64_t x718 = cmovznz64(x712, x693, x674);
- out[0] = x718;
- out[1] = x717;
- out[2] = x716;
- out[3] = x715;
- out[4] = x714;
- out[5] = x713;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/femul.v b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/femul.v
deleted file mode 100644
index 981dcfb23..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e384m79x2e376m1_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/femulDisplay.log b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/femulDisplay.log
deleted file mode 100644
index f6fad76a0..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,246 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint64_t x26 = mulx_u64(x5, x15);
- uint64_t x28, uint64_t x29 = mulx_u64(x5, x17);
- uint64_t x31, uint64_t x32 = mulx_u64(x5, x19);
- uint64_t x34, uint64_t x35 = mulx_u64(x5, x21);
- uint64_t x37, uint64_t x38 = mulx_u64(x5, x23);
- uint64_t x40, uint64_t x41 = mulx_u64(x5, x22);
- uint64_t x43, uint8_t x44 = addcarryx_u64(0x0, x26, x28);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x29, x31);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x47, x32, x34);
- uint64_t x52, uint8_t x53 = addcarryx_u64(x50, x35, x37);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x38, x40);
- uint64_t x58, uint8_t _ = addcarryx_u64(0x0, x56, x41);
- uint64_t x61, uint64_t x62 = mulx_u64(x25, 0xffffffffffffffffL);
- uint64_t x64, uint64_t x65 = mulx_u64(x25, 0xffffffffffffffffL);
- uint64_t x67, uint64_t x68 = mulx_u64(x25, 0xffffffffffffffffL);
- uint64_t x70, uint64_t x71 = mulx_u64(x25, 0xffffffffffffffffL);
- uint64_t x73, uint64_t x74 = mulx_u64(x25, 0xffffffffffffffffL);
- uint64_t x76, uint64_t x77 = mulx_u64(x25, 0xb0ffffffffffffffL);
- uint64_t x79, uint8_t x80 = addcarryx_u64(0x0, x62, x64);
- uint64_t x82, uint8_t x83 = addcarryx_u64(x80, x65, x67);
- uint64_t x85, uint8_t x86 = addcarryx_u64(x83, x68, x70);
- uint64_t x88, uint8_t x89 = addcarryx_u64(x86, x71, x73);
- uint64_t x91, uint8_t x92 = addcarryx_u64(x89, x74, x76);
- uint64_t x94, uint8_t _ = addcarryx_u64(0x0, x92, x77);
- uint64_t _, uint8_t x98 = addcarryx_u64(0x0, x25, x61);
- uint64_t x100, uint8_t x101 = addcarryx_u64(x98, x43, x79);
- uint64_t x103, uint8_t x104 = addcarryx_u64(x101, x46, x82);
- uint64_t x106, uint8_t x107 = addcarryx_u64(x104, x49, x85);
- uint64_t x109, uint8_t x110 = addcarryx_u64(x107, x52, x88);
- uint64_t x112, uint8_t x113 = addcarryx_u64(x110, x55, x91);
- uint64_t x115, uint8_t x116 = addcarryx_u64(x113, x58, x94);
- uint64_t x118, uint64_t x119 = mulx_u64(x7, x15);
- uint64_t x121, uint64_t x122 = mulx_u64(x7, x17);
- uint64_t x124, uint64_t x125 = mulx_u64(x7, x19);
- uint64_t x127, uint64_t x128 = mulx_u64(x7, x21);
- uint64_t x130, uint64_t x131 = mulx_u64(x7, x23);
- uint64_t x133, uint64_t x134 = mulx_u64(x7, x22);
- uint64_t x136, uint8_t x137 = addcarryx_u64(0x0, x119, x121);
- uint64_t x139, uint8_t x140 = addcarryx_u64(x137, x122, x124);
- uint64_t x142, uint8_t x143 = addcarryx_u64(x140, x125, x127);
- uint64_t x145, uint8_t x146 = addcarryx_u64(x143, x128, x130);
- uint64_t x148, uint8_t x149 = addcarryx_u64(x146, x131, x133);
- uint64_t x151, uint8_t _ = addcarryx_u64(0x0, x149, x134);
- uint64_t x154, uint8_t x155 = addcarryx_u64(0x0, x100, x118);
- uint64_t x157, uint8_t x158 = addcarryx_u64(x155, x103, x136);
- uint64_t x160, uint8_t x161 = addcarryx_u64(x158, x106, x139);
- uint64_t x163, uint8_t x164 = addcarryx_u64(x161, x109, x142);
- uint64_t x166, uint8_t x167 = addcarryx_u64(x164, x112, x145);
- uint64_t x169, uint8_t x170 = addcarryx_u64(x167, x115, x148);
- uint64_t x172, uint8_t x173 = addcarryx_u64(x170, x116, x151);
- uint64_t x175, uint64_t x176 = mulx_u64(x154, 0xffffffffffffffffL);
- uint64_t x178, uint64_t x179 = mulx_u64(x154, 0xffffffffffffffffL);
- uint64_t x181, uint64_t x182 = mulx_u64(x154, 0xffffffffffffffffL);
- uint64_t x184, uint64_t x185 = mulx_u64(x154, 0xffffffffffffffffL);
- uint64_t x187, uint64_t x188 = mulx_u64(x154, 0xffffffffffffffffL);
- uint64_t x190, uint64_t x191 = mulx_u64(x154, 0xb0ffffffffffffffL);
- uint64_t x193, uint8_t x194 = addcarryx_u64(0x0, x176, x178);
- uint64_t x196, uint8_t x197 = addcarryx_u64(x194, x179, x181);
- uint64_t x199, uint8_t x200 = addcarryx_u64(x197, x182, x184);
- uint64_t x202, uint8_t x203 = addcarryx_u64(x200, x185, x187);
- uint64_t x205, uint8_t x206 = addcarryx_u64(x203, x188, x190);
- uint64_t x208, uint8_t _ = addcarryx_u64(0x0, x206, x191);
- uint64_t _, uint8_t x212 = addcarryx_u64(0x0, x154, x175);
- uint64_t x214, uint8_t x215 = addcarryx_u64(x212, x157, x193);
- uint64_t x217, uint8_t x218 = addcarryx_u64(x215, x160, x196);
- uint64_t x220, uint8_t x221 = addcarryx_u64(x218, x163, x199);
- uint64_t x223, uint8_t x224 = addcarryx_u64(x221, x166, x202);
- uint64_t x226, uint8_t x227 = addcarryx_u64(x224, x169, x205);
- uint64_t x229, uint8_t x230 = addcarryx_u64(x227, x172, x208);
- uint8_t x231 = (x230 + x173);
- uint64_t x233, uint64_t x234 = mulx_u64(x9, x15);
- uint64_t x236, uint64_t x237 = mulx_u64(x9, x17);
- uint64_t x239, uint64_t x240 = mulx_u64(x9, x19);
- uint64_t x242, uint64_t x243 = mulx_u64(x9, x21);
- uint64_t x245, uint64_t x246 = mulx_u64(x9, x23);
- uint64_t x248, uint64_t x249 = mulx_u64(x9, x22);
- uint64_t x251, uint8_t x252 = addcarryx_u64(0x0, x234, x236);
- uint64_t x254, uint8_t x255 = addcarryx_u64(x252, x237, x239);
- uint64_t x257, uint8_t x258 = addcarryx_u64(x255, x240, x242);
- uint64_t x260, uint8_t x261 = addcarryx_u64(x258, x243, x245);
- uint64_t x263, uint8_t x264 = addcarryx_u64(x261, x246, x248);
- uint64_t x266, uint8_t _ = addcarryx_u64(0x0, x264, x249);
- uint64_t x269, uint8_t x270 = addcarryx_u64(0x0, x214, x233);
- uint64_t x272, uint8_t x273 = addcarryx_u64(x270, x217, x251);
- uint64_t x275, uint8_t x276 = addcarryx_u64(x273, x220, x254);
- uint64_t x278, uint8_t x279 = addcarryx_u64(x276, x223, x257);
- uint64_t x281, uint8_t x282 = addcarryx_u64(x279, x226, x260);
- uint64_t x284, uint8_t x285 = addcarryx_u64(x282, x229, x263);
- uint64_t x287, uint8_t x288 = addcarryx_u64(x285, x231, x266);
- uint64_t x290, uint64_t x291 = mulx_u64(x269, 0xffffffffffffffffL);
- uint64_t x293, uint64_t x294 = mulx_u64(x269, 0xffffffffffffffffL);
- uint64_t x296, uint64_t x297 = mulx_u64(x269, 0xffffffffffffffffL);
- uint64_t x299, uint64_t x300 = mulx_u64(x269, 0xffffffffffffffffL);
- uint64_t x302, uint64_t x303 = mulx_u64(x269, 0xffffffffffffffffL);
- uint64_t x305, uint64_t x306 = mulx_u64(x269, 0xb0ffffffffffffffL);
- uint64_t x308, uint8_t x309 = addcarryx_u64(0x0, x291, x293);
- uint64_t x311, uint8_t x312 = addcarryx_u64(x309, x294, x296);
- uint64_t x314, uint8_t x315 = addcarryx_u64(x312, x297, x299);
- uint64_t x317, uint8_t x318 = addcarryx_u64(x315, x300, x302);
- uint64_t x320, uint8_t x321 = addcarryx_u64(x318, x303, x305);
- uint64_t x323, uint8_t _ = addcarryx_u64(0x0, x321, x306);
- uint64_t _, uint8_t x327 = addcarryx_u64(0x0, x269, x290);
- uint64_t x329, uint8_t x330 = addcarryx_u64(x327, x272, x308);
- uint64_t x332, uint8_t x333 = addcarryx_u64(x330, x275, x311);
- uint64_t x335, uint8_t x336 = addcarryx_u64(x333, x278, x314);
- uint64_t x338, uint8_t x339 = addcarryx_u64(x336, x281, x317);
- uint64_t x341, uint8_t x342 = addcarryx_u64(x339, x284, x320);
- uint64_t x344, uint8_t x345 = addcarryx_u64(x342, x287, x323);
- uint8_t x346 = (x345 + x288);
- uint64_t x348, uint64_t x349 = mulx_u64(x11, x15);
- uint64_t x351, uint64_t x352 = mulx_u64(x11, x17);
- uint64_t x354, uint64_t x355 = mulx_u64(x11, x19);
- uint64_t x357, uint64_t x358 = mulx_u64(x11, x21);
- uint64_t x360, uint64_t x361 = mulx_u64(x11, x23);
- uint64_t x363, uint64_t x364 = mulx_u64(x11, x22);
- uint64_t x366, uint8_t x367 = addcarryx_u64(0x0, x349, x351);
- uint64_t x369, uint8_t x370 = addcarryx_u64(x367, x352, x354);
- uint64_t x372, uint8_t x373 = addcarryx_u64(x370, x355, x357);
- uint64_t x375, uint8_t x376 = addcarryx_u64(x373, x358, x360);
- uint64_t x378, uint8_t x379 = addcarryx_u64(x376, x361, x363);
- uint64_t x381, uint8_t _ = addcarryx_u64(0x0, x379, x364);
- uint64_t x384, uint8_t x385 = addcarryx_u64(0x0, x329, x348);
- uint64_t x387, uint8_t x388 = addcarryx_u64(x385, x332, x366);
- uint64_t x390, uint8_t x391 = addcarryx_u64(x388, x335, x369);
- uint64_t x393, uint8_t x394 = addcarryx_u64(x391, x338, x372);
- uint64_t x396, uint8_t x397 = addcarryx_u64(x394, x341, x375);
- uint64_t x399, uint8_t x400 = addcarryx_u64(x397, x344, x378);
- uint64_t x402, uint8_t x403 = addcarryx_u64(x400, x346, x381);
- uint64_t x405, uint64_t x406 = mulx_u64(x384, 0xffffffffffffffffL);
- uint64_t x408, uint64_t x409 = mulx_u64(x384, 0xffffffffffffffffL);
- uint64_t x411, uint64_t x412 = mulx_u64(x384, 0xffffffffffffffffL);
- uint64_t x414, uint64_t x415 = mulx_u64(x384, 0xffffffffffffffffL);
- uint64_t x417, uint64_t x418 = mulx_u64(x384, 0xffffffffffffffffL);
- uint64_t x420, uint64_t x421 = mulx_u64(x384, 0xb0ffffffffffffffL);
- uint64_t x423, uint8_t x424 = addcarryx_u64(0x0, x406, x408);
- uint64_t x426, uint8_t x427 = addcarryx_u64(x424, x409, x411);
- uint64_t x429, uint8_t x430 = addcarryx_u64(x427, x412, x414);
- uint64_t x432, uint8_t x433 = addcarryx_u64(x430, x415, x417);
- uint64_t x435, uint8_t x436 = addcarryx_u64(x433, x418, x420);
- uint64_t x438, uint8_t _ = addcarryx_u64(0x0, x436, x421);
- uint64_t _, uint8_t x442 = addcarryx_u64(0x0, x384, x405);
- uint64_t x444, uint8_t x445 = addcarryx_u64(x442, x387, x423);
- uint64_t x447, uint8_t x448 = addcarryx_u64(x445, x390, x426);
- uint64_t x450, uint8_t x451 = addcarryx_u64(x448, x393, x429);
- uint64_t x453, uint8_t x454 = addcarryx_u64(x451, x396, x432);
- uint64_t x456, uint8_t x457 = addcarryx_u64(x454, x399, x435);
- uint64_t x459, uint8_t x460 = addcarryx_u64(x457, x402, x438);
- uint8_t x461 = (x460 + x403);
- uint64_t x463, uint64_t x464 = mulx_u64(x13, x15);
- uint64_t x466, uint64_t x467 = mulx_u64(x13, x17);
- uint64_t x469, uint64_t x470 = mulx_u64(x13, x19);
- uint64_t x472, uint64_t x473 = mulx_u64(x13, x21);
- uint64_t x475, uint64_t x476 = mulx_u64(x13, x23);
- uint64_t x478, uint64_t x479 = mulx_u64(x13, x22);
- uint64_t x481, uint8_t x482 = addcarryx_u64(0x0, x464, x466);
- uint64_t x484, uint8_t x485 = addcarryx_u64(x482, x467, x469);
- uint64_t x487, uint8_t x488 = addcarryx_u64(x485, x470, x472);
- uint64_t x490, uint8_t x491 = addcarryx_u64(x488, x473, x475);
- uint64_t x493, uint8_t x494 = addcarryx_u64(x491, x476, x478);
- uint64_t x496, uint8_t _ = addcarryx_u64(0x0, x494, x479);
- uint64_t x499, uint8_t x500 = addcarryx_u64(0x0, x444, x463);
- uint64_t x502, uint8_t x503 = addcarryx_u64(x500, x447, x481);
- uint64_t x505, uint8_t x506 = addcarryx_u64(x503, x450, x484);
- uint64_t x508, uint8_t x509 = addcarryx_u64(x506, x453, x487);
- uint64_t x511, uint8_t x512 = addcarryx_u64(x509, x456, x490);
- uint64_t x514, uint8_t x515 = addcarryx_u64(x512, x459, x493);
- uint64_t x517, uint8_t x518 = addcarryx_u64(x515, x461, x496);
- uint64_t x520, uint64_t x521 = mulx_u64(x499, 0xffffffffffffffffL);
- uint64_t x523, uint64_t x524 = mulx_u64(x499, 0xffffffffffffffffL);
- uint64_t x526, uint64_t x527 = mulx_u64(x499, 0xffffffffffffffffL);
- uint64_t x529, uint64_t x530 = mulx_u64(x499, 0xffffffffffffffffL);
- uint64_t x532, uint64_t x533 = mulx_u64(x499, 0xffffffffffffffffL);
- uint64_t x535, uint64_t x536 = mulx_u64(x499, 0xb0ffffffffffffffL);
- uint64_t x538, uint8_t x539 = addcarryx_u64(0x0, x521, x523);
- uint64_t x541, uint8_t x542 = addcarryx_u64(x539, x524, x526);
- uint64_t x544, uint8_t x545 = addcarryx_u64(x542, x527, x529);
- uint64_t x547, uint8_t x548 = addcarryx_u64(x545, x530, x532);
- uint64_t x550, uint8_t x551 = addcarryx_u64(x548, x533, x535);
- uint64_t x553, uint8_t _ = addcarryx_u64(0x0, x551, x536);
- uint64_t _, uint8_t x557 = addcarryx_u64(0x0, x499, x520);
- uint64_t x559, uint8_t x560 = addcarryx_u64(x557, x502, x538);
- uint64_t x562, uint8_t x563 = addcarryx_u64(x560, x505, x541);
- uint64_t x565, uint8_t x566 = addcarryx_u64(x563, x508, x544);
- uint64_t x568, uint8_t x569 = addcarryx_u64(x566, x511, x547);
- uint64_t x571, uint8_t x572 = addcarryx_u64(x569, x514, x550);
- uint64_t x574, uint8_t x575 = addcarryx_u64(x572, x517, x553);
- uint8_t x576 = (x575 + x518);
- uint64_t x578, uint64_t x579 = mulx_u64(x12, x15);
- uint64_t x581, uint64_t x582 = mulx_u64(x12, x17);
- uint64_t x584, uint64_t x585 = mulx_u64(x12, x19);
- uint64_t x587, uint64_t x588 = mulx_u64(x12, x21);
- uint64_t x590, uint64_t x591 = mulx_u64(x12, x23);
- uint64_t x593, uint64_t x594 = mulx_u64(x12, x22);
- uint64_t x596, uint8_t x597 = addcarryx_u64(0x0, x579, x581);
- uint64_t x599, uint8_t x600 = addcarryx_u64(x597, x582, x584);
- uint64_t x602, uint8_t x603 = addcarryx_u64(x600, x585, x587);
- uint64_t x605, uint8_t x606 = addcarryx_u64(x603, x588, x590);
- uint64_t x608, uint8_t x609 = addcarryx_u64(x606, x591, x593);
- uint64_t x611, uint8_t _ = addcarryx_u64(0x0, x609, x594);
- uint64_t x614, uint8_t x615 = addcarryx_u64(0x0, x559, x578);
- uint64_t x617, uint8_t x618 = addcarryx_u64(x615, x562, x596);
- uint64_t x620, uint8_t x621 = addcarryx_u64(x618, x565, x599);
- uint64_t x623, uint8_t x624 = addcarryx_u64(x621, x568, x602);
- uint64_t x626, uint8_t x627 = addcarryx_u64(x624, x571, x605);
- uint64_t x629, uint8_t x630 = addcarryx_u64(x627, x574, x608);
- uint64_t x632, uint8_t x633 = addcarryx_u64(x630, x576, x611);
- uint64_t x635, uint64_t x636 = mulx_u64(x614, 0xffffffffffffffffL);
- uint64_t x638, uint64_t x639 = mulx_u64(x614, 0xffffffffffffffffL);
- uint64_t x641, uint64_t x642 = mulx_u64(x614, 0xffffffffffffffffL);
- uint64_t x644, uint64_t x645 = mulx_u64(x614, 0xffffffffffffffffL);
- uint64_t x647, uint64_t x648 = mulx_u64(x614, 0xffffffffffffffffL);
- uint64_t x650, uint64_t x651 = mulx_u64(x614, 0xb0ffffffffffffffL);
- uint64_t x653, uint8_t x654 = addcarryx_u64(0x0, x636, x638);
- uint64_t x656, uint8_t x657 = addcarryx_u64(x654, x639, x641);
- uint64_t x659, uint8_t x660 = addcarryx_u64(x657, x642, x644);
- uint64_t x662, uint8_t x663 = addcarryx_u64(x660, x645, x647);
- uint64_t x665, uint8_t x666 = addcarryx_u64(x663, x648, x650);
- uint64_t x668, uint8_t _ = addcarryx_u64(0x0, x666, x651);
- uint64_t _, uint8_t x672 = addcarryx_u64(0x0, x614, x635);
- uint64_t x674, uint8_t x675 = addcarryx_u64(x672, x617, x653);
- uint64_t x677, uint8_t x678 = addcarryx_u64(x675, x620, x656);
- uint64_t x680, uint8_t x681 = addcarryx_u64(x678, x623, x659);
- uint64_t x683, uint8_t x684 = addcarryx_u64(x681, x626, x662);
- uint64_t x686, uint8_t x687 = addcarryx_u64(x684, x629, x665);
- uint64_t x689, uint8_t x690 = addcarryx_u64(x687, x632, x668);
- uint8_t x691 = (x690 + x633);
- uint64_t x693, uint8_t x694 = subborrow_u64(0x0, x674, 0xffffffffffffffffL);
- uint64_t x696, uint8_t x697 = subborrow_u64(x694, x677, 0xffffffffffffffffL);
- uint64_t x699, uint8_t x700 = subborrow_u64(x697, x680, 0xffffffffffffffffL);
- uint64_t x702, uint8_t x703 = subborrow_u64(x700, x683, 0xffffffffffffffffL);
- uint64_t x705, uint8_t x706 = subborrow_u64(x703, x686, 0xffffffffffffffffL);
- uint64_t x708, uint8_t x709 = subborrow_u64(x706, x689, 0xb0ffffffffffffffL);
- uint64_t _, uint8_t x712 = subborrow_u64(x709, x691, 0x0);
- uint64_t x713 = cmovznz64(x712, x708, x689);
- uint64_t x714 = cmovznz64(x712, x705, x686);
- uint64_t x715 = cmovznz64(x712, x702, x683);
- uint64_t x716 = cmovznz64(x712, x699, x680);
- uint64_t x717 = cmovznz64(x712, x696, x677);
- uint64_t x718 = cmovznz64(x712, x693, x674);
- return (x713, x714, x715, x716, x717, x718))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/femulDisplay.v b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/femulDisplay.v
deleted file mode 100644
index 1d0ae177e..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e384m79x2e376m1_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fenz.c b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fenz.c
deleted file mode 100644
index c93f74257..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fenz.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x11 = (x10 | x9);
- { uint64_t x12 = (x8 | x11);
- { uint64_t x13 = (x6 | x12);
- { uint64_t x14 = (x4 | x13);
- { uint64_t x15 = (x2 | x14);
- out[0] = x15;
- }}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fenz.v b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fenz.v
deleted file mode 100644
index 93a7518ea..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e384m79x2e376m1_6limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fenzDisplay.log b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fenzDisplay.log
deleted file mode 100644
index f39f1d91b..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fenzDisplay.log
+++ /dev/null
@@ -1,12 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x11 = (x10 | x9);
- uint64_t x12 = (x8 | x11);
- uint64_t x13 = (x6 | x12);
- uint64_t x14 = (x4 | x13);
- uint64_t x15 = (x2 | x14);
- return x15)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fenzDisplay.v b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fenzDisplay.v
deleted file mode 100644
index ce0b57b92..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e384m79x2e376m1_6limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feopp.c b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feopp.c
deleted file mode 100644
index 1e2fad524..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feopp.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void feopp(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12; uint8_t x13 = _subborrow_u64(0x0, 0x0, x2, &x12);
- { uint64_t x15; uint8_t x16 = _subborrow_u64(x13, 0x0, x4, &x15);
- { uint64_t x18; uint8_t x19 = _subborrow_u64(x16, 0x0, x6, &x18);
- { uint64_t x21; uint8_t x22 = _subborrow_u64(x19, 0x0, x8, &x21);
- { uint64_t x24; uint8_t x25 = _subborrow_u64(x22, 0x0, x10, &x24);
- { uint64_t x27; uint8_t x28 = _subborrow_u64(x25, 0x0, x9, &x27);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0xffffffffffffffffL);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(0x0, x12, x30, &x32);
- { uint64_t x34 = (x29 & 0xffffffffffffffffL);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x33, x15, x34, &x36);
- { uint64_t x38 = (x29 & 0xffffffffffffffffL);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x37, x18, x38, &x40);
- { uint64_t x42 = (x29 & 0xffffffffffffffffL);
- { uint64_t x44; uint8_t x45 = _addcarryx_u64(x41, x21, x42, &x44);
- { uint64_t x46 = (x29 & 0xffffffffffffffffL);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x45, x24, x46, &x48);
- { uint64_t x50 = (x29 & 0xb0ffffffffffffffL);
- { uint64_t x52; uint8_t _ = _addcarryx_u64(x49, x27, x50, &x52);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x44;
- out[4] = x48;
- out[5] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feopp.v b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feopp.v
deleted file mode 100644
index 808a52be8..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e384m79x2e376m1_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feoppDisplay.log b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feoppDisplay.log
deleted file mode 100644
index 72e96d79d..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feoppDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = subborrow_u64(0x0, 0x0, x2);
- uint64_t x15, uint8_t x16 = subborrow_u64(x13, 0x0, x4);
- uint64_t x18, uint8_t x19 = subborrow_u64(x16, 0x0, x6);
- uint64_t x21, uint8_t x22 = subborrow_u64(x19, 0x0, x8);
- uint64_t x24, uint8_t x25 = subborrow_u64(x22, 0x0, x10);
- uint64_t x27, uint8_t x28 = subborrow_u64(x25, 0x0, x9);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0xffffffffffffffffL);
- uint64_t x32, uint8_t x33 = addcarryx_u64(0x0, x12, x30);
- uint64_t x34 = (x29 & 0xffffffffffffffffL);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x33, x15, x34);
- uint64_t x38 = (x29 & 0xffffffffffffffffL);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x37, x18, x38);
- uint64_t x42 = (x29 & 0xffffffffffffffffL);
- uint64_t x44, uint8_t x45 = addcarryx_u64(x41, x21, x42);
- uint64_t x46 = (x29 & 0xffffffffffffffffL);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x45, x24, x46);
- uint64_t x50 = (x29 & 0xb0ffffffffffffffL);
- uint64_t x52, uint8_t _ = addcarryx_u64(x49, x27, x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feoppDisplay.v b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feoppDisplay.v
deleted file mode 100644
index 780930f90..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e384m79x2e376m1_6limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fesquare.c b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fesub.c b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fesub.c
deleted file mode 100644
index 4a8b7c7dd..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fesub.c
+++ /dev/null
@@ -1,40 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint64_t x25; uint8_t x26 = _subborrow_u64(0x0, x5, x15, &x25);
- { uint64_t x28; uint8_t x29 = _subborrow_u64(x26, x7, x17, &x28);
- { uint64_t x31; uint8_t x32 = _subborrow_u64(x29, x9, x19, &x31);
- { uint64_t x34; uint8_t x35 = _subborrow_u64(x32, x11, x21, &x34);
- { uint64_t x37; uint8_t x38 = _subborrow_u64(x35, x13, x23, &x37);
- { uint64_t x40; uint8_t x41 = _subborrow_u64(x38, x12, x22, &x40);
- { uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- { uint64_t x43 = (x42 & 0xffffffffffffffffL);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(0x0, x25, x43, &x45);
- { uint64_t x47 = (x42 & 0xffffffffffffffffL);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x46, x28, x47, &x49);
- { uint64_t x51 = (x42 & 0xffffffffffffffffL);
- { uint64_t x53; uint8_t x54 = _addcarryx_u64(x50, x31, x51, &x53);
- { uint64_t x55 = (x42 & 0xffffffffffffffffL);
- { uint64_t x57; uint8_t x58 = _addcarryx_u64(x54, x34, x55, &x57);
- { uint64_t x59 = (x42 & 0xffffffffffffffffL);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x58, x37, x59, &x61);
- { uint64_t x63 = (x42 & 0xb0ffffffffffffffL);
- { uint64_t x65; uint8_t _ = _addcarryx_u64(x62, x40, x63, &x65);
- out[0] = x45;
- out[1] = x49;
- out[2] = x53;
- out[3] = x57;
- out[4] = x61;
- out[5] = x65;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fesub.v b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fesub.v
deleted file mode 100644
index f0424330b..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e384m79x2e376m1_6limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fesubDisplay.log b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fesubDisplay.log
deleted file mode 100644
index 4d416958a..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint64_t x25, uint8_t x26 = subborrow_u64(0x0, x5, x15);
- uint64_t x28, uint8_t x29 = subborrow_u64(x26, x7, x17);
- uint64_t x31, uint8_t x32 = subborrow_u64(x29, x9, x19);
- uint64_t x34, uint8_t x35 = subborrow_u64(x32, x11, x21);
- uint64_t x37, uint8_t x38 = subborrow_u64(x35, x13, x23);
- uint64_t x40, uint8_t x41 = subborrow_u64(x38, x12, x22);
- uint64_t x42 = cmovznz64(x41, 0x0, 0xffffffffffffffffL);
- uint64_t x43 = (x42 & 0xffffffffffffffffL);
- uint64_t x45, uint8_t x46 = addcarryx_u64(0x0, x25, x43);
- uint64_t x47 = (x42 & 0xffffffffffffffffL);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x46, x28, x47);
- uint64_t x51 = (x42 & 0xffffffffffffffffL);
- uint64_t x53, uint8_t x54 = addcarryx_u64(x50, x31, x51);
- uint64_t x55 = (x42 & 0xffffffffffffffffL);
- uint64_t x57, uint8_t x58 = addcarryx_u64(x54, x34, x55);
- uint64_t x59 = (x42 & 0xffffffffffffffffL);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x58, x37, x59);
- uint64_t x63 = (x42 & 0xb0ffffffffffffffL);
- uint64_t x65, uint8_t _ = addcarryx_u64(x62, x40, x63);
- (Return x65, Return x61, Return x57, Return x53, Return x49, Return x45))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fesubDisplay.v b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fesubDisplay.v
deleted file mode 100644
index 7327fcdeb..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e384m79x2e376m1_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/py_interpreter.sh b/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/py_interpreter.sh
deleted file mode 100755
index ecb46830f..000000000
--- a/src/Specific/montgomery64_2e384m79x2e376m1_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**384 - 79*2**376 - 1' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e389m21_7limbs/CurveParameters.v b/src/Specific/montgomery64_2e389m21_7limbs/CurveParameters.v
deleted file mode 100644
index a7a960cdf..000000000
--- a/src/Specific/montgomery64_2e389m21_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^389 - 21
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 64;
- bitwidth := 64;
- s := 2^389;
- c := [(1, 21)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e389m21_7limbs/Synthesis.v b/src/Specific/montgomery64_2e389m21_7limbs/Synthesis.v
deleted file mode 100644
index 1986e7517..000000000
--- a/src/Specific/montgomery64_2e389m21_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e389m21_7limbs.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/montgomery64_2e389m21_7limbs/compiler.sh b/src/Specific/montgomery64_2e389m21_7limbs/compiler.sh
deleted file mode 100755
index ddf60cbd6..000000000
--- a/src/Specific/montgomery64_2e389m21_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='49' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<389) - 21' "$@"
diff --git a/src/Specific/montgomery64_2e389m21_7limbs/compilerxx.sh b/src/Specific/montgomery64_2e389m21_7limbs/compilerxx.sh
deleted file mode 100755
index 0f5bf2037..000000000
--- a/src/Specific/montgomery64_2e389m21_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='49' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<389) - 21' "$@"
diff --git a/src/Specific/montgomery64_2e389m21_7limbs/feadd.c b/src/Specific/montgomery64_2e389m21_7limbs/feadd.c
deleted file mode 100644
index 6e359760a..000000000
--- a/src/Specific/montgomery64_2e389m21_7limbs/feadd.c
+++ /dev/null
@@ -1,46 +0,0 @@
-static void feadd(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x5, x17, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x7, x19, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x9, x21, &x35);
- { uint64_t x38; uint8_t x39 = _addcarryx_u64(x36, x11, x23, &x38);
- { uint64_t x41; uint8_t x42 = _addcarryx_u64(x39, x13, x25, &x41);
- { uint64_t x44; uint8_t x45 = _addcarryx_u64(x42, x15, x27, &x44);
- { uint64_t x47; uint8_t x48 = _addcarryx_u64(x45, x14, x26, &x47);
- { uint64_t x50; uint8_t x51 = _subborrow_u64(0x0, x29, 0xffffffffffffffebL, &x50);
- { uint64_t x53; uint8_t x54 = _subborrow_u64(x51, x32, 0xffffffffffffffffL, &x53);
- { uint64_t x56; uint8_t x57 = _subborrow_u64(x54, x35, 0xffffffffffffffffL, &x56);
- { uint64_t x59; uint8_t x60 = _subborrow_u64(x57, x38, 0xffffffffffffffffL, &x59);
- { uint64_t x62; uint8_t x63 = _subborrow_u64(x60, x41, 0xffffffffffffffffL, &x62);
- { uint64_t x65; uint8_t x66 = _subborrow_u64(x63, x44, 0xffffffffffffffffL, &x65);
- { uint64_t x68; uint8_t x69 = _subborrow_u64(x66, x47, 0x1f, &x68);
- { uint64_t _; uint8_t x72 = _subborrow_u64(x69, x48, 0x0, &_);
- { uint64_t x73 = cmovznz64(x72, x68, x47);
- { uint64_t x74 = cmovznz64(x72, x65, x44);
- { uint64_t x75 = cmovznz64(x72, x62, x41);
- { uint64_t x76 = cmovznz64(x72, x59, x38);
- { uint64_t x77 = cmovznz64(x72, x56, x35);
- { uint64_t x78 = cmovznz64(x72, x53, x32);
- { uint64_t x79 = cmovznz64(x72, x50, x29);
- out[0] = x79;
- out[1] = x78;
- out[2] = x77;
- out[3] = x76;
- out[4] = x75;
- out[5] = x74;
- out[6] = x73;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e389m21_7limbs/feadd.v b/src/Specific/montgomery64_2e389m21_7limbs/feadd.v
deleted file mode 100644
index 6236ce5a5..000000000
--- a/src/Specific/montgomery64_2e389m21_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e389m21_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e389m21_7limbs/feaddDisplay.log b/src/Specific/montgomery64_2e389m21_7limbs/feaddDisplay.log
deleted file mode 100644
index cb7dd7090..000000000
--- a/src/Specific/montgomery64_2e389m21_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x5, x17);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x7, x19);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x9, x21);
- uint64_t x38, uint8_t x39 = addcarryx_u64(x36, x11, x23);
- uint64_t x41, uint8_t x42 = addcarryx_u64(x39, x13, x25);
- uint64_t x44, uint8_t x45 = addcarryx_u64(x42, x15, x27);
- uint64_t x47, uint8_t x48 = addcarryx_u64(x45, x14, x26);
- uint64_t x50, uint8_t x51 = subborrow_u64(0x0, x29, 0xffffffffffffffebL);
- uint64_t x53, uint8_t x54 = subborrow_u64(x51, x32, 0xffffffffffffffffL);
- uint64_t x56, uint8_t x57 = subborrow_u64(x54, x35, 0xffffffffffffffffL);
- uint64_t x59, uint8_t x60 = subborrow_u64(x57, x38, 0xffffffffffffffffL);
- uint64_t x62, uint8_t x63 = subborrow_u64(x60, x41, 0xffffffffffffffffL);
- uint64_t x65, uint8_t x66 = subborrow_u64(x63, x44, 0xffffffffffffffffL);
- uint64_t x68, uint8_t x69 = subborrow_u64(x66, x47, 0x1f);
- uint64_t _, uint8_t x72 = subborrow_u64(x69, x48, 0x0);
- uint64_t x73 = cmovznz64(x72, x68, x47);
- uint64_t x74 = cmovznz64(x72, x65, x44);
- uint64_t x75 = cmovznz64(x72, x62, x41);
- uint64_t x76 = cmovznz64(x72, x59, x38);
- uint64_t x77 = cmovznz64(x72, x56, x35);
- uint64_t x78 = cmovznz64(x72, x53, x32);
- uint64_t x79 = cmovznz64(x72, x50, x29);
- return (x73, x74, x75, x76, x77, x78, x79))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e389m21_7limbs/feaddDisplay.v b/src/Specific/montgomery64_2e389m21_7limbs/feaddDisplay.v
deleted file mode 100644
index ba7d5f66e..000000000
--- a/src/Specific/montgomery64_2e389m21_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e389m21_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e389m21_7limbs/femul.v b/src/Specific/montgomery64_2e389m21_7limbs/femul.v
deleted file mode 100644
index f5af4d6a4..000000000
--- a/src/Specific/montgomery64_2e389m21_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e389m21_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e389m21_7limbs/femulDisplay.v b/src/Specific/montgomery64_2e389m21_7limbs/femulDisplay.v
deleted file mode 100644
index 02be243c9..000000000
--- a/src/Specific/montgomery64_2e389m21_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e389m21_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e389m21_7limbs/fenz.c b/src/Specific/montgomery64_2e389m21_7limbs/fenz.c
deleted file mode 100644
index d09ab7ff5..000000000
--- a/src/Specific/montgomery64_2e389m21_7limbs/fenz.c
+++ /dev/null
@@ -1,17 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x13 = (x12 | x11);
- { uint64_t x14 = (x10 | x13);
- { uint64_t x15 = (x8 | x14);
- { uint64_t x16 = (x6 | x15);
- { uint64_t x17 = (x4 | x16);
- { uint64_t x18 = (x2 | x17);
- out[0] = x18;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e389m21_7limbs/fenz.v b/src/Specific/montgomery64_2e389m21_7limbs/fenz.v
deleted file mode 100644
index 5e40a190a..000000000
--- a/src/Specific/montgomery64_2e389m21_7limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e389m21_7limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e389m21_7limbs/fenzDisplay.log b/src/Specific/montgomery64_2e389m21_7limbs/fenzDisplay.log
deleted file mode 100644
index 28baa6eea..000000000
--- a/src/Specific/montgomery64_2e389m21_7limbs/fenzDisplay.log
+++ /dev/null
@@ -1,13 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x13 = (x12 | x11);
- uint64_t x14 = (x10 | x13);
- uint64_t x15 = (x8 | x14);
- uint64_t x16 = (x6 | x15);
- uint64_t x17 = (x4 | x16);
- uint64_t x18 = (x2 | x17);
- return x18)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e389m21_7limbs/fenzDisplay.v b/src/Specific/montgomery64_2e389m21_7limbs/fenzDisplay.v
deleted file mode 100644
index 91660be19..000000000
--- a/src/Specific/montgomery64_2e389m21_7limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e389m21_7limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e389m21_7limbs/feopp.v b/src/Specific/montgomery64_2e389m21_7limbs/feopp.v
deleted file mode 100644
index e36a5a83f..000000000
--- a/src/Specific/montgomery64_2e389m21_7limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e389m21_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e389m21_7limbs/feoppDisplay.v b/src/Specific/montgomery64_2e389m21_7limbs/feoppDisplay.v
deleted file mode 100644
index 55e9a71f9..000000000
--- a/src/Specific/montgomery64_2e389m21_7limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e389m21_7limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e389m21_7limbs/fesquare.c b/src/Specific/montgomery64_2e389m21_7limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e389m21_7limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e389m21_7limbs/fesub.v b/src/Specific/montgomery64_2e389m21_7limbs/fesub.v
deleted file mode 100644
index 8a53bbd98..000000000
--- a/src/Specific/montgomery64_2e389m21_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e389m21_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e389m21_7limbs/fesubDisplay.v b/src/Specific/montgomery64_2e389m21_7limbs/fesubDisplay.v
deleted file mode 100644
index ee4c02e11..000000000
--- a/src/Specific/montgomery64_2e389m21_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e389m21_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e389m21_7limbs/py_interpreter.sh b/src/Specific/montgomery64_2e389m21_7limbs/py_interpreter.sh
deleted file mode 100755
index 0711e414c..000000000
--- a/src/Specific/montgomery64_2e389m21_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**389 - 21' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e401m31_7limbs/CurveParameters.v b/src/Specific/montgomery64_2e401m31_7limbs/CurveParameters.v
deleted file mode 100644
index 1f1900525..000000000
--- a/src/Specific/montgomery64_2e401m31_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^401 - 31
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 64;
- bitwidth := 64;
- s := 2^401;
- c := [(1, 31)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e401m31_7limbs/Synthesis.v b/src/Specific/montgomery64_2e401m31_7limbs/Synthesis.v
deleted file mode 100644
index 1c5155764..000000000
--- a/src/Specific/montgomery64_2e401m31_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e401m31_7limbs.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/montgomery64_2e401m31_7limbs/compiler.sh b/src/Specific/montgomery64_2e401m31_7limbs/compiler.sh
deleted file mode 100755
index 67585d589..000000000
--- a/src/Specific/montgomery64_2e401m31_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='51' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<401) - 31' "$@"
diff --git a/src/Specific/montgomery64_2e401m31_7limbs/compilerxx.sh b/src/Specific/montgomery64_2e401m31_7limbs/compilerxx.sh
deleted file mode 100755
index a5ad2b92c..000000000
--- a/src/Specific/montgomery64_2e401m31_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='51' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<401) - 31' "$@"
diff --git a/src/Specific/montgomery64_2e401m31_7limbs/feadd.c b/src/Specific/montgomery64_2e401m31_7limbs/feadd.c
deleted file mode 100644
index 01c0bc6b7..000000000
--- a/src/Specific/montgomery64_2e401m31_7limbs/feadd.c
+++ /dev/null
@@ -1,46 +0,0 @@
-static void feadd(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x5, x17, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x7, x19, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x9, x21, &x35);
- { uint64_t x38; uint8_t x39 = _addcarryx_u64(x36, x11, x23, &x38);
- { uint64_t x41; uint8_t x42 = _addcarryx_u64(x39, x13, x25, &x41);
- { uint64_t x44; uint8_t x45 = _addcarryx_u64(x42, x15, x27, &x44);
- { uint64_t x47; uint8_t x48 = _addcarryx_u64(x45, x14, x26, &x47);
- { uint64_t x50; uint8_t x51 = _subborrow_u64(0x0, x29, 0xffffffffffffffe1L, &x50);
- { uint64_t x53; uint8_t x54 = _subborrow_u64(x51, x32, 0xffffffffffffffffL, &x53);
- { uint64_t x56; uint8_t x57 = _subborrow_u64(x54, x35, 0xffffffffffffffffL, &x56);
- { uint64_t x59; uint8_t x60 = _subborrow_u64(x57, x38, 0xffffffffffffffffL, &x59);
- { uint64_t x62; uint8_t x63 = _subborrow_u64(x60, x41, 0xffffffffffffffffL, &x62);
- { uint64_t x65; uint8_t x66 = _subborrow_u64(x63, x44, 0xffffffffffffffffL, &x65);
- { uint64_t x68; uint8_t x69 = _subborrow_u64(x66, x47, 0x1ffff, &x68);
- { uint64_t _; uint8_t x72 = _subborrow_u64(x69, x48, 0x0, &_);
- { uint64_t x73 = cmovznz64(x72, x68, x47);
- { uint64_t x74 = cmovznz64(x72, x65, x44);
- { uint64_t x75 = cmovznz64(x72, x62, x41);
- { uint64_t x76 = cmovznz64(x72, x59, x38);
- { uint64_t x77 = cmovznz64(x72, x56, x35);
- { uint64_t x78 = cmovznz64(x72, x53, x32);
- { uint64_t x79 = cmovznz64(x72, x50, x29);
- out[0] = x79;
- out[1] = x78;
- out[2] = x77;
- out[3] = x76;
- out[4] = x75;
- out[5] = x74;
- out[6] = x73;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e401m31_7limbs/feadd.v b/src/Specific/montgomery64_2e401m31_7limbs/feadd.v
deleted file mode 100644
index b0cb069e9..000000000
--- a/src/Specific/montgomery64_2e401m31_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e401m31_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e401m31_7limbs/feaddDisplay.log b/src/Specific/montgomery64_2e401m31_7limbs/feaddDisplay.log
deleted file mode 100644
index 9bffb37fb..000000000
--- a/src/Specific/montgomery64_2e401m31_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x5, x17);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x7, x19);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x9, x21);
- uint64_t x38, uint8_t x39 = addcarryx_u64(x36, x11, x23);
- uint64_t x41, uint8_t x42 = addcarryx_u64(x39, x13, x25);
- uint64_t x44, uint8_t x45 = addcarryx_u64(x42, x15, x27);
- uint64_t x47, uint8_t x48 = addcarryx_u64(x45, x14, x26);
- uint64_t x50, uint8_t x51 = subborrow_u64(0x0, x29, 0xffffffffffffffe1L);
- uint64_t x53, uint8_t x54 = subborrow_u64(x51, x32, 0xffffffffffffffffL);
- uint64_t x56, uint8_t x57 = subborrow_u64(x54, x35, 0xffffffffffffffffL);
- uint64_t x59, uint8_t x60 = subborrow_u64(x57, x38, 0xffffffffffffffffL);
- uint64_t x62, uint8_t x63 = subborrow_u64(x60, x41, 0xffffffffffffffffL);
- uint64_t x65, uint8_t x66 = subborrow_u64(x63, x44, 0xffffffffffffffffL);
- uint64_t x68, uint8_t x69 = subborrow_u64(x66, x47, 0x1ffff);
- uint64_t _, uint8_t x72 = subborrow_u64(x69, x48, 0x0);
- uint64_t x73 = cmovznz64(x72, x68, x47);
- uint64_t x74 = cmovznz64(x72, x65, x44);
- uint64_t x75 = cmovznz64(x72, x62, x41);
- uint64_t x76 = cmovznz64(x72, x59, x38);
- uint64_t x77 = cmovznz64(x72, x56, x35);
- uint64_t x78 = cmovznz64(x72, x53, x32);
- uint64_t x79 = cmovznz64(x72, x50, x29);
- return (x73, x74, x75, x76, x77, x78, x79))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e401m31_7limbs/feaddDisplay.v b/src/Specific/montgomery64_2e401m31_7limbs/feaddDisplay.v
deleted file mode 100644
index 6551d8c38..000000000
--- a/src/Specific/montgomery64_2e401m31_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e401m31_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e401m31_7limbs/femul.v b/src/Specific/montgomery64_2e401m31_7limbs/femul.v
deleted file mode 100644
index 2f5a1a3a9..000000000
--- a/src/Specific/montgomery64_2e401m31_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e401m31_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e401m31_7limbs/femulDisplay.v b/src/Specific/montgomery64_2e401m31_7limbs/femulDisplay.v
deleted file mode 100644
index f4ce6c5bd..000000000
--- a/src/Specific/montgomery64_2e401m31_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e401m31_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e401m31_7limbs/fenz.c b/src/Specific/montgomery64_2e401m31_7limbs/fenz.c
deleted file mode 100644
index d09ab7ff5..000000000
--- a/src/Specific/montgomery64_2e401m31_7limbs/fenz.c
+++ /dev/null
@@ -1,17 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x13 = (x12 | x11);
- { uint64_t x14 = (x10 | x13);
- { uint64_t x15 = (x8 | x14);
- { uint64_t x16 = (x6 | x15);
- { uint64_t x17 = (x4 | x16);
- { uint64_t x18 = (x2 | x17);
- out[0] = x18;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e401m31_7limbs/fenz.v b/src/Specific/montgomery64_2e401m31_7limbs/fenz.v
deleted file mode 100644
index c49ceb86a..000000000
--- a/src/Specific/montgomery64_2e401m31_7limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e401m31_7limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e401m31_7limbs/fenzDisplay.log b/src/Specific/montgomery64_2e401m31_7limbs/fenzDisplay.log
deleted file mode 100644
index 28baa6eea..000000000
--- a/src/Specific/montgomery64_2e401m31_7limbs/fenzDisplay.log
+++ /dev/null
@@ -1,13 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x13 = (x12 | x11);
- uint64_t x14 = (x10 | x13);
- uint64_t x15 = (x8 | x14);
- uint64_t x16 = (x6 | x15);
- uint64_t x17 = (x4 | x16);
- uint64_t x18 = (x2 | x17);
- return x18)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e401m31_7limbs/fenzDisplay.v b/src/Specific/montgomery64_2e401m31_7limbs/fenzDisplay.v
deleted file mode 100644
index 1a5eaca6a..000000000
--- a/src/Specific/montgomery64_2e401m31_7limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e401m31_7limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e401m31_7limbs/feopp.v b/src/Specific/montgomery64_2e401m31_7limbs/feopp.v
deleted file mode 100644
index eed3d21ce..000000000
--- a/src/Specific/montgomery64_2e401m31_7limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e401m31_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e401m31_7limbs/feoppDisplay.v b/src/Specific/montgomery64_2e401m31_7limbs/feoppDisplay.v
deleted file mode 100644
index 45c6fcc94..000000000
--- a/src/Specific/montgomery64_2e401m31_7limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e401m31_7limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e401m31_7limbs/fesquare.c b/src/Specific/montgomery64_2e401m31_7limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e401m31_7limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e401m31_7limbs/fesub.v b/src/Specific/montgomery64_2e401m31_7limbs/fesub.v
deleted file mode 100644
index 384b6bb08..000000000
--- a/src/Specific/montgomery64_2e401m31_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e401m31_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e401m31_7limbs/fesubDisplay.v b/src/Specific/montgomery64_2e401m31_7limbs/fesubDisplay.v
deleted file mode 100644
index d28491620..000000000
--- a/src/Specific/montgomery64_2e401m31_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e401m31_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e401m31_7limbs/py_interpreter.sh b/src/Specific/montgomery64_2e401m31_7limbs/py_interpreter.sh
deleted file mode 100755
index 18f2c7bd8..000000000
--- a/src/Specific/montgomery64_2e401m31_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**401 - 31' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e413m21_7limbs/CurveParameters.v b/src/Specific/montgomery64_2e413m21_7limbs/CurveParameters.v
deleted file mode 100644
index 072b07875..000000000
--- a/src/Specific/montgomery64_2e413m21_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^413 - 21
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 64;
- bitwidth := 64;
- s := 2^413;
- c := [(1, 21)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e413m21_7limbs/Synthesis.v b/src/Specific/montgomery64_2e413m21_7limbs/Synthesis.v
deleted file mode 100644
index 6e1f63661..000000000
--- a/src/Specific/montgomery64_2e413m21_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e413m21_7limbs.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/montgomery64_2e413m21_7limbs/compiler.sh b/src/Specific/montgomery64_2e413m21_7limbs/compiler.sh
deleted file mode 100755
index c1d51fa4f..000000000
--- a/src/Specific/montgomery64_2e413m21_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<413) - 21' "$@"
diff --git a/src/Specific/montgomery64_2e413m21_7limbs/compilerxx.sh b/src/Specific/montgomery64_2e413m21_7limbs/compilerxx.sh
deleted file mode 100755
index 291bb8b80..000000000
--- a/src/Specific/montgomery64_2e413m21_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<413) - 21' "$@"
diff --git a/src/Specific/montgomery64_2e413m21_7limbs/feadd.c b/src/Specific/montgomery64_2e413m21_7limbs/feadd.c
deleted file mode 100644
index 1978027e3..000000000
--- a/src/Specific/montgomery64_2e413m21_7limbs/feadd.c
+++ /dev/null
@@ -1,46 +0,0 @@
-static void feadd(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x5, x17, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x7, x19, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x9, x21, &x35);
- { uint64_t x38; uint8_t x39 = _addcarryx_u64(x36, x11, x23, &x38);
- { uint64_t x41; uint8_t x42 = _addcarryx_u64(x39, x13, x25, &x41);
- { uint64_t x44; uint8_t x45 = _addcarryx_u64(x42, x15, x27, &x44);
- { uint64_t x47; uint8_t x48 = _addcarryx_u64(x45, x14, x26, &x47);
- { uint64_t x50; uint8_t x51 = _subborrow_u64(0x0, x29, 0xffffffffffffffebL, &x50);
- { uint64_t x53; uint8_t x54 = _subborrow_u64(x51, x32, 0xffffffffffffffffL, &x53);
- { uint64_t x56; uint8_t x57 = _subborrow_u64(x54, x35, 0xffffffffffffffffL, &x56);
- { uint64_t x59; uint8_t x60 = _subborrow_u64(x57, x38, 0xffffffffffffffffL, &x59);
- { uint64_t x62; uint8_t x63 = _subborrow_u64(x60, x41, 0xffffffffffffffffL, &x62);
- { uint64_t x65; uint8_t x66 = _subborrow_u64(x63, x44, 0xffffffffffffffffL, &x65);
- { uint64_t x68; uint8_t x69 = _subborrow_u64(x66, x47, 0x1fffffff, &x68);
- { uint64_t _; uint8_t x72 = _subborrow_u64(x69, x48, 0x0, &_);
- { uint64_t x73 = cmovznz64(x72, x68, x47);
- { uint64_t x74 = cmovznz64(x72, x65, x44);
- { uint64_t x75 = cmovznz64(x72, x62, x41);
- { uint64_t x76 = cmovznz64(x72, x59, x38);
- { uint64_t x77 = cmovznz64(x72, x56, x35);
- { uint64_t x78 = cmovznz64(x72, x53, x32);
- { uint64_t x79 = cmovznz64(x72, x50, x29);
- out[0] = x79;
- out[1] = x78;
- out[2] = x77;
- out[3] = x76;
- out[4] = x75;
- out[5] = x74;
- out[6] = x73;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e413m21_7limbs/feadd.v b/src/Specific/montgomery64_2e413m21_7limbs/feadd.v
deleted file mode 100644
index 8cb127d43..000000000
--- a/src/Specific/montgomery64_2e413m21_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e413m21_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e413m21_7limbs/feaddDisplay.log b/src/Specific/montgomery64_2e413m21_7limbs/feaddDisplay.log
deleted file mode 100644
index 0e539add9..000000000
--- a/src/Specific/montgomery64_2e413m21_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x5, x17);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x7, x19);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x9, x21);
- uint64_t x38, uint8_t x39 = addcarryx_u64(x36, x11, x23);
- uint64_t x41, uint8_t x42 = addcarryx_u64(x39, x13, x25);
- uint64_t x44, uint8_t x45 = addcarryx_u64(x42, x15, x27);
- uint64_t x47, uint8_t x48 = addcarryx_u64(x45, x14, x26);
- uint64_t x50, uint8_t x51 = subborrow_u64(0x0, x29, 0xffffffffffffffebL);
- uint64_t x53, uint8_t x54 = subborrow_u64(x51, x32, 0xffffffffffffffffL);
- uint64_t x56, uint8_t x57 = subborrow_u64(x54, x35, 0xffffffffffffffffL);
- uint64_t x59, uint8_t x60 = subborrow_u64(x57, x38, 0xffffffffffffffffL);
- uint64_t x62, uint8_t x63 = subborrow_u64(x60, x41, 0xffffffffffffffffL);
- uint64_t x65, uint8_t x66 = subborrow_u64(x63, x44, 0xffffffffffffffffL);
- uint64_t x68, uint8_t x69 = subborrow_u64(x66, x47, 0x1fffffff);
- uint64_t _, uint8_t x72 = subborrow_u64(x69, x48, 0x0);
- uint64_t x73 = cmovznz64(x72, x68, x47);
- uint64_t x74 = cmovznz64(x72, x65, x44);
- uint64_t x75 = cmovznz64(x72, x62, x41);
- uint64_t x76 = cmovznz64(x72, x59, x38);
- uint64_t x77 = cmovznz64(x72, x56, x35);
- uint64_t x78 = cmovznz64(x72, x53, x32);
- uint64_t x79 = cmovznz64(x72, x50, x29);
- return (x73, x74, x75, x76, x77, x78, x79))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e413m21_7limbs/feaddDisplay.v b/src/Specific/montgomery64_2e413m21_7limbs/feaddDisplay.v
deleted file mode 100644
index cdd899cb1..000000000
--- a/src/Specific/montgomery64_2e413m21_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e413m21_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e413m21_7limbs/femul.v b/src/Specific/montgomery64_2e413m21_7limbs/femul.v
deleted file mode 100644
index cdad0d00e..000000000
--- a/src/Specific/montgomery64_2e413m21_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e413m21_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e413m21_7limbs/femulDisplay.v b/src/Specific/montgomery64_2e413m21_7limbs/femulDisplay.v
deleted file mode 100644
index f55c9c649..000000000
--- a/src/Specific/montgomery64_2e413m21_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e413m21_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e413m21_7limbs/fenz.c b/src/Specific/montgomery64_2e413m21_7limbs/fenz.c
deleted file mode 100644
index d09ab7ff5..000000000
--- a/src/Specific/montgomery64_2e413m21_7limbs/fenz.c
+++ /dev/null
@@ -1,17 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x13 = (x12 | x11);
- { uint64_t x14 = (x10 | x13);
- { uint64_t x15 = (x8 | x14);
- { uint64_t x16 = (x6 | x15);
- { uint64_t x17 = (x4 | x16);
- { uint64_t x18 = (x2 | x17);
- out[0] = x18;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e413m21_7limbs/fenz.v b/src/Specific/montgomery64_2e413m21_7limbs/fenz.v
deleted file mode 100644
index ef30f537d..000000000
--- a/src/Specific/montgomery64_2e413m21_7limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e413m21_7limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e413m21_7limbs/fenzDisplay.log b/src/Specific/montgomery64_2e413m21_7limbs/fenzDisplay.log
deleted file mode 100644
index 28baa6eea..000000000
--- a/src/Specific/montgomery64_2e413m21_7limbs/fenzDisplay.log
+++ /dev/null
@@ -1,13 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x13 = (x12 | x11);
- uint64_t x14 = (x10 | x13);
- uint64_t x15 = (x8 | x14);
- uint64_t x16 = (x6 | x15);
- uint64_t x17 = (x4 | x16);
- uint64_t x18 = (x2 | x17);
- return x18)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e413m21_7limbs/fenzDisplay.v b/src/Specific/montgomery64_2e413m21_7limbs/fenzDisplay.v
deleted file mode 100644
index b94d72a55..000000000
--- a/src/Specific/montgomery64_2e413m21_7limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e413m21_7limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e413m21_7limbs/feopp.v b/src/Specific/montgomery64_2e413m21_7limbs/feopp.v
deleted file mode 100644
index 45dd48d6f..000000000
--- a/src/Specific/montgomery64_2e413m21_7limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e413m21_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e413m21_7limbs/feoppDisplay.v b/src/Specific/montgomery64_2e413m21_7limbs/feoppDisplay.v
deleted file mode 100644
index 44cf585c9..000000000
--- a/src/Specific/montgomery64_2e413m21_7limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e413m21_7limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e413m21_7limbs/fesquare.c b/src/Specific/montgomery64_2e413m21_7limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e413m21_7limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e413m21_7limbs/fesub.v b/src/Specific/montgomery64_2e413m21_7limbs/fesub.v
deleted file mode 100644
index 4f94daa7d..000000000
--- a/src/Specific/montgomery64_2e413m21_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e413m21_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e413m21_7limbs/fesubDisplay.v b/src/Specific/montgomery64_2e413m21_7limbs/fesubDisplay.v
deleted file mode 100644
index 4ffc415f6..000000000
--- a/src/Specific/montgomery64_2e413m21_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e413m21_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e413m21_7limbs/py_interpreter.sh b/src/Specific/montgomery64_2e413m21_7limbs/py_interpreter.sh
deleted file mode 100755
index 8be5e5a3b..000000000
--- a/src/Specific/montgomery64_2e413m21_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**413 - 21' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e414m17_7limbs/CurveParameters.v b/src/Specific/montgomery64_2e414m17_7limbs/CurveParameters.v
deleted file mode 100644
index cd6d8ee68..000000000
--- a/src/Specific/montgomery64_2e414m17_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^414 - 17
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 64;
- bitwidth := 64;
- s := 2^414;
- c := [(1, 17)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e414m17_7limbs/Synthesis.v b/src/Specific/montgomery64_2e414m17_7limbs/Synthesis.v
deleted file mode 100644
index b52600fb6..000000000
--- a/src/Specific/montgomery64_2e414m17_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e414m17_7limbs.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/montgomery64_2e414m17_7limbs/compiler.sh b/src/Specific/montgomery64_2e414m17_7limbs/compiler.sh
deleted file mode 100755
index 0aa377234..000000000
--- a/src/Specific/montgomery64_2e414m17_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<414) - 17' "$@"
diff --git a/src/Specific/montgomery64_2e414m17_7limbs/compilerxx.sh b/src/Specific/montgomery64_2e414m17_7limbs/compilerxx.sh
deleted file mode 100755
index b4d1100c3..000000000
--- a/src/Specific/montgomery64_2e414m17_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<414) - 17' "$@"
diff --git a/src/Specific/montgomery64_2e414m17_7limbs/feadd.c b/src/Specific/montgomery64_2e414m17_7limbs/feadd.c
deleted file mode 100644
index ec76fd473..000000000
--- a/src/Specific/montgomery64_2e414m17_7limbs/feadd.c
+++ /dev/null
@@ -1,46 +0,0 @@
-static void feadd(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x5, x17, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x7, x19, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x9, x21, &x35);
- { uint64_t x38; uint8_t x39 = _addcarryx_u64(x36, x11, x23, &x38);
- { uint64_t x41; uint8_t x42 = _addcarryx_u64(x39, x13, x25, &x41);
- { uint64_t x44; uint8_t x45 = _addcarryx_u64(x42, x15, x27, &x44);
- { uint64_t x47; uint8_t x48 = _addcarryx_u64(x45, x14, x26, &x47);
- { uint64_t x50; uint8_t x51 = _subborrow_u64(0x0, x29, 0xffffffffffffffefL, &x50);
- { uint64_t x53; uint8_t x54 = _subborrow_u64(x51, x32, 0xffffffffffffffffL, &x53);
- { uint64_t x56; uint8_t x57 = _subborrow_u64(x54, x35, 0xffffffffffffffffL, &x56);
- { uint64_t x59; uint8_t x60 = _subborrow_u64(x57, x38, 0xffffffffffffffffL, &x59);
- { uint64_t x62; uint8_t x63 = _subborrow_u64(x60, x41, 0xffffffffffffffffL, &x62);
- { uint64_t x65; uint8_t x66 = _subborrow_u64(x63, x44, 0xffffffffffffffffL, &x65);
- { uint64_t x68; uint8_t x69 = _subborrow_u64(x66, x47, 0x3fffffff, &x68);
- { uint64_t _; uint8_t x72 = _subborrow_u64(x69, x48, 0x0, &_);
- { uint64_t x73 = cmovznz64(x72, x68, x47);
- { uint64_t x74 = cmovznz64(x72, x65, x44);
- { uint64_t x75 = cmovznz64(x72, x62, x41);
- { uint64_t x76 = cmovznz64(x72, x59, x38);
- { uint64_t x77 = cmovznz64(x72, x56, x35);
- { uint64_t x78 = cmovznz64(x72, x53, x32);
- { uint64_t x79 = cmovznz64(x72, x50, x29);
- out[0] = x79;
- out[1] = x78;
- out[2] = x77;
- out[3] = x76;
- out[4] = x75;
- out[5] = x74;
- out[6] = x73;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e414m17_7limbs/feadd.v b/src/Specific/montgomery64_2e414m17_7limbs/feadd.v
deleted file mode 100644
index 641a16b2c..000000000
--- a/src/Specific/montgomery64_2e414m17_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e414m17_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e414m17_7limbs/feaddDisplay.log b/src/Specific/montgomery64_2e414m17_7limbs/feaddDisplay.log
deleted file mode 100644
index d7510c664..000000000
--- a/src/Specific/montgomery64_2e414m17_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x5, x17);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x7, x19);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x9, x21);
- uint64_t x38, uint8_t x39 = addcarryx_u64(x36, x11, x23);
- uint64_t x41, uint8_t x42 = addcarryx_u64(x39, x13, x25);
- uint64_t x44, uint8_t x45 = addcarryx_u64(x42, x15, x27);
- uint64_t x47, uint8_t x48 = addcarryx_u64(x45, x14, x26);
- uint64_t x50, uint8_t x51 = subborrow_u64(0x0, x29, 0xffffffffffffffefL);
- uint64_t x53, uint8_t x54 = subborrow_u64(x51, x32, 0xffffffffffffffffL);
- uint64_t x56, uint8_t x57 = subborrow_u64(x54, x35, 0xffffffffffffffffL);
- uint64_t x59, uint8_t x60 = subborrow_u64(x57, x38, 0xffffffffffffffffL);
- uint64_t x62, uint8_t x63 = subborrow_u64(x60, x41, 0xffffffffffffffffL);
- uint64_t x65, uint8_t x66 = subborrow_u64(x63, x44, 0xffffffffffffffffL);
- uint64_t x68, uint8_t x69 = subborrow_u64(x66, x47, 0x3fffffff);
- uint64_t _, uint8_t x72 = subborrow_u64(x69, x48, 0x0);
- uint64_t x73 = cmovznz64(x72, x68, x47);
- uint64_t x74 = cmovznz64(x72, x65, x44);
- uint64_t x75 = cmovznz64(x72, x62, x41);
- uint64_t x76 = cmovznz64(x72, x59, x38);
- uint64_t x77 = cmovznz64(x72, x56, x35);
- uint64_t x78 = cmovznz64(x72, x53, x32);
- uint64_t x79 = cmovznz64(x72, x50, x29);
- return (x73, x74, x75, x76, x77, x78, x79))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e414m17_7limbs/feaddDisplay.v b/src/Specific/montgomery64_2e414m17_7limbs/feaddDisplay.v
deleted file mode 100644
index e8d726e17..000000000
--- a/src/Specific/montgomery64_2e414m17_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e414m17_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e414m17_7limbs/femul.v b/src/Specific/montgomery64_2e414m17_7limbs/femul.v
deleted file mode 100644
index 89b6f10a6..000000000
--- a/src/Specific/montgomery64_2e414m17_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e414m17_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e414m17_7limbs/femulDisplay.v b/src/Specific/montgomery64_2e414m17_7limbs/femulDisplay.v
deleted file mode 100644
index f2ff4c6d5..000000000
--- a/src/Specific/montgomery64_2e414m17_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e414m17_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e414m17_7limbs/fenz.c b/src/Specific/montgomery64_2e414m17_7limbs/fenz.c
deleted file mode 100644
index d09ab7ff5..000000000
--- a/src/Specific/montgomery64_2e414m17_7limbs/fenz.c
+++ /dev/null
@@ -1,17 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x13 = (x12 | x11);
- { uint64_t x14 = (x10 | x13);
- { uint64_t x15 = (x8 | x14);
- { uint64_t x16 = (x6 | x15);
- { uint64_t x17 = (x4 | x16);
- { uint64_t x18 = (x2 | x17);
- out[0] = x18;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e414m17_7limbs/fenz.v b/src/Specific/montgomery64_2e414m17_7limbs/fenz.v
deleted file mode 100644
index 46395f98b..000000000
--- a/src/Specific/montgomery64_2e414m17_7limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e414m17_7limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e414m17_7limbs/fenzDisplay.log b/src/Specific/montgomery64_2e414m17_7limbs/fenzDisplay.log
deleted file mode 100644
index 28baa6eea..000000000
--- a/src/Specific/montgomery64_2e414m17_7limbs/fenzDisplay.log
+++ /dev/null
@@ -1,13 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x13 = (x12 | x11);
- uint64_t x14 = (x10 | x13);
- uint64_t x15 = (x8 | x14);
- uint64_t x16 = (x6 | x15);
- uint64_t x17 = (x4 | x16);
- uint64_t x18 = (x2 | x17);
- return x18)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e414m17_7limbs/fenzDisplay.v b/src/Specific/montgomery64_2e414m17_7limbs/fenzDisplay.v
deleted file mode 100644
index 706c1bb7f..000000000
--- a/src/Specific/montgomery64_2e414m17_7limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e414m17_7limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e414m17_7limbs/feopp.v b/src/Specific/montgomery64_2e414m17_7limbs/feopp.v
deleted file mode 100644
index b73150d4f..000000000
--- a/src/Specific/montgomery64_2e414m17_7limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e414m17_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e414m17_7limbs/feoppDisplay.v b/src/Specific/montgomery64_2e414m17_7limbs/feoppDisplay.v
deleted file mode 100644
index 9e1528f54..000000000
--- a/src/Specific/montgomery64_2e414m17_7limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e414m17_7limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e414m17_7limbs/fesquare.c b/src/Specific/montgomery64_2e414m17_7limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e414m17_7limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e414m17_7limbs/fesub.v b/src/Specific/montgomery64_2e414m17_7limbs/fesub.v
deleted file mode 100644
index 999377403..000000000
--- a/src/Specific/montgomery64_2e414m17_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e414m17_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e414m17_7limbs/fesubDisplay.v b/src/Specific/montgomery64_2e414m17_7limbs/fesubDisplay.v
deleted file mode 100644
index 7914eb7dc..000000000
--- a/src/Specific/montgomery64_2e414m17_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e414m17_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e414m17_7limbs/py_interpreter.sh b/src/Specific/montgomery64_2e414m17_7limbs/py_interpreter.sh
deleted file mode 100755
index 967545266..000000000
--- a/src/Specific/montgomery64_2e414m17_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**414 - 17' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e416m2e208m1_7limbs/CurveParameters.v b/src/Specific/montgomery64_2e416m2e208m1_7limbs/CurveParameters.v
deleted file mode 100644
index 15fb68dac..000000000
--- a/src/Specific/montgomery64_2e416m2e208m1_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^416 - 2^208 - 1
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 64;
- bitwidth := 64;
- s := 2^416;
- c := [(1, 1); (2^208, 1)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e416m2e208m1_7limbs/Synthesis.v b/src/Specific/montgomery64_2e416m2e208m1_7limbs/Synthesis.v
deleted file mode 100644
index 07c0c68cb..000000000
--- a/src/Specific/montgomery64_2e416m2e208m1_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e416m2e208m1_7limbs.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/montgomery64_2e416m2e208m1_7limbs/compiler.sh b/src/Specific/montgomery64_2e416m2e208m1_7limbs/compiler.sh
deleted file mode 100755
index 85011ccfc..000000000
--- a/src/Specific/montgomery64_2e416m2e208m1_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e416m2e208m1_7limbs/compilerxx.sh b/src/Specific/montgomery64_2e416m2e208m1_7limbs/compilerxx.sh
deleted file mode 100755
index 80a407e51..000000000
--- a/src/Specific/montgomery64_2e416m2e208m1_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e416m2e208m1_7limbs/feadd.c b/src/Specific/montgomery64_2e416m2e208m1_7limbs/feadd.c
deleted file mode 100644
index 753e03d78..000000000
--- a/src/Specific/montgomery64_2e416m2e208m1_7limbs/feadd.c
+++ /dev/null
@@ -1,46 +0,0 @@
-static void feadd(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x5, x17, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x7, x19, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x9, x21, &x35);
- { uint64_t x38; uint8_t x39 = _addcarryx_u64(x36, x11, x23, &x38);
- { uint64_t x41; uint8_t x42 = _addcarryx_u64(x39, x13, x25, &x41);
- { uint64_t x44; uint8_t x45 = _addcarryx_u64(x42, x15, x27, &x44);
- { uint64_t x47; uint8_t x48 = _addcarryx_u64(x45, x14, x26, &x47);
- { uint64_t x50; uint8_t x51 = _subborrow_u64(0x0, x29, 0xffffffffffffffffL, &x50);
- { uint64_t x53; uint8_t x54 = _subborrow_u64(x51, x32, 0xffffffffffffffffL, &x53);
- { uint64_t x56; uint8_t x57 = _subborrow_u64(x54, x35, 0xffffffffffffffffL, &x56);
- { uint64_t x59; uint8_t x60 = _subborrow_u64(x57, x38, 0xfffffffffffeffffL, &x59);
- { uint64_t x62; uint8_t x63 = _subborrow_u64(x60, x41, 0xffffffffffffffffL, &x62);
- { uint64_t x65; uint8_t x66 = _subborrow_u64(x63, x44, 0xffffffffffffffffL, &x65);
- { uint64_t x68; uint8_t x69 = _subborrow_u64(x66, x47, 0xffffffff, &x68);
- { uint64_t _; uint8_t x72 = _subborrow_u64(x69, x48, 0x0, &_);
- { uint64_t x73 = cmovznz64(x72, x68, x47);
- { uint64_t x74 = cmovznz64(x72, x65, x44);
- { uint64_t x75 = cmovznz64(x72, x62, x41);
- { uint64_t x76 = cmovznz64(x72, x59, x38);
- { uint64_t x77 = cmovznz64(x72, x56, x35);
- { uint64_t x78 = cmovznz64(x72, x53, x32);
- { uint64_t x79 = cmovznz64(x72, x50, x29);
- out[0] = x79;
- out[1] = x78;
- out[2] = x77;
- out[3] = x76;
- out[4] = x75;
- out[5] = x74;
- out[6] = x73;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e416m2e208m1_7limbs/feadd.v b/src/Specific/montgomery64_2e416m2e208m1_7limbs/feadd.v
deleted file mode 100644
index 039a4b8df..000000000
--- a/src/Specific/montgomery64_2e416m2e208m1_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e416m2e208m1_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e416m2e208m1_7limbs/feaddDisplay.log b/src/Specific/montgomery64_2e416m2e208m1_7limbs/feaddDisplay.log
deleted file mode 100644
index bdac118e2..000000000
--- a/src/Specific/montgomery64_2e416m2e208m1_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x5, x17);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x7, x19);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x9, x21);
- uint64_t x38, uint8_t x39 = addcarryx_u64(x36, x11, x23);
- uint64_t x41, uint8_t x42 = addcarryx_u64(x39, x13, x25);
- uint64_t x44, uint8_t x45 = addcarryx_u64(x42, x15, x27);
- uint64_t x47, uint8_t x48 = addcarryx_u64(x45, x14, x26);
- uint64_t x50, uint8_t x51 = subborrow_u64(0x0, x29, 0xffffffffffffffffL);
- uint64_t x53, uint8_t x54 = subborrow_u64(x51, x32, 0xffffffffffffffffL);
- uint64_t x56, uint8_t x57 = subborrow_u64(x54, x35, 0xffffffffffffffffL);
- uint64_t x59, uint8_t x60 = subborrow_u64(x57, x38, 0xfffffffffffeffffL);
- uint64_t x62, uint8_t x63 = subborrow_u64(x60, x41, 0xffffffffffffffffL);
- uint64_t x65, uint8_t x66 = subborrow_u64(x63, x44, 0xffffffffffffffffL);
- uint64_t x68, uint8_t x69 = subborrow_u64(x66, x47, 0xffffffff);
- uint64_t _, uint8_t x72 = subborrow_u64(x69, x48, 0x0);
- uint64_t x73 = cmovznz64(x72, x68, x47);
- uint64_t x74 = cmovznz64(x72, x65, x44);
- uint64_t x75 = cmovznz64(x72, x62, x41);
- uint64_t x76 = cmovznz64(x72, x59, x38);
- uint64_t x77 = cmovznz64(x72, x56, x35);
- uint64_t x78 = cmovznz64(x72, x53, x32);
- uint64_t x79 = cmovznz64(x72, x50, x29);
- return (x73, x74, x75, x76, x77, x78, x79))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e416m2e208m1_7limbs/feaddDisplay.v b/src/Specific/montgomery64_2e416m2e208m1_7limbs/feaddDisplay.v
deleted file mode 100644
index d02523bdd..000000000
--- a/src/Specific/montgomery64_2e416m2e208m1_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e416m2e208m1_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e416m2e208m1_7limbs/femul.v b/src/Specific/montgomery64_2e416m2e208m1_7limbs/femul.v
deleted file mode 100644
index 6f9353567..000000000
--- a/src/Specific/montgomery64_2e416m2e208m1_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e416m2e208m1_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e416m2e208m1_7limbs/femulDisplay.v b/src/Specific/montgomery64_2e416m2e208m1_7limbs/femulDisplay.v
deleted file mode 100644
index f72f3649b..000000000
--- a/src/Specific/montgomery64_2e416m2e208m1_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e416m2e208m1_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e416m2e208m1_7limbs/fenz.c b/src/Specific/montgomery64_2e416m2e208m1_7limbs/fenz.c
deleted file mode 100644
index d09ab7ff5..000000000
--- a/src/Specific/montgomery64_2e416m2e208m1_7limbs/fenz.c
+++ /dev/null
@@ -1,17 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x13 = (x12 | x11);
- { uint64_t x14 = (x10 | x13);
- { uint64_t x15 = (x8 | x14);
- { uint64_t x16 = (x6 | x15);
- { uint64_t x17 = (x4 | x16);
- { uint64_t x18 = (x2 | x17);
- out[0] = x18;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e416m2e208m1_7limbs/fenz.v b/src/Specific/montgomery64_2e416m2e208m1_7limbs/fenz.v
deleted file mode 100644
index 26142d172..000000000
--- a/src/Specific/montgomery64_2e416m2e208m1_7limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e416m2e208m1_7limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e416m2e208m1_7limbs/fenzDisplay.log b/src/Specific/montgomery64_2e416m2e208m1_7limbs/fenzDisplay.log
deleted file mode 100644
index 28baa6eea..000000000
--- a/src/Specific/montgomery64_2e416m2e208m1_7limbs/fenzDisplay.log
+++ /dev/null
@@ -1,13 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x13 = (x12 | x11);
- uint64_t x14 = (x10 | x13);
- uint64_t x15 = (x8 | x14);
- uint64_t x16 = (x6 | x15);
- uint64_t x17 = (x4 | x16);
- uint64_t x18 = (x2 | x17);
- return x18)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e416m2e208m1_7limbs/fenzDisplay.v b/src/Specific/montgomery64_2e416m2e208m1_7limbs/fenzDisplay.v
deleted file mode 100644
index c1834cf24..000000000
--- a/src/Specific/montgomery64_2e416m2e208m1_7limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e416m2e208m1_7limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e416m2e208m1_7limbs/feopp.v b/src/Specific/montgomery64_2e416m2e208m1_7limbs/feopp.v
deleted file mode 100644
index c02f8857d..000000000
--- a/src/Specific/montgomery64_2e416m2e208m1_7limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e416m2e208m1_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e416m2e208m1_7limbs/feoppDisplay.v b/src/Specific/montgomery64_2e416m2e208m1_7limbs/feoppDisplay.v
deleted file mode 100644
index 89cad0fde..000000000
--- a/src/Specific/montgomery64_2e416m2e208m1_7limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e416m2e208m1_7limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e416m2e208m1_7limbs/fesquare.c b/src/Specific/montgomery64_2e416m2e208m1_7limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e416m2e208m1_7limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e416m2e208m1_7limbs/fesub.v b/src/Specific/montgomery64_2e416m2e208m1_7limbs/fesub.v
deleted file mode 100644
index 381ee1bdb..000000000
--- a/src/Specific/montgomery64_2e416m2e208m1_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e416m2e208m1_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e416m2e208m1_7limbs/fesubDisplay.v b/src/Specific/montgomery64_2e416m2e208m1_7limbs/fesubDisplay.v
deleted file mode 100644
index 5ad930b75..000000000
--- a/src/Specific/montgomery64_2e416m2e208m1_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e416m2e208m1_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e416m2e208m1_7limbs/py_interpreter.sh b/src/Specific/montgomery64_2e416m2e208m1_7limbs/py_interpreter.sh
deleted file mode 100755
index 6495749c9..000000000
--- a/src/Specific/montgomery64_2e416m2e208m1_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**416 - 2**208 - 1' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e444m17_7limbs/CurveParameters.v b/src/Specific/montgomery64_2e444m17_7limbs/CurveParameters.v
deleted file mode 100644
index fa0acb741..000000000
--- a/src/Specific/montgomery64_2e444m17_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^444 - 17
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 64;
- bitwidth := 64;
- s := 2^444;
- c := [(1, 17)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e444m17_7limbs/Synthesis.v b/src/Specific/montgomery64_2e444m17_7limbs/Synthesis.v
deleted file mode 100644
index 0008e6c09..000000000
--- a/src/Specific/montgomery64_2e444m17_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e444m17_7limbs.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/montgomery64_2e444m17_7limbs/compiler.sh b/src/Specific/montgomery64_2e444m17_7limbs/compiler.sh
deleted file mode 100755
index 7122f61e4..000000000
--- a/src/Specific/montgomery64_2e444m17_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<444) - 17' "$@"
diff --git a/src/Specific/montgomery64_2e444m17_7limbs/compilerxx.sh b/src/Specific/montgomery64_2e444m17_7limbs/compilerxx.sh
deleted file mode 100755
index 6735e4140..000000000
--- a/src/Specific/montgomery64_2e444m17_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<444) - 17' "$@"
diff --git a/src/Specific/montgomery64_2e444m17_7limbs/feadd.c b/src/Specific/montgomery64_2e444m17_7limbs/feadd.c
deleted file mode 100644
index 653b42fdf..000000000
--- a/src/Specific/montgomery64_2e444m17_7limbs/feadd.c
+++ /dev/null
@@ -1,46 +0,0 @@
-static void feadd(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x5, x17, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x7, x19, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x9, x21, &x35);
- { uint64_t x38; uint8_t x39 = _addcarryx_u64(x36, x11, x23, &x38);
- { uint64_t x41; uint8_t x42 = _addcarryx_u64(x39, x13, x25, &x41);
- { uint64_t x44; uint8_t x45 = _addcarryx_u64(x42, x15, x27, &x44);
- { uint64_t x47; uint8_t x48 = _addcarryx_u64(x45, x14, x26, &x47);
- { uint64_t x50; uint8_t x51 = _subborrow_u64(0x0, x29, 0xffffffffffffffefL, &x50);
- { uint64_t x53; uint8_t x54 = _subborrow_u64(x51, x32, 0xffffffffffffffffL, &x53);
- { uint64_t x56; uint8_t x57 = _subborrow_u64(x54, x35, 0xffffffffffffffffL, &x56);
- { uint64_t x59; uint8_t x60 = _subborrow_u64(x57, x38, 0xffffffffffffffffL, &x59);
- { uint64_t x62; uint8_t x63 = _subborrow_u64(x60, x41, 0xffffffffffffffffL, &x62);
- { uint64_t x65; uint8_t x66 = _subborrow_u64(x63, x44, 0xffffffffffffffffL, &x65);
- { uint64_t x68; uint8_t x69 = _subborrow_u64(x66, x47, 0xfffffffffffffff, &x68);
- { uint64_t _; uint8_t x72 = _subborrow_u64(x69, x48, 0x0, &_);
- { uint64_t x73 = cmovznz64(x72, x68, x47);
- { uint64_t x74 = cmovznz64(x72, x65, x44);
- { uint64_t x75 = cmovznz64(x72, x62, x41);
- { uint64_t x76 = cmovznz64(x72, x59, x38);
- { uint64_t x77 = cmovznz64(x72, x56, x35);
- { uint64_t x78 = cmovznz64(x72, x53, x32);
- { uint64_t x79 = cmovznz64(x72, x50, x29);
- out[0] = x79;
- out[1] = x78;
- out[2] = x77;
- out[3] = x76;
- out[4] = x75;
- out[5] = x74;
- out[6] = x73;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e444m17_7limbs/feadd.v b/src/Specific/montgomery64_2e444m17_7limbs/feadd.v
deleted file mode 100644
index 39876bf6c..000000000
--- a/src/Specific/montgomery64_2e444m17_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e444m17_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e444m17_7limbs/feaddDisplay.log b/src/Specific/montgomery64_2e444m17_7limbs/feaddDisplay.log
deleted file mode 100644
index 2a33a4262..000000000
--- a/src/Specific/montgomery64_2e444m17_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x5, x17);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x7, x19);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x9, x21);
- uint64_t x38, uint8_t x39 = addcarryx_u64(x36, x11, x23);
- uint64_t x41, uint8_t x42 = addcarryx_u64(x39, x13, x25);
- uint64_t x44, uint8_t x45 = addcarryx_u64(x42, x15, x27);
- uint64_t x47, uint8_t x48 = addcarryx_u64(x45, x14, x26);
- uint64_t x50, uint8_t x51 = subborrow_u64(0x0, x29, 0xffffffffffffffefL);
- uint64_t x53, uint8_t x54 = subborrow_u64(x51, x32, 0xffffffffffffffffL);
- uint64_t x56, uint8_t x57 = subborrow_u64(x54, x35, 0xffffffffffffffffL);
- uint64_t x59, uint8_t x60 = subborrow_u64(x57, x38, 0xffffffffffffffffL);
- uint64_t x62, uint8_t x63 = subborrow_u64(x60, x41, 0xffffffffffffffffL);
- uint64_t x65, uint8_t x66 = subborrow_u64(x63, x44, 0xffffffffffffffffL);
- uint64_t x68, uint8_t x69 = subborrow_u64(x66, x47, 0xfffffffffffffff);
- uint64_t _, uint8_t x72 = subborrow_u64(x69, x48, 0x0);
- uint64_t x73 = cmovznz64(x72, x68, x47);
- uint64_t x74 = cmovznz64(x72, x65, x44);
- uint64_t x75 = cmovznz64(x72, x62, x41);
- uint64_t x76 = cmovznz64(x72, x59, x38);
- uint64_t x77 = cmovznz64(x72, x56, x35);
- uint64_t x78 = cmovznz64(x72, x53, x32);
- uint64_t x79 = cmovznz64(x72, x50, x29);
- return (x73, x74, x75, x76, x77, x78, x79))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e444m17_7limbs/feaddDisplay.v b/src/Specific/montgomery64_2e444m17_7limbs/feaddDisplay.v
deleted file mode 100644
index 390abd46a..000000000
--- a/src/Specific/montgomery64_2e444m17_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e444m17_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e444m17_7limbs/femul.v b/src/Specific/montgomery64_2e444m17_7limbs/femul.v
deleted file mode 100644
index 6b6c11247..000000000
--- a/src/Specific/montgomery64_2e444m17_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e444m17_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e444m17_7limbs/femulDisplay.v b/src/Specific/montgomery64_2e444m17_7limbs/femulDisplay.v
deleted file mode 100644
index 1f692775e..000000000
--- a/src/Specific/montgomery64_2e444m17_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e444m17_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e444m17_7limbs/fenz.c b/src/Specific/montgomery64_2e444m17_7limbs/fenz.c
deleted file mode 100644
index d09ab7ff5..000000000
--- a/src/Specific/montgomery64_2e444m17_7limbs/fenz.c
+++ /dev/null
@@ -1,17 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x13 = (x12 | x11);
- { uint64_t x14 = (x10 | x13);
- { uint64_t x15 = (x8 | x14);
- { uint64_t x16 = (x6 | x15);
- { uint64_t x17 = (x4 | x16);
- { uint64_t x18 = (x2 | x17);
- out[0] = x18;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e444m17_7limbs/fenz.v b/src/Specific/montgomery64_2e444m17_7limbs/fenz.v
deleted file mode 100644
index 89136c148..000000000
--- a/src/Specific/montgomery64_2e444m17_7limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e444m17_7limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e444m17_7limbs/fenzDisplay.log b/src/Specific/montgomery64_2e444m17_7limbs/fenzDisplay.log
deleted file mode 100644
index 28baa6eea..000000000
--- a/src/Specific/montgomery64_2e444m17_7limbs/fenzDisplay.log
+++ /dev/null
@@ -1,13 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x13 = (x12 | x11);
- uint64_t x14 = (x10 | x13);
- uint64_t x15 = (x8 | x14);
- uint64_t x16 = (x6 | x15);
- uint64_t x17 = (x4 | x16);
- uint64_t x18 = (x2 | x17);
- return x18)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e444m17_7limbs/fenzDisplay.v b/src/Specific/montgomery64_2e444m17_7limbs/fenzDisplay.v
deleted file mode 100644
index 6d27bf81b..000000000
--- a/src/Specific/montgomery64_2e444m17_7limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e444m17_7limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e444m17_7limbs/feopp.v b/src/Specific/montgomery64_2e444m17_7limbs/feopp.v
deleted file mode 100644
index dd2ff520b..000000000
--- a/src/Specific/montgomery64_2e444m17_7limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e444m17_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e444m17_7limbs/feoppDisplay.v b/src/Specific/montgomery64_2e444m17_7limbs/feoppDisplay.v
deleted file mode 100644
index 71ffb3d62..000000000
--- a/src/Specific/montgomery64_2e444m17_7limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e444m17_7limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e444m17_7limbs/fesquare.c b/src/Specific/montgomery64_2e444m17_7limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e444m17_7limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e444m17_7limbs/fesub.v b/src/Specific/montgomery64_2e444m17_7limbs/fesub.v
deleted file mode 100644
index beb07fcc3..000000000
--- a/src/Specific/montgomery64_2e444m17_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e444m17_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e444m17_7limbs/fesubDisplay.v b/src/Specific/montgomery64_2e444m17_7limbs/fesubDisplay.v
deleted file mode 100644
index 64bd5e597..000000000
--- a/src/Specific/montgomery64_2e444m17_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e444m17_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e444m17_7limbs/py_interpreter.sh b/src/Specific/montgomery64_2e444m17_7limbs/py_interpreter.sh
deleted file mode 100755
index 4112ef798..000000000
--- a/src/Specific/montgomery64_2e444m17_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**444 - 17' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e448m2e224m1_7limbs/CurveParameters.v b/src/Specific/montgomery64_2e448m2e224m1_7limbs/CurveParameters.v
deleted file mode 100644
index c61e96569..000000000
--- a/src/Specific/montgomery64_2e448m2e224m1_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^448 - 2^224 - 1
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 64;
- bitwidth := 64;
- s := 2^448;
- c := [(1, 1); (2^224, 1)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e448m2e224m1_7limbs/Synthesis.v b/src/Specific/montgomery64_2e448m2e224m1_7limbs/Synthesis.v
deleted file mode 100644
index 06522dffa..000000000
--- a/src/Specific/montgomery64_2e448m2e224m1_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e448m2e224m1_7limbs.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/montgomery64_2e448m2e224m1_7limbs/compiler.sh b/src/Specific/montgomery64_2e448m2e224m1_7limbs/compiler.sh
deleted file mode 100755
index 66a699f1a..000000000
--- a/src/Specific/montgomery64_2e448m2e224m1_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e448m2e224m1_7limbs/compilerxx.sh b/src/Specific/montgomery64_2e448m2e224m1_7limbs/compilerxx.sh
deleted file mode 100755
index 3c95ee00a..000000000
--- a/src/Specific/montgomery64_2e448m2e224m1_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e448m2e224m1_7limbs/feadd.c b/src/Specific/montgomery64_2e448m2e224m1_7limbs/feadd.c
deleted file mode 100644
index 07baa6ebd..000000000
--- a/src/Specific/montgomery64_2e448m2e224m1_7limbs/feadd.c
+++ /dev/null
@@ -1,46 +0,0 @@
-static void feadd(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- { uint64_t x29; uint8_t x30 = _addcarryx_u64(0x0, x5, x17, &x29);
- { uint64_t x32; uint8_t x33 = _addcarryx_u64(x30, x7, x19, &x32);
- { uint64_t x35; uint8_t x36 = _addcarryx_u64(x33, x9, x21, &x35);
- { uint64_t x38; uint8_t x39 = _addcarryx_u64(x36, x11, x23, &x38);
- { uint64_t x41; uint8_t x42 = _addcarryx_u64(x39, x13, x25, &x41);
- { uint64_t x44; uint8_t x45 = _addcarryx_u64(x42, x15, x27, &x44);
- { uint64_t x47; uint8_t x48 = _addcarryx_u64(x45, x14, x26, &x47);
- { uint64_t x50; uint8_t x51 = _subborrow_u64(0x0, x29, 0xffffffffffffffffL, &x50);
- { uint64_t x53; uint8_t x54 = _subborrow_u64(x51, x32, 0xffffffffffffffffL, &x53);
- { uint64_t x56; uint8_t x57 = _subborrow_u64(x54, x35, 0xffffffffffffffffL, &x56);
- { uint64_t x59; uint8_t x60 = _subborrow_u64(x57, x38, 0xfffffffeffffffffL, &x59);
- { uint64_t x62; uint8_t x63 = _subborrow_u64(x60, x41, 0xffffffffffffffffL, &x62);
- { uint64_t x65; uint8_t x66 = _subborrow_u64(x63, x44, 0xffffffffffffffffL, &x65);
- { uint64_t x68; uint8_t x69 = _subborrow_u64(x66, x47, 0xffffffffffffffffL, &x68);
- { uint64_t _; uint8_t x72 = _subborrow_u64(x69, x48, 0x0, &_);
- { uint64_t x73 = cmovznz64(x72, x68, x47);
- { uint64_t x74 = cmovznz64(x72, x65, x44);
- { uint64_t x75 = cmovznz64(x72, x62, x41);
- { uint64_t x76 = cmovznz64(x72, x59, x38);
- { uint64_t x77 = cmovznz64(x72, x56, x35);
- { uint64_t x78 = cmovznz64(x72, x53, x32);
- { uint64_t x79 = cmovznz64(x72, x50, x29);
- out[0] = x79;
- out[1] = x78;
- out[2] = x77;
- out[3] = x76;
- out[4] = x75;
- out[5] = x74;
- out[6] = x73;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e448m2e224m1_7limbs/feadd.v b/src/Specific/montgomery64_2e448m2e224m1_7limbs/feadd.v
deleted file mode 100644
index 3577dfcdd..000000000
--- a/src/Specific/montgomery64_2e448m2e224m1_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e448m2e224m1_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e448m2e224m1_7limbs/feaddDisplay.log b/src/Specific/montgomery64_2e448m2e224m1_7limbs/feaddDisplay.log
deleted file mode 100644
index 43bb533e8..000000000
--- a/src/Specific/montgomery64_2e448m2e224m1_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint64_t x29, uint8_t x30 = addcarryx_u64(0x0, x5, x17);
- uint64_t x32, uint8_t x33 = addcarryx_u64(x30, x7, x19);
- uint64_t x35, uint8_t x36 = addcarryx_u64(x33, x9, x21);
- uint64_t x38, uint8_t x39 = addcarryx_u64(x36, x11, x23);
- uint64_t x41, uint8_t x42 = addcarryx_u64(x39, x13, x25);
- uint64_t x44, uint8_t x45 = addcarryx_u64(x42, x15, x27);
- uint64_t x47, uint8_t x48 = addcarryx_u64(x45, x14, x26);
- uint64_t x50, uint8_t x51 = subborrow_u64(0x0, x29, 0xffffffffffffffffL);
- uint64_t x53, uint8_t x54 = subborrow_u64(x51, x32, 0xffffffffffffffffL);
- uint64_t x56, uint8_t x57 = subborrow_u64(x54, x35, 0xffffffffffffffffL);
- uint64_t x59, uint8_t x60 = subborrow_u64(x57, x38, 0xfffffffeffffffffL);
- uint64_t x62, uint8_t x63 = subborrow_u64(x60, x41, 0xffffffffffffffffL);
- uint64_t x65, uint8_t x66 = subborrow_u64(x63, x44, 0xffffffffffffffffL);
- uint64_t x68, uint8_t x69 = subborrow_u64(x66, x47, 0xffffffffffffffffL);
- uint64_t _, uint8_t x72 = subborrow_u64(x69, x48, 0x0);
- uint64_t x73 = cmovznz64(x72, x68, x47);
- uint64_t x74 = cmovznz64(x72, x65, x44);
- uint64_t x75 = cmovznz64(x72, x62, x41);
- uint64_t x76 = cmovznz64(x72, x59, x38);
- uint64_t x77 = cmovznz64(x72, x56, x35);
- uint64_t x78 = cmovznz64(x72, x53, x32);
- uint64_t x79 = cmovznz64(x72, x50, x29);
- return (x73, x74, x75, x76, x77, x78, x79))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e448m2e224m1_7limbs/feaddDisplay.v b/src/Specific/montgomery64_2e448m2e224m1_7limbs/feaddDisplay.v
deleted file mode 100644
index e0c6c3c62..000000000
--- a/src/Specific/montgomery64_2e448m2e224m1_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e448m2e224m1_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e448m2e224m1_7limbs/femul.v b/src/Specific/montgomery64_2e448m2e224m1_7limbs/femul.v
deleted file mode 100644
index c91845d8a..000000000
--- a/src/Specific/montgomery64_2e448m2e224m1_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e448m2e224m1_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e448m2e224m1_7limbs/femulDisplay.v b/src/Specific/montgomery64_2e448m2e224m1_7limbs/femulDisplay.v
deleted file mode 100644
index 94fc6a4e4..000000000
--- a/src/Specific/montgomery64_2e448m2e224m1_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e448m2e224m1_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e448m2e224m1_7limbs/fenz.c b/src/Specific/montgomery64_2e448m2e224m1_7limbs/fenz.c
deleted file mode 100644
index d09ab7ff5..000000000
--- a/src/Specific/montgomery64_2e448m2e224m1_7limbs/fenz.c
+++ /dev/null
@@ -1,17 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x13 = (x12 | x11);
- { uint64_t x14 = (x10 | x13);
- { uint64_t x15 = (x8 | x14);
- { uint64_t x16 = (x6 | x15);
- { uint64_t x17 = (x4 | x16);
- { uint64_t x18 = (x2 | x17);
- out[0] = x18;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e448m2e224m1_7limbs/fenz.v b/src/Specific/montgomery64_2e448m2e224m1_7limbs/fenz.v
deleted file mode 100644
index 149098167..000000000
--- a/src/Specific/montgomery64_2e448m2e224m1_7limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e448m2e224m1_7limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e448m2e224m1_7limbs/fenzDisplay.log b/src/Specific/montgomery64_2e448m2e224m1_7limbs/fenzDisplay.log
deleted file mode 100644
index 28baa6eea..000000000
--- a/src/Specific/montgomery64_2e448m2e224m1_7limbs/fenzDisplay.log
+++ /dev/null
@@ -1,13 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x13 = (x12 | x11);
- uint64_t x14 = (x10 | x13);
- uint64_t x15 = (x8 | x14);
- uint64_t x16 = (x6 | x15);
- uint64_t x17 = (x4 | x16);
- uint64_t x18 = (x2 | x17);
- return x18)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e448m2e224m1_7limbs/fenzDisplay.v b/src/Specific/montgomery64_2e448m2e224m1_7limbs/fenzDisplay.v
deleted file mode 100644
index 318a59cd5..000000000
--- a/src/Specific/montgomery64_2e448m2e224m1_7limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e448m2e224m1_7limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e448m2e224m1_7limbs/feopp.v b/src/Specific/montgomery64_2e448m2e224m1_7limbs/feopp.v
deleted file mode 100644
index bbb2ab5c8..000000000
--- a/src/Specific/montgomery64_2e448m2e224m1_7limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e448m2e224m1_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e448m2e224m1_7limbs/feoppDisplay.v b/src/Specific/montgomery64_2e448m2e224m1_7limbs/feoppDisplay.v
deleted file mode 100644
index 9a5da0ca7..000000000
--- a/src/Specific/montgomery64_2e448m2e224m1_7limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e448m2e224m1_7limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e448m2e224m1_7limbs/fesquare.c b/src/Specific/montgomery64_2e448m2e224m1_7limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e448m2e224m1_7limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e448m2e224m1_7limbs/fesub.v b/src/Specific/montgomery64_2e448m2e224m1_7limbs/fesub.v
deleted file mode 100644
index 8173e1801..000000000
--- a/src/Specific/montgomery64_2e448m2e224m1_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e448m2e224m1_7limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e448m2e224m1_7limbs/fesubDisplay.v b/src/Specific/montgomery64_2e448m2e224m1_7limbs/fesubDisplay.v
deleted file mode 100644
index b276ed2fb..000000000
--- a/src/Specific/montgomery64_2e448m2e224m1_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e448m2e224m1_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e448m2e224m1_7limbs/py_interpreter.sh b/src/Specific/montgomery64_2e448m2e224m1_7limbs/py_interpreter.sh
deleted file mode 100755
index 662ea51cd..000000000
--- a/src/Specific/montgomery64_2e448m2e224m1_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**448 - 2**224 - 1' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e450m2e225m1_8limbs/CurveParameters.v b/src/Specific/montgomery64_2e450m2e225m1_8limbs/CurveParameters.v
deleted file mode 100644
index 69aefbd94..000000000
--- a/src/Specific/montgomery64_2e450m2e225m1_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^450 - 2^225 - 1
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 64;
- bitwidth := 64;
- s := 2^450;
- c := [(1, 1); (2^225, 1)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e450m2e225m1_8limbs/Synthesis.v b/src/Specific/montgomery64_2e450m2e225m1_8limbs/Synthesis.v
deleted file mode 100644
index 943826b73..000000000
--- a/src/Specific/montgomery64_2e450m2e225m1_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e450m2e225m1_8limbs.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/montgomery64_2e450m2e225m1_8limbs/compiler.sh b/src/Specific/montgomery64_2e450m2e225m1_8limbs/compiler.sh
deleted file mode 100755
index f6a8e134a..000000000
--- a/src/Specific/montgomery64_2e450m2e225m1_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e450m2e225m1_8limbs/compilerxx.sh b/src/Specific/montgomery64_2e450m2e225m1_8limbs/compilerxx.sh
deleted file mode 100755
index 3761fa659..000000000
--- a/src/Specific/montgomery64_2e450m2e225m1_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e450m2e225m1_8limbs/feadd.c b/src/Specific/montgomery64_2e450m2e225m1_8limbs/feadd.c
deleted file mode 100644
index a7e273342..000000000
--- a/src/Specific/montgomery64_2e450m2e225m1_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint64_t x33; uint8_t x34 = _addcarryx_u64(0x0, x5, x19, &x33);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x34, x7, x21, &x36);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x37, x9, x23, &x39);
- { uint64_t x42; uint8_t x43 = _addcarryx_u64(x40, x11, x25, &x42);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(x43, x13, x27, &x45);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x46, x15, x29, &x48);
- { uint64_t x51; uint8_t x52 = _addcarryx_u64(x49, x17, x31, &x51);
- { uint64_t x54; uint8_t x55 = _addcarryx_u64(x52, x16, x30, &x54);
- { uint64_t x57; uint8_t x58 = _subborrow_u64(0x0, x33, 0xffffffffffffffffL, &x57);
- { uint64_t x60; uint8_t x61 = _subborrow_u64(x58, x36, 0xffffffffffffffffL, &x60);
- { uint64_t x63; uint8_t x64 = _subborrow_u64(x61, x39, 0xffffffffffffffffL, &x63);
- { uint64_t x66; uint8_t x67 = _subborrow_u64(x64, x42, 0xfffffffdffffffffL, &x66);
- { uint64_t x69; uint8_t x70 = _subborrow_u64(x67, x45, 0xffffffffffffffffL, &x69);
- { uint64_t x72; uint8_t x73 = _subborrow_u64(x70, x48, 0xffffffffffffffffL, &x72);
- { uint64_t x75; uint8_t x76 = _subborrow_u64(x73, x51, 0xffffffffffffffffL, &x75);
- { uint64_t x78; uint8_t x79 = _subborrow_u64(x76, x54, 0x3, &x78);
- { uint64_t _; uint8_t x82 = _subborrow_u64(x79, x55, 0x0, &_);
- { uint64_t x83 = cmovznz64(x82, x78, x54);
- { uint64_t x84 = cmovznz64(x82, x75, x51);
- { uint64_t x85 = cmovznz64(x82, x72, x48);
- { uint64_t x86 = cmovznz64(x82, x69, x45);
- { uint64_t x87 = cmovznz64(x82, x66, x42);
- { uint64_t x88 = cmovznz64(x82, x63, x39);
- { uint64_t x89 = cmovznz64(x82, x60, x36);
- { uint64_t x90 = cmovznz64(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e450m2e225m1_8limbs/feadd.v b/src/Specific/montgomery64_2e450m2e225m1_8limbs/feadd.v
deleted file mode 100644
index 7a3861820..000000000
--- a/src/Specific/montgomery64_2e450m2e225m1_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e450m2e225m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e450m2e225m1_8limbs/feaddDisplay.log b/src/Specific/montgomery64_2e450m2e225m1_8limbs/feaddDisplay.log
deleted file mode 100644
index ceb4ce79a..000000000
--- a/src/Specific/montgomery64_2e450m2e225m1_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x33, uint8_t x34 = addcarryx_u64(0x0, x5, x19);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x34, x7, x21);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x37, x9, x23);
- uint64_t x42, uint8_t x43 = addcarryx_u64(x40, x11, x25);
- uint64_t x45, uint8_t x46 = addcarryx_u64(x43, x13, x27);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x46, x15, x29);
- uint64_t x51, uint8_t x52 = addcarryx_u64(x49, x17, x31);
- uint64_t x54, uint8_t x55 = addcarryx_u64(x52, x16, x30);
- uint64_t x57, uint8_t x58 = subborrow_u64(0x0, x33, 0xffffffffffffffffL);
- uint64_t x60, uint8_t x61 = subborrow_u64(x58, x36, 0xffffffffffffffffL);
- uint64_t x63, uint8_t x64 = subborrow_u64(x61, x39, 0xffffffffffffffffL);
- uint64_t x66, uint8_t x67 = subborrow_u64(x64, x42, 0xfffffffdffffffffL);
- uint64_t x69, uint8_t x70 = subborrow_u64(x67, x45, 0xffffffffffffffffL);
- uint64_t x72, uint8_t x73 = subborrow_u64(x70, x48, 0xffffffffffffffffL);
- uint64_t x75, uint8_t x76 = subborrow_u64(x73, x51, 0xffffffffffffffffL);
- uint64_t x78, uint8_t x79 = subborrow_u64(x76, x54, 0x3);
- uint64_t _, uint8_t x82 = subborrow_u64(x79, x55, 0x0);
- uint64_t x83 = cmovznz64(x82, x78, x54);
- uint64_t x84 = cmovznz64(x82, x75, x51);
- uint64_t x85 = cmovznz64(x82, x72, x48);
- uint64_t x86 = cmovznz64(x82, x69, x45);
- uint64_t x87 = cmovznz64(x82, x66, x42);
- uint64_t x88 = cmovznz64(x82, x63, x39);
- uint64_t x89 = cmovznz64(x82, x60, x36);
- uint64_t x90 = cmovznz64(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e450m2e225m1_8limbs/feaddDisplay.v b/src/Specific/montgomery64_2e450m2e225m1_8limbs/feaddDisplay.v
deleted file mode 100644
index bc7aaa829..000000000
--- a/src/Specific/montgomery64_2e450m2e225m1_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e450m2e225m1_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e450m2e225m1_8limbs/femul.v b/src/Specific/montgomery64_2e450m2e225m1_8limbs/femul.v
deleted file mode 100644
index 304f7cf81..000000000
--- a/src/Specific/montgomery64_2e450m2e225m1_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e450m2e225m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e450m2e225m1_8limbs/femulDisplay.v b/src/Specific/montgomery64_2e450m2e225m1_8limbs/femulDisplay.v
deleted file mode 100644
index 043dd14d9..000000000
--- a/src/Specific/montgomery64_2e450m2e225m1_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e450m2e225m1_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e450m2e225m1_8limbs/fenz.c b/src/Specific/montgomery64_2e450m2e225m1_8limbs/fenz.c
deleted file mode 100644
index a07b0df9c..000000000
--- a/src/Specific/montgomery64_2e450m2e225m1_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x15 = (x14 | x13);
- { uint64_t x16 = (x12 | x15);
- { uint64_t x17 = (x10 | x16);
- { uint64_t x18 = (x8 | x17);
- { uint64_t x19 = (x6 | x18);
- { uint64_t x20 = (x4 | x19);
- { uint64_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e450m2e225m1_8limbs/fenz.v b/src/Specific/montgomery64_2e450m2e225m1_8limbs/fenz.v
deleted file mode 100644
index 646d02f95..000000000
--- a/src/Specific/montgomery64_2e450m2e225m1_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e450m2e225m1_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e450m2e225m1_8limbs/fenzDisplay.log b/src/Specific/montgomery64_2e450m2e225m1_8limbs/fenzDisplay.log
deleted file mode 100644
index a05fc22ab..000000000
--- a/src/Specific/montgomery64_2e450m2e225m1_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (x14 | x13);
- uint64_t x16 = (x12 | x15);
- uint64_t x17 = (x10 | x16);
- uint64_t x18 = (x8 | x17);
- uint64_t x19 = (x6 | x18);
- uint64_t x20 = (x4 | x19);
- uint64_t x21 = (x2 | x20);
- return x21)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e450m2e225m1_8limbs/fenzDisplay.v b/src/Specific/montgomery64_2e450m2e225m1_8limbs/fenzDisplay.v
deleted file mode 100644
index ab32759ee..000000000
--- a/src/Specific/montgomery64_2e450m2e225m1_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e450m2e225m1_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e450m2e225m1_8limbs/feopp.v b/src/Specific/montgomery64_2e450m2e225m1_8limbs/feopp.v
deleted file mode 100644
index 7d76db910..000000000
--- a/src/Specific/montgomery64_2e450m2e225m1_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e450m2e225m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e450m2e225m1_8limbs/feoppDisplay.v b/src/Specific/montgomery64_2e450m2e225m1_8limbs/feoppDisplay.v
deleted file mode 100644
index a34793732..000000000
--- a/src/Specific/montgomery64_2e450m2e225m1_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e450m2e225m1_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e450m2e225m1_8limbs/fesquare.c b/src/Specific/montgomery64_2e450m2e225m1_8limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e450m2e225m1_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e450m2e225m1_8limbs/fesub.v b/src/Specific/montgomery64_2e450m2e225m1_8limbs/fesub.v
deleted file mode 100644
index b55a49f0d..000000000
--- a/src/Specific/montgomery64_2e450m2e225m1_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e450m2e225m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e450m2e225m1_8limbs/fesubDisplay.v b/src/Specific/montgomery64_2e450m2e225m1_8limbs/fesubDisplay.v
deleted file mode 100644
index 162650007..000000000
--- a/src/Specific/montgomery64_2e450m2e225m1_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e450m2e225m1_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e450m2e225m1_8limbs/py_interpreter.sh b/src/Specific/montgomery64_2e450m2e225m1_8limbs/py_interpreter.sh
deleted file mode 100755
index f81231205..000000000
--- a/src/Specific/montgomery64_2e450m2e225m1_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**450 - 2**225 - 1' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e452m3_8limbs/CurveParameters.v b/src/Specific/montgomery64_2e452m3_8limbs/CurveParameters.v
deleted file mode 100644
index 9dd11515b..000000000
--- a/src/Specific/montgomery64_2e452m3_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^452 - 3
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 64;
- bitwidth := 64;
- s := 2^452;
- c := [(1, 3)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e452m3_8limbs/Synthesis.v b/src/Specific/montgomery64_2e452m3_8limbs/Synthesis.v
deleted file mode 100644
index 39a15b999..000000000
--- a/src/Specific/montgomery64_2e452m3_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e452m3_8limbs.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/montgomery64_2e452m3_8limbs/compiler.sh b/src/Specific/montgomery64_2e452m3_8limbs/compiler.sh
deleted file mode 100755
index f481e7c9d..000000000
--- a/src/Specific/montgomery64_2e452m3_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<452) - 3' "$@"
diff --git a/src/Specific/montgomery64_2e452m3_8limbs/compilerxx.sh b/src/Specific/montgomery64_2e452m3_8limbs/compilerxx.sh
deleted file mode 100755
index 6700d4a6c..000000000
--- a/src/Specific/montgomery64_2e452m3_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<452) - 3' "$@"
diff --git a/src/Specific/montgomery64_2e452m3_8limbs/feadd.c b/src/Specific/montgomery64_2e452m3_8limbs/feadd.c
deleted file mode 100644
index 752d18f97..000000000
--- a/src/Specific/montgomery64_2e452m3_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint64_t x33; uint8_t x34 = _addcarryx_u64(0x0, x5, x19, &x33);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x34, x7, x21, &x36);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x37, x9, x23, &x39);
- { uint64_t x42; uint8_t x43 = _addcarryx_u64(x40, x11, x25, &x42);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(x43, x13, x27, &x45);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x46, x15, x29, &x48);
- { uint64_t x51; uint8_t x52 = _addcarryx_u64(x49, x17, x31, &x51);
- { uint64_t x54; uint8_t x55 = _addcarryx_u64(x52, x16, x30, &x54);
- { uint64_t x57; uint8_t x58 = _subborrow_u64(0x0, x33, 0xfffffffffffffffdL, &x57);
- { uint64_t x60; uint8_t x61 = _subborrow_u64(x58, x36, 0xffffffffffffffffL, &x60);
- { uint64_t x63; uint8_t x64 = _subborrow_u64(x61, x39, 0xffffffffffffffffL, &x63);
- { uint64_t x66; uint8_t x67 = _subborrow_u64(x64, x42, 0xffffffffffffffffL, &x66);
- { uint64_t x69; uint8_t x70 = _subborrow_u64(x67, x45, 0xffffffffffffffffL, &x69);
- { uint64_t x72; uint8_t x73 = _subborrow_u64(x70, x48, 0xffffffffffffffffL, &x72);
- { uint64_t x75; uint8_t x76 = _subborrow_u64(x73, x51, 0xffffffffffffffffL, &x75);
- { uint64_t x78; uint8_t x79 = _subborrow_u64(x76, x54, 0xf, &x78);
- { uint64_t _; uint8_t x82 = _subborrow_u64(x79, x55, 0x0, &_);
- { uint64_t x83 = cmovznz64(x82, x78, x54);
- { uint64_t x84 = cmovznz64(x82, x75, x51);
- { uint64_t x85 = cmovznz64(x82, x72, x48);
- { uint64_t x86 = cmovznz64(x82, x69, x45);
- { uint64_t x87 = cmovznz64(x82, x66, x42);
- { uint64_t x88 = cmovznz64(x82, x63, x39);
- { uint64_t x89 = cmovznz64(x82, x60, x36);
- { uint64_t x90 = cmovznz64(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e452m3_8limbs/feadd.v b/src/Specific/montgomery64_2e452m3_8limbs/feadd.v
deleted file mode 100644
index e895f4210..000000000
--- a/src/Specific/montgomery64_2e452m3_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e452m3_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e452m3_8limbs/feaddDisplay.log b/src/Specific/montgomery64_2e452m3_8limbs/feaddDisplay.log
deleted file mode 100644
index 9bbb41025..000000000
--- a/src/Specific/montgomery64_2e452m3_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x33, uint8_t x34 = addcarryx_u64(0x0, x5, x19);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x34, x7, x21);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x37, x9, x23);
- uint64_t x42, uint8_t x43 = addcarryx_u64(x40, x11, x25);
- uint64_t x45, uint8_t x46 = addcarryx_u64(x43, x13, x27);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x46, x15, x29);
- uint64_t x51, uint8_t x52 = addcarryx_u64(x49, x17, x31);
- uint64_t x54, uint8_t x55 = addcarryx_u64(x52, x16, x30);
- uint64_t x57, uint8_t x58 = subborrow_u64(0x0, x33, 0xfffffffffffffffdL);
- uint64_t x60, uint8_t x61 = subborrow_u64(x58, x36, 0xffffffffffffffffL);
- uint64_t x63, uint8_t x64 = subborrow_u64(x61, x39, 0xffffffffffffffffL);
- uint64_t x66, uint8_t x67 = subborrow_u64(x64, x42, 0xffffffffffffffffL);
- uint64_t x69, uint8_t x70 = subborrow_u64(x67, x45, 0xffffffffffffffffL);
- uint64_t x72, uint8_t x73 = subborrow_u64(x70, x48, 0xffffffffffffffffL);
- uint64_t x75, uint8_t x76 = subborrow_u64(x73, x51, 0xffffffffffffffffL);
- uint64_t x78, uint8_t x79 = subborrow_u64(x76, x54, 0xf);
- uint64_t _, uint8_t x82 = subborrow_u64(x79, x55, 0x0);
- uint64_t x83 = cmovznz64(x82, x78, x54);
- uint64_t x84 = cmovznz64(x82, x75, x51);
- uint64_t x85 = cmovznz64(x82, x72, x48);
- uint64_t x86 = cmovznz64(x82, x69, x45);
- uint64_t x87 = cmovznz64(x82, x66, x42);
- uint64_t x88 = cmovznz64(x82, x63, x39);
- uint64_t x89 = cmovznz64(x82, x60, x36);
- uint64_t x90 = cmovznz64(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e452m3_8limbs/feaddDisplay.v b/src/Specific/montgomery64_2e452m3_8limbs/feaddDisplay.v
deleted file mode 100644
index b4526f4da..000000000
--- a/src/Specific/montgomery64_2e452m3_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e452m3_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e452m3_8limbs/femul.v b/src/Specific/montgomery64_2e452m3_8limbs/femul.v
deleted file mode 100644
index f949a4d6f..000000000
--- a/src/Specific/montgomery64_2e452m3_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e452m3_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e452m3_8limbs/femulDisplay.v b/src/Specific/montgomery64_2e452m3_8limbs/femulDisplay.v
deleted file mode 100644
index 4ea059f34..000000000
--- a/src/Specific/montgomery64_2e452m3_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e452m3_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e452m3_8limbs/fenz.c b/src/Specific/montgomery64_2e452m3_8limbs/fenz.c
deleted file mode 100644
index a07b0df9c..000000000
--- a/src/Specific/montgomery64_2e452m3_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x15 = (x14 | x13);
- { uint64_t x16 = (x12 | x15);
- { uint64_t x17 = (x10 | x16);
- { uint64_t x18 = (x8 | x17);
- { uint64_t x19 = (x6 | x18);
- { uint64_t x20 = (x4 | x19);
- { uint64_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e452m3_8limbs/fenz.v b/src/Specific/montgomery64_2e452m3_8limbs/fenz.v
deleted file mode 100644
index c8faebd85..000000000
--- a/src/Specific/montgomery64_2e452m3_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e452m3_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e452m3_8limbs/fenzDisplay.log b/src/Specific/montgomery64_2e452m3_8limbs/fenzDisplay.log
deleted file mode 100644
index a05fc22ab..000000000
--- a/src/Specific/montgomery64_2e452m3_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (x14 | x13);
- uint64_t x16 = (x12 | x15);
- uint64_t x17 = (x10 | x16);
- uint64_t x18 = (x8 | x17);
- uint64_t x19 = (x6 | x18);
- uint64_t x20 = (x4 | x19);
- uint64_t x21 = (x2 | x20);
- return x21)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e452m3_8limbs/fenzDisplay.v b/src/Specific/montgomery64_2e452m3_8limbs/fenzDisplay.v
deleted file mode 100644
index 97cf4cc7b..000000000
--- a/src/Specific/montgomery64_2e452m3_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e452m3_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e452m3_8limbs/feopp.v b/src/Specific/montgomery64_2e452m3_8limbs/feopp.v
deleted file mode 100644
index a95c92427..000000000
--- a/src/Specific/montgomery64_2e452m3_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e452m3_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e452m3_8limbs/feoppDisplay.v b/src/Specific/montgomery64_2e452m3_8limbs/feoppDisplay.v
deleted file mode 100644
index e770cb0df..000000000
--- a/src/Specific/montgomery64_2e452m3_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e452m3_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e452m3_8limbs/fesquare.c b/src/Specific/montgomery64_2e452m3_8limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e452m3_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e452m3_8limbs/fesub.v b/src/Specific/montgomery64_2e452m3_8limbs/fesub.v
deleted file mode 100644
index 6a8dad388..000000000
--- a/src/Specific/montgomery64_2e452m3_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e452m3_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e452m3_8limbs/fesubDisplay.v b/src/Specific/montgomery64_2e452m3_8limbs/fesubDisplay.v
deleted file mode 100644
index 9847ed911..000000000
--- a/src/Specific/montgomery64_2e452m3_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e452m3_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e452m3_8limbs/py_interpreter.sh b/src/Specific/montgomery64_2e452m3_8limbs/py_interpreter.sh
deleted file mode 100755
index ce536e70c..000000000
--- a/src/Specific/montgomery64_2e452m3_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**452 - 3' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e468m17_8limbs/CurveParameters.v b/src/Specific/montgomery64_2e468m17_8limbs/CurveParameters.v
deleted file mode 100644
index 46f3af838..000000000
--- a/src/Specific/montgomery64_2e468m17_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^468 - 17
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 64;
- bitwidth := 64;
- s := 2^468;
- c := [(1, 17)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e468m17_8limbs/Synthesis.v b/src/Specific/montgomery64_2e468m17_8limbs/Synthesis.v
deleted file mode 100644
index 3f800483c..000000000
--- a/src/Specific/montgomery64_2e468m17_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e468m17_8limbs.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/montgomery64_2e468m17_8limbs/compiler.sh b/src/Specific/montgomery64_2e468m17_8limbs/compiler.sh
deleted file mode 100755
index bfa6184d9..000000000
--- a/src/Specific/montgomery64_2e468m17_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='59' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<468) - 17' "$@"
diff --git a/src/Specific/montgomery64_2e468m17_8limbs/compilerxx.sh b/src/Specific/montgomery64_2e468m17_8limbs/compilerxx.sh
deleted file mode 100755
index 724a6bed1..000000000
--- a/src/Specific/montgomery64_2e468m17_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='59' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<468) - 17' "$@"
diff --git a/src/Specific/montgomery64_2e468m17_8limbs/feadd.c b/src/Specific/montgomery64_2e468m17_8limbs/feadd.c
deleted file mode 100644
index ae087338f..000000000
--- a/src/Specific/montgomery64_2e468m17_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint64_t x33; uint8_t x34 = _addcarryx_u64(0x0, x5, x19, &x33);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x34, x7, x21, &x36);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x37, x9, x23, &x39);
- { uint64_t x42; uint8_t x43 = _addcarryx_u64(x40, x11, x25, &x42);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(x43, x13, x27, &x45);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x46, x15, x29, &x48);
- { uint64_t x51; uint8_t x52 = _addcarryx_u64(x49, x17, x31, &x51);
- { uint64_t x54; uint8_t x55 = _addcarryx_u64(x52, x16, x30, &x54);
- { uint64_t x57; uint8_t x58 = _subborrow_u64(0x0, x33, 0xffffffffffffffefL, &x57);
- { uint64_t x60; uint8_t x61 = _subborrow_u64(x58, x36, 0xffffffffffffffffL, &x60);
- { uint64_t x63; uint8_t x64 = _subborrow_u64(x61, x39, 0xffffffffffffffffL, &x63);
- { uint64_t x66; uint8_t x67 = _subborrow_u64(x64, x42, 0xffffffffffffffffL, &x66);
- { uint64_t x69; uint8_t x70 = _subborrow_u64(x67, x45, 0xffffffffffffffffL, &x69);
- { uint64_t x72; uint8_t x73 = _subborrow_u64(x70, x48, 0xffffffffffffffffL, &x72);
- { uint64_t x75; uint8_t x76 = _subborrow_u64(x73, x51, 0xffffffffffffffffL, &x75);
- { uint64_t x78; uint8_t x79 = _subborrow_u64(x76, x54, 0xfffff, &x78);
- { uint64_t _; uint8_t x82 = _subborrow_u64(x79, x55, 0x0, &_);
- { uint64_t x83 = cmovznz64(x82, x78, x54);
- { uint64_t x84 = cmovznz64(x82, x75, x51);
- { uint64_t x85 = cmovznz64(x82, x72, x48);
- { uint64_t x86 = cmovznz64(x82, x69, x45);
- { uint64_t x87 = cmovznz64(x82, x66, x42);
- { uint64_t x88 = cmovznz64(x82, x63, x39);
- { uint64_t x89 = cmovznz64(x82, x60, x36);
- { uint64_t x90 = cmovznz64(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e468m17_8limbs/feadd.v b/src/Specific/montgomery64_2e468m17_8limbs/feadd.v
deleted file mode 100644
index feb27b864..000000000
--- a/src/Specific/montgomery64_2e468m17_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e468m17_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e468m17_8limbs/feaddDisplay.log b/src/Specific/montgomery64_2e468m17_8limbs/feaddDisplay.log
deleted file mode 100644
index 73a489014..000000000
--- a/src/Specific/montgomery64_2e468m17_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x33, uint8_t x34 = addcarryx_u64(0x0, x5, x19);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x34, x7, x21);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x37, x9, x23);
- uint64_t x42, uint8_t x43 = addcarryx_u64(x40, x11, x25);
- uint64_t x45, uint8_t x46 = addcarryx_u64(x43, x13, x27);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x46, x15, x29);
- uint64_t x51, uint8_t x52 = addcarryx_u64(x49, x17, x31);
- uint64_t x54, uint8_t x55 = addcarryx_u64(x52, x16, x30);
- uint64_t x57, uint8_t x58 = subborrow_u64(0x0, x33, 0xffffffffffffffefL);
- uint64_t x60, uint8_t x61 = subborrow_u64(x58, x36, 0xffffffffffffffffL);
- uint64_t x63, uint8_t x64 = subborrow_u64(x61, x39, 0xffffffffffffffffL);
- uint64_t x66, uint8_t x67 = subborrow_u64(x64, x42, 0xffffffffffffffffL);
- uint64_t x69, uint8_t x70 = subborrow_u64(x67, x45, 0xffffffffffffffffL);
- uint64_t x72, uint8_t x73 = subborrow_u64(x70, x48, 0xffffffffffffffffL);
- uint64_t x75, uint8_t x76 = subborrow_u64(x73, x51, 0xffffffffffffffffL);
- uint64_t x78, uint8_t x79 = subborrow_u64(x76, x54, 0xfffff);
- uint64_t _, uint8_t x82 = subborrow_u64(x79, x55, 0x0);
- uint64_t x83 = cmovznz64(x82, x78, x54);
- uint64_t x84 = cmovznz64(x82, x75, x51);
- uint64_t x85 = cmovznz64(x82, x72, x48);
- uint64_t x86 = cmovznz64(x82, x69, x45);
- uint64_t x87 = cmovznz64(x82, x66, x42);
- uint64_t x88 = cmovznz64(x82, x63, x39);
- uint64_t x89 = cmovznz64(x82, x60, x36);
- uint64_t x90 = cmovznz64(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e468m17_8limbs/feaddDisplay.v b/src/Specific/montgomery64_2e468m17_8limbs/feaddDisplay.v
deleted file mode 100644
index 2c9eb3a16..000000000
--- a/src/Specific/montgomery64_2e468m17_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e468m17_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e468m17_8limbs/femul.v b/src/Specific/montgomery64_2e468m17_8limbs/femul.v
deleted file mode 100644
index f0f50ce8a..000000000
--- a/src/Specific/montgomery64_2e468m17_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e468m17_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e468m17_8limbs/femulDisplay.v b/src/Specific/montgomery64_2e468m17_8limbs/femulDisplay.v
deleted file mode 100644
index 1175afdb4..000000000
--- a/src/Specific/montgomery64_2e468m17_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e468m17_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e468m17_8limbs/fenz.c b/src/Specific/montgomery64_2e468m17_8limbs/fenz.c
deleted file mode 100644
index a07b0df9c..000000000
--- a/src/Specific/montgomery64_2e468m17_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x15 = (x14 | x13);
- { uint64_t x16 = (x12 | x15);
- { uint64_t x17 = (x10 | x16);
- { uint64_t x18 = (x8 | x17);
- { uint64_t x19 = (x6 | x18);
- { uint64_t x20 = (x4 | x19);
- { uint64_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e468m17_8limbs/fenz.v b/src/Specific/montgomery64_2e468m17_8limbs/fenz.v
deleted file mode 100644
index 5f082f3c5..000000000
--- a/src/Specific/montgomery64_2e468m17_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e468m17_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e468m17_8limbs/fenzDisplay.log b/src/Specific/montgomery64_2e468m17_8limbs/fenzDisplay.log
deleted file mode 100644
index a05fc22ab..000000000
--- a/src/Specific/montgomery64_2e468m17_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (x14 | x13);
- uint64_t x16 = (x12 | x15);
- uint64_t x17 = (x10 | x16);
- uint64_t x18 = (x8 | x17);
- uint64_t x19 = (x6 | x18);
- uint64_t x20 = (x4 | x19);
- uint64_t x21 = (x2 | x20);
- return x21)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e468m17_8limbs/fenzDisplay.v b/src/Specific/montgomery64_2e468m17_8limbs/fenzDisplay.v
deleted file mode 100644
index df5c16409..000000000
--- a/src/Specific/montgomery64_2e468m17_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e468m17_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e468m17_8limbs/feopp.v b/src/Specific/montgomery64_2e468m17_8limbs/feopp.v
deleted file mode 100644
index 78ed56f0c..000000000
--- a/src/Specific/montgomery64_2e468m17_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e468m17_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e468m17_8limbs/feoppDisplay.v b/src/Specific/montgomery64_2e468m17_8limbs/feoppDisplay.v
deleted file mode 100644
index 925f40f21..000000000
--- a/src/Specific/montgomery64_2e468m17_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e468m17_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e468m17_8limbs/fesquare.c b/src/Specific/montgomery64_2e468m17_8limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e468m17_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e468m17_8limbs/fesub.v b/src/Specific/montgomery64_2e468m17_8limbs/fesub.v
deleted file mode 100644
index b68ecc7e3..000000000
--- a/src/Specific/montgomery64_2e468m17_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e468m17_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e468m17_8limbs/fesubDisplay.v b/src/Specific/montgomery64_2e468m17_8limbs/fesubDisplay.v
deleted file mode 100644
index 317ecc042..000000000
--- a/src/Specific/montgomery64_2e468m17_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e468m17_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e468m17_8limbs/py_interpreter.sh b/src/Specific/montgomery64_2e468m17_8limbs/py_interpreter.sh
deleted file mode 100755
index e7d4321ad..000000000
--- a/src/Specific/montgomery64_2e468m17_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**468 - 17' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e480m2e240m1_8limbs/CurveParameters.v b/src/Specific/montgomery64_2e480m2e240m1_8limbs/CurveParameters.v
deleted file mode 100644
index 84f491bef..000000000
--- a/src/Specific/montgomery64_2e480m2e240m1_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^480 - 2^240 - 1
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 64;
- bitwidth := 64;
- s := 2^480;
- c := [(1, 1); (2^240, 1)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e480m2e240m1_8limbs/Synthesis.v b/src/Specific/montgomery64_2e480m2e240m1_8limbs/Synthesis.v
deleted file mode 100644
index 8fb9a90c9..000000000
--- a/src/Specific/montgomery64_2e480m2e240m1_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e480m2e240m1_8limbs.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/montgomery64_2e480m2e240m1_8limbs/compiler.sh b/src/Specific/montgomery64_2e480m2e240m1_8limbs/compiler.sh
deleted file mode 100755
index fe72154c7..000000000
--- a/src/Specific/montgomery64_2e480m2e240m1_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='60' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e480m2e240m1_8limbs/compilerxx.sh b/src/Specific/montgomery64_2e480m2e240m1_8limbs/compilerxx.sh
deleted file mode 100755
index 003705a32..000000000
--- a/src/Specific/montgomery64_2e480m2e240m1_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='60' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e480m2e240m1_8limbs/feadd.c b/src/Specific/montgomery64_2e480m2e240m1_8limbs/feadd.c
deleted file mode 100644
index 17d80401d..000000000
--- a/src/Specific/montgomery64_2e480m2e240m1_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint64_t x33; uint8_t x34 = _addcarryx_u64(0x0, x5, x19, &x33);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x34, x7, x21, &x36);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x37, x9, x23, &x39);
- { uint64_t x42; uint8_t x43 = _addcarryx_u64(x40, x11, x25, &x42);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(x43, x13, x27, &x45);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x46, x15, x29, &x48);
- { uint64_t x51; uint8_t x52 = _addcarryx_u64(x49, x17, x31, &x51);
- { uint64_t x54; uint8_t x55 = _addcarryx_u64(x52, x16, x30, &x54);
- { uint64_t x57; uint8_t x58 = _subborrow_u64(0x0, x33, 0xffffffffffffffffL, &x57);
- { uint64_t x60; uint8_t x61 = _subborrow_u64(x58, x36, 0xffffffffffffffffL, &x60);
- { uint64_t x63; uint8_t x64 = _subborrow_u64(x61, x39, 0xffffffffffffffffL, &x63);
- { uint64_t x66; uint8_t x67 = _subborrow_u64(x64, x42, 0xfffeffffffffffffL, &x66);
- { uint64_t x69; uint8_t x70 = _subborrow_u64(x67, x45, 0xffffffffffffffffL, &x69);
- { uint64_t x72; uint8_t x73 = _subborrow_u64(x70, x48, 0xffffffffffffffffL, &x72);
- { uint64_t x75; uint8_t x76 = _subborrow_u64(x73, x51, 0xffffffffffffffffL, &x75);
- { uint64_t x78; uint8_t x79 = _subborrow_u64(x76, x54, 0xffffffff, &x78);
- { uint64_t _; uint8_t x82 = _subborrow_u64(x79, x55, 0x0, &_);
- { uint64_t x83 = cmovznz64(x82, x78, x54);
- { uint64_t x84 = cmovznz64(x82, x75, x51);
- { uint64_t x85 = cmovznz64(x82, x72, x48);
- { uint64_t x86 = cmovznz64(x82, x69, x45);
- { uint64_t x87 = cmovznz64(x82, x66, x42);
- { uint64_t x88 = cmovznz64(x82, x63, x39);
- { uint64_t x89 = cmovznz64(x82, x60, x36);
- { uint64_t x90 = cmovznz64(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e480m2e240m1_8limbs/feadd.v b/src/Specific/montgomery64_2e480m2e240m1_8limbs/feadd.v
deleted file mode 100644
index fe8a2c33b..000000000
--- a/src/Specific/montgomery64_2e480m2e240m1_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e480m2e240m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e480m2e240m1_8limbs/feaddDisplay.log b/src/Specific/montgomery64_2e480m2e240m1_8limbs/feaddDisplay.log
deleted file mode 100644
index 6a0ac8802..000000000
--- a/src/Specific/montgomery64_2e480m2e240m1_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x33, uint8_t x34 = addcarryx_u64(0x0, x5, x19);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x34, x7, x21);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x37, x9, x23);
- uint64_t x42, uint8_t x43 = addcarryx_u64(x40, x11, x25);
- uint64_t x45, uint8_t x46 = addcarryx_u64(x43, x13, x27);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x46, x15, x29);
- uint64_t x51, uint8_t x52 = addcarryx_u64(x49, x17, x31);
- uint64_t x54, uint8_t x55 = addcarryx_u64(x52, x16, x30);
- uint64_t x57, uint8_t x58 = subborrow_u64(0x0, x33, 0xffffffffffffffffL);
- uint64_t x60, uint8_t x61 = subborrow_u64(x58, x36, 0xffffffffffffffffL);
- uint64_t x63, uint8_t x64 = subborrow_u64(x61, x39, 0xffffffffffffffffL);
- uint64_t x66, uint8_t x67 = subborrow_u64(x64, x42, 0xfffeffffffffffffL);
- uint64_t x69, uint8_t x70 = subborrow_u64(x67, x45, 0xffffffffffffffffL);
- uint64_t x72, uint8_t x73 = subborrow_u64(x70, x48, 0xffffffffffffffffL);
- uint64_t x75, uint8_t x76 = subborrow_u64(x73, x51, 0xffffffffffffffffL);
- uint64_t x78, uint8_t x79 = subborrow_u64(x76, x54, 0xffffffff);
- uint64_t _, uint8_t x82 = subborrow_u64(x79, x55, 0x0);
- uint64_t x83 = cmovznz64(x82, x78, x54);
- uint64_t x84 = cmovznz64(x82, x75, x51);
- uint64_t x85 = cmovznz64(x82, x72, x48);
- uint64_t x86 = cmovznz64(x82, x69, x45);
- uint64_t x87 = cmovznz64(x82, x66, x42);
- uint64_t x88 = cmovznz64(x82, x63, x39);
- uint64_t x89 = cmovznz64(x82, x60, x36);
- uint64_t x90 = cmovznz64(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e480m2e240m1_8limbs/feaddDisplay.v b/src/Specific/montgomery64_2e480m2e240m1_8limbs/feaddDisplay.v
deleted file mode 100644
index 6fa792fe8..000000000
--- a/src/Specific/montgomery64_2e480m2e240m1_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e480m2e240m1_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e480m2e240m1_8limbs/femul.v b/src/Specific/montgomery64_2e480m2e240m1_8limbs/femul.v
deleted file mode 100644
index c84c2735e..000000000
--- a/src/Specific/montgomery64_2e480m2e240m1_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e480m2e240m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e480m2e240m1_8limbs/femulDisplay.v b/src/Specific/montgomery64_2e480m2e240m1_8limbs/femulDisplay.v
deleted file mode 100644
index e6613da4f..000000000
--- a/src/Specific/montgomery64_2e480m2e240m1_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e480m2e240m1_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e480m2e240m1_8limbs/fenz.c b/src/Specific/montgomery64_2e480m2e240m1_8limbs/fenz.c
deleted file mode 100644
index a07b0df9c..000000000
--- a/src/Specific/montgomery64_2e480m2e240m1_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x15 = (x14 | x13);
- { uint64_t x16 = (x12 | x15);
- { uint64_t x17 = (x10 | x16);
- { uint64_t x18 = (x8 | x17);
- { uint64_t x19 = (x6 | x18);
- { uint64_t x20 = (x4 | x19);
- { uint64_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e480m2e240m1_8limbs/fenz.v b/src/Specific/montgomery64_2e480m2e240m1_8limbs/fenz.v
deleted file mode 100644
index ae56d3978..000000000
--- a/src/Specific/montgomery64_2e480m2e240m1_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e480m2e240m1_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e480m2e240m1_8limbs/fenzDisplay.log b/src/Specific/montgomery64_2e480m2e240m1_8limbs/fenzDisplay.log
deleted file mode 100644
index a05fc22ab..000000000
--- a/src/Specific/montgomery64_2e480m2e240m1_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (x14 | x13);
- uint64_t x16 = (x12 | x15);
- uint64_t x17 = (x10 | x16);
- uint64_t x18 = (x8 | x17);
- uint64_t x19 = (x6 | x18);
- uint64_t x20 = (x4 | x19);
- uint64_t x21 = (x2 | x20);
- return x21)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e480m2e240m1_8limbs/fenzDisplay.v b/src/Specific/montgomery64_2e480m2e240m1_8limbs/fenzDisplay.v
deleted file mode 100644
index a27ef5282..000000000
--- a/src/Specific/montgomery64_2e480m2e240m1_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e480m2e240m1_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e480m2e240m1_8limbs/feopp.v b/src/Specific/montgomery64_2e480m2e240m1_8limbs/feopp.v
deleted file mode 100644
index 4394aff4a..000000000
--- a/src/Specific/montgomery64_2e480m2e240m1_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e480m2e240m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e480m2e240m1_8limbs/feoppDisplay.v b/src/Specific/montgomery64_2e480m2e240m1_8limbs/feoppDisplay.v
deleted file mode 100644
index 2aeb470cf..000000000
--- a/src/Specific/montgomery64_2e480m2e240m1_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e480m2e240m1_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e480m2e240m1_8limbs/fesquare.c b/src/Specific/montgomery64_2e480m2e240m1_8limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e480m2e240m1_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e480m2e240m1_8limbs/fesub.v b/src/Specific/montgomery64_2e480m2e240m1_8limbs/fesub.v
deleted file mode 100644
index 69f1d6de2..000000000
--- a/src/Specific/montgomery64_2e480m2e240m1_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e480m2e240m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e480m2e240m1_8limbs/fesubDisplay.v b/src/Specific/montgomery64_2e480m2e240m1_8limbs/fesubDisplay.v
deleted file mode 100644
index b5281c017..000000000
--- a/src/Specific/montgomery64_2e480m2e240m1_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e480m2e240m1_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e480m2e240m1_8limbs/py_interpreter.sh b/src/Specific/montgomery64_2e480m2e240m1_8limbs/py_interpreter.sh
deleted file mode 100755
index c5e34d2ae..000000000
--- a/src/Specific/montgomery64_2e480m2e240m1_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**480 - 2**240 - 1' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e488m17_8limbs/CurveParameters.v b/src/Specific/montgomery64_2e488m17_8limbs/CurveParameters.v
deleted file mode 100644
index 686a23539..000000000
--- a/src/Specific/montgomery64_2e488m17_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^488 - 17
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 64;
- bitwidth := 64;
- s := 2^488;
- c := [(1, 17)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e488m17_8limbs/Synthesis.v b/src/Specific/montgomery64_2e488m17_8limbs/Synthesis.v
deleted file mode 100644
index 03f7ab319..000000000
--- a/src/Specific/montgomery64_2e488m17_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e488m17_8limbs.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/montgomery64_2e488m17_8limbs/compiler.sh b/src/Specific/montgomery64_2e488m17_8limbs/compiler.sh
deleted file mode 100755
index 9dced47dc..000000000
--- a/src/Specific/montgomery64_2e488m17_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='61' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<488) - 17' "$@"
diff --git a/src/Specific/montgomery64_2e488m17_8limbs/compilerxx.sh b/src/Specific/montgomery64_2e488m17_8limbs/compilerxx.sh
deleted file mode 100755
index b59dd5829..000000000
--- a/src/Specific/montgomery64_2e488m17_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='61' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<488) - 17' "$@"
diff --git a/src/Specific/montgomery64_2e488m17_8limbs/feadd.c b/src/Specific/montgomery64_2e488m17_8limbs/feadd.c
deleted file mode 100644
index d51bc767a..000000000
--- a/src/Specific/montgomery64_2e488m17_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint64_t x33; uint8_t x34 = _addcarryx_u64(0x0, x5, x19, &x33);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x34, x7, x21, &x36);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x37, x9, x23, &x39);
- { uint64_t x42; uint8_t x43 = _addcarryx_u64(x40, x11, x25, &x42);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(x43, x13, x27, &x45);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x46, x15, x29, &x48);
- { uint64_t x51; uint8_t x52 = _addcarryx_u64(x49, x17, x31, &x51);
- { uint64_t x54; uint8_t x55 = _addcarryx_u64(x52, x16, x30, &x54);
- { uint64_t x57; uint8_t x58 = _subborrow_u64(0x0, x33, 0xffffffffffffffefL, &x57);
- { uint64_t x60; uint8_t x61 = _subborrow_u64(x58, x36, 0xffffffffffffffffL, &x60);
- { uint64_t x63; uint8_t x64 = _subborrow_u64(x61, x39, 0xffffffffffffffffL, &x63);
- { uint64_t x66; uint8_t x67 = _subborrow_u64(x64, x42, 0xffffffffffffffffL, &x66);
- { uint64_t x69; uint8_t x70 = _subborrow_u64(x67, x45, 0xffffffffffffffffL, &x69);
- { uint64_t x72; uint8_t x73 = _subborrow_u64(x70, x48, 0xffffffffffffffffL, &x72);
- { uint64_t x75; uint8_t x76 = _subborrow_u64(x73, x51, 0xffffffffffffffffL, &x75);
- { uint64_t x78; uint8_t x79 = _subborrow_u64(x76, x54, 0xffffffffff, &x78);
- { uint64_t _; uint8_t x82 = _subborrow_u64(x79, x55, 0x0, &_);
- { uint64_t x83 = cmovznz64(x82, x78, x54);
- { uint64_t x84 = cmovznz64(x82, x75, x51);
- { uint64_t x85 = cmovznz64(x82, x72, x48);
- { uint64_t x86 = cmovznz64(x82, x69, x45);
- { uint64_t x87 = cmovznz64(x82, x66, x42);
- { uint64_t x88 = cmovznz64(x82, x63, x39);
- { uint64_t x89 = cmovznz64(x82, x60, x36);
- { uint64_t x90 = cmovznz64(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e488m17_8limbs/feadd.v b/src/Specific/montgomery64_2e488m17_8limbs/feadd.v
deleted file mode 100644
index 8d714cc4e..000000000
--- a/src/Specific/montgomery64_2e488m17_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e488m17_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e488m17_8limbs/feaddDisplay.log b/src/Specific/montgomery64_2e488m17_8limbs/feaddDisplay.log
deleted file mode 100644
index e75c10f26..000000000
--- a/src/Specific/montgomery64_2e488m17_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x33, uint8_t x34 = addcarryx_u64(0x0, x5, x19);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x34, x7, x21);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x37, x9, x23);
- uint64_t x42, uint8_t x43 = addcarryx_u64(x40, x11, x25);
- uint64_t x45, uint8_t x46 = addcarryx_u64(x43, x13, x27);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x46, x15, x29);
- uint64_t x51, uint8_t x52 = addcarryx_u64(x49, x17, x31);
- uint64_t x54, uint8_t x55 = addcarryx_u64(x52, x16, x30);
- uint64_t x57, uint8_t x58 = subborrow_u64(0x0, x33, 0xffffffffffffffefL);
- uint64_t x60, uint8_t x61 = subborrow_u64(x58, x36, 0xffffffffffffffffL);
- uint64_t x63, uint8_t x64 = subborrow_u64(x61, x39, 0xffffffffffffffffL);
- uint64_t x66, uint8_t x67 = subborrow_u64(x64, x42, 0xffffffffffffffffL);
- uint64_t x69, uint8_t x70 = subborrow_u64(x67, x45, 0xffffffffffffffffL);
- uint64_t x72, uint8_t x73 = subborrow_u64(x70, x48, 0xffffffffffffffffL);
- uint64_t x75, uint8_t x76 = subborrow_u64(x73, x51, 0xffffffffffffffffL);
- uint64_t x78, uint8_t x79 = subborrow_u64(x76, x54, 0xffffffffff);
- uint64_t _, uint8_t x82 = subborrow_u64(x79, x55, 0x0);
- uint64_t x83 = cmovznz64(x82, x78, x54);
- uint64_t x84 = cmovznz64(x82, x75, x51);
- uint64_t x85 = cmovznz64(x82, x72, x48);
- uint64_t x86 = cmovznz64(x82, x69, x45);
- uint64_t x87 = cmovznz64(x82, x66, x42);
- uint64_t x88 = cmovznz64(x82, x63, x39);
- uint64_t x89 = cmovznz64(x82, x60, x36);
- uint64_t x90 = cmovznz64(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e488m17_8limbs/feaddDisplay.v b/src/Specific/montgomery64_2e488m17_8limbs/feaddDisplay.v
deleted file mode 100644
index 6b6c66f1f..000000000
--- a/src/Specific/montgomery64_2e488m17_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e488m17_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e488m17_8limbs/femul.v b/src/Specific/montgomery64_2e488m17_8limbs/femul.v
deleted file mode 100644
index f3105ed7e..000000000
--- a/src/Specific/montgomery64_2e488m17_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e488m17_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e488m17_8limbs/femulDisplay.v b/src/Specific/montgomery64_2e488m17_8limbs/femulDisplay.v
deleted file mode 100644
index 6e08624f4..000000000
--- a/src/Specific/montgomery64_2e488m17_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e488m17_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e488m17_8limbs/fenz.c b/src/Specific/montgomery64_2e488m17_8limbs/fenz.c
deleted file mode 100644
index a07b0df9c..000000000
--- a/src/Specific/montgomery64_2e488m17_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x15 = (x14 | x13);
- { uint64_t x16 = (x12 | x15);
- { uint64_t x17 = (x10 | x16);
- { uint64_t x18 = (x8 | x17);
- { uint64_t x19 = (x6 | x18);
- { uint64_t x20 = (x4 | x19);
- { uint64_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e488m17_8limbs/fenz.v b/src/Specific/montgomery64_2e488m17_8limbs/fenz.v
deleted file mode 100644
index 980e6e6af..000000000
--- a/src/Specific/montgomery64_2e488m17_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e488m17_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e488m17_8limbs/fenzDisplay.log b/src/Specific/montgomery64_2e488m17_8limbs/fenzDisplay.log
deleted file mode 100644
index a05fc22ab..000000000
--- a/src/Specific/montgomery64_2e488m17_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (x14 | x13);
- uint64_t x16 = (x12 | x15);
- uint64_t x17 = (x10 | x16);
- uint64_t x18 = (x8 | x17);
- uint64_t x19 = (x6 | x18);
- uint64_t x20 = (x4 | x19);
- uint64_t x21 = (x2 | x20);
- return x21)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e488m17_8limbs/fenzDisplay.v b/src/Specific/montgomery64_2e488m17_8limbs/fenzDisplay.v
deleted file mode 100644
index e28a9c89f..000000000
--- a/src/Specific/montgomery64_2e488m17_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e488m17_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e488m17_8limbs/feopp.v b/src/Specific/montgomery64_2e488m17_8limbs/feopp.v
deleted file mode 100644
index 1e7b3d45b..000000000
--- a/src/Specific/montgomery64_2e488m17_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e488m17_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e488m17_8limbs/feoppDisplay.v b/src/Specific/montgomery64_2e488m17_8limbs/feoppDisplay.v
deleted file mode 100644
index 3f809deac..000000000
--- a/src/Specific/montgomery64_2e488m17_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e488m17_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e488m17_8limbs/fesquare.c b/src/Specific/montgomery64_2e488m17_8limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e488m17_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e488m17_8limbs/fesub.v b/src/Specific/montgomery64_2e488m17_8limbs/fesub.v
deleted file mode 100644
index 43614675a..000000000
--- a/src/Specific/montgomery64_2e488m17_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e488m17_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e488m17_8limbs/fesubDisplay.v b/src/Specific/montgomery64_2e488m17_8limbs/fesubDisplay.v
deleted file mode 100644
index 46d74c096..000000000
--- a/src/Specific/montgomery64_2e488m17_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e488m17_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e488m17_8limbs/py_interpreter.sh b/src/Specific/montgomery64_2e488m17_8limbs/py_interpreter.sh
deleted file mode 100755
index dd4465184..000000000
--- a/src/Specific/montgomery64_2e488m17_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**488 - 17' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e489m21_8limbs/CurveParameters.v b/src/Specific/montgomery64_2e489m21_8limbs/CurveParameters.v
deleted file mode 100644
index dcff12f2b..000000000
--- a/src/Specific/montgomery64_2e489m21_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^489 - 21
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 64;
- bitwidth := 64;
- s := 2^489;
- c := [(1, 21)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e489m21_8limbs/Synthesis.v b/src/Specific/montgomery64_2e489m21_8limbs/Synthesis.v
deleted file mode 100644
index 7f57d7d00..000000000
--- a/src/Specific/montgomery64_2e489m21_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e489m21_8limbs.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/montgomery64_2e489m21_8limbs/compiler.sh b/src/Specific/montgomery64_2e489m21_8limbs/compiler.sh
deleted file mode 100755
index 259ed5711..000000000
--- a/src/Specific/montgomery64_2e489m21_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<489) - 21' "$@"
diff --git a/src/Specific/montgomery64_2e489m21_8limbs/compilerxx.sh b/src/Specific/montgomery64_2e489m21_8limbs/compilerxx.sh
deleted file mode 100755
index 77e9e0ad5..000000000
--- a/src/Specific/montgomery64_2e489m21_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<489) - 21' "$@"
diff --git a/src/Specific/montgomery64_2e489m21_8limbs/feadd.c b/src/Specific/montgomery64_2e489m21_8limbs/feadd.c
deleted file mode 100644
index e416cbae4..000000000
--- a/src/Specific/montgomery64_2e489m21_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint64_t x33; uint8_t x34 = _addcarryx_u64(0x0, x5, x19, &x33);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x34, x7, x21, &x36);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x37, x9, x23, &x39);
- { uint64_t x42; uint8_t x43 = _addcarryx_u64(x40, x11, x25, &x42);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(x43, x13, x27, &x45);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x46, x15, x29, &x48);
- { uint64_t x51; uint8_t x52 = _addcarryx_u64(x49, x17, x31, &x51);
- { uint64_t x54; uint8_t x55 = _addcarryx_u64(x52, x16, x30, &x54);
- { uint64_t x57; uint8_t x58 = _subborrow_u64(0x0, x33, 0xffffffffffffffebL, &x57);
- { uint64_t x60; uint8_t x61 = _subborrow_u64(x58, x36, 0xffffffffffffffffL, &x60);
- { uint64_t x63; uint8_t x64 = _subborrow_u64(x61, x39, 0xffffffffffffffffL, &x63);
- { uint64_t x66; uint8_t x67 = _subborrow_u64(x64, x42, 0xffffffffffffffffL, &x66);
- { uint64_t x69; uint8_t x70 = _subborrow_u64(x67, x45, 0xffffffffffffffffL, &x69);
- { uint64_t x72; uint8_t x73 = _subborrow_u64(x70, x48, 0xffffffffffffffffL, &x72);
- { uint64_t x75; uint8_t x76 = _subborrow_u64(x73, x51, 0xffffffffffffffffL, &x75);
- { uint64_t x78; uint8_t x79 = _subborrow_u64(x76, x54, 0x1ffffffffff, &x78);
- { uint64_t _; uint8_t x82 = _subborrow_u64(x79, x55, 0x0, &_);
- { uint64_t x83 = cmovznz64(x82, x78, x54);
- { uint64_t x84 = cmovznz64(x82, x75, x51);
- { uint64_t x85 = cmovznz64(x82, x72, x48);
- { uint64_t x86 = cmovznz64(x82, x69, x45);
- { uint64_t x87 = cmovznz64(x82, x66, x42);
- { uint64_t x88 = cmovznz64(x82, x63, x39);
- { uint64_t x89 = cmovznz64(x82, x60, x36);
- { uint64_t x90 = cmovznz64(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e489m21_8limbs/feadd.v b/src/Specific/montgomery64_2e489m21_8limbs/feadd.v
deleted file mode 100644
index a7374bd6e..000000000
--- a/src/Specific/montgomery64_2e489m21_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e489m21_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e489m21_8limbs/feaddDisplay.log b/src/Specific/montgomery64_2e489m21_8limbs/feaddDisplay.log
deleted file mode 100644
index f8639d889..000000000
--- a/src/Specific/montgomery64_2e489m21_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x33, uint8_t x34 = addcarryx_u64(0x0, x5, x19);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x34, x7, x21);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x37, x9, x23);
- uint64_t x42, uint8_t x43 = addcarryx_u64(x40, x11, x25);
- uint64_t x45, uint8_t x46 = addcarryx_u64(x43, x13, x27);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x46, x15, x29);
- uint64_t x51, uint8_t x52 = addcarryx_u64(x49, x17, x31);
- uint64_t x54, uint8_t x55 = addcarryx_u64(x52, x16, x30);
- uint64_t x57, uint8_t x58 = subborrow_u64(0x0, x33, 0xffffffffffffffebL);
- uint64_t x60, uint8_t x61 = subborrow_u64(x58, x36, 0xffffffffffffffffL);
- uint64_t x63, uint8_t x64 = subborrow_u64(x61, x39, 0xffffffffffffffffL);
- uint64_t x66, uint8_t x67 = subborrow_u64(x64, x42, 0xffffffffffffffffL);
- uint64_t x69, uint8_t x70 = subborrow_u64(x67, x45, 0xffffffffffffffffL);
- uint64_t x72, uint8_t x73 = subborrow_u64(x70, x48, 0xffffffffffffffffL);
- uint64_t x75, uint8_t x76 = subborrow_u64(x73, x51, 0xffffffffffffffffL);
- uint64_t x78, uint8_t x79 = subborrow_u64(x76, x54, 0x1ffffffffff);
- uint64_t _, uint8_t x82 = subborrow_u64(x79, x55, 0x0);
- uint64_t x83 = cmovznz64(x82, x78, x54);
- uint64_t x84 = cmovznz64(x82, x75, x51);
- uint64_t x85 = cmovznz64(x82, x72, x48);
- uint64_t x86 = cmovznz64(x82, x69, x45);
- uint64_t x87 = cmovznz64(x82, x66, x42);
- uint64_t x88 = cmovznz64(x82, x63, x39);
- uint64_t x89 = cmovznz64(x82, x60, x36);
- uint64_t x90 = cmovznz64(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e489m21_8limbs/feaddDisplay.v b/src/Specific/montgomery64_2e489m21_8limbs/feaddDisplay.v
deleted file mode 100644
index 19842ff3f..000000000
--- a/src/Specific/montgomery64_2e489m21_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e489m21_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e489m21_8limbs/femul.v b/src/Specific/montgomery64_2e489m21_8limbs/femul.v
deleted file mode 100644
index 6d5140661..000000000
--- a/src/Specific/montgomery64_2e489m21_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e489m21_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e489m21_8limbs/femulDisplay.v b/src/Specific/montgomery64_2e489m21_8limbs/femulDisplay.v
deleted file mode 100644
index fea1876f2..000000000
--- a/src/Specific/montgomery64_2e489m21_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e489m21_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e489m21_8limbs/fenz.c b/src/Specific/montgomery64_2e489m21_8limbs/fenz.c
deleted file mode 100644
index a07b0df9c..000000000
--- a/src/Specific/montgomery64_2e489m21_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x15 = (x14 | x13);
- { uint64_t x16 = (x12 | x15);
- { uint64_t x17 = (x10 | x16);
- { uint64_t x18 = (x8 | x17);
- { uint64_t x19 = (x6 | x18);
- { uint64_t x20 = (x4 | x19);
- { uint64_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e489m21_8limbs/fenz.v b/src/Specific/montgomery64_2e489m21_8limbs/fenz.v
deleted file mode 100644
index ca9f33b24..000000000
--- a/src/Specific/montgomery64_2e489m21_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e489m21_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e489m21_8limbs/fenzDisplay.log b/src/Specific/montgomery64_2e489m21_8limbs/fenzDisplay.log
deleted file mode 100644
index a05fc22ab..000000000
--- a/src/Specific/montgomery64_2e489m21_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (x14 | x13);
- uint64_t x16 = (x12 | x15);
- uint64_t x17 = (x10 | x16);
- uint64_t x18 = (x8 | x17);
- uint64_t x19 = (x6 | x18);
- uint64_t x20 = (x4 | x19);
- uint64_t x21 = (x2 | x20);
- return x21)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e489m21_8limbs/fenzDisplay.v b/src/Specific/montgomery64_2e489m21_8limbs/fenzDisplay.v
deleted file mode 100644
index 5711ed081..000000000
--- a/src/Specific/montgomery64_2e489m21_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e489m21_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e489m21_8limbs/feopp.v b/src/Specific/montgomery64_2e489m21_8limbs/feopp.v
deleted file mode 100644
index 00c74a198..000000000
--- a/src/Specific/montgomery64_2e489m21_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e489m21_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e489m21_8limbs/feoppDisplay.v b/src/Specific/montgomery64_2e489m21_8limbs/feoppDisplay.v
deleted file mode 100644
index 479bd50ce..000000000
--- a/src/Specific/montgomery64_2e489m21_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e489m21_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e489m21_8limbs/fesquare.c b/src/Specific/montgomery64_2e489m21_8limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e489m21_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e489m21_8limbs/fesub.v b/src/Specific/montgomery64_2e489m21_8limbs/fesub.v
deleted file mode 100644
index 5e3ee3138..000000000
--- a/src/Specific/montgomery64_2e489m21_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e489m21_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e489m21_8limbs/fesubDisplay.v b/src/Specific/montgomery64_2e489m21_8limbs/fesubDisplay.v
deleted file mode 100644
index f124262df..000000000
--- a/src/Specific/montgomery64_2e489m21_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e489m21_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e489m21_8limbs/py_interpreter.sh b/src/Specific/montgomery64_2e489m21_8limbs/py_interpreter.sh
deleted file mode 100755
index 2a94029fa..000000000
--- a/src/Specific/montgomery64_2e489m21_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**489 - 21' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e495m31_8limbs/CurveParameters.v b/src/Specific/montgomery64_2e495m31_8limbs/CurveParameters.v
deleted file mode 100644
index 168ddec41..000000000
--- a/src/Specific/montgomery64_2e495m31_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^495 - 31
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 64;
- bitwidth := 64;
- s := 2^495;
- c := [(1, 31)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e495m31_8limbs/Synthesis.v b/src/Specific/montgomery64_2e495m31_8limbs/Synthesis.v
deleted file mode 100644
index 603e85c9d..000000000
--- a/src/Specific/montgomery64_2e495m31_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e495m31_8limbs.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/montgomery64_2e495m31_8limbs/compiler.sh b/src/Specific/montgomery64_2e495m31_8limbs/compiler.sh
deleted file mode 100755
index e1f890747..000000000
--- a/src/Specific/montgomery64_2e495m31_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<495) - 31' "$@"
diff --git a/src/Specific/montgomery64_2e495m31_8limbs/compilerxx.sh b/src/Specific/montgomery64_2e495m31_8limbs/compilerxx.sh
deleted file mode 100755
index 107733a01..000000000
--- a/src/Specific/montgomery64_2e495m31_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<495) - 31' "$@"
diff --git a/src/Specific/montgomery64_2e495m31_8limbs/feadd.c b/src/Specific/montgomery64_2e495m31_8limbs/feadd.c
deleted file mode 100644
index f0c78d0f9..000000000
--- a/src/Specific/montgomery64_2e495m31_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint64_t x33; uint8_t x34 = _addcarryx_u64(0x0, x5, x19, &x33);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x34, x7, x21, &x36);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x37, x9, x23, &x39);
- { uint64_t x42; uint8_t x43 = _addcarryx_u64(x40, x11, x25, &x42);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(x43, x13, x27, &x45);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x46, x15, x29, &x48);
- { uint64_t x51; uint8_t x52 = _addcarryx_u64(x49, x17, x31, &x51);
- { uint64_t x54; uint8_t x55 = _addcarryx_u64(x52, x16, x30, &x54);
- { uint64_t x57; uint8_t x58 = _subborrow_u64(0x0, x33, 0xffffffffffffffe1L, &x57);
- { uint64_t x60; uint8_t x61 = _subborrow_u64(x58, x36, 0xffffffffffffffffL, &x60);
- { uint64_t x63; uint8_t x64 = _subborrow_u64(x61, x39, 0xffffffffffffffffL, &x63);
- { uint64_t x66; uint8_t x67 = _subborrow_u64(x64, x42, 0xffffffffffffffffL, &x66);
- { uint64_t x69; uint8_t x70 = _subborrow_u64(x67, x45, 0xffffffffffffffffL, &x69);
- { uint64_t x72; uint8_t x73 = _subborrow_u64(x70, x48, 0xffffffffffffffffL, &x72);
- { uint64_t x75; uint8_t x76 = _subborrow_u64(x73, x51, 0xffffffffffffffffL, &x75);
- { uint64_t x78; uint8_t x79 = _subborrow_u64(x76, x54, 0x7fffffffffff, &x78);
- { uint64_t _; uint8_t x82 = _subborrow_u64(x79, x55, 0x0, &_);
- { uint64_t x83 = cmovznz64(x82, x78, x54);
- { uint64_t x84 = cmovznz64(x82, x75, x51);
- { uint64_t x85 = cmovznz64(x82, x72, x48);
- { uint64_t x86 = cmovznz64(x82, x69, x45);
- { uint64_t x87 = cmovznz64(x82, x66, x42);
- { uint64_t x88 = cmovznz64(x82, x63, x39);
- { uint64_t x89 = cmovznz64(x82, x60, x36);
- { uint64_t x90 = cmovznz64(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e495m31_8limbs/feadd.v b/src/Specific/montgomery64_2e495m31_8limbs/feadd.v
deleted file mode 100644
index 9c31c62da..000000000
--- a/src/Specific/montgomery64_2e495m31_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e495m31_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e495m31_8limbs/feaddDisplay.log b/src/Specific/montgomery64_2e495m31_8limbs/feaddDisplay.log
deleted file mode 100644
index 41e6d4e3a..000000000
--- a/src/Specific/montgomery64_2e495m31_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x33, uint8_t x34 = addcarryx_u64(0x0, x5, x19);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x34, x7, x21);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x37, x9, x23);
- uint64_t x42, uint8_t x43 = addcarryx_u64(x40, x11, x25);
- uint64_t x45, uint8_t x46 = addcarryx_u64(x43, x13, x27);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x46, x15, x29);
- uint64_t x51, uint8_t x52 = addcarryx_u64(x49, x17, x31);
- uint64_t x54, uint8_t x55 = addcarryx_u64(x52, x16, x30);
- uint64_t x57, uint8_t x58 = subborrow_u64(0x0, x33, 0xffffffffffffffe1L);
- uint64_t x60, uint8_t x61 = subborrow_u64(x58, x36, 0xffffffffffffffffL);
- uint64_t x63, uint8_t x64 = subborrow_u64(x61, x39, 0xffffffffffffffffL);
- uint64_t x66, uint8_t x67 = subborrow_u64(x64, x42, 0xffffffffffffffffL);
- uint64_t x69, uint8_t x70 = subborrow_u64(x67, x45, 0xffffffffffffffffL);
- uint64_t x72, uint8_t x73 = subborrow_u64(x70, x48, 0xffffffffffffffffL);
- uint64_t x75, uint8_t x76 = subborrow_u64(x73, x51, 0xffffffffffffffffL);
- uint64_t x78, uint8_t x79 = subborrow_u64(x76, x54, 0x7fffffffffff);
- uint64_t _, uint8_t x82 = subborrow_u64(x79, x55, 0x0);
- uint64_t x83 = cmovznz64(x82, x78, x54);
- uint64_t x84 = cmovznz64(x82, x75, x51);
- uint64_t x85 = cmovznz64(x82, x72, x48);
- uint64_t x86 = cmovznz64(x82, x69, x45);
- uint64_t x87 = cmovznz64(x82, x66, x42);
- uint64_t x88 = cmovznz64(x82, x63, x39);
- uint64_t x89 = cmovznz64(x82, x60, x36);
- uint64_t x90 = cmovznz64(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e495m31_8limbs/feaddDisplay.v b/src/Specific/montgomery64_2e495m31_8limbs/feaddDisplay.v
deleted file mode 100644
index ee0262587..000000000
--- a/src/Specific/montgomery64_2e495m31_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e495m31_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e495m31_8limbs/femul.v b/src/Specific/montgomery64_2e495m31_8limbs/femul.v
deleted file mode 100644
index 2a3438f72..000000000
--- a/src/Specific/montgomery64_2e495m31_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e495m31_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e495m31_8limbs/femulDisplay.v b/src/Specific/montgomery64_2e495m31_8limbs/femulDisplay.v
deleted file mode 100644
index 90b580092..000000000
--- a/src/Specific/montgomery64_2e495m31_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e495m31_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e495m31_8limbs/fenz.c b/src/Specific/montgomery64_2e495m31_8limbs/fenz.c
deleted file mode 100644
index a07b0df9c..000000000
--- a/src/Specific/montgomery64_2e495m31_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x15 = (x14 | x13);
- { uint64_t x16 = (x12 | x15);
- { uint64_t x17 = (x10 | x16);
- { uint64_t x18 = (x8 | x17);
- { uint64_t x19 = (x6 | x18);
- { uint64_t x20 = (x4 | x19);
- { uint64_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e495m31_8limbs/fenz.v b/src/Specific/montgomery64_2e495m31_8limbs/fenz.v
deleted file mode 100644
index 19475c871..000000000
--- a/src/Specific/montgomery64_2e495m31_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e495m31_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e495m31_8limbs/fenzDisplay.log b/src/Specific/montgomery64_2e495m31_8limbs/fenzDisplay.log
deleted file mode 100644
index a05fc22ab..000000000
--- a/src/Specific/montgomery64_2e495m31_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (x14 | x13);
- uint64_t x16 = (x12 | x15);
- uint64_t x17 = (x10 | x16);
- uint64_t x18 = (x8 | x17);
- uint64_t x19 = (x6 | x18);
- uint64_t x20 = (x4 | x19);
- uint64_t x21 = (x2 | x20);
- return x21)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e495m31_8limbs/fenzDisplay.v b/src/Specific/montgomery64_2e495m31_8limbs/fenzDisplay.v
deleted file mode 100644
index 1b651af8b..000000000
--- a/src/Specific/montgomery64_2e495m31_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e495m31_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e495m31_8limbs/feopp.v b/src/Specific/montgomery64_2e495m31_8limbs/feopp.v
deleted file mode 100644
index 776e87b40..000000000
--- a/src/Specific/montgomery64_2e495m31_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e495m31_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e495m31_8limbs/feoppDisplay.v b/src/Specific/montgomery64_2e495m31_8limbs/feoppDisplay.v
deleted file mode 100644
index 6656b2675..000000000
--- a/src/Specific/montgomery64_2e495m31_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e495m31_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e495m31_8limbs/fesquare.c b/src/Specific/montgomery64_2e495m31_8limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e495m31_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e495m31_8limbs/fesub.v b/src/Specific/montgomery64_2e495m31_8limbs/fesub.v
deleted file mode 100644
index 71bf15d4b..000000000
--- a/src/Specific/montgomery64_2e495m31_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e495m31_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e495m31_8limbs/fesubDisplay.v b/src/Specific/montgomery64_2e495m31_8limbs/fesubDisplay.v
deleted file mode 100644
index 5f3969bae..000000000
--- a/src/Specific/montgomery64_2e495m31_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e495m31_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e495m31_8limbs/py_interpreter.sh b/src/Specific/montgomery64_2e495m31_8limbs/py_interpreter.sh
deleted file mode 100755
index 8795ac69c..000000000
--- a/src/Specific/montgomery64_2e495m31_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**495 - 31' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/CurveParameters.v b/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/CurveParameters.v
deleted file mode 100644
index d8cf3d25f..000000000
--- a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^510 - 290*2^496 - 1
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 64;
- bitwidth := 64;
- s := 2^510;
- c := [(1, 1); (290, 2^496)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e510m290x2e496m1_8limbs/Synthesis.v b/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/Synthesis.v
deleted file mode 100644
index d3c4e871f..000000000
--- a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e510m290x2e496m1_8limbs.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/montgomery64_2e510m290x2e496m1_8limbs/compiler.sh b/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/compiler.sh
deleted file mode 100755
index 231fd60e3..000000000
--- a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/compilerxx.sh b/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/compilerxx.sh
deleted file mode 100755
index 20f1dedb0..000000000
--- a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x3e,0xdd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<510) - 290*(1_mpz<<496) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/feadd.c b/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/feadd.c
deleted file mode 100644
index 9851fdab2..000000000
--- a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint64_t x33; uint8_t x34 = _addcarryx_u64(0x0, x5, x19, &x33);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x34, x7, x21, &x36);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x37, x9, x23, &x39);
- { uint64_t x42; uint8_t x43 = _addcarryx_u64(x40, x11, x25, &x42);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(x43, x13, x27, &x45);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x46, x15, x29, &x48);
- { uint64_t x51; uint8_t x52 = _addcarryx_u64(x49, x17, x31, &x51);
- { uint64_t x54; uint8_t x55 = _addcarryx_u64(x52, x16, x30, &x54);
- { uint64_t x57; uint8_t x58 = _subborrow_u64(0x0, x33, 0xffffffffffffffffL, &x57);
- { uint64_t x60; uint8_t x61 = _subborrow_u64(x58, x36, 0xffffffffffffffffL, &x60);
- { uint64_t x63; uint8_t x64 = _subborrow_u64(x61, x39, 0xffffffffffffffffL, &x63);
- { uint64_t x66; uint8_t x67 = _subborrow_u64(x64, x42, 0xffffffffffffffffL, &x66);
- { uint64_t x69; uint8_t x70 = _subborrow_u64(x67, x45, 0xffffffffffffffffL, &x69);
- { uint64_t x72; uint8_t x73 = _subborrow_u64(x70, x48, 0xffffffffffffffffL, &x72);
- { uint64_t x75; uint8_t x76 = _subborrow_u64(x73, x51, 0xffffffffffffffffL, &x75);
- { uint64_t x78; uint8_t x79 = _subborrow_u64(x76, x54, 0x3eddffffffffffff, &x78);
- { uint64_t _; uint8_t x82 = _subborrow_u64(x79, x55, 0x0, &_);
- { uint64_t x83 = cmovznz64(x82, x78, x54);
- { uint64_t x84 = cmovznz64(x82, x75, x51);
- { uint64_t x85 = cmovznz64(x82, x72, x48);
- { uint64_t x86 = cmovznz64(x82, x69, x45);
- { uint64_t x87 = cmovznz64(x82, x66, x42);
- { uint64_t x88 = cmovznz64(x82, x63, x39);
- { uint64_t x89 = cmovznz64(x82, x60, x36);
- { uint64_t x90 = cmovznz64(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/feadd.v b/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/feadd.v
deleted file mode 100644
index a3d8a0922..000000000
--- a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e510m290x2e496m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/feaddDisplay.log b/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/feaddDisplay.log
deleted file mode 100644
index 57c9fad62..000000000
--- a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x33, uint8_t x34 = addcarryx_u64(0x0, x5, x19);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x34, x7, x21);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x37, x9, x23);
- uint64_t x42, uint8_t x43 = addcarryx_u64(x40, x11, x25);
- uint64_t x45, uint8_t x46 = addcarryx_u64(x43, x13, x27);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x46, x15, x29);
- uint64_t x51, uint8_t x52 = addcarryx_u64(x49, x17, x31);
- uint64_t x54, uint8_t x55 = addcarryx_u64(x52, x16, x30);
- uint64_t x57, uint8_t x58 = subborrow_u64(0x0, x33, 0xffffffffffffffffL);
- uint64_t x60, uint8_t x61 = subborrow_u64(x58, x36, 0xffffffffffffffffL);
- uint64_t x63, uint8_t x64 = subborrow_u64(x61, x39, 0xffffffffffffffffL);
- uint64_t x66, uint8_t x67 = subborrow_u64(x64, x42, 0xffffffffffffffffL);
- uint64_t x69, uint8_t x70 = subborrow_u64(x67, x45, 0xffffffffffffffffL);
- uint64_t x72, uint8_t x73 = subborrow_u64(x70, x48, 0xffffffffffffffffL);
- uint64_t x75, uint8_t x76 = subborrow_u64(x73, x51, 0xffffffffffffffffL);
- uint64_t x78, uint8_t x79 = subborrow_u64(x76, x54, 0x3eddffffffffffff);
- uint64_t _, uint8_t x82 = subborrow_u64(x79, x55, 0x0);
- uint64_t x83 = cmovznz64(x82, x78, x54);
- uint64_t x84 = cmovznz64(x82, x75, x51);
- uint64_t x85 = cmovznz64(x82, x72, x48);
- uint64_t x86 = cmovznz64(x82, x69, x45);
- uint64_t x87 = cmovznz64(x82, x66, x42);
- uint64_t x88 = cmovznz64(x82, x63, x39);
- uint64_t x89 = cmovznz64(x82, x60, x36);
- uint64_t x90 = cmovznz64(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/feaddDisplay.v b/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/feaddDisplay.v
deleted file mode 100644
index e6939a00b..000000000
--- a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e510m290x2e496m1_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/femul.c b/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/femul.c
deleted file mode 100644
index 193eb0c44..000000000
--- a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/femul.c
+++ /dev/null
@@ -1,443 +0,0 @@
-static void femul(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint64_t x34; uint64_t x33 = _mulx_u64(x5, x19, &x34);
- { uint64_t x37; uint64_t x36 = _mulx_u64(x5, x21, &x37);
- { uint64_t x40; uint64_t x39 = _mulx_u64(x5, x23, &x40);
- { uint64_t x43; uint64_t x42 = _mulx_u64(x5, x25, &x43);
- { uint64_t x46; uint64_t x45 = _mulx_u64(x5, x27, &x46);
- { uint64_t x49; uint64_t x48 = _mulx_u64(x5, x29, &x49);
- { uint64_t x52; uint64_t x51 = _mulx_u64(x5, x31, &x52);
- { uint64_t x55; uint64_t x54 = _mulx_u64(x5, x30, &x55);
- { uint64_t x57; uint8_t x58 = _addcarryx_u64(0x0, x34, x36, &x57);
- { uint64_t x60; uint8_t x61 = _addcarryx_u64(x58, x37, x39, &x60);
- { uint64_t x63; uint8_t x64 = _addcarryx_u64(x61, x40, x42, &x63);
- { uint64_t x66; uint8_t x67 = _addcarryx_u64(x64, x43, x45, &x66);
- { uint64_t x69; uint8_t x70 = _addcarryx_u64(x67, x46, x48, &x69);
- { uint64_t x72; uint8_t x73 = _addcarryx_u64(x70, x49, x51, &x72);
- { uint64_t x75; uint8_t x76 = _addcarryx_u64(x73, x52, x54, &x75);
- { uint64_t x78; uint8_t _ = _addcarryx_u64(0x0, x76, x55, &x78);
- { uint64_t x82; uint64_t x81 = _mulx_u64(x33, 0xffffffffffffffffL, &x82);
- { uint64_t x85; uint64_t x84 = _mulx_u64(x33, 0xffffffffffffffffL, &x85);
- { uint64_t x88; uint64_t x87 = _mulx_u64(x33, 0xffffffffffffffffL, &x88);
- { uint64_t x91; uint64_t x90 = _mulx_u64(x33, 0xffffffffffffffffL, &x91);
- { uint64_t x94; uint64_t x93 = _mulx_u64(x33, 0xffffffffffffffffL, &x94);
- { uint64_t x97; uint64_t x96 = _mulx_u64(x33, 0xffffffffffffffffL, &x97);
- { uint64_t x100; uint64_t x99 = _mulx_u64(x33, 0xffffffffffffffffL, &x100);
- { uint64_t x103; uint64_t x102 = _mulx_u64(x33, 0x3eddffffffffffff, &x103);
- { uint64_t x105; uint8_t x106 = _addcarryx_u64(0x0, x82, x84, &x105);
- { uint64_t x108; uint8_t x109 = _addcarryx_u64(x106, x85, x87, &x108);
- { uint64_t x111; uint8_t x112 = _addcarryx_u64(x109, x88, x90, &x111);
- { uint64_t x114; uint8_t x115 = _addcarryx_u64(x112, x91, x93, &x114);
- { uint64_t x117; uint8_t x118 = _addcarryx_u64(x115, x94, x96, &x117);
- { uint64_t x120; uint8_t x121 = _addcarryx_u64(x118, x97, x99, &x120);
- { uint64_t x123; uint8_t x124 = _addcarryx_u64(x121, x100, x102, &x123);
- { uint64_t x126; uint8_t _ = _addcarryx_u64(0x0, x124, x103, &x126);
- { uint64_t _; uint8_t x130 = _addcarryx_u64(0x0, x33, x81, &_);
- { uint64_t x132; uint8_t x133 = _addcarryx_u64(x130, x57, x105, &x132);
- { uint64_t x135; uint8_t x136 = _addcarryx_u64(x133, x60, x108, &x135);
- { uint64_t x138; uint8_t x139 = _addcarryx_u64(x136, x63, x111, &x138);
- { uint64_t x141; uint8_t x142 = _addcarryx_u64(x139, x66, x114, &x141);
- { uint64_t x144; uint8_t x145 = _addcarryx_u64(x142, x69, x117, &x144);
- { uint64_t x147; uint8_t x148 = _addcarryx_u64(x145, x72, x120, &x147);
- { uint64_t x150; uint8_t x151 = _addcarryx_u64(x148, x75, x123, &x150);
- { uint64_t x153; uint8_t x154 = _addcarryx_u64(x151, x78, x126, &x153);
- { uint8_t x155 = (x154 + 0x0);
- { uint64_t x158; uint64_t x157 = _mulx_u64(x7, x19, &x158);
- { uint64_t x161; uint64_t x160 = _mulx_u64(x7, x21, &x161);
- { uint64_t x164; uint64_t x163 = _mulx_u64(x7, x23, &x164);
- { uint64_t x167; uint64_t x166 = _mulx_u64(x7, x25, &x167);
- { uint64_t x170; uint64_t x169 = _mulx_u64(x7, x27, &x170);
- { uint64_t x173; uint64_t x172 = _mulx_u64(x7, x29, &x173);
- { uint64_t x176; uint64_t x175 = _mulx_u64(x7, x31, &x176);
- { uint64_t x179; uint64_t x178 = _mulx_u64(x7, x30, &x179);
- { uint64_t x181; uint8_t x182 = _addcarryx_u64(0x0, x158, x160, &x181);
- { uint64_t x184; uint8_t x185 = _addcarryx_u64(x182, x161, x163, &x184);
- { uint64_t x187; uint8_t x188 = _addcarryx_u64(x185, x164, x166, &x187);
- { uint64_t x190; uint8_t x191 = _addcarryx_u64(x188, x167, x169, &x190);
- { uint64_t x193; uint8_t x194 = _addcarryx_u64(x191, x170, x172, &x193);
- { uint64_t x196; uint8_t x197 = _addcarryx_u64(x194, x173, x175, &x196);
- { uint64_t x199; uint8_t x200 = _addcarryx_u64(x197, x176, x178, &x199);
- { uint64_t x202; uint8_t _ = _addcarryx_u64(0x0, x200, x179, &x202);
- { uint64_t x205; uint8_t x206 = _addcarryx_u64(0x0, x132, x157, &x205);
- { uint64_t x208; uint8_t x209 = _addcarryx_u64(x206, x135, x181, &x208);
- { uint64_t x211; uint8_t x212 = _addcarryx_u64(x209, x138, x184, &x211);
- { uint64_t x214; uint8_t x215 = _addcarryx_u64(x212, x141, x187, &x214);
- { uint64_t x217; uint8_t x218 = _addcarryx_u64(x215, x144, x190, &x217);
- { uint64_t x220; uint8_t x221 = _addcarryx_u64(x218, x147, x193, &x220);
- { uint64_t x223; uint8_t x224 = _addcarryx_u64(x221, x150, x196, &x223);
- { uint64_t x226; uint8_t x227 = _addcarryx_u64(x224, x153, x199, &x226);
- { uint64_t x229; uint8_t x230 = _addcarryx_u64(x227, x155, x202, &x229);
- { uint64_t x233; uint64_t x232 = _mulx_u64(x205, 0xffffffffffffffffL, &x233);
- { uint64_t x236; uint64_t x235 = _mulx_u64(x205, 0xffffffffffffffffL, &x236);
- { uint64_t x239; uint64_t x238 = _mulx_u64(x205, 0xffffffffffffffffL, &x239);
- { uint64_t x242; uint64_t x241 = _mulx_u64(x205, 0xffffffffffffffffL, &x242);
- { uint64_t x245; uint64_t x244 = _mulx_u64(x205, 0xffffffffffffffffL, &x245);
- { uint64_t x248; uint64_t x247 = _mulx_u64(x205, 0xffffffffffffffffL, &x248);
- { uint64_t x251; uint64_t x250 = _mulx_u64(x205, 0xffffffffffffffffL, &x251);
- { uint64_t x254; uint64_t x253 = _mulx_u64(x205, 0x3eddffffffffffff, &x254);
- { uint64_t x256; uint8_t x257 = _addcarryx_u64(0x0, x233, x235, &x256);
- { uint64_t x259; uint8_t x260 = _addcarryx_u64(x257, x236, x238, &x259);
- { uint64_t x262; uint8_t x263 = _addcarryx_u64(x260, x239, x241, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(x263, x242, x244, &x265);
- { uint64_t x268; uint8_t x269 = _addcarryx_u64(x266, x245, x247, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(x269, x248, x250, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x251, x253, &x274);
- { uint64_t x277; uint8_t _ = _addcarryx_u64(0x0, x275, x254, &x277);
- { uint64_t _; uint8_t x281 = _addcarryx_u64(0x0, x205, x232, &_);
- { uint64_t x283; uint8_t x284 = _addcarryx_u64(x281, x208, x256, &x283);
- { uint64_t x286; uint8_t x287 = _addcarryx_u64(x284, x211, x259, &x286);
- { uint64_t x289; uint8_t x290 = _addcarryx_u64(x287, x214, x262, &x289);
- { uint64_t x292; uint8_t x293 = _addcarryx_u64(x290, x217, x265, &x292);
- { uint64_t x295; uint8_t x296 = _addcarryx_u64(x293, x220, x268, &x295);
- { uint64_t x298; uint8_t x299 = _addcarryx_u64(x296, x223, x271, &x298);
- { uint64_t x301; uint8_t x302 = _addcarryx_u64(x299, x226, x274, &x301);
- { uint64_t x304; uint8_t x305 = _addcarryx_u64(x302, x229, x277, &x304);
- { uint8_t x306 = (x305 + x230);
- { uint64_t x309; uint64_t x308 = _mulx_u64(x9, x19, &x309);
- { uint64_t x312; uint64_t x311 = _mulx_u64(x9, x21, &x312);
- { uint64_t x315; uint64_t x314 = _mulx_u64(x9, x23, &x315);
- { uint64_t x318; uint64_t x317 = _mulx_u64(x9, x25, &x318);
- { uint64_t x321; uint64_t x320 = _mulx_u64(x9, x27, &x321);
- { uint64_t x324; uint64_t x323 = _mulx_u64(x9, x29, &x324);
- { uint64_t x327; uint64_t x326 = _mulx_u64(x9, x31, &x327);
- { uint64_t x330; uint64_t x329 = _mulx_u64(x9, x30, &x330);
- { uint64_t x332; uint8_t x333 = _addcarryx_u64(0x0, x309, x311, &x332);
- { uint64_t x335; uint8_t x336 = _addcarryx_u64(x333, x312, x314, &x335);
- { uint64_t x338; uint8_t x339 = _addcarryx_u64(x336, x315, x317, &x338);
- { uint64_t x341; uint8_t x342 = _addcarryx_u64(x339, x318, x320, &x341);
- { uint64_t x344; uint8_t x345 = _addcarryx_u64(x342, x321, x323, &x344);
- { uint64_t x347; uint8_t x348 = _addcarryx_u64(x345, x324, x326, &x347);
- { uint64_t x350; uint8_t x351 = _addcarryx_u64(x348, x327, x329, &x350);
- { uint64_t x353; uint8_t _ = _addcarryx_u64(0x0, x351, x330, &x353);
- { uint64_t x356; uint8_t x357 = _addcarryx_u64(0x0, x283, x308, &x356);
- { uint64_t x359; uint8_t x360 = _addcarryx_u64(x357, x286, x332, &x359);
- { uint64_t x362; uint8_t x363 = _addcarryx_u64(x360, x289, x335, &x362);
- { uint64_t x365; uint8_t x366 = _addcarryx_u64(x363, x292, x338, &x365);
- { uint64_t x368; uint8_t x369 = _addcarryx_u64(x366, x295, x341, &x368);
- { uint64_t x371; uint8_t x372 = _addcarryx_u64(x369, x298, x344, &x371);
- { uint64_t x374; uint8_t x375 = _addcarryx_u64(x372, x301, x347, &x374);
- { uint64_t x377; uint8_t x378 = _addcarryx_u64(x375, x304, x350, &x377);
- { uint64_t x380; uint8_t x381 = _addcarryx_u64(x378, x306, x353, &x380);
- { uint64_t x384; uint64_t x383 = _mulx_u64(x356, 0xffffffffffffffffL, &x384);
- { uint64_t x387; uint64_t x386 = _mulx_u64(x356, 0xffffffffffffffffL, &x387);
- { uint64_t x390; uint64_t x389 = _mulx_u64(x356, 0xffffffffffffffffL, &x390);
- { uint64_t x393; uint64_t x392 = _mulx_u64(x356, 0xffffffffffffffffL, &x393);
- { uint64_t x396; uint64_t x395 = _mulx_u64(x356, 0xffffffffffffffffL, &x396);
- { uint64_t x399; uint64_t x398 = _mulx_u64(x356, 0xffffffffffffffffL, &x399);
- { uint64_t x402; uint64_t x401 = _mulx_u64(x356, 0xffffffffffffffffL, &x402);
- { uint64_t x405; uint64_t x404 = _mulx_u64(x356, 0x3eddffffffffffff, &x405);
- { uint64_t x407; uint8_t x408 = _addcarryx_u64(0x0, x384, x386, &x407);
- { uint64_t x410; uint8_t x411 = _addcarryx_u64(x408, x387, x389, &x410);
- { uint64_t x413; uint8_t x414 = _addcarryx_u64(x411, x390, x392, &x413);
- { uint64_t x416; uint8_t x417 = _addcarryx_u64(x414, x393, x395, &x416);
- { uint64_t x419; uint8_t x420 = _addcarryx_u64(x417, x396, x398, &x419);
- { uint64_t x422; uint8_t x423 = _addcarryx_u64(x420, x399, x401, &x422);
- { uint64_t x425; uint8_t x426 = _addcarryx_u64(x423, x402, x404, &x425);
- { uint64_t x428; uint8_t _ = _addcarryx_u64(0x0, x426, x405, &x428);
- { uint64_t _; uint8_t x432 = _addcarryx_u64(0x0, x356, x383, &_);
- { uint64_t x434; uint8_t x435 = _addcarryx_u64(x432, x359, x407, &x434);
- { uint64_t x437; uint8_t x438 = _addcarryx_u64(x435, x362, x410, &x437);
- { uint64_t x440; uint8_t x441 = _addcarryx_u64(x438, x365, x413, &x440);
- { uint64_t x443; uint8_t x444 = _addcarryx_u64(x441, x368, x416, &x443);
- { uint64_t x446; uint8_t x447 = _addcarryx_u64(x444, x371, x419, &x446);
- { uint64_t x449; uint8_t x450 = _addcarryx_u64(x447, x374, x422, &x449);
- { uint64_t x452; uint8_t x453 = _addcarryx_u64(x450, x377, x425, &x452);
- { uint64_t x455; uint8_t x456 = _addcarryx_u64(x453, x380, x428, &x455);
- { uint8_t x457 = (x456 + x381);
- { uint64_t x460; uint64_t x459 = _mulx_u64(x11, x19, &x460);
- { uint64_t x463; uint64_t x462 = _mulx_u64(x11, x21, &x463);
- { uint64_t x466; uint64_t x465 = _mulx_u64(x11, x23, &x466);
- { uint64_t x469; uint64_t x468 = _mulx_u64(x11, x25, &x469);
- { uint64_t x472; uint64_t x471 = _mulx_u64(x11, x27, &x472);
- { uint64_t x475; uint64_t x474 = _mulx_u64(x11, x29, &x475);
- { uint64_t x478; uint64_t x477 = _mulx_u64(x11, x31, &x478);
- { uint64_t x481; uint64_t x480 = _mulx_u64(x11, x30, &x481);
- { uint64_t x483; uint8_t x484 = _addcarryx_u64(0x0, x460, x462, &x483);
- { uint64_t x486; uint8_t x487 = _addcarryx_u64(x484, x463, x465, &x486);
- { uint64_t x489; uint8_t x490 = _addcarryx_u64(x487, x466, x468, &x489);
- { uint64_t x492; uint8_t x493 = _addcarryx_u64(x490, x469, x471, &x492);
- { uint64_t x495; uint8_t x496 = _addcarryx_u64(x493, x472, x474, &x495);
- { uint64_t x498; uint8_t x499 = _addcarryx_u64(x496, x475, x477, &x498);
- { uint64_t x501; uint8_t x502 = _addcarryx_u64(x499, x478, x480, &x501);
- { uint64_t x504; uint8_t _ = _addcarryx_u64(0x0, x502, x481, &x504);
- { uint64_t x507; uint8_t x508 = _addcarryx_u64(0x0, x434, x459, &x507);
- { uint64_t x510; uint8_t x511 = _addcarryx_u64(x508, x437, x483, &x510);
- { uint64_t x513; uint8_t x514 = _addcarryx_u64(x511, x440, x486, &x513);
- { uint64_t x516; uint8_t x517 = _addcarryx_u64(x514, x443, x489, &x516);
- { uint64_t x519; uint8_t x520 = _addcarryx_u64(x517, x446, x492, &x519);
- { uint64_t x522; uint8_t x523 = _addcarryx_u64(x520, x449, x495, &x522);
- { uint64_t x525; uint8_t x526 = _addcarryx_u64(x523, x452, x498, &x525);
- { uint64_t x528; uint8_t x529 = _addcarryx_u64(x526, x455, x501, &x528);
- { uint64_t x531; uint8_t x532 = _addcarryx_u64(x529, x457, x504, &x531);
- { uint64_t x535; uint64_t x534 = _mulx_u64(x507, 0xffffffffffffffffL, &x535);
- { uint64_t x538; uint64_t x537 = _mulx_u64(x507, 0xffffffffffffffffL, &x538);
- { uint64_t x541; uint64_t x540 = _mulx_u64(x507, 0xffffffffffffffffL, &x541);
- { uint64_t x544; uint64_t x543 = _mulx_u64(x507, 0xffffffffffffffffL, &x544);
- { uint64_t x547; uint64_t x546 = _mulx_u64(x507, 0xffffffffffffffffL, &x547);
- { uint64_t x550; uint64_t x549 = _mulx_u64(x507, 0xffffffffffffffffL, &x550);
- { uint64_t x553; uint64_t x552 = _mulx_u64(x507, 0xffffffffffffffffL, &x553);
- { uint64_t x556; uint64_t x555 = _mulx_u64(x507, 0x3eddffffffffffff, &x556);
- { uint64_t x558; uint8_t x559 = _addcarryx_u64(0x0, x535, x537, &x558);
- { uint64_t x561; uint8_t x562 = _addcarryx_u64(x559, x538, x540, &x561);
- { uint64_t x564; uint8_t x565 = _addcarryx_u64(x562, x541, x543, &x564);
- { uint64_t x567; uint8_t x568 = _addcarryx_u64(x565, x544, x546, &x567);
- { uint64_t x570; uint8_t x571 = _addcarryx_u64(x568, x547, x549, &x570);
- { uint64_t x573; uint8_t x574 = _addcarryx_u64(x571, x550, x552, &x573);
- { uint64_t x576; uint8_t x577 = _addcarryx_u64(x574, x553, x555, &x576);
- { uint64_t x579; uint8_t _ = _addcarryx_u64(0x0, x577, x556, &x579);
- { uint64_t _; uint8_t x583 = _addcarryx_u64(0x0, x507, x534, &_);
- { uint64_t x585; uint8_t x586 = _addcarryx_u64(x583, x510, x558, &x585);
- { uint64_t x588; uint8_t x589 = _addcarryx_u64(x586, x513, x561, &x588);
- { uint64_t x591; uint8_t x592 = _addcarryx_u64(x589, x516, x564, &x591);
- { uint64_t x594; uint8_t x595 = _addcarryx_u64(x592, x519, x567, &x594);
- { uint64_t x597; uint8_t x598 = _addcarryx_u64(x595, x522, x570, &x597);
- { uint64_t x600; uint8_t x601 = _addcarryx_u64(x598, x525, x573, &x600);
- { uint64_t x603; uint8_t x604 = _addcarryx_u64(x601, x528, x576, &x603);
- { uint64_t x606; uint8_t x607 = _addcarryx_u64(x604, x531, x579, &x606);
- { uint8_t x608 = (x607 + x532);
- { uint64_t x611; uint64_t x610 = _mulx_u64(x13, x19, &x611);
- { uint64_t x614; uint64_t x613 = _mulx_u64(x13, x21, &x614);
- { uint64_t x617; uint64_t x616 = _mulx_u64(x13, x23, &x617);
- { uint64_t x620; uint64_t x619 = _mulx_u64(x13, x25, &x620);
- { uint64_t x623; uint64_t x622 = _mulx_u64(x13, x27, &x623);
- { uint64_t x626; uint64_t x625 = _mulx_u64(x13, x29, &x626);
- { uint64_t x629; uint64_t x628 = _mulx_u64(x13, x31, &x629);
- { uint64_t x632; uint64_t x631 = _mulx_u64(x13, x30, &x632);
- { uint64_t x634; uint8_t x635 = _addcarryx_u64(0x0, x611, x613, &x634);
- { uint64_t x637; uint8_t x638 = _addcarryx_u64(x635, x614, x616, &x637);
- { uint64_t x640; uint8_t x641 = _addcarryx_u64(x638, x617, x619, &x640);
- { uint64_t x643; uint8_t x644 = _addcarryx_u64(x641, x620, x622, &x643);
- { uint64_t x646; uint8_t x647 = _addcarryx_u64(x644, x623, x625, &x646);
- { uint64_t x649; uint8_t x650 = _addcarryx_u64(x647, x626, x628, &x649);
- { uint64_t x652; uint8_t x653 = _addcarryx_u64(x650, x629, x631, &x652);
- { uint64_t x655; uint8_t _ = _addcarryx_u64(0x0, x653, x632, &x655);
- { uint64_t x658; uint8_t x659 = _addcarryx_u64(0x0, x585, x610, &x658);
- { uint64_t x661; uint8_t x662 = _addcarryx_u64(x659, x588, x634, &x661);
- { uint64_t x664; uint8_t x665 = _addcarryx_u64(x662, x591, x637, &x664);
- { uint64_t x667; uint8_t x668 = _addcarryx_u64(x665, x594, x640, &x667);
- { uint64_t x670; uint8_t x671 = _addcarryx_u64(x668, x597, x643, &x670);
- { uint64_t x673; uint8_t x674 = _addcarryx_u64(x671, x600, x646, &x673);
- { uint64_t x676; uint8_t x677 = _addcarryx_u64(x674, x603, x649, &x676);
- { uint64_t x679; uint8_t x680 = _addcarryx_u64(x677, x606, x652, &x679);
- { uint64_t x682; uint8_t x683 = _addcarryx_u64(x680, x608, x655, &x682);
- { uint64_t x686; uint64_t x685 = _mulx_u64(x658, 0xffffffffffffffffL, &x686);
- { uint64_t x689; uint64_t x688 = _mulx_u64(x658, 0xffffffffffffffffL, &x689);
- { uint64_t x692; uint64_t x691 = _mulx_u64(x658, 0xffffffffffffffffL, &x692);
- { uint64_t x695; uint64_t x694 = _mulx_u64(x658, 0xffffffffffffffffL, &x695);
- { uint64_t x698; uint64_t x697 = _mulx_u64(x658, 0xffffffffffffffffL, &x698);
- { uint64_t x701; uint64_t x700 = _mulx_u64(x658, 0xffffffffffffffffL, &x701);
- { uint64_t x704; uint64_t x703 = _mulx_u64(x658, 0xffffffffffffffffL, &x704);
- { uint64_t x707; uint64_t x706 = _mulx_u64(x658, 0x3eddffffffffffff, &x707);
- { uint64_t x709; uint8_t x710 = _addcarryx_u64(0x0, x686, x688, &x709);
- { uint64_t x712; uint8_t x713 = _addcarryx_u64(x710, x689, x691, &x712);
- { uint64_t x715; uint8_t x716 = _addcarryx_u64(x713, x692, x694, &x715);
- { uint64_t x718; uint8_t x719 = _addcarryx_u64(x716, x695, x697, &x718);
- { uint64_t x721; uint8_t x722 = _addcarryx_u64(x719, x698, x700, &x721);
- { uint64_t x724; uint8_t x725 = _addcarryx_u64(x722, x701, x703, &x724);
- { uint64_t x727; uint8_t x728 = _addcarryx_u64(x725, x704, x706, &x727);
- { uint64_t x730; uint8_t _ = _addcarryx_u64(0x0, x728, x707, &x730);
- { uint64_t _; uint8_t x734 = _addcarryx_u64(0x0, x658, x685, &_);
- { uint64_t x736; uint8_t x737 = _addcarryx_u64(x734, x661, x709, &x736);
- { uint64_t x739; uint8_t x740 = _addcarryx_u64(x737, x664, x712, &x739);
- { uint64_t x742; uint8_t x743 = _addcarryx_u64(x740, x667, x715, &x742);
- { uint64_t x745; uint8_t x746 = _addcarryx_u64(x743, x670, x718, &x745);
- { uint64_t x748; uint8_t x749 = _addcarryx_u64(x746, x673, x721, &x748);
- { uint64_t x751; uint8_t x752 = _addcarryx_u64(x749, x676, x724, &x751);
- { uint64_t x754; uint8_t x755 = _addcarryx_u64(x752, x679, x727, &x754);
- { uint64_t x757; uint8_t x758 = _addcarryx_u64(x755, x682, x730, &x757);
- { uint8_t x759 = (x758 + x683);
- { uint64_t x762; uint64_t x761 = _mulx_u64(x15, x19, &x762);
- { uint64_t x765; uint64_t x764 = _mulx_u64(x15, x21, &x765);
- { uint64_t x768; uint64_t x767 = _mulx_u64(x15, x23, &x768);
- { uint64_t x771; uint64_t x770 = _mulx_u64(x15, x25, &x771);
- { uint64_t x774; uint64_t x773 = _mulx_u64(x15, x27, &x774);
- { uint64_t x777; uint64_t x776 = _mulx_u64(x15, x29, &x777);
- { uint64_t x780; uint64_t x779 = _mulx_u64(x15, x31, &x780);
- { uint64_t x783; uint64_t x782 = _mulx_u64(x15, x30, &x783);
- { uint64_t x785; uint8_t x786 = _addcarryx_u64(0x0, x762, x764, &x785);
- { uint64_t x788; uint8_t x789 = _addcarryx_u64(x786, x765, x767, &x788);
- { uint64_t x791; uint8_t x792 = _addcarryx_u64(x789, x768, x770, &x791);
- { uint64_t x794; uint8_t x795 = _addcarryx_u64(x792, x771, x773, &x794);
- { uint64_t x797; uint8_t x798 = _addcarryx_u64(x795, x774, x776, &x797);
- { uint64_t x800; uint8_t x801 = _addcarryx_u64(x798, x777, x779, &x800);
- { uint64_t x803; uint8_t x804 = _addcarryx_u64(x801, x780, x782, &x803);
- { uint64_t x806; uint8_t _ = _addcarryx_u64(0x0, x804, x783, &x806);
- { uint64_t x809; uint8_t x810 = _addcarryx_u64(0x0, x736, x761, &x809);
- { uint64_t x812; uint8_t x813 = _addcarryx_u64(x810, x739, x785, &x812);
- { uint64_t x815; uint8_t x816 = _addcarryx_u64(x813, x742, x788, &x815);
- { uint64_t x818; uint8_t x819 = _addcarryx_u64(x816, x745, x791, &x818);
- { uint64_t x821; uint8_t x822 = _addcarryx_u64(x819, x748, x794, &x821);
- { uint64_t x824; uint8_t x825 = _addcarryx_u64(x822, x751, x797, &x824);
- { uint64_t x827; uint8_t x828 = _addcarryx_u64(x825, x754, x800, &x827);
- { uint64_t x830; uint8_t x831 = _addcarryx_u64(x828, x757, x803, &x830);
- { uint64_t x833; uint8_t x834 = _addcarryx_u64(x831, x759, x806, &x833);
- { uint64_t x837; uint64_t x836 = _mulx_u64(x809, 0xffffffffffffffffL, &x837);
- { uint64_t x840; uint64_t x839 = _mulx_u64(x809, 0xffffffffffffffffL, &x840);
- { uint64_t x843; uint64_t x842 = _mulx_u64(x809, 0xffffffffffffffffL, &x843);
- { uint64_t x846; uint64_t x845 = _mulx_u64(x809, 0xffffffffffffffffL, &x846);
- { uint64_t x849; uint64_t x848 = _mulx_u64(x809, 0xffffffffffffffffL, &x849);
- { uint64_t x852; uint64_t x851 = _mulx_u64(x809, 0xffffffffffffffffL, &x852);
- { uint64_t x855; uint64_t x854 = _mulx_u64(x809, 0xffffffffffffffffL, &x855);
- { uint64_t x858; uint64_t x857 = _mulx_u64(x809, 0x3eddffffffffffff, &x858);
- { uint64_t x860; uint8_t x861 = _addcarryx_u64(0x0, x837, x839, &x860);
- { uint64_t x863; uint8_t x864 = _addcarryx_u64(x861, x840, x842, &x863);
- { uint64_t x866; uint8_t x867 = _addcarryx_u64(x864, x843, x845, &x866);
- { uint64_t x869; uint8_t x870 = _addcarryx_u64(x867, x846, x848, &x869);
- { uint64_t x872; uint8_t x873 = _addcarryx_u64(x870, x849, x851, &x872);
- { uint64_t x875; uint8_t x876 = _addcarryx_u64(x873, x852, x854, &x875);
- { uint64_t x878; uint8_t x879 = _addcarryx_u64(x876, x855, x857, &x878);
- { uint64_t x881; uint8_t _ = _addcarryx_u64(0x0, x879, x858, &x881);
- { uint64_t _; uint8_t x885 = _addcarryx_u64(0x0, x809, x836, &_);
- { uint64_t x887; uint8_t x888 = _addcarryx_u64(x885, x812, x860, &x887);
- { uint64_t x890; uint8_t x891 = _addcarryx_u64(x888, x815, x863, &x890);
- { uint64_t x893; uint8_t x894 = _addcarryx_u64(x891, x818, x866, &x893);
- { uint64_t x896; uint8_t x897 = _addcarryx_u64(x894, x821, x869, &x896);
- { uint64_t x899; uint8_t x900 = _addcarryx_u64(x897, x824, x872, &x899);
- { uint64_t x902; uint8_t x903 = _addcarryx_u64(x900, x827, x875, &x902);
- { uint64_t x905; uint8_t x906 = _addcarryx_u64(x903, x830, x878, &x905);
- { uint64_t x908; uint8_t x909 = _addcarryx_u64(x906, x833, x881, &x908);
- { uint8_t x910 = (x909 + x834);
- { uint64_t x913; uint64_t x912 = _mulx_u64(x17, x19, &x913);
- { uint64_t x916; uint64_t x915 = _mulx_u64(x17, x21, &x916);
- { uint64_t x919; uint64_t x918 = _mulx_u64(x17, x23, &x919);
- { uint64_t x922; uint64_t x921 = _mulx_u64(x17, x25, &x922);
- { uint64_t x925; uint64_t x924 = _mulx_u64(x17, x27, &x925);
- { uint64_t x928; uint64_t x927 = _mulx_u64(x17, x29, &x928);
- { uint64_t x931; uint64_t x930 = _mulx_u64(x17, x31, &x931);
- { uint64_t x934; uint64_t x933 = _mulx_u64(x17, x30, &x934);
- { uint64_t x936; uint8_t x937 = _addcarryx_u64(0x0, x913, x915, &x936);
- { uint64_t x939; uint8_t x940 = _addcarryx_u64(x937, x916, x918, &x939);
- { uint64_t x942; uint8_t x943 = _addcarryx_u64(x940, x919, x921, &x942);
- { uint64_t x945; uint8_t x946 = _addcarryx_u64(x943, x922, x924, &x945);
- { uint64_t x948; uint8_t x949 = _addcarryx_u64(x946, x925, x927, &x948);
- { uint64_t x951; uint8_t x952 = _addcarryx_u64(x949, x928, x930, &x951);
- { uint64_t x954; uint8_t x955 = _addcarryx_u64(x952, x931, x933, &x954);
- { uint64_t x957; uint8_t _ = _addcarryx_u64(0x0, x955, x934, &x957);
- { uint64_t x960; uint8_t x961 = _addcarryx_u64(0x0, x887, x912, &x960);
- { uint64_t x963; uint8_t x964 = _addcarryx_u64(x961, x890, x936, &x963);
- { uint64_t x966; uint8_t x967 = _addcarryx_u64(x964, x893, x939, &x966);
- { uint64_t x969; uint8_t x970 = _addcarryx_u64(x967, x896, x942, &x969);
- { uint64_t x972; uint8_t x973 = _addcarryx_u64(x970, x899, x945, &x972);
- { uint64_t x975; uint8_t x976 = _addcarryx_u64(x973, x902, x948, &x975);
- { uint64_t x978; uint8_t x979 = _addcarryx_u64(x976, x905, x951, &x978);
- { uint64_t x981; uint8_t x982 = _addcarryx_u64(x979, x908, x954, &x981);
- { uint64_t x984; uint8_t x985 = _addcarryx_u64(x982, x910, x957, &x984);
- { uint64_t x988; uint64_t x987 = _mulx_u64(x960, 0xffffffffffffffffL, &x988);
- { uint64_t x991; uint64_t x990 = _mulx_u64(x960, 0xffffffffffffffffL, &x991);
- { uint64_t x994; uint64_t x993 = _mulx_u64(x960, 0xffffffffffffffffL, &x994);
- { uint64_t x997; uint64_t x996 = _mulx_u64(x960, 0xffffffffffffffffL, &x997);
- { uint64_t x1000; uint64_t x999 = _mulx_u64(x960, 0xffffffffffffffffL, &x1000);
- { uint64_t x1003; uint64_t x1002 = _mulx_u64(x960, 0xffffffffffffffffL, &x1003);
- { uint64_t x1006; uint64_t x1005 = _mulx_u64(x960, 0xffffffffffffffffL, &x1006);
- { uint64_t x1009; uint64_t x1008 = _mulx_u64(x960, 0x3eddffffffffffff, &x1009);
- { uint64_t x1011; uint8_t x1012 = _addcarryx_u64(0x0, x988, x990, &x1011);
- { uint64_t x1014; uint8_t x1015 = _addcarryx_u64(x1012, x991, x993, &x1014);
- { uint64_t x1017; uint8_t x1018 = _addcarryx_u64(x1015, x994, x996, &x1017);
- { uint64_t x1020; uint8_t x1021 = _addcarryx_u64(x1018, x997, x999, &x1020);
- { uint64_t x1023; uint8_t x1024 = _addcarryx_u64(x1021, x1000, x1002, &x1023);
- { uint64_t x1026; uint8_t x1027 = _addcarryx_u64(x1024, x1003, x1005, &x1026);
- { uint64_t x1029; uint8_t x1030 = _addcarryx_u64(x1027, x1006, x1008, &x1029);
- { uint64_t x1032; uint8_t _ = _addcarryx_u64(0x0, x1030, x1009, &x1032);
- { uint64_t _; uint8_t x1036 = _addcarryx_u64(0x0, x960, x987, &_);
- { uint64_t x1038; uint8_t x1039 = _addcarryx_u64(x1036, x963, x1011, &x1038);
- { uint64_t x1041; uint8_t x1042 = _addcarryx_u64(x1039, x966, x1014, &x1041);
- { uint64_t x1044; uint8_t x1045 = _addcarryx_u64(x1042, x969, x1017, &x1044);
- { uint64_t x1047; uint8_t x1048 = _addcarryx_u64(x1045, x972, x1020, &x1047);
- { uint64_t x1050; uint8_t x1051 = _addcarryx_u64(x1048, x975, x1023, &x1050);
- { uint64_t x1053; uint8_t x1054 = _addcarryx_u64(x1051, x978, x1026, &x1053);
- { uint64_t x1056; uint8_t x1057 = _addcarryx_u64(x1054, x981, x1029, &x1056);
- { uint64_t x1059; uint8_t x1060 = _addcarryx_u64(x1057, x984, x1032, &x1059);
- { uint8_t x1061 = (x1060 + x985);
- { uint64_t x1064; uint64_t x1063 = _mulx_u64(x16, x19, &x1064);
- { uint64_t x1067; uint64_t x1066 = _mulx_u64(x16, x21, &x1067);
- { uint64_t x1070; uint64_t x1069 = _mulx_u64(x16, x23, &x1070);
- { uint64_t x1073; uint64_t x1072 = _mulx_u64(x16, x25, &x1073);
- { uint64_t x1076; uint64_t x1075 = _mulx_u64(x16, x27, &x1076);
- { uint64_t x1079; uint64_t x1078 = _mulx_u64(x16, x29, &x1079);
- { uint64_t x1082; uint64_t x1081 = _mulx_u64(x16, x31, &x1082);
- { uint64_t x1085; uint64_t x1084 = _mulx_u64(x16, x30, &x1085);
- { uint64_t x1087; uint8_t x1088 = _addcarryx_u64(0x0, x1064, x1066, &x1087);
- { uint64_t x1090; uint8_t x1091 = _addcarryx_u64(x1088, x1067, x1069, &x1090);
- { uint64_t x1093; uint8_t x1094 = _addcarryx_u64(x1091, x1070, x1072, &x1093);
- { uint64_t x1096; uint8_t x1097 = _addcarryx_u64(x1094, x1073, x1075, &x1096);
- { uint64_t x1099; uint8_t x1100 = _addcarryx_u64(x1097, x1076, x1078, &x1099);
- { uint64_t x1102; uint8_t x1103 = _addcarryx_u64(x1100, x1079, x1081, &x1102);
- { uint64_t x1105; uint8_t x1106 = _addcarryx_u64(x1103, x1082, x1084, &x1105);
- { uint64_t x1108; uint8_t _ = _addcarryx_u64(0x0, x1106, x1085, &x1108);
- { uint64_t x1111; uint8_t x1112 = _addcarryx_u64(0x0, x1038, x1063, &x1111);
- { uint64_t x1114; uint8_t x1115 = _addcarryx_u64(x1112, x1041, x1087, &x1114);
- { uint64_t x1117; uint8_t x1118 = _addcarryx_u64(x1115, x1044, x1090, &x1117);
- { uint64_t x1120; uint8_t x1121 = _addcarryx_u64(x1118, x1047, x1093, &x1120);
- { uint64_t x1123; uint8_t x1124 = _addcarryx_u64(x1121, x1050, x1096, &x1123);
- { uint64_t x1126; uint8_t x1127 = _addcarryx_u64(x1124, x1053, x1099, &x1126);
- { uint64_t x1129; uint8_t x1130 = _addcarryx_u64(x1127, x1056, x1102, &x1129);
- { uint64_t x1132; uint8_t x1133 = _addcarryx_u64(x1130, x1059, x1105, &x1132);
- { uint64_t x1135; uint8_t x1136 = _addcarryx_u64(x1133, x1061, x1108, &x1135);
- { uint64_t x1139; uint64_t x1138 = _mulx_u64(x1111, 0xffffffffffffffffL, &x1139);
- { uint64_t x1142; uint64_t x1141 = _mulx_u64(x1111, 0xffffffffffffffffL, &x1142);
- { uint64_t x1145; uint64_t x1144 = _mulx_u64(x1111, 0xffffffffffffffffL, &x1145);
- { uint64_t x1148; uint64_t x1147 = _mulx_u64(x1111, 0xffffffffffffffffL, &x1148);
- { uint64_t x1151; uint64_t x1150 = _mulx_u64(x1111, 0xffffffffffffffffL, &x1151);
- { uint64_t x1154; uint64_t x1153 = _mulx_u64(x1111, 0xffffffffffffffffL, &x1154);
- { uint64_t x1157; uint64_t x1156 = _mulx_u64(x1111, 0xffffffffffffffffL, &x1157);
- { uint64_t x1160; uint64_t x1159 = _mulx_u64(x1111, 0x3eddffffffffffff, &x1160);
- { uint64_t x1162; uint8_t x1163 = _addcarryx_u64(0x0, x1139, x1141, &x1162);
- { uint64_t x1165; uint8_t x1166 = _addcarryx_u64(x1163, x1142, x1144, &x1165);
- { uint64_t x1168; uint8_t x1169 = _addcarryx_u64(x1166, x1145, x1147, &x1168);
- { uint64_t x1171; uint8_t x1172 = _addcarryx_u64(x1169, x1148, x1150, &x1171);
- { uint64_t x1174; uint8_t x1175 = _addcarryx_u64(x1172, x1151, x1153, &x1174);
- { uint64_t x1177; uint8_t x1178 = _addcarryx_u64(x1175, x1154, x1156, &x1177);
- { uint64_t x1180; uint8_t x1181 = _addcarryx_u64(x1178, x1157, x1159, &x1180);
- { uint64_t x1183; uint8_t _ = _addcarryx_u64(0x0, x1181, x1160, &x1183);
- { uint64_t _; uint8_t x1187 = _addcarryx_u64(0x0, x1111, x1138, &_);
- { uint64_t x1189; uint8_t x1190 = _addcarryx_u64(x1187, x1114, x1162, &x1189);
- { uint64_t x1192; uint8_t x1193 = _addcarryx_u64(x1190, x1117, x1165, &x1192);
- { uint64_t x1195; uint8_t x1196 = _addcarryx_u64(x1193, x1120, x1168, &x1195);
- { uint64_t x1198; uint8_t x1199 = _addcarryx_u64(x1196, x1123, x1171, &x1198);
- { uint64_t x1201; uint8_t x1202 = _addcarryx_u64(x1199, x1126, x1174, &x1201);
- { uint64_t x1204; uint8_t x1205 = _addcarryx_u64(x1202, x1129, x1177, &x1204);
- { uint64_t x1207; uint8_t x1208 = _addcarryx_u64(x1205, x1132, x1180, &x1207);
- { uint64_t x1210; uint8_t x1211 = _addcarryx_u64(x1208, x1135, x1183, &x1210);
- { uint8_t x1212 = (x1211 + x1136);
- { uint64_t x1214; uint8_t x1215 = _subborrow_u64(0x0, x1189, 0xffffffffffffffffL, &x1214);
- { uint64_t x1217; uint8_t x1218 = _subborrow_u64(x1215, x1192, 0xffffffffffffffffL, &x1217);
- { uint64_t x1220; uint8_t x1221 = _subborrow_u64(x1218, x1195, 0xffffffffffffffffL, &x1220);
- { uint64_t x1223; uint8_t x1224 = _subborrow_u64(x1221, x1198, 0xffffffffffffffffL, &x1223);
- { uint64_t x1226; uint8_t x1227 = _subborrow_u64(x1224, x1201, 0xffffffffffffffffL, &x1226);
- { uint64_t x1229; uint8_t x1230 = _subborrow_u64(x1227, x1204, 0xffffffffffffffffL, &x1229);
- { uint64_t x1232; uint8_t x1233 = _subborrow_u64(x1230, x1207, 0xffffffffffffffffL, &x1232);
- { uint64_t x1235; uint8_t x1236 = _subborrow_u64(x1233, x1210, 0x3eddffffffffffff, &x1235);
- { uint64_t _; uint8_t x1239 = _subborrow_u64(x1236, x1212, 0x0, &_);
- { uint64_t x1240 = cmovznz64(x1239, x1235, x1210);
- { uint64_t x1241 = cmovznz64(x1239, x1232, x1207);
- { uint64_t x1242 = cmovznz64(x1239, x1229, x1204);
- { uint64_t x1243 = cmovznz64(x1239, x1226, x1201);
- { uint64_t x1244 = cmovznz64(x1239, x1223, x1198);
- { uint64_t x1245 = cmovznz64(x1239, x1220, x1195);
- { uint64_t x1246 = cmovznz64(x1239, x1217, x1192);
- { uint64_t x1247 = cmovznz64(x1239, x1214, x1189);
- out[0] = x1247;
- out[1] = x1246;
- out[2] = x1245;
- out[3] = x1244;
- out[4] = x1243;
- out[5] = x1242;
- out[6] = x1241;
- out[7] = x1240;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/femul.v b/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/femul.v
deleted file mode 100644
index f374b9e73..000000000
--- a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e510m290x2e496m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/femulDisplay.log b/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/femulDisplay.log
deleted file mode 100644
index f5fee1792..000000000
--- a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,423 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x33, uint64_t x34 = mulx_u64(x5, x19);
- uint64_t x36, uint64_t x37 = mulx_u64(x5, x21);
- uint64_t x39, uint64_t x40 = mulx_u64(x5, x23);
- uint64_t x42, uint64_t x43 = mulx_u64(x5, x25);
- uint64_t x45, uint64_t x46 = mulx_u64(x5, x27);
- uint64_t x48, uint64_t x49 = mulx_u64(x5, x29);
- uint64_t x51, uint64_t x52 = mulx_u64(x5, x31);
- uint64_t x54, uint64_t x55 = mulx_u64(x5, x30);
- uint64_t x57, uint8_t x58 = addcarryx_u64(0x0, x34, x36);
- uint64_t x60, uint8_t x61 = addcarryx_u64(x58, x37, x39);
- uint64_t x63, uint8_t x64 = addcarryx_u64(x61, x40, x42);
- uint64_t x66, uint8_t x67 = addcarryx_u64(x64, x43, x45);
- uint64_t x69, uint8_t x70 = addcarryx_u64(x67, x46, x48);
- uint64_t x72, uint8_t x73 = addcarryx_u64(x70, x49, x51);
- uint64_t x75, uint8_t x76 = addcarryx_u64(x73, x52, x54);
- uint64_t x78, uint8_t _ = addcarryx_u64(0x0, x76, x55);
- uint64_t x81, uint64_t x82 = mulx_u64(x33, 0xffffffffffffffffL);
- uint64_t x84, uint64_t x85 = mulx_u64(x33, 0xffffffffffffffffL);
- uint64_t x87, uint64_t x88 = mulx_u64(x33, 0xffffffffffffffffL);
- uint64_t x90, uint64_t x91 = mulx_u64(x33, 0xffffffffffffffffL);
- uint64_t x93, uint64_t x94 = mulx_u64(x33, 0xffffffffffffffffL);
- uint64_t x96, uint64_t x97 = mulx_u64(x33, 0xffffffffffffffffL);
- uint64_t x99, uint64_t x100 = mulx_u64(x33, 0xffffffffffffffffL);
- uint64_t x102, uint64_t x103 = mulx_u64(x33, 0x3eddffffffffffff);
- uint64_t x105, uint8_t x106 = addcarryx_u64(0x0, x82, x84);
- uint64_t x108, uint8_t x109 = addcarryx_u64(x106, x85, x87);
- uint64_t x111, uint8_t x112 = addcarryx_u64(x109, x88, x90);
- uint64_t x114, uint8_t x115 = addcarryx_u64(x112, x91, x93);
- uint64_t x117, uint8_t x118 = addcarryx_u64(x115, x94, x96);
- uint64_t x120, uint8_t x121 = addcarryx_u64(x118, x97, x99);
- uint64_t x123, uint8_t x124 = addcarryx_u64(x121, x100, x102);
- uint64_t x126, uint8_t _ = addcarryx_u64(0x0, x124, x103);
- uint64_t _, uint8_t x130 = addcarryx_u64(0x0, x33, x81);
- uint64_t x132, uint8_t x133 = addcarryx_u64(x130, x57, x105);
- uint64_t x135, uint8_t x136 = addcarryx_u64(x133, x60, x108);
- uint64_t x138, uint8_t x139 = addcarryx_u64(x136, x63, x111);
- uint64_t x141, uint8_t x142 = addcarryx_u64(x139, x66, x114);
- uint64_t x144, uint8_t x145 = addcarryx_u64(x142, x69, x117);
- uint64_t x147, uint8_t x148 = addcarryx_u64(x145, x72, x120);
- uint64_t x150, uint8_t x151 = addcarryx_u64(x148, x75, x123);
- uint64_t x153, uint8_t x154 = addcarryx_u64(x151, x78, x126);
- uint8_t x155 = (x154 + 0x0);
- uint64_t x157, uint64_t x158 = mulx_u64(x7, x19);
- uint64_t x160, uint64_t x161 = mulx_u64(x7, x21);
- uint64_t x163, uint64_t x164 = mulx_u64(x7, x23);
- uint64_t x166, uint64_t x167 = mulx_u64(x7, x25);
- uint64_t x169, uint64_t x170 = mulx_u64(x7, x27);
- uint64_t x172, uint64_t x173 = mulx_u64(x7, x29);
- uint64_t x175, uint64_t x176 = mulx_u64(x7, x31);
- uint64_t x178, uint64_t x179 = mulx_u64(x7, x30);
- uint64_t x181, uint8_t x182 = addcarryx_u64(0x0, x158, x160);
- uint64_t x184, uint8_t x185 = addcarryx_u64(x182, x161, x163);
- uint64_t x187, uint8_t x188 = addcarryx_u64(x185, x164, x166);
- uint64_t x190, uint8_t x191 = addcarryx_u64(x188, x167, x169);
- uint64_t x193, uint8_t x194 = addcarryx_u64(x191, x170, x172);
- uint64_t x196, uint8_t x197 = addcarryx_u64(x194, x173, x175);
- uint64_t x199, uint8_t x200 = addcarryx_u64(x197, x176, x178);
- uint64_t x202, uint8_t _ = addcarryx_u64(0x0, x200, x179);
- uint64_t x205, uint8_t x206 = addcarryx_u64(0x0, x132, x157);
- uint64_t x208, uint8_t x209 = addcarryx_u64(x206, x135, x181);
- uint64_t x211, uint8_t x212 = addcarryx_u64(x209, x138, x184);
- uint64_t x214, uint8_t x215 = addcarryx_u64(x212, x141, x187);
- uint64_t x217, uint8_t x218 = addcarryx_u64(x215, x144, x190);
- uint64_t x220, uint8_t x221 = addcarryx_u64(x218, x147, x193);
- uint64_t x223, uint8_t x224 = addcarryx_u64(x221, x150, x196);
- uint64_t x226, uint8_t x227 = addcarryx_u64(x224, x153, x199);
- uint64_t x229, uint8_t x230 = addcarryx_u64(x227, x155, x202);
- uint64_t x232, uint64_t x233 = mulx_u64(x205, 0xffffffffffffffffL);
- uint64_t x235, uint64_t x236 = mulx_u64(x205, 0xffffffffffffffffL);
- uint64_t x238, uint64_t x239 = mulx_u64(x205, 0xffffffffffffffffL);
- uint64_t x241, uint64_t x242 = mulx_u64(x205, 0xffffffffffffffffL);
- uint64_t x244, uint64_t x245 = mulx_u64(x205, 0xffffffffffffffffL);
- uint64_t x247, uint64_t x248 = mulx_u64(x205, 0xffffffffffffffffL);
- uint64_t x250, uint64_t x251 = mulx_u64(x205, 0xffffffffffffffffL);
- uint64_t x253, uint64_t x254 = mulx_u64(x205, 0x3eddffffffffffff);
- uint64_t x256, uint8_t x257 = addcarryx_u64(0x0, x233, x235);
- uint64_t x259, uint8_t x260 = addcarryx_u64(x257, x236, x238);
- uint64_t x262, uint8_t x263 = addcarryx_u64(x260, x239, x241);
- uint64_t x265, uint8_t x266 = addcarryx_u64(x263, x242, x244);
- uint64_t x268, uint8_t x269 = addcarryx_u64(x266, x245, x247);
- uint64_t x271, uint8_t x272 = addcarryx_u64(x269, x248, x250);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x251, x253);
- uint64_t x277, uint8_t _ = addcarryx_u64(0x0, x275, x254);
- uint64_t _, uint8_t x281 = addcarryx_u64(0x0, x205, x232);
- uint64_t x283, uint8_t x284 = addcarryx_u64(x281, x208, x256);
- uint64_t x286, uint8_t x287 = addcarryx_u64(x284, x211, x259);
- uint64_t x289, uint8_t x290 = addcarryx_u64(x287, x214, x262);
- uint64_t x292, uint8_t x293 = addcarryx_u64(x290, x217, x265);
- uint64_t x295, uint8_t x296 = addcarryx_u64(x293, x220, x268);
- uint64_t x298, uint8_t x299 = addcarryx_u64(x296, x223, x271);
- uint64_t x301, uint8_t x302 = addcarryx_u64(x299, x226, x274);
- uint64_t x304, uint8_t x305 = addcarryx_u64(x302, x229, x277);
- uint8_t x306 = (x305 + x230);
- uint64_t x308, uint64_t x309 = mulx_u64(x9, x19);
- uint64_t x311, uint64_t x312 = mulx_u64(x9, x21);
- uint64_t x314, uint64_t x315 = mulx_u64(x9, x23);
- uint64_t x317, uint64_t x318 = mulx_u64(x9, x25);
- uint64_t x320, uint64_t x321 = mulx_u64(x9, x27);
- uint64_t x323, uint64_t x324 = mulx_u64(x9, x29);
- uint64_t x326, uint64_t x327 = mulx_u64(x9, x31);
- uint64_t x329, uint64_t x330 = mulx_u64(x9, x30);
- uint64_t x332, uint8_t x333 = addcarryx_u64(0x0, x309, x311);
- uint64_t x335, uint8_t x336 = addcarryx_u64(x333, x312, x314);
- uint64_t x338, uint8_t x339 = addcarryx_u64(x336, x315, x317);
- uint64_t x341, uint8_t x342 = addcarryx_u64(x339, x318, x320);
- uint64_t x344, uint8_t x345 = addcarryx_u64(x342, x321, x323);
- uint64_t x347, uint8_t x348 = addcarryx_u64(x345, x324, x326);
- uint64_t x350, uint8_t x351 = addcarryx_u64(x348, x327, x329);
- uint64_t x353, uint8_t _ = addcarryx_u64(0x0, x351, x330);
- uint64_t x356, uint8_t x357 = addcarryx_u64(0x0, x283, x308);
- uint64_t x359, uint8_t x360 = addcarryx_u64(x357, x286, x332);
- uint64_t x362, uint8_t x363 = addcarryx_u64(x360, x289, x335);
- uint64_t x365, uint8_t x366 = addcarryx_u64(x363, x292, x338);
- uint64_t x368, uint8_t x369 = addcarryx_u64(x366, x295, x341);
- uint64_t x371, uint8_t x372 = addcarryx_u64(x369, x298, x344);
- uint64_t x374, uint8_t x375 = addcarryx_u64(x372, x301, x347);
- uint64_t x377, uint8_t x378 = addcarryx_u64(x375, x304, x350);
- uint64_t x380, uint8_t x381 = addcarryx_u64(x378, x306, x353);
- uint64_t x383, uint64_t x384 = mulx_u64(x356, 0xffffffffffffffffL);
- uint64_t x386, uint64_t x387 = mulx_u64(x356, 0xffffffffffffffffL);
- uint64_t x389, uint64_t x390 = mulx_u64(x356, 0xffffffffffffffffL);
- uint64_t x392, uint64_t x393 = mulx_u64(x356, 0xffffffffffffffffL);
- uint64_t x395, uint64_t x396 = mulx_u64(x356, 0xffffffffffffffffL);
- uint64_t x398, uint64_t x399 = mulx_u64(x356, 0xffffffffffffffffL);
- uint64_t x401, uint64_t x402 = mulx_u64(x356, 0xffffffffffffffffL);
- uint64_t x404, uint64_t x405 = mulx_u64(x356, 0x3eddffffffffffff);
- uint64_t x407, uint8_t x408 = addcarryx_u64(0x0, x384, x386);
- uint64_t x410, uint8_t x411 = addcarryx_u64(x408, x387, x389);
- uint64_t x413, uint8_t x414 = addcarryx_u64(x411, x390, x392);
- uint64_t x416, uint8_t x417 = addcarryx_u64(x414, x393, x395);
- uint64_t x419, uint8_t x420 = addcarryx_u64(x417, x396, x398);
- uint64_t x422, uint8_t x423 = addcarryx_u64(x420, x399, x401);
- uint64_t x425, uint8_t x426 = addcarryx_u64(x423, x402, x404);
- uint64_t x428, uint8_t _ = addcarryx_u64(0x0, x426, x405);
- uint64_t _, uint8_t x432 = addcarryx_u64(0x0, x356, x383);
- uint64_t x434, uint8_t x435 = addcarryx_u64(x432, x359, x407);
- uint64_t x437, uint8_t x438 = addcarryx_u64(x435, x362, x410);
- uint64_t x440, uint8_t x441 = addcarryx_u64(x438, x365, x413);
- uint64_t x443, uint8_t x444 = addcarryx_u64(x441, x368, x416);
- uint64_t x446, uint8_t x447 = addcarryx_u64(x444, x371, x419);
- uint64_t x449, uint8_t x450 = addcarryx_u64(x447, x374, x422);
- uint64_t x452, uint8_t x453 = addcarryx_u64(x450, x377, x425);
- uint64_t x455, uint8_t x456 = addcarryx_u64(x453, x380, x428);
- uint8_t x457 = (x456 + x381);
- uint64_t x459, uint64_t x460 = mulx_u64(x11, x19);
- uint64_t x462, uint64_t x463 = mulx_u64(x11, x21);
- uint64_t x465, uint64_t x466 = mulx_u64(x11, x23);
- uint64_t x468, uint64_t x469 = mulx_u64(x11, x25);
- uint64_t x471, uint64_t x472 = mulx_u64(x11, x27);
- uint64_t x474, uint64_t x475 = mulx_u64(x11, x29);
- uint64_t x477, uint64_t x478 = mulx_u64(x11, x31);
- uint64_t x480, uint64_t x481 = mulx_u64(x11, x30);
- uint64_t x483, uint8_t x484 = addcarryx_u64(0x0, x460, x462);
- uint64_t x486, uint8_t x487 = addcarryx_u64(x484, x463, x465);
- uint64_t x489, uint8_t x490 = addcarryx_u64(x487, x466, x468);
- uint64_t x492, uint8_t x493 = addcarryx_u64(x490, x469, x471);
- uint64_t x495, uint8_t x496 = addcarryx_u64(x493, x472, x474);
- uint64_t x498, uint8_t x499 = addcarryx_u64(x496, x475, x477);
- uint64_t x501, uint8_t x502 = addcarryx_u64(x499, x478, x480);
- uint64_t x504, uint8_t _ = addcarryx_u64(0x0, x502, x481);
- uint64_t x507, uint8_t x508 = addcarryx_u64(0x0, x434, x459);
- uint64_t x510, uint8_t x511 = addcarryx_u64(x508, x437, x483);
- uint64_t x513, uint8_t x514 = addcarryx_u64(x511, x440, x486);
- uint64_t x516, uint8_t x517 = addcarryx_u64(x514, x443, x489);
- uint64_t x519, uint8_t x520 = addcarryx_u64(x517, x446, x492);
- uint64_t x522, uint8_t x523 = addcarryx_u64(x520, x449, x495);
- uint64_t x525, uint8_t x526 = addcarryx_u64(x523, x452, x498);
- uint64_t x528, uint8_t x529 = addcarryx_u64(x526, x455, x501);
- uint64_t x531, uint8_t x532 = addcarryx_u64(x529, x457, x504);
- uint64_t x534, uint64_t x535 = mulx_u64(x507, 0xffffffffffffffffL);
- uint64_t x537, uint64_t x538 = mulx_u64(x507, 0xffffffffffffffffL);
- uint64_t x540, uint64_t x541 = mulx_u64(x507, 0xffffffffffffffffL);
- uint64_t x543, uint64_t x544 = mulx_u64(x507, 0xffffffffffffffffL);
- uint64_t x546, uint64_t x547 = mulx_u64(x507, 0xffffffffffffffffL);
- uint64_t x549, uint64_t x550 = mulx_u64(x507, 0xffffffffffffffffL);
- uint64_t x552, uint64_t x553 = mulx_u64(x507, 0xffffffffffffffffL);
- uint64_t x555, uint64_t x556 = mulx_u64(x507, 0x3eddffffffffffff);
- uint64_t x558, uint8_t x559 = addcarryx_u64(0x0, x535, x537);
- uint64_t x561, uint8_t x562 = addcarryx_u64(x559, x538, x540);
- uint64_t x564, uint8_t x565 = addcarryx_u64(x562, x541, x543);
- uint64_t x567, uint8_t x568 = addcarryx_u64(x565, x544, x546);
- uint64_t x570, uint8_t x571 = addcarryx_u64(x568, x547, x549);
- uint64_t x573, uint8_t x574 = addcarryx_u64(x571, x550, x552);
- uint64_t x576, uint8_t x577 = addcarryx_u64(x574, x553, x555);
- uint64_t x579, uint8_t _ = addcarryx_u64(0x0, x577, x556);
- uint64_t _, uint8_t x583 = addcarryx_u64(0x0, x507, x534);
- uint64_t x585, uint8_t x586 = addcarryx_u64(x583, x510, x558);
- uint64_t x588, uint8_t x589 = addcarryx_u64(x586, x513, x561);
- uint64_t x591, uint8_t x592 = addcarryx_u64(x589, x516, x564);
- uint64_t x594, uint8_t x595 = addcarryx_u64(x592, x519, x567);
- uint64_t x597, uint8_t x598 = addcarryx_u64(x595, x522, x570);
- uint64_t x600, uint8_t x601 = addcarryx_u64(x598, x525, x573);
- uint64_t x603, uint8_t x604 = addcarryx_u64(x601, x528, x576);
- uint64_t x606, uint8_t x607 = addcarryx_u64(x604, x531, x579);
- uint8_t x608 = (x607 + x532);
- uint64_t x610, uint64_t x611 = mulx_u64(x13, x19);
- uint64_t x613, uint64_t x614 = mulx_u64(x13, x21);
- uint64_t x616, uint64_t x617 = mulx_u64(x13, x23);
- uint64_t x619, uint64_t x620 = mulx_u64(x13, x25);
- uint64_t x622, uint64_t x623 = mulx_u64(x13, x27);
- uint64_t x625, uint64_t x626 = mulx_u64(x13, x29);
- uint64_t x628, uint64_t x629 = mulx_u64(x13, x31);
- uint64_t x631, uint64_t x632 = mulx_u64(x13, x30);
- uint64_t x634, uint8_t x635 = addcarryx_u64(0x0, x611, x613);
- uint64_t x637, uint8_t x638 = addcarryx_u64(x635, x614, x616);
- uint64_t x640, uint8_t x641 = addcarryx_u64(x638, x617, x619);
- uint64_t x643, uint8_t x644 = addcarryx_u64(x641, x620, x622);
- uint64_t x646, uint8_t x647 = addcarryx_u64(x644, x623, x625);
- uint64_t x649, uint8_t x650 = addcarryx_u64(x647, x626, x628);
- uint64_t x652, uint8_t x653 = addcarryx_u64(x650, x629, x631);
- uint64_t x655, uint8_t _ = addcarryx_u64(0x0, x653, x632);
- uint64_t x658, uint8_t x659 = addcarryx_u64(0x0, x585, x610);
- uint64_t x661, uint8_t x662 = addcarryx_u64(x659, x588, x634);
- uint64_t x664, uint8_t x665 = addcarryx_u64(x662, x591, x637);
- uint64_t x667, uint8_t x668 = addcarryx_u64(x665, x594, x640);
- uint64_t x670, uint8_t x671 = addcarryx_u64(x668, x597, x643);
- uint64_t x673, uint8_t x674 = addcarryx_u64(x671, x600, x646);
- uint64_t x676, uint8_t x677 = addcarryx_u64(x674, x603, x649);
- uint64_t x679, uint8_t x680 = addcarryx_u64(x677, x606, x652);
- uint64_t x682, uint8_t x683 = addcarryx_u64(x680, x608, x655);
- uint64_t x685, uint64_t x686 = mulx_u64(x658, 0xffffffffffffffffL);
- uint64_t x688, uint64_t x689 = mulx_u64(x658, 0xffffffffffffffffL);
- uint64_t x691, uint64_t x692 = mulx_u64(x658, 0xffffffffffffffffL);
- uint64_t x694, uint64_t x695 = mulx_u64(x658, 0xffffffffffffffffL);
- uint64_t x697, uint64_t x698 = mulx_u64(x658, 0xffffffffffffffffL);
- uint64_t x700, uint64_t x701 = mulx_u64(x658, 0xffffffffffffffffL);
- uint64_t x703, uint64_t x704 = mulx_u64(x658, 0xffffffffffffffffL);
- uint64_t x706, uint64_t x707 = mulx_u64(x658, 0x3eddffffffffffff);
- uint64_t x709, uint8_t x710 = addcarryx_u64(0x0, x686, x688);
- uint64_t x712, uint8_t x713 = addcarryx_u64(x710, x689, x691);
- uint64_t x715, uint8_t x716 = addcarryx_u64(x713, x692, x694);
- uint64_t x718, uint8_t x719 = addcarryx_u64(x716, x695, x697);
- uint64_t x721, uint8_t x722 = addcarryx_u64(x719, x698, x700);
- uint64_t x724, uint8_t x725 = addcarryx_u64(x722, x701, x703);
- uint64_t x727, uint8_t x728 = addcarryx_u64(x725, x704, x706);
- uint64_t x730, uint8_t _ = addcarryx_u64(0x0, x728, x707);
- uint64_t _, uint8_t x734 = addcarryx_u64(0x0, x658, x685);
- uint64_t x736, uint8_t x737 = addcarryx_u64(x734, x661, x709);
- uint64_t x739, uint8_t x740 = addcarryx_u64(x737, x664, x712);
- uint64_t x742, uint8_t x743 = addcarryx_u64(x740, x667, x715);
- uint64_t x745, uint8_t x746 = addcarryx_u64(x743, x670, x718);
- uint64_t x748, uint8_t x749 = addcarryx_u64(x746, x673, x721);
- uint64_t x751, uint8_t x752 = addcarryx_u64(x749, x676, x724);
- uint64_t x754, uint8_t x755 = addcarryx_u64(x752, x679, x727);
- uint64_t x757, uint8_t x758 = addcarryx_u64(x755, x682, x730);
- uint8_t x759 = (x758 + x683);
- uint64_t x761, uint64_t x762 = mulx_u64(x15, x19);
- uint64_t x764, uint64_t x765 = mulx_u64(x15, x21);
- uint64_t x767, uint64_t x768 = mulx_u64(x15, x23);
- uint64_t x770, uint64_t x771 = mulx_u64(x15, x25);
- uint64_t x773, uint64_t x774 = mulx_u64(x15, x27);
- uint64_t x776, uint64_t x777 = mulx_u64(x15, x29);
- uint64_t x779, uint64_t x780 = mulx_u64(x15, x31);
- uint64_t x782, uint64_t x783 = mulx_u64(x15, x30);
- uint64_t x785, uint8_t x786 = addcarryx_u64(0x0, x762, x764);
- uint64_t x788, uint8_t x789 = addcarryx_u64(x786, x765, x767);
- uint64_t x791, uint8_t x792 = addcarryx_u64(x789, x768, x770);
- uint64_t x794, uint8_t x795 = addcarryx_u64(x792, x771, x773);
- uint64_t x797, uint8_t x798 = addcarryx_u64(x795, x774, x776);
- uint64_t x800, uint8_t x801 = addcarryx_u64(x798, x777, x779);
- uint64_t x803, uint8_t x804 = addcarryx_u64(x801, x780, x782);
- uint64_t x806, uint8_t _ = addcarryx_u64(0x0, x804, x783);
- uint64_t x809, uint8_t x810 = addcarryx_u64(0x0, x736, x761);
- uint64_t x812, uint8_t x813 = addcarryx_u64(x810, x739, x785);
- uint64_t x815, uint8_t x816 = addcarryx_u64(x813, x742, x788);
- uint64_t x818, uint8_t x819 = addcarryx_u64(x816, x745, x791);
- uint64_t x821, uint8_t x822 = addcarryx_u64(x819, x748, x794);
- uint64_t x824, uint8_t x825 = addcarryx_u64(x822, x751, x797);
- uint64_t x827, uint8_t x828 = addcarryx_u64(x825, x754, x800);
- uint64_t x830, uint8_t x831 = addcarryx_u64(x828, x757, x803);
- uint64_t x833, uint8_t x834 = addcarryx_u64(x831, x759, x806);
- uint64_t x836, uint64_t x837 = mulx_u64(x809, 0xffffffffffffffffL);
- uint64_t x839, uint64_t x840 = mulx_u64(x809, 0xffffffffffffffffL);
- uint64_t x842, uint64_t x843 = mulx_u64(x809, 0xffffffffffffffffL);
- uint64_t x845, uint64_t x846 = mulx_u64(x809, 0xffffffffffffffffL);
- uint64_t x848, uint64_t x849 = mulx_u64(x809, 0xffffffffffffffffL);
- uint64_t x851, uint64_t x852 = mulx_u64(x809, 0xffffffffffffffffL);
- uint64_t x854, uint64_t x855 = mulx_u64(x809, 0xffffffffffffffffL);
- uint64_t x857, uint64_t x858 = mulx_u64(x809, 0x3eddffffffffffff);
- uint64_t x860, uint8_t x861 = addcarryx_u64(0x0, x837, x839);
- uint64_t x863, uint8_t x864 = addcarryx_u64(x861, x840, x842);
- uint64_t x866, uint8_t x867 = addcarryx_u64(x864, x843, x845);
- uint64_t x869, uint8_t x870 = addcarryx_u64(x867, x846, x848);
- uint64_t x872, uint8_t x873 = addcarryx_u64(x870, x849, x851);
- uint64_t x875, uint8_t x876 = addcarryx_u64(x873, x852, x854);
- uint64_t x878, uint8_t x879 = addcarryx_u64(x876, x855, x857);
- uint64_t x881, uint8_t _ = addcarryx_u64(0x0, x879, x858);
- uint64_t _, uint8_t x885 = addcarryx_u64(0x0, x809, x836);
- uint64_t x887, uint8_t x888 = addcarryx_u64(x885, x812, x860);
- uint64_t x890, uint8_t x891 = addcarryx_u64(x888, x815, x863);
- uint64_t x893, uint8_t x894 = addcarryx_u64(x891, x818, x866);
- uint64_t x896, uint8_t x897 = addcarryx_u64(x894, x821, x869);
- uint64_t x899, uint8_t x900 = addcarryx_u64(x897, x824, x872);
- uint64_t x902, uint8_t x903 = addcarryx_u64(x900, x827, x875);
- uint64_t x905, uint8_t x906 = addcarryx_u64(x903, x830, x878);
- uint64_t x908, uint8_t x909 = addcarryx_u64(x906, x833, x881);
- uint8_t x910 = (x909 + x834);
- uint64_t x912, uint64_t x913 = mulx_u64(x17, x19);
- uint64_t x915, uint64_t x916 = mulx_u64(x17, x21);
- uint64_t x918, uint64_t x919 = mulx_u64(x17, x23);
- uint64_t x921, uint64_t x922 = mulx_u64(x17, x25);
- uint64_t x924, uint64_t x925 = mulx_u64(x17, x27);
- uint64_t x927, uint64_t x928 = mulx_u64(x17, x29);
- uint64_t x930, uint64_t x931 = mulx_u64(x17, x31);
- uint64_t x933, uint64_t x934 = mulx_u64(x17, x30);
- uint64_t x936, uint8_t x937 = addcarryx_u64(0x0, x913, x915);
- uint64_t x939, uint8_t x940 = addcarryx_u64(x937, x916, x918);
- uint64_t x942, uint8_t x943 = addcarryx_u64(x940, x919, x921);
- uint64_t x945, uint8_t x946 = addcarryx_u64(x943, x922, x924);
- uint64_t x948, uint8_t x949 = addcarryx_u64(x946, x925, x927);
- uint64_t x951, uint8_t x952 = addcarryx_u64(x949, x928, x930);
- uint64_t x954, uint8_t x955 = addcarryx_u64(x952, x931, x933);
- uint64_t x957, uint8_t _ = addcarryx_u64(0x0, x955, x934);
- uint64_t x960, uint8_t x961 = addcarryx_u64(0x0, x887, x912);
- uint64_t x963, uint8_t x964 = addcarryx_u64(x961, x890, x936);
- uint64_t x966, uint8_t x967 = addcarryx_u64(x964, x893, x939);
- uint64_t x969, uint8_t x970 = addcarryx_u64(x967, x896, x942);
- uint64_t x972, uint8_t x973 = addcarryx_u64(x970, x899, x945);
- uint64_t x975, uint8_t x976 = addcarryx_u64(x973, x902, x948);
- uint64_t x978, uint8_t x979 = addcarryx_u64(x976, x905, x951);
- uint64_t x981, uint8_t x982 = addcarryx_u64(x979, x908, x954);
- uint64_t x984, uint8_t x985 = addcarryx_u64(x982, x910, x957);
- uint64_t x987, uint64_t x988 = mulx_u64(x960, 0xffffffffffffffffL);
- uint64_t x990, uint64_t x991 = mulx_u64(x960, 0xffffffffffffffffL);
- uint64_t x993, uint64_t x994 = mulx_u64(x960, 0xffffffffffffffffL);
- uint64_t x996, uint64_t x997 = mulx_u64(x960, 0xffffffffffffffffL);
- uint64_t x999, uint64_t x1000 = mulx_u64(x960, 0xffffffffffffffffL);
- uint64_t x1002, uint64_t x1003 = mulx_u64(x960, 0xffffffffffffffffL);
- uint64_t x1005, uint64_t x1006 = mulx_u64(x960, 0xffffffffffffffffL);
- uint64_t x1008, uint64_t x1009 = mulx_u64(x960, 0x3eddffffffffffff);
- uint64_t x1011, uint8_t x1012 = addcarryx_u64(0x0, x988, x990);
- uint64_t x1014, uint8_t x1015 = addcarryx_u64(x1012, x991, x993);
- uint64_t x1017, uint8_t x1018 = addcarryx_u64(x1015, x994, x996);
- uint64_t x1020, uint8_t x1021 = addcarryx_u64(x1018, x997, x999);
- uint64_t x1023, uint8_t x1024 = addcarryx_u64(x1021, x1000, x1002);
- uint64_t x1026, uint8_t x1027 = addcarryx_u64(x1024, x1003, x1005);
- uint64_t x1029, uint8_t x1030 = addcarryx_u64(x1027, x1006, x1008);
- uint64_t x1032, uint8_t _ = addcarryx_u64(0x0, x1030, x1009);
- uint64_t _, uint8_t x1036 = addcarryx_u64(0x0, x960, x987);
- uint64_t x1038, uint8_t x1039 = addcarryx_u64(x1036, x963, x1011);
- uint64_t x1041, uint8_t x1042 = addcarryx_u64(x1039, x966, x1014);
- uint64_t x1044, uint8_t x1045 = addcarryx_u64(x1042, x969, x1017);
- uint64_t x1047, uint8_t x1048 = addcarryx_u64(x1045, x972, x1020);
- uint64_t x1050, uint8_t x1051 = addcarryx_u64(x1048, x975, x1023);
- uint64_t x1053, uint8_t x1054 = addcarryx_u64(x1051, x978, x1026);
- uint64_t x1056, uint8_t x1057 = addcarryx_u64(x1054, x981, x1029);
- uint64_t x1059, uint8_t x1060 = addcarryx_u64(x1057, x984, x1032);
- uint8_t x1061 = (x1060 + x985);
- uint64_t x1063, uint64_t x1064 = mulx_u64(x16, x19);
- uint64_t x1066, uint64_t x1067 = mulx_u64(x16, x21);
- uint64_t x1069, uint64_t x1070 = mulx_u64(x16, x23);
- uint64_t x1072, uint64_t x1073 = mulx_u64(x16, x25);
- uint64_t x1075, uint64_t x1076 = mulx_u64(x16, x27);
- uint64_t x1078, uint64_t x1079 = mulx_u64(x16, x29);
- uint64_t x1081, uint64_t x1082 = mulx_u64(x16, x31);
- uint64_t x1084, uint64_t x1085 = mulx_u64(x16, x30);
- uint64_t x1087, uint8_t x1088 = addcarryx_u64(0x0, x1064, x1066);
- uint64_t x1090, uint8_t x1091 = addcarryx_u64(x1088, x1067, x1069);
- uint64_t x1093, uint8_t x1094 = addcarryx_u64(x1091, x1070, x1072);
- uint64_t x1096, uint8_t x1097 = addcarryx_u64(x1094, x1073, x1075);
- uint64_t x1099, uint8_t x1100 = addcarryx_u64(x1097, x1076, x1078);
- uint64_t x1102, uint8_t x1103 = addcarryx_u64(x1100, x1079, x1081);
- uint64_t x1105, uint8_t x1106 = addcarryx_u64(x1103, x1082, x1084);
- uint64_t x1108, uint8_t _ = addcarryx_u64(0x0, x1106, x1085);
- uint64_t x1111, uint8_t x1112 = addcarryx_u64(0x0, x1038, x1063);
- uint64_t x1114, uint8_t x1115 = addcarryx_u64(x1112, x1041, x1087);
- uint64_t x1117, uint8_t x1118 = addcarryx_u64(x1115, x1044, x1090);
- uint64_t x1120, uint8_t x1121 = addcarryx_u64(x1118, x1047, x1093);
- uint64_t x1123, uint8_t x1124 = addcarryx_u64(x1121, x1050, x1096);
- uint64_t x1126, uint8_t x1127 = addcarryx_u64(x1124, x1053, x1099);
- uint64_t x1129, uint8_t x1130 = addcarryx_u64(x1127, x1056, x1102);
- uint64_t x1132, uint8_t x1133 = addcarryx_u64(x1130, x1059, x1105);
- uint64_t x1135, uint8_t x1136 = addcarryx_u64(x1133, x1061, x1108);
- uint64_t x1138, uint64_t x1139 = mulx_u64(x1111, 0xffffffffffffffffL);
- uint64_t x1141, uint64_t x1142 = mulx_u64(x1111, 0xffffffffffffffffL);
- uint64_t x1144, uint64_t x1145 = mulx_u64(x1111, 0xffffffffffffffffL);
- uint64_t x1147, uint64_t x1148 = mulx_u64(x1111, 0xffffffffffffffffL);
- uint64_t x1150, uint64_t x1151 = mulx_u64(x1111, 0xffffffffffffffffL);
- uint64_t x1153, uint64_t x1154 = mulx_u64(x1111, 0xffffffffffffffffL);
- uint64_t x1156, uint64_t x1157 = mulx_u64(x1111, 0xffffffffffffffffL);
- uint64_t x1159, uint64_t x1160 = mulx_u64(x1111, 0x3eddffffffffffff);
- uint64_t x1162, uint8_t x1163 = addcarryx_u64(0x0, x1139, x1141);
- uint64_t x1165, uint8_t x1166 = addcarryx_u64(x1163, x1142, x1144);
- uint64_t x1168, uint8_t x1169 = addcarryx_u64(x1166, x1145, x1147);
- uint64_t x1171, uint8_t x1172 = addcarryx_u64(x1169, x1148, x1150);
- uint64_t x1174, uint8_t x1175 = addcarryx_u64(x1172, x1151, x1153);
- uint64_t x1177, uint8_t x1178 = addcarryx_u64(x1175, x1154, x1156);
- uint64_t x1180, uint8_t x1181 = addcarryx_u64(x1178, x1157, x1159);
- uint64_t x1183, uint8_t _ = addcarryx_u64(0x0, x1181, x1160);
- uint64_t _, uint8_t x1187 = addcarryx_u64(0x0, x1111, x1138);
- uint64_t x1189, uint8_t x1190 = addcarryx_u64(x1187, x1114, x1162);
- uint64_t x1192, uint8_t x1193 = addcarryx_u64(x1190, x1117, x1165);
- uint64_t x1195, uint8_t x1196 = addcarryx_u64(x1193, x1120, x1168);
- uint64_t x1198, uint8_t x1199 = addcarryx_u64(x1196, x1123, x1171);
- uint64_t x1201, uint8_t x1202 = addcarryx_u64(x1199, x1126, x1174);
- uint64_t x1204, uint8_t x1205 = addcarryx_u64(x1202, x1129, x1177);
- uint64_t x1207, uint8_t x1208 = addcarryx_u64(x1205, x1132, x1180);
- uint64_t x1210, uint8_t x1211 = addcarryx_u64(x1208, x1135, x1183);
- uint8_t x1212 = (x1211 + x1136);
- uint64_t x1214, uint8_t x1215 = subborrow_u64(0x0, x1189, 0xffffffffffffffffL);
- uint64_t x1217, uint8_t x1218 = subborrow_u64(x1215, x1192, 0xffffffffffffffffL);
- uint64_t x1220, uint8_t x1221 = subborrow_u64(x1218, x1195, 0xffffffffffffffffL);
- uint64_t x1223, uint8_t x1224 = subborrow_u64(x1221, x1198, 0xffffffffffffffffL);
- uint64_t x1226, uint8_t x1227 = subborrow_u64(x1224, x1201, 0xffffffffffffffffL);
- uint64_t x1229, uint8_t x1230 = subborrow_u64(x1227, x1204, 0xffffffffffffffffL);
- uint64_t x1232, uint8_t x1233 = subborrow_u64(x1230, x1207, 0xffffffffffffffffL);
- uint64_t x1235, uint8_t x1236 = subborrow_u64(x1233, x1210, 0x3eddffffffffffff);
- uint64_t _, uint8_t x1239 = subborrow_u64(x1236, x1212, 0x0);
- uint64_t x1240 = cmovznz64(x1239, x1235, x1210);
- uint64_t x1241 = cmovznz64(x1239, x1232, x1207);
- uint64_t x1242 = cmovznz64(x1239, x1229, x1204);
- uint64_t x1243 = cmovznz64(x1239, x1226, x1201);
- uint64_t x1244 = cmovznz64(x1239, x1223, x1198);
- uint64_t x1245 = cmovznz64(x1239, x1220, x1195);
- uint64_t x1246 = cmovznz64(x1239, x1217, x1192);
- uint64_t x1247 = cmovznz64(x1239, x1214, x1189);
- return (x1240, x1241, x1242, x1243, x1244, x1245, x1246, x1247))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/femulDisplay.v b/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/femulDisplay.v
deleted file mode 100644
index c859c108e..000000000
--- a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e510m290x2e496m1_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fenz.c b/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fenz.c
deleted file mode 100644
index a07b0df9c..000000000
--- a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x15 = (x14 | x13);
- { uint64_t x16 = (x12 | x15);
- { uint64_t x17 = (x10 | x16);
- { uint64_t x18 = (x8 | x17);
- { uint64_t x19 = (x6 | x18);
- { uint64_t x20 = (x4 | x19);
- { uint64_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fenz.v b/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fenz.v
deleted file mode 100644
index d877bb15e..000000000
--- a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e510m290x2e496m1_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fenzDisplay.log b/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fenzDisplay.log
deleted file mode 100644
index a05fc22ab..000000000
--- a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (x14 | x13);
- uint64_t x16 = (x12 | x15);
- uint64_t x17 = (x10 | x16);
- uint64_t x18 = (x8 | x17);
- uint64_t x19 = (x6 | x18);
- uint64_t x20 = (x4 | x19);
- uint64_t x21 = (x2 | x20);
- return x21)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fenzDisplay.v b/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fenzDisplay.v
deleted file mode 100644
index f4b23c2be..000000000
--- a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e510m290x2e496m1_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/feopp.v b/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/feopp.v
deleted file mode 100644
index 6f2297ff1..000000000
--- a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e510m290x2e496m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/feoppDisplay.v b/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/feoppDisplay.v
deleted file mode 100644
index e61efd6b4..000000000
--- a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e510m290x2e496m1_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fesquare.c b/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fesub.v b/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fesub.v
deleted file mode 100644
index 0e6ddc0f4..000000000
--- a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e510m290x2e496m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fesubDisplay.v b/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fesubDisplay.v
deleted file mode 100644
index f0a751a19..000000000
--- a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e510m290x2e496m1_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/py_interpreter.sh b/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/py_interpreter.sh
deleted file mode 100755
index ff7ce7905..000000000
--- a/src/Specific/montgomery64_2e510m290x2e496m1_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**510 - 290*2**496 - 1' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e511m187_8limbs/CurveParameters.v b/src/Specific/montgomery64_2e511m187_8limbs/CurveParameters.v
deleted file mode 100644
index 20f69fb93..000000000
--- a/src/Specific/montgomery64_2e511m187_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^511 - 187
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 64;
- bitwidth := 64;
- s := 2^511;
- c := [(1, 187)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e511m187_8limbs/Synthesis.v b/src/Specific/montgomery64_2e511m187_8limbs/Synthesis.v
deleted file mode 100644
index 5d7413726..000000000
--- a/src/Specific/montgomery64_2e511m187_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e511m187_8limbs.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/montgomery64_2e511m187_8limbs/compiler.sh b/src/Specific/montgomery64_2e511m187_8limbs/compiler.sh
deleted file mode 100755
index efd9a71b0..000000000
--- a/src/Specific/montgomery64_2e511m187_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<511) - 187' "$@"
diff --git a/src/Specific/montgomery64_2e511m187_8limbs/compilerxx.sh b/src/Specific/montgomery64_2e511m187_8limbs/compilerxx.sh
deleted file mode 100755
index 6d85adc01..000000000
--- a/src/Specific/montgomery64_2e511m187_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<511) - 187' "$@"
diff --git a/src/Specific/montgomery64_2e511m187_8limbs/feadd.c b/src/Specific/montgomery64_2e511m187_8limbs/feadd.c
deleted file mode 100644
index ef4b7bc6d..000000000
--- a/src/Specific/montgomery64_2e511m187_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint64_t x33; uint8_t x34 = _addcarryx_u64(0x0, x5, x19, &x33);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x34, x7, x21, &x36);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x37, x9, x23, &x39);
- { uint64_t x42; uint8_t x43 = _addcarryx_u64(x40, x11, x25, &x42);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(x43, x13, x27, &x45);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x46, x15, x29, &x48);
- { uint64_t x51; uint8_t x52 = _addcarryx_u64(x49, x17, x31, &x51);
- { uint64_t x54; uint8_t x55 = _addcarryx_u64(x52, x16, x30, &x54);
- { uint64_t x57; uint8_t x58 = _subborrow_u64(0x0, x33, 0xffffffffffffff45L, &x57);
- { uint64_t x60; uint8_t x61 = _subborrow_u64(x58, x36, 0xffffffffffffffffL, &x60);
- { uint64_t x63; uint8_t x64 = _subborrow_u64(x61, x39, 0xffffffffffffffffL, &x63);
- { uint64_t x66; uint8_t x67 = _subborrow_u64(x64, x42, 0xffffffffffffffffL, &x66);
- { uint64_t x69; uint8_t x70 = _subborrow_u64(x67, x45, 0xffffffffffffffffL, &x69);
- { uint64_t x72; uint8_t x73 = _subborrow_u64(x70, x48, 0xffffffffffffffffL, &x72);
- { uint64_t x75; uint8_t x76 = _subborrow_u64(x73, x51, 0xffffffffffffffffL, &x75);
- { uint64_t x78; uint8_t x79 = _subborrow_u64(x76, x54, 0x7fffffffffffffffL, &x78);
- { uint64_t _; uint8_t x82 = _subborrow_u64(x79, x55, 0x0, &_);
- { uint64_t x83 = cmovznz64(x82, x78, x54);
- { uint64_t x84 = cmovznz64(x82, x75, x51);
- { uint64_t x85 = cmovznz64(x82, x72, x48);
- { uint64_t x86 = cmovznz64(x82, x69, x45);
- { uint64_t x87 = cmovznz64(x82, x66, x42);
- { uint64_t x88 = cmovznz64(x82, x63, x39);
- { uint64_t x89 = cmovznz64(x82, x60, x36);
- { uint64_t x90 = cmovznz64(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e511m187_8limbs/feadd.v b/src/Specific/montgomery64_2e511m187_8limbs/feadd.v
deleted file mode 100644
index 9dfdccc87..000000000
--- a/src/Specific/montgomery64_2e511m187_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e511m187_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e511m187_8limbs/feaddDisplay.log b/src/Specific/montgomery64_2e511m187_8limbs/feaddDisplay.log
deleted file mode 100644
index 88beaff82..000000000
--- a/src/Specific/montgomery64_2e511m187_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x33, uint8_t x34 = addcarryx_u64(0x0, x5, x19);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x34, x7, x21);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x37, x9, x23);
- uint64_t x42, uint8_t x43 = addcarryx_u64(x40, x11, x25);
- uint64_t x45, uint8_t x46 = addcarryx_u64(x43, x13, x27);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x46, x15, x29);
- uint64_t x51, uint8_t x52 = addcarryx_u64(x49, x17, x31);
- uint64_t x54, uint8_t x55 = addcarryx_u64(x52, x16, x30);
- uint64_t x57, uint8_t x58 = subborrow_u64(0x0, x33, 0xffffffffffffff45L);
- uint64_t x60, uint8_t x61 = subborrow_u64(x58, x36, 0xffffffffffffffffL);
- uint64_t x63, uint8_t x64 = subborrow_u64(x61, x39, 0xffffffffffffffffL);
- uint64_t x66, uint8_t x67 = subborrow_u64(x64, x42, 0xffffffffffffffffL);
- uint64_t x69, uint8_t x70 = subborrow_u64(x67, x45, 0xffffffffffffffffL);
- uint64_t x72, uint8_t x73 = subborrow_u64(x70, x48, 0xffffffffffffffffL);
- uint64_t x75, uint8_t x76 = subborrow_u64(x73, x51, 0xffffffffffffffffL);
- uint64_t x78, uint8_t x79 = subborrow_u64(x76, x54, 0x7fffffffffffffffL);
- uint64_t _, uint8_t x82 = subborrow_u64(x79, x55, 0x0);
- uint64_t x83 = cmovznz64(x82, x78, x54);
- uint64_t x84 = cmovznz64(x82, x75, x51);
- uint64_t x85 = cmovznz64(x82, x72, x48);
- uint64_t x86 = cmovznz64(x82, x69, x45);
- uint64_t x87 = cmovznz64(x82, x66, x42);
- uint64_t x88 = cmovznz64(x82, x63, x39);
- uint64_t x89 = cmovznz64(x82, x60, x36);
- uint64_t x90 = cmovznz64(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e511m187_8limbs/feaddDisplay.v b/src/Specific/montgomery64_2e511m187_8limbs/feaddDisplay.v
deleted file mode 100644
index 38d9c6610..000000000
--- a/src/Specific/montgomery64_2e511m187_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e511m187_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e511m187_8limbs/femul.v b/src/Specific/montgomery64_2e511m187_8limbs/femul.v
deleted file mode 100644
index ff485c9f6..000000000
--- a/src/Specific/montgomery64_2e511m187_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e511m187_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e511m187_8limbs/femulDisplay.v b/src/Specific/montgomery64_2e511m187_8limbs/femulDisplay.v
deleted file mode 100644
index 56033e31d..000000000
--- a/src/Specific/montgomery64_2e511m187_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e511m187_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e511m187_8limbs/fenz.c b/src/Specific/montgomery64_2e511m187_8limbs/fenz.c
deleted file mode 100644
index a07b0df9c..000000000
--- a/src/Specific/montgomery64_2e511m187_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x15 = (x14 | x13);
- { uint64_t x16 = (x12 | x15);
- { uint64_t x17 = (x10 | x16);
- { uint64_t x18 = (x8 | x17);
- { uint64_t x19 = (x6 | x18);
- { uint64_t x20 = (x4 | x19);
- { uint64_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e511m187_8limbs/fenz.v b/src/Specific/montgomery64_2e511m187_8limbs/fenz.v
deleted file mode 100644
index c6c0cd864..000000000
--- a/src/Specific/montgomery64_2e511m187_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e511m187_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e511m187_8limbs/fenzDisplay.log b/src/Specific/montgomery64_2e511m187_8limbs/fenzDisplay.log
deleted file mode 100644
index a05fc22ab..000000000
--- a/src/Specific/montgomery64_2e511m187_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (x14 | x13);
- uint64_t x16 = (x12 | x15);
- uint64_t x17 = (x10 | x16);
- uint64_t x18 = (x8 | x17);
- uint64_t x19 = (x6 | x18);
- uint64_t x20 = (x4 | x19);
- uint64_t x21 = (x2 | x20);
- return x21)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e511m187_8limbs/fenzDisplay.v b/src/Specific/montgomery64_2e511m187_8limbs/fenzDisplay.v
deleted file mode 100644
index 7e57e418d..000000000
--- a/src/Specific/montgomery64_2e511m187_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e511m187_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e511m187_8limbs/feopp.v b/src/Specific/montgomery64_2e511m187_8limbs/feopp.v
deleted file mode 100644
index 3fc02879a..000000000
--- a/src/Specific/montgomery64_2e511m187_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e511m187_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e511m187_8limbs/feoppDisplay.v b/src/Specific/montgomery64_2e511m187_8limbs/feoppDisplay.v
deleted file mode 100644
index f0e2484e0..000000000
--- a/src/Specific/montgomery64_2e511m187_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e511m187_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e511m187_8limbs/fesquare.c b/src/Specific/montgomery64_2e511m187_8limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e511m187_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e511m187_8limbs/fesub.v b/src/Specific/montgomery64_2e511m187_8limbs/fesub.v
deleted file mode 100644
index a13ca639f..000000000
--- a/src/Specific/montgomery64_2e511m187_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e511m187_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e511m187_8limbs/fesubDisplay.v b/src/Specific/montgomery64_2e511m187_8limbs/fesubDisplay.v
deleted file mode 100644
index b85e32dae..000000000
--- a/src/Specific/montgomery64_2e511m187_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e511m187_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e511m187_8limbs/py_interpreter.sh b/src/Specific/montgomery64_2e511m187_8limbs/py_interpreter.sh
deleted file mode 100755
index c460069af..000000000
--- a/src/Specific/montgomery64_2e511m187_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**511 - 187' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e511m481_8limbs/CurveParameters.v b/src/Specific/montgomery64_2e511m481_8limbs/CurveParameters.v
deleted file mode 100644
index 37ba2f8dd..000000000
--- a/src/Specific/montgomery64_2e511m481_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^511 - 481
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 64;
- bitwidth := 64;
- s := 2^511;
- c := [(1, 481)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e511m481_8limbs/Synthesis.v b/src/Specific/montgomery64_2e511m481_8limbs/Synthesis.v
deleted file mode 100644
index a99f9d8b7..000000000
--- a/src/Specific/montgomery64_2e511m481_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e511m481_8limbs.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/montgomery64_2e511m481_8limbs/compiler.sh b/src/Specific/montgomery64_2e511m481_8limbs/compiler.sh
deleted file mode 100755
index f4d4f313f..000000000
--- a/src/Specific/montgomery64_2e511m481_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<511) - 481' "$@"
diff --git a/src/Specific/montgomery64_2e511m481_8limbs/compilerxx.sh b/src/Specific/montgomery64_2e511m481_8limbs/compilerxx.sh
deleted file mode 100755
index 657121f1a..000000000
--- a/src/Specific/montgomery64_2e511m481_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<511) - 481' "$@"
diff --git a/src/Specific/montgomery64_2e511m481_8limbs/feadd.c b/src/Specific/montgomery64_2e511m481_8limbs/feadd.c
deleted file mode 100644
index b1a70e025..000000000
--- a/src/Specific/montgomery64_2e511m481_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint64_t x33; uint8_t x34 = _addcarryx_u64(0x0, x5, x19, &x33);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x34, x7, x21, &x36);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x37, x9, x23, &x39);
- { uint64_t x42; uint8_t x43 = _addcarryx_u64(x40, x11, x25, &x42);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(x43, x13, x27, &x45);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x46, x15, x29, &x48);
- { uint64_t x51; uint8_t x52 = _addcarryx_u64(x49, x17, x31, &x51);
- { uint64_t x54; uint8_t x55 = _addcarryx_u64(x52, x16, x30, &x54);
- { uint64_t x57; uint8_t x58 = _subborrow_u64(0x0, x33, 0xfffffffffffffe1fL, &x57);
- { uint64_t x60; uint8_t x61 = _subborrow_u64(x58, x36, 0xffffffffffffffffL, &x60);
- { uint64_t x63; uint8_t x64 = _subborrow_u64(x61, x39, 0xffffffffffffffffL, &x63);
- { uint64_t x66; uint8_t x67 = _subborrow_u64(x64, x42, 0xffffffffffffffffL, &x66);
- { uint64_t x69; uint8_t x70 = _subborrow_u64(x67, x45, 0xffffffffffffffffL, &x69);
- { uint64_t x72; uint8_t x73 = _subborrow_u64(x70, x48, 0xffffffffffffffffL, &x72);
- { uint64_t x75; uint8_t x76 = _subborrow_u64(x73, x51, 0xffffffffffffffffL, &x75);
- { uint64_t x78; uint8_t x79 = _subborrow_u64(x76, x54, 0x7fffffffffffffffL, &x78);
- { uint64_t _; uint8_t x82 = _subborrow_u64(x79, x55, 0x0, &_);
- { uint64_t x83 = cmovznz64(x82, x78, x54);
- { uint64_t x84 = cmovznz64(x82, x75, x51);
- { uint64_t x85 = cmovznz64(x82, x72, x48);
- { uint64_t x86 = cmovznz64(x82, x69, x45);
- { uint64_t x87 = cmovznz64(x82, x66, x42);
- { uint64_t x88 = cmovznz64(x82, x63, x39);
- { uint64_t x89 = cmovznz64(x82, x60, x36);
- { uint64_t x90 = cmovznz64(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e511m481_8limbs/feadd.v b/src/Specific/montgomery64_2e511m481_8limbs/feadd.v
deleted file mode 100644
index 7d6a08cfe..000000000
--- a/src/Specific/montgomery64_2e511m481_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e511m481_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e511m481_8limbs/feaddDisplay.log b/src/Specific/montgomery64_2e511m481_8limbs/feaddDisplay.log
deleted file mode 100644
index 3102464cf..000000000
--- a/src/Specific/montgomery64_2e511m481_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x33, uint8_t x34 = addcarryx_u64(0x0, x5, x19);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x34, x7, x21);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x37, x9, x23);
- uint64_t x42, uint8_t x43 = addcarryx_u64(x40, x11, x25);
- uint64_t x45, uint8_t x46 = addcarryx_u64(x43, x13, x27);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x46, x15, x29);
- uint64_t x51, uint8_t x52 = addcarryx_u64(x49, x17, x31);
- uint64_t x54, uint8_t x55 = addcarryx_u64(x52, x16, x30);
- uint64_t x57, uint8_t x58 = subborrow_u64(0x0, x33, 0xfffffffffffffe1fL);
- uint64_t x60, uint8_t x61 = subborrow_u64(x58, x36, 0xffffffffffffffffL);
- uint64_t x63, uint8_t x64 = subborrow_u64(x61, x39, 0xffffffffffffffffL);
- uint64_t x66, uint8_t x67 = subborrow_u64(x64, x42, 0xffffffffffffffffL);
- uint64_t x69, uint8_t x70 = subborrow_u64(x67, x45, 0xffffffffffffffffL);
- uint64_t x72, uint8_t x73 = subborrow_u64(x70, x48, 0xffffffffffffffffL);
- uint64_t x75, uint8_t x76 = subborrow_u64(x73, x51, 0xffffffffffffffffL);
- uint64_t x78, uint8_t x79 = subborrow_u64(x76, x54, 0x7fffffffffffffffL);
- uint64_t _, uint8_t x82 = subborrow_u64(x79, x55, 0x0);
- uint64_t x83 = cmovznz64(x82, x78, x54);
- uint64_t x84 = cmovznz64(x82, x75, x51);
- uint64_t x85 = cmovznz64(x82, x72, x48);
- uint64_t x86 = cmovznz64(x82, x69, x45);
- uint64_t x87 = cmovznz64(x82, x66, x42);
- uint64_t x88 = cmovznz64(x82, x63, x39);
- uint64_t x89 = cmovznz64(x82, x60, x36);
- uint64_t x90 = cmovznz64(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e511m481_8limbs/feaddDisplay.v b/src/Specific/montgomery64_2e511m481_8limbs/feaddDisplay.v
deleted file mode 100644
index 331cb03f6..000000000
--- a/src/Specific/montgomery64_2e511m481_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e511m481_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e511m481_8limbs/femul.v b/src/Specific/montgomery64_2e511m481_8limbs/femul.v
deleted file mode 100644
index 845e2c79f..000000000
--- a/src/Specific/montgomery64_2e511m481_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e511m481_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e511m481_8limbs/femulDisplay.v b/src/Specific/montgomery64_2e511m481_8limbs/femulDisplay.v
deleted file mode 100644
index f32fa438f..000000000
--- a/src/Specific/montgomery64_2e511m481_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e511m481_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e511m481_8limbs/fenz.c b/src/Specific/montgomery64_2e511m481_8limbs/fenz.c
deleted file mode 100644
index a07b0df9c..000000000
--- a/src/Specific/montgomery64_2e511m481_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x15 = (x14 | x13);
- { uint64_t x16 = (x12 | x15);
- { uint64_t x17 = (x10 | x16);
- { uint64_t x18 = (x8 | x17);
- { uint64_t x19 = (x6 | x18);
- { uint64_t x20 = (x4 | x19);
- { uint64_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e511m481_8limbs/fenz.v b/src/Specific/montgomery64_2e511m481_8limbs/fenz.v
deleted file mode 100644
index 9296c1b2b..000000000
--- a/src/Specific/montgomery64_2e511m481_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e511m481_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e511m481_8limbs/fenzDisplay.log b/src/Specific/montgomery64_2e511m481_8limbs/fenzDisplay.log
deleted file mode 100644
index a05fc22ab..000000000
--- a/src/Specific/montgomery64_2e511m481_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (x14 | x13);
- uint64_t x16 = (x12 | x15);
- uint64_t x17 = (x10 | x16);
- uint64_t x18 = (x8 | x17);
- uint64_t x19 = (x6 | x18);
- uint64_t x20 = (x4 | x19);
- uint64_t x21 = (x2 | x20);
- return x21)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e511m481_8limbs/fenzDisplay.v b/src/Specific/montgomery64_2e511m481_8limbs/fenzDisplay.v
deleted file mode 100644
index ff43e8992..000000000
--- a/src/Specific/montgomery64_2e511m481_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e511m481_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e511m481_8limbs/feopp.v b/src/Specific/montgomery64_2e511m481_8limbs/feopp.v
deleted file mode 100644
index cecc54292..000000000
--- a/src/Specific/montgomery64_2e511m481_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e511m481_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e511m481_8limbs/feoppDisplay.v b/src/Specific/montgomery64_2e511m481_8limbs/feoppDisplay.v
deleted file mode 100644
index 684e0a1ca..000000000
--- a/src/Specific/montgomery64_2e511m481_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e511m481_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e511m481_8limbs/fesquare.c b/src/Specific/montgomery64_2e511m481_8limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e511m481_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e511m481_8limbs/fesub.v b/src/Specific/montgomery64_2e511m481_8limbs/fesub.v
deleted file mode 100644
index 36334c18a..000000000
--- a/src/Specific/montgomery64_2e511m481_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e511m481_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e511m481_8limbs/fesubDisplay.v b/src/Specific/montgomery64_2e511m481_8limbs/fesubDisplay.v
deleted file mode 100644
index 5705796ab..000000000
--- a/src/Specific/montgomery64_2e511m481_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e511m481_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e511m481_8limbs/py_interpreter.sh b/src/Specific/montgomery64_2e511m481_8limbs/py_interpreter.sh
deleted file mode 100755
index a563a6f3b..000000000
--- a/src/Specific/montgomery64_2e511m481_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**511 - 481' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/CurveParameters.v b/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/CurveParameters.v
deleted file mode 100644
index accf6b9a7..000000000
--- a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^512 - 491*2^496 - 1
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 64;
- bitwidth := 64;
- s := 2^512;
- c := [(1, 1); (491, 2^496)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e512m491x2e496m1_8limbs/Synthesis.v b/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/Synthesis.v
deleted file mode 100644
index fb95e130a..000000000
--- a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e512m491x2e496m1_8limbs.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/montgomery64_2e512m491x2e496m1_8limbs/compiler.sh b/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/compiler.sh
deleted file mode 100755
index 61ac13abd..000000000
--- a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/compilerxx.sh b/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/compilerxx.sh
deleted file mode 100755
index 9cd808494..000000000
--- a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xfe,0x14,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<512) - 491*(1_mpz<<496) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/feadd.c b/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/feadd.c
deleted file mode 100644
index cf7695d2d..000000000
--- a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint64_t x33; uint8_t x34 = _addcarryx_u64(0x0, x5, x19, &x33);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x34, x7, x21, &x36);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x37, x9, x23, &x39);
- { uint64_t x42; uint8_t x43 = _addcarryx_u64(x40, x11, x25, &x42);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(x43, x13, x27, &x45);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x46, x15, x29, &x48);
- { uint64_t x51; uint8_t x52 = _addcarryx_u64(x49, x17, x31, &x51);
- { uint64_t x54; uint8_t x55 = _addcarryx_u64(x52, x16, x30, &x54);
- { uint64_t x57; uint8_t x58 = _subborrow_u64(0x0, x33, 0xffffffffffffffffL, &x57);
- { uint64_t x60; uint8_t x61 = _subborrow_u64(x58, x36, 0xffffffffffffffffL, &x60);
- { uint64_t x63; uint8_t x64 = _subborrow_u64(x61, x39, 0xffffffffffffffffL, &x63);
- { uint64_t x66; uint8_t x67 = _subborrow_u64(x64, x42, 0xffffffffffffffffL, &x66);
- { uint64_t x69; uint8_t x70 = _subborrow_u64(x67, x45, 0xffffffffffffffffL, &x69);
- { uint64_t x72; uint8_t x73 = _subborrow_u64(x70, x48, 0xffffffffffffffffL, &x72);
- { uint64_t x75; uint8_t x76 = _subborrow_u64(x73, x51, 0xffffffffffffffffL, &x75);
- { uint64_t x78; uint8_t x79 = _subborrow_u64(x76, x54, 0xfe14ffffffffffffL, &x78);
- { uint64_t _; uint8_t x82 = _subborrow_u64(x79, x55, 0x0, &_);
- { uint64_t x83 = cmovznz64(x82, x78, x54);
- { uint64_t x84 = cmovznz64(x82, x75, x51);
- { uint64_t x85 = cmovznz64(x82, x72, x48);
- { uint64_t x86 = cmovznz64(x82, x69, x45);
- { uint64_t x87 = cmovznz64(x82, x66, x42);
- { uint64_t x88 = cmovznz64(x82, x63, x39);
- { uint64_t x89 = cmovznz64(x82, x60, x36);
- { uint64_t x90 = cmovznz64(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/feadd.v b/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/feadd.v
deleted file mode 100644
index 4bc42b4b7..000000000
--- a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e512m491x2e496m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/feaddDisplay.log b/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/feaddDisplay.log
deleted file mode 100644
index d9e775eee..000000000
--- a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x33, uint8_t x34 = addcarryx_u64(0x0, x5, x19);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x34, x7, x21);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x37, x9, x23);
- uint64_t x42, uint8_t x43 = addcarryx_u64(x40, x11, x25);
- uint64_t x45, uint8_t x46 = addcarryx_u64(x43, x13, x27);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x46, x15, x29);
- uint64_t x51, uint8_t x52 = addcarryx_u64(x49, x17, x31);
- uint64_t x54, uint8_t x55 = addcarryx_u64(x52, x16, x30);
- uint64_t x57, uint8_t x58 = subborrow_u64(0x0, x33, 0xffffffffffffffffL);
- uint64_t x60, uint8_t x61 = subborrow_u64(x58, x36, 0xffffffffffffffffL);
- uint64_t x63, uint8_t x64 = subborrow_u64(x61, x39, 0xffffffffffffffffL);
- uint64_t x66, uint8_t x67 = subborrow_u64(x64, x42, 0xffffffffffffffffL);
- uint64_t x69, uint8_t x70 = subborrow_u64(x67, x45, 0xffffffffffffffffL);
- uint64_t x72, uint8_t x73 = subborrow_u64(x70, x48, 0xffffffffffffffffL);
- uint64_t x75, uint8_t x76 = subborrow_u64(x73, x51, 0xffffffffffffffffL);
- uint64_t x78, uint8_t x79 = subborrow_u64(x76, x54, 0xfe14ffffffffffffL);
- uint64_t _, uint8_t x82 = subborrow_u64(x79, x55, 0x0);
- uint64_t x83 = cmovznz64(x82, x78, x54);
- uint64_t x84 = cmovznz64(x82, x75, x51);
- uint64_t x85 = cmovznz64(x82, x72, x48);
- uint64_t x86 = cmovznz64(x82, x69, x45);
- uint64_t x87 = cmovznz64(x82, x66, x42);
- uint64_t x88 = cmovznz64(x82, x63, x39);
- uint64_t x89 = cmovznz64(x82, x60, x36);
- uint64_t x90 = cmovznz64(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/feaddDisplay.v b/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/feaddDisplay.v
deleted file mode 100644
index 4ebc5f249..000000000
--- a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e512m491x2e496m1_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/femul.c b/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/femul.c
deleted file mode 100644
index 958e08911..000000000
--- a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/femul.c
+++ /dev/null
@@ -1,443 +0,0 @@
-static void femul(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint64_t x34; uint64_t x33 = _mulx_u64(x5, x19, &x34);
- { uint64_t x37; uint64_t x36 = _mulx_u64(x5, x21, &x37);
- { uint64_t x40; uint64_t x39 = _mulx_u64(x5, x23, &x40);
- { uint64_t x43; uint64_t x42 = _mulx_u64(x5, x25, &x43);
- { uint64_t x46; uint64_t x45 = _mulx_u64(x5, x27, &x46);
- { uint64_t x49; uint64_t x48 = _mulx_u64(x5, x29, &x49);
- { uint64_t x52; uint64_t x51 = _mulx_u64(x5, x31, &x52);
- { uint64_t x55; uint64_t x54 = _mulx_u64(x5, x30, &x55);
- { uint64_t x57; uint8_t x58 = _addcarryx_u64(0x0, x34, x36, &x57);
- { uint64_t x60; uint8_t x61 = _addcarryx_u64(x58, x37, x39, &x60);
- { uint64_t x63; uint8_t x64 = _addcarryx_u64(x61, x40, x42, &x63);
- { uint64_t x66; uint8_t x67 = _addcarryx_u64(x64, x43, x45, &x66);
- { uint64_t x69; uint8_t x70 = _addcarryx_u64(x67, x46, x48, &x69);
- { uint64_t x72; uint8_t x73 = _addcarryx_u64(x70, x49, x51, &x72);
- { uint64_t x75; uint8_t x76 = _addcarryx_u64(x73, x52, x54, &x75);
- { uint64_t x78; uint8_t _ = _addcarryx_u64(0x0, x76, x55, &x78);
- { uint64_t x82; uint64_t x81 = _mulx_u64(x33, 0xffffffffffffffffL, &x82);
- { uint64_t x85; uint64_t x84 = _mulx_u64(x33, 0xffffffffffffffffL, &x85);
- { uint64_t x88; uint64_t x87 = _mulx_u64(x33, 0xffffffffffffffffL, &x88);
- { uint64_t x91; uint64_t x90 = _mulx_u64(x33, 0xffffffffffffffffL, &x91);
- { uint64_t x94; uint64_t x93 = _mulx_u64(x33, 0xffffffffffffffffL, &x94);
- { uint64_t x97; uint64_t x96 = _mulx_u64(x33, 0xffffffffffffffffL, &x97);
- { uint64_t x100; uint64_t x99 = _mulx_u64(x33, 0xffffffffffffffffL, &x100);
- { uint64_t x103; uint64_t x102 = _mulx_u64(x33, 0xfe14ffffffffffffL, &x103);
- { uint64_t x105; uint8_t x106 = _addcarryx_u64(0x0, x82, x84, &x105);
- { uint64_t x108; uint8_t x109 = _addcarryx_u64(x106, x85, x87, &x108);
- { uint64_t x111; uint8_t x112 = _addcarryx_u64(x109, x88, x90, &x111);
- { uint64_t x114; uint8_t x115 = _addcarryx_u64(x112, x91, x93, &x114);
- { uint64_t x117; uint8_t x118 = _addcarryx_u64(x115, x94, x96, &x117);
- { uint64_t x120; uint8_t x121 = _addcarryx_u64(x118, x97, x99, &x120);
- { uint64_t x123; uint8_t x124 = _addcarryx_u64(x121, x100, x102, &x123);
- { uint64_t x126; uint8_t _ = _addcarryx_u64(0x0, x124, x103, &x126);
- { uint64_t _; uint8_t x130 = _addcarryx_u64(0x0, x33, x81, &_);
- { uint64_t x132; uint8_t x133 = _addcarryx_u64(x130, x57, x105, &x132);
- { uint64_t x135; uint8_t x136 = _addcarryx_u64(x133, x60, x108, &x135);
- { uint64_t x138; uint8_t x139 = _addcarryx_u64(x136, x63, x111, &x138);
- { uint64_t x141; uint8_t x142 = _addcarryx_u64(x139, x66, x114, &x141);
- { uint64_t x144; uint8_t x145 = _addcarryx_u64(x142, x69, x117, &x144);
- { uint64_t x147; uint8_t x148 = _addcarryx_u64(x145, x72, x120, &x147);
- { uint64_t x150; uint8_t x151 = _addcarryx_u64(x148, x75, x123, &x150);
- { uint64_t x153; uint8_t x154 = _addcarryx_u64(x151, x78, x126, &x153);
- { uint8_t x155 = (x154 + 0x0);
- { uint64_t x158; uint64_t x157 = _mulx_u64(x7, x19, &x158);
- { uint64_t x161; uint64_t x160 = _mulx_u64(x7, x21, &x161);
- { uint64_t x164; uint64_t x163 = _mulx_u64(x7, x23, &x164);
- { uint64_t x167; uint64_t x166 = _mulx_u64(x7, x25, &x167);
- { uint64_t x170; uint64_t x169 = _mulx_u64(x7, x27, &x170);
- { uint64_t x173; uint64_t x172 = _mulx_u64(x7, x29, &x173);
- { uint64_t x176; uint64_t x175 = _mulx_u64(x7, x31, &x176);
- { uint64_t x179; uint64_t x178 = _mulx_u64(x7, x30, &x179);
- { uint64_t x181; uint8_t x182 = _addcarryx_u64(0x0, x158, x160, &x181);
- { uint64_t x184; uint8_t x185 = _addcarryx_u64(x182, x161, x163, &x184);
- { uint64_t x187; uint8_t x188 = _addcarryx_u64(x185, x164, x166, &x187);
- { uint64_t x190; uint8_t x191 = _addcarryx_u64(x188, x167, x169, &x190);
- { uint64_t x193; uint8_t x194 = _addcarryx_u64(x191, x170, x172, &x193);
- { uint64_t x196; uint8_t x197 = _addcarryx_u64(x194, x173, x175, &x196);
- { uint64_t x199; uint8_t x200 = _addcarryx_u64(x197, x176, x178, &x199);
- { uint64_t x202; uint8_t _ = _addcarryx_u64(0x0, x200, x179, &x202);
- { uint64_t x205; uint8_t x206 = _addcarryx_u64(0x0, x132, x157, &x205);
- { uint64_t x208; uint8_t x209 = _addcarryx_u64(x206, x135, x181, &x208);
- { uint64_t x211; uint8_t x212 = _addcarryx_u64(x209, x138, x184, &x211);
- { uint64_t x214; uint8_t x215 = _addcarryx_u64(x212, x141, x187, &x214);
- { uint64_t x217; uint8_t x218 = _addcarryx_u64(x215, x144, x190, &x217);
- { uint64_t x220; uint8_t x221 = _addcarryx_u64(x218, x147, x193, &x220);
- { uint64_t x223; uint8_t x224 = _addcarryx_u64(x221, x150, x196, &x223);
- { uint64_t x226; uint8_t x227 = _addcarryx_u64(x224, x153, x199, &x226);
- { uint64_t x229; uint8_t x230 = _addcarryx_u64(x227, x155, x202, &x229);
- { uint64_t x233; uint64_t x232 = _mulx_u64(x205, 0xffffffffffffffffL, &x233);
- { uint64_t x236; uint64_t x235 = _mulx_u64(x205, 0xffffffffffffffffL, &x236);
- { uint64_t x239; uint64_t x238 = _mulx_u64(x205, 0xffffffffffffffffL, &x239);
- { uint64_t x242; uint64_t x241 = _mulx_u64(x205, 0xffffffffffffffffL, &x242);
- { uint64_t x245; uint64_t x244 = _mulx_u64(x205, 0xffffffffffffffffL, &x245);
- { uint64_t x248; uint64_t x247 = _mulx_u64(x205, 0xffffffffffffffffL, &x248);
- { uint64_t x251; uint64_t x250 = _mulx_u64(x205, 0xffffffffffffffffL, &x251);
- { uint64_t x254; uint64_t x253 = _mulx_u64(x205, 0xfe14ffffffffffffL, &x254);
- { uint64_t x256; uint8_t x257 = _addcarryx_u64(0x0, x233, x235, &x256);
- { uint64_t x259; uint8_t x260 = _addcarryx_u64(x257, x236, x238, &x259);
- { uint64_t x262; uint8_t x263 = _addcarryx_u64(x260, x239, x241, &x262);
- { uint64_t x265; uint8_t x266 = _addcarryx_u64(x263, x242, x244, &x265);
- { uint64_t x268; uint8_t x269 = _addcarryx_u64(x266, x245, x247, &x268);
- { uint64_t x271; uint8_t x272 = _addcarryx_u64(x269, x248, x250, &x271);
- { uint64_t x274; uint8_t x275 = _addcarryx_u64(x272, x251, x253, &x274);
- { uint64_t x277; uint8_t _ = _addcarryx_u64(0x0, x275, x254, &x277);
- { uint64_t _; uint8_t x281 = _addcarryx_u64(0x0, x205, x232, &_);
- { uint64_t x283; uint8_t x284 = _addcarryx_u64(x281, x208, x256, &x283);
- { uint64_t x286; uint8_t x287 = _addcarryx_u64(x284, x211, x259, &x286);
- { uint64_t x289; uint8_t x290 = _addcarryx_u64(x287, x214, x262, &x289);
- { uint64_t x292; uint8_t x293 = _addcarryx_u64(x290, x217, x265, &x292);
- { uint64_t x295; uint8_t x296 = _addcarryx_u64(x293, x220, x268, &x295);
- { uint64_t x298; uint8_t x299 = _addcarryx_u64(x296, x223, x271, &x298);
- { uint64_t x301; uint8_t x302 = _addcarryx_u64(x299, x226, x274, &x301);
- { uint64_t x304; uint8_t x305 = _addcarryx_u64(x302, x229, x277, &x304);
- { uint8_t x306 = (x305 + x230);
- { uint64_t x309; uint64_t x308 = _mulx_u64(x9, x19, &x309);
- { uint64_t x312; uint64_t x311 = _mulx_u64(x9, x21, &x312);
- { uint64_t x315; uint64_t x314 = _mulx_u64(x9, x23, &x315);
- { uint64_t x318; uint64_t x317 = _mulx_u64(x9, x25, &x318);
- { uint64_t x321; uint64_t x320 = _mulx_u64(x9, x27, &x321);
- { uint64_t x324; uint64_t x323 = _mulx_u64(x9, x29, &x324);
- { uint64_t x327; uint64_t x326 = _mulx_u64(x9, x31, &x327);
- { uint64_t x330; uint64_t x329 = _mulx_u64(x9, x30, &x330);
- { uint64_t x332; uint8_t x333 = _addcarryx_u64(0x0, x309, x311, &x332);
- { uint64_t x335; uint8_t x336 = _addcarryx_u64(x333, x312, x314, &x335);
- { uint64_t x338; uint8_t x339 = _addcarryx_u64(x336, x315, x317, &x338);
- { uint64_t x341; uint8_t x342 = _addcarryx_u64(x339, x318, x320, &x341);
- { uint64_t x344; uint8_t x345 = _addcarryx_u64(x342, x321, x323, &x344);
- { uint64_t x347; uint8_t x348 = _addcarryx_u64(x345, x324, x326, &x347);
- { uint64_t x350; uint8_t x351 = _addcarryx_u64(x348, x327, x329, &x350);
- { uint64_t x353; uint8_t _ = _addcarryx_u64(0x0, x351, x330, &x353);
- { uint64_t x356; uint8_t x357 = _addcarryx_u64(0x0, x283, x308, &x356);
- { uint64_t x359; uint8_t x360 = _addcarryx_u64(x357, x286, x332, &x359);
- { uint64_t x362; uint8_t x363 = _addcarryx_u64(x360, x289, x335, &x362);
- { uint64_t x365; uint8_t x366 = _addcarryx_u64(x363, x292, x338, &x365);
- { uint64_t x368; uint8_t x369 = _addcarryx_u64(x366, x295, x341, &x368);
- { uint64_t x371; uint8_t x372 = _addcarryx_u64(x369, x298, x344, &x371);
- { uint64_t x374; uint8_t x375 = _addcarryx_u64(x372, x301, x347, &x374);
- { uint64_t x377; uint8_t x378 = _addcarryx_u64(x375, x304, x350, &x377);
- { uint64_t x380; uint8_t x381 = _addcarryx_u64(x378, x306, x353, &x380);
- { uint64_t x384; uint64_t x383 = _mulx_u64(x356, 0xffffffffffffffffL, &x384);
- { uint64_t x387; uint64_t x386 = _mulx_u64(x356, 0xffffffffffffffffL, &x387);
- { uint64_t x390; uint64_t x389 = _mulx_u64(x356, 0xffffffffffffffffL, &x390);
- { uint64_t x393; uint64_t x392 = _mulx_u64(x356, 0xffffffffffffffffL, &x393);
- { uint64_t x396; uint64_t x395 = _mulx_u64(x356, 0xffffffffffffffffL, &x396);
- { uint64_t x399; uint64_t x398 = _mulx_u64(x356, 0xffffffffffffffffL, &x399);
- { uint64_t x402; uint64_t x401 = _mulx_u64(x356, 0xffffffffffffffffL, &x402);
- { uint64_t x405; uint64_t x404 = _mulx_u64(x356, 0xfe14ffffffffffffL, &x405);
- { uint64_t x407; uint8_t x408 = _addcarryx_u64(0x0, x384, x386, &x407);
- { uint64_t x410; uint8_t x411 = _addcarryx_u64(x408, x387, x389, &x410);
- { uint64_t x413; uint8_t x414 = _addcarryx_u64(x411, x390, x392, &x413);
- { uint64_t x416; uint8_t x417 = _addcarryx_u64(x414, x393, x395, &x416);
- { uint64_t x419; uint8_t x420 = _addcarryx_u64(x417, x396, x398, &x419);
- { uint64_t x422; uint8_t x423 = _addcarryx_u64(x420, x399, x401, &x422);
- { uint64_t x425; uint8_t x426 = _addcarryx_u64(x423, x402, x404, &x425);
- { uint64_t x428; uint8_t _ = _addcarryx_u64(0x0, x426, x405, &x428);
- { uint64_t _; uint8_t x432 = _addcarryx_u64(0x0, x356, x383, &_);
- { uint64_t x434; uint8_t x435 = _addcarryx_u64(x432, x359, x407, &x434);
- { uint64_t x437; uint8_t x438 = _addcarryx_u64(x435, x362, x410, &x437);
- { uint64_t x440; uint8_t x441 = _addcarryx_u64(x438, x365, x413, &x440);
- { uint64_t x443; uint8_t x444 = _addcarryx_u64(x441, x368, x416, &x443);
- { uint64_t x446; uint8_t x447 = _addcarryx_u64(x444, x371, x419, &x446);
- { uint64_t x449; uint8_t x450 = _addcarryx_u64(x447, x374, x422, &x449);
- { uint64_t x452; uint8_t x453 = _addcarryx_u64(x450, x377, x425, &x452);
- { uint64_t x455; uint8_t x456 = _addcarryx_u64(x453, x380, x428, &x455);
- { uint8_t x457 = (x456 + x381);
- { uint64_t x460; uint64_t x459 = _mulx_u64(x11, x19, &x460);
- { uint64_t x463; uint64_t x462 = _mulx_u64(x11, x21, &x463);
- { uint64_t x466; uint64_t x465 = _mulx_u64(x11, x23, &x466);
- { uint64_t x469; uint64_t x468 = _mulx_u64(x11, x25, &x469);
- { uint64_t x472; uint64_t x471 = _mulx_u64(x11, x27, &x472);
- { uint64_t x475; uint64_t x474 = _mulx_u64(x11, x29, &x475);
- { uint64_t x478; uint64_t x477 = _mulx_u64(x11, x31, &x478);
- { uint64_t x481; uint64_t x480 = _mulx_u64(x11, x30, &x481);
- { uint64_t x483; uint8_t x484 = _addcarryx_u64(0x0, x460, x462, &x483);
- { uint64_t x486; uint8_t x487 = _addcarryx_u64(x484, x463, x465, &x486);
- { uint64_t x489; uint8_t x490 = _addcarryx_u64(x487, x466, x468, &x489);
- { uint64_t x492; uint8_t x493 = _addcarryx_u64(x490, x469, x471, &x492);
- { uint64_t x495; uint8_t x496 = _addcarryx_u64(x493, x472, x474, &x495);
- { uint64_t x498; uint8_t x499 = _addcarryx_u64(x496, x475, x477, &x498);
- { uint64_t x501; uint8_t x502 = _addcarryx_u64(x499, x478, x480, &x501);
- { uint64_t x504; uint8_t _ = _addcarryx_u64(0x0, x502, x481, &x504);
- { uint64_t x507; uint8_t x508 = _addcarryx_u64(0x0, x434, x459, &x507);
- { uint64_t x510; uint8_t x511 = _addcarryx_u64(x508, x437, x483, &x510);
- { uint64_t x513; uint8_t x514 = _addcarryx_u64(x511, x440, x486, &x513);
- { uint64_t x516; uint8_t x517 = _addcarryx_u64(x514, x443, x489, &x516);
- { uint64_t x519; uint8_t x520 = _addcarryx_u64(x517, x446, x492, &x519);
- { uint64_t x522; uint8_t x523 = _addcarryx_u64(x520, x449, x495, &x522);
- { uint64_t x525; uint8_t x526 = _addcarryx_u64(x523, x452, x498, &x525);
- { uint64_t x528; uint8_t x529 = _addcarryx_u64(x526, x455, x501, &x528);
- { uint64_t x531; uint8_t x532 = _addcarryx_u64(x529, x457, x504, &x531);
- { uint64_t x535; uint64_t x534 = _mulx_u64(x507, 0xffffffffffffffffL, &x535);
- { uint64_t x538; uint64_t x537 = _mulx_u64(x507, 0xffffffffffffffffL, &x538);
- { uint64_t x541; uint64_t x540 = _mulx_u64(x507, 0xffffffffffffffffL, &x541);
- { uint64_t x544; uint64_t x543 = _mulx_u64(x507, 0xffffffffffffffffL, &x544);
- { uint64_t x547; uint64_t x546 = _mulx_u64(x507, 0xffffffffffffffffL, &x547);
- { uint64_t x550; uint64_t x549 = _mulx_u64(x507, 0xffffffffffffffffL, &x550);
- { uint64_t x553; uint64_t x552 = _mulx_u64(x507, 0xffffffffffffffffL, &x553);
- { uint64_t x556; uint64_t x555 = _mulx_u64(x507, 0xfe14ffffffffffffL, &x556);
- { uint64_t x558; uint8_t x559 = _addcarryx_u64(0x0, x535, x537, &x558);
- { uint64_t x561; uint8_t x562 = _addcarryx_u64(x559, x538, x540, &x561);
- { uint64_t x564; uint8_t x565 = _addcarryx_u64(x562, x541, x543, &x564);
- { uint64_t x567; uint8_t x568 = _addcarryx_u64(x565, x544, x546, &x567);
- { uint64_t x570; uint8_t x571 = _addcarryx_u64(x568, x547, x549, &x570);
- { uint64_t x573; uint8_t x574 = _addcarryx_u64(x571, x550, x552, &x573);
- { uint64_t x576; uint8_t x577 = _addcarryx_u64(x574, x553, x555, &x576);
- { uint64_t x579; uint8_t _ = _addcarryx_u64(0x0, x577, x556, &x579);
- { uint64_t _; uint8_t x583 = _addcarryx_u64(0x0, x507, x534, &_);
- { uint64_t x585; uint8_t x586 = _addcarryx_u64(x583, x510, x558, &x585);
- { uint64_t x588; uint8_t x589 = _addcarryx_u64(x586, x513, x561, &x588);
- { uint64_t x591; uint8_t x592 = _addcarryx_u64(x589, x516, x564, &x591);
- { uint64_t x594; uint8_t x595 = _addcarryx_u64(x592, x519, x567, &x594);
- { uint64_t x597; uint8_t x598 = _addcarryx_u64(x595, x522, x570, &x597);
- { uint64_t x600; uint8_t x601 = _addcarryx_u64(x598, x525, x573, &x600);
- { uint64_t x603; uint8_t x604 = _addcarryx_u64(x601, x528, x576, &x603);
- { uint64_t x606; uint8_t x607 = _addcarryx_u64(x604, x531, x579, &x606);
- { uint8_t x608 = (x607 + x532);
- { uint64_t x611; uint64_t x610 = _mulx_u64(x13, x19, &x611);
- { uint64_t x614; uint64_t x613 = _mulx_u64(x13, x21, &x614);
- { uint64_t x617; uint64_t x616 = _mulx_u64(x13, x23, &x617);
- { uint64_t x620; uint64_t x619 = _mulx_u64(x13, x25, &x620);
- { uint64_t x623; uint64_t x622 = _mulx_u64(x13, x27, &x623);
- { uint64_t x626; uint64_t x625 = _mulx_u64(x13, x29, &x626);
- { uint64_t x629; uint64_t x628 = _mulx_u64(x13, x31, &x629);
- { uint64_t x632; uint64_t x631 = _mulx_u64(x13, x30, &x632);
- { uint64_t x634; uint8_t x635 = _addcarryx_u64(0x0, x611, x613, &x634);
- { uint64_t x637; uint8_t x638 = _addcarryx_u64(x635, x614, x616, &x637);
- { uint64_t x640; uint8_t x641 = _addcarryx_u64(x638, x617, x619, &x640);
- { uint64_t x643; uint8_t x644 = _addcarryx_u64(x641, x620, x622, &x643);
- { uint64_t x646; uint8_t x647 = _addcarryx_u64(x644, x623, x625, &x646);
- { uint64_t x649; uint8_t x650 = _addcarryx_u64(x647, x626, x628, &x649);
- { uint64_t x652; uint8_t x653 = _addcarryx_u64(x650, x629, x631, &x652);
- { uint64_t x655; uint8_t _ = _addcarryx_u64(0x0, x653, x632, &x655);
- { uint64_t x658; uint8_t x659 = _addcarryx_u64(0x0, x585, x610, &x658);
- { uint64_t x661; uint8_t x662 = _addcarryx_u64(x659, x588, x634, &x661);
- { uint64_t x664; uint8_t x665 = _addcarryx_u64(x662, x591, x637, &x664);
- { uint64_t x667; uint8_t x668 = _addcarryx_u64(x665, x594, x640, &x667);
- { uint64_t x670; uint8_t x671 = _addcarryx_u64(x668, x597, x643, &x670);
- { uint64_t x673; uint8_t x674 = _addcarryx_u64(x671, x600, x646, &x673);
- { uint64_t x676; uint8_t x677 = _addcarryx_u64(x674, x603, x649, &x676);
- { uint64_t x679; uint8_t x680 = _addcarryx_u64(x677, x606, x652, &x679);
- { uint64_t x682; uint8_t x683 = _addcarryx_u64(x680, x608, x655, &x682);
- { uint64_t x686; uint64_t x685 = _mulx_u64(x658, 0xffffffffffffffffL, &x686);
- { uint64_t x689; uint64_t x688 = _mulx_u64(x658, 0xffffffffffffffffL, &x689);
- { uint64_t x692; uint64_t x691 = _mulx_u64(x658, 0xffffffffffffffffL, &x692);
- { uint64_t x695; uint64_t x694 = _mulx_u64(x658, 0xffffffffffffffffL, &x695);
- { uint64_t x698; uint64_t x697 = _mulx_u64(x658, 0xffffffffffffffffL, &x698);
- { uint64_t x701; uint64_t x700 = _mulx_u64(x658, 0xffffffffffffffffL, &x701);
- { uint64_t x704; uint64_t x703 = _mulx_u64(x658, 0xffffffffffffffffL, &x704);
- { uint64_t x707; uint64_t x706 = _mulx_u64(x658, 0xfe14ffffffffffffL, &x707);
- { uint64_t x709; uint8_t x710 = _addcarryx_u64(0x0, x686, x688, &x709);
- { uint64_t x712; uint8_t x713 = _addcarryx_u64(x710, x689, x691, &x712);
- { uint64_t x715; uint8_t x716 = _addcarryx_u64(x713, x692, x694, &x715);
- { uint64_t x718; uint8_t x719 = _addcarryx_u64(x716, x695, x697, &x718);
- { uint64_t x721; uint8_t x722 = _addcarryx_u64(x719, x698, x700, &x721);
- { uint64_t x724; uint8_t x725 = _addcarryx_u64(x722, x701, x703, &x724);
- { uint64_t x727; uint8_t x728 = _addcarryx_u64(x725, x704, x706, &x727);
- { uint64_t x730; uint8_t _ = _addcarryx_u64(0x0, x728, x707, &x730);
- { uint64_t _; uint8_t x734 = _addcarryx_u64(0x0, x658, x685, &_);
- { uint64_t x736; uint8_t x737 = _addcarryx_u64(x734, x661, x709, &x736);
- { uint64_t x739; uint8_t x740 = _addcarryx_u64(x737, x664, x712, &x739);
- { uint64_t x742; uint8_t x743 = _addcarryx_u64(x740, x667, x715, &x742);
- { uint64_t x745; uint8_t x746 = _addcarryx_u64(x743, x670, x718, &x745);
- { uint64_t x748; uint8_t x749 = _addcarryx_u64(x746, x673, x721, &x748);
- { uint64_t x751; uint8_t x752 = _addcarryx_u64(x749, x676, x724, &x751);
- { uint64_t x754; uint8_t x755 = _addcarryx_u64(x752, x679, x727, &x754);
- { uint64_t x757; uint8_t x758 = _addcarryx_u64(x755, x682, x730, &x757);
- { uint8_t x759 = (x758 + x683);
- { uint64_t x762; uint64_t x761 = _mulx_u64(x15, x19, &x762);
- { uint64_t x765; uint64_t x764 = _mulx_u64(x15, x21, &x765);
- { uint64_t x768; uint64_t x767 = _mulx_u64(x15, x23, &x768);
- { uint64_t x771; uint64_t x770 = _mulx_u64(x15, x25, &x771);
- { uint64_t x774; uint64_t x773 = _mulx_u64(x15, x27, &x774);
- { uint64_t x777; uint64_t x776 = _mulx_u64(x15, x29, &x777);
- { uint64_t x780; uint64_t x779 = _mulx_u64(x15, x31, &x780);
- { uint64_t x783; uint64_t x782 = _mulx_u64(x15, x30, &x783);
- { uint64_t x785; uint8_t x786 = _addcarryx_u64(0x0, x762, x764, &x785);
- { uint64_t x788; uint8_t x789 = _addcarryx_u64(x786, x765, x767, &x788);
- { uint64_t x791; uint8_t x792 = _addcarryx_u64(x789, x768, x770, &x791);
- { uint64_t x794; uint8_t x795 = _addcarryx_u64(x792, x771, x773, &x794);
- { uint64_t x797; uint8_t x798 = _addcarryx_u64(x795, x774, x776, &x797);
- { uint64_t x800; uint8_t x801 = _addcarryx_u64(x798, x777, x779, &x800);
- { uint64_t x803; uint8_t x804 = _addcarryx_u64(x801, x780, x782, &x803);
- { uint64_t x806; uint8_t _ = _addcarryx_u64(0x0, x804, x783, &x806);
- { uint64_t x809; uint8_t x810 = _addcarryx_u64(0x0, x736, x761, &x809);
- { uint64_t x812; uint8_t x813 = _addcarryx_u64(x810, x739, x785, &x812);
- { uint64_t x815; uint8_t x816 = _addcarryx_u64(x813, x742, x788, &x815);
- { uint64_t x818; uint8_t x819 = _addcarryx_u64(x816, x745, x791, &x818);
- { uint64_t x821; uint8_t x822 = _addcarryx_u64(x819, x748, x794, &x821);
- { uint64_t x824; uint8_t x825 = _addcarryx_u64(x822, x751, x797, &x824);
- { uint64_t x827; uint8_t x828 = _addcarryx_u64(x825, x754, x800, &x827);
- { uint64_t x830; uint8_t x831 = _addcarryx_u64(x828, x757, x803, &x830);
- { uint64_t x833; uint8_t x834 = _addcarryx_u64(x831, x759, x806, &x833);
- { uint64_t x837; uint64_t x836 = _mulx_u64(x809, 0xffffffffffffffffL, &x837);
- { uint64_t x840; uint64_t x839 = _mulx_u64(x809, 0xffffffffffffffffL, &x840);
- { uint64_t x843; uint64_t x842 = _mulx_u64(x809, 0xffffffffffffffffL, &x843);
- { uint64_t x846; uint64_t x845 = _mulx_u64(x809, 0xffffffffffffffffL, &x846);
- { uint64_t x849; uint64_t x848 = _mulx_u64(x809, 0xffffffffffffffffL, &x849);
- { uint64_t x852; uint64_t x851 = _mulx_u64(x809, 0xffffffffffffffffL, &x852);
- { uint64_t x855; uint64_t x854 = _mulx_u64(x809, 0xffffffffffffffffL, &x855);
- { uint64_t x858; uint64_t x857 = _mulx_u64(x809, 0xfe14ffffffffffffL, &x858);
- { uint64_t x860; uint8_t x861 = _addcarryx_u64(0x0, x837, x839, &x860);
- { uint64_t x863; uint8_t x864 = _addcarryx_u64(x861, x840, x842, &x863);
- { uint64_t x866; uint8_t x867 = _addcarryx_u64(x864, x843, x845, &x866);
- { uint64_t x869; uint8_t x870 = _addcarryx_u64(x867, x846, x848, &x869);
- { uint64_t x872; uint8_t x873 = _addcarryx_u64(x870, x849, x851, &x872);
- { uint64_t x875; uint8_t x876 = _addcarryx_u64(x873, x852, x854, &x875);
- { uint64_t x878; uint8_t x879 = _addcarryx_u64(x876, x855, x857, &x878);
- { uint64_t x881; uint8_t _ = _addcarryx_u64(0x0, x879, x858, &x881);
- { uint64_t _; uint8_t x885 = _addcarryx_u64(0x0, x809, x836, &_);
- { uint64_t x887; uint8_t x888 = _addcarryx_u64(x885, x812, x860, &x887);
- { uint64_t x890; uint8_t x891 = _addcarryx_u64(x888, x815, x863, &x890);
- { uint64_t x893; uint8_t x894 = _addcarryx_u64(x891, x818, x866, &x893);
- { uint64_t x896; uint8_t x897 = _addcarryx_u64(x894, x821, x869, &x896);
- { uint64_t x899; uint8_t x900 = _addcarryx_u64(x897, x824, x872, &x899);
- { uint64_t x902; uint8_t x903 = _addcarryx_u64(x900, x827, x875, &x902);
- { uint64_t x905; uint8_t x906 = _addcarryx_u64(x903, x830, x878, &x905);
- { uint64_t x908; uint8_t x909 = _addcarryx_u64(x906, x833, x881, &x908);
- { uint8_t x910 = (x909 + x834);
- { uint64_t x913; uint64_t x912 = _mulx_u64(x17, x19, &x913);
- { uint64_t x916; uint64_t x915 = _mulx_u64(x17, x21, &x916);
- { uint64_t x919; uint64_t x918 = _mulx_u64(x17, x23, &x919);
- { uint64_t x922; uint64_t x921 = _mulx_u64(x17, x25, &x922);
- { uint64_t x925; uint64_t x924 = _mulx_u64(x17, x27, &x925);
- { uint64_t x928; uint64_t x927 = _mulx_u64(x17, x29, &x928);
- { uint64_t x931; uint64_t x930 = _mulx_u64(x17, x31, &x931);
- { uint64_t x934; uint64_t x933 = _mulx_u64(x17, x30, &x934);
- { uint64_t x936; uint8_t x937 = _addcarryx_u64(0x0, x913, x915, &x936);
- { uint64_t x939; uint8_t x940 = _addcarryx_u64(x937, x916, x918, &x939);
- { uint64_t x942; uint8_t x943 = _addcarryx_u64(x940, x919, x921, &x942);
- { uint64_t x945; uint8_t x946 = _addcarryx_u64(x943, x922, x924, &x945);
- { uint64_t x948; uint8_t x949 = _addcarryx_u64(x946, x925, x927, &x948);
- { uint64_t x951; uint8_t x952 = _addcarryx_u64(x949, x928, x930, &x951);
- { uint64_t x954; uint8_t x955 = _addcarryx_u64(x952, x931, x933, &x954);
- { uint64_t x957; uint8_t _ = _addcarryx_u64(0x0, x955, x934, &x957);
- { uint64_t x960; uint8_t x961 = _addcarryx_u64(0x0, x887, x912, &x960);
- { uint64_t x963; uint8_t x964 = _addcarryx_u64(x961, x890, x936, &x963);
- { uint64_t x966; uint8_t x967 = _addcarryx_u64(x964, x893, x939, &x966);
- { uint64_t x969; uint8_t x970 = _addcarryx_u64(x967, x896, x942, &x969);
- { uint64_t x972; uint8_t x973 = _addcarryx_u64(x970, x899, x945, &x972);
- { uint64_t x975; uint8_t x976 = _addcarryx_u64(x973, x902, x948, &x975);
- { uint64_t x978; uint8_t x979 = _addcarryx_u64(x976, x905, x951, &x978);
- { uint64_t x981; uint8_t x982 = _addcarryx_u64(x979, x908, x954, &x981);
- { uint64_t x984; uint8_t x985 = _addcarryx_u64(x982, x910, x957, &x984);
- { uint64_t x988; uint64_t x987 = _mulx_u64(x960, 0xffffffffffffffffL, &x988);
- { uint64_t x991; uint64_t x990 = _mulx_u64(x960, 0xffffffffffffffffL, &x991);
- { uint64_t x994; uint64_t x993 = _mulx_u64(x960, 0xffffffffffffffffL, &x994);
- { uint64_t x997; uint64_t x996 = _mulx_u64(x960, 0xffffffffffffffffL, &x997);
- { uint64_t x1000; uint64_t x999 = _mulx_u64(x960, 0xffffffffffffffffL, &x1000);
- { uint64_t x1003; uint64_t x1002 = _mulx_u64(x960, 0xffffffffffffffffL, &x1003);
- { uint64_t x1006; uint64_t x1005 = _mulx_u64(x960, 0xffffffffffffffffL, &x1006);
- { uint64_t x1009; uint64_t x1008 = _mulx_u64(x960, 0xfe14ffffffffffffL, &x1009);
- { uint64_t x1011; uint8_t x1012 = _addcarryx_u64(0x0, x988, x990, &x1011);
- { uint64_t x1014; uint8_t x1015 = _addcarryx_u64(x1012, x991, x993, &x1014);
- { uint64_t x1017; uint8_t x1018 = _addcarryx_u64(x1015, x994, x996, &x1017);
- { uint64_t x1020; uint8_t x1021 = _addcarryx_u64(x1018, x997, x999, &x1020);
- { uint64_t x1023; uint8_t x1024 = _addcarryx_u64(x1021, x1000, x1002, &x1023);
- { uint64_t x1026; uint8_t x1027 = _addcarryx_u64(x1024, x1003, x1005, &x1026);
- { uint64_t x1029; uint8_t x1030 = _addcarryx_u64(x1027, x1006, x1008, &x1029);
- { uint64_t x1032; uint8_t _ = _addcarryx_u64(0x0, x1030, x1009, &x1032);
- { uint64_t _; uint8_t x1036 = _addcarryx_u64(0x0, x960, x987, &_);
- { uint64_t x1038; uint8_t x1039 = _addcarryx_u64(x1036, x963, x1011, &x1038);
- { uint64_t x1041; uint8_t x1042 = _addcarryx_u64(x1039, x966, x1014, &x1041);
- { uint64_t x1044; uint8_t x1045 = _addcarryx_u64(x1042, x969, x1017, &x1044);
- { uint64_t x1047; uint8_t x1048 = _addcarryx_u64(x1045, x972, x1020, &x1047);
- { uint64_t x1050; uint8_t x1051 = _addcarryx_u64(x1048, x975, x1023, &x1050);
- { uint64_t x1053; uint8_t x1054 = _addcarryx_u64(x1051, x978, x1026, &x1053);
- { uint64_t x1056; uint8_t x1057 = _addcarryx_u64(x1054, x981, x1029, &x1056);
- { uint64_t x1059; uint8_t x1060 = _addcarryx_u64(x1057, x984, x1032, &x1059);
- { uint8_t x1061 = (x1060 + x985);
- { uint64_t x1064; uint64_t x1063 = _mulx_u64(x16, x19, &x1064);
- { uint64_t x1067; uint64_t x1066 = _mulx_u64(x16, x21, &x1067);
- { uint64_t x1070; uint64_t x1069 = _mulx_u64(x16, x23, &x1070);
- { uint64_t x1073; uint64_t x1072 = _mulx_u64(x16, x25, &x1073);
- { uint64_t x1076; uint64_t x1075 = _mulx_u64(x16, x27, &x1076);
- { uint64_t x1079; uint64_t x1078 = _mulx_u64(x16, x29, &x1079);
- { uint64_t x1082; uint64_t x1081 = _mulx_u64(x16, x31, &x1082);
- { uint64_t x1085; uint64_t x1084 = _mulx_u64(x16, x30, &x1085);
- { uint64_t x1087; uint8_t x1088 = _addcarryx_u64(0x0, x1064, x1066, &x1087);
- { uint64_t x1090; uint8_t x1091 = _addcarryx_u64(x1088, x1067, x1069, &x1090);
- { uint64_t x1093; uint8_t x1094 = _addcarryx_u64(x1091, x1070, x1072, &x1093);
- { uint64_t x1096; uint8_t x1097 = _addcarryx_u64(x1094, x1073, x1075, &x1096);
- { uint64_t x1099; uint8_t x1100 = _addcarryx_u64(x1097, x1076, x1078, &x1099);
- { uint64_t x1102; uint8_t x1103 = _addcarryx_u64(x1100, x1079, x1081, &x1102);
- { uint64_t x1105; uint8_t x1106 = _addcarryx_u64(x1103, x1082, x1084, &x1105);
- { uint64_t x1108; uint8_t _ = _addcarryx_u64(0x0, x1106, x1085, &x1108);
- { uint64_t x1111; uint8_t x1112 = _addcarryx_u64(0x0, x1038, x1063, &x1111);
- { uint64_t x1114; uint8_t x1115 = _addcarryx_u64(x1112, x1041, x1087, &x1114);
- { uint64_t x1117; uint8_t x1118 = _addcarryx_u64(x1115, x1044, x1090, &x1117);
- { uint64_t x1120; uint8_t x1121 = _addcarryx_u64(x1118, x1047, x1093, &x1120);
- { uint64_t x1123; uint8_t x1124 = _addcarryx_u64(x1121, x1050, x1096, &x1123);
- { uint64_t x1126; uint8_t x1127 = _addcarryx_u64(x1124, x1053, x1099, &x1126);
- { uint64_t x1129; uint8_t x1130 = _addcarryx_u64(x1127, x1056, x1102, &x1129);
- { uint64_t x1132; uint8_t x1133 = _addcarryx_u64(x1130, x1059, x1105, &x1132);
- { uint64_t x1135; uint8_t x1136 = _addcarryx_u64(x1133, x1061, x1108, &x1135);
- { uint64_t x1139; uint64_t x1138 = _mulx_u64(x1111, 0xffffffffffffffffL, &x1139);
- { uint64_t x1142; uint64_t x1141 = _mulx_u64(x1111, 0xffffffffffffffffL, &x1142);
- { uint64_t x1145; uint64_t x1144 = _mulx_u64(x1111, 0xffffffffffffffffL, &x1145);
- { uint64_t x1148; uint64_t x1147 = _mulx_u64(x1111, 0xffffffffffffffffL, &x1148);
- { uint64_t x1151; uint64_t x1150 = _mulx_u64(x1111, 0xffffffffffffffffL, &x1151);
- { uint64_t x1154; uint64_t x1153 = _mulx_u64(x1111, 0xffffffffffffffffL, &x1154);
- { uint64_t x1157; uint64_t x1156 = _mulx_u64(x1111, 0xffffffffffffffffL, &x1157);
- { uint64_t x1160; uint64_t x1159 = _mulx_u64(x1111, 0xfe14ffffffffffffL, &x1160);
- { uint64_t x1162; uint8_t x1163 = _addcarryx_u64(0x0, x1139, x1141, &x1162);
- { uint64_t x1165; uint8_t x1166 = _addcarryx_u64(x1163, x1142, x1144, &x1165);
- { uint64_t x1168; uint8_t x1169 = _addcarryx_u64(x1166, x1145, x1147, &x1168);
- { uint64_t x1171; uint8_t x1172 = _addcarryx_u64(x1169, x1148, x1150, &x1171);
- { uint64_t x1174; uint8_t x1175 = _addcarryx_u64(x1172, x1151, x1153, &x1174);
- { uint64_t x1177; uint8_t x1178 = _addcarryx_u64(x1175, x1154, x1156, &x1177);
- { uint64_t x1180; uint8_t x1181 = _addcarryx_u64(x1178, x1157, x1159, &x1180);
- { uint64_t x1183; uint8_t _ = _addcarryx_u64(0x0, x1181, x1160, &x1183);
- { uint64_t _; uint8_t x1187 = _addcarryx_u64(0x0, x1111, x1138, &_);
- { uint64_t x1189; uint8_t x1190 = _addcarryx_u64(x1187, x1114, x1162, &x1189);
- { uint64_t x1192; uint8_t x1193 = _addcarryx_u64(x1190, x1117, x1165, &x1192);
- { uint64_t x1195; uint8_t x1196 = _addcarryx_u64(x1193, x1120, x1168, &x1195);
- { uint64_t x1198; uint8_t x1199 = _addcarryx_u64(x1196, x1123, x1171, &x1198);
- { uint64_t x1201; uint8_t x1202 = _addcarryx_u64(x1199, x1126, x1174, &x1201);
- { uint64_t x1204; uint8_t x1205 = _addcarryx_u64(x1202, x1129, x1177, &x1204);
- { uint64_t x1207; uint8_t x1208 = _addcarryx_u64(x1205, x1132, x1180, &x1207);
- { uint64_t x1210; uint8_t x1211 = _addcarryx_u64(x1208, x1135, x1183, &x1210);
- { uint8_t x1212 = (x1211 + x1136);
- { uint64_t x1214; uint8_t x1215 = _subborrow_u64(0x0, x1189, 0xffffffffffffffffL, &x1214);
- { uint64_t x1217; uint8_t x1218 = _subborrow_u64(x1215, x1192, 0xffffffffffffffffL, &x1217);
- { uint64_t x1220; uint8_t x1221 = _subborrow_u64(x1218, x1195, 0xffffffffffffffffL, &x1220);
- { uint64_t x1223; uint8_t x1224 = _subborrow_u64(x1221, x1198, 0xffffffffffffffffL, &x1223);
- { uint64_t x1226; uint8_t x1227 = _subborrow_u64(x1224, x1201, 0xffffffffffffffffL, &x1226);
- { uint64_t x1229; uint8_t x1230 = _subborrow_u64(x1227, x1204, 0xffffffffffffffffL, &x1229);
- { uint64_t x1232; uint8_t x1233 = _subborrow_u64(x1230, x1207, 0xffffffffffffffffL, &x1232);
- { uint64_t x1235; uint8_t x1236 = _subborrow_u64(x1233, x1210, 0xfe14ffffffffffffL, &x1235);
- { uint64_t _; uint8_t x1239 = _subborrow_u64(x1236, x1212, 0x0, &_);
- { uint64_t x1240 = cmovznz64(x1239, x1235, x1210);
- { uint64_t x1241 = cmovznz64(x1239, x1232, x1207);
- { uint64_t x1242 = cmovznz64(x1239, x1229, x1204);
- { uint64_t x1243 = cmovznz64(x1239, x1226, x1201);
- { uint64_t x1244 = cmovznz64(x1239, x1223, x1198);
- { uint64_t x1245 = cmovznz64(x1239, x1220, x1195);
- { uint64_t x1246 = cmovznz64(x1239, x1217, x1192);
- { uint64_t x1247 = cmovznz64(x1239, x1214, x1189);
- out[0] = x1247;
- out[1] = x1246;
- out[2] = x1245;
- out[3] = x1244;
- out[4] = x1243;
- out[5] = x1242;
- out[6] = x1241;
- out[7] = x1240;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/femul.v b/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/femul.v
deleted file mode 100644
index a0b64e0ce..000000000
--- a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e512m491x2e496m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/femulDisplay.log b/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/femulDisplay.log
deleted file mode 100644
index aca3dfe9b..000000000
--- a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,423 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x33, uint64_t x34 = mulx_u64(x5, x19);
- uint64_t x36, uint64_t x37 = mulx_u64(x5, x21);
- uint64_t x39, uint64_t x40 = mulx_u64(x5, x23);
- uint64_t x42, uint64_t x43 = mulx_u64(x5, x25);
- uint64_t x45, uint64_t x46 = mulx_u64(x5, x27);
- uint64_t x48, uint64_t x49 = mulx_u64(x5, x29);
- uint64_t x51, uint64_t x52 = mulx_u64(x5, x31);
- uint64_t x54, uint64_t x55 = mulx_u64(x5, x30);
- uint64_t x57, uint8_t x58 = addcarryx_u64(0x0, x34, x36);
- uint64_t x60, uint8_t x61 = addcarryx_u64(x58, x37, x39);
- uint64_t x63, uint8_t x64 = addcarryx_u64(x61, x40, x42);
- uint64_t x66, uint8_t x67 = addcarryx_u64(x64, x43, x45);
- uint64_t x69, uint8_t x70 = addcarryx_u64(x67, x46, x48);
- uint64_t x72, uint8_t x73 = addcarryx_u64(x70, x49, x51);
- uint64_t x75, uint8_t x76 = addcarryx_u64(x73, x52, x54);
- uint64_t x78, uint8_t _ = addcarryx_u64(0x0, x76, x55);
- uint64_t x81, uint64_t x82 = mulx_u64(x33, 0xffffffffffffffffL);
- uint64_t x84, uint64_t x85 = mulx_u64(x33, 0xffffffffffffffffL);
- uint64_t x87, uint64_t x88 = mulx_u64(x33, 0xffffffffffffffffL);
- uint64_t x90, uint64_t x91 = mulx_u64(x33, 0xffffffffffffffffL);
- uint64_t x93, uint64_t x94 = mulx_u64(x33, 0xffffffffffffffffL);
- uint64_t x96, uint64_t x97 = mulx_u64(x33, 0xffffffffffffffffL);
- uint64_t x99, uint64_t x100 = mulx_u64(x33, 0xffffffffffffffffL);
- uint64_t x102, uint64_t x103 = mulx_u64(x33, 0xfe14ffffffffffffL);
- uint64_t x105, uint8_t x106 = addcarryx_u64(0x0, x82, x84);
- uint64_t x108, uint8_t x109 = addcarryx_u64(x106, x85, x87);
- uint64_t x111, uint8_t x112 = addcarryx_u64(x109, x88, x90);
- uint64_t x114, uint8_t x115 = addcarryx_u64(x112, x91, x93);
- uint64_t x117, uint8_t x118 = addcarryx_u64(x115, x94, x96);
- uint64_t x120, uint8_t x121 = addcarryx_u64(x118, x97, x99);
- uint64_t x123, uint8_t x124 = addcarryx_u64(x121, x100, x102);
- uint64_t x126, uint8_t _ = addcarryx_u64(0x0, x124, x103);
- uint64_t _, uint8_t x130 = addcarryx_u64(0x0, x33, x81);
- uint64_t x132, uint8_t x133 = addcarryx_u64(x130, x57, x105);
- uint64_t x135, uint8_t x136 = addcarryx_u64(x133, x60, x108);
- uint64_t x138, uint8_t x139 = addcarryx_u64(x136, x63, x111);
- uint64_t x141, uint8_t x142 = addcarryx_u64(x139, x66, x114);
- uint64_t x144, uint8_t x145 = addcarryx_u64(x142, x69, x117);
- uint64_t x147, uint8_t x148 = addcarryx_u64(x145, x72, x120);
- uint64_t x150, uint8_t x151 = addcarryx_u64(x148, x75, x123);
- uint64_t x153, uint8_t x154 = addcarryx_u64(x151, x78, x126);
- uint8_t x155 = (x154 + 0x0);
- uint64_t x157, uint64_t x158 = mulx_u64(x7, x19);
- uint64_t x160, uint64_t x161 = mulx_u64(x7, x21);
- uint64_t x163, uint64_t x164 = mulx_u64(x7, x23);
- uint64_t x166, uint64_t x167 = mulx_u64(x7, x25);
- uint64_t x169, uint64_t x170 = mulx_u64(x7, x27);
- uint64_t x172, uint64_t x173 = mulx_u64(x7, x29);
- uint64_t x175, uint64_t x176 = mulx_u64(x7, x31);
- uint64_t x178, uint64_t x179 = mulx_u64(x7, x30);
- uint64_t x181, uint8_t x182 = addcarryx_u64(0x0, x158, x160);
- uint64_t x184, uint8_t x185 = addcarryx_u64(x182, x161, x163);
- uint64_t x187, uint8_t x188 = addcarryx_u64(x185, x164, x166);
- uint64_t x190, uint8_t x191 = addcarryx_u64(x188, x167, x169);
- uint64_t x193, uint8_t x194 = addcarryx_u64(x191, x170, x172);
- uint64_t x196, uint8_t x197 = addcarryx_u64(x194, x173, x175);
- uint64_t x199, uint8_t x200 = addcarryx_u64(x197, x176, x178);
- uint64_t x202, uint8_t _ = addcarryx_u64(0x0, x200, x179);
- uint64_t x205, uint8_t x206 = addcarryx_u64(0x0, x132, x157);
- uint64_t x208, uint8_t x209 = addcarryx_u64(x206, x135, x181);
- uint64_t x211, uint8_t x212 = addcarryx_u64(x209, x138, x184);
- uint64_t x214, uint8_t x215 = addcarryx_u64(x212, x141, x187);
- uint64_t x217, uint8_t x218 = addcarryx_u64(x215, x144, x190);
- uint64_t x220, uint8_t x221 = addcarryx_u64(x218, x147, x193);
- uint64_t x223, uint8_t x224 = addcarryx_u64(x221, x150, x196);
- uint64_t x226, uint8_t x227 = addcarryx_u64(x224, x153, x199);
- uint64_t x229, uint8_t x230 = addcarryx_u64(x227, x155, x202);
- uint64_t x232, uint64_t x233 = mulx_u64(x205, 0xffffffffffffffffL);
- uint64_t x235, uint64_t x236 = mulx_u64(x205, 0xffffffffffffffffL);
- uint64_t x238, uint64_t x239 = mulx_u64(x205, 0xffffffffffffffffL);
- uint64_t x241, uint64_t x242 = mulx_u64(x205, 0xffffffffffffffffL);
- uint64_t x244, uint64_t x245 = mulx_u64(x205, 0xffffffffffffffffL);
- uint64_t x247, uint64_t x248 = mulx_u64(x205, 0xffffffffffffffffL);
- uint64_t x250, uint64_t x251 = mulx_u64(x205, 0xffffffffffffffffL);
- uint64_t x253, uint64_t x254 = mulx_u64(x205, 0xfe14ffffffffffffL);
- uint64_t x256, uint8_t x257 = addcarryx_u64(0x0, x233, x235);
- uint64_t x259, uint8_t x260 = addcarryx_u64(x257, x236, x238);
- uint64_t x262, uint8_t x263 = addcarryx_u64(x260, x239, x241);
- uint64_t x265, uint8_t x266 = addcarryx_u64(x263, x242, x244);
- uint64_t x268, uint8_t x269 = addcarryx_u64(x266, x245, x247);
- uint64_t x271, uint8_t x272 = addcarryx_u64(x269, x248, x250);
- uint64_t x274, uint8_t x275 = addcarryx_u64(x272, x251, x253);
- uint64_t x277, uint8_t _ = addcarryx_u64(0x0, x275, x254);
- uint64_t _, uint8_t x281 = addcarryx_u64(0x0, x205, x232);
- uint64_t x283, uint8_t x284 = addcarryx_u64(x281, x208, x256);
- uint64_t x286, uint8_t x287 = addcarryx_u64(x284, x211, x259);
- uint64_t x289, uint8_t x290 = addcarryx_u64(x287, x214, x262);
- uint64_t x292, uint8_t x293 = addcarryx_u64(x290, x217, x265);
- uint64_t x295, uint8_t x296 = addcarryx_u64(x293, x220, x268);
- uint64_t x298, uint8_t x299 = addcarryx_u64(x296, x223, x271);
- uint64_t x301, uint8_t x302 = addcarryx_u64(x299, x226, x274);
- uint64_t x304, uint8_t x305 = addcarryx_u64(x302, x229, x277);
- uint8_t x306 = (x305 + x230);
- uint64_t x308, uint64_t x309 = mulx_u64(x9, x19);
- uint64_t x311, uint64_t x312 = mulx_u64(x9, x21);
- uint64_t x314, uint64_t x315 = mulx_u64(x9, x23);
- uint64_t x317, uint64_t x318 = mulx_u64(x9, x25);
- uint64_t x320, uint64_t x321 = mulx_u64(x9, x27);
- uint64_t x323, uint64_t x324 = mulx_u64(x9, x29);
- uint64_t x326, uint64_t x327 = mulx_u64(x9, x31);
- uint64_t x329, uint64_t x330 = mulx_u64(x9, x30);
- uint64_t x332, uint8_t x333 = addcarryx_u64(0x0, x309, x311);
- uint64_t x335, uint8_t x336 = addcarryx_u64(x333, x312, x314);
- uint64_t x338, uint8_t x339 = addcarryx_u64(x336, x315, x317);
- uint64_t x341, uint8_t x342 = addcarryx_u64(x339, x318, x320);
- uint64_t x344, uint8_t x345 = addcarryx_u64(x342, x321, x323);
- uint64_t x347, uint8_t x348 = addcarryx_u64(x345, x324, x326);
- uint64_t x350, uint8_t x351 = addcarryx_u64(x348, x327, x329);
- uint64_t x353, uint8_t _ = addcarryx_u64(0x0, x351, x330);
- uint64_t x356, uint8_t x357 = addcarryx_u64(0x0, x283, x308);
- uint64_t x359, uint8_t x360 = addcarryx_u64(x357, x286, x332);
- uint64_t x362, uint8_t x363 = addcarryx_u64(x360, x289, x335);
- uint64_t x365, uint8_t x366 = addcarryx_u64(x363, x292, x338);
- uint64_t x368, uint8_t x369 = addcarryx_u64(x366, x295, x341);
- uint64_t x371, uint8_t x372 = addcarryx_u64(x369, x298, x344);
- uint64_t x374, uint8_t x375 = addcarryx_u64(x372, x301, x347);
- uint64_t x377, uint8_t x378 = addcarryx_u64(x375, x304, x350);
- uint64_t x380, uint8_t x381 = addcarryx_u64(x378, x306, x353);
- uint64_t x383, uint64_t x384 = mulx_u64(x356, 0xffffffffffffffffL);
- uint64_t x386, uint64_t x387 = mulx_u64(x356, 0xffffffffffffffffL);
- uint64_t x389, uint64_t x390 = mulx_u64(x356, 0xffffffffffffffffL);
- uint64_t x392, uint64_t x393 = mulx_u64(x356, 0xffffffffffffffffL);
- uint64_t x395, uint64_t x396 = mulx_u64(x356, 0xffffffffffffffffL);
- uint64_t x398, uint64_t x399 = mulx_u64(x356, 0xffffffffffffffffL);
- uint64_t x401, uint64_t x402 = mulx_u64(x356, 0xffffffffffffffffL);
- uint64_t x404, uint64_t x405 = mulx_u64(x356, 0xfe14ffffffffffffL);
- uint64_t x407, uint8_t x408 = addcarryx_u64(0x0, x384, x386);
- uint64_t x410, uint8_t x411 = addcarryx_u64(x408, x387, x389);
- uint64_t x413, uint8_t x414 = addcarryx_u64(x411, x390, x392);
- uint64_t x416, uint8_t x417 = addcarryx_u64(x414, x393, x395);
- uint64_t x419, uint8_t x420 = addcarryx_u64(x417, x396, x398);
- uint64_t x422, uint8_t x423 = addcarryx_u64(x420, x399, x401);
- uint64_t x425, uint8_t x426 = addcarryx_u64(x423, x402, x404);
- uint64_t x428, uint8_t _ = addcarryx_u64(0x0, x426, x405);
- uint64_t _, uint8_t x432 = addcarryx_u64(0x0, x356, x383);
- uint64_t x434, uint8_t x435 = addcarryx_u64(x432, x359, x407);
- uint64_t x437, uint8_t x438 = addcarryx_u64(x435, x362, x410);
- uint64_t x440, uint8_t x441 = addcarryx_u64(x438, x365, x413);
- uint64_t x443, uint8_t x444 = addcarryx_u64(x441, x368, x416);
- uint64_t x446, uint8_t x447 = addcarryx_u64(x444, x371, x419);
- uint64_t x449, uint8_t x450 = addcarryx_u64(x447, x374, x422);
- uint64_t x452, uint8_t x453 = addcarryx_u64(x450, x377, x425);
- uint64_t x455, uint8_t x456 = addcarryx_u64(x453, x380, x428);
- uint8_t x457 = (x456 + x381);
- uint64_t x459, uint64_t x460 = mulx_u64(x11, x19);
- uint64_t x462, uint64_t x463 = mulx_u64(x11, x21);
- uint64_t x465, uint64_t x466 = mulx_u64(x11, x23);
- uint64_t x468, uint64_t x469 = mulx_u64(x11, x25);
- uint64_t x471, uint64_t x472 = mulx_u64(x11, x27);
- uint64_t x474, uint64_t x475 = mulx_u64(x11, x29);
- uint64_t x477, uint64_t x478 = mulx_u64(x11, x31);
- uint64_t x480, uint64_t x481 = mulx_u64(x11, x30);
- uint64_t x483, uint8_t x484 = addcarryx_u64(0x0, x460, x462);
- uint64_t x486, uint8_t x487 = addcarryx_u64(x484, x463, x465);
- uint64_t x489, uint8_t x490 = addcarryx_u64(x487, x466, x468);
- uint64_t x492, uint8_t x493 = addcarryx_u64(x490, x469, x471);
- uint64_t x495, uint8_t x496 = addcarryx_u64(x493, x472, x474);
- uint64_t x498, uint8_t x499 = addcarryx_u64(x496, x475, x477);
- uint64_t x501, uint8_t x502 = addcarryx_u64(x499, x478, x480);
- uint64_t x504, uint8_t _ = addcarryx_u64(0x0, x502, x481);
- uint64_t x507, uint8_t x508 = addcarryx_u64(0x0, x434, x459);
- uint64_t x510, uint8_t x511 = addcarryx_u64(x508, x437, x483);
- uint64_t x513, uint8_t x514 = addcarryx_u64(x511, x440, x486);
- uint64_t x516, uint8_t x517 = addcarryx_u64(x514, x443, x489);
- uint64_t x519, uint8_t x520 = addcarryx_u64(x517, x446, x492);
- uint64_t x522, uint8_t x523 = addcarryx_u64(x520, x449, x495);
- uint64_t x525, uint8_t x526 = addcarryx_u64(x523, x452, x498);
- uint64_t x528, uint8_t x529 = addcarryx_u64(x526, x455, x501);
- uint64_t x531, uint8_t x532 = addcarryx_u64(x529, x457, x504);
- uint64_t x534, uint64_t x535 = mulx_u64(x507, 0xffffffffffffffffL);
- uint64_t x537, uint64_t x538 = mulx_u64(x507, 0xffffffffffffffffL);
- uint64_t x540, uint64_t x541 = mulx_u64(x507, 0xffffffffffffffffL);
- uint64_t x543, uint64_t x544 = mulx_u64(x507, 0xffffffffffffffffL);
- uint64_t x546, uint64_t x547 = mulx_u64(x507, 0xffffffffffffffffL);
- uint64_t x549, uint64_t x550 = mulx_u64(x507, 0xffffffffffffffffL);
- uint64_t x552, uint64_t x553 = mulx_u64(x507, 0xffffffffffffffffL);
- uint64_t x555, uint64_t x556 = mulx_u64(x507, 0xfe14ffffffffffffL);
- uint64_t x558, uint8_t x559 = addcarryx_u64(0x0, x535, x537);
- uint64_t x561, uint8_t x562 = addcarryx_u64(x559, x538, x540);
- uint64_t x564, uint8_t x565 = addcarryx_u64(x562, x541, x543);
- uint64_t x567, uint8_t x568 = addcarryx_u64(x565, x544, x546);
- uint64_t x570, uint8_t x571 = addcarryx_u64(x568, x547, x549);
- uint64_t x573, uint8_t x574 = addcarryx_u64(x571, x550, x552);
- uint64_t x576, uint8_t x577 = addcarryx_u64(x574, x553, x555);
- uint64_t x579, uint8_t _ = addcarryx_u64(0x0, x577, x556);
- uint64_t _, uint8_t x583 = addcarryx_u64(0x0, x507, x534);
- uint64_t x585, uint8_t x586 = addcarryx_u64(x583, x510, x558);
- uint64_t x588, uint8_t x589 = addcarryx_u64(x586, x513, x561);
- uint64_t x591, uint8_t x592 = addcarryx_u64(x589, x516, x564);
- uint64_t x594, uint8_t x595 = addcarryx_u64(x592, x519, x567);
- uint64_t x597, uint8_t x598 = addcarryx_u64(x595, x522, x570);
- uint64_t x600, uint8_t x601 = addcarryx_u64(x598, x525, x573);
- uint64_t x603, uint8_t x604 = addcarryx_u64(x601, x528, x576);
- uint64_t x606, uint8_t x607 = addcarryx_u64(x604, x531, x579);
- uint8_t x608 = (x607 + x532);
- uint64_t x610, uint64_t x611 = mulx_u64(x13, x19);
- uint64_t x613, uint64_t x614 = mulx_u64(x13, x21);
- uint64_t x616, uint64_t x617 = mulx_u64(x13, x23);
- uint64_t x619, uint64_t x620 = mulx_u64(x13, x25);
- uint64_t x622, uint64_t x623 = mulx_u64(x13, x27);
- uint64_t x625, uint64_t x626 = mulx_u64(x13, x29);
- uint64_t x628, uint64_t x629 = mulx_u64(x13, x31);
- uint64_t x631, uint64_t x632 = mulx_u64(x13, x30);
- uint64_t x634, uint8_t x635 = addcarryx_u64(0x0, x611, x613);
- uint64_t x637, uint8_t x638 = addcarryx_u64(x635, x614, x616);
- uint64_t x640, uint8_t x641 = addcarryx_u64(x638, x617, x619);
- uint64_t x643, uint8_t x644 = addcarryx_u64(x641, x620, x622);
- uint64_t x646, uint8_t x647 = addcarryx_u64(x644, x623, x625);
- uint64_t x649, uint8_t x650 = addcarryx_u64(x647, x626, x628);
- uint64_t x652, uint8_t x653 = addcarryx_u64(x650, x629, x631);
- uint64_t x655, uint8_t _ = addcarryx_u64(0x0, x653, x632);
- uint64_t x658, uint8_t x659 = addcarryx_u64(0x0, x585, x610);
- uint64_t x661, uint8_t x662 = addcarryx_u64(x659, x588, x634);
- uint64_t x664, uint8_t x665 = addcarryx_u64(x662, x591, x637);
- uint64_t x667, uint8_t x668 = addcarryx_u64(x665, x594, x640);
- uint64_t x670, uint8_t x671 = addcarryx_u64(x668, x597, x643);
- uint64_t x673, uint8_t x674 = addcarryx_u64(x671, x600, x646);
- uint64_t x676, uint8_t x677 = addcarryx_u64(x674, x603, x649);
- uint64_t x679, uint8_t x680 = addcarryx_u64(x677, x606, x652);
- uint64_t x682, uint8_t x683 = addcarryx_u64(x680, x608, x655);
- uint64_t x685, uint64_t x686 = mulx_u64(x658, 0xffffffffffffffffL);
- uint64_t x688, uint64_t x689 = mulx_u64(x658, 0xffffffffffffffffL);
- uint64_t x691, uint64_t x692 = mulx_u64(x658, 0xffffffffffffffffL);
- uint64_t x694, uint64_t x695 = mulx_u64(x658, 0xffffffffffffffffL);
- uint64_t x697, uint64_t x698 = mulx_u64(x658, 0xffffffffffffffffL);
- uint64_t x700, uint64_t x701 = mulx_u64(x658, 0xffffffffffffffffL);
- uint64_t x703, uint64_t x704 = mulx_u64(x658, 0xffffffffffffffffL);
- uint64_t x706, uint64_t x707 = mulx_u64(x658, 0xfe14ffffffffffffL);
- uint64_t x709, uint8_t x710 = addcarryx_u64(0x0, x686, x688);
- uint64_t x712, uint8_t x713 = addcarryx_u64(x710, x689, x691);
- uint64_t x715, uint8_t x716 = addcarryx_u64(x713, x692, x694);
- uint64_t x718, uint8_t x719 = addcarryx_u64(x716, x695, x697);
- uint64_t x721, uint8_t x722 = addcarryx_u64(x719, x698, x700);
- uint64_t x724, uint8_t x725 = addcarryx_u64(x722, x701, x703);
- uint64_t x727, uint8_t x728 = addcarryx_u64(x725, x704, x706);
- uint64_t x730, uint8_t _ = addcarryx_u64(0x0, x728, x707);
- uint64_t _, uint8_t x734 = addcarryx_u64(0x0, x658, x685);
- uint64_t x736, uint8_t x737 = addcarryx_u64(x734, x661, x709);
- uint64_t x739, uint8_t x740 = addcarryx_u64(x737, x664, x712);
- uint64_t x742, uint8_t x743 = addcarryx_u64(x740, x667, x715);
- uint64_t x745, uint8_t x746 = addcarryx_u64(x743, x670, x718);
- uint64_t x748, uint8_t x749 = addcarryx_u64(x746, x673, x721);
- uint64_t x751, uint8_t x752 = addcarryx_u64(x749, x676, x724);
- uint64_t x754, uint8_t x755 = addcarryx_u64(x752, x679, x727);
- uint64_t x757, uint8_t x758 = addcarryx_u64(x755, x682, x730);
- uint8_t x759 = (x758 + x683);
- uint64_t x761, uint64_t x762 = mulx_u64(x15, x19);
- uint64_t x764, uint64_t x765 = mulx_u64(x15, x21);
- uint64_t x767, uint64_t x768 = mulx_u64(x15, x23);
- uint64_t x770, uint64_t x771 = mulx_u64(x15, x25);
- uint64_t x773, uint64_t x774 = mulx_u64(x15, x27);
- uint64_t x776, uint64_t x777 = mulx_u64(x15, x29);
- uint64_t x779, uint64_t x780 = mulx_u64(x15, x31);
- uint64_t x782, uint64_t x783 = mulx_u64(x15, x30);
- uint64_t x785, uint8_t x786 = addcarryx_u64(0x0, x762, x764);
- uint64_t x788, uint8_t x789 = addcarryx_u64(x786, x765, x767);
- uint64_t x791, uint8_t x792 = addcarryx_u64(x789, x768, x770);
- uint64_t x794, uint8_t x795 = addcarryx_u64(x792, x771, x773);
- uint64_t x797, uint8_t x798 = addcarryx_u64(x795, x774, x776);
- uint64_t x800, uint8_t x801 = addcarryx_u64(x798, x777, x779);
- uint64_t x803, uint8_t x804 = addcarryx_u64(x801, x780, x782);
- uint64_t x806, uint8_t _ = addcarryx_u64(0x0, x804, x783);
- uint64_t x809, uint8_t x810 = addcarryx_u64(0x0, x736, x761);
- uint64_t x812, uint8_t x813 = addcarryx_u64(x810, x739, x785);
- uint64_t x815, uint8_t x816 = addcarryx_u64(x813, x742, x788);
- uint64_t x818, uint8_t x819 = addcarryx_u64(x816, x745, x791);
- uint64_t x821, uint8_t x822 = addcarryx_u64(x819, x748, x794);
- uint64_t x824, uint8_t x825 = addcarryx_u64(x822, x751, x797);
- uint64_t x827, uint8_t x828 = addcarryx_u64(x825, x754, x800);
- uint64_t x830, uint8_t x831 = addcarryx_u64(x828, x757, x803);
- uint64_t x833, uint8_t x834 = addcarryx_u64(x831, x759, x806);
- uint64_t x836, uint64_t x837 = mulx_u64(x809, 0xffffffffffffffffL);
- uint64_t x839, uint64_t x840 = mulx_u64(x809, 0xffffffffffffffffL);
- uint64_t x842, uint64_t x843 = mulx_u64(x809, 0xffffffffffffffffL);
- uint64_t x845, uint64_t x846 = mulx_u64(x809, 0xffffffffffffffffL);
- uint64_t x848, uint64_t x849 = mulx_u64(x809, 0xffffffffffffffffL);
- uint64_t x851, uint64_t x852 = mulx_u64(x809, 0xffffffffffffffffL);
- uint64_t x854, uint64_t x855 = mulx_u64(x809, 0xffffffffffffffffL);
- uint64_t x857, uint64_t x858 = mulx_u64(x809, 0xfe14ffffffffffffL);
- uint64_t x860, uint8_t x861 = addcarryx_u64(0x0, x837, x839);
- uint64_t x863, uint8_t x864 = addcarryx_u64(x861, x840, x842);
- uint64_t x866, uint8_t x867 = addcarryx_u64(x864, x843, x845);
- uint64_t x869, uint8_t x870 = addcarryx_u64(x867, x846, x848);
- uint64_t x872, uint8_t x873 = addcarryx_u64(x870, x849, x851);
- uint64_t x875, uint8_t x876 = addcarryx_u64(x873, x852, x854);
- uint64_t x878, uint8_t x879 = addcarryx_u64(x876, x855, x857);
- uint64_t x881, uint8_t _ = addcarryx_u64(0x0, x879, x858);
- uint64_t _, uint8_t x885 = addcarryx_u64(0x0, x809, x836);
- uint64_t x887, uint8_t x888 = addcarryx_u64(x885, x812, x860);
- uint64_t x890, uint8_t x891 = addcarryx_u64(x888, x815, x863);
- uint64_t x893, uint8_t x894 = addcarryx_u64(x891, x818, x866);
- uint64_t x896, uint8_t x897 = addcarryx_u64(x894, x821, x869);
- uint64_t x899, uint8_t x900 = addcarryx_u64(x897, x824, x872);
- uint64_t x902, uint8_t x903 = addcarryx_u64(x900, x827, x875);
- uint64_t x905, uint8_t x906 = addcarryx_u64(x903, x830, x878);
- uint64_t x908, uint8_t x909 = addcarryx_u64(x906, x833, x881);
- uint8_t x910 = (x909 + x834);
- uint64_t x912, uint64_t x913 = mulx_u64(x17, x19);
- uint64_t x915, uint64_t x916 = mulx_u64(x17, x21);
- uint64_t x918, uint64_t x919 = mulx_u64(x17, x23);
- uint64_t x921, uint64_t x922 = mulx_u64(x17, x25);
- uint64_t x924, uint64_t x925 = mulx_u64(x17, x27);
- uint64_t x927, uint64_t x928 = mulx_u64(x17, x29);
- uint64_t x930, uint64_t x931 = mulx_u64(x17, x31);
- uint64_t x933, uint64_t x934 = mulx_u64(x17, x30);
- uint64_t x936, uint8_t x937 = addcarryx_u64(0x0, x913, x915);
- uint64_t x939, uint8_t x940 = addcarryx_u64(x937, x916, x918);
- uint64_t x942, uint8_t x943 = addcarryx_u64(x940, x919, x921);
- uint64_t x945, uint8_t x946 = addcarryx_u64(x943, x922, x924);
- uint64_t x948, uint8_t x949 = addcarryx_u64(x946, x925, x927);
- uint64_t x951, uint8_t x952 = addcarryx_u64(x949, x928, x930);
- uint64_t x954, uint8_t x955 = addcarryx_u64(x952, x931, x933);
- uint64_t x957, uint8_t _ = addcarryx_u64(0x0, x955, x934);
- uint64_t x960, uint8_t x961 = addcarryx_u64(0x0, x887, x912);
- uint64_t x963, uint8_t x964 = addcarryx_u64(x961, x890, x936);
- uint64_t x966, uint8_t x967 = addcarryx_u64(x964, x893, x939);
- uint64_t x969, uint8_t x970 = addcarryx_u64(x967, x896, x942);
- uint64_t x972, uint8_t x973 = addcarryx_u64(x970, x899, x945);
- uint64_t x975, uint8_t x976 = addcarryx_u64(x973, x902, x948);
- uint64_t x978, uint8_t x979 = addcarryx_u64(x976, x905, x951);
- uint64_t x981, uint8_t x982 = addcarryx_u64(x979, x908, x954);
- uint64_t x984, uint8_t x985 = addcarryx_u64(x982, x910, x957);
- uint64_t x987, uint64_t x988 = mulx_u64(x960, 0xffffffffffffffffL);
- uint64_t x990, uint64_t x991 = mulx_u64(x960, 0xffffffffffffffffL);
- uint64_t x993, uint64_t x994 = mulx_u64(x960, 0xffffffffffffffffL);
- uint64_t x996, uint64_t x997 = mulx_u64(x960, 0xffffffffffffffffL);
- uint64_t x999, uint64_t x1000 = mulx_u64(x960, 0xffffffffffffffffL);
- uint64_t x1002, uint64_t x1003 = mulx_u64(x960, 0xffffffffffffffffL);
- uint64_t x1005, uint64_t x1006 = mulx_u64(x960, 0xffffffffffffffffL);
- uint64_t x1008, uint64_t x1009 = mulx_u64(x960, 0xfe14ffffffffffffL);
- uint64_t x1011, uint8_t x1012 = addcarryx_u64(0x0, x988, x990);
- uint64_t x1014, uint8_t x1015 = addcarryx_u64(x1012, x991, x993);
- uint64_t x1017, uint8_t x1018 = addcarryx_u64(x1015, x994, x996);
- uint64_t x1020, uint8_t x1021 = addcarryx_u64(x1018, x997, x999);
- uint64_t x1023, uint8_t x1024 = addcarryx_u64(x1021, x1000, x1002);
- uint64_t x1026, uint8_t x1027 = addcarryx_u64(x1024, x1003, x1005);
- uint64_t x1029, uint8_t x1030 = addcarryx_u64(x1027, x1006, x1008);
- uint64_t x1032, uint8_t _ = addcarryx_u64(0x0, x1030, x1009);
- uint64_t _, uint8_t x1036 = addcarryx_u64(0x0, x960, x987);
- uint64_t x1038, uint8_t x1039 = addcarryx_u64(x1036, x963, x1011);
- uint64_t x1041, uint8_t x1042 = addcarryx_u64(x1039, x966, x1014);
- uint64_t x1044, uint8_t x1045 = addcarryx_u64(x1042, x969, x1017);
- uint64_t x1047, uint8_t x1048 = addcarryx_u64(x1045, x972, x1020);
- uint64_t x1050, uint8_t x1051 = addcarryx_u64(x1048, x975, x1023);
- uint64_t x1053, uint8_t x1054 = addcarryx_u64(x1051, x978, x1026);
- uint64_t x1056, uint8_t x1057 = addcarryx_u64(x1054, x981, x1029);
- uint64_t x1059, uint8_t x1060 = addcarryx_u64(x1057, x984, x1032);
- uint8_t x1061 = (x1060 + x985);
- uint64_t x1063, uint64_t x1064 = mulx_u64(x16, x19);
- uint64_t x1066, uint64_t x1067 = mulx_u64(x16, x21);
- uint64_t x1069, uint64_t x1070 = mulx_u64(x16, x23);
- uint64_t x1072, uint64_t x1073 = mulx_u64(x16, x25);
- uint64_t x1075, uint64_t x1076 = mulx_u64(x16, x27);
- uint64_t x1078, uint64_t x1079 = mulx_u64(x16, x29);
- uint64_t x1081, uint64_t x1082 = mulx_u64(x16, x31);
- uint64_t x1084, uint64_t x1085 = mulx_u64(x16, x30);
- uint64_t x1087, uint8_t x1088 = addcarryx_u64(0x0, x1064, x1066);
- uint64_t x1090, uint8_t x1091 = addcarryx_u64(x1088, x1067, x1069);
- uint64_t x1093, uint8_t x1094 = addcarryx_u64(x1091, x1070, x1072);
- uint64_t x1096, uint8_t x1097 = addcarryx_u64(x1094, x1073, x1075);
- uint64_t x1099, uint8_t x1100 = addcarryx_u64(x1097, x1076, x1078);
- uint64_t x1102, uint8_t x1103 = addcarryx_u64(x1100, x1079, x1081);
- uint64_t x1105, uint8_t x1106 = addcarryx_u64(x1103, x1082, x1084);
- uint64_t x1108, uint8_t _ = addcarryx_u64(0x0, x1106, x1085);
- uint64_t x1111, uint8_t x1112 = addcarryx_u64(0x0, x1038, x1063);
- uint64_t x1114, uint8_t x1115 = addcarryx_u64(x1112, x1041, x1087);
- uint64_t x1117, uint8_t x1118 = addcarryx_u64(x1115, x1044, x1090);
- uint64_t x1120, uint8_t x1121 = addcarryx_u64(x1118, x1047, x1093);
- uint64_t x1123, uint8_t x1124 = addcarryx_u64(x1121, x1050, x1096);
- uint64_t x1126, uint8_t x1127 = addcarryx_u64(x1124, x1053, x1099);
- uint64_t x1129, uint8_t x1130 = addcarryx_u64(x1127, x1056, x1102);
- uint64_t x1132, uint8_t x1133 = addcarryx_u64(x1130, x1059, x1105);
- uint64_t x1135, uint8_t x1136 = addcarryx_u64(x1133, x1061, x1108);
- uint64_t x1138, uint64_t x1139 = mulx_u64(x1111, 0xffffffffffffffffL);
- uint64_t x1141, uint64_t x1142 = mulx_u64(x1111, 0xffffffffffffffffL);
- uint64_t x1144, uint64_t x1145 = mulx_u64(x1111, 0xffffffffffffffffL);
- uint64_t x1147, uint64_t x1148 = mulx_u64(x1111, 0xffffffffffffffffL);
- uint64_t x1150, uint64_t x1151 = mulx_u64(x1111, 0xffffffffffffffffL);
- uint64_t x1153, uint64_t x1154 = mulx_u64(x1111, 0xffffffffffffffffL);
- uint64_t x1156, uint64_t x1157 = mulx_u64(x1111, 0xffffffffffffffffL);
- uint64_t x1159, uint64_t x1160 = mulx_u64(x1111, 0xfe14ffffffffffffL);
- uint64_t x1162, uint8_t x1163 = addcarryx_u64(0x0, x1139, x1141);
- uint64_t x1165, uint8_t x1166 = addcarryx_u64(x1163, x1142, x1144);
- uint64_t x1168, uint8_t x1169 = addcarryx_u64(x1166, x1145, x1147);
- uint64_t x1171, uint8_t x1172 = addcarryx_u64(x1169, x1148, x1150);
- uint64_t x1174, uint8_t x1175 = addcarryx_u64(x1172, x1151, x1153);
- uint64_t x1177, uint8_t x1178 = addcarryx_u64(x1175, x1154, x1156);
- uint64_t x1180, uint8_t x1181 = addcarryx_u64(x1178, x1157, x1159);
- uint64_t x1183, uint8_t _ = addcarryx_u64(0x0, x1181, x1160);
- uint64_t _, uint8_t x1187 = addcarryx_u64(0x0, x1111, x1138);
- uint64_t x1189, uint8_t x1190 = addcarryx_u64(x1187, x1114, x1162);
- uint64_t x1192, uint8_t x1193 = addcarryx_u64(x1190, x1117, x1165);
- uint64_t x1195, uint8_t x1196 = addcarryx_u64(x1193, x1120, x1168);
- uint64_t x1198, uint8_t x1199 = addcarryx_u64(x1196, x1123, x1171);
- uint64_t x1201, uint8_t x1202 = addcarryx_u64(x1199, x1126, x1174);
- uint64_t x1204, uint8_t x1205 = addcarryx_u64(x1202, x1129, x1177);
- uint64_t x1207, uint8_t x1208 = addcarryx_u64(x1205, x1132, x1180);
- uint64_t x1210, uint8_t x1211 = addcarryx_u64(x1208, x1135, x1183);
- uint8_t x1212 = (x1211 + x1136);
- uint64_t x1214, uint8_t x1215 = subborrow_u64(0x0, x1189, 0xffffffffffffffffL);
- uint64_t x1217, uint8_t x1218 = subborrow_u64(x1215, x1192, 0xffffffffffffffffL);
- uint64_t x1220, uint8_t x1221 = subborrow_u64(x1218, x1195, 0xffffffffffffffffL);
- uint64_t x1223, uint8_t x1224 = subborrow_u64(x1221, x1198, 0xffffffffffffffffL);
- uint64_t x1226, uint8_t x1227 = subborrow_u64(x1224, x1201, 0xffffffffffffffffL);
- uint64_t x1229, uint8_t x1230 = subborrow_u64(x1227, x1204, 0xffffffffffffffffL);
- uint64_t x1232, uint8_t x1233 = subborrow_u64(x1230, x1207, 0xffffffffffffffffL);
- uint64_t x1235, uint8_t x1236 = subborrow_u64(x1233, x1210, 0xfe14ffffffffffffL);
- uint64_t _, uint8_t x1239 = subborrow_u64(x1236, x1212, 0x0);
- uint64_t x1240 = cmovznz64(x1239, x1235, x1210);
- uint64_t x1241 = cmovznz64(x1239, x1232, x1207);
- uint64_t x1242 = cmovznz64(x1239, x1229, x1204);
- uint64_t x1243 = cmovznz64(x1239, x1226, x1201);
- uint64_t x1244 = cmovznz64(x1239, x1223, x1198);
- uint64_t x1245 = cmovznz64(x1239, x1220, x1195);
- uint64_t x1246 = cmovznz64(x1239, x1217, x1192);
- uint64_t x1247 = cmovznz64(x1239, x1214, x1189);
- return (x1240, x1241, x1242, x1243, x1244, x1245, x1246, x1247))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/femulDisplay.v b/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/femulDisplay.v
deleted file mode 100644
index af2bac0e2..000000000
--- a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e512m491x2e496m1_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fenz.c b/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fenz.c
deleted file mode 100644
index a07b0df9c..000000000
--- a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x15 = (x14 | x13);
- { uint64_t x16 = (x12 | x15);
- { uint64_t x17 = (x10 | x16);
- { uint64_t x18 = (x8 | x17);
- { uint64_t x19 = (x6 | x18);
- { uint64_t x20 = (x4 | x19);
- { uint64_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fenz.v b/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fenz.v
deleted file mode 100644
index ffbd55b1c..000000000
--- a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e512m491x2e496m1_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fenzDisplay.log b/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fenzDisplay.log
deleted file mode 100644
index a05fc22ab..000000000
--- a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (x14 | x13);
- uint64_t x16 = (x12 | x15);
- uint64_t x17 = (x10 | x16);
- uint64_t x18 = (x8 | x17);
- uint64_t x19 = (x6 | x18);
- uint64_t x20 = (x4 | x19);
- uint64_t x21 = (x2 | x20);
- return x21)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fenzDisplay.v b/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fenzDisplay.v
deleted file mode 100644
index 86cc8d400..000000000
--- a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e512m491x2e496m1_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/feopp.v b/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/feopp.v
deleted file mode 100644
index 2504b74b6..000000000
--- a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e512m491x2e496m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/feoppDisplay.v b/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/feoppDisplay.v
deleted file mode 100644
index 29884c531..000000000
--- a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e512m491x2e496m1_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fesquare.c b/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fesub.v b/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fesub.v
deleted file mode 100644
index ee4037366..000000000
--- a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e512m491x2e496m1_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fesubDisplay.v b/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fesubDisplay.v
deleted file mode 100644
index 60e9e7a8e..000000000
--- a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e512m491x2e496m1_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/py_interpreter.sh b/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/py_interpreter.sh
deleted file mode 100755
index bb934a309..000000000
--- a/src/Specific/montgomery64_2e512m491x2e496m1_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**512 - 491*2**496 - 1' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e512m569_8limbs/CurveParameters.v b/src/Specific/montgomery64_2e512m569_8limbs/CurveParameters.v
deleted file mode 100644
index 0496d086b..000000000
--- a/src/Specific/montgomery64_2e512m569_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^512 - 569
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 64;
- bitwidth := 64;
- s := 2^512;
- c := [(1, 569)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e512m569_8limbs/Synthesis.v b/src/Specific/montgomery64_2e512m569_8limbs/Synthesis.v
deleted file mode 100644
index 9c86a7e79..000000000
--- a/src/Specific/montgomery64_2e512m569_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e512m569_8limbs.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/montgomery64_2e512m569_8limbs/compiler.sh b/src/Specific/montgomery64_2e512m569_8limbs/compiler.sh
deleted file mode 100755
index 606de5ed7..000000000
--- a/src/Specific/montgomery64_2e512m569_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<512) - 569' "$@"
diff --git a/src/Specific/montgomery64_2e512m569_8limbs/compilerxx.sh b/src/Specific/montgomery64_2e512m569_8limbs/compilerxx.sh
deleted file mode 100755
index 596166577..000000000
--- a/src/Specific/montgomery64_2e512m569_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<512) - 569' "$@"
diff --git a/src/Specific/montgomery64_2e512m569_8limbs/feadd.c b/src/Specific/montgomery64_2e512m569_8limbs/feadd.c
deleted file mode 100644
index 5ef15f5f9..000000000
--- a/src/Specific/montgomery64_2e512m569_8limbs/feadd.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint64_t x33; uint8_t x34 = _addcarryx_u64(0x0, x5, x19, &x33);
- { uint64_t x36; uint8_t x37 = _addcarryx_u64(x34, x7, x21, &x36);
- { uint64_t x39; uint8_t x40 = _addcarryx_u64(x37, x9, x23, &x39);
- { uint64_t x42; uint8_t x43 = _addcarryx_u64(x40, x11, x25, &x42);
- { uint64_t x45; uint8_t x46 = _addcarryx_u64(x43, x13, x27, &x45);
- { uint64_t x48; uint8_t x49 = _addcarryx_u64(x46, x15, x29, &x48);
- { uint64_t x51; uint8_t x52 = _addcarryx_u64(x49, x17, x31, &x51);
- { uint64_t x54; uint8_t x55 = _addcarryx_u64(x52, x16, x30, &x54);
- { uint64_t x57; uint8_t x58 = _subborrow_u64(0x0, x33, 0xfffffffffffffdc7L, &x57);
- { uint64_t x60; uint8_t x61 = _subborrow_u64(x58, x36, 0xffffffffffffffffL, &x60);
- { uint64_t x63; uint8_t x64 = _subborrow_u64(x61, x39, 0xffffffffffffffffL, &x63);
- { uint64_t x66; uint8_t x67 = _subborrow_u64(x64, x42, 0xffffffffffffffffL, &x66);
- { uint64_t x69; uint8_t x70 = _subborrow_u64(x67, x45, 0xffffffffffffffffL, &x69);
- { uint64_t x72; uint8_t x73 = _subborrow_u64(x70, x48, 0xffffffffffffffffL, &x72);
- { uint64_t x75; uint8_t x76 = _subborrow_u64(x73, x51, 0xffffffffffffffffL, &x75);
- { uint64_t x78; uint8_t x79 = _subborrow_u64(x76, x54, 0xffffffffffffffffL, &x78);
- { uint64_t _; uint8_t x82 = _subborrow_u64(x79, x55, 0x0, &_);
- { uint64_t x83 = cmovznz64(x82, x78, x54);
- { uint64_t x84 = cmovznz64(x82, x75, x51);
- { uint64_t x85 = cmovznz64(x82, x72, x48);
- { uint64_t x86 = cmovznz64(x82, x69, x45);
- { uint64_t x87 = cmovznz64(x82, x66, x42);
- { uint64_t x88 = cmovznz64(x82, x63, x39);
- { uint64_t x89 = cmovznz64(x82, x60, x36);
- { uint64_t x90 = cmovznz64(x82, x57, x33);
- out[0] = x90;
- out[1] = x89;
- out[2] = x88;
- out[3] = x87;
- out[4] = x86;
- out[5] = x85;
- out[6] = x84;
- out[7] = x83;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e512m569_8limbs/feadd.v b/src/Specific/montgomery64_2e512m569_8limbs/feadd.v
deleted file mode 100644
index 0fa7e5b27..000000000
--- a/src/Specific/montgomery64_2e512m569_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e512m569_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e512m569_8limbs/feaddDisplay.log b/src/Specific/montgomery64_2e512m569_8limbs/feaddDisplay.log
deleted file mode 100644
index 75c6272df..000000000
--- a/src/Specific/montgomery64_2e512m569_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x33, uint8_t x34 = addcarryx_u64(0x0, x5, x19);
- uint64_t x36, uint8_t x37 = addcarryx_u64(x34, x7, x21);
- uint64_t x39, uint8_t x40 = addcarryx_u64(x37, x9, x23);
- uint64_t x42, uint8_t x43 = addcarryx_u64(x40, x11, x25);
- uint64_t x45, uint8_t x46 = addcarryx_u64(x43, x13, x27);
- uint64_t x48, uint8_t x49 = addcarryx_u64(x46, x15, x29);
- uint64_t x51, uint8_t x52 = addcarryx_u64(x49, x17, x31);
- uint64_t x54, uint8_t x55 = addcarryx_u64(x52, x16, x30);
- uint64_t x57, uint8_t x58 = subborrow_u64(0x0, x33, 0xfffffffffffffdc7L);
- uint64_t x60, uint8_t x61 = subborrow_u64(x58, x36, 0xffffffffffffffffL);
- uint64_t x63, uint8_t x64 = subborrow_u64(x61, x39, 0xffffffffffffffffL);
- uint64_t x66, uint8_t x67 = subborrow_u64(x64, x42, 0xffffffffffffffffL);
- uint64_t x69, uint8_t x70 = subborrow_u64(x67, x45, 0xffffffffffffffffL);
- uint64_t x72, uint8_t x73 = subborrow_u64(x70, x48, 0xffffffffffffffffL);
- uint64_t x75, uint8_t x76 = subborrow_u64(x73, x51, 0xffffffffffffffffL);
- uint64_t x78, uint8_t x79 = subborrow_u64(x76, x54, 0xffffffffffffffffL);
- uint64_t _, uint8_t x82 = subborrow_u64(x79, x55, 0x0);
- uint64_t x83 = cmovznz64(x82, x78, x54);
- uint64_t x84 = cmovznz64(x82, x75, x51);
- uint64_t x85 = cmovznz64(x82, x72, x48);
- uint64_t x86 = cmovznz64(x82, x69, x45);
- uint64_t x87 = cmovznz64(x82, x66, x42);
- uint64_t x88 = cmovznz64(x82, x63, x39);
- uint64_t x89 = cmovznz64(x82, x60, x36);
- uint64_t x90 = cmovznz64(x82, x57, x33);
- return (x83, x84, x85, x86, x87, x88, x89, x90))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e512m569_8limbs/feaddDisplay.v b/src/Specific/montgomery64_2e512m569_8limbs/feaddDisplay.v
deleted file mode 100644
index 601860c27..000000000
--- a/src/Specific/montgomery64_2e512m569_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e512m569_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e512m569_8limbs/femul.v b/src/Specific/montgomery64_2e512m569_8limbs/femul.v
deleted file mode 100644
index fe1bb9c8d..000000000
--- a/src/Specific/montgomery64_2e512m569_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e512m569_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e512m569_8limbs/femulDisplay.v b/src/Specific/montgomery64_2e512m569_8limbs/femulDisplay.v
deleted file mode 100644
index eb0c51679..000000000
--- a/src/Specific/montgomery64_2e512m569_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e512m569_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e512m569_8limbs/fenz.c b/src/Specific/montgomery64_2e512m569_8limbs/fenz.c
deleted file mode 100644
index a07b0df9c..000000000
--- a/src/Specific/montgomery64_2e512m569_8limbs/fenz.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x15 = (x14 | x13);
- { uint64_t x16 = (x12 | x15);
- { uint64_t x17 = (x10 | x16);
- { uint64_t x18 = (x8 | x17);
- { uint64_t x19 = (x6 | x18);
- { uint64_t x20 = (x4 | x19);
- { uint64_t x21 = (x2 | x20);
- out[0] = x21;
- }}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e512m569_8limbs/fenz.v b/src/Specific/montgomery64_2e512m569_8limbs/fenz.v
deleted file mode 100644
index 7c21da78b..000000000
--- a/src/Specific/montgomery64_2e512m569_8limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e512m569_8limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e512m569_8limbs/fenzDisplay.log b/src/Specific/montgomery64_2e512m569_8limbs/fenzDisplay.log
deleted file mode 100644
index a05fc22ab..000000000
--- a/src/Specific/montgomery64_2e512m569_8limbs/fenzDisplay.log
+++ /dev/null
@@ -1,14 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (x14 | x13);
- uint64_t x16 = (x12 | x15);
- uint64_t x17 = (x10 | x16);
- uint64_t x18 = (x8 | x17);
- uint64_t x19 = (x6 | x18);
- uint64_t x20 = (x4 | x19);
- uint64_t x21 = (x2 | x20);
- return x21)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e512m569_8limbs/fenzDisplay.v b/src/Specific/montgomery64_2e512m569_8limbs/fenzDisplay.v
deleted file mode 100644
index 2825f082e..000000000
--- a/src/Specific/montgomery64_2e512m569_8limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e512m569_8limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e512m569_8limbs/feopp.v b/src/Specific/montgomery64_2e512m569_8limbs/feopp.v
deleted file mode 100644
index 4e8c4069f..000000000
--- a/src/Specific/montgomery64_2e512m569_8limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e512m569_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e512m569_8limbs/feoppDisplay.v b/src/Specific/montgomery64_2e512m569_8limbs/feoppDisplay.v
deleted file mode 100644
index eddc94e50..000000000
--- a/src/Specific/montgomery64_2e512m569_8limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e512m569_8limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e512m569_8limbs/fesquare.c b/src/Specific/montgomery64_2e512m569_8limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e512m569_8limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e512m569_8limbs/fesub.v b/src/Specific/montgomery64_2e512m569_8limbs/fesub.v
deleted file mode 100644
index 116d8b614..000000000
--- a/src/Specific/montgomery64_2e512m569_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e512m569_8limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e512m569_8limbs/fesubDisplay.v b/src/Specific/montgomery64_2e512m569_8limbs/fesubDisplay.v
deleted file mode 100644
index 5f0635669..000000000
--- a/src/Specific/montgomery64_2e512m569_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e512m569_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e512m569_8limbs/py_interpreter.sh b/src/Specific/montgomery64_2e512m569_8limbs/py_interpreter.sh
deleted file mode 100755
index 920fa0e84..000000000
--- a/src/Specific/montgomery64_2e512m569_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**512 - 569' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/montgomery64_2e521m1_9limbs/CurveParameters.v b/src/Specific/montgomery64_2e521m1_9limbs/CurveParameters.v
deleted file mode 100644
index 171d1b5a0..000000000
--- a/src/Specific/montgomery64_2e521m1_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^521 - 1
-Base: 64
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 64;
- bitwidth := 64;
- s := 2^521;
- c := [(1, 1)];
- carry_chains := None;
-
- a24 := None;
- coef_div_modulus := None;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := true;
- freeze := Some false;
- 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/montgomery64_2e521m1_9limbs/Synthesis.v b/src/Specific/montgomery64_2e521m1_9limbs/Synthesis.v
deleted file mode 100644
index 1124403a3..000000000
--- a/src/Specific/montgomery64_2e521m1_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.montgomery64_2e521m1_9limbs.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/montgomery64_2e521m1_9limbs/compiler.sh b/src/Specific/montgomery64_2e521m1_9limbs/compiler.sh
deleted file mode 100755
index d625be94f..000000000
--- a/src/Specific/montgomery64_2e521m1_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='66' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<521) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e521m1_9limbs/compilerxx.sh b/src/Specific/montgomery64_2e521m1_9limbs/compilerxx.sh
deleted file mode 100755
index afe76ad59..000000000
--- a/src/Specific/montgomery64_2e521m1_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{64,64,64,64,64,64,64,64,64}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='66' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<521) - 1' "$@"
diff --git a/src/Specific/montgomery64_2e521m1_9limbs/feadd.c b/src/Specific/montgomery64_2e521m1_9limbs/feadd.c
deleted file mode 100644
index 1588992e9..000000000
--- a/src/Specific/montgomery64_2e521m1_9limbs/feadd.c
+++ /dev/null
@@ -1,58 +0,0 @@
-static void feadd(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- { uint64_t x37; uint8_t x38 = _addcarryx_u64(0x0, x5, x21, &x37);
- { uint64_t x40; uint8_t x41 = _addcarryx_u64(x38, x7, x23, &x40);
- { uint64_t x43; uint8_t x44 = _addcarryx_u64(x41, x9, x25, &x43);
- { uint64_t x46; uint8_t x47 = _addcarryx_u64(x44, x11, x27, &x46);
- { uint64_t x49; uint8_t x50 = _addcarryx_u64(x47, x13, x29, &x49);
- { uint64_t x52; uint8_t x53 = _addcarryx_u64(x50, x15, x31, &x52);
- { uint64_t x55; uint8_t x56 = _addcarryx_u64(x53, x17, x33, &x55);
- { uint64_t x58; uint8_t x59 = _addcarryx_u64(x56, x19, x35, &x58);
- { uint64_t x61; uint8_t x62 = _addcarryx_u64(x59, x18, x34, &x61);
- { uint64_t x64; uint8_t x65 = _subborrow_u64(0x0, x37, 0xffffffffffffffffL, &x64);
- { uint64_t x67; uint8_t x68 = _subborrow_u64(x65, x40, 0xffffffffffffffffL, &x67);
- { uint64_t x70; uint8_t x71 = _subborrow_u64(x68, x43, 0xffffffffffffffffL, &x70);
- { uint64_t x73; uint8_t x74 = _subborrow_u64(x71, x46, 0xffffffffffffffffL, &x73);
- { uint64_t x76; uint8_t x77 = _subborrow_u64(x74, x49, 0xffffffffffffffffL, &x76);
- { uint64_t x79; uint8_t x80 = _subborrow_u64(x77, x52, 0xffffffffffffffffL, &x79);
- { uint64_t x82; uint8_t x83 = _subborrow_u64(x80, x55, 0xffffffffffffffffL, &x82);
- { uint64_t x85; uint8_t x86 = _subborrow_u64(x83, x58, 0xffffffffffffffffL, &x85);
- { uint64_t x88; uint8_t x89 = _subborrow_u64(x86, x61, 0x1ff, &x88);
- { uint64_t _; uint8_t x92 = _subborrow_u64(x89, x62, 0x0, &_);
- { uint64_t x93 = cmovznz64(x92, x88, x61);
- { uint64_t x94 = cmovznz64(x92, x85, x58);
- { uint64_t x95 = cmovznz64(x92, x82, x55);
- { uint64_t x96 = cmovznz64(x92, x79, x52);
- { uint64_t x97 = cmovznz64(x92, x76, x49);
- { uint64_t x98 = cmovznz64(x92, x73, x46);
- { uint64_t x99 = cmovznz64(x92, x70, x43);
- { uint64_t x100 = cmovznz64(x92, x67, x40);
- { uint64_t x101 = cmovznz64(x92, x64, x37);
- out[0] = x101;
- out[1] = x100;
- out[2] = x99;
- out[3] = x98;
- out[4] = x97;
- out[5] = x96;
- out[6] = x95;
- out[7] = x94;
- out[8] = x93;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e521m1_9limbs/feadd.v b/src/Specific/montgomery64_2e521m1_9limbs/feadd.v
deleted file mode 100644
index 3cf7b37fb..000000000
--- a/src/Specific/montgomery64_2e521m1_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e521m1_9limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition add :
- { add : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (add a b) = F.add (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_add ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions add.
diff --git a/src/Specific/montgomery64_2e521m1_9limbs/feaddDisplay.log b/src/Specific/montgomery64_2e521m1_9limbs/feaddDisplay.log
deleted file mode 100644
index 75f67f58f..000000000
--- a/src/Specific/montgomery64_2e521m1_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint64_t x37, uint8_t x38 = addcarryx_u64(0x0, x5, x21);
- uint64_t x40, uint8_t x41 = addcarryx_u64(x38, x7, x23);
- uint64_t x43, uint8_t x44 = addcarryx_u64(x41, x9, x25);
- uint64_t x46, uint8_t x47 = addcarryx_u64(x44, x11, x27);
- uint64_t x49, uint8_t x50 = addcarryx_u64(x47, x13, x29);
- uint64_t x52, uint8_t x53 = addcarryx_u64(x50, x15, x31);
- uint64_t x55, uint8_t x56 = addcarryx_u64(x53, x17, x33);
- uint64_t x58, uint8_t x59 = addcarryx_u64(x56, x19, x35);
- uint64_t x61, uint8_t x62 = addcarryx_u64(x59, x18, x34);
- uint64_t x64, uint8_t x65 = subborrow_u64(0x0, x37, 0xffffffffffffffffL);
- uint64_t x67, uint8_t x68 = subborrow_u64(x65, x40, 0xffffffffffffffffL);
- uint64_t x70, uint8_t x71 = subborrow_u64(x68, x43, 0xffffffffffffffffL);
- uint64_t x73, uint8_t x74 = subborrow_u64(x71, x46, 0xffffffffffffffffL);
- uint64_t x76, uint8_t x77 = subborrow_u64(x74, x49, 0xffffffffffffffffL);
- uint64_t x79, uint8_t x80 = subborrow_u64(x77, x52, 0xffffffffffffffffL);
- uint64_t x82, uint8_t x83 = subborrow_u64(x80, x55, 0xffffffffffffffffL);
- uint64_t x85, uint8_t x86 = subborrow_u64(x83, x58, 0xffffffffffffffffL);
- uint64_t x88, uint8_t x89 = subborrow_u64(x86, x61, 0x1ff);
- uint64_t _, uint8_t x92 = subborrow_u64(x89, x62, 0x0);
- uint64_t x93 = cmovznz64(x92, x88, x61);
- uint64_t x94 = cmovznz64(x92, x85, x58);
- uint64_t x95 = cmovznz64(x92, x82, x55);
- uint64_t x96 = cmovznz64(x92, x79, x52);
- uint64_t x97 = cmovznz64(x92, x76, x49);
- uint64_t x98 = cmovznz64(x92, x73, x46);
- uint64_t x99 = cmovznz64(x92, x70, x43);
- uint64_t x100 = cmovznz64(x92, x67, x40);
- uint64_t x101 = cmovznz64(x92, x64, x37);
- return (x93, x94, x95, x96, x97, x98, x99, x100, x101))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/montgomery64_2e521m1_9limbs/feaddDisplay.v b/src/Specific/montgomery64_2e521m1_9limbs/feaddDisplay.v
deleted file mode 100644
index 074227346..000000000
--- a/src/Specific/montgomery64_2e521m1_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e521m1_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/montgomery64_2e521m1_9limbs/femul.v b/src/Specific/montgomery64_2e521m1_9limbs/femul.v
deleted file mode 100644
index 56b440d5b..000000000
--- a/src/Specific/montgomery64_2e521m1_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e521m1_9limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition mul :
- { mul : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (mul a b) = F.mul (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_mul ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions mul.
diff --git a/src/Specific/montgomery64_2e521m1_9limbs/femulDisplay.v b/src/Specific/montgomery64_2e521m1_9limbs/femulDisplay.v
deleted file mode 100644
index 822a780d0..000000000
--- a/src/Specific/montgomery64_2e521m1_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e521m1_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/montgomery64_2e521m1_9limbs/fenz.c b/src/Specific/montgomery64_2e521m1_9limbs/fenz.c
deleted file mode 100644
index eb4cd2856..000000000
--- a/src/Specific/montgomery64_2e521m1_9limbs/fenz.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void fenz(ReturnType uint64_t out[1], const uint64_t in1[9]) {
- { const uint64_t x15 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x17 = (x16 | x15);
- { uint64_t x18 = (x14 | x17);
- { uint64_t x19 = (x12 | x18);
- { uint64_t x20 = (x10 | x19);
- { uint64_t x21 = (x8 | x20);
- { uint64_t x22 = (x6 | x21);
- { uint64_t x23 = (x4 | x22);
- { uint64_t x24 = (x2 | x23);
- out[0] = x24;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/montgomery64_2e521m1_9limbs/fenz.v b/src/Specific/montgomery64_2e521m1_9limbs/fenz.v
deleted file mode 100644
index fa6107bf4..000000000
--- a/src/Specific/montgomery64_2e521m1_9limbs/fenz.v
+++ /dev/null
@@ -1,16 +0,0 @@
-Require Import Coq.ZArith.ZArith.
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e521m1_9limbs.Synthesis.
-Local Open Scope Z_scope.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition nonzero :
- { nonzero : feBW_small -> BoundedWord.BoundedWord 1 adjusted_bitwidth bound1
- | forall a, (BoundedWord.BoundedWordToZ _ _ _ (nonzero a) =? 0) = (if Decidable.dec (phiM_small a = F.of_Z m 0) then true else false) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_nonzero ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions nonzero.
diff --git a/src/Specific/montgomery64_2e521m1_9limbs/fenzDisplay.log b/src/Specific/montgomery64_2e521m1_9limbs/fenzDisplay.log
deleted file mode 100644
index d4727163e..000000000
--- a/src/Specific/montgomery64_2e521m1_9limbs/fenzDisplay.log
+++ /dev/null
@@ -1,15 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x17 = (x16 | x15);
- uint64_t x18 = (x14 | x17);
- uint64_t x19 = (x12 | x18);
- uint64_t x20 = (x10 | x19);
- uint64_t x21 = (x8 | x20);
- uint64_t x22 = (x6 | x21);
- uint64_t x23 = (x4 | x22);
- uint64_t x24 = (x2 | x23);
- return x24)
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType uint64_t
diff --git a/src/Specific/montgomery64_2e521m1_9limbs/fenzDisplay.v b/src/Specific/montgomery64_2e521m1_9limbs/fenzDisplay.v
deleted file mode 100644
index 93492f43e..000000000
--- a/src/Specific/montgomery64_2e521m1_9limbs/fenzDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e521m1_9limbs.fenz.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display nonzero.
diff --git a/src/Specific/montgomery64_2e521m1_9limbs/feopp.v b/src/Specific/montgomery64_2e521m1_9limbs/feopp.v
deleted file mode 100644
index c71d818d6..000000000
--- a/src/Specific/montgomery64_2e521m1_9limbs/feopp.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e521m1_9limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition opp :
- { opp : feBW_small -> feBW_small
- | forall a, phiM_small (opp a) = F.opp (phiM_small a) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_opp ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions opp.
diff --git a/src/Specific/montgomery64_2e521m1_9limbs/feoppDisplay.v b/src/Specific/montgomery64_2e521m1_9limbs/feoppDisplay.v
deleted file mode 100644
index 30e5da4f1..000000000
--- a/src/Specific/montgomery64_2e521m1_9limbs/feoppDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e521m1_9limbs.feopp.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display opp.
diff --git a/src/Specific/montgomery64_2e521m1_9limbs/fesquare.c b/src/Specific/montgomery64_2e521m1_9limbs/fesquare.c
deleted file mode 100644
index 7bd8db166..000000000
--- a/src/Specific/montgomery64_2e521m1_9limbs/fesquare.c
+++ /dev/null
@@ -1,5 +0,0 @@
-/* WARNING: This file was copied from Specific/CurveParameters/montgomery64/fesquare.c.
- If you edit it here, changes will be erased the next time remake_curves.sh is run. */
-static void fesquare(uint64_t *out, const uint64_t *in) {
- femul(out, in, in);
-}
diff --git a/src/Specific/montgomery64_2e521m1_9limbs/fesub.v b/src/Specific/montgomery64_2e521m1_9limbs/fesub.v
deleted file mode 100644
index 3946a09f9..000000000
--- a/src/Specific/montgomery64_2e521m1_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.montgomery64_2e521m1_9limbs.Synthesis.
-
-(* TODO : change this to field once field isomorphism happens *)
-Definition sub :
- { sub : feBW_small -> feBW_small -> feBW_small
- | forall a b, phiM_small (sub a b) = F.sub (phiM_small a) (phiM_small b) }.
-Proof.
- Set Ltac Profiling.
- Time synthesize_sub ().
- Show Ltac Profile.
-Time Defined.
-
-Print Assumptions sub.
diff --git a/src/Specific/montgomery64_2e521m1_9limbs/fesubDisplay.v b/src/Specific/montgomery64_2e521m1_9limbs/fesubDisplay.v
deleted file mode 100644
index d5916ba34..000000000
--- a/src/Specific/montgomery64_2e521m1_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.montgomery64_2e521m1_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/montgomery64_2e521m1_9limbs/py_interpreter.sh b/src/Specific/montgomery64_2e521m1_9limbs/py_interpreter.sh
deleted file mode 100755
index babf89741..000000000
--- a/src/Specific/montgomery64_2e521m1_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**521 - 1' -Dmodulus_bytes='64' -Da24='121665'
diff --git a/src/Specific/solinas32_2e127m1_5limbs/CurveParameters.v b/src/Specific/solinas32_2e127m1_5limbs/CurveParameters.v
deleted file mode 100644
index aa40df134..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^127 - 1
-Base: 25.4
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 25 + 2/5;
- bitwidth := 32;
- s := 2^127;
- c := [(1, 1)];
- carry_chains := Some [seq 0 (pred 5); [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_2e127m1_5limbs/Synthesis.v b/src/Specific/solinas32_2e127m1_5limbs/Synthesis.v
deleted file mode 100644
index 999f751ac..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e127m1_5limbs.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_2e127m1_5limbs/compiler.sh b/src/Specific/solinas32_2e127m1_5limbs/compiler.sh
deleted file mode 100755
index 16b79b695..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,25,26,25,25}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='16' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<127) - 1' "$@"
diff --git a/src/Specific/solinas32_2e127m1_5limbs/compilerxx.sh b/src/Specific/solinas32_2e127m1_5limbs/compilerxx.sh
deleted file mode 100755
index d2630fc07..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,25,26,25,25}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='16' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<127) - 1' "$@"
diff --git a/src/Specific/solinas32_2e127m1_5limbs/feadd.c b/src/Specific/solinas32_2e127m1_5limbs/feadd.c
deleted file mode 100644
index 4db430361..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e127m1_5limbs/feadd.v b/src/Specific/solinas32_2e127m1_5limbs/feadd.v
deleted file mode 100644
index 4789715de..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e127m1_5limbs.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_2e127m1_5limbs/feaddDisplay.log b/src/Specific/solinas32_2e127m1_5limbs/feaddDisplay.log
deleted file mode 100644
index eaf25ecd1..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e127m1_5limbs/feaddDisplay.v b/src/Specific/solinas32_2e127m1_5limbs/feaddDisplay.v
deleted file mode 100644
index 501ed7571..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e127m1_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e127m1_5limbs/fecarry.v b/src/Specific/solinas32_2e127m1_5limbs/fecarry.v
deleted file mode 100644
index a98935a59..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e127m1_5limbs.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_2e127m1_5limbs/fecarryDisplay.v b/src/Specific/solinas32_2e127m1_5limbs/fecarryDisplay.v
deleted file mode 100644
index 4f643e4de..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e127m1_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e127m1_5limbs/femul.c b/src/Specific/solinas32_2e127m1_5limbs/femul.c
deleted file mode 100644
index 824f351e8..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint64_t x20 = (((uint64_t)x5 * x18) + ((0x2 * ((uint64_t)x7 * x19)) + (((uint64_t)x9 * x17) + ((0x2 * ((uint64_t)x11 * x15)) + ((uint64_t)x10 * x13)))));
- { uint64_t x21 = ((((uint64_t)x5 * x19) + (((uint64_t)x7 * x17) + (((uint64_t)x9 * x15) + ((uint64_t)x11 * x13)))) + ((uint64_t)x10 * x18));
- { uint64_t x22 = ((((uint64_t)x5 * x17) + ((0x2 * ((uint64_t)x7 * x15)) + ((uint64_t)x9 * x13))) + ((0x2 * ((uint64_t)x11 * x18)) + (0x2 * ((uint64_t)x10 * x19))));
- { uint64_t x23 = ((((uint64_t)x5 * x15) + ((uint64_t)x7 * x13)) + (((uint64_t)x9 * x18) + ((0x2 * ((uint64_t)x11 * x19)) + ((uint64_t)x10 * x17))));
- { uint64_t x24 = (((uint64_t)x5 * x13) + ((0x2 * ((uint64_t)x7 * x18)) + ((0x2 * ((uint64_t)x9 * x19)) + ((0x2 * ((uint64_t)x11 * x17)) + (0x2 * ((uint64_t)x10 * x15))))));
- { uint32_t x25 = (uint32_t) (x24 >> 0x1a);
- { uint32_t x26 = ((uint32_t)x24 & 0x3ffffff);
- { uint64_t x27 = (x25 + x23);
- { uint32_t x28 = (uint32_t) (x27 >> 0x19);
- { uint32_t x29 = ((uint32_t)x27 & 0x1ffffff);
- { uint64_t x30 = (x28 + x22);
- { uint32_t x31 = (uint32_t) (x30 >> 0x1a);
- { uint32_t x32 = ((uint32_t)x30 & 0x3ffffff);
- { uint64_t x33 = (x31 + x21);
- { uint32_t x34 = (uint32_t) (x33 >> 0x19);
- { uint32_t x35 = ((uint32_t)x33 & 0x1ffffff);
- { uint64_t x36 = (x34 + x20);
- { uint64_t x37 = (x36 >> 0x19);
- { uint32_t x38 = ((uint32_t)x36 & 0x1ffffff);
- { uint64_t x39 = (x26 + x37);
- { uint32_t x40 = (uint32_t) (x39 >> 0x1a);
- { uint32_t x41 = ((uint32_t)x39 & 0x3ffffff);
- { uint32_t x42 = (x40 + x29);
- { uint32_t x43 = (x42 >> 0x19);
- { uint32_t x44 = (x42 & 0x1ffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e127m1_5limbs/femul.v b/src/Specific/solinas32_2e127m1_5limbs/femul.v
deleted file mode 100644
index 9514bbfbf..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e127m1_5limbs.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_2e127m1_5limbs/femulDisplay.log b/src/Specific/solinas32_2e127m1_5limbs/femulDisplay.log
deleted file mode 100644
index 18eeef1a0..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint64_t x20 = (((uint64_t)x5 * x18) + ((0x2 * ((uint64_t)x7 * x19)) + (((uint64_t)x9 * x17) + ((0x2 * ((uint64_t)x11 * x15)) + ((uint64_t)x10 * x13)))));
- uint64_t x21 = ((((uint64_t)x5 * x19) + (((uint64_t)x7 * x17) + (((uint64_t)x9 * x15) + ((uint64_t)x11 * x13)))) + ((uint64_t)x10 * x18));
- uint64_t x22 = ((((uint64_t)x5 * x17) + ((0x2 * ((uint64_t)x7 * x15)) + ((uint64_t)x9 * x13))) + ((0x2 * ((uint64_t)x11 * x18)) + (0x2 * ((uint64_t)x10 * x19))));
- uint64_t x23 = ((((uint64_t)x5 * x15) + ((uint64_t)x7 * x13)) + (((uint64_t)x9 * x18) + ((0x2 * ((uint64_t)x11 * x19)) + ((uint64_t)x10 * x17))));
- uint64_t x24 = (((uint64_t)x5 * x13) + ((0x2 * ((uint64_t)x7 * x18)) + ((0x2 * ((uint64_t)x9 * x19)) + ((0x2 * ((uint64_t)x11 * x17)) + (0x2 * ((uint64_t)x10 * x15))))));
- uint32_t x25 = (uint32_t) (x24 >> 0x1a);
- uint32_t x26 = ((uint32_t)x24 & 0x3ffffff);
- uint64_t x27 = (x25 + x23);
- uint32_t x28 = (uint32_t) (x27 >> 0x19);
- uint32_t x29 = ((uint32_t)x27 & 0x1ffffff);
- uint64_t x30 = (x28 + x22);
- uint32_t x31 = (uint32_t) (x30 >> 0x1a);
- uint32_t x32 = ((uint32_t)x30 & 0x3ffffff);
- uint64_t x33 = (x31 + x21);
- uint32_t x34 = (uint32_t) (x33 >> 0x19);
- uint32_t x35 = ((uint32_t)x33 & 0x1ffffff);
- uint64_t x36 = (x34 + x20);
- uint64_t x37 = (x36 >> 0x19);
- uint32_t x38 = ((uint32_t)x36 & 0x1ffffff);
- uint64_t x39 = (x26 + x37);
- uint32_t x40 = (uint32_t) (x39 >> 0x1a);
- uint32_t x41 = ((uint32_t)x39 & 0x3ffffff);
- uint32_t x42 = (x40 + x29);
- uint32_t x43 = (x42 >> 0x19);
- uint32_t x44 = (x42 & 0x1ffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e127m1_5limbs/femulDisplay.v b/src/Specific/solinas32_2e127m1_5limbs/femulDisplay.v
deleted file mode 100644
index 93aea3c75..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e127m1_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e127m1_5limbs/fesquare.c b/src/Specific/solinas32_2e127m1_5limbs/fesquare.c
deleted file mode 100644
index 8a995a91b..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint32_t out[5], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x9 = (((uint64_t)x2 * x7) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x7 * x2)))));
- { uint64_t x10 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + ((uint64_t)x7 * x7));
- { uint64_t x11 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + ((0x2 * ((uint64_t)x8 * x7)) + (0x2 * ((uint64_t)x7 * x8))));
- { uint64_t x12 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x6 * x7) + ((0x2 * ((uint64_t)x8 * x8)) + ((uint64_t)x7 * x6))));
- { uint64_t x13 = (((uint64_t)x2 * x2) + ((0x2 * ((uint64_t)x4 * x7)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (0x2 * ((uint64_t)x7 * x4))))));
- { uint32_t x14 = (uint32_t) (x13 >> 0x1a);
- { uint32_t x15 = ((uint32_t)x13 & 0x3ffffff);
- { uint64_t x16 = (x14 + x12);
- { uint32_t x17 = (uint32_t) (x16 >> 0x19);
- { uint32_t x18 = ((uint32_t)x16 & 0x1ffffff);
- { uint64_t x19 = (x17 + x11);
- { uint32_t x20 = (uint32_t) (x19 >> 0x1a);
- { uint32_t x21 = ((uint32_t)x19 & 0x3ffffff);
- { uint64_t x22 = (x20 + x10);
- { uint32_t x23 = (uint32_t) (x22 >> 0x19);
- { uint32_t x24 = ((uint32_t)x22 & 0x1ffffff);
- { uint64_t x25 = (x23 + x9);
- { uint64_t x26 = (x25 >> 0x19);
- { uint32_t x27 = ((uint32_t)x25 & 0x1ffffff);
- { uint64_t x28 = (x15 + x26);
- { uint32_t x29 = (uint32_t) (x28 >> 0x1a);
- { uint32_t x30 = ((uint32_t)x28 & 0x3ffffff);
- { uint32_t x31 = (x29 + x18);
- { uint32_t x32 = (x31 >> 0x19);
- { uint32_t x33 = (x31 & 0x1ffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e127m1_5limbs/fesquare.v b/src/Specific/solinas32_2e127m1_5limbs/fesquare.v
deleted file mode 100644
index 3e108634c..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e127m1_5limbs.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_2e127m1_5limbs/fesquareDisplay.log b/src/Specific/solinas32_2e127m1_5limbs/fesquareDisplay.log
deleted file mode 100644
index 889e30ed8..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x9 = (((uint64_t)x2 * x7) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x7 * x2)))));
- uint64_t x10 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + ((uint64_t)x7 * x7));
- uint64_t x11 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + ((0x2 * ((uint64_t)x8 * x7)) + (0x2 * ((uint64_t)x7 * x8))));
- uint64_t x12 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x6 * x7) + ((0x2 * ((uint64_t)x8 * x8)) + ((uint64_t)x7 * x6))));
- uint64_t x13 = (((uint64_t)x2 * x2) + ((0x2 * ((uint64_t)x4 * x7)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (0x2 * ((uint64_t)x7 * x4))))));
- uint32_t x14 = (uint32_t) (x13 >> 0x1a);
- uint32_t x15 = ((uint32_t)x13 & 0x3ffffff);
- uint64_t x16 = (x14 + x12);
- uint32_t x17 = (uint32_t) (x16 >> 0x19);
- uint32_t x18 = ((uint32_t)x16 & 0x1ffffff);
- uint64_t x19 = (x17 + x11);
- uint32_t x20 = (uint32_t) (x19 >> 0x1a);
- uint32_t x21 = ((uint32_t)x19 & 0x3ffffff);
- uint64_t x22 = (x20 + x10);
- uint32_t x23 = (uint32_t) (x22 >> 0x19);
- uint32_t x24 = ((uint32_t)x22 & 0x1ffffff);
- uint64_t x25 = (x23 + x9);
- uint64_t x26 = (x25 >> 0x19);
- uint32_t x27 = ((uint32_t)x25 & 0x1ffffff);
- uint64_t x28 = (x15 + x26);
- uint32_t x29 = (uint32_t) (x28 >> 0x1a);
- uint32_t x30 = ((uint32_t)x28 & 0x3ffffff);
- uint32_t x31 = (x29 + x18);
- uint32_t x32 = (x31 >> 0x19);
- uint32_t x33 = (x31 & 0x1ffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e127m1_5limbs/fesquareDisplay.v b/src/Specific/solinas32_2e127m1_5limbs/fesquareDisplay.v
deleted file mode 100644
index 34c318986..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e127m1_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e127m1_5limbs/fesub.c b/src/Specific/solinas32_2e127m1_5limbs/fesub.c
deleted file mode 100644
index a20842db8..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- out[0] = ((0x7fffffe + x5) - x13);
- out[1] = ((0x3fffffe + x7) - x15);
- out[2] = ((0x7fffffe + x9) - x17);
- out[3] = ((0x3fffffe + x11) - x19);
- out[4] = ((0x3fffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e127m1_5limbs/fesub.v b/src/Specific/solinas32_2e127m1_5limbs/fesub.v
deleted file mode 100644
index 8b6026abf..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e127m1_5limbs.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_2e127m1_5limbs/fesubDisplay.log b/src/Specific/solinas32_2e127m1_5limbs/fesubDisplay.log
deleted file mode 100644
index ae2e90e74..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0x3fffffe + x10) - x18), ((0x3fffffe + x11) - x19), ((0x7fffffe + x9) - x17), ((0x3fffffe + x7) - x15), ((0x7fffffe + x5) - x13)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e127m1_5limbs/fesubDisplay.v b/src/Specific/solinas32_2e127m1_5limbs/fesubDisplay.v
deleted file mode 100644
index 0ddd8b51a..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e127m1_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e127m1_5limbs/freeze.c b/src/Specific/solinas32_2e127m1_5limbs/freeze.c
deleted file mode 100644
index b3415c615..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint32_t out[5], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffff);
- { uint32_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x11, Return x4, 0x1ffffff);
- { uint32_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x14, Return x6, 0x3ffffff);
- { uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x8, 0x1ffffff);
- { uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x7, 0x1ffffff);
- { uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- { uint32_t x25 = (x24 & 0x3ffffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint32_t x29 = (x24 & 0x1ffffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint32_t x33 = (x24 & 0x3ffffff);
- { uint32_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint32_t x37 = (x24 & 0x1ffffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint32_t x41 = (x24 & 0x1ffffff);
- { uint32_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e127m1_5limbs/freeze.v b/src/Specific/solinas32_2e127m1_5limbs/freeze.v
deleted file mode 100644
index 03c823c82..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e127m1_5limbs.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_2e127m1_5limbs/freezeDisplay.log b/src/Specific/solinas32_2e127m1_5limbs/freezeDisplay.log
deleted file mode 100644
index dd12b4b64..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint32_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffff);
- uint32_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x11, Return x4, 0x1ffffff);
- uint32_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x14, Return x6, 0x3ffffff);
- uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x8, 0x1ffffff);
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x7, 0x1ffffff);
- uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- uint32_t x25 = (x24 & 0x3ffffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint32_t x29 = (x24 & 0x1ffffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint32_t x33 = (x24 & 0x3ffffff);
- uint32_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint32_t x37 = (x24 & 0x1ffffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint32_t x41 = (x24 & 0x1ffffff);
- uint32_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e127m1_5limbs/freezeDisplay.v b/src/Specific/solinas32_2e127m1_5limbs/freezeDisplay.v
deleted file mode 100644
index e7e324f19..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e127m1_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e127m1_5limbs/py_interpreter.sh b/src/Specific/solinas32_2e127m1_5limbs/py_interpreter.sh
deleted file mode 100755
index 7a6be62ac..000000000
--- a/src/Specific/solinas32_2e127m1_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**127 - 1' -Dmodulus_bytes='25.4' -Da24='121665'
diff --git a/src/Specific/solinas32_2e127m1_6limbs/CurveParameters.v b/src/Specific/solinas32_2e127m1_6limbs/CurveParameters.v
deleted file mode 100644
index 2071cfd04..000000000
--- a/src/Specific/solinas32_2e127m1_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^127 - 1
-Base: 21 + 1/6
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 21 + 1/6;
- bitwidth := 32;
- s := 2^127;
- c := [(1, 1)];
- 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_2e127m1_6limbs/Synthesis.v b/src/Specific/solinas32_2e127m1_6limbs/Synthesis.v
deleted file mode 100644
index 5f44d2a9b..000000000
--- a/src/Specific/solinas32_2e127m1_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e127m1_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_2e127m1_6limbs/compiler.sh b/src/Specific/solinas32_2e127m1_6limbs/compiler.sh
deleted file mode 100755
index 1654fec0c..000000000
--- a/src/Specific/solinas32_2e127m1_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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='16' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<127) - 1' "$@"
diff --git a/src/Specific/solinas32_2e127m1_6limbs/compilerxx.sh b/src/Specific/solinas32_2e127m1_6limbs/compilerxx.sh
deleted file mode 100755
index f5fc5b102..000000000
--- a/src/Specific/solinas32_2e127m1_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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='16' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<127) - 1' "$@"
diff --git a/src/Specific/solinas32_2e127m1_6limbs/feadd.c b/src/Specific/solinas32_2e127m1_6limbs/feadd.c
deleted file mode 100644
index 5b654b294..000000000
--- a/src/Specific/solinas32_2e127m1_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_2e127m1_6limbs/feadd.v b/src/Specific/solinas32_2e127m1_6limbs/feadd.v
deleted file mode 100644
index 4321ad050..000000000
--- a/src/Specific/solinas32_2e127m1_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e127m1_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_2e127m1_6limbs/feaddDisplay.log b/src/Specific/solinas32_2e127m1_6limbs/feaddDisplay.log
deleted file mode 100644
index 1084b2659..000000000
--- a/src/Specific/solinas32_2e127m1_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_2e127m1_6limbs/feaddDisplay.v b/src/Specific/solinas32_2e127m1_6limbs/feaddDisplay.v
deleted file mode 100644
index 93d651da7..000000000
--- a/src/Specific/solinas32_2e127m1_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e127m1_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e127m1_6limbs/fecarry.v b/src/Specific/solinas32_2e127m1_6limbs/fecarry.v
deleted file mode 100644
index efbe07477..000000000
--- a/src/Specific/solinas32_2e127m1_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e127m1_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_2e127m1_6limbs/fecarryDisplay.v b/src/Specific/solinas32_2e127m1_6limbs/fecarryDisplay.v
deleted file mode 100644
index 8f8ae013f..000000000
--- a/src/Specific/solinas32_2e127m1_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e127m1_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e127m1_6limbs/femul.c b/src/Specific/solinas32_2e127m1_6limbs/femul.c
deleted file mode 100644
index f51c6ba17..000000000
--- a/src/Specific/solinas32_2e127m1_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)) + ((0x2 * ((uint64_t)x9 * x21)) + ((0x2 * ((uint64_t)x11 * x19)) + ((0x2 * ((uint64_t)x13 * x17)) + ((uint64_t)x12 * x15))))));
- { uint64_t x25 = ((((uint64_t)x5 * x23) + ((0x2 * ((uint64_t)x7 * x21)) + ((0x2 * ((uint64_t)x9 * x19)) + ((0x2 * ((uint64_t)x11 * x17)) + ((uint64_t)x13 * x15))))) + ((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)))) + (((uint64_t)x13 * x22) + ((uint64_t)x12 * x23)));
- { uint64_t x27 = ((((uint64_t)x5 * x19) + ((0x2 * ((uint64_t)x7 * x17)) + ((uint64_t)x9 * x15))) + (((uint64_t)x11 * x22) + (((uint64_t)x13 * x23) + ((uint64_t)x12 * x21))));
- { uint64_t x28 = ((((uint64_t)x5 * x17) + ((uint64_t)x7 * x15)) + (((uint64_t)x9 * x22) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x12 * x19)))));
- { uint64_t x29 = (((uint64_t)x5 * x15) + ((0x2 * ((uint64_t)x7 * x22)) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + ((0x2 * ((uint64_t)x13 * x19)) + (0x2 * ((uint64_t)x12 * x17)))))));
- { uint32_t x30 = (uint32_t) (x29 >> 0x16);
- { uint32_t x31 = ((uint32_t)x29 & 0x3fffff);
- { uint64_t x32 = (x30 + x28);
- { uint32_t x33 = (uint32_t) (x32 >> 0x15);
- { uint32_t x34 = ((uint32_t)x32 & 0x1fffff);
- { uint64_t x35 = (x33 + x27);
- { uint32_t x36 = (uint32_t) (x35 >> 0x15);
- { uint32_t x37 = ((uint32_t)x35 & 0x1fffff);
- { uint64_t x38 = (x36 + x26);
- { uint32_t x39 = (uint32_t) (x38 >> 0x15);
- { uint32_t x40 = ((uint32_t)x38 & 0x1fffff);
- { uint64_t x41 = (x39 + x25);
- { uint32_t x42 = (uint32_t) (x41 >> 0x15);
- { uint32_t x43 = ((uint32_t)x41 & 0x1fffff);
- { uint64_t x44 = (x42 + x24);
- { uint32_t x45 = (uint32_t) (x44 >> 0x15);
- { uint32_t x46 = ((uint32_t)x44 & 0x1fffff);
- { uint32_t x47 = (x31 + x45);
- { uint32_t x48 = (x47 >> 0x16);
- { uint32_t x49 = (x47 & 0x3fffff);
- { uint32_t x50 = (x48 + x34);
- { uint32_t x51 = (x50 >> 0x15);
- { uint32_t x52 = (x50 & 0x1fffff);
- 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_2e127m1_6limbs/femul.v b/src/Specific/solinas32_2e127m1_6limbs/femul.v
deleted file mode 100644
index e04d68e15..000000000
--- a/src/Specific/solinas32_2e127m1_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e127m1_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_2e127m1_6limbs/femulDisplay.log b/src/Specific/solinas32_2e127m1_6limbs/femulDisplay.log
deleted file mode 100644
index f2f0e5d6a..000000000
--- a/src/Specific/solinas32_2e127m1_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)) + ((0x2 * ((uint64_t)x9 * x21)) + ((0x2 * ((uint64_t)x11 * x19)) + ((0x2 * ((uint64_t)x13 * x17)) + ((uint64_t)x12 * x15))))));
- uint64_t x25 = ((((uint64_t)x5 * x23) + ((0x2 * ((uint64_t)x7 * x21)) + ((0x2 * ((uint64_t)x9 * x19)) + ((0x2 * ((uint64_t)x11 * x17)) + ((uint64_t)x13 * x15))))) + ((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)))) + (((uint64_t)x13 * x22) + ((uint64_t)x12 * x23)));
- uint64_t x27 = ((((uint64_t)x5 * x19) + ((0x2 * ((uint64_t)x7 * x17)) + ((uint64_t)x9 * x15))) + (((uint64_t)x11 * x22) + (((uint64_t)x13 * x23) + ((uint64_t)x12 * x21))));
- uint64_t x28 = ((((uint64_t)x5 * x17) + ((uint64_t)x7 * x15)) + (((uint64_t)x9 * x22) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x12 * x19)))));
- uint64_t x29 = (((uint64_t)x5 * x15) + ((0x2 * ((uint64_t)x7 * x22)) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + ((0x2 * ((uint64_t)x13 * x19)) + (0x2 * ((uint64_t)x12 * x17)))))));
- uint32_t x30 = (uint32_t) (x29 >> 0x16);
- uint32_t x31 = ((uint32_t)x29 & 0x3fffff);
- uint64_t x32 = (x30 + x28);
- uint32_t x33 = (uint32_t) (x32 >> 0x15);
- uint32_t x34 = ((uint32_t)x32 & 0x1fffff);
- uint64_t x35 = (x33 + x27);
- uint32_t x36 = (uint32_t) (x35 >> 0x15);
- uint32_t x37 = ((uint32_t)x35 & 0x1fffff);
- uint64_t x38 = (x36 + x26);
- uint32_t x39 = (uint32_t) (x38 >> 0x15);
- uint32_t x40 = ((uint32_t)x38 & 0x1fffff);
- uint64_t x41 = (x39 + x25);
- uint32_t x42 = (uint32_t) (x41 >> 0x15);
- uint32_t x43 = ((uint32_t)x41 & 0x1fffff);
- uint64_t x44 = (x42 + x24);
- uint32_t x45 = (uint32_t) (x44 >> 0x15);
- uint32_t x46 = ((uint32_t)x44 & 0x1fffff);
- uint32_t x47 = (x31 + x45);
- uint32_t x48 = (x47 >> 0x16);
- uint32_t x49 = (x47 & 0x3fffff);
- uint32_t x50 = (x48 + x34);
- uint32_t x51 = (x50 >> 0x15);
- uint32_t x52 = (x50 & 0x1fffff);
- 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_2e127m1_6limbs/femulDisplay.v b/src/Specific/solinas32_2e127m1_6limbs/femulDisplay.v
deleted file mode 100644
index 693ebf3c5..000000000
--- a/src/Specific/solinas32_2e127m1_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e127m1_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e127m1_6limbs/fesquare.c b/src/Specific/solinas32_2e127m1_6limbs/fesquare.c
deleted file mode 100644
index 517b5ec31..000000000
--- a/src/Specific/solinas32_2e127m1_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)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x9 * x2))))));
- { uint64_t x12 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + ((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)))) + (((uint64_t)x10 * x9) + ((uint64_t)x9 * x10)));
- { uint64_t x14 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (((uint64_t)x8 * x9) + (((uint64_t)x10 * x10) + ((uint64_t)x9 * x8))));
- { uint64_t x15 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x6 * x9) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((uint64_t)x9 * x6)))));
- { uint64_t x16 = (((uint64_t)x2 * x2) + ((0x2 * ((uint64_t)x4 * x9)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + (0x2 * ((uint64_t)x9 * x4)))))));
- { uint32_t x17 = (uint32_t) (x16 >> 0x16);
- { uint32_t x18 = ((uint32_t)x16 & 0x3fffff);
- { uint64_t x19 = (x17 + x15);
- { uint32_t x20 = (uint32_t) (x19 >> 0x15);
- { uint32_t x21 = ((uint32_t)x19 & 0x1fffff);
- { uint64_t x22 = (x20 + x14);
- { uint32_t x23 = (uint32_t) (x22 >> 0x15);
- { uint32_t x24 = ((uint32_t)x22 & 0x1fffff);
- { uint64_t x25 = (x23 + x13);
- { uint32_t x26 = (uint32_t) (x25 >> 0x15);
- { uint32_t x27 = ((uint32_t)x25 & 0x1fffff);
- { uint64_t x28 = (x26 + x12);
- { uint32_t x29 = (uint32_t) (x28 >> 0x15);
- { uint32_t x30 = ((uint32_t)x28 & 0x1fffff);
- { uint64_t x31 = (x29 + x11);
- { uint32_t x32 = (uint32_t) (x31 >> 0x15);
- { uint32_t x33 = ((uint32_t)x31 & 0x1fffff);
- { uint32_t x34 = (x18 + x32);
- { uint32_t x35 = (x34 >> 0x16);
- { uint32_t x36 = (x34 & 0x3fffff);
- { uint32_t x37 = (x35 + x21);
- { uint32_t x38 = (x37 >> 0x15);
- { uint32_t x39 = (x37 & 0x1fffff);
- 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_2e127m1_6limbs/fesquare.v b/src/Specific/solinas32_2e127m1_6limbs/fesquare.v
deleted file mode 100644
index c3df9ca52..000000000
--- a/src/Specific/solinas32_2e127m1_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e127m1_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_2e127m1_6limbs/fesquareDisplay.log b/src/Specific/solinas32_2e127m1_6limbs/fesquareDisplay.log
deleted file mode 100644
index 6012f2e94..000000000
--- a/src/Specific/solinas32_2e127m1_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)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x9 * x2))))));
- uint64_t x12 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + ((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)))) + (((uint64_t)x10 * x9) + ((uint64_t)x9 * x10)));
- uint64_t x14 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (((uint64_t)x8 * x9) + (((uint64_t)x10 * x10) + ((uint64_t)x9 * x8))));
- uint64_t x15 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x6 * x9) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((uint64_t)x9 * x6)))));
- uint64_t x16 = (((uint64_t)x2 * x2) + ((0x2 * ((uint64_t)x4 * x9)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + (0x2 * ((uint64_t)x9 * x4)))))));
- uint32_t x17 = (uint32_t) (x16 >> 0x16);
- uint32_t x18 = ((uint32_t)x16 & 0x3fffff);
- uint64_t x19 = (x17 + x15);
- uint32_t x20 = (uint32_t) (x19 >> 0x15);
- uint32_t x21 = ((uint32_t)x19 & 0x1fffff);
- uint64_t x22 = (x20 + x14);
- uint32_t x23 = (uint32_t) (x22 >> 0x15);
- uint32_t x24 = ((uint32_t)x22 & 0x1fffff);
- uint64_t x25 = (x23 + x13);
- uint32_t x26 = (uint32_t) (x25 >> 0x15);
- uint32_t x27 = ((uint32_t)x25 & 0x1fffff);
- uint64_t x28 = (x26 + x12);
- uint32_t x29 = (uint32_t) (x28 >> 0x15);
- uint32_t x30 = ((uint32_t)x28 & 0x1fffff);
- uint64_t x31 = (x29 + x11);
- uint32_t x32 = (uint32_t) (x31 >> 0x15);
- uint32_t x33 = ((uint32_t)x31 & 0x1fffff);
- uint32_t x34 = (x18 + x32);
- uint32_t x35 = (x34 >> 0x16);
- uint32_t x36 = (x34 & 0x3fffff);
- uint32_t x37 = (x35 + x21);
- uint32_t x38 = (x37 >> 0x15);
- uint32_t x39 = (x37 & 0x1fffff);
- 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_2e127m1_6limbs/fesquareDisplay.v b/src/Specific/solinas32_2e127m1_6limbs/fesquareDisplay.v
deleted file mode 100644
index b90d50ad4..000000000
--- a/src/Specific/solinas32_2e127m1_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e127m1_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e127m1_6limbs/fesub.c b/src/Specific/solinas32_2e127m1_6limbs/fesub.c
deleted file mode 100644
index ad019122b..000000000
--- a/src/Specific/solinas32_2e127m1_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] = ((0x7ffffe + x5) - x15);
- out[1] = ((0x3ffffe + x7) - x17);
- out[2] = ((0x3ffffe + x9) - x19);
- out[3] = ((0x3ffffe + x11) - x21);
- out[4] = ((0x3ffffe + x13) - x23);
- out[5] = ((0x3ffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e127m1_6limbs/fesub.v b/src/Specific/solinas32_2e127m1_6limbs/fesub.v
deleted file mode 100644
index d8d5e0605..000000000
--- a/src/Specific/solinas32_2e127m1_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e127m1_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_2e127m1_6limbs/fesubDisplay.log b/src/Specific/solinas32_2e127m1_6limbs/fesubDisplay.log
deleted file mode 100644
index 6727bf155..000000000
--- a/src/Specific/solinas32_2e127m1_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,
- (((0x3ffffe + x12) - x22), ((0x3ffffe + x13) - x23), ((0x3ffffe + x11) - x21), ((0x3ffffe + x9) - x19), ((0x3ffffe + x7) - x17), ((0x7ffffe + 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_2e127m1_6limbs/fesubDisplay.v b/src/Specific/solinas32_2e127m1_6limbs/fesubDisplay.v
deleted file mode 100644
index b5db93352..000000000
--- a/src/Specific/solinas32_2e127m1_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e127m1_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e127m1_6limbs/freeze.c b/src/Specific/solinas32_2e127m1_6limbs/freeze.c
deleted file mode 100644
index 32e7cd19e..000000000
--- a/src/Specific/solinas32_2e127m1_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 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffff);
- { uint32_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x13, Return x4, 0x1fffff);
- { uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x16, Return x6, 0x1fffff);
- { uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x8, 0x1fffff);
- { uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x10, 0x1fffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x9, 0x1fffff);
- { uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- { uint32_t x30 = (x29 & 0x3fffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint32_t x34 = (x29 & 0x1fffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 21 (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 & 0x1fffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 21 (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 & 0x1fffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 21 (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 & 0x1fffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 21 (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 & 0x1fffff);
- { uint32_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (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_2e127m1_6limbs/freeze.v b/src/Specific/solinas32_2e127m1_6limbs/freeze.v
deleted file mode 100644
index 5e2132f01..000000000
--- a/src/Specific/solinas32_2e127m1_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e127m1_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_2e127m1_6limbs/freezeDisplay.log b/src/Specific/solinas32_2e127m1_6limbs/freezeDisplay.log
deleted file mode 100644
index 46db8b723..000000000
--- a/src/Specific/solinas32_2e127m1_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 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffff);
- uint32_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x13, Return x4, 0x1fffff);
- uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x16, Return x6, 0x1fffff);
- uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x8, 0x1fffff);
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x10, 0x1fffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x9, 0x1fffff);
- uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- uint32_t x30 = (x29 & 0x3fffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint32_t x34 = (x29 & 0x1fffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 21 (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 & 0x1fffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 21 (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 & 0x1fffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 21 (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 & 0x1fffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 21 (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 & 0x1fffff);
- uint32_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (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_2e127m1_6limbs/freezeDisplay.v b/src/Specific/solinas32_2e127m1_6limbs/freezeDisplay.v
deleted file mode 100644
index bea9ac67c..000000000
--- a/src/Specific/solinas32_2e127m1_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e127m1_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e127m1_6limbs/py_interpreter.sh b/src/Specific/solinas32_2e127m1_6limbs/py_interpreter.sh
deleted file mode 100755
index bbc17f7a0..000000000
--- a/src/Specific/solinas32_2e127m1_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**127 - 1' -Dmodulus_bytes='21 + 1/6' -Da24='121665'
diff --git a/src/Specific/solinas32_2e129m25_5limbs/CurveParameters.v b/src/Specific/solinas32_2e129m25_5limbs/CurveParameters.v
deleted file mode 100644
index 30d76ba63..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^129 - 25
-Base: 25.8
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 25 + 4/5;
- bitwidth := 32;
- s := 2^129;
- c := [(1, 25)];
- carry_chains := Some [seq 0 (pred 5); [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_2e129m25_5limbs/Synthesis.v b/src/Specific/solinas32_2e129m25_5limbs/Synthesis.v
deleted file mode 100644
index 70b502321..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e129m25_5limbs.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_2e129m25_5limbs/compiler.sh b/src/Specific/solinas32_2e129m25_5limbs/compiler.sh
deleted file mode 100755
index 0da3a363f..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,26,26,26,25}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<129) - 25' "$@"
diff --git a/src/Specific/solinas32_2e129m25_5limbs/compilerxx.sh b/src/Specific/solinas32_2e129m25_5limbs/compilerxx.sh
deleted file mode 100755
index 05f0f61ce..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,26,26,26,25}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<129) - 25' "$@"
diff --git a/src/Specific/solinas32_2e129m25_5limbs/feadd.c b/src/Specific/solinas32_2e129m25_5limbs/feadd.c
deleted file mode 100644
index 4db430361..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e129m25_5limbs/feadd.v b/src/Specific/solinas32_2e129m25_5limbs/feadd.v
deleted file mode 100644
index ad0c03188..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e129m25_5limbs.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_2e129m25_5limbs/feaddDisplay.log b/src/Specific/solinas32_2e129m25_5limbs/feaddDisplay.log
deleted file mode 100644
index eaf25ecd1..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e129m25_5limbs/feaddDisplay.v b/src/Specific/solinas32_2e129m25_5limbs/feaddDisplay.v
deleted file mode 100644
index 2dc5bab57..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e129m25_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e129m25_5limbs/fecarry.v b/src/Specific/solinas32_2e129m25_5limbs/fecarry.v
deleted file mode 100644
index f6ec2ff69..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e129m25_5limbs.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_2e129m25_5limbs/fecarryDisplay.v b/src/Specific/solinas32_2e129m25_5limbs/fecarryDisplay.v
deleted file mode 100644
index 71a7712a9..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e129m25_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e129m25_5limbs/femul.c b/src/Specific/solinas32_2e129m25_5limbs/femul.c
deleted file mode 100644
index 61675e434..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint64_t x20 = (((uint64_t)x5 * x18) + (((uint64_t)x7 * x19) + (((uint64_t)x9 * x17) + (((uint64_t)x11 * x15) + ((uint64_t)x10 * x13)))));
- { uint64_t x21 = ((((uint64_t)x5 * x19) + (((uint64_t)x7 * x17) + (((uint64_t)x9 * x15) + ((uint64_t)x11 * x13)))) + (0x19 * (0x2 * ((uint64_t)x10 * x18))));
- { uint64_t x22 = ((((uint64_t)x5 * x17) + (((uint64_t)x7 * x15) + ((uint64_t)x9 * x13))) + (0x19 * ((0x2 * ((uint64_t)x11 * x18)) + (0x2 * ((uint64_t)x10 * x19)))));
- { uint64_t x23 = ((((uint64_t)x5 * x15) + ((uint64_t)x7 * x13)) + (0x19 * ((0x2 * ((uint64_t)x9 * x18)) + ((0x2 * ((uint64_t)x11 * x19)) + (0x2 * ((uint64_t)x10 * x17))))));
- { uint64_t x24 = (((uint64_t)x5 * x13) + (0x19 * ((0x2 * ((uint64_t)x7 * x18)) + ((0x2 * ((uint64_t)x9 * x19)) + ((0x2 * ((uint64_t)x11 * x17)) + (0x2 * ((uint64_t)x10 * x15)))))));
- { uint64_t x25 = (x24 >> 0x1a);
- { uint32_t x26 = ((uint32_t)x24 & 0x3ffffff);
- { uint64_t x27 = (x25 + x23);
- { uint64_t x28 = (x27 >> 0x1a);
- { uint32_t x29 = ((uint32_t)x27 & 0x3ffffff);
- { uint64_t x30 = (x28 + x22);
- { uint64_t x31 = (x30 >> 0x1a);
- { uint32_t x32 = ((uint32_t)x30 & 0x3ffffff);
- { uint64_t x33 = (x31 + x21);
- { uint64_t x34 = (x33 >> 0x1a);
- { uint32_t x35 = ((uint32_t)x33 & 0x3ffffff);
- { uint64_t x36 = (x34 + x20);
- { uint64_t x37 = (x36 >> 0x19);
- { uint32_t x38 = ((uint32_t)x36 & 0x1ffffff);
- { uint64_t x39 = (x26 + (0x19 * x37));
- { uint32_t x40 = (uint32_t) (x39 >> 0x1a);
- { uint32_t x41 = ((uint32_t)x39 & 0x3ffffff);
- { uint32_t x42 = (x40 + x29);
- { uint32_t x43 = (x42 >> 0x1a);
- { uint32_t x44 = (x42 & 0x3ffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e129m25_5limbs/femul.v b/src/Specific/solinas32_2e129m25_5limbs/femul.v
deleted file mode 100644
index 440b28a80..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e129m25_5limbs.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_2e129m25_5limbs/femulDisplay.log b/src/Specific/solinas32_2e129m25_5limbs/femulDisplay.log
deleted file mode 100644
index 8fd8dbe90..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint64_t x20 = (((uint64_t)x5 * x18) + (((uint64_t)x7 * x19) + (((uint64_t)x9 * x17) + (((uint64_t)x11 * x15) + ((uint64_t)x10 * x13)))));
- uint64_t x21 = ((((uint64_t)x5 * x19) + (((uint64_t)x7 * x17) + (((uint64_t)x9 * x15) + ((uint64_t)x11 * x13)))) + (0x19 * (0x2 * ((uint64_t)x10 * x18))));
- uint64_t x22 = ((((uint64_t)x5 * x17) + (((uint64_t)x7 * x15) + ((uint64_t)x9 * x13))) + (0x19 * ((0x2 * ((uint64_t)x11 * x18)) + (0x2 * ((uint64_t)x10 * x19)))));
- uint64_t x23 = ((((uint64_t)x5 * x15) + ((uint64_t)x7 * x13)) + (0x19 * ((0x2 * ((uint64_t)x9 * x18)) + ((0x2 * ((uint64_t)x11 * x19)) + (0x2 * ((uint64_t)x10 * x17))))));
- uint64_t x24 = (((uint64_t)x5 * x13) + (0x19 * ((0x2 * ((uint64_t)x7 * x18)) + ((0x2 * ((uint64_t)x9 * x19)) + ((0x2 * ((uint64_t)x11 * x17)) + (0x2 * ((uint64_t)x10 * x15)))))));
- uint64_t x25 = (x24 >> 0x1a);
- uint32_t x26 = ((uint32_t)x24 & 0x3ffffff);
- uint64_t x27 = (x25 + x23);
- uint64_t x28 = (x27 >> 0x1a);
- uint32_t x29 = ((uint32_t)x27 & 0x3ffffff);
- uint64_t x30 = (x28 + x22);
- uint64_t x31 = (x30 >> 0x1a);
- uint32_t x32 = ((uint32_t)x30 & 0x3ffffff);
- uint64_t x33 = (x31 + x21);
- uint64_t x34 = (x33 >> 0x1a);
- uint32_t x35 = ((uint32_t)x33 & 0x3ffffff);
- uint64_t x36 = (x34 + x20);
- uint64_t x37 = (x36 >> 0x19);
- uint32_t x38 = ((uint32_t)x36 & 0x1ffffff);
- uint64_t x39 = (x26 + (0x19 * x37));
- uint32_t x40 = (uint32_t) (x39 >> 0x1a);
- uint32_t x41 = ((uint32_t)x39 & 0x3ffffff);
- uint32_t x42 = (x40 + x29);
- uint32_t x43 = (x42 >> 0x1a);
- uint32_t x44 = (x42 & 0x3ffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e129m25_5limbs/femulDisplay.v b/src/Specific/solinas32_2e129m25_5limbs/femulDisplay.v
deleted file mode 100644
index d23967038..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e129m25_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e129m25_5limbs/fesquare.c b/src/Specific/solinas32_2e129m25_5limbs/fesquare.c
deleted file mode 100644
index b63685118..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint32_t out[5], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x9 = (((uint64_t)x2 * x7) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x7 * x2)))));
- { uint64_t x10 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x19 * (0x2 * ((uint64_t)x7 * x7))));
- { uint64_t x11 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x19 * ((0x2 * ((uint64_t)x8 * x7)) + (0x2 * ((uint64_t)x7 * x8)))));
- { uint64_t x12 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x19 * ((0x2 * ((uint64_t)x6 * x7)) + ((0x2 * ((uint64_t)x8 * x8)) + (0x2 * ((uint64_t)x7 * x6))))));
- { uint64_t x13 = (((uint64_t)x2 * x2) + (0x19 * ((0x2 * ((uint64_t)x4 * x7)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (0x2 * ((uint64_t)x7 * x4)))))));
- { uint64_t x14 = (x13 >> 0x1a);
- { uint32_t x15 = ((uint32_t)x13 & 0x3ffffff);
- { uint64_t x16 = (x14 + x12);
- { uint64_t x17 = (x16 >> 0x1a);
- { uint32_t x18 = ((uint32_t)x16 & 0x3ffffff);
- { uint64_t x19 = (x17 + x11);
- { uint64_t x20 = (x19 >> 0x1a);
- { uint32_t x21 = ((uint32_t)x19 & 0x3ffffff);
- { uint64_t x22 = (x20 + x10);
- { uint64_t x23 = (x22 >> 0x1a);
- { uint32_t x24 = ((uint32_t)x22 & 0x3ffffff);
- { uint64_t x25 = (x23 + x9);
- { uint64_t x26 = (x25 >> 0x19);
- { uint32_t x27 = ((uint32_t)x25 & 0x1ffffff);
- { uint64_t x28 = (x15 + (0x19 * x26));
- { uint32_t x29 = (uint32_t) (x28 >> 0x1a);
- { uint32_t x30 = ((uint32_t)x28 & 0x3ffffff);
- { uint32_t x31 = (x29 + x18);
- { uint32_t x32 = (x31 >> 0x1a);
- { uint32_t x33 = (x31 & 0x3ffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e129m25_5limbs/fesquare.v b/src/Specific/solinas32_2e129m25_5limbs/fesquare.v
deleted file mode 100644
index d10ddeeff..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e129m25_5limbs.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_2e129m25_5limbs/fesquareDisplay.log b/src/Specific/solinas32_2e129m25_5limbs/fesquareDisplay.log
deleted file mode 100644
index fb657b2d5..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x9 = (((uint64_t)x2 * x7) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x7 * x2)))));
- uint64_t x10 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x19 * (0x2 * ((uint64_t)x7 * x7))));
- uint64_t x11 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x19 * ((0x2 * ((uint64_t)x8 * x7)) + (0x2 * ((uint64_t)x7 * x8)))));
- uint64_t x12 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x19 * ((0x2 * ((uint64_t)x6 * x7)) + ((0x2 * ((uint64_t)x8 * x8)) + (0x2 * ((uint64_t)x7 * x6))))));
- uint64_t x13 = (((uint64_t)x2 * x2) + (0x19 * ((0x2 * ((uint64_t)x4 * x7)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (0x2 * ((uint64_t)x7 * x4)))))));
- uint64_t x14 = (x13 >> 0x1a);
- uint32_t x15 = ((uint32_t)x13 & 0x3ffffff);
- uint64_t x16 = (x14 + x12);
- uint64_t x17 = (x16 >> 0x1a);
- uint32_t x18 = ((uint32_t)x16 & 0x3ffffff);
- uint64_t x19 = (x17 + x11);
- uint64_t x20 = (x19 >> 0x1a);
- uint32_t x21 = ((uint32_t)x19 & 0x3ffffff);
- uint64_t x22 = (x20 + x10);
- uint64_t x23 = (x22 >> 0x1a);
- uint32_t x24 = ((uint32_t)x22 & 0x3ffffff);
- uint64_t x25 = (x23 + x9);
- uint64_t x26 = (x25 >> 0x19);
- uint32_t x27 = ((uint32_t)x25 & 0x1ffffff);
- uint64_t x28 = (x15 + (0x19 * x26));
- uint32_t x29 = (uint32_t) (x28 >> 0x1a);
- uint32_t x30 = ((uint32_t)x28 & 0x3ffffff);
- uint32_t x31 = (x29 + x18);
- uint32_t x32 = (x31 >> 0x1a);
- uint32_t x33 = (x31 & 0x3ffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e129m25_5limbs/fesquareDisplay.v b/src/Specific/solinas32_2e129m25_5limbs/fesquareDisplay.v
deleted file mode 100644
index 5646466d1..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e129m25_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e129m25_5limbs/fesub.c b/src/Specific/solinas32_2e129m25_5limbs/fesub.c
deleted file mode 100644
index 758eebda7..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- out[0] = ((0x7ffffce + x5) - x13);
- out[1] = ((0x7fffffe + x7) - x15);
- out[2] = ((0x7fffffe + x9) - x17);
- out[3] = ((0x7fffffe + x11) - x19);
- out[4] = ((0x3fffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e129m25_5limbs/fesub.v b/src/Specific/solinas32_2e129m25_5limbs/fesub.v
deleted file mode 100644
index d4d32b8a8..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e129m25_5limbs.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_2e129m25_5limbs/fesubDisplay.log b/src/Specific/solinas32_2e129m25_5limbs/fesubDisplay.log
deleted file mode 100644
index 218309d16..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0x3fffffe + x10) - x18), ((0x7fffffe + x11) - x19), ((0x7fffffe + x9) - x17), ((0x7fffffe + x7) - x15), ((0x7ffffce + x5) - x13)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e129m25_5limbs/fesubDisplay.v b/src/Specific/solinas32_2e129m25_5limbs/fesubDisplay.v
deleted file mode 100644
index 95f3e5f93..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e129m25_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e129m25_5limbs/freeze.c b/src/Specific/solinas32_2e129m25_5limbs/freeze.c
deleted file mode 100644
index 7ee522ad7..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint32_t out[5], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffe7);
- { uint32_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x11, Return x4, 0x3ffffff);
- { uint32_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x14, Return x6, 0x3ffffff);
- { uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x8, 0x3ffffff);
- { uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x7, 0x1ffffff);
- { uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- { uint32_t x25 = (x24 & 0x3ffffe7);
- { uint32_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint32_t x29 = (x24 & 0x3ffffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint32_t x33 = (x24 & 0x3ffffff);
- { uint32_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint32_t x37 = (x24 & 0x3ffffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint32_t x41 = (x24 & 0x1ffffff);
- { uint32_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e129m25_5limbs/freeze.v b/src/Specific/solinas32_2e129m25_5limbs/freeze.v
deleted file mode 100644
index 86a817724..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e129m25_5limbs.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_2e129m25_5limbs/freezeDisplay.log b/src/Specific/solinas32_2e129m25_5limbs/freezeDisplay.log
deleted file mode 100644
index 418a7e817..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint32_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffe7);
- uint32_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x11, Return x4, 0x3ffffff);
- uint32_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x14, Return x6, 0x3ffffff);
- uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x8, 0x3ffffff);
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x7, 0x1ffffff);
- uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- uint32_t x25 = (x24 & 0x3ffffe7);
- uint32_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint32_t x29 = (x24 & 0x3ffffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint32_t x33 = (x24 & 0x3ffffff);
- uint32_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint32_t x37 = (x24 & 0x3ffffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint32_t x41 = (x24 & 0x1ffffff);
- uint32_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e129m25_5limbs/freezeDisplay.v b/src/Specific/solinas32_2e129m25_5limbs/freezeDisplay.v
deleted file mode 100644
index df6d0d0ee..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e129m25_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e129m25_5limbs/py_interpreter.sh b/src/Specific/solinas32_2e129m25_5limbs/py_interpreter.sh
deleted file mode 100755
index 88f708d3e..000000000
--- a/src/Specific/solinas32_2e129m25_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**129 - 25' -Dmodulus_bytes='25.8' -Da24='121665'
diff --git a/src/Specific/solinas32_2e129m25_6limbs/CurveParameters.v b/src/Specific/solinas32_2e129m25_6limbs/CurveParameters.v
deleted file mode 100644
index 7031863e9..000000000
--- a/src/Specific/solinas32_2e129m25_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^129 - 25
-Base: 21.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 21 + 1/2;
- bitwidth := 32;
- s := 2^129;
- c := [(1, 25)];
- 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_2e129m25_6limbs/Synthesis.v b/src/Specific/solinas32_2e129m25_6limbs/Synthesis.v
deleted file mode 100644
index d455eccf6..000000000
--- a/src/Specific/solinas32_2e129m25_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e129m25_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_2e129m25_6limbs/compiler.sh b/src/Specific/solinas32_2e129m25_6limbs/compiler.sh
deleted file mode 100755
index 027d8ff00..000000000
--- a/src/Specific/solinas32_2e129m25_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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,22,21,22,21}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<129) - 25' "$@"
diff --git a/src/Specific/solinas32_2e129m25_6limbs/compilerxx.sh b/src/Specific/solinas32_2e129m25_6limbs/compilerxx.sh
deleted file mode 100755
index 1c436f32d..000000000
--- a/src/Specific/solinas32_2e129m25_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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,22,21,22,21}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<129) - 25' "$@"
diff --git a/src/Specific/solinas32_2e129m25_6limbs/feadd.c b/src/Specific/solinas32_2e129m25_6limbs/feadd.c
deleted file mode 100644
index 5b654b294..000000000
--- a/src/Specific/solinas32_2e129m25_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_2e129m25_6limbs/feadd.v b/src/Specific/solinas32_2e129m25_6limbs/feadd.v
deleted file mode 100644
index 23ec0ab57..000000000
--- a/src/Specific/solinas32_2e129m25_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e129m25_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_2e129m25_6limbs/feaddDisplay.log b/src/Specific/solinas32_2e129m25_6limbs/feaddDisplay.log
deleted file mode 100644
index 1084b2659..000000000
--- a/src/Specific/solinas32_2e129m25_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_2e129m25_6limbs/feaddDisplay.v b/src/Specific/solinas32_2e129m25_6limbs/feaddDisplay.v
deleted file mode 100644
index 5c928bc2d..000000000
--- a/src/Specific/solinas32_2e129m25_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e129m25_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e129m25_6limbs/fecarry.v b/src/Specific/solinas32_2e129m25_6limbs/fecarry.v
deleted file mode 100644
index 4c67cd236..000000000
--- a/src/Specific/solinas32_2e129m25_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e129m25_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_2e129m25_6limbs/fecarryDisplay.v b/src/Specific/solinas32_2e129m25_6limbs/fecarryDisplay.v
deleted file mode 100644
index 7e2151e27..000000000
--- a/src/Specific/solinas32_2e129m25_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e129m25_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e129m25_6limbs/femul.c b/src/Specific/solinas32_2e129m25_6limbs/femul.c
deleted file mode 100644
index 9ed23c4c2..000000000
--- a/src/Specific/solinas32_2e129m25_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) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + (((uint64_t)x11 * x19) + (((uint64_t)x13 * x17) + ((uint64_t)x12 * x15))))));
- { uint64_t x25 = ((((uint64_t)x5 * x23) + ((0x2 * ((uint64_t)x7 * x21)) + (((uint64_t)x9 * x19) + ((0x2 * ((uint64_t)x11 * x17)) + ((uint64_t)x13 * x15))))) + (0x19 * (0x2 * ((uint64_t)x12 * x22))));
- { uint64_t x26 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + (((uint64_t)x9 * x17) + ((uint64_t)x11 * x15)))) + (0x19 * (((uint64_t)x13 * x22) + ((uint64_t)x12 * x23))));
- { uint64_t x27 = ((((uint64_t)x5 * x19) + ((0x2 * ((uint64_t)x7 * x17)) + ((uint64_t)x9 * x15))) + (0x19 * ((0x2 * ((uint64_t)x11 * x22)) + (((uint64_t)x13 * x23) + (0x2 * ((uint64_t)x12 * x21))))));
- { uint64_t x28 = ((((uint64_t)x5 * x17) + ((uint64_t)x7 * x15)) + (0x19 * (((uint64_t)x9 * x22) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x12 * x19))))));
- { uint64_t x29 = (((uint64_t)x5 * x15) + (0x19 * ((0x2 * ((uint64_t)x7 * x22)) + (((uint64_t)x9 * x23) + ((0x2 * ((uint64_t)x11 * x21)) + (((uint64_t)x13 * x19) + (0x2 * ((uint64_t)x12 * x17))))))));
- { uint32_t x30 = (uint32_t) (x29 >> 0x16);
- { uint32_t x31 = ((uint32_t)x29 & 0x3fffff);
- { uint64_t x32 = (x30 + x28);
- { uint64_t x33 = (x32 >> 0x15);
- { uint32_t x34 = ((uint32_t)x32 & 0x1fffff);
- { uint64_t x35 = (x33 + x27);
- { uint32_t x36 = (uint32_t) (x35 >> 0x16);
- { uint32_t x37 = ((uint32_t)x35 & 0x3fffff);
- { uint64_t x38 = (x36 + x26);
- { uint32_t x39 = (uint32_t) (x38 >> 0x15);
- { uint32_t x40 = ((uint32_t)x38 & 0x1fffff);
- { uint64_t x41 = (x39 + x25);
- { uint32_t x42 = (uint32_t) (x41 >> 0x16);
- { uint32_t x43 = ((uint32_t)x41 & 0x3fffff);
- { uint64_t x44 = (x42 + x24);
- { uint32_t x45 = (uint32_t) (x44 >> 0x15);
- { uint32_t x46 = ((uint32_t)x44 & 0x1fffff);
- { uint64_t x47 = (x31 + ((uint64_t)0x19 * x45));
- { uint32_t x48 = (uint32_t) (x47 >> 0x16);
- { uint32_t x49 = ((uint32_t)x47 & 0x3fffff);
- { uint32_t x50 = (x48 + x34);
- { uint32_t x51 = (x50 >> 0x15);
- { uint32_t x52 = (x50 & 0x1fffff);
- 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_2e129m25_6limbs/femul.v b/src/Specific/solinas32_2e129m25_6limbs/femul.v
deleted file mode 100644
index d371064bb..000000000
--- a/src/Specific/solinas32_2e129m25_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e129m25_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_2e129m25_6limbs/femulDisplay.log b/src/Specific/solinas32_2e129m25_6limbs/femulDisplay.log
deleted file mode 100644
index 505980179..000000000
--- a/src/Specific/solinas32_2e129m25_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) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + (((uint64_t)x11 * x19) + (((uint64_t)x13 * x17) + ((uint64_t)x12 * x15))))));
- uint64_t x25 = ((((uint64_t)x5 * x23) + ((0x2 * ((uint64_t)x7 * x21)) + (((uint64_t)x9 * x19) + ((0x2 * ((uint64_t)x11 * x17)) + ((uint64_t)x13 * x15))))) + (0x19 * (0x2 * ((uint64_t)x12 * x22))));
- uint64_t x26 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + (((uint64_t)x9 * x17) + ((uint64_t)x11 * x15)))) + (0x19 * (((uint64_t)x13 * x22) + ((uint64_t)x12 * x23))));
- uint64_t x27 = ((((uint64_t)x5 * x19) + ((0x2 * ((uint64_t)x7 * x17)) + ((uint64_t)x9 * x15))) + (0x19 * ((0x2 * ((uint64_t)x11 * x22)) + (((uint64_t)x13 * x23) + (0x2 * ((uint64_t)x12 * x21))))));
- uint64_t x28 = ((((uint64_t)x5 * x17) + ((uint64_t)x7 * x15)) + (0x19 * (((uint64_t)x9 * x22) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x12 * x19))))));
- uint64_t x29 = (((uint64_t)x5 * x15) + (0x19 * ((0x2 * ((uint64_t)x7 * x22)) + (((uint64_t)x9 * x23) + ((0x2 * ((uint64_t)x11 * x21)) + (((uint64_t)x13 * x19) + (0x2 * ((uint64_t)x12 * x17))))))));
- uint32_t x30 = (uint32_t) (x29 >> 0x16);
- uint32_t x31 = ((uint32_t)x29 & 0x3fffff);
- uint64_t x32 = (x30 + x28);
- uint64_t x33 = (x32 >> 0x15);
- uint32_t x34 = ((uint32_t)x32 & 0x1fffff);
- uint64_t x35 = (x33 + x27);
- uint32_t x36 = (uint32_t) (x35 >> 0x16);
- uint32_t x37 = ((uint32_t)x35 & 0x3fffff);
- uint64_t x38 = (x36 + x26);
- uint32_t x39 = (uint32_t) (x38 >> 0x15);
- uint32_t x40 = ((uint32_t)x38 & 0x1fffff);
- uint64_t x41 = (x39 + x25);
- uint32_t x42 = (uint32_t) (x41 >> 0x16);
- uint32_t x43 = ((uint32_t)x41 & 0x3fffff);
- uint64_t x44 = (x42 + x24);
- uint32_t x45 = (uint32_t) (x44 >> 0x15);
- uint32_t x46 = ((uint32_t)x44 & 0x1fffff);
- uint64_t x47 = (x31 + ((uint64_t)0x19 * x45));
- uint32_t x48 = (uint32_t) (x47 >> 0x16);
- uint32_t x49 = ((uint32_t)x47 & 0x3fffff);
- uint32_t x50 = (x48 + x34);
- uint32_t x51 = (x50 >> 0x15);
- uint32_t x52 = (x50 & 0x1fffff);
- 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_2e129m25_6limbs/femulDisplay.v b/src/Specific/solinas32_2e129m25_6limbs/femulDisplay.v
deleted file mode 100644
index 082f94ff3..000000000
--- a/src/Specific/solinas32_2e129m25_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e129m25_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e129m25_6limbs/fesquare.c b/src/Specific/solinas32_2e129m25_6limbs/fesquare.c
deleted file mode 100644
index efa4f8e92..000000000
--- a/src/Specific/solinas32_2e129m25_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) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x9 * x2))))));
- { uint64_t x12 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x19 * (0x2 * ((uint64_t)x9 * x9))));
- { uint64_t x13 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x19 * (((uint64_t)x10 * x9) + ((uint64_t)x9 * x10))));
- { uint64_t x14 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x19 * ((0x2 * ((uint64_t)x8 * x9)) + (((uint64_t)x10 * x10) + (0x2 * ((uint64_t)x9 * x8))))));
- { uint64_t x15 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x19 * (((uint64_t)x6 * x9) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((uint64_t)x9 * x6))))));
- { uint64_t x16 = (((uint64_t)x2 * x2) + (0x19 * ((0x2 * ((uint64_t)x4 * x9)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (0x2 * ((uint64_t)x9 * x4))))))));
- { uint32_t x17 = (uint32_t) (x16 >> 0x16);
- { uint32_t x18 = ((uint32_t)x16 & 0x3fffff);
- { uint64_t x19 = (x17 + x15);
- { uint64_t x20 = (x19 >> 0x15);
- { uint32_t x21 = ((uint32_t)x19 & 0x1fffff);
- { uint64_t x22 = (x20 + x14);
- { uint32_t x23 = (uint32_t) (x22 >> 0x16);
- { uint32_t x24 = ((uint32_t)x22 & 0x3fffff);
- { uint64_t x25 = (x23 + x13);
- { uint32_t x26 = (uint32_t) (x25 >> 0x15);
- { uint32_t x27 = ((uint32_t)x25 & 0x1fffff);
- { uint64_t x28 = (x26 + x12);
- { uint32_t x29 = (uint32_t) (x28 >> 0x16);
- { uint32_t x30 = ((uint32_t)x28 & 0x3fffff);
- { uint64_t x31 = (x29 + x11);
- { uint32_t x32 = (uint32_t) (x31 >> 0x15);
- { uint32_t x33 = ((uint32_t)x31 & 0x1fffff);
- { uint64_t x34 = (x18 + ((uint64_t)0x19 * x32));
- { uint32_t x35 = (uint32_t) (x34 >> 0x16);
- { uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- { uint32_t x37 = (x35 + x21);
- { uint32_t x38 = (x37 >> 0x15);
- { uint32_t x39 = (x37 & 0x1fffff);
- 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_2e129m25_6limbs/fesquare.v b/src/Specific/solinas32_2e129m25_6limbs/fesquare.v
deleted file mode 100644
index 64854e704..000000000
--- a/src/Specific/solinas32_2e129m25_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e129m25_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_2e129m25_6limbs/fesquareDisplay.log b/src/Specific/solinas32_2e129m25_6limbs/fesquareDisplay.log
deleted file mode 100644
index 33269bc68..000000000
--- a/src/Specific/solinas32_2e129m25_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) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x9 * x2))))));
- uint64_t x12 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x19 * (0x2 * ((uint64_t)x9 * x9))));
- uint64_t x13 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x19 * (((uint64_t)x10 * x9) + ((uint64_t)x9 * x10))));
- uint64_t x14 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x19 * ((0x2 * ((uint64_t)x8 * x9)) + (((uint64_t)x10 * x10) + (0x2 * ((uint64_t)x9 * x8))))));
- uint64_t x15 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x19 * (((uint64_t)x6 * x9) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((uint64_t)x9 * x6))))));
- uint64_t x16 = (((uint64_t)x2 * x2) + (0x19 * ((0x2 * ((uint64_t)x4 * x9)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (0x2 * ((uint64_t)x9 * x4))))))));
- uint32_t x17 = (uint32_t) (x16 >> 0x16);
- uint32_t x18 = ((uint32_t)x16 & 0x3fffff);
- uint64_t x19 = (x17 + x15);
- uint64_t x20 = (x19 >> 0x15);
- uint32_t x21 = ((uint32_t)x19 & 0x1fffff);
- uint64_t x22 = (x20 + x14);
- uint32_t x23 = (uint32_t) (x22 >> 0x16);
- uint32_t x24 = ((uint32_t)x22 & 0x3fffff);
- uint64_t x25 = (x23 + x13);
- uint32_t x26 = (uint32_t) (x25 >> 0x15);
- uint32_t x27 = ((uint32_t)x25 & 0x1fffff);
- uint64_t x28 = (x26 + x12);
- uint32_t x29 = (uint32_t) (x28 >> 0x16);
- uint32_t x30 = ((uint32_t)x28 & 0x3fffff);
- uint64_t x31 = (x29 + x11);
- uint32_t x32 = (uint32_t) (x31 >> 0x15);
- uint32_t x33 = ((uint32_t)x31 & 0x1fffff);
- uint64_t x34 = (x18 + ((uint64_t)0x19 * x32));
- uint32_t x35 = (uint32_t) (x34 >> 0x16);
- uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- uint32_t x37 = (x35 + x21);
- uint32_t x38 = (x37 >> 0x15);
- uint32_t x39 = (x37 & 0x1fffff);
- 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_2e129m25_6limbs/fesquareDisplay.v b/src/Specific/solinas32_2e129m25_6limbs/fesquareDisplay.v
deleted file mode 100644
index 93c8073fb..000000000
--- a/src/Specific/solinas32_2e129m25_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e129m25_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e129m25_6limbs/fesub.c b/src/Specific/solinas32_2e129m25_6limbs/fesub.c
deleted file mode 100644
index d557470df..000000000
--- a/src/Specific/solinas32_2e129m25_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] = ((0x7fffce + x5) - x15);
- out[1] = ((0x3ffffe + x7) - x17);
- out[2] = ((0x7ffffe + x9) - x19);
- out[3] = ((0x3ffffe + x11) - x21);
- out[4] = ((0x7ffffe + x13) - x23);
- out[5] = ((0x3ffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e129m25_6limbs/fesub.v b/src/Specific/solinas32_2e129m25_6limbs/fesub.v
deleted file mode 100644
index 46ffc1f1f..000000000
--- a/src/Specific/solinas32_2e129m25_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e129m25_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_2e129m25_6limbs/fesubDisplay.log b/src/Specific/solinas32_2e129m25_6limbs/fesubDisplay.log
deleted file mode 100644
index 8a85dcd49..000000000
--- a/src/Specific/solinas32_2e129m25_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,
- (((0x3ffffe + x12) - x22), ((0x7ffffe + x13) - x23), ((0x3ffffe + x11) - x21), ((0x7ffffe + x9) - x19), ((0x3ffffe + x7) - x17), ((0x7fffce + 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_2e129m25_6limbs/fesubDisplay.v b/src/Specific/solinas32_2e129m25_6limbs/fesubDisplay.v
deleted file mode 100644
index 2e82a7d3c..000000000
--- a/src/Specific/solinas32_2e129m25_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e129m25_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e129m25_6limbs/freeze.c b/src/Specific/solinas32_2e129m25_6limbs/freeze.c
deleted file mode 100644
index 989ef2208..000000000
--- a/src/Specific/solinas32_2e129m25_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 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffe7);
- { uint32_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x13, Return x4, 0x1fffff);
- { uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x16, Return x6, 0x3fffff);
- { uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x8, 0x1fffff);
- { uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x10, 0x3fffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x9, 0x1fffff);
- { uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- { uint32_t x30 = (x29 & 0x3fffe7);
- { uint32_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint32_t x34 = (x29 & 0x1fffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 21 (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 & 0x3fffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 22 (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 & 0x1fffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 21 (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 & 0x3fffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 22 (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 & 0x1fffff);
- { uint32_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (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_2e129m25_6limbs/freeze.v b/src/Specific/solinas32_2e129m25_6limbs/freeze.v
deleted file mode 100644
index 1b72bd4e3..000000000
--- a/src/Specific/solinas32_2e129m25_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e129m25_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_2e129m25_6limbs/freezeDisplay.log b/src/Specific/solinas32_2e129m25_6limbs/freezeDisplay.log
deleted file mode 100644
index 3a22c8feb..000000000
--- a/src/Specific/solinas32_2e129m25_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 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffe7);
- uint32_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x13, Return x4, 0x1fffff);
- uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x16, Return x6, 0x3fffff);
- uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x8, 0x1fffff);
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x10, 0x3fffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x9, 0x1fffff);
- uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- uint32_t x30 = (x29 & 0x3fffe7);
- uint32_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint32_t x34 = (x29 & 0x1fffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 21 (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 & 0x3fffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 22 (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 & 0x1fffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 21 (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 & 0x3fffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 22 (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 & 0x1fffff);
- uint32_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (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_2e129m25_6limbs/freezeDisplay.v b/src/Specific/solinas32_2e129m25_6limbs/freezeDisplay.v
deleted file mode 100644
index e420e3119..000000000
--- a/src/Specific/solinas32_2e129m25_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e129m25_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e129m25_6limbs/py_interpreter.sh b/src/Specific/solinas32_2e129m25_6limbs/py_interpreter.sh
deleted file mode 100755
index e644139bb..000000000
--- a/src/Specific/solinas32_2e129m25_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**129 - 25' -Dmodulus_bytes='21.5' -Da24='121665'
diff --git a/src/Specific/solinas32_2e130m5_5limbs/CurveParameters.v b/src/Specific/solinas32_2e130m5_5limbs/CurveParameters.v
deleted file mode 100644
index 4c7d39418..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^130 - 5
-Base: 26
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 26;
- bitwidth := 32;
- s := 2^130;
- c := [(1, 5)];
- carry_chains := Some [seq 0 (pred 5); [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_2e130m5_5limbs/Synthesis.v b/src/Specific/solinas32_2e130m5_5limbs/Synthesis.v
deleted file mode 100644
index b20dc4d17..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e130m5_5limbs.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_2e130m5_5limbs/compiler.sh b/src/Specific/solinas32_2e130m5_5limbs/compiler.sh
deleted file mode 100755
index 1c2b51928..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,26,26,26,26}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<130) - 5' "$@"
diff --git a/src/Specific/solinas32_2e130m5_5limbs/compilerxx.sh b/src/Specific/solinas32_2e130m5_5limbs/compilerxx.sh
deleted file mode 100755
index f73700fc6..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,26,26,26,26}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<130) - 5' "$@"
diff --git a/src/Specific/solinas32_2e130m5_5limbs/feadd.c b/src/Specific/solinas32_2e130m5_5limbs/feadd.c
deleted file mode 100644
index 4db430361..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e130m5_5limbs/feadd.v b/src/Specific/solinas32_2e130m5_5limbs/feadd.v
deleted file mode 100644
index bf954a018..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e130m5_5limbs.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_2e130m5_5limbs/feaddDisplay.log b/src/Specific/solinas32_2e130m5_5limbs/feaddDisplay.log
deleted file mode 100644
index eaf25ecd1..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e130m5_5limbs/feaddDisplay.v b/src/Specific/solinas32_2e130m5_5limbs/feaddDisplay.v
deleted file mode 100644
index b3cacdda0..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e130m5_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e130m5_5limbs/fecarry.v b/src/Specific/solinas32_2e130m5_5limbs/fecarry.v
deleted file mode 100644
index 22a676882..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e130m5_5limbs.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_2e130m5_5limbs/fecarryDisplay.v b/src/Specific/solinas32_2e130m5_5limbs/fecarryDisplay.v
deleted file mode 100644
index 6de5412c1..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e130m5_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e130m5_5limbs/femul.c b/src/Specific/solinas32_2e130m5_5limbs/femul.c
deleted file mode 100644
index 597a8eddd..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint64_t x20 = (((uint64_t)x5 * x18) + (((uint64_t)x7 * x19) + (((uint64_t)x9 * x17) + (((uint64_t)x11 * x15) + ((uint64_t)x10 * x13)))));
- { uint64_t x21 = ((((uint64_t)x5 * x19) + (((uint64_t)x7 * x17) + (((uint64_t)x9 * x15) + ((uint64_t)x11 * x13)))) + (0x5 * ((uint64_t)x10 * x18)));
- { uint64_t x22 = ((((uint64_t)x5 * x17) + (((uint64_t)x7 * x15) + ((uint64_t)x9 * x13))) + (0x5 * (((uint64_t)x11 * x18) + ((uint64_t)x10 * x19))));
- { uint64_t x23 = ((((uint64_t)x5 * x15) + ((uint64_t)x7 * x13)) + (0x5 * (((uint64_t)x9 * x18) + (((uint64_t)x11 * x19) + ((uint64_t)x10 * x17)))));
- { uint64_t x24 = (((uint64_t)x5 * x13) + (0x5 * (((uint64_t)x7 * x18) + (((uint64_t)x9 * x19) + (((uint64_t)x11 * x17) + ((uint64_t)x10 * x15))))));
- { uint64_t x25 = (x24 >> 0x1a);
- { uint32_t x26 = ((uint32_t)x24 & 0x3ffffff);
- { uint64_t x27 = (x25 + x23);
- { uint64_t x28 = (x27 >> 0x1a);
- { uint32_t x29 = ((uint32_t)x27 & 0x3ffffff);
- { uint64_t x30 = (x28 + x22);
- { uint64_t x31 = (x30 >> 0x1a);
- { uint32_t x32 = ((uint32_t)x30 & 0x3ffffff);
- { uint64_t x33 = (x31 + x21);
- { uint64_t x34 = (x33 >> 0x1a);
- { uint32_t x35 = ((uint32_t)x33 & 0x3ffffff);
- { uint64_t x36 = (x34 + x20);
- { uint32_t x37 = (uint32_t) (x36 >> 0x1a);
- { uint32_t x38 = ((uint32_t)x36 & 0x3ffffff);
- { uint64_t x39 = (x26 + ((uint64_t)0x5 * x37));
- { uint32_t x40 = (uint32_t) (x39 >> 0x1a);
- { uint32_t x41 = ((uint32_t)x39 & 0x3ffffff);
- { uint32_t x42 = (x40 + x29);
- { uint32_t x43 = (x42 >> 0x1a);
- { uint32_t x44 = (x42 & 0x3ffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e130m5_5limbs/femul.v b/src/Specific/solinas32_2e130m5_5limbs/femul.v
deleted file mode 100644
index 0d55a547d..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e130m5_5limbs.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_2e130m5_5limbs/femulDisplay.log b/src/Specific/solinas32_2e130m5_5limbs/femulDisplay.log
deleted file mode 100644
index ff0a450a6..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint64_t x20 = (((uint64_t)x5 * x18) + (((uint64_t)x7 * x19) + (((uint64_t)x9 * x17) + (((uint64_t)x11 * x15) + ((uint64_t)x10 * x13)))));
- uint64_t x21 = ((((uint64_t)x5 * x19) + (((uint64_t)x7 * x17) + (((uint64_t)x9 * x15) + ((uint64_t)x11 * x13)))) + (0x5 * ((uint64_t)x10 * x18)));
- uint64_t x22 = ((((uint64_t)x5 * x17) + (((uint64_t)x7 * x15) + ((uint64_t)x9 * x13))) + (0x5 * (((uint64_t)x11 * x18) + ((uint64_t)x10 * x19))));
- uint64_t x23 = ((((uint64_t)x5 * x15) + ((uint64_t)x7 * x13)) + (0x5 * (((uint64_t)x9 * x18) + (((uint64_t)x11 * x19) + ((uint64_t)x10 * x17)))));
- uint64_t x24 = (((uint64_t)x5 * x13) + (0x5 * (((uint64_t)x7 * x18) + (((uint64_t)x9 * x19) + (((uint64_t)x11 * x17) + ((uint64_t)x10 * x15))))));
- uint64_t x25 = (x24 >> 0x1a);
- uint32_t x26 = ((uint32_t)x24 & 0x3ffffff);
- uint64_t x27 = (x25 + x23);
- uint64_t x28 = (x27 >> 0x1a);
- uint32_t x29 = ((uint32_t)x27 & 0x3ffffff);
- uint64_t x30 = (x28 + x22);
- uint64_t x31 = (x30 >> 0x1a);
- uint32_t x32 = ((uint32_t)x30 & 0x3ffffff);
- uint64_t x33 = (x31 + x21);
- uint64_t x34 = (x33 >> 0x1a);
- uint32_t x35 = ((uint32_t)x33 & 0x3ffffff);
- uint64_t x36 = (x34 + x20);
- uint32_t x37 = (uint32_t) (x36 >> 0x1a);
- uint32_t x38 = ((uint32_t)x36 & 0x3ffffff);
- uint64_t x39 = (x26 + ((uint64_t)0x5 * x37));
- uint32_t x40 = (uint32_t) (x39 >> 0x1a);
- uint32_t x41 = ((uint32_t)x39 & 0x3ffffff);
- uint32_t x42 = (x40 + x29);
- uint32_t x43 = (x42 >> 0x1a);
- uint32_t x44 = (x42 & 0x3ffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e130m5_5limbs/femulDisplay.v b/src/Specific/solinas32_2e130m5_5limbs/femulDisplay.v
deleted file mode 100644
index 8d4119d7d..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e130m5_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e130m5_5limbs/fesquare.c b/src/Specific/solinas32_2e130m5_5limbs/fesquare.c
deleted file mode 100644
index 9fc0158e4..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint32_t out[5], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x9 = (((uint64_t)x2 * x7) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x7 * x2)))));
- { uint64_t x10 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x5 * ((uint64_t)x7 * x7)));
- { uint64_t x11 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x5 * (((uint64_t)x8 * x7) + ((uint64_t)x7 * x8))));
- { uint64_t x12 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x5 * (((uint64_t)x6 * x7) + (((uint64_t)x8 * x8) + ((uint64_t)x7 * x6)))));
- { uint64_t x13 = (((uint64_t)x2 * x2) + (0x5 * (((uint64_t)x4 * x7) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((uint64_t)x7 * x4))))));
- { uint64_t x14 = (x13 >> 0x1a);
- { uint32_t x15 = ((uint32_t)x13 & 0x3ffffff);
- { uint64_t x16 = (x14 + x12);
- { uint64_t x17 = (x16 >> 0x1a);
- { uint32_t x18 = ((uint32_t)x16 & 0x3ffffff);
- { uint64_t x19 = (x17 + x11);
- { uint64_t x20 = (x19 >> 0x1a);
- { uint32_t x21 = ((uint32_t)x19 & 0x3ffffff);
- { uint64_t x22 = (x20 + x10);
- { uint64_t x23 = (x22 >> 0x1a);
- { uint32_t x24 = ((uint32_t)x22 & 0x3ffffff);
- { uint64_t x25 = (x23 + x9);
- { uint32_t x26 = (uint32_t) (x25 >> 0x1a);
- { uint32_t x27 = ((uint32_t)x25 & 0x3ffffff);
- { uint64_t x28 = (x15 + ((uint64_t)0x5 * x26));
- { uint32_t x29 = (uint32_t) (x28 >> 0x1a);
- { uint32_t x30 = ((uint32_t)x28 & 0x3ffffff);
- { uint32_t x31 = (x29 + x18);
- { uint32_t x32 = (x31 >> 0x1a);
- { uint32_t x33 = (x31 & 0x3ffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e130m5_5limbs/fesquare.v b/src/Specific/solinas32_2e130m5_5limbs/fesquare.v
deleted file mode 100644
index e445539f0..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e130m5_5limbs.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_2e130m5_5limbs/fesquareDisplay.log b/src/Specific/solinas32_2e130m5_5limbs/fesquareDisplay.log
deleted file mode 100644
index 2d88d3465..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x9 = (((uint64_t)x2 * x7) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x7 * x2)))));
- uint64_t x10 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x5 * ((uint64_t)x7 * x7)));
- uint64_t x11 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x5 * (((uint64_t)x8 * x7) + ((uint64_t)x7 * x8))));
- uint64_t x12 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x5 * (((uint64_t)x6 * x7) + (((uint64_t)x8 * x8) + ((uint64_t)x7 * x6)))));
- uint64_t x13 = (((uint64_t)x2 * x2) + (0x5 * (((uint64_t)x4 * x7) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((uint64_t)x7 * x4))))));
- uint64_t x14 = (x13 >> 0x1a);
- uint32_t x15 = ((uint32_t)x13 & 0x3ffffff);
- uint64_t x16 = (x14 + x12);
- uint64_t x17 = (x16 >> 0x1a);
- uint32_t x18 = ((uint32_t)x16 & 0x3ffffff);
- uint64_t x19 = (x17 + x11);
- uint64_t x20 = (x19 >> 0x1a);
- uint32_t x21 = ((uint32_t)x19 & 0x3ffffff);
- uint64_t x22 = (x20 + x10);
- uint64_t x23 = (x22 >> 0x1a);
- uint32_t x24 = ((uint32_t)x22 & 0x3ffffff);
- uint64_t x25 = (x23 + x9);
- uint32_t x26 = (uint32_t) (x25 >> 0x1a);
- uint32_t x27 = ((uint32_t)x25 & 0x3ffffff);
- uint64_t x28 = (x15 + ((uint64_t)0x5 * x26));
- uint32_t x29 = (uint32_t) (x28 >> 0x1a);
- uint32_t x30 = ((uint32_t)x28 & 0x3ffffff);
- uint32_t x31 = (x29 + x18);
- uint32_t x32 = (x31 >> 0x1a);
- uint32_t x33 = (x31 & 0x3ffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e130m5_5limbs/fesquareDisplay.v b/src/Specific/solinas32_2e130m5_5limbs/fesquareDisplay.v
deleted file mode 100644
index 5eec20f69..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e130m5_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e130m5_5limbs/fesub.c b/src/Specific/solinas32_2e130m5_5limbs/fesub.c
deleted file mode 100644
index 5cb693285..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- out[0] = ((0x7fffff6 + x5) - x13);
- out[1] = ((0x7fffffe + x7) - x15);
- out[2] = ((0x7fffffe + x9) - x17);
- out[3] = ((0x7fffffe + x11) - x19);
- out[4] = ((0x7fffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e130m5_5limbs/fesub.v b/src/Specific/solinas32_2e130m5_5limbs/fesub.v
deleted file mode 100644
index 0c1c589dc..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e130m5_5limbs.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_2e130m5_5limbs/fesubDisplay.log b/src/Specific/solinas32_2e130m5_5limbs/fesubDisplay.log
deleted file mode 100644
index 1250af0b6..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0x7fffffe + x10) - x18), ((0x7fffffe + x11) - x19), ((0x7fffffe + x9) - x17), ((0x7fffffe + x7) - x15), ((0x7fffff6 + x5) - x13)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e130m5_5limbs/fesubDisplay.v b/src/Specific/solinas32_2e130m5_5limbs/fesubDisplay.v
deleted file mode 100644
index 58442e682..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e130m5_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e130m5_5limbs/freeze.c b/src/Specific/solinas32_2e130m5_5limbs/freeze.c
deleted file mode 100644
index dae1a6834..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint32_t out[5], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffb);
- { uint32_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x11, Return x4, 0x3ffffff);
- { uint32_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x14, Return x6, 0x3ffffff);
- { uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x8, 0x3ffffff);
- { uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x7, 0x3ffffff);
- { uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- { uint32_t x25 = (x24 & 0x3fffffb);
- { uint32_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint32_t x29 = (x24 & 0x3ffffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint32_t x33 = (x24 & 0x3ffffff);
- { uint32_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint32_t x37 = (x24 & 0x3ffffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint32_t x41 = (x24 & 0x3ffffff);
- { uint32_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e130m5_5limbs/freeze.v b/src/Specific/solinas32_2e130m5_5limbs/freeze.v
deleted file mode 100644
index 207ad0e71..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e130m5_5limbs.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_2e130m5_5limbs/freezeDisplay.log b/src/Specific/solinas32_2e130m5_5limbs/freezeDisplay.log
deleted file mode 100644
index 8aa0457e5..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint32_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffb);
- uint32_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x11, Return x4, 0x3ffffff);
- uint32_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x14, Return x6, 0x3ffffff);
- uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x8, 0x3ffffff);
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x7, 0x3ffffff);
- uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- uint32_t x25 = (x24 & 0x3fffffb);
- uint32_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint32_t x29 = (x24 & 0x3ffffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint32_t x33 = (x24 & 0x3ffffff);
- uint32_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint32_t x37 = (x24 & 0x3ffffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint32_t x41 = (x24 & 0x3ffffff);
- uint32_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e130m5_5limbs/freezeDisplay.v b/src/Specific/solinas32_2e130m5_5limbs/freezeDisplay.v
deleted file mode 100644
index abf00e549..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e130m5_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e130m5_5limbs/py_interpreter.sh b/src/Specific/solinas32_2e130m5_5limbs/py_interpreter.sh
deleted file mode 100755
index 9330f32d1..000000000
--- a/src/Specific/solinas32_2e130m5_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**130 - 5' -Dmodulus_bytes='26' -Da24='121665'
diff --git a/src/Specific/solinas32_2e130m5_6limbs/CurveParameters.v b/src/Specific/solinas32_2e130m5_6limbs/CurveParameters.v
deleted file mode 100644
index 861448a43..000000000
--- a/src/Specific/solinas32_2e130m5_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^130 - 5
-Base: 21 + 2/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 21 + 2/3;
- bitwidth := 32;
- s := 2^130;
- c := [(1, 5)];
- 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_2e130m5_6limbs/Synthesis.v b/src/Specific/solinas32_2e130m5_6limbs/Synthesis.v
deleted file mode 100644
index 3b2d9ab41..000000000
--- a/src/Specific/solinas32_2e130m5_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e130m5_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_2e130m5_6limbs/compiler.sh b/src/Specific/solinas32_2e130m5_6limbs/compiler.sh
deleted file mode 100755
index b5830e59c..000000000
--- a/src/Specific/solinas32_2e130m5_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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,21,22,22,21}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<130) - 5' "$@"
diff --git a/src/Specific/solinas32_2e130m5_6limbs/compilerxx.sh b/src/Specific/solinas32_2e130m5_6limbs/compilerxx.sh
deleted file mode 100755
index cbb03e6b5..000000000
--- a/src/Specific/solinas32_2e130m5_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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,21,22,22,21}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<130) - 5' "$@"
diff --git a/src/Specific/solinas32_2e130m5_6limbs/feadd.c b/src/Specific/solinas32_2e130m5_6limbs/feadd.c
deleted file mode 100644
index 5b654b294..000000000
--- a/src/Specific/solinas32_2e130m5_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_2e130m5_6limbs/feadd.v b/src/Specific/solinas32_2e130m5_6limbs/feadd.v
deleted file mode 100644
index d85422729..000000000
--- a/src/Specific/solinas32_2e130m5_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e130m5_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_2e130m5_6limbs/feaddDisplay.log b/src/Specific/solinas32_2e130m5_6limbs/feaddDisplay.log
deleted file mode 100644
index 1084b2659..000000000
--- a/src/Specific/solinas32_2e130m5_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_2e130m5_6limbs/feaddDisplay.v b/src/Specific/solinas32_2e130m5_6limbs/feaddDisplay.v
deleted file mode 100644
index b2298c3e0..000000000
--- a/src/Specific/solinas32_2e130m5_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e130m5_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e130m5_6limbs/fecarry.v b/src/Specific/solinas32_2e130m5_6limbs/fecarry.v
deleted file mode 100644
index d08dadb58..000000000
--- a/src/Specific/solinas32_2e130m5_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e130m5_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_2e130m5_6limbs/fecarryDisplay.v b/src/Specific/solinas32_2e130m5_6limbs/fecarryDisplay.v
deleted file mode 100644
index 1acf791ed..000000000
--- a/src/Specific/solinas32_2e130m5_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e130m5_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e130m5_6limbs/femul.c b/src/Specific/solinas32_2e130m5_6limbs/femul.c
deleted file mode 100644
index ed022e446..000000000
--- a/src/Specific/solinas32_2e130m5_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) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + (((uint64_t)x11 * x19) + (((uint64_t)x13 * x17) + ((uint64_t)x12 * x15))))));
- { uint64_t x25 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((0x2 * ((uint64_t)x9 * x19)) + (((uint64_t)x11 * x17) + ((uint64_t)x13 * x15))))) + (0x5 * (0x2 * ((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)))) + (0x5 * ((0x2 * ((uint64_t)x13 * x22)) + (0x2 * ((uint64_t)x12 * x23)))));
- { uint64_t x27 = ((((uint64_t)x5 * x19) + (((uint64_t)x7 * x17) + ((uint64_t)x9 * x15))) + (0x5 * (((uint64_t)x11 * x22) + (((uint64_t)x13 * x23) + ((uint64_t)x12 * x21)))));
- { uint64_t x28 = ((((uint64_t)x5 * x17) + ((uint64_t)x7 * x15)) + (0x5 * ((0x2 * ((uint64_t)x9 * x22)) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + (0x2 * ((uint64_t)x12 * x19)))))));
- { uint64_t x29 = (((uint64_t)x5 * x15) + (0x5 * ((0x2 * ((uint64_t)x7 * x22)) + ((0x2 * ((uint64_t)x9 * x23)) + (((uint64_t)x11 * x21) + ((0x2 * ((uint64_t)x13 * x19)) + (0x2 * ((uint64_t)x12 * x17))))))));
- { uint32_t x30 = (uint32_t) (x29 >> 0x16);
- { uint32_t x31 = ((uint32_t)x29 & 0x3fffff);
- { uint64_t x32 = (x30 + x28);
- { uint32_t x33 = (uint32_t) (x32 >> 0x16);
- { uint32_t x34 = ((uint32_t)x32 & 0x3fffff);
- { uint64_t x35 = (x33 + x27);
- { uint32_t x36 = (uint32_t) (x35 >> 0x15);
- { uint32_t x37 = ((uint32_t)x35 & 0x1fffff);
- { uint64_t x38 = (x36 + x26);
- { uint32_t x39 = (uint32_t) (x38 >> 0x16);
- { uint32_t x40 = ((uint32_t)x38 & 0x3fffff);
- { uint64_t x41 = (x39 + x25);
- { uint32_t x42 = (uint32_t) (x41 >> 0x16);
- { uint32_t x43 = ((uint32_t)x41 & 0x3fffff);
- { uint64_t x44 = (x42 + x24);
- { uint32_t x45 = (uint32_t) (x44 >> 0x15);
- { uint32_t x46 = ((uint32_t)x44 & 0x1fffff);
- { uint32_t x47 = (x31 + (0x5 * x45));
- { uint32_t x48 = (x47 >> 0x16);
- { uint32_t x49 = (x47 & 0x3fffff);
- { uint32_t x50 = (x48 + x34);
- { uint32_t x51 = (x50 >> 0x16);
- { uint32_t x52 = (x50 & 0x3fffff);
- 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_2e130m5_6limbs/femul.v b/src/Specific/solinas32_2e130m5_6limbs/femul.v
deleted file mode 100644
index 6ea60a91d..000000000
--- a/src/Specific/solinas32_2e130m5_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e130m5_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_2e130m5_6limbs/femulDisplay.log b/src/Specific/solinas32_2e130m5_6limbs/femulDisplay.log
deleted file mode 100644
index a1c22d578..000000000
--- a/src/Specific/solinas32_2e130m5_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) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + (((uint64_t)x11 * x19) + (((uint64_t)x13 * x17) + ((uint64_t)x12 * x15))))));
- uint64_t x25 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((0x2 * ((uint64_t)x9 * x19)) + (((uint64_t)x11 * x17) + ((uint64_t)x13 * x15))))) + (0x5 * (0x2 * ((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)))) + (0x5 * ((0x2 * ((uint64_t)x13 * x22)) + (0x2 * ((uint64_t)x12 * x23)))));
- uint64_t x27 = ((((uint64_t)x5 * x19) + (((uint64_t)x7 * x17) + ((uint64_t)x9 * x15))) + (0x5 * (((uint64_t)x11 * x22) + (((uint64_t)x13 * x23) + ((uint64_t)x12 * x21)))));
- uint64_t x28 = ((((uint64_t)x5 * x17) + ((uint64_t)x7 * x15)) + (0x5 * ((0x2 * ((uint64_t)x9 * x22)) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + (0x2 * ((uint64_t)x12 * x19)))))));
- uint64_t x29 = (((uint64_t)x5 * x15) + (0x5 * ((0x2 * ((uint64_t)x7 * x22)) + ((0x2 * ((uint64_t)x9 * x23)) + (((uint64_t)x11 * x21) + ((0x2 * ((uint64_t)x13 * x19)) + (0x2 * ((uint64_t)x12 * x17))))))));
- uint32_t x30 = (uint32_t) (x29 >> 0x16);
- uint32_t x31 = ((uint32_t)x29 & 0x3fffff);
- uint64_t x32 = (x30 + x28);
- uint32_t x33 = (uint32_t) (x32 >> 0x16);
- uint32_t x34 = ((uint32_t)x32 & 0x3fffff);
- uint64_t x35 = (x33 + x27);
- uint32_t x36 = (uint32_t) (x35 >> 0x15);
- uint32_t x37 = ((uint32_t)x35 & 0x1fffff);
- uint64_t x38 = (x36 + x26);
- uint32_t x39 = (uint32_t) (x38 >> 0x16);
- uint32_t x40 = ((uint32_t)x38 & 0x3fffff);
- uint64_t x41 = (x39 + x25);
- uint32_t x42 = (uint32_t) (x41 >> 0x16);
- uint32_t x43 = ((uint32_t)x41 & 0x3fffff);
- uint64_t x44 = (x42 + x24);
- uint32_t x45 = (uint32_t) (x44 >> 0x15);
- uint32_t x46 = ((uint32_t)x44 & 0x1fffff);
- uint32_t x47 = (x31 + (0x5 * x45));
- uint32_t x48 = (x47 >> 0x16);
- uint32_t x49 = (x47 & 0x3fffff);
- uint32_t x50 = (x48 + x34);
- uint32_t x51 = (x50 >> 0x16);
- uint32_t x52 = (x50 & 0x3fffff);
- 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_2e130m5_6limbs/femulDisplay.v b/src/Specific/solinas32_2e130m5_6limbs/femulDisplay.v
deleted file mode 100644
index 635966b05..000000000
--- a/src/Specific/solinas32_2e130m5_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e130m5_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e130m5_6limbs/fesquare.c b/src/Specific/solinas32_2e130m5_6limbs/fesquare.c
deleted file mode 100644
index 6a6590edf..000000000
--- a/src/Specific/solinas32_2e130m5_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) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x9 * x2))))));
- { uint64_t x12 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x5 * (0x2 * ((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)))) + (0x5 * ((0x2 * ((uint64_t)x10 * x9)) + (0x2 * ((uint64_t)x9 * x10)))));
- { uint64_t x14 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x5 * (((uint64_t)x8 * x9) + (((uint64_t)x10 * x10) + ((uint64_t)x9 * x8)))));
- { uint64_t x15 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x5 * ((0x2 * ((uint64_t)x6 * x9)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (0x2 * ((uint64_t)x9 * x6)))))));
- { uint64_t x16 = (((uint64_t)x2 * x2) + (0x5 * ((0x2 * ((uint64_t)x4 * x9)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (0x2 * ((uint64_t)x9 * x4))))))));
- { uint32_t x17 = (uint32_t) (x16 >> 0x16);
- { uint32_t x18 = ((uint32_t)x16 & 0x3fffff);
- { uint64_t x19 = (x17 + x15);
- { uint32_t x20 = (uint32_t) (x19 >> 0x16);
- { uint32_t x21 = ((uint32_t)x19 & 0x3fffff);
- { uint64_t x22 = (x20 + x14);
- { uint32_t x23 = (uint32_t) (x22 >> 0x15);
- { uint32_t x24 = ((uint32_t)x22 & 0x1fffff);
- { uint64_t x25 = (x23 + x13);
- { uint32_t x26 = (uint32_t) (x25 >> 0x16);
- { uint32_t x27 = ((uint32_t)x25 & 0x3fffff);
- { uint64_t x28 = (x26 + x12);
- { uint32_t x29 = (uint32_t) (x28 >> 0x16);
- { uint32_t x30 = ((uint32_t)x28 & 0x3fffff);
- { uint64_t x31 = (x29 + x11);
- { uint32_t x32 = (uint32_t) (x31 >> 0x15);
- { uint32_t x33 = ((uint32_t)x31 & 0x1fffff);
- { uint32_t x34 = (x18 + (0x5 * x32));
- { uint32_t x35 = (x34 >> 0x16);
- { uint32_t x36 = (x34 & 0x3fffff);
- { uint32_t x37 = (x35 + x21);
- { uint32_t x38 = (x37 >> 0x16);
- { uint32_t x39 = (x37 & 0x3fffff);
- 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_2e130m5_6limbs/fesquare.v b/src/Specific/solinas32_2e130m5_6limbs/fesquare.v
deleted file mode 100644
index dfcf52e9a..000000000
--- a/src/Specific/solinas32_2e130m5_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e130m5_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_2e130m5_6limbs/fesquareDisplay.log b/src/Specific/solinas32_2e130m5_6limbs/fesquareDisplay.log
deleted file mode 100644
index ebbd6a951..000000000
--- a/src/Specific/solinas32_2e130m5_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) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x9 * x2))))));
- uint64_t x12 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x5 * (0x2 * ((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)))) + (0x5 * ((0x2 * ((uint64_t)x10 * x9)) + (0x2 * ((uint64_t)x9 * x10)))));
- uint64_t x14 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x5 * (((uint64_t)x8 * x9) + (((uint64_t)x10 * x10) + ((uint64_t)x9 * x8)))));
- uint64_t x15 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x5 * ((0x2 * ((uint64_t)x6 * x9)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (0x2 * ((uint64_t)x9 * x6)))))));
- uint64_t x16 = (((uint64_t)x2 * x2) + (0x5 * ((0x2 * ((uint64_t)x4 * x9)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (0x2 * ((uint64_t)x9 * x4))))))));
- uint32_t x17 = (uint32_t) (x16 >> 0x16);
- uint32_t x18 = ((uint32_t)x16 & 0x3fffff);
- uint64_t x19 = (x17 + x15);
- uint32_t x20 = (uint32_t) (x19 >> 0x16);
- uint32_t x21 = ((uint32_t)x19 & 0x3fffff);
- uint64_t x22 = (x20 + x14);
- uint32_t x23 = (uint32_t) (x22 >> 0x15);
- uint32_t x24 = ((uint32_t)x22 & 0x1fffff);
- uint64_t x25 = (x23 + x13);
- uint32_t x26 = (uint32_t) (x25 >> 0x16);
- uint32_t x27 = ((uint32_t)x25 & 0x3fffff);
- uint64_t x28 = (x26 + x12);
- uint32_t x29 = (uint32_t) (x28 >> 0x16);
- uint32_t x30 = ((uint32_t)x28 & 0x3fffff);
- uint64_t x31 = (x29 + x11);
- uint32_t x32 = (uint32_t) (x31 >> 0x15);
- uint32_t x33 = ((uint32_t)x31 & 0x1fffff);
- uint32_t x34 = (x18 + (0x5 * x32));
- uint32_t x35 = (x34 >> 0x16);
- uint32_t x36 = (x34 & 0x3fffff);
- uint32_t x37 = (x35 + x21);
- uint32_t x38 = (x37 >> 0x16);
- uint32_t x39 = (x37 & 0x3fffff);
- 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_2e130m5_6limbs/fesquareDisplay.v b/src/Specific/solinas32_2e130m5_6limbs/fesquareDisplay.v
deleted file mode 100644
index 40bde8792..000000000
--- a/src/Specific/solinas32_2e130m5_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e130m5_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e130m5_6limbs/fesub.c b/src/Specific/solinas32_2e130m5_6limbs/fesub.c
deleted file mode 100644
index 71e866452..000000000
--- a/src/Specific/solinas32_2e130m5_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] = ((0x7ffff6 + x5) - x15);
- out[1] = ((0x7ffffe + x7) - x17);
- out[2] = ((0x3ffffe + x9) - x19);
- out[3] = ((0x7ffffe + x11) - x21);
- out[4] = ((0x7ffffe + x13) - x23);
- out[5] = ((0x3ffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e130m5_6limbs/fesub.v b/src/Specific/solinas32_2e130m5_6limbs/fesub.v
deleted file mode 100644
index 6acb43ae0..000000000
--- a/src/Specific/solinas32_2e130m5_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e130m5_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_2e130m5_6limbs/fesubDisplay.log b/src/Specific/solinas32_2e130m5_6limbs/fesubDisplay.log
deleted file mode 100644
index e9bac8469..000000000
--- a/src/Specific/solinas32_2e130m5_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,
- (((0x3ffffe + x12) - x22), ((0x7ffffe + x13) - x23), ((0x7ffffe + x11) - x21), ((0x3ffffe + x9) - x19), ((0x7ffffe + x7) - x17), ((0x7ffff6 + 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_2e130m5_6limbs/fesubDisplay.v b/src/Specific/solinas32_2e130m5_6limbs/fesubDisplay.v
deleted file mode 100644
index bf9e327ee..000000000
--- a/src/Specific/solinas32_2e130m5_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e130m5_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e130m5_6limbs/freeze.c b/src/Specific/solinas32_2e130m5_6limbs/freeze.c
deleted file mode 100644
index d97282ebe..000000000
--- a/src/Specific/solinas32_2e130m5_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 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffb);
- { uint32_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x13, Return x4, 0x3fffff);
- { uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x16, Return x6, 0x1fffff);
- { uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x8, 0x3fffff);
- { uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x10, 0x3fffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x9, 0x1fffff);
- { uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- { uint32_t x30 = (x29 & 0x3ffffb);
- { uint32_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint32_t x34 = (x29 & 0x3fffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 22 (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 & 0x1fffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 21 (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 & 0x3fffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 22 (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 & 0x3fffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 22 (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 & 0x1fffff);
- { uint32_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (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_2e130m5_6limbs/freeze.v b/src/Specific/solinas32_2e130m5_6limbs/freeze.v
deleted file mode 100644
index 30d079fbb..000000000
--- a/src/Specific/solinas32_2e130m5_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e130m5_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_2e130m5_6limbs/freezeDisplay.log b/src/Specific/solinas32_2e130m5_6limbs/freezeDisplay.log
deleted file mode 100644
index 77f6fc447..000000000
--- a/src/Specific/solinas32_2e130m5_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 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffb);
- uint32_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x13, Return x4, 0x3fffff);
- uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x16, Return x6, 0x1fffff);
- uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x8, 0x3fffff);
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x10, 0x3fffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x9, 0x1fffff);
- uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- uint32_t x30 = (x29 & 0x3ffffb);
- uint32_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint32_t x34 = (x29 & 0x3fffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 22 (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 & 0x1fffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 21 (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 & 0x3fffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 22 (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 & 0x3fffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 22 (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 & 0x1fffff);
- uint32_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (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_2e130m5_6limbs/freezeDisplay.v b/src/Specific/solinas32_2e130m5_6limbs/freezeDisplay.v
deleted file mode 100644
index 5715324df..000000000
--- a/src/Specific/solinas32_2e130m5_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e130m5_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e130m5_6limbs/py_interpreter.sh b/src/Specific/solinas32_2e130m5_6limbs/py_interpreter.sh
deleted file mode 100755
index 7bb3a01fc..000000000
--- a/src/Specific/solinas32_2e130m5_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**130 - 5' -Dmodulus_bytes='21 + 2/3' -Da24='121665'
diff --git a/src/Specific/solinas32_2e137m13_5limbs/CurveParameters.v b/src/Specific/solinas32_2e137m13_5limbs/CurveParameters.v
deleted file mode 100644
index 5ef636ee6..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^137 - 13
-Base: 27.4
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 27 + 2/5;
- bitwidth := 32;
- s := 2^137;
- c := [(1, 13)];
- carry_chains := Some [seq 0 (pred 5); [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_2e137m13_5limbs/Synthesis.v b/src/Specific/solinas32_2e137m13_5limbs/Synthesis.v
deleted file mode 100644
index 1ae2b5e8a..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e137m13_5limbs.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_2e137m13_5limbs/compiler.sh b/src/Specific/solinas32_2e137m13_5limbs/compiler.sh
deleted file mode 100755
index 9f1bd6726..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{28,27,28,27,27}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<137) - 13' "$@"
diff --git a/src/Specific/solinas32_2e137m13_5limbs/compilerxx.sh b/src/Specific/solinas32_2e137m13_5limbs/compilerxx.sh
deleted file mode 100755
index 75342acec..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{28,27,28,27,27}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<137) - 13' "$@"
diff --git a/src/Specific/solinas32_2e137m13_5limbs/feadd.c b/src/Specific/solinas32_2e137m13_5limbs/feadd.c
deleted file mode 100644
index 4db430361..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e137m13_5limbs/feadd.v b/src/Specific/solinas32_2e137m13_5limbs/feadd.v
deleted file mode 100644
index a96a3c0b2..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e137m13_5limbs.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_2e137m13_5limbs/feaddDisplay.log b/src/Specific/solinas32_2e137m13_5limbs/feaddDisplay.log
deleted file mode 100644
index eaf25ecd1..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e137m13_5limbs/feaddDisplay.v b/src/Specific/solinas32_2e137m13_5limbs/feaddDisplay.v
deleted file mode 100644
index 6db5b05c1..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e137m13_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e137m13_5limbs/fecarry.v b/src/Specific/solinas32_2e137m13_5limbs/fecarry.v
deleted file mode 100644
index ed350e4cb..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e137m13_5limbs.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_2e137m13_5limbs/fecarryDisplay.v b/src/Specific/solinas32_2e137m13_5limbs/fecarryDisplay.v
deleted file mode 100644
index 9eb371398..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e137m13_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e137m13_5limbs/femul.c b/src/Specific/solinas32_2e137m13_5limbs/femul.c
deleted file mode 100644
index 580db6bef..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- { uint64_t x20 = (((uint64_t)x5 * x18) + ((0x2 * ((uint64_t)x7 * x19)) + (((uint64_t)x9 * x17) + ((0x2 * ((uint64_t)x11 * x15)) + ((uint64_t)x10 * x13)))));
- { uint64_t x21 = ((((uint64_t)x5 * x19) + (((uint64_t)x7 * x17) + (((uint64_t)x9 * x15) + ((uint64_t)x11 * x13)))) + (0xd * ((uint64_t)x10 * x18)));
- { uint64_t x22 = ((((uint64_t)x5 * x17) + ((0x2 * ((uint64_t)x7 * x15)) + ((uint64_t)x9 * x13))) + (0xd * ((0x2 * ((uint64_t)x11 * x18)) + (0x2 * ((uint64_t)x10 * x19)))));
- { uint64_t x23 = ((((uint64_t)x5 * x15) + ((uint64_t)x7 * x13)) + (0xd * (((uint64_t)x9 * x18) + ((0x2 * ((uint64_t)x11 * x19)) + ((uint64_t)x10 * x17)))));
- { ℤ x24 = (((uint64_t)x5 * x13) +ℤ (0xd *ℤ ((0x2 * ((uint64_t)x7 * x18)) + ((0x2 * ((uint64_t)x9 * x19)) + ((0x2 * ((uint64_t)x11 * x17)) + (0x2 * ((uint64_t)x10 * x15)))))));
- { uint64_t x25 = (x24 >> 0x1c);
- { uint32_t x26 = (x24 & 0xfffffff);
- { uint64_t x27 = (x25 + x23);
- { uint64_t x28 = (x27 >> 0x1b);
- { uint32_t x29 = ((uint32_t)x27 & 0x7ffffff);
- { uint64_t x30 = (x28 + x22);
- { uint64_t x31 = (x30 >> 0x1c);
- { uint32_t x32 = ((uint32_t)x30 & 0xfffffff);
- { uint64_t x33 = (x31 + x21);
- { uint64_t x34 = (x33 >> 0x1b);
- { uint32_t x35 = ((uint32_t)x33 & 0x7ffffff);
- { uint64_t x36 = (x34 + x20);
- { uint64_t x37 = (x36 >> 0x1b);
- { uint32_t x38 = ((uint32_t)x36 & 0x7ffffff);
- { uint64_t x39 = (x26 + (0xd * x37));
- { uint32_t x40 = (uint32_t) (x39 >> 0x1c);
- { uint32_t x41 = ((uint32_t)x39 & 0xfffffff);
- { uint32_t x42 = (x40 + x29);
- { uint32_t x43 = (x42 >> 0x1b);
- { uint32_t x44 = (x42 & 0x7ffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e137m13_5limbs/femul.v b/src/Specific/solinas32_2e137m13_5limbs/femul.v
deleted file mode 100644
index cdb99846f..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e137m13_5limbs.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_2e137m13_5limbs/femulDisplay.log b/src/Specific/solinas32_2e137m13_5limbs/femulDisplay.log
deleted file mode 100644
index de2778a1d..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint64_t x20 = (((uint64_t)x5 * x18) + ((0x2 * ((uint64_t)x7 * x19)) + (((uint64_t)x9 * x17) + ((0x2 * ((uint64_t)x11 * x15)) + ((uint64_t)x10 * x13)))));
- uint64_t x21 = ((((uint64_t)x5 * x19) + (((uint64_t)x7 * x17) + (((uint64_t)x9 * x15) + ((uint64_t)x11 * x13)))) + (0xd * ((uint64_t)x10 * x18)));
- uint64_t x22 = ((((uint64_t)x5 * x17) + ((0x2 * ((uint64_t)x7 * x15)) + ((uint64_t)x9 * x13))) + (0xd * ((0x2 * ((uint64_t)x11 * x18)) + (0x2 * ((uint64_t)x10 * x19)))));
- uint64_t x23 = ((((uint64_t)x5 * x15) + ((uint64_t)x7 * x13)) + (0xd * (((uint64_t)x9 * x18) + ((0x2 * ((uint64_t)x11 * x19)) + ((uint64_t)x10 * x17)))));
- ℤ x24 = (((uint64_t)x5 * x13) +ℤ (0xd *ℤ ((0x2 * ((uint64_t)x7 * x18)) + ((0x2 * ((uint64_t)x9 * x19)) + ((0x2 * ((uint64_t)x11 * x17)) + (0x2 * ((uint64_t)x10 * x15)))))));
- uint64_t x25 = (x24 >> 0x1c);
- uint32_t x26 = (x24 & 0xfffffff);
- uint64_t x27 = (x25 + x23);
- uint64_t x28 = (x27 >> 0x1b);
- uint32_t x29 = ((uint32_t)x27 & 0x7ffffff);
- uint64_t x30 = (x28 + x22);
- uint64_t x31 = (x30 >> 0x1c);
- uint32_t x32 = ((uint32_t)x30 & 0xfffffff);
- uint64_t x33 = (x31 + x21);
- uint64_t x34 = (x33 >> 0x1b);
- uint32_t x35 = ((uint32_t)x33 & 0x7ffffff);
- uint64_t x36 = (x34 + x20);
- uint64_t x37 = (x36 >> 0x1b);
- uint32_t x38 = ((uint32_t)x36 & 0x7ffffff);
- uint64_t x39 = (x26 + (0xd * x37));
- uint32_t x40 = (uint32_t) (x39 >> 0x1c);
- uint32_t x41 = ((uint32_t)x39 & 0xfffffff);
- uint32_t x42 = (x40 + x29);
- uint32_t x43 = (x42 >> 0x1b);
- uint32_t x44 = (x42 & 0x7ffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e137m13_5limbs/femulDisplay.v b/src/Specific/solinas32_2e137m13_5limbs/femulDisplay.v
deleted file mode 100644
index 41cc6427e..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e137m13_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e137m13_5limbs/fesquare.c b/src/Specific/solinas32_2e137m13_5limbs/fesquare.c
deleted file mode 100644
index ba5546056..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint32_t out[5], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x9 = (((uint64_t)x2 * x7) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x7 * x2)))));
- { uint64_t x10 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0xd * ((uint64_t)x7 * x7)));
- { uint64_t x11 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0xd * ((0x2 * ((uint64_t)x8 * x7)) + (0x2 * ((uint64_t)x7 * x8)))));
- { uint64_t x12 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xd * (((uint64_t)x6 * x7) + ((0x2 * ((uint64_t)x8 * x8)) + ((uint64_t)x7 * x6)))));
- { ℤ x13 = (((uint64_t)x2 * x2) +ℤ (0xd *ℤ ((0x2 * ((uint64_t)x4 * x7)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (0x2 * ((uint64_t)x7 * x4)))))));
- { uint64_t x14 = (x13 >> 0x1c);
- { uint32_t x15 = (x13 & 0xfffffff);
- { uint64_t x16 = (x14 + x12);
- { uint64_t x17 = (x16 >> 0x1b);
- { uint32_t x18 = ((uint32_t)x16 & 0x7ffffff);
- { uint64_t x19 = (x17 + x11);
- { uint64_t x20 = (x19 >> 0x1c);
- { uint32_t x21 = ((uint32_t)x19 & 0xfffffff);
- { uint64_t x22 = (x20 + x10);
- { uint64_t x23 = (x22 >> 0x1b);
- { uint32_t x24 = ((uint32_t)x22 & 0x7ffffff);
- { uint64_t x25 = (x23 + x9);
- { uint64_t x26 = (x25 >> 0x1b);
- { uint32_t x27 = ((uint32_t)x25 & 0x7ffffff);
- { uint64_t x28 = (x15 + (0xd * x26));
- { uint32_t x29 = (uint32_t) (x28 >> 0x1c);
- { uint32_t x30 = ((uint32_t)x28 & 0xfffffff);
- { uint32_t x31 = (x29 + x18);
- { uint32_t x32 = (x31 >> 0x1b);
- { uint32_t x33 = (x31 & 0x7ffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e137m13_5limbs/fesquare.v b/src/Specific/solinas32_2e137m13_5limbs/fesquare.v
deleted file mode 100644
index 638ea50ca..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e137m13_5limbs.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_2e137m13_5limbs/fesquareDisplay.log b/src/Specific/solinas32_2e137m13_5limbs/fesquareDisplay.log
deleted file mode 100644
index d179e2f30..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x9 = (((uint64_t)x2 * x7) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x7 * x2)))));
- uint64_t x10 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0xd * ((uint64_t)x7 * x7)));
- uint64_t x11 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0xd * ((0x2 * ((uint64_t)x8 * x7)) + (0x2 * ((uint64_t)x7 * x8)))));
- uint64_t x12 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xd * (((uint64_t)x6 * x7) + ((0x2 * ((uint64_t)x8 * x8)) + ((uint64_t)x7 * x6)))));
- ℤ x13 = (((uint64_t)x2 * x2) +ℤ (0xd *ℤ ((0x2 * ((uint64_t)x4 * x7)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (0x2 * ((uint64_t)x7 * x4)))))));
- uint64_t x14 = (x13 >> 0x1c);
- uint32_t x15 = (x13 & 0xfffffff);
- uint64_t x16 = (x14 + x12);
- uint64_t x17 = (x16 >> 0x1b);
- uint32_t x18 = ((uint32_t)x16 & 0x7ffffff);
- uint64_t x19 = (x17 + x11);
- uint64_t x20 = (x19 >> 0x1c);
- uint32_t x21 = ((uint32_t)x19 & 0xfffffff);
- uint64_t x22 = (x20 + x10);
- uint64_t x23 = (x22 >> 0x1b);
- uint32_t x24 = ((uint32_t)x22 & 0x7ffffff);
- uint64_t x25 = (x23 + x9);
- uint64_t x26 = (x25 >> 0x1b);
- uint32_t x27 = ((uint32_t)x25 & 0x7ffffff);
- uint64_t x28 = (x15 + (0xd * x26));
- uint32_t x29 = (uint32_t) (x28 >> 0x1c);
- uint32_t x30 = ((uint32_t)x28 & 0xfffffff);
- uint32_t x31 = (x29 + x18);
- uint32_t x32 = (x31 >> 0x1b);
- uint32_t x33 = (x31 & 0x7ffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e137m13_5limbs/fesquareDisplay.v b/src/Specific/solinas32_2e137m13_5limbs/fesquareDisplay.v
deleted file mode 100644
index 60e0af4a5..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e137m13_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e137m13_5limbs/fesub.c b/src/Specific/solinas32_2e137m13_5limbs/fesub.c
deleted file mode 100644
index f4bc53a29..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint32_t out[5], const uint32_t in1[5], const uint32_t in2[5]) {
- { const uint32_t x10 = 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 x18 = in2[4];
- { const uint32_t x19 = in2[3];
- { const uint32_t x17 = in2[2];
- { const uint32_t x15 = in2[1];
- { const uint32_t x13 = in2[0];
- out[0] = ((0x1fffffe6 + x5) - x13);
- out[1] = ((0xffffffe + x7) - x15);
- out[2] = ((0x1ffffffe + x9) - x17);
- out[3] = ((0xffffffe + x11) - x19);
- out[4] = ((0xffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e137m13_5limbs/fesub.v b/src/Specific/solinas32_2e137m13_5limbs/fesub.v
deleted file mode 100644
index f805167fb..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e137m13_5limbs.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_2e137m13_5limbs/fesubDisplay.log b/src/Specific/solinas32_2e137m13_5limbs/fesubDisplay.log
deleted file mode 100644
index cd269dba7..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0xffffffe + x10) - x18), ((0xffffffe + x11) - x19), ((0x1ffffffe + x9) - x17), ((0xffffffe + x7) - x15), ((0x1fffffe6 + x5) - x13)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e137m13_5limbs/fesubDisplay.v b/src/Specific/solinas32_2e137m13_5limbs/fesubDisplay.v
deleted file mode 100644
index d84d2913e..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e137m13_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e137m13_5limbs/freeze.c b/src/Specific/solinas32_2e137m13_5limbs/freeze.c
deleted file mode 100644
index 5d8668155..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint32_t out[5], const uint32_t in1[5]) {
- { const uint32_t x7 = 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 x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffff3);
- { uint32_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x11, Return x4, 0x7ffffff);
- { uint32_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x14, Return x6, 0xfffffff);
- { uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x8, 0x7ffffff);
- { uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x7, 0x7ffffff);
- { uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- { uint32_t x25 = (x24 & 0xffffff3);
- { uint32_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint32_t x29 = (x24 & 0x7ffffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint32_t x33 = (x24 & 0xfffffff);
- { uint32_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint32_t x37 = (x24 & 0x7ffffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint32_t x41 = (x24 & 0x7ffffff);
- { uint32_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e137m13_5limbs/freeze.v b/src/Specific/solinas32_2e137m13_5limbs/freeze.v
deleted file mode 100644
index 882f51e21..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e137m13_5limbs.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_2e137m13_5limbs/freezeDisplay.log b/src/Specific/solinas32_2e137m13_5limbs/freezeDisplay.log
deleted file mode 100644
index 8cec37338..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint32_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffff3);
- uint32_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x11, Return x4, 0x7ffffff);
- uint32_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x14, Return x6, 0xfffffff);
- uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x8, 0x7ffffff);
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x7, 0x7ffffff);
- uint32_t x24 = cmovznz32(x23, 0x0, 0xffffffff);
- uint32_t x25 = (x24 & 0xffffff3);
- uint32_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint32_t x29 = (x24 & 0x7ffffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint32_t x33 = (x24 & 0xfffffff);
- uint32_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint32_t x37 = (x24 & 0x7ffffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint32_t x41 = (x24 & 0x7ffffff);
- uint32_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e137m13_5limbs/freezeDisplay.v b/src/Specific/solinas32_2e137m13_5limbs/freezeDisplay.v
deleted file mode 100644
index 081063ba1..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e137m13_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e137m13_5limbs/py_interpreter.sh b/src/Specific/solinas32_2e137m13_5limbs/py_interpreter.sh
deleted file mode 100755
index 7761fe281..000000000
--- a/src/Specific/solinas32_2e137m13_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**137 - 13' -Dmodulus_bytes='27.4' -Da24='121665'
diff --git a/src/Specific/solinas32_2e137m13_6limbs/CurveParameters.v b/src/Specific/solinas32_2e137m13_6limbs/CurveParameters.v
deleted file mode 100644
index 759473989..000000000
--- a/src/Specific/solinas32_2e137m13_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^137 - 13
-Base: 22 + 5/6
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 22 + 5/6;
- bitwidth := 32;
- s := 2^137;
- c := [(1, 13)];
- 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_2e137m13_6limbs/Synthesis.v b/src/Specific/solinas32_2e137m13_6limbs/Synthesis.v
deleted file mode 100644
index fd28064d8..000000000
--- a/src/Specific/solinas32_2e137m13_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e137m13_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_2e137m13_6limbs/compiler.sh b/src/Specific/solinas32_2e137m13_6limbs/compiler.sh
deleted file mode 100755
index 7f7d566db..000000000
--- a/src/Specific/solinas32_2e137m13_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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,23,23,23,23,22}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<137) - 13' "$@"
diff --git a/src/Specific/solinas32_2e137m13_6limbs/compilerxx.sh b/src/Specific/solinas32_2e137m13_6limbs/compilerxx.sh
deleted file mode 100755
index b02e7c329..000000000
--- a/src/Specific/solinas32_2e137m13_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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,23,23,23,23,22}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<137) - 13' "$@"
diff --git a/src/Specific/solinas32_2e137m13_6limbs/feadd.c b/src/Specific/solinas32_2e137m13_6limbs/feadd.c
deleted file mode 100644
index 5b654b294..000000000
--- a/src/Specific/solinas32_2e137m13_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_2e137m13_6limbs/feadd.v b/src/Specific/solinas32_2e137m13_6limbs/feadd.v
deleted file mode 100644
index b91a478ea..000000000
--- a/src/Specific/solinas32_2e137m13_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e137m13_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_2e137m13_6limbs/feaddDisplay.log b/src/Specific/solinas32_2e137m13_6limbs/feaddDisplay.log
deleted file mode 100644
index 1084b2659..000000000
--- a/src/Specific/solinas32_2e137m13_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_2e137m13_6limbs/feaddDisplay.v b/src/Specific/solinas32_2e137m13_6limbs/feaddDisplay.v
deleted file mode 100644
index 59430a2d6..000000000
--- a/src/Specific/solinas32_2e137m13_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e137m13_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e137m13_6limbs/fecarry.v b/src/Specific/solinas32_2e137m13_6limbs/fecarry.v
deleted file mode 100644
index 44c6457d1..000000000
--- a/src/Specific/solinas32_2e137m13_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e137m13_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_2e137m13_6limbs/fecarryDisplay.v b/src/Specific/solinas32_2e137m13_6limbs/fecarryDisplay.v
deleted file mode 100644
index 3c4786335..000000000
--- a/src/Specific/solinas32_2e137m13_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e137m13_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e137m13_6limbs/femul.c b/src/Specific/solinas32_2e137m13_6limbs/femul.c
deleted file mode 100644
index 9b942f763..000000000
--- a/src/Specific/solinas32_2e137m13_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) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + (((uint64_t)x11 * x19) + (((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))))) + (0xd * (0x2 * ((uint64_t)x12 * x22))));
- { uint64_t x26 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + (((uint64_t)x9 * x17) + ((uint64_t)x11 * x15)))) + (0xd * ((0x2 * ((uint64_t)x13 * x22)) + (0x2 * ((uint64_t)x12 * x23)))));
- { uint64_t x27 = ((((uint64_t)x5 * x19) + (((uint64_t)x7 * x17) + ((uint64_t)x9 * x15))) + (0xd * ((0x2 * ((uint64_t)x11 * x22)) + ((0x2 * ((uint64_t)x13 * x23)) + (0x2 * ((uint64_t)x12 * x21))))));
- { uint64_t x28 = ((((uint64_t)x5 * x17) + ((uint64_t)x7 * x15)) + (0xd * ((0x2 * ((uint64_t)x9 * x22)) + ((0x2 * ((uint64_t)x11 * x23)) + ((0x2 * ((uint64_t)x13 * x21)) + (0x2 * ((uint64_t)x12 * x19)))))));
- { uint64_t x29 = (((uint64_t)x5 * x15) + (0xd * ((0x2 * ((uint64_t)x7 * x22)) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + ((0x2 * ((uint64_t)x13 * x19)) + (0x2 * ((uint64_t)x12 * x17))))))));
- { uint64_t x30 = (x29 >> 0x17);
- { uint32_t x31 = ((uint32_t)x29 & 0x7fffff);
- { uint64_t x32 = (x30 + x28);
- { uint64_t x33 = (x32 >> 0x17);
- { uint32_t x34 = ((uint32_t)x32 & 0x7fffff);
- { uint64_t x35 = (x33 + x27);
- { uint64_t x36 = (x35 >> 0x17);
- { uint32_t x37 = ((uint32_t)x35 & 0x7fffff);
- { uint64_t x38 = (x36 + x26);
- { uint32_t x39 = (uint32_t) (x38 >> 0x17);
- { uint32_t x40 = ((uint32_t)x38 & 0x7fffff);
- { uint64_t x41 = (x39 + x25);
- { uint32_t x42 = (uint32_t) (x41 >> 0x17);
- { uint32_t x43 = ((uint32_t)x41 & 0x7fffff);
- { uint64_t x44 = (x42 + x24);
- { uint32_t x45 = (uint32_t) (x44 >> 0x16);
- { uint32_t x46 = ((uint32_t)x44 & 0x3fffff);
- { uint64_t x47 = (x31 + ((uint64_t)0xd * x45));
- { uint32_t x48 = (uint32_t) (x47 >> 0x17);
- { uint32_t x49 = ((uint32_t)x47 & 0x7fffff);
- { uint32_t x50 = (x48 + x34);
- { uint32_t x51 = (x50 >> 0x17);
- { uint32_t x52 = (x50 & 0x7fffff);
- 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_2e137m13_6limbs/femul.v b/src/Specific/solinas32_2e137m13_6limbs/femul.v
deleted file mode 100644
index 30568dd61..000000000
--- a/src/Specific/solinas32_2e137m13_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e137m13_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_2e137m13_6limbs/femulDisplay.log b/src/Specific/solinas32_2e137m13_6limbs/femulDisplay.log
deleted file mode 100644
index 614a91016..000000000
--- a/src/Specific/solinas32_2e137m13_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) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + (((uint64_t)x11 * x19) + (((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))))) + (0xd * (0x2 * ((uint64_t)x12 * x22))));
- uint64_t x26 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + (((uint64_t)x9 * x17) + ((uint64_t)x11 * x15)))) + (0xd * ((0x2 * ((uint64_t)x13 * x22)) + (0x2 * ((uint64_t)x12 * x23)))));
- uint64_t x27 = ((((uint64_t)x5 * x19) + (((uint64_t)x7 * x17) + ((uint64_t)x9 * x15))) + (0xd * ((0x2 * ((uint64_t)x11 * x22)) + ((0x2 * ((uint64_t)x13 * x23)) + (0x2 * ((uint64_t)x12 * x21))))));
- uint64_t x28 = ((((uint64_t)x5 * x17) + ((uint64_t)x7 * x15)) + (0xd * ((0x2 * ((uint64_t)x9 * x22)) + ((0x2 * ((uint64_t)x11 * x23)) + ((0x2 * ((uint64_t)x13 * x21)) + (0x2 * ((uint64_t)x12 * x19)))))));
- uint64_t x29 = (((uint64_t)x5 * x15) + (0xd * ((0x2 * ((uint64_t)x7 * x22)) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + ((0x2 * ((uint64_t)x13 * x19)) + (0x2 * ((uint64_t)x12 * x17))))))));
- uint64_t x30 = (x29 >> 0x17);
- uint32_t x31 = ((uint32_t)x29 & 0x7fffff);
- uint64_t x32 = (x30 + x28);
- uint64_t x33 = (x32 >> 0x17);
- uint32_t x34 = ((uint32_t)x32 & 0x7fffff);
- uint64_t x35 = (x33 + x27);
- uint64_t x36 = (x35 >> 0x17);
- uint32_t x37 = ((uint32_t)x35 & 0x7fffff);
- uint64_t x38 = (x36 + x26);
- uint32_t x39 = (uint32_t) (x38 >> 0x17);
- uint32_t x40 = ((uint32_t)x38 & 0x7fffff);
- uint64_t x41 = (x39 + x25);
- uint32_t x42 = (uint32_t) (x41 >> 0x17);
- uint32_t x43 = ((uint32_t)x41 & 0x7fffff);
- uint64_t x44 = (x42 + x24);
- uint32_t x45 = (uint32_t) (x44 >> 0x16);
- uint32_t x46 = ((uint32_t)x44 & 0x3fffff);
- uint64_t x47 = (x31 + ((uint64_t)0xd * x45));
- uint32_t x48 = (uint32_t) (x47 >> 0x17);
- uint32_t x49 = ((uint32_t)x47 & 0x7fffff);
- uint32_t x50 = (x48 + x34);
- uint32_t x51 = (x50 >> 0x17);
- uint32_t x52 = (x50 & 0x7fffff);
- 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_2e137m13_6limbs/femulDisplay.v b/src/Specific/solinas32_2e137m13_6limbs/femulDisplay.v
deleted file mode 100644
index d41c18535..000000000
--- a/src/Specific/solinas32_2e137m13_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e137m13_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e137m13_6limbs/fesquare.c b/src/Specific/solinas32_2e137m13_6limbs/fesquare.c
deleted file mode 100644
index aaf8ec016..000000000
--- a/src/Specific/solinas32_2e137m13_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) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((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))))) + (0xd * (0x2 * ((uint64_t)x9 * x9))));
- { uint64_t x13 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0xd * ((0x2 * ((uint64_t)x10 * x9)) + (0x2 * ((uint64_t)x9 * x10)))));
- { uint64_t x14 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0xd * ((0x2 * ((uint64_t)x8 * x9)) + ((0x2 * ((uint64_t)x10 * x10)) + (0x2 * ((uint64_t)x9 * x8))))));
- { uint64_t x15 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xd * ((0x2 * ((uint64_t)x6 * x9)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + (0x2 * ((uint64_t)x9 * x6)))))));
- { uint64_t x16 = (((uint64_t)x2 * x2) + (0xd * ((0x2 * ((uint64_t)x4 * x9)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + (0x2 * ((uint64_t)x9 * x4))))))));
- { uint64_t x17 = (x16 >> 0x17);
- { uint32_t x18 = ((uint32_t)x16 & 0x7fffff);
- { uint64_t x19 = (x17 + x15);
- { uint64_t x20 = (x19 >> 0x17);
- { uint32_t x21 = ((uint32_t)x19 & 0x7fffff);
- { uint64_t x22 = (x20 + x14);
- { uint64_t x23 = (x22 >> 0x17);
- { uint32_t x24 = ((uint32_t)x22 & 0x7fffff);
- { uint64_t x25 = (x23 + x13);
- { uint32_t x26 = (uint32_t) (x25 >> 0x17);
- { uint32_t x27 = ((uint32_t)x25 & 0x7fffff);
- { uint64_t x28 = (x26 + x12);
- { uint32_t x29 = (uint32_t) (x28 >> 0x17);
- { uint32_t x30 = ((uint32_t)x28 & 0x7fffff);
- { uint64_t x31 = (x29 + x11);
- { uint32_t x32 = (uint32_t) (x31 >> 0x16);
- { uint32_t x33 = ((uint32_t)x31 & 0x3fffff);
- { uint64_t x34 = (x18 + ((uint64_t)0xd * x32));
- { uint32_t x35 = (uint32_t) (x34 >> 0x17);
- { uint32_t x36 = ((uint32_t)x34 & 0x7fffff);
- { uint32_t x37 = (x35 + x21);
- { uint32_t x38 = (x37 >> 0x17);
- { uint32_t x39 = (x37 & 0x7fffff);
- 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_2e137m13_6limbs/fesquare.v b/src/Specific/solinas32_2e137m13_6limbs/fesquare.v
deleted file mode 100644
index 1ecf8a3f1..000000000
--- a/src/Specific/solinas32_2e137m13_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e137m13_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_2e137m13_6limbs/fesquareDisplay.log b/src/Specific/solinas32_2e137m13_6limbs/fesquareDisplay.log
deleted file mode 100644
index 5e1c36487..000000000
--- a/src/Specific/solinas32_2e137m13_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) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((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))))) + (0xd * (0x2 * ((uint64_t)x9 * x9))));
- uint64_t x13 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0xd * ((0x2 * ((uint64_t)x10 * x9)) + (0x2 * ((uint64_t)x9 * x10)))));
- uint64_t x14 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0xd * ((0x2 * ((uint64_t)x8 * x9)) + ((0x2 * ((uint64_t)x10 * x10)) + (0x2 * ((uint64_t)x9 * x8))))));
- uint64_t x15 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xd * ((0x2 * ((uint64_t)x6 * x9)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + (0x2 * ((uint64_t)x9 * x6)))))));
- uint64_t x16 = (((uint64_t)x2 * x2) + (0xd * ((0x2 * ((uint64_t)x4 * x9)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + (0x2 * ((uint64_t)x9 * x4))))))));
- uint64_t x17 = (x16 >> 0x17);
- uint32_t x18 = ((uint32_t)x16 & 0x7fffff);
- uint64_t x19 = (x17 + x15);
- uint64_t x20 = (x19 >> 0x17);
- uint32_t x21 = ((uint32_t)x19 & 0x7fffff);
- uint64_t x22 = (x20 + x14);
- uint64_t x23 = (x22 >> 0x17);
- uint32_t x24 = ((uint32_t)x22 & 0x7fffff);
- uint64_t x25 = (x23 + x13);
- uint32_t x26 = (uint32_t) (x25 >> 0x17);
- uint32_t x27 = ((uint32_t)x25 & 0x7fffff);
- uint64_t x28 = (x26 + x12);
- uint32_t x29 = (uint32_t) (x28 >> 0x17);
- uint32_t x30 = ((uint32_t)x28 & 0x7fffff);
- uint64_t x31 = (x29 + x11);
- uint32_t x32 = (uint32_t) (x31 >> 0x16);
- uint32_t x33 = ((uint32_t)x31 & 0x3fffff);
- uint64_t x34 = (x18 + ((uint64_t)0xd * x32));
- uint32_t x35 = (uint32_t) (x34 >> 0x17);
- uint32_t x36 = ((uint32_t)x34 & 0x7fffff);
- uint32_t x37 = (x35 + x21);
- uint32_t x38 = (x37 >> 0x17);
- uint32_t x39 = (x37 & 0x7fffff);
- 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_2e137m13_6limbs/fesquareDisplay.v b/src/Specific/solinas32_2e137m13_6limbs/fesquareDisplay.v
deleted file mode 100644
index 5339cbee3..000000000
--- a/src/Specific/solinas32_2e137m13_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e137m13_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e137m13_6limbs/fesub.c b/src/Specific/solinas32_2e137m13_6limbs/fesub.c
deleted file mode 100644
index cfa6edada..000000000
--- a/src/Specific/solinas32_2e137m13_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] = ((0xffffe6 + x5) - x15);
- out[1] = ((0xfffffe + x7) - x17);
- out[2] = ((0xfffffe + x9) - x19);
- out[3] = ((0xfffffe + x11) - x21);
- out[4] = ((0xfffffe + x13) - x23);
- out[5] = ((0x7ffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e137m13_6limbs/fesub.v b/src/Specific/solinas32_2e137m13_6limbs/fesub.v
deleted file mode 100644
index 39d9e1b90..000000000
--- a/src/Specific/solinas32_2e137m13_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e137m13_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_2e137m13_6limbs/fesubDisplay.log b/src/Specific/solinas32_2e137m13_6limbs/fesubDisplay.log
deleted file mode 100644
index 534e6af0a..000000000
--- a/src/Specific/solinas32_2e137m13_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,
- (((0x7ffffe + x12) - x22), ((0xfffffe + x13) - x23), ((0xfffffe + x11) - x21), ((0xfffffe + x9) - x19), ((0xfffffe + x7) - x17), ((0xffffe6 + 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_2e137m13_6limbs/fesubDisplay.v b/src/Specific/solinas32_2e137m13_6limbs/fesubDisplay.v
deleted file mode 100644
index 2a6944117..000000000
--- a/src/Specific/solinas32_2e137m13_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e137m13_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e137m13_6limbs/freeze.c b/src/Specific/solinas32_2e137m13_6limbs/freeze.c
deleted file mode 100644
index 37aea66be..000000000
--- a/src/Specific/solinas32_2e137m13_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 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffff3);
- { uint32_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x13, Return x4, 0x7fffff);
- { uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x16, Return x6, 0x7fffff);
- { uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x8, 0x7fffff);
- { uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x10, 0x7fffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x9, 0x3fffff);
- { uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- { uint32_t x30 = (x29 & 0x7ffff3);
- { uint32_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint32_t x34 = (x29 & 0x7fffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 23 (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 & 0x7fffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 23 (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 & 0x7fffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 23 (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 & 0x7fffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 23 (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 & 0x3fffff);
- { uint32_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (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_2e137m13_6limbs/freeze.v b/src/Specific/solinas32_2e137m13_6limbs/freeze.v
deleted file mode 100644
index 745aa2fb7..000000000
--- a/src/Specific/solinas32_2e137m13_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e137m13_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_2e137m13_6limbs/freezeDisplay.log b/src/Specific/solinas32_2e137m13_6limbs/freezeDisplay.log
deleted file mode 100644
index df913fbcb..000000000
--- a/src/Specific/solinas32_2e137m13_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 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffff3);
- uint32_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x13, Return x4, 0x7fffff);
- uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x16, Return x6, 0x7fffff);
- uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x8, 0x7fffff);
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x10, 0x7fffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x9, 0x3fffff);
- uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- uint32_t x30 = (x29 & 0x7ffff3);
- uint32_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint32_t x34 = (x29 & 0x7fffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 23 (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 & 0x7fffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 23 (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 & 0x7fffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 23 (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 & 0x7fffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 23 (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 & 0x3fffff);
- uint32_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (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_2e137m13_6limbs/freezeDisplay.v b/src/Specific/solinas32_2e137m13_6limbs/freezeDisplay.v
deleted file mode 100644
index 862bb7dc9..000000000
--- a/src/Specific/solinas32_2e137m13_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e137m13_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e137m13_6limbs/py_interpreter.sh b/src/Specific/solinas32_2e137m13_6limbs/py_interpreter.sh
deleted file mode 100755
index 4e1773a4a..000000000
--- a/src/Specific/solinas32_2e137m13_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**137 - 13' -Dmodulus_bytes='22 + 5/6' -Da24='121665'
diff --git a/src/Specific/solinas32_2e140m27_6limbs/CurveParameters.v b/src/Specific/solinas32_2e140m27_6limbs/CurveParameters.v
deleted file mode 100644
index 57672aa0b..000000000
--- a/src/Specific/solinas32_2e140m27_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^140 - 27
-Base: 23 + 1/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 23 + 1/3;
- bitwidth := 32;
- s := 2^140;
- c := [(1, 27)];
- 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_2e140m27_6limbs/Synthesis.v b/src/Specific/solinas32_2e140m27_6limbs/Synthesis.v
deleted file mode 100644
index 7af97b96a..000000000
--- a/src/Specific/solinas32_2e140m27_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e140m27_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_2e140m27_6limbs/compiler.sh b/src/Specific/solinas32_2e140m27_6limbs/compiler.sh
deleted file mode 100755
index 3d87a4920..000000000
--- a/src/Specific/solinas32_2e140m27_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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,23,23,24,23,23}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<140) - 27' "$@"
diff --git a/src/Specific/solinas32_2e140m27_6limbs/compilerxx.sh b/src/Specific/solinas32_2e140m27_6limbs/compilerxx.sh
deleted file mode 100755
index 47b1e6469..000000000
--- a/src/Specific/solinas32_2e140m27_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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,23,23,24,23,23}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<140) - 27' "$@"
diff --git a/src/Specific/solinas32_2e140m27_6limbs/feadd.c b/src/Specific/solinas32_2e140m27_6limbs/feadd.c
deleted file mode 100644
index 5b654b294..000000000
--- a/src/Specific/solinas32_2e140m27_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_2e140m27_6limbs/feadd.v b/src/Specific/solinas32_2e140m27_6limbs/feadd.v
deleted file mode 100644
index 42fc7f636..000000000
--- a/src/Specific/solinas32_2e140m27_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e140m27_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_2e140m27_6limbs/feaddDisplay.log b/src/Specific/solinas32_2e140m27_6limbs/feaddDisplay.log
deleted file mode 100644
index 1084b2659..000000000
--- a/src/Specific/solinas32_2e140m27_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_2e140m27_6limbs/feaddDisplay.v b/src/Specific/solinas32_2e140m27_6limbs/feaddDisplay.v
deleted file mode 100644
index 78f9b9dfa..000000000
--- a/src/Specific/solinas32_2e140m27_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e140m27_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e140m27_6limbs/fecarry.v b/src/Specific/solinas32_2e140m27_6limbs/fecarry.v
deleted file mode 100644
index f870841a3..000000000
--- a/src/Specific/solinas32_2e140m27_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e140m27_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_2e140m27_6limbs/fecarryDisplay.v b/src/Specific/solinas32_2e140m27_6limbs/fecarryDisplay.v
deleted file mode 100644
index 30ff6ec6c..000000000
--- a/src/Specific/solinas32_2e140m27_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e140m27_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e140m27_6limbs/femul.c b/src/Specific/solinas32_2e140m27_6limbs/femul.c
deleted file mode 100644
index f8c7f04fd..000000000
--- a/src/Specific/solinas32_2e140m27_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))))) + (0x1b * ((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)))) + (0x1b * ((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))) + (0x1b * (((uint64_t)x11 * x22) + ((0x2 * ((uint64_t)x13 * x23)) + ((uint64_t)x12 * x21)))));
- { uint64_t x28 = ((((uint64_t)x5 * x17) + ((uint64_t)x7 * x15)) + (0x1b * (((uint64_t)x9 * x22) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x12 * x19))))));
- { uint64_t x29 = (((uint64_t)x5 * x15) + (0x1b * ((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 >> 0x18);
- { uint32_t x31 = ((uint32_t)x29 & 0xffffff);
- { uint64_t x32 = (x30 + x28);
- { uint64_t x33 = (x32 >> 0x17);
- { uint32_t x34 = ((uint32_t)x32 & 0x7fffff);
- { uint64_t x35 = (x33 + x27);
- { uint64_t x36 = (x35 >> 0x17);
- { uint32_t x37 = ((uint32_t)x35 & 0x7fffff);
- { uint64_t x38 = (x36 + x26);
- { uint64_t x39 = (x38 >> 0x18);
- { uint32_t x40 = ((uint32_t)x38 & 0xffffff);
- { uint64_t x41 = (x39 + x25);
- { uint32_t x42 = (uint32_t) (x41 >> 0x17);
- { uint32_t x43 = ((uint32_t)x41 & 0x7fffff);
- { uint64_t x44 = (x42 + x24);
- { uint32_t x45 = (uint32_t) (x44 >> 0x17);
- { uint32_t x46 = ((uint32_t)x44 & 0x7fffff);
- { uint64_t x47 = (x31 + ((uint64_t)0x1b * x45));
- { uint32_t x48 = (uint32_t) (x47 >> 0x18);
- { uint32_t x49 = ((uint32_t)x47 & 0xffffff);
- { uint32_t x50 = (x48 + x34);
- { uint32_t x51 = (x50 >> 0x17);
- { uint32_t x52 = (x50 & 0x7fffff);
- 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_2e140m27_6limbs/femul.v b/src/Specific/solinas32_2e140m27_6limbs/femul.v
deleted file mode 100644
index 722f2ac89..000000000
--- a/src/Specific/solinas32_2e140m27_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e140m27_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_2e140m27_6limbs/femulDisplay.log b/src/Specific/solinas32_2e140m27_6limbs/femulDisplay.log
deleted file mode 100644
index 27372ed26..000000000
--- a/src/Specific/solinas32_2e140m27_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))))) + (0x1b * ((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)))) + (0x1b * ((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))) + (0x1b * (((uint64_t)x11 * x22) + ((0x2 * ((uint64_t)x13 * x23)) + ((uint64_t)x12 * x21)))));
- uint64_t x28 = ((((uint64_t)x5 * x17) + ((uint64_t)x7 * x15)) + (0x1b * (((uint64_t)x9 * x22) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x12 * x19))))));
- uint64_t x29 = (((uint64_t)x5 * x15) + (0x1b * ((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 >> 0x18);
- uint32_t x31 = ((uint32_t)x29 & 0xffffff);
- uint64_t x32 = (x30 + x28);
- uint64_t x33 = (x32 >> 0x17);
- uint32_t x34 = ((uint32_t)x32 & 0x7fffff);
- uint64_t x35 = (x33 + x27);
- uint64_t x36 = (x35 >> 0x17);
- uint32_t x37 = ((uint32_t)x35 & 0x7fffff);
- uint64_t x38 = (x36 + x26);
- uint64_t x39 = (x38 >> 0x18);
- uint32_t x40 = ((uint32_t)x38 & 0xffffff);
- uint64_t x41 = (x39 + x25);
- uint32_t x42 = (uint32_t) (x41 >> 0x17);
- uint32_t x43 = ((uint32_t)x41 & 0x7fffff);
- uint64_t x44 = (x42 + x24);
- uint32_t x45 = (uint32_t) (x44 >> 0x17);
- uint32_t x46 = ((uint32_t)x44 & 0x7fffff);
- uint64_t x47 = (x31 + ((uint64_t)0x1b * x45));
- uint32_t x48 = (uint32_t) (x47 >> 0x18);
- uint32_t x49 = ((uint32_t)x47 & 0xffffff);
- uint32_t x50 = (x48 + x34);
- uint32_t x51 = (x50 >> 0x17);
- uint32_t x52 = (x50 & 0x7fffff);
- 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_2e140m27_6limbs/femulDisplay.v b/src/Specific/solinas32_2e140m27_6limbs/femulDisplay.v
deleted file mode 100644
index 34f6742ce..000000000
--- a/src/Specific/solinas32_2e140m27_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e140m27_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e140m27_6limbs/fesquare.c b/src/Specific/solinas32_2e140m27_6limbs/fesquare.c
deleted file mode 100644
index a7149e90e..000000000
--- a/src/Specific/solinas32_2e140m27_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))))) + (0x1b * ((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)))) + (0x1b * ((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))) + (0x1b * (((uint64_t)x8 * x9) + ((0x2 * ((uint64_t)x10 * x10)) + ((uint64_t)x9 * x8)))));
- { uint64_t x15 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1b * (((uint64_t)x6 * x9) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((uint64_t)x9 * x6))))));
- { uint64_t x16 = (((uint64_t)x2 * x2) + (0x1b * ((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 >> 0x18);
- { uint32_t x18 = ((uint32_t)x16 & 0xffffff);
- { uint64_t x19 = (x17 + x15);
- { uint64_t x20 = (x19 >> 0x17);
- { uint32_t x21 = ((uint32_t)x19 & 0x7fffff);
- { uint64_t x22 = (x20 + x14);
- { uint64_t x23 = (x22 >> 0x17);
- { uint32_t x24 = ((uint32_t)x22 & 0x7fffff);
- { uint64_t x25 = (x23 + x13);
- { uint64_t x26 = (x25 >> 0x18);
- { uint32_t x27 = ((uint32_t)x25 & 0xffffff);
- { uint64_t x28 = (x26 + x12);
- { uint32_t x29 = (uint32_t) (x28 >> 0x17);
- { uint32_t x30 = ((uint32_t)x28 & 0x7fffff);
- { uint64_t x31 = (x29 + x11);
- { uint32_t x32 = (uint32_t) (x31 >> 0x17);
- { uint32_t x33 = ((uint32_t)x31 & 0x7fffff);
- { uint64_t x34 = (x18 + ((uint64_t)0x1b * x32));
- { uint32_t x35 = (uint32_t) (x34 >> 0x18);
- { uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- { uint32_t x37 = (x35 + x21);
- { uint32_t x38 = (x37 >> 0x17);
- { uint32_t x39 = (x37 & 0x7fffff);
- 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_2e140m27_6limbs/fesquare.v b/src/Specific/solinas32_2e140m27_6limbs/fesquare.v
deleted file mode 100644
index 64f9ab13c..000000000
--- a/src/Specific/solinas32_2e140m27_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e140m27_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_2e140m27_6limbs/fesquareDisplay.log b/src/Specific/solinas32_2e140m27_6limbs/fesquareDisplay.log
deleted file mode 100644
index 3f805555c..000000000
--- a/src/Specific/solinas32_2e140m27_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))))) + (0x1b * ((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)))) + (0x1b * ((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))) + (0x1b * (((uint64_t)x8 * x9) + ((0x2 * ((uint64_t)x10 * x10)) + ((uint64_t)x9 * x8)))));
- uint64_t x15 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1b * (((uint64_t)x6 * x9) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((uint64_t)x9 * x6))))));
- uint64_t x16 = (((uint64_t)x2 * x2) + (0x1b * ((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 >> 0x18);
- uint32_t x18 = ((uint32_t)x16 & 0xffffff);
- uint64_t x19 = (x17 + x15);
- uint64_t x20 = (x19 >> 0x17);
- uint32_t x21 = ((uint32_t)x19 & 0x7fffff);
- uint64_t x22 = (x20 + x14);
- uint64_t x23 = (x22 >> 0x17);
- uint32_t x24 = ((uint32_t)x22 & 0x7fffff);
- uint64_t x25 = (x23 + x13);
- uint64_t x26 = (x25 >> 0x18);
- uint32_t x27 = ((uint32_t)x25 & 0xffffff);
- uint64_t x28 = (x26 + x12);
- uint32_t x29 = (uint32_t) (x28 >> 0x17);
- uint32_t x30 = ((uint32_t)x28 & 0x7fffff);
- uint64_t x31 = (x29 + x11);
- uint32_t x32 = (uint32_t) (x31 >> 0x17);
- uint32_t x33 = ((uint32_t)x31 & 0x7fffff);
- uint64_t x34 = (x18 + ((uint64_t)0x1b * x32));
- uint32_t x35 = (uint32_t) (x34 >> 0x18);
- uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- uint32_t x37 = (x35 + x21);
- uint32_t x38 = (x37 >> 0x17);
- uint32_t x39 = (x37 & 0x7fffff);
- 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_2e140m27_6limbs/fesquareDisplay.v b/src/Specific/solinas32_2e140m27_6limbs/fesquareDisplay.v
deleted file mode 100644
index 84e87f777..000000000
--- a/src/Specific/solinas32_2e140m27_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e140m27_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e140m27_6limbs/fesub.c b/src/Specific/solinas32_2e140m27_6limbs/fesub.c
deleted file mode 100644
index 2fafe8f41..000000000
--- a/src/Specific/solinas32_2e140m27_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] = ((0x1ffffca + x5) - x15);
- out[1] = ((0xfffffe + x7) - x17);
- out[2] = ((0xfffffe + x9) - x19);
- out[3] = ((0x1fffffe + x11) - x21);
- out[4] = ((0xfffffe + x13) - x23);
- out[5] = ((0xfffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e140m27_6limbs/fesub.v b/src/Specific/solinas32_2e140m27_6limbs/fesub.v
deleted file mode 100644
index 61f7ef5e2..000000000
--- a/src/Specific/solinas32_2e140m27_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e140m27_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_2e140m27_6limbs/fesubDisplay.log b/src/Specific/solinas32_2e140m27_6limbs/fesubDisplay.log
deleted file mode 100644
index 3dc0cee98..000000000
--- a/src/Specific/solinas32_2e140m27_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,
- (((0xfffffe + x12) - x22), ((0xfffffe + x13) - x23), ((0x1fffffe + x11) - x21), ((0xfffffe + x9) - x19), ((0xfffffe + x7) - x17), ((0x1ffffca + 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_2e140m27_6limbs/fesubDisplay.v b/src/Specific/solinas32_2e140m27_6limbs/fesubDisplay.v
deleted file mode 100644
index fc7015d1a..000000000
--- a/src/Specific/solinas32_2e140m27_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e140m27_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e140m27_6limbs/freeze.c b/src/Specific/solinas32_2e140m27_6limbs/freeze.c
deleted file mode 100644
index 493e08507..000000000
--- a/src/Specific/solinas32_2e140m27_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 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffe5);
- { uint32_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x13, Return x4, 0x7fffff);
- { uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x16, Return x6, 0x7fffff);
- { uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x8, 0xffffff);
- { uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x10, 0x7fffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x9, 0x7fffff);
- { uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- { uint32_t x30 = (x29 & 0xffffe5);
- { uint32_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint32_t x34 = (x29 & 0x7fffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 23 (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 & 0x7fffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 23 (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 & 0xffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 24 (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 & 0x7fffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 23 (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 & 0x7fffff);
- { uint32_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (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_2e140m27_6limbs/freeze.v b/src/Specific/solinas32_2e140m27_6limbs/freeze.v
deleted file mode 100644
index 50f3d99ec..000000000
--- a/src/Specific/solinas32_2e140m27_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e140m27_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_2e140m27_6limbs/freezeDisplay.log b/src/Specific/solinas32_2e140m27_6limbs/freezeDisplay.log
deleted file mode 100644
index 5fcd4aff9..000000000
--- a/src/Specific/solinas32_2e140m27_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 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffe5);
- uint32_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x13, Return x4, 0x7fffff);
- uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x16, Return x6, 0x7fffff);
- uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x8, 0xffffff);
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x10, 0x7fffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x9, 0x7fffff);
- uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- uint32_t x30 = (x29 & 0xffffe5);
- uint32_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint32_t x34 = (x29 & 0x7fffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 23 (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 & 0x7fffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 23 (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 & 0xffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 24 (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 & 0x7fffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 23 (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 & 0x7fffff);
- uint32_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (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_2e140m27_6limbs/freezeDisplay.v b/src/Specific/solinas32_2e140m27_6limbs/freezeDisplay.v
deleted file mode 100644
index eeba032da..000000000
--- a/src/Specific/solinas32_2e140m27_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e140m27_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e140m27_6limbs/py_interpreter.sh b/src/Specific/solinas32_2e140m27_6limbs/py_interpreter.sh
deleted file mode 100755
index ee391a528..000000000
--- a/src/Specific/solinas32_2e140m27_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**140 - 27' -Dmodulus_bytes='23 + 1/3' -Da24='121665'
diff --git a/src/Specific/solinas32_2e140m27_7limbs/CurveParameters.v b/src/Specific/solinas32_2e140m27_7limbs/CurveParameters.v
deleted file mode 100644
index ee354aeae..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^140 - 27
-Base: 20
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 20;
- bitwidth := 32;
- s := 2^140;
- c := [(1, 27)];
- carry_chains := Some [seq 0 (pred 7); [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_2e140m27_7limbs/Synthesis.v b/src/Specific/solinas32_2e140m27_7limbs/Synthesis.v
deleted file mode 100644
index 1930d783c..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e140m27_7limbs.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_2e140m27_7limbs/compiler.sh b/src/Specific/solinas32_2e140m27_7limbs/compiler.sh
deleted file mode 100755
index 7daa274b5..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{20,20,20,20,20,20,20}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<140) - 27' "$@"
diff --git a/src/Specific/solinas32_2e140m27_7limbs/compilerxx.sh b/src/Specific/solinas32_2e140m27_7limbs/compilerxx.sh
deleted file mode 100755
index 7018c71ce..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{20,20,20,20,20,20,20}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<140) - 27' "$@"
diff --git a/src/Specific/solinas32_2e140m27_7limbs/feadd.c b/src/Specific/solinas32_2e140m27_7limbs/feadd.c
deleted file mode 100644
index 5288d0bef..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e140m27_7limbs/feadd.v b/src/Specific/solinas32_2e140m27_7limbs/feadd.v
deleted file mode 100644
index 5f57a74e9..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e140m27_7limbs.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_2e140m27_7limbs/feaddDisplay.log b/src/Specific/solinas32_2e140m27_7limbs/feaddDisplay.log
deleted file mode 100644
index d22997dcb..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e140m27_7limbs/feaddDisplay.v b/src/Specific/solinas32_2e140m27_7limbs/feaddDisplay.v
deleted file mode 100644
index c4d56965c..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e140m27_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e140m27_7limbs/fecarry.v b/src/Specific/solinas32_2e140m27_7limbs/fecarry.v
deleted file mode 100644
index 4d2c523b2..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e140m27_7limbs.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_2e140m27_7limbs/fecarryDisplay.v b/src/Specific/solinas32_2e140m27_7limbs/fecarryDisplay.v
deleted file mode 100644
index 3ca8363db..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e140m27_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e140m27_7limbs/femul.c b/src/Specific/solinas32_2e140m27_7limbs/femul.c
deleted file mode 100644
index 84bbf7c78..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- { uint64_t x28 = (((uint64_t)x5 * x26) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + (((uint64_t)x15 * x19) + ((uint64_t)x14 * x17)))))));
- { uint64_t x29 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + (((uint64_t)x11 * x21) + (((uint64_t)x13 * x19) + ((uint64_t)x15 * x17)))))) + (0x1b * ((uint64_t)x14 * x26)));
- { uint64_t x30 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + (((uint64_t)x11 * x19) + ((uint64_t)x13 * x17))))) + (0x1b * (((uint64_t)x15 * x26) + ((uint64_t)x14 * x27))));
- { uint64_t x31 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + (((uint64_t)x9 * x19) + ((uint64_t)x11 * x17)))) + (0x1b * (((uint64_t)x13 * x26) + (((uint64_t)x15 * x27) + ((uint64_t)x14 * x25)))));
- { uint64_t x32 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + ((uint64_t)x9 * x17))) + (0x1b * (((uint64_t)x11 * x26) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + ((uint64_t)x14 * x23))))));
- { uint64_t x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) + (0x1b * (((uint64_t)x9 * x26) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + ((uint64_t)x14 * x21)))))));
- { uint64_t x34 = (((uint64_t)x5 * x17) + (0x1b * (((uint64_t)x7 * x26) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + (((uint64_t)x13 * x23) + (((uint64_t)x15 * x21) + ((uint64_t)x14 * x19))))))));
- { uint32_t x35 = (uint32_t) (x34 >> 0x14);
- { uint32_t x36 = ((uint32_t)x34 & 0xfffff);
- { uint64_t x37 = (x35 + x33);
- { uint32_t x38 = (uint32_t) (x37 >> 0x14);
- { uint32_t x39 = ((uint32_t)x37 & 0xfffff);
- { uint64_t x40 = (x38 + x32);
- { uint32_t x41 = (uint32_t) (x40 >> 0x14);
- { uint32_t x42 = ((uint32_t)x40 & 0xfffff);
- { uint64_t x43 = (x41 + x31);
- { uint32_t x44 = (uint32_t) (x43 >> 0x14);
- { uint32_t x45 = ((uint32_t)x43 & 0xfffff);
- { uint64_t x46 = (x44 + x30);
- { uint32_t x47 = (uint32_t) (x46 >> 0x14);
- { uint32_t x48 = ((uint32_t)x46 & 0xfffff);
- { uint64_t x49 = (x47 + x29);
- { uint32_t x50 = (uint32_t) (x49 >> 0x14);
- { uint32_t x51 = ((uint32_t)x49 & 0xfffff);
- { uint64_t x52 = (x50 + x28);
- { uint32_t x53 = (uint32_t) (x52 >> 0x14);
- { uint32_t x54 = ((uint32_t)x52 & 0xfffff);
- { uint32_t x55 = (x36 + (0x1b * x53));
- { uint32_t x56 = (x55 >> 0x14);
- { uint32_t x57 = (x55 & 0xfffff);
- { uint32_t x58 = (x56 + x39);
- { uint32_t x59 = (x58 >> 0x14);
- { uint32_t x60 = (x58 & 0xfffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e140m27_7limbs/femul.v b/src/Specific/solinas32_2e140m27_7limbs/femul.v
deleted file mode 100644
index 3c93b56a2..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e140m27_7limbs.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_2e140m27_7limbs/femulDisplay.log b/src/Specific/solinas32_2e140m27_7limbs/femulDisplay.log
deleted file mode 100644
index 9973d40a2..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint64_t x28 = (((uint64_t)x5 * x26) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + (((uint64_t)x15 * x19) + ((uint64_t)x14 * x17)))))));
- uint64_t x29 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + (((uint64_t)x11 * x21) + (((uint64_t)x13 * x19) + ((uint64_t)x15 * x17)))))) + (0x1b * ((uint64_t)x14 * x26)));
- uint64_t x30 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + (((uint64_t)x11 * x19) + ((uint64_t)x13 * x17))))) + (0x1b * (((uint64_t)x15 * x26) + ((uint64_t)x14 * x27))));
- uint64_t x31 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + (((uint64_t)x9 * x19) + ((uint64_t)x11 * x17)))) + (0x1b * (((uint64_t)x13 * x26) + (((uint64_t)x15 * x27) + ((uint64_t)x14 * x25)))));
- uint64_t x32 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + ((uint64_t)x9 * x17))) + (0x1b * (((uint64_t)x11 * x26) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + ((uint64_t)x14 * x23))))));
- uint64_t x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) + (0x1b * (((uint64_t)x9 * x26) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + ((uint64_t)x14 * x21)))))));
- uint64_t x34 = (((uint64_t)x5 * x17) + (0x1b * (((uint64_t)x7 * x26) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + (((uint64_t)x13 * x23) + (((uint64_t)x15 * x21) + ((uint64_t)x14 * x19))))))));
- uint32_t x35 = (uint32_t) (x34 >> 0x14);
- uint32_t x36 = ((uint32_t)x34 & 0xfffff);
- uint64_t x37 = (x35 + x33);
- uint32_t x38 = (uint32_t) (x37 >> 0x14);
- uint32_t x39 = ((uint32_t)x37 & 0xfffff);
- uint64_t x40 = (x38 + x32);
- uint32_t x41 = (uint32_t) (x40 >> 0x14);
- uint32_t x42 = ((uint32_t)x40 & 0xfffff);
- uint64_t x43 = (x41 + x31);
- uint32_t x44 = (uint32_t) (x43 >> 0x14);
- uint32_t x45 = ((uint32_t)x43 & 0xfffff);
- uint64_t x46 = (x44 + x30);
- uint32_t x47 = (uint32_t) (x46 >> 0x14);
- uint32_t x48 = ((uint32_t)x46 & 0xfffff);
- uint64_t x49 = (x47 + x29);
- uint32_t x50 = (uint32_t) (x49 >> 0x14);
- uint32_t x51 = ((uint32_t)x49 & 0xfffff);
- uint64_t x52 = (x50 + x28);
- uint32_t x53 = (uint32_t) (x52 >> 0x14);
- uint32_t x54 = ((uint32_t)x52 & 0xfffff);
- uint32_t x55 = (x36 + (0x1b * x53));
- uint32_t x56 = (x55 >> 0x14);
- uint32_t x57 = (x55 & 0xfffff);
- uint32_t x58 = (x56 + x39);
- uint32_t x59 = (x58 >> 0x14);
- uint32_t x60 = (x58 & 0xfffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e140m27_7limbs/femulDisplay.v b/src/Specific/solinas32_2e140m27_7limbs/femulDisplay.v
deleted file mode 100644
index ead68f42b..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e140m27_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e140m27_7limbs/fesquare.c b/src/Specific/solinas32_2e140m27_7limbs/fesquare.c
deleted file mode 100644
index 0e08dac20..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x13 = (((uint64_t)x2 * x11) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x11 * x2)))))));
- { uint64_t x14 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x1b * ((uint64_t)x11 * x11)));
- { uint64_t x15 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x1b * (((uint64_t)x12 * x11) + ((uint64_t)x11 * x12))));
- { uint64_t x16 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x1b * (((uint64_t)x10 * x11) + (((uint64_t)x12 * x12) + ((uint64_t)x11 * x10)))));
- { uint64_t x17 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x1b * (((uint64_t)x8 * x11) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((uint64_t)x11 * x8))))));
- { uint64_t x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1b * (((uint64_t)x6 * x11) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + ((uint64_t)x11 * x6)))))));
- { uint64_t x19 = (((uint64_t)x2 * x2) + (0x1b * (((uint64_t)x4 * x11) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + ((uint64_t)x11 * x4))))))));
- { uint32_t x20 = (uint32_t) (x19 >> 0x14);
- { uint32_t x21 = ((uint32_t)x19 & 0xfffff);
- { uint64_t x22 = (x20 + x18);
- { uint32_t x23 = (uint32_t) (x22 >> 0x14);
- { uint32_t x24 = ((uint32_t)x22 & 0xfffff);
- { uint64_t x25 = (x23 + x17);
- { uint32_t x26 = (uint32_t) (x25 >> 0x14);
- { uint32_t x27 = ((uint32_t)x25 & 0xfffff);
- { uint64_t x28 = (x26 + x16);
- { uint32_t x29 = (uint32_t) (x28 >> 0x14);
- { uint32_t x30 = ((uint32_t)x28 & 0xfffff);
- { uint64_t x31 = (x29 + x15);
- { uint32_t x32 = (uint32_t) (x31 >> 0x14);
- { uint32_t x33 = ((uint32_t)x31 & 0xfffff);
- { uint64_t x34 = (x32 + x14);
- { uint32_t x35 = (uint32_t) (x34 >> 0x14);
- { uint32_t x36 = ((uint32_t)x34 & 0xfffff);
- { uint64_t x37 = (x35 + x13);
- { uint32_t x38 = (uint32_t) (x37 >> 0x14);
- { uint32_t x39 = ((uint32_t)x37 & 0xfffff);
- { uint32_t x40 = (x21 + (0x1b * x38));
- { uint32_t x41 = (x40 >> 0x14);
- { uint32_t x42 = (x40 & 0xfffff);
- { uint32_t x43 = (x41 + x24);
- { uint32_t x44 = (x43 >> 0x14);
- { uint32_t x45 = (x43 & 0xfffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e140m27_7limbs/fesquare.v b/src/Specific/solinas32_2e140m27_7limbs/fesquare.v
deleted file mode 100644
index f396d8191..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e140m27_7limbs.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_2e140m27_7limbs/fesquareDisplay.log b/src/Specific/solinas32_2e140m27_7limbs/fesquareDisplay.log
deleted file mode 100644
index b8de3f39b..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x13 = (((uint64_t)x2 * x11) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x11 * x2)))))));
- uint64_t x14 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x1b * ((uint64_t)x11 * x11)));
- uint64_t x15 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x1b * (((uint64_t)x12 * x11) + ((uint64_t)x11 * x12))));
- uint64_t x16 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x1b * (((uint64_t)x10 * x11) + (((uint64_t)x12 * x12) + ((uint64_t)x11 * x10)))));
- uint64_t x17 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x1b * (((uint64_t)x8 * x11) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((uint64_t)x11 * x8))))));
- uint64_t x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1b * (((uint64_t)x6 * x11) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + ((uint64_t)x11 * x6)))))));
- uint64_t x19 = (((uint64_t)x2 * x2) + (0x1b * (((uint64_t)x4 * x11) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + ((uint64_t)x11 * x4))))))));
- uint32_t x20 = (uint32_t) (x19 >> 0x14);
- uint32_t x21 = ((uint32_t)x19 & 0xfffff);
- uint64_t x22 = (x20 + x18);
- uint32_t x23 = (uint32_t) (x22 >> 0x14);
- uint32_t x24 = ((uint32_t)x22 & 0xfffff);
- uint64_t x25 = (x23 + x17);
- uint32_t x26 = (uint32_t) (x25 >> 0x14);
- uint32_t x27 = ((uint32_t)x25 & 0xfffff);
- uint64_t x28 = (x26 + x16);
- uint32_t x29 = (uint32_t) (x28 >> 0x14);
- uint32_t x30 = ((uint32_t)x28 & 0xfffff);
- uint64_t x31 = (x29 + x15);
- uint32_t x32 = (uint32_t) (x31 >> 0x14);
- uint32_t x33 = ((uint32_t)x31 & 0xfffff);
- uint64_t x34 = (x32 + x14);
- uint32_t x35 = (uint32_t) (x34 >> 0x14);
- uint32_t x36 = ((uint32_t)x34 & 0xfffff);
- uint64_t x37 = (x35 + x13);
- uint32_t x38 = (uint32_t) (x37 >> 0x14);
- uint32_t x39 = ((uint32_t)x37 & 0xfffff);
- uint32_t x40 = (x21 + (0x1b * x38));
- uint32_t x41 = (x40 >> 0x14);
- uint32_t x42 = (x40 & 0xfffff);
- uint32_t x43 = (x41 + x24);
- uint32_t x44 = (x43 >> 0x14);
- uint32_t x45 = (x43 & 0xfffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e140m27_7limbs/fesquareDisplay.v b/src/Specific/solinas32_2e140m27_7limbs/fesquareDisplay.v
deleted file mode 100644
index bf19378b3..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e140m27_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e140m27_7limbs/fesub.c b/src/Specific/solinas32_2e140m27_7limbs/fesub.c
deleted file mode 100644
index acaabc6bb..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = ((0x1fffca + x5) - x17);
- out[1] = ((0x1ffffe + x7) - x19);
- out[2] = ((0x1ffffe + x9) - x21);
- out[3] = ((0x1ffffe + x11) - x23);
- out[4] = ((0x1ffffe + x13) - x25);
- out[5] = ((0x1ffffe + x15) - x27);
- out[6] = ((0x1ffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e140m27_7limbs/fesub.v b/src/Specific/solinas32_2e140m27_7limbs/fesub.v
deleted file mode 100644
index 1d515a51b..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e140m27_7limbs.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_2e140m27_7limbs/fesubDisplay.log b/src/Specific/solinas32_2e140m27_7limbs/fesubDisplay.log
deleted file mode 100644
index 4b0289037..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0x1ffffe + x14) - x26), ((0x1ffffe + x15) - x27), ((0x1ffffe + x13) - x25), ((0x1ffffe + x11) - x23), ((0x1ffffe + x9) - x21), ((0x1ffffe + x7) - x19), ((0x1fffca + x5) - x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e140m27_7limbs/fesubDisplay.v b/src/Specific/solinas32_2e140m27_7limbs/fesubDisplay.v
deleted file mode 100644
index 8e4cdc7e7..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e140m27_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e140m27_7limbs/freeze.c b/src/Specific/solinas32_2e140m27_7limbs/freeze.c
deleted file mode 100644
index 5f9eb0720..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xfffe5);
- { uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0xfffff);
- { uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0xfffff);
- { uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0xfffff);
- { uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0xfffff);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0xfffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0xfffff);
- { uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- { uint32_t x35 = (x34 & 0xfffe5);
- { uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint32_t x39 = (x34 & 0xfffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint32_t x43 = (x34 & 0xfffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint32_t x47 = (x34 & 0xfffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint32_t x51 = (x34 & 0xfffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint32_t x55 = (x34 & 0xfffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint32_t x59 = (x34 & 0xfffff);
- { uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e140m27_7limbs/freeze.v b/src/Specific/solinas32_2e140m27_7limbs/freeze.v
deleted file mode 100644
index 1cbdf3568..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e140m27_7limbs.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_2e140m27_7limbs/freezeDisplay.log b/src/Specific/solinas32_2e140m27_7limbs/freezeDisplay.log
deleted file mode 100644
index d496ecafd..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xfffe5);
- uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0xfffff);
- uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0xfffff);
- uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0xfffff);
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0xfffff);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0xfffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0xfffff);
- uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- uint32_t x35 = (x34 & 0xfffe5);
- uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint32_t x39 = (x34 & 0xfffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint32_t x43 = (x34 & 0xfffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint32_t x47 = (x34 & 0xfffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint32_t x51 = (x34 & 0xfffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint32_t x55 = (x34 & 0xfffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint32_t x59 = (x34 & 0xfffff);
- uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e140m27_7limbs/freezeDisplay.v b/src/Specific/solinas32_2e140m27_7limbs/freezeDisplay.v
deleted file mode 100644
index 765b56c1d..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e140m27_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e140m27_7limbs/py_interpreter.sh b/src/Specific/solinas32_2e140m27_7limbs/py_interpreter.sh
deleted file mode 100755
index a577eb32d..000000000
--- a/src/Specific/solinas32_2e140m27_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**140 - 27' -Dmodulus_bytes='20' -Da24='121665'
diff --git a/src/Specific/solinas32_2e141m9_6limbs/CurveParameters.v b/src/Specific/solinas32_2e141m9_6limbs/CurveParameters.v
deleted file mode 100644
index 8c12f0251..000000000
--- a/src/Specific/solinas32_2e141m9_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^141 - 9
-Base: 23.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 23 + 1/2;
- bitwidth := 32;
- s := 2^141;
- c := [(1, 9)];
- 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_2e141m9_6limbs/Synthesis.v b/src/Specific/solinas32_2e141m9_6limbs/Synthesis.v
deleted file mode 100644
index 2d259843b..000000000
--- a/src/Specific/solinas32_2e141m9_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e141m9_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_2e141m9_6limbs/compiler.sh b/src/Specific/solinas32_2e141m9_6limbs/compiler.sh
deleted file mode 100755
index 9013c7cd1..000000000
--- a/src/Specific/solinas32_2e141m9_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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,23,24,23,24,23}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<141) - 9' "$@"
diff --git a/src/Specific/solinas32_2e141m9_6limbs/compilerxx.sh b/src/Specific/solinas32_2e141m9_6limbs/compilerxx.sh
deleted file mode 100755
index b8630b211..000000000
--- a/src/Specific/solinas32_2e141m9_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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,23,24,23,24,23}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<141) - 9' "$@"
diff --git a/src/Specific/solinas32_2e141m9_6limbs/feadd.c b/src/Specific/solinas32_2e141m9_6limbs/feadd.c
deleted file mode 100644
index 5b654b294..000000000
--- a/src/Specific/solinas32_2e141m9_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_2e141m9_6limbs/feadd.v b/src/Specific/solinas32_2e141m9_6limbs/feadd.v
deleted file mode 100644
index e51a5e5c8..000000000
--- a/src/Specific/solinas32_2e141m9_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e141m9_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_2e141m9_6limbs/feaddDisplay.log b/src/Specific/solinas32_2e141m9_6limbs/feaddDisplay.log
deleted file mode 100644
index 1084b2659..000000000
--- a/src/Specific/solinas32_2e141m9_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_2e141m9_6limbs/feaddDisplay.v b/src/Specific/solinas32_2e141m9_6limbs/feaddDisplay.v
deleted file mode 100644
index 6f2226cfa..000000000
--- a/src/Specific/solinas32_2e141m9_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e141m9_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e141m9_6limbs/fecarry.v b/src/Specific/solinas32_2e141m9_6limbs/fecarry.v
deleted file mode 100644
index 63751ec20..000000000
--- a/src/Specific/solinas32_2e141m9_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e141m9_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_2e141m9_6limbs/fecarryDisplay.v b/src/Specific/solinas32_2e141m9_6limbs/fecarryDisplay.v
deleted file mode 100644
index f0beec3af..000000000
--- a/src/Specific/solinas32_2e141m9_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e141m9_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e141m9_6limbs/femul.c b/src/Specific/solinas32_2e141m9_6limbs/femul.c
deleted file mode 100644
index bfc1b2f93..000000000
--- a/src/Specific/solinas32_2e141m9_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) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + (((uint64_t)x11 * x19) + (((uint64_t)x13 * x17) + ((uint64_t)x12 * x15))))));
- { uint64_t x25 = ((((uint64_t)x5 * x23) + ((0x2 * ((uint64_t)x7 * x21)) + (((uint64_t)x9 * x19) + ((0x2 * ((uint64_t)x11 * x17)) + ((uint64_t)x13 * x15))))) + (0x9 * (0x2 * ((uint64_t)x12 * x22))));
- { uint64_t x26 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + (((uint64_t)x9 * x17) + ((uint64_t)x11 * x15)))) + (0x9 * (((uint64_t)x13 * x22) + ((uint64_t)x12 * x23))));
- { uint64_t x27 = ((((uint64_t)x5 * x19) + ((0x2 * ((uint64_t)x7 * x17)) + ((uint64_t)x9 * x15))) + (0x9 * ((0x2 * ((uint64_t)x11 * x22)) + (((uint64_t)x13 * x23) + (0x2 * ((uint64_t)x12 * x21))))));
- { uint64_t x28 = ((((uint64_t)x5 * x17) + ((uint64_t)x7 * x15)) + (0x9 * (((uint64_t)x9 * x22) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x12 * x19))))));
- { uint64_t x29 = (((uint64_t)x5 * x15) + (0x9 * ((0x2 * ((uint64_t)x7 * x22)) + (((uint64_t)x9 * x23) + ((0x2 * ((uint64_t)x11 * x21)) + (((uint64_t)x13 * x19) + (0x2 * ((uint64_t)x12 * x17))))))));
- { uint64_t x30 = (x29 >> 0x18);
- { uint32_t x31 = ((uint32_t)x29 & 0xffffff);
- { uint64_t x32 = (x30 + x28);
- { uint64_t x33 = (x32 >> 0x17);
- { uint32_t x34 = ((uint32_t)x32 & 0x7fffff);
- { uint64_t x35 = (x33 + x27);
- { uint32_t x36 = (uint32_t) (x35 >> 0x18);
- { uint32_t x37 = ((uint32_t)x35 & 0xffffff);
- { uint64_t x38 = (x36 + x26);
- { uint32_t x39 = (uint32_t) (x38 >> 0x17);
- { uint32_t x40 = ((uint32_t)x38 & 0x7fffff);
- { uint64_t x41 = (x39 + x25);
- { uint32_t x42 = (uint32_t) (x41 >> 0x18);
- { uint32_t x43 = ((uint32_t)x41 & 0xffffff);
- { uint64_t x44 = (x42 + x24);
- { uint32_t x45 = (uint32_t) (x44 >> 0x17);
- { uint32_t x46 = ((uint32_t)x44 & 0x7fffff);
- { uint64_t x47 = (x31 + ((uint64_t)0x9 * x45));
- { uint32_t x48 = (uint32_t) (x47 >> 0x18);
- { uint32_t x49 = ((uint32_t)x47 & 0xffffff);
- { uint32_t x50 = (x48 + x34);
- { uint32_t x51 = (x50 >> 0x17);
- { uint32_t x52 = (x50 & 0x7fffff);
- 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_2e141m9_6limbs/femul.v b/src/Specific/solinas32_2e141m9_6limbs/femul.v
deleted file mode 100644
index 051513f3f..000000000
--- a/src/Specific/solinas32_2e141m9_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e141m9_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_2e141m9_6limbs/femulDisplay.log b/src/Specific/solinas32_2e141m9_6limbs/femulDisplay.log
deleted file mode 100644
index 1dae1e57e..000000000
--- a/src/Specific/solinas32_2e141m9_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) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + (((uint64_t)x11 * x19) + (((uint64_t)x13 * x17) + ((uint64_t)x12 * x15))))));
- uint64_t x25 = ((((uint64_t)x5 * x23) + ((0x2 * ((uint64_t)x7 * x21)) + (((uint64_t)x9 * x19) + ((0x2 * ((uint64_t)x11 * x17)) + ((uint64_t)x13 * x15))))) + (0x9 * (0x2 * ((uint64_t)x12 * x22))));
- uint64_t x26 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + (((uint64_t)x9 * x17) + ((uint64_t)x11 * x15)))) + (0x9 * (((uint64_t)x13 * x22) + ((uint64_t)x12 * x23))));
- uint64_t x27 = ((((uint64_t)x5 * x19) + ((0x2 * ((uint64_t)x7 * x17)) + ((uint64_t)x9 * x15))) + (0x9 * ((0x2 * ((uint64_t)x11 * x22)) + (((uint64_t)x13 * x23) + (0x2 * ((uint64_t)x12 * x21))))));
- uint64_t x28 = ((((uint64_t)x5 * x17) + ((uint64_t)x7 * x15)) + (0x9 * (((uint64_t)x9 * x22) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x12 * x19))))));
- uint64_t x29 = (((uint64_t)x5 * x15) + (0x9 * ((0x2 * ((uint64_t)x7 * x22)) + (((uint64_t)x9 * x23) + ((0x2 * ((uint64_t)x11 * x21)) + (((uint64_t)x13 * x19) + (0x2 * ((uint64_t)x12 * x17))))))));
- uint64_t x30 = (x29 >> 0x18);
- uint32_t x31 = ((uint32_t)x29 & 0xffffff);
- uint64_t x32 = (x30 + x28);
- uint64_t x33 = (x32 >> 0x17);
- uint32_t x34 = ((uint32_t)x32 & 0x7fffff);
- uint64_t x35 = (x33 + x27);
- uint32_t x36 = (uint32_t) (x35 >> 0x18);
- uint32_t x37 = ((uint32_t)x35 & 0xffffff);
- uint64_t x38 = (x36 + x26);
- uint32_t x39 = (uint32_t) (x38 >> 0x17);
- uint32_t x40 = ((uint32_t)x38 & 0x7fffff);
- uint64_t x41 = (x39 + x25);
- uint32_t x42 = (uint32_t) (x41 >> 0x18);
- uint32_t x43 = ((uint32_t)x41 & 0xffffff);
- uint64_t x44 = (x42 + x24);
- uint32_t x45 = (uint32_t) (x44 >> 0x17);
- uint32_t x46 = ((uint32_t)x44 & 0x7fffff);
- uint64_t x47 = (x31 + ((uint64_t)0x9 * x45));
- uint32_t x48 = (uint32_t) (x47 >> 0x18);
- uint32_t x49 = ((uint32_t)x47 & 0xffffff);
- uint32_t x50 = (x48 + x34);
- uint32_t x51 = (x50 >> 0x17);
- uint32_t x52 = (x50 & 0x7fffff);
- 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_2e141m9_6limbs/femulDisplay.v b/src/Specific/solinas32_2e141m9_6limbs/femulDisplay.v
deleted file mode 100644
index 39615770c..000000000
--- a/src/Specific/solinas32_2e141m9_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e141m9_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e141m9_6limbs/fesquare.c b/src/Specific/solinas32_2e141m9_6limbs/fesquare.c
deleted file mode 100644
index a0f82da0d..000000000
--- a/src/Specific/solinas32_2e141m9_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) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x9 * x2))))));
- { uint64_t x12 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x9 * (0x2 * ((uint64_t)x9 * x9))));
- { uint64_t x13 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x9 * (((uint64_t)x10 * x9) + ((uint64_t)x9 * x10))));
- { uint64_t x14 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x9 * ((0x2 * ((uint64_t)x8 * x9)) + (((uint64_t)x10 * x10) + (0x2 * ((uint64_t)x9 * x8))))));
- { uint64_t x15 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x9 * (((uint64_t)x6 * x9) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((uint64_t)x9 * x6))))));
- { uint64_t x16 = (((uint64_t)x2 * x2) + (0x9 * ((0x2 * ((uint64_t)x4 * x9)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (0x2 * ((uint64_t)x9 * x4))))))));
- { uint64_t x17 = (x16 >> 0x18);
- { uint32_t x18 = ((uint32_t)x16 & 0xffffff);
- { uint64_t x19 = (x17 + x15);
- { uint64_t x20 = (x19 >> 0x17);
- { uint32_t x21 = ((uint32_t)x19 & 0x7fffff);
- { uint64_t x22 = (x20 + x14);
- { uint32_t x23 = (uint32_t) (x22 >> 0x18);
- { uint32_t x24 = ((uint32_t)x22 & 0xffffff);
- { uint64_t x25 = (x23 + x13);
- { uint32_t x26 = (uint32_t) (x25 >> 0x17);
- { uint32_t x27 = ((uint32_t)x25 & 0x7fffff);
- { uint64_t x28 = (x26 + x12);
- { uint32_t x29 = (uint32_t) (x28 >> 0x18);
- { uint32_t x30 = ((uint32_t)x28 & 0xffffff);
- { uint64_t x31 = (x29 + x11);
- { uint32_t x32 = (uint32_t) (x31 >> 0x17);
- { uint32_t x33 = ((uint32_t)x31 & 0x7fffff);
- { uint64_t x34 = (x18 + ((uint64_t)0x9 * x32));
- { uint32_t x35 = (uint32_t) (x34 >> 0x18);
- { uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- { uint32_t x37 = (x35 + x21);
- { uint32_t x38 = (x37 >> 0x17);
- { uint32_t x39 = (x37 & 0x7fffff);
- 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_2e141m9_6limbs/fesquare.v b/src/Specific/solinas32_2e141m9_6limbs/fesquare.v
deleted file mode 100644
index 3ef02fdaa..000000000
--- a/src/Specific/solinas32_2e141m9_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e141m9_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_2e141m9_6limbs/fesquareDisplay.log b/src/Specific/solinas32_2e141m9_6limbs/fesquareDisplay.log
deleted file mode 100644
index 44c86d48c..000000000
--- a/src/Specific/solinas32_2e141m9_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) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x9 * x2))))));
- uint64_t x12 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x9 * (0x2 * ((uint64_t)x9 * x9))));
- uint64_t x13 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x9 * (((uint64_t)x10 * x9) + ((uint64_t)x9 * x10))));
- uint64_t x14 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x9 * ((0x2 * ((uint64_t)x8 * x9)) + (((uint64_t)x10 * x10) + (0x2 * ((uint64_t)x9 * x8))))));
- uint64_t x15 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x9 * (((uint64_t)x6 * x9) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((uint64_t)x9 * x6))))));
- uint64_t x16 = (((uint64_t)x2 * x2) + (0x9 * ((0x2 * ((uint64_t)x4 * x9)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (0x2 * ((uint64_t)x9 * x4))))))));
- uint64_t x17 = (x16 >> 0x18);
- uint32_t x18 = ((uint32_t)x16 & 0xffffff);
- uint64_t x19 = (x17 + x15);
- uint64_t x20 = (x19 >> 0x17);
- uint32_t x21 = ((uint32_t)x19 & 0x7fffff);
- uint64_t x22 = (x20 + x14);
- uint32_t x23 = (uint32_t) (x22 >> 0x18);
- uint32_t x24 = ((uint32_t)x22 & 0xffffff);
- uint64_t x25 = (x23 + x13);
- uint32_t x26 = (uint32_t) (x25 >> 0x17);
- uint32_t x27 = ((uint32_t)x25 & 0x7fffff);
- uint64_t x28 = (x26 + x12);
- uint32_t x29 = (uint32_t) (x28 >> 0x18);
- uint32_t x30 = ((uint32_t)x28 & 0xffffff);
- uint64_t x31 = (x29 + x11);
- uint32_t x32 = (uint32_t) (x31 >> 0x17);
- uint32_t x33 = ((uint32_t)x31 & 0x7fffff);
- uint64_t x34 = (x18 + ((uint64_t)0x9 * x32));
- uint32_t x35 = (uint32_t) (x34 >> 0x18);
- uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- uint32_t x37 = (x35 + x21);
- uint32_t x38 = (x37 >> 0x17);
- uint32_t x39 = (x37 & 0x7fffff);
- 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_2e141m9_6limbs/fesquareDisplay.v b/src/Specific/solinas32_2e141m9_6limbs/fesquareDisplay.v
deleted file mode 100644
index 950c82063..000000000
--- a/src/Specific/solinas32_2e141m9_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e141m9_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e141m9_6limbs/fesub.c b/src/Specific/solinas32_2e141m9_6limbs/fesub.c
deleted file mode 100644
index 8c928bced..000000000
--- a/src/Specific/solinas32_2e141m9_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] = ((0x1ffffee + x5) - x15);
- out[1] = ((0xfffffe + x7) - x17);
- out[2] = ((0x1fffffe + x9) - x19);
- out[3] = ((0xfffffe + x11) - x21);
- out[4] = ((0x1fffffe + x13) - x23);
- out[5] = ((0xfffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e141m9_6limbs/fesub.v b/src/Specific/solinas32_2e141m9_6limbs/fesub.v
deleted file mode 100644
index 02abceb3d..000000000
--- a/src/Specific/solinas32_2e141m9_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e141m9_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_2e141m9_6limbs/fesubDisplay.log b/src/Specific/solinas32_2e141m9_6limbs/fesubDisplay.log
deleted file mode 100644
index 45d58a6d4..000000000
--- a/src/Specific/solinas32_2e141m9_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,
- (((0xfffffe + x12) - x22), ((0x1fffffe + x13) - x23), ((0xfffffe + x11) - x21), ((0x1fffffe + x9) - x19), ((0xfffffe + x7) - x17), ((0x1ffffee + 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_2e141m9_6limbs/fesubDisplay.v b/src/Specific/solinas32_2e141m9_6limbs/fesubDisplay.v
deleted file mode 100644
index c6cba461a..000000000
--- a/src/Specific/solinas32_2e141m9_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e141m9_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e141m9_6limbs/freeze.c b/src/Specific/solinas32_2e141m9_6limbs/freeze.c
deleted file mode 100644
index 24e968a49..000000000
--- a/src/Specific/solinas32_2e141m9_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 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xfffff7);
- { uint32_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x13, Return x4, 0x7fffff);
- { uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x16, Return x6, 0xffffff);
- { uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x8, 0x7fffff);
- { uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x10, 0xffffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x9, 0x7fffff);
- { uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- { uint32_t x30 = (x29 & 0xfffff7);
- { uint32_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint32_t x34 = (x29 & 0x7fffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 23 (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 & 0xffffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 24 (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 & 0x7fffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 23 (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 & 0xffffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 24 (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 & 0x7fffff);
- { uint32_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (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_2e141m9_6limbs/freeze.v b/src/Specific/solinas32_2e141m9_6limbs/freeze.v
deleted file mode 100644
index eb4d34558..000000000
--- a/src/Specific/solinas32_2e141m9_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e141m9_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_2e141m9_6limbs/freezeDisplay.log b/src/Specific/solinas32_2e141m9_6limbs/freezeDisplay.log
deleted file mode 100644
index d4ea4280b..000000000
--- a/src/Specific/solinas32_2e141m9_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 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xfffff7);
- uint32_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x13, Return x4, 0x7fffff);
- uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x16, Return x6, 0xffffff);
- uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x8, 0x7fffff);
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x10, 0xffffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x9, 0x7fffff);
- uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- uint32_t x30 = (x29 & 0xfffff7);
- uint32_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint32_t x34 = (x29 & 0x7fffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 23 (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 & 0xffffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 24 (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 & 0x7fffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 23 (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 & 0xffffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 24 (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 & 0x7fffff);
- uint32_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (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_2e141m9_6limbs/freezeDisplay.v b/src/Specific/solinas32_2e141m9_6limbs/freezeDisplay.v
deleted file mode 100644
index c56e82158..000000000
--- a/src/Specific/solinas32_2e141m9_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e141m9_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e141m9_6limbs/py_interpreter.sh b/src/Specific/solinas32_2e141m9_6limbs/py_interpreter.sh
deleted file mode 100755
index d7b3f8f9d..000000000
--- a/src/Specific/solinas32_2e141m9_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**141 - 9' -Dmodulus_bytes='23.5' -Da24='121665'
diff --git a/src/Specific/solinas32_2e141m9_7limbs/CurveParameters.v b/src/Specific/solinas32_2e141m9_7limbs/CurveParameters.v
deleted file mode 100644
index 64ad24267..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^141 - 9
-Base: 20 + 1/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 20 + 1/7;
- bitwidth := 32;
- s := 2^141;
- c := [(1, 9)];
- carry_chains := Some [seq 0 (pred 7); [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_2e141m9_7limbs/Synthesis.v b/src/Specific/solinas32_2e141m9_7limbs/Synthesis.v
deleted file mode 100644
index 0aa8419a9..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e141m9_7limbs.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_2e141m9_7limbs/compiler.sh b/src/Specific/solinas32_2e141m9_7limbs/compiler.sh
deleted file mode 100755
index 015f4dbc7..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{21,20,20,20,20,20,20}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<141) - 9' "$@"
diff --git a/src/Specific/solinas32_2e141m9_7limbs/compilerxx.sh b/src/Specific/solinas32_2e141m9_7limbs/compilerxx.sh
deleted file mode 100755
index a28aeb21b..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{21,20,20,20,20,20,20}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<141) - 9' "$@"
diff --git a/src/Specific/solinas32_2e141m9_7limbs/feadd.c b/src/Specific/solinas32_2e141m9_7limbs/feadd.c
deleted file mode 100644
index 5288d0bef..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e141m9_7limbs/feadd.v b/src/Specific/solinas32_2e141m9_7limbs/feadd.v
deleted file mode 100644
index 66c8c3b34..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e141m9_7limbs.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_2e141m9_7limbs/feaddDisplay.log b/src/Specific/solinas32_2e141m9_7limbs/feaddDisplay.log
deleted file mode 100644
index d22997dcb..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e141m9_7limbs/feaddDisplay.v b/src/Specific/solinas32_2e141m9_7limbs/feaddDisplay.v
deleted file mode 100644
index 3ec2bc7bd..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e141m9_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e141m9_7limbs/fecarry.v b/src/Specific/solinas32_2e141m9_7limbs/fecarry.v
deleted file mode 100644
index 9a647a821..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e141m9_7limbs.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_2e141m9_7limbs/fecarryDisplay.v b/src/Specific/solinas32_2e141m9_7limbs/fecarryDisplay.v
deleted file mode 100644
index a29fc6cde..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e141m9_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e141m9_7limbs/femul.c b/src/Specific/solinas32_2e141m9_7limbs/femul.c
deleted file mode 100644
index 2583f0079..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- { uint64_t x28 = (((uint64_t)x5 * x26) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((0x2 * ((uint64_t)x11 * x23)) + ((0x2 * ((uint64_t)x13 * x21)) + ((0x2 * ((uint64_t)x15 * x19)) + ((uint64_t)x14 * x17)))))));
- { uint64_t x29 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + ((0x2 * ((uint64_t)x13 * x19)) + ((uint64_t)x15 * x17)))))) + (0x9 * ((uint64_t)x14 * x26)));
- { uint64_t x30 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((0x2 * ((uint64_t)x9 * x21)) + ((0x2 * ((uint64_t)x11 * x19)) + ((uint64_t)x13 * x17))))) + (0x9 * (((uint64_t)x15 * x26) + ((uint64_t)x14 * x27))));
- { uint64_t x31 = ((((uint64_t)x5 * x23) + ((0x2 * ((uint64_t)x7 * x21)) + ((0x2 * ((uint64_t)x9 * x19)) + ((uint64_t)x11 * x17)))) + (0x9 * (((uint64_t)x13 * x26) + (((uint64_t)x15 * x27) + ((uint64_t)x14 * x25)))));
- { uint64_t x32 = ((((uint64_t)x5 * x21) + ((0x2 * ((uint64_t)x7 * x19)) + ((uint64_t)x9 * x17))) + (0x9 * (((uint64_t)x11 * x26) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + ((uint64_t)x14 * x23))))));
- { uint64_t x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) + (0x9 * (((uint64_t)x9 * x26) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + ((uint64_t)x14 * x21)))))));
- { uint64_t x34 = (((uint64_t)x5 * x17) + (0x9 * ((0x2 * ((uint64_t)x7 * x26)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + (0x2 * ((uint64_t)x14 * x19)))))))));
- { uint32_t x35 = (uint32_t) (x34 >> 0x15);
- { uint32_t x36 = ((uint32_t)x34 & 0x1fffff);
- { uint64_t x37 = (x35 + x33);
- { uint32_t x38 = (uint32_t) (x37 >> 0x14);
- { uint32_t x39 = ((uint32_t)x37 & 0xfffff);
- { uint64_t x40 = (x38 + x32);
- { uint32_t x41 = (uint32_t) (x40 >> 0x14);
- { uint32_t x42 = ((uint32_t)x40 & 0xfffff);
- { uint64_t x43 = (x41 + x31);
- { uint32_t x44 = (uint32_t) (x43 >> 0x14);
- { uint32_t x45 = ((uint32_t)x43 & 0xfffff);
- { uint64_t x46 = (x44 + x30);
- { uint32_t x47 = (uint32_t) (x46 >> 0x14);
- { uint32_t x48 = ((uint32_t)x46 & 0xfffff);
- { uint64_t x49 = (x47 + x29);
- { uint32_t x50 = (uint32_t) (x49 >> 0x14);
- { uint32_t x51 = ((uint32_t)x49 & 0xfffff);
- { uint64_t x52 = (x50 + x28);
- { uint32_t x53 = (uint32_t) (x52 >> 0x14);
- { uint32_t x54 = ((uint32_t)x52 & 0xfffff);
- { uint32_t x55 = (x36 + (0x9 * x53));
- { uint32_t x56 = (x55 >> 0x15);
- { uint32_t x57 = (x55 & 0x1fffff);
- { uint32_t x58 = (x56 + x39);
- { uint32_t x59 = (x58 >> 0x14);
- { uint32_t x60 = (x58 & 0xfffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e141m9_7limbs/femul.v b/src/Specific/solinas32_2e141m9_7limbs/femul.v
deleted file mode 100644
index 05eb87bb3..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e141m9_7limbs.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_2e141m9_7limbs/femulDisplay.log b/src/Specific/solinas32_2e141m9_7limbs/femulDisplay.log
deleted file mode 100644
index 3e7f9e0e4..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint64_t x28 = (((uint64_t)x5 * x26) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((0x2 * ((uint64_t)x11 * x23)) + ((0x2 * ((uint64_t)x13 * x21)) + ((0x2 * ((uint64_t)x15 * x19)) + ((uint64_t)x14 * x17)))))));
- uint64_t x29 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + ((0x2 * ((uint64_t)x13 * x19)) + ((uint64_t)x15 * x17)))))) + (0x9 * ((uint64_t)x14 * x26)));
- uint64_t x30 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((0x2 * ((uint64_t)x9 * x21)) + ((0x2 * ((uint64_t)x11 * x19)) + ((uint64_t)x13 * x17))))) + (0x9 * (((uint64_t)x15 * x26) + ((uint64_t)x14 * x27))));
- uint64_t x31 = ((((uint64_t)x5 * x23) + ((0x2 * ((uint64_t)x7 * x21)) + ((0x2 * ((uint64_t)x9 * x19)) + ((uint64_t)x11 * x17)))) + (0x9 * (((uint64_t)x13 * x26) + (((uint64_t)x15 * x27) + ((uint64_t)x14 * x25)))));
- uint64_t x32 = ((((uint64_t)x5 * x21) + ((0x2 * ((uint64_t)x7 * x19)) + ((uint64_t)x9 * x17))) + (0x9 * (((uint64_t)x11 * x26) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + ((uint64_t)x14 * x23))))));
- uint64_t x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) + (0x9 * (((uint64_t)x9 * x26) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + ((uint64_t)x14 * x21)))))));
- uint64_t x34 = (((uint64_t)x5 * x17) + (0x9 * ((0x2 * ((uint64_t)x7 * x26)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + (0x2 * ((uint64_t)x14 * x19)))))))));
- uint32_t x35 = (uint32_t) (x34 >> 0x15);
- uint32_t x36 = ((uint32_t)x34 & 0x1fffff);
- uint64_t x37 = (x35 + x33);
- uint32_t x38 = (uint32_t) (x37 >> 0x14);
- uint32_t x39 = ((uint32_t)x37 & 0xfffff);
- uint64_t x40 = (x38 + x32);
- uint32_t x41 = (uint32_t) (x40 >> 0x14);
- uint32_t x42 = ((uint32_t)x40 & 0xfffff);
- uint64_t x43 = (x41 + x31);
- uint32_t x44 = (uint32_t) (x43 >> 0x14);
- uint32_t x45 = ((uint32_t)x43 & 0xfffff);
- uint64_t x46 = (x44 + x30);
- uint32_t x47 = (uint32_t) (x46 >> 0x14);
- uint32_t x48 = ((uint32_t)x46 & 0xfffff);
- uint64_t x49 = (x47 + x29);
- uint32_t x50 = (uint32_t) (x49 >> 0x14);
- uint32_t x51 = ((uint32_t)x49 & 0xfffff);
- uint64_t x52 = (x50 + x28);
- uint32_t x53 = (uint32_t) (x52 >> 0x14);
- uint32_t x54 = ((uint32_t)x52 & 0xfffff);
- uint32_t x55 = (x36 + (0x9 * x53));
- uint32_t x56 = (x55 >> 0x15);
- uint32_t x57 = (x55 & 0x1fffff);
- uint32_t x58 = (x56 + x39);
- uint32_t x59 = (x58 >> 0x14);
- uint32_t x60 = (x58 & 0xfffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e141m9_7limbs/femulDisplay.v b/src/Specific/solinas32_2e141m9_7limbs/femulDisplay.v
deleted file mode 100644
index 581826e30..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e141m9_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e141m9_7limbs/fesquare.c b/src/Specific/solinas32_2e141m9_7limbs/fesquare.c
deleted file mode 100644
index 4ebaaa757..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x13 = (((uint64_t)x2 * x11) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x11 * x2)))))));
- { uint64_t x14 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x9 * ((uint64_t)x11 * x11)));
- { uint64_t x15 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x9 * (((uint64_t)x12 * x11) + ((uint64_t)x11 * x12))));
- { uint64_t x16 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x9 * (((uint64_t)x10 * x11) + (((uint64_t)x12 * x12) + ((uint64_t)x11 * x10)))));
- { uint64_t x17 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x9 * (((uint64_t)x8 * x11) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((uint64_t)x11 * x8))))));
- { uint64_t x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x9 * (((uint64_t)x6 * x11) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + ((uint64_t)x11 * x6)))))));
- { uint64_t x19 = (((uint64_t)x2 * x2) + (0x9 * ((0x2 * ((uint64_t)x4 * x11)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (0x2 * ((uint64_t)x11 * x4)))))))));
- { uint32_t x20 = (uint32_t) (x19 >> 0x15);
- { uint32_t x21 = ((uint32_t)x19 & 0x1fffff);
- { uint64_t x22 = (x20 + x18);
- { uint32_t x23 = (uint32_t) (x22 >> 0x14);
- { uint32_t x24 = ((uint32_t)x22 & 0xfffff);
- { uint64_t x25 = (x23 + x17);
- { uint32_t x26 = (uint32_t) (x25 >> 0x14);
- { uint32_t x27 = ((uint32_t)x25 & 0xfffff);
- { uint64_t x28 = (x26 + x16);
- { uint32_t x29 = (uint32_t) (x28 >> 0x14);
- { uint32_t x30 = ((uint32_t)x28 & 0xfffff);
- { uint64_t x31 = (x29 + x15);
- { uint32_t x32 = (uint32_t) (x31 >> 0x14);
- { uint32_t x33 = ((uint32_t)x31 & 0xfffff);
- { uint64_t x34 = (x32 + x14);
- { uint32_t x35 = (uint32_t) (x34 >> 0x14);
- { uint32_t x36 = ((uint32_t)x34 & 0xfffff);
- { uint64_t x37 = (x35 + x13);
- { uint32_t x38 = (uint32_t) (x37 >> 0x14);
- { uint32_t x39 = ((uint32_t)x37 & 0xfffff);
- { uint32_t x40 = (x21 + (0x9 * x38));
- { uint32_t x41 = (x40 >> 0x15);
- { uint32_t x42 = (x40 & 0x1fffff);
- { uint32_t x43 = (x41 + x24);
- { uint32_t x44 = (x43 >> 0x14);
- { uint32_t x45 = (x43 & 0xfffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e141m9_7limbs/fesquare.v b/src/Specific/solinas32_2e141m9_7limbs/fesquare.v
deleted file mode 100644
index e49645a33..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e141m9_7limbs.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_2e141m9_7limbs/fesquareDisplay.log b/src/Specific/solinas32_2e141m9_7limbs/fesquareDisplay.log
deleted file mode 100644
index eb2db8f40..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x13 = (((uint64_t)x2 * x11) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x11 * x2)))))));
- uint64_t x14 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x9 * ((uint64_t)x11 * x11)));
- uint64_t x15 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x9 * (((uint64_t)x12 * x11) + ((uint64_t)x11 * x12))));
- uint64_t x16 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x9 * (((uint64_t)x10 * x11) + (((uint64_t)x12 * x12) + ((uint64_t)x11 * x10)))));
- uint64_t x17 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x9 * (((uint64_t)x8 * x11) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((uint64_t)x11 * x8))))));
- uint64_t x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x9 * (((uint64_t)x6 * x11) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + ((uint64_t)x11 * x6)))))));
- uint64_t x19 = (((uint64_t)x2 * x2) + (0x9 * ((0x2 * ((uint64_t)x4 * x11)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (0x2 * ((uint64_t)x11 * x4)))))))));
- uint32_t x20 = (uint32_t) (x19 >> 0x15);
- uint32_t x21 = ((uint32_t)x19 & 0x1fffff);
- uint64_t x22 = (x20 + x18);
- uint32_t x23 = (uint32_t) (x22 >> 0x14);
- uint32_t x24 = ((uint32_t)x22 & 0xfffff);
- uint64_t x25 = (x23 + x17);
- uint32_t x26 = (uint32_t) (x25 >> 0x14);
- uint32_t x27 = ((uint32_t)x25 & 0xfffff);
- uint64_t x28 = (x26 + x16);
- uint32_t x29 = (uint32_t) (x28 >> 0x14);
- uint32_t x30 = ((uint32_t)x28 & 0xfffff);
- uint64_t x31 = (x29 + x15);
- uint32_t x32 = (uint32_t) (x31 >> 0x14);
- uint32_t x33 = ((uint32_t)x31 & 0xfffff);
- uint64_t x34 = (x32 + x14);
- uint32_t x35 = (uint32_t) (x34 >> 0x14);
- uint32_t x36 = ((uint32_t)x34 & 0xfffff);
- uint64_t x37 = (x35 + x13);
- uint32_t x38 = (uint32_t) (x37 >> 0x14);
- uint32_t x39 = ((uint32_t)x37 & 0xfffff);
- uint32_t x40 = (x21 + (0x9 * x38));
- uint32_t x41 = (x40 >> 0x15);
- uint32_t x42 = (x40 & 0x1fffff);
- uint32_t x43 = (x41 + x24);
- uint32_t x44 = (x43 >> 0x14);
- uint32_t x45 = (x43 & 0xfffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e141m9_7limbs/fesquareDisplay.v b/src/Specific/solinas32_2e141m9_7limbs/fesquareDisplay.v
deleted file mode 100644
index 2fcab9a4d..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e141m9_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e141m9_7limbs/fesub.c b/src/Specific/solinas32_2e141m9_7limbs/fesub.c
deleted file mode 100644
index a1ead2aa0..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = ((0x3fffee + x5) - x17);
- out[1] = ((0x1ffffe + x7) - x19);
- out[2] = ((0x1ffffe + x9) - x21);
- out[3] = ((0x1ffffe + x11) - x23);
- out[4] = ((0x1ffffe + x13) - x25);
- out[5] = ((0x1ffffe + x15) - x27);
- out[6] = ((0x1ffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e141m9_7limbs/fesub.v b/src/Specific/solinas32_2e141m9_7limbs/fesub.v
deleted file mode 100644
index 72184468d..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e141m9_7limbs.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_2e141m9_7limbs/fesubDisplay.log b/src/Specific/solinas32_2e141m9_7limbs/fesubDisplay.log
deleted file mode 100644
index 346dcca70..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0x1ffffe + x14) - x26), ((0x1ffffe + x15) - x27), ((0x1ffffe + x13) - x25), ((0x1ffffe + x11) - x23), ((0x1ffffe + x9) - x21), ((0x1ffffe + x7) - x19), ((0x3fffee + x5) - x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e141m9_7limbs/fesubDisplay.v b/src/Specific/solinas32_2e141m9_7limbs/fesubDisplay.v
deleted file mode 100644
index 4e0578a1c..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e141m9_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e141m9_7limbs/freeze.c b/src/Specific/solinas32_2e141m9_7limbs/freeze.c
deleted file mode 100644
index 26cae0fa5..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffff7);
- { uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0xfffff);
- { uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0xfffff);
- { uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0xfffff);
- { uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0xfffff);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0xfffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0xfffff);
- { uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- { uint32_t x35 = (x34 & 0x1ffff7);
- { uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint32_t x39 = (x34 & 0xfffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint32_t x43 = (x34 & 0xfffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint32_t x47 = (x34 & 0xfffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint32_t x51 = (x34 & 0xfffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint32_t x55 = (x34 & 0xfffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint32_t x59 = (x34 & 0xfffff);
- { uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e141m9_7limbs/freeze.v b/src/Specific/solinas32_2e141m9_7limbs/freeze.v
deleted file mode 100644
index 01dde236b..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e141m9_7limbs.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_2e141m9_7limbs/freezeDisplay.log b/src/Specific/solinas32_2e141m9_7limbs/freezeDisplay.log
deleted file mode 100644
index 230b59dc9..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffff7);
- uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0xfffff);
- uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0xfffff);
- uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0xfffff);
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0xfffff);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0xfffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0xfffff);
- uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- uint32_t x35 = (x34 & 0x1ffff7);
- uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint32_t x39 = (x34 & 0xfffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint32_t x43 = (x34 & 0xfffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint32_t x47 = (x34 & 0xfffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint32_t x51 = (x34 & 0xfffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint32_t x55 = (x34 & 0xfffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint32_t x59 = (x34 & 0xfffff);
- uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e141m9_7limbs/freezeDisplay.v b/src/Specific/solinas32_2e141m9_7limbs/freezeDisplay.v
deleted file mode 100644
index b9642c5a2..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e141m9_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e141m9_7limbs/py_interpreter.sh b/src/Specific/solinas32_2e141m9_7limbs/py_interpreter.sh
deleted file mode 100755
index c62c46cd5..000000000
--- a/src/Specific/solinas32_2e141m9_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**141 - 9' -Dmodulus_bytes='20 + 1/7' -Da24='121665'
diff --git a/src/Specific/solinas32_2e150m3_6limbs/CurveParameters.v b/src/Specific/solinas32_2e150m3_6limbs/CurveParameters.v
deleted file mode 100644
index 4f693fe27..000000000
--- a/src/Specific/solinas32_2e150m3_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^150 - 3
-Base: 25
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 25;
- bitwidth := 32;
- s := 2^150;
- c := [(1, 3)];
- 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_2e150m3_6limbs/Synthesis.v b/src/Specific/solinas32_2e150m3_6limbs/Synthesis.v
deleted file mode 100644
index dafc9cdc7..000000000
--- a/src/Specific/solinas32_2e150m3_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e150m3_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_2e150m3_6limbs/compiler.sh b/src/Specific/solinas32_2e150m3_6limbs/compiler.sh
deleted file mode 100755
index c31699519..000000000
--- a/src/Specific/solinas32_2e150m3_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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,25,25,25,25}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<150) - 3' "$@"
diff --git a/src/Specific/solinas32_2e150m3_6limbs/compilerxx.sh b/src/Specific/solinas32_2e150m3_6limbs/compilerxx.sh
deleted file mode 100755
index ad7ffef80..000000000
--- a/src/Specific/solinas32_2e150m3_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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,25,25,25,25}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<150) - 3' "$@"
diff --git a/src/Specific/solinas32_2e150m3_6limbs/feadd.c b/src/Specific/solinas32_2e150m3_6limbs/feadd.c
deleted file mode 100644
index 5b654b294..000000000
--- a/src/Specific/solinas32_2e150m3_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_2e150m3_6limbs/feadd.v b/src/Specific/solinas32_2e150m3_6limbs/feadd.v
deleted file mode 100644
index 187d32b6a..000000000
--- a/src/Specific/solinas32_2e150m3_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e150m3_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_2e150m3_6limbs/feaddDisplay.log b/src/Specific/solinas32_2e150m3_6limbs/feaddDisplay.log
deleted file mode 100644
index 1084b2659..000000000
--- a/src/Specific/solinas32_2e150m3_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_2e150m3_6limbs/feaddDisplay.v b/src/Specific/solinas32_2e150m3_6limbs/feaddDisplay.v
deleted file mode 100644
index 8a14207df..000000000
--- a/src/Specific/solinas32_2e150m3_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e150m3_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e150m3_6limbs/fecarry.v b/src/Specific/solinas32_2e150m3_6limbs/fecarry.v
deleted file mode 100644
index 0c2c21552..000000000
--- a/src/Specific/solinas32_2e150m3_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e150m3_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_2e150m3_6limbs/fecarryDisplay.v b/src/Specific/solinas32_2e150m3_6limbs/fecarryDisplay.v
deleted file mode 100644
index c1aeaa36e..000000000
--- a/src/Specific/solinas32_2e150m3_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e150m3_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e150m3_6limbs/femul.c b/src/Specific/solinas32_2e150m3_6limbs/femul.c
deleted file mode 100644
index 8e1b3b763..000000000
--- a/src/Specific/solinas32_2e150m3_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) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + (((uint64_t)x11 * x19) + (((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))))) + (0x3 * ((uint64_t)x12 * x22)));
- { uint64_t x26 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + (((uint64_t)x9 * x17) + ((uint64_t)x11 * x15)))) + (0x3 * (((uint64_t)x13 * x22) + ((uint64_t)x12 * x23))));
- { uint64_t x27 = ((((uint64_t)x5 * x19) + (((uint64_t)x7 * x17) + ((uint64_t)x9 * x15))) + (0x3 * (((uint64_t)x11 * x22) + (((uint64_t)x13 * x23) + ((uint64_t)x12 * x21)))));
- { uint64_t x28 = ((((uint64_t)x5 * x17) + ((uint64_t)x7 * x15)) + (0x3 * (((uint64_t)x9 * x22) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x12 * x19))))));
- { uint64_t x29 = (((uint64_t)x5 * x15) + (0x3 * (((uint64_t)x7 * x22) + (((uint64_t)x9 * x23) + (((uint64_t)x11 * x21) + (((uint64_t)x13 * x19) + ((uint64_t)x12 * x17)))))));
- { uint64_t x30 = (x29 >> 0x19);
- { uint32_t x31 = ((uint32_t)x29 & 0x1ffffff);
- { uint64_t x32 = (x30 + x28);
- { uint64_t x33 = (x32 >> 0x19);
- { uint32_t x34 = ((uint32_t)x32 & 0x1ffffff);
- { uint64_t x35 = (x33 + x27);
- { uint64_t x36 = (x35 >> 0x19);
- { uint32_t x37 = ((uint32_t)x35 & 0x1ffffff);
- { uint64_t x38 = (x36 + x26);
- { uint32_t x39 = (uint32_t) (x38 >> 0x19);
- { uint32_t x40 = ((uint32_t)x38 & 0x1ffffff);
- { uint64_t x41 = (x39 + x25);
- { uint32_t x42 = (uint32_t) (x41 >> 0x19);
- { uint32_t x43 = ((uint32_t)x41 & 0x1ffffff);
- { uint64_t x44 = (x42 + x24);
- { uint32_t x45 = (uint32_t) (x44 >> 0x19);
- { uint32_t x46 = ((uint32_t)x44 & 0x1ffffff);
- { uint64_t x47 = (x31 + ((uint64_t)0x3 * x45));
- { uint32_t x48 = (uint32_t) (x47 >> 0x19);
- { uint32_t x49 = ((uint32_t)x47 & 0x1ffffff);
- { uint32_t x50 = (x48 + x34);
- { uint32_t x51 = (x50 >> 0x19);
- { uint32_t x52 = (x50 & 0x1ffffff);
- 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_2e150m3_6limbs/femul.v b/src/Specific/solinas32_2e150m3_6limbs/femul.v
deleted file mode 100644
index 21acddccc..000000000
--- a/src/Specific/solinas32_2e150m3_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e150m3_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_2e150m3_6limbs/femulDisplay.log b/src/Specific/solinas32_2e150m3_6limbs/femulDisplay.log
deleted file mode 100644
index c0d245008..000000000
--- a/src/Specific/solinas32_2e150m3_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) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + (((uint64_t)x11 * x19) + (((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))))) + (0x3 * ((uint64_t)x12 * x22)));
- uint64_t x26 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + (((uint64_t)x9 * x17) + ((uint64_t)x11 * x15)))) + (0x3 * (((uint64_t)x13 * x22) + ((uint64_t)x12 * x23))));
- uint64_t x27 = ((((uint64_t)x5 * x19) + (((uint64_t)x7 * x17) + ((uint64_t)x9 * x15))) + (0x3 * (((uint64_t)x11 * x22) + (((uint64_t)x13 * x23) + ((uint64_t)x12 * x21)))));
- uint64_t x28 = ((((uint64_t)x5 * x17) + ((uint64_t)x7 * x15)) + (0x3 * (((uint64_t)x9 * x22) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x12 * x19))))));
- uint64_t x29 = (((uint64_t)x5 * x15) + (0x3 * (((uint64_t)x7 * x22) + (((uint64_t)x9 * x23) + (((uint64_t)x11 * x21) + (((uint64_t)x13 * x19) + ((uint64_t)x12 * x17)))))));
- uint64_t x30 = (x29 >> 0x19);
- uint32_t x31 = ((uint32_t)x29 & 0x1ffffff);
- uint64_t x32 = (x30 + x28);
- uint64_t x33 = (x32 >> 0x19);
- uint32_t x34 = ((uint32_t)x32 & 0x1ffffff);
- uint64_t x35 = (x33 + x27);
- uint64_t x36 = (x35 >> 0x19);
- uint32_t x37 = ((uint32_t)x35 & 0x1ffffff);
- uint64_t x38 = (x36 + x26);
- uint32_t x39 = (uint32_t) (x38 >> 0x19);
- uint32_t x40 = ((uint32_t)x38 & 0x1ffffff);
- uint64_t x41 = (x39 + x25);
- uint32_t x42 = (uint32_t) (x41 >> 0x19);
- uint32_t x43 = ((uint32_t)x41 & 0x1ffffff);
- uint64_t x44 = (x42 + x24);
- uint32_t x45 = (uint32_t) (x44 >> 0x19);
- uint32_t x46 = ((uint32_t)x44 & 0x1ffffff);
- uint64_t x47 = (x31 + ((uint64_t)0x3 * x45));
- uint32_t x48 = (uint32_t) (x47 >> 0x19);
- uint32_t x49 = ((uint32_t)x47 & 0x1ffffff);
- uint32_t x50 = (x48 + x34);
- uint32_t x51 = (x50 >> 0x19);
- uint32_t x52 = (x50 & 0x1ffffff);
- 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_2e150m3_6limbs/femulDisplay.v b/src/Specific/solinas32_2e150m3_6limbs/femulDisplay.v
deleted file mode 100644
index 1c45ed233..000000000
--- a/src/Specific/solinas32_2e150m3_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e150m3_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e150m3_6limbs/fesquare.c b/src/Specific/solinas32_2e150m3_6limbs/fesquare.c
deleted file mode 100644
index 043ba5b12..000000000
--- a/src/Specific/solinas32_2e150m3_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) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((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))))) + (0x3 * ((uint64_t)x9 * x9)));
- { uint64_t x13 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x3 * (((uint64_t)x10 * x9) + ((uint64_t)x9 * x10))));
- { uint64_t x14 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x3 * (((uint64_t)x8 * x9) + (((uint64_t)x10 * x10) + ((uint64_t)x9 * x8)))));
- { uint64_t x15 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * (((uint64_t)x6 * x9) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((uint64_t)x9 * x6))))));
- { uint64_t x16 = (((uint64_t)x2 * x2) + (0x3 * (((uint64_t)x4 * x9) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + ((uint64_t)x9 * x4)))))));
- { uint64_t x17 = (x16 >> 0x19);
- { uint32_t x18 = ((uint32_t)x16 & 0x1ffffff);
- { uint64_t x19 = (x17 + x15);
- { uint64_t x20 = (x19 >> 0x19);
- { uint32_t x21 = ((uint32_t)x19 & 0x1ffffff);
- { uint64_t x22 = (x20 + x14);
- { uint64_t x23 = (x22 >> 0x19);
- { uint32_t x24 = ((uint32_t)x22 & 0x1ffffff);
- { uint64_t x25 = (x23 + x13);
- { uint32_t x26 = (uint32_t) (x25 >> 0x19);
- { uint32_t x27 = ((uint32_t)x25 & 0x1ffffff);
- { uint64_t x28 = (x26 + x12);
- { uint32_t x29 = (uint32_t) (x28 >> 0x19);
- { uint32_t x30 = ((uint32_t)x28 & 0x1ffffff);
- { uint64_t x31 = (x29 + x11);
- { uint32_t x32 = (uint32_t) (x31 >> 0x19);
- { uint32_t x33 = ((uint32_t)x31 & 0x1ffffff);
- { uint64_t x34 = (x18 + ((uint64_t)0x3 * x32));
- { uint32_t x35 = (uint32_t) (x34 >> 0x19);
- { uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- { uint32_t x37 = (x35 + x21);
- { uint32_t x38 = (x37 >> 0x19);
- { uint32_t x39 = (x37 & 0x1ffffff);
- 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_2e150m3_6limbs/fesquare.v b/src/Specific/solinas32_2e150m3_6limbs/fesquare.v
deleted file mode 100644
index 89af0cb03..000000000
--- a/src/Specific/solinas32_2e150m3_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e150m3_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_2e150m3_6limbs/fesquareDisplay.log b/src/Specific/solinas32_2e150m3_6limbs/fesquareDisplay.log
deleted file mode 100644
index 31d45f0a3..000000000
--- a/src/Specific/solinas32_2e150m3_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) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((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))))) + (0x3 * ((uint64_t)x9 * x9)));
- uint64_t x13 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x3 * (((uint64_t)x10 * x9) + ((uint64_t)x9 * x10))));
- uint64_t x14 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x3 * (((uint64_t)x8 * x9) + (((uint64_t)x10 * x10) + ((uint64_t)x9 * x8)))));
- uint64_t x15 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * (((uint64_t)x6 * x9) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((uint64_t)x9 * x6))))));
- uint64_t x16 = (((uint64_t)x2 * x2) + (0x3 * (((uint64_t)x4 * x9) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + ((uint64_t)x9 * x4)))))));
- uint64_t x17 = (x16 >> 0x19);
- uint32_t x18 = ((uint32_t)x16 & 0x1ffffff);
- uint64_t x19 = (x17 + x15);
- uint64_t x20 = (x19 >> 0x19);
- uint32_t x21 = ((uint32_t)x19 & 0x1ffffff);
- uint64_t x22 = (x20 + x14);
- uint64_t x23 = (x22 >> 0x19);
- uint32_t x24 = ((uint32_t)x22 & 0x1ffffff);
- uint64_t x25 = (x23 + x13);
- uint32_t x26 = (uint32_t) (x25 >> 0x19);
- uint32_t x27 = ((uint32_t)x25 & 0x1ffffff);
- uint64_t x28 = (x26 + x12);
- uint32_t x29 = (uint32_t) (x28 >> 0x19);
- uint32_t x30 = ((uint32_t)x28 & 0x1ffffff);
- uint64_t x31 = (x29 + x11);
- uint32_t x32 = (uint32_t) (x31 >> 0x19);
- uint32_t x33 = ((uint32_t)x31 & 0x1ffffff);
- uint64_t x34 = (x18 + ((uint64_t)0x3 * x32));
- uint32_t x35 = (uint32_t) (x34 >> 0x19);
- uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- uint32_t x37 = (x35 + x21);
- uint32_t x38 = (x37 >> 0x19);
- uint32_t x39 = (x37 & 0x1ffffff);
- 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_2e150m3_6limbs/fesquareDisplay.v b/src/Specific/solinas32_2e150m3_6limbs/fesquareDisplay.v
deleted file mode 100644
index e66521590..000000000
--- a/src/Specific/solinas32_2e150m3_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e150m3_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e150m3_6limbs/fesub.c b/src/Specific/solinas32_2e150m3_6limbs/fesub.c
deleted file mode 100644
index fd241a4d4..000000000
--- a/src/Specific/solinas32_2e150m3_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] = ((0x3fffffa + x5) - x15);
- out[1] = ((0x3fffffe + x7) - x17);
- out[2] = ((0x3fffffe + x9) - x19);
- out[3] = ((0x3fffffe + x11) - x21);
- out[4] = ((0x3fffffe + x13) - x23);
- out[5] = ((0x3fffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e150m3_6limbs/fesub.v b/src/Specific/solinas32_2e150m3_6limbs/fesub.v
deleted file mode 100644
index 5f21f06c8..000000000
--- a/src/Specific/solinas32_2e150m3_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e150m3_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_2e150m3_6limbs/fesubDisplay.log b/src/Specific/solinas32_2e150m3_6limbs/fesubDisplay.log
deleted file mode 100644
index 582cc74fa..000000000
--- a/src/Specific/solinas32_2e150m3_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,
- (((0x3fffffe + x12) - x22), ((0x3fffffe + x13) - x23), ((0x3fffffe + x11) - x21), ((0x3fffffe + x9) - x19), ((0x3fffffe + x7) - x17), ((0x3fffffa + 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_2e150m3_6limbs/fesubDisplay.v b/src/Specific/solinas32_2e150m3_6limbs/fesubDisplay.v
deleted file mode 100644
index 46981ad9e..000000000
--- a/src/Specific/solinas32_2e150m3_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e150m3_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e150m3_6limbs/freeze.c b/src/Specific/solinas32_2e150m3_6limbs/freeze.c
deleted file mode 100644
index 4dbed5747..000000000
--- a/src/Specific/solinas32_2e150m3_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 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffd);
- { uint32_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x13, Return x4, 0x1ffffff);
- { uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x16, Return x6, 0x1ffffff);
- { uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x8, 0x1ffffff);
- { uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x10, 0x1ffffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x9, 0x1ffffff);
- { uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- { uint32_t x30 = (x29 & 0x1fffffd);
- { uint32_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint32_t x34 = (x29 & 0x1ffffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 25 (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 & 0x1ffffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 25 (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 & 0x1ffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 25 (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 & 0x1ffffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 25 (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 & 0x1ffffff);
- { uint32_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (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_2e150m3_6limbs/freeze.v b/src/Specific/solinas32_2e150m3_6limbs/freeze.v
deleted file mode 100644
index 822a022bd..000000000
--- a/src/Specific/solinas32_2e150m3_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e150m3_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_2e150m3_6limbs/freezeDisplay.log b/src/Specific/solinas32_2e150m3_6limbs/freezeDisplay.log
deleted file mode 100644
index 849da0935..000000000
--- a/src/Specific/solinas32_2e150m3_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 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffd);
- uint32_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x13, Return x4, 0x1ffffff);
- uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x16, Return x6, 0x1ffffff);
- uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x8, 0x1ffffff);
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x10, 0x1ffffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x9, 0x1ffffff);
- uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- uint32_t x30 = (x29 & 0x1fffffd);
- uint32_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint32_t x34 = (x29 & 0x1ffffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 25 (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 & 0x1ffffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 25 (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 & 0x1ffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 25 (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 & 0x1ffffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 25 (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 & 0x1ffffff);
- uint32_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (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_2e150m3_6limbs/freezeDisplay.v b/src/Specific/solinas32_2e150m3_6limbs/freezeDisplay.v
deleted file mode 100644
index e0967ca28..000000000
--- a/src/Specific/solinas32_2e150m3_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e150m3_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e150m3_6limbs/py_interpreter.sh b/src/Specific/solinas32_2e150m3_6limbs/py_interpreter.sh
deleted file mode 100755
index c52299d11..000000000
--- a/src/Specific/solinas32_2e150m3_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**150 - 3' -Dmodulus_bytes='25' -Da24='121665'
diff --git a/src/Specific/solinas32_2e150m3_7limbs/CurveParameters.v b/src/Specific/solinas32_2e150m3_7limbs/CurveParameters.v
deleted file mode 100644
index c4e23850a..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^150 - 3
-Base: 21 + 3/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 21 + 3/7;
- bitwidth := 32;
- s := 2^150;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 7); [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_2e150m3_7limbs/Synthesis.v b/src/Specific/solinas32_2e150m3_7limbs/Synthesis.v
deleted file mode 100644
index 23e2dd792..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e150m3_7limbs.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_2e150m3_7limbs/compiler.sh b/src/Specific/solinas32_2e150m3_7limbs/compiler.sh
deleted file mode 100755
index 4e4c35171..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,22,21,22,21,21}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<150) - 3' "$@"
diff --git a/src/Specific/solinas32_2e150m3_7limbs/compilerxx.sh b/src/Specific/solinas32_2e150m3_7limbs/compilerxx.sh
deleted file mode 100755
index f26584589..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,22,21,22,21,21}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<150) - 3' "$@"
diff --git a/src/Specific/solinas32_2e150m3_7limbs/feadd.c b/src/Specific/solinas32_2e150m3_7limbs/feadd.c
deleted file mode 100644
index 5288d0bef..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e150m3_7limbs/feadd.v b/src/Specific/solinas32_2e150m3_7limbs/feadd.v
deleted file mode 100644
index a9a519dbd..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e150m3_7limbs.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_2e150m3_7limbs/feaddDisplay.log b/src/Specific/solinas32_2e150m3_7limbs/feaddDisplay.log
deleted file mode 100644
index d22997dcb..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e150m3_7limbs/feaddDisplay.v b/src/Specific/solinas32_2e150m3_7limbs/feaddDisplay.v
deleted file mode 100644
index 55e2a6ad9..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e150m3_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e150m3_7limbs/fecarry.v b/src/Specific/solinas32_2e150m3_7limbs/fecarry.v
deleted file mode 100644
index b11d002a9..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e150m3_7limbs.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_2e150m3_7limbs/fecarryDisplay.v b/src/Specific/solinas32_2e150m3_7limbs/fecarryDisplay.v
deleted file mode 100644
index f8c6bbc8a..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e150m3_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e150m3_7limbs/femul.c b/src/Specific/solinas32_2e150m3_7limbs/femul.c
deleted file mode 100644
index e8e91f157..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- { uint64_t x28 = (((uint64_t)x5 * x26) + ((0x2 * ((uint64_t)x7 * x27)) + (((uint64_t)x9 * x25) + ((0x2 * ((uint64_t)x11 * x23)) + (((uint64_t)x13 * x21) + ((0x2 * ((uint64_t)x15 * x19)) + ((uint64_t)x14 * x17)))))));
- { uint64_t x29 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + (((uint64_t)x11 * x21) + (((uint64_t)x13 * x19) + ((uint64_t)x15 * x17)))))) + (0x3 * ((uint64_t)x14 * x26)));
- { uint64_t x30 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + (((uint64_t)x9 * x21) + ((0x2 * ((uint64_t)x11 * x19)) + ((uint64_t)x13 * x17))))) + (0x3 * ((0x2 * ((uint64_t)x15 * x26)) + (0x2 * ((uint64_t)x14 * x27)))));
- { uint64_t x31 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + (((uint64_t)x9 * x19) + ((uint64_t)x11 * x17)))) + (0x3 * (((uint64_t)x13 * x26) + ((0x2 * ((uint64_t)x15 * x27)) + ((uint64_t)x14 * x25)))));
- { uint64_t x32 = ((((uint64_t)x5 * x21) + ((0x2 * ((uint64_t)x7 * x19)) + ((uint64_t)x9 * x17))) + (0x3 * ((0x2 * ((uint64_t)x11 * x26)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + (0x2 * ((uint64_t)x14 * x23)))))));
- { uint64_t x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) + (0x3 * (((uint64_t)x9 * x26) + ((0x2 * ((uint64_t)x11 * x27)) + (((uint64_t)x13 * x25) + ((0x2 * ((uint64_t)x15 * x23)) + ((uint64_t)x14 * x21)))))));
- { uint64_t x34 = (((uint64_t)x5 * x17) + (0x3 * ((0x2 * ((uint64_t)x7 * x26)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + (0x2 * ((uint64_t)x14 * x19)))))))));
- { uint32_t x35 = (uint32_t) (x34 >> 0x16);
- { uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- { uint64_t x37 = (x35 + x33);
- { uint32_t x38 = (uint32_t) (x37 >> 0x15);
- { uint32_t x39 = ((uint32_t)x37 & 0x1fffff);
- { uint64_t x40 = (x38 + x32);
- { uint32_t x41 = (uint32_t) (x40 >> 0x16);
- { uint32_t x42 = ((uint32_t)x40 & 0x3fffff);
- { uint64_t x43 = (x41 + x31);
- { uint32_t x44 = (uint32_t) (x43 >> 0x15);
- { uint32_t x45 = ((uint32_t)x43 & 0x1fffff);
- { uint64_t x46 = (x44 + x30);
- { uint32_t x47 = (uint32_t) (x46 >> 0x16);
- { uint32_t x48 = ((uint32_t)x46 & 0x3fffff);
- { uint64_t x49 = (x47 + x29);
- { uint32_t x50 = (uint32_t) (x49 >> 0x15);
- { uint32_t x51 = ((uint32_t)x49 & 0x1fffff);
- { uint64_t x52 = (x50 + x28);
- { uint32_t x53 = (uint32_t) (x52 >> 0x15);
- { uint32_t x54 = ((uint32_t)x52 & 0x1fffff);
- { uint32_t x55 = (x36 + (0x3 * x53));
- { uint32_t x56 = (x55 >> 0x16);
- { uint32_t x57 = (x55 & 0x3fffff);
- { uint32_t x58 = (x56 + x39);
- { uint32_t x59 = (x58 >> 0x15);
- { uint32_t x60 = (x58 & 0x1fffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e150m3_7limbs/femul.v b/src/Specific/solinas32_2e150m3_7limbs/femul.v
deleted file mode 100644
index 339b87342..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e150m3_7limbs.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_2e150m3_7limbs/femulDisplay.log b/src/Specific/solinas32_2e150m3_7limbs/femulDisplay.log
deleted file mode 100644
index a122fdd87..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint64_t x28 = (((uint64_t)x5 * x26) + ((0x2 * ((uint64_t)x7 * x27)) + (((uint64_t)x9 * x25) + ((0x2 * ((uint64_t)x11 * x23)) + (((uint64_t)x13 * x21) + ((0x2 * ((uint64_t)x15 * x19)) + ((uint64_t)x14 * x17)))))));
- uint64_t x29 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + (((uint64_t)x11 * x21) + (((uint64_t)x13 * x19) + ((uint64_t)x15 * x17)))))) + (0x3 * ((uint64_t)x14 * x26)));
- uint64_t x30 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + (((uint64_t)x9 * x21) + ((0x2 * ((uint64_t)x11 * x19)) + ((uint64_t)x13 * x17))))) + (0x3 * ((0x2 * ((uint64_t)x15 * x26)) + (0x2 * ((uint64_t)x14 * x27)))));
- uint64_t x31 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + (((uint64_t)x9 * x19) + ((uint64_t)x11 * x17)))) + (0x3 * (((uint64_t)x13 * x26) + ((0x2 * ((uint64_t)x15 * x27)) + ((uint64_t)x14 * x25)))));
- uint64_t x32 = ((((uint64_t)x5 * x21) + ((0x2 * ((uint64_t)x7 * x19)) + ((uint64_t)x9 * x17))) + (0x3 * ((0x2 * ((uint64_t)x11 * x26)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + (0x2 * ((uint64_t)x14 * x23)))))));
- uint64_t x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) + (0x3 * (((uint64_t)x9 * x26) + ((0x2 * ((uint64_t)x11 * x27)) + (((uint64_t)x13 * x25) + ((0x2 * ((uint64_t)x15 * x23)) + ((uint64_t)x14 * x21)))))));
- uint64_t x34 = (((uint64_t)x5 * x17) + (0x3 * ((0x2 * ((uint64_t)x7 * x26)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + (0x2 * ((uint64_t)x14 * x19)))))))));
- uint32_t x35 = (uint32_t) (x34 >> 0x16);
- uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- uint64_t x37 = (x35 + x33);
- uint32_t x38 = (uint32_t) (x37 >> 0x15);
- uint32_t x39 = ((uint32_t)x37 & 0x1fffff);
- uint64_t x40 = (x38 + x32);
- uint32_t x41 = (uint32_t) (x40 >> 0x16);
- uint32_t x42 = ((uint32_t)x40 & 0x3fffff);
- uint64_t x43 = (x41 + x31);
- uint32_t x44 = (uint32_t) (x43 >> 0x15);
- uint32_t x45 = ((uint32_t)x43 & 0x1fffff);
- uint64_t x46 = (x44 + x30);
- uint32_t x47 = (uint32_t) (x46 >> 0x16);
- uint32_t x48 = ((uint32_t)x46 & 0x3fffff);
- uint64_t x49 = (x47 + x29);
- uint32_t x50 = (uint32_t) (x49 >> 0x15);
- uint32_t x51 = ((uint32_t)x49 & 0x1fffff);
- uint64_t x52 = (x50 + x28);
- uint32_t x53 = (uint32_t) (x52 >> 0x15);
- uint32_t x54 = ((uint32_t)x52 & 0x1fffff);
- uint32_t x55 = (x36 + (0x3 * x53));
- uint32_t x56 = (x55 >> 0x16);
- uint32_t x57 = (x55 & 0x3fffff);
- uint32_t x58 = (x56 + x39);
- uint32_t x59 = (x58 >> 0x15);
- uint32_t x60 = (x58 & 0x1fffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e150m3_7limbs/femulDisplay.v b/src/Specific/solinas32_2e150m3_7limbs/femulDisplay.v
deleted file mode 100644
index ea75b22f9..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e150m3_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e150m3_7limbs/fesquare.c b/src/Specific/solinas32_2e150m3_7limbs/fesquare.c
deleted file mode 100644
index 21212e541..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x13 = (((uint64_t)x2 * x11) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x11 * x2)))))));
- { uint64_t x14 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x3 * ((uint64_t)x11 * x11)));
- { uint64_t x15 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x3 * ((0x2 * ((uint64_t)x12 * x11)) + (0x2 * ((uint64_t)x11 * x12)))));
- { uint64_t x16 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x3 * (((uint64_t)x10 * x11) + ((0x2 * ((uint64_t)x12 * x12)) + ((uint64_t)x11 * x10)))));
- { uint64_t x17 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x3 * ((0x2 * ((uint64_t)x8 * x11)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (0x2 * ((uint64_t)x11 * x8)))))));
- { uint64_t x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * (((uint64_t)x6 * x11) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((uint64_t)x11 * x6)))))));
- { uint64_t x19 = (((uint64_t)x2 * x2) + (0x3 * ((0x2 * ((uint64_t)x4 * x11)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (0x2 * ((uint64_t)x11 * x4)))))))));
- { uint32_t x20 = (uint32_t) (x19 >> 0x16);
- { uint32_t x21 = ((uint32_t)x19 & 0x3fffff);
- { uint64_t x22 = (x20 + x18);
- { uint32_t x23 = (uint32_t) (x22 >> 0x15);
- { uint32_t x24 = ((uint32_t)x22 & 0x1fffff);
- { uint64_t x25 = (x23 + x17);
- { uint32_t x26 = (uint32_t) (x25 >> 0x16);
- { uint32_t x27 = ((uint32_t)x25 & 0x3fffff);
- { uint64_t x28 = (x26 + x16);
- { uint32_t x29 = (uint32_t) (x28 >> 0x15);
- { uint32_t x30 = ((uint32_t)x28 & 0x1fffff);
- { uint64_t x31 = (x29 + x15);
- { uint32_t x32 = (uint32_t) (x31 >> 0x16);
- { uint32_t x33 = ((uint32_t)x31 & 0x3fffff);
- { uint64_t x34 = (x32 + x14);
- { uint32_t x35 = (uint32_t) (x34 >> 0x15);
- { uint32_t x36 = ((uint32_t)x34 & 0x1fffff);
- { uint64_t x37 = (x35 + x13);
- { uint32_t x38 = (uint32_t) (x37 >> 0x15);
- { uint32_t x39 = ((uint32_t)x37 & 0x1fffff);
- { uint32_t x40 = (x21 + (0x3 * x38));
- { uint32_t x41 = (x40 >> 0x16);
- { uint32_t x42 = (x40 & 0x3fffff);
- { uint32_t x43 = (x41 + x24);
- { uint32_t x44 = (x43 >> 0x15);
- { uint32_t x45 = (x43 & 0x1fffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e150m3_7limbs/fesquare.v b/src/Specific/solinas32_2e150m3_7limbs/fesquare.v
deleted file mode 100644
index 73249a2c7..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e150m3_7limbs.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_2e150m3_7limbs/fesquareDisplay.log b/src/Specific/solinas32_2e150m3_7limbs/fesquareDisplay.log
deleted file mode 100644
index b775e6872..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x13 = (((uint64_t)x2 * x11) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x11 * x2)))))));
- uint64_t x14 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x3 * ((uint64_t)x11 * x11)));
- uint64_t x15 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x3 * ((0x2 * ((uint64_t)x12 * x11)) + (0x2 * ((uint64_t)x11 * x12)))));
- uint64_t x16 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x3 * (((uint64_t)x10 * x11) + ((0x2 * ((uint64_t)x12 * x12)) + ((uint64_t)x11 * x10)))));
- uint64_t x17 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x3 * ((0x2 * ((uint64_t)x8 * x11)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (0x2 * ((uint64_t)x11 * x8)))))));
- uint64_t x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * (((uint64_t)x6 * x11) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((uint64_t)x11 * x6)))))));
- uint64_t x19 = (((uint64_t)x2 * x2) + (0x3 * ((0x2 * ((uint64_t)x4 * x11)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (0x2 * ((uint64_t)x11 * x4)))))))));
- uint32_t x20 = (uint32_t) (x19 >> 0x16);
- uint32_t x21 = ((uint32_t)x19 & 0x3fffff);
- uint64_t x22 = (x20 + x18);
- uint32_t x23 = (uint32_t) (x22 >> 0x15);
- uint32_t x24 = ((uint32_t)x22 & 0x1fffff);
- uint64_t x25 = (x23 + x17);
- uint32_t x26 = (uint32_t) (x25 >> 0x16);
- uint32_t x27 = ((uint32_t)x25 & 0x3fffff);
- uint64_t x28 = (x26 + x16);
- uint32_t x29 = (uint32_t) (x28 >> 0x15);
- uint32_t x30 = ((uint32_t)x28 & 0x1fffff);
- uint64_t x31 = (x29 + x15);
- uint32_t x32 = (uint32_t) (x31 >> 0x16);
- uint32_t x33 = ((uint32_t)x31 & 0x3fffff);
- uint64_t x34 = (x32 + x14);
- uint32_t x35 = (uint32_t) (x34 >> 0x15);
- uint32_t x36 = ((uint32_t)x34 & 0x1fffff);
- uint64_t x37 = (x35 + x13);
- uint32_t x38 = (uint32_t) (x37 >> 0x15);
- uint32_t x39 = ((uint32_t)x37 & 0x1fffff);
- uint32_t x40 = (x21 + (0x3 * x38));
- uint32_t x41 = (x40 >> 0x16);
- uint32_t x42 = (x40 & 0x3fffff);
- uint32_t x43 = (x41 + x24);
- uint32_t x44 = (x43 >> 0x15);
- uint32_t x45 = (x43 & 0x1fffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e150m3_7limbs/fesquareDisplay.v b/src/Specific/solinas32_2e150m3_7limbs/fesquareDisplay.v
deleted file mode 100644
index 09baa2aab..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e150m3_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e150m3_7limbs/fesub.c b/src/Specific/solinas32_2e150m3_7limbs/fesub.c
deleted file mode 100644
index 28bad45b5..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = ((0x7ffffa + x5) - x17);
- out[1] = ((0x3ffffe + x7) - x19);
- out[2] = ((0x7ffffe + x9) - x21);
- out[3] = ((0x3ffffe + x11) - x23);
- out[4] = ((0x7ffffe + x13) - x25);
- out[5] = ((0x3ffffe + x15) - x27);
- out[6] = ((0x3ffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e150m3_7limbs/fesub.v b/src/Specific/solinas32_2e150m3_7limbs/fesub.v
deleted file mode 100644
index e1d694fec..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e150m3_7limbs.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_2e150m3_7limbs/fesubDisplay.log b/src/Specific/solinas32_2e150m3_7limbs/fesubDisplay.log
deleted file mode 100644
index 9bb97f7e2..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0x3ffffe + x14) - x26), ((0x3ffffe + x15) - x27), ((0x7ffffe + x13) - x25), ((0x3ffffe + x11) - x23), ((0x7ffffe + x9) - x21), ((0x3ffffe + x7) - x19), ((0x7ffffa + x5) - x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e150m3_7limbs/fesubDisplay.v b/src/Specific/solinas32_2e150m3_7limbs/fesubDisplay.v
deleted file mode 100644
index 1ae520389..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e150m3_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e150m3_7limbs/freeze.c b/src/Specific/solinas32_2e150m3_7limbs/freeze.c
deleted file mode 100644
index 052baf1be..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffd);
- { uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0x1fffff);
- { uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0x3fffff);
- { uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0x1fffff);
- { uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0x3fffff);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0x1fffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0x1fffff);
- { uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- { uint32_t x35 = (x34 & 0x3ffffd);
- { uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint32_t x39 = (x34 & 0x1fffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint32_t x43 = (x34 & 0x3fffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint32_t x47 = (x34 & 0x1fffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint32_t x51 = (x34 & 0x3fffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint32_t x55 = (x34 & 0x1fffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint32_t x59 = (x34 & 0x1fffff);
- { uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e150m3_7limbs/freeze.v b/src/Specific/solinas32_2e150m3_7limbs/freeze.v
deleted file mode 100644
index 33b764dd0..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e150m3_7limbs.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_2e150m3_7limbs/freezeDisplay.log b/src/Specific/solinas32_2e150m3_7limbs/freezeDisplay.log
deleted file mode 100644
index 5dc979b5d..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffd);
- uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0x1fffff);
- uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0x3fffff);
- uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0x1fffff);
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0x3fffff);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0x1fffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0x1fffff);
- uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- uint32_t x35 = (x34 & 0x3ffffd);
- uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint32_t x39 = (x34 & 0x1fffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint32_t x43 = (x34 & 0x3fffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint32_t x47 = (x34 & 0x1fffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint32_t x51 = (x34 & 0x3fffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint32_t x55 = (x34 & 0x1fffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint32_t x59 = (x34 & 0x1fffff);
- uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e150m3_7limbs/freezeDisplay.v b/src/Specific/solinas32_2e150m3_7limbs/freezeDisplay.v
deleted file mode 100644
index 238d7f8f7..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e150m3_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e150m3_7limbs/py_interpreter.sh b/src/Specific/solinas32_2e150m3_7limbs/py_interpreter.sh
deleted file mode 100755
index 1c4c8ea30..000000000
--- a/src/Specific/solinas32_2e150m3_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**150 - 3' -Dmodulus_bytes='21 + 3/7' -Da24='121665'
diff --git a/src/Specific/solinas32_2e150m5_6limbs/CurveParameters.v b/src/Specific/solinas32_2e150m5_6limbs/CurveParameters.v
deleted file mode 100644
index 4ee09cc7d..000000000
--- a/src/Specific/solinas32_2e150m5_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^150 - 5
-Base: 25
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 25;
- bitwidth := 32;
- s := 2^150;
- c := [(1, 5)];
- 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_2e150m5_6limbs/Synthesis.v b/src/Specific/solinas32_2e150m5_6limbs/Synthesis.v
deleted file mode 100644
index cbc77e86b..000000000
--- a/src/Specific/solinas32_2e150m5_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e150m5_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_2e150m5_6limbs/compiler.sh b/src/Specific/solinas32_2e150m5_6limbs/compiler.sh
deleted file mode 100755
index 5fa75c707..000000000
--- a/src/Specific/solinas32_2e150m5_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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,25,25,25,25}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<150) - 5' "$@"
diff --git a/src/Specific/solinas32_2e150m5_6limbs/compilerxx.sh b/src/Specific/solinas32_2e150m5_6limbs/compilerxx.sh
deleted file mode 100755
index c733f3187..000000000
--- a/src/Specific/solinas32_2e150m5_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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,25,25,25,25}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<150) - 5' "$@"
diff --git a/src/Specific/solinas32_2e150m5_6limbs/feadd.c b/src/Specific/solinas32_2e150m5_6limbs/feadd.c
deleted file mode 100644
index 5b654b294..000000000
--- a/src/Specific/solinas32_2e150m5_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_2e150m5_6limbs/feadd.v b/src/Specific/solinas32_2e150m5_6limbs/feadd.v
deleted file mode 100644
index d8620b268..000000000
--- a/src/Specific/solinas32_2e150m5_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e150m5_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_2e150m5_6limbs/feaddDisplay.log b/src/Specific/solinas32_2e150m5_6limbs/feaddDisplay.log
deleted file mode 100644
index 1084b2659..000000000
--- a/src/Specific/solinas32_2e150m5_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_2e150m5_6limbs/feaddDisplay.v b/src/Specific/solinas32_2e150m5_6limbs/feaddDisplay.v
deleted file mode 100644
index deeb44400..000000000
--- a/src/Specific/solinas32_2e150m5_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e150m5_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e150m5_6limbs/fecarry.v b/src/Specific/solinas32_2e150m5_6limbs/fecarry.v
deleted file mode 100644
index 77e8ff44e..000000000
--- a/src/Specific/solinas32_2e150m5_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e150m5_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_2e150m5_6limbs/fecarryDisplay.v b/src/Specific/solinas32_2e150m5_6limbs/fecarryDisplay.v
deleted file mode 100644
index 850b217ae..000000000
--- a/src/Specific/solinas32_2e150m5_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e150m5_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e150m5_6limbs/femul.c b/src/Specific/solinas32_2e150m5_6limbs/femul.c
deleted file mode 100644
index 7c3a9970d..000000000
--- a/src/Specific/solinas32_2e150m5_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) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + (((uint64_t)x11 * x19) + (((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))))) + (0x5 * ((uint64_t)x12 * x22)));
- { uint64_t x26 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + (((uint64_t)x9 * x17) + ((uint64_t)x11 * x15)))) + (0x5 * (((uint64_t)x13 * x22) + ((uint64_t)x12 * x23))));
- { uint64_t x27 = ((((uint64_t)x5 * x19) + (((uint64_t)x7 * x17) + ((uint64_t)x9 * x15))) + (0x5 * (((uint64_t)x11 * x22) + (((uint64_t)x13 * x23) + ((uint64_t)x12 * x21)))));
- { uint64_t x28 = ((((uint64_t)x5 * x17) + ((uint64_t)x7 * x15)) + (0x5 * (((uint64_t)x9 * x22) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x12 * x19))))));
- { uint64_t x29 = (((uint64_t)x5 * x15) + (0x5 * (((uint64_t)x7 * x22) + (((uint64_t)x9 * x23) + (((uint64_t)x11 * x21) + (((uint64_t)x13 * x19) + ((uint64_t)x12 * x17)))))));
- { uint64_t x30 = (x29 >> 0x19);
- { uint32_t x31 = ((uint32_t)x29 & 0x1ffffff);
- { uint64_t x32 = (x30 + x28);
- { uint64_t x33 = (x32 >> 0x19);
- { uint32_t x34 = ((uint32_t)x32 & 0x1ffffff);
- { uint64_t x35 = (x33 + x27);
- { uint64_t x36 = (x35 >> 0x19);
- { uint32_t x37 = ((uint32_t)x35 & 0x1ffffff);
- { uint64_t x38 = (x36 + x26);
- { uint64_t x39 = (x38 >> 0x19);
- { uint32_t x40 = ((uint32_t)x38 & 0x1ffffff);
- { uint64_t x41 = (x39 + x25);
- { uint32_t x42 = (uint32_t) (x41 >> 0x19);
- { uint32_t x43 = ((uint32_t)x41 & 0x1ffffff);
- { uint64_t x44 = (x42 + x24);
- { uint32_t x45 = (uint32_t) (x44 >> 0x19);
- { uint32_t x46 = ((uint32_t)x44 & 0x1ffffff);
- { uint64_t x47 = (x31 + ((uint64_t)0x5 * x45));
- { uint32_t x48 = (uint32_t) (x47 >> 0x19);
- { uint32_t x49 = ((uint32_t)x47 & 0x1ffffff);
- { uint32_t x50 = (x48 + x34);
- { uint32_t x51 = (x50 >> 0x19);
- { uint32_t x52 = (x50 & 0x1ffffff);
- 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_2e150m5_6limbs/femul.v b/src/Specific/solinas32_2e150m5_6limbs/femul.v
deleted file mode 100644
index e36c4d7df..000000000
--- a/src/Specific/solinas32_2e150m5_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e150m5_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_2e150m5_6limbs/femulDisplay.log b/src/Specific/solinas32_2e150m5_6limbs/femulDisplay.log
deleted file mode 100644
index a78dc39c1..000000000
--- a/src/Specific/solinas32_2e150m5_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) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + (((uint64_t)x11 * x19) + (((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))))) + (0x5 * ((uint64_t)x12 * x22)));
- uint64_t x26 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + (((uint64_t)x9 * x17) + ((uint64_t)x11 * x15)))) + (0x5 * (((uint64_t)x13 * x22) + ((uint64_t)x12 * x23))));
- uint64_t x27 = ((((uint64_t)x5 * x19) + (((uint64_t)x7 * x17) + ((uint64_t)x9 * x15))) + (0x5 * (((uint64_t)x11 * x22) + (((uint64_t)x13 * x23) + ((uint64_t)x12 * x21)))));
- uint64_t x28 = ((((uint64_t)x5 * x17) + ((uint64_t)x7 * x15)) + (0x5 * (((uint64_t)x9 * x22) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x12 * x19))))));
- uint64_t x29 = (((uint64_t)x5 * x15) + (0x5 * (((uint64_t)x7 * x22) + (((uint64_t)x9 * x23) + (((uint64_t)x11 * x21) + (((uint64_t)x13 * x19) + ((uint64_t)x12 * x17)))))));
- uint64_t x30 = (x29 >> 0x19);
- uint32_t x31 = ((uint32_t)x29 & 0x1ffffff);
- uint64_t x32 = (x30 + x28);
- uint64_t x33 = (x32 >> 0x19);
- uint32_t x34 = ((uint32_t)x32 & 0x1ffffff);
- uint64_t x35 = (x33 + x27);
- uint64_t x36 = (x35 >> 0x19);
- uint32_t x37 = ((uint32_t)x35 & 0x1ffffff);
- uint64_t x38 = (x36 + x26);
- uint64_t x39 = (x38 >> 0x19);
- uint32_t x40 = ((uint32_t)x38 & 0x1ffffff);
- uint64_t x41 = (x39 + x25);
- uint32_t x42 = (uint32_t) (x41 >> 0x19);
- uint32_t x43 = ((uint32_t)x41 & 0x1ffffff);
- uint64_t x44 = (x42 + x24);
- uint32_t x45 = (uint32_t) (x44 >> 0x19);
- uint32_t x46 = ((uint32_t)x44 & 0x1ffffff);
- uint64_t x47 = (x31 + ((uint64_t)0x5 * x45));
- uint32_t x48 = (uint32_t) (x47 >> 0x19);
- uint32_t x49 = ((uint32_t)x47 & 0x1ffffff);
- uint32_t x50 = (x48 + x34);
- uint32_t x51 = (x50 >> 0x19);
- uint32_t x52 = (x50 & 0x1ffffff);
- 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_2e150m5_6limbs/femulDisplay.v b/src/Specific/solinas32_2e150m5_6limbs/femulDisplay.v
deleted file mode 100644
index 32f4f6809..000000000
--- a/src/Specific/solinas32_2e150m5_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e150m5_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e150m5_6limbs/fesquare.c b/src/Specific/solinas32_2e150m5_6limbs/fesquare.c
deleted file mode 100644
index 7210a32c4..000000000
--- a/src/Specific/solinas32_2e150m5_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) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((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))))) + (0x5 * ((uint64_t)x9 * x9)));
- { uint64_t x13 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x5 * (((uint64_t)x10 * x9) + ((uint64_t)x9 * x10))));
- { uint64_t x14 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x5 * (((uint64_t)x8 * x9) + (((uint64_t)x10 * x10) + ((uint64_t)x9 * x8)))));
- { uint64_t x15 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x5 * (((uint64_t)x6 * x9) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((uint64_t)x9 * x6))))));
- { uint64_t x16 = (((uint64_t)x2 * x2) + (0x5 * (((uint64_t)x4 * x9) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + ((uint64_t)x9 * x4)))))));
- { uint64_t x17 = (x16 >> 0x19);
- { uint32_t x18 = ((uint32_t)x16 & 0x1ffffff);
- { uint64_t x19 = (x17 + x15);
- { uint64_t x20 = (x19 >> 0x19);
- { uint32_t x21 = ((uint32_t)x19 & 0x1ffffff);
- { uint64_t x22 = (x20 + x14);
- { uint64_t x23 = (x22 >> 0x19);
- { uint32_t x24 = ((uint32_t)x22 & 0x1ffffff);
- { uint64_t x25 = (x23 + x13);
- { uint64_t x26 = (x25 >> 0x19);
- { uint32_t x27 = ((uint32_t)x25 & 0x1ffffff);
- { uint64_t x28 = (x26 + x12);
- { uint32_t x29 = (uint32_t) (x28 >> 0x19);
- { uint32_t x30 = ((uint32_t)x28 & 0x1ffffff);
- { uint64_t x31 = (x29 + x11);
- { uint32_t x32 = (uint32_t) (x31 >> 0x19);
- { uint32_t x33 = ((uint32_t)x31 & 0x1ffffff);
- { uint64_t x34 = (x18 + ((uint64_t)0x5 * x32));
- { uint32_t x35 = (uint32_t) (x34 >> 0x19);
- { uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- { uint32_t x37 = (x35 + x21);
- { uint32_t x38 = (x37 >> 0x19);
- { uint32_t x39 = (x37 & 0x1ffffff);
- 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_2e150m5_6limbs/fesquare.v b/src/Specific/solinas32_2e150m5_6limbs/fesquare.v
deleted file mode 100644
index d63e06bf1..000000000
--- a/src/Specific/solinas32_2e150m5_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e150m5_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_2e150m5_6limbs/fesquareDisplay.log b/src/Specific/solinas32_2e150m5_6limbs/fesquareDisplay.log
deleted file mode 100644
index e32ea3b81..000000000
--- a/src/Specific/solinas32_2e150m5_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) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((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))))) + (0x5 * ((uint64_t)x9 * x9)));
- uint64_t x13 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x5 * (((uint64_t)x10 * x9) + ((uint64_t)x9 * x10))));
- uint64_t x14 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x5 * (((uint64_t)x8 * x9) + (((uint64_t)x10 * x10) + ((uint64_t)x9 * x8)))));
- uint64_t x15 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x5 * (((uint64_t)x6 * x9) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((uint64_t)x9 * x6))))));
- uint64_t x16 = (((uint64_t)x2 * x2) + (0x5 * (((uint64_t)x4 * x9) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + ((uint64_t)x9 * x4)))))));
- uint64_t x17 = (x16 >> 0x19);
- uint32_t x18 = ((uint32_t)x16 & 0x1ffffff);
- uint64_t x19 = (x17 + x15);
- uint64_t x20 = (x19 >> 0x19);
- uint32_t x21 = ((uint32_t)x19 & 0x1ffffff);
- uint64_t x22 = (x20 + x14);
- uint64_t x23 = (x22 >> 0x19);
- uint32_t x24 = ((uint32_t)x22 & 0x1ffffff);
- uint64_t x25 = (x23 + x13);
- uint64_t x26 = (x25 >> 0x19);
- uint32_t x27 = ((uint32_t)x25 & 0x1ffffff);
- uint64_t x28 = (x26 + x12);
- uint32_t x29 = (uint32_t) (x28 >> 0x19);
- uint32_t x30 = ((uint32_t)x28 & 0x1ffffff);
- uint64_t x31 = (x29 + x11);
- uint32_t x32 = (uint32_t) (x31 >> 0x19);
- uint32_t x33 = ((uint32_t)x31 & 0x1ffffff);
- uint64_t x34 = (x18 + ((uint64_t)0x5 * x32));
- uint32_t x35 = (uint32_t) (x34 >> 0x19);
- uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- uint32_t x37 = (x35 + x21);
- uint32_t x38 = (x37 >> 0x19);
- uint32_t x39 = (x37 & 0x1ffffff);
- 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_2e150m5_6limbs/fesquareDisplay.v b/src/Specific/solinas32_2e150m5_6limbs/fesquareDisplay.v
deleted file mode 100644
index 2b54aac4d..000000000
--- a/src/Specific/solinas32_2e150m5_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e150m5_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e150m5_6limbs/fesub.c b/src/Specific/solinas32_2e150m5_6limbs/fesub.c
deleted file mode 100644
index a2bae1877..000000000
--- a/src/Specific/solinas32_2e150m5_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] = ((0x3fffff6 + x5) - x15);
- out[1] = ((0x3fffffe + x7) - x17);
- out[2] = ((0x3fffffe + x9) - x19);
- out[3] = ((0x3fffffe + x11) - x21);
- out[4] = ((0x3fffffe + x13) - x23);
- out[5] = ((0x3fffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e150m5_6limbs/fesub.v b/src/Specific/solinas32_2e150m5_6limbs/fesub.v
deleted file mode 100644
index df8abaa6b..000000000
--- a/src/Specific/solinas32_2e150m5_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e150m5_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_2e150m5_6limbs/fesubDisplay.log b/src/Specific/solinas32_2e150m5_6limbs/fesubDisplay.log
deleted file mode 100644
index 1229647ea..000000000
--- a/src/Specific/solinas32_2e150m5_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,
- (((0x3fffffe + x12) - x22), ((0x3fffffe + x13) - x23), ((0x3fffffe + x11) - x21), ((0x3fffffe + x9) - x19), ((0x3fffffe + x7) - x17), ((0x3fffff6 + 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_2e150m5_6limbs/fesubDisplay.v b/src/Specific/solinas32_2e150m5_6limbs/fesubDisplay.v
deleted file mode 100644
index 74b7b3607..000000000
--- a/src/Specific/solinas32_2e150m5_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e150m5_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e150m5_6limbs/freeze.c b/src/Specific/solinas32_2e150m5_6limbs/freeze.c
deleted file mode 100644
index 877b3693b..000000000
--- a/src/Specific/solinas32_2e150m5_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 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffb);
- { uint32_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x13, Return x4, 0x1ffffff);
- { uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x16, Return x6, 0x1ffffff);
- { uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x8, 0x1ffffff);
- { uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x10, 0x1ffffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x9, 0x1ffffff);
- { uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- { uint32_t x30 = (x29 & 0x1fffffb);
- { uint32_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint32_t x34 = (x29 & 0x1ffffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 25 (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 & 0x1ffffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 25 (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 & 0x1ffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 25 (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 & 0x1ffffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 25 (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 & 0x1ffffff);
- { uint32_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (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_2e150m5_6limbs/freeze.v b/src/Specific/solinas32_2e150m5_6limbs/freeze.v
deleted file mode 100644
index 847c9b7e0..000000000
--- a/src/Specific/solinas32_2e150m5_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e150m5_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_2e150m5_6limbs/freezeDisplay.log b/src/Specific/solinas32_2e150m5_6limbs/freezeDisplay.log
deleted file mode 100644
index 9a4af32ee..000000000
--- a/src/Specific/solinas32_2e150m5_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 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffb);
- uint32_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x13, Return x4, 0x1ffffff);
- uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x16, Return x6, 0x1ffffff);
- uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x8, 0x1ffffff);
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x10, 0x1ffffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x9, 0x1ffffff);
- uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- uint32_t x30 = (x29 & 0x1fffffb);
- uint32_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint32_t x34 = (x29 & 0x1ffffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 25 (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 & 0x1ffffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 25 (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 & 0x1ffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 25 (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 & 0x1ffffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 25 (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 & 0x1ffffff);
- uint32_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (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_2e150m5_6limbs/freezeDisplay.v b/src/Specific/solinas32_2e150m5_6limbs/freezeDisplay.v
deleted file mode 100644
index 775b893e4..000000000
--- a/src/Specific/solinas32_2e150m5_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e150m5_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e150m5_6limbs/py_interpreter.sh b/src/Specific/solinas32_2e150m5_6limbs/py_interpreter.sh
deleted file mode 100755
index dd832d5a7..000000000
--- a/src/Specific/solinas32_2e150m5_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**150 - 5' -Dmodulus_bytes='25' -Da24='121665'
diff --git a/src/Specific/solinas32_2e150m5_7limbs/CurveParameters.v b/src/Specific/solinas32_2e150m5_7limbs/CurveParameters.v
deleted file mode 100644
index 03525bdcc..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^150 - 5
-Base: 21 + 3/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 21 + 3/7;
- bitwidth := 32;
- s := 2^150;
- c := [(1, 5)];
- carry_chains := Some [seq 0 (pred 7); [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_2e150m5_7limbs/Synthesis.v b/src/Specific/solinas32_2e150m5_7limbs/Synthesis.v
deleted file mode 100644
index b627664df..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e150m5_7limbs.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_2e150m5_7limbs/compiler.sh b/src/Specific/solinas32_2e150m5_7limbs/compiler.sh
deleted file mode 100755
index de962e3d4..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,22,21,22,21,21}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<150) - 5' "$@"
diff --git a/src/Specific/solinas32_2e150m5_7limbs/compilerxx.sh b/src/Specific/solinas32_2e150m5_7limbs/compilerxx.sh
deleted file mode 100755
index 79d9d9241..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,22,21,22,21,21}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<150) - 5' "$@"
diff --git a/src/Specific/solinas32_2e150m5_7limbs/feadd.c b/src/Specific/solinas32_2e150m5_7limbs/feadd.c
deleted file mode 100644
index 5288d0bef..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e150m5_7limbs/feadd.v b/src/Specific/solinas32_2e150m5_7limbs/feadd.v
deleted file mode 100644
index bf9d67467..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e150m5_7limbs.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_2e150m5_7limbs/feaddDisplay.log b/src/Specific/solinas32_2e150m5_7limbs/feaddDisplay.log
deleted file mode 100644
index d22997dcb..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e150m5_7limbs/feaddDisplay.v b/src/Specific/solinas32_2e150m5_7limbs/feaddDisplay.v
deleted file mode 100644
index 5397e80b5..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e150m5_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e150m5_7limbs/fecarry.v b/src/Specific/solinas32_2e150m5_7limbs/fecarry.v
deleted file mode 100644
index f8d231f26..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e150m5_7limbs.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_2e150m5_7limbs/fecarryDisplay.v b/src/Specific/solinas32_2e150m5_7limbs/fecarryDisplay.v
deleted file mode 100644
index b82fa9dee..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e150m5_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e150m5_7limbs/femul.c b/src/Specific/solinas32_2e150m5_7limbs/femul.c
deleted file mode 100644
index 267c331ee..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- { uint64_t x28 = (((uint64_t)x5 * x26) + ((0x2 * ((uint64_t)x7 * x27)) + (((uint64_t)x9 * x25) + ((0x2 * ((uint64_t)x11 * x23)) + (((uint64_t)x13 * x21) + ((0x2 * ((uint64_t)x15 * x19)) + ((uint64_t)x14 * x17)))))));
- { uint64_t x29 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + (((uint64_t)x11 * x21) + (((uint64_t)x13 * x19) + ((uint64_t)x15 * x17)))))) + (0x5 * ((uint64_t)x14 * x26)));
- { uint64_t x30 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + (((uint64_t)x9 * x21) + ((0x2 * ((uint64_t)x11 * x19)) + ((uint64_t)x13 * x17))))) + (0x5 * ((0x2 * ((uint64_t)x15 * x26)) + (0x2 * ((uint64_t)x14 * x27)))));
- { uint64_t x31 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + (((uint64_t)x9 * x19) + ((uint64_t)x11 * x17)))) + (0x5 * (((uint64_t)x13 * x26) + ((0x2 * ((uint64_t)x15 * x27)) + ((uint64_t)x14 * x25)))));
- { uint64_t x32 = ((((uint64_t)x5 * x21) + ((0x2 * ((uint64_t)x7 * x19)) + ((uint64_t)x9 * x17))) + (0x5 * ((0x2 * ((uint64_t)x11 * x26)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + (0x2 * ((uint64_t)x14 * x23)))))));
- { uint64_t x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) + (0x5 * (((uint64_t)x9 * x26) + ((0x2 * ((uint64_t)x11 * x27)) + (((uint64_t)x13 * x25) + ((0x2 * ((uint64_t)x15 * x23)) + ((uint64_t)x14 * x21)))))));
- { uint64_t x34 = (((uint64_t)x5 * x17) + (0x5 * ((0x2 * ((uint64_t)x7 * x26)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + (0x2 * ((uint64_t)x14 * x19)))))))));
- { uint32_t x35 = (uint32_t) (x34 >> 0x16);
- { uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- { uint64_t x37 = (x35 + x33);
- { uint32_t x38 = (uint32_t) (x37 >> 0x15);
- { uint32_t x39 = ((uint32_t)x37 & 0x1fffff);
- { uint64_t x40 = (x38 + x32);
- { uint32_t x41 = (uint32_t) (x40 >> 0x16);
- { uint32_t x42 = ((uint32_t)x40 & 0x3fffff);
- { uint64_t x43 = (x41 + x31);
- { uint32_t x44 = (uint32_t) (x43 >> 0x15);
- { uint32_t x45 = ((uint32_t)x43 & 0x1fffff);
- { uint64_t x46 = (x44 + x30);
- { uint32_t x47 = (uint32_t) (x46 >> 0x16);
- { uint32_t x48 = ((uint32_t)x46 & 0x3fffff);
- { uint64_t x49 = (x47 + x29);
- { uint32_t x50 = (uint32_t) (x49 >> 0x15);
- { uint32_t x51 = ((uint32_t)x49 & 0x1fffff);
- { uint64_t x52 = (x50 + x28);
- { uint32_t x53 = (uint32_t) (x52 >> 0x15);
- { uint32_t x54 = ((uint32_t)x52 & 0x1fffff);
- { uint32_t x55 = (x36 + (0x5 * x53));
- { uint32_t x56 = (x55 >> 0x16);
- { uint32_t x57 = (x55 & 0x3fffff);
- { uint32_t x58 = (x56 + x39);
- { uint32_t x59 = (x58 >> 0x15);
- { uint32_t x60 = (x58 & 0x1fffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e150m5_7limbs/femul.v b/src/Specific/solinas32_2e150m5_7limbs/femul.v
deleted file mode 100644
index a853c48d6..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e150m5_7limbs.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_2e150m5_7limbs/femulDisplay.log b/src/Specific/solinas32_2e150m5_7limbs/femulDisplay.log
deleted file mode 100644
index 05cfd1066..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint64_t x28 = (((uint64_t)x5 * x26) + ((0x2 * ((uint64_t)x7 * x27)) + (((uint64_t)x9 * x25) + ((0x2 * ((uint64_t)x11 * x23)) + (((uint64_t)x13 * x21) + ((0x2 * ((uint64_t)x15 * x19)) + ((uint64_t)x14 * x17)))))));
- uint64_t x29 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + (((uint64_t)x11 * x21) + (((uint64_t)x13 * x19) + ((uint64_t)x15 * x17)))))) + (0x5 * ((uint64_t)x14 * x26)));
- uint64_t x30 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + (((uint64_t)x9 * x21) + ((0x2 * ((uint64_t)x11 * x19)) + ((uint64_t)x13 * x17))))) + (0x5 * ((0x2 * ((uint64_t)x15 * x26)) + (0x2 * ((uint64_t)x14 * x27)))));
- uint64_t x31 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + (((uint64_t)x9 * x19) + ((uint64_t)x11 * x17)))) + (0x5 * (((uint64_t)x13 * x26) + ((0x2 * ((uint64_t)x15 * x27)) + ((uint64_t)x14 * x25)))));
- uint64_t x32 = ((((uint64_t)x5 * x21) + ((0x2 * ((uint64_t)x7 * x19)) + ((uint64_t)x9 * x17))) + (0x5 * ((0x2 * ((uint64_t)x11 * x26)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + (0x2 * ((uint64_t)x14 * x23)))))));
- uint64_t x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) + (0x5 * (((uint64_t)x9 * x26) + ((0x2 * ((uint64_t)x11 * x27)) + (((uint64_t)x13 * x25) + ((0x2 * ((uint64_t)x15 * x23)) + ((uint64_t)x14 * x21)))))));
- uint64_t x34 = (((uint64_t)x5 * x17) + (0x5 * ((0x2 * ((uint64_t)x7 * x26)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + (0x2 * ((uint64_t)x14 * x19)))))))));
- uint32_t x35 = (uint32_t) (x34 >> 0x16);
- uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- uint64_t x37 = (x35 + x33);
- uint32_t x38 = (uint32_t) (x37 >> 0x15);
- uint32_t x39 = ((uint32_t)x37 & 0x1fffff);
- uint64_t x40 = (x38 + x32);
- uint32_t x41 = (uint32_t) (x40 >> 0x16);
- uint32_t x42 = ((uint32_t)x40 & 0x3fffff);
- uint64_t x43 = (x41 + x31);
- uint32_t x44 = (uint32_t) (x43 >> 0x15);
- uint32_t x45 = ((uint32_t)x43 & 0x1fffff);
- uint64_t x46 = (x44 + x30);
- uint32_t x47 = (uint32_t) (x46 >> 0x16);
- uint32_t x48 = ((uint32_t)x46 & 0x3fffff);
- uint64_t x49 = (x47 + x29);
- uint32_t x50 = (uint32_t) (x49 >> 0x15);
- uint32_t x51 = ((uint32_t)x49 & 0x1fffff);
- uint64_t x52 = (x50 + x28);
- uint32_t x53 = (uint32_t) (x52 >> 0x15);
- uint32_t x54 = ((uint32_t)x52 & 0x1fffff);
- uint32_t x55 = (x36 + (0x5 * x53));
- uint32_t x56 = (x55 >> 0x16);
- uint32_t x57 = (x55 & 0x3fffff);
- uint32_t x58 = (x56 + x39);
- uint32_t x59 = (x58 >> 0x15);
- uint32_t x60 = (x58 & 0x1fffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e150m5_7limbs/femulDisplay.v b/src/Specific/solinas32_2e150m5_7limbs/femulDisplay.v
deleted file mode 100644
index 85482485b..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e150m5_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e150m5_7limbs/fesquare.c b/src/Specific/solinas32_2e150m5_7limbs/fesquare.c
deleted file mode 100644
index e29bdb4c9..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x13 = (((uint64_t)x2 * x11) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x11 * x2)))))));
- { uint64_t x14 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x5 * ((uint64_t)x11 * x11)));
- { uint64_t x15 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x5 * ((0x2 * ((uint64_t)x12 * x11)) + (0x2 * ((uint64_t)x11 * x12)))));
- { uint64_t x16 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x5 * (((uint64_t)x10 * x11) + ((0x2 * ((uint64_t)x12 * x12)) + ((uint64_t)x11 * x10)))));
- { uint64_t x17 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x5 * ((0x2 * ((uint64_t)x8 * x11)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (0x2 * ((uint64_t)x11 * x8)))))));
- { uint64_t x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x5 * (((uint64_t)x6 * x11) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((uint64_t)x11 * x6)))))));
- { uint64_t x19 = (((uint64_t)x2 * x2) + (0x5 * ((0x2 * ((uint64_t)x4 * x11)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (0x2 * ((uint64_t)x11 * x4)))))))));
- { uint32_t x20 = (uint32_t) (x19 >> 0x16);
- { uint32_t x21 = ((uint32_t)x19 & 0x3fffff);
- { uint64_t x22 = (x20 + x18);
- { uint32_t x23 = (uint32_t) (x22 >> 0x15);
- { uint32_t x24 = ((uint32_t)x22 & 0x1fffff);
- { uint64_t x25 = (x23 + x17);
- { uint32_t x26 = (uint32_t) (x25 >> 0x16);
- { uint32_t x27 = ((uint32_t)x25 & 0x3fffff);
- { uint64_t x28 = (x26 + x16);
- { uint32_t x29 = (uint32_t) (x28 >> 0x15);
- { uint32_t x30 = ((uint32_t)x28 & 0x1fffff);
- { uint64_t x31 = (x29 + x15);
- { uint32_t x32 = (uint32_t) (x31 >> 0x16);
- { uint32_t x33 = ((uint32_t)x31 & 0x3fffff);
- { uint64_t x34 = (x32 + x14);
- { uint32_t x35 = (uint32_t) (x34 >> 0x15);
- { uint32_t x36 = ((uint32_t)x34 & 0x1fffff);
- { uint64_t x37 = (x35 + x13);
- { uint32_t x38 = (uint32_t) (x37 >> 0x15);
- { uint32_t x39 = ((uint32_t)x37 & 0x1fffff);
- { uint32_t x40 = (x21 + (0x5 * x38));
- { uint32_t x41 = (x40 >> 0x16);
- { uint32_t x42 = (x40 & 0x3fffff);
- { uint32_t x43 = (x41 + x24);
- { uint32_t x44 = (x43 >> 0x15);
- { uint32_t x45 = (x43 & 0x1fffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e150m5_7limbs/fesquare.v b/src/Specific/solinas32_2e150m5_7limbs/fesquare.v
deleted file mode 100644
index 53dc29952..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e150m5_7limbs.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_2e150m5_7limbs/fesquareDisplay.log b/src/Specific/solinas32_2e150m5_7limbs/fesquareDisplay.log
deleted file mode 100644
index 22a3d37df..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x13 = (((uint64_t)x2 * x11) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x11 * x2)))))));
- uint64_t x14 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x5 * ((uint64_t)x11 * x11)));
- uint64_t x15 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x5 * ((0x2 * ((uint64_t)x12 * x11)) + (0x2 * ((uint64_t)x11 * x12)))));
- uint64_t x16 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x5 * (((uint64_t)x10 * x11) + ((0x2 * ((uint64_t)x12 * x12)) + ((uint64_t)x11 * x10)))));
- uint64_t x17 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x5 * ((0x2 * ((uint64_t)x8 * x11)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (0x2 * ((uint64_t)x11 * x8)))))));
- uint64_t x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x5 * (((uint64_t)x6 * x11) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((uint64_t)x11 * x6)))))));
- uint64_t x19 = (((uint64_t)x2 * x2) + (0x5 * ((0x2 * ((uint64_t)x4 * x11)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (0x2 * ((uint64_t)x11 * x4)))))))));
- uint32_t x20 = (uint32_t) (x19 >> 0x16);
- uint32_t x21 = ((uint32_t)x19 & 0x3fffff);
- uint64_t x22 = (x20 + x18);
- uint32_t x23 = (uint32_t) (x22 >> 0x15);
- uint32_t x24 = ((uint32_t)x22 & 0x1fffff);
- uint64_t x25 = (x23 + x17);
- uint32_t x26 = (uint32_t) (x25 >> 0x16);
- uint32_t x27 = ((uint32_t)x25 & 0x3fffff);
- uint64_t x28 = (x26 + x16);
- uint32_t x29 = (uint32_t) (x28 >> 0x15);
- uint32_t x30 = ((uint32_t)x28 & 0x1fffff);
- uint64_t x31 = (x29 + x15);
- uint32_t x32 = (uint32_t) (x31 >> 0x16);
- uint32_t x33 = ((uint32_t)x31 & 0x3fffff);
- uint64_t x34 = (x32 + x14);
- uint32_t x35 = (uint32_t) (x34 >> 0x15);
- uint32_t x36 = ((uint32_t)x34 & 0x1fffff);
- uint64_t x37 = (x35 + x13);
- uint32_t x38 = (uint32_t) (x37 >> 0x15);
- uint32_t x39 = ((uint32_t)x37 & 0x1fffff);
- uint32_t x40 = (x21 + (0x5 * x38));
- uint32_t x41 = (x40 >> 0x16);
- uint32_t x42 = (x40 & 0x3fffff);
- uint32_t x43 = (x41 + x24);
- uint32_t x44 = (x43 >> 0x15);
- uint32_t x45 = (x43 & 0x1fffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e150m5_7limbs/fesquareDisplay.v b/src/Specific/solinas32_2e150m5_7limbs/fesquareDisplay.v
deleted file mode 100644
index ea56e3a52..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e150m5_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e150m5_7limbs/fesub.c b/src/Specific/solinas32_2e150m5_7limbs/fesub.c
deleted file mode 100644
index def03b357..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = ((0x7ffff6 + x5) - x17);
- out[1] = ((0x3ffffe + x7) - x19);
- out[2] = ((0x7ffffe + x9) - x21);
- out[3] = ((0x3ffffe + x11) - x23);
- out[4] = ((0x7ffffe + x13) - x25);
- out[5] = ((0x3ffffe + x15) - x27);
- out[6] = ((0x3ffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e150m5_7limbs/fesub.v b/src/Specific/solinas32_2e150m5_7limbs/fesub.v
deleted file mode 100644
index f78a5d0c2..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e150m5_7limbs.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_2e150m5_7limbs/fesubDisplay.log b/src/Specific/solinas32_2e150m5_7limbs/fesubDisplay.log
deleted file mode 100644
index a9be237c2..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0x3ffffe + x14) - x26), ((0x3ffffe + x15) - x27), ((0x7ffffe + x13) - x25), ((0x3ffffe + x11) - x23), ((0x7ffffe + x9) - x21), ((0x3ffffe + x7) - x19), ((0x7ffff6 + x5) - x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e150m5_7limbs/fesubDisplay.v b/src/Specific/solinas32_2e150m5_7limbs/fesubDisplay.v
deleted file mode 100644
index f8c131141..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e150m5_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e150m5_7limbs/freeze.c b/src/Specific/solinas32_2e150m5_7limbs/freeze.c
deleted file mode 100644
index 1eee5b658..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffb);
- { uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0x1fffff);
- { uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0x3fffff);
- { uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0x1fffff);
- { uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0x3fffff);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0x1fffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0x1fffff);
- { uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- { uint32_t x35 = (x34 & 0x3ffffb);
- { uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint32_t x39 = (x34 & 0x1fffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint32_t x43 = (x34 & 0x3fffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint32_t x47 = (x34 & 0x1fffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint32_t x51 = (x34 & 0x3fffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint32_t x55 = (x34 & 0x1fffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint32_t x59 = (x34 & 0x1fffff);
- { uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e150m5_7limbs/freeze.v b/src/Specific/solinas32_2e150m5_7limbs/freeze.v
deleted file mode 100644
index 22e44fd0f..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e150m5_7limbs.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_2e150m5_7limbs/freezeDisplay.log b/src/Specific/solinas32_2e150m5_7limbs/freezeDisplay.log
deleted file mode 100644
index 15ce74d4b..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffb);
- uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0x1fffff);
- uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0x3fffff);
- uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0x1fffff);
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0x3fffff);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0x1fffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0x1fffff);
- uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- uint32_t x35 = (x34 & 0x3ffffb);
- uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint32_t x39 = (x34 & 0x1fffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint32_t x43 = (x34 & 0x3fffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint32_t x47 = (x34 & 0x1fffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint32_t x51 = (x34 & 0x3fffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint32_t x55 = (x34 & 0x1fffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint32_t x59 = (x34 & 0x1fffff);
- uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e150m5_7limbs/freezeDisplay.v b/src/Specific/solinas32_2e150m5_7limbs/freezeDisplay.v
deleted file mode 100644
index c728d15a8..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e150m5_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e150m5_7limbs/py_interpreter.sh b/src/Specific/solinas32_2e150m5_7limbs/py_interpreter.sh
deleted file mode 100755
index 93f34c08e..000000000
--- a/src/Specific/solinas32_2e150m5_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**150 - 5' -Dmodulus_bytes='21 + 3/7' -Da24='121665'
diff --git a/src/Specific/solinas32_2e152m17_6limbs/CurveParameters.v b/src/Specific/solinas32_2e152m17_6limbs/CurveParameters.v
deleted file mode 100644
index 22ea729fc..000000000
--- a/src/Specific/solinas32_2e152m17_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^152 - 17
-Base: 25 + 1/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 25 + 1/3;
- bitwidth := 32;
- s := 2^152;
- c := [(1, 17)];
- 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_2e152m17_6limbs/Synthesis.v b/src/Specific/solinas32_2e152m17_6limbs/Synthesis.v
deleted file mode 100644
index f30360062..000000000
--- a/src/Specific/solinas32_2e152m17_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e152m17_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_2e152m17_6limbs/compiler.sh b/src/Specific/solinas32_2e152m17_6limbs/compiler.sh
deleted file mode 100755
index 62cf8c2d3..000000000
--- a/src/Specific/solinas32_2e152m17_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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,25,25,26,25,25}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<152) - 17' "$@"
diff --git a/src/Specific/solinas32_2e152m17_6limbs/compilerxx.sh b/src/Specific/solinas32_2e152m17_6limbs/compilerxx.sh
deleted file mode 100755
index 3db6e7734..000000000
--- a/src/Specific/solinas32_2e152m17_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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,25,25,26,25,25}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<152) - 17' "$@"
diff --git a/src/Specific/solinas32_2e152m17_6limbs/feadd.c b/src/Specific/solinas32_2e152m17_6limbs/feadd.c
deleted file mode 100644
index 5b654b294..000000000
--- a/src/Specific/solinas32_2e152m17_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_2e152m17_6limbs/feadd.v b/src/Specific/solinas32_2e152m17_6limbs/feadd.v
deleted file mode 100644
index cda4bf30e..000000000
--- a/src/Specific/solinas32_2e152m17_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e152m17_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_2e152m17_6limbs/feaddDisplay.log b/src/Specific/solinas32_2e152m17_6limbs/feaddDisplay.log
deleted file mode 100644
index 1084b2659..000000000
--- a/src/Specific/solinas32_2e152m17_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_2e152m17_6limbs/feaddDisplay.v b/src/Specific/solinas32_2e152m17_6limbs/feaddDisplay.v
deleted file mode 100644
index 71cee85c2..000000000
--- a/src/Specific/solinas32_2e152m17_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e152m17_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e152m17_6limbs/fecarry.v b/src/Specific/solinas32_2e152m17_6limbs/fecarry.v
deleted file mode 100644
index 8813eb3fa..000000000
--- a/src/Specific/solinas32_2e152m17_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e152m17_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_2e152m17_6limbs/fecarryDisplay.v b/src/Specific/solinas32_2e152m17_6limbs/fecarryDisplay.v
deleted file mode 100644
index 6d520eeba..000000000
--- a/src/Specific/solinas32_2e152m17_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e152m17_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e152m17_6limbs/femul.c b/src/Specific/solinas32_2e152m17_6limbs/femul.c
deleted file mode 100644
index 5cf3743f7..000000000
--- a/src/Specific/solinas32_2e152m17_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))))) + (0x11 * ((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)))) + (0x11 * ((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))) + (0x11 * (((uint64_t)x11 * x22) + ((0x2 * ((uint64_t)x13 * x23)) + ((uint64_t)x12 * x21)))));
- { uint64_t x28 = ((((uint64_t)x5 * x17) + ((uint64_t)x7 * x15)) + (0x11 * (((uint64_t)x9 * x22) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x12 * x19))))));
- { uint64_t x29 = (((uint64_t)x5 * x15) + (0x11 * ((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 >> 0x1a);
- { uint32_t x31 = ((uint32_t)x29 & 0x3ffffff);
- { uint64_t x32 = (x30 + x28);
- { uint64_t x33 = (x32 >> 0x19);
- { uint32_t x34 = ((uint32_t)x32 & 0x1ffffff);
- { uint64_t x35 = (x33 + x27);
- { uint64_t x36 = (x35 >> 0x19);
- { uint32_t x37 = ((uint32_t)x35 & 0x1ffffff);
- { uint64_t x38 = (x36 + x26);
- { uint64_t x39 = (x38 >> 0x1a);
- { uint32_t x40 = ((uint32_t)x38 & 0x3ffffff);
- { uint64_t x41 = (x39 + x25);
- { uint64_t x42 = (x41 >> 0x19);
- { uint32_t x43 = ((uint32_t)x41 & 0x1ffffff);
- { uint64_t x44 = (x42 + x24);
- { uint64_t x45 = (x44 >> 0x19);
- { uint32_t x46 = ((uint32_t)x44 & 0x1ffffff);
- { uint64_t x47 = (x31 + (0x11 * x45));
- { uint32_t x48 = (uint32_t) (x47 >> 0x1a);
- { uint32_t x49 = ((uint32_t)x47 & 0x3ffffff);
- { uint32_t x50 = (x48 + x34);
- { uint32_t x51 = (x50 >> 0x19);
- { uint32_t x52 = (x50 & 0x1ffffff);
- 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_2e152m17_6limbs/femul.v b/src/Specific/solinas32_2e152m17_6limbs/femul.v
deleted file mode 100644
index 809501e57..000000000
--- a/src/Specific/solinas32_2e152m17_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e152m17_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_2e152m17_6limbs/femulDisplay.log b/src/Specific/solinas32_2e152m17_6limbs/femulDisplay.log
deleted file mode 100644
index 434a3892a..000000000
--- a/src/Specific/solinas32_2e152m17_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))))) + (0x11 * ((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)))) + (0x11 * ((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))) + (0x11 * (((uint64_t)x11 * x22) + ((0x2 * ((uint64_t)x13 * x23)) + ((uint64_t)x12 * x21)))));
- uint64_t x28 = ((((uint64_t)x5 * x17) + ((uint64_t)x7 * x15)) + (0x11 * (((uint64_t)x9 * x22) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x12 * x19))))));
- uint64_t x29 = (((uint64_t)x5 * x15) + (0x11 * ((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 >> 0x1a);
- uint32_t x31 = ((uint32_t)x29 & 0x3ffffff);
- uint64_t x32 = (x30 + x28);
- uint64_t x33 = (x32 >> 0x19);
- uint32_t x34 = ((uint32_t)x32 & 0x1ffffff);
- uint64_t x35 = (x33 + x27);
- uint64_t x36 = (x35 >> 0x19);
- uint32_t x37 = ((uint32_t)x35 & 0x1ffffff);
- uint64_t x38 = (x36 + x26);
- uint64_t x39 = (x38 >> 0x1a);
- uint32_t x40 = ((uint32_t)x38 & 0x3ffffff);
- uint64_t x41 = (x39 + x25);
- uint64_t x42 = (x41 >> 0x19);
- uint32_t x43 = ((uint32_t)x41 & 0x1ffffff);
- uint64_t x44 = (x42 + x24);
- uint64_t x45 = (x44 >> 0x19);
- uint32_t x46 = ((uint32_t)x44 & 0x1ffffff);
- uint64_t x47 = (x31 + (0x11 * x45));
- uint32_t x48 = (uint32_t) (x47 >> 0x1a);
- uint32_t x49 = ((uint32_t)x47 & 0x3ffffff);
- uint32_t x50 = (x48 + x34);
- uint32_t x51 = (x50 >> 0x19);
- uint32_t x52 = (x50 & 0x1ffffff);
- 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_2e152m17_6limbs/femulDisplay.v b/src/Specific/solinas32_2e152m17_6limbs/femulDisplay.v
deleted file mode 100644
index 8ccac81c8..000000000
--- a/src/Specific/solinas32_2e152m17_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e152m17_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e152m17_6limbs/fesquare.c b/src/Specific/solinas32_2e152m17_6limbs/fesquare.c
deleted file mode 100644
index 3d2387de8..000000000
--- a/src/Specific/solinas32_2e152m17_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))))) + (0x11 * ((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)))) + (0x11 * ((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))) + (0x11 * (((uint64_t)x8 * x9) + ((0x2 * ((uint64_t)x10 * x10)) + ((uint64_t)x9 * x8)))));
- { uint64_t x15 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * (((uint64_t)x6 * x9) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((uint64_t)x9 * x6))))));
- { uint64_t x16 = (((uint64_t)x2 * x2) + (0x11 * ((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 >> 0x1a);
- { uint32_t x18 = ((uint32_t)x16 & 0x3ffffff);
- { uint64_t x19 = (x17 + x15);
- { uint64_t x20 = (x19 >> 0x19);
- { uint32_t x21 = ((uint32_t)x19 & 0x1ffffff);
- { uint64_t x22 = (x20 + x14);
- { uint64_t x23 = (x22 >> 0x19);
- { uint32_t x24 = ((uint32_t)x22 & 0x1ffffff);
- { uint64_t x25 = (x23 + x13);
- { uint64_t x26 = (x25 >> 0x1a);
- { uint32_t x27 = ((uint32_t)x25 & 0x3ffffff);
- { uint64_t x28 = (x26 + x12);
- { uint64_t x29 = (x28 >> 0x19);
- { uint32_t x30 = ((uint32_t)x28 & 0x1ffffff);
- { uint64_t x31 = (x29 + x11);
- { uint64_t x32 = (x31 >> 0x19);
- { uint32_t x33 = ((uint32_t)x31 & 0x1ffffff);
- { uint64_t x34 = (x18 + (0x11 * x32));
- { uint32_t x35 = (uint32_t) (x34 >> 0x1a);
- { uint32_t x36 = ((uint32_t)x34 & 0x3ffffff);
- { uint32_t x37 = (x35 + x21);
- { uint32_t x38 = (x37 >> 0x19);
- { uint32_t x39 = (x37 & 0x1ffffff);
- 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_2e152m17_6limbs/fesquare.v b/src/Specific/solinas32_2e152m17_6limbs/fesquare.v
deleted file mode 100644
index 6a6a924a8..000000000
--- a/src/Specific/solinas32_2e152m17_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e152m17_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_2e152m17_6limbs/fesquareDisplay.log b/src/Specific/solinas32_2e152m17_6limbs/fesquareDisplay.log
deleted file mode 100644
index cc5bc86f5..000000000
--- a/src/Specific/solinas32_2e152m17_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))))) + (0x11 * ((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)))) + (0x11 * ((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))) + (0x11 * (((uint64_t)x8 * x9) + ((0x2 * ((uint64_t)x10 * x10)) + ((uint64_t)x9 * x8)))));
- uint64_t x15 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * (((uint64_t)x6 * x9) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((uint64_t)x9 * x6))))));
- uint64_t x16 = (((uint64_t)x2 * x2) + (0x11 * ((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 >> 0x1a);
- uint32_t x18 = ((uint32_t)x16 & 0x3ffffff);
- uint64_t x19 = (x17 + x15);
- uint64_t x20 = (x19 >> 0x19);
- uint32_t x21 = ((uint32_t)x19 & 0x1ffffff);
- uint64_t x22 = (x20 + x14);
- uint64_t x23 = (x22 >> 0x19);
- uint32_t x24 = ((uint32_t)x22 & 0x1ffffff);
- uint64_t x25 = (x23 + x13);
- uint64_t x26 = (x25 >> 0x1a);
- uint32_t x27 = ((uint32_t)x25 & 0x3ffffff);
- uint64_t x28 = (x26 + x12);
- uint64_t x29 = (x28 >> 0x19);
- uint32_t x30 = ((uint32_t)x28 & 0x1ffffff);
- uint64_t x31 = (x29 + x11);
- uint64_t x32 = (x31 >> 0x19);
- uint32_t x33 = ((uint32_t)x31 & 0x1ffffff);
- uint64_t x34 = (x18 + (0x11 * x32));
- uint32_t x35 = (uint32_t) (x34 >> 0x1a);
- uint32_t x36 = ((uint32_t)x34 & 0x3ffffff);
- uint32_t x37 = (x35 + x21);
- uint32_t x38 = (x37 >> 0x19);
- uint32_t x39 = (x37 & 0x1ffffff);
- 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_2e152m17_6limbs/fesquareDisplay.v b/src/Specific/solinas32_2e152m17_6limbs/fesquareDisplay.v
deleted file mode 100644
index c3e27d0ef..000000000
--- a/src/Specific/solinas32_2e152m17_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e152m17_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e152m17_6limbs/fesub.c b/src/Specific/solinas32_2e152m17_6limbs/fesub.c
deleted file mode 100644
index 1153d1999..000000000
--- a/src/Specific/solinas32_2e152m17_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] = ((0x7ffffde + x5) - x15);
- out[1] = ((0x3fffffe + x7) - x17);
- out[2] = ((0x3fffffe + x9) - x19);
- out[3] = ((0x7fffffe + x11) - x21);
- out[4] = ((0x3fffffe + x13) - x23);
- out[5] = ((0x3fffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e152m17_6limbs/fesub.v b/src/Specific/solinas32_2e152m17_6limbs/fesub.v
deleted file mode 100644
index b370f8b89..000000000
--- a/src/Specific/solinas32_2e152m17_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e152m17_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_2e152m17_6limbs/fesubDisplay.log b/src/Specific/solinas32_2e152m17_6limbs/fesubDisplay.log
deleted file mode 100644
index 535c511cc..000000000
--- a/src/Specific/solinas32_2e152m17_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,
- (((0x3fffffe + x12) - x22), ((0x3fffffe + x13) - x23), ((0x7fffffe + x11) - x21), ((0x3fffffe + x9) - x19), ((0x3fffffe + x7) - x17), ((0x7ffffde + 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_2e152m17_6limbs/fesubDisplay.v b/src/Specific/solinas32_2e152m17_6limbs/fesubDisplay.v
deleted file mode 100644
index e7f0bbf20..000000000
--- a/src/Specific/solinas32_2e152m17_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e152m17_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e152m17_6limbs/freeze.c b/src/Specific/solinas32_2e152m17_6limbs/freeze.c
deleted file mode 100644
index 539597636..000000000
--- a/src/Specific/solinas32_2e152m17_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 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffef);
- { uint32_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x13, Return x4, 0x1ffffff);
- { uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x16, Return x6, 0x1ffffff);
- { uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x8, 0x3ffffff);
- { uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x10, 0x1ffffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x9, 0x1ffffff);
- { uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- { uint32_t x30 = (x29 & 0x3ffffef);
- { uint32_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint32_t x34 = (x29 & 0x1ffffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 25 (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 & 0x1ffffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 25 (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 & 0x3ffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 26 (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 & 0x1ffffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 25 (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 & 0x1ffffff);
- { uint32_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (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_2e152m17_6limbs/freeze.v b/src/Specific/solinas32_2e152m17_6limbs/freeze.v
deleted file mode 100644
index 18403b22b..000000000
--- a/src/Specific/solinas32_2e152m17_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e152m17_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_2e152m17_6limbs/freezeDisplay.log b/src/Specific/solinas32_2e152m17_6limbs/freezeDisplay.log
deleted file mode 100644
index 5d8bdcde7..000000000
--- a/src/Specific/solinas32_2e152m17_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 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffef);
- uint32_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x13, Return x4, 0x1ffffff);
- uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x16, Return x6, 0x1ffffff);
- uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x8, 0x3ffffff);
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x10, 0x1ffffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x9, 0x1ffffff);
- uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- uint32_t x30 = (x29 & 0x3ffffef);
- uint32_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint32_t x34 = (x29 & 0x1ffffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 25 (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 & 0x1ffffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 25 (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 & 0x3ffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 26 (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 & 0x1ffffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 25 (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 & 0x1ffffff);
- uint32_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (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_2e152m17_6limbs/freezeDisplay.v b/src/Specific/solinas32_2e152m17_6limbs/freezeDisplay.v
deleted file mode 100644
index 177f96178..000000000
--- a/src/Specific/solinas32_2e152m17_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e152m17_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e152m17_6limbs/py_interpreter.sh b/src/Specific/solinas32_2e152m17_6limbs/py_interpreter.sh
deleted file mode 100755
index d0a2d5eb1..000000000
--- a/src/Specific/solinas32_2e152m17_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**152 - 17' -Dmodulus_bytes='25 + 1/3' -Da24='121665'
diff --git a/src/Specific/solinas32_2e152m17_7limbs/CurveParameters.v b/src/Specific/solinas32_2e152m17_7limbs/CurveParameters.v
deleted file mode 100644
index 3f8039bb2..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^152 - 17
-Base: 21 + 5/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 21 + 5/7;
- bitwidth := 32;
- s := 2^152;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 7); [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_2e152m17_7limbs/Synthesis.v b/src/Specific/solinas32_2e152m17_7limbs/Synthesis.v
deleted file mode 100644
index 4ed504522..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e152m17_7limbs.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_2e152m17_7limbs/compiler.sh b/src/Specific/solinas32_2e152m17_7limbs/compiler.sh
deleted file mode 100755
index 5ae12f71d..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,22,21,22,22,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<152) - 17' "$@"
diff --git a/src/Specific/solinas32_2e152m17_7limbs/compilerxx.sh b/src/Specific/solinas32_2e152m17_7limbs/compilerxx.sh
deleted file mode 100755
index b3984ecb8..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/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,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,22,21,22,22,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<152) - 17' "$@"
diff --git a/src/Specific/solinas32_2e152m17_7limbs/feadd.c b/src/Specific/solinas32_2e152m17_7limbs/feadd.c
deleted file mode 100644
index 5288d0bef..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e152m17_7limbs/feadd.v b/src/Specific/solinas32_2e152m17_7limbs/feadd.v
deleted file mode 100644
index 08dcd8698..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e152m17_7limbs.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_2e152m17_7limbs/feaddDisplay.log b/src/Specific/solinas32_2e152m17_7limbs/feaddDisplay.log
deleted file mode 100644
index d22997dcb..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e152m17_7limbs/feaddDisplay.v b/src/Specific/solinas32_2e152m17_7limbs/feaddDisplay.v
deleted file mode 100644
index ea69b8277..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e152m17_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e152m17_7limbs/fecarry.v b/src/Specific/solinas32_2e152m17_7limbs/fecarry.v
deleted file mode 100644
index ed6ac251f..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e152m17_7limbs.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_2e152m17_7limbs/fecarryDisplay.v b/src/Specific/solinas32_2e152m17_7limbs/fecarryDisplay.v
deleted file mode 100644
index bc4311aab..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e152m17_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e152m17_7limbs/femul.c b/src/Specific/solinas32_2e152m17_7limbs/femul.c
deleted file mode 100644
index 4e37d78d5..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- { uint64_t x28 = (((uint64_t)x5 * x26) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + ((0x2 * ((uint64_t)x11 * x23)) + (((uint64_t)x13 * x21) + (((uint64_t)x15 * x19) + ((uint64_t)x14 * x17)))))));
- { uint64_t x29 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + (((uint64_t)x13 * x19) + ((uint64_t)x15 * x17)))))) + (0x11 * (0x2 * ((uint64_t)x14 * x26))));
- { uint64_t x30 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((0x2 * ((uint64_t)x9 * x21)) + ((0x2 * ((uint64_t)x11 * x19)) + ((uint64_t)x13 * x17))))) + (0x11 * ((0x2 * ((uint64_t)x15 * x26)) + (0x2 * ((uint64_t)x14 * x27)))));
- { uint64_t x31 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + (((uint64_t)x9 * x19) + ((uint64_t)x11 * x17)))) + (0x11 * (((uint64_t)x13 * x26) + (((uint64_t)x15 * x27) + ((uint64_t)x14 * x25)))));
- { uint64_t x32 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + ((uint64_t)x9 * x17))) + (0x11 * ((0x2 * ((uint64_t)x11 * x26)) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + (0x2 * ((uint64_t)x14 * x23)))))));
- { uint64_t x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) + (0x11 * ((0x2 * ((uint64_t)x9 * x26)) + ((0x2 * ((uint64_t)x11 * x27)) + (((uint64_t)x13 * x25) + ((0x2 * ((uint64_t)x15 * x23)) + (0x2 * ((uint64_t)x14 * x21))))))));
- { uint64_t x34 = (((uint64_t)x5 * x17) + (0x11 * ((0x2 * ((uint64_t)x7 * x26)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + (0x2 * ((uint64_t)x14 * x19)))))))));
- { uint64_t x35 = (x34 >> 0x16);
- { uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- { uint64_t x37 = (x35 + x33);
- { uint32_t x38 = (uint32_t) (x37 >> 0x16);
- { uint32_t x39 = ((uint32_t)x37 & 0x3fffff);
- { uint64_t x40 = (x38 + x32);
- { uint32_t x41 = (uint32_t) (x40 >> 0x16);
- { uint32_t x42 = ((uint32_t)x40 & 0x3fffff);
- { uint64_t x43 = (x41 + x31);
- { uint32_t x44 = (uint32_t) (x43 >> 0x15);
- { uint32_t x45 = ((uint32_t)x43 & 0x1fffff);
- { uint64_t x46 = (x44 + x30);
- { uint32_t x47 = (uint32_t) (x46 >> 0x16);
- { uint32_t x48 = ((uint32_t)x46 & 0x3fffff);
- { uint64_t x49 = (x47 + x29);
- { uint32_t x50 = (uint32_t) (x49 >> 0x16);
- { uint32_t x51 = ((uint32_t)x49 & 0x3fffff);
- { uint64_t x52 = (x50 + x28);
- { uint32_t x53 = (uint32_t) (x52 >> 0x15);
- { uint32_t x54 = ((uint32_t)x52 & 0x1fffff);
- { uint64_t x55 = (x36 + ((uint64_t)0x11 * x53));
- { uint32_t x56 = (uint32_t) (x55 >> 0x16);
- { uint32_t x57 = ((uint32_t)x55 & 0x3fffff);
- { uint32_t x58 = (x56 + x39);
- { uint32_t x59 = (x58 >> 0x16);
- { uint32_t x60 = (x58 & 0x3fffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e152m17_7limbs/femul.v b/src/Specific/solinas32_2e152m17_7limbs/femul.v
deleted file mode 100644
index 0d6ee477b..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e152m17_7limbs.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_2e152m17_7limbs/femulDisplay.log b/src/Specific/solinas32_2e152m17_7limbs/femulDisplay.log
deleted file mode 100644
index 8f2c23481..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint64_t x28 = (((uint64_t)x5 * x26) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + ((0x2 * ((uint64_t)x11 * x23)) + (((uint64_t)x13 * x21) + (((uint64_t)x15 * x19) + ((uint64_t)x14 * x17)))))));
- uint64_t x29 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + (((uint64_t)x13 * x19) + ((uint64_t)x15 * x17)))))) + (0x11 * (0x2 * ((uint64_t)x14 * x26))));
- uint64_t x30 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((0x2 * ((uint64_t)x9 * x21)) + ((0x2 * ((uint64_t)x11 * x19)) + ((uint64_t)x13 * x17))))) + (0x11 * ((0x2 * ((uint64_t)x15 * x26)) + (0x2 * ((uint64_t)x14 * x27)))));
- uint64_t x31 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + (((uint64_t)x9 * x19) + ((uint64_t)x11 * x17)))) + (0x11 * (((uint64_t)x13 * x26) + (((uint64_t)x15 * x27) + ((uint64_t)x14 * x25)))));
- uint64_t x32 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + ((uint64_t)x9 * x17))) + (0x11 * ((0x2 * ((uint64_t)x11 * x26)) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + (0x2 * ((uint64_t)x14 * x23)))))));
- uint64_t x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) + (0x11 * ((0x2 * ((uint64_t)x9 * x26)) + ((0x2 * ((uint64_t)x11 * x27)) + (((uint64_t)x13 * x25) + ((0x2 * ((uint64_t)x15 * x23)) + (0x2 * ((uint64_t)x14 * x21))))))));
- uint64_t x34 = (((uint64_t)x5 * x17) + (0x11 * ((0x2 * ((uint64_t)x7 * x26)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + (0x2 * ((uint64_t)x14 * x19)))))))));
- uint64_t x35 = (x34 >> 0x16);
- uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- uint64_t x37 = (x35 + x33);
- uint32_t x38 = (uint32_t) (x37 >> 0x16);
- uint32_t x39 = ((uint32_t)x37 & 0x3fffff);
- uint64_t x40 = (x38 + x32);
- uint32_t x41 = (uint32_t) (x40 >> 0x16);
- uint32_t x42 = ((uint32_t)x40 & 0x3fffff);
- uint64_t x43 = (x41 + x31);
- uint32_t x44 = (uint32_t) (x43 >> 0x15);
- uint32_t x45 = ((uint32_t)x43 & 0x1fffff);
- uint64_t x46 = (x44 + x30);
- uint32_t x47 = (uint32_t) (x46 >> 0x16);
- uint32_t x48 = ((uint32_t)x46 & 0x3fffff);
- uint64_t x49 = (x47 + x29);
- uint32_t x50 = (uint32_t) (x49 >> 0x16);
- uint32_t x51 = ((uint32_t)x49 & 0x3fffff);
- uint64_t x52 = (x50 + x28);
- uint32_t x53 = (uint32_t) (x52 >> 0x15);
- uint32_t x54 = ((uint32_t)x52 & 0x1fffff);
- uint64_t x55 = (x36 + ((uint64_t)0x11 * x53));
- uint32_t x56 = (uint32_t) (x55 >> 0x16);
- uint32_t x57 = ((uint32_t)x55 & 0x3fffff);
- uint32_t x58 = (x56 + x39);
- uint32_t x59 = (x58 >> 0x16);
- uint32_t x60 = (x58 & 0x3fffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e152m17_7limbs/femulDisplay.v b/src/Specific/solinas32_2e152m17_7limbs/femulDisplay.v
deleted file mode 100644
index 820360046..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e152m17_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e152m17_7limbs/fesquare.c b/src/Specific/solinas32_2e152m17_7limbs/fesquare.c
deleted file mode 100644
index f25e30e0d..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x13 = (((uint64_t)x2 * x11) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x11 * x2)))))));
- { uint64_t x14 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x11 * (0x2 * ((uint64_t)x11 * x11))));
- { uint64_t x15 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint64_t)x12 * x11)) + (0x2 * ((uint64_t)x11 * x12)))));
- { uint64_t x16 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x11 * (((uint64_t)x10 * x11) + (((uint64_t)x12 * x12) + ((uint64_t)x11 * x10)))));
- { uint64_t x17 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x11 * ((0x2 * ((uint64_t)x8 * x11)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (0x2 * ((uint64_t)x11 * x8)))))));
- { uint64_t x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * ((0x2 * ((uint64_t)x6 * x11)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + (0x2 * ((uint64_t)x11 * x6))))))));
- { uint64_t x19 = (((uint64_t)x2 * x2) + (0x11 * ((0x2 * ((uint64_t)x4 * x11)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (0x2 * ((uint64_t)x11 * x4)))))))));
- { uint64_t x20 = (x19 >> 0x16);
- { uint32_t x21 = ((uint32_t)x19 & 0x3fffff);
- { uint64_t x22 = (x20 + x18);
- { uint32_t x23 = (uint32_t) (x22 >> 0x16);
- { uint32_t x24 = ((uint32_t)x22 & 0x3fffff);
- { uint64_t x25 = (x23 + x17);
- { uint32_t x26 = (uint32_t) (x25 >> 0x16);
- { uint32_t x27 = ((uint32_t)x25 & 0x3fffff);
- { uint64_t x28 = (x26 + x16);
- { uint32_t x29 = (uint32_t) (x28 >> 0x15);
- { uint32_t x30 = ((uint32_t)x28 & 0x1fffff);
- { uint64_t x31 = (x29 + x15);
- { uint32_t x32 = (uint32_t) (x31 >> 0x16);
- { uint32_t x33 = ((uint32_t)x31 & 0x3fffff);
- { uint64_t x34 = (x32 + x14);
- { uint32_t x35 = (uint32_t) (x34 >> 0x16);
- { uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- { uint64_t x37 = (x35 + x13);
- { uint32_t x38 = (uint32_t) (x37 >> 0x15);
- { uint32_t x39 = ((uint32_t)x37 & 0x1fffff);
- { uint64_t x40 = (x21 + ((uint64_t)0x11 * x38));
- { uint32_t x41 = (uint32_t) (x40 >> 0x16);
- { uint32_t x42 = ((uint32_t)x40 & 0x3fffff);
- { uint32_t x43 = (x41 + x24);
- { uint32_t x44 = (x43 >> 0x16);
- { uint32_t x45 = (x43 & 0x3fffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e152m17_7limbs/fesquare.v b/src/Specific/solinas32_2e152m17_7limbs/fesquare.v
deleted file mode 100644
index 3d661027d..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e152m17_7limbs.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_2e152m17_7limbs/fesquareDisplay.log b/src/Specific/solinas32_2e152m17_7limbs/fesquareDisplay.log
deleted file mode 100644
index e4acf0c76..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x13 = (((uint64_t)x2 * x11) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x11 * x2)))))));
- uint64_t x14 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x11 * (0x2 * ((uint64_t)x11 * x11))));
- uint64_t x15 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint64_t)x12 * x11)) + (0x2 * ((uint64_t)x11 * x12)))));
- uint64_t x16 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x11 * (((uint64_t)x10 * x11) + (((uint64_t)x12 * x12) + ((uint64_t)x11 * x10)))));
- uint64_t x17 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x11 * ((0x2 * ((uint64_t)x8 * x11)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (0x2 * ((uint64_t)x11 * x8)))))));
- uint64_t x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * ((0x2 * ((uint64_t)x6 * x11)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + (0x2 * ((uint64_t)x11 * x6))))))));
- uint64_t x19 = (((uint64_t)x2 * x2) + (0x11 * ((0x2 * ((uint64_t)x4 * x11)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (0x2 * ((uint64_t)x11 * x4)))))))));
- uint64_t x20 = (x19 >> 0x16);
- uint32_t x21 = ((uint32_t)x19 & 0x3fffff);
- uint64_t x22 = (x20 + x18);
- uint32_t x23 = (uint32_t) (x22 >> 0x16);
- uint32_t x24 = ((uint32_t)x22 & 0x3fffff);
- uint64_t x25 = (x23 + x17);
- uint32_t x26 = (uint32_t) (x25 >> 0x16);
- uint32_t x27 = ((uint32_t)x25 & 0x3fffff);
- uint64_t x28 = (x26 + x16);
- uint32_t x29 = (uint32_t) (x28 >> 0x15);
- uint32_t x30 = ((uint32_t)x28 & 0x1fffff);
- uint64_t x31 = (x29 + x15);
- uint32_t x32 = (uint32_t) (x31 >> 0x16);
- uint32_t x33 = ((uint32_t)x31 & 0x3fffff);
- uint64_t x34 = (x32 + x14);
- uint32_t x35 = (uint32_t) (x34 >> 0x16);
- uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- uint64_t x37 = (x35 + x13);
- uint32_t x38 = (uint32_t) (x37 >> 0x15);
- uint32_t x39 = ((uint32_t)x37 & 0x1fffff);
- uint64_t x40 = (x21 + ((uint64_t)0x11 * x38));
- uint32_t x41 = (uint32_t) (x40 >> 0x16);
- uint32_t x42 = ((uint32_t)x40 & 0x3fffff);
- uint32_t x43 = (x41 + x24);
- uint32_t x44 = (x43 >> 0x16);
- uint32_t x45 = (x43 & 0x3fffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e152m17_7limbs/fesquareDisplay.v b/src/Specific/solinas32_2e152m17_7limbs/fesquareDisplay.v
deleted file mode 100644
index 09e48a1c9..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e152m17_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e152m17_7limbs/fesub.c b/src/Specific/solinas32_2e152m17_7limbs/fesub.c
deleted file mode 100644
index d5ab3c216..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = ((0x7fffde + x5) - x17);
- out[1] = ((0x7ffffe + x7) - x19);
- out[2] = ((0x7ffffe + x9) - x21);
- out[3] = ((0x3ffffe + x11) - x23);
- out[4] = ((0x7ffffe + x13) - x25);
- out[5] = ((0x7ffffe + x15) - x27);
- out[6] = ((0x3ffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e152m17_7limbs/fesub.v b/src/Specific/solinas32_2e152m17_7limbs/fesub.v
deleted file mode 100644
index 87521a3fb..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e152m17_7limbs.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_2e152m17_7limbs/fesubDisplay.log b/src/Specific/solinas32_2e152m17_7limbs/fesubDisplay.log
deleted file mode 100644
index 4c35b7065..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0x3ffffe + x14) - x26), ((0x7ffffe + x15) - x27), ((0x7ffffe + x13) - x25), ((0x3ffffe + x11) - x23), ((0x7ffffe + x9) - x21), ((0x7ffffe + x7) - x19), ((0x7fffde + x5) - x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e152m17_7limbs/fesubDisplay.v b/src/Specific/solinas32_2e152m17_7limbs/fesubDisplay.v
deleted file mode 100644
index 8c373a497..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e152m17_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e152m17_7limbs/freeze.c b/src/Specific/solinas32_2e152m17_7limbs/freeze.c
deleted file mode 100644
index 51d8576f3..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffef);
- { uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0x3fffff);
- { uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0x3fffff);
- { uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0x1fffff);
- { uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0x3fffff);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0x3fffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0x1fffff);
- { uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- { uint32_t x35 = (x34 & 0x3fffef);
- { uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint32_t x39 = (x34 & 0x3fffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint32_t x43 = (x34 & 0x3fffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint32_t x47 = (x34 & 0x1fffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint32_t x51 = (x34 & 0x3fffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint32_t x55 = (x34 & 0x3fffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint32_t x59 = (x34 & 0x1fffff);
- { uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e152m17_7limbs/freeze.v b/src/Specific/solinas32_2e152m17_7limbs/freeze.v
deleted file mode 100644
index 20a506fe9..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e152m17_7limbs.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_2e152m17_7limbs/freezeDisplay.log b/src/Specific/solinas32_2e152m17_7limbs/freezeDisplay.log
deleted file mode 100644
index 6c155f863..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffef);
- uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0x3fffff);
- uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0x3fffff);
- uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0x1fffff);
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0x3fffff);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0x3fffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0x1fffff);
- uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- uint32_t x35 = (x34 & 0x3fffef);
- uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint32_t x39 = (x34 & 0x3fffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint32_t x43 = (x34 & 0x3fffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint32_t x47 = (x34 & 0x1fffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint32_t x51 = (x34 & 0x3fffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint32_t x55 = (x34 & 0x3fffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint32_t x59 = (x34 & 0x1fffff);
- uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e152m17_7limbs/freezeDisplay.v b/src/Specific/solinas32_2e152m17_7limbs/freezeDisplay.v
deleted file mode 100644
index 97c194d15..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e152m17_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e152m17_7limbs/py_interpreter.sh b/src/Specific/solinas32_2e152m17_7limbs/py_interpreter.sh
deleted file mode 100755
index 5d84ec970..000000000
--- a/src/Specific/solinas32_2e152m17_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**152 - 17' -Dmodulus_bytes='21 + 5/7' -Da24='121665'
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'
diff --git a/src/Specific/solinas32_2e158m15_7limbs/CurveParameters.v b/src/Specific/solinas32_2e158m15_7limbs/CurveParameters.v
deleted file mode 100644
index 7bda8290c..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^158 - 15
-Base: 22 + 4/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 22 + 4/7;
- bitwidth := 32;
- s := 2^158;
- c := [(1, 15)];
- carry_chains := Some [seq 0 (pred 7); [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_7limbs/Synthesis.v b/src/Specific/solinas32_2e158m15_7limbs/Synthesis.v
deleted file mode 100644
index 232d5ee06..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e158m15_7limbs.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_7limbs/compiler.sh b/src/Specific/solinas32_2e158m15_7limbs/compiler.sh
deleted file mode 100755
index 2578c2582..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/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='{23,23,22,23,22,23,22}' -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='7' -Dq_mpz='(1_mpz<<158) - 15' "$@"
diff --git a/src/Specific/solinas32_2e158m15_7limbs/compilerxx.sh b/src/Specific/solinas32_2e158m15_7limbs/compilerxx.sh
deleted file mode 100755
index 23932e58a..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/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='{23,23,22,23,22,23,22}' -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='7' -Dq_mpz='(1_mpz<<158) - 15' "$@"
diff --git a/src/Specific/solinas32_2e158m15_7limbs/feadd.c b/src/Specific/solinas32_2e158m15_7limbs/feadd.c
deleted file mode 100644
index 5288d0bef..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e158m15_7limbs/feadd.v b/src/Specific/solinas32_2e158m15_7limbs/feadd.v
deleted file mode 100644
index a51c6e040..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e158m15_7limbs.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_7limbs/feaddDisplay.log b/src/Specific/solinas32_2e158m15_7limbs/feaddDisplay.log
deleted file mode 100644
index d22997dcb..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e158m15_7limbs/feaddDisplay.v b/src/Specific/solinas32_2e158m15_7limbs/feaddDisplay.v
deleted file mode 100644
index 2b895d88b..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e158m15_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e158m15_7limbs/fecarry.v b/src/Specific/solinas32_2e158m15_7limbs/fecarry.v
deleted file mode 100644
index 55a60ca24..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e158m15_7limbs.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_7limbs/fecarryDisplay.v b/src/Specific/solinas32_2e158m15_7limbs/fecarryDisplay.v
deleted file mode 100644
index 45b884c3b..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e158m15_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e158m15_7limbs/femul.c b/src/Specific/solinas32_2e158m15_7limbs/femul.c
deleted file mode 100644
index 9df0827b0..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- { uint64_t x28 = (((uint64_t)x5 * x26) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + (((uint64_t)x11 * x23) + ((0x2 * ((uint64_t)x13 * x21)) + (((uint64_t)x15 * x19) + ((uint64_t)x14 * x17)))))));
- { uint64_t x29 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + ((0x2 * ((uint64_t)x13 * x19)) + ((uint64_t)x15 * x17)))))) + (0xf * (0x2 * ((uint64_t)x14 * x26))));
- { uint64_t x30 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + ((0x2 * ((uint64_t)x9 * x21)) + (((uint64_t)x11 * x19) + ((uint64_t)x13 * x17))))) + (0xf * (((uint64_t)x15 * x26) + ((uint64_t)x14 * x27))));
- { uint64_t x31 = ((((uint64_t)x5 * x23) + ((0x2 * ((uint64_t)x7 * x21)) + ((0x2 * ((uint64_t)x9 * x19)) + ((uint64_t)x11 * x17)))) + (0xf * ((0x2 * ((uint64_t)x13 * x26)) + (((uint64_t)x15 * x27) + (0x2 * ((uint64_t)x14 * x25))))));
- { uint64_t x32 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + ((uint64_t)x9 * x17))) + (0xf * (((uint64_t)x11 * x26) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + ((uint64_t)x14 * x23))))));
- { uint64_t x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) + (0xf * ((0x2 * ((uint64_t)x9 * x26)) + (((uint64_t)x11 * x27) + ((0x2 * ((uint64_t)x13 * x25)) + (((uint64_t)x15 * x23) + (0x2 * ((uint64_t)x14 * x21))))))));
- { uint64_t x34 = (((uint64_t)x5 * x17) + (0xf * ((0x2 * ((uint64_t)x7 * x26)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + (0x2 * ((uint64_t)x14 * x19)))))))));
- { uint64_t x35 = (x34 >> 0x17);
- { uint32_t x36 = ((uint32_t)x34 & 0x7fffff);
- { uint64_t x37 = (x35 + x33);
- { uint64_t x38 = (x37 >> 0x17);
- { uint32_t x39 = ((uint32_t)x37 & 0x7fffff);
- { uint64_t x40 = (x38 + x32);
- { uint64_t x41 = (x40 >> 0x16);
- { uint32_t x42 = ((uint32_t)x40 & 0x3fffff);
- { uint64_t x43 = (x41 + x31);
- { uint32_t x44 = (uint32_t) (x43 >> 0x17);
- { uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- { uint64_t x46 = (x44 + x30);
- { uint32_t x47 = (uint32_t) (x46 >> 0x16);
- { uint32_t x48 = ((uint32_t)x46 & 0x3fffff);
- { uint64_t x49 = (x47 + x29);
- { uint32_t x50 = (uint32_t) (x49 >> 0x17);
- { uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- { uint64_t x52 = (x50 + x28);
- { uint32_t x53 = (uint32_t) (x52 >> 0x16);
- { uint32_t x54 = ((uint32_t)x52 & 0x3fffff);
- { uint64_t x55 = (x36 + ((uint64_t)0xf * x53));
- { uint32_t x56 = (uint32_t) (x55 >> 0x17);
- { uint32_t x57 = ((uint32_t)x55 & 0x7fffff);
- { uint32_t x58 = (x56 + x39);
- { uint32_t x59 = (x58 >> 0x17);
- { uint32_t x60 = (x58 & 0x7fffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e158m15_7limbs/femul.v b/src/Specific/solinas32_2e158m15_7limbs/femul.v
deleted file mode 100644
index f514a7a68..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e158m15_7limbs.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_7limbs/femulDisplay.log b/src/Specific/solinas32_2e158m15_7limbs/femulDisplay.log
deleted file mode 100644
index b5935c279..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint64_t x28 = (((uint64_t)x5 * x26) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + (((uint64_t)x11 * x23) + ((0x2 * ((uint64_t)x13 * x21)) + (((uint64_t)x15 * x19) + ((uint64_t)x14 * x17)))))));
- uint64_t x29 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + ((0x2 * ((uint64_t)x13 * x19)) + ((uint64_t)x15 * x17)))))) + (0xf * (0x2 * ((uint64_t)x14 * x26))));
- uint64_t x30 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + ((0x2 * ((uint64_t)x9 * x21)) + (((uint64_t)x11 * x19) + ((uint64_t)x13 * x17))))) + (0xf * (((uint64_t)x15 * x26) + ((uint64_t)x14 * x27))));
- uint64_t x31 = ((((uint64_t)x5 * x23) + ((0x2 * ((uint64_t)x7 * x21)) + ((0x2 * ((uint64_t)x9 * x19)) + ((uint64_t)x11 * x17)))) + (0xf * ((0x2 * ((uint64_t)x13 * x26)) + (((uint64_t)x15 * x27) + (0x2 * ((uint64_t)x14 * x25))))));
- uint64_t x32 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + ((uint64_t)x9 * x17))) + (0xf * (((uint64_t)x11 * x26) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + ((uint64_t)x14 * x23))))));
- uint64_t x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) + (0xf * ((0x2 * ((uint64_t)x9 * x26)) + (((uint64_t)x11 * x27) + ((0x2 * ((uint64_t)x13 * x25)) + (((uint64_t)x15 * x23) + (0x2 * ((uint64_t)x14 * x21))))))));
- uint64_t x34 = (((uint64_t)x5 * x17) + (0xf * ((0x2 * ((uint64_t)x7 * x26)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + (0x2 * ((uint64_t)x14 * x19)))))))));
- uint64_t x35 = (x34 >> 0x17);
- uint32_t x36 = ((uint32_t)x34 & 0x7fffff);
- uint64_t x37 = (x35 + x33);
- uint64_t x38 = (x37 >> 0x17);
- uint32_t x39 = ((uint32_t)x37 & 0x7fffff);
- uint64_t x40 = (x38 + x32);
- uint64_t x41 = (x40 >> 0x16);
- uint32_t x42 = ((uint32_t)x40 & 0x3fffff);
- uint64_t x43 = (x41 + x31);
- uint32_t x44 = (uint32_t) (x43 >> 0x17);
- uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- uint64_t x46 = (x44 + x30);
- uint32_t x47 = (uint32_t) (x46 >> 0x16);
- uint32_t x48 = ((uint32_t)x46 & 0x3fffff);
- uint64_t x49 = (x47 + x29);
- uint32_t x50 = (uint32_t) (x49 >> 0x17);
- uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- uint64_t x52 = (x50 + x28);
- uint32_t x53 = (uint32_t) (x52 >> 0x16);
- uint32_t x54 = ((uint32_t)x52 & 0x3fffff);
- uint64_t x55 = (x36 + ((uint64_t)0xf * x53));
- uint32_t x56 = (uint32_t) (x55 >> 0x17);
- uint32_t x57 = ((uint32_t)x55 & 0x7fffff);
- uint32_t x58 = (x56 + x39);
- uint32_t x59 = (x58 >> 0x17);
- uint32_t x60 = (x58 & 0x7fffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e158m15_7limbs/femulDisplay.v b/src/Specific/solinas32_2e158m15_7limbs/femulDisplay.v
deleted file mode 100644
index 0b05b0553..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e158m15_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e158m15_7limbs/fesquare.c b/src/Specific/solinas32_2e158m15_7limbs/fesquare.c
deleted file mode 100644
index e7d45d069..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x13 = (((uint64_t)x2 * x11) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x11 * x2)))))));
- { uint64_t x14 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0xf * (0x2 * ((uint64_t)x11 * x11))));
- { uint64_t x15 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0xf * (((uint64_t)x12 * x11) + ((uint64_t)x11 * x12))));
- { uint64_t x16 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0xf * ((0x2 * ((uint64_t)x10 * x11)) + (((uint64_t)x12 * x12) + (0x2 * ((uint64_t)x11 * x10))))));
- { uint64_t x17 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0xf * (((uint64_t)x8 * x11) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((uint64_t)x11 * x8))))));
- { uint64_t x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xf * ((0x2 * ((uint64_t)x6 * x11)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (0x2 * ((uint64_t)x11 * x6))))))));
- { uint64_t x19 = (((uint64_t)x2 * x2) + (0xf * ((0x2 * ((uint64_t)x4 * x11)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (0x2 * ((uint64_t)x11 * x4)))))))));
- { uint64_t x20 = (x19 >> 0x17);
- { uint32_t x21 = ((uint32_t)x19 & 0x7fffff);
- { uint64_t x22 = (x20 + x18);
- { uint64_t x23 = (x22 >> 0x17);
- { uint32_t x24 = ((uint32_t)x22 & 0x7fffff);
- { uint64_t x25 = (x23 + x17);
- { uint64_t x26 = (x25 >> 0x16);
- { uint32_t x27 = ((uint32_t)x25 & 0x3fffff);
- { uint64_t x28 = (x26 + x16);
- { uint32_t x29 = (uint32_t) (x28 >> 0x17);
- { uint32_t x30 = ((uint32_t)x28 & 0x7fffff);
- { uint64_t x31 = (x29 + x15);
- { uint32_t x32 = (uint32_t) (x31 >> 0x16);
- { uint32_t x33 = ((uint32_t)x31 & 0x3fffff);
- { uint64_t x34 = (x32 + x14);
- { uint32_t x35 = (uint32_t) (x34 >> 0x17);
- { uint32_t x36 = ((uint32_t)x34 & 0x7fffff);
- { uint64_t x37 = (x35 + x13);
- { uint32_t x38 = (uint32_t) (x37 >> 0x16);
- { uint32_t x39 = ((uint32_t)x37 & 0x3fffff);
- { uint64_t x40 = (x21 + ((uint64_t)0xf * x38));
- { uint32_t x41 = (uint32_t) (x40 >> 0x17);
- { uint32_t x42 = ((uint32_t)x40 & 0x7fffff);
- { uint32_t x43 = (x41 + x24);
- { uint32_t x44 = (x43 >> 0x17);
- { uint32_t x45 = (x43 & 0x7fffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e158m15_7limbs/fesquare.v b/src/Specific/solinas32_2e158m15_7limbs/fesquare.v
deleted file mode 100644
index cc540694f..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e158m15_7limbs.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_7limbs/fesquareDisplay.log b/src/Specific/solinas32_2e158m15_7limbs/fesquareDisplay.log
deleted file mode 100644
index ac17ecbc2..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x13 = (((uint64_t)x2 * x11) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x11 * x2)))))));
- uint64_t x14 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0xf * (0x2 * ((uint64_t)x11 * x11))));
- uint64_t x15 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0xf * (((uint64_t)x12 * x11) + ((uint64_t)x11 * x12))));
- uint64_t x16 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0xf * ((0x2 * ((uint64_t)x10 * x11)) + (((uint64_t)x12 * x12) + (0x2 * ((uint64_t)x11 * x10))))));
- uint64_t x17 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0xf * (((uint64_t)x8 * x11) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((uint64_t)x11 * x8))))));
- uint64_t x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xf * ((0x2 * ((uint64_t)x6 * x11)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (0x2 * ((uint64_t)x11 * x6))))))));
- uint64_t x19 = (((uint64_t)x2 * x2) + (0xf * ((0x2 * ((uint64_t)x4 * x11)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (0x2 * ((uint64_t)x11 * x4)))))))));
- uint64_t x20 = (x19 >> 0x17);
- uint32_t x21 = ((uint32_t)x19 & 0x7fffff);
- uint64_t x22 = (x20 + x18);
- uint64_t x23 = (x22 >> 0x17);
- uint32_t x24 = ((uint32_t)x22 & 0x7fffff);
- uint64_t x25 = (x23 + x17);
- uint64_t x26 = (x25 >> 0x16);
- uint32_t x27 = ((uint32_t)x25 & 0x3fffff);
- uint64_t x28 = (x26 + x16);
- uint32_t x29 = (uint32_t) (x28 >> 0x17);
- uint32_t x30 = ((uint32_t)x28 & 0x7fffff);
- uint64_t x31 = (x29 + x15);
- uint32_t x32 = (uint32_t) (x31 >> 0x16);
- uint32_t x33 = ((uint32_t)x31 & 0x3fffff);
- uint64_t x34 = (x32 + x14);
- uint32_t x35 = (uint32_t) (x34 >> 0x17);
- uint32_t x36 = ((uint32_t)x34 & 0x7fffff);
- uint64_t x37 = (x35 + x13);
- uint32_t x38 = (uint32_t) (x37 >> 0x16);
- uint32_t x39 = ((uint32_t)x37 & 0x3fffff);
- uint64_t x40 = (x21 + ((uint64_t)0xf * x38));
- uint32_t x41 = (uint32_t) (x40 >> 0x17);
- uint32_t x42 = ((uint32_t)x40 & 0x7fffff);
- uint32_t x43 = (x41 + x24);
- uint32_t x44 = (x43 >> 0x17);
- uint32_t x45 = (x43 & 0x7fffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e158m15_7limbs/fesquareDisplay.v b/src/Specific/solinas32_2e158m15_7limbs/fesquareDisplay.v
deleted file mode 100644
index cb4a11560..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e158m15_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e158m15_7limbs/fesub.c b/src/Specific/solinas32_2e158m15_7limbs/fesub.c
deleted file mode 100644
index af7c7ded6..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = ((0xffffe2 + x5) - x17);
- out[1] = ((0xfffffe + x7) - x19);
- out[2] = ((0x7ffffe + x9) - x21);
- out[3] = ((0xfffffe + x11) - x23);
- out[4] = ((0x7ffffe + x13) - x25);
- out[5] = ((0xfffffe + x15) - x27);
- out[6] = ((0x7ffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e158m15_7limbs/fesub.v b/src/Specific/solinas32_2e158m15_7limbs/fesub.v
deleted file mode 100644
index dc64941dd..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e158m15_7limbs.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_7limbs/fesubDisplay.log b/src/Specific/solinas32_2e158m15_7limbs/fesubDisplay.log
deleted file mode 100644
index 6e0448548..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0x7ffffe + x14) - x26), ((0xfffffe + x15) - x27), ((0x7ffffe + x13) - x25), ((0xfffffe + x11) - x23), ((0x7ffffe + x9) - x21), ((0xfffffe + x7) - x19), ((0xffffe2 + x5) - x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e158m15_7limbs/fesubDisplay.v b/src/Specific/solinas32_2e158m15_7limbs/fesubDisplay.v
deleted file mode 100644
index 546cf3df6..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e158m15_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e158m15_7limbs/freeze.c b/src/Specific/solinas32_2e158m15_7limbs/freeze.c
deleted file mode 100644
index 53531452f..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffff1);
- { uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0x7fffff);
- { uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0x3fffff);
- { uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0x7fffff);
- { uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0x3fffff);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0x7fffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0x3fffff);
- { uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- { uint32_t x35 = (x34 & 0x7ffff1);
- { uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint32_t x39 = (x34 & 0x7fffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint32_t x43 = (x34 & 0x3fffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint32_t x47 = (x34 & 0x7fffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint32_t x51 = (x34 & 0x3fffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint32_t x55 = (x34 & 0x7fffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint32_t x59 = (x34 & 0x3fffff);
- { uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e158m15_7limbs/freeze.v b/src/Specific/solinas32_2e158m15_7limbs/freeze.v
deleted file mode 100644
index 6b7854531..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e158m15_7limbs.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_7limbs/freezeDisplay.log b/src/Specific/solinas32_2e158m15_7limbs/freezeDisplay.log
deleted file mode 100644
index 1d26d8e40..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffff1);
- uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0x7fffff);
- uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0x3fffff);
- uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0x7fffff);
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0x3fffff);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0x7fffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0x3fffff);
- uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- uint32_t x35 = (x34 & 0x7ffff1);
- uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint32_t x39 = (x34 & 0x7fffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint32_t x43 = (x34 & 0x3fffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint32_t x47 = (x34 & 0x7fffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint32_t x51 = (x34 & 0x3fffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint32_t x55 = (x34 & 0x7fffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint32_t x59 = (x34 & 0x3fffff);
- uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e158m15_7limbs/freezeDisplay.v b/src/Specific/solinas32_2e158m15_7limbs/freezeDisplay.v
deleted file mode 100644
index 3db6bf35e..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e158m15_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e158m15_7limbs/py_interpreter.sh b/src/Specific/solinas32_2e158m15_7limbs/py_interpreter.sh
deleted file mode 100755
index bb9fe4d9a..000000000
--- a/src/Specific/solinas32_2e158m15_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**158 - 15' -Dmodulus_bytes='22 + 4/7' -Da24='121665'
diff --git a/src/Specific/solinas32_2e165m25_7limbs/CurveParameters.v b/src/Specific/solinas32_2e165m25_7limbs/CurveParameters.v
deleted file mode 100644
index 108f8fc68..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^165 - 25
-Base: 23 + 4/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 23 + 4/7;
- bitwidth := 32;
- s := 2^165;
- c := [(1, 25)];
- carry_chains := Some [seq 0 (pred 7); [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_2e165m25_7limbs/Synthesis.v b/src/Specific/solinas32_2e165m25_7limbs/Synthesis.v
deleted file mode 100644
index 7800ca199..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e165m25_7limbs.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_2e165m25_7limbs/compiler.sh b/src/Specific/solinas32_2e165m25_7limbs/compiler.sh
deleted file mode 100755
index a0fe65c90..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/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,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,23,24,23,24,23}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<165) - 25' "$@"
diff --git a/src/Specific/solinas32_2e165m25_7limbs/compilerxx.sh b/src/Specific/solinas32_2e165m25_7limbs/compilerxx.sh
deleted file mode 100755
index 35e1d7a42..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/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,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,23,24,23,24,23}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<165) - 25' "$@"
diff --git a/src/Specific/solinas32_2e165m25_7limbs/feadd.c b/src/Specific/solinas32_2e165m25_7limbs/feadd.c
deleted file mode 100644
index 5288d0bef..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e165m25_7limbs/feadd.v b/src/Specific/solinas32_2e165m25_7limbs/feadd.v
deleted file mode 100644
index c584129a1..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e165m25_7limbs.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_2e165m25_7limbs/feaddDisplay.log b/src/Specific/solinas32_2e165m25_7limbs/feaddDisplay.log
deleted file mode 100644
index d22997dcb..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e165m25_7limbs/feaddDisplay.v b/src/Specific/solinas32_2e165m25_7limbs/feaddDisplay.v
deleted file mode 100644
index e7269822f..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e165m25_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e165m25_7limbs/fecarry.v b/src/Specific/solinas32_2e165m25_7limbs/fecarry.v
deleted file mode 100644
index 0fff1d861..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e165m25_7limbs.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_2e165m25_7limbs/fecarryDisplay.v b/src/Specific/solinas32_2e165m25_7limbs/fecarryDisplay.v
deleted file mode 100644
index 24b78ddb1..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e165m25_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e165m25_7limbs/femul.c b/src/Specific/solinas32_2e165m25_7limbs/femul.c
deleted file mode 100644
index fe4322931..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- { uint64_t x28 = (((uint64_t)x5 * x26) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + (((uint64_t)x11 * x23) + ((0x2 * ((uint64_t)x13 * x21)) + (((uint64_t)x15 * x19) + ((uint64_t)x14 * x17)))))));
- { uint64_t x29 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + ((0x2 * ((uint64_t)x13 * x19)) + ((uint64_t)x15 * x17)))))) + (0x19 * (0x2 * ((uint64_t)x14 * x26))));
- { uint64_t x30 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + ((0x2 * ((uint64_t)x9 * x21)) + (((uint64_t)x11 * x19) + ((uint64_t)x13 * x17))))) + (0x19 * (((uint64_t)x15 * x26) + ((uint64_t)x14 * x27))));
- { uint64_t x31 = ((((uint64_t)x5 * x23) + ((0x2 * ((uint64_t)x7 * x21)) + ((0x2 * ((uint64_t)x9 * x19)) + ((uint64_t)x11 * x17)))) + (0x19 * ((0x2 * ((uint64_t)x13 * x26)) + (((uint64_t)x15 * x27) + (0x2 * ((uint64_t)x14 * x25))))));
- { uint64_t x32 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + ((uint64_t)x9 * x17))) + (0x19 * (((uint64_t)x11 * x26) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + ((uint64_t)x14 * x23))))));
- { uint64_t x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) + (0x19 * ((0x2 * ((uint64_t)x9 * x26)) + (((uint64_t)x11 * x27) + ((0x2 * ((uint64_t)x13 * x25)) + (((uint64_t)x15 * x23) + (0x2 * ((uint64_t)x14 * x21))))))));
- { uint64_t x34 = (((uint64_t)x5 * x17) + (0x19 * ((0x2 * ((uint64_t)x7 * x26)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + (0x2 * ((uint64_t)x14 * x19)))))))));
- { uint64_t x35 = (x34 >> 0x18);
- { uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- { uint64_t x37 = (x35 + x33);
- { uint64_t x38 = (x37 >> 0x18);
- { uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- { uint64_t x40 = (x38 + x32);
- { uint64_t x41 = (x40 >> 0x17);
- { uint32_t x42 = ((uint32_t)x40 & 0x7fffff);
- { uint64_t x43 = (x41 + x31);
- { uint64_t x44 = (x43 >> 0x18);
- { uint32_t x45 = ((uint32_t)x43 & 0xffffff);
- { uint64_t x46 = (x44 + x30);
- { uint64_t x47 = (x46 >> 0x17);
- { uint32_t x48 = ((uint32_t)x46 & 0x7fffff);
- { uint64_t x49 = (x47 + x29);
- { uint32_t x50 = (uint32_t) (x49 >> 0x18);
- { uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- { uint64_t x52 = (x50 + x28);
- { uint32_t x53 = (uint32_t) (x52 >> 0x17);
- { uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- { uint64_t x55 = (x36 + ((uint64_t)0x19 * x53));
- { uint32_t x56 = (uint32_t) (x55 >> 0x18);
- { uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- { uint32_t x58 = (x56 + x39);
- { uint32_t x59 = (x58 >> 0x18);
- { uint32_t x60 = (x58 & 0xffffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e165m25_7limbs/femul.v b/src/Specific/solinas32_2e165m25_7limbs/femul.v
deleted file mode 100644
index 65638ae37..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e165m25_7limbs.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_2e165m25_7limbs/femulDisplay.log b/src/Specific/solinas32_2e165m25_7limbs/femulDisplay.log
deleted file mode 100644
index 372c83a54..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint64_t x28 = (((uint64_t)x5 * x26) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + (((uint64_t)x11 * x23) + ((0x2 * ((uint64_t)x13 * x21)) + (((uint64_t)x15 * x19) + ((uint64_t)x14 * x17)))))));
- uint64_t x29 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + ((0x2 * ((uint64_t)x13 * x19)) + ((uint64_t)x15 * x17)))))) + (0x19 * (0x2 * ((uint64_t)x14 * x26))));
- uint64_t x30 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + ((0x2 * ((uint64_t)x9 * x21)) + (((uint64_t)x11 * x19) + ((uint64_t)x13 * x17))))) + (0x19 * (((uint64_t)x15 * x26) + ((uint64_t)x14 * x27))));
- uint64_t x31 = ((((uint64_t)x5 * x23) + ((0x2 * ((uint64_t)x7 * x21)) + ((0x2 * ((uint64_t)x9 * x19)) + ((uint64_t)x11 * x17)))) + (0x19 * ((0x2 * ((uint64_t)x13 * x26)) + (((uint64_t)x15 * x27) + (0x2 * ((uint64_t)x14 * x25))))));
- uint64_t x32 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + ((uint64_t)x9 * x17))) + (0x19 * (((uint64_t)x11 * x26) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + ((uint64_t)x14 * x23))))));
- uint64_t x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) + (0x19 * ((0x2 * ((uint64_t)x9 * x26)) + (((uint64_t)x11 * x27) + ((0x2 * ((uint64_t)x13 * x25)) + (((uint64_t)x15 * x23) + (0x2 * ((uint64_t)x14 * x21))))))));
- uint64_t x34 = (((uint64_t)x5 * x17) + (0x19 * ((0x2 * ((uint64_t)x7 * x26)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + (0x2 * ((uint64_t)x14 * x19)))))))));
- uint64_t x35 = (x34 >> 0x18);
- uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- uint64_t x37 = (x35 + x33);
- uint64_t x38 = (x37 >> 0x18);
- uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- uint64_t x40 = (x38 + x32);
- uint64_t x41 = (x40 >> 0x17);
- uint32_t x42 = ((uint32_t)x40 & 0x7fffff);
- uint64_t x43 = (x41 + x31);
- uint64_t x44 = (x43 >> 0x18);
- uint32_t x45 = ((uint32_t)x43 & 0xffffff);
- uint64_t x46 = (x44 + x30);
- uint64_t x47 = (x46 >> 0x17);
- uint32_t x48 = ((uint32_t)x46 & 0x7fffff);
- uint64_t x49 = (x47 + x29);
- uint32_t x50 = (uint32_t) (x49 >> 0x18);
- uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- uint64_t x52 = (x50 + x28);
- uint32_t x53 = (uint32_t) (x52 >> 0x17);
- uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- uint64_t x55 = (x36 + ((uint64_t)0x19 * x53));
- uint32_t x56 = (uint32_t) (x55 >> 0x18);
- uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- uint32_t x58 = (x56 + x39);
- uint32_t x59 = (x58 >> 0x18);
- uint32_t x60 = (x58 & 0xffffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e165m25_7limbs/femulDisplay.v b/src/Specific/solinas32_2e165m25_7limbs/femulDisplay.v
deleted file mode 100644
index a147bf93b..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e165m25_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e165m25_7limbs/fesquare.c b/src/Specific/solinas32_2e165m25_7limbs/fesquare.c
deleted file mode 100644
index 5974ee820..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x13 = (((uint64_t)x2 * x11) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x11 * x2)))))));
- { uint64_t x14 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x19 * (0x2 * ((uint64_t)x11 * x11))));
- { uint64_t x15 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x19 * (((uint64_t)x12 * x11) + ((uint64_t)x11 * x12))));
- { uint64_t x16 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x19 * ((0x2 * ((uint64_t)x10 * x11)) + (((uint64_t)x12 * x12) + (0x2 * ((uint64_t)x11 * x10))))));
- { uint64_t x17 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x19 * (((uint64_t)x8 * x11) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((uint64_t)x11 * x8))))));
- { uint64_t x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x19 * ((0x2 * ((uint64_t)x6 * x11)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (0x2 * ((uint64_t)x11 * x6))))))));
- { uint64_t x19 = (((uint64_t)x2 * x2) + (0x19 * ((0x2 * ((uint64_t)x4 * x11)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (0x2 * ((uint64_t)x11 * x4)))))))));
- { uint64_t x20 = (x19 >> 0x18);
- { uint32_t x21 = ((uint32_t)x19 & 0xffffff);
- { uint64_t x22 = (x20 + x18);
- { uint64_t x23 = (x22 >> 0x18);
- { uint32_t x24 = ((uint32_t)x22 & 0xffffff);
- { uint64_t x25 = (x23 + x17);
- { uint64_t x26 = (x25 >> 0x17);
- { uint32_t x27 = ((uint32_t)x25 & 0x7fffff);
- { uint64_t x28 = (x26 + x16);
- { uint64_t x29 = (x28 >> 0x18);
- { uint32_t x30 = ((uint32_t)x28 & 0xffffff);
- { uint64_t x31 = (x29 + x15);
- { uint64_t x32 = (x31 >> 0x17);
- { uint32_t x33 = ((uint32_t)x31 & 0x7fffff);
- { uint64_t x34 = (x32 + x14);
- { uint32_t x35 = (uint32_t) (x34 >> 0x18);
- { uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- { uint64_t x37 = (x35 + x13);
- { uint32_t x38 = (uint32_t) (x37 >> 0x17);
- { uint32_t x39 = ((uint32_t)x37 & 0x7fffff);
- { uint64_t x40 = (x21 + ((uint64_t)0x19 * x38));
- { uint32_t x41 = (uint32_t) (x40 >> 0x18);
- { uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- { uint32_t x43 = (x41 + x24);
- { uint32_t x44 = (x43 >> 0x18);
- { uint32_t x45 = (x43 & 0xffffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e165m25_7limbs/fesquare.v b/src/Specific/solinas32_2e165m25_7limbs/fesquare.v
deleted file mode 100644
index 0945bfbff..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e165m25_7limbs.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_2e165m25_7limbs/fesquareDisplay.log b/src/Specific/solinas32_2e165m25_7limbs/fesquareDisplay.log
deleted file mode 100644
index 45b8ae257..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x13 = (((uint64_t)x2 * x11) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x11 * x2)))))));
- uint64_t x14 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x19 * (0x2 * ((uint64_t)x11 * x11))));
- uint64_t x15 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x19 * (((uint64_t)x12 * x11) + ((uint64_t)x11 * x12))));
- uint64_t x16 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x19 * ((0x2 * ((uint64_t)x10 * x11)) + (((uint64_t)x12 * x12) + (0x2 * ((uint64_t)x11 * x10))))));
- uint64_t x17 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x19 * (((uint64_t)x8 * x11) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((uint64_t)x11 * x8))))));
- uint64_t x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x19 * ((0x2 * ((uint64_t)x6 * x11)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (0x2 * ((uint64_t)x11 * x6))))))));
- uint64_t x19 = (((uint64_t)x2 * x2) + (0x19 * ((0x2 * ((uint64_t)x4 * x11)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (0x2 * ((uint64_t)x11 * x4)))))))));
- uint64_t x20 = (x19 >> 0x18);
- uint32_t x21 = ((uint32_t)x19 & 0xffffff);
- uint64_t x22 = (x20 + x18);
- uint64_t x23 = (x22 >> 0x18);
- uint32_t x24 = ((uint32_t)x22 & 0xffffff);
- uint64_t x25 = (x23 + x17);
- uint64_t x26 = (x25 >> 0x17);
- uint32_t x27 = ((uint32_t)x25 & 0x7fffff);
- uint64_t x28 = (x26 + x16);
- uint64_t x29 = (x28 >> 0x18);
- uint32_t x30 = ((uint32_t)x28 & 0xffffff);
- uint64_t x31 = (x29 + x15);
- uint64_t x32 = (x31 >> 0x17);
- uint32_t x33 = ((uint32_t)x31 & 0x7fffff);
- uint64_t x34 = (x32 + x14);
- uint32_t x35 = (uint32_t) (x34 >> 0x18);
- uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- uint64_t x37 = (x35 + x13);
- uint32_t x38 = (uint32_t) (x37 >> 0x17);
- uint32_t x39 = ((uint32_t)x37 & 0x7fffff);
- uint64_t x40 = (x21 + ((uint64_t)0x19 * x38));
- uint32_t x41 = (uint32_t) (x40 >> 0x18);
- uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- uint32_t x43 = (x41 + x24);
- uint32_t x44 = (x43 >> 0x18);
- uint32_t x45 = (x43 & 0xffffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e165m25_7limbs/fesquareDisplay.v b/src/Specific/solinas32_2e165m25_7limbs/fesquareDisplay.v
deleted file mode 100644
index 8d76e348b..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e165m25_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e165m25_7limbs/fesub.c b/src/Specific/solinas32_2e165m25_7limbs/fesub.c
deleted file mode 100644
index d942986f0..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = ((0x1ffffce + x5) - x17);
- out[1] = ((0x1fffffe + x7) - x19);
- out[2] = ((0xfffffe + x9) - x21);
- out[3] = ((0x1fffffe + x11) - x23);
- out[4] = ((0xfffffe + x13) - x25);
- out[5] = ((0x1fffffe + x15) - x27);
- out[6] = ((0xfffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e165m25_7limbs/fesub.v b/src/Specific/solinas32_2e165m25_7limbs/fesub.v
deleted file mode 100644
index 8e1c0965e..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e165m25_7limbs.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_2e165m25_7limbs/fesubDisplay.log b/src/Specific/solinas32_2e165m25_7limbs/fesubDisplay.log
deleted file mode 100644
index 0faebe502..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0xfffffe + x14) - x26), ((0x1fffffe + x15) - x27), ((0xfffffe + x13) - x25), ((0x1fffffe + x11) - x23), ((0xfffffe + x9) - x21), ((0x1fffffe + x7) - x19), ((0x1ffffce + x5) - x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e165m25_7limbs/fesubDisplay.v b/src/Specific/solinas32_2e165m25_7limbs/fesubDisplay.v
deleted file mode 100644
index 50f7ce5bd..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e165m25_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e165m25_7limbs/freeze.c b/src/Specific/solinas32_2e165m25_7limbs/freeze.c
deleted file mode 100644
index 051d61bd2..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffe7);
- { uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0xffffff);
- { uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0x7fffff);
- { uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0xffffff);
- { uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0x7fffff);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0xffffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0x7fffff);
- { uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- { uint32_t x35 = (x34 & 0xffffe7);
- { uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint32_t x39 = (x34 & 0xffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint32_t x43 = (x34 & 0x7fffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint32_t x47 = (x34 & 0xffffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint32_t x51 = (x34 & 0x7fffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint32_t x55 = (x34 & 0xffffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint32_t x59 = (x34 & 0x7fffff);
- { uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e165m25_7limbs/freeze.v b/src/Specific/solinas32_2e165m25_7limbs/freeze.v
deleted file mode 100644
index 17755bb32..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e165m25_7limbs.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_2e165m25_7limbs/freezeDisplay.log b/src/Specific/solinas32_2e165m25_7limbs/freezeDisplay.log
deleted file mode 100644
index 10c311d95..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffe7);
- uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0xffffff);
- uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0x7fffff);
- uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0xffffff);
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0x7fffff);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0xffffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0x7fffff);
- uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- uint32_t x35 = (x34 & 0xffffe7);
- uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint32_t x39 = (x34 & 0xffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint32_t x43 = (x34 & 0x7fffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint32_t x47 = (x34 & 0xffffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint32_t x51 = (x34 & 0x7fffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint32_t x55 = (x34 & 0xffffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint32_t x59 = (x34 & 0x7fffff);
- uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e165m25_7limbs/freezeDisplay.v b/src/Specific/solinas32_2e165m25_7limbs/freezeDisplay.v
deleted file mode 100644
index dc3f61e45..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e165m25_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e165m25_7limbs/py_interpreter.sh b/src/Specific/solinas32_2e165m25_7limbs/py_interpreter.sh
deleted file mode 100755
index e7e507314..000000000
--- a/src/Specific/solinas32_2e165m25_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**165 - 25' -Dmodulus_bytes='23 + 4/7' -Da24='121665'
diff --git a/src/Specific/solinas32_2e165m25_8limbs/CurveParameters.v b/src/Specific/solinas32_2e165m25_8limbs/CurveParameters.v
deleted file mode 100644
index d75d7b605..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^165 - 25
-Base: 20.625
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 20 + 5/8;
- bitwidth := 32;
- s := 2^165;
- c := [(1, 25)];
- carry_chains := Some [seq 0 (pred 8); [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_2e165m25_8limbs/Synthesis.v b/src/Specific/solinas32_2e165m25_8limbs/Synthesis.v
deleted file mode 100644
index 15c770f93..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e165m25_8limbs.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_2e165m25_8limbs/compiler.sh b/src/Specific/solinas32_2e165m25_8limbs/compiler.sh
deleted file mode 100755
index 3420b2a36..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/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,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{21,21,20,21,21,20,21,20}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<165) - 25' "$@"
diff --git a/src/Specific/solinas32_2e165m25_8limbs/compilerxx.sh b/src/Specific/solinas32_2e165m25_8limbs/compilerxx.sh
deleted file mode 100755
index af5b15632..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/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,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{21,21,20,21,21,20,21,20}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<165) - 25' "$@"
diff --git a/src/Specific/solinas32_2e165m25_8limbs/feadd.c b/src/Specific/solinas32_2e165m25_8limbs/feadd.c
deleted file mode 100644
index cc3671f75..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e165m25_8limbs/feadd.v b/src/Specific/solinas32_2e165m25_8limbs/feadd.v
deleted file mode 100644
index 0f7a26438..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e165m25_8limbs.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_2e165m25_8limbs/feaddDisplay.log b/src/Specific/solinas32_2e165m25_8limbs/feaddDisplay.log
deleted file mode 100644
index f25c10903..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e165m25_8limbs/feaddDisplay.v b/src/Specific/solinas32_2e165m25_8limbs/feaddDisplay.v
deleted file mode 100644
index 94814a27f..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e165m25_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e165m25_8limbs/fecarry.v b/src/Specific/solinas32_2e165m25_8limbs/fecarry.v
deleted file mode 100644
index d8197f0ed..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e165m25_8limbs.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_2e165m25_8limbs/fecarryDisplay.v b/src/Specific/solinas32_2e165m25_8limbs/fecarryDisplay.v
deleted file mode 100644
index 33325b17d..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e165m25_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e165m25_8limbs/femul.c b/src/Specific/solinas32_2e165m25_8limbs/femul.c
deleted file mode 100644
index 0150266c6..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint64_t x32 = (((uint64_t)x5 * x30) + (((uint64_t)x7 * x31) + ((0x2 * ((uint64_t)x9 * x29)) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + ((0x2 * ((uint64_t)x15 * x23)) + (((uint64_t)x17 * x21) + ((uint64_t)x16 * x19))))))));
- { uint64_t x33 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + (((uint64_t)x11 * x25) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + ((uint64_t)x17 * x19))))))) + (0x19 * (0x2 * ((uint64_t)x16 * x30))));
- { uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0x19 * (((uint64_t)x17 * x30) + ((uint64_t)x16 * x31))));
- { uint64_t x35 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + ((0x2 * ((uint64_t)x9 * x23)) + (((uint64_t)x11 * x21) + ((uint64_t)x13 * x19))))) + (0x19 * ((0x2 * ((uint64_t)x15 * x30)) + (((uint64_t)x17 * x31) + (0x2 * ((uint64_t)x16 * x29))))));
- { uint64_t x36 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((0x2 * ((uint64_t)x9 * x21)) + ((uint64_t)x11 * x19)))) + (0x19 * ((0x2 * ((uint64_t)x13 * x30)) + ((0x2 * ((uint64_t)x15 * x31)) + ((0x2 * ((uint64_t)x17 * x29)) + (0x2 * ((uint64_t)x16 * x27)))))));
- { uint64_t x37 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((uint64_t)x9 * x19))) + (0x19 * (((uint64_t)x11 * x30) + (((uint64_t)x13 * x31) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + ((uint64_t)x16 * x25)))))));
- { uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0x19 * ((0x2 * ((uint64_t)x9 * x30)) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + ((0x2 * ((uint64_t)x15 * x27)) + (((uint64_t)x17 * x25) + (0x2 * ((uint64_t)x16 * x23)))))))));
- { uint64_t x39 = (((uint64_t)x5 * x19) + (0x19 * ((0x2 * ((uint64_t)x7 * x30)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + (0x2 * ((uint64_t)x16 * x21))))))))));
- { uint64_t x40 = (x39 >> 0x15);
- { uint32_t x41 = ((uint32_t)x39 & 0x1fffff);
- { uint64_t x42 = (x40 + x38);
- { uint32_t x43 = (uint32_t) (x42 >> 0x15);
- { uint32_t x44 = ((uint32_t)x42 & 0x1fffff);
- { uint64_t x45 = (x43 + x37);
- { uint32_t x46 = (uint32_t) (x45 >> 0x14);
- { uint32_t x47 = ((uint32_t)x45 & 0xfffff);
- { uint64_t x48 = (x46 + x36);
- { uint32_t x49 = (uint32_t) (x48 >> 0x15);
- { uint32_t x50 = ((uint32_t)x48 & 0x1fffff);
- { uint64_t x51 = (x49 + x35);
- { uint32_t x52 = (uint32_t) (x51 >> 0x15);
- { uint32_t x53 = ((uint32_t)x51 & 0x1fffff);
- { uint64_t x54 = (x52 + x34);
- { uint32_t x55 = (uint32_t) (x54 >> 0x14);
- { uint32_t x56 = ((uint32_t)x54 & 0xfffff);
- { uint64_t x57 = (x55 + x33);
- { uint32_t x58 = (uint32_t) (x57 >> 0x15);
- { uint32_t x59 = ((uint32_t)x57 & 0x1fffff);
- { uint64_t x60 = (x58 + x32);
- { uint32_t x61 = (uint32_t) (x60 >> 0x14);
- { uint32_t x62 = ((uint32_t)x60 & 0xfffff);
- { uint64_t x63 = (x41 + ((uint64_t)0x19 * x61));
- { uint32_t x64 = (uint32_t) (x63 >> 0x15);
- { uint32_t x65 = ((uint32_t)x63 & 0x1fffff);
- { uint32_t x66 = (x64 + x44);
- { uint32_t x67 = (x66 >> 0x15);
- { uint32_t x68 = (x66 & 0x1fffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e165m25_8limbs/femul.v b/src/Specific/solinas32_2e165m25_8limbs/femul.v
deleted file mode 100644
index 11a9d8734..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e165m25_8limbs.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_2e165m25_8limbs/femulDisplay.log b/src/Specific/solinas32_2e165m25_8limbs/femulDisplay.log
deleted file mode 100644
index 3c46f018f..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x32 = (((uint64_t)x5 * x30) + (((uint64_t)x7 * x31) + ((0x2 * ((uint64_t)x9 * x29)) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + ((0x2 * ((uint64_t)x15 * x23)) + (((uint64_t)x17 * x21) + ((uint64_t)x16 * x19))))))));
- uint64_t x33 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + (((uint64_t)x11 * x25) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + ((uint64_t)x17 * x19))))))) + (0x19 * (0x2 * ((uint64_t)x16 * x30))));
- uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0x19 * (((uint64_t)x17 * x30) + ((uint64_t)x16 * x31))));
- uint64_t x35 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + ((0x2 * ((uint64_t)x9 * x23)) + (((uint64_t)x11 * x21) + ((uint64_t)x13 * x19))))) + (0x19 * ((0x2 * ((uint64_t)x15 * x30)) + (((uint64_t)x17 * x31) + (0x2 * ((uint64_t)x16 * x29))))));
- uint64_t x36 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((0x2 * ((uint64_t)x9 * x21)) + ((uint64_t)x11 * x19)))) + (0x19 * ((0x2 * ((uint64_t)x13 * x30)) + ((0x2 * ((uint64_t)x15 * x31)) + ((0x2 * ((uint64_t)x17 * x29)) + (0x2 * ((uint64_t)x16 * x27)))))));
- uint64_t x37 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((uint64_t)x9 * x19))) + (0x19 * (((uint64_t)x11 * x30) + (((uint64_t)x13 * x31) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + ((uint64_t)x16 * x25)))))));
- uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0x19 * ((0x2 * ((uint64_t)x9 * x30)) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + ((0x2 * ((uint64_t)x15 * x27)) + (((uint64_t)x17 * x25) + (0x2 * ((uint64_t)x16 * x23)))))))));
- uint64_t x39 = (((uint64_t)x5 * x19) + (0x19 * ((0x2 * ((uint64_t)x7 * x30)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + (0x2 * ((uint64_t)x16 * x21))))))))));
- uint64_t x40 = (x39 >> 0x15);
- uint32_t x41 = ((uint32_t)x39 & 0x1fffff);
- uint64_t x42 = (x40 + x38);
- uint32_t x43 = (uint32_t) (x42 >> 0x15);
- uint32_t x44 = ((uint32_t)x42 & 0x1fffff);
- uint64_t x45 = (x43 + x37);
- uint32_t x46 = (uint32_t) (x45 >> 0x14);
- uint32_t x47 = ((uint32_t)x45 & 0xfffff);
- uint64_t x48 = (x46 + x36);
- uint32_t x49 = (uint32_t) (x48 >> 0x15);
- uint32_t x50 = ((uint32_t)x48 & 0x1fffff);
- uint64_t x51 = (x49 + x35);
- uint32_t x52 = (uint32_t) (x51 >> 0x15);
- uint32_t x53 = ((uint32_t)x51 & 0x1fffff);
- uint64_t x54 = (x52 + x34);
- uint32_t x55 = (uint32_t) (x54 >> 0x14);
- uint32_t x56 = ((uint32_t)x54 & 0xfffff);
- uint64_t x57 = (x55 + x33);
- uint32_t x58 = (uint32_t) (x57 >> 0x15);
- uint32_t x59 = ((uint32_t)x57 & 0x1fffff);
- uint64_t x60 = (x58 + x32);
- uint32_t x61 = (uint32_t) (x60 >> 0x14);
- uint32_t x62 = ((uint32_t)x60 & 0xfffff);
- uint64_t x63 = (x41 + ((uint64_t)0x19 * x61));
- uint32_t x64 = (uint32_t) (x63 >> 0x15);
- uint32_t x65 = ((uint32_t)x63 & 0x1fffff);
- uint32_t x66 = (x64 + x44);
- uint32_t x67 = (x66 >> 0x15);
- uint32_t x68 = (x66 & 0x1fffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e165m25_8limbs/femulDisplay.v b/src/Specific/solinas32_2e165m25_8limbs/femulDisplay.v
deleted file mode 100644
index e3557a8c5..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e165m25_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e165m25_8limbs/fesquare.c b/src/Specific/solinas32_2e165m25_8limbs/fesquare.c
deleted file mode 100644
index 5bae4d373..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (((uint64_t)x2 * x13) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x13 * x2))))))));
- { uint64_t x16 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x19 * (0x2 * ((uint64_t)x13 * x13))));
- { uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x19 * (((uint64_t)x14 * x13) + ((uint64_t)x13 * x14))));
- { uint64_t x18 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x19 * ((0x2 * ((uint64_t)x12 * x13)) + (((uint64_t)x14 * x14) + (0x2 * ((uint64_t)x13 * x12))))));
- { uint64_t x19 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x19 * ((0x2 * ((uint64_t)x10 * x13)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (0x2 * ((uint64_t)x13 * x10)))))));
- { uint64_t x20 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x19 * (((uint64_t)x8 * x13) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + ((uint64_t)x13 * x8)))))));
- { uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x19 * ((0x2 * ((uint64_t)x6 * x13)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + (0x2 * ((uint64_t)x13 * x6)))))))));
- { uint64_t x22 = (((uint64_t)x2 * x2) + (0x19 * ((0x2 * ((uint64_t)x4 * x13)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (0x2 * ((uint64_t)x13 * x4))))))))));
- { uint64_t x23 = (x22 >> 0x15);
- { uint32_t x24 = ((uint32_t)x22 & 0x1fffff);
- { uint64_t x25 = (x23 + x21);
- { uint32_t x26 = (uint32_t) (x25 >> 0x15);
- { uint32_t x27 = ((uint32_t)x25 & 0x1fffff);
- { uint64_t x28 = (x26 + x20);
- { uint32_t x29 = (uint32_t) (x28 >> 0x14);
- { uint32_t x30 = ((uint32_t)x28 & 0xfffff);
- { uint64_t x31 = (x29 + x19);
- { uint32_t x32 = (uint32_t) (x31 >> 0x15);
- { uint32_t x33 = ((uint32_t)x31 & 0x1fffff);
- { uint64_t x34 = (x32 + x18);
- { uint32_t x35 = (uint32_t) (x34 >> 0x15);
- { uint32_t x36 = ((uint32_t)x34 & 0x1fffff);
- { uint64_t x37 = (x35 + x17);
- { uint32_t x38 = (uint32_t) (x37 >> 0x14);
- { uint32_t x39 = ((uint32_t)x37 & 0xfffff);
- { uint64_t x40 = (x38 + x16);
- { uint32_t x41 = (uint32_t) (x40 >> 0x15);
- { uint32_t x42 = ((uint32_t)x40 & 0x1fffff);
- { uint64_t x43 = (x41 + x15);
- { uint32_t x44 = (uint32_t) (x43 >> 0x14);
- { uint32_t x45 = ((uint32_t)x43 & 0xfffff);
- { uint64_t x46 = (x24 + ((uint64_t)0x19 * x44));
- { uint32_t x47 = (uint32_t) (x46 >> 0x15);
- { uint32_t x48 = ((uint32_t)x46 & 0x1fffff);
- { uint32_t x49 = (x47 + x27);
- { uint32_t x50 = (x49 >> 0x15);
- { uint32_t x51 = (x49 & 0x1fffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e165m25_8limbs/fesquare.v b/src/Specific/solinas32_2e165m25_8limbs/fesquare.v
deleted file mode 100644
index b92f7fa43..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e165m25_8limbs.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_2e165m25_8limbs/fesquareDisplay.log b/src/Specific/solinas32_2e165m25_8limbs/fesquareDisplay.log
deleted file mode 100644
index 718555371..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (((uint64_t)x2 * x13) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x13 * x2))))))));
- uint64_t x16 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x19 * (0x2 * ((uint64_t)x13 * x13))));
- uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x19 * (((uint64_t)x14 * x13) + ((uint64_t)x13 * x14))));
- uint64_t x18 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x19 * ((0x2 * ((uint64_t)x12 * x13)) + (((uint64_t)x14 * x14) + (0x2 * ((uint64_t)x13 * x12))))));
- uint64_t x19 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x19 * ((0x2 * ((uint64_t)x10 * x13)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (0x2 * ((uint64_t)x13 * x10)))))));
- uint64_t x20 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x19 * (((uint64_t)x8 * x13) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + ((uint64_t)x13 * x8)))))));
- uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x19 * ((0x2 * ((uint64_t)x6 * x13)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + (0x2 * ((uint64_t)x13 * x6)))))))));
- uint64_t x22 = (((uint64_t)x2 * x2) + (0x19 * ((0x2 * ((uint64_t)x4 * x13)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (0x2 * ((uint64_t)x13 * x4))))))))));
- uint64_t x23 = (x22 >> 0x15);
- uint32_t x24 = ((uint32_t)x22 & 0x1fffff);
- uint64_t x25 = (x23 + x21);
- uint32_t x26 = (uint32_t) (x25 >> 0x15);
- uint32_t x27 = ((uint32_t)x25 & 0x1fffff);
- uint64_t x28 = (x26 + x20);
- uint32_t x29 = (uint32_t) (x28 >> 0x14);
- uint32_t x30 = ((uint32_t)x28 & 0xfffff);
- uint64_t x31 = (x29 + x19);
- uint32_t x32 = (uint32_t) (x31 >> 0x15);
- uint32_t x33 = ((uint32_t)x31 & 0x1fffff);
- uint64_t x34 = (x32 + x18);
- uint32_t x35 = (uint32_t) (x34 >> 0x15);
- uint32_t x36 = ((uint32_t)x34 & 0x1fffff);
- uint64_t x37 = (x35 + x17);
- uint32_t x38 = (uint32_t) (x37 >> 0x14);
- uint32_t x39 = ((uint32_t)x37 & 0xfffff);
- uint64_t x40 = (x38 + x16);
- uint32_t x41 = (uint32_t) (x40 >> 0x15);
- uint32_t x42 = ((uint32_t)x40 & 0x1fffff);
- uint64_t x43 = (x41 + x15);
- uint32_t x44 = (uint32_t) (x43 >> 0x14);
- uint32_t x45 = ((uint32_t)x43 & 0xfffff);
- uint64_t x46 = (x24 + ((uint64_t)0x19 * x44));
- uint32_t x47 = (uint32_t) (x46 >> 0x15);
- uint32_t x48 = ((uint32_t)x46 & 0x1fffff);
- uint32_t x49 = (x47 + x27);
- uint32_t x50 = (x49 >> 0x15);
- uint32_t x51 = (x49 & 0x1fffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e165m25_8limbs/fesquareDisplay.v b/src/Specific/solinas32_2e165m25_8limbs/fesquareDisplay.v
deleted file mode 100644
index 52e5ac8b9..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e165m25_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e165m25_8limbs/fesub.c b/src/Specific/solinas32_2e165m25_8limbs/fesub.c
deleted file mode 100644
index bd69e708d..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = ((0x3fffce + x5) - x19);
- out[1] = ((0x3ffffe + x7) - x21);
- out[2] = ((0x1ffffe + x9) - x23);
- out[3] = ((0x3ffffe + x11) - x25);
- out[4] = ((0x3ffffe + x13) - x27);
- out[5] = ((0x1ffffe + x15) - x29);
- out[6] = ((0x3ffffe + x17) - x31);
- out[7] = ((0x1ffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e165m25_8limbs/fesub.v b/src/Specific/solinas32_2e165m25_8limbs/fesub.v
deleted file mode 100644
index 12838e5ec..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e165m25_8limbs.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_2e165m25_8limbs/fesubDisplay.log b/src/Specific/solinas32_2e165m25_8limbs/fesubDisplay.log
deleted file mode 100644
index 660588243..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0x1ffffe + x16) - x30), ((0x3ffffe + x17) - x31), ((0x1ffffe + x15) - x29), ((0x3ffffe + x13) - x27), ((0x3ffffe + x11) - x25), ((0x1ffffe + x9) - x23), ((0x3ffffe + x7) - x21), ((0x3fffce + x5) - x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e165m25_8limbs/fesubDisplay.v b/src/Specific/solinas32_2e165m25_8limbs/fesubDisplay.v
deleted file mode 100644
index 2aa395b64..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e165m25_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e165m25_8limbs/freeze.c b/src/Specific/solinas32_2e165m25_8limbs/freeze.c
deleted file mode 100644
index 10da45359..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffe7);
- { uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0x1fffff);
- { uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0xfffff);
- { uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0x1fffff);
- { uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0x1fffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0xfffff);
- { uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0x1fffff);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0xfffff);
- { uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- { uint32_t x40 = (x39 & 0x1fffe7);
- { uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint32_t x44 = (x39 & 0x1fffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint32_t x48 = (x39 & 0xfffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint32_t x52 = (x39 & 0x1fffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint32_t x56 = (x39 & 0x1fffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint32_t x60 = (x39 & 0xfffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint32_t x64 = (x39 & 0x1fffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint32_t x68 = (x39 & 0xfffff);
- { uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e165m25_8limbs/freeze.v b/src/Specific/solinas32_2e165m25_8limbs/freeze.v
deleted file mode 100644
index b92d3e42c..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e165m25_8limbs.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_2e165m25_8limbs/freezeDisplay.log b/src/Specific/solinas32_2e165m25_8limbs/freezeDisplay.log
deleted file mode 100644
index 8f9d23fc0..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffe7);
- uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0x1fffff);
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0xfffff);
- uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0x1fffff);
- uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0x1fffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0xfffff);
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0x1fffff);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0xfffff);
- uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- uint32_t x40 = (x39 & 0x1fffe7);
- uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint32_t x44 = (x39 & 0x1fffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint32_t x48 = (x39 & 0xfffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint32_t x52 = (x39 & 0x1fffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint32_t x56 = (x39 & 0x1fffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint32_t x60 = (x39 & 0xfffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint32_t x64 = (x39 & 0x1fffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint32_t x68 = (x39 & 0xfffff);
- uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e165m25_8limbs/freezeDisplay.v b/src/Specific/solinas32_2e165m25_8limbs/freezeDisplay.v
deleted file mode 100644
index 3ea1187db..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e165m25_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e165m25_8limbs/py_interpreter.sh b/src/Specific/solinas32_2e165m25_8limbs/py_interpreter.sh
deleted file mode 100755
index 45895b7d1..000000000
--- a/src/Specific/solinas32_2e165m25_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**165 - 25' -Dmodulus_bytes='20.625' -Da24='121665'
diff --git a/src/Specific/solinas32_2e166m5_6limbs/CurveParameters.v b/src/Specific/solinas32_2e166m5_6limbs/CurveParameters.v
deleted file mode 100644
index 7ac75883c..000000000
--- a/src/Specific/solinas32_2e166m5_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^166 - 5
-Base: 27 + 2/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 27 + 2/3;
- bitwidth := 32;
- s := 2^166;
- c := [(1, 5)];
- 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_2e166m5_6limbs/Synthesis.v b/src/Specific/solinas32_2e166m5_6limbs/Synthesis.v
deleted file mode 100644
index 76e907892..000000000
--- a/src/Specific/solinas32_2e166m5_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e166m5_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_2e166m5_6limbs/compiler.sh b/src/Specific/solinas32_2e166m5_6limbs/compiler.sh
deleted file mode 100755
index 6c684d09a..000000000
--- a/src/Specific/solinas32_2e166m5_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,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{28,28,27,28,28,27}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<166) - 5' "$@"
diff --git a/src/Specific/solinas32_2e166m5_6limbs/compilerxx.sh b/src/Specific/solinas32_2e166m5_6limbs/compilerxx.sh
deleted file mode 100755
index 4c634cb3f..000000000
--- a/src/Specific/solinas32_2e166m5_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,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{28,28,27,28,28,27}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<166) - 5' "$@"
diff --git a/src/Specific/solinas32_2e166m5_6limbs/feadd.c b/src/Specific/solinas32_2e166m5_6limbs/feadd.c
deleted file mode 100644
index 5b654b294..000000000
--- a/src/Specific/solinas32_2e166m5_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_2e166m5_6limbs/feadd.v b/src/Specific/solinas32_2e166m5_6limbs/feadd.v
deleted file mode 100644
index 2bffbb708..000000000
--- a/src/Specific/solinas32_2e166m5_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e166m5_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_2e166m5_6limbs/feaddDisplay.log b/src/Specific/solinas32_2e166m5_6limbs/feaddDisplay.log
deleted file mode 100644
index 1084b2659..000000000
--- a/src/Specific/solinas32_2e166m5_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_2e166m5_6limbs/feaddDisplay.v b/src/Specific/solinas32_2e166m5_6limbs/feaddDisplay.v
deleted file mode 100644
index 3338bd7da..000000000
--- a/src/Specific/solinas32_2e166m5_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e166m5_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e166m5_6limbs/fecarry.v b/src/Specific/solinas32_2e166m5_6limbs/fecarry.v
deleted file mode 100644
index 8cffdfb03..000000000
--- a/src/Specific/solinas32_2e166m5_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e166m5_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_2e166m5_6limbs/fecarryDisplay.v b/src/Specific/solinas32_2e166m5_6limbs/fecarryDisplay.v
deleted file mode 100644
index 608375825..000000000
--- a/src/Specific/solinas32_2e166m5_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e166m5_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e166m5_6limbs/femul.c b/src/Specific/solinas32_2e166m5_6limbs/femul.c
deleted file mode 100644
index 2d1b2d490..000000000
--- a/src/Specific/solinas32_2e166m5_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) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + (((uint64_t)x11 * x19) + (((uint64_t)x13 * x17) + ((uint64_t)x12 * x15))))));
- { uint64_t x25 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((0x2 * ((uint64_t)x9 * x19)) + (((uint64_t)x11 * x17) + ((uint64_t)x13 * x15))))) + (0x5 * (0x2 * ((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)))) + (0x5 * ((0x2 * ((uint64_t)x13 * x22)) + (0x2 * ((uint64_t)x12 * x23)))));
- { uint64_t x27 = ((((uint64_t)x5 * x19) + (((uint64_t)x7 * x17) + ((uint64_t)x9 * x15))) + (0x5 * (((uint64_t)x11 * x22) + (((uint64_t)x13 * x23) + ((uint64_t)x12 * x21)))));
- { uint64_t x28 = ((((uint64_t)x5 * x17) + ((uint64_t)x7 * x15)) + (0x5 * ((0x2 * ((uint64_t)x9 * x22)) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + (0x2 * ((uint64_t)x12 * x19)))))));
- { ℤ x29 = (((uint64_t)x5 * x15) +ℤ (0x5 *ℤ ((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 >> 0x1c);
- { uint32_t x31 = (x29 & 0xfffffff);
- { uint64_t x32 = (x30 + x28);
- { uint64_t x33 = (x32 >> 0x1c);
- { uint32_t x34 = ((uint32_t)x32 & 0xfffffff);
- { uint64_t x35 = (x33 + x27);
- { uint64_t x36 = (x35 >> 0x1b);
- { uint32_t x37 = ((uint32_t)x35 & 0x7ffffff);
- { uint64_t x38 = (x36 + x26);
- { uint64_t x39 = (x38 >> 0x1c);
- { uint32_t x40 = ((uint32_t)x38 & 0xfffffff);
- { uint64_t x41 = (x39 + x25);
- { uint64_t x42 = (x41 >> 0x1c);
- { uint32_t x43 = ((uint32_t)x41 & 0xfffffff);
- { uint64_t x44 = (x42 + x24);
- { uint64_t x45 = (x44 >> 0x1b);
- { uint32_t x46 = ((uint32_t)x44 & 0x7ffffff);
- { uint64_t x47 = (x31 + (0x5 * x45));
- { uint32_t x48 = (uint32_t) (x47 >> 0x1c);
- { uint32_t x49 = ((uint32_t)x47 & 0xfffffff);
- { uint32_t x50 = (x48 + x34);
- { uint32_t x51 = (x50 >> 0x1c);
- { uint32_t x52 = (x50 & 0xfffffff);
- 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_2e166m5_6limbs/femul.v b/src/Specific/solinas32_2e166m5_6limbs/femul.v
deleted file mode 100644
index 9bf9ff4ca..000000000
--- a/src/Specific/solinas32_2e166m5_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e166m5_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_2e166m5_6limbs/femulDisplay.log b/src/Specific/solinas32_2e166m5_6limbs/femulDisplay.log
deleted file mode 100644
index f4c573268..000000000
--- a/src/Specific/solinas32_2e166m5_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) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + (((uint64_t)x11 * x19) + (((uint64_t)x13 * x17) + ((uint64_t)x12 * x15))))));
- uint64_t x25 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((0x2 * ((uint64_t)x9 * x19)) + (((uint64_t)x11 * x17) + ((uint64_t)x13 * x15))))) + (0x5 * (0x2 * ((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)))) + (0x5 * ((0x2 * ((uint64_t)x13 * x22)) + (0x2 * ((uint64_t)x12 * x23)))));
- uint64_t x27 = ((((uint64_t)x5 * x19) + (((uint64_t)x7 * x17) + ((uint64_t)x9 * x15))) + (0x5 * (((uint64_t)x11 * x22) + (((uint64_t)x13 * x23) + ((uint64_t)x12 * x21)))));
- uint64_t x28 = ((((uint64_t)x5 * x17) + ((uint64_t)x7 * x15)) + (0x5 * ((0x2 * ((uint64_t)x9 * x22)) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + (0x2 * ((uint64_t)x12 * x19)))))));
- ℤ x29 = (((uint64_t)x5 * x15) +ℤ (0x5 *ℤ ((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 >> 0x1c);
- uint32_t x31 = (x29 & 0xfffffff);
- uint64_t x32 = (x30 + x28);
- uint64_t x33 = (x32 >> 0x1c);
- uint32_t x34 = ((uint32_t)x32 & 0xfffffff);
- uint64_t x35 = (x33 + x27);
- uint64_t x36 = (x35 >> 0x1b);
- uint32_t x37 = ((uint32_t)x35 & 0x7ffffff);
- uint64_t x38 = (x36 + x26);
- uint64_t x39 = (x38 >> 0x1c);
- uint32_t x40 = ((uint32_t)x38 & 0xfffffff);
- uint64_t x41 = (x39 + x25);
- uint64_t x42 = (x41 >> 0x1c);
- uint32_t x43 = ((uint32_t)x41 & 0xfffffff);
- uint64_t x44 = (x42 + x24);
- uint64_t x45 = (x44 >> 0x1b);
- uint32_t x46 = ((uint32_t)x44 & 0x7ffffff);
- uint64_t x47 = (x31 + (0x5 * x45));
- uint32_t x48 = (uint32_t) (x47 >> 0x1c);
- uint32_t x49 = ((uint32_t)x47 & 0xfffffff);
- uint32_t x50 = (x48 + x34);
- uint32_t x51 = (x50 >> 0x1c);
- uint32_t x52 = (x50 & 0xfffffff);
- 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_2e166m5_6limbs/femulDisplay.v b/src/Specific/solinas32_2e166m5_6limbs/femulDisplay.v
deleted file mode 100644
index e3d8fc1b2..000000000
--- a/src/Specific/solinas32_2e166m5_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e166m5_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e166m5_6limbs/fesquare.c b/src/Specific/solinas32_2e166m5_6limbs/fesquare.c
deleted file mode 100644
index a6c7d5591..000000000
--- a/src/Specific/solinas32_2e166m5_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) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x9 * x2))))));
- { uint64_t x12 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x5 * (0x2 * ((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)))) + (0x5 * ((0x2 * ((uint64_t)x10 * x9)) + (0x2 * ((uint64_t)x9 * x10)))));
- { uint64_t x14 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x5 * (((uint64_t)x8 * x9) + (((uint64_t)x10 * x10) + ((uint64_t)x9 * x8)))));
- { uint64_t x15 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x5 * ((0x2 * ((uint64_t)x6 * x9)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (0x2 * ((uint64_t)x9 * x6)))))));
- { ℤ x16 = (((uint64_t)x2 * x2) +ℤ (0x5 *ℤ ((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 >> 0x1c);
- { uint32_t x18 = (x16 & 0xfffffff);
- { uint64_t x19 = (x17 + x15);
- { uint64_t x20 = (x19 >> 0x1c);
- { uint32_t x21 = ((uint32_t)x19 & 0xfffffff);
- { uint64_t x22 = (x20 + x14);
- { uint64_t x23 = (x22 >> 0x1b);
- { uint32_t x24 = ((uint32_t)x22 & 0x7ffffff);
- { uint64_t x25 = (x23 + x13);
- { uint64_t x26 = (x25 >> 0x1c);
- { uint32_t x27 = ((uint32_t)x25 & 0xfffffff);
- { uint64_t x28 = (x26 + x12);
- { uint64_t x29 = (x28 >> 0x1c);
- { uint32_t x30 = ((uint32_t)x28 & 0xfffffff);
- { uint64_t x31 = (x29 + x11);
- { uint64_t x32 = (x31 >> 0x1b);
- { uint32_t x33 = ((uint32_t)x31 & 0x7ffffff);
- { uint64_t x34 = (x18 + (0x5 * x32));
- { uint32_t x35 = (uint32_t) (x34 >> 0x1c);
- { uint32_t x36 = ((uint32_t)x34 & 0xfffffff);
- { uint32_t x37 = (x35 + x21);
- { uint32_t x38 = (x37 >> 0x1c);
- { uint32_t x39 = (x37 & 0xfffffff);
- 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_2e166m5_6limbs/fesquare.v b/src/Specific/solinas32_2e166m5_6limbs/fesquare.v
deleted file mode 100644
index d2ebbb35a..000000000
--- a/src/Specific/solinas32_2e166m5_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e166m5_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_2e166m5_6limbs/fesquareDisplay.log b/src/Specific/solinas32_2e166m5_6limbs/fesquareDisplay.log
deleted file mode 100644
index 5b04f3bba..000000000
--- a/src/Specific/solinas32_2e166m5_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) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x9 * x2))))));
- uint64_t x12 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x5 * (0x2 * ((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)))) + (0x5 * ((0x2 * ((uint64_t)x10 * x9)) + (0x2 * ((uint64_t)x9 * x10)))));
- uint64_t x14 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x5 * (((uint64_t)x8 * x9) + (((uint64_t)x10 * x10) + ((uint64_t)x9 * x8)))));
- uint64_t x15 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x5 * ((0x2 * ((uint64_t)x6 * x9)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (0x2 * ((uint64_t)x9 * x6)))))));
- ℤ x16 = (((uint64_t)x2 * x2) +ℤ (0x5 *ℤ ((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 >> 0x1c);
- uint32_t x18 = (x16 & 0xfffffff);
- uint64_t x19 = (x17 + x15);
- uint64_t x20 = (x19 >> 0x1c);
- uint32_t x21 = ((uint32_t)x19 & 0xfffffff);
- uint64_t x22 = (x20 + x14);
- uint64_t x23 = (x22 >> 0x1b);
- uint32_t x24 = ((uint32_t)x22 & 0x7ffffff);
- uint64_t x25 = (x23 + x13);
- uint64_t x26 = (x25 >> 0x1c);
- uint32_t x27 = ((uint32_t)x25 & 0xfffffff);
- uint64_t x28 = (x26 + x12);
- uint64_t x29 = (x28 >> 0x1c);
- uint32_t x30 = ((uint32_t)x28 & 0xfffffff);
- uint64_t x31 = (x29 + x11);
- uint64_t x32 = (x31 >> 0x1b);
- uint32_t x33 = ((uint32_t)x31 & 0x7ffffff);
- uint64_t x34 = (x18 + (0x5 * x32));
- uint32_t x35 = (uint32_t) (x34 >> 0x1c);
- uint32_t x36 = ((uint32_t)x34 & 0xfffffff);
- uint32_t x37 = (x35 + x21);
- uint32_t x38 = (x37 >> 0x1c);
- uint32_t x39 = (x37 & 0xfffffff);
- 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_2e166m5_6limbs/fesquareDisplay.v b/src/Specific/solinas32_2e166m5_6limbs/fesquareDisplay.v
deleted file mode 100644
index 2d6ab9323..000000000
--- a/src/Specific/solinas32_2e166m5_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e166m5_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e166m5_6limbs/fesub.c b/src/Specific/solinas32_2e166m5_6limbs/fesub.c
deleted file mode 100644
index 00ba16853..000000000
--- a/src/Specific/solinas32_2e166m5_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] = ((0x1ffffff6 + x5) - x15);
- out[1] = ((0x1ffffffe + x7) - x17);
- out[2] = ((0xffffffe + x9) - x19);
- out[3] = ((0x1ffffffe + x11) - x21);
- out[4] = ((0x1ffffffe + x13) - x23);
- out[5] = ((0xffffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e166m5_6limbs/fesub.v b/src/Specific/solinas32_2e166m5_6limbs/fesub.v
deleted file mode 100644
index 7de97f5c3..000000000
--- a/src/Specific/solinas32_2e166m5_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e166m5_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_2e166m5_6limbs/fesubDisplay.log b/src/Specific/solinas32_2e166m5_6limbs/fesubDisplay.log
deleted file mode 100644
index 52ac96f21..000000000
--- a/src/Specific/solinas32_2e166m5_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,
- (((0xffffffe + x12) - x22), ((0x1ffffffe + x13) - x23), ((0x1ffffffe + x11) - x21), ((0xffffffe + x9) - x19), ((0x1ffffffe + x7) - x17), ((0x1ffffff6 + 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_2e166m5_6limbs/fesubDisplay.v b/src/Specific/solinas32_2e166m5_6limbs/fesubDisplay.v
deleted file mode 100644
index 13608796f..000000000
--- a/src/Specific/solinas32_2e166m5_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e166m5_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e166m5_6limbs/freeze.c b/src/Specific/solinas32_2e166m5_6limbs/freeze.c
deleted file mode 100644
index 2d49c1e3f..000000000
--- a/src/Specific/solinas32_2e166m5_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 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffb);
- { uint32_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x13, Return x4, 0xfffffff);
- { uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x16, Return x6, 0x7ffffff);
- { uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x8, 0xfffffff);
- { uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x10, 0xfffffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x9, 0x7ffffff);
- { uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- { uint32_t x30 = (x29 & 0xffffffb);
- { uint32_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint32_t x34 = (x29 & 0xfffffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 28 (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 & 0x7ffffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 27 (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 & 0xfffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 28 (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 & 0xfffffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 28 (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 & 0x7ffffff);
- { uint32_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 27 (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_2e166m5_6limbs/freeze.v b/src/Specific/solinas32_2e166m5_6limbs/freeze.v
deleted file mode 100644
index 9af9a590b..000000000
--- a/src/Specific/solinas32_2e166m5_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e166m5_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_2e166m5_6limbs/freezeDisplay.log b/src/Specific/solinas32_2e166m5_6limbs/freezeDisplay.log
deleted file mode 100644
index 6be085c41..000000000
--- a/src/Specific/solinas32_2e166m5_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 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffb);
- uint32_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x13, Return x4, 0xfffffff);
- uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x16, Return x6, 0x7ffffff);
- uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x8, 0xfffffff);
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x10, 0xfffffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x9, 0x7ffffff);
- uint32_t x29 = cmovznz32(x28, 0x0, 0xffffffff);
- uint32_t x30 = (x29 & 0xffffffb);
- uint32_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint32_t x34 = (x29 & 0xfffffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 28 (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 & 0x7ffffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 27 (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 & 0xfffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 28 (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 & 0xfffffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 28 (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 & 0x7ffffff);
- uint32_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 27 (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_2e166m5_6limbs/freezeDisplay.v b/src/Specific/solinas32_2e166m5_6limbs/freezeDisplay.v
deleted file mode 100644
index ac9183393..000000000
--- a/src/Specific/solinas32_2e166m5_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e166m5_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e166m5_6limbs/py_interpreter.sh b/src/Specific/solinas32_2e166m5_6limbs/py_interpreter.sh
deleted file mode 100755
index 139fe6124..000000000
--- a/src/Specific/solinas32_2e166m5_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**166 - 5' -Dmodulus_bytes='27 + 2/3' -Da24='121665'
diff --git a/src/Specific/solinas32_2e166m5_7limbs/CurveParameters.v b/src/Specific/solinas32_2e166m5_7limbs/CurveParameters.v
deleted file mode 100644
index 48c3b947f..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^166 - 5
-Base: 23 + 5/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 23 + 5/7;
- bitwidth := 32;
- s := 2^166;
- c := [(1, 5)];
- carry_chains := Some [seq 0 (pred 7); [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_2e166m5_7limbs/Synthesis.v b/src/Specific/solinas32_2e166m5_7limbs/Synthesis.v
deleted file mode 100644
index 63ebf4d66..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e166m5_7limbs.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_2e166m5_7limbs/compiler.sh b/src/Specific/solinas32_2e166m5_7limbs/compiler.sh
deleted file mode 100755
index 1e9c6b4bf..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/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,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,24,23,24,24,23}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<166) - 5' "$@"
diff --git a/src/Specific/solinas32_2e166m5_7limbs/compilerxx.sh b/src/Specific/solinas32_2e166m5_7limbs/compilerxx.sh
deleted file mode 100755
index 2ab7c3a01..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/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,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,24,23,24,24,23}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<166) - 5' "$@"
diff --git a/src/Specific/solinas32_2e166m5_7limbs/feadd.c b/src/Specific/solinas32_2e166m5_7limbs/feadd.c
deleted file mode 100644
index 5288d0bef..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e166m5_7limbs/feadd.v b/src/Specific/solinas32_2e166m5_7limbs/feadd.v
deleted file mode 100644
index 1a49371fd..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e166m5_7limbs.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_2e166m5_7limbs/feaddDisplay.log b/src/Specific/solinas32_2e166m5_7limbs/feaddDisplay.log
deleted file mode 100644
index d22997dcb..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e166m5_7limbs/feaddDisplay.v b/src/Specific/solinas32_2e166m5_7limbs/feaddDisplay.v
deleted file mode 100644
index 1da8d33af..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e166m5_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e166m5_7limbs/fecarry.v b/src/Specific/solinas32_2e166m5_7limbs/fecarry.v
deleted file mode 100644
index f558dc0d0..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e166m5_7limbs.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_2e166m5_7limbs/fecarryDisplay.v b/src/Specific/solinas32_2e166m5_7limbs/fecarryDisplay.v
deleted file mode 100644
index cb108bb49..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e166m5_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e166m5_7limbs/femul.c b/src/Specific/solinas32_2e166m5_7limbs/femul.c
deleted file mode 100644
index 46284e56c..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- { uint64_t x28 = (((uint64_t)x5 * x26) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + ((0x2 * ((uint64_t)x11 * x23)) + (((uint64_t)x13 * x21) + (((uint64_t)x15 * x19) + ((uint64_t)x14 * x17)))))));
- { uint64_t x29 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + (((uint64_t)x13 * x19) + ((uint64_t)x15 * x17)))))) + (0x5 * (0x2 * ((uint64_t)x14 * x26))));
- { uint64_t x30 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((0x2 * ((uint64_t)x9 * x21)) + ((0x2 * ((uint64_t)x11 * x19)) + ((uint64_t)x13 * x17))))) + (0x5 * ((0x2 * ((uint64_t)x15 * x26)) + (0x2 * ((uint64_t)x14 * x27)))));
- { uint64_t x31 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + (((uint64_t)x9 * x19) + ((uint64_t)x11 * x17)))) + (0x5 * (((uint64_t)x13 * x26) + (((uint64_t)x15 * x27) + ((uint64_t)x14 * x25)))));
- { uint64_t x32 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + ((uint64_t)x9 * x17))) + (0x5 * ((0x2 * ((uint64_t)x11 * x26)) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + (0x2 * ((uint64_t)x14 * x23)))))));
- { uint64_t x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) + (0x5 * ((0x2 * ((uint64_t)x9 * x26)) + ((0x2 * ((uint64_t)x11 * x27)) + (((uint64_t)x13 * x25) + ((0x2 * ((uint64_t)x15 * x23)) + (0x2 * ((uint64_t)x14 * x21))))))));
- { uint64_t x34 = (((uint64_t)x5 * x17) + (0x5 * ((0x2 * ((uint64_t)x7 * x26)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + (0x2 * ((uint64_t)x14 * x19)))))))));
- { uint64_t x35 = (x34 >> 0x18);
- { uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- { uint64_t x37 = (x35 + x33);
- { uint64_t x38 = (x37 >> 0x18);
- { uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- { uint64_t x40 = (x38 + x32);
- { uint32_t x41 = (uint32_t) (x40 >> 0x18);
- { uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- { uint64_t x43 = (x41 + x31);
- { uint64_t x44 = (x43 >> 0x17);
- { uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- { uint64_t x46 = (x44 + x30);
- { uint32_t x47 = (uint32_t) (x46 >> 0x18);
- { uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- { uint64_t x49 = (x47 + x29);
- { uint32_t x50 = (uint32_t) (x49 >> 0x18);
- { uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- { uint64_t x52 = (x50 + x28);
- { uint32_t x53 = (uint32_t) (x52 >> 0x17);
- { uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- { uint64_t x55 = (x36 + ((uint64_t)0x5 * x53));
- { uint32_t x56 = (uint32_t) (x55 >> 0x18);
- { uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- { uint32_t x58 = (x56 + x39);
- { uint32_t x59 = (x58 >> 0x18);
- { uint32_t x60 = (x58 & 0xffffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e166m5_7limbs/femul.v b/src/Specific/solinas32_2e166m5_7limbs/femul.v
deleted file mode 100644
index 1f91b9afd..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e166m5_7limbs.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_2e166m5_7limbs/femulDisplay.log b/src/Specific/solinas32_2e166m5_7limbs/femulDisplay.log
deleted file mode 100644
index cf11b11d3..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint64_t x28 = (((uint64_t)x5 * x26) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + ((0x2 * ((uint64_t)x11 * x23)) + (((uint64_t)x13 * x21) + (((uint64_t)x15 * x19) + ((uint64_t)x14 * x17)))))));
- uint64_t x29 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + (((uint64_t)x13 * x19) + ((uint64_t)x15 * x17)))))) + (0x5 * (0x2 * ((uint64_t)x14 * x26))));
- uint64_t x30 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((0x2 * ((uint64_t)x9 * x21)) + ((0x2 * ((uint64_t)x11 * x19)) + ((uint64_t)x13 * x17))))) + (0x5 * ((0x2 * ((uint64_t)x15 * x26)) + (0x2 * ((uint64_t)x14 * x27)))));
- uint64_t x31 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + (((uint64_t)x9 * x19) + ((uint64_t)x11 * x17)))) + (0x5 * (((uint64_t)x13 * x26) + (((uint64_t)x15 * x27) + ((uint64_t)x14 * x25)))));
- uint64_t x32 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + ((uint64_t)x9 * x17))) + (0x5 * ((0x2 * ((uint64_t)x11 * x26)) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + (0x2 * ((uint64_t)x14 * x23)))))));
- uint64_t x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) + (0x5 * ((0x2 * ((uint64_t)x9 * x26)) + ((0x2 * ((uint64_t)x11 * x27)) + (((uint64_t)x13 * x25) + ((0x2 * ((uint64_t)x15 * x23)) + (0x2 * ((uint64_t)x14 * x21))))))));
- uint64_t x34 = (((uint64_t)x5 * x17) + (0x5 * ((0x2 * ((uint64_t)x7 * x26)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + (0x2 * ((uint64_t)x14 * x19)))))))));
- uint64_t x35 = (x34 >> 0x18);
- uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- uint64_t x37 = (x35 + x33);
- uint64_t x38 = (x37 >> 0x18);
- uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- uint64_t x40 = (x38 + x32);
- uint32_t x41 = (uint32_t) (x40 >> 0x18);
- uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- uint64_t x43 = (x41 + x31);
- uint64_t x44 = (x43 >> 0x17);
- uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- uint64_t x46 = (x44 + x30);
- uint32_t x47 = (uint32_t) (x46 >> 0x18);
- uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- uint64_t x49 = (x47 + x29);
- uint32_t x50 = (uint32_t) (x49 >> 0x18);
- uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- uint64_t x52 = (x50 + x28);
- uint32_t x53 = (uint32_t) (x52 >> 0x17);
- uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- uint64_t x55 = (x36 + ((uint64_t)0x5 * x53));
- uint32_t x56 = (uint32_t) (x55 >> 0x18);
- uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- uint32_t x58 = (x56 + x39);
- uint32_t x59 = (x58 >> 0x18);
- uint32_t x60 = (x58 & 0xffffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e166m5_7limbs/femulDisplay.v b/src/Specific/solinas32_2e166m5_7limbs/femulDisplay.v
deleted file mode 100644
index 9334b5212..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e166m5_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e166m5_7limbs/fesquare.c b/src/Specific/solinas32_2e166m5_7limbs/fesquare.c
deleted file mode 100644
index d8040ca45..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x13 = (((uint64_t)x2 * x11) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x11 * x2)))))));
- { uint64_t x14 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x5 * (0x2 * ((uint64_t)x11 * x11))));
- { uint64_t x15 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x5 * ((0x2 * ((uint64_t)x12 * x11)) + (0x2 * ((uint64_t)x11 * x12)))));
- { uint64_t x16 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x5 * (((uint64_t)x10 * x11) + (((uint64_t)x12 * x12) + ((uint64_t)x11 * x10)))));
- { uint64_t x17 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x5 * ((0x2 * ((uint64_t)x8 * x11)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (0x2 * ((uint64_t)x11 * x8)))))));
- { uint64_t x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x5 * ((0x2 * ((uint64_t)x6 * x11)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + (0x2 * ((uint64_t)x11 * x6))))))));
- { uint64_t x19 = (((uint64_t)x2 * x2) + (0x5 * ((0x2 * ((uint64_t)x4 * x11)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (0x2 * ((uint64_t)x11 * x4)))))))));
- { uint64_t x20 = (x19 >> 0x18);
- { uint32_t x21 = ((uint32_t)x19 & 0xffffff);
- { uint64_t x22 = (x20 + x18);
- { uint64_t x23 = (x22 >> 0x18);
- { uint32_t x24 = ((uint32_t)x22 & 0xffffff);
- { uint64_t x25 = (x23 + x17);
- { uint32_t x26 = (uint32_t) (x25 >> 0x18);
- { uint32_t x27 = ((uint32_t)x25 & 0xffffff);
- { uint64_t x28 = (x26 + x16);
- { uint64_t x29 = (x28 >> 0x17);
- { uint32_t x30 = ((uint32_t)x28 & 0x7fffff);
- { uint64_t x31 = (x29 + x15);
- { uint32_t x32 = (uint32_t) (x31 >> 0x18);
- { uint32_t x33 = ((uint32_t)x31 & 0xffffff);
- { uint64_t x34 = (x32 + x14);
- { uint32_t x35 = (uint32_t) (x34 >> 0x18);
- { uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- { uint64_t x37 = (x35 + x13);
- { uint32_t x38 = (uint32_t) (x37 >> 0x17);
- { uint32_t x39 = ((uint32_t)x37 & 0x7fffff);
- { uint64_t x40 = (x21 + ((uint64_t)0x5 * x38));
- { uint32_t x41 = (uint32_t) (x40 >> 0x18);
- { uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- { uint32_t x43 = (x41 + x24);
- { uint32_t x44 = (x43 >> 0x18);
- { uint32_t x45 = (x43 & 0xffffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e166m5_7limbs/fesquare.v b/src/Specific/solinas32_2e166m5_7limbs/fesquare.v
deleted file mode 100644
index b8587c468..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e166m5_7limbs.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_2e166m5_7limbs/fesquareDisplay.log b/src/Specific/solinas32_2e166m5_7limbs/fesquareDisplay.log
deleted file mode 100644
index ce68539e0..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x13 = (((uint64_t)x2 * x11) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x11 * x2)))))));
- uint64_t x14 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x5 * (0x2 * ((uint64_t)x11 * x11))));
- uint64_t x15 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x5 * ((0x2 * ((uint64_t)x12 * x11)) + (0x2 * ((uint64_t)x11 * x12)))));
- uint64_t x16 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x5 * (((uint64_t)x10 * x11) + (((uint64_t)x12 * x12) + ((uint64_t)x11 * x10)))));
- uint64_t x17 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x5 * ((0x2 * ((uint64_t)x8 * x11)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (0x2 * ((uint64_t)x11 * x8)))))));
- uint64_t x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x5 * ((0x2 * ((uint64_t)x6 * x11)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + (0x2 * ((uint64_t)x11 * x6))))))));
- uint64_t x19 = (((uint64_t)x2 * x2) + (0x5 * ((0x2 * ((uint64_t)x4 * x11)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (0x2 * ((uint64_t)x11 * x4)))))))));
- uint64_t x20 = (x19 >> 0x18);
- uint32_t x21 = ((uint32_t)x19 & 0xffffff);
- uint64_t x22 = (x20 + x18);
- uint64_t x23 = (x22 >> 0x18);
- uint32_t x24 = ((uint32_t)x22 & 0xffffff);
- uint64_t x25 = (x23 + x17);
- uint32_t x26 = (uint32_t) (x25 >> 0x18);
- uint32_t x27 = ((uint32_t)x25 & 0xffffff);
- uint64_t x28 = (x26 + x16);
- uint64_t x29 = (x28 >> 0x17);
- uint32_t x30 = ((uint32_t)x28 & 0x7fffff);
- uint64_t x31 = (x29 + x15);
- uint32_t x32 = (uint32_t) (x31 >> 0x18);
- uint32_t x33 = ((uint32_t)x31 & 0xffffff);
- uint64_t x34 = (x32 + x14);
- uint32_t x35 = (uint32_t) (x34 >> 0x18);
- uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- uint64_t x37 = (x35 + x13);
- uint32_t x38 = (uint32_t) (x37 >> 0x17);
- uint32_t x39 = ((uint32_t)x37 & 0x7fffff);
- uint64_t x40 = (x21 + ((uint64_t)0x5 * x38));
- uint32_t x41 = (uint32_t) (x40 >> 0x18);
- uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- uint32_t x43 = (x41 + x24);
- uint32_t x44 = (x43 >> 0x18);
- uint32_t x45 = (x43 & 0xffffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e166m5_7limbs/fesquareDisplay.v b/src/Specific/solinas32_2e166m5_7limbs/fesquareDisplay.v
deleted file mode 100644
index 6f1c0b497..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e166m5_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e166m5_7limbs/fesub.c b/src/Specific/solinas32_2e166m5_7limbs/fesub.c
deleted file mode 100644
index 3336e6ee5..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = ((0x1fffff6 + x5) - x17);
- out[1] = ((0x1fffffe + x7) - x19);
- out[2] = ((0x1fffffe + x9) - x21);
- out[3] = ((0xfffffe + x11) - x23);
- out[4] = ((0x1fffffe + x13) - x25);
- out[5] = ((0x1fffffe + x15) - x27);
- out[6] = ((0xfffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e166m5_7limbs/fesub.v b/src/Specific/solinas32_2e166m5_7limbs/fesub.v
deleted file mode 100644
index a33b05fdd..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e166m5_7limbs.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_2e166m5_7limbs/fesubDisplay.log b/src/Specific/solinas32_2e166m5_7limbs/fesubDisplay.log
deleted file mode 100644
index 997385693..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0xfffffe + x14) - x26), ((0x1fffffe + x15) - x27), ((0x1fffffe + x13) - x25), ((0xfffffe + x11) - x23), ((0x1fffffe + x9) - x21), ((0x1fffffe + x7) - x19), ((0x1fffff6 + x5) - x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e166m5_7limbs/fesubDisplay.v b/src/Specific/solinas32_2e166m5_7limbs/fesubDisplay.v
deleted file mode 100644
index 09553a5c5..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e166m5_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e166m5_7limbs/freeze.c b/src/Specific/solinas32_2e166m5_7limbs/freeze.c
deleted file mode 100644
index 731ecced5..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffb);
- { uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0xffffff);
- { uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0xffffff);
- { uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0x7fffff);
- { uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0xffffff);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0xffffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0x7fffff);
- { uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- { uint32_t x35 = (x34 & 0xfffffb);
- { uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint32_t x39 = (x34 & 0xffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint32_t x43 = (x34 & 0xffffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint32_t x47 = (x34 & 0x7fffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint32_t x51 = (x34 & 0xffffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint32_t x55 = (x34 & 0xffffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint32_t x59 = (x34 & 0x7fffff);
- { uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e166m5_7limbs/freeze.v b/src/Specific/solinas32_2e166m5_7limbs/freeze.v
deleted file mode 100644
index 13da312c9..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e166m5_7limbs.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_2e166m5_7limbs/freezeDisplay.log b/src/Specific/solinas32_2e166m5_7limbs/freezeDisplay.log
deleted file mode 100644
index aee4928a3..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffb);
- uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0xffffff);
- uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0xffffff);
- uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0x7fffff);
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0xffffff);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0xffffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0x7fffff);
- uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- uint32_t x35 = (x34 & 0xfffffb);
- uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint32_t x39 = (x34 & 0xffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint32_t x43 = (x34 & 0xffffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint32_t x47 = (x34 & 0x7fffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint32_t x51 = (x34 & 0xffffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint32_t x55 = (x34 & 0xffffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint32_t x59 = (x34 & 0x7fffff);
- uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e166m5_7limbs/freezeDisplay.v b/src/Specific/solinas32_2e166m5_7limbs/freezeDisplay.v
deleted file mode 100644
index 93dced6d8..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e166m5_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e166m5_7limbs/py_interpreter.sh b/src/Specific/solinas32_2e166m5_7limbs/py_interpreter.sh
deleted file mode 100755
index c6a5d2a8f..000000000
--- a/src/Specific/solinas32_2e166m5_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**166 - 5' -Dmodulus_bytes='23 + 5/7' -Da24='121665'
diff --git a/src/Specific/solinas32_2e171m19_7limbs/CurveParameters.v b/src/Specific/solinas32_2e171m19_7limbs/CurveParameters.v
deleted file mode 100644
index 10601d6d1..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^171 - 19
-Base: 24 + 3/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 24 + 3/7;
- bitwidth := 32;
- s := 2^171;
- c := [(1, 19)];
- carry_chains := Some [seq 0 (pred 7); [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_2e171m19_7limbs/Synthesis.v b/src/Specific/solinas32_2e171m19_7limbs/Synthesis.v
deleted file mode 100644
index de0a57129..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e171m19_7limbs.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_2e171m19_7limbs/compiler.sh b/src/Specific/solinas32_2e171m19_7limbs/compiler.sh
deleted file mode 100755
index e288a27fb..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,24,25,24,25,24,24}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<171) - 19' "$@"
diff --git a/src/Specific/solinas32_2e171m19_7limbs/compilerxx.sh b/src/Specific/solinas32_2e171m19_7limbs/compilerxx.sh
deleted file mode 100755
index ac22d5e08..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,24,25,24,25,24,24}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<171) - 19' "$@"
diff --git a/src/Specific/solinas32_2e171m19_7limbs/feadd.c b/src/Specific/solinas32_2e171m19_7limbs/feadd.c
deleted file mode 100644
index 5288d0bef..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e171m19_7limbs/feadd.v b/src/Specific/solinas32_2e171m19_7limbs/feadd.v
deleted file mode 100644
index 82904e9b1..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e171m19_7limbs.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_2e171m19_7limbs/feaddDisplay.log b/src/Specific/solinas32_2e171m19_7limbs/feaddDisplay.log
deleted file mode 100644
index d22997dcb..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e171m19_7limbs/feaddDisplay.v b/src/Specific/solinas32_2e171m19_7limbs/feaddDisplay.v
deleted file mode 100644
index d8473c284..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e171m19_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e171m19_7limbs/fecarry.v b/src/Specific/solinas32_2e171m19_7limbs/fecarry.v
deleted file mode 100644
index 380db605d..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e171m19_7limbs.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_2e171m19_7limbs/fecarryDisplay.v b/src/Specific/solinas32_2e171m19_7limbs/fecarryDisplay.v
deleted file mode 100644
index 2bff69b79..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e171m19_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e171m19_7limbs/femul.c b/src/Specific/solinas32_2e171m19_7limbs/femul.c
deleted file mode 100644
index eef6341e2..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- { uint64_t x28 = (((uint64_t)x5 * x26) + ((0x2 * ((uint64_t)x7 * x27)) + (((uint64_t)x9 * x25) + ((0x2 * ((uint64_t)x11 * x23)) + (((uint64_t)x13 * x21) + ((0x2 * ((uint64_t)x15 * x19)) + ((uint64_t)x14 * x17)))))));
- { uint64_t x29 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + (((uint64_t)x11 * x21) + (((uint64_t)x13 * x19) + ((uint64_t)x15 * x17)))))) + (0x13 * ((uint64_t)x14 * x26)));
- { uint64_t x30 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + (((uint64_t)x9 * x21) + ((0x2 * ((uint64_t)x11 * x19)) + ((uint64_t)x13 * x17))))) + (0x13 * ((0x2 * ((uint64_t)x15 * x26)) + (0x2 * ((uint64_t)x14 * x27)))));
- { uint64_t x31 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + (((uint64_t)x9 * x19) + ((uint64_t)x11 * x17)))) + (0x13 * (((uint64_t)x13 * x26) + ((0x2 * ((uint64_t)x15 * x27)) + ((uint64_t)x14 * x25)))));
- { uint64_t x32 = ((((uint64_t)x5 * x21) + ((0x2 * ((uint64_t)x7 * x19)) + ((uint64_t)x9 * x17))) + (0x13 * ((0x2 * ((uint64_t)x11 * x26)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + (0x2 * ((uint64_t)x14 * x23)))))));
- { uint64_t x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) + (0x13 * (((uint64_t)x9 * x26) + ((0x2 * ((uint64_t)x11 * x27)) + (((uint64_t)x13 * x25) + ((0x2 * ((uint64_t)x15 * x23)) + ((uint64_t)x14 * x21)))))));
- { uint64_t x34 = (((uint64_t)x5 * x17) + (0x13 * ((0x2 * ((uint64_t)x7 * x26)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + (0x2 * ((uint64_t)x14 * x19)))))))));
- { uint64_t x35 = (x34 >> 0x19);
- { uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- { uint64_t x37 = (x35 + x33);
- { uint64_t x38 = (x37 >> 0x18);
- { uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- { uint64_t x40 = (x38 + x32);
- { uint64_t x41 = (x40 >> 0x19);
- { uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- { uint64_t x43 = (x41 + x31);
- { uint64_t x44 = (x43 >> 0x18);
- { uint32_t x45 = ((uint32_t)x43 & 0xffffff);
- { uint64_t x46 = (x44 + x30);
- { uint64_t x47 = (x46 >> 0x19);
- { uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- { uint64_t x49 = (x47 + x29);
- { uint64_t x50 = (x49 >> 0x18);
- { uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- { uint64_t x52 = (x50 + x28);
- { uint32_t x53 = (uint32_t) (x52 >> 0x18);
- { uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- { uint64_t x55 = (x36 + ((uint64_t)0x13 * x53));
- { uint32_t x56 = (uint32_t) (x55 >> 0x19);
- { uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- { uint32_t x58 = (x56 + x39);
- { uint32_t x59 = (x58 >> 0x18);
- { uint32_t x60 = (x58 & 0xffffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e171m19_7limbs/femul.v b/src/Specific/solinas32_2e171m19_7limbs/femul.v
deleted file mode 100644
index 481e94d70..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e171m19_7limbs.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_2e171m19_7limbs/femulDisplay.log b/src/Specific/solinas32_2e171m19_7limbs/femulDisplay.log
deleted file mode 100644
index e7a3b6138..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint64_t x28 = (((uint64_t)x5 * x26) + ((0x2 * ((uint64_t)x7 * x27)) + (((uint64_t)x9 * x25) + ((0x2 * ((uint64_t)x11 * x23)) + (((uint64_t)x13 * x21) + ((0x2 * ((uint64_t)x15 * x19)) + ((uint64_t)x14 * x17)))))));
- uint64_t x29 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + (((uint64_t)x11 * x21) + (((uint64_t)x13 * x19) + ((uint64_t)x15 * x17)))))) + (0x13 * ((uint64_t)x14 * x26)));
- uint64_t x30 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + (((uint64_t)x9 * x21) + ((0x2 * ((uint64_t)x11 * x19)) + ((uint64_t)x13 * x17))))) + (0x13 * ((0x2 * ((uint64_t)x15 * x26)) + (0x2 * ((uint64_t)x14 * x27)))));
- uint64_t x31 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + (((uint64_t)x9 * x19) + ((uint64_t)x11 * x17)))) + (0x13 * (((uint64_t)x13 * x26) + ((0x2 * ((uint64_t)x15 * x27)) + ((uint64_t)x14 * x25)))));
- uint64_t x32 = ((((uint64_t)x5 * x21) + ((0x2 * ((uint64_t)x7 * x19)) + ((uint64_t)x9 * x17))) + (0x13 * ((0x2 * ((uint64_t)x11 * x26)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + (0x2 * ((uint64_t)x14 * x23)))))));
- uint64_t x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) + (0x13 * (((uint64_t)x9 * x26) + ((0x2 * ((uint64_t)x11 * x27)) + (((uint64_t)x13 * x25) + ((0x2 * ((uint64_t)x15 * x23)) + ((uint64_t)x14 * x21)))))));
- uint64_t x34 = (((uint64_t)x5 * x17) + (0x13 * ((0x2 * ((uint64_t)x7 * x26)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + (0x2 * ((uint64_t)x14 * x19)))))))));
- uint64_t x35 = (x34 >> 0x19);
- uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- uint64_t x37 = (x35 + x33);
- uint64_t x38 = (x37 >> 0x18);
- uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- uint64_t x40 = (x38 + x32);
- uint64_t x41 = (x40 >> 0x19);
- uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- uint64_t x43 = (x41 + x31);
- uint64_t x44 = (x43 >> 0x18);
- uint32_t x45 = ((uint32_t)x43 & 0xffffff);
- uint64_t x46 = (x44 + x30);
- uint64_t x47 = (x46 >> 0x19);
- uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- uint64_t x49 = (x47 + x29);
- uint64_t x50 = (x49 >> 0x18);
- uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- uint64_t x52 = (x50 + x28);
- uint32_t x53 = (uint32_t) (x52 >> 0x18);
- uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- uint64_t x55 = (x36 + ((uint64_t)0x13 * x53));
- uint32_t x56 = (uint32_t) (x55 >> 0x19);
- uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- uint32_t x58 = (x56 + x39);
- uint32_t x59 = (x58 >> 0x18);
- uint32_t x60 = (x58 & 0xffffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e171m19_7limbs/femulDisplay.v b/src/Specific/solinas32_2e171m19_7limbs/femulDisplay.v
deleted file mode 100644
index 9528a4abe..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e171m19_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e171m19_7limbs/fesquare.c b/src/Specific/solinas32_2e171m19_7limbs/fesquare.c
deleted file mode 100644
index 9e3e5027f..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x13 = (((uint64_t)x2 * x11) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x11 * x2)))))));
- { uint64_t x14 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x13 * ((uint64_t)x11 * x11)));
- { uint64_t x15 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x13 * ((0x2 * ((uint64_t)x12 * x11)) + (0x2 * ((uint64_t)x11 * x12)))));
- { uint64_t x16 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x13 * (((uint64_t)x10 * x11) + ((0x2 * ((uint64_t)x12 * x12)) + ((uint64_t)x11 * x10)))));
- { uint64_t x17 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x13 * ((0x2 * ((uint64_t)x8 * x11)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (0x2 * ((uint64_t)x11 * x8)))))));
- { uint64_t x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x13 * (((uint64_t)x6 * x11) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((uint64_t)x11 * x6)))))));
- { uint64_t x19 = (((uint64_t)x2 * x2) + (0x13 * ((0x2 * ((uint64_t)x4 * x11)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (0x2 * ((uint64_t)x11 * x4)))))))));
- { uint64_t x20 = (x19 >> 0x19);
- { uint32_t x21 = ((uint32_t)x19 & 0x1ffffff);
- { uint64_t x22 = (x20 + x18);
- { uint64_t x23 = (x22 >> 0x18);
- { uint32_t x24 = ((uint32_t)x22 & 0xffffff);
- { uint64_t x25 = (x23 + x17);
- { uint64_t x26 = (x25 >> 0x19);
- { uint32_t x27 = ((uint32_t)x25 & 0x1ffffff);
- { uint64_t x28 = (x26 + x16);
- { uint64_t x29 = (x28 >> 0x18);
- { uint32_t x30 = ((uint32_t)x28 & 0xffffff);
- { uint64_t x31 = (x29 + x15);
- { uint64_t x32 = (x31 >> 0x19);
- { uint32_t x33 = ((uint32_t)x31 & 0x1ffffff);
- { uint64_t x34 = (x32 + x14);
- { uint64_t x35 = (x34 >> 0x18);
- { uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- { uint64_t x37 = (x35 + x13);
- { uint32_t x38 = (uint32_t) (x37 >> 0x18);
- { uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- { uint64_t x40 = (x21 + ((uint64_t)0x13 * x38));
- { uint32_t x41 = (uint32_t) (x40 >> 0x19);
- { uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- { uint32_t x43 = (x41 + x24);
- { uint32_t x44 = (x43 >> 0x18);
- { uint32_t x45 = (x43 & 0xffffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e171m19_7limbs/fesquare.v b/src/Specific/solinas32_2e171m19_7limbs/fesquare.v
deleted file mode 100644
index 7d6a7a274..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e171m19_7limbs.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_2e171m19_7limbs/fesquareDisplay.log b/src/Specific/solinas32_2e171m19_7limbs/fesquareDisplay.log
deleted file mode 100644
index 2a3b5a1ba..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x13 = (((uint64_t)x2 * x11) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x11 * x2)))))));
- uint64_t x14 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x13 * ((uint64_t)x11 * x11)));
- uint64_t x15 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x13 * ((0x2 * ((uint64_t)x12 * x11)) + (0x2 * ((uint64_t)x11 * x12)))));
- uint64_t x16 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x13 * (((uint64_t)x10 * x11) + ((0x2 * ((uint64_t)x12 * x12)) + ((uint64_t)x11 * x10)))));
- uint64_t x17 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x13 * ((0x2 * ((uint64_t)x8 * x11)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (0x2 * ((uint64_t)x11 * x8)))))));
- uint64_t x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x13 * (((uint64_t)x6 * x11) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((uint64_t)x11 * x6)))))));
- uint64_t x19 = (((uint64_t)x2 * x2) + (0x13 * ((0x2 * ((uint64_t)x4 * x11)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (0x2 * ((uint64_t)x11 * x4)))))))));
- uint64_t x20 = (x19 >> 0x19);
- uint32_t x21 = ((uint32_t)x19 & 0x1ffffff);
- uint64_t x22 = (x20 + x18);
- uint64_t x23 = (x22 >> 0x18);
- uint32_t x24 = ((uint32_t)x22 & 0xffffff);
- uint64_t x25 = (x23 + x17);
- uint64_t x26 = (x25 >> 0x19);
- uint32_t x27 = ((uint32_t)x25 & 0x1ffffff);
- uint64_t x28 = (x26 + x16);
- uint64_t x29 = (x28 >> 0x18);
- uint32_t x30 = ((uint32_t)x28 & 0xffffff);
- uint64_t x31 = (x29 + x15);
- uint64_t x32 = (x31 >> 0x19);
- uint32_t x33 = ((uint32_t)x31 & 0x1ffffff);
- uint64_t x34 = (x32 + x14);
- uint64_t x35 = (x34 >> 0x18);
- uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- uint64_t x37 = (x35 + x13);
- uint32_t x38 = (uint32_t) (x37 >> 0x18);
- uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- uint64_t x40 = (x21 + ((uint64_t)0x13 * x38));
- uint32_t x41 = (uint32_t) (x40 >> 0x19);
- uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- uint32_t x43 = (x41 + x24);
- uint32_t x44 = (x43 >> 0x18);
- uint32_t x45 = (x43 & 0xffffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e171m19_7limbs/fesquareDisplay.v b/src/Specific/solinas32_2e171m19_7limbs/fesquareDisplay.v
deleted file mode 100644
index 9580d5e3f..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e171m19_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e171m19_7limbs/fesub.c b/src/Specific/solinas32_2e171m19_7limbs/fesub.c
deleted file mode 100644
index 244cdc672..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = ((0x3ffffda + x5) - x17);
- out[1] = ((0x1fffffe + x7) - x19);
- out[2] = ((0x3fffffe + x9) - x21);
- out[3] = ((0x1fffffe + x11) - x23);
- out[4] = ((0x3fffffe + x13) - x25);
- out[5] = ((0x1fffffe + x15) - x27);
- out[6] = ((0x1fffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e171m19_7limbs/fesub.v b/src/Specific/solinas32_2e171m19_7limbs/fesub.v
deleted file mode 100644
index e06459d3d..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e171m19_7limbs.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_2e171m19_7limbs/fesubDisplay.log b/src/Specific/solinas32_2e171m19_7limbs/fesubDisplay.log
deleted file mode 100644
index 03744fcef..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0x1fffffe + x14) - x26), ((0x1fffffe + x15) - x27), ((0x3fffffe + x13) - x25), ((0x1fffffe + x11) - x23), ((0x3fffffe + x9) - x21), ((0x1fffffe + x7) - x19), ((0x3ffffda + x5) - x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e171m19_7limbs/fesubDisplay.v b/src/Specific/solinas32_2e171m19_7limbs/fesubDisplay.v
deleted file mode 100644
index 6d31bd213..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e171m19_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e171m19_7limbs/freeze.c b/src/Specific/solinas32_2e171m19_7limbs/freeze.c
deleted file mode 100644
index 11b9709db..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffed);
- { uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0xffffff);
- { uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0x1ffffff);
- { uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0xffffff);
- { uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0x1ffffff);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0xffffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0xffffff);
- { uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- { uint32_t x35 = (x34 & 0x1ffffed);
- { uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint32_t x39 = (x34 & 0xffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint32_t x43 = (x34 & 0x1ffffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint32_t x47 = (x34 & 0xffffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint32_t x51 = (x34 & 0x1ffffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint32_t x55 = (x34 & 0xffffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint32_t x59 = (x34 & 0xffffff);
- { uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e171m19_7limbs/freeze.v b/src/Specific/solinas32_2e171m19_7limbs/freeze.v
deleted file mode 100644
index 07972c0f0..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e171m19_7limbs.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_2e171m19_7limbs/freezeDisplay.log b/src/Specific/solinas32_2e171m19_7limbs/freezeDisplay.log
deleted file mode 100644
index 0a73c24ea..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffed);
- uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0xffffff);
- uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0x1ffffff);
- uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0xffffff);
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0x1ffffff);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0xffffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0xffffff);
- uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- uint32_t x35 = (x34 & 0x1ffffed);
- uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint32_t x39 = (x34 & 0xffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint32_t x43 = (x34 & 0x1ffffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint32_t x47 = (x34 & 0xffffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint32_t x51 = (x34 & 0x1ffffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint32_t x55 = (x34 & 0xffffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint32_t x59 = (x34 & 0xffffff);
- uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e171m19_7limbs/freezeDisplay.v b/src/Specific/solinas32_2e171m19_7limbs/freezeDisplay.v
deleted file mode 100644
index c136bcec3..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e171m19_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e171m19_7limbs/py_interpreter.sh b/src/Specific/solinas32_2e171m19_7limbs/py_interpreter.sh
deleted file mode 100755
index fa2170571..000000000
--- a/src/Specific/solinas32_2e171m19_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**171 - 19' -Dmodulus_bytes='24 + 3/7' -Da24='121665'
diff --git a/src/Specific/solinas32_2e171m19_8limbs/CurveParameters.v b/src/Specific/solinas32_2e171m19_8limbs/CurveParameters.v
deleted file mode 100644
index 4b90d2264..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^171 - 19
-Base: 21.375
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 21 + 3/8;
- bitwidth := 32;
- s := 2^171;
- c := [(1, 19)];
- carry_chains := Some [seq 0 (pred 8); [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_2e171m19_8limbs/Synthesis.v b/src/Specific/solinas32_2e171m19_8limbs/Synthesis.v
deleted file mode 100644
index 25e760d6b..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e171m19_8limbs.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_2e171m19_8limbs/compiler.sh b/src/Specific/solinas32_2e171m19_8limbs/compiler.sh
deleted file mode 100755
index ee39a6961..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,22,21,21,22,21,21}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<171) - 19' "$@"
diff --git a/src/Specific/solinas32_2e171m19_8limbs/compilerxx.sh b/src/Specific/solinas32_2e171m19_8limbs/compilerxx.sh
deleted file mode 100755
index 177e0ea03..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,22,21,21,22,21,21}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<171) - 19' "$@"
diff --git a/src/Specific/solinas32_2e171m19_8limbs/feadd.c b/src/Specific/solinas32_2e171m19_8limbs/feadd.c
deleted file mode 100644
index cc3671f75..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e171m19_8limbs/feadd.v b/src/Specific/solinas32_2e171m19_8limbs/feadd.v
deleted file mode 100644
index fc5a605c8..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e171m19_8limbs.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_2e171m19_8limbs/feaddDisplay.log b/src/Specific/solinas32_2e171m19_8limbs/feaddDisplay.log
deleted file mode 100644
index f25c10903..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e171m19_8limbs/feaddDisplay.v b/src/Specific/solinas32_2e171m19_8limbs/feaddDisplay.v
deleted file mode 100644
index 5c08db701..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e171m19_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e171m19_8limbs/fecarry.v b/src/Specific/solinas32_2e171m19_8limbs/fecarry.v
deleted file mode 100644
index 9c500dc17..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e171m19_8limbs.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_2e171m19_8limbs/fecarryDisplay.v b/src/Specific/solinas32_2e171m19_8limbs/fecarryDisplay.v
deleted file mode 100644
index cce6aa678..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e171m19_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e171m19_8limbs/femul.c b/src/Specific/solinas32_2e171m19_8limbs/femul.c
deleted file mode 100644
index c0e89ad8a..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint64_t x32 = (((uint64_t)x5 * x30) + ((0x2 * ((uint64_t)x7 * x31)) + (((uint64_t)x9 * x29) + ((0x2 * ((uint64_t)x11 * x27)) + ((0x2 * ((uint64_t)x13 * x25)) + (((uint64_t)x15 * x23) + ((0x2 * ((uint64_t)x17 * x21)) + ((uint64_t)x16 * x19))))))));
- { uint64_t x33 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + ((0x2 * ((uint64_t)x11 * x25)) + (((uint64_t)x13 * x23) + (((uint64_t)x15 * x21) + ((uint64_t)x17 * x19))))))) + (0x13 * ((uint64_t)x16 * x30)));
- { uint64_t x34 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((0x2 * ((uint64_t)x11 * x23)) + ((0x2 * ((uint64_t)x13 * x21)) + ((uint64_t)x15 * x19)))))) + (0x13 * ((0x2 * ((uint64_t)x17 * x30)) + (0x2 * ((uint64_t)x16 * x31)))));
- { uint64_t x35 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + (((uint64_t)x9 * x23) + ((0x2 * ((uint64_t)x11 * x21)) + ((uint64_t)x13 * x19))))) + (0x13 * (((uint64_t)x15 * x30) + ((0x2 * ((uint64_t)x17 * x31)) + ((uint64_t)x16 * x29)))));
- { uint64_t x36 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + ((uint64_t)x11 * x19)))) + (0x13 * (((uint64_t)x13 * x30) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x16 * x27))))));
- { uint64_t x37 = ((((uint64_t)x5 * x23) + ((0x2 * ((uint64_t)x7 * x21)) + ((uint64_t)x9 * x19))) + (0x13 * ((0x2 * ((uint64_t)x11 * x30)) + ((0x2 * ((uint64_t)x13 * x31)) + (((uint64_t)x15 * x29) + ((0x2 * ((uint64_t)x17 * x27)) + (0x2 * ((uint64_t)x16 * x25))))))));
- { uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0x13 * (((uint64_t)x9 * x30) + ((0x2 * ((uint64_t)x11 * x31)) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + ((0x2 * ((uint64_t)x17 * x25)) + ((uint64_t)x16 * x23))))))));
- { uint64_t x39 = (((uint64_t)x5 * x19) + (0x13 * ((0x2 * ((uint64_t)x7 * x30)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + (0x2 * ((uint64_t)x16 * x21))))))))));
- { uint64_t x40 = (x39 >> 0x16);
- { uint32_t x41 = ((uint32_t)x39 & 0x3fffff);
- { uint64_t x42 = (x40 + x38);
- { uint64_t x43 = (x42 >> 0x15);
- { uint32_t x44 = ((uint32_t)x42 & 0x1fffff);
- { uint64_t x45 = (x43 + x37);
- { uint32_t x46 = (uint32_t) (x45 >> 0x16);
- { uint32_t x47 = ((uint32_t)x45 & 0x3fffff);
- { uint64_t x48 = (x46 + x36);
- { uint32_t x49 = (uint32_t) (x48 >> 0x15);
- { uint32_t x50 = ((uint32_t)x48 & 0x1fffff);
- { uint64_t x51 = (x49 + x35);
- { uint32_t x52 = (uint32_t) (x51 >> 0x15);
- { uint32_t x53 = ((uint32_t)x51 & 0x1fffff);
- { uint64_t x54 = (x52 + x34);
- { uint32_t x55 = (uint32_t) (x54 >> 0x16);
- { uint32_t x56 = ((uint32_t)x54 & 0x3fffff);
- { uint64_t x57 = (x55 + x33);
- { uint32_t x58 = (uint32_t) (x57 >> 0x15);
- { uint32_t x59 = ((uint32_t)x57 & 0x1fffff);
- { uint64_t x60 = (x58 + x32);
- { uint32_t x61 = (uint32_t) (x60 >> 0x15);
- { uint32_t x62 = ((uint32_t)x60 & 0x1fffff);
- { uint64_t x63 = (x41 + ((uint64_t)0x13 * x61));
- { uint32_t x64 = (uint32_t) (x63 >> 0x16);
- { uint32_t x65 = ((uint32_t)x63 & 0x3fffff);
- { uint32_t x66 = (x64 + x44);
- { uint32_t x67 = (x66 >> 0x15);
- { uint32_t x68 = (x66 & 0x1fffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e171m19_8limbs/femul.v b/src/Specific/solinas32_2e171m19_8limbs/femul.v
deleted file mode 100644
index e00ae6459..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e171m19_8limbs.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_2e171m19_8limbs/femulDisplay.log b/src/Specific/solinas32_2e171m19_8limbs/femulDisplay.log
deleted file mode 100644
index 694a43540..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x32 = (((uint64_t)x5 * x30) + ((0x2 * ((uint64_t)x7 * x31)) + (((uint64_t)x9 * x29) + ((0x2 * ((uint64_t)x11 * x27)) + ((0x2 * ((uint64_t)x13 * x25)) + (((uint64_t)x15 * x23) + ((0x2 * ((uint64_t)x17 * x21)) + ((uint64_t)x16 * x19))))))));
- uint64_t x33 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + ((0x2 * ((uint64_t)x11 * x25)) + (((uint64_t)x13 * x23) + (((uint64_t)x15 * x21) + ((uint64_t)x17 * x19))))))) + (0x13 * ((uint64_t)x16 * x30)));
- uint64_t x34 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((0x2 * ((uint64_t)x11 * x23)) + ((0x2 * ((uint64_t)x13 * x21)) + ((uint64_t)x15 * x19)))))) + (0x13 * ((0x2 * ((uint64_t)x17 * x30)) + (0x2 * ((uint64_t)x16 * x31)))));
- uint64_t x35 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + (((uint64_t)x9 * x23) + ((0x2 * ((uint64_t)x11 * x21)) + ((uint64_t)x13 * x19))))) + (0x13 * (((uint64_t)x15 * x30) + ((0x2 * ((uint64_t)x17 * x31)) + ((uint64_t)x16 * x29)))));
- uint64_t x36 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + ((uint64_t)x11 * x19)))) + (0x13 * (((uint64_t)x13 * x30) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x16 * x27))))));
- uint64_t x37 = ((((uint64_t)x5 * x23) + ((0x2 * ((uint64_t)x7 * x21)) + ((uint64_t)x9 * x19))) + (0x13 * ((0x2 * ((uint64_t)x11 * x30)) + ((0x2 * ((uint64_t)x13 * x31)) + (((uint64_t)x15 * x29) + ((0x2 * ((uint64_t)x17 * x27)) + (0x2 * ((uint64_t)x16 * x25))))))));
- uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0x13 * (((uint64_t)x9 * x30) + ((0x2 * ((uint64_t)x11 * x31)) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + ((0x2 * ((uint64_t)x17 * x25)) + ((uint64_t)x16 * x23))))))));
- uint64_t x39 = (((uint64_t)x5 * x19) + (0x13 * ((0x2 * ((uint64_t)x7 * x30)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + (0x2 * ((uint64_t)x16 * x21))))))))));
- uint64_t x40 = (x39 >> 0x16);
- uint32_t x41 = ((uint32_t)x39 & 0x3fffff);
- uint64_t x42 = (x40 + x38);
- uint64_t x43 = (x42 >> 0x15);
- uint32_t x44 = ((uint32_t)x42 & 0x1fffff);
- uint64_t x45 = (x43 + x37);
- uint32_t x46 = (uint32_t) (x45 >> 0x16);
- uint32_t x47 = ((uint32_t)x45 & 0x3fffff);
- uint64_t x48 = (x46 + x36);
- uint32_t x49 = (uint32_t) (x48 >> 0x15);
- uint32_t x50 = ((uint32_t)x48 & 0x1fffff);
- uint64_t x51 = (x49 + x35);
- uint32_t x52 = (uint32_t) (x51 >> 0x15);
- uint32_t x53 = ((uint32_t)x51 & 0x1fffff);
- uint64_t x54 = (x52 + x34);
- uint32_t x55 = (uint32_t) (x54 >> 0x16);
- uint32_t x56 = ((uint32_t)x54 & 0x3fffff);
- uint64_t x57 = (x55 + x33);
- uint32_t x58 = (uint32_t) (x57 >> 0x15);
- uint32_t x59 = ((uint32_t)x57 & 0x1fffff);
- uint64_t x60 = (x58 + x32);
- uint32_t x61 = (uint32_t) (x60 >> 0x15);
- uint32_t x62 = ((uint32_t)x60 & 0x1fffff);
- uint64_t x63 = (x41 + ((uint64_t)0x13 * x61));
- uint32_t x64 = (uint32_t) (x63 >> 0x16);
- uint32_t x65 = ((uint32_t)x63 & 0x3fffff);
- uint32_t x66 = (x64 + x44);
- uint32_t x67 = (x66 >> 0x15);
- uint32_t x68 = (x66 & 0x1fffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e171m19_8limbs/femulDisplay.v b/src/Specific/solinas32_2e171m19_8limbs/femulDisplay.v
deleted file mode 100644
index edd5c3c28..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e171m19_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e171m19_8limbs/fesquare.c b/src/Specific/solinas32_2e171m19_8limbs/fesquare.c
deleted file mode 100644
index aaefdc5ba..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (((uint64_t)x2 * x13) + ((0x2 * ((uint64_t)x4 * x14)) + (((uint64_t)x6 * x12) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + (((uint64_t)x12 * x6) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x13 * x2))))))));
- { uint64_t x16 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x13 * ((uint64_t)x13 * x13)));
- { uint64_t x17 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x13 * ((0x2 * ((uint64_t)x14 * x13)) + (0x2 * ((uint64_t)x13 * x14)))));
- { uint64_t x18 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x13 * (((uint64_t)x12 * x13) + ((0x2 * ((uint64_t)x14 * x14)) + ((uint64_t)x13 * x12)))));
- { uint64_t x19 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x13 * (((uint64_t)x10 * x13) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x13 * x10))))));
- { uint64_t x20 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x13 * ((0x2 * ((uint64_t)x8 * x13)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + (0x2 * ((uint64_t)x13 * x8))))))));
- { uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x13 * (((uint64_t)x6 * x13) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + ((uint64_t)x13 * x6))))))));
- { uint64_t x22 = (((uint64_t)x2 * x2) + (0x13 * ((0x2 * ((uint64_t)x4 * x13)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (0x2 * ((uint64_t)x13 * x4))))))))));
- { uint64_t x23 = (x22 >> 0x16);
- { uint32_t x24 = ((uint32_t)x22 & 0x3fffff);
- { uint64_t x25 = (x23 + x21);
- { uint64_t x26 = (x25 >> 0x15);
- { uint32_t x27 = ((uint32_t)x25 & 0x1fffff);
- { uint64_t x28 = (x26 + x20);
- { uint32_t x29 = (uint32_t) (x28 >> 0x16);
- { uint32_t x30 = ((uint32_t)x28 & 0x3fffff);
- { uint64_t x31 = (x29 + x19);
- { uint32_t x32 = (uint32_t) (x31 >> 0x15);
- { uint32_t x33 = ((uint32_t)x31 & 0x1fffff);
- { uint64_t x34 = (x32 + x18);
- { uint32_t x35 = (uint32_t) (x34 >> 0x15);
- { uint32_t x36 = ((uint32_t)x34 & 0x1fffff);
- { uint64_t x37 = (x35 + x17);
- { uint32_t x38 = (uint32_t) (x37 >> 0x16);
- { uint32_t x39 = ((uint32_t)x37 & 0x3fffff);
- { uint64_t x40 = (x38 + x16);
- { uint32_t x41 = (uint32_t) (x40 >> 0x15);
- { uint32_t x42 = ((uint32_t)x40 & 0x1fffff);
- { uint64_t x43 = (x41 + x15);
- { uint32_t x44 = (uint32_t) (x43 >> 0x15);
- { uint32_t x45 = ((uint32_t)x43 & 0x1fffff);
- { uint64_t x46 = (x24 + ((uint64_t)0x13 * x44));
- { uint32_t x47 = (uint32_t) (x46 >> 0x16);
- { uint32_t x48 = ((uint32_t)x46 & 0x3fffff);
- { uint32_t x49 = (x47 + x27);
- { uint32_t x50 = (x49 >> 0x15);
- { uint32_t x51 = (x49 & 0x1fffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e171m19_8limbs/fesquare.v b/src/Specific/solinas32_2e171m19_8limbs/fesquare.v
deleted file mode 100644
index 3096d87fe..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e171m19_8limbs.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_2e171m19_8limbs/fesquareDisplay.log b/src/Specific/solinas32_2e171m19_8limbs/fesquareDisplay.log
deleted file mode 100644
index a86d3ce95..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (((uint64_t)x2 * x13) + ((0x2 * ((uint64_t)x4 * x14)) + (((uint64_t)x6 * x12) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + (((uint64_t)x12 * x6) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x13 * x2))))))));
- uint64_t x16 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x13 * ((uint64_t)x13 * x13)));
- uint64_t x17 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x13 * ((0x2 * ((uint64_t)x14 * x13)) + (0x2 * ((uint64_t)x13 * x14)))));
- uint64_t x18 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x13 * (((uint64_t)x12 * x13) + ((0x2 * ((uint64_t)x14 * x14)) + ((uint64_t)x13 * x12)))));
- uint64_t x19 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x13 * (((uint64_t)x10 * x13) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x13 * x10))))));
- uint64_t x20 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x13 * ((0x2 * ((uint64_t)x8 * x13)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + (0x2 * ((uint64_t)x13 * x8))))))));
- uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x13 * (((uint64_t)x6 * x13) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + ((uint64_t)x13 * x6))))))));
- uint64_t x22 = (((uint64_t)x2 * x2) + (0x13 * ((0x2 * ((uint64_t)x4 * x13)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (0x2 * ((uint64_t)x13 * x4))))))))));
- uint64_t x23 = (x22 >> 0x16);
- uint32_t x24 = ((uint32_t)x22 & 0x3fffff);
- uint64_t x25 = (x23 + x21);
- uint64_t x26 = (x25 >> 0x15);
- uint32_t x27 = ((uint32_t)x25 & 0x1fffff);
- uint64_t x28 = (x26 + x20);
- uint32_t x29 = (uint32_t) (x28 >> 0x16);
- uint32_t x30 = ((uint32_t)x28 & 0x3fffff);
- uint64_t x31 = (x29 + x19);
- uint32_t x32 = (uint32_t) (x31 >> 0x15);
- uint32_t x33 = ((uint32_t)x31 & 0x1fffff);
- uint64_t x34 = (x32 + x18);
- uint32_t x35 = (uint32_t) (x34 >> 0x15);
- uint32_t x36 = ((uint32_t)x34 & 0x1fffff);
- uint64_t x37 = (x35 + x17);
- uint32_t x38 = (uint32_t) (x37 >> 0x16);
- uint32_t x39 = ((uint32_t)x37 & 0x3fffff);
- uint64_t x40 = (x38 + x16);
- uint32_t x41 = (uint32_t) (x40 >> 0x15);
- uint32_t x42 = ((uint32_t)x40 & 0x1fffff);
- uint64_t x43 = (x41 + x15);
- uint32_t x44 = (uint32_t) (x43 >> 0x15);
- uint32_t x45 = ((uint32_t)x43 & 0x1fffff);
- uint64_t x46 = (x24 + ((uint64_t)0x13 * x44));
- uint32_t x47 = (uint32_t) (x46 >> 0x16);
- uint32_t x48 = ((uint32_t)x46 & 0x3fffff);
- uint32_t x49 = (x47 + x27);
- uint32_t x50 = (x49 >> 0x15);
- uint32_t x51 = (x49 & 0x1fffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e171m19_8limbs/fesquareDisplay.v b/src/Specific/solinas32_2e171m19_8limbs/fesquareDisplay.v
deleted file mode 100644
index 5b91c94e0..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e171m19_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e171m19_8limbs/fesub.c b/src/Specific/solinas32_2e171m19_8limbs/fesub.c
deleted file mode 100644
index 7a0b623f5..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = ((0x7fffda + x5) - x19);
- out[1] = ((0x3ffffe + x7) - x21);
- out[2] = ((0x7ffffe + x9) - x23);
- out[3] = ((0x3ffffe + x11) - x25);
- out[4] = ((0x3ffffe + x13) - x27);
- out[5] = ((0x7ffffe + x15) - x29);
- out[6] = ((0x3ffffe + x17) - x31);
- out[7] = ((0x3ffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e171m19_8limbs/fesub.v b/src/Specific/solinas32_2e171m19_8limbs/fesub.v
deleted file mode 100644
index 1e96d1ced..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e171m19_8limbs.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_2e171m19_8limbs/fesubDisplay.log b/src/Specific/solinas32_2e171m19_8limbs/fesubDisplay.log
deleted file mode 100644
index 5322f4754..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0x3ffffe + x16) - x30), ((0x3ffffe + x17) - x31), ((0x7ffffe + x15) - x29), ((0x3ffffe + x13) - x27), ((0x3ffffe + x11) - x25), ((0x7ffffe + x9) - x23), ((0x3ffffe + x7) - x21), ((0x7fffda + x5) - x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e171m19_8limbs/fesubDisplay.v b/src/Specific/solinas32_2e171m19_8limbs/fesubDisplay.v
deleted file mode 100644
index 6aa2156f0..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e171m19_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e171m19_8limbs/freeze.c b/src/Specific/solinas32_2e171m19_8limbs/freeze.c
deleted file mode 100644
index 96d92326f..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffed);
- { uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0x1fffff);
- { uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0x3fffff);
- { uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0x1fffff);
- { uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0x1fffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0x3fffff);
- { uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0x1fffff);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0x1fffff);
- { uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- { uint32_t x40 = (x39 & 0x3fffed);
- { uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint32_t x44 = (x39 & 0x1fffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint32_t x48 = (x39 & 0x3fffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint32_t x52 = (x39 & 0x1fffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint32_t x56 = (x39 & 0x1fffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint32_t x60 = (x39 & 0x3fffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint32_t x64 = (x39 & 0x1fffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint32_t x68 = (x39 & 0x1fffff);
- { uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e171m19_8limbs/freeze.v b/src/Specific/solinas32_2e171m19_8limbs/freeze.v
deleted file mode 100644
index 9b1f7ed21..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e171m19_8limbs.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_2e171m19_8limbs/freezeDisplay.log b/src/Specific/solinas32_2e171m19_8limbs/freezeDisplay.log
deleted file mode 100644
index 0bcedc9dc..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffed);
- uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0x1fffff);
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0x3fffff);
- uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0x1fffff);
- uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0x1fffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0x3fffff);
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0x1fffff);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0x1fffff);
- uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- uint32_t x40 = (x39 & 0x3fffed);
- uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint32_t x44 = (x39 & 0x1fffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint32_t x48 = (x39 & 0x3fffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint32_t x52 = (x39 & 0x1fffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint32_t x56 = (x39 & 0x1fffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint32_t x60 = (x39 & 0x3fffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint32_t x64 = (x39 & 0x1fffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint32_t x68 = (x39 & 0x1fffff);
- uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e171m19_8limbs/freezeDisplay.v b/src/Specific/solinas32_2e171m19_8limbs/freezeDisplay.v
deleted file mode 100644
index fcfae09ce..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e171m19_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e171m19_8limbs/py_interpreter.sh b/src/Specific/solinas32_2e171m19_8limbs/py_interpreter.sh
deleted file mode 100755
index f8b71e67d..000000000
--- a/src/Specific/solinas32_2e171m19_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**171 - 19' -Dmodulus_bytes='21.375' -Da24='121665'
diff --git a/src/Specific/solinas32_2e174m17_7limbs/CurveParameters.v b/src/Specific/solinas32_2e174m17_7limbs/CurveParameters.v
deleted file mode 100644
index d9756e251..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^174 - 17
-Base: 24 + 6/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 24 + 6/7;
- bitwidth := 32;
- s := 2^174;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 7); [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_2e174m17_7limbs/Synthesis.v b/src/Specific/solinas32_2e174m17_7limbs/Synthesis.v
deleted file mode 100644
index 7643315b1..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e174m17_7limbs.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_2e174m17_7limbs/compiler.sh b/src/Specific/solinas32_2e174m17_7limbs/compiler.sh
deleted file mode 100755
index 0b42fc0e6..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,25,25,25,25,24}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<174) - 17' "$@"
diff --git a/src/Specific/solinas32_2e174m17_7limbs/compilerxx.sh b/src/Specific/solinas32_2e174m17_7limbs/compilerxx.sh
deleted file mode 100755
index f80896859..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,25,25,25,25,24}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<174) - 17' "$@"
diff --git a/src/Specific/solinas32_2e174m17_7limbs/feadd.c b/src/Specific/solinas32_2e174m17_7limbs/feadd.c
deleted file mode 100644
index 5288d0bef..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e174m17_7limbs/feadd.v b/src/Specific/solinas32_2e174m17_7limbs/feadd.v
deleted file mode 100644
index 1fe4a8e9c..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e174m17_7limbs.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_2e174m17_7limbs/feaddDisplay.log b/src/Specific/solinas32_2e174m17_7limbs/feaddDisplay.log
deleted file mode 100644
index d22997dcb..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e174m17_7limbs/feaddDisplay.v b/src/Specific/solinas32_2e174m17_7limbs/feaddDisplay.v
deleted file mode 100644
index a5c2b98ed..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e174m17_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e174m17_7limbs/fecarry.v b/src/Specific/solinas32_2e174m17_7limbs/fecarry.v
deleted file mode 100644
index a0ba7a60a..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e174m17_7limbs.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_2e174m17_7limbs/fecarryDisplay.v b/src/Specific/solinas32_2e174m17_7limbs/fecarryDisplay.v
deleted file mode 100644
index 835dd2c84..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e174m17_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e174m17_7limbs/femul.c b/src/Specific/solinas32_2e174m17_7limbs/femul.c
deleted file mode 100644
index 9f76b9380..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- { uint64_t x28 = (((uint64_t)x5 * x26) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + (((uint64_t)x15 * x19) + ((uint64_t)x14 * x17)))))));
- { uint64_t x29 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + (((uint64_t)x11 * x21) + (((uint64_t)x13 * x19) + ((uint64_t)x15 * x17)))))) + (0x11 * (0x2 * ((uint64_t)x14 * x26))));
- { uint64_t x30 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + (((uint64_t)x11 * x19) + ((uint64_t)x13 * x17))))) + (0x11 * ((0x2 * ((uint64_t)x15 * x26)) + (0x2 * ((uint64_t)x14 * x27)))));
- { uint64_t x31 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + (((uint64_t)x9 * x19) + ((uint64_t)x11 * x17)))) + (0x11 * ((0x2 * ((uint64_t)x13 * x26)) + ((0x2 * ((uint64_t)x15 * x27)) + (0x2 * ((uint64_t)x14 * x25))))));
- { uint64_t x32 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + ((uint64_t)x9 * x17))) + (0x11 * ((0x2 * ((uint64_t)x11 * x26)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + (0x2 * ((uint64_t)x14 * x23)))))));
- { uint64_t x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) + (0x11 * ((0x2 * ((uint64_t)x9 * x26)) + ((0x2 * ((uint64_t)x11 * x27)) + ((0x2 * ((uint64_t)x13 * x25)) + ((0x2 * ((uint64_t)x15 * x23)) + (0x2 * ((uint64_t)x14 * x21))))))));
- { uint64_t x34 = (((uint64_t)x5 * x17) + (0x11 * ((0x2 * ((uint64_t)x7 * x26)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + (0x2 * ((uint64_t)x14 * x19)))))))));
- { uint64_t x35 = (x34 >> 0x19);
- { uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- { uint64_t x37 = (x35 + x33);
- { uint64_t x38 = (x37 >> 0x19);
- { uint32_t x39 = ((uint32_t)x37 & 0x1ffffff);
- { uint64_t x40 = (x38 + x32);
- { uint64_t x41 = (x40 >> 0x19);
- { uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- { uint64_t x43 = (x41 + x31);
- { uint64_t x44 = (x43 >> 0x19);
- { uint32_t x45 = ((uint32_t)x43 & 0x1ffffff);
- { uint64_t x46 = (x44 + x30);
- { uint64_t x47 = (x46 >> 0x19);
- { uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- { uint64_t x49 = (x47 + x29);
- { uint64_t x50 = (x49 >> 0x19);
- { uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- { uint64_t x52 = (x50 + x28);
- { uint64_t x53 = (x52 >> 0x18);
- { uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- { uint64_t x55 = (x36 + (0x11 * x53));
- { uint32_t x56 = (uint32_t) (x55 >> 0x19);
- { uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- { uint32_t x58 = (x56 + x39);
- { uint32_t x59 = (x58 >> 0x19);
- { uint32_t x60 = (x58 & 0x1ffffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e174m17_7limbs/femul.v b/src/Specific/solinas32_2e174m17_7limbs/femul.v
deleted file mode 100644
index ccb7dde90..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e174m17_7limbs.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_2e174m17_7limbs/femulDisplay.log b/src/Specific/solinas32_2e174m17_7limbs/femulDisplay.log
deleted file mode 100644
index 49ea49d71..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint64_t x28 = (((uint64_t)x5 * x26) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + (((uint64_t)x15 * x19) + ((uint64_t)x14 * x17)))))));
- uint64_t x29 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + (((uint64_t)x11 * x21) + (((uint64_t)x13 * x19) + ((uint64_t)x15 * x17)))))) + (0x11 * (0x2 * ((uint64_t)x14 * x26))));
- uint64_t x30 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + (((uint64_t)x11 * x19) + ((uint64_t)x13 * x17))))) + (0x11 * ((0x2 * ((uint64_t)x15 * x26)) + (0x2 * ((uint64_t)x14 * x27)))));
- uint64_t x31 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + (((uint64_t)x9 * x19) + ((uint64_t)x11 * x17)))) + (0x11 * ((0x2 * ((uint64_t)x13 * x26)) + ((0x2 * ((uint64_t)x15 * x27)) + (0x2 * ((uint64_t)x14 * x25))))));
- uint64_t x32 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + ((uint64_t)x9 * x17))) + (0x11 * ((0x2 * ((uint64_t)x11 * x26)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + (0x2 * ((uint64_t)x14 * x23)))))));
- uint64_t x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) + (0x11 * ((0x2 * ((uint64_t)x9 * x26)) + ((0x2 * ((uint64_t)x11 * x27)) + ((0x2 * ((uint64_t)x13 * x25)) + ((0x2 * ((uint64_t)x15 * x23)) + (0x2 * ((uint64_t)x14 * x21))))))));
- uint64_t x34 = (((uint64_t)x5 * x17) + (0x11 * ((0x2 * ((uint64_t)x7 * x26)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + (0x2 * ((uint64_t)x14 * x19)))))))));
- uint64_t x35 = (x34 >> 0x19);
- uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- uint64_t x37 = (x35 + x33);
- uint64_t x38 = (x37 >> 0x19);
- uint32_t x39 = ((uint32_t)x37 & 0x1ffffff);
- uint64_t x40 = (x38 + x32);
- uint64_t x41 = (x40 >> 0x19);
- uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- uint64_t x43 = (x41 + x31);
- uint64_t x44 = (x43 >> 0x19);
- uint32_t x45 = ((uint32_t)x43 & 0x1ffffff);
- uint64_t x46 = (x44 + x30);
- uint64_t x47 = (x46 >> 0x19);
- uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- uint64_t x49 = (x47 + x29);
- uint64_t x50 = (x49 >> 0x19);
- uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- uint64_t x52 = (x50 + x28);
- uint64_t x53 = (x52 >> 0x18);
- uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- uint64_t x55 = (x36 + (0x11 * x53));
- uint32_t x56 = (uint32_t) (x55 >> 0x19);
- uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- uint32_t x58 = (x56 + x39);
- uint32_t x59 = (x58 >> 0x19);
- uint32_t x60 = (x58 & 0x1ffffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e174m17_7limbs/femulDisplay.v b/src/Specific/solinas32_2e174m17_7limbs/femulDisplay.v
deleted file mode 100644
index f02c2c1b6..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e174m17_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e174m17_7limbs/fesquare.c b/src/Specific/solinas32_2e174m17_7limbs/fesquare.c
deleted file mode 100644
index 5a6c5fb42..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x13 = (((uint64_t)x2 * x11) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x11 * x2)))))));
- { uint64_t x14 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x11 * (0x2 * ((uint64_t)x11 * x11))));
- { uint64_t x15 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint64_t)x12 * x11)) + (0x2 * ((uint64_t)x11 * x12)))));
- { uint64_t x16 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x11 * ((0x2 * ((uint64_t)x10 * x11)) + ((0x2 * ((uint64_t)x12 * x12)) + (0x2 * ((uint64_t)x11 * x10))))));
- { uint64_t x17 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x11 * ((0x2 * ((uint64_t)x8 * x11)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (0x2 * ((uint64_t)x11 * x8)))))));
- { uint64_t x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * ((0x2 * ((uint64_t)x6 * x11)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + (0x2 * ((uint64_t)x11 * x6))))))));
- { uint64_t x19 = (((uint64_t)x2 * x2) + (0x11 * ((0x2 * ((uint64_t)x4 * x11)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (0x2 * ((uint64_t)x11 * x4)))))))));
- { uint64_t x20 = (x19 >> 0x19);
- { uint32_t x21 = ((uint32_t)x19 & 0x1ffffff);
- { uint64_t x22 = (x20 + x18);
- { uint64_t x23 = (x22 >> 0x19);
- { uint32_t x24 = ((uint32_t)x22 & 0x1ffffff);
- { uint64_t x25 = (x23 + x17);
- { uint64_t x26 = (x25 >> 0x19);
- { uint32_t x27 = ((uint32_t)x25 & 0x1ffffff);
- { uint64_t x28 = (x26 + x16);
- { uint64_t x29 = (x28 >> 0x19);
- { uint32_t x30 = ((uint32_t)x28 & 0x1ffffff);
- { uint64_t x31 = (x29 + x15);
- { uint64_t x32 = (x31 >> 0x19);
- { uint32_t x33 = ((uint32_t)x31 & 0x1ffffff);
- { uint64_t x34 = (x32 + x14);
- { uint64_t x35 = (x34 >> 0x19);
- { uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- { uint64_t x37 = (x35 + x13);
- { uint64_t x38 = (x37 >> 0x18);
- { uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- { uint64_t x40 = (x21 + (0x11 * x38));
- { uint32_t x41 = (uint32_t) (x40 >> 0x19);
- { uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- { uint32_t x43 = (x41 + x24);
- { uint32_t x44 = (x43 >> 0x19);
- { uint32_t x45 = (x43 & 0x1ffffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e174m17_7limbs/fesquare.v b/src/Specific/solinas32_2e174m17_7limbs/fesquare.v
deleted file mode 100644
index 268ae6242..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e174m17_7limbs.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_2e174m17_7limbs/fesquareDisplay.log b/src/Specific/solinas32_2e174m17_7limbs/fesquareDisplay.log
deleted file mode 100644
index 712620cd3..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x13 = (((uint64_t)x2 * x11) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x11 * x2)))))));
- uint64_t x14 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x11 * (0x2 * ((uint64_t)x11 * x11))));
- uint64_t x15 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint64_t)x12 * x11)) + (0x2 * ((uint64_t)x11 * x12)))));
- uint64_t x16 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x11 * ((0x2 * ((uint64_t)x10 * x11)) + ((0x2 * ((uint64_t)x12 * x12)) + (0x2 * ((uint64_t)x11 * x10))))));
- uint64_t x17 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x11 * ((0x2 * ((uint64_t)x8 * x11)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (0x2 * ((uint64_t)x11 * x8)))))));
- uint64_t x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * ((0x2 * ((uint64_t)x6 * x11)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + (0x2 * ((uint64_t)x11 * x6))))))));
- uint64_t x19 = (((uint64_t)x2 * x2) + (0x11 * ((0x2 * ((uint64_t)x4 * x11)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (0x2 * ((uint64_t)x11 * x4)))))))));
- uint64_t x20 = (x19 >> 0x19);
- uint32_t x21 = ((uint32_t)x19 & 0x1ffffff);
- uint64_t x22 = (x20 + x18);
- uint64_t x23 = (x22 >> 0x19);
- uint32_t x24 = ((uint32_t)x22 & 0x1ffffff);
- uint64_t x25 = (x23 + x17);
- uint64_t x26 = (x25 >> 0x19);
- uint32_t x27 = ((uint32_t)x25 & 0x1ffffff);
- uint64_t x28 = (x26 + x16);
- uint64_t x29 = (x28 >> 0x19);
- uint32_t x30 = ((uint32_t)x28 & 0x1ffffff);
- uint64_t x31 = (x29 + x15);
- uint64_t x32 = (x31 >> 0x19);
- uint32_t x33 = ((uint32_t)x31 & 0x1ffffff);
- uint64_t x34 = (x32 + x14);
- uint64_t x35 = (x34 >> 0x19);
- uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- uint64_t x37 = (x35 + x13);
- uint64_t x38 = (x37 >> 0x18);
- uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- uint64_t x40 = (x21 + (0x11 * x38));
- uint32_t x41 = (uint32_t) (x40 >> 0x19);
- uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- uint32_t x43 = (x41 + x24);
- uint32_t x44 = (x43 >> 0x19);
- uint32_t x45 = (x43 & 0x1ffffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e174m17_7limbs/fesquareDisplay.v b/src/Specific/solinas32_2e174m17_7limbs/fesquareDisplay.v
deleted file mode 100644
index 6f3a26531..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e174m17_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e174m17_7limbs/fesub.c b/src/Specific/solinas32_2e174m17_7limbs/fesub.c
deleted file mode 100644
index d4d3ac9cd..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = ((0x3ffffde + x5) - x17);
- out[1] = ((0x3fffffe + x7) - x19);
- out[2] = ((0x3fffffe + x9) - x21);
- out[3] = ((0x3fffffe + x11) - x23);
- out[4] = ((0x3fffffe + x13) - x25);
- out[5] = ((0x3fffffe + x15) - x27);
- out[6] = ((0x1fffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e174m17_7limbs/fesub.v b/src/Specific/solinas32_2e174m17_7limbs/fesub.v
deleted file mode 100644
index c5d767095..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e174m17_7limbs.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_2e174m17_7limbs/fesubDisplay.log b/src/Specific/solinas32_2e174m17_7limbs/fesubDisplay.log
deleted file mode 100644
index bc7310e3d..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0x1fffffe + x14) - x26), ((0x3fffffe + x15) - x27), ((0x3fffffe + x13) - x25), ((0x3fffffe + x11) - x23), ((0x3fffffe + x9) - x21), ((0x3fffffe + x7) - x19), ((0x3ffffde + x5) - x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e174m17_7limbs/fesubDisplay.v b/src/Specific/solinas32_2e174m17_7limbs/fesubDisplay.v
deleted file mode 100644
index 306fe7e2b..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e174m17_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e174m17_7limbs/freeze.c b/src/Specific/solinas32_2e174m17_7limbs/freeze.c
deleted file mode 100644
index 281034530..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffef);
- { uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0x1ffffff);
- { uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0x1ffffff);
- { uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0x1ffffff);
- { uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0x1ffffff);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0x1ffffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0xffffff);
- { uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- { uint32_t x35 = (x34 & 0x1ffffef);
- { uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint32_t x39 = (x34 & 0x1ffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint32_t x43 = (x34 & 0x1ffffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint32_t x47 = (x34 & 0x1ffffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint32_t x51 = (x34 & 0x1ffffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint32_t x55 = (x34 & 0x1ffffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint32_t x59 = (x34 & 0xffffff);
- { uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e174m17_7limbs/freeze.v b/src/Specific/solinas32_2e174m17_7limbs/freeze.v
deleted file mode 100644
index e697b2858..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e174m17_7limbs.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_2e174m17_7limbs/freezeDisplay.log b/src/Specific/solinas32_2e174m17_7limbs/freezeDisplay.log
deleted file mode 100644
index ff3dadf39..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffef);
- uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0x1ffffff);
- uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0x1ffffff);
- uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0x1ffffff);
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0x1ffffff);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0x1ffffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0xffffff);
- uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- uint32_t x35 = (x34 & 0x1ffffef);
- uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint32_t x39 = (x34 & 0x1ffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint32_t x43 = (x34 & 0x1ffffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint32_t x47 = (x34 & 0x1ffffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint32_t x51 = (x34 & 0x1ffffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint32_t x55 = (x34 & 0x1ffffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint32_t x59 = (x34 & 0xffffff);
- uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e174m17_7limbs/freezeDisplay.v b/src/Specific/solinas32_2e174m17_7limbs/freezeDisplay.v
deleted file mode 100644
index fde77ecbe..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e174m17_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e174m17_7limbs/py_interpreter.sh b/src/Specific/solinas32_2e174m17_7limbs/py_interpreter.sh
deleted file mode 100755
index a435a20f5..000000000
--- a/src/Specific/solinas32_2e174m17_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**174 - 17' -Dmodulus_bytes='24 + 6/7' -Da24='121665'
diff --git a/src/Specific/solinas32_2e174m17_8limbs/CurveParameters.v b/src/Specific/solinas32_2e174m17_8limbs/CurveParameters.v
deleted file mode 100644
index d52bc5881..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^174 - 17
-Base: 21.75
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 21 + 3/4;
- bitwidth := 32;
- s := 2^174;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 8); [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_2e174m17_8limbs/Synthesis.v b/src/Specific/solinas32_2e174m17_8limbs/Synthesis.v
deleted file mode 100644
index a55a43ab9..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e174m17_8limbs.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_2e174m17_8limbs/compiler.sh b/src/Specific/solinas32_2e174m17_8limbs/compiler.sh
deleted file mode 100755
index ded3e7196..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,22,21,22,22,22,21}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<174) - 17' "$@"
diff --git a/src/Specific/solinas32_2e174m17_8limbs/compilerxx.sh b/src/Specific/solinas32_2e174m17_8limbs/compilerxx.sh
deleted file mode 100755
index 9603ed1d7..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,22,21,22,22,22,21}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<174) - 17' "$@"
diff --git a/src/Specific/solinas32_2e174m17_8limbs/feadd.c b/src/Specific/solinas32_2e174m17_8limbs/feadd.c
deleted file mode 100644
index cc3671f75..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e174m17_8limbs/feadd.v b/src/Specific/solinas32_2e174m17_8limbs/feadd.v
deleted file mode 100644
index 8e428acf3..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e174m17_8limbs.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_2e174m17_8limbs/feaddDisplay.log b/src/Specific/solinas32_2e174m17_8limbs/feaddDisplay.log
deleted file mode 100644
index f25c10903..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e174m17_8limbs/feaddDisplay.v b/src/Specific/solinas32_2e174m17_8limbs/feaddDisplay.v
deleted file mode 100644
index ff03d94d2..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e174m17_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e174m17_8limbs/fecarry.v b/src/Specific/solinas32_2e174m17_8limbs/fecarry.v
deleted file mode 100644
index 8cf55a11a..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e174m17_8limbs.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_2e174m17_8limbs/fecarryDisplay.v b/src/Specific/solinas32_2e174m17_8limbs/fecarryDisplay.v
deleted file mode 100644
index b2123bc96..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e174m17_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e174m17_8limbs/femul.c b/src/Specific/solinas32_2e174m17_8limbs/femul.c
deleted file mode 100644
index 81c112119..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint64_t x32 = (((uint64_t)x5 * x30) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + (((uint64_t)x17 * x21) + ((uint64_t)x16 * x19))))))));
- { uint64_t x33 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + ((0x2 * ((uint64_t)x11 * x25)) + (((uint64_t)x13 * x23) + (((uint64_t)x15 * x21) + ((uint64_t)x17 * x19))))))) + (0x11 * (0x2 * ((uint64_t)x16 * x30))));
- { uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + ((0x2 * ((uint64_t)x11 * x23)) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0x11 * ((0x2 * ((uint64_t)x17 * x30)) + (0x2 * ((uint64_t)x16 * x31)))));
- { uint64_t x35 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + ((uint64_t)x13 * x19))))) + (0x11 * ((0x2 * ((uint64_t)x15 * x30)) + ((0x2 * ((uint64_t)x17 * x31)) + (0x2 * ((uint64_t)x16 * x29))))));
- { uint64_t x36 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + ((uint64_t)x11 * x19)))) + (0x11 * (((uint64_t)x13 * x30) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x16 * x27))))));
- { uint64_t x37 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((uint64_t)x9 * x19))) + (0x11 * ((0x2 * ((uint64_t)x11 * x30)) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + (((uint64_t)x17 * x27) + (0x2 * ((uint64_t)x16 * x25))))))));
- { uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0x11 * ((0x2 * ((uint64_t)x9 * x30)) + ((0x2 * ((uint64_t)x11 * x31)) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + ((0x2 * ((uint64_t)x17 * x25)) + (0x2 * ((uint64_t)x16 * x23)))))))));
- { uint64_t x39 = (((uint64_t)x5 * x19) + (0x11 * ((0x2 * ((uint64_t)x7 * x30)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + (0x2 * ((uint64_t)x16 * x21))))))))));
- { uint64_t x40 = (x39 >> 0x16);
- { uint32_t x41 = ((uint32_t)x39 & 0x3fffff);
- { uint64_t x42 = (x40 + x38);
- { uint64_t x43 = (x42 >> 0x16);
- { uint32_t x44 = ((uint32_t)x42 & 0x3fffff);
- { uint64_t x45 = (x43 + x37);
- { uint32_t x46 = (uint32_t) (x45 >> 0x16);
- { uint32_t x47 = ((uint32_t)x45 & 0x3fffff);
- { uint64_t x48 = (x46 + x36);
- { uint64_t x49 = (x48 >> 0x15);
- { uint32_t x50 = ((uint32_t)x48 & 0x1fffff);
- { uint64_t x51 = (x49 + x35);
- { uint32_t x52 = (uint32_t) (x51 >> 0x16);
- { uint32_t x53 = ((uint32_t)x51 & 0x3fffff);
- { uint64_t x54 = (x52 + x34);
- { uint32_t x55 = (uint32_t) (x54 >> 0x16);
- { uint32_t x56 = ((uint32_t)x54 & 0x3fffff);
- { uint64_t x57 = (x55 + x33);
- { uint32_t x58 = (uint32_t) (x57 >> 0x16);
- { uint32_t x59 = ((uint32_t)x57 & 0x3fffff);
- { uint64_t x60 = (x58 + x32);
- { uint32_t x61 = (uint32_t) (x60 >> 0x15);
- { uint32_t x62 = ((uint32_t)x60 & 0x1fffff);
- { uint64_t x63 = (x41 + ((uint64_t)0x11 * x61));
- { uint32_t x64 = (uint32_t) (x63 >> 0x16);
- { uint32_t x65 = ((uint32_t)x63 & 0x3fffff);
- { uint32_t x66 = (x64 + x44);
- { uint32_t x67 = (x66 >> 0x16);
- { uint32_t x68 = (x66 & 0x3fffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e174m17_8limbs/femul.v b/src/Specific/solinas32_2e174m17_8limbs/femul.v
deleted file mode 100644
index 4259cd205..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e174m17_8limbs.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_2e174m17_8limbs/femulDisplay.log b/src/Specific/solinas32_2e174m17_8limbs/femulDisplay.log
deleted file mode 100644
index ecb345f6b..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x32 = (((uint64_t)x5 * x30) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + (((uint64_t)x17 * x21) + ((uint64_t)x16 * x19))))))));
- uint64_t x33 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + ((0x2 * ((uint64_t)x11 * x25)) + (((uint64_t)x13 * x23) + (((uint64_t)x15 * x21) + ((uint64_t)x17 * x19))))))) + (0x11 * (0x2 * ((uint64_t)x16 * x30))));
- uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + ((0x2 * ((uint64_t)x11 * x23)) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0x11 * ((0x2 * ((uint64_t)x17 * x30)) + (0x2 * ((uint64_t)x16 * x31)))));
- uint64_t x35 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + ((uint64_t)x13 * x19))))) + (0x11 * ((0x2 * ((uint64_t)x15 * x30)) + ((0x2 * ((uint64_t)x17 * x31)) + (0x2 * ((uint64_t)x16 * x29))))));
- uint64_t x36 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + ((uint64_t)x11 * x19)))) + (0x11 * (((uint64_t)x13 * x30) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x16 * x27))))));
- uint64_t x37 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((uint64_t)x9 * x19))) + (0x11 * ((0x2 * ((uint64_t)x11 * x30)) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + (((uint64_t)x17 * x27) + (0x2 * ((uint64_t)x16 * x25))))))));
- uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0x11 * ((0x2 * ((uint64_t)x9 * x30)) + ((0x2 * ((uint64_t)x11 * x31)) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + ((0x2 * ((uint64_t)x17 * x25)) + (0x2 * ((uint64_t)x16 * x23)))))))));
- uint64_t x39 = (((uint64_t)x5 * x19) + (0x11 * ((0x2 * ((uint64_t)x7 * x30)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + (0x2 * ((uint64_t)x16 * x21))))))))));
- uint64_t x40 = (x39 >> 0x16);
- uint32_t x41 = ((uint32_t)x39 & 0x3fffff);
- uint64_t x42 = (x40 + x38);
- uint64_t x43 = (x42 >> 0x16);
- uint32_t x44 = ((uint32_t)x42 & 0x3fffff);
- uint64_t x45 = (x43 + x37);
- uint32_t x46 = (uint32_t) (x45 >> 0x16);
- uint32_t x47 = ((uint32_t)x45 & 0x3fffff);
- uint64_t x48 = (x46 + x36);
- uint64_t x49 = (x48 >> 0x15);
- uint32_t x50 = ((uint32_t)x48 & 0x1fffff);
- uint64_t x51 = (x49 + x35);
- uint32_t x52 = (uint32_t) (x51 >> 0x16);
- uint32_t x53 = ((uint32_t)x51 & 0x3fffff);
- uint64_t x54 = (x52 + x34);
- uint32_t x55 = (uint32_t) (x54 >> 0x16);
- uint32_t x56 = ((uint32_t)x54 & 0x3fffff);
- uint64_t x57 = (x55 + x33);
- uint32_t x58 = (uint32_t) (x57 >> 0x16);
- uint32_t x59 = ((uint32_t)x57 & 0x3fffff);
- uint64_t x60 = (x58 + x32);
- uint32_t x61 = (uint32_t) (x60 >> 0x15);
- uint32_t x62 = ((uint32_t)x60 & 0x1fffff);
- uint64_t x63 = (x41 + ((uint64_t)0x11 * x61));
- uint32_t x64 = (uint32_t) (x63 >> 0x16);
- uint32_t x65 = ((uint32_t)x63 & 0x3fffff);
- uint32_t x66 = (x64 + x44);
- uint32_t x67 = (x66 >> 0x16);
- uint32_t x68 = (x66 & 0x3fffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e174m17_8limbs/femulDisplay.v b/src/Specific/solinas32_2e174m17_8limbs/femulDisplay.v
deleted file mode 100644
index de22c43f6..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e174m17_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e174m17_8limbs/fesquare.c b/src/Specific/solinas32_2e174m17_8limbs/fesquare.c
deleted file mode 100644
index dec43c8df..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (((uint64_t)x2 * x13) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x13 * x2))))))));
- { uint64_t x16 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x11 * (0x2 * ((uint64_t)x13 * x13))));
- { uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x11 * ((0x2 * ((uint64_t)x14 * x13)) + (0x2 * ((uint64_t)x13 * x14)))));
- { uint64_t x18 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint64_t)x12 * x13)) + ((0x2 * ((uint64_t)x14 * x14)) + (0x2 * ((uint64_t)x13 * x12))))));
- { uint64_t x19 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x11 * (((uint64_t)x10 * x13) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x13 * x10))))));
- { uint64_t x20 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x11 * ((0x2 * ((uint64_t)x8 * x13)) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (0x2 * ((uint64_t)x13 * x8))))))));
- { uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * ((0x2 * ((uint64_t)x6 * x13)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + (0x2 * ((uint64_t)x13 * x6)))))))));
- { uint64_t x22 = (((uint64_t)x2 * x2) + (0x11 * ((0x2 * ((uint64_t)x4 * x13)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (0x2 * ((uint64_t)x13 * x4))))))))));
- { uint64_t x23 = (x22 >> 0x16);
- { uint32_t x24 = ((uint32_t)x22 & 0x3fffff);
- { uint64_t x25 = (x23 + x21);
- { uint64_t x26 = (x25 >> 0x16);
- { uint32_t x27 = ((uint32_t)x25 & 0x3fffff);
- { uint64_t x28 = (x26 + x20);
- { uint32_t x29 = (uint32_t) (x28 >> 0x16);
- { uint32_t x30 = ((uint32_t)x28 & 0x3fffff);
- { uint64_t x31 = (x29 + x19);
- { uint64_t x32 = (x31 >> 0x15);
- { uint32_t x33 = ((uint32_t)x31 & 0x1fffff);
- { uint64_t x34 = (x32 + x18);
- { uint32_t x35 = (uint32_t) (x34 >> 0x16);
- { uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- { uint64_t x37 = (x35 + x17);
- { uint32_t x38 = (uint32_t) (x37 >> 0x16);
- { uint32_t x39 = ((uint32_t)x37 & 0x3fffff);
- { uint64_t x40 = (x38 + x16);
- { uint32_t x41 = (uint32_t) (x40 >> 0x16);
- { uint32_t x42 = ((uint32_t)x40 & 0x3fffff);
- { uint64_t x43 = (x41 + x15);
- { uint32_t x44 = (uint32_t) (x43 >> 0x15);
- { uint32_t x45 = ((uint32_t)x43 & 0x1fffff);
- { uint64_t x46 = (x24 + ((uint64_t)0x11 * x44));
- { uint32_t x47 = (uint32_t) (x46 >> 0x16);
- { uint32_t x48 = ((uint32_t)x46 & 0x3fffff);
- { uint32_t x49 = (x47 + x27);
- { uint32_t x50 = (x49 >> 0x16);
- { uint32_t x51 = (x49 & 0x3fffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e174m17_8limbs/fesquare.v b/src/Specific/solinas32_2e174m17_8limbs/fesquare.v
deleted file mode 100644
index fe4808c34..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e174m17_8limbs.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_2e174m17_8limbs/fesquareDisplay.log b/src/Specific/solinas32_2e174m17_8limbs/fesquareDisplay.log
deleted file mode 100644
index 846d739cd..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (((uint64_t)x2 * x13) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x13 * x2))))))));
- uint64_t x16 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x11 * (0x2 * ((uint64_t)x13 * x13))));
- uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x11 * ((0x2 * ((uint64_t)x14 * x13)) + (0x2 * ((uint64_t)x13 * x14)))));
- uint64_t x18 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint64_t)x12 * x13)) + ((0x2 * ((uint64_t)x14 * x14)) + (0x2 * ((uint64_t)x13 * x12))))));
- uint64_t x19 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x11 * (((uint64_t)x10 * x13) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x13 * x10))))));
- uint64_t x20 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x11 * ((0x2 * ((uint64_t)x8 * x13)) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (0x2 * ((uint64_t)x13 * x8))))))));
- uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * ((0x2 * ((uint64_t)x6 * x13)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + (0x2 * ((uint64_t)x13 * x6)))))))));
- uint64_t x22 = (((uint64_t)x2 * x2) + (0x11 * ((0x2 * ((uint64_t)x4 * x13)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (0x2 * ((uint64_t)x13 * x4))))))))));
- uint64_t x23 = (x22 >> 0x16);
- uint32_t x24 = ((uint32_t)x22 & 0x3fffff);
- uint64_t x25 = (x23 + x21);
- uint64_t x26 = (x25 >> 0x16);
- uint32_t x27 = ((uint32_t)x25 & 0x3fffff);
- uint64_t x28 = (x26 + x20);
- uint32_t x29 = (uint32_t) (x28 >> 0x16);
- uint32_t x30 = ((uint32_t)x28 & 0x3fffff);
- uint64_t x31 = (x29 + x19);
- uint64_t x32 = (x31 >> 0x15);
- uint32_t x33 = ((uint32_t)x31 & 0x1fffff);
- uint64_t x34 = (x32 + x18);
- uint32_t x35 = (uint32_t) (x34 >> 0x16);
- uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- uint64_t x37 = (x35 + x17);
- uint32_t x38 = (uint32_t) (x37 >> 0x16);
- uint32_t x39 = ((uint32_t)x37 & 0x3fffff);
- uint64_t x40 = (x38 + x16);
- uint32_t x41 = (uint32_t) (x40 >> 0x16);
- uint32_t x42 = ((uint32_t)x40 & 0x3fffff);
- uint64_t x43 = (x41 + x15);
- uint32_t x44 = (uint32_t) (x43 >> 0x15);
- uint32_t x45 = ((uint32_t)x43 & 0x1fffff);
- uint64_t x46 = (x24 + ((uint64_t)0x11 * x44));
- uint32_t x47 = (uint32_t) (x46 >> 0x16);
- uint32_t x48 = ((uint32_t)x46 & 0x3fffff);
- uint32_t x49 = (x47 + x27);
- uint32_t x50 = (x49 >> 0x16);
- uint32_t x51 = (x49 & 0x3fffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e174m17_8limbs/fesquareDisplay.v b/src/Specific/solinas32_2e174m17_8limbs/fesquareDisplay.v
deleted file mode 100644
index 5f297ccb1..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e174m17_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e174m17_8limbs/fesub.c b/src/Specific/solinas32_2e174m17_8limbs/fesub.c
deleted file mode 100644
index 335f5c0e4..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = ((0x7fffde + x5) - x19);
- out[1] = ((0x7ffffe + x7) - x21);
- out[2] = ((0x7ffffe + x9) - x23);
- out[3] = ((0x3ffffe + x11) - x25);
- out[4] = ((0x7ffffe + x13) - x27);
- out[5] = ((0x7ffffe + x15) - x29);
- out[6] = ((0x7ffffe + x17) - x31);
- out[7] = ((0x3ffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e174m17_8limbs/fesub.v b/src/Specific/solinas32_2e174m17_8limbs/fesub.v
deleted file mode 100644
index 11d49c286..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e174m17_8limbs.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_2e174m17_8limbs/fesubDisplay.log b/src/Specific/solinas32_2e174m17_8limbs/fesubDisplay.log
deleted file mode 100644
index 5c67ecf1c..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0x3ffffe + x16) - x30), ((0x7ffffe + x17) - x31), ((0x7ffffe + x15) - x29), ((0x7ffffe + x13) - x27), ((0x3ffffe + x11) - x25), ((0x7ffffe + x9) - x23), ((0x7ffffe + x7) - x21), ((0x7fffde + x5) - x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e174m17_8limbs/fesubDisplay.v b/src/Specific/solinas32_2e174m17_8limbs/fesubDisplay.v
deleted file mode 100644
index de7dfecbf..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e174m17_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e174m17_8limbs/freeze.c b/src/Specific/solinas32_2e174m17_8limbs/freeze.c
deleted file mode 100644
index 8ab82d97b..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffef);
- { uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0x3fffff);
- { uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0x3fffff);
- { uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0x1fffff);
- { uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0x3fffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0x3fffff);
- { uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0x3fffff);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0x1fffff);
- { uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- { uint32_t x40 = (x39 & 0x3fffef);
- { uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint32_t x44 = (x39 & 0x3fffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint32_t x48 = (x39 & 0x3fffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint32_t x52 = (x39 & 0x1fffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint32_t x56 = (x39 & 0x3fffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint32_t x60 = (x39 & 0x3fffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint32_t x64 = (x39 & 0x3fffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint32_t x68 = (x39 & 0x1fffff);
- { uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e174m17_8limbs/freeze.v b/src/Specific/solinas32_2e174m17_8limbs/freeze.v
deleted file mode 100644
index 7e5537d46..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e174m17_8limbs.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_2e174m17_8limbs/freezeDisplay.log b/src/Specific/solinas32_2e174m17_8limbs/freezeDisplay.log
deleted file mode 100644
index 1f510ea1d..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffef);
- uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0x3fffff);
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0x3fffff);
- uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0x1fffff);
- uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0x3fffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0x3fffff);
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0x3fffff);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0x1fffff);
- uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- uint32_t x40 = (x39 & 0x3fffef);
- uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint32_t x44 = (x39 & 0x3fffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint32_t x48 = (x39 & 0x3fffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint32_t x52 = (x39 & 0x1fffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint32_t x56 = (x39 & 0x3fffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint32_t x60 = (x39 & 0x3fffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint32_t x64 = (x39 & 0x3fffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint32_t x68 = (x39 & 0x1fffff);
- uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e174m17_8limbs/freezeDisplay.v b/src/Specific/solinas32_2e174m17_8limbs/freezeDisplay.v
deleted file mode 100644
index 319b30eb2..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e174m17_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e174m17_8limbs/py_interpreter.sh b/src/Specific/solinas32_2e174m17_8limbs/py_interpreter.sh
deleted file mode 100755
index a66ba22ea..000000000
--- a/src/Specific/solinas32_2e174m17_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**174 - 17' -Dmodulus_bytes='21.75' -Da24='121665'
diff --git a/src/Specific/solinas32_2e174m3_7limbs/CurveParameters.v b/src/Specific/solinas32_2e174m3_7limbs/CurveParameters.v
deleted file mode 100644
index 7b581a52f..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^174 - 3
-Base: 24 + 6/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 24 + 6/7;
- bitwidth := 32;
- s := 2^174;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 7); [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_2e174m3_7limbs/Synthesis.v b/src/Specific/solinas32_2e174m3_7limbs/Synthesis.v
deleted file mode 100644
index 863f765c2..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e174m3_7limbs.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_2e174m3_7limbs/compiler.sh b/src/Specific/solinas32_2e174m3_7limbs/compiler.sh
deleted file mode 100755
index 7682c3254..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,25,25,25,25,24}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<174) - 3' "$@"
diff --git a/src/Specific/solinas32_2e174m3_7limbs/compilerxx.sh b/src/Specific/solinas32_2e174m3_7limbs/compilerxx.sh
deleted file mode 100755
index a00b12ac5..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,25,25,25,25,24}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<174) - 3' "$@"
diff --git a/src/Specific/solinas32_2e174m3_7limbs/feadd.c b/src/Specific/solinas32_2e174m3_7limbs/feadd.c
deleted file mode 100644
index 5288d0bef..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e174m3_7limbs/feadd.v b/src/Specific/solinas32_2e174m3_7limbs/feadd.v
deleted file mode 100644
index cddbf9f98..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e174m3_7limbs.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_2e174m3_7limbs/feaddDisplay.log b/src/Specific/solinas32_2e174m3_7limbs/feaddDisplay.log
deleted file mode 100644
index d22997dcb..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e174m3_7limbs/feaddDisplay.v b/src/Specific/solinas32_2e174m3_7limbs/feaddDisplay.v
deleted file mode 100644
index 714c7ca6b..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e174m3_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e174m3_7limbs/fecarry.v b/src/Specific/solinas32_2e174m3_7limbs/fecarry.v
deleted file mode 100644
index 7b0eb086d..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e174m3_7limbs.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_2e174m3_7limbs/fecarryDisplay.v b/src/Specific/solinas32_2e174m3_7limbs/fecarryDisplay.v
deleted file mode 100644
index 9bd1de649..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e174m3_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e174m3_7limbs/femul.c b/src/Specific/solinas32_2e174m3_7limbs/femul.c
deleted file mode 100644
index f5e709aff..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- { uint64_t x28 = (((uint64_t)x5 * x26) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + (((uint64_t)x15 * x19) + ((uint64_t)x14 * x17)))))));
- { uint64_t x29 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + (((uint64_t)x11 * x21) + (((uint64_t)x13 * x19) + ((uint64_t)x15 * x17)))))) + (0x3 * (0x2 * ((uint64_t)x14 * x26))));
- { uint64_t x30 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + (((uint64_t)x11 * x19) + ((uint64_t)x13 * x17))))) + (0x3 * ((0x2 * ((uint64_t)x15 * x26)) + (0x2 * ((uint64_t)x14 * x27)))));
- { uint64_t x31 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + (((uint64_t)x9 * x19) + ((uint64_t)x11 * x17)))) + (0x3 * ((0x2 * ((uint64_t)x13 * x26)) + ((0x2 * ((uint64_t)x15 * x27)) + (0x2 * ((uint64_t)x14 * x25))))));
- { uint64_t x32 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + ((uint64_t)x9 * x17))) + (0x3 * ((0x2 * ((uint64_t)x11 * x26)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + (0x2 * ((uint64_t)x14 * x23)))))));
- { uint64_t x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) + (0x3 * ((0x2 * ((uint64_t)x9 * x26)) + ((0x2 * ((uint64_t)x11 * x27)) + ((0x2 * ((uint64_t)x13 * x25)) + ((0x2 * ((uint64_t)x15 * x23)) + (0x2 * ((uint64_t)x14 * x21))))))));
- { uint64_t x34 = (((uint64_t)x5 * x17) + (0x3 * ((0x2 * ((uint64_t)x7 * x26)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + (0x2 * ((uint64_t)x14 * x19)))))))));
- { uint64_t x35 = (x34 >> 0x19);
- { uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- { uint64_t x37 = (x35 + x33);
- { uint64_t x38 = (x37 >> 0x19);
- { uint32_t x39 = ((uint32_t)x37 & 0x1ffffff);
- { uint64_t x40 = (x38 + x32);
- { uint64_t x41 = (x40 >> 0x19);
- { uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- { uint64_t x43 = (x41 + x31);
- { uint64_t x44 = (x43 >> 0x19);
- { uint32_t x45 = ((uint32_t)x43 & 0x1ffffff);
- { uint64_t x46 = (x44 + x30);
- { uint32_t x47 = (uint32_t) (x46 >> 0x19);
- { uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- { uint64_t x49 = (x47 + x29);
- { uint32_t x50 = (uint32_t) (x49 >> 0x19);
- { uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- { uint64_t x52 = (x50 + x28);
- { uint64_t x53 = (x52 >> 0x18);
- { uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- { uint64_t x55 = (x36 + (0x3 * x53));
- { uint32_t x56 = (uint32_t) (x55 >> 0x19);
- { uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- { uint32_t x58 = (x56 + x39);
- { uint32_t x59 = (x58 >> 0x19);
- { uint32_t x60 = (x58 & 0x1ffffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e174m3_7limbs/femul.v b/src/Specific/solinas32_2e174m3_7limbs/femul.v
deleted file mode 100644
index 1604714de..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e174m3_7limbs.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_2e174m3_7limbs/femulDisplay.log b/src/Specific/solinas32_2e174m3_7limbs/femulDisplay.log
deleted file mode 100644
index 4e8f9ea75..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint64_t x28 = (((uint64_t)x5 * x26) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + (((uint64_t)x15 * x19) + ((uint64_t)x14 * x17)))))));
- uint64_t x29 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + (((uint64_t)x11 * x21) + (((uint64_t)x13 * x19) + ((uint64_t)x15 * x17)))))) + (0x3 * (0x2 * ((uint64_t)x14 * x26))));
- uint64_t x30 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + (((uint64_t)x11 * x19) + ((uint64_t)x13 * x17))))) + (0x3 * ((0x2 * ((uint64_t)x15 * x26)) + (0x2 * ((uint64_t)x14 * x27)))));
- uint64_t x31 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + (((uint64_t)x9 * x19) + ((uint64_t)x11 * x17)))) + (0x3 * ((0x2 * ((uint64_t)x13 * x26)) + ((0x2 * ((uint64_t)x15 * x27)) + (0x2 * ((uint64_t)x14 * x25))))));
- uint64_t x32 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + ((uint64_t)x9 * x17))) + (0x3 * ((0x2 * ((uint64_t)x11 * x26)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + (0x2 * ((uint64_t)x14 * x23)))))));
- uint64_t x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) + (0x3 * ((0x2 * ((uint64_t)x9 * x26)) + ((0x2 * ((uint64_t)x11 * x27)) + ((0x2 * ((uint64_t)x13 * x25)) + ((0x2 * ((uint64_t)x15 * x23)) + (0x2 * ((uint64_t)x14 * x21))))))));
- uint64_t x34 = (((uint64_t)x5 * x17) + (0x3 * ((0x2 * ((uint64_t)x7 * x26)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + (0x2 * ((uint64_t)x14 * x19)))))))));
- uint64_t x35 = (x34 >> 0x19);
- uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- uint64_t x37 = (x35 + x33);
- uint64_t x38 = (x37 >> 0x19);
- uint32_t x39 = ((uint32_t)x37 & 0x1ffffff);
- uint64_t x40 = (x38 + x32);
- uint64_t x41 = (x40 >> 0x19);
- uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- uint64_t x43 = (x41 + x31);
- uint64_t x44 = (x43 >> 0x19);
- uint32_t x45 = ((uint32_t)x43 & 0x1ffffff);
- uint64_t x46 = (x44 + x30);
- uint32_t x47 = (uint32_t) (x46 >> 0x19);
- uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- uint64_t x49 = (x47 + x29);
- uint32_t x50 = (uint32_t) (x49 >> 0x19);
- uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- uint64_t x52 = (x50 + x28);
- uint64_t x53 = (x52 >> 0x18);
- uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- uint64_t x55 = (x36 + (0x3 * x53));
- uint32_t x56 = (uint32_t) (x55 >> 0x19);
- uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- uint32_t x58 = (x56 + x39);
- uint32_t x59 = (x58 >> 0x19);
- uint32_t x60 = (x58 & 0x1ffffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e174m3_7limbs/femulDisplay.v b/src/Specific/solinas32_2e174m3_7limbs/femulDisplay.v
deleted file mode 100644
index 3b74cd2d1..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e174m3_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e174m3_7limbs/fesquare.c b/src/Specific/solinas32_2e174m3_7limbs/fesquare.c
deleted file mode 100644
index e3a6632a8..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x13 = (((uint64_t)x2 * x11) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x11 * x2)))))));
- { uint64_t x14 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x3 * (0x2 * ((uint64_t)x11 * x11))));
- { uint64_t x15 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x3 * ((0x2 * ((uint64_t)x12 * x11)) + (0x2 * ((uint64_t)x11 * x12)))));
- { uint64_t x16 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x3 * ((0x2 * ((uint64_t)x10 * x11)) + ((0x2 * ((uint64_t)x12 * x12)) + (0x2 * ((uint64_t)x11 * x10))))));
- { uint64_t x17 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x3 * ((0x2 * ((uint64_t)x8 * x11)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (0x2 * ((uint64_t)x11 * x8)))))));
- { uint64_t x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * ((0x2 * ((uint64_t)x6 * x11)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + (0x2 * ((uint64_t)x11 * x6))))))));
- { uint64_t x19 = (((uint64_t)x2 * x2) + (0x3 * ((0x2 * ((uint64_t)x4 * x11)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (0x2 * ((uint64_t)x11 * x4)))))))));
- { uint64_t x20 = (x19 >> 0x19);
- { uint32_t x21 = ((uint32_t)x19 & 0x1ffffff);
- { uint64_t x22 = (x20 + x18);
- { uint64_t x23 = (x22 >> 0x19);
- { uint32_t x24 = ((uint32_t)x22 & 0x1ffffff);
- { uint64_t x25 = (x23 + x17);
- { uint64_t x26 = (x25 >> 0x19);
- { uint32_t x27 = ((uint32_t)x25 & 0x1ffffff);
- { uint64_t x28 = (x26 + x16);
- { uint64_t x29 = (x28 >> 0x19);
- { uint32_t x30 = ((uint32_t)x28 & 0x1ffffff);
- { uint64_t x31 = (x29 + x15);
- { uint32_t x32 = (uint32_t) (x31 >> 0x19);
- { uint32_t x33 = ((uint32_t)x31 & 0x1ffffff);
- { uint64_t x34 = (x32 + x14);
- { uint32_t x35 = (uint32_t) (x34 >> 0x19);
- { uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- { uint64_t x37 = (x35 + x13);
- { uint64_t x38 = (x37 >> 0x18);
- { uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- { uint64_t x40 = (x21 + (0x3 * x38));
- { uint32_t x41 = (uint32_t) (x40 >> 0x19);
- { uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- { uint32_t x43 = (x41 + x24);
- { uint32_t x44 = (x43 >> 0x19);
- { uint32_t x45 = (x43 & 0x1ffffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e174m3_7limbs/fesquare.v b/src/Specific/solinas32_2e174m3_7limbs/fesquare.v
deleted file mode 100644
index 70d24937e..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e174m3_7limbs.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_2e174m3_7limbs/fesquareDisplay.log b/src/Specific/solinas32_2e174m3_7limbs/fesquareDisplay.log
deleted file mode 100644
index f834ce2df..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x13 = (((uint64_t)x2 * x11) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x11 * x2)))))));
- uint64_t x14 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x3 * (0x2 * ((uint64_t)x11 * x11))));
- uint64_t x15 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x3 * ((0x2 * ((uint64_t)x12 * x11)) + (0x2 * ((uint64_t)x11 * x12)))));
- uint64_t x16 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x3 * ((0x2 * ((uint64_t)x10 * x11)) + ((0x2 * ((uint64_t)x12 * x12)) + (0x2 * ((uint64_t)x11 * x10))))));
- uint64_t x17 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x3 * ((0x2 * ((uint64_t)x8 * x11)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (0x2 * ((uint64_t)x11 * x8)))))));
- uint64_t x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * ((0x2 * ((uint64_t)x6 * x11)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + (0x2 * ((uint64_t)x11 * x6))))))));
- uint64_t x19 = (((uint64_t)x2 * x2) + (0x3 * ((0x2 * ((uint64_t)x4 * x11)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (0x2 * ((uint64_t)x11 * x4)))))))));
- uint64_t x20 = (x19 >> 0x19);
- uint32_t x21 = ((uint32_t)x19 & 0x1ffffff);
- uint64_t x22 = (x20 + x18);
- uint64_t x23 = (x22 >> 0x19);
- uint32_t x24 = ((uint32_t)x22 & 0x1ffffff);
- uint64_t x25 = (x23 + x17);
- uint64_t x26 = (x25 >> 0x19);
- uint32_t x27 = ((uint32_t)x25 & 0x1ffffff);
- uint64_t x28 = (x26 + x16);
- uint64_t x29 = (x28 >> 0x19);
- uint32_t x30 = ((uint32_t)x28 & 0x1ffffff);
- uint64_t x31 = (x29 + x15);
- uint32_t x32 = (uint32_t) (x31 >> 0x19);
- uint32_t x33 = ((uint32_t)x31 & 0x1ffffff);
- uint64_t x34 = (x32 + x14);
- uint32_t x35 = (uint32_t) (x34 >> 0x19);
- uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- uint64_t x37 = (x35 + x13);
- uint64_t x38 = (x37 >> 0x18);
- uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- uint64_t x40 = (x21 + (0x3 * x38));
- uint32_t x41 = (uint32_t) (x40 >> 0x19);
- uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- uint32_t x43 = (x41 + x24);
- uint32_t x44 = (x43 >> 0x19);
- uint32_t x45 = (x43 & 0x1ffffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e174m3_7limbs/fesquareDisplay.v b/src/Specific/solinas32_2e174m3_7limbs/fesquareDisplay.v
deleted file mode 100644
index 0570f81fc..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e174m3_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e174m3_7limbs/fesub.c b/src/Specific/solinas32_2e174m3_7limbs/fesub.c
deleted file mode 100644
index 1c7d5e51b..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = ((0x3fffffa + x5) - x17);
- out[1] = ((0x3fffffe + x7) - x19);
- out[2] = ((0x3fffffe + x9) - x21);
- out[3] = ((0x3fffffe + x11) - x23);
- out[4] = ((0x3fffffe + x13) - x25);
- out[5] = ((0x3fffffe + x15) - x27);
- out[6] = ((0x1fffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e174m3_7limbs/fesub.v b/src/Specific/solinas32_2e174m3_7limbs/fesub.v
deleted file mode 100644
index fc08b511c..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e174m3_7limbs.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_2e174m3_7limbs/fesubDisplay.log b/src/Specific/solinas32_2e174m3_7limbs/fesubDisplay.log
deleted file mode 100644
index f26e548e4..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0x1fffffe + x14) - x26), ((0x3fffffe + x15) - x27), ((0x3fffffe + x13) - x25), ((0x3fffffe + x11) - x23), ((0x3fffffe + x9) - x21), ((0x3fffffe + x7) - x19), ((0x3fffffa + x5) - x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e174m3_7limbs/fesubDisplay.v b/src/Specific/solinas32_2e174m3_7limbs/fesubDisplay.v
deleted file mode 100644
index e838bbc9c..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e174m3_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e174m3_7limbs/freeze.c b/src/Specific/solinas32_2e174m3_7limbs/freeze.c
deleted file mode 100644
index 374fe1cbe..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffd);
- { uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0x1ffffff);
- { uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0x1ffffff);
- { uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0x1ffffff);
- { uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0x1ffffff);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0x1ffffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0xffffff);
- { uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- { uint32_t x35 = (x34 & 0x1fffffd);
- { uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint32_t x39 = (x34 & 0x1ffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint32_t x43 = (x34 & 0x1ffffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint32_t x47 = (x34 & 0x1ffffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint32_t x51 = (x34 & 0x1ffffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint32_t x55 = (x34 & 0x1ffffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint32_t x59 = (x34 & 0xffffff);
- { uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e174m3_7limbs/freeze.v b/src/Specific/solinas32_2e174m3_7limbs/freeze.v
deleted file mode 100644
index 2f64271f1..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e174m3_7limbs.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_2e174m3_7limbs/freezeDisplay.log b/src/Specific/solinas32_2e174m3_7limbs/freezeDisplay.log
deleted file mode 100644
index aa6dba0f3..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffd);
- uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0x1ffffff);
- uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0x1ffffff);
- uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0x1ffffff);
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0x1ffffff);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0x1ffffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0xffffff);
- uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- uint32_t x35 = (x34 & 0x1fffffd);
- uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint32_t x39 = (x34 & 0x1ffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint32_t x43 = (x34 & 0x1ffffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint32_t x47 = (x34 & 0x1ffffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint32_t x51 = (x34 & 0x1ffffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint32_t x55 = (x34 & 0x1ffffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint32_t x59 = (x34 & 0xffffff);
- uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e174m3_7limbs/freezeDisplay.v b/src/Specific/solinas32_2e174m3_7limbs/freezeDisplay.v
deleted file mode 100644
index 23c17c3a4..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e174m3_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e174m3_7limbs/py_interpreter.sh b/src/Specific/solinas32_2e174m3_7limbs/py_interpreter.sh
deleted file mode 100755
index 0e2055ed4..000000000
--- a/src/Specific/solinas32_2e174m3_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**174 - 3' -Dmodulus_bytes='24 + 6/7' -Da24='121665'
diff --git a/src/Specific/solinas32_2e174m3_8limbs/CurveParameters.v b/src/Specific/solinas32_2e174m3_8limbs/CurveParameters.v
deleted file mode 100644
index ba2940378..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^174 - 3
-Base: 21.75
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 21 + 3/4;
- bitwidth := 32;
- s := 2^174;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 8); [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_2e174m3_8limbs/Synthesis.v b/src/Specific/solinas32_2e174m3_8limbs/Synthesis.v
deleted file mode 100644
index e488096a8..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e174m3_8limbs.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_2e174m3_8limbs/compiler.sh b/src/Specific/solinas32_2e174m3_8limbs/compiler.sh
deleted file mode 100755
index 90b65feda..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,22,21,22,22,22,21}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<174) - 3' "$@"
diff --git a/src/Specific/solinas32_2e174m3_8limbs/compilerxx.sh b/src/Specific/solinas32_2e174m3_8limbs/compilerxx.sh
deleted file mode 100755
index 79d5eba9b..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,22,21,22,22,22,21}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<174) - 3' "$@"
diff --git a/src/Specific/solinas32_2e174m3_8limbs/feadd.c b/src/Specific/solinas32_2e174m3_8limbs/feadd.c
deleted file mode 100644
index cc3671f75..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e174m3_8limbs/feadd.v b/src/Specific/solinas32_2e174m3_8limbs/feadd.v
deleted file mode 100644
index 5ba5f5524..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e174m3_8limbs.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_2e174m3_8limbs/feaddDisplay.log b/src/Specific/solinas32_2e174m3_8limbs/feaddDisplay.log
deleted file mode 100644
index f25c10903..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e174m3_8limbs/feaddDisplay.v b/src/Specific/solinas32_2e174m3_8limbs/feaddDisplay.v
deleted file mode 100644
index b741518f3..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e174m3_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e174m3_8limbs/fecarry.v b/src/Specific/solinas32_2e174m3_8limbs/fecarry.v
deleted file mode 100644
index 06a6322cd..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e174m3_8limbs.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_2e174m3_8limbs/fecarryDisplay.v b/src/Specific/solinas32_2e174m3_8limbs/fecarryDisplay.v
deleted file mode 100644
index 4c4999d6a..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e174m3_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e174m3_8limbs/femul.c b/src/Specific/solinas32_2e174m3_8limbs/femul.c
deleted file mode 100644
index 21705fce9..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint64_t x32 = (((uint64_t)x5 * x30) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + (((uint64_t)x17 * x21) + ((uint64_t)x16 * x19))))))));
- { uint64_t x33 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + ((0x2 * ((uint64_t)x11 * x25)) + (((uint64_t)x13 * x23) + (((uint64_t)x15 * x21) + ((uint64_t)x17 * x19))))))) + (0x3 * (0x2 * ((uint64_t)x16 * x30))));
- { uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + ((0x2 * ((uint64_t)x11 * x23)) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0x3 * ((0x2 * ((uint64_t)x17 * x30)) + (0x2 * ((uint64_t)x16 * x31)))));
- { uint64_t x35 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + ((uint64_t)x13 * x19))))) + (0x3 * ((0x2 * ((uint64_t)x15 * x30)) + ((0x2 * ((uint64_t)x17 * x31)) + (0x2 * ((uint64_t)x16 * x29))))));
- { uint64_t x36 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + ((uint64_t)x11 * x19)))) + (0x3 * (((uint64_t)x13 * x30) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x16 * x27))))));
- { uint64_t x37 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((uint64_t)x9 * x19))) + (0x3 * ((0x2 * ((uint64_t)x11 * x30)) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + (((uint64_t)x17 * x27) + (0x2 * ((uint64_t)x16 * x25))))))));
- { uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0x3 * ((0x2 * ((uint64_t)x9 * x30)) + ((0x2 * ((uint64_t)x11 * x31)) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + ((0x2 * ((uint64_t)x17 * x25)) + (0x2 * ((uint64_t)x16 * x23)))))))));
- { uint64_t x39 = (((uint64_t)x5 * x19) + (0x3 * ((0x2 * ((uint64_t)x7 * x30)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + (0x2 * ((uint64_t)x16 * x21))))))))));
- { uint32_t x40 = (uint32_t) (x39 >> 0x16);
- { uint32_t x41 = ((uint32_t)x39 & 0x3fffff);
- { uint64_t x42 = (x40 + x38);
- { uint32_t x43 = (uint32_t) (x42 >> 0x16);
- { uint32_t x44 = ((uint32_t)x42 & 0x3fffff);
- { uint64_t x45 = (x43 + x37);
- { uint32_t x46 = (uint32_t) (x45 >> 0x16);
- { uint32_t x47 = ((uint32_t)x45 & 0x3fffff);
- { uint64_t x48 = (x46 + x36);
- { uint32_t x49 = (uint32_t) (x48 >> 0x15);
- { uint32_t x50 = ((uint32_t)x48 & 0x1fffff);
- { uint64_t x51 = (x49 + x35);
- { uint32_t x52 = (uint32_t) (x51 >> 0x16);
- { uint32_t x53 = ((uint32_t)x51 & 0x3fffff);
- { uint64_t x54 = (x52 + x34);
- { uint32_t x55 = (uint32_t) (x54 >> 0x16);
- { uint32_t x56 = ((uint32_t)x54 & 0x3fffff);
- { uint64_t x57 = (x55 + x33);
- { uint32_t x58 = (uint32_t) (x57 >> 0x16);
- { uint32_t x59 = ((uint32_t)x57 & 0x3fffff);
- { uint64_t x60 = (x58 + x32);
- { uint32_t x61 = (uint32_t) (x60 >> 0x15);
- { uint32_t x62 = ((uint32_t)x60 & 0x1fffff);
- { uint32_t x63 = (x41 + (0x3 * x61));
- { uint32_t x64 = (x63 >> 0x16);
- { uint32_t x65 = (x63 & 0x3fffff);
- { uint32_t x66 = (x64 + x44);
- { uint32_t x67 = (x66 >> 0x16);
- { uint32_t x68 = (x66 & 0x3fffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e174m3_8limbs/femul.v b/src/Specific/solinas32_2e174m3_8limbs/femul.v
deleted file mode 100644
index 32cd5ab5e..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e174m3_8limbs.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_2e174m3_8limbs/femulDisplay.log b/src/Specific/solinas32_2e174m3_8limbs/femulDisplay.log
deleted file mode 100644
index d88723ec8..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x32 = (((uint64_t)x5 * x30) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + (((uint64_t)x17 * x21) + ((uint64_t)x16 * x19))))))));
- uint64_t x33 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + ((0x2 * ((uint64_t)x11 * x25)) + (((uint64_t)x13 * x23) + (((uint64_t)x15 * x21) + ((uint64_t)x17 * x19))))))) + (0x3 * (0x2 * ((uint64_t)x16 * x30))));
- uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + ((0x2 * ((uint64_t)x11 * x23)) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0x3 * ((0x2 * ((uint64_t)x17 * x30)) + (0x2 * ((uint64_t)x16 * x31)))));
- uint64_t x35 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + ((uint64_t)x13 * x19))))) + (0x3 * ((0x2 * ((uint64_t)x15 * x30)) + ((0x2 * ((uint64_t)x17 * x31)) + (0x2 * ((uint64_t)x16 * x29))))));
- uint64_t x36 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + ((uint64_t)x11 * x19)))) + (0x3 * (((uint64_t)x13 * x30) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x16 * x27))))));
- uint64_t x37 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((uint64_t)x9 * x19))) + (0x3 * ((0x2 * ((uint64_t)x11 * x30)) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + (((uint64_t)x17 * x27) + (0x2 * ((uint64_t)x16 * x25))))))));
- uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0x3 * ((0x2 * ((uint64_t)x9 * x30)) + ((0x2 * ((uint64_t)x11 * x31)) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + ((0x2 * ((uint64_t)x17 * x25)) + (0x2 * ((uint64_t)x16 * x23)))))))));
- uint64_t x39 = (((uint64_t)x5 * x19) + (0x3 * ((0x2 * ((uint64_t)x7 * x30)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + (0x2 * ((uint64_t)x16 * x21))))))))));
- uint32_t x40 = (uint32_t) (x39 >> 0x16);
- uint32_t x41 = ((uint32_t)x39 & 0x3fffff);
- uint64_t x42 = (x40 + x38);
- uint32_t x43 = (uint32_t) (x42 >> 0x16);
- uint32_t x44 = ((uint32_t)x42 & 0x3fffff);
- uint64_t x45 = (x43 + x37);
- uint32_t x46 = (uint32_t) (x45 >> 0x16);
- uint32_t x47 = ((uint32_t)x45 & 0x3fffff);
- uint64_t x48 = (x46 + x36);
- uint32_t x49 = (uint32_t) (x48 >> 0x15);
- uint32_t x50 = ((uint32_t)x48 & 0x1fffff);
- uint64_t x51 = (x49 + x35);
- uint32_t x52 = (uint32_t) (x51 >> 0x16);
- uint32_t x53 = ((uint32_t)x51 & 0x3fffff);
- uint64_t x54 = (x52 + x34);
- uint32_t x55 = (uint32_t) (x54 >> 0x16);
- uint32_t x56 = ((uint32_t)x54 & 0x3fffff);
- uint64_t x57 = (x55 + x33);
- uint32_t x58 = (uint32_t) (x57 >> 0x16);
- uint32_t x59 = ((uint32_t)x57 & 0x3fffff);
- uint64_t x60 = (x58 + x32);
- uint32_t x61 = (uint32_t) (x60 >> 0x15);
- uint32_t x62 = ((uint32_t)x60 & 0x1fffff);
- uint32_t x63 = (x41 + (0x3 * x61));
- uint32_t x64 = (x63 >> 0x16);
- uint32_t x65 = (x63 & 0x3fffff);
- uint32_t x66 = (x64 + x44);
- uint32_t x67 = (x66 >> 0x16);
- uint32_t x68 = (x66 & 0x3fffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e174m3_8limbs/femulDisplay.v b/src/Specific/solinas32_2e174m3_8limbs/femulDisplay.v
deleted file mode 100644
index c3ed3492a..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e174m3_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e174m3_8limbs/fesquare.c b/src/Specific/solinas32_2e174m3_8limbs/fesquare.c
deleted file mode 100644
index 5d58c6956..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (((uint64_t)x2 * x13) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x13 * x2))))))));
- { uint64_t x16 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x3 * (0x2 * ((uint64_t)x13 * x13))));
- { uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x3 * ((0x2 * ((uint64_t)x14 * x13)) + (0x2 * ((uint64_t)x13 * x14)))));
- { uint64_t x18 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x3 * ((0x2 * ((uint64_t)x12 * x13)) + ((0x2 * ((uint64_t)x14 * x14)) + (0x2 * ((uint64_t)x13 * x12))))));
- { uint64_t x19 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x3 * (((uint64_t)x10 * x13) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x13 * x10))))));
- { uint64_t x20 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x3 * ((0x2 * ((uint64_t)x8 * x13)) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (0x2 * ((uint64_t)x13 * x8))))))));
- { uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * ((0x2 * ((uint64_t)x6 * x13)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + (0x2 * ((uint64_t)x13 * x6)))))))));
- { uint64_t x22 = (((uint64_t)x2 * x2) + (0x3 * ((0x2 * ((uint64_t)x4 * x13)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (0x2 * ((uint64_t)x13 * x4))))))))));
- { uint32_t x23 = (uint32_t) (x22 >> 0x16);
- { uint32_t x24 = ((uint32_t)x22 & 0x3fffff);
- { uint64_t x25 = (x23 + x21);
- { uint32_t x26 = (uint32_t) (x25 >> 0x16);
- { uint32_t x27 = ((uint32_t)x25 & 0x3fffff);
- { uint64_t x28 = (x26 + x20);
- { uint32_t x29 = (uint32_t) (x28 >> 0x16);
- { uint32_t x30 = ((uint32_t)x28 & 0x3fffff);
- { uint64_t x31 = (x29 + x19);
- { uint32_t x32 = (uint32_t) (x31 >> 0x15);
- { uint32_t x33 = ((uint32_t)x31 & 0x1fffff);
- { uint64_t x34 = (x32 + x18);
- { uint32_t x35 = (uint32_t) (x34 >> 0x16);
- { uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- { uint64_t x37 = (x35 + x17);
- { uint32_t x38 = (uint32_t) (x37 >> 0x16);
- { uint32_t x39 = ((uint32_t)x37 & 0x3fffff);
- { uint64_t x40 = (x38 + x16);
- { uint32_t x41 = (uint32_t) (x40 >> 0x16);
- { uint32_t x42 = ((uint32_t)x40 & 0x3fffff);
- { uint64_t x43 = (x41 + x15);
- { uint32_t x44 = (uint32_t) (x43 >> 0x15);
- { uint32_t x45 = ((uint32_t)x43 & 0x1fffff);
- { uint32_t x46 = (x24 + (0x3 * x44));
- { uint32_t x47 = (x46 >> 0x16);
- { uint32_t x48 = (x46 & 0x3fffff);
- { uint32_t x49 = (x47 + x27);
- { uint32_t x50 = (x49 >> 0x16);
- { uint32_t x51 = (x49 & 0x3fffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e174m3_8limbs/fesquare.v b/src/Specific/solinas32_2e174m3_8limbs/fesquare.v
deleted file mode 100644
index e8927b7d7..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e174m3_8limbs.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_2e174m3_8limbs/fesquareDisplay.log b/src/Specific/solinas32_2e174m3_8limbs/fesquareDisplay.log
deleted file mode 100644
index 867d7fb89..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (((uint64_t)x2 * x13) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x13 * x2))))))));
- uint64_t x16 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x3 * (0x2 * ((uint64_t)x13 * x13))));
- uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x3 * ((0x2 * ((uint64_t)x14 * x13)) + (0x2 * ((uint64_t)x13 * x14)))));
- uint64_t x18 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x3 * ((0x2 * ((uint64_t)x12 * x13)) + ((0x2 * ((uint64_t)x14 * x14)) + (0x2 * ((uint64_t)x13 * x12))))));
- uint64_t x19 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x3 * (((uint64_t)x10 * x13) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x13 * x10))))));
- uint64_t x20 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x3 * ((0x2 * ((uint64_t)x8 * x13)) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (0x2 * ((uint64_t)x13 * x8))))))));
- uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * ((0x2 * ((uint64_t)x6 * x13)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + (0x2 * ((uint64_t)x13 * x6)))))))));
- uint64_t x22 = (((uint64_t)x2 * x2) + (0x3 * ((0x2 * ((uint64_t)x4 * x13)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (0x2 * ((uint64_t)x13 * x4))))))))));
- uint32_t x23 = (uint32_t) (x22 >> 0x16);
- uint32_t x24 = ((uint32_t)x22 & 0x3fffff);
- uint64_t x25 = (x23 + x21);
- uint32_t x26 = (uint32_t) (x25 >> 0x16);
- uint32_t x27 = ((uint32_t)x25 & 0x3fffff);
- uint64_t x28 = (x26 + x20);
- uint32_t x29 = (uint32_t) (x28 >> 0x16);
- uint32_t x30 = ((uint32_t)x28 & 0x3fffff);
- uint64_t x31 = (x29 + x19);
- uint32_t x32 = (uint32_t) (x31 >> 0x15);
- uint32_t x33 = ((uint32_t)x31 & 0x1fffff);
- uint64_t x34 = (x32 + x18);
- uint32_t x35 = (uint32_t) (x34 >> 0x16);
- uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- uint64_t x37 = (x35 + x17);
- uint32_t x38 = (uint32_t) (x37 >> 0x16);
- uint32_t x39 = ((uint32_t)x37 & 0x3fffff);
- uint64_t x40 = (x38 + x16);
- uint32_t x41 = (uint32_t) (x40 >> 0x16);
- uint32_t x42 = ((uint32_t)x40 & 0x3fffff);
- uint64_t x43 = (x41 + x15);
- uint32_t x44 = (uint32_t) (x43 >> 0x15);
- uint32_t x45 = ((uint32_t)x43 & 0x1fffff);
- uint32_t x46 = (x24 + (0x3 * x44));
- uint32_t x47 = (x46 >> 0x16);
- uint32_t x48 = (x46 & 0x3fffff);
- uint32_t x49 = (x47 + x27);
- uint32_t x50 = (x49 >> 0x16);
- uint32_t x51 = (x49 & 0x3fffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e174m3_8limbs/fesquareDisplay.v b/src/Specific/solinas32_2e174m3_8limbs/fesquareDisplay.v
deleted file mode 100644
index 8f317bd49..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e174m3_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e174m3_8limbs/fesub.c b/src/Specific/solinas32_2e174m3_8limbs/fesub.c
deleted file mode 100644
index 160676135..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = ((0x7ffffa + x5) - x19);
- out[1] = ((0x7ffffe + x7) - x21);
- out[2] = ((0x7ffffe + x9) - x23);
- out[3] = ((0x3ffffe + x11) - x25);
- out[4] = ((0x7ffffe + x13) - x27);
- out[5] = ((0x7ffffe + x15) - x29);
- out[6] = ((0x7ffffe + x17) - x31);
- out[7] = ((0x3ffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e174m3_8limbs/fesub.v b/src/Specific/solinas32_2e174m3_8limbs/fesub.v
deleted file mode 100644
index 2a963b774..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e174m3_8limbs.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_2e174m3_8limbs/fesubDisplay.log b/src/Specific/solinas32_2e174m3_8limbs/fesubDisplay.log
deleted file mode 100644
index 04f45b651..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0x3ffffe + x16) - x30), ((0x7ffffe + x17) - x31), ((0x7ffffe + x15) - x29), ((0x7ffffe + x13) - x27), ((0x3ffffe + x11) - x25), ((0x7ffffe + x9) - x23), ((0x7ffffe + x7) - x21), ((0x7ffffa + x5) - x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e174m3_8limbs/fesubDisplay.v b/src/Specific/solinas32_2e174m3_8limbs/fesubDisplay.v
deleted file mode 100644
index 1ad149e4e..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e174m3_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e174m3_8limbs/freeze.c b/src/Specific/solinas32_2e174m3_8limbs/freeze.c
deleted file mode 100644
index eeaa231d4..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffd);
- { uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0x3fffff);
- { uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0x3fffff);
- { uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0x1fffff);
- { uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0x3fffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0x3fffff);
- { uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0x3fffff);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0x1fffff);
- { uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- { uint32_t x40 = (x39 & 0x3ffffd);
- { uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint32_t x44 = (x39 & 0x3fffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint32_t x48 = (x39 & 0x3fffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint32_t x52 = (x39 & 0x1fffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint32_t x56 = (x39 & 0x3fffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint32_t x60 = (x39 & 0x3fffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint32_t x64 = (x39 & 0x3fffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint32_t x68 = (x39 & 0x1fffff);
- { uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e174m3_8limbs/freeze.v b/src/Specific/solinas32_2e174m3_8limbs/freeze.v
deleted file mode 100644
index bf9f6fe83..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e174m3_8limbs.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_2e174m3_8limbs/freezeDisplay.log b/src/Specific/solinas32_2e174m3_8limbs/freezeDisplay.log
deleted file mode 100644
index fe6dcee61..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffd);
- uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0x3fffff);
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0x3fffff);
- uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0x1fffff);
- uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0x3fffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0x3fffff);
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0x3fffff);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0x1fffff);
- uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- uint32_t x40 = (x39 & 0x3ffffd);
- uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint32_t x44 = (x39 & 0x3fffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint32_t x48 = (x39 & 0x3fffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint32_t x52 = (x39 & 0x1fffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint32_t x56 = (x39 & 0x3fffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint32_t x60 = (x39 & 0x3fffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint32_t x64 = (x39 & 0x3fffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint32_t x68 = (x39 & 0x1fffff);
- uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e174m3_8limbs/freezeDisplay.v b/src/Specific/solinas32_2e174m3_8limbs/freezeDisplay.v
deleted file mode 100644
index 74c85acf1..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e174m3_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e174m3_8limbs/py_interpreter.sh b/src/Specific/solinas32_2e174m3_8limbs/py_interpreter.sh
deleted file mode 100755
index 8fdc6b46c..000000000
--- a/src/Specific/solinas32_2e174m3_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**174 - 3' -Dmodulus_bytes='21.75' -Da24='121665'
diff --git a/src/Specific/solinas32_2e189m25_7limbs/CurveParameters.v b/src/Specific/solinas32_2e189m25_7limbs/CurveParameters.v
deleted file mode 100644
index f846046f4..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^189 - 25
-Base: 27
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 27;
- bitwidth := 32;
- s := 2^189;
- c := [(1, 25)];
- carry_chains := Some [seq 0 (pred 7); [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_2e189m25_7limbs/Synthesis.v b/src/Specific/solinas32_2e189m25_7limbs/Synthesis.v
deleted file mode 100644
index ea0e13506..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e189m25_7limbs.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_2e189m25_7limbs/compiler.sh b/src/Specific/solinas32_2e189m25_7limbs/compiler.sh
deleted file mode 100755
index 094bc139c..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<189) - 25' "$@"
diff --git a/src/Specific/solinas32_2e189m25_7limbs/compilerxx.sh b/src/Specific/solinas32_2e189m25_7limbs/compilerxx.sh
deleted file mode 100755
index d5b1ed13f..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<189) - 25' "$@"
diff --git a/src/Specific/solinas32_2e189m25_7limbs/feadd.c b/src/Specific/solinas32_2e189m25_7limbs/feadd.c
deleted file mode 100644
index 5288d0bef..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e189m25_7limbs/feadd.v b/src/Specific/solinas32_2e189m25_7limbs/feadd.v
deleted file mode 100644
index 5331c84ae..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e189m25_7limbs.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_2e189m25_7limbs/feaddDisplay.log b/src/Specific/solinas32_2e189m25_7limbs/feaddDisplay.log
deleted file mode 100644
index d22997dcb..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e189m25_7limbs/feaddDisplay.v b/src/Specific/solinas32_2e189m25_7limbs/feaddDisplay.v
deleted file mode 100644
index 6e3f89708..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e189m25_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e189m25_7limbs/fecarry.v b/src/Specific/solinas32_2e189m25_7limbs/fecarry.v
deleted file mode 100644
index 04b9662fa..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e189m25_7limbs.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_2e189m25_7limbs/fecarryDisplay.v b/src/Specific/solinas32_2e189m25_7limbs/fecarryDisplay.v
deleted file mode 100644
index 4c1da1e8f..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e189m25_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e189m25_7limbs/femul.c b/src/Specific/solinas32_2e189m25_7limbs/femul.c
deleted file mode 100644
index 9da02e886..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- { uint64_t x28 = (((uint64_t)x5 * x26) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + (((uint64_t)x15 * x19) + ((uint64_t)x14 * x17)))))));
- { uint64_t x29 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + (((uint64_t)x11 * x21) + (((uint64_t)x13 * x19) + ((uint64_t)x15 * x17)))))) + (0x19 * ((uint64_t)x14 * x26)));
- { uint64_t x30 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + (((uint64_t)x11 * x19) + ((uint64_t)x13 * x17))))) + (0x19 * (((uint64_t)x15 * x26) + ((uint64_t)x14 * x27))));
- { uint64_t x31 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + (((uint64_t)x9 * x19) + ((uint64_t)x11 * x17)))) + (0x19 * (((uint64_t)x13 * x26) + (((uint64_t)x15 * x27) + ((uint64_t)x14 * x25)))));
- { ℤ x32 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + ((uint64_t)x9 * x17))) +ℤ (0x19 *ℤ (((uint64_t)x11 * x26) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + ((uint64_t)x14 * x23))))));
- { ℤ x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) +ℤ (0x19 *ℤ (((uint64_t)x9 * x26) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + ((uint64_t)x14 * x21)))))));
- { ℤ x34 = (((uint64_t)x5 * x17) +ℤ (0x19 *ℤ (((uint64_t)x7 * x26) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + (((uint64_t)x13 * x23) + (((uint64_t)x15 * x21) + ((uint64_t)x14 * x19))))))));
- { uint64_t x35 = (x34 >> 0x1b);
- { uint32_t x36 = (x34 & 0x7ffffff);
- { ℤ x37 = (x35 +ℤ x33);
- { uint64_t x38 = (x37 >> 0x1b);
- { uint32_t x39 = (x37 & 0x7ffffff);
- { ℤ x40 = (x38 +ℤ x32);
- { uint64_t x41 = (x40 >> 0x1b);
- { uint32_t x42 = (x40 & 0x7ffffff);
- { uint64_t x43 = (x41 + x31);
- { uint64_t x44 = (x43 >> 0x1b);
- { uint32_t x45 = ((uint32_t)x43 & 0x7ffffff);
- { uint64_t x46 = (x44 + x30);
- { uint64_t x47 = (x46 >> 0x1b);
- { uint32_t x48 = ((uint32_t)x46 & 0x7ffffff);
- { uint64_t x49 = (x47 + x29);
- { uint64_t x50 = (x49 >> 0x1b);
- { uint32_t x51 = ((uint32_t)x49 & 0x7ffffff);
- { uint64_t x52 = (x50 + x28);
- { uint64_t x53 = (x52 >> 0x1b);
- { uint32_t x54 = ((uint32_t)x52 & 0x7ffffff);
- { uint64_t x55 = (x36 + (0x19 * x53));
- { uint32_t x56 = (uint32_t) (x55 >> 0x1b);
- { uint32_t x57 = ((uint32_t)x55 & 0x7ffffff);
- { uint32_t x58 = (x56 + x39);
- { uint32_t x59 = (x58 >> 0x1b);
- { uint32_t x60 = (x58 & 0x7ffffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e189m25_7limbs/femul.v b/src/Specific/solinas32_2e189m25_7limbs/femul.v
deleted file mode 100644
index 613e6e001..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e189m25_7limbs.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_2e189m25_7limbs/femulDisplay.log b/src/Specific/solinas32_2e189m25_7limbs/femulDisplay.log
deleted file mode 100644
index 6f1d5362e..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint64_t x28 = (((uint64_t)x5 * x26) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + (((uint64_t)x15 * x19) + ((uint64_t)x14 * x17)))))));
- uint64_t x29 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + (((uint64_t)x11 * x21) + (((uint64_t)x13 * x19) + ((uint64_t)x15 * x17)))))) + (0x19 * ((uint64_t)x14 * x26)));
- uint64_t x30 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + (((uint64_t)x11 * x19) + ((uint64_t)x13 * x17))))) + (0x19 * (((uint64_t)x15 * x26) + ((uint64_t)x14 * x27))));
- uint64_t x31 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + (((uint64_t)x9 * x19) + ((uint64_t)x11 * x17)))) + (0x19 * (((uint64_t)x13 * x26) + (((uint64_t)x15 * x27) + ((uint64_t)x14 * x25)))));
- ℤ x32 = ((((uint64_t)x5 * x21) + (((uint64_t)x7 * x19) + ((uint64_t)x9 * x17))) +ℤ (0x19 *ℤ (((uint64_t)x11 * x26) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + ((uint64_t)x14 * x23))))));
- ℤ x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) +ℤ (0x19 *ℤ (((uint64_t)x9 * x26) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + ((uint64_t)x14 * x21)))))));
- ℤ x34 = (((uint64_t)x5 * x17) +ℤ (0x19 *ℤ (((uint64_t)x7 * x26) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + (((uint64_t)x13 * x23) + (((uint64_t)x15 * x21) + ((uint64_t)x14 * x19))))))));
- uint64_t x35 = (x34 >> 0x1b);
- uint32_t x36 = (x34 & 0x7ffffff);
- ℤ x37 = (x35 +ℤ x33);
- uint64_t x38 = (x37 >> 0x1b);
- uint32_t x39 = (x37 & 0x7ffffff);
- ℤ x40 = (x38 +ℤ x32);
- uint64_t x41 = (x40 >> 0x1b);
- uint32_t x42 = (x40 & 0x7ffffff);
- uint64_t x43 = (x41 + x31);
- uint64_t x44 = (x43 >> 0x1b);
- uint32_t x45 = ((uint32_t)x43 & 0x7ffffff);
- uint64_t x46 = (x44 + x30);
- uint64_t x47 = (x46 >> 0x1b);
- uint32_t x48 = ((uint32_t)x46 & 0x7ffffff);
- uint64_t x49 = (x47 + x29);
- uint64_t x50 = (x49 >> 0x1b);
- uint32_t x51 = ((uint32_t)x49 & 0x7ffffff);
- uint64_t x52 = (x50 + x28);
- uint64_t x53 = (x52 >> 0x1b);
- uint32_t x54 = ((uint32_t)x52 & 0x7ffffff);
- uint64_t x55 = (x36 + (0x19 * x53));
- uint32_t x56 = (uint32_t) (x55 >> 0x1b);
- uint32_t x57 = ((uint32_t)x55 & 0x7ffffff);
- uint32_t x58 = (x56 + x39);
- uint32_t x59 = (x58 >> 0x1b);
- uint32_t x60 = (x58 & 0x7ffffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e189m25_7limbs/femulDisplay.v b/src/Specific/solinas32_2e189m25_7limbs/femulDisplay.v
deleted file mode 100644
index ce02f1dac..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e189m25_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e189m25_7limbs/fesquare.c b/src/Specific/solinas32_2e189m25_7limbs/fesquare.c
deleted file mode 100644
index 2d8ae4b5a..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x13 = (((uint64_t)x2 * x11) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x11 * x2)))))));
- { uint64_t x14 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x19 * ((uint64_t)x11 * x11)));
- { uint64_t x15 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x19 * (((uint64_t)x12 * x11) + ((uint64_t)x11 * x12))));
- { uint64_t x16 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x19 * (((uint64_t)x10 * x11) + (((uint64_t)x12 * x12) + ((uint64_t)x11 * x10)))));
- { ℤ x17 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) +ℤ (0x19 *ℤ (((uint64_t)x8 * x11) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((uint64_t)x11 * x8))))));
- { ℤ x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) +ℤ (0x19 *ℤ (((uint64_t)x6 * x11) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + ((uint64_t)x11 * x6)))))));
- { ℤ x19 = (((uint64_t)x2 * x2) +ℤ (0x19 *ℤ (((uint64_t)x4 * x11) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + ((uint64_t)x11 * x4))))))));
- { uint64_t x20 = (x19 >> 0x1b);
- { uint32_t x21 = (x19 & 0x7ffffff);
- { ℤ x22 = (x20 +ℤ x18);
- { uint64_t x23 = (x22 >> 0x1b);
- { uint32_t x24 = (x22 & 0x7ffffff);
- { ℤ x25 = (x23 +ℤ x17);
- { uint64_t x26 = (x25 >> 0x1b);
- { uint32_t x27 = (x25 & 0x7ffffff);
- { uint64_t x28 = (x26 + x16);
- { uint64_t x29 = (x28 >> 0x1b);
- { uint32_t x30 = ((uint32_t)x28 & 0x7ffffff);
- { uint64_t x31 = (x29 + x15);
- { uint64_t x32 = (x31 >> 0x1b);
- { uint32_t x33 = ((uint32_t)x31 & 0x7ffffff);
- { uint64_t x34 = (x32 + x14);
- { uint64_t x35 = (x34 >> 0x1b);
- { uint32_t x36 = ((uint32_t)x34 & 0x7ffffff);
- { uint64_t x37 = (x35 + x13);
- { uint64_t x38 = (x37 >> 0x1b);
- { uint32_t x39 = ((uint32_t)x37 & 0x7ffffff);
- { uint64_t x40 = (x21 + (0x19 * x38));
- { uint32_t x41 = (uint32_t) (x40 >> 0x1b);
- { uint32_t x42 = ((uint32_t)x40 & 0x7ffffff);
- { uint32_t x43 = (x41 + x24);
- { uint32_t x44 = (x43 >> 0x1b);
- { uint32_t x45 = (x43 & 0x7ffffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e189m25_7limbs/fesquare.v b/src/Specific/solinas32_2e189m25_7limbs/fesquare.v
deleted file mode 100644
index 3d0fa3105..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e189m25_7limbs.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_2e189m25_7limbs/fesquareDisplay.log b/src/Specific/solinas32_2e189m25_7limbs/fesquareDisplay.log
deleted file mode 100644
index efc8e6c28..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x13 = (((uint64_t)x2 * x11) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x11 * x2)))))));
- uint64_t x14 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x19 * ((uint64_t)x11 * x11)));
- uint64_t x15 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x19 * (((uint64_t)x12 * x11) + ((uint64_t)x11 * x12))));
- uint64_t x16 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x19 * (((uint64_t)x10 * x11) + (((uint64_t)x12 * x12) + ((uint64_t)x11 * x10)))));
- ℤ x17 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) +ℤ (0x19 *ℤ (((uint64_t)x8 * x11) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((uint64_t)x11 * x8))))));
- ℤ x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) +ℤ (0x19 *ℤ (((uint64_t)x6 * x11) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + ((uint64_t)x11 * x6)))))));
- ℤ x19 = (((uint64_t)x2 * x2) +ℤ (0x19 *ℤ (((uint64_t)x4 * x11) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + ((uint64_t)x11 * x4))))))));
- uint64_t x20 = (x19 >> 0x1b);
- uint32_t x21 = (x19 & 0x7ffffff);
- ℤ x22 = (x20 +ℤ x18);
- uint64_t x23 = (x22 >> 0x1b);
- uint32_t x24 = (x22 & 0x7ffffff);
- ℤ x25 = (x23 +ℤ x17);
- uint64_t x26 = (x25 >> 0x1b);
- uint32_t x27 = (x25 & 0x7ffffff);
- uint64_t x28 = (x26 + x16);
- uint64_t x29 = (x28 >> 0x1b);
- uint32_t x30 = ((uint32_t)x28 & 0x7ffffff);
- uint64_t x31 = (x29 + x15);
- uint64_t x32 = (x31 >> 0x1b);
- uint32_t x33 = ((uint32_t)x31 & 0x7ffffff);
- uint64_t x34 = (x32 + x14);
- uint64_t x35 = (x34 >> 0x1b);
- uint32_t x36 = ((uint32_t)x34 & 0x7ffffff);
- uint64_t x37 = (x35 + x13);
- uint64_t x38 = (x37 >> 0x1b);
- uint32_t x39 = ((uint32_t)x37 & 0x7ffffff);
- uint64_t x40 = (x21 + (0x19 * x38));
- uint32_t x41 = (uint32_t) (x40 >> 0x1b);
- uint32_t x42 = ((uint32_t)x40 & 0x7ffffff);
- uint32_t x43 = (x41 + x24);
- uint32_t x44 = (x43 >> 0x1b);
- uint32_t x45 = (x43 & 0x7ffffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e189m25_7limbs/fesquareDisplay.v b/src/Specific/solinas32_2e189m25_7limbs/fesquareDisplay.v
deleted file mode 100644
index ea38791e7..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e189m25_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e189m25_7limbs/fesub.c b/src/Specific/solinas32_2e189m25_7limbs/fesub.c
deleted file mode 100644
index c8d4d9289..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = ((0xfffffce + x5) - x17);
- out[1] = ((0xffffffe + x7) - x19);
- out[2] = ((0xffffffe + x9) - x21);
- out[3] = ((0xffffffe + x11) - x23);
- out[4] = ((0xffffffe + x13) - x25);
- out[5] = ((0xffffffe + x15) - x27);
- out[6] = ((0xffffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e189m25_7limbs/fesub.v b/src/Specific/solinas32_2e189m25_7limbs/fesub.v
deleted file mode 100644
index 00d24b1dc..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e189m25_7limbs.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_2e189m25_7limbs/fesubDisplay.log b/src/Specific/solinas32_2e189m25_7limbs/fesubDisplay.log
deleted file mode 100644
index 74fbc0216..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0xffffffe + x14) - x26), ((0xffffffe + x15) - x27), ((0xffffffe + x13) - x25), ((0xffffffe + x11) - x23), ((0xffffffe + x9) - x21), ((0xffffffe + x7) - x19), ((0xfffffce + x5) - x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e189m25_7limbs/fesubDisplay.v b/src/Specific/solinas32_2e189m25_7limbs/fesubDisplay.v
deleted file mode 100644
index 824e2d447..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e189m25_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e189m25_7limbs/freeze.c b/src/Specific/solinas32_2e189m25_7limbs/freeze.c
deleted file mode 100644
index 861a4917d..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffe7);
- { uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0x7ffffff);
- { uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0x7ffffff);
- { uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0x7ffffff);
- { uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0x7ffffff);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0x7ffffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0x7ffffff);
- { uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- { uint32_t x35 = (x34 & 0x7ffffe7);
- { uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint32_t x39 = (x34 & 0x7ffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint32_t x43 = (x34 & 0x7ffffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint32_t x47 = (x34 & 0x7ffffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint32_t x51 = (x34 & 0x7ffffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint32_t x55 = (x34 & 0x7ffffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint32_t x59 = (x34 & 0x7ffffff);
- { uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e189m25_7limbs/freeze.v b/src/Specific/solinas32_2e189m25_7limbs/freeze.v
deleted file mode 100644
index 1d6de764f..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e189m25_7limbs.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_2e189m25_7limbs/freezeDisplay.log b/src/Specific/solinas32_2e189m25_7limbs/freezeDisplay.log
deleted file mode 100644
index 8094a8368..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffe7);
- uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0x7ffffff);
- uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0x7ffffff);
- uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0x7ffffff);
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0x7ffffff);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0x7ffffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0x7ffffff);
- uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- uint32_t x35 = (x34 & 0x7ffffe7);
- uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint32_t x39 = (x34 & 0x7ffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint32_t x43 = (x34 & 0x7ffffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint32_t x47 = (x34 & 0x7ffffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint32_t x51 = (x34 & 0x7ffffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint32_t x55 = (x34 & 0x7ffffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint32_t x59 = (x34 & 0x7ffffff);
- uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e189m25_7limbs/freezeDisplay.v b/src/Specific/solinas32_2e189m25_7limbs/freezeDisplay.v
deleted file mode 100644
index bc2d527a9..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e189m25_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e189m25_7limbs/py_interpreter.sh b/src/Specific/solinas32_2e189m25_7limbs/py_interpreter.sh
deleted file mode 100755
index 080fca164..000000000
--- a/src/Specific/solinas32_2e189m25_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**189 - 25' -Dmodulus_bytes='27' -Da24='121665'
diff --git a/src/Specific/solinas32_2e189m25_8limbs/CurveParameters.v b/src/Specific/solinas32_2e189m25_8limbs/CurveParameters.v
deleted file mode 100644
index 7eda70018..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^189 - 25
-Base: 23.625
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 23 + 5/8;
- bitwidth := 32;
- s := 2^189;
- c := [(1, 25)];
- carry_chains := Some [seq 0 (pred 8); [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_2e189m25_8limbs/Synthesis.v b/src/Specific/solinas32_2e189m25_8limbs/Synthesis.v
deleted file mode 100644
index 1a8ccfbef..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e189m25_8limbs.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_2e189m25_8limbs/compiler.sh b/src/Specific/solinas32_2e189m25_8limbs/compiler.sh
deleted file mode 100755
index ea9312dc6..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,23,24,24,23,24,23}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<189) - 25' "$@"
diff --git a/src/Specific/solinas32_2e189m25_8limbs/compilerxx.sh b/src/Specific/solinas32_2e189m25_8limbs/compilerxx.sh
deleted file mode 100755
index d61af8038..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,23,24,24,23,24,23}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<189) - 25' "$@"
diff --git a/src/Specific/solinas32_2e189m25_8limbs/feadd.c b/src/Specific/solinas32_2e189m25_8limbs/feadd.c
deleted file mode 100644
index cc3671f75..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e189m25_8limbs/feadd.v b/src/Specific/solinas32_2e189m25_8limbs/feadd.v
deleted file mode 100644
index 371a2f2d4..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e189m25_8limbs.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_2e189m25_8limbs/feaddDisplay.log b/src/Specific/solinas32_2e189m25_8limbs/feaddDisplay.log
deleted file mode 100644
index f25c10903..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e189m25_8limbs/feaddDisplay.v b/src/Specific/solinas32_2e189m25_8limbs/feaddDisplay.v
deleted file mode 100644
index cc84243ed..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e189m25_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e189m25_8limbs/fecarry.v b/src/Specific/solinas32_2e189m25_8limbs/fecarry.v
deleted file mode 100644
index cc9d7a7b0..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e189m25_8limbs.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_2e189m25_8limbs/fecarryDisplay.v b/src/Specific/solinas32_2e189m25_8limbs/fecarryDisplay.v
deleted file mode 100644
index a345d0a4b..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e189m25_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e189m25_8limbs/femul.c b/src/Specific/solinas32_2e189m25_8limbs/femul.c
deleted file mode 100644
index 3e1955645..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint64_t x32 = (((uint64_t)x5 * x30) + (((uint64_t)x7 * x31) + ((0x2 * ((uint64_t)x9 * x29)) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + ((0x2 * ((uint64_t)x15 * x23)) + (((uint64_t)x17 * x21) + ((uint64_t)x16 * x19))))))));
- { uint64_t x33 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + (((uint64_t)x11 * x25) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + ((uint64_t)x17 * x19))))))) + (0x19 * (0x2 * ((uint64_t)x16 * x30))));
- { uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0x19 * (((uint64_t)x17 * x30) + ((uint64_t)x16 * x31))));
- { uint64_t x35 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + ((0x2 * ((uint64_t)x9 * x23)) + (((uint64_t)x11 * x21) + ((uint64_t)x13 * x19))))) + (0x19 * ((0x2 * ((uint64_t)x15 * x30)) + (((uint64_t)x17 * x31) + (0x2 * ((uint64_t)x16 * x29))))));
- { uint64_t x36 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((0x2 * ((uint64_t)x9 * x21)) + ((uint64_t)x11 * x19)))) + (0x19 * ((0x2 * ((uint64_t)x13 * x30)) + ((0x2 * ((uint64_t)x15 * x31)) + ((0x2 * ((uint64_t)x17 * x29)) + (0x2 * ((uint64_t)x16 * x27)))))));
- { uint64_t x37 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((uint64_t)x9 * x19))) + (0x19 * (((uint64_t)x11 * x30) + (((uint64_t)x13 * x31) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + ((uint64_t)x16 * x25)))))));
- { uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0x19 * ((0x2 * ((uint64_t)x9 * x30)) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + ((0x2 * ((uint64_t)x15 * x27)) + (((uint64_t)x17 * x25) + (0x2 * ((uint64_t)x16 * x23)))))))));
- { uint64_t x39 = (((uint64_t)x5 * x19) + (0x19 * ((0x2 * ((uint64_t)x7 * x30)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + (0x2 * ((uint64_t)x16 * x21))))))))));
- { uint64_t x40 = (x39 >> 0x18);
- { uint32_t x41 = ((uint32_t)x39 & 0xffffff);
- { uint64_t x42 = (x40 + x38);
- { uint64_t x43 = (x42 >> 0x18);
- { uint32_t x44 = ((uint32_t)x42 & 0xffffff);
- { uint64_t x45 = (x43 + x37);
- { uint64_t x46 = (x45 >> 0x17);
- { uint32_t x47 = ((uint32_t)x45 & 0x7fffff);
- { uint64_t x48 = (x46 + x36);
- { uint64_t x49 = (x48 >> 0x18);
- { uint32_t x50 = ((uint32_t)x48 & 0xffffff);
- { uint64_t x51 = (x49 + x35);
- { uint64_t x52 = (x51 >> 0x18);
- { uint32_t x53 = ((uint32_t)x51 & 0xffffff);
- { uint64_t x54 = (x52 + x34);
- { uint64_t x55 = (x54 >> 0x17);
- { uint32_t x56 = ((uint32_t)x54 & 0x7fffff);
- { uint64_t x57 = (x55 + x33);
- { uint32_t x58 = (uint32_t) (x57 >> 0x18);
- { uint32_t x59 = ((uint32_t)x57 & 0xffffff);
- { uint64_t x60 = (x58 + x32);
- { uint32_t x61 = (uint32_t) (x60 >> 0x17);
- { uint32_t x62 = ((uint32_t)x60 & 0x7fffff);
- { uint64_t x63 = (x41 + ((uint64_t)0x19 * x61));
- { uint32_t x64 = (uint32_t) (x63 >> 0x18);
- { uint32_t x65 = ((uint32_t)x63 & 0xffffff);
- { uint32_t x66 = (x64 + x44);
- { uint32_t x67 = (x66 >> 0x18);
- { uint32_t x68 = (x66 & 0xffffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e189m25_8limbs/femul.v b/src/Specific/solinas32_2e189m25_8limbs/femul.v
deleted file mode 100644
index 0ffd1ba90..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e189m25_8limbs.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_2e189m25_8limbs/femulDisplay.log b/src/Specific/solinas32_2e189m25_8limbs/femulDisplay.log
deleted file mode 100644
index a60f309c1..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x32 = (((uint64_t)x5 * x30) + (((uint64_t)x7 * x31) + ((0x2 * ((uint64_t)x9 * x29)) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + ((0x2 * ((uint64_t)x15 * x23)) + (((uint64_t)x17 * x21) + ((uint64_t)x16 * x19))))))));
- uint64_t x33 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + (((uint64_t)x11 * x25) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + ((uint64_t)x17 * x19))))))) + (0x19 * (0x2 * ((uint64_t)x16 * x30))));
- uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0x19 * (((uint64_t)x17 * x30) + ((uint64_t)x16 * x31))));
- uint64_t x35 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + ((0x2 * ((uint64_t)x9 * x23)) + (((uint64_t)x11 * x21) + ((uint64_t)x13 * x19))))) + (0x19 * ((0x2 * ((uint64_t)x15 * x30)) + (((uint64_t)x17 * x31) + (0x2 * ((uint64_t)x16 * x29))))));
- uint64_t x36 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((0x2 * ((uint64_t)x9 * x21)) + ((uint64_t)x11 * x19)))) + (0x19 * ((0x2 * ((uint64_t)x13 * x30)) + ((0x2 * ((uint64_t)x15 * x31)) + ((0x2 * ((uint64_t)x17 * x29)) + (0x2 * ((uint64_t)x16 * x27)))))));
- uint64_t x37 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((uint64_t)x9 * x19))) + (0x19 * (((uint64_t)x11 * x30) + (((uint64_t)x13 * x31) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + ((uint64_t)x16 * x25)))))));
- uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0x19 * ((0x2 * ((uint64_t)x9 * x30)) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + ((0x2 * ((uint64_t)x15 * x27)) + (((uint64_t)x17 * x25) + (0x2 * ((uint64_t)x16 * x23)))))))));
- uint64_t x39 = (((uint64_t)x5 * x19) + (0x19 * ((0x2 * ((uint64_t)x7 * x30)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + (0x2 * ((uint64_t)x16 * x21))))))))));
- uint64_t x40 = (x39 >> 0x18);
- uint32_t x41 = ((uint32_t)x39 & 0xffffff);
- uint64_t x42 = (x40 + x38);
- uint64_t x43 = (x42 >> 0x18);
- uint32_t x44 = ((uint32_t)x42 & 0xffffff);
- uint64_t x45 = (x43 + x37);
- uint64_t x46 = (x45 >> 0x17);
- uint32_t x47 = ((uint32_t)x45 & 0x7fffff);
- uint64_t x48 = (x46 + x36);
- uint64_t x49 = (x48 >> 0x18);
- uint32_t x50 = ((uint32_t)x48 & 0xffffff);
- uint64_t x51 = (x49 + x35);
- uint64_t x52 = (x51 >> 0x18);
- uint32_t x53 = ((uint32_t)x51 & 0xffffff);
- uint64_t x54 = (x52 + x34);
- uint64_t x55 = (x54 >> 0x17);
- uint32_t x56 = ((uint32_t)x54 & 0x7fffff);
- uint64_t x57 = (x55 + x33);
- uint32_t x58 = (uint32_t) (x57 >> 0x18);
- uint32_t x59 = ((uint32_t)x57 & 0xffffff);
- uint64_t x60 = (x58 + x32);
- uint32_t x61 = (uint32_t) (x60 >> 0x17);
- uint32_t x62 = ((uint32_t)x60 & 0x7fffff);
- uint64_t x63 = (x41 + ((uint64_t)0x19 * x61));
- uint32_t x64 = (uint32_t) (x63 >> 0x18);
- uint32_t x65 = ((uint32_t)x63 & 0xffffff);
- uint32_t x66 = (x64 + x44);
- uint32_t x67 = (x66 >> 0x18);
- uint32_t x68 = (x66 & 0xffffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e189m25_8limbs/femulDisplay.v b/src/Specific/solinas32_2e189m25_8limbs/femulDisplay.v
deleted file mode 100644
index 7bf49539a..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e189m25_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e189m25_8limbs/fesquare.c b/src/Specific/solinas32_2e189m25_8limbs/fesquare.c
deleted file mode 100644
index 180a8bad8..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (((uint64_t)x2 * x13) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x13 * x2))))))));
- { uint64_t x16 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x19 * (0x2 * ((uint64_t)x13 * x13))));
- { uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x19 * (((uint64_t)x14 * x13) + ((uint64_t)x13 * x14))));
- { uint64_t x18 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x19 * ((0x2 * ((uint64_t)x12 * x13)) + (((uint64_t)x14 * x14) + (0x2 * ((uint64_t)x13 * x12))))));
- { uint64_t x19 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x19 * ((0x2 * ((uint64_t)x10 * x13)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (0x2 * ((uint64_t)x13 * x10)))))));
- { uint64_t x20 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x19 * (((uint64_t)x8 * x13) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + ((uint64_t)x13 * x8)))))));
- { uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x19 * ((0x2 * ((uint64_t)x6 * x13)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + (0x2 * ((uint64_t)x13 * x6)))))))));
- { uint64_t x22 = (((uint64_t)x2 * x2) + (0x19 * ((0x2 * ((uint64_t)x4 * x13)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (0x2 * ((uint64_t)x13 * x4))))))))));
- { uint64_t x23 = (x22 >> 0x18);
- { uint32_t x24 = ((uint32_t)x22 & 0xffffff);
- { uint64_t x25 = (x23 + x21);
- { uint64_t x26 = (x25 >> 0x18);
- { uint32_t x27 = ((uint32_t)x25 & 0xffffff);
- { uint64_t x28 = (x26 + x20);
- { uint64_t x29 = (x28 >> 0x17);
- { uint32_t x30 = ((uint32_t)x28 & 0x7fffff);
- { uint64_t x31 = (x29 + x19);
- { uint64_t x32 = (x31 >> 0x18);
- { uint32_t x33 = ((uint32_t)x31 & 0xffffff);
- { uint64_t x34 = (x32 + x18);
- { uint64_t x35 = (x34 >> 0x18);
- { uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- { uint64_t x37 = (x35 + x17);
- { uint64_t x38 = (x37 >> 0x17);
- { uint32_t x39 = ((uint32_t)x37 & 0x7fffff);
- { uint64_t x40 = (x38 + x16);
- { uint32_t x41 = (uint32_t) (x40 >> 0x18);
- { uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- { uint64_t x43 = (x41 + x15);
- { uint32_t x44 = (uint32_t) (x43 >> 0x17);
- { uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- { uint64_t x46 = (x24 + ((uint64_t)0x19 * x44));
- { uint32_t x47 = (uint32_t) (x46 >> 0x18);
- { uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- { uint32_t x49 = (x47 + x27);
- { uint32_t x50 = (x49 >> 0x18);
- { uint32_t x51 = (x49 & 0xffffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e189m25_8limbs/fesquare.v b/src/Specific/solinas32_2e189m25_8limbs/fesquare.v
deleted file mode 100644
index fd70ea682..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e189m25_8limbs.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_2e189m25_8limbs/fesquareDisplay.log b/src/Specific/solinas32_2e189m25_8limbs/fesquareDisplay.log
deleted file mode 100644
index 62194cb45..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (((uint64_t)x2 * x13) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x13 * x2))))))));
- uint64_t x16 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x19 * (0x2 * ((uint64_t)x13 * x13))));
- uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x19 * (((uint64_t)x14 * x13) + ((uint64_t)x13 * x14))));
- uint64_t x18 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x19 * ((0x2 * ((uint64_t)x12 * x13)) + (((uint64_t)x14 * x14) + (0x2 * ((uint64_t)x13 * x12))))));
- uint64_t x19 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x19 * ((0x2 * ((uint64_t)x10 * x13)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (0x2 * ((uint64_t)x13 * x10)))))));
- uint64_t x20 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x19 * (((uint64_t)x8 * x13) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + ((uint64_t)x13 * x8)))))));
- uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x19 * ((0x2 * ((uint64_t)x6 * x13)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + (0x2 * ((uint64_t)x13 * x6)))))))));
- uint64_t x22 = (((uint64_t)x2 * x2) + (0x19 * ((0x2 * ((uint64_t)x4 * x13)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (0x2 * ((uint64_t)x13 * x4))))))))));
- uint64_t x23 = (x22 >> 0x18);
- uint32_t x24 = ((uint32_t)x22 & 0xffffff);
- uint64_t x25 = (x23 + x21);
- uint64_t x26 = (x25 >> 0x18);
- uint32_t x27 = ((uint32_t)x25 & 0xffffff);
- uint64_t x28 = (x26 + x20);
- uint64_t x29 = (x28 >> 0x17);
- uint32_t x30 = ((uint32_t)x28 & 0x7fffff);
- uint64_t x31 = (x29 + x19);
- uint64_t x32 = (x31 >> 0x18);
- uint32_t x33 = ((uint32_t)x31 & 0xffffff);
- uint64_t x34 = (x32 + x18);
- uint64_t x35 = (x34 >> 0x18);
- uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- uint64_t x37 = (x35 + x17);
- uint64_t x38 = (x37 >> 0x17);
- uint32_t x39 = ((uint32_t)x37 & 0x7fffff);
- uint64_t x40 = (x38 + x16);
- uint32_t x41 = (uint32_t) (x40 >> 0x18);
- uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- uint64_t x43 = (x41 + x15);
- uint32_t x44 = (uint32_t) (x43 >> 0x17);
- uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- uint64_t x46 = (x24 + ((uint64_t)0x19 * x44));
- uint32_t x47 = (uint32_t) (x46 >> 0x18);
- uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- uint32_t x49 = (x47 + x27);
- uint32_t x50 = (x49 >> 0x18);
- uint32_t x51 = (x49 & 0xffffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e189m25_8limbs/fesquareDisplay.v b/src/Specific/solinas32_2e189m25_8limbs/fesquareDisplay.v
deleted file mode 100644
index deba2cc23..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e189m25_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e189m25_8limbs/fesub.c b/src/Specific/solinas32_2e189m25_8limbs/fesub.c
deleted file mode 100644
index aa1a6a810..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = ((0x1ffffce + x5) - x19);
- out[1] = ((0x1fffffe + x7) - x21);
- out[2] = ((0xfffffe + x9) - x23);
- out[3] = ((0x1fffffe + x11) - x25);
- out[4] = ((0x1fffffe + x13) - x27);
- out[5] = ((0xfffffe + x15) - x29);
- out[6] = ((0x1fffffe + x17) - x31);
- out[7] = ((0xfffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e189m25_8limbs/fesub.v b/src/Specific/solinas32_2e189m25_8limbs/fesub.v
deleted file mode 100644
index 3fedc6033..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e189m25_8limbs.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_2e189m25_8limbs/fesubDisplay.log b/src/Specific/solinas32_2e189m25_8limbs/fesubDisplay.log
deleted file mode 100644
index d9ce29935..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0xfffffe + x16) - x30), ((0x1fffffe + x17) - x31), ((0xfffffe + x15) - x29), ((0x1fffffe + x13) - x27), ((0x1fffffe + x11) - x25), ((0xfffffe + x9) - x23), ((0x1fffffe + x7) - x21), ((0x1ffffce + x5) - x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e189m25_8limbs/fesubDisplay.v b/src/Specific/solinas32_2e189m25_8limbs/fesubDisplay.v
deleted file mode 100644
index 8944bec30..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e189m25_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e189m25_8limbs/freeze.c b/src/Specific/solinas32_2e189m25_8limbs/freeze.c
deleted file mode 100644
index 14bd28b21..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffe7);
- { uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffff);
- { uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0x7fffff);
- { uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0xffffff);
- { uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0xffffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0x7fffff);
- { uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0xffffff);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0x7fffff);
- { uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- { uint32_t x40 = (x39 & 0xffffe7);
- { uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint32_t x44 = (x39 & 0xffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint32_t x48 = (x39 & 0x7fffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint32_t x52 = (x39 & 0xffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint32_t x56 = (x39 & 0xffffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint32_t x60 = (x39 & 0x7fffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint32_t x64 = (x39 & 0xffffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint32_t x68 = (x39 & 0x7fffff);
- { uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e189m25_8limbs/freeze.v b/src/Specific/solinas32_2e189m25_8limbs/freeze.v
deleted file mode 100644
index 317b401d8..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e189m25_8limbs.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_2e189m25_8limbs/freezeDisplay.log b/src/Specific/solinas32_2e189m25_8limbs/freezeDisplay.log
deleted file mode 100644
index 373c465f1..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffe7);
- uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffff);
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0x7fffff);
- uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0xffffff);
- uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0xffffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0x7fffff);
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0xffffff);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0x7fffff);
- uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- uint32_t x40 = (x39 & 0xffffe7);
- uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint32_t x44 = (x39 & 0xffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint32_t x48 = (x39 & 0x7fffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint32_t x52 = (x39 & 0xffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint32_t x56 = (x39 & 0xffffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint32_t x60 = (x39 & 0x7fffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint32_t x64 = (x39 & 0xffffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint32_t x68 = (x39 & 0x7fffff);
- uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e189m25_8limbs/freezeDisplay.v b/src/Specific/solinas32_2e189m25_8limbs/freezeDisplay.v
deleted file mode 100644
index 10f2601a2..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e189m25_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e189m25_8limbs/py_interpreter.sh b/src/Specific/solinas32_2e189m25_8limbs/py_interpreter.sh
deleted file mode 100755
index a4a74ccf2..000000000
--- a/src/Specific/solinas32_2e189m25_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**189 - 25' -Dmodulus_bytes='23.625' -Da24='121665'
diff --git a/src/Specific/solinas32_2e190m11_7limbs/CurveParameters.v b/src/Specific/solinas32_2e190m11_7limbs/CurveParameters.v
deleted file mode 100644
index b610a7925..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^190 - 11
-Base: 27 + 1/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 27 + 1/7;
- bitwidth := 32;
- s := 2^190;
- c := [(1, 11)];
- carry_chains := Some [seq 0 (pred 7); [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_2e190m11_7limbs/Synthesis.v b/src/Specific/solinas32_2e190m11_7limbs/Synthesis.v
deleted file mode 100644
index 2f41c5a2b..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e190m11_7limbs.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_2e190m11_7limbs/compiler.sh b/src/Specific/solinas32_2e190m11_7limbs/compiler.sh
deleted file mode 100755
index d5a972543..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{28,27,27,27,27,27,27}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<190) - 11' "$@"
diff --git a/src/Specific/solinas32_2e190m11_7limbs/compilerxx.sh b/src/Specific/solinas32_2e190m11_7limbs/compilerxx.sh
deleted file mode 100755
index d7ecccf62..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{28,27,27,27,27,27,27}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<190) - 11' "$@"
diff --git a/src/Specific/solinas32_2e190m11_7limbs/feadd.c b/src/Specific/solinas32_2e190m11_7limbs/feadd.c
deleted file mode 100644
index 5288d0bef..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e190m11_7limbs/feadd.v b/src/Specific/solinas32_2e190m11_7limbs/feadd.v
deleted file mode 100644
index 1086f8748..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e190m11_7limbs.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_2e190m11_7limbs/feaddDisplay.log b/src/Specific/solinas32_2e190m11_7limbs/feaddDisplay.log
deleted file mode 100644
index d22997dcb..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e190m11_7limbs/feaddDisplay.v b/src/Specific/solinas32_2e190m11_7limbs/feaddDisplay.v
deleted file mode 100644
index 9876eb0f8..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e190m11_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e190m11_7limbs/fecarry.v b/src/Specific/solinas32_2e190m11_7limbs/fecarry.v
deleted file mode 100644
index 261ed8c23..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e190m11_7limbs.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_2e190m11_7limbs/fecarryDisplay.v b/src/Specific/solinas32_2e190m11_7limbs/fecarryDisplay.v
deleted file mode 100644
index 0fe5e9bf3..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e190m11_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e190m11_7limbs/femul.c b/src/Specific/solinas32_2e190m11_7limbs/femul.c
deleted file mode 100644
index ed25ed8f1..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- { uint64_t x28 = (((uint64_t)x5 * x26) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((0x2 * ((uint64_t)x11 * x23)) + ((0x2 * ((uint64_t)x13 * x21)) + ((0x2 * ((uint64_t)x15 * x19)) + ((uint64_t)x14 * x17)))))));
- { uint64_t x29 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + ((0x2 * ((uint64_t)x13 * x19)) + ((uint64_t)x15 * x17)))))) + (0xb * ((uint64_t)x14 * x26)));
- { uint64_t x30 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((0x2 * ((uint64_t)x9 * x21)) + ((0x2 * ((uint64_t)x11 * x19)) + ((uint64_t)x13 * x17))))) + (0xb * (((uint64_t)x15 * x26) + ((uint64_t)x14 * x27))));
- { uint64_t x31 = ((((uint64_t)x5 * x23) + ((0x2 * ((uint64_t)x7 * x21)) + ((0x2 * ((uint64_t)x9 * x19)) + ((uint64_t)x11 * x17)))) + (0xb * (((uint64_t)x13 * x26) + (((uint64_t)x15 * x27) + ((uint64_t)x14 * x25)))));
- { uint64_t x32 = ((((uint64_t)x5 * x21) + ((0x2 * ((uint64_t)x7 * x19)) + ((uint64_t)x9 * x17))) + (0xb * (((uint64_t)x11 * x26) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + ((uint64_t)x14 * x23))))));
- { uint64_t x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) + (0xb * (((uint64_t)x9 * x26) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + ((uint64_t)x14 * x21)))))));
- { ℤ x34 = (((uint64_t)x5 * x17) +ℤ (0xb *ℤ ((0x2 * ((uint64_t)x7 * x26)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + (0x2 * ((uint64_t)x14 * x19)))))))));
- { uint64_t x35 = (x34 >> 0x1c);
- { uint32_t x36 = (x34 & 0xfffffff);
- { uint64_t x37 = (x35 + x33);
- { uint64_t x38 = (x37 >> 0x1b);
- { uint32_t x39 = ((uint32_t)x37 & 0x7ffffff);
- { uint64_t x40 = (x38 + x32);
- { uint64_t x41 = (x40 >> 0x1b);
- { uint32_t x42 = ((uint32_t)x40 & 0x7ffffff);
- { uint64_t x43 = (x41 + x31);
- { uint64_t x44 = (x43 >> 0x1b);
- { uint32_t x45 = ((uint32_t)x43 & 0x7ffffff);
- { uint64_t x46 = (x44 + x30);
- { uint64_t x47 = (x46 >> 0x1b);
- { uint32_t x48 = ((uint32_t)x46 & 0x7ffffff);
- { uint64_t x49 = (x47 + x29);
- { uint64_t x50 = (x49 >> 0x1b);
- { uint32_t x51 = ((uint32_t)x49 & 0x7ffffff);
- { uint64_t x52 = (x50 + x28);
- { uint64_t x53 = (x52 >> 0x1b);
- { uint32_t x54 = ((uint32_t)x52 & 0x7ffffff);
- { uint64_t x55 = (x36 + (0xb * x53));
- { uint32_t x56 = (uint32_t) (x55 >> 0x1c);
- { uint32_t x57 = ((uint32_t)x55 & 0xfffffff);
- { uint32_t x58 = (x56 + x39);
- { uint32_t x59 = (x58 >> 0x1b);
- { uint32_t x60 = (x58 & 0x7ffffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e190m11_7limbs/femul.v b/src/Specific/solinas32_2e190m11_7limbs/femul.v
deleted file mode 100644
index 3d2fdb2bc..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e190m11_7limbs.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_2e190m11_7limbs/femulDisplay.log b/src/Specific/solinas32_2e190m11_7limbs/femulDisplay.log
deleted file mode 100644
index 8e4dfcb20..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint64_t x28 = (((uint64_t)x5 * x26) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((0x2 * ((uint64_t)x11 * x23)) + ((0x2 * ((uint64_t)x13 * x21)) + ((0x2 * ((uint64_t)x15 * x19)) + ((uint64_t)x14 * x17)))))));
- uint64_t x29 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + ((0x2 * ((uint64_t)x13 * x19)) + ((uint64_t)x15 * x17)))))) + (0xb * ((uint64_t)x14 * x26)));
- uint64_t x30 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((0x2 * ((uint64_t)x9 * x21)) + ((0x2 * ((uint64_t)x11 * x19)) + ((uint64_t)x13 * x17))))) + (0xb * (((uint64_t)x15 * x26) + ((uint64_t)x14 * x27))));
- uint64_t x31 = ((((uint64_t)x5 * x23) + ((0x2 * ((uint64_t)x7 * x21)) + ((0x2 * ((uint64_t)x9 * x19)) + ((uint64_t)x11 * x17)))) + (0xb * (((uint64_t)x13 * x26) + (((uint64_t)x15 * x27) + ((uint64_t)x14 * x25)))));
- uint64_t x32 = ((((uint64_t)x5 * x21) + ((0x2 * ((uint64_t)x7 * x19)) + ((uint64_t)x9 * x17))) + (0xb * (((uint64_t)x11 * x26) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + ((uint64_t)x14 * x23))))));
- uint64_t x33 = ((((uint64_t)x5 * x19) + ((uint64_t)x7 * x17)) + (0xb * (((uint64_t)x9 * x26) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + ((uint64_t)x14 * x21)))))));
- ℤ x34 = (((uint64_t)x5 * x17) +ℤ (0xb *ℤ ((0x2 * ((uint64_t)x7 * x26)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + (0x2 * ((uint64_t)x14 * x19)))))))));
- uint64_t x35 = (x34 >> 0x1c);
- uint32_t x36 = (x34 & 0xfffffff);
- uint64_t x37 = (x35 + x33);
- uint64_t x38 = (x37 >> 0x1b);
- uint32_t x39 = ((uint32_t)x37 & 0x7ffffff);
- uint64_t x40 = (x38 + x32);
- uint64_t x41 = (x40 >> 0x1b);
- uint32_t x42 = ((uint32_t)x40 & 0x7ffffff);
- uint64_t x43 = (x41 + x31);
- uint64_t x44 = (x43 >> 0x1b);
- uint32_t x45 = ((uint32_t)x43 & 0x7ffffff);
- uint64_t x46 = (x44 + x30);
- uint64_t x47 = (x46 >> 0x1b);
- uint32_t x48 = ((uint32_t)x46 & 0x7ffffff);
- uint64_t x49 = (x47 + x29);
- uint64_t x50 = (x49 >> 0x1b);
- uint32_t x51 = ((uint32_t)x49 & 0x7ffffff);
- uint64_t x52 = (x50 + x28);
- uint64_t x53 = (x52 >> 0x1b);
- uint32_t x54 = ((uint32_t)x52 & 0x7ffffff);
- uint64_t x55 = (x36 + (0xb * x53));
- uint32_t x56 = (uint32_t) (x55 >> 0x1c);
- uint32_t x57 = ((uint32_t)x55 & 0xfffffff);
- uint32_t x58 = (x56 + x39);
- uint32_t x59 = (x58 >> 0x1b);
- uint32_t x60 = (x58 & 0x7ffffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e190m11_7limbs/femulDisplay.v b/src/Specific/solinas32_2e190m11_7limbs/femulDisplay.v
deleted file mode 100644
index 6d113d693..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e190m11_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e190m11_7limbs/fesquare.c b/src/Specific/solinas32_2e190m11_7limbs/fesquare.c
deleted file mode 100644
index ece920735..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x13 = (((uint64_t)x2 * x11) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x11 * x2)))))));
- { uint64_t x14 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0xb * ((uint64_t)x11 * x11)));
- { uint64_t x15 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0xb * (((uint64_t)x12 * x11) + ((uint64_t)x11 * x12))));
- { uint64_t x16 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0xb * (((uint64_t)x10 * x11) + (((uint64_t)x12 * x12) + ((uint64_t)x11 * x10)))));
- { uint64_t x17 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0xb * (((uint64_t)x8 * x11) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((uint64_t)x11 * x8))))));
- { uint64_t x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xb * (((uint64_t)x6 * x11) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + ((uint64_t)x11 * x6)))))));
- { ℤ x19 = (((uint64_t)x2 * x2) +ℤ (0xb *ℤ ((0x2 * ((uint64_t)x4 * x11)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (0x2 * ((uint64_t)x11 * x4)))))))));
- { uint64_t x20 = (x19 >> 0x1c);
- { uint32_t x21 = (x19 & 0xfffffff);
- { uint64_t x22 = (x20 + x18);
- { uint64_t x23 = (x22 >> 0x1b);
- { uint32_t x24 = ((uint32_t)x22 & 0x7ffffff);
- { uint64_t x25 = (x23 + x17);
- { uint64_t x26 = (x25 >> 0x1b);
- { uint32_t x27 = ((uint32_t)x25 & 0x7ffffff);
- { uint64_t x28 = (x26 + x16);
- { uint64_t x29 = (x28 >> 0x1b);
- { uint32_t x30 = ((uint32_t)x28 & 0x7ffffff);
- { uint64_t x31 = (x29 + x15);
- { uint64_t x32 = (x31 >> 0x1b);
- { uint32_t x33 = ((uint32_t)x31 & 0x7ffffff);
- { uint64_t x34 = (x32 + x14);
- { uint64_t x35 = (x34 >> 0x1b);
- { uint32_t x36 = ((uint32_t)x34 & 0x7ffffff);
- { uint64_t x37 = (x35 + x13);
- { uint64_t x38 = (x37 >> 0x1b);
- { uint32_t x39 = ((uint32_t)x37 & 0x7ffffff);
- { uint64_t x40 = (x21 + (0xb * x38));
- { uint32_t x41 = (uint32_t) (x40 >> 0x1c);
- { uint32_t x42 = ((uint32_t)x40 & 0xfffffff);
- { uint32_t x43 = (x41 + x24);
- { uint32_t x44 = (x43 >> 0x1b);
- { uint32_t x45 = (x43 & 0x7ffffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e190m11_7limbs/fesquare.v b/src/Specific/solinas32_2e190m11_7limbs/fesquare.v
deleted file mode 100644
index d5c311935..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e190m11_7limbs.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_2e190m11_7limbs/fesquareDisplay.log b/src/Specific/solinas32_2e190m11_7limbs/fesquareDisplay.log
deleted file mode 100644
index f6685bd3a..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x13 = (((uint64_t)x2 * x11) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x11 * x2)))))));
- uint64_t x14 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0xb * ((uint64_t)x11 * x11)));
- uint64_t x15 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0xb * (((uint64_t)x12 * x11) + ((uint64_t)x11 * x12))));
- uint64_t x16 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0xb * (((uint64_t)x10 * x11) + (((uint64_t)x12 * x12) + ((uint64_t)x11 * x10)))));
- uint64_t x17 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0xb * (((uint64_t)x8 * x11) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((uint64_t)x11 * x8))))));
- uint64_t x18 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xb * (((uint64_t)x6 * x11) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + ((uint64_t)x11 * x6)))))));
- ℤ x19 = (((uint64_t)x2 * x2) +ℤ (0xb *ℤ ((0x2 * ((uint64_t)x4 * x11)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (0x2 * ((uint64_t)x11 * x4)))))))));
- uint64_t x20 = (x19 >> 0x1c);
- uint32_t x21 = (x19 & 0xfffffff);
- uint64_t x22 = (x20 + x18);
- uint64_t x23 = (x22 >> 0x1b);
- uint32_t x24 = ((uint32_t)x22 & 0x7ffffff);
- uint64_t x25 = (x23 + x17);
- uint64_t x26 = (x25 >> 0x1b);
- uint32_t x27 = ((uint32_t)x25 & 0x7ffffff);
- uint64_t x28 = (x26 + x16);
- uint64_t x29 = (x28 >> 0x1b);
- uint32_t x30 = ((uint32_t)x28 & 0x7ffffff);
- uint64_t x31 = (x29 + x15);
- uint64_t x32 = (x31 >> 0x1b);
- uint32_t x33 = ((uint32_t)x31 & 0x7ffffff);
- uint64_t x34 = (x32 + x14);
- uint64_t x35 = (x34 >> 0x1b);
- uint32_t x36 = ((uint32_t)x34 & 0x7ffffff);
- uint64_t x37 = (x35 + x13);
- uint64_t x38 = (x37 >> 0x1b);
- uint32_t x39 = ((uint32_t)x37 & 0x7ffffff);
- uint64_t x40 = (x21 + (0xb * x38));
- uint32_t x41 = (uint32_t) (x40 >> 0x1c);
- uint32_t x42 = ((uint32_t)x40 & 0xfffffff);
- uint32_t x43 = (x41 + x24);
- uint32_t x44 = (x43 >> 0x1b);
- uint32_t x45 = (x43 & 0x7ffffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e190m11_7limbs/fesquareDisplay.v b/src/Specific/solinas32_2e190m11_7limbs/fesquareDisplay.v
deleted file mode 100644
index 771822249..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e190m11_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e190m11_7limbs/fesub.c b/src/Specific/solinas32_2e190m11_7limbs/fesub.c
deleted file mode 100644
index ff043a07f..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint32_t out[7], const uint32_t in1[7], const uint32_t in2[7]) {
- { const uint32_t x14 = in1[6];
- { const uint32_t x15 = 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 x26 = in2[6];
- { const uint32_t x27 = in2[5];
- { const uint32_t x25 = in2[4];
- { const uint32_t x23 = in2[3];
- { const uint32_t x21 = in2[2];
- { const uint32_t x19 = in2[1];
- { const uint32_t x17 = in2[0];
- out[0] = ((0x1fffffea + x5) - x17);
- out[1] = ((0xffffffe + x7) - x19);
- out[2] = ((0xffffffe + x9) - x21);
- out[3] = ((0xffffffe + x11) - x23);
- out[4] = ((0xffffffe + x13) - x25);
- out[5] = ((0xffffffe + x15) - x27);
- out[6] = ((0xffffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e190m11_7limbs/fesub.v b/src/Specific/solinas32_2e190m11_7limbs/fesub.v
deleted file mode 100644
index 424ffb740..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e190m11_7limbs.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_2e190m11_7limbs/fesubDisplay.log b/src/Specific/solinas32_2e190m11_7limbs/fesubDisplay.log
deleted file mode 100644
index e7a7f3328..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0xffffffe + x14) - x26), ((0xffffffe + x15) - x27), ((0xffffffe + x13) - x25), ((0xffffffe + x11) - x23), ((0xffffffe + x9) - x21), ((0xffffffe + x7) - x19), ((0x1fffffea + x5) - x17)))
-(x, x0)%core
- : word32 * word32 * 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 * uint32_t)
diff --git a/src/Specific/solinas32_2e190m11_7limbs/fesubDisplay.v b/src/Specific/solinas32_2e190m11_7limbs/fesubDisplay.v
deleted file mode 100644
index c75acdcb7..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e190m11_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e190m11_7limbs/freeze.c b/src/Specific/solinas32_2e190m11_7limbs/freeze.c
deleted file mode 100644
index 6e4e52017..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint32_t out[7], const uint32_t in1[7]) {
- { const uint32_t x11 = in1[6];
- { const uint32_t x12 = 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 x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffff5);
- { uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0x7ffffff);
- { uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0x7ffffff);
- { uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0x7ffffff);
- { uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0x7ffffff);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0x7ffffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0x7ffffff);
- { uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- { uint32_t x35 = (x34 & 0xffffff5);
- { uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint32_t x39 = (x34 & 0x7ffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint32_t x43 = (x34 & 0x7ffffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint32_t x47 = (x34 & 0x7ffffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint32_t x51 = (x34 & 0x7ffffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint32_t x55 = (x34 & 0x7ffffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint32_t x59 = (x34 & 0x7ffffff);
- { uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e190m11_7limbs/freeze.v b/src/Specific/solinas32_2e190m11_7limbs/freeze.v
deleted file mode 100644
index 9575c9334..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e190m11_7limbs.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_2e190m11_7limbs/freezeDisplay.log b/src/Specific/solinas32_2e190m11_7limbs/freezeDisplay.log
deleted file mode 100644
index 1e9673e6c..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffff5);
- uint32_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x15, Return x4, 0x7ffffff);
- uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x18, Return x6, 0x7ffffff);
- uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x8, 0x7ffffff);
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x10, 0x7ffffff);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x12, 0x7ffffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x11, 0x7ffffff);
- uint32_t x34 = cmovznz32(x33, 0x0, 0xffffffff);
- uint32_t x35 = (x34 & 0xffffff5);
- uint32_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint32_t x39 = (x34 & 0x7ffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint32_t x43 = (x34 & 0x7ffffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint32_t x47 = (x34 & 0x7ffffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint32_t x51 = (x34 & 0x7ffffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint32_t x55 = (x34 & 0x7ffffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint32_t x59 = (x34 & 0x7ffffff);
- uint32_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e190m11_7limbs/freezeDisplay.v b/src/Specific/solinas32_2e190m11_7limbs/freezeDisplay.v
deleted file mode 100644
index 896456b37..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e190m11_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e190m11_7limbs/py_interpreter.sh b/src/Specific/solinas32_2e190m11_7limbs/py_interpreter.sh
deleted file mode 100755
index 6f930b167..000000000
--- a/src/Specific/solinas32_2e190m11_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**190 - 11' -Dmodulus_bytes='27 + 1/7' -Da24='121665'
diff --git a/src/Specific/solinas32_2e190m11_8limbs/CurveParameters.v b/src/Specific/solinas32_2e190m11_8limbs/CurveParameters.v
deleted file mode 100644
index 4f2a91005..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^190 - 11
-Base: 23.75
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 23 + 3/4;
- bitwidth := 32;
- s := 2^190;
- c := [(1, 11)];
- carry_chains := Some [seq 0 (pred 8); [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_2e190m11_8limbs/Synthesis.v b/src/Specific/solinas32_2e190m11_8limbs/Synthesis.v
deleted file mode 100644
index 8c729f68e..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e190m11_8limbs.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_2e190m11_8limbs/compiler.sh b/src/Specific/solinas32_2e190m11_8limbs/compiler.sh
deleted file mode 100755
index ecf70ecc4..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,24,23,24,24,24,23}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<190) - 11' "$@"
diff --git a/src/Specific/solinas32_2e190m11_8limbs/compilerxx.sh b/src/Specific/solinas32_2e190m11_8limbs/compilerxx.sh
deleted file mode 100755
index 70737c228..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,24,23,24,24,24,23}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<190) - 11' "$@"
diff --git a/src/Specific/solinas32_2e190m11_8limbs/feadd.c b/src/Specific/solinas32_2e190m11_8limbs/feadd.c
deleted file mode 100644
index cc3671f75..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e190m11_8limbs/feadd.v b/src/Specific/solinas32_2e190m11_8limbs/feadd.v
deleted file mode 100644
index 2004db577..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e190m11_8limbs.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_2e190m11_8limbs/feaddDisplay.log b/src/Specific/solinas32_2e190m11_8limbs/feaddDisplay.log
deleted file mode 100644
index f25c10903..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e190m11_8limbs/feaddDisplay.v b/src/Specific/solinas32_2e190m11_8limbs/feaddDisplay.v
deleted file mode 100644
index 524582fc7..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e190m11_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e190m11_8limbs/fecarry.v b/src/Specific/solinas32_2e190m11_8limbs/fecarry.v
deleted file mode 100644
index f6bbd8e13..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e190m11_8limbs.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_2e190m11_8limbs/fecarryDisplay.v b/src/Specific/solinas32_2e190m11_8limbs/fecarryDisplay.v
deleted file mode 100644
index 9c00ce321..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e190m11_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e190m11_8limbs/femul.c b/src/Specific/solinas32_2e190m11_8limbs/femul.c
deleted file mode 100644
index cc7761576..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint64_t x32 = (((uint64_t)x5 * x30) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + (((uint64_t)x17 * x21) + ((uint64_t)x16 * x19))))))));
- { uint64_t x33 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + ((0x2 * ((uint64_t)x11 * x25)) + (((uint64_t)x13 * x23) + (((uint64_t)x15 * x21) + ((uint64_t)x17 * x19))))))) + (0xb * (0x2 * ((uint64_t)x16 * x30))));
- { uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + ((0x2 * ((uint64_t)x11 * x23)) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0xb * ((0x2 * ((uint64_t)x17 * x30)) + (0x2 * ((uint64_t)x16 * x31)))));
- { uint64_t x35 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + ((uint64_t)x13 * x19))))) + (0xb * ((0x2 * ((uint64_t)x15 * x30)) + ((0x2 * ((uint64_t)x17 * x31)) + (0x2 * ((uint64_t)x16 * x29))))));
- { uint64_t x36 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + ((uint64_t)x11 * x19)))) + (0xb * (((uint64_t)x13 * x30) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x16 * x27))))));
- { uint64_t x37 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((uint64_t)x9 * x19))) + (0xb * ((0x2 * ((uint64_t)x11 * x30)) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + (((uint64_t)x17 * x27) + (0x2 * ((uint64_t)x16 * x25))))))));
- { uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0xb * ((0x2 * ((uint64_t)x9 * x30)) + ((0x2 * ((uint64_t)x11 * x31)) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + ((0x2 * ((uint64_t)x17 * x25)) + (0x2 * ((uint64_t)x16 * x23)))))))));
- { uint64_t x39 = (((uint64_t)x5 * x19) + (0xb * ((0x2 * ((uint64_t)x7 * x30)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + (0x2 * ((uint64_t)x16 * x21))))))))));
- { uint64_t x40 = (x39 >> 0x18);
- { uint32_t x41 = ((uint32_t)x39 & 0xffffff);
- { uint64_t x42 = (x40 + x38);
- { uint64_t x43 = (x42 >> 0x18);
- { uint32_t x44 = ((uint32_t)x42 & 0xffffff);
- { uint64_t x45 = (x43 + x37);
- { uint64_t x46 = (x45 >> 0x18);
- { uint32_t x47 = ((uint32_t)x45 & 0xffffff);
- { uint64_t x48 = (x46 + x36);
- { uint64_t x49 = (x48 >> 0x17);
- { uint32_t x50 = ((uint32_t)x48 & 0x7fffff);
- { uint64_t x51 = (x49 + x35);
- { uint64_t x52 = (x51 >> 0x18);
- { uint32_t x53 = ((uint32_t)x51 & 0xffffff);
- { uint64_t x54 = (x52 + x34);
- { uint64_t x55 = (x54 >> 0x18);
- { uint32_t x56 = ((uint32_t)x54 & 0xffffff);
- { uint64_t x57 = (x55 + x33);
- { uint32_t x58 = (uint32_t) (x57 >> 0x18);
- { uint32_t x59 = ((uint32_t)x57 & 0xffffff);
- { uint64_t x60 = (x58 + x32);
- { uint32_t x61 = (uint32_t) (x60 >> 0x17);
- { uint32_t x62 = ((uint32_t)x60 & 0x7fffff);
- { uint64_t x63 = (x41 + ((uint64_t)0xb * x61));
- { uint32_t x64 = (uint32_t) (x63 >> 0x18);
- { uint32_t x65 = ((uint32_t)x63 & 0xffffff);
- { uint32_t x66 = (x64 + x44);
- { uint32_t x67 = (x66 >> 0x18);
- { uint32_t x68 = (x66 & 0xffffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e190m11_8limbs/femul.v b/src/Specific/solinas32_2e190m11_8limbs/femul.v
deleted file mode 100644
index f14bb113d..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e190m11_8limbs.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_2e190m11_8limbs/femulDisplay.log b/src/Specific/solinas32_2e190m11_8limbs/femulDisplay.log
deleted file mode 100644
index d091d88bf..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x32 = (((uint64_t)x5 * x30) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + (((uint64_t)x17 * x21) + ((uint64_t)x16 * x19))))))));
- uint64_t x33 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + ((0x2 * ((uint64_t)x11 * x25)) + (((uint64_t)x13 * x23) + (((uint64_t)x15 * x21) + ((uint64_t)x17 * x19))))))) + (0xb * (0x2 * ((uint64_t)x16 * x30))));
- uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + ((0x2 * ((uint64_t)x11 * x23)) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0xb * ((0x2 * ((uint64_t)x17 * x30)) + (0x2 * ((uint64_t)x16 * x31)))));
- uint64_t x35 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + ((uint64_t)x13 * x19))))) + (0xb * ((0x2 * ((uint64_t)x15 * x30)) + ((0x2 * ((uint64_t)x17 * x31)) + (0x2 * ((uint64_t)x16 * x29))))));
- uint64_t x36 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + ((uint64_t)x11 * x19)))) + (0xb * (((uint64_t)x13 * x30) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x16 * x27))))));
- uint64_t x37 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((uint64_t)x9 * x19))) + (0xb * ((0x2 * ((uint64_t)x11 * x30)) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + (((uint64_t)x17 * x27) + (0x2 * ((uint64_t)x16 * x25))))))));
- uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0xb * ((0x2 * ((uint64_t)x9 * x30)) + ((0x2 * ((uint64_t)x11 * x31)) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + ((0x2 * ((uint64_t)x17 * x25)) + (0x2 * ((uint64_t)x16 * x23)))))))));
- uint64_t x39 = (((uint64_t)x5 * x19) + (0xb * ((0x2 * ((uint64_t)x7 * x30)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + (0x2 * ((uint64_t)x16 * x21))))))))));
- uint64_t x40 = (x39 >> 0x18);
- uint32_t x41 = ((uint32_t)x39 & 0xffffff);
- uint64_t x42 = (x40 + x38);
- uint64_t x43 = (x42 >> 0x18);
- uint32_t x44 = ((uint32_t)x42 & 0xffffff);
- uint64_t x45 = (x43 + x37);
- uint64_t x46 = (x45 >> 0x18);
- uint32_t x47 = ((uint32_t)x45 & 0xffffff);
- uint64_t x48 = (x46 + x36);
- uint64_t x49 = (x48 >> 0x17);
- uint32_t x50 = ((uint32_t)x48 & 0x7fffff);
- uint64_t x51 = (x49 + x35);
- uint64_t x52 = (x51 >> 0x18);
- uint32_t x53 = ((uint32_t)x51 & 0xffffff);
- uint64_t x54 = (x52 + x34);
- uint64_t x55 = (x54 >> 0x18);
- uint32_t x56 = ((uint32_t)x54 & 0xffffff);
- uint64_t x57 = (x55 + x33);
- uint32_t x58 = (uint32_t) (x57 >> 0x18);
- uint32_t x59 = ((uint32_t)x57 & 0xffffff);
- uint64_t x60 = (x58 + x32);
- uint32_t x61 = (uint32_t) (x60 >> 0x17);
- uint32_t x62 = ((uint32_t)x60 & 0x7fffff);
- uint64_t x63 = (x41 + ((uint64_t)0xb * x61));
- uint32_t x64 = (uint32_t) (x63 >> 0x18);
- uint32_t x65 = ((uint32_t)x63 & 0xffffff);
- uint32_t x66 = (x64 + x44);
- uint32_t x67 = (x66 >> 0x18);
- uint32_t x68 = (x66 & 0xffffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e190m11_8limbs/femulDisplay.v b/src/Specific/solinas32_2e190m11_8limbs/femulDisplay.v
deleted file mode 100644
index 817c92267..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e190m11_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e190m11_8limbs/fesquare.c b/src/Specific/solinas32_2e190m11_8limbs/fesquare.c
deleted file mode 100644
index d2306fd0c..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (((uint64_t)x2 * x13) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x13 * x2))))))));
- { uint64_t x16 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0xb * (0x2 * ((uint64_t)x13 * x13))));
- { uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0xb * ((0x2 * ((uint64_t)x14 * x13)) + (0x2 * ((uint64_t)x13 * x14)))));
- { uint64_t x18 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0xb * ((0x2 * ((uint64_t)x12 * x13)) + ((0x2 * ((uint64_t)x14 * x14)) + (0x2 * ((uint64_t)x13 * x12))))));
- { uint64_t x19 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0xb * (((uint64_t)x10 * x13) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x13 * x10))))));
- { uint64_t x20 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0xb * ((0x2 * ((uint64_t)x8 * x13)) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (0x2 * ((uint64_t)x13 * x8))))))));
- { uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xb * ((0x2 * ((uint64_t)x6 * x13)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + (0x2 * ((uint64_t)x13 * x6)))))))));
- { uint64_t x22 = (((uint64_t)x2 * x2) + (0xb * ((0x2 * ((uint64_t)x4 * x13)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (0x2 * ((uint64_t)x13 * x4))))))))));
- { uint64_t x23 = (x22 >> 0x18);
- { uint32_t x24 = ((uint32_t)x22 & 0xffffff);
- { uint64_t x25 = (x23 + x21);
- { uint64_t x26 = (x25 >> 0x18);
- { uint32_t x27 = ((uint32_t)x25 & 0xffffff);
- { uint64_t x28 = (x26 + x20);
- { uint64_t x29 = (x28 >> 0x18);
- { uint32_t x30 = ((uint32_t)x28 & 0xffffff);
- { uint64_t x31 = (x29 + x19);
- { uint64_t x32 = (x31 >> 0x17);
- { uint32_t x33 = ((uint32_t)x31 & 0x7fffff);
- { uint64_t x34 = (x32 + x18);
- { uint64_t x35 = (x34 >> 0x18);
- { uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- { uint64_t x37 = (x35 + x17);
- { uint64_t x38 = (x37 >> 0x18);
- { uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- { uint64_t x40 = (x38 + x16);
- { uint32_t x41 = (uint32_t) (x40 >> 0x18);
- { uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- { uint64_t x43 = (x41 + x15);
- { uint32_t x44 = (uint32_t) (x43 >> 0x17);
- { uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- { uint64_t x46 = (x24 + ((uint64_t)0xb * x44));
- { uint32_t x47 = (uint32_t) (x46 >> 0x18);
- { uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- { uint32_t x49 = (x47 + x27);
- { uint32_t x50 = (x49 >> 0x18);
- { uint32_t x51 = (x49 & 0xffffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e190m11_8limbs/fesquare.v b/src/Specific/solinas32_2e190m11_8limbs/fesquare.v
deleted file mode 100644
index 4f42c731e..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e190m11_8limbs.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_2e190m11_8limbs/fesquareDisplay.log b/src/Specific/solinas32_2e190m11_8limbs/fesquareDisplay.log
deleted file mode 100644
index 1dfa748d3..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (((uint64_t)x2 * x13) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x13 * x2))))))));
- uint64_t x16 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0xb * (0x2 * ((uint64_t)x13 * x13))));
- uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0xb * ((0x2 * ((uint64_t)x14 * x13)) + (0x2 * ((uint64_t)x13 * x14)))));
- uint64_t x18 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0xb * ((0x2 * ((uint64_t)x12 * x13)) + ((0x2 * ((uint64_t)x14 * x14)) + (0x2 * ((uint64_t)x13 * x12))))));
- uint64_t x19 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0xb * (((uint64_t)x10 * x13) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x13 * x10))))));
- uint64_t x20 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0xb * ((0x2 * ((uint64_t)x8 * x13)) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (0x2 * ((uint64_t)x13 * x8))))))));
- uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xb * ((0x2 * ((uint64_t)x6 * x13)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + (0x2 * ((uint64_t)x13 * x6)))))))));
- uint64_t x22 = (((uint64_t)x2 * x2) + (0xb * ((0x2 * ((uint64_t)x4 * x13)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (0x2 * ((uint64_t)x13 * x4))))))))));
- uint64_t x23 = (x22 >> 0x18);
- uint32_t x24 = ((uint32_t)x22 & 0xffffff);
- uint64_t x25 = (x23 + x21);
- uint64_t x26 = (x25 >> 0x18);
- uint32_t x27 = ((uint32_t)x25 & 0xffffff);
- uint64_t x28 = (x26 + x20);
- uint64_t x29 = (x28 >> 0x18);
- uint32_t x30 = ((uint32_t)x28 & 0xffffff);
- uint64_t x31 = (x29 + x19);
- uint64_t x32 = (x31 >> 0x17);
- uint32_t x33 = ((uint32_t)x31 & 0x7fffff);
- uint64_t x34 = (x32 + x18);
- uint64_t x35 = (x34 >> 0x18);
- uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- uint64_t x37 = (x35 + x17);
- uint64_t x38 = (x37 >> 0x18);
- uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- uint64_t x40 = (x38 + x16);
- uint32_t x41 = (uint32_t) (x40 >> 0x18);
- uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- uint64_t x43 = (x41 + x15);
- uint32_t x44 = (uint32_t) (x43 >> 0x17);
- uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- uint64_t x46 = (x24 + ((uint64_t)0xb * x44));
- uint32_t x47 = (uint32_t) (x46 >> 0x18);
- uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- uint32_t x49 = (x47 + x27);
- uint32_t x50 = (x49 >> 0x18);
- uint32_t x51 = (x49 & 0xffffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e190m11_8limbs/fesquareDisplay.v b/src/Specific/solinas32_2e190m11_8limbs/fesquareDisplay.v
deleted file mode 100644
index 496f03857..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e190m11_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e190m11_8limbs/fesub.c b/src/Specific/solinas32_2e190m11_8limbs/fesub.c
deleted file mode 100644
index b67318bf0..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = ((0x1ffffea + x5) - x19);
- out[1] = ((0x1fffffe + x7) - x21);
- out[2] = ((0x1fffffe + x9) - x23);
- out[3] = ((0xfffffe + x11) - x25);
- out[4] = ((0x1fffffe + x13) - x27);
- out[5] = ((0x1fffffe + x15) - x29);
- out[6] = ((0x1fffffe + x17) - x31);
- out[7] = ((0xfffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e190m11_8limbs/fesub.v b/src/Specific/solinas32_2e190m11_8limbs/fesub.v
deleted file mode 100644
index 0b7bbff01..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e190m11_8limbs.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_2e190m11_8limbs/fesubDisplay.log b/src/Specific/solinas32_2e190m11_8limbs/fesubDisplay.log
deleted file mode 100644
index 0dc02a853..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0xfffffe + x16) - x30), ((0x1fffffe + x17) - x31), ((0x1fffffe + x15) - x29), ((0x1fffffe + x13) - x27), ((0xfffffe + x11) - x25), ((0x1fffffe + x9) - x23), ((0x1fffffe + x7) - x21), ((0x1ffffea + x5) - x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e190m11_8limbs/fesubDisplay.v b/src/Specific/solinas32_2e190m11_8limbs/fesubDisplay.v
deleted file mode 100644
index eb883b881..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e190m11_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e190m11_8limbs/freeze.c b/src/Specific/solinas32_2e190m11_8limbs/freeze.c
deleted file mode 100644
index 564a5bbd7..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xfffff5);
- { uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffff);
- { uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffff);
- { uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0x7fffff);
- { uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0xffffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffff);
- { uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0xffffff);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0x7fffff);
- { uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- { uint32_t x40 = (x39 & 0xfffff5);
- { uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint32_t x44 = (x39 & 0xffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint32_t x48 = (x39 & 0xffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint32_t x52 = (x39 & 0x7fffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint32_t x56 = (x39 & 0xffffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint32_t x60 = (x39 & 0xffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint32_t x64 = (x39 & 0xffffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint32_t x68 = (x39 & 0x7fffff);
- { uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e190m11_8limbs/freeze.v b/src/Specific/solinas32_2e190m11_8limbs/freeze.v
deleted file mode 100644
index cac4d098a..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e190m11_8limbs.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_2e190m11_8limbs/freezeDisplay.log b/src/Specific/solinas32_2e190m11_8limbs/freezeDisplay.log
deleted file mode 100644
index 3c65f2b1e..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xfffff5);
- uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffff);
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffff);
- uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0x7fffff);
- uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0xffffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffff);
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0xffffff);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0x7fffff);
- uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- uint32_t x40 = (x39 & 0xfffff5);
- uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint32_t x44 = (x39 & 0xffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint32_t x48 = (x39 & 0xffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint32_t x52 = (x39 & 0x7fffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint32_t x56 = (x39 & 0xffffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint32_t x60 = (x39 & 0xffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint32_t x64 = (x39 & 0xffffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint32_t x68 = (x39 & 0x7fffff);
- uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e190m11_8limbs/freezeDisplay.v b/src/Specific/solinas32_2e190m11_8limbs/freezeDisplay.v
deleted file mode 100644
index 877a90eb4..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e190m11_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e190m11_8limbs/py_interpreter.sh b/src/Specific/solinas32_2e190m11_8limbs/py_interpreter.sh
deleted file mode 100755
index 4633c6942..000000000
--- a/src/Specific/solinas32_2e190m11_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**190 - 11' -Dmodulus_bytes='23.75' -Da24='121665'
diff --git a/src/Specific/solinas32_2e191m19_8limbs/CurveParameters.v b/src/Specific/solinas32_2e191m19_8limbs/CurveParameters.v
deleted file mode 100644
index f096bdc5e..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^191 - 19
-Base: 23.875
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 23 + 7/8;
- bitwidth := 32;
- s := 2^191;
- c := [(1, 19)];
- carry_chains := Some [seq 0 (pred 8); [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_2e191m19_8limbs/Synthesis.v b/src/Specific/solinas32_2e191m19_8limbs/Synthesis.v
deleted file mode 100644
index fd6b16375..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e191m19_8limbs.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_2e191m19_8limbs/compiler.sh b/src/Specific/solinas32_2e191m19_8limbs/compiler.sh
deleted file mode 100755
index bdff4a3dd..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,23}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<191) - 19' "$@"
diff --git a/src/Specific/solinas32_2e191m19_8limbs/compilerxx.sh b/src/Specific/solinas32_2e191m19_8limbs/compilerxx.sh
deleted file mode 100755
index 041a72d62..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,24,24,24,24,24,23}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<191) - 19' "$@"
diff --git a/src/Specific/solinas32_2e191m19_8limbs/feadd.c b/src/Specific/solinas32_2e191m19_8limbs/feadd.c
deleted file mode 100644
index cc3671f75..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e191m19_8limbs/feadd.v b/src/Specific/solinas32_2e191m19_8limbs/feadd.v
deleted file mode 100644
index ac3ff8362..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e191m19_8limbs.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_2e191m19_8limbs/feaddDisplay.log b/src/Specific/solinas32_2e191m19_8limbs/feaddDisplay.log
deleted file mode 100644
index f25c10903..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e191m19_8limbs/feaddDisplay.v b/src/Specific/solinas32_2e191m19_8limbs/feaddDisplay.v
deleted file mode 100644
index 5cb2b8ffb..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e191m19_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e191m19_8limbs/fecarry.v b/src/Specific/solinas32_2e191m19_8limbs/fecarry.v
deleted file mode 100644
index 36cfe850d..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e191m19_8limbs.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_2e191m19_8limbs/fecarryDisplay.v b/src/Specific/solinas32_2e191m19_8limbs/fecarryDisplay.v
deleted file mode 100644
index c4567b608..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e191m19_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e191m19_8limbs/femul.c b/src/Specific/solinas32_2e191m19_8limbs/femul.c
deleted file mode 100644
index 0d573e836..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint64_t x32 = (((uint64_t)x5 * x30) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + (((uint64_t)x17 * x21) + ((uint64_t)x16 * x19))))))));
- { uint64_t x33 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + (((uint64_t)x13 * x23) + (((uint64_t)x15 * x21) + ((uint64_t)x17 * x19))))))) + (0x13 * (0x2 * ((uint64_t)x16 * x30))));
- { uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0x13 * ((0x2 * ((uint64_t)x17 * x30)) + (0x2 * ((uint64_t)x16 * x31)))));
- { uint64_t x35 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + (((uint64_t)x11 * x21) + ((uint64_t)x13 * x19))))) + (0x13 * ((0x2 * ((uint64_t)x15 * x30)) + ((0x2 * ((uint64_t)x17 * x31)) + (0x2 * ((uint64_t)x16 * x29))))));
- { uint64_t x36 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + ((uint64_t)x11 * x19)))) + (0x13 * ((0x2 * ((uint64_t)x13 * x30)) + ((0x2 * ((uint64_t)x15 * x31)) + ((0x2 * ((uint64_t)x17 * x29)) + (0x2 * ((uint64_t)x16 * x27)))))));
- { uint64_t x37 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((uint64_t)x9 * x19))) + (0x13 * ((0x2 * ((uint64_t)x11 * x30)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((0x2 * ((uint64_t)x17 * x27)) + (0x2 * ((uint64_t)x16 * x25))))))));
- { uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0x13 * ((0x2 * ((uint64_t)x9 * x30)) + ((0x2 * ((uint64_t)x11 * x31)) + ((0x2 * ((uint64_t)x13 * x29)) + ((0x2 * ((uint64_t)x15 * x27)) + ((0x2 * ((uint64_t)x17 * x25)) + (0x2 * ((uint64_t)x16 * x23)))))))));
- { uint64_t x39 = (((uint64_t)x5 * x19) + (0x13 * ((0x2 * ((uint64_t)x7 * x30)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + (0x2 * ((uint64_t)x16 * x21))))))))));
- { uint64_t x40 = (x39 >> 0x18);
- { uint32_t x41 = ((uint32_t)x39 & 0xffffff);
- { uint64_t x42 = (x40 + x38);
- { uint64_t x43 = (x42 >> 0x18);
- { uint32_t x44 = ((uint32_t)x42 & 0xffffff);
- { uint64_t x45 = (x43 + x37);
- { uint64_t x46 = (x45 >> 0x18);
- { uint32_t x47 = ((uint32_t)x45 & 0xffffff);
- { uint64_t x48 = (x46 + x36);
- { uint64_t x49 = (x48 >> 0x18);
- { uint32_t x50 = ((uint32_t)x48 & 0xffffff);
- { uint64_t x51 = (x49 + x35);
- { uint64_t x52 = (x51 >> 0x18);
- { uint32_t x53 = ((uint32_t)x51 & 0xffffff);
- { uint64_t x54 = (x52 + x34);
- { uint64_t x55 = (x54 >> 0x18);
- { uint32_t x56 = ((uint32_t)x54 & 0xffffff);
- { uint64_t x57 = (x55 + x33);
- { uint32_t x58 = (uint32_t) (x57 >> 0x18);
- { uint32_t x59 = ((uint32_t)x57 & 0xffffff);
- { uint64_t x60 = (x58 + x32);
- { uint32_t x61 = (uint32_t) (x60 >> 0x17);
- { uint32_t x62 = ((uint32_t)x60 & 0x7fffff);
- { uint64_t x63 = (x41 + ((uint64_t)0x13 * x61));
- { uint32_t x64 = (uint32_t) (x63 >> 0x18);
- { uint32_t x65 = ((uint32_t)x63 & 0xffffff);
- { uint32_t x66 = (x64 + x44);
- { uint32_t x67 = (x66 >> 0x18);
- { uint32_t x68 = (x66 & 0xffffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e191m19_8limbs/femul.v b/src/Specific/solinas32_2e191m19_8limbs/femul.v
deleted file mode 100644
index 346cc167d..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e191m19_8limbs.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_2e191m19_8limbs/femulDisplay.log b/src/Specific/solinas32_2e191m19_8limbs/femulDisplay.log
deleted file mode 100644
index 47a66e92a..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x32 = (((uint64_t)x5 * x30) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + (((uint64_t)x17 * x21) + ((uint64_t)x16 * x19))))))));
- uint64_t x33 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + (((uint64_t)x13 * x23) + (((uint64_t)x15 * x21) + ((uint64_t)x17 * x19))))))) + (0x13 * (0x2 * ((uint64_t)x16 * x30))));
- uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0x13 * ((0x2 * ((uint64_t)x17 * x30)) + (0x2 * ((uint64_t)x16 * x31)))));
- uint64_t x35 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + (((uint64_t)x11 * x21) + ((uint64_t)x13 * x19))))) + (0x13 * ((0x2 * ((uint64_t)x15 * x30)) + ((0x2 * ((uint64_t)x17 * x31)) + (0x2 * ((uint64_t)x16 * x29))))));
- uint64_t x36 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + ((uint64_t)x11 * x19)))) + (0x13 * ((0x2 * ((uint64_t)x13 * x30)) + ((0x2 * ((uint64_t)x15 * x31)) + ((0x2 * ((uint64_t)x17 * x29)) + (0x2 * ((uint64_t)x16 * x27)))))));
- uint64_t x37 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((uint64_t)x9 * x19))) + (0x13 * ((0x2 * ((uint64_t)x11 * x30)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((0x2 * ((uint64_t)x17 * x27)) + (0x2 * ((uint64_t)x16 * x25))))))));
- uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0x13 * ((0x2 * ((uint64_t)x9 * x30)) + ((0x2 * ((uint64_t)x11 * x31)) + ((0x2 * ((uint64_t)x13 * x29)) + ((0x2 * ((uint64_t)x15 * x27)) + ((0x2 * ((uint64_t)x17 * x25)) + (0x2 * ((uint64_t)x16 * x23)))))))));
- uint64_t x39 = (((uint64_t)x5 * x19) + (0x13 * ((0x2 * ((uint64_t)x7 * x30)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + (0x2 * ((uint64_t)x16 * x21))))))))));
- uint64_t x40 = (x39 >> 0x18);
- uint32_t x41 = ((uint32_t)x39 & 0xffffff);
- uint64_t x42 = (x40 + x38);
- uint64_t x43 = (x42 >> 0x18);
- uint32_t x44 = ((uint32_t)x42 & 0xffffff);
- uint64_t x45 = (x43 + x37);
- uint64_t x46 = (x45 >> 0x18);
- uint32_t x47 = ((uint32_t)x45 & 0xffffff);
- uint64_t x48 = (x46 + x36);
- uint64_t x49 = (x48 >> 0x18);
- uint32_t x50 = ((uint32_t)x48 & 0xffffff);
- uint64_t x51 = (x49 + x35);
- uint64_t x52 = (x51 >> 0x18);
- uint32_t x53 = ((uint32_t)x51 & 0xffffff);
- uint64_t x54 = (x52 + x34);
- uint64_t x55 = (x54 >> 0x18);
- uint32_t x56 = ((uint32_t)x54 & 0xffffff);
- uint64_t x57 = (x55 + x33);
- uint32_t x58 = (uint32_t) (x57 >> 0x18);
- uint32_t x59 = ((uint32_t)x57 & 0xffffff);
- uint64_t x60 = (x58 + x32);
- uint32_t x61 = (uint32_t) (x60 >> 0x17);
- uint32_t x62 = ((uint32_t)x60 & 0x7fffff);
- uint64_t x63 = (x41 + ((uint64_t)0x13 * x61));
- uint32_t x64 = (uint32_t) (x63 >> 0x18);
- uint32_t x65 = ((uint32_t)x63 & 0xffffff);
- uint32_t x66 = (x64 + x44);
- uint32_t x67 = (x66 >> 0x18);
- uint32_t x68 = (x66 & 0xffffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e191m19_8limbs/femulDisplay.v b/src/Specific/solinas32_2e191m19_8limbs/femulDisplay.v
deleted file mode 100644
index 973b8c90e..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e191m19_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e191m19_8limbs/fesquare.c b/src/Specific/solinas32_2e191m19_8limbs/fesquare.c
deleted file mode 100644
index e801601b2..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (((uint64_t)x2 * x13) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x13 * x2))))))));
- { uint64_t x16 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x13 * (0x2 * ((uint64_t)x13 * x13))));
- { uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x13 * ((0x2 * ((uint64_t)x14 * x13)) + (0x2 * ((uint64_t)x13 * x14)))));
- { uint64_t x18 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x13 * ((0x2 * ((uint64_t)x12 * x13)) + ((0x2 * ((uint64_t)x14 * x14)) + (0x2 * ((uint64_t)x13 * x12))))));
- { uint64_t x19 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x13 * ((0x2 * ((uint64_t)x10 * x13)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (0x2 * ((uint64_t)x13 * x10)))))));
- { uint64_t x20 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x13 * ((0x2 * ((uint64_t)x8 * x13)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + (0x2 * ((uint64_t)x13 * x8))))))));
- { uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x13 * ((0x2 * ((uint64_t)x6 * x13)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + (0x2 * ((uint64_t)x13 * x6)))))))));
- { uint64_t x22 = (((uint64_t)x2 * x2) + (0x13 * ((0x2 * ((uint64_t)x4 * x13)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (0x2 * ((uint64_t)x13 * x4))))))))));
- { uint64_t x23 = (x22 >> 0x18);
- { uint32_t x24 = ((uint32_t)x22 & 0xffffff);
- { uint64_t x25 = (x23 + x21);
- { uint64_t x26 = (x25 >> 0x18);
- { uint32_t x27 = ((uint32_t)x25 & 0xffffff);
- { uint64_t x28 = (x26 + x20);
- { uint64_t x29 = (x28 >> 0x18);
- { uint32_t x30 = ((uint32_t)x28 & 0xffffff);
- { uint64_t x31 = (x29 + x19);
- { uint64_t x32 = (x31 >> 0x18);
- { uint32_t x33 = ((uint32_t)x31 & 0xffffff);
- { uint64_t x34 = (x32 + x18);
- { uint64_t x35 = (x34 >> 0x18);
- { uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- { uint64_t x37 = (x35 + x17);
- { uint64_t x38 = (x37 >> 0x18);
- { uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- { uint64_t x40 = (x38 + x16);
- { uint32_t x41 = (uint32_t) (x40 >> 0x18);
- { uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- { uint64_t x43 = (x41 + x15);
- { uint32_t x44 = (uint32_t) (x43 >> 0x17);
- { uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- { uint64_t x46 = (x24 + ((uint64_t)0x13 * x44));
- { uint32_t x47 = (uint32_t) (x46 >> 0x18);
- { uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- { uint32_t x49 = (x47 + x27);
- { uint32_t x50 = (x49 >> 0x18);
- { uint32_t x51 = (x49 & 0xffffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e191m19_8limbs/fesquare.v b/src/Specific/solinas32_2e191m19_8limbs/fesquare.v
deleted file mode 100644
index bd21f804a..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e191m19_8limbs.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_2e191m19_8limbs/fesquareDisplay.log b/src/Specific/solinas32_2e191m19_8limbs/fesquareDisplay.log
deleted file mode 100644
index 380a3010e..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (((uint64_t)x2 * x13) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x13 * x2))))))));
- uint64_t x16 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x13 * (0x2 * ((uint64_t)x13 * x13))));
- uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x13 * ((0x2 * ((uint64_t)x14 * x13)) + (0x2 * ((uint64_t)x13 * x14)))));
- uint64_t x18 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x13 * ((0x2 * ((uint64_t)x12 * x13)) + ((0x2 * ((uint64_t)x14 * x14)) + (0x2 * ((uint64_t)x13 * x12))))));
- uint64_t x19 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x13 * ((0x2 * ((uint64_t)x10 * x13)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (0x2 * ((uint64_t)x13 * x10)))))));
- uint64_t x20 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x13 * ((0x2 * ((uint64_t)x8 * x13)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + (0x2 * ((uint64_t)x13 * x8))))))));
- uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x13 * ((0x2 * ((uint64_t)x6 * x13)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + (0x2 * ((uint64_t)x13 * x6)))))))));
- uint64_t x22 = (((uint64_t)x2 * x2) + (0x13 * ((0x2 * ((uint64_t)x4 * x13)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (0x2 * ((uint64_t)x13 * x4))))))))));
- uint64_t x23 = (x22 >> 0x18);
- uint32_t x24 = ((uint32_t)x22 & 0xffffff);
- uint64_t x25 = (x23 + x21);
- uint64_t x26 = (x25 >> 0x18);
- uint32_t x27 = ((uint32_t)x25 & 0xffffff);
- uint64_t x28 = (x26 + x20);
- uint64_t x29 = (x28 >> 0x18);
- uint32_t x30 = ((uint32_t)x28 & 0xffffff);
- uint64_t x31 = (x29 + x19);
- uint64_t x32 = (x31 >> 0x18);
- uint32_t x33 = ((uint32_t)x31 & 0xffffff);
- uint64_t x34 = (x32 + x18);
- uint64_t x35 = (x34 >> 0x18);
- uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- uint64_t x37 = (x35 + x17);
- uint64_t x38 = (x37 >> 0x18);
- uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- uint64_t x40 = (x38 + x16);
- uint32_t x41 = (uint32_t) (x40 >> 0x18);
- uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- uint64_t x43 = (x41 + x15);
- uint32_t x44 = (uint32_t) (x43 >> 0x17);
- uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- uint64_t x46 = (x24 + ((uint64_t)0x13 * x44));
- uint32_t x47 = (uint32_t) (x46 >> 0x18);
- uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- uint32_t x49 = (x47 + x27);
- uint32_t x50 = (x49 >> 0x18);
- uint32_t x51 = (x49 & 0xffffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e191m19_8limbs/fesquareDisplay.v b/src/Specific/solinas32_2e191m19_8limbs/fesquareDisplay.v
deleted file mode 100644
index 4c3bcc97c..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e191m19_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e191m19_8limbs/fesub.c b/src/Specific/solinas32_2e191m19_8limbs/fesub.c
deleted file mode 100644
index 7749acd3d..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = ((0x1ffffda + x5) - x19);
- out[1] = ((0x1fffffe + x7) - x21);
- out[2] = ((0x1fffffe + x9) - x23);
- out[3] = ((0x1fffffe + x11) - x25);
- out[4] = ((0x1fffffe + x13) - x27);
- out[5] = ((0x1fffffe + x15) - x29);
- out[6] = ((0x1fffffe + x17) - x31);
- out[7] = ((0xfffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e191m19_8limbs/fesub.v b/src/Specific/solinas32_2e191m19_8limbs/fesub.v
deleted file mode 100644
index 7914a06d8..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e191m19_8limbs.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_2e191m19_8limbs/fesubDisplay.log b/src/Specific/solinas32_2e191m19_8limbs/fesubDisplay.log
deleted file mode 100644
index af93c846a..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0xfffffe + x16) - x30), ((0x1fffffe + x17) - x31), ((0x1fffffe + x15) - x29), ((0x1fffffe + x13) - x27), ((0x1fffffe + x11) - x25), ((0x1fffffe + x9) - x23), ((0x1fffffe + x7) - x21), ((0x1ffffda + x5) - x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e191m19_8limbs/fesubDisplay.v b/src/Specific/solinas32_2e191m19_8limbs/fesubDisplay.v
deleted file mode 100644
index 3f50790bb..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e191m19_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e191m19_8limbs/freeze.c b/src/Specific/solinas32_2e191m19_8limbs/freeze.c
deleted file mode 100644
index fd2a1675a..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffed);
- { uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffff);
- { uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffff);
- { uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0xffffff);
- { uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0xffffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffff);
- { uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0xffffff);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0x7fffff);
- { uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- { uint32_t x40 = (x39 & 0xffffed);
- { uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint32_t x44 = (x39 & 0xffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint32_t x48 = (x39 & 0xffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint32_t x52 = (x39 & 0xffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint32_t x56 = (x39 & 0xffffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint32_t x60 = (x39 & 0xffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint32_t x64 = (x39 & 0xffffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint32_t x68 = (x39 & 0x7fffff);
- { uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e191m19_8limbs/freeze.v b/src/Specific/solinas32_2e191m19_8limbs/freeze.v
deleted file mode 100644
index fac64429a..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e191m19_8limbs.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_2e191m19_8limbs/freezeDisplay.log b/src/Specific/solinas32_2e191m19_8limbs/freezeDisplay.log
deleted file mode 100644
index d864e8413..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffed);
- uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffff);
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffff);
- uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0xffffff);
- uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0xffffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffff);
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0xffffff);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0x7fffff);
- uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- uint32_t x40 = (x39 & 0xffffed);
- uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint32_t x44 = (x39 & 0xffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint32_t x48 = (x39 & 0xffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint32_t x52 = (x39 & 0xffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint32_t x56 = (x39 & 0xffffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint32_t x60 = (x39 & 0xffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint32_t x64 = (x39 & 0xffffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint32_t x68 = (x39 & 0x7fffff);
- uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e191m19_8limbs/freezeDisplay.v b/src/Specific/solinas32_2e191m19_8limbs/freezeDisplay.v
deleted file mode 100644
index 9bcd64f5c..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e191m19_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e191m19_8limbs/py_interpreter.sh b/src/Specific/solinas32_2e191m19_8limbs/py_interpreter.sh
deleted file mode 100755
index 14e582461..000000000
--- a/src/Specific/solinas32_2e191m19_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**191 - 19' -Dmodulus_bytes='23.875' -Da24='121665'
diff --git a/src/Specific/solinas32_2e191m19_9limbs/CurveParameters.v b/src/Specific/solinas32_2e191m19_9limbs/CurveParameters.v
deleted file mode 100644
index df449528f..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^191 - 19
-Base: 21 + 2/9
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 21 + 2/9;
- bitwidth := 32;
- s := 2^191;
- c := [(1, 19)];
- carry_chains := Some [seq 0 (pred 9); [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_2e191m19_9limbs/Synthesis.v b/src/Specific/solinas32_2e191m19_9limbs/Synthesis.v
deleted file mode 100644
index ce60e0e58..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e191m19_9limbs.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_2e191m19_9limbs/compiler.sh b/src/Specific/solinas32_2e191m19_9limbs/compiler.sh
deleted file mode 100755
index d793eba27..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,21,22,21,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<191) - 19' "$@"
diff --git a/src/Specific/solinas32_2e191m19_9limbs/compilerxx.sh b/src/Specific/solinas32_2e191m19_9limbs/compilerxx.sh
deleted file mode 100755
index 0c12c48dd..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,21,22,21,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<191) - 19' "$@"
diff --git a/src/Specific/solinas32_2e191m19_9limbs/feadd.c b/src/Specific/solinas32_2e191m19_9limbs/feadd.c
deleted file mode 100644
index e1188fdec..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e191m19_9limbs/feadd.v b/src/Specific/solinas32_2e191m19_9limbs/feadd.v
deleted file mode 100644
index b550d9fa0..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e191m19_9limbs.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_2e191m19_9limbs/feaddDisplay.log b/src/Specific/solinas32_2e191m19_9limbs/feaddDisplay.log
deleted file mode 100644
index e26bb40f8..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e191m19_9limbs/feaddDisplay.v b/src/Specific/solinas32_2e191m19_9limbs/feaddDisplay.v
deleted file mode 100644
index 62c4da4c6..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e191m19_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e191m19_9limbs/fecarry.v b/src/Specific/solinas32_2e191m19_9limbs/fecarry.v
deleted file mode 100644
index 3054a3687..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e191m19_9limbs.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_2e191m19_9limbs/fecarryDisplay.v b/src/Specific/solinas32_2e191m19_9limbs/fecarryDisplay.v
deleted file mode 100644
index 753b6bba3..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e191m19_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e191m19_9limbs/femul.c b/src/Specific/solinas32_2e191m19_9limbs/femul.c
deleted file mode 100644
index ee224ceb6..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/femul.c
+++ /dev/null
@@ -1,71 +0,0 @@
-static void femul(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- { uint64_t x36 = (((uint64_t)x5 * x34) + ((0x2 * ((uint64_t)x7 * x35)) + ((0x2 * ((uint64_t)x9 * x33)) + ((0x2 * ((uint64_t)x11 * x31)) + (((uint64_t)x13 * x29) + ((0x2 * ((uint64_t)x15 * x27)) + ((0x2 * ((uint64_t)x17 * x25)) + ((0x2 * ((uint64_t)x19 * x23)) + ((uint64_t)x18 * x21)))))))));
- { uint64_t x37 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + ((uint64_t)x19 * x21)))))))) + (0x13 * ((uint64_t)x18 * x34)));
- { uint64_t x38 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + ((0x2 * ((uint64_t)x15 * x23)) + ((uint64_t)x17 * x21))))))) + (0x13 * (((uint64_t)x19 * x34) + ((uint64_t)x18 * x35))));
- { uint64_t x39 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + (((uint64_t)x13 * x23) + ((uint64_t)x15 * x21)))))) + (0x13 * (((uint64_t)x17 * x34) + (((uint64_t)x19 * x35) + ((uint64_t)x18 * x33)))));
- { uint64_t x40 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((0x2 * ((uint64_t)x11 * x23)) + ((uint64_t)x13 * x21))))) + (0x13 * ((0x2 * ((uint64_t)x15 * x34)) + ((0x2 * ((uint64_t)x17 * x35)) + ((0x2 * ((uint64_t)x19 * x33)) + (0x2 * ((uint64_t)x18 * x31)))))));
- { uint64_t x41 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((uint64_t)x11 * x21)))) + (0x13 * (((uint64_t)x13 * x34) + ((0x2 * ((uint64_t)x15 * x35)) + ((0x2 * ((uint64_t)x17 * x33)) + ((0x2 * ((uint64_t)x19 * x31)) + ((uint64_t)x18 * x29)))))));
- { uint64_t x42 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((uint64_t)x9 * x21))) + (0x13 * (((uint64_t)x11 * x34) + (((uint64_t)x13 * x35) + ((0x2 * ((uint64_t)x15 * x33)) + ((0x2 * ((uint64_t)x17 * x31)) + (((uint64_t)x19 * x29) + ((uint64_t)x18 * x27))))))));
- { uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0x13 * (((uint64_t)x9 * x34) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + ((0x2 * ((uint64_t)x15 * x31)) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + ((uint64_t)x18 * x25)))))))));
- { uint64_t x44 = (((uint64_t)x5 * x21) + (0x13 * ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23)))))))))));
- { uint64_t x45 = (x44 >> 0x16);
- { uint32_t x46 = ((uint32_t)x44 & 0x3fffff);
- { uint64_t x47 = (x45 + x43);
- { uint64_t x48 = (x47 >> 0x15);
- { uint32_t x49 = ((uint32_t)x47 & 0x1fffff);
- { uint64_t x50 = (x48 + x42);
- { uint64_t x51 = (x50 >> 0x15);
- { uint32_t x52 = ((uint32_t)x50 & 0x1fffff);
- { uint64_t x53 = (x51 + x41);
- { uint64_t x54 = (x53 >> 0x15);
- { uint32_t x55 = ((uint32_t)x53 & 0x1fffff);
- { uint64_t x56 = (x54 + x40);
- { uint32_t x57 = (uint32_t) (x56 >> 0x16);
- { uint32_t x58 = ((uint32_t)x56 & 0x3fffff);
- { uint64_t x59 = (x57 + x39);
- { uint32_t x60 = (uint32_t) (x59 >> 0x15);
- { uint32_t x61 = ((uint32_t)x59 & 0x1fffff);
- { uint64_t x62 = (x60 + x38);
- { uint32_t x63 = (uint32_t) (x62 >> 0x15);
- { uint32_t x64 = ((uint32_t)x62 & 0x1fffff);
- { uint64_t x65 = (x63 + x37);
- { uint32_t x66 = (uint32_t) (x65 >> 0x15);
- { uint32_t x67 = ((uint32_t)x65 & 0x1fffff);
- { uint64_t x68 = (x66 + x36);
- { uint32_t x69 = (uint32_t) (x68 >> 0x15);
- { uint32_t x70 = ((uint32_t)x68 & 0x1fffff);
- { uint64_t x71 = (x46 + ((uint64_t)0x13 * x69));
- { uint32_t x72 = (uint32_t) (x71 >> 0x16);
- { uint32_t x73 = ((uint32_t)x71 & 0x3fffff);
- { uint32_t x74 = (x72 + x49);
- { uint32_t x75 = (x74 >> 0x15);
- { uint32_t x76 = (x74 & 0x1fffff);
- out[0] = x73;
- out[1] = x76;
- out[2] = (x75 + x52);
- out[3] = x55;
- out[4] = x58;
- out[5] = x61;
- out[6] = x64;
- out[7] = x67;
- out[8] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e191m19_9limbs/femul.v b/src/Specific/solinas32_2e191m19_9limbs/femul.v
deleted file mode 100644
index 2b4d49af8..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e191m19_9limbs.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_2e191m19_9limbs/femulDisplay.log b/src/Specific/solinas32_2e191m19_9limbs/femulDisplay.log
deleted file mode 100644
index b6fd8eb84..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/femulDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint64_t x36 = (((uint64_t)x5 * x34) + ((0x2 * ((uint64_t)x7 * x35)) + ((0x2 * ((uint64_t)x9 * x33)) + ((0x2 * ((uint64_t)x11 * x31)) + (((uint64_t)x13 * x29) + ((0x2 * ((uint64_t)x15 * x27)) + ((0x2 * ((uint64_t)x17 * x25)) + ((0x2 * ((uint64_t)x19 * x23)) + ((uint64_t)x18 * x21)))))))));
- uint64_t x37 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + ((uint64_t)x19 * x21)))))))) + (0x13 * ((uint64_t)x18 * x34)));
- uint64_t x38 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + ((0x2 * ((uint64_t)x15 * x23)) + ((uint64_t)x17 * x21))))))) + (0x13 * (((uint64_t)x19 * x34) + ((uint64_t)x18 * x35))));
- uint64_t x39 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + (((uint64_t)x13 * x23) + ((uint64_t)x15 * x21)))))) + (0x13 * (((uint64_t)x17 * x34) + (((uint64_t)x19 * x35) + ((uint64_t)x18 * x33)))));
- uint64_t x40 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((0x2 * ((uint64_t)x11 * x23)) + ((uint64_t)x13 * x21))))) + (0x13 * ((0x2 * ((uint64_t)x15 * x34)) + ((0x2 * ((uint64_t)x17 * x35)) + ((0x2 * ((uint64_t)x19 * x33)) + (0x2 * ((uint64_t)x18 * x31)))))));
- uint64_t x41 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((uint64_t)x11 * x21)))) + (0x13 * (((uint64_t)x13 * x34) + ((0x2 * ((uint64_t)x15 * x35)) + ((0x2 * ((uint64_t)x17 * x33)) + ((0x2 * ((uint64_t)x19 * x31)) + ((uint64_t)x18 * x29)))))));
- uint64_t x42 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((uint64_t)x9 * x21))) + (0x13 * (((uint64_t)x11 * x34) + (((uint64_t)x13 * x35) + ((0x2 * ((uint64_t)x15 * x33)) + ((0x2 * ((uint64_t)x17 * x31)) + (((uint64_t)x19 * x29) + ((uint64_t)x18 * x27))))))));
- uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0x13 * (((uint64_t)x9 * x34) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + ((0x2 * ((uint64_t)x15 * x31)) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + ((uint64_t)x18 * x25)))))))));
- uint64_t x44 = (((uint64_t)x5 * x21) + (0x13 * ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23)))))))))));
- uint64_t x45 = (x44 >> 0x16);
- uint32_t x46 = ((uint32_t)x44 & 0x3fffff);
- uint64_t x47 = (x45 + x43);
- uint64_t x48 = (x47 >> 0x15);
- uint32_t x49 = ((uint32_t)x47 & 0x1fffff);
- uint64_t x50 = (x48 + x42);
- uint64_t x51 = (x50 >> 0x15);
- uint32_t x52 = ((uint32_t)x50 & 0x1fffff);
- uint64_t x53 = (x51 + x41);
- uint64_t x54 = (x53 >> 0x15);
- uint32_t x55 = ((uint32_t)x53 & 0x1fffff);
- uint64_t x56 = (x54 + x40);
- uint32_t x57 = (uint32_t) (x56 >> 0x16);
- uint32_t x58 = ((uint32_t)x56 & 0x3fffff);
- uint64_t x59 = (x57 + x39);
- uint32_t x60 = (uint32_t) (x59 >> 0x15);
- uint32_t x61 = ((uint32_t)x59 & 0x1fffff);
- uint64_t x62 = (x60 + x38);
- uint32_t x63 = (uint32_t) (x62 >> 0x15);
- uint32_t x64 = ((uint32_t)x62 & 0x1fffff);
- uint64_t x65 = (x63 + x37);
- uint32_t x66 = (uint32_t) (x65 >> 0x15);
- uint32_t x67 = ((uint32_t)x65 & 0x1fffff);
- uint64_t x68 = (x66 + x36);
- uint32_t x69 = (uint32_t) (x68 >> 0x15);
- uint32_t x70 = ((uint32_t)x68 & 0x1fffff);
- uint64_t x71 = (x46 + ((uint64_t)0x13 * x69));
- uint32_t x72 = (uint32_t) (x71 >> 0x16);
- uint32_t x73 = ((uint32_t)x71 & 0x3fffff);
- uint32_t x74 = (x72 + x49);
- uint32_t x75 = (x74 >> 0x15);
- uint32_t x76 = (x74 & 0x1fffff);
- return (Return x70, Return x67, Return x64, Return x61, Return x58, Return x55, (x75 + x52), Return x76, Return x73))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e191m19_9limbs/femulDisplay.v b/src/Specific/solinas32_2e191m19_9limbs/femulDisplay.v
deleted file mode 100644
index f53cff5c1..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e191m19_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e191m19_9limbs/fesquare.c b/src/Specific/solinas32_2e191m19_9limbs/fesquare.c
deleted file mode 100644
index ac2392779..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/fesquare.c
+++ /dev/null
@@ -1,62 +0,0 @@
-static void fesquare(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x17 = (((uint64_t)x2 * x15) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x15 * x2)))))))));
- { uint64_t x18 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x13 * ((uint64_t)x15 * x15)));
- { uint64_t x19 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x13 * (((uint64_t)x16 * x15) + ((uint64_t)x15 * x16))));
- { uint64_t x20 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x13 * (((uint64_t)x14 * x15) + (((uint64_t)x16 * x16) + ((uint64_t)x15 * x14)))));
- { uint64_t x21 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x13 * ((0x2 * ((uint64_t)x12 * x15)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (0x2 * ((uint64_t)x15 * x12)))))));
- { uint64_t x22 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x13 * (((uint64_t)x10 * x15) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + ((uint64_t)x15 * x10)))))));
- { uint64_t x23 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x13 * (((uint64_t)x8 * x15) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + ((uint64_t)x15 * x8))))))));
- { uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x13 * (((uint64_t)x6 * x15) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((uint64_t)x15 * x6)))))))));
- { uint64_t x25 = (((uint64_t)x2 * x2) + (0x13 * ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4)))))))))));
- { uint64_t x26 = (x25 >> 0x16);
- { uint32_t x27 = ((uint32_t)x25 & 0x3fffff);
- { uint64_t x28 = (x26 + x24);
- { uint64_t x29 = (x28 >> 0x15);
- { uint32_t x30 = ((uint32_t)x28 & 0x1fffff);
- { uint64_t x31 = (x29 + x23);
- { uint64_t x32 = (x31 >> 0x15);
- { uint32_t x33 = ((uint32_t)x31 & 0x1fffff);
- { uint64_t x34 = (x32 + x22);
- { uint64_t x35 = (x34 >> 0x15);
- { uint32_t x36 = ((uint32_t)x34 & 0x1fffff);
- { uint64_t x37 = (x35 + x21);
- { uint32_t x38 = (uint32_t) (x37 >> 0x16);
- { uint32_t x39 = ((uint32_t)x37 & 0x3fffff);
- { uint64_t x40 = (x38 + x20);
- { uint32_t x41 = (uint32_t) (x40 >> 0x15);
- { uint32_t x42 = ((uint32_t)x40 & 0x1fffff);
- { uint64_t x43 = (x41 + x19);
- { uint32_t x44 = (uint32_t) (x43 >> 0x15);
- { uint32_t x45 = ((uint32_t)x43 & 0x1fffff);
- { uint64_t x46 = (x44 + x18);
- { uint32_t x47 = (uint32_t) (x46 >> 0x15);
- { uint32_t x48 = ((uint32_t)x46 & 0x1fffff);
- { uint64_t x49 = (x47 + x17);
- { uint32_t x50 = (uint32_t) (x49 >> 0x15);
- { uint32_t x51 = ((uint32_t)x49 & 0x1fffff);
- { uint64_t x52 = (x27 + ((uint64_t)0x13 * x50));
- { uint32_t x53 = (uint32_t) (x52 >> 0x16);
- { uint32_t x54 = ((uint32_t)x52 & 0x3fffff);
- { uint32_t x55 = (x53 + x30);
- { uint32_t x56 = (x55 >> 0x15);
- { uint32_t x57 = (x55 & 0x1fffff);
- out[0] = x54;
- out[1] = x57;
- out[2] = (x56 + x33);
- out[3] = x36;
- out[4] = x39;
- out[5] = x42;
- out[6] = x45;
- out[7] = x48;
- out[8] = x51;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e191m19_9limbs/fesquare.v b/src/Specific/solinas32_2e191m19_9limbs/fesquare.v
deleted file mode 100644
index d83afa84d..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e191m19_9limbs.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_2e191m19_9limbs/fesquareDisplay.log b/src/Specific/solinas32_2e191m19_9limbs/fesquareDisplay.log
deleted file mode 100644
index 94974bf04..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x17 = (((uint64_t)x2 * x15) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x15 * x2)))))))));
- uint64_t x18 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x13 * ((uint64_t)x15 * x15)));
- uint64_t x19 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x13 * (((uint64_t)x16 * x15) + ((uint64_t)x15 * x16))));
- uint64_t x20 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x13 * (((uint64_t)x14 * x15) + (((uint64_t)x16 * x16) + ((uint64_t)x15 * x14)))));
- uint64_t x21 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x13 * ((0x2 * ((uint64_t)x12 * x15)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (0x2 * ((uint64_t)x15 * x12)))))));
- uint64_t x22 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x13 * (((uint64_t)x10 * x15) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + ((uint64_t)x15 * x10)))))));
- uint64_t x23 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x13 * (((uint64_t)x8 * x15) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + ((uint64_t)x15 * x8))))))));
- uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x13 * (((uint64_t)x6 * x15) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((uint64_t)x15 * x6)))))))));
- uint64_t x25 = (((uint64_t)x2 * x2) + (0x13 * ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4)))))))))));
- uint64_t x26 = (x25 >> 0x16);
- uint32_t x27 = ((uint32_t)x25 & 0x3fffff);
- uint64_t x28 = (x26 + x24);
- uint64_t x29 = (x28 >> 0x15);
- uint32_t x30 = ((uint32_t)x28 & 0x1fffff);
- uint64_t x31 = (x29 + x23);
- uint64_t x32 = (x31 >> 0x15);
- uint32_t x33 = ((uint32_t)x31 & 0x1fffff);
- uint64_t x34 = (x32 + x22);
- uint64_t x35 = (x34 >> 0x15);
- uint32_t x36 = ((uint32_t)x34 & 0x1fffff);
- uint64_t x37 = (x35 + x21);
- uint32_t x38 = (uint32_t) (x37 >> 0x16);
- uint32_t x39 = ((uint32_t)x37 & 0x3fffff);
- uint64_t x40 = (x38 + x20);
- uint32_t x41 = (uint32_t) (x40 >> 0x15);
- uint32_t x42 = ((uint32_t)x40 & 0x1fffff);
- uint64_t x43 = (x41 + x19);
- uint32_t x44 = (uint32_t) (x43 >> 0x15);
- uint32_t x45 = ((uint32_t)x43 & 0x1fffff);
- uint64_t x46 = (x44 + x18);
- uint32_t x47 = (uint32_t) (x46 >> 0x15);
- uint32_t x48 = ((uint32_t)x46 & 0x1fffff);
- uint64_t x49 = (x47 + x17);
- uint32_t x50 = (uint32_t) (x49 >> 0x15);
- uint32_t x51 = ((uint32_t)x49 & 0x1fffff);
- uint64_t x52 = (x27 + ((uint64_t)0x13 * x50));
- uint32_t x53 = (uint32_t) (x52 >> 0x16);
- uint32_t x54 = ((uint32_t)x52 & 0x3fffff);
- uint32_t x55 = (x53 + x30);
- uint32_t x56 = (x55 >> 0x15);
- uint32_t x57 = (x55 & 0x1fffff);
- return (Return x51, Return x48, Return x45, Return x42, Return x39, Return x36, (x56 + x33), Return x57, Return x54))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e191m19_9limbs/fesquareDisplay.v b/src/Specific/solinas32_2e191m19_9limbs/fesquareDisplay.v
deleted file mode 100644
index 538d70712..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e191m19_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e191m19_9limbs/fesub.c b/src/Specific/solinas32_2e191m19_9limbs/fesub.c
deleted file mode 100644
index 387af353e..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/fesub.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void fesub(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = ((0x7fffda + x5) - x21);
- out[1] = ((0x3ffffe + x7) - x23);
- out[2] = ((0x3ffffe + x9) - x25);
- out[3] = ((0x3ffffe + x11) - x27);
- out[4] = ((0x7ffffe + x13) - x29);
- out[5] = ((0x3ffffe + x15) - x31);
- out[6] = ((0x3ffffe + x17) - x33);
- out[7] = ((0x3ffffe + x19) - x35);
- out[8] = ((0x3ffffe + x18) - x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e191m19_9limbs/fesub.v b/src/Specific/solinas32_2e191m19_9limbs/fesub.v
deleted file mode 100644
index c844a2503..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e191m19_9limbs.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_2e191m19_9limbs/fesubDisplay.log b/src/Specific/solinas32_2e191m19_9limbs/fesubDisplay.log
deleted file mode 100644
index 633c454ee..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- (((0x3ffffe + x18) - x34), ((0x3ffffe + x19) - x35), ((0x3ffffe + x17) - x33), ((0x3ffffe + x15) - x31), ((0x7ffffe + x13) - x29), ((0x3ffffe + x11) - x27), ((0x3ffffe + x9) - x25), ((0x3ffffe + x7) - x23), ((0x7fffda + x5) - x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e191m19_9limbs/fesubDisplay.v b/src/Specific/solinas32_2e191m19_9limbs/fesubDisplay.v
deleted file mode 100644
index ae73fb6b4..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e191m19_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e191m19_9limbs/freeze.c b/src/Specific/solinas32_2e191m19_9limbs/freeze.c
deleted file mode 100644
index 0207bbb81..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/freeze.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void freeze(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffed);
- { uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0x1fffff);
- { uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0x1fffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x8, 0x1fffff);
- { uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0x3fffff);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0x1fffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0x1fffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0x1fffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0x1fffff);
- { uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- { uint32_t x45 = (x44 & 0x3fffed);
- { uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- { uint32_t x49 = (x44 & 0x1fffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- { uint32_t x53 = (x44 & 0x1fffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- { uint32_t x57 = (x44 & 0x1fffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- { uint32_t x61 = (x44 & 0x3fffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- { uint32_t x65 = (x44 & 0x1fffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- { uint32_t x69 = (x44 & 0x1fffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- { uint32_t x73 = (x44 & 0x1fffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- { uint32_t x77 = (x44 & 0x1fffff);
- { uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- out[0] = x47;
- out[1] = x51;
- out[2] = x55;
- out[3] = x59;
- out[4] = x63;
- out[5] = x67;
- out[6] = x71;
- out[7] = x75;
- out[8] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e191m19_9limbs/freeze.v b/src/Specific/solinas32_2e191m19_9limbs/freeze.v
deleted file mode 100644
index aa36e0dc3..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e191m19_9limbs.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_2e191m19_9limbs/freezeDisplay.log b/src/Specific/solinas32_2e191m19_9limbs/freezeDisplay.log
deleted file mode 100644
index 699e96a4d..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffed);
- uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0x1fffff);
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0x1fffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x8, 0x1fffff);
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0x3fffff);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0x1fffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0x1fffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0x1fffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0x1fffff);
- uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- uint32_t x45 = (x44 & 0x3fffed);
- uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- uint32_t x49 = (x44 & 0x1fffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- uint32_t x53 = (x44 & 0x1fffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- uint32_t x57 = (x44 & 0x1fffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- uint32_t x61 = (x44 & 0x3fffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- uint32_t x65 = (x44 & 0x1fffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- uint32_t x69 = (x44 & 0x1fffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- uint32_t x73 = (x44 & 0x1fffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- uint32_t x77 = (x44 & 0x1fffff);
- uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- (Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x51, Return x47))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e191m19_9limbs/freezeDisplay.v b/src/Specific/solinas32_2e191m19_9limbs/freezeDisplay.v
deleted file mode 100644
index 6d2c50dcd..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e191m19_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e191m19_9limbs/py_interpreter.sh b/src/Specific/solinas32_2e191m19_9limbs/py_interpreter.sh
deleted file mode 100755
index 4e33ed2f4..000000000
--- a/src/Specific/solinas32_2e191m19_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**191 - 19' -Dmodulus_bytes='21 + 2/9' -Da24='121665'
diff --git a/src/Specific/solinas32_2e192m2e64m1_10limbs/CurveParameters.v b/src/Specific/solinas32_2e192m2e64m1_10limbs/CurveParameters.v
deleted file mode 100644
index 7c68d0045..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^192 - 2^64 - 1
-Base: 19.2
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 19 + 1/5;
- bitwidth := 32;
- s := 2^192;
- c := [(1, 1); (2^64, 1)];
- carry_chains := Some [[2; 9]; [3; 0; 4; 1; 5; 2; 6; 7; 8; 9]; [3; 0]]%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_2e192m2e64m1_10limbs/Synthesis.v b/src/Specific/solinas32_2e192m2e64m1_10limbs/Synthesis.v
deleted file mode 100644
index 7b49b0189..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_10limbs.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_2e192m2e64m1_10limbs/compiler.sh b/src/Specific/solinas32_2e192m2e64m1_10limbs/compiler.sh
deleted file mode 100755
index 1bbcd6d0e..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{20,19,19,19,19,20,19,19,19,19}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' "$@"
diff --git a/src/Specific/solinas32_2e192m2e64m1_10limbs/compilerxx.sh b/src/Specific/solinas32_2e192m2e64m1_10limbs/compilerxx.sh
deleted file mode 100755
index 6f35ee6bf..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{20,19,19,19,19,20,19,19,19,19}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' "$@"
diff --git a/src/Specific/solinas32_2e192m2e64m1_10limbs/feadd.c b/src/Specific/solinas32_2e192m2e64m1_10limbs/feadd.c
deleted file mode 100644
index 57dd4e1af..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/feadd.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void feadd(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- out[0] = (x5 + x23);
- out[1] = (x7 + x25);
- out[2] = (x9 + x27);
- out[3] = (x11 + x29);
- out[4] = (x13 + x31);
- out[5] = (x15 + x33);
- out[6] = (x17 + x35);
- out[7] = (x19 + x37);
- out[8] = (x21 + x39);
- out[9] = (x20 + x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e192m2e64m1_10limbs/feadd.v b/src/Specific/solinas32_2e192m2e64m1_10limbs/feadd.v
deleted file mode 100644
index b35b8e904..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_10limbs.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_2e192m2e64m1_10limbs/feaddDisplay.log b/src/Specific/solinas32_2e192m2e64m1_10limbs/feaddDisplay.log
deleted file mode 100644
index 8a4c51148..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e192m2e64m1_10limbs/feaddDisplay.v b/src/Specific/solinas32_2e192m2e64m1_10limbs/feaddDisplay.v
deleted file mode 100644
index fc1e2eb52..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_10limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e192m2e64m1_10limbs/fecarry.v b/src/Specific/solinas32_2e192m2e64m1_10limbs/fecarry.v
deleted file mode 100644
index 4c69e5d8f..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_10limbs.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_2e192m2e64m1_10limbs/fecarryDisplay.v b/src/Specific/solinas32_2e192m2e64m1_10limbs/fecarryDisplay.v
deleted file mode 100644
index 28b6683a0..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_10limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e192m2e64m1_10limbs/femul.c b/src/Specific/solinas32_2e192m2e64m1_10limbs/femul.c
deleted file mode 100644
index 5c9f4bdd4..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/femul.c
+++ /dev/null
@@ -1,89 +0,0 @@
-static void femul(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- { ℤ x40 = ((((uint64_t)x5 * x38) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + ((0x2 * ((uint64_t)x11 * x35)) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + ((0x2 * ((uint64_t)x17 * x29)) + ((0x2 * ((uint64_t)x19 * x27)) + ((0x2 * ((uint64_t)x21 * x25)) + ((uint64_t)x20 * x23)))))))))) +ℤ ((0x80 * (((uint64_t)x19 * x38) + (((uint64_t)x21 * x39) + ((uint64_t)x20 * x37)))) +ℤ ((0x4000000 *ℤ (((uint64_t)x21 * x38) + ((uint64_t)x20 * x39))) +ℤ (0x200000000000 *ℤ ((uint64_t)x20 * x38)))));
- { uint64_t x41 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + ((uint64_t)x21 * x23))))))))) + (((uint64_t)x20 * x38) + (0x40 * ((0x2 * ((uint64_t)x17 * x38)) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + (0x2 * ((uint64_t)x20 * x35))))))));
- { uint64_t x42 = ((((uint64_t)x5 * x37) + ((0x2 * ((uint64_t)x7 * x35)) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + ((0x2 * ((uint64_t)x17 * x25)) + ((uint64_t)x19 * x23)))))))) + ((((uint64_t)x21 * x38) + ((uint64_t)x20 * x39)) + (0x40 * (((uint64_t)x15 * x38) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + ((0x2 * ((uint64_t)x21 * x35)) + ((uint64_t)x20 * x33))))))));
- { uint64_t x43 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + ((uint64_t)x17 * x23))))))) + ((((uint64_t)x19 * x38) + (((uint64_t)x21 * x39) + ((uint64_t)x20 * x37))) + (0x40 * (((uint64_t)x13 * x38) + (((uint64_t)x15 * x39) + ((0x2 * ((uint64_t)x17 * x37)) + ((0x2 * ((uint64_t)x19 * x35)) + (((uint64_t)x21 * x33) + ((uint64_t)x20 * x31)))))))));
- { uint64_t x44 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((0x2 * ((uint64_t)x11 * x27)) + ((0x2 * ((uint64_t)x13 * x25)) + ((uint64_t)x15 * x23)))))) + (((0x2 * ((uint64_t)x17 * x38)) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + (0x2 * ((uint64_t)x20 * x35))))) + (0x80 * (((uint64_t)x11 * x38) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((0x2 * ((uint64_t)x17 * x35)) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((uint64_t)x20 * x29))))))))));
- { uint64_t x45 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((uint64_t)x13 * x23))))) + ((((uint64_t)x15 * x38) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + ((0x2 * ((uint64_t)x21 * x35)) + ((uint64_t)x20 * x33))))) + (0x80 * (((uint64_t)x9 * x38) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (((uint64_t)x21 * x29) + ((uint64_t)x20 * x27)))))))))));
- { uint64_t x46 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((uint64_t)x11 * x23)))) + ((((uint64_t)x13 * x38) + (((uint64_t)x15 * x39) + ((0x2 * ((uint64_t)x17 * x37)) + ((0x2 * ((uint64_t)x19 * x35)) + (((uint64_t)x21 * x33) + ((uint64_t)x20 * x31)))))) + (0x40 * ((0x2 * ((uint64_t)x7 * x38)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + (((uint64_t)x15 * x33) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((0x2 * ((uint64_t)x21 * x27)) + (0x2 * ((uint64_t)x20 * x25)))))))))))));
- { uint64_t x47 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((uint64_t)x9 * x23))) + (((uint64_t)x11 * x38) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((0x2 * ((uint64_t)x17 * x35)) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((uint64_t)x20 * x29))))))));
- { uint64_t x48 = ((((uint64_t)x5 * x25) + ((uint64_t)x7 * x23)) + (((uint64_t)x9 * x38) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (((uint64_t)x21 * x29) + ((uint64_t)x20 * x27)))))))));
- { uint64_t x49 = (((uint64_t)x5 * x23) + ((0x2 * ((uint64_t)x7 * x38)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + (((uint64_t)x15 * x33) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((0x2 * ((uint64_t)x21 * x27)) + (0x2 * ((uint64_t)x20 * x25)))))))))));
- { uint32_t x50 = (uint32_t) (x47 >> 0x13);
- { uint32_t x51 = ((uint32_t)x47 & 0x7ffff);
- { ℤ x52 = (x40 >>ℤ 0x13);
- { uint32_t x53 = (x40 & 0x7ffff);
- { ℤ x54 = ((0x80000 *ℤ x52) +ℤ x53);
- { ℤ x55 = (x54 >>ℤ 0x13);
- { uint32_t x56 = (x54 & 0x7ffff);
- { ℤ x57 = ((x50 + x46) +ℤ (0x40 *ℤ x55));
- { uint64_t x58 = (x57 >> 0x13);
- { uint32_t x59 = (x57 & 0x7ffff);
- { ℤ x60 = (x49 +ℤ x55);
- { uint64_t x61 = (x60 >> 0x14);
- { uint32_t x62 = (x60 & 0xfffff);
- { uint64_t x63 = (x58 + x45);
- { uint64_t x64 = (x63 >> 0x13);
- { uint32_t x65 = ((uint32_t)x63 & 0x7ffff);
- { uint64_t x66 = (x61 + x48);
- { uint32_t x67 = (uint32_t) (x66 >> 0x13);
- { uint32_t x68 = ((uint32_t)x66 & 0x7ffff);
- { uint64_t x69 = (x64 + x44);
- { uint32_t x70 = (uint32_t) (x69 >> 0x14);
- { uint32_t x71 = ((uint32_t)x69 & 0xfffff);
- { uint32_t x72 = (x67 + x51);
- { uint32_t x73 = (x72 >> 0x13);
- { uint32_t x74 = (x72 & 0x7ffff);
- { uint64_t x75 = (x70 + x43);
- { uint32_t x76 = (uint32_t) (x75 >> 0x13);
- { uint32_t x77 = ((uint32_t)x75 & 0x7ffff);
- { uint64_t x78 = (x76 + x42);
- { uint32_t x79 = (uint32_t) (x78 >> 0x13);
- { uint32_t x80 = ((uint32_t)x78 & 0x7ffff);
- { uint64_t x81 = (x79 + x41);
- { uint32_t x82 = (uint32_t) (x81 >> 0x13);
- { uint32_t x83 = ((uint32_t)x81 & 0x7ffff);
- { uint32_t x84 = (x82 + x56);
- { uint32_t x85 = (x84 >> 0x13);
- { uint32_t x86 = (x84 & 0x7ffff);
- { uint32_t x87 = ((0x80000 * x85) + x86);
- { uint32_t x88 = (x87 >> 0x13);
- { uint32_t x89 = (x87 & 0x7ffff);
- { uint32_t x90 = ((x73 + x59) + (0x40 * x88));
- { uint32_t x91 = (x90 >> 0x13);
- { uint32_t x92 = (x90 & 0x7ffff);
- { uint32_t x93 = (x62 + x88);
- { uint32_t x94 = (x93 >> 0x14);
- { uint32_t x95 = (x93 & 0xfffff);
- out[0] = x95;
- out[1] = (x94 + x68);
- out[2] = x74;
- out[3] = x92;
- out[4] = (x91 + x65);
- out[5] = x71;
- out[6] = x77;
- out[7] = x80;
- out[8] = x83;
- out[9] = x89;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e192m2e64m1_10limbs/femul.v b/src/Specific/solinas32_2e192m2e64m1_10limbs/femul.v
deleted file mode 100644
index 64764d49e..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_10limbs.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_2e192m2e64m1_10limbs/femulDisplay.log b/src/Specific/solinas32_2e192m2e64m1_10limbs/femulDisplay.log
deleted file mode 100644
index 3e47b8298..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/femulDisplay.log
+++ /dev/null
@@ -1,63 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ℤ x40 = ((((uint64_t)x5 * x38) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + ((0x2 * ((uint64_t)x11 * x35)) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + ((0x2 * ((uint64_t)x17 * x29)) + ((0x2 * ((uint64_t)x19 * x27)) + ((0x2 * ((uint64_t)x21 * x25)) + ((uint64_t)x20 * x23)))))))))) +ℤ ((0x80 * (((uint64_t)x19 * x38) + (((uint64_t)x21 * x39) + ((uint64_t)x20 * x37)))) +ℤ ((0x4000000 *ℤ (((uint64_t)x21 * x38) + ((uint64_t)x20 * x39))) +ℤ (0x200000000000 *ℤ ((uint64_t)x20 * x38)))));
- uint64_t x41 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + ((uint64_t)x21 * x23))))))))) + (((uint64_t)x20 * x38) + (0x40 * ((0x2 * ((uint64_t)x17 * x38)) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + (0x2 * ((uint64_t)x20 * x35))))))));
- uint64_t x42 = ((((uint64_t)x5 * x37) + ((0x2 * ((uint64_t)x7 * x35)) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + ((0x2 * ((uint64_t)x17 * x25)) + ((uint64_t)x19 * x23)))))))) + ((((uint64_t)x21 * x38) + ((uint64_t)x20 * x39)) + (0x40 * (((uint64_t)x15 * x38) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + ((0x2 * ((uint64_t)x21 * x35)) + ((uint64_t)x20 * x33))))))));
- uint64_t x43 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + ((uint64_t)x17 * x23))))))) + ((((uint64_t)x19 * x38) + (((uint64_t)x21 * x39) + ((uint64_t)x20 * x37))) + (0x40 * (((uint64_t)x13 * x38) + (((uint64_t)x15 * x39) + ((0x2 * ((uint64_t)x17 * x37)) + ((0x2 * ((uint64_t)x19 * x35)) + (((uint64_t)x21 * x33) + ((uint64_t)x20 * x31)))))))));
- uint64_t x44 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((0x2 * ((uint64_t)x11 * x27)) + ((0x2 * ((uint64_t)x13 * x25)) + ((uint64_t)x15 * x23)))))) + (((0x2 * ((uint64_t)x17 * x38)) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + (0x2 * ((uint64_t)x20 * x35))))) + (0x80 * (((uint64_t)x11 * x38) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((0x2 * ((uint64_t)x17 * x35)) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((uint64_t)x20 * x29))))))))));
- uint64_t x45 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((uint64_t)x13 * x23))))) + ((((uint64_t)x15 * x38) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + ((0x2 * ((uint64_t)x21 * x35)) + ((uint64_t)x20 * x33))))) + (0x80 * (((uint64_t)x9 * x38) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (((uint64_t)x21 * x29) + ((uint64_t)x20 * x27)))))))))));
- uint64_t x46 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((uint64_t)x11 * x23)))) + ((((uint64_t)x13 * x38) + (((uint64_t)x15 * x39) + ((0x2 * ((uint64_t)x17 * x37)) + ((0x2 * ((uint64_t)x19 * x35)) + (((uint64_t)x21 * x33) + ((uint64_t)x20 * x31)))))) + (0x40 * ((0x2 * ((uint64_t)x7 * x38)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + (((uint64_t)x15 * x33) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((0x2 * ((uint64_t)x21 * x27)) + (0x2 * ((uint64_t)x20 * x25)))))))))))));
- uint64_t x47 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((uint64_t)x9 * x23))) + (((uint64_t)x11 * x38) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((0x2 * ((uint64_t)x17 * x35)) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((uint64_t)x20 * x29))))))));
- uint64_t x48 = ((((uint64_t)x5 * x25) + ((uint64_t)x7 * x23)) + (((uint64_t)x9 * x38) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (((uint64_t)x21 * x29) + ((uint64_t)x20 * x27)))))))));
- uint64_t x49 = (((uint64_t)x5 * x23) + ((0x2 * ((uint64_t)x7 * x38)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + (((uint64_t)x15 * x33) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((0x2 * ((uint64_t)x21 * x27)) + (0x2 * ((uint64_t)x20 * x25)))))))))));
- uint32_t x50 = (uint32_t) (x47 >> 0x13);
- uint32_t x51 = ((uint32_t)x47 & 0x7ffff);
- ℤ x52 = (x40 >>ℤ 0x13);
- uint32_t x53 = (x40 & 0x7ffff);
- ℤ x54 = ((0x80000 *ℤ x52) +ℤ x53);
- ℤ x55 = (x54 >>ℤ 0x13);
- uint32_t x56 = (x54 & 0x7ffff);
- ℤ x57 = ((x50 + x46) +ℤ (0x40 *ℤ x55));
- uint64_t x58 = (x57 >> 0x13);
- uint32_t x59 = (x57 & 0x7ffff);
- ℤ x60 = (x49 +ℤ x55);
- uint64_t x61 = (x60 >> 0x14);
- uint32_t x62 = (x60 & 0xfffff);
- uint64_t x63 = (x58 + x45);
- uint64_t x64 = (x63 >> 0x13);
- uint32_t x65 = ((uint32_t)x63 & 0x7ffff);
- uint64_t x66 = (x61 + x48);
- uint32_t x67 = (uint32_t) (x66 >> 0x13);
- uint32_t x68 = ((uint32_t)x66 & 0x7ffff);
- uint64_t x69 = (x64 + x44);
- uint32_t x70 = (uint32_t) (x69 >> 0x14);
- uint32_t x71 = ((uint32_t)x69 & 0xfffff);
- uint32_t x72 = (x67 + x51);
- uint32_t x73 = (x72 >> 0x13);
- uint32_t x74 = (x72 & 0x7ffff);
- uint64_t x75 = (x70 + x43);
- uint32_t x76 = (uint32_t) (x75 >> 0x13);
- uint32_t x77 = ((uint32_t)x75 & 0x7ffff);
- uint64_t x78 = (x76 + x42);
- uint32_t x79 = (uint32_t) (x78 >> 0x13);
- uint32_t x80 = ((uint32_t)x78 & 0x7ffff);
- uint64_t x81 = (x79 + x41);
- uint32_t x82 = (uint32_t) (x81 >> 0x13);
- uint32_t x83 = ((uint32_t)x81 & 0x7ffff);
- uint32_t x84 = (x82 + x56);
- uint32_t x85 = (x84 >> 0x13);
- uint32_t x86 = (x84 & 0x7ffff);
- uint32_t x87 = ((0x80000 * x85) + x86);
- uint32_t x88 = (x87 >> 0x13);
- uint32_t x89 = (x87 & 0x7ffff);
- uint32_t x90 = ((x73 + x59) + (0x40 * x88));
- uint32_t x91 = (x90 >> 0x13);
- uint32_t x92 = (x90 & 0x7ffff);
- uint32_t x93 = (x62 + x88);
- uint32_t x94 = (x93 >> 0x14);
- uint32_t x95 = (x93 & 0xfffff);
- return (Return x89, Return x83, Return x80, Return x77, Return x71, (x91 + x65), Return x92, Return x74, (x94 + x68), Return x95))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e192m2e64m1_10limbs/femulDisplay.v b/src/Specific/solinas32_2e192m2e64m1_10limbs/femulDisplay.v
deleted file mode 100644
index 4af82497a..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_10limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e192m2e64m1_10limbs/fesquare.c b/src/Specific/solinas32_2e192m2e64m1_10limbs/fesquare.c
deleted file mode 100644
index c39890fde..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/fesquare.c
+++ /dev/null
@@ -1,79 +0,0 @@
-static void fesquare(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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];
- { ℤ x19 = ((((uint64_t)x2 * x17) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x17 * x2)))))))))) +ℤ ((0x80 * (((uint64_t)x16 * x17) + (((uint64_t)x18 * x18) + ((uint64_t)x17 * x16)))) +ℤ ((0x4000000 *ℤ (((uint64_t)x18 * x17) + ((uint64_t)x17 * x18))) +ℤ (0x200000000000 *ℤ ((uint64_t)x17 * x17)))));
- { uint64_t x20 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (((uint64_t)x17 * x17) + (0x40 * ((0x2 * ((uint64_t)x14 * x17)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (0x2 * ((uint64_t)x17 * x14))))))));
- { uint64_t x21 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + ((((uint64_t)x18 * x17) + ((uint64_t)x17 * x18)) + (0x40 * (((uint64_t)x12 * x17) + ((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + ((0x2 * ((uint64_t)x18 * x14)) + ((uint64_t)x17 * x12))))))));
- { uint64_t x22 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + ((((uint64_t)x16 * x17) + (((uint64_t)x18 * x18) + ((uint64_t)x17 * x16))) + (0x40 * (((uint64_t)x10 * x17) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + ((uint64_t)x17 * x10)))))))));
- { uint64_t x23 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (((0x2 * ((uint64_t)x14 * x17)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (0x2 * ((uint64_t)x17 * x14))))) + (0x80 * (((uint64_t)x8 * x17) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((uint64_t)x17 * x8))))))))));
- { uint64_t x24 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + ((((uint64_t)x12 * x17) + ((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + ((0x2 * ((uint64_t)x18 * x14)) + ((uint64_t)x17 * x12))))) + (0x80 * (((uint64_t)x6 * x17) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((uint64_t)x17 * x6)))))))))));
- { uint64_t x25 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + ((((uint64_t)x10 * x17) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + ((uint64_t)x17 * x10)))))) + (0x40 * ((0x2 * ((uint64_t)x4 * x17)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + (0x2 * ((uint64_t)x17 * x4)))))))))))));
- { uint64_t x26 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (((uint64_t)x8 * x17) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((uint64_t)x17 * x8))))))));
- { uint64_t x27 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x6 * x17) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((uint64_t)x17 * x6)))))))));
- { uint64_t x28 = (((uint64_t)x2 * x2) + ((0x2 * ((uint64_t)x4 * x17)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + (0x2 * ((uint64_t)x17 * x4)))))))))));
- { uint32_t x29 = (uint32_t) (x26 >> 0x13);
- { uint32_t x30 = ((uint32_t)x26 & 0x7ffff);
- { ℤ x31 = (x19 >>ℤ 0x13);
- { uint32_t x32 = (x19 & 0x7ffff);
- { ℤ x33 = ((0x80000 *ℤ x31) +ℤ x32);
- { ℤ x34 = (x33 >>ℤ 0x13);
- { uint32_t x35 = (x33 & 0x7ffff);
- { ℤ x36 = ((x29 + x25) +ℤ (0x40 *ℤ x34));
- { uint64_t x37 = (x36 >> 0x13);
- { uint32_t x38 = (x36 & 0x7ffff);
- { ℤ x39 = (x28 +ℤ x34);
- { uint64_t x40 = (x39 >> 0x14);
- { uint32_t x41 = (x39 & 0xfffff);
- { uint64_t x42 = (x37 + x24);
- { uint64_t x43 = (x42 >> 0x13);
- { uint32_t x44 = ((uint32_t)x42 & 0x7ffff);
- { uint64_t x45 = (x40 + x27);
- { uint32_t x46 = (uint32_t) (x45 >> 0x13);
- { uint32_t x47 = ((uint32_t)x45 & 0x7ffff);
- { uint64_t x48 = (x43 + x23);
- { uint32_t x49 = (uint32_t) (x48 >> 0x14);
- { uint32_t x50 = ((uint32_t)x48 & 0xfffff);
- { uint32_t x51 = (x46 + x30);
- { uint32_t x52 = (x51 >> 0x13);
- { uint32_t x53 = (x51 & 0x7ffff);
- { uint64_t x54 = (x49 + x22);
- { uint32_t x55 = (uint32_t) (x54 >> 0x13);
- { uint32_t x56 = ((uint32_t)x54 & 0x7ffff);
- { uint64_t x57 = (x55 + x21);
- { uint32_t x58 = (uint32_t) (x57 >> 0x13);
- { uint32_t x59 = ((uint32_t)x57 & 0x7ffff);
- { uint64_t x60 = (x58 + x20);
- { uint32_t x61 = (uint32_t) (x60 >> 0x13);
- { uint32_t x62 = ((uint32_t)x60 & 0x7ffff);
- { uint32_t x63 = (x61 + x35);
- { uint32_t x64 = (x63 >> 0x13);
- { uint32_t x65 = (x63 & 0x7ffff);
- { uint32_t x66 = ((0x80000 * x64) + x65);
- { uint32_t x67 = (x66 >> 0x13);
- { uint32_t x68 = (x66 & 0x7ffff);
- { uint32_t x69 = ((x52 + x38) + (0x40 * x67));
- { uint32_t x70 = (x69 >> 0x13);
- { uint32_t x71 = (x69 & 0x7ffff);
- { uint32_t x72 = (x41 + x67);
- { uint32_t x73 = (x72 >> 0x14);
- { uint32_t x74 = (x72 & 0xfffff);
- out[0] = x74;
- out[1] = (x73 + x47);
- out[2] = x53;
- out[3] = x71;
- out[4] = (x70 + x44);
- out[5] = x50;
- out[6] = x56;
- out[7] = x59;
- out[8] = x62;
- out[9] = x68;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e192m2e64m1_10limbs/fesquare.v b/src/Specific/solinas32_2e192m2e64m1_10limbs/fesquare.v
deleted file mode 100644
index 1884f4e6c..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_10limbs.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_2e192m2e64m1_10limbs/fesquareDisplay.log b/src/Specific/solinas32_2e192m2e64m1_10limbs/fesquareDisplay.log
deleted file mode 100644
index fe134cb59..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,63 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- ℤ x19 = ((((uint64_t)x2 * x17) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x17 * x2)))))))))) +ℤ ((0x80 * (((uint64_t)x16 * x17) + (((uint64_t)x18 * x18) + ((uint64_t)x17 * x16)))) +ℤ ((0x4000000 *ℤ (((uint64_t)x18 * x17) + ((uint64_t)x17 * x18))) +ℤ (0x200000000000 *ℤ ((uint64_t)x17 * x17)))));
- uint64_t x20 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (((uint64_t)x17 * x17) + (0x40 * ((0x2 * ((uint64_t)x14 * x17)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (0x2 * ((uint64_t)x17 * x14))))))));
- uint64_t x21 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + ((((uint64_t)x18 * x17) + ((uint64_t)x17 * x18)) + (0x40 * (((uint64_t)x12 * x17) + ((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + ((0x2 * ((uint64_t)x18 * x14)) + ((uint64_t)x17 * x12))))))));
- uint64_t x22 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + ((((uint64_t)x16 * x17) + (((uint64_t)x18 * x18) + ((uint64_t)x17 * x16))) + (0x40 * (((uint64_t)x10 * x17) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + ((uint64_t)x17 * x10)))))))));
- uint64_t x23 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (((0x2 * ((uint64_t)x14 * x17)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (0x2 * ((uint64_t)x17 * x14))))) + (0x80 * (((uint64_t)x8 * x17) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((uint64_t)x17 * x8))))))))));
- uint64_t x24 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + ((((uint64_t)x12 * x17) + ((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + ((0x2 * ((uint64_t)x18 * x14)) + ((uint64_t)x17 * x12))))) + (0x80 * (((uint64_t)x6 * x17) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((uint64_t)x17 * x6)))))))))));
- uint64_t x25 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + ((((uint64_t)x10 * x17) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + ((uint64_t)x17 * x10)))))) + (0x40 * ((0x2 * ((uint64_t)x4 * x17)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + (0x2 * ((uint64_t)x17 * x4)))))))))))));
- uint64_t x26 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (((uint64_t)x8 * x17) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((uint64_t)x17 * x8))))))));
- uint64_t x27 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x6 * x17) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((uint64_t)x17 * x6)))))))));
- uint64_t x28 = (((uint64_t)x2 * x2) + ((0x2 * ((uint64_t)x4 * x17)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + (0x2 * ((uint64_t)x17 * x4)))))))))));
- uint32_t x29 = (uint32_t) (x26 >> 0x13);
- uint32_t x30 = ((uint32_t)x26 & 0x7ffff);
- ℤ x31 = (x19 >>ℤ 0x13);
- uint32_t x32 = (x19 & 0x7ffff);
- ℤ x33 = ((0x80000 *ℤ x31) +ℤ x32);
- ℤ x34 = (x33 >>ℤ 0x13);
- uint32_t x35 = (x33 & 0x7ffff);
- ℤ x36 = ((x29 + x25) +ℤ (0x40 *ℤ x34));
- uint64_t x37 = (x36 >> 0x13);
- uint32_t x38 = (x36 & 0x7ffff);
- ℤ x39 = (x28 +ℤ x34);
- uint64_t x40 = (x39 >> 0x14);
- uint32_t x41 = (x39 & 0xfffff);
- uint64_t x42 = (x37 + x24);
- uint64_t x43 = (x42 >> 0x13);
- uint32_t x44 = ((uint32_t)x42 & 0x7ffff);
- uint64_t x45 = (x40 + x27);
- uint32_t x46 = (uint32_t) (x45 >> 0x13);
- uint32_t x47 = ((uint32_t)x45 & 0x7ffff);
- uint64_t x48 = (x43 + x23);
- uint32_t x49 = (uint32_t) (x48 >> 0x14);
- uint32_t x50 = ((uint32_t)x48 & 0xfffff);
- uint32_t x51 = (x46 + x30);
- uint32_t x52 = (x51 >> 0x13);
- uint32_t x53 = (x51 & 0x7ffff);
- uint64_t x54 = (x49 + x22);
- uint32_t x55 = (uint32_t) (x54 >> 0x13);
- uint32_t x56 = ((uint32_t)x54 & 0x7ffff);
- uint64_t x57 = (x55 + x21);
- uint32_t x58 = (uint32_t) (x57 >> 0x13);
- uint32_t x59 = ((uint32_t)x57 & 0x7ffff);
- uint64_t x60 = (x58 + x20);
- uint32_t x61 = (uint32_t) (x60 >> 0x13);
- uint32_t x62 = ((uint32_t)x60 & 0x7ffff);
- uint32_t x63 = (x61 + x35);
- uint32_t x64 = (x63 >> 0x13);
- uint32_t x65 = (x63 & 0x7ffff);
- uint32_t x66 = ((0x80000 * x64) + x65);
- uint32_t x67 = (x66 >> 0x13);
- uint32_t x68 = (x66 & 0x7ffff);
- uint32_t x69 = ((x52 + x38) + (0x40 * x67));
- uint32_t x70 = (x69 >> 0x13);
- uint32_t x71 = (x69 & 0x7ffff);
- uint32_t x72 = (x41 + x67);
- uint32_t x73 = (x72 >> 0x14);
- uint32_t x74 = (x72 & 0xfffff);
- return (Return x68, Return x62, Return x59, Return x56, Return x50, (x70 + x44), Return x71, Return x53, (x73 + x47), Return x74))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e192m2e64m1_10limbs/fesquareDisplay.v b/src/Specific/solinas32_2e192m2e64m1_10limbs/fesquareDisplay.v
deleted file mode 100644
index 62177e9ff..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_10limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e192m2e64m1_10limbs/fesub.c b/src/Specific/solinas32_2e192m2e64m1_10limbs/fesub.c
deleted file mode 100644
index c9a19629d..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/fesub.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fesub(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- out[0] = ((0x1ffffe + x5) - x23);
- out[1] = ((0xffffe + x7) - x25);
- out[2] = ((0xffffe + x9) - x27);
- out[3] = ((0xfff7e + x11) - x29);
- out[4] = ((0xffffe + x13) - x31);
- out[5] = ((0x1ffffe + x15) - x33);
- out[6] = ((0xffffe + x17) - x35);
- out[7] = ((0xffffe + x19) - x37);
- out[8] = ((0xffffe + x21) - x39);
- out[9] = ((0xffffe + x20) - x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e192m2e64m1_10limbs/fesub.v b/src/Specific/solinas32_2e192m2e64m1_10limbs/fesub.v
deleted file mode 100644
index 39a8fba9b..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_10limbs.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_2e192m2e64m1_10limbs/fesubDisplay.log b/src/Specific/solinas32_2e192m2e64m1_10limbs/fesubDisplay.log
deleted file mode 100644
index 6da59487f..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- (((0xffffe + x20) - x38), ((0xffffe + x21) - x39), ((0xffffe + x19) - x37), ((0xffffe + x17) - x35), ((0x1ffffe + x15) - x33), ((0xffffe + x13) - x31), ((0xfff7e + x11) - x29), ((0xffffe + x9) - x27), ((0xffffe + x7) - x25), ((0x1ffffe + x5) - x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e192m2e64m1_10limbs/fesubDisplay.v b/src/Specific/solinas32_2e192m2e64m1_10limbs/fesubDisplay.v
deleted file mode 100644
index 4f48166a0..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_10limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e192m2e64m1_10limbs/freeze.c b/src/Specific/solinas32_2e192m2e64m1_10limbs/freeze.c
deleted file mode 100644
index 72929d3e5..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/freeze.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void freeze(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xfffff);
- { uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x4, 0x7ffff);
- { uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x6, 0x7ffff);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x8, 0x7ffbf);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x10, 0x7ffff);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x12, 0xfffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x14, 0x7ffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x16, 0x7ffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x18, 0x7ffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x17, 0x7ffff);
- { uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- { uint32_t x50 = (x49 & 0xfffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- { uint32_t x54 = (x49 & 0x7ffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- { uint32_t x58 = (x49 & 0x7ffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- { uint32_t x62 = (x49 & 0x7ffbf);
- { uint32_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- { uint32_t x66 = (x49 & 0x7ffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- { uint32_t x70 = (x49 & 0xfffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- { uint32_t x74 = (x49 & 0x7ffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- { uint32_t x78 = (x49 & 0x7ffff);
- { uint32_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- { uint32_t x82 = (x49 & 0x7ffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- { uint32_t x86 = (x49 & 0x7ffff);
- { uint32_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- out[0] = x52;
- out[1] = x56;
- out[2] = x60;
- out[3] = x64;
- out[4] = x68;
- out[5] = x72;
- out[6] = x76;
- out[7] = x80;
- out[8] = x84;
- out[9] = x88;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e192m2e64m1_10limbs/freeze.v b/src/Specific/solinas32_2e192m2e64m1_10limbs/freeze.v
deleted file mode 100644
index ed69efd85..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_10limbs.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_2e192m2e64m1_10limbs/freezeDisplay.log b/src/Specific/solinas32_2e192m2e64m1_10limbs/freezeDisplay.log
deleted file mode 100644
index 56b228e32..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xfffff);
- uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x4, 0x7ffff);
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x6, 0x7ffff);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x8, 0x7ffbf);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x10, 0x7ffff);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x12, 0xfffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x14, 0x7ffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x16, 0x7ffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x18, 0x7ffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x17, 0x7ffff);
- uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- uint32_t x50 = (x49 & 0xfffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- uint32_t x54 = (x49 & 0x7ffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- uint32_t x58 = (x49 & 0x7ffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- uint32_t x62 = (x49 & 0x7ffbf);
- uint32_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- uint32_t x66 = (x49 & 0x7ffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- uint32_t x70 = (x49 & 0xfffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- uint32_t x74 = (x49 & 0x7ffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- uint32_t x78 = (x49 & 0x7ffff);
- uint32_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- uint32_t x82 = (x49 & 0x7ffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- uint32_t x86 = (x49 & 0x7ffff);
- uint32_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- (Return x88, Return x84, Return x80, Return x76, Return x72, Return x68, Return x64, Return x60, Return x56, Return x52))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e192m2e64m1_10limbs/freezeDisplay.v b/src/Specific/solinas32_2e192m2e64m1_10limbs/freezeDisplay.v
deleted file mode 100644
index 84461a6f2..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_10limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e192m2e64m1_10limbs/py_interpreter.sh b/src/Specific/solinas32_2e192m2e64m1_10limbs/py_interpreter.sh
deleted file mode 100755
index 945a2bd90..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_10limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**192 - 2**64 - 1' -Dmodulus_bytes='19.2' -Da24='121665'
diff --git a/src/Specific/solinas32_2e192m2e64m1_9limbs/CurveParameters.v b/src/Specific/solinas32_2e192m2e64m1_9limbs/CurveParameters.v
deleted file mode 100644
index 05e5d26b1..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^192 - 2^64 - 1
-Base: 21 + 1/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 21 + 1/3;
- bitwidth := 32;
- s := 2^192;
- c := [(1, 1); (2^64, 1)];
- carry_chains := Some [[2; 8]; [3; 0; 4; 1; 5; 2; 6; 7; 8]; [3; 0]]%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_2e192m2e64m1_9limbs/Synthesis.v b/src/Specific/solinas32_2e192m2e64m1_9limbs/Synthesis.v
deleted file mode 100644
index 26111fb7a..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_9limbs.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_2e192m2e64m1_9limbs/compiler.sh b/src/Specific/solinas32_2e192m2e64m1_9limbs/compiler.sh
deleted file mode 100755
index c472aa7d3..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' "$@"
diff --git a/src/Specific/solinas32_2e192m2e64m1_9limbs/compilerxx.sh b/src/Specific/solinas32_2e192m2e64m1_9limbs/compilerxx.sh
deleted file mode 100755
index 1e9832553..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' "$@"
diff --git a/src/Specific/solinas32_2e192m2e64m1_9limbs/feadd.c b/src/Specific/solinas32_2e192m2e64m1_9limbs/feadd.c
deleted file mode 100644
index e1188fdec..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e192m2e64m1_9limbs/feadd.v b/src/Specific/solinas32_2e192m2e64m1_9limbs/feadd.v
deleted file mode 100644
index 0d79c50ba..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_9limbs.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_2e192m2e64m1_9limbs/feaddDisplay.log b/src/Specific/solinas32_2e192m2e64m1_9limbs/feaddDisplay.log
deleted file mode 100644
index e26bb40f8..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e192m2e64m1_9limbs/feaddDisplay.v b/src/Specific/solinas32_2e192m2e64m1_9limbs/feaddDisplay.v
deleted file mode 100644
index 48e966089..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e192m2e64m1_9limbs/fecarry.v b/src/Specific/solinas32_2e192m2e64m1_9limbs/fecarry.v
deleted file mode 100644
index d37b1b648..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_9limbs.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_2e192m2e64m1_9limbs/fecarryDisplay.v b/src/Specific/solinas32_2e192m2e64m1_9limbs/fecarryDisplay.v
deleted file mode 100644
index a62335ecb..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e192m2e64m1_9limbs/femul.c b/src/Specific/solinas32_2e192m2e64m1_9limbs/femul.c
deleted file mode 100644
index 07fe00892..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/femul.c
+++ /dev/null
@@ -1,82 +0,0 @@
-static void femul(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- { ℤ x36 = ((((uint64_t)x5 * x34) + ((0x2 * ((uint64_t)x7 * x35)) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + ((0x2 * ((uint64_t)x19 * x23)) + ((uint64_t)x18 * x21))))))))) +ℤ ((((uint64_t)x17 * x34) + ((0x2 * ((uint64_t)x19 * x35)) + ((uint64_t)x18 * x33))) +ℤ ((0x200000 *ℤ ((0x2 * ((uint64_t)x19 * x34)) + (0x2 * ((uint64_t)x18 * x35)))) +ℤ (0x80000000000 *ℤ ((uint64_t)x18 * x34)))));
- { uint64_t x37 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + (((uint64_t)x17 * x23) + ((uint64_t)x19 * x21)))))))) + (((uint64_t)x18 * x34) + (((uint64_t)x15 * x34) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x18 * x31))))));
- { uint64_t x38 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + (((uint64_t)x11 * x27) + ((0x2 * ((uint64_t)x13 * x25)) + ((0x2 * ((uint64_t)x15 * x23)) + ((uint64_t)x17 * x21))))))) + (((0x2 * ((uint64_t)x19 * x34)) + (0x2 * ((uint64_t)x18 * x35))) + ((0x2 * ((uint64_t)x13 * x34)) + ((0x2 * ((uint64_t)x15 * x35)) + (((uint64_t)x17 * x33) + ((0x2 * ((uint64_t)x19 * x31)) + (0x2 * ((uint64_t)x18 * x29))))))));
- { uint64_t x39 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + ((0x2 * ((uint64_t)x13 * x23)) + ((uint64_t)x15 * x21)))))) + ((((uint64_t)x17 * x34) + ((0x2 * ((uint64_t)x19 * x35)) + ((uint64_t)x18 * x33))) + (((uint64_t)x11 * x34) + ((0x2 * ((uint64_t)x13 * x35)) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + ((0x2 * ((uint64_t)x19 * x29)) + ((uint64_t)x18 * x27))))))));
- { uint64_t x40 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + ((uint64_t)x13 * x21))))) + ((((uint64_t)x15 * x34) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x18 * x31)))) + (((uint64_t)x9 * x34) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + ((uint64_t)x18 * x25)))))))));
- { uint64_t x41 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((uint64_t)x11 * x21)))) + (((0x2 * ((uint64_t)x13 * x34)) + ((0x2 * ((uint64_t)x15 * x35)) + (((uint64_t)x17 * x33) + ((0x2 * ((uint64_t)x19 * x31)) + (0x2 * ((uint64_t)x18 * x29)))))) + ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + (((uint64_t)x11 * x33) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23)))))))))));
- { uint64_t x42 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((uint64_t)x9 * x21))) + (((uint64_t)x11 * x34) + ((0x2 * ((uint64_t)x13 * x35)) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + ((0x2 * ((uint64_t)x19 * x29)) + ((uint64_t)x18 * x27)))))));
- { uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (((uint64_t)x9 * x34) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + ((uint64_t)x18 * x25))))))));
- { uint64_t x44 = (((uint64_t)x5 * x21) + ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + (((uint64_t)x11 * x33) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23))))))))));
- { uint32_t x45 = (uint32_t) (x42 >> 0x15);
- { uint32_t x46 = ((uint32_t)x42 & 0x1fffff);
- { ℤ x47 = (x36 >>ℤ 0x15);
- { uint32_t x48 = (x36 & 0x1fffff);
- { ℤ x49 = ((0x200000 *ℤ x47) +ℤ x48);
- { ℤ x50 = (x49 >>ℤ 0x15);
- { uint32_t x51 = (x49 & 0x1fffff);
- { ℤ x52 = ((x45 + x41) +ℤ x50);
- { uint64_t x53 = (x52 >> 0x16);
- { uint32_t x54 = (x52 & 0x3fffff);
- { ℤ x55 = (x44 +ℤ x50);
- { uint64_t x56 = (x55 >> 0x16);
- { uint32_t x57 = (x55 & 0x3fffff);
- { uint64_t x58 = (x53 + x40);
- { uint32_t x59 = (uint32_t) (x58 >> 0x15);
- { uint32_t x60 = ((uint32_t)x58 & 0x1fffff);
- { uint64_t x61 = (x56 + x43);
- { uint32_t x62 = (uint32_t) (x61 >> 0x15);
- { uint32_t x63 = ((uint32_t)x61 & 0x1fffff);
- { uint64_t x64 = (x59 + x39);
- { uint32_t x65 = (uint32_t) (x64 >> 0x15);
- { uint32_t x66 = ((uint32_t)x64 & 0x1fffff);
- { uint32_t x67 = (x62 + x46);
- { uint32_t x68 = (x67 >> 0x15);
- { uint32_t x69 = (x67 & 0x1fffff);
- { uint64_t x70 = (x65 + x38);
- { uint32_t x71 = (uint32_t) (x70 >> 0x16);
- { uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- { uint64_t x73 = (x71 + x37);
- { uint32_t x74 = (uint32_t) (x73 >> 0x15);
- { uint32_t x75 = ((uint32_t)x73 & 0x1fffff);
- { uint32_t x76 = (x74 + x51);
- { uint32_t x77 = (x76 >> 0x15);
- { uint32_t x78 = (x76 & 0x1fffff);
- { uint32_t x79 = ((0x200000 * x77) + x78);
- { uint32_t x80 = (x79 >> 0x15);
- { uint32_t x81 = (x79 & 0x1fffff);
- { uint32_t x82 = ((x68 + x54) + x80);
- { uint32_t x83 = (x82 >> 0x16);
- { uint32_t x84 = (x82 & 0x3fffff);
- { uint32_t x85 = (x57 + x80);
- { uint32_t x86 = (x85 >> 0x16);
- { uint32_t x87 = (x85 & 0x3fffff);
- out[0] = x87;
- out[1] = (x86 + x63);
- out[2] = x69;
- out[3] = x84;
- out[4] = (x83 + x60);
- out[5] = x66;
- out[6] = x72;
- out[7] = x75;
- out[8] = x81;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e192m2e64m1_9limbs/femul.v b/src/Specific/solinas32_2e192m2e64m1_9limbs/femul.v
deleted file mode 100644
index 71b1d3999..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_9limbs.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_2e192m2e64m1_9limbs/femulDisplay.log b/src/Specific/solinas32_2e192m2e64m1_9limbs/femulDisplay.log
deleted file mode 100644
index a56b0c125..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/femulDisplay.log
+++ /dev/null
@@ -1,59 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ℤ x36 = ((((uint64_t)x5 * x34) + ((0x2 * ((uint64_t)x7 * x35)) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + ((0x2 * ((uint64_t)x19 * x23)) + ((uint64_t)x18 * x21))))))))) +ℤ ((((uint64_t)x17 * x34) + ((0x2 * ((uint64_t)x19 * x35)) + ((uint64_t)x18 * x33))) +ℤ ((0x200000 *ℤ ((0x2 * ((uint64_t)x19 * x34)) + (0x2 * ((uint64_t)x18 * x35)))) +ℤ (0x80000000000 *ℤ ((uint64_t)x18 * x34)))));
- uint64_t x37 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + (((uint64_t)x17 * x23) + ((uint64_t)x19 * x21)))))))) + (((uint64_t)x18 * x34) + (((uint64_t)x15 * x34) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x18 * x31))))));
- uint64_t x38 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + (((uint64_t)x11 * x27) + ((0x2 * ((uint64_t)x13 * x25)) + ((0x2 * ((uint64_t)x15 * x23)) + ((uint64_t)x17 * x21))))))) + (((0x2 * ((uint64_t)x19 * x34)) + (0x2 * ((uint64_t)x18 * x35))) + ((0x2 * ((uint64_t)x13 * x34)) + ((0x2 * ((uint64_t)x15 * x35)) + (((uint64_t)x17 * x33) + ((0x2 * ((uint64_t)x19 * x31)) + (0x2 * ((uint64_t)x18 * x29))))))));
- uint64_t x39 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + ((0x2 * ((uint64_t)x13 * x23)) + ((uint64_t)x15 * x21)))))) + ((((uint64_t)x17 * x34) + ((0x2 * ((uint64_t)x19 * x35)) + ((uint64_t)x18 * x33))) + (((uint64_t)x11 * x34) + ((0x2 * ((uint64_t)x13 * x35)) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + ((0x2 * ((uint64_t)x19 * x29)) + ((uint64_t)x18 * x27))))))));
- uint64_t x40 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + ((uint64_t)x13 * x21))))) + ((((uint64_t)x15 * x34) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x18 * x31)))) + (((uint64_t)x9 * x34) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + ((uint64_t)x18 * x25)))))))));
- uint64_t x41 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((uint64_t)x11 * x21)))) + (((0x2 * ((uint64_t)x13 * x34)) + ((0x2 * ((uint64_t)x15 * x35)) + (((uint64_t)x17 * x33) + ((0x2 * ((uint64_t)x19 * x31)) + (0x2 * ((uint64_t)x18 * x29)))))) + ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + (((uint64_t)x11 * x33) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23)))))))))));
- uint64_t x42 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((uint64_t)x9 * x21))) + (((uint64_t)x11 * x34) + ((0x2 * ((uint64_t)x13 * x35)) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + ((0x2 * ((uint64_t)x19 * x29)) + ((uint64_t)x18 * x27)))))));
- uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (((uint64_t)x9 * x34) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + ((uint64_t)x18 * x25))))))));
- uint64_t x44 = (((uint64_t)x5 * x21) + ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + (((uint64_t)x11 * x33) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23))))))))));
- uint32_t x45 = (uint32_t) (x42 >> 0x15);
- uint32_t x46 = ((uint32_t)x42 & 0x1fffff);
- ℤ x47 = (x36 >>ℤ 0x15);
- uint32_t x48 = (x36 & 0x1fffff);
- ℤ x49 = ((0x200000 *ℤ x47) +ℤ x48);
- ℤ x50 = (x49 >>ℤ 0x15);
- uint32_t x51 = (x49 & 0x1fffff);
- ℤ x52 = ((x45 + x41) +ℤ x50);
- uint64_t x53 = (x52 >> 0x16);
- uint32_t x54 = (x52 & 0x3fffff);
- ℤ x55 = (x44 +ℤ x50);
- uint64_t x56 = (x55 >> 0x16);
- uint32_t x57 = (x55 & 0x3fffff);
- uint64_t x58 = (x53 + x40);
- uint32_t x59 = (uint32_t) (x58 >> 0x15);
- uint32_t x60 = ((uint32_t)x58 & 0x1fffff);
- uint64_t x61 = (x56 + x43);
- uint32_t x62 = (uint32_t) (x61 >> 0x15);
- uint32_t x63 = ((uint32_t)x61 & 0x1fffff);
- uint64_t x64 = (x59 + x39);
- uint32_t x65 = (uint32_t) (x64 >> 0x15);
- uint32_t x66 = ((uint32_t)x64 & 0x1fffff);
- uint32_t x67 = (x62 + x46);
- uint32_t x68 = (x67 >> 0x15);
- uint32_t x69 = (x67 & 0x1fffff);
- uint64_t x70 = (x65 + x38);
- uint32_t x71 = (uint32_t) (x70 >> 0x16);
- uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- uint64_t x73 = (x71 + x37);
- uint32_t x74 = (uint32_t) (x73 >> 0x15);
- uint32_t x75 = ((uint32_t)x73 & 0x1fffff);
- uint32_t x76 = (x74 + x51);
- uint32_t x77 = (x76 >> 0x15);
- uint32_t x78 = (x76 & 0x1fffff);
- uint32_t x79 = ((0x200000 * x77) + x78);
- uint32_t x80 = (x79 >> 0x15);
- uint32_t x81 = (x79 & 0x1fffff);
- uint32_t x82 = ((x68 + x54) + x80);
- uint32_t x83 = (x82 >> 0x16);
- uint32_t x84 = (x82 & 0x3fffff);
- uint32_t x85 = (x57 + x80);
- uint32_t x86 = (x85 >> 0x16);
- uint32_t x87 = (x85 & 0x3fffff);
- return (Return x81, Return x75, Return x72, Return x66, (x83 + x60), Return x84, Return x69, (x86 + x63), Return x87))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e192m2e64m1_9limbs/femulDisplay.v b/src/Specific/solinas32_2e192m2e64m1_9limbs/femulDisplay.v
deleted file mode 100644
index 7a36bc052..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e192m2e64m1_9limbs/fesquare.c b/src/Specific/solinas32_2e192m2e64m1_9limbs/fesquare.c
deleted file mode 100644
index 8327d8ae3..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/fesquare.c
+++ /dev/null
@@ -1,73 +0,0 @@
-static void fesquare(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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];
- { ℤ x17 = ((((uint64_t)x2 * x15) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x15 * x2))))))))) +ℤ ((((uint64_t)x14 * x15) + ((0x2 * ((uint64_t)x16 * x16)) + ((uint64_t)x15 * x14))) +ℤ ((0x200000 *ℤ ((0x2 * ((uint64_t)x16 * x15)) + (0x2 * ((uint64_t)x15 * x16)))) +ℤ (0x80000000000 *ℤ ((uint64_t)x15 * x15)))));
- { uint64_t x18 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (((uint64_t)x15 * x15) + (((uint64_t)x12 * x15) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x15 * x12))))));
- { uint64_t x19 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (((0x2 * ((uint64_t)x16 * x15)) + (0x2 * ((uint64_t)x15 * x16))) + ((0x2 * ((uint64_t)x10 * x15)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (0x2 * ((uint64_t)x15 * x10))))))));
- { uint64_t x20 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + ((((uint64_t)x14 * x15) + ((0x2 * ((uint64_t)x16 * x16)) + ((uint64_t)x15 * x14))) + (((uint64_t)x8 * x15) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + ((uint64_t)x15 * x8))))))));
- { uint64_t x21 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + ((((uint64_t)x12 * x15) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x15 * x12)))) + (((uint64_t)x6 * x15) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((uint64_t)x15 * x6)))))))));
- { uint64_t x22 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (((0x2 * ((uint64_t)x10 * x15)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (0x2 * ((uint64_t)x15 * x10)))))) + ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4)))))))))));
- { uint64_t x23 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (((uint64_t)x8 * x15) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + ((uint64_t)x15 * x8)))))));
- { uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x6 * x15) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((uint64_t)x15 * x6))))))));
- { uint64_t x25 = (((uint64_t)x2 * x2) + ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4))))))))));
- { uint32_t x26 = (uint32_t) (x23 >> 0x15);
- { uint32_t x27 = ((uint32_t)x23 & 0x1fffff);
- { ℤ x28 = (x17 >>ℤ 0x15);
- { uint32_t x29 = (x17 & 0x1fffff);
- { ℤ x30 = ((0x200000 *ℤ x28) +ℤ x29);
- { ℤ x31 = (x30 >>ℤ 0x15);
- { uint32_t x32 = (x30 & 0x1fffff);
- { ℤ x33 = ((x26 + x22) +ℤ x31);
- { uint64_t x34 = (x33 >> 0x16);
- { uint32_t x35 = (x33 & 0x3fffff);
- { ℤ x36 = (x25 +ℤ x31);
- { uint64_t x37 = (x36 >> 0x16);
- { uint32_t x38 = (x36 & 0x3fffff);
- { uint64_t x39 = (x34 + x21);
- { uint32_t x40 = (uint32_t) (x39 >> 0x15);
- { uint32_t x41 = ((uint32_t)x39 & 0x1fffff);
- { uint64_t x42 = (x37 + x24);
- { uint32_t x43 = (uint32_t) (x42 >> 0x15);
- { uint32_t x44 = ((uint32_t)x42 & 0x1fffff);
- { uint64_t x45 = (x40 + x20);
- { uint32_t x46 = (uint32_t) (x45 >> 0x15);
- { uint32_t x47 = ((uint32_t)x45 & 0x1fffff);
- { uint32_t x48 = (x43 + x27);
- { uint32_t x49 = (x48 >> 0x15);
- { uint32_t x50 = (x48 & 0x1fffff);
- { uint64_t x51 = (x46 + x19);
- { uint32_t x52 = (uint32_t) (x51 >> 0x16);
- { uint32_t x53 = ((uint32_t)x51 & 0x3fffff);
- { uint64_t x54 = (x52 + x18);
- { uint32_t x55 = (uint32_t) (x54 >> 0x15);
- { uint32_t x56 = ((uint32_t)x54 & 0x1fffff);
- { uint32_t x57 = (x55 + x32);
- { uint32_t x58 = (x57 >> 0x15);
- { uint32_t x59 = (x57 & 0x1fffff);
- { uint32_t x60 = ((0x200000 * x58) + x59);
- { uint32_t x61 = (x60 >> 0x15);
- { uint32_t x62 = (x60 & 0x1fffff);
- { uint32_t x63 = ((x49 + x35) + x61);
- { uint32_t x64 = (x63 >> 0x16);
- { uint32_t x65 = (x63 & 0x3fffff);
- { uint32_t x66 = (x38 + x61);
- { uint32_t x67 = (x66 >> 0x16);
- { uint32_t x68 = (x66 & 0x3fffff);
- out[0] = x68;
- out[1] = (x67 + x44);
- out[2] = x50;
- out[3] = x65;
- out[4] = (x64 + x41);
- out[5] = x47;
- out[6] = x53;
- out[7] = x56;
- out[8] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e192m2e64m1_9limbs/fesquare.v b/src/Specific/solinas32_2e192m2e64m1_9limbs/fesquare.v
deleted file mode 100644
index 165cd403c..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_9limbs.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_2e192m2e64m1_9limbs/fesquareDisplay.log b/src/Specific/solinas32_2e192m2e64m1_9limbs/fesquareDisplay.log
deleted file mode 100644
index 18e5049e0..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,59 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- ℤ x17 = ((((uint64_t)x2 * x15) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x15 * x2))))))))) +ℤ ((((uint64_t)x14 * x15) + ((0x2 * ((uint64_t)x16 * x16)) + ((uint64_t)x15 * x14))) +ℤ ((0x200000 *ℤ ((0x2 * ((uint64_t)x16 * x15)) + (0x2 * ((uint64_t)x15 * x16)))) +ℤ (0x80000000000 *ℤ ((uint64_t)x15 * x15)))));
- uint64_t x18 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (((uint64_t)x15 * x15) + (((uint64_t)x12 * x15) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x15 * x12))))));
- uint64_t x19 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (((0x2 * ((uint64_t)x16 * x15)) + (0x2 * ((uint64_t)x15 * x16))) + ((0x2 * ((uint64_t)x10 * x15)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (0x2 * ((uint64_t)x15 * x10))))))));
- uint64_t x20 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + ((((uint64_t)x14 * x15) + ((0x2 * ((uint64_t)x16 * x16)) + ((uint64_t)x15 * x14))) + (((uint64_t)x8 * x15) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + ((uint64_t)x15 * x8))))))));
- uint64_t x21 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + ((((uint64_t)x12 * x15) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x15 * x12)))) + (((uint64_t)x6 * x15) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((uint64_t)x15 * x6)))))))));
- uint64_t x22 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (((0x2 * ((uint64_t)x10 * x15)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (0x2 * ((uint64_t)x15 * x10)))))) + ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4)))))))))));
- uint64_t x23 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (((uint64_t)x8 * x15) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + ((uint64_t)x15 * x8)))))));
- uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x6 * x15) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((uint64_t)x15 * x6))))))));
- uint64_t x25 = (((uint64_t)x2 * x2) + ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4))))))))));
- uint32_t x26 = (uint32_t) (x23 >> 0x15);
- uint32_t x27 = ((uint32_t)x23 & 0x1fffff);
- ℤ x28 = (x17 >>ℤ 0x15);
- uint32_t x29 = (x17 & 0x1fffff);
- ℤ x30 = ((0x200000 *ℤ x28) +ℤ x29);
- ℤ x31 = (x30 >>ℤ 0x15);
- uint32_t x32 = (x30 & 0x1fffff);
- ℤ x33 = ((x26 + x22) +ℤ x31);
- uint64_t x34 = (x33 >> 0x16);
- uint32_t x35 = (x33 & 0x3fffff);
- ℤ x36 = (x25 +ℤ x31);
- uint64_t x37 = (x36 >> 0x16);
- uint32_t x38 = (x36 & 0x3fffff);
- uint64_t x39 = (x34 + x21);
- uint32_t x40 = (uint32_t) (x39 >> 0x15);
- uint32_t x41 = ((uint32_t)x39 & 0x1fffff);
- uint64_t x42 = (x37 + x24);
- uint32_t x43 = (uint32_t) (x42 >> 0x15);
- uint32_t x44 = ((uint32_t)x42 & 0x1fffff);
- uint64_t x45 = (x40 + x20);
- uint32_t x46 = (uint32_t) (x45 >> 0x15);
- uint32_t x47 = ((uint32_t)x45 & 0x1fffff);
- uint32_t x48 = (x43 + x27);
- uint32_t x49 = (x48 >> 0x15);
- uint32_t x50 = (x48 & 0x1fffff);
- uint64_t x51 = (x46 + x19);
- uint32_t x52 = (uint32_t) (x51 >> 0x16);
- uint32_t x53 = ((uint32_t)x51 & 0x3fffff);
- uint64_t x54 = (x52 + x18);
- uint32_t x55 = (uint32_t) (x54 >> 0x15);
- uint32_t x56 = ((uint32_t)x54 & 0x1fffff);
- uint32_t x57 = (x55 + x32);
- uint32_t x58 = (x57 >> 0x15);
- uint32_t x59 = (x57 & 0x1fffff);
- uint32_t x60 = ((0x200000 * x58) + x59);
- uint32_t x61 = (x60 >> 0x15);
- uint32_t x62 = (x60 & 0x1fffff);
- uint32_t x63 = ((x49 + x35) + x61);
- uint32_t x64 = (x63 >> 0x16);
- uint32_t x65 = (x63 & 0x3fffff);
- uint32_t x66 = (x38 + x61);
- uint32_t x67 = (x66 >> 0x16);
- uint32_t x68 = (x66 & 0x3fffff);
- return (Return x62, Return x56, Return x53, Return x47, (x64 + x41), Return x65, Return x50, (x67 + x44), Return x68))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e192m2e64m1_9limbs/fesquareDisplay.v b/src/Specific/solinas32_2e192m2e64m1_9limbs/fesquareDisplay.v
deleted file mode 100644
index 9183e6cec..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e192m2e64m1_9limbs/fesub.c b/src/Specific/solinas32_2e192m2e64m1_9limbs/fesub.c
deleted file mode 100644
index 3adcdaf1e..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/fesub.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void fesub(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = ((0x7ffffe + x5) - x21);
- out[1] = ((0x3ffffe + x7) - x23);
- out[2] = ((0x3ffffe + x9) - x25);
- out[3] = ((0x7ffffc + x11) - x27);
- out[4] = ((0x3ffffe + x13) - x29);
- out[5] = ((0x3ffffe + x15) - x31);
- out[6] = ((0x7ffffe + x17) - x33);
- out[7] = ((0x3ffffe + x19) - x35);
- out[8] = ((0x3ffffe + x18) - x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e192m2e64m1_9limbs/fesub.v b/src/Specific/solinas32_2e192m2e64m1_9limbs/fesub.v
deleted file mode 100644
index 259526f4d..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_9limbs.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_2e192m2e64m1_9limbs/fesubDisplay.log b/src/Specific/solinas32_2e192m2e64m1_9limbs/fesubDisplay.log
deleted file mode 100644
index 9c0e83ada..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- (((0x3ffffe + x18) - x34), ((0x3ffffe + x19) - x35), ((0x7ffffe + x17) - x33), ((0x3ffffe + x15) - x31), ((0x3ffffe + x13) - x29), ((0x7ffffc + x11) - x27), ((0x3ffffe + x9) - x25), ((0x3ffffe + x7) - x23), ((0x7ffffe + x5) - x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e192m2e64m1_9limbs/fesubDisplay.v b/src/Specific/solinas32_2e192m2e64m1_9limbs/fesubDisplay.v
deleted file mode 100644
index 5278df5f7..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e192m2e64m1_9limbs/freeze.c b/src/Specific/solinas32_2e192m2e64m1_9limbs/freeze.c
deleted file mode 100644
index 99c0c9266..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/freeze.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void freeze(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffff);
- { uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0x1fffff);
- { uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0x1fffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x8, 0x3ffffe);
- { uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0x1fffff);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0x1fffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0x3fffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0x1fffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0x1fffff);
- { uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- { uint32_t x45 = (x44 & 0x3fffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- { uint32_t x49 = (x44 & 0x1fffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- { uint32_t x53 = (x44 & 0x1fffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- { uint32_t x57 = (x44 & 0x3ffffe);
- { uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- { uint32_t x61 = (x44 & 0x1fffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- { uint32_t x65 = (x44 & 0x1fffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- { uint32_t x69 = (x44 & 0x3fffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- { uint32_t x73 = (x44 & 0x1fffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- { uint32_t x77 = (x44 & 0x1fffff);
- { uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- out[0] = x47;
- out[1] = x51;
- out[2] = x55;
- out[3] = x59;
- out[4] = x63;
- out[5] = x67;
- out[6] = x71;
- out[7] = x75;
- out[8] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e192m2e64m1_9limbs/freeze.v b/src/Specific/solinas32_2e192m2e64m1_9limbs/freeze.v
deleted file mode 100644
index a1a4b61ae..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_9limbs.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_2e192m2e64m1_9limbs/freezeDisplay.log b/src/Specific/solinas32_2e192m2e64m1_9limbs/freezeDisplay.log
deleted file mode 100644
index bd91d1424..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffff);
- uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0x1fffff);
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0x1fffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x8, 0x3ffffe);
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0x1fffff);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0x1fffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0x3fffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0x1fffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0x1fffff);
- uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- uint32_t x45 = (x44 & 0x3fffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- uint32_t x49 = (x44 & 0x1fffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- uint32_t x53 = (x44 & 0x1fffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- uint32_t x57 = (x44 & 0x3ffffe);
- uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- uint32_t x61 = (x44 & 0x1fffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- uint32_t x65 = (x44 & 0x1fffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- uint32_t x69 = (x44 & 0x3fffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- uint32_t x73 = (x44 & 0x1fffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- uint32_t x77 = (x44 & 0x1fffff);
- uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- (Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x51, Return x47))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e192m2e64m1_9limbs/freezeDisplay.v b/src/Specific/solinas32_2e192m2e64m1_9limbs/freezeDisplay.v
deleted file mode 100644
index bdcbc09d0..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e192m2e64m1_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e192m2e64m1_9limbs/py_interpreter.sh b/src/Specific/solinas32_2e192m2e64m1_9limbs/py_interpreter.sh
deleted file mode 100755
index 79b7e37f6..000000000
--- a/src/Specific/solinas32_2e192m2e64m1_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**192 - 2**64 - 1' -Dmodulus_bytes='21 + 1/3' -Da24='121665'
diff --git a/src/Specific/solinas32_2e194m33_8limbs/CurveParameters.v b/src/Specific/solinas32_2e194m33_8limbs/CurveParameters.v
deleted file mode 100644
index ac84fa183..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^194 - 33
-Base: 24.25
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 24 + 1/4;
- bitwidth := 32;
- s := 2^194;
- c := [(1, 33)];
- carry_chains := Some [seq 0 (pred 8); [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_2e194m33_8limbs/Synthesis.v b/src/Specific/solinas32_2e194m33_8limbs/Synthesis.v
deleted file mode 100644
index b714606f9..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e194m33_8limbs.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_2e194m33_8limbs/compiler.sh b/src/Specific/solinas32_2e194m33_8limbs/compiler.sh
deleted file mode 100755
index 5f9ff1836..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,24,24,24,25,24,24,24}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<194) - 33' "$@"
diff --git a/src/Specific/solinas32_2e194m33_8limbs/compilerxx.sh b/src/Specific/solinas32_2e194m33_8limbs/compilerxx.sh
deleted file mode 100755
index a8f803ec6..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,24,24,24,25,24,24,24}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<194) - 33' "$@"
diff --git a/src/Specific/solinas32_2e194m33_8limbs/feadd.c b/src/Specific/solinas32_2e194m33_8limbs/feadd.c
deleted file mode 100644
index cc3671f75..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e194m33_8limbs/feadd.v b/src/Specific/solinas32_2e194m33_8limbs/feadd.v
deleted file mode 100644
index 21347e97b..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e194m33_8limbs.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_2e194m33_8limbs/feaddDisplay.log b/src/Specific/solinas32_2e194m33_8limbs/feaddDisplay.log
deleted file mode 100644
index f25c10903..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e194m33_8limbs/feaddDisplay.v b/src/Specific/solinas32_2e194m33_8limbs/feaddDisplay.v
deleted file mode 100644
index 3db83e06d..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e194m33_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e194m33_8limbs/fecarry.v b/src/Specific/solinas32_2e194m33_8limbs/fecarry.v
deleted file mode 100644
index c3b195f77..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e194m33_8limbs.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_2e194m33_8limbs/fecarryDisplay.v b/src/Specific/solinas32_2e194m33_8limbs/fecarryDisplay.v
deleted file mode 100644
index 539fd774f..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e194m33_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e194m33_8limbs/femul.c b/src/Specific/solinas32_2e194m33_8limbs/femul.c
deleted file mode 100644
index 59c62a65b..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint64_t x32 = (((uint64_t)x5 * x30) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + ((0x2 * ((uint64_t)x15 * x23)) + ((0x2 * ((uint64_t)x17 * x21)) + ((uint64_t)x16 * x19))))))));
- { uint64_t x33 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + (((uint64_t)x13 * x23) + ((0x2 * ((uint64_t)x15 * x21)) + ((uint64_t)x17 * x19))))))) + (0x21 * ((uint64_t)x16 * x30)));
- { uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0x21 * (((uint64_t)x17 * x30) + ((uint64_t)x16 * x31))));
- { uint64_t x35 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + ((uint64_t)x13 * x19))))) + (0x21 * ((0x2 * ((uint64_t)x15 * x30)) + ((0x2 * ((uint64_t)x17 * x31)) + (0x2 * ((uint64_t)x16 * x29))))));
- { uint64_t x36 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((0x2 * ((uint64_t)x9 * x21)) + ((uint64_t)x11 * x19)))) + (0x21 * (((uint64_t)x13 * x30) + ((0x2 * ((uint64_t)x15 * x31)) + ((0x2 * ((uint64_t)x17 * x29)) + ((uint64_t)x16 * x27))))));
- { uint64_t x37 = ((((uint64_t)x5 * x23) + ((0x2 * ((uint64_t)x7 * x21)) + ((uint64_t)x9 * x19))) + (0x21 * (((uint64_t)x11 * x30) + (((uint64_t)x13 * x31) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + ((uint64_t)x16 * x25)))))));
- { uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0x21 * (((uint64_t)x9 * x30) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + ((uint64_t)x16 * x23))))))));
- { uint64_t x39 = (((uint64_t)x5 * x19) + (0x21 * ((0x2 * ((uint64_t)x7 * x30)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + (0x2 * ((uint64_t)x16 * x21))))))))));
- { uint64_t x40 = (x39 >> 0x19);
- { uint32_t x41 = ((uint32_t)x39 & 0x1ffffff);
- { uint64_t x42 = (x40 + x38);
- { uint64_t x43 = (x42 >> 0x18);
- { uint32_t x44 = ((uint32_t)x42 & 0xffffff);
- { uint64_t x45 = (x43 + x37);
- { uint64_t x46 = (x45 >> 0x18);
- { uint32_t x47 = ((uint32_t)x45 & 0xffffff);
- { uint64_t x48 = (x46 + x36);
- { uint64_t x49 = (x48 >> 0x18);
- { uint32_t x50 = ((uint32_t)x48 & 0xffffff);
- { uint64_t x51 = (x49 + x35);
- { uint64_t x52 = (x51 >> 0x19);
- { uint32_t x53 = ((uint32_t)x51 & 0x1ffffff);
- { uint64_t x54 = (x52 + x34);
- { uint64_t x55 = (x54 >> 0x18);
- { uint32_t x56 = ((uint32_t)x54 & 0xffffff);
- { uint64_t x57 = (x55 + x33);
- { uint64_t x58 = (x57 >> 0x18);
- { uint32_t x59 = ((uint32_t)x57 & 0xffffff);
- { uint64_t x60 = (x58 + x32);
- { uint32_t x61 = (uint32_t) (x60 >> 0x18);
- { uint32_t x62 = ((uint32_t)x60 & 0xffffff);
- { uint64_t x63 = (x41 + ((uint64_t)0x21 * x61));
- { uint32_t x64 = (uint32_t) (x63 >> 0x19);
- { uint32_t x65 = ((uint32_t)x63 & 0x1ffffff);
- { uint32_t x66 = (x64 + x44);
- { uint32_t x67 = (x66 >> 0x18);
- { uint32_t x68 = (x66 & 0xffffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e194m33_8limbs/femul.v b/src/Specific/solinas32_2e194m33_8limbs/femul.v
deleted file mode 100644
index 198f99f08..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e194m33_8limbs.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_2e194m33_8limbs/femulDisplay.log b/src/Specific/solinas32_2e194m33_8limbs/femulDisplay.log
deleted file mode 100644
index d47f7631a..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x32 = (((uint64_t)x5 * x30) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + ((0x2 * ((uint64_t)x15 * x23)) + ((0x2 * ((uint64_t)x17 * x21)) + ((uint64_t)x16 * x19))))))));
- uint64_t x33 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + (((uint64_t)x13 * x23) + ((0x2 * ((uint64_t)x15 * x21)) + ((uint64_t)x17 * x19))))))) + (0x21 * ((uint64_t)x16 * x30)));
- uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0x21 * (((uint64_t)x17 * x30) + ((uint64_t)x16 * x31))));
- uint64_t x35 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + ((uint64_t)x13 * x19))))) + (0x21 * ((0x2 * ((uint64_t)x15 * x30)) + ((0x2 * ((uint64_t)x17 * x31)) + (0x2 * ((uint64_t)x16 * x29))))));
- uint64_t x36 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((0x2 * ((uint64_t)x9 * x21)) + ((uint64_t)x11 * x19)))) + (0x21 * (((uint64_t)x13 * x30) + ((0x2 * ((uint64_t)x15 * x31)) + ((0x2 * ((uint64_t)x17 * x29)) + ((uint64_t)x16 * x27))))));
- uint64_t x37 = ((((uint64_t)x5 * x23) + ((0x2 * ((uint64_t)x7 * x21)) + ((uint64_t)x9 * x19))) + (0x21 * (((uint64_t)x11 * x30) + (((uint64_t)x13 * x31) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + ((uint64_t)x16 * x25)))))));
- uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0x21 * (((uint64_t)x9 * x30) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + ((uint64_t)x16 * x23))))))));
- uint64_t x39 = (((uint64_t)x5 * x19) + (0x21 * ((0x2 * ((uint64_t)x7 * x30)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + (0x2 * ((uint64_t)x16 * x21))))))))));
- uint64_t x40 = (x39 >> 0x19);
- uint32_t x41 = ((uint32_t)x39 & 0x1ffffff);
- uint64_t x42 = (x40 + x38);
- uint64_t x43 = (x42 >> 0x18);
- uint32_t x44 = ((uint32_t)x42 & 0xffffff);
- uint64_t x45 = (x43 + x37);
- uint64_t x46 = (x45 >> 0x18);
- uint32_t x47 = ((uint32_t)x45 & 0xffffff);
- uint64_t x48 = (x46 + x36);
- uint64_t x49 = (x48 >> 0x18);
- uint32_t x50 = ((uint32_t)x48 & 0xffffff);
- uint64_t x51 = (x49 + x35);
- uint64_t x52 = (x51 >> 0x19);
- uint32_t x53 = ((uint32_t)x51 & 0x1ffffff);
- uint64_t x54 = (x52 + x34);
- uint64_t x55 = (x54 >> 0x18);
- uint32_t x56 = ((uint32_t)x54 & 0xffffff);
- uint64_t x57 = (x55 + x33);
- uint64_t x58 = (x57 >> 0x18);
- uint32_t x59 = ((uint32_t)x57 & 0xffffff);
- uint64_t x60 = (x58 + x32);
- uint32_t x61 = (uint32_t) (x60 >> 0x18);
- uint32_t x62 = ((uint32_t)x60 & 0xffffff);
- uint64_t x63 = (x41 + ((uint64_t)0x21 * x61));
- uint32_t x64 = (uint32_t) (x63 >> 0x19);
- uint32_t x65 = ((uint32_t)x63 & 0x1ffffff);
- uint32_t x66 = (x64 + x44);
- uint32_t x67 = (x66 >> 0x18);
- uint32_t x68 = (x66 & 0xffffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e194m33_8limbs/femulDisplay.v b/src/Specific/solinas32_2e194m33_8limbs/femulDisplay.v
deleted file mode 100644
index d4de41ebd..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e194m33_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e194m33_8limbs/fesquare.c b/src/Specific/solinas32_2e194m33_8limbs/fesquare.c
deleted file mode 100644
index c5d941438..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (((uint64_t)x2 * x13) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x13 * x2))))))));
- { uint64_t x16 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x21 * ((uint64_t)x13 * x13)));
- { uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x21 * (((uint64_t)x14 * x13) + ((uint64_t)x13 * x14))));
- { uint64_t x18 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x21 * ((0x2 * ((uint64_t)x12 * x13)) + ((0x2 * ((uint64_t)x14 * x14)) + (0x2 * ((uint64_t)x13 * x12))))));
- { uint64_t x19 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x21 * (((uint64_t)x10 * x13) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((uint64_t)x13 * x10))))));
- { uint64_t x20 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x21 * (((uint64_t)x8 * x13) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + ((uint64_t)x13 * x8)))))));
- { uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x21 * (((uint64_t)x6 * x13) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((uint64_t)x13 * x6))))))));
- { uint64_t x22 = (((uint64_t)x2 * x2) + (0x21 * ((0x2 * ((uint64_t)x4 * x13)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (0x2 * ((uint64_t)x13 * x4))))))))));
- { uint64_t x23 = (x22 >> 0x19);
- { uint32_t x24 = ((uint32_t)x22 & 0x1ffffff);
- { uint64_t x25 = (x23 + x21);
- { uint64_t x26 = (x25 >> 0x18);
- { uint32_t x27 = ((uint32_t)x25 & 0xffffff);
- { uint64_t x28 = (x26 + x20);
- { uint64_t x29 = (x28 >> 0x18);
- { uint32_t x30 = ((uint32_t)x28 & 0xffffff);
- { uint64_t x31 = (x29 + x19);
- { uint64_t x32 = (x31 >> 0x18);
- { uint32_t x33 = ((uint32_t)x31 & 0xffffff);
- { uint64_t x34 = (x32 + x18);
- { uint64_t x35 = (x34 >> 0x19);
- { uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- { uint64_t x37 = (x35 + x17);
- { uint64_t x38 = (x37 >> 0x18);
- { uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- { uint64_t x40 = (x38 + x16);
- { uint64_t x41 = (x40 >> 0x18);
- { uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- { uint64_t x43 = (x41 + x15);
- { uint32_t x44 = (uint32_t) (x43 >> 0x18);
- { uint32_t x45 = ((uint32_t)x43 & 0xffffff);
- { uint64_t x46 = (x24 + ((uint64_t)0x21 * x44));
- { uint32_t x47 = (uint32_t) (x46 >> 0x19);
- { uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- { uint32_t x49 = (x47 + x27);
- { uint32_t x50 = (x49 >> 0x18);
- { uint32_t x51 = (x49 & 0xffffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e194m33_8limbs/fesquare.v b/src/Specific/solinas32_2e194m33_8limbs/fesquare.v
deleted file mode 100644
index 2c3a6c96f..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e194m33_8limbs.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_2e194m33_8limbs/fesquareDisplay.log b/src/Specific/solinas32_2e194m33_8limbs/fesquareDisplay.log
deleted file mode 100644
index 49b2ae021..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (((uint64_t)x2 * x13) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x13 * x2))))))));
- uint64_t x16 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x21 * ((uint64_t)x13 * x13)));
- uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x21 * (((uint64_t)x14 * x13) + ((uint64_t)x13 * x14))));
- uint64_t x18 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x21 * ((0x2 * ((uint64_t)x12 * x13)) + ((0x2 * ((uint64_t)x14 * x14)) + (0x2 * ((uint64_t)x13 * x12))))));
- uint64_t x19 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x21 * (((uint64_t)x10 * x13) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((uint64_t)x13 * x10))))));
- uint64_t x20 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x21 * (((uint64_t)x8 * x13) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + ((uint64_t)x13 * x8)))))));
- uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x21 * (((uint64_t)x6 * x13) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((uint64_t)x13 * x6))))))));
- uint64_t x22 = (((uint64_t)x2 * x2) + (0x21 * ((0x2 * ((uint64_t)x4 * x13)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (0x2 * ((uint64_t)x13 * x4))))))))));
- uint64_t x23 = (x22 >> 0x19);
- uint32_t x24 = ((uint32_t)x22 & 0x1ffffff);
- uint64_t x25 = (x23 + x21);
- uint64_t x26 = (x25 >> 0x18);
- uint32_t x27 = ((uint32_t)x25 & 0xffffff);
- uint64_t x28 = (x26 + x20);
- uint64_t x29 = (x28 >> 0x18);
- uint32_t x30 = ((uint32_t)x28 & 0xffffff);
- uint64_t x31 = (x29 + x19);
- uint64_t x32 = (x31 >> 0x18);
- uint32_t x33 = ((uint32_t)x31 & 0xffffff);
- uint64_t x34 = (x32 + x18);
- uint64_t x35 = (x34 >> 0x19);
- uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- uint64_t x37 = (x35 + x17);
- uint64_t x38 = (x37 >> 0x18);
- uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- uint64_t x40 = (x38 + x16);
- uint64_t x41 = (x40 >> 0x18);
- uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- uint64_t x43 = (x41 + x15);
- uint32_t x44 = (uint32_t) (x43 >> 0x18);
- uint32_t x45 = ((uint32_t)x43 & 0xffffff);
- uint64_t x46 = (x24 + ((uint64_t)0x21 * x44));
- uint32_t x47 = (uint32_t) (x46 >> 0x19);
- uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- uint32_t x49 = (x47 + x27);
- uint32_t x50 = (x49 >> 0x18);
- uint32_t x51 = (x49 & 0xffffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e194m33_8limbs/fesquareDisplay.v b/src/Specific/solinas32_2e194m33_8limbs/fesquareDisplay.v
deleted file mode 100644
index 2c34724cd..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e194m33_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e194m33_8limbs/fesub.c b/src/Specific/solinas32_2e194m33_8limbs/fesub.c
deleted file mode 100644
index 970c77da5..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = ((0x3ffffbe + x5) - x19);
- out[1] = ((0x1fffffe + x7) - x21);
- out[2] = ((0x1fffffe + x9) - x23);
- out[3] = ((0x1fffffe + x11) - x25);
- out[4] = ((0x3fffffe + x13) - x27);
- out[5] = ((0x1fffffe + x15) - x29);
- out[6] = ((0x1fffffe + x17) - x31);
- out[7] = ((0x1fffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e194m33_8limbs/fesub.v b/src/Specific/solinas32_2e194m33_8limbs/fesub.v
deleted file mode 100644
index 374b77573..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e194m33_8limbs.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_2e194m33_8limbs/fesubDisplay.log b/src/Specific/solinas32_2e194m33_8limbs/fesubDisplay.log
deleted file mode 100644
index ed0218289..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0x1fffffe + x16) - x30), ((0x1fffffe + x17) - x31), ((0x1fffffe + x15) - x29), ((0x3fffffe + x13) - x27), ((0x1fffffe + x11) - x25), ((0x1fffffe + x9) - x23), ((0x1fffffe + x7) - x21), ((0x3ffffbe + x5) - x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e194m33_8limbs/fesubDisplay.v b/src/Specific/solinas32_2e194m33_8limbs/fesubDisplay.v
deleted file mode 100644
index ffdd120e3..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e194m33_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e194m33_8limbs/freeze.c b/src/Specific/solinas32_2e194m33_8limbs/freeze.c
deleted file mode 100644
index a56db3e82..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffdf);
- { uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffff);
- { uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffff);
- { uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0xffffff);
- { uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0x1ffffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffff);
- { uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0xffffff);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0xffffff);
- { uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- { uint32_t x40 = (x39 & 0x1ffffdf);
- { uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint32_t x44 = (x39 & 0xffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint32_t x48 = (x39 & 0xffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint32_t x52 = (x39 & 0xffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint32_t x56 = (x39 & 0x1ffffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint32_t x60 = (x39 & 0xffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint32_t x64 = (x39 & 0xffffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint32_t x68 = (x39 & 0xffffff);
- { uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e194m33_8limbs/freeze.v b/src/Specific/solinas32_2e194m33_8limbs/freeze.v
deleted file mode 100644
index 87951d0a4..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e194m33_8limbs.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_2e194m33_8limbs/freezeDisplay.log b/src/Specific/solinas32_2e194m33_8limbs/freezeDisplay.log
deleted file mode 100644
index 64df88137..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffdf);
- uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffff);
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffff);
- uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0xffffff);
- uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0x1ffffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffff);
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0xffffff);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0xffffff);
- uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- uint32_t x40 = (x39 & 0x1ffffdf);
- uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint32_t x44 = (x39 & 0xffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint32_t x48 = (x39 & 0xffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint32_t x52 = (x39 & 0xffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint32_t x56 = (x39 & 0x1ffffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint32_t x60 = (x39 & 0xffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint32_t x64 = (x39 & 0xffffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint32_t x68 = (x39 & 0xffffff);
- uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e194m33_8limbs/freezeDisplay.v b/src/Specific/solinas32_2e194m33_8limbs/freezeDisplay.v
deleted file mode 100644
index a828f6a6b..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e194m33_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e194m33_8limbs/py_interpreter.sh b/src/Specific/solinas32_2e194m33_8limbs/py_interpreter.sh
deleted file mode 100755
index b44eb42c5..000000000
--- a/src/Specific/solinas32_2e194m33_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**194 - 33' -Dmodulus_bytes='24.25' -Da24='121665'
diff --git a/src/Specific/solinas32_2e194m33_9limbs/CurveParameters.v b/src/Specific/solinas32_2e194m33_9limbs/CurveParameters.v
deleted file mode 100644
index 75adb53e4..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^194 - 33
-Base: 21 + 5/9
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 21 + 5/9;
- bitwidth := 32;
- s := 2^194;
- c := [(1, 33)];
- carry_chains := Some [seq 0 (pred 9); [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_2e194m33_9limbs/Synthesis.v b/src/Specific/solinas32_2e194m33_9limbs/Synthesis.v
deleted file mode 100644
index 05f47ca44..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e194m33_9limbs.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_2e194m33_9limbs/compiler.sh b/src/Specific/solinas32_2e194m33_9limbs/compiler.sh
deleted file mode 100755
index d55b4c9e5..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,21,22,21,22,21,22,21}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<194) - 33' "$@"
diff --git a/src/Specific/solinas32_2e194m33_9limbs/compilerxx.sh b/src/Specific/solinas32_2e194m33_9limbs/compilerxx.sh
deleted file mode 100755
index 87a979e10..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,21,22,21,22,21,22,21}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<194) - 33' "$@"
diff --git a/src/Specific/solinas32_2e194m33_9limbs/feadd.c b/src/Specific/solinas32_2e194m33_9limbs/feadd.c
deleted file mode 100644
index e1188fdec..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e194m33_9limbs/feadd.v b/src/Specific/solinas32_2e194m33_9limbs/feadd.v
deleted file mode 100644
index cde2a6e3e..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e194m33_9limbs.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_2e194m33_9limbs/feaddDisplay.log b/src/Specific/solinas32_2e194m33_9limbs/feaddDisplay.log
deleted file mode 100644
index e26bb40f8..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e194m33_9limbs/feaddDisplay.v b/src/Specific/solinas32_2e194m33_9limbs/feaddDisplay.v
deleted file mode 100644
index ef29a5528..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e194m33_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e194m33_9limbs/fecarry.v b/src/Specific/solinas32_2e194m33_9limbs/fecarry.v
deleted file mode 100644
index 71ac0eff8..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e194m33_9limbs.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_2e194m33_9limbs/fecarryDisplay.v b/src/Specific/solinas32_2e194m33_9limbs/fecarryDisplay.v
deleted file mode 100644
index e4792fc37..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e194m33_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e194m33_9limbs/femul.c b/src/Specific/solinas32_2e194m33_9limbs/femul.c
deleted file mode 100644
index d5c4e4106..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/femul.c
+++ /dev/null
@@ -1,71 +0,0 @@
-static void femul(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- { uint64_t x36 = (((uint64_t)x5 * x34) + (((uint64_t)x7 * x35) + ((0x2 * ((uint64_t)x9 * x33)) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + (((uint64_t)x15 * x27) + ((0x2 * ((uint64_t)x17 * x25)) + (((uint64_t)x19 * x23) + ((uint64_t)x18 * x21)))))))));
- { uint64_t x37 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + ((uint64_t)x19 * x21)))))))) + (0x21 * (0x2 * ((uint64_t)x18 * x34))));
- { uint64_t x38 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + ((0x2 * ((uint64_t)x9 * x29)) + (((uint64_t)x11 * x27) + ((0x2 * ((uint64_t)x13 * x25)) + (((uint64_t)x15 * x23) + ((uint64_t)x17 * x21))))))) + (0x21 * (((uint64_t)x19 * x34) + ((uint64_t)x18 * x35))));
- { uint64_t x39 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((uint64_t)x15 * x21)))))) + (0x21 * ((0x2 * ((uint64_t)x17 * x34)) + (((uint64_t)x19 * x35) + (0x2 * ((uint64_t)x18 * x33))))));
- { uint64_t x40 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + (((uint64_t)x11 * x23) + ((uint64_t)x13 * x21))))) + (0x21 * (((uint64_t)x15 * x34) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x18 * x31))))));
- { uint64_t x41 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((uint64_t)x11 * x21)))) + (0x21 * ((0x2 * ((uint64_t)x13 * x34)) + (((uint64_t)x15 * x35) + ((0x2 * ((uint64_t)x17 * x33)) + (((uint64_t)x19 * x31) + (0x2 * ((uint64_t)x18 * x29))))))));
- { uint64_t x42 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + ((uint64_t)x9 * x21))) + (0x21 * (((uint64_t)x11 * x34) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + ((uint64_t)x18 * x27))))))));
- { uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0x21 * ((0x2 * ((uint64_t)x9 * x34)) + (((uint64_t)x11 * x35) + ((0x2 * ((uint64_t)x13 * x33)) + (((uint64_t)x15 * x31) + ((0x2 * ((uint64_t)x17 * x29)) + (((uint64_t)x19 * x27) + (0x2 * ((uint64_t)x18 * x25))))))))));
- { uint64_t x44 = (((uint64_t)x5 * x21) + (0x21 * ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23)))))))))));
- { uint64_t x45 = (x44 >> 0x16);
- { uint32_t x46 = ((uint32_t)x44 & 0x3fffff);
- { uint64_t x47 = (x45 + x43);
- { uint64_t x48 = (x47 >> 0x16);
- { uint32_t x49 = ((uint32_t)x47 & 0x3fffff);
- { uint64_t x50 = (x48 + x42);
- { uint64_t x51 = (x50 >> 0x15);
- { uint32_t x52 = ((uint32_t)x50 & 0x1fffff);
- { uint64_t x53 = (x51 + x41);
- { uint64_t x54 = (x53 >> 0x16);
- { uint32_t x55 = ((uint32_t)x53 & 0x3fffff);
- { uint64_t x56 = (x54 + x40);
- { uint64_t x57 = (x56 >> 0x15);
- { uint32_t x58 = ((uint32_t)x56 & 0x1fffff);
- { uint64_t x59 = (x57 + x39);
- { uint32_t x60 = (uint32_t) (x59 >> 0x16);
- { uint32_t x61 = ((uint32_t)x59 & 0x3fffff);
- { uint64_t x62 = (x60 + x38);
- { uint32_t x63 = (uint32_t) (x62 >> 0x15);
- { uint32_t x64 = ((uint32_t)x62 & 0x1fffff);
- { uint64_t x65 = (x63 + x37);
- { uint32_t x66 = (uint32_t) (x65 >> 0x16);
- { uint32_t x67 = ((uint32_t)x65 & 0x3fffff);
- { uint64_t x68 = (x66 + x36);
- { uint32_t x69 = (uint32_t) (x68 >> 0x15);
- { uint32_t x70 = ((uint32_t)x68 & 0x1fffff);
- { uint64_t x71 = (x46 + ((uint64_t)0x21 * x69));
- { uint32_t x72 = (uint32_t) (x71 >> 0x16);
- { uint32_t x73 = ((uint32_t)x71 & 0x3fffff);
- { uint32_t x74 = (x72 + x49);
- { uint32_t x75 = (x74 >> 0x16);
- { uint32_t x76 = (x74 & 0x3fffff);
- out[0] = x73;
- out[1] = x76;
- out[2] = (x75 + x52);
- out[3] = x55;
- out[4] = x58;
- out[5] = x61;
- out[6] = x64;
- out[7] = x67;
- out[8] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e194m33_9limbs/femul.v b/src/Specific/solinas32_2e194m33_9limbs/femul.v
deleted file mode 100644
index 25610b0ab..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e194m33_9limbs.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_2e194m33_9limbs/femulDisplay.log b/src/Specific/solinas32_2e194m33_9limbs/femulDisplay.log
deleted file mode 100644
index d20398ca5..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/femulDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint64_t x36 = (((uint64_t)x5 * x34) + (((uint64_t)x7 * x35) + ((0x2 * ((uint64_t)x9 * x33)) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + (((uint64_t)x15 * x27) + ((0x2 * ((uint64_t)x17 * x25)) + (((uint64_t)x19 * x23) + ((uint64_t)x18 * x21)))))))));
- uint64_t x37 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + ((uint64_t)x19 * x21)))))))) + (0x21 * (0x2 * ((uint64_t)x18 * x34))));
- uint64_t x38 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + ((0x2 * ((uint64_t)x9 * x29)) + (((uint64_t)x11 * x27) + ((0x2 * ((uint64_t)x13 * x25)) + (((uint64_t)x15 * x23) + ((uint64_t)x17 * x21))))))) + (0x21 * (((uint64_t)x19 * x34) + ((uint64_t)x18 * x35))));
- uint64_t x39 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((uint64_t)x15 * x21)))))) + (0x21 * ((0x2 * ((uint64_t)x17 * x34)) + (((uint64_t)x19 * x35) + (0x2 * ((uint64_t)x18 * x33))))));
- uint64_t x40 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + (((uint64_t)x11 * x23) + ((uint64_t)x13 * x21))))) + (0x21 * (((uint64_t)x15 * x34) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x18 * x31))))));
- uint64_t x41 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((uint64_t)x11 * x21)))) + (0x21 * ((0x2 * ((uint64_t)x13 * x34)) + (((uint64_t)x15 * x35) + ((0x2 * ((uint64_t)x17 * x33)) + (((uint64_t)x19 * x31) + (0x2 * ((uint64_t)x18 * x29))))))));
- uint64_t x42 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + ((uint64_t)x9 * x21))) + (0x21 * (((uint64_t)x11 * x34) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + ((uint64_t)x18 * x27))))))));
- uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0x21 * ((0x2 * ((uint64_t)x9 * x34)) + (((uint64_t)x11 * x35) + ((0x2 * ((uint64_t)x13 * x33)) + (((uint64_t)x15 * x31) + ((0x2 * ((uint64_t)x17 * x29)) + (((uint64_t)x19 * x27) + (0x2 * ((uint64_t)x18 * x25))))))))));
- uint64_t x44 = (((uint64_t)x5 * x21) + (0x21 * ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23)))))))))));
- uint64_t x45 = (x44 >> 0x16);
- uint32_t x46 = ((uint32_t)x44 & 0x3fffff);
- uint64_t x47 = (x45 + x43);
- uint64_t x48 = (x47 >> 0x16);
- uint32_t x49 = ((uint32_t)x47 & 0x3fffff);
- uint64_t x50 = (x48 + x42);
- uint64_t x51 = (x50 >> 0x15);
- uint32_t x52 = ((uint32_t)x50 & 0x1fffff);
- uint64_t x53 = (x51 + x41);
- uint64_t x54 = (x53 >> 0x16);
- uint32_t x55 = ((uint32_t)x53 & 0x3fffff);
- uint64_t x56 = (x54 + x40);
- uint64_t x57 = (x56 >> 0x15);
- uint32_t x58 = ((uint32_t)x56 & 0x1fffff);
- uint64_t x59 = (x57 + x39);
- uint32_t x60 = (uint32_t) (x59 >> 0x16);
- uint32_t x61 = ((uint32_t)x59 & 0x3fffff);
- uint64_t x62 = (x60 + x38);
- uint32_t x63 = (uint32_t) (x62 >> 0x15);
- uint32_t x64 = ((uint32_t)x62 & 0x1fffff);
- uint64_t x65 = (x63 + x37);
- uint32_t x66 = (uint32_t) (x65 >> 0x16);
- uint32_t x67 = ((uint32_t)x65 & 0x3fffff);
- uint64_t x68 = (x66 + x36);
- uint32_t x69 = (uint32_t) (x68 >> 0x15);
- uint32_t x70 = ((uint32_t)x68 & 0x1fffff);
- uint64_t x71 = (x46 + ((uint64_t)0x21 * x69));
- uint32_t x72 = (uint32_t) (x71 >> 0x16);
- uint32_t x73 = ((uint32_t)x71 & 0x3fffff);
- uint32_t x74 = (x72 + x49);
- uint32_t x75 = (x74 >> 0x16);
- uint32_t x76 = (x74 & 0x3fffff);
- return (Return x70, Return x67, Return x64, Return x61, Return x58, Return x55, (x75 + x52), Return x76, Return x73))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e194m33_9limbs/femulDisplay.v b/src/Specific/solinas32_2e194m33_9limbs/femulDisplay.v
deleted file mode 100644
index 95b91b49f..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e194m33_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e194m33_9limbs/fesquare.c b/src/Specific/solinas32_2e194m33_9limbs/fesquare.c
deleted file mode 100644
index 8f3537f2b..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/fesquare.c
+++ /dev/null
@@ -1,62 +0,0 @@
-static void fesquare(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x17 = (((uint64_t)x2 * x15) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x15 * x2)))))))));
- { uint64_t x18 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x21 * (0x2 * ((uint64_t)x15 * x15))));
- { uint64_t x19 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x21 * (((uint64_t)x16 * x15) + ((uint64_t)x15 * x16))));
- { uint64_t x20 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x21 * ((0x2 * ((uint64_t)x14 * x15)) + (((uint64_t)x16 * x16) + (0x2 * ((uint64_t)x15 * x14))))));
- { uint64_t x21 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x21 * (((uint64_t)x12 * x15) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x15 * x12))))));
- { uint64_t x22 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x21 * ((0x2 * ((uint64_t)x10 * x15)) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (0x2 * ((uint64_t)x15 * x10))))))));
- { uint64_t x23 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x21 * (((uint64_t)x8 * x15) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x15 * x8))))))));
- { uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x21 * ((0x2 * ((uint64_t)x6 * x15)) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + (0x2 * ((uint64_t)x15 * x6))))))))));
- { uint64_t x25 = (((uint64_t)x2 * x2) + (0x21 * ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4)))))))))));
- { uint64_t x26 = (x25 >> 0x16);
- { uint32_t x27 = ((uint32_t)x25 & 0x3fffff);
- { uint64_t x28 = (x26 + x24);
- { uint64_t x29 = (x28 >> 0x16);
- { uint32_t x30 = ((uint32_t)x28 & 0x3fffff);
- { uint64_t x31 = (x29 + x23);
- { uint64_t x32 = (x31 >> 0x15);
- { uint32_t x33 = ((uint32_t)x31 & 0x1fffff);
- { uint64_t x34 = (x32 + x22);
- { uint64_t x35 = (x34 >> 0x16);
- { uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- { uint64_t x37 = (x35 + x21);
- { uint64_t x38 = (x37 >> 0x15);
- { uint32_t x39 = ((uint32_t)x37 & 0x1fffff);
- { uint64_t x40 = (x38 + x20);
- { uint32_t x41 = (uint32_t) (x40 >> 0x16);
- { uint32_t x42 = ((uint32_t)x40 & 0x3fffff);
- { uint64_t x43 = (x41 + x19);
- { uint32_t x44 = (uint32_t) (x43 >> 0x15);
- { uint32_t x45 = ((uint32_t)x43 & 0x1fffff);
- { uint64_t x46 = (x44 + x18);
- { uint32_t x47 = (uint32_t) (x46 >> 0x16);
- { uint32_t x48 = ((uint32_t)x46 & 0x3fffff);
- { uint64_t x49 = (x47 + x17);
- { uint32_t x50 = (uint32_t) (x49 >> 0x15);
- { uint32_t x51 = ((uint32_t)x49 & 0x1fffff);
- { uint64_t x52 = (x27 + ((uint64_t)0x21 * x50));
- { uint32_t x53 = (uint32_t) (x52 >> 0x16);
- { uint32_t x54 = ((uint32_t)x52 & 0x3fffff);
- { uint32_t x55 = (x53 + x30);
- { uint32_t x56 = (x55 >> 0x16);
- { uint32_t x57 = (x55 & 0x3fffff);
- out[0] = x54;
- out[1] = x57;
- out[2] = (x56 + x33);
- out[3] = x36;
- out[4] = x39;
- out[5] = x42;
- out[6] = x45;
- out[7] = x48;
- out[8] = x51;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e194m33_9limbs/fesquare.v b/src/Specific/solinas32_2e194m33_9limbs/fesquare.v
deleted file mode 100644
index 398d9b535..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e194m33_9limbs.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_2e194m33_9limbs/fesquareDisplay.log b/src/Specific/solinas32_2e194m33_9limbs/fesquareDisplay.log
deleted file mode 100644
index 854b31f24..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x17 = (((uint64_t)x2 * x15) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x15 * x2)))))))));
- uint64_t x18 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x21 * (0x2 * ((uint64_t)x15 * x15))));
- uint64_t x19 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x21 * (((uint64_t)x16 * x15) + ((uint64_t)x15 * x16))));
- uint64_t x20 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x21 * ((0x2 * ((uint64_t)x14 * x15)) + (((uint64_t)x16 * x16) + (0x2 * ((uint64_t)x15 * x14))))));
- uint64_t x21 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x21 * (((uint64_t)x12 * x15) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x15 * x12))))));
- uint64_t x22 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x21 * ((0x2 * ((uint64_t)x10 * x15)) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (0x2 * ((uint64_t)x15 * x10))))))));
- uint64_t x23 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x21 * (((uint64_t)x8 * x15) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x15 * x8))))))));
- uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x21 * ((0x2 * ((uint64_t)x6 * x15)) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + (0x2 * ((uint64_t)x15 * x6))))))))));
- uint64_t x25 = (((uint64_t)x2 * x2) + (0x21 * ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4)))))))))));
- uint64_t x26 = (x25 >> 0x16);
- uint32_t x27 = ((uint32_t)x25 & 0x3fffff);
- uint64_t x28 = (x26 + x24);
- uint64_t x29 = (x28 >> 0x16);
- uint32_t x30 = ((uint32_t)x28 & 0x3fffff);
- uint64_t x31 = (x29 + x23);
- uint64_t x32 = (x31 >> 0x15);
- uint32_t x33 = ((uint32_t)x31 & 0x1fffff);
- uint64_t x34 = (x32 + x22);
- uint64_t x35 = (x34 >> 0x16);
- uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- uint64_t x37 = (x35 + x21);
- uint64_t x38 = (x37 >> 0x15);
- uint32_t x39 = ((uint32_t)x37 & 0x1fffff);
- uint64_t x40 = (x38 + x20);
- uint32_t x41 = (uint32_t) (x40 >> 0x16);
- uint32_t x42 = ((uint32_t)x40 & 0x3fffff);
- uint64_t x43 = (x41 + x19);
- uint32_t x44 = (uint32_t) (x43 >> 0x15);
- uint32_t x45 = ((uint32_t)x43 & 0x1fffff);
- uint64_t x46 = (x44 + x18);
- uint32_t x47 = (uint32_t) (x46 >> 0x16);
- uint32_t x48 = ((uint32_t)x46 & 0x3fffff);
- uint64_t x49 = (x47 + x17);
- uint32_t x50 = (uint32_t) (x49 >> 0x15);
- uint32_t x51 = ((uint32_t)x49 & 0x1fffff);
- uint64_t x52 = (x27 + ((uint64_t)0x21 * x50));
- uint32_t x53 = (uint32_t) (x52 >> 0x16);
- uint32_t x54 = ((uint32_t)x52 & 0x3fffff);
- uint32_t x55 = (x53 + x30);
- uint32_t x56 = (x55 >> 0x16);
- uint32_t x57 = (x55 & 0x3fffff);
- return (Return x51, Return x48, Return x45, Return x42, Return x39, Return x36, (x56 + x33), Return x57, Return x54))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e194m33_9limbs/fesquareDisplay.v b/src/Specific/solinas32_2e194m33_9limbs/fesquareDisplay.v
deleted file mode 100644
index e18e26100..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e194m33_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e194m33_9limbs/fesub.c b/src/Specific/solinas32_2e194m33_9limbs/fesub.c
deleted file mode 100644
index 006cd3547..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/fesub.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void fesub(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = ((0x7fffbe + x5) - x21);
- out[1] = ((0x7ffffe + x7) - x23);
- out[2] = ((0x3ffffe + x9) - x25);
- out[3] = ((0x7ffffe + x11) - x27);
- out[4] = ((0x3ffffe + x13) - x29);
- out[5] = ((0x7ffffe + x15) - x31);
- out[6] = ((0x3ffffe + x17) - x33);
- out[7] = ((0x7ffffe + x19) - x35);
- out[8] = ((0x3ffffe + x18) - x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e194m33_9limbs/fesub.v b/src/Specific/solinas32_2e194m33_9limbs/fesub.v
deleted file mode 100644
index 3c9734829..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e194m33_9limbs.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_2e194m33_9limbs/fesubDisplay.log b/src/Specific/solinas32_2e194m33_9limbs/fesubDisplay.log
deleted file mode 100644
index e8c72a24c..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- (((0x3ffffe + x18) - x34), ((0x7ffffe + x19) - x35), ((0x3ffffe + x17) - x33), ((0x7ffffe + x15) - x31), ((0x3ffffe + x13) - x29), ((0x7ffffe + x11) - x27), ((0x3ffffe + x9) - x25), ((0x7ffffe + x7) - x23), ((0x7fffbe + x5) - x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e194m33_9limbs/fesubDisplay.v b/src/Specific/solinas32_2e194m33_9limbs/fesubDisplay.v
deleted file mode 100644
index d6d62ffcb..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e194m33_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e194m33_9limbs/freeze.c b/src/Specific/solinas32_2e194m33_9limbs/freeze.c
deleted file mode 100644
index 2f5e9aea3..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/freeze.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void freeze(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffdf);
- { uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0x3fffff);
- { uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0x1fffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x8, 0x3fffff);
- { uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0x1fffff);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0x3fffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0x1fffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0x3fffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0x1fffff);
- { uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- { uint32_t x45 = (x44 & 0x3fffdf);
- { uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- { uint32_t x49 = (x44 & 0x3fffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- { uint32_t x53 = (x44 & 0x1fffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- { uint32_t x57 = (x44 & 0x3fffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- { uint32_t x61 = (x44 & 0x1fffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- { uint32_t x65 = (x44 & 0x3fffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- { uint32_t x69 = (x44 & 0x1fffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- { uint32_t x73 = (x44 & 0x3fffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- { uint32_t x77 = (x44 & 0x1fffff);
- { uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- out[0] = x47;
- out[1] = x51;
- out[2] = x55;
- out[3] = x59;
- out[4] = x63;
- out[5] = x67;
- out[6] = x71;
- out[7] = x75;
- out[8] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e194m33_9limbs/freeze.v b/src/Specific/solinas32_2e194m33_9limbs/freeze.v
deleted file mode 100644
index 2c293a61e..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e194m33_9limbs.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_2e194m33_9limbs/freezeDisplay.log b/src/Specific/solinas32_2e194m33_9limbs/freezeDisplay.log
deleted file mode 100644
index 849fa9815..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffdf);
- uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0x3fffff);
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0x1fffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x8, 0x3fffff);
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0x1fffff);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0x3fffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0x1fffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0x3fffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0x1fffff);
- uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- uint32_t x45 = (x44 & 0x3fffdf);
- uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- uint32_t x49 = (x44 & 0x3fffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- uint32_t x53 = (x44 & 0x1fffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- uint32_t x57 = (x44 & 0x3fffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- uint32_t x61 = (x44 & 0x1fffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- uint32_t x65 = (x44 & 0x3fffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- uint32_t x69 = (x44 & 0x1fffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- uint32_t x73 = (x44 & 0x3fffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- uint32_t x77 = (x44 & 0x1fffff);
- uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- (Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x51, Return x47))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e194m33_9limbs/freezeDisplay.v b/src/Specific/solinas32_2e194m33_9limbs/freezeDisplay.v
deleted file mode 100644
index 738d3e3a1..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e194m33_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e194m33_9limbs/py_interpreter.sh b/src/Specific/solinas32_2e194m33_9limbs/py_interpreter.sh
deleted file mode 100755
index 40e7a0c1a..000000000
--- a/src/Specific/solinas32_2e194m33_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**194 - 33' -Dmodulus_bytes='21 + 5/9' -Da24='121665'
diff --git a/src/Specific/solinas32_2e196m15_8limbs/CurveParameters.v b/src/Specific/solinas32_2e196m15_8limbs/CurveParameters.v
deleted file mode 100644
index 79fc27c23..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^196 - 15
-Base: 24.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 24 + 1/2;
- bitwidth := 32;
- s := 2^196;
- c := [(1, 15)];
- carry_chains := Some [seq 0 (pred 8); [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_2e196m15_8limbs/Synthesis.v b/src/Specific/solinas32_2e196m15_8limbs/Synthesis.v
deleted file mode 100644
index dd1c992a2..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e196m15_8limbs.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_2e196m15_8limbs/compiler.sh b/src/Specific/solinas32_2e196m15_8limbs/compiler.sh
deleted file mode 100755
index 62212639b..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,24,25,24,25,24,25,24}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<196) - 15' "$@"
diff --git a/src/Specific/solinas32_2e196m15_8limbs/compilerxx.sh b/src/Specific/solinas32_2e196m15_8limbs/compilerxx.sh
deleted file mode 100755
index b527b4e03..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,24,25,24,25,24,25,24}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<196) - 15' "$@"
diff --git a/src/Specific/solinas32_2e196m15_8limbs/feadd.c b/src/Specific/solinas32_2e196m15_8limbs/feadd.c
deleted file mode 100644
index cc3671f75..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e196m15_8limbs/feadd.v b/src/Specific/solinas32_2e196m15_8limbs/feadd.v
deleted file mode 100644
index b7e8d06ef..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e196m15_8limbs.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_2e196m15_8limbs/feaddDisplay.log b/src/Specific/solinas32_2e196m15_8limbs/feaddDisplay.log
deleted file mode 100644
index f25c10903..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e196m15_8limbs/feaddDisplay.v b/src/Specific/solinas32_2e196m15_8limbs/feaddDisplay.v
deleted file mode 100644
index a6972c448..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e196m15_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e196m15_8limbs/fecarry.v b/src/Specific/solinas32_2e196m15_8limbs/fecarry.v
deleted file mode 100644
index b263e4897..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e196m15_8limbs.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_2e196m15_8limbs/fecarryDisplay.v b/src/Specific/solinas32_2e196m15_8limbs/fecarryDisplay.v
deleted file mode 100644
index 8b719f32c..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e196m15_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e196m15_8limbs/femul.c b/src/Specific/solinas32_2e196m15_8limbs/femul.c
deleted file mode 100644
index 39cd69e00..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint64_t x32 = (((uint64_t)x5 * x30) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + (((uint64_t)x17 * x21) + ((uint64_t)x16 * x19))))))));
- { uint64_t x33 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + (((uint64_t)x9 * x27) + ((0x2 * ((uint64_t)x11 * x25)) + (((uint64_t)x13 * x23) + ((0x2 * ((uint64_t)x15 * x21)) + ((uint64_t)x17 * x19))))))) + (0xf * (0x2 * ((uint64_t)x16 * x30))));
- { uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0xf * (((uint64_t)x17 * x30) + ((uint64_t)x16 * x31))));
- { uint64_t x35 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + (((uint64_t)x9 * x23) + ((0x2 * ((uint64_t)x11 * x21)) + ((uint64_t)x13 * x19))))) + (0xf * ((0x2 * ((uint64_t)x15 * x30)) + (((uint64_t)x17 * x31) + (0x2 * ((uint64_t)x16 * x29))))));
- { uint64_t x36 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + ((uint64_t)x11 * x19)))) + (0xf * (((uint64_t)x13 * x30) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x16 * x27))))));
- { uint64_t x37 = ((((uint64_t)x5 * x23) + ((0x2 * ((uint64_t)x7 * x21)) + ((uint64_t)x9 * x19))) + (0xf * ((0x2 * ((uint64_t)x11 * x30)) + (((uint64_t)x13 * x31) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + (0x2 * ((uint64_t)x16 * x25))))))));
- { uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0xf * (((uint64_t)x9 * x30) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + ((uint64_t)x16 * x23))))))));
- { uint64_t x39 = (((uint64_t)x5 * x19) + (0xf * ((0x2 * ((uint64_t)x7 * x30)) + (((uint64_t)x9 * x31) + ((0x2 * ((uint64_t)x11 * x29)) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + (((uint64_t)x17 * x23) + (0x2 * ((uint64_t)x16 * x21))))))))));
- { uint64_t x40 = (x39 >> 0x19);
- { uint32_t x41 = ((uint32_t)x39 & 0x1ffffff);
- { uint64_t x42 = (x40 + x38);
- { uint64_t x43 = (x42 >> 0x18);
- { uint32_t x44 = ((uint32_t)x42 & 0xffffff);
- { uint64_t x45 = (x43 + x37);
- { uint64_t x46 = (x45 >> 0x19);
- { uint32_t x47 = ((uint32_t)x45 & 0x1ffffff);
- { uint64_t x48 = (x46 + x36);
- { uint64_t x49 = (x48 >> 0x18);
- { uint32_t x50 = ((uint32_t)x48 & 0xffffff);
- { uint64_t x51 = (x49 + x35);
- { uint64_t x52 = (x51 >> 0x19);
- { uint32_t x53 = ((uint32_t)x51 & 0x1ffffff);
- { uint64_t x54 = (x52 + x34);
- { uint64_t x55 = (x54 >> 0x18);
- { uint32_t x56 = ((uint32_t)x54 & 0xffffff);
- { uint64_t x57 = (x55 + x33);
- { uint64_t x58 = (x57 >> 0x19);
- { uint32_t x59 = ((uint32_t)x57 & 0x1ffffff);
- { uint64_t x60 = (x58 + x32);
- { uint32_t x61 = (uint32_t) (x60 >> 0x18);
- { uint32_t x62 = ((uint32_t)x60 & 0xffffff);
- { uint64_t x63 = (x41 + ((uint64_t)0xf * x61));
- { uint32_t x64 = (uint32_t) (x63 >> 0x19);
- { uint32_t x65 = ((uint32_t)x63 & 0x1ffffff);
- { uint32_t x66 = (x64 + x44);
- { uint32_t x67 = (x66 >> 0x18);
- { uint32_t x68 = (x66 & 0xffffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e196m15_8limbs/femul.v b/src/Specific/solinas32_2e196m15_8limbs/femul.v
deleted file mode 100644
index e630ad9a5..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e196m15_8limbs.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_2e196m15_8limbs/femulDisplay.log b/src/Specific/solinas32_2e196m15_8limbs/femulDisplay.log
deleted file mode 100644
index eeb257755..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x32 = (((uint64_t)x5 * x30) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + (((uint64_t)x17 * x21) + ((uint64_t)x16 * x19))))))));
- uint64_t x33 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + (((uint64_t)x9 * x27) + ((0x2 * ((uint64_t)x11 * x25)) + (((uint64_t)x13 * x23) + ((0x2 * ((uint64_t)x15 * x21)) + ((uint64_t)x17 * x19))))))) + (0xf * (0x2 * ((uint64_t)x16 * x30))));
- uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0xf * (((uint64_t)x17 * x30) + ((uint64_t)x16 * x31))));
- uint64_t x35 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + (((uint64_t)x9 * x23) + ((0x2 * ((uint64_t)x11 * x21)) + ((uint64_t)x13 * x19))))) + (0xf * ((0x2 * ((uint64_t)x15 * x30)) + (((uint64_t)x17 * x31) + (0x2 * ((uint64_t)x16 * x29))))));
- uint64_t x36 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + ((uint64_t)x11 * x19)))) + (0xf * (((uint64_t)x13 * x30) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x16 * x27))))));
- uint64_t x37 = ((((uint64_t)x5 * x23) + ((0x2 * ((uint64_t)x7 * x21)) + ((uint64_t)x9 * x19))) + (0xf * ((0x2 * ((uint64_t)x11 * x30)) + (((uint64_t)x13 * x31) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + (0x2 * ((uint64_t)x16 * x25))))))));
- uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0xf * (((uint64_t)x9 * x30) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + ((uint64_t)x16 * x23))))))));
- uint64_t x39 = (((uint64_t)x5 * x19) + (0xf * ((0x2 * ((uint64_t)x7 * x30)) + (((uint64_t)x9 * x31) + ((0x2 * ((uint64_t)x11 * x29)) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + (((uint64_t)x17 * x23) + (0x2 * ((uint64_t)x16 * x21))))))))));
- uint64_t x40 = (x39 >> 0x19);
- uint32_t x41 = ((uint32_t)x39 & 0x1ffffff);
- uint64_t x42 = (x40 + x38);
- uint64_t x43 = (x42 >> 0x18);
- uint32_t x44 = ((uint32_t)x42 & 0xffffff);
- uint64_t x45 = (x43 + x37);
- uint64_t x46 = (x45 >> 0x19);
- uint32_t x47 = ((uint32_t)x45 & 0x1ffffff);
- uint64_t x48 = (x46 + x36);
- uint64_t x49 = (x48 >> 0x18);
- uint32_t x50 = ((uint32_t)x48 & 0xffffff);
- uint64_t x51 = (x49 + x35);
- uint64_t x52 = (x51 >> 0x19);
- uint32_t x53 = ((uint32_t)x51 & 0x1ffffff);
- uint64_t x54 = (x52 + x34);
- uint64_t x55 = (x54 >> 0x18);
- uint32_t x56 = ((uint32_t)x54 & 0xffffff);
- uint64_t x57 = (x55 + x33);
- uint64_t x58 = (x57 >> 0x19);
- uint32_t x59 = ((uint32_t)x57 & 0x1ffffff);
- uint64_t x60 = (x58 + x32);
- uint32_t x61 = (uint32_t) (x60 >> 0x18);
- uint32_t x62 = ((uint32_t)x60 & 0xffffff);
- uint64_t x63 = (x41 + ((uint64_t)0xf * x61));
- uint32_t x64 = (uint32_t) (x63 >> 0x19);
- uint32_t x65 = ((uint32_t)x63 & 0x1ffffff);
- uint32_t x66 = (x64 + x44);
- uint32_t x67 = (x66 >> 0x18);
- uint32_t x68 = (x66 & 0xffffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e196m15_8limbs/femulDisplay.v b/src/Specific/solinas32_2e196m15_8limbs/femulDisplay.v
deleted file mode 100644
index 417b82fba..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e196m15_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e196m15_8limbs/fesquare.c b/src/Specific/solinas32_2e196m15_8limbs/fesquare.c
deleted file mode 100644
index ed7de1d16..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (((uint64_t)x2 * x13) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x13 * x2))))))));
- { uint64_t x16 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0xf * (0x2 * ((uint64_t)x13 * x13))));
- { uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0xf * (((uint64_t)x14 * x13) + ((uint64_t)x13 * x14))));
- { uint64_t x18 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0xf * ((0x2 * ((uint64_t)x12 * x13)) + (((uint64_t)x14 * x14) + (0x2 * ((uint64_t)x13 * x12))))));
- { uint64_t x19 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0xf * (((uint64_t)x10 * x13) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x13 * x10))))));
- { uint64_t x20 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0xf * ((0x2 * ((uint64_t)x8 * x13)) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (0x2 * ((uint64_t)x13 * x8))))))));
- { uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xf * (((uint64_t)x6 * x13) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((uint64_t)x13 * x6))))))));
- { uint64_t x22 = (((uint64_t)x2 * x2) + (0xf * ((0x2 * ((uint64_t)x4 * x13)) + (((uint64_t)x6 * x14) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + (((uint64_t)x14 * x6) + (0x2 * ((uint64_t)x13 * x4))))))))));
- { uint64_t x23 = (x22 >> 0x19);
- { uint32_t x24 = ((uint32_t)x22 & 0x1ffffff);
- { uint64_t x25 = (x23 + x21);
- { uint64_t x26 = (x25 >> 0x18);
- { uint32_t x27 = ((uint32_t)x25 & 0xffffff);
- { uint64_t x28 = (x26 + x20);
- { uint64_t x29 = (x28 >> 0x19);
- { uint32_t x30 = ((uint32_t)x28 & 0x1ffffff);
- { uint64_t x31 = (x29 + x19);
- { uint64_t x32 = (x31 >> 0x18);
- { uint32_t x33 = ((uint32_t)x31 & 0xffffff);
- { uint64_t x34 = (x32 + x18);
- { uint64_t x35 = (x34 >> 0x19);
- { uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- { uint64_t x37 = (x35 + x17);
- { uint64_t x38 = (x37 >> 0x18);
- { uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- { uint64_t x40 = (x38 + x16);
- { uint64_t x41 = (x40 >> 0x19);
- { uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- { uint64_t x43 = (x41 + x15);
- { uint32_t x44 = (uint32_t) (x43 >> 0x18);
- { uint32_t x45 = ((uint32_t)x43 & 0xffffff);
- { uint64_t x46 = (x24 + ((uint64_t)0xf * x44));
- { uint32_t x47 = (uint32_t) (x46 >> 0x19);
- { uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- { uint32_t x49 = (x47 + x27);
- { uint32_t x50 = (x49 >> 0x18);
- { uint32_t x51 = (x49 & 0xffffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e196m15_8limbs/fesquare.v b/src/Specific/solinas32_2e196m15_8limbs/fesquare.v
deleted file mode 100644
index 1cf956f88..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e196m15_8limbs.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_2e196m15_8limbs/fesquareDisplay.log b/src/Specific/solinas32_2e196m15_8limbs/fesquareDisplay.log
deleted file mode 100644
index f043e3458..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (((uint64_t)x2 * x13) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x13 * x2))))))));
- uint64_t x16 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0xf * (0x2 * ((uint64_t)x13 * x13))));
- uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0xf * (((uint64_t)x14 * x13) + ((uint64_t)x13 * x14))));
- uint64_t x18 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0xf * ((0x2 * ((uint64_t)x12 * x13)) + (((uint64_t)x14 * x14) + (0x2 * ((uint64_t)x13 * x12))))));
- uint64_t x19 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0xf * (((uint64_t)x10 * x13) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x13 * x10))))));
- uint64_t x20 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0xf * ((0x2 * ((uint64_t)x8 * x13)) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (0x2 * ((uint64_t)x13 * x8))))))));
- uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xf * (((uint64_t)x6 * x13) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((uint64_t)x13 * x6))))))));
- uint64_t x22 = (((uint64_t)x2 * x2) + (0xf * ((0x2 * ((uint64_t)x4 * x13)) + (((uint64_t)x6 * x14) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + (((uint64_t)x14 * x6) + (0x2 * ((uint64_t)x13 * x4))))))))));
- uint64_t x23 = (x22 >> 0x19);
- uint32_t x24 = ((uint32_t)x22 & 0x1ffffff);
- uint64_t x25 = (x23 + x21);
- uint64_t x26 = (x25 >> 0x18);
- uint32_t x27 = ((uint32_t)x25 & 0xffffff);
- uint64_t x28 = (x26 + x20);
- uint64_t x29 = (x28 >> 0x19);
- uint32_t x30 = ((uint32_t)x28 & 0x1ffffff);
- uint64_t x31 = (x29 + x19);
- uint64_t x32 = (x31 >> 0x18);
- uint32_t x33 = ((uint32_t)x31 & 0xffffff);
- uint64_t x34 = (x32 + x18);
- uint64_t x35 = (x34 >> 0x19);
- uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- uint64_t x37 = (x35 + x17);
- uint64_t x38 = (x37 >> 0x18);
- uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- uint64_t x40 = (x38 + x16);
- uint64_t x41 = (x40 >> 0x19);
- uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- uint64_t x43 = (x41 + x15);
- uint32_t x44 = (uint32_t) (x43 >> 0x18);
- uint32_t x45 = ((uint32_t)x43 & 0xffffff);
- uint64_t x46 = (x24 + ((uint64_t)0xf * x44));
- uint32_t x47 = (uint32_t) (x46 >> 0x19);
- uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- uint32_t x49 = (x47 + x27);
- uint32_t x50 = (x49 >> 0x18);
- uint32_t x51 = (x49 & 0xffffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e196m15_8limbs/fesquareDisplay.v b/src/Specific/solinas32_2e196m15_8limbs/fesquareDisplay.v
deleted file mode 100644
index f1551f274..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e196m15_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e196m15_8limbs/fesub.c b/src/Specific/solinas32_2e196m15_8limbs/fesub.c
deleted file mode 100644
index 0a3649df5..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = ((0x3ffffe2 + x5) - x19);
- out[1] = ((0x1fffffe + x7) - x21);
- out[2] = ((0x3fffffe + x9) - x23);
- out[3] = ((0x1fffffe + x11) - x25);
- out[4] = ((0x3fffffe + x13) - x27);
- out[5] = ((0x1fffffe + x15) - x29);
- out[6] = ((0x3fffffe + x17) - x31);
- out[7] = ((0x1fffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e196m15_8limbs/fesub.v b/src/Specific/solinas32_2e196m15_8limbs/fesub.v
deleted file mode 100644
index b0174d3c8..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e196m15_8limbs.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_2e196m15_8limbs/fesubDisplay.log b/src/Specific/solinas32_2e196m15_8limbs/fesubDisplay.log
deleted file mode 100644
index d16646c0c..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0x1fffffe + x16) - x30), ((0x3fffffe + x17) - x31), ((0x1fffffe + x15) - x29), ((0x3fffffe + x13) - x27), ((0x1fffffe + x11) - x25), ((0x3fffffe + x9) - x23), ((0x1fffffe + x7) - x21), ((0x3ffffe2 + x5) - x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e196m15_8limbs/fesubDisplay.v b/src/Specific/solinas32_2e196m15_8limbs/fesubDisplay.v
deleted file mode 100644
index 96eb9d29e..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e196m15_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e196m15_8limbs/freeze.c b/src/Specific/solinas32_2e196m15_8limbs/freeze.c
deleted file mode 100644
index 624dadc27..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffff1);
- { uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffff);
- { uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0x1ffffff);
- { uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0xffffff);
- { uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0x1ffffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffff);
- { uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0x1ffffff);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0xffffff);
- { uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- { uint32_t x40 = (x39 & 0x1fffff1);
- { uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint32_t x44 = (x39 & 0xffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint32_t x48 = (x39 & 0x1ffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint32_t x52 = (x39 & 0xffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint32_t x56 = (x39 & 0x1ffffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint32_t x60 = (x39 & 0xffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint32_t x64 = (x39 & 0x1ffffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint32_t x68 = (x39 & 0xffffff);
- { uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e196m15_8limbs/freeze.v b/src/Specific/solinas32_2e196m15_8limbs/freeze.v
deleted file mode 100644
index 186ab2833..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e196m15_8limbs.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_2e196m15_8limbs/freezeDisplay.log b/src/Specific/solinas32_2e196m15_8limbs/freezeDisplay.log
deleted file mode 100644
index 1fb132f2f..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffff1);
- uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffff);
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0x1ffffff);
- uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0xffffff);
- uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0x1ffffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffff);
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0x1ffffff);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0xffffff);
- uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- uint32_t x40 = (x39 & 0x1fffff1);
- uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint32_t x44 = (x39 & 0xffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint32_t x48 = (x39 & 0x1ffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint32_t x52 = (x39 & 0xffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint32_t x56 = (x39 & 0x1ffffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint32_t x60 = (x39 & 0xffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint32_t x64 = (x39 & 0x1ffffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint32_t x68 = (x39 & 0xffffff);
- uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e196m15_8limbs/freezeDisplay.v b/src/Specific/solinas32_2e196m15_8limbs/freezeDisplay.v
deleted file mode 100644
index f62c59452..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e196m15_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e196m15_8limbs/py_interpreter.sh b/src/Specific/solinas32_2e196m15_8limbs/py_interpreter.sh
deleted file mode 100755
index 1957689bd..000000000
--- a/src/Specific/solinas32_2e196m15_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**196 - 15' -Dmodulus_bytes='24.5' -Da24='121665'
diff --git a/src/Specific/solinas32_2e196m15_9limbs/CurveParameters.v b/src/Specific/solinas32_2e196m15_9limbs/CurveParameters.v
deleted file mode 100644
index 2b6f7a220..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^196 - 15
-Base: 21 + 7/9
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 21 + 7/9;
- bitwidth := 32;
- s := 2^196;
- c := [(1, 15)];
- carry_chains := Some [seq 0 (pred 9); [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_2e196m15_9limbs/Synthesis.v b/src/Specific/solinas32_2e196m15_9limbs/Synthesis.v
deleted file mode 100644
index 45d8fabec..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e196m15_9limbs.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_2e196m15_9limbs/compiler.sh b/src/Specific/solinas32_2e196m15_9limbs/compiler.sh
deleted file mode 100755
index 367eb31a3..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,22,22,21,22,22,22,21}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<196) - 15' "$@"
diff --git a/src/Specific/solinas32_2e196m15_9limbs/compilerxx.sh b/src/Specific/solinas32_2e196m15_9limbs/compilerxx.sh
deleted file mode 100755
index dc7c8210e..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,22,22,21,22,22,22,21}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<196) - 15' "$@"
diff --git a/src/Specific/solinas32_2e196m15_9limbs/feadd.c b/src/Specific/solinas32_2e196m15_9limbs/feadd.c
deleted file mode 100644
index e1188fdec..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e196m15_9limbs/feadd.v b/src/Specific/solinas32_2e196m15_9limbs/feadd.v
deleted file mode 100644
index 27443e78b..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e196m15_9limbs.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_2e196m15_9limbs/feaddDisplay.log b/src/Specific/solinas32_2e196m15_9limbs/feaddDisplay.log
deleted file mode 100644
index e26bb40f8..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e196m15_9limbs/feaddDisplay.v b/src/Specific/solinas32_2e196m15_9limbs/feaddDisplay.v
deleted file mode 100644
index 20432b1c2..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e196m15_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e196m15_9limbs/fecarry.v b/src/Specific/solinas32_2e196m15_9limbs/fecarry.v
deleted file mode 100644
index 3ff75fab0..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e196m15_9limbs.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_2e196m15_9limbs/fecarryDisplay.v b/src/Specific/solinas32_2e196m15_9limbs/fecarryDisplay.v
deleted file mode 100644
index 17f488745..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e196m15_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e196m15_9limbs/femul.c b/src/Specific/solinas32_2e196m15_9limbs/femul.c
deleted file mode 100644
index 581348c40..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/femul.c
+++ /dev/null
@@ -1,71 +0,0 @@
-static void femul(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- { uint64_t x36 = (((uint64_t)x5 * x34) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + (((uint64_t)x19 * x23) + ((uint64_t)x18 * x21)))))))));
- { uint64_t x37 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + (((uint64_t)x15 * x25) + (((uint64_t)x17 * x23) + ((uint64_t)x19 * x21)))))))) + (0xf * (0x2 * ((uint64_t)x18 * x34))));
- { uint64_t x38 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + ((0x2 * ((uint64_t)x9 * x29)) + ((0x2 * ((uint64_t)x11 * x27)) + ((0x2 * ((uint64_t)x13 * x25)) + (((uint64_t)x15 * x23) + ((uint64_t)x17 * x21))))))) + (0xf * ((0x2 * ((uint64_t)x19 * x34)) + (0x2 * ((uint64_t)x18 * x35)))));
- { uint64_t x39 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((uint64_t)x15 * x21)))))) + (0xf * ((0x2 * ((uint64_t)x17 * x34)) + ((0x2 * ((uint64_t)x19 * x35)) + (0x2 * ((uint64_t)x18 * x33))))));
- { uint64_t x40 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + ((uint64_t)x13 * x21))))) + (0xf * (((uint64_t)x15 * x34) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x18 * x31))))));
- { uint64_t x41 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + ((uint64_t)x11 * x21)))) + (0xf * ((0x2 * ((uint64_t)x13 * x34)) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (0x2 * ((uint64_t)x18 * x29))))))));
- { uint64_t x42 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + ((uint64_t)x9 * x21))) + (0xf * ((0x2 * ((uint64_t)x11 * x34)) + ((0x2 * ((uint64_t)x13 * x35)) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + ((0x2 * ((uint64_t)x19 * x29)) + (0x2 * ((uint64_t)x18 * x27)))))))));
- { uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0xf * ((0x2 * ((uint64_t)x9 * x34)) + ((0x2 * ((uint64_t)x11 * x35)) + ((0x2 * ((uint64_t)x13 * x33)) + (((uint64_t)x15 * x31) + ((0x2 * ((uint64_t)x17 * x29)) + ((0x2 * ((uint64_t)x19 * x27)) + (0x2 * ((uint64_t)x18 * x25))))))))));
- { uint64_t x44 = (((uint64_t)x5 * x21) + (0xf * ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23)))))))))));
- { uint64_t x45 = (x44 >> 0x16);
- { uint32_t x46 = ((uint32_t)x44 & 0x3fffff);
- { uint64_t x47 = (x45 + x43);
- { uint64_t x48 = (x47 >> 0x16);
- { uint32_t x49 = ((uint32_t)x47 & 0x3fffff);
- { uint64_t x50 = (x48 + x42);
- { uint64_t x51 = (x50 >> 0x16);
- { uint32_t x52 = ((uint32_t)x50 & 0x3fffff);
- { uint64_t x53 = (x51 + x41);
- { uint32_t x54 = (uint32_t) (x53 >> 0x16);
- { uint32_t x55 = ((uint32_t)x53 & 0x3fffff);
- { uint64_t x56 = (x54 + x40);
- { uint64_t x57 = (x56 >> 0x15);
- { uint32_t x58 = ((uint32_t)x56 & 0x1fffff);
- { uint64_t x59 = (x57 + x39);
- { uint32_t x60 = (uint32_t) (x59 >> 0x16);
- { uint32_t x61 = ((uint32_t)x59 & 0x3fffff);
- { uint64_t x62 = (x60 + x38);
- { uint32_t x63 = (uint32_t) (x62 >> 0x16);
- { uint32_t x64 = ((uint32_t)x62 & 0x3fffff);
- { uint64_t x65 = (x63 + x37);
- { uint32_t x66 = (uint32_t) (x65 >> 0x16);
- { uint32_t x67 = ((uint32_t)x65 & 0x3fffff);
- { uint64_t x68 = (x66 + x36);
- { uint32_t x69 = (uint32_t) (x68 >> 0x15);
- { uint32_t x70 = ((uint32_t)x68 & 0x1fffff);
- { uint64_t x71 = (x46 + ((uint64_t)0xf * x69));
- { uint32_t x72 = (uint32_t) (x71 >> 0x16);
- { uint32_t x73 = ((uint32_t)x71 & 0x3fffff);
- { uint32_t x74 = (x72 + x49);
- { uint32_t x75 = (x74 >> 0x16);
- { uint32_t x76 = (x74 & 0x3fffff);
- out[0] = x73;
- out[1] = x76;
- out[2] = (x75 + x52);
- out[3] = x55;
- out[4] = x58;
- out[5] = x61;
- out[6] = x64;
- out[7] = x67;
- out[8] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e196m15_9limbs/femul.v b/src/Specific/solinas32_2e196m15_9limbs/femul.v
deleted file mode 100644
index 7153bc34c..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e196m15_9limbs.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_2e196m15_9limbs/femulDisplay.log b/src/Specific/solinas32_2e196m15_9limbs/femulDisplay.log
deleted file mode 100644
index 85cb53c4b..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/femulDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint64_t x36 = (((uint64_t)x5 * x34) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + (((uint64_t)x19 * x23) + ((uint64_t)x18 * x21)))))))));
- uint64_t x37 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + (((uint64_t)x15 * x25) + (((uint64_t)x17 * x23) + ((uint64_t)x19 * x21)))))))) + (0xf * (0x2 * ((uint64_t)x18 * x34))));
- uint64_t x38 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + ((0x2 * ((uint64_t)x9 * x29)) + ((0x2 * ((uint64_t)x11 * x27)) + ((0x2 * ((uint64_t)x13 * x25)) + (((uint64_t)x15 * x23) + ((uint64_t)x17 * x21))))))) + (0xf * ((0x2 * ((uint64_t)x19 * x34)) + (0x2 * ((uint64_t)x18 * x35)))));
- uint64_t x39 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((uint64_t)x15 * x21)))))) + (0xf * ((0x2 * ((uint64_t)x17 * x34)) + ((0x2 * ((uint64_t)x19 * x35)) + (0x2 * ((uint64_t)x18 * x33))))));
- uint64_t x40 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + ((uint64_t)x13 * x21))))) + (0xf * (((uint64_t)x15 * x34) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x18 * x31))))));
- uint64_t x41 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + ((uint64_t)x11 * x21)))) + (0xf * ((0x2 * ((uint64_t)x13 * x34)) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (0x2 * ((uint64_t)x18 * x29))))))));
- uint64_t x42 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + ((uint64_t)x9 * x21))) + (0xf * ((0x2 * ((uint64_t)x11 * x34)) + ((0x2 * ((uint64_t)x13 * x35)) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + ((0x2 * ((uint64_t)x19 * x29)) + (0x2 * ((uint64_t)x18 * x27)))))))));
- uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0xf * ((0x2 * ((uint64_t)x9 * x34)) + ((0x2 * ((uint64_t)x11 * x35)) + ((0x2 * ((uint64_t)x13 * x33)) + (((uint64_t)x15 * x31) + ((0x2 * ((uint64_t)x17 * x29)) + ((0x2 * ((uint64_t)x19 * x27)) + (0x2 * ((uint64_t)x18 * x25))))))))));
- uint64_t x44 = (((uint64_t)x5 * x21) + (0xf * ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23)))))))))));
- uint64_t x45 = (x44 >> 0x16);
- uint32_t x46 = ((uint32_t)x44 & 0x3fffff);
- uint64_t x47 = (x45 + x43);
- uint64_t x48 = (x47 >> 0x16);
- uint32_t x49 = ((uint32_t)x47 & 0x3fffff);
- uint64_t x50 = (x48 + x42);
- uint64_t x51 = (x50 >> 0x16);
- uint32_t x52 = ((uint32_t)x50 & 0x3fffff);
- uint64_t x53 = (x51 + x41);
- uint32_t x54 = (uint32_t) (x53 >> 0x16);
- uint32_t x55 = ((uint32_t)x53 & 0x3fffff);
- uint64_t x56 = (x54 + x40);
- uint64_t x57 = (x56 >> 0x15);
- uint32_t x58 = ((uint32_t)x56 & 0x1fffff);
- uint64_t x59 = (x57 + x39);
- uint32_t x60 = (uint32_t) (x59 >> 0x16);
- uint32_t x61 = ((uint32_t)x59 & 0x3fffff);
- uint64_t x62 = (x60 + x38);
- uint32_t x63 = (uint32_t) (x62 >> 0x16);
- uint32_t x64 = ((uint32_t)x62 & 0x3fffff);
- uint64_t x65 = (x63 + x37);
- uint32_t x66 = (uint32_t) (x65 >> 0x16);
- uint32_t x67 = ((uint32_t)x65 & 0x3fffff);
- uint64_t x68 = (x66 + x36);
- uint32_t x69 = (uint32_t) (x68 >> 0x15);
- uint32_t x70 = ((uint32_t)x68 & 0x1fffff);
- uint64_t x71 = (x46 + ((uint64_t)0xf * x69));
- uint32_t x72 = (uint32_t) (x71 >> 0x16);
- uint32_t x73 = ((uint32_t)x71 & 0x3fffff);
- uint32_t x74 = (x72 + x49);
- uint32_t x75 = (x74 >> 0x16);
- uint32_t x76 = (x74 & 0x3fffff);
- return (Return x70, Return x67, Return x64, Return x61, Return x58, Return x55, (x75 + x52), Return x76, Return x73))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e196m15_9limbs/femulDisplay.v b/src/Specific/solinas32_2e196m15_9limbs/femulDisplay.v
deleted file mode 100644
index 3b63c620f..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e196m15_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e196m15_9limbs/fesquare.c b/src/Specific/solinas32_2e196m15_9limbs/fesquare.c
deleted file mode 100644
index 305b68c9e..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/fesquare.c
+++ /dev/null
@@ -1,62 +0,0 @@
-static void fesquare(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x17 = (((uint64_t)x2 * x15) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x15 * x2)))))))));
- { uint64_t x18 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0xf * (0x2 * ((uint64_t)x15 * x15))));
- { uint64_t x19 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0xf * ((0x2 * ((uint64_t)x16 * x15)) + (0x2 * ((uint64_t)x15 * x16)))));
- { uint64_t x20 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0xf * ((0x2 * ((uint64_t)x14 * x15)) + ((0x2 * ((uint64_t)x16 * x16)) + (0x2 * ((uint64_t)x15 * x14))))));
- { uint64_t x21 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0xf * (((uint64_t)x12 * x15) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x15 * x12))))));
- { uint64_t x22 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0xf * ((0x2 * ((uint64_t)x10 * x15)) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (0x2 * ((uint64_t)x15 * x10))))))));
- { uint64_t x23 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0xf * ((0x2 * ((uint64_t)x8 * x15)) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (0x2 * ((uint64_t)x15 * x8)))))))));
- { uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xf * ((0x2 * ((uint64_t)x6 * x15)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + (0x2 * ((uint64_t)x15 * x6))))))))));
- { uint64_t x25 = (((uint64_t)x2 * x2) + (0xf * ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4)))))))))));
- { uint64_t x26 = (x25 >> 0x16);
- { uint32_t x27 = ((uint32_t)x25 & 0x3fffff);
- { uint64_t x28 = (x26 + x24);
- { uint64_t x29 = (x28 >> 0x16);
- { uint32_t x30 = ((uint32_t)x28 & 0x3fffff);
- { uint64_t x31 = (x29 + x23);
- { uint64_t x32 = (x31 >> 0x16);
- { uint32_t x33 = ((uint32_t)x31 & 0x3fffff);
- { uint64_t x34 = (x32 + x22);
- { uint32_t x35 = (uint32_t) (x34 >> 0x16);
- { uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- { uint64_t x37 = (x35 + x21);
- { uint64_t x38 = (x37 >> 0x15);
- { uint32_t x39 = ((uint32_t)x37 & 0x1fffff);
- { uint64_t x40 = (x38 + x20);
- { uint32_t x41 = (uint32_t) (x40 >> 0x16);
- { uint32_t x42 = ((uint32_t)x40 & 0x3fffff);
- { uint64_t x43 = (x41 + x19);
- { uint32_t x44 = (uint32_t) (x43 >> 0x16);
- { uint32_t x45 = ((uint32_t)x43 & 0x3fffff);
- { uint64_t x46 = (x44 + x18);
- { uint32_t x47 = (uint32_t) (x46 >> 0x16);
- { uint32_t x48 = ((uint32_t)x46 & 0x3fffff);
- { uint64_t x49 = (x47 + x17);
- { uint32_t x50 = (uint32_t) (x49 >> 0x15);
- { uint32_t x51 = ((uint32_t)x49 & 0x1fffff);
- { uint64_t x52 = (x27 + ((uint64_t)0xf * x50));
- { uint32_t x53 = (uint32_t) (x52 >> 0x16);
- { uint32_t x54 = ((uint32_t)x52 & 0x3fffff);
- { uint32_t x55 = (x53 + x30);
- { uint32_t x56 = (x55 >> 0x16);
- { uint32_t x57 = (x55 & 0x3fffff);
- out[0] = x54;
- out[1] = x57;
- out[2] = (x56 + x33);
- out[3] = x36;
- out[4] = x39;
- out[5] = x42;
- out[6] = x45;
- out[7] = x48;
- out[8] = x51;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e196m15_9limbs/fesquare.v b/src/Specific/solinas32_2e196m15_9limbs/fesquare.v
deleted file mode 100644
index a24f4bc52..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e196m15_9limbs.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_2e196m15_9limbs/fesquareDisplay.log b/src/Specific/solinas32_2e196m15_9limbs/fesquareDisplay.log
deleted file mode 100644
index 6cd41d7c2..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x17 = (((uint64_t)x2 * x15) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x15 * x2)))))))));
- uint64_t x18 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0xf * (0x2 * ((uint64_t)x15 * x15))));
- uint64_t x19 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0xf * ((0x2 * ((uint64_t)x16 * x15)) + (0x2 * ((uint64_t)x15 * x16)))));
- uint64_t x20 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0xf * ((0x2 * ((uint64_t)x14 * x15)) + ((0x2 * ((uint64_t)x16 * x16)) + (0x2 * ((uint64_t)x15 * x14))))));
- uint64_t x21 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0xf * (((uint64_t)x12 * x15) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x15 * x12))))));
- uint64_t x22 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0xf * ((0x2 * ((uint64_t)x10 * x15)) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (0x2 * ((uint64_t)x15 * x10))))))));
- uint64_t x23 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0xf * ((0x2 * ((uint64_t)x8 * x15)) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (0x2 * ((uint64_t)x15 * x8)))))))));
- uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xf * ((0x2 * ((uint64_t)x6 * x15)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + (0x2 * ((uint64_t)x15 * x6))))))))));
- uint64_t x25 = (((uint64_t)x2 * x2) + (0xf * ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4)))))))))));
- uint64_t x26 = (x25 >> 0x16);
- uint32_t x27 = ((uint32_t)x25 & 0x3fffff);
- uint64_t x28 = (x26 + x24);
- uint64_t x29 = (x28 >> 0x16);
- uint32_t x30 = ((uint32_t)x28 & 0x3fffff);
- uint64_t x31 = (x29 + x23);
- uint64_t x32 = (x31 >> 0x16);
- uint32_t x33 = ((uint32_t)x31 & 0x3fffff);
- uint64_t x34 = (x32 + x22);
- uint32_t x35 = (uint32_t) (x34 >> 0x16);
- uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- uint64_t x37 = (x35 + x21);
- uint64_t x38 = (x37 >> 0x15);
- uint32_t x39 = ((uint32_t)x37 & 0x1fffff);
- uint64_t x40 = (x38 + x20);
- uint32_t x41 = (uint32_t) (x40 >> 0x16);
- uint32_t x42 = ((uint32_t)x40 & 0x3fffff);
- uint64_t x43 = (x41 + x19);
- uint32_t x44 = (uint32_t) (x43 >> 0x16);
- uint32_t x45 = ((uint32_t)x43 & 0x3fffff);
- uint64_t x46 = (x44 + x18);
- uint32_t x47 = (uint32_t) (x46 >> 0x16);
- uint32_t x48 = ((uint32_t)x46 & 0x3fffff);
- uint64_t x49 = (x47 + x17);
- uint32_t x50 = (uint32_t) (x49 >> 0x15);
- uint32_t x51 = ((uint32_t)x49 & 0x1fffff);
- uint64_t x52 = (x27 + ((uint64_t)0xf * x50));
- uint32_t x53 = (uint32_t) (x52 >> 0x16);
- uint32_t x54 = ((uint32_t)x52 & 0x3fffff);
- uint32_t x55 = (x53 + x30);
- uint32_t x56 = (x55 >> 0x16);
- uint32_t x57 = (x55 & 0x3fffff);
- return (Return x51, Return x48, Return x45, Return x42, Return x39, Return x36, (x56 + x33), Return x57, Return x54))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e196m15_9limbs/fesquareDisplay.v b/src/Specific/solinas32_2e196m15_9limbs/fesquareDisplay.v
deleted file mode 100644
index 580ac6b8c..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e196m15_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e196m15_9limbs/fesub.c b/src/Specific/solinas32_2e196m15_9limbs/fesub.c
deleted file mode 100644
index c68e4d712..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/fesub.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void fesub(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = ((0x7fffe2 + x5) - x21);
- out[1] = ((0x7ffffe + x7) - x23);
- out[2] = ((0x7ffffe + x9) - x25);
- out[3] = ((0x7ffffe + x11) - x27);
- out[4] = ((0x3ffffe + x13) - x29);
- out[5] = ((0x7ffffe + x15) - x31);
- out[6] = ((0x7ffffe + x17) - x33);
- out[7] = ((0x7ffffe + x19) - x35);
- out[8] = ((0x3ffffe + x18) - x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e196m15_9limbs/fesub.v b/src/Specific/solinas32_2e196m15_9limbs/fesub.v
deleted file mode 100644
index f2065d046..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e196m15_9limbs.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_2e196m15_9limbs/fesubDisplay.log b/src/Specific/solinas32_2e196m15_9limbs/fesubDisplay.log
deleted file mode 100644
index 0e1e7af91..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- (((0x3ffffe + x18) - x34), ((0x7ffffe + x19) - x35), ((0x7ffffe + x17) - x33), ((0x7ffffe + x15) - x31), ((0x3ffffe + x13) - x29), ((0x7ffffe + x11) - x27), ((0x7ffffe + x9) - x25), ((0x7ffffe + x7) - x23), ((0x7fffe2 + x5) - x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e196m15_9limbs/fesubDisplay.v b/src/Specific/solinas32_2e196m15_9limbs/fesubDisplay.v
deleted file mode 100644
index ed0dac9f2..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e196m15_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e196m15_9limbs/freeze.c b/src/Specific/solinas32_2e196m15_9limbs/freeze.c
deleted file mode 100644
index 62f17e5d9..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/freeze.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void freeze(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffff1);
- { uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0x3fffff);
- { uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0x3fffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x8, 0x3fffff);
- { uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0x1fffff);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0x3fffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0x3fffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0x3fffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0x1fffff);
- { uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- { uint32_t x45 = (x44 & 0x3ffff1);
- { uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- { uint32_t x49 = (x44 & 0x3fffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- { uint32_t x53 = (x44 & 0x3fffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- { uint32_t x57 = (x44 & 0x3fffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- { uint32_t x61 = (x44 & 0x1fffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- { uint32_t x65 = (x44 & 0x3fffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- { uint32_t x69 = (x44 & 0x3fffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- { uint32_t x73 = (x44 & 0x3fffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- { uint32_t x77 = (x44 & 0x1fffff);
- { uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- out[0] = x47;
- out[1] = x51;
- out[2] = x55;
- out[3] = x59;
- out[4] = x63;
- out[5] = x67;
- out[6] = x71;
- out[7] = x75;
- out[8] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e196m15_9limbs/freeze.v b/src/Specific/solinas32_2e196m15_9limbs/freeze.v
deleted file mode 100644
index 3cd60aabc..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e196m15_9limbs.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_2e196m15_9limbs/freezeDisplay.log b/src/Specific/solinas32_2e196m15_9limbs/freezeDisplay.log
deleted file mode 100644
index 15bd783f5..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffff1);
- uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0x3fffff);
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0x3fffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x8, 0x3fffff);
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0x1fffff);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0x3fffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0x3fffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0x3fffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0x1fffff);
- uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- uint32_t x45 = (x44 & 0x3ffff1);
- uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- uint32_t x49 = (x44 & 0x3fffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- uint32_t x53 = (x44 & 0x3fffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- uint32_t x57 = (x44 & 0x3fffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- uint32_t x61 = (x44 & 0x1fffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- uint32_t x65 = (x44 & 0x3fffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- uint32_t x69 = (x44 & 0x3fffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- uint32_t x73 = (x44 & 0x3fffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- uint32_t x77 = (x44 & 0x1fffff);
- uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- (Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x51, Return x47))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e196m15_9limbs/freezeDisplay.v b/src/Specific/solinas32_2e196m15_9limbs/freezeDisplay.v
deleted file mode 100644
index f26cb0369..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e196m15_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e196m15_9limbs/py_interpreter.sh b/src/Specific/solinas32_2e196m15_9limbs/py_interpreter.sh
deleted file mode 100755
index 3d67c7178..000000000
--- a/src/Specific/solinas32_2e196m15_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**196 - 15' -Dmodulus_bytes='21 + 7/9' -Da24='121665'
diff --git a/src/Specific/solinas32_2e198m17_8limbs/CurveParameters.v b/src/Specific/solinas32_2e198m17_8limbs/CurveParameters.v
deleted file mode 100644
index bc64ca7c6..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^198 - 17
-Base: 24.75
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 24 + 3/4;
- bitwidth := 32;
- s := 2^198;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 8); [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_2e198m17_8limbs/Synthesis.v b/src/Specific/solinas32_2e198m17_8limbs/Synthesis.v
deleted file mode 100644
index 4c1b64f9b..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e198m17_8limbs.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_2e198m17_8limbs/compiler.sh b/src/Specific/solinas32_2e198m17_8limbs/compiler.sh
deleted file mode 100755
index 0e2e19e62..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,25,24,25,25,25,24}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<198) - 17' "$@"
diff --git a/src/Specific/solinas32_2e198m17_8limbs/compilerxx.sh b/src/Specific/solinas32_2e198m17_8limbs/compilerxx.sh
deleted file mode 100755
index f64d6b78a..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,25,24,25,25,25,24}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<198) - 17' "$@"
diff --git a/src/Specific/solinas32_2e198m17_8limbs/feadd.c b/src/Specific/solinas32_2e198m17_8limbs/feadd.c
deleted file mode 100644
index cc3671f75..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e198m17_8limbs/feadd.v b/src/Specific/solinas32_2e198m17_8limbs/feadd.v
deleted file mode 100644
index 11c033c76..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e198m17_8limbs.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_2e198m17_8limbs/feaddDisplay.log b/src/Specific/solinas32_2e198m17_8limbs/feaddDisplay.log
deleted file mode 100644
index f25c10903..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e198m17_8limbs/feaddDisplay.v b/src/Specific/solinas32_2e198m17_8limbs/feaddDisplay.v
deleted file mode 100644
index a7953ab4a..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e198m17_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e198m17_8limbs/fecarry.v b/src/Specific/solinas32_2e198m17_8limbs/fecarry.v
deleted file mode 100644
index 7cc902762..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e198m17_8limbs.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_2e198m17_8limbs/fecarryDisplay.v b/src/Specific/solinas32_2e198m17_8limbs/fecarryDisplay.v
deleted file mode 100644
index 471b35a15..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e198m17_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e198m17_8limbs/femul.c b/src/Specific/solinas32_2e198m17_8limbs/femul.c
deleted file mode 100644
index ac77b93d4..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint64_t x32 = (((uint64_t)x5 * x30) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + (((uint64_t)x17 * x21) + ((uint64_t)x16 * x19))))))));
- { uint64_t x33 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + ((0x2 * ((uint64_t)x11 * x25)) + (((uint64_t)x13 * x23) + (((uint64_t)x15 * x21) + ((uint64_t)x17 * x19))))))) + (0x11 * (0x2 * ((uint64_t)x16 * x30))));
- { uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + ((0x2 * ((uint64_t)x11 * x23)) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0x11 * ((0x2 * ((uint64_t)x17 * x30)) + (0x2 * ((uint64_t)x16 * x31)))));
- { uint64_t x35 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + ((uint64_t)x13 * x19))))) + (0x11 * ((0x2 * ((uint64_t)x15 * x30)) + ((0x2 * ((uint64_t)x17 * x31)) + (0x2 * ((uint64_t)x16 * x29))))));
- { uint64_t x36 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + ((uint64_t)x11 * x19)))) + (0x11 * (((uint64_t)x13 * x30) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x16 * x27))))));
- { uint64_t x37 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((uint64_t)x9 * x19))) + (0x11 * ((0x2 * ((uint64_t)x11 * x30)) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + (((uint64_t)x17 * x27) + (0x2 * ((uint64_t)x16 * x25))))))));
- { uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0x11 * ((0x2 * ((uint64_t)x9 * x30)) + ((0x2 * ((uint64_t)x11 * x31)) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + ((0x2 * ((uint64_t)x17 * x25)) + (0x2 * ((uint64_t)x16 * x23)))))))));
- { uint64_t x39 = (((uint64_t)x5 * x19) + (0x11 * ((0x2 * ((uint64_t)x7 * x30)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + (0x2 * ((uint64_t)x16 * x21))))))))));
- { uint64_t x40 = (x39 >> 0x19);
- { uint32_t x41 = ((uint32_t)x39 & 0x1ffffff);
- { uint64_t x42 = (x40 + x38);
- { uint64_t x43 = (x42 >> 0x19);
- { uint32_t x44 = ((uint32_t)x42 & 0x1ffffff);
- { uint64_t x45 = (x43 + x37);
- { uint64_t x46 = (x45 >> 0x19);
- { uint32_t x47 = ((uint32_t)x45 & 0x1ffffff);
- { uint64_t x48 = (x46 + x36);
- { uint64_t x49 = (x48 >> 0x18);
- { uint32_t x50 = ((uint32_t)x48 & 0xffffff);
- { uint64_t x51 = (x49 + x35);
- { uint64_t x52 = (x51 >> 0x19);
- { uint32_t x53 = ((uint32_t)x51 & 0x1ffffff);
- { uint64_t x54 = (x52 + x34);
- { uint64_t x55 = (x54 >> 0x19);
- { uint32_t x56 = ((uint32_t)x54 & 0x1ffffff);
- { uint64_t x57 = (x55 + x33);
- { uint64_t x58 = (x57 >> 0x19);
- { uint32_t x59 = ((uint32_t)x57 & 0x1ffffff);
- { uint64_t x60 = (x58 + x32);
- { uint64_t x61 = (x60 >> 0x18);
- { uint32_t x62 = ((uint32_t)x60 & 0xffffff);
- { uint64_t x63 = (x41 + (0x11 * x61));
- { uint32_t x64 = (uint32_t) (x63 >> 0x19);
- { uint32_t x65 = ((uint32_t)x63 & 0x1ffffff);
- { uint32_t x66 = (x64 + x44);
- { uint32_t x67 = (x66 >> 0x19);
- { uint32_t x68 = (x66 & 0x1ffffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e198m17_8limbs/femul.v b/src/Specific/solinas32_2e198m17_8limbs/femul.v
deleted file mode 100644
index f7f66c3d7..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e198m17_8limbs.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_2e198m17_8limbs/femulDisplay.log b/src/Specific/solinas32_2e198m17_8limbs/femulDisplay.log
deleted file mode 100644
index b476342cc..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x32 = (((uint64_t)x5 * x30) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + (((uint64_t)x17 * x21) + ((uint64_t)x16 * x19))))))));
- uint64_t x33 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + ((0x2 * ((uint64_t)x11 * x25)) + (((uint64_t)x13 * x23) + (((uint64_t)x15 * x21) + ((uint64_t)x17 * x19))))))) + (0x11 * (0x2 * ((uint64_t)x16 * x30))));
- uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + ((0x2 * ((uint64_t)x11 * x23)) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0x11 * ((0x2 * ((uint64_t)x17 * x30)) + (0x2 * ((uint64_t)x16 * x31)))));
- uint64_t x35 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + ((uint64_t)x13 * x19))))) + (0x11 * ((0x2 * ((uint64_t)x15 * x30)) + ((0x2 * ((uint64_t)x17 * x31)) + (0x2 * ((uint64_t)x16 * x29))))));
- uint64_t x36 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + ((uint64_t)x11 * x19)))) + (0x11 * (((uint64_t)x13 * x30) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x16 * x27))))));
- uint64_t x37 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((uint64_t)x9 * x19))) + (0x11 * ((0x2 * ((uint64_t)x11 * x30)) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + (((uint64_t)x17 * x27) + (0x2 * ((uint64_t)x16 * x25))))))));
- uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0x11 * ((0x2 * ((uint64_t)x9 * x30)) + ((0x2 * ((uint64_t)x11 * x31)) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + ((0x2 * ((uint64_t)x17 * x25)) + (0x2 * ((uint64_t)x16 * x23)))))))));
- uint64_t x39 = (((uint64_t)x5 * x19) + (0x11 * ((0x2 * ((uint64_t)x7 * x30)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + (0x2 * ((uint64_t)x16 * x21))))))))));
- uint64_t x40 = (x39 >> 0x19);
- uint32_t x41 = ((uint32_t)x39 & 0x1ffffff);
- uint64_t x42 = (x40 + x38);
- uint64_t x43 = (x42 >> 0x19);
- uint32_t x44 = ((uint32_t)x42 & 0x1ffffff);
- uint64_t x45 = (x43 + x37);
- uint64_t x46 = (x45 >> 0x19);
- uint32_t x47 = ((uint32_t)x45 & 0x1ffffff);
- uint64_t x48 = (x46 + x36);
- uint64_t x49 = (x48 >> 0x18);
- uint32_t x50 = ((uint32_t)x48 & 0xffffff);
- uint64_t x51 = (x49 + x35);
- uint64_t x52 = (x51 >> 0x19);
- uint32_t x53 = ((uint32_t)x51 & 0x1ffffff);
- uint64_t x54 = (x52 + x34);
- uint64_t x55 = (x54 >> 0x19);
- uint32_t x56 = ((uint32_t)x54 & 0x1ffffff);
- uint64_t x57 = (x55 + x33);
- uint64_t x58 = (x57 >> 0x19);
- uint32_t x59 = ((uint32_t)x57 & 0x1ffffff);
- uint64_t x60 = (x58 + x32);
- uint64_t x61 = (x60 >> 0x18);
- uint32_t x62 = ((uint32_t)x60 & 0xffffff);
- uint64_t x63 = (x41 + (0x11 * x61));
- uint32_t x64 = (uint32_t) (x63 >> 0x19);
- uint32_t x65 = ((uint32_t)x63 & 0x1ffffff);
- uint32_t x66 = (x64 + x44);
- uint32_t x67 = (x66 >> 0x19);
- uint32_t x68 = (x66 & 0x1ffffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e198m17_8limbs/femulDisplay.v b/src/Specific/solinas32_2e198m17_8limbs/femulDisplay.v
deleted file mode 100644
index 2b19a709d..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e198m17_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e198m17_8limbs/fesquare.c b/src/Specific/solinas32_2e198m17_8limbs/fesquare.c
deleted file mode 100644
index 429016d6a..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (((uint64_t)x2 * x13) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x13 * x2))))))));
- { uint64_t x16 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x11 * (0x2 * ((uint64_t)x13 * x13))));
- { uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x11 * ((0x2 * ((uint64_t)x14 * x13)) + (0x2 * ((uint64_t)x13 * x14)))));
- { uint64_t x18 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint64_t)x12 * x13)) + ((0x2 * ((uint64_t)x14 * x14)) + (0x2 * ((uint64_t)x13 * x12))))));
- { uint64_t x19 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x11 * (((uint64_t)x10 * x13) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x13 * x10))))));
- { uint64_t x20 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x11 * ((0x2 * ((uint64_t)x8 * x13)) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (0x2 * ((uint64_t)x13 * x8))))))));
- { uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * ((0x2 * ((uint64_t)x6 * x13)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + (0x2 * ((uint64_t)x13 * x6)))))))));
- { uint64_t x22 = (((uint64_t)x2 * x2) + (0x11 * ((0x2 * ((uint64_t)x4 * x13)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (0x2 * ((uint64_t)x13 * x4))))))))));
- { uint64_t x23 = (x22 >> 0x19);
- { uint32_t x24 = ((uint32_t)x22 & 0x1ffffff);
- { uint64_t x25 = (x23 + x21);
- { uint64_t x26 = (x25 >> 0x19);
- { uint32_t x27 = ((uint32_t)x25 & 0x1ffffff);
- { uint64_t x28 = (x26 + x20);
- { uint64_t x29 = (x28 >> 0x19);
- { uint32_t x30 = ((uint32_t)x28 & 0x1ffffff);
- { uint64_t x31 = (x29 + x19);
- { uint64_t x32 = (x31 >> 0x18);
- { uint32_t x33 = ((uint32_t)x31 & 0xffffff);
- { uint64_t x34 = (x32 + x18);
- { uint64_t x35 = (x34 >> 0x19);
- { uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- { uint64_t x37 = (x35 + x17);
- { uint64_t x38 = (x37 >> 0x19);
- { uint32_t x39 = ((uint32_t)x37 & 0x1ffffff);
- { uint64_t x40 = (x38 + x16);
- { uint64_t x41 = (x40 >> 0x19);
- { uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- { uint64_t x43 = (x41 + x15);
- { uint64_t x44 = (x43 >> 0x18);
- { uint32_t x45 = ((uint32_t)x43 & 0xffffff);
- { uint64_t x46 = (x24 + (0x11 * x44));
- { uint32_t x47 = (uint32_t) (x46 >> 0x19);
- { uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- { uint32_t x49 = (x47 + x27);
- { uint32_t x50 = (x49 >> 0x19);
- { uint32_t x51 = (x49 & 0x1ffffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e198m17_8limbs/fesquare.v b/src/Specific/solinas32_2e198m17_8limbs/fesquare.v
deleted file mode 100644
index 5e59fa6a7..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e198m17_8limbs.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_2e198m17_8limbs/fesquareDisplay.log b/src/Specific/solinas32_2e198m17_8limbs/fesquareDisplay.log
deleted file mode 100644
index db6452242..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (((uint64_t)x2 * x13) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x13 * x2))))))));
- uint64_t x16 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x11 * (0x2 * ((uint64_t)x13 * x13))));
- uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x11 * ((0x2 * ((uint64_t)x14 * x13)) + (0x2 * ((uint64_t)x13 * x14)))));
- uint64_t x18 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint64_t)x12 * x13)) + ((0x2 * ((uint64_t)x14 * x14)) + (0x2 * ((uint64_t)x13 * x12))))));
- uint64_t x19 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x11 * (((uint64_t)x10 * x13) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x13 * x10))))));
- uint64_t x20 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x11 * ((0x2 * ((uint64_t)x8 * x13)) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (0x2 * ((uint64_t)x13 * x8))))))));
- uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * ((0x2 * ((uint64_t)x6 * x13)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + (0x2 * ((uint64_t)x13 * x6)))))))));
- uint64_t x22 = (((uint64_t)x2 * x2) + (0x11 * ((0x2 * ((uint64_t)x4 * x13)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (0x2 * ((uint64_t)x13 * x4))))))))));
- uint64_t x23 = (x22 >> 0x19);
- uint32_t x24 = ((uint32_t)x22 & 0x1ffffff);
- uint64_t x25 = (x23 + x21);
- uint64_t x26 = (x25 >> 0x19);
- uint32_t x27 = ((uint32_t)x25 & 0x1ffffff);
- uint64_t x28 = (x26 + x20);
- uint64_t x29 = (x28 >> 0x19);
- uint32_t x30 = ((uint32_t)x28 & 0x1ffffff);
- uint64_t x31 = (x29 + x19);
- uint64_t x32 = (x31 >> 0x18);
- uint32_t x33 = ((uint32_t)x31 & 0xffffff);
- uint64_t x34 = (x32 + x18);
- uint64_t x35 = (x34 >> 0x19);
- uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- uint64_t x37 = (x35 + x17);
- uint64_t x38 = (x37 >> 0x19);
- uint32_t x39 = ((uint32_t)x37 & 0x1ffffff);
- uint64_t x40 = (x38 + x16);
- uint64_t x41 = (x40 >> 0x19);
- uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- uint64_t x43 = (x41 + x15);
- uint64_t x44 = (x43 >> 0x18);
- uint32_t x45 = ((uint32_t)x43 & 0xffffff);
- uint64_t x46 = (x24 + (0x11 * x44));
- uint32_t x47 = (uint32_t) (x46 >> 0x19);
- uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- uint32_t x49 = (x47 + x27);
- uint32_t x50 = (x49 >> 0x19);
- uint32_t x51 = (x49 & 0x1ffffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e198m17_8limbs/fesquareDisplay.v b/src/Specific/solinas32_2e198m17_8limbs/fesquareDisplay.v
deleted file mode 100644
index 444464890..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e198m17_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e198m17_8limbs/fesub.c b/src/Specific/solinas32_2e198m17_8limbs/fesub.c
deleted file mode 100644
index f0d6fee45..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = ((0x3ffffde + x5) - x19);
- out[1] = ((0x3fffffe + x7) - x21);
- out[2] = ((0x3fffffe + x9) - x23);
- out[3] = ((0x1fffffe + x11) - x25);
- out[4] = ((0x3fffffe + x13) - x27);
- out[5] = ((0x3fffffe + x15) - x29);
- out[6] = ((0x3fffffe + x17) - x31);
- out[7] = ((0x1fffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e198m17_8limbs/fesub.v b/src/Specific/solinas32_2e198m17_8limbs/fesub.v
deleted file mode 100644
index 658c5bc91..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e198m17_8limbs.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_2e198m17_8limbs/fesubDisplay.log b/src/Specific/solinas32_2e198m17_8limbs/fesubDisplay.log
deleted file mode 100644
index dac840266..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0x1fffffe + x16) - x30), ((0x3fffffe + x17) - x31), ((0x3fffffe + x15) - x29), ((0x3fffffe + x13) - x27), ((0x1fffffe + x11) - x25), ((0x3fffffe + x9) - x23), ((0x3fffffe + x7) - x21), ((0x3ffffde + x5) - x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e198m17_8limbs/fesubDisplay.v b/src/Specific/solinas32_2e198m17_8limbs/fesubDisplay.v
deleted file mode 100644
index 865a36ec5..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e198m17_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e198m17_8limbs/freeze.c b/src/Specific/solinas32_2e198m17_8limbs/freeze.c
deleted file mode 100644
index f91e7e3e9..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffef);
- { uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0x1ffffff);
- { uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0x1ffffff);
- { uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0xffffff);
- { uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0x1ffffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0x1ffffff);
- { uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0x1ffffff);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0xffffff);
- { uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- { uint32_t x40 = (x39 & 0x1ffffef);
- { uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint32_t x44 = (x39 & 0x1ffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint32_t x48 = (x39 & 0x1ffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint32_t x52 = (x39 & 0xffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint32_t x56 = (x39 & 0x1ffffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint32_t x60 = (x39 & 0x1ffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint32_t x64 = (x39 & 0x1ffffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint32_t x68 = (x39 & 0xffffff);
- { uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e198m17_8limbs/freeze.v b/src/Specific/solinas32_2e198m17_8limbs/freeze.v
deleted file mode 100644
index 3cddf0fd6..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e198m17_8limbs.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_2e198m17_8limbs/freezeDisplay.log b/src/Specific/solinas32_2e198m17_8limbs/freezeDisplay.log
deleted file mode 100644
index 95a480b08..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffef);
- uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0x1ffffff);
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0x1ffffff);
- uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0xffffff);
- uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0x1ffffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0x1ffffff);
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0x1ffffff);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0xffffff);
- uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- uint32_t x40 = (x39 & 0x1ffffef);
- uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint32_t x44 = (x39 & 0x1ffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint32_t x48 = (x39 & 0x1ffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint32_t x52 = (x39 & 0xffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint32_t x56 = (x39 & 0x1ffffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint32_t x60 = (x39 & 0x1ffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint32_t x64 = (x39 & 0x1ffffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint32_t x68 = (x39 & 0xffffff);
- uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e198m17_8limbs/freezeDisplay.v b/src/Specific/solinas32_2e198m17_8limbs/freezeDisplay.v
deleted file mode 100644
index 69acf7b2e..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e198m17_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e198m17_8limbs/py_interpreter.sh b/src/Specific/solinas32_2e198m17_8limbs/py_interpreter.sh
deleted file mode 100755
index c03da2be8..000000000
--- a/src/Specific/solinas32_2e198m17_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**198 - 17' -Dmodulus_bytes='24.75' -Da24='121665'
diff --git a/src/Specific/solinas32_2e198m17_9limbs/CurveParameters.v b/src/Specific/solinas32_2e198m17_9limbs/CurveParameters.v
deleted file mode 100644
index edf315311..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^198 - 17
-Base: 22
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 22;
- bitwidth := 32;
- s := 2^198;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 9); [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_2e198m17_9limbs/Synthesis.v b/src/Specific/solinas32_2e198m17_9limbs/Synthesis.v
deleted file mode 100644
index ccaa0a50c..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e198m17_9limbs.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_2e198m17_9limbs/compiler.sh b/src/Specific/solinas32_2e198m17_9limbs/compiler.sh
deleted file mode 100755
index e4f389ee5..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,22,22,22,22,22,22,22}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<198) - 17' "$@"
diff --git a/src/Specific/solinas32_2e198m17_9limbs/compilerxx.sh b/src/Specific/solinas32_2e198m17_9limbs/compilerxx.sh
deleted file mode 100755
index 89094429a..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,22,22,22,22,22,22,22}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<198) - 17' "$@"
diff --git a/src/Specific/solinas32_2e198m17_9limbs/feadd.c b/src/Specific/solinas32_2e198m17_9limbs/feadd.c
deleted file mode 100644
index e1188fdec..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e198m17_9limbs/feadd.v b/src/Specific/solinas32_2e198m17_9limbs/feadd.v
deleted file mode 100644
index f2712a272..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e198m17_9limbs.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_2e198m17_9limbs/feaddDisplay.log b/src/Specific/solinas32_2e198m17_9limbs/feaddDisplay.log
deleted file mode 100644
index e26bb40f8..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e198m17_9limbs/feaddDisplay.v b/src/Specific/solinas32_2e198m17_9limbs/feaddDisplay.v
deleted file mode 100644
index 52b584310..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e198m17_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e198m17_9limbs/fecarry.v b/src/Specific/solinas32_2e198m17_9limbs/fecarry.v
deleted file mode 100644
index 722b5b906..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e198m17_9limbs.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_2e198m17_9limbs/fecarryDisplay.v b/src/Specific/solinas32_2e198m17_9limbs/fecarryDisplay.v
deleted file mode 100644
index c9e290764..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e198m17_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e198m17_9limbs/femul.c b/src/Specific/solinas32_2e198m17_9limbs/femul.c
deleted file mode 100644
index fa8aadc0c..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/femul.c
+++ /dev/null
@@ -1,71 +0,0 @@
-static void femul(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- { uint64_t x36 = (((uint64_t)x5 * x34) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + (((uint64_t)x19 * x23) + ((uint64_t)x18 * x21)))))))));
- { uint64_t x37 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + (((uint64_t)x17 * x23) + ((uint64_t)x19 * x21)))))))) + (0x11 * ((uint64_t)x18 * x34)));
- { uint64_t x38 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + ((uint64_t)x17 * x21))))))) + (0x11 * (((uint64_t)x19 * x34) + ((uint64_t)x18 * x35))));
- { uint64_t x39 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + (((uint64_t)x13 * x23) + ((uint64_t)x15 * x21)))))) + (0x11 * (((uint64_t)x17 * x34) + (((uint64_t)x19 * x35) + ((uint64_t)x18 * x33)))));
- { uint64_t x40 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + ((uint64_t)x13 * x21))))) + (0x11 * (((uint64_t)x15 * x34) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x18 * x31))))));
- { uint64_t x41 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + ((uint64_t)x11 * x21)))) + (0x11 * (((uint64_t)x13 * x34) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + ((uint64_t)x18 * x29)))))));
- { uint64_t x42 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + ((uint64_t)x9 * x21))) + (0x11 * (((uint64_t)x11 * x34) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + ((uint64_t)x18 * x27))))))));
- { uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0x11 * (((uint64_t)x9 * x34) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + ((uint64_t)x18 * x25)))))))));
- { uint64_t x44 = (((uint64_t)x5 * x21) + (0x11 * (((uint64_t)x7 * x34) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + (((uint64_t)x17 * x27) + (((uint64_t)x19 * x25) + ((uint64_t)x18 * x23))))))))));
- { uint64_t x45 = (x44 >> 0x16);
- { uint32_t x46 = ((uint32_t)x44 & 0x3fffff);
- { uint64_t x47 = (x45 + x43);
- { uint64_t x48 = (x47 >> 0x16);
- { uint32_t x49 = ((uint32_t)x47 & 0x3fffff);
- { uint64_t x50 = (x48 + x42);
- { uint64_t x51 = (x50 >> 0x16);
- { uint32_t x52 = ((uint32_t)x50 & 0x3fffff);
- { uint64_t x53 = (x51 + x41);
- { uint32_t x54 = (uint32_t) (x53 >> 0x16);
- { uint32_t x55 = ((uint32_t)x53 & 0x3fffff);
- { uint64_t x56 = (x54 + x40);
- { uint32_t x57 = (uint32_t) (x56 >> 0x16);
- { uint32_t x58 = ((uint32_t)x56 & 0x3fffff);
- { uint64_t x59 = (x57 + x39);
- { uint32_t x60 = (uint32_t) (x59 >> 0x16);
- { uint32_t x61 = ((uint32_t)x59 & 0x3fffff);
- { uint64_t x62 = (x60 + x38);
- { uint32_t x63 = (uint32_t) (x62 >> 0x16);
- { uint32_t x64 = ((uint32_t)x62 & 0x3fffff);
- { uint64_t x65 = (x63 + x37);
- { uint32_t x66 = (uint32_t) (x65 >> 0x16);
- { uint32_t x67 = ((uint32_t)x65 & 0x3fffff);
- { uint64_t x68 = (x66 + x36);
- { uint32_t x69 = (uint32_t) (x68 >> 0x16);
- { uint32_t x70 = ((uint32_t)x68 & 0x3fffff);
- { uint64_t x71 = (x46 + ((uint64_t)0x11 * x69));
- { uint32_t x72 = (uint32_t) (x71 >> 0x16);
- { uint32_t x73 = ((uint32_t)x71 & 0x3fffff);
- { uint32_t x74 = (x72 + x49);
- { uint32_t x75 = (x74 >> 0x16);
- { uint32_t x76 = (x74 & 0x3fffff);
- out[0] = x73;
- out[1] = x76;
- out[2] = (x75 + x52);
- out[3] = x55;
- out[4] = x58;
- out[5] = x61;
- out[6] = x64;
- out[7] = x67;
- out[8] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e198m17_9limbs/femul.v b/src/Specific/solinas32_2e198m17_9limbs/femul.v
deleted file mode 100644
index 15fea2dd1..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e198m17_9limbs.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_2e198m17_9limbs/femulDisplay.log b/src/Specific/solinas32_2e198m17_9limbs/femulDisplay.log
deleted file mode 100644
index 6d3e2ee24..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/femulDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint64_t x36 = (((uint64_t)x5 * x34) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + (((uint64_t)x19 * x23) + ((uint64_t)x18 * x21)))))))));
- uint64_t x37 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + (((uint64_t)x17 * x23) + ((uint64_t)x19 * x21)))))))) + (0x11 * ((uint64_t)x18 * x34)));
- uint64_t x38 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + ((uint64_t)x17 * x21))))))) + (0x11 * (((uint64_t)x19 * x34) + ((uint64_t)x18 * x35))));
- uint64_t x39 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + (((uint64_t)x13 * x23) + ((uint64_t)x15 * x21)))))) + (0x11 * (((uint64_t)x17 * x34) + (((uint64_t)x19 * x35) + ((uint64_t)x18 * x33)))));
- uint64_t x40 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + ((uint64_t)x13 * x21))))) + (0x11 * (((uint64_t)x15 * x34) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x18 * x31))))));
- uint64_t x41 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + ((uint64_t)x11 * x21)))) + (0x11 * (((uint64_t)x13 * x34) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + ((uint64_t)x18 * x29)))))));
- uint64_t x42 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + ((uint64_t)x9 * x21))) + (0x11 * (((uint64_t)x11 * x34) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + ((uint64_t)x18 * x27))))))));
- uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0x11 * (((uint64_t)x9 * x34) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + ((uint64_t)x18 * x25)))))))));
- uint64_t x44 = (((uint64_t)x5 * x21) + (0x11 * (((uint64_t)x7 * x34) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + (((uint64_t)x17 * x27) + (((uint64_t)x19 * x25) + ((uint64_t)x18 * x23))))))))));
- uint64_t x45 = (x44 >> 0x16);
- uint32_t x46 = ((uint32_t)x44 & 0x3fffff);
- uint64_t x47 = (x45 + x43);
- uint64_t x48 = (x47 >> 0x16);
- uint32_t x49 = ((uint32_t)x47 & 0x3fffff);
- uint64_t x50 = (x48 + x42);
- uint64_t x51 = (x50 >> 0x16);
- uint32_t x52 = ((uint32_t)x50 & 0x3fffff);
- uint64_t x53 = (x51 + x41);
- uint32_t x54 = (uint32_t) (x53 >> 0x16);
- uint32_t x55 = ((uint32_t)x53 & 0x3fffff);
- uint64_t x56 = (x54 + x40);
- uint32_t x57 = (uint32_t) (x56 >> 0x16);
- uint32_t x58 = ((uint32_t)x56 & 0x3fffff);
- uint64_t x59 = (x57 + x39);
- uint32_t x60 = (uint32_t) (x59 >> 0x16);
- uint32_t x61 = ((uint32_t)x59 & 0x3fffff);
- uint64_t x62 = (x60 + x38);
- uint32_t x63 = (uint32_t) (x62 >> 0x16);
- uint32_t x64 = ((uint32_t)x62 & 0x3fffff);
- uint64_t x65 = (x63 + x37);
- uint32_t x66 = (uint32_t) (x65 >> 0x16);
- uint32_t x67 = ((uint32_t)x65 & 0x3fffff);
- uint64_t x68 = (x66 + x36);
- uint32_t x69 = (uint32_t) (x68 >> 0x16);
- uint32_t x70 = ((uint32_t)x68 & 0x3fffff);
- uint64_t x71 = (x46 + ((uint64_t)0x11 * x69));
- uint32_t x72 = (uint32_t) (x71 >> 0x16);
- uint32_t x73 = ((uint32_t)x71 & 0x3fffff);
- uint32_t x74 = (x72 + x49);
- uint32_t x75 = (x74 >> 0x16);
- uint32_t x76 = (x74 & 0x3fffff);
- return (Return x70, Return x67, Return x64, Return x61, Return x58, Return x55, (x75 + x52), Return x76, Return x73))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e198m17_9limbs/femulDisplay.v b/src/Specific/solinas32_2e198m17_9limbs/femulDisplay.v
deleted file mode 100644
index 095a12236..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e198m17_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e198m17_9limbs/fesquare.c b/src/Specific/solinas32_2e198m17_9limbs/fesquare.c
deleted file mode 100644
index c146341e3..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/fesquare.c
+++ /dev/null
@@ -1,62 +0,0 @@
-static void fesquare(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x17 = (((uint64_t)x2 * x15) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x15 * x2)))))))));
- { uint64_t x18 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x11 * ((uint64_t)x15 * x15)));
- { uint64_t x19 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x11 * (((uint64_t)x16 * x15) + ((uint64_t)x15 * x16))));
- { uint64_t x20 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x11 * (((uint64_t)x14 * x15) + (((uint64_t)x16 * x16) + ((uint64_t)x15 * x14)))));
- { uint64_t x21 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x11 * (((uint64_t)x12 * x15) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x15 * x12))))));
- { uint64_t x22 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x11 * (((uint64_t)x10 * x15) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + ((uint64_t)x15 * x10)))))));
- { uint64_t x23 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x11 * (((uint64_t)x8 * x15) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x15 * x8))))))));
- { uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * (((uint64_t)x6 * x15) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((uint64_t)x15 * x6)))))))));
- { uint64_t x25 = (((uint64_t)x2 * x2) + (0x11 * (((uint64_t)x4 * x15) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + ((uint64_t)x15 * x4))))))))));
- { uint64_t x26 = (x25 >> 0x16);
- { uint32_t x27 = ((uint32_t)x25 & 0x3fffff);
- { uint64_t x28 = (x26 + x24);
- { uint64_t x29 = (x28 >> 0x16);
- { uint32_t x30 = ((uint32_t)x28 & 0x3fffff);
- { uint64_t x31 = (x29 + x23);
- { uint64_t x32 = (x31 >> 0x16);
- { uint32_t x33 = ((uint32_t)x31 & 0x3fffff);
- { uint64_t x34 = (x32 + x22);
- { uint32_t x35 = (uint32_t) (x34 >> 0x16);
- { uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- { uint64_t x37 = (x35 + x21);
- { uint32_t x38 = (uint32_t) (x37 >> 0x16);
- { uint32_t x39 = ((uint32_t)x37 & 0x3fffff);
- { uint64_t x40 = (x38 + x20);
- { uint32_t x41 = (uint32_t) (x40 >> 0x16);
- { uint32_t x42 = ((uint32_t)x40 & 0x3fffff);
- { uint64_t x43 = (x41 + x19);
- { uint32_t x44 = (uint32_t) (x43 >> 0x16);
- { uint32_t x45 = ((uint32_t)x43 & 0x3fffff);
- { uint64_t x46 = (x44 + x18);
- { uint32_t x47 = (uint32_t) (x46 >> 0x16);
- { uint32_t x48 = ((uint32_t)x46 & 0x3fffff);
- { uint64_t x49 = (x47 + x17);
- { uint32_t x50 = (uint32_t) (x49 >> 0x16);
- { uint32_t x51 = ((uint32_t)x49 & 0x3fffff);
- { uint64_t x52 = (x27 + ((uint64_t)0x11 * x50));
- { uint32_t x53 = (uint32_t) (x52 >> 0x16);
- { uint32_t x54 = ((uint32_t)x52 & 0x3fffff);
- { uint32_t x55 = (x53 + x30);
- { uint32_t x56 = (x55 >> 0x16);
- { uint32_t x57 = (x55 & 0x3fffff);
- out[0] = x54;
- out[1] = x57;
- out[2] = (x56 + x33);
- out[3] = x36;
- out[4] = x39;
- out[5] = x42;
- out[6] = x45;
- out[7] = x48;
- out[8] = x51;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e198m17_9limbs/fesquare.v b/src/Specific/solinas32_2e198m17_9limbs/fesquare.v
deleted file mode 100644
index 4125f1ab5..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e198m17_9limbs.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_2e198m17_9limbs/fesquareDisplay.log b/src/Specific/solinas32_2e198m17_9limbs/fesquareDisplay.log
deleted file mode 100644
index 3b0ec9b78..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x17 = (((uint64_t)x2 * x15) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x15 * x2)))))))));
- uint64_t x18 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x11 * ((uint64_t)x15 * x15)));
- uint64_t x19 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x11 * (((uint64_t)x16 * x15) + ((uint64_t)x15 * x16))));
- uint64_t x20 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x11 * (((uint64_t)x14 * x15) + (((uint64_t)x16 * x16) + ((uint64_t)x15 * x14)))));
- uint64_t x21 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x11 * (((uint64_t)x12 * x15) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x15 * x12))))));
- uint64_t x22 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x11 * (((uint64_t)x10 * x15) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + ((uint64_t)x15 * x10)))))));
- uint64_t x23 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x11 * (((uint64_t)x8 * x15) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x15 * x8))))))));
- uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * (((uint64_t)x6 * x15) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((uint64_t)x15 * x6)))))))));
- uint64_t x25 = (((uint64_t)x2 * x2) + (0x11 * (((uint64_t)x4 * x15) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + ((uint64_t)x15 * x4))))))))));
- uint64_t x26 = (x25 >> 0x16);
- uint32_t x27 = ((uint32_t)x25 & 0x3fffff);
- uint64_t x28 = (x26 + x24);
- uint64_t x29 = (x28 >> 0x16);
- uint32_t x30 = ((uint32_t)x28 & 0x3fffff);
- uint64_t x31 = (x29 + x23);
- uint64_t x32 = (x31 >> 0x16);
- uint32_t x33 = ((uint32_t)x31 & 0x3fffff);
- uint64_t x34 = (x32 + x22);
- uint32_t x35 = (uint32_t) (x34 >> 0x16);
- uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- uint64_t x37 = (x35 + x21);
- uint32_t x38 = (uint32_t) (x37 >> 0x16);
- uint32_t x39 = ((uint32_t)x37 & 0x3fffff);
- uint64_t x40 = (x38 + x20);
- uint32_t x41 = (uint32_t) (x40 >> 0x16);
- uint32_t x42 = ((uint32_t)x40 & 0x3fffff);
- uint64_t x43 = (x41 + x19);
- uint32_t x44 = (uint32_t) (x43 >> 0x16);
- uint32_t x45 = ((uint32_t)x43 & 0x3fffff);
- uint64_t x46 = (x44 + x18);
- uint32_t x47 = (uint32_t) (x46 >> 0x16);
- uint32_t x48 = ((uint32_t)x46 & 0x3fffff);
- uint64_t x49 = (x47 + x17);
- uint32_t x50 = (uint32_t) (x49 >> 0x16);
- uint32_t x51 = ((uint32_t)x49 & 0x3fffff);
- uint64_t x52 = (x27 + ((uint64_t)0x11 * x50));
- uint32_t x53 = (uint32_t) (x52 >> 0x16);
- uint32_t x54 = ((uint32_t)x52 & 0x3fffff);
- uint32_t x55 = (x53 + x30);
- uint32_t x56 = (x55 >> 0x16);
- uint32_t x57 = (x55 & 0x3fffff);
- return (Return x51, Return x48, Return x45, Return x42, Return x39, Return x36, (x56 + x33), Return x57, Return x54))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e198m17_9limbs/fesquareDisplay.v b/src/Specific/solinas32_2e198m17_9limbs/fesquareDisplay.v
deleted file mode 100644
index 403c4c74f..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e198m17_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e198m17_9limbs/fesub.c b/src/Specific/solinas32_2e198m17_9limbs/fesub.c
deleted file mode 100644
index d591ab209..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/fesub.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void fesub(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = ((0x7fffde + x5) - x21);
- out[1] = ((0x7ffffe + x7) - x23);
- out[2] = ((0x7ffffe + x9) - x25);
- out[3] = ((0x7ffffe + x11) - x27);
- out[4] = ((0x7ffffe + x13) - x29);
- out[5] = ((0x7ffffe + x15) - x31);
- out[6] = ((0x7ffffe + x17) - x33);
- out[7] = ((0x7ffffe + x19) - x35);
- out[8] = ((0x7ffffe + x18) - x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e198m17_9limbs/fesub.v b/src/Specific/solinas32_2e198m17_9limbs/fesub.v
deleted file mode 100644
index d9db93bed..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e198m17_9limbs.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_2e198m17_9limbs/fesubDisplay.log b/src/Specific/solinas32_2e198m17_9limbs/fesubDisplay.log
deleted file mode 100644
index 16ff09f9d..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- (((0x7ffffe + x18) - x34), ((0x7ffffe + x19) - x35), ((0x7ffffe + x17) - x33), ((0x7ffffe + x15) - x31), ((0x7ffffe + x13) - x29), ((0x7ffffe + x11) - x27), ((0x7ffffe + x9) - x25), ((0x7ffffe + x7) - x23), ((0x7fffde + x5) - x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e198m17_9limbs/fesubDisplay.v b/src/Specific/solinas32_2e198m17_9limbs/fesubDisplay.v
deleted file mode 100644
index 5d1a252a1..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e198m17_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e198m17_9limbs/freeze.c b/src/Specific/solinas32_2e198m17_9limbs/freeze.c
deleted file mode 100644
index 869e5f82d..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/freeze.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void freeze(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffef);
- { uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0x3fffff);
- { uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0x3fffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x8, 0x3fffff);
- { uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0x3fffff);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0x3fffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0x3fffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0x3fffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0x3fffff);
- { uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- { uint32_t x45 = (x44 & 0x3fffef);
- { uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- { uint32_t x49 = (x44 & 0x3fffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- { uint32_t x53 = (x44 & 0x3fffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- { uint32_t x57 = (x44 & 0x3fffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- { uint32_t x61 = (x44 & 0x3fffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- { uint32_t x65 = (x44 & 0x3fffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- { uint32_t x69 = (x44 & 0x3fffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- { uint32_t x73 = (x44 & 0x3fffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- { uint32_t x77 = (x44 & 0x3fffff);
- { uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- out[0] = x47;
- out[1] = x51;
- out[2] = x55;
- out[3] = x59;
- out[4] = x63;
- out[5] = x67;
- out[6] = x71;
- out[7] = x75;
- out[8] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e198m17_9limbs/freeze.v b/src/Specific/solinas32_2e198m17_9limbs/freeze.v
deleted file mode 100644
index c61727074..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e198m17_9limbs.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_2e198m17_9limbs/freezeDisplay.log b/src/Specific/solinas32_2e198m17_9limbs/freezeDisplay.log
deleted file mode 100644
index e249734b6..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffef);
- uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0x3fffff);
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0x3fffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x8, 0x3fffff);
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0x3fffff);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0x3fffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0x3fffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0x3fffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0x3fffff);
- uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- uint32_t x45 = (x44 & 0x3fffef);
- uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- uint32_t x49 = (x44 & 0x3fffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- uint32_t x53 = (x44 & 0x3fffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- uint32_t x57 = (x44 & 0x3fffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- uint32_t x61 = (x44 & 0x3fffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- uint32_t x65 = (x44 & 0x3fffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- uint32_t x69 = (x44 & 0x3fffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- uint32_t x73 = (x44 & 0x3fffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- uint32_t x77 = (x44 & 0x3fffff);
- uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- (Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x51, Return x47))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e198m17_9limbs/freezeDisplay.v b/src/Specific/solinas32_2e198m17_9limbs/freezeDisplay.v
deleted file mode 100644
index 98bd3a044..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e198m17_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e198m17_9limbs/py_interpreter.sh b/src/Specific/solinas32_2e198m17_9limbs/py_interpreter.sh
deleted file mode 100755
index 21efd4b00..000000000
--- a/src/Specific/solinas32_2e198m17_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**198 - 17' -Dmodulus_bytes='22' -Da24='121665'
diff --git a/src/Specific/solinas32_2e206m5_8limbs/CurveParameters.v b/src/Specific/solinas32_2e206m5_8limbs/CurveParameters.v
deleted file mode 100644
index ffb4e025d..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^206 - 5
-Base: 25.75
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 25 + 3/4;
- bitwidth := 32;
- s := 2^206;
- c := [(1, 5)];
- carry_chains := Some [seq 0 (pred 8); [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_2e206m5_8limbs/Synthesis.v b/src/Specific/solinas32_2e206m5_8limbs/Synthesis.v
deleted file mode 100644
index e6c4f42de..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e206m5_8limbs.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_2e206m5_8limbs/compiler.sh b/src/Specific/solinas32_2e206m5_8limbs/compiler.sh
deleted file mode 100755
index 62224c306..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,26,26,25,26,26,26,25}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<206) - 5' "$@"
diff --git a/src/Specific/solinas32_2e206m5_8limbs/compilerxx.sh b/src/Specific/solinas32_2e206m5_8limbs/compilerxx.sh
deleted file mode 100755
index 7072af09a..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,26,26,25,26,26,26,25}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<206) - 5' "$@"
diff --git a/src/Specific/solinas32_2e206m5_8limbs/feadd.c b/src/Specific/solinas32_2e206m5_8limbs/feadd.c
deleted file mode 100644
index cc3671f75..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e206m5_8limbs/feadd.v b/src/Specific/solinas32_2e206m5_8limbs/feadd.v
deleted file mode 100644
index c16d5ff4c..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e206m5_8limbs.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_2e206m5_8limbs/feaddDisplay.log b/src/Specific/solinas32_2e206m5_8limbs/feaddDisplay.log
deleted file mode 100644
index f25c10903..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e206m5_8limbs/feaddDisplay.v b/src/Specific/solinas32_2e206m5_8limbs/feaddDisplay.v
deleted file mode 100644
index 29caa7929..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e206m5_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e206m5_8limbs/fecarry.v b/src/Specific/solinas32_2e206m5_8limbs/fecarry.v
deleted file mode 100644
index 777ea1822..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e206m5_8limbs.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_2e206m5_8limbs/fecarryDisplay.v b/src/Specific/solinas32_2e206m5_8limbs/fecarryDisplay.v
deleted file mode 100644
index aaf073260..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e206m5_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e206m5_8limbs/femul.c b/src/Specific/solinas32_2e206m5_8limbs/femul.c
deleted file mode 100644
index 05e571707..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint64_t x32 = (((uint64_t)x5 * x30) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + (((uint64_t)x17 * x21) + ((uint64_t)x16 * x19))))))));
- { uint64_t x33 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + ((0x2 * ((uint64_t)x11 * x25)) + (((uint64_t)x13 * x23) + (((uint64_t)x15 * x21) + ((uint64_t)x17 * x19))))))) + (0x5 * (0x2 * ((uint64_t)x16 * x30))));
- { uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + ((0x2 * ((uint64_t)x11 * x23)) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0x5 * ((0x2 * ((uint64_t)x17 * x30)) + (0x2 * ((uint64_t)x16 * x31)))));
- { uint64_t x35 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + ((uint64_t)x13 * x19))))) + (0x5 * ((0x2 * ((uint64_t)x15 * x30)) + ((0x2 * ((uint64_t)x17 * x31)) + (0x2 * ((uint64_t)x16 * x29))))));
- { uint64_t x36 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + ((uint64_t)x11 * x19)))) + (0x5 * (((uint64_t)x13 * x30) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x16 * x27))))));
- { uint64_t x37 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((uint64_t)x9 * x19))) + (0x5 * ((0x2 * ((uint64_t)x11 * x30)) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + (((uint64_t)x17 * x27) + (0x2 * ((uint64_t)x16 * x25))))))));
- { uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0x5 * ((0x2 * ((uint64_t)x9 * x30)) + ((0x2 * ((uint64_t)x11 * x31)) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + ((0x2 * ((uint64_t)x17 * x25)) + (0x2 * ((uint64_t)x16 * x23)))))))));
- { uint64_t x39 = (((uint64_t)x5 * x19) + (0x5 * ((0x2 * ((uint64_t)x7 * x30)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + (0x2 * ((uint64_t)x16 * x21))))))))));
- { uint64_t x40 = (x39 >> 0x1a);
- { uint32_t x41 = ((uint32_t)x39 & 0x3ffffff);
- { uint64_t x42 = (x40 + x38);
- { uint64_t x43 = (x42 >> 0x1a);
- { uint32_t x44 = ((uint32_t)x42 & 0x3ffffff);
- { uint64_t x45 = (x43 + x37);
- { uint64_t x46 = (x45 >> 0x1a);
- { uint32_t x47 = ((uint32_t)x45 & 0x3ffffff);
- { uint64_t x48 = (x46 + x36);
- { uint64_t x49 = (x48 >> 0x19);
- { uint32_t x50 = ((uint32_t)x48 & 0x1ffffff);
- { uint64_t x51 = (x49 + x35);
- { uint64_t x52 = (x51 >> 0x1a);
- { uint32_t x53 = ((uint32_t)x51 & 0x3ffffff);
- { uint64_t x54 = (x52 + x34);
- { uint64_t x55 = (x54 >> 0x1a);
- { uint32_t x56 = ((uint32_t)x54 & 0x3ffffff);
- { uint64_t x57 = (x55 + x33);
- { uint64_t x58 = (x57 >> 0x1a);
- { uint32_t x59 = ((uint32_t)x57 & 0x3ffffff);
- { uint64_t x60 = (x58 + x32);
- { uint64_t x61 = (x60 >> 0x19);
- { uint32_t x62 = ((uint32_t)x60 & 0x1ffffff);
- { uint64_t x63 = (x41 + (0x5 * x61));
- { uint32_t x64 = (uint32_t) (x63 >> 0x1a);
- { uint32_t x65 = ((uint32_t)x63 & 0x3ffffff);
- { uint32_t x66 = (x64 + x44);
- { uint32_t x67 = (x66 >> 0x1a);
- { uint32_t x68 = (x66 & 0x3ffffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e206m5_8limbs/femul.v b/src/Specific/solinas32_2e206m5_8limbs/femul.v
deleted file mode 100644
index 31f2f0750..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e206m5_8limbs.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_2e206m5_8limbs/femulDisplay.log b/src/Specific/solinas32_2e206m5_8limbs/femulDisplay.log
deleted file mode 100644
index 63e534599..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x32 = (((uint64_t)x5 * x30) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + (((uint64_t)x17 * x21) + ((uint64_t)x16 * x19))))))));
- uint64_t x33 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + ((0x2 * ((uint64_t)x11 * x25)) + (((uint64_t)x13 * x23) + (((uint64_t)x15 * x21) + ((uint64_t)x17 * x19))))))) + (0x5 * (0x2 * ((uint64_t)x16 * x30))));
- uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + ((0x2 * ((uint64_t)x11 * x23)) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0x5 * ((0x2 * ((uint64_t)x17 * x30)) + (0x2 * ((uint64_t)x16 * x31)))));
- uint64_t x35 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((0x2 * ((uint64_t)x11 * x21)) + ((uint64_t)x13 * x19))))) + (0x5 * ((0x2 * ((uint64_t)x15 * x30)) + ((0x2 * ((uint64_t)x17 * x31)) + (0x2 * ((uint64_t)x16 * x29))))));
- uint64_t x36 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + ((uint64_t)x11 * x19)))) + (0x5 * (((uint64_t)x13 * x30) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x16 * x27))))));
- uint64_t x37 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((uint64_t)x9 * x19))) + (0x5 * ((0x2 * ((uint64_t)x11 * x30)) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + (((uint64_t)x17 * x27) + (0x2 * ((uint64_t)x16 * x25))))))));
- uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0x5 * ((0x2 * ((uint64_t)x9 * x30)) + ((0x2 * ((uint64_t)x11 * x31)) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + ((0x2 * ((uint64_t)x17 * x25)) + (0x2 * ((uint64_t)x16 * x23)))))))));
- uint64_t x39 = (((uint64_t)x5 * x19) + (0x5 * ((0x2 * ((uint64_t)x7 * x30)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + (0x2 * ((uint64_t)x16 * x21))))))))));
- uint64_t x40 = (x39 >> 0x1a);
- uint32_t x41 = ((uint32_t)x39 & 0x3ffffff);
- uint64_t x42 = (x40 + x38);
- uint64_t x43 = (x42 >> 0x1a);
- uint32_t x44 = ((uint32_t)x42 & 0x3ffffff);
- uint64_t x45 = (x43 + x37);
- uint64_t x46 = (x45 >> 0x1a);
- uint32_t x47 = ((uint32_t)x45 & 0x3ffffff);
- uint64_t x48 = (x46 + x36);
- uint64_t x49 = (x48 >> 0x19);
- uint32_t x50 = ((uint32_t)x48 & 0x1ffffff);
- uint64_t x51 = (x49 + x35);
- uint64_t x52 = (x51 >> 0x1a);
- uint32_t x53 = ((uint32_t)x51 & 0x3ffffff);
- uint64_t x54 = (x52 + x34);
- uint64_t x55 = (x54 >> 0x1a);
- uint32_t x56 = ((uint32_t)x54 & 0x3ffffff);
- uint64_t x57 = (x55 + x33);
- uint64_t x58 = (x57 >> 0x1a);
- uint32_t x59 = ((uint32_t)x57 & 0x3ffffff);
- uint64_t x60 = (x58 + x32);
- uint64_t x61 = (x60 >> 0x19);
- uint32_t x62 = ((uint32_t)x60 & 0x1ffffff);
- uint64_t x63 = (x41 + (0x5 * x61));
- uint32_t x64 = (uint32_t) (x63 >> 0x1a);
- uint32_t x65 = ((uint32_t)x63 & 0x3ffffff);
- uint32_t x66 = (x64 + x44);
- uint32_t x67 = (x66 >> 0x1a);
- uint32_t x68 = (x66 & 0x3ffffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e206m5_8limbs/femulDisplay.v b/src/Specific/solinas32_2e206m5_8limbs/femulDisplay.v
deleted file mode 100644
index 205110d4b..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e206m5_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e206m5_8limbs/fesquare.c b/src/Specific/solinas32_2e206m5_8limbs/fesquare.c
deleted file mode 100644
index 0be1a7e70..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (((uint64_t)x2 * x13) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x13 * x2))))))));
- { uint64_t x16 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x5 * (0x2 * ((uint64_t)x13 * x13))));
- { uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x5 * ((0x2 * ((uint64_t)x14 * x13)) + (0x2 * ((uint64_t)x13 * x14)))));
- { uint64_t x18 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x5 * ((0x2 * ((uint64_t)x12 * x13)) + ((0x2 * ((uint64_t)x14 * x14)) + (0x2 * ((uint64_t)x13 * x12))))));
- { uint64_t x19 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x5 * (((uint64_t)x10 * x13) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x13 * x10))))));
- { uint64_t x20 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x5 * ((0x2 * ((uint64_t)x8 * x13)) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (0x2 * ((uint64_t)x13 * x8))))))));
- { uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x5 * ((0x2 * ((uint64_t)x6 * x13)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + (0x2 * ((uint64_t)x13 * x6)))))))));
- { uint64_t x22 = (((uint64_t)x2 * x2) + (0x5 * ((0x2 * ((uint64_t)x4 * x13)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (0x2 * ((uint64_t)x13 * x4))))))))));
- { uint64_t x23 = (x22 >> 0x1a);
- { uint32_t x24 = ((uint32_t)x22 & 0x3ffffff);
- { uint64_t x25 = (x23 + x21);
- { uint64_t x26 = (x25 >> 0x1a);
- { uint32_t x27 = ((uint32_t)x25 & 0x3ffffff);
- { uint64_t x28 = (x26 + x20);
- { uint64_t x29 = (x28 >> 0x1a);
- { uint32_t x30 = ((uint32_t)x28 & 0x3ffffff);
- { uint64_t x31 = (x29 + x19);
- { uint64_t x32 = (x31 >> 0x19);
- { uint32_t x33 = ((uint32_t)x31 & 0x1ffffff);
- { uint64_t x34 = (x32 + x18);
- { uint64_t x35 = (x34 >> 0x1a);
- { uint32_t x36 = ((uint32_t)x34 & 0x3ffffff);
- { uint64_t x37 = (x35 + x17);
- { uint64_t x38 = (x37 >> 0x1a);
- { uint32_t x39 = ((uint32_t)x37 & 0x3ffffff);
- { uint64_t x40 = (x38 + x16);
- { uint64_t x41 = (x40 >> 0x1a);
- { uint32_t x42 = ((uint32_t)x40 & 0x3ffffff);
- { uint64_t x43 = (x41 + x15);
- { uint64_t x44 = (x43 >> 0x19);
- { uint32_t x45 = ((uint32_t)x43 & 0x1ffffff);
- { uint64_t x46 = (x24 + (0x5 * x44));
- { uint32_t x47 = (uint32_t) (x46 >> 0x1a);
- { uint32_t x48 = ((uint32_t)x46 & 0x3ffffff);
- { uint32_t x49 = (x47 + x27);
- { uint32_t x50 = (x49 >> 0x1a);
- { uint32_t x51 = (x49 & 0x3ffffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e206m5_8limbs/fesquare.v b/src/Specific/solinas32_2e206m5_8limbs/fesquare.v
deleted file mode 100644
index 22bf36d41..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e206m5_8limbs.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_2e206m5_8limbs/fesquareDisplay.log b/src/Specific/solinas32_2e206m5_8limbs/fesquareDisplay.log
deleted file mode 100644
index 725782e55..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (((uint64_t)x2 * x13) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x13 * x2))))))));
- uint64_t x16 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x5 * (0x2 * ((uint64_t)x13 * x13))));
- uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x5 * ((0x2 * ((uint64_t)x14 * x13)) + (0x2 * ((uint64_t)x13 * x14)))));
- uint64_t x18 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x5 * ((0x2 * ((uint64_t)x12 * x13)) + ((0x2 * ((uint64_t)x14 * x14)) + (0x2 * ((uint64_t)x13 * x12))))));
- uint64_t x19 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x5 * (((uint64_t)x10 * x13) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x13 * x10))))));
- uint64_t x20 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x5 * ((0x2 * ((uint64_t)x8 * x13)) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (0x2 * ((uint64_t)x13 * x8))))))));
- uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x5 * ((0x2 * ((uint64_t)x6 * x13)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + (0x2 * ((uint64_t)x13 * x6)))))))));
- uint64_t x22 = (((uint64_t)x2 * x2) + (0x5 * ((0x2 * ((uint64_t)x4 * x13)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (0x2 * ((uint64_t)x13 * x4))))))))));
- uint64_t x23 = (x22 >> 0x1a);
- uint32_t x24 = ((uint32_t)x22 & 0x3ffffff);
- uint64_t x25 = (x23 + x21);
- uint64_t x26 = (x25 >> 0x1a);
- uint32_t x27 = ((uint32_t)x25 & 0x3ffffff);
- uint64_t x28 = (x26 + x20);
- uint64_t x29 = (x28 >> 0x1a);
- uint32_t x30 = ((uint32_t)x28 & 0x3ffffff);
- uint64_t x31 = (x29 + x19);
- uint64_t x32 = (x31 >> 0x19);
- uint32_t x33 = ((uint32_t)x31 & 0x1ffffff);
- uint64_t x34 = (x32 + x18);
- uint64_t x35 = (x34 >> 0x1a);
- uint32_t x36 = ((uint32_t)x34 & 0x3ffffff);
- uint64_t x37 = (x35 + x17);
- uint64_t x38 = (x37 >> 0x1a);
- uint32_t x39 = ((uint32_t)x37 & 0x3ffffff);
- uint64_t x40 = (x38 + x16);
- uint64_t x41 = (x40 >> 0x1a);
- uint32_t x42 = ((uint32_t)x40 & 0x3ffffff);
- uint64_t x43 = (x41 + x15);
- uint64_t x44 = (x43 >> 0x19);
- uint32_t x45 = ((uint32_t)x43 & 0x1ffffff);
- uint64_t x46 = (x24 + (0x5 * x44));
- uint32_t x47 = (uint32_t) (x46 >> 0x1a);
- uint32_t x48 = ((uint32_t)x46 & 0x3ffffff);
- uint32_t x49 = (x47 + x27);
- uint32_t x50 = (x49 >> 0x1a);
- uint32_t x51 = (x49 & 0x3ffffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e206m5_8limbs/fesquareDisplay.v b/src/Specific/solinas32_2e206m5_8limbs/fesquareDisplay.v
deleted file mode 100644
index 75c5cd16c..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e206m5_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e206m5_8limbs/fesub.c b/src/Specific/solinas32_2e206m5_8limbs/fesub.c
deleted file mode 100644
index c0c7ec7b8..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = ((0x7fffff6 + x5) - x19);
- out[1] = ((0x7fffffe + x7) - x21);
- out[2] = ((0x7fffffe + x9) - x23);
- out[3] = ((0x3fffffe + x11) - x25);
- out[4] = ((0x7fffffe + x13) - x27);
- out[5] = ((0x7fffffe + x15) - x29);
- out[6] = ((0x7fffffe + x17) - x31);
- out[7] = ((0x3fffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e206m5_8limbs/fesub.v b/src/Specific/solinas32_2e206m5_8limbs/fesub.v
deleted file mode 100644
index d26b4f7ee..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e206m5_8limbs.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_2e206m5_8limbs/fesubDisplay.log b/src/Specific/solinas32_2e206m5_8limbs/fesubDisplay.log
deleted file mode 100644
index 3dd042f02..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0x3fffffe + x16) - x30), ((0x7fffffe + x17) - x31), ((0x7fffffe + x15) - x29), ((0x7fffffe + x13) - x27), ((0x3fffffe + x11) - x25), ((0x7fffffe + x9) - x23), ((0x7fffffe + x7) - x21), ((0x7fffff6 + x5) - x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e206m5_8limbs/fesubDisplay.v b/src/Specific/solinas32_2e206m5_8limbs/fesubDisplay.v
deleted file mode 100644
index 12bf2fb8f..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e206m5_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e206m5_8limbs/freeze.c b/src/Specific/solinas32_2e206m5_8limbs/freeze.c
deleted file mode 100644
index b595e6712..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffb);
- { uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0x3ffffff);
- { uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0x3ffffff);
- { uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0x1ffffff);
- { uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0x3ffffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0x3ffffff);
- { uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0x3ffffff);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0x1ffffff);
- { uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- { uint32_t x40 = (x39 & 0x3fffffb);
- { uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint32_t x44 = (x39 & 0x3ffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint32_t x48 = (x39 & 0x3ffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint32_t x52 = (x39 & 0x1ffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint32_t x56 = (x39 & 0x3ffffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint32_t x60 = (x39 & 0x3ffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint32_t x64 = (x39 & 0x3ffffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint32_t x68 = (x39 & 0x1ffffff);
- { uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e206m5_8limbs/freeze.v b/src/Specific/solinas32_2e206m5_8limbs/freeze.v
deleted file mode 100644
index 302bfef65..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e206m5_8limbs.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_2e206m5_8limbs/freezeDisplay.log b/src/Specific/solinas32_2e206m5_8limbs/freezeDisplay.log
deleted file mode 100644
index 83b10aa8a..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffb);
- uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0x3ffffff);
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0x3ffffff);
- uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0x1ffffff);
- uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0x3ffffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0x3ffffff);
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0x3ffffff);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0x1ffffff);
- uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- uint32_t x40 = (x39 & 0x3fffffb);
- uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint32_t x44 = (x39 & 0x3ffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint32_t x48 = (x39 & 0x3ffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint32_t x52 = (x39 & 0x1ffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint32_t x56 = (x39 & 0x3ffffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint32_t x60 = (x39 & 0x3ffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint32_t x64 = (x39 & 0x3ffffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint32_t x68 = (x39 & 0x1ffffff);
- uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e206m5_8limbs/freezeDisplay.v b/src/Specific/solinas32_2e206m5_8limbs/freezeDisplay.v
deleted file mode 100644
index eba4ff820..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e206m5_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e206m5_8limbs/py_interpreter.sh b/src/Specific/solinas32_2e206m5_8limbs/py_interpreter.sh
deleted file mode 100755
index a7f4db74a..000000000
--- a/src/Specific/solinas32_2e206m5_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**206 - 5' -Dmodulus_bytes='25.75' -Da24='121665'
diff --git a/src/Specific/solinas32_2e206m5_9limbs/CurveParameters.v b/src/Specific/solinas32_2e206m5_9limbs/CurveParameters.v
deleted file mode 100644
index 23426fa78..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^206 - 5
-Base: 22 + 8/9
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 22 + 8/9;
- bitwidth := 32;
- s := 2^206;
- c := [(1, 5)];
- carry_chains := Some [seq 0 (pred 9); [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_2e206m5_9limbs/Synthesis.v b/src/Specific/solinas32_2e206m5_9limbs/Synthesis.v
deleted file mode 100644
index 9da8fd388..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e206m5_9limbs.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_2e206m5_9limbs/compiler.sh b/src/Specific/solinas32_2e206m5_9limbs/compiler.sh
deleted file mode 100755
index 64c441be6..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,22}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<206) - 5' "$@"
diff --git a/src/Specific/solinas32_2e206m5_9limbs/compilerxx.sh b/src/Specific/solinas32_2e206m5_9limbs/compilerxx.sh
deleted file mode 100755
index 3b6d007f1..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,22}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<206) - 5' "$@"
diff --git a/src/Specific/solinas32_2e206m5_9limbs/feadd.c b/src/Specific/solinas32_2e206m5_9limbs/feadd.c
deleted file mode 100644
index e1188fdec..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e206m5_9limbs/feadd.v b/src/Specific/solinas32_2e206m5_9limbs/feadd.v
deleted file mode 100644
index cab39f267..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e206m5_9limbs.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_2e206m5_9limbs/feaddDisplay.log b/src/Specific/solinas32_2e206m5_9limbs/feaddDisplay.log
deleted file mode 100644
index e26bb40f8..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e206m5_9limbs/feaddDisplay.v b/src/Specific/solinas32_2e206m5_9limbs/feaddDisplay.v
deleted file mode 100644
index fd25cad8d..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e206m5_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e206m5_9limbs/fecarry.v b/src/Specific/solinas32_2e206m5_9limbs/fecarry.v
deleted file mode 100644
index c31925ee8..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e206m5_9limbs.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_2e206m5_9limbs/fecarryDisplay.v b/src/Specific/solinas32_2e206m5_9limbs/fecarryDisplay.v
deleted file mode 100644
index c56780361..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e206m5_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e206m5_9limbs/femul.c b/src/Specific/solinas32_2e206m5_9limbs/femul.c
deleted file mode 100644
index ed4a4983c..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/femul.c
+++ /dev/null
@@ -1,71 +0,0 @@
-static void femul(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- { uint64_t x36 = (((uint64_t)x5 * x34) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + (((uint64_t)x19 * x23) + ((uint64_t)x18 * x21)))))))));
- { uint64_t x37 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + (((uint64_t)x17 * x23) + ((uint64_t)x19 * x21)))))))) + (0x5 * (0x2 * ((uint64_t)x18 * x34))));
- { uint64_t x38 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + ((uint64_t)x17 * x21))))))) + (0x5 * ((0x2 * ((uint64_t)x19 * x34)) + (0x2 * ((uint64_t)x18 * x35)))));
- { uint64_t x39 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + (((uint64_t)x13 * x23) + ((uint64_t)x15 * x21)))))) + (0x5 * ((0x2 * ((uint64_t)x17 * x34)) + ((0x2 * ((uint64_t)x19 * x35)) + (0x2 * ((uint64_t)x18 * x33))))));
- { uint64_t x40 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + ((uint64_t)x13 * x21))))) + (0x5 * ((0x2 * ((uint64_t)x15 * x34)) + ((0x2 * ((uint64_t)x17 * x35)) + ((0x2 * ((uint64_t)x19 * x33)) + (0x2 * ((uint64_t)x18 * x31)))))));
- { uint64_t x41 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + ((uint64_t)x11 * x21)))) + (0x5 * ((0x2 * ((uint64_t)x13 * x34)) + ((0x2 * ((uint64_t)x15 * x35)) + ((0x2 * ((uint64_t)x17 * x33)) + ((0x2 * ((uint64_t)x19 * x31)) + (0x2 * ((uint64_t)x18 * x29))))))));
- { uint64_t x42 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + ((uint64_t)x9 * x21))) + (0x5 * ((0x2 * ((uint64_t)x11 * x34)) + ((0x2 * ((uint64_t)x13 * x35)) + ((0x2 * ((uint64_t)x15 * x33)) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + (0x2 * ((uint64_t)x18 * x27)))))))));
- { uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0x5 * ((0x2 * ((uint64_t)x9 * x34)) + ((0x2 * ((uint64_t)x11 * x35)) + ((0x2 * ((uint64_t)x13 * x33)) + ((0x2 * ((uint64_t)x15 * x31)) + ((0x2 * ((uint64_t)x17 * x29)) + ((0x2 * ((uint64_t)x19 * x27)) + (0x2 * ((uint64_t)x18 * x25))))))))));
- { uint64_t x44 = (((uint64_t)x5 * x21) + (0x5 * ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23)))))))))));
- { uint64_t x45 = (x44 >> 0x17);
- { uint32_t x46 = ((uint32_t)x44 & 0x7fffff);
- { uint64_t x47 = (x45 + x43);
- { uint64_t x48 = (x47 >> 0x17);
- { uint32_t x49 = ((uint32_t)x47 & 0x7fffff);
- { uint64_t x50 = (x48 + x42);
- { uint64_t x51 = (x50 >> 0x17);
- { uint32_t x52 = ((uint32_t)x50 & 0x7fffff);
- { uint64_t x53 = (x51 + x41);
- { uint32_t x54 = (uint32_t) (x53 >> 0x17);
- { uint32_t x55 = ((uint32_t)x53 & 0x7fffff);
- { uint64_t x56 = (x54 + x40);
- { uint32_t x57 = (uint32_t) (x56 >> 0x17);
- { uint32_t x58 = ((uint32_t)x56 & 0x7fffff);
- { uint64_t x59 = (x57 + x39);
- { uint32_t x60 = (uint32_t) (x59 >> 0x17);
- { uint32_t x61 = ((uint32_t)x59 & 0x7fffff);
- { uint64_t x62 = (x60 + x38);
- { uint32_t x63 = (uint32_t) (x62 >> 0x17);
- { uint32_t x64 = ((uint32_t)x62 & 0x7fffff);
- { uint64_t x65 = (x63 + x37);
- { uint32_t x66 = (uint32_t) (x65 >> 0x17);
- { uint32_t x67 = ((uint32_t)x65 & 0x7fffff);
- { uint64_t x68 = (x66 + x36);
- { uint32_t x69 = (uint32_t) (x68 >> 0x16);
- { uint32_t x70 = ((uint32_t)x68 & 0x3fffff);
- { uint64_t x71 = (x46 + ((uint64_t)0x5 * x69));
- { uint32_t x72 = (uint32_t) (x71 >> 0x17);
- { uint32_t x73 = ((uint32_t)x71 & 0x7fffff);
- { uint32_t x74 = (x72 + x49);
- { uint32_t x75 = (x74 >> 0x17);
- { uint32_t x76 = (x74 & 0x7fffff);
- out[0] = x73;
- out[1] = x76;
- out[2] = (x75 + x52);
- out[3] = x55;
- out[4] = x58;
- out[5] = x61;
- out[6] = x64;
- out[7] = x67;
- out[8] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e206m5_9limbs/femul.v b/src/Specific/solinas32_2e206m5_9limbs/femul.v
deleted file mode 100644
index a9b79f3d7..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e206m5_9limbs.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_2e206m5_9limbs/femulDisplay.log b/src/Specific/solinas32_2e206m5_9limbs/femulDisplay.log
deleted file mode 100644
index 488601433..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/femulDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint64_t x36 = (((uint64_t)x5 * x34) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + (((uint64_t)x19 * x23) + ((uint64_t)x18 * x21)))))))));
- uint64_t x37 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + (((uint64_t)x17 * x23) + ((uint64_t)x19 * x21)))))))) + (0x5 * (0x2 * ((uint64_t)x18 * x34))));
- uint64_t x38 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + ((uint64_t)x17 * x21))))))) + (0x5 * ((0x2 * ((uint64_t)x19 * x34)) + (0x2 * ((uint64_t)x18 * x35)))));
- uint64_t x39 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + (((uint64_t)x13 * x23) + ((uint64_t)x15 * x21)))))) + (0x5 * ((0x2 * ((uint64_t)x17 * x34)) + ((0x2 * ((uint64_t)x19 * x35)) + (0x2 * ((uint64_t)x18 * x33))))));
- uint64_t x40 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + ((uint64_t)x13 * x21))))) + (0x5 * ((0x2 * ((uint64_t)x15 * x34)) + ((0x2 * ((uint64_t)x17 * x35)) + ((0x2 * ((uint64_t)x19 * x33)) + (0x2 * ((uint64_t)x18 * x31)))))));
- uint64_t x41 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + ((uint64_t)x11 * x21)))) + (0x5 * ((0x2 * ((uint64_t)x13 * x34)) + ((0x2 * ((uint64_t)x15 * x35)) + ((0x2 * ((uint64_t)x17 * x33)) + ((0x2 * ((uint64_t)x19 * x31)) + (0x2 * ((uint64_t)x18 * x29))))))));
- uint64_t x42 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + ((uint64_t)x9 * x21))) + (0x5 * ((0x2 * ((uint64_t)x11 * x34)) + ((0x2 * ((uint64_t)x13 * x35)) + ((0x2 * ((uint64_t)x15 * x33)) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + (0x2 * ((uint64_t)x18 * x27)))))))));
- uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0x5 * ((0x2 * ((uint64_t)x9 * x34)) + ((0x2 * ((uint64_t)x11 * x35)) + ((0x2 * ((uint64_t)x13 * x33)) + ((0x2 * ((uint64_t)x15 * x31)) + ((0x2 * ((uint64_t)x17 * x29)) + ((0x2 * ((uint64_t)x19 * x27)) + (0x2 * ((uint64_t)x18 * x25))))))))));
- uint64_t x44 = (((uint64_t)x5 * x21) + (0x5 * ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23)))))))))));
- uint64_t x45 = (x44 >> 0x17);
- uint32_t x46 = ((uint32_t)x44 & 0x7fffff);
- uint64_t x47 = (x45 + x43);
- uint64_t x48 = (x47 >> 0x17);
- uint32_t x49 = ((uint32_t)x47 & 0x7fffff);
- uint64_t x50 = (x48 + x42);
- uint64_t x51 = (x50 >> 0x17);
- uint32_t x52 = ((uint32_t)x50 & 0x7fffff);
- uint64_t x53 = (x51 + x41);
- uint32_t x54 = (uint32_t) (x53 >> 0x17);
- uint32_t x55 = ((uint32_t)x53 & 0x7fffff);
- uint64_t x56 = (x54 + x40);
- uint32_t x57 = (uint32_t) (x56 >> 0x17);
- uint32_t x58 = ((uint32_t)x56 & 0x7fffff);
- uint64_t x59 = (x57 + x39);
- uint32_t x60 = (uint32_t) (x59 >> 0x17);
- uint32_t x61 = ((uint32_t)x59 & 0x7fffff);
- uint64_t x62 = (x60 + x38);
- uint32_t x63 = (uint32_t) (x62 >> 0x17);
- uint32_t x64 = ((uint32_t)x62 & 0x7fffff);
- uint64_t x65 = (x63 + x37);
- uint32_t x66 = (uint32_t) (x65 >> 0x17);
- uint32_t x67 = ((uint32_t)x65 & 0x7fffff);
- uint64_t x68 = (x66 + x36);
- uint32_t x69 = (uint32_t) (x68 >> 0x16);
- uint32_t x70 = ((uint32_t)x68 & 0x3fffff);
- uint64_t x71 = (x46 + ((uint64_t)0x5 * x69));
- uint32_t x72 = (uint32_t) (x71 >> 0x17);
- uint32_t x73 = ((uint32_t)x71 & 0x7fffff);
- uint32_t x74 = (x72 + x49);
- uint32_t x75 = (x74 >> 0x17);
- uint32_t x76 = (x74 & 0x7fffff);
- return (Return x70, Return x67, Return x64, Return x61, Return x58, Return x55, (x75 + x52), Return x76, Return x73))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e206m5_9limbs/femulDisplay.v b/src/Specific/solinas32_2e206m5_9limbs/femulDisplay.v
deleted file mode 100644
index fe111ff20..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e206m5_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e206m5_9limbs/fesquare.c b/src/Specific/solinas32_2e206m5_9limbs/fesquare.c
deleted file mode 100644
index afd9dbb29..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/fesquare.c
+++ /dev/null
@@ -1,62 +0,0 @@
-static void fesquare(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x17 = (((uint64_t)x2 * x15) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x15 * x2)))))))));
- { uint64_t x18 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x5 * (0x2 * ((uint64_t)x15 * x15))));
- { uint64_t x19 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x5 * ((0x2 * ((uint64_t)x16 * x15)) + (0x2 * ((uint64_t)x15 * x16)))));
- { uint64_t x20 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x5 * ((0x2 * ((uint64_t)x14 * x15)) + ((0x2 * ((uint64_t)x16 * x16)) + (0x2 * ((uint64_t)x15 * x14))))));
- { uint64_t x21 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x5 * ((0x2 * ((uint64_t)x12 * x15)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (0x2 * ((uint64_t)x15 * x12)))))));
- { uint64_t x22 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x5 * ((0x2 * ((uint64_t)x10 * x15)) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (0x2 * ((uint64_t)x15 * x10))))))));
- { uint64_t x23 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x5 * ((0x2 * ((uint64_t)x8 * x15)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + (0x2 * ((uint64_t)x15 * x8)))))))));
- { uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x5 * ((0x2 * ((uint64_t)x6 * x15)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + (0x2 * ((uint64_t)x15 * x6))))))))));
- { uint64_t x25 = (((uint64_t)x2 * x2) + (0x5 * ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4)))))))))));
- { uint64_t x26 = (x25 >> 0x17);
- { uint32_t x27 = ((uint32_t)x25 & 0x7fffff);
- { uint64_t x28 = (x26 + x24);
- { uint64_t x29 = (x28 >> 0x17);
- { uint32_t x30 = ((uint32_t)x28 & 0x7fffff);
- { uint64_t x31 = (x29 + x23);
- { uint64_t x32 = (x31 >> 0x17);
- { uint32_t x33 = ((uint32_t)x31 & 0x7fffff);
- { uint64_t x34 = (x32 + x22);
- { uint32_t x35 = (uint32_t) (x34 >> 0x17);
- { uint32_t x36 = ((uint32_t)x34 & 0x7fffff);
- { uint64_t x37 = (x35 + x21);
- { uint32_t x38 = (uint32_t) (x37 >> 0x17);
- { uint32_t x39 = ((uint32_t)x37 & 0x7fffff);
- { uint64_t x40 = (x38 + x20);
- { uint32_t x41 = (uint32_t) (x40 >> 0x17);
- { uint32_t x42 = ((uint32_t)x40 & 0x7fffff);
- { uint64_t x43 = (x41 + x19);
- { uint32_t x44 = (uint32_t) (x43 >> 0x17);
- { uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- { uint64_t x46 = (x44 + x18);
- { uint32_t x47 = (uint32_t) (x46 >> 0x17);
- { uint32_t x48 = ((uint32_t)x46 & 0x7fffff);
- { uint64_t x49 = (x47 + x17);
- { uint32_t x50 = (uint32_t) (x49 >> 0x16);
- { uint32_t x51 = ((uint32_t)x49 & 0x3fffff);
- { uint64_t x52 = (x27 + ((uint64_t)0x5 * x50));
- { uint32_t x53 = (uint32_t) (x52 >> 0x17);
- { uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- { uint32_t x55 = (x53 + x30);
- { uint32_t x56 = (x55 >> 0x17);
- { uint32_t x57 = (x55 & 0x7fffff);
- out[0] = x54;
- out[1] = x57;
- out[2] = (x56 + x33);
- out[3] = x36;
- out[4] = x39;
- out[5] = x42;
- out[6] = x45;
- out[7] = x48;
- out[8] = x51;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e206m5_9limbs/fesquare.v b/src/Specific/solinas32_2e206m5_9limbs/fesquare.v
deleted file mode 100644
index 98cd34d50..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e206m5_9limbs.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_2e206m5_9limbs/fesquareDisplay.log b/src/Specific/solinas32_2e206m5_9limbs/fesquareDisplay.log
deleted file mode 100644
index 52d75ffb2..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x17 = (((uint64_t)x2 * x15) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x15 * x2)))))))));
- uint64_t x18 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x5 * (0x2 * ((uint64_t)x15 * x15))));
- uint64_t x19 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x5 * ((0x2 * ((uint64_t)x16 * x15)) + (0x2 * ((uint64_t)x15 * x16)))));
- uint64_t x20 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x5 * ((0x2 * ((uint64_t)x14 * x15)) + ((0x2 * ((uint64_t)x16 * x16)) + (0x2 * ((uint64_t)x15 * x14))))));
- uint64_t x21 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x5 * ((0x2 * ((uint64_t)x12 * x15)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (0x2 * ((uint64_t)x15 * x12)))))));
- uint64_t x22 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x5 * ((0x2 * ((uint64_t)x10 * x15)) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (0x2 * ((uint64_t)x15 * x10))))))));
- uint64_t x23 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x5 * ((0x2 * ((uint64_t)x8 * x15)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + (0x2 * ((uint64_t)x15 * x8)))))))));
- uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x5 * ((0x2 * ((uint64_t)x6 * x15)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + (0x2 * ((uint64_t)x15 * x6))))))))));
- uint64_t x25 = (((uint64_t)x2 * x2) + (0x5 * ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4)))))))))));
- uint64_t x26 = (x25 >> 0x17);
- uint32_t x27 = ((uint32_t)x25 & 0x7fffff);
- uint64_t x28 = (x26 + x24);
- uint64_t x29 = (x28 >> 0x17);
- uint32_t x30 = ((uint32_t)x28 & 0x7fffff);
- uint64_t x31 = (x29 + x23);
- uint64_t x32 = (x31 >> 0x17);
- uint32_t x33 = ((uint32_t)x31 & 0x7fffff);
- uint64_t x34 = (x32 + x22);
- uint32_t x35 = (uint32_t) (x34 >> 0x17);
- uint32_t x36 = ((uint32_t)x34 & 0x7fffff);
- uint64_t x37 = (x35 + x21);
- uint32_t x38 = (uint32_t) (x37 >> 0x17);
- uint32_t x39 = ((uint32_t)x37 & 0x7fffff);
- uint64_t x40 = (x38 + x20);
- uint32_t x41 = (uint32_t) (x40 >> 0x17);
- uint32_t x42 = ((uint32_t)x40 & 0x7fffff);
- uint64_t x43 = (x41 + x19);
- uint32_t x44 = (uint32_t) (x43 >> 0x17);
- uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- uint64_t x46 = (x44 + x18);
- uint32_t x47 = (uint32_t) (x46 >> 0x17);
- uint32_t x48 = ((uint32_t)x46 & 0x7fffff);
- uint64_t x49 = (x47 + x17);
- uint32_t x50 = (uint32_t) (x49 >> 0x16);
- uint32_t x51 = ((uint32_t)x49 & 0x3fffff);
- uint64_t x52 = (x27 + ((uint64_t)0x5 * x50));
- uint32_t x53 = (uint32_t) (x52 >> 0x17);
- uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- uint32_t x55 = (x53 + x30);
- uint32_t x56 = (x55 >> 0x17);
- uint32_t x57 = (x55 & 0x7fffff);
- return (Return x51, Return x48, Return x45, Return x42, Return x39, Return x36, (x56 + x33), Return x57, Return x54))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e206m5_9limbs/fesquareDisplay.v b/src/Specific/solinas32_2e206m5_9limbs/fesquareDisplay.v
deleted file mode 100644
index fd5d8c814..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e206m5_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e206m5_9limbs/fesub.c b/src/Specific/solinas32_2e206m5_9limbs/fesub.c
deleted file mode 100644
index 5801ccefa..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/fesub.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void fesub(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = ((0xfffff6 + x5) - x21);
- out[1] = ((0xfffffe + x7) - x23);
- out[2] = ((0xfffffe + x9) - x25);
- out[3] = ((0xfffffe + x11) - x27);
- out[4] = ((0xfffffe + x13) - x29);
- out[5] = ((0xfffffe + x15) - x31);
- out[6] = ((0xfffffe + x17) - x33);
- out[7] = ((0xfffffe + x19) - x35);
- out[8] = ((0x7ffffe + x18) - x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e206m5_9limbs/fesub.v b/src/Specific/solinas32_2e206m5_9limbs/fesub.v
deleted file mode 100644
index a88c7e41c..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e206m5_9limbs.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_2e206m5_9limbs/fesubDisplay.log b/src/Specific/solinas32_2e206m5_9limbs/fesubDisplay.log
deleted file mode 100644
index 16bef8d8f..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- (((0x7ffffe + x18) - x34), ((0xfffffe + x19) - x35), ((0xfffffe + x17) - x33), ((0xfffffe + x15) - x31), ((0xfffffe + x13) - x29), ((0xfffffe + x11) - x27), ((0xfffffe + x9) - x25), ((0xfffffe + x7) - x23), ((0xfffff6 + x5) - x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e206m5_9limbs/fesubDisplay.v b/src/Specific/solinas32_2e206m5_9limbs/fesubDisplay.v
deleted file mode 100644
index 2bdf9bd2b..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e206m5_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e206m5_9limbs/freeze.c b/src/Specific/solinas32_2e206m5_9limbs/freeze.c
deleted file mode 100644
index f8822d158..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/freeze.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void freeze(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffb);
- { uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0x7fffff);
- { uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0x7fffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x8, 0x7fffff);
- { uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0x7fffff);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0x7fffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0x7fffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0x7fffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0x3fffff);
- { uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- { uint32_t x45 = (x44 & 0x7ffffb);
- { uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- { uint32_t x49 = (x44 & 0x7fffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- { uint32_t x53 = (x44 & 0x7fffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- { uint32_t x57 = (x44 & 0x7fffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- { uint32_t x61 = (x44 & 0x7fffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- { uint32_t x65 = (x44 & 0x7fffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- { uint32_t x69 = (x44 & 0x7fffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- { uint32_t x73 = (x44 & 0x7fffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- { uint32_t x77 = (x44 & 0x3fffff);
- { uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- out[0] = x47;
- out[1] = x51;
- out[2] = x55;
- out[3] = x59;
- out[4] = x63;
- out[5] = x67;
- out[6] = x71;
- out[7] = x75;
- out[8] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e206m5_9limbs/freeze.v b/src/Specific/solinas32_2e206m5_9limbs/freeze.v
deleted file mode 100644
index 20eda67fc..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e206m5_9limbs.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_2e206m5_9limbs/freezeDisplay.log b/src/Specific/solinas32_2e206m5_9limbs/freezeDisplay.log
deleted file mode 100644
index de0e4e748..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffb);
- uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0x7fffff);
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0x7fffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x8, 0x7fffff);
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0x7fffff);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0x7fffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0x7fffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0x7fffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0x3fffff);
- uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- uint32_t x45 = (x44 & 0x7ffffb);
- uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- uint32_t x49 = (x44 & 0x7fffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- uint32_t x53 = (x44 & 0x7fffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- uint32_t x57 = (x44 & 0x7fffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- uint32_t x61 = (x44 & 0x7fffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- uint32_t x65 = (x44 & 0x7fffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- uint32_t x69 = (x44 & 0x7fffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- uint32_t x73 = (x44 & 0x7fffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- uint32_t x77 = (x44 & 0x3fffff);
- uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- (Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x51, Return x47))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e206m5_9limbs/freezeDisplay.v b/src/Specific/solinas32_2e206m5_9limbs/freezeDisplay.v
deleted file mode 100644
index 52b7b0e75..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e206m5_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e206m5_9limbs/py_interpreter.sh b/src/Specific/solinas32_2e206m5_9limbs/py_interpreter.sh
deleted file mode 100755
index e0a33f9d2..000000000
--- a/src/Specific/solinas32_2e206m5_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**206 - 5' -Dmodulus_bytes='22 + 8/9' -Da24='121665'
diff --git a/src/Specific/solinas32_2e212m29_8limbs/CurveParameters.v b/src/Specific/solinas32_2e212m29_8limbs/CurveParameters.v
deleted file mode 100644
index 608767c8b..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^212 - 29
-Base: 26.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 26 + 1/2;
- bitwidth := 32;
- s := 2^212;
- c := [(1, 29)];
- carry_chains := Some [seq 0 (pred 8); [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_2e212m29_8limbs/Synthesis.v b/src/Specific/solinas32_2e212m29_8limbs/Synthesis.v
deleted file mode 100644
index e8bc77753..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e212m29_8limbs.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_2e212m29_8limbs/compiler.sh b/src/Specific/solinas32_2e212m29_8limbs/compiler.sh
deleted file mode 100755
index c8aa071ac..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,26,27,26,27,26,27,26}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<212) - 29' "$@"
diff --git a/src/Specific/solinas32_2e212m29_8limbs/compilerxx.sh b/src/Specific/solinas32_2e212m29_8limbs/compilerxx.sh
deleted file mode 100755
index 64a13fb18..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,26,27,26,27,26,27,26}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<212) - 29' "$@"
diff --git a/src/Specific/solinas32_2e212m29_8limbs/feadd.c b/src/Specific/solinas32_2e212m29_8limbs/feadd.c
deleted file mode 100644
index cc3671f75..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e212m29_8limbs/feadd.v b/src/Specific/solinas32_2e212m29_8limbs/feadd.v
deleted file mode 100644
index 70665dd31..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e212m29_8limbs.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_2e212m29_8limbs/feaddDisplay.log b/src/Specific/solinas32_2e212m29_8limbs/feaddDisplay.log
deleted file mode 100644
index f25c10903..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e212m29_8limbs/feaddDisplay.v b/src/Specific/solinas32_2e212m29_8limbs/feaddDisplay.v
deleted file mode 100644
index 522bba3e0..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e212m29_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e212m29_8limbs/fecarry.v b/src/Specific/solinas32_2e212m29_8limbs/fecarry.v
deleted file mode 100644
index 651f14e81..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e212m29_8limbs.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_2e212m29_8limbs/fecarryDisplay.v b/src/Specific/solinas32_2e212m29_8limbs/fecarryDisplay.v
deleted file mode 100644
index 953ad424b..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e212m29_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e212m29_8limbs/femul.c b/src/Specific/solinas32_2e212m29_8limbs/femul.c
deleted file mode 100644
index bdce0055e..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint64_t x32 = (((uint64_t)x5 * x30) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + (((uint64_t)x17 * x21) + ((uint64_t)x16 * x19))))))));
- { uint64_t x33 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + (((uint64_t)x9 * x27) + ((0x2 * ((uint64_t)x11 * x25)) + (((uint64_t)x13 * x23) + ((0x2 * ((uint64_t)x15 * x21)) + ((uint64_t)x17 * x19))))))) + (0x1d * (0x2 * ((uint64_t)x16 * x30))));
- { uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0x1d * (((uint64_t)x17 * x30) + ((uint64_t)x16 * x31))));
- { uint64_t x35 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + (((uint64_t)x9 * x23) + ((0x2 * ((uint64_t)x11 * x21)) + ((uint64_t)x13 * x19))))) + (0x1d * ((0x2 * ((uint64_t)x15 * x30)) + (((uint64_t)x17 * x31) + (0x2 * ((uint64_t)x16 * x29))))));
- { uint64_t x36 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + ((uint64_t)x11 * x19)))) + (0x1d * (((uint64_t)x13 * x30) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x16 * x27))))));
- { ℤ x37 = ((((uint64_t)x5 * x23) + ((0x2 * ((uint64_t)x7 * x21)) + ((uint64_t)x9 * x19))) +ℤ (0x1d *ℤ ((0x2 * ((uint64_t)x11 * x30)) + (((uint64_t)x13 * x31) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + (0x2 * ((uint64_t)x16 * x25))))))));
- { uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0x1d * (((uint64_t)x9 * x30) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + ((uint64_t)x16 * x23))))))));
- { ℤ x39 = (((uint64_t)x5 * x19) +ℤ (0x1d *ℤ ((0x2 * ((uint64_t)x7 * x30)) + (((uint64_t)x9 * x31) + ((0x2 * ((uint64_t)x11 * x29)) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + (((uint64_t)x17 * x23) + (0x2 * ((uint64_t)x16 * x21))))))))));
- { uint64_t x40 = (x39 >> 0x1b);
- { uint32_t x41 = (x39 & 0x7ffffff);
- { uint64_t x42 = (x40 + x38);
- { uint64_t x43 = (x42 >> 0x1a);
- { uint32_t x44 = ((uint32_t)x42 & 0x3ffffff);
- { ℤ x45 = (x43 +ℤ x37);
- { uint64_t x46 = (x45 >> 0x1b);
- { uint32_t x47 = (x45 & 0x7ffffff);
- { uint64_t x48 = (x46 + x36);
- { uint64_t x49 = (x48 >> 0x1a);
- { uint32_t x50 = ((uint32_t)x48 & 0x3ffffff);
- { uint64_t x51 = (x49 + x35);
- { uint64_t x52 = (x51 >> 0x1b);
- { uint32_t x53 = ((uint32_t)x51 & 0x7ffffff);
- { uint64_t x54 = (x52 + x34);
- { uint64_t x55 = (x54 >> 0x1a);
- { uint32_t x56 = ((uint32_t)x54 & 0x3ffffff);
- { uint64_t x57 = (x55 + x33);
- { uint64_t x58 = (x57 >> 0x1b);
- { uint32_t x59 = ((uint32_t)x57 & 0x7ffffff);
- { uint64_t x60 = (x58 + x32);
- { uint64_t x61 = (x60 >> 0x1a);
- { uint32_t x62 = ((uint32_t)x60 & 0x3ffffff);
- { uint64_t x63 = (x41 + (0x1d * x61));
- { uint32_t x64 = (uint32_t) (x63 >> 0x1b);
- { uint32_t x65 = ((uint32_t)x63 & 0x7ffffff);
- { uint32_t x66 = (x64 + x44);
- { uint32_t x67 = (x66 >> 0x1a);
- { uint32_t x68 = (x66 & 0x3ffffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e212m29_8limbs/femul.v b/src/Specific/solinas32_2e212m29_8limbs/femul.v
deleted file mode 100644
index a68939af1..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e212m29_8limbs.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_2e212m29_8limbs/femulDisplay.log b/src/Specific/solinas32_2e212m29_8limbs/femulDisplay.log
deleted file mode 100644
index 79e94597f..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x32 = (((uint64_t)x5 * x30) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + (((uint64_t)x17 * x21) + ((uint64_t)x16 * x19))))))));
- uint64_t x33 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + (((uint64_t)x9 * x27) + ((0x2 * ((uint64_t)x11 * x25)) + (((uint64_t)x13 * x23) + ((0x2 * ((uint64_t)x15 * x21)) + ((uint64_t)x17 * x19))))))) + (0x1d * (0x2 * ((uint64_t)x16 * x30))));
- uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0x1d * (((uint64_t)x17 * x30) + ((uint64_t)x16 * x31))));
- uint64_t x35 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + (((uint64_t)x9 * x23) + ((0x2 * ((uint64_t)x11 * x21)) + ((uint64_t)x13 * x19))))) + (0x1d * ((0x2 * ((uint64_t)x15 * x30)) + (((uint64_t)x17 * x31) + (0x2 * ((uint64_t)x16 * x29))))));
- uint64_t x36 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + ((uint64_t)x11 * x19)))) + (0x1d * (((uint64_t)x13 * x30) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x16 * x27))))));
- ℤ x37 = ((((uint64_t)x5 * x23) + ((0x2 * ((uint64_t)x7 * x21)) + ((uint64_t)x9 * x19))) +ℤ (0x1d *ℤ ((0x2 * ((uint64_t)x11 * x30)) + (((uint64_t)x13 * x31) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + (0x2 * ((uint64_t)x16 * x25))))))));
- uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0x1d * (((uint64_t)x9 * x30) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + ((uint64_t)x16 * x23))))))));
- ℤ x39 = (((uint64_t)x5 * x19) +ℤ (0x1d *ℤ ((0x2 * ((uint64_t)x7 * x30)) + (((uint64_t)x9 * x31) + ((0x2 * ((uint64_t)x11 * x29)) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + (((uint64_t)x17 * x23) + (0x2 * ((uint64_t)x16 * x21))))))))));
- uint64_t x40 = (x39 >> 0x1b);
- uint32_t x41 = (x39 & 0x7ffffff);
- uint64_t x42 = (x40 + x38);
- uint64_t x43 = (x42 >> 0x1a);
- uint32_t x44 = ((uint32_t)x42 & 0x3ffffff);
- ℤ x45 = (x43 +ℤ x37);
- uint64_t x46 = (x45 >> 0x1b);
- uint32_t x47 = (x45 & 0x7ffffff);
- uint64_t x48 = (x46 + x36);
- uint64_t x49 = (x48 >> 0x1a);
- uint32_t x50 = ((uint32_t)x48 & 0x3ffffff);
- uint64_t x51 = (x49 + x35);
- uint64_t x52 = (x51 >> 0x1b);
- uint32_t x53 = ((uint32_t)x51 & 0x7ffffff);
- uint64_t x54 = (x52 + x34);
- uint64_t x55 = (x54 >> 0x1a);
- uint32_t x56 = ((uint32_t)x54 & 0x3ffffff);
- uint64_t x57 = (x55 + x33);
- uint64_t x58 = (x57 >> 0x1b);
- uint32_t x59 = ((uint32_t)x57 & 0x7ffffff);
- uint64_t x60 = (x58 + x32);
- uint64_t x61 = (x60 >> 0x1a);
- uint32_t x62 = ((uint32_t)x60 & 0x3ffffff);
- uint64_t x63 = (x41 + (0x1d * x61));
- uint32_t x64 = (uint32_t) (x63 >> 0x1b);
- uint32_t x65 = ((uint32_t)x63 & 0x7ffffff);
- uint32_t x66 = (x64 + x44);
- uint32_t x67 = (x66 >> 0x1a);
- uint32_t x68 = (x66 & 0x3ffffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e212m29_8limbs/femulDisplay.v b/src/Specific/solinas32_2e212m29_8limbs/femulDisplay.v
deleted file mode 100644
index e037a0935..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e212m29_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e212m29_8limbs/fesquare.c b/src/Specific/solinas32_2e212m29_8limbs/fesquare.c
deleted file mode 100644
index 0ee4a8a9e..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (((uint64_t)x2 * x13) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x13 * x2))))))));
- { uint64_t x16 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x1d * (0x2 * ((uint64_t)x13 * x13))));
- { uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x1d * (((uint64_t)x14 * x13) + ((uint64_t)x13 * x14))));
- { uint64_t x18 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x1d * ((0x2 * ((uint64_t)x12 * x13)) + (((uint64_t)x14 * x14) + (0x2 * ((uint64_t)x13 * x12))))));
- { uint64_t x19 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x1d * (((uint64_t)x10 * x13) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x13 * x10))))));
- { ℤ x20 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) +ℤ (0x1d *ℤ ((0x2 * ((uint64_t)x8 * x13)) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (0x2 * ((uint64_t)x13 * x8))))))));
- { uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1d * (((uint64_t)x6 * x13) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((uint64_t)x13 * x6))))))));
- { ℤ x22 = (((uint64_t)x2 * x2) +ℤ (0x1d *ℤ ((0x2 * ((uint64_t)x4 * x13)) + (((uint64_t)x6 * x14) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + (((uint64_t)x14 * x6) + (0x2 * ((uint64_t)x13 * x4))))))))));
- { uint64_t x23 = (x22 >> 0x1b);
- { uint32_t x24 = (x22 & 0x7ffffff);
- { uint64_t x25 = (x23 + x21);
- { uint64_t x26 = (x25 >> 0x1a);
- { uint32_t x27 = ((uint32_t)x25 & 0x3ffffff);
- { ℤ x28 = (x26 +ℤ x20);
- { uint64_t x29 = (x28 >> 0x1b);
- { uint32_t x30 = (x28 & 0x7ffffff);
- { uint64_t x31 = (x29 + x19);
- { uint64_t x32 = (x31 >> 0x1a);
- { uint32_t x33 = ((uint32_t)x31 & 0x3ffffff);
- { uint64_t x34 = (x32 + x18);
- { uint64_t x35 = (x34 >> 0x1b);
- { uint32_t x36 = ((uint32_t)x34 & 0x7ffffff);
- { uint64_t x37 = (x35 + x17);
- { uint64_t x38 = (x37 >> 0x1a);
- { uint32_t x39 = ((uint32_t)x37 & 0x3ffffff);
- { uint64_t x40 = (x38 + x16);
- { uint64_t x41 = (x40 >> 0x1b);
- { uint32_t x42 = ((uint32_t)x40 & 0x7ffffff);
- { uint64_t x43 = (x41 + x15);
- { uint64_t x44 = (x43 >> 0x1a);
- { uint32_t x45 = ((uint32_t)x43 & 0x3ffffff);
- { uint64_t x46 = (x24 + (0x1d * x44));
- { uint32_t x47 = (uint32_t) (x46 >> 0x1b);
- { uint32_t x48 = ((uint32_t)x46 & 0x7ffffff);
- { uint32_t x49 = (x47 + x27);
- { uint32_t x50 = (x49 >> 0x1a);
- { uint32_t x51 = (x49 & 0x3ffffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e212m29_8limbs/fesquare.v b/src/Specific/solinas32_2e212m29_8limbs/fesquare.v
deleted file mode 100644
index 982aec57c..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e212m29_8limbs.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_2e212m29_8limbs/fesquareDisplay.log b/src/Specific/solinas32_2e212m29_8limbs/fesquareDisplay.log
deleted file mode 100644
index 8acca1388..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (((uint64_t)x2 * x13) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x13 * x2))))))));
- uint64_t x16 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x1d * (0x2 * ((uint64_t)x13 * x13))));
- uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x1d * (((uint64_t)x14 * x13) + ((uint64_t)x13 * x14))));
- uint64_t x18 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x1d * ((0x2 * ((uint64_t)x12 * x13)) + (((uint64_t)x14 * x14) + (0x2 * ((uint64_t)x13 * x12))))));
- uint64_t x19 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x1d * (((uint64_t)x10 * x13) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x13 * x10))))));
- ℤ x20 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) +ℤ (0x1d *ℤ ((0x2 * ((uint64_t)x8 * x13)) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (0x2 * ((uint64_t)x13 * x8))))))));
- uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1d * (((uint64_t)x6 * x13) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((uint64_t)x13 * x6))))))));
- ℤ x22 = (((uint64_t)x2 * x2) +ℤ (0x1d *ℤ ((0x2 * ((uint64_t)x4 * x13)) + (((uint64_t)x6 * x14) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + (((uint64_t)x14 * x6) + (0x2 * ((uint64_t)x13 * x4))))))))));
- uint64_t x23 = (x22 >> 0x1b);
- uint32_t x24 = (x22 & 0x7ffffff);
- uint64_t x25 = (x23 + x21);
- uint64_t x26 = (x25 >> 0x1a);
- uint32_t x27 = ((uint32_t)x25 & 0x3ffffff);
- ℤ x28 = (x26 +ℤ x20);
- uint64_t x29 = (x28 >> 0x1b);
- uint32_t x30 = (x28 & 0x7ffffff);
- uint64_t x31 = (x29 + x19);
- uint64_t x32 = (x31 >> 0x1a);
- uint32_t x33 = ((uint32_t)x31 & 0x3ffffff);
- uint64_t x34 = (x32 + x18);
- uint64_t x35 = (x34 >> 0x1b);
- uint32_t x36 = ((uint32_t)x34 & 0x7ffffff);
- uint64_t x37 = (x35 + x17);
- uint64_t x38 = (x37 >> 0x1a);
- uint32_t x39 = ((uint32_t)x37 & 0x3ffffff);
- uint64_t x40 = (x38 + x16);
- uint64_t x41 = (x40 >> 0x1b);
- uint32_t x42 = ((uint32_t)x40 & 0x7ffffff);
- uint64_t x43 = (x41 + x15);
- uint64_t x44 = (x43 >> 0x1a);
- uint32_t x45 = ((uint32_t)x43 & 0x3ffffff);
- uint64_t x46 = (x24 + (0x1d * x44));
- uint32_t x47 = (uint32_t) (x46 >> 0x1b);
- uint32_t x48 = ((uint32_t)x46 & 0x7ffffff);
- uint32_t x49 = (x47 + x27);
- uint32_t x50 = (x49 >> 0x1a);
- uint32_t x51 = (x49 & 0x3ffffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e212m29_8limbs/fesquareDisplay.v b/src/Specific/solinas32_2e212m29_8limbs/fesquareDisplay.v
deleted file mode 100644
index d31e2a10d..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e212m29_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e212m29_8limbs/fesub.c b/src/Specific/solinas32_2e212m29_8limbs/fesub.c
deleted file mode 100644
index fe6806c49..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = ((0xfffffc6 + x5) - x19);
- out[1] = ((0x7fffffe + x7) - x21);
- out[2] = ((0xffffffe + x9) - x23);
- out[3] = ((0x7fffffe + x11) - x25);
- out[4] = ((0xffffffe + x13) - x27);
- out[5] = ((0x7fffffe + x15) - x29);
- out[6] = ((0xffffffe + x17) - x31);
- out[7] = ((0x7fffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e212m29_8limbs/fesub.v b/src/Specific/solinas32_2e212m29_8limbs/fesub.v
deleted file mode 100644
index 551b9cdaf..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e212m29_8limbs.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_2e212m29_8limbs/fesubDisplay.log b/src/Specific/solinas32_2e212m29_8limbs/fesubDisplay.log
deleted file mode 100644
index 06372c648..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0x7fffffe + x16) - x30), ((0xffffffe + x17) - x31), ((0x7fffffe + x15) - x29), ((0xffffffe + x13) - x27), ((0x7fffffe + x11) - x25), ((0xffffffe + x9) - x23), ((0x7fffffe + x7) - x21), ((0xfffffc6 + x5) - x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e212m29_8limbs/fesubDisplay.v b/src/Specific/solinas32_2e212m29_8limbs/fesubDisplay.v
deleted file mode 100644
index fca1bf265..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e212m29_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e212m29_8limbs/freeze.c b/src/Specific/solinas32_2e212m29_8limbs/freeze.c
deleted file mode 100644
index 6c723743b..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffe3);
- { uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0x3ffffff);
- { uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0x7ffffff);
- { uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0x3ffffff);
- { uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0x7ffffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0x3ffffff);
- { uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0x7ffffff);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0x3ffffff);
- { uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- { uint32_t x40 = (x39 & 0x7ffffe3);
- { uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint32_t x44 = (x39 & 0x3ffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint32_t x48 = (x39 & 0x7ffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint32_t x52 = (x39 & 0x3ffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint32_t x56 = (x39 & 0x7ffffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint32_t x60 = (x39 & 0x3ffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint32_t x64 = (x39 & 0x7ffffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint32_t x68 = (x39 & 0x3ffffff);
- { uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e212m29_8limbs/freeze.v b/src/Specific/solinas32_2e212m29_8limbs/freeze.v
deleted file mode 100644
index 0c35146ed..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e212m29_8limbs.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_2e212m29_8limbs/freezeDisplay.log b/src/Specific/solinas32_2e212m29_8limbs/freezeDisplay.log
deleted file mode 100644
index a8e542125..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffe3);
- uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0x3ffffff);
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0x7ffffff);
- uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0x3ffffff);
- uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0x7ffffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0x3ffffff);
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0x7ffffff);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0x3ffffff);
- uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- uint32_t x40 = (x39 & 0x7ffffe3);
- uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint32_t x44 = (x39 & 0x3ffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint32_t x48 = (x39 & 0x7ffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint32_t x52 = (x39 & 0x3ffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint32_t x56 = (x39 & 0x7ffffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint32_t x60 = (x39 & 0x3ffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint32_t x64 = (x39 & 0x7ffffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint32_t x68 = (x39 & 0x3ffffff);
- uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e212m29_8limbs/freezeDisplay.v b/src/Specific/solinas32_2e212m29_8limbs/freezeDisplay.v
deleted file mode 100644
index d284af4b2..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e212m29_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e212m29_8limbs/py_interpreter.sh b/src/Specific/solinas32_2e212m29_8limbs/py_interpreter.sh
deleted file mode 100755
index d9173c05f..000000000
--- a/src/Specific/solinas32_2e212m29_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**212 - 29' -Dmodulus_bytes='26.5' -Da24='121665'
diff --git a/src/Specific/solinas32_2e212m29_9limbs/CurveParameters.v b/src/Specific/solinas32_2e212m29_9limbs/CurveParameters.v
deleted file mode 100644
index d28740e42..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^212 - 29
-Base: 23 + 5/9
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 23 + 5/9;
- bitwidth := 32;
- s := 2^212;
- c := [(1, 29)];
- carry_chains := Some [seq 0 (pred 9); [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_2e212m29_9limbs/Synthesis.v b/src/Specific/solinas32_2e212m29_9limbs/Synthesis.v
deleted file mode 100644
index 6068e518e..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e212m29_9limbs.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_2e212m29_9limbs/compiler.sh b/src/Specific/solinas32_2e212m29_9limbs/compiler.sh
deleted file mode 100755
index 0446e9163..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,23,24,23,24,23,24,23}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<212) - 29' "$@"
diff --git a/src/Specific/solinas32_2e212m29_9limbs/compilerxx.sh b/src/Specific/solinas32_2e212m29_9limbs/compilerxx.sh
deleted file mode 100755
index 36e080ffe..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,23,24,23,24,23,24,23}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<212) - 29' "$@"
diff --git a/src/Specific/solinas32_2e212m29_9limbs/feadd.c b/src/Specific/solinas32_2e212m29_9limbs/feadd.c
deleted file mode 100644
index e1188fdec..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e212m29_9limbs/feadd.v b/src/Specific/solinas32_2e212m29_9limbs/feadd.v
deleted file mode 100644
index 744793ca0..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e212m29_9limbs.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_2e212m29_9limbs/feaddDisplay.log b/src/Specific/solinas32_2e212m29_9limbs/feaddDisplay.log
deleted file mode 100644
index e26bb40f8..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e212m29_9limbs/feaddDisplay.v b/src/Specific/solinas32_2e212m29_9limbs/feaddDisplay.v
deleted file mode 100644
index bf21b94ba..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e212m29_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e212m29_9limbs/fecarry.v b/src/Specific/solinas32_2e212m29_9limbs/fecarry.v
deleted file mode 100644
index c9cb31db8..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e212m29_9limbs.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_2e212m29_9limbs/fecarryDisplay.v b/src/Specific/solinas32_2e212m29_9limbs/fecarryDisplay.v
deleted file mode 100644
index 61e909f76..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e212m29_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e212m29_9limbs/femul.c b/src/Specific/solinas32_2e212m29_9limbs/femul.c
deleted file mode 100644
index 1ec44d2fa..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/femul.c
+++ /dev/null
@@ -1,71 +0,0 @@
-static void femul(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- { uint64_t x36 = (((uint64_t)x5 * x34) + (((uint64_t)x7 * x35) + ((0x2 * ((uint64_t)x9 * x33)) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + (((uint64_t)x15 * x27) + ((0x2 * ((uint64_t)x17 * x25)) + (((uint64_t)x19 * x23) + ((uint64_t)x18 * x21)))))))));
- { uint64_t x37 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + ((uint64_t)x19 * x21)))))))) + (0x1d * (0x2 * ((uint64_t)x18 * x34))));
- { uint64_t x38 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + ((0x2 * ((uint64_t)x9 * x29)) + (((uint64_t)x11 * x27) + ((0x2 * ((uint64_t)x13 * x25)) + (((uint64_t)x15 * x23) + ((uint64_t)x17 * x21))))))) + (0x1d * (((uint64_t)x19 * x34) + ((uint64_t)x18 * x35))));
- { uint64_t x39 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((uint64_t)x15 * x21)))))) + (0x1d * ((0x2 * ((uint64_t)x17 * x34)) + (((uint64_t)x19 * x35) + (0x2 * ((uint64_t)x18 * x33))))));
- { uint64_t x40 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + (((uint64_t)x11 * x23) + ((uint64_t)x13 * x21))))) + (0x1d * (((uint64_t)x15 * x34) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x18 * x31))))));
- { uint64_t x41 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((uint64_t)x11 * x21)))) + (0x1d * ((0x2 * ((uint64_t)x13 * x34)) + (((uint64_t)x15 * x35) + ((0x2 * ((uint64_t)x17 * x33)) + (((uint64_t)x19 * x31) + (0x2 * ((uint64_t)x18 * x29))))))));
- { uint64_t x42 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + ((uint64_t)x9 * x21))) + (0x1d * (((uint64_t)x11 * x34) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + ((uint64_t)x18 * x27))))))));
- { uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0x1d * ((0x2 * ((uint64_t)x9 * x34)) + (((uint64_t)x11 * x35) + ((0x2 * ((uint64_t)x13 * x33)) + (((uint64_t)x15 * x31) + ((0x2 * ((uint64_t)x17 * x29)) + (((uint64_t)x19 * x27) + (0x2 * ((uint64_t)x18 * x25))))))))));
- { uint64_t x44 = (((uint64_t)x5 * x21) + (0x1d * ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23)))))))))));
- { uint64_t x45 = (x44 >> 0x18);
- { uint32_t x46 = ((uint32_t)x44 & 0xffffff);
- { uint64_t x47 = (x45 + x43);
- { uint64_t x48 = (x47 >> 0x18);
- { uint32_t x49 = ((uint32_t)x47 & 0xffffff);
- { uint64_t x50 = (x48 + x42);
- { uint64_t x51 = (x50 >> 0x17);
- { uint32_t x52 = ((uint32_t)x50 & 0x7fffff);
- { uint64_t x53 = (x51 + x41);
- { uint64_t x54 = (x53 >> 0x18);
- { uint32_t x55 = ((uint32_t)x53 & 0xffffff);
- { uint64_t x56 = (x54 + x40);
- { uint64_t x57 = (x56 >> 0x17);
- { uint32_t x58 = ((uint32_t)x56 & 0x7fffff);
- { uint64_t x59 = (x57 + x39);
- { uint64_t x60 = (x59 >> 0x18);
- { uint32_t x61 = ((uint32_t)x59 & 0xffffff);
- { uint64_t x62 = (x60 + x38);
- { uint64_t x63 = (x62 >> 0x17);
- { uint32_t x64 = ((uint32_t)x62 & 0x7fffff);
- { uint64_t x65 = (x63 + x37);
- { uint64_t x66 = (x65 >> 0x18);
- { uint32_t x67 = ((uint32_t)x65 & 0xffffff);
- { uint64_t x68 = (x66 + x36);
- { uint32_t x69 = (uint32_t) (x68 >> 0x17);
- { uint32_t x70 = ((uint32_t)x68 & 0x7fffff);
- { uint64_t x71 = (x46 + ((uint64_t)0x1d * x69));
- { uint32_t x72 = (uint32_t) (x71 >> 0x18);
- { uint32_t x73 = ((uint32_t)x71 & 0xffffff);
- { uint32_t x74 = (x72 + x49);
- { uint32_t x75 = (x74 >> 0x18);
- { uint32_t x76 = (x74 & 0xffffff);
- out[0] = x73;
- out[1] = x76;
- out[2] = (x75 + x52);
- out[3] = x55;
- out[4] = x58;
- out[5] = x61;
- out[6] = x64;
- out[7] = x67;
- out[8] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e212m29_9limbs/femul.v b/src/Specific/solinas32_2e212m29_9limbs/femul.v
deleted file mode 100644
index bfa069204..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e212m29_9limbs.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_2e212m29_9limbs/femulDisplay.log b/src/Specific/solinas32_2e212m29_9limbs/femulDisplay.log
deleted file mode 100644
index e0951d3a5..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/femulDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint64_t x36 = (((uint64_t)x5 * x34) + (((uint64_t)x7 * x35) + ((0x2 * ((uint64_t)x9 * x33)) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + (((uint64_t)x15 * x27) + ((0x2 * ((uint64_t)x17 * x25)) + (((uint64_t)x19 * x23) + ((uint64_t)x18 * x21)))))))));
- uint64_t x37 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + ((uint64_t)x19 * x21)))))))) + (0x1d * (0x2 * ((uint64_t)x18 * x34))));
- uint64_t x38 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + ((0x2 * ((uint64_t)x9 * x29)) + (((uint64_t)x11 * x27) + ((0x2 * ((uint64_t)x13 * x25)) + (((uint64_t)x15 * x23) + ((uint64_t)x17 * x21))))))) + (0x1d * (((uint64_t)x19 * x34) + ((uint64_t)x18 * x35))));
- uint64_t x39 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((uint64_t)x15 * x21)))))) + (0x1d * ((0x2 * ((uint64_t)x17 * x34)) + (((uint64_t)x19 * x35) + (0x2 * ((uint64_t)x18 * x33))))));
- uint64_t x40 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + (((uint64_t)x11 * x23) + ((uint64_t)x13 * x21))))) + (0x1d * (((uint64_t)x15 * x34) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x18 * x31))))));
- uint64_t x41 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((uint64_t)x11 * x21)))) + (0x1d * ((0x2 * ((uint64_t)x13 * x34)) + (((uint64_t)x15 * x35) + ((0x2 * ((uint64_t)x17 * x33)) + (((uint64_t)x19 * x31) + (0x2 * ((uint64_t)x18 * x29))))))));
- uint64_t x42 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + ((uint64_t)x9 * x21))) + (0x1d * (((uint64_t)x11 * x34) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + ((uint64_t)x18 * x27))))))));
- uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0x1d * ((0x2 * ((uint64_t)x9 * x34)) + (((uint64_t)x11 * x35) + ((0x2 * ((uint64_t)x13 * x33)) + (((uint64_t)x15 * x31) + ((0x2 * ((uint64_t)x17 * x29)) + (((uint64_t)x19 * x27) + (0x2 * ((uint64_t)x18 * x25))))))))));
- uint64_t x44 = (((uint64_t)x5 * x21) + (0x1d * ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23)))))))))));
- uint64_t x45 = (x44 >> 0x18);
- uint32_t x46 = ((uint32_t)x44 & 0xffffff);
- uint64_t x47 = (x45 + x43);
- uint64_t x48 = (x47 >> 0x18);
- uint32_t x49 = ((uint32_t)x47 & 0xffffff);
- uint64_t x50 = (x48 + x42);
- uint64_t x51 = (x50 >> 0x17);
- uint32_t x52 = ((uint32_t)x50 & 0x7fffff);
- uint64_t x53 = (x51 + x41);
- uint64_t x54 = (x53 >> 0x18);
- uint32_t x55 = ((uint32_t)x53 & 0xffffff);
- uint64_t x56 = (x54 + x40);
- uint64_t x57 = (x56 >> 0x17);
- uint32_t x58 = ((uint32_t)x56 & 0x7fffff);
- uint64_t x59 = (x57 + x39);
- uint64_t x60 = (x59 >> 0x18);
- uint32_t x61 = ((uint32_t)x59 & 0xffffff);
- uint64_t x62 = (x60 + x38);
- uint64_t x63 = (x62 >> 0x17);
- uint32_t x64 = ((uint32_t)x62 & 0x7fffff);
- uint64_t x65 = (x63 + x37);
- uint64_t x66 = (x65 >> 0x18);
- uint32_t x67 = ((uint32_t)x65 & 0xffffff);
- uint64_t x68 = (x66 + x36);
- uint32_t x69 = (uint32_t) (x68 >> 0x17);
- uint32_t x70 = ((uint32_t)x68 & 0x7fffff);
- uint64_t x71 = (x46 + ((uint64_t)0x1d * x69));
- uint32_t x72 = (uint32_t) (x71 >> 0x18);
- uint32_t x73 = ((uint32_t)x71 & 0xffffff);
- uint32_t x74 = (x72 + x49);
- uint32_t x75 = (x74 >> 0x18);
- uint32_t x76 = (x74 & 0xffffff);
- return (Return x70, Return x67, Return x64, Return x61, Return x58, Return x55, (x75 + x52), Return x76, Return x73))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e212m29_9limbs/femulDisplay.v b/src/Specific/solinas32_2e212m29_9limbs/femulDisplay.v
deleted file mode 100644
index 08f524c0d..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e212m29_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e212m29_9limbs/fesquare.c b/src/Specific/solinas32_2e212m29_9limbs/fesquare.c
deleted file mode 100644
index f651debf8..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/fesquare.c
+++ /dev/null
@@ -1,62 +0,0 @@
-static void fesquare(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x17 = (((uint64_t)x2 * x15) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x15 * x2)))))))));
- { uint64_t x18 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x1d * (0x2 * ((uint64_t)x15 * x15))));
- { uint64_t x19 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x1d * (((uint64_t)x16 * x15) + ((uint64_t)x15 * x16))));
- { uint64_t x20 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x1d * ((0x2 * ((uint64_t)x14 * x15)) + (((uint64_t)x16 * x16) + (0x2 * ((uint64_t)x15 * x14))))));
- { uint64_t x21 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x1d * (((uint64_t)x12 * x15) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x15 * x12))))));
- { uint64_t x22 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x1d * ((0x2 * ((uint64_t)x10 * x15)) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (0x2 * ((uint64_t)x15 * x10))))))));
- { uint64_t x23 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x1d * (((uint64_t)x8 * x15) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x15 * x8))))))));
- { uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1d * ((0x2 * ((uint64_t)x6 * x15)) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + (0x2 * ((uint64_t)x15 * x6))))))))));
- { uint64_t x25 = (((uint64_t)x2 * x2) + (0x1d * ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4)))))))))));
- { uint64_t x26 = (x25 >> 0x18);
- { uint32_t x27 = ((uint32_t)x25 & 0xffffff);
- { uint64_t x28 = (x26 + x24);
- { uint64_t x29 = (x28 >> 0x18);
- { uint32_t x30 = ((uint32_t)x28 & 0xffffff);
- { uint64_t x31 = (x29 + x23);
- { uint64_t x32 = (x31 >> 0x17);
- { uint32_t x33 = ((uint32_t)x31 & 0x7fffff);
- { uint64_t x34 = (x32 + x22);
- { uint64_t x35 = (x34 >> 0x18);
- { uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- { uint64_t x37 = (x35 + x21);
- { uint64_t x38 = (x37 >> 0x17);
- { uint32_t x39 = ((uint32_t)x37 & 0x7fffff);
- { uint64_t x40 = (x38 + x20);
- { uint64_t x41 = (x40 >> 0x18);
- { uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- { uint64_t x43 = (x41 + x19);
- { uint64_t x44 = (x43 >> 0x17);
- { uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- { uint64_t x46 = (x44 + x18);
- { uint64_t x47 = (x46 >> 0x18);
- { uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- { uint64_t x49 = (x47 + x17);
- { uint32_t x50 = (uint32_t) (x49 >> 0x17);
- { uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- { uint64_t x52 = (x27 + ((uint64_t)0x1d * x50));
- { uint32_t x53 = (uint32_t) (x52 >> 0x18);
- { uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- { uint32_t x55 = (x53 + x30);
- { uint32_t x56 = (x55 >> 0x18);
- { uint32_t x57 = (x55 & 0xffffff);
- out[0] = x54;
- out[1] = x57;
- out[2] = (x56 + x33);
- out[3] = x36;
- out[4] = x39;
- out[5] = x42;
- out[6] = x45;
- out[7] = x48;
- out[8] = x51;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e212m29_9limbs/fesquare.v b/src/Specific/solinas32_2e212m29_9limbs/fesquare.v
deleted file mode 100644
index bb0afddcc..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e212m29_9limbs.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_2e212m29_9limbs/fesquareDisplay.log b/src/Specific/solinas32_2e212m29_9limbs/fesquareDisplay.log
deleted file mode 100644
index f54042b88..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x17 = (((uint64_t)x2 * x15) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x15 * x2)))))))));
- uint64_t x18 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x1d * (0x2 * ((uint64_t)x15 * x15))));
- uint64_t x19 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x1d * (((uint64_t)x16 * x15) + ((uint64_t)x15 * x16))));
- uint64_t x20 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x1d * ((0x2 * ((uint64_t)x14 * x15)) + (((uint64_t)x16 * x16) + (0x2 * ((uint64_t)x15 * x14))))));
- uint64_t x21 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x1d * (((uint64_t)x12 * x15) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x15 * x12))))));
- uint64_t x22 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x1d * ((0x2 * ((uint64_t)x10 * x15)) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (0x2 * ((uint64_t)x15 * x10))))))));
- uint64_t x23 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x1d * (((uint64_t)x8 * x15) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x15 * x8))))))));
- uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1d * ((0x2 * ((uint64_t)x6 * x15)) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + (0x2 * ((uint64_t)x15 * x6))))))))));
- uint64_t x25 = (((uint64_t)x2 * x2) + (0x1d * ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4)))))))))));
- uint64_t x26 = (x25 >> 0x18);
- uint32_t x27 = ((uint32_t)x25 & 0xffffff);
- uint64_t x28 = (x26 + x24);
- uint64_t x29 = (x28 >> 0x18);
- uint32_t x30 = ((uint32_t)x28 & 0xffffff);
- uint64_t x31 = (x29 + x23);
- uint64_t x32 = (x31 >> 0x17);
- uint32_t x33 = ((uint32_t)x31 & 0x7fffff);
- uint64_t x34 = (x32 + x22);
- uint64_t x35 = (x34 >> 0x18);
- uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- uint64_t x37 = (x35 + x21);
- uint64_t x38 = (x37 >> 0x17);
- uint32_t x39 = ((uint32_t)x37 & 0x7fffff);
- uint64_t x40 = (x38 + x20);
- uint64_t x41 = (x40 >> 0x18);
- uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- uint64_t x43 = (x41 + x19);
- uint64_t x44 = (x43 >> 0x17);
- uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- uint64_t x46 = (x44 + x18);
- uint64_t x47 = (x46 >> 0x18);
- uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- uint64_t x49 = (x47 + x17);
- uint32_t x50 = (uint32_t) (x49 >> 0x17);
- uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- uint64_t x52 = (x27 + ((uint64_t)0x1d * x50));
- uint32_t x53 = (uint32_t) (x52 >> 0x18);
- uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- uint32_t x55 = (x53 + x30);
- uint32_t x56 = (x55 >> 0x18);
- uint32_t x57 = (x55 & 0xffffff);
- return (Return x51, Return x48, Return x45, Return x42, Return x39, Return x36, (x56 + x33), Return x57, Return x54))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e212m29_9limbs/fesquareDisplay.v b/src/Specific/solinas32_2e212m29_9limbs/fesquareDisplay.v
deleted file mode 100644
index ba9fca67d..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e212m29_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e212m29_9limbs/fesub.c b/src/Specific/solinas32_2e212m29_9limbs/fesub.c
deleted file mode 100644
index cfdc435d6..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/fesub.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void fesub(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = ((0x1ffffc6 + x5) - x21);
- out[1] = ((0x1fffffe + x7) - x23);
- out[2] = ((0xfffffe + x9) - x25);
- out[3] = ((0x1fffffe + x11) - x27);
- out[4] = ((0xfffffe + x13) - x29);
- out[5] = ((0x1fffffe + x15) - x31);
- out[6] = ((0xfffffe + x17) - x33);
- out[7] = ((0x1fffffe + x19) - x35);
- out[8] = ((0xfffffe + x18) - x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e212m29_9limbs/fesub.v b/src/Specific/solinas32_2e212m29_9limbs/fesub.v
deleted file mode 100644
index 30de65bff..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e212m29_9limbs.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_2e212m29_9limbs/fesubDisplay.log b/src/Specific/solinas32_2e212m29_9limbs/fesubDisplay.log
deleted file mode 100644
index 3d20cc56f..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- (((0xfffffe + x18) - x34), ((0x1fffffe + x19) - x35), ((0xfffffe + x17) - x33), ((0x1fffffe + x15) - x31), ((0xfffffe + x13) - x29), ((0x1fffffe + x11) - x27), ((0xfffffe + x9) - x25), ((0x1fffffe + x7) - x23), ((0x1ffffc6 + x5) - x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e212m29_9limbs/fesubDisplay.v b/src/Specific/solinas32_2e212m29_9limbs/fesubDisplay.v
deleted file mode 100644
index c715cd0d8..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e212m29_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e212m29_9limbs/freeze.c b/src/Specific/solinas32_2e212m29_9limbs/freeze.c
deleted file mode 100644
index 9e75fa756..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/freeze.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void freeze(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffe3);
- { uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0xffffff);
- { uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0x7fffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x8, 0xffffff);
- { uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0x7fffff);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0xffffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0x7fffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0xffffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0x7fffff);
- { uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- { uint32_t x45 = (x44 & 0xffffe3);
- { uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- { uint32_t x49 = (x44 & 0xffffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- { uint32_t x53 = (x44 & 0x7fffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- { uint32_t x57 = (x44 & 0xffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- { uint32_t x61 = (x44 & 0x7fffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- { uint32_t x65 = (x44 & 0xffffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- { uint32_t x69 = (x44 & 0x7fffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- { uint32_t x73 = (x44 & 0xffffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- { uint32_t x77 = (x44 & 0x7fffff);
- { uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- out[0] = x47;
- out[1] = x51;
- out[2] = x55;
- out[3] = x59;
- out[4] = x63;
- out[5] = x67;
- out[6] = x71;
- out[7] = x75;
- out[8] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e212m29_9limbs/freeze.v b/src/Specific/solinas32_2e212m29_9limbs/freeze.v
deleted file mode 100644
index db6b61d2a..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e212m29_9limbs.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_2e212m29_9limbs/freezeDisplay.log b/src/Specific/solinas32_2e212m29_9limbs/freezeDisplay.log
deleted file mode 100644
index 2edc753b3..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffe3);
- uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0xffffff);
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0x7fffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x8, 0xffffff);
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0x7fffff);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0xffffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0x7fffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0xffffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0x7fffff);
- uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- uint32_t x45 = (x44 & 0xffffe3);
- uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- uint32_t x49 = (x44 & 0xffffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- uint32_t x53 = (x44 & 0x7fffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- uint32_t x57 = (x44 & 0xffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- uint32_t x61 = (x44 & 0x7fffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- uint32_t x65 = (x44 & 0xffffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- uint32_t x69 = (x44 & 0x7fffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- uint32_t x73 = (x44 & 0xffffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- uint32_t x77 = (x44 & 0x7fffff);
- uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- (Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x51, Return x47))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e212m29_9limbs/freezeDisplay.v b/src/Specific/solinas32_2e212m29_9limbs/freezeDisplay.v
deleted file mode 100644
index 81617bc41..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e212m29_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e212m29_9limbs/py_interpreter.sh b/src/Specific/solinas32_2e212m29_9limbs/py_interpreter.sh
deleted file mode 100755
index d070ee491..000000000
--- a/src/Specific/solinas32_2e212m29_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**212 - 29' -Dmodulus_bytes='23 + 5/9' -Da24='121665'
diff --git a/src/Specific/solinas32_2e213m3_8limbs/CurveParameters.v b/src/Specific/solinas32_2e213m3_8limbs/CurveParameters.v
deleted file mode 100644
index e68d2c787..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^213 - 3
-Base: 26.625
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 26 + 5/8;
- bitwidth := 32;
- s := 2^213;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 8); [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_2e213m3_8limbs/Synthesis.v b/src/Specific/solinas32_2e213m3_8limbs/Synthesis.v
deleted file mode 100644
index ace9b845f..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e213m3_8limbs.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_2e213m3_8limbs/compiler.sh b/src/Specific/solinas32_2e213m3_8limbs/compiler.sh
deleted file mode 100755
index 21c01e7cc..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,27,26,27,27,26,27,26}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<213) - 3' "$@"
diff --git a/src/Specific/solinas32_2e213m3_8limbs/compilerxx.sh b/src/Specific/solinas32_2e213m3_8limbs/compilerxx.sh
deleted file mode 100755
index cfd8a2391..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,27,26,27,27,26,27,26}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<213) - 3' "$@"
diff --git a/src/Specific/solinas32_2e213m3_8limbs/feadd.c b/src/Specific/solinas32_2e213m3_8limbs/feadd.c
deleted file mode 100644
index cc3671f75..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e213m3_8limbs/feadd.v b/src/Specific/solinas32_2e213m3_8limbs/feadd.v
deleted file mode 100644
index 893fbdcd7..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e213m3_8limbs.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_2e213m3_8limbs/feaddDisplay.log b/src/Specific/solinas32_2e213m3_8limbs/feaddDisplay.log
deleted file mode 100644
index f25c10903..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e213m3_8limbs/feaddDisplay.v b/src/Specific/solinas32_2e213m3_8limbs/feaddDisplay.v
deleted file mode 100644
index 9d2b2acba..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e213m3_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e213m3_8limbs/fecarry.v b/src/Specific/solinas32_2e213m3_8limbs/fecarry.v
deleted file mode 100644
index f4db12f2c..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e213m3_8limbs.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_2e213m3_8limbs/fecarryDisplay.v b/src/Specific/solinas32_2e213m3_8limbs/fecarryDisplay.v
deleted file mode 100644
index e7bda24eb..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e213m3_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e213m3_8limbs/femul.c b/src/Specific/solinas32_2e213m3_8limbs/femul.c
deleted file mode 100644
index 6882c73c2..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint64_t x32 = (((uint64_t)x5 * x30) + (((uint64_t)x7 * x31) + ((0x2 * ((uint64_t)x9 * x29)) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + ((0x2 * ((uint64_t)x15 * x23)) + (((uint64_t)x17 * x21) + ((uint64_t)x16 * x19))))))));
- { uint64_t x33 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + (((uint64_t)x11 * x25) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + ((uint64_t)x17 * x19))))))) + (0x3 * (0x2 * ((uint64_t)x16 * x30))));
- { uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0x3 * (((uint64_t)x17 * x30) + ((uint64_t)x16 * x31))));
- { uint64_t x35 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + ((0x2 * ((uint64_t)x9 * x23)) + (((uint64_t)x11 * x21) + ((uint64_t)x13 * x19))))) + (0x3 * ((0x2 * ((uint64_t)x15 * x30)) + (((uint64_t)x17 * x31) + (0x2 * ((uint64_t)x16 * x29))))));
- { uint64_t x36 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((0x2 * ((uint64_t)x9 * x21)) + ((uint64_t)x11 * x19)))) + (0x3 * ((0x2 * ((uint64_t)x13 * x30)) + ((0x2 * ((uint64_t)x15 * x31)) + ((0x2 * ((uint64_t)x17 * x29)) + (0x2 * ((uint64_t)x16 * x27)))))));
- { uint64_t x37 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((uint64_t)x9 * x19))) + (0x3 * (((uint64_t)x11 * x30) + (((uint64_t)x13 * x31) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + ((uint64_t)x16 * x25)))))));
- { uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0x3 * ((0x2 * ((uint64_t)x9 * x30)) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + ((0x2 * ((uint64_t)x15 * x27)) + (((uint64_t)x17 * x25) + (0x2 * ((uint64_t)x16 * x23)))))))));
- { uint64_t x39 = (((uint64_t)x5 * x19) + (0x3 * ((0x2 * ((uint64_t)x7 * x30)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + (0x2 * ((uint64_t)x16 * x21))))))))));
- { uint64_t x40 = (x39 >> 0x1b);
- { uint32_t x41 = ((uint32_t)x39 & 0x7ffffff);
- { uint64_t x42 = (x40 + x38);
- { uint64_t x43 = (x42 >> 0x1b);
- { uint32_t x44 = ((uint32_t)x42 & 0x7ffffff);
- { uint64_t x45 = (x43 + x37);
- { uint64_t x46 = (x45 >> 0x1a);
- { uint32_t x47 = ((uint32_t)x45 & 0x3ffffff);
- { uint64_t x48 = (x46 + x36);
- { uint64_t x49 = (x48 >> 0x1b);
- { uint32_t x50 = ((uint32_t)x48 & 0x7ffffff);
- { uint64_t x51 = (x49 + x35);
- { uint64_t x52 = (x51 >> 0x1b);
- { uint32_t x53 = ((uint32_t)x51 & 0x7ffffff);
- { uint64_t x54 = (x52 + x34);
- { uint64_t x55 = (x54 >> 0x1a);
- { uint32_t x56 = ((uint32_t)x54 & 0x3ffffff);
- { uint64_t x57 = (x55 + x33);
- { uint64_t x58 = (x57 >> 0x1b);
- { uint32_t x59 = ((uint32_t)x57 & 0x7ffffff);
- { uint64_t x60 = (x58 + x32);
- { uint64_t x61 = (x60 >> 0x1a);
- { uint32_t x62 = ((uint32_t)x60 & 0x3ffffff);
- { uint64_t x63 = (x41 + (0x3 * x61));
- { uint32_t x64 = (uint32_t) (x63 >> 0x1b);
- { uint32_t x65 = ((uint32_t)x63 & 0x7ffffff);
- { uint32_t x66 = (x64 + x44);
- { uint32_t x67 = (x66 >> 0x1b);
- { uint32_t x68 = (x66 & 0x7ffffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e213m3_8limbs/femul.v b/src/Specific/solinas32_2e213m3_8limbs/femul.v
deleted file mode 100644
index 09a023c91..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e213m3_8limbs.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_2e213m3_8limbs/femulDisplay.log b/src/Specific/solinas32_2e213m3_8limbs/femulDisplay.log
deleted file mode 100644
index 92dccb9f6..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x32 = (((uint64_t)x5 * x30) + (((uint64_t)x7 * x31) + ((0x2 * ((uint64_t)x9 * x29)) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + ((0x2 * ((uint64_t)x15 * x23)) + (((uint64_t)x17 * x21) + ((uint64_t)x16 * x19))))))));
- uint64_t x33 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + (((uint64_t)x11 * x25) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + ((uint64_t)x17 * x19))))))) + (0x3 * (0x2 * ((uint64_t)x16 * x30))));
- uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0x3 * (((uint64_t)x17 * x30) + ((uint64_t)x16 * x31))));
- uint64_t x35 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + ((0x2 * ((uint64_t)x9 * x23)) + (((uint64_t)x11 * x21) + ((uint64_t)x13 * x19))))) + (0x3 * ((0x2 * ((uint64_t)x15 * x30)) + (((uint64_t)x17 * x31) + (0x2 * ((uint64_t)x16 * x29))))));
- uint64_t x36 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((0x2 * ((uint64_t)x9 * x21)) + ((uint64_t)x11 * x19)))) + (0x3 * ((0x2 * ((uint64_t)x13 * x30)) + ((0x2 * ((uint64_t)x15 * x31)) + ((0x2 * ((uint64_t)x17 * x29)) + (0x2 * ((uint64_t)x16 * x27)))))));
- uint64_t x37 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((uint64_t)x9 * x19))) + (0x3 * (((uint64_t)x11 * x30) + (((uint64_t)x13 * x31) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + ((uint64_t)x16 * x25)))))));
- uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0x3 * ((0x2 * ((uint64_t)x9 * x30)) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + ((0x2 * ((uint64_t)x15 * x27)) + (((uint64_t)x17 * x25) + (0x2 * ((uint64_t)x16 * x23)))))))));
- uint64_t x39 = (((uint64_t)x5 * x19) + (0x3 * ((0x2 * ((uint64_t)x7 * x30)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + (0x2 * ((uint64_t)x16 * x21))))))))));
- uint64_t x40 = (x39 >> 0x1b);
- uint32_t x41 = ((uint32_t)x39 & 0x7ffffff);
- uint64_t x42 = (x40 + x38);
- uint64_t x43 = (x42 >> 0x1b);
- uint32_t x44 = ((uint32_t)x42 & 0x7ffffff);
- uint64_t x45 = (x43 + x37);
- uint64_t x46 = (x45 >> 0x1a);
- uint32_t x47 = ((uint32_t)x45 & 0x3ffffff);
- uint64_t x48 = (x46 + x36);
- uint64_t x49 = (x48 >> 0x1b);
- uint32_t x50 = ((uint32_t)x48 & 0x7ffffff);
- uint64_t x51 = (x49 + x35);
- uint64_t x52 = (x51 >> 0x1b);
- uint32_t x53 = ((uint32_t)x51 & 0x7ffffff);
- uint64_t x54 = (x52 + x34);
- uint64_t x55 = (x54 >> 0x1a);
- uint32_t x56 = ((uint32_t)x54 & 0x3ffffff);
- uint64_t x57 = (x55 + x33);
- uint64_t x58 = (x57 >> 0x1b);
- uint32_t x59 = ((uint32_t)x57 & 0x7ffffff);
- uint64_t x60 = (x58 + x32);
- uint64_t x61 = (x60 >> 0x1a);
- uint32_t x62 = ((uint32_t)x60 & 0x3ffffff);
- uint64_t x63 = (x41 + (0x3 * x61));
- uint32_t x64 = (uint32_t) (x63 >> 0x1b);
- uint32_t x65 = ((uint32_t)x63 & 0x7ffffff);
- uint32_t x66 = (x64 + x44);
- uint32_t x67 = (x66 >> 0x1b);
- uint32_t x68 = (x66 & 0x7ffffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e213m3_8limbs/femulDisplay.v b/src/Specific/solinas32_2e213m3_8limbs/femulDisplay.v
deleted file mode 100644
index 1a896fe4c..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e213m3_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e213m3_8limbs/fesquare.c b/src/Specific/solinas32_2e213m3_8limbs/fesquare.c
deleted file mode 100644
index 3bd305b83..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (((uint64_t)x2 * x13) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x13 * x2))))))));
- { uint64_t x16 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x3 * (0x2 * ((uint64_t)x13 * x13))));
- { uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x3 * (((uint64_t)x14 * x13) + ((uint64_t)x13 * x14))));
- { uint64_t x18 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x3 * ((0x2 * ((uint64_t)x12 * x13)) + (((uint64_t)x14 * x14) + (0x2 * ((uint64_t)x13 * x12))))));
- { uint64_t x19 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x3 * ((0x2 * ((uint64_t)x10 * x13)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (0x2 * ((uint64_t)x13 * x10)))))));
- { uint64_t x20 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x3 * (((uint64_t)x8 * x13) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + ((uint64_t)x13 * x8)))))));
- { uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * ((0x2 * ((uint64_t)x6 * x13)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + (0x2 * ((uint64_t)x13 * x6)))))))));
- { uint64_t x22 = (((uint64_t)x2 * x2) + (0x3 * ((0x2 * ((uint64_t)x4 * x13)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (0x2 * ((uint64_t)x13 * x4))))))))));
- { uint64_t x23 = (x22 >> 0x1b);
- { uint32_t x24 = ((uint32_t)x22 & 0x7ffffff);
- { uint64_t x25 = (x23 + x21);
- { uint64_t x26 = (x25 >> 0x1b);
- { uint32_t x27 = ((uint32_t)x25 & 0x7ffffff);
- { uint64_t x28 = (x26 + x20);
- { uint64_t x29 = (x28 >> 0x1a);
- { uint32_t x30 = ((uint32_t)x28 & 0x3ffffff);
- { uint64_t x31 = (x29 + x19);
- { uint64_t x32 = (x31 >> 0x1b);
- { uint32_t x33 = ((uint32_t)x31 & 0x7ffffff);
- { uint64_t x34 = (x32 + x18);
- { uint64_t x35 = (x34 >> 0x1b);
- { uint32_t x36 = ((uint32_t)x34 & 0x7ffffff);
- { uint64_t x37 = (x35 + x17);
- { uint64_t x38 = (x37 >> 0x1a);
- { uint32_t x39 = ((uint32_t)x37 & 0x3ffffff);
- { uint64_t x40 = (x38 + x16);
- { uint64_t x41 = (x40 >> 0x1b);
- { uint32_t x42 = ((uint32_t)x40 & 0x7ffffff);
- { uint64_t x43 = (x41 + x15);
- { uint64_t x44 = (x43 >> 0x1a);
- { uint32_t x45 = ((uint32_t)x43 & 0x3ffffff);
- { uint64_t x46 = (x24 + (0x3 * x44));
- { uint32_t x47 = (uint32_t) (x46 >> 0x1b);
- { uint32_t x48 = ((uint32_t)x46 & 0x7ffffff);
- { uint32_t x49 = (x47 + x27);
- { uint32_t x50 = (x49 >> 0x1b);
- { uint32_t x51 = (x49 & 0x7ffffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e213m3_8limbs/fesquare.v b/src/Specific/solinas32_2e213m3_8limbs/fesquare.v
deleted file mode 100644
index fe77858dc..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e213m3_8limbs.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_2e213m3_8limbs/fesquareDisplay.log b/src/Specific/solinas32_2e213m3_8limbs/fesquareDisplay.log
deleted file mode 100644
index be2417c6c..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (((uint64_t)x2 * x13) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x13 * x2))))))));
- uint64_t x16 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x3 * (0x2 * ((uint64_t)x13 * x13))));
- uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x3 * (((uint64_t)x14 * x13) + ((uint64_t)x13 * x14))));
- uint64_t x18 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x3 * ((0x2 * ((uint64_t)x12 * x13)) + (((uint64_t)x14 * x14) + (0x2 * ((uint64_t)x13 * x12))))));
- uint64_t x19 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x3 * ((0x2 * ((uint64_t)x10 * x13)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (0x2 * ((uint64_t)x13 * x10)))))));
- uint64_t x20 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x3 * (((uint64_t)x8 * x13) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + ((uint64_t)x13 * x8)))))));
- uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * ((0x2 * ((uint64_t)x6 * x13)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + (0x2 * ((uint64_t)x13 * x6)))))))));
- uint64_t x22 = (((uint64_t)x2 * x2) + (0x3 * ((0x2 * ((uint64_t)x4 * x13)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (0x2 * ((uint64_t)x13 * x4))))))))));
- uint64_t x23 = (x22 >> 0x1b);
- uint32_t x24 = ((uint32_t)x22 & 0x7ffffff);
- uint64_t x25 = (x23 + x21);
- uint64_t x26 = (x25 >> 0x1b);
- uint32_t x27 = ((uint32_t)x25 & 0x7ffffff);
- uint64_t x28 = (x26 + x20);
- uint64_t x29 = (x28 >> 0x1a);
- uint32_t x30 = ((uint32_t)x28 & 0x3ffffff);
- uint64_t x31 = (x29 + x19);
- uint64_t x32 = (x31 >> 0x1b);
- uint32_t x33 = ((uint32_t)x31 & 0x7ffffff);
- uint64_t x34 = (x32 + x18);
- uint64_t x35 = (x34 >> 0x1b);
- uint32_t x36 = ((uint32_t)x34 & 0x7ffffff);
- uint64_t x37 = (x35 + x17);
- uint64_t x38 = (x37 >> 0x1a);
- uint32_t x39 = ((uint32_t)x37 & 0x3ffffff);
- uint64_t x40 = (x38 + x16);
- uint64_t x41 = (x40 >> 0x1b);
- uint32_t x42 = ((uint32_t)x40 & 0x7ffffff);
- uint64_t x43 = (x41 + x15);
- uint64_t x44 = (x43 >> 0x1a);
- uint32_t x45 = ((uint32_t)x43 & 0x3ffffff);
- uint64_t x46 = (x24 + (0x3 * x44));
- uint32_t x47 = (uint32_t) (x46 >> 0x1b);
- uint32_t x48 = ((uint32_t)x46 & 0x7ffffff);
- uint32_t x49 = (x47 + x27);
- uint32_t x50 = (x49 >> 0x1b);
- uint32_t x51 = (x49 & 0x7ffffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e213m3_8limbs/fesquareDisplay.v b/src/Specific/solinas32_2e213m3_8limbs/fesquareDisplay.v
deleted file mode 100644
index a2df52f17..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e213m3_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e213m3_8limbs/fesub.c b/src/Specific/solinas32_2e213m3_8limbs/fesub.c
deleted file mode 100644
index a8d0c529a..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = ((0xffffffa + x5) - x19);
- out[1] = ((0xffffffe + x7) - x21);
- out[2] = ((0x7fffffe + x9) - x23);
- out[3] = ((0xffffffe + x11) - x25);
- out[4] = ((0xffffffe + x13) - x27);
- out[5] = ((0x7fffffe + x15) - x29);
- out[6] = ((0xffffffe + x17) - x31);
- out[7] = ((0x7fffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e213m3_8limbs/fesub.v b/src/Specific/solinas32_2e213m3_8limbs/fesub.v
deleted file mode 100644
index b3694e20a..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e213m3_8limbs.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_2e213m3_8limbs/fesubDisplay.log b/src/Specific/solinas32_2e213m3_8limbs/fesubDisplay.log
deleted file mode 100644
index 20ab6c6ca..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0x7fffffe + x16) - x30), ((0xffffffe + x17) - x31), ((0x7fffffe + x15) - x29), ((0xffffffe + x13) - x27), ((0xffffffe + x11) - x25), ((0x7fffffe + x9) - x23), ((0xffffffe + x7) - x21), ((0xffffffa + x5) - x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e213m3_8limbs/fesubDisplay.v b/src/Specific/solinas32_2e213m3_8limbs/fesubDisplay.v
deleted file mode 100644
index 998b32af5..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e213m3_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e213m3_8limbs/freeze.c b/src/Specific/solinas32_2e213m3_8limbs/freeze.c
deleted file mode 100644
index da544c064..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffd);
- { uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0x7ffffff);
- { uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0x3ffffff);
- { uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0x7ffffff);
- { uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0x7ffffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0x3ffffff);
- { uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0x7ffffff);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0x3ffffff);
- { uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- { uint32_t x40 = (x39 & 0x7fffffd);
- { uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint32_t x44 = (x39 & 0x7ffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint32_t x48 = (x39 & 0x3ffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint32_t x52 = (x39 & 0x7ffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint32_t x56 = (x39 & 0x7ffffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint32_t x60 = (x39 & 0x3ffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint32_t x64 = (x39 & 0x7ffffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint32_t x68 = (x39 & 0x3ffffff);
- { uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e213m3_8limbs/freeze.v b/src/Specific/solinas32_2e213m3_8limbs/freeze.v
deleted file mode 100644
index 352b8f5b8..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e213m3_8limbs.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_2e213m3_8limbs/freezeDisplay.log b/src/Specific/solinas32_2e213m3_8limbs/freezeDisplay.log
deleted file mode 100644
index fcb19b259..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffd);
- uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0x7ffffff);
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0x3ffffff);
- uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0x7ffffff);
- uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0x7ffffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0x3ffffff);
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0x7ffffff);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0x3ffffff);
- uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- uint32_t x40 = (x39 & 0x7fffffd);
- uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint32_t x44 = (x39 & 0x7ffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint32_t x48 = (x39 & 0x3ffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint32_t x52 = (x39 & 0x7ffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint32_t x56 = (x39 & 0x7ffffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint32_t x60 = (x39 & 0x3ffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint32_t x64 = (x39 & 0x7ffffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint32_t x68 = (x39 & 0x3ffffff);
- uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e213m3_8limbs/freezeDisplay.v b/src/Specific/solinas32_2e213m3_8limbs/freezeDisplay.v
deleted file mode 100644
index eb355cdb0..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e213m3_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e213m3_8limbs/py_interpreter.sh b/src/Specific/solinas32_2e213m3_8limbs/py_interpreter.sh
deleted file mode 100755
index 6efdefa9f..000000000
--- a/src/Specific/solinas32_2e213m3_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**213 - 3' -Dmodulus_bytes='26.625' -Da24='121665'
diff --git a/src/Specific/solinas32_2e213m3_9limbs/CurveParameters.v b/src/Specific/solinas32_2e213m3_9limbs/CurveParameters.v
deleted file mode 100644
index afcbb362c..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^213 - 3
-Base: 23 + 2/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 23 + 2/3;
- bitwidth := 32;
- s := 2^213;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 9); [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_2e213m3_9limbs/Synthesis.v b/src/Specific/solinas32_2e213m3_9limbs/Synthesis.v
deleted file mode 100644
index a74316f73..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e213m3_9limbs.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_2e213m3_9limbs/compiler.sh b/src/Specific/solinas32_2e213m3_9limbs/compiler.sh
deleted file mode 100755
index deb08c3bf..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,23,24,24,23,24,24,23}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<213) - 3' "$@"
diff --git a/src/Specific/solinas32_2e213m3_9limbs/compilerxx.sh b/src/Specific/solinas32_2e213m3_9limbs/compilerxx.sh
deleted file mode 100755
index bbc6abfe0..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,23,24,24,23,24,24,23}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<213) - 3' "$@"
diff --git a/src/Specific/solinas32_2e213m3_9limbs/feadd.c b/src/Specific/solinas32_2e213m3_9limbs/feadd.c
deleted file mode 100644
index e1188fdec..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e213m3_9limbs/feadd.v b/src/Specific/solinas32_2e213m3_9limbs/feadd.v
deleted file mode 100644
index fbfcdf746..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e213m3_9limbs.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_2e213m3_9limbs/feaddDisplay.log b/src/Specific/solinas32_2e213m3_9limbs/feaddDisplay.log
deleted file mode 100644
index e26bb40f8..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e213m3_9limbs/feaddDisplay.v b/src/Specific/solinas32_2e213m3_9limbs/feaddDisplay.v
deleted file mode 100644
index 61ab0fbfc..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e213m3_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e213m3_9limbs/fecarry.v b/src/Specific/solinas32_2e213m3_9limbs/fecarry.v
deleted file mode 100644
index ef63ecc8b..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e213m3_9limbs.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_2e213m3_9limbs/fecarryDisplay.v b/src/Specific/solinas32_2e213m3_9limbs/fecarryDisplay.v
deleted file mode 100644
index e65dc672c..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e213m3_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e213m3_9limbs/femul.c b/src/Specific/solinas32_2e213m3_9limbs/femul.c
deleted file mode 100644
index 324d182bc..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/femul.c
+++ /dev/null
@@ -1,71 +0,0 @@
-static void femul(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- { uint64_t x36 = (((uint64_t)x5 * x34) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + (((uint64_t)x19 * x23) + ((uint64_t)x18 * x21)))))))));
- { uint64_t x37 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + ((0x2 * ((uint64_t)x9 * x31)) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + (((uint64_t)x17 * x23) + ((uint64_t)x19 * x21)))))))) + (0x3 * (0x2 * ((uint64_t)x18 * x34))));
- { uint64_t x38 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + (((uint64_t)x11 * x27) + ((0x2 * ((uint64_t)x13 * x25)) + ((0x2 * ((uint64_t)x15 * x23)) + ((uint64_t)x17 * x21))))))) + (0x3 * ((0x2 * ((uint64_t)x19 * x34)) + (0x2 * ((uint64_t)x18 * x35)))));
- { uint64_t x39 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + (((uint64_t)x13 * x23) + ((uint64_t)x15 * x21)))))) + (0x3 * (((uint64_t)x17 * x34) + (((uint64_t)x19 * x35) + ((uint64_t)x18 * x33)))));
- { uint64_t x40 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + (((uint64_t)x11 * x23) + ((uint64_t)x13 * x21))))) + (0x3 * ((0x2 * ((uint64_t)x15 * x34)) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + (0x2 * ((uint64_t)x18 * x31)))))));
- { uint64_t x41 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((uint64_t)x11 * x21)))) + (0x3 * ((0x2 * ((uint64_t)x13 * x34)) + ((0x2 * ((uint64_t)x15 * x35)) + (((uint64_t)x17 * x33) + ((0x2 * ((uint64_t)x19 * x31)) + (0x2 * ((uint64_t)x18 * x29))))))));
- { uint64_t x42 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + ((uint64_t)x9 * x21))) + (0x3 * (((uint64_t)x11 * x34) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + ((uint64_t)x18 * x27))))))));
- { uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0x3 * ((0x2 * ((uint64_t)x9 * x34)) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + ((0x2 * ((uint64_t)x15 * x31)) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + (0x2 * ((uint64_t)x18 * x25))))))))));
- { uint64_t x44 = (((uint64_t)x5 * x21) + (0x3 * ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + (((uint64_t)x11 * x33) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23)))))))))));
- { uint64_t x45 = (x44 >> 0x18);
- { uint32_t x46 = ((uint32_t)x44 & 0xffffff);
- { uint64_t x47 = (x45 + x43);
- { uint32_t x48 = (uint32_t) (x47 >> 0x18);
- { uint32_t x49 = ((uint32_t)x47 & 0xffffff);
- { uint64_t x50 = (x48 + x42);
- { uint64_t x51 = (x50 >> 0x17);
- { uint32_t x52 = ((uint32_t)x50 & 0x7fffff);
- { uint64_t x53 = (x51 + x41);
- { uint32_t x54 = (uint32_t) (x53 >> 0x18);
- { uint32_t x55 = ((uint32_t)x53 & 0xffffff);
- { uint64_t x56 = (x54 + x40);
- { uint32_t x57 = (uint32_t) (x56 >> 0x18);
- { uint32_t x58 = ((uint32_t)x56 & 0xffffff);
- { uint64_t x59 = (x57 + x39);
- { uint32_t x60 = (uint32_t) (x59 >> 0x17);
- { uint32_t x61 = ((uint32_t)x59 & 0x7fffff);
- { uint64_t x62 = (x60 + x38);
- { uint32_t x63 = (uint32_t) (x62 >> 0x18);
- { uint32_t x64 = ((uint32_t)x62 & 0xffffff);
- { uint64_t x65 = (x63 + x37);
- { uint32_t x66 = (uint32_t) (x65 >> 0x18);
- { uint32_t x67 = ((uint32_t)x65 & 0xffffff);
- { uint64_t x68 = (x66 + x36);
- { uint32_t x69 = (uint32_t) (x68 >> 0x17);
- { uint32_t x70 = ((uint32_t)x68 & 0x7fffff);
- { uint64_t x71 = (x46 + ((uint64_t)0x3 * x69));
- { uint32_t x72 = (uint32_t) (x71 >> 0x18);
- { uint32_t x73 = ((uint32_t)x71 & 0xffffff);
- { uint32_t x74 = (x72 + x49);
- { uint32_t x75 = (x74 >> 0x18);
- { uint32_t x76 = (x74 & 0xffffff);
- out[0] = x73;
- out[1] = x76;
- out[2] = (x75 + x52);
- out[3] = x55;
- out[4] = x58;
- out[5] = x61;
- out[6] = x64;
- out[7] = x67;
- out[8] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e213m3_9limbs/femul.v b/src/Specific/solinas32_2e213m3_9limbs/femul.v
deleted file mode 100644
index 75f619b40..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e213m3_9limbs.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_2e213m3_9limbs/femulDisplay.log b/src/Specific/solinas32_2e213m3_9limbs/femulDisplay.log
deleted file mode 100644
index d89c7fb60..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/femulDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint64_t x36 = (((uint64_t)x5 * x34) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + (((uint64_t)x19 * x23) + ((uint64_t)x18 * x21)))))))));
- uint64_t x37 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + ((0x2 * ((uint64_t)x9 * x31)) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + (((uint64_t)x17 * x23) + ((uint64_t)x19 * x21)))))))) + (0x3 * (0x2 * ((uint64_t)x18 * x34))));
- uint64_t x38 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + (((uint64_t)x11 * x27) + ((0x2 * ((uint64_t)x13 * x25)) + ((0x2 * ((uint64_t)x15 * x23)) + ((uint64_t)x17 * x21))))))) + (0x3 * ((0x2 * ((uint64_t)x19 * x34)) + (0x2 * ((uint64_t)x18 * x35)))));
- uint64_t x39 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + (((uint64_t)x13 * x23) + ((uint64_t)x15 * x21)))))) + (0x3 * (((uint64_t)x17 * x34) + (((uint64_t)x19 * x35) + ((uint64_t)x18 * x33)))));
- uint64_t x40 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + (((uint64_t)x11 * x23) + ((uint64_t)x13 * x21))))) + (0x3 * ((0x2 * ((uint64_t)x15 * x34)) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + (0x2 * ((uint64_t)x18 * x31)))))));
- uint64_t x41 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((uint64_t)x11 * x21)))) + (0x3 * ((0x2 * ((uint64_t)x13 * x34)) + ((0x2 * ((uint64_t)x15 * x35)) + (((uint64_t)x17 * x33) + ((0x2 * ((uint64_t)x19 * x31)) + (0x2 * ((uint64_t)x18 * x29))))))));
- uint64_t x42 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + ((uint64_t)x9 * x21))) + (0x3 * (((uint64_t)x11 * x34) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + ((uint64_t)x18 * x27))))))));
- uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0x3 * ((0x2 * ((uint64_t)x9 * x34)) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + ((0x2 * ((uint64_t)x15 * x31)) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + (0x2 * ((uint64_t)x18 * x25))))))))));
- uint64_t x44 = (((uint64_t)x5 * x21) + (0x3 * ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + (((uint64_t)x11 * x33) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23)))))))))));
- uint64_t x45 = (x44 >> 0x18);
- uint32_t x46 = ((uint32_t)x44 & 0xffffff);
- uint64_t x47 = (x45 + x43);
- uint32_t x48 = (uint32_t) (x47 >> 0x18);
- uint32_t x49 = ((uint32_t)x47 & 0xffffff);
- uint64_t x50 = (x48 + x42);
- uint64_t x51 = (x50 >> 0x17);
- uint32_t x52 = ((uint32_t)x50 & 0x7fffff);
- uint64_t x53 = (x51 + x41);
- uint32_t x54 = (uint32_t) (x53 >> 0x18);
- uint32_t x55 = ((uint32_t)x53 & 0xffffff);
- uint64_t x56 = (x54 + x40);
- uint32_t x57 = (uint32_t) (x56 >> 0x18);
- uint32_t x58 = ((uint32_t)x56 & 0xffffff);
- uint64_t x59 = (x57 + x39);
- uint32_t x60 = (uint32_t) (x59 >> 0x17);
- uint32_t x61 = ((uint32_t)x59 & 0x7fffff);
- uint64_t x62 = (x60 + x38);
- uint32_t x63 = (uint32_t) (x62 >> 0x18);
- uint32_t x64 = ((uint32_t)x62 & 0xffffff);
- uint64_t x65 = (x63 + x37);
- uint32_t x66 = (uint32_t) (x65 >> 0x18);
- uint32_t x67 = ((uint32_t)x65 & 0xffffff);
- uint64_t x68 = (x66 + x36);
- uint32_t x69 = (uint32_t) (x68 >> 0x17);
- uint32_t x70 = ((uint32_t)x68 & 0x7fffff);
- uint64_t x71 = (x46 + ((uint64_t)0x3 * x69));
- uint32_t x72 = (uint32_t) (x71 >> 0x18);
- uint32_t x73 = ((uint32_t)x71 & 0xffffff);
- uint32_t x74 = (x72 + x49);
- uint32_t x75 = (x74 >> 0x18);
- uint32_t x76 = (x74 & 0xffffff);
- return (Return x70, Return x67, Return x64, Return x61, Return x58, Return x55, (x75 + x52), Return x76, Return x73))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e213m3_9limbs/femulDisplay.v b/src/Specific/solinas32_2e213m3_9limbs/femulDisplay.v
deleted file mode 100644
index 1324dc802..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e213m3_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e213m3_9limbs/fesquare.c b/src/Specific/solinas32_2e213m3_9limbs/fesquare.c
deleted file mode 100644
index 04143ef6a..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/fesquare.c
+++ /dev/null
@@ -1,62 +0,0 @@
-static void fesquare(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x17 = (((uint64_t)x2 * x15) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x15 * x2)))))))));
- { uint64_t x18 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x3 * (0x2 * ((uint64_t)x15 * x15))));
- { uint64_t x19 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x3 * ((0x2 * ((uint64_t)x16 * x15)) + (0x2 * ((uint64_t)x15 * x16)))));
- { uint64_t x20 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x3 * (((uint64_t)x14 * x15) + (((uint64_t)x16 * x16) + ((uint64_t)x15 * x14)))));
- { uint64_t x21 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x3 * ((0x2 * ((uint64_t)x12 * x15)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (0x2 * ((uint64_t)x15 * x12)))))));
- { uint64_t x22 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x3 * ((0x2 * ((uint64_t)x10 * x15)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (0x2 * ((uint64_t)x15 * x10))))))));
- { uint64_t x23 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x3 * (((uint64_t)x8 * x15) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x15 * x8))))))));
- { uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * ((0x2 * ((uint64_t)x6 * x15)) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (0x2 * ((uint64_t)x15 * x6))))))))));
- { uint64_t x25 = (((uint64_t)x2 * x2) + (0x3 * ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4)))))))))));
- { uint64_t x26 = (x25 >> 0x18);
- { uint32_t x27 = ((uint32_t)x25 & 0xffffff);
- { uint64_t x28 = (x26 + x24);
- { uint32_t x29 = (uint32_t) (x28 >> 0x18);
- { uint32_t x30 = ((uint32_t)x28 & 0xffffff);
- { uint64_t x31 = (x29 + x23);
- { uint64_t x32 = (x31 >> 0x17);
- { uint32_t x33 = ((uint32_t)x31 & 0x7fffff);
- { uint64_t x34 = (x32 + x22);
- { uint32_t x35 = (uint32_t) (x34 >> 0x18);
- { uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- { uint64_t x37 = (x35 + x21);
- { uint32_t x38 = (uint32_t) (x37 >> 0x18);
- { uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- { uint64_t x40 = (x38 + x20);
- { uint32_t x41 = (uint32_t) (x40 >> 0x17);
- { uint32_t x42 = ((uint32_t)x40 & 0x7fffff);
- { uint64_t x43 = (x41 + x19);
- { uint32_t x44 = (uint32_t) (x43 >> 0x18);
- { uint32_t x45 = ((uint32_t)x43 & 0xffffff);
- { uint64_t x46 = (x44 + x18);
- { uint32_t x47 = (uint32_t) (x46 >> 0x18);
- { uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- { uint64_t x49 = (x47 + x17);
- { uint32_t x50 = (uint32_t) (x49 >> 0x17);
- { uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- { uint64_t x52 = (x27 + ((uint64_t)0x3 * x50));
- { uint32_t x53 = (uint32_t) (x52 >> 0x18);
- { uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- { uint32_t x55 = (x53 + x30);
- { uint32_t x56 = (x55 >> 0x18);
- { uint32_t x57 = (x55 & 0xffffff);
- out[0] = x54;
- out[1] = x57;
- out[2] = (x56 + x33);
- out[3] = x36;
- out[4] = x39;
- out[5] = x42;
- out[6] = x45;
- out[7] = x48;
- out[8] = x51;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e213m3_9limbs/fesquare.v b/src/Specific/solinas32_2e213m3_9limbs/fesquare.v
deleted file mode 100644
index a012664f4..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e213m3_9limbs.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_2e213m3_9limbs/fesquareDisplay.log b/src/Specific/solinas32_2e213m3_9limbs/fesquareDisplay.log
deleted file mode 100644
index 216a0cea8..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x17 = (((uint64_t)x2 * x15) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x15 * x2)))))))));
- uint64_t x18 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x3 * (0x2 * ((uint64_t)x15 * x15))));
- uint64_t x19 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x3 * ((0x2 * ((uint64_t)x16 * x15)) + (0x2 * ((uint64_t)x15 * x16)))));
- uint64_t x20 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x3 * (((uint64_t)x14 * x15) + (((uint64_t)x16 * x16) + ((uint64_t)x15 * x14)))));
- uint64_t x21 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x3 * ((0x2 * ((uint64_t)x12 * x15)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (0x2 * ((uint64_t)x15 * x12)))))));
- uint64_t x22 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x3 * ((0x2 * ((uint64_t)x10 * x15)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (0x2 * ((uint64_t)x15 * x10))))))));
- uint64_t x23 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x3 * (((uint64_t)x8 * x15) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x15 * x8))))))));
- uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * ((0x2 * ((uint64_t)x6 * x15)) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (0x2 * ((uint64_t)x15 * x6))))))))));
- uint64_t x25 = (((uint64_t)x2 * x2) + (0x3 * ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4)))))))))));
- uint64_t x26 = (x25 >> 0x18);
- uint32_t x27 = ((uint32_t)x25 & 0xffffff);
- uint64_t x28 = (x26 + x24);
- uint32_t x29 = (uint32_t) (x28 >> 0x18);
- uint32_t x30 = ((uint32_t)x28 & 0xffffff);
- uint64_t x31 = (x29 + x23);
- uint64_t x32 = (x31 >> 0x17);
- uint32_t x33 = ((uint32_t)x31 & 0x7fffff);
- uint64_t x34 = (x32 + x22);
- uint32_t x35 = (uint32_t) (x34 >> 0x18);
- uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- uint64_t x37 = (x35 + x21);
- uint32_t x38 = (uint32_t) (x37 >> 0x18);
- uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- uint64_t x40 = (x38 + x20);
- uint32_t x41 = (uint32_t) (x40 >> 0x17);
- uint32_t x42 = ((uint32_t)x40 & 0x7fffff);
- uint64_t x43 = (x41 + x19);
- uint32_t x44 = (uint32_t) (x43 >> 0x18);
- uint32_t x45 = ((uint32_t)x43 & 0xffffff);
- uint64_t x46 = (x44 + x18);
- uint32_t x47 = (uint32_t) (x46 >> 0x18);
- uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- uint64_t x49 = (x47 + x17);
- uint32_t x50 = (uint32_t) (x49 >> 0x17);
- uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- uint64_t x52 = (x27 + ((uint64_t)0x3 * x50));
- uint32_t x53 = (uint32_t) (x52 >> 0x18);
- uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- uint32_t x55 = (x53 + x30);
- uint32_t x56 = (x55 >> 0x18);
- uint32_t x57 = (x55 & 0xffffff);
- return (Return x51, Return x48, Return x45, Return x42, Return x39, Return x36, (x56 + x33), Return x57, Return x54))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e213m3_9limbs/fesquareDisplay.v b/src/Specific/solinas32_2e213m3_9limbs/fesquareDisplay.v
deleted file mode 100644
index 48bea70a3..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e213m3_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e213m3_9limbs/fesub.c b/src/Specific/solinas32_2e213m3_9limbs/fesub.c
deleted file mode 100644
index 11df94aa2..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/fesub.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void fesub(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = ((0x1fffffa + x5) - x21);
- out[1] = ((0x1fffffe + x7) - x23);
- out[2] = ((0xfffffe + x9) - x25);
- out[3] = ((0x1fffffe + x11) - x27);
- out[4] = ((0x1fffffe + x13) - x29);
- out[5] = ((0xfffffe + x15) - x31);
- out[6] = ((0x1fffffe + x17) - x33);
- out[7] = ((0x1fffffe + x19) - x35);
- out[8] = ((0xfffffe + x18) - x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e213m3_9limbs/fesub.v b/src/Specific/solinas32_2e213m3_9limbs/fesub.v
deleted file mode 100644
index 7ca08daa4..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e213m3_9limbs.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_2e213m3_9limbs/fesubDisplay.log b/src/Specific/solinas32_2e213m3_9limbs/fesubDisplay.log
deleted file mode 100644
index 3e656b07a..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- (((0xfffffe + x18) - x34), ((0x1fffffe + x19) - x35), ((0x1fffffe + x17) - x33), ((0xfffffe + x15) - x31), ((0x1fffffe + x13) - x29), ((0x1fffffe + x11) - x27), ((0xfffffe + x9) - x25), ((0x1fffffe + x7) - x23), ((0x1fffffa + x5) - x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e213m3_9limbs/fesubDisplay.v b/src/Specific/solinas32_2e213m3_9limbs/fesubDisplay.v
deleted file mode 100644
index b19c9641c..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e213m3_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e213m3_9limbs/freeze.c b/src/Specific/solinas32_2e213m3_9limbs/freeze.c
deleted file mode 100644
index de950d54f..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/freeze.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void freeze(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffd);
- { uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0xffffff);
- { uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0x7fffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x8, 0xffffff);
- { uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0xffffff);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0x7fffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0xffffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0xffffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0x7fffff);
- { uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- { uint32_t x45 = (x44 & 0xfffffd);
- { uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- { uint32_t x49 = (x44 & 0xffffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- { uint32_t x53 = (x44 & 0x7fffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- { uint32_t x57 = (x44 & 0xffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- { uint32_t x61 = (x44 & 0xffffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- { uint32_t x65 = (x44 & 0x7fffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- { uint32_t x69 = (x44 & 0xffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- { uint32_t x73 = (x44 & 0xffffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- { uint32_t x77 = (x44 & 0x7fffff);
- { uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- out[0] = x47;
- out[1] = x51;
- out[2] = x55;
- out[3] = x59;
- out[4] = x63;
- out[5] = x67;
- out[6] = x71;
- out[7] = x75;
- out[8] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e213m3_9limbs/freeze.v b/src/Specific/solinas32_2e213m3_9limbs/freeze.v
deleted file mode 100644
index 238bb4b42..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e213m3_9limbs.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_2e213m3_9limbs/freezeDisplay.log b/src/Specific/solinas32_2e213m3_9limbs/freezeDisplay.log
deleted file mode 100644
index d2d337856..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffd);
- uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0xffffff);
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0x7fffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x8, 0xffffff);
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0xffffff);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0x7fffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0xffffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0xffffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0x7fffff);
- uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- uint32_t x45 = (x44 & 0xfffffd);
- uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- uint32_t x49 = (x44 & 0xffffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- uint32_t x53 = (x44 & 0x7fffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- uint32_t x57 = (x44 & 0xffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- uint32_t x61 = (x44 & 0xffffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- uint32_t x65 = (x44 & 0x7fffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- uint32_t x69 = (x44 & 0xffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- uint32_t x73 = (x44 & 0xffffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- uint32_t x77 = (x44 & 0x7fffff);
- uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- (Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x51, Return x47))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e213m3_9limbs/freezeDisplay.v b/src/Specific/solinas32_2e213m3_9limbs/freezeDisplay.v
deleted file mode 100644
index 2129057a8..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e213m3_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e213m3_9limbs/py_interpreter.sh b/src/Specific/solinas32_2e213m3_9limbs/py_interpreter.sh
deleted file mode 100755
index fa919b1f7..000000000
--- a/src/Specific/solinas32_2e213m3_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**213 - 3' -Dmodulus_bytes='23 + 2/3' -Da24='121665'
diff --git a/src/Specific/solinas32_2e216m2e108m1_10limbs/CurveParameters.v b/src/Specific/solinas32_2e216m2e108m1_10limbs/CurveParameters.v
deleted file mode 100644
index bb4a23959..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^216 - 2^108 - 1
-Base: 21.6
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 21 + 3/5;
- bitwidth := 32;
- s := 2^216;
- c := [(1, 1); (2^108, 1)];
- carry_chains := Some [[4; 9]; [5; 0; 6; 1; 7; 2; 8; 3; 9; 4]; [5; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- 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_2e216m2e108m1_10limbs/Synthesis.v b/src/Specific/solinas32_2e216m2e108m1_10limbs/Synthesis.v
deleted file mode 100644
index 5ba21dd82..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_10limbs.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_2e216m2e108m1_10limbs/compiler.sh b/src/Specific/solinas32_2e216m2e108m1_10limbs/compiler.sh
deleted file mode 100755
index 4bd8030d8..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,21,22,21,22,22,21,22,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' "$@"
diff --git a/src/Specific/solinas32_2e216m2e108m1_10limbs/compilerxx.sh b/src/Specific/solinas32_2e216m2e108m1_10limbs/compilerxx.sh
deleted file mode 100755
index 2c09d6911..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,22,21,22,21,22,22,21,22,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' "$@"
diff --git a/src/Specific/solinas32_2e216m2e108m1_10limbs/feadd.c b/src/Specific/solinas32_2e216m2e108m1_10limbs/feadd.c
deleted file mode 100644
index 57dd4e1af..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/feadd.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void feadd(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- out[0] = (x5 + x23);
- out[1] = (x7 + x25);
- out[2] = (x9 + x27);
- out[3] = (x11 + x29);
- out[4] = (x13 + x31);
- out[5] = (x15 + x33);
- out[6] = (x17 + x35);
- out[7] = (x19 + x37);
- out[8] = (x21 + x39);
- out[9] = (x20 + x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e216m2e108m1_10limbs/feadd.v b/src/Specific/solinas32_2e216m2e108m1_10limbs/feadd.v
deleted file mode 100644
index 17083aa6e..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_10limbs.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_2e216m2e108m1_10limbs/feaddDisplay.log b/src/Specific/solinas32_2e216m2e108m1_10limbs/feaddDisplay.log
deleted file mode 100644
index 8a4c51148..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e216m2e108m1_10limbs/feaddDisplay.v b/src/Specific/solinas32_2e216m2e108m1_10limbs/feaddDisplay.v
deleted file mode 100644
index d245c0ca3..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_10limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e216m2e108m1_10limbs/fecarry.v b/src/Specific/solinas32_2e216m2e108m1_10limbs/fecarry.v
deleted file mode 100644
index f21fedaf1..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_10limbs.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_2e216m2e108m1_10limbs/fecarryDisplay.v b/src/Specific/solinas32_2e216m2e108m1_10limbs/fecarryDisplay.v
deleted file mode 100644
index dc288d9e7..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_10limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e216m2e108m1_10limbs/femul.c b/src/Specific/solinas32_2e216m2e108m1_10limbs/femul.c
deleted file mode 100644
index 55f8155cd..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/femul.c
+++ /dev/null
@@ -1,97 +0,0 @@
-static void femul(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- { uint64_t x40 = ((0x2 * ((uint64_t)(x13 + x20) * (x31 + x38))) - (0x2 * ((uint64_t)x13 * x31)));
- { uint64_t x41 = ((((uint64_t)(x11 + x21) * (x31 + x38)) + ((uint64_t)(x13 + x20) * (x29 + x39))) - (((uint64_t)x11 * x31) + ((uint64_t)x13 * x29)));
- { uint64_t x42 = (((0x2 * ((uint64_t)(x9 + x19) * (x31 + x38))) + (((uint64_t)(x11 + x21) * (x29 + x39)) + (0x2 * ((uint64_t)(x13 + x20) * (x27 + x37))))) - ((0x2 * ((uint64_t)x9 * x31)) + (((uint64_t)x11 * x29) + (0x2 * ((uint64_t)x13 * x27)))));
- { uint64_t x43 = (((0x2 * ((uint64_t)(x7 + x17) * (x31 + x38))) + ((0x2 * ((uint64_t)(x9 + x19) * (x29 + x39))) + ((0x2 * ((uint64_t)(x11 + x21) * (x27 + x37))) + (0x2 * ((uint64_t)(x13 + x20) * (x25 + x35)))))) - ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((0x2 * ((uint64_t)x11 * x27)) + (0x2 * ((uint64_t)x13 * x25))))));
- { uint64_t x44 = ((((uint64_t)(x5 + x15) * (x31 + x38)) + (((uint64_t)(x7 + x17) * (x29 + x39)) + ((0x2 * ((uint64_t)(x9 + x19) * (x27 + x37))) + (((uint64_t)(x11 + x21) * (x25 + x35)) + ((uint64_t)(x13 + x20) * (x23 + x33)))))) - (((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + ((0x2 * ((uint64_t)x9 * x27)) + (((uint64_t)x11 * x25) + ((uint64_t)x13 * x23))))));
- { uint64_t x45 = ((((uint64_t)(x5 + x15) * (x29 + x39)) + ((0x2 * ((uint64_t)(x7 + x17) * (x27 + x37))) + ((0x2 * ((uint64_t)(x9 + x19) * (x25 + x35))) + ((uint64_t)(x11 + x21) * (x23 + x33))))) - (((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((uint64_t)x11 * x23)))));
- { uint64_t x46 = ((((uint64_t)(x5 + x15) * (x27 + x37)) + (((uint64_t)(x7 + x17) * (x25 + x35)) + ((uint64_t)(x9 + x19) * (x23 + x33)))) - (((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + ((uint64_t)x9 * x23))));
- { uint64_t x47 = ((((uint64_t)(x5 + x15) * (x25 + x35)) + ((uint64_t)(x7 + x17) * (x23 + x33))) - (((uint64_t)x5 * x25) + ((uint64_t)x7 * x23)));
- { uint64_t x48 = (((uint64_t)(x5 + x15) * (x23 + x33)) - ((uint64_t)x5 * x23));
- { uint64_t x49 = ((((0x2 * ((uint64_t)x13 * x31)) + (0x2 * ((uint64_t)x20 * x38))) + x45) + x40);
- { uint64_t x50 = ((((((uint64_t)x11 * x31) + ((uint64_t)x13 * x29)) + (((uint64_t)x21 * x38) + ((uint64_t)x20 * x39))) + x46) + x41);
- { uint64_t x51 = (((((0x2 * ((uint64_t)x9 * x31)) + (((uint64_t)x11 * x29) + (0x2 * ((uint64_t)x13 * x27)))) + ((0x2 * ((uint64_t)x19 * x38)) + (((uint64_t)x21 * x39) + (0x2 * ((uint64_t)x20 * x37))))) + x47) + x42);
- { uint64_t x52 = (((((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((0x2 * ((uint64_t)x11 * x27)) + (0x2 * ((uint64_t)x13 * x25))))) + ((0x2 * ((uint64_t)x17 * x38)) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + (0x2 * ((uint64_t)x20 * x35)))))) + x48) + x43);
- { uint64_t x53 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + ((0x2 * ((uint64_t)x9 * x27)) + (((uint64_t)x11 * x25) + ((uint64_t)x13 * x23))))) + (((uint64_t)x15 * x38) + (((uint64_t)x17 * x39) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + ((uint64_t)x20 * x33))))));
- { uint64_t x54 = (((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((uint64_t)x11 * x23)))) + (((uint64_t)x15 * x39) + ((0x2 * ((uint64_t)x17 * x37)) + ((0x2 * ((uint64_t)x19 * x35)) + ((uint64_t)x21 * x33))))) + x40);
- { uint64_t x55 = (((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + ((uint64_t)x9 * x23))) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + ((uint64_t)x19 * x33)))) + x41);
- { uint64_t x56 = (((((uint64_t)x5 * x25) + ((uint64_t)x7 * x23)) + (((uint64_t)x15 * x35) + ((uint64_t)x17 * x33))) + x42);
- { uint64_t x57 = ((((uint64_t)x5 * x23) + ((uint64_t)x15 * x33)) + x43);
- { uint32_t x58 = (uint32_t) (x53 >> 0x15);
- { uint32_t x59 = ((uint32_t)x53 & 0x1fffff);
- { uint32_t x60 = (uint32_t) (x44 >> 0x15);
- { uint32_t x61 = ((uint32_t)x44 & 0x1fffff);
- { uint64_t x62 = (((uint64_t)0x200000 * x60) + x61);
- { uint32_t x63 = (uint32_t) (x62 >> 0x15);
- { uint32_t x64 = ((uint32_t)x62 & 0x1fffff);
- { uint64_t x65 = ((x58 + x52) + x63);
- { uint32_t x66 = (uint32_t) (x65 >> 0x16);
- { uint32_t x67 = ((uint32_t)x65 & 0x3fffff);
- { uint64_t x68 = (x57 + x63);
- { uint32_t x69 = (uint32_t) (x68 >> 0x16);
- { uint32_t x70 = ((uint32_t)x68 & 0x3fffff);
- { uint64_t x71 = (x66 + x51);
- { uint32_t x72 = (uint32_t) (x71 >> 0x16);
- { uint32_t x73 = ((uint32_t)x71 & 0x3fffff);
- { uint64_t x74 = (x69 + x56);
- { uint32_t x75 = (uint32_t) (x74 >> 0x16);
- { uint32_t x76 = ((uint32_t)x74 & 0x3fffff);
- { uint64_t x77 = (x72 + x50);
- { uint32_t x78 = (uint32_t) (x77 >> 0x15);
- { uint32_t x79 = ((uint32_t)x77 & 0x1fffff);
- { uint64_t x80 = (x75 + x55);
- { uint32_t x81 = (uint32_t) (x80 >> 0x15);
- { uint32_t x82 = ((uint32_t)x80 & 0x1fffff);
- { uint64_t x83 = (x78 + x49);
- { uint32_t x84 = (uint32_t) (x83 >> 0x16);
- { uint32_t x85 = ((uint32_t)x83 & 0x3fffff);
- { uint64_t x86 = (x81 + x54);
- { uint32_t x87 = (uint32_t) (x86 >> 0x16);
- { uint32_t x88 = ((uint32_t)x86 & 0x3fffff);
- { uint32_t x89 = (x84 + x64);
- { uint32_t x90 = (x89 >> 0x15);
- { uint32_t x91 = (x89 & 0x1fffff);
- { uint32_t x92 = (x87 + x59);
- { uint32_t x93 = (x92 >> 0x15);
- { uint32_t x94 = (x92 & 0x1fffff);
- { uint32_t x95 = ((0x200000 * x90) + x91);
- { uint32_t x96 = (x95 >> 0x15);
- { uint32_t x97 = (x95 & 0x1fffff);
- { uint32_t x98 = ((x93 + x67) + x96);
- { uint32_t x99 = (x98 >> 0x16);
- { uint32_t x100 = (x98 & 0x3fffff);
- { uint32_t x101 = (x70 + x96);
- { uint32_t x102 = (x101 >> 0x16);
- { uint32_t x103 = (x101 & 0x3fffff);
- out[0] = x103;
- out[1] = (x102 + x76);
- out[2] = x82;
- out[3] = x88;
- out[4] = x94;
- out[5] = x100;
- out[6] = (x99 + x73);
- out[7] = x79;
- out[8] = x85;
- out[9] = x97;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e216m2e108m1_10limbs/femul.v b/src/Specific/solinas32_2e216m2e108m1_10limbs/femul.v
deleted file mode 100644
index 2232168df..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_10limbs.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_2e216m2e108m1_10limbs/femulDisplay.log b/src/Specific/solinas32_2e216m2e108m1_10limbs/femulDisplay.log
deleted file mode 100644
index 5dfdeb51e..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/femulDisplay.log
+++ /dev/null
@@ -1,71 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- uint64_t x40 = ((0x2 * ((uint64_t)(x13 + x20) * (x31 + x38))) - (0x2 * ((uint64_t)x13 * x31)));
- uint64_t x41 = ((((uint64_t)(x11 + x21) * (x31 + x38)) + ((uint64_t)(x13 + x20) * (x29 + x39))) - (((uint64_t)x11 * x31) + ((uint64_t)x13 * x29)));
- uint64_t x42 = (((0x2 * ((uint64_t)(x9 + x19) * (x31 + x38))) + (((uint64_t)(x11 + x21) * (x29 + x39)) + (0x2 * ((uint64_t)(x13 + x20) * (x27 + x37))))) - ((0x2 * ((uint64_t)x9 * x31)) + (((uint64_t)x11 * x29) + (0x2 * ((uint64_t)x13 * x27)))));
- uint64_t x43 = (((0x2 * ((uint64_t)(x7 + x17) * (x31 + x38))) + ((0x2 * ((uint64_t)(x9 + x19) * (x29 + x39))) + ((0x2 * ((uint64_t)(x11 + x21) * (x27 + x37))) + (0x2 * ((uint64_t)(x13 + x20) * (x25 + x35)))))) - ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((0x2 * ((uint64_t)x11 * x27)) + (0x2 * ((uint64_t)x13 * x25))))));
- uint64_t x44 = ((((uint64_t)(x5 + x15) * (x31 + x38)) + (((uint64_t)(x7 + x17) * (x29 + x39)) + ((0x2 * ((uint64_t)(x9 + x19) * (x27 + x37))) + (((uint64_t)(x11 + x21) * (x25 + x35)) + ((uint64_t)(x13 + x20) * (x23 + x33)))))) - (((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + ((0x2 * ((uint64_t)x9 * x27)) + (((uint64_t)x11 * x25) + ((uint64_t)x13 * x23))))));
- uint64_t x45 = ((((uint64_t)(x5 + x15) * (x29 + x39)) + ((0x2 * ((uint64_t)(x7 + x17) * (x27 + x37))) + ((0x2 * ((uint64_t)(x9 + x19) * (x25 + x35))) + ((uint64_t)(x11 + x21) * (x23 + x33))))) - (((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((uint64_t)x11 * x23)))));
- uint64_t x46 = ((((uint64_t)(x5 + x15) * (x27 + x37)) + (((uint64_t)(x7 + x17) * (x25 + x35)) + ((uint64_t)(x9 + x19) * (x23 + x33)))) - (((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + ((uint64_t)x9 * x23))));
- uint64_t x47 = ((((uint64_t)(x5 + x15) * (x25 + x35)) + ((uint64_t)(x7 + x17) * (x23 + x33))) - (((uint64_t)x5 * x25) + ((uint64_t)x7 * x23)));
- uint64_t x48 = (((uint64_t)(x5 + x15) * (x23 + x33)) - ((uint64_t)x5 * x23));
- uint64_t x49 = ((((0x2 * ((uint64_t)x13 * x31)) + (0x2 * ((uint64_t)x20 * x38))) + x45) + x40);
- uint64_t x50 = ((((((uint64_t)x11 * x31) + ((uint64_t)x13 * x29)) + (((uint64_t)x21 * x38) + ((uint64_t)x20 * x39))) + x46) + x41);
- uint64_t x51 = (((((0x2 * ((uint64_t)x9 * x31)) + (((uint64_t)x11 * x29) + (0x2 * ((uint64_t)x13 * x27)))) + ((0x2 * ((uint64_t)x19 * x38)) + (((uint64_t)x21 * x39) + (0x2 * ((uint64_t)x20 * x37))))) + x47) + x42);
- uint64_t x52 = (((((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((0x2 * ((uint64_t)x11 * x27)) + (0x2 * ((uint64_t)x13 * x25))))) + ((0x2 * ((uint64_t)x17 * x38)) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + (0x2 * ((uint64_t)x20 * x35)))))) + x48) + x43);
- uint64_t x53 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + ((0x2 * ((uint64_t)x9 * x27)) + (((uint64_t)x11 * x25) + ((uint64_t)x13 * x23))))) + (((uint64_t)x15 * x38) + (((uint64_t)x17 * x39) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + ((uint64_t)x20 * x33))))));
- uint64_t x54 = (((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((uint64_t)x11 * x23)))) + (((uint64_t)x15 * x39) + ((0x2 * ((uint64_t)x17 * x37)) + ((0x2 * ((uint64_t)x19 * x35)) + ((uint64_t)x21 * x33))))) + x40);
- uint64_t x55 = (((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + ((uint64_t)x9 * x23))) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + ((uint64_t)x19 * x33)))) + x41);
- uint64_t x56 = (((((uint64_t)x5 * x25) + ((uint64_t)x7 * x23)) + (((uint64_t)x15 * x35) + ((uint64_t)x17 * x33))) + x42);
- uint64_t x57 = ((((uint64_t)x5 * x23) + ((uint64_t)x15 * x33)) + x43);
- uint32_t x58 = (uint32_t) (x53 >> 0x15);
- uint32_t x59 = ((uint32_t)x53 & 0x1fffff);
- uint32_t x60 = (uint32_t) (x44 >> 0x15);
- uint32_t x61 = ((uint32_t)x44 & 0x1fffff);
- uint64_t x62 = (((uint64_t)0x200000 * x60) + x61);
- uint32_t x63 = (uint32_t) (x62 >> 0x15);
- uint32_t x64 = ((uint32_t)x62 & 0x1fffff);
- uint64_t x65 = ((x58 + x52) + x63);
- uint32_t x66 = (uint32_t) (x65 >> 0x16);
- uint32_t x67 = ((uint32_t)x65 & 0x3fffff);
- uint64_t x68 = (x57 + x63);
- uint32_t x69 = (uint32_t) (x68 >> 0x16);
- uint32_t x70 = ((uint32_t)x68 & 0x3fffff);
- uint64_t x71 = (x66 + x51);
- uint32_t x72 = (uint32_t) (x71 >> 0x16);
- uint32_t x73 = ((uint32_t)x71 & 0x3fffff);
- uint64_t x74 = (x69 + x56);
- uint32_t x75 = (uint32_t) (x74 >> 0x16);
- uint32_t x76 = ((uint32_t)x74 & 0x3fffff);
- uint64_t x77 = (x72 + x50);
- uint32_t x78 = (uint32_t) (x77 >> 0x15);
- uint32_t x79 = ((uint32_t)x77 & 0x1fffff);
- uint64_t x80 = (x75 + x55);
- uint32_t x81 = (uint32_t) (x80 >> 0x15);
- uint32_t x82 = ((uint32_t)x80 & 0x1fffff);
- uint64_t x83 = (x78 + x49);
- uint32_t x84 = (uint32_t) (x83 >> 0x16);
- uint32_t x85 = ((uint32_t)x83 & 0x3fffff);
- uint64_t x86 = (x81 + x54);
- uint32_t x87 = (uint32_t) (x86 >> 0x16);
- uint32_t x88 = ((uint32_t)x86 & 0x3fffff);
- uint32_t x89 = (x84 + x64);
- uint32_t x90 = (x89 >> 0x15);
- uint32_t x91 = (x89 & 0x1fffff);
- uint32_t x92 = (x87 + x59);
- uint32_t x93 = (x92 >> 0x15);
- uint32_t x94 = (x92 & 0x1fffff);
- uint32_t x95 = ((0x200000 * x90) + x91);
- uint32_t x96 = (x95 >> 0x15);
- uint32_t x97 = (x95 & 0x1fffff);
- uint32_t x98 = ((x93 + x67) + x96);
- uint32_t x99 = (x98 >> 0x16);
- uint32_t x100 = (x98 & 0x3fffff);
- uint32_t x101 = (x70 + x96);
- uint32_t x102 = (x101 >> 0x16);
- uint32_t x103 = (x101 & 0x3fffff);
- return (Return x97, Return x85, Return x79, (x99 + x73), Return x100, Return x94, Return x88, Return x82, (x102 + x76), Return x103))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e216m2e108m1_10limbs/femulDisplay.v b/src/Specific/solinas32_2e216m2e108m1_10limbs/femulDisplay.v
deleted file mode 100644
index ef7cd3293..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_10limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e216m2e108m1_10limbs/fesquare.c b/src/Specific/solinas32_2e216m2e108m1_10limbs/fesquare.c
deleted file mode 100644
index f38e5623d..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/fesquare.c
+++ /dev/null
@@ -1,87 +0,0 @@
-static void fesquare(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x19 = ((0x2 * ((uint64_t)(x10 + x17) * (x10 + x17))) - (0x2 * ((uint64_t)x10 * x10)));
- { uint64_t x20 = ((((uint64_t)(x8 + x18) * (x10 + x17)) + ((uint64_t)(x10 + x17) * (x8 + x18))) - (((uint64_t)x8 * x10) + ((uint64_t)x10 * x8)));
- { uint64_t x21 = (((0x2 * ((uint64_t)(x6 + x16) * (x10 + x17))) + (((uint64_t)(x8 + x18) * (x8 + x18)) + (0x2 * ((uint64_t)(x10 + x17) * (x6 + x16))))) - ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + (0x2 * ((uint64_t)x10 * x6)))));
- { uint64_t x22 = (((0x2 * ((uint64_t)(x4 + x14) * (x10 + x17))) + ((0x2 * ((uint64_t)(x6 + x16) * (x8 + x18))) + ((0x2 * ((uint64_t)(x8 + x18) * (x6 + x16))) + (0x2 * ((uint64_t)(x10 + x17) * (x4 + x14)))))) - ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (0x2 * ((uint64_t)x10 * x4))))));
- { uint64_t x23 = ((((uint64_t)(x2 + x12) * (x10 + x17)) + (((uint64_t)(x4 + x14) * (x8 + x18)) + ((0x2 * ((uint64_t)(x6 + x16) * (x6 + x16))) + (((uint64_t)(x8 + x18) * (x4 + x14)) + ((uint64_t)(x10 + x17) * (x2 + x12)))))) - (((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))));
- { uint64_t x24 = ((((uint64_t)(x2 + x12) * (x8 + x18)) + ((0x2 * ((uint64_t)(x4 + x14) * (x6 + x16))) + ((0x2 * ((uint64_t)(x6 + x16) * (x4 + x14))) + ((uint64_t)(x8 + x18) * (x2 + x12))))) - (((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))));
- { uint64_t x25 = ((((uint64_t)(x2 + x12) * (x6 + x16)) + (((uint64_t)(x4 + x14) * (x4 + x14)) + ((uint64_t)(x6 + x16) * (x2 + x12)))) - (((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))));
- { uint64_t x26 = ((((uint64_t)(x2 + x12) * (x4 + x14)) + ((uint64_t)(x4 + x14) * (x2 + x12))) - (((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)));
- { uint64_t x27 = (((uint64_t)(x2 + x12) * (x2 + x12)) - ((uint64_t)x2 * x2));
- { uint64_t x28 = ((((0x2 * ((uint64_t)x10 * x10)) + (0x2 * ((uint64_t)x17 * x17))) + x24) + x19);
- { uint64_t x29 = ((((((uint64_t)x8 * x10) + ((uint64_t)x10 * x8)) + (((uint64_t)x18 * x17) + ((uint64_t)x17 * x18))) + x25) + x20);
- { uint64_t x30 = (((((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + (0x2 * ((uint64_t)x10 * x6)))) + ((0x2 * ((uint64_t)x16 * x17)) + (((uint64_t)x18 * x18) + (0x2 * ((uint64_t)x17 * x16))))) + x26) + x21);
- { uint64_t x31 = (((((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (0x2 * ((uint64_t)x10 * x4))))) + ((0x2 * ((uint64_t)x14 * x17)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (0x2 * ((uint64_t)x17 * x14)))))) + x27) + x22);
- { uint64_t x32 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (((uint64_t)x12 * x17) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + ((uint64_t)x17 * x12))))));
- { uint64_t x33 = (((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((uint64_t)x18 * x12))))) + x19);
- { uint64_t x34 = (((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + ((uint64_t)x16 * x12)))) + x20);
- { uint64_t x35 = (((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x12 * x14) + ((uint64_t)x14 * x12))) + x21);
- { uint64_t x36 = ((((uint64_t)x2 * x2) + ((uint64_t)x12 * x12)) + x22);
- { uint32_t x37 = (uint32_t) (x32 >> 0x15);
- { uint32_t x38 = ((uint32_t)x32 & 0x1fffff);
- { uint32_t x39 = (uint32_t) (x23 >> 0x15);
- { uint32_t x40 = ((uint32_t)x23 & 0x1fffff);
- { uint64_t x41 = (((uint64_t)0x200000 * x39) + x40);
- { uint32_t x42 = (uint32_t) (x41 >> 0x15);
- { uint32_t x43 = ((uint32_t)x41 & 0x1fffff);
- { uint64_t x44 = ((x37 + x31) + x42);
- { uint32_t x45 = (uint32_t) (x44 >> 0x16);
- { uint32_t x46 = ((uint32_t)x44 & 0x3fffff);
- { uint64_t x47 = (x36 + x42);
- { uint32_t x48 = (uint32_t) (x47 >> 0x16);
- { uint32_t x49 = ((uint32_t)x47 & 0x3fffff);
- { uint64_t x50 = (x45 + x30);
- { uint32_t x51 = (uint32_t) (x50 >> 0x16);
- { uint32_t x52 = ((uint32_t)x50 & 0x3fffff);
- { uint64_t x53 = (x48 + x35);
- { uint32_t x54 = (uint32_t) (x53 >> 0x16);
- { uint32_t x55 = ((uint32_t)x53 & 0x3fffff);
- { uint64_t x56 = (x51 + x29);
- { uint32_t x57 = (uint32_t) (x56 >> 0x15);
- { uint32_t x58 = ((uint32_t)x56 & 0x1fffff);
- { uint64_t x59 = (x54 + x34);
- { uint32_t x60 = (uint32_t) (x59 >> 0x15);
- { uint32_t x61 = ((uint32_t)x59 & 0x1fffff);
- { uint64_t x62 = (x57 + x28);
- { uint32_t x63 = (uint32_t) (x62 >> 0x16);
- { uint32_t x64 = ((uint32_t)x62 & 0x3fffff);
- { uint64_t x65 = (x60 + x33);
- { uint32_t x66 = (uint32_t) (x65 >> 0x16);
- { uint32_t x67 = ((uint32_t)x65 & 0x3fffff);
- { uint32_t x68 = (x63 + x43);
- { uint32_t x69 = (x68 >> 0x15);
- { uint32_t x70 = (x68 & 0x1fffff);
- { uint32_t x71 = (x66 + x38);
- { uint32_t x72 = (x71 >> 0x15);
- { uint32_t x73 = (x71 & 0x1fffff);
- { uint32_t x74 = ((0x200000 * x69) + x70);
- { uint32_t x75 = (x74 >> 0x15);
- { uint32_t x76 = (x74 & 0x1fffff);
- { uint32_t x77 = ((x72 + x46) + x75);
- { uint32_t x78 = (x77 >> 0x16);
- { uint32_t x79 = (x77 & 0x3fffff);
- { uint32_t x80 = (x49 + x75);
- { uint32_t x81 = (x80 >> 0x16);
- { uint32_t x82 = (x80 & 0x3fffff);
- out[0] = x82;
- out[1] = (x81 + x55);
- out[2] = x61;
- out[3] = x67;
- out[4] = x73;
- out[5] = x79;
- out[6] = (x78 + x52);
- out[7] = x58;
- out[8] = x64;
- out[9] = x76;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e216m2e108m1_10limbs/fesquare.v b/src/Specific/solinas32_2e216m2e108m1_10limbs/fesquare.v
deleted file mode 100644
index 1ff9fb27f..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_10limbs.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_2e216m2e108m1_10limbs/fesquareDisplay.log b/src/Specific/solinas32_2e216m2e108m1_10limbs/fesquareDisplay.log
deleted file mode 100644
index 9ccf95bb8..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,71 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x19 = ((0x2 * ((uint64_t)(x10 + x17) * (x10 + x17))) - (0x2 * ((uint64_t)x10 * x10)));
- uint64_t x20 = ((((uint64_t)(x8 + x18) * (x10 + x17)) + ((uint64_t)(x10 + x17) * (x8 + x18))) - (((uint64_t)x8 * x10) + ((uint64_t)x10 * x8)));
- uint64_t x21 = (((0x2 * ((uint64_t)(x6 + x16) * (x10 + x17))) + (((uint64_t)(x8 + x18) * (x8 + x18)) + (0x2 * ((uint64_t)(x10 + x17) * (x6 + x16))))) - ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + (0x2 * ((uint64_t)x10 * x6)))));
- uint64_t x22 = (((0x2 * ((uint64_t)(x4 + x14) * (x10 + x17))) + ((0x2 * ((uint64_t)(x6 + x16) * (x8 + x18))) + ((0x2 * ((uint64_t)(x8 + x18) * (x6 + x16))) + (0x2 * ((uint64_t)(x10 + x17) * (x4 + x14)))))) - ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (0x2 * ((uint64_t)x10 * x4))))));
- uint64_t x23 = ((((uint64_t)(x2 + x12) * (x10 + x17)) + (((uint64_t)(x4 + x14) * (x8 + x18)) + ((0x2 * ((uint64_t)(x6 + x16) * (x6 + x16))) + (((uint64_t)(x8 + x18) * (x4 + x14)) + ((uint64_t)(x10 + x17) * (x2 + x12)))))) - (((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))));
- uint64_t x24 = ((((uint64_t)(x2 + x12) * (x8 + x18)) + ((0x2 * ((uint64_t)(x4 + x14) * (x6 + x16))) + ((0x2 * ((uint64_t)(x6 + x16) * (x4 + x14))) + ((uint64_t)(x8 + x18) * (x2 + x12))))) - (((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))));
- uint64_t x25 = ((((uint64_t)(x2 + x12) * (x6 + x16)) + (((uint64_t)(x4 + x14) * (x4 + x14)) + ((uint64_t)(x6 + x16) * (x2 + x12)))) - (((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))));
- uint64_t x26 = ((((uint64_t)(x2 + x12) * (x4 + x14)) + ((uint64_t)(x4 + x14) * (x2 + x12))) - (((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)));
- uint64_t x27 = (((uint64_t)(x2 + x12) * (x2 + x12)) - ((uint64_t)x2 * x2));
- uint64_t x28 = ((((0x2 * ((uint64_t)x10 * x10)) + (0x2 * ((uint64_t)x17 * x17))) + x24) + x19);
- uint64_t x29 = ((((((uint64_t)x8 * x10) + ((uint64_t)x10 * x8)) + (((uint64_t)x18 * x17) + ((uint64_t)x17 * x18))) + x25) + x20);
- uint64_t x30 = (((((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + (0x2 * ((uint64_t)x10 * x6)))) + ((0x2 * ((uint64_t)x16 * x17)) + (((uint64_t)x18 * x18) + (0x2 * ((uint64_t)x17 * x16))))) + x26) + x21);
- uint64_t x31 = (((((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (0x2 * ((uint64_t)x10 * x4))))) + ((0x2 * ((uint64_t)x14 * x17)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (0x2 * ((uint64_t)x17 * x14)))))) + x27) + x22);
- uint64_t x32 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (((uint64_t)x12 * x17) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + ((uint64_t)x17 * x12))))));
- uint64_t x33 = (((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((uint64_t)x18 * x12))))) + x19);
- uint64_t x34 = (((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + ((uint64_t)x16 * x12)))) + x20);
- uint64_t x35 = (((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x12 * x14) + ((uint64_t)x14 * x12))) + x21);
- uint64_t x36 = ((((uint64_t)x2 * x2) + ((uint64_t)x12 * x12)) + x22);
- uint32_t x37 = (uint32_t) (x32 >> 0x15);
- uint32_t x38 = ((uint32_t)x32 & 0x1fffff);
- uint32_t x39 = (uint32_t) (x23 >> 0x15);
- uint32_t x40 = ((uint32_t)x23 & 0x1fffff);
- uint64_t x41 = (((uint64_t)0x200000 * x39) + x40);
- uint32_t x42 = (uint32_t) (x41 >> 0x15);
- uint32_t x43 = ((uint32_t)x41 & 0x1fffff);
- uint64_t x44 = ((x37 + x31) + x42);
- uint32_t x45 = (uint32_t) (x44 >> 0x16);
- uint32_t x46 = ((uint32_t)x44 & 0x3fffff);
- uint64_t x47 = (x36 + x42);
- uint32_t x48 = (uint32_t) (x47 >> 0x16);
- uint32_t x49 = ((uint32_t)x47 & 0x3fffff);
- uint64_t x50 = (x45 + x30);
- uint32_t x51 = (uint32_t) (x50 >> 0x16);
- uint32_t x52 = ((uint32_t)x50 & 0x3fffff);
- uint64_t x53 = (x48 + x35);
- uint32_t x54 = (uint32_t) (x53 >> 0x16);
- uint32_t x55 = ((uint32_t)x53 & 0x3fffff);
- uint64_t x56 = (x51 + x29);
- uint32_t x57 = (uint32_t) (x56 >> 0x15);
- uint32_t x58 = ((uint32_t)x56 & 0x1fffff);
- uint64_t x59 = (x54 + x34);
- uint32_t x60 = (uint32_t) (x59 >> 0x15);
- uint32_t x61 = ((uint32_t)x59 & 0x1fffff);
- uint64_t x62 = (x57 + x28);
- uint32_t x63 = (uint32_t) (x62 >> 0x16);
- uint32_t x64 = ((uint32_t)x62 & 0x3fffff);
- uint64_t x65 = (x60 + x33);
- uint32_t x66 = (uint32_t) (x65 >> 0x16);
- uint32_t x67 = ((uint32_t)x65 & 0x3fffff);
- uint32_t x68 = (x63 + x43);
- uint32_t x69 = (x68 >> 0x15);
- uint32_t x70 = (x68 & 0x1fffff);
- uint32_t x71 = (x66 + x38);
- uint32_t x72 = (x71 >> 0x15);
- uint32_t x73 = (x71 & 0x1fffff);
- uint32_t x74 = ((0x200000 * x69) + x70);
- uint32_t x75 = (x74 >> 0x15);
- uint32_t x76 = (x74 & 0x1fffff);
- uint32_t x77 = ((x72 + x46) + x75);
- uint32_t x78 = (x77 >> 0x16);
- uint32_t x79 = (x77 & 0x3fffff);
- uint32_t x80 = (x49 + x75);
- uint32_t x81 = (x80 >> 0x16);
- uint32_t x82 = (x80 & 0x3fffff);
- return (Return x76, Return x64, Return x58, (x78 + x52), Return x79, Return x73, Return x67, Return x61, (x81 + x55), Return x82))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e216m2e108m1_10limbs/fesquareDisplay.v b/src/Specific/solinas32_2e216m2e108m1_10limbs/fesquareDisplay.v
deleted file mode 100644
index 7030e585a..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_10limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e216m2e108m1_10limbs/fesub.c b/src/Specific/solinas32_2e216m2e108m1_10limbs/fesub.c
deleted file mode 100644
index fabbee8b4..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/fesub.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fesub(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- out[0] = ((0x7ffffe + x5) - x23);
- out[1] = ((0x7ffffe + x7) - x25);
- out[2] = ((0x3ffffe + x9) - x27);
- out[3] = ((0x7ffffe + x11) - x29);
- out[4] = ((0x3ffffe + x13) - x31);
- out[5] = ((0x7ffffc + x15) - x33);
- out[6] = ((0x7ffffe + x17) - x35);
- out[7] = ((0x3ffffe + x19) - x37);
- out[8] = ((0x7ffffe + x21) - x39);
- out[9] = ((0x3ffffe + x20) - x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e216m2e108m1_10limbs/fesub.v b/src/Specific/solinas32_2e216m2e108m1_10limbs/fesub.v
deleted file mode 100644
index fcb9703ef..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_10limbs.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_2e216m2e108m1_10limbs/fesubDisplay.log b/src/Specific/solinas32_2e216m2e108m1_10limbs/fesubDisplay.log
deleted file mode 100644
index a2cb16be9..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- (((0x3ffffe + x20) - x38), ((0x7ffffe + x21) - x39), ((0x3ffffe + x19) - x37), ((0x7ffffe + x17) - x35), ((0x7ffffc + x15) - x33), ((0x3ffffe + x13) - x31), ((0x7ffffe + x11) - x29), ((0x3ffffe + x9) - x27), ((0x7ffffe + x7) - x25), ((0x7ffffe + x5) - x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e216m2e108m1_10limbs/fesubDisplay.v b/src/Specific/solinas32_2e216m2e108m1_10limbs/fesubDisplay.v
deleted file mode 100644
index 402cd4b29..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_10limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e216m2e108m1_10limbs/freeze.c b/src/Specific/solinas32_2e216m2e108m1_10limbs/freeze.c
deleted file mode 100644
index c9d38d77e..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/freeze.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void freeze(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffff);
- { uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x4, 0x3fffff);
- { uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x6, 0x1fffff);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x8, 0x3fffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x10, 0x1fffff);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x12, 0x3ffffe);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x14, 0x3fffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x16, 0x1fffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x18, 0x3fffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x17, 0x1fffff);
- { uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- { uint32_t x50 = (x49 & 0x3fffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- { uint32_t x54 = (x49 & 0x3fffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- { uint32_t x58 = (x49 & 0x1fffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- { uint32_t x62 = (x49 & 0x3fffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- { uint32_t x66 = (x49 & 0x1fffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- { uint32_t x70 = (x49 & 0x3ffffe);
- { uint32_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- { uint32_t x74 = (x49 & 0x3fffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- { uint32_t x78 = (x49 & 0x1fffff);
- { uint32_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- { uint32_t x82 = (x49 & 0x3fffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- { uint32_t x86 = (x49 & 0x1fffff);
- { uint32_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- out[0] = x52;
- out[1] = x56;
- out[2] = x60;
- out[3] = x64;
- out[4] = x68;
- out[5] = x72;
- out[6] = x76;
- out[7] = x80;
- out[8] = x84;
- out[9] = x88;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e216m2e108m1_10limbs/freeze.v b/src/Specific/solinas32_2e216m2e108m1_10limbs/freeze.v
deleted file mode 100644
index 87a324611..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_10limbs.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_2e216m2e108m1_10limbs/freezeDisplay.log b/src/Specific/solinas32_2e216m2e108m1_10limbs/freezeDisplay.log
deleted file mode 100644
index 4d7d71eea..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffff);
- uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x4, 0x3fffff);
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x6, 0x1fffff);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x8, 0x3fffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x10, 0x1fffff);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x12, 0x3ffffe);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x14, 0x3fffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x16, 0x1fffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x18, 0x3fffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x17, 0x1fffff);
- uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- uint32_t x50 = (x49 & 0x3fffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- uint32_t x54 = (x49 & 0x3fffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- uint32_t x58 = (x49 & 0x1fffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- uint32_t x62 = (x49 & 0x3fffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- uint32_t x66 = (x49 & 0x1fffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- uint32_t x70 = (x49 & 0x3ffffe);
- uint32_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- uint32_t x74 = (x49 & 0x3fffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- uint32_t x78 = (x49 & 0x1fffff);
- uint32_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- uint32_t x82 = (x49 & 0x3fffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- uint32_t x86 = (x49 & 0x1fffff);
- uint32_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- (Return x88, Return x84, Return x80, Return x76, Return x72, Return x68, Return x64, Return x60, Return x56, Return x52))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e216m2e108m1_10limbs/freezeDisplay.v b/src/Specific/solinas32_2e216m2e108m1_10limbs/freezeDisplay.v
deleted file mode 100644
index 576c37352..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_10limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e216m2e108m1_10limbs/py_interpreter.sh b/src/Specific/solinas32_2e216m2e108m1_10limbs/py_interpreter.sh
deleted file mode 100755
index b3ffc91d8..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_10limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**216 - 2**108 - 1' -Dmodulus_bytes='21.6' -Da24='121665'
diff --git a/src/Specific/solinas32_2e216m2e108m1_8limbs/CurveParameters.v b/src/Specific/solinas32_2e216m2e108m1_8limbs/CurveParameters.v
deleted file mode 100644
index c780f984b..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^216 - 2^108 - 1
-Base: 27
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 27;
- bitwidth := 32;
- s := 2^216;
- c := [(1, 1); (2^108, 1)];
- carry_chains := Some [[3; 7]; [4; 0; 5; 1; 6; 2; 7; 3]; [4; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- 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_2e216m2e108m1_8limbs/Synthesis.v b/src/Specific/solinas32_2e216m2e108m1_8limbs/Synthesis.v
deleted file mode 100644
index c5af7afed..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_8limbs.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_2e216m2e108m1_8limbs/compiler.sh b/src/Specific/solinas32_2e216m2e108m1_8limbs/compiler.sh
deleted file mode 100755
index 3ee47b664..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27,27}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' "$@"
diff --git a/src/Specific/solinas32_2e216m2e108m1_8limbs/compilerxx.sh b/src/Specific/solinas32_2e216m2e108m1_8limbs/compilerxx.sh
deleted file mode 100755
index 2f32911fc..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27,27}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' "$@"
diff --git a/src/Specific/solinas32_2e216m2e108m1_8limbs/feadd.c b/src/Specific/solinas32_2e216m2e108m1_8limbs/feadd.c
deleted file mode 100644
index cc3671f75..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e216m2e108m1_8limbs/feadd.v b/src/Specific/solinas32_2e216m2e108m1_8limbs/feadd.v
deleted file mode 100644
index a8f93eea3..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_8limbs.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_2e216m2e108m1_8limbs/feaddDisplay.log b/src/Specific/solinas32_2e216m2e108m1_8limbs/feaddDisplay.log
deleted file mode 100644
index f25c10903..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e216m2e108m1_8limbs/feaddDisplay.v b/src/Specific/solinas32_2e216m2e108m1_8limbs/feaddDisplay.v
deleted file mode 100644
index 5e0c39b49..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e216m2e108m1_8limbs/fecarry.v b/src/Specific/solinas32_2e216m2e108m1_8limbs/fecarry.v
deleted file mode 100644
index 5b96c1d32..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_8limbs.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_2e216m2e108m1_8limbs/fecarryDisplay.v b/src/Specific/solinas32_2e216m2e108m1_8limbs/fecarryDisplay.v
deleted file mode 100644
index 7b1d0d859..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e216m2e108m1_8limbs/femul.c b/src/Specific/solinas32_2e216m2e108m1_8limbs/femul.c
deleted file mode 100644
index 4a4e096c7..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/femul.c
+++ /dev/null
@@ -1,81 +0,0 @@
-static void femul(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint64_t x32 = (((uint64_t)(x11 + x16) * (x25 + x30)) - ((uint64_t)x11 * x25));
- { uint64_t x33 = ((((uint64_t)(x9 + x17) * (x25 + x30)) + ((uint64_t)(x11 + x16) * (x23 + x31))) - (((uint64_t)x9 * x25) + ((uint64_t)x11 * x23)));
- { uint64_t x34 = ((((uint64_t)(x7 + x15) * (x25 + x30)) + (((uint64_t)(x9 + x17) * (x23 + x31)) + ((uint64_t)(x11 + x16) * (x21 + x29)))) - (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + ((uint64_t)x11 * x21))));
- { uint64_t x35 = ((((uint64_t)(x5 + x13) * (x25 + x30)) + (((uint64_t)(x7 + x15) * (x23 + x31)) + (((uint64_t)(x9 + x17) * (x21 + x29)) + ((uint64_t)(x11 + x16) * (x19 + x27))))) - (((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + ((uint64_t)x11 * x19)))));
- { uint64_t x36 = ((((uint64_t)(x5 + x13) * (x23 + x31)) + (((uint64_t)(x7 + x15) * (x21 + x29)) + ((uint64_t)(x9 + x17) * (x19 + x27)))) - (((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((uint64_t)x9 * x19))));
- { uint64_t x37 = ((((uint64_t)(x5 + x13) * (x21 + x29)) + ((uint64_t)(x7 + x15) * (x19 + x27))) - (((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)));
- { uint64_t x38 = (((uint64_t)(x5 + x13) * (x19 + x27)) - ((uint64_t)x5 * x19));
- { uint64_t x39 = (((((uint64_t)x11 * x25) + ((uint64_t)x16 * x30)) + x36) + x32);
- { uint64_t x40 = ((((((uint64_t)x9 * x25) + ((uint64_t)x11 * x23)) + (((uint64_t)x17 * x30) + ((uint64_t)x16 * x31))) + x37) + x33);
- { uint64_t x41 = ((((((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + ((uint64_t)x11 * x21))) + (((uint64_t)x15 * x30) + (((uint64_t)x17 * x31) + ((uint64_t)x16 * x29)))) + x38) + x34);
- { uint64_t x42 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + ((uint64_t)x11 * x19)))) + (((uint64_t)x13 * x30) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x16 * x27)))));
- { uint64_t x43 = (((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((uint64_t)x9 * x19))) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + ((uint64_t)x17 * x27)))) + x32);
- { uint64_t x44 = (((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (((uint64_t)x13 * x29) + ((uint64_t)x15 * x27))) + x33);
- { uint64_t x45 = ((((uint64_t)x5 * x19) + ((uint64_t)x13 * x27)) + x34);
- { uint64_t x46 = (x42 >> 0x1b);
- { uint32_t x47 = ((uint32_t)x42 & 0x7ffffff);
- { uint64_t x48 = (x35 >> 0x1b);
- { uint32_t x49 = ((uint32_t)x35 & 0x7ffffff);
- { uint64_t x50 = ((0x8000000 * x48) + x49);
- { uint64_t x51 = (x50 >> 0x1b);
- { uint32_t x52 = ((uint32_t)x50 & 0x7ffffff);
- { uint64_t x53 = ((x46 + x41) + x51);
- { uint64_t x54 = (x53 >> 0x1b);
- { uint32_t x55 = ((uint32_t)x53 & 0x7ffffff);
- { uint64_t x56 = (x45 + x51);
- { uint64_t x57 = (x56 >> 0x1b);
- { uint32_t x58 = ((uint32_t)x56 & 0x7ffffff);
- { uint64_t x59 = (x54 + x40);
- { uint64_t x60 = (x59 >> 0x1b);
- { uint32_t x61 = ((uint32_t)x59 & 0x7ffffff);
- { uint64_t x62 = (x57 + x44);
- { uint64_t x63 = (x62 >> 0x1b);
- { uint32_t x64 = ((uint32_t)x62 & 0x7ffffff);
- { uint64_t x65 = (x60 + x39);
- { uint64_t x66 = (x65 >> 0x1b);
- { uint32_t x67 = ((uint32_t)x65 & 0x7ffffff);
- { uint64_t x68 = (x63 + x43);
- { uint64_t x69 = (x68 >> 0x1b);
- { uint32_t x70 = ((uint32_t)x68 & 0x7ffffff);
- { uint64_t x71 = (x66 + x52);
- { uint32_t x72 = (uint32_t) (x71 >> 0x1b);
- { uint32_t x73 = ((uint32_t)x71 & 0x7ffffff);
- { uint64_t x74 = (x69 + x47);
- { uint32_t x75 = (uint32_t) (x74 >> 0x1b);
- { uint32_t x76 = ((uint32_t)x74 & 0x7ffffff);
- { uint64_t x77 = (((uint64_t)0x8000000 * x72) + x73);
- { uint32_t x78 = (uint32_t) (x77 >> 0x1b);
- { uint32_t x79 = ((uint32_t)x77 & 0x7ffffff);
- { uint32_t x80 = ((x75 + x55) + x78);
- { uint32_t x81 = (x80 >> 0x1b);
- { uint32_t x82 = (x80 & 0x7ffffff);
- { uint32_t x83 = (x58 + x78);
- { uint32_t x84 = (x83 >> 0x1b);
- { uint32_t x85 = (x83 & 0x7ffffff);
- out[0] = x85;
- out[1] = (x84 + x64);
- out[2] = x70;
- out[3] = x76;
- out[4] = x82;
- out[5] = (x81 + x61);
- out[6] = x67;
- out[7] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e216m2e108m1_8limbs/femul.v b/src/Specific/solinas32_2e216m2e108m1_8limbs/femul.v
deleted file mode 100644
index 499abb395..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_8limbs.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_2e216m2e108m1_8limbs/femulDisplay.log b/src/Specific/solinas32_2e216m2e108m1_8limbs/femulDisplay.log
deleted file mode 100644
index 64839d2fe..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,61 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x32 = (((uint64_t)(x11 + x16) * (x25 + x30)) - ((uint64_t)x11 * x25));
- uint64_t x33 = ((((uint64_t)(x9 + x17) * (x25 + x30)) + ((uint64_t)(x11 + x16) * (x23 + x31))) - (((uint64_t)x9 * x25) + ((uint64_t)x11 * x23)));
- uint64_t x34 = ((((uint64_t)(x7 + x15) * (x25 + x30)) + (((uint64_t)(x9 + x17) * (x23 + x31)) + ((uint64_t)(x11 + x16) * (x21 + x29)))) - (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + ((uint64_t)x11 * x21))));
- uint64_t x35 = ((((uint64_t)(x5 + x13) * (x25 + x30)) + (((uint64_t)(x7 + x15) * (x23 + x31)) + (((uint64_t)(x9 + x17) * (x21 + x29)) + ((uint64_t)(x11 + x16) * (x19 + x27))))) - (((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + ((uint64_t)x11 * x19)))));
- uint64_t x36 = ((((uint64_t)(x5 + x13) * (x23 + x31)) + (((uint64_t)(x7 + x15) * (x21 + x29)) + ((uint64_t)(x9 + x17) * (x19 + x27)))) - (((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((uint64_t)x9 * x19))));
- uint64_t x37 = ((((uint64_t)(x5 + x13) * (x21 + x29)) + ((uint64_t)(x7 + x15) * (x19 + x27))) - (((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)));
- uint64_t x38 = (((uint64_t)(x5 + x13) * (x19 + x27)) - ((uint64_t)x5 * x19));
- uint64_t x39 = (((((uint64_t)x11 * x25) + ((uint64_t)x16 * x30)) + x36) + x32);
- uint64_t x40 = ((((((uint64_t)x9 * x25) + ((uint64_t)x11 * x23)) + (((uint64_t)x17 * x30) + ((uint64_t)x16 * x31))) + x37) + x33);
- uint64_t x41 = ((((((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + ((uint64_t)x11 * x21))) + (((uint64_t)x15 * x30) + (((uint64_t)x17 * x31) + ((uint64_t)x16 * x29)))) + x38) + x34);
- uint64_t x42 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + (((uint64_t)x9 * x21) + ((uint64_t)x11 * x19)))) + (((uint64_t)x13 * x30) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x16 * x27)))));
- uint64_t x43 = (((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((uint64_t)x9 * x19))) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + ((uint64_t)x17 * x27)))) + x32);
- uint64_t x44 = (((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (((uint64_t)x13 * x29) + ((uint64_t)x15 * x27))) + x33);
- uint64_t x45 = ((((uint64_t)x5 * x19) + ((uint64_t)x13 * x27)) + x34);
- uint64_t x46 = (x42 >> 0x1b);
- uint32_t x47 = ((uint32_t)x42 & 0x7ffffff);
- uint64_t x48 = (x35 >> 0x1b);
- uint32_t x49 = ((uint32_t)x35 & 0x7ffffff);
- uint64_t x50 = ((0x8000000 * x48) + x49);
- uint64_t x51 = (x50 >> 0x1b);
- uint32_t x52 = ((uint32_t)x50 & 0x7ffffff);
- uint64_t x53 = ((x46 + x41) + x51);
- uint64_t x54 = (x53 >> 0x1b);
- uint32_t x55 = ((uint32_t)x53 & 0x7ffffff);
- uint64_t x56 = (x45 + x51);
- uint64_t x57 = (x56 >> 0x1b);
- uint32_t x58 = ((uint32_t)x56 & 0x7ffffff);
- uint64_t x59 = (x54 + x40);
- uint64_t x60 = (x59 >> 0x1b);
- uint32_t x61 = ((uint32_t)x59 & 0x7ffffff);
- uint64_t x62 = (x57 + x44);
- uint64_t x63 = (x62 >> 0x1b);
- uint32_t x64 = ((uint32_t)x62 & 0x7ffffff);
- uint64_t x65 = (x60 + x39);
- uint64_t x66 = (x65 >> 0x1b);
- uint32_t x67 = ((uint32_t)x65 & 0x7ffffff);
- uint64_t x68 = (x63 + x43);
- uint64_t x69 = (x68 >> 0x1b);
- uint32_t x70 = ((uint32_t)x68 & 0x7ffffff);
- uint64_t x71 = (x66 + x52);
- uint32_t x72 = (uint32_t) (x71 >> 0x1b);
- uint32_t x73 = ((uint32_t)x71 & 0x7ffffff);
- uint64_t x74 = (x69 + x47);
- uint32_t x75 = (uint32_t) (x74 >> 0x1b);
- uint32_t x76 = ((uint32_t)x74 & 0x7ffffff);
- uint64_t x77 = (((uint64_t)0x8000000 * x72) + x73);
- uint32_t x78 = (uint32_t) (x77 >> 0x1b);
- uint32_t x79 = ((uint32_t)x77 & 0x7ffffff);
- uint32_t x80 = ((x75 + x55) + x78);
- uint32_t x81 = (x80 >> 0x1b);
- uint32_t x82 = (x80 & 0x7ffffff);
- uint32_t x83 = (x58 + x78);
- uint32_t x84 = (x83 >> 0x1b);
- uint32_t x85 = (x83 & 0x7ffffff);
- return (Return x79, Return x67, (x81 + x61), Return x82, Return x76, Return x70, (x84 + x64), Return x85))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e216m2e108m1_8limbs/femulDisplay.v b/src/Specific/solinas32_2e216m2e108m1_8limbs/femulDisplay.v
deleted file mode 100644
index 4df3e5f0c..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e216m2e108m1_8limbs/fesquare.c b/src/Specific/solinas32_2e216m2e108m1_8limbs/fesquare.c
deleted file mode 100644
index aee2bd170..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/fesquare.c
+++ /dev/null
@@ -1,73 +0,0 @@
-static void fesquare(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (((uint64_t)(x8 + x13) * (x8 + x13)) - ((uint64_t)x8 * x8));
- { uint64_t x16 = ((((uint64_t)(x6 + x14) * (x8 + x13)) + ((uint64_t)(x8 + x13) * (x6 + x14))) - (((uint64_t)x6 * x8) + ((uint64_t)x8 * x6)));
- { uint64_t x17 = ((((uint64_t)(x4 + x12) * (x8 + x13)) + (((uint64_t)(x6 + x14) * (x6 + x14)) + ((uint64_t)(x8 + x13) * (x4 + x12)))) - (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + ((uint64_t)x8 * x4))));
- { uint64_t x18 = ((((uint64_t)(x2 + x10) * (x8 + x13)) + (((uint64_t)(x4 + x12) * (x6 + x14)) + (((uint64_t)(x6 + x14) * (x4 + x12)) + ((uint64_t)(x8 + x13) * (x2 + x10))))) - (((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))));
- { uint64_t x19 = ((((uint64_t)(x2 + x10) * (x6 + x14)) + (((uint64_t)(x4 + x12) * (x4 + x12)) + ((uint64_t)(x6 + x14) * (x2 + x10)))) - (((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))));
- { uint64_t x20 = ((((uint64_t)(x2 + x10) * (x4 + x12)) + ((uint64_t)(x4 + x12) * (x2 + x10))) - (((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)));
- { uint64_t x21 = (((uint64_t)(x2 + x10) * (x2 + x10)) - ((uint64_t)x2 * x2));
- { uint64_t x22 = (((((uint64_t)x8 * x8) + ((uint64_t)x13 * x13)) + x19) + x15);
- { uint64_t x23 = ((((((uint64_t)x6 * x8) + ((uint64_t)x8 * x6)) + (((uint64_t)x14 * x13) + ((uint64_t)x13 * x14))) + x20) + x16);
- { uint64_t x24 = ((((((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + ((uint64_t)x8 * x4))) + (((uint64_t)x12 * x13) + (((uint64_t)x14 * x14) + ((uint64_t)x13 * x12)))) + x21) + x17);
- { uint64_t x25 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (((uint64_t)x10 * x13) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x13 * x10)))));
- { uint64_t x26 = (((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + ((uint64_t)x14 * x10)))) + x15);
- { uint64_t x27 = (((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x10 * x12) + ((uint64_t)x12 * x10))) + x16);
- { uint64_t x28 = ((((uint64_t)x2 * x2) + ((uint64_t)x10 * x10)) + x17);
- { uint64_t x29 = (x25 >> 0x1b);
- { uint32_t x30 = ((uint32_t)x25 & 0x7ffffff);
- { uint64_t x31 = (x18 >> 0x1b);
- { uint32_t x32 = ((uint32_t)x18 & 0x7ffffff);
- { uint64_t x33 = ((0x8000000 * x31) + x32);
- { uint64_t x34 = (x33 >> 0x1b);
- { uint32_t x35 = ((uint32_t)x33 & 0x7ffffff);
- { uint64_t x36 = ((x29 + x24) + x34);
- { uint64_t x37 = (x36 >> 0x1b);
- { uint32_t x38 = ((uint32_t)x36 & 0x7ffffff);
- { uint64_t x39 = (x28 + x34);
- { uint64_t x40 = (x39 >> 0x1b);
- { uint32_t x41 = ((uint32_t)x39 & 0x7ffffff);
- { uint64_t x42 = (x37 + x23);
- { uint64_t x43 = (x42 >> 0x1b);
- { uint32_t x44 = ((uint32_t)x42 & 0x7ffffff);
- { uint64_t x45 = (x40 + x27);
- { uint64_t x46 = (x45 >> 0x1b);
- { uint32_t x47 = ((uint32_t)x45 & 0x7ffffff);
- { uint64_t x48 = (x43 + x22);
- { uint64_t x49 = (x48 >> 0x1b);
- { uint32_t x50 = ((uint32_t)x48 & 0x7ffffff);
- { uint64_t x51 = (x46 + x26);
- { uint64_t x52 = (x51 >> 0x1b);
- { uint32_t x53 = ((uint32_t)x51 & 0x7ffffff);
- { uint64_t x54 = (x49 + x35);
- { uint32_t x55 = (uint32_t) (x54 >> 0x1b);
- { uint32_t x56 = ((uint32_t)x54 & 0x7ffffff);
- { uint64_t x57 = (x52 + x30);
- { uint32_t x58 = (uint32_t) (x57 >> 0x1b);
- { uint32_t x59 = ((uint32_t)x57 & 0x7ffffff);
- { uint64_t x60 = (((uint64_t)0x8000000 * x55) + x56);
- { uint32_t x61 = (uint32_t) (x60 >> 0x1b);
- { uint32_t x62 = ((uint32_t)x60 & 0x7ffffff);
- { uint32_t x63 = ((x58 + x38) + x61);
- { uint32_t x64 = (x63 >> 0x1b);
- { uint32_t x65 = (x63 & 0x7ffffff);
- { uint32_t x66 = (x41 + x61);
- { uint32_t x67 = (x66 >> 0x1b);
- { uint32_t x68 = (x66 & 0x7ffffff);
- out[0] = x68;
- out[1] = (x67 + x47);
- out[2] = x53;
- out[3] = x59;
- out[4] = x65;
- out[5] = (x64 + x44);
- out[6] = x50;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e216m2e108m1_8limbs/fesquare.v b/src/Specific/solinas32_2e216m2e108m1_8limbs/fesquare.v
deleted file mode 100644
index 4552db923..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_8limbs.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_2e216m2e108m1_8limbs/fesquareDisplay.log b/src/Specific/solinas32_2e216m2e108m1_8limbs/fesquareDisplay.log
deleted file mode 100644
index fe3bc9190..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,61 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (((uint64_t)(x8 + x13) * (x8 + x13)) - ((uint64_t)x8 * x8));
- uint64_t x16 = ((((uint64_t)(x6 + x14) * (x8 + x13)) + ((uint64_t)(x8 + x13) * (x6 + x14))) - (((uint64_t)x6 * x8) + ((uint64_t)x8 * x6)));
- uint64_t x17 = ((((uint64_t)(x4 + x12) * (x8 + x13)) + (((uint64_t)(x6 + x14) * (x6 + x14)) + ((uint64_t)(x8 + x13) * (x4 + x12)))) - (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + ((uint64_t)x8 * x4))));
- uint64_t x18 = ((((uint64_t)(x2 + x10) * (x8 + x13)) + (((uint64_t)(x4 + x12) * (x6 + x14)) + (((uint64_t)(x6 + x14) * (x4 + x12)) + ((uint64_t)(x8 + x13) * (x2 + x10))))) - (((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))));
- uint64_t x19 = ((((uint64_t)(x2 + x10) * (x6 + x14)) + (((uint64_t)(x4 + x12) * (x4 + x12)) + ((uint64_t)(x6 + x14) * (x2 + x10)))) - (((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))));
- uint64_t x20 = ((((uint64_t)(x2 + x10) * (x4 + x12)) + ((uint64_t)(x4 + x12) * (x2 + x10))) - (((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)));
- uint64_t x21 = (((uint64_t)(x2 + x10) * (x2 + x10)) - ((uint64_t)x2 * x2));
- uint64_t x22 = (((((uint64_t)x8 * x8) + ((uint64_t)x13 * x13)) + x19) + x15);
- uint64_t x23 = ((((((uint64_t)x6 * x8) + ((uint64_t)x8 * x6)) + (((uint64_t)x14 * x13) + ((uint64_t)x13 * x14))) + x20) + x16);
- uint64_t x24 = ((((((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + ((uint64_t)x8 * x4))) + (((uint64_t)x12 * x13) + (((uint64_t)x14 * x14) + ((uint64_t)x13 * x12)))) + x21) + x17);
- uint64_t x25 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (((uint64_t)x10 * x13) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x13 * x10)))));
- uint64_t x26 = (((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + ((uint64_t)x14 * x10)))) + x15);
- uint64_t x27 = (((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x10 * x12) + ((uint64_t)x12 * x10))) + x16);
- uint64_t x28 = ((((uint64_t)x2 * x2) + ((uint64_t)x10 * x10)) + x17);
- uint64_t x29 = (x25 >> 0x1b);
- uint32_t x30 = ((uint32_t)x25 & 0x7ffffff);
- uint64_t x31 = (x18 >> 0x1b);
- uint32_t x32 = ((uint32_t)x18 & 0x7ffffff);
- uint64_t x33 = ((0x8000000 * x31) + x32);
- uint64_t x34 = (x33 >> 0x1b);
- uint32_t x35 = ((uint32_t)x33 & 0x7ffffff);
- uint64_t x36 = ((x29 + x24) + x34);
- uint64_t x37 = (x36 >> 0x1b);
- uint32_t x38 = ((uint32_t)x36 & 0x7ffffff);
- uint64_t x39 = (x28 + x34);
- uint64_t x40 = (x39 >> 0x1b);
- uint32_t x41 = ((uint32_t)x39 & 0x7ffffff);
- uint64_t x42 = (x37 + x23);
- uint64_t x43 = (x42 >> 0x1b);
- uint32_t x44 = ((uint32_t)x42 & 0x7ffffff);
- uint64_t x45 = (x40 + x27);
- uint64_t x46 = (x45 >> 0x1b);
- uint32_t x47 = ((uint32_t)x45 & 0x7ffffff);
- uint64_t x48 = (x43 + x22);
- uint64_t x49 = (x48 >> 0x1b);
- uint32_t x50 = ((uint32_t)x48 & 0x7ffffff);
- uint64_t x51 = (x46 + x26);
- uint64_t x52 = (x51 >> 0x1b);
- uint32_t x53 = ((uint32_t)x51 & 0x7ffffff);
- uint64_t x54 = (x49 + x35);
- uint32_t x55 = (uint32_t) (x54 >> 0x1b);
- uint32_t x56 = ((uint32_t)x54 & 0x7ffffff);
- uint64_t x57 = (x52 + x30);
- uint32_t x58 = (uint32_t) (x57 >> 0x1b);
- uint32_t x59 = ((uint32_t)x57 & 0x7ffffff);
- uint64_t x60 = (((uint64_t)0x8000000 * x55) + x56);
- uint32_t x61 = (uint32_t) (x60 >> 0x1b);
- uint32_t x62 = ((uint32_t)x60 & 0x7ffffff);
- uint32_t x63 = ((x58 + x38) + x61);
- uint32_t x64 = (x63 >> 0x1b);
- uint32_t x65 = (x63 & 0x7ffffff);
- uint32_t x66 = (x41 + x61);
- uint32_t x67 = (x66 >> 0x1b);
- uint32_t x68 = (x66 & 0x7ffffff);
- return (Return x62, Return x50, (x64 + x44), Return x65, Return x59, Return x53, (x67 + x47), Return x68))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e216m2e108m1_8limbs/fesquareDisplay.v b/src/Specific/solinas32_2e216m2e108m1_8limbs/fesquareDisplay.v
deleted file mode 100644
index 515965576..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e216m2e108m1_8limbs/fesub.c b/src/Specific/solinas32_2e216m2e108m1_8limbs/fesub.c
deleted file mode 100644
index 282def963..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = ((0xffffffe + x5) - x19);
- out[1] = ((0xffffffe + x7) - x21);
- out[2] = ((0xffffffe + x9) - x23);
- out[3] = ((0xffffffe + x11) - x25);
- out[4] = ((0xffffffc + x13) - x27);
- out[5] = ((0xffffffe + x15) - x29);
- out[6] = ((0xffffffe + x17) - x31);
- out[7] = ((0xffffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e216m2e108m1_8limbs/fesub.v b/src/Specific/solinas32_2e216m2e108m1_8limbs/fesub.v
deleted file mode 100644
index bedc691c0..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_8limbs.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_2e216m2e108m1_8limbs/fesubDisplay.log b/src/Specific/solinas32_2e216m2e108m1_8limbs/fesubDisplay.log
deleted file mode 100644
index 2176f748f..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0xffffffe + x16) - x30), ((0xffffffe + x17) - x31), ((0xffffffe + x15) - x29), ((0xffffffc + x13) - x27), ((0xffffffe + x11) - x25), ((0xffffffe + x9) - x23), ((0xffffffe + x7) - x21), ((0xffffffe + x5) - x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e216m2e108m1_8limbs/fesubDisplay.v b/src/Specific/solinas32_2e216m2e108m1_8limbs/fesubDisplay.v
deleted file mode 100644
index ecd215720..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e216m2e108m1_8limbs/freeze.c b/src/Specific/solinas32_2e216m2e108m1_8limbs/freeze.c
deleted file mode 100644
index b491fbbf7..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffff);
- { uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0x7ffffff);
- { uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0x7ffffff);
- { uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0x7ffffff);
- { uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0x7fffffe);
- { uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0x7ffffff);
- { uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0x7ffffff);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0x7ffffff);
- { uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- { uint32_t x40 = (x39 & 0x7ffffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint32_t x44 = (x39 & 0x7ffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint32_t x48 = (x39 & 0x7ffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint32_t x52 = (x39 & 0x7ffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint32_t x56 = (x39 & 0x7fffffe);
- { uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint32_t x60 = (x39 & 0x7ffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint32_t x64 = (x39 & 0x7ffffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint32_t x68 = (x39 & 0x7ffffff);
- { uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e216m2e108m1_8limbs/freeze.v b/src/Specific/solinas32_2e216m2e108m1_8limbs/freeze.v
deleted file mode 100644
index 51d348874..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_8limbs.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_2e216m2e108m1_8limbs/freezeDisplay.log b/src/Specific/solinas32_2e216m2e108m1_8limbs/freezeDisplay.log
deleted file mode 100644
index 18b6d8b72..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffff);
- uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0x7ffffff);
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0x7ffffff);
- uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0x7ffffff);
- uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0x7fffffe);
- uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0x7ffffff);
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0x7ffffff);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0x7ffffff);
- uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- uint32_t x40 = (x39 & 0x7ffffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint32_t x44 = (x39 & 0x7ffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint32_t x48 = (x39 & 0x7ffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint32_t x52 = (x39 & 0x7ffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint32_t x56 = (x39 & 0x7fffffe);
- uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint32_t x60 = (x39 & 0x7ffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint32_t x64 = (x39 & 0x7ffffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint32_t x68 = (x39 & 0x7ffffff);
- uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e216m2e108m1_8limbs/freezeDisplay.v b/src/Specific/solinas32_2e216m2e108m1_8limbs/freezeDisplay.v
deleted file mode 100644
index 472cf9877..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e216m2e108m1_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e216m2e108m1_8limbs/py_interpreter.sh b/src/Specific/solinas32_2e216m2e108m1_8limbs/py_interpreter.sh
deleted file mode 100755
index c2779db9b..000000000
--- a/src/Specific/solinas32_2e216m2e108m1_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**216 - 2**108 - 1' -Dmodulus_bytes='27' -Da24='121665'
diff --git a/src/Specific/solinas32_2e221m3_8limbs/CurveParameters.v b/src/Specific/solinas32_2e221m3_8limbs/CurveParameters.v
deleted file mode 100644
index 8b481f704..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^221 - 3
-Base: 27.625
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 27 + 5/8;
- bitwidth := 32;
- s := 2^221;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 8); [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_2e221m3_8limbs/Synthesis.v b/src/Specific/solinas32_2e221m3_8limbs/Synthesis.v
deleted file mode 100644
index 3b9687cf0..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e221m3_8limbs.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_2e221m3_8limbs/compiler.sh b/src/Specific/solinas32_2e221m3_8limbs/compiler.sh
deleted file mode 100755
index 7886b0560..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{28,28,27,28,28,27,28,27}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<221) - 3' "$@"
diff --git a/src/Specific/solinas32_2e221m3_8limbs/compilerxx.sh b/src/Specific/solinas32_2e221m3_8limbs/compilerxx.sh
deleted file mode 100755
index af56cdb3c..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{28,28,27,28,28,27,28,27}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<221) - 3' "$@"
diff --git a/src/Specific/solinas32_2e221m3_8limbs/feadd.c b/src/Specific/solinas32_2e221m3_8limbs/feadd.c
deleted file mode 100644
index cc3671f75..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e221m3_8limbs/feadd.v b/src/Specific/solinas32_2e221m3_8limbs/feadd.v
deleted file mode 100644
index 3c92a8a62..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e221m3_8limbs.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_2e221m3_8limbs/feaddDisplay.log b/src/Specific/solinas32_2e221m3_8limbs/feaddDisplay.log
deleted file mode 100644
index f25c10903..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e221m3_8limbs/feaddDisplay.v b/src/Specific/solinas32_2e221m3_8limbs/feaddDisplay.v
deleted file mode 100644
index 7b29a28f9..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e221m3_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e221m3_8limbs/fecarry.v b/src/Specific/solinas32_2e221m3_8limbs/fecarry.v
deleted file mode 100644
index f0b6c43f5..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e221m3_8limbs.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_2e221m3_8limbs/fecarryDisplay.v b/src/Specific/solinas32_2e221m3_8limbs/fecarryDisplay.v
deleted file mode 100644
index b50313c2d..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e221m3_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e221m3_8limbs/femul.c b/src/Specific/solinas32_2e221m3_8limbs/femul.c
deleted file mode 100644
index 61d58a697..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- { uint64_t x32 = (((uint64_t)x5 * x30) + (((uint64_t)x7 * x31) + ((0x2 * ((uint64_t)x9 * x29)) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + ((0x2 * ((uint64_t)x15 * x23)) + (((uint64_t)x17 * x21) + ((uint64_t)x16 * x19))))))));
- { uint64_t x33 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + (((uint64_t)x11 * x25) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + ((uint64_t)x17 * x19))))))) + (0x3 * (0x2 * ((uint64_t)x16 * x30))));
- { uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0x3 * (((uint64_t)x17 * x30) + ((uint64_t)x16 * x31))));
- { uint64_t x35 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + ((0x2 * ((uint64_t)x9 * x23)) + (((uint64_t)x11 * x21) + ((uint64_t)x13 * x19))))) + (0x3 * ((0x2 * ((uint64_t)x15 * x30)) + (((uint64_t)x17 * x31) + (0x2 * ((uint64_t)x16 * x29))))));
- { uint64_t x36 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((0x2 * ((uint64_t)x9 * x21)) + ((uint64_t)x11 * x19)))) + (0x3 * ((0x2 * ((uint64_t)x13 * x30)) + ((0x2 * ((uint64_t)x15 * x31)) + ((0x2 * ((uint64_t)x17 * x29)) + (0x2 * ((uint64_t)x16 * x27)))))));
- { uint64_t x37 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((uint64_t)x9 * x19))) + (0x3 * (((uint64_t)x11 * x30) + (((uint64_t)x13 * x31) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + ((uint64_t)x16 * x25)))))));
- { uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0x3 * ((0x2 * ((uint64_t)x9 * x30)) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + ((0x2 * ((uint64_t)x15 * x27)) + (((uint64_t)x17 * x25) + (0x2 * ((uint64_t)x16 * x23)))))))));
- { ℤ x39 = (((uint64_t)x5 * x19) +ℤ (0x3 *ℤ ((0x2 * ((uint64_t)x7 * x30)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + (0x2 * ((uint64_t)x16 * x21))))))))));
- { uint64_t x40 = (x39 >> 0x1c);
- { uint32_t x41 = (x39 & 0xfffffff);
- { uint64_t x42 = (x40 + x38);
- { uint64_t x43 = (x42 >> 0x1c);
- { uint32_t x44 = ((uint32_t)x42 & 0xfffffff);
- { uint64_t x45 = (x43 + x37);
- { uint64_t x46 = (x45 >> 0x1b);
- { uint32_t x47 = ((uint32_t)x45 & 0x7ffffff);
- { uint64_t x48 = (x46 + x36);
- { uint64_t x49 = (x48 >> 0x1c);
- { uint32_t x50 = ((uint32_t)x48 & 0xfffffff);
- { uint64_t x51 = (x49 + x35);
- { uint64_t x52 = (x51 >> 0x1c);
- { uint32_t x53 = ((uint32_t)x51 & 0xfffffff);
- { uint64_t x54 = (x52 + x34);
- { uint64_t x55 = (x54 >> 0x1b);
- { uint32_t x56 = ((uint32_t)x54 & 0x7ffffff);
- { uint64_t x57 = (x55 + x33);
- { uint64_t x58 = (x57 >> 0x1c);
- { uint32_t x59 = ((uint32_t)x57 & 0xfffffff);
- { uint64_t x60 = (x58 + x32);
- { uint64_t x61 = (x60 >> 0x1b);
- { uint32_t x62 = ((uint32_t)x60 & 0x7ffffff);
- { uint64_t x63 = (x41 + (0x3 * x61));
- { uint32_t x64 = (uint32_t) (x63 >> 0x1c);
- { uint32_t x65 = ((uint32_t)x63 & 0xfffffff);
- { uint32_t x66 = (x64 + x44);
- { uint32_t x67 = (x66 >> 0x1c);
- { uint32_t x68 = (x66 & 0xfffffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e221m3_8limbs/femul.v b/src/Specific/solinas32_2e221m3_8limbs/femul.v
deleted file mode 100644
index 3e8884f19..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e221m3_8limbs.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_2e221m3_8limbs/femulDisplay.log b/src/Specific/solinas32_2e221m3_8limbs/femulDisplay.log
deleted file mode 100644
index 55e612903..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint64_t x32 = (((uint64_t)x5 * x30) + (((uint64_t)x7 * x31) + ((0x2 * ((uint64_t)x9 * x29)) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + ((0x2 * ((uint64_t)x15 * x23)) + (((uint64_t)x17 * x21) + ((uint64_t)x16 * x19))))))));
- uint64_t x33 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + (((uint64_t)x11 * x25) + ((0x2 * ((uint64_t)x13 * x23)) + ((0x2 * ((uint64_t)x15 * x21)) + ((uint64_t)x17 * x19))))))) + (0x3 * (0x2 * ((uint64_t)x16 * x30))));
- uint64_t x34 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + (((uint64_t)x13 * x21) + ((uint64_t)x15 * x19)))))) + (0x3 * (((uint64_t)x17 * x30) + ((uint64_t)x16 * x31))));
- uint64_t x35 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + ((0x2 * ((uint64_t)x9 * x23)) + (((uint64_t)x11 * x21) + ((uint64_t)x13 * x19))))) + (0x3 * ((0x2 * ((uint64_t)x15 * x30)) + (((uint64_t)x17 * x31) + (0x2 * ((uint64_t)x16 * x29))))));
- uint64_t x36 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((0x2 * ((uint64_t)x9 * x21)) + ((uint64_t)x11 * x19)))) + (0x3 * ((0x2 * ((uint64_t)x13 * x30)) + ((0x2 * ((uint64_t)x15 * x31)) + ((0x2 * ((uint64_t)x17 * x29)) + (0x2 * ((uint64_t)x16 * x27)))))));
- uint64_t x37 = ((((uint64_t)x5 * x23) + (((uint64_t)x7 * x21) + ((uint64_t)x9 * x19))) + (0x3 * (((uint64_t)x11 * x30) + (((uint64_t)x13 * x31) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + ((uint64_t)x16 * x25)))))));
- uint64_t x38 = ((((uint64_t)x5 * x21) + ((uint64_t)x7 * x19)) + (0x3 * ((0x2 * ((uint64_t)x9 * x30)) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + ((0x2 * ((uint64_t)x15 * x27)) + (((uint64_t)x17 * x25) + (0x2 * ((uint64_t)x16 * x23)))))))));
- ℤ x39 = (((uint64_t)x5 * x19) +ℤ (0x3 *ℤ ((0x2 * ((uint64_t)x7 * x30)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + (0x2 * ((uint64_t)x16 * x21))))))))));
- uint64_t x40 = (x39 >> 0x1c);
- uint32_t x41 = (x39 & 0xfffffff);
- uint64_t x42 = (x40 + x38);
- uint64_t x43 = (x42 >> 0x1c);
- uint32_t x44 = ((uint32_t)x42 & 0xfffffff);
- uint64_t x45 = (x43 + x37);
- uint64_t x46 = (x45 >> 0x1b);
- uint32_t x47 = ((uint32_t)x45 & 0x7ffffff);
- uint64_t x48 = (x46 + x36);
- uint64_t x49 = (x48 >> 0x1c);
- uint32_t x50 = ((uint32_t)x48 & 0xfffffff);
- uint64_t x51 = (x49 + x35);
- uint64_t x52 = (x51 >> 0x1c);
- uint32_t x53 = ((uint32_t)x51 & 0xfffffff);
- uint64_t x54 = (x52 + x34);
- uint64_t x55 = (x54 >> 0x1b);
- uint32_t x56 = ((uint32_t)x54 & 0x7ffffff);
- uint64_t x57 = (x55 + x33);
- uint64_t x58 = (x57 >> 0x1c);
- uint32_t x59 = ((uint32_t)x57 & 0xfffffff);
- uint64_t x60 = (x58 + x32);
- uint64_t x61 = (x60 >> 0x1b);
- uint32_t x62 = ((uint32_t)x60 & 0x7ffffff);
- uint64_t x63 = (x41 + (0x3 * x61));
- uint32_t x64 = (uint32_t) (x63 >> 0x1c);
- uint32_t x65 = ((uint32_t)x63 & 0xfffffff);
- uint32_t x66 = (x64 + x44);
- uint32_t x67 = (x66 >> 0x1c);
- uint32_t x68 = (x66 & 0xfffffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e221m3_8limbs/femulDisplay.v b/src/Specific/solinas32_2e221m3_8limbs/femulDisplay.v
deleted file mode 100644
index 846eff827..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e221m3_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e221m3_8limbs/fesquare.c b/src/Specific/solinas32_2e221m3_8limbs/fesquare.c
deleted file mode 100644
index 930bb41d4..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x15 = (((uint64_t)x2 * x13) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x13 * x2))))))));
- { uint64_t x16 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x3 * (0x2 * ((uint64_t)x13 * x13))));
- { uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x3 * (((uint64_t)x14 * x13) + ((uint64_t)x13 * x14))));
- { uint64_t x18 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x3 * ((0x2 * ((uint64_t)x12 * x13)) + (((uint64_t)x14 * x14) + (0x2 * ((uint64_t)x13 * x12))))));
- { uint64_t x19 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x3 * ((0x2 * ((uint64_t)x10 * x13)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (0x2 * ((uint64_t)x13 * x10)))))));
- { uint64_t x20 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x3 * (((uint64_t)x8 * x13) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + ((uint64_t)x13 * x8)))))));
- { uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * ((0x2 * ((uint64_t)x6 * x13)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + (0x2 * ((uint64_t)x13 * x6)))))))));
- { ℤ x22 = (((uint64_t)x2 * x2) +ℤ (0x3 *ℤ ((0x2 * ((uint64_t)x4 * x13)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (0x2 * ((uint64_t)x13 * x4))))))))));
- { uint64_t x23 = (x22 >> 0x1c);
- { uint32_t x24 = (x22 & 0xfffffff);
- { uint64_t x25 = (x23 + x21);
- { uint64_t x26 = (x25 >> 0x1c);
- { uint32_t x27 = ((uint32_t)x25 & 0xfffffff);
- { uint64_t x28 = (x26 + x20);
- { uint64_t x29 = (x28 >> 0x1b);
- { uint32_t x30 = ((uint32_t)x28 & 0x7ffffff);
- { uint64_t x31 = (x29 + x19);
- { uint64_t x32 = (x31 >> 0x1c);
- { uint32_t x33 = ((uint32_t)x31 & 0xfffffff);
- { uint64_t x34 = (x32 + x18);
- { uint64_t x35 = (x34 >> 0x1c);
- { uint32_t x36 = ((uint32_t)x34 & 0xfffffff);
- { uint64_t x37 = (x35 + x17);
- { uint64_t x38 = (x37 >> 0x1b);
- { uint32_t x39 = ((uint32_t)x37 & 0x7ffffff);
- { uint64_t x40 = (x38 + x16);
- { uint64_t x41 = (x40 >> 0x1c);
- { uint32_t x42 = ((uint32_t)x40 & 0xfffffff);
- { uint64_t x43 = (x41 + x15);
- { uint64_t x44 = (x43 >> 0x1b);
- { uint32_t x45 = ((uint32_t)x43 & 0x7ffffff);
- { uint64_t x46 = (x24 + (0x3 * x44));
- { uint32_t x47 = (uint32_t) (x46 >> 0x1c);
- { uint32_t x48 = ((uint32_t)x46 & 0xfffffff);
- { uint32_t x49 = (x47 + x27);
- { uint32_t x50 = (x49 >> 0x1c);
- { uint32_t x51 = (x49 & 0xfffffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e221m3_8limbs/fesquare.v b/src/Specific/solinas32_2e221m3_8limbs/fesquare.v
deleted file mode 100644
index c309620a9..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e221m3_8limbs.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_2e221m3_8limbs/fesquareDisplay.log b/src/Specific/solinas32_2e221m3_8limbs/fesquareDisplay.log
deleted file mode 100644
index 4b8d4fd4b..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x15 = (((uint64_t)x2 * x13) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x13 * x2))))))));
- uint64_t x16 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x3 * (0x2 * ((uint64_t)x13 * x13))));
- uint64_t x17 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x3 * (((uint64_t)x14 * x13) + ((uint64_t)x13 * x14))));
- uint64_t x18 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x3 * ((0x2 * ((uint64_t)x12 * x13)) + (((uint64_t)x14 * x14) + (0x2 * ((uint64_t)x13 * x12))))));
- uint64_t x19 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x3 * ((0x2 * ((uint64_t)x10 * x13)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (0x2 * ((uint64_t)x13 * x10)))))));
- uint64_t x20 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x3 * (((uint64_t)x8 * x13) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + ((uint64_t)x13 * x8)))))));
- uint64_t x21 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * ((0x2 * ((uint64_t)x6 * x13)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + (0x2 * ((uint64_t)x13 * x6)))))))));
- ℤ x22 = (((uint64_t)x2 * x2) +ℤ (0x3 *ℤ ((0x2 * ((uint64_t)x4 * x13)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (0x2 * ((uint64_t)x13 * x4))))))))));
- uint64_t x23 = (x22 >> 0x1c);
- uint32_t x24 = (x22 & 0xfffffff);
- uint64_t x25 = (x23 + x21);
- uint64_t x26 = (x25 >> 0x1c);
- uint32_t x27 = ((uint32_t)x25 & 0xfffffff);
- uint64_t x28 = (x26 + x20);
- uint64_t x29 = (x28 >> 0x1b);
- uint32_t x30 = ((uint32_t)x28 & 0x7ffffff);
- uint64_t x31 = (x29 + x19);
- uint64_t x32 = (x31 >> 0x1c);
- uint32_t x33 = ((uint32_t)x31 & 0xfffffff);
- uint64_t x34 = (x32 + x18);
- uint64_t x35 = (x34 >> 0x1c);
- uint32_t x36 = ((uint32_t)x34 & 0xfffffff);
- uint64_t x37 = (x35 + x17);
- uint64_t x38 = (x37 >> 0x1b);
- uint32_t x39 = ((uint32_t)x37 & 0x7ffffff);
- uint64_t x40 = (x38 + x16);
- uint64_t x41 = (x40 >> 0x1c);
- uint32_t x42 = ((uint32_t)x40 & 0xfffffff);
- uint64_t x43 = (x41 + x15);
- uint64_t x44 = (x43 >> 0x1b);
- uint32_t x45 = ((uint32_t)x43 & 0x7ffffff);
- uint64_t x46 = (x24 + (0x3 * x44));
- uint32_t x47 = (uint32_t) (x46 >> 0x1c);
- uint32_t x48 = ((uint32_t)x46 & 0xfffffff);
- uint32_t x49 = (x47 + x27);
- uint32_t x50 = (x49 >> 0x1c);
- uint32_t x51 = (x49 & 0xfffffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e221m3_8limbs/fesquareDisplay.v b/src/Specific/solinas32_2e221m3_8limbs/fesquareDisplay.v
deleted file mode 100644
index 4b0de58cf..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e221m3_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e221m3_8limbs/fesub.c b/src/Specific/solinas32_2e221m3_8limbs/fesub.c
deleted file mode 100644
index 3e092cb13..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint32_t out[8], const uint32_t in1[8], const uint32_t in2[8]) {
- { const uint32_t x16 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x30 = in2[7];
- { const uint32_t x31 = in2[6];
- { const uint32_t x29 = in2[5];
- { const uint32_t x27 = in2[4];
- { const uint32_t x25 = in2[3];
- { const uint32_t x23 = in2[2];
- { const uint32_t x21 = in2[1];
- { const uint32_t x19 = in2[0];
- out[0] = ((0x1ffffffa + x5) - x19);
- out[1] = ((0x1ffffffe + x7) - x21);
- out[2] = ((0xffffffe + x9) - x23);
- out[3] = ((0x1ffffffe + x11) - x25);
- out[4] = ((0x1ffffffe + x13) - x27);
- out[5] = ((0xffffffe + x15) - x29);
- out[6] = ((0x1ffffffe + x17) - x31);
- out[7] = ((0xffffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e221m3_8limbs/fesub.v b/src/Specific/solinas32_2e221m3_8limbs/fesub.v
deleted file mode 100644
index 8fef42652..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e221m3_8limbs.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_2e221m3_8limbs/fesubDisplay.log b/src/Specific/solinas32_2e221m3_8limbs/fesubDisplay.log
deleted file mode 100644
index 978e32873..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0xffffffe + x16) - x30), ((0x1ffffffe + x17) - x31), ((0xffffffe + x15) - x29), ((0x1ffffffe + x13) - x27), ((0x1ffffffe + x11) - x25), ((0xffffffe + x9) - x23), ((0x1ffffffe + x7) - x21), ((0x1ffffffa + x5) - x19)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e221m3_8limbs/fesubDisplay.v b/src/Specific/solinas32_2e221m3_8limbs/fesubDisplay.v
deleted file mode 100644
index 0207fbb6f..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e221m3_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e221m3_8limbs/freeze.c b/src/Specific/solinas32_2e221m3_8limbs/freeze.c
deleted file mode 100644
index e31bca57f..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint32_t out[8], const uint32_t in1[8]) {
- { const uint32_t x13 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffd);
- { uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0xfffffff);
- { uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0x7ffffff);
- { uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0xfffffff);
- { uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0xfffffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0x7ffffff);
- { uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0xfffffff);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0x7ffffff);
- { uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- { uint32_t x40 = (x39 & 0xffffffd);
- { uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint32_t x44 = (x39 & 0xfffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint32_t x48 = (x39 & 0x7ffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint32_t x52 = (x39 & 0xfffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint32_t x56 = (x39 & 0xfffffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint32_t x60 = (x39 & 0x7ffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint32_t x64 = (x39 & 0xfffffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint32_t x68 = (x39 & 0x7ffffff);
- { uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e221m3_8limbs/freeze.v b/src/Specific/solinas32_2e221m3_8limbs/freeze.v
deleted file mode 100644
index 214c8676a..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e221m3_8limbs.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_2e221m3_8limbs/freezeDisplay.log b/src/Specific/solinas32_2e221m3_8limbs/freezeDisplay.log
deleted file mode 100644
index 175373d3f..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffd);
- uint32_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x17, Return x4, 0xfffffff);
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x20, Return x6, 0x7ffffff);
- uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x8, 0xfffffff);
- uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x10, 0xfffffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x12, 0x7ffffff);
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x14, 0xfffffff);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x13, 0x7ffffff);
- uint32_t x39 = cmovznz32(x38, 0x0, 0xffffffff);
- uint32_t x40 = (x39 & 0xffffffd);
- uint32_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint32_t x44 = (x39 & 0xfffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint32_t x48 = (x39 & 0x7ffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint32_t x52 = (x39 & 0xfffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint32_t x56 = (x39 & 0xfffffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint32_t x60 = (x39 & 0x7ffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint32_t x64 = (x39 & 0xfffffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint32_t x68 = (x39 & 0x7ffffff);
- uint32_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e221m3_8limbs/freezeDisplay.v b/src/Specific/solinas32_2e221m3_8limbs/freezeDisplay.v
deleted file mode 100644
index 841706328..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e221m3_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e221m3_8limbs/py_interpreter.sh b/src/Specific/solinas32_2e221m3_8limbs/py_interpreter.sh
deleted file mode 100755
index 19814b752..000000000
--- a/src/Specific/solinas32_2e221m3_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**221 - 3' -Dmodulus_bytes='27.625' -Da24='121665'
diff --git a/src/Specific/solinas32_2e221m3_9limbs/CurveParameters.v b/src/Specific/solinas32_2e221m3_9limbs/CurveParameters.v
deleted file mode 100644
index f7ed271a7..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^221 - 3
-Base: 24 + 5/9
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 24 + 5/9;
- bitwidth := 32;
- s := 2^221;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 9); [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_2e221m3_9limbs/Synthesis.v b/src/Specific/solinas32_2e221m3_9limbs/Synthesis.v
deleted file mode 100644
index f9ca8e780..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e221m3_9limbs.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_2e221m3_9limbs/compiler.sh b/src/Specific/solinas32_2e221m3_9limbs/compiler.sh
deleted file mode 100755
index bc6748977..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,24,25,24,25,24,25,24}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<221) - 3' "$@"
diff --git a/src/Specific/solinas32_2e221m3_9limbs/compilerxx.sh b/src/Specific/solinas32_2e221m3_9limbs/compilerxx.sh
deleted file mode 100755
index 44cca2d87..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,24,25,24,25,24,25,24}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<221) - 3' "$@"
diff --git a/src/Specific/solinas32_2e221m3_9limbs/feadd.c b/src/Specific/solinas32_2e221m3_9limbs/feadd.c
deleted file mode 100644
index e1188fdec..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e221m3_9limbs/feadd.v b/src/Specific/solinas32_2e221m3_9limbs/feadd.v
deleted file mode 100644
index 65b4594d5..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e221m3_9limbs.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_2e221m3_9limbs/feaddDisplay.log b/src/Specific/solinas32_2e221m3_9limbs/feaddDisplay.log
deleted file mode 100644
index e26bb40f8..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e221m3_9limbs/feaddDisplay.v b/src/Specific/solinas32_2e221m3_9limbs/feaddDisplay.v
deleted file mode 100644
index 11e1379be..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e221m3_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e221m3_9limbs/fecarry.v b/src/Specific/solinas32_2e221m3_9limbs/fecarry.v
deleted file mode 100644
index 4930fb805..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e221m3_9limbs.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_2e221m3_9limbs/fecarryDisplay.v b/src/Specific/solinas32_2e221m3_9limbs/fecarryDisplay.v
deleted file mode 100644
index 1e069d020..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e221m3_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e221m3_9limbs/femul.c b/src/Specific/solinas32_2e221m3_9limbs/femul.c
deleted file mode 100644
index 9d11d7afd..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/femul.c
+++ /dev/null
@@ -1,71 +0,0 @@
-static void femul(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- { uint64_t x36 = (((uint64_t)x5 * x34) + (((uint64_t)x7 * x35) + ((0x2 * ((uint64_t)x9 * x33)) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + (((uint64_t)x15 * x27) + ((0x2 * ((uint64_t)x17 * x25)) + (((uint64_t)x19 * x23) + ((uint64_t)x18 * x21)))))))));
- { uint64_t x37 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + ((uint64_t)x19 * x21)))))))) + (0x3 * (0x2 * ((uint64_t)x18 * x34))));
- { uint64_t x38 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + ((0x2 * ((uint64_t)x9 * x29)) + (((uint64_t)x11 * x27) + ((0x2 * ((uint64_t)x13 * x25)) + (((uint64_t)x15 * x23) + ((uint64_t)x17 * x21))))))) + (0x3 * (((uint64_t)x19 * x34) + ((uint64_t)x18 * x35))));
- { uint64_t x39 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((uint64_t)x15 * x21)))))) + (0x3 * ((0x2 * ((uint64_t)x17 * x34)) + (((uint64_t)x19 * x35) + (0x2 * ((uint64_t)x18 * x33))))));
- { uint64_t x40 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + (((uint64_t)x11 * x23) + ((uint64_t)x13 * x21))))) + (0x3 * (((uint64_t)x15 * x34) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x18 * x31))))));
- { uint64_t x41 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((uint64_t)x11 * x21)))) + (0x3 * ((0x2 * ((uint64_t)x13 * x34)) + (((uint64_t)x15 * x35) + ((0x2 * ((uint64_t)x17 * x33)) + (((uint64_t)x19 * x31) + (0x2 * ((uint64_t)x18 * x29))))))));
- { uint64_t x42 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + ((uint64_t)x9 * x21))) + (0x3 * (((uint64_t)x11 * x34) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + ((uint64_t)x18 * x27))))))));
- { uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0x3 * ((0x2 * ((uint64_t)x9 * x34)) + (((uint64_t)x11 * x35) + ((0x2 * ((uint64_t)x13 * x33)) + (((uint64_t)x15 * x31) + ((0x2 * ((uint64_t)x17 * x29)) + (((uint64_t)x19 * x27) + (0x2 * ((uint64_t)x18 * x25))))))))));
- { uint64_t x44 = (((uint64_t)x5 * x21) + (0x3 * ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23)))))))))));
- { uint64_t x45 = (x44 >> 0x19);
- { uint32_t x46 = ((uint32_t)x44 & 0x1ffffff);
- { uint64_t x47 = (x45 + x43);
- { uint64_t x48 = (x47 >> 0x19);
- { uint32_t x49 = ((uint32_t)x47 & 0x1ffffff);
- { uint64_t x50 = (x48 + x42);
- { uint64_t x51 = (x50 >> 0x18);
- { uint32_t x52 = ((uint32_t)x50 & 0xffffff);
- { uint64_t x53 = (x51 + x41);
- { uint64_t x54 = (x53 >> 0x19);
- { uint32_t x55 = ((uint32_t)x53 & 0x1ffffff);
- { uint64_t x56 = (x54 + x40);
- { uint64_t x57 = (x56 >> 0x18);
- { uint32_t x58 = ((uint32_t)x56 & 0xffffff);
- { uint64_t x59 = (x57 + x39);
- { uint64_t x60 = (x59 >> 0x19);
- { uint32_t x61 = ((uint32_t)x59 & 0x1ffffff);
- { uint64_t x62 = (x60 + x38);
- { uint64_t x63 = (x62 >> 0x18);
- { uint32_t x64 = ((uint32_t)x62 & 0xffffff);
- { uint64_t x65 = (x63 + x37);
- { uint32_t x66 = (uint32_t) (x65 >> 0x19);
- { uint32_t x67 = ((uint32_t)x65 & 0x1ffffff);
- { uint64_t x68 = (x66 + x36);
- { uint64_t x69 = (x68 >> 0x18);
- { uint32_t x70 = ((uint32_t)x68 & 0xffffff);
- { uint64_t x71 = (x46 + (0x3 * x69));
- { uint32_t x72 = (uint32_t) (x71 >> 0x19);
- { uint32_t x73 = ((uint32_t)x71 & 0x1ffffff);
- { uint32_t x74 = (x72 + x49);
- { uint32_t x75 = (x74 >> 0x19);
- { uint32_t x76 = (x74 & 0x1ffffff);
- out[0] = x73;
- out[1] = x76;
- out[2] = (x75 + x52);
- out[3] = x55;
- out[4] = x58;
- out[5] = x61;
- out[6] = x64;
- out[7] = x67;
- out[8] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e221m3_9limbs/femul.v b/src/Specific/solinas32_2e221m3_9limbs/femul.v
deleted file mode 100644
index 311587e84..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e221m3_9limbs.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_2e221m3_9limbs/femulDisplay.log b/src/Specific/solinas32_2e221m3_9limbs/femulDisplay.log
deleted file mode 100644
index d8bdb846c..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/femulDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint64_t x36 = (((uint64_t)x5 * x34) + (((uint64_t)x7 * x35) + ((0x2 * ((uint64_t)x9 * x33)) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + (((uint64_t)x15 * x27) + ((0x2 * ((uint64_t)x17 * x25)) + (((uint64_t)x19 * x23) + ((uint64_t)x18 * x21)))))))));
- uint64_t x37 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + ((uint64_t)x19 * x21)))))))) + (0x3 * (0x2 * ((uint64_t)x18 * x34))));
- uint64_t x38 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + ((0x2 * ((uint64_t)x9 * x29)) + (((uint64_t)x11 * x27) + ((0x2 * ((uint64_t)x13 * x25)) + (((uint64_t)x15 * x23) + ((uint64_t)x17 * x21))))))) + (0x3 * (((uint64_t)x19 * x34) + ((uint64_t)x18 * x35))));
- uint64_t x39 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((uint64_t)x15 * x21)))))) + (0x3 * ((0x2 * ((uint64_t)x17 * x34)) + (((uint64_t)x19 * x35) + (0x2 * ((uint64_t)x18 * x33))))));
- uint64_t x40 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + (((uint64_t)x11 * x23) + ((uint64_t)x13 * x21))))) + (0x3 * (((uint64_t)x15 * x34) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x18 * x31))))));
- uint64_t x41 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((uint64_t)x11 * x21)))) + (0x3 * ((0x2 * ((uint64_t)x13 * x34)) + (((uint64_t)x15 * x35) + ((0x2 * ((uint64_t)x17 * x33)) + (((uint64_t)x19 * x31) + (0x2 * ((uint64_t)x18 * x29))))))));
- uint64_t x42 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + ((uint64_t)x9 * x21))) + (0x3 * (((uint64_t)x11 * x34) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + ((uint64_t)x18 * x27))))))));
- uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0x3 * ((0x2 * ((uint64_t)x9 * x34)) + (((uint64_t)x11 * x35) + ((0x2 * ((uint64_t)x13 * x33)) + (((uint64_t)x15 * x31) + ((0x2 * ((uint64_t)x17 * x29)) + (((uint64_t)x19 * x27) + (0x2 * ((uint64_t)x18 * x25))))))))));
- uint64_t x44 = (((uint64_t)x5 * x21) + (0x3 * ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23)))))))))));
- uint64_t x45 = (x44 >> 0x19);
- uint32_t x46 = ((uint32_t)x44 & 0x1ffffff);
- uint64_t x47 = (x45 + x43);
- uint64_t x48 = (x47 >> 0x19);
- uint32_t x49 = ((uint32_t)x47 & 0x1ffffff);
- uint64_t x50 = (x48 + x42);
- uint64_t x51 = (x50 >> 0x18);
- uint32_t x52 = ((uint32_t)x50 & 0xffffff);
- uint64_t x53 = (x51 + x41);
- uint64_t x54 = (x53 >> 0x19);
- uint32_t x55 = ((uint32_t)x53 & 0x1ffffff);
- uint64_t x56 = (x54 + x40);
- uint64_t x57 = (x56 >> 0x18);
- uint32_t x58 = ((uint32_t)x56 & 0xffffff);
- uint64_t x59 = (x57 + x39);
- uint64_t x60 = (x59 >> 0x19);
- uint32_t x61 = ((uint32_t)x59 & 0x1ffffff);
- uint64_t x62 = (x60 + x38);
- uint64_t x63 = (x62 >> 0x18);
- uint32_t x64 = ((uint32_t)x62 & 0xffffff);
- uint64_t x65 = (x63 + x37);
- uint32_t x66 = (uint32_t) (x65 >> 0x19);
- uint32_t x67 = ((uint32_t)x65 & 0x1ffffff);
- uint64_t x68 = (x66 + x36);
- uint64_t x69 = (x68 >> 0x18);
- uint32_t x70 = ((uint32_t)x68 & 0xffffff);
- uint64_t x71 = (x46 + (0x3 * x69));
- uint32_t x72 = (uint32_t) (x71 >> 0x19);
- uint32_t x73 = ((uint32_t)x71 & 0x1ffffff);
- uint32_t x74 = (x72 + x49);
- uint32_t x75 = (x74 >> 0x19);
- uint32_t x76 = (x74 & 0x1ffffff);
- return (Return x70, Return x67, Return x64, Return x61, Return x58, Return x55, (x75 + x52), Return x76, Return x73))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e221m3_9limbs/femulDisplay.v b/src/Specific/solinas32_2e221m3_9limbs/femulDisplay.v
deleted file mode 100644
index 9fb957c7d..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e221m3_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e221m3_9limbs/fesquare.c b/src/Specific/solinas32_2e221m3_9limbs/fesquare.c
deleted file mode 100644
index d6e8cf3f3..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/fesquare.c
+++ /dev/null
@@ -1,62 +0,0 @@
-static void fesquare(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x17 = (((uint64_t)x2 * x15) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x15 * x2)))))))));
- { uint64_t x18 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x3 * (0x2 * ((uint64_t)x15 * x15))));
- { uint64_t x19 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x3 * (((uint64_t)x16 * x15) + ((uint64_t)x15 * x16))));
- { uint64_t x20 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x3 * ((0x2 * ((uint64_t)x14 * x15)) + (((uint64_t)x16 * x16) + (0x2 * ((uint64_t)x15 * x14))))));
- { uint64_t x21 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x3 * (((uint64_t)x12 * x15) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x15 * x12))))));
- { uint64_t x22 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x3 * ((0x2 * ((uint64_t)x10 * x15)) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (0x2 * ((uint64_t)x15 * x10))))))));
- { uint64_t x23 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x3 * (((uint64_t)x8 * x15) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x15 * x8))))))));
- { uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * ((0x2 * ((uint64_t)x6 * x15)) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + (0x2 * ((uint64_t)x15 * x6))))))))));
- { uint64_t x25 = (((uint64_t)x2 * x2) + (0x3 * ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4)))))))))));
- { uint64_t x26 = (x25 >> 0x19);
- { uint32_t x27 = ((uint32_t)x25 & 0x1ffffff);
- { uint64_t x28 = (x26 + x24);
- { uint64_t x29 = (x28 >> 0x19);
- { uint32_t x30 = ((uint32_t)x28 & 0x1ffffff);
- { uint64_t x31 = (x29 + x23);
- { uint64_t x32 = (x31 >> 0x18);
- { uint32_t x33 = ((uint32_t)x31 & 0xffffff);
- { uint64_t x34 = (x32 + x22);
- { uint64_t x35 = (x34 >> 0x19);
- { uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- { uint64_t x37 = (x35 + x21);
- { uint64_t x38 = (x37 >> 0x18);
- { uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- { uint64_t x40 = (x38 + x20);
- { uint64_t x41 = (x40 >> 0x19);
- { uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- { uint64_t x43 = (x41 + x19);
- { uint64_t x44 = (x43 >> 0x18);
- { uint32_t x45 = ((uint32_t)x43 & 0xffffff);
- { uint64_t x46 = (x44 + x18);
- { uint32_t x47 = (uint32_t) (x46 >> 0x19);
- { uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- { uint64_t x49 = (x47 + x17);
- { uint64_t x50 = (x49 >> 0x18);
- { uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- { uint64_t x52 = (x27 + (0x3 * x50));
- { uint32_t x53 = (uint32_t) (x52 >> 0x19);
- { uint32_t x54 = ((uint32_t)x52 & 0x1ffffff);
- { uint32_t x55 = (x53 + x30);
- { uint32_t x56 = (x55 >> 0x19);
- { uint32_t x57 = (x55 & 0x1ffffff);
- out[0] = x54;
- out[1] = x57;
- out[2] = (x56 + x33);
- out[3] = x36;
- out[4] = x39;
- out[5] = x42;
- out[6] = x45;
- out[7] = x48;
- out[8] = x51;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e221m3_9limbs/fesquare.v b/src/Specific/solinas32_2e221m3_9limbs/fesquare.v
deleted file mode 100644
index beeda0579..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e221m3_9limbs.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_2e221m3_9limbs/fesquareDisplay.log b/src/Specific/solinas32_2e221m3_9limbs/fesquareDisplay.log
deleted file mode 100644
index da6b9195e..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x17 = (((uint64_t)x2 * x15) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x15 * x2)))))))));
- uint64_t x18 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x3 * (0x2 * ((uint64_t)x15 * x15))));
- uint64_t x19 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x3 * (((uint64_t)x16 * x15) + ((uint64_t)x15 * x16))));
- uint64_t x20 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x3 * ((0x2 * ((uint64_t)x14 * x15)) + (((uint64_t)x16 * x16) + (0x2 * ((uint64_t)x15 * x14))))));
- uint64_t x21 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x3 * (((uint64_t)x12 * x15) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x15 * x12))))));
- uint64_t x22 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x3 * ((0x2 * ((uint64_t)x10 * x15)) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (0x2 * ((uint64_t)x15 * x10))))))));
- uint64_t x23 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x3 * (((uint64_t)x8 * x15) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x15 * x8))))))));
- uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * ((0x2 * ((uint64_t)x6 * x15)) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + (0x2 * ((uint64_t)x15 * x6))))))))));
- uint64_t x25 = (((uint64_t)x2 * x2) + (0x3 * ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4)))))))))));
- uint64_t x26 = (x25 >> 0x19);
- uint32_t x27 = ((uint32_t)x25 & 0x1ffffff);
- uint64_t x28 = (x26 + x24);
- uint64_t x29 = (x28 >> 0x19);
- uint32_t x30 = ((uint32_t)x28 & 0x1ffffff);
- uint64_t x31 = (x29 + x23);
- uint64_t x32 = (x31 >> 0x18);
- uint32_t x33 = ((uint32_t)x31 & 0xffffff);
- uint64_t x34 = (x32 + x22);
- uint64_t x35 = (x34 >> 0x19);
- uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- uint64_t x37 = (x35 + x21);
- uint64_t x38 = (x37 >> 0x18);
- uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- uint64_t x40 = (x38 + x20);
- uint64_t x41 = (x40 >> 0x19);
- uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- uint64_t x43 = (x41 + x19);
- uint64_t x44 = (x43 >> 0x18);
- uint32_t x45 = ((uint32_t)x43 & 0xffffff);
- uint64_t x46 = (x44 + x18);
- uint32_t x47 = (uint32_t) (x46 >> 0x19);
- uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- uint64_t x49 = (x47 + x17);
- uint64_t x50 = (x49 >> 0x18);
- uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- uint64_t x52 = (x27 + (0x3 * x50));
- uint32_t x53 = (uint32_t) (x52 >> 0x19);
- uint32_t x54 = ((uint32_t)x52 & 0x1ffffff);
- uint32_t x55 = (x53 + x30);
- uint32_t x56 = (x55 >> 0x19);
- uint32_t x57 = (x55 & 0x1ffffff);
- return (Return x51, Return x48, Return x45, Return x42, Return x39, Return x36, (x56 + x33), Return x57, Return x54))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e221m3_9limbs/fesquareDisplay.v b/src/Specific/solinas32_2e221m3_9limbs/fesquareDisplay.v
deleted file mode 100644
index 1d5fbce10..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e221m3_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e221m3_9limbs/fesub.c b/src/Specific/solinas32_2e221m3_9limbs/fesub.c
deleted file mode 100644
index 094cc73ac..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/fesub.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void fesub(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = ((0x3fffffa + x5) - x21);
- out[1] = ((0x3fffffe + x7) - x23);
- out[2] = ((0x1fffffe + x9) - x25);
- out[3] = ((0x3fffffe + x11) - x27);
- out[4] = ((0x1fffffe + x13) - x29);
- out[5] = ((0x3fffffe + x15) - x31);
- out[6] = ((0x1fffffe + x17) - x33);
- out[7] = ((0x3fffffe + x19) - x35);
- out[8] = ((0x1fffffe + x18) - x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e221m3_9limbs/fesub.v b/src/Specific/solinas32_2e221m3_9limbs/fesub.v
deleted file mode 100644
index 90bbfa0bd..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e221m3_9limbs.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_2e221m3_9limbs/fesubDisplay.log b/src/Specific/solinas32_2e221m3_9limbs/fesubDisplay.log
deleted file mode 100644
index 0cb9b46d8..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- (((0x1fffffe + x18) - x34), ((0x3fffffe + x19) - x35), ((0x1fffffe + x17) - x33), ((0x3fffffe + x15) - x31), ((0x1fffffe + x13) - x29), ((0x3fffffe + x11) - x27), ((0x1fffffe + x9) - x25), ((0x3fffffe + x7) - x23), ((0x3fffffa + x5) - x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e221m3_9limbs/fesubDisplay.v b/src/Specific/solinas32_2e221m3_9limbs/fesubDisplay.v
deleted file mode 100644
index 0bf002a4d..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e221m3_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e221m3_9limbs/freeze.c b/src/Specific/solinas32_2e221m3_9limbs/freeze.c
deleted file mode 100644
index 69217921f..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/freeze.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void freeze(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffd);
- { uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0x1ffffff);
- { uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0xffffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x8, 0x1ffffff);
- { uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0xffffff);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0x1ffffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0xffffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0x1ffffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0xffffff);
- { uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- { uint32_t x45 = (x44 & 0x1fffffd);
- { uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- { uint32_t x49 = (x44 & 0x1ffffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- { uint32_t x53 = (x44 & 0xffffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- { uint32_t x57 = (x44 & 0x1ffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- { uint32_t x61 = (x44 & 0xffffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- { uint32_t x65 = (x44 & 0x1ffffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- { uint32_t x69 = (x44 & 0xffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- { uint32_t x73 = (x44 & 0x1ffffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- { uint32_t x77 = (x44 & 0xffffff);
- { uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- out[0] = x47;
- out[1] = x51;
- out[2] = x55;
- out[3] = x59;
- out[4] = x63;
- out[5] = x67;
- out[6] = x71;
- out[7] = x75;
- out[8] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e221m3_9limbs/freeze.v b/src/Specific/solinas32_2e221m3_9limbs/freeze.v
deleted file mode 100644
index efadf1a5a..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e221m3_9limbs.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_2e221m3_9limbs/freezeDisplay.log b/src/Specific/solinas32_2e221m3_9limbs/freezeDisplay.log
deleted file mode 100644
index 3bdcfa0ed..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffd);
- uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0x1ffffff);
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0xffffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x8, 0x1ffffff);
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0xffffff);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0x1ffffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0xffffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0x1ffffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0xffffff);
- uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- uint32_t x45 = (x44 & 0x1fffffd);
- uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- uint32_t x49 = (x44 & 0x1ffffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- uint32_t x53 = (x44 & 0xffffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- uint32_t x57 = (x44 & 0x1ffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- uint32_t x61 = (x44 & 0xffffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- uint32_t x65 = (x44 & 0x1ffffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- uint32_t x69 = (x44 & 0xffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- uint32_t x73 = (x44 & 0x1ffffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- uint32_t x77 = (x44 & 0xffffff);
- uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- (Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x51, Return x47))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e221m3_9limbs/freezeDisplay.v b/src/Specific/solinas32_2e221m3_9limbs/freezeDisplay.v
deleted file mode 100644
index b3de6ffdd..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e221m3_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e221m3_9limbs/py_interpreter.sh b/src/Specific/solinas32_2e221m3_9limbs/py_interpreter.sh
deleted file mode 100755
index c7fb75c2b..000000000
--- a/src/Specific/solinas32_2e221m3_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**221 - 3' -Dmodulus_bytes='24 + 5/9' -Da24='121665'
diff --git a/src/Specific/solinas32_2e222m117_10limbs/CurveParameters.v b/src/Specific/solinas32_2e222m117_10limbs/CurveParameters.v
deleted file mode 100644
index 75c7e2c96..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^222 - 117
-Base: 22.2
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 22 + 1/5;
- bitwidth := 32;
- s := 2^222;
- c := [(1, 117)];
- carry_chains := Some [seq 0 (pred 10); [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_2e222m117_10limbs/Synthesis.v b/src/Specific/solinas32_2e222m117_10limbs/Synthesis.v
deleted file mode 100644
index cb0f4c535..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e222m117_10limbs.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_2e222m117_10limbs/compiler.sh b/src/Specific/solinas32_2e222m117_10limbs/compiler.sh
deleted file mode 100755
index 5976a682e..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,22,22,22,22,23,22,22,22,22}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<222) - 117' "$@"
diff --git a/src/Specific/solinas32_2e222m117_10limbs/compilerxx.sh b/src/Specific/solinas32_2e222m117_10limbs/compilerxx.sh
deleted file mode 100755
index f00a6670a..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,22,22,22,22,23,22,22,22,22}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<222) - 117' "$@"
diff --git a/src/Specific/solinas32_2e222m117_10limbs/feadd.c b/src/Specific/solinas32_2e222m117_10limbs/feadd.c
deleted file mode 100644
index 57dd4e1af..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/feadd.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void feadd(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- out[0] = (x5 + x23);
- out[1] = (x7 + x25);
- out[2] = (x9 + x27);
- out[3] = (x11 + x29);
- out[4] = (x13 + x31);
- out[5] = (x15 + x33);
- out[6] = (x17 + x35);
- out[7] = (x19 + x37);
- out[8] = (x21 + x39);
- out[9] = (x20 + x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e222m117_10limbs/feadd.v b/src/Specific/solinas32_2e222m117_10limbs/feadd.v
deleted file mode 100644
index 79b253b51..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e222m117_10limbs.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_2e222m117_10limbs/feaddDisplay.log b/src/Specific/solinas32_2e222m117_10limbs/feaddDisplay.log
deleted file mode 100644
index 8a4c51148..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e222m117_10limbs/feaddDisplay.v b/src/Specific/solinas32_2e222m117_10limbs/feaddDisplay.v
deleted file mode 100644
index e6839b871..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e222m117_10limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e222m117_10limbs/fecarry.v b/src/Specific/solinas32_2e222m117_10limbs/fecarry.v
deleted file mode 100644
index d0c58d19d..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e222m117_10limbs.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_2e222m117_10limbs/fecarryDisplay.v b/src/Specific/solinas32_2e222m117_10limbs/fecarryDisplay.v
deleted file mode 100644
index 5df5b4375..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e222m117_10limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e222m117_10limbs/femul.c b/src/Specific/solinas32_2e222m117_10limbs/femul.c
deleted file mode 100644
index a890cbb84..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/femul.c
+++ /dev/null
@@ -1,78 +0,0 @@
-static void femul(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- { uint64_t x40 = (((uint64_t)x5 * x38) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + ((0x2 * ((uint64_t)x11 * x35)) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + ((0x2 * ((uint64_t)x17 * x29)) + ((0x2 * ((uint64_t)x19 * x27)) + ((0x2 * ((uint64_t)x21 * x25)) + ((uint64_t)x20 * x23))))))))));
- { uint64_t x41 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + ((uint64_t)x21 * x23))))))))) + (0x75 * ((uint64_t)x20 * x38)));
- { uint64_t x42 = ((((uint64_t)x5 * x37) + ((0x2 * ((uint64_t)x7 * x35)) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + ((0x2 * ((uint64_t)x17 * x25)) + ((uint64_t)x19 * x23)))))))) + (0x75 * (((uint64_t)x21 * x38) + ((uint64_t)x20 * x39))));
- { uint64_t x43 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + ((uint64_t)x17 * x23))))))) + (0x75 * (((uint64_t)x19 * x38) + (((uint64_t)x21 * x39) + ((uint64_t)x20 * x37)))));
- { uint64_t x44 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((0x2 * ((uint64_t)x11 * x27)) + ((0x2 * ((uint64_t)x13 * x25)) + ((uint64_t)x15 * x23)))))) + (0x75 * ((0x2 * ((uint64_t)x17 * x38)) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + (0x2 * ((uint64_t)x20 * x35)))))));
- { uint64_t x45 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((uint64_t)x13 * x23))))) + (0x75 * (((uint64_t)x15 * x38) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + ((0x2 * ((uint64_t)x21 * x35)) + ((uint64_t)x20 * x33)))))));
- { uint64_t x46 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((uint64_t)x11 * x23)))) + (0x75 * (((uint64_t)x13 * x38) + (((uint64_t)x15 * x39) + ((0x2 * ((uint64_t)x17 * x37)) + ((0x2 * ((uint64_t)x19 * x35)) + (((uint64_t)x21 * x33) + ((uint64_t)x20 * x31))))))));
- { uint64_t x47 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((uint64_t)x9 * x23))) + (0x75 * (((uint64_t)x11 * x38) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((0x2 * ((uint64_t)x17 * x35)) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((uint64_t)x20 * x29)))))))));
- { uint64_t x48 = ((((uint64_t)x5 * x25) + ((uint64_t)x7 * x23)) + (0x75 * (((uint64_t)x9 * x38) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (((uint64_t)x21 * x29) + ((uint64_t)x20 * x27))))))))));
- { uint64_t x49 = (((uint64_t)x5 * x23) + (0x75 * ((0x2 * ((uint64_t)x7 * x38)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + (((uint64_t)x15 * x33) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((0x2 * ((uint64_t)x21 * x27)) + (0x2 * ((uint64_t)x20 * x25))))))))))));
- { uint64_t x50 = (x49 >> 0x17);
- { uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- { uint64_t x52 = (x50 + x48);
- { uint64_t x53 = (x52 >> 0x16);
- { uint32_t x54 = ((uint32_t)x52 & 0x3fffff);
- { uint64_t x55 = (x53 + x47);
- { uint64_t x56 = (x55 >> 0x16);
- { uint32_t x57 = ((uint32_t)x55 & 0x3fffff);
- { uint64_t x58 = (x56 + x46);
- { uint64_t x59 = (x58 >> 0x16);
- { uint32_t x60 = ((uint32_t)x58 & 0x3fffff);
- { uint64_t x61 = (x59 + x45);
- { uint64_t x62 = (x61 >> 0x16);
- { uint32_t x63 = ((uint32_t)x61 & 0x3fffff);
- { uint64_t x64 = (x62 + x44);
- { uint64_t x65 = (x64 >> 0x17);
- { uint32_t x66 = ((uint32_t)x64 & 0x7fffff);
- { uint64_t x67 = (x65 + x43);
- { uint64_t x68 = (x67 >> 0x16);
- { uint32_t x69 = ((uint32_t)x67 & 0x3fffff);
- { uint64_t x70 = (x68 + x42);
- { uint64_t x71 = (x70 >> 0x16);
- { uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- { uint64_t x73 = (x71 + x41);
- { uint64_t x74 = (x73 >> 0x16);
- { uint32_t x75 = ((uint32_t)x73 & 0x3fffff);
- { uint64_t x76 = (x74 + x40);
- { uint32_t x77 = (uint32_t) (x76 >> 0x16);
- { uint32_t x78 = ((uint32_t)x76 & 0x3fffff);
- { uint64_t x79 = (x51 + ((uint64_t)0x75 * x77));
- { uint32_t x80 = (uint32_t) (x79 >> 0x17);
- { uint32_t x81 = ((uint32_t)x79 & 0x7fffff);
- { uint32_t x82 = (x80 + x54);
- { uint32_t x83 = (x82 >> 0x16);
- { uint32_t x84 = (x82 & 0x3fffff);
- out[0] = x81;
- out[1] = x84;
- out[2] = (x83 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e222m117_10limbs/femul.v b/src/Specific/solinas32_2e222m117_10limbs/femul.v
deleted file mode 100644
index 1f5231692..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e222m117_10limbs.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_2e222m117_10limbs/femulDisplay.log b/src/Specific/solinas32_2e222m117_10limbs/femulDisplay.log
deleted file mode 100644
index 42ac8e79b..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/femulDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- uint64_t x40 = (((uint64_t)x5 * x38) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + ((0x2 * ((uint64_t)x11 * x35)) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + ((0x2 * ((uint64_t)x17 * x29)) + ((0x2 * ((uint64_t)x19 * x27)) + ((0x2 * ((uint64_t)x21 * x25)) + ((uint64_t)x20 * x23))))))))));
- uint64_t x41 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + ((uint64_t)x21 * x23))))))))) + (0x75 * ((uint64_t)x20 * x38)));
- uint64_t x42 = ((((uint64_t)x5 * x37) + ((0x2 * ((uint64_t)x7 * x35)) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + ((0x2 * ((uint64_t)x17 * x25)) + ((uint64_t)x19 * x23)))))))) + (0x75 * (((uint64_t)x21 * x38) + ((uint64_t)x20 * x39))));
- uint64_t x43 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + ((uint64_t)x17 * x23))))))) + (0x75 * (((uint64_t)x19 * x38) + (((uint64_t)x21 * x39) + ((uint64_t)x20 * x37)))));
- uint64_t x44 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((0x2 * ((uint64_t)x11 * x27)) + ((0x2 * ((uint64_t)x13 * x25)) + ((uint64_t)x15 * x23)))))) + (0x75 * ((0x2 * ((uint64_t)x17 * x38)) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + (0x2 * ((uint64_t)x20 * x35)))))));
- uint64_t x45 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((uint64_t)x13 * x23))))) + (0x75 * (((uint64_t)x15 * x38) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + ((0x2 * ((uint64_t)x21 * x35)) + ((uint64_t)x20 * x33)))))));
- uint64_t x46 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((uint64_t)x11 * x23)))) + (0x75 * (((uint64_t)x13 * x38) + (((uint64_t)x15 * x39) + ((0x2 * ((uint64_t)x17 * x37)) + ((0x2 * ((uint64_t)x19 * x35)) + (((uint64_t)x21 * x33) + ((uint64_t)x20 * x31))))))));
- uint64_t x47 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((uint64_t)x9 * x23))) + (0x75 * (((uint64_t)x11 * x38) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((0x2 * ((uint64_t)x17 * x35)) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((uint64_t)x20 * x29)))))))));
- uint64_t x48 = ((((uint64_t)x5 * x25) + ((uint64_t)x7 * x23)) + (0x75 * (((uint64_t)x9 * x38) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (((uint64_t)x21 * x29) + ((uint64_t)x20 * x27))))))))));
- uint64_t x49 = (((uint64_t)x5 * x23) + (0x75 * ((0x2 * ((uint64_t)x7 * x38)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + (((uint64_t)x15 * x33) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((0x2 * ((uint64_t)x21 * x27)) + (0x2 * ((uint64_t)x20 * x25))))))))))));
- uint64_t x50 = (x49 >> 0x17);
- uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- uint64_t x52 = (x50 + x48);
- uint64_t x53 = (x52 >> 0x16);
- uint32_t x54 = ((uint32_t)x52 & 0x3fffff);
- uint64_t x55 = (x53 + x47);
- uint64_t x56 = (x55 >> 0x16);
- uint32_t x57 = ((uint32_t)x55 & 0x3fffff);
- uint64_t x58 = (x56 + x46);
- uint64_t x59 = (x58 >> 0x16);
- uint32_t x60 = ((uint32_t)x58 & 0x3fffff);
- uint64_t x61 = (x59 + x45);
- uint64_t x62 = (x61 >> 0x16);
- uint32_t x63 = ((uint32_t)x61 & 0x3fffff);
- uint64_t x64 = (x62 + x44);
- uint64_t x65 = (x64 >> 0x17);
- uint32_t x66 = ((uint32_t)x64 & 0x7fffff);
- uint64_t x67 = (x65 + x43);
- uint64_t x68 = (x67 >> 0x16);
- uint32_t x69 = ((uint32_t)x67 & 0x3fffff);
- uint64_t x70 = (x68 + x42);
- uint64_t x71 = (x70 >> 0x16);
- uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- uint64_t x73 = (x71 + x41);
- uint64_t x74 = (x73 >> 0x16);
- uint32_t x75 = ((uint32_t)x73 & 0x3fffff);
- uint64_t x76 = (x74 + x40);
- uint32_t x77 = (uint32_t) (x76 >> 0x16);
- uint32_t x78 = ((uint32_t)x76 & 0x3fffff);
- uint64_t x79 = (x51 + ((uint64_t)0x75 * x77));
- uint32_t x80 = (uint32_t) (x79 >> 0x17);
- uint32_t x81 = ((uint32_t)x79 & 0x7fffff);
- uint32_t x82 = (x80 + x54);
- uint32_t x83 = (x82 >> 0x16);
- uint32_t x84 = (x82 & 0x3fffff);
- return (Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x83 + x57), Return x84, Return x81))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e222m117_10limbs/femulDisplay.v b/src/Specific/solinas32_2e222m117_10limbs/femulDisplay.v
deleted file mode 100644
index 95f82806c..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e222m117_10limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e222m117_10limbs/fesquare.c b/src/Specific/solinas32_2e222m117_10limbs/fesquare.c
deleted file mode 100644
index 5d1995438..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/fesquare.c
+++ /dev/null
@@ -1,68 +0,0 @@
-static void fesquare(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x19 = (((uint64_t)x2 * x17) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x17 * x2))))))))));
- { uint64_t x20 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x75 * ((uint64_t)x17 * x17)));
- { uint64_t x21 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x75 * (((uint64_t)x18 * x17) + ((uint64_t)x17 * x18))));
- { uint64_t x22 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x75 * (((uint64_t)x16 * x17) + (((uint64_t)x18 * x18) + ((uint64_t)x17 * x16)))));
- { uint64_t x23 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x75 * ((0x2 * ((uint64_t)x14 * x17)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (0x2 * ((uint64_t)x17 * x14)))))));
- { uint64_t x24 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x75 * (((uint64_t)x12 * x17) + ((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + ((0x2 * ((uint64_t)x18 * x14)) + ((uint64_t)x17 * x12)))))));
- { uint64_t x25 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x75 * (((uint64_t)x10 * x17) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + ((uint64_t)x17 * x10))))))));
- { uint64_t x26 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x75 * (((uint64_t)x8 * x17) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((uint64_t)x17 * x8)))))))));
- { uint64_t x27 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x75 * (((uint64_t)x6 * x17) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((uint64_t)x17 * x6))))))))));
- { uint64_t x28 = (((uint64_t)x2 * x2) + (0x75 * ((0x2 * ((uint64_t)x4 * x17)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + (0x2 * ((uint64_t)x17 * x4))))))))))));
- { uint64_t x29 = (x28 >> 0x17);
- { uint32_t x30 = ((uint32_t)x28 & 0x7fffff);
- { uint64_t x31 = (x29 + x27);
- { uint64_t x32 = (x31 >> 0x16);
- { uint32_t x33 = ((uint32_t)x31 & 0x3fffff);
- { uint64_t x34 = (x32 + x26);
- { uint64_t x35 = (x34 >> 0x16);
- { uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- { uint64_t x37 = (x35 + x25);
- { uint64_t x38 = (x37 >> 0x16);
- { uint32_t x39 = ((uint32_t)x37 & 0x3fffff);
- { uint64_t x40 = (x38 + x24);
- { uint64_t x41 = (x40 >> 0x16);
- { uint32_t x42 = ((uint32_t)x40 & 0x3fffff);
- { uint64_t x43 = (x41 + x23);
- { uint64_t x44 = (x43 >> 0x17);
- { uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- { uint64_t x46 = (x44 + x22);
- { uint64_t x47 = (x46 >> 0x16);
- { uint32_t x48 = ((uint32_t)x46 & 0x3fffff);
- { uint64_t x49 = (x47 + x21);
- { uint64_t x50 = (x49 >> 0x16);
- { uint32_t x51 = ((uint32_t)x49 & 0x3fffff);
- { uint64_t x52 = (x50 + x20);
- { uint64_t x53 = (x52 >> 0x16);
- { uint32_t x54 = ((uint32_t)x52 & 0x3fffff);
- { uint64_t x55 = (x53 + x19);
- { uint32_t x56 = (uint32_t) (x55 >> 0x16);
- { uint32_t x57 = ((uint32_t)x55 & 0x3fffff);
- { uint64_t x58 = (x30 + ((uint64_t)0x75 * x56));
- { uint32_t x59 = (uint32_t) (x58 >> 0x17);
- { uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- { uint32_t x61 = (x59 + x33);
- { uint32_t x62 = (x61 >> 0x16);
- { uint32_t x63 = (x61 & 0x3fffff);
- out[0] = x60;
- out[1] = x63;
- out[2] = (x62 + x36);
- out[3] = x39;
- out[4] = x42;
- out[5] = x45;
- out[6] = x48;
- out[7] = x51;
- out[8] = x54;
- out[9] = x57;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e222m117_10limbs/fesquare.v b/src/Specific/solinas32_2e222m117_10limbs/fesquare.v
deleted file mode 100644
index cdfde13a0..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e222m117_10limbs.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_2e222m117_10limbs/fesquareDisplay.log b/src/Specific/solinas32_2e222m117_10limbs/fesquareDisplay.log
deleted file mode 100644
index ea75716a5..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x19 = (((uint64_t)x2 * x17) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x17 * x2))))))))));
- uint64_t x20 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x75 * ((uint64_t)x17 * x17)));
- uint64_t x21 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x75 * (((uint64_t)x18 * x17) + ((uint64_t)x17 * x18))));
- uint64_t x22 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x75 * (((uint64_t)x16 * x17) + (((uint64_t)x18 * x18) + ((uint64_t)x17 * x16)))));
- uint64_t x23 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x75 * ((0x2 * ((uint64_t)x14 * x17)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (0x2 * ((uint64_t)x17 * x14)))))));
- uint64_t x24 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x75 * (((uint64_t)x12 * x17) + ((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + ((0x2 * ((uint64_t)x18 * x14)) + ((uint64_t)x17 * x12)))))));
- uint64_t x25 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x75 * (((uint64_t)x10 * x17) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + ((uint64_t)x17 * x10))))))));
- uint64_t x26 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x75 * (((uint64_t)x8 * x17) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((uint64_t)x17 * x8)))))))));
- uint64_t x27 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x75 * (((uint64_t)x6 * x17) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((uint64_t)x17 * x6))))))))));
- uint64_t x28 = (((uint64_t)x2 * x2) + (0x75 * ((0x2 * ((uint64_t)x4 * x17)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + (0x2 * ((uint64_t)x17 * x4))))))))))));
- uint64_t x29 = (x28 >> 0x17);
- uint32_t x30 = ((uint32_t)x28 & 0x7fffff);
- uint64_t x31 = (x29 + x27);
- uint64_t x32 = (x31 >> 0x16);
- uint32_t x33 = ((uint32_t)x31 & 0x3fffff);
- uint64_t x34 = (x32 + x26);
- uint64_t x35 = (x34 >> 0x16);
- uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- uint64_t x37 = (x35 + x25);
- uint64_t x38 = (x37 >> 0x16);
- uint32_t x39 = ((uint32_t)x37 & 0x3fffff);
- uint64_t x40 = (x38 + x24);
- uint64_t x41 = (x40 >> 0x16);
- uint32_t x42 = ((uint32_t)x40 & 0x3fffff);
- uint64_t x43 = (x41 + x23);
- uint64_t x44 = (x43 >> 0x17);
- uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- uint64_t x46 = (x44 + x22);
- uint64_t x47 = (x46 >> 0x16);
- uint32_t x48 = ((uint32_t)x46 & 0x3fffff);
- uint64_t x49 = (x47 + x21);
- uint64_t x50 = (x49 >> 0x16);
- uint32_t x51 = ((uint32_t)x49 & 0x3fffff);
- uint64_t x52 = (x50 + x20);
- uint64_t x53 = (x52 >> 0x16);
- uint32_t x54 = ((uint32_t)x52 & 0x3fffff);
- uint64_t x55 = (x53 + x19);
- uint32_t x56 = (uint32_t) (x55 >> 0x16);
- uint32_t x57 = ((uint32_t)x55 & 0x3fffff);
- uint64_t x58 = (x30 + ((uint64_t)0x75 * x56));
- uint32_t x59 = (uint32_t) (x58 >> 0x17);
- uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- uint32_t x61 = (x59 + x33);
- uint32_t x62 = (x61 >> 0x16);
- uint32_t x63 = (x61 & 0x3fffff);
- return (Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, Return x39, (x62 + x36), Return x63, Return x60))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e222m117_10limbs/fesquareDisplay.v b/src/Specific/solinas32_2e222m117_10limbs/fesquareDisplay.v
deleted file mode 100644
index b62b59ce9..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e222m117_10limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e222m117_10limbs/fesub.c b/src/Specific/solinas32_2e222m117_10limbs/fesub.c
deleted file mode 100644
index ebf300def..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/fesub.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fesub(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- out[0] = ((0xffff16 + x5) - x23);
- out[1] = ((0x7ffffe + x7) - x25);
- out[2] = ((0x7ffffe + x9) - x27);
- out[3] = ((0x7ffffe + x11) - x29);
- out[4] = ((0x7ffffe + x13) - x31);
- out[5] = ((0xfffffe + x15) - x33);
- out[6] = ((0x7ffffe + x17) - x35);
- out[7] = ((0x7ffffe + x19) - x37);
- out[8] = ((0x7ffffe + x21) - x39);
- out[9] = ((0x7ffffe + x20) - x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e222m117_10limbs/fesub.v b/src/Specific/solinas32_2e222m117_10limbs/fesub.v
deleted file mode 100644
index 7927c2447..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e222m117_10limbs.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_2e222m117_10limbs/fesubDisplay.log b/src/Specific/solinas32_2e222m117_10limbs/fesubDisplay.log
deleted file mode 100644
index 05a560f1e..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- (((0x7ffffe + x20) - x38), ((0x7ffffe + x21) - x39), ((0x7ffffe + x19) - x37), ((0x7ffffe + x17) - x35), ((0xfffffe + x15) - x33), ((0x7ffffe + x13) - x31), ((0x7ffffe + x11) - x29), ((0x7ffffe + x9) - x27), ((0x7ffffe + x7) - x25), ((0xffff16 + x5) - x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e222m117_10limbs/fesubDisplay.v b/src/Specific/solinas32_2e222m117_10limbs/fesubDisplay.v
deleted file mode 100644
index 59b000ea3..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e222m117_10limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e222m117_10limbs/freeze.c b/src/Specific/solinas32_2e222m117_10limbs/freeze.c
deleted file mode 100644
index 31e1b5c00..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/freeze.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void freeze(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fff8b);
- { uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x4, 0x3fffff);
- { uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x6, 0x3fffff);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x8, 0x3fffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x10, 0x3fffff);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x12, 0x7fffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x14, 0x3fffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x16, 0x3fffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x18, 0x3fffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x17, 0x3fffff);
- { uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- { uint32_t x50 = (x49 & 0x7fff8b);
- { uint32_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- { uint32_t x54 = (x49 & 0x3fffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- { uint32_t x58 = (x49 & 0x3fffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- { uint32_t x62 = (x49 & 0x3fffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- { uint32_t x66 = (x49 & 0x3fffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- { uint32_t x70 = (x49 & 0x7fffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- { uint32_t x74 = (x49 & 0x3fffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- { uint32_t x78 = (x49 & 0x3fffff);
- { uint32_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- { uint32_t x82 = (x49 & 0x3fffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- { uint32_t x86 = (x49 & 0x3fffff);
- { uint32_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- out[0] = x52;
- out[1] = x56;
- out[2] = x60;
- out[3] = x64;
- out[4] = x68;
- out[5] = x72;
- out[6] = x76;
- out[7] = x80;
- out[8] = x84;
- out[9] = x88;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e222m117_10limbs/freeze.v b/src/Specific/solinas32_2e222m117_10limbs/freeze.v
deleted file mode 100644
index a57b515f3..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e222m117_10limbs.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_2e222m117_10limbs/freezeDisplay.log b/src/Specific/solinas32_2e222m117_10limbs/freezeDisplay.log
deleted file mode 100644
index d4ff62712..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fff8b);
- uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x4, 0x3fffff);
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x6, 0x3fffff);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x8, 0x3fffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x10, 0x3fffff);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x12, 0x7fffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x14, 0x3fffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x16, 0x3fffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x18, 0x3fffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x17, 0x3fffff);
- uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- uint32_t x50 = (x49 & 0x7fff8b);
- uint32_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- uint32_t x54 = (x49 & 0x3fffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- uint32_t x58 = (x49 & 0x3fffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- uint32_t x62 = (x49 & 0x3fffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- uint32_t x66 = (x49 & 0x3fffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- uint32_t x70 = (x49 & 0x7fffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- uint32_t x74 = (x49 & 0x3fffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- uint32_t x78 = (x49 & 0x3fffff);
- uint32_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- uint32_t x82 = (x49 & 0x3fffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- uint32_t x86 = (x49 & 0x3fffff);
- uint32_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- (Return x88, Return x84, Return x80, Return x76, Return x72, Return x68, Return x64, Return x60, Return x56, Return x52))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e222m117_10limbs/freezeDisplay.v b/src/Specific/solinas32_2e222m117_10limbs/freezeDisplay.v
deleted file mode 100644
index 874bbe919..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e222m117_10limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e222m117_10limbs/py_interpreter.sh b/src/Specific/solinas32_2e222m117_10limbs/py_interpreter.sh
deleted file mode 100755
index c1d96cfbd..000000000
--- a/src/Specific/solinas32_2e222m117_10limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**222 - 117' -Dmodulus_bytes='22.2' -Da24='121665'
diff --git a/src/Specific/solinas32_2e222m117_9limbs/CurveParameters.v b/src/Specific/solinas32_2e222m117_9limbs/CurveParameters.v
deleted file mode 100644
index f2eeeef9a..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^222 - 117
-Base: 24 + 2/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 24 + 2/3;
- bitwidth := 32;
- s := 2^222;
- c := [(1, 117)];
- carry_chains := Some [seq 0 (pred 9); [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_2e222m117_9limbs/Synthesis.v b/src/Specific/solinas32_2e222m117_9limbs/Synthesis.v
deleted file mode 100644
index 28806adee..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e222m117_9limbs.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_2e222m117_9limbs/compiler.sh b/src/Specific/solinas32_2e222m117_9limbs/compiler.sh
deleted file mode 100755
index 87cbfaa5a..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,24,25,25,24,25,25,24}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<222) - 117' "$@"
diff --git a/src/Specific/solinas32_2e222m117_9limbs/compilerxx.sh b/src/Specific/solinas32_2e222m117_9limbs/compilerxx.sh
deleted file mode 100755
index f380a35cd..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,25,24,25,25,24,25,25,24}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<222) - 117' "$@"
diff --git a/src/Specific/solinas32_2e222m117_9limbs/feadd.c b/src/Specific/solinas32_2e222m117_9limbs/feadd.c
deleted file mode 100644
index e1188fdec..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e222m117_9limbs/feadd.v b/src/Specific/solinas32_2e222m117_9limbs/feadd.v
deleted file mode 100644
index 729d8f4d0..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e222m117_9limbs.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_2e222m117_9limbs/feaddDisplay.log b/src/Specific/solinas32_2e222m117_9limbs/feaddDisplay.log
deleted file mode 100644
index e26bb40f8..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e222m117_9limbs/feaddDisplay.v b/src/Specific/solinas32_2e222m117_9limbs/feaddDisplay.v
deleted file mode 100644
index c3d0b96cc..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e222m117_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e222m117_9limbs/fecarry.v b/src/Specific/solinas32_2e222m117_9limbs/fecarry.v
deleted file mode 100644
index ba7d720c8..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e222m117_9limbs.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_2e222m117_9limbs/fecarryDisplay.v b/src/Specific/solinas32_2e222m117_9limbs/fecarryDisplay.v
deleted file mode 100644
index d6f409027..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e222m117_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e222m117_9limbs/femul.c b/src/Specific/solinas32_2e222m117_9limbs/femul.c
deleted file mode 100644
index a62885f43..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/femul.c
+++ /dev/null
@@ -1,71 +0,0 @@
-static void femul(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- { uint64_t x36 = (((uint64_t)x5 * x34) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + (((uint64_t)x19 * x23) + ((uint64_t)x18 * x21)))))))));
- { uint64_t x37 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + ((0x2 * ((uint64_t)x9 * x31)) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + (((uint64_t)x17 * x23) + ((uint64_t)x19 * x21)))))))) + (0x75 * (0x2 * ((uint64_t)x18 * x34))));
- { uint64_t x38 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + (((uint64_t)x11 * x27) + ((0x2 * ((uint64_t)x13 * x25)) + ((0x2 * ((uint64_t)x15 * x23)) + ((uint64_t)x17 * x21))))))) + (0x75 * ((0x2 * ((uint64_t)x19 * x34)) + (0x2 * ((uint64_t)x18 * x35)))));
- { uint64_t x39 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + (((uint64_t)x13 * x23) + ((uint64_t)x15 * x21)))))) + (0x75 * (((uint64_t)x17 * x34) + (((uint64_t)x19 * x35) + ((uint64_t)x18 * x33)))));
- { uint64_t x40 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + (((uint64_t)x11 * x23) + ((uint64_t)x13 * x21))))) + (0x75 * ((0x2 * ((uint64_t)x15 * x34)) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + (0x2 * ((uint64_t)x18 * x31)))))));
- { uint64_t x41 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((uint64_t)x11 * x21)))) + (0x75 * ((0x2 * ((uint64_t)x13 * x34)) + ((0x2 * ((uint64_t)x15 * x35)) + (((uint64_t)x17 * x33) + ((0x2 * ((uint64_t)x19 * x31)) + (0x2 * ((uint64_t)x18 * x29))))))));
- { uint64_t x42 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + ((uint64_t)x9 * x21))) + (0x75 * (((uint64_t)x11 * x34) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + ((uint64_t)x18 * x27))))))));
- { uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0x75 * ((0x2 * ((uint64_t)x9 * x34)) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + ((0x2 * ((uint64_t)x15 * x31)) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + (0x2 * ((uint64_t)x18 * x25))))))))));
- { uint64_t x44 = (((uint64_t)x5 * x21) + (0x75 * ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + (((uint64_t)x11 * x33) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23)))))))))));
- { uint64_t x45 = (x44 >> 0x19);
- { uint32_t x46 = ((uint32_t)x44 & 0x1ffffff);
- { uint64_t x47 = (x45 + x43);
- { uint64_t x48 = (x47 >> 0x19);
- { uint32_t x49 = ((uint32_t)x47 & 0x1ffffff);
- { uint64_t x50 = (x48 + x42);
- { uint64_t x51 = (x50 >> 0x18);
- { uint32_t x52 = ((uint32_t)x50 & 0xffffff);
- { uint64_t x53 = (x51 + x41);
- { uint64_t x54 = (x53 >> 0x19);
- { uint32_t x55 = ((uint32_t)x53 & 0x1ffffff);
- { uint64_t x56 = (x54 + x40);
- { uint64_t x57 = (x56 >> 0x19);
- { uint32_t x58 = ((uint32_t)x56 & 0x1ffffff);
- { uint64_t x59 = (x57 + x39);
- { uint64_t x60 = (x59 >> 0x18);
- { uint32_t x61 = ((uint32_t)x59 & 0xffffff);
- { uint64_t x62 = (x60 + x38);
- { uint64_t x63 = (x62 >> 0x19);
- { uint32_t x64 = ((uint32_t)x62 & 0x1ffffff);
- { uint64_t x65 = (x63 + x37);
- { uint64_t x66 = (x65 >> 0x19);
- { uint32_t x67 = ((uint32_t)x65 & 0x1ffffff);
- { uint64_t x68 = (x66 + x36);
- { uint64_t x69 = (x68 >> 0x18);
- { uint32_t x70 = ((uint32_t)x68 & 0xffffff);
- { uint64_t x71 = (x46 + (0x75 * x69));
- { uint32_t x72 = (uint32_t) (x71 >> 0x19);
- { uint32_t x73 = ((uint32_t)x71 & 0x1ffffff);
- { uint32_t x74 = (x72 + x49);
- { uint32_t x75 = (x74 >> 0x19);
- { uint32_t x76 = (x74 & 0x1ffffff);
- out[0] = x73;
- out[1] = x76;
- out[2] = (x75 + x52);
- out[3] = x55;
- out[4] = x58;
- out[5] = x61;
- out[6] = x64;
- out[7] = x67;
- out[8] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e222m117_9limbs/femul.v b/src/Specific/solinas32_2e222m117_9limbs/femul.v
deleted file mode 100644
index 1f1a6837a..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e222m117_9limbs.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_2e222m117_9limbs/femulDisplay.log b/src/Specific/solinas32_2e222m117_9limbs/femulDisplay.log
deleted file mode 100644
index 83ba14b2c..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/femulDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint64_t x36 = (((uint64_t)x5 * x34) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + (((uint64_t)x19 * x23) + ((uint64_t)x18 * x21)))))))));
- uint64_t x37 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + ((0x2 * ((uint64_t)x9 * x31)) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + (((uint64_t)x17 * x23) + ((uint64_t)x19 * x21)))))))) + (0x75 * (0x2 * ((uint64_t)x18 * x34))));
- uint64_t x38 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + (((uint64_t)x11 * x27) + ((0x2 * ((uint64_t)x13 * x25)) + ((0x2 * ((uint64_t)x15 * x23)) + ((uint64_t)x17 * x21))))))) + (0x75 * ((0x2 * ((uint64_t)x19 * x34)) + (0x2 * ((uint64_t)x18 * x35)))));
- uint64_t x39 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + (((uint64_t)x13 * x23) + ((uint64_t)x15 * x21)))))) + (0x75 * (((uint64_t)x17 * x34) + (((uint64_t)x19 * x35) + ((uint64_t)x18 * x33)))));
- uint64_t x40 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + (((uint64_t)x11 * x23) + ((uint64_t)x13 * x21))))) + (0x75 * ((0x2 * ((uint64_t)x15 * x34)) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + (0x2 * ((uint64_t)x18 * x31)))))));
- uint64_t x41 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((uint64_t)x11 * x21)))) + (0x75 * ((0x2 * ((uint64_t)x13 * x34)) + ((0x2 * ((uint64_t)x15 * x35)) + (((uint64_t)x17 * x33) + ((0x2 * ((uint64_t)x19 * x31)) + (0x2 * ((uint64_t)x18 * x29))))))));
- uint64_t x42 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + ((uint64_t)x9 * x21))) + (0x75 * (((uint64_t)x11 * x34) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + ((uint64_t)x18 * x27))))))));
- uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0x75 * ((0x2 * ((uint64_t)x9 * x34)) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + ((0x2 * ((uint64_t)x15 * x31)) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + (0x2 * ((uint64_t)x18 * x25))))))))));
- uint64_t x44 = (((uint64_t)x5 * x21) + (0x75 * ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + (((uint64_t)x11 * x33) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23)))))))))));
- uint64_t x45 = (x44 >> 0x19);
- uint32_t x46 = ((uint32_t)x44 & 0x1ffffff);
- uint64_t x47 = (x45 + x43);
- uint64_t x48 = (x47 >> 0x19);
- uint32_t x49 = ((uint32_t)x47 & 0x1ffffff);
- uint64_t x50 = (x48 + x42);
- uint64_t x51 = (x50 >> 0x18);
- uint32_t x52 = ((uint32_t)x50 & 0xffffff);
- uint64_t x53 = (x51 + x41);
- uint64_t x54 = (x53 >> 0x19);
- uint32_t x55 = ((uint32_t)x53 & 0x1ffffff);
- uint64_t x56 = (x54 + x40);
- uint64_t x57 = (x56 >> 0x19);
- uint32_t x58 = ((uint32_t)x56 & 0x1ffffff);
- uint64_t x59 = (x57 + x39);
- uint64_t x60 = (x59 >> 0x18);
- uint32_t x61 = ((uint32_t)x59 & 0xffffff);
- uint64_t x62 = (x60 + x38);
- uint64_t x63 = (x62 >> 0x19);
- uint32_t x64 = ((uint32_t)x62 & 0x1ffffff);
- uint64_t x65 = (x63 + x37);
- uint64_t x66 = (x65 >> 0x19);
- uint32_t x67 = ((uint32_t)x65 & 0x1ffffff);
- uint64_t x68 = (x66 + x36);
- uint64_t x69 = (x68 >> 0x18);
- uint32_t x70 = ((uint32_t)x68 & 0xffffff);
- uint64_t x71 = (x46 + (0x75 * x69));
- uint32_t x72 = (uint32_t) (x71 >> 0x19);
- uint32_t x73 = ((uint32_t)x71 & 0x1ffffff);
- uint32_t x74 = (x72 + x49);
- uint32_t x75 = (x74 >> 0x19);
- uint32_t x76 = (x74 & 0x1ffffff);
- return (Return x70, Return x67, Return x64, Return x61, Return x58, Return x55, (x75 + x52), Return x76, Return x73))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e222m117_9limbs/femulDisplay.v b/src/Specific/solinas32_2e222m117_9limbs/femulDisplay.v
deleted file mode 100644
index 063f2f0b9..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e222m117_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e222m117_9limbs/fesquare.c b/src/Specific/solinas32_2e222m117_9limbs/fesquare.c
deleted file mode 100644
index c6201cf09..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/fesquare.c
+++ /dev/null
@@ -1,62 +0,0 @@
-static void fesquare(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x17 = (((uint64_t)x2 * x15) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x15 * x2)))))))));
- { uint64_t x18 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x75 * (0x2 * ((uint64_t)x15 * x15))));
- { uint64_t x19 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x75 * ((0x2 * ((uint64_t)x16 * x15)) + (0x2 * ((uint64_t)x15 * x16)))));
- { uint64_t x20 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x75 * (((uint64_t)x14 * x15) + (((uint64_t)x16 * x16) + ((uint64_t)x15 * x14)))));
- { uint64_t x21 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x75 * ((0x2 * ((uint64_t)x12 * x15)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (0x2 * ((uint64_t)x15 * x12)))))));
- { uint64_t x22 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x75 * ((0x2 * ((uint64_t)x10 * x15)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (0x2 * ((uint64_t)x15 * x10))))))));
- { uint64_t x23 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x75 * (((uint64_t)x8 * x15) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x15 * x8))))))));
- { uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x75 * ((0x2 * ((uint64_t)x6 * x15)) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (0x2 * ((uint64_t)x15 * x6))))))))));
- { uint64_t x25 = (((uint64_t)x2 * x2) + (0x75 * ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4)))))))))));
- { uint64_t x26 = (x25 >> 0x19);
- { uint32_t x27 = ((uint32_t)x25 & 0x1ffffff);
- { uint64_t x28 = (x26 + x24);
- { uint64_t x29 = (x28 >> 0x19);
- { uint32_t x30 = ((uint32_t)x28 & 0x1ffffff);
- { uint64_t x31 = (x29 + x23);
- { uint64_t x32 = (x31 >> 0x18);
- { uint32_t x33 = ((uint32_t)x31 & 0xffffff);
- { uint64_t x34 = (x32 + x22);
- { uint64_t x35 = (x34 >> 0x19);
- { uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- { uint64_t x37 = (x35 + x21);
- { uint64_t x38 = (x37 >> 0x19);
- { uint32_t x39 = ((uint32_t)x37 & 0x1ffffff);
- { uint64_t x40 = (x38 + x20);
- { uint64_t x41 = (x40 >> 0x18);
- { uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- { uint64_t x43 = (x41 + x19);
- { uint64_t x44 = (x43 >> 0x19);
- { uint32_t x45 = ((uint32_t)x43 & 0x1ffffff);
- { uint64_t x46 = (x44 + x18);
- { uint64_t x47 = (x46 >> 0x19);
- { uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- { uint64_t x49 = (x47 + x17);
- { uint64_t x50 = (x49 >> 0x18);
- { uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- { uint64_t x52 = (x27 + (0x75 * x50));
- { uint32_t x53 = (uint32_t) (x52 >> 0x19);
- { uint32_t x54 = ((uint32_t)x52 & 0x1ffffff);
- { uint32_t x55 = (x53 + x30);
- { uint32_t x56 = (x55 >> 0x19);
- { uint32_t x57 = (x55 & 0x1ffffff);
- out[0] = x54;
- out[1] = x57;
- out[2] = (x56 + x33);
- out[3] = x36;
- out[4] = x39;
- out[5] = x42;
- out[6] = x45;
- out[7] = x48;
- out[8] = x51;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e222m117_9limbs/fesquare.v b/src/Specific/solinas32_2e222m117_9limbs/fesquare.v
deleted file mode 100644
index bc237e524..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e222m117_9limbs.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_2e222m117_9limbs/fesquareDisplay.log b/src/Specific/solinas32_2e222m117_9limbs/fesquareDisplay.log
deleted file mode 100644
index 90145be16..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x17 = (((uint64_t)x2 * x15) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x15 * x2)))))))));
- uint64_t x18 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x75 * (0x2 * ((uint64_t)x15 * x15))));
- uint64_t x19 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x75 * ((0x2 * ((uint64_t)x16 * x15)) + (0x2 * ((uint64_t)x15 * x16)))));
- uint64_t x20 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x75 * (((uint64_t)x14 * x15) + (((uint64_t)x16 * x16) + ((uint64_t)x15 * x14)))));
- uint64_t x21 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x75 * ((0x2 * ((uint64_t)x12 * x15)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (0x2 * ((uint64_t)x15 * x12)))))));
- uint64_t x22 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x75 * ((0x2 * ((uint64_t)x10 * x15)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (0x2 * ((uint64_t)x15 * x10))))))));
- uint64_t x23 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x75 * (((uint64_t)x8 * x15) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x15 * x8))))))));
- uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x75 * ((0x2 * ((uint64_t)x6 * x15)) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (0x2 * ((uint64_t)x15 * x6))))))))));
- uint64_t x25 = (((uint64_t)x2 * x2) + (0x75 * ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4)))))))))));
- uint64_t x26 = (x25 >> 0x19);
- uint32_t x27 = ((uint32_t)x25 & 0x1ffffff);
- uint64_t x28 = (x26 + x24);
- uint64_t x29 = (x28 >> 0x19);
- uint32_t x30 = ((uint32_t)x28 & 0x1ffffff);
- uint64_t x31 = (x29 + x23);
- uint64_t x32 = (x31 >> 0x18);
- uint32_t x33 = ((uint32_t)x31 & 0xffffff);
- uint64_t x34 = (x32 + x22);
- uint64_t x35 = (x34 >> 0x19);
- uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- uint64_t x37 = (x35 + x21);
- uint64_t x38 = (x37 >> 0x19);
- uint32_t x39 = ((uint32_t)x37 & 0x1ffffff);
- uint64_t x40 = (x38 + x20);
- uint64_t x41 = (x40 >> 0x18);
- uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- uint64_t x43 = (x41 + x19);
- uint64_t x44 = (x43 >> 0x19);
- uint32_t x45 = ((uint32_t)x43 & 0x1ffffff);
- uint64_t x46 = (x44 + x18);
- uint64_t x47 = (x46 >> 0x19);
- uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- uint64_t x49 = (x47 + x17);
- uint64_t x50 = (x49 >> 0x18);
- uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- uint64_t x52 = (x27 + (0x75 * x50));
- uint32_t x53 = (uint32_t) (x52 >> 0x19);
- uint32_t x54 = ((uint32_t)x52 & 0x1ffffff);
- uint32_t x55 = (x53 + x30);
- uint32_t x56 = (x55 >> 0x19);
- uint32_t x57 = (x55 & 0x1ffffff);
- return (Return x51, Return x48, Return x45, Return x42, Return x39, Return x36, (x56 + x33), Return x57, Return x54))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e222m117_9limbs/fesquareDisplay.v b/src/Specific/solinas32_2e222m117_9limbs/fesquareDisplay.v
deleted file mode 100644
index 79b202e26..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e222m117_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e222m117_9limbs/fesub.c b/src/Specific/solinas32_2e222m117_9limbs/fesub.c
deleted file mode 100644
index 9c28db3e3..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/fesub.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void fesub(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = ((0x3ffff16 + x5) - x21);
- out[1] = ((0x3fffffe + x7) - x23);
- out[2] = ((0x1fffffe + x9) - x25);
- out[3] = ((0x3fffffe + x11) - x27);
- out[4] = ((0x3fffffe + x13) - x29);
- out[5] = ((0x1fffffe + x15) - x31);
- out[6] = ((0x3fffffe + x17) - x33);
- out[7] = ((0x3fffffe + x19) - x35);
- out[8] = ((0x1fffffe + x18) - x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e222m117_9limbs/fesub.v b/src/Specific/solinas32_2e222m117_9limbs/fesub.v
deleted file mode 100644
index 43d42a85b..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e222m117_9limbs.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_2e222m117_9limbs/fesubDisplay.log b/src/Specific/solinas32_2e222m117_9limbs/fesubDisplay.log
deleted file mode 100644
index 0f4a409f7..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- (((0x1fffffe + x18) - x34), ((0x3fffffe + x19) - x35), ((0x3fffffe + x17) - x33), ((0x1fffffe + x15) - x31), ((0x3fffffe + x13) - x29), ((0x3fffffe + x11) - x27), ((0x1fffffe + x9) - x25), ((0x3fffffe + x7) - x23), ((0x3ffff16 + x5) - x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e222m117_9limbs/fesubDisplay.v b/src/Specific/solinas32_2e222m117_9limbs/fesubDisplay.v
deleted file mode 100644
index e655cca08..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e222m117_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e222m117_9limbs/freeze.c b/src/Specific/solinas32_2e222m117_9limbs/freeze.c
deleted file mode 100644
index 18f848a2e..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/freeze.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void freeze(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffff8b);
- { uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0x1ffffff);
- { uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0xffffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x8, 0x1ffffff);
- { uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0x1ffffff);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0xffffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0x1ffffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0x1ffffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0xffffff);
- { uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- { uint32_t x45 = (x44 & 0x1ffff8b);
- { uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- { uint32_t x49 = (x44 & 0x1ffffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- { uint32_t x53 = (x44 & 0xffffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- { uint32_t x57 = (x44 & 0x1ffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- { uint32_t x61 = (x44 & 0x1ffffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- { uint32_t x65 = (x44 & 0xffffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- { uint32_t x69 = (x44 & 0x1ffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- { uint32_t x73 = (x44 & 0x1ffffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- { uint32_t x77 = (x44 & 0xffffff);
- { uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- out[0] = x47;
- out[1] = x51;
- out[2] = x55;
- out[3] = x59;
- out[4] = x63;
- out[5] = x67;
- out[6] = x71;
- out[7] = x75;
- out[8] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e222m117_9limbs/freeze.v b/src/Specific/solinas32_2e222m117_9limbs/freeze.v
deleted file mode 100644
index ce8b1e7ad..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e222m117_9limbs.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_2e222m117_9limbs/freezeDisplay.log b/src/Specific/solinas32_2e222m117_9limbs/freezeDisplay.log
deleted file mode 100644
index ee02717f6..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffff8b);
- uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0x1ffffff);
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0xffffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x8, 0x1ffffff);
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0x1ffffff);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0xffffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0x1ffffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0x1ffffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0xffffff);
- uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- uint32_t x45 = (x44 & 0x1ffff8b);
- uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- uint32_t x49 = (x44 & 0x1ffffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- uint32_t x53 = (x44 & 0xffffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- uint32_t x57 = (x44 & 0x1ffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- uint32_t x61 = (x44 & 0x1ffffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- uint32_t x65 = (x44 & 0xffffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- uint32_t x69 = (x44 & 0x1ffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- uint32_t x73 = (x44 & 0x1ffffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- uint32_t x77 = (x44 & 0xffffff);
- uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- (Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x51, Return x47))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e222m117_9limbs/freezeDisplay.v b/src/Specific/solinas32_2e222m117_9limbs/freezeDisplay.v
deleted file mode 100644
index 0b187de68..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e222m117_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e222m117_9limbs/py_interpreter.sh b/src/Specific/solinas32_2e222m117_9limbs/py_interpreter.sh
deleted file mode 100755
index e4ce5bef0..000000000
--- a/src/Specific/solinas32_2e222m117_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**222 - 117' -Dmodulus_bytes='24 + 2/3' -Da24='121665'
diff --git a/src/Specific/solinas32_2e224m2e96p1_10limbs/CurveParameters.v b/src/Specific/solinas32_2e224m2e96p1_10limbs/CurveParameters.v
deleted file mode 100644
index 63e25fda4..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_10limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^224 - 2^96 + 1
-Base: 22.4
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 22 + 2/5;
- bitwidth := 32;
- s := 2^224;
- c := [(1, -1); (2^96, 1)];
- carry_chains := Some [[3; 9]; [4; 0; 5; 1; 6; 2; 7; 3; 8; 9]; [4; 0]]%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_2e224m2e96p1_10limbs/Synthesis.v b/src/Specific/solinas32_2e224m2e96p1_10limbs/Synthesis.v
deleted file mode 100644
index 8f71b99c5..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_10limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_10limbs.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_2e224m2e96p1_10limbs/compiler.sh b/src/Specific/solinas32_2e224m2e96p1_10limbs/compiler.sh
deleted file mode 100755
index 8bdc01deb..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,22,23,22,22,23,22,23,22,22}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1' "$@"
diff --git a/src/Specific/solinas32_2e224m2e96p1_10limbs/compilerxx.sh b/src/Specific/solinas32_2e224m2e96p1_10limbs/compilerxx.sh
deleted file mode 100755
index d0eb018cd..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,22,23,22,22,23,22,23,22,22}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1' "$@"
diff --git a/src/Specific/solinas32_2e224m2e96p1_10limbs/feadd.c b/src/Specific/solinas32_2e224m2e96p1_10limbs/feadd.c
deleted file mode 100644
index 57dd4e1af..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_10limbs/feadd.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void feadd(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- out[0] = (x5 + x23);
- out[1] = (x7 + x25);
- out[2] = (x9 + x27);
- out[3] = (x11 + x29);
- out[4] = (x13 + x31);
- out[5] = (x15 + x33);
- out[6] = (x17 + x35);
- out[7] = (x19 + x37);
- out[8] = (x21 + x39);
- out[9] = (x20 + x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e224m2e96p1_10limbs/feadd.v b/src/Specific/solinas32_2e224m2e96p1_10limbs/feadd.v
deleted file mode 100644
index 0e3965187..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_10limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_10limbs.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_2e224m2e96p1_10limbs/feaddDisplay.log b/src/Specific/solinas32_2e224m2e96p1_10limbs/feaddDisplay.log
deleted file mode 100644
index 8a4c51148..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_10limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e224m2e96p1_10limbs/feaddDisplay.v b/src/Specific/solinas32_2e224m2e96p1_10limbs/feaddDisplay.v
deleted file mode 100644
index 55c1faf1a..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_10limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_10limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e224m2e96p1_10limbs/fecarry.v b/src/Specific/solinas32_2e224m2e96p1_10limbs/fecarry.v
deleted file mode 100644
index d7337e78c..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_10limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_10limbs.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_2e224m2e96p1_10limbs/fecarryDisplay.v b/src/Specific/solinas32_2e224m2e96p1_10limbs/fecarryDisplay.v
deleted file mode 100644
index f4afb2efe..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_10limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_10limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e224m2e96p1_10limbs/femul.v b/src/Specific/solinas32_2e224m2e96p1_10limbs/femul.v
deleted file mode 100644
index 9b47d09d9..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_10limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_10limbs.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_2e224m2e96p1_10limbs/femulDisplay.v b/src/Specific/solinas32_2e224m2e96p1_10limbs/femulDisplay.v
deleted file mode 100644
index 6dd1efe1f..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_10limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_10limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e224m2e96p1_10limbs/fesquare.v b/src/Specific/solinas32_2e224m2e96p1_10limbs/fesquare.v
deleted file mode 100644
index ed5fc8e4c..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_10limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_10limbs.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_2e224m2e96p1_10limbs/fesquareDisplay.v b/src/Specific/solinas32_2e224m2e96p1_10limbs/fesquareDisplay.v
deleted file mode 100644
index bd4003b15..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_10limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_10limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e224m2e96p1_10limbs/fesub.v b/src/Specific/solinas32_2e224m2e96p1_10limbs/fesub.v
deleted file mode 100644
index 1b3a09e66..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_10limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_10limbs.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_2e224m2e96p1_10limbs/fesubDisplay.v b/src/Specific/solinas32_2e224m2e96p1_10limbs/fesubDisplay.v
deleted file mode 100644
index e16f6f74a..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_10limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_10limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e224m2e96p1_10limbs/freeze.c b/src/Specific/solinas32_2e224m2e96p1_10limbs/freeze.c
deleted file mode 100644
index 3330e06cc..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_10limbs/freeze.c
+++ /dev/null
@@ -1,51 +0,0 @@
-static void freeze(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x20, ℤ x21 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (0x0, Return x2, 0x1);
- { uint32_t x23, ℤ x24 = Op (Syntax.SubWithGetBorrow 22 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x21, Return x4, 0x0);
- { uint32_t x26, ℤ x27 = Op (Syntax.SubWithGetBorrow 23 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x24, Return x6, 0x0);
- { uint32_t x29, ℤ x30 = Op (Syntax.SubWithGetBorrow 22 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x27, Return x8, 0x0);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 22 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x10, 0x3fffc0);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x12, 0x7fffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x14, 0x3fffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x16, 0x7fffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x18, 0x3fffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x17, 0x3fffff);
- { uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- { uint8_t x50 = ((uint8_t)x49 & 0x1);
- { uint32_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- { uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x23, 0x0);
- { uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x26, 0x0);
- { uint32_t x61, uint8_t x62 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x29, 0x0);
- { uint32_t x63 = (x49 & 0x3fffc0);
- { uint32_t x65, uint8_t x66 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x32, Return x63);
- { uint32_t x67 = (x49 & 0x7fffff);
- { uint32_t x69, uint8_t x70 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x35, Return x67);
- { uint32_t x71 = (x49 & 0x3fffff);
- { uint32_t x73, uint8_t x74 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x38, Return x71);
- { uint32_t x75 = (x49 & 0x7fffff);
- { uint32_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x41, Return x75);
- { uint32_t x79 = (x49 & 0x3fffff);
- { uint32_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x44, Return x79);
- { uint32_t x83 = (x49 & 0x3fffff);
- { uint32_t x85, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x47, Return x83);
- out[0] = x52;
- out[1] = x55;
- out[2] = x58;
- out[3] = x61;
- out[4] = x65;
- out[5] = x69;
- out[6] = x73;
- out[7] = x77;
- out[8] = x81;
- out[9] = x85;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e224m2e96p1_10limbs/freeze.v b/src/Specific/solinas32_2e224m2e96p1_10limbs/freeze.v
deleted file mode 100644
index f4e276b8d..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_10limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_10limbs.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_2e224m2e96p1_10limbs/freezeDisplay.log b/src/Specific/solinas32_2e224m2e96p1_10limbs/freezeDisplay.log
deleted file mode 100644
index 006a5223d..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_10limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x20, ℤ x21 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (0x0, Return x2, 0x1);
- uint32_t x23, ℤ x24 = Op (Syntax.SubWithGetBorrow 22 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x21, Return x4, 0x0);
- uint32_t x26, ℤ x27 = Op (Syntax.SubWithGetBorrow 23 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x24, Return x6, 0x0);
- uint32_t x29, ℤ x30 = Op (Syntax.SubWithGetBorrow 22 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x27, Return x8, 0x0);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 22 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x10, 0x3fffc0);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x12, 0x7fffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x14, 0x3fffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x16, 0x7fffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x18, 0x3fffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x17, 0x3fffff);
- uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- uint8_t x50 = ((uint8_t)x49 & 0x1);
- uint32_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x23, 0x0);
- uint32_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x26, 0x0);
- uint32_t x61, uint8_t x62 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x29, 0x0);
- uint32_t x63 = (x49 & 0x3fffc0);
- uint32_t x65, uint8_t x66 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x32, Return x63);
- uint32_t x67 = (x49 & 0x7fffff);
- uint32_t x69, uint8_t x70 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x35, Return x67);
- uint32_t x71 = (x49 & 0x3fffff);
- uint32_t x73, uint8_t x74 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x38, Return x71);
- uint32_t x75 = (x49 & 0x7fffff);
- uint32_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x41, Return x75);
- uint32_t x79 = (x49 & 0x3fffff);
- uint32_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x44, Return x79);
- uint32_t x83 = (x49 & 0x3fffff);
- uint32_t x85, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x47, Return x83);
- (Return x85, Return x81, Return x77, Return x73, Return x69, Return x65, Return x61, Return x58, Return x55, Return x52))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e224m2e96p1_10limbs/freezeDisplay.v b/src/Specific/solinas32_2e224m2e96p1_10limbs/freezeDisplay.v
deleted file mode 100644
index 095e23dd7..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_10limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_10limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e224m2e96p1_10limbs/py_interpreter.sh b/src/Specific/solinas32_2e224m2e96p1_10limbs/py_interpreter.sh
deleted file mode 100755
index b5e8d1471..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_10limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**224 - 2**96 + 1' -Dmodulus_bytes='22.4' -Da24='121665'
diff --git a/src/Specific/solinas32_2e224m2e96p1_11limbs/CurveParameters.v b/src/Specific/solinas32_2e224m2e96p1_11limbs/CurveParameters.v
deleted file mode 100644
index e665a9604..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_11limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^224 - 2^96 + 1
-Base: 20 + 4/11
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 11%nat;
- base := 20 + 4/11;
- bitwidth := 32;
- s := 2^224;
- c := [(1, -1); (2^96, 1)];
- carry_chains := Some [[3; 10]; [4; 0; 5; 1; 6; 2; 7; 3; 8; 9; 10]; [4; 0]]%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_2e224m2e96p1_11limbs/Synthesis.v b/src/Specific/solinas32_2e224m2e96p1_11limbs/Synthesis.v
deleted file mode 100644
index 78bcf1a33..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_11limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_11limbs.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_2e224m2e96p1_11limbs/compiler.sh b/src/Specific/solinas32_2e224m2e96p1_11limbs/compiler.sh
deleted file mode 100755
index 48e902c67..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_11limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{21,20,21,20,20,21,20,20,21,20,20}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1' "$@"
diff --git a/src/Specific/solinas32_2e224m2e96p1_11limbs/compilerxx.sh b/src/Specific/solinas32_2e224m2e96p1_11limbs/compilerxx.sh
deleted file mode 100755
index 9dc54e3a1..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_11limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{21,20,21,20,20,21,20,20,21,20,20}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1' "$@"
diff --git a/src/Specific/solinas32_2e224m2e96p1_11limbs/feadd.c b/src/Specific/solinas32_2e224m2e96p1_11limbs/feadd.c
deleted file mode 100644
index 1763e8727..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_11limbs/feadd.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void feadd(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- out[0] = (x5 + x25);
- out[1] = (x7 + x27);
- out[2] = (x9 + x29);
- out[3] = (x11 + x31);
- out[4] = (x13 + x33);
- out[5] = (x15 + x35);
- out[6] = (x17 + x37);
- out[7] = (x19 + x39);
- out[8] = (x21 + x41);
- out[9] = (x23 + x43);
- out[10] = (x22 + x42);
- }}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e224m2e96p1_11limbs/feadd.v b/src/Specific/solinas32_2e224m2e96p1_11limbs/feadd.v
deleted file mode 100644
index f7da8b53c..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_11limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_11limbs.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_2e224m2e96p1_11limbs/feaddDisplay.log b/src/Specific/solinas32_2e224m2e96p1_11limbs/feaddDisplay.log
deleted file mode 100644
index 433ecbc2e..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_11limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- ((x22 + x42), (x23 + x43), (x21 + x41), (x19 + x39), (x17 + x37), (x15 + x35), (x13 + x33), (x11 + x31), (x9 + x29), (x7 + x27), (x5 + x25)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e224m2e96p1_11limbs/feaddDisplay.v b/src/Specific/solinas32_2e224m2e96p1_11limbs/feaddDisplay.v
deleted file mode 100644
index 99a427998..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_11limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_11limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e224m2e96p1_11limbs/fecarry.v b/src/Specific/solinas32_2e224m2e96p1_11limbs/fecarry.v
deleted file mode 100644
index ad84eebf6..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_11limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_11limbs.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_2e224m2e96p1_11limbs/fecarryDisplay.v b/src/Specific/solinas32_2e224m2e96p1_11limbs/fecarryDisplay.v
deleted file mode 100644
index da7393aa4..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_11limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_11limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e224m2e96p1_11limbs/femul.v b/src/Specific/solinas32_2e224m2e96p1_11limbs/femul.v
deleted file mode 100644
index d6a06caee..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_11limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_11limbs.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_2e224m2e96p1_11limbs/femulDisplay.v b/src/Specific/solinas32_2e224m2e96p1_11limbs/femulDisplay.v
deleted file mode 100644
index e1416f9de..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_11limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_11limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e224m2e96p1_11limbs/fesquare.v b/src/Specific/solinas32_2e224m2e96p1_11limbs/fesquare.v
deleted file mode 100644
index 0f61217c3..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_11limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_11limbs.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_2e224m2e96p1_11limbs/fesquareDisplay.v b/src/Specific/solinas32_2e224m2e96p1_11limbs/fesquareDisplay.v
deleted file mode 100644
index f56ac2992..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_11limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_11limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e224m2e96p1_11limbs/fesub.v b/src/Specific/solinas32_2e224m2e96p1_11limbs/fesub.v
deleted file mode 100644
index 9c24b13c9..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_11limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_11limbs.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_2e224m2e96p1_11limbs/fesubDisplay.v b/src/Specific/solinas32_2e224m2e96p1_11limbs/fesubDisplay.v
deleted file mode 100644
index e9cb23e26..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_11limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_11limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e224m2e96p1_11limbs/freeze.c b/src/Specific/solinas32_2e224m2e96p1_11limbs/freeze.c
deleted file mode 100644
index ec20f4e1d..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_11limbs/freeze.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void freeze(uint32_t out[11], const uint32_t in1[11]) {
- { const uint32_t x19 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x22, ℤ x23 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (0x0, Return x2, 0x1);
- { uint32_t x25, ℤ x26 = Op (Syntax.SubWithGetBorrow 20 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x23, Return x4, 0x0);
- { uint32_t x28, ℤ x29 = Op (Syntax.SubWithGetBorrow 21 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x26, Return x6, 0x0);
- { uint32_t x31, ℤ x32 = Op (Syntax.SubWithGetBorrow 20 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x29, Return x8, 0x0);
- { uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 20 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x10, 0xfc000);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x12, 0x1fffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x14, 0xfffff);
- { uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x16, 0xfffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x18, 0x1fffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x20, 0xfffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x19, 0xfffff);
- { uint32_t x54 = cmovznz32(x53, 0x0, 0xffffffff);
- { uint8_t x55 = ((uint8_t)x54 & 0x1);
- { uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x22, Return x55);
- { uint32_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x25, 0x0);
- { uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x28, 0x0);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x31, 0x0);
- { uint32_t x68 = (x54 & 0xfc000);
- { uint32_t x70, uint8_t x71 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x34, Return x68);
- { uint32_t x72 = (x54 & 0x1fffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x37, Return x72);
- { uint32_t x76 = (x54 & 0xfffff);
- { uint32_t x78, uint8_t x79 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x40, Return x76);
- { uint32_t x80 = (x54 & 0xfffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x43, Return x80);
- { uint32_t x84 = (x54 & 0x1fffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x46, Return x84);
- { uint32_t x88 = (x54 & 0xfffff);
- { uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x49, Return x88);
- { uint32_t x92 = (x54 & 0xfffff);
- { uint32_t x94, uint8_t _ = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x52, Return x92);
- out[0] = x57;
- out[1] = x60;
- out[2] = x63;
- out[3] = x66;
- out[4] = x70;
- out[5] = x74;
- out[6] = x78;
- out[7] = x82;
- out[8] = x86;
- out[9] = x90;
- out[10] = x94;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e224m2e96p1_11limbs/freeze.v b/src/Specific/solinas32_2e224m2e96p1_11limbs/freeze.v
deleted file mode 100644
index 4c1d44934..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_11limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_11limbs.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_2e224m2e96p1_11limbs/freezeDisplay.log b/src/Specific/solinas32_2e224m2e96p1_11limbs/freezeDisplay.log
deleted file mode 100644
index 28c024f17..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_11limbs/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x22, ℤ x23 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (0x0, Return x2, 0x1);
- uint32_t x25, ℤ x26 = Op (Syntax.SubWithGetBorrow 20 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x23, Return x4, 0x0);
- uint32_t x28, ℤ x29 = Op (Syntax.SubWithGetBorrow 21 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x26, Return x6, 0x0);
- uint32_t x31, ℤ x32 = Op (Syntax.SubWithGetBorrow 20 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x29, Return x8, 0x0);
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 20 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x10, 0xfc000);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x12, 0x1fffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x14, 0xfffff);
- uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x16, 0xfffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x18, 0x1fffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x20, 0xfffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x19, 0xfffff);
- uint32_t x54 = cmovznz32(x53, 0x0, 0xffffffff);
- uint8_t x55 = ((uint8_t)x54 & 0x1);
- uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x22, Return x55);
- uint32_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x25, 0x0);
- uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x28, 0x0);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x31, 0x0);
- uint32_t x68 = (x54 & 0xfc000);
- uint32_t x70, uint8_t x71 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x34, Return x68);
- uint32_t x72 = (x54 & 0x1fffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x37, Return x72);
- uint32_t x76 = (x54 & 0xfffff);
- uint32_t x78, uint8_t x79 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x40, Return x76);
- uint32_t x80 = (x54 & 0xfffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x43, Return x80);
- uint32_t x84 = (x54 & 0x1fffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x46, Return x84);
- uint32_t x88 = (x54 & 0xfffff);
- uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x49, Return x88);
- uint32_t x92 = (x54 & 0xfffff);
- uint32_t x94, uint8_t _ = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x52, Return x92);
- (Return x94, Return x90, Return x86, Return x82, Return x78, Return x74, Return x70, Return x66, Return x63, Return x60, Return x57))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e224m2e96p1_11limbs/freezeDisplay.v b/src/Specific/solinas32_2e224m2e96p1_11limbs/freezeDisplay.v
deleted file mode 100644
index 664a406cf..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_11limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e224m2e96p1_11limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e224m2e96p1_11limbs/py_interpreter.sh b/src/Specific/solinas32_2e224m2e96p1_11limbs/py_interpreter.sh
deleted file mode 100755
index 63a47591e..000000000
--- a/src/Specific/solinas32_2e224m2e96p1_11limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**224 - 2**96 + 1' -Dmodulus_bytes='20 + 4/11' -Da24='121665'
diff --git a/src/Specific/solinas32_2e226m5_10limbs/CurveParameters.v b/src/Specific/solinas32_2e226m5_10limbs/CurveParameters.v
deleted file mode 100644
index f24259a96..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^226 - 5
-Base: 22.6
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 22 + 3/5;
- bitwidth := 32;
- s := 2^226;
- c := [(1, 5)];
- carry_chains := Some [seq 0 (pred 10); [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_2e226m5_10limbs/Synthesis.v b/src/Specific/solinas32_2e226m5_10limbs/Synthesis.v
deleted file mode 100644
index 7041d9eba..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e226m5_10limbs.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_2e226m5_10limbs/compiler.sh b/src/Specific/solinas32_2e226m5_10limbs/compiler.sh
deleted file mode 100755
index 9a00ae187..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,23,22,23,22,23,23,22,23,22}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<226) - 5' "$@"
diff --git a/src/Specific/solinas32_2e226m5_10limbs/compilerxx.sh b/src/Specific/solinas32_2e226m5_10limbs/compilerxx.sh
deleted file mode 100755
index b93a17e6d..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,23,22,23,22,23,23,22,23,22}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<226) - 5' "$@"
diff --git a/src/Specific/solinas32_2e226m5_10limbs/feadd.c b/src/Specific/solinas32_2e226m5_10limbs/feadd.c
deleted file mode 100644
index 57dd4e1af..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/feadd.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void feadd(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- out[0] = (x5 + x23);
- out[1] = (x7 + x25);
- out[2] = (x9 + x27);
- out[3] = (x11 + x29);
- out[4] = (x13 + x31);
- out[5] = (x15 + x33);
- out[6] = (x17 + x35);
- out[7] = (x19 + x37);
- out[8] = (x21 + x39);
- out[9] = (x20 + x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e226m5_10limbs/feadd.v b/src/Specific/solinas32_2e226m5_10limbs/feadd.v
deleted file mode 100644
index ab300e83f..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e226m5_10limbs.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_2e226m5_10limbs/feaddDisplay.log b/src/Specific/solinas32_2e226m5_10limbs/feaddDisplay.log
deleted file mode 100644
index 8a4c51148..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e226m5_10limbs/feaddDisplay.v b/src/Specific/solinas32_2e226m5_10limbs/feaddDisplay.v
deleted file mode 100644
index 3b1cee79e..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e226m5_10limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e226m5_10limbs/fecarry.v b/src/Specific/solinas32_2e226m5_10limbs/fecarry.v
deleted file mode 100644
index 82c44a8a6..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e226m5_10limbs.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_2e226m5_10limbs/fecarryDisplay.v b/src/Specific/solinas32_2e226m5_10limbs/fecarryDisplay.v
deleted file mode 100644
index 0abd80675..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e226m5_10limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e226m5_10limbs/femul.c b/src/Specific/solinas32_2e226m5_10limbs/femul.c
deleted file mode 100644
index eba25c56e..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/femul.c
+++ /dev/null
@@ -1,78 +0,0 @@
-static void femul(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- { uint64_t x40 = (((uint64_t)x5 * x38) + (((uint64_t)x7 * x39) + ((0x2 * ((uint64_t)x9 * x37)) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((0x2 * ((uint64_t)x19 * x27)) + (((uint64_t)x21 * x25) + ((uint64_t)x20 * x23))))))))));
- { uint64_t x41 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + (((uint64_t)x11 * x33) + ((0x2 * ((uint64_t)x13 * x31)) + (((uint64_t)x15 * x29) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + ((uint64_t)x21 * x23))))))))) + (0x5 * (0x2 * ((uint64_t)x20 * x38))));
- { uint64_t x42 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + ((uint64_t)x19 * x23)))))))) + (0x5 * (((uint64_t)x21 * x38) + ((uint64_t)x20 * x39))));
- { uint64_t x43 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + ((0x2 * ((uint64_t)x9 * x31)) + (((uint64_t)x11 * x29) + ((0x2 * ((uint64_t)x13 * x27)) + (((uint64_t)x15 * x25) + ((uint64_t)x17 * x23))))))) + (0x5 * ((0x2 * ((uint64_t)x19 * x38)) + (((uint64_t)x21 * x39) + (0x2 * ((uint64_t)x20 * x37))))));
- { uint64_t x44 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((0x2 * ((uint64_t)x11 * x27)) + ((0x2 * ((uint64_t)x13 * x25)) + ((uint64_t)x15 * x23)))))) + (0x5 * ((0x2 * ((uint64_t)x17 * x38)) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + (0x2 * ((uint64_t)x20 * x35)))))));
- { uint64_t x45 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + ((0x2 * ((uint64_t)x9 * x27)) + (((uint64_t)x11 * x25) + ((uint64_t)x13 * x23))))) + (0x5 * (((uint64_t)x15 * x38) + (((uint64_t)x17 * x39) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + ((uint64_t)x20 * x33)))))));
- { uint64_t x46 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((uint64_t)x11 * x23)))) + (0x5 * ((0x2 * ((uint64_t)x13 * x38)) + (((uint64_t)x15 * x39) + ((0x2 * ((uint64_t)x17 * x37)) + ((0x2 * ((uint64_t)x19 * x35)) + (((uint64_t)x21 * x33) + (0x2 * ((uint64_t)x20 * x31)))))))));
- { uint64_t x47 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + ((uint64_t)x9 * x23))) + (0x5 * (((uint64_t)x11 * x38) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((uint64_t)x20 * x29)))))))));
- { uint64_t x48 = ((((uint64_t)x5 * x25) + ((uint64_t)x7 * x23)) + (0x5 * ((0x2 * ((uint64_t)x9 * x38)) + (((uint64_t)x11 * x39) + ((0x2 * ((uint64_t)x13 * x37)) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + ((0x2 * ((uint64_t)x19 * x31)) + (((uint64_t)x21 * x29) + (0x2 * ((uint64_t)x20 * x27)))))))))));
- { uint64_t x49 = (((uint64_t)x5 * x23) + (0x5 * ((0x2 * ((uint64_t)x7 * x38)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + (((uint64_t)x15 * x33) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((0x2 * ((uint64_t)x21 * x27)) + (0x2 * ((uint64_t)x20 * x25))))))))))));
- { uint64_t x50 = (x49 >> 0x17);
- { uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- { uint64_t x52 = (x50 + x48);
- { uint32_t x53 = (uint32_t) (x52 >> 0x17);
- { uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- { uint64_t x55 = (x53 + x47);
- { uint32_t x56 = (uint32_t) (x55 >> 0x16);
- { uint32_t x57 = ((uint32_t)x55 & 0x3fffff);
- { uint64_t x58 = (x56 + x46);
- { uint32_t x59 = (uint32_t) (x58 >> 0x17);
- { uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- { uint64_t x61 = (x59 + x45);
- { uint32_t x62 = (uint32_t) (x61 >> 0x16);
- { uint32_t x63 = ((uint32_t)x61 & 0x3fffff);
- { uint64_t x64 = (x62 + x44);
- { uint32_t x65 = (uint32_t) (x64 >> 0x17);
- { uint32_t x66 = ((uint32_t)x64 & 0x7fffff);
- { uint64_t x67 = (x65 + x43);
- { uint32_t x68 = (uint32_t) (x67 >> 0x17);
- { uint32_t x69 = ((uint32_t)x67 & 0x7fffff);
- { uint64_t x70 = (x68 + x42);
- { uint32_t x71 = (uint32_t) (x70 >> 0x16);
- { uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- { uint64_t x73 = (x71 + x41);
- { uint32_t x74 = (uint32_t) (x73 >> 0x17);
- { uint32_t x75 = ((uint32_t)x73 & 0x7fffff);
- { uint64_t x76 = (x74 + x40);
- { uint32_t x77 = (uint32_t) (x76 >> 0x16);
- { uint32_t x78 = ((uint32_t)x76 & 0x3fffff);
- { uint64_t x79 = (x51 + ((uint64_t)0x5 * x77));
- { uint32_t x80 = (uint32_t) (x79 >> 0x17);
- { uint32_t x81 = ((uint32_t)x79 & 0x7fffff);
- { uint32_t x82 = (x80 + x54);
- { uint32_t x83 = (x82 >> 0x17);
- { uint32_t x84 = (x82 & 0x7fffff);
- out[0] = x81;
- out[1] = x84;
- out[2] = (x83 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e226m5_10limbs/femul.v b/src/Specific/solinas32_2e226m5_10limbs/femul.v
deleted file mode 100644
index b78840458..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e226m5_10limbs.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_2e226m5_10limbs/femulDisplay.log b/src/Specific/solinas32_2e226m5_10limbs/femulDisplay.log
deleted file mode 100644
index ad4235c49..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/femulDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- uint64_t x40 = (((uint64_t)x5 * x38) + (((uint64_t)x7 * x39) + ((0x2 * ((uint64_t)x9 * x37)) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((0x2 * ((uint64_t)x19 * x27)) + (((uint64_t)x21 * x25) + ((uint64_t)x20 * x23))))))))));
- uint64_t x41 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + (((uint64_t)x11 * x33) + ((0x2 * ((uint64_t)x13 * x31)) + (((uint64_t)x15 * x29) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + ((uint64_t)x21 * x23))))))))) + (0x5 * (0x2 * ((uint64_t)x20 * x38))));
- uint64_t x42 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + ((uint64_t)x19 * x23)))))))) + (0x5 * (((uint64_t)x21 * x38) + ((uint64_t)x20 * x39))));
- uint64_t x43 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + ((0x2 * ((uint64_t)x9 * x31)) + (((uint64_t)x11 * x29) + ((0x2 * ((uint64_t)x13 * x27)) + (((uint64_t)x15 * x25) + ((uint64_t)x17 * x23))))))) + (0x5 * ((0x2 * ((uint64_t)x19 * x38)) + (((uint64_t)x21 * x39) + (0x2 * ((uint64_t)x20 * x37))))));
- uint64_t x44 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((0x2 * ((uint64_t)x11 * x27)) + ((0x2 * ((uint64_t)x13 * x25)) + ((uint64_t)x15 * x23)))))) + (0x5 * ((0x2 * ((uint64_t)x17 * x38)) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + (0x2 * ((uint64_t)x20 * x35)))))));
- uint64_t x45 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + ((0x2 * ((uint64_t)x9 * x27)) + (((uint64_t)x11 * x25) + ((uint64_t)x13 * x23))))) + (0x5 * (((uint64_t)x15 * x38) + (((uint64_t)x17 * x39) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + ((uint64_t)x20 * x33)))))));
- uint64_t x46 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((uint64_t)x11 * x23)))) + (0x5 * ((0x2 * ((uint64_t)x13 * x38)) + (((uint64_t)x15 * x39) + ((0x2 * ((uint64_t)x17 * x37)) + ((0x2 * ((uint64_t)x19 * x35)) + (((uint64_t)x21 * x33) + (0x2 * ((uint64_t)x20 * x31)))))))));
- uint64_t x47 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + ((uint64_t)x9 * x23))) + (0x5 * (((uint64_t)x11 * x38) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((uint64_t)x20 * x29)))))))));
- uint64_t x48 = ((((uint64_t)x5 * x25) + ((uint64_t)x7 * x23)) + (0x5 * ((0x2 * ((uint64_t)x9 * x38)) + (((uint64_t)x11 * x39) + ((0x2 * ((uint64_t)x13 * x37)) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + ((0x2 * ((uint64_t)x19 * x31)) + (((uint64_t)x21 * x29) + (0x2 * ((uint64_t)x20 * x27)))))))))));
- uint64_t x49 = (((uint64_t)x5 * x23) + (0x5 * ((0x2 * ((uint64_t)x7 * x38)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + (((uint64_t)x15 * x33) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((0x2 * ((uint64_t)x21 * x27)) + (0x2 * ((uint64_t)x20 * x25))))))))))));
- uint64_t x50 = (x49 >> 0x17);
- uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- uint64_t x52 = (x50 + x48);
- uint32_t x53 = (uint32_t) (x52 >> 0x17);
- uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- uint64_t x55 = (x53 + x47);
- uint32_t x56 = (uint32_t) (x55 >> 0x16);
- uint32_t x57 = ((uint32_t)x55 & 0x3fffff);
- uint64_t x58 = (x56 + x46);
- uint32_t x59 = (uint32_t) (x58 >> 0x17);
- uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- uint64_t x61 = (x59 + x45);
- uint32_t x62 = (uint32_t) (x61 >> 0x16);
- uint32_t x63 = ((uint32_t)x61 & 0x3fffff);
- uint64_t x64 = (x62 + x44);
- uint32_t x65 = (uint32_t) (x64 >> 0x17);
- uint32_t x66 = ((uint32_t)x64 & 0x7fffff);
- uint64_t x67 = (x65 + x43);
- uint32_t x68 = (uint32_t) (x67 >> 0x17);
- uint32_t x69 = ((uint32_t)x67 & 0x7fffff);
- uint64_t x70 = (x68 + x42);
- uint32_t x71 = (uint32_t) (x70 >> 0x16);
- uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- uint64_t x73 = (x71 + x41);
- uint32_t x74 = (uint32_t) (x73 >> 0x17);
- uint32_t x75 = ((uint32_t)x73 & 0x7fffff);
- uint64_t x76 = (x74 + x40);
- uint32_t x77 = (uint32_t) (x76 >> 0x16);
- uint32_t x78 = ((uint32_t)x76 & 0x3fffff);
- uint64_t x79 = (x51 + ((uint64_t)0x5 * x77));
- uint32_t x80 = (uint32_t) (x79 >> 0x17);
- uint32_t x81 = ((uint32_t)x79 & 0x7fffff);
- uint32_t x82 = (x80 + x54);
- uint32_t x83 = (x82 >> 0x17);
- uint32_t x84 = (x82 & 0x7fffff);
- return (Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x83 + x57), Return x84, Return x81))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e226m5_10limbs/femulDisplay.v b/src/Specific/solinas32_2e226m5_10limbs/femulDisplay.v
deleted file mode 100644
index 3941a95a0..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e226m5_10limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e226m5_10limbs/fesquare.c b/src/Specific/solinas32_2e226m5_10limbs/fesquare.c
deleted file mode 100644
index 3c4af1c29..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/fesquare.c
+++ /dev/null
@@ -1,68 +0,0 @@
-static void fesquare(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x19 = (((uint64_t)x2 * x17) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x17 * x2))))))))));
- { uint64_t x20 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x5 * (0x2 * ((uint64_t)x17 * x17))));
- { uint64_t x21 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x5 * (((uint64_t)x18 * x17) + ((uint64_t)x17 * x18))));
- { uint64_t x22 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x5 * ((0x2 * ((uint64_t)x16 * x17)) + (((uint64_t)x18 * x18) + (0x2 * ((uint64_t)x17 * x16))))));
- { uint64_t x23 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x5 * ((0x2 * ((uint64_t)x14 * x17)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (0x2 * ((uint64_t)x17 * x14)))))));
- { uint64_t x24 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x5 * (((uint64_t)x12 * x17) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + ((uint64_t)x17 * x12)))))));
- { uint64_t x25 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x5 * ((0x2 * ((uint64_t)x10 * x17)) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + (0x2 * ((uint64_t)x17 * x10)))))))));
- { uint64_t x26 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x5 * (((uint64_t)x8 * x17) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((uint64_t)x17 * x8)))))))));
- { uint64_t x27 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x5 * ((0x2 * ((uint64_t)x6 * x17)) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + (0x2 * ((uint64_t)x17 * x6)))))))))));
- { uint64_t x28 = (((uint64_t)x2 * x2) + (0x5 * ((0x2 * ((uint64_t)x4 * x17)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + (0x2 * ((uint64_t)x17 * x4))))))))))));
- { uint64_t x29 = (x28 >> 0x17);
- { uint32_t x30 = ((uint32_t)x28 & 0x7fffff);
- { uint64_t x31 = (x29 + x27);
- { uint32_t x32 = (uint32_t) (x31 >> 0x17);
- { uint32_t x33 = ((uint32_t)x31 & 0x7fffff);
- { uint64_t x34 = (x32 + x26);
- { uint32_t x35 = (uint32_t) (x34 >> 0x16);
- { uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- { uint64_t x37 = (x35 + x25);
- { uint32_t x38 = (uint32_t) (x37 >> 0x17);
- { uint32_t x39 = ((uint32_t)x37 & 0x7fffff);
- { uint64_t x40 = (x38 + x24);
- { uint32_t x41 = (uint32_t) (x40 >> 0x16);
- { uint32_t x42 = ((uint32_t)x40 & 0x3fffff);
- { uint64_t x43 = (x41 + x23);
- { uint32_t x44 = (uint32_t) (x43 >> 0x17);
- { uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- { uint64_t x46 = (x44 + x22);
- { uint32_t x47 = (uint32_t) (x46 >> 0x17);
- { uint32_t x48 = ((uint32_t)x46 & 0x7fffff);
- { uint64_t x49 = (x47 + x21);
- { uint32_t x50 = (uint32_t) (x49 >> 0x16);
- { uint32_t x51 = ((uint32_t)x49 & 0x3fffff);
- { uint64_t x52 = (x50 + x20);
- { uint32_t x53 = (uint32_t) (x52 >> 0x17);
- { uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- { uint64_t x55 = (x53 + x19);
- { uint32_t x56 = (uint32_t) (x55 >> 0x16);
- { uint32_t x57 = ((uint32_t)x55 & 0x3fffff);
- { uint64_t x58 = (x30 + ((uint64_t)0x5 * x56));
- { uint32_t x59 = (uint32_t) (x58 >> 0x17);
- { uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- { uint32_t x61 = (x59 + x33);
- { uint32_t x62 = (x61 >> 0x17);
- { uint32_t x63 = (x61 & 0x7fffff);
- out[0] = x60;
- out[1] = x63;
- out[2] = (x62 + x36);
- out[3] = x39;
- out[4] = x42;
- out[5] = x45;
- out[6] = x48;
- out[7] = x51;
- out[8] = x54;
- out[9] = x57;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e226m5_10limbs/fesquare.v b/src/Specific/solinas32_2e226m5_10limbs/fesquare.v
deleted file mode 100644
index f4d3eecf6..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e226m5_10limbs.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_2e226m5_10limbs/fesquareDisplay.log b/src/Specific/solinas32_2e226m5_10limbs/fesquareDisplay.log
deleted file mode 100644
index b04e3499c..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x19 = (((uint64_t)x2 * x17) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x17 * x2))))))))));
- uint64_t x20 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x5 * (0x2 * ((uint64_t)x17 * x17))));
- uint64_t x21 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x5 * (((uint64_t)x18 * x17) + ((uint64_t)x17 * x18))));
- uint64_t x22 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x5 * ((0x2 * ((uint64_t)x16 * x17)) + (((uint64_t)x18 * x18) + (0x2 * ((uint64_t)x17 * x16))))));
- uint64_t x23 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x5 * ((0x2 * ((uint64_t)x14 * x17)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (0x2 * ((uint64_t)x17 * x14)))))));
- uint64_t x24 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x5 * (((uint64_t)x12 * x17) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + ((uint64_t)x17 * x12)))))));
- uint64_t x25 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x5 * ((0x2 * ((uint64_t)x10 * x17)) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + (0x2 * ((uint64_t)x17 * x10)))))))));
- uint64_t x26 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x5 * (((uint64_t)x8 * x17) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((uint64_t)x17 * x8)))))))));
- uint64_t x27 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x5 * ((0x2 * ((uint64_t)x6 * x17)) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + (0x2 * ((uint64_t)x17 * x6)))))))))));
- uint64_t x28 = (((uint64_t)x2 * x2) + (0x5 * ((0x2 * ((uint64_t)x4 * x17)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + (0x2 * ((uint64_t)x17 * x4))))))))))));
- uint64_t x29 = (x28 >> 0x17);
- uint32_t x30 = ((uint32_t)x28 & 0x7fffff);
- uint64_t x31 = (x29 + x27);
- uint32_t x32 = (uint32_t) (x31 >> 0x17);
- uint32_t x33 = ((uint32_t)x31 & 0x7fffff);
- uint64_t x34 = (x32 + x26);
- uint32_t x35 = (uint32_t) (x34 >> 0x16);
- uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- uint64_t x37 = (x35 + x25);
- uint32_t x38 = (uint32_t) (x37 >> 0x17);
- uint32_t x39 = ((uint32_t)x37 & 0x7fffff);
- uint64_t x40 = (x38 + x24);
- uint32_t x41 = (uint32_t) (x40 >> 0x16);
- uint32_t x42 = ((uint32_t)x40 & 0x3fffff);
- uint64_t x43 = (x41 + x23);
- uint32_t x44 = (uint32_t) (x43 >> 0x17);
- uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- uint64_t x46 = (x44 + x22);
- uint32_t x47 = (uint32_t) (x46 >> 0x17);
- uint32_t x48 = ((uint32_t)x46 & 0x7fffff);
- uint64_t x49 = (x47 + x21);
- uint32_t x50 = (uint32_t) (x49 >> 0x16);
- uint32_t x51 = ((uint32_t)x49 & 0x3fffff);
- uint64_t x52 = (x50 + x20);
- uint32_t x53 = (uint32_t) (x52 >> 0x17);
- uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- uint64_t x55 = (x53 + x19);
- uint32_t x56 = (uint32_t) (x55 >> 0x16);
- uint32_t x57 = ((uint32_t)x55 & 0x3fffff);
- uint64_t x58 = (x30 + ((uint64_t)0x5 * x56));
- uint32_t x59 = (uint32_t) (x58 >> 0x17);
- uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- uint32_t x61 = (x59 + x33);
- uint32_t x62 = (x61 >> 0x17);
- uint32_t x63 = (x61 & 0x7fffff);
- return (Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, Return x39, (x62 + x36), Return x63, Return x60))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e226m5_10limbs/fesquareDisplay.v b/src/Specific/solinas32_2e226m5_10limbs/fesquareDisplay.v
deleted file mode 100644
index 72209434d..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e226m5_10limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e226m5_10limbs/fesub.c b/src/Specific/solinas32_2e226m5_10limbs/fesub.c
deleted file mode 100644
index 55f642d62..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/fesub.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fesub(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- out[0] = ((0xfffff6 + x5) - x23);
- out[1] = ((0xfffffe + x7) - x25);
- out[2] = ((0x7ffffe + x9) - x27);
- out[3] = ((0xfffffe + x11) - x29);
- out[4] = ((0x7ffffe + x13) - x31);
- out[5] = ((0xfffffe + x15) - x33);
- out[6] = ((0xfffffe + x17) - x35);
- out[7] = ((0x7ffffe + x19) - x37);
- out[8] = ((0xfffffe + x21) - x39);
- out[9] = ((0x7ffffe + x20) - x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e226m5_10limbs/fesub.v b/src/Specific/solinas32_2e226m5_10limbs/fesub.v
deleted file mode 100644
index fa978c553..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e226m5_10limbs.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_2e226m5_10limbs/fesubDisplay.log b/src/Specific/solinas32_2e226m5_10limbs/fesubDisplay.log
deleted file mode 100644
index 55787bb66..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- (((0x7ffffe + x20) - x38), ((0xfffffe + x21) - x39), ((0x7ffffe + x19) - x37), ((0xfffffe + x17) - x35), ((0xfffffe + x15) - x33), ((0x7ffffe + x13) - x31), ((0xfffffe + x11) - x29), ((0x7ffffe + x9) - x27), ((0xfffffe + x7) - x25), ((0xfffff6 + x5) - x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e226m5_10limbs/fesubDisplay.v b/src/Specific/solinas32_2e226m5_10limbs/fesubDisplay.v
deleted file mode 100644
index 12dbf603e..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e226m5_10limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e226m5_10limbs/freeze.c b/src/Specific/solinas32_2e226m5_10limbs/freeze.c
deleted file mode 100644
index fd30ceda1..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/freeze.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void freeze(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffb);
- { uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x4, 0x7fffff);
- { uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x6, 0x3fffff);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x8, 0x7fffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x10, 0x3fffff);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x12, 0x7fffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x14, 0x7fffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x16, 0x3fffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x18, 0x7fffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x17, 0x3fffff);
- { uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- { uint32_t x50 = (x49 & 0x7ffffb);
- { uint32_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- { uint32_t x54 = (x49 & 0x7fffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- { uint32_t x58 = (x49 & 0x3fffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- { uint32_t x62 = (x49 & 0x7fffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- { uint32_t x66 = (x49 & 0x3fffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- { uint32_t x70 = (x49 & 0x7fffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- { uint32_t x74 = (x49 & 0x7fffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- { uint32_t x78 = (x49 & 0x3fffff);
- { uint32_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- { uint32_t x82 = (x49 & 0x7fffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- { uint32_t x86 = (x49 & 0x3fffff);
- { uint32_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- out[0] = x52;
- out[1] = x56;
- out[2] = x60;
- out[3] = x64;
- out[4] = x68;
- out[5] = x72;
- out[6] = x76;
- out[7] = x80;
- out[8] = x84;
- out[9] = x88;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e226m5_10limbs/freeze.v b/src/Specific/solinas32_2e226m5_10limbs/freeze.v
deleted file mode 100644
index c8cdcf777..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e226m5_10limbs.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_2e226m5_10limbs/freezeDisplay.log b/src/Specific/solinas32_2e226m5_10limbs/freezeDisplay.log
deleted file mode 100644
index ae7e06b76..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffb);
- uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x4, 0x7fffff);
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x6, 0x3fffff);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x8, 0x7fffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x10, 0x3fffff);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x12, 0x7fffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x14, 0x7fffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x16, 0x3fffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x18, 0x7fffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x17, 0x3fffff);
- uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- uint32_t x50 = (x49 & 0x7ffffb);
- uint32_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- uint32_t x54 = (x49 & 0x7fffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- uint32_t x58 = (x49 & 0x3fffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- uint32_t x62 = (x49 & 0x7fffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- uint32_t x66 = (x49 & 0x3fffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- uint32_t x70 = (x49 & 0x7fffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- uint32_t x74 = (x49 & 0x7fffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- uint32_t x78 = (x49 & 0x3fffff);
- uint32_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- uint32_t x82 = (x49 & 0x7fffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- uint32_t x86 = (x49 & 0x3fffff);
- uint32_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- (Return x88, Return x84, Return x80, Return x76, Return x72, Return x68, Return x64, Return x60, Return x56, Return x52))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e226m5_10limbs/freezeDisplay.v b/src/Specific/solinas32_2e226m5_10limbs/freezeDisplay.v
deleted file mode 100644
index 052fe3eb9..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e226m5_10limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e226m5_10limbs/py_interpreter.sh b/src/Specific/solinas32_2e226m5_10limbs/py_interpreter.sh
deleted file mode 100755
index 4d6c5df92..000000000
--- a/src/Specific/solinas32_2e226m5_10limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**226 - 5' -Dmodulus_bytes='22.6' -Da24='121665'
diff --git a/src/Specific/solinas32_2e226m5_9limbs/CurveParameters.v b/src/Specific/solinas32_2e226m5_9limbs/CurveParameters.v
deleted file mode 100644
index cd1c394d9..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^226 - 5
-Base: 25 + 1/9
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 25 + 1/9;
- bitwidth := 32;
- s := 2^226;
- c := [(1, 5)];
- carry_chains := Some [seq 0 (pred 9); [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_2e226m5_9limbs/Synthesis.v b/src/Specific/solinas32_2e226m5_9limbs/Synthesis.v
deleted file mode 100644
index b4e89beef..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e226m5_9limbs.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_2e226m5_9limbs/compiler.sh b/src/Specific/solinas32_2e226m5_9limbs/compiler.sh
deleted file mode 100755
index 82a3fc691..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<226) - 5' "$@"
diff --git a/src/Specific/solinas32_2e226m5_9limbs/compilerxx.sh b/src/Specific/solinas32_2e226m5_9limbs/compilerxx.sh
deleted file mode 100755
index 7fc933c31..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<226) - 5' "$@"
diff --git a/src/Specific/solinas32_2e226m5_9limbs/feadd.c b/src/Specific/solinas32_2e226m5_9limbs/feadd.c
deleted file mode 100644
index e1188fdec..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e226m5_9limbs/feadd.v b/src/Specific/solinas32_2e226m5_9limbs/feadd.v
deleted file mode 100644
index 5a75575b4..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e226m5_9limbs.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_2e226m5_9limbs/feaddDisplay.log b/src/Specific/solinas32_2e226m5_9limbs/feaddDisplay.log
deleted file mode 100644
index e26bb40f8..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e226m5_9limbs/feaddDisplay.v b/src/Specific/solinas32_2e226m5_9limbs/feaddDisplay.v
deleted file mode 100644
index 2531629b3..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e226m5_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e226m5_9limbs/fecarry.v b/src/Specific/solinas32_2e226m5_9limbs/fecarry.v
deleted file mode 100644
index 9d71b33ba..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e226m5_9limbs.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_2e226m5_9limbs/fecarryDisplay.v b/src/Specific/solinas32_2e226m5_9limbs/fecarryDisplay.v
deleted file mode 100644
index 313aea908..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e226m5_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e226m5_9limbs/femul.c b/src/Specific/solinas32_2e226m5_9limbs/femul.c
deleted file mode 100644
index f023c4b4b..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/femul.c
+++ /dev/null
@@ -1,71 +0,0 @@
-static void femul(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- { uint64_t x36 = (((uint64_t)x5 * x34) + ((0x2 * ((uint64_t)x7 * x35)) + ((0x2 * ((uint64_t)x9 * x33)) + ((0x2 * ((uint64_t)x11 * x31)) + ((0x2 * ((uint64_t)x13 * x29)) + ((0x2 * ((uint64_t)x15 * x27)) + ((0x2 * ((uint64_t)x17 * x25)) + ((0x2 * ((uint64_t)x19 * x23)) + ((uint64_t)x18 * x21)))))))));
- { uint64_t x37 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + ((uint64_t)x19 * x21)))))))) + (0x5 * ((uint64_t)x18 * x34)));
- { uint64_t x38 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((0x2 * ((uint64_t)x11 * x27)) + ((0x2 * ((uint64_t)x13 * x25)) + ((0x2 * ((uint64_t)x15 * x23)) + ((uint64_t)x17 * x21))))))) + (0x5 * (((uint64_t)x19 * x34) + ((uint64_t)x18 * x35))));
- { uint64_t x39 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((uint64_t)x15 * x21)))))) + (0x5 * (((uint64_t)x17 * x34) + (((uint64_t)x19 * x35) + ((uint64_t)x18 * x33)))));
- { uint64_t x40 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((0x2 * ((uint64_t)x11 * x23)) + ((uint64_t)x13 * x21))))) + (0x5 * (((uint64_t)x15 * x34) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x18 * x31))))));
- { uint64_t x41 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((uint64_t)x11 * x21)))) + (0x5 * (((uint64_t)x13 * x34) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + ((uint64_t)x18 * x29)))))));
- { uint64_t x42 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((uint64_t)x9 * x21))) + (0x5 * (((uint64_t)x11 * x34) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + ((uint64_t)x18 * x27))))))));
- { uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0x5 * (((uint64_t)x9 * x34) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + ((uint64_t)x18 * x25)))))))));
- { uint64_t x44 = (((uint64_t)x5 * x21) + (0x5 * ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23)))))))))));
- { uint64_t x45 = (x44 >> 0x1a);
- { uint32_t x46 = ((uint32_t)x44 & 0x3ffffff);
- { uint64_t x47 = (x45 + x43);
- { uint64_t x48 = (x47 >> 0x19);
- { uint32_t x49 = ((uint32_t)x47 & 0x1ffffff);
- { uint64_t x50 = (x48 + x42);
- { uint64_t x51 = (x50 >> 0x19);
- { uint32_t x52 = ((uint32_t)x50 & 0x1ffffff);
- { uint64_t x53 = (x51 + x41);
- { uint64_t x54 = (x53 >> 0x19);
- { uint32_t x55 = ((uint32_t)x53 & 0x1ffffff);
- { uint64_t x56 = (x54 + x40);
- { uint64_t x57 = (x56 >> 0x19);
- { uint32_t x58 = ((uint32_t)x56 & 0x1ffffff);
- { uint64_t x59 = (x57 + x39);
- { uint64_t x60 = (x59 >> 0x19);
- { uint32_t x61 = ((uint32_t)x59 & 0x1ffffff);
- { uint64_t x62 = (x60 + x38);
- { uint64_t x63 = (x62 >> 0x19);
- { uint32_t x64 = ((uint32_t)x62 & 0x1ffffff);
- { uint64_t x65 = (x63 + x37);
- { uint64_t x66 = (x65 >> 0x19);
- { uint32_t x67 = ((uint32_t)x65 & 0x1ffffff);
- { uint64_t x68 = (x66 + x36);
- { uint64_t x69 = (x68 >> 0x19);
- { uint32_t x70 = ((uint32_t)x68 & 0x1ffffff);
- { uint64_t x71 = (x46 + (0x5 * x69));
- { uint32_t x72 = (uint32_t) (x71 >> 0x1a);
- { uint32_t x73 = ((uint32_t)x71 & 0x3ffffff);
- { uint32_t x74 = (x72 + x49);
- { uint32_t x75 = (x74 >> 0x19);
- { uint32_t x76 = (x74 & 0x1ffffff);
- out[0] = x73;
- out[1] = x76;
- out[2] = (x75 + x52);
- out[3] = x55;
- out[4] = x58;
- out[5] = x61;
- out[6] = x64;
- out[7] = x67;
- out[8] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e226m5_9limbs/femul.v b/src/Specific/solinas32_2e226m5_9limbs/femul.v
deleted file mode 100644
index 9d10ee815..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e226m5_9limbs.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_2e226m5_9limbs/femulDisplay.log b/src/Specific/solinas32_2e226m5_9limbs/femulDisplay.log
deleted file mode 100644
index e9f4ba5de..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/femulDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint64_t x36 = (((uint64_t)x5 * x34) + ((0x2 * ((uint64_t)x7 * x35)) + ((0x2 * ((uint64_t)x9 * x33)) + ((0x2 * ((uint64_t)x11 * x31)) + ((0x2 * ((uint64_t)x13 * x29)) + ((0x2 * ((uint64_t)x15 * x27)) + ((0x2 * ((uint64_t)x17 * x25)) + ((0x2 * ((uint64_t)x19 * x23)) + ((uint64_t)x18 * x21)))))))));
- uint64_t x37 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + ((uint64_t)x19 * x21)))))))) + (0x5 * ((uint64_t)x18 * x34)));
- uint64_t x38 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((0x2 * ((uint64_t)x11 * x27)) + ((0x2 * ((uint64_t)x13 * x25)) + ((0x2 * ((uint64_t)x15 * x23)) + ((uint64_t)x17 * x21))))))) + (0x5 * (((uint64_t)x19 * x34) + ((uint64_t)x18 * x35))));
- uint64_t x39 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((uint64_t)x15 * x21)))))) + (0x5 * (((uint64_t)x17 * x34) + (((uint64_t)x19 * x35) + ((uint64_t)x18 * x33)))));
- uint64_t x40 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((0x2 * ((uint64_t)x11 * x23)) + ((uint64_t)x13 * x21))))) + (0x5 * (((uint64_t)x15 * x34) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x18 * x31))))));
- uint64_t x41 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((uint64_t)x11 * x21)))) + (0x5 * (((uint64_t)x13 * x34) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + ((uint64_t)x18 * x29)))))));
- uint64_t x42 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((uint64_t)x9 * x21))) + (0x5 * (((uint64_t)x11 * x34) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + ((uint64_t)x18 * x27))))))));
- uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0x5 * (((uint64_t)x9 * x34) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + ((uint64_t)x18 * x25)))))))));
- uint64_t x44 = (((uint64_t)x5 * x21) + (0x5 * ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23)))))))))));
- uint64_t x45 = (x44 >> 0x1a);
- uint32_t x46 = ((uint32_t)x44 & 0x3ffffff);
- uint64_t x47 = (x45 + x43);
- uint64_t x48 = (x47 >> 0x19);
- uint32_t x49 = ((uint32_t)x47 & 0x1ffffff);
- uint64_t x50 = (x48 + x42);
- uint64_t x51 = (x50 >> 0x19);
- uint32_t x52 = ((uint32_t)x50 & 0x1ffffff);
- uint64_t x53 = (x51 + x41);
- uint64_t x54 = (x53 >> 0x19);
- uint32_t x55 = ((uint32_t)x53 & 0x1ffffff);
- uint64_t x56 = (x54 + x40);
- uint64_t x57 = (x56 >> 0x19);
- uint32_t x58 = ((uint32_t)x56 & 0x1ffffff);
- uint64_t x59 = (x57 + x39);
- uint64_t x60 = (x59 >> 0x19);
- uint32_t x61 = ((uint32_t)x59 & 0x1ffffff);
- uint64_t x62 = (x60 + x38);
- uint64_t x63 = (x62 >> 0x19);
- uint32_t x64 = ((uint32_t)x62 & 0x1ffffff);
- uint64_t x65 = (x63 + x37);
- uint64_t x66 = (x65 >> 0x19);
- uint32_t x67 = ((uint32_t)x65 & 0x1ffffff);
- uint64_t x68 = (x66 + x36);
- uint64_t x69 = (x68 >> 0x19);
- uint32_t x70 = ((uint32_t)x68 & 0x1ffffff);
- uint64_t x71 = (x46 + (0x5 * x69));
- uint32_t x72 = (uint32_t) (x71 >> 0x1a);
- uint32_t x73 = ((uint32_t)x71 & 0x3ffffff);
- uint32_t x74 = (x72 + x49);
- uint32_t x75 = (x74 >> 0x19);
- uint32_t x76 = (x74 & 0x1ffffff);
- return (Return x70, Return x67, Return x64, Return x61, Return x58, Return x55, (x75 + x52), Return x76, Return x73))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e226m5_9limbs/femulDisplay.v b/src/Specific/solinas32_2e226m5_9limbs/femulDisplay.v
deleted file mode 100644
index 2613e8b5e..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e226m5_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e226m5_9limbs/fesquare.c b/src/Specific/solinas32_2e226m5_9limbs/fesquare.c
deleted file mode 100644
index 91eb73d03..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/fesquare.c
+++ /dev/null
@@ -1,62 +0,0 @@
-static void fesquare(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x17 = (((uint64_t)x2 * x15) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x15 * x2)))))))));
- { uint64_t x18 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x5 * ((uint64_t)x15 * x15)));
- { uint64_t x19 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x5 * (((uint64_t)x16 * x15) + ((uint64_t)x15 * x16))));
- { uint64_t x20 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x5 * (((uint64_t)x14 * x15) + (((uint64_t)x16 * x16) + ((uint64_t)x15 * x14)))));
- { uint64_t x21 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x5 * (((uint64_t)x12 * x15) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x15 * x12))))));
- { uint64_t x22 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x5 * (((uint64_t)x10 * x15) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + ((uint64_t)x15 * x10)))))));
- { uint64_t x23 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x5 * (((uint64_t)x8 * x15) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x15 * x8))))))));
- { uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x5 * (((uint64_t)x6 * x15) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((uint64_t)x15 * x6)))))))));
- { uint64_t x25 = (((uint64_t)x2 * x2) + (0x5 * ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4)))))))))));
- { uint64_t x26 = (x25 >> 0x1a);
- { uint32_t x27 = ((uint32_t)x25 & 0x3ffffff);
- { uint64_t x28 = (x26 + x24);
- { uint64_t x29 = (x28 >> 0x19);
- { uint32_t x30 = ((uint32_t)x28 & 0x1ffffff);
- { uint64_t x31 = (x29 + x23);
- { uint64_t x32 = (x31 >> 0x19);
- { uint32_t x33 = ((uint32_t)x31 & 0x1ffffff);
- { uint64_t x34 = (x32 + x22);
- { uint64_t x35 = (x34 >> 0x19);
- { uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- { uint64_t x37 = (x35 + x21);
- { uint64_t x38 = (x37 >> 0x19);
- { uint32_t x39 = ((uint32_t)x37 & 0x1ffffff);
- { uint64_t x40 = (x38 + x20);
- { uint64_t x41 = (x40 >> 0x19);
- { uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- { uint64_t x43 = (x41 + x19);
- { uint64_t x44 = (x43 >> 0x19);
- { uint32_t x45 = ((uint32_t)x43 & 0x1ffffff);
- { uint64_t x46 = (x44 + x18);
- { uint64_t x47 = (x46 >> 0x19);
- { uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- { uint64_t x49 = (x47 + x17);
- { uint64_t x50 = (x49 >> 0x19);
- { uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- { uint64_t x52 = (x27 + (0x5 * x50));
- { uint32_t x53 = (uint32_t) (x52 >> 0x1a);
- { uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- { uint32_t x55 = (x53 + x30);
- { uint32_t x56 = (x55 >> 0x19);
- { uint32_t x57 = (x55 & 0x1ffffff);
- out[0] = x54;
- out[1] = x57;
- out[2] = (x56 + x33);
- out[3] = x36;
- out[4] = x39;
- out[5] = x42;
- out[6] = x45;
- out[7] = x48;
- out[8] = x51;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e226m5_9limbs/fesquare.v b/src/Specific/solinas32_2e226m5_9limbs/fesquare.v
deleted file mode 100644
index ea3d4d80b..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e226m5_9limbs.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_2e226m5_9limbs/fesquareDisplay.log b/src/Specific/solinas32_2e226m5_9limbs/fesquareDisplay.log
deleted file mode 100644
index 507ed9466..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x17 = (((uint64_t)x2 * x15) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x15 * x2)))))))));
- uint64_t x18 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x5 * ((uint64_t)x15 * x15)));
- uint64_t x19 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x5 * (((uint64_t)x16 * x15) + ((uint64_t)x15 * x16))));
- uint64_t x20 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x5 * (((uint64_t)x14 * x15) + (((uint64_t)x16 * x16) + ((uint64_t)x15 * x14)))));
- uint64_t x21 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x5 * (((uint64_t)x12 * x15) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x15 * x12))))));
- uint64_t x22 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x5 * (((uint64_t)x10 * x15) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + ((uint64_t)x15 * x10)))))));
- uint64_t x23 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x5 * (((uint64_t)x8 * x15) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x15 * x8))))))));
- uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x5 * (((uint64_t)x6 * x15) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((uint64_t)x15 * x6)))))))));
- uint64_t x25 = (((uint64_t)x2 * x2) + (0x5 * ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4)))))))))));
- uint64_t x26 = (x25 >> 0x1a);
- uint32_t x27 = ((uint32_t)x25 & 0x3ffffff);
- uint64_t x28 = (x26 + x24);
- uint64_t x29 = (x28 >> 0x19);
- uint32_t x30 = ((uint32_t)x28 & 0x1ffffff);
- uint64_t x31 = (x29 + x23);
- uint64_t x32 = (x31 >> 0x19);
- uint32_t x33 = ((uint32_t)x31 & 0x1ffffff);
- uint64_t x34 = (x32 + x22);
- uint64_t x35 = (x34 >> 0x19);
- uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- uint64_t x37 = (x35 + x21);
- uint64_t x38 = (x37 >> 0x19);
- uint32_t x39 = ((uint32_t)x37 & 0x1ffffff);
- uint64_t x40 = (x38 + x20);
- uint64_t x41 = (x40 >> 0x19);
- uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- uint64_t x43 = (x41 + x19);
- uint64_t x44 = (x43 >> 0x19);
- uint32_t x45 = ((uint32_t)x43 & 0x1ffffff);
- uint64_t x46 = (x44 + x18);
- uint64_t x47 = (x46 >> 0x19);
- uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- uint64_t x49 = (x47 + x17);
- uint64_t x50 = (x49 >> 0x19);
- uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- uint64_t x52 = (x27 + (0x5 * x50));
- uint32_t x53 = (uint32_t) (x52 >> 0x1a);
- uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- uint32_t x55 = (x53 + x30);
- uint32_t x56 = (x55 >> 0x19);
- uint32_t x57 = (x55 & 0x1ffffff);
- return (Return x51, Return x48, Return x45, Return x42, Return x39, Return x36, (x56 + x33), Return x57, Return x54))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e226m5_9limbs/fesquareDisplay.v b/src/Specific/solinas32_2e226m5_9limbs/fesquareDisplay.v
deleted file mode 100644
index 54212e3c1..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e226m5_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e226m5_9limbs/fesub.c b/src/Specific/solinas32_2e226m5_9limbs/fesub.c
deleted file mode 100644
index 73238f0b1..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/fesub.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void fesub(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = ((0x7fffff6 + x5) - x21);
- out[1] = ((0x3fffffe + x7) - x23);
- out[2] = ((0x3fffffe + x9) - x25);
- out[3] = ((0x3fffffe + x11) - x27);
- out[4] = ((0x3fffffe + x13) - x29);
- out[5] = ((0x3fffffe + x15) - x31);
- out[6] = ((0x3fffffe + x17) - x33);
- out[7] = ((0x3fffffe + x19) - x35);
- out[8] = ((0x3fffffe + x18) - x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e226m5_9limbs/fesub.v b/src/Specific/solinas32_2e226m5_9limbs/fesub.v
deleted file mode 100644
index 12ef11f0a..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e226m5_9limbs.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_2e226m5_9limbs/fesubDisplay.log b/src/Specific/solinas32_2e226m5_9limbs/fesubDisplay.log
deleted file mode 100644
index dde4f2fe7..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- (((0x3fffffe + x18) - x34), ((0x3fffffe + x19) - x35), ((0x3fffffe + x17) - x33), ((0x3fffffe + x15) - x31), ((0x3fffffe + x13) - x29), ((0x3fffffe + x11) - x27), ((0x3fffffe + x9) - x25), ((0x3fffffe + x7) - x23), ((0x7fffff6 + x5) - x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e226m5_9limbs/fesubDisplay.v b/src/Specific/solinas32_2e226m5_9limbs/fesubDisplay.v
deleted file mode 100644
index e7cb220a8..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e226m5_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e226m5_9limbs/freeze.c b/src/Specific/solinas32_2e226m5_9limbs/freeze.c
deleted file mode 100644
index 7637cfeb2..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/freeze.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void freeze(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffb);
- { uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0x1ffffff);
- { uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0x1ffffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x8, 0x1ffffff);
- { uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0x1ffffff);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0x1ffffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0x1ffffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0x1ffffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0x1ffffff);
- { uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- { uint32_t x45 = (x44 & 0x3fffffb);
- { uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- { uint32_t x49 = (x44 & 0x1ffffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- { uint32_t x53 = (x44 & 0x1ffffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- { uint32_t x57 = (x44 & 0x1ffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- { uint32_t x61 = (x44 & 0x1ffffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- { uint32_t x65 = (x44 & 0x1ffffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- { uint32_t x69 = (x44 & 0x1ffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- { uint32_t x73 = (x44 & 0x1ffffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- { uint32_t x77 = (x44 & 0x1ffffff);
- { uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- out[0] = x47;
- out[1] = x51;
- out[2] = x55;
- out[3] = x59;
- out[4] = x63;
- out[5] = x67;
- out[6] = x71;
- out[7] = x75;
- out[8] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e226m5_9limbs/freeze.v b/src/Specific/solinas32_2e226m5_9limbs/freeze.v
deleted file mode 100644
index 5c724caf5..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e226m5_9limbs.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_2e226m5_9limbs/freezeDisplay.log b/src/Specific/solinas32_2e226m5_9limbs/freezeDisplay.log
deleted file mode 100644
index aaf536664..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- 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)) (0x0, Return x2, 0x3fffffb);
- uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0x1ffffff);
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0x1ffffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x8, 0x1ffffff);
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0x1ffffff);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0x1ffffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0x1ffffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0x1ffffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0x1ffffff);
- uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- uint32_t x45 = (x44 & 0x3fffffb);
- uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- uint32_t x49 = (x44 & 0x1ffffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- uint32_t x53 = (x44 & 0x1ffffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- uint32_t x57 = (x44 & 0x1ffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- uint32_t x61 = (x44 & 0x1ffffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- uint32_t x65 = (x44 & 0x1ffffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- uint32_t x69 = (x44 & 0x1ffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- uint32_t x73 = (x44 & 0x1ffffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- uint32_t x77 = (x44 & 0x1ffffff);
- uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- (Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x51, Return x47))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e226m5_9limbs/freezeDisplay.v b/src/Specific/solinas32_2e226m5_9limbs/freezeDisplay.v
deleted file mode 100644
index 3d8f485f7..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e226m5_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e226m5_9limbs/py_interpreter.sh b/src/Specific/solinas32_2e226m5_9limbs/py_interpreter.sh
deleted file mode 100755
index da7fb307b..000000000
--- a/src/Specific/solinas32_2e226m5_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**226 - 5' -Dmodulus_bytes='25 + 1/9' -Da24='121665'
diff --git a/src/Specific/solinas32_2e230m27_10limbs/CurveParameters.v b/src/Specific/solinas32_2e230m27_10limbs/CurveParameters.v
deleted file mode 100644
index dfc3c0964..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^230 - 27
-Base: 23
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 23;
- bitwidth := 32;
- s := 2^230;
- c := [(1, 27)];
- carry_chains := Some [seq 0 (pred 10); [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_2e230m27_10limbs/Synthesis.v b/src/Specific/solinas32_2e230m27_10limbs/Synthesis.v
deleted file mode 100644
index 7a71a0705..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e230m27_10limbs.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_2e230m27_10limbs/compiler.sh b/src/Specific/solinas32_2e230m27_10limbs/compiler.sh
deleted file mode 100755
index 56cbabf3b..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<230) - 27' "$@"
diff --git a/src/Specific/solinas32_2e230m27_10limbs/compilerxx.sh b/src/Specific/solinas32_2e230m27_10limbs/compilerxx.sh
deleted file mode 100755
index 083fe1806..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<230) - 27' "$@"
diff --git a/src/Specific/solinas32_2e230m27_10limbs/feadd.c b/src/Specific/solinas32_2e230m27_10limbs/feadd.c
deleted file mode 100644
index 57dd4e1af..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/feadd.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void feadd(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- out[0] = (x5 + x23);
- out[1] = (x7 + x25);
- out[2] = (x9 + x27);
- out[3] = (x11 + x29);
- out[4] = (x13 + x31);
- out[5] = (x15 + x33);
- out[6] = (x17 + x35);
- out[7] = (x19 + x37);
- out[8] = (x21 + x39);
- out[9] = (x20 + x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e230m27_10limbs/feadd.v b/src/Specific/solinas32_2e230m27_10limbs/feadd.v
deleted file mode 100644
index 98f53517c..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e230m27_10limbs.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_2e230m27_10limbs/feaddDisplay.log b/src/Specific/solinas32_2e230m27_10limbs/feaddDisplay.log
deleted file mode 100644
index 8a4c51148..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e230m27_10limbs/feaddDisplay.v b/src/Specific/solinas32_2e230m27_10limbs/feaddDisplay.v
deleted file mode 100644
index 1f20a273f..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e230m27_10limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e230m27_10limbs/fecarry.v b/src/Specific/solinas32_2e230m27_10limbs/fecarry.v
deleted file mode 100644
index 236dc48d6..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e230m27_10limbs.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_2e230m27_10limbs/fecarryDisplay.v b/src/Specific/solinas32_2e230m27_10limbs/fecarryDisplay.v
deleted file mode 100644
index d9fa44640..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e230m27_10limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e230m27_10limbs/femul.c b/src/Specific/solinas32_2e230m27_10limbs/femul.c
deleted file mode 100644
index 75851dd8a..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/femul.c
+++ /dev/null
@@ -1,78 +0,0 @@
-static void femul(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- { uint64_t x40 = (((uint64_t)x5 * x38) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + (((uint64_t)x21 * x25) + ((uint64_t)x20 * x23))))))))));
- { uint64_t x41 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + (((uint64_t)x17 * x27) + (((uint64_t)x19 * x25) + ((uint64_t)x21 * x23))))))))) + (0x1b * ((uint64_t)x20 * x38)));
- { uint64_t x42 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + ((uint64_t)x19 * x23)))))))) + (0x1b * (((uint64_t)x21 * x38) + ((uint64_t)x20 * x39))));
- { uint64_t x43 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + ((uint64_t)x17 * x23))))))) + (0x1b * (((uint64_t)x19 * x38) + (((uint64_t)x21 * x39) + ((uint64_t)x20 * x37)))));
- { uint64_t x44 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + ((uint64_t)x15 * x23)))))) + (0x1b * (((uint64_t)x17 * x38) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + ((uint64_t)x20 * x35))))));
- { uint64_t x45 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + ((uint64_t)x13 * x23))))) + (0x1b * (((uint64_t)x15 * x38) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + (((uint64_t)x21 * x35) + ((uint64_t)x20 * x33)))))));
- { uint64_t x46 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + ((uint64_t)x11 * x23)))) + (0x1b * (((uint64_t)x13 * x38) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + ((uint64_t)x20 * x31))))))));
- { uint64_t x47 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + ((uint64_t)x9 * x23))) + (0x1b * (((uint64_t)x11 * x38) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((uint64_t)x20 * x29)))))))));
- { uint64_t x48 = ((((uint64_t)x5 * x25) + ((uint64_t)x7 * x23)) + (0x1b * (((uint64_t)x9 * x38) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (((uint64_t)x21 * x29) + ((uint64_t)x20 * x27))))))))));
- { uint64_t x49 = (((uint64_t)x5 * x23) + (0x1b * (((uint64_t)x7 * x38) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + (((uint64_t)x21 * x27) + ((uint64_t)x20 * x25)))))))))));
- { uint64_t x50 = (x49 >> 0x17);
- { uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- { uint64_t x52 = (x50 + x48);
- { uint64_t x53 = (x52 >> 0x17);
- { uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- { uint64_t x55 = (x53 + x47);
- { uint64_t x56 = (x55 >> 0x17);
- { uint32_t x57 = ((uint32_t)x55 & 0x7fffff);
- { uint64_t x58 = (x56 + x46);
- { uint64_t x59 = (x58 >> 0x17);
- { uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- { uint64_t x61 = (x59 + x45);
- { uint64_t x62 = (x61 >> 0x17);
- { uint32_t x63 = ((uint32_t)x61 & 0x7fffff);
- { uint64_t x64 = (x62 + x44);
- { uint64_t x65 = (x64 >> 0x17);
- { uint32_t x66 = ((uint32_t)x64 & 0x7fffff);
- { uint64_t x67 = (x65 + x43);
- { uint64_t x68 = (x67 >> 0x17);
- { uint32_t x69 = ((uint32_t)x67 & 0x7fffff);
- { uint64_t x70 = (x68 + x42);
- { uint64_t x71 = (x70 >> 0x17);
- { uint32_t x72 = ((uint32_t)x70 & 0x7fffff);
- { uint64_t x73 = (x71 + x41);
- { uint32_t x74 = (uint32_t) (x73 >> 0x17);
- { uint32_t x75 = ((uint32_t)x73 & 0x7fffff);
- { uint64_t x76 = (x74 + x40);
- { uint32_t x77 = (uint32_t) (x76 >> 0x17);
- { uint32_t x78 = ((uint32_t)x76 & 0x7fffff);
- { uint64_t x79 = (x51 + ((uint64_t)0x1b * x77));
- { uint32_t x80 = (uint32_t) (x79 >> 0x17);
- { uint32_t x81 = ((uint32_t)x79 & 0x7fffff);
- { uint32_t x82 = (x80 + x54);
- { uint32_t x83 = (x82 >> 0x17);
- { uint32_t x84 = (x82 & 0x7fffff);
- out[0] = x81;
- out[1] = x84;
- out[2] = (x83 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e230m27_10limbs/femul.v b/src/Specific/solinas32_2e230m27_10limbs/femul.v
deleted file mode 100644
index 9c8a38673..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e230m27_10limbs.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_2e230m27_10limbs/femulDisplay.log b/src/Specific/solinas32_2e230m27_10limbs/femulDisplay.log
deleted file mode 100644
index 9588152da..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/femulDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- uint64_t x40 = (((uint64_t)x5 * x38) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + (((uint64_t)x21 * x25) + ((uint64_t)x20 * x23))))))))));
- uint64_t x41 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + (((uint64_t)x17 * x27) + (((uint64_t)x19 * x25) + ((uint64_t)x21 * x23))))))))) + (0x1b * ((uint64_t)x20 * x38)));
- uint64_t x42 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + ((uint64_t)x19 * x23)))))))) + (0x1b * (((uint64_t)x21 * x38) + ((uint64_t)x20 * x39))));
- uint64_t x43 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + ((uint64_t)x17 * x23))))))) + (0x1b * (((uint64_t)x19 * x38) + (((uint64_t)x21 * x39) + ((uint64_t)x20 * x37)))));
- uint64_t x44 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + ((uint64_t)x15 * x23)))))) + (0x1b * (((uint64_t)x17 * x38) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + ((uint64_t)x20 * x35))))));
- uint64_t x45 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + ((uint64_t)x13 * x23))))) + (0x1b * (((uint64_t)x15 * x38) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + (((uint64_t)x21 * x35) + ((uint64_t)x20 * x33)))))));
- uint64_t x46 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + ((uint64_t)x11 * x23)))) + (0x1b * (((uint64_t)x13 * x38) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + ((uint64_t)x20 * x31))))))));
- uint64_t x47 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + ((uint64_t)x9 * x23))) + (0x1b * (((uint64_t)x11 * x38) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((uint64_t)x20 * x29)))))))));
- uint64_t x48 = ((((uint64_t)x5 * x25) + ((uint64_t)x7 * x23)) + (0x1b * (((uint64_t)x9 * x38) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (((uint64_t)x21 * x29) + ((uint64_t)x20 * x27))))))))));
- uint64_t x49 = (((uint64_t)x5 * x23) + (0x1b * (((uint64_t)x7 * x38) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + (((uint64_t)x21 * x27) + ((uint64_t)x20 * x25)))))))))));
- uint64_t x50 = (x49 >> 0x17);
- uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- uint64_t x52 = (x50 + x48);
- uint64_t x53 = (x52 >> 0x17);
- uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- uint64_t x55 = (x53 + x47);
- uint64_t x56 = (x55 >> 0x17);
- uint32_t x57 = ((uint32_t)x55 & 0x7fffff);
- uint64_t x58 = (x56 + x46);
- uint64_t x59 = (x58 >> 0x17);
- uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- uint64_t x61 = (x59 + x45);
- uint64_t x62 = (x61 >> 0x17);
- uint32_t x63 = ((uint32_t)x61 & 0x7fffff);
- uint64_t x64 = (x62 + x44);
- uint64_t x65 = (x64 >> 0x17);
- uint32_t x66 = ((uint32_t)x64 & 0x7fffff);
- uint64_t x67 = (x65 + x43);
- uint64_t x68 = (x67 >> 0x17);
- uint32_t x69 = ((uint32_t)x67 & 0x7fffff);
- uint64_t x70 = (x68 + x42);
- uint64_t x71 = (x70 >> 0x17);
- uint32_t x72 = ((uint32_t)x70 & 0x7fffff);
- uint64_t x73 = (x71 + x41);
- uint32_t x74 = (uint32_t) (x73 >> 0x17);
- uint32_t x75 = ((uint32_t)x73 & 0x7fffff);
- uint64_t x76 = (x74 + x40);
- uint32_t x77 = (uint32_t) (x76 >> 0x17);
- uint32_t x78 = ((uint32_t)x76 & 0x7fffff);
- uint64_t x79 = (x51 + ((uint64_t)0x1b * x77));
- uint32_t x80 = (uint32_t) (x79 >> 0x17);
- uint32_t x81 = ((uint32_t)x79 & 0x7fffff);
- uint32_t x82 = (x80 + x54);
- uint32_t x83 = (x82 >> 0x17);
- uint32_t x84 = (x82 & 0x7fffff);
- return (Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x83 + x57), Return x84, Return x81))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e230m27_10limbs/femulDisplay.v b/src/Specific/solinas32_2e230m27_10limbs/femulDisplay.v
deleted file mode 100644
index 744087da0..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e230m27_10limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e230m27_10limbs/fesquare.c b/src/Specific/solinas32_2e230m27_10limbs/fesquare.c
deleted file mode 100644
index 7be6c9a29..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/fesquare.c
+++ /dev/null
@@ -1,68 +0,0 @@
-static void fesquare(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x19 = (((uint64_t)x2 * x17) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x17 * x2))))))))));
- { uint64_t x20 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x1b * ((uint64_t)x17 * x17)));
- { uint64_t x21 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x1b * (((uint64_t)x18 * x17) + ((uint64_t)x17 * x18))));
- { uint64_t x22 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x1b * (((uint64_t)x16 * x17) + (((uint64_t)x18 * x18) + ((uint64_t)x17 * x16)))));
- { uint64_t x23 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x1b * (((uint64_t)x14 * x17) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((uint64_t)x17 * x14))))));
- { uint64_t x24 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x1b * (((uint64_t)x12 * x17) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + ((uint64_t)x17 * x12)))))));
- { uint64_t x25 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x1b * (((uint64_t)x10 * x17) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + ((uint64_t)x17 * x10))))))));
- { uint64_t x26 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x1b * (((uint64_t)x8 * x17) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((uint64_t)x17 * x8)))))))));
- { uint64_t x27 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1b * (((uint64_t)x6 * x17) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((uint64_t)x17 * x6))))))))));
- { uint64_t x28 = (((uint64_t)x2 * x2) + (0x1b * (((uint64_t)x4 * x17) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + ((uint64_t)x17 * x4)))))))))));
- { uint64_t x29 = (x28 >> 0x17);
- { uint32_t x30 = ((uint32_t)x28 & 0x7fffff);
- { uint64_t x31 = (x29 + x27);
- { uint64_t x32 = (x31 >> 0x17);
- { uint32_t x33 = ((uint32_t)x31 & 0x7fffff);
- { uint64_t x34 = (x32 + x26);
- { uint64_t x35 = (x34 >> 0x17);
- { uint32_t x36 = ((uint32_t)x34 & 0x7fffff);
- { uint64_t x37 = (x35 + x25);
- { uint64_t x38 = (x37 >> 0x17);
- { uint32_t x39 = ((uint32_t)x37 & 0x7fffff);
- { uint64_t x40 = (x38 + x24);
- { uint64_t x41 = (x40 >> 0x17);
- { uint32_t x42 = ((uint32_t)x40 & 0x7fffff);
- { uint64_t x43 = (x41 + x23);
- { uint64_t x44 = (x43 >> 0x17);
- { uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- { uint64_t x46 = (x44 + x22);
- { uint64_t x47 = (x46 >> 0x17);
- { uint32_t x48 = ((uint32_t)x46 & 0x7fffff);
- { uint64_t x49 = (x47 + x21);
- { uint64_t x50 = (x49 >> 0x17);
- { uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- { uint64_t x52 = (x50 + x20);
- { uint32_t x53 = (uint32_t) (x52 >> 0x17);
- { uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- { uint64_t x55 = (x53 + x19);
- { uint32_t x56 = (uint32_t) (x55 >> 0x17);
- { uint32_t x57 = ((uint32_t)x55 & 0x7fffff);
- { uint64_t x58 = (x30 + ((uint64_t)0x1b * x56));
- { uint32_t x59 = (uint32_t) (x58 >> 0x17);
- { uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- { uint32_t x61 = (x59 + x33);
- { uint32_t x62 = (x61 >> 0x17);
- { uint32_t x63 = (x61 & 0x7fffff);
- out[0] = x60;
- out[1] = x63;
- out[2] = (x62 + x36);
- out[3] = x39;
- out[4] = x42;
- out[5] = x45;
- out[6] = x48;
- out[7] = x51;
- out[8] = x54;
- out[9] = x57;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e230m27_10limbs/fesquare.v b/src/Specific/solinas32_2e230m27_10limbs/fesquare.v
deleted file mode 100644
index b4df13e13..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e230m27_10limbs.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_2e230m27_10limbs/fesquareDisplay.log b/src/Specific/solinas32_2e230m27_10limbs/fesquareDisplay.log
deleted file mode 100644
index 37ac5e492..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x19 = (((uint64_t)x2 * x17) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x17 * x2))))))))));
- uint64_t x20 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x1b * ((uint64_t)x17 * x17)));
- uint64_t x21 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x1b * (((uint64_t)x18 * x17) + ((uint64_t)x17 * x18))));
- uint64_t x22 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x1b * (((uint64_t)x16 * x17) + (((uint64_t)x18 * x18) + ((uint64_t)x17 * x16)))));
- uint64_t x23 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x1b * (((uint64_t)x14 * x17) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((uint64_t)x17 * x14))))));
- uint64_t x24 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x1b * (((uint64_t)x12 * x17) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + ((uint64_t)x17 * x12)))))));
- uint64_t x25 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x1b * (((uint64_t)x10 * x17) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + ((uint64_t)x17 * x10))))))));
- uint64_t x26 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x1b * (((uint64_t)x8 * x17) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((uint64_t)x17 * x8)))))))));
- uint64_t x27 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1b * (((uint64_t)x6 * x17) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((uint64_t)x17 * x6))))))))));
- uint64_t x28 = (((uint64_t)x2 * x2) + (0x1b * (((uint64_t)x4 * x17) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + ((uint64_t)x17 * x4)))))))))));
- uint64_t x29 = (x28 >> 0x17);
- uint32_t x30 = ((uint32_t)x28 & 0x7fffff);
- uint64_t x31 = (x29 + x27);
- uint64_t x32 = (x31 >> 0x17);
- uint32_t x33 = ((uint32_t)x31 & 0x7fffff);
- uint64_t x34 = (x32 + x26);
- uint64_t x35 = (x34 >> 0x17);
- uint32_t x36 = ((uint32_t)x34 & 0x7fffff);
- uint64_t x37 = (x35 + x25);
- uint64_t x38 = (x37 >> 0x17);
- uint32_t x39 = ((uint32_t)x37 & 0x7fffff);
- uint64_t x40 = (x38 + x24);
- uint64_t x41 = (x40 >> 0x17);
- uint32_t x42 = ((uint32_t)x40 & 0x7fffff);
- uint64_t x43 = (x41 + x23);
- uint64_t x44 = (x43 >> 0x17);
- uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- uint64_t x46 = (x44 + x22);
- uint64_t x47 = (x46 >> 0x17);
- uint32_t x48 = ((uint32_t)x46 & 0x7fffff);
- uint64_t x49 = (x47 + x21);
- uint64_t x50 = (x49 >> 0x17);
- uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- uint64_t x52 = (x50 + x20);
- uint32_t x53 = (uint32_t) (x52 >> 0x17);
- uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- uint64_t x55 = (x53 + x19);
- uint32_t x56 = (uint32_t) (x55 >> 0x17);
- uint32_t x57 = ((uint32_t)x55 & 0x7fffff);
- uint64_t x58 = (x30 + ((uint64_t)0x1b * x56));
- uint32_t x59 = (uint32_t) (x58 >> 0x17);
- uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- uint32_t x61 = (x59 + x33);
- uint32_t x62 = (x61 >> 0x17);
- uint32_t x63 = (x61 & 0x7fffff);
- return (Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, Return x39, (x62 + x36), Return x63, Return x60))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e230m27_10limbs/fesquareDisplay.v b/src/Specific/solinas32_2e230m27_10limbs/fesquareDisplay.v
deleted file mode 100644
index d0051e4ab..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e230m27_10limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e230m27_10limbs/fesub.c b/src/Specific/solinas32_2e230m27_10limbs/fesub.c
deleted file mode 100644
index 7a81c7e89..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/fesub.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fesub(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- out[0] = ((0xffffca + x5) - x23);
- out[1] = ((0xfffffe + x7) - x25);
- out[2] = ((0xfffffe + x9) - x27);
- out[3] = ((0xfffffe + x11) - x29);
- out[4] = ((0xfffffe + x13) - x31);
- out[5] = ((0xfffffe + x15) - x33);
- out[6] = ((0xfffffe + x17) - x35);
- out[7] = ((0xfffffe + x19) - x37);
- out[8] = ((0xfffffe + x21) - x39);
- out[9] = ((0xfffffe + x20) - x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e230m27_10limbs/fesub.v b/src/Specific/solinas32_2e230m27_10limbs/fesub.v
deleted file mode 100644
index 1247defc8..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e230m27_10limbs.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_2e230m27_10limbs/fesubDisplay.log b/src/Specific/solinas32_2e230m27_10limbs/fesubDisplay.log
deleted file mode 100644
index d40b94113..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- (((0xfffffe + x20) - x38), ((0xfffffe + x21) - x39), ((0xfffffe + x19) - x37), ((0xfffffe + x17) - x35), ((0xfffffe + x15) - x33), ((0xfffffe + x13) - x31), ((0xfffffe + x11) - x29), ((0xfffffe + x9) - x27), ((0xfffffe + x7) - x25), ((0xffffca + x5) - x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e230m27_10limbs/fesubDisplay.v b/src/Specific/solinas32_2e230m27_10limbs/fesubDisplay.v
deleted file mode 100644
index b070b9752..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e230m27_10limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e230m27_10limbs/freeze.c b/src/Specific/solinas32_2e230m27_10limbs/freeze.c
deleted file mode 100644
index feed33dcc..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/freeze.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void freeze(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffe5);
- { uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x4, 0x7fffff);
- { uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x6, 0x7fffff);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x8, 0x7fffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x10, 0x7fffff);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x12, 0x7fffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x14, 0x7fffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x16, 0x7fffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x18, 0x7fffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x17, 0x7fffff);
- { uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- { uint32_t x50 = (x49 & 0x7fffe5);
- { uint32_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- { uint32_t x54 = (x49 & 0x7fffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- { uint32_t x58 = (x49 & 0x7fffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- { uint32_t x62 = (x49 & 0x7fffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- { uint32_t x66 = (x49 & 0x7fffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- { uint32_t x70 = (x49 & 0x7fffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- { uint32_t x74 = (x49 & 0x7fffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- { uint32_t x78 = (x49 & 0x7fffff);
- { uint32_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- { uint32_t x82 = (x49 & 0x7fffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- { uint32_t x86 = (x49 & 0x7fffff);
- { uint32_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- out[0] = x52;
- out[1] = x56;
- out[2] = x60;
- out[3] = x64;
- out[4] = x68;
- out[5] = x72;
- out[6] = x76;
- out[7] = x80;
- out[8] = x84;
- out[9] = x88;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e230m27_10limbs/freeze.v b/src/Specific/solinas32_2e230m27_10limbs/freeze.v
deleted file mode 100644
index 5cec72e1d..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e230m27_10limbs.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_2e230m27_10limbs/freezeDisplay.log b/src/Specific/solinas32_2e230m27_10limbs/freezeDisplay.log
deleted file mode 100644
index cdedba2b3..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffe5);
- uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x4, 0x7fffff);
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x6, 0x7fffff);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x8, 0x7fffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x10, 0x7fffff);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x12, 0x7fffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x14, 0x7fffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x16, 0x7fffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x18, 0x7fffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x17, 0x7fffff);
- uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- uint32_t x50 = (x49 & 0x7fffe5);
- uint32_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- uint32_t x54 = (x49 & 0x7fffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- uint32_t x58 = (x49 & 0x7fffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- uint32_t x62 = (x49 & 0x7fffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- uint32_t x66 = (x49 & 0x7fffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- uint32_t x70 = (x49 & 0x7fffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- uint32_t x74 = (x49 & 0x7fffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- uint32_t x78 = (x49 & 0x7fffff);
- uint32_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- uint32_t x82 = (x49 & 0x7fffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- uint32_t x86 = (x49 & 0x7fffff);
- uint32_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- (Return x88, Return x84, Return x80, Return x76, Return x72, Return x68, Return x64, Return x60, Return x56, Return x52))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e230m27_10limbs/freezeDisplay.v b/src/Specific/solinas32_2e230m27_10limbs/freezeDisplay.v
deleted file mode 100644
index 843f5cb18..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e230m27_10limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e230m27_10limbs/py_interpreter.sh b/src/Specific/solinas32_2e230m27_10limbs/py_interpreter.sh
deleted file mode 100755
index 486f57c5c..000000000
--- a/src/Specific/solinas32_2e230m27_10limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**230 - 27' -Dmodulus_bytes='23' -Da24='121665'
diff --git a/src/Specific/solinas32_2e230m27_9limbs/CurveParameters.v b/src/Specific/solinas32_2e230m27_9limbs/CurveParameters.v
deleted file mode 100644
index c9ec2e232..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^230 - 27
-Base: 25 + 5/9
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 25 + 5/9;
- bitwidth := 32;
- s := 2^230;
- c := [(1, 27)];
- carry_chains := Some [seq 0 (pred 9); [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_2e230m27_9limbs/Synthesis.v b/src/Specific/solinas32_2e230m27_9limbs/Synthesis.v
deleted file mode 100644
index 1f717402e..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e230m27_9limbs.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_2e230m27_9limbs/compiler.sh b/src/Specific/solinas32_2e230m27_9limbs/compiler.sh
deleted file mode 100755
index 09641f52b..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,26,25,26,25,26,25,26,25}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<230) - 27' "$@"
diff --git a/src/Specific/solinas32_2e230m27_9limbs/compilerxx.sh b/src/Specific/solinas32_2e230m27_9limbs/compilerxx.sh
deleted file mode 100755
index 92086d2cc..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,26,25,26,25,26,25,26,25}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<230) - 27' "$@"
diff --git a/src/Specific/solinas32_2e230m27_9limbs/feadd.c b/src/Specific/solinas32_2e230m27_9limbs/feadd.c
deleted file mode 100644
index e1188fdec..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e230m27_9limbs/feadd.v b/src/Specific/solinas32_2e230m27_9limbs/feadd.v
deleted file mode 100644
index d33980e5b..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e230m27_9limbs.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_2e230m27_9limbs/feaddDisplay.log b/src/Specific/solinas32_2e230m27_9limbs/feaddDisplay.log
deleted file mode 100644
index e26bb40f8..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e230m27_9limbs/feaddDisplay.v b/src/Specific/solinas32_2e230m27_9limbs/feaddDisplay.v
deleted file mode 100644
index d4c22eb54..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e230m27_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e230m27_9limbs/fecarry.v b/src/Specific/solinas32_2e230m27_9limbs/fecarry.v
deleted file mode 100644
index 3f564d158..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e230m27_9limbs.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_2e230m27_9limbs/fecarryDisplay.v b/src/Specific/solinas32_2e230m27_9limbs/fecarryDisplay.v
deleted file mode 100644
index 4a928621a..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e230m27_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e230m27_9limbs/femul.c b/src/Specific/solinas32_2e230m27_9limbs/femul.c
deleted file mode 100644
index bd7cc2425..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/femul.c
+++ /dev/null
@@ -1,71 +0,0 @@
-static void femul(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- { uint64_t x36 = (((uint64_t)x5 * x34) + (((uint64_t)x7 * x35) + ((0x2 * ((uint64_t)x9 * x33)) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + (((uint64_t)x15 * x27) + ((0x2 * ((uint64_t)x17 * x25)) + (((uint64_t)x19 * x23) + ((uint64_t)x18 * x21)))))))));
- { uint64_t x37 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + ((uint64_t)x19 * x21)))))))) + (0x1b * (0x2 * ((uint64_t)x18 * x34))));
- { uint64_t x38 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + ((0x2 * ((uint64_t)x9 * x29)) + (((uint64_t)x11 * x27) + ((0x2 * ((uint64_t)x13 * x25)) + (((uint64_t)x15 * x23) + ((uint64_t)x17 * x21))))))) + (0x1b * (((uint64_t)x19 * x34) + ((uint64_t)x18 * x35))));
- { uint64_t x39 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((uint64_t)x15 * x21)))))) + (0x1b * ((0x2 * ((uint64_t)x17 * x34)) + (((uint64_t)x19 * x35) + (0x2 * ((uint64_t)x18 * x33))))));
- { uint64_t x40 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + (((uint64_t)x11 * x23) + ((uint64_t)x13 * x21))))) + (0x1b * (((uint64_t)x15 * x34) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x18 * x31))))));
- { uint64_t x41 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((uint64_t)x11 * x21)))) + (0x1b * ((0x2 * ((uint64_t)x13 * x34)) + (((uint64_t)x15 * x35) + ((0x2 * ((uint64_t)x17 * x33)) + (((uint64_t)x19 * x31) + (0x2 * ((uint64_t)x18 * x29))))))));
- { uint64_t x42 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + ((uint64_t)x9 * x21))) + (0x1b * (((uint64_t)x11 * x34) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + ((uint64_t)x18 * x27))))))));
- { uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0x1b * ((0x2 * ((uint64_t)x9 * x34)) + (((uint64_t)x11 * x35) + ((0x2 * ((uint64_t)x13 * x33)) + (((uint64_t)x15 * x31) + ((0x2 * ((uint64_t)x17 * x29)) + (((uint64_t)x19 * x27) + (0x2 * ((uint64_t)x18 * x25))))))))));
- { uint64_t x44 = (((uint64_t)x5 * x21) + (0x1b * ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23)))))))))));
- { uint64_t x45 = (x44 >> 0x1a);
- { uint32_t x46 = ((uint32_t)x44 & 0x3ffffff);
- { uint64_t x47 = (x45 + x43);
- { uint64_t x48 = (x47 >> 0x1a);
- { uint32_t x49 = ((uint32_t)x47 & 0x3ffffff);
- { uint64_t x50 = (x48 + x42);
- { uint64_t x51 = (x50 >> 0x19);
- { uint32_t x52 = ((uint32_t)x50 & 0x1ffffff);
- { uint64_t x53 = (x51 + x41);
- { uint64_t x54 = (x53 >> 0x1a);
- { uint32_t x55 = ((uint32_t)x53 & 0x3ffffff);
- { uint64_t x56 = (x54 + x40);
- { uint64_t x57 = (x56 >> 0x19);
- { uint32_t x58 = ((uint32_t)x56 & 0x1ffffff);
- { uint64_t x59 = (x57 + x39);
- { uint64_t x60 = (x59 >> 0x1a);
- { uint32_t x61 = ((uint32_t)x59 & 0x3ffffff);
- { uint64_t x62 = (x60 + x38);
- { uint64_t x63 = (x62 >> 0x19);
- { uint32_t x64 = ((uint32_t)x62 & 0x1ffffff);
- { uint64_t x65 = (x63 + x37);
- { uint64_t x66 = (x65 >> 0x1a);
- { uint32_t x67 = ((uint32_t)x65 & 0x3ffffff);
- { uint64_t x68 = (x66 + x36);
- { uint64_t x69 = (x68 >> 0x19);
- { uint32_t x70 = ((uint32_t)x68 & 0x1ffffff);
- { uint64_t x71 = (x46 + (0x1b * x69));
- { uint32_t x72 = (uint32_t) (x71 >> 0x1a);
- { uint32_t x73 = ((uint32_t)x71 & 0x3ffffff);
- { uint32_t x74 = (x72 + x49);
- { uint32_t x75 = (x74 >> 0x1a);
- { uint32_t x76 = (x74 & 0x3ffffff);
- out[0] = x73;
- out[1] = x76;
- out[2] = (x75 + x52);
- out[3] = x55;
- out[4] = x58;
- out[5] = x61;
- out[6] = x64;
- out[7] = x67;
- out[8] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e230m27_9limbs/femul.v b/src/Specific/solinas32_2e230m27_9limbs/femul.v
deleted file mode 100644
index a2a70e6a0..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e230m27_9limbs.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_2e230m27_9limbs/femulDisplay.log b/src/Specific/solinas32_2e230m27_9limbs/femulDisplay.log
deleted file mode 100644
index 9d383a1a5..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/femulDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint64_t x36 = (((uint64_t)x5 * x34) + (((uint64_t)x7 * x35) + ((0x2 * ((uint64_t)x9 * x33)) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + (((uint64_t)x15 * x27) + ((0x2 * ((uint64_t)x17 * x25)) + (((uint64_t)x19 * x23) + ((uint64_t)x18 * x21)))))))));
- uint64_t x37 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + ((uint64_t)x19 * x21)))))))) + (0x1b * (0x2 * ((uint64_t)x18 * x34))));
- uint64_t x38 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + ((0x2 * ((uint64_t)x9 * x29)) + (((uint64_t)x11 * x27) + ((0x2 * ((uint64_t)x13 * x25)) + (((uint64_t)x15 * x23) + ((uint64_t)x17 * x21))))))) + (0x1b * (((uint64_t)x19 * x34) + ((uint64_t)x18 * x35))));
- uint64_t x39 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((uint64_t)x15 * x21)))))) + (0x1b * ((0x2 * ((uint64_t)x17 * x34)) + (((uint64_t)x19 * x35) + (0x2 * ((uint64_t)x18 * x33))))));
- uint64_t x40 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((0x2 * ((uint64_t)x9 * x25)) + (((uint64_t)x11 * x23) + ((uint64_t)x13 * x21))))) + (0x1b * (((uint64_t)x15 * x34) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x18 * x31))))));
- uint64_t x41 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((uint64_t)x11 * x21)))) + (0x1b * ((0x2 * ((uint64_t)x13 * x34)) + (((uint64_t)x15 * x35) + ((0x2 * ((uint64_t)x17 * x33)) + (((uint64_t)x19 * x31) + (0x2 * ((uint64_t)x18 * x29))))))));
- uint64_t x42 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + ((uint64_t)x9 * x21))) + (0x1b * (((uint64_t)x11 * x34) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + ((uint64_t)x18 * x27))))))));
- uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0x1b * ((0x2 * ((uint64_t)x9 * x34)) + (((uint64_t)x11 * x35) + ((0x2 * ((uint64_t)x13 * x33)) + (((uint64_t)x15 * x31) + ((0x2 * ((uint64_t)x17 * x29)) + (((uint64_t)x19 * x27) + (0x2 * ((uint64_t)x18 * x25))))))))));
- uint64_t x44 = (((uint64_t)x5 * x21) + (0x1b * ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23)))))))))));
- uint64_t x45 = (x44 >> 0x1a);
- uint32_t x46 = ((uint32_t)x44 & 0x3ffffff);
- uint64_t x47 = (x45 + x43);
- uint64_t x48 = (x47 >> 0x1a);
- uint32_t x49 = ((uint32_t)x47 & 0x3ffffff);
- uint64_t x50 = (x48 + x42);
- uint64_t x51 = (x50 >> 0x19);
- uint32_t x52 = ((uint32_t)x50 & 0x1ffffff);
- uint64_t x53 = (x51 + x41);
- uint64_t x54 = (x53 >> 0x1a);
- uint32_t x55 = ((uint32_t)x53 & 0x3ffffff);
- uint64_t x56 = (x54 + x40);
- uint64_t x57 = (x56 >> 0x19);
- uint32_t x58 = ((uint32_t)x56 & 0x1ffffff);
- uint64_t x59 = (x57 + x39);
- uint64_t x60 = (x59 >> 0x1a);
- uint32_t x61 = ((uint32_t)x59 & 0x3ffffff);
- uint64_t x62 = (x60 + x38);
- uint64_t x63 = (x62 >> 0x19);
- uint32_t x64 = ((uint32_t)x62 & 0x1ffffff);
- uint64_t x65 = (x63 + x37);
- uint64_t x66 = (x65 >> 0x1a);
- uint32_t x67 = ((uint32_t)x65 & 0x3ffffff);
- uint64_t x68 = (x66 + x36);
- uint64_t x69 = (x68 >> 0x19);
- uint32_t x70 = ((uint32_t)x68 & 0x1ffffff);
- uint64_t x71 = (x46 + (0x1b * x69));
- uint32_t x72 = (uint32_t) (x71 >> 0x1a);
- uint32_t x73 = ((uint32_t)x71 & 0x3ffffff);
- uint32_t x74 = (x72 + x49);
- uint32_t x75 = (x74 >> 0x1a);
- uint32_t x76 = (x74 & 0x3ffffff);
- return (Return x70, Return x67, Return x64, Return x61, Return x58, Return x55, (x75 + x52), Return x76, Return x73))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e230m27_9limbs/femulDisplay.v b/src/Specific/solinas32_2e230m27_9limbs/femulDisplay.v
deleted file mode 100644
index 0dd0b6119..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e230m27_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e230m27_9limbs/fesquare.c b/src/Specific/solinas32_2e230m27_9limbs/fesquare.c
deleted file mode 100644
index fbdfc90de..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/fesquare.c
+++ /dev/null
@@ -1,62 +0,0 @@
-static void fesquare(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x17 = (((uint64_t)x2 * x15) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x15 * x2)))))))));
- { uint64_t x18 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x1b * (0x2 * ((uint64_t)x15 * x15))));
- { uint64_t x19 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x1b * (((uint64_t)x16 * x15) + ((uint64_t)x15 * x16))));
- { uint64_t x20 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x1b * ((0x2 * ((uint64_t)x14 * x15)) + (((uint64_t)x16 * x16) + (0x2 * ((uint64_t)x15 * x14))))));
- { uint64_t x21 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x1b * (((uint64_t)x12 * x15) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x15 * x12))))));
- { uint64_t x22 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x1b * ((0x2 * ((uint64_t)x10 * x15)) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (0x2 * ((uint64_t)x15 * x10))))))));
- { uint64_t x23 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x1b * (((uint64_t)x8 * x15) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x15 * x8))))))));
- { uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1b * ((0x2 * ((uint64_t)x6 * x15)) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + (0x2 * ((uint64_t)x15 * x6))))))))));
- { uint64_t x25 = (((uint64_t)x2 * x2) + (0x1b * ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4)))))))))));
- { uint64_t x26 = (x25 >> 0x1a);
- { uint32_t x27 = ((uint32_t)x25 & 0x3ffffff);
- { uint64_t x28 = (x26 + x24);
- { uint64_t x29 = (x28 >> 0x1a);
- { uint32_t x30 = ((uint32_t)x28 & 0x3ffffff);
- { uint64_t x31 = (x29 + x23);
- { uint64_t x32 = (x31 >> 0x19);
- { uint32_t x33 = ((uint32_t)x31 & 0x1ffffff);
- { uint64_t x34 = (x32 + x22);
- { uint64_t x35 = (x34 >> 0x1a);
- { uint32_t x36 = ((uint32_t)x34 & 0x3ffffff);
- { uint64_t x37 = (x35 + x21);
- { uint64_t x38 = (x37 >> 0x19);
- { uint32_t x39 = ((uint32_t)x37 & 0x1ffffff);
- { uint64_t x40 = (x38 + x20);
- { uint64_t x41 = (x40 >> 0x1a);
- { uint32_t x42 = ((uint32_t)x40 & 0x3ffffff);
- { uint64_t x43 = (x41 + x19);
- { uint64_t x44 = (x43 >> 0x19);
- { uint32_t x45 = ((uint32_t)x43 & 0x1ffffff);
- { uint64_t x46 = (x44 + x18);
- { uint64_t x47 = (x46 >> 0x1a);
- { uint32_t x48 = ((uint32_t)x46 & 0x3ffffff);
- { uint64_t x49 = (x47 + x17);
- { uint64_t x50 = (x49 >> 0x19);
- { uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- { uint64_t x52 = (x27 + (0x1b * x50));
- { uint32_t x53 = (uint32_t) (x52 >> 0x1a);
- { uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- { uint32_t x55 = (x53 + x30);
- { uint32_t x56 = (x55 >> 0x1a);
- { uint32_t x57 = (x55 & 0x3ffffff);
- out[0] = x54;
- out[1] = x57;
- out[2] = (x56 + x33);
- out[3] = x36;
- out[4] = x39;
- out[5] = x42;
- out[6] = x45;
- out[7] = x48;
- out[8] = x51;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e230m27_9limbs/fesquare.v b/src/Specific/solinas32_2e230m27_9limbs/fesquare.v
deleted file mode 100644
index 115aa6d1d..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e230m27_9limbs.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_2e230m27_9limbs/fesquareDisplay.log b/src/Specific/solinas32_2e230m27_9limbs/fesquareDisplay.log
deleted file mode 100644
index c03ff40bc..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x17 = (((uint64_t)x2 * x15) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x15 * x2)))))))));
- uint64_t x18 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x1b * (0x2 * ((uint64_t)x15 * x15))));
- uint64_t x19 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x1b * (((uint64_t)x16 * x15) + ((uint64_t)x15 * x16))));
- uint64_t x20 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x1b * ((0x2 * ((uint64_t)x14 * x15)) + (((uint64_t)x16 * x16) + (0x2 * ((uint64_t)x15 * x14))))));
- uint64_t x21 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x1b * (((uint64_t)x12 * x15) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x15 * x12))))));
- uint64_t x22 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x1b * ((0x2 * ((uint64_t)x10 * x15)) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (0x2 * ((uint64_t)x15 * x10))))))));
- uint64_t x23 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x1b * (((uint64_t)x8 * x15) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x15 * x8))))))));
- uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1b * ((0x2 * ((uint64_t)x6 * x15)) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + (0x2 * ((uint64_t)x15 * x6))))))))));
- uint64_t x25 = (((uint64_t)x2 * x2) + (0x1b * ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4)))))))))));
- uint64_t x26 = (x25 >> 0x1a);
- uint32_t x27 = ((uint32_t)x25 & 0x3ffffff);
- uint64_t x28 = (x26 + x24);
- uint64_t x29 = (x28 >> 0x1a);
- uint32_t x30 = ((uint32_t)x28 & 0x3ffffff);
- uint64_t x31 = (x29 + x23);
- uint64_t x32 = (x31 >> 0x19);
- uint32_t x33 = ((uint32_t)x31 & 0x1ffffff);
- uint64_t x34 = (x32 + x22);
- uint64_t x35 = (x34 >> 0x1a);
- uint32_t x36 = ((uint32_t)x34 & 0x3ffffff);
- uint64_t x37 = (x35 + x21);
- uint64_t x38 = (x37 >> 0x19);
- uint32_t x39 = ((uint32_t)x37 & 0x1ffffff);
- uint64_t x40 = (x38 + x20);
- uint64_t x41 = (x40 >> 0x1a);
- uint32_t x42 = ((uint32_t)x40 & 0x3ffffff);
- uint64_t x43 = (x41 + x19);
- uint64_t x44 = (x43 >> 0x19);
- uint32_t x45 = ((uint32_t)x43 & 0x1ffffff);
- uint64_t x46 = (x44 + x18);
- uint64_t x47 = (x46 >> 0x1a);
- uint32_t x48 = ((uint32_t)x46 & 0x3ffffff);
- uint64_t x49 = (x47 + x17);
- uint64_t x50 = (x49 >> 0x19);
- uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- uint64_t x52 = (x27 + (0x1b * x50));
- uint32_t x53 = (uint32_t) (x52 >> 0x1a);
- uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- uint32_t x55 = (x53 + x30);
- uint32_t x56 = (x55 >> 0x1a);
- uint32_t x57 = (x55 & 0x3ffffff);
- return (Return x51, Return x48, Return x45, Return x42, Return x39, Return x36, (x56 + x33), Return x57, Return x54))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e230m27_9limbs/fesquareDisplay.v b/src/Specific/solinas32_2e230m27_9limbs/fesquareDisplay.v
deleted file mode 100644
index 7f8241b7d..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e230m27_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e230m27_9limbs/fesub.c b/src/Specific/solinas32_2e230m27_9limbs/fesub.c
deleted file mode 100644
index 43446f792..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/fesub.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void fesub(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = ((0x7ffffca + x5) - x21);
- out[1] = ((0x7fffffe + x7) - x23);
- out[2] = ((0x3fffffe + x9) - x25);
- out[3] = ((0x7fffffe + x11) - x27);
- out[4] = ((0x3fffffe + x13) - x29);
- out[5] = ((0x7fffffe + x15) - x31);
- out[6] = ((0x3fffffe + x17) - x33);
- out[7] = ((0x7fffffe + x19) - x35);
- out[8] = ((0x3fffffe + x18) - x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e230m27_9limbs/fesub.v b/src/Specific/solinas32_2e230m27_9limbs/fesub.v
deleted file mode 100644
index ac56bb8be..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e230m27_9limbs.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_2e230m27_9limbs/fesubDisplay.log b/src/Specific/solinas32_2e230m27_9limbs/fesubDisplay.log
deleted file mode 100644
index a41438c35..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- (((0x3fffffe + x18) - x34), ((0x7fffffe + x19) - x35), ((0x3fffffe + x17) - x33), ((0x7fffffe + x15) - x31), ((0x3fffffe + x13) - x29), ((0x7fffffe + x11) - x27), ((0x3fffffe + x9) - x25), ((0x7fffffe + x7) - x23), ((0x7ffffca + x5) - x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e230m27_9limbs/fesubDisplay.v b/src/Specific/solinas32_2e230m27_9limbs/fesubDisplay.v
deleted file mode 100644
index 5b31e9725..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e230m27_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e230m27_9limbs/freeze.c b/src/Specific/solinas32_2e230m27_9limbs/freeze.c
deleted file mode 100644
index 341d005c3..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/freeze.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void freeze(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffe5);
- { uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0x3ffffff);
- { uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0x1ffffff);
- { 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 x8, 0x3ffffff);
- { uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0x1ffffff);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0x3ffffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0x1ffffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0x3ffffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0x1ffffff);
- { uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- { uint32_t x45 = (x44 & 0x3ffffe5);
- { uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- { uint32_t x49 = (x44 & 0x3ffffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- { uint32_t x53 = (x44 & 0x1ffffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- { uint32_t x57 = (x44 & 0x3ffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- { uint32_t x61 = (x44 & 0x1ffffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- { uint32_t x65 = (x44 & 0x3ffffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- { uint32_t x69 = (x44 & 0x1ffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- { uint32_t x73 = (x44 & 0x3ffffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- { uint32_t x77 = (x44 & 0x1ffffff);
- { uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- out[0] = x47;
- out[1] = x51;
- out[2] = x55;
- out[3] = x59;
- out[4] = x63;
- out[5] = x67;
- out[6] = x71;
- out[7] = x75;
- out[8] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e230m27_9limbs/freeze.v b/src/Specific/solinas32_2e230m27_9limbs/freeze.v
deleted file mode 100644
index 3184a0b11..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e230m27_9limbs.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_2e230m27_9limbs/freezeDisplay.log b/src/Specific/solinas32_2e230m27_9limbs/freezeDisplay.log
deleted file mode 100644
index 82f0bae3f..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- 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)) (0x0, Return x2, 0x3ffffe5);
- uint32_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0x3ffffff);
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0x1ffffff);
- 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 x8, 0x3ffffff);
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0x1ffffff);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0x3ffffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0x1ffffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0x3ffffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0x1ffffff);
- uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- uint32_t x45 = (x44 & 0x3ffffe5);
- uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- uint32_t x49 = (x44 & 0x3ffffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- uint32_t x53 = (x44 & 0x1ffffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- uint32_t x57 = (x44 & 0x3ffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- uint32_t x61 = (x44 & 0x1ffffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- uint32_t x65 = (x44 & 0x3ffffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- uint32_t x69 = (x44 & 0x1ffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- uint32_t x73 = (x44 & 0x3ffffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- uint32_t x77 = (x44 & 0x1ffffff);
- uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- (Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x51, Return x47))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e230m27_9limbs/freezeDisplay.v b/src/Specific/solinas32_2e230m27_9limbs/freezeDisplay.v
deleted file mode 100644
index 0fa9ada14..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e230m27_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e230m27_9limbs/py_interpreter.sh b/src/Specific/solinas32_2e230m27_9limbs/py_interpreter.sh
deleted file mode 100755
index ed0d883b7..000000000
--- a/src/Specific/solinas32_2e230m27_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**230 - 27' -Dmodulus_bytes='25 + 5/9' -Da24='121665'
diff --git a/src/Specific/solinas32_2e235m15_10limbs/CurveParameters.v b/src/Specific/solinas32_2e235m15_10limbs/CurveParameters.v
deleted file mode 100644
index fa37e34ac..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^235 - 15
-Base: 23.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 23 + 1/2;
- bitwidth := 32;
- s := 2^235;
- c := [(1, 15)];
- carry_chains := Some [seq 0 (pred 10); [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_2e235m15_10limbs/Synthesis.v b/src/Specific/solinas32_2e235m15_10limbs/Synthesis.v
deleted file mode 100644
index 54803293b..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e235m15_10limbs.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_2e235m15_10limbs/compiler.sh b/src/Specific/solinas32_2e235m15_10limbs/compiler.sh
deleted file mode 100755
index 221a33cc8..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,23,24,23,24,23,24,23,24,23}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='30' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<235) - 15' "$@"
diff --git a/src/Specific/solinas32_2e235m15_10limbs/compilerxx.sh b/src/Specific/solinas32_2e235m15_10limbs/compilerxx.sh
deleted file mode 100755
index 668afec7d..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,23,24,23,24,23,24,23,24,23}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='30' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<235) - 15' "$@"
diff --git a/src/Specific/solinas32_2e235m15_10limbs/feadd.c b/src/Specific/solinas32_2e235m15_10limbs/feadd.c
deleted file mode 100644
index 57dd4e1af..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/feadd.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void feadd(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- out[0] = (x5 + x23);
- out[1] = (x7 + x25);
- out[2] = (x9 + x27);
- out[3] = (x11 + x29);
- out[4] = (x13 + x31);
- out[5] = (x15 + x33);
- out[6] = (x17 + x35);
- out[7] = (x19 + x37);
- out[8] = (x21 + x39);
- out[9] = (x20 + x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e235m15_10limbs/feadd.v b/src/Specific/solinas32_2e235m15_10limbs/feadd.v
deleted file mode 100644
index a7d6b74e6..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e235m15_10limbs.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_2e235m15_10limbs/feaddDisplay.log b/src/Specific/solinas32_2e235m15_10limbs/feaddDisplay.log
deleted file mode 100644
index 8a4c51148..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e235m15_10limbs/feaddDisplay.v b/src/Specific/solinas32_2e235m15_10limbs/feaddDisplay.v
deleted file mode 100644
index 22ae41c0c..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e235m15_10limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e235m15_10limbs/fecarry.v b/src/Specific/solinas32_2e235m15_10limbs/fecarry.v
deleted file mode 100644
index 0410a73c5..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e235m15_10limbs.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_2e235m15_10limbs/fecarryDisplay.v b/src/Specific/solinas32_2e235m15_10limbs/fecarryDisplay.v
deleted file mode 100644
index c96658118..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e235m15_10limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e235m15_10limbs/femul.c b/src/Specific/solinas32_2e235m15_10limbs/femul.c
deleted file mode 100644
index bc32c90fa..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/femul.c
+++ /dev/null
@@ -1,78 +0,0 @@
-static void femul(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- { uint64_t x40 = (((uint64_t)x5 * x38) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + (((uint64_t)x21 * x25) + ((uint64_t)x20 * x23))))))))));
- { uint64_t x41 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + (((uint64_t)x9 * x35) + ((0x2 * ((uint64_t)x11 * x33)) + (((uint64_t)x13 * x31) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + ((0x2 * ((uint64_t)x19 * x25)) + ((uint64_t)x21 * x23))))))))) + (0xf * (0x2 * ((uint64_t)x20 * x38))));
- { uint64_t x42 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + ((uint64_t)x19 * x23)))))))) + (0xf * (((uint64_t)x21 * x38) + ((uint64_t)x20 * x39))));
- { uint64_t x43 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + (((uint64_t)x9 * x31) + ((0x2 * ((uint64_t)x11 * x29)) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + ((uint64_t)x17 * x23))))))) + (0xf * ((0x2 * ((uint64_t)x19 * x38)) + (((uint64_t)x21 * x39) + (0x2 * ((uint64_t)x20 * x37))))));
- { uint64_t x44 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + ((uint64_t)x15 * x23)))))) + (0xf * (((uint64_t)x17 * x38) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + ((uint64_t)x20 * x35))))));
- { uint64_t x45 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + (((uint64_t)x9 * x27) + ((0x2 * ((uint64_t)x11 * x25)) + ((uint64_t)x13 * x23))))) + (0xf * ((0x2 * ((uint64_t)x15 * x38)) + (((uint64_t)x17 * x39) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + (0x2 * ((uint64_t)x20 * x33))))))));
- { uint64_t x46 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + ((uint64_t)x11 * x23)))) + (0xf * (((uint64_t)x13 * x38) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + ((uint64_t)x20 * x31))))))));
- { uint64_t x47 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((uint64_t)x9 * x23))) + (0xf * ((0x2 * ((uint64_t)x11 * x38)) + (((uint64_t)x13 * x39) + ((0x2 * ((uint64_t)x15 * x37)) + (((uint64_t)x17 * x35) + ((0x2 * ((uint64_t)x19 * x33)) + (((uint64_t)x21 * x31) + (0x2 * ((uint64_t)x20 * x29))))))))));
- { uint64_t x48 = ((((uint64_t)x5 * x25) + ((uint64_t)x7 * x23)) + (0xf * (((uint64_t)x9 * x38) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (((uint64_t)x21 * x29) + ((uint64_t)x20 * x27))))))))));
- { uint64_t x49 = (((uint64_t)x5 * x23) + (0xf * ((0x2 * ((uint64_t)x7 * x38)) + (((uint64_t)x9 * x39) + ((0x2 * ((uint64_t)x11 * x37)) + (((uint64_t)x13 * x35) + ((0x2 * ((uint64_t)x15 * x33)) + (((uint64_t)x17 * x31) + ((0x2 * ((uint64_t)x19 * x29)) + (((uint64_t)x21 * x27) + (0x2 * ((uint64_t)x20 * x25))))))))))));
- { uint64_t x50 = (x49 >> 0x18);
- { uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- { uint64_t x52 = (x50 + x48);
- { uint64_t x53 = (x52 >> 0x17);
- { uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- { uint64_t x55 = (x53 + x47);
- { uint64_t x56 = (x55 >> 0x18);
- { uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- { uint64_t x58 = (x56 + x46);
- { uint64_t x59 = (x58 >> 0x17);
- { uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- { uint64_t x61 = (x59 + x45);
- { uint64_t x62 = (x61 >> 0x18);
- { uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- { uint64_t x64 = (x62 + x44);
- { uint64_t x65 = (x64 >> 0x17);
- { uint32_t x66 = ((uint32_t)x64 & 0x7fffff);
- { uint64_t x67 = (x65 + x43);
- { uint64_t x68 = (x67 >> 0x18);
- { uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- { uint64_t x70 = (x68 + x42);
- { uint64_t x71 = (x70 >> 0x17);
- { uint32_t x72 = ((uint32_t)x70 & 0x7fffff);
- { uint64_t x73 = (x71 + x41);
- { uint32_t x74 = (uint32_t) (x73 >> 0x18);
- { uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- { uint64_t x76 = (x74 + x40);
- { uint32_t x77 = (uint32_t) (x76 >> 0x17);
- { uint32_t x78 = ((uint32_t)x76 & 0x7fffff);
- { uint64_t x79 = (x51 + ((uint64_t)0xf * x77));
- { uint32_t x80 = (uint32_t) (x79 >> 0x18);
- { uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- { uint32_t x82 = (x80 + x54);
- { uint32_t x83 = (x82 >> 0x17);
- { uint32_t x84 = (x82 & 0x7fffff);
- out[0] = x81;
- out[1] = x84;
- out[2] = (x83 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e235m15_10limbs/femul.v b/src/Specific/solinas32_2e235m15_10limbs/femul.v
deleted file mode 100644
index 3b9d88dca..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e235m15_10limbs.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_2e235m15_10limbs/femulDisplay.log b/src/Specific/solinas32_2e235m15_10limbs/femulDisplay.log
deleted file mode 100644
index 2b1410eb1..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/femulDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- uint64_t x40 = (((uint64_t)x5 * x38) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + (((uint64_t)x21 * x25) + ((uint64_t)x20 * x23))))))))));
- uint64_t x41 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + (((uint64_t)x9 * x35) + ((0x2 * ((uint64_t)x11 * x33)) + (((uint64_t)x13 * x31) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + ((0x2 * ((uint64_t)x19 * x25)) + ((uint64_t)x21 * x23))))))))) + (0xf * (0x2 * ((uint64_t)x20 * x38))));
- uint64_t x42 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + ((uint64_t)x19 * x23)))))))) + (0xf * (((uint64_t)x21 * x38) + ((uint64_t)x20 * x39))));
- uint64_t x43 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + (((uint64_t)x9 * x31) + ((0x2 * ((uint64_t)x11 * x29)) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + ((uint64_t)x17 * x23))))))) + (0xf * ((0x2 * ((uint64_t)x19 * x38)) + (((uint64_t)x21 * x39) + (0x2 * ((uint64_t)x20 * x37))))));
- uint64_t x44 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + ((uint64_t)x15 * x23)))))) + (0xf * (((uint64_t)x17 * x38) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + ((uint64_t)x20 * x35))))));
- uint64_t x45 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + (((uint64_t)x9 * x27) + ((0x2 * ((uint64_t)x11 * x25)) + ((uint64_t)x13 * x23))))) + (0xf * ((0x2 * ((uint64_t)x15 * x38)) + (((uint64_t)x17 * x39) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + (0x2 * ((uint64_t)x20 * x33))))))));
- uint64_t x46 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + ((uint64_t)x11 * x23)))) + (0xf * (((uint64_t)x13 * x38) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + ((uint64_t)x20 * x31))))))));
- uint64_t x47 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((uint64_t)x9 * x23))) + (0xf * ((0x2 * ((uint64_t)x11 * x38)) + (((uint64_t)x13 * x39) + ((0x2 * ((uint64_t)x15 * x37)) + (((uint64_t)x17 * x35) + ((0x2 * ((uint64_t)x19 * x33)) + (((uint64_t)x21 * x31) + (0x2 * ((uint64_t)x20 * x29))))))))));
- uint64_t x48 = ((((uint64_t)x5 * x25) + ((uint64_t)x7 * x23)) + (0xf * (((uint64_t)x9 * x38) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (((uint64_t)x21 * x29) + ((uint64_t)x20 * x27))))))))));
- uint64_t x49 = (((uint64_t)x5 * x23) + (0xf * ((0x2 * ((uint64_t)x7 * x38)) + (((uint64_t)x9 * x39) + ((0x2 * ((uint64_t)x11 * x37)) + (((uint64_t)x13 * x35) + ((0x2 * ((uint64_t)x15 * x33)) + (((uint64_t)x17 * x31) + ((0x2 * ((uint64_t)x19 * x29)) + (((uint64_t)x21 * x27) + (0x2 * ((uint64_t)x20 * x25))))))))))));
- uint64_t x50 = (x49 >> 0x18);
- uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- uint64_t x52 = (x50 + x48);
- uint64_t x53 = (x52 >> 0x17);
- uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- uint64_t x55 = (x53 + x47);
- uint64_t x56 = (x55 >> 0x18);
- uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- uint64_t x58 = (x56 + x46);
- uint64_t x59 = (x58 >> 0x17);
- uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- uint64_t x61 = (x59 + x45);
- uint64_t x62 = (x61 >> 0x18);
- uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- uint64_t x64 = (x62 + x44);
- uint64_t x65 = (x64 >> 0x17);
- uint32_t x66 = ((uint32_t)x64 & 0x7fffff);
- uint64_t x67 = (x65 + x43);
- uint64_t x68 = (x67 >> 0x18);
- uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- uint64_t x70 = (x68 + x42);
- uint64_t x71 = (x70 >> 0x17);
- uint32_t x72 = ((uint32_t)x70 & 0x7fffff);
- uint64_t x73 = (x71 + x41);
- uint32_t x74 = (uint32_t) (x73 >> 0x18);
- uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- uint64_t x76 = (x74 + x40);
- uint32_t x77 = (uint32_t) (x76 >> 0x17);
- uint32_t x78 = ((uint32_t)x76 & 0x7fffff);
- uint64_t x79 = (x51 + ((uint64_t)0xf * x77));
- uint32_t x80 = (uint32_t) (x79 >> 0x18);
- uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- uint32_t x82 = (x80 + x54);
- uint32_t x83 = (x82 >> 0x17);
- uint32_t x84 = (x82 & 0x7fffff);
- return (Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x83 + x57), Return x84, Return x81))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e235m15_10limbs/femulDisplay.v b/src/Specific/solinas32_2e235m15_10limbs/femulDisplay.v
deleted file mode 100644
index 514e76db4..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e235m15_10limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e235m15_10limbs/fesquare.c b/src/Specific/solinas32_2e235m15_10limbs/fesquare.c
deleted file mode 100644
index efe9f697f..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/fesquare.c
+++ /dev/null
@@ -1,68 +0,0 @@
-static void fesquare(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x19 = (((uint64_t)x2 * x17) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x17 * x2))))))))));
- { uint64_t x20 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0xf * (0x2 * ((uint64_t)x17 * x17))));
- { uint64_t x21 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0xf * (((uint64_t)x18 * x17) + ((uint64_t)x17 * x18))));
- { uint64_t x22 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0xf * ((0x2 * ((uint64_t)x16 * x17)) + (((uint64_t)x18 * x18) + (0x2 * ((uint64_t)x17 * x16))))));
- { uint64_t x23 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0xf * (((uint64_t)x14 * x17) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((uint64_t)x17 * x14))))));
- { uint64_t x24 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0xf * ((0x2 * ((uint64_t)x12 * x17)) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (0x2 * ((uint64_t)x17 * x12))))))));
- { uint64_t x25 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0xf * (((uint64_t)x10 * x17) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + ((uint64_t)x17 * x10))))))));
- { uint64_t x26 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0xf * ((0x2 * ((uint64_t)x8 * x17)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + (0x2 * ((uint64_t)x17 * x8))))))))));
- { uint64_t x27 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xf * (((uint64_t)x6 * x17) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((uint64_t)x17 * x6))))))))));
- { uint64_t x28 = (((uint64_t)x2 * x2) + (0xf * ((0x2 * ((uint64_t)x4 * x17)) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + (0x2 * ((uint64_t)x17 * x4))))))))))));
- { uint64_t x29 = (x28 >> 0x18);
- { uint32_t x30 = ((uint32_t)x28 & 0xffffff);
- { uint64_t x31 = (x29 + x27);
- { uint64_t x32 = (x31 >> 0x17);
- { uint32_t x33 = ((uint32_t)x31 & 0x7fffff);
- { uint64_t x34 = (x32 + x26);
- { uint64_t x35 = (x34 >> 0x18);
- { uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- { uint64_t x37 = (x35 + x25);
- { uint64_t x38 = (x37 >> 0x17);
- { uint32_t x39 = ((uint32_t)x37 & 0x7fffff);
- { uint64_t x40 = (x38 + x24);
- { uint64_t x41 = (x40 >> 0x18);
- { uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- { uint64_t x43 = (x41 + x23);
- { uint64_t x44 = (x43 >> 0x17);
- { uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- { uint64_t x46 = (x44 + x22);
- { uint64_t x47 = (x46 >> 0x18);
- { uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- { uint64_t x49 = (x47 + x21);
- { uint64_t x50 = (x49 >> 0x17);
- { uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- { uint64_t x52 = (x50 + x20);
- { uint32_t x53 = (uint32_t) (x52 >> 0x18);
- { uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- { uint64_t x55 = (x53 + x19);
- { uint32_t x56 = (uint32_t) (x55 >> 0x17);
- { uint32_t x57 = ((uint32_t)x55 & 0x7fffff);
- { uint64_t x58 = (x30 + ((uint64_t)0xf * x56));
- { uint32_t x59 = (uint32_t) (x58 >> 0x18);
- { uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- { uint32_t x61 = (x59 + x33);
- { uint32_t x62 = (x61 >> 0x17);
- { uint32_t x63 = (x61 & 0x7fffff);
- out[0] = x60;
- out[1] = x63;
- out[2] = (x62 + x36);
- out[3] = x39;
- out[4] = x42;
- out[5] = x45;
- out[6] = x48;
- out[7] = x51;
- out[8] = x54;
- out[9] = x57;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e235m15_10limbs/fesquare.v b/src/Specific/solinas32_2e235m15_10limbs/fesquare.v
deleted file mode 100644
index d1694f21a..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e235m15_10limbs.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_2e235m15_10limbs/fesquareDisplay.log b/src/Specific/solinas32_2e235m15_10limbs/fesquareDisplay.log
deleted file mode 100644
index 34be938a1..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x19 = (((uint64_t)x2 * x17) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x17 * x2))))))))));
- uint64_t x20 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0xf * (0x2 * ((uint64_t)x17 * x17))));
- uint64_t x21 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0xf * (((uint64_t)x18 * x17) + ((uint64_t)x17 * x18))));
- uint64_t x22 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0xf * ((0x2 * ((uint64_t)x16 * x17)) + (((uint64_t)x18 * x18) + (0x2 * ((uint64_t)x17 * x16))))));
- uint64_t x23 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0xf * (((uint64_t)x14 * x17) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((uint64_t)x17 * x14))))));
- uint64_t x24 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0xf * ((0x2 * ((uint64_t)x12 * x17)) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (0x2 * ((uint64_t)x17 * x12))))))));
- uint64_t x25 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0xf * (((uint64_t)x10 * x17) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + ((uint64_t)x17 * x10))))))));
- uint64_t x26 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0xf * ((0x2 * ((uint64_t)x8 * x17)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + (0x2 * ((uint64_t)x17 * x8))))))))));
- uint64_t x27 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xf * (((uint64_t)x6 * x17) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((uint64_t)x17 * x6))))))))));
- uint64_t x28 = (((uint64_t)x2 * x2) + (0xf * ((0x2 * ((uint64_t)x4 * x17)) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + (0x2 * ((uint64_t)x17 * x4))))))))))));
- uint64_t x29 = (x28 >> 0x18);
- uint32_t x30 = ((uint32_t)x28 & 0xffffff);
- uint64_t x31 = (x29 + x27);
- uint64_t x32 = (x31 >> 0x17);
- uint32_t x33 = ((uint32_t)x31 & 0x7fffff);
- uint64_t x34 = (x32 + x26);
- uint64_t x35 = (x34 >> 0x18);
- uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- uint64_t x37 = (x35 + x25);
- uint64_t x38 = (x37 >> 0x17);
- uint32_t x39 = ((uint32_t)x37 & 0x7fffff);
- uint64_t x40 = (x38 + x24);
- uint64_t x41 = (x40 >> 0x18);
- uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- uint64_t x43 = (x41 + x23);
- uint64_t x44 = (x43 >> 0x17);
- uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- uint64_t x46 = (x44 + x22);
- uint64_t x47 = (x46 >> 0x18);
- uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- uint64_t x49 = (x47 + x21);
- uint64_t x50 = (x49 >> 0x17);
- uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- uint64_t x52 = (x50 + x20);
- uint32_t x53 = (uint32_t) (x52 >> 0x18);
- uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- uint64_t x55 = (x53 + x19);
- uint32_t x56 = (uint32_t) (x55 >> 0x17);
- uint32_t x57 = ((uint32_t)x55 & 0x7fffff);
- uint64_t x58 = (x30 + ((uint64_t)0xf * x56));
- uint32_t x59 = (uint32_t) (x58 >> 0x18);
- uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- uint32_t x61 = (x59 + x33);
- uint32_t x62 = (x61 >> 0x17);
- uint32_t x63 = (x61 & 0x7fffff);
- return (Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, Return x39, (x62 + x36), Return x63, Return x60))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e235m15_10limbs/fesquareDisplay.v b/src/Specific/solinas32_2e235m15_10limbs/fesquareDisplay.v
deleted file mode 100644
index b657de578..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e235m15_10limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e235m15_10limbs/fesub.c b/src/Specific/solinas32_2e235m15_10limbs/fesub.c
deleted file mode 100644
index 1a30c9540..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/fesub.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fesub(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- out[0] = ((0x1ffffe2 + x5) - x23);
- out[1] = ((0xfffffe + x7) - x25);
- out[2] = ((0x1fffffe + x9) - x27);
- out[3] = ((0xfffffe + x11) - x29);
- out[4] = ((0x1fffffe + x13) - x31);
- out[5] = ((0xfffffe + x15) - x33);
- out[6] = ((0x1fffffe + x17) - x35);
- out[7] = ((0xfffffe + x19) - x37);
- out[8] = ((0x1fffffe + x21) - x39);
- out[9] = ((0xfffffe + x20) - x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e235m15_10limbs/fesub.v b/src/Specific/solinas32_2e235m15_10limbs/fesub.v
deleted file mode 100644
index 68c3c7a70..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e235m15_10limbs.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_2e235m15_10limbs/fesubDisplay.log b/src/Specific/solinas32_2e235m15_10limbs/fesubDisplay.log
deleted file mode 100644
index cfb564d95..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- (((0xfffffe + x20) - x38), ((0x1fffffe + x21) - x39), ((0xfffffe + x19) - x37), ((0x1fffffe + x17) - x35), ((0xfffffe + x15) - x33), ((0x1fffffe + x13) - x31), ((0xfffffe + x11) - x29), ((0x1fffffe + x9) - x27), ((0xfffffe + x7) - x25), ((0x1ffffe2 + x5) - x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e235m15_10limbs/fesubDisplay.v b/src/Specific/solinas32_2e235m15_10limbs/fesubDisplay.v
deleted file mode 100644
index 3ed30f49d..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e235m15_10limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e235m15_10limbs/freeze.c b/src/Specific/solinas32_2e235m15_10limbs/freeze.c
deleted file mode 100644
index ebac57b65..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/freeze.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void freeze(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xfffff1);
- { uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x4, 0x7fffff);
- { uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x6, 0xffffff);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x8, 0x7fffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x10, 0xffffff);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x12, 0x7fffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x14, 0xffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x16, 0x7fffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x18, 0xffffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x17, 0x7fffff);
- { uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- { uint32_t x50 = (x49 & 0xfffff1);
- { uint32_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- { uint32_t x54 = (x49 & 0x7fffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- { uint32_t x58 = (x49 & 0xffffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- { uint32_t x62 = (x49 & 0x7fffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- { uint32_t x66 = (x49 & 0xffffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- { uint32_t x70 = (x49 & 0x7fffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- { uint32_t x74 = (x49 & 0xffffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- { uint32_t x78 = (x49 & 0x7fffff);
- { uint32_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- { uint32_t x82 = (x49 & 0xffffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- { uint32_t x86 = (x49 & 0x7fffff);
- { uint32_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- out[0] = x52;
- out[1] = x56;
- out[2] = x60;
- out[3] = x64;
- out[4] = x68;
- out[5] = x72;
- out[6] = x76;
- out[7] = x80;
- out[8] = x84;
- out[9] = x88;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e235m15_10limbs/freeze.v b/src/Specific/solinas32_2e235m15_10limbs/freeze.v
deleted file mode 100644
index 22f3303a3..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e235m15_10limbs.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_2e235m15_10limbs/freezeDisplay.log b/src/Specific/solinas32_2e235m15_10limbs/freezeDisplay.log
deleted file mode 100644
index 6b9a2b829..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xfffff1);
- uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x4, 0x7fffff);
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x6, 0xffffff);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x8, 0x7fffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x10, 0xffffff);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x12, 0x7fffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x14, 0xffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x16, 0x7fffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x18, 0xffffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x17, 0x7fffff);
- uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- uint32_t x50 = (x49 & 0xfffff1);
- uint32_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- uint32_t x54 = (x49 & 0x7fffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- uint32_t x58 = (x49 & 0xffffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- uint32_t x62 = (x49 & 0x7fffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- uint32_t x66 = (x49 & 0xffffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- uint32_t x70 = (x49 & 0x7fffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- uint32_t x74 = (x49 & 0xffffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- uint32_t x78 = (x49 & 0x7fffff);
- uint32_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- uint32_t x82 = (x49 & 0xffffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- uint32_t x86 = (x49 & 0x7fffff);
- uint32_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- (Return x88, Return x84, Return x80, Return x76, Return x72, Return x68, Return x64, Return x60, Return x56, Return x52))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e235m15_10limbs/freezeDisplay.v b/src/Specific/solinas32_2e235m15_10limbs/freezeDisplay.v
deleted file mode 100644
index 62d210782..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e235m15_10limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e235m15_10limbs/py_interpreter.sh b/src/Specific/solinas32_2e235m15_10limbs/py_interpreter.sh
deleted file mode 100755
index 59e02ee7c..000000000
--- a/src/Specific/solinas32_2e235m15_10limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**235 - 15' -Dmodulus_bytes='23.5' -Da24='121665'
diff --git a/src/Specific/solinas32_2e235m15_9limbs/CurveParameters.v b/src/Specific/solinas32_2e235m15_9limbs/CurveParameters.v
deleted file mode 100644
index 2c254584e..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^235 - 15
-Base: 26 + 1/9
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 26 + 1/9;
- bitwidth := 32;
- s := 2^235;
- c := [(1, 15)];
- carry_chains := Some [seq 0 (pred 9); [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_2e235m15_9limbs/Synthesis.v b/src/Specific/solinas32_2e235m15_9limbs/Synthesis.v
deleted file mode 100644
index f8a31ae08..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e235m15_9limbs.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_2e235m15_9limbs/compiler.sh b/src/Specific/solinas32_2e235m15_9limbs/compiler.sh
deleted file mode 100755
index a347c5520..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='30' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<235) - 15' "$@"
diff --git a/src/Specific/solinas32_2e235m15_9limbs/compilerxx.sh b/src/Specific/solinas32_2e235m15_9limbs/compilerxx.sh
deleted file mode 100755
index 7534f2b5e..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='30' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<235) - 15' "$@"
diff --git a/src/Specific/solinas32_2e235m15_9limbs/feadd.c b/src/Specific/solinas32_2e235m15_9limbs/feadd.c
deleted file mode 100644
index e1188fdec..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e235m15_9limbs/feadd.v b/src/Specific/solinas32_2e235m15_9limbs/feadd.v
deleted file mode 100644
index 746f3cd1b..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e235m15_9limbs.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_2e235m15_9limbs/feaddDisplay.log b/src/Specific/solinas32_2e235m15_9limbs/feaddDisplay.log
deleted file mode 100644
index e26bb40f8..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e235m15_9limbs/feaddDisplay.v b/src/Specific/solinas32_2e235m15_9limbs/feaddDisplay.v
deleted file mode 100644
index e49cc0084..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e235m15_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e235m15_9limbs/fecarry.v b/src/Specific/solinas32_2e235m15_9limbs/fecarry.v
deleted file mode 100644
index 62f199d28..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e235m15_9limbs.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_2e235m15_9limbs/fecarryDisplay.v b/src/Specific/solinas32_2e235m15_9limbs/fecarryDisplay.v
deleted file mode 100644
index f6679c9be..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e235m15_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e235m15_9limbs/femul.c b/src/Specific/solinas32_2e235m15_9limbs/femul.c
deleted file mode 100644
index ba306b31b..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/femul.c
+++ /dev/null
@@ -1,71 +0,0 @@
-static void femul(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- { uint64_t x36 = (((uint64_t)x5 * x34) + ((0x2 * ((uint64_t)x7 * x35)) + ((0x2 * ((uint64_t)x9 * x33)) + ((0x2 * ((uint64_t)x11 * x31)) + ((0x2 * ((uint64_t)x13 * x29)) + ((0x2 * ((uint64_t)x15 * x27)) + ((0x2 * ((uint64_t)x17 * x25)) + ((0x2 * ((uint64_t)x19 * x23)) + ((uint64_t)x18 * x21)))))))));
- { uint64_t x37 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + ((uint64_t)x19 * x21)))))))) + (0xf * ((uint64_t)x18 * x34)));
- { uint64_t x38 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((0x2 * ((uint64_t)x11 * x27)) + ((0x2 * ((uint64_t)x13 * x25)) + ((0x2 * ((uint64_t)x15 * x23)) + ((uint64_t)x17 * x21))))))) + (0xf * (((uint64_t)x19 * x34) + ((uint64_t)x18 * x35))));
- { uint64_t x39 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((uint64_t)x15 * x21)))))) + (0xf * (((uint64_t)x17 * x34) + (((uint64_t)x19 * x35) + ((uint64_t)x18 * x33)))));
- { uint64_t x40 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((0x2 * ((uint64_t)x11 * x23)) + ((uint64_t)x13 * x21))))) + (0xf * (((uint64_t)x15 * x34) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x18 * x31))))));
- { uint64_t x41 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((uint64_t)x11 * x21)))) + (0xf * (((uint64_t)x13 * x34) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + ((uint64_t)x18 * x29)))))));
- { uint64_t x42 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((uint64_t)x9 * x21))) + (0xf * (((uint64_t)x11 * x34) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + ((uint64_t)x18 * x27))))))));
- { uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0xf * (((uint64_t)x9 * x34) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + ((uint64_t)x18 * x25)))))))));
- { uint64_t x44 = (((uint64_t)x5 * x21) + (0xf * ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23)))))))))));
- { uint64_t x45 = (x44 >> 0x1b);
- { uint32_t x46 = ((uint32_t)x44 & 0x7ffffff);
- { uint64_t x47 = (x45 + x43);
- { uint64_t x48 = (x47 >> 0x1a);
- { uint32_t x49 = ((uint32_t)x47 & 0x3ffffff);
- { uint64_t x50 = (x48 + x42);
- { uint64_t x51 = (x50 >> 0x1a);
- { uint32_t x52 = ((uint32_t)x50 & 0x3ffffff);
- { uint64_t x53 = (x51 + x41);
- { uint64_t x54 = (x53 >> 0x1a);
- { uint32_t x55 = ((uint32_t)x53 & 0x3ffffff);
- { uint64_t x56 = (x54 + x40);
- { uint64_t x57 = (x56 >> 0x1a);
- { uint32_t x58 = ((uint32_t)x56 & 0x3ffffff);
- { uint64_t x59 = (x57 + x39);
- { uint64_t x60 = (x59 >> 0x1a);
- { uint32_t x61 = ((uint32_t)x59 & 0x3ffffff);
- { uint64_t x62 = (x60 + x38);
- { uint64_t x63 = (x62 >> 0x1a);
- { uint32_t x64 = ((uint32_t)x62 & 0x3ffffff);
- { uint64_t x65 = (x63 + x37);
- { uint64_t x66 = (x65 >> 0x1a);
- { uint32_t x67 = ((uint32_t)x65 & 0x3ffffff);
- { uint64_t x68 = (x66 + x36);
- { uint64_t x69 = (x68 >> 0x1a);
- { uint32_t x70 = ((uint32_t)x68 & 0x3ffffff);
- { uint64_t x71 = (x46 + (0xf * x69));
- { uint32_t x72 = (uint32_t) (x71 >> 0x1b);
- { uint32_t x73 = ((uint32_t)x71 & 0x7ffffff);
- { uint32_t x74 = (x72 + x49);
- { uint32_t x75 = (x74 >> 0x1a);
- { uint32_t x76 = (x74 & 0x3ffffff);
- out[0] = x73;
- out[1] = x76;
- out[2] = (x75 + x52);
- out[3] = x55;
- out[4] = x58;
- out[5] = x61;
- out[6] = x64;
- out[7] = x67;
- out[8] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e235m15_9limbs/femul.v b/src/Specific/solinas32_2e235m15_9limbs/femul.v
deleted file mode 100644
index f4b0277a2..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e235m15_9limbs.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_2e235m15_9limbs/femulDisplay.log b/src/Specific/solinas32_2e235m15_9limbs/femulDisplay.log
deleted file mode 100644
index 7005fad2e..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/femulDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint64_t x36 = (((uint64_t)x5 * x34) + ((0x2 * ((uint64_t)x7 * x35)) + ((0x2 * ((uint64_t)x9 * x33)) + ((0x2 * ((uint64_t)x11 * x31)) + ((0x2 * ((uint64_t)x13 * x29)) + ((0x2 * ((uint64_t)x15 * x27)) + ((0x2 * ((uint64_t)x17 * x25)) + ((0x2 * ((uint64_t)x19 * x23)) + ((uint64_t)x18 * x21)))))))));
- uint64_t x37 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((0x2 * ((uint64_t)x17 * x23)) + ((uint64_t)x19 * x21)))))))) + (0xf * ((uint64_t)x18 * x34)));
- uint64_t x38 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((0x2 * ((uint64_t)x11 * x27)) + ((0x2 * ((uint64_t)x13 * x25)) + ((0x2 * ((uint64_t)x15 * x23)) + ((uint64_t)x17 * x21))))))) + (0xf * (((uint64_t)x19 * x34) + ((uint64_t)x18 * x35))));
- uint64_t x39 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((0x2 * ((uint64_t)x13 * x23)) + ((uint64_t)x15 * x21)))))) + (0xf * (((uint64_t)x17 * x34) + (((uint64_t)x19 * x35) + ((uint64_t)x18 * x33)))));
- uint64_t x40 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((0x2 * ((uint64_t)x11 * x23)) + ((uint64_t)x13 * x21))))) + (0xf * (((uint64_t)x15 * x34) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x18 * x31))))));
- uint64_t x41 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((0x2 * ((uint64_t)x9 * x23)) + ((uint64_t)x11 * x21)))) + (0xf * (((uint64_t)x13 * x34) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + ((uint64_t)x18 * x29)))))));
- uint64_t x42 = ((((uint64_t)x5 * x25) + ((0x2 * ((uint64_t)x7 * x23)) + ((uint64_t)x9 * x21))) + (0xf * (((uint64_t)x11 * x34) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + ((uint64_t)x18 * x27))))))));
- uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0xf * (((uint64_t)x9 * x34) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + ((uint64_t)x18 * x25)))))))));
- uint64_t x44 = (((uint64_t)x5 * x21) + (0xf * ((0x2 * ((uint64_t)x7 * x34)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + (0x2 * ((uint64_t)x18 * x23)))))))))));
- uint64_t x45 = (x44 >> 0x1b);
- uint32_t x46 = ((uint32_t)x44 & 0x7ffffff);
- uint64_t x47 = (x45 + x43);
- uint64_t x48 = (x47 >> 0x1a);
- uint32_t x49 = ((uint32_t)x47 & 0x3ffffff);
- uint64_t x50 = (x48 + x42);
- uint64_t x51 = (x50 >> 0x1a);
- uint32_t x52 = ((uint32_t)x50 & 0x3ffffff);
- uint64_t x53 = (x51 + x41);
- uint64_t x54 = (x53 >> 0x1a);
- uint32_t x55 = ((uint32_t)x53 & 0x3ffffff);
- uint64_t x56 = (x54 + x40);
- uint64_t x57 = (x56 >> 0x1a);
- uint32_t x58 = ((uint32_t)x56 & 0x3ffffff);
- uint64_t x59 = (x57 + x39);
- uint64_t x60 = (x59 >> 0x1a);
- uint32_t x61 = ((uint32_t)x59 & 0x3ffffff);
- uint64_t x62 = (x60 + x38);
- uint64_t x63 = (x62 >> 0x1a);
- uint32_t x64 = ((uint32_t)x62 & 0x3ffffff);
- uint64_t x65 = (x63 + x37);
- uint64_t x66 = (x65 >> 0x1a);
- uint32_t x67 = ((uint32_t)x65 & 0x3ffffff);
- uint64_t x68 = (x66 + x36);
- uint64_t x69 = (x68 >> 0x1a);
- uint32_t x70 = ((uint32_t)x68 & 0x3ffffff);
- uint64_t x71 = (x46 + (0xf * x69));
- uint32_t x72 = (uint32_t) (x71 >> 0x1b);
- uint32_t x73 = ((uint32_t)x71 & 0x7ffffff);
- uint32_t x74 = (x72 + x49);
- uint32_t x75 = (x74 >> 0x1a);
- uint32_t x76 = (x74 & 0x3ffffff);
- return (Return x70, Return x67, Return x64, Return x61, Return x58, Return x55, (x75 + x52), Return x76, Return x73))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e235m15_9limbs/femulDisplay.v b/src/Specific/solinas32_2e235m15_9limbs/femulDisplay.v
deleted file mode 100644
index 3baecfcf1..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e235m15_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e235m15_9limbs/fesquare.c b/src/Specific/solinas32_2e235m15_9limbs/fesquare.c
deleted file mode 100644
index 950713e6b..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/fesquare.c
+++ /dev/null
@@ -1,62 +0,0 @@
-static void fesquare(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x17 = (((uint64_t)x2 * x15) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x15 * x2)))))))));
- { uint64_t x18 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0xf * ((uint64_t)x15 * x15)));
- { uint64_t x19 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0xf * (((uint64_t)x16 * x15) + ((uint64_t)x15 * x16))));
- { uint64_t x20 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0xf * (((uint64_t)x14 * x15) + (((uint64_t)x16 * x16) + ((uint64_t)x15 * x14)))));
- { uint64_t x21 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0xf * (((uint64_t)x12 * x15) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x15 * x12))))));
- { uint64_t x22 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0xf * (((uint64_t)x10 * x15) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + ((uint64_t)x15 * x10)))))));
- { uint64_t x23 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0xf * (((uint64_t)x8 * x15) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x15 * x8))))))));
- { uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xf * (((uint64_t)x6 * x15) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((uint64_t)x15 * x6)))))))));
- { uint64_t x25 = (((uint64_t)x2 * x2) + (0xf * ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4)))))))))));
- { uint64_t x26 = (x25 >> 0x1b);
- { uint32_t x27 = ((uint32_t)x25 & 0x7ffffff);
- { uint64_t x28 = (x26 + x24);
- { uint64_t x29 = (x28 >> 0x1a);
- { uint32_t x30 = ((uint32_t)x28 & 0x3ffffff);
- { uint64_t x31 = (x29 + x23);
- { uint64_t x32 = (x31 >> 0x1a);
- { uint32_t x33 = ((uint32_t)x31 & 0x3ffffff);
- { uint64_t x34 = (x32 + x22);
- { uint64_t x35 = (x34 >> 0x1a);
- { uint32_t x36 = ((uint32_t)x34 & 0x3ffffff);
- { uint64_t x37 = (x35 + x21);
- { uint64_t x38 = (x37 >> 0x1a);
- { uint32_t x39 = ((uint32_t)x37 & 0x3ffffff);
- { uint64_t x40 = (x38 + x20);
- { uint64_t x41 = (x40 >> 0x1a);
- { uint32_t x42 = ((uint32_t)x40 & 0x3ffffff);
- { uint64_t x43 = (x41 + x19);
- { uint64_t x44 = (x43 >> 0x1a);
- { uint32_t x45 = ((uint32_t)x43 & 0x3ffffff);
- { uint64_t x46 = (x44 + x18);
- { uint64_t x47 = (x46 >> 0x1a);
- { uint32_t x48 = ((uint32_t)x46 & 0x3ffffff);
- { uint64_t x49 = (x47 + x17);
- { uint64_t x50 = (x49 >> 0x1a);
- { uint32_t x51 = ((uint32_t)x49 & 0x3ffffff);
- { uint64_t x52 = (x27 + (0xf * x50));
- { uint32_t x53 = (uint32_t) (x52 >> 0x1b);
- { uint32_t x54 = ((uint32_t)x52 & 0x7ffffff);
- { uint32_t x55 = (x53 + x30);
- { uint32_t x56 = (x55 >> 0x1a);
- { uint32_t x57 = (x55 & 0x3ffffff);
- out[0] = x54;
- out[1] = x57;
- out[2] = (x56 + x33);
- out[3] = x36;
- out[4] = x39;
- out[5] = x42;
- out[6] = x45;
- out[7] = x48;
- out[8] = x51;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e235m15_9limbs/fesquare.v b/src/Specific/solinas32_2e235m15_9limbs/fesquare.v
deleted file mode 100644
index 8fd615a08..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e235m15_9limbs.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_2e235m15_9limbs/fesquareDisplay.log b/src/Specific/solinas32_2e235m15_9limbs/fesquareDisplay.log
deleted file mode 100644
index 0291ede5c..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x17 = (((uint64_t)x2 * x15) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x15 * x2)))))))));
- uint64_t x18 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0xf * ((uint64_t)x15 * x15)));
- uint64_t x19 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0xf * (((uint64_t)x16 * x15) + ((uint64_t)x15 * x16))));
- uint64_t x20 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0xf * (((uint64_t)x14 * x15) + (((uint64_t)x16 * x16) + ((uint64_t)x15 * x14)))));
- uint64_t x21 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0xf * (((uint64_t)x12 * x15) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x15 * x12))))));
- uint64_t x22 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0xf * (((uint64_t)x10 * x15) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + ((uint64_t)x15 * x10)))))));
- uint64_t x23 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0xf * (((uint64_t)x8 * x15) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x15 * x8))))))));
- uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xf * (((uint64_t)x6 * x15) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((uint64_t)x15 * x6)))))))));
- uint64_t x25 = (((uint64_t)x2 * x2) + (0xf * ((0x2 * ((uint64_t)x4 * x15)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x15 * x4)))))))))));
- uint64_t x26 = (x25 >> 0x1b);
- uint32_t x27 = ((uint32_t)x25 & 0x7ffffff);
- uint64_t x28 = (x26 + x24);
- uint64_t x29 = (x28 >> 0x1a);
- uint32_t x30 = ((uint32_t)x28 & 0x3ffffff);
- uint64_t x31 = (x29 + x23);
- uint64_t x32 = (x31 >> 0x1a);
- uint32_t x33 = ((uint32_t)x31 & 0x3ffffff);
- uint64_t x34 = (x32 + x22);
- uint64_t x35 = (x34 >> 0x1a);
- uint32_t x36 = ((uint32_t)x34 & 0x3ffffff);
- uint64_t x37 = (x35 + x21);
- uint64_t x38 = (x37 >> 0x1a);
- uint32_t x39 = ((uint32_t)x37 & 0x3ffffff);
- uint64_t x40 = (x38 + x20);
- uint64_t x41 = (x40 >> 0x1a);
- uint32_t x42 = ((uint32_t)x40 & 0x3ffffff);
- uint64_t x43 = (x41 + x19);
- uint64_t x44 = (x43 >> 0x1a);
- uint32_t x45 = ((uint32_t)x43 & 0x3ffffff);
- uint64_t x46 = (x44 + x18);
- uint64_t x47 = (x46 >> 0x1a);
- uint32_t x48 = ((uint32_t)x46 & 0x3ffffff);
- uint64_t x49 = (x47 + x17);
- uint64_t x50 = (x49 >> 0x1a);
- uint32_t x51 = ((uint32_t)x49 & 0x3ffffff);
- uint64_t x52 = (x27 + (0xf * x50));
- uint32_t x53 = (uint32_t) (x52 >> 0x1b);
- uint32_t x54 = ((uint32_t)x52 & 0x7ffffff);
- uint32_t x55 = (x53 + x30);
- uint32_t x56 = (x55 >> 0x1a);
- uint32_t x57 = (x55 & 0x3ffffff);
- return (Return x51, Return x48, Return x45, Return x42, Return x39, Return x36, (x56 + x33), Return x57, Return x54))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e235m15_9limbs/fesquareDisplay.v b/src/Specific/solinas32_2e235m15_9limbs/fesquareDisplay.v
deleted file mode 100644
index c7b7e6d64..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e235m15_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e235m15_9limbs/fesub.c b/src/Specific/solinas32_2e235m15_9limbs/fesub.c
deleted file mode 100644
index 7fd2d1be8..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/fesub.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void fesub(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = ((0xfffffe2 + x5) - x21);
- out[1] = ((0x7fffffe + x7) - x23);
- out[2] = ((0x7fffffe + x9) - x25);
- out[3] = ((0x7fffffe + x11) - x27);
- out[4] = ((0x7fffffe + x13) - x29);
- out[5] = ((0x7fffffe + x15) - x31);
- out[6] = ((0x7fffffe + x17) - x33);
- out[7] = ((0x7fffffe + x19) - x35);
- out[8] = ((0x7fffffe + x18) - x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e235m15_9limbs/fesub.v b/src/Specific/solinas32_2e235m15_9limbs/fesub.v
deleted file mode 100644
index a694ac65a..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e235m15_9limbs.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_2e235m15_9limbs/fesubDisplay.log b/src/Specific/solinas32_2e235m15_9limbs/fesubDisplay.log
deleted file mode 100644
index 583cd065b..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- (((0x7fffffe + x18) - x34), ((0x7fffffe + x19) - x35), ((0x7fffffe + x17) - x33), ((0x7fffffe + x15) - x31), ((0x7fffffe + x13) - x29), ((0x7fffffe + x11) - x27), ((0x7fffffe + x9) - x25), ((0x7fffffe + x7) - x23), ((0xfffffe2 + x5) - x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e235m15_9limbs/fesubDisplay.v b/src/Specific/solinas32_2e235m15_9limbs/fesubDisplay.v
deleted file mode 100644
index 3bf9bd896..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e235m15_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e235m15_9limbs/freeze.c b/src/Specific/solinas32_2e235m15_9limbs/freeze.c
deleted file mode 100644
index 12fd6ce06..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/freeze.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void freeze(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x18, uint8_t x19 = 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 x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0x3ffffff);
- { 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 x6, 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 x8, 0x3ffffff);
- { uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0x3ffffff);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0x3ffffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0x3ffffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0x3ffffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0x3ffffff);
- { uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- { uint32_t x45 = (x44 & 0x7fffff1);
- { uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- { uint32_t x49 = (x44 & 0x3ffffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- { uint32_t x53 = (x44 & 0x3ffffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- { uint32_t x57 = (x44 & 0x3ffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- { uint32_t x61 = (x44 & 0x3ffffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- { uint32_t x65 = (x44 & 0x3ffffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- { uint32_t x69 = (x44 & 0x3ffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- { uint32_t x73 = (x44 & 0x3ffffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- { uint32_t x77 = (x44 & 0x3ffffff);
- { uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- out[0] = x47;
- out[1] = x51;
- out[2] = x55;
- out[3] = x59;
- out[4] = x63;
- out[5] = x67;
- out[6] = x71;
- out[7] = x75;
- out[8] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e235m15_9limbs/freeze.v b/src/Specific/solinas32_2e235m15_9limbs/freeze.v
deleted file mode 100644
index 0b08c7e8a..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e235m15_9limbs.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_2e235m15_9limbs/freezeDisplay.log b/src/Specific/solinas32_2e235m15_9limbs/freezeDisplay.log
deleted file mode 100644
index 2b247c4a5..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x18, uint8_t x19 = 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 x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x19, Return x4, 0x3ffffff);
- 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 x6, 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 x8, 0x3ffffff);
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0x3ffffff);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0x3ffffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0x3ffffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0x3ffffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0x3ffffff);
- uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- uint32_t x45 = (x44 & 0x7fffff1);
- uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- uint32_t x49 = (x44 & 0x3ffffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- uint32_t x53 = (x44 & 0x3ffffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- uint32_t x57 = (x44 & 0x3ffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- uint32_t x61 = (x44 & 0x3ffffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- uint32_t x65 = (x44 & 0x3ffffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- uint32_t x69 = (x44 & 0x3ffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- uint32_t x73 = (x44 & 0x3ffffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- uint32_t x77 = (x44 & 0x3ffffff);
- uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- (Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x51, Return x47))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e235m15_9limbs/freezeDisplay.v b/src/Specific/solinas32_2e235m15_9limbs/freezeDisplay.v
deleted file mode 100644
index 184472b4a..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e235m15_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e235m15_9limbs/py_interpreter.sh b/src/Specific/solinas32_2e235m15_9limbs/py_interpreter.sh
deleted file mode 100755
index 0093dec06..000000000
--- a/src/Specific/solinas32_2e235m15_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**235 - 15' -Dmodulus_bytes='26 + 1/9' -Da24='121665'
diff --git a/src/Specific/solinas32_2e243m9_10limbs/CurveParameters.v b/src/Specific/solinas32_2e243m9_10limbs/CurveParameters.v
deleted file mode 100644
index 303a9b657..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^243 - 9
-Base: 24.3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 24 + 3/10;
- bitwidth := 32;
- s := 2^243;
- c := [(1, 9)];
- carry_chains := Some [seq 0 (pred 10); [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_2e243m9_10limbs/Synthesis.v b/src/Specific/solinas32_2e243m9_10limbs/Synthesis.v
deleted file mode 100644
index eb5e6fe37..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e243m9_10limbs.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_2e243m9_10limbs/compiler.sh b/src/Specific/solinas32_2e243m9_10limbs/compiler.sh
deleted file mode 100755
index b43ae1fbb..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,24,24,25,24,24,25,24,24,24}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='31' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<243) - 9' "$@"
diff --git a/src/Specific/solinas32_2e243m9_10limbs/compilerxx.sh b/src/Specific/solinas32_2e243m9_10limbs/compilerxx.sh
deleted file mode 100755
index d9402a17b..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,24,24,25,24,24,25,24,24,24}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='31' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<243) - 9' "$@"
diff --git a/src/Specific/solinas32_2e243m9_10limbs/feadd.c b/src/Specific/solinas32_2e243m9_10limbs/feadd.c
deleted file mode 100644
index 57dd4e1af..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/feadd.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void feadd(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- out[0] = (x5 + x23);
- out[1] = (x7 + x25);
- out[2] = (x9 + x27);
- out[3] = (x11 + x29);
- out[4] = (x13 + x31);
- out[5] = (x15 + x33);
- out[6] = (x17 + x35);
- out[7] = (x19 + x37);
- out[8] = (x21 + x39);
- out[9] = (x20 + x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e243m9_10limbs/feadd.v b/src/Specific/solinas32_2e243m9_10limbs/feadd.v
deleted file mode 100644
index 0ced18c14..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e243m9_10limbs.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_2e243m9_10limbs/feaddDisplay.log b/src/Specific/solinas32_2e243m9_10limbs/feaddDisplay.log
deleted file mode 100644
index 8a4c51148..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e243m9_10limbs/feaddDisplay.v b/src/Specific/solinas32_2e243m9_10limbs/feaddDisplay.v
deleted file mode 100644
index d325a3cc4..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e243m9_10limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e243m9_10limbs/fecarry.v b/src/Specific/solinas32_2e243m9_10limbs/fecarry.v
deleted file mode 100644
index 69419266a..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e243m9_10limbs.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_2e243m9_10limbs/fecarryDisplay.v b/src/Specific/solinas32_2e243m9_10limbs/fecarryDisplay.v
deleted file mode 100644
index a1ffa40f7..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e243m9_10limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e243m9_10limbs/femul.c b/src/Specific/solinas32_2e243m9_10limbs/femul.c
deleted file mode 100644
index 4e070ca73..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/femul.c
+++ /dev/null
@@ -1,78 +0,0 @@
-static void femul(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- { uint64_t x40 = (((uint64_t)x5 * x38) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + (((uint64_t)x11 * x35) + ((0x2 * ((uint64_t)x13 * x33)) + ((0x2 * ((uint64_t)x15 * x31)) + (((uint64_t)x17 * x29) + ((0x2 * ((uint64_t)x19 * x27)) + ((0x2 * ((uint64_t)x21 * x25)) + ((uint64_t)x20 * x23))))))))));
- { uint64_t x41 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + ((0x2 * ((uint64_t)x13 * x31)) + (((uint64_t)x15 * x29) + (((uint64_t)x17 * x27) + ((0x2 * ((uint64_t)x19 * x25)) + ((uint64_t)x21 * x23))))))))) + (0x9 * ((uint64_t)x20 * x38)));
- { uint64_t x42 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + ((uint64_t)x19 * x23)))))))) + (0x9 * (((uint64_t)x21 * x38) + ((uint64_t)x20 * x39))));
- { uint64_t x43 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + (((uint64_t)x11 * x29) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((uint64_t)x17 * x23))))))) + (0x9 * ((0x2 * ((uint64_t)x19 * x38)) + ((0x2 * ((uint64_t)x21 * x39)) + (0x2 * ((uint64_t)x20 * x37))))));
- { uint64_t x44 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + ((0x2 * ((uint64_t)x13 * x25)) + ((uint64_t)x15 * x23)))))) + (0x9 * (((uint64_t)x17 * x38) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + ((uint64_t)x20 * x35))))));
- { uint64_t x45 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + ((uint64_t)x13 * x23))))) + (0x9 * (((uint64_t)x15 * x38) + (((uint64_t)x17 * x39) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + ((uint64_t)x20 * x33)))))));
- { uint64_t x46 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((uint64_t)x11 * x23)))) + (0x9 * ((0x2 * ((uint64_t)x13 * x38)) + ((0x2 * ((uint64_t)x15 * x39)) + ((0x2 * ((uint64_t)x17 * x37)) + ((0x2 * ((uint64_t)x19 * x35)) + ((0x2 * ((uint64_t)x21 * x33)) + (0x2 * ((uint64_t)x20 * x31)))))))));
- { uint64_t x47 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((uint64_t)x9 * x23))) + (0x9 * (((uint64_t)x11 * x38) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + (((uint64_t)x17 * x35) + ((0x2 * ((uint64_t)x19 * x33)) + ((0x2 * ((uint64_t)x21 * x31)) + ((uint64_t)x20 * x29)))))))));
- { uint64_t x48 = ((((uint64_t)x5 * x25) + ((uint64_t)x7 * x23)) + (0x9 * (((uint64_t)x9 * x38) + (((uint64_t)x11 * x39) + ((0x2 * ((uint64_t)x13 * x37)) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + ((0x2 * ((uint64_t)x19 * x31)) + (((uint64_t)x21 * x29) + ((uint64_t)x20 * x27))))))))));
- { uint64_t x49 = (((uint64_t)x5 * x23) + (0x9 * ((0x2 * ((uint64_t)x7 * x38)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + ((0x2 * ((uint64_t)x15 * x33)) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((0x2 * ((uint64_t)x21 * x27)) + (0x2 * ((uint64_t)x20 * x25))))))))))));
- { uint64_t x50 = (x49 >> 0x19);
- { uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- { uint64_t x52 = (x50 + x48);
- { uint64_t x53 = (x52 >> 0x18);
- { uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- { uint64_t x55 = (x53 + x47);
- { uint64_t x56 = (x55 >> 0x18);
- { uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- { uint64_t x58 = (x56 + x46);
- { uint64_t x59 = (x58 >> 0x19);
- { uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- { uint64_t x61 = (x59 + x45);
- { uint64_t x62 = (x61 >> 0x18);
- { uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- { uint64_t x64 = (x62 + x44);
- { uint64_t x65 = (x64 >> 0x18);
- { uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- { uint64_t x67 = (x65 + x43);
- { uint64_t x68 = (x67 >> 0x19);
- { uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- { uint64_t x70 = (x68 + x42);
- { uint64_t x71 = (x70 >> 0x18);
- { uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- { uint64_t x73 = (x71 + x41);
- { uint64_t x74 = (x73 >> 0x18);
- { uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- { uint64_t x76 = (x74 + x40);
- { uint64_t x77 = (x76 >> 0x18);
- { uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- { uint64_t x79 = (x51 + (0x9 * x77));
- { uint32_t x80 = (uint32_t) (x79 >> 0x19);
- { uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- { uint32_t x82 = (x80 + x54);
- { uint32_t x83 = (x82 >> 0x18);
- { uint32_t x84 = (x82 & 0xffffff);
- out[0] = x81;
- out[1] = x84;
- out[2] = (x83 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e243m9_10limbs/femul.v b/src/Specific/solinas32_2e243m9_10limbs/femul.v
deleted file mode 100644
index e5816a454..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e243m9_10limbs.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_2e243m9_10limbs/femulDisplay.log b/src/Specific/solinas32_2e243m9_10limbs/femulDisplay.log
deleted file mode 100644
index a855462d1..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/femulDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- uint64_t x40 = (((uint64_t)x5 * x38) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + (((uint64_t)x11 * x35) + ((0x2 * ((uint64_t)x13 * x33)) + ((0x2 * ((uint64_t)x15 * x31)) + (((uint64_t)x17 * x29) + ((0x2 * ((uint64_t)x19 * x27)) + ((0x2 * ((uint64_t)x21 * x25)) + ((uint64_t)x20 * x23))))))))));
- uint64_t x41 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + ((0x2 * ((uint64_t)x13 * x31)) + (((uint64_t)x15 * x29) + (((uint64_t)x17 * x27) + ((0x2 * ((uint64_t)x19 * x25)) + ((uint64_t)x21 * x23))))))))) + (0x9 * ((uint64_t)x20 * x38)));
- uint64_t x42 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + ((uint64_t)x19 * x23)))))))) + (0x9 * (((uint64_t)x21 * x38) + ((uint64_t)x20 * x39))));
- uint64_t x43 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + (((uint64_t)x11 * x29) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((uint64_t)x17 * x23))))))) + (0x9 * ((0x2 * ((uint64_t)x19 * x38)) + ((0x2 * ((uint64_t)x21 * x39)) + (0x2 * ((uint64_t)x20 * x37))))));
- uint64_t x44 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + ((0x2 * ((uint64_t)x13 * x25)) + ((uint64_t)x15 * x23)))))) + (0x9 * (((uint64_t)x17 * x38) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + ((uint64_t)x20 * x35))))));
- uint64_t x45 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + ((uint64_t)x13 * x23))))) + (0x9 * (((uint64_t)x15 * x38) + (((uint64_t)x17 * x39) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + ((uint64_t)x20 * x33)))))));
- uint64_t x46 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((uint64_t)x11 * x23)))) + (0x9 * ((0x2 * ((uint64_t)x13 * x38)) + ((0x2 * ((uint64_t)x15 * x39)) + ((0x2 * ((uint64_t)x17 * x37)) + ((0x2 * ((uint64_t)x19 * x35)) + ((0x2 * ((uint64_t)x21 * x33)) + (0x2 * ((uint64_t)x20 * x31)))))))));
- uint64_t x47 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((uint64_t)x9 * x23))) + (0x9 * (((uint64_t)x11 * x38) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + (((uint64_t)x17 * x35) + ((0x2 * ((uint64_t)x19 * x33)) + ((0x2 * ((uint64_t)x21 * x31)) + ((uint64_t)x20 * x29)))))))));
- uint64_t x48 = ((((uint64_t)x5 * x25) + ((uint64_t)x7 * x23)) + (0x9 * (((uint64_t)x9 * x38) + (((uint64_t)x11 * x39) + ((0x2 * ((uint64_t)x13 * x37)) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + ((0x2 * ((uint64_t)x19 * x31)) + (((uint64_t)x21 * x29) + ((uint64_t)x20 * x27))))))))));
- uint64_t x49 = (((uint64_t)x5 * x23) + (0x9 * ((0x2 * ((uint64_t)x7 * x38)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + ((0x2 * ((uint64_t)x15 * x33)) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((0x2 * ((uint64_t)x21 * x27)) + (0x2 * ((uint64_t)x20 * x25))))))))))));
- uint64_t x50 = (x49 >> 0x19);
- uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- uint64_t x52 = (x50 + x48);
- uint64_t x53 = (x52 >> 0x18);
- uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- uint64_t x55 = (x53 + x47);
- uint64_t x56 = (x55 >> 0x18);
- uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- uint64_t x58 = (x56 + x46);
- uint64_t x59 = (x58 >> 0x19);
- uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- uint64_t x61 = (x59 + x45);
- uint64_t x62 = (x61 >> 0x18);
- uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- uint64_t x64 = (x62 + x44);
- uint64_t x65 = (x64 >> 0x18);
- uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- uint64_t x67 = (x65 + x43);
- uint64_t x68 = (x67 >> 0x19);
- uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- uint64_t x70 = (x68 + x42);
- uint64_t x71 = (x70 >> 0x18);
- uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- uint64_t x73 = (x71 + x41);
- uint64_t x74 = (x73 >> 0x18);
- uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- uint64_t x76 = (x74 + x40);
- uint64_t x77 = (x76 >> 0x18);
- uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- uint64_t x79 = (x51 + (0x9 * x77));
- uint32_t x80 = (uint32_t) (x79 >> 0x19);
- uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- uint32_t x82 = (x80 + x54);
- uint32_t x83 = (x82 >> 0x18);
- uint32_t x84 = (x82 & 0xffffff);
- return (Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x83 + x57), Return x84, Return x81))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e243m9_10limbs/femulDisplay.v b/src/Specific/solinas32_2e243m9_10limbs/femulDisplay.v
deleted file mode 100644
index 523b75476..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e243m9_10limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e243m9_10limbs/fesquare.c b/src/Specific/solinas32_2e243m9_10limbs/fesquare.c
deleted file mode 100644
index fc8390539..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/fesquare.c
+++ /dev/null
@@ -1,68 +0,0 @@
-static void fesquare(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x19 = (((uint64_t)x2 * x17) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x17 * x2))))))))));
- { uint64_t x20 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x9 * ((uint64_t)x17 * x17)));
- { uint64_t x21 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x9 * (((uint64_t)x18 * x17) + ((uint64_t)x17 * x18))));
- { uint64_t x22 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x9 * ((0x2 * ((uint64_t)x16 * x17)) + ((0x2 * ((uint64_t)x18 * x18)) + (0x2 * ((uint64_t)x17 * x16))))));
- { uint64_t x23 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x9 * (((uint64_t)x14 * x17) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((uint64_t)x17 * x14))))));
- { uint64_t x24 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x9 * (((uint64_t)x12 * x17) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + ((uint64_t)x17 * x12)))))));
- { uint64_t x25 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x9 * ((0x2 * ((uint64_t)x10 * x17)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + (0x2 * ((uint64_t)x17 * x10)))))))));
- { uint64_t x26 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x9 * (((uint64_t)x8 * x17) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + ((uint64_t)x17 * x8)))))))));
- { uint64_t x27 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x9 * (((uint64_t)x6 * x17) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + ((uint64_t)x17 * x6))))))))));
- { uint64_t x28 = (((uint64_t)x2 * x2) + (0x9 * ((0x2 * ((uint64_t)x4 * x17)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + (0x2 * ((uint64_t)x17 * x4))))))))))));
- { uint64_t x29 = (x28 >> 0x19);
- { uint32_t x30 = ((uint32_t)x28 & 0x1ffffff);
- { uint64_t x31 = (x29 + x27);
- { uint64_t x32 = (x31 >> 0x18);
- { uint32_t x33 = ((uint32_t)x31 & 0xffffff);
- { uint64_t x34 = (x32 + x26);
- { uint64_t x35 = (x34 >> 0x18);
- { uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- { uint64_t x37 = (x35 + x25);
- { uint64_t x38 = (x37 >> 0x19);
- { uint32_t x39 = ((uint32_t)x37 & 0x1ffffff);
- { uint64_t x40 = (x38 + x24);
- { uint64_t x41 = (x40 >> 0x18);
- { uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- { uint64_t x43 = (x41 + x23);
- { uint64_t x44 = (x43 >> 0x18);
- { uint32_t x45 = ((uint32_t)x43 & 0xffffff);
- { uint64_t x46 = (x44 + x22);
- { uint64_t x47 = (x46 >> 0x19);
- { uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- { uint64_t x49 = (x47 + x21);
- { uint64_t x50 = (x49 >> 0x18);
- { uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- { uint64_t x52 = (x50 + x20);
- { uint64_t x53 = (x52 >> 0x18);
- { uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- { uint64_t x55 = (x53 + x19);
- { uint64_t x56 = (x55 >> 0x18);
- { uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- { uint64_t x58 = (x30 + (0x9 * x56));
- { uint32_t x59 = (uint32_t) (x58 >> 0x19);
- { uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- { uint32_t x61 = (x59 + x33);
- { uint32_t x62 = (x61 >> 0x18);
- { uint32_t x63 = (x61 & 0xffffff);
- out[0] = x60;
- out[1] = x63;
- out[2] = (x62 + x36);
- out[3] = x39;
- out[4] = x42;
- out[5] = x45;
- out[6] = x48;
- out[7] = x51;
- out[8] = x54;
- out[9] = x57;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e243m9_10limbs/fesquare.v b/src/Specific/solinas32_2e243m9_10limbs/fesquare.v
deleted file mode 100644
index 4e79a4179..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e243m9_10limbs.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_2e243m9_10limbs/fesquareDisplay.log b/src/Specific/solinas32_2e243m9_10limbs/fesquareDisplay.log
deleted file mode 100644
index 6f19b0946..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x19 = (((uint64_t)x2 * x17) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x17 * x2))))))))));
- uint64_t x20 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x9 * ((uint64_t)x17 * x17)));
- uint64_t x21 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x9 * (((uint64_t)x18 * x17) + ((uint64_t)x17 * x18))));
- uint64_t x22 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x9 * ((0x2 * ((uint64_t)x16 * x17)) + ((0x2 * ((uint64_t)x18 * x18)) + (0x2 * ((uint64_t)x17 * x16))))));
- uint64_t x23 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x9 * (((uint64_t)x14 * x17) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((uint64_t)x17 * x14))))));
- uint64_t x24 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x9 * (((uint64_t)x12 * x17) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + ((uint64_t)x17 * x12)))))));
- uint64_t x25 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x9 * ((0x2 * ((uint64_t)x10 * x17)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + (0x2 * ((uint64_t)x17 * x10)))))))));
- uint64_t x26 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x9 * (((uint64_t)x8 * x17) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + ((uint64_t)x17 * x8)))))))));
- uint64_t x27 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x9 * (((uint64_t)x6 * x17) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + ((uint64_t)x17 * x6))))))))));
- uint64_t x28 = (((uint64_t)x2 * x2) + (0x9 * ((0x2 * ((uint64_t)x4 * x17)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + (0x2 * ((uint64_t)x17 * x4))))))))))));
- uint64_t x29 = (x28 >> 0x19);
- uint32_t x30 = ((uint32_t)x28 & 0x1ffffff);
- uint64_t x31 = (x29 + x27);
- uint64_t x32 = (x31 >> 0x18);
- uint32_t x33 = ((uint32_t)x31 & 0xffffff);
- uint64_t x34 = (x32 + x26);
- uint64_t x35 = (x34 >> 0x18);
- uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- uint64_t x37 = (x35 + x25);
- uint64_t x38 = (x37 >> 0x19);
- uint32_t x39 = ((uint32_t)x37 & 0x1ffffff);
- uint64_t x40 = (x38 + x24);
- uint64_t x41 = (x40 >> 0x18);
- uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- uint64_t x43 = (x41 + x23);
- uint64_t x44 = (x43 >> 0x18);
- uint32_t x45 = ((uint32_t)x43 & 0xffffff);
- uint64_t x46 = (x44 + x22);
- uint64_t x47 = (x46 >> 0x19);
- uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- uint64_t x49 = (x47 + x21);
- uint64_t x50 = (x49 >> 0x18);
- uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- uint64_t x52 = (x50 + x20);
- uint64_t x53 = (x52 >> 0x18);
- uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- uint64_t x55 = (x53 + x19);
- uint64_t x56 = (x55 >> 0x18);
- uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- uint64_t x58 = (x30 + (0x9 * x56));
- uint32_t x59 = (uint32_t) (x58 >> 0x19);
- uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- uint32_t x61 = (x59 + x33);
- uint32_t x62 = (x61 >> 0x18);
- uint32_t x63 = (x61 & 0xffffff);
- return (Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, Return x39, (x62 + x36), Return x63, Return x60))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e243m9_10limbs/fesquareDisplay.v b/src/Specific/solinas32_2e243m9_10limbs/fesquareDisplay.v
deleted file mode 100644
index 591a72936..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e243m9_10limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e243m9_10limbs/fesub.c b/src/Specific/solinas32_2e243m9_10limbs/fesub.c
deleted file mode 100644
index 92263253e..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/fesub.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fesub(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- out[0] = ((0x3ffffee + x5) - x23);
- out[1] = ((0x1fffffe + x7) - x25);
- out[2] = ((0x1fffffe + x9) - x27);
- out[3] = ((0x3fffffe + x11) - x29);
- out[4] = ((0x1fffffe + x13) - x31);
- out[5] = ((0x1fffffe + x15) - x33);
- out[6] = ((0x3fffffe + x17) - x35);
- out[7] = ((0x1fffffe + x19) - x37);
- out[8] = ((0x1fffffe + x21) - x39);
- out[9] = ((0x1fffffe + x20) - x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e243m9_10limbs/fesub.v b/src/Specific/solinas32_2e243m9_10limbs/fesub.v
deleted file mode 100644
index d660bcdc3..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e243m9_10limbs.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_2e243m9_10limbs/fesubDisplay.log b/src/Specific/solinas32_2e243m9_10limbs/fesubDisplay.log
deleted file mode 100644
index 41d34ad20..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- (((0x1fffffe + x20) - x38), ((0x1fffffe + x21) - x39), ((0x1fffffe + x19) - x37), ((0x3fffffe + x17) - x35), ((0x1fffffe + x15) - x33), ((0x1fffffe + x13) - x31), ((0x3fffffe + x11) - x29), ((0x1fffffe + x9) - x27), ((0x1fffffe + x7) - x25), ((0x3ffffee + x5) - x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e243m9_10limbs/fesubDisplay.v b/src/Specific/solinas32_2e243m9_10limbs/fesubDisplay.v
deleted file mode 100644
index d705ddff0..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e243m9_10limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e243m9_10limbs/freeze.c b/src/Specific/solinas32_2e243m9_10limbs/freeze.c
deleted file mode 100644
index 72b42ea89..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/freeze.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void freeze(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffff7);
- { uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x4, 0xffffff);
- { uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x6, 0xffffff);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x8, 0x1ffffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x10, 0xffffff);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x12, 0xffffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x14, 0x1ffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x16, 0xffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x18, 0xffffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x17, 0xffffff);
- { uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- { uint32_t x50 = (x49 & 0x1fffff7);
- { uint32_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- { uint32_t x54 = (x49 & 0xffffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- { uint32_t x58 = (x49 & 0xffffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- { uint32_t x62 = (x49 & 0x1ffffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- { uint32_t x66 = (x49 & 0xffffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- { uint32_t x70 = (x49 & 0xffffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- { uint32_t x74 = (x49 & 0x1ffffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- { uint32_t x78 = (x49 & 0xffffff);
- { uint32_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- { uint32_t x82 = (x49 & 0xffffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- { uint32_t x86 = (x49 & 0xffffff);
- { uint32_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- out[0] = x52;
- out[1] = x56;
- out[2] = x60;
- out[3] = x64;
- out[4] = x68;
- out[5] = x72;
- out[6] = x76;
- out[7] = x80;
- out[8] = x84;
- out[9] = x88;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e243m9_10limbs/freeze.v b/src/Specific/solinas32_2e243m9_10limbs/freeze.v
deleted file mode 100644
index c382d04f7..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e243m9_10limbs.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_2e243m9_10limbs/freezeDisplay.log b/src/Specific/solinas32_2e243m9_10limbs/freezeDisplay.log
deleted file mode 100644
index 30c174644..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffff7);
- uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x4, 0xffffff);
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x6, 0xffffff);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x8, 0x1ffffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x10, 0xffffff);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x12, 0xffffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x14, 0x1ffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x16, 0xffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x18, 0xffffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x17, 0xffffff);
- uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- uint32_t x50 = (x49 & 0x1fffff7);
- uint32_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- uint32_t x54 = (x49 & 0xffffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- uint32_t x58 = (x49 & 0xffffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- uint32_t x62 = (x49 & 0x1ffffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- uint32_t x66 = (x49 & 0xffffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- uint32_t x70 = (x49 & 0xffffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- uint32_t x74 = (x49 & 0x1ffffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- uint32_t x78 = (x49 & 0xffffff);
- uint32_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- uint32_t x82 = (x49 & 0xffffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- uint32_t x86 = (x49 & 0xffffff);
- uint32_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- (Return x88, Return x84, Return x80, Return x76, Return x72, Return x68, Return x64, Return x60, Return x56, Return x52))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e243m9_10limbs/freezeDisplay.v b/src/Specific/solinas32_2e243m9_10limbs/freezeDisplay.v
deleted file mode 100644
index 6c29248de..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e243m9_10limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e243m9_10limbs/py_interpreter.sh b/src/Specific/solinas32_2e243m9_10limbs/py_interpreter.sh
deleted file mode 100755
index 5388fa26c..000000000
--- a/src/Specific/solinas32_2e243m9_10limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**243 - 9' -Dmodulus_bytes='24.3' -Da24='121665'
diff --git a/src/Specific/solinas32_2e243m9_9limbs/CurveParameters.v b/src/Specific/solinas32_2e243m9_9limbs/CurveParameters.v
deleted file mode 100644
index 0ced35491..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^243 - 9
-Base: 27
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 27;
- bitwidth := 32;
- s := 2^243;
- c := [(1, 9)];
- carry_chains := Some [seq 0 (pred 9); [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_2e243m9_9limbs/Synthesis.v b/src/Specific/solinas32_2e243m9_9limbs/Synthesis.v
deleted file mode 100644
index 77b939798..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e243m9_9limbs.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_2e243m9_9limbs/compiler.sh b/src/Specific/solinas32_2e243m9_9limbs/compiler.sh
deleted file mode 100755
index 5de6f8ea3..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27,27,27}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='31' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<243) - 9' "$@"
diff --git a/src/Specific/solinas32_2e243m9_9limbs/compilerxx.sh b/src/Specific/solinas32_2e243m9_9limbs/compilerxx.sh
deleted file mode 100755
index c0026cc46..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,27,27,27,27,27,27,27,27}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='31' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<243) - 9' "$@"
diff --git a/src/Specific/solinas32_2e243m9_9limbs/feadd.c b/src/Specific/solinas32_2e243m9_9limbs/feadd.c
deleted file mode 100644
index e1188fdec..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e243m9_9limbs/feadd.v b/src/Specific/solinas32_2e243m9_9limbs/feadd.v
deleted file mode 100644
index 15f3bb3d9..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e243m9_9limbs.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_2e243m9_9limbs/feaddDisplay.log b/src/Specific/solinas32_2e243m9_9limbs/feaddDisplay.log
deleted file mode 100644
index e26bb40f8..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e243m9_9limbs/feaddDisplay.v b/src/Specific/solinas32_2e243m9_9limbs/feaddDisplay.v
deleted file mode 100644
index e31fd6e32..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e243m9_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e243m9_9limbs/fecarry.v b/src/Specific/solinas32_2e243m9_9limbs/fecarry.v
deleted file mode 100644
index 69cbfae8d..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e243m9_9limbs.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_2e243m9_9limbs/fecarryDisplay.v b/src/Specific/solinas32_2e243m9_9limbs/fecarryDisplay.v
deleted file mode 100644
index 2bba5ba80..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e243m9_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e243m9_9limbs/femul.c b/src/Specific/solinas32_2e243m9_9limbs/femul.c
deleted file mode 100644
index c5e1a658b..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/femul.c
+++ /dev/null
@@ -1,71 +0,0 @@
-static void femul(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- { uint64_t x36 = (((uint64_t)x5 * x34) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + (((uint64_t)x19 * x23) + ((uint64_t)x18 * x21)))))))));
- { uint64_t x37 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + (((uint64_t)x17 * x23) + ((uint64_t)x19 * x21)))))))) + (0x9 * ((uint64_t)x18 * x34)));
- { uint64_t x38 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + ((uint64_t)x17 * x21))))))) + (0x9 * (((uint64_t)x19 * x34) + ((uint64_t)x18 * x35))));
- { uint64_t x39 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + (((uint64_t)x13 * x23) + ((uint64_t)x15 * x21)))))) + (0x9 * (((uint64_t)x17 * x34) + (((uint64_t)x19 * x35) + ((uint64_t)x18 * x33)))));
- { uint64_t x40 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + ((uint64_t)x13 * x21))))) + (0x9 * (((uint64_t)x15 * x34) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x18 * x31))))));
- { uint64_t x41 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + ((uint64_t)x11 * x21)))) + (0x9 * (((uint64_t)x13 * x34) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + ((uint64_t)x18 * x29)))))));
- { uint64_t x42 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + ((uint64_t)x9 * x21))) + (0x9 * (((uint64_t)x11 * x34) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + ((uint64_t)x18 * x27))))))));
- { uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0x9 * (((uint64_t)x9 * x34) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + ((uint64_t)x18 * x25)))))))));
- { uint64_t x44 = (((uint64_t)x5 * x21) + (0x9 * (((uint64_t)x7 * x34) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + (((uint64_t)x17 * x27) + (((uint64_t)x19 * x25) + ((uint64_t)x18 * x23))))))))));
- { uint64_t x45 = (x44 >> 0x1b);
- { uint32_t x46 = ((uint32_t)x44 & 0x7ffffff);
- { uint64_t x47 = (x45 + x43);
- { uint64_t x48 = (x47 >> 0x1b);
- { uint32_t x49 = ((uint32_t)x47 & 0x7ffffff);
- { uint64_t x50 = (x48 + x42);
- { uint64_t x51 = (x50 >> 0x1b);
- { uint32_t x52 = ((uint32_t)x50 & 0x7ffffff);
- { uint64_t x53 = (x51 + x41);
- { uint64_t x54 = (x53 >> 0x1b);
- { uint32_t x55 = ((uint32_t)x53 & 0x7ffffff);
- { uint64_t x56 = (x54 + x40);
- { uint64_t x57 = (x56 >> 0x1b);
- { uint32_t x58 = ((uint32_t)x56 & 0x7ffffff);
- { uint64_t x59 = (x57 + x39);
- { uint64_t x60 = (x59 >> 0x1b);
- { uint32_t x61 = ((uint32_t)x59 & 0x7ffffff);
- { uint64_t x62 = (x60 + x38);
- { uint64_t x63 = (x62 >> 0x1b);
- { uint32_t x64 = ((uint32_t)x62 & 0x7ffffff);
- { uint64_t x65 = (x63 + x37);
- { uint64_t x66 = (x65 >> 0x1b);
- { uint32_t x67 = ((uint32_t)x65 & 0x7ffffff);
- { uint64_t x68 = (x66 + x36);
- { uint64_t x69 = (x68 >> 0x1b);
- { uint32_t x70 = ((uint32_t)x68 & 0x7ffffff);
- { uint64_t x71 = (x46 + (0x9 * x69));
- { uint32_t x72 = (uint32_t) (x71 >> 0x1b);
- { uint32_t x73 = ((uint32_t)x71 & 0x7ffffff);
- { uint32_t x74 = (x72 + x49);
- { uint32_t x75 = (x74 >> 0x1b);
- { uint32_t x76 = (x74 & 0x7ffffff);
- out[0] = x73;
- out[1] = x76;
- out[2] = (x75 + x52);
- out[3] = x55;
- out[4] = x58;
- out[5] = x61;
- out[6] = x64;
- out[7] = x67;
- out[8] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e243m9_9limbs/femul.v b/src/Specific/solinas32_2e243m9_9limbs/femul.v
deleted file mode 100644
index 8e1d2480b..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e243m9_9limbs.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_2e243m9_9limbs/femulDisplay.log b/src/Specific/solinas32_2e243m9_9limbs/femulDisplay.log
deleted file mode 100644
index 4d5b22a3a..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/femulDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint64_t x36 = (((uint64_t)x5 * x34) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + (((uint64_t)x19 * x23) + ((uint64_t)x18 * x21)))))))));
- uint64_t x37 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + (((uint64_t)x15 * x25) + (((uint64_t)x17 * x23) + ((uint64_t)x19 * x21)))))))) + (0x9 * ((uint64_t)x18 * x34)));
- uint64_t x38 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + (((uint64_t)x15 * x23) + ((uint64_t)x17 * x21))))))) + (0x9 * (((uint64_t)x19 * x34) + ((uint64_t)x18 * x35))));
- uint64_t x39 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + (((uint64_t)x11 * x25) + (((uint64_t)x13 * x23) + ((uint64_t)x15 * x21)))))) + (0x9 * (((uint64_t)x17 * x34) + (((uint64_t)x19 * x35) + ((uint64_t)x18 * x33)))));
- uint64_t x40 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + (((uint64_t)x11 * x23) + ((uint64_t)x13 * x21))))) + (0x9 * (((uint64_t)x15 * x34) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x18 * x31))))));
- uint64_t x41 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + (((uint64_t)x9 * x23) + ((uint64_t)x11 * x21)))) + (0x9 * (((uint64_t)x13 * x34) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + ((uint64_t)x18 * x29)))))));
- uint64_t x42 = ((((uint64_t)x5 * x25) + (((uint64_t)x7 * x23) + ((uint64_t)x9 * x21))) + (0x9 * (((uint64_t)x11 * x34) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + ((uint64_t)x18 * x27))))))));
- uint64_t x43 = ((((uint64_t)x5 * x23) + ((uint64_t)x7 * x21)) + (0x9 * (((uint64_t)x9 * x34) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + ((uint64_t)x18 * x25)))))))));
- uint64_t x44 = (((uint64_t)x5 * x21) + (0x9 * (((uint64_t)x7 * x34) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + (((uint64_t)x17 * x27) + (((uint64_t)x19 * x25) + ((uint64_t)x18 * x23))))))))));
- uint64_t x45 = (x44 >> 0x1b);
- uint32_t x46 = ((uint32_t)x44 & 0x7ffffff);
- uint64_t x47 = (x45 + x43);
- uint64_t x48 = (x47 >> 0x1b);
- uint32_t x49 = ((uint32_t)x47 & 0x7ffffff);
- uint64_t x50 = (x48 + x42);
- uint64_t x51 = (x50 >> 0x1b);
- uint32_t x52 = ((uint32_t)x50 & 0x7ffffff);
- uint64_t x53 = (x51 + x41);
- uint64_t x54 = (x53 >> 0x1b);
- uint32_t x55 = ((uint32_t)x53 & 0x7ffffff);
- uint64_t x56 = (x54 + x40);
- uint64_t x57 = (x56 >> 0x1b);
- uint32_t x58 = ((uint32_t)x56 & 0x7ffffff);
- uint64_t x59 = (x57 + x39);
- uint64_t x60 = (x59 >> 0x1b);
- uint32_t x61 = ((uint32_t)x59 & 0x7ffffff);
- uint64_t x62 = (x60 + x38);
- uint64_t x63 = (x62 >> 0x1b);
- uint32_t x64 = ((uint32_t)x62 & 0x7ffffff);
- uint64_t x65 = (x63 + x37);
- uint64_t x66 = (x65 >> 0x1b);
- uint32_t x67 = ((uint32_t)x65 & 0x7ffffff);
- uint64_t x68 = (x66 + x36);
- uint64_t x69 = (x68 >> 0x1b);
- uint32_t x70 = ((uint32_t)x68 & 0x7ffffff);
- uint64_t x71 = (x46 + (0x9 * x69));
- uint32_t x72 = (uint32_t) (x71 >> 0x1b);
- uint32_t x73 = ((uint32_t)x71 & 0x7ffffff);
- uint32_t x74 = (x72 + x49);
- uint32_t x75 = (x74 >> 0x1b);
- uint32_t x76 = (x74 & 0x7ffffff);
- return (Return x70, Return x67, Return x64, Return x61, Return x58, Return x55, (x75 + x52), Return x76, Return x73))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e243m9_9limbs/femulDisplay.v b/src/Specific/solinas32_2e243m9_9limbs/femulDisplay.v
deleted file mode 100644
index 30f76a118..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e243m9_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e243m9_9limbs/fesquare.c b/src/Specific/solinas32_2e243m9_9limbs/fesquare.c
deleted file mode 100644
index 01abea524..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/fesquare.c
+++ /dev/null
@@ -1,62 +0,0 @@
-static void fesquare(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x17 = (((uint64_t)x2 * x15) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x15 * x2)))))))));
- { uint64_t x18 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x9 * ((uint64_t)x15 * x15)));
- { uint64_t x19 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x9 * (((uint64_t)x16 * x15) + ((uint64_t)x15 * x16))));
- { uint64_t x20 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x9 * (((uint64_t)x14 * x15) + (((uint64_t)x16 * x16) + ((uint64_t)x15 * x14)))));
- { uint64_t x21 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x9 * (((uint64_t)x12 * x15) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x15 * x12))))));
- { uint64_t x22 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x9 * (((uint64_t)x10 * x15) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + ((uint64_t)x15 * x10)))))));
- { uint64_t x23 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x9 * (((uint64_t)x8 * x15) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x15 * x8))))))));
- { uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x9 * (((uint64_t)x6 * x15) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((uint64_t)x15 * x6)))))))));
- { uint64_t x25 = (((uint64_t)x2 * x2) + (0x9 * (((uint64_t)x4 * x15) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + ((uint64_t)x15 * x4))))))))));
- { uint64_t x26 = (x25 >> 0x1b);
- { uint32_t x27 = ((uint32_t)x25 & 0x7ffffff);
- { uint64_t x28 = (x26 + x24);
- { uint64_t x29 = (x28 >> 0x1b);
- { uint32_t x30 = ((uint32_t)x28 & 0x7ffffff);
- { uint64_t x31 = (x29 + x23);
- { uint64_t x32 = (x31 >> 0x1b);
- { uint32_t x33 = ((uint32_t)x31 & 0x7ffffff);
- { uint64_t x34 = (x32 + x22);
- { uint64_t x35 = (x34 >> 0x1b);
- { uint32_t x36 = ((uint32_t)x34 & 0x7ffffff);
- { uint64_t x37 = (x35 + x21);
- { uint64_t x38 = (x37 >> 0x1b);
- { uint32_t x39 = ((uint32_t)x37 & 0x7ffffff);
- { uint64_t x40 = (x38 + x20);
- { uint64_t x41 = (x40 >> 0x1b);
- { uint32_t x42 = ((uint32_t)x40 & 0x7ffffff);
- { uint64_t x43 = (x41 + x19);
- { uint64_t x44 = (x43 >> 0x1b);
- { uint32_t x45 = ((uint32_t)x43 & 0x7ffffff);
- { uint64_t x46 = (x44 + x18);
- { uint64_t x47 = (x46 >> 0x1b);
- { uint32_t x48 = ((uint32_t)x46 & 0x7ffffff);
- { uint64_t x49 = (x47 + x17);
- { uint64_t x50 = (x49 >> 0x1b);
- { uint32_t x51 = ((uint32_t)x49 & 0x7ffffff);
- { uint64_t x52 = (x27 + (0x9 * x50));
- { uint32_t x53 = (uint32_t) (x52 >> 0x1b);
- { uint32_t x54 = ((uint32_t)x52 & 0x7ffffff);
- { uint32_t x55 = (x53 + x30);
- { uint32_t x56 = (x55 >> 0x1b);
- { uint32_t x57 = (x55 & 0x7ffffff);
- out[0] = x54;
- out[1] = x57;
- out[2] = (x56 + x33);
- out[3] = x36;
- out[4] = x39;
- out[5] = x42;
- out[6] = x45;
- out[7] = x48;
- out[8] = x51;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e243m9_9limbs/fesquare.v b/src/Specific/solinas32_2e243m9_9limbs/fesquare.v
deleted file mode 100644
index e449f49dc..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e243m9_9limbs.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_2e243m9_9limbs/fesquareDisplay.log b/src/Specific/solinas32_2e243m9_9limbs/fesquareDisplay.log
deleted file mode 100644
index 8a4b25a51..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x17 = (((uint64_t)x2 * x15) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x15 * x2)))))))));
- uint64_t x18 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x9 * ((uint64_t)x15 * x15)));
- uint64_t x19 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x9 * (((uint64_t)x16 * x15) + ((uint64_t)x15 * x16))));
- uint64_t x20 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x9 * (((uint64_t)x14 * x15) + (((uint64_t)x16 * x16) + ((uint64_t)x15 * x14)))));
- uint64_t x21 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x9 * (((uint64_t)x12 * x15) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x15 * x12))))));
- uint64_t x22 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x9 * (((uint64_t)x10 * x15) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + ((uint64_t)x15 * x10)))))));
- uint64_t x23 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x9 * (((uint64_t)x8 * x15) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x15 * x8))))))));
- uint64_t x24 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x9 * (((uint64_t)x6 * x15) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((uint64_t)x15 * x6)))))))));
- uint64_t x25 = (((uint64_t)x2 * x2) + (0x9 * (((uint64_t)x4 * x15) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + ((uint64_t)x15 * x4))))))))));
- uint64_t x26 = (x25 >> 0x1b);
- uint32_t x27 = ((uint32_t)x25 & 0x7ffffff);
- uint64_t x28 = (x26 + x24);
- uint64_t x29 = (x28 >> 0x1b);
- uint32_t x30 = ((uint32_t)x28 & 0x7ffffff);
- uint64_t x31 = (x29 + x23);
- uint64_t x32 = (x31 >> 0x1b);
- uint32_t x33 = ((uint32_t)x31 & 0x7ffffff);
- uint64_t x34 = (x32 + x22);
- uint64_t x35 = (x34 >> 0x1b);
- uint32_t x36 = ((uint32_t)x34 & 0x7ffffff);
- uint64_t x37 = (x35 + x21);
- uint64_t x38 = (x37 >> 0x1b);
- uint32_t x39 = ((uint32_t)x37 & 0x7ffffff);
- uint64_t x40 = (x38 + x20);
- uint64_t x41 = (x40 >> 0x1b);
- uint32_t x42 = ((uint32_t)x40 & 0x7ffffff);
- uint64_t x43 = (x41 + x19);
- uint64_t x44 = (x43 >> 0x1b);
- uint32_t x45 = ((uint32_t)x43 & 0x7ffffff);
- uint64_t x46 = (x44 + x18);
- uint64_t x47 = (x46 >> 0x1b);
- uint32_t x48 = ((uint32_t)x46 & 0x7ffffff);
- uint64_t x49 = (x47 + x17);
- uint64_t x50 = (x49 >> 0x1b);
- uint32_t x51 = ((uint32_t)x49 & 0x7ffffff);
- uint64_t x52 = (x27 + (0x9 * x50));
- uint32_t x53 = (uint32_t) (x52 >> 0x1b);
- uint32_t x54 = ((uint32_t)x52 & 0x7ffffff);
- uint32_t x55 = (x53 + x30);
- uint32_t x56 = (x55 >> 0x1b);
- uint32_t x57 = (x55 & 0x7ffffff);
- return (Return x51, Return x48, Return x45, Return x42, Return x39, Return x36, (x56 + x33), Return x57, Return x54))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e243m9_9limbs/fesquareDisplay.v b/src/Specific/solinas32_2e243m9_9limbs/fesquareDisplay.v
deleted file mode 100644
index 5146bca6a..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e243m9_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e243m9_9limbs/fesub.c b/src/Specific/solinas32_2e243m9_9limbs/fesub.c
deleted file mode 100644
index 51d3a48e3..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/fesub.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void fesub(uint32_t out[9], const uint32_t in1[9], const uint32_t in2[9]) {
- { const uint32_t x18 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x34 = in2[8];
- { const uint32_t x35 = in2[7];
- { const uint32_t x33 = in2[6];
- { const uint32_t x31 = in2[5];
- { const uint32_t x29 = in2[4];
- { const uint32_t x27 = in2[3];
- { const uint32_t x25 = in2[2];
- { const uint32_t x23 = in2[1];
- { const uint32_t x21 = in2[0];
- out[0] = ((0xfffffee + x5) - x21);
- out[1] = ((0xffffffe + x7) - x23);
- out[2] = ((0xffffffe + x9) - x25);
- out[3] = ((0xffffffe + x11) - x27);
- out[4] = ((0xffffffe + x13) - x29);
- out[5] = ((0xffffffe + x15) - x31);
- out[6] = ((0xffffffe + x17) - x33);
- out[7] = ((0xffffffe + x19) - x35);
- out[8] = ((0xffffffe + x18) - x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e243m9_9limbs/fesub.v b/src/Specific/solinas32_2e243m9_9limbs/fesub.v
deleted file mode 100644
index 5f5fd4e60..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e243m9_9limbs.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_2e243m9_9limbs/fesubDisplay.log b/src/Specific/solinas32_2e243m9_9limbs/fesubDisplay.log
deleted file mode 100644
index c2adfb236..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- (((0xffffffe + x18) - x34), ((0xffffffe + x19) - x35), ((0xffffffe + x17) - x33), ((0xffffffe + x15) - x31), ((0xffffffe + x13) - x29), ((0xffffffe + x11) - x27), ((0xffffffe + x9) - x25), ((0xffffffe + x7) - x23), ((0xfffffee + x5) - x21)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e243m9_9limbs/fesubDisplay.v b/src/Specific/solinas32_2e243m9_9limbs/fesubDisplay.v
deleted file mode 100644
index ba7bf1655..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e243m9_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e243m9_9limbs/freeze.c b/src/Specific/solinas32_2e243m9_9limbs/freeze.c
deleted file mode 100644
index e0a268881..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/freeze.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void freeze(uint32_t out[9], const uint32_t in1[9]) {
- { const uint32_t x15 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffff7);
- { 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 x4, 0x7ffffff);
- { uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0x7ffffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x8, 0x7ffffff);
- { uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0x7ffffff);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0x7ffffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0x7ffffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0x7ffffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0x7ffffff);
- { uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- { uint32_t x45 = (x44 & 0x7fffff7);
- { uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- { uint32_t x49 = (x44 & 0x7ffffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- { uint32_t x53 = (x44 & 0x7ffffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- { uint32_t x57 = (x44 & 0x7ffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- { uint32_t x61 = (x44 & 0x7ffffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- { uint32_t x65 = (x44 & 0x7ffffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- { uint32_t x69 = (x44 & 0x7ffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- { uint32_t x73 = (x44 & 0x7ffffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- { uint32_t x77 = (x44 & 0x7ffffff);
- { uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- out[0] = x47;
- out[1] = x51;
- out[2] = x55;
- out[3] = x59;
- out[4] = x63;
- out[5] = x67;
- out[6] = x71;
- out[7] = x75;
- out[8] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e243m9_9limbs/freeze.v b/src/Specific/solinas32_2e243m9_9limbs/freeze.v
deleted file mode 100644
index 128da1329..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e243m9_9limbs.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_2e243m9_9limbs/freezeDisplay.log b/src/Specific/solinas32_2e243m9_9limbs/freezeDisplay.log
deleted file mode 100644
index 3c74627ca..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffff7);
- 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 x4, 0x7ffffff);
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x22, Return x6, 0x7ffffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x8, 0x7ffffff);
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x10, 0x7ffffff);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x12, 0x7ffffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x14, 0x7ffffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x16, 0x7ffffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x15, 0x7ffffff);
- uint32_t x44 = cmovznz32(x43, 0x0, 0xffffffff);
- uint32_t x45 = (x44 & 0x7fffff7);
- uint32_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- uint32_t x49 = (x44 & 0x7ffffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- uint32_t x53 = (x44 & 0x7ffffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- uint32_t x57 = (x44 & 0x7ffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- uint32_t x61 = (x44 & 0x7ffffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- uint32_t x65 = (x44 & 0x7ffffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- uint32_t x69 = (x44 & 0x7ffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- uint32_t x73 = (x44 & 0x7ffffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- uint32_t x77 = (x44 & 0x7ffffff);
- uint32_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- (Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x51, Return x47))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e243m9_9limbs/freezeDisplay.v b/src/Specific/solinas32_2e243m9_9limbs/freezeDisplay.v
deleted file mode 100644
index 97397b072..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e243m9_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e243m9_9limbs/py_interpreter.sh b/src/Specific/solinas32_2e243m9_9limbs/py_interpreter.sh
deleted file mode 100755
index 74091a60e..000000000
--- a/src/Specific/solinas32_2e243m9_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**243 - 9' -Dmodulus_bytes='27' -Da24='121665'
diff --git a/src/Specific/solinas32_2e251m9_10limbs/CurveParameters.v b/src/Specific/solinas32_2e251m9_10limbs/CurveParameters.v
deleted file mode 100644
index 1cbf603c8..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^251 - 9
-Base: 25.1
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 25 + 1/10;
- bitwidth := 32;
- s := 2^251;
- c := [(1, 9)];
- carry_chains := Some [seq 0 (pred 10); [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_2e251m9_10limbs/Synthesis.v b/src/Specific/solinas32_2e251m9_10limbs/Synthesis.v
deleted file mode 100644
index 9ed97e86f..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e251m9_10limbs.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_2e251m9_10limbs/compiler.sh b/src/Specific/solinas32_2e251m9_10limbs/compiler.sh
deleted file mode 100755
index 9f621de3c..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,25,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<251) - 9' "$@"
diff --git a/src/Specific/solinas32_2e251m9_10limbs/compilerxx.sh b/src/Specific/solinas32_2e251m9_10limbs/compilerxx.sh
deleted file mode 100755
index 81b507b07..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,25,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<251) - 9' "$@"
diff --git a/src/Specific/solinas32_2e251m9_10limbs/feadd.c b/src/Specific/solinas32_2e251m9_10limbs/feadd.c
deleted file mode 100644
index 57dd4e1af..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/feadd.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void feadd(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- out[0] = (x5 + x23);
- out[1] = (x7 + x25);
- out[2] = (x9 + x27);
- out[3] = (x11 + x29);
- out[4] = (x13 + x31);
- out[5] = (x15 + x33);
- out[6] = (x17 + x35);
- out[7] = (x19 + x37);
- out[8] = (x21 + x39);
- out[9] = (x20 + x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e251m9_10limbs/feadd.v b/src/Specific/solinas32_2e251m9_10limbs/feadd.v
deleted file mode 100644
index 67a3a9630..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e251m9_10limbs.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_2e251m9_10limbs/feaddDisplay.log b/src/Specific/solinas32_2e251m9_10limbs/feaddDisplay.log
deleted file mode 100644
index 8a4c51148..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e251m9_10limbs/feaddDisplay.v b/src/Specific/solinas32_2e251m9_10limbs/feaddDisplay.v
deleted file mode 100644
index ba2f12c79..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e251m9_10limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e251m9_10limbs/fecarry.v b/src/Specific/solinas32_2e251m9_10limbs/fecarry.v
deleted file mode 100644
index c080db3a2..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e251m9_10limbs.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_2e251m9_10limbs/fecarryDisplay.v b/src/Specific/solinas32_2e251m9_10limbs/fecarryDisplay.v
deleted file mode 100644
index 16acd39c9..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e251m9_10limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e251m9_10limbs/femul.c b/src/Specific/solinas32_2e251m9_10limbs/femul.c
deleted file mode 100644
index 62632bb16..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/femul.c
+++ /dev/null
@@ -1,78 +0,0 @@
-static void femul(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- { uint64_t x40 = (((uint64_t)x5 * x38) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + ((0x2 * ((uint64_t)x11 * x35)) + ((0x2 * ((uint64_t)x13 * x33)) + ((0x2 * ((uint64_t)x15 * x31)) + ((0x2 * ((uint64_t)x17 * x29)) + ((0x2 * ((uint64_t)x19 * x27)) + ((0x2 * ((uint64_t)x21 * x25)) + ((uint64_t)x20 * x23))))))))));
- { uint64_t x41 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + ((uint64_t)x21 * x23))))))))) + (0x9 * ((uint64_t)x20 * x38)));
- { uint64_t x42 = ((((uint64_t)x5 * x37) + ((0x2 * ((uint64_t)x7 * x35)) + ((0x2 * ((uint64_t)x9 * x33)) + ((0x2 * ((uint64_t)x11 * x31)) + ((0x2 * ((uint64_t)x13 * x29)) + ((0x2 * ((uint64_t)x15 * x27)) + ((0x2 * ((uint64_t)x17 * x25)) + ((uint64_t)x19 * x23)))))))) + (0x9 * (((uint64_t)x21 * x38) + ((uint64_t)x20 * x39))));
- { uint64_t x43 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((uint64_t)x17 * x23))))))) + (0x9 * (((uint64_t)x19 * x38) + (((uint64_t)x21 * x39) + ((uint64_t)x20 * x37)))));
- { uint64_t x44 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((0x2 * ((uint64_t)x11 * x27)) + ((0x2 * ((uint64_t)x13 * x25)) + ((uint64_t)x15 * x23)))))) + (0x9 * (((uint64_t)x17 * x38) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + ((uint64_t)x20 * x35))))));
- { uint64_t x45 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((uint64_t)x13 * x23))))) + (0x9 * (((uint64_t)x15 * x38) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + (((uint64_t)x21 * x35) + ((uint64_t)x20 * x33)))))));
- { uint64_t x46 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((uint64_t)x11 * x23)))) + (0x9 * (((uint64_t)x13 * x38) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + ((uint64_t)x20 * x31))))))));
- { uint64_t x47 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((uint64_t)x9 * x23))) + (0x9 * (((uint64_t)x11 * x38) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((uint64_t)x20 * x29)))))))));
- { uint64_t x48 = ((((uint64_t)x5 * x25) + ((uint64_t)x7 * x23)) + (0x9 * (((uint64_t)x9 * x38) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (((uint64_t)x21 * x29) + ((uint64_t)x20 * x27))))))))));
- { uint64_t x49 = (((uint64_t)x5 * x23) + (0x9 * ((0x2 * ((uint64_t)x7 * x38)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + ((0x2 * ((uint64_t)x15 * x33)) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((0x2 * ((uint64_t)x21 * x27)) + (0x2 * ((uint64_t)x20 * x25))))))))))));
- { uint64_t x50 = (x49 >> 0x1a);
- { uint32_t x51 = ((uint32_t)x49 & 0x3ffffff);
- { uint64_t x52 = (x50 + x48);
- { uint64_t x53 = (x52 >> 0x19);
- { uint32_t x54 = ((uint32_t)x52 & 0x1ffffff);
- { uint64_t x55 = (x53 + x47);
- { uint64_t x56 = (x55 >> 0x19);
- { uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- { uint64_t x58 = (x56 + x46);
- { uint64_t x59 = (x58 >> 0x19);
- { uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- { uint64_t x61 = (x59 + x45);
- { uint64_t x62 = (x61 >> 0x19);
- { uint32_t x63 = ((uint32_t)x61 & 0x1ffffff);
- { uint64_t x64 = (x62 + x44);
- { uint64_t x65 = (x64 >> 0x19);
- { uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- { uint64_t x67 = (x65 + x43);
- { uint64_t x68 = (x67 >> 0x19);
- { uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- { uint64_t x70 = (x68 + x42);
- { uint64_t x71 = (x70 >> 0x19);
- { uint32_t x72 = ((uint32_t)x70 & 0x1ffffff);
- { uint64_t x73 = (x71 + x41);
- { uint64_t x74 = (x73 >> 0x19);
- { uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- { uint64_t x76 = (x74 + x40);
- { uint64_t x77 = (x76 >> 0x19);
- { uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- { uint64_t x79 = (x51 + (0x9 * x77));
- { uint32_t x80 = (uint32_t) (x79 >> 0x1a);
- { uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- { uint32_t x82 = (x80 + x54);
- { uint32_t x83 = (x82 >> 0x19);
- { uint32_t x84 = (x82 & 0x1ffffff);
- out[0] = x81;
- out[1] = x84;
- out[2] = (x83 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e251m9_10limbs/femul.v b/src/Specific/solinas32_2e251m9_10limbs/femul.v
deleted file mode 100644
index 54a20cb50..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e251m9_10limbs.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_2e251m9_10limbs/femulDisplay.log b/src/Specific/solinas32_2e251m9_10limbs/femulDisplay.log
deleted file mode 100644
index f8fccef50..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/femulDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- uint64_t x40 = (((uint64_t)x5 * x38) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + ((0x2 * ((uint64_t)x11 * x35)) + ((0x2 * ((uint64_t)x13 * x33)) + ((0x2 * ((uint64_t)x15 * x31)) + ((0x2 * ((uint64_t)x17 * x29)) + ((0x2 * ((uint64_t)x19 * x27)) + ((0x2 * ((uint64_t)x21 * x25)) + ((uint64_t)x20 * x23))))))))));
- uint64_t x41 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + ((uint64_t)x21 * x23))))))))) + (0x9 * ((uint64_t)x20 * x38)));
- uint64_t x42 = ((((uint64_t)x5 * x37) + ((0x2 * ((uint64_t)x7 * x35)) + ((0x2 * ((uint64_t)x9 * x33)) + ((0x2 * ((uint64_t)x11 * x31)) + ((0x2 * ((uint64_t)x13 * x29)) + ((0x2 * ((uint64_t)x15 * x27)) + ((0x2 * ((uint64_t)x17 * x25)) + ((uint64_t)x19 * x23)))))))) + (0x9 * (((uint64_t)x21 * x38) + ((uint64_t)x20 * x39))));
- uint64_t x43 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((0x2 * ((uint64_t)x15 * x25)) + ((uint64_t)x17 * x23))))))) + (0x9 * (((uint64_t)x19 * x38) + (((uint64_t)x21 * x39) + ((uint64_t)x20 * x37)))));
- uint64_t x44 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((0x2 * ((uint64_t)x11 * x27)) + ((0x2 * ((uint64_t)x13 * x25)) + ((uint64_t)x15 * x23)))))) + (0x9 * (((uint64_t)x17 * x38) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + ((uint64_t)x20 * x35))))));
- uint64_t x45 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((0x2 * ((uint64_t)x11 * x25)) + ((uint64_t)x13 * x23))))) + (0x9 * (((uint64_t)x15 * x38) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + (((uint64_t)x21 * x35) + ((uint64_t)x20 * x33)))))));
- uint64_t x46 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((uint64_t)x11 * x23)))) + (0x9 * (((uint64_t)x13 * x38) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + ((uint64_t)x20 * x31))))))));
- uint64_t x47 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((uint64_t)x9 * x23))) + (0x9 * (((uint64_t)x11 * x38) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((uint64_t)x20 * x29)))))))));
- uint64_t x48 = ((((uint64_t)x5 * x25) + ((uint64_t)x7 * x23)) + (0x9 * (((uint64_t)x9 * x38) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (((uint64_t)x21 * x29) + ((uint64_t)x20 * x27))))))))));
- uint64_t x49 = (((uint64_t)x5 * x23) + (0x9 * ((0x2 * ((uint64_t)x7 * x38)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + ((0x2 * ((uint64_t)x15 * x33)) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((0x2 * ((uint64_t)x21 * x27)) + (0x2 * ((uint64_t)x20 * x25))))))))))));
- uint64_t x50 = (x49 >> 0x1a);
- uint32_t x51 = ((uint32_t)x49 & 0x3ffffff);
- uint64_t x52 = (x50 + x48);
- uint64_t x53 = (x52 >> 0x19);
- uint32_t x54 = ((uint32_t)x52 & 0x1ffffff);
- uint64_t x55 = (x53 + x47);
- uint64_t x56 = (x55 >> 0x19);
- uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- uint64_t x58 = (x56 + x46);
- uint64_t x59 = (x58 >> 0x19);
- uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- uint64_t x61 = (x59 + x45);
- uint64_t x62 = (x61 >> 0x19);
- uint32_t x63 = ((uint32_t)x61 & 0x1ffffff);
- uint64_t x64 = (x62 + x44);
- uint64_t x65 = (x64 >> 0x19);
- uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- uint64_t x67 = (x65 + x43);
- uint64_t x68 = (x67 >> 0x19);
- uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- uint64_t x70 = (x68 + x42);
- uint64_t x71 = (x70 >> 0x19);
- uint32_t x72 = ((uint32_t)x70 & 0x1ffffff);
- uint64_t x73 = (x71 + x41);
- uint64_t x74 = (x73 >> 0x19);
- uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- uint64_t x76 = (x74 + x40);
- uint64_t x77 = (x76 >> 0x19);
- uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- uint64_t x79 = (x51 + (0x9 * x77));
- uint32_t x80 = (uint32_t) (x79 >> 0x1a);
- uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- uint32_t x82 = (x80 + x54);
- uint32_t x83 = (x82 >> 0x19);
- uint32_t x84 = (x82 & 0x1ffffff);
- return (Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x83 + x57), Return x84, Return x81))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e251m9_10limbs/femulDisplay.v b/src/Specific/solinas32_2e251m9_10limbs/femulDisplay.v
deleted file mode 100644
index 6f958eb95..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e251m9_10limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e251m9_10limbs/fesquare.c b/src/Specific/solinas32_2e251m9_10limbs/fesquare.c
deleted file mode 100644
index d21201afe..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/fesquare.c
+++ /dev/null
@@ -1,68 +0,0 @@
-static void fesquare(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x19 = (((uint64_t)x2 * x17) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x17 * x2))))))))));
- { uint64_t x20 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x9 * ((uint64_t)x17 * x17)));
- { uint64_t x21 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x9 * (((uint64_t)x18 * x17) + ((uint64_t)x17 * x18))));
- { uint64_t x22 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x9 * (((uint64_t)x16 * x17) + (((uint64_t)x18 * x18) + ((uint64_t)x17 * x16)))));
- { uint64_t x23 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x9 * (((uint64_t)x14 * x17) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((uint64_t)x17 * x14))))));
- { uint64_t x24 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x9 * (((uint64_t)x12 * x17) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + ((uint64_t)x17 * x12)))))));
- { uint64_t x25 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x9 * (((uint64_t)x10 * x17) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + ((uint64_t)x17 * x10))))))));
- { uint64_t x26 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x9 * (((uint64_t)x8 * x17) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((uint64_t)x17 * x8)))))))));
- { uint64_t x27 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x9 * (((uint64_t)x6 * x17) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((uint64_t)x17 * x6))))))))));
- { uint64_t x28 = (((uint64_t)x2 * x2) + (0x9 * ((0x2 * ((uint64_t)x4 * x17)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + (0x2 * ((uint64_t)x17 * x4))))))))))));
- { uint64_t x29 = (x28 >> 0x1a);
- { uint32_t x30 = ((uint32_t)x28 & 0x3ffffff);
- { uint64_t x31 = (x29 + x27);
- { uint64_t x32 = (x31 >> 0x19);
- { uint32_t x33 = ((uint32_t)x31 & 0x1ffffff);
- { uint64_t x34 = (x32 + x26);
- { uint64_t x35 = (x34 >> 0x19);
- { uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- { uint64_t x37 = (x35 + x25);
- { uint64_t x38 = (x37 >> 0x19);
- { uint32_t x39 = ((uint32_t)x37 & 0x1ffffff);
- { uint64_t x40 = (x38 + x24);
- { uint64_t x41 = (x40 >> 0x19);
- { uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- { uint64_t x43 = (x41 + x23);
- { uint64_t x44 = (x43 >> 0x19);
- { uint32_t x45 = ((uint32_t)x43 & 0x1ffffff);
- { uint64_t x46 = (x44 + x22);
- { uint64_t x47 = (x46 >> 0x19);
- { uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- { uint64_t x49 = (x47 + x21);
- { uint64_t x50 = (x49 >> 0x19);
- { uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- { uint64_t x52 = (x50 + x20);
- { uint64_t x53 = (x52 >> 0x19);
- { uint32_t x54 = ((uint32_t)x52 & 0x1ffffff);
- { uint64_t x55 = (x53 + x19);
- { uint64_t x56 = (x55 >> 0x19);
- { uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- { uint64_t x58 = (x30 + (0x9 * x56));
- { uint32_t x59 = (uint32_t) (x58 >> 0x1a);
- { uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- { uint32_t x61 = (x59 + x33);
- { uint32_t x62 = (x61 >> 0x19);
- { uint32_t x63 = (x61 & 0x1ffffff);
- out[0] = x60;
- out[1] = x63;
- out[2] = (x62 + x36);
- out[3] = x39;
- out[4] = x42;
- out[5] = x45;
- out[6] = x48;
- out[7] = x51;
- out[8] = x54;
- out[9] = x57;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e251m9_10limbs/fesquare.v b/src/Specific/solinas32_2e251m9_10limbs/fesquare.v
deleted file mode 100644
index 4634ea792..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e251m9_10limbs.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_2e251m9_10limbs/fesquareDisplay.log b/src/Specific/solinas32_2e251m9_10limbs/fesquareDisplay.log
deleted file mode 100644
index 588ea2285..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x19 = (((uint64_t)x2 * x17) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x17 * x2))))))))));
- uint64_t x20 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x9 * ((uint64_t)x17 * x17)));
- uint64_t x21 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x9 * (((uint64_t)x18 * x17) + ((uint64_t)x17 * x18))));
- uint64_t x22 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x9 * (((uint64_t)x16 * x17) + (((uint64_t)x18 * x18) + ((uint64_t)x17 * x16)))));
- uint64_t x23 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x9 * (((uint64_t)x14 * x17) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((uint64_t)x17 * x14))))));
- uint64_t x24 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x9 * (((uint64_t)x12 * x17) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + ((uint64_t)x17 * x12)))))));
- uint64_t x25 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x9 * (((uint64_t)x10 * x17) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + ((uint64_t)x17 * x10))))))));
- uint64_t x26 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x9 * (((uint64_t)x8 * x17) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((uint64_t)x17 * x8)))))))));
- uint64_t x27 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x9 * (((uint64_t)x6 * x17) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((uint64_t)x17 * x6))))))))));
- uint64_t x28 = (((uint64_t)x2 * x2) + (0x9 * ((0x2 * ((uint64_t)x4 * x17)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + (0x2 * ((uint64_t)x17 * x4))))))))))));
- uint64_t x29 = (x28 >> 0x1a);
- uint32_t x30 = ((uint32_t)x28 & 0x3ffffff);
- uint64_t x31 = (x29 + x27);
- uint64_t x32 = (x31 >> 0x19);
- uint32_t x33 = ((uint32_t)x31 & 0x1ffffff);
- uint64_t x34 = (x32 + x26);
- uint64_t x35 = (x34 >> 0x19);
- uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- uint64_t x37 = (x35 + x25);
- uint64_t x38 = (x37 >> 0x19);
- uint32_t x39 = ((uint32_t)x37 & 0x1ffffff);
- uint64_t x40 = (x38 + x24);
- uint64_t x41 = (x40 >> 0x19);
- uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- uint64_t x43 = (x41 + x23);
- uint64_t x44 = (x43 >> 0x19);
- uint32_t x45 = ((uint32_t)x43 & 0x1ffffff);
- uint64_t x46 = (x44 + x22);
- uint64_t x47 = (x46 >> 0x19);
- uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- uint64_t x49 = (x47 + x21);
- uint64_t x50 = (x49 >> 0x19);
- uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- uint64_t x52 = (x50 + x20);
- uint64_t x53 = (x52 >> 0x19);
- uint32_t x54 = ((uint32_t)x52 & 0x1ffffff);
- uint64_t x55 = (x53 + x19);
- uint64_t x56 = (x55 >> 0x19);
- uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- uint64_t x58 = (x30 + (0x9 * x56));
- uint32_t x59 = (uint32_t) (x58 >> 0x1a);
- uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- uint32_t x61 = (x59 + x33);
- uint32_t x62 = (x61 >> 0x19);
- uint32_t x63 = (x61 & 0x1ffffff);
- return (Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, Return x39, (x62 + x36), Return x63, Return x60))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e251m9_10limbs/fesquareDisplay.v b/src/Specific/solinas32_2e251m9_10limbs/fesquareDisplay.v
deleted file mode 100644
index 6007b04f1..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e251m9_10limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e251m9_10limbs/fesub.c b/src/Specific/solinas32_2e251m9_10limbs/fesub.c
deleted file mode 100644
index 1a01bec17..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/fesub.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fesub(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- out[0] = ((0x7ffffee + x5) - x23);
- out[1] = ((0x3fffffe + x7) - x25);
- out[2] = ((0x3fffffe + x9) - x27);
- out[3] = ((0x3fffffe + x11) - x29);
- out[4] = ((0x3fffffe + x13) - x31);
- out[5] = ((0x3fffffe + x15) - x33);
- out[6] = ((0x3fffffe + x17) - x35);
- out[7] = ((0x3fffffe + x19) - x37);
- out[8] = ((0x3fffffe + x21) - x39);
- out[9] = ((0x3fffffe + x20) - x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e251m9_10limbs/fesub.v b/src/Specific/solinas32_2e251m9_10limbs/fesub.v
deleted file mode 100644
index 227f8b9d6..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e251m9_10limbs.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_2e251m9_10limbs/fesubDisplay.log b/src/Specific/solinas32_2e251m9_10limbs/fesubDisplay.log
deleted file mode 100644
index 590e5d991..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- (((0x3fffffe + x20) - x38), ((0x3fffffe + x21) - x39), ((0x3fffffe + x19) - x37), ((0x3fffffe + x17) - x35), ((0x3fffffe + x15) - x33), ((0x3fffffe + x13) - x31), ((0x3fffffe + x11) - x29), ((0x3fffffe + x9) - x27), ((0x3fffffe + x7) - x25), ((0x7ffffee + x5) - x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e251m9_10limbs/fesubDisplay.v b/src/Specific/solinas32_2e251m9_10limbs/fesubDisplay.v
deleted file mode 100644
index ef7c325a0..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e251m9_10limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e251m9_10limbs/freeze.c b/src/Specific/solinas32_2e251m9_10limbs/freeze.c
deleted file mode 100644
index ace9aa146..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/freeze.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void freeze(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffff7);
- { uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x4, 0x1ffffff);
- { uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x6, 0x1ffffff);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x8, 0x1ffffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x10, 0x1ffffff);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x12, 0x1ffffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x14, 0x1ffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x16, 0x1ffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x18, 0x1ffffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x17, 0x1ffffff);
- { uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- { uint32_t x50 = (x49 & 0x3fffff7);
- { uint32_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- { uint32_t x54 = (x49 & 0x1ffffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- { uint32_t x58 = (x49 & 0x1ffffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- { uint32_t x62 = (x49 & 0x1ffffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- { uint32_t x66 = (x49 & 0x1ffffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- { uint32_t x70 = (x49 & 0x1ffffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- { uint32_t x74 = (x49 & 0x1ffffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- { uint32_t x78 = (x49 & 0x1ffffff);
- { uint32_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- { uint32_t x82 = (x49 & 0x1ffffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- { uint32_t x86 = (x49 & 0x1ffffff);
- { uint32_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- out[0] = x52;
- out[1] = x56;
- out[2] = x60;
- out[3] = x64;
- out[4] = x68;
- out[5] = x72;
- out[6] = x76;
- out[7] = x80;
- out[8] = x84;
- out[9] = x88;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e251m9_10limbs/freeze.v b/src/Specific/solinas32_2e251m9_10limbs/freeze.v
deleted file mode 100644
index 50d82af41..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e251m9_10limbs.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_2e251m9_10limbs/freezeDisplay.log b/src/Specific/solinas32_2e251m9_10limbs/freezeDisplay.log
deleted file mode 100644
index 740c0f5ae..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffff7);
- uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x4, 0x1ffffff);
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x6, 0x1ffffff);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x8, 0x1ffffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x10, 0x1ffffff);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x12, 0x1ffffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x14, 0x1ffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x16, 0x1ffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x18, 0x1ffffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x17, 0x1ffffff);
- uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- uint32_t x50 = (x49 & 0x3fffff7);
- uint32_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- uint32_t x54 = (x49 & 0x1ffffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- uint32_t x58 = (x49 & 0x1ffffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- uint32_t x62 = (x49 & 0x1ffffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- uint32_t x66 = (x49 & 0x1ffffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- uint32_t x70 = (x49 & 0x1ffffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- uint32_t x74 = (x49 & 0x1ffffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- uint32_t x78 = (x49 & 0x1ffffff);
- uint32_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- uint32_t x82 = (x49 & 0x1ffffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- uint32_t x86 = (x49 & 0x1ffffff);
- uint32_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- (Return x88, Return x84, Return x80, Return x76, Return x72, Return x68, Return x64, Return x60, Return x56, Return x52))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e251m9_10limbs/freezeDisplay.v b/src/Specific/solinas32_2e251m9_10limbs/freezeDisplay.v
deleted file mode 100644
index 52ff71f6c..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e251m9_10limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e251m9_10limbs/py_interpreter.sh b/src/Specific/solinas32_2e251m9_10limbs/py_interpreter.sh
deleted file mode 100755
index 76778413e..000000000
--- a/src/Specific/solinas32_2e251m9_10limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**251 - 9' -Dmodulus_bytes='25.1' -Da24='121665'
diff --git a/src/Specific/solinas32_2e251m9_11limbs/CurveParameters.v b/src/Specific/solinas32_2e251m9_11limbs/CurveParameters.v
deleted file mode 100644
index 8a5cd6090..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^251 - 9
-Base: 22 + 9/11
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 11%nat;
- base := 22 + 9/11;
- bitwidth := 32;
- s := 2^251;
- c := [(1, 9)];
- carry_chains := Some [seq 0 (pred 11); [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_2e251m9_11limbs/Synthesis.v b/src/Specific/solinas32_2e251m9_11limbs/Synthesis.v
deleted file mode 100644
index 5499624b8..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e251m9_11limbs.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_2e251m9_11limbs/compiler.sh b/src/Specific/solinas32_2e251m9_11limbs/compiler.sh
deleted file mode 100755
index 47e3c3aa5..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,23,23,23,23,22,23,23,23,23,22}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<251) - 9' "$@"
diff --git a/src/Specific/solinas32_2e251m9_11limbs/compilerxx.sh b/src/Specific/solinas32_2e251m9_11limbs/compilerxx.sh
deleted file mode 100755
index eafa7b7e6..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{23,23,23,23,23,22,23,23,23,23,22}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<251) - 9' "$@"
diff --git a/src/Specific/solinas32_2e251m9_11limbs/feadd.c b/src/Specific/solinas32_2e251m9_11limbs/feadd.c
deleted file mode 100644
index 1763e8727..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/feadd.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void feadd(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- out[0] = (x5 + x25);
- out[1] = (x7 + x27);
- out[2] = (x9 + x29);
- out[3] = (x11 + x31);
- out[4] = (x13 + x33);
- out[5] = (x15 + x35);
- out[6] = (x17 + x37);
- out[7] = (x19 + x39);
- out[8] = (x21 + x41);
- out[9] = (x23 + x43);
- out[10] = (x22 + x42);
- }}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e251m9_11limbs/feadd.v b/src/Specific/solinas32_2e251m9_11limbs/feadd.v
deleted file mode 100644
index 099e2f6c4..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e251m9_11limbs.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_2e251m9_11limbs/feaddDisplay.log b/src/Specific/solinas32_2e251m9_11limbs/feaddDisplay.log
deleted file mode 100644
index 433ecbc2e..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- ((x22 + x42), (x23 + x43), (x21 + x41), (x19 + x39), (x17 + x37), (x15 + x35), (x13 + x33), (x11 + x31), (x9 + x29), (x7 + x27), (x5 + x25)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e251m9_11limbs/feaddDisplay.v b/src/Specific/solinas32_2e251m9_11limbs/feaddDisplay.v
deleted file mode 100644
index 0f42825b4..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e251m9_11limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e251m9_11limbs/fecarry.v b/src/Specific/solinas32_2e251m9_11limbs/fecarry.v
deleted file mode 100644
index 949f6364d..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e251m9_11limbs.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_2e251m9_11limbs/fecarryDisplay.v b/src/Specific/solinas32_2e251m9_11limbs/fecarryDisplay.v
deleted file mode 100644
index 1eb30c444..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e251m9_11limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e251m9_11limbs/femul.c b/src/Specific/solinas32_2e251m9_11limbs/femul.c
deleted file mode 100644
index 1e1f990eb..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/femul.c
+++ /dev/null
@@ -1,85 +0,0 @@
-static void femul(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- { uint64_t x44 = (((uint64_t)x5 * x42) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + ((0x2 * ((uint64_t)x15 * x35)) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (((uint64_t)x21 * x29) + (((uint64_t)x23 * x27) + ((uint64_t)x22 * x25)))))))))));
- { uint64_t x45 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((0x2 * ((uint64_t)x13 * x35)) + ((0x2 * ((uint64_t)x15 * x33)) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + (((uint64_t)x21 * x27) + ((uint64_t)x23 * x25)))))))))) + (0x9 * (0x2 * ((uint64_t)x22 * x42))));
- { uint64_t x46 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((0x2 * ((uint64_t)x11 * x35)) + ((0x2 * ((uint64_t)x13 * x33)) + ((0x2 * ((uint64_t)x15 * x31)) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + ((uint64_t)x21 * x25))))))))) + (0x9 * ((0x2 * ((uint64_t)x23 * x42)) + (0x2 * ((uint64_t)x22 * x43)))));
- { uint64_t x47 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + ((uint64_t)x19 * x25)))))))) + (0x9 * ((0x2 * ((uint64_t)x21 * x42)) + ((0x2 * ((uint64_t)x23 * x43)) + (0x2 * ((uint64_t)x22 * x41))))));
- { uint64_t x48 = ((((uint64_t)x5 * x37) + ((0x2 * ((uint64_t)x7 * x35)) + ((0x2 * ((uint64_t)x9 * x33)) + ((0x2 * ((uint64_t)x11 * x31)) + ((0x2 * ((uint64_t)x13 * x29)) + ((0x2 * ((uint64_t)x15 * x27)) + ((uint64_t)x17 * x25))))))) + (0x9 * ((0x2 * ((uint64_t)x19 * x42)) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + (0x2 * ((uint64_t)x22 * x39)))))));
- { uint64_t x49 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + ((uint64_t)x15 * x25)))))) + (0x9 * (((uint64_t)x17 * x42) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + ((uint64_t)x22 * x37)))))));
- { uint64_t x50 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + ((uint64_t)x13 * x25))))) + (0x9 * ((0x2 * ((uint64_t)x15 * x42)) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + (0x2 * ((uint64_t)x22 * x35)))))))));
- { uint64_t x51 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + ((uint64_t)x11 * x25)))) + (0x9 * ((0x2 * ((uint64_t)x13 * x42)) + ((0x2 * ((uint64_t)x15 * x43)) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + ((0x2 * ((uint64_t)x23 * x35)) + (0x2 * ((uint64_t)x22 * x33))))))))));
- { uint64_t x52 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((uint64_t)x9 * x25))) + (0x9 * ((0x2 * ((uint64_t)x11 * x42)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + ((0x2 * ((uint64_t)x21 * x35)) + ((0x2 * ((uint64_t)x23 * x33)) + (0x2 * ((uint64_t)x22 * x31)))))))))));
- { uint64_t x53 = ((((uint64_t)x5 * x27) + ((uint64_t)x7 * x25)) + (0x9 * ((0x2 * ((uint64_t)x9 * x42)) + ((0x2 * ((uint64_t)x11 * x43)) + ((0x2 * ((uint64_t)x13 * x41)) + ((0x2 * ((uint64_t)x15 * x39)) + (((uint64_t)x17 * x37) + ((0x2 * ((uint64_t)x19 * x35)) + ((0x2 * ((uint64_t)x21 * x33)) + ((0x2 * ((uint64_t)x23 * x31)) + (0x2 * ((uint64_t)x22 * x29))))))))))));
- { uint64_t x54 = (((uint64_t)x5 * x25) + (0x9 * ((0x2 * ((uint64_t)x7 * x42)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((0x2 * ((uint64_t)x17 * x35)) + ((0x2 * ((uint64_t)x19 * x33)) + ((0x2 * ((uint64_t)x21 * x31)) + ((0x2 * ((uint64_t)x23 * x29)) + (0x2 * ((uint64_t)x22 * x27)))))))))))));
- { uint64_t x55 = (x54 >> 0x17);
- { uint32_t x56 = ((uint32_t)x54 & 0x7fffff);
- { uint64_t x57 = (x55 + x53);
- { uint64_t x58 = (x57 >> 0x17);
- { uint32_t x59 = ((uint32_t)x57 & 0x7fffff);
- { uint64_t x60 = (x58 + x52);
- { uint64_t x61 = (x60 >> 0x17);
- { uint32_t x62 = ((uint32_t)x60 & 0x7fffff);
- { uint64_t x63 = (x61 + x51);
- { uint64_t x64 = (x63 >> 0x17);
- { uint32_t x65 = ((uint32_t)x63 & 0x7fffff);
- { uint64_t x66 = (x64 + x50);
- { uint64_t x67 = (x66 >> 0x17);
- { uint32_t x68 = ((uint32_t)x66 & 0x7fffff);
- { uint64_t x69 = (x67 + x49);
- { uint64_t x70 = (x69 >> 0x16);
- { uint32_t x71 = ((uint32_t)x69 & 0x3fffff);
- { uint64_t x72 = (x70 + x48);
- { uint64_t x73 = (x72 >> 0x17);
- { uint32_t x74 = ((uint32_t)x72 & 0x7fffff);
- { uint64_t x75 = (x73 + x47);
- { uint64_t x76 = (x75 >> 0x17);
- { uint32_t x77 = ((uint32_t)x75 & 0x7fffff);
- { uint64_t x78 = (x76 + x46);
- { uint32_t x79 = (uint32_t) (x78 >> 0x17);
- { uint32_t x80 = ((uint32_t)x78 & 0x7fffff);
- { uint64_t x81 = (x79 + x45);
- { uint32_t x82 = (uint32_t) (x81 >> 0x17);
- { uint32_t x83 = ((uint32_t)x81 & 0x7fffff);
- { uint64_t x84 = (x82 + x44);
- { uint32_t x85 = (uint32_t) (x84 >> 0x16);
- { uint32_t x86 = ((uint32_t)x84 & 0x3fffff);
- { uint64_t x87 = (x56 + ((uint64_t)0x9 * x85));
- { uint32_t x88 = (uint32_t) (x87 >> 0x17);
- { uint32_t x89 = ((uint32_t)x87 & 0x7fffff);
- { uint32_t x90 = (x88 + x59);
- { uint32_t x91 = (x90 >> 0x17);
- { uint32_t x92 = (x90 & 0x7fffff);
- out[0] = x89;
- out[1] = x92;
- out[2] = (x91 + x62);
- out[3] = x65;
- out[4] = x68;
- out[5] = x71;
- out[6] = x74;
- out[7] = x77;
- out[8] = x80;
- out[9] = x83;
- out[10] = x86;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e251m9_11limbs/femul.v b/src/Specific/solinas32_2e251m9_11limbs/femul.v
deleted file mode 100644
index 4b48df773..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e251m9_11limbs.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_2e251m9_11limbs/femulDisplay.log b/src/Specific/solinas32_2e251m9_11limbs/femulDisplay.log
deleted file mode 100644
index 45b1fede9..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/femulDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- uint64_t x44 = (((uint64_t)x5 * x42) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + ((0x2 * ((uint64_t)x15 * x35)) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (((uint64_t)x21 * x29) + (((uint64_t)x23 * x27) + ((uint64_t)x22 * x25)))))))))));
- uint64_t x45 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((0x2 * ((uint64_t)x13 * x35)) + ((0x2 * ((uint64_t)x15 * x33)) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + (((uint64_t)x21 * x27) + ((uint64_t)x23 * x25)))))))))) + (0x9 * (0x2 * ((uint64_t)x22 * x42))));
- uint64_t x46 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((0x2 * ((uint64_t)x11 * x35)) + ((0x2 * ((uint64_t)x13 * x33)) + ((0x2 * ((uint64_t)x15 * x31)) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + ((uint64_t)x21 * x25))))))))) + (0x9 * ((0x2 * ((uint64_t)x23 * x42)) + (0x2 * ((uint64_t)x22 * x43)))));
- uint64_t x47 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + ((uint64_t)x19 * x25)))))))) + (0x9 * ((0x2 * ((uint64_t)x21 * x42)) + ((0x2 * ((uint64_t)x23 * x43)) + (0x2 * ((uint64_t)x22 * x41))))));
- uint64_t x48 = ((((uint64_t)x5 * x37) + ((0x2 * ((uint64_t)x7 * x35)) + ((0x2 * ((uint64_t)x9 * x33)) + ((0x2 * ((uint64_t)x11 * x31)) + ((0x2 * ((uint64_t)x13 * x29)) + ((0x2 * ((uint64_t)x15 * x27)) + ((uint64_t)x17 * x25))))))) + (0x9 * ((0x2 * ((uint64_t)x19 * x42)) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + (0x2 * ((uint64_t)x22 * x39)))))));
- uint64_t x49 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + ((uint64_t)x15 * x25)))))) + (0x9 * (((uint64_t)x17 * x42) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + ((uint64_t)x22 * x37)))))));
- uint64_t x50 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + ((uint64_t)x13 * x25))))) + (0x9 * ((0x2 * ((uint64_t)x15 * x42)) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + (0x2 * ((uint64_t)x22 * x35)))))))));
- uint64_t x51 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + ((uint64_t)x11 * x25)))) + (0x9 * ((0x2 * ((uint64_t)x13 * x42)) + ((0x2 * ((uint64_t)x15 * x43)) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + ((0x2 * ((uint64_t)x23 * x35)) + (0x2 * ((uint64_t)x22 * x33))))))))));
- uint64_t x52 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((uint64_t)x9 * x25))) + (0x9 * ((0x2 * ((uint64_t)x11 * x42)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + ((0x2 * ((uint64_t)x21 * x35)) + ((0x2 * ((uint64_t)x23 * x33)) + (0x2 * ((uint64_t)x22 * x31)))))))))));
- uint64_t x53 = ((((uint64_t)x5 * x27) + ((uint64_t)x7 * x25)) + (0x9 * ((0x2 * ((uint64_t)x9 * x42)) + ((0x2 * ((uint64_t)x11 * x43)) + ((0x2 * ((uint64_t)x13 * x41)) + ((0x2 * ((uint64_t)x15 * x39)) + (((uint64_t)x17 * x37) + ((0x2 * ((uint64_t)x19 * x35)) + ((0x2 * ((uint64_t)x21 * x33)) + ((0x2 * ((uint64_t)x23 * x31)) + (0x2 * ((uint64_t)x22 * x29))))))))))));
- uint64_t x54 = (((uint64_t)x5 * x25) + (0x9 * ((0x2 * ((uint64_t)x7 * x42)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((0x2 * ((uint64_t)x17 * x35)) + ((0x2 * ((uint64_t)x19 * x33)) + ((0x2 * ((uint64_t)x21 * x31)) + ((0x2 * ((uint64_t)x23 * x29)) + (0x2 * ((uint64_t)x22 * x27)))))))))))));
- uint64_t x55 = (x54 >> 0x17);
- uint32_t x56 = ((uint32_t)x54 & 0x7fffff);
- uint64_t x57 = (x55 + x53);
- uint64_t x58 = (x57 >> 0x17);
- uint32_t x59 = ((uint32_t)x57 & 0x7fffff);
- uint64_t x60 = (x58 + x52);
- uint64_t x61 = (x60 >> 0x17);
- uint32_t x62 = ((uint32_t)x60 & 0x7fffff);
- uint64_t x63 = (x61 + x51);
- uint64_t x64 = (x63 >> 0x17);
- uint32_t x65 = ((uint32_t)x63 & 0x7fffff);
- uint64_t x66 = (x64 + x50);
- uint64_t x67 = (x66 >> 0x17);
- uint32_t x68 = ((uint32_t)x66 & 0x7fffff);
- uint64_t x69 = (x67 + x49);
- uint64_t x70 = (x69 >> 0x16);
- uint32_t x71 = ((uint32_t)x69 & 0x3fffff);
- uint64_t x72 = (x70 + x48);
- uint64_t x73 = (x72 >> 0x17);
- uint32_t x74 = ((uint32_t)x72 & 0x7fffff);
- uint64_t x75 = (x73 + x47);
- uint64_t x76 = (x75 >> 0x17);
- uint32_t x77 = ((uint32_t)x75 & 0x7fffff);
- uint64_t x78 = (x76 + x46);
- uint32_t x79 = (uint32_t) (x78 >> 0x17);
- uint32_t x80 = ((uint32_t)x78 & 0x7fffff);
- uint64_t x81 = (x79 + x45);
- uint32_t x82 = (uint32_t) (x81 >> 0x17);
- uint32_t x83 = ((uint32_t)x81 & 0x7fffff);
- uint64_t x84 = (x82 + x44);
- uint32_t x85 = (uint32_t) (x84 >> 0x16);
- uint32_t x86 = ((uint32_t)x84 & 0x3fffff);
- uint64_t x87 = (x56 + ((uint64_t)0x9 * x85));
- uint32_t x88 = (uint32_t) (x87 >> 0x17);
- uint32_t x89 = ((uint32_t)x87 & 0x7fffff);
- uint32_t x90 = (x88 + x59);
- uint32_t x91 = (x90 >> 0x17);
- uint32_t x92 = (x90 & 0x7fffff);
- return (Return x86, Return x83, Return x80, Return x77, Return x74, Return x71, Return x68, Return x65, (x91 + x62), Return x92, Return x89))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e251m9_11limbs/femulDisplay.v b/src/Specific/solinas32_2e251m9_11limbs/femulDisplay.v
deleted file mode 100644
index ab9fab85c..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e251m9_11limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e251m9_11limbs/fesquare.c b/src/Specific/solinas32_2e251m9_11limbs/fesquare.c
deleted file mode 100644
index 748440285..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/fesquare.c
+++ /dev/null
@@ -1,74 +0,0 @@
-static void fesquare(uint32_t out[11], const uint32_t in1[11]) {
- { const uint32_t x19 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x21 = (((uint64_t)x2 * x19) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x19 * x2)))))))))));
- { uint64_t x22 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x9 * (0x2 * ((uint64_t)x19 * x19))));
- { uint64_t x23 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x9 * ((0x2 * ((uint64_t)x20 * x19)) + (0x2 * ((uint64_t)x19 * x20)))));
- { uint64_t x24 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x9 * ((0x2 * ((uint64_t)x18 * x19)) + ((0x2 * ((uint64_t)x20 * x20)) + (0x2 * ((uint64_t)x19 * x18))))));
- { uint64_t x25 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x9 * ((0x2 * ((uint64_t)x16 * x19)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (0x2 * ((uint64_t)x19 * x16)))))));
- { uint64_t x26 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x9 * (((uint64_t)x14 * x19) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + ((uint64_t)x19 * x14)))))));
- { uint64_t x27 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x9 * ((0x2 * ((uint64_t)x12 * x19)) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (0x2 * ((uint64_t)x19 * x12)))))))));
- { uint64_t x28 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x9 * ((0x2 * ((uint64_t)x10 * x19)) + ((0x2 * ((uint64_t)x12 * x20)) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + ((0x2 * ((uint64_t)x20 * x12)) + (0x2 * ((uint64_t)x19 * x10))))))))));
- { uint64_t x29 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x9 * ((0x2 * ((uint64_t)x8 * x19)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + (0x2 * ((uint64_t)x19 * x8)))))))))));
- { uint64_t x30 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x9 * ((0x2 * ((uint64_t)x6 * x19)) + ((0x2 * ((uint64_t)x8 * x20)) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + ((0x2 * ((uint64_t)x20 * x8)) + (0x2 * ((uint64_t)x19 * x6))))))))))));
- { uint64_t x31 = (((uint64_t)x2 * x2) + (0x9 * ((0x2 * ((uint64_t)x4 * x19)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + (0x2 * ((uint64_t)x19 * x4)))))))))))));
- { uint64_t x32 = (x31 >> 0x17);
- { uint32_t x33 = ((uint32_t)x31 & 0x7fffff);
- { uint64_t x34 = (x32 + x30);
- { uint64_t x35 = (x34 >> 0x17);
- { uint32_t x36 = ((uint32_t)x34 & 0x7fffff);
- { uint64_t x37 = (x35 + x29);
- { uint64_t x38 = (x37 >> 0x17);
- { uint32_t x39 = ((uint32_t)x37 & 0x7fffff);
- { uint64_t x40 = (x38 + x28);
- { uint64_t x41 = (x40 >> 0x17);
- { uint32_t x42 = ((uint32_t)x40 & 0x7fffff);
- { uint64_t x43 = (x41 + x27);
- { uint64_t x44 = (x43 >> 0x17);
- { uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- { uint64_t x46 = (x44 + x26);
- { uint64_t x47 = (x46 >> 0x16);
- { uint32_t x48 = ((uint32_t)x46 & 0x3fffff);
- { uint64_t x49 = (x47 + x25);
- { uint64_t x50 = (x49 >> 0x17);
- { uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- { uint64_t x52 = (x50 + x24);
- { uint64_t x53 = (x52 >> 0x17);
- { uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- { uint64_t x55 = (x53 + x23);
- { uint32_t x56 = (uint32_t) (x55 >> 0x17);
- { uint32_t x57 = ((uint32_t)x55 & 0x7fffff);
- { uint64_t x58 = (x56 + x22);
- { uint32_t x59 = (uint32_t) (x58 >> 0x17);
- { uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- { uint64_t x61 = (x59 + x21);
- { uint32_t x62 = (uint32_t) (x61 >> 0x16);
- { uint32_t x63 = ((uint32_t)x61 & 0x3fffff);
- { uint64_t x64 = (x33 + ((uint64_t)0x9 * x62));
- { uint32_t x65 = (uint32_t) (x64 >> 0x17);
- { uint32_t x66 = ((uint32_t)x64 & 0x7fffff);
- { uint32_t x67 = (x65 + x36);
- { uint32_t x68 = (x67 >> 0x17);
- { uint32_t x69 = (x67 & 0x7fffff);
- out[0] = x66;
- out[1] = x69;
- out[2] = (x68 + x39);
- out[3] = x42;
- out[4] = x45;
- out[5] = x48;
- out[6] = x51;
- out[7] = x54;
- out[8] = x57;
- out[9] = x60;
- out[10] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e251m9_11limbs/fesquare.v b/src/Specific/solinas32_2e251m9_11limbs/fesquare.v
deleted file mode 100644
index 1a866c866..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e251m9_11limbs.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_2e251m9_11limbs/fesquareDisplay.log b/src/Specific/solinas32_2e251m9_11limbs/fesquareDisplay.log
deleted file mode 100644
index ad2168cc4..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x21 = (((uint64_t)x2 * x19) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x19 * x2)))))))))));
- uint64_t x22 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x9 * (0x2 * ((uint64_t)x19 * x19))));
- uint64_t x23 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x9 * ((0x2 * ((uint64_t)x20 * x19)) + (0x2 * ((uint64_t)x19 * x20)))));
- uint64_t x24 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x9 * ((0x2 * ((uint64_t)x18 * x19)) + ((0x2 * ((uint64_t)x20 * x20)) + (0x2 * ((uint64_t)x19 * x18))))));
- uint64_t x25 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x9 * ((0x2 * ((uint64_t)x16 * x19)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (0x2 * ((uint64_t)x19 * x16)))))));
- uint64_t x26 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x9 * (((uint64_t)x14 * x19) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + ((uint64_t)x19 * x14)))))));
- uint64_t x27 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x9 * ((0x2 * ((uint64_t)x12 * x19)) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (0x2 * ((uint64_t)x19 * x12)))))))));
- uint64_t x28 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x9 * ((0x2 * ((uint64_t)x10 * x19)) + ((0x2 * ((uint64_t)x12 * x20)) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + ((0x2 * ((uint64_t)x20 * x12)) + (0x2 * ((uint64_t)x19 * x10))))))))));
- uint64_t x29 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x9 * ((0x2 * ((uint64_t)x8 * x19)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + (0x2 * ((uint64_t)x19 * x8)))))))))));
- uint64_t x30 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x9 * ((0x2 * ((uint64_t)x6 * x19)) + ((0x2 * ((uint64_t)x8 * x20)) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + ((0x2 * ((uint64_t)x20 * x8)) + (0x2 * ((uint64_t)x19 * x6))))))))))));
- uint64_t x31 = (((uint64_t)x2 * x2) + (0x9 * ((0x2 * ((uint64_t)x4 * x19)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + (0x2 * ((uint64_t)x19 * x4)))))))))))));
- uint64_t x32 = (x31 >> 0x17);
- uint32_t x33 = ((uint32_t)x31 & 0x7fffff);
- uint64_t x34 = (x32 + x30);
- uint64_t x35 = (x34 >> 0x17);
- uint32_t x36 = ((uint32_t)x34 & 0x7fffff);
- uint64_t x37 = (x35 + x29);
- uint64_t x38 = (x37 >> 0x17);
- uint32_t x39 = ((uint32_t)x37 & 0x7fffff);
- uint64_t x40 = (x38 + x28);
- uint64_t x41 = (x40 >> 0x17);
- uint32_t x42 = ((uint32_t)x40 & 0x7fffff);
- uint64_t x43 = (x41 + x27);
- uint64_t x44 = (x43 >> 0x17);
- uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- uint64_t x46 = (x44 + x26);
- uint64_t x47 = (x46 >> 0x16);
- uint32_t x48 = ((uint32_t)x46 & 0x3fffff);
- uint64_t x49 = (x47 + x25);
- uint64_t x50 = (x49 >> 0x17);
- uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- uint64_t x52 = (x50 + x24);
- uint64_t x53 = (x52 >> 0x17);
- uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- uint64_t x55 = (x53 + x23);
- uint32_t x56 = (uint32_t) (x55 >> 0x17);
- uint32_t x57 = ((uint32_t)x55 & 0x7fffff);
- uint64_t x58 = (x56 + x22);
- uint32_t x59 = (uint32_t) (x58 >> 0x17);
- uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- uint64_t x61 = (x59 + x21);
- uint32_t x62 = (uint32_t) (x61 >> 0x16);
- uint32_t x63 = ((uint32_t)x61 & 0x3fffff);
- uint64_t x64 = (x33 + ((uint64_t)0x9 * x62));
- uint32_t x65 = (uint32_t) (x64 >> 0x17);
- uint32_t x66 = ((uint32_t)x64 & 0x7fffff);
- uint32_t x67 = (x65 + x36);
- uint32_t x68 = (x67 >> 0x17);
- uint32_t x69 = (x67 & 0x7fffff);
- return (Return x63, Return x60, Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, (x68 + x39), Return x69, Return x66))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e251m9_11limbs/fesquareDisplay.v b/src/Specific/solinas32_2e251m9_11limbs/fesquareDisplay.v
deleted file mode 100644
index 8ccc39af6..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e251m9_11limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e251m9_11limbs/fesub.c b/src/Specific/solinas32_2e251m9_11limbs/fesub.c
deleted file mode 100644
index 770204419..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/fesub.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void fesub(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- out[0] = ((0xffffee + x5) - x25);
- out[1] = ((0xfffffe + x7) - x27);
- out[2] = ((0xfffffe + x9) - x29);
- out[3] = ((0xfffffe + x11) - x31);
- out[4] = ((0xfffffe + x13) - x33);
- out[5] = ((0x7ffffe + x15) - x35);
- out[6] = ((0xfffffe + x17) - x37);
- out[7] = ((0xfffffe + x19) - x39);
- out[8] = ((0xfffffe + x21) - x41);
- out[9] = ((0xfffffe + x23) - x43);
- out[10] = ((0x7ffffe + x22) - x42);
- }}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e251m9_11limbs/fesub.v b/src/Specific/solinas32_2e251m9_11limbs/fesub.v
deleted file mode 100644
index ac56f27a4..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e251m9_11limbs.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_2e251m9_11limbs/fesubDisplay.log b/src/Specific/solinas32_2e251m9_11limbs/fesubDisplay.log
deleted file mode 100644
index c5f7f2932..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- (((0x7ffffe + x22) - x42), ((0xfffffe + x23) - x43), ((0xfffffe + x21) - x41), ((0xfffffe + x19) - x39), ((0xfffffe + x17) - x37), ((0x7ffffe + x15) - x35), ((0xfffffe + x13) - x33), ((0xfffffe + x11) - x31), ((0xfffffe + x9) - x29), ((0xfffffe + x7) - x27), ((0xffffee + x5) - x25)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e251m9_11limbs/fesubDisplay.v b/src/Specific/solinas32_2e251m9_11limbs/fesubDisplay.v
deleted file mode 100644
index 12b723dd5..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e251m9_11limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e251m9_11limbs/freeze.c b/src/Specific/solinas32_2e251m9_11limbs/freeze.c
deleted file mode 100644
index 056294e18..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/freeze.c
+++ /dev/null
@@ -1,59 +0,0 @@
-static void freeze(uint32_t out[11], const uint32_t in1[11]) {
- { const uint32_t x19 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffff7);
- { uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x4, 0x7fffff);
- { uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x6, 0x7fffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x8, 0x7fffff);
- { uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x10, 0x7fffff);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x12, 0x3fffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x14, 0x7fffff);
- { uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x16, 0x7fffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x18, 0x7fffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x20, 0x7fffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x19, 0x3fffff);
- { uint32_t x54 = cmovznz32(x53, 0x0, 0xffffffff);
- { uint32_t x55 = (x54 & 0x7ffff7);
- { uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x22, Return x55);
- { uint32_t x59 = (x54 & 0x7fffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x25, Return x59);
- { uint32_t x63 = (x54 & 0x7fffff);
- { uint32_t x65, uint8_t x66 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x28, Return x63);
- { uint32_t x67 = (x54 & 0x7fffff);
- { uint32_t x69, uint8_t x70 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x31, Return x67);
- { uint32_t x71 = (x54 & 0x7fffff);
- { uint32_t x73, uint8_t x74 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x34, Return x71);
- { uint32_t x75 = (x54 & 0x3fffff);
- { uint32_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x37, Return x75);
- { uint32_t x79 = (x54 & 0x7fffff);
- { uint32_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x40, Return x79);
- { uint32_t x83 = (x54 & 0x7fffff);
- { uint32_t x85, uint8_t x86 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x43, Return x83);
- { uint32_t x87 = (x54 & 0x7fffff);
- { uint32_t x89, uint8_t x90 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x46, Return x87);
- { uint32_t x91 = (x54 & 0x7fffff);
- { uint32_t x93, uint8_t x94 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x49, Return x91);
- { uint32_t x95 = (x54 & 0x3fffff);
- { uint32_t x97, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x94, Return x52, Return x95);
- out[0] = x57;
- out[1] = x61;
- out[2] = x65;
- out[3] = x69;
- out[4] = x73;
- out[5] = x77;
- out[6] = x81;
- out[7] = x85;
- out[8] = x89;
- out[9] = x93;
- out[10] = x97;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e251m9_11limbs/freeze.v b/src/Specific/solinas32_2e251m9_11limbs/freeze.v
deleted file mode 100644
index 2bb9d911d..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e251m9_11limbs.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_2e251m9_11limbs/freezeDisplay.log b/src/Specific/solinas32_2e251m9_11limbs/freezeDisplay.log
deleted file mode 100644
index c6a24c3eb..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/freezeDisplay.log
+++ /dev/null
@@ -1,41 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffff7);
- uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x4, 0x7fffff);
- uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x6, 0x7fffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x8, 0x7fffff);
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x10, 0x7fffff);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x12, 0x3fffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x14, 0x7fffff);
- uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x16, 0x7fffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x18, 0x7fffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x20, 0x7fffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x19, 0x3fffff);
- uint32_t x54 = cmovznz32(x53, 0x0, 0xffffffff);
- uint32_t x55 = (x54 & 0x7ffff7);
- uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x22, Return x55);
- uint32_t x59 = (x54 & 0x7fffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x25, Return x59);
- uint32_t x63 = (x54 & 0x7fffff);
- uint32_t x65, uint8_t x66 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x28, Return x63);
- uint32_t x67 = (x54 & 0x7fffff);
- uint32_t x69, uint8_t x70 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x31, Return x67);
- uint32_t x71 = (x54 & 0x7fffff);
- uint32_t x73, uint8_t x74 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x34, Return x71);
- uint32_t x75 = (x54 & 0x3fffff);
- uint32_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x37, Return x75);
- uint32_t x79 = (x54 & 0x7fffff);
- uint32_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x40, Return x79);
- uint32_t x83 = (x54 & 0x7fffff);
- uint32_t x85, uint8_t x86 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x43, Return x83);
- uint32_t x87 = (x54 & 0x7fffff);
- uint32_t x89, uint8_t x90 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x46, Return x87);
- uint32_t x91 = (x54 & 0x7fffff);
- uint32_t x93, uint8_t x94 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x49, Return x91);
- uint32_t x95 = (x54 & 0x3fffff);
- uint32_t x97, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x94, Return x52, Return x95);
- (Return x97, Return x93, Return x89, Return x85, Return x81, Return x77, Return x73, Return x69, Return x65, Return x61, Return x57))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e251m9_11limbs/freezeDisplay.v b/src/Specific/solinas32_2e251m9_11limbs/freezeDisplay.v
deleted file mode 100644
index f3267c25f..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e251m9_11limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e251m9_11limbs/py_interpreter.sh b/src/Specific/solinas32_2e251m9_11limbs/py_interpreter.sh
deleted file mode 100755
index 4f27369f1..000000000
--- a/src/Specific/solinas32_2e251m9_11limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**251 - 9' -Dmodulus_bytes='22 + 9/11' -Da24='121665'
diff --git a/src/Specific/solinas32_2e255m19_10limbs/CurveParameters.v b/src/Specific/solinas32_2e255m19_10limbs/CurveParameters.v
deleted file mode 100644
index 64e2e84b7..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^255 - 19
-Base: 25.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 25 + 1/2;
- bitwidth := 32;
- s := 2^255;
- c := [(1, 19)];
- carry_chains := Some [seq 0 (pred 10); [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_2e255m19_10limbs/Synthesis.v b/src/Specific/solinas32_2e255m19_10limbs/Synthesis.v
deleted file mode 100644
index 2964f451e..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs.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_2e255m19_10limbs/compiler.sh b/src/Specific/solinas32_2e255m19_10limbs/compiler.sh
deleted file mode 100755
index 8ff44b7ae..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,25,26,25,26,25,26,25,26,25}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<255) - 19' "$@"
diff --git a/src/Specific/solinas32_2e255m19_10limbs/compilerxx.sh b/src/Specific/solinas32_2e255m19_10limbs/compilerxx.sh
deleted file mode 100755
index cc1e919a6..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,25,26,25,26,25,26,25,26,25}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<255) - 19' "$@"
diff --git a/src/Specific/solinas32_2e255m19_10limbs/feadd.c b/src/Specific/solinas32_2e255m19_10limbs/feadd.c
deleted file mode 100644
index 57dd4e1af..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/feadd.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void feadd(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- out[0] = (x5 + x23);
- out[1] = (x7 + x25);
- out[2] = (x9 + x27);
- out[3] = (x11 + x29);
- out[4] = (x13 + x31);
- out[5] = (x15 + x33);
- out[6] = (x17 + x35);
- out[7] = (x19 + x37);
- out[8] = (x21 + x39);
- out[9] = (x20 + x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m19_10limbs/feadd.v b/src/Specific/solinas32_2e255m19_10limbs/feadd.v
deleted file mode 100644
index 24cdae880..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs.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_2e255m19_10limbs/feaddDisplay.log b/src/Specific/solinas32_2e255m19_10limbs/feaddDisplay.log
deleted file mode 100644
index 8a4c51148..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m19_10limbs/feaddDisplay.v b/src/Specific/solinas32_2e255m19_10limbs/feaddDisplay.v
deleted file mode 100644
index def680096..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e255m19_10limbs/fecarry.c b/src/Specific/solinas32_2e255m19_10limbs/fecarry.c
deleted file mode 100644
index cd97f6d5f..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/fecarry.c
+++ /dev/null
@@ -1,58 +0,0 @@
-static void fecarry(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x19 = (x2 >> 0x1a);
- { uint32_t x20 = (x2 & 0x3ffffff);
- { uint32_t x21 = (x19 + x4);
- { uint32_t x22 = (x21 >> 0x19);
- { uint32_t x23 = (x21 & 0x1ffffff);
- { uint32_t x24 = (x22 + x6);
- { uint32_t x25 = (x24 >> 0x1a);
- { uint32_t x26 = (x24 & 0x3ffffff);
- { uint32_t x27 = (x25 + x8);
- { uint32_t x28 = (x27 >> 0x19);
- { uint32_t x29 = (x27 & 0x1ffffff);
- { uint32_t x30 = (x28 + x10);
- { uint32_t x31 = (x30 >> 0x1a);
- { uint32_t x32 = (x30 & 0x3ffffff);
- { uint32_t x33 = (x31 + x12);
- { uint32_t x34 = (x33 >> 0x19);
- { uint32_t x35 = (x33 & 0x1ffffff);
- { uint32_t x36 = (x34 + x14);
- { uint32_t x37 = (x36 >> 0x1a);
- { uint32_t x38 = (x36 & 0x3ffffff);
- { uint32_t x39 = (x37 + x16);
- { uint32_t x40 = (x39 >> 0x19);
- { uint32_t x41 = (x39 & 0x1ffffff);
- { uint32_t x42 = (x40 + x18);
- { uint32_t x43 = (x42 >> 0x1a);
- { uint32_t x44 = (x42 & 0x3ffffff);
- { uint32_t x45 = (x43 + x17);
- { uint32_t x46 = (x45 >> 0x19);
- { uint32_t x47 = (x45 & 0x1ffffff);
- { uint32_t x48 = (x20 + (0x13 * x46));
- { uint32_t x49 = (x48 >> 0x1a);
- { uint32_t x50 = (x48 & 0x3ffffff);
- { uint32_t x51 = (x49 + x23);
- { uint32_t x52 = (x51 >> 0x19);
- { uint32_t x53 = (x51 & 0x1ffffff);
- out[0] = x50;
- out[1] = x53;
- out[2] = (x52 + x26);
- out[3] = x29;
- out[4] = x32;
- out[5] = x35;
- out[6] = x38;
- out[7] = x41;
- out[8] = x44;
- out[9] = x47;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m19_10limbs/fecarry.v b/src/Specific/solinas32_2e255m19_10limbs/fecarry.v
deleted file mode 100644
index e66f12956..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs.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_2e255m19_10limbs/fecarryDisplay.log b/src/Specific/solinas32_2e255m19_10limbs/fecarryDisplay.log
deleted file mode 100644
index 186e797bb..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/fecarryDisplay.log
+++ /dev/null
@@ -1,42 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x19 = (x2 >> 0x1a);
- uint32_t x20 = (x2 & 0x3ffffff);
- uint32_t x21 = (x19 + x4);
- uint32_t x22 = (x21 >> 0x19);
- uint32_t x23 = (x21 & 0x1ffffff);
- uint32_t x24 = (x22 + x6);
- uint32_t x25 = (x24 >> 0x1a);
- uint32_t x26 = (x24 & 0x3ffffff);
- uint32_t x27 = (x25 + x8);
- uint32_t x28 = (x27 >> 0x19);
- uint32_t x29 = (x27 & 0x1ffffff);
- uint32_t x30 = (x28 + x10);
- uint32_t x31 = (x30 >> 0x1a);
- uint32_t x32 = (x30 & 0x3ffffff);
- uint32_t x33 = (x31 + x12);
- uint32_t x34 = (x33 >> 0x19);
- uint32_t x35 = (x33 & 0x1ffffff);
- uint32_t x36 = (x34 + x14);
- uint32_t x37 = (x36 >> 0x1a);
- uint32_t x38 = (x36 & 0x3ffffff);
- uint32_t x39 = (x37 + x16);
- uint32_t x40 = (x39 >> 0x19);
- uint32_t x41 = (x39 & 0x1ffffff);
- uint32_t x42 = (x40 + x18);
- uint32_t x43 = (x42 >> 0x1a);
- uint32_t x44 = (x42 & 0x3ffffff);
- uint32_t x45 = (x43 + x17);
- uint32_t x46 = (x45 >> 0x19);
- uint32_t x47 = (x45 & 0x1ffffff);
- uint32_t x48 = (x20 + (0x13 * x46));
- uint32_t x49 = (x48 >> 0x1a);
- uint32_t x50 = (x48 & 0x3ffffff);
- uint32_t x51 = (x49 + x23);
- uint32_t x52 = (x51 >> 0x19);
- uint32_t x53 = (x51 & 0x1ffffff);
- return (Return x47, Return x44, Return x41, Return x38, Return x35, Return x32, Return x29, (x52 + x26), Return x53, Return x50))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m19_10limbs/fecarryDisplay.v b/src/Specific/solinas32_2e255m19_10limbs/fecarryDisplay.v
deleted file mode 100644
index d81ff83cc..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e255m19_10limbs/femul.c b/src/Specific/solinas32_2e255m19_10limbs/femul.c
deleted file mode 100644
index 74037da91..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/femul.c
+++ /dev/null
@@ -1,78 +0,0 @@
-static void femul(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- { uint64_t x40 = (((uint64_t)x5 * x38) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + (((uint64_t)x21 * x25) + ((uint64_t)x20 * x23))))))))));
- { uint64_t x41 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + (((uint64_t)x9 * x35) + ((0x2 * ((uint64_t)x11 * x33)) + (((uint64_t)x13 * x31) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + ((0x2 * ((uint64_t)x19 * x25)) + ((uint64_t)x21 * x23))))))))) + (0x13 * (0x2 * ((uint64_t)x20 * x38))));
- { uint64_t x42 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + ((uint64_t)x19 * x23)))))))) + (0x13 * (((uint64_t)x21 * x38) + ((uint64_t)x20 * x39))));
- { uint64_t x43 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + (((uint64_t)x9 * x31) + ((0x2 * ((uint64_t)x11 * x29)) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + ((uint64_t)x17 * x23))))))) + (0x13 * ((0x2 * ((uint64_t)x19 * x38)) + (((uint64_t)x21 * x39) + (0x2 * ((uint64_t)x20 * x37))))));
- { uint64_t x44 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + ((uint64_t)x15 * x23)))))) + (0x13 * (((uint64_t)x17 * x38) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + ((uint64_t)x20 * x35))))));
- { uint64_t x45 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + (((uint64_t)x9 * x27) + ((0x2 * ((uint64_t)x11 * x25)) + ((uint64_t)x13 * x23))))) + (0x13 * ((0x2 * ((uint64_t)x15 * x38)) + (((uint64_t)x17 * x39) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + (0x2 * ((uint64_t)x20 * x33))))))));
- { uint64_t x46 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + ((uint64_t)x11 * x23)))) + (0x13 * (((uint64_t)x13 * x38) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + ((uint64_t)x20 * x31))))))));
- { uint64_t x47 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((uint64_t)x9 * x23))) + (0x13 * ((0x2 * ((uint64_t)x11 * x38)) + (((uint64_t)x13 * x39) + ((0x2 * ((uint64_t)x15 * x37)) + (((uint64_t)x17 * x35) + ((0x2 * ((uint64_t)x19 * x33)) + (((uint64_t)x21 * x31) + (0x2 * ((uint64_t)x20 * x29))))))))));
- { uint64_t x48 = ((((uint64_t)x5 * x25) + ((uint64_t)x7 * x23)) + (0x13 * (((uint64_t)x9 * x38) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (((uint64_t)x21 * x29) + ((uint64_t)x20 * x27))))))))));
- { uint64_t x49 = (((uint64_t)x5 * x23) + (0x13 * ((0x2 * ((uint64_t)x7 * x38)) + (((uint64_t)x9 * x39) + ((0x2 * ((uint64_t)x11 * x37)) + (((uint64_t)x13 * x35) + ((0x2 * ((uint64_t)x15 * x33)) + (((uint64_t)x17 * x31) + ((0x2 * ((uint64_t)x19 * x29)) + (((uint64_t)x21 * x27) + (0x2 * ((uint64_t)x20 * x25))))))))))));
- { uint64_t x50 = (x49 >> 0x1a);
- { uint32_t x51 = ((uint32_t)x49 & 0x3ffffff);
- { uint64_t x52 = (x50 + x48);
- { uint64_t x53 = (x52 >> 0x19);
- { uint32_t x54 = ((uint32_t)x52 & 0x1ffffff);
- { uint64_t x55 = (x53 + x47);
- { uint64_t x56 = (x55 >> 0x1a);
- { uint32_t x57 = ((uint32_t)x55 & 0x3ffffff);
- { uint64_t x58 = (x56 + x46);
- { uint64_t x59 = (x58 >> 0x19);
- { uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- { uint64_t x61 = (x59 + x45);
- { uint64_t x62 = (x61 >> 0x1a);
- { uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- { uint64_t x64 = (x62 + x44);
- { uint64_t x65 = (x64 >> 0x19);
- { uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- { uint64_t x67 = (x65 + x43);
- { uint64_t x68 = (x67 >> 0x1a);
- { uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- { uint64_t x70 = (x68 + x42);
- { uint64_t x71 = (x70 >> 0x19);
- { uint32_t x72 = ((uint32_t)x70 & 0x1ffffff);
- { uint64_t x73 = (x71 + x41);
- { uint64_t x74 = (x73 >> 0x1a);
- { uint32_t x75 = ((uint32_t)x73 & 0x3ffffff);
- { uint64_t x76 = (x74 + x40);
- { uint64_t x77 = (x76 >> 0x19);
- { uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- { uint64_t x79 = (x51 + (0x13 * x77));
- { uint32_t x80 = (uint32_t) (x79 >> 0x1a);
- { uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- { uint32_t x82 = (x80 + x54);
- { uint32_t x83 = (x82 >> 0x19);
- { uint32_t x84 = (x82 & 0x1ffffff);
- out[0] = x81;
- out[1] = x84;
- out[2] = (x83 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m19_10limbs/femul.v b/src/Specific/solinas32_2e255m19_10limbs/femul.v
deleted file mode 100644
index a0eac4611..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs.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_2e255m19_10limbs/femulDisplay.log b/src/Specific/solinas32_2e255m19_10limbs/femulDisplay.log
deleted file mode 100644
index a193e6b6e..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/femulDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- uint64_t x40 = (((uint64_t)x5 * x38) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + (((uint64_t)x21 * x25) + ((uint64_t)x20 * x23))))))))));
- uint64_t x41 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + (((uint64_t)x9 * x35) + ((0x2 * ((uint64_t)x11 * x33)) + (((uint64_t)x13 * x31) + ((0x2 * ((uint64_t)x15 * x29)) + (((uint64_t)x17 * x27) + ((0x2 * ((uint64_t)x19 * x25)) + ((uint64_t)x21 * x23))))))))) + (0x13 * (0x2 * ((uint64_t)x20 * x38))));
- uint64_t x42 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + ((uint64_t)x19 * x23)))))))) + (0x13 * (((uint64_t)x21 * x38) + ((uint64_t)x20 * x39))));
- uint64_t x43 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + (((uint64_t)x9 * x31) + ((0x2 * ((uint64_t)x11 * x29)) + (((uint64_t)x13 * x27) + ((0x2 * ((uint64_t)x15 * x25)) + ((uint64_t)x17 * x23))))))) + (0x13 * ((0x2 * ((uint64_t)x19 * x38)) + (((uint64_t)x21 * x39) + (0x2 * ((uint64_t)x20 * x37))))));
- uint64_t x44 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + (((uint64_t)x13 * x25) + ((uint64_t)x15 * x23)))))) + (0x13 * (((uint64_t)x17 * x38) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + ((uint64_t)x20 * x35))))));
- uint64_t x45 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + (((uint64_t)x9 * x27) + ((0x2 * ((uint64_t)x11 * x25)) + ((uint64_t)x13 * x23))))) + (0x13 * ((0x2 * ((uint64_t)x15 * x38)) + (((uint64_t)x17 * x39) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + (0x2 * ((uint64_t)x20 * x33))))))));
- uint64_t x46 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + (((uint64_t)x9 * x25) + ((uint64_t)x11 * x23)))) + (0x13 * (((uint64_t)x13 * x38) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + ((uint64_t)x20 * x31))))))));
- uint64_t x47 = ((((uint64_t)x5 * x27) + ((0x2 * ((uint64_t)x7 * x25)) + ((uint64_t)x9 * x23))) + (0x13 * ((0x2 * ((uint64_t)x11 * x38)) + (((uint64_t)x13 * x39) + ((0x2 * ((uint64_t)x15 * x37)) + (((uint64_t)x17 * x35) + ((0x2 * ((uint64_t)x19 * x33)) + (((uint64_t)x21 * x31) + (0x2 * ((uint64_t)x20 * x29))))))))));
- uint64_t x48 = ((((uint64_t)x5 * x25) + ((uint64_t)x7 * x23)) + (0x13 * (((uint64_t)x9 * x38) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (((uint64_t)x21 * x29) + ((uint64_t)x20 * x27))))))))));
- uint64_t x49 = (((uint64_t)x5 * x23) + (0x13 * ((0x2 * ((uint64_t)x7 * x38)) + (((uint64_t)x9 * x39) + ((0x2 * ((uint64_t)x11 * x37)) + (((uint64_t)x13 * x35) + ((0x2 * ((uint64_t)x15 * x33)) + (((uint64_t)x17 * x31) + ((0x2 * ((uint64_t)x19 * x29)) + (((uint64_t)x21 * x27) + (0x2 * ((uint64_t)x20 * x25))))))))))));
- uint64_t x50 = (x49 >> 0x1a);
- uint32_t x51 = ((uint32_t)x49 & 0x3ffffff);
- uint64_t x52 = (x50 + x48);
- uint64_t x53 = (x52 >> 0x19);
- uint32_t x54 = ((uint32_t)x52 & 0x1ffffff);
- uint64_t x55 = (x53 + x47);
- uint64_t x56 = (x55 >> 0x1a);
- uint32_t x57 = ((uint32_t)x55 & 0x3ffffff);
- uint64_t x58 = (x56 + x46);
- uint64_t x59 = (x58 >> 0x19);
- uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- uint64_t x61 = (x59 + x45);
- uint64_t x62 = (x61 >> 0x1a);
- uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- uint64_t x64 = (x62 + x44);
- uint64_t x65 = (x64 >> 0x19);
- uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- uint64_t x67 = (x65 + x43);
- uint64_t x68 = (x67 >> 0x1a);
- uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- uint64_t x70 = (x68 + x42);
- uint64_t x71 = (x70 >> 0x19);
- uint32_t x72 = ((uint32_t)x70 & 0x1ffffff);
- uint64_t x73 = (x71 + x41);
- uint64_t x74 = (x73 >> 0x1a);
- uint32_t x75 = ((uint32_t)x73 & 0x3ffffff);
- uint64_t x76 = (x74 + x40);
- uint64_t x77 = (x76 >> 0x19);
- uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- uint64_t x79 = (x51 + (0x13 * x77));
- uint32_t x80 = (uint32_t) (x79 >> 0x1a);
- uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- uint32_t x82 = (x80 + x54);
- uint32_t x83 = (x82 >> 0x19);
- uint32_t x84 = (x82 & 0x1ffffff);
- return (Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x83 + x57), Return x84, Return x81))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m19_10limbs/femulDisplay.v b/src/Specific/solinas32_2e255m19_10limbs/femulDisplay.v
deleted file mode 100644
index 75f315b5e..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e255m19_10limbs/fesquare.c b/src/Specific/solinas32_2e255m19_10limbs/fesquare.c
deleted file mode 100644
index 877264dce..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/fesquare.c
+++ /dev/null
@@ -1,68 +0,0 @@
-static void fesquare(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x19 = (((uint64_t)x2 * x17) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x17 * x2))))))))));
- { uint64_t x20 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x13 * (0x2 * ((uint64_t)x17 * x17))));
- { uint64_t x21 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x13 * (((uint64_t)x18 * x17) + ((uint64_t)x17 * x18))));
- { uint64_t x22 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x13 * ((0x2 * ((uint64_t)x16 * x17)) + (((uint64_t)x18 * x18) + (0x2 * ((uint64_t)x17 * x16))))));
- { uint64_t x23 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x13 * (((uint64_t)x14 * x17) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((uint64_t)x17 * x14))))));
- { uint64_t x24 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x13 * ((0x2 * ((uint64_t)x12 * x17)) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (0x2 * ((uint64_t)x17 * x12))))))));
- { uint64_t x25 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x13 * (((uint64_t)x10 * x17) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + ((uint64_t)x17 * x10))))))));
- { uint64_t x26 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x13 * ((0x2 * ((uint64_t)x8 * x17)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + (0x2 * ((uint64_t)x17 * x8))))))))));
- { uint64_t x27 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x13 * (((uint64_t)x6 * x17) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((uint64_t)x17 * x6))))))))));
- { uint64_t x28 = (((uint64_t)x2 * x2) + (0x13 * ((0x2 * ((uint64_t)x4 * x17)) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + (0x2 * ((uint64_t)x17 * x4))))))))))));
- { uint64_t x29 = (x28 >> 0x1a);
- { uint32_t x30 = ((uint32_t)x28 & 0x3ffffff);
- { uint64_t x31 = (x29 + x27);
- { uint64_t x32 = (x31 >> 0x19);
- { uint32_t x33 = ((uint32_t)x31 & 0x1ffffff);
- { uint64_t x34 = (x32 + x26);
- { uint64_t x35 = (x34 >> 0x1a);
- { uint32_t x36 = ((uint32_t)x34 & 0x3ffffff);
- { uint64_t x37 = (x35 + x25);
- { uint64_t x38 = (x37 >> 0x19);
- { uint32_t x39 = ((uint32_t)x37 & 0x1ffffff);
- { uint64_t x40 = (x38 + x24);
- { uint64_t x41 = (x40 >> 0x1a);
- { uint32_t x42 = ((uint32_t)x40 & 0x3ffffff);
- { uint64_t x43 = (x41 + x23);
- { uint64_t x44 = (x43 >> 0x19);
- { uint32_t x45 = ((uint32_t)x43 & 0x1ffffff);
- { uint64_t x46 = (x44 + x22);
- { uint64_t x47 = (x46 >> 0x1a);
- { uint32_t x48 = ((uint32_t)x46 & 0x3ffffff);
- { uint64_t x49 = (x47 + x21);
- { uint64_t x50 = (x49 >> 0x19);
- { uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- { uint64_t x52 = (x50 + x20);
- { uint64_t x53 = (x52 >> 0x1a);
- { uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- { uint64_t x55 = (x53 + x19);
- { uint64_t x56 = (x55 >> 0x19);
- { uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- { uint64_t x58 = (x30 + (0x13 * x56));
- { uint32_t x59 = (uint32_t) (x58 >> 0x1a);
- { uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- { uint32_t x61 = (x59 + x33);
- { uint32_t x62 = (x61 >> 0x19);
- { uint32_t x63 = (x61 & 0x1ffffff);
- out[0] = x60;
- out[1] = x63;
- out[2] = (x62 + x36);
- out[3] = x39;
- out[4] = x42;
- out[5] = x45;
- out[6] = x48;
- out[7] = x51;
- out[8] = x54;
- out[9] = x57;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m19_10limbs/fesquare.v b/src/Specific/solinas32_2e255m19_10limbs/fesquare.v
deleted file mode 100644
index 922ddacd2..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs.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_2e255m19_10limbs/fesquareDisplay.log b/src/Specific/solinas32_2e255m19_10limbs/fesquareDisplay.log
deleted file mode 100644
index 2490dc647..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x19 = (((uint64_t)x2 * x17) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x17 * x2))))))))));
- uint64_t x20 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x13 * (0x2 * ((uint64_t)x17 * x17))));
- uint64_t x21 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x13 * (((uint64_t)x18 * x17) + ((uint64_t)x17 * x18))));
- uint64_t x22 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x13 * ((0x2 * ((uint64_t)x16 * x17)) + (((uint64_t)x18 * x18) + (0x2 * ((uint64_t)x17 * x16))))));
- uint64_t x23 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x13 * (((uint64_t)x14 * x17) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((uint64_t)x17 * x14))))));
- uint64_t x24 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x13 * ((0x2 * ((uint64_t)x12 * x17)) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (0x2 * ((uint64_t)x17 * x12))))))));
- uint64_t x25 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x13 * (((uint64_t)x10 * x17) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + ((uint64_t)x17 * x10))))))));
- uint64_t x26 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x13 * ((0x2 * ((uint64_t)x8 * x17)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + (0x2 * ((uint64_t)x17 * x8))))))))));
- uint64_t x27 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x13 * (((uint64_t)x6 * x17) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((uint64_t)x17 * x6))))))))));
- uint64_t x28 = (((uint64_t)x2 * x2) + (0x13 * ((0x2 * ((uint64_t)x4 * x17)) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + (0x2 * ((uint64_t)x17 * x4))))))))))));
- uint64_t x29 = (x28 >> 0x1a);
- uint32_t x30 = ((uint32_t)x28 & 0x3ffffff);
- uint64_t x31 = (x29 + x27);
- uint64_t x32 = (x31 >> 0x19);
- uint32_t x33 = ((uint32_t)x31 & 0x1ffffff);
- uint64_t x34 = (x32 + x26);
- uint64_t x35 = (x34 >> 0x1a);
- uint32_t x36 = ((uint32_t)x34 & 0x3ffffff);
- uint64_t x37 = (x35 + x25);
- uint64_t x38 = (x37 >> 0x19);
- uint32_t x39 = ((uint32_t)x37 & 0x1ffffff);
- uint64_t x40 = (x38 + x24);
- uint64_t x41 = (x40 >> 0x1a);
- uint32_t x42 = ((uint32_t)x40 & 0x3ffffff);
- uint64_t x43 = (x41 + x23);
- uint64_t x44 = (x43 >> 0x19);
- uint32_t x45 = ((uint32_t)x43 & 0x1ffffff);
- uint64_t x46 = (x44 + x22);
- uint64_t x47 = (x46 >> 0x1a);
- uint32_t x48 = ((uint32_t)x46 & 0x3ffffff);
- uint64_t x49 = (x47 + x21);
- uint64_t x50 = (x49 >> 0x19);
- uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- uint64_t x52 = (x50 + x20);
- uint64_t x53 = (x52 >> 0x1a);
- uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- uint64_t x55 = (x53 + x19);
- uint64_t x56 = (x55 >> 0x19);
- uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- uint64_t x58 = (x30 + (0x13 * x56));
- uint32_t x59 = (uint32_t) (x58 >> 0x1a);
- uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- uint32_t x61 = (x59 + x33);
- uint32_t x62 = (x61 >> 0x19);
- uint32_t x63 = (x61 & 0x1ffffff);
- return (Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, Return x39, (x62 + x36), Return x63, Return x60))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m19_10limbs/fesquareDisplay.v b/src/Specific/solinas32_2e255m19_10limbs/fesquareDisplay.v
deleted file mode 100644
index dec94ac67..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e255m19_10limbs/fesub.c b/src/Specific/solinas32_2e255m19_10limbs/fesub.c
deleted file mode 100644
index b92ed2bbe..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/fesub.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fesub(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- out[0] = ((0x7ffffda + x5) - x23);
- out[1] = ((0x3fffffe + x7) - x25);
- out[2] = ((0x7fffffe + x9) - x27);
- out[3] = ((0x3fffffe + x11) - x29);
- out[4] = ((0x7fffffe + x13) - x31);
- out[5] = ((0x3fffffe + x15) - x33);
- out[6] = ((0x7fffffe + x17) - x35);
- out[7] = ((0x3fffffe + x19) - x37);
- out[8] = ((0x7fffffe + x21) - x39);
- out[9] = ((0x3fffffe + x20) - x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m19_10limbs/fesub.v b/src/Specific/solinas32_2e255m19_10limbs/fesub.v
deleted file mode 100644
index a86e0990c..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs.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_2e255m19_10limbs/fesubDisplay.log b/src/Specific/solinas32_2e255m19_10limbs/fesubDisplay.log
deleted file mode 100644
index bb18a6a51..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- (((0x3fffffe + x20) - x38), ((0x7fffffe + x21) - x39), ((0x3fffffe + x19) - x37), ((0x7fffffe + x17) - x35), ((0x3fffffe + x15) - x33), ((0x7fffffe + x13) - x31), ((0x3fffffe + x11) - x29), ((0x7fffffe + x9) - x27), ((0x3fffffe + x7) - x25), ((0x7ffffda + x5) - x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m19_10limbs/fesubDisplay.v b/src/Specific/solinas32_2e255m19_10limbs/fesubDisplay.v
deleted file mode 100644
index 9d8793d5c..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e255m19_10limbs/freeze.c b/src/Specific/solinas32_2e255m19_10limbs/freeze.c
deleted file mode 100644
index 89de979a8..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/freeze.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void freeze(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x20; uint8_t/*bool*/ x21 = _subborrow_u26(0x0, x2, 0x3ffffed, &x20);
- { uint32_t x23; uint8_t/*bool*/ x24 = _subborrow_u25(x21, x4, 0x1ffffff, &x23);
- { uint32_t x26; uint8_t/*bool*/ x27 = _subborrow_u26(x24, x6, 0x3ffffff, &x26);
- { uint32_t x29; uint8_t/*bool*/ x30 = _subborrow_u25(x27, x8, 0x1ffffff, &x29);
- { uint32_t x32; uint8_t/*bool*/ x33 = _subborrow_u26(x30, x10, 0x3ffffff, &x32);
- { uint32_t x35; uint8_t/*bool*/ x36 = _subborrow_u25(x33, x12, 0x1ffffff, &x35);
- { uint32_t x38; uint8_t/*bool*/ x39 = _subborrow_u26(x36, x14, 0x3ffffff, &x38);
- { uint32_t x41; uint8_t/*bool*/ x42 = _subborrow_u25(x39, x16, 0x1ffffff, &x41);
- { uint32_t x44; uint8_t/*bool*/ x45 = _subborrow_u26(x42, x18, 0x3ffffff, &x44);
- { uint32_t x47; uint8_t/*bool*/ x48 = _subborrow_u25(x45, x17, 0x1ffffff, &x47);
- { uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- { uint32_t x50 = (x49 & 0x3ffffed);
- { uint32_t x52; uint8_t/*bool*/ x53 = _addcarryx_u26(0x0, x20, x50, &x52);
- { uint32_t x54 = (x49 & 0x1ffffff);
- { uint32_t x56; uint8_t/*bool*/ x57 = _addcarryx_u25(x53, x23, x54, &x56);
- { uint32_t x58 = (x49 & 0x3ffffff);
- { uint32_t x60; uint8_t/*bool*/ x61 = _addcarryx_u26(x57, x26, x58, &x60);
- { uint32_t x62 = (x49 & 0x1ffffff);
- { uint32_t x64; uint8_t/*bool*/ x65 = _addcarryx_u25(x61, x29, x62, &x64);
- { uint32_t x66 = (x49 & 0x3ffffff);
- { uint32_t x68; uint8_t/*bool*/ x69 = _addcarryx_u26(x65, x32, x66, &x68);
- { uint32_t x70 = (x49 & 0x1ffffff);
- { uint32_t x72; uint8_t/*bool*/ x73 = _addcarryx_u25(x69, x35, x70, &x72);
- { uint32_t x74 = (x49 & 0x3ffffff);
- { uint32_t x76; uint8_t/*bool*/ x77 = _addcarryx_u26(x73, x38, x74, &x76);
- { uint32_t x78 = (x49 & 0x1ffffff);
- { uint32_t x80; uint8_t/*bool*/ x81 = _addcarryx_u25(x77, x41, x78, &x80);
- { uint32_t x82 = (x49 & 0x3ffffff);
- { uint32_t x84; uint8_t/*bool*/ x85 = _addcarryx_u26(x81, x44, x82, &x84);
- { uint32_t x86 = (x49 & 0x1ffffff);
- { uint32_t x88; uint8_t/*bool*/ _ = _addcarryx_u25(x85, x47, x86, &x88);
- out[0] = x52;
- out[1] = x56;
- out[2] = x60;
- out[3] = x64;
- out[4] = x68;
- out[5] = x72;
- out[6] = x76;
- out[7] = x80;
- out[8] = x84;
- out[9] = x88;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m19_10limbs/freeze.v b/src/Specific/solinas32_2e255m19_10limbs/freeze.v
deleted file mode 100644
index 0802b3851..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs.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_2e255m19_10limbs/freezeDisplay.log b/src/Specific/solinas32_2e255m19_10limbs/freezeDisplay.log
deleted file mode 100644
index 71d7c1cbb..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x20, uint8_t/*bool*/ x21 = subborrow_u26(0x0, x2, 0x3ffffed);
- uint32_t x23, uint8_t/*bool*/ x24 = subborrow_u25(x21, x4, 0x1ffffff);
- uint32_t x26, uint8_t/*bool*/ x27 = subborrow_u26(x24, x6, 0x3ffffff);
- uint32_t x29, uint8_t/*bool*/ x30 = subborrow_u25(x27, x8, 0x1ffffff);
- uint32_t x32, uint8_t/*bool*/ x33 = subborrow_u26(x30, x10, 0x3ffffff);
- uint32_t x35, uint8_t/*bool*/ x36 = subborrow_u25(x33, x12, 0x1ffffff);
- uint32_t x38, uint8_t/*bool*/ x39 = subborrow_u26(x36, x14, 0x3ffffff);
- uint32_t x41, uint8_t/*bool*/ x42 = subborrow_u25(x39, x16, 0x1ffffff);
- uint32_t x44, uint8_t/*bool*/ x45 = subborrow_u26(x42, x18, 0x3ffffff);
- uint32_t x47, uint8_t/*bool*/ x48 = subborrow_u25(x45, x17, 0x1ffffff);
- uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- uint32_t x50 = (x49 & 0x3ffffed);
- uint32_t x52, uint8_t/*bool*/ x53 = addcarryx_u26(0x0, x20, x50);
- uint32_t x54 = (x49 & 0x1ffffff);
- uint32_t x56, uint8_t/*bool*/ x57 = addcarryx_u25(x53, x23, x54);
- uint32_t x58 = (x49 & 0x3ffffff);
- uint32_t x60, uint8_t/*bool*/ x61 = addcarryx_u26(x57, x26, x58);
- uint32_t x62 = (x49 & 0x1ffffff);
- uint32_t x64, uint8_t/*bool*/ x65 = addcarryx_u25(x61, x29, x62);
- uint32_t x66 = (x49 & 0x3ffffff);
- uint32_t x68, uint8_t/*bool*/ x69 = addcarryx_u26(x65, x32, x66);
- uint32_t x70 = (x49 & 0x1ffffff);
- uint32_t x72, uint8_t/*bool*/ x73 = addcarryx_u25(x69, x35, x70);
- uint32_t x74 = (x49 & 0x3ffffff);
- uint32_t x76, uint8_t/*bool*/ x77 = addcarryx_u26(x73, x38, x74);
- uint32_t x78 = (x49 & 0x1ffffff);
- uint32_t x80, uint8_t/*bool*/ x81 = addcarryx_u25(x77, x41, x78);
- uint32_t x82 = (x49 & 0x3ffffff);
- uint32_t x84, uint8_t/*bool*/ x85 = addcarryx_u26(x81, x44, x82);
- uint32_t x86 = (x49 & 0x1ffffff);
- uint32_t x88, uint8_t/*bool*/ _ = addcarryx_u25(x85, x47, x86);
- (Return x88, Return x84, Return x80, Return x76, Return x72, Return x68, Return x64, Return x60, Return x56, Return x52))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m19_10limbs/freezeDisplay.v b/src/Specific/solinas32_2e255m19_10limbs/freezeDisplay.v
deleted file mode 100644
index 0b6b38f33..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e255m19_10limbs/py_interpreter.sh b/src/Specific/solinas32_2e255m19_10limbs/py_interpreter.sh
deleted file mode 100755
index c5b125c07..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**255 - 19' -Dmodulus_bytes='25.5' -Da24='121665'
diff --git a/src/Specific/solinas32_2e255m19_10limbs_donna/CurveParameters.v b/src/Specific/solinas32_2e255m19_10limbs_donna/CurveParameters.v
deleted file mode 100644
index 1be3437a3..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/CurveParameters.v
+++ /dev/null
@@ -1,257 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^255 - 19
-Base: 25.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 25 + 1/2;
- bitwidth := 32;
- s := 2^255;
- c := [(1, 19)];
- carry_chains := Some [seq 0 (pred 10); [0; 1]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := false;
- freeze := Some true;
- ladderstep := false;
-
- mul_code := Some (fun a b =>
- (* Micro-optimized form from curve25519-donna by Adam Langley (Google) and Daniel Bernstein. See <https://github.com/agl/curve25519-donna/blob/master/LICENSE.md>. *)
- let '(in9, in8, in7, in6, in5, in4, in3, in2, in1, in0) := a in
- let '(in29, in28, in27, in26, in25, in24, in23, in22, in21, in20) := b in
- dlet output0 := in20 * in0 in
- dlet output1 := in20 * in1 +
- in21 * in0 in
- dlet output2 := 2 * in21 * in1 +
- in20 * in2 +
- in22 * in0 in
- dlet output3 := in21 * in2 +
- in22 * in1 +
- in20 * in3 +
- in23 * in0 in
- dlet output4 := in22 * in2 +
- 2 * (in21 * in3 +
- in23 * in1) +
- in20 * in4 +
- in24 * in0 in
- dlet output5 := in22 * in3 +
- in23 * in2 +
- in21 * in4 +
- in24 * in1 +
- in20 * in5 +
- in25 * in0 in
- dlet output6 := 2 * (in23 * in3 +
- in21 * in5 +
- in25 * in1) +
- in22 * in4 +
- in24 * in2 +
- in20 * in6 +
- in26 * in0 in
- dlet output7 := in23 * in4 +
- in24 * in3 +
- in22 * in5 +
- in25 * in2 +
- in21 * in6 +
- in26 * in1 +
- in20 * in7 +
- in27 * in0 in
- dlet output8 := in24 * in4 +
- 2 * (in23 * in5 +
- in25 * in3 +
- in21 * in7 +
- in27 * in1) +
- in22 * in6 +
- in26 * in2 +
- in20 * in8 +
- in28 * in0 in
- dlet output9 := in24 * in5 +
- in25 * in4 +
- in23 * in6 +
- in26 * in3 +
- in22 * in7 +
- in27 * in2 +
- in21 * in8 +
- in28 * in1 +
- in20 * in9 +
- in29 * in0 in
- dlet output10 := 2 * (in25 * in5 +
- in23 * in7 +
- in27 * in3 +
- in21 * in9 +
- in29 * in1) +
- in24 * in6 +
- in26 * in4 +
- in22 * in8 +
- in28 * in2 in
- dlet output11 := in25 * in6 +
- in26 * in5 +
- in24 * in7 +
- in27 * in4 +
- in23 * in8 +
- in28 * in3 +
- in22 * in9 +
- in29 * in2 in
- dlet output12 := in26 * in6 +
- 2 * (in25 * in7 +
- in27 * in5 +
- in23 * in9 +
- in29 * in3) +
- in24 * in8 +
- in28 * in4 in
- dlet output13 := in26 * in7 +
- in27 * in6 +
- in25 * in8 +
- in28 * in5 +
- in24 * in9 +
- in29 * in4 in
- dlet output14 := 2 * (in27 * in7 +
- in25 * in9 +
- in29 * in5) +
- in26 * in8 +
- in28 * in6 in
- dlet output15 := in27 * in8 +
- in28 * in7 +
- in26 * in9 +
- in29 * in6 in
- dlet output16 := in28 * in8 +
- 2 * (in27 * in9 +
- in29 * in7) in
- dlet output17 := in28 * in9 +
- in29 * in8 in
- dlet output18 := 2 * in29 * in9 in
- dlet output8 := output8 + output18 << 4 in
- dlet output8 := output8 + output18 << 1 in
- dlet output8 := output8 + output18 in
- dlet output7 := output7 + output17 << 4 in
- dlet output7 := output7 + output17 << 1 in
- dlet output7 := output7 + output17 in
- dlet output6 := output6 + output16 << 4 in
- dlet output6 := output6 + output16 << 1 in
- dlet output6 := output6 + output16 in
- dlet output5 := output5 + output15 << 4 in
- dlet output5 := output5 + output15 << 1 in
- dlet output5 := output5 + output15 in
- dlet output4 := output4 + output14 << 4 in
- dlet output4 := output4 + output14 << 1 in
- dlet output4 := output4 + output14 in
- dlet output3 := output3 + output13 << 4 in
- dlet output3 := output3 + output13 << 1 in
- dlet output3 := output3 + output13 in
- dlet output2 := output2 + output12 << 4 in
- dlet output2 := output2 + output12 << 1 in
- dlet output2 := output2 + output12 in
- dlet output1 := output1 + output11 << 4 in
- dlet output1 := output1 + output11 << 1 in
- dlet output1 := output1 + output11 in
- dlet output0 := output0 + output10 << 4 in
- dlet output0 := output0 + output10 << 1 in
- dlet output0 := output0 + output10 in
- (output9, output8, output7, output6, output5, output4, output3, output2, output1, output0)
- );
-
- square_code := Some (fun a =>
- (* Micro-optimized form from curve25519-donna by Adam Langley (Google) and Daniel Bernstein. See <https://github.com/agl/curve25519-donna/blob/master/LICENSE.md>. *)
- let '(in9, in8, in7, in6, in5, in4, in3, in2, in1, in0) := a in
- dlet output0 := in0 * in0 in
- dlet output1 := 2 * in0 * in1 in
- dlet output2 := 2 * (in1 * in1 +
- in0 * in2) in
- dlet output3 := 2 * (in1 * in2 +
- in0 * in3) in
- dlet output4 := in2 * in2 +
- 4 * in1 * in3 +
- 2 * in0 * in4 in
- dlet output5 := 2 * (in2 * in3 +
- in1 * in4 +
- in0 * in5) in
- dlet output6 := 2 * (in3 * in3 +
- in2 * in4 +
- in0 * in6 +
- 2 * in1 * in5) in
- dlet output7 := 2 * (in3 * in4 +
- in2 * in5 +
- in1 * in6 +
- in0 * in7) in
- dlet output8 := in4 * in4 +
- 2 * (in2 * in6 +
- in0 * in8 +
- 2 * (in1 * in7 +
- in3 * in5)) in
- dlet output9 := 2 * (in4 * in5 +
- in3 * in6 +
- in2 * in7 +
- in1 * in8 +
- in0 * in9) in
- dlet output10 := 2 * (in5 * in5 +
- in4 * in6 +
- in2 * in8 +
- 2 * (in3 * in7 +
- in1 * in9)) in
- dlet output11 := 2 * (in5 * in6 +
- in4 * in7 +
- in3 * in8 +
- in2 * in9) in
- dlet output12 := in6 * in6 +
- 2 * (in4 * in8 +
- 2 * (in5 * in7 +
- in3 * in9)) in
- dlet output13 := 2 * (in6 * in7 +
- in5 * in8 +
- in4 * in9) in
- dlet output14 := 2 * (in7 * in7 +
- in6 * in8 +
- 2 * in5 * in9) in
- dlet output15 := 2 * (in7 * in8 +
- in6 * in9) in
- dlet output16 := in8 * in8 +
- 4 * in7 * in9 in
- dlet output17 := 2 * in8 * in9 in
- dlet output18 := 2 * in9 * in9 in
- dlet output8 := output8 + output18 << 4 in
- dlet output8 := output8 + output18 << 1 in
- dlet output8 := output8 + output18 in
- dlet output7 := output7 + output17 << 4 in
- dlet output7 := output7 + output17 << 1 in
- dlet output7 := output7 + output17 in
- dlet output6 := output6 + output16 << 4 in
- dlet output6 := output6 + output16 << 1 in
- dlet output6 := output6 + output16 in
- dlet output5 := output5 + output15 << 4 in
- dlet output5 := output5 + output15 << 1 in
- dlet output5 := output5 + output15 in
- dlet output4 := output4 + output14 << 4 in
- dlet output4 := output4 + output14 << 1 in
- dlet output4 := output4 + output14 in
- dlet output3 := output3 + output13 << 4 in
- dlet output3 := output3 + output13 << 1 in
- dlet output3 := output3 + output13 in
- dlet output2 := output2 + output12 << 4 in
- dlet output2 := output2 + output12 << 1 in
- dlet output2 := output2 + output12 in
- dlet output1 := output1 + output11 << 4 in
- dlet output1 := output1 + output11 << 1 in
- dlet output1 := output1 + output11 in
- dlet output0 := output0 + output10 << 4 in
- dlet output0 := output0 + output10 << 1 in
- dlet output0 := output0 + output10 in
- (output9, output8, output7, output6, output5, output4, output3, output2, output1, output0)
- );
-
- 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_2e255m19_10limbs_donna/Synthesis.v b/src/Specific/solinas32_2e255m19_10limbs_donna/Synthesis.v
deleted file mode 100644
index c27bd5b77..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs_donna.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_2e255m19_10limbs_donna/compiler.sh b/src/Specific/solinas32_2e255m19_10limbs_donna/compiler.sh
deleted file mode 100755
index 8ff44b7ae..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,25,26,25,26,25,26,25,26,25}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<255) - 19' "$@"
diff --git a/src/Specific/solinas32_2e255m19_10limbs_donna/compilerxx.sh b/src/Specific/solinas32_2e255m19_10limbs_donna/compilerxx.sh
deleted file mode 100755
index cc1e919a6..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,25,26,25,26,25,26,25,26,25}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<255) - 19' "$@"
diff --git a/src/Specific/solinas32_2e255m19_10limbs_donna/feadd.c b/src/Specific/solinas32_2e255m19_10limbs_donna/feadd.c
deleted file mode 100644
index 57dd4e1af..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/feadd.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void feadd(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- out[0] = (x5 + x23);
- out[1] = (x7 + x25);
- out[2] = (x9 + x27);
- out[3] = (x11 + x29);
- out[4] = (x13 + x31);
- out[5] = (x15 + x33);
- out[6] = (x17 + x35);
- out[7] = (x19 + x37);
- out[8] = (x21 + x39);
- out[9] = (x20 + x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m19_10limbs_donna/feadd.v b/src/Specific/solinas32_2e255m19_10limbs_donna/feadd.v
deleted file mode 100644
index 7d4318c78..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs_donna.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_2e255m19_10limbs_donna/feaddDisplay.log b/src/Specific/solinas32_2e255m19_10limbs_donna/feaddDisplay.log
deleted file mode 100644
index 8a4c51148..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m19_10limbs_donna/feaddDisplay.v b/src/Specific/solinas32_2e255m19_10limbs_donna/feaddDisplay.v
deleted file mode 100644
index 233b9f92b..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs_donna.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e255m19_10limbs_donna/fecarry.c b/src/Specific/solinas32_2e255m19_10limbs_donna/fecarry.c
deleted file mode 100644
index cd97f6d5f..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/fecarry.c
+++ /dev/null
@@ -1,58 +0,0 @@
-static void fecarry(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x19 = (x2 >> 0x1a);
- { uint32_t x20 = (x2 & 0x3ffffff);
- { uint32_t x21 = (x19 + x4);
- { uint32_t x22 = (x21 >> 0x19);
- { uint32_t x23 = (x21 & 0x1ffffff);
- { uint32_t x24 = (x22 + x6);
- { uint32_t x25 = (x24 >> 0x1a);
- { uint32_t x26 = (x24 & 0x3ffffff);
- { uint32_t x27 = (x25 + x8);
- { uint32_t x28 = (x27 >> 0x19);
- { uint32_t x29 = (x27 & 0x1ffffff);
- { uint32_t x30 = (x28 + x10);
- { uint32_t x31 = (x30 >> 0x1a);
- { uint32_t x32 = (x30 & 0x3ffffff);
- { uint32_t x33 = (x31 + x12);
- { uint32_t x34 = (x33 >> 0x19);
- { uint32_t x35 = (x33 & 0x1ffffff);
- { uint32_t x36 = (x34 + x14);
- { uint32_t x37 = (x36 >> 0x1a);
- { uint32_t x38 = (x36 & 0x3ffffff);
- { uint32_t x39 = (x37 + x16);
- { uint32_t x40 = (x39 >> 0x19);
- { uint32_t x41 = (x39 & 0x1ffffff);
- { uint32_t x42 = (x40 + x18);
- { uint32_t x43 = (x42 >> 0x1a);
- { uint32_t x44 = (x42 & 0x3ffffff);
- { uint32_t x45 = (x43 + x17);
- { uint32_t x46 = (x45 >> 0x19);
- { uint32_t x47 = (x45 & 0x1ffffff);
- { uint32_t x48 = (x20 + (0x13 * x46));
- { uint32_t x49 = (x48 >> 0x1a);
- { uint32_t x50 = (x48 & 0x3ffffff);
- { uint32_t x51 = (x49 + x23);
- { uint32_t x52 = (x51 >> 0x19);
- { uint32_t x53 = (x51 & 0x1ffffff);
- out[0] = x50;
- out[1] = x53;
- out[2] = (x52 + x26);
- out[3] = x29;
- out[4] = x32;
- out[5] = x35;
- out[6] = x38;
- out[7] = x41;
- out[8] = x44;
- out[9] = x47;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m19_10limbs_donna/fecarry.v b/src/Specific/solinas32_2e255m19_10limbs_donna/fecarry.v
deleted file mode 100644
index 534d538d0..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs_donna.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_2e255m19_10limbs_donna/fecarryDisplay.log b/src/Specific/solinas32_2e255m19_10limbs_donna/fecarryDisplay.log
deleted file mode 100644
index 186e797bb..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/fecarryDisplay.log
+++ /dev/null
@@ -1,42 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x19 = (x2 >> 0x1a);
- uint32_t x20 = (x2 & 0x3ffffff);
- uint32_t x21 = (x19 + x4);
- uint32_t x22 = (x21 >> 0x19);
- uint32_t x23 = (x21 & 0x1ffffff);
- uint32_t x24 = (x22 + x6);
- uint32_t x25 = (x24 >> 0x1a);
- uint32_t x26 = (x24 & 0x3ffffff);
- uint32_t x27 = (x25 + x8);
- uint32_t x28 = (x27 >> 0x19);
- uint32_t x29 = (x27 & 0x1ffffff);
- uint32_t x30 = (x28 + x10);
- uint32_t x31 = (x30 >> 0x1a);
- uint32_t x32 = (x30 & 0x3ffffff);
- uint32_t x33 = (x31 + x12);
- uint32_t x34 = (x33 >> 0x19);
- uint32_t x35 = (x33 & 0x1ffffff);
- uint32_t x36 = (x34 + x14);
- uint32_t x37 = (x36 >> 0x1a);
- uint32_t x38 = (x36 & 0x3ffffff);
- uint32_t x39 = (x37 + x16);
- uint32_t x40 = (x39 >> 0x19);
- uint32_t x41 = (x39 & 0x1ffffff);
- uint32_t x42 = (x40 + x18);
- uint32_t x43 = (x42 >> 0x1a);
- uint32_t x44 = (x42 & 0x3ffffff);
- uint32_t x45 = (x43 + x17);
- uint32_t x46 = (x45 >> 0x19);
- uint32_t x47 = (x45 & 0x1ffffff);
- uint32_t x48 = (x20 + (0x13 * x46));
- uint32_t x49 = (x48 >> 0x1a);
- uint32_t x50 = (x48 & 0x3ffffff);
- uint32_t x51 = (x49 + x23);
- uint32_t x52 = (x51 >> 0x19);
- uint32_t x53 = (x51 & 0x1ffffff);
- return (Return x47, Return x44, Return x41, Return x38, Return x35, Return x32, Return x29, (x52 + x26), Return x53, Return x50))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m19_10limbs_donna/fecarryDisplay.v b/src/Specific/solinas32_2e255m19_10limbs_donna/fecarryDisplay.v
deleted file mode 100644
index cda477ab7..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs_donna.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e255m19_10limbs_donna/femul.c b/src/Specific/solinas32_2e255m19_10limbs_donna/femul.c
deleted file mode 100644
index 748842194..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/femul.c
+++ /dev/null
@@ -1,114 +0,0 @@
-static void femul(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- { uint64_t x40 = ((uint64_t)x23 * x5);
- { uint64_t x41 = (((uint64_t)x23 * x7) + ((uint64_t)x25 * x5));
- { uint64_t x42 = ((((uint64_t)(0x2 * x25) * x7) + ((uint64_t)x23 * x9)) + ((uint64_t)x27 * x5));
- { uint64_t x43 = (((((uint64_t)x25 * x9) + ((uint64_t)x27 * x7)) + ((uint64_t)x23 * x11)) + ((uint64_t)x29 * x5));
- { uint64_t x44 = (((((uint64_t)x27 * x9) + (0x2 * (((uint64_t)x25 * x11) + ((uint64_t)x29 * x7)))) + ((uint64_t)x23 * x13)) + ((uint64_t)x31 * x5));
- { uint64_t x45 = (((((((uint64_t)x27 * x11) + ((uint64_t)x29 * x9)) + ((uint64_t)x25 * x13)) + ((uint64_t)x31 * x7)) + ((uint64_t)x23 * x15)) + ((uint64_t)x33 * x5));
- { uint64_t x46 = (((((0x2 * ((((uint64_t)x29 * x11) + ((uint64_t)x25 * x15)) + ((uint64_t)x33 * x7))) + ((uint64_t)x27 * x13)) + ((uint64_t)x31 * x9)) + ((uint64_t)x23 * x17)) + ((uint64_t)x35 * x5));
- { uint64_t x47 = (((((((((uint64_t)x29 * x13) + ((uint64_t)x31 * x11)) + ((uint64_t)x27 * x15)) + ((uint64_t)x33 * x9)) + ((uint64_t)x25 * x17)) + ((uint64_t)x35 * x7)) + ((uint64_t)x23 * x19)) + ((uint64_t)x37 * x5));
- { uint64_t x48 = (((((((uint64_t)x31 * x13) + (0x2 * (((((uint64_t)x29 * x15) + ((uint64_t)x33 * x11)) + ((uint64_t)x25 * x19)) + ((uint64_t)x37 * x7)))) + ((uint64_t)x27 * x17)) + ((uint64_t)x35 * x9)) + ((uint64_t)x23 * x21)) + ((uint64_t)x39 * x5));
- { uint64_t x49 = (((((((((((uint64_t)x31 * x15) + ((uint64_t)x33 * x13)) + ((uint64_t)x29 * x17)) + ((uint64_t)x35 * x11)) + ((uint64_t)x27 * x19)) + ((uint64_t)x37 * x9)) + ((uint64_t)x25 * x21)) + ((uint64_t)x39 * x7)) + ((uint64_t)x23 * x20)) + ((uint64_t)x38 * x5));
- { uint64_t x50 = (((((0x2 * ((((((uint64_t)x33 * x15) + ((uint64_t)x29 * x19)) + ((uint64_t)x37 * x11)) + ((uint64_t)x25 * x20)) + ((uint64_t)x38 * x7))) + ((uint64_t)x31 * x17)) + ((uint64_t)x35 * x13)) + ((uint64_t)x27 * x21)) + ((uint64_t)x39 * x9));
- { uint64_t x51 = (((((((((uint64_t)x33 * x17) + ((uint64_t)x35 * x15)) + ((uint64_t)x31 * x19)) + ((uint64_t)x37 * x13)) + ((uint64_t)x29 * x21)) + ((uint64_t)x39 * x11)) + ((uint64_t)x27 * x20)) + ((uint64_t)x38 * x9));
- { uint64_t x52 = (((((uint64_t)x35 * x17) + (0x2 * (((((uint64_t)x33 * x19) + ((uint64_t)x37 * x15)) + ((uint64_t)x29 * x20)) + ((uint64_t)x38 * x11)))) + ((uint64_t)x31 * x21)) + ((uint64_t)x39 * x13));
- { uint64_t x53 = (((((((uint64_t)x35 * x19) + ((uint64_t)x37 * x17)) + ((uint64_t)x33 * x21)) + ((uint64_t)x39 * x15)) + ((uint64_t)x31 * x20)) + ((uint64_t)x38 * x13));
- { uint64_t x54 = (((0x2 * ((((uint64_t)x37 * x19) + ((uint64_t)x33 * x20)) + ((uint64_t)x38 * x15))) + ((uint64_t)x35 * x21)) + ((uint64_t)x39 * x17));
- { uint64_t x55 = (((((uint64_t)x37 * x21) + ((uint64_t)x39 * x19)) + ((uint64_t)x35 * x20)) + ((uint64_t)x38 * x17));
- { uint64_t x56 = (((uint64_t)x39 * x21) + (0x2 * (((uint64_t)x37 * x20) + ((uint64_t)x38 * x19))));
- { uint64_t x57 = (((uint64_t)x39 * x20) + ((uint64_t)x38 * x21));
- { uint64_t x58 = ((uint64_t)(0x2 * x38) * x20);
- { uint64_t x59 = (x48 + (x58 << 0x4));
- { uint64_t x60 = (x59 + (x58 << 0x1));
- { uint64_t x61 = (x60 + x58);
- { uint64_t x62 = (x47 + (x57 << 0x4));
- { uint64_t x63 = (x62 + (x57 << 0x1));
- { uint64_t x64 = (x63 + x57);
- { uint64_t x65 = (x46 + (x56 << 0x4));
- { uint64_t x66 = (x65 + (x56 << 0x1));
- { uint64_t x67 = (x66 + x56);
- { uint64_t x68 = (x45 + (x55 << 0x4));
- { uint64_t x69 = (x68 + (x55 << 0x1));
- { uint64_t x70 = (x69 + x55);
- { uint64_t x71 = (x44 + (x54 << 0x4));
- { uint64_t x72 = (x71 + (x54 << 0x1));
- { uint64_t x73 = (x72 + x54);
- { uint64_t x74 = (x43 + (x53 << 0x4));
- { uint64_t x75 = (x74 + (x53 << 0x1));
- { uint64_t x76 = (x75 + x53);
- { uint64_t x77 = (x42 + (x52 << 0x4));
- { uint64_t x78 = (x77 + (x52 << 0x1));
- { uint64_t x79 = (x78 + x52);
- { uint64_t x80 = (x41 + (x51 << 0x4));
- { uint64_t x81 = (x80 + (x51 << 0x1));
- { uint64_t x82 = (x81 + x51);
- { uint64_t x83 = (x40 + (x50 << 0x4));
- { uint64_t x84 = (x83 + (x50 << 0x1));
- { uint64_t x85 = (x84 + x50);
- { uint64_t x86 = (x85 >> 0x1a);
- { uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- { uint64_t x88 = (x86 + x82);
- { uint64_t x89 = (x88 >> 0x19);
- { uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- { uint64_t x91 = (x89 + x79);
- { uint64_t x92 = (x91 >> 0x1a);
- { uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- { uint64_t x94 = (x92 + x76);
- { uint64_t x95 = (x94 >> 0x19);
- { uint32_t x96 = ((uint32_t)x94 & 0x1ffffff);
- { uint64_t x97 = (x95 + x73);
- { uint64_t x98 = (x97 >> 0x1a);
- { uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- { uint64_t x100 = (x98 + x70);
- { uint64_t x101 = (x100 >> 0x19);
- { uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- { uint64_t x103 = (x101 + x67);
- { uint64_t x104 = (x103 >> 0x1a);
- { uint32_t x105 = ((uint32_t)x103 & 0x3ffffff);
- { uint64_t x106 = (x104 + x64);
- { uint64_t x107 = (x106 >> 0x19);
- { uint32_t x108 = ((uint32_t)x106 & 0x1ffffff);
- { uint64_t x109 = (x107 + x61);
- { uint64_t x110 = (x109 >> 0x1a);
- { uint32_t x111 = ((uint32_t)x109 & 0x3ffffff);
- { uint64_t x112 = (x110 + x49);
- { uint64_t x113 = (x112 >> 0x19);
- { uint32_t x114 = ((uint32_t)x112 & 0x1ffffff);
- { uint64_t x115 = (x87 + (0x13 * x113));
- { uint32_t x116 = (uint32_t) (x115 >> 0x1a);
- { uint32_t x117 = ((uint32_t)x115 & 0x3ffffff);
- { uint32_t x118 = (x116 + x90);
- { uint32_t x119 = (x118 >> 0x19);
- { uint32_t x120 = (x118 & 0x1ffffff);
- out[0] = x117;
- out[1] = x120;
- out[2] = (x119 + x93);
- out[3] = x96;
- out[4] = x99;
- out[5] = x102;
- out[6] = x105;
- out[7] = x108;
- out[8] = x111;
- out[9] = x114;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m19_10limbs_donna/femul.v b/src/Specific/solinas32_2e255m19_10limbs_donna/femul.v
deleted file mode 100644
index 918b0e5a9..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs_donna.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_2e255m19_10limbs_donna/femulDisplay.log b/src/Specific/solinas32_2e255m19_10limbs_donna/femulDisplay.log
deleted file mode 100644
index 1650f4c9d..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/femulDisplay.log
+++ /dev/null
@@ -1,88 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- uint64_t x40 = ((uint64_t)x23 * x5);
- uint64_t x41 = (((uint64_t)x23 * x7) + ((uint64_t)x25 * x5));
- uint64_t x42 = ((((uint64_t)(0x2 * x25) * x7) + ((uint64_t)x23 * x9)) + ((uint64_t)x27 * x5));
- uint64_t x43 = (((((uint64_t)x25 * x9) + ((uint64_t)x27 * x7)) + ((uint64_t)x23 * x11)) + ((uint64_t)x29 * x5));
- uint64_t x44 = (((((uint64_t)x27 * x9) + (0x2 * (((uint64_t)x25 * x11) + ((uint64_t)x29 * x7)))) + ((uint64_t)x23 * x13)) + ((uint64_t)x31 * x5));
- uint64_t x45 = (((((((uint64_t)x27 * x11) + ((uint64_t)x29 * x9)) + ((uint64_t)x25 * x13)) + ((uint64_t)x31 * x7)) + ((uint64_t)x23 * x15)) + ((uint64_t)x33 * x5));
- uint64_t x46 = (((((0x2 * ((((uint64_t)x29 * x11) + ((uint64_t)x25 * x15)) + ((uint64_t)x33 * x7))) + ((uint64_t)x27 * x13)) + ((uint64_t)x31 * x9)) + ((uint64_t)x23 * x17)) + ((uint64_t)x35 * x5));
- uint64_t x47 = (((((((((uint64_t)x29 * x13) + ((uint64_t)x31 * x11)) + ((uint64_t)x27 * x15)) + ((uint64_t)x33 * x9)) + ((uint64_t)x25 * x17)) + ((uint64_t)x35 * x7)) + ((uint64_t)x23 * x19)) + ((uint64_t)x37 * x5));
- uint64_t x48 = (((((((uint64_t)x31 * x13) + (0x2 * (((((uint64_t)x29 * x15) + ((uint64_t)x33 * x11)) + ((uint64_t)x25 * x19)) + ((uint64_t)x37 * x7)))) + ((uint64_t)x27 * x17)) + ((uint64_t)x35 * x9)) + ((uint64_t)x23 * x21)) + ((uint64_t)x39 * x5));
- uint64_t x49 = (((((((((((uint64_t)x31 * x15) + ((uint64_t)x33 * x13)) + ((uint64_t)x29 * x17)) + ((uint64_t)x35 * x11)) + ((uint64_t)x27 * x19)) + ((uint64_t)x37 * x9)) + ((uint64_t)x25 * x21)) + ((uint64_t)x39 * x7)) + ((uint64_t)x23 * x20)) + ((uint64_t)x38 * x5));
- uint64_t x50 = (((((0x2 * ((((((uint64_t)x33 * x15) + ((uint64_t)x29 * x19)) + ((uint64_t)x37 * x11)) + ((uint64_t)x25 * x20)) + ((uint64_t)x38 * x7))) + ((uint64_t)x31 * x17)) + ((uint64_t)x35 * x13)) + ((uint64_t)x27 * x21)) + ((uint64_t)x39 * x9));
- uint64_t x51 = (((((((((uint64_t)x33 * x17) + ((uint64_t)x35 * x15)) + ((uint64_t)x31 * x19)) + ((uint64_t)x37 * x13)) + ((uint64_t)x29 * x21)) + ((uint64_t)x39 * x11)) + ((uint64_t)x27 * x20)) + ((uint64_t)x38 * x9));
- uint64_t x52 = (((((uint64_t)x35 * x17) + (0x2 * (((((uint64_t)x33 * x19) + ((uint64_t)x37 * x15)) + ((uint64_t)x29 * x20)) + ((uint64_t)x38 * x11)))) + ((uint64_t)x31 * x21)) + ((uint64_t)x39 * x13));
- uint64_t x53 = (((((((uint64_t)x35 * x19) + ((uint64_t)x37 * x17)) + ((uint64_t)x33 * x21)) + ((uint64_t)x39 * x15)) + ((uint64_t)x31 * x20)) + ((uint64_t)x38 * x13));
- uint64_t x54 = (((0x2 * ((((uint64_t)x37 * x19) + ((uint64_t)x33 * x20)) + ((uint64_t)x38 * x15))) + ((uint64_t)x35 * x21)) + ((uint64_t)x39 * x17));
- uint64_t x55 = (((((uint64_t)x37 * x21) + ((uint64_t)x39 * x19)) + ((uint64_t)x35 * x20)) + ((uint64_t)x38 * x17));
- uint64_t x56 = (((uint64_t)x39 * x21) + (0x2 * (((uint64_t)x37 * x20) + ((uint64_t)x38 * x19))));
- uint64_t x57 = (((uint64_t)x39 * x20) + ((uint64_t)x38 * x21));
- uint64_t x58 = ((uint64_t)(0x2 * x38) * x20);
- uint64_t x59 = (x48 + (x58 << 0x4));
- uint64_t x60 = (x59 + (x58 << 0x1));
- uint64_t x61 = (x60 + x58);
- uint64_t x62 = (x47 + (x57 << 0x4));
- uint64_t x63 = (x62 + (x57 << 0x1));
- uint64_t x64 = (x63 + x57);
- uint64_t x65 = (x46 + (x56 << 0x4));
- uint64_t x66 = (x65 + (x56 << 0x1));
- uint64_t x67 = (x66 + x56);
- uint64_t x68 = (x45 + (x55 << 0x4));
- uint64_t x69 = (x68 + (x55 << 0x1));
- uint64_t x70 = (x69 + x55);
- uint64_t x71 = (x44 + (x54 << 0x4));
- uint64_t x72 = (x71 + (x54 << 0x1));
- uint64_t x73 = (x72 + x54);
- uint64_t x74 = (x43 + (x53 << 0x4));
- uint64_t x75 = (x74 + (x53 << 0x1));
- uint64_t x76 = (x75 + x53);
- uint64_t x77 = (x42 + (x52 << 0x4));
- uint64_t x78 = (x77 + (x52 << 0x1));
- uint64_t x79 = (x78 + x52);
- uint64_t x80 = (x41 + (x51 << 0x4));
- uint64_t x81 = (x80 + (x51 << 0x1));
- uint64_t x82 = (x81 + x51);
- uint64_t x83 = (x40 + (x50 << 0x4));
- uint64_t x84 = (x83 + (x50 << 0x1));
- uint64_t x85 = (x84 + x50);
- uint64_t x86 = (x85 >> 0x1a);
- uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- uint64_t x88 = (x86 + x82);
- uint64_t x89 = (x88 >> 0x19);
- uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- uint64_t x91 = (x89 + x79);
- uint64_t x92 = (x91 >> 0x1a);
- uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- uint64_t x94 = (x92 + x76);
- uint64_t x95 = (x94 >> 0x19);
- uint32_t x96 = ((uint32_t)x94 & 0x1ffffff);
- uint64_t x97 = (x95 + x73);
- uint64_t x98 = (x97 >> 0x1a);
- uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- uint64_t x100 = (x98 + x70);
- uint64_t x101 = (x100 >> 0x19);
- uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- uint64_t x103 = (x101 + x67);
- uint64_t x104 = (x103 >> 0x1a);
- uint32_t x105 = ((uint32_t)x103 & 0x3ffffff);
- uint64_t x106 = (x104 + x64);
- uint64_t x107 = (x106 >> 0x19);
- uint32_t x108 = ((uint32_t)x106 & 0x1ffffff);
- uint64_t x109 = (x107 + x61);
- uint64_t x110 = (x109 >> 0x1a);
- uint32_t x111 = ((uint32_t)x109 & 0x3ffffff);
- uint64_t x112 = (x110 + x49);
- uint64_t x113 = (x112 >> 0x19);
- uint32_t x114 = ((uint32_t)x112 & 0x1ffffff);
- uint64_t x115 = (x87 + (0x13 * x113));
- uint32_t x116 = (uint32_t) (x115 >> 0x1a);
- uint32_t x117 = ((uint32_t)x115 & 0x3ffffff);
- uint32_t x118 = (x116 + x90);
- uint32_t x119 = (x118 >> 0x19);
- uint32_t x120 = (x118 & 0x1ffffff);
- return (Return x114, Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, (x119 + x93), Return x120, Return x117))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m19_10limbs_donna/femulDisplay.v b/src/Specific/solinas32_2e255m19_10limbs_donna/femulDisplay.v
deleted file mode 100644
index c0973e1e2..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs_donna.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e255m19_10limbs_donna/fesquare.c b/src/Specific/solinas32_2e255m19_10limbs_donna/fesquare.c
deleted file mode 100644
index e72449a1b..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/fesquare.c
+++ /dev/null
@@ -1,104 +0,0 @@
-static void fesquare(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x19 = ((uint64_t)x2 * x2);
- { uint64_t x20 = ((uint64_t)(0x2 * x2) * x4);
- { uint64_t x21 = (0x2 * (((uint64_t)x4 * x4) + ((uint64_t)x2 * x6)));
- { uint64_t x22 = (0x2 * (((uint64_t)x4 * x6) + ((uint64_t)x2 * x8)));
- { uint64_t x23 = ((((uint64_t)x6 * x6) + ((uint64_t)(0x4 * x4) * x8)) + ((uint64_t)(0x2 * x2) * x10));
- { uint64_t x24 = (0x2 * ((((uint64_t)x6 * x8) + ((uint64_t)x4 * x10)) + ((uint64_t)x2 * x12)));
- { uint64_t x25 = (0x2 * (((((uint64_t)x8 * x8) + ((uint64_t)x6 * x10)) + ((uint64_t)x2 * x14)) + ((uint64_t)(0x2 * x4) * x12)));
- { uint64_t x26 = (0x2 * (((((uint64_t)x8 * x10) + ((uint64_t)x6 * x12)) + ((uint64_t)x4 * x14)) + ((uint64_t)x2 * x16)));
- { uint64_t x27 = (((uint64_t)x10 * x10) + (0x2 * ((((uint64_t)x6 * x14) + ((uint64_t)x2 * x18)) + (0x2 * (((uint64_t)x4 * x16) + ((uint64_t)x8 * x12))))));
- { uint64_t x28 = (0x2 * ((((((uint64_t)x10 * x12) + ((uint64_t)x8 * x14)) + ((uint64_t)x6 * x16)) + ((uint64_t)x4 * x18)) + ((uint64_t)x2 * x17)));
- { uint64_t x29 = (0x2 * (((((uint64_t)x12 * x12) + ((uint64_t)x10 * x14)) + ((uint64_t)x6 * x18)) + (0x2 * (((uint64_t)x8 * x16) + ((uint64_t)x4 * x17)))));
- { uint64_t x30 = (0x2 * (((((uint64_t)x12 * x14) + ((uint64_t)x10 * x16)) + ((uint64_t)x8 * x18)) + ((uint64_t)x6 * x17)));
- { uint64_t x31 = (((uint64_t)x14 * x14) + (0x2 * (((uint64_t)x10 * x18) + (0x2 * (((uint64_t)x12 * x16) + ((uint64_t)x8 * x17))))));
- { uint64_t x32 = (0x2 * ((((uint64_t)x14 * x16) + ((uint64_t)x12 * x18)) + ((uint64_t)x10 * x17)));
- { uint64_t x33 = (0x2 * ((((uint64_t)x16 * x16) + ((uint64_t)x14 * x18)) + ((uint64_t)(0x2 * x12) * x17)));
- { uint64_t x34 = (0x2 * (((uint64_t)x16 * x18) + ((uint64_t)x14 * x17)));
- { uint64_t x35 = (((uint64_t)x18 * x18) + ((uint64_t)(0x4 * x16) * x17));
- { uint64_t x36 = ((uint64_t)(0x2 * x18) * x17);
- { uint64_t x37 = ((uint64_t)(0x2 * x17) * x17);
- { uint64_t x38 = (x27 + (x37 << 0x4));
- { uint64_t x39 = (x38 + (x37 << 0x1));
- { uint64_t x40 = (x39 + x37);
- { uint64_t x41 = (x26 + (x36 << 0x4));
- { uint64_t x42 = (x41 + (x36 << 0x1));
- { uint64_t x43 = (x42 + x36);
- { uint64_t x44 = (x25 + (x35 << 0x4));
- { uint64_t x45 = (x44 + (x35 << 0x1));
- { uint64_t x46 = (x45 + x35);
- { uint64_t x47 = (x24 + (x34 << 0x4));
- { uint64_t x48 = (x47 + (x34 << 0x1));
- { uint64_t x49 = (x48 + x34);
- { uint64_t x50 = (x23 + (x33 << 0x4));
- { uint64_t x51 = (x50 + (x33 << 0x1));
- { uint64_t x52 = (x51 + x33);
- { uint64_t x53 = (x22 + (x32 << 0x4));
- { uint64_t x54 = (x53 + (x32 << 0x1));
- { uint64_t x55 = (x54 + x32);
- { uint64_t x56 = (x21 + (x31 << 0x4));
- { uint64_t x57 = (x56 + (x31 << 0x1));
- { uint64_t x58 = (x57 + x31);
- { uint64_t x59 = (x20 + (x30 << 0x4));
- { uint64_t x60 = (x59 + (x30 << 0x1));
- { uint64_t x61 = (x60 + x30);
- { uint64_t x62 = (x19 + (x29 << 0x4));
- { uint64_t x63 = (x62 + (x29 << 0x1));
- { uint64_t x64 = (x63 + x29);
- { uint64_t x65 = (x64 >> 0x1a);
- { uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- { uint64_t x67 = (x65 + x61);
- { uint64_t x68 = (x67 >> 0x19);
- { uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- { uint64_t x70 = (x68 + x58);
- { uint64_t x71 = (x70 >> 0x1a);
- { uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- { uint64_t x73 = (x71 + x55);
- { uint64_t x74 = (x73 >> 0x19);
- { uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- { uint64_t x76 = (x74 + x52);
- { uint64_t x77 = (x76 >> 0x1a);
- { uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- { uint64_t x79 = (x77 + x49);
- { uint64_t x80 = (x79 >> 0x19);
- { uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- { uint64_t x82 = (x80 + x46);
- { uint64_t x83 = (x82 >> 0x1a);
- { uint32_t x84 = ((uint32_t)x82 & 0x3ffffff);
- { uint64_t x85 = (x83 + x43);
- { uint64_t x86 = (x85 >> 0x19);
- { uint32_t x87 = ((uint32_t)x85 & 0x1ffffff);
- { uint64_t x88 = (x86 + x40);
- { uint64_t x89 = (x88 >> 0x1a);
- { uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- { uint64_t x91 = (x89 + x28);
- { uint64_t x92 = (x91 >> 0x19);
- { uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- { uint64_t x94 = (x66 + (0x13 * x92));
- { uint32_t x95 = (uint32_t) (x94 >> 0x1a);
- { uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- { uint32_t x97 = (x95 + x69);
- { uint32_t x98 = (x97 >> 0x19);
- { uint32_t x99 = (x97 & 0x1ffffff);
- out[0] = x96;
- out[1] = x99;
- out[2] = (x98 + x72);
- out[3] = x75;
- out[4] = x78;
- out[5] = x81;
- out[6] = x84;
- out[7] = x87;
- out[8] = x90;
- out[9] = x93;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m19_10limbs_donna/fesquare.v b/src/Specific/solinas32_2e255m19_10limbs_donna/fesquare.v
deleted file mode 100644
index 68939088c..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs_donna.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_2e255m19_10limbs_donna/fesquareDisplay.log b/src/Specific/solinas32_2e255m19_10limbs_donna/fesquareDisplay.log
deleted file mode 100644
index 06c5bc75f..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/fesquareDisplay.log
+++ /dev/null
@@ -1,88 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x19 = ((uint64_t)x2 * x2);
- uint64_t x20 = ((uint64_t)(0x2 * x2) * x4);
- uint64_t x21 = (0x2 * (((uint64_t)x4 * x4) + ((uint64_t)x2 * x6)));
- uint64_t x22 = (0x2 * (((uint64_t)x4 * x6) + ((uint64_t)x2 * x8)));
- uint64_t x23 = ((((uint64_t)x6 * x6) + ((uint64_t)(0x4 * x4) * x8)) + ((uint64_t)(0x2 * x2) * x10));
- uint64_t x24 = (0x2 * ((((uint64_t)x6 * x8) + ((uint64_t)x4 * x10)) + ((uint64_t)x2 * x12)));
- uint64_t x25 = (0x2 * (((((uint64_t)x8 * x8) + ((uint64_t)x6 * x10)) + ((uint64_t)x2 * x14)) + ((uint64_t)(0x2 * x4) * x12)));
- uint64_t x26 = (0x2 * (((((uint64_t)x8 * x10) + ((uint64_t)x6 * x12)) + ((uint64_t)x4 * x14)) + ((uint64_t)x2 * x16)));
- uint64_t x27 = (((uint64_t)x10 * x10) + (0x2 * ((((uint64_t)x6 * x14) + ((uint64_t)x2 * x18)) + (0x2 * (((uint64_t)x4 * x16) + ((uint64_t)x8 * x12))))));
- uint64_t x28 = (0x2 * ((((((uint64_t)x10 * x12) + ((uint64_t)x8 * x14)) + ((uint64_t)x6 * x16)) + ((uint64_t)x4 * x18)) + ((uint64_t)x2 * x17)));
- uint64_t x29 = (0x2 * (((((uint64_t)x12 * x12) + ((uint64_t)x10 * x14)) + ((uint64_t)x6 * x18)) + (0x2 * (((uint64_t)x8 * x16) + ((uint64_t)x4 * x17)))));
- uint64_t x30 = (0x2 * (((((uint64_t)x12 * x14) + ((uint64_t)x10 * x16)) + ((uint64_t)x8 * x18)) + ((uint64_t)x6 * x17)));
- uint64_t x31 = (((uint64_t)x14 * x14) + (0x2 * (((uint64_t)x10 * x18) + (0x2 * (((uint64_t)x12 * x16) + ((uint64_t)x8 * x17))))));
- uint64_t x32 = (0x2 * ((((uint64_t)x14 * x16) + ((uint64_t)x12 * x18)) + ((uint64_t)x10 * x17)));
- uint64_t x33 = (0x2 * ((((uint64_t)x16 * x16) + ((uint64_t)x14 * x18)) + ((uint64_t)(0x2 * x12) * x17)));
- uint64_t x34 = (0x2 * (((uint64_t)x16 * x18) + ((uint64_t)x14 * x17)));
- uint64_t x35 = (((uint64_t)x18 * x18) + ((uint64_t)(0x4 * x16) * x17));
- uint64_t x36 = ((uint64_t)(0x2 * x18) * x17);
- uint64_t x37 = ((uint64_t)(0x2 * x17) * x17);
- uint64_t x38 = (x27 + (x37 << 0x4));
- uint64_t x39 = (x38 + (x37 << 0x1));
- uint64_t x40 = (x39 + x37);
- uint64_t x41 = (x26 + (x36 << 0x4));
- uint64_t x42 = (x41 + (x36 << 0x1));
- uint64_t x43 = (x42 + x36);
- uint64_t x44 = (x25 + (x35 << 0x4));
- uint64_t x45 = (x44 + (x35 << 0x1));
- uint64_t x46 = (x45 + x35);
- uint64_t x47 = (x24 + (x34 << 0x4));
- uint64_t x48 = (x47 + (x34 << 0x1));
- uint64_t x49 = (x48 + x34);
- uint64_t x50 = (x23 + (x33 << 0x4));
- uint64_t x51 = (x50 + (x33 << 0x1));
- uint64_t x52 = (x51 + x33);
- uint64_t x53 = (x22 + (x32 << 0x4));
- uint64_t x54 = (x53 + (x32 << 0x1));
- uint64_t x55 = (x54 + x32);
- uint64_t x56 = (x21 + (x31 << 0x4));
- uint64_t x57 = (x56 + (x31 << 0x1));
- uint64_t x58 = (x57 + x31);
- uint64_t x59 = (x20 + (x30 << 0x4));
- uint64_t x60 = (x59 + (x30 << 0x1));
- uint64_t x61 = (x60 + x30);
- uint64_t x62 = (x19 + (x29 << 0x4));
- uint64_t x63 = (x62 + (x29 << 0x1));
- uint64_t x64 = (x63 + x29);
- uint64_t x65 = (x64 >> 0x1a);
- uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- uint64_t x67 = (x65 + x61);
- uint64_t x68 = (x67 >> 0x19);
- uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- uint64_t x70 = (x68 + x58);
- uint64_t x71 = (x70 >> 0x1a);
- uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- uint64_t x73 = (x71 + x55);
- uint64_t x74 = (x73 >> 0x19);
- uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- uint64_t x76 = (x74 + x52);
- uint64_t x77 = (x76 >> 0x1a);
- uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- uint64_t x79 = (x77 + x49);
- uint64_t x80 = (x79 >> 0x19);
- uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- uint64_t x82 = (x80 + x46);
- uint64_t x83 = (x82 >> 0x1a);
- uint32_t x84 = ((uint32_t)x82 & 0x3ffffff);
- uint64_t x85 = (x83 + x43);
- uint64_t x86 = (x85 >> 0x19);
- uint32_t x87 = ((uint32_t)x85 & 0x1ffffff);
- uint64_t x88 = (x86 + x40);
- uint64_t x89 = (x88 >> 0x1a);
- uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- uint64_t x91 = (x89 + x28);
- uint64_t x92 = (x91 >> 0x19);
- uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- uint64_t x94 = (x66 + (0x13 * x92));
- uint32_t x95 = (uint32_t) (x94 >> 0x1a);
- uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- uint32_t x97 = (x95 + x69);
- uint32_t x98 = (x97 >> 0x19);
- uint32_t x99 = (x97 & 0x1ffffff);
- return (Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, (x98 + x72), Return x99, Return x96))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m19_10limbs_donna/fesquareDisplay.v b/src/Specific/solinas32_2e255m19_10limbs_donna/fesquareDisplay.v
deleted file mode 100644
index 651779f2b..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs_donna.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e255m19_10limbs_donna/fesub.c b/src/Specific/solinas32_2e255m19_10limbs_donna/fesub.c
deleted file mode 100644
index b92ed2bbe..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/fesub.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fesub(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- out[0] = ((0x7ffffda + x5) - x23);
- out[1] = ((0x3fffffe + x7) - x25);
- out[2] = ((0x7fffffe + x9) - x27);
- out[3] = ((0x3fffffe + x11) - x29);
- out[4] = ((0x7fffffe + x13) - x31);
- out[5] = ((0x3fffffe + x15) - x33);
- out[6] = ((0x7fffffe + x17) - x35);
- out[7] = ((0x3fffffe + x19) - x37);
- out[8] = ((0x7fffffe + x21) - x39);
- out[9] = ((0x3fffffe + x20) - x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m19_10limbs_donna/fesub.v b/src/Specific/solinas32_2e255m19_10limbs_donna/fesub.v
deleted file mode 100644
index 3c5d12e55..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs_donna.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_2e255m19_10limbs_donna/fesubDisplay.log b/src/Specific/solinas32_2e255m19_10limbs_donna/fesubDisplay.log
deleted file mode 100644
index bb18a6a51..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- (((0x3fffffe + x20) - x38), ((0x7fffffe + x21) - x39), ((0x3fffffe + x19) - x37), ((0x7fffffe + x17) - x35), ((0x3fffffe + x15) - x33), ((0x7fffffe + x13) - x31), ((0x3fffffe + x11) - x29), ((0x7fffffe + x9) - x27), ((0x3fffffe + x7) - x25), ((0x7ffffda + x5) - x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m19_10limbs_donna/fesubDisplay.v b/src/Specific/solinas32_2e255m19_10limbs_donna/fesubDisplay.v
deleted file mode 100644
index a4ec24ade..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs_donna.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e255m19_10limbs_donna/freeze.c b/src/Specific/solinas32_2e255m19_10limbs_donna/freeze.c
deleted file mode 100644
index 89de979a8..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/freeze.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void freeze(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x20; uint8_t/*bool*/ x21 = _subborrow_u26(0x0, x2, 0x3ffffed, &x20);
- { uint32_t x23; uint8_t/*bool*/ x24 = _subborrow_u25(x21, x4, 0x1ffffff, &x23);
- { uint32_t x26; uint8_t/*bool*/ x27 = _subborrow_u26(x24, x6, 0x3ffffff, &x26);
- { uint32_t x29; uint8_t/*bool*/ x30 = _subborrow_u25(x27, x8, 0x1ffffff, &x29);
- { uint32_t x32; uint8_t/*bool*/ x33 = _subborrow_u26(x30, x10, 0x3ffffff, &x32);
- { uint32_t x35; uint8_t/*bool*/ x36 = _subborrow_u25(x33, x12, 0x1ffffff, &x35);
- { uint32_t x38; uint8_t/*bool*/ x39 = _subborrow_u26(x36, x14, 0x3ffffff, &x38);
- { uint32_t x41; uint8_t/*bool*/ x42 = _subborrow_u25(x39, x16, 0x1ffffff, &x41);
- { uint32_t x44; uint8_t/*bool*/ x45 = _subborrow_u26(x42, x18, 0x3ffffff, &x44);
- { uint32_t x47; uint8_t/*bool*/ x48 = _subborrow_u25(x45, x17, 0x1ffffff, &x47);
- { uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- { uint32_t x50 = (x49 & 0x3ffffed);
- { uint32_t x52; uint8_t/*bool*/ x53 = _addcarryx_u26(0x0, x20, x50, &x52);
- { uint32_t x54 = (x49 & 0x1ffffff);
- { uint32_t x56; uint8_t/*bool*/ x57 = _addcarryx_u25(x53, x23, x54, &x56);
- { uint32_t x58 = (x49 & 0x3ffffff);
- { uint32_t x60; uint8_t/*bool*/ x61 = _addcarryx_u26(x57, x26, x58, &x60);
- { uint32_t x62 = (x49 & 0x1ffffff);
- { uint32_t x64; uint8_t/*bool*/ x65 = _addcarryx_u25(x61, x29, x62, &x64);
- { uint32_t x66 = (x49 & 0x3ffffff);
- { uint32_t x68; uint8_t/*bool*/ x69 = _addcarryx_u26(x65, x32, x66, &x68);
- { uint32_t x70 = (x49 & 0x1ffffff);
- { uint32_t x72; uint8_t/*bool*/ x73 = _addcarryx_u25(x69, x35, x70, &x72);
- { uint32_t x74 = (x49 & 0x3ffffff);
- { uint32_t x76; uint8_t/*bool*/ x77 = _addcarryx_u26(x73, x38, x74, &x76);
- { uint32_t x78 = (x49 & 0x1ffffff);
- { uint32_t x80; uint8_t/*bool*/ x81 = _addcarryx_u25(x77, x41, x78, &x80);
- { uint32_t x82 = (x49 & 0x3ffffff);
- { uint32_t x84; uint8_t/*bool*/ x85 = _addcarryx_u26(x81, x44, x82, &x84);
- { uint32_t x86 = (x49 & 0x1ffffff);
- { uint32_t x88; uint8_t/*bool*/ _ = _addcarryx_u25(x85, x47, x86, &x88);
- out[0] = x52;
- out[1] = x56;
- out[2] = x60;
- out[3] = x64;
- out[4] = x68;
- out[5] = x72;
- out[6] = x76;
- out[7] = x80;
- out[8] = x84;
- out[9] = x88;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m19_10limbs_donna/freeze.v b/src/Specific/solinas32_2e255m19_10limbs_donna/freeze.v
deleted file mode 100644
index c57bd2f06..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs_donna.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_2e255m19_10limbs_donna/freezeDisplay.log b/src/Specific/solinas32_2e255m19_10limbs_donna/freezeDisplay.log
deleted file mode 100644
index 71d7c1cbb..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x20, uint8_t/*bool*/ x21 = subborrow_u26(0x0, x2, 0x3ffffed);
- uint32_t x23, uint8_t/*bool*/ x24 = subborrow_u25(x21, x4, 0x1ffffff);
- uint32_t x26, uint8_t/*bool*/ x27 = subborrow_u26(x24, x6, 0x3ffffff);
- uint32_t x29, uint8_t/*bool*/ x30 = subborrow_u25(x27, x8, 0x1ffffff);
- uint32_t x32, uint8_t/*bool*/ x33 = subborrow_u26(x30, x10, 0x3ffffff);
- uint32_t x35, uint8_t/*bool*/ x36 = subborrow_u25(x33, x12, 0x1ffffff);
- uint32_t x38, uint8_t/*bool*/ x39 = subborrow_u26(x36, x14, 0x3ffffff);
- uint32_t x41, uint8_t/*bool*/ x42 = subborrow_u25(x39, x16, 0x1ffffff);
- uint32_t x44, uint8_t/*bool*/ x45 = subborrow_u26(x42, x18, 0x3ffffff);
- uint32_t x47, uint8_t/*bool*/ x48 = subborrow_u25(x45, x17, 0x1ffffff);
- uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- uint32_t x50 = (x49 & 0x3ffffed);
- uint32_t x52, uint8_t/*bool*/ x53 = addcarryx_u26(0x0, x20, x50);
- uint32_t x54 = (x49 & 0x1ffffff);
- uint32_t x56, uint8_t/*bool*/ x57 = addcarryx_u25(x53, x23, x54);
- uint32_t x58 = (x49 & 0x3ffffff);
- uint32_t x60, uint8_t/*bool*/ x61 = addcarryx_u26(x57, x26, x58);
- uint32_t x62 = (x49 & 0x1ffffff);
- uint32_t x64, uint8_t/*bool*/ x65 = addcarryx_u25(x61, x29, x62);
- uint32_t x66 = (x49 & 0x3ffffff);
- uint32_t x68, uint8_t/*bool*/ x69 = addcarryx_u26(x65, x32, x66);
- uint32_t x70 = (x49 & 0x1ffffff);
- uint32_t x72, uint8_t/*bool*/ x73 = addcarryx_u25(x69, x35, x70);
- uint32_t x74 = (x49 & 0x3ffffff);
- uint32_t x76, uint8_t/*bool*/ x77 = addcarryx_u26(x73, x38, x74);
- uint32_t x78 = (x49 & 0x1ffffff);
- uint32_t x80, uint8_t/*bool*/ x81 = addcarryx_u25(x77, x41, x78);
- uint32_t x82 = (x49 & 0x3ffffff);
- uint32_t x84, uint8_t/*bool*/ x85 = addcarryx_u26(x81, x44, x82);
- uint32_t x86 = (x49 & 0x1ffffff);
- uint32_t x88, uint8_t/*bool*/ _ = addcarryx_u25(x85, x47, x86);
- (Return x88, Return x84, Return x80, Return x76, Return x72, Return x68, Return x64, Return x60, Return x56, Return x52))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m19_10limbs_donna/freezeDisplay.v b/src/Specific/solinas32_2e255m19_10limbs_donna/freezeDisplay.v
deleted file mode 100644
index 3992875a2..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m19_10limbs_donna.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e255m19_10limbs_donna/py_interpreter.sh b/src/Specific/solinas32_2e255m19_10limbs_donna/py_interpreter.sh
deleted file mode 100755
index c5b125c07..000000000
--- a/src/Specific/solinas32_2e255m19_10limbs_donna/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**255 - 19' -Dmodulus_bytes='25.5' -Da24='121665'
diff --git a/src/Specific/solinas32_2e255m19_11limbs/CurveParameters.v b/src/Specific/solinas32_2e255m19_11limbs/CurveParameters.v
deleted file mode 100644
index b1b94c285..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^255 - 19
-Base: 23 + 2/11
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 11%nat;
- base := 23 + 2/11;
- bitwidth := 32;
- s := 2^255;
- c := [(1, 19)];
- carry_chains := Some [seq 0 (pred 11); [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_2e255m19_11limbs/Synthesis.v b/src/Specific/solinas32_2e255m19_11limbs/Synthesis.v
deleted file mode 100644
index 55d4ba8ca..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e255m19_11limbs.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_2e255m19_11limbs/compiler.sh b/src/Specific/solinas32_2e255m19_11limbs/compiler.sh
deleted file mode 100755
index 7cc2878f7..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,23,23,23,23,24,23,23,23,23,23}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<255) - 19' "$@"
diff --git a/src/Specific/solinas32_2e255m19_11limbs/compilerxx.sh b/src/Specific/solinas32_2e255m19_11limbs/compilerxx.sh
deleted file mode 100755
index 94996d1c5..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,23,23,23,23,24,23,23,23,23,23}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<255) - 19' "$@"
diff --git a/src/Specific/solinas32_2e255m19_11limbs/feadd.c b/src/Specific/solinas32_2e255m19_11limbs/feadd.c
deleted file mode 100644
index 1763e8727..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/feadd.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void feadd(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- out[0] = (x5 + x25);
- out[1] = (x7 + x27);
- out[2] = (x9 + x29);
- out[3] = (x11 + x31);
- out[4] = (x13 + x33);
- out[5] = (x15 + x35);
- out[6] = (x17 + x37);
- out[7] = (x19 + x39);
- out[8] = (x21 + x41);
- out[9] = (x23 + x43);
- out[10] = (x22 + x42);
- }}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m19_11limbs/feadd.v b/src/Specific/solinas32_2e255m19_11limbs/feadd.v
deleted file mode 100644
index acbeb9532..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m19_11limbs.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_2e255m19_11limbs/feaddDisplay.log b/src/Specific/solinas32_2e255m19_11limbs/feaddDisplay.log
deleted file mode 100644
index 433ecbc2e..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- ((x22 + x42), (x23 + x43), (x21 + x41), (x19 + x39), (x17 + x37), (x15 + x35), (x13 + x33), (x11 + x31), (x9 + x29), (x7 + x27), (x5 + x25)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m19_11limbs/feaddDisplay.v b/src/Specific/solinas32_2e255m19_11limbs/feaddDisplay.v
deleted file mode 100644
index f1d409715..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m19_11limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e255m19_11limbs/fecarry.c b/src/Specific/solinas32_2e255m19_11limbs/fecarry.c
deleted file mode 100644
index ec622a02f..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/fecarry.c
+++ /dev/null
@@ -1,63 +0,0 @@
-static void fecarry(uint32_t out[11], const uint32_t in1[11]) {
- { const uint32_t x19 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x21 = (x2 >> 0x18);
- { uint32_t x22 = (x2 & 0xffffff);
- { uint32_t x23 = (x21 + x4);
- { uint32_t x24 = (x23 >> 0x17);
- { uint32_t x25 = (x23 & 0x7fffff);
- { uint32_t x26 = (x24 + x6);
- { uint32_t x27 = (x26 >> 0x17);
- { uint32_t x28 = (x26 & 0x7fffff);
- { uint32_t x29 = (x27 + x8);
- { uint32_t x30 = (x29 >> 0x17);
- { uint32_t x31 = (x29 & 0x7fffff);
- { uint32_t x32 = (x30 + x10);
- { uint32_t x33 = (x32 >> 0x17);
- { uint32_t x34 = (x32 & 0x7fffff);
- { uint32_t x35 = (x33 + x12);
- { uint32_t x36 = (x35 >> 0x18);
- { uint32_t x37 = (x35 & 0xffffff);
- { uint32_t x38 = (x36 + x14);
- { uint32_t x39 = (x38 >> 0x17);
- { uint32_t x40 = (x38 & 0x7fffff);
- { uint32_t x41 = (x39 + x16);
- { uint32_t x42 = (x41 >> 0x17);
- { uint32_t x43 = (x41 & 0x7fffff);
- { uint32_t x44 = (x42 + x18);
- { uint32_t x45 = (x44 >> 0x17);
- { uint32_t x46 = (x44 & 0x7fffff);
- { uint32_t x47 = (x45 + x20);
- { uint32_t x48 = (x47 >> 0x17);
- { uint32_t x49 = (x47 & 0x7fffff);
- { uint32_t x50 = (x48 + x19);
- { uint32_t x51 = (x50 >> 0x17);
- { uint32_t x52 = (x50 & 0x7fffff);
- { uint32_t x53 = (x22 + (0x13 * x51));
- { uint32_t x54 = (x53 >> 0x18);
- { uint32_t x55 = (x53 & 0xffffff);
- { uint32_t x56 = (x54 + x25);
- { uint32_t x57 = (x56 >> 0x17);
- { uint32_t x58 = (x56 & 0x7fffff);
- out[0] = x55;
- out[1] = x58;
- out[2] = (x57 + x28);
- out[3] = x31;
- out[4] = x34;
- out[5] = x37;
- out[6] = x40;
- out[7] = x43;
- out[8] = x46;
- out[9] = x49;
- out[10] = x52;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m19_11limbs/fecarry.v b/src/Specific/solinas32_2e255m19_11limbs/fecarry.v
deleted file mode 100644
index 0a9dc3b88..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m19_11limbs.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_2e255m19_11limbs/fecarryDisplay.log b/src/Specific/solinas32_2e255m19_11limbs/fecarryDisplay.log
deleted file mode 100644
index 1e8284701..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/fecarryDisplay.log
+++ /dev/null
@@ -1,45 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x21 = (x2 >> 0x18);
- uint32_t x22 = (x2 & 0xffffff);
- uint32_t x23 = (x21 + x4);
- uint32_t x24 = (x23 >> 0x17);
- uint32_t x25 = (x23 & 0x7fffff);
- uint32_t x26 = (x24 + x6);
- uint32_t x27 = (x26 >> 0x17);
- uint32_t x28 = (x26 & 0x7fffff);
- uint32_t x29 = (x27 + x8);
- uint32_t x30 = (x29 >> 0x17);
- uint32_t x31 = (x29 & 0x7fffff);
- uint32_t x32 = (x30 + x10);
- uint32_t x33 = (x32 >> 0x17);
- uint32_t x34 = (x32 & 0x7fffff);
- uint32_t x35 = (x33 + x12);
- uint32_t x36 = (x35 >> 0x18);
- uint32_t x37 = (x35 & 0xffffff);
- uint32_t x38 = (x36 + x14);
- uint32_t x39 = (x38 >> 0x17);
- uint32_t x40 = (x38 & 0x7fffff);
- uint32_t x41 = (x39 + x16);
- uint32_t x42 = (x41 >> 0x17);
- uint32_t x43 = (x41 & 0x7fffff);
- uint32_t x44 = (x42 + x18);
- uint32_t x45 = (x44 >> 0x17);
- uint32_t x46 = (x44 & 0x7fffff);
- uint32_t x47 = (x45 + x20);
- uint32_t x48 = (x47 >> 0x17);
- uint32_t x49 = (x47 & 0x7fffff);
- uint32_t x50 = (x48 + x19);
- uint32_t x51 = (x50 >> 0x17);
- uint32_t x52 = (x50 & 0x7fffff);
- uint32_t x53 = (x22 + (0x13 * x51));
- uint32_t x54 = (x53 >> 0x18);
- uint32_t x55 = (x53 & 0xffffff);
- uint32_t x56 = (x54 + x25);
- uint32_t x57 = (x56 >> 0x17);
- uint32_t x58 = (x56 & 0x7fffff);
- return (Return x52, Return x49, Return x46, Return x43, Return x40, Return x37, Return x34, Return x31, (x57 + x28), Return x58, Return x55))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m19_11limbs/fecarryDisplay.v b/src/Specific/solinas32_2e255m19_11limbs/fecarryDisplay.v
deleted file mode 100644
index c43ae06b7..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m19_11limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e255m19_11limbs/femul.c b/src/Specific/solinas32_2e255m19_11limbs/femul.c
deleted file mode 100644
index 706430ee4..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/femul.c
+++ /dev/null
@@ -1,85 +0,0 @@
-static void femul(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- { uint64_t x44 = (((uint64_t)x5 * x42) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + ((0x2 * ((uint64_t)x13 * x37)) + (((uint64_t)x15 * x35) + ((0x2 * ((uint64_t)x17 * x33)) + ((0x2 * ((uint64_t)x19 * x31)) + ((0x2 * ((uint64_t)x21 * x29)) + ((0x2 * ((uint64_t)x23 * x27)) + ((uint64_t)x22 * x25)))))))))));
- { uint64_t x45 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((0x2 * ((uint64_t)x21 * x27)) + ((uint64_t)x23 * x25)))))))))) + (0x13 * ((uint64_t)x22 * x42)));
- { uint64_t x46 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + ((0x2 * ((uint64_t)x17 * x29)) + ((0x2 * ((uint64_t)x19 * x27)) + ((uint64_t)x21 * x25))))))))) + (0x13 * (((uint64_t)x23 * x42) + ((uint64_t)x22 * x43))));
- { uint64_t x47 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + ((0x2 * ((uint64_t)x17 * x27)) + ((uint64_t)x19 * x25)))))))) + (0x13 * (((uint64_t)x21 * x42) + (((uint64_t)x23 * x43) + ((uint64_t)x22 * x41)))));
- { uint64_t x48 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + ((uint64_t)x17 * x25))))))) + (0x13 * (((uint64_t)x19 * x42) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + ((uint64_t)x22 * x39))))));
- { uint64_t x49 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((uint64_t)x15 * x25)))))) + (0x13 * ((0x2 * ((uint64_t)x17 * x42)) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + (0x2 * ((uint64_t)x22 * x37))))))));
- { uint64_t x50 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((0x2 * ((uint64_t)x11 * x27)) + ((uint64_t)x13 * x25))))) + (0x13 * (((uint64_t)x15 * x42) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((uint64_t)x22 * x35))))))));
- { uint64_t x51 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((uint64_t)x11 * x25)))) + (0x13 * (((uint64_t)x13 * x42) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + (((uint64_t)x23 * x35) + ((uint64_t)x22 * x33)))))))));
- { uint64_t x52 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((uint64_t)x9 * x25))) + (0x13 * (((uint64_t)x11 * x42) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + (((uint64_t)x23 * x33) + ((uint64_t)x22 * x31))))))))));
- { uint64_t x53 = ((((uint64_t)x5 * x27) + ((uint64_t)x7 * x25)) + (0x13 * (((uint64_t)x9 * x42) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + ((0x2 * ((uint64_t)x17 * x37)) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + (((uint64_t)x23 * x31) + ((uint64_t)x22 * x29)))))))))));
- { uint64_t x54 = (((uint64_t)x5 * x25) + (0x13 * ((0x2 * ((uint64_t)x7 * x42)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((0x2 * ((uint64_t)x17 * x35)) + ((0x2 * ((uint64_t)x19 * x33)) + ((0x2 * ((uint64_t)x21 * x31)) + ((0x2 * ((uint64_t)x23 * x29)) + (0x2 * ((uint64_t)x22 * x27)))))))))))));
- { uint64_t x55 = (x54 >> 0x18);
- { uint32_t x56 = ((uint32_t)x54 & 0xffffff);
- { uint64_t x57 = (x55 + x53);
- { uint64_t x58 = (x57 >> 0x17);
- { uint32_t x59 = ((uint32_t)x57 & 0x7fffff);
- { uint64_t x60 = (x58 + x52);
- { uint64_t x61 = (x60 >> 0x17);
- { uint32_t x62 = ((uint32_t)x60 & 0x7fffff);
- { uint64_t x63 = (x61 + x51);
- { uint64_t x64 = (x63 >> 0x17);
- { uint32_t x65 = ((uint32_t)x63 & 0x7fffff);
- { uint64_t x66 = (x64 + x50);
- { uint64_t x67 = (x66 >> 0x17);
- { uint32_t x68 = ((uint32_t)x66 & 0x7fffff);
- { uint64_t x69 = (x67 + x49);
- { uint64_t x70 = (x69 >> 0x18);
- { uint32_t x71 = ((uint32_t)x69 & 0xffffff);
- { uint64_t x72 = (x70 + x48);
- { uint64_t x73 = (x72 >> 0x17);
- { uint32_t x74 = ((uint32_t)x72 & 0x7fffff);
- { uint64_t x75 = (x73 + x47);
- { uint64_t x76 = (x75 >> 0x17);
- { uint32_t x77 = ((uint32_t)x75 & 0x7fffff);
- { uint64_t x78 = (x76 + x46);
- { uint64_t x79 = (x78 >> 0x17);
- { uint32_t x80 = ((uint32_t)x78 & 0x7fffff);
- { uint64_t x81 = (x79 + x45);
- { uint32_t x82 = (uint32_t) (x81 >> 0x17);
- { uint32_t x83 = ((uint32_t)x81 & 0x7fffff);
- { uint64_t x84 = (x82 + x44);
- { uint32_t x85 = (uint32_t) (x84 >> 0x17);
- { uint32_t x86 = ((uint32_t)x84 & 0x7fffff);
- { uint64_t x87 = (x56 + ((uint64_t)0x13 * x85));
- { uint32_t x88 = (uint32_t) (x87 >> 0x18);
- { uint32_t x89 = ((uint32_t)x87 & 0xffffff);
- { uint32_t x90 = (x88 + x59);
- { uint32_t x91 = (x90 >> 0x17);
- { uint32_t x92 = (x90 & 0x7fffff);
- out[0] = x89;
- out[1] = x92;
- out[2] = (x91 + x62);
- out[3] = x65;
- out[4] = x68;
- out[5] = x71;
- out[6] = x74;
- out[7] = x77;
- out[8] = x80;
- out[9] = x83;
- out[10] = x86;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m19_11limbs/femul.v b/src/Specific/solinas32_2e255m19_11limbs/femul.v
deleted file mode 100644
index d7cf17605..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m19_11limbs.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_2e255m19_11limbs/femulDisplay.log b/src/Specific/solinas32_2e255m19_11limbs/femulDisplay.log
deleted file mode 100644
index 68f38291e..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/femulDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- uint64_t x44 = (((uint64_t)x5 * x42) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + ((0x2 * ((uint64_t)x13 * x37)) + (((uint64_t)x15 * x35) + ((0x2 * ((uint64_t)x17 * x33)) + ((0x2 * ((uint64_t)x19 * x31)) + ((0x2 * ((uint64_t)x21 * x29)) + ((0x2 * ((uint64_t)x23 * x27)) + ((uint64_t)x22 * x25)))))))))));
- uint64_t x45 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((0x2 * ((uint64_t)x21 * x27)) + ((uint64_t)x23 * x25)))))))))) + (0x13 * ((uint64_t)x22 * x42)));
- uint64_t x46 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + ((0x2 * ((uint64_t)x17 * x29)) + ((0x2 * ((uint64_t)x19 * x27)) + ((uint64_t)x21 * x25))))))))) + (0x13 * (((uint64_t)x23 * x42) + ((uint64_t)x22 * x43))));
- uint64_t x47 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + ((0x2 * ((uint64_t)x17 * x27)) + ((uint64_t)x19 * x25)))))))) + (0x13 * (((uint64_t)x21 * x42) + (((uint64_t)x23 * x43) + ((uint64_t)x22 * x41)))));
- uint64_t x48 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + ((uint64_t)x17 * x25))))))) + (0x13 * (((uint64_t)x19 * x42) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + ((uint64_t)x22 * x39))))));
- uint64_t x49 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((uint64_t)x15 * x25)))))) + (0x13 * ((0x2 * ((uint64_t)x17 * x42)) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + (0x2 * ((uint64_t)x22 * x37))))))));
- uint64_t x50 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((0x2 * ((uint64_t)x11 * x27)) + ((uint64_t)x13 * x25))))) + (0x13 * (((uint64_t)x15 * x42) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((uint64_t)x22 * x35))))))));
- uint64_t x51 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((uint64_t)x11 * x25)))) + (0x13 * (((uint64_t)x13 * x42) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + (((uint64_t)x23 * x35) + ((uint64_t)x22 * x33)))))))));
- uint64_t x52 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((uint64_t)x9 * x25))) + (0x13 * (((uint64_t)x11 * x42) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + (((uint64_t)x23 * x33) + ((uint64_t)x22 * x31))))))))));
- uint64_t x53 = ((((uint64_t)x5 * x27) + ((uint64_t)x7 * x25)) + (0x13 * (((uint64_t)x9 * x42) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + ((0x2 * ((uint64_t)x17 * x37)) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + (((uint64_t)x23 * x31) + ((uint64_t)x22 * x29)))))))))));
- uint64_t x54 = (((uint64_t)x5 * x25) + (0x13 * ((0x2 * ((uint64_t)x7 * x42)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((0x2 * ((uint64_t)x17 * x35)) + ((0x2 * ((uint64_t)x19 * x33)) + ((0x2 * ((uint64_t)x21 * x31)) + ((0x2 * ((uint64_t)x23 * x29)) + (0x2 * ((uint64_t)x22 * x27)))))))))))));
- uint64_t x55 = (x54 >> 0x18);
- uint32_t x56 = ((uint32_t)x54 & 0xffffff);
- uint64_t x57 = (x55 + x53);
- uint64_t x58 = (x57 >> 0x17);
- uint32_t x59 = ((uint32_t)x57 & 0x7fffff);
- uint64_t x60 = (x58 + x52);
- uint64_t x61 = (x60 >> 0x17);
- uint32_t x62 = ((uint32_t)x60 & 0x7fffff);
- uint64_t x63 = (x61 + x51);
- uint64_t x64 = (x63 >> 0x17);
- uint32_t x65 = ((uint32_t)x63 & 0x7fffff);
- uint64_t x66 = (x64 + x50);
- uint64_t x67 = (x66 >> 0x17);
- uint32_t x68 = ((uint32_t)x66 & 0x7fffff);
- uint64_t x69 = (x67 + x49);
- uint64_t x70 = (x69 >> 0x18);
- uint32_t x71 = ((uint32_t)x69 & 0xffffff);
- uint64_t x72 = (x70 + x48);
- uint64_t x73 = (x72 >> 0x17);
- uint32_t x74 = ((uint32_t)x72 & 0x7fffff);
- uint64_t x75 = (x73 + x47);
- uint64_t x76 = (x75 >> 0x17);
- uint32_t x77 = ((uint32_t)x75 & 0x7fffff);
- uint64_t x78 = (x76 + x46);
- uint64_t x79 = (x78 >> 0x17);
- uint32_t x80 = ((uint32_t)x78 & 0x7fffff);
- uint64_t x81 = (x79 + x45);
- uint32_t x82 = (uint32_t) (x81 >> 0x17);
- uint32_t x83 = ((uint32_t)x81 & 0x7fffff);
- uint64_t x84 = (x82 + x44);
- uint32_t x85 = (uint32_t) (x84 >> 0x17);
- uint32_t x86 = ((uint32_t)x84 & 0x7fffff);
- uint64_t x87 = (x56 + ((uint64_t)0x13 * x85));
- uint32_t x88 = (uint32_t) (x87 >> 0x18);
- uint32_t x89 = ((uint32_t)x87 & 0xffffff);
- uint32_t x90 = (x88 + x59);
- uint32_t x91 = (x90 >> 0x17);
- uint32_t x92 = (x90 & 0x7fffff);
- return (Return x86, Return x83, Return x80, Return x77, Return x74, Return x71, Return x68, Return x65, (x91 + x62), Return x92, Return x89))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m19_11limbs/femulDisplay.v b/src/Specific/solinas32_2e255m19_11limbs/femulDisplay.v
deleted file mode 100644
index e3ad00de4..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m19_11limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e255m19_11limbs/fesquare.c b/src/Specific/solinas32_2e255m19_11limbs/fesquare.c
deleted file mode 100644
index 33b637cc4..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/fesquare.c
+++ /dev/null
@@ -1,74 +0,0 @@
-static void fesquare(uint32_t out[11], const uint32_t in1[11]) {
- { const uint32_t x19 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x21 = (((uint64_t)x2 * x19) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x19 * x2)))))))))));
- { uint64_t x22 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x13 * ((uint64_t)x19 * x19)));
- { uint64_t x23 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x13 * (((uint64_t)x20 * x19) + ((uint64_t)x19 * x20))));
- { uint64_t x24 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x13 * (((uint64_t)x18 * x19) + (((uint64_t)x20 * x20) + ((uint64_t)x19 * x18)))));
- { uint64_t x25 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x13 * (((uint64_t)x16 * x19) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((uint64_t)x19 * x16))))));
- { uint64_t x26 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x13 * ((0x2 * ((uint64_t)x14 * x19)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + (0x2 * ((uint64_t)x19 * x14))))))));
- { uint64_t x27 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x13 * (((uint64_t)x12 * x19) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + ((uint64_t)x19 * x12))))))));
- { uint64_t x28 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x13 * (((uint64_t)x10 * x19) + (((uint64_t)x12 * x20) + ((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + ((0x2 * ((uint64_t)x18 * x14)) + (((uint64_t)x20 * x12) + ((uint64_t)x19 * x10)))))))));
- { uint64_t x29 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x13 * (((uint64_t)x8 * x19) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + ((uint64_t)x19 * x8))))))))));
- { uint64_t x30 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x13 * (((uint64_t)x6 * x19) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + ((uint64_t)x19 * x6)))))))))));
- { uint64_t x31 = (((uint64_t)x2 * x2) + (0x13 * ((0x2 * ((uint64_t)x4 * x19)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + (0x2 * ((uint64_t)x19 * x4)))))))))))));
- { uint64_t x32 = (x31 >> 0x18);
- { uint32_t x33 = ((uint32_t)x31 & 0xffffff);
- { uint64_t x34 = (x32 + x30);
- { uint64_t x35 = (x34 >> 0x17);
- { uint32_t x36 = ((uint32_t)x34 & 0x7fffff);
- { uint64_t x37 = (x35 + x29);
- { uint64_t x38 = (x37 >> 0x17);
- { uint32_t x39 = ((uint32_t)x37 & 0x7fffff);
- { uint64_t x40 = (x38 + x28);
- { uint64_t x41 = (x40 >> 0x17);
- { uint32_t x42 = ((uint32_t)x40 & 0x7fffff);
- { uint64_t x43 = (x41 + x27);
- { uint64_t x44 = (x43 >> 0x17);
- { uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- { uint64_t x46 = (x44 + x26);
- { uint64_t x47 = (x46 >> 0x18);
- { uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- { uint64_t x49 = (x47 + x25);
- { uint64_t x50 = (x49 >> 0x17);
- { uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- { uint64_t x52 = (x50 + x24);
- { uint64_t x53 = (x52 >> 0x17);
- { uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- { uint64_t x55 = (x53 + x23);
- { uint64_t x56 = (x55 >> 0x17);
- { uint32_t x57 = ((uint32_t)x55 & 0x7fffff);
- { uint64_t x58 = (x56 + x22);
- { uint32_t x59 = (uint32_t) (x58 >> 0x17);
- { uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- { uint64_t x61 = (x59 + x21);
- { uint32_t x62 = (uint32_t) (x61 >> 0x17);
- { uint32_t x63 = ((uint32_t)x61 & 0x7fffff);
- { uint64_t x64 = (x33 + ((uint64_t)0x13 * x62));
- { uint32_t x65 = (uint32_t) (x64 >> 0x18);
- { uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- { uint32_t x67 = (x65 + x36);
- { uint32_t x68 = (x67 >> 0x17);
- { uint32_t x69 = (x67 & 0x7fffff);
- out[0] = x66;
- out[1] = x69;
- out[2] = (x68 + x39);
- out[3] = x42;
- out[4] = x45;
- out[5] = x48;
- out[6] = x51;
- out[7] = x54;
- out[8] = x57;
- out[9] = x60;
- out[10] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m19_11limbs/fesquare.v b/src/Specific/solinas32_2e255m19_11limbs/fesquare.v
deleted file mode 100644
index a5554d5fc..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m19_11limbs.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_2e255m19_11limbs/fesquareDisplay.log b/src/Specific/solinas32_2e255m19_11limbs/fesquareDisplay.log
deleted file mode 100644
index e2fd23f51..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x21 = (((uint64_t)x2 * x19) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x19 * x2)))))))))));
- uint64_t x22 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x13 * ((uint64_t)x19 * x19)));
- uint64_t x23 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x13 * (((uint64_t)x20 * x19) + ((uint64_t)x19 * x20))));
- uint64_t x24 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x13 * (((uint64_t)x18 * x19) + (((uint64_t)x20 * x20) + ((uint64_t)x19 * x18)))));
- uint64_t x25 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x13 * (((uint64_t)x16 * x19) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((uint64_t)x19 * x16))))));
- uint64_t x26 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x13 * ((0x2 * ((uint64_t)x14 * x19)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + (0x2 * ((uint64_t)x19 * x14))))))));
- uint64_t x27 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x13 * (((uint64_t)x12 * x19) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + ((uint64_t)x19 * x12))))))));
- uint64_t x28 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x13 * (((uint64_t)x10 * x19) + (((uint64_t)x12 * x20) + ((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + ((0x2 * ((uint64_t)x18 * x14)) + (((uint64_t)x20 * x12) + ((uint64_t)x19 * x10)))))))));
- uint64_t x29 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x13 * (((uint64_t)x8 * x19) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + ((uint64_t)x19 * x8))))))))));
- uint64_t x30 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x13 * (((uint64_t)x6 * x19) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + ((uint64_t)x19 * x6)))))))))));
- uint64_t x31 = (((uint64_t)x2 * x2) + (0x13 * ((0x2 * ((uint64_t)x4 * x19)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + (0x2 * ((uint64_t)x19 * x4)))))))))))));
- uint64_t x32 = (x31 >> 0x18);
- uint32_t x33 = ((uint32_t)x31 & 0xffffff);
- uint64_t x34 = (x32 + x30);
- uint64_t x35 = (x34 >> 0x17);
- uint32_t x36 = ((uint32_t)x34 & 0x7fffff);
- uint64_t x37 = (x35 + x29);
- uint64_t x38 = (x37 >> 0x17);
- uint32_t x39 = ((uint32_t)x37 & 0x7fffff);
- uint64_t x40 = (x38 + x28);
- uint64_t x41 = (x40 >> 0x17);
- uint32_t x42 = ((uint32_t)x40 & 0x7fffff);
- uint64_t x43 = (x41 + x27);
- uint64_t x44 = (x43 >> 0x17);
- uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- uint64_t x46 = (x44 + x26);
- uint64_t x47 = (x46 >> 0x18);
- uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- uint64_t x49 = (x47 + x25);
- uint64_t x50 = (x49 >> 0x17);
- uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- uint64_t x52 = (x50 + x24);
- uint64_t x53 = (x52 >> 0x17);
- uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- uint64_t x55 = (x53 + x23);
- uint64_t x56 = (x55 >> 0x17);
- uint32_t x57 = ((uint32_t)x55 & 0x7fffff);
- uint64_t x58 = (x56 + x22);
- uint32_t x59 = (uint32_t) (x58 >> 0x17);
- uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- uint64_t x61 = (x59 + x21);
- uint32_t x62 = (uint32_t) (x61 >> 0x17);
- uint32_t x63 = ((uint32_t)x61 & 0x7fffff);
- uint64_t x64 = (x33 + ((uint64_t)0x13 * x62));
- uint32_t x65 = (uint32_t) (x64 >> 0x18);
- uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- uint32_t x67 = (x65 + x36);
- uint32_t x68 = (x67 >> 0x17);
- uint32_t x69 = (x67 & 0x7fffff);
- return (Return x63, Return x60, Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, (x68 + x39), Return x69, Return x66))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m19_11limbs/fesquareDisplay.v b/src/Specific/solinas32_2e255m19_11limbs/fesquareDisplay.v
deleted file mode 100644
index 2cefb615c..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m19_11limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e255m19_11limbs/fesub.c b/src/Specific/solinas32_2e255m19_11limbs/fesub.c
deleted file mode 100644
index 3e88a923c..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/fesub.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void fesub(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- out[0] = ((0x1ffffda + x5) - x25);
- out[1] = ((0xfffffe + x7) - x27);
- out[2] = ((0xfffffe + x9) - x29);
- out[3] = ((0xfffffe + x11) - x31);
- out[4] = ((0xfffffe + x13) - x33);
- out[5] = ((0x1fffffe + x15) - x35);
- out[6] = ((0xfffffe + x17) - x37);
- out[7] = ((0xfffffe + x19) - x39);
- out[8] = ((0xfffffe + x21) - x41);
- out[9] = ((0xfffffe + x23) - x43);
- out[10] = ((0xfffffe + x22) - x42);
- }}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m19_11limbs/fesub.v b/src/Specific/solinas32_2e255m19_11limbs/fesub.v
deleted file mode 100644
index 673a14d88..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m19_11limbs.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_2e255m19_11limbs/fesubDisplay.log b/src/Specific/solinas32_2e255m19_11limbs/fesubDisplay.log
deleted file mode 100644
index 298433d11..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- (((0xfffffe + x22) - x42), ((0xfffffe + x23) - x43), ((0xfffffe + x21) - x41), ((0xfffffe + x19) - x39), ((0xfffffe + x17) - x37), ((0x1fffffe + x15) - x35), ((0xfffffe + x13) - x33), ((0xfffffe + x11) - x31), ((0xfffffe + x9) - x29), ((0xfffffe + x7) - x27), ((0x1ffffda + x5) - x25)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m19_11limbs/fesubDisplay.v b/src/Specific/solinas32_2e255m19_11limbs/fesubDisplay.v
deleted file mode 100644
index d2f5b1001..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m19_11limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e255m19_11limbs/freeze.c b/src/Specific/solinas32_2e255m19_11limbs/freeze.c
deleted file mode 100644
index 7864792d6..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/freeze.c
+++ /dev/null
@@ -1,59 +0,0 @@
-static void freeze(uint32_t out[11], const uint32_t in1[11]) {
- { const uint32_t x19 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x22, uint8_t/*bool*/ x23 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (0x0, Return x2, 0xffffed);
- { uint32_t x25, uint8_t/*bool*/ x26 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x23, Return x4, 0x7fffff);
- { uint32_t x28, uint8_t/*bool*/ x29 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x26, Return x6, 0x7fffff);
- { uint32_t x31, uint8_t/*bool*/ x32 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x29, Return x8, 0x7fffff);
- { uint32_t x34, uint8_t/*bool*/ x35 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x32, Return x10, 0x7fffff);
- { uint32_t x37, uint8_t/*bool*/ x38 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x35, Return x12, 0xffffff);
- { uint32_t x40, uint8_t/*bool*/ x41 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x38, Return x14, 0x7fffff);
- { uint32_t x43, uint8_t/*bool*/ x44 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x41, Return x16, 0x7fffff);
- { uint32_t x46, uint8_t/*bool*/ x47 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x44, Return x18, 0x7fffff);
- { uint32_t x49, uint8_t/*bool*/ x50 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x47, Return x20, 0x7fffff);
- { uint32_t x52, uint8_t/*bool*/ x53 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x50, Return x19, 0x7fffff);
- { uint32_t x54 = cmovznz32(x53, 0x0, 0xffffffff);
- { uint32_t x55 = (x54 & 0xffffed);
- { uint32_t x57, uint8_t/*bool*/ x58 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (0x0, Return x22, Return x55);
- { uint32_t x59 = (x54 & 0x7fffff);
- { uint32_t x61, uint8_t/*bool*/ x62 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x58, Return x25, Return x59);
- { uint32_t x63 = (x54 & 0x7fffff);
- { uint32_t x65, uint8_t/*bool*/ x66 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x62, Return x28, Return x63);
- { uint32_t x67 = (x54 & 0x7fffff);
- { uint32_t x69, uint8_t/*bool*/ x70 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x66, Return x31, Return x67);
- { uint32_t x71 = (x54 & 0x7fffff);
- { uint32_t x73, uint8_t/*bool*/ x74 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x70, Return x34, Return x71);
- { uint32_t x75 = (x54 & 0xffffff);
- { uint32_t x77, uint8_t/*bool*/ x78 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x74, Return x37, Return x75);
- { uint32_t x79 = (x54 & 0x7fffff);
- { uint32_t x81, uint8_t/*bool*/ x82 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x78, Return x40, Return x79);
- { uint32_t x83 = (x54 & 0x7fffff);
- { uint32_t x85, uint8_t/*bool*/ x86 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x82, Return x43, Return x83);
- { uint32_t x87 = (x54 & 0x7fffff);
- { uint32_t x89, uint8_t/*bool*/ x90 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x86, Return x46, Return x87);
- { uint32_t x91 = (x54 & 0x7fffff);
- { uint32_t x93, uint8_t/*bool*/ x94 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x90, Return x49, Return x91);
- { uint32_t x95 = (x54 & 0x7fffff);
- { uint32_t x97, uint8_t/*bool*/ _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x94, Return x52, Return x95);
- out[0] = x57;
- out[1] = x61;
- out[2] = x65;
- out[3] = x69;
- out[4] = x73;
- out[5] = x77;
- out[6] = x81;
- out[7] = x85;
- out[8] = x89;
- out[9] = x93;
- out[10] = x97;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m19_11limbs/freeze.v b/src/Specific/solinas32_2e255m19_11limbs/freeze.v
deleted file mode 100644
index a16b4f50d..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m19_11limbs.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_2e255m19_11limbs/freezeDisplay.log b/src/Specific/solinas32_2e255m19_11limbs/freezeDisplay.log
deleted file mode 100644
index f6174bc30..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/freezeDisplay.log
+++ /dev/null
@@ -1,41 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x22, uint8_t/*bool*/ x23 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (0x0, Return x2, 0xffffed);
- uint32_t x25, uint8_t/*bool*/ x26 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x23, Return x4, 0x7fffff);
- uint32_t x28, uint8_t/*bool*/ x29 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x26, Return x6, 0x7fffff);
- uint32_t x31, uint8_t/*bool*/ x32 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x29, Return x8, 0x7fffff);
- uint32_t x34, uint8_t/*bool*/ x35 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x32, Return x10, 0x7fffff);
- uint32_t x37, uint8_t/*bool*/ x38 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x35, Return x12, 0xffffff);
- uint32_t x40, uint8_t/*bool*/ x41 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x38, Return x14, 0x7fffff);
- uint32_t x43, uint8_t/*bool*/ x44 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x41, Return x16, 0x7fffff);
- uint32_t x46, uint8_t/*bool*/ x47 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x44, Return x18, 0x7fffff);
- uint32_t x49, uint8_t/*bool*/ x50 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x47, Return x20, 0x7fffff);
- uint32_t x52, uint8_t/*bool*/ x53 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x50, Return x19, 0x7fffff);
- uint32_t x54 = cmovznz32(x53, 0x0, 0xffffffff);
- uint32_t x55 = (x54 & 0xffffed);
- uint32_t x57, uint8_t/*bool*/ x58 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (0x0, Return x22, Return x55);
- uint32_t x59 = (x54 & 0x7fffff);
- uint32_t x61, uint8_t/*bool*/ x62 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x58, Return x25, Return x59);
- uint32_t x63 = (x54 & 0x7fffff);
- uint32_t x65, uint8_t/*bool*/ x66 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x62, Return x28, Return x63);
- uint32_t x67 = (x54 & 0x7fffff);
- uint32_t x69, uint8_t/*bool*/ x70 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x66, Return x31, Return x67);
- uint32_t x71 = (x54 & 0x7fffff);
- uint32_t x73, uint8_t/*bool*/ x74 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x70, Return x34, Return x71);
- uint32_t x75 = (x54 & 0xffffff);
- uint32_t x77, uint8_t/*bool*/ x78 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x74, Return x37, Return x75);
- uint32_t x79 = (x54 & 0x7fffff);
- uint32_t x81, uint8_t/*bool*/ x82 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x78, Return x40, Return x79);
- uint32_t x83 = (x54 & 0x7fffff);
- uint32_t x85, uint8_t/*bool*/ x86 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x82, Return x43, Return x83);
- uint32_t x87 = (x54 & 0x7fffff);
- uint32_t x89, uint8_t/*bool*/ x90 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x86, Return x46, Return x87);
- uint32_t x91 = (x54 & 0x7fffff);
- uint32_t x93, uint8_t/*bool*/ x94 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x90, Return x49, Return x91);
- uint32_t x95 = (x54 & 0x7fffff);
- uint32_t x97, uint8_t/*bool*/ _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 0) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 0)) (Return x94, Return x52, Return x95);
- (Return x97, Return x93, Return x89, Return x85, Return x81, Return x77, Return x73, Return x69, Return x65, Return x61, Return x57))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m19_11limbs/freezeDisplay.v b/src/Specific/solinas32_2e255m19_11limbs/freezeDisplay.v
deleted file mode 100644
index 74d8b3997..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m19_11limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e255m19_11limbs/py_interpreter.sh b/src/Specific/solinas32_2e255m19_11limbs/py_interpreter.sh
deleted file mode 100755
index 6d6e3354b..000000000
--- a/src/Specific/solinas32_2e255m19_11limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**255 - 19' -Dmodulus_bytes='23 + 2/11' -Da24='121665'
diff --git a/src/Specific/solinas32_2e255m765_12limbs/CurveParameters.v b/src/Specific/solinas32_2e255m765_12limbs/CurveParameters.v
deleted file mode 100644
index 7e852b89d..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^255 - 765
-Base: 21.25
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 12%nat;
- base := 21 + 1/4;
- bitwidth := 32;
- s := 2^255;
- c := [(1, 765)];
- carry_chains := Some [seq 0 (pred 12); [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_2e255m765_12limbs/Synthesis.v b/src/Specific/solinas32_2e255m765_12limbs/Synthesis.v
deleted file mode 100644
index ec9941b4a..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e255m765_12limbs.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_2e255m765_12limbs/compiler.sh b/src/Specific/solinas32_2e255m765_12limbs/compiler.sh
deleted file mode 100755
index e8ad2001c..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,21,22,21,21,21,22,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<255) - 765' "$@"
diff --git a/src/Specific/solinas32_2e255m765_12limbs/compilerxx.sh b/src/Specific/solinas32_2e255m765_12limbs/compilerxx.sh
deleted file mode 100755
index f3557c134..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,21,22,21,21,21,22,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<255) - 765' "$@"
diff --git a/src/Specific/solinas32_2e255m765_12limbs/feadd.c b/src/Specific/solinas32_2e255m765_12limbs/feadd.c
deleted file mode 100644
index 68eccd2bc..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/feadd.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void feadd(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- out[0] = (x5 + x27);
- out[1] = (x7 + x29);
- out[2] = (x9 + x31);
- out[3] = (x11 + x33);
- out[4] = (x13 + x35);
- out[5] = (x15 + x37);
- out[6] = (x17 + x39);
- out[7] = (x19 + x41);
- out[8] = (x21 + x43);
- out[9] = (x23 + x45);
- out[10] = (x25 + x47);
- out[11] = (x24 + x46);
- }}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m765_12limbs/feadd.v b/src/Specific/solinas32_2e255m765_12limbs/feadd.v
deleted file mode 100644
index 77cf51c9a..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m765_12limbs.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_2e255m765_12limbs/feaddDisplay.log b/src/Specific/solinas32_2e255m765_12limbs/feaddDisplay.log
deleted file mode 100644
index 4109af59c..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- ((x24 + x46), (x25 + x47), (x23 + x45), (x21 + x43), (x19 + x41), (x17 + x39), (x15 + x37), (x13 + x35), (x11 + x33), (x9 + x31), (x7 + x29), (x5 + x27)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m765_12limbs/feaddDisplay.v b/src/Specific/solinas32_2e255m765_12limbs/feaddDisplay.v
deleted file mode 100644
index becc9e995..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m765_12limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e255m765_12limbs/fecarry.v b/src/Specific/solinas32_2e255m765_12limbs/fecarry.v
deleted file mode 100644
index 637a6f32a..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m765_12limbs.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_2e255m765_12limbs/fecarryDisplay.v b/src/Specific/solinas32_2e255m765_12limbs/fecarryDisplay.v
deleted file mode 100644
index 5d1bac22b..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m765_12limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e255m765_12limbs/femul.c b/src/Specific/solinas32_2e255m765_12limbs/femul.c
deleted file mode 100644
index 6b918503d..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/femul.c
+++ /dev/null
@@ -1,92 +0,0 @@
-static void femul(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- { uint64_t x48 = (((uint64_t)x5 * x46) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + ((0x2 * ((uint64_t)x15 * x39)) + ((0x2 * ((uint64_t)x17 * x37)) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + ((0x2 * ((uint64_t)x23 * x31)) + ((0x2 * ((uint64_t)x25 * x29)) + ((uint64_t)x24 * x27))))))))))));
- { uint64_t x49 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + ((0x2 * ((uint64_t)x15 * x37)) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((0x2 * ((uint64_t)x23 * x29)) + ((uint64_t)x25 * x27))))))))))) + (0x2fd * ((uint64_t)x24 * x46)));
- { uint64_t x50 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (((uint64_t)x21 * x29) + ((uint64_t)x23 * x27)))))))))) + (0x2fd * (((uint64_t)x25 * x46) + ((uint64_t)x24 * x47))));
- { uint64_t x51 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + (((uint64_t)x13 * x35) + ((0x2 * ((uint64_t)x15 * x33)) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((uint64_t)x21 * x27))))))))) + (0x2fd * ((0x2 * ((uint64_t)x23 * x46)) + ((0x2 * ((uint64_t)x25 * x47)) + (0x2 * ((uint64_t)x24 * x45))))));
- { uint64_t x52 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + ((0x2 * ((uint64_t)x15 * x31)) + ((0x2 * ((uint64_t)x17 * x29)) + ((uint64_t)x19 * x27)))))))) + (0x2fd * (((uint64_t)x21 * x46) + ((0x2 * ((uint64_t)x23 * x47)) + ((0x2 * ((uint64_t)x25 * x45)) + ((uint64_t)x24 * x43))))));
- { uint64_t x53 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + ((0x2 * ((uint64_t)x15 * x29)) + ((uint64_t)x17 * x27))))))) + (0x2fd * (((uint64_t)x19 * x46) + (((uint64_t)x21 * x47) + ((0x2 * ((uint64_t)x23 * x45)) + (((uint64_t)x25 * x43) + ((uint64_t)x24 * x41)))))));
- { uint64_t x54 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + ((uint64_t)x15 * x27)))))) + (0x2fd * (((uint64_t)x17 * x46) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + ((uint64_t)x24 * x39))))))));
- { uint64_t x55 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((uint64_t)x13 * x27))))) + (0x2fd * ((0x2 * ((uint64_t)x15 * x46)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + (0x2 * ((uint64_t)x24 * x37))))))))));
- { uint64_t x56 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((uint64_t)x11 * x27)))) + (0x2fd * (((uint64_t)x13 * x46) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + ((0x2 * ((uint64_t)x23 * x39)) + ((0x2 * ((uint64_t)x25 * x37)) + ((uint64_t)x24 * x35))))))))));
- { uint64_t x57 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((uint64_t)x9 * x27))) + (0x2fd * (((uint64_t)x11 * x46) + (((uint64_t)x13 * x47) + ((0x2 * ((uint64_t)x15 * x45)) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + ((0x2 * ((uint64_t)x23 * x37)) + (((uint64_t)x25 * x35) + ((uint64_t)x24 * x33)))))))))));
- { uint64_t x58 = ((((uint64_t)x5 * x29) + ((uint64_t)x7 * x27)) + (0x2fd * (((uint64_t)x9 * x46) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + (((uint64_t)x25 * x33) + ((uint64_t)x24 * x31))))))))))));
- { uint64_t x59 = (((uint64_t)x5 * x27) + (0x2fd * ((0x2 * ((uint64_t)x7 * x46)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + (((uint64_t)x13 * x43) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + ((0x2 * ((uint64_t)x23 * x33)) + ((0x2 * ((uint64_t)x25 * x31)) + (0x2 * ((uint64_t)x24 * x29))))))))))))));
- { uint64_t x60 = (x59 >> 0x16);
- { uint32_t x61 = ((uint32_t)x59 & 0x3fffff);
- { uint64_t x62 = (x60 + x58);
- { uint64_t x63 = (x62 >> 0x15);
- { uint32_t x64 = ((uint32_t)x62 & 0x1fffff);
- { uint64_t x65 = (x63 + x57);
- { uint64_t x66 = (x65 >> 0x15);
- { uint32_t x67 = ((uint32_t)x65 & 0x1fffff);
- { uint64_t x68 = (x66 + x56);
- { uint64_t x69 = (x68 >> 0x15);
- { uint32_t x70 = ((uint32_t)x68 & 0x1fffff);
- { uint64_t x71 = (x69 + x55);
- { uint64_t x72 = (x71 >> 0x16);
- { uint32_t x73 = ((uint32_t)x71 & 0x3fffff);
- { uint64_t x74 = (x72 + x54);
- { uint64_t x75 = (x74 >> 0x15);
- { uint32_t x76 = ((uint32_t)x74 & 0x1fffff);
- { uint64_t x77 = (x75 + x53);
- { uint64_t x78 = (x77 >> 0x15);
- { uint32_t x79 = ((uint32_t)x77 & 0x1fffff);
- { uint64_t x80 = (x78 + x52);
- { uint64_t x81 = (x80 >> 0x15);
- { uint32_t x82 = ((uint32_t)x80 & 0x1fffff);
- { uint64_t x83 = (x81 + x51);
- { uint64_t x84 = (x83 >> 0x16);
- { uint32_t x85 = ((uint32_t)x83 & 0x3fffff);
- { uint64_t x86 = (x84 + x50);
- { uint64_t x87 = (x86 >> 0x15);
- { uint32_t x88 = ((uint32_t)x86 & 0x1fffff);
- { uint64_t x89 = (x87 + x49);
- { uint64_t x90 = (x89 >> 0x15);
- { uint32_t x91 = ((uint32_t)x89 & 0x1fffff);
- { uint64_t x92 = (x90 + x48);
- { uint32_t x93 = (uint32_t) (x92 >> 0x15);
- { uint32_t x94 = ((uint32_t)x92 & 0x1fffff);
- { uint64_t x95 = (x61 + ((uint64_t)0x2fd * x93));
- { uint32_t x96 = (uint32_t) (x95 >> 0x16);
- { uint32_t x97 = ((uint32_t)x95 & 0x3fffff);
- { uint32_t x98 = (x96 + x64);
- { uint32_t x99 = (x98 >> 0x15);
- { uint32_t x100 = (x98 & 0x1fffff);
- out[0] = x97;
- out[1] = x100;
- out[2] = (x99 + x67);
- out[3] = x70;
- out[4] = x73;
- out[5] = x76;
- out[6] = x79;
- out[7] = x82;
- out[8] = x85;
- out[9] = x88;
- out[10] = x91;
- out[11] = x94;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m765_12limbs/femul.v b/src/Specific/solinas32_2e255m765_12limbs/femul.v
deleted file mode 100644
index 52be0d9e3..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m765_12limbs.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_2e255m765_12limbs/femulDisplay.log b/src/Specific/solinas32_2e255m765_12limbs/femulDisplay.log
deleted file mode 100644
index bd79c323a..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/femulDisplay.log
+++ /dev/null
@@ -1,60 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- uint64_t x48 = (((uint64_t)x5 * x46) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + ((0x2 * ((uint64_t)x15 * x39)) + ((0x2 * ((uint64_t)x17 * x37)) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + ((0x2 * ((uint64_t)x23 * x31)) + ((0x2 * ((uint64_t)x25 * x29)) + ((uint64_t)x24 * x27))))))))))));
- uint64_t x49 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + ((0x2 * ((uint64_t)x15 * x37)) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((0x2 * ((uint64_t)x23 * x29)) + ((uint64_t)x25 * x27))))))))))) + (0x2fd * ((uint64_t)x24 * x46)));
- uint64_t x50 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (((uint64_t)x21 * x29) + ((uint64_t)x23 * x27)))))))))) + (0x2fd * (((uint64_t)x25 * x46) + ((uint64_t)x24 * x47))));
- uint64_t x51 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + (((uint64_t)x13 * x35) + ((0x2 * ((uint64_t)x15 * x33)) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((uint64_t)x21 * x27))))))))) + (0x2fd * ((0x2 * ((uint64_t)x23 * x46)) + ((0x2 * ((uint64_t)x25 * x47)) + (0x2 * ((uint64_t)x24 * x45))))));
- uint64_t x52 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + ((0x2 * ((uint64_t)x15 * x31)) + ((0x2 * ((uint64_t)x17 * x29)) + ((uint64_t)x19 * x27)))))))) + (0x2fd * (((uint64_t)x21 * x46) + ((0x2 * ((uint64_t)x23 * x47)) + ((0x2 * ((uint64_t)x25 * x45)) + ((uint64_t)x24 * x43))))));
- uint64_t x53 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + ((0x2 * ((uint64_t)x15 * x29)) + ((uint64_t)x17 * x27))))))) + (0x2fd * (((uint64_t)x19 * x46) + (((uint64_t)x21 * x47) + ((0x2 * ((uint64_t)x23 * x45)) + (((uint64_t)x25 * x43) + ((uint64_t)x24 * x41)))))));
- uint64_t x54 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + ((uint64_t)x15 * x27)))))) + (0x2fd * (((uint64_t)x17 * x46) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + ((uint64_t)x24 * x39))))))));
- uint64_t x55 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((uint64_t)x13 * x27))))) + (0x2fd * ((0x2 * ((uint64_t)x15 * x46)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + (0x2 * ((uint64_t)x24 * x37))))))))));
- uint64_t x56 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((uint64_t)x11 * x27)))) + (0x2fd * (((uint64_t)x13 * x46) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + ((0x2 * ((uint64_t)x23 * x39)) + ((0x2 * ((uint64_t)x25 * x37)) + ((uint64_t)x24 * x35))))))))));
- uint64_t x57 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((uint64_t)x9 * x27))) + (0x2fd * (((uint64_t)x11 * x46) + (((uint64_t)x13 * x47) + ((0x2 * ((uint64_t)x15 * x45)) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + ((0x2 * ((uint64_t)x23 * x37)) + (((uint64_t)x25 * x35) + ((uint64_t)x24 * x33)))))))))));
- uint64_t x58 = ((((uint64_t)x5 * x29) + ((uint64_t)x7 * x27)) + (0x2fd * (((uint64_t)x9 * x46) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + (((uint64_t)x25 * x33) + ((uint64_t)x24 * x31))))))))))));
- uint64_t x59 = (((uint64_t)x5 * x27) + (0x2fd * ((0x2 * ((uint64_t)x7 * x46)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + (((uint64_t)x13 * x43) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + ((0x2 * ((uint64_t)x23 * x33)) + ((0x2 * ((uint64_t)x25 * x31)) + (0x2 * ((uint64_t)x24 * x29))))))))))))));
- uint64_t x60 = (x59 >> 0x16);
- uint32_t x61 = ((uint32_t)x59 & 0x3fffff);
- uint64_t x62 = (x60 + x58);
- uint64_t x63 = (x62 >> 0x15);
- uint32_t x64 = ((uint32_t)x62 & 0x1fffff);
- uint64_t x65 = (x63 + x57);
- uint64_t x66 = (x65 >> 0x15);
- uint32_t x67 = ((uint32_t)x65 & 0x1fffff);
- uint64_t x68 = (x66 + x56);
- uint64_t x69 = (x68 >> 0x15);
- uint32_t x70 = ((uint32_t)x68 & 0x1fffff);
- uint64_t x71 = (x69 + x55);
- uint64_t x72 = (x71 >> 0x16);
- uint32_t x73 = ((uint32_t)x71 & 0x3fffff);
- uint64_t x74 = (x72 + x54);
- uint64_t x75 = (x74 >> 0x15);
- uint32_t x76 = ((uint32_t)x74 & 0x1fffff);
- uint64_t x77 = (x75 + x53);
- uint64_t x78 = (x77 >> 0x15);
- uint32_t x79 = ((uint32_t)x77 & 0x1fffff);
- uint64_t x80 = (x78 + x52);
- uint64_t x81 = (x80 >> 0x15);
- uint32_t x82 = ((uint32_t)x80 & 0x1fffff);
- uint64_t x83 = (x81 + x51);
- uint64_t x84 = (x83 >> 0x16);
- uint32_t x85 = ((uint32_t)x83 & 0x3fffff);
- uint64_t x86 = (x84 + x50);
- uint64_t x87 = (x86 >> 0x15);
- uint32_t x88 = ((uint32_t)x86 & 0x1fffff);
- uint64_t x89 = (x87 + x49);
- uint64_t x90 = (x89 >> 0x15);
- uint32_t x91 = ((uint32_t)x89 & 0x1fffff);
- uint64_t x92 = (x90 + x48);
- uint32_t x93 = (uint32_t) (x92 >> 0x15);
- uint32_t x94 = ((uint32_t)x92 & 0x1fffff);
- uint64_t x95 = (x61 + ((uint64_t)0x2fd * x93));
- uint32_t x96 = (uint32_t) (x95 >> 0x16);
- uint32_t x97 = ((uint32_t)x95 & 0x3fffff);
- uint32_t x98 = (x96 + x64);
- uint32_t x99 = (x98 >> 0x15);
- uint32_t x100 = (x98 & 0x1fffff);
- return (Return x94, Return x91, Return x88, Return x85, Return x82, Return x79, Return x76, Return x73, Return x70, (x99 + x67), Return x100, Return x97))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m765_12limbs/femulDisplay.v b/src/Specific/solinas32_2e255m765_12limbs/femulDisplay.v
deleted file mode 100644
index d12ab806a..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m765_12limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e255m765_12limbs/fesquare.c b/src/Specific/solinas32_2e255m765_12limbs/fesquare.c
deleted file mode 100644
index c9476e253..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/fesquare.c
+++ /dev/null
@@ -1,80 +0,0 @@
-static void fesquare(uint32_t out[12], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x23 = (((uint64_t)x2 * x21) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x21 * x2))))))))))));
- { uint64_t x24 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x2fd * ((uint64_t)x21 * x21)));
- { uint64_t x25 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x2fd * (((uint64_t)x22 * x21) + ((uint64_t)x21 * x22))));
- { uint64_t x26 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x2fd * ((0x2 * ((uint64_t)x20 * x21)) + ((0x2 * ((uint64_t)x22 * x22)) + (0x2 * ((uint64_t)x21 * x20))))));
- { uint64_t x27 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x2fd * (((uint64_t)x18 * x21) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((uint64_t)x21 * x18))))));
- { uint64_t x28 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x2fd * (((uint64_t)x16 * x21) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + ((uint64_t)x21 * x16)))))));
- { uint64_t x29 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x2fd * (((uint64_t)x14 * x21) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + ((uint64_t)x21 * x14))))))));
- { uint64_t x30 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x2fd * ((0x2 * ((uint64_t)x12 * x21)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + (0x2 * ((uint64_t)x21 * x12))))))))));
- { uint64_t x31 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x2fd * (((uint64_t)x10 * x21) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((uint64_t)x21 * x10))))))))));
- { uint64_t x32 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x2fd * (((uint64_t)x8 * x21) + (((uint64_t)x10 * x22) + ((0x2 * ((uint64_t)x12 * x20)) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + ((0x2 * ((uint64_t)x20 * x12)) + (((uint64_t)x22 * x10) + ((uint64_t)x21 * x8)))))))))));
- { uint64_t x33 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x2fd * (((uint64_t)x6 * x21) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + ((uint64_t)x21 * x6))))))))))));
- { uint64_t x34 = (((uint64_t)x2 * x2) + (0x2fd * ((0x2 * ((uint64_t)x4 * x21)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + (0x2 * ((uint64_t)x21 * x4))))))))))))));
- { uint64_t x35 = (x34 >> 0x16);
- { uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- { uint64_t x37 = (x35 + x33);
- { uint64_t x38 = (x37 >> 0x15);
- { uint32_t x39 = ((uint32_t)x37 & 0x1fffff);
- { uint64_t x40 = (x38 + x32);
- { uint64_t x41 = (x40 >> 0x15);
- { uint32_t x42 = ((uint32_t)x40 & 0x1fffff);
- { uint64_t x43 = (x41 + x31);
- { uint64_t x44 = (x43 >> 0x15);
- { uint32_t x45 = ((uint32_t)x43 & 0x1fffff);
- { uint64_t x46 = (x44 + x30);
- { uint64_t x47 = (x46 >> 0x16);
- { uint32_t x48 = ((uint32_t)x46 & 0x3fffff);
- { uint64_t x49 = (x47 + x29);
- { uint64_t x50 = (x49 >> 0x15);
- { uint32_t x51 = ((uint32_t)x49 & 0x1fffff);
- { uint64_t x52 = (x50 + x28);
- { uint64_t x53 = (x52 >> 0x15);
- { uint32_t x54 = ((uint32_t)x52 & 0x1fffff);
- { uint64_t x55 = (x53 + x27);
- { uint64_t x56 = (x55 >> 0x15);
- { uint32_t x57 = ((uint32_t)x55 & 0x1fffff);
- { uint64_t x58 = (x56 + x26);
- { uint64_t x59 = (x58 >> 0x16);
- { uint32_t x60 = ((uint32_t)x58 & 0x3fffff);
- { uint64_t x61 = (x59 + x25);
- { uint64_t x62 = (x61 >> 0x15);
- { uint32_t x63 = ((uint32_t)x61 & 0x1fffff);
- { uint64_t x64 = (x62 + x24);
- { uint64_t x65 = (x64 >> 0x15);
- { uint32_t x66 = ((uint32_t)x64 & 0x1fffff);
- { uint64_t x67 = (x65 + x23);
- { uint32_t x68 = (uint32_t) (x67 >> 0x15);
- { uint32_t x69 = ((uint32_t)x67 & 0x1fffff);
- { uint64_t x70 = (x36 + ((uint64_t)0x2fd * x68));
- { uint32_t x71 = (uint32_t) (x70 >> 0x16);
- { uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- { uint32_t x73 = (x71 + x39);
- { uint32_t x74 = (x73 >> 0x15);
- { uint32_t x75 = (x73 & 0x1fffff);
- out[0] = x72;
- out[1] = x75;
- out[2] = (x74 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- out[7] = x57;
- out[8] = x60;
- out[9] = x63;
- out[10] = x66;
- out[11] = x69;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m765_12limbs/fesquare.v b/src/Specific/solinas32_2e255m765_12limbs/fesquare.v
deleted file mode 100644
index 55f121919..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m765_12limbs.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_2e255m765_12limbs/fesquareDisplay.log b/src/Specific/solinas32_2e255m765_12limbs/fesquareDisplay.log
deleted file mode 100644
index 7ac4be662..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,60 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x23 = (((uint64_t)x2 * x21) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x21 * x2))))))))))));
- uint64_t x24 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x2fd * ((uint64_t)x21 * x21)));
- uint64_t x25 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x2fd * (((uint64_t)x22 * x21) + ((uint64_t)x21 * x22))));
- uint64_t x26 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x2fd * ((0x2 * ((uint64_t)x20 * x21)) + ((0x2 * ((uint64_t)x22 * x22)) + (0x2 * ((uint64_t)x21 * x20))))));
- uint64_t x27 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x2fd * (((uint64_t)x18 * x21) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((uint64_t)x21 * x18))))));
- uint64_t x28 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x2fd * (((uint64_t)x16 * x21) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + ((uint64_t)x21 * x16)))))));
- uint64_t x29 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x2fd * (((uint64_t)x14 * x21) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + ((uint64_t)x21 * x14))))))));
- uint64_t x30 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x2fd * ((0x2 * ((uint64_t)x12 * x21)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + (0x2 * ((uint64_t)x21 * x12))))))))));
- uint64_t x31 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x2fd * (((uint64_t)x10 * x21) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((uint64_t)x21 * x10))))))))));
- uint64_t x32 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x2fd * (((uint64_t)x8 * x21) + (((uint64_t)x10 * x22) + ((0x2 * ((uint64_t)x12 * x20)) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + ((0x2 * ((uint64_t)x20 * x12)) + (((uint64_t)x22 * x10) + ((uint64_t)x21 * x8)))))))))));
- uint64_t x33 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x2fd * (((uint64_t)x6 * x21) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + ((uint64_t)x21 * x6))))))))))));
- uint64_t x34 = (((uint64_t)x2 * x2) + (0x2fd * ((0x2 * ((uint64_t)x4 * x21)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + (0x2 * ((uint64_t)x21 * x4))))))))))))));
- uint64_t x35 = (x34 >> 0x16);
- uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- uint64_t x37 = (x35 + x33);
- uint64_t x38 = (x37 >> 0x15);
- uint32_t x39 = ((uint32_t)x37 & 0x1fffff);
- uint64_t x40 = (x38 + x32);
- uint64_t x41 = (x40 >> 0x15);
- uint32_t x42 = ((uint32_t)x40 & 0x1fffff);
- uint64_t x43 = (x41 + x31);
- uint64_t x44 = (x43 >> 0x15);
- uint32_t x45 = ((uint32_t)x43 & 0x1fffff);
- uint64_t x46 = (x44 + x30);
- uint64_t x47 = (x46 >> 0x16);
- uint32_t x48 = ((uint32_t)x46 & 0x3fffff);
- uint64_t x49 = (x47 + x29);
- uint64_t x50 = (x49 >> 0x15);
- uint32_t x51 = ((uint32_t)x49 & 0x1fffff);
- uint64_t x52 = (x50 + x28);
- uint64_t x53 = (x52 >> 0x15);
- uint32_t x54 = ((uint32_t)x52 & 0x1fffff);
- uint64_t x55 = (x53 + x27);
- uint64_t x56 = (x55 >> 0x15);
- uint32_t x57 = ((uint32_t)x55 & 0x1fffff);
- uint64_t x58 = (x56 + x26);
- uint64_t x59 = (x58 >> 0x16);
- uint32_t x60 = ((uint32_t)x58 & 0x3fffff);
- uint64_t x61 = (x59 + x25);
- uint64_t x62 = (x61 >> 0x15);
- uint32_t x63 = ((uint32_t)x61 & 0x1fffff);
- uint64_t x64 = (x62 + x24);
- uint64_t x65 = (x64 >> 0x15);
- uint32_t x66 = ((uint32_t)x64 & 0x1fffff);
- uint64_t x67 = (x65 + x23);
- uint32_t x68 = (uint32_t) (x67 >> 0x15);
- uint32_t x69 = ((uint32_t)x67 & 0x1fffff);
- uint64_t x70 = (x36 + ((uint64_t)0x2fd * x68));
- uint32_t x71 = (uint32_t) (x70 >> 0x16);
- uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- uint32_t x73 = (x71 + x39);
- uint32_t x74 = (x73 >> 0x15);
- uint32_t x75 = (x73 & 0x1fffff);
- return (Return x69, Return x66, Return x63, Return x60, Return x57, Return x54, Return x51, Return x48, Return x45, (x74 + x42), Return x75, Return x72))
-x
- : 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m765_12limbs/fesquareDisplay.v b/src/Specific/solinas32_2e255m765_12limbs/fesquareDisplay.v
deleted file mode 100644
index bb7b1d2d6..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m765_12limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e255m765_12limbs/fesub.c b/src/Specific/solinas32_2e255m765_12limbs/fesub.c
deleted file mode 100644
index 97b5a5b26..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/fesub.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void fesub(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- out[0] = ((0x7ffa06 + x5) - x27);
- out[1] = ((0x3ffffe + x7) - x29);
- out[2] = ((0x3ffffe + x9) - x31);
- out[3] = ((0x3ffffe + x11) - x33);
- out[4] = ((0x7ffffe + x13) - x35);
- out[5] = ((0x3ffffe + x15) - x37);
- out[6] = ((0x3ffffe + x17) - x39);
- out[7] = ((0x3ffffe + x19) - x41);
- out[8] = ((0x7ffffe + x21) - x43);
- out[9] = ((0x3ffffe + x23) - x45);
- out[10] = ((0x3ffffe + x25) - x47);
- out[11] = ((0x3ffffe + x24) - x46);
- }}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m765_12limbs/fesub.v b/src/Specific/solinas32_2e255m765_12limbs/fesub.v
deleted file mode 100644
index 2082839e9..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m765_12limbs.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_2e255m765_12limbs/fesubDisplay.log b/src/Specific/solinas32_2e255m765_12limbs/fesubDisplay.log
deleted file mode 100644
index ad8b5da3c..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- (((0x3ffffe + x24) - x46), ((0x3ffffe + x25) - x47), ((0x3ffffe + x23) - x45), ((0x7ffffe + x21) - x43), ((0x3ffffe + x19) - x41), ((0x3ffffe + x17) - x39), ((0x3ffffe + x15) - x37), ((0x7ffffe + x13) - x35), ((0x3ffffe + x11) - x33), ((0x3ffffe + x9) - x31), ((0x3ffffe + x7) - x29), ((0x7ffa06 + x5) - x27)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m765_12limbs/fesubDisplay.v b/src/Specific/solinas32_2e255m765_12limbs/fesubDisplay.v
deleted file mode 100644
index f034a61d3..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m765_12limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e255m765_12limbs/freeze.c b/src/Specific/solinas32_2e255m765_12limbs/freeze.c
deleted file mode 100644
index 8e245f5f1..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/freeze.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void freeze(uint32_t out[12], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffd03);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x4, 0x1fffff);
- { uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x6, 0x1fffff);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x8, 0x1fffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x10, 0x3fffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x12, 0x1fffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x14, 0x1fffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x16, 0x1fffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x18, 0x3fffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x20, 0x1fffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x22, 0x1fffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x21, 0x1fffff);
- { uint32_t x59 = cmovznz32(x58, 0x0, 0xffffffff);
- { uint32_t x60 = (x59 & 0x3ffd03);
- { uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x24, Return x60);
- { uint32_t x64 = (x59 & 0x1fffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x27, Return x64);
- { uint32_t x68 = (x59 & 0x1fffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x30, Return x68);
- { uint32_t x72 = (x59 & 0x1fffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x33, Return x72);
- { uint32_t x76 = (x59 & 0x3fffff);
- { uint32_t x78, uint8_t x79 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x36, Return x76);
- { uint32_t x80 = (x59 & 0x1fffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x39, Return x80);
- { uint32_t x84 = (x59 & 0x1fffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x42, Return x84);
- { uint32_t x88 = (x59 & 0x1fffff);
- { uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x45, Return x88);
- { uint32_t x92 = (x59 & 0x3fffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x48, Return x92);
- { uint32_t x96 = (x59 & 0x1fffff);
- { uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x51, Return x96);
- { uint32_t x100 = (x59 & 0x1fffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x54, Return x100);
- { uint32_t x104 = (x59 & 0x1fffff);
- { uint32_t x106, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x57, Return x104);
- out[0] = x62;
- out[1] = x66;
- out[2] = x70;
- out[3] = x74;
- out[4] = x78;
- out[5] = x82;
- out[6] = x86;
- out[7] = x90;
- out[8] = x94;
- out[9] = x98;
- out[10] = x102;
- out[11] = x106;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m765_12limbs/freeze.v b/src/Specific/solinas32_2e255m765_12limbs/freeze.v
deleted file mode 100644
index 40dd4712e..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m765_12limbs.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_2e255m765_12limbs/freezeDisplay.log b/src/Specific/solinas32_2e255m765_12limbs/freezeDisplay.log
deleted file mode 100644
index 49f69fa90..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/freezeDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffd03);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x4, 0x1fffff);
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x6, 0x1fffff);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x8, 0x1fffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x10, 0x3fffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x12, 0x1fffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x14, 0x1fffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x16, 0x1fffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x18, 0x3fffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x20, 0x1fffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x22, 0x1fffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x21, 0x1fffff);
- uint32_t x59 = cmovznz32(x58, 0x0, 0xffffffff);
- uint32_t x60 = (x59 & 0x3ffd03);
- uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x24, Return x60);
- uint32_t x64 = (x59 & 0x1fffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x27, Return x64);
- uint32_t x68 = (x59 & 0x1fffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x30, Return x68);
- uint32_t x72 = (x59 & 0x1fffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x33, Return x72);
- uint32_t x76 = (x59 & 0x3fffff);
- uint32_t x78, uint8_t x79 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x36, Return x76);
- uint32_t x80 = (x59 & 0x1fffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x39, Return x80);
- uint32_t x84 = (x59 & 0x1fffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x42, Return x84);
- uint32_t x88 = (x59 & 0x1fffff);
- uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x45, Return x88);
- uint32_t x92 = (x59 & 0x3fffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x48, Return x92);
- uint32_t x96 = (x59 & 0x1fffff);
- uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x51, Return x96);
- uint32_t x100 = (x59 & 0x1fffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x54, Return x100);
- uint32_t x104 = (x59 & 0x1fffff);
- uint32_t x106, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x57, Return x104);
- (Return x106, Return x102, Return x98, Return x94, Return x90, Return x86, Return x82, Return x78, Return x74, Return x70, Return x66, Return x62))
-x
- : 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m765_12limbs/freezeDisplay.v b/src/Specific/solinas32_2e255m765_12limbs/freezeDisplay.v
deleted file mode 100644
index d2b047369..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m765_12limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e255m765_12limbs/py_interpreter.sh b/src/Specific/solinas32_2e255m765_12limbs/py_interpreter.sh
deleted file mode 100755
index e14df90fc..000000000
--- a/src/Specific/solinas32_2e255m765_12limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**255 - 765' -Dmodulus_bytes='21.25' -Da24='121665'
diff --git a/src/Specific/solinas32_2e255m765_13limbs/CurveParameters.v b/src/Specific/solinas32_2e255m765_13limbs/CurveParameters.v
deleted file mode 100644
index aaaed21cd..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^255 - 765
-Base: 19 + 8/13
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 13%nat;
- base := 19 + 8/13;
- bitwidth := 32;
- s := 2^255;
- c := [(1, 765)];
- carry_chains := Some [seq 0 (pred 13); [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_2e255m765_13limbs/Synthesis.v b/src/Specific/solinas32_2e255m765_13limbs/Synthesis.v
deleted file mode 100644
index 9dcde15b4..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e255m765_13limbs.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_2e255m765_13limbs/compiler.sh b/src/Specific/solinas32_2e255m765_13limbs/compiler.sh
deleted file mode 100755
index 6383cdc0d..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{20,20,19,20,20,19,20,19,20,20,19,20,19}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<255) - 765' "$@"
diff --git a/src/Specific/solinas32_2e255m765_13limbs/compilerxx.sh b/src/Specific/solinas32_2e255m765_13limbs/compilerxx.sh
deleted file mode 100755
index f02b7a0f4..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{20,20,19,20,20,19,20,19,20,20,19,20,19}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<255) - 765' "$@"
diff --git a/src/Specific/solinas32_2e255m765_13limbs/feadd.c b/src/Specific/solinas32_2e255m765_13limbs/feadd.c
deleted file mode 100644
index dbbe1da57..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/feadd.c
+++ /dev/null
@@ -1,42 +0,0 @@
-static void feadd(uint32_t out[13], const uint32_t in1[13], const uint32_t in2[13]) {
- { const uint32_t x26 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x50 = in2[12];
- { const uint32_t x51 = in2[11];
- { const uint32_t x49 = in2[10];
- { const uint32_t x47 = in2[9];
- { const uint32_t x45 = in2[8];
- { const uint32_t x43 = in2[7];
- { const uint32_t x41 = in2[6];
- { const uint32_t x39 = in2[5];
- { const uint32_t x37 = in2[4];
- { const uint32_t x35 = in2[3];
- { const uint32_t x33 = in2[2];
- { const uint32_t x31 = in2[1];
- { const uint32_t x29 = in2[0];
- out[0] = (x5 + x29);
- out[1] = (x7 + x31);
- out[2] = (x9 + x33);
- out[3] = (x11 + x35);
- out[4] = (x13 + x37);
- out[5] = (x15 + x39);
- out[6] = (x17 + x41);
- out[7] = (x19 + x43);
- out[8] = (x21 + x45);
- out[9] = (x23 + x47);
- out[10] = (x25 + x49);
- out[11] = (x27 + x51);
- out[12] = (x26 + x50);
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m765_13limbs/feadd.v b/src/Specific/solinas32_2e255m765_13limbs/feadd.v
deleted file mode 100644
index 8e5e66697..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m765_13limbs.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_2e255m765_13limbs/feaddDisplay.log b/src/Specific/solinas32_2e255m765_13limbs/feaddDisplay.log
deleted file mode 100644
index e64abeaba..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x26, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29))%core,
- ((x26 + x50), (x27 + x51), (x25 + x49), (x23 + x47), (x21 + x45), (x19 + x43), (x17 + x41), (x15 + x39), (x13 + x37), (x11 + x35), (x9 + x33), (x7 + x31), (x5 + x29)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m765_13limbs/feaddDisplay.v b/src/Specific/solinas32_2e255m765_13limbs/feaddDisplay.v
deleted file mode 100644
index 822686565..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m765_13limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e255m765_13limbs/fecarry.v b/src/Specific/solinas32_2e255m765_13limbs/fecarry.v
deleted file mode 100644
index 2f052b351..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m765_13limbs.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_2e255m765_13limbs/fecarryDisplay.v b/src/Specific/solinas32_2e255m765_13limbs/fecarryDisplay.v
deleted file mode 100644
index 8099db35c..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m765_13limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e255m765_13limbs/femul.c b/src/Specific/solinas32_2e255m765_13limbs/femul.c
deleted file mode 100644
index e42d85f01..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/femul.c
+++ /dev/null
@@ -1,99 +0,0 @@
-static void femul(uint32_t out[13], const uint32_t in1[13], const uint32_t in2[13]) {
- { const uint32_t x26 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x50 = in2[12];
- { const uint32_t x51 = in2[11];
- { const uint32_t x49 = in2[10];
- { const uint32_t x47 = in2[9];
- { const uint32_t x45 = in2[8];
- { const uint32_t x43 = in2[7];
- { const uint32_t x41 = in2[6];
- { const uint32_t x39 = in2[5];
- { const uint32_t x37 = in2[4];
- { const uint32_t x35 = in2[3];
- { const uint32_t x33 = in2[2];
- { const uint32_t x31 = in2[1];
- { const uint32_t x29 = in2[0];
- { uint64_t x52 = (((uint64_t)x5 * x50) + (((uint64_t)x7 * x51) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + ((0x2 * ((uint64_t)x15 * x43)) + (((uint64_t)x17 * x41) + ((0x2 * ((uint64_t)x19 * x39)) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + ((0x2 * ((uint64_t)x25 * x33)) + (((uint64_t)x27 * x31) + ((uint64_t)x26 * x29)))))))))))));
- { uint64_t x53 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + (((uint64_t)x11 * x45) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + ((0x2 * ((uint64_t)x23 * x33)) + ((0x2 * ((uint64_t)x25 * x31)) + ((uint64_t)x27 * x29)))))))))))) + (0x2fd * (0x2 * ((uint64_t)x26 * x50))));
- { uint64_t x54 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + ((0x2 * ((uint64_t)x15 * x39)) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + (((uint64_t)x23 * x31) + ((uint64_t)x25 * x29))))))))))) + (0x2fd * (((uint64_t)x27 * x50) + ((uint64_t)x26 * x51))));
- { uint64_t x55 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + ((0x2 * ((uint64_t)x9 * x43)) + (((uint64_t)x11 * x41) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + (((uint64_t)x17 * x35) + ((0x2 * ((uint64_t)x19 * x33)) + (((uint64_t)x21 * x31) + ((uint64_t)x23 * x29)))))))))) + (0x2fd * ((0x2 * ((uint64_t)x25 * x50)) + (((uint64_t)x27 * x51) + (0x2 * ((uint64_t)x26 * x49))))));
- { uint64_t x56 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + ((0x2 * ((uint64_t)x13 * x37)) + ((0x2 * ((uint64_t)x15 * x35)) + ((0x2 * ((uint64_t)x17 * x33)) + ((0x2 * ((uint64_t)x19 * x31)) + ((uint64_t)x21 * x29))))))))) + (0x2fd * ((0x2 * ((uint64_t)x23 * x50)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + (0x2 * ((uint64_t)x26 * x47)))))));
- { uint64_t x57 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + ((0x2 * ((uint64_t)x9 * x39)) + (((uint64_t)x11 * x37) + (((uint64_t)x13 * x35) + ((0x2 * ((uint64_t)x15 * x33)) + (((uint64_t)x17 * x31) + ((uint64_t)x19 * x29)))))))) + (0x2fd * (((uint64_t)x21 * x50) + (((uint64_t)x23 * x51) + ((0x2 * ((uint64_t)x25 * x49)) + (((uint64_t)x27 * x47) + ((uint64_t)x26 * x45)))))));
- { uint64_t x58 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + (((uint64_t)x11 * x35) + ((0x2 * ((uint64_t)x13 * x33)) + ((0x2 * ((uint64_t)x15 * x31)) + ((uint64_t)x17 * x29))))))) + (0x2fd * ((0x2 * ((uint64_t)x19 * x50)) + (((uint64_t)x21 * x51) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + (((uint64_t)x27 * x45) + (0x2 * ((uint64_t)x26 * x43)))))))));
- { uint64_t x59 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + ((uint64_t)x15 * x29)))))) + (0x2fd * (((uint64_t)x17 * x50) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + ((uint64_t)x26 * x41)))))))));
- { uint64_t x60 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + ((0x2 * ((uint64_t)x9 * x33)) + (((uint64_t)x11 * x31) + ((uint64_t)x13 * x29))))) + (0x2fd * ((0x2 * ((uint64_t)x15 * x50)) + (((uint64_t)x17 * x51) + ((0x2 * ((uint64_t)x19 * x49)) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + ((0x2 * ((uint64_t)x25 * x43)) + (((uint64_t)x27 * x41) + (0x2 * ((uint64_t)x26 * x39)))))))))));
- { uint64_t x61 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((uint64_t)x11 * x29)))) + (0x2fd * ((0x2 * ((uint64_t)x13 * x50)) + ((0x2 * ((uint64_t)x15 * x51)) + ((0x2 * ((uint64_t)x17 * x49)) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + ((0x2 * ((uint64_t)x23 * x43)) + ((0x2 * ((uint64_t)x25 * x41)) + ((0x2 * ((uint64_t)x27 * x39)) + (0x2 * ((uint64_t)x26 * x37))))))))))));
- { uint64_t x62 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + ((uint64_t)x9 * x29))) + (0x2fd * (((uint64_t)x11 * x50) + (((uint64_t)x13 * x51) + ((0x2 * ((uint64_t)x15 * x49)) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + ((0x2 * ((uint64_t)x25 * x39)) + (((uint64_t)x27 * x37) + ((uint64_t)x26 * x35))))))))))));
- { uint64_t x63 = ((((uint64_t)x5 * x31) + ((uint64_t)x7 * x29)) + (0x2fd * ((0x2 * ((uint64_t)x9 * x50)) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + (((uint64_t)x17 * x45) + ((0x2 * ((uint64_t)x19 * x43)) + (((uint64_t)x21 * x41) + ((0x2 * ((uint64_t)x23 * x39)) + ((0x2 * ((uint64_t)x25 * x37)) + (((uint64_t)x27 * x35) + (0x2 * ((uint64_t)x26 * x33))))))))))))));
- { uint64_t x64 = (((uint64_t)x5 * x29) + (0x2fd * ((0x2 * ((uint64_t)x7 * x50)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((0x2 * ((uint64_t)x25 * x35)) + ((0x2 * ((uint64_t)x27 * x33)) + (0x2 * ((uint64_t)x26 * x31)))))))))))))));
- { uint64_t x65 = (x64 >> 0x14);
- { uint32_t x66 = ((uint32_t)x64 & 0xfffff);
- { uint64_t x67 = (x65 + x63);
- { uint64_t x68 = (x67 >> 0x14);
- { uint32_t x69 = ((uint32_t)x67 & 0xfffff);
- { uint64_t x70 = (x68 + x62);
- { uint64_t x71 = (x70 >> 0x13);
- { uint32_t x72 = ((uint32_t)x70 & 0x7ffff);
- { uint64_t x73 = (x71 + x61);
- { uint64_t x74 = (x73 >> 0x14);
- { uint32_t x75 = ((uint32_t)x73 & 0xfffff);
- { uint64_t x76 = (x74 + x60);
- { uint64_t x77 = (x76 >> 0x14);
- { uint32_t x78 = ((uint32_t)x76 & 0xfffff);
- { uint64_t x79 = (x77 + x59);
- { uint64_t x80 = (x79 >> 0x13);
- { uint32_t x81 = ((uint32_t)x79 & 0x7ffff);
- { uint64_t x82 = (x80 + x58);
- { uint64_t x83 = (x82 >> 0x14);
- { uint32_t x84 = ((uint32_t)x82 & 0xfffff);
- { uint64_t x85 = (x83 + x57);
- { uint64_t x86 = (x85 >> 0x13);
- { uint32_t x87 = ((uint32_t)x85 & 0x7ffff);
- { uint64_t x88 = (x86 + x56);
- { uint64_t x89 = (x88 >> 0x14);
- { uint32_t x90 = ((uint32_t)x88 & 0xfffff);
- { uint64_t x91 = (x89 + x55);
- { uint64_t x92 = (x91 >> 0x14);
- { uint32_t x93 = ((uint32_t)x91 & 0xfffff);
- { uint64_t x94 = (x92 + x54);
- { uint64_t x95 = (x94 >> 0x13);
- { uint32_t x96 = ((uint32_t)x94 & 0x7ffff);
- { uint64_t x97 = (x95 + x53);
- { uint64_t x98 = (x97 >> 0x14);
- { uint32_t x99 = ((uint32_t)x97 & 0xfffff);
- { uint64_t x100 = (x98 + x52);
- { uint32_t x101 = (uint32_t) (x100 >> 0x13);
- { uint32_t x102 = ((uint32_t)x100 & 0x7ffff);
- { uint64_t x103 = (x66 + ((uint64_t)0x2fd * x101));
- { uint32_t x104 = (uint32_t) (x103 >> 0x14);
- { uint32_t x105 = ((uint32_t)x103 & 0xfffff);
- { uint32_t x106 = (x104 + x69);
- { uint32_t x107 = (x106 >> 0x14);
- { uint32_t x108 = (x106 & 0xfffff);
- out[0] = x105;
- out[1] = x108;
- out[2] = (x107 + x72);
- out[3] = x75;
- out[4] = x78;
- out[5] = x81;
- out[6] = x84;
- out[7] = x87;
- out[8] = x90;
- out[9] = x93;
- out[10] = x96;
- out[11] = x99;
- out[12] = x102;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m765_13limbs/femul.v b/src/Specific/solinas32_2e255m765_13limbs/femul.v
deleted file mode 100644
index f787b6148..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m765_13limbs.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_2e255m765_13limbs/femulDisplay.log b/src/Specific/solinas32_2e255m765_13limbs/femulDisplay.log
deleted file mode 100644
index 587233e55..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/femulDisplay.log
+++ /dev/null
@@ -1,64 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x26, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29))%core,
- uint64_t x52 = (((uint64_t)x5 * x50) + (((uint64_t)x7 * x51) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + ((0x2 * ((uint64_t)x15 * x43)) + (((uint64_t)x17 * x41) + ((0x2 * ((uint64_t)x19 * x39)) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + ((0x2 * ((uint64_t)x25 * x33)) + (((uint64_t)x27 * x31) + ((uint64_t)x26 * x29)))))))))))));
- uint64_t x53 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + (((uint64_t)x11 * x45) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + ((0x2 * ((uint64_t)x23 * x33)) + ((0x2 * ((uint64_t)x25 * x31)) + ((uint64_t)x27 * x29)))))))))))) + (0x2fd * (0x2 * ((uint64_t)x26 * x50))));
- uint64_t x54 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + ((0x2 * ((uint64_t)x15 * x39)) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + (((uint64_t)x23 * x31) + ((uint64_t)x25 * x29))))))))))) + (0x2fd * (((uint64_t)x27 * x50) + ((uint64_t)x26 * x51))));
- uint64_t x55 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + ((0x2 * ((uint64_t)x9 * x43)) + (((uint64_t)x11 * x41) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + (((uint64_t)x17 * x35) + ((0x2 * ((uint64_t)x19 * x33)) + (((uint64_t)x21 * x31) + ((uint64_t)x23 * x29)))))))))) + (0x2fd * ((0x2 * ((uint64_t)x25 * x50)) + (((uint64_t)x27 * x51) + (0x2 * ((uint64_t)x26 * x49))))));
- uint64_t x56 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + ((0x2 * ((uint64_t)x13 * x37)) + ((0x2 * ((uint64_t)x15 * x35)) + ((0x2 * ((uint64_t)x17 * x33)) + ((0x2 * ((uint64_t)x19 * x31)) + ((uint64_t)x21 * x29))))))))) + (0x2fd * ((0x2 * ((uint64_t)x23 * x50)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + (0x2 * ((uint64_t)x26 * x47)))))));
- uint64_t x57 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + ((0x2 * ((uint64_t)x9 * x39)) + (((uint64_t)x11 * x37) + (((uint64_t)x13 * x35) + ((0x2 * ((uint64_t)x15 * x33)) + (((uint64_t)x17 * x31) + ((uint64_t)x19 * x29)))))))) + (0x2fd * (((uint64_t)x21 * x50) + (((uint64_t)x23 * x51) + ((0x2 * ((uint64_t)x25 * x49)) + (((uint64_t)x27 * x47) + ((uint64_t)x26 * x45)))))));
- uint64_t x58 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + (((uint64_t)x11 * x35) + ((0x2 * ((uint64_t)x13 * x33)) + ((0x2 * ((uint64_t)x15 * x31)) + ((uint64_t)x17 * x29))))))) + (0x2fd * ((0x2 * ((uint64_t)x19 * x50)) + (((uint64_t)x21 * x51) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + (((uint64_t)x27 * x45) + (0x2 * ((uint64_t)x26 * x43)))))))));
- uint64_t x59 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + ((uint64_t)x15 * x29)))))) + (0x2fd * (((uint64_t)x17 * x50) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + ((uint64_t)x26 * x41)))))))));
- uint64_t x60 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + ((0x2 * ((uint64_t)x9 * x33)) + (((uint64_t)x11 * x31) + ((uint64_t)x13 * x29))))) + (0x2fd * ((0x2 * ((uint64_t)x15 * x50)) + (((uint64_t)x17 * x51) + ((0x2 * ((uint64_t)x19 * x49)) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + ((0x2 * ((uint64_t)x25 * x43)) + (((uint64_t)x27 * x41) + (0x2 * ((uint64_t)x26 * x39)))))))))));
- uint64_t x61 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((uint64_t)x11 * x29)))) + (0x2fd * ((0x2 * ((uint64_t)x13 * x50)) + ((0x2 * ((uint64_t)x15 * x51)) + ((0x2 * ((uint64_t)x17 * x49)) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + ((0x2 * ((uint64_t)x23 * x43)) + ((0x2 * ((uint64_t)x25 * x41)) + ((0x2 * ((uint64_t)x27 * x39)) + (0x2 * ((uint64_t)x26 * x37))))))))))));
- uint64_t x62 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + ((uint64_t)x9 * x29))) + (0x2fd * (((uint64_t)x11 * x50) + (((uint64_t)x13 * x51) + ((0x2 * ((uint64_t)x15 * x49)) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + ((0x2 * ((uint64_t)x25 * x39)) + (((uint64_t)x27 * x37) + ((uint64_t)x26 * x35))))))))))));
- uint64_t x63 = ((((uint64_t)x5 * x31) + ((uint64_t)x7 * x29)) + (0x2fd * ((0x2 * ((uint64_t)x9 * x50)) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + (((uint64_t)x17 * x45) + ((0x2 * ((uint64_t)x19 * x43)) + (((uint64_t)x21 * x41) + ((0x2 * ((uint64_t)x23 * x39)) + ((0x2 * ((uint64_t)x25 * x37)) + (((uint64_t)x27 * x35) + (0x2 * ((uint64_t)x26 * x33))))))))))))));
- uint64_t x64 = (((uint64_t)x5 * x29) + (0x2fd * ((0x2 * ((uint64_t)x7 * x50)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((0x2 * ((uint64_t)x25 * x35)) + ((0x2 * ((uint64_t)x27 * x33)) + (0x2 * ((uint64_t)x26 * x31)))))))))))))));
- uint64_t x65 = (x64 >> 0x14);
- uint32_t x66 = ((uint32_t)x64 & 0xfffff);
- uint64_t x67 = (x65 + x63);
- uint64_t x68 = (x67 >> 0x14);
- uint32_t x69 = ((uint32_t)x67 & 0xfffff);
- uint64_t x70 = (x68 + x62);
- uint64_t x71 = (x70 >> 0x13);
- uint32_t x72 = ((uint32_t)x70 & 0x7ffff);
- uint64_t x73 = (x71 + x61);
- uint64_t x74 = (x73 >> 0x14);
- uint32_t x75 = ((uint32_t)x73 & 0xfffff);
- uint64_t x76 = (x74 + x60);
- uint64_t x77 = (x76 >> 0x14);
- uint32_t x78 = ((uint32_t)x76 & 0xfffff);
- uint64_t x79 = (x77 + x59);
- uint64_t x80 = (x79 >> 0x13);
- uint32_t x81 = ((uint32_t)x79 & 0x7ffff);
- uint64_t x82 = (x80 + x58);
- uint64_t x83 = (x82 >> 0x14);
- uint32_t x84 = ((uint32_t)x82 & 0xfffff);
- uint64_t x85 = (x83 + x57);
- uint64_t x86 = (x85 >> 0x13);
- uint32_t x87 = ((uint32_t)x85 & 0x7ffff);
- uint64_t x88 = (x86 + x56);
- uint64_t x89 = (x88 >> 0x14);
- uint32_t x90 = ((uint32_t)x88 & 0xfffff);
- uint64_t x91 = (x89 + x55);
- uint64_t x92 = (x91 >> 0x14);
- uint32_t x93 = ((uint32_t)x91 & 0xfffff);
- uint64_t x94 = (x92 + x54);
- uint64_t x95 = (x94 >> 0x13);
- uint32_t x96 = ((uint32_t)x94 & 0x7ffff);
- uint64_t x97 = (x95 + x53);
- uint64_t x98 = (x97 >> 0x14);
- uint32_t x99 = ((uint32_t)x97 & 0xfffff);
- uint64_t x100 = (x98 + x52);
- uint32_t x101 = (uint32_t) (x100 >> 0x13);
- uint32_t x102 = ((uint32_t)x100 & 0x7ffff);
- uint64_t x103 = (x66 + ((uint64_t)0x2fd * x101));
- uint32_t x104 = (uint32_t) (x103 >> 0x14);
- uint32_t x105 = ((uint32_t)x103 & 0xfffff);
- uint32_t x106 = (x104 + x69);
- uint32_t x107 = (x106 >> 0x14);
- uint32_t x108 = (x106 & 0xfffff);
- return (Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, (x107 + x72), Return x108, Return x105))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m765_13limbs/femulDisplay.v b/src/Specific/solinas32_2e255m765_13limbs/femulDisplay.v
deleted file mode 100644
index 0a9fd5275..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m765_13limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e255m765_13limbs/fesquare.c b/src/Specific/solinas32_2e255m765_13limbs/fesquare.c
deleted file mode 100644
index 96f979ec2..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/fesquare.c
+++ /dev/null
@@ -1,86 +0,0 @@
-static void fesquare(uint32_t out[13], const uint32_t in1[13]) {
- { const uint32_t x23 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x25 = (((uint64_t)x2 * x23) + (((uint64_t)x4 * x24) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + (((uint64_t)x24 * x4) + ((uint64_t)x23 * x2)))))))))))));
- { uint64_t x26 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x2fd * (0x2 * ((uint64_t)x23 * x23))));
- { uint64_t x27 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x2fd * (((uint64_t)x24 * x23) + ((uint64_t)x23 * x24))));
- { uint64_t x28 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x2fd * ((0x2 * ((uint64_t)x22 * x23)) + (((uint64_t)x24 * x24) + (0x2 * ((uint64_t)x23 * x22))))));
- { uint64_t x29 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x2fd * ((0x2 * ((uint64_t)x20 * x23)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + (0x2 * ((uint64_t)x23 * x20)))))));
- { uint64_t x30 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x2fd * (((uint64_t)x18 * x23) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + ((uint64_t)x23 * x18)))))));
- { uint64_t x31 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x2fd * ((0x2 * ((uint64_t)x16 * x23)) + (((uint64_t)x18 * x24) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + (((uint64_t)x24 * x18) + (0x2 * ((uint64_t)x23 * x16)))))))));
- { uint64_t x32 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x2fd * (((uint64_t)x14 * x23) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + ((uint64_t)x23 * x14)))))))));
- { uint64_t x33 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x2fd * ((0x2 * ((uint64_t)x12 * x23)) + (((uint64_t)x14 * x24) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + (((uint64_t)x24 * x14) + (0x2 * ((uint64_t)x23 * x12)))))))))));
- { uint64_t x34 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x2fd * ((0x2 * ((uint64_t)x10 * x23)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + (0x2 * ((uint64_t)x23 * x10))))))))))));
- { uint64_t x35 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x2fd * (((uint64_t)x8 * x23) + (((uint64_t)x10 * x24) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + (((uint64_t)x24 * x10) + ((uint64_t)x23 * x8))))))))))));
- { uint64_t x36 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x2fd * ((0x2 * ((uint64_t)x6 * x23)) + (((uint64_t)x8 * x24) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + (((uint64_t)x24 * x8) + (0x2 * ((uint64_t)x23 * x6))))))))))))));
- { uint64_t x37 = (((uint64_t)x2 * x2) + (0x2fd * ((0x2 * ((uint64_t)x4 * x23)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + (0x2 * ((uint64_t)x23 * x4)))))))))))))));
- { uint64_t x38 = (x37 >> 0x14);
- { uint32_t x39 = ((uint32_t)x37 & 0xfffff);
- { uint64_t x40 = (x38 + x36);
- { uint64_t x41 = (x40 >> 0x14);
- { uint32_t x42 = ((uint32_t)x40 & 0xfffff);
- { uint64_t x43 = (x41 + x35);
- { uint64_t x44 = (x43 >> 0x13);
- { uint32_t x45 = ((uint32_t)x43 & 0x7ffff);
- { uint64_t x46 = (x44 + x34);
- { uint64_t x47 = (x46 >> 0x14);
- { uint32_t x48 = ((uint32_t)x46 & 0xfffff);
- { uint64_t x49 = (x47 + x33);
- { uint64_t x50 = (x49 >> 0x14);
- { uint32_t x51 = ((uint32_t)x49 & 0xfffff);
- { uint64_t x52 = (x50 + x32);
- { uint64_t x53 = (x52 >> 0x13);
- { uint32_t x54 = ((uint32_t)x52 & 0x7ffff);
- { uint64_t x55 = (x53 + x31);
- { uint64_t x56 = (x55 >> 0x14);
- { uint32_t x57 = ((uint32_t)x55 & 0xfffff);
- { uint64_t x58 = (x56 + x30);
- { uint64_t x59 = (x58 >> 0x13);
- { uint32_t x60 = ((uint32_t)x58 & 0x7ffff);
- { uint64_t x61 = (x59 + x29);
- { uint64_t x62 = (x61 >> 0x14);
- { uint32_t x63 = ((uint32_t)x61 & 0xfffff);
- { uint64_t x64 = (x62 + x28);
- { uint64_t x65 = (x64 >> 0x14);
- { uint32_t x66 = ((uint32_t)x64 & 0xfffff);
- { uint64_t x67 = (x65 + x27);
- { uint64_t x68 = (x67 >> 0x13);
- { uint32_t x69 = ((uint32_t)x67 & 0x7ffff);
- { uint64_t x70 = (x68 + x26);
- { uint64_t x71 = (x70 >> 0x14);
- { uint32_t x72 = ((uint32_t)x70 & 0xfffff);
- { uint64_t x73 = (x71 + x25);
- { uint32_t x74 = (uint32_t) (x73 >> 0x13);
- { uint32_t x75 = ((uint32_t)x73 & 0x7ffff);
- { uint64_t x76 = (x39 + ((uint64_t)0x2fd * x74));
- { uint32_t x77 = (uint32_t) (x76 >> 0x14);
- { uint32_t x78 = ((uint32_t)x76 & 0xfffff);
- { uint32_t x79 = (x77 + x42);
- { uint32_t x80 = (x79 >> 0x14);
- { uint32_t x81 = (x79 & 0xfffff);
- out[0] = x78;
- out[1] = x81;
- out[2] = (x80 + x45);
- out[3] = x48;
- out[4] = x51;
- out[5] = x54;
- out[6] = x57;
- out[7] = x60;
- out[8] = x63;
- out[9] = x66;
- out[10] = x69;
- out[11] = x72;
- out[12] = x75;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m765_13limbs/fesquare.v b/src/Specific/solinas32_2e255m765_13limbs/fesquare.v
deleted file mode 100644
index cb42bedcc..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m765_13limbs.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_2e255m765_13limbs/fesquareDisplay.log b/src/Specific/solinas32_2e255m765_13limbs/fesquareDisplay.log
deleted file mode 100644
index 09f34e172..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,64 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x23, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x25 = (((uint64_t)x2 * x23) + (((uint64_t)x4 * x24) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + (((uint64_t)x24 * x4) + ((uint64_t)x23 * x2)))))))))))));
- uint64_t x26 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x2fd * (0x2 * ((uint64_t)x23 * x23))));
- uint64_t x27 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x2fd * (((uint64_t)x24 * x23) + ((uint64_t)x23 * x24))));
- uint64_t x28 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x2fd * ((0x2 * ((uint64_t)x22 * x23)) + (((uint64_t)x24 * x24) + (0x2 * ((uint64_t)x23 * x22))))));
- uint64_t x29 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x2fd * ((0x2 * ((uint64_t)x20 * x23)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + (0x2 * ((uint64_t)x23 * x20)))))));
- uint64_t x30 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x2fd * (((uint64_t)x18 * x23) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + ((uint64_t)x23 * x18)))))));
- uint64_t x31 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x2fd * ((0x2 * ((uint64_t)x16 * x23)) + (((uint64_t)x18 * x24) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + (((uint64_t)x24 * x18) + (0x2 * ((uint64_t)x23 * x16)))))))));
- uint64_t x32 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x2fd * (((uint64_t)x14 * x23) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + ((uint64_t)x23 * x14)))))))));
- uint64_t x33 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x2fd * ((0x2 * ((uint64_t)x12 * x23)) + (((uint64_t)x14 * x24) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + (((uint64_t)x24 * x14) + (0x2 * ((uint64_t)x23 * x12)))))))))));
- uint64_t x34 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x2fd * ((0x2 * ((uint64_t)x10 * x23)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + (0x2 * ((uint64_t)x23 * x10))))))))))));
- uint64_t x35 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x2fd * (((uint64_t)x8 * x23) + (((uint64_t)x10 * x24) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + (((uint64_t)x24 * x10) + ((uint64_t)x23 * x8))))))))))));
- uint64_t x36 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x2fd * ((0x2 * ((uint64_t)x6 * x23)) + (((uint64_t)x8 * x24) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + (((uint64_t)x24 * x8) + (0x2 * ((uint64_t)x23 * x6))))))))))))));
- uint64_t x37 = (((uint64_t)x2 * x2) + (0x2fd * ((0x2 * ((uint64_t)x4 * x23)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + (0x2 * ((uint64_t)x23 * x4)))))))))))))));
- uint64_t x38 = (x37 >> 0x14);
- uint32_t x39 = ((uint32_t)x37 & 0xfffff);
- uint64_t x40 = (x38 + x36);
- uint64_t x41 = (x40 >> 0x14);
- uint32_t x42 = ((uint32_t)x40 & 0xfffff);
- uint64_t x43 = (x41 + x35);
- uint64_t x44 = (x43 >> 0x13);
- uint32_t x45 = ((uint32_t)x43 & 0x7ffff);
- uint64_t x46 = (x44 + x34);
- uint64_t x47 = (x46 >> 0x14);
- uint32_t x48 = ((uint32_t)x46 & 0xfffff);
- uint64_t x49 = (x47 + x33);
- uint64_t x50 = (x49 >> 0x14);
- uint32_t x51 = ((uint32_t)x49 & 0xfffff);
- uint64_t x52 = (x50 + x32);
- uint64_t x53 = (x52 >> 0x13);
- uint32_t x54 = ((uint32_t)x52 & 0x7ffff);
- uint64_t x55 = (x53 + x31);
- uint64_t x56 = (x55 >> 0x14);
- uint32_t x57 = ((uint32_t)x55 & 0xfffff);
- uint64_t x58 = (x56 + x30);
- uint64_t x59 = (x58 >> 0x13);
- uint32_t x60 = ((uint32_t)x58 & 0x7ffff);
- uint64_t x61 = (x59 + x29);
- uint64_t x62 = (x61 >> 0x14);
- uint32_t x63 = ((uint32_t)x61 & 0xfffff);
- uint64_t x64 = (x62 + x28);
- uint64_t x65 = (x64 >> 0x14);
- uint32_t x66 = ((uint32_t)x64 & 0xfffff);
- uint64_t x67 = (x65 + x27);
- uint64_t x68 = (x67 >> 0x13);
- uint32_t x69 = ((uint32_t)x67 & 0x7ffff);
- uint64_t x70 = (x68 + x26);
- uint64_t x71 = (x70 >> 0x14);
- uint32_t x72 = ((uint32_t)x70 & 0xfffff);
- uint64_t x73 = (x71 + x25);
- uint32_t x74 = (uint32_t) (x73 >> 0x13);
- uint32_t x75 = ((uint32_t)x73 & 0x7ffff);
- uint64_t x76 = (x39 + ((uint64_t)0x2fd * x74));
- uint32_t x77 = (uint32_t) (x76 >> 0x14);
- uint32_t x78 = ((uint32_t)x76 & 0xfffff);
- uint32_t x79 = (x77 + x42);
- uint32_t x80 = (x79 >> 0x14);
- uint32_t x81 = (x79 & 0xfffff);
- return (Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, Return x57, Return x54, Return x51, Return x48, (x80 + x45), Return x81, Return x78))
-x
- : word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m765_13limbs/fesquareDisplay.v b/src/Specific/solinas32_2e255m765_13limbs/fesquareDisplay.v
deleted file mode 100644
index 4b1c7ef1b..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m765_13limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e255m765_13limbs/fesub.c b/src/Specific/solinas32_2e255m765_13limbs/fesub.c
deleted file mode 100644
index 2dc691fe8..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/fesub.c
+++ /dev/null
@@ -1,42 +0,0 @@
-static void fesub(uint32_t out[13], const uint32_t in1[13], const uint32_t in2[13]) {
- { const uint32_t x26 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x50 = in2[12];
- { const uint32_t x51 = in2[11];
- { const uint32_t x49 = in2[10];
- { const uint32_t x47 = in2[9];
- { const uint32_t x45 = in2[8];
- { const uint32_t x43 = in2[7];
- { const uint32_t x41 = in2[6];
- { const uint32_t x39 = in2[5];
- { const uint32_t x37 = in2[4];
- { const uint32_t x35 = in2[3];
- { const uint32_t x33 = in2[2];
- { const uint32_t x31 = in2[1];
- { const uint32_t x29 = in2[0];
- out[0] = ((0x1ffa06 + x5) - x29);
- out[1] = ((0x1ffffe + x7) - x31);
- out[2] = ((0xffffe + x9) - x33);
- out[3] = ((0x1ffffe + x11) - x35);
- out[4] = ((0x1ffffe + x13) - x37);
- out[5] = ((0xffffe + x15) - x39);
- out[6] = ((0x1ffffe + x17) - x41);
- out[7] = ((0xffffe + x19) - x43);
- out[8] = ((0x1ffffe + x21) - x45);
- out[9] = ((0x1ffffe + x23) - x47);
- out[10] = ((0xffffe + x25) - x49);
- out[11] = ((0x1ffffe + x27) - x51);
- out[12] = ((0xffffe + x26) - x50);
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m765_13limbs/fesub.v b/src/Specific/solinas32_2e255m765_13limbs/fesub.v
deleted file mode 100644
index 1fa1b54da..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m765_13limbs.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_2e255m765_13limbs/fesubDisplay.log b/src/Specific/solinas32_2e255m765_13limbs/fesubDisplay.log
deleted file mode 100644
index ebb7cdb3e..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x26, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29))%core,
- (((0xffffe + x26) - x50), ((0x1ffffe + x27) - x51), ((0xffffe + x25) - x49), ((0x1ffffe + x23) - x47), ((0x1ffffe + x21) - x45), ((0xffffe + x19) - x43), ((0x1ffffe + x17) - x41), ((0xffffe + x15) - x39), ((0x1ffffe + x13) - x37), ((0x1ffffe + x11) - x35), ((0xffffe + x9) - x33), ((0x1ffffe + x7) - x31), ((0x1ffa06 + x5) - x29)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m765_13limbs/fesubDisplay.v b/src/Specific/solinas32_2e255m765_13limbs/fesubDisplay.v
deleted file mode 100644
index f1a295ecf..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m765_13limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e255m765_13limbs/freeze.c b/src/Specific/solinas32_2e255m765_13limbs/freeze.c
deleted file mode 100644
index 7fda2f57e..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/freeze.c
+++ /dev/null
@@ -1,69 +0,0 @@
-static void freeze(uint32_t out[13], const uint32_t in1[13]) {
- { const uint32_t x23 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffd03);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x4, 0xfffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x6, 0x7ffff);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x8, 0xfffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x10, 0xfffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x12, 0x7ffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x14, 0xfffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x16, 0x7ffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x18, 0xfffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x20, 0xfffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x22, 0x7ffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x24, 0xfffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x23, 0x7ffff);
- { uint32_t x64 = cmovznz32(x63, 0x0, 0xffffffff);
- { uint32_t x65 = (x64 & 0xffd03);
- { uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x26, Return x65);
- { uint32_t x69 = (x64 & 0xfffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x29, Return x69);
- { uint32_t x73 = (x64 & 0x7ffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x32, Return x73);
- { uint32_t x77 = (x64 & 0xfffff);
- { uint32_t x79, uint8_t x80 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x35, Return x77);
- { uint32_t x81 = (x64 & 0xfffff);
- { uint32_t x83, uint8_t x84 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x38, Return x81);
- { uint32_t x85 = (x64 & 0x7ffff);
- { uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x41, Return x85);
- { uint32_t x89 = (x64 & 0xfffff);
- { uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x44, Return x89);
- { uint32_t x93 = (x64 & 0x7ffff);
- { uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x47, Return x93);
- { uint32_t x97 = (x64 & 0xfffff);
- { uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x50, Return x97);
- { uint32_t x101 = (x64 & 0xfffff);
- { uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x53, Return x101);
- { uint32_t x105 = (x64 & 0x7ffff);
- { uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x56, Return x105);
- { uint32_t x109 = (x64 & 0xfffff);
- { uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x59, Return x109);
- { uint32_t x113 = (x64 & 0x7ffff);
- { uint32_t x115, uint8_t _ = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x62, Return x113);
- out[0] = x67;
- out[1] = x71;
- out[2] = x75;
- out[3] = x79;
- out[4] = x83;
- out[5] = x87;
- out[6] = x91;
- out[7] = x95;
- out[8] = x99;
- out[9] = x103;
- out[10] = x107;
- out[11] = x111;
- out[12] = x115;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e255m765_13limbs/freeze.v b/src/Specific/solinas32_2e255m765_13limbs/freeze.v
deleted file mode 100644
index b62642c57..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e255m765_13limbs.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_2e255m765_13limbs/freezeDisplay.log b/src/Specific/solinas32_2e255m765_13limbs/freezeDisplay.log
deleted file mode 100644
index 24b1c126a..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/freezeDisplay.log
+++ /dev/null
@@ -1,47 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x23, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffd03);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x4, 0xfffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x6, 0x7ffff);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x8, 0xfffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x10, 0xfffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x12, 0x7ffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x14, 0xfffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x16, 0x7ffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x18, 0xfffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x20, 0xfffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x22, 0x7ffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x24, 0xfffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x23, 0x7ffff);
- uint32_t x64 = cmovznz32(x63, 0x0, 0xffffffff);
- uint32_t x65 = (x64 & 0xffd03);
- uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x26, Return x65);
- uint32_t x69 = (x64 & 0xfffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x29, Return x69);
- uint32_t x73 = (x64 & 0x7ffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x32, Return x73);
- uint32_t x77 = (x64 & 0xfffff);
- uint32_t x79, uint8_t x80 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x35, Return x77);
- uint32_t x81 = (x64 & 0xfffff);
- uint32_t x83, uint8_t x84 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x38, Return x81);
- uint32_t x85 = (x64 & 0x7ffff);
- uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x41, Return x85);
- uint32_t x89 = (x64 & 0xfffff);
- uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x44, Return x89);
- uint32_t x93 = (x64 & 0x7ffff);
- uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x47, Return x93);
- uint32_t x97 = (x64 & 0xfffff);
- uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x50, Return x97);
- uint32_t x101 = (x64 & 0xfffff);
- uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x53, Return x101);
- uint32_t x105 = (x64 & 0x7ffff);
- uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x56, Return x105);
- uint32_t x109 = (x64 & 0xfffff);
- uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x59, Return x109);
- uint32_t x113 = (x64 & 0x7ffff);
- uint32_t x115, uint8_t _ = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x62, Return x113);
- (Return x115, Return x111, Return x107, Return x103, Return x99, Return x95, Return x91, Return x87, Return x83, Return x79, Return x75, Return x71, Return x67))
-x
- : word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e255m765_13limbs/freezeDisplay.v b/src/Specific/solinas32_2e255m765_13limbs/freezeDisplay.v
deleted file mode 100644
index 142cdf11a..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e255m765_13limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e255m765_13limbs/py_interpreter.sh b/src/Specific/solinas32_2e255m765_13limbs/py_interpreter.sh
deleted file mode 100755
index a54dd225e..000000000
--- a/src/Specific/solinas32_2e255m765_13limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**255 - 765' -Dmodulus_bytes='19 + 8/13' -Da24='121665'
diff --git a/src/Specific/solinas32_2e256m189_11limbs/CurveParameters.v b/src/Specific/solinas32_2e256m189_11limbs/CurveParameters.v
deleted file mode 100644
index ff86a9395..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256 - 189
-Base: 23 + 3/11
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 11%nat;
- base := 23 + 3/11;
- bitwidth := 32;
- s := 2^256;
- c := [(1, 189)];
- carry_chains := Some [seq 0 (pred 11); [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_2e256m189_11limbs/Synthesis.v b/src/Specific/solinas32_2e256m189_11limbs/Synthesis.v
deleted file mode 100644
index 528ea8e7c..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e256m189_11limbs.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_2e256m189_11limbs/compiler.sh b/src/Specific/solinas32_2e256m189_11limbs/compiler.sh
deleted file mode 100755
index 5bf8d7cf2..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,23,23,24,23,23,23,24,23,23,23}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<256) - 189' "$@"
diff --git a/src/Specific/solinas32_2e256m189_11limbs/compilerxx.sh b/src/Specific/solinas32_2e256m189_11limbs/compilerxx.sh
deleted file mode 100755
index bf2193ba4..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,23,23,24,23,23,23,24,23,23,23}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<256) - 189' "$@"
diff --git a/src/Specific/solinas32_2e256m189_11limbs/feadd.c b/src/Specific/solinas32_2e256m189_11limbs/feadd.c
deleted file mode 100644
index 1763e8727..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/feadd.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void feadd(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- out[0] = (x5 + x25);
- out[1] = (x7 + x27);
- out[2] = (x9 + x29);
- out[3] = (x11 + x31);
- out[4] = (x13 + x33);
- out[5] = (x15 + x35);
- out[6] = (x17 + x37);
- out[7] = (x19 + x39);
- out[8] = (x21 + x41);
- out[9] = (x23 + x43);
- out[10] = (x22 + x42);
- }}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e256m189_11limbs/feadd.v b/src/Specific/solinas32_2e256m189_11limbs/feadd.v
deleted file mode 100644
index ac435ccde..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m189_11limbs.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_2e256m189_11limbs/feaddDisplay.log b/src/Specific/solinas32_2e256m189_11limbs/feaddDisplay.log
deleted file mode 100644
index 433ecbc2e..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- ((x22 + x42), (x23 + x43), (x21 + x41), (x19 + x39), (x17 + x37), (x15 + x35), (x13 + x33), (x11 + x31), (x9 + x29), (x7 + x27), (x5 + x25)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e256m189_11limbs/feaddDisplay.v b/src/Specific/solinas32_2e256m189_11limbs/feaddDisplay.v
deleted file mode 100644
index b71f2df3f..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m189_11limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e256m189_11limbs/fecarry.v b/src/Specific/solinas32_2e256m189_11limbs/fecarry.v
deleted file mode 100644
index 59666eb53..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m189_11limbs.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_2e256m189_11limbs/fecarryDisplay.v b/src/Specific/solinas32_2e256m189_11limbs/fecarryDisplay.v
deleted file mode 100644
index e881bb6b2..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m189_11limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e256m189_11limbs/femul.c b/src/Specific/solinas32_2e256m189_11limbs/femul.c
deleted file mode 100644
index b3e2fc368..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/femul.c
+++ /dev/null
@@ -1,85 +0,0 @@
-static void femul(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- { uint64_t x44 = (((uint64_t)x5 * x42) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + (((uint64_t)x11 * x39) + ((0x2 * ((uint64_t)x13 * x37)) + ((0x2 * ((uint64_t)x15 * x35)) + ((0x2 * ((uint64_t)x17 * x33)) + (((uint64_t)x19 * x31) + ((0x2 * ((uint64_t)x21 * x29)) + ((0x2 * ((uint64_t)x23 * x27)) + ((uint64_t)x22 * x25)))))))))));
- { uint64_t x45 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((0x2 * ((uint64_t)x13 * x35)) + ((0x2 * ((uint64_t)x15 * x33)) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + ((0x2 * ((uint64_t)x21 * x27)) + ((uint64_t)x23 * x25)))))))))) + (0xbd * ((uint64_t)x22 * x42)));
- { uint64_t x46 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + ((0x2 * ((uint64_t)x13 * x33)) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + ((uint64_t)x21 * x25))))))))) + (0xbd * (((uint64_t)x23 * x42) + ((uint64_t)x22 * x43))));
- { uint64_t x47 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((0x2 * ((uint64_t)x17 * x27)) + ((uint64_t)x19 * x25)))))))) + (0xbd * ((0x2 * ((uint64_t)x21 * x42)) + ((0x2 * ((uint64_t)x23 * x43)) + (0x2 * ((uint64_t)x22 * x41))))));
- { uint64_t x48 = ((((uint64_t)x5 * x37) + ((0x2 * ((uint64_t)x7 * x35)) + ((0x2 * ((uint64_t)x9 * x33)) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + ((0x2 * ((uint64_t)x15 * x27)) + ((uint64_t)x17 * x25))))))) + (0xbd * (((uint64_t)x19 * x42) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + ((uint64_t)x22 * x39))))));
- { uint64_t x49 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + ((0x2 * ((uint64_t)x13 * x27)) + ((uint64_t)x15 * x25)))))) + (0xbd * (((uint64_t)x17 * x42) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + (((uint64_t)x23 * x39) + ((uint64_t)x22 * x37)))))));
- { uint64_t x50 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + ((uint64_t)x13 * x25))))) + (0xbd * (((uint64_t)x15 * x42) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + ((uint64_t)x22 * x35))))))));
- { uint64_t x51 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((uint64_t)x11 * x25)))) + (0xbd * ((0x2 * ((uint64_t)x13 * x42)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + (((uint64_t)x19 * x39) + ((0x2 * ((uint64_t)x21 * x37)) + ((0x2 * ((uint64_t)x23 * x35)) + (0x2 * ((uint64_t)x22 * x33))))))))));
- { uint64_t x52 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((uint64_t)x9 * x25))) + (0xbd * (((uint64_t)x11 * x42) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + ((0x2 * ((uint64_t)x21 * x35)) + ((0x2 * ((uint64_t)x23 * x33)) + ((uint64_t)x22 * x31))))))))));
- { uint64_t x53 = ((((uint64_t)x5 * x27) + ((uint64_t)x7 * x25)) + (0xbd * (((uint64_t)x9 * x42) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + ((0x2 * ((uint64_t)x21 * x33)) + (((uint64_t)x23 * x31) + ((uint64_t)x22 * x29)))))))))));
- { uint64_t x54 = (((uint64_t)x5 * x25) + (0xbd * ((0x2 * ((uint64_t)x7 * x42)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((0x2 * ((uint64_t)x17 * x35)) + ((0x2 * ((uint64_t)x19 * x33)) + ((0x2 * ((uint64_t)x21 * x31)) + ((0x2 * ((uint64_t)x23 * x29)) + (0x2 * ((uint64_t)x22 * x27)))))))))))));
- { uint64_t x55 = (x54 >> 0x18);
- { uint32_t x56 = ((uint32_t)x54 & 0xffffff);
- { uint64_t x57 = (x55 + x53);
- { uint64_t x58 = (x57 >> 0x17);
- { uint32_t x59 = ((uint32_t)x57 & 0x7fffff);
- { uint64_t x60 = (x58 + x52);
- { uint64_t x61 = (x60 >> 0x17);
- { uint32_t x62 = ((uint32_t)x60 & 0x7fffff);
- { uint64_t x63 = (x61 + x51);
- { uint64_t x64 = (x63 >> 0x18);
- { uint32_t x65 = ((uint32_t)x63 & 0xffffff);
- { uint64_t x66 = (x64 + x50);
- { uint64_t x67 = (x66 >> 0x17);
- { uint32_t x68 = ((uint32_t)x66 & 0x7fffff);
- { uint64_t x69 = (x67 + x49);
- { uint64_t x70 = (x69 >> 0x17);
- { uint32_t x71 = ((uint32_t)x69 & 0x7fffff);
- { uint64_t x72 = (x70 + x48);
- { uint64_t x73 = (x72 >> 0x17);
- { uint32_t x74 = ((uint32_t)x72 & 0x7fffff);
- { uint64_t x75 = (x73 + x47);
- { uint64_t x76 = (x75 >> 0x18);
- { uint32_t x77 = ((uint32_t)x75 & 0xffffff);
- { uint64_t x78 = (x76 + x46);
- { uint64_t x79 = (x78 >> 0x17);
- { uint32_t x80 = ((uint32_t)x78 & 0x7fffff);
- { uint64_t x81 = (x79 + x45);
- { uint64_t x82 = (x81 >> 0x17);
- { uint32_t x83 = ((uint32_t)x81 & 0x7fffff);
- { uint64_t x84 = (x82 + x44);
- { uint32_t x85 = (uint32_t) (x84 >> 0x17);
- { uint32_t x86 = ((uint32_t)x84 & 0x7fffff);
- { uint64_t x87 = (x56 + ((uint64_t)0xbd * x85));
- { uint32_t x88 = (uint32_t) (x87 >> 0x18);
- { uint32_t x89 = ((uint32_t)x87 & 0xffffff);
- { uint32_t x90 = (x88 + x59);
- { uint32_t x91 = (x90 >> 0x17);
- { uint32_t x92 = (x90 & 0x7fffff);
- out[0] = x89;
- out[1] = x92;
- out[2] = (x91 + x62);
- out[3] = x65;
- out[4] = x68;
- out[5] = x71;
- out[6] = x74;
- out[7] = x77;
- out[8] = x80;
- out[9] = x83;
- out[10] = x86;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e256m189_11limbs/femul.v b/src/Specific/solinas32_2e256m189_11limbs/femul.v
deleted file mode 100644
index 90430426c..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m189_11limbs.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_2e256m189_11limbs/femulDisplay.log b/src/Specific/solinas32_2e256m189_11limbs/femulDisplay.log
deleted file mode 100644
index 2e301007e..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/femulDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- uint64_t x44 = (((uint64_t)x5 * x42) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + (((uint64_t)x11 * x39) + ((0x2 * ((uint64_t)x13 * x37)) + ((0x2 * ((uint64_t)x15 * x35)) + ((0x2 * ((uint64_t)x17 * x33)) + (((uint64_t)x19 * x31) + ((0x2 * ((uint64_t)x21 * x29)) + ((0x2 * ((uint64_t)x23 * x27)) + ((uint64_t)x22 * x25)))))))))));
- uint64_t x45 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((0x2 * ((uint64_t)x13 * x35)) + ((0x2 * ((uint64_t)x15 * x33)) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + ((0x2 * ((uint64_t)x21 * x27)) + ((uint64_t)x23 * x25)))))))))) + (0xbd * ((uint64_t)x22 * x42)));
- uint64_t x46 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + ((0x2 * ((uint64_t)x13 * x33)) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + ((uint64_t)x21 * x25))))))))) + (0xbd * (((uint64_t)x23 * x42) + ((uint64_t)x22 * x43))));
- uint64_t x47 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((0x2 * ((uint64_t)x17 * x27)) + ((uint64_t)x19 * x25)))))))) + (0xbd * ((0x2 * ((uint64_t)x21 * x42)) + ((0x2 * ((uint64_t)x23 * x43)) + (0x2 * ((uint64_t)x22 * x41))))));
- uint64_t x48 = ((((uint64_t)x5 * x37) + ((0x2 * ((uint64_t)x7 * x35)) + ((0x2 * ((uint64_t)x9 * x33)) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + ((0x2 * ((uint64_t)x15 * x27)) + ((uint64_t)x17 * x25))))))) + (0xbd * (((uint64_t)x19 * x42) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + ((uint64_t)x22 * x39))))));
- uint64_t x49 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + ((0x2 * ((uint64_t)x13 * x27)) + ((uint64_t)x15 * x25)))))) + (0xbd * (((uint64_t)x17 * x42) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + (((uint64_t)x23 * x39) + ((uint64_t)x22 * x37)))))));
- uint64_t x50 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + ((uint64_t)x13 * x25))))) + (0xbd * (((uint64_t)x15 * x42) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + ((uint64_t)x22 * x35))))))));
- uint64_t x51 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((uint64_t)x11 * x25)))) + (0xbd * ((0x2 * ((uint64_t)x13 * x42)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + (((uint64_t)x19 * x39) + ((0x2 * ((uint64_t)x21 * x37)) + ((0x2 * ((uint64_t)x23 * x35)) + (0x2 * ((uint64_t)x22 * x33))))))))));
- uint64_t x52 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((uint64_t)x9 * x25))) + (0xbd * (((uint64_t)x11 * x42) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + ((0x2 * ((uint64_t)x21 * x35)) + ((0x2 * ((uint64_t)x23 * x33)) + ((uint64_t)x22 * x31))))))))));
- uint64_t x53 = ((((uint64_t)x5 * x27) + ((uint64_t)x7 * x25)) + (0xbd * (((uint64_t)x9 * x42) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + ((0x2 * ((uint64_t)x21 * x33)) + (((uint64_t)x23 * x31) + ((uint64_t)x22 * x29)))))))))));
- uint64_t x54 = (((uint64_t)x5 * x25) + (0xbd * ((0x2 * ((uint64_t)x7 * x42)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((0x2 * ((uint64_t)x17 * x35)) + ((0x2 * ((uint64_t)x19 * x33)) + ((0x2 * ((uint64_t)x21 * x31)) + ((0x2 * ((uint64_t)x23 * x29)) + (0x2 * ((uint64_t)x22 * x27)))))))))))));
- uint64_t x55 = (x54 >> 0x18);
- uint32_t x56 = ((uint32_t)x54 & 0xffffff);
- uint64_t x57 = (x55 + x53);
- uint64_t x58 = (x57 >> 0x17);
- uint32_t x59 = ((uint32_t)x57 & 0x7fffff);
- uint64_t x60 = (x58 + x52);
- uint64_t x61 = (x60 >> 0x17);
- uint32_t x62 = ((uint32_t)x60 & 0x7fffff);
- uint64_t x63 = (x61 + x51);
- uint64_t x64 = (x63 >> 0x18);
- uint32_t x65 = ((uint32_t)x63 & 0xffffff);
- uint64_t x66 = (x64 + x50);
- uint64_t x67 = (x66 >> 0x17);
- uint32_t x68 = ((uint32_t)x66 & 0x7fffff);
- uint64_t x69 = (x67 + x49);
- uint64_t x70 = (x69 >> 0x17);
- uint32_t x71 = ((uint32_t)x69 & 0x7fffff);
- uint64_t x72 = (x70 + x48);
- uint64_t x73 = (x72 >> 0x17);
- uint32_t x74 = ((uint32_t)x72 & 0x7fffff);
- uint64_t x75 = (x73 + x47);
- uint64_t x76 = (x75 >> 0x18);
- uint32_t x77 = ((uint32_t)x75 & 0xffffff);
- uint64_t x78 = (x76 + x46);
- uint64_t x79 = (x78 >> 0x17);
- uint32_t x80 = ((uint32_t)x78 & 0x7fffff);
- uint64_t x81 = (x79 + x45);
- uint64_t x82 = (x81 >> 0x17);
- uint32_t x83 = ((uint32_t)x81 & 0x7fffff);
- uint64_t x84 = (x82 + x44);
- uint32_t x85 = (uint32_t) (x84 >> 0x17);
- uint32_t x86 = ((uint32_t)x84 & 0x7fffff);
- uint64_t x87 = (x56 + ((uint64_t)0xbd * x85));
- uint32_t x88 = (uint32_t) (x87 >> 0x18);
- uint32_t x89 = ((uint32_t)x87 & 0xffffff);
- uint32_t x90 = (x88 + x59);
- uint32_t x91 = (x90 >> 0x17);
- uint32_t x92 = (x90 & 0x7fffff);
- return (Return x86, Return x83, Return x80, Return x77, Return x74, Return x71, Return x68, Return x65, (x91 + x62), Return x92, Return x89))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e256m189_11limbs/femulDisplay.v b/src/Specific/solinas32_2e256m189_11limbs/femulDisplay.v
deleted file mode 100644
index 05d22f11b..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m189_11limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e256m189_11limbs/fesquare.c b/src/Specific/solinas32_2e256m189_11limbs/fesquare.c
deleted file mode 100644
index a9b151b23..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/fesquare.c
+++ /dev/null
@@ -1,74 +0,0 @@
-static void fesquare(uint32_t out[11], const uint32_t in1[11]) {
- { const uint32_t x19 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x21 = (((uint64_t)x2 * x19) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x19 * x2)))))))))));
- { uint64_t x22 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0xbd * ((uint64_t)x19 * x19)));
- { uint64_t x23 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0xbd * (((uint64_t)x20 * x19) + ((uint64_t)x19 * x20))));
- { uint64_t x24 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0xbd * ((0x2 * ((uint64_t)x18 * x19)) + ((0x2 * ((uint64_t)x20 * x20)) + (0x2 * ((uint64_t)x19 * x18))))));
- { uint64_t x25 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0xbd * (((uint64_t)x16 * x19) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((uint64_t)x19 * x16))))));
- { uint64_t x26 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0xbd * (((uint64_t)x14 * x19) + (((uint64_t)x16 * x20) + ((0x2 * ((uint64_t)x18 * x18)) + (((uint64_t)x20 * x16) + ((uint64_t)x19 * x14)))))));
- { uint64_t x27 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0xbd * (((uint64_t)x12 * x19) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + ((uint64_t)x19 * x12))))))));
- { uint64_t x28 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0xbd * ((0x2 * ((uint64_t)x10 * x19)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + (0x2 * ((uint64_t)x19 * x10))))))))));
- { uint64_t x29 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0xbd * (((uint64_t)x8 * x19) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((uint64_t)x19 * x8))))))))));
- { uint64_t x30 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xbd * (((uint64_t)x6 * x19) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + ((uint64_t)x19 * x6)))))))))));
- { uint64_t x31 = (((uint64_t)x2 * x2) + (0xbd * ((0x2 * ((uint64_t)x4 * x19)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + (0x2 * ((uint64_t)x19 * x4)))))))))))));
- { uint64_t x32 = (x31 >> 0x18);
- { uint32_t x33 = ((uint32_t)x31 & 0xffffff);
- { uint64_t x34 = (x32 + x30);
- { uint64_t x35 = (x34 >> 0x17);
- { uint32_t x36 = ((uint32_t)x34 & 0x7fffff);
- { uint64_t x37 = (x35 + x29);
- { uint64_t x38 = (x37 >> 0x17);
- { uint32_t x39 = ((uint32_t)x37 & 0x7fffff);
- { uint64_t x40 = (x38 + x28);
- { uint64_t x41 = (x40 >> 0x18);
- { uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- { uint64_t x43 = (x41 + x27);
- { uint64_t x44 = (x43 >> 0x17);
- { uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- { uint64_t x46 = (x44 + x26);
- { uint64_t x47 = (x46 >> 0x17);
- { uint32_t x48 = ((uint32_t)x46 & 0x7fffff);
- { uint64_t x49 = (x47 + x25);
- { uint64_t x50 = (x49 >> 0x17);
- { uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- { uint64_t x52 = (x50 + x24);
- { uint64_t x53 = (x52 >> 0x18);
- { uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- { uint64_t x55 = (x53 + x23);
- { uint64_t x56 = (x55 >> 0x17);
- { uint32_t x57 = ((uint32_t)x55 & 0x7fffff);
- { uint64_t x58 = (x56 + x22);
- { uint64_t x59 = (x58 >> 0x17);
- { uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- { uint64_t x61 = (x59 + x21);
- { uint32_t x62 = (uint32_t) (x61 >> 0x17);
- { uint32_t x63 = ((uint32_t)x61 & 0x7fffff);
- { uint64_t x64 = (x33 + ((uint64_t)0xbd * x62));
- { uint32_t x65 = (uint32_t) (x64 >> 0x18);
- { uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- { uint32_t x67 = (x65 + x36);
- { uint32_t x68 = (x67 >> 0x17);
- { uint32_t x69 = (x67 & 0x7fffff);
- out[0] = x66;
- out[1] = x69;
- out[2] = (x68 + x39);
- out[3] = x42;
- out[4] = x45;
- out[5] = x48;
- out[6] = x51;
- out[7] = x54;
- out[8] = x57;
- out[9] = x60;
- out[10] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e256m189_11limbs/fesquare.v b/src/Specific/solinas32_2e256m189_11limbs/fesquare.v
deleted file mode 100644
index 5639f3e7d..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m189_11limbs.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_2e256m189_11limbs/fesquareDisplay.log b/src/Specific/solinas32_2e256m189_11limbs/fesquareDisplay.log
deleted file mode 100644
index 245b4e992..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x21 = (((uint64_t)x2 * x19) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x19 * x2)))))))))));
- uint64_t x22 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0xbd * ((uint64_t)x19 * x19)));
- uint64_t x23 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0xbd * (((uint64_t)x20 * x19) + ((uint64_t)x19 * x20))));
- uint64_t x24 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0xbd * ((0x2 * ((uint64_t)x18 * x19)) + ((0x2 * ((uint64_t)x20 * x20)) + (0x2 * ((uint64_t)x19 * x18))))));
- uint64_t x25 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0xbd * (((uint64_t)x16 * x19) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((uint64_t)x19 * x16))))));
- uint64_t x26 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0xbd * (((uint64_t)x14 * x19) + (((uint64_t)x16 * x20) + ((0x2 * ((uint64_t)x18 * x18)) + (((uint64_t)x20 * x16) + ((uint64_t)x19 * x14)))))));
- uint64_t x27 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0xbd * (((uint64_t)x12 * x19) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + ((uint64_t)x19 * x12))))))));
- uint64_t x28 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0xbd * ((0x2 * ((uint64_t)x10 * x19)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + (0x2 * ((uint64_t)x19 * x10))))))))));
- uint64_t x29 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0xbd * (((uint64_t)x8 * x19) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((uint64_t)x19 * x8))))))))));
- uint64_t x30 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xbd * (((uint64_t)x6 * x19) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + ((uint64_t)x19 * x6)))))))))));
- uint64_t x31 = (((uint64_t)x2 * x2) + (0xbd * ((0x2 * ((uint64_t)x4 * x19)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + (0x2 * ((uint64_t)x19 * x4)))))))))))));
- uint64_t x32 = (x31 >> 0x18);
- uint32_t x33 = ((uint32_t)x31 & 0xffffff);
- uint64_t x34 = (x32 + x30);
- uint64_t x35 = (x34 >> 0x17);
- uint32_t x36 = ((uint32_t)x34 & 0x7fffff);
- uint64_t x37 = (x35 + x29);
- uint64_t x38 = (x37 >> 0x17);
- uint32_t x39 = ((uint32_t)x37 & 0x7fffff);
- uint64_t x40 = (x38 + x28);
- uint64_t x41 = (x40 >> 0x18);
- uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- uint64_t x43 = (x41 + x27);
- uint64_t x44 = (x43 >> 0x17);
- uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- uint64_t x46 = (x44 + x26);
- uint64_t x47 = (x46 >> 0x17);
- uint32_t x48 = ((uint32_t)x46 & 0x7fffff);
- uint64_t x49 = (x47 + x25);
- uint64_t x50 = (x49 >> 0x17);
- uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- uint64_t x52 = (x50 + x24);
- uint64_t x53 = (x52 >> 0x18);
- uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- uint64_t x55 = (x53 + x23);
- uint64_t x56 = (x55 >> 0x17);
- uint32_t x57 = ((uint32_t)x55 & 0x7fffff);
- uint64_t x58 = (x56 + x22);
- uint64_t x59 = (x58 >> 0x17);
- uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- uint64_t x61 = (x59 + x21);
- uint32_t x62 = (uint32_t) (x61 >> 0x17);
- uint32_t x63 = ((uint32_t)x61 & 0x7fffff);
- uint64_t x64 = (x33 + ((uint64_t)0xbd * x62));
- uint32_t x65 = (uint32_t) (x64 >> 0x18);
- uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- uint32_t x67 = (x65 + x36);
- uint32_t x68 = (x67 >> 0x17);
- uint32_t x69 = (x67 & 0x7fffff);
- return (Return x63, Return x60, Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, (x68 + x39), Return x69, Return x66))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e256m189_11limbs/fesquareDisplay.v b/src/Specific/solinas32_2e256m189_11limbs/fesquareDisplay.v
deleted file mode 100644
index ac91257ef..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m189_11limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e256m189_11limbs/fesub.c b/src/Specific/solinas32_2e256m189_11limbs/fesub.c
deleted file mode 100644
index 4574e6e09..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/fesub.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void fesub(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- out[0] = ((0x1fffe86 + x5) - x25);
- out[1] = ((0xfffffe + x7) - x27);
- out[2] = ((0xfffffe + x9) - x29);
- out[3] = ((0x1fffffe + x11) - x31);
- out[4] = ((0xfffffe + x13) - x33);
- out[5] = ((0xfffffe + x15) - x35);
- out[6] = ((0xfffffe + x17) - x37);
- out[7] = ((0x1fffffe + x19) - x39);
- out[8] = ((0xfffffe + x21) - x41);
- out[9] = ((0xfffffe + x23) - x43);
- out[10] = ((0xfffffe + x22) - x42);
- }}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e256m189_11limbs/fesub.v b/src/Specific/solinas32_2e256m189_11limbs/fesub.v
deleted file mode 100644
index b06aeb084..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m189_11limbs.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_2e256m189_11limbs/fesubDisplay.log b/src/Specific/solinas32_2e256m189_11limbs/fesubDisplay.log
deleted file mode 100644
index c139a725a..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- (((0xfffffe + x22) - x42), ((0xfffffe + x23) - x43), ((0xfffffe + x21) - x41), ((0x1fffffe + x19) - x39), ((0xfffffe + x17) - x37), ((0xfffffe + x15) - x35), ((0xfffffe + x13) - x33), ((0x1fffffe + x11) - x31), ((0xfffffe + x9) - x29), ((0xfffffe + x7) - x27), ((0x1fffe86 + x5) - x25)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e256m189_11limbs/fesubDisplay.v b/src/Specific/solinas32_2e256m189_11limbs/fesubDisplay.v
deleted file mode 100644
index 184c03bdd..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m189_11limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e256m189_11limbs/freeze.c b/src/Specific/solinas32_2e256m189_11limbs/freeze.c
deleted file mode 100644
index b8f90c921..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/freeze.c
+++ /dev/null
@@ -1,59 +0,0 @@
-static void freeze(uint32_t out[11], const uint32_t in1[11]) {
- { const uint32_t x19 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffff43);
- { uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x4, 0x7fffff);
- { uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x6, 0x7fffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x8, 0xffffff);
- { uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x10, 0x7fffff);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x12, 0x7fffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x14, 0x7fffff);
- { uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x16, 0xffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x18, 0x7fffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x20, 0x7fffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x19, 0x7fffff);
- { uint32_t x54 = cmovznz32(x53, 0x0, 0xffffffff);
- { uint32_t x55 = (x54 & 0xffff43);
- { uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x22, Return x55);
- { uint32_t x59 = (x54 & 0x7fffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x25, Return x59);
- { uint32_t x63 = (x54 & 0x7fffff);
- { uint32_t x65, uint8_t x66 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x28, Return x63);
- { uint32_t x67 = (x54 & 0xffffff);
- { uint32_t x69, uint8_t x70 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x31, Return x67);
- { uint32_t x71 = (x54 & 0x7fffff);
- { uint32_t x73, uint8_t x74 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x34, Return x71);
- { uint32_t x75 = (x54 & 0x7fffff);
- { uint32_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x37, Return x75);
- { uint32_t x79 = (x54 & 0x7fffff);
- { uint32_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x40, Return x79);
- { uint32_t x83 = (x54 & 0xffffff);
- { uint32_t x85, uint8_t x86 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x43, Return x83);
- { uint32_t x87 = (x54 & 0x7fffff);
- { uint32_t x89, uint8_t x90 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x46, Return x87);
- { uint32_t x91 = (x54 & 0x7fffff);
- { uint32_t x93, uint8_t x94 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x49, Return x91);
- { uint32_t x95 = (x54 & 0x7fffff);
- { uint32_t x97, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x94, Return x52, Return x95);
- out[0] = x57;
- out[1] = x61;
- out[2] = x65;
- out[3] = x69;
- out[4] = x73;
- out[5] = x77;
- out[6] = x81;
- out[7] = x85;
- out[8] = x89;
- out[9] = x93;
- out[10] = x97;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e256m189_11limbs/freeze.v b/src/Specific/solinas32_2e256m189_11limbs/freeze.v
deleted file mode 100644
index 7c370cc95..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m189_11limbs.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_2e256m189_11limbs/freezeDisplay.log b/src/Specific/solinas32_2e256m189_11limbs/freezeDisplay.log
deleted file mode 100644
index f12e58ea7..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/freezeDisplay.log
+++ /dev/null
@@ -1,41 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffff43);
- uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x4, 0x7fffff);
- uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x6, 0x7fffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x8, 0xffffff);
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x10, 0x7fffff);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x12, 0x7fffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x14, 0x7fffff);
- uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x16, 0xffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x18, 0x7fffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x20, 0x7fffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x19, 0x7fffff);
- uint32_t x54 = cmovznz32(x53, 0x0, 0xffffffff);
- uint32_t x55 = (x54 & 0xffff43);
- uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x22, Return x55);
- uint32_t x59 = (x54 & 0x7fffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x25, Return x59);
- uint32_t x63 = (x54 & 0x7fffff);
- uint32_t x65, uint8_t x66 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x28, Return x63);
- uint32_t x67 = (x54 & 0xffffff);
- uint32_t x69, uint8_t x70 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x31, Return x67);
- uint32_t x71 = (x54 & 0x7fffff);
- uint32_t x73, uint8_t x74 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x34, Return x71);
- uint32_t x75 = (x54 & 0x7fffff);
- uint32_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x37, Return x75);
- uint32_t x79 = (x54 & 0x7fffff);
- uint32_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x40, Return x79);
- uint32_t x83 = (x54 & 0xffffff);
- uint32_t x85, uint8_t x86 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x43, Return x83);
- uint32_t x87 = (x54 & 0x7fffff);
- uint32_t x89, uint8_t x90 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x46, Return x87);
- uint32_t x91 = (x54 & 0x7fffff);
- uint32_t x93, uint8_t x94 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x49, Return x91);
- uint32_t x95 = (x54 & 0x7fffff);
- uint32_t x97, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x94, Return x52, Return x95);
- (Return x97, Return x93, Return x89, Return x85, Return x81, Return x77, Return x73, Return x69, Return x65, Return x61, Return x57))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e256m189_11limbs/freezeDisplay.v b/src/Specific/solinas32_2e256m189_11limbs/freezeDisplay.v
deleted file mode 100644
index 96a933d86..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m189_11limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e256m189_11limbs/py_interpreter.sh b/src/Specific/solinas32_2e256m189_11limbs/py_interpreter.sh
deleted file mode 100755
index 0b771a2f2..000000000
--- a/src/Specific/solinas32_2e256m189_11limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256 - 189' -Dmodulus_bytes='23 + 3/11' -Da24='121665'
diff --git a/src/Specific/solinas32_2e256m189_12limbs/CurveParameters.v b/src/Specific/solinas32_2e256m189_12limbs/CurveParameters.v
deleted file mode 100644
index 6d6c9c664..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256 - 189
-Base: 21 + 1/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 12%nat;
- base := 21 + 1/3;
- bitwidth := 32;
- s := 2^256;
- c := [(1, 189)];
- carry_chains := Some [seq 0 (pred 12); [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_2e256m189_12limbs/Synthesis.v b/src/Specific/solinas32_2e256m189_12limbs/Synthesis.v
deleted file mode 100644
index 6b4cc6185..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e256m189_12limbs.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_2e256m189_12limbs/compiler.sh b/src/Specific/solinas32_2e256m189_12limbs/compiler.sh
deleted file mode 100755
index ebbabbdfa..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<256) - 189' "$@"
diff --git a/src/Specific/solinas32_2e256m189_12limbs/compilerxx.sh b/src/Specific/solinas32_2e256m189_12limbs/compilerxx.sh
deleted file mode 100755
index e0d073333..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<256) - 189' "$@"
diff --git a/src/Specific/solinas32_2e256m189_12limbs/feadd.c b/src/Specific/solinas32_2e256m189_12limbs/feadd.c
deleted file mode 100644
index 68eccd2bc..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/feadd.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void feadd(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- out[0] = (x5 + x27);
- out[1] = (x7 + x29);
- out[2] = (x9 + x31);
- out[3] = (x11 + x33);
- out[4] = (x13 + x35);
- out[5] = (x15 + x37);
- out[6] = (x17 + x39);
- out[7] = (x19 + x41);
- out[8] = (x21 + x43);
- out[9] = (x23 + x45);
- out[10] = (x25 + x47);
- out[11] = (x24 + x46);
- }}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e256m189_12limbs/feadd.v b/src/Specific/solinas32_2e256m189_12limbs/feadd.v
deleted file mode 100644
index d24768125..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m189_12limbs.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_2e256m189_12limbs/feaddDisplay.log b/src/Specific/solinas32_2e256m189_12limbs/feaddDisplay.log
deleted file mode 100644
index 4109af59c..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- ((x24 + x46), (x25 + x47), (x23 + x45), (x21 + x43), (x19 + x41), (x17 + x39), (x15 + x37), (x13 + x35), (x11 + x33), (x9 + x31), (x7 + x29), (x5 + x27)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e256m189_12limbs/feaddDisplay.v b/src/Specific/solinas32_2e256m189_12limbs/feaddDisplay.v
deleted file mode 100644
index 5696d8b7b..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m189_12limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e256m189_12limbs/fecarry.v b/src/Specific/solinas32_2e256m189_12limbs/fecarry.v
deleted file mode 100644
index 46a02cff1..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m189_12limbs.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_2e256m189_12limbs/fecarryDisplay.v b/src/Specific/solinas32_2e256m189_12limbs/fecarryDisplay.v
deleted file mode 100644
index 02f8795fd..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m189_12limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e256m189_12limbs/femul.c b/src/Specific/solinas32_2e256m189_12limbs/femul.c
deleted file mode 100644
index f9b6991df..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/femul.c
+++ /dev/null
@@ -1,92 +0,0 @@
-static void femul(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- { uint64_t x48 = (((uint64_t)x5 * x46) + ((0x2 * ((uint64_t)x7 * x47)) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + ((0x2 * ((uint64_t)x19 * x35)) + (((uint64_t)x21 * x33) + (((uint64_t)x23 * x31) + ((0x2 * ((uint64_t)x25 * x29)) + ((uint64_t)x24 * x27))))))))))));
- { uint64_t x49 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + (((uint64_t)x23 * x29) + ((uint64_t)x25 * x27))))))))))) + (0xbd * ((uint64_t)x24 * x46)));
- { uint64_t x50 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + (((uint64_t)x11 * x39) + ((0x2 * ((uint64_t)x13 * x37)) + ((0x2 * ((uint64_t)x15 * x35)) + (((uint64_t)x17 * x33) + ((0x2 * ((uint64_t)x19 * x31)) + ((0x2 * ((uint64_t)x21 * x29)) + ((uint64_t)x23 * x27)))))))))) + (0xbd * ((0x2 * ((uint64_t)x25 * x46)) + (0x2 * ((uint64_t)x24 * x47)))));
- { uint64_t x51 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((0x2 * ((uint64_t)x13 * x35)) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + ((0x2 * ((uint64_t)x19 * x29)) + ((uint64_t)x21 * x27))))))))) + (0xbd * (((uint64_t)x23 * x46) + ((0x2 * ((uint64_t)x25 * x47)) + ((uint64_t)x24 * x45)))));
- { uint64_t x52 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x19 * x27)))))))) + (0xbd * (((uint64_t)x21 * x46) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + ((uint64_t)x24 * x43))))));
- { uint64_t x53 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + (((uint64_t)x11 * x33) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((uint64_t)x17 * x27))))))) + (0xbd * ((0x2 * ((uint64_t)x19 * x46)) + ((0x2 * ((uint64_t)x21 * x47)) + (((uint64_t)x23 * x45) + ((0x2 * ((uint64_t)x25 * x43)) + (0x2 * ((uint64_t)x24 * x41))))))));
- { uint64_t x54 = ((((uint64_t)x5 * x37) + ((0x2 * ((uint64_t)x7 * x35)) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + ((uint64_t)x15 * x27)))))) + (0xbd * (((uint64_t)x17 * x46) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + ((0x2 * ((uint64_t)x25 * x41)) + ((uint64_t)x24 * x39))))))));
- { uint64_t x55 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + ((uint64_t)x13 * x27))))) + (0xbd * (((uint64_t)x15 * x46) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + ((uint64_t)x24 * x37)))))))));
- { uint64_t x56 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((uint64_t)x11 * x27)))) + (0xbd * ((0x2 * ((uint64_t)x13 * x46)) + ((0x2 * ((uint64_t)x15 * x47)) + (((uint64_t)x17 * x45) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + (((uint64_t)x23 * x39) + ((0x2 * ((uint64_t)x25 * x37)) + (0x2 * ((uint64_t)x24 * x35)))))))))));
- { uint64_t x57 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((uint64_t)x9 * x27))) + (0xbd * (((uint64_t)x11 * x46) + ((0x2 * ((uint64_t)x13 * x47)) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((0x2 * ((uint64_t)x19 * x41)) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + ((0x2 * ((uint64_t)x25 * x35)) + ((uint64_t)x24 * x33)))))))))));
- { uint64_t x58 = ((((uint64_t)x5 * x29) + ((uint64_t)x7 * x27)) + (0xbd * (((uint64_t)x9 * x46) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + (((uint64_t)x25 * x33) + ((uint64_t)x24 * x31))))))))))));
- { uint64_t x59 = (((uint64_t)x5 * x27) + (0xbd * ((0x2 * ((uint64_t)x7 * x46)) + ((0x2 * ((uint64_t)x9 * x47)) + (((uint64_t)x11 * x45) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + (((uint64_t)x17 * x39) + ((0x2 * ((uint64_t)x19 * x37)) + ((0x2 * ((uint64_t)x21 * x35)) + (((uint64_t)x23 * x33) + ((0x2 * ((uint64_t)x25 * x31)) + (0x2 * ((uint64_t)x24 * x29))))))))))))));
- { uint64_t x60 = (x59 >> 0x16);
- { uint32_t x61 = ((uint32_t)x59 & 0x3fffff);
- { uint64_t x62 = (x60 + x58);
- { uint64_t x63 = (x62 >> 0x15);
- { uint32_t x64 = ((uint32_t)x62 & 0x1fffff);
- { uint64_t x65 = (x63 + x57);
- { uint64_t x66 = (x65 >> 0x15);
- { uint32_t x67 = ((uint32_t)x65 & 0x1fffff);
- { uint64_t x68 = (x66 + x56);
- { uint64_t x69 = (x68 >> 0x16);
- { uint32_t x70 = ((uint32_t)x68 & 0x3fffff);
- { uint64_t x71 = (x69 + x55);
- { uint64_t x72 = (x71 >> 0x15);
- { uint32_t x73 = ((uint32_t)x71 & 0x1fffff);
- { uint64_t x74 = (x72 + x54);
- { uint64_t x75 = (x74 >> 0x15);
- { uint32_t x76 = ((uint32_t)x74 & 0x1fffff);
- { uint64_t x77 = (x75 + x53);
- { uint64_t x78 = (x77 >> 0x16);
- { uint32_t x79 = ((uint32_t)x77 & 0x3fffff);
- { uint64_t x80 = (x78 + x52);
- { uint64_t x81 = (x80 >> 0x15);
- { uint32_t x82 = ((uint32_t)x80 & 0x1fffff);
- { uint64_t x83 = (x81 + x51);
- { uint64_t x84 = (x83 >> 0x15);
- { uint32_t x85 = ((uint32_t)x83 & 0x1fffff);
- { uint64_t x86 = (x84 + x50);
- { uint64_t x87 = (x86 >> 0x16);
- { uint32_t x88 = ((uint32_t)x86 & 0x3fffff);
- { uint64_t x89 = (x87 + x49);
- { uint64_t x90 = (x89 >> 0x15);
- { uint32_t x91 = ((uint32_t)x89 & 0x1fffff);
- { uint64_t x92 = (x90 + x48);
- { uint32_t x93 = (uint32_t) (x92 >> 0x15);
- { uint32_t x94 = ((uint32_t)x92 & 0x1fffff);
- { uint64_t x95 = (x61 + ((uint64_t)0xbd * x93));
- { uint32_t x96 = (uint32_t) (x95 >> 0x16);
- { uint32_t x97 = ((uint32_t)x95 & 0x3fffff);
- { uint32_t x98 = (x96 + x64);
- { uint32_t x99 = (x98 >> 0x15);
- { uint32_t x100 = (x98 & 0x1fffff);
- out[0] = x97;
- out[1] = x100;
- out[2] = (x99 + x67);
- out[3] = x70;
- out[4] = x73;
- out[5] = x76;
- out[6] = x79;
- out[7] = x82;
- out[8] = x85;
- out[9] = x88;
- out[10] = x91;
- out[11] = x94;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e256m189_12limbs/femul.v b/src/Specific/solinas32_2e256m189_12limbs/femul.v
deleted file mode 100644
index c0fb8571c..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m189_12limbs.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_2e256m189_12limbs/femulDisplay.log b/src/Specific/solinas32_2e256m189_12limbs/femulDisplay.log
deleted file mode 100644
index 089b4132b..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/femulDisplay.log
+++ /dev/null
@@ -1,60 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- uint64_t x48 = (((uint64_t)x5 * x46) + ((0x2 * ((uint64_t)x7 * x47)) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + ((0x2 * ((uint64_t)x19 * x35)) + (((uint64_t)x21 * x33) + (((uint64_t)x23 * x31) + ((0x2 * ((uint64_t)x25 * x29)) + ((uint64_t)x24 * x27))))))))))));
- uint64_t x49 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + (((uint64_t)x23 * x29) + ((uint64_t)x25 * x27))))))))))) + (0xbd * ((uint64_t)x24 * x46)));
- uint64_t x50 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + (((uint64_t)x11 * x39) + ((0x2 * ((uint64_t)x13 * x37)) + ((0x2 * ((uint64_t)x15 * x35)) + (((uint64_t)x17 * x33) + ((0x2 * ((uint64_t)x19 * x31)) + ((0x2 * ((uint64_t)x21 * x29)) + ((uint64_t)x23 * x27)))))))))) + (0xbd * ((0x2 * ((uint64_t)x25 * x46)) + (0x2 * ((uint64_t)x24 * x47)))));
- uint64_t x51 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((0x2 * ((uint64_t)x13 * x35)) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + ((0x2 * ((uint64_t)x19 * x29)) + ((uint64_t)x21 * x27))))))))) + (0xbd * (((uint64_t)x23 * x46) + ((0x2 * ((uint64_t)x25 * x47)) + ((uint64_t)x24 * x45)))));
- uint64_t x52 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x19 * x27)))))))) + (0xbd * (((uint64_t)x21 * x46) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + ((uint64_t)x24 * x43))))));
- uint64_t x53 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + (((uint64_t)x11 * x33) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((uint64_t)x17 * x27))))))) + (0xbd * ((0x2 * ((uint64_t)x19 * x46)) + ((0x2 * ((uint64_t)x21 * x47)) + (((uint64_t)x23 * x45) + ((0x2 * ((uint64_t)x25 * x43)) + (0x2 * ((uint64_t)x24 * x41))))))));
- uint64_t x54 = ((((uint64_t)x5 * x37) + ((0x2 * ((uint64_t)x7 * x35)) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + ((uint64_t)x15 * x27)))))) + (0xbd * (((uint64_t)x17 * x46) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + ((0x2 * ((uint64_t)x25 * x41)) + ((uint64_t)x24 * x39))))))));
- uint64_t x55 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + ((uint64_t)x13 * x27))))) + (0xbd * (((uint64_t)x15 * x46) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + ((uint64_t)x24 * x37)))))))));
- uint64_t x56 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((uint64_t)x11 * x27)))) + (0xbd * ((0x2 * ((uint64_t)x13 * x46)) + ((0x2 * ((uint64_t)x15 * x47)) + (((uint64_t)x17 * x45) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + (((uint64_t)x23 * x39) + ((0x2 * ((uint64_t)x25 * x37)) + (0x2 * ((uint64_t)x24 * x35)))))))))));
- uint64_t x57 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((uint64_t)x9 * x27))) + (0xbd * (((uint64_t)x11 * x46) + ((0x2 * ((uint64_t)x13 * x47)) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((0x2 * ((uint64_t)x19 * x41)) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + ((0x2 * ((uint64_t)x25 * x35)) + ((uint64_t)x24 * x33)))))))))));
- uint64_t x58 = ((((uint64_t)x5 * x29) + ((uint64_t)x7 * x27)) + (0xbd * (((uint64_t)x9 * x46) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + (((uint64_t)x25 * x33) + ((uint64_t)x24 * x31))))))))))));
- uint64_t x59 = (((uint64_t)x5 * x27) + (0xbd * ((0x2 * ((uint64_t)x7 * x46)) + ((0x2 * ((uint64_t)x9 * x47)) + (((uint64_t)x11 * x45) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + (((uint64_t)x17 * x39) + ((0x2 * ((uint64_t)x19 * x37)) + ((0x2 * ((uint64_t)x21 * x35)) + (((uint64_t)x23 * x33) + ((0x2 * ((uint64_t)x25 * x31)) + (0x2 * ((uint64_t)x24 * x29))))))))))))));
- uint64_t x60 = (x59 >> 0x16);
- uint32_t x61 = ((uint32_t)x59 & 0x3fffff);
- uint64_t x62 = (x60 + x58);
- uint64_t x63 = (x62 >> 0x15);
- uint32_t x64 = ((uint32_t)x62 & 0x1fffff);
- uint64_t x65 = (x63 + x57);
- uint64_t x66 = (x65 >> 0x15);
- uint32_t x67 = ((uint32_t)x65 & 0x1fffff);
- uint64_t x68 = (x66 + x56);
- uint64_t x69 = (x68 >> 0x16);
- uint32_t x70 = ((uint32_t)x68 & 0x3fffff);
- uint64_t x71 = (x69 + x55);
- uint64_t x72 = (x71 >> 0x15);
- uint32_t x73 = ((uint32_t)x71 & 0x1fffff);
- uint64_t x74 = (x72 + x54);
- uint64_t x75 = (x74 >> 0x15);
- uint32_t x76 = ((uint32_t)x74 & 0x1fffff);
- uint64_t x77 = (x75 + x53);
- uint64_t x78 = (x77 >> 0x16);
- uint32_t x79 = ((uint32_t)x77 & 0x3fffff);
- uint64_t x80 = (x78 + x52);
- uint64_t x81 = (x80 >> 0x15);
- uint32_t x82 = ((uint32_t)x80 & 0x1fffff);
- uint64_t x83 = (x81 + x51);
- uint64_t x84 = (x83 >> 0x15);
- uint32_t x85 = ((uint32_t)x83 & 0x1fffff);
- uint64_t x86 = (x84 + x50);
- uint64_t x87 = (x86 >> 0x16);
- uint32_t x88 = ((uint32_t)x86 & 0x3fffff);
- uint64_t x89 = (x87 + x49);
- uint64_t x90 = (x89 >> 0x15);
- uint32_t x91 = ((uint32_t)x89 & 0x1fffff);
- uint64_t x92 = (x90 + x48);
- uint32_t x93 = (uint32_t) (x92 >> 0x15);
- uint32_t x94 = ((uint32_t)x92 & 0x1fffff);
- uint64_t x95 = (x61 + ((uint64_t)0xbd * x93));
- uint32_t x96 = (uint32_t) (x95 >> 0x16);
- uint32_t x97 = ((uint32_t)x95 & 0x3fffff);
- uint32_t x98 = (x96 + x64);
- uint32_t x99 = (x98 >> 0x15);
- uint32_t x100 = (x98 & 0x1fffff);
- return (Return x94, Return x91, Return x88, Return x85, Return x82, Return x79, Return x76, Return x73, Return x70, (x99 + x67), Return x100, Return x97))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e256m189_12limbs/femulDisplay.v b/src/Specific/solinas32_2e256m189_12limbs/femulDisplay.v
deleted file mode 100644
index 9f25d1bd8..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m189_12limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e256m189_12limbs/fesquare.c b/src/Specific/solinas32_2e256m189_12limbs/fesquare.c
deleted file mode 100644
index 99dbf4656..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/fesquare.c
+++ /dev/null
@@ -1,80 +0,0 @@
-static void fesquare(uint32_t out[12], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x23 = (((uint64_t)x2 * x21) + ((0x2 * ((uint64_t)x4 * x22)) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x21 * x2))))))))))));
- { uint64_t x24 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0xbd * ((uint64_t)x21 * x21)));
- { uint64_t x25 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0xbd * ((0x2 * ((uint64_t)x22 * x21)) + (0x2 * ((uint64_t)x21 * x22)))));
- { uint64_t x26 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0xbd * (((uint64_t)x20 * x21) + ((0x2 * ((uint64_t)x22 * x22)) + ((uint64_t)x21 * x20)))));
- { uint64_t x27 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0xbd * (((uint64_t)x18 * x21) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((uint64_t)x21 * x18))))));
- { uint64_t x28 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0xbd * ((0x2 * ((uint64_t)x16 * x21)) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + (0x2 * ((uint64_t)x21 * x16))))))));
- { uint64_t x29 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0xbd * (((uint64_t)x14 * x21) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + ((uint64_t)x21 * x14))))))));
- { uint64_t x30 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0xbd * (((uint64_t)x12 * x21) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + ((uint64_t)x21 * x12)))))))));
- { uint64_t x31 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0xbd * ((0x2 * ((uint64_t)x10 * x21)) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + (0x2 * ((uint64_t)x21 * x10)))))))))));
- { uint64_t x32 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0xbd * (((uint64_t)x8 * x21) + ((0x2 * ((uint64_t)x10 * x22)) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + ((0x2 * ((uint64_t)x22 * x10)) + ((uint64_t)x21 * x8)))))))))));
- { uint64_t x33 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xbd * (((uint64_t)x6 * x21) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + ((uint64_t)x21 * x6))))))))))));
- { uint64_t x34 = (((uint64_t)x2 * x2) + (0xbd * ((0x2 * ((uint64_t)x4 * x21)) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + (0x2 * ((uint64_t)x21 * x4))))))))))))));
- { uint64_t x35 = (x34 >> 0x16);
- { uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- { uint64_t x37 = (x35 + x33);
- { uint64_t x38 = (x37 >> 0x15);
- { uint32_t x39 = ((uint32_t)x37 & 0x1fffff);
- { uint64_t x40 = (x38 + x32);
- { uint64_t x41 = (x40 >> 0x15);
- { uint32_t x42 = ((uint32_t)x40 & 0x1fffff);
- { uint64_t x43 = (x41 + x31);
- { uint64_t x44 = (x43 >> 0x16);
- { uint32_t x45 = ((uint32_t)x43 & 0x3fffff);
- { uint64_t x46 = (x44 + x30);
- { uint64_t x47 = (x46 >> 0x15);
- { uint32_t x48 = ((uint32_t)x46 & 0x1fffff);
- { uint64_t x49 = (x47 + x29);
- { uint64_t x50 = (x49 >> 0x15);
- { uint32_t x51 = ((uint32_t)x49 & 0x1fffff);
- { uint64_t x52 = (x50 + x28);
- { uint64_t x53 = (x52 >> 0x16);
- { uint32_t x54 = ((uint32_t)x52 & 0x3fffff);
- { uint64_t x55 = (x53 + x27);
- { uint64_t x56 = (x55 >> 0x15);
- { uint32_t x57 = ((uint32_t)x55 & 0x1fffff);
- { uint64_t x58 = (x56 + x26);
- { uint64_t x59 = (x58 >> 0x15);
- { uint32_t x60 = ((uint32_t)x58 & 0x1fffff);
- { uint64_t x61 = (x59 + x25);
- { uint64_t x62 = (x61 >> 0x16);
- { uint32_t x63 = ((uint32_t)x61 & 0x3fffff);
- { uint64_t x64 = (x62 + x24);
- { uint64_t x65 = (x64 >> 0x15);
- { uint32_t x66 = ((uint32_t)x64 & 0x1fffff);
- { uint64_t x67 = (x65 + x23);
- { uint32_t x68 = (uint32_t) (x67 >> 0x15);
- { uint32_t x69 = ((uint32_t)x67 & 0x1fffff);
- { uint64_t x70 = (x36 + ((uint64_t)0xbd * x68));
- { uint32_t x71 = (uint32_t) (x70 >> 0x16);
- { uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- { uint32_t x73 = (x71 + x39);
- { uint32_t x74 = (x73 >> 0x15);
- { uint32_t x75 = (x73 & 0x1fffff);
- out[0] = x72;
- out[1] = x75;
- out[2] = (x74 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- out[7] = x57;
- out[8] = x60;
- out[9] = x63;
- out[10] = x66;
- out[11] = x69;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e256m189_12limbs/fesquare.v b/src/Specific/solinas32_2e256m189_12limbs/fesquare.v
deleted file mode 100644
index a915474e7..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m189_12limbs.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_2e256m189_12limbs/fesquareDisplay.log b/src/Specific/solinas32_2e256m189_12limbs/fesquareDisplay.log
deleted file mode 100644
index 4cb534fff..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,60 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x23 = (((uint64_t)x2 * x21) + ((0x2 * ((uint64_t)x4 * x22)) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x21 * x2))))))))))));
- uint64_t x24 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0xbd * ((uint64_t)x21 * x21)));
- uint64_t x25 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0xbd * ((0x2 * ((uint64_t)x22 * x21)) + (0x2 * ((uint64_t)x21 * x22)))));
- uint64_t x26 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0xbd * (((uint64_t)x20 * x21) + ((0x2 * ((uint64_t)x22 * x22)) + ((uint64_t)x21 * x20)))));
- uint64_t x27 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0xbd * (((uint64_t)x18 * x21) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((uint64_t)x21 * x18))))));
- uint64_t x28 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0xbd * ((0x2 * ((uint64_t)x16 * x21)) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + (0x2 * ((uint64_t)x21 * x16))))))));
- uint64_t x29 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0xbd * (((uint64_t)x14 * x21) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + ((uint64_t)x21 * x14))))))));
- uint64_t x30 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0xbd * (((uint64_t)x12 * x21) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + ((uint64_t)x21 * x12)))))))));
- uint64_t x31 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0xbd * ((0x2 * ((uint64_t)x10 * x21)) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + (0x2 * ((uint64_t)x21 * x10)))))))))));
- uint64_t x32 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0xbd * (((uint64_t)x8 * x21) + ((0x2 * ((uint64_t)x10 * x22)) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + ((0x2 * ((uint64_t)x22 * x10)) + ((uint64_t)x21 * x8)))))))))));
- uint64_t x33 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xbd * (((uint64_t)x6 * x21) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + ((uint64_t)x21 * x6))))))))))));
- uint64_t x34 = (((uint64_t)x2 * x2) + (0xbd * ((0x2 * ((uint64_t)x4 * x21)) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + (0x2 * ((uint64_t)x21 * x4))))))))))))));
- uint64_t x35 = (x34 >> 0x16);
- uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- uint64_t x37 = (x35 + x33);
- uint64_t x38 = (x37 >> 0x15);
- uint32_t x39 = ((uint32_t)x37 & 0x1fffff);
- uint64_t x40 = (x38 + x32);
- uint64_t x41 = (x40 >> 0x15);
- uint32_t x42 = ((uint32_t)x40 & 0x1fffff);
- uint64_t x43 = (x41 + x31);
- uint64_t x44 = (x43 >> 0x16);
- uint32_t x45 = ((uint32_t)x43 & 0x3fffff);
- uint64_t x46 = (x44 + x30);
- uint64_t x47 = (x46 >> 0x15);
- uint32_t x48 = ((uint32_t)x46 & 0x1fffff);
- uint64_t x49 = (x47 + x29);
- uint64_t x50 = (x49 >> 0x15);
- uint32_t x51 = ((uint32_t)x49 & 0x1fffff);
- uint64_t x52 = (x50 + x28);
- uint64_t x53 = (x52 >> 0x16);
- uint32_t x54 = ((uint32_t)x52 & 0x3fffff);
- uint64_t x55 = (x53 + x27);
- uint64_t x56 = (x55 >> 0x15);
- uint32_t x57 = ((uint32_t)x55 & 0x1fffff);
- uint64_t x58 = (x56 + x26);
- uint64_t x59 = (x58 >> 0x15);
- uint32_t x60 = ((uint32_t)x58 & 0x1fffff);
- uint64_t x61 = (x59 + x25);
- uint64_t x62 = (x61 >> 0x16);
- uint32_t x63 = ((uint32_t)x61 & 0x3fffff);
- uint64_t x64 = (x62 + x24);
- uint64_t x65 = (x64 >> 0x15);
- uint32_t x66 = ((uint32_t)x64 & 0x1fffff);
- uint64_t x67 = (x65 + x23);
- uint32_t x68 = (uint32_t) (x67 >> 0x15);
- uint32_t x69 = ((uint32_t)x67 & 0x1fffff);
- uint64_t x70 = (x36 + ((uint64_t)0xbd * x68));
- uint32_t x71 = (uint32_t) (x70 >> 0x16);
- uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- uint32_t x73 = (x71 + x39);
- uint32_t x74 = (x73 >> 0x15);
- uint32_t x75 = (x73 & 0x1fffff);
- return (Return x69, Return x66, Return x63, Return x60, Return x57, Return x54, Return x51, Return x48, Return x45, (x74 + x42), Return x75, Return x72))
-x
- : 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e256m189_12limbs/fesquareDisplay.v b/src/Specific/solinas32_2e256m189_12limbs/fesquareDisplay.v
deleted file mode 100644
index 1d992e8bf..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m189_12limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e256m189_12limbs/fesub.c b/src/Specific/solinas32_2e256m189_12limbs/fesub.c
deleted file mode 100644
index 1388a548d..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/fesub.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void fesub(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- out[0] = ((0x7ffe86 + x5) - x27);
- out[1] = ((0x3ffffe + x7) - x29);
- out[2] = ((0x3ffffe + x9) - x31);
- out[3] = ((0x7ffffe + x11) - x33);
- out[4] = ((0x3ffffe + x13) - x35);
- out[5] = ((0x3ffffe + x15) - x37);
- out[6] = ((0x7ffffe + x17) - x39);
- out[7] = ((0x3ffffe + x19) - x41);
- out[8] = ((0x3ffffe + x21) - x43);
- out[9] = ((0x7ffffe + x23) - x45);
- out[10] = ((0x3ffffe + x25) - x47);
- out[11] = ((0x3ffffe + x24) - x46);
- }}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e256m189_12limbs/fesub.v b/src/Specific/solinas32_2e256m189_12limbs/fesub.v
deleted file mode 100644
index e585acba1..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m189_12limbs.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_2e256m189_12limbs/fesubDisplay.log b/src/Specific/solinas32_2e256m189_12limbs/fesubDisplay.log
deleted file mode 100644
index 2b4f11e78..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- (((0x3ffffe + x24) - x46), ((0x3ffffe + x25) - x47), ((0x7ffffe + x23) - x45), ((0x3ffffe + x21) - x43), ((0x3ffffe + x19) - x41), ((0x7ffffe + x17) - x39), ((0x3ffffe + x15) - x37), ((0x3ffffe + x13) - x35), ((0x7ffffe + x11) - x33), ((0x3ffffe + x9) - x31), ((0x3ffffe + x7) - x29), ((0x7ffe86 + x5) - x27)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e256m189_12limbs/fesubDisplay.v b/src/Specific/solinas32_2e256m189_12limbs/fesubDisplay.v
deleted file mode 100644
index 219d5f437..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m189_12limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e256m189_12limbs/freeze.c b/src/Specific/solinas32_2e256m189_12limbs/freeze.c
deleted file mode 100644
index 8731f955a..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/freeze.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void freeze(uint32_t out[12], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fff43);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x4, 0x1fffff);
- { uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x6, 0x1fffff);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x8, 0x3fffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x10, 0x1fffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x12, 0x1fffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x14, 0x3fffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x16, 0x1fffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x18, 0x1fffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x20, 0x3fffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x22, 0x1fffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x21, 0x1fffff);
- { uint32_t x59 = cmovznz32(x58, 0x0, 0xffffffff);
- { uint32_t x60 = (x59 & 0x3fff43);
- { uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x24, Return x60);
- { uint32_t x64 = (x59 & 0x1fffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x27, Return x64);
- { uint32_t x68 = (x59 & 0x1fffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x30, Return x68);
- { uint32_t x72 = (x59 & 0x3fffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x33, Return x72);
- { uint32_t x76 = (x59 & 0x1fffff);
- { uint32_t x78, uint8_t x79 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x36, Return x76);
- { uint32_t x80 = (x59 & 0x1fffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x39, Return x80);
- { uint32_t x84 = (x59 & 0x3fffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x42, Return x84);
- { uint32_t x88 = (x59 & 0x1fffff);
- { uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x45, Return x88);
- { uint32_t x92 = (x59 & 0x1fffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x48, Return x92);
- { uint32_t x96 = (x59 & 0x3fffff);
- { uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x51, Return x96);
- { uint32_t x100 = (x59 & 0x1fffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x54, Return x100);
- { uint32_t x104 = (x59 & 0x1fffff);
- { uint32_t x106, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x57, Return x104);
- out[0] = x62;
- out[1] = x66;
- out[2] = x70;
- out[3] = x74;
- out[4] = x78;
- out[5] = x82;
- out[6] = x86;
- out[7] = x90;
- out[8] = x94;
- out[9] = x98;
- out[10] = x102;
- out[11] = x106;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e256m189_12limbs/freeze.v b/src/Specific/solinas32_2e256m189_12limbs/freeze.v
deleted file mode 100644
index 3934619cb..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m189_12limbs.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_2e256m189_12limbs/freezeDisplay.log b/src/Specific/solinas32_2e256m189_12limbs/freezeDisplay.log
deleted file mode 100644
index d225c3acc..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/freezeDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fff43);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x4, 0x1fffff);
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x6, 0x1fffff);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x8, 0x3fffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x10, 0x1fffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x12, 0x1fffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x14, 0x3fffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x16, 0x1fffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x18, 0x1fffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x20, 0x3fffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x22, 0x1fffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x21, 0x1fffff);
- uint32_t x59 = cmovznz32(x58, 0x0, 0xffffffff);
- uint32_t x60 = (x59 & 0x3fff43);
- uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x24, Return x60);
- uint32_t x64 = (x59 & 0x1fffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x27, Return x64);
- uint32_t x68 = (x59 & 0x1fffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x30, Return x68);
- uint32_t x72 = (x59 & 0x3fffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x33, Return x72);
- uint32_t x76 = (x59 & 0x1fffff);
- uint32_t x78, uint8_t x79 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x36, Return x76);
- uint32_t x80 = (x59 & 0x1fffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x39, Return x80);
- uint32_t x84 = (x59 & 0x3fffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x42, Return x84);
- uint32_t x88 = (x59 & 0x1fffff);
- uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x45, Return x88);
- uint32_t x92 = (x59 & 0x1fffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x48, Return x92);
- uint32_t x96 = (x59 & 0x3fffff);
- uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x51, Return x96);
- uint32_t x100 = (x59 & 0x1fffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x54, Return x100);
- uint32_t x104 = (x59 & 0x1fffff);
- uint32_t x106, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x57, Return x104);
- (Return x106, Return x102, Return x98, Return x94, Return x90, Return x86, Return x82, Return x78, Return x74, Return x70, Return x66, Return x62))
-x
- : 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e256m189_12limbs/freezeDisplay.v b/src/Specific/solinas32_2e256m189_12limbs/freezeDisplay.v
deleted file mode 100644
index a532d9ef6..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m189_12limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e256m189_12limbs/py_interpreter.sh b/src/Specific/solinas32_2e256m189_12limbs/py_interpreter.sh
deleted file mode 100755
index fab32ff04..000000000
--- a/src/Specific/solinas32_2e256m189_12limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256 - 189' -Dmodulus_bytes='21 + 1/3' -Da24='121665'
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/CurveParameters.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/CurveParameters.v
deleted file mode 100644
index 41d60e98f..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256 - 2^224 + 2^192 + 2^96 - 1
-Base: 23 + 3/11
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 11%nat;
- base := 23 + 3/11;
- bitwidth := 32;
- s := 2^256;
- c := [(1, 1); (2^96, -1); (2^192, -1); (2^224, 1)];
- carry_chains := Some [[8; 7; 3; 10]; [9; 8; 4; 0; 10; 5; 1; 6; 2; 7; 3]; [9; 8; 4; 0]]%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_2e256m2e224p2e192p2e96m1_11limbs/Synthesis.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/Synthesis.v
deleted file mode 100644
index 011d05cf7..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_11limbs.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_2e256m2e224p2e192p2e96m1_11limbs/compiler.sh b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/compiler.sh
deleted file mode 100755
index b89d41eae..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,23,23,24,23,23,23,24,23,23,23}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1' "$@"
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/compilerxx.sh b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/compilerxx.sh
deleted file mode 100755
index 82e11810f..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,23,23,24,23,23,23,24,23,23,23}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1' "$@"
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/feadd.c b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/feadd.c
deleted file mode 100644
index 1763e8727..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/feadd.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void feadd(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- out[0] = (x5 + x25);
- out[1] = (x7 + x27);
- out[2] = (x9 + x29);
- out[3] = (x11 + x31);
- out[4] = (x13 + x33);
- out[5] = (x15 + x35);
- out[6] = (x17 + x37);
- out[7] = (x19 + x39);
- out[8] = (x21 + x41);
- out[9] = (x23 + x43);
- out[10] = (x22 + x42);
- }}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/feadd.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/feadd.v
deleted file mode 100644
index 48155d778..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_11limbs.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_2e256m2e224p2e192p2e96m1_11limbs/feaddDisplay.log b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/feaddDisplay.log
deleted file mode 100644
index 433ecbc2e..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- ((x22 + x42), (x23 + x43), (x21 + x41), (x19 + x39), (x17 + x37), (x15 + x35), (x13 + x33), (x11 + x31), (x9 + x29), (x7 + x27), (x5 + x25)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/feaddDisplay.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/feaddDisplay.v
deleted file mode 100644
index a0d9c6efb..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_11limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/fecarry.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/fecarry.v
deleted file mode 100644
index d3416546e..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_11limbs.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_2e256m2e224p2e192p2e96m1_11limbs/fecarryDisplay.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/fecarryDisplay.v
deleted file mode 100644
index 624969a59..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_11limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/femul.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/femul.v
deleted file mode 100644
index 4a49098f1..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_11limbs.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_2e256m2e224p2e192p2e96m1_11limbs/femulDisplay.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/femulDisplay.v
deleted file mode 100644
index 3baa25f07..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_11limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/fesquare.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/fesquare.v
deleted file mode 100644
index 3ea7cc667..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_11limbs.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_2e256m2e224p2e192p2e96m1_11limbs/fesquareDisplay.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/fesquareDisplay.v
deleted file mode 100644
index 4d03964ad..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_11limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/fesub.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/fesub.v
deleted file mode 100644
index 91a086752..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_11limbs.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_2e256m2e224p2e192p2e96m1_11limbs/fesubDisplay.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/fesubDisplay.v
deleted file mode 100644
index bf6592d62..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_11limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/freeze.c b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/freeze.c
deleted file mode 100644
index 2e70bcf61..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/freeze.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void freeze(uint32_t out[11], const uint32_t in1[11]) {
- { const uint32_t x19 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffff);
- { uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x4, 0x7fffff);
- { uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x6, 0x7fffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x8, 0xffffff);
- { uint32_t x34, ℤ x35 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x32, Return x10, 0x3);
- { uint32_t x37, ℤ x38 = Op (Syntax.SubWithGetBorrow 23 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x35, Return x12, 0x0);
- { uint32_t x40, ℤ x41 = Op (Syntax.SubWithGetBorrow 23 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x38, Return x14, 0x0);
- { uint32_t x43, ℤ x44 = Op (Syntax.SubWithGetBorrow 24 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x41, Return x16, 0x0);
- { uint32_t x46, ℤ x47 = Op (Syntax.SubWithGetBorrow 23 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x44, Return x18, 0x20);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 23 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x20, 0x7fc000);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x19, 0x7fffff);
- { uint32_t x54 = cmovznz32(x53, 0x0, 0xffffffff);
- { uint32_t x55 = (x54 & 0xffffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x22, Return x55);
- { uint32_t x59 = (x54 & 0x7fffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x25, Return x59);
- { uint32_t x63 = (x54 & 0x7fffff);
- { uint32_t x65, uint8_t x66 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x28, Return x63);
- { uint32_t x67 = (x54 & 0xffffff);
- { uint32_t x69, uint8_t x70 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x31, Return x67);
- { uint8_t x71 = ((uint8_t)x54 & 0x3);
- { uint32_t x73, uint8_t x74 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x34, Return x71);
- { uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x37, 0x0);
- { uint32_t x79, uint8_t x80 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x40, 0x0);
- { uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x43, 0x0);
- { uint8_t x84 = ((uint8_t)x54 & 0x20);
- { uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x46, Return x84);
- { uint32_t x88 = (x54 & 0x7fc000);
- { uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x49, Return x88);
- { uint32_t x92 = (x54 & 0x7fffff);
- { uint32_t x94, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x52, Return x92);
- out[0] = x57;
- out[1] = x61;
- out[2] = x65;
- out[3] = x69;
- out[4] = x73;
- out[5] = x76;
- out[6] = x79;
- out[7] = x82;
- out[8] = x86;
- out[9] = x90;
- out[10] = x94;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/freeze.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/freeze.v
deleted file mode 100644
index fa14a3fa9..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_11limbs.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_2e256m2e224p2e192p2e96m1_11limbs/freezeDisplay.log b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/freezeDisplay.log
deleted file mode 100644
index 95abce37b..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffff);
- uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x4, 0x7fffff);
- uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x6, 0x7fffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x8, 0xffffff);
- uint32_t x34, ℤ x35 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x32, Return x10, 0x3);
- uint32_t x37, ℤ x38 = Op (Syntax.SubWithGetBorrow 23 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x35, Return x12, 0x0);
- uint32_t x40, ℤ x41 = Op (Syntax.SubWithGetBorrow 23 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x38, Return x14, 0x0);
- uint32_t x43, ℤ x44 = Op (Syntax.SubWithGetBorrow 24 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x41, Return x16, 0x0);
- uint32_t x46, ℤ x47 = Op (Syntax.SubWithGetBorrow 23 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x44, Return x18, 0x20);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 23 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x20, 0x7fc000);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x19, 0x7fffff);
- uint32_t x54 = cmovznz32(x53, 0x0, 0xffffffff);
- uint32_t x55 = (x54 & 0xffffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x22, Return x55);
- uint32_t x59 = (x54 & 0x7fffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x25, Return x59);
- uint32_t x63 = (x54 & 0x7fffff);
- uint32_t x65, uint8_t x66 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x28, Return x63);
- uint32_t x67 = (x54 & 0xffffff);
- uint32_t x69, uint8_t x70 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x31, Return x67);
- uint8_t x71 = ((uint8_t)x54 & 0x3);
- uint32_t x73, uint8_t x74 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x34, Return x71);
- uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x37, 0x0);
- uint32_t x79, uint8_t x80 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x40, 0x0);
- uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x43, 0x0);
- uint8_t x84 = ((uint8_t)x54 & 0x20);
- uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x46, Return x84);
- uint32_t x88 = (x54 & 0x7fc000);
- uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x49, Return x88);
- uint32_t x92 = (x54 & 0x7fffff);
- uint32_t x94, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x52, Return x92);
- (Return x94, Return x90, Return x86, Return x82, Return x79, Return x76, Return x73, Return x69, Return x65, Return x61, Return x57))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/freezeDisplay.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/freezeDisplay.v
deleted file mode 100644
index c4dc356d3..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_11limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/py_interpreter.sh b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/py_interpreter.sh
deleted file mode 100755
index 6dac33925..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_11limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256 - 2**224 + 2**192 + 2**96 - 1' -Dmodulus_bytes='23 + 3/11' -Da24='121665'
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/CurveParameters.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/CurveParameters.v
deleted file mode 100644
index ed060118e..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256 - 2^224 + 2^192 + 2^96 - 1
-Base: 21 + 1/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 12%nat;
- base := 21 + 1/3;
- bitwidth := 32;
- s := 2^256;
- c := [(1, 1); (2^96, -1); (2^192, -1); (2^224, 1)];
- carry_chains := Some [[9; 8; 3; 11]; [10; 9; 4; 0; 11; 5; 1; 6; 2; 7; 3; 8]; [10; 9; 4; 0]]%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_2e256m2e224p2e192p2e96m1_12limbs/Synthesis.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/Synthesis.v
deleted file mode 100644
index 278acfbe9..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_12limbs.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_2e256m2e224p2e192p2e96m1_12limbs/compiler.sh b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/compiler.sh
deleted file mode 100755
index e0742665f..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1' "$@"
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/compilerxx.sh b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/compilerxx.sh
deleted file mode 100755
index 18f433e38..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1' "$@"
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/feadd.c b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/feadd.c
deleted file mode 100644
index 68eccd2bc..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/feadd.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void feadd(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- out[0] = (x5 + x27);
- out[1] = (x7 + x29);
- out[2] = (x9 + x31);
- out[3] = (x11 + x33);
- out[4] = (x13 + x35);
- out[5] = (x15 + x37);
- out[6] = (x17 + x39);
- out[7] = (x19 + x41);
- out[8] = (x21 + x43);
- out[9] = (x23 + x45);
- out[10] = (x25 + x47);
- out[11] = (x24 + x46);
- }}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/feadd.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/feadd.v
deleted file mode 100644
index daf98edfc..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_12limbs.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_2e256m2e224p2e192p2e96m1_12limbs/feaddDisplay.log b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/feaddDisplay.log
deleted file mode 100644
index 4109af59c..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- ((x24 + x46), (x25 + x47), (x23 + x45), (x21 + x43), (x19 + x41), (x17 + x39), (x15 + x37), (x13 + x35), (x11 + x33), (x9 + x31), (x7 + x29), (x5 + x27)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/feaddDisplay.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/feaddDisplay.v
deleted file mode 100644
index 40da7878e..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_12limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/fecarry.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/fecarry.v
deleted file mode 100644
index 3ab0a6b0c..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_12limbs.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_2e256m2e224p2e192p2e96m1_12limbs/fecarryDisplay.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/fecarryDisplay.v
deleted file mode 100644
index ec56891fa..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_12limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/femul.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/femul.v
deleted file mode 100644
index 3da10cdfe..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_12limbs.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_2e256m2e224p2e192p2e96m1_12limbs/femulDisplay.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/femulDisplay.v
deleted file mode 100644
index ab11a3de5..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_12limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/fesquare.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/fesquare.v
deleted file mode 100644
index 02e8daeff..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_12limbs.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_2e256m2e224p2e192p2e96m1_12limbs/fesquareDisplay.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/fesquareDisplay.v
deleted file mode 100644
index 2d859c0fa..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_12limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/fesub.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/fesub.v
deleted file mode 100644
index 665eeca73..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_12limbs.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_2e256m2e224p2e192p2e96m1_12limbs/fesubDisplay.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/fesubDisplay.v
deleted file mode 100644
index d7839efb0..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_12limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/freeze.c b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/freeze.c
deleted file mode 100644
index bc4e44bea..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/freeze.c
+++ /dev/null
@@ -1,60 +0,0 @@
-static void freeze(uint32_t out[12], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x4, 0x1fffff);
- { uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x6, 0x1fffff);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x8, 0x3fffff);
- { uint32_t x36, ℤ x37 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) Syntax.TZ) (Return x34, Return x10, 0x3ff);
- { uint32_t x39, ℤ x40 = Op (Syntax.SubWithGetBorrow 21 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x37, Return x12, 0x0);
- { uint32_t x42, ℤ x43 = Op (Syntax.SubWithGetBorrow 22 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x40, Return x14, 0x0);
- { uint32_t x45, ℤ x46 = Op (Syntax.SubWithGetBorrow 21 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x43, Return x16, 0x0);
- { uint32_t x48, ℤ x49 = Op (Syntax.SubWithGetBorrow 21 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x46, Return x18, 0x0);
- { uint32_t x51, ℤ x52 = Op (Syntax.SubWithGetBorrow 22 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x49, Return x20, 0x1);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 21 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x22, 0x1ffc00);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x21, 0x1fffff);
- { uint32_t x59 = cmovznz32(x58, 0x0, 0xffffffff);
- { uint32_t x60 = (x59 & 0x3fffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x24, Return x60);
- { uint32_t x64 = (x59 & 0x1fffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x27, Return x64);
- { uint32_t x68 = (x59 & 0x1fffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x30, Return x68);
- { uint32_t x72 = (x59 & 0x3fffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x33, Return x72);
- { uint32_t x76 = (x59 & 0x3ff);
- { uint32_t x78, uint8_t x79 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x36, Return x76);
- { uint32_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x39, 0x0);
- { uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x42, 0x0);
- { uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x45, 0x0);
- { uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x48, 0x0);
- { uint8_t x92 = ((uint8_t)x59 & 0x1);
- { uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x51, Return x92);
- { uint32_t x96 = (x59 & 0x1ffc00);
- { uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x54, Return x96);
- { uint32_t x100 = (x59 & 0x1fffff);
- { uint32_t x102, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x57, Return x100);
- out[0] = x62;
- out[1] = x66;
- out[2] = x70;
- out[3] = x74;
- out[4] = x78;
- out[5] = x81;
- out[6] = x84;
- out[7] = x87;
- out[8] = x90;
- out[9] = x94;
- out[10] = x98;
- out[11] = x102;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/freeze.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/freeze.v
deleted file mode 100644
index cf782146a..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_12limbs.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_2e256m2e224p2e192p2e96m1_12limbs/freezeDisplay.log b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/freezeDisplay.log
deleted file mode 100644
index 78ec1d8c1..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/freezeDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x4, 0x1fffff);
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x6, 0x1fffff);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x8, 0x3fffff);
- uint32_t x36, ℤ x37 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) Syntax.TZ) (Return x34, Return x10, 0x3ff);
- uint32_t x39, ℤ x40 = Op (Syntax.SubWithGetBorrow 21 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x37, Return x12, 0x0);
- uint32_t x42, ℤ x43 = Op (Syntax.SubWithGetBorrow 22 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x40, Return x14, 0x0);
- uint32_t x45, ℤ x46 = Op (Syntax.SubWithGetBorrow 21 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x43, Return x16, 0x0);
- uint32_t x48, ℤ x49 = Op (Syntax.SubWithGetBorrow 21 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x46, Return x18, 0x0);
- uint32_t x51, ℤ x52 = Op (Syntax.SubWithGetBorrow 22 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x49, Return x20, 0x1);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 21 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x22, 0x1ffc00);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x21, 0x1fffff);
- uint32_t x59 = cmovznz32(x58, 0x0, 0xffffffff);
- uint32_t x60 = (x59 & 0x3fffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x24, Return x60);
- uint32_t x64 = (x59 & 0x1fffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x27, Return x64);
- uint32_t x68 = (x59 & 0x1fffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x30, Return x68);
- uint32_t x72 = (x59 & 0x3fffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x33, Return x72);
- uint32_t x76 = (x59 & 0x3ff);
- uint32_t x78, uint8_t x79 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x36, Return x76);
- uint32_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x39, 0x0);
- uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x42, 0x0);
- uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x45, 0x0);
- uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x48, 0x0);
- uint8_t x92 = ((uint8_t)x59 & 0x1);
- uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x51, Return x92);
- uint32_t x96 = (x59 & 0x1ffc00);
- uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x54, Return x96);
- uint32_t x100 = (x59 & 0x1fffff);
- uint32_t x102, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x57, Return x100);
- (Return x102, Return x98, Return x94, Return x90, Return x87, Return x84, Return x81, Return x78, Return x74, Return x70, Return x66, Return x62))
-x
- : 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/freezeDisplay.v b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/freezeDisplay.v
deleted file mode 100644
index 795966cf2..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m2e224p2e192p2e96m1_12limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/py_interpreter.sh b/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/py_interpreter.sh
deleted file mode 100755
index 3ebe640df..000000000
--- a/src/Specific/solinas32_2e256m2e224p2e192p2e96m1_12limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256 - 2**224 + 2**192 + 2**96 - 1' -Dmodulus_bytes='21 + 1/3' -Da24='121665'
diff --git a/src/Specific/solinas32_2e256m2e32m977_12limbs/CurveParameters.v b/src/Specific/solinas32_2e256m2e32m977_12limbs/CurveParameters.v
deleted file mode 100644
index 507c16669..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256 - 2^32 - 977
-Base: 21 + 1/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 12%nat;
- base := 21 + 1/3;
- bitwidth := 32;
- s := 2^256;
- c := [(1, 977); (2^32, 1)];
- carry_chains := Some [[0; 11]; [1; 0; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11]; [1; 0]]%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_2e256m2e32m977_12limbs/Synthesis.v b/src/Specific/solinas32_2e256m2e32m977_12limbs/Synthesis.v
deleted file mode 100644
index 70486bab7..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_12limbs.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_2e256m2e32m977_12limbs/compiler.sh b/src/Specific/solinas32_2e256m2e32m977_12limbs/compiler.sh
deleted file mode 100755
index f8f47d683..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977' "$@"
diff --git a/src/Specific/solinas32_2e256m2e32m977_12limbs/compilerxx.sh b/src/Specific/solinas32_2e256m2e32m977_12limbs/compilerxx.sh
deleted file mode 100755
index b7d9e5a0d..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977' "$@"
diff --git a/src/Specific/solinas32_2e256m2e32m977_12limbs/feadd.c b/src/Specific/solinas32_2e256m2e32m977_12limbs/feadd.c
deleted file mode 100644
index 68eccd2bc..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/feadd.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void feadd(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- out[0] = (x5 + x27);
- out[1] = (x7 + x29);
- out[2] = (x9 + x31);
- out[3] = (x11 + x33);
- out[4] = (x13 + x35);
- out[5] = (x15 + x37);
- out[6] = (x17 + x39);
- out[7] = (x19 + x41);
- out[8] = (x21 + x43);
- out[9] = (x23 + x45);
- out[10] = (x25 + x47);
- out[11] = (x24 + x46);
- }}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e256m2e32m977_12limbs/feadd.v b/src/Specific/solinas32_2e256m2e32m977_12limbs/feadd.v
deleted file mode 100644
index 81db3caf1..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_12limbs.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_2e256m2e32m977_12limbs/feaddDisplay.log b/src/Specific/solinas32_2e256m2e32m977_12limbs/feaddDisplay.log
deleted file mode 100644
index 4109af59c..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- ((x24 + x46), (x25 + x47), (x23 + x45), (x21 + x43), (x19 + x41), (x17 + x39), (x15 + x37), (x13 + x35), (x11 + x33), (x9 + x31), (x7 + x29), (x5 + x27)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e256m2e32m977_12limbs/feaddDisplay.v b/src/Specific/solinas32_2e256m2e32m977_12limbs/feaddDisplay.v
deleted file mode 100644
index fdc8da47c..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_12limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e256m2e32m977_12limbs/fecarry.v b/src/Specific/solinas32_2e256m2e32m977_12limbs/fecarry.v
deleted file mode 100644
index aa8ce6e6f..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_12limbs.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_2e256m2e32m977_12limbs/fecarryDisplay.v b/src/Specific/solinas32_2e256m2e32m977_12limbs/fecarryDisplay.v
deleted file mode 100644
index 95d531d11..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_12limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e256m2e32m977_12limbs/femul.c b/src/Specific/solinas32_2e256m2e32m977_12limbs/femul.c
deleted file mode 100644
index 69b723883..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/femul.c
+++ /dev/null
@@ -1,103 +0,0 @@
-static void femul(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- { uint64_t x48 = ((((uint64_t)x5 * x46) + ((0x2 * ((uint64_t)x7 * x47)) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + ((0x2 * ((uint64_t)x19 * x35)) + (((uint64_t)x21 * x33) + (((uint64_t)x23 * x31) + ((0x2 * ((uint64_t)x25 * x29)) + ((uint64_t)x24 * x27)))))))))))) + (0x800 * ((uint64_t)x24 * x46)));
- { uint64_t x49 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + (((uint64_t)x23 * x29) + ((uint64_t)x25 * x27))))))))))) + ((0x3d1 * ((uint64_t)x24 * x46)) + (0x400 * ((0x2 * ((uint64_t)x25 * x46)) + (0x2 * ((uint64_t)x24 * x47))))));
- { uint64_t x50 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + (((uint64_t)x11 * x39) + ((0x2 * ((uint64_t)x13 * x37)) + ((0x2 * ((uint64_t)x15 * x35)) + (((uint64_t)x17 * x33) + ((0x2 * ((uint64_t)x19 * x31)) + ((0x2 * ((uint64_t)x21 * x29)) + ((uint64_t)x23 * x27)))))))))) + ((0x3d1 * ((0x2 * ((uint64_t)x25 * x46)) + (0x2 * ((uint64_t)x24 * x47)))) + (0x800 * (((uint64_t)x23 * x46) + ((0x2 * ((uint64_t)x25 * x47)) + ((uint64_t)x24 * x45))))));
- { uint64_t x51 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((0x2 * ((uint64_t)x13 * x35)) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + ((0x2 * ((uint64_t)x19 * x29)) + ((uint64_t)x21 * x27))))))))) + ((0x3d1 * (((uint64_t)x23 * x46) + ((0x2 * ((uint64_t)x25 * x47)) + ((uint64_t)x24 * x45)))) + (0x800 * (((uint64_t)x21 * x46) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + ((uint64_t)x24 * x43)))))));
- { uint64_t x52 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x19 * x27)))))))) + ((0x3d1 * (((uint64_t)x21 * x46) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + ((uint64_t)x24 * x43))))) + (0x400 * ((0x2 * ((uint64_t)x19 * x46)) + ((0x2 * ((uint64_t)x21 * x47)) + (((uint64_t)x23 * x45) + ((0x2 * ((uint64_t)x25 * x43)) + (0x2 * ((uint64_t)x24 * x41)))))))));
- { uint64_t x53 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + (((uint64_t)x11 * x33) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((uint64_t)x17 * x27))))))) + ((0x3d1 * ((0x2 * ((uint64_t)x19 * x46)) + ((0x2 * ((uint64_t)x21 * x47)) + (((uint64_t)x23 * x45) + ((0x2 * ((uint64_t)x25 * x43)) + (0x2 * ((uint64_t)x24 * x41))))))) + (0x800 * (((uint64_t)x17 * x46) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + ((0x2 * ((uint64_t)x25 * x41)) + ((uint64_t)x24 * x39)))))))));
- { uint64_t x54 = ((((uint64_t)x5 * x37) + ((0x2 * ((uint64_t)x7 * x35)) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + ((uint64_t)x15 * x27)))))) + ((0x3d1 * (((uint64_t)x17 * x46) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + ((0x2 * ((uint64_t)x25 * x41)) + ((uint64_t)x24 * x39))))))) + (0x800 * (((uint64_t)x15 * x46) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + ((uint64_t)x24 * x37))))))))));
- { uint64_t x55 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + ((uint64_t)x13 * x27))))) + ((0x3d1 * (((uint64_t)x15 * x46) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + ((uint64_t)x24 * x37)))))))) + (0x400 * ((0x2 * ((uint64_t)x13 * x46)) + ((0x2 * ((uint64_t)x15 * x47)) + (((uint64_t)x17 * x45) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + (((uint64_t)x23 * x39) + ((0x2 * ((uint64_t)x25 * x37)) + (0x2 * ((uint64_t)x24 * x35))))))))))));
- { uint64_t x56 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((uint64_t)x11 * x27)))) + ((0x3d1 * ((0x2 * ((uint64_t)x13 * x46)) + ((0x2 * ((uint64_t)x15 * x47)) + (((uint64_t)x17 * x45) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + (((uint64_t)x23 * x39) + ((0x2 * ((uint64_t)x25 * x37)) + (0x2 * ((uint64_t)x24 * x35)))))))))) + (0x800 * (((uint64_t)x11 * x46) + ((0x2 * ((uint64_t)x13 * x47)) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((0x2 * ((uint64_t)x19 * x41)) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + ((0x2 * ((uint64_t)x25 * x35)) + ((uint64_t)x24 * x33))))))))))));
- { uint64_t x57 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((uint64_t)x9 * x27))) + ((0x3d1 * (((uint64_t)x11 * x46) + ((0x2 * ((uint64_t)x13 * x47)) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((0x2 * ((uint64_t)x19 * x41)) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + ((0x2 * ((uint64_t)x25 * x35)) + ((uint64_t)x24 * x33)))))))))) + (0x800 * (((uint64_t)x9 * x46) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + (((uint64_t)x25 * x33) + ((uint64_t)x24 * x31)))))))))))));
- { uint64_t x58 = ((((uint64_t)x5 * x29) + ((uint64_t)x7 * x27)) + ((0x3d1 * (((uint64_t)x9 * x46) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + (((uint64_t)x25 * x33) + ((uint64_t)x24 * x31))))))))))) + (0x400 * ((0x2 * ((uint64_t)x7 * x46)) + ((0x2 * ((uint64_t)x9 * x47)) + (((uint64_t)x11 * x45) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + (((uint64_t)x17 * x39) + ((0x2 * ((uint64_t)x19 * x37)) + ((0x2 * ((uint64_t)x21 * x35)) + (((uint64_t)x23 * x33) + ((0x2 * ((uint64_t)x25 * x31)) + (0x2 * ((uint64_t)x24 * x29)))))))))))))));
- { uint64_t x59 = (((uint64_t)x5 * x27) + (0x3d1 * ((0x2 * ((uint64_t)x7 * x46)) + ((0x2 * ((uint64_t)x9 * x47)) + (((uint64_t)x11 * x45) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + (((uint64_t)x17 * x39) + ((0x2 * ((uint64_t)x19 * x37)) + ((0x2 * ((uint64_t)x21 * x35)) + (((uint64_t)x23 * x33) + ((0x2 * ((uint64_t)x25 * x31)) + (0x2 * ((uint64_t)x24 * x29))))))))))))));
- { uint64_t x60 = (x59 >> 0x16);
- { uint32_t x61 = ((uint32_t)x59 & 0x3fffff);
- { uint64_t x62 = (x48 >> 0x15);
- { uint32_t x63 = ((uint32_t)x48 & 0x1fffff);
- { uint64_t x64 = ((0x200000 * x62) + x63);
- { uint64_t x65 = (x64 >> 0x15);
- { uint32_t x66 = ((uint32_t)x64 & 0x1fffff);
- { uint64_t x67 = ((x60 + x58) + (0x400 * x65));
- { uint64_t x68 = (x67 >> 0x15);
- { uint32_t x69 = ((uint32_t)x67 & 0x1fffff);
- { uint64_t x70 = (x61 + (0x3d1 * x65));
- { uint32_t x71 = (uint32_t) (x70 >> 0x16);
- { uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- { uint64_t x73 = (x68 + x57);
- { uint64_t x74 = (x73 >> 0x15);
- { uint32_t x75 = ((uint32_t)x73 & 0x1fffff);
- { uint64_t x76 = (x74 + x56);
- { uint64_t x77 = (x76 >> 0x16);
- { uint32_t x78 = ((uint32_t)x76 & 0x3fffff);
- { uint64_t x79 = (x77 + x55);
- { uint64_t x80 = (x79 >> 0x15);
- { uint32_t x81 = ((uint32_t)x79 & 0x1fffff);
- { uint64_t x82 = (x80 + x54);
- { uint64_t x83 = (x82 >> 0x15);
- { uint32_t x84 = ((uint32_t)x82 & 0x1fffff);
- { uint64_t x85 = (x83 + x53);
- { uint64_t x86 = (x85 >> 0x16);
- { uint32_t x87 = ((uint32_t)x85 & 0x3fffff);
- { uint64_t x88 = (x86 + x52);
- { uint64_t x89 = (x88 >> 0x15);
- { uint32_t x90 = ((uint32_t)x88 & 0x1fffff);
- { uint64_t x91 = (x89 + x51);
- { uint64_t x92 = (x91 >> 0x15);
- { uint32_t x93 = ((uint32_t)x91 & 0x1fffff);
- { uint64_t x94 = (x92 + x50);
- { uint64_t x95 = (x94 >> 0x16);
- { uint32_t x96 = ((uint32_t)x94 & 0x3fffff);
- { uint64_t x97 = (x95 + x49);
- { uint64_t x98 = (x97 >> 0x15);
- { uint32_t x99 = ((uint32_t)x97 & 0x1fffff);
- { uint64_t x100 = (x98 + x66);
- { uint32_t x101 = (uint32_t) (x100 >> 0x15);
- { uint32_t x102 = ((uint32_t)x100 & 0x1fffff);
- { uint64_t x103 = (((uint64_t)0x200000 * x101) + x102);
- { uint32_t x104 = (uint32_t) (x103 >> 0x15);
- { uint32_t x105 = ((uint32_t)x103 & 0x1fffff);
- { uint32_t x106 = ((x71 + x69) + (0x400 * x104));
- { uint32_t x107 = (x106 >> 0x15);
- { uint32_t x108 = (x106 & 0x1fffff);
- { uint32_t x109 = (x72 + (0x3d1 * x104));
- { uint32_t x110 = (x109 >> 0x16);
- { uint32_t x111 = (x109 & 0x3fffff);
- out[0] = x111;
- out[1] = (x110 + x108);
- out[2] = (x107 + x75);
- out[3] = x78;
- out[4] = x81;
- out[5] = x84;
- out[6] = x87;
- out[7] = x90;
- out[8] = x93;
- out[9] = x96;
- out[10] = x99;
- out[11] = x105;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e256m2e32m977_12limbs/femul.v b/src/Specific/solinas32_2e256m2e32m977_12limbs/femul.v
deleted file mode 100644
index 7c40f1335..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_12limbs.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_2e256m2e32m977_12limbs/femulDisplay.log b/src/Specific/solinas32_2e256m2e32m977_12limbs/femulDisplay.log
deleted file mode 100644
index 238bb7bf6..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/femulDisplay.log
+++ /dev/null
@@ -1,71 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- uint64_t x48 = ((((uint64_t)x5 * x46) + ((0x2 * ((uint64_t)x7 * x47)) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + ((0x2 * ((uint64_t)x19 * x35)) + (((uint64_t)x21 * x33) + (((uint64_t)x23 * x31) + ((0x2 * ((uint64_t)x25 * x29)) + ((uint64_t)x24 * x27)))))))))))) + (0x800 * ((uint64_t)x24 * x46)));
- uint64_t x49 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + (((uint64_t)x23 * x29) + ((uint64_t)x25 * x27))))))))))) + ((0x3d1 * ((uint64_t)x24 * x46)) + (0x400 * ((0x2 * ((uint64_t)x25 * x46)) + (0x2 * ((uint64_t)x24 * x47))))));
- uint64_t x50 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + (((uint64_t)x11 * x39) + ((0x2 * ((uint64_t)x13 * x37)) + ((0x2 * ((uint64_t)x15 * x35)) + (((uint64_t)x17 * x33) + ((0x2 * ((uint64_t)x19 * x31)) + ((0x2 * ((uint64_t)x21 * x29)) + ((uint64_t)x23 * x27)))))))))) + ((0x3d1 * ((0x2 * ((uint64_t)x25 * x46)) + (0x2 * ((uint64_t)x24 * x47)))) + (0x800 * (((uint64_t)x23 * x46) + ((0x2 * ((uint64_t)x25 * x47)) + ((uint64_t)x24 * x45))))));
- uint64_t x51 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((0x2 * ((uint64_t)x13 * x35)) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + ((0x2 * ((uint64_t)x19 * x29)) + ((uint64_t)x21 * x27))))))))) + ((0x3d1 * (((uint64_t)x23 * x46) + ((0x2 * ((uint64_t)x25 * x47)) + ((uint64_t)x24 * x45)))) + (0x800 * (((uint64_t)x21 * x46) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + ((uint64_t)x24 * x43)))))));
- uint64_t x52 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x19 * x27)))))))) + ((0x3d1 * (((uint64_t)x21 * x46) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + ((uint64_t)x24 * x43))))) + (0x400 * ((0x2 * ((uint64_t)x19 * x46)) + ((0x2 * ((uint64_t)x21 * x47)) + (((uint64_t)x23 * x45) + ((0x2 * ((uint64_t)x25 * x43)) + (0x2 * ((uint64_t)x24 * x41)))))))));
- uint64_t x53 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + (((uint64_t)x11 * x33) + ((0x2 * ((uint64_t)x13 * x31)) + ((0x2 * ((uint64_t)x15 * x29)) + ((uint64_t)x17 * x27))))))) + ((0x3d1 * ((0x2 * ((uint64_t)x19 * x46)) + ((0x2 * ((uint64_t)x21 * x47)) + (((uint64_t)x23 * x45) + ((0x2 * ((uint64_t)x25 * x43)) + (0x2 * ((uint64_t)x24 * x41))))))) + (0x800 * (((uint64_t)x17 * x46) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + ((0x2 * ((uint64_t)x25 * x41)) + ((uint64_t)x24 * x39)))))))));
- uint64_t x54 = ((((uint64_t)x5 * x37) + ((0x2 * ((uint64_t)x7 * x35)) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + ((0x2 * ((uint64_t)x13 * x29)) + ((uint64_t)x15 * x27)))))) + ((0x3d1 * (((uint64_t)x17 * x46) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + ((0x2 * ((uint64_t)x25 * x41)) + ((uint64_t)x24 * x39))))))) + (0x800 * (((uint64_t)x15 * x46) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + ((uint64_t)x24 * x37))))))))));
- uint64_t x55 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + ((uint64_t)x13 * x27))))) + ((0x3d1 * (((uint64_t)x15 * x46) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + ((uint64_t)x24 * x37)))))))) + (0x400 * ((0x2 * ((uint64_t)x13 * x46)) + ((0x2 * ((uint64_t)x15 * x47)) + (((uint64_t)x17 * x45) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + (((uint64_t)x23 * x39) + ((0x2 * ((uint64_t)x25 * x37)) + (0x2 * ((uint64_t)x24 * x35))))))))))));
- uint64_t x56 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((uint64_t)x11 * x27)))) + ((0x3d1 * ((0x2 * ((uint64_t)x13 * x46)) + ((0x2 * ((uint64_t)x15 * x47)) + (((uint64_t)x17 * x45) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + (((uint64_t)x23 * x39) + ((0x2 * ((uint64_t)x25 * x37)) + (0x2 * ((uint64_t)x24 * x35)))))))))) + (0x800 * (((uint64_t)x11 * x46) + ((0x2 * ((uint64_t)x13 * x47)) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((0x2 * ((uint64_t)x19 * x41)) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + ((0x2 * ((uint64_t)x25 * x35)) + ((uint64_t)x24 * x33))))))))))));
- uint64_t x57 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((uint64_t)x9 * x27))) + ((0x3d1 * (((uint64_t)x11 * x46) + ((0x2 * ((uint64_t)x13 * x47)) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((0x2 * ((uint64_t)x19 * x41)) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + ((0x2 * ((uint64_t)x25 * x35)) + ((uint64_t)x24 * x33)))))))))) + (0x800 * (((uint64_t)x9 * x46) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + (((uint64_t)x25 * x33) + ((uint64_t)x24 * x31)))))))))))));
- uint64_t x58 = ((((uint64_t)x5 * x29) + ((uint64_t)x7 * x27)) + ((0x3d1 * (((uint64_t)x9 * x46) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + (((uint64_t)x25 * x33) + ((uint64_t)x24 * x31))))))))))) + (0x400 * ((0x2 * ((uint64_t)x7 * x46)) + ((0x2 * ((uint64_t)x9 * x47)) + (((uint64_t)x11 * x45) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + (((uint64_t)x17 * x39) + ((0x2 * ((uint64_t)x19 * x37)) + ((0x2 * ((uint64_t)x21 * x35)) + (((uint64_t)x23 * x33) + ((0x2 * ((uint64_t)x25 * x31)) + (0x2 * ((uint64_t)x24 * x29)))))))))))))));
- uint64_t x59 = (((uint64_t)x5 * x27) + (0x3d1 * ((0x2 * ((uint64_t)x7 * x46)) + ((0x2 * ((uint64_t)x9 * x47)) + (((uint64_t)x11 * x45) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + (((uint64_t)x17 * x39) + ((0x2 * ((uint64_t)x19 * x37)) + ((0x2 * ((uint64_t)x21 * x35)) + (((uint64_t)x23 * x33) + ((0x2 * ((uint64_t)x25 * x31)) + (0x2 * ((uint64_t)x24 * x29))))))))))))));
- uint64_t x60 = (x59 >> 0x16);
- uint32_t x61 = ((uint32_t)x59 & 0x3fffff);
- uint64_t x62 = (x48 >> 0x15);
- uint32_t x63 = ((uint32_t)x48 & 0x1fffff);
- uint64_t x64 = ((0x200000 * x62) + x63);
- uint64_t x65 = (x64 >> 0x15);
- uint32_t x66 = ((uint32_t)x64 & 0x1fffff);
- uint64_t x67 = ((x60 + x58) + (0x400 * x65));
- uint64_t x68 = (x67 >> 0x15);
- uint32_t x69 = ((uint32_t)x67 & 0x1fffff);
- uint64_t x70 = (x61 + (0x3d1 * x65));
- uint32_t x71 = (uint32_t) (x70 >> 0x16);
- uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- uint64_t x73 = (x68 + x57);
- uint64_t x74 = (x73 >> 0x15);
- uint32_t x75 = ((uint32_t)x73 & 0x1fffff);
- uint64_t x76 = (x74 + x56);
- uint64_t x77 = (x76 >> 0x16);
- uint32_t x78 = ((uint32_t)x76 & 0x3fffff);
- uint64_t x79 = (x77 + x55);
- uint64_t x80 = (x79 >> 0x15);
- uint32_t x81 = ((uint32_t)x79 & 0x1fffff);
- uint64_t x82 = (x80 + x54);
- uint64_t x83 = (x82 >> 0x15);
- uint32_t x84 = ((uint32_t)x82 & 0x1fffff);
- uint64_t x85 = (x83 + x53);
- uint64_t x86 = (x85 >> 0x16);
- uint32_t x87 = ((uint32_t)x85 & 0x3fffff);
- uint64_t x88 = (x86 + x52);
- uint64_t x89 = (x88 >> 0x15);
- uint32_t x90 = ((uint32_t)x88 & 0x1fffff);
- uint64_t x91 = (x89 + x51);
- uint64_t x92 = (x91 >> 0x15);
- uint32_t x93 = ((uint32_t)x91 & 0x1fffff);
- uint64_t x94 = (x92 + x50);
- uint64_t x95 = (x94 >> 0x16);
- uint32_t x96 = ((uint32_t)x94 & 0x3fffff);
- uint64_t x97 = (x95 + x49);
- uint64_t x98 = (x97 >> 0x15);
- uint32_t x99 = ((uint32_t)x97 & 0x1fffff);
- uint64_t x100 = (x98 + x66);
- uint32_t x101 = (uint32_t) (x100 >> 0x15);
- uint32_t x102 = ((uint32_t)x100 & 0x1fffff);
- uint64_t x103 = (((uint64_t)0x200000 * x101) + x102);
- uint32_t x104 = (uint32_t) (x103 >> 0x15);
- uint32_t x105 = ((uint32_t)x103 & 0x1fffff);
- uint32_t x106 = ((x71 + x69) + (0x400 * x104));
- uint32_t x107 = (x106 >> 0x15);
- uint32_t x108 = (x106 & 0x1fffff);
- uint32_t x109 = (x72 + (0x3d1 * x104));
- uint32_t x110 = (x109 >> 0x16);
- uint32_t x111 = (x109 & 0x3fffff);
- return (Return x105, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, (x107 + x75), (x110 + x108), Return x111))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e256m2e32m977_12limbs/femulDisplay.v b/src/Specific/solinas32_2e256m2e32m977_12limbs/femulDisplay.v
deleted file mode 100644
index 4a1cc516a..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_12limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e256m2e32m977_12limbs/fesquare.c b/src/Specific/solinas32_2e256m2e32m977_12limbs/fesquare.c
deleted file mode 100644
index 7f795b431..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/fesquare.c
+++ /dev/null
@@ -1,91 +0,0 @@
-static void fesquare(uint32_t out[12], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x23 = ((((uint64_t)x2 * x21) + ((0x2 * ((uint64_t)x4 * x22)) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x21 * x2)))))))))))) + (0x800 * ((uint64_t)x21 * x21)));
- { uint64_t x24 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + ((0x3d1 * ((uint64_t)x21 * x21)) + (0x400 * ((0x2 * ((uint64_t)x22 * x21)) + (0x2 * ((uint64_t)x21 * x22))))));
- { uint64_t x25 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + ((0x3d1 * ((0x2 * ((uint64_t)x22 * x21)) + (0x2 * ((uint64_t)x21 * x22)))) + (0x800 * (((uint64_t)x20 * x21) + ((0x2 * ((uint64_t)x22 * x22)) + ((uint64_t)x21 * x20))))));
- { uint64_t x26 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + ((0x3d1 * (((uint64_t)x20 * x21) + ((0x2 * ((uint64_t)x22 * x22)) + ((uint64_t)x21 * x20)))) + (0x800 * (((uint64_t)x18 * x21) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((uint64_t)x21 * x18)))))));
- { uint64_t x27 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + ((0x3d1 * (((uint64_t)x18 * x21) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((uint64_t)x21 * x18))))) + (0x400 * ((0x2 * ((uint64_t)x16 * x21)) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + (0x2 * ((uint64_t)x21 * x16)))))))));
- { uint64_t x28 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + ((0x3d1 * ((0x2 * ((uint64_t)x16 * x21)) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + (0x2 * ((uint64_t)x21 * x16))))))) + (0x800 * (((uint64_t)x14 * x21) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + ((uint64_t)x21 * x14)))))))));
- { uint64_t x29 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + ((0x3d1 * (((uint64_t)x14 * x21) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + ((uint64_t)x21 * x14))))))) + (0x800 * (((uint64_t)x12 * x21) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + ((uint64_t)x21 * x12))))))))));
- { uint64_t x30 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + ((0x3d1 * (((uint64_t)x12 * x21) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + ((uint64_t)x21 * x12)))))))) + (0x400 * ((0x2 * ((uint64_t)x10 * x21)) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + (0x2 * ((uint64_t)x21 * x10))))))))))));
- { uint64_t x31 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + ((0x3d1 * ((0x2 * ((uint64_t)x10 * x21)) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + (0x2 * ((uint64_t)x21 * x10)))))))))) + (0x800 * (((uint64_t)x8 * x21) + ((0x2 * ((uint64_t)x10 * x22)) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + ((0x2 * ((uint64_t)x22 * x10)) + ((uint64_t)x21 * x8))))))))))));
- { uint64_t x32 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + ((0x3d1 * (((uint64_t)x8 * x21) + ((0x2 * ((uint64_t)x10 * x22)) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + ((0x2 * ((uint64_t)x22 * x10)) + ((uint64_t)x21 * x8)))))))))) + (0x800 * (((uint64_t)x6 * x21) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + ((uint64_t)x21 * x6)))))))))))));
- { uint64_t x33 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + ((0x3d1 * (((uint64_t)x6 * x21) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + ((uint64_t)x21 * x6))))))))))) + (0x400 * ((0x2 * ((uint64_t)x4 * x21)) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + (0x2 * ((uint64_t)x21 * x4)))))))))))))));
- { uint64_t x34 = (((uint64_t)x2 * x2) + (0x3d1 * ((0x2 * ((uint64_t)x4 * x21)) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + (0x2 * ((uint64_t)x21 * x4))))))))))))));
- { uint64_t x35 = (x34 >> 0x16);
- { uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- { uint64_t x37 = (x23 >> 0x15);
- { uint32_t x38 = ((uint32_t)x23 & 0x1fffff);
- { uint64_t x39 = ((0x200000 * x37) + x38);
- { uint64_t x40 = (x39 >> 0x15);
- { uint32_t x41 = ((uint32_t)x39 & 0x1fffff);
- { uint64_t x42 = ((x35 + x33) + (0x400 * x40));
- { uint64_t x43 = (x42 >> 0x15);
- { uint32_t x44 = ((uint32_t)x42 & 0x1fffff);
- { uint64_t x45 = (x36 + (0x3d1 * x40));
- { uint32_t x46 = (uint32_t) (x45 >> 0x16);
- { uint32_t x47 = ((uint32_t)x45 & 0x3fffff);
- { uint64_t x48 = (x43 + x32);
- { uint64_t x49 = (x48 >> 0x15);
- { uint32_t x50 = ((uint32_t)x48 & 0x1fffff);
- { uint64_t x51 = (x49 + x31);
- { uint64_t x52 = (x51 >> 0x16);
- { uint32_t x53 = ((uint32_t)x51 & 0x3fffff);
- { uint64_t x54 = (x52 + x30);
- { uint64_t x55 = (x54 >> 0x15);
- { uint32_t x56 = ((uint32_t)x54 & 0x1fffff);
- { uint64_t x57 = (x55 + x29);
- { uint64_t x58 = (x57 >> 0x15);
- { uint32_t x59 = ((uint32_t)x57 & 0x1fffff);
- { uint64_t x60 = (x58 + x28);
- { uint64_t x61 = (x60 >> 0x16);
- { uint32_t x62 = ((uint32_t)x60 & 0x3fffff);
- { uint64_t x63 = (x61 + x27);
- { uint64_t x64 = (x63 >> 0x15);
- { uint32_t x65 = ((uint32_t)x63 & 0x1fffff);
- { uint64_t x66 = (x64 + x26);
- { uint64_t x67 = (x66 >> 0x15);
- { uint32_t x68 = ((uint32_t)x66 & 0x1fffff);
- { uint64_t x69 = (x67 + x25);
- { uint64_t x70 = (x69 >> 0x16);
- { uint32_t x71 = ((uint32_t)x69 & 0x3fffff);
- { uint64_t x72 = (x70 + x24);
- { uint64_t x73 = (x72 >> 0x15);
- { uint32_t x74 = ((uint32_t)x72 & 0x1fffff);
- { uint64_t x75 = (x73 + x41);
- { uint32_t x76 = (uint32_t) (x75 >> 0x15);
- { uint32_t x77 = ((uint32_t)x75 & 0x1fffff);
- { uint64_t x78 = (((uint64_t)0x200000 * x76) + x77);
- { uint32_t x79 = (uint32_t) (x78 >> 0x15);
- { uint32_t x80 = ((uint32_t)x78 & 0x1fffff);
- { uint32_t x81 = ((x46 + x44) + (0x400 * x79));
- { uint32_t x82 = (x81 >> 0x15);
- { uint32_t x83 = (x81 & 0x1fffff);
- { uint32_t x84 = (x47 + (0x3d1 * x79));
- { uint32_t x85 = (x84 >> 0x16);
- { uint32_t x86 = (x84 & 0x3fffff);
- out[0] = x86;
- out[1] = (x85 + x83);
- out[2] = (x82 + x50);
- out[3] = x53;
- out[4] = x56;
- out[5] = x59;
- out[6] = x62;
- out[7] = x65;
- out[8] = x68;
- out[9] = x71;
- out[10] = x74;
- out[11] = x80;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e256m2e32m977_12limbs/fesquare.v b/src/Specific/solinas32_2e256m2e32m977_12limbs/fesquare.v
deleted file mode 100644
index 19cb2d266..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_12limbs.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_2e256m2e32m977_12limbs/fesquareDisplay.log b/src/Specific/solinas32_2e256m2e32m977_12limbs/fesquareDisplay.log
deleted file mode 100644
index 2b6d59589..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,71 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x23 = ((((uint64_t)x2 * x21) + ((0x2 * ((uint64_t)x4 * x22)) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x21 * x2)))))))))))) + (0x800 * ((uint64_t)x21 * x21)));
- uint64_t x24 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + ((0x3d1 * ((uint64_t)x21 * x21)) + (0x400 * ((0x2 * ((uint64_t)x22 * x21)) + (0x2 * ((uint64_t)x21 * x22))))));
- uint64_t x25 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + ((0x3d1 * ((0x2 * ((uint64_t)x22 * x21)) + (0x2 * ((uint64_t)x21 * x22)))) + (0x800 * (((uint64_t)x20 * x21) + ((0x2 * ((uint64_t)x22 * x22)) + ((uint64_t)x21 * x20))))));
- uint64_t x26 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + ((0x3d1 * (((uint64_t)x20 * x21) + ((0x2 * ((uint64_t)x22 * x22)) + ((uint64_t)x21 * x20)))) + (0x800 * (((uint64_t)x18 * x21) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((uint64_t)x21 * x18)))))));
- uint64_t x27 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + ((0x3d1 * (((uint64_t)x18 * x21) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((uint64_t)x21 * x18))))) + (0x400 * ((0x2 * ((uint64_t)x16 * x21)) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + (0x2 * ((uint64_t)x21 * x16)))))))));
- uint64_t x28 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + ((0x3d1 * ((0x2 * ((uint64_t)x16 * x21)) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + (0x2 * ((uint64_t)x21 * x16))))))) + (0x800 * (((uint64_t)x14 * x21) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + ((uint64_t)x21 * x14)))))))));
- uint64_t x29 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + ((0x3d1 * (((uint64_t)x14 * x21) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + ((uint64_t)x21 * x14))))))) + (0x800 * (((uint64_t)x12 * x21) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + ((uint64_t)x21 * x12))))))))));
- uint64_t x30 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + ((0x3d1 * (((uint64_t)x12 * x21) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + ((uint64_t)x21 * x12)))))))) + (0x400 * ((0x2 * ((uint64_t)x10 * x21)) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + (0x2 * ((uint64_t)x21 * x10))))))))))));
- uint64_t x31 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + ((0x3d1 * ((0x2 * ((uint64_t)x10 * x21)) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + (0x2 * ((uint64_t)x21 * x10)))))))))) + (0x800 * (((uint64_t)x8 * x21) + ((0x2 * ((uint64_t)x10 * x22)) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + ((0x2 * ((uint64_t)x22 * x10)) + ((uint64_t)x21 * x8))))))))))));
- uint64_t x32 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + ((0x3d1 * (((uint64_t)x8 * x21) + ((0x2 * ((uint64_t)x10 * x22)) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + ((0x2 * ((uint64_t)x22 * x10)) + ((uint64_t)x21 * x8)))))))))) + (0x800 * (((uint64_t)x6 * x21) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + ((uint64_t)x21 * x6)))))))))))));
- uint64_t x33 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + ((0x3d1 * (((uint64_t)x6 * x21) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + ((uint64_t)x21 * x6))))))))))) + (0x400 * ((0x2 * ((uint64_t)x4 * x21)) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + (0x2 * ((uint64_t)x21 * x4)))))))))))))));
- uint64_t x34 = (((uint64_t)x2 * x2) + (0x3d1 * ((0x2 * ((uint64_t)x4 * x21)) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + (0x2 * ((uint64_t)x21 * x4))))))))))))));
- uint64_t x35 = (x34 >> 0x16);
- uint32_t x36 = ((uint32_t)x34 & 0x3fffff);
- uint64_t x37 = (x23 >> 0x15);
- uint32_t x38 = ((uint32_t)x23 & 0x1fffff);
- uint64_t x39 = ((0x200000 * x37) + x38);
- uint64_t x40 = (x39 >> 0x15);
- uint32_t x41 = ((uint32_t)x39 & 0x1fffff);
- uint64_t x42 = ((x35 + x33) + (0x400 * x40));
- uint64_t x43 = (x42 >> 0x15);
- uint32_t x44 = ((uint32_t)x42 & 0x1fffff);
- uint64_t x45 = (x36 + (0x3d1 * x40));
- uint32_t x46 = (uint32_t) (x45 >> 0x16);
- uint32_t x47 = ((uint32_t)x45 & 0x3fffff);
- uint64_t x48 = (x43 + x32);
- uint64_t x49 = (x48 >> 0x15);
- uint32_t x50 = ((uint32_t)x48 & 0x1fffff);
- uint64_t x51 = (x49 + x31);
- uint64_t x52 = (x51 >> 0x16);
- uint32_t x53 = ((uint32_t)x51 & 0x3fffff);
- uint64_t x54 = (x52 + x30);
- uint64_t x55 = (x54 >> 0x15);
- uint32_t x56 = ((uint32_t)x54 & 0x1fffff);
- uint64_t x57 = (x55 + x29);
- uint64_t x58 = (x57 >> 0x15);
- uint32_t x59 = ((uint32_t)x57 & 0x1fffff);
- uint64_t x60 = (x58 + x28);
- uint64_t x61 = (x60 >> 0x16);
- uint32_t x62 = ((uint32_t)x60 & 0x3fffff);
- uint64_t x63 = (x61 + x27);
- uint64_t x64 = (x63 >> 0x15);
- uint32_t x65 = ((uint32_t)x63 & 0x1fffff);
- uint64_t x66 = (x64 + x26);
- uint64_t x67 = (x66 >> 0x15);
- uint32_t x68 = ((uint32_t)x66 & 0x1fffff);
- uint64_t x69 = (x67 + x25);
- uint64_t x70 = (x69 >> 0x16);
- uint32_t x71 = ((uint32_t)x69 & 0x3fffff);
- uint64_t x72 = (x70 + x24);
- uint64_t x73 = (x72 >> 0x15);
- uint32_t x74 = ((uint32_t)x72 & 0x1fffff);
- uint64_t x75 = (x73 + x41);
- uint32_t x76 = (uint32_t) (x75 >> 0x15);
- uint32_t x77 = ((uint32_t)x75 & 0x1fffff);
- uint64_t x78 = (((uint64_t)0x200000 * x76) + x77);
- uint32_t x79 = (uint32_t) (x78 >> 0x15);
- uint32_t x80 = ((uint32_t)x78 & 0x1fffff);
- uint32_t x81 = ((x46 + x44) + (0x400 * x79));
- uint32_t x82 = (x81 >> 0x15);
- uint32_t x83 = (x81 & 0x1fffff);
- uint32_t x84 = (x47 + (0x3d1 * x79));
- uint32_t x85 = (x84 >> 0x16);
- uint32_t x86 = (x84 & 0x3fffff);
- return (Return x80, Return x74, Return x71, Return x68, Return x65, Return x62, Return x59, Return x56, Return x53, (x82 + x50), (x85 + x83), Return x86))
-x
- : 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e256m2e32m977_12limbs/fesquareDisplay.v b/src/Specific/solinas32_2e256m2e32m977_12limbs/fesquareDisplay.v
deleted file mode 100644
index e21acc95d..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_12limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e256m2e32m977_12limbs/fesub.c b/src/Specific/solinas32_2e256m2e32m977_12limbs/fesub.c
deleted file mode 100644
index 0a45906fc..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/fesub.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void fesub(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- out[0] = ((0x7ff85e + x5) - x27);
- out[1] = ((0x3ff7fe + x7) - x29);
- out[2] = ((0x3ffffe + x9) - x31);
- out[3] = ((0x7ffffe + x11) - x33);
- out[4] = ((0x3ffffe + x13) - x35);
- out[5] = ((0x3ffffe + x15) - x37);
- out[6] = ((0x7ffffe + x17) - x39);
- out[7] = ((0x3ffffe + x19) - x41);
- out[8] = ((0x3ffffe + x21) - x43);
- out[9] = ((0x7ffffe + x23) - x45);
- out[10] = ((0x3ffffe + x25) - x47);
- out[11] = ((0x3ffffe + x24) - x46);
- }}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e256m2e32m977_12limbs/fesub.v b/src/Specific/solinas32_2e256m2e32m977_12limbs/fesub.v
deleted file mode 100644
index eb0caa651..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_12limbs.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_2e256m2e32m977_12limbs/fesubDisplay.log b/src/Specific/solinas32_2e256m2e32m977_12limbs/fesubDisplay.log
deleted file mode 100644
index 4c77a3d89..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- (((0x3ffffe + x24) - x46), ((0x3ffffe + x25) - x47), ((0x7ffffe + x23) - x45), ((0x3ffffe + x21) - x43), ((0x3ffffe + x19) - x41), ((0x7ffffe + x17) - x39), ((0x3ffffe + x15) - x37), ((0x3ffffe + x13) - x35), ((0x7ffffe + x11) - x33), ((0x3ffffe + x9) - x31), ((0x3ff7fe + x7) - x29), ((0x7ff85e + x5) - x27)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e256m2e32m977_12limbs/fesubDisplay.v b/src/Specific/solinas32_2e256m2e32m977_12limbs/fesubDisplay.v
deleted file mode 100644
index 47d12e9c2..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_12limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e256m2e32m977_12limbs/freeze.c b/src/Specific/solinas32_2e256m2e32m977_12limbs/freeze.c
deleted file mode 100644
index ba45b0087..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/freeze.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void freeze(uint32_t out[12], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffc2f);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x4, 0x1ffbff);
- { uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x6, 0x1fffff);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x8, 0x3fffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x10, 0x1fffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x12, 0x1fffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x14, 0x3fffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x16, 0x1fffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x18, 0x1fffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x20, 0x3fffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x22, 0x1fffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x21, 0x1fffff);
- { uint32_t x59 = cmovznz32(x58, 0x0, 0xffffffff);
- { uint32_t x60 = (x59 & 0x3ffc2f);
- { uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x24, Return x60);
- { uint32_t x64 = (x59 & 0x1ffbff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x27, Return x64);
- { uint32_t x68 = (x59 & 0x1fffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x30, Return x68);
- { uint32_t x72 = (x59 & 0x3fffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x33, Return x72);
- { uint32_t x76 = (x59 & 0x1fffff);
- { uint32_t x78, uint8_t x79 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x36, Return x76);
- { uint32_t x80 = (x59 & 0x1fffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x39, Return x80);
- { uint32_t x84 = (x59 & 0x3fffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x42, Return x84);
- { uint32_t x88 = (x59 & 0x1fffff);
- { uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x45, Return x88);
- { uint32_t x92 = (x59 & 0x1fffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x48, Return x92);
- { uint32_t x96 = (x59 & 0x3fffff);
- { uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x51, Return x96);
- { uint32_t x100 = (x59 & 0x1fffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x54, Return x100);
- { uint32_t x104 = (x59 & 0x1fffff);
- { uint32_t x106, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x57, Return x104);
- out[0] = x62;
- out[1] = x66;
- out[2] = x70;
- out[3] = x74;
- out[4] = x78;
- out[5] = x82;
- out[6] = x86;
- out[7] = x90;
- out[8] = x94;
- out[9] = x98;
- out[10] = x102;
- out[11] = x106;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e256m2e32m977_12limbs/freeze.v b/src/Specific/solinas32_2e256m2e32m977_12limbs/freeze.v
deleted file mode 100644
index e034f2772..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_12limbs.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_2e256m2e32m977_12limbs/freezeDisplay.log b/src/Specific/solinas32_2e256m2e32m977_12limbs/freezeDisplay.log
deleted file mode 100644
index 5c4fc1a9a..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/freezeDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffc2f);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x4, 0x1ffbff);
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x6, 0x1fffff);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x8, 0x3fffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x10, 0x1fffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x12, 0x1fffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x14, 0x3fffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x16, 0x1fffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x18, 0x1fffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x20, 0x3fffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x22, 0x1fffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x21, 0x1fffff);
- uint32_t x59 = cmovznz32(x58, 0x0, 0xffffffff);
- uint32_t x60 = (x59 & 0x3ffc2f);
- uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x24, Return x60);
- uint32_t x64 = (x59 & 0x1ffbff);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x27, Return x64);
- uint32_t x68 = (x59 & 0x1fffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x30, Return x68);
- uint32_t x72 = (x59 & 0x3fffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x33, Return x72);
- uint32_t x76 = (x59 & 0x1fffff);
- uint32_t x78, uint8_t x79 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x36, Return x76);
- uint32_t x80 = (x59 & 0x1fffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x39, Return x80);
- uint32_t x84 = (x59 & 0x3fffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x42, Return x84);
- uint32_t x88 = (x59 & 0x1fffff);
- uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x45, Return x88);
- uint32_t x92 = (x59 & 0x1fffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x48, Return x92);
- uint32_t x96 = (x59 & 0x3fffff);
- uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x51, Return x96);
- uint32_t x100 = (x59 & 0x1fffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x54, Return x100);
- uint32_t x104 = (x59 & 0x1fffff);
- uint32_t x106, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x57, Return x104);
- (Return x106, Return x102, Return x98, Return x94, Return x90, Return x86, Return x82, Return x78, Return x74, Return x70, Return x66, Return x62))
-x
- : 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e256m2e32m977_12limbs/freezeDisplay.v b/src/Specific/solinas32_2e256m2e32m977_12limbs/freezeDisplay.v
deleted file mode 100644
index 8ce2d92cc..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_12limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e256m2e32m977_12limbs/py_interpreter.sh b/src/Specific/solinas32_2e256m2e32m977_12limbs/py_interpreter.sh
deleted file mode 100755
index 6041da3bd..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_12limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256 - 2**32 - 977' -Dmodulus_bytes='21 + 1/3' -Da24='121665'
diff --git a/src/Specific/solinas32_2e256m2e32m977_13limbs/CurveParameters.v b/src/Specific/solinas32_2e256m2e32m977_13limbs/CurveParameters.v
deleted file mode 100644
index dc2bcf523..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256 - 2^32 - 977
-Base: 19 + 9/13
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 13%nat;
- base := 19 + 9/13;
- bitwidth := 32;
- s := 2^256;
- c := [(1, 977); (2^32, 1)];
- carry_chains := Some [[0; 12]; [1; 0; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12]; [1; 0]]%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_2e256m2e32m977_13limbs/Synthesis.v b/src/Specific/solinas32_2e256m2e32m977_13limbs/Synthesis.v
deleted file mode 100644
index 405cf9850..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_13limbs.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_2e256m2e32m977_13limbs/compiler.sh b/src/Specific/solinas32_2e256m2e32m977_13limbs/compiler.sh
deleted file mode 100755
index 99064ce40..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{20,20,20,19,20,20,19,20,20,19,20,20,19}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977' "$@"
diff --git a/src/Specific/solinas32_2e256m2e32m977_13limbs/compilerxx.sh b/src/Specific/solinas32_2e256m2e32m977_13limbs/compilerxx.sh
deleted file mode 100755
index 72302f3bb..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{20,20,20,19,20,20,19,20,20,19,20,20,19}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977' "$@"
diff --git a/src/Specific/solinas32_2e256m2e32m977_13limbs/feadd.c b/src/Specific/solinas32_2e256m2e32m977_13limbs/feadd.c
deleted file mode 100644
index dbbe1da57..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/feadd.c
+++ /dev/null
@@ -1,42 +0,0 @@
-static void feadd(uint32_t out[13], const uint32_t in1[13], const uint32_t in2[13]) {
- { const uint32_t x26 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x50 = in2[12];
- { const uint32_t x51 = in2[11];
- { const uint32_t x49 = in2[10];
- { const uint32_t x47 = in2[9];
- { const uint32_t x45 = in2[8];
- { const uint32_t x43 = in2[7];
- { const uint32_t x41 = in2[6];
- { const uint32_t x39 = in2[5];
- { const uint32_t x37 = in2[4];
- { const uint32_t x35 = in2[3];
- { const uint32_t x33 = in2[2];
- { const uint32_t x31 = in2[1];
- { const uint32_t x29 = in2[0];
- out[0] = (x5 + x29);
- out[1] = (x7 + x31);
- out[2] = (x9 + x33);
- out[3] = (x11 + x35);
- out[4] = (x13 + x37);
- out[5] = (x15 + x39);
- out[6] = (x17 + x41);
- out[7] = (x19 + x43);
- out[8] = (x21 + x45);
- out[9] = (x23 + x47);
- out[10] = (x25 + x49);
- out[11] = (x27 + x51);
- out[12] = (x26 + x50);
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e256m2e32m977_13limbs/feadd.v b/src/Specific/solinas32_2e256m2e32m977_13limbs/feadd.v
deleted file mode 100644
index 3d99e7112..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_13limbs.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_2e256m2e32m977_13limbs/feaddDisplay.log b/src/Specific/solinas32_2e256m2e32m977_13limbs/feaddDisplay.log
deleted file mode 100644
index e64abeaba..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x26, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29))%core,
- ((x26 + x50), (x27 + x51), (x25 + x49), (x23 + x47), (x21 + x45), (x19 + x43), (x17 + x41), (x15 + x39), (x13 + x37), (x11 + x35), (x9 + x33), (x7 + x31), (x5 + x29)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e256m2e32m977_13limbs/feaddDisplay.v b/src/Specific/solinas32_2e256m2e32m977_13limbs/feaddDisplay.v
deleted file mode 100644
index 17a9fd694..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_13limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e256m2e32m977_13limbs/fecarry.v b/src/Specific/solinas32_2e256m2e32m977_13limbs/fecarry.v
deleted file mode 100644
index 3a42d520f..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_13limbs.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_2e256m2e32m977_13limbs/fecarryDisplay.v b/src/Specific/solinas32_2e256m2e32m977_13limbs/fecarryDisplay.v
deleted file mode 100644
index a79a8d3b3..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_13limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e256m2e32m977_13limbs/femul.c b/src/Specific/solinas32_2e256m2e32m977_13limbs/femul.c
deleted file mode 100644
index 787323fb8..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/femul.c
+++ /dev/null
@@ -1,110 +0,0 @@
-static void femul(uint32_t out[13], const uint32_t in1[13], const uint32_t in2[13]) {
- { const uint32_t x26 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x50 = in2[12];
- { const uint32_t x51 = in2[11];
- { const uint32_t x49 = in2[10];
- { const uint32_t x47 = in2[9];
- { const uint32_t x45 = in2[8];
- { const uint32_t x43 = in2[7];
- { const uint32_t x41 = in2[6];
- { const uint32_t x39 = in2[5];
- { const uint32_t x37 = in2[4];
- { const uint32_t x35 = in2[3];
- { const uint32_t x33 = in2[2];
- { const uint32_t x31 = in2[1];
- { const uint32_t x29 = in2[0];
- { uint64_t x52 = ((((uint64_t)x5 * x50) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + ((0x2 * ((uint64_t)x11 * x47)) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + ((0x2 * ((uint64_t)x23 * x35)) + (((uint64_t)x25 * x33) + (((uint64_t)x27 * x31) + ((uint64_t)x26 * x29))))))))))))) + (0x1000 * (0x2 * ((uint64_t)x26 * x50))));
- { uint64_t x53 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + (((uint64_t)x13 * x43) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + (((uint64_t)x19 * x37) + ((0x2 * ((uint64_t)x21 * x35)) + ((0x2 * ((uint64_t)x23 * x33)) + (((uint64_t)x25 * x31) + ((uint64_t)x27 * x29)))))))))))) + ((0x3d1 * (0x2 * ((uint64_t)x26 * x50))) + (0x1000 * ((0x2 * ((uint64_t)x27 * x50)) + (0x2 * ((uint64_t)x26 * x51))))));
- { uint64_t x54 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + ((0x2 * ((uint64_t)x11 * x43)) + ((0x2 * ((uint64_t)x13 * x41)) + ((0x2 * ((uint64_t)x15 * x39)) + ((0x2 * ((uint64_t)x17 * x37)) + ((0x2 * ((uint64_t)x19 * x35)) + ((0x2 * ((uint64_t)x21 * x33)) + ((0x2 * ((uint64_t)x23 * x31)) + ((uint64_t)x25 * x29))))))))))) + ((0x3d1 * ((0x2 * ((uint64_t)x27 * x50)) + (0x2 * ((uint64_t)x26 * x51)))) + (0x2000 * (((uint64_t)x25 * x50) + (((uint64_t)x27 * x51) + ((uint64_t)x26 * x49))))));
- { uint64_t x55 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + ((0x2 * ((uint64_t)x11 * x41)) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((0x2 * ((uint64_t)x17 * x35)) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((uint64_t)x23 * x29)))))))))) + ((0x3d1 * (((uint64_t)x25 * x50) + (((uint64_t)x27 * x51) + ((uint64_t)x26 * x49)))) + (0x1000 * ((0x2 * ((uint64_t)x23 * x50)) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (0x2 * ((uint64_t)x26 * x47))))))));
- { uint64_t x56 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + (((uint64_t)x13 * x37) + ((0x2 * ((uint64_t)x15 * x35)) + ((0x2 * ((uint64_t)x17 * x33)) + (((uint64_t)x19 * x31) + ((uint64_t)x21 * x29))))))))) + ((0x3d1 * ((0x2 * ((uint64_t)x23 * x50)) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (0x2 * ((uint64_t)x26 * x47)))))) + (0x1000 * ((0x2 * ((uint64_t)x21 * x50)) + ((0x2 * ((uint64_t)x23 * x51)) + (((uint64_t)x25 * x49) + ((0x2 * ((uint64_t)x27 * x47)) + (0x2 * ((uint64_t)x26 * x45)))))))));
- { uint64_t x57 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + ((0x2 * ((uint64_t)x15 * x33)) + ((0x2 * ((uint64_t)x17 * x31)) + ((uint64_t)x19 * x29)))))))) + ((0x3d1 * ((0x2 * ((uint64_t)x21 * x50)) + ((0x2 * ((uint64_t)x23 * x51)) + (((uint64_t)x25 * x49) + ((0x2 * ((uint64_t)x27 * x47)) + (0x2 * ((uint64_t)x26 * x45))))))) + (0x2000 * (((uint64_t)x19 * x50) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + ((uint64_t)x26 * x43)))))))));
- { uint64_t x58 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((0x2 * ((uint64_t)x11 * x35)) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + ((uint64_t)x17 * x29))))))) + ((0x3d1 * (((uint64_t)x19 * x50) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + ((uint64_t)x26 * x43))))))) + (0x1000 * ((0x2 * ((uint64_t)x17 * x50)) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + ((0x2 * ((uint64_t)x23 * x47)) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (0x2 * ((uint64_t)x26 * x41)))))))))));
- { uint64_t x59 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + (((uint64_t)x13 * x31) + ((uint64_t)x15 * x29)))))) + ((0x3d1 * ((0x2 * ((uint64_t)x17 * x50)) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + ((0x2 * ((uint64_t)x23 * x47)) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (0x2 * ((uint64_t)x26 * x41))))))))) + (0x1000 * ((0x2 * ((uint64_t)x15 * x50)) + ((0x2 * ((uint64_t)x17 * x51)) + (((uint64_t)x19 * x49) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + (((uint64_t)x25 * x43) + ((0x2 * ((uint64_t)x27 * x41)) + (0x2 * ((uint64_t)x26 * x39))))))))))));
- { uint64_t x60 = ((((uint64_t)x5 * x37) + ((0x2 * ((uint64_t)x7 * x35)) + ((0x2 * ((uint64_t)x9 * x33)) + ((0x2 * ((uint64_t)x11 * x31)) + ((uint64_t)x13 * x29))))) + ((0x3d1 * ((0x2 * ((uint64_t)x15 * x50)) + ((0x2 * ((uint64_t)x17 * x51)) + (((uint64_t)x19 * x49) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + (((uint64_t)x25 * x43) + ((0x2 * ((uint64_t)x27 * x41)) + (0x2 * ((uint64_t)x26 * x39)))))))))) + (0x2000 * (((uint64_t)x13 * x50) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + ((uint64_t)x26 * x37))))))))))));
- { uint64_t x61 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + ((uint64_t)x11 * x29)))) + ((0x3d1 * (((uint64_t)x13 * x50) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + ((uint64_t)x26 * x37)))))))))) + (0x1000 * ((0x2 * ((uint64_t)x11 * x50)) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + ((0x2 * ((uint64_t)x17 * x47)) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + (((uint64_t)x25 * x39) + (((uint64_t)x27 * x37) + (0x2 * ((uint64_t)x26 * x35))))))))))))));
- { uint64_t x62 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + ((uint64_t)x9 * x29))) + ((0x3d1 * ((0x2 * ((uint64_t)x11 * x50)) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + ((0x2 * ((uint64_t)x17 * x47)) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + (((uint64_t)x25 * x39) + (((uint64_t)x27 * x37) + (0x2 * ((uint64_t)x26 * x35)))))))))))) + (0x1000 * ((0x2 * ((uint64_t)x9 * x50)) + ((0x2 * ((uint64_t)x11 * x51)) + (((uint64_t)x13 * x49) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + (((uint64_t)x25 * x37) + ((0x2 * ((uint64_t)x27 * x35)) + (0x2 * ((uint64_t)x26 * x33)))))))))))))));
- { uint64_t x63 = ((((uint64_t)x5 * x31) + ((uint64_t)x7 * x29)) + ((0x3d1 * ((0x2 * ((uint64_t)x9 * x50)) + ((0x2 * ((uint64_t)x11 * x51)) + (((uint64_t)x13 * x49) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + (((uint64_t)x25 * x37) + ((0x2 * ((uint64_t)x27 * x35)) + (0x2 * ((uint64_t)x26 * x33))))))))))))) + (0x1000 * ((0x2 * ((uint64_t)x7 * x50)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((0x2 * ((uint64_t)x25 * x35)) + ((0x2 * ((uint64_t)x27 * x33)) + (0x2 * ((uint64_t)x26 * x31))))))))))))))));
- { uint64_t x64 = (((uint64_t)x5 * x29) + (0x3d1 * ((0x2 * ((uint64_t)x7 * x50)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((0x2 * ((uint64_t)x25 * x35)) + ((0x2 * ((uint64_t)x27 * x33)) + (0x2 * ((uint64_t)x26 * x31)))))))))))))));
- { uint64_t x65 = (x64 >> 0x14);
- { uint32_t x66 = ((uint32_t)x64 & 0xfffff);
- { uint64_t x67 = (x52 >> 0x13);
- { uint32_t x68 = ((uint32_t)x52 & 0x7ffff);
- { uint64_t x69 = ((0x80000 * x67) + x68);
- { uint64_t x70 = (x69 >> 0x13);
- { uint32_t x71 = ((uint32_t)x69 & 0x7ffff);
- { uint64_t x72 = ((x65 + x63) + (0x1000 * x70));
- { uint64_t x73 = (x72 >> 0x14);
- { uint32_t x74 = ((uint32_t)x72 & 0xfffff);
- { uint64_t x75 = (x66 + (0x3d1 * x70));
- { uint32_t x76 = (uint32_t) (x75 >> 0x14);
- { uint32_t x77 = ((uint32_t)x75 & 0xfffff);
- { uint64_t x78 = (x73 + x62);
- { uint64_t x79 = (x78 >> 0x14);
- { uint32_t x80 = ((uint32_t)x78 & 0xfffff);
- { uint64_t x81 = (x79 + x61);
- { uint64_t x82 = (x81 >> 0x13);
- { uint32_t x83 = ((uint32_t)x81 & 0x7ffff);
- { uint64_t x84 = (x82 + x60);
- { uint64_t x85 = (x84 >> 0x14);
- { uint32_t x86 = ((uint32_t)x84 & 0xfffff);
- { uint64_t x87 = (x85 + x59);
- { uint64_t x88 = (x87 >> 0x14);
- { uint32_t x89 = ((uint32_t)x87 & 0xfffff);
- { uint64_t x90 = (x88 + x58);
- { uint64_t x91 = (x90 >> 0x13);
- { uint32_t x92 = ((uint32_t)x90 & 0x7ffff);
- { uint64_t x93 = (x91 + x57);
- { uint64_t x94 = (x93 >> 0x14);
- { uint32_t x95 = ((uint32_t)x93 & 0xfffff);
- { uint64_t x96 = (x94 + x56);
- { uint64_t x97 = (x96 >> 0x14);
- { uint32_t x98 = ((uint32_t)x96 & 0xfffff);
- { uint64_t x99 = (x97 + x55);
- { uint64_t x100 = (x99 >> 0x13);
- { uint32_t x101 = ((uint32_t)x99 & 0x7ffff);
- { uint64_t x102 = (x100 + x54);
- { uint64_t x103 = (x102 >> 0x14);
- { uint32_t x104 = ((uint32_t)x102 & 0xfffff);
- { uint64_t x105 = (x103 + x53);
- { uint64_t x106 = (x105 >> 0x14);
- { uint32_t x107 = ((uint32_t)x105 & 0xfffff);
- { uint64_t x108 = (x106 + x71);
- { uint32_t x109 = (uint32_t) (x108 >> 0x13);
- { uint32_t x110 = ((uint32_t)x108 & 0x7ffff);
- { uint64_t x111 = (((uint64_t)0x80000 * x109) + x110);
- { uint32_t x112 = (uint32_t) (x111 >> 0x13);
- { uint32_t x113 = ((uint32_t)x111 & 0x7ffff);
- { uint32_t x114 = ((x76 + x74) + (0x1000 * x112));
- { uint32_t x115 = (x114 >> 0x14);
- { uint32_t x116 = (x114 & 0xfffff);
- { uint32_t x117 = (x77 + (0x3d1 * x112));
- { uint32_t x118 = (x117 >> 0x14);
- { uint32_t x119 = (x117 & 0xfffff);
- out[0] = x119;
- out[1] = (x118 + x116);
- out[2] = (x115 + x80);
- out[3] = x83;
- out[4] = x86;
- out[5] = x89;
- out[6] = x92;
- out[7] = x95;
- out[8] = x98;
- out[9] = x101;
- out[10] = x104;
- out[11] = x107;
- out[12] = x113;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e256m2e32m977_13limbs/femul.v b/src/Specific/solinas32_2e256m2e32m977_13limbs/femul.v
deleted file mode 100644
index b7d06daf3..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_13limbs.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_2e256m2e32m977_13limbs/femulDisplay.log b/src/Specific/solinas32_2e256m2e32m977_13limbs/femulDisplay.log
deleted file mode 100644
index 8addae88a..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/femulDisplay.log
+++ /dev/null
@@ -1,75 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x26, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29))%core,
- uint64_t x52 = ((((uint64_t)x5 * x50) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + ((0x2 * ((uint64_t)x11 * x47)) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + ((0x2 * ((uint64_t)x23 * x35)) + (((uint64_t)x25 * x33) + (((uint64_t)x27 * x31) + ((uint64_t)x26 * x29))))))))))))) + (0x1000 * (0x2 * ((uint64_t)x26 * x50))));
- uint64_t x53 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + (((uint64_t)x13 * x43) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + (((uint64_t)x19 * x37) + ((0x2 * ((uint64_t)x21 * x35)) + ((0x2 * ((uint64_t)x23 * x33)) + (((uint64_t)x25 * x31) + ((uint64_t)x27 * x29)))))))))))) + ((0x3d1 * (0x2 * ((uint64_t)x26 * x50))) + (0x1000 * ((0x2 * ((uint64_t)x27 * x50)) + (0x2 * ((uint64_t)x26 * x51))))));
- uint64_t x54 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + ((0x2 * ((uint64_t)x11 * x43)) + ((0x2 * ((uint64_t)x13 * x41)) + ((0x2 * ((uint64_t)x15 * x39)) + ((0x2 * ((uint64_t)x17 * x37)) + ((0x2 * ((uint64_t)x19 * x35)) + ((0x2 * ((uint64_t)x21 * x33)) + ((0x2 * ((uint64_t)x23 * x31)) + ((uint64_t)x25 * x29))))))))))) + ((0x3d1 * ((0x2 * ((uint64_t)x27 * x50)) + (0x2 * ((uint64_t)x26 * x51)))) + (0x2000 * (((uint64_t)x25 * x50) + (((uint64_t)x27 * x51) + ((uint64_t)x26 * x49))))));
- uint64_t x55 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + ((0x2 * ((uint64_t)x11 * x41)) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((0x2 * ((uint64_t)x17 * x35)) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((uint64_t)x23 * x29)))))))))) + ((0x3d1 * (((uint64_t)x25 * x50) + (((uint64_t)x27 * x51) + ((uint64_t)x26 * x49)))) + (0x1000 * ((0x2 * ((uint64_t)x23 * x50)) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (0x2 * ((uint64_t)x26 * x47))))))));
- uint64_t x56 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + (((uint64_t)x13 * x37) + ((0x2 * ((uint64_t)x15 * x35)) + ((0x2 * ((uint64_t)x17 * x33)) + (((uint64_t)x19 * x31) + ((uint64_t)x21 * x29))))))))) + ((0x3d1 * ((0x2 * ((uint64_t)x23 * x50)) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (0x2 * ((uint64_t)x26 * x47)))))) + (0x1000 * ((0x2 * ((uint64_t)x21 * x50)) + ((0x2 * ((uint64_t)x23 * x51)) + (((uint64_t)x25 * x49) + ((0x2 * ((uint64_t)x27 * x47)) + (0x2 * ((uint64_t)x26 * x45)))))))));
- uint64_t x57 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + ((0x2 * ((uint64_t)x15 * x33)) + ((0x2 * ((uint64_t)x17 * x31)) + ((uint64_t)x19 * x29)))))))) + ((0x3d1 * ((0x2 * ((uint64_t)x21 * x50)) + ((0x2 * ((uint64_t)x23 * x51)) + (((uint64_t)x25 * x49) + ((0x2 * ((uint64_t)x27 * x47)) + (0x2 * ((uint64_t)x26 * x45))))))) + (0x2000 * (((uint64_t)x19 * x50) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + ((uint64_t)x26 * x43)))))))));
- uint64_t x58 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((0x2 * ((uint64_t)x11 * x35)) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + ((uint64_t)x17 * x29))))))) + ((0x3d1 * (((uint64_t)x19 * x50) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + ((uint64_t)x26 * x43))))))) + (0x1000 * ((0x2 * ((uint64_t)x17 * x50)) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + ((0x2 * ((uint64_t)x23 * x47)) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (0x2 * ((uint64_t)x26 * x41)))))))))));
- uint64_t x59 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + (((uint64_t)x13 * x31) + ((uint64_t)x15 * x29)))))) + ((0x3d1 * ((0x2 * ((uint64_t)x17 * x50)) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + ((0x2 * ((uint64_t)x23 * x47)) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (0x2 * ((uint64_t)x26 * x41))))))))) + (0x1000 * ((0x2 * ((uint64_t)x15 * x50)) + ((0x2 * ((uint64_t)x17 * x51)) + (((uint64_t)x19 * x49) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + (((uint64_t)x25 * x43) + ((0x2 * ((uint64_t)x27 * x41)) + (0x2 * ((uint64_t)x26 * x39))))))))))));
- uint64_t x60 = ((((uint64_t)x5 * x37) + ((0x2 * ((uint64_t)x7 * x35)) + ((0x2 * ((uint64_t)x9 * x33)) + ((0x2 * ((uint64_t)x11 * x31)) + ((uint64_t)x13 * x29))))) + ((0x3d1 * ((0x2 * ((uint64_t)x15 * x50)) + ((0x2 * ((uint64_t)x17 * x51)) + (((uint64_t)x19 * x49) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + (((uint64_t)x25 * x43) + ((0x2 * ((uint64_t)x27 * x41)) + (0x2 * ((uint64_t)x26 * x39)))))))))) + (0x2000 * (((uint64_t)x13 * x50) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + ((uint64_t)x26 * x37))))))))))));
- uint64_t x61 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + ((uint64_t)x11 * x29)))) + ((0x3d1 * (((uint64_t)x13 * x50) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + ((uint64_t)x26 * x37)))))))))) + (0x1000 * ((0x2 * ((uint64_t)x11 * x50)) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + ((0x2 * ((uint64_t)x17 * x47)) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + (((uint64_t)x25 * x39) + (((uint64_t)x27 * x37) + (0x2 * ((uint64_t)x26 * x35))))))))))))));
- uint64_t x62 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + ((uint64_t)x9 * x29))) + ((0x3d1 * ((0x2 * ((uint64_t)x11 * x50)) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + ((0x2 * ((uint64_t)x17 * x47)) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + (((uint64_t)x25 * x39) + (((uint64_t)x27 * x37) + (0x2 * ((uint64_t)x26 * x35)))))))))))) + (0x1000 * ((0x2 * ((uint64_t)x9 * x50)) + ((0x2 * ((uint64_t)x11 * x51)) + (((uint64_t)x13 * x49) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + (((uint64_t)x25 * x37) + ((0x2 * ((uint64_t)x27 * x35)) + (0x2 * ((uint64_t)x26 * x33)))))))))))))));
- uint64_t x63 = ((((uint64_t)x5 * x31) + ((uint64_t)x7 * x29)) + ((0x3d1 * ((0x2 * ((uint64_t)x9 * x50)) + ((0x2 * ((uint64_t)x11 * x51)) + (((uint64_t)x13 * x49) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + (((uint64_t)x25 * x37) + ((0x2 * ((uint64_t)x27 * x35)) + (0x2 * ((uint64_t)x26 * x33))))))))))))) + (0x1000 * ((0x2 * ((uint64_t)x7 * x50)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((0x2 * ((uint64_t)x25 * x35)) + ((0x2 * ((uint64_t)x27 * x33)) + (0x2 * ((uint64_t)x26 * x31))))))))))))))));
- uint64_t x64 = (((uint64_t)x5 * x29) + (0x3d1 * ((0x2 * ((uint64_t)x7 * x50)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((0x2 * ((uint64_t)x25 * x35)) + ((0x2 * ((uint64_t)x27 * x33)) + (0x2 * ((uint64_t)x26 * x31)))))))))))))));
- uint64_t x65 = (x64 >> 0x14);
- uint32_t x66 = ((uint32_t)x64 & 0xfffff);
- uint64_t x67 = (x52 >> 0x13);
- uint32_t x68 = ((uint32_t)x52 & 0x7ffff);
- uint64_t x69 = ((0x80000 * x67) + x68);
- uint64_t x70 = (x69 >> 0x13);
- uint32_t x71 = ((uint32_t)x69 & 0x7ffff);
- uint64_t x72 = ((x65 + x63) + (0x1000 * x70));
- uint64_t x73 = (x72 >> 0x14);
- uint32_t x74 = ((uint32_t)x72 & 0xfffff);
- uint64_t x75 = (x66 + (0x3d1 * x70));
- uint32_t x76 = (uint32_t) (x75 >> 0x14);
- uint32_t x77 = ((uint32_t)x75 & 0xfffff);
- uint64_t x78 = (x73 + x62);
- uint64_t x79 = (x78 >> 0x14);
- uint32_t x80 = ((uint32_t)x78 & 0xfffff);
- uint64_t x81 = (x79 + x61);
- uint64_t x82 = (x81 >> 0x13);
- uint32_t x83 = ((uint32_t)x81 & 0x7ffff);
- uint64_t x84 = (x82 + x60);
- uint64_t x85 = (x84 >> 0x14);
- uint32_t x86 = ((uint32_t)x84 & 0xfffff);
- uint64_t x87 = (x85 + x59);
- uint64_t x88 = (x87 >> 0x14);
- uint32_t x89 = ((uint32_t)x87 & 0xfffff);
- uint64_t x90 = (x88 + x58);
- uint64_t x91 = (x90 >> 0x13);
- uint32_t x92 = ((uint32_t)x90 & 0x7ffff);
- uint64_t x93 = (x91 + x57);
- uint64_t x94 = (x93 >> 0x14);
- uint32_t x95 = ((uint32_t)x93 & 0xfffff);
- uint64_t x96 = (x94 + x56);
- uint64_t x97 = (x96 >> 0x14);
- uint32_t x98 = ((uint32_t)x96 & 0xfffff);
- uint64_t x99 = (x97 + x55);
- uint64_t x100 = (x99 >> 0x13);
- uint32_t x101 = ((uint32_t)x99 & 0x7ffff);
- uint64_t x102 = (x100 + x54);
- uint64_t x103 = (x102 >> 0x14);
- uint32_t x104 = ((uint32_t)x102 & 0xfffff);
- uint64_t x105 = (x103 + x53);
- uint64_t x106 = (x105 >> 0x14);
- uint32_t x107 = ((uint32_t)x105 & 0xfffff);
- uint64_t x108 = (x106 + x71);
- uint32_t x109 = (uint32_t) (x108 >> 0x13);
- uint32_t x110 = ((uint32_t)x108 & 0x7ffff);
- uint64_t x111 = (((uint64_t)0x80000 * x109) + x110);
- uint32_t x112 = (uint32_t) (x111 >> 0x13);
- uint32_t x113 = ((uint32_t)x111 & 0x7ffff);
- uint32_t x114 = ((x76 + x74) + (0x1000 * x112));
- uint32_t x115 = (x114 >> 0x14);
- uint32_t x116 = (x114 & 0xfffff);
- uint32_t x117 = (x77 + (0x3d1 * x112));
- uint32_t x118 = (x117 >> 0x14);
- uint32_t x119 = (x117 & 0xfffff);
- return (Return x113, Return x107, Return x104, Return x101, Return x98, Return x95, Return x92, Return x89, Return x86, Return x83, (x115 + x80), (x118 + x116), Return x119))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e256m2e32m977_13limbs/femulDisplay.v b/src/Specific/solinas32_2e256m2e32m977_13limbs/femulDisplay.v
deleted file mode 100644
index b041f5efe..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_13limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e256m2e32m977_13limbs/fesquare.c b/src/Specific/solinas32_2e256m2e32m977_13limbs/fesquare.c
deleted file mode 100644
index 3952acd13..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/fesquare.c
+++ /dev/null
@@ -1,97 +0,0 @@
-static void fesquare(uint32_t out[13], const uint32_t in1[13]) {
- { const uint32_t x23 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x25 = ((((uint64_t)x2 * x23) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x23 * x2))))))))))))) + (0x1000 * (0x2 * ((uint64_t)x23 * x23))));
- { uint64_t x26 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + ((0x3d1 * (0x2 * ((uint64_t)x23 * x23))) + (0x1000 * ((0x2 * ((uint64_t)x24 * x23)) + (0x2 * ((uint64_t)x23 * x24))))));
- { uint64_t x27 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + ((0x3d1 * ((0x2 * ((uint64_t)x24 * x23)) + (0x2 * ((uint64_t)x23 * x24)))) + (0x2000 * (((uint64_t)x22 * x23) + (((uint64_t)x24 * x24) + ((uint64_t)x23 * x22))))));
- { uint64_t x28 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + ((0x3d1 * (((uint64_t)x22 * x23) + (((uint64_t)x24 * x24) + ((uint64_t)x23 * x22)))) + (0x1000 * ((0x2 * ((uint64_t)x20 * x23)) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (0x2 * ((uint64_t)x23 * x20))))))));
- { uint64_t x29 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + ((0x3d1 * ((0x2 * ((uint64_t)x20 * x23)) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (0x2 * ((uint64_t)x23 * x20)))))) + (0x1000 * ((0x2 * ((uint64_t)x18 * x23)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + (0x2 * ((uint64_t)x23 * x18)))))))));
- { uint64_t x30 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + ((0x3d1 * ((0x2 * ((uint64_t)x18 * x23)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + (0x2 * ((uint64_t)x23 * x18))))))) + (0x2000 * (((uint64_t)x16 * x23) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((uint64_t)x23 * x16)))))))));
- { uint64_t x31 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + ((0x3d1 * (((uint64_t)x16 * x23) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((uint64_t)x23 * x16))))))) + (0x1000 * ((0x2 * ((uint64_t)x14 * x23)) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (0x2 * ((uint64_t)x23 * x14)))))))))));
- { uint64_t x32 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + ((0x3d1 * ((0x2 * ((uint64_t)x14 * x23)) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (0x2 * ((uint64_t)x23 * x14))))))))) + (0x1000 * ((0x2 * ((uint64_t)x12 * x23)) + ((0x2 * ((uint64_t)x14 * x24)) + (((uint64_t)x16 * x22) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (((uint64_t)x22 * x16) + ((0x2 * ((uint64_t)x24 * x14)) + (0x2 * ((uint64_t)x23 * x12))))))))))));
- { uint64_t x33 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + ((0x3d1 * ((0x2 * ((uint64_t)x12 * x23)) + ((0x2 * ((uint64_t)x14 * x24)) + (((uint64_t)x16 * x22) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (((uint64_t)x22 * x16) + ((0x2 * ((uint64_t)x24 * x14)) + (0x2 * ((uint64_t)x23 * x12)))))))))) + (0x2000 * (((uint64_t)x10 * x23) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + ((uint64_t)x23 * x10))))))))))));
- { uint64_t x34 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + ((0x3d1 * (((uint64_t)x10 * x23) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + ((uint64_t)x23 * x10)))))))))) + (0x1000 * ((0x2 * ((uint64_t)x8 * x23)) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (0x2 * ((uint64_t)x23 * x8))))))))))))));
- { uint64_t x35 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + ((0x3d1 * ((0x2 * ((uint64_t)x8 * x23)) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (0x2 * ((uint64_t)x23 * x8)))))))))))) + (0x1000 * ((0x2 * ((uint64_t)x6 * x23)) + ((0x2 * ((uint64_t)x8 * x24)) + (((uint64_t)x10 * x22) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + (((uint64_t)x22 * x10) + ((0x2 * ((uint64_t)x24 * x8)) + (0x2 * ((uint64_t)x23 * x6)))))))))))))));
- { uint64_t x36 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + ((0x3d1 * ((0x2 * ((uint64_t)x6 * x23)) + ((0x2 * ((uint64_t)x8 * x24)) + (((uint64_t)x10 * x22) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + (((uint64_t)x22 * x10) + ((0x2 * ((uint64_t)x24 * x8)) + (0x2 * ((uint64_t)x23 * x6))))))))))))) + (0x1000 * ((0x2 * ((uint64_t)x4 * x23)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + (0x2 * ((uint64_t)x23 * x4))))))))))))))));
- { uint64_t x37 = (((uint64_t)x2 * x2) + (0x3d1 * ((0x2 * ((uint64_t)x4 * x23)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + (0x2 * ((uint64_t)x23 * x4)))))))))))))));
- { uint64_t x38 = (x37 >> 0x14);
- { uint32_t x39 = ((uint32_t)x37 & 0xfffff);
- { uint64_t x40 = (x25 >> 0x13);
- { uint32_t x41 = ((uint32_t)x25 & 0x7ffff);
- { uint64_t x42 = ((0x80000 * x40) + x41);
- { uint64_t x43 = (x42 >> 0x13);
- { uint32_t x44 = ((uint32_t)x42 & 0x7ffff);
- { uint64_t x45 = ((x38 + x36) + (0x1000 * x43));
- { uint64_t x46 = (x45 >> 0x14);
- { uint32_t x47 = ((uint32_t)x45 & 0xfffff);
- { uint64_t x48 = (x39 + (0x3d1 * x43));
- { uint32_t x49 = (uint32_t) (x48 >> 0x14);
- { uint32_t x50 = ((uint32_t)x48 & 0xfffff);
- { uint64_t x51 = (x46 + x35);
- { uint64_t x52 = (x51 >> 0x14);
- { uint32_t x53 = ((uint32_t)x51 & 0xfffff);
- { uint64_t x54 = (x52 + x34);
- { uint64_t x55 = (x54 >> 0x13);
- { uint32_t x56 = ((uint32_t)x54 & 0x7ffff);
- { uint64_t x57 = (x55 + x33);
- { uint64_t x58 = (x57 >> 0x14);
- { uint32_t x59 = ((uint32_t)x57 & 0xfffff);
- { uint64_t x60 = (x58 + x32);
- { uint64_t x61 = (x60 >> 0x14);
- { uint32_t x62 = ((uint32_t)x60 & 0xfffff);
- { uint64_t x63 = (x61 + x31);
- { uint64_t x64 = (x63 >> 0x13);
- { uint32_t x65 = ((uint32_t)x63 & 0x7ffff);
- { uint64_t x66 = (x64 + x30);
- { uint64_t x67 = (x66 >> 0x14);
- { uint32_t x68 = ((uint32_t)x66 & 0xfffff);
- { uint64_t x69 = (x67 + x29);
- { uint64_t x70 = (x69 >> 0x14);
- { uint32_t x71 = ((uint32_t)x69 & 0xfffff);
- { uint64_t x72 = (x70 + x28);
- { uint64_t x73 = (x72 >> 0x13);
- { uint32_t x74 = ((uint32_t)x72 & 0x7ffff);
- { uint64_t x75 = (x73 + x27);
- { uint64_t x76 = (x75 >> 0x14);
- { uint32_t x77 = ((uint32_t)x75 & 0xfffff);
- { uint64_t x78 = (x76 + x26);
- { uint64_t x79 = (x78 >> 0x14);
- { uint32_t x80 = ((uint32_t)x78 & 0xfffff);
- { uint64_t x81 = (x79 + x44);
- { uint32_t x82 = (uint32_t) (x81 >> 0x13);
- { uint32_t x83 = ((uint32_t)x81 & 0x7ffff);
- { uint64_t x84 = (((uint64_t)0x80000 * x82) + x83);
- { uint32_t x85 = (uint32_t) (x84 >> 0x13);
- { uint32_t x86 = ((uint32_t)x84 & 0x7ffff);
- { uint32_t x87 = ((x49 + x47) + (0x1000 * x85));
- { uint32_t x88 = (x87 >> 0x14);
- { uint32_t x89 = (x87 & 0xfffff);
- { uint32_t x90 = (x50 + (0x3d1 * x85));
- { uint32_t x91 = (x90 >> 0x14);
- { uint32_t x92 = (x90 & 0xfffff);
- out[0] = x92;
- out[1] = (x91 + x89);
- out[2] = (x88 + x53);
- out[3] = x56;
- out[4] = x59;
- out[5] = x62;
- out[6] = x65;
- out[7] = x68;
- out[8] = x71;
- out[9] = x74;
- out[10] = x77;
- out[11] = x80;
- out[12] = x86;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e256m2e32m977_13limbs/fesquare.v b/src/Specific/solinas32_2e256m2e32m977_13limbs/fesquare.v
deleted file mode 100644
index 6e55ba3c3..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_13limbs.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_2e256m2e32m977_13limbs/fesquareDisplay.log b/src/Specific/solinas32_2e256m2e32m977_13limbs/fesquareDisplay.log
deleted file mode 100644
index ccf2c91c7..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,75 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x23, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x25 = ((((uint64_t)x2 * x23) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x23 * x2))))))))))))) + (0x1000 * (0x2 * ((uint64_t)x23 * x23))));
- uint64_t x26 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + ((0x3d1 * (0x2 * ((uint64_t)x23 * x23))) + (0x1000 * ((0x2 * ((uint64_t)x24 * x23)) + (0x2 * ((uint64_t)x23 * x24))))));
- uint64_t x27 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + ((0x3d1 * ((0x2 * ((uint64_t)x24 * x23)) + (0x2 * ((uint64_t)x23 * x24)))) + (0x2000 * (((uint64_t)x22 * x23) + (((uint64_t)x24 * x24) + ((uint64_t)x23 * x22))))));
- uint64_t x28 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + ((0x3d1 * (((uint64_t)x22 * x23) + (((uint64_t)x24 * x24) + ((uint64_t)x23 * x22)))) + (0x1000 * ((0x2 * ((uint64_t)x20 * x23)) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (0x2 * ((uint64_t)x23 * x20))))))));
- uint64_t x29 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + ((0x3d1 * ((0x2 * ((uint64_t)x20 * x23)) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (0x2 * ((uint64_t)x23 * x20)))))) + (0x1000 * ((0x2 * ((uint64_t)x18 * x23)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + (0x2 * ((uint64_t)x23 * x18)))))))));
- uint64_t x30 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + ((0x3d1 * ((0x2 * ((uint64_t)x18 * x23)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + (0x2 * ((uint64_t)x23 * x18))))))) + (0x2000 * (((uint64_t)x16 * x23) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((uint64_t)x23 * x16)))))))));
- uint64_t x31 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + ((0x3d1 * (((uint64_t)x16 * x23) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((uint64_t)x23 * x16))))))) + (0x1000 * ((0x2 * ((uint64_t)x14 * x23)) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (0x2 * ((uint64_t)x23 * x14)))))))))));
- uint64_t x32 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + ((0x3d1 * ((0x2 * ((uint64_t)x14 * x23)) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (0x2 * ((uint64_t)x23 * x14))))))))) + (0x1000 * ((0x2 * ((uint64_t)x12 * x23)) + ((0x2 * ((uint64_t)x14 * x24)) + (((uint64_t)x16 * x22) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (((uint64_t)x22 * x16) + ((0x2 * ((uint64_t)x24 * x14)) + (0x2 * ((uint64_t)x23 * x12))))))))))));
- uint64_t x33 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + ((0x3d1 * ((0x2 * ((uint64_t)x12 * x23)) + ((0x2 * ((uint64_t)x14 * x24)) + (((uint64_t)x16 * x22) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (((uint64_t)x22 * x16) + ((0x2 * ((uint64_t)x24 * x14)) + (0x2 * ((uint64_t)x23 * x12)))))))))) + (0x2000 * (((uint64_t)x10 * x23) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + ((uint64_t)x23 * x10))))))))))));
- uint64_t x34 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + ((0x3d1 * (((uint64_t)x10 * x23) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + ((uint64_t)x23 * x10)))))))))) + (0x1000 * ((0x2 * ((uint64_t)x8 * x23)) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (0x2 * ((uint64_t)x23 * x8))))))))))))));
- uint64_t x35 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + ((0x3d1 * ((0x2 * ((uint64_t)x8 * x23)) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (0x2 * ((uint64_t)x23 * x8)))))))))))) + (0x1000 * ((0x2 * ((uint64_t)x6 * x23)) + ((0x2 * ((uint64_t)x8 * x24)) + (((uint64_t)x10 * x22) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + (((uint64_t)x22 * x10) + ((0x2 * ((uint64_t)x24 * x8)) + (0x2 * ((uint64_t)x23 * x6)))))))))))))));
- uint64_t x36 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + ((0x3d1 * ((0x2 * ((uint64_t)x6 * x23)) + ((0x2 * ((uint64_t)x8 * x24)) + (((uint64_t)x10 * x22) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + (((uint64_t)x22 * x10) + ((0x2 * ((uint64_t)x24 * x8)) + (0x2 * ((uint64_t)x23 * x6))))))))))))) + (0x1000 * ((0x2 * ((uint64_t)x4 * x23)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + (0x2 * ((uint64_t)x23 * x4))))))))))))))));
- uint64_t x37 = (((uint64_t)x2 * x2) + (0x3d1 * ((0x2 * ((uint64_t)x4 * x23)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + (0x2 * ((uint64_t)x23 * x4)))))))))))))));
- uint64_t x38 = (x37 >> 0x14);
- uint32_t x39 = ((uint32_t)x37 & 0xfffff);
- uint64_t x40 = (x25 >> 0x13);
- uint32_t x41 = ((uint32_t)x25 & 0x7ffff);
- uint64_t x42 = ((0x80000 * x40) + x41);
- uint64_t x43 = (x42 >> 0x13);
- uint32_t x44 = ((uint32_t)x42 & 0x7ffff);
- uint64_t x45 = ((x38 + x36) + (0x1000 * x43));
- uint64_t x46 = (x45 >> 0x14);
- uint32_t x47 = ((uint32_t)x45 & 0xfffff);
- uint64_t x48 = (x39 + (0x3d1 * x43));
- uint32_t x49 = (uint32_t) (x48 >> 0x14);
- uint32_t x50 = ((uint32_t)x48 & 0xfffff);
- uint64_t x51 = (x46 + x35);
- uint64_t x52 = (x51 >> 0x14);
- uint32_t x53 = ((uint32_t)x51 & 0xfffff);
- uint64_t x54 = (x52 + x34);
- uint64_t x55 = (x54 >> 0x13);
- uint32_t x56 = ((uint32_t)x54 & 0x7ffff);
- uint64_t x57 = (x55 + x33);
- uint64_t x58 = (x57 >> 0x14);
- uint32_t x59 = ((uint32_t)x57 & 0xfffff);
- uint64_t x60 = (x58 + x32);
- uint64_t x61 = (x60 >> 0x14);
- uint32_t x62 = ((uint32_t)x60 & 0xfffff);
- uint64_t x63 = (x61 + x31);
- uint64_t x64 = (x63 >> 0x13);
- uint32_t x65 = ((uint32_t)x63 & 0x7ffff);
- uint64_t x66 = (x64 + x30);
- uint64_t x67 = (x66 >> 0x14);
- uint32_t x68 = ((uint32_t)x66 & 0xfffff);
- uint64_t x69 = (x67 + x29);
- uint64_t x70 = (x69 >> 0x14);
- uint32_t x71 = ((uint32_t)x69 & 0xfffff);
- uint64_t x72 = (x70 + x28);
- uint64_t x73 = (x72 >> 0x13);
- uint32_t x74 = ((uint32_t)x72 & 0x7ffff);
- uint64_t x75 = (x73 + x27);
- uint64_t x76 = (x75 >> 0x14);
- uint32_t x77 = ((uint32_t)x75 & 0xfffff);
- uint64_t x78 = (x76 + x26);
- uint64_t x79 = (x78 >> 0x14);
- uint32_t x80 = ((uint32_t)x78 & 0xfffff);
- uint64_t x81 = (x79 + x44);
- uint32_t x82 = (uint32_t) (x81 >> 0x13);
- uint32_t x83 = ((uint32_t)x81 & 0x7ffff);
- uint64_t x84 = (((uint64_t)0x80000 * x82) + x83);
- uint32_t x85 = (uint32_t) (x84 >> 0x13);
- uint32_t x86 = ((uint32_t)x84 & 0x7ffff);
- uint32_t x87 = ((x49 + x47) + (0x1000 * x85));
- uint32_t x88 = (x87 >> 0x14);
- uint32_t x89 = (x87 & 0xfffff);
- uint32_t x90 = (x50 + (0x3d1 * x85));
- uint32_t x91 = (x90 >> 0x14);
- uint32_t x92 = (x90 & 0xfffff);
- return (Return x86, Return x80, Return x77, Return x74, Return x71, Return x68, Return x65, Return x62, Return x59, Return x56, (x88 + x53), (x91 + x89), Return x92))
-x
- : word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e256m2e32m977_13limbs/fesquareDisplay.v b/src/Specific/solinas32_2e256m2e32m977_13limbs/fesquareDisplay.v
deleted file mode 100644
index 3cf02f6c9..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_13limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e256m2e32m977_13limbs/fesub.c b/src/Specific/solinas32_2e256m2e32m977_13limbs/fesub.c
deleted file mode 100644
index f6db2564b..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/fesub.c
+++ /dev/null
@@ -1,42 +0,0 @@
-static void fesub(uint32_t out[13], const uint32_t in1[13], const uint32_t in2[13]) {
- { const uint32_t x26 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x50 = in2[12];
- { const uint32_t x51 = in2[11];
- { const uint32_t x49 = in2[10];
- { const uint32_t x47 = in2[9];
- { const uint32_t x45 = in2[8];
- { const uint32_t x43 = in2[7];
- { const uint32_t x41 = in2[6];
- { const uint32_t x39 = in2[5];
- { const uint32_t x37 = in2[4];
- { const uint32_t x35 = in2[3];
- { const uint32_t x33 = in2[2];
- { const uint32_t x31 = in2[1];
- { const uint32_t x29 = in2[0];
- out[0] = ((0x1ff85e + x5) - x29);
- out[1] = ((0x1fdffe + x7) - x31);
- out[2] = ((0x1ffffe + x9) - x33);
- out[3] = ((0xffffe + x11) - x35);
- out[4] = ((0x1ffffe + x13) - x37);
- out[5] = ((0x1ffffe + x15) - x39);
- out[6] = ((0xffffe + x17) - x41);
- out[7] = ((0x1ffffe + x19) - x43);
- out[8] = ((0x1ffffe + x21) - x45);
- out[9] = ((0xffffe + x23) - x47);
- out[10] = ((0x1ffffe + x25) - x49);
- out[11] = ((0x1ffffe + x27) - x51);
- out[12] = ((0xffffe + x26) - x50);
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e256m2e32m977_13limbs/fesub.v b/src/Specific/solinas32_2e256m2e32m977_13limbs/fesub.v
deleted file mode 100644
index 0a59de45b..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_13limbs.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_2e256m2e32m977_13limbs/fesubDisplay.log b/src/Specific/solinas32_2e256m2e32m977_13limbs/fesubDisplay.log
deleted file mode 100644
index f94c553fe..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x26, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29))%core,
- (((0xffffe + x26) - x50), ((0x1ffffe + x27) - x51), ((0x1ffffe + x25) - x49), ((0xffffe + x23) - x47), ((0x1ffffe + x21) - x45), ((0x1ffffe + x19) - x43), ((0xffffe + x17) - x41), ((0x1ffffe + x15) - x39), ((0x1ffffe + x13) - x37), ((0xffffe + x11) - x35), ((0x1ffffe + x9) - x33), ((0x1fdffe + x7) - x31), ((0x1ff85e + x5) - x29)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e256m2e32m977_13limbs/fesubDisplay.v b/src/Specific/solinas32_2e256m2e32m977_13limbs/fesubDisplay.v
deleted file mode 100644
index 2fa592842..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_13limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e256m2e32m977_13limbs/freeze.c b/src/Specific/solinas32_2e256m2e32m977_13limbs/freeze.c
deleted file mode 100644
index 3e0ce48d1..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/freeze.c
+++ /dev/null
@@ -1,69 +0,0 @@
-static void freeze(uint32_t out[13], const uint32_t in1[13]) {
- { const uint32_t x23 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffc2f);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x4, 0xfefff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x6, 0xfffff);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x8, 0x7ffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x10, 0xfffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x12, 0xfffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x14, 0x7ffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x16, 0xfffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x18, 0xfffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x20, 0x7ffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x22, 0xfffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x24, 0xfffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x23, 0x7ffff);
- { uint32_t x64 = cmovznz32(x63, 0x0, 0xffffffff);
- { uint32_t x65 = (x64 & 0xffc2f);
- { uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x26, Return x65);
- { uint32_t x69 = (x64 & 0xfefff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x29, Return x69);
- { uint32_t x73 = (x64 & 0xfffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x32, Return x73);
- { uint32_t x77 = (x64 & 0x7ffff);
- { uint32_t x79, uint8_t x80 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x35, Return x77);
- { uint32_t x81 = (x64 & 0xfffff);
- { uint32_t x83, uint8_t x84 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x38, Return x81);
- { uint32_t x85 = (x64 & 0xfffff);
- { uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x41, Return x85);
- { uint32_t x89 = (x64 & 0x7ffff);
- { uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x44, Return x89);
- { uint32_t x93 = (x64 & 0xfffff);
- { uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x47, Return x93);
- { uint32_t x97 = (x64 & 0xfffff);
- { uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x50, Return x97);
- { uint32_t x101 = (x64 & 0x7ffff);
- { uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x53, Return x101);
- { uint32_t x105 = (x64 & 0xfffff);
- { uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x56, Return x105);
- { uint32_t x109 = (x64 & 0xfffff);
- { uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x59, Return x109);
- { uint32_t x113 = (x64 & 0x7ffff);
- { uint32_t x115, uint8_t _ = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x62, Return x113);
- out[0] = x67;
- out[1] = x71;
- out[2] = x75;
- out[3] = x79;
- out[4] = x83;
- out[5] = x87;
- out[6] = x91;
- out[7] = x95;
- out[8] = x99;
- out[9] = x103;
- out[10] = x107;
- out[11] = x111;
- out[12] = x115;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e256m2e32m977_13limbs/freeze.v b/src/Specific/solinas32_2e256m2e32m977_13limbs/freeze.v
deleted file mode 100644
index 7fe163842..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_13limbs.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_2e256m2e32m977_13limbs/freezeDisplay.log b/src/Specific/solinas32_2e256m2e32m977_13limbs/freezeDisplay.log
deleted file mode 100644
index efc340afa..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/freezeDisplay.log
+++ /dev/null
@@ -1,47 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x23, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffc2f);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x4, 0xfefff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x6, 0xfffff);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x8, 0x7ffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x10, 0xfffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x12, 0xfffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x14, 0x7ffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x16, 0xfffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x18, 0xfffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x20, 0x7ffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x22, 0xfffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x24, 0xfffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x23, 0x7ffff);
- uint32_t x64 = cmovznz32(x63, 0x0, 0xffffffff);
- uint32_t x65 = (x64 & 0xffc2f);
- uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x26, Return x65);
- uint32_t x69 = (x64 & 0xfefff);
- uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x29, Return x69);
- uint32_t x73 = (x64 & 0xfffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x32, Return x73);
- uint32_t x77 = (x64 & 0x7ffff);
- uint32_t x79, uint8_t x80 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x35, Return x77);
- uint32_t x81 = (x64 & 0xfffff);
- uint32_t x83, uint8_t x84 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x38, Return x81);
- uint32_t x85 = (x64 & 0xfffff);
- uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x41, Return x85);
- uint32_t x89 = (x64 & 0x7ffff);
- uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x44, Return x89);
- uint32_t x93 = (x64 & 0xfffff);
- uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x47, Return x93);
- uint32_t x97 = (x64 & 0xfffff);
- uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x50, Return x97);
- uint32_t x101 = (x64 & 0x7ffff);
- uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x53, Return x101);
- uint32_t x105 = (x64 & 0xfffff);
- uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x56, Return x105);
- uint32_t x109 = (x64 & 0xfffff);
- uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x59, Return x109);
- uint32_t x113 = (x64 & 0x7ffff);
- uint32_t x115, uint8_t _ = Op (Syntax.AddWithGetCarry 19 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x62, Return x113);
- (Return x115, Return x111, Return x107, Return x103, Return x99, Return x95, Return x91, Return x87, Return x83, Return x79, Return x75, Return x71, Return x67))
-x
- : word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e256m2e32m977_13limbs/freezeDisplay.v b/src/Specific/solinas32_2e256m2e32m977_13limbs/freezeDisplay.v
deleted file mode 100644
index 9b6c0d3a4..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e256m2e32m977_13limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e256m2e32m977_13limbs/py_interpreter.sh b/src/Specific/solinas32_2e256m2e32m977_13limbs/py_interpreter.sh
deleted file mode 100755
index 91c1d1166..000000000
--- a/src/Specific/solinas32_2e256m2e32m977_13limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256 - 2**32 - 977' -Dmodulus_bytes='19 + 9/13' -Da24='121665'
diff --git a/src/Specific/solinas32_2e266m3_10limbs/CurveParameters.v b/src/Specific/solinas32_2e266m3_10limbs/CurveParameters.v
deleted file mode 100644
index cc7d2254b..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^266 - 3
-Base: 26.6
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 26 + 3/5;
- bitwidth := 32;
- s := 2^266;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 10); [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_2e266m3_10limbs/Synthesis.v b/src/Specific/solinas32_2e266m3_10limbs/Synthesis.v
deleted file mode 100644
index fb1960f8a..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e266m3_10limbs.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_2e266m3_10limbs/compiler.sh b/src/Specific/solinas32_2e266m3_10limbs/compiler.sh
deleted file mode 100755
index 14ec7cb4e..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,27,26,27,26,27,27,26,27,26}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='34' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<266) - 3' "$@"
diff --git a/src/Specific/solinas32_2e266m3_10limbs/compilerxx.sh b/src/Specific/solinas32_2e266m3_10limbs/compilerxx.sh
deleted file mode 100755
index 7bb603bb8..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{27,27,26,27,26,27,27,26,27,26}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='34' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<266) - 3' "$@"
diff --git a/src/Specific/solinas32_2e266m3_10limbs/feadd.c b/src/Specific/solinas32_2e266m3_10limbs/feadd.c
deleted file mode 100644
index 57dd4e1af..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/feadd.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void feadd(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- out[0] = (x5 + x23);
- out[1] = (x7 + x25);
- out[2] = (x9 + x27);
- out[3] = (x11 + x29);
- out[4] = (x13 + x31);
- out[5] = (x15 + x33);
- out[6] = (x17 + x35);
- out[7] = (x19 + x37);
- out[8] = (x21 + x39);
- out[9] = (x20 + x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e266m3_10limbs/feadd.v b/src/Specific/solinas32_2e266m3_10limbs/feadd.v
deleted file mode 100644
index 93b331c83..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e266m3_10limbs.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_2e266m3_10limbs/feaddDisplay.log b/src/Specific/solinas32_2e266m3_10limbs/feaddDisplay.log
deleted file mode 100644
index 8a4c51148..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e266m3_10limbs/feaddDisplay.v b/src/Specific/solinas32_2e266m3_10limbs/feaddDisplay.v
deleted file mode 100644
index c4caad7b5..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e266m3_10limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e266m3_10limbs/fecarry.v b/src/Specific/solinas32_2e266m3_10limbs/fecarry.v
deleted file mode 100644
index adab0a540..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e266m3_10limbs.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_2e266m3_10limbs/fecarryDisplay.v b/src/Specific/solinas32_2e266m3_10limbs/fecarryDisplay.v
deleted file mode 100644
index 1d00375aa..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e266m3_10limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e266m3_10limbs/femul.c b/src/Specific/solinas32_2e266m3_10limbs/femul.c
deleted file mode 100644
index b7f9d9745..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/femul.c
+++ /dev/null
@@ -1,78 +0,0 @@
-static void femul(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- { uint64_t x40 = (((uint64_t)x5 * x38) + (((uint64_t)x7 * x39) + ((0x2 * ((uint64_t)x9 * x37)) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((0x2 * ((uint64_t)x19 * x27)) + (((uint64_t)x21 * x25) + ((uint64_t)x20 * x23))))))))));
- { uint64_t x41 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + (((uint64_t)x11 * x33) + ((0x2 * ((uint64_t)x13 * x31)) + (((uint64_t)x15 * x29) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + ((uint64_t)x21 * x23))))))))) + (0x3 * (0x2 * ((uint64_t)x20 * x38))));
- { uint64_t x42 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + ((uint64_t)x19 * x23)))))))) + (0x3 * (((uint64_t)x21 * x38) + ((uint64_t)x20 * x39))));
- { uint64_t x43 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + ((0x2 * ((uint64_t)x9 * x31)) + (((uint64_t)x11 * x29) + ((0x2 * ((uint64_t)x13 * x27)) + (((uint64_t)x15 * x25) + ((uint64_t)x17 * x23))))))) + (0x3 * ((0x2 * ((uint64_t)x19 * x38)) + (((uint64_t)x21 * x39) + (0x2 * ((uint64_t)x20 * x37))))));
- { uint64_t x44 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((0x2 * ((uint64_t)x11 * x27)) + ((0x2 * ((uint64_t)x13 * x25)) + ((uint64_t)x15 * x23)))))) + (0x3 * ((0x2 * ((uint64_t)x17 * x38)) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + (0x2 * ((uint64_t)x20 * x35)))))));
- { uint64_t x45 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + ((0x2 * ((uint64_t)x9 * x27)) + (((uint64_t)x11 * x25) + ((uint64_t)x13 * x23))))) + (0x3 * (((uint64_t)x15 * x38) + (((uint64_t)x17 * x39) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + ((uint64_t)x20 * x33)))))));
- { uint64_t x46 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((uint64_t)x11 * x23)))) + (0x3 * ((0x2 * ((uint64_t)x13 * x38)) + (((uint64_t)x15 * x39) + ((0x2 * ((uint64_t)x17 * x37)) + ((0x2 * ((uint64_t)x19 * x35)) + (((uint64_t)x21 * x33) + (0x2 * ((uint64_t)x20 * x31)))))))));
- { uint64_t x47 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + ((uint64_t)x9 * x23))) + (0x3 * (((uint64_t)x11 * x38) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((uint64_t)x20 * x29)))))))));
- { uint64_t x48 = ((((uint64_t)x5 * x25) + ((uint64_t)x7 * x23)) + (0x3 * ((0x2 * ((uint64_t)x9 * x38)) + (((uint64_t)x11 * x39) + ((0x2 * ((uint64_t)x13 * x37)) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + ((0x2 * ((uint64_t)x19 * x31)) + (((uint64_t)x21 * x29) + (0x2 * ((uint64_t)x20 * x27)))))))))));
- { uint64_t x49 = (((uint64_t)x5 * x23) + (0x3 * ((0x2 * ((uint64_t)x7 * x38)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + (((uint64_t)x15 * x33) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((0x2 * ((uint64_t)x21 * x27)) + (0x2 * ((uint64_t)x20 * x25))))))))))));
- { uint64_t x50 = (x49 >> 0x1b);
- { uint32_t x51 = ((uint32_t)x49 & 0x7ffffff);
- { uint64_t x52 = (x50 + x48);
- { uint64_t x53 = (x52 >> 0x1b);
- { uint32_t x54 = ((uint32_t)x52 & 0x7ffffff);
- { uint64_t x55 = (x53 + x47);
- { uint64_t x56 = (x55 >> 0x1a);
- { uint32_t x57 = ((uint32_t)x55 & 0x3ffffff);
- { uint64_t x58 = (x56 + x46);
- { uint64_t x59 = (x58 >> 0x1b);
- { uint32_t x60 = ((uint32_t)x58 & 0x7ffffff);
- { uint64_t x61 = (x59 + x45);
- { uint64_t x62 = (x61 >> 0x1a);
- { uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- { uint64_t x64 = (x62 + x44);
- { uint64_t x65 = (x64 >> 0x1b);
- { uint32_t x66 = ((uint32_t)x64 & 0x7ffffff);
- { uint64_t x67 = (x65 + x43);
- { uint64_t x68 = (x67 >> 0x1b);
- { uint32_t x69 = ((uint32_t)x67 & 0x7ffffff);
- { uint64_t x70 = (x68 + x42);
- { uint64_t x71 = (x70 >> 0x1a);
- { uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- { uint64_t x73 = (x71 + x41);
- { uint64_t x74 = (x73 >> 0x1b);
- { uint32_t x75 = ((uint32_t)x73 & 0x7ffffff);
- { uint64_t x76 = (x74 + x40);
- { uint64_t x77 = (x76 >> 0x1a);
- { uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- { uint64_t x79 = (x51 + (0x3 * x77));
- { uint32_t x80 = (uint32_t) (x79 >> 0x1b);
- { uint32_t x81 = ((uint32_t)x79 & 0x7ffffff);
- { uint32_t x82 = (x80 + x54);
- { uint32_t x83 = (x82 >> 0x1b);
- { uint32_t x84 = (x82 & 0x7ffffff);
- out[0] = x81;
- out[1] = x84;
- out[2] = (x83 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e266m3_10limbs/femul.v b/src/Specific/solinas32_2e266m3_10limbs/femul.v
deleted file mode 100644
index 84dc145f0..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e266m3_10limbs.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_2e266m3_10limbs/femulDisplay.log b/src/Specific/solinas32_2e266m3_10limbs/femulDisplay.log
deleted file mode 100644
index 2048703e9..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/femulDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- uint64_t x40 = (((uint64_t)x5 * x38) + (((uint64_t)x7 * x39) + ((0x2 * ((uint64_t)x9 * x37)) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((0x2 * ((uint64_t)x19 * x27)) + (((uint64_t)x21 * x25) + ((uint64_t)x20 * x23))))))))));
- uint64_t x41 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + (((uint64_t)x11 * x33) + ((0x2 * ((uint64_t)x13 * x31)) + (((uint64_t)x15 * x29) + ((0x2 * ((uint64_t)x17 * x27)) + ((0x2 * ((uint64_t)x19 * x25)) + ((uint64_t)x21 * x23))))))))) + (0x3 * (0x2 * ((uint64_t)x20 * x38))));
- uint64_t x42 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + (((uint64_t)x17 * x25) + ((uint64_t)x19 * x23)))))))) + (0x3 * (((uint64_t)x21 * x38) + ((uint64_t)x20 * x39))));
- uint64_t x43 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + ((0x2 * ((uint64_t)x9 * x31)) + (((uint64_t)x11 * x29) + ((0x2 * ((uint64_t)x13 * x27)) + (((uint64_t)x15 * x25) + ((uint64_t)x17 * x23))))))) + (0x3 * ((0x2 * ((uint64_t)x19 * x38)) + (((uint64_t)x21 * x39) + (0x2 * ((uint64_t)x20 * x37))))));
- uint64_t x44 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((0x2 * ((uint64_t)x11 * x27)) + ((0x2 * ((uint64_t)x13 * x25)) + ((uint64_t)x15 * x23)))))) + (0x3 * ((0x2 * ((uint64_t)x17 * x38)) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + (0x2 * ((uint64_t)x20 * x35)))))));
- uint64_t x45 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + ((0x2 * ((uint64_t)x9 * x27)) + (((uint64_t)x11 * x25) + ((uint64_t)x13 * x23))))) + (0x3 * (((uint64_t)x15 * x38) + (((uint64_t)x17 * x39) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + ((uint64_t)x20 * x33)))))));
- uint64_t x46 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((0x2 * ((uint64_t)x9 * x25)) + ((uint64_t)x11 * x23)))) + (0x3 * ((0x2 * ((uint64_t)x13 * x38)) + (((uint64_t)x15 * x39) + ((0x2 * ((uint64_t)x17 * x37)) + ((0x2 * ((uint64_t)x19 * x35)) + (((uint64_t)x21 * x33) + (0x2 * ((uint64_t)x20 * x31)))))))));
- uint64_t x47 = ((((uint64_t)x5 * x27) + (((uint64_t)x7 * x25) + ((uint64_t)x9 * x23))) + (0x3 * (((uint64_t)x11 * x38) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((uint64_t)x20 * x29)))))))));
- uint64_t x48 = ((((uint64_t)x5 * x25) + ((uint64_t)x7 * x23)) + (0x3 * ((0x2 * ((uint64_t)x9 * x38)) + (((uint64_t)x11 * x39) + ((0x2 * ((uint64_t)x13 * x37)) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + ((0x2 * ((uint64_t)x19 * x31)) + (((uint64_t)x21 * x29) + (0x2 * ((uint64_t)x20 * x27)))))))))));
- uint64_t x49 = (((uint64_t)x5 * x23) + (0x3 * ((0x2 * ((uint64_t)x7 * x38)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + (((uint64_t)x15 * x33) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((0x2 * ((uint64_t)x21 * x27)) + (0x2 * ((uint64_t)x20 * x25))))))))))));
- uint64_t x50 = (x49 >> 0x1b);
- uint32_t x51 = ((uint32_t)x49 & 0x7ffffff);
- uint64_t x52 = (x50 + x48);
- uint64_t x53 = (x52 >> 0x1b);
- uint32_t x54 = ((uint32_t)x52 & 0x7ffffff);
- uint64_t x55 = (x53 + x47);
- uint64_t x56 = (x55 >> 0x1a);
- uint32_t x57 = ((uint32_t)x55 & 0x3ffffff);
- uint64_t x58 = (x56 + x46);
- uint64_t x59 = (x58 >> 0x1b);
- uint32_t x60 = ((uint32_t)x58 & 0x7ffffff);
- uint64_t x61 = (x59 + x45);
- uint64_t x62 = (x61 >> 0x1a);
- uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- uint64_t x64 = (x62 + x44);
- uint64_t x65 = (x64 >> 0x1b);
- uint32_t x66 = ((uint32_t)x64 & 0x7ffffff);
- uint64_t x67 = (x65 + x43);
- uint64_t x68 = (x67 >> 0x1b);
- uint32_t x69 = ((uint32_t)x67 & 0x7ffffff);
- uint64_t x70 = (x68 + x42);
- uint64_t x71 = (x70 >> 0x1a);
- uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- uint64_t x73 = (x71 + x41);
- uint64_t x74 = (x73 >> 0x1b);
- uint32_t x75 = ((uint32_t)x73 & 0x7ffffff);
- uint64_t x76 = (x74 + x40);
- uint64_t x77 = (x76 >> 0x1a);
- uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- uint64_t x79 = (x51 + (0x3 * x77));
- uint32_t x80 = (uint32_t) (x79 >> 0x1b);
- uint32_t x81 = ((uint32_t)x79 & 0x7ffffff);
- uint32_t x82 = (x80 + x54);
- uint32_t x83 = (x82 >> 0x1b);
- uint32_t x84 = (x82 & 0x7ffffff);
- return (Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x83 + x57), Return x84, Return x81))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e266m3_10limbs/femulDisplay.v b/src/Specific/solinas32_2e266m3_10limbs/femulDisplay.v
deleted file mode 100644
index 0f5069a17..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e266m3_10limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e266m3_10limbs/fesquare.c b/src/Specific/solinas32_2e266m3_10limbs/fesquare.c
deleted file mode 100644
index 9bc27311c..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/fesquare.c
+++ /dev/null
@@ -1,68 +0,0 @@
-static void fesquare(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x19 = (((uint64_t)x2 * x17) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x17 * x2))))))))));
- { uint64_t x20 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x3 * (0x2 * ((uint64_t)x17 * x17))));
- { uint64_t x21 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x3 * (((uint64_t)x18 * x17) + ((uint64_t)x17 * x18))));
- { uint64_t x22 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x3 * ((0x2 * ((uint64_t)x16 * x17)) + (((uint64_t)x18 * x18) + (0x2 * ((uint64_t)x17 * x16))))));
- { uint64_t x23 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x3 * ((0x2 * ((uint64_t)x14 * x17)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (0x2 * ((uint64_t)x17 * x14)))))));
- { uint64_t x24 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x3 * (((uint64_t)x12 * x17) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + ((uint64_t)x17 * x12)))))));
- { uint64_t x25 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x3 * ((0x2 * ((uint64_t)x10 * x17)) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + (0x2 * ((uint64_t)x17 * x10)))))))));
- { uint64_t x26 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x3 * (((uint64_t)x8 * x17) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((uint64_t)x17 * x8)))))))));
- { uint64_t x27 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * ((0x2 * ((uint64_t)x6 * x17)) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + (0x2 * ((uint64_t)x17 * x6)))))))))));
- { uint64_t x28 = (((uint64_t)x2 * x2) + (0x3 * ((0x2 * ((uint64_t)x4 * x17)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + (0x2 * ((uint64_t)x17 * x4))))))))))));
- { uint64_t x29 = (x28 >> 0x1b);
- { uint32_t x30 = ((uint32_t)x28 & 0x7ffffff);
- { uint64_t x31 = (x29 + x27);
- { uint64_t x32 = (x31 >> 0x1b);
- { uint32_t x33 = ((uint32_t)x31 & 0x7ffffff);
- { uint64_t x34 = (x32 + x26);
- { uint64_t x35 = (x34 >> 0x1a);
- { uint32_t x36 = ((uint32_t)x34 & 0x3ffffff);
- { uint64_t x37 = (x35 + x25);
- { uint64_t x38 = (x37 >> 0x1b);
- { uint32_t x39 = ((uint32_t)x37 & 0x7ffffff);
- { uint64_t x40 = (x38 + x24);
- { uint64_t x41 = (x40 >> 0x1a);
- { uint32_t x42 = ((uint32_t)x40 & 0x3ffffff);
- { uint64_t x43 = (x41 + x23);
- { uint64_t x44 = (x43 >> 0x1b);
- { uint32_t x45 = ((uint32_t)x43 & 0x7ffffff);
- { uint64_t x46 = (x44 + x22);
- { uint64_t x47 = (x46 >> 0x1b);
- { uint32_t x48 = ((uint32_t)x46 & 0x7ffffff);
- { uint64_t x49 = (x47 + x21);
- { uint64_t x50 = (x49 >> 0x1a);
- { uint32_t x51 = ((uint32_t)x49 & 0x3ffffff);
- { uint64_t x52 = (x50 + x20);
- { uint64_t x53 = (x52 >> 0x1b);
- { uint32_t x54 = ((uint32_t)x52 & 0x7ffffff);
- { uint64_t x55 = (x53 + x19);
- { uint64_t x56 = (x55 >> 0x1a);
- { uint32_t x57 = ((uint32_t)x55 & 0x3ffffff);
- { uint64_t x58 = (x30 + (0x3 * x56));
- { uint32_t x59 = (uint32_t) (x58 >> 0x1b);
- { uint32_t x60 = ((uint32_t)x58 & 0x7ffffff);
- { uint32_t x61 = (x59 + x33);
- { uint32_t x62 = (x61 >> 0x1b);
- { uint32_t x63 = (x61 & 0x7ffffff);
- out[0] = x60;
- out[1] = x63;
- out[2] = (x62 + x36);
- out[3] = x39;
- out[4] = x42;
- out[5] = x45;
- out[6] = x48;
- out[7] = x51;
- out[8] = x54;
- out[9] = x57;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e266m3_10limbs/fesquare.v b/src/Specific/solinas32_2e266m3_10limbs/fesquare.v
deleted file mode 100644
index 27d4c2fec..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e266m3_10limbs.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_2e266m3_10limbs/fesquareDisplay.log b/src/Specific/solinas32_2e266m3_10limbs/fesquareDisplay.log
deleted file mode 100644
index 045ee5ab4..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x19 = (((uint64_t)x2 * x17) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x17 * x2))))))))));
- uint64_t x20 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x3 * (0x2 * ((uint64_t)x17 * x17))));
- uint64_t x21 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x3 * (((uint64_t)x18 * x17) + ((uint64_t)x17 * x18))));
- uint64_t x22 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x3 * ((0x2 * ((uint64_t)x16 * x17)) + (((uint64_t)x18 * x18) + (0x2 * ((uint64_t)x17 * x16))))));
- uint64_t x23 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x3 * ((0x2 * ((uint64_t)x14 * x17)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (0x2 * ((uint64_t)x17 * x14)))))));
- uint64_t x24 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x3 * (((uint64_t)x12 * x17) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + ((uint64_t)x17 * x12)))))));
- uint64_t x25 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x3 * ((0x2 * ((uint64_t)x10 * x17)) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + (0x2 * ((uint64_t)x17 * x10)))))))));
- uint64_t x26 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x3 * (((uint64_t)x8 * x17) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((uint64_t)x17 * x8)))))))));
- uint64_t x27 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * ((0x2 * ((uint64_t)x6 * x17)) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + (0x2 * ((uint64_t)x17 * x6)))))))))));
- uint64_t x28 = (((uint64_t)x2 * x2) + (0x3 * ((0x2 * ((uint64_t)x4 * x17)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + (0x2 * ((uint64_t)x17 * x4))))))))))));
- uint64_t x29 = (x28 >> 0x1b);
- uint32_t x30 = ((uint32_t)x28 & 0x7ffffff);
- uint64_t x31 = (x29 + x27);
- uint64_t x32 = (x31 >> 0x1b);
- uint32_t x33 = ((uint32_t)x31 & 0x7ffffff);
- uint64_t x34 = (x32 + x26);
- uint64_t x35 = (x34 >> 0x1a);
- uint32_t x36 = ((uint32_t)x34 & 0x3ffffff);
- uint64_t x37 = (x35 + x25);
- uint64_t x38 = (x37 >> 0x1b);
- uint32_t x39 = ((uint32_t)x37 & 0x7ffffff);
- uint64_t x40 = (x38 + x24);
- uint64_t x41 = (x40 >> 0x1a);
- uint32_t x42 = ((uint32_t)x40 & 0x3ffffff);
- uint64_t x43 = (x41 + x23);
- uint64_t x44 = (x43 >> 0x1b);
- uint32_t x45 = ((uint32_t)x43 & 0x7ffffff);
- uint64_t x46 = (x44 + x22);
- uint64_t x47 = (x46 >> 0x1b);
- uint32_t x48 = ((uint32_t)x46 & 0x7ffffff);
- uint64_t x49 = (x47 + x21);
- uint64_t x50 = (x49 >> 0x1a);
- uint32_t x51 = ((uint32_t)x49 & 0x3ffffff);
- uint64_t x52 = (x50 + x20);
- uint64_t x53 = (x52 >> 0x1b);
- uint32_t x54 = ((uint32_t)x52 & 0x7ffffff);
- uint64_t x55 = (x53 + x19);
- uint64_t x56 = (x55 >> 0x1a);
- uint32_t x57 = ((uint32_t)x55 & 0x3ffffff);
- uint64_t x58 = (x30 + (0x3 * x56));
- uint32_t x59 = (uint32_t) (x58 >> 0x1b);
- uint32_t x60 = ((uint32_t)x58 & 0x7ffffff);
- uint32_t x61 = (x59 + x33);
- uint32_t x62 = (x61 >> 0x1b);
- uint32_t x63 = (x61 & 0x7ffffff);
- return (Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, Return x39, (x62 + x36), Return x63, Return x60))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e266m3_10limbs/fesquareDisplay.v b/src/Specific/solinas32_2e266m3_10limbs/fesquareDisplay.v
deleted file mode 100644
index 007e208bf..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e266m3_10limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e266m3_10limbs/fesub.c b/src/Specific/solinas32_2e266m3_10limbs/fesub.c
deleted file mode 100644
index e7e8d4bf6..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/fesub.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fesub(uint32_t out[10], const uint32_t in1[10], const uint32_t in2[10]) {
- { const uint32_t x20 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x38 = in2[9];
- { const uint32_t x39 = in2[8];
- { const uint32_t x37 = in2[7];
- { const uint32_t x35 = in2[6];
- { const uint32_t x33 = in2[5];
- { const uint32_t x31 = in2[4];
- { const uint32_t x29 = in2[3];
- { const uint32_t x27 = in2[2];
- { const uint32_t x25 = in2[1];
- { const uint32_t x23 = in2[0];
- out[0] = ((0xffffffa + x5) - x23);
- out[1] = ((0xffffffe + x7) - x25);
- out[2] = ((0x7fffffe + x9) - x27);
- out[3] = ((0xffffffe + x11) - x29);
- out[4] = ((0x7fffffe + x13) - x31);
- out[5] = ((0xffffffe + x15) - x33);
- out[6] = ((0xffffffe + x17) - x35);
- out[7] = ((0x7fffffe + x19) - x37);
- out[8] = ((0xffffffe + x21) - x39);
- out[9] = ((0x7fffffe + x20) - x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e266m3_10limbs/fesub.v b/src/Specific/solinas32_2e266m3_10limbs/fesub.v
deleted file mode 100644
index c234b6a84..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e266m3_10limbs.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_2e266m3_10limbs/fesubDisplay.log b/src/Specific/solinas32_2e266m3_10limbs/fesubDisplay.log
deleted file mode 100644
index 97795c62a..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- (((0x7fffffe + x20) - x38), ((0xffffffe + x21) - x39), ((0x7fffffe + x19) - x37), ((0xffffffe + x17) - x35), ((0xffffffe + x15) - x33), ((0x7fffffe + x13) - x31), ((0xffffffe + x11) - x29), ((0x7fffffe + x9) - x27), ((0xffffffe + x7) - x25), ((0xffffffa + x5) - x23)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e266m3_10limbs/fesubDisplay.v b/src/Specific/solinas32_2e266m3_10limbs/fesubDisplay.v
deleted file mode 100644
index 281306873..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e266m3_10limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e266m3_10limbs/freeze.c b/src/Specific/solinas32_2e266m3_10limbs/freeze.c
deleted file mode 100644
index d36996a8b..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/freeze.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void freeze(uint32_t out[10], const uint32_t in1[10]) {
- { const uint32_t x17 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffd);
- { uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x4, 0x7ffffff);
- { uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x6, 0x3ffffff);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x8, 0x7ffffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x10, 0x3ffffff);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x12, 0x7ffffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x14, 0x7ffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x16, 0x3ffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x18, 0x7ffffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x17, 0x3ffffff);
- { uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- { uint32_t x50 = (x49 & 0x7fffffd);
- { uint32_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- { uint32_t x54 = (x49 & 0x7ffffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- { uint32_t x58 = (x49 & 0x3ffffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- { uint32_t x62 = (x49 & 0x7ffffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- { uint32_t x66 = (x49 & 0x3ffffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- { uint32_t x70 = (x49 & 0x7ffffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- { uint32_t x74 = (x49 & 0x7ffffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- { uint32_t x78 = (x49 & 0x3ffffff);
- { uint32_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- { uint32_t x82 = (x49 & 0x7ffffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- { uint32_t x86 = (x49 & 0x3ffffff);
- { uint32_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- out[0] = x52;
- out[1] = x56;
- out[2] = x60;
- out[3] = x64;
- out[4] = x68;
- out[5] = x72;
- out[6] = x76;
- out[7] = x80;
- out[8] = x84;
- out[9] = x88;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e266m3_10limbs/freeze.v b/src/Specific/solinas32_2e266m3_10limbs/freeze.v
deleted file mode 100644
index 92b3f1509..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e266m3_10limbs.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_2e266m3_10limbs/freezeDisplay.log b/src/Specific/solinas32_2e266m3_10limbs/freezeDisplay.log
deleted file mode 100644
index 0c596c6a9..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffd);
- uint32_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x21, Return x4, 0x7ffffff);
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x24, Return x6, 0x3ffffff);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x8, 0x7ffffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x10, 0x3ffffff);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x12, 0x7ffffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x14, 0x7ffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x16, 0x3ffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x18, 0x7ffffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x17, 0x3ffffff);
- uint32_t x49 = cmovznz32(x48, 0x0, 0xffffffff);
- uint32_t x50 = (x49 & 0x7fffffd);
- uint32_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- uint32_t x54 = (x49 & 0x7ffffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- uint32_t x58 = (x49 & 0x3ffffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- uint32_t x62 = (x49 & 0x7ffffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- uint32_t x66 = (x49 & 0x3ffffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- uint32_t x70 = (x49 & 0x7ffffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- uint32_t x74 = (x49 & 0x7ffffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- uint32_t x78 = (x49 & 0x3ffffff);
- uint32_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- uint32_t x82 = (x49 & 0x7ffffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- uint32_t x86 = (x49 & 0x3ffffff);
- uint32_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- (Return x88, Return x84, Return x80, Return x76, Return x72, Return x68, Return x64, Return x60, Return x56, Return x52))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e266m3_10limbs/freezeDisplay.v b/src/Specific/solinas32_2e266m3_10limbs/freezeDisplay.v
deleted file mode 100644
index 25fa67f2a..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e266m3_10limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e266m3_10limbs/py_interpreter.sh b/src/Specific/solinas32_2e266m3_10limbs/py_interpreter.sh
deleted file mode 100755
index 98afa0225..000000000
--- a/src/Specific/solinas32_2e266m3_10limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**266 - 3' -Dmodulus_bytes='26.6' -Da24='121665'
diff --git a/src/Specific/solinas32_2e266m3_11limbs/CurveParameters.v b/src/Specific/solinas32_2e266m3_11limbs/CurveParameters.v
deleted file mode 100644
index 923b6a1d9..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^266 - 3
-Base: 24 + 2/11
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 11%nat;
- base := 24 + 2/11;
- bitwidth := 32;
- s := 2^266;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 11); [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_2e266m3_11limbs/Synthesis.v b/src/Specific/solinas32_2e266m3_11limbs/Synthesis.v
deleted file mode 100644
index 85d89535c..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e266m3_11limbs.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_2e266m3_11limbs/compiler.sh b/src/Specific/solinas32_2e266m3_11limbs/compiler.sh
deleted file mode 100755
index 7d3f05534..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,24,24,24,24,25,24,24,24,24,24}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='34' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<266) - 3' "$@"
diff --git a/src/Specific/solinas32_2e266m3_11limbs/compilerxx.sh b/src/Specific/solinas32_2e266m3_11limbs/compilerxx.sh
deleted file mode 100755
index 190a3f580..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{25,24,24,24,24,25,24,24,24,24,24}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='34' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<266) - 3' "$@"
diff --git a/src/Specific/solinas32_2e266m3_11limbs/feadd.c b/src/Specific/solinas32_2e266m3_11limbs/feadd.c
deleted file mode 100644
index 1763e8727..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/feadd.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void feadd(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- out[0] = (x5 + x25);
- out[1] = (x7 + x27);
- out[2] = (x9 + x29);
- out[3] = (x11 + x31);
- out[4] = (x13 + x33);
- out[5] = (x15 + x35);
- out[6] = (x17 + x37);
- out[7] = (x19 + x39);
- out[8] = (x21 + x41);
- out[9] = (x23 + x43);
- out[10] = (x22 + x42);
- }}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e266m3_11limbs/feadd.v b/src/Specific/solinas32_2e266m3_11limbs/feadd.v
deleted file mode 100644
index 7672c3bc7..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e266m3_11limbs.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_2e266m3_11limbs/feaddDisplay.log b/src/Specific/solinas32_2e266m3_11limbs/feaddDisplay.log
deleted file mode 100644
index 433ecbc2e..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- ((x22 + x42), (x23 + x43), (x21 + x41), (x19 + x39), (x17 + x37), (x15 + x35), (x13 + x33), (x11 + x31), (x9 + x29), (x7 + x27), (x5 + x25)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e266m3_11limbs/feaddDisplay.v b/src/Specific/solinas32_2e266m3_11limbs/feaddDisplay.v
deleted file mode 100644
index 5fe9c294b..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e266m3_11limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e266m3_11limbs/fecarry.v b/src/Specific/solinas32_2e266m3_11limbs/fecarry.v
deleted file mode 100644
index 09b6a112b..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e266m3_11limbs.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_2e266m3_11limbs/fecarryDisplay.v b/src/Specific/solinas32_2e266m3_11limbs/fecarryDisplay.v
deleted file mode 100644
index 75aae13fd..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e266m3_11limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e266m3_11limbs/femul.c b/src/Specific/solinas32_2e266m3_11limbs/femul.c
deleted file mode 100644
index adb205f40..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/femul.c
+++ /dev/null
@@ -1,85 +0,0 @@
-static void femul(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- { uint64_t x44 = (((uint64_t)x5 * x42) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + ((0x2 * ((uint64_t)x13 * x37)) + (((uint64_t)x15 * x35) + ((0x2 * ((uint64_t)x17 * x33)) + ((0x2 * ((uint64_t)x19 * x31)) + ((0x2 * ((uint64_t)x21 * x29)) + ((0x2 * ((uint64_t)x23 * x27)) + ((uint64_t)x22 * x25)))))))))));
- { uint64_t x45 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((0x2 * ((uint64_t)x21 * x27)) + ((uint64_t)x23 * x25)))))))))) + (0x3 * ((uint64_t)x22 * x42)));
- { uint64_t x46 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + ((0x2 * ((uint64_t)x17 * x29)) + ((0x2 * ((uint64_t)x19 * x27)) + ((uint64_t)x21 * x25))))))))) + (0x3 * (((uint64_t)x23 * x42) + ((uint64_t)x22 * x43))));
- { uint64_t x47 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + ((0x2 * ((uint64_t)x17 * x27)) + ((uint64_t)x19 * x25)))))))) + (0x3 * (((uint64_t)x21 * x42) + (((uint64_t)x23 * x43) + ((uint64_t)x22 * x41)))));
- { uint64_t x48 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + ((uint64_t)x17 * x25))))))) + (0x3 * (((uint64_t)x19 * x42) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + ((uint64_t)x22 * x39))))));
- { uint64_t x49 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((uint64_t)x15 * x25)))))) + (0x3 * ((0x2 * ((uint64_t)x17 * x42)) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + (0x2 * ((uint64_t)x22 * x37))))))));
- { uint64_t x50 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((0x2 * ((uint64_t)x11 * x27)) + ((uint64_t)x13 * x25))))) + (0x3 * (((uint64_t)x15 * x42) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((uint64_t)x22 * x35))))))));
- { uint64_t x51 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((uint64_t)x11 * x25)))) + (0x3 * (((uint64_t)x13 * x42) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + (((uint64_t)x23 * x35) + ((uint64_t)x22 * x33)))))))));
- { uint64_t x52 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((uint64_t)x9 * x25))) + (0x3 * (((uint64_t)x11 * x42) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + (((uint64_t)x23 * x33) + ((uint64_t)x22 * x31))))))))));
- { uint64_t x53 = ((((uint64_t)x5 * x27) + ((uint64_t)x7 * x25)) + (0x3 * (((uint64_t)x9 * x42) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + ((0x2 * ((uint64_t)x17 * x37)) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + (((uint64_t)x23 * x31) + ((uint64_t)x22 * x29)))))))))));
- { uint64_t x54 = (((uint64_t)x5 * x25) + (0x3 * ((0x2 * ((uint64_t)x7 * x42)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((0x2 * ((uint64_t)x17 * x35)) + ((0x2 * ((uint64_t)x19 * x33)) + ((0x2 * ((uint64_t)x21 * x31)) + ((0x2 * ((uint64_t)x23 * x29)) + (0x2 * ((uint64_t)x22 * x27)))))))))))));
- { uint64_t x55 = (x54 >> 0x19);
- { uint32_t x56 = ((uint32_t)x54 & 0x1ffffff);
- { uint64_t x57 = (x55 + x53);
- { uint64_t x58 = (x57 >> 0x18);
- { uint32_t x59 = ((uint32_t)x57 & 0xffffff);
- { uint64_t x60 = (x58 + x52);
- { uint64_t x61 = (x60 >> 0x18);
- { uint32_t x62 = ((uint32_t)x60 & 0xffffff);
- { uint64_t x63 = (x61 + x51);
- { uint64_t x64 = (x63 >> 0x18);
- { uint32_t x65 = ((uint32_t)x63 & 0xffffff);
- { uint64_t x66 = (x64 + x50);
- { uint64_t x67 = (x66 >> 0x18);
- { uint32_t x68 = ((uint32_t)x66 & 0xffffff);
- { uint64_t x69 = (x67 + x49);
- { uint64_t x70 = (x69 >> 0x19);
- { uint32_t x71 = ((uint32_t)x69 & 0x1ffffff);
- { uint64_t x72 = (x70 + x48);
- { uint64_t x73 = (x72 >> 0x18);
- { uint32_t x74 = ((uint32_t)x72 & 0xffffff);
- { uint64_t x75 = (x73 + x47);
- { uint64_t x76 = (x75 >> 0x18);
- { uint32_t x77 = ((uint32_t)x75 & 0xffffff);
- { uint64_t x78 = (x76 + x46);
- { uint64_t x79 = (x78 >> 0x18);
- { uint32_t x80 = ((uint32_t)x78 & 0xffffff);
- { uint64_t x81 = (x79 + x45);
- { uint64_t x82 = (x81 >> 0x18);
- { uint32_t x83 = ((uint32_t)x81 & 0xffffff);
- { uint64_t x84 = (x82 + x44);
- { uint64_t x85 = (x84 >> 0x18);
- { uint32_t x86 = ((uint32_t)x84 & 0xffffff);
- { uint64_t x87 = (x56 + (0x3 * x85));
- { uint32_t x88 = (uint32_t) (x87 >> 0x19);
- { uint32_t x89 = ((uint32_t)x87 & 0x1ffffff);
- { uint32_t x90 = (x88 + x59);
- { uint32_t x91 = (x90 >> 0x18);
- { uint32_t x92 = (x90 & 0xffffff);
- out[0] = x89;
- out[1] = x92;
- out[2] = (x91 + x62);
- out[3] = x65;
- out[4] = x68;
- out[5] = x71;
- out[6] = x74;
- out[7] = x77;
- out[8] = x80;
- out[9] = x83;
- out[10] = x86;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e266m3_11limbs/femul.v b/src/Specific/solinas32_2e266m3_11limbs/femul.v
deleted file mode 100644
index 7b35de082..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e266m3_11limbs.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_2e266m3_11limbs/femulDisplay.log b/src/Specific/solinas32_2e266m3_11limbs/femulDisplay.log
deleted file mode 100644
index 8dd11d0a9..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/femulDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- uint64_t x44 = (((uint64_t)x5 * x42) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + ((0x2 * ((uint64_t)x13 * x37)) + (((uint64_t)x15 * x35) + ((0x2 * ((uint64_t)x17 * x33)) + ((0x2 * ((uint64_t)x19 * x31)) + ((0x2 * ((uint64_t)x21 * x29)) + ((0x2 * ((uint64_t)x23 * x27)) + ((uint64_t)x22 * x25)))))))))));
- uint64_t x45 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((0x2 * ((uint64_t)x21 * x27)) + ((uint64_t)x23 * x25)))))))))) + (0x3 * ((uint64_t)x22 * x42)));
- uint64_t x46 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + ((0x2 * ((uint64_t)x17 * x29)) + ((0x2 * ((uint64_t)x19 * x27)) + ((uint64_t)x21 * x25))))))))) + (0x3 * (((uint64_t)x23 * x42) + ((uint64_t)x22 * x43))));
- uint64_t x47 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + ((0x2 * ((uint64_t)x17 * x27)) + ((uint64_t)x19 * x25)))))))) + (0x3 * (((uint64_t)x21 * x42) + (((uint64_t)x23 * x43) + ((uint64_t)x22 * x41)))));
- uint64_t x48 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + ((uint64_t)x17 * x25))))))) + (0x3 * (((uint64_t)x19 * x42) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + ((uint64_t)x22 * x39))))));
- uint64_t x49 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((0x2 * ((uint64_t)x13 * x27)) + ((uint64_t)x15 * x25)))))) + (0x3 * ((0x2 * ((uint64_t)x17 * x42)) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + (0x2 * ((uint64_t)x22 * x37))))))));
- uint64_t x50 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((0x2 * ((uint64_t)x11 * x27)) + ((uint64_t)x13 * x25))))) + (0x3 * (((uint64_t)x15 * x42) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((uint64_t)x22 * x35))))))));
- uint64_t x51 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((0x2 * ((uint64_t)x9 * x27)) + ((uint64_t)x11 * x25)))) + (0x3 * (((uint64_t)x13 * x42) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + (((uint64_t)x23 * x35) + ((uint64_t)x22 * x33)))))))));
- uint64_t x52 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((uint64_t)x9 * x25))) + (0x3 * (((uint64_t)x11 * x42) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + (((uint64_t)x23 * x33) + ((uint64_t)x22 * x31))))))))));
- uint64_t x53 = ((((uint64_t)x5 * x27) + ((uint64_t)x7 * x25)) + (0x3 * (((uint64_t)x9 * x42) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + ((0x2 * ((uint64_t)x17 * x37)) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + (((uint64_t)x23 * x31) + ((uint64_t)x22 * x29)))))))))));
- uint64_t x54 = (((uint64_t)x5 * x25) + (0x3 * ((0x2 * ((uint64_t)x7 * x42)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((0x2 * ((uint64_t)x17 * x35)) + ((0x2 * ((uint64_t)x19 * x33)) + ((0x2 * ((uint64_t)x21 * x31)) + ((0x2 * ((uint64_t)x23 * x29)) + (0x2 * ((uint64_t)x22 * x27)))))))))))));
- uint64_t x55 = (x54 >> 0x19);
- uint32_t x56 = ((uint32_t)x54 & 0x1ffffff);
- uint64_t x57 = (x55 + x53);
- uint64_t x58 = (x57 >> 0x18);
- uint32_t x59 = ((uint32_t)x57 & 0xffffff);
- uint64_t x60 = (x58 + x52);
- uint64_t x61 = (x60 >> 0x18);
- uint32_t x62 = ((uint32_t)x60 & 0xffffff);
- uint64_t x63 = (x61 + x51);
- uint64_t x64 = (x63 >> 0x18);
- uint32_t x65 = ((uint32_t)x63 & 0xffffff);
- uint64_t x66 = (x64 + x50);
- uint64_t x67 = (x66 >> 0x18);
- uint32_t x68 = ((uint32_t)x66 & 0xffffff);
- uint64_t x69 = (x67 + x49);
- uint64_t x70 = (x69 >> 0x19);
- uint32_t x71 = ((uint32_t)x69 & 0x1ffffff);
- uint64_t x72 = (x70 + x48);
- uint64_t x73 = (x72 >> 0x18);
- uint32_t x74 = ((uint32_t)x72 & 0xffffff);
- uint64_t x75 = (x73 + x47);
- uint64_t x76 = (x75 >> 0x18);
- uint32_t x77 = ((uint32_t)x75 & 0xffffff);
- uint64_t x78 = (x76 + x46);
- uint64_t x79 = (x78 >> 0x18);
- uint32_t x80 = ((uint32_t)x78 & 0xffffff);
- uint64_t x81 = (x79 + x45);
- uint64_t x82 = (x81 >> 0x18);
- uint32_t x83 = ((uint32_t)x81 & 0xffffff);
- uint64_t x84 = (x82 + x44);
- uint64_t x85 = (x84 >> 0x18);
- uint32_t x86 = ((uint32_t)x84 & 0xffffff);
- uint64_t x87 = (x56 + (0x3 * x85));
- uint32_t x88 = (uint32_t) (x87 >> 0x19);
- uint32_t x89 = ((uint32_t)x87 & 0x1ffffff);
- uint32_t x90 = (x88 + x59);
- uint32_t x91 = (x90 >> 0x18);
- uint32_t x92 = (x90 & 0xffffff);
- return (Return x86, Return x83, Return x80, Return x77, Return x74, Return x71, Return x68, Return x65, (x91 + x62), Return x92, Return x89))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e266m3_11limbs/femulDisplay.v b/src/Specific/solinas32_2e266m3_11limbs/femulDisplay.v
deleted file mode 100644
index a44f2b082..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e266m3_11limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e266m3_11limbs/fesquare.c b/src/Specific/solinas32_2e266m3_11limbs/fesquare.c
deleted file mode 100644
index 4541c198b..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/fesquare.c
+++ /dev/null
@@ -1,74 +0,0 @@
-static void fesquare(uint32_t out[11], const uint32_t in1[11]) {
- { const uint32_t x19 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x21 = (((uint64_t)x2 * x19) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x19 * x2)))))))))));
- { uint64_t x22 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x3 * ((uint64_t)x19 * x19)));
- { uint64_t x23 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x3 * (((uint64_t)x20 * x19) + ((uint64_t)x19 * x20))));
- { uint64_t x24 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x3 * (((uint64_t)x18 * x19) + (((uint64_t)x20 * x20) + ((uint64_t)x19 * x18)))));
- { uint64_t x25 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x3 * (((uint64_t)x16 * x19) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((uint64_t)x19 * x16))))));
- { uint64_t x26 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x3 * ((0x2 * ((uint64_t)x14 * x19)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + (0x2 * ((uint64_t)x19 * x14))))))));
- { uint64_t x27 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x3 * (((uint64_t)x12 * x19) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + ((uint64_t)x19 * x12))))))));
- { uint64_t x28 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x3 * (((uint64_t)x10 * x19) + (((uint64_t)x12 * x20) + ((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + ((0x2 * ((uint64_t)x18 * x14)) + (((uint64_t)x20 * x12) + ((uint64_t)x19 * x10)))))))));
- { uint64_t x29 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x3 * (((uint64_t)x8 * x19) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + ((uint64_t)x19 * x8))))))))));
- { uint64_t x30 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * (((uint64_t)x6 * x19) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + ((uint64_t)x19 * x6)))))))))));
- { uint64_t x31 = (((uint64_t)x2 * x2) + (0x3 * ((0x2 * ((uint64_t)x4 * x19)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + (0x2 * ((uint64_t)x19 * x4)))))))))))));
- { uint64_t x32 = (x31 >> 0x19);
- { uint32_t x33 = ((uint32_t)x31 & 0x1ffffff);
- { uint64_t x34 = (x32 + x30);
- { uint64_t x35 = (x34 >> 0x18);
- { uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- { uint64_t x37 = (x35 + x29);
- { uint64_t x38 = (x37 >> 0x18);
- { uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- { uint64_t x40 = (x38 + x28);
- { uint64_t x41 = (x40 >> 0x18);
- { uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- { uint64_t x43 = (x41 + x27);
- { uint64_t x44 = (x43 >> 0x18);
- { uint32_t x45 = ((uint32_t)x43 & 0xffffff);
- { uint64_t x46 = (x44 + x26);
- { uint64_t x47 = (x46 >> 0x19);
- { uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- { uint64_t x49 = (x47 + x25);
- { uint64_t x50 = (x49 >> 0x18);
- { uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- { uint64_t x52 = (x50 + x24);
- { uint64_t x53 = (x52 >> 0x18);
- { uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- { uint64_t x55 = (x53 + x23);
- { uint64_t x56 = (x55 >> 0x18);
- { uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- { uint64_t x58 = (x56 + x22);
- { uint64_t x59 = (x58 >> 0x18);
- { uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- { uint64_t x61 = (x59 + x21);
- { uint64_t x62 = (x61 >> 0x18);
- { uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- { uint64_t x64 = (x33 + (0x3 * x62));
- { uint32_t x65 = (uint32_t) (x64 >> 0x19);
- { uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- { uint32_t x67 = (x65 + x36);
- { uint32_t x68 = (x67 >> 0x18);
- { uint32_t x69 = (x67 & 0xffffff);
- out[0] = x66;
- out[1] = x69;
- out[2] = (x68 + x39);
- out[3] = x42;
- out[4] = x45;
- out[5] = x48;
- out[6] = x51;
- out[7] = x54;
- out[8] = x57;
- out[9] = x60;
- out[10] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e266m3_11limbs/fesquare.v b/src/Specific/solinas32_2e266m3_11limbs/fesquare.v
deleted file mode 100644
index 76530a509..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e266m3_11limbs.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_2e266m3_11limbs/fesquareDisplay.log b/src/Specific/solinas32_2e266m3_11limbs/fesquareDisplay.log
deleted file mode 100644
index 177226479..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x21 = (((uint64_t)x2 * x19) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x19 * x2)))))))))));
- uint64_t x22 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x3 * ((uint64_t)x19 * x19)));
- uint64_t x23 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x3 * (((uint64_t)x20 * x19) + ((uint64_t)x19 * x20))));
- uint64_t x24 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x3 * (((uint64_t)x18 * x19) + (((uint64_t)x20 * x20) + ((uint64_t)x19 * x18)))));
- uint64_t x25 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x3 * (((uint64_t)x16 * x19) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((uint64_t)x19 * x16))))));
- uint64_t x26 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x3 * ((0x2 * ((uint64_t)x14 * x19)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + (0x2 * ((uint64_t)x19 * x14))))))));
- uint64_t x27 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x3 * (((uint64_t)x12 * x19) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + ((uint64_t)x19 * x12))))))));
- uint64_t x28 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x3 * (((uint64_t)x10 * x19) + (((uint64_t)x12 * x20) + ((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + ((0x2 * ((uint64_t)x18 * x14)) + (((uint64_t)x20 * x12) + ((uint64_t)x19 * x10)))))))));
- uint64_t x29 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x3 * (((uint64_t)x8 * x19) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + ((uint64_t)x19 * x8))))))))));
- uint64_t x30 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * (((uint64_t)x6 * x19) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + ((uint64_t)x19 * x6)))))))))));
- uint64_t x31 = (((uint64_t)x2 * x2) + (0x3 * ((0x2 * ((uint64_t)x4 * x19)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + (0x2 * ((uint64_t)x19 * x4)))))))))))));
- uint64_t x32 = (x31 >> 0x19);
- uint32_t x33 = ((uint32_t)x31 & 0x1ffffff);
- uint64_t x34 = (x32 + x30);
- uint64_t x35 = (x34 >> 0x18);
- uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- uint64_t x37 = (x35 + x29);
- uint64_t x38 = (x37 >> 0x18);
- uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- uint64_t x40 = (x38 + x28);
- uint64_t x41 = (x40 >> 0x18);
- uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- uint64_t x43 = (x41 + x27);
- uint64_t x44 = (x43 >> 0x18);
- uint32_t x45 = ((uint32_t)x43 & 0xffffff);
- uint64_t x46 = (x44 + x26);
- uint64_t x47 = (x46 >> 0x19);
- uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- uint64_t x49 = (x47 + x25);
- uint64_t x50 = (x49 >> 0x18);
- uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- uint64_t x52 = (x50 + x24);
- uint64_t x53 = (x52 >> 0x18);
- uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- uint64_t x55 = (x53 + x23);
- uint64_t x56 = (x55 >> 0x18);
- uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- uint64_t x58 = (x56 + x22);
- uint64_t x59 = (x58 >> 0x18);
- uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- uint64_t x61 = (x59 + x21);
- uint64_t x62 = (x61 >> 0x18);
- uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- uint64_t x64 = (x33 + (0x3 * x62));
- uint32_t x65 = (uint32_t) (x64 >> 0x19);
- uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- uint32_t x67 = (x65 + x36);
- uint32_t x68 = (x67 >> 0x18);
- uint32_t x69 = (x67 & 0xffffff);
- return (Return x63, Return x60, Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, (x68 + x39), Return x69, Return x66))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e266m3_11limbs/fesquareDisplay.v b/src/Specific/solinas32_2e266m3_11limbs/fesquareDisplay.v
deleted file mode 100644
index 3fe7558f8..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e266m3_11limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e266m3_11limbs/fesub.c b/src/Specific/solinas32_2e266m3_11limbs/fesub.c
deleted file mode 100644
index d750fd6c4..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/fesub.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void fesub(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- out[0] = ((0x3fffffa + x5) - x25);
- out[1] = ((0x1fffffe + x7) - x27);
- out[2] = ((0x1fffffe + x9) - x29);
- out[3] = ((0x1fffffe + x11) - x31);
- out[4] = ((0x1fffffe + x13) - x33);
- out[5] = ((0x3fffffe + x15) - x35);
- out[6] = ((0x1fffffe + x17) - x37);
- out[7] = ((0x1fffffe + x19) - x39);
- out[8] = ((0x1fffffe + x21) - x41);
- out[9] = ((0x1fffffe + x23) - x43);
- out[10] = ((0x1fffffe + x22) - x42);
- }}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e266m3_11limbs/fesub.v b/src/Specific/solinas32_2e266m3_11limbs/fesub.v
deleted file mode 100644
index 2b509090c..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e266m3_11limbs.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_2e266m3_11limbs/fesubDisplay.log b/src/Specific/solinas32_2e266m3_11limbs/fesubDisplay.log
deleted file mode 100644
index 3c0a629e3..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- (((0x1fffffe + x22) - x42), ((0x1fffffe + x23) - x43), ((0x1fffffe + x21) - x41), ((0x1fffffe + x19) - x39), ((0x1fffffe + x17) - x37), ((0x3fffffe + x15) - x35), ((0x1fffffe + x13) - x33), ((0x1fffffe + x11) - x31), ((0x1fffffe + x9) - x29), ((0x1fffffe + x7) - x27), ((0x3fffffa + x5) - x25)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e266m3_11limbs/fesubDisplay.v b/src/Specific/solinas32_2e266m3_11limbs/fesubDisplay.v
deleted file mode 100644
index 40c6419e0..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e266m3_11limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e266m3_11limbs/freeze.c b/src/Specific/solinas32_2e266m3_11limbs/freeze.c
deleted file mode 100644
index c030a2c02..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/freeze.c
+++ /dev/null
@@ -1,59 +0,0 @@
-static void freeze(uint32_t out[11], const uint32_t in1[11]) {
- { const uint32_t x19 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffd);
- { uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x4, 0xffffff);
- { uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x6, 0xffffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x8, 0xffffff);
- { uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x10, 0xffffff);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x12, 0x1ffffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x14, 0xffffff);
- { uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x16, 0xffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x18, 0xffffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x20, 0xffffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x19, 0xffffff);
- { uint32_t x54 = cmovznz32(x53, 0x0, 0xffffffff);
- { uint32_t x55 = (x54 & 0x1fffffd);
- { uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x22, Return x55);
- { uint32_t x59 = (x54 & 0xffffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x25, Return x59);
- { uint32_t x63 = (x54 & 0xffffff);
- { uint32_t x65, uint8_t x66 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x28, Return x63);
- { uint32_t x67 = (x54 & 0xffffff);
- { uint32_t x69, uint8_t x70 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x31, Return x67);
- { uint32_t x71 = (x54 & 0xffffff);
- { uint32_t x73, uint8_t x74 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x34, Return x71);
- { uint32_t x75 = (x54 & 0x1ffffff);
- { uint32_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x37, Return x75);
- { uint32_t x79 = (x54 & 0xffffff);
- { uint32_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x40, Return x79);
- { uint32_t x83 = (x54 & 0xffffff);
- { uint32_t x85, uint8_t x86 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x43, Return x83);
- { uint32_t x87 = (x54 & 0xffffff);
- { uint32_t x89, uint8_t x90 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x46, Return x87);
- { uint32_t x91 = (x54 & 0xffffff);
- { uint32_t x93, uint8_t x94 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x49, Return x91);
- { uint32_t x95 = (x54 & 0xffffff);
- { uint32_t x97, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x94, Return x52, Return x95);
- out[0] = x57;
- out[1] = x61;
- out[2] = x65;
- out[3] = x69;
- out[4] = x73;
- out[5] = x77;
- out[6] = x81;
- out[7] = x85;
- out[8] = x89;
- out[9] = x93;
- out[10] = x97;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e266m3_11limbs/freeze.v b/src/Specific/solinas32_2e266m3_11limbs/freeze.v
deleted file mode 100644
index a48e08cb9..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e266m3_11limbs.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_2e266m3_11limbs/freezeDisplay.log b/src/Specific/solinas32_2e266m3_11limbs/freezeDisplay.log
deleted file mode 100644
index fbfc11b1c..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/freezeDisplay.log
+++ /dev/null
@@ -1,41 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffd);
- uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x4, 0xffffff);
- uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x6, 0xffffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x8, 0xffffff);
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x10, 0xffffff);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x12, 0x1ffffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x14, 0xffffff);
- uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x16, 0xffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x18, 0xffffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x20, 0xffffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x19, 0xffffff);
- uint32_t x54 = cmovznz32(x53, 0x0, 0xffffffff);
- uint32_t x55 = (x54 & 0x1fffffd);
- uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x22, Return x55);
- uint32_t x59 = (x54 & 0xffffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x25, Return x59);
- uint32_t x63 = (x54 & 0xffffff);
- uint32_t x65, uint8_t x66 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x28, Return x63);
- uint32_t x67 = (x54 & 0xffffff);
- uint32_t x69, uint8_t x70 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x31, Return x67);
- uint32_t x71 = (x54 & 0xffffff);
- uint32_t x73, uint8_t x74 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x34, Return x71);
- uint32_t x75 = (x54 & 0x1ffffff);
- uint32_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x37, Return x75);
- uint32_t x79 = (x54 & 0xffffff);
- uint32_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x40, Return x79);
- uint32_t x83 = (x54 & 0xffffff);
- uint32_t x85, uint8_t x86 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x43, Return x83);
- uint32_t x87 = (x54 & 0xffffff);
- uint32_t x89, uint8_t x90 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x46, Return x87);
- uint32_t x91 = (x54 & 0xffffff);
- uint32_t x93, uint8_t x94 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x49, Return x91);
- uint32_t x95 = (x54 & 0xffffff);
- uint32_t x97, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x94, Return x52, Return x95);
- (Return x97, Return x93, Return x89, Return x85, Return x81, Return x77, Return x73, Return x69, Return x65, Return x61, Return x57))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e266m3_11limbs/freezeDisplay.v b/src/Specific/solinas32_2e266m3_11limbs/freezeDisplay.v
deleted file mode 100644
index 504e6a5ce..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e266m3_11limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e266m3_11limbs/py_interpreter.sh b/src/Specific/solinas32_2e266m3_11limbs/py_interpreter.sh
deleted file mode 100755
index 1e23dabd9..000000000
--- a/src/Specific/solinas32_2e266m3_11limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**266 - 3' -Dmodulus_bytes='24 + 2/11' -Da24='121665'
diff --git a/src/Specific/solinas32_2e285m9_11limbs/CurveParameters.v b/src/Specific/solinas32_2e285m9_11limbs/CurveParameters.v
deleted file mode 100644
index 294357ffb..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^285 - 9
-Base: 25 + 10/11
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 11%nat;
- base := 25 + 10/11;
- bitwidth := 32;
- s := 2^285;
- c := [(1, 9)];
- carry_chains := Some [seq 0 (pred 11); [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_2e285m9_11limbs/Synthesis.v b/src/Specific/solinas32_2e285m9_11limbs/Synthesis.v
deleted file mode 100644
index 41b7b0bdd..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e285m9_11limbs.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_2e285m9_11limbs/compiler.sh b/src/Specific/solinas32_2e285m9_11limbs/compiler.sh
deleted file mode 100755
index a45f0535d..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,25}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='36' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<285) - 9' "$@"
diff --git a/src/Specific/solinas32_2e285m9_11limbs/compilerxx.sh b/src/Specific/solinas32_2e285m9_11limbs/compilerxx.sh
deleted file mode 100755
index fdd01e7e2..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{26,26,26,26,26,26,26,26,26,26,25}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='36' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<285) - 9' "$@"
diff --git a/src/Specific/solinas32_2e285m9_11limbs/feadd.c b/src/Specific/solinas32_2e285m9_11limbs/feadd.c
deleted file mode 100644
index 1763e8727..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/feadd.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void feadd(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- out[0] = (x5 + x25);
- out[1] = (x7 + x27);
- out[2] = (x9 + x29);
- out[3] = (x11 + x31);
- out[4] = (x13 + x33);
- out[5] = (x15 + x35);
- out[6] = (x17 + x37);
- out[7] = (x19 + x39);
- out[8] = (x21 + x41);
- out[9] = (x23 + x43);
- out[10] = (x22 + x42);
- }}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e285m9_11limbs/feadd.v b/src/Specific/solinas32_2e285m9_11limbs/feadd.v
deleted file mode 100644
index 2f74f39a7..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e285m9_11limbs.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_2e285m9_11limbs/feaddDisplay.log b/src/Specific/solinas32_2e285m9_11limbs/feaddDisplay.log
deleted file mode 100644
index 433ecbc2e..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- ((x22 + x42), (x23 + x43), (x21 + x41), (x19 + x39), (x17 + x37), (x15 + x35), (x13 + x33), (x11 + x31), (x9 + x29), (x7 + x27), (x5 + x25)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e285m9_11limbs/feaddDisplay.v b/src/Specific/solinas32_2e285m9_11limbs/feaddDisplay.v
deleted file mode 100644
index 35220de3a..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e285m9_11limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e285m9_11limbs/fecarry.v b/src/Specific/solinas32_2e285m9_11limbs/fecarry.v
deleted file mode 100644
index 4f77d33ea..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e285m9_11limbs.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_2e285m9_11limbs/fecarryDisplay.v b/src/Specific/solinas32_2e285m9_11limbs/fecarryDisplay.v
deleted file mode 100644
index 6e1c3a2b5..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e285m9_11limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e285m9_11limbs/femul.c b/src/Specific/solinas32_2e285m9_11limbs/femul.c
deleted file mode 100644
index bc8435d1c..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/femul.c
+++ /dev/null
@@ -1,85 +0,0 @@
-static void femul(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- { uint64_t x44 = (((uint64_t)x5 * x42) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (((uint64_t)x21 * x29) + (((uint64_t)x23 * x27) + ((uint64_t)x22 * x25)))))))))));
- { uint64_t x45 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + (((uint64_t)x21 * x27) + ((uint64_t)x23 * x25)))))))))) + (0x9 * (0x2 * ((uint64_t)x22 * x42))));
- { uint64_t x46 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + ((uint64_t)x21 * x25))))))))) + (0x9 * ((0x2 * ((uint64_t)x23 * x42)) + (0x2 * ((uint64_t)x22 * x43)))));
- { uint64_t x47 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + (((uint64_t)x17 * x27) + ((uint64_t)x19 * x25)))))))) + (0x9 * ((0x2 * ((uint64_t)x21 * x42)) + ((0x2 * ((uint64_t)x23 * x43)) + (0x2 * ((uint64_t)x22 * x41))))));
- { uint64_t x48 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + ((uint64_t)x17 * x25))))))) + (0x9 * ((0x2 * ((uint64_t)x19 * x42)) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + (0x2 * ((uint64_t)x22 * x39)))))));
- { uint64_t x49 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + ((uint64_t)x15 * x25)))))) + (0x9 * ((0x2 * ((uint64_t)x17 * x42)) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + (0x2 * ((uint64_t)x22 * x37))))))));
- { uint64_t x50 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + ((uint64_t)x13 * x25))))) + (0x9 * ((0x2 * ((uint64_t)x15 * x42)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + (0x2 * ((uint64_t)x22 * x35)))))))));
- { uint64_t x51 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + ((uint64_t)x11 * x25)))) + (0x9 * ((0x2 * ((uint64_t)x13 * x42)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + ((0x2 * ((uint64_t)x23 * x35)) + (0x2 * ((uint64_t)x22 * x33))))))))));
- { uint64_t x52 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((uint64_t)x9 * x25))) + (0x9 * ((0x2 * ((uint64_t)x11 * x42)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + ((0x2 * ((uint64_t)x21 * x35)) + ((0x2 * ((uint64_t)x23 * x33)) + (0x2 * ((uint64_t)x22 * x31)))))))))));
- { uint64_t x53 = ((((uint64_t)x5 * x27) + ((uint64_t)x7 * x25)) + (0x9 * ((0x2 * ((uint64_t)x9 * x42)) + ((0x2 * ((uint64_t)x11 * x43)) + ((0x2 * ((uint64_t)x13 * x41)) + ((0x2 * ((uint64_t)x15 * x39)) + ((0x2 * ((uint64_t)x17 * x37)) + ((0x2 * ((uint64_t)x19 * x35)) + ((0x2 * ((uint64_t)x21 * x33)) + ((0x2 * ((uint64_t)x23 * x31)) + (0x2 * ((uint64_t)x22 * x29))))))))))));
- { uint64_t x54 = (((uint64_t)x5 * x25) + (0x9 * ((0x2 * ((uint64_t)x7 * x42)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((0x2 * ((uint64_t)x17 * x35)) + ((0x2 * ((uint64_t)x19 * x33)) + ((0x2 * ((uint64_t)x21 * x31)) + ((0x2 * ((uint64_t)x23 * x29)) + (0x2 * ((uint64_t)x22 * x27)))))))))))));
- { uint64_t x55 = (x54 >> 0x1a);
- { uint32_t x56 = ((uint32_t)x54 & 0x3ffffff);
- { uint64_t x57 = (x55 + x53);
- { uint64_t x58 = (x57 >> 0x1a);
- { uint32_t x59 = ((uint32_t)x57 & 0x3ffffff);
- { uint64_t x60 = (x58 + x52);
- { uint64_t x61 = (x60 >> 0x1a);
- { uint32_t x62 = ((uint32_t)x60 & 0x3ffffff);
- { uint64_t x63 = (x61 + x51);
- { uint64_t x64 = (x63 >> 0x1a);
- { uint32_t x65 = ((uint32_t)x63 & 0x3ffffff);
- { uint64_t x66 = (x64 + x50);
- { uint64_t x67 = (x66 >> 0x1a);
- { uint32_t x68 = ((uint32_t)x66 & 0x3ffffff);
- { uint64_t x69 = (x67 + x49);
- { uint64_t x70 = (x69 >> 0x1a);
- { uint32_t x71 = ((uint32_t)x69 & 0x3ffffff);
- { uint64_t x72 = (x70 + x48);
- { uint64_t x73 = (x72 >> 0x1a);
- { uint32_t x74 = ((uint32_t)x72 & 0x3ffffff);
- { uint64_t x75 = (x73 + x47);
- { uint64_t x76 = (x75 >> 0x1a);
- { uint32_t x77 = ((uint32_t)x75 & 0x3ffffff);
- { uint64_t x78 = (x76 + x46);
- { uint64_t x79 = (x78 >> 0x1a);
- { uint32_t x80 = ((uint32_t)x78 & 0x3ffffff);
- { uint64_t x81 = (x79 + x45);
- { uint64_t x82 = (x81 >> 0x1a);
- { uint32_t x83 = ((uint32_t)x81 & 0x3ffffff);
- { uint64_t x84 = (x82 + x44);
- { uint64_t x85 = (x84 >> 0x19);
- { uint32_t x86 = ((uint32_t)x84 & 0x1ffffff);
- { uint64_t x87 = (x56 + (0x9 * x85));
- { uint32_t x88 = (uint32_t) (x87 >> 0x1a);
- { uint32_t x89 = ((uint32_t)x87 & 0x3ffffff);
- { uint32_t x90 = (x88 + x59);
- { uint32_t x91 = (x90 >> 0x1a);
- { uint32_t x92 = (x90 & 0x3ffffff);
- out[0] = x89;
- out[1] = x92;
- out[2] = (x91 + x62);
- out[3] = x65;
- out[4] = x68;
- out[5] = x71;
- out[6] = x74;
- out[7] = x77;
- out[8] = x80;
- out[9] = x83;
- out[10] = x86;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e285m9_11limbs/femul.v b/src/Specific/solinas32_2e285m9_11limbs/femul.v
deleted file mode 100644
index 48dd51577..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e285m9_11limbs.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_2e285m9_11limbs/femulDisplay.log b/src/Specific/solinas32_2e285m9_11limbs/femulDisplay.log
deleted file mode 100644
index 16a3015c5..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/femulDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- uint64_t x44 = (((uint64_t)x5 * x42) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (((uint64_t)x21 * x29) + (((uint64_t)x23 * x27) + ((uint64_t)x22 * x25)))))))))));
- uint64_t x45 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + (((uint64_t)x21 * x27) + ((uint64_t)x23 * x25)))))))))) + (0x9 * (0x2 * ((uint64_t)x22 * x42))));
- uint64_t x46 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + (((uint64_t)x19 * x27) + ((uint64_t)x21 * x25))))))))) + (0x9 * ((0x2 * ((uint64_t)x23 * x42)) + (0x2 * ((uint64_t)x22 * x43)))));
- uint64_t x47 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + (((uint64_t)x17 * x27) + ((uint64_t)x19 * x25)))))))) + (0x9 * ((0x2 * ((uint64_t)x21 * x42)) + ((0x2 * ((uint64_t)x23 * x43)) + (0x2 * ((uint64_t)x22 * x41))))));
- uint64_t x48 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + (((uint64_t)x15 * x27) + ((uint64_t)x17 * x25))))))) + (0x9 * ((0x2 * ((uint64_t)x19 * x42)) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + (0x2 * ((uint64_t)x22 * x39)))))));
- uint64_t x49 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + ((uint64_t)x15 * x25)))))) + (0x9 * ((0x2 * ((uint64_t)x17 * x42)) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + (0x2 * ((uint64_t)x22 * x37))))))));
- uint64_t x50 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + (((uint64_t)x11 * x27) + ((uint64_t)x13 * x25))))) + (0x9 * ((0x2 * ((uint64_t)x15 * x42)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + (0x2 * ((uint64_t)x22 * x35)))))))));
- uint64_t x51 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + ((uint64_t)x11 * x25)))) + (0x9 * ((0x2 * ((uint64_t)x13 * x42)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + ((0x2 * ((uint64_t)x23 * x35)) + (0x2 * ((uint64_t)x22 * x33))))))))));
- uint64_t x52 = ((((uint64_t)x5 * x29) + (((uint64_t)x7 * x27) + ((uint64_t)x9 * x25))) + (0x9 * ((0x2 * ((uint64_t)x11 * x42)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + ((0x2 * ((uint64_t)x21 * x35)) + ((0x2 * ((uint64_t)x23 * x33)) + (0x2 * ((uint64_t)x22 * x31)))))))))));
- uint64_t x53 = ((((uint64_t)x5 * x27) + ((uint64_t)x7 * x25)) + (0x9 * ((0x2 * ((uint64_t)x9 * x42)) + ((0x2 * ((uint64_t)x11 * x43)) + ((0x2 * ((uint64_t)x13 * x41)) + ((0x2 * ((uint64_t)x15 * x39)) + ((0x2 * ((uint64_t)x17 * x37)) + ((0x2 * ((uint64_t)x19 * x35)) + ((0x2 * ((uint64_t)x21 * x33)) + ((0x2 * ((uint64_t)x23 * x31)) + (0x2 * ((uint64_t)x22 * x29))))))))))));
- uint64_t x54 = (((uint64_t)x5 * x25) + (0x9 * ((0x2 * ((uint64_t)x7 * x42)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((0x2 * ((uint64_t)x17 * x35)) + ((0x2 * ((uint64_t)x19 * x33)) + ((0x2 * ((uint64_t)x21 * x31)) + ((0x2 * ((uint64_t)x23 * x29)) + (0x2 * ((uint64_t)x22 * x27)))))))))))));
- uint64_t x55 = (x54 >> 0x1a);
- uint32_t x56 = ((uint32_t)x54 & 0x3ffffff);
- uint64_t x57 = (x55 + x53);
- uint64_t x58 = (x57 >> 0x1a);
- uint32_t x59 = ((uint32_t)x57 & 0x3ffffff);
- uint64_t x60 = (x58 + x52);
- uint64_t x61 = (x60 >> 0x1a);
- uint32_t x62 = ((uint32_t)x60 & 0x3ffffff);
- uint64_t x63 = (x61 + x51);
- uint64_t x64 = (x63 >> 0x1a);
- uint32_t x65 = ((uint32_t)x63 & 0x3ffffff);
- uint64_t x66 = (x64 + x50);
- uint64_t x67 = (x66 >> 0x1a);
- uint32_t x68 = ((uint32_t)x66 & 0x3ffffff);
- uint64_t x69 = (x67 + x49);
- uint64_t x70 = (x69 >> 0x1a);
- uint32_t x71 = ((uint32_t)x69 & 0x3ffffff);
- uint64_t x72 = (x70 + x48);
- uint64_t x73 = (x72 >> 0x1a);
- uint32_t x74 = ((uint32_t)x72 & 0x3ffffff);
- uint64_t x75 = (x73 + x47);
- uint64_t x76 = (x75 >> 0x1a);
- uint32_t x77 = ((uint32_t)x75 & 0x3ffffff);
- uint64_t x78 = (x76 + x46);
- uint64_t x79 = (x78 >> 0x1a);
- uint32_t x80 = ((uint32_t)x78 & 0x3ffffff);
- uint64_t x81 = (x79 + x45);
- uint64_t x82 = (x81 >> 0x1a);
- uint32_t x83 = ((uint32_t)x81 & 0x3ffffff);
- uint64_t x84 = (x82 + x44);
- uint64_t x85 = (x84 >> 0x19);
- uint32_t x86 = ((uint32_t)x84 & 0x1ffffff);
- uint64_t x87 = (x56 + (0x9 * x85));
- uint32_t x88 = (uint32_t) (x87 >> 0x1a);
- uint32_t x89 = ((uint32_t)x87 & 0x3ffffff);
- uint32_t x90 = (x88 + x59);
- uint32_t x91 = (x90 >> 0x1a);
- uint32_t x92 = (x90 & 0x3ffffff);
- return (Return x86, Return x83, Return x80, Return x77, Return x74, Return x71, Return x68, Return x65, (x91 + x62), Return x92, Return x89))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e285m9_11limbs/femulDisplay.v b/src/Specific/solinas32_2e285m9_11limbs/femulDisplay.v
deleted file mode 100644
index 5c98c924a..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e285m9_11limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e285m9_11limbs/fesquare.c b/src/Specific/solinas32_2e285m9_11limbs/fesquare.c
deleted file mode 100644
index 946053ad5..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/fesquare.c
+++ /dev/null
@@ -1,74 +0,0 @@
-static void fesquare(uint32_t out[11], const uint32_t in1[11]) {
- { const uint32_t x19 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x21 = (((uint64_t)x2 * x19) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x19 * x2)))))))))));
- { uint64_t x22 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x9 * (0x2 * ((uint64_t)x19 * x19))));
- { uint64_t x23 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x9 * ((0x2 * ((uint64_t)x20 * x19)) + (0x2 * ((uint64_t)x19 * x20)))));
- { uint64_t x24 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x9 * ((0x2 * ((uint64_t)x18 * x19)) + ((0x2 * ((uint64_t)x20 * x20)) + (0x2 * ((uint64_t)x19 * x18))))));
- { uint64_t x25 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x9 * ((0x2 * ((uint64_t)x16 * x19)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (0x2 * ((uint64_t)x19 * x16)))))));
- { uint64_t x26 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x9 * ((0x2 * ((uint64_t)x14 * x19)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + (0x2 * ((uint64_t)x19 * x14))))))));
- { uint64_t x27 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x9 * ((0x2 * ((uint64_t)x12 * x19)) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + (0x2 * ((uint64_t)x19 * x12)))))))));
- { uint64_t x28 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x9 * ((0x2 * ((uint64_t)x10 * x19)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + (0x2 * ((uint64_t)x19 * x10))))))))));
- { uint64_t x29 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x9 * ((0x2 * ((uint64_t)x8 * x19)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + (0x2 * ((uint64_t)x19 * x8)))))))))));
- { uint64_t x30 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x9 * ((0x2 * ((uint64_t)x6 * x19)) + ((0x2 * ((uint64_t)x8 * x20)) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + ((0x2 * ((uint64_t)x20 * x8)) + (0x2 * ((uint64_t)x19 * x6))))))))))));
- { uint64_t x31 = (((uint64_t)x2 * x2) + (0x9 * ((0x2 * ((uint64_t)x4 * x19)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + (0x2 * ((uint64_t)x19 * x4)))))))))))));
- { uint64_t x32 = (x31 >> 0x1a);
- { uint32_t x33 = ((uint32_t)x31 & 0x3ffffff);
- { uint64_t x34 = (x32 + x30);
- { uint64_t x35 = (x34 >> 0x1a);
- { uint32_t x36 = ((uint32_t)x34 & 0x3ffffff);
- { uint64_t x37 = (x35 + x29);
- { uint64_t x38 = (x37 >> 0x1a);
- { uint32_t x39 = ((uint32_t)x37 & 0x3ffffff);
- { uint64_t x40 = (x38 + x28);
- { uint64_t x41 = (x40 >> 0x1a);
- { uint32_t x42 = ((uint32_t)x40 & 0x3ffffff);
- { uint64_t x43 = (x41 + x27);
- { uint64_t x44 = (x43 >> 0x1a);
- { uint32_t x45 = ((uint32_t)x43 & 0x3ffffff);
- { uint64_t x46 = (x44 + x26);
- { uint64_t x47 = (x46 >> 0x1a);
- { uint32_t x48 = ((uint32_t)x46 & 0x3ffffff);
- { uint64_t x49 = (x47 + x25);
- { uint64_t x50 = (x49 >> 0x1a);
- { uint32_t x51 = ((uint32_t)x49 & 0x3ffffff);
- { uint64_t x52 = (x50 + x24);
- { uint64_t x53 = (x52 >> 0x1a);
- { uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- { uint64_t x55 = (x53 + x23);
- { uint64_t x56 = (x55 >> 0x1a);
- { uint32_t x57 = ((uint32_t)x55 & 0x3ffffff);
- { uint64_t x58 = (x56 + x22);
- { uint64_t x59 = (x58 >> 0x1a);
- { uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- { uint64_t x61 = (x59 + x21);
- { uint64_t x62 = (x61 >> 0x19);
- { uint32_t x63 = ((uint32_t)x61 & 0x1ffffff);
- { uint64_t x64 = (x33 + (0x9 * x62));
- { uint32_t x65 = (uint32_t) (x64 >> 0x1a);
- { uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- { uint32_t x67 = (x65 + x36);
- { uint32_t x68 = (x67 >> 0x1a);
- { uint32_t x69 = (x67 & 0x3ffffff);
- out[0] = x66;
- out[1] = x69;
- out[2] = (x68 + x39);
- out[3] = x42;
- out[4] = x45;
- out[5] = x48;
- out[6] = x51;
- out[7] = x54;
- out[8] = x57;
- out[9] = x60;
- out[10] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e285m9_11limbs/fesquare.v b/src/Specific/solinas32_2e285m9_11limbs/fesquare.v
deleted file mode 100644
index 3fcd3a25e..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e285m9_11limbs.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_2e285m9_11limbs/fesquareDisplay.log b/src/Specific/solinas32_2e285m9_11limbs/fesquareDisplay.log
deleted file mode 100644
index bb4abd070..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x21 = (((uint64_t)x2 * x19) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x19 * x2)))))))))));
- uint64_t x22 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x9 * (0x2 * ((uint64_t)x19 * x19))));
- uint64_t x23 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x9 * ((0x2 * ((uint64_t)x20 * x19)) + (0x2 * ((uint64_t)x19 * x20)))));
- uint64_t x24 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x9 * ((0x2 * ((uint64_t)x18 * x19)) + ((0x2 * ((uint64_t)x20 * x20)) + (0x2 * ((uint64_t)x19 * x18))))));
- uint64_t x25 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x9 * ((0x2 * ((uint64_t)x16 * x19)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (0x2 * ((uint64_t)x19 * x16)))))));
- uint64_t x26 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x9 * ((0x2 * ((uint64_t)x14 * x19)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + (0x2 * ((uint64_t)x19 * x14))))))));
- uint64_t x27 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x9 * ((0x2 * ((uint64_t)x12 * x19)) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + (0x2 * ((uint64_t)x19 * x12)))))))));
- uint64_t x28 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x9 * ((0x2 * ((uint64_t)x10 * x19)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + (0x2 * ((uint64_t)x19 * x10))))))))));
- uint64_t x29 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x9 * ((0x2 * ((uint64_t)x8 * x19)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + (0x2 * ((uint64_t)x19 * x8)))))))))));
- uint64_t x30 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x9 * ((0x2 * ((uint64_t)x6 * x19)) + ((0x2 * ((uint64_t)x8 * x20)) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + ((0x2 * ((uint64_t)x20 * x8)) + (0x2 * ((uint64_t)x19 * x6))))))))))));
- uint64_t x31 = (((uint64_t)x2 * x2) + (0x9 * ((0x2 * ((uint64_t)x4 * x19)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + (0x2 * ((uint64_t)x19 * x4)))))))))))));
- uint64_t x32 = (x31 >> 0x1a);
- uint32_t x33 = ((uint32_t)x31 & 0x3ffffff);
- uint64_t x34 = (x32 + x30);
- uint64_t x35 = (x34 >> 0x1a);
- uint32_t x36 = ((uint32_t)x34 & 0x3ffffff);
- uint64_t x37 = (x35 + x29);
- uint64_t x38 = (x37 >> 0x1a);
- uint32_t x39 = ((uint32_t)x37 & 0x3ffffff);
- uint64_t x40 = (x38 + x28);
- uint64_t x41 = (x40 >> 0x1a);
- uint32_t x42 = ((uint32_t)x40 & 0x3ffffff);
- uint64_t x43 = (x41 + x27);
- uint64_t x44 = (x43 >> 0x1a);
- uint32_t x45 = ((uint32_t)x43 & 0x3ffffff);
- uint64_t x46 = (x44 + x26);
- uint64_t x47 = (x46 >> 0x1a);
- uint32_t x48 = ((uint32_t)x46 & 0x3ffffff);
- uint64_t x49 = (x47 + x25);
- uint64_t x50 = (x49 >> 0x1a);
- uint32_t x51 = ((uint32_t)x49 & 0x3ffffff);
- uint64_t x52 = (x50 + x24);
- uint64_t x53 = (x52 >> 0x1a);
- uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- uint64_t x55 = (x53 + x23);
- uint64_t x56 = (x55 >> 0x1a);
- uint32_t x57 = ((uint32_t)x55 & 0x3ffffff);
- uint64_t x58 = (x56 + x22);
- uint64_t x59 = (x58 >> 0x1a);
- uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- uint64_t x61 = (x59 + x21);
- uint64_t x62 = (x61 >> 0x19);
- uint32_t x63 = ((uint32_t)x61 & 0x1ffffff);
- uint64_t x64 = (x33 + (0x9 * x62));
- uint32_t x65 = (uint32_t) (x64 >> 0x1a);
- uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- uint32_t x67 = (x65 + x36);
- uint32_t x68 = (x67 >> 0x1a);
- uint32_t x69 = (x67 & 0x3ffffff);
- return (Return x63, Return x60, Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, (x68 + x39), Return x69, Return x66))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e285m9_11limbs/fesquareDisplay.v b/src/Specific/solinas32_2e285m9_11limbs/fesquareDisplay.v
deleted file mode 100644
index c5a3add1e..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e285m9_11limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e285m9_11limbs/fesub.c b/src/Specific/solinas32_2e285m9_11limbs/fesub.c
deleted file mode 100644
index 807ea8e69..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/fesub.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void fesub(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- out[0] = ((0x7ffffee + x5) - x25);
- out[1] = ((0x7fffffe + x7) - x27);
- out[2] = ((0x7fffffe + x9) - x29);
- out[3] = ((0x7fffffe + x11) - x31);
- out[4] = ((0x7fffffe + x13) - x33);
- out[5] = ((0x7fffffe + x15) - x35);
- out[6] = ((0x7fffffe + x17) - x37);
- out[7] = ((0x7fffffe + x19) - x39);
- out[8] = ((0x7fffffe + x21) - x41);
- out[9] = ((0x7fffffe + x23) - x43);
- out[10] = ((0x3fffffe + x22) - x42);
- }}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e285m9_11limbs/fesub.v b/src/Specific/solinas32_2e285m9_11limbs/fesub.v
deleted file mode 100644
index f9a29a140..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e285m9_11limbs.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_2e285m9_11limbs/fesubDisplay.log b/src/Specific/solinas32_2e285m9_11limbs/fesubDisplay.log
deleted file mode 100644
index 3e919b374..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- (((0x3fffffe + x22) - x42), ((0x7fffffe + x23) - x43), ((0x7fffffe + x21) - x41), ((0x7fffffe + x19) - x39), ((0x7fffffe + x17) - x37), ((0x7fffffe + x15) - x35), ((0x7fffffe + x13) - x33), ((0x7fffffe + x11) - x31), ((0x7fffffe + x9) - x29), ((0x7fffffe + x7) - x27), ((0x7ffffee + x5) - x25)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e285m9_11limbs/fesubDisplay.v b/src/Specific/solinas32_2e285m9_11limbs/fesubDisplay.v
deleted file mode 100644
index 0a00ab15f..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e285m9_11limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e285m9_11limbs/freeze.c b/src/Specific/solinas32_2e285m9_11limbs/freeze.c
deleted file mode 100644
index 4141edb68..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/freeze.c
+++ /dev/null
@@ -1,59 +0,0 @@
-static void freeze(uint32_t out[11], const uint32_t in1[11]) {
- { const uint32_t x19 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffff7);
- { uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x4, 0x3ffffff);
- { uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x6, 0x3ffffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x8, 0x3ffffff);
- { uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x10, 0x3ffffff);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x12, 0x3ffffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x14, 0x3ffffff);
- { uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x16, 0x3ffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x18, 0x3ffffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x20, 0x3ffffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x19, 0x1ffffff);
- { uint32_t x54 = cmovznz32(x53, 0x0, 0xffffffff);
- { uint32_t x55 = (x54 & 0x3fffff7);
- { uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x22, Return x55);
- { uint32_t x59 = (x54 & 0x3ffffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x25, Return x59);
- { uint32_t x63 = (x54 & 0x3ffffff);
- { uint32_t x65, uint8_t x66 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x28, Return x63);
- { uint32_t x67 = (x54 & 0x3ffffff);
- { uint32_t x69, uint8_t x70 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x31, Return x67);
- { uint32_t x71 = (x54 & 0x3ffffff);
- { uint32_t x73, uint8_t x74 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x34, Return x71);
- { uint32_t x75 = (x54 & 0x3ffffff);
- { uint32_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x37, Return x75);
- { uint32_t x79 = (x54 & 0x3ffffff);
- { uint32_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x40, Return x79);
- { uint32_t x83 = (x54 & 0x3ffffff);
- { uint32_t x85, uint8_t x86 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x43, Return x83);
- { uint32_t x87 = (x54 & 0x3ffffff);
- { uint32_t x89, uint8_t x90 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x46, Return x87);
- { uint32_t x91 = (x54 & 0x3ffffff);
- { uint32_t x93, uint8_t x94 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x49, Return x91);
- { uint32_t x95 = (x54 & 0x1ffffff);
- { uint32_t x97, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x94, Return x52, Return x95);
- out[0] = x57;
- out[1] = x61;
- out[2] = x65;
- out[3] = x69;
- out[4] = x73;
- out[5] = x77;
- out[6] = x81;
- out[7] = x85;
- out[8] = x89;
- out[9] = x93;
- out[10] = x97;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e285m9_11limbs/freeze.v b/src/Specific/solinas32_2e285m9_11limbs/freeze.v
deleted file mode 100644
index 6d017f73b..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e285m9_11limbs.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_2e285m9_11limbs/freezeDisplay.log b/src/Specific/solinas32_2e285m9_11limbs/freezeDisplay.log
deleted file mode 100644
index 58192bea0..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/freezeDisplay.log
+++ /dev/null
@@ -1,41 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffff7);
- uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x4, 0x3ffffff);
- uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x6, 0x3ffffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x8, 0x3ffffff);
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x10, 0x3ffffff);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x12, 0x3ffffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x14, 0x3ffffff);
- uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x16, 0x3ffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x18, 0x3ffffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x20, 0x3ffffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x19, 0x1ffffff);
- uint32_t x54 = cmovznz32(x53, 0x0, 0xffffffff);
- uint32_t x55 = (x54 & 0x3fffff7);
- uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x22, Return x55);
- uint32_t x59 = (x54 & 0x3ffffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x25, Return x59);
- uint32_t x63 = (x54 & 0x3ffffff);
- uint32_t x65, uint8_t x66 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x28, Return x63);
- uint32_t x67 = (x54 & 0x3ffffff);
- uint32_t x69, uint8_t x70 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x31, Return x67);
- uint32_t x71 = (x54 & 0x3ffffff);
- uint32_t x73, uint8_t x74 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x34, Return x71);
- uint32_t x75 = (x54 & 0x3ffffff);
- uint32_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x37, Return x75);
- uint32_t x79 = (x54 & 0x3ffffff);
- uint32_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x40, Return x79);
- uint32_t x83 = (x54 & 0x3ffffff);
- uint32_t x85, uint8_t x86 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x43, Return x83);
- uint32_t x87 = (x54 & 0x3ffffff);
- uint32_t x89, uint8_t x90 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x46, Return x87);
- uint32_t x91 = (x54 & 0x3ffffff);
- uint32_t x93, uint8_t x94 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x49, Return x91);
- uint32_t x95 = (x54 & 0x1ffffff);
- uint32_t x97, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x94, Return x52, Return x95);
- (Return x97, Return x93, Return x89, Return x85, Return x81, Return x77, Return x73, Return x69, Return x65, Return x61, Return x57))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e285m9_11limbs/freezeDisplay.v b/src/Specific/solinas32_2e285m9_11limbs/freezeDisplay.v
deleted file mode 100644
index 2b580d82c..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e285m9_11limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e285m9_11limbs/py_interpreter.sh b/src/Specific/solinas32_2e285m9_11limbs/py_interpreter.sh
deleted file mode 100755
index a68a0ab06..000000000
--- a/src/Specific/solinas32_2e285m9_11limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**285 - 9' -Dmodulus_bytes='25 + 10/11' -Da24='121665'
diff --git a/src/Specific/solinas32_2e285m9_12limbs/CurveParameters.v b/src/Specific/solinas32_2e285m9_12limbs/CurveParameters.v
deleted file mode 100644
index 9aeb0455a..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^285 - 9
-Base: 23.75
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 12%nat;
- base := 23 + 3/4;
- bitwidth := 32;
- s := 2^285;
- c := [(1, 9)];
- carry_chains := Some [seq 0 (pred 12); [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_2e285m9_12limbs/Synthesis.v b/src/Specific/solinas32_2e285m9_12limbs/Synthesis.v
deleted file mode 100644
index 1d229e3eb..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e285m9_12limbs.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_2e285m9_12limbs/compiler.sh b/src/Specific/solinas32_2e285m9_12limbs/compiler.sh
deleted file mode 100755
index 9726f44ee..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,24,23,24,24,24,23,24,24,24,23}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='36' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<285) - 9' "$@"
diff --git a/src/Specific/solinas32_2e285m9_12limbs/compilerxx.sh b/src/Specific/solinas32_2e285m9_12limbs/compilerxx.sh
deleted file mode 100755
index 6c02ec958..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='32' -Dlimb_weight_gaps_array='{24,24,24,23,24,24,24,23,24,24,24,23}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='36' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<285) - 9' "$@"
diff --git a/src/Specific/solinas32_2e285m9_12limbs/feadd.c b/src/Specific/solinas32_2e285m9_12limbs/feadd.c
deleted file mode 100644
index 68eccd2bc..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/feadd.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void feadd(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- out[0] = (x5 + x27);
- out[1] = (x7 + x29);
- out[2] = (x9 + x31);
- out[3] = (x11 + x33);
- out[4] = (x13 + x35);
- out[5] = (x15 + x37);
- out[6] = (x17 + x39);
- out[7] = (x19 + x41);
- out[8] = (x21 + x43);
- out[9] = (x23 + x45);
- out[10] = (x25 + x47);
- out[11] = (x24 + x46);
- }}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e285m9_12limbs/feadd.v b/src/Specific/solinas32_2e285m9_12limbs/feadd.v
deleted file mode 100644
index 7a87d3912..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e285m9_12limbs.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_2e285m9_12limbs/feaddDisplay.log b/src/Specific/solinas32_2e285m9_12limbs/feaddDisplay.log
deleted file mode 100644
index 4109af59c..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- ((x24 + x46), (x25 + x47), (x23 + x45), (x21 + x43), (x19 + x41), (x17 + x39), (x15 + x37), (x13 + x35), (x11 + x33), (x9 + x31), (x7 + x29), (x5 + x27)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e285m9_12limbs/feaddDisplay.v b/src/Specific/solinas32_2e285m9_12limbs/feaddDisplay.v
deleted file mode 100644
index 7cbc58010..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e285m9_12limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e285m9_12limbs/fecarry.v b/src/Specific/solinas32_2e285m9_12limbs/fecarry.v
deleted file mode 100644
index 0dbbcdaa5..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e285m9_12limbs.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_2e285m9_12limbs/fecarryDisplay.v b/src/Specific/solinas32_2e285m9_12limbs/fecarryDisplay.v
deleted file mode 100644
index e9d59ca80..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e285m9_12limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e285m9_12limbs/femul.c b/src/Specific/solinas32_2e285m9_12limbs/femul.c
deleted file mode 100644
index f8b4b9365..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/femul.c
+++ /dev/null
@@ -1,92 +0,0 @@
-static void femul(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- { uint64_t x48 = (((uint64_t)x5 * x46) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + (((uint64_t)x23 * x31) + (((uint64_t)x25 * x29) + ((uint64_t)x24 * x27))))))))))));
- { uint64_t x49 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + ((0x2 * ((uint64_t)x11 * x41)) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + ((0x2 * ((uint64_t)x19 * x33)) + (((uint64_t)x21 * x31) + (((uint64_t)x23 * x29) + ((uint64_t)x25 * x27))))))))))) + (0x9 * (0x2 * ((uint64_t)x24 * x46))));
- { uint64_t x50 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + ((0x2 * ((uint64_t)x17 * x33)) + ((0x2 * ((uint64_t)x19 * x31)) + (((uint64_t)x21 * x29) + ((uint64_t)x23 * x27)))))))))) + (0x9 * ((0x2 * ((uint64_t)x25 * x46)) + (0x2 * ((uint64_t)x24 * x47)))));
- { uint64_t x51 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + (((uint64_t)x13 * x35) + ((0x2 * ((uint64_t)x15 * x33)) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((uint64_t)x21 * x27))))))))) + (0x9 * ((0x2 * ((uint64_t)x23 * x46)) + ((0x2 * ((uint64_t)x25 * x47)) + (0x2 * ((uint64_t)x24 * x45))))));
- { uint64_t x52 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x19 * x27)))))))) + (0x9 * (((uint64_t)x21 * x46) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + ((uint64_t)x24 * x43))))));
- { uint64_t x53 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + ((0x2 * ((uint64_t)x11 * x33)) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + ((uint64_t)x17 * x27))))))) + (0x9 * ((0x2 * ((uint64_t)x19 * x46)) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + (0x2 * ((uint64_t)x24 * x41))))))));
- { uint64_t x54 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + ((0x2 * ((uint64_t)x9 * x33)) + ((0x2 * ((uint64_t)x11 * x31)) + (((uint64_t)x13 * x29) + ((uint64_t)x15 * x27)))))) + (0x9 * ((0x2 * ((uint64_t)x17 * x46)) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + ((0x2 * ((uint64_t)x25 * x41)) + (0x2 * ((uint64_t)x24 * x39)))))))));
- { uint64_t x55 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((uint64_t)x13 * x27))))) + (0x9 * ((0x2 * ((uint64_t)x15 * x46)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + (0x2 * ((uint64_t)x24 * x37))))))))));
- { uint64_t x56 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + ((uint64_t)x11 * x27)))) + (0x9 * (((uint64_t)x13 * x46) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + (((uint64_t)x25 * x37) + ((uint64_t)x24 * x35))))))))));
- { uint64_t x57 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + ((uint64_t)x9 * x27))) + (0x9 * ((0x2 * ((uint64_t)x11 * x46)) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((0x2 * ((uint64_t)x19 * x41)) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + (((uint64_t)x25 * x35) + (0x2 * ((uint64_t)x24 * x33))))))))))));
- { uint64_t x58 = ((((uint64_t)x5 * x29) + ((uint64_t)x7 * x27)) + (0x9 * ((0x2 * ((uint64_t)x9 * x46)) + ((0x2 * ((uint64_t)x11 * x47)) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + ((0x2 * ((uint64_t)x25 * x33)) + (0x2 * ((uint64_t)x24 * x31)))))))))))));
- { uint64_t x59 = (((uint64_t)x5 * x27) + (0x9 * ((0x2 * ((uint64_t)x7 * x46)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + (((uint64_t)x13 * x43) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + ((0x2 * ((uint64_t)x23 * x33)) + ((0x2 * ((uint64_t)x25 * x31)) + (0x2 * ((uint64_t)x24 * x29))))))))))))));
- { uint64_t x60 = (x59 >> 0x18);
- { uint32_t x61 = ((uint32_t)x59 & 0xffffff);
- { uint64_t x62 = (x60 + x58);
- { uint64_t x63 = (x62 >> 0x18);
- { uint32_t x64 = ((uint32_t)x62 & 0xffffff);
- { uint64_t x65 = (x63 + x57);
- { uint64_t x66 = (x65 >> 0x18);
- { uint32_t x67 = ((uint32_t)x65 & 0xffffff);
- { uint64_t x68 = (x66 + x56);
- { uint64_t x69 = (x68 >> 0x17);
- { uint32_t x70 = ((uint32_t)x68 & 0x7fffff);
- { uint64_t x71 = (x69 + x55);
- { uint64_t x72 = (x71 >> 0x18);
- { uint32_t x73 = ((uint32_t)x71 & 0xffffff);
- { uint64_t x74 = (x72 + x54);
- { uint64_t x75 = (x74 >> 0x18);
- { uint32_t x76 = ((uint32_t)x74 & 0xffffff);
- { uint64_t x77 = (x75 + x53);
- { uint64_t x78 = (x77 >> 0x18);
- { uint32_t x79 = ((uint32_t)x77 & 0xffffff);
- { uint64_t x80 = (x78 + x52);
- { uint64_t x81 = (x80 >> 0x17);
- { uint32_t x82 = ((uint32_t)x80 & 0x7fffff);
- { uint64_t x83 = (x81 + x51);
- { uint64_t x84 = (x83 >> 0x18);
- { uint32_t x85 = ((uint32_t)x83 & 0xffffff);
- { uint64_t x86 = (x84 + x50);
- { uint64_t x87 = (x86 >> 0x18);
- { uint32_t x88 = ((uint32_t)x86 & 0xffffff);
- { uint64_t x89 = (x87 + x49);
- { uint32_t x90 = (uint32_t) (x89 >> 0x18);
- { uint32_t x91 = ((uint32_t)x89 & 0xffffff);
- { uint64_t x92 = (x90 + x48);
- { uint32_t x93 = (uint32_t) (x92 >> 0x17);
- { uint32_t x94 = ((uint32_t)x92 & 0x7fffff);
- { uint64_t x95 = (x61 + ((uint64_t)0x9 * x93));
- { uint32_t x96 = (uint32_t) (x95 >> 0x18);
- { uint32_t x97 = ((uint32_t)x95 & 0xffffff);
- { uint32_t x98 = (x96 + x64);
- { uint32_t x99 = (x98 >> 0x18);
- { uint32_t x100 = (x98 & 0xffffff);
- out[0] = x97;
- out[1] = x100;
- out[2] = (x99 + x67);
- out[3] = x70;
- out[4] = x73;
- out[5] = x76;
- out[6] = x79;
- out[7] = x82;
- out[8] = x85;
- out[9] = x88;
- out[10] = x91;
- out[11] = x94;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e285m9_12limbs/femul.v b/src/Specific/solinas32_2e285m9_12limbs/femul.v
deleted file mode 100644
index a9ca6eb2f..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e285m9_12limbs.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_2e285m9_12limbs/femulDisplay.log b/src/Specific/solinas32_2e285m9_12limbs/femulDisplay.log
deleted file mode 100644
index a60b5f0d7..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/femulDisplay.log
+++ /dev/null
@@ -1,60 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- uint64_t x48 = (((uint64_t)x5 * x46) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + (((uint64_t)x23 * x31) + (((uint64_t)x25 * x29) + ((uint64_t)x24 * x27))))))))))));
- uint64_t x49 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + ((0x2 * ((uint64_t)x11 * x41)) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + ((0x2 * ((uint64_t)x19 * x33)) + (((uint64_t)x21 * x31) + (((uint64_t)x23 * x29) + ((uint64_t)x25 * x27))))))))))) + (0x9 * (0x2 * ((uint64_t)x24 * x46))));
- uint64_t x50 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + ((0x2 * ((uint64_t)x17 * x33)) + ((0x2 * ((uint64_t)x19 * x31)) + (((uint64_t)x21 * x29) + ((uint64_t)x23 * x27)))))))))) + (0x9 * ((0x2 * ((uint64_t)x25 * x46)) + (0x2 * ((uint64_t)x24 * x47)))));
- uint64_t x51 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + (((uint64_t)x13 * x35) + ((0x2 * ((uint64_t)x15 * x33)) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((uint64_t)x21 * x27))))))))) + (0x9 * ((0x2 * ((uint64_t)x23 * x46)) + ((0x2 * ((uint64_t)x25 * x47)) + (0x2 * ((uint64_t)x24 * x45))))));
- uint64_t x52 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x19 * x27)))))))) + (0x9 * (((uint64_t)x21 * x46) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + ((uint64_t)x24 * x43))))));
- uint64_t x53 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + ((0x2 * ((uint64_t)x11 * x33)) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + ((uint64_t)x17 * x27))))))) + (0x9 * ((0x2 * ((uint64_t)x19 * x46)) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + (0x2 * ((uint64_t)x24 * x41))))))));
- uint64_t x54 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + ((0x2 * ((uint64_t)x9 * x33)) + ((0x2 * ((uint64_t)x11 * x31)) + (((uint64_t)x13 * x29) + ((uint64_t)x15 * x27)))))) + (0x9 * ((0x2 * ((uint64_t)x17 * x46)) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + ((0x2 * ((uint64_t)x25 * x41)) + (0x2 * ((uint64_t)x24 * x39)))))))));
- uint64_t x55 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((uint64_t)x13 * x27))))) + (0x9 * ((0x2 * ((uint64_t)x15 * x46)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + (0x2 * ((uint64_t)x24 * x37))))))))));
- uint64_t x56 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + ((uint64_t)x11 * x27)))) + (0x9 * (((uint64_t)x13 * x46) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + (((uint64_t)x25 * x37) + ((uint64_t)x24 * x35))))))))));
- uint64_t x57 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + ((uint64_t)x9 * x27))) + (0x9 * ((0x2 * ((uint64_t)x11 * x46)) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((0x2 * ((uint64_t)x19 * x41)) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + (((uint64_t)x25 * x35) + (0x2 * ((uint64_t)x24 * x33))))))))))));
- uint64_t x58 = ((((uint64_t)x5 * x29) + ((uint64_t)x7 * x27)) + (0x9 * ((0x2 * ((uint64_t)x9 * x46)) + ((0x2 * ((uint64_t)x11 * x47)) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + ((0x2 * ((uint64_t)x25 * x33)) + (0x2 * ((uint64_t)x24 * x31)))))))))))));
- uint64_t x59 = (((uint64_t)x5 * x27) + (0x9 * ((0x2 * ((uint64_t)x7 * x46)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + (((uint64_t)x13 * x43) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + ((0x2 * ((uint64_t)x23 * x33)) + ((0x2 * ((uint64_t)x25 * x31)) + (0x2 * ((uint64_t)x24 * x29))))))))))))));
- uint64_t x60 = (x59 >> 0x18);
- uint32_t x61 = ((uint32_t)x59 & 0xffffff);
- uint64_t x62 = (x60 + x58);
- uint64_t x63 = (x62 >> 0x18);
- uint32_t x64 = ((uint32_t)x62 & 0xffffff);
- uint64_t x65 = (x63 + x57);
- uint64_t x66 = (x65 >> 0x18);
- uint32_t x67 = ((uint32_t)x65 & 0xffffff);
- uint64_t x68 = (x66 + x56);
- uint64_t x69 = (x68 >> 0x17);
- uint32_t x70 = ((uint32_t)x68 & 0x7fffff);
- uint64_t x71 = (x69 + x55);
- uint64_t x72 = (x71 >> 0x18);
- uint32_t x73 = ((uint32_t)x71 & 0xffffff);
- uint64_t x74 = (x72 + x54);
- uint64_t x75 = (x74 >> 0x18);
- uint32_t x76 = ((uint32_t)x74 & 0xffffff);
- uint64_t x77 = (x75 + x53);
- uint64_t x78 = (x77 >> 0x18);
- uint32_t x79 = ((uint32_t)x77 & 0xffffff);
- uint64_t x80 = (x78 + x52);
- uint64_t x81 = (x80 >> 0x17);
- uint32_t x82 = ((uint32_t)x80 & 0x7fffff);
- uint64_t x83 = (x81 + x51);
- uint64_t x84 = (x83 >> 0x18);
- uint32_t x85 = ((uint32_t)x83 & 0xffffff);
- uint64_t x86 = (x84 + x50);
- uint64_t x87 = (x86 >> 0x18);
- uint32_t x88 = ((uint32_t)x86 & 0xffffff);
- uint64_t x89 = (x87 + x49);
- uint32_t x90 = (uint32_t) (x89 >> 0x18);
- uint32_t x91 = ((uint32_t)x89 & 0xffffff);
- uint64_t x92 = (x90 + x48);
- uint32_t x93 = (uint32_t) (x92 >> 0x17);
- uint32_t x94 = ((uint32_t)x92 & 0x7fffff);
- uint64_t x95 = (x61 + ((uint64_t)0x9 * x93));
- uint32_t x96 = (uint32_t) (x95 >> 0x18);
- uint32_t x97 = ((uint32_t)x95 & 0xffffff);
- uint32_t x98 = (x96 + x64);
- uint32_t x99 = (x98 >> 0x18);
- uint32_t x100 = (x98 & 0xffffff);
- return (Return x94, Return x91, Return x88, Return x85, Return x82, Return x79, Return x76, Return x73, Return x70, (x99 + x67), Return x100, Return x97))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e285m9_12limbs/femulDisplay.v b/src/Specific/solinas32_2e285m9_12limbs/femulDisplay.v
deleted file mode 100644
index 2c37f2d47..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e285m9_12limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e285m9_12limbs/fesquare.c b/src/Specific/solinas32_2e285m9_12limbs/fesquare.c
deleted file mode 100644
index 6c9e59538..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/fesquare.c
+++ /dev/null
@@ -1,80 +0,0 @@
-static void fesquare(uint32_t out[12], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x23 = (((uint64_t)x2 * x21) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x21 * x2))))))))))));
- { uint64_t x24 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x9 * (0x2 * ((uint64_t)x21 * x21))));
- { uint64_t x25 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x9 * ((0x2 * ((uint64_t)x22 * x21)) + (0x2 * ((uint64_t)x21 * x22)))));
- { uint64_t x26 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x9 * ((0x2 * ((uint64_t)x20 * x21)) + ((0x2 * ((uint64_t)x22 * x22)) + (0x2 * ((uint64_t)x21 * x20))))));
- { uint64_t x27 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x9 * (((uint64_t)x18 * x21) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((uint64_t)x21 * x18))))));
- { uint64_t x28 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x9 * ((0x2 * ((uint64_t)x16 * x21)) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + (0x2 * ((uint64_t)x21 * x16))))))));
- { uint64_t x29 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x9 * ((0x2 * ((uint64_t)x14 * x21)) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + (0x2 * ((uint64_t)x21 * x14)))))))));
- { uint64_t x30 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x9 * ((0x2 * ((uint64_t)x12 * x21)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + (0x2 * ((uint64_t)x21 * x12))))))))));
- { uint64_t x31 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x9 * (((uint64_t)x10 * x21) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + ((uint64_t)x21 * x10))))))))));
- { uint64_t x32 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x9 * ((0x2 * ((uint64_t)x8 * x21)) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (0x2 * ((uint64_t)x21 * x8))))))))))));
- { uint64_t x33 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x9 * ((0x2 * ((uint64_t)x6 * x21)) + ((0x2 * ((uint64_t)x8 * x22)) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + ((0x2 * ((uint64_t)x22 * x8)) + (0x2 * ((uint64_t)x21 * x6)))))))))))));
- { uint64_t x34 = (((uint64_t)x2 * x2) + (0x9 * ((0x2 * ((uint64_t)x4 * x21)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + (0x2 * ((uint64_t)x21 * x4))))))))))))));
- { uint64_t x35 = (x34 >> 0x18);
- { uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- { uint64_t x37 = (x35 + x33);
- { uint64_t x38 = (x37 >> 0x18);
- { uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- { uint64_t x40 = (x38 + x32);
- { uint64_t x41 = (x40 >> 0x18);
- { uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- { uint64_t x43 = (x41 + x31);
- { uint64_t x44 = (x43 >> 0x17);
- { uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- { uint64_t x46 = (x44 + x30);
- { uint64_t x47 = (x46 >> 0x18);
- { uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- { uint64_t x49 = (x47 + x29);
- { uint64_t x50 = (x49 >> 0x18);
- { uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- { uint64_t x52 = (x50 + x28);
- { uint64_t x53 = (x52 >> 0x18);
- { uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- { uint64_t x55 = (x53 + x27);
- { uint64_t x56 = (x55 >> 0x17);
- { uint32_t x57 = ((uint32_t)x55 & 0x7fffff);
- { uint64_t x58 = (x56 + x26);
- { uint64_t x59 = (x58 >> 0x18);
- { uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- { uint64_t x61 = (x59 + x25);
- { uint64_t x62 = (x61 >> 0x18);
- { uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- { uint64_t x64 = (x62 + x24);
- { uint32_t x65 = (uint32_t) (x64 >> 0x18);
- { uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- { uint64_t x67 = (x65 + x23);
- { uint32_t x68 = (uint32_t) (x67 >> 0x17);
- { uint32_t x69 = ((uint32_t)x67 & 0x7fffff);
- { uint64_t x70 = (x36 + ((uint64_t)0x9 * x68));
- { uint32_t x71 = (uint32_t) (x70 >> 0x18);
- { uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- { uint32_t x73 = (x71 + x39);
- { uint32_t x74 = (x73 >> 0x18);
- { uint32_t x75 = (x73 & 0xffffff);
- out[0] = x72;
- out[1] = x75;
- out[2] = (x74 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- out[7] = x57;
- out[8] = x60;
- out[9] = x63;
- out[10] = x66;
- out[11] = x69;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e285m9_12limbs/fesquare.v b/src/Specific/solinas32_2e285m9_12limbs/fesquare.v
deleted file mode 100644
index 66063434e..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e285m9_12limbs.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_2e285m9_12limbs/fesquareDisplay.log b/src/Specific/solinas32_2e285m9_12limbs/fesquareDisplay.log
deleted file mode 100644
index 29f0a72f5..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,60 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x23 = (((uint64_t)x2 * x21) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x21 * x2))))))))))));
- uint64_t x24 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x9 * (0x2 * ((uint64_t)x21 * x21))));
- uint64_t x25 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x9 * ((0x2 * ((uint64_t)x22 * x21)) + (0x2 * ((uint64_t)x21 * x22)))));
- uint64_t x26 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x9 * ((0x2 * ((uint64_t)x20 * x21)) + ((0x2 * ((uint64_t)x22 * x22)) + (0x2 * ((uint64_t)x21 * x20))))));
- uint64_t x27 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x9 * (((uint64_t)x18 * x21) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((uint64_t)x21 * x18))))));
- uint64_t x28 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x9 * ((0x2 * ((uint64_t)x16 * x21)) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + (0x2 * ((uint64_t)x21 * x16))))))));
- uint64_t x29 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x9 * ((0x2 * ((uint64_t)x14 * x21)) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + (0x2 * ((uint64_t)x21 * x14)))))))));
- uint64_t x30 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x9 * ((0x2 * ((uint64_t)x12 * x21)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + (0x2 * ((uint64_t)x21 * x12))))))))));
- uint64_t x31 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x9 * (((uint64_t)x10 * x21) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + ((uint64_t)x21 * x10))))))))));
- uint64_t x32 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x9 * ((0x2 * ((uint64_t)x8 * x21)) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (0x2 * ((uint64_t)x21 * x8))))))))))));
- uint64_t x33 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x9 * ((0x2 * ((uint64_t)x6 * x21)) + ((0x2 * ((uint64_t)x8 * x22)) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + ((0x2 * ((uint64_t)x22 * x8)) + (0x2 * ((uint64_t)x21 * x6)))))))))))));
- uint64_t x34 = (((uint64_t)x2 * x2) + (0x9 * ((0x2 * ((uint64_t)x4 * x21)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + (0x2 * ((uint64_t)x21 * x4))))))))))))));
- uint64_t x35 = (x34 >> 0x18);
- uint32_t x36 = ((uint32_t)x34 & 0xffffff);
- uint64_t x37 = (x35 + x33);
- uint64_t x38 = (x37 >> 0x18);
- uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- uint64_t x40 = (x38 + x32);
- uint64_t x41 = (x40 >> 0x18);
- uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- uint64_t x43 = (x41 + x31);
- uint64_t x44 = (x43 >> 0x17);
- uint32_t x45 = ((uint32_t)x43 & 0x7fffff);
- uint64_t x46 = (x44 + x30);
- uint64_t x47 = (x46 >> 0x18);
- uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- uint64_t x49 = (x47 + x29);
- uint64_t x50 = (x49 >> 0x18);
- uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- uint64_t x52 = (x50 + x28);
- uint64_t x53 = (x52 >> 0x18);
- uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- uint64_t x55 = (x53 + x27);
- uint64_t x56 = (x55 >> 0x17);
- uint32_t x57 = ((uint32_t)x55 & 0x7fffff);
- uint64_t x58 = (x56 + x26);
- uint64_t x59 = (x58 >> 0x18);
- uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- uint64_t x61 = (x59 + x25);
- uint64_t x62 = (x61 >> 0x18);
- uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- uint64_t x64 = (x62 + x24);
- uint32_t x65 = (uint32_t) (x64 >> 0x18);
- uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- uint64_t x67 = (x65 + x23);
- uint32_t x68 = (uint32_t) (x67 >> 0x17);
- uint32_t x69 = ((uint32_t)x67 & 0x7fffff);
- uint64_t x70 = (x36 + ((uint64_t)0x9 * x68));
- uint32_t x71 = (uint32_t) (x70 >> 0x18);
- uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- uint32_t x73 = (x71 + x39);
- uint32_t x74 = (x73 >> 0x18);
- uint32_t x75 = (x73 & 0xffffff);
- return (Return x69, Return x66, Return x63, Return x60, Return x57, Return x54, Return x51, Return x48, Return x45, (x74 + x42), Return x75, Return x72))
-x
- : 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e285m9_12limbs/fesquareDisplay.v b/src/Specific/solinas32_2e285m9_12limbs/fesquareDisplay.v
deleted file mode 100644
index e644c277f..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e285m9_12limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e285m9_12limbs/fesub.c b/src/Specific/solinas32_2e285m9_12limbs/fesub.c
deleted file mode 100644
index 1916eb3b0..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/fesub.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void fesub(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- out[0] = ((0x1ffffee + x5) - x27);
- out[1] = ((0x1fffffe + x7) - x29);
- out[2] = ((0x1fffffe + x9) - x31);
- out[3] = ((0xfffffe + x11) - x33);
- out[4] = ((0x1fffffe + x13) - x35);
- out[5] = ((0x1fffffe + x15) - x37);
- out[6] = ((0x1fffffe + x17) - x39);
- out[7] = ((0xfffffe + x19) - x41);
- out[8] = ((0x1fffffe + x21) - x43);
- out[9] = ((0x1fffffe + x23) - x45);
- out[10] = ((0x1fffffe + x25) - x47);
- out[11] = ((0xfffffe + x24) - x46);
- }}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e285m9_12limbs/fesub.v b/src/Specific/solinas32_2e285m9_12limbs/fesub.v
deleted file mode 100644
index a64cfe7e8..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e285m9_12limbs.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_2e285m9_12limbs/fesubDisplay.log b/src/Specific/solinas32_2e285m9_12limbs/fesubDisplay.log
deleted file mode 100644
index 37fefb80a..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- (((0xfffffe + x24) - x46), ((0x1fffffe + x25) - x47), ((0x1fffffe + x23) - x45), ((0x1fffffe + x21) - x43), ((0xfffffe + x19) - x41), ((0x1fffffe + x17) - x39), ((0x1fffffe + x15) - x37), ((0x1fffffe + x13) - x35), ((0xfffffe + x11) - x33), ((0x1fffffe + x9) - x31), ((0x1fffffe + x7) - x29), ((0x1ffffee + x5) - x27)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e285m9_12limbs/fesubDisplay.v b/src/Specific/solinas32_2e285m9_12limbs/fesubDisplay.v
deleted file mode 100644
index 401256bcd..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e285m9_12limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e285m9_12limbs/freeze.c b/src/Specific/solinas32_2e285m9_12limbs/freeze.c
deleted file mode 100644
index 68ad18f61..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/freeze.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void freeze(uint32_t out[12], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xfffff7);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x4, 0xffffff);
- { uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x6, 0xffffff);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x8, 0x7fffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x10, 0xffffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x12, 0xffffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x14, 0xffffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x16, 0x7fffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x18, 0xffffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x20, 0xffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x22, 0xffffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x21, 0x7fffff);
- { uint32_t x59 = cmovznz32(x58, 0x0, 0xffffffff);
- { uint32_t x60 = (x59 & 0xfffff7);
- { uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x24, Return x60);
- { uint32_t x64 = (x59 & 0xffffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x27, Return x64);
- { uint32_t x68 = (x59 & 0xffffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x30, Return x68);
- { uint32_t x72 = (x59 & 0x7fffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x33, Return x72);
- { uint32_t x76 = (x59 & 0xffffff);
- { uint32_t x78, uint8_t x79 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x36, Return x76);
- { uint32_t x80 = (x59 & 0xffffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x39, Return x80);
- { uint32_t x84 = (x59 & 0xffffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x42, Return x84);
- { uint32_t x88 = (x59 & 0x7fffff);
- { uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x45, Return x88);
- { uint32_t x92 = (x59 & 0xffffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x48, Return x92);
- { uint32_t x96 = (x59 & 0xffffff);
- { uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x51, Return x96);
- { uint32_t x100 = (x59 & 0xffffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x54, Return x100);
- { uint32_t x104 = (x59 & 0x7fffff);
- { uint32_t x106, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x57, Return x104);
- out[0] = x62;
- out[1] = x66;
- out[2] = x70;
- out[3] = x74;
- out[4] = x78;
- out[5] = x82;
- out[6] = x86;
- out[7] = x90;
- out[8] = x94;
- out[9] = x98;
- out[10] = x102;
- out[11] = x106;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e285m9_12limbs/freeze.v b/src/Specific/solinas32_2e285m9_12limbs/freeze.v
deleted file mode 100644
index 01807fff9..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e285m9_12limbs.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_2e285m9_12limbs/freezeDisplay.log b/src/Specific/solinas32_2e285m9_12limbs/freezeDisplay.log
deleted file mode 100644
index 214de7886..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/freezeDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xfffff7);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x4, 0xffffff);
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x6, 0xffffff);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x8, 0x7fffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x10, 0xffffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x12, 0xffffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x14, 0xffffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x16, 0x7fffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x18, 0xffffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x20, 0xffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x22, 0xffffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x21, 0x7fffff);
- uint32_t x59 = cmovznz32(x58, 0x0, 0xffffffff);
- uint32_t x60 = (x59 & 0xfffff7);
- uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x24, Return x60);
- uint32_t x64 = (x59 & 0xffffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x27, Return x64);
- uint32_t x68 = (x59 & 0xffffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x30, Return x68);
- uint32_t x72 = (x59 & 0x7fffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x33, Return x72);
- uint32_t x76 = (x59 & 0xffffff);
- uint32_t x78, uint8_t x79 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x36, Return x76);
- uint32_t x80 = (x59 & 0xffffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x39, Return x80);
- uint32_t x84 = (x59 & 0xffffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x42, Return x84);
- uint32_t x88 = (x59 & 0x7fffff);
- uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x45, Return x88);
- uint32_t x92 = (x59 & 0xffffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x48, Return x92);
- uint32_t x96 = (x59 & 0xffffff);
- uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x51, Return x96);
- uint32_t x100 = (x59 & 0xffffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x54, Return x100);
- uint32_t x104 = (x59 & 0x7fffff);
- uint32_t x106, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x57, Return x104);
- (Return x106, Return x102, Return x98, Return x94, Return x90, Return x86, Return x82, Return x78, Return x74, Return x70, Return x66, Return x62))
-x
- : 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e285m9_12limbs/freezeDisplay.v b/src/Specific/solinas32_2e285m9_12limbs/freezeDisplay.v
deleted file mode 100644
index 322214e56..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e285m9_12limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e285m9_12limbs/py_interpreter.sh b/src/Specific/solinas32_2e285m9_12limbs/py_interpreter.sh
deleted file mode 100755
index dffa82b7f..000000000
--- a/src/Specific/solinas32_2e285m9_12limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**285 - 9' -Dmodulus_bytes='23.75' -Da24='121665'
diff --git a/src/Specific/solinas32_2e291m19_11limbs/CurveParameters.v b/src/Specific/solinas32_2e291m19_11limbs/CurveParameters.v
deleted file mode 100644
index 953575a57..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^291 - 19
-Base: 26 + 5/11
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 11%nat;
- base := 26 + 5/11;
- bitwidth := 32;
- s := 2^291;
- c := [(1, 19)];
- carry_chains := Some [seq 0 (pred 11); [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_2e291m19_11limbs/Synthesis.v b/src/Specific/solinas32_2e291m19_11limbs/Synthesis.v
deleted file mode 100644
index 05f4d8fee..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e291m19_11limbs.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_2e291m19_11limbs/compiler.sh b/src/Specific/solinas32_2e291m19_11limbs/compiler.sh
deleted file mode 100755
index 8c7b7475e..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/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,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,27,26,27,26,27,26,27,26,26}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='37' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<291) - 19' "$@"
diff --git a/src/Specific/solinas32_2e291m19_11limbs/compilerxx.sh b/src/Specific/solinas32_2e291m19_11limbs/compilerxx.sh
deleted file mode 100755
index ca3ac669e..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/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,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,27,26,27,26,27,26,27,26,26}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='37' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<291) - 19' "$@"
diff --git a/src/Specific/solinas32_2e291m19_11limbs/feadd.c b/src/Specific/solinas32_2e291m19_11limbs/feadd.c
deleted file mode 100644
index 1763e8727..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/feadd.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void feadd(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- out[0] = (x5 + x25);
- out[1] = (x7 + x27);
- out[2] = (x9 + x29);
- out[3] = (x11 + x31);
- out[4] = (x13 + x33);
- out[5] = (x15 + x35);
- out[6] = (x17 + x37);
- out[7] = (x19 + x39);
- out[8] = (x21 + x41);
- out[9] = (x23 + x43);
- out[10] = (x22 + x42);
- }}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e291m19_11limbs/feadd.v b/src/Specific/solinas32_2e291m19_11limbs/feadd.v
deleted file mode 100644
index a4b9c68d9..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e291m19_11limbs.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_2e291m19_11limbs/feaddDisplay.log b/src/Specific/solinas32_2e291m19_11limbs/feaddDisplay.log
deleted file mode 100644
index 433ecbc2e..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- ((x22 + x42), (x23 + x43), (x21 + x41), (x19 + x39), (x17 + x37), (x15 + x35), (x13 + x33), (x11 + x31), (x9 + x29), (x7 + x27), (x5 + x25)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e291m19_11limbs/feaddDisplay.v b/src/Specific/solinas32_2e291m19_11limbs/feaddDisplay.v
deleted file mode 100644
index 93d3019b9..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e291m19_11limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e291m19_11limbs/fecarry.v b/src/Specific/solinas32_2e291m19_11limbs/fecarry.v
deleted file mode 100644
index d755f8509..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e291m19_11limbs.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_2e291m19_11limbs/fecarryDisplay.v b/src/Specific/solinas32_2e291m19_11limbs/fecarryDisplay.v
deleted file mode 100644
index ceb2bb951..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e291m19_11limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e291m19_11limbs/femul.c b/src/Specific/solinas32_2e291m19_11limbs/femul.c
deleted file mode 100644
index 67a95148b..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/femul.c
+++ /dev/null
@@ -1,85 +0,0 @@
-static void femul(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- { uint64_t x44 = (((uint64_t)x5 * x42) + ((0x2 * ((uint64_t)x7 * x43)) + (((uint64_t)x9 * x41) + ((0x2 * ((uint64_t)x11 * x39)) + (((uint64_t)x13 * x37) + ((0x2 * ((uint64_t)x15 * x35)) + (((uint64_t)x17 * x33) + ((0x2 * ((uint64_t)x19 * x31)) + (((uint64_t)x21 * x29) + ((0x2 * ((uint64_t)x23 * x27)) + ((uint64_t)x22 * x25)))))))))));
- { uint64_t x45 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + (((uint64_t)x21 * x27) + ((uint64_t)x23 * x25)))))))))) + (0x13 * ((uint64_t)x22 * x42)));
- { uint64_t x46 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + (((uint64_t)x9 * x37) + ((0x2 * ((uint64_t)x11 * x35)) + (((uint64_t)x13 * x33) + ((0x2 * ((uint64_t)x15 * x31)) + (((uint64_t)x17 * x29) + ((0x2 * ((uint64_t)x19 * x27)) + ((uint64_t)x21 * x25))))))))) + (0x13 * ((0x2 * ((uint64_t)x23 * x42)) + (0x2 * ((uint64_t)x22 * x43)))));
- { uint64_t x47 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + (((uint64_t)x17 * x27) + ((uint64_t)x19 * x25)))))))) + (0x13 * (((uint64_t)x21 * x42) + ((0x2 * ((uint64_t)x23 * x43)) + ((uint64_t)x22 * x41)))));
- { uint64_t x48 = ((((uint64_t)x5 * x37) + ((0x2 * ((uint64_t)x7 * x35)) + (((uint64_t)x9 * x33) + ((0x2 * ((uint64_t)x11 * x31)) + (((uint64_t)x13 * x29) + ((0x2 * ((uint64_t)x15 * x27)) + ((uint64_t)x17 * x25))))))) + (0x13 * ((0x2 * ((uint64_t)x19 * x42)) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + (0x2 * ((uint64_t)x22 * x39)))))));
- { uint64_t x49 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + ((uint64_t)x15 * x25)))))) + (0x13 * (((uint64_t)x17 * x42) + ((0x2 * ((uint64_t)x19 * x43)) + (((uint64_t)x21 * x41) + ((0x2 * ((uint64_t)x23 * x39)) + ((uint64_t)x22 * x37)))))));
- { ℤ x50 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + (((uint64_t)x9 * x29) + ((0x2 * ((uint64_t)x11 * x27)) + ((uint64_t)x13 * x25))))) +ℤ (0x13 *ℤ ((0x2 * ((uint64_t)x15 * x42)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + (0x2 * ((uint64_t)x22 * x35)))))))));
- { uint64_t x51 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + ((uint64_t)x11 * x25)))) + (0x13 * (((uint64_t)x13 * x42) + ((0x2 * ((uint64_t)x15 * x43)) + (((uint64_t)x17 * x41) + ((0x2 * ((uint64_t)x19 * x39)) + (((uint64_t)x21 * x37) + ((0x2 * ((uint64_t)x23 * x35)) + ((uint64_t)x22 * x33)))))))));
- { ℤ x52 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((uint64_t)x9 * x25))) +ℤ (0x13 *ℤ ((0x2 * ((uint64_t)x11 * x42)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + ((0x2 * ((uint64_t)x21 * x35)) + ((0x2 * ((uint64_t)x23 * x33)) + (0x2 * ((uint64_t)x22 * x31)))))))))));
- { ℤ x53 = ((((uint64_t)x5 * x27) + ((uint64_t)x7 * x25)) +ℤ (0x13 *ℤ (((uint64_t)x9 * x42) + ((0x2 * ((uint64_t)x11 * x43)) + (((uint64_t)x13 * x41) + ((0x2 * ((uint64_t)x15 * x39)) + (((uint64_t)x17 * x37) + ((0x2 * ((uint64_t)x19 * x35)) + (((uint64_t)x21 * x33) + ((0x2 * ((uint64_t)x23 * x31)) + ((uint64_t)x22 * x29)))))))))));
- { ℤ x54 = (((uint64_t)x5 * x25) +ℤ (0x13 *ℤ ((0x2 * ((uint64_t)x7 * x42)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((0x2 * ((uint64_t)x17 * x35)) + ((0x2 * ((uint64_t)x19 * x33)) + ((0x2 * ((uint64_t)x21 * x31)) + ((0x2 * ((uint64_t)x23 * x29)) + (0x2 * ((uint64_t)x22 * x27)))))))))))));
- { uint64_t x55 = (x54 >> 0x1b);
- { uint32_t x56 = (x54 & 0x7ffffff);
- { ℤ x57 = (x55 +ℤ x53);
- { uint64_t x58 = (x57 >> 0x1a);
- { uint32_t x59 = (x57 & 0x3ffffff);
- { ℤ x60 = (x58 +ℤ x52);
- { uint64_t x61 = (x60 >> 0x1b);
- { uint32_t x62 = (x60 & 0x7ffffff);
- { uint64_t x63 = (x61 + x51);
- { uint64_t x64 = (x63 >> 0x1a);
- { uint32_t x65 = ((uint32_t)x63 & 0x3ffffff);
- { ℤ x66 = (x64 +ℤ x50);
- { uint64_t x67 = (x66 >> 0x1b);
- { uint32_t x68 = (x66 & 0x7ffffff);
- { uint64_t x69 = (x67 + x49);
- { uint64_t x70 = (x69 >> 0x1a);
- { uint32_t x71 = ((uint32_t)x69 & 0x3ffffff);
- { uint64_t x72 = (x70 + x48);
- { uint64_t x73 = (x72 >> 0x1b);
- { uint32_t x74 = ((uint32_t)x72 & 0x7ffffff);
- { uint64_t x75 = (x73 + x47);
- { uint64_t x76 = (x75 >> 0x1a);
- { uint32_t x77 = ((uint32_t)x75 & 0x3ffffff);
- { uint64_t x78 = (x76 + x46);
- { uint64_t x79 = (x78 >> 0x1b);
- { uint32_t x80 = ((uint32_t)x78 & 0x7ffffff);
- { uint64_t x81 = (x79 + x45);
- { uint64_t x82 = (x81 >> 0x1a);
- { uint32_t x83 = ((uint32_t)x81 & 0x3ffffff);
- { uint64_t x84 = (x82 + x44);
- { uint64_t x85 = (x84 >> 0x1a);
- { uint32_t x86 = ((uint32_t)x84 & 0x3ffffff);
- { uint64_t x87 = (x56 + (0x13 * x85));
- { uint32_t x88 = (uint32_t) (x87 >> 0x1b);
- { uint32_t x89 = ((uint32_t)x87 & 0x7ffffff);
- { uint32_t x90 = (x88 + x59);
- { uint32_t x91 = (x90 >> 0x1a);
- { uint32_t x92 = (x90 & 0x3ffffff);
- out[0] = x89;
- out[1] = x92;
- out[2] = (x91 + x62);
- out[3] = x65;
- out[4] = x68;
- out[5] = x71;
- out[6] = x74;
- out[7] = x77;
- out[8] = x80;
- out[9] = x83;
- out[10] = x86;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e291m19_11limbs/femul.v b/src/Specific/solinas32_2e291m19_11limbs/femul.v
deleted file mode 100644
index 1c748107c..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e291m19_11limbs.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_2e291m19_11limbs/femulDisplay.log b/src/Specific/solinas32_2e291m19_11limbs/femulDisplay.log
deleted file mode 100644
index 1c986d7a7..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/femulDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- uint64_t x44 = (((uint64_t)x5 * x42) + ((0x2 * ((uint64_t)x7 * x43)) + (((uint64_t)x9 * x41) + ((0x2 * ((uint64_t)x11 * x39)) + (((uint64_t)x13 * x37) + ((0x2 * ((uint64_t)x15 * x35)) + (((uint64_t)x17 * x33) + ((0x2 * ((uint64_t)x19 * x31)) + (((uint64_t)x21 * x29) + ((0x2 * ((uint64_t)x23 * x27)) + ((uint64_t)x22 * x25)))))))))));
- uint64_t x45 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + (((uint64_t)x21 * x27) + ((uint64_t)x23 * x25)))))))))) + (0x13 * ((uint64_t)x22 * x42)));
- uint64_t x46 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + (((uint64_t)x9 * x37) + ((0x2 * ((uint64_t)x11 * x35)) + (((uint64_t)x13 * x33) + ((0x2 * ((uint64_t)x15 * x31)) + (((uint64_t)x17 * x29) + ((0x2 * ((uint64_t)x19 * x27)) + ((uint64_t)x21 * x25))))))))) + (0x13 * ((0x2 * ((uint64_t)x23 * x42)) + (0x2 * ((uint64_t)x22 * x43)))));
- uint64_t x47 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + (((uint64_t)x17 * x27) + ((uint64_t)x19 * x25)))))))) + (0x13 * (((uint64_t)x21 * x42) + ((0x2 * ((uint64_t)x23 * x43)) + ((uint64_t)x22 * x41)))));
- uint64_t x48 = ((((uint64_t)x5 * x37) + ((0x2 * ((uint64_t)x7 * x35)) + (((uint64_t)x9 * x33) + ((0x2 * ((uint64_t)x11 * x31)) + (((uint64_t)x13 * x29) + ((0x2 * ((uint64_t)x15 * x27)) + ((uint64_t)x17 * x25))))))) + (0x13 * ((0x2 * ((uint64_t)x19 * x42)) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + (0x2 * ((uint64_t)x22 * x39)))))));
- uint64_t x49 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + (((uint64_t)x13 * x27) + ((uint64_t)x15 * x25)))))) + (0x13 * (((uint64_t)x17 * x42) + ((0x2 * ((uint64_t)x19 * x43)) + (((uint64_t)x21 * x41) + ((0x2 * ((uint64_t)x23 * x39)) + ((uint64_t)x22 * x37)))))));
- ℤ x50 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + (((uint64_t)x9 * x29) + ((0x2 * ((uint64_t)x11 * x27)) + ((uint64_t)x13 * x25))))) +ℤ (0x13 *ℤ ((0x2 * ((uint64_t)x15 * x42)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + (0x2 * ((uint64_t)x22 * x35)))))))));
- uint64_t x51 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + (((uint64_t)x9 * x27) + ((uint64_t)x11 * x25)))) + (0x13 * (((uint64_t)x13 * x42) + ((0x2 * ((uint64_t)x15 * x43)) + (((uint64_t)x17 * x41) + ((0x2 * ((uint64_t)x19 * x39)) + (((uint64_t)x21 * x37) + ((0x2 * ((uint64_t)x23 * x35)) + ((uint64_t)x22 * x33)))))))));
- ℤ x52 = ((((uint64_t)x5 * x29) + ((0x2 * ((uint64_t)x7 * x27)) + ((uint64_t)x9 * x25))) +ℤ (0x13 *ℤ ((0x2 * ((uint64_t)x11 * x42)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + ((0x2 * ((uint64_t)x21 * x35)) + ((0x2 * ((uint64_t)x23 * x33)) + (0x2 * ((uint64_t)x22 * x31)))))))))));
- ℤ x53 = ((((uint64_t)x5 * x27) + ((uint64_t)x7 * x25)) +ℤ (0x13 *ℤ (((uint64_t)x9 * x42) + ((0x2 * ((uint64_t)x11 * x43)) + (((uint64_t)x13 * x41) + ((0x2 * ((uint64_t)x15 * x39)) + (((uint64_t)x17 * x37) + ((0x2 * ((uint64_t)x19 * x35)) + (((uint64_t)x21 * x33) + ((0x2 * ((uint64_t)x23 * x31)) + ((uint64_t)x22 * x29)))))))))));
- ℤ x54 = (((uint64_t)x5 * x25) +ℤ (0x13 *ℤ ((0x2 * ((uint64_t)x7 * x42)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((0x2 * ((uint64_t)x17 * x35)) + ((0x2 * ((uint64_t)x19 * x33)) + ((0x2 * ((uint64_t)x21 * x31)) + ((0x2 * ((uint64_t)x23 * x29)) + (0x2 * ((uint64_t)x22 * x27)))))))))))));
- uint64_t x55 = (x54 >> 0x1b);
- uint32_t x56 = (x54 & 0x7ffffff);
- ℤ x57 = (x55 +ℤ x53);
- uint64_t x58 = (x57 >> 0x1a);
- uint32_t x59 = (x57 & 0x3ffffff);
- ℤ x60 = (x58 +ℤ x52);
- uint64_t x61 = (x60 >> 0x1b);
- uint32_t x62 = (x60 & 0x7ffffff);
- uint64_t x63 = (x61 + x51);
- uint64_t x64 = (x63 >> 0x1a);
- uint32_t x65 = ((uint32_t)x63 & 0x3ffffff);
- ℤ x66 = (x64 +ℤ x50);
- uint64_t x67 = (x66 >> 0x1b);
- uint32_t x68 = (x66 & 0x7ffffff);
- uint64_t x69 = (x67 + x49);
- uint64_t x70 = (x69 >> 0x1a);
- uint32_t x71 = ((uint32_t)x69 & 0x3ffffff);
- uint64_t x72 = (x70 + x48);
- uint64_t x73 = (x72 >> 0x1b);
- uint32_t x74 = ((uint32_t)x72 & 0x7ffffff);
- uint64_t x75 = (x73 + x47);
- uint64_t x76 = (x75 >> 0x1a);
- uint32_t x77 = ((uint32_t)x75 & 0x3ffffff);
- uint64_t x78 = (x76 + x46);
- uint64_t x79 = (x78 >> 0x1b);
- uint32_t x80 = ((uint32_t)x78 & 0x7ffffff);
- uint64_t x81 = (x79 + x45);
- uint64_t x82 = (x81 >> 0x1a);
- uint32_t x83 = ((uint32_t)x81 & 0x3ffffff);
- uint64_t x84 = (x82 + x44);
- uint64_t x85 = (x84 >> 0x1a);
- uint32_t x86 = ((uint32_t)x84 & 0x3ffffff);
- uint64_t x87 = (x56 + (0x13 * x85));
- uint32_t x88 = (uint32_t) (x87 >> 0x1b);
- uint32_t x89 = ((uint32_t)x87 & 0x7ffffff);
- uint32_t x90 = (x88 + x59);
- uint32_t x91 = (x90 >> 0x1a);
- uint32_t x92 = (x90 & 0x3ffffff);
- return (Return x86, Return x83, Return x80, Return x77, Return x74, Return x71, Return x68, Return x65, (x91 + x62), Return x92, Return x89))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e291m19_11limbs/femulDisplay.v b/src/Specific/solinas32_2e291m19_11limbs/femulDisplay.v
deleted file mode 100644
index d58029bca..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e291m19_11limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e291m19_11limbs/fesquare.c b/src/Specific/solinas32_2e291m19_11limbs/fesquare.c
deleted file mode 100644
index 8c4a93c85..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/fesquare.c
+++ /dev/null
@@ -1,74 +0,0 @@
-static void fesquare(uint32_t out[11], const uint32_t in1[11]) {
- { const uint32_t x19 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x21 = (((uint64_t)x2 * x19) + ((0x2 * ((uint64_t)x4 * x20)) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x19 * x2)))))))))));
- { uint64_t x22 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x13 * ((uint64_t)x19 * x19)));
- { uint64_t x23 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x13 * ((0x2 * ((uint64_t)x20 * x19)) + (0x2 * ((uint64_t)x19 * x20)))));
- { uint64_t x24 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x13 * (((uint64_t)x18 * x19) + ((0x2 * ((uint64_t)x20 * x20)) + ((uint64_t)x19 * x18)))));
- { uint64_t x25 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x13 * ((0x2 * ((uint64_t)x16 * x19)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (0x2 * ((uint64_t)x19 * x16)))))));
- { uint64_t x26 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x13 * (((uint64_t)x14 * x19) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((uint64_t)x19 * x14)))))));
- { ℤ x27 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) +ℤ (0x13 *ℤ ((0x2 * ((uint64_t)x12 * x19)) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + (0x2 * ((uint64_t)x19 * x12)))))))));
- { uint64_t x28 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x13 * (((uint64_t)x10 * x19) + ((0x2 * ((uint64_t)x12 * x20)) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + ((0x2 * ((uint64_t)x20 * x12)) + ((uint64_t)x19 * x10)))))))));
- { ℤ x29 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) +ℤ (0x13 *ℤ ((0x2 * ((uint64_t)x8 * x19)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + (0x2 * ((uint64_t)x19 * x8)))))))))));
- { ℤ x30 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) +ℤ (0x13 *ℤ (((uint64_t)x6 * x19) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + ((uint64_t)x19 * x6)))))))))));
- { ℤ x31 = (((uint64_t)x2 * x2) +ℤ (0x13 *ℤ ((0x2 * ((uint64_t)x4 * x19)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + (0x2 * ((uint64_t)x19 * x4)))))))))))));
- { uint64_t x32 = (x31 >> 0x1b);
- { uint32_t x33 = (x31 & 0x7ffffff);
- { ℤ x34 = (x32 +ℤ x30);
- { uint64_t x35 = (x34 >> 0x1a);
- { uint32_t x36 = (x34 & 0x3ffffff);
- { ℤ x37 = (x35 +ℤ x29);
- { uint64_t x38 = (x37 >> 0x1b);
- { uint32_t x39 = (x37 & 0x7ffffff);
- { uint64_t x40 = (x38 + x28);
- { uint64_t x41 = (x40 >> 0x1a);
- { uint32_t x42 = ((uint32_t)x40 & 0x3ffffff);
- { ℤ x43 = (x41 +ℤ x27);
- { uint64_t x44 = (x43 >> 0x1b);
- { uint32_t x45 = (x43 & 0x7ffffff);
- { uint64_t x46 = (x44 + x26);
- { uint64_t x47 = (x46 >> 0x1a);
- { uint32_t x48 = ((uint32_t)x46 & 0x3ffffff);
- { uint64_t x49 = (x47 + x25);
- { uint64_t x50 = (x49 >> 0x1b);
- { uint32_t x51 = ((uint32_t)x49 & 0x7ffffff);
- { uint64_t x52 = (x50 + x24);
- { uint64_t x53 = (x52 >> 0x1a);
- { uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- { uint64_t x55 = (x53 + x23);
- { uint64_t x56 = (x55 >> 0x1b);
- { uint32_t x57 = ((uint32_t)x55 & 0x7ffffff);
- { uint64_t x58 = (x56 + x22);
- { uint64_t x59 = (x58 >> 0x1a);
- { uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- { uint64_t x61 = (x59 + x21);
- { uint64_t x62 = (x61 >> 0x1a);
- { uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- { uint64_t x64 = (x33 + (0x13 * x62));
- { uint32_t x65 = (uint32_t) (x64 >> 0x1b);
- { uint32_t x66 = ((uint32_t)x64 & 0x7ffffff);
- { uint32_t x67 = (x65 + x36);
- { uint32_t x68 = (x67 >> 0x1a);
- { uint32_t x69 = (x67 & 0x3ffffff);
- out[0] = x66;
- out[1] = x69;
- out[2] = (x68 + x39);
- out[3] = x42;
- out[4] = x45;
- out[5] = x48;
- out[6] = x51;
- out[7] = x54;
- out[8] = x57;
- out[9] = x60;
- out[10] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e291m19_11limbs/fesquare.v b/src/Specific/solinas32_2e291m19_11limbs/fesquare.v
deleted file mode 100644
index 85e38fecf..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e291m19_11limbs.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_2e291m19_11limbs/fesquareDisplay.log b/src/Specific/solinas32_2e291m19_11limbs/fesquareDisplay.log
deleted file mode 100644
index a6b916feb..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x21 = (((uint64_t)x2 * x19) + ((0x2 * ((uint64_t)x4 * x20)) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x19 * x2)))))))))));
- uint64_t x22 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x13 * ((uint64_t)x19 * x19)));
- uint64_t x23 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x13 * ((0x2 * ((uint64_t)x20 * x19)) + (0x2 * ((uint64_t)x19 * x20)))));
- uint64_t x24 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x13 * (((uint64_t)x18 * x19) + ((0x2 * ((uint64_t)x20 * x20)) + ((uint64_t)x19 * x18)))));
- uint64_t x25 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x13 * ((0x2 * ((uint64_t)x16 * x19)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (0x2 * ((uint64_t)x19 * x16)))))));
- uint64_t x26 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x13 * (((uint64_t)x14 * x19) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((uint64_t)x19 * x14)))))));
- ℤ x27 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) +ℤ (0x13 *ℤ ((0x2 * ((uint64_t)x12 * x19)) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + (0x2 * ((uint64_t)x19 * x12)))))))));
- uint64_t x28 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x13 * (((uint64_t)x10 * x19) + ((0x2 * ((uint64_t)x12 * x20)) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + ((0x2 * ((uint64_t)x20 * x12)) + ((uint64_t)x19 * x10)))))))));
- ℤ x29 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) +ℤ (0x13 *ℤ ((0x2 * ((uint64_t)x8 * x19)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + (0x2 * ((uint64_t)x19 * x8)))))))))));
- ℤ x30 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) +ℤ (0x13 *ℤ (((uint64_t)x6 * x19) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + ((uint64_t)x19 * x6)))))))))));
- ℤ x31 = (((uint64_t)x2 * x2) +ℤ (0x13 *ℤ ((0x2 * ((uint64_t)x4 * x19)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + (0x2 * ((uint64_t)x19 * x4)))))))))))));
- uint64_t x32 = (x31 >> 0x1b);
- uint32_t x33 = (x31 & 0x7ffffff);
- ℤ x34 = (x32 +ℤ x30);
- uint64_t x35 = (x34 >> 0x1a);
- uint32_t x36 = (x34 & 0x3ffffff);
- ℤ x37 = (x35 +ℤ x29);
- uint64_t x38 = (x37 >> 0x1b);
- uint32_t x39 = (x37 & 0x7ffffff);
- uint64_t x40 = (x38 + x28);
- uint64_t x41 = (x40 >> 0x1a);
- uint32_t x42 = ((uint32_t)x40 & 0x3ffffff);
- ℤ x43 = (x41 +ℤ x27);
- uint64_t x44 = (x43 >> 0x1b);
- uint32_t x45 = (x43 & 0x7ffffff);
- uint64_t x46 = (x44 + x26);
- uint64_t x47 = (x46 >> 0x1a);
- uint32_t x48 = ((uint32_t)x46 & 0x3ffffff);
- uint64_t x49 = (x47 + x25);
- uint64_t x50 = (x49 >> 0x1b);
- uint32_t x51 = ((uint32_t)x49 & 0x7ffffff);
- uint64_t x52 = (x50 + x24);
- uint64_t x53 = (x52 >> 0x1a);
- uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- uint64_t x55 = (x53 + x23);
- uint64_t x56 = (x55 >> 0x1b);
- uint32_t x57 = ((uint32_t)x55 & 0x7ffffff);
- uint64_t x58 = (x56 + x22);
- uint64_t x59 = (x58 >> 0x1a);
- uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- uint64_t x61 = (x59 + x21);
- uint64_t x62 = (x61 >> 0x1a);
- uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- uint64_t x64 = (x33 + (0x13 * x62));
- uint32_t x65 = (uint32_t) (x64 >> 0x1b);
- uint32_t x66 = ((uint32_t)x64 & 0x7ffffff);
- uint32_t x67 = (x65 + x36);
- uint32_t x68 = (x67 >> 0x1a);
- uint32_t x69 = (x67 & 0x3ffffff);
- return (Return x63, Return x60, Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, (x68 + x39), Return x69, Return x66))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e291m19_11limbs/fesquareDisplay.v b/src/Specific/solinas32_2e291m19_11limbs/fesquareDisplay.v
deleted file mode 100644
index 5c968d45b..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e291m19_11limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e291m19_11limbs/fesub.c b/src/Specific/solinas32_2e291m19_11limbs/fesub.c
deleted file mode 100644
index 8f9629267..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/fesub.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void fesub(uint32_t out[11], const uint32_t in1[11], const uint32_t in2[11]) {
- { const uint32_t x22 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x42 = in2[10];
- { const uint32_t x43 = in2[9];
- { const uint32_t x41 = in2[8];
- { const uint32_t x39 = in2[7];
- { const uint32_t x37 = in2[6];
- { const uint32_t x35 = in2[5];
- { const uint32_t x33 = in2[4];
- { const uint32_t x31 = in2[3];
- { const uint32_t x29 = in2[2];
- { const uint32_t x27 = in2[1];
- { const uint32_t x25 = in2[0];
- out[0] = ((0xfffffda + x5) - x25);
- out[1] = ((0x7fffffe + x7) - x27);
- out[2] = ((0xffffffe + x9) - x29);
- out[3] = ((0x7fffffe + x11) - x31);
- out[4] = ((0xffffffe + x13) - x33);
- out[5] = ((0x7fffffe + x15) - x35);
- out[6] = ((0xffffffe + x17) - x37);
- out[7] = ((0x7fffffe + x19) - x39);
- out[8] = ((0xffffffe + x21) - x41);
- out[9] = ((0x7fffffe + x23) - x43);
- out[10] = ((0x7fffffe + x22) - x42);
- }}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e291m19_11limbs/fesub.v b/src/Specific/solinas32_2e291m19_11limbs/fesub.v
deleted file mode 100644
index a957b1374..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e291m19_11limbs.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_2e291m19_11limbs/fesubDisplay.log b/src/Specific/solinas32_2e291m19_11limbs/fesubDisplay.log
deleted file mode 100644
index 73b55bc46..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- (((0x7fffffe + x22) - x42), ((0x7fffffe + x23) - x43), ((0xffffffe + x21) - x41), ((0x7fffffe + x19) - x39), ((0xffffffe + x17) - x37), ((0x7fffffe + x15) - x35), ((0xffffffe + x13) - x33), ((0x7fffffe + x11) - x31), ((0xffffffe + x9) - x29), ((0x7fffffe + x7) - x27), ((0xfffffda + x5) - x25)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e291m19_11limbs/fesubDisplay.v b/src/Specific/solinas32_2e291m19_11limbs/fesubDisplay.v
deleted file mode 100644
index 9b0594f00..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e291m19_11limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e291m19_11limbs/freeze.c b/src/Specific/solinas32_2e291m19_11limbs/freeze.c
deleted file mode 100644
index d9a0dfb55..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/freeze.c
+++ /dev/null
@@ -1,59 +0,0 @@
-static void freeze(uint32_t out[11], const uint32_t in1[11]) {
- { const uint32_t x19 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffed);
- { uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x4, 0x3ffffff);
- { uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x6, 0x7ffffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x8, 0x3ffffff);
- { uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x10, 0x7ffffff);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x12, 0x3ffffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x14, 0x7ffffff);
- { uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x16, 0x3ffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x18, 0x7ffffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x20, 0x3ffffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x19, 0x3ffffff);
- { uint32_t x54 = cmovznz32(x53, 0x0, 0xffffffff);
- { uint32_t x55 = (x54 & 0x7ffffed);
- { uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x22, Return x55);
- { uint32_t x59 = (x54 & 0x3ffffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x25, Return x59);
- { uint32_t x63 = (x54 & 0x7ffffff);
- { uint32_t x65, uint8_t x66 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x28, Return x63);
- { uint32_t x67 = (x54 & 0x3ffffff);
- { uint32_t x69, uint8_t x70 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x31, Return x67);
- { uint32_t x71 = (x54 & 0x7ffffff);
- { uint32_t x73, uint8_t x74 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x34, Return x71);
- { uint32_t x75 = (x54 & 0x3ffffff);
- { uint32_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x37, Return x75);
- { uint32_t x79 = (x54 & 0x7ffffff);
- { uint32_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x40, Return x79);
- { uint32_t x83 = (x54 & 0x3ffffff);
- { uint32_t x85, uint8_t x86 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x43, Return x83);
- { uint32_t x87 = (x54 & 0x7ffffff);
- { uint32_t x89, uint8_t x90 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x46, Return x87);
- { uint32_t x91 = (x54 & 0x3ffffff);
- { uint32_t x93, uint8_t x94 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x49, Return x91);
- { uint32_t x95 = (x54 & 0x3ffffff);
- { uint32_t x97, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x94, Return x52, Return x95);
- out[0] = x57;
- out[1] = x61;
- out[2] = x65;
- out[3] = x69;
- out[4] = x73;
- out[5] = x77;
- out[6] = x81;
- out[7] = x85;
- out[8] = x89;
- out[9] = x93;
- out[10] = x97;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e291m19_11limbs/freeze.v b/src/Specific/solinas32_2e291m19_11limbs/freeze.v
deleted file mode 100644
index b994819fb..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e291m19_11limbs.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_2e291m19_11limbs/freezeDisplay.log b/src/Specific/solinas32_2e291m19_11limbs/freezeDisplay.log
deleted file mode 100644
index b8a9f33c6..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/freezeDisplay.log
+++ /dev/null
@@ -1,41 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffed);
- uint32_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x23, Return x4, 0x3ffffff);
- uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x26, Return x6, 0x7ffffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x8, 0x3ffffff);
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x10, 0x7ffffff);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x12, 0x3ffffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x14, 0x7ffffff);
- uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x16, 0x3ffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x18, 0x7ffffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x20, 0x3ffffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x19, 0x3ffffff);
- uint32_t x54 = cmovznz32(x53, 0x0, 0xffffffff);
- uint32_t x55 = (x54 & 0x7ffffed);
- uint32_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x22, Return x55);
- uint32_t x59 = (x54 & 0x3ffffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x25, Return x59);
- uint32_t x63 = (x54 & 0x7ffffff);
- uint32_t x65, uint8_t x66 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x28, Return x63);
- uint32_t x67 = (x54 & 0x3ffffff);
- uint32_t x69, uint8_t x70 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x31, Return x67);
- uint32_t x71 = (x54 & 0x7ffffff);
- uint32_t x73, uint8_t x74 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x34, Return x71);
- uint32_t x75 = (x54 & 0x3ffffff);
- uint32_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x37, Return x75);
- uint32_t x79 = (x54 & 0x7ffffff);
- uint32_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x40, Return x79);
- uint32_t x83 = (x54 & 0x3ffffff);
- uint32_t x85, uint8_t x86 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x43, Return x83);
- uint32_t x87 = (x54 & 0x7ffffff);
- uint32_t x89, uint8_t x90 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x46, Return x87);
- uint32_t x91 = (x54 & 0x3ffffff);
- uint32_t x93, uint8_t x94 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x49, Return x91);
- uint32_t x95 = (x54 & 0x3ffffff);
- uint32_t x97, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x94, Return x52, Return x95);
- (Return x97, Return x93, Return x89, Return x85, Return x81, Return x77, Return x73, Return x69, Return x65, Return x61, Return x57))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → ReturnType (uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e291m19_11limbs/freezeDisplay.v b/src/Specific/solinas32_2e291m19_11limbs/freezeDisplay.v
deleted file mode 100644
index 79522dfc6..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e291m19_11limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e291m19_11limbs/py_interpreter.sh b/src/Specific/solinas32_2e291m19_11limbs/py_interpreter.sh
deleted file mode 100755
index 1a6fa516f..000000000
--- a/src/Specific/solinas32_2e291m19_11limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**291 - 19' -Dmodulus_bytes='26 + 5/11' -Da24='121665'
diff --git a/src/Specific/solinas32_2e291m19_12limbs/CurveParameters.v b/src/Specific/solinas32_2e291m19_12limbs/CurveParameters.v
deleted file mode 100644
index e05bfb74e..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^291 - 19
-Base: 24.25
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 12%nat;
- base := 24 + 1/4;
- bitwidth := 32;
- s := 2^291;
- c := [(1, 19)];
- carry_chains := Some [seq 0 (pred 12); [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_2e291m19_12limbs/Synthesis.v b/src/Specific/solinas32_2e291m19_12limbs/Synthesis.v
deleted file mode 100644
index 61e64bdf2..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e291m19_12limbs.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_2e291m19_12limbs/compiler.sh b/src/Specific/solinas32_2e291m19_12limbs/compiler.sh
deleted file mode 100755
index 210fd1c53..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/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,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='{25,24,24,24,25,24,24,24,25,24,24,24}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='37' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<291) - 19' "$@"
diff --git a/src/Specific/solinas32_2e291m19_12limbs/compilerxx.sh b/src/Specific/solinas32_2e291m19_12limbs/compilerxx.sh
deleted file mode 100755
index 9133a73e8..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/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,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='{25,24,24,24,25,24,24,24,25,24,24,24}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='37' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<291) - 19' "$@"
diff --git a/src/Specific/solinas32_2e291m19_12limbs/feadd.c b/src/Specific/solinas32_2e291m19_12limbs/feadd.c
deleted file mode 100644
index 68eccd2bc..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/feadd.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void feadd(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- out[0] = (x5 + x27);
- out[1] = (x7 + x29);
- out[2] = (x9 + x31);
- out[3] = (x11 + x33);
- out[4] = (x13 + x35);
- out[5] = (x15 + x37);
- out[6] = (x17 + x39);
- out[7] = (x19 + x41);
- out[8] = (x21 + x43);
- out[9] = (x23 + x45);
- out[10] = (x25 + x47);
- out[11] = (x24 + x46);
- }}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e291m19_12limbs/feadd.v b/src/Specific/solinas32_2e291m19_12limbs/feadd.v
deleted file mode 100644
index 9571fd6f3..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e291m19_12limbs.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_2e291m19_12limbs/feaddDisplay.log b/src/Specific/solinas32_2e291m19_12limbs/feaddDisplay.log
deleted file mode 100644
index 4109af59c..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- ((x24 + x46), (x25 + x47), (x23 + x45), (x21 + x43), (x19 + x41), (x17 + x39), (x15 + x37), (x13 + x35), (x11 + x33), (x9 + x31), (x7 + x29), (x5 + x27)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e291m19_12limbs/feaddDisplay.v b/src/Specific/solinas32_2e291m19_12limbs/feaddDisplay.v
deleted file mode 100644
index c1ebb1ab8..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e291m19_12limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e291m19_12limbs/fecarry.v b/src/Specific/solinas32_2e291m19_12limbs/fecarry.v
deleted file mode 100644
index e858bdfcc..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e291m19_12limbs.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_2e291m19_12limbs/fecarryDisplay.v b/src/Specific/solinas32_2e291m19_12limbs/fecarryDisplay.v
deleted file mode 100644
index e7e637f59..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e291m19_12limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e291m19_12limbs/femul.c b/src/Specific/solinas32_2e291m19_12limbs/femul.c
deleted file mode 100644
index 9fdc08fa1..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/femul.c
+++ /dev/null
@@ -1,92 +0,0 @@
-static void femul(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- { uint64_t x48 = (((uint64_t)x5 * x46) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + ((0x2 * ((uint64_t)x15 * x39)) + ((0x2 * ((uint64_t)x17 * x37)) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + ((0x2 * ((uint64_t)x23 * x31)) + ((0x2 * ((uint64_t)x25 * x29)) + ((uint64_t)x24 * x27))))))))))));
- { uint64_t x49 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + ((0x2 * ((uint64_t)x15 * x37)) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((0x2 * ((uint64_t)x23 * x29)) + ((uint64_t)x25 * x27))))))))))) + (0x13 * ((uint64_t)x24 * x46)));
- { uint64_t x50 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (((uint64_t)x21 * x29) + ((uint64_t)x23 * x27)))))))))) + (0x13 * (((uint64_t)x25 * x46) + ((uint64_t)x24 * x47))));
- { uint64_t x51 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + (((uint64_t)x13 * x35) + ((0x2 * ((uint64_t)x15 * x33)) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((uint64_t)x21 * x27))))))))) + (0x13 * ((0x2 * ((uint64_t)x23 * x46)) + ((0x2 * ((uint64_t)x25 * x47)) + (0x2 * ((uint64_t)x24 * x45))))));
- { uint64_t x52 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + ((0x2 * ((uint64_t)x15 * x31)) + ((0x2 * ((uint64_t)x17 * x29)) + ((uint64_t)x19 * x27)))))))) + (0x13 * (((uint64_t)x21 * x46) + ((0x2 * ((uint64_t)x23 * x47)) + ((0x2 * ((uint64_t)x25 * x45)) + ((uint64_t)x24 * x43))))));
- { uint64_t x53 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + ((0x2 * ((uint64_t)x15 * x29)) + ((uint64_t)x17 * x27))))))) + (0x13 * (((uint64_t)x19 * x46) + (((uint64_t)x21 * x47) + ((0x2 * ((uint64_t)x23 * x45)) + (((uint64_t)x25 * x43) + ((uint64_t)x24 * x41)))))));
- { uint64_t x54 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + ((uint64_t)x15 * x27)))))) + (0x13 * (((uint64_t)x17 * x46) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + ((uint64_t)x24 * x39))))))));
- { uint64_t x55 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((uint64_t)x13 * x27))))) + (0x13 * ((0x2 * ((uint64_t)x15 * x46)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + (0x2 * ((uint64_t)x24 * x37))))))))));
- { uint64_t x56 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((uint64_t)x11 * x27)))) + (0x13 * (((uint64_t)x13 * x46) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + ((0x2 * ((uint64_t)x23 * x39)) + ((0x2 * ((uint64_t)x25 * x37)) + ((uint64_t)x24 * x35))))))))));
- { uint64_t x57 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((uint64_t)x9 * x27))) + (0x13 * (((uint64_t)x11 * x46) + (((uint64_t)x13 * x47) + ((0x2 * ((uint64_t)x15 * x45)) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + ((0x2 * ((uint64_t)x23 * x37)) + (((uint64_t)x25 * x35) + ((uint64_t)x24 * x33)))))))))));
- { uint64_t x58 = ((((uint64_t)x5 * x29) + ((uint64_t)x7 * x27)) + (0x13 * (((uint64_t)x9 * x46) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + (((uint64_t)x25 * x33) + ((uint64_t)x24 * x31))))))))))));
- { uint64_t x59 = (((uint64_t)x5 * x27) + (0x13 * ((0x2 * ((uint64_t)x7 * x46)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + (((uint64_t)x13 * x43) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + ((0x2 * ((uint64_t)x23 * x33)) + ((0x2 * ((uint64_t)x25 * x31)) + (0x2 * ((uint64_t)x24 * x29))))))))))))));
- { uint64_t x60 = (x59 >> 0x19);
- { uint32_t x61 = ((uint32_t)x59 & 0x1ffffff);
- { uint64_t x62 = (x60 + x58);
- { uint64_t x63 = (x62 >> 0x18);
- { uint32_t x64 = ((uint32_t)x62 & 0xffffff);
- { uint64_t x65 = (x63 + x57);
- { uint64_t x66 = (x65 >> 0x18);
- { uint32_t x67 = ((uint32_t)x65 & 0xffffff);
- { uint64_t x68 = (x66 + x56);
- { uint64_t x69 = (x68 >> 0x18);
- { uint32_t x70 = ((uint32_t)x68 & 0xffffff);
- { uint64_t x71 = (x69 + x55);
- { uint64_t x72 = (x71 >> 0x19);
- { uint32_t x73 = ((uint32_t)x71 & 0x1ffffff);
- { uint64_t x74 = (x72 + x54);
- { uint64_t x75 = (x74 >> 0x18);
- { uint32_t x76 = ((uint32_t)x74 & 0xffffff);
- { uint64_t x77 = (x75 + x53);
- { uint64_t x78 = (x77 >> 0x18);
- { uint32_t x79 = ((uint32_t)x77 & 0xffffff);
- { uint64_t x80 = (x78 + x52);
- { uint64_t x81 = (x80 >> 0x18);
- { uint32_t x82 = ((uint32_t)x80 & 0xffffff);
- { uint64_t x83 = (x81 + x51);
- { uint64_t x84 = (x83 >> 0x19);
- { uint32_t x85 = ((uint32_t)x83 & 0x1ffffff);
- { uint64_t x86 = (x84 + x50);
- { uint64_t x87 = (x86 >> 0x18);
- { uint32_t x88 = ((uint32_t)x86 & 0xffffff);
- { uint64_t x89 = (x87 + x49);
- { uint64_t x90 = (x89 >> 0x18);
- { uint32_t x91 = ((uint32_t)x89 & 0xffffff);
- { uint64_t x92 = (x90 + x48);
- { uint64_t x93 = (x92 >> 0x18);
- { uint32_t x94 = ((uint32_t)x92 & 0xffffff);
- { uint64_t x95 = (x61 + (0x13 * x93));
- { uint32_t x96 = (uint32_t) (x95 >> 0x19);
- { uint32_t x97 = ((uint32_t)x95 & 0x1ffffff);
- { uint32_t x98 = (x96 + x64);
- { uint32_t x99 = (x98 >> 0x18);
- { uint32_t x100 = (x98 & 0xffffff);
- out[0] = x97;
- out[1] = x100;
- out[2] = (x99 + x67);
- out[3] = x70;
- out[4] = x73;
- out[5] = x76;
- out[6] = x79;
- out[7] = x82;
- out[8] = x85;
- out[9] = x88;
- out[10] = x91;
- out[11] = x94;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e291m19_12limbs/femul.v b/src/Specific/solinas32_2e291m19_12limbs/femul.v
deleted file mode 100644
index 58bdf4b33..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e291m19_12limbs.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_2e291m19_12limbs/femulDisplay.log b/src/Specific/solinas32_2e291m19_12limbs/femulDisplay.log
deleted file mode 100644
index 1d9c944d5..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/femulDisplay.log
+++ /dev/null
@@ -1,60 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- uint64_t x48 = (((uint64_t)x5 * x46) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + ((0x2 * ((uint64_t)x15 * x39)) + ((0x2 * ((uint64_t)x17 * x37)) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + ((0x2 * ((uint64_t)x23 * x31)) + ((0x2 * ((uint64_t)x25 * x29)) + ((uint64_t)x24 * x27))))))))))));
- uint64_t x49 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + ((0x2 * ((uint64_t)x15 * x37)) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((0x2 * ((uint64_t)x23 * x29)) + ((uint64_t)x25 * x27))))))))))) + (0x13 * ((uint64_t)x24 * x46)));
- uint64_t x50 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (((uint64_t)x21 * x29) + ((uint64_t)x23 * x27)))))))))) + (0x13 * (((uint64_t)x25 * x46) + ((uint64_t)x24 * x47))));
- uint64_t x51 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + (((uint64_t)x13 * x35) + ((0x2 * ((uint64_t)x15 * x33)) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((uint64_t)x21 * x27))))))))) + (0x13 * ((0x2 * ((uint64_t)x23 * x46)) + ((0x2 * ((uint64_t)x25 * x47)) + (0x2 * ((uint64_t)x24 * x45))))));
- uint64_t x52 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + ((0x2 * ((uint64_t)x15 * x31)) + ((0x2 * ((uint64_t)x17 * x29)) + ((uint64_t)x19 * x27)))))))) + (0x13 * (((uint64_t)x21 * x46) + ((0x2 * ((uint64_t)x23 * x47)) + ((0x2 * ((uint64_t)x25 * x45)) + ((uint64_t)x24 * x43))))));
- uint64_t x53 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + ((0x2 * ((uint64_t)x15 * x29)) + ((uint64_t)x17 * x27))))))) + (0x13 * (((uint64_t)x19 * x46) + (((uint64_t)x21 * x47) + ((0x2 * ((uint64_t)x23 * x45)) + (((uint64_t)x25 * x43) + ((uint64_t)x24 * x41)))))));
- uint64_t x54 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + ((uint64_t)x15 * x27)))))) + (0x13 * (((uint64_t)x17 * x46) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + ((uint64_t)x24 * x39))))))));
- uint64_t x55 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((uint64_t)x13 * x27))))) + (0x13 * ((0x2 * ((uint64_t)x15 * x46)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + (0x2 * ((uint64_t)x24 * x37))))))))));
- uint64_t x56 = ((((uint64_t)x5 * x33) + ((0x2 * ((uint64_t)x7 * x31)) + ((0x2 * ((uint64_t)x9 * x29)) + ((uint64_t)x11 * x27)))) + (0x13 * (((uint64_t)x13 * x46) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + ((0x2 * ((uint64_t)x23 * x39)) + ((0x2 * ((uint64_t)x25 * x37)) + ((uint64_t)x24 * x35))))))))));
- uint64_t x57 = ((((uint64_t)x5 * x31) + ((0x2 * ((uint64_t)x7 * x29)) + ((uint64_t)x9 * x27))) + (0x13 * (((uint64_t)x11 * x46) + (((uint64_t)x13 * x47) + ((0x2 * ((uint64_t)x15 * x45)) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + ((0x2 * ((uint64_t)x23 * x37)) + (((uint64_t)x25 * x35) + ((uint64_t)x24 * x33)))))))))));
- uint64_t x58 = ((((uint64_t)x5 * x29) + ((uint64_t)x7 * x27)) + (0x13 * (((uint64_t)x9 * x46) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + (((uint64_t)x25 * x33) + ((uint64_t)x24 * x31))))))))))));
- uint64_t x59 = (((uint64_t)x5 * x27) + (0x13 * ((0x2 * ((uint64_t)x7 * x46)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + (((uint64_t)x13 * x43) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + ((0x2 * ((uint64_t)x23 * x33)) + ((0x2 * ((uint64_t)x25 * x31)) + (0x2 * ((uint64_t)x24 * x29))))))))))))));
- uint64_t x60 = (x59 >> 0x19);
- uint32_t x61 = ((uint32_t)x59 & 0x1ffffff);
- uint64_t x62 = (x60 + x58);
- uint64_t x63 = (x62 >> 0x18);
- uint32_t x64 = ((uint32_t)x62 & 0xffffff);
- uint64_t x65 = (x63 + x57);
- uint64_t x66 = (x65 >> 0x18);
- uint32_t x67 = ((uint32_t)x65 & 0xffffff);
- uint64_t x68 = (x66 + x56);
- uint64_t x69 = (x68 >> 0x18);
- uint32_t x70 = ((uint32_t)x68 & 0xffffff);
- uint64_t x71 = (x69 + x55);
- uint64_t x72 = (x71 >> 0x19);
- uint32_t x73 = ((uint32_t)x71 & 0x1ffffff);
- uint64_t x74 = (x72 + x54);
- uint64_t x75 = (x74 >> 0x18);
- uint32_t x76 = ((uint32_t)x74 & 0xffffff);
- uint64_t x77 = (x75 + x53);
- uint64_t x78 = (x77 >> 0x18);
- uint32_t x79 = ((uint32_t)x77 & 0xffffff);
- uint64_t x80 = (x78 + x52);
- uint64_t x81 = (x80 >> 0x18);
- uint32_t x82 = ((uint32_t)x80 & 0xffffff);
- uint64_t x83 = (x81 + x51);
- uint64_t x84 = (x83 >> 0x19);
- uint32_t x85 = ((uint32_t)x83 & 0x1ffffff);
- uint64_t x86 = (x84 + x50);
- uint64_t x87 = (x86 >> 0x18);
- uint32_t x88 = ((uint32_t)x86 & 0xffffff);
- uint64_t x89 = (x87 + x49);
- uint64_t x90 = (x89 >> 0x18);
- uint32_t x91 = ((uint32_t)x89 & 0xffffff);
- uint64_t x92 = (x90 + x48);
- uint64_t x93 = (x92 >> 0x18);
- uint32_t x94 = ((uint32_t)x92 & 0xffffff);
- uint64_t x95 = (x61 + (0x13 * x93));
- uint32_t x96 = (uint32_t) (x95 >> 0x19);
- uint32_t x97 = ((uint32_t)x95 & 0x1ffffff);
- uint32_t x98 = (x96 + x64);
- uint32_t x99 = (x98 >> 0x18);
- uint32_t x100 = (x98 & 0xffffff);
- return (Return x94, Return x91, Return x88, Return x85, Return x82, Return x79, Return x76, Return x73, Return x70, (x99 + x67), Return x100, Return x97))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e291m19_12limbs/femulDisplay.v b/src/Specific/solinas32_2e291m19_12limbs/femulDisplay.v
deleted file mode 100644
index a26f81bf8..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e291m19_12limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e291m19_12limbs/fesquare.c b/src/Specific/solinas32_2e291m19_12limbs/fesquare.c
deleted file mode 100644
index 5cfc15536..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/fesquare.c
+++ /dev/null
@@ -1,80 +0,0 @@
-static void fesquare(uint32_t out[12], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x23 = (((uint64_t)x2 * x21) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x21 * x2))))))))))));
- { uint64_t x24 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x13 * ((uint64_t)x21 * x21)));
- { uint64_t x25 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x13 * (((uint64_t)x22 * x21) + ((uint64_t)x21 * x22))));
- { uint64_t x26 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x13 * ((0x2 * ((uint64_t)x20 * x21)) + ((0x2 * ((uint64_t)x22 * x22)) + (0x2 * ((uint64_t)x21 * x20))))));
- { uint64_t x27 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x13 * (((uint64_t)x18 * x21) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((uint64_t)x21 * x18))))));
- { uint64_t x28 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x13 * (((uint64_t)x16 * x21) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + ((uint64_t)x21 * x16)))))));
- { uint64_t x29 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x13 * (((uint64_t)x14 * x21) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + ((uint64_t)x21 * x14))))))));
- { uint64_t x30 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x13 * ((0x2 * ((uint64_t)x12 * x21)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + (0x2 * ((uint64_t)x21 * x12))))))))));
- { uint64_t x31 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x13 * (((uint64_t)x10 * x21) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((uint64_t)x21 * x10))))))))));
- { uint64_t x32 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x13 * (((uint64_t)x8 * x21) + (((uint64_t)x10 * x22) + ((0x2 * ((uint64_t)x12 * x20)) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + ((0x2 * ((uint64_t)x20 * x12)) + (((uint64_t)x22 * x10) + ((uint64_t)x21 * x8)))))))))));
- { uint64_t x33 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x13 * (((uint64_t)x6 * x21) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + ((uint64_t)x21 * x6))))))))))));
- { uint64_t x34 = (((uint64_t)x2 * x2) + (0x13 * ((0x2 * ((uint64_t)x4 * x21)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + (0x2 * ((uint64_t)x21 * x4))))))))))))));
- { uint64_t x35 = (x34 >> 0x19);
- { uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- { uint64_t x37 = (x35 + x33);
- { uint64_t x38 = (x37 >> 0x18);
- { uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- { uint64_t x40 = (x38 + x32);
- { uint64_t x41 = (x40 >> 0x18);
- { uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- { uint64_t x43 = (x41 + x31);
- { uint64_t x44 = (x43 >> 0x18);
- { uint32_t x45 = ((uint32_t)x43 & 0xffffff);
- { uint64_t x46 = (x44 + x30);
- { uint64_t x47 = (x46 >> 0x19);
- { uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- { uint64_t x49 = (x47 + x29);
- { uint64_t x50 = (x49 >> 0x18);
- { uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- { uint64_t x52 = (x50 + x28);
- { uint64_t x53 = (x52 >> 0x18);
- { uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- { uint64_t x55 = (x53 + x27);
- { uint64_t x56 = (x55 >> 0x18);
- { uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- { uint64_t x58 = (x56 + x26);
- { uint64_t x59 = (x58 >> 0x19);
- { uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- { uint64_t x61 = (x59 + x25);
- { uint64_t x62 = (x61 >> 0x18);
- { uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- { uint64_t x64 = (x62 + x24);
- { uint64_t x65 = (x64 >> 0x18);
- { uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- { uint64_t x67 = (x65 + x23);
- { uint64_t x68 = (x67 >> 0x18);
- { uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- { uint64_t x70 = (x36 + (0x13 * x68));
- { uint32_t x71 = (uint32_t) (x70 >> 0x19);
- { uint32_t x72 = ((uint32_t)x70 & 0x1ffffff);
- { uint32_t x73 = (x71 + x39);
- { uint32_t x74 = (x73 >> 0x18);
- { uint32_t x75 = (x73 & 0xffffff);
- out[0] = x72;
- out[1] = x75;
- out[2] = (x74 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- out[7] = x57;
- out[8] = x60;
- out[9] = x63;
- out[10] = x66;
- out[11] = x69;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e291m19_12limbs/fesquare.v b/src/Specific/solinas32_2e291m19_12limbs/fesquare.v
deleted file mode 100644
index 10065e845..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e291m19_12limbs.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_2e291m19_12limbs/fesquareDisplay.log b/src/Specific/solinas32_2e291m19_12limbs/fesquareDisplay.log
deleted file mode 100644
index 4f44c4241..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,60 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x23 = (((uint64_t)x2 * x21) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x21 * x2))))))))))));
- uint64_t x24 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x13 * ((uint64_t)x21 * x21)));
- uint64_t x25 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x13 * (((uint64_t)x22 * x21) + ((uint64_t)x21 * x22))));
- uint64_t x26 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x13 * ((0x2 * ((uint64_t)x20 * x21)) + ((0x2 * ((uint64_t)x22 * x22)) + (0x2 * ((uint64_t)x21 * x20))))));
- uint64_t x27 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x13 * (((uint64_t)x18 * x21) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((uint64_t)x21 * x18))))));
- uint64_t x28 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x13 * (((uint64_t)x16 * x21) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + ((uint64_t)x21 * x16)))))));
- uint64_t x29 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x13 * (((uint64_t)x14 * x21) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + ((uint64_t)x21 * x14))))))));
- uint64_t x30 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x13 * ((0x2 * ((uint64_t)x12 * x21)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + (0x2 * ((uint64_t)x21 * x12))))))))));
- uint64_t x31 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x13 * (((uint64_t)x10 * x21) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((uint64_t)x21 * x10))))))))));
- uint64_t x32 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x13 * (((uint64_t)x8 * x21) + (((uint64_t)x10 * x22) + ((0x2 * ((uint64_t)x12 * x20)) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + ((0x2 * ((uint64_t)x20 * x12)) + (((uint64_t)x22 * x10) + ((uint64_t)x21 * x8)))))))))));
- uint64_t x33 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x13 * (((uint64_t)x6 * x21) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + ((uint64_t)x21 * x6))))))))))));
- uint64_t x34 = (((uint64_t)x2 * x2) + (0x13 * ((0x2 * ((uint64_t)x4 * x21)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + (0x2 * ((uint64_t)x21 * x4))))))))))))));
- uint64_t x35 = (x34 >> 0x19);
- uint32_t x36 = ((uint32_t)x34 & 0x1ffffff);
- uint64_t x37 = (x35 + x33);
- uint64_t x38 = (x37 >> 0x18);
- uint32_t x39 = ((uint32_t)x37 & 0xffffff);
- uint64_t x40 = (x38 + x32);
- uint64_t x41 = (x40 >> 0x18);
- uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- uint64_t x43 = (x41 + x31);
- uint64_t x44 = (x43 >> 0x18);
- uint32_t x45 = ((uint32_t)x43 & 0xffffff);
- uint64_t x46 = (x44 + x30);
- uint64_t x47 = (x46 >> 0x19);
- uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- uint64_t x49 = (x47 + x29);
- uint64_t x50 = (x49 >> 0x18);
- uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- uint64_t x52 = (x50 + x28);
- uint64_t x53 = (x52 >> 0x18);
- uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- uint64_t x55 = (x53 + x27);
- uint64_t x56 = (x55 >> 0x18);
- uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- uint64_t x58 = (x56 + x26);
- uint64_t x59 = (x58 >> 0x19);
- uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- uint64_t x61 = (x59 + x25);
- uint64_t x62 = (x61 >> 0x18);
- uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- uint64_t x64 = (x62 + x24);
- uint64_t x65 = (x64 >> 0x18);
- uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- uint64_t x67 = (x65 + x23);
- uint64_t x68 = (x67 >> 0x18);
- uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- uint64_t x70 = (x36 + (0x13 * x68));
- uint32_t x71 = (uint32_t) (x70 >> 0x19);
- uint32_t x72 = ((uint32_t)x70 & 0x1ffffff);
- uint32_t x73 = (x71 + x39);
- uint32_t x74 = (x73 >> 0x18);
- uint32_t x75 = (x73 & 0xffffff);
- return (Return x69, Return x66, Return x63, Return x60, Return x57, Return x54, Return x51, Return x48, Return x45, (x74 + x42), Return x75, Return x72))
-x
- : 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e291m19_12limbs/fesquareDisplay.v b/src/Specific/solinas32_2e291m19_12limbs/fesquareDisplay.v
deleted file mode 100644
index 51f8a8221..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e291m19_12limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e291m19_12limbs/fesub.c b/src/Specific/solinas32_2e291m19_12limbs/fesub.c
deleted file mode 100644
index 63ebc937d..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/fesub.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void fesub(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- out[0] = ((0x3ffffda + x5) - x27);
- out[1] = ((0x1fffffe + x7) - x29);
- out[2] = ((0x1fffffe + x9) - x31);
- out[3] = ((0x1fffffe + x11) - x33);
- out[4] = ((0x3fffffe + x13) - x35);
- out[5] = ((0x1fffffe + x15) - x37);
- out[6] = ((0x1fffffe + x17) - x39);
- out[7] = ((0x1fffffe + x19) - x41);
- out[8] = ((0x3fffffe + x21) - x43);
- out[9] = ((0x1fffffe + x23) - x45);
- out[10] = ((0x1fffffe + x25) - x47);
- out[11] = ((0x1fffffe + x24) - x46);
- }}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e291m19_12limbs/fesub.v b/src/Specific/solinas32_2e291m19_12limbs/fesub.v
deleted file mode 100644
index 1edb92f95..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e291m19_12limbs.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_2e291m19_12limbs/fesubDisplay.log b/src/Specific/solinas32_2e291m19_12limbs/fesubDisplay.log
deleted file mode 100644
index 0c37b869f..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- (((0x1fffffe + x24) - x46), ((0x1fffffe + x25) - x47), ((0x1fffffe + x23) - x45), ((0x3fffffe + x21) - x43), ((0x1fffffe + x19) - x41), ((0x1fffffe + x17) - x39), ((0x1fffffe + x15) - x37), ((0x3fffffe + x13) - x35), ((0x1fffffe + x11) - x33), ((0x1fffffe + x9) - x31), ((0x1fffffe + x7) - x29), ((0x3ffffda + x5) - x27)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e291m19_12limbs/fesubDisplay.v b/src/Specific/solinas32_2e291m19_12limbs/fesubDisplay.v
deleted file mode 100644
index 667a843b2..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e291m19_12limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e291m19_12limbs/freeze.c b/src/Specific/solinas32_2e291m19_12limbs/freeze.c
deleted file mode 100644
index 37a19b100..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/freeze.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void freeze(uint32_t out[12], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffed);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x4, 0xffffff);
- { uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x6, 0xffffff);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x8, 0xffffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x10, 0x1ffffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x12, 0xffffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x14, 0xffffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x16, 0xffffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x18, 0x1ffffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x20, 0xffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x22, 0xffffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x21, 0xffffff);
- { uint32_t x59 = cmovznz32(x58, 0x0, 0xffffffff);
- { uint32_t x60 = (x59 & 0x1ffffed);
- { uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x24, Return x60);
- { uint32_t x64 = (x59 & 0xffffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x27, Return x64);
- { uint32_t x68 = (x59 & 0xffffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x30, Return x68);
- { uint32_t x72 = (x59 & 0xffffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x33, Return x72);
- { uint32_t x76 = (x59 & 0x1ffffff);
- { uint32_t x78, uint8_t x79 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x36, Return x76);
- { uint32_t x80 = (x59 & 0xffffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x39, Return x80);
- { uint32_t x84 = (x59 & 0xffffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x42, Return x84);
- { uint32_t x88 = (x59 & 0xffffff);
- { uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x45, Return x88);
- { uint32_t x92 = (x59 & 0x1ffffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x48, Return x92);
- { uint32_t x96 = (x59 & 0xffffff);
- { uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x51, Return x96);
- { uint32_t x100 = (x59 & 0xffffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x54, Return x100);
- { uint32_t x104 = (x59 & 0xffffff);
- { uint32_t x106, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x57, Return x104);
- out[0] = x62;
- out[1] = x66;
- out[2] = x70;
- out[3] = x74;
- out[4] = x78;
- out[5] = x82;
- out[6] = x86;
- out[7] = x90;
- out[8] = x94;
- out[9] = x98;
- out[10] = x102;
- out[11] = x106;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e291m19_12limbs/freeze.v b/src/Specific/solinas32_2e291m19_12limbs/freeze.v
deleted file mode 100644
index 4c6da10d1..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e291m19_12limbs.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_2e291m19_12limbs/freezeDisplay.log b/src/Specific/solinas32_2e291m19_12limbs/freezeDisplay.log
deleted file mode 100644
index ed2fe4cb7..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/freezeDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffed);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x4, 0xffffff);
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x6, 0xffffff);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x8, 0xffffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x10, 0x1ffffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x12, 0xffffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x14, 0xffffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x16, 0xffffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x18, 0x1ffffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x20, 0xffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x22, 0xffffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x21, 0xffffff);
- uint32_t x59 = cmovznz32(x58, 0x0, 0xffffffff);
- uint32_t x60 = (x59 & 0x1ffffed);
- uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x24, Return x60);
- uint32_t x64 = (x59 & 0xffffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x27, Return x64);
- uint32_t x68 = (x59 & 0xffffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x30, Return x68);
- uint32_t x72 = (x59 & 0xffffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x33, Return x72);
- uint32_t x76 = (x59 & 0x1ffffff);
- uint32_t x78, uint8_t x79 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x36, Return x76);
- uint32_t x80 = (x59 & 0xffffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x39, Return x80);
- uint32_t x84 = (x59 & 0xffffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x42, Return x84);
- uint32_t x88 = (x59 & 0xffffff);
- uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x45, Return x88);
- uint32_t x92 = (x59 & 0x1ffffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x48, Return x92);
- uint32_t x96 = (x59 & 0xffffff);
- uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x51, Return x96);
- uint32_t x100 = (x59 & 0xffffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x54, Return x100);
- uint32_t x104 = (x59 & 0xffffff);
- uint32_t x106, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x57, Return x104);
- (Return x106, Return x102, Return x98, Return x94, Return x90, Return x86, Return x82, Return x78, Return x74, Return x70, Return x66, Return x62))
-x
- : 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e291m19_12limbs/freezeDisplay.v b/src/Specific/solinas32_2e291m19_12limbs/freezeDisplay.v
deleted file mode 100644
index ae6828696..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e291m19_12limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e291m19_12limbs/py_interpreter.sh b/src/Specific/solinas32_2e291m19_12limbs/py_interpreter.sh
deleted file mode 100755
index 0d2f972b4..000000000
--- a/src/Specific/solinas32_2e291m19_12limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**291 - 19' -Dmodulus_bytes='24.25' -Da24='121665'
diff --git a/src/Specific/solinas32_2e321m9_12limbs/CurveParameters.v b/src/Specific/solinas32_2e321m9_12limbs/CurveParameters.v
deleted file mode 100644
index 9421273b4..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^321 - 9
-Base: 26.75
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 12%nat;
- base := 26 + 3/4;
- bitwidth := 32;
- s := 2^321;
- c := [(1, 9)];
- carry_chains := Some [seq 0 (pred 12); [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_2e321m9_12limbs/Synthesis.v b/src/Specific/solinas32_2e321m9_12limbs/Synthesis.v
deleted file mode 100644
index b8bb916cd..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e321m9_12limbs.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_2e321m9_12limbs/compiler.sh b/src/Specific/solinas32_2e321m9_12limbs/compiler.sh
deleted file mode 100755
index 6781620fe..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/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,0x00,0x00,0x00,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,27,27,26,27,27,27,26,27,27,27,26}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<321) - 9' "$@"
diff --git a/src/Specific/solinas32_2e321m9_12limbs/compilerxx.sh b/src/Specific/solinas32_2e321m9_12limbs/compilerxx.sh
deleted file mode 100755
index a04755d9f..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/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,0x00,0x00,0x00,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,27,27,26,27,27,27,26,27,27,27,26}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<321) - 9' "$@"
diff --git a/src/Specific/solinas32_2e321m9_12limbs/feadd.c b/src/Specific/solinas32_2e321m9_12limbs/feadd.c
deleted file mode 100644
index 68eccd2bc..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/feadd.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void feadd(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- out[0] = (x5 + x27);
- out[1] = (x7 + x29);
- out[2] = (x9 + x31);
- out[3] = (x11 + x33);
- out[4] = (x13 + x35);
- out[5] = (x15 + x37);
- out[6] = (x17 + x39);
- out[7] = (x19 + x41);
- out[8] = (x21 + x43);
- out[9] = (x23 + x45);
- out[10] = (x25 + x47);
- out[11] = (x24 + x46);
- }}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e321m9_12limbs/feadd.v b/src/Specific/solinas32_2e321m9_12limbs/feadd.v
deleted file mode 100644
index e71676c35..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e321m9_12limbs.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_2e321m9_12limbs/feaddDisplay.log b/src/Specific/solinas32_2e321m9_12limbs/feaddDisplay.log
deleted file mode 100644
index 4109af59c..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- ((x24 + x46), (x25 + x47), (x23 + x45), (x21 + x43), (x19 + x41), (x17 + x39), (x15 + x37), (x13 + x35), (x11 + x33), (x9 + x31), (x7 + x29), (x5 + x27)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e321m9_12limbs/feaddDisplay.v b/src/Specific/solinas32_2e321m9_12limbs/feaddDisplay.v
deleted file mode 100644
index 24879c770..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e321m9_12limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e321m9_12limbs/fecarry.v b/src/Specific/solinas32_2e321m9_12limbs/fecarry.v
deleted file mode 100644
index 43da69fcf..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e321m9_12limbs.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_2e321m9_12limbs/fecarryDisplay.v b/src/Specific/solinas32_2e321m9_12limbs/fecarryDisplay.v
deleted file mode 100644
index c328a7695..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e321m9_12limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e321m9_12limbs/femul.c b/src/Specific/solinas32_2e321m9_12limbs/femul.c
deleted file mode 100644
index 382ef7b72..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/femul.c
+++ /dev/null
@@ -1,92 +0,0 @@
-static void femul(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- { uint64_t x48 = (((uint64_t)x5 * x46) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + (((uint64_t)x23 * x31) + (((uint64_t)x25 * x29) + ((uint64_t)x24 * x27))))))))))));
- { uint64_t x49 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + ((0x2 * ((uint64_t)x11 * x41)) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + ((0x2 * ((uint64_t)x19 * x33)) + (((uint64_t)x21 * x31) + (((uint64_t)x23 * x29) + ((uint64_t)x25 * x27))))))))))) + (0x9 * (0x2 * ((uint64_t)x24 * x46))));
- { uint64_t x50 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + ((0x2 * ((uint64_t)x17 * x33)) + ((0x2 * ((uint64_t)x19 * x31)) + (((uint64_t)x21 * x29) + ((uint64_t)x23 * x27)))))))))) + (0x9 * ((0x2 * ((uint64_t)x25 * x46)) + (0x2 * ((uint64_t)x24 * x47)))));
- { uint64_t x51 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + (((uint64_t)x13 * x35) + ((0x2 * ((uint64_t)x15 * x33)) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((uint64_t)x21 * x27))))))))) + (0x9 * ((0x2 * ((uint64_t)x23 * x46)) + ((0x2 * ((uint64_t)x25 * x47)) + (0x2 * ((uint64_t)x24 * x45))))));
- { uint64_t x52 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x19 * x27)))))))) + (0x9 * (((uint64_t)x21 * x46) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + ((uint64_t)x24 * x43))))));
- { uint64_t x53 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + ((0x2 * ((uint64_t)x11 * x33)) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + ((uint64_t)x17 * x27))))))) + (0x9 * ((0x2 * ((uint64_t)x19 * x46)) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + (0x2 * ((uint64_t)x24 * x41))))))));
- { uint64_t x54 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + ((0x2 * ((uint64_t)x9 * x33)) + ((0x2 * ((uint64_t)x11 * x31)) + (((uint64_t)x13 * x29) + ((uint64_t)x15 * x27)))))) + (0x9 * ((0x2 * ((uint64_t)x17 * x46)) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + ((0x2 * ((uint64_t)x25 * x41)) + (0x2 * ((uint64_t)x24 * x39)))))))));
- { uint64_t x55 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((uint64_t)x13 * x27))))) + (0x9 * ((0x2 * ((uint64_t)x15 * x46)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + (0x2 * ((uint64_t)x24 * x37))))))))));
- { uint64_t x56 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + ((uint64_t)x11 * x27)))) + (0x9 * (((uint64_t)x13 * x46) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + (((uint64_t)x25 * x37) + ((uint64_t)x24 * x35))))))))));
- { uint64_t x57 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + ((uint64_t)x9 * x27))) + (0x9 * ((0x2 * ((uint64_t)x11 * x46)) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((0x2 * ((uint64_t)x19 * x41)) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + (((uint64_t)x25 * x35) + (0x2 * ((uint64_t)x24 * x33))))))))))));
- { ℤ x58 = ((((uint64_t)x5 * x29) + ((uint64_t)x7 * x27)) +ℤ (0x9 *ℤ ((0x2 * ((uint64_t)x9 * x46)) + ((0x2 * ((uint64_t)x11 * x47)) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + ((0x2 * ((uint64_t)x25 * x33)) + (0x2 * ((uint64_t)x24 * x31)))))))))))));
- { ℤ x59 = (((uint64_t)x5 * x27) +ℤ (0x9 *ℤ ((0x2 * ((uint64_t)x7 * x46)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + (((uint64_t)x13 * x43) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + ((0x2 * ((uint64_t)x23 * x33)) + ((0x2 * ((uint64_t)x25 * x31)) + (0x2 * ((uint64_t)x24 * x29))))))))))))));
- { uint64_t x60 = (x59 >> 0x1b);
- { uint32_t x61 = (x59 & 0x7ffffff);
- { ℤ x62 = (x60 +ℤ x58);
- { uint64_t x63 = (x62 >> 0x1b);
- { uint32_t x64 = (x62 & 0x7ffffff);
- { uint64_t x65 = (x63 + x57);
- { uint64_t x66 = (x65 >> 0x1b);
- { uint32_t x67 = ((uint32_t)x65 & 0x7ffffff);
- { uint64_t x68 = (x66 + x56);
- { uint64_t x69 = (x68 >> 0x1a);
- { uint32_t x70 = ((uint32_t)x68 & 0x3ffffff);
- { uint64_t x71 = (x69 + x55);
- { uint64_t x72 = (x71 >> 0x1b);
- { uint32_t x73 = ((uint32_t)x71 & 0x7ffffff);
- { uint64_t x74 = (x72 + x54);
- { uint64_t x75 = (x74 >> 0x1b);
- { uint32_t x76 = ((uint32_t)x74 & 0x7ffffff);
- { uint64_t x77 = (x75 + x53);
- { uint64_t x78 = (x77 >> 0x1b);
- { uint32_t x79 = ((uint32_t)x77 & 0x7ffffff);
- { uint64_t x80 = (x78 + x52);
- { uint64_t x81 = (x80 >> 0x1a);
- { uint32_t x82 = ((uint32_t)x80 & 0x3ffffff);
- { uint64_t x83 = (x81 + x51);
- { uint64_t x84 = (x83 >> 0x1b);
- { uint32_t x85 = ((uint32_t)x83 & 0x7ffffff);
- { uint64_t x86 = (x84 + x50);
- { uint64_t x87 = (x86 >> 0x1b);
- { uint32_t x88 = ((uint32_t)x86 & 0x7ffffff);
- { uint64_t x89 = (x87 + x49);
- { uint64_t x90 = (x89 >> 0x1b);
- { uint32_t x91 = ((uint32_t)x89 & 0x7ffffff);
- { uint64_t x92 = (x90 + x48);
- { uint64_t x93 = (x92 >> 0x1a);
- { uint32_t x94 = ((uint32_t)x92 & 0x3ffffff);
- { uint64_t x95 = (x61 + (0x9 * x93));
- { uint32_t x96 = (uint32_t) (x95 >> 0x1b);
- { uint32_t x97 = ((uint32_t)x95 & 0x7ffffff);
- { uint32_t x98 = (x96 + x64);
- { uint32_t x99 = (x98 >> 0x1b);
- { uint32_t x100 = (x98 & 0x7ffffff);
- out[0] = x97;
- out[1] = x100;
- out[2] = (x99 + x67);
- out[3] = x70;
- out[4] = x73;
- out[5] = x76;
- out[6] = x79;
- out[7] = x82;
- out[8] = x85;
- out[9] = x88;
- out[10] = x91;
- out[11] = x94;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e321m9_12limbs/femul.v b/src/Specific/solinas32_2e321m9_12limbs/femul.v
deleted file mode 100644
index 5521bb1b6..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e321m9_12limbs.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_2e321m9_12limbs/femulDisplay.log b/src/Specific/solinas32_2e321m9_12limbs/femulDisplay.log
deleted file mode 100644
index d2a8abd3d..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/femulDisplay.log
+++ /dev/null
@@ -1,60 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- uint64_t x48 = (((uint64_t)x5 * x46) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + (((uint64_t)x23 * x31) + (((uint64_t)x25 * x29) + ((uint64_t)x24 * x27))))))))))));
- uint64_t x49 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + ((0x2 * ((uint64_t)x11 * x41)) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + ((0x2 * ((uint64_t)x19 * x33)) + (((uint64_t)x21 * x31) + (((uint64_t)x23 * x29) + ((uint64_t)x25 * x27))))))))))) + (0x9 * (0x2 * ((uint64_t)x24 * x46))));
- uint64_t x50 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + ((0x2 * ((uint64_t)x17 * x33)) + ((0x2 * ((uint64_t)x19 * x31)) + (((uint64_t)x21 * x29) + ((uint64_t)x23 * x27)))))))))) + (0x9 * ((0x2 * ((uint64_t)x25 * x46)) + (0x2 * ((uint64_t)x24 * x47)))));
- uint64_t x51 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + (((uint64_t)x13 * x35) + ((0x2 * ((uint64_t)x15 * x33)) + ((0x2 * ((uint64_t)x17 * x31)) + ((0x2 * ((uint64_t)x19 * x29)) + ((uint64_t)x21 * x27))))))))) + (0x9 * ((0x2 * ((uint64_t)x23 * x46)) + ((0x2 * ((uint64_t)x25 * x47)) + (0x2 * ((uint64_t)x24 * x45))))));
- uint64_t x52 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x19 * x27)))))))) + (0x9 * (((uint64_t)x21 * x46) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + ((uint64_t)x24 * x43))))));
- uint64_t x53 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + ((0x2 * ((uint64_t)x11 * x33)) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + ((uint64_t)x17 * x27))))))) + (0x9 * ((0x2 * ((uint64_t)x19 * x46)) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + (0x2 * ((uint64_t)x24 * x41))))))));
- uint64_t x54 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + ((0x2 * ((uint64_t)x9 * x33)) + ((0x2 * ((uint64_t)x11 * x31)) + (((uint64_t)x13 * x29) + ((uint64_t)x15 * x27)))))) + (0x9 * ((0x2 * ((uint64_t)x17 * x46)) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + ((0x2 * ((uint64_t)x25 * x41)) + (0x2 * ((uint64_t)x24 * x39)))))))));
- uint64_t x55 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((0x2 * ((uint64_t)x9 * x31)) + ((0x2 * ((uint64_t)x11 * x29)) + ((uint64_t)x13 * x27))))) + (0x9 * ((0x2 * ((uint64_t)x15 * x46)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + (0x2 * ((uint64_t)x24 * x37))))))))));
- uint64_t x56 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + ((uint64_t)x11 * x27)))) + (0x9 * (((uint64_t)x13 * x46) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + (((uint64_t)x25 * x37) + ((uint64_t)x24 * x35))))))))));
- uint64_t x57 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + ((uint64_t)x9 * x27))) + (0x9 * ((0x2 * ((uint64_t)x11 * x46)) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((0x2 * ((uint64_t)x19 * x41)) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + (((uint64_t)x25 * x35) + (0x2 * ((uint64_t)x24 * x33))))))))))));
- ℤ x58 = ((((uint64_t)x5 * x29) + ((uint64_t)x7 * x27)) +ℤ (0x9 *ℤ ((0x2 * ((uint64_t)x9 * x46)) + ((0x2 * ((uint64_t)x11 * x47)) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + ((0x2 * ((uint64_t)x25 * x33)) + (0x2 * ((uint64_t)x24 * x31)))))))))))));
- ℤ x59 = (((uint64_t)x5 * x27) +ℤ (0x9 *ℤ ((0x2 * ((uint64_t)x7 * x46)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + (((uint64_t)x13 * x43) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + ((0x2 * ((uint64_t)x23 * x33)) + ((0x2 * ((uint64_t)x25 * x31)) + (0x2 * ((uint64_t)x24 * x29))))))))))))));
- uint64_t x60 = (x59 >> 0x1b);
- uint32_t x61 = (x59 & 0x7ffffff);
- ℤ x62 = (x60 +ℤ x58);
- uint64_t x63 = (x62 >> 0x1b);
- uint32_t x64 = (x62 & 0x7ffffff);
- uint64_t x65 = (x63 + x57);
- uint64_t x66 = (x65 >> 0x1b);
- uint32_t x67 = ((uint32_t)x65 & 0x7ffffff);
- uint64_t x68 = (x66 + x56);
- uint64_t x69 = (x68 >> 0x1a);
- uint32_t x70 = ((uint32_t)x68 & 0x3ffffff);
- uint64_t x71 = (x69 + x55);
- uint64_t x72 = (x71 >> 0x1b);
- uint32_t x73 = ((uint32_t)x71 & 0x7ffffff);
- uint64_t x74 = (x72 + x54);
- uint64_t x75 = (x74 >> 0x1b);
- uint32_t x76 = ((uint32_t)x74 & 0x7ffffff);
- uint64_t x77 = (x75 + x53);
- uint64_t x78 = (x77 >> 0x1b);
- uint32_t x79 = ((uint32_t)x77 & 0x7ffffff);
- uint64_t x80 = (x78 + x52);
- uint64_t x81 = (x80 >> 0x1a);
- uint32_t x82 = ((uint32_t)x80 & 0x3ffffff);
- uint64_t x83 = (x81 + x51);
- uint64_t x84 = (x83 >> 0x1b);
- uint32_t x85 = ((uint32_t)x83 & 0x7ffffff);
- uint64_t x86 = (x84 + x50);
- uint64_t x87 = (x86 >> 0x1b);
- uint32_t x88 = ((uint32_t)x86 & 0x7ffffff);
- uint64_t x89 = (x87 + x49);
- uint64_t x90 = (x89 >> 0x1b);
- uint32_t x91 = ((uint32_t)x89 & 0x7ffffff);
- uint64_t x92 = (x90 + x48);
- uint64_t x93 = (x92 >> 0x1a);
- uint32_t x94 = ((uint32_t)x92 & 0x3ffffff);
- uint64_t x95 = (x61 + (0x9 * x93));
- uint32_t x96 = (uint32_t) (x95 >> 0x1b);
- uint32_t x97 = ((uint32_t)x95 & 0x7ffffff);
- uint32_t x98 = (x96 + x64);
- uint32_t x99 = (x98 >> 0x1b);
- uint32_t x100 = (x98 & 0x7ffffff);
- return (Return x94, Return x91, Return x88, Return x85, Return x82, Return x79, Return x76, Return x73, Return x70, (x99 + x67), Return x100, Return x97))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e321m9_12limbs/femulDisplay.v b/src/Specific/solinas32_2e321m9_12limbs/femulDisplay.v
deleted file mode 100644
index bb88b968c..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e321m9_12limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e321m9_12limbs/fesquare.c b/src/Specific/solinas32_2e321m9_12limbs/fesquare.c
deleted file mode 100644
index 3f5fe420c..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/fesquare.c
+++ /dev/null
@@ -1,80 +0,0 @@
-static void fesquare(uint32_t out[12], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x23 = (((uint64_t)x2 * x21) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x21 * x2))))))))))));
- { uint64_t x24 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x9 * (0x2 * ((uint64_t)x21 * x21))));
- { uint64_t x25 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x9 * ((0x2 * ((uint64_t)x22 * x21)) + (0x2 * ((uint64_t)x21 * x22)))));
- { uint64_t x26 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x9 * ((0x2 * ((uint64_t)x20 * x21)) + ((0x2 * ((uint64_t)x22 * x22)) + (0x2 * ((uint64_t)x21 * x20))))));
- { uint64_t x27 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x9 * (((uint64_t)x18 * x21) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((uint64_t)x21 * x18))))));
- { uint64_t x28 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x9 * ((0x2 * ((uint64_t)x16 * x21)) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + (0x2 * ((uint64_t)x21 * x16))))))));
- { uint64_t x29 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x9 * ((0x2 * ((uint64_t)x14 * x21)) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + (0x2 * ((uint64_t)x21 * x14)))))))));
- { uint64_t x30 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x9 * ((0x2 * ((uint64_t)x12 * x21)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + (0x2 * ((uint64_t)x21 * x12))))))))));
- { uint64_t x31 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x9 * (((uint64_t)x10 * x21) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + ((uint64_t)x21 * x10))))))))));
- { uint64_t x32 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x9 * ((0x2 * ((uint64_t)x8 * x21)) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (0x2 * ((uint64_t)x21 * x8))))))))))));
- { ℤ x33 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) +ℤ (0x9 *ℤ ((0x2 * ((uint64_t)x6 * x21)) + ((0x2 * ((uint64_t)x8 * x22)) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + ((0x2 * ((uint64_t)x22 * x8)) + (0x2 * ((uint64_t)x21 * x6)))))))))))));
- { ℤ x34 = (((uint64_t)x2 * x2) +ℤ (0x9 *ℤ ((0x2 * ((uint64_t)x4 * x21)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + (0x2 * ((uint64_t)x21 * x4))))))))))))));
- { uint64_t x35 = (x34 >> 0x1b);
- { uint32_t x36 = (x34 & 0x7ffffff);
- { ℤ x37 = (x35 +ℤ x33);
- { uint64_t x38 = (x37 >> 0x1b);
- { uint32_t x39 = (x37 & 0x7ffffff);
- { uint64_t x40 = (x38 + x32);
- { uint64_t x41 = (x40 >> 0x1b);
- { uint32_t x42 = ((uint32_t)x40 & 0x7ffffff);
- { uint64_t x43 = (x41 + x31);
- { uint64_t x44 = (x43 >> 0x1a);
- { uint32_t x45 = ((uint32_t)x43 & 0x3ffffff);
- { uint64_t x46 = (x44 + x30);
- { uint64_t x47 = (x46 >> 0x1b);
- { uint32_t x48 = ((uint32_t)x46 & 0x7ffffff);
- { uint64_t x49 = (x47 + x29);
- { uint64_t x50 = (x49 >> 0x1b);
- { uint32_t x51 = ((uint32_t)x49 & 0x7ffffff);
- { uint64_t x52 = (x50 + x28);
- { uint64_t x53 = (x52 >> 0x1b);
- { uint32_t x54 = ((uint32_t)x52 & 0x7ffffff);
- { uint64_t x55 = (x53 + x27);
- { uint64_t x56 = (x55 >> 0x1a);
- { uint32_t x57 = ((uint32_t)x55 & 0x3ffffff);
- { uint64_t x58 = (x56 + x26);
- { uint64_t x59 = (x58 >> 0x1b);
- { uint32_t x60 = ((uint32_t)x58 & 0x7ffffff);
- { uint64_t x61 = (x59 + x25);
- { uint64_t x62 = (x61 >> 0x1b);
- { uint32_t x63 = ((uint32_t)x61 & 0x7ffffff);
- { uint64_t x64 = (x62 + x24);
- { uint64_t x65 = (x64 >> 0x1b);
- { uint32_t x66 = ((uint32_t)x64 & 0x7ffffff);
- { uint64_t x67 = (x65 + x23);
- { uint64_t x68 = (x67 >> 0x1a);
- { uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- { uint64_t x70 = (x36 + (0x9 * x68));
- { uint32_t x71 = (uint32_t) (x70 >> 0x1b);
- { uint32_t x72 = ((uint32_t)x70 & 0x7ffffff);
- { uint32_t x73 = (x71 + x39);
- { uint32_t x74 = (x73 >> 0x1b);
- { uint32_t x75 = (x73 & 0x7ffffff);
- out[0] = x72;
- out[1] = x75;
- out[2] = (x74 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- out[7] = x57;
- out[8] = x60;
- out[9] = x63;
- out[10] = x66;
- out[11] = x69;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e321m9_12limbs/fesquare.v b/src/Specific/solinas32_2e321m9_12limbs/fesquare.v
deleted file mode 100644
index 6cb94e185..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e321m9_12limbs.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_2e321m9_12limbs/fesquareDisplay.log b/src/Specific/solinas32_2e321m9_12limbs/fesquareDisplay.log
deleted file mode 100644
index 1616acd3c..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,60 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x23 = (((uint64_t)x2 * x21) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x21 * x2))))))))))));
- uint64_t x24 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x9 * (0x2 * ((uint64_t)x21 * x21))));
- uint64_t x25 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x9 * ((0x2 * ((uint64_t)x22 * x21)) + (0x2 * ((uint64_t)x21 * x22)))));
- uint64_t x26 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x9 * ((0x2 * ((uint64_t)x20 * x21)) + ((0x2 * ((uint64_t)x22 * x22)) + (0x2 * ((uint64_t)x21 * x20))))));
- uint64_t x27 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x9 * (((uint64_t)x18 * x21) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((uint64_t)x21 * x18))))));
- uint64_t x28 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x9 * ((0x2 * ((uint64_t)x16 * x21)) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + (0x2 * ((uint64_t)x21 * x16))))))));
- uint64_t x29 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x9 * ((0x2 * ((uint64_t)x14 * x21)) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + (0x2 * ((uint64_t)x21 * x14)))))))));
- uint64_t x30 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x9 * ((0x2 * ((uint64_t)x12 * x21)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + (0x2 * ((uint64_t)x21 * x12))))))))));
- uint64_t x31 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x9 * (((uint64_t)x10 * x21) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + ((uint64_t)x21 * x10))))))))));
- uint64_t x32 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x9 * ((0x2 * ((uint64_t)x8 * x21)) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (0x2 * ((uint64_t)x21 * x8))))))))))));
- ℤ x33 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) +ℤ (0x9 *ℤ ((0x2 * ((uint64_t)x6 * x21)) + ((0x2 * ((uint64_t)x8 * x22)) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + ((0x2 * ((uint64_t)x22 * x8)) + (0x2 * ((uint64_t)x21 * x6)))))))))))));
- ℤ x34 = (((uint64_t)x2 * x2) +ℤ (0x9 *ℤ ((0x2 * ((uint64_t)x4 * x21)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + (0x2 * ((uint64_t)x21 * x4))))))))))))));
- uint64_t x35 = (x34 >> 0x1b);
- uint32_t x36 = (x34 & 0x7ffffff);
- ℤ x37 = (x35 +ℤ x33);
- uint64_t x38 = (x37 >> 0x1b);
- uint32_t x39 = (x37 & 0x7ffffff);
- uint64_t x40 = (x38 + x32);
- uint64_t x41 = (x40 >> 0x1b);
- uint32_t x42 = ((uint32_t)x40 & 0x7ffffff);
- uint64_t x43 = (x41 + x31);
- uint64_t x44 = (x43 >> 0x1a);
- uint32_t x45 = ((uint32_t)x43 & 0x3ffffff);
- uint64_t x46 = (x44 + x30);
- uint64_t x47 = (x46 >> 0x1b);
- uint32_t x48 = ((uint32_t)x46 & 0x7ffffff);
- uint64_t x49 = (x47 + x29);
- uint64_t x50 = (x49 >> 0x1b);
- uint32_t x51 = ((uint32_t)x49 & 0x7ffffff);
- uint64_t x52 = (x50 + x28);
- uint64_t x53 = (x52 >> 0x1b);
- uint32_t x54 = ((uint32_t)x52 & 0x7ffffff);
- uint64_t x55 = (x53 + x27);
- uint64_t x56 = (x55 >> 0x1a);
- uint32_t x57 = ((uint32_t)x55 & 0x3ffffff);
- uint64_t x58 = (x56 + x26);
- uint64_t x59 = (x58 >> 0x1b);
- uint32_t x60 = ((uint32_t)x58 & 0x7ffffff);
- uint64_t x61 = (x59 + x25);
- uint64_t x62 = (x61 >> 0x1b);
- uint32_t x63 = ((uint32_t)x61 & 0x7ffffff);
- uint64_t x64 = (x62 + x24);
- uint64_t x65 = (x64 >> 0x1b);
- uint32_t x66 = ((uint32_t)x64 & 0x7ffffff);
- uint64_t x67 = (x65 + x23);
- uint64_t x68 = (x67 >> 0x1a);
- uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- uint64_t x70 = (x36 + (0x9 * x68));
- uint32_t x71 = (uint32_t) (x70 >> 0x1b);
- uint32_t x72 = ((uint32_t)x70 & 0x7ffffff);
- uint32_t x73 = (x71 + x39);
- uint32_t x74 = (x73 >> 0x1b);
- uint32_t x75 = (x73 & 0x7ffffff);
- return (Return x69, Return x66, Return x63, Return x60, Return x57, Return x54, Return x51, Return x48, Return x45, (x74 + x42), Return x75, Return x72))
-x
- : 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e321m9_12limbs/fesquareDisplay.v b/src/Specific/solinas32_2e321m9_12limbs/fesquareDisplay.v
deleted file mode 100644
index 787b0dd98..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e321m9_12limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e321m9_12limbs/fesub.c b/src/Specific/solinas32_2e321m9_12limbs/fesub.c
deleted file mode 100644
index bcec212da..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/fesub.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void fesub(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- out[0] = ((0xfffffee + x5) - x27);
- out[1] = ((0xffffffe + x7) - x29);
- out[2] = ((0xffffffe + x9) - x31);
- out[3] = ((0x7fffffe + x11) - x33);
- out[4] = ((0xffffffe + x13) - x35);
- out[5] = ((0xffffffe + x15) - x37);
- out[6] = ((0xffffffe + x17) - x39);
- out[7] = ((0x7fffffe + x19) - x41);
- out[8] = ((0xffffffe + x21) - x43);
- out[9] = ((0xffffffe + x23) - x45);
- out[10] = ((0xffffffe + x25) - x47);
- out[11] = ((0x7fffffe + x24) - x46);
- }}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e321m9_12limbs/fesub.v b/src/Specific/solinas32_2e321m9_12limbs/fesub.v
deleted file mode 100644
index 423a26328..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e321m9_12limbs.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_2e321m9_12limbs/fesubDisplay.log b/src/Specific/solinas32_2e321m9_12limbs/fesubDisplay.log
deleted file mode 100644
index bab733a09..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- (((0x7fffffe + x24) - x46), ((0xffffffe + x25) - x47), ((0xffffffe + x23) - x45), ((0xffffffe + x21) - x43), ((0x7fffffe + x19) - x41), ((0xffffffe + x17) - x39), ((0xffffffe + x15) - x37), ((0xffffffe + x13) - x35), ((0x7fffffe + x11) - x33), ((0xffffffe + x9) - x31), ((0xffffffe + x7) - x29), ((0xfffffee + x5) - x27)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e321m9_12limbs/fesubDisplay.v b/src/Specific/solinas32_2e321m9_12limbs/fesubDisplay.v
deleted file mode 100644
index 92ade7648..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e321m9_12limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e321m9_12limbs/freeze.c b/src/Specific/solinas32_2e321m9_12limbs/freeze.c
deleted file mode 100644
index 3d85106c9..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/freeze.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void freeze(uint32_t out[12], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffff7);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x4, 0x7ffffff);
- { uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x6, 0x7ffffff);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x8, 0x3ffffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x10, 0x7ffffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x12, 0x7ffffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x14, 0x7ffffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x16, 0x3ffffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x18, 0x7ffffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x20, 0x7ffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x22, 0x7ffffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x21, 0x3ffffff);
- { uint32_t x59 = cmovznz32(x58, 0x0, 0xffffffff);
- { uint32_t x60 = (x59 & 0x7fffff7);
- { uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x24, Return x60);
- { uint32_t x64 = (x59 & 0x7ffffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x27, Return x64);
- { uint32_t x68 = (x59 & 0x7ffffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x30, Return x68);
- { uint32_t x72 = (x59 & 0x3ffffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x33, Return x72);
- { uint32_t x76 = (x59 & 0x7ffffff);
- { uint32_t x78, uint8_t x79 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x36, Return x76);
- { uint32_t x80 = (x59 & 0x7ffffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x39, Return x80);
- { uint32_t x84 = (x59 & 0x7ffffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x42, Return x84);
- { uint32_t x88 = (x59 & 0x3ffffff);
- { uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x45, Return x88);
- { uint32_t x92 = (x59 & 0x7ffffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x48, Return x92);
- { uint32_t x96 = (x59 & 0x7ffffff);
- { uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x51, Return x96);
- { uint32_t x100 = (x59 & 0x7ffffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x54, Return x100);
- { uint32_t x104 = (x59 & 0x3ffffff);
- { uint32_t x106, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x57, Return x104);
- out[0] = x62;
- out[1] = x66;
- out[2] = x70;
- out[3] = x74;
- out[4] = x78;
- out[5] = x82;
- out[6] = x86;
- out[7] = x90;
- out[8] = x94;
- out[9] = x98;
- out[10] = x102;
- out[11] = x106;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e321m9_12limbs/freeze.v b/src/Specific/solinas32_2e321m9_12limbs/freeze.v
deleted file mode 100644
index e71514d4a..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e321m9_12limbs.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_2e321m9_12limbs/freezeDisplay.log b/src/Specific/solinas32_2e321m9_12limbs/freezeDisplay.log
deleted file mode 100644
index d5fcaf495..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/freezeDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffff7);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x4, 0x7ffffff);
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x6, 0x7ffffff);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x8, 0x3ffffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x10, 0x7ffffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x12, 0x7ffffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x14, 0x7ffffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x16, 0x3ffffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x18, 0x7ffffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x20, 0x7ffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x22, 0x7ffffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x21, 0x3ffffff);
- uint32_t x59 = cmovznz32(x58, 0x0, 0xffffffff);
- uint32_t x60 = (x59 & 0x7fffff7);
- uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x24, Return x60);
- uint32_t x64 = (x59 & 0x7ffffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x27, Return x64);
- uint32_t x68 = (x59 & 0x7ffffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x30, Return x68);
- uint32_t x72 = (x59 & 0x3ffffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x33, Return x72);
- uint32_t x76 = (x59 & 0x7ffffff);
- uint32_t x78, uint8_t x79 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x36, Return x76);
- uint32_t x80 = (x59 & 0x7ffffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x39, Return x80);
- uint32_t x84 = (x59 & 0x7ffffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x42, Return x84);
- uint32_t x88 = (x59 & 0x3ffffff);
- uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x45, Return x88);
- uint32_t x92 = (x59 & 0x7ffffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x48, Return x92);
- uint32_t x96 = (x59 & 0x7ffffff);
- uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x51, Return x96);
- uint32_t x100 = (x59 & 0x7ffffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x54, Return x100);
- uint32_t x104 = (x59 & 0x3ffffff);
- uint32_t x106, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x57, Return x104);
- (Return x106, Return x102, Return x98, Return x94, Return x90, Return x86, Return x82, Return x78, Return x74, Return x70, Return x66, Return x62))
-x
- : 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e321m9_12limbs/freezeDisplay.v b/src/Specific/solinas32_2e321m9_12limbs/freezeDisplay.v
deleted file mode 100644
index 8ec62f0fe..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e321m9_12limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e321m9_12limbs/py_interpreter.sh b/src/Specific/solinas32_2e321m9_12limbs/py_interpreter.sh
deleted file mode 100755
index d07634498..000000000
--- a/src/Specific/solinas32_2e321m9_12limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**321 - 9' -Dmodulus_bytes='26.75' -Da24='121665'
diff --git a/src/Specific/solinas32_2e321m9_13limbs/CurveParameters.v b/src/Specific/solinas32_2e321m9_13limbs/CurveParameters.v
deleted file mode 100644
index 25d65653b..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^321 - 9
-Base: 24 + 9/13
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 13%nat;
- base := 24 + 9/13;
- bitwidth := 32;
- s := 2^321;
- c := [(1, 9)];
- carry_chains := Some [seq 0 (pred 13); [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_2e321m9_13limbs/Synthesis.v b/src/Specific/solinas32_2e321m9_13limbs/Synthesis.v
deleted file mode 100644
index 44ef3a536..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e321m9_13limbs.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_2e321m9_13limbs/compiler.sh b/src/Specific/solinas32_2e321m9_13limbs/compiler.sh
deleted file mode 100755
index b9245c3e6..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/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,0x00,0x00,0x00,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='{25,25,25,24,25,25,24,25,25,24,25,25,24}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<321) - 9' "$@"
diff --git a/src/Specific/solinas32_2e321m9_13limbs/compilerxx.sh b/src/Specific/solinas32_2e321m9_13limbs/compilerxx.sh
deleted file mode 100755
index dda3fbfcd..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/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,0x00,0x00,0x00,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='{25,25,25,24,25,25,24,25,25,24,25,25,24}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<321) - 9' "$@"
diff --git a/src/Specific/solinas32_2e321m9_13limbs/feadd.c b/src/Specific/solinas32_2e321m9_13limbs/feadd.c
deleted file mode 100644
index dbbe1da57..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/feadd.c
+++ /dev/null
@@ -1,42 +0,0 @@
-static void feadd(uint32_t out[13], const uint32_t in1[13], const uint32_t in2[13]) {
- { const uint32_t x26 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x50 = in2[12];
- { const uint32_t x51 = in2[11];
- { const uint32_t x49 = in2[10];
- { const uint32_t x47 = in2[9];
- { const uint32_t x45 = in2[8];
- { const uint32_t x43 = in2[7];
- { const uint32_t x41 = in2[6];
- { const uint32_t x39 = in2[5];
- { const uint32_t x37 = in2[4];
- { const uint32_t x35 = in2[3];
- { const uint32_t x33 = in2[2];
- { const uint32_t x31 = in2[1];
- { const uint32_t x29 = in2[0];
- out[0] = (x5 + x29);
- out[1] = (x7 + x31);
- out[2] = (x9 + x33);
- out[3] = (x11 + x35);
- out[4] = (x13 + x37);
- out[5] = (x15 + x39);
- out[6] = (x17 + x41);
- out[7] = (x19 + x43);
- out[8] = (x21 + x45);
- out[9] = (x23 + x47);
- out[10] = (x25 + x49);
- out[11] = (x27 + x51);
- out[12] = (x26 + x50);
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e321m9_13limbs/feadd.v b/src/Specific/solinas32_2e321m9_13limbs/feadd.v
deleted file mode 100644
index be91c8f75..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e321m9_13limbs.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_2e321m9_13limbs/feaddDisplay.log b/src/Specific/solinas32_2e321m9_13limbs/feaddDisplay.log
deleted file mode 100644
index e64abeaba..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x26, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29))%core,
- ((x26 + x50), (x27 + x51), (x25 + x49), (x23 + x47), (x21 + x45), (x19 + x43), (x17 + x41), (x15 + x39), (x13 + x37), (x11 + x35), (x9 + x33), (x7 + x31), (x5 + x29)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e321m9_13limbs/feaddDisplay.v b/src/Specific/solinas32_2e321m9_13limbs/feaddDisplay.v
deleted file mode 100644
index 9977b1abb..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e321m9_13limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e321m9_13limbs/fecarry.v b/src/Specific/solinas32_2e321m9_13limbs/fecarry.v
deleted file mode 100644
index 41a456e54..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e321m9_13limbs.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_2e321m9_13limbs/fecarryDisplay.v b/src/Specific/solinas32_2e321m9_13limbs/fecarryDisplay.v
deleted file mode 100644
index ccadceb16..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e321m9_13limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e321m9_13limbs/femul.c b/src/Specific/solinas32_2e321m9_13limbs/femul.c
deleted file mode 100644
index 667790295..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/femul.c
+++ /dev/null
@@ -1,99 +0,0 @@
-static void femul(uint32_t out[13], const uint32_t in1[13], const uint32_t in2[13]) {
- { const uint32_t x26 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x50 = in2[12];
- { const uint32_t x51 = in2[11];
- { const uint32_t x49 = in2[10];
- { const uint32_t x47 = in2[9];
- { const uint32_t x45 = in2[8];
- { const uint32_t x43 = in2[7];
- { const uint32_t x41 = in2[6];
- { const uint32_t x39 = in2[5];
- { const uint32_t x37 = in2[4];
- { const uint32_t x35 = in2[3];
- { const uint32_t x33 = in2[2];
- { const uint32_t x31 = in2[1];
- { const uint32_t x29 = in2[0];
- { uint64_t x52 = (((uint64_t)x5 * x50) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + ((0x2 * ((uint64_t)x11 * x47)) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + ((0x2 * ((uint64_t)x23 * x35)) + (((uint64_t)x25 * x33) + (((uint64_t)x27 * x31) + ((uint64_t)x26 * x29)))))))))))));
- { uint64_t x53 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + (((uint64_t)x13 * x43) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + (((uint64_t)x19 * x37) + ((0x2 * ((uint64_t)x21 * x35)) + ((0x2 * ((uint64_t)x23 * x33)) + (((uint64_t)x25 * x31) + ((uint64_t)x27 * x29)))))))))))) + (0x9 * (0x2 * ((uint64_t)x26 * x50))));
- { uint64_t x54 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + ((0x2 * ((uint64_t)x11 * x43)) + ((0x2 * ((uint64_t)x13 * x41)) + ((0x2 * ((uint64_t)x15 * x39)) + ((0x2 * ((uint64_t)x17 * x37)) + ((0x2 * ((uint64_t)x19 * x35)) + ((0x2 * ((uint64_t)x21 * x33)) + ((0x2 * ((uint64_t)x23 * x31)) + ((uint64_t)x25 * x29))))))))))) + (0x9 * ((0x2 * ((uint64_t)x27 * x50)) + (0x2 * ((uint64_t)x26 * x51)))));
- { uint64_t x55 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + ((0x2 * ((uint64_t)x11 * x41)) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((0x2 * ((uint64_t)x17 * x35)) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((uint64_t)x23 * x29)))))))))) + (0x9 * (((uint64_t)x25 * x50) + (((uint64_t)x27 * x51) + ((uint64_t)x26 * x49)))));
- { uint64_t x56 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + (((uint64_t)x13 * x37) + ((0x2 * ((uint64_t)x15 * x35)) + ((0x2 * ((uint64_t)x17 * x33)) + (((uint64_t)x19 * x31) + ((uint64_t)x21 * x29))))))))) + (0x9 * ((0x2 * ((uint64_t)x23 * x50)) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (0x2 * ((uint64_t)x26 * x47)))))));
- { uint64_t x57 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + ((0x2 * ((uint64_t)x15 * x33)) + ((0x2 * ((uint64_t)x17 * x31)) + ((uint64_t)x19 * x29)))))))) + (0x9 * ((0x2 * ((uint64_t)x21 * x50)) + ((0x2 * ((uint64_t)x23 * x51)) + (((uint64_t)x25 * x49) + ((0x2 * ((uint64_t)x27 * x47)) + (0x2 * ((uint64_t)x26 * x45))))))));
- { uint64_t x58 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((0x2 * ((uint64_t)x11 * x35)) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + ((uint64_t)x17 * x29))))))) + (0x9 * (((uint64_t)x19 * x50) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + ((uint64_t)x26 * x43))))))));
- { uint64_t x59 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + (((uint64_t)x13 * x31) + ((uint64_t)x15 * x29)))))) + (0x9 * ((0x2 * ((uint64_t)x17 * x50)) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + ((0x2 * ((uint64_t)x23 * x47)) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (0x2 * ((uint64_t)x26 * x41))))))))));
- { uint64_t x60 = ((((uint64_t)x5 * x37) + ((0x2 * ((uint64_t)x7 * x35)) + ((0x2 * ((uint64_t)x9 * x33)) + ((0x2 * ((uint64_t)x11 * x31)) + ((uint64_t)x13 * x29))))) + (0x9 * ((0x2 * ((uint64_t)x15 * x50)) + ((0x2 * ((uint64_t)x17 * x51)) + (((uint64_t)x19 * x49) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + (((uint64_t)x25 * x43) + ((0x2 * ((uint64_t)x27 * x41)) + (0x2 * ((uint64_t)x26 * x39)))))))))));
- { uint64_t x61 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + ((uint64_t)x11 * x29)))) + (0x9 * (((uint64_t)x13 * x50) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + ((uint64_t)x26 * x37)))))))))));
- { uint64_t x62 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + ((uint64_t)x9 * x29))) + (0x9 * ((0x2 * ((uint64_t)x11 * x50)) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + ((0x2 * ((uint64_t)x17 * x47)) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + (((uint64_t)x25 * x39) + (((uint64_t)x27 * x37) + (0x2 * ((uint64_t)x26 * x35)))))))))))));
- { uint64_t x63 = ((((uint64_t)x5 * x31) + ((uint64_t)x7 * x29)) + (0x9 * ((0x2 * ((uint64_t)x9 * x50)) + ((0x2 * ((uint64_t)x11 * x51)) + (((uint64_t)x13 * x49) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + (((uint64_t)x25 * x37) + ((0x2 * ((uint64_t)x27 * x35)) + (0x2 * ((uint64_t)x26 * x33))))))))))))));
- { uint64_t x64 = (((uint64_t)x5 * x29) + (0x9 * ((0x2 * ((uint64_t)x7 * x50)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((0x2 * ((uint64_t)x25 * x35)) + ((0x2 * ((uint64_t)x27 * x33)) + (0x2 * ((uint64_t)x26 * x31)))))))))))))));
- { uint64_t x65 = (x64 >> 0x19);
- { uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- { uint64_t x67 = (x65 + x63);
- { uint64_t x68 = (x67 >> 0x19);
- { uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- { uint64_t x70 = (x68 + x62);
- { uint64_t x71 = (x70 >> 0x19);
- { uint32_t x72 = ((uint32_t)x70 & 0x1ffffff);
- { uint64_t x73 = (x71 + x61);
- { uint64_t x74 = (x73 >> 0x18);
- { uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- { uint64_t x76 = (x74 + x60);
- { uint64_t x77 = (x76 >> 0x19);
- { uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- { uint64_t x79 = (x77 + x59);
- { uint64_t x80 = (x79 >> 0x19);
- { uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- { uint64_t x82 = (x80 + x58);
- { uint64_t x83 = (x82 >> 0x18);
- { uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- { uint64_t x85 = (x83 + x57);
- { uint64_t x86 = (x85 >> 0x19);
- { uint32_t x87 = ((uint32_t)x85 & 0x1ffffff);
- { uint64_t x88 = (x86 + x56);
- { uint64_t x89 = (x88 >> 0x19);
- { uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- { uint64_t x91 = (x89 + x55);
- { uint64_t x92 = (x91 >> 0x18);
- { uint32_t x93 = ((uint32_t)x91 & 0xffffff);
- { uint64_t x94 = (x92 + x54);
- { uint64_t x95 = (x94 >> 0x19);
- { uint32_t x96 = ((uint32_t)x94 & 0x1ffffff);
- { uint64_t x97 = (x95 + x53);
- { uint64_t x98 = (x97 >> 0x19);
- { uint32_t x99 = ((uint32_t)x97 & 0x1ffffff);
- { uint64_t x100 = (x98 + x52);
- { uint64_t x101 = (x100 >> 0x18);
- { uint32_t x102 = ((uint32_t)x100 & 0xffffff);
- { uint64_t x103 = (x66 + (0x9 * x101));
- { uint32_t x104 = (uint32_t) (x103 >> 0x19);
- { uint32_t x105 = ((uint32_t)x103 & 0x1ffffff);
- { uint32_t x106 = (x104 + x69);
- { uint32_t x107 = (x106 >> 0x19);
- { uint32_t x108 = (x106 & 0x1ffffff);
- out[0] = x105;
- out[1] = x108;
- out[2] = (x107 + x72);
- out[3] = x75;
- out[4] = x78;
- out[5] = x81;
- out[6] = x84;
- out[7] = x87;
- out[8] = x90;
- out[9] = x93;
- out[10] = x96;
- out[11] = x99;
- out[12] = x102;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e321m9_13limbs/femul.v b/src/Specific/solinas32_2e321m9_13limbs/femul.v
deleted file mode 100644
index fdfac7339..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e321m9_13limbs.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_2e321m9_13limbs/femulDisplay.log b/src/Specific/solinas32_2e321m9_13limbs/femulDisplay.log
deleted file mode 100644
index 49f9557c8..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/femulDisplay.log
+++ /dev/null
@@ -1,64 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x26, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29))%core,
- uint64_t x52 = (((uint64_t)x5 * x50) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + ((0x2 * ((uint64_t)x11 * x47)) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + ((0x2 * ((uint64_t)x23 * x35)) + (((uint64_t)x25 * x33) + (((uint64_t)x27 * x31) + ((uint64_t)x26 * x29)))))))))))));
- uint64_t x53 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + (((uint64_t)x13 * x43) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + (((uint64_t)x19 * x37) + ((0x2 * ((uint64_t)x21 * x35)) + ((0x2 * ((uint64_t)x23 * x33)) + (((uint64_t)x25 * x31) + ((uint64_t)x27 * x29)))))))))))) + (0x9 * (0x2 * ((uint64_t)x26 * x50))));
- uint64_t x54 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + ((0x2 * ((uint64_t)x11 * x43)) + ((0x2 * ((uint64_t)x13 * x41)) + ((0x2 * ((uint64_t)x15 * x39)) + ((0x2 * ((uint64_t)x17 * x37)) + ((0x2 * ((uint64_t)x19 * x35)) + ((0x2 * ((uint64_t)x21 * x33)) + ((0x2 * ((uint64_t)x23 * x31)) + ((uint64_t)x25 * x29))))))))))) + (0x9 * ((0x2 * ((uint64_t)x27 * x50)) + (0x2 * ((uint64_t)x26 * x51)))));
- uint64_t x55 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + ((0x2 * ((uint64_t)x11 * x41)) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((0x2 * ((uint64_t)x17 * x35)) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((uint64_t)x23 * x29)))))))))) + (0x9 * (((uint64_t)x25 * x50) + (((uint64_t)x27 * x51) + ((uint64_t)x26 * x49)))));
- uint64_t x56 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + (((uint64_t)x13 * x37) + ((0x2 * ((uint64_t)x15 * x35)) + ((0x2 * ((uint64_t)x17 * x33)) + (((uint64_t)x19 * x31) + ((uint64_t)x21 * x29))))))))) + (0x9 * ((0x2 * ((uint64_t)x23 * x50)) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (0x2 * ((uint64_t)x26 * x47)))))));
- uint64_t x57 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + ((0x2 * ((uint64_t)x15 * x33)) + ((0x2 * ((uint64_t)x17 * x31)) + ((uint64_t)x19 * x29)))))))) + (0x9 * ((0x2 * ((uint64_t)x21 * x50)) + ((0x2 * ((uint64_t)x23 * x51)) + (((uint64_t)x25 * x49) + ((0x2 * ((uint64_t)x27 * x47)) + (0x2 * ((uint64_t)x26 * x45))))))));
- uint64_t x58 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((0x2 * ((uint64_t)x11 * x35)) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + ((uint64_t)x17 * x29))))))) + (0x9 * (((uint64_t)x19 * x50) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + ((uint64_t)x26 * x43))))))));
- uint64_t x59 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + (((uint64_t)x13 * x31) + ((uint64_t)x15 * x29)))))) + (0x9 * ((0x2 * ((uint64_t)x17 * x50)) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + ((0x2 * ((uint64_t)x23 * x47)) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (0x2 * ((uint64_t)x26 * x41))))))))));
- uint64_t x60 = ((((uint64_t)x5 * x37) + ((0x2 * ((uint64_t)x7 * x35)) + ((0x2 * ((uint64_t)x9 * x33)) + ((0x2 * ((uint64_t)x11 * x31)) + ((uint64_t)x13 * x29))))) + (0x9 * ((0x2 * ((uint64_t)x15 * x50)) + ((0x2 * ((uint64_t)x17 * x51)) + (((uint64_t)x19 * x49) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + (((uint64_t)x25 * x43) + ((0x2 * ((uint64_t)x27 * x41)) + (0x2 * ((uint64_t)x26 * x39)))))))))));
- uint64_t x61 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + ((uint64_t)x11 * x29)))) + (0x9 * (((uint64_t)x13 * x50) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + ((uint64_t)x26 * x37)))))))))));
- uint64_t x62 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + ((uint64_t)x9 * x29))) + (0x9 * ((0x2 * ((uint64_t)x11 * x50)) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + ((0x2 * ((uint64_t)x17 * x47)) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + (((uint64_t)x25 * x39) + (((uint64_t)x27 * x37) + (0x2 * ((uint64_t)x26 * x35)))))))))))));
- uint64_t x63 = ((((uint64_t)x5 * x31) + ((uint64_t)x7 * x29)) + (0x9 * ((0x2 * ((uint64_t)x9 * x50)) + ((0x2 * ((uint64_t)x11 * x51)) + (((uint64_t)x13 * x49) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + (((uint64_t)x25 * x37) + ((0x2 * ((uint64_t)x27 * x35)) + (0x2 * ((uint64_t)x26 * x33))))))))))))));
- uint64_t x64 = (((uint64_t)x5 * x29) + (0x9 * ((0x2 * ((uint64_t)x7 * x50)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((0x2 * ((uint64_t)x25 * x35)) + ((0x2 * ((uint64_t)x27 * x33)) + (0x2 * ((uint64_t)x26 * x31)))))))))))))));
- uint64_t x65 = (x64 >> 0x19);
- uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- uint64_t x67 = (x65 + x63);
- uint64_t x68 = (x67 >> 0x19);
- uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- uint64_t x70 = (x68 + x62);
- uint64_t x71 = (x70 >> 0x19);
- uint32_t x72 = ((uint32_t)x70 & 0x1ffffff);
- uint64_t x73 = (x71 + x61);
- uint64_t x74 = (x73 >> 0x18);
- uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- uint64_t x76 = (x74 + x60);
- uint64_t x77 = (x76 >> 0x19);
- uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- uint64_t x79 = (x77 + x59);
- uint64_t x80 = (x79 >> 0x19);
- uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- uint64_t x82 = (x80 + x58);
- uint64_t x83 = (x82 >> 0x18);
- uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- uint64_t x85 = (x83 + x57);
- uint64_t x86 = (x85 >> 0x19);
- uint32_t x87 = ((uint32_t)x85 & 0x1ffffff);
- uint64_t x88 = (x86 + x56);
- uint64_t x89 = (x88 >> 0x19);
- uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- uint64_t x91 = (x89 + x55);
- uint64_t x92 = (x91 >> 0x18);
- uint32_t x93 = ((uint32_t)x91 & 0xffffff);
- uint64_t x94 = (x92 + x54);
- uint64_t x95 = (x94 >> 0x19);
- uint32_t x96 = ((uint32_t)x94 & 0x1ffffff);
- uint64_t x97 = (x95 + x53);
- uint64_t x98 = (x97 >> 0x19);
- uint32_t x99 = ((uint32_t)x97 & 0x1ffffff);
- uint64_t x100 = (x98 + x52);
- uint64_t x101 = (x100 >> 0x18);
- uint32_t x102 = ((uint32_t)x100 & 0xffffff);
- uint64_t x103 = (x66 + (0x9 * x101));
- uint32_t x104 = (uint32_t) (x103 >> 0x19);
- uint32_t x105 = ((uint32_t)x103 & 0x1ffffff);
- uint32_t x106 = (x104 + x69);
- uint32_t x107 = (x106 >> 0x19);
- uint32_t x108 = (x106 & 0x1ffffff);
- return (Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, (x107 + x72), Return x108, Return x105))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e321m9_13limbs/femulDisplay.v b/src/Specific/solinas32_2e321m9_13limbs/femulDisplay.v
deleted file mode 100644
index aae72b4c5..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e321m9_13limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e321m9_13limbs/fesquare.c b/src/Specific/solinas32_2e321m9_13limbs/fesquare.c
deleted file mode 100644
index 1a21aba98..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/fesquare.c
+++ /dev/null
@@ -1,86 +0,0 @@
-static void fesquare(uint32_t out[13], const uint32_t in1[13]) {
- { const uint32_t x23 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x25 = (((uint64_t)x2 * x23) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x23 * x2)))))))))))));
- { uint64_t x26 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x9 * (0x2 * ((uint64_t)x23 * x23))));
- { uint64_t x27 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x9 * ((0x2 * ((uint64_t)x24 * x23)) + (0x2 * ((uint64_t)x23 * x24)))));
- { uint64_t x28 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x9 * (((uint64_t)x22 * x23) + (((uint64_t)x24 * x24) + ((uint64_t)x23 * x22)))));
- { uint64_t x29 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x9 * ((0x2 * ((uint64_t)x20 * x23)) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (0x2 * ((uint64_t)x23 * x20)))))));
- { uint64_t x30 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x9 * ((0x2 * ((uint64_t)x18 * x23)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + (0x2 * ((uint64_t)x23 * x18))))))));
- { uint64_t x31 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x9 * (((uint64_t)x16 * x23) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((uint64_t)x23 * x16))))))));
- { uint64_t x32 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x9 * ((0x2 * ((uint64_t)x14 * x23)) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (0x2 * ((uint64_t)x23 * x14))))))))));
- { uint64_t x33 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x9 * ((0x2 * ((uint64_t)x12 * x23)) + ((0x2 * ((uint64_t)x14 * x24)) + (((uint64_t)x16 * x22) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (((uint64_t)x22 * x16) + ((0x2 * ((uint64_t)x24 * x14)) + (0x2 * ((uint64_t)x23 * x12)))))))))));
- { uint64_t x34 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x9 * (((uint64_t)x10 * x23) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + ((uint64_t)x23 * x10)))))))))));
- { uint64_t x35 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x9 * ((0x2 * ((uint64_t)x8 * x23)) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (0x2 * ((uint64_t)x23 * x8)))))))))))));
- { uint64_t x36 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x9 * ((0x2 * ((uint64_t)x6 * x23)) + ((0x2 * ((uint64_t)x8 * x24)) + (((uint64_t)x10 * x22) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + (((uint64_t)x22 * x10) + ((0x2 * ((uint64_t)x24 * x8)) + (0x2 * ((uint64_t)x23 * x6))))))))))))));
- { uint64_t x37 = (((uint64_t)x2 * x2) + (0x9 * ((0x2 * ((uint64_t)x4 * x23)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + (0x2 * ((uint64_t)x23 * x4)))))))))))))));
- { uint64_t x38 = (x37 >> 0x19);
- { uint32_t x39 = ((uint32_t)x37 & 0x1ffffff);
- { uint64_t x40 = (x38 + x36);
- { uint64_t x41 = (x40 >> 0x19);
- { uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- { uint64_t x43 = (x41 + x35);
- { uint64_t x44 = (x43 >> 0x19);
- { uint32_t x45 = ((uint32_t)x43 & 0x1ffffff);
- { uint64_t x46 = (x44 + x34);
- { uint64_t x47 = (x46 >> 0x18);
- { uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- { uint64_t x49 = (x47 + x33);
- { uint64_t x50 = (x49 >> 0x19);
- { uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- { uint64_t x52 = (x50 + x32);
- { uint64_t x53 = (x52 >> 0x19);
- { uint32_t x54 = ((uint32_t)x52 & 0x1ffffff);
- { uint64_t x55 = (x53 + x31);
- { uint64_t x56 = (x55 >> 0x18);
- { uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- { uint64_t x58 = (x56 + x30);
- { uint64_t x59 = (x58 >> 0x19);
- { uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- { uint64_t x61 = (x59 + x29);
- { uint64_t x62 = (x61 >> 0x19);
- { uint32_t x63 = ((uint32_t)x61 & 0x1ffffff);
- { uint64_t x64 = (x62 + x28);
- { uint64_t x65 = (x64 >> 0x18);
- { uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- { uint64_t x67 = (x65 + x27);
- { uint64_t x68 = (x67 >> 0x19);
- { uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- { uint64_t x70 = (x68 + x26);
- { uint64_t x71 = (x70 >> 0x19);
- { uint32_t x72 = ((uint32_t)x70 & 0x1ffffff);
- { uint64_t x73 = (x71 + x25);
- { uint64_t x74 = (x73 >> 0x18);
- { uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- { uint64_t x76 = (x39 + (0x9 * x74));
- { uint32_t x77 = (uint32_t) (x76 >> 0x19);
- { uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- { uint32_t x79 = (x77 + x42);
- { uint32_t x80 = (x79 >> 0x19);
- { uint32_t x81 = (x79 & 0x1ffffff);
- out[0] = x78;
- out[1] = x81;
- out[2] = (x80 + x45);
- out[3] = x48;
- out[4] = x51;
- out[5] = x54;
- out[6] = x57;
- out[7] = x60;
- out[8] = x63;
- out[9] = x66;
- out[10] = x69;
- out[11] = x72;
- out[12] = x75;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e321m9_13limbs/fesquare.v b/src/Specific/solinas32_2e321m9_13limbs/fesquare.v
deleted file mode 100644
index 7f96eb812..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e321m9_13limbs.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_2e321m9_13limbs/fesquareDisplay.log b/src/Specific/solinas32_2e321m9_13limbs/fesquareDisplay.log
deleted file mode 100644
index 3ef05890a..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,64 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x23, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x25 = (((uint64_t)x2 * x23) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x23 * x2)))))))))))));
- uint64_t x26 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x9 * (0x2 * ((uint64_t)x23 * x23))));
- uint64_t x27 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x9 * ((0x2 * ((uint64_t)x24 * x23)) + (0x2 * ((uint64_t)x23 * x24)))));
- uint64_t x28 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x9 * (((uint64_t)x22 * x23) + (((uint64_t)x24 * x24) + ((uint64_t)x23 * x22)))));
- uint64_t x29 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x9 * ((0x2 * ((uint64_t)x20 * x23)) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (0x2 * ((uint64_t)x23 * x20)))))));
- uint64_t x30 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x9 * ((0x2 * ((uint64_t)x18 * x23)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + (0x2 * ((uint64_t)x23 * x18))))))));
- uint64_t x31 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x9 * (((uint64_t)x16 * x23) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((uint64_t)x23 * x16))))))));
- uint64_t x32 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x9 * ((0x2 * ((uint64_t)x14 * x23)) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (0x2 * ((uint64_t)x23 * x14))))))))));
- uint64_t x33 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x9 * ((0x2 * ((uint64_t)x12 * x23)) + ((0x2 * ((uint64_t)x14 * x24)) + (((uint64_t)x16 * x22) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (((uint64_t)x22 * x16) + ((0x2 * ((uint64_t)x24 * x14)) + (0x2 * ((uint64_t)x23 * x12)))))))))));
- uint64_t x34 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x9 * (((uint64_t)x10 * x23) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + ((uint64_t)x23 * x10)))))))))));
- uint64_t x35 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x9 * ((0x2 * ((uint64_t)x8 * x23)) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (0x2 * ((uint64_t)x23 * x8)))))))))))));
- uint64_t x36 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x9 * ((0x2 * ((uint64_t)x6 * x23)) + ((0x2 * ((uint64_t)x8 * x24)) + (((uint64_t)x10 * x22) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + (((uint64_t)x22 * x10) + ((0x2 * ((uint64_t)x24 * x8)) + (0x2 * ((uint64_t)x23 * x6))))))))))))));
- uint64_t x37 = (((uint64_t)x2 * x2) + (0x9 * ((0x2 * ((uint64_t)x4 * x23)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + (0x2 * ((uint64_t)x23 * x4)))))))))))))));
- uint64_t x38 = (x37 >> 0x19);
- uint32_t x39 = ((uint32_t)x37 & 0x1ffffff);
- uint64_t x40 = (x38 + x36);
- uint64_t x41 = (x40 >> 0x19);
- uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- uint64_t x43 = (x41 + x35);
- uint64_t x44 = (x43 >> 0x19);
- uint32_t x45 = ((uint32_t)x43 & 0x1ffffff);
- uint64_t x46 = (x44 + x34);
- uint64_t x47 = (x46 >> 0x18);
- uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- uint64_t x49 = (x47 + x33);
- uint64_t x50 = (x49 >> 0x19);
- uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- uint64_t x52 = (x50 + x32);
- uint64_t x53 = (x52 >> 0x19);
- uint32_t x54 = ((uint32_t)x52 & 0x1ffffff);
- uint64_t x55 = (x53 + x31);
- uint64_t x56 = (x55 >> 0x18);
- uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- uint64_t x58 = (x56 + x30);
- uint64_t x59 = (x58 >> 0x19);
- uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- uint64_t x61 = (x59 + x29);
- uint64_t x62 = (x61 >> 0x19);
- uint32_t x63 = ((uint32_t)x61 & 0x1ffffff);
- uint64_t x64 = (x62 + x28);
- uint64_t x65 = (x64 >> 0x18);
- uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- uint64_t x67 = (x65 + x27);
- uint64_t x68 = (x67 >> 0x19);
- uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- uint64_t x70 = (x68 + x26);
- uint64_t x71 = (x70 >> 0x19);
- uint32_t x72 = ((uint32_t)x70 & 0x1ffffff);
- uint64_t x73 = (x71 + x25);
- uint64_t x74 = (x73 >> 0x18);
- uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- uint64_t x76 = (x39 + (0x9 * x74));
- uint32_t x77 = (uint32_t) (x76 >> 0x19);
- uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- uint32_t x79 = (x77 + x42);
- uint32_t x80 = (x79 >> 0x19);
- uint32_t x81 = (x79 & 0x1ffffff);
- return (Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, Return x57, Return x54, Return x51, Return x48, (x80 + x45), Return x81, Return x78))
-x
- : word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e321m9_13limbs/fesquareDisplay.v b/src/Specific/solinas32_2e321m9_13limbs/fesquareDisplay.v
deleted file mode 100644
index b743f3df7..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e321m9_13limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e321m9_13limbs/fesub.c b/src/Specific/solinas32_2e321m9_13limbs/fesub.c
deleted file mode 100644
index 11330feb8..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/fesub.c
+++ /dev/null
@@ -1,42 +0,0 @@
-static void fesub(uint32_t out[13], const uint32_t in1[13], const uint32_t in2[13]) {
- { const uint32_t x26 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x50 = in2[12];
- { const uint32_t x51 = in2[11];
- { const uint32_t x49 = in2[10];
- { const uint32_t x47 = in2[9];
- { const uint32_t x45 = in2[8];
- { const uint32_t x43 = in2[7];
- { const uint32_t x41 = in2[6];
- { const uint32_t x39 = in2[5];
- { const uint32_t x37 = in2[4];
- { const uint32_t x35 = in2[3];
- { const uint32_t x33 = in2[2];
- { const uint32_t x31 = in2[1];
- { const uint32_t x29 = in2[0];
- out[0] = ((0x3ffffee + x5) - x29);
- out[1] = ((0x3fffffe + x7) - x31);
- out[2] = ((0x3fffffe + x9) - x33);
- out[3] = ((0x1fffffe + x11) - x35);
- out[4] = ((0x3fffffe + x13) - x37);
- out[5] = ((0x3fffffe + x15) - x39);
- out[6] = ((0x1fffffe + x17) - x41);
- out[7] = ((0x3fffffe + x19) - x43);
- out[8] = ((0x3fffffe + x21) - x45);
- out[9] = ((0x1fffffe + x23) - x47);
- out[10] = ((0x3fffffe + x25) - x49);
- out[11] = ((0x3fffffe + x27) - x51);
- out[12] = ((0x1fffffe + x26) - x50);
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e321m9_13limbs/fesub.v b/src/Specific/solinas32_2e321m9_13limbs/fesub.v
deleted file mode 100644
index 203e2318f..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e321m9_13limbs.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_2e321m9_13limbs/fesubDisplay.log b/src/Specific/solinas32_2e321m9_13limbs/fesubDisplay.log
deleted file mode 100644
index 4c1546878..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x26, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29))%core,
- (((0x1fffffe + x26) - x50), ((0x3fffffe + x27) - x51), ((0x3fffffe + x25) - x49), ((0x1fffffe + x23) - x47), ((0x3fffffe + x21) - x45), ((0x3fffffe + x19) - x43), ((0x1fffffe + x17) - x41), ((0x3fffffe + x15) - x39), ((0x3fffffe + x13) - x37), ((0x1fffffe + x11) - x35), ((0x3fffffe + x9) - x33), ((0x3fffffe + x7) - x31), ((0x3ffffee + x5) - x29)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e321m9_13limbs/fesubDisplay.v b/src/Specific/solinas32_2e321m9_13limbs/fesubDisplay.v
deleted file mode 100644
index 913e67580..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e321m9_13limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e321m9_13limbs/freeze.c b/src/Specific/solinas32_2e321m9_13limbs/freeze.c
deleted file mode 100644
index e40424ca4..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/freeze.c
+++ /dev/null
@@ -1,69 +0,0 @@
-static void freeze(uint32_t out[13], const uint32_t in1[13]) {
- { const uint32_t x23 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffff7);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x4, 0x1ffffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x6, 0x1ffffff);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x8, 0xffffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x10, 0x1ffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x12, 0x1ffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x14, 0xffffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x16, 0x1ffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x18, 0x1ffffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x20, 0xffffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x22, 0x1ffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x24, 0x1ffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x23, 0xffffff);
- { uint32_t x64 = cmovznz32(x63, 0x0, 0xffffffff);
- { uint32_t x65 = (x64 & 0x1fffff7);
- { uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x26, Return x65);
- { uint32_t x69 = (x64 & 0x1ffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x29, Return x69);
- { uint32_t x73 = (x64 & 0x1ffffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x32, Return x73);
- { uint32_t x77 = (x64 & 0xffffff);
- { uint32_t x79, uint8_t x80 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x35, Return x77);
- { uint32_t x81 = (x64 & 0x1ffffff);
- { uint32_t x83, uint8_t x84 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x38, Return x81);
- { uint32_t x85 = (x64 & 0x1ffffff);
- { uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x41, Return x85);
- { uint32_t x89 = (x64 & 0xffffff);
- { uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x44, Return x89);
- { uint32_t x93 = (x64 & 0x1ffffff);
- { uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x47, Return x93);
- { uint32_t x97 = (x64 & 0x1ffffff);
- { uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x50, Return x97);
- { uint32_t x101 = (x64 & 0xffffff);
- { uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x53, Return x101);
- { uint32_t x105 = (x64 & 0x1ffffff);
- { uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x56, Return x105);
- { uint32_t x109 = (x64 & 0x1ffffff);
- { uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x59, Return x109);
- { uint32_t x113 = (x64 & 0xffffff);
- { uint32_t x115, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x62, Return x113);
- out[0] = x67;
- out[1] = x71;
- out[2] = x75;
- out[3] = x79;
- out[4] = x83;
- out[5] = x87;
- out[6] = x91;
- out[7] = x95;
- out[8] = x99;
- out[9] = x103;
- out[10] = x107;
- out[11] = x111;
- out[12] = x115;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e321m9_13limbs/freeze.v b/src/Specific/solinas32_2e321m9_13limbs/freeze.v
deleted file mode 100644
index e2eac2725..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e321m9_13limbs.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_2e321m9_13limbs/freezeDisplay.log b/src/Specific/solinas32_2e321m9_13limbs/freezeDisplay.log
deleted file mode 100644
index 7588e8d55..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/freezeDisplay.log
+++ /dev/null
@@ -1,47 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x23, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffff7);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x4, 0x1ffffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x6, 0x1ffffff);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x8, 0xffffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x10, 0x1ffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x12, 0x1ffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x14, 0xffffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x16, 0x1ffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x18, 0x1ffffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x20, 0xffffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x22, 0x1ffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x24, 0x1ffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x23, 0xffffff);
- uint32_t x64 = cmovznz32(x63, 0x0, 0xffffffff);
- uint32_t x65 = (x64 & 0x1fffff7);
- uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x26, Return x65);
- uint32_t x69 = (x64 & 0x1ffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x29, Return x69);
- uint32_t x73 = (x64 & 0x1ffffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x32, Return x73);
- uint32_t x77 = (x64 & 0xffffff);
- uint32_t x79, uint8_t x80 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x35, Return x77);
- uint32_t x81 = (x64 & 0x1ffffff);
- uint32_t x83, uint8_t x84 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x38, Return x81);
- uint32_t x85 = (x64 & 0x1ffffff);
- uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x41, Return x85);
- uint32_t x89 = (x64 & 0xffffff);
- uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x44, Return x89);
- uint32_t x93 = (x64 & 0x1ffffff);
- uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x47, Return x93);
- uint32_t x97 = (x64 & 0x1ffffff);
- uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x50, Return x97);
- uint32_t x101 = (x64 & 0xffffff);
- uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x53, Return x101);
- uint32_t x105 = (x64 & 0x1ffffff);
- uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x56, Return x105);
- uint32_t x109 = (x64 & 0x1ffffff);
- uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x59, Return x109);
- uint32_t x113 = (x64 & 0xffffff);
- uint32_t x115, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x62, Return x113);
- (Return x115, Return x111, Return x107, Return x103, Return x99, Return x95, Return x91, Return x87, Return x83, Return x79, Return x75, Return x71, Return x67))
-x
- : word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e321m9_13limbs/freezeDisplay.v b/src/Specific/solinas32_2e321m9_13limbs/freezeDisplay.v
deleted file mode 100644
index 2f9b9e068..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e321m9_13limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e321m9_13limbs/py_interpreter.sh b/src/Specific/solinas32_2e321m9_13limbs/py_interpreter.sh
deleted file mode 100755
index af5060232..000000000
--- a/src/Specific/solinas32_2e321m9_13limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**321 - 9' -Dmodulus_bytes='24 + 9/13' -Da24='121665'
diff --git a/src/Specific/solinas32_2e322m2e161m1_12limbs/CurveParameters.v b/src/Specific/solinas32_2e322m2e161m1_12limbs/CurveParameters.v
deleted file mode 100644
index 3e63b7416..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^322 - 2^161 - 1
-Base: 26 + 5/6
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 12%nat;
- base := 26 + 5/6;
- bitwidth := 32;
- s := 2^322;
- c := [(1, 1); (2^161, 1)];
- carry_chains := Some [[5; 11]; [6; 0; 7; 1; 8; 2; 9; 3; 10; 4; 11; 5]; [6; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- 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_2e322m2e161m1_12limbs/Synthesis.v b/src/Specific/solinas32_2e322m2e161m1_12limbs/Synthesis.v
deleted file mode 100644
index c4113abe7..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_12limbs.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_2e322m2e161m1_12limbs/compiler.sh b/src/Specific/solinas32_2e322m2e161m1_12limbs/compiler.sh
deleted file mode 100755
index 90f9ebcd0..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/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,0x00,0x00,0x00,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,27,27,27,27,26,27,27,27,27,27,26}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' "$@"
diff --git a/src/Specific/solinas32_2e322m2e161m1_12limbs/compilerxx.sh b/src/Specific/solinas32_2e322m2e161m1_12limbs/compilerxx.sh
deleted file mode 100755
index 8c76c4025..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/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,0x00,0x00,0x00,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,27,27,27,27,26,27,27,27,27,27,26}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' "$@"
diff --git a/src/Specific/solinas32_2e322m2e161m1_12limbs/feadd.c b/src/Specific/solinas32_2e322m2e161m1_12limbs/feadd.c
deleted file mode 100644
index 68eccd2bc..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/feadd.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void feadd(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- out[0] = (x5 + x27);
- out[1] = (x7 + x29);
- out[2] = (x9 + x31);
- out[3] = (x11 + x33);
- out[4] = (x13 + x35);
- out[5] = (x15 + x37);
- out[6] = (x17 + x39);
- out[7] = (x19 + x41);
- out[8] = (x21 + x43);
- out[9] = (x23 + x45);
- out[10] = (x25 + x47);
- out[11] = (x24 + x46);
- }}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e322m2e161m1_12limbs/feadd.v b/src/Specific/solinas32_2e322m2e161m1_12limbs/feadd.v
deleted file mode 100644
index 38da53e96..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_12limbs.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_2e322m2e161m1_12limbs/feaddDisplay.log b/src/Specific/solinas32_2e322m2e161m1_12limbs/feaddDisplay.log
deleted file mode 100644
index 4109af59c..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- ((x24 + x46), (x25 + x47), (x23 + x45), (x21 + x43), (x19 + x41), (x17 + x39), (x15 + x37), (x13 + x35), (x11 + x33), (x9 + x31), (x7 + x29), (x5 + x27)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e322m2e161m1_12limbs/feaddDisplay.v b/src/Specific/solinas32_2e322m2e161m1_12limbs/feaddDisplay.v
deleted file mode 100644
index 96e8095d6..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_12limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e322m2e161m1_12limbs/fecarry.v b/src/Specific/solinas32_2e322m2e161m1_12limbs/fecarry.v
deleted file mode 100644
index a13a9c768..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_12limbs.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_2e322m2e161m1_12limbs/fecarryDisplay.v b/src/Specific/solinas32_2e322m2e161m1_12limbs/fecarryDisplay.v
deleted file mode 100644
index 94f2519b0..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_12limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e322m2e161m1_12limbs/femul.c b/src/Specific/solinas32_2e322m2e161m1_12limbs/femul.c
deleted file mode 100644
index 842945eca..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/femul.c
+++ /dev/null
@@ -1,113 +0,0 @@
-static void femul(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- { uint64_t x48 = ((0x2 * ((uint64_t)(x15 + x24) * (x37 + x46))) - (0x2 * ((uint64_t)x15 * x37)));
- { uint64_t x49 = (((0x2 * ((uint64_t)(x13 + x25) * (x37 + x46))) + (0x2 * ((uint64_t)(x15 + x24) * (x35 + x47)))) - ((0x2 * ((uint64_t)x13 * x37)) + (0x2 * ((uint64_t)x15 * x35))));
- { uint64_t x50 = (((0x2 * ((uint64_t)(x11 + x23) * (x37 + x46))) + ((0x2 * ((uint64_t)(x13 + x25) * (x35 + x47))) + (0x2 * ((uint64_t)(x15 + x24) * (x33 + x45))))) - ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + (0x2 * ((uint64_t)x15 * x33)))));
- { uint64_t x51 = (((0x2 * ((uint64_t)(x9 + x21) * (x37 + x46))) + ((0x2 * ((uint64_t)(x11 + x23) * (x35 + x47))) + ((0x2 * ((uint64_t)(x13 + x25) * (x33 + x45))) + (0x2 * ((uint64_t)(x15 + x24) * (x31 + x43)))))) - ((0x2 * ((uint64_t)x9 * x37)) + ((0x2 * ((uint64_t)x11 * x35)) + ((0x2 * ((uint64_t)x13 * x33)) + (0x2 * ((uint64_t)x15 * x31))))));
- { uint64_t x52 = (((0x2 * ((uint64_t)(x7 + x19) * (x37 + x46))) + ((0x2 * ((uint64_t)(x9 + x21) * (x35 + x47))) + ((0x2 * ((uint64_t)(x11 + x23) * (x33 + x45))) + ((0x2 * ((uint64_t)(x13 + x25) * (x31 + x43))) + (0x2 * ((uint64_t)(x15 + x24) * (x29 + x41))))))) - ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + (0x2 * ((uint64_t)x15 * x29)))))));
- { uint64_t x53 = ((((uint64_t)(x5 + x17) * (x37 + x46)) + (((uint64_t)(x7 + x19) * (x35 + x47)) + (((uint64_t)(x9 + x21) * (x33 + x45)) + (((uint64_t)(x11 + x23) * (x31 + x43)) + (((uint64_t)(x13 + x25) * (x29 + x41)) + ((uint64_t)(x15 + x24) * (x27 + x39))))))) - (((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + ((uint64_t)x15 * x27)))))));
- { uint64_t x54 = ((((uint64_t)(x5 + x17) * (x35 + x47)) + (((uint64_t)(x7 + x19) * (x33 + x45)) + (((uint64_t)(x9 + x21) * (x31 + x43)) + (((uint64_t)(x11 + x23) * (x29 + x41)) + ((uint64_t)(x13 + x25) * (x27 + x39)))))) - (((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + ((uint64_t)x13 * x27))))));
- { uint64_t x55 = ((((uint64_t)(x5 + x17) * (x33 + x45)) + (((uint64_t)(x7 + x19) * (x31 + x43)) + (((uint64_t)(x9 + x21) * (x29 + x41)) + ((uint64_t)(x11 + x23) * (x27 + x39))))) - (((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + ((uint64_t)x11 * x27)))));
- { uint64_t x56 = ((((uint64_t)(x5 + x17) * (x31 + x43)) + (((uint64_t)(x7 + x19) * (x29 + x41)) + ((uint64_t)(x9 + x21) * (x27 + x39)))) - (((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + ((uint64_t)x9 * x27))));
- { uint64_t x57 = ((((uint64_t)(x5 + x17) * (x29 + x41)) + ((uint64_t)(x7 + x19) * (x27 + x39))) - (((uint64_t)x5 * x29) + ((uint64_t)x7 * x27)));
- { uint64_t x58 = (((uint64_t)(x5 + x17) * (x27 + x39)) - ((uint64_t)x5 * x27));
- { uint64_t x59 = ((((0x2 * ((uint64_t)x15 * x37)) + (0x2 * ((uint64_t)x24 * x46))) + x54) + x48);
- { uint64_t x60 = (((((0x2 * ((uint64_t)x13 * x37)) + (0x2 * ((uint64_t)x15 * x35))) + ((0x2 * ((uint64_t)x25 * x46)) + (0x2 * ((uint64_t)x24 * x47)))) + x55) + x49);
- { uint64_t x61 = (((((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + (0x2 * ((uint64_t)x15 * x33)))) + ((0x2 * ((uint64_t)x23 * x46)) + ((0x2 * ((uint64_t)x25 * x47)) + (0x2 * ((uint64_t)x24 * x45))))) + x56) + x50);
- { uint64_t x62 = (((((0x2 * ((uint64_t)x9 * x37)) + ((0x2 * ((uint64_t)x11 * x35)) + ((0x2 * ((uint64_t)x13 * x33)) + (0x2 * ((uint64_t)x15 * x31))))) + ((0x2 * ((uint64_t)x21 * x46)) + ((0x2 * ((uint64_t)x23 * x47)) + ((0x2 * ((uint64_t)x25 * x45)) + (0x2 * ((uint64_t)x24 * x43)))))) + x57) + x51);
- { uint64_t x63 = (((((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + (0x2 * ((uint64_t)x15 * x29)))))) + ((0x2 * ((uint64_t)x19 * x46)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + ((0x2 * ((uint64_t)x25 * x43)) + (0x2 * ((uint64_t)x24 * x41))))))) + x58) + x52);
- { uint64_t x64 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + ((uint64_t)x15 * x27)))))) + (((uint64_t)x17 * x46) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + ((uint64_t)x24 * x39)))))));
- { uint64_t x65 = (((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + ((uint64_t)x13 * x27))))) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + ((uint64_t)x25 * x39)))))) + x48);
- { uint64_t x66 = (((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + ((uint64_t)x11 * x27)))) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + ((uint64_t)x23 * x39))))) + x49);
- { uint64_t x67 = (((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + ((uint64_t)x9 * x27))) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + ((uint64_t)x21 * x39)))) + x50);
- { uint64_t x68 = (((((uint64_t)x5 * x29) + ((uint64_t)x7 * x27)) + (((uint64_t)x17 * x41) + ((uint64_t)x19 * x39))) + x51);
- { uint64_t x69 = ((((uint64_t)x5 * x27) + ((uint64_t)x17 * x39)) + x52);
- { uint64_t x70 = (x64 >> 0x1a);
- { uint32_t x71 = ((uint32_t)x64 & 0x3ffffff);
- { uint64_t x72 = (x53 >> 0x1a);
- { uint32_t x73 = ((uint32_t)x53 & 0x3ffffff);
- { uint64_t x74 = ((0x4000000 * x72) + x73);
- { uint64_t x75 = (x74 >> 0x1a);
- { uint32_t x76 = ((uint32_t)x74 & 0x3ffffff);
- { uint64_t x77 = ((x70 + x63) + x75);
- { uint64_t x78 = (x77 >> 0x1b);
- { uint32_t x79 = ((uint32_t)x77 & 0x7ffffff);
- { uint64_t x80 = (x69 + x75);
- { uint64_t x81 = (x80 >> 0x1b);
- { uint32_t x82 = ((uint32_t)x80 & 0x7ffffff);
- { uint64_t x83 = (x78 + x62);
- { uint64_t x84 = (x83 >> 0x1b);
- { uint32_t x85 = ((uint32_t)x83 & 0x7ffffff);
- { uint64_t x86 = (x81 + x68);
- { uint64_t x87 = (x86 >> 0x1b);
- { uint32_t x88 = ((uint32_t)x86 & 0x7ffffff);
- { uint64_t x89 = (x84 + x61);
- { uint64_t x90 = (x89 >> 0x1b);
- { uint32_t x91 = ((uint32_t)x89 & 0x7ffffff);
- { uint64_t x92 = (x87 + x67);
- { uint64_t x93 = (x92 >> 0x1b);
- { uint32_t x94 = ((uint32_t)x92 & 0x7ffffff);
- { uint64_t x95 = (x90 + x60);
- { uint64_t x96 = (x95 >> 0x1b);
- { uint32_t x97 = ((uint32_t)x95 & 0x7ffffff);
- { uint64_t x98 = (x93 + x66);
- { uint64_t x99 = (x98 >> 0x1b);
- { uint32_t x100 = ((uint32_t)x98 & 0x7ffffff);
- { uint64_t x101 = (x96 + x59);
- { uint64_t x102 = (x101 >> 0x1b);
- { uint32_t x103 = ((uint32_t)x101 & 0x7ffffff);
- { uint64_t x104 = (x99 + x65);
- { uint64_t x105 = (x104 >> 0x1b);
- { uint32_t x106 = ((uint32_t)x104 & 0x7ffffff);
- { uint64_t x107 = (x102 + x76);
- { uint32_t x108 = (uint32_t) (x107 >> 0x1a);
- { uint32_t x109 = ((uint32_t)x107 & 0x3ffffff);
- { uint64_t x110 = (x105 + x71);
- { uint32_t x111 = (uint32_t) (x110 >> 0x1a);
- { uint32_t x112 = ((uint32_t)x110 & 0x3ffffff);
- { uint64_t x113 = (((uint64_t)0x4000000 * x108) + x109);
- { uint32_t x114 = (uint32_t) (x113 >> 0x1a);
- { uint32_t x115 = ((uint32_t)x113 & 0x3ffffff);
- { uint32_t x116 = ((x111 + x79) + x114);
- { uint32_t x117 = (x116 >> 0x1b);
- { uint32_t x118 = (x116 & 0x7ffffff);
- { uint32_t x119 = (x82 + x114);
- { uint32_t x120 = (x119 >> 0x1b);
- { uint32_t x121 = (x119 & 0x7ffffff);
- out[0] = x121;
- out[1] = (x120 + x88);
- out[2] = x94;
- out[3] = x100;
- out[4] = x106;
- out[5] = x112;
- out[6] = x118;
- out[7] = (x117 + x85);
- out[8] = x91;
- out[9] = x97;
- out[10] = x103;
- out[11] = x115;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e322m2e161m1_12limbs/femul.v b/src/Specific/solinas32_2e322m2e161m1_12limbs/femul.v
deleted file mode 100644
index 727d23158..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_12limbs.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_2e322m2e161m1_12limbs/femulDisplay.log b/src/Specific/solinas32_2e322m2e161m1_12limbs/femulDisplay.log
deleted file mode 100644
index 19439716d..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/femulDisplay.log
+++ /dev/null
@@ -1,81 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- uint64_t x48 = ((0x2 * ((uint64_t)(x15 + x24) * (x37 + x46))) - (0x2 * ((uint64_t)x15 * x37)));
- uint64_t x49 = (((0x2 * ((uint64_t)(x13 + x25) * (x37 + x46))) + (0x2 * ((uint64_t)(x15 + x24) * (x35 + x47)))) - ((0x2 * ((uint64_t)x13 * x37)) + (0x2 * ((uint64_t)x15 * x35))));
- uint64_t x50 = (((0x2 * ((uint64_t)(x11 + x23) * (x37 + x46))) + ((0x2 * ((uint64_t)(x13 + x25) * (x35 + x47))) + (0x2 * ((uint64_t)(x15 + x24) * (x33 + x45))))) - ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + (0x2 * ((uint64_t)x15 * x33)))));
- uint64_t x51 = (((0x2 * ((uint64_t)(x9 + x21) * (x37 + x46))) + ((0x2 * ((uint64_t)(x11 + x23) * (x35 + x47))) + ((0x2 * ((uint64_t)(x13 + x25) * (x33 + x45))) + (0x2 * ((uint64_t)(x15 + x24) * (x31 + x43)))))) - ((0x2 * ((uint64_t)x9 * x37)) + ((0x2 * ((uint64_t)x11 * x35)) + ((0x2 * ((uint64_t)x13 * x33)) + (0x2 * ((uint64_t)x15 * x31))))));
- uint64_t x52 = (((0x2 * ((uint64_t)(x7 + x19) * (x37 + x46))) + ((0x2 * ((uint64_t)(x9 + x21) * (x35 + x47))) + ((0x2 * ((uint64_t)(x11 + x23) * (x33 + x45))) + ((0x2 * ((uint64_t)(x13 + x25) * (x31 + x43))) + (0x2 * ((uint64_t)(x15 + x24) * (x29 + x41))))))) - ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + (0x2 * ((uint64_t)x15 * x29)))))));
- uint64_t x53 = ((((uint64_t)(x5 + x17) * (x37 + x46)) + (((uint64_t)(x7 + x19) * (x35 + x47)) + (((uint64_t)(x9 + x21) * (x33 + x45)) + (((uint64_t)(x11 + x23) * (x31 + x43)) + (((uint64_t)(x13 + x25) * (x29 + x41)) + ((uint64_t)(x15 + x24) * (x27 + x39))))))) - (((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + ((uint64_t)x15 * x27)))))));
- uint64_t x54 = ((((uint64_t)(x5 + x17) * (x35 + x47)) + (((uint64_t)(x7 + x19) * (x33 + x45)) + (((uint64_t)(x9 + x21) * (x31 + x43)) + (((uint64_t)(x11 + x23) * (x29 + x41)) + ((uint64_t)(x13 + x25) * (x27 + x39)))))) - (((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + ((uint64_t)x13 * x27))))));
- uint64_t x55 = ((((uint64_t)(x5 + x17) * (x33 + x45)) + (((uint64_t)(x7 + x19) * (x31 + x43)) + (((uint64_t)(x9 + x21) * (x29 + x41)) + ((uint64_t)(x11 + x23) * (x27 + x39))))) - (((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + ((uint64_t)x11 * x27)))));
- uint64_t x56 = ((((uint64_t)(x5 + x17) * (x31 + x43)) + (((uint64_t)(x7 + x19) * (x29 + x41)) + ((uint64_t)(x9 + x21) * (x27 + x39)))) - (((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + ((uint64_t)x9 * x27))));
- uint64_t x57 = ((((uint64_t)(x5 + x17) * (x29 + x41)) + ((uint64_t)(x7 + x19) * (x27 + x39))) - (((uint64_t)x5 * x29) + ((uint64_t)x7 * x27)));
- uint64_t x58 = (((uint64_t)(x5 + x17) * (x27 + x39)) - ((uint64_t)x5 * x27));
- uint64_t x59 = ((((0x2 * ((uint64_t)x15 * x37)) + (0x2 * ((uint64_t)x24 * x46))) + x54) + x48);
- uint64_t x60 = (((((0x2 * ((uint64_t)x13 * x37)) + (0x2 * ((uint64_t)x15 * x35))) + ((0x2 * ((uint64_t)x25 * x46)) + (0x2 * ((uint64_t)x24 * x47)))) + x55) + x49);
- uint64_t x61 = (((((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + (0x2 * ((uint64_t)x15 * x33)))) + ((0x2 * ((uint64_t)x23 * x46)) + ((0x2 * ((uint64_t)x25 * x47)) + (0x2 * ((uint64_t)x24 * x45))))) + x56) + x50);
- uint64_t x62 = (((((0x2 * ((uint64_t)x9 * x37)) + ((0x2 * ((uint64_t)x11 * x35)) + ((0x2 * ((uint64_t)x13 * x33)) + (0x2 * ((uint64_t)x15 * x31))))) + ((0x2 * ((uint64_t)x21 * x46)) + ((0x2 * ((uint64_t)x23 * x47)) + ((0x2 * ((uint64_t)x25 * x45)) + (0x2 * ((uint64_t)x24 * x43)))))) + x57) + x51);
- uint64_t x63 = (((((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((0x2 * ((uint64_t)x13 * x31)) + (0x2 * ((uint64_t)x15 * x29)))))) + ((0x2 * ((uint64_t)x19 * x46)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + ((0x2 * ((uint64_t)x25 * x43)) + (0x2 * ((uint64_t)x24 * x41))))))) + x58) + x52);
- uint64_t x64 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + ((uint64_t)x15 * x27)))))) + (((uint64_t)x17 * x46) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + ((uint64_t)x24 * x39)))))));
- uint64_t x65 = (((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + ((uint64_t)x13 * x27))))) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + ((uint64_t)x25 * x39)))))) + x48);
- uint64_t x66 = (((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + ((uint64_t)x11 * x27)))) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + ((uint64_t)x23 * x39))))) + x49);
- uint64_t x67 = (((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + ((uint64_t)x9 * x27))) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + ((uint64_t)x21 * x39)))) + x50);
- uint64_t x68 = (((((uint64_t)x5 * x29) + ((uint64_t)x7 * x27)) + (((uint64_t)x17 * x41) + ((uint64_t)x19 * x39))) + x51);
- uint64_t x69 = ((((uint64_t)x5 * x27) + ((uint64_t)x17 * x39)) + x52);
- uint64_t x70 = (x64 >> 0x1a);
- uint32_t x71 = ((uint32_t)x64 & 0x3ffffff);
- uint64_t x72 = (x53 >> 0x1a);
- uint32_t x73 = ((uint32_t)x53 & 0x3ffffff);
- uint64_t x74 = ((0x4000000 * x72) + x73);
- uint64_t x75 = (x74 >> 0x1a);
- uint32_t x76 = ((uint32_t)x74 & 0x3ffffff);
- uint64_t x77 = ((x70 + x63) + x75);
- uint64_t x78 = (x77 >> 0x1b);
- uint32_t x79 = ((uint32_t)x77 & 0x7ffffff);
- uint64_t x80 = (x69 + x75);
- uint64_t x81 = (x80 >> 0x1b);
- uint32_t x82 = ((uint32_t)x80 & 0x7ffffff);
- uint64_t x83 = (x78 + x62);
- uint64_t x84 = (x83 >> 0x1b);
- uint32_t x85 = ((uint32_t)x83 & 0x7ffffff);
- uint64_t x86 = (x81 + x68);
- uint64_t x87 = (x86 >> 0x1b);
- uint32_t x88 = ((uint32_t)x86 & 0x7ffffff);
- uint64_t x89 = (x84 + x61);
- uint64_t x90 = (x89 >> 0x1b);
- uint32_t x91 = ((uint32_t)x89 & 0x7ffffff);
- uint64_t x92 = (x87 + x67);
- uint64_t x93 = (x92 >> 0x1b);
- uint32_t x94 = ((uint32_t)x92 & 0x7ffffff);
- uint64_t x95 = (x90 + x60);
- uint64_t x96 = (x95 >> 0x1b);
- uint32_t x97 = ((uint32_t)x95 & 0x7ffffff);
- uint64_t x98 = (x93 + x66);
- uint64_t x99 = (x98 >> 0x1b);
- uint32_t x100 = ((uint32_t)x98 & 0x7ffffff);
- uint64_t x101 = (x96 + x59);
- uint64_t x102 = (x101 >> 0x1b);
- uint32_t x103 = ((uint32_t)x101 & 0x7ffffff);
- uint64_t x104 = (x99 + x65);
- uint64_t x105 = (x104 >> 0x1b);
- uint32_t x106 = ((uint32_t)x104 & 0x7ffffff);
- uint64_t x107 = (x102 + x76);
- uint32_t x108 = (uint32_t) (x107 >> 0x1a);
- uint32_t x109 = ((uint32_t)x107 & 0x3ffffff);
- uint64_t x110 = (x105 + x71);
- uint32_t x111 = (uint32_t) (x110 >> 0x1a);
- uint32_t x112 = ((uint32_t)x110 & 0x3ffffff);
- uint64_t x113 = (((uint64_t)0x4000000 * x108) + x109);
- uint32_t x114 = (uint32_t) (x113 >> 0x1a);
- uint32_t x115 = ((uint32_t)x113 & 0x3ffffff);
- uint32_t x116 = ((x111 + x79) + x114);
- uint32_t x117 = (x116 >> 0x1b);
- uint32_t x118 = (x116 & 0x7ffffff);
- uint32_t x119 = (x82 + x114);
- uint32_t x120 = (x119 >> 0x1b);
- uint32_t x121 = (x119 & 0x7ffffff);
- return (Return x115, Return x103, Return x97, Return x91, (x117 + x85), Return x118, Return x112, Return x106, Return x100, Return x94, (x120 + x88), Return x121))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e322m2e161m1_12limbs/femulDisplay.v b/src/Specific/solinas32_2e322m2e161m1_12limbs/femulDisplay.v
deleted file mode 100644
index 2072b2fd1..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_12limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e322m2e161m1_12limbs/fesquare.c b/src/Specific/solinas32_2e322m2e161m1_12limbs/fesquare.c
deleted file mode 100644
index 239276ce9..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/fesquare.c
+++ /dev/null
@@ -1,101 +0,0 @@
-static void fesquare(uint32_t out[12], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x23 = ((0x2 * ((uint64_t)(x12 + x21) * (x12 + x21))) - (0x2 * ((uint64_t)x12 * x12)));
- { uint64_t x24 = (((0x2 * ((uint64_t)(x10 + x22) * (x12 + x21))) + (0x2 * ((uint64_t)(x12 + x21) * (x10 + x22)))) - ((0x2 * ((uint64_t)x10 * x12)) + (0x2 * ((uint64_t)x12 * x10))));
- { uint64_t x25 = (((0x2 * ((uint64_t)(x8 + x20) * (x12 + x21))) + ((0x2 * ((uint64_t)(x10 + x22) * (x10 + x22))) + (0x2 * ((uint64_t)(x12 + x21) * (x8 + x20))))) - ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + (0x2 * ((uint64_t)x12 * x8)))));
- { uint64_t x26 = (((0x2 * ((uint64_t)(x6 + x18) * (x12 + x21))) + ((0x2 * ((uint64_t)(x8 + x20) * (x10 + x22))) + ((0x2 * ((uint64_t)(x10 + x22) * (x8 + x20))) + (0x2 * ((uint64_t)(x12 + x21) * (x6 + x18)))))) - ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + (0x2 * ((uint64_t)x12 * x6))))));
- { uint64_t x27 = (((0x2 * ((uint64_t)(x4 + x16) * (x12 + x21))) + ((0x2 * ((uint64_t)(x6 + x18) * (x10 + x22))) + ((0x2 * ((uint64_t)(x8 + x20) * (x8 + x20))) + ((0x2 * ((uint64_t)(x10 + x22) * (x6 + x18))) + (0x2 * ((uint64_t)(x12 + x21) * (x4 + x16))))))) - ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + (0x2 * ((uint64_t)x12 * x4)))))));
- { uint64_t x28 = ((((uint64_t)(x2 + x14) * (x12 + x21)) + (((uint64_t)(x4 + x16) * (x10 + x22)) + (((uint64_t)(x6 + x18) * (x8 + x20)) + (((uint64_t)(x8 + x20) * (x6 + x18)) + (((uint64_t)(x10 + x22) * (x4 + x16)) + ((uint64_t)(x12 + x21) * (x2 + x14))))))) - (((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))));
- { uint64_t x29 = ((((uint64_t)(x2 + x14) * (x10 + x22)) + (((uint64_t)(x4 + x16) * (x8 + x20)) + (((uint64_t)(x6 + x18) * (x6 + x18)) + (((uint64_t)(x8 + x20) * (x4 + x16)) + ((uint64_t)(x10 + x22) * (x2 + x14)))))) - (((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))));
- { uint64_t x30 = ((((uint64_t)(x2 + x14) * (x8 + x20)) + (((uint64_t)(x4 + x16) * (x6 + x18)) + (((uint64_t)(x6 + x18) * (x4 + x16)) + ((uint64_t)(x8 + x20) * (x2 + x14))))) - (((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))));
- { uint64_t x31 = ((((uint64_t)(x2 + x14) * (x6 + x18)) + (((uint64_t)(x4 + x16) * (x4 + x16)) + ((uint64_t)(x6 + x18) * (x2 + x14)))) - (((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))));
- { uint64_t x32 = ((((uint64_t)(x2 + x14) * (x4 + x16)) + ((uint64_t)(x4 + x16) * (x2 + x14))) - (((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)));
- { uint64_t x33 = (((uint64_t)(x2 + x14) * (x2 + x14)) - ((uint64_t)x2 * x2));
- { uint64_t x34 = ((((0x2 * ((uint64_t)x12 * x12)) + (0x2 * ((uint64_t)x21 * x21))) + x29) + x23);
- { uint64_t x35 = (((((0x2 * ((uint64_t)x10 * x12)) + (0x2 * ((uint64_t)x12 * x10))) + ((0x2 * ((uint64_t)x22 * x21)) + (0x2 * ((uint64_t)x21 * x22)))) + x30) + x24);
- { uint64_t x36 = (((((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + (0x2 * ((uint64_t)x12 * x8)))) + ((0x2 * ((uint64_t)x20 * x21)) + ((0x2 * ((uint64_t)x22 * x22)) + (0x2 * ((uint64_t)x21 * x20))))) + x31) + x25);
- { uint64_t x37 = (((((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + (0x2 * ((uint64_t)x12 * x6))))) + ((0x2 * ((uint64_t)x18 * x21)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + (0x2 * ((uint64_t)x21 * x18)))))) + x32) + x26);
- { uint64_t x38 = (((((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + (0x2 * ((uint64_t)x12 * x4)))))) + ((0x2 * ((uint64_t)x16 * x21)) + ((0x2 * ((uint64_t)x18 * x22)) + ((0x2 * ((uint64_t)x20 * x20)) + ((0x2 * ((uint64_t)x22 * x18)) + (0x2 * ((uint64_t)x21 * x16))))))) + x33) + x27);
- { uint64_t x39 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (((uint64_t)x14 * x21) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + ((uint64_t)x21 * x14)))))));
- { uint64_t x40 = (((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + ((uint64_t)x22 * x14)))))) + x23);
- { uint64_t x41 = (((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((uint64_t)x20 * x14))))) + x24);
- { uint64_t x42 = (((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + ((uint64_t)x18 * x14)))) + x25);
- { uint64_t x43 = (((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x14 * x16) + ((uint64_t)x16 * x14))) + x26);
- { uint64_t x44 = ((((uint64_t)x2 * x2) + ((uint64_t)x14 * x14)) + x27);
- { uint64_t x45 = (x39 >> 0x1a);
- { uint32_t x46 = ((uint32_t)x39 & 0x3ffffff);
- { uint64_t x47 = (x28 >> 0x1a);
- { uint32_t x48 = ((uint32_t)x28 & 0x3ffffff);
- { uint64_t x49 = ((0x4000000 * x47) + x48);
- { uint64_t x50 = (x49 >> 0x1a);
- { uint32_t x51 = ((uint32_t)x49 & 0x3ffffff);
- { uint64_t x52 = ((x45 + x38) + x50);
- { uint64_t x53 = (x52 >> 0x1b);
- { uint32_t x54 = ((uint32_t)x52 & 0x7ffffff);
- { uint64_t x55 = (x44 + x50);
- { uint64_t x56 = (x55 >> 0x1b);
- { uint32_t x57 = ((uint32_t)x55 & 0x7ffffff);
- { uint64_t x58 = (x53 + x37);
- { uint64_t x59 = (x58 >> 0x1b);
- { uint32_t x60 = ((uint32_t)x58 & 0x7ffffff);
- { uint64_t x61 = (x56 + x43);
- { uint64_t x62 = (x61 >> 0x1b);
- { uint32_t x63 = ((uint32_t)x61 & 0x7ffffff);
- { uint64_t x64 = (x59 + x36);
- { uint64_t x65 = (x64 >> 0x1b);
- { uint32_t x66 = ((uint32_t)x64 & 0x7ffffff);
- { uint64_t x67 = (x62 + x42);
- { uint64_t x68 = (x67 >> 0x1b);
- { uint32_t x69 = ((uint32_t)x67 & 0x7ffffff);
- { uint64_t x70 = (x65 + x35);
- { uint64_t x71 = (x70 >> 0x1b);
- { uint32_t x72 = ((uint32_t)x70 & 0x7ffffff);
- { uint64_t x73 = (x68 + x41);
- { uint64_t x74 = (x73 >> 0x1b);
- { uint32_t x75 = ((uint32_t)x73 & 0x7ffffff);
- { uint64_t x76 = (x71 + x34);
- { uint64_t x77 = (x76 >> 0x1b);
- { uint32_t x78 = ((uint32_t)x76 & 0x7ffffff);
- { uint64_t x79 = (x74 + x40);
- { uint64_t x80 = (x79 >> 0x1b);
- { uint32_t x81 = ((uint32_t)x79 & 0x7ffffff);
- { uint64_t x82 = (x77 + x51);
- { uint32_t x83 = (uint32_t) (x82 >> 0x1a);
- { uint32_t x84 = ((uint32_t)x82 & 0x3ffffff);
- { uint64_t x85 = (x80 + x46);
- { uint32_t x86 = (uint32_t) (x85 >> 0x1a);
- { uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- { uint64_t x88 = (((uint64_t)0x4000000 * x83) + x84);
- { uint32_t x89 = (uint32_t) (x88 >> 0x1a);
- { uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- { uint32_t x91 = ((x86 + x54) + x89);
- { uint32_t x92 = (x91 >> 0x1b);
- { uint32_t x93 = (x91 & 0x7ffffff);
- { uint32_t x94 = (x57 + x89);
- { uint32_t x95 = (x94 >> 0x1b);
- { uint32_t x96 = (x94 & 0x7ffffff);
- out[0] = x96;
- out[1] = (x95 + x63);
- out[2] = x69;
- out[3] = x75;
- out[4] = x81;
- out[5] = x87;
- out[6] = x93;
- out[7] = (x92 + x60);
- out[8] = x66;
- out[9] = x72;
- out[10] = x78;
- out[11] = x90;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e322m2e161m1_12limbs/fesquare.v b/src/Specific/solinas32_2e322m2e161m1_12limbs/fesquare.v
deleted file mode 100644
index cc5758279..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_12limbs.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_2e322m2e161m1_12limbs/fesquareDisplay.log b/src/Specific/solinas32_2e322m2e161m1_12limbs/fesquareDisplay.log
deleted file mode 100644
index dd9b17663..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,81 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x23 = ((0x2 * ((uint64_t)(x12 + x21) * (x12 + x21))) - (0x2 * ((uint64_t)x12 * x12)));
- uint64_t x24 = (((0x2 * ((uint64_t)(x10 + x22) * (x12 + x21))) + (0x2 * ((uint64_t)(x12 + x21) * (x10 + x22)))) - ((0x2 * ((uint64_t)x10 * x12)) + (0x2 * ((uint64_t)x12 * x10))));
- uint64_t x25 = (((0x2 * ((uint64_t)(x8 + x20) * (x12 + x21))) + ((0x2 * ((uint64_t)(x10 + x22) * (x10 + x22))) + (0x2 * ((uint64_t)(x12 + x21) * (x8 + x20))))) - ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + (0x2 * ((uint64_t)x12 * x8)))));
- uint64_t x26 = (((0x2 * ((uint64_t)(x6 + x18) * (x12 + x21))) + ((0x2 * ((uint64_t)(x8 + x20) * (x10 + x22))) + ((0x2 * ((uint64_t)(x10 + x22) * (x8 + x20))) + (0x2 * ((uint64_t)(x12 + x21) * (x6 + x18)))))) - ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + (0x2 * ((uint64_t)x12 * x6))))));
- uint64_t x27 = (((0x2 * ((uint64_t)(x4 + x16) * (x12 + x21))) + ((0x2 * ((uint64_t)(x6 + x18) * (x10 + x22))) + ((0x2 * ((uint64_t)(x8 + x20) * (x8 + x20))) + ((0x2 * ((uint64_t)(x10 + x22) * (x6 + x18))) + (0x2 * ((uint64_t)(x12 + x21) * (x4 + x16))))))) - ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + (0x2 * ((uint64_t)x12 * x4)))))));
- uint64_t x28 = ((((uint64_t)(x2 + x14) * (x12 + x21)) + (((uint64_t)(x4 + x16) * (x10 + x22)) + (((uint64_t)(x6 + x18) * (x8 + x20)) + (((uint64_t)(x8 + x20) * (x6 + x18)) + (((uint64_t)(x10 + x22) * (x4 + x16)) + ((uint64_t)(x12 + x21) * (x2 + x14))))))) - (((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))));
- uint64_t x29 = ((((uint64_t)(x2 + x14) * (x10 + x22)) + (((uint64_t)(x4 + x16) * (x8 + x20)) + (((uint64_t)(x6 + x18) * (x6 + x18)) + (((uint64_t)(x8 + x20) * (x4 + x16)) + ((uint64_t)(x10 + x22) * (x2 + x14)))))) - (((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))));
- uint64_t x30 = ((((uint64_t)(x2 + x14) * (x8 + x20)) + (((uint64_t)(x4 + x16) * (x6 + x18)) + (((uint64_t)(x6 + x18) * (x4 + x16)) + ((uint64_t)(x8 + x20) * (x2 + x14))))) - (((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))));
- uint64_t x31 = ((((uint64_t)(x2 + x14) * (x6 + x18)) + (((uint64_t)(x4 + x16) * (x4 + x16)) + ((uint64_t)(x6 + x18) * (x2 + x14)))) - (((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))));
- uint64_t x32 = ((((uint64_t)(x2 + x14) * (x4 + x16)) + ((uint64_t)(x4 + x16) * (x2 + x14))) - (((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)));
- uint64_t x33 = (((uint64_t)(x2 + x14) * (x2 + x14)) - ((uint64_t)x2 * x2));
- uint64_t x34 = ((((0x2 * ((uint64_t)x12 * x12)) + (0x2 * ((uint64_t)x21 * x21))) + x29) + x23);
- uint64_t x35 = (((((0x2 * ((uint64_t)x10 * x12)) + (0x2 * ((uint64_t)x12 * x10))) + ((0x2 * ((uint64_t)x22 * x21)) + (0x2 * ((uint64_t)x21 * x22)))) + x30) + x24);
- uint64_t x36 = (((((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + (0x2 * ((uint64_t)x12 * x8)))) + ((0x2 * ((uint64_t)x20 * x21)) + ((0x2 * ((uint64_t)x22 * x22)) + (0x2 * ((uint64_t)x21 * x20))))) + x31) + x25);
- uint64_t x37 = (((((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + (0x2 * ((uint64_t)x12 * x6))))) + ((0x2 * ((uint64_t)x18 * x21)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + (0x2 * ((uint64_t)x21 * x18)))))) + x32) + x26);
- uint64_t x38 = (((((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + (0x2 * ((uint64_t)x12 * x4)))))) + ((0x2 * ((uint64_t)x16 * x21)) + ((0x2 * ((uint64_t)x18 * x22)) + ((0x2 * ((uint64_t)x20 * x20)) + ((0x2 * ((uint64_t)x22 * x18)) + (0x2 * ((uint64_t)x21 * x16))))))) + x33) + x27);
- uint64_t x39 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (((uint64_t)x14 * x21) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + ((uint64_t)x21 * x14)))))));
- uint64_t x40 = (((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + ((uint64_t)x22 * x14)))))) + x23);
- uint64_t x41 = (((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((uint64_t)x20 * x14))))) + x24);
- uint64_t x42 = (((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + ((uint64_t)x18 * x14)))) + x25);
- uint64_t x43 = (((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x14 * x16) + ((uint64_t)x16 * x14))) + x26);
- uint64_t x44 = ((((uint64_t)x2 * x2) + ((uint64_t)x14 * x14)) + x27);
- uint64_t x45 = (x39 >> 0x1a);
- uint32_t x46 = ((uint32_t)x39 & 0x3ffffff);
- uint64_t x47 = (x28 >> 0x1a);
- uint32_t x48 = ((uint32_t)x28 & 0x3ffffff);
- uint64_t x49 = ((0x4000000 * x47) + x48);
- uint64_t x50 = (x49 >> 0x1a);
- uint32_t x51 = ((uint32_t)x49 & 0x3ffffff);
- uint64_t x52 = ((x45 + x38) + x50);
- uint64_t x53 = (x52 >> 0x1b);
- uint32_t x54 = ((uint32_t)x52 & 0x7ffffff);
- uint64_t x55 = (x44 + x50);
- uint64_t x56 = (x55 >> 0x1b);
- uint32_t x57 = ((uint32_t)x55 & 0x7ffffff);
- uint64_t x58 = (x53 + x37);
- uint64_t x59 = (x58 >> 0x1b);
- uint32_t x60 = ((uint32_t)x58 & 0x7ffffff);
- uint64_t x61 = (x56 + x43);
- uint64_t x62 = (x61 >> 0x1b);
- uint32_t x63 = ((uint32_t)x61 & 0x7ffffff);
- uint64_t x64 = (x59 + x36);
- uint64_t x65 = (x64 >> 0x1b);
- uint32_t x66 = ((uint32_t)x64 & 0x7ffffff);
- uint64_t x67 = (x62 + x42);
- uint64_t x68 = (x67 >> 0x1b);
- uint32_t x69 = ((uint32_t)x67 & 0x7ffffff);
- uint64_t x70 = (x65 + x35);
- uint64_t x71 = (x70 >> 0x1b);
- uint32_t x72 = ((uint32_t)x70 & 0x7ffffff);
- uint64_t x73 = (x68 + x41);
- uint64_t x74 = (x73 >> 0x1b);
- uint32_t x75 = ((uint32_t)x73 & 0x7ffffff);
- uint64_t x76 = (x71 + x34);
- uint64_t x77 = (x76 >> 0x1b);
- uint32_t x78 = ((uint32_t)x76 & 0x7ffffff);
- uint64_t x79 = (x74 + x40);
- uint64_t x80 = (x79 >> 0x1b);
- uint32_t x81 = ((uint32_t)x79 & 0x7ffffff);
- uint64_t x82 = (x77 + x51);
- uint32_t x83 = (uint32_t) (x82 >> 0x1a);
- uint32_t x84 = ((uint32_t)x82 & 0x3ffffff);
- uint64_t x85 = (x80 + x46);
- uint32_t x86 = (uint32_t) (x85 >> 0x1a);
- uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- uint64_t x88 = (((uint64_t)0x4000000 * x83) + x84);
- uint32_t x89 = (uint32_t) (x88 >> 0x1a);
- uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- uint32_t x91 = ((x86 + x54) + x89);
- uint32_t x92 = (x91 >> 0x1b);
- uint32_t x93 = (x91 & 0x7ffffff);
- uint32_t x94 = (x57 + x89);
- uint32_t x95 = (x94 >> 0x1b);
- uint32_t x96 = (x94 & 0x7ffffff);
- return (Return x90, Return x78, Return x72, Return x66, (x92 + x60), Return x93, Return x87, Return x81, Return x75, Return x69, (x95 + x63), Return x96))
-x
- : 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e322m2e161m1_12limbs/fesquareDisplay.v b/src/Specific/solinas32_2e322m2e161m1_12limbs/fesquareDisplay.v
deleted file mode 100644
index 65f89f463..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_12limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e322m2e161m1_12limbs/fesub.c b/src/Specific/solinas32_2e322m2e161m1_12limbs/fesub.c
deleted file mode 100644
index 009fc98df..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/fesub.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void fesub(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- out[0] = ((0xffffffe + x5) - x27);
- out[1] = ((0xffffffe + x7) - x29);
- out[2] = ((0xffffffe + x9) - x31);
- out[3] = ((0xffffffe + x11) - x33);
- out[4] = ((0xffffffe + x13) - x35);
- out[5] = ((0x7fffffe + x15) - x37);
- out[6] = ((0xffffffc + x17) - x39);
- out[7] = ((0xffffffe + x19) - x41);
- out[8] = ((0xffffffe + x21) - x43);
- out[9] = ((0xffffffe + x23) - x45);
- out[10] = ((0xffffffe + x25) - x47);
- out[11] = ((0x7fffffe + x24) - x46);
- }}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e322m2e161m1_12limbs/fesub.v b/src/Specific/solinas32_2e322m2e161m1_12limbs/fesub.v
deleted file mode 100644
index b364837f1..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_12limbs.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_2e322m2e161m1_12limbs/fesubDisplay.log b/src/Specific/solinas32_2e322m2e161m1_12limbs/fesubDisplay.log
deleted file mode 100644
index 2374544c9..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- (((0x7fffffe + x24) - x46), ((0xffffffe + x25) - x47), ((0xffffffe + x23) - x45), ((0xffffffe + x21) - x43), ((0xffffffe + x19) - x41), ((0xffffffc + x17) - x39), ((0x7fffffe + x15) - x37), ((0xffffffe + x13) - x35), ((0xffffffe + x11) - x33), ((0xffffffe + x9) - x31), ((0xffffffe + x7) - x29), ((0xffffffe + x5) - x27)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e322m2e161m1_12limbs/fesubDisplay.v b/src/Specific/solinas32_2e322m2e161m1_12limbs/fesubDisplay.v
deleted file mode 100644
index 832850c1c..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_12limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e322m2e161m1_12limbs/freeze.c b/src/Specific/solinas32_2e322m2e161m1_12limbs/freeze.c
deleted file mode 100644
index 6c821d00d..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/freeze.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void freeze(uint32_t out[12], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffff);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x4, 0x7ffffff);
- { uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x6, 0x7ffffff);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x8, 0x7ffffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x10, 0x7ffffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x12, 0x3ffffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x14, 0x7fffffe);
- { uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x16, 0x7ffffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x18, 0x7ffffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x20, 0x7ffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x22, 0x7ffffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x21, 0x3ffffff);
- { uint32_t x59 = cmovznz32(x58, 0x0, 0xffffffff);
- { uint32_t x60 = (x59 & 0x7ffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x24, Return x60);
- { uint32_t x64 = (x59 & 0x7ffffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x27, Return x64);
- { uint32_t x68 = (x59 & 0x7ffffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x30, Return x68);
- { uint32_t x72 = (x59 & 0x7ffffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x33, Return x72);
- { uint32_t x76 = (x59 & 0x7ffffff);
- { uint32_t x78, uint8_t x79 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x36, Return x76);
- { uint32_t x80 = (x59 & 0x3ffffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x39, Return x80);
- { uint32_t x84 = (x59 & 0x7fffffe);
- { uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x42, Return x84);
- { uint32_t x88 = (x59 & 0x7ffffff);
- { uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x45, Return x88);
- { uint32_t x92 = (x59 & 0x7ffffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x48, Return x92);
- { uint32_t x96 = (x59 & 0x7ffffff);
- { uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x51, Return x96);
- { uint32_t x100 = (x59 & 0x7ffffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x54, Return x100);
- { uint32_t x104 = (x59 & 0x3ffffff);
- { uint32_t x106, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x57, Return x104);
- out[0] = x62;
- out[1] = x66;
- out[2] = x70;
- out[3] = x74;
- out[4] = x78;
- out[5] = x82;
- out[6] = x86;
- out[7] = x90;
- out[8] = x94;
- out[9] = x98;
- out[10] = x102;
- out[11] = x106;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e322m2e161m1_12limbs/freeze.v b/src/Specific/solinas32_2e322m2e161m1_12limbs/freeze.v
deleted file mode 100644
index 1e640ae0a..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_12limbs.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_2e322m2e161m1_12limbs/freezeDisplay.log b/src/Specific/solinas32_2e322m2e161m1_12limbs/freezeDisplay.log
deleted file mode 100644
index 30671ff93..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/freezeDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffff);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x4, 0x7ffffff);
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x6, 0x7ffffff);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x8, 0x7ffffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x10, 0x7ffffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x12, 0x3ffffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x14, 0x7fffffe);
- uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x16, 0x7ffffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x18, 0x7ffffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x20, 0x7ffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x22, 0x7ffffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x21, 0x3ffffff);
- uint32_t x59 = cmovznz32(x58, 0x0, 0xffffffff);
- uint32_t x60 = (x59 & 0x7ffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x24, Return x60);
- uint32_t x64 = (x59 & 0x7ffffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x27, Return x64);
- uint32_t x68 = (x59 & 0x7ffffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x30, Return x68);
- uint32_t x72 = (x59 & 0x7ffffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x33, Return x72);
- uint32_t x76 = (x59 & 0x7ffffff);
- uint32_t x78, uint8_t x79 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x36, Return x76);
- uint32_t x80 = (x59 & 0x3ffffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x39, Return x80);
- uint32_t x84 = (x59 & 0x7fffffe);
- uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x42, Return x84);
- uint32_t x88 = (x59 & 0x7ffffff);
- uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x45, Return x88);
- uint32_t x92 = (x59 & 0x7ffffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x48, Return x92);
- uint32_t x96 = (x59 & 0x7ffffff);
- uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x51, Return x96);
- uint32_t x100 = (x59 & 0x7ffffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x54, Return x100);
- uint32_t x104 = (x59 & 0x3ffffff);
- uint32_t x106, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x57, Return x104);
- (Return x106, Return x102, Return x98, Return x94, Return x90, Return x86, Return x82, Return x78, Return x74, Return x70, Return x66, Return x62))
-x
- : 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e322m2e161m1_12limbs/freezeDisplay.v b/src/Specific/solinas32_2e322m2e161m1_12limbs/freezeDisplay.v
deleted file mode 100644
index f1f929149..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_12limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e322m2e161m1_12limbs/py_interpreter.sh b/src/Specific/solinas32_2e322m2e161m1_12limbs/py_interpreter.sh
deleted file mode 100755
index 4652867d2..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_12limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**322 - 2**161 - 1' -Dmodulus_bytes='26 + 5/6' -Da24='121665'
diff --git a/src/Specific/solinas32_2e322m2e161m1_14limbs/CurveParameters.v b/src/Specific/solinas32_2e322m2e161m1_14limbs/CurveParameters.v
deleted file mode 100644
index d6740403e..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^322 - 2^161 - 1
-Base: 23
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 14%nat;
- base := 23;
- bitwidth := 32;
- s := 2^322;
- c := [(1, 1); (2^161, 1)];
- carry_chains := Some [[6; 13]; [7; 0; 8; 1; 9; 2; 10; 3; 11; 4; 12; 5; 13; 6]; [7; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- 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_2e322m2e161m1_14limbs/Synthesis.v b/src/Specific/solinas32_2e322m2e161m1_14limbs/Synthesis.v
deleted file mode 100644
index fa0554410..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_14limbs.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_2e322m2e161m1_14limbs/compiler.sh b/src/Specific/solinas32_2e322m2e161m1_14limbs/compiler.sh
deleted file mode 100755
index 813cdf7f8..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/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,0x00,0x00,0x00,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='{23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='14' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' "$@"
diff --git a/src/Specific/solinas32_2e322m2e161m1_14limbs/compilerxx.sh b/src/Specific/solinas32_2e322m2e161m1_14limbs/compilerxx.sh
deleted file mode 100755
index 2f9631aea..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/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,0x00,0x00,0x00,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='{23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='14' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' "$@"
diff --git a/src/Specific/solinas32_2e322m2e161m1_14limbs/feadd.c b/src/Specific/solinas32_2e322m2e161m1_14limbs/feadd.c
deleted file mode 100644
index 6b2a8feaf..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/feadd.c
+++ /dev/null
@@ -1,45 +0,0 @@
-static void feadd(uint32_t out[14], const uint32_t in1[14], const uint32_t in2[14]) {
- { const uint32_t x28 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x54 = in2[13];
- { const uint32_t x55 = in2[12];
- { const uint32_t x53 = in2[11];
- { const uint32_t x51 = in2[10];
- { const uint32_t x49 = in2[9];
- { const uint32_t x47 = in2[8];
- { const uint32_t x45 = in2[7];
- { const uint32_t x43 = in2[6];
- { const uint32_t x41 = in2[5];
- { const uint32_t x39 = in2[4];
- { const uint32_t x37 = in2[3];
- { const uint32_t x35 = in2[2];
- { const uint32_t x33 = in2[1];
- { const uint32_t x31 = in2[0];
- out[0] = (x5 + x31);
- out[1] = (x7 + x33);
- out[2] = (x9 + x35);
- out[3] = (x11 + x37);
- out[4] = (x13 + x39);
- out[5] = (x15 + x41);
- out[6] = (x17 + x43);
- out[7] = (x19 + x45);
- out[8] = (x21 + x47);
- out[9] = (x23 + x49);
- out[10] = (x25 + x51);
- out[11] = (x27 + x53);
- out[12] = (x29 + x55);
- out[13] = (x28 + x54);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e322m2e161m1_14limbs/feadd.v b/src/Specific/solinas32_2e322m2e161m1_14limbs/feadd.v
deleted file mode 100644
index 2d5207a49..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_14limbs.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_2e322m2e161m1_14limbs/feaddDisplay.log b/src/Specific/solinas32_2e322m2e161m1_14limbs/feaddDisplay.log
deleted file mode 100644
index ff11bcba0..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x28, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x54, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31))%core,
- ((x28 + x54), (x29 + x55), (x27 + x53), (x25 + x51), (x23 + x49), (x21 + x47), (x19 + x45), (x17 + x43), (x15 + x41), (x13 + x39), (x11 + x37), (x9 + x35), (x7 + x33), (x5 + x31)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e322m2e161m1_14limbs/feaddDisplay.v b/src/Specific/solinas32_2e322m2e161m1_14limbs/feaddDisplay.v
deleted file mode 100644
index 058288807..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_14limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e322m2e161m1_14limbs/fecarry.v b/src/Specific/solinas32_2e322m2e161m1_14limbs/fecarry.v
deleted file mode 100644
index 2c723f05a..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_14limbs.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_2e322m2e161m1_14limbs/fecarryDisplay.v b/src/Specific/solinas32_2e322m2e161m1_14limbs/fecarryDisplay.v
deleted file mode 100644
index 8f37d58a6..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_14limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e322m2e161m1_14limbs/femul.c b/src/Specific/solinas32_2e322m2e161m1_14limbs/femul.c
deleted file mode 100644
index 6111bb862..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/femul.c
+++ /dev/null
@@ -1,129 +0,0 @@
-static void femul(uint32_t out[14], const uint32_t in1[14], const uint32_t in2[14]) {
- { const uint32_t x28 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x54 = in2[13];
- { const uint32_t x55 = in2[12];
- { const uint32_t x53 = in2[11];
- { const uint32_t x51 = in2[10];
- { const uint32_t x49 = in2[9];
- { const uint32_t x47 = in2[8];
- { const uint32_t x45 = in2[7];
- { const uint32_t x43 = in2[6];
- { const uint32_t x41 = in2[5];
- { const uint32_t x39 = in2[4];
- { const uint32_t x37 = in2[3];
- { const uint32_t x35 = in2[2];
- { const uint32_t x33 = in2[1];
- { const uint32_t x31 = in2[0];
- { uint64_t x56 = (((uint64_t)(x17 + x28) * (x43 + x54)) - ((uint64_t)x17 * x43));
- { uint64_t x57 = ((((uint64_t)(x15 + x29) * (x43 + x54)) + ((uint64_t)(x17 + x28) * (x41 + x55))) - (((uint64_t)x15 * x43) + ((uint64_t)x17 * x41)));
- { uint64_t x58 = ((((uint64_t)(x13 + x27) * (x43 + x54)) + (((uint64_t)(x15 + x29) * (x41 + x55)) + ((uint64_t)(x17 + x28) * (x39 + x53)))) - (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + ((uint64_t)x17 * x39))));
- { uint64_t x59 = ((((uint64_t)(x11 + x25) * (x43 + x54)) + (((uint64_t)(x13 + x27) * (x41 + x55)) + (((uint64_t)(x15 + x29) * (x39 + x53)) + ((uint64_t)(x17 + x28) * (x37 + x51))))) - (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + ((uint64_t)x17 * x37)))));
- { uint64_t x60 = ((((uint64_t)(x9 + x23) * (x43 + x54)) + (((uint64_t)(x11 + x25) * (x41 + x55)) + (((uint64_t)(x13 + x27) * (x39 + x53)) + (((uint64_t)(x15 + x29) * (x37 + x51)) + ((uint64_t)(x17 + x28) * (x35 + x49)))))) - (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((uint64_t)x17 * x35))))));
- { uint64_t x61 = ((((uint64_t)(x7 + x21) * (x43 + x54)) + (((uint64_t)(x9 + x23) * (x41 + x55)) + (((uint64_t)(x11 + x25) * (x39 + x53)) + (((uint64_t)(x13 + x27) * (x37 + x51)) + (((uint64_t)(x15 + x29) * (x35 + x49)) + ((uint64_t)(x17 + x28) * (x33 + x47))))))) - (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + ((uint64_t)x17 * x33)))))));
- { uint64_t x62 = ((((uint64_t)(x5 + x19) * (x43 + x54)) + (((uint64_t)(x7 + x21) * (x41 + x55)) + (((uint64_t)(x9 + x23) * (x39 + x53)) + (((uint64_t)(x11 + x25) * (x37 + x51)) + (((uint64_t)(x13 + x27) * (x35 + x49)) + (((uint64_t)(x15 + x29) * (x33 + x47)) + ((uint64_t)(x17 + x28) * (x31 + x45)))))))) - (((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + ((uint64_t)x17 * x31))))))));
- { uint64_t x63 = ((((uint64_t)(x5 + x19) * (x41 + x55)) + (((uint64_t)(x7 + x21) * (x39 + x53)) + (((uint64_t)(x9 + x23) * (x37 + x51)) + (((uint64_t)(x11 + x25) * (x35 + x49)) + (((uint64_t)(x13 + x27) * (x33 + x47)) + ((uint64_t)(x15 + x29) * (x31 + x45))))))) - (((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + ((uint64_t)x15 * x31)))))));
- { uint64_t x64 = ((((uint64_t)(x5 + x19) * (x39 + x53)) + (((uint64_t)(x7 + x21) * (x37 + x51)) + (((uint64_t)(x9 + x23) * (x35 + x49)) + (((uint64_t)(x11 + x25) * (x33 + x47)) + ((uint64_t)(x13 + x27) * (x31 + x45)))))) - (((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + ((uint64_t)x13 * x31))))));
- { uint64_t x65 = ((((uint64_t)(x5 + x19) * (x37 + x51)) + (((uint64_t)(x7 + x21) * (x35 + x49)) + (((uint64_t)(x9 + x23) * (x33 + x47)) + ((uint64_t)(x11 + x25) * (x31 + x45))))) - (((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + ((uint64_t)x11 * x31)))));
- { uint64_t x66 = ((((uint64_t)(x5 + x19) * (x35 + x49)) + (((uint64_t)(x7 + x21) * (x33 + x47)) + ((uint64_t)(x9 + x23) * (x31 + x45)))) - (((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + ((uint64_t)x9 * x31))));
- { uint64_t x67 = ((((uint64_t)(x5 + x19) * (x33 + x47)) + ((uint64_t)(x7 + x21) * (x31 + x45))) - (((uint64_t)x5 * x33) + ((uint64_t)x7 * x31)));
- { uint64_t x68 = (((uint64_t)(x5 + x19) * (x31 + x45)) - ((uint64_t)x5 * x31));
- { uint64_t x69 = (((((uint64_t)x17 * x43) + ((uint64_t)x28 * x54)) + x63) + x56);
- { uint64_t x70 = ((((((uint64_t)x15 * x43) + ((uint64_t)x17 * x41)) + (((uint64_t)x29 * x54) + ((uint64_t)x28 * x55))) + x64) + x57);
- { uint64_t x71 = ((((((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + ((uint64_t)x17 * x39))) + (((uint64_t)x27 * x54) + (((uint64_t)x29 * x55) + ((uint64_t)x28 * x53)))) + x65) + x58);
- { uint64_t x72 = ((((((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + ((uint64_t)x17 * x37)))) + (((uint64_t)x25 * x54) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + ((uint64_t)x28 * x51))))) + x66) + x59);
- { uint64_t x73 = ((((((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((uint64_t)x17 * x35))))) + (((uint64_t)x23 * x54) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + ((uint64_t)x28 * x49)))))) + x67) + x60);
- { uint64_t x74 = ((((((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + ((uint64_t)x17 * x33)))))) + (((uint64_t)x21 * x54) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + (((uint64_t)x29 * x49) + ((uint64_t)x28 * x47))))))) + x68) + x61);
- { uint64_t x75 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + ((uint64_t)x17 * x31))))))) + (((uint64_t)x19 * x54) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (((uint64_t)x29 * x47) + ((uint64_t)x28 * x45))))))));
- { uint64_t x76 = (((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + ((uint64_t)x15 * x31)))))) + (((uint64_t)x19 * x55) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + (((uint64_t)x25 * x49) + (((uint64_t)x27 * x47) + ((uint64_t)x29 * x45))))))) + x56);
- { uint64_t x77 = (((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + ((uint64_t)x13 * x31))))) + (((uint64_t)x19 * x53) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + ((uint64_t)x27 * x45)))))) + x57);
- { uint64_t x78 = (((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + ((uint64_t)x11 * x31)))) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + ((uint64_t)x25 * x45))))) + x58);
- { uint64_t x79 = (((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + ((uint64_t)x9 * x31))) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + ((uint64_t)x23 * x45)))) + x59);
- { uint64_t x80 = (((((uint64_t)x5 * x33) + ((uint64_t)x7 * x31)) + (((uint64_t)x19 * x47) + ((uint64_t)x21 * x45))) + x60);
- { uint64_t x81 = ((((uint64_t)x5 * x31) + ((uint64_t)x19 * x45)) + x61);
- { uint32_t x82 = (uint32_t) (x75 >> 0x17);
- { uint32_t x83 = ((uint32_t)x75 & 0x7fffff);
- { uint32_t x84 = (uint32_t) (x62 >> 0x17);
- { uint32_t x85 = ((uint32_t)x62 & 0x7fffff);
- { uint64_t x86 = (((uint64_t)0x800000 * x84) + x85);
- { uint32_t x87 = (uint32_t) (x86 >> 0x17);
- { uint32_t x88 = ((uint32_t)x86 & 0x7fffff);
- { uint64_t x89 = ((x82 + x74) + x87);
- { uint32_t x90 = (uint32_t) (x89 >> 0x17);
- { uint32_t x91 = ((uint32_t)x89 & 0x7fffff);
- { uint64_t x92 = (x81 + x87);
- { uint32_t x93 = (uint32_t) (x92 >> 0x17);
- { uint32_t x94 = ((uint32_t)x92 & 0x7fffff);
- { uint64_t x95 = (x90 + x73);
- { uint32_t x96 = (uint32_t) (x95 >> 0x17);
- { uint32_t x97 = ((uint32_t)x95 & 0x7fffff);
- { uint64_t x98 = (x93 + x80);
- { uint32_t x99 = (uint32_t) (x98 >> 0x17);
- { uint32_t x100 = ((uint32_t)x98 & 0x7fffff);
- { uint64_t x101 = (x96 + x72);
- { uint32_t x102 = (uint32_t) (x101 >> 0x17);
- { uint32_t x103 = ((uint32_t)x101 & 0x7fffff);
- { uint64_t x104 = (x99 + x79);
- { uint32_t x105 = (uint32_t) (x104 >> 0x17);
- { uint32_t x106 = ((uint32_t)x104 & 0x7fffff);
- { uint64_t x107 = (x102 + x71);
- { uint32_t x108 = (uint32_t) (x107 >> 0x17);
- { uint32_t x109 = ((uint32_t)x107 & 0x7fffff);
- { uint64_t x110 = (x105 + x78);
- { uint32_t x111 = (uint32_t) (x110 >> 0x17);
- { uint32_t x112 = ((uint32_t)x110 & 0x7fffff);
- { uint64_t x113 = (x108 + x70);
- { uint32_t x114 = (uint32_t) (x113 >> 0x17);
- { uint32_t x115 = ((uint32_t)x113 & 0x7fffff);
- { uint64_t x116 = (x111 + x77);
- { uint32_t x117 = (uint32_t) (x116 >> 0x17);
- { uint32_t x118 = ((uint32_t)x116 & 0x7fffff);
- { uint64_t x119 = (x114 + x69);
- { uint32_t x120 = (uint32_t) (x119 >> 0x17);
- { uint32_t x121 = ((uint32_t)x119 & 0x7fffff);
- { uint64_t x122 = (x117 + x76);
- { uint32_t x123 = (uint32_t) (x122 >> 0x17);
- { uint32_t x124 = ((uint32_t)x122 & 0x7fffff);
- { uint32_t x125 = (x120 + x88);
- { uint32_t x126 = (x125 >> 0x17);
- { uint32_t x127 = (x125 & 0x7fffff);
- { uint32_t x128 = (x123 + x83);
- { uint32_t x129 = (x128 >> 0x17);
- { uint32_t x130 = (x128 & 0x7fffff);
- { uint32_t x131 = ((0x800000 * x126) + x127);
- { uint32_t x132 = (x131 >> 0x17);
- { uint32_t x133 = (x131 & 0x7fffff);
- { uint32_t x134 = ((x129 + x91) + x132);
- { uint32_t x135 = (x134 >> 0x17);
- { uint32_t x136 = (x134 & 0x7fffff);
- { uint32_t x137 = (x94 + x132);
- { uint32_t x138 = (x137 >> 0x17);
- { uint32_t x139 = (x137 & 0x7fffff);
- out[0] = x139;
- out[1] = (x138 + x100);
- out[2] = x106;
- out[3] = x112;
- out[4] = x118;
- out[5] = x124;
- out[6] = x130;
- out[7] = x136;
- out[8] = (x135 + x97);
- out[9] = x103;
- out[10] = x109;
- out[11] = x115;
- out[12] = x121;
- out[13] = x133;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e322m2e161m1_14limbs/femul.v b/src/Specific/solinas32_2e322m2e161m1_14limbs/femul.v
deleted file mode 100644
index 645fbf494..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_14limbs.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_2e322m2e161m1_14limbs/femulDisplay.log b/src/Specific/solinas32_2e322m2e161m1_14limbs/femulDisplay.log
deleted file mode 100644
index 55386e3bb..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/femulDisplay.log
+++ /dev/null
@@ -1,91 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x28, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x54, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31))%core,
- uint64_t x56 = (((uint64_t)(x17 + x28) * (x43 + x54)) - ((uint64_t)x17 * x43));
- uint64_t x57 = ((((uint64_t)(x15 + x29) * (x43 + x54)) + ((uint64_t)(x17 + x28) * (x41 + x55))) - (((uint64_t)x15 * x43) + ((uint64_t)x17 * x41)));
- uint64_t x58 = ((((uint64_t)(x13 + x27) * (x43 + x54)) + (((uint64_t)(x15 + x29) * (x41 + x55)) + ((uint64_t)(x17 + x28) * (x39 + x53)))) - (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + ((uint64_t)x17 * x39))));
- uint64_t x59 = ((((uint64_t)(x11 + x25) * (x43 + x54)) + (((uint64_t)(x13 + x27) * (x41 + x55)) + (((uint64_t)(x15 + x29) * (x39 + x53)) + ((uint64_t)(x17 + x28) * (x37 + x51))))) - (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + ((uint64_t)x17 * x37)))));
- uint64_t x60 = ((((uint64_t)(x9 + x23) * (x43 + x54)) + (((uint64_t)(x11 + x25) * (x41 + x55)) + (((uint64_t)(x13 + x27) * (x39 + x53)) + (((uint64_t)(x15 + x29) * (x37 + x51)) + ((uint64_t)(x17 + x28) * (x35 + x49)))))) - (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((uint64_t)x17 * x35))))));
- uint64_t x61 = ((((uint64_t)(x7 + x21) * (x43 + x54)) + (((uint64_t)(x9 + x23) * (x41 + x55)) + (((uint64_t)(x11 + x25) * (x39 + x53)) + (((uint64_t)(x13 + x27) * (x37 + x51)) + (((uint64_t)(x15 + x29) * (x35 + x49)) + ((uint64_t)(x17 + x28) * (x33 + x47))))))) - (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + ((uint64_t)x17 * x33)))))));
- uint64_t x62 = ((((uint64_t)(x5 + x19) * (x43 + x54)) + (((uint64_t)(x7 + x21) * (x41 + x55)) + (((uint64_t)(x9 + x23) * (x39 + x53)) + (((uint64_t)(x11 + x25) * (x37 + x51)) + (((uint64_t)(x13 + x27) * (x35 + x49)) + (((uint64_t)(x15 + x29) * (x33 + x47)) + ((uint64_t)(x17 + x28) * (x31 + x45)))))))) - (((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + ((uint64_t)x17 * x31))))))));
- uint64_t x63 = ((((uint64_t)(x5 + x19) * (x41 + x55)) + (((uint64_t)(x7 + x21) * (x39 + x53)) + (((uint64_t)(x9 + x23) * (x37 + x51)) + (((uint64_t)(x11 + x25) * (x35 + x49)) + (((uint64_t)(x13 + x27) * (x33 + x47)) + ((uint64_t)(x15 + x29) * (x31 + x45))))))) - (((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + ((uint64_t)x15 * x31)))))));
- uint64_t x64 = ((((uint64_t)(x5 + x19) * (x39 + x53)) + (((uint64_t)(x7 + x21) * (x37 + x51)) + (((uint64_t)(x9 + x23) * (x35 + x49)) + (((uint64_t)(x11 + x25) * (x33 + x47)) + ((uint64_t)(x13 + x27) * (x31 + x45)))))) - (((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + ((uint64_t)x13 * x31))))));
- uint64_t x65 = ((((uint64_t)(x5 + x19) * (x37 + x51)) + (((uint64_t)(x7 + x21) * (x35 + x49)) + (((uint64_t)(x9 + x23) * (x33 + x47)) + ((uint64_t)(x11 + x25) * (x31 + x45))))) - (((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + ((uint64_t)x11 * x31)))));
- uint64_t x66 = ((((uint64_t)(x5 + x19) * (x35 + x49)) + (((uint64_t)(x7 + x21) * (x33 + x47)) + ((uint64_t)(x9 + x23) * (x31 + x45)))) - (((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + ((uint64_t)x9 * x31))));
- uint64_t x67 = ((((uint64_t)(x5 + x19) * (x33 + x47)) + ((uint64_t)(x7 + x21) * (x31 + x45))) - (((uint64_t)x5 * x33) + ((uint64_t)x7 * x31)));
- uint64_t x68 = (((uint64_t)(x5 + x19) * (x31 + x45)) - ((uint64_t)x5 * x31));
- uint64_t x69 = (((((uint64_t)x17 * x43) + ((uint64_t)x28 * x54)) + x63) + x56);
- uint64_t x70 = ((((((uint64_t)x15 * x43) + ((uint64_t)x17 * x41)) + (((uint64_t)x29 * x54) + ((uint64_t)x28 * x55))) + x64) + x57);
- uint64_t x71 = ((((((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + ((uint64_t)x17 * x39))) + (((uint64_t)x27 * x54) + (((uint64_t)x29 * x55) + ((uint64_t)x28 * x53)))) + x65) + x58);
- uint64_t x72 = ((((((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + ((uint64_t)x17 * x37)))) + (((uint64_t)x25 * x54) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + ((uint64_t)x28 * x51))))) + x66) + x59);
- uint64_t x73 = ((((((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((uint64_t)x17 * x35))))) + (((uint64_t)x23 * x54) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + ((uint64_t)x28 * x49)))))) + x67) + x60);
- uint64_t x74 = ((((((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + ((uint64_t)x17 * x33)))))) + (((uint64_t)x21 * x54) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + (((uint64_t)x29 * x49) + ((uint64_t)x28 * x47))))))) + x68) + x61);
- uint64_t x75 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + ((uint64_t)x17 * x31))))))) + (((uint64_t)x19 * x54) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (((uint64_t)x29 * x47) + ((uint64_t)x28 * x45))))))));
- uint64_t x76 = (((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + ((uint64_t)x15 * x31)))))) + (((uint64_t)x19 * x55) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + (((uint64_t)x25 * x49) + (((uint64_t)x27 * x47) + ((uint64_t)x29 * x45))))))) + x56);
- uint64_t x77 = (((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + ((uint64_t)x13 * x31))))) + (((uint64_t)x19 * x53) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + ((uint64_t)x27 * x45)))))) + x57);
- uint64_t x78 = (((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + ((uint64_t)x11 * x31)))) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + ((uint64_t)x25 * x45))))) + x58);
- uint64_t x79 = (((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + ((uint64_t)x9 * x31))) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + ((uint64_t)x23 * x45)))) + x59);
- uint64_t x80 = (((((uint64_t)x5 * x33) + ((uint64_t)x7 * x31)) + (((uint64_t)x19 * x47) + ((uint64_t)x21 * x45))) + x60);
- uint64_t x81 = ((((uint64_t)x5 * x31) + ((uint64_t)x19 * x45)) + x61);
- uint32_t x82 = (uint32_t) (x75 >> 0x17);
- uint32_t x83 = ((uint32_t)x75 & 0x7fffff);
- uint32_t x84 = (uint32_t) (x62 >> 0x17);
- uint32_t x85 = ((uint32_t)x62 & 0x7fffff);
- uint64_t x86 = (((uint64_t)0x800000 * x84) + x85);
- uint32_t x87 = (uint32_t) (x86 >> 0x17);
- uint32_t x88 = ((uint32_t)x86 & 0x7fffff);
- uint64_t x89 = ((x82 + x74) + x87);
- uint32_t x90 = (uint32_t) (x89 >> 0x17);
- uint32_t x91 = ((uint32_t)x89 & 0x7fffff);
- uint64_t x92 = (x81 + x87);
- uint32_t x93 = (uint32_t) (x92 >> 0x17);
- uint32_t x94 = ((uint32_t)x92 & 0x7fffff);
- uint64_t x95 = (x90 + x73);
- uint32_t x96 = (uint32_t) (x95 >> 0x17);
- uint32_t x97 = ((uint32_t)x95 & 0x7fffff);
- uint64_t x98 = (x93 + x80);
- uint32_t x99 = (uint32_t) (x98 >> 0x17);
- uint32_t x100 = ((uint32_t)x98 & 0x7fffff);
- uint64_t x101 = (x96 + x72);
- uint32_t x102 = (uint32_t) (x101 >> 0x17);
- uint32_t x103 = ((uint32_t)x101 & 0x7fffff);
- uint64_t x104 = (x99 + x79);
- uint32_t x105 = (uint32_t) (x104 >> 0x17);
- uint32_t x106 = ((uint32_t)x104 & 0x7fffff);
- uint64_t x107 = (x102 + x71);
- uint32_t x108 = (uint32_t) (x107 >> 0x17);
- uint32_t x109 = ((uint32_t)x107 & 0x7fffff);
- uint64_t x110 = (x105 + x78);
- uint32_t x111 = (uint32_t) (x110 >> 0x17);
- uint32_t x112 = ((uint32_t)x110 & 0x7fffff);
- uint64_t x113 = (x108 + x70);
- uint32_t x114 = (uint32_t) (x113 >> 0x17);
- uint32_t x115 = ((uint32_t)x113 & 0x7fffff);
- uint64_t x116 = (x111 + x77);
- uint32_t x117 = (uint32_t) (x116 >> 0x17);
- uint32_t x118 = ((uint32_t)x116 & 0x7fffff);
- uint64_t x119 = (x114 + x69);
- uint32_t x120 = (uint32_t) (x119 >> 0x17);
- uint32_t x121 = ((uint32_t)x119 & 0x7fffff);
- uint64_t x122 = (x117 + x76);
- uint32_t x123 = (uint32_t) (x122 >> 0x17);
- uint32_t x124 = ((uint32_t)x122 & 0x7fffff);
- uint32_t x125 = (x120 + x88);
- uint32_t x126 = (x125 >> 0x17);
- uint32_t x127 = (x125 & 0x7fffff);
- uint32_t x128 = (x123 + x83);
- uint32_t x129 = (x128 >> 0x17);
- uint32_t x130 = (x128 & 0x7fffff);
- uint32_t x131 = ((0x800000 * x126) + x127);
- uint32_t x132 = (x131 >> 0x17);
- uint32_t x133 = (x131 & 0x7fffff);
- uint32_t x134 = ((x129 + x91) + x132);
- uint32_t x135 = (x134 >> 0x17);
- uint32_t x136 = (x134 & 0x7fffff);
- uint32_t x137 = (x94 + x132);
- uint32_t x138 = (x137 >> 0x17);
- uint32_t x139 = (x137 & 0x7fffff);
- return (Return x133, Return x121, Return x115, Return x109, Return x103, (x135 + x97), Return x136, Return x130, Return x124, Return x118, Return x112, Return x106, (x138 + x100), Return x139))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e322m2e161m1_14limbs/femulDisplay.v b/src/Specific/solinas32_2e322m2e161m1_14limbs/femulDisplay.v
deleted file mode 100644
index 5526cba07..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_14limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e322m2e161m1_14limbs/fesquare.c b/src/Specific/solinas32_2e322m2e161m1_14limbs/fesquare.c
deleted file mode 100644
index e1d4a6c5a..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/fesquare.c
+++ /dev/null
@@ -1,115 +0,0 @@
-static void fesquare(uint32_t out[14], const uint32_t in1[14]) {
- { const uint32_t x25 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x27 = (((uint64_t)(x14 + x25) * (x14 + x25)) - ((uint64_t)x14 * x14));
- { uint64_t x28 = ((((uint64_t)(x12 + x26) * (x14 + x25)) + ((uint64_t)(x14 + x25) * (x12 + x26))) - (((uint64_t)x12 * x14) + ((uint64_t)x14 * x12)));
- { uint64_t x29 = ((((uint64_t)(x10 + x24) * (x14 + x25)) + (((uint64_t)(x12 + x26) * (x12 + x26)) + ((uint64_t)(x14 + x25) * (x10 + x24)))) - (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + ((uint64_t)x14 * x10))));
- { uint64_t x30 = ((((uint64_t)(x8 + x22) * (x14 + x25)) + (((uint64_t)(x10 + x24) * (x12 + x26)) + (((uint64_t)(x12 + x26) * (x10 + x24)) + ((uint64_t)(x14 + x25) * (x8 + x22))))) - (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((uint64_t)x14 * x8)))));
- { uint64_t x31 = ((((uint64_t)(x6 + x20) * (x14 + x25)) + (((uint64_t)(x8 + x22) * (x12 + x26)) + (((uint64_t)(x10 + x24) * (x10 + x24)) + (((uint64_t)(x12 + x26) * (x8 + x22)) + ((uint64_t)(x14 + x25) * (x6 + x20)))))) - (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + ((uint64_t)x14 * x6))))));
- { uint64_t x32 = ((((uint64_t)(x4 + x18) * (x14 + x25)) + (((uint64_t)(x6 + x20) * (x12 + x26)) + (((uint64_t)(x8 + x22) * (x10 + x24)) + (((uint64_t)(x10 + x24) * (x8 + x22)) + (((uint64_t)(x12 + x26) * (x6 + x20)) + ((uint64_t)(x14 + x25) * (x4 + x18))))))) - (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + ((uint64_t)x14 * x4)))))));
- { uint64_t x33 = ((((uint64_t)(x2 + x16) * (x14 + x25)) + (((uint64_t)(x4 + x18) * (x12 + x26)) + (((uint64_t)(x6 + x20) * (x10 + x24)) + (((uint64_t)(x8 + x22) * (x8 + x22)) + (((uint64_t)(x10 + x24) * (x6 + x20)) + (((uint64_t)(x12 + x26) * (x4 + x18)) + ((uint64_t)(x14 + x25) * (x2 + x16)))))))) - (((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))));
- { uint64_t x34 = ((((uint64_t)(x2 + x16) * (x12 + x26)) + (((uint64_t)(x4 + x18) * (x10 + x24)) + (((uint64_t)(x6 + x20) * (x8 + x22)) + (((uint64_t)(x8 + x22) * (x6 + x20)) + (((uint64_t)(x10 + x24) * (x4 + x18)) + ((uint64_t)(x12 + x26) * (x2 + x16))))))) - (((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))));
- { uint64_t x35 = ((((uint64_t)(x2 + x16) * (x10 + x24)) + (((uint64_t)(x4 + x18) * (x8 + x22)) + (((uint64_t)(x6 + x20) * (x6 + x20)) + (((uint64_t)(x8 + x22) * (x4 + x18)) + ((uint64_t)(x10 + x24) * (x2 + x16)))))) - (((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))));
- { uint64_t x36 = ((((uint64_t)(x2 + x16) * (x8 + x22)) + (((uint64_t)(x4 + x18) * (x6 + x20)) + (((uint64_t)(x6 + x20) * (x4 + x18)) + ((uint64_t)(x8 + x22) * (x2 + x16))))) - (((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))));
- { uint64_t x37 = ((((uint64_t)(x2 + x16) * (x6 + x20)) + (((uint64_t)(x4 + x18) * (x4 + x18)) + ((uint64_t)(x6 + x20) * (x2 + x16)))) - (((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))));
- { uint64_t x38 = ((((uint64_t)(x2 + x16) * (x4 + x18)) + ((uint64_t)(x4 + x18) * (x2 + x16))) - (((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)));
- { uint64_t x39 = (((uint64_t)(x2 + x16) * (x2 + x16)) - ((uint64_t)x2 * x2));
- { uint64_t x40 = (((((uint64_t)x14 * x14) + ((uint64_t)x25 * x25)) + x34) + x27);
- { uint64_t x41 = ((((((uint64_t)x12 * x14) + ((uint64_t)x14 * x12)) + (((uint64_t)x26 * x25) + ((uint64_t)x25 * x26))) + x35) + x28);
- { uint64_t x42 = ((((((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + ((uint64_t)x14 * x10))) + (((uint64_t)x24 * x25) + (((uint64_t)x26 * x26) + ((uint64_t)x25 * x24)))) + x36) + x29);
- { uint64_t x43 = ((((((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((uint64_t)x14 * x8)))) + (((uint64_t)x22 * x25) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + ((uint64_t)x25 * x22))))) + x37) + x30);
- { uint64_t x44 = ((((((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + ((uint64_t)x14 * x6))))) + (((uint64_t)x20 * x25) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + ((uint64_t)x25 * x20)))))) + x38) + x31);
- { uint64_t x45 = ((((((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + ((uint64_t)x14 * x4)))))) + (((uint64_t)x18 * x25) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + ((uint64_t)x25 * x18))))))) + x39) + x32);
- { uint64_t x46 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (((uint64_t)x16 * x25) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + ((uint64_t)x25 * x16))))))));
- { uint64_t x47 = (((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((uint64_t)x26 * x16))))))) + x27);
- { uint64_t x48 = (((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + ((uint64_t)x24 * x16)))))) + x28);
- { uint64_t x49 = (((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((uint64_t)x22 * x16))))) + x29);
- { uint64_t x50 = (((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + ((uint64_t)x20 * x16)))) + x30);
- { uint64_t x51 = (((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x16 * x18) + ((uint64_t)x18 * x16))) + x31);
- { uint64_t x52 = ((((uint64_t)x2 * x2) + ((uint64_t)x16 * x16)) + x32);
- { uint32_t x53 = (uint32_t) (x46 >> 0x17);
- { uint32_t x54 = ((uint32_t)x46 & 0x7fffff);
- { uint32_t x55 = (uint32_t) (x33 >> 0x17);
- { uint32_t x56 = ((uint32_t)x33 & 0x7fffff);
- { uint64_t x57 = (((uint64_t)0x800000 * x55) + x56);
- { uint32_t x58 = (uint32_t) (x57 >> 0x17);
- { uint32_t x59 = ((uint32_t)x57 & 0x7fffff);
- { uint64_t x60 = ((x53 + x45) + x58);
- { uint32_t x61 = (uint32_t) (x60 >> 0x17);
- { uint32_t x62 = ((uint32_t)x60 & 0x7fffff);
- { uint64_t x63 = (x52 + x58);
- { uint32_t x64 = (uint32_t) (x63 >> 0x17);
- { uint32_t x65 = ((uint32_t)x63 & 0x7fffff);
- { uint64_t x66 = (x61 + x44);
- { uint32_t x67 = (uint32_t) (x66 >> 0x17);
- { uint32_t x68 = ((uint32_t)x66 & 0x7fffff);
- { uint64_t x69 = (x64 + x51);
- { uint32_t x70 = (uint32_t) (x69 >> 0x17);
- { uint32_t x71 = ((uint32_t)x69 & 0x7fffff);
- { uint64_t x72 = (x67 + x43);
- { uint32_t x73 = (uint32_t) (x72 >> 0x17);
- { uint32_t x74 = ((uint32_t)x72 & 0x7fffff);
- { uint64_t x75 = (x70 + x50);
- { uint32_t x76 = (uint32_t) (x75 >> 0x17);
- { uint32_t x77 = ((uint32_t)x75 & 0x7fffff);
- { uint64_t x78 = (x73 + x42);
- { uint32_t x79 = (uint32_t) (x78 >> 0x17);
- { uint32_t x80 = ((uint32_t)x78 & 0x7fffff);
- { uint64_t x81 = (x76 + x49);
- { uint32_t x82 = (uint32_t) (x81 >> 0x17);
- { uint32_t x83 = ((uint32_t)x81 & 0x7fffff);
- { uint64_t x84 = (x79 + x41);
- { uint32_t x85 = (uint32_t) (x84 >> 0x17);
- { uint32_t x86 = ((uint32_t)x84 & 0x7fffff);
- { uint64_t x87 = (x82 + x48);
- { uint32_t x88 = (uint32_t) (x87 >> 0x17);
- { uint32_t x89 = ((uint32_t)x87 & 0x7fffff);
- { uint64_t x90 = (x85 + x40);
- { uint32_t x91 = (uint32_t) (x90 >> 0x17);
- { uint32_t x92 = ((uint32_t)x90 & 0x7fffff);
- { uint64_t x93 = (x88 + x47);
- { uint32_t x94 = (uint32_t) (x93 >> 0x17);
- { uint32_t x95 = ((uint32_t)x93 & 0x7fffff);
- { uint32_t x96 = (x91 + x59);
- { uint32_t x97 = (x96 >> 0x17);
- { uint32_t x98 = (x96 & 0x7fffff);
- { uint32_t x99 = (x94 + x54);
- { uint32_t x100 = (x99 >> 0x17);
- { uint32_t x101 = (x99 & 0x7fffff);
- { uint32_t x102 = ((0x800000 * x97) + x98);
- { uint32_t x103 = (x102 >> 0x17);
- { uint32_t x104 = (x102 & 0x7fffff);
- { uint32_t x105 = ((x100 + x62) + x103);
- { uint32_t x106 = (x105 >> 0x17);
- { uint32_t x107 = (x105 & 0x7fffff);
- { uint32_t x108 = (x65 + x103);
- { uint32_t x109 = (x108 >> 0x17);
- { uint32_t x110 = (x108 & 0x7fffff);
- out[0] = x110;
- out[1] = (x109 + x71);
- out[2] = x77;
- out[3] = x83;
- out[4] = x89;
- out[5] = x95;
- out[6] = x101;
- out[7] = x107;
- out[8] = (x106 + x68);
- out[9] = x74;
- out[10] = x80;
- out[11] = x86;
- out[12] = x92;
- out[13] = x104;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e322m2e161m1_14limbs/fesquare.v b/src/Specific/solinas32_2e322m2e161m1_14limbs/fesquare.v
deleted file mode 100644
index 445a76998..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_14limbs.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_2e322m2e161m1_14limbs/fesquareDisplay.log b/src/Specific/solinas32_2e322m2e161m1_14limbs/fesquareDisplay.log
deleted file mode 100644
index 6b4e29e41..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,91 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x25, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x27 = (((uint64_t)(x14 + x25) * (x14 + x25)) - ((uint64_t)x14 * x14));
- uint64_t x28 = ((((uint64_t)(x12 + x26) * (x14 + x25)) + ((uint64_t)(x14 + x25) * (x12 + x26))) - (((uint64_t)x12 * x14) + ((uint64_t)x14 * x12)));
- uint64_t x29 = ((((uint64_t)(x10 + x24) * (x14 + x25)) + (((uint64_t)(x12 + x26) * (x12 + x26)) + ((uint64_t)(x14 + x25) * (x10 + x24)))) - (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + ((uint64_t)x14 * x10))));
- uint64_t x30 = ((((uint64_t)(x8 + x22) * (x14 + x25)) + (((uint64_t)(x10 + x24) * (x12 + x26)) + (((uint64_t)(x12 + x26) * (x10 + x24)) + ((uint64_t)(x14 + x25) * (x8 + x22))))) - (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((uint64_t)x14 * x8)))));
- uint64_t x31 = ((((uint64_t)(x6 + x20) * (x14 + x25)) + (((uint64_t)(x8 + x22) * (x12 + x26)) + (((uint64_t)(x10 + x24) * (x10 + x24)) + (((uint64_t)(x12 + x26) * (x8 + x22)) + ((uint64_t)(x14 + x25) * (x6 + x20)))))) - (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + ((uint64_t)x14 * x6))))));
- uint64_t x32 = ((((uint64_t)(x4 + x18) * (x14 + x25)) + (((uint64_t)(x6 + x20) * (x12 + x26)) + (((uint64_t)(x8 + x22) * (x10 + x24)) + (((uint64_t)(x10 + x24) * (x8 + x22)) + (((uint64_t)(x12 + x26) * (x6 + x20)) + ((uint64_t)(x14 + x25) * (x4 + x18))))))) - (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + ((uint64_t)x14 * x4)))))));
- uint64_t x33 = ((((uint64_t)(x2 + x16) * (x14 + x25)) + (((uint64_t)(x4 + x18) * (x12 + x26)) + (((uint64_t)(x6 + x20) * (x10 + x24)) + (((uint64_t)(x8 + x22) * (x8 + x22)) + (((uint64_t)(x10 + x24) * (x6 + x20)) + (((uint64_t)(x12 + x26) * (x4 + x18)) + ((uint64_t)(x14 + x25) * (x2 + x16)))))))) - (((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))));
- uint64_t x34 = ((((uint64_t)(x2 + x16) * (x12 + x26)) + (((uint64_t)(x4 + x18) * (x10 + x24)) + (((uint64_t)(x6 + x20) * (x8 + x22)) + (((uint64_t)(x8 + x22) * (x6 + x20)) + (((uint64_t)(x10 + x24) * (x4 + x18)) + ((uint64_t)(x12 + x26) * (x2 + x16))))))) - (((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))));
- uint64_t x35 = ((((uint64_t)(x2 + x16) * (x10 + x24)) + (((uint64_t)(x4 + x18) * (x8 + x22)) + (((uint64_t)(x6 + x20) * (x6 + x20)) + (((uint64_t)(x8 + x22) * (x4 + x18)) + ((uint64_t)(x10 + x24) * (x2 + x16)))))) - (((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))));
- uint64_t x36 = ((((uint64_t)(x2 + x16) * (x8 + x22)) + (((uint64_t)(x4 + x18) * (x6 + x20)) + (((uint64_t)(x6 + x20) * (x4 + x18)) + ((uint64_t)(x8 + x22) * (x2 + x16))))) - (((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))));
- uint64_t x37 = ((((uint64_t)(x2 + x16) * (x6 + x20)) + (((uint64_t)(x4 + x18) * (x4 + x18)) + ((uint64_t)(x6 + x20) * (x2 + x16)))) - (((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))));
- uint64_t x38 = ((((uint64_t)(x2 + x16) * (x4 + x18)) + ((uint64_t)(x4 + x18) * (x2 + x16))) - (((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)));
- uint64_t x39 = (((uint64_t)(x2 + x16) * (x2 + x16)) - ((uint64_t)x2 * x2));
- uint64_t x40 = (((((uint64_t)x14 * x14) + ((uint64_t)x25 * x25)) + x34) + x27);
- uint64_t x41 = ((((((uint64_t)x12 * x14) + ((uint64_t)x14 * x12)) + (((uint64_t)x26 * x25) + ((uint64_t)x25 * x26))) + x35) + x28);
- uint64_t x42 = ((((((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + ((uint64_t)x14 * x10))) + (((uint64_t)x24 * x25) + (((uint64_t)x26 * x26) + ((uint64_t)x25 * x24)))) + x36) + x29);
- uint64_t x43 = ((((((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((uint64_t)x14 * x8)))) + (((uint64_t)x22 * x25) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + ((uint64_t)x25 * x22))))) + x37) + x30);
- uint64_t x44 = ((((((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + ((uint64_t)x14 * x6))))) + (((uint64_t)x20 * x25) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + ((uint64_t)x25 * x20)))))) + x38) + x31);
- uint64_t x45 = ((((((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + ((uint64_t)x14 * x4)))))) + (((uint64_t)x18 * x25) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + ((uint64_t)x25 * x18))))))) + x39) + x32);
- uint64_t x46 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (((uint64_t)x16 * x25) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + ((uint64_t)x25 * x16))))))));
- uint64_t x47 = (((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((uint64_t)x26 * x16))))))) + x27);
- uint64_t x48 = (((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + ((uint64_t)x24 * x16)))))) + x28);
- uint64_t x49 = (((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((uint64_t)x22 * x16))))) + x29);
- uint64_t x50 = (((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + ((uint64_t)x20 * x16)))) + x30);
- uint64_t x51 = (((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x16 * x18) + ((uint64_t)x18 * x16))) + x31);
- uint64_t x52 = ((((uint64_t)x2 * x2) + ((uint64_t)x16 * x16)) + x32);
- uint32_t x53 = (uint32_t) (x46 >> 0x17);
- uint32_t x54 = ((uint32_t)x46 & 0x7fffff);
- uint32_t x55 = (uint32_t) (x33 >> 0x17);
- uint32_t x56 = ((uint32_t)x33 & 0x7fffff);
- uint64_t x57 = (((uint64_t)0x800000 * x55) + x56);
- uint32_t x58 = (uint32_t) (x57 >> 0x17);
- uint32_t x59 = ((uint32_t)x57 & 0x7fffff);
- uint64_t x60 = ((x53 + x45) + x58);
- uint32_t x61 = (uint32_t) (x60 >> 0x17);
- uint32_t x62 = ((uint32_t)x60 & 0x7fffff);
- uint64_t x63 = (x52 + x58);
- uint32_t x64 = (uint32_t) (x63 >> 0x17);
- uint32_t x65 = ((uint32_t)x63 & 0x7fffff);
- uint64_t x66 = (x61 + x44);
- uint32_t x67 = (uint32_t) (x66 >> 0x17);
- uint32_t x68 = ((uint32_t)x66 & 0x7fffff);
- uint64_t x69 = (x64 + x51);
- uint32_t x70 = (uint32_t) (x69 >> 0x17);
- uint32_t x71 = ((uint32_t)x69 & 0x7fffff);
- uint64_t x72 = (x67 + x43);
- uint32_t x73 = (uint32_t) (x72 >> 0x17);
- uint32_t x74 = ((uint32_t)x72 & 0x7fffff);
- uint64_t x75 = (x70 + x50);
- uint32_t x76 = (uint32_t) (x75 >> 0x17);
- uint32_t x77 = ((uint32_t)x75 & 0x7fffff);
- uint64_t x78 = (x73 + x42);
- uint32_t x79 = (uint32_t) (x78 >> 0x17);
- uint32_t x80 = ((uint32_t)x78 & 0x7fffff);
- uint64_t x81 = (x76 + x49);
- uint32_t x82 = (uint32_t) (x81 >> 0x17);
- uint32_t x83 = ((uint32_t)x81 & 0x7fffff);
- uint64_t x84 = (x79 + x41);
- uint32_t x85 = (uint32_t) (x84 >> 0x17);
- uint32_t x86 = ((uint32_t)x84 & 0x7fffff);
- uint64_t x87 = (x82 + x48);
- uint32_t x88 = (uint32_t) (x87 >> 0x17);
- uint32_t x89 = ((uint32_t)x87 & 0x7fffff);
- uint64_t x90 = (x85 + x40);
- uint32_t x91 = (uint32_t) (x90 >> 0x17);
- uint32_t x92 = ((uint32_t)x90 & 0x7fffff);
- uint64_t x93 = (x88 + x47);
- uint32_t x94 = (uint32_t) (x93 >> 0x17);
- uint32_t x95 = ((uint32_t)x93 & 0x7fffff);
- uint32_t x96 = (x91 + x59);
- uint32_t x97 = (x96 >> 0x17);
- uint32_t x98 = (x96 & 0x7fffff);
- uint32_t x99 = (x94 + x54);
- uint32_t x100 = (x99 >> 0x17);
- uint32_t x101 = (x99 & 0x7fffff);
- uint32_t x102 = ((0x800000 * x97) + x98);
- uint32_t x103 = (x102 >> 0x17);
- uint32_t x104 = (x102 & 0x7fffff);
- uint32_t x105 = ((x100 + x62) + x103);
- uint32_t x106 = (x105 >> 0x17);
- uint32_t x107 = (x105 & 0x7fffff);
- uint32_t x108 = (x65 + x103);
- uint32_t x109 = (x108 >> 0x17);
- uint32_t x110 = (x108 & 0x7fffff);
- return (Return x104, Return x92, Return x86, Return x80, Return x74, (x106 + x68), Return x107, Return x101, Return x95, Return x89, Return x83, Return x77, (x109 + x71), Return x110))
-x
- : word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e322m2e161m1_14limbs/fesquareDisplay.v b/src/Specific/solinas32_2e322m2e161m1_14limbs/fesquareDisplay.v
deleted file mode 100644
index 452075f5b..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_14limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e322m2e161m1_14limbs/fesub.c b/src/Specific/solinas32_2e322m2e161m1_14limbs/fesub.c
deleted file mode 100644
index 4f2a40c68..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/fesub.c
+++ /dev/null
@@ -1,45 +0,0 @@
-static void fesub(uint32_t out[14], const uint32_t in1[14], const uint32_t in2[14]) {
- { const uint32_t x28 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x54 = in2[13];
- { const uint32_t x55 = in2[12];
- { const uint32_t x53 = in2[11];
- { const uint32_t x51 = in2[10];
- { const uint32_t x49 = in2[9];
- { const uint32_t x47 = in2[8];
- { const uint32_t x45 = in2[7];
- { const uint32_t x43 = in2[6];
- { const uint32_t x41 = in2[5];
- { const uint32_t x39 = in2[4];
- { const uint32_t x37 = in2[3];
- { const uint32_t x35 = in2[2];
- { const uint32_t x33 = in2[1];
- { const uint32_t x31 = in2[0];
- out[0] = ((0xfffffe + x5) - x31);
- out[1] = ((0xfffffe + x7) - x33);
- out[2] = ((0xfffffe + x9) - x35);
- out[3] = ((0xfffffe + x11) - x37);
- out[4] = ((0xfffffe + x13) - x39);
- out[5] = ((0xfffffe + x15) - x41);
- out[6] = ((0xfffffe + x17) - x43);
- out[7] = ((0xfffffc + x19) - x45);
- out[8] = ((0xfffffe + x21) - x47);
- out[9] = ((0xfffffe + x23) - x49);
- out[10] = ((0xfffffe + x25) - x51);
- out[11] = ((0xfffffe + x27) - x53);
- out[12] = ((0xfffffe + x29) - x55);
- out[13] = ((0xfffffe + x28) - x54);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e322m2e161m1_14limbs/fesub.v b/src/Specific/solinas32_2e322m2e161m1_14limbs/fesub.v
deleted file mode 100644
index 6e10b5360..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_14limbs.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_2e322m2e161m1_14limbs/fesubDisplay.log b/src/Specific/solinas32_2e322m2e161m1_14limbs/fesubDisplay.log
deleted file mode 100644
index f2233a5a9..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x28, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x54, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31))%core,
- (((0xfffffe + x28) - x54), ((0xfffffe + x29) - x55), ((0xfffffe + x27) - x53), ((0xfffffe + x25) - x51), ((0xfffffe + x23) - x49), ((0xfffffe + x21) - x47), ((0xfffffc + x19) - x45), ((0xfffffe + x17) - x43), ((0xfffffe + x15) - x41), ((0xfffffe + x13) - x39), ((0xfffffe + x11) - x37), ((0xfffffe + x9) - x35), ((0xfffffe + x7) - x33), ((0xfffffe + x5) - x31)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e322m2e161m1_14limbs/fesubDisplay.v b/src/Specific/solinas32_2e322m2e161m1_14limbs/fesubDisplay.v
deleted file mode 100644
index 30d1d831c..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_14limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e322m2e161m1_14limbs/freeze.c b/src/Specific/solinas32_2e322m2e161m1_14limbs/freeze.c
deleted file mode 100644
index 3e2f2b671..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/freeze.c
+++ /dev/null
@@ -1,74 +0,0 @@
-static void freeze(uint32_t out[14], const uint32_t in1[14]) {
- { const uint32_t x25 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffff);
- { uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x4, 0x7fffff);
- { uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x6, 0x7fffff);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x8, 0x7fffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x10, 0x7fffff);
- { uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x12, 0x7fffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x14, 0x7fffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x16, 0x7ffffe);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x18, 0x7fffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x20, 0x7fffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x22, 0x7fffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x24, 0x7fffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x26, 0x7fffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x25, 0x7fffff);
- { uint32_t x69 = cmovznz32(x68, 0x0, 0xffffffff);
- { uint32_t x70 = (x69 & 0x7fffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x28, Return x70);
- { uint32_t x74 = (x69 & 0x7fffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x31, Return x74);
- { uint32_t x78 = (x69 & 0x7fffff);
- { uint32_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x34, Return x78);
- { uint32_t x82 = (x69 & 0x7fffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x37, Return x82);
- { uint32_t x86 = (x69 & 0x7fffff);
- { uint32_t x88, uint8_t x89 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x40, Return x86);
- { uint32_t x90 = (x69 & 0x7fffff);
- { uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x89, Return x43, Return x90);
- { uint32_t x94 = (x69 & 0x7fffff);
- { uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x46, Return x94);
- { uint32_t x98 = (x69 & 0x7ffffe);
- { uint32_t x100, uint8_t x101 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x49, Return x98);
- { uint32_t x102 = (x69 & 0x7fffff);
- { uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x52, Return x102);
- { uint32_t x106 = (x69 & 0x7fffff);
- { uint32_t x108, uint8_t x109 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x55, Return x106);
- { uint32_t x110 = (x69 & 0x7fffff);
- { uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x58, Return x110);
- { uint32_t x114 = (x69 & 0x7fffff);
- { uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x61, Return x114);
- { uint32_t x118 = (x69 & 0x7fffff);
- { uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x64, Return x118);
- { uint32_t x122 = (x69 & 0x7fffff);
- { uint32_t x124, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x67, Return x122);
- out[0] = x72;
- out[1] = x76;
- out[2] = x80;
- out[3] = x84;
- out[4] = x88;
- out[5] = x92;
- out[6] = x96;
- out[7] = x100;
- out[8] = x104;
- out[9] = x108;
- out[10] = x112;
- out[11] = x116;
- out[12] = x120;
- out[13] = x124;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e322m2e161m1_14limbs/freeze.v b/src/Specific/solinas32_2e322m2e161m1_14limbs/freeze.v
deleted file mode 100644
index 1e89dc14b..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_14limbs.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_2e322m2e161m1_14limbs/freezeDisplay.log b/src/Specific/solinas32_2e322m2e161m1_14limbs/freezeDisplay.log
deleted file mode 100644
index 5769da713..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/freezeDisplay.log
+++ /dev/null
@@ -1,50 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x25, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffff);
- uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x4, 0x7fffff);
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x6, 0x7fffff);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x8, 0x7fffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x10, 0x7fffff);
- uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x12, 0x7fffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x14, 0x7fffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x16, 0x7ffffe);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x18, 0x7fffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x20, 0x7fffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x22, 0x7fffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x24, 0x7fffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x26, 0x7fffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x25, 0x7fffff);
- uint32_t x69 = cmovznz32(x68, 0x0, 0xffffffff);
- uint32_t x70 = (x69 & 0x7fffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x28, Return x70);
- uint32_t x74 = (x69 & 0x7fffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x31, Return x74);
- uint32_t x78 = (x69 & 0x7fffff);
- uint32_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x34, Return x78);
- uint32_t x82 = (x69 & 0x7fffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x37, Return x82);
- uint32_t x86 = (x69 & 0x7fffff);
- uint32_t x88, uint8_t x89 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x40, Return x86);
- uint32_t x90 = (x69 & 0x7fffff);
- uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x89, Return x43, Return x90);
- uint32_t x94 = (x69 & 0x7fffff);
- uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x46, Return x94);
- uint32_t x98 = (x69 & 0x7ffffe);
- uint32_t x100, uint8_t x101 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x49, Return x98);
- uint32_t x102 = (x69 & 0x7fffff);
- uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x52, Return x102);
- uint32_t x106 = (x69 & 0x7fffff);
- uint32_t x108, uint8_t x109 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x55, Return x106);
- uint32_t x110 = (x69 & 0x7fffff);
- uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x58, Return x110);
- uint32_t x114 = (x69 & 0x7fffff);
- uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x61, Return x114);
- uint32_t x118 = (x69 & 0x7fffff);
- uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x64, Return x118);
- uint32_t x122 = (x69 & 0x7fffff);
- uint32_t x124, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x67, Return x122);
- (Return x124, Return x120, Return x116, Return x112, Return x108, Return x104, Return x100, Return x96, Return x92, Return x88, Return x84, Return x80, Return x76, Return x72))
-x
- : word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e322m2e161m1_14limbs/freezeDisplay.v b/src/Specific/solinas32_2e322m2e161m1_14limbs/freezeDisplay.v
deleted file mode 100644
index 7606e76c2..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e322m2e161m1_14limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e322m2e161m1_14limbs/py_interpreter.sh b/src/Specific/solinas32_2e322m2e161m1_14limbs/py_interpreter.sh
deleted file mode 100755
index 936986933..000000000
--- a/src/Specific/solinas32_2e322m2e161m1_14limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**322 - 2**161 - 1' -Dmodulus_bytes='23' -Da24='121665'
diff --git a/src/Specific/solinas32_2e336m17_13limbs/CurveParameters.v b/src/Specific/solinas32_2e336m17_13limbs/CurveParameters.v
deleted file mode 100644
index 267848b6c..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^336 - 17
-Base: 25 + 11/13
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 13%nat;
- base := 25 + 11/13;
- bitwidth := 32;
- s := 2^336;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 13); [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_2e336m17_13limbs/Synthesis.v b/src/Specific/solinas32_2e336m17_13limbs/Synthesis.v
deleted file mode 100644
index ec6a4e6f5..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e336m17_13limbs.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_2e336m17_13limbs/compiler.sh b/src/Specific/solinas32_2e336m17_13limbs/compiler.sh
deleted file mode 100755
index f97220efe..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/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,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,25,26,26,26,26,26,25}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<336) - 17' "$@"
diff --git a/src/Specific/solinas32_2e336m17_13limbs/compilerxx.sh b/src/Specific/solinas32_2e336m17_13limbs/compilerxx.sh
deleted file mode 100755
index 0f79002b4..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/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,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,25,26,26,26,26,26,25}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<336) - 17' "$@"
diff --git a/src/Specific/solinas32_2e336m17_13limbs/feadd.c b/src/Specific/solinas32_2e336m17_13limbs/feadd.c
deleted file mode 100644
index dbbe1da57..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/feadd.c
+++ /dev/null
@@ -1,42 +0,0 @@
-static void feadd(uint32_t out[13], const uint32_t in1[13], const uint32_t in2[13]) {
- { const uint32_t x26 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x50 = in2[12];
- { const uint32_t x51 = in2[11];
- { const uint32_t x49 = in2[10];
- { const uint32_t x47 = in2[9];
- { const uint32_t x45 = in2[8];
- { const uint32_t x43 = in2[7];
- { const uint32_t x41 = in2[6];
- { const uint32_t x39 = in2[5];
- { const uint32_t x37 = in2[4];
- { const uint32_t x35 = in2[3];
- { const uint32_t x33 = in2[2];
- { const uint32_t x31 = in2[1];
- { const uint32_t x29 = in2[0];
- out[0] = (x5 + x29);
- out[1] = (x7 + x31);
- out[2] = (x9 + x33);
- out[3] = (x11 + x35);
- out[4] = (x13 + x37);
- out[5] = (x15 + x39);
- out[6] = (x17 + x41);
- out[7] = (x19 + x43);
- out[8] = (x21 + x45);
- out[9] = (x23 + x47);
- out[10] = (x25 + x49);
- out[11] = (x27 + x51);
- out[12] = (x26 + x50);
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e336m17_13limbs/feadd.v b/src/Specific/solinas32_2e336m17_13limbs/feadd.v
deleted file mode 100644
index 87627e474..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e336m17_13limbs.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_2e336m17_13limbs/feaddDisplay.log b/src/Specific/solinas32_2e336m17_13limbs/feaddDisplay.log
deleted file mode 100644
index e64abeaba..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x26, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29))%core,
- ((x26 + x50), (x27 + x51), (x25 + x49), (x23 + x47), (x21 + x45), (x19 + x43), (x17 + x41), (x15 + x39), (x13 + x37), (x11 + x35), (x9 + x33), (x7 + x31), (x5 + x29)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e336m17_13limbs/feaddDisplay.v b/src/Specific/solinas32_2e336m17_13limbs/feaddDisplay.v
deleted file mode 100644
index 360718417..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e336m17_13limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e336m17_13limbs/fecarry.v b/src/Specific/solinas32_2e336m17_13limbs/fecarry.v
deleted file mode 100644
index b527b65ea..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e336m17_13limbs.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_2e336m17_13limbs/fecarryDisplay.v b/src/Specific/solinas32_2e336m17_13limbs/fecarryDisplay.v
deleted file mode 100644
index 6d296cc35..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e336m17_13limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e336m17_13limbs/femul.c b/src/Specific/solinas32_2e336m17_13limbs/femul.c
deleted file mode 100644
index 46f0f1298..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/femul.c
+++ /dev/null
@@ -1,99 +0,0 @@
-static void femul(uint32_t out[13], const uint32_t in1[13], const uint32_t in2[13]) {
- { const uint32_t x26 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x50 = in2[12];
- { const uint32_t x51 = in2[11];
- { const uint32_t x49 = in2[10];
- { const uint32_t x47 = in2[9];
- { const uint32_t x45 = in2[8];
- { const uint32_t x43 = in2[7];
- { const uint32_t x41 = in2[6];
- { const uint32_t x39 = in2[5];
- { const uint32_t x37 = in2[4];
- { const uint32_t x35 = in2[3];
- { const uint32_t x33 = in2[2];
- { const uint32_t x31 = in2[1];
- { const uint32_t x29 = in2[0];
- { uint64_t x52 = (((uint64_t)x5 * x50) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + (((uint64_t)x25 * x33) + (((uint64_t)x27 * x31) + ((uint64_t)x26 * x29)))))))))))));
- { uint64_t x53 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + (((uint64_t)x19 * x37) + (((uint64_t)x21 * x35) + (((uint64_t)x23 * x33) + (((uint64_t)x25 * x31) + ((uint64_t)x27 * x29)))))))))))) + (0x11 * (0x2 * ((uint64_t)x26 * x50))));
- { uint64_t x54 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + ((0x2 * ((uint64_t)x15 * x39)) + ((0x2 * ((uint64_t)x17 * x37)) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + (((uint64_t)x23 * x31) + ((uint64_t)x25 * x29))))))))))) + (0x11 * ((0x2 * ((uint64_t)x27 * x50)) + (0x2 * ((uint64_t)x26 * x51)))));
- { uint64_t x55 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((0x2 * ((uint64_t)x17 * x35)) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((uint64_t)x23 * x29)))))))))) + (0x11 * ((0x2 * ((uint64_t)x25 * x50)) + ((0x2 * ((uint64_t)x27 * x51)) + (0x2 * ((uint64_t)x26 * x49))))));
- { uint64_t x56 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + ((0x2 * ((uint64_t)x13 * x37)) + ((0x2 * ((uint64_t)x15 * x35)) + ((0x2 * ((uint64_t)x17 * x33)) + (((uint64_t)x19 * x31) + ((uint64_t)x21 * x29))))))))) + (0x11 * ((0x2 * ((uint64_t)x23 * x50)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + (0x2 * ((uint64_t)x26 * x47)))))));
- { uint64_t x57 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + ((0x2 * ((uint64_t)x15 * x33)) + ((0x2 * ((uint64_t)x17 * x31)) + ((uint64_t)x19 * x29)))))))) + (0x11 * ((0x2 * ((uint64_t)x21 * x50)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + (0x2 * ((uint64_t)x26 * x45))))))));
- { uint64_t x58 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + ((uint64_t)x17 * x29))))))) + (0x11 * (((uint64_t)x19 * x50) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + ((uint64_t)x26 * x43))))))));
- { uint64_t x59 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + ((uint64_t)x15 * x29)))))) + (0x11 * ((0x2 * ((uint64_t)x17 * x50)) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (0x2 * ((uint64_t)x26 * x41))))))))));
- { uint64_t x60 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + ((uint64_t)x13 * x29))))) + (0x11 * ((0x2 * ((uint64_t)x15 * x50)) + ((0x2 * ((uint64_t)x17 * x51)) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + ((0x2 * ((uint64_t)x27 * x41)) + (0x2 * ((uint64_t)x26 * x39)))))))))));
- { uint64_t x61 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + ((uint64_t)x11 * x29)))) + (0x11 * ((0x2 * ((uint64_t)x13 * x50)) + ((0x2 * ((uint64_t)x15 * x51)) + ((0x2 * ((uint64_t)x17 * x49)) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + ((0x2 * ((uint64_t)x25 * x41)) + ((0x2 * ((uint64_t)x27 * x39)) + (0x2 * ((uint64_t)x26 * x37))))))))))));
- { uint64_t x62 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + ((uint64_t)x9 * x29))) + (0x11 * ((0x2 * ((uint64_t)x11 * x50)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + ((0x2 * ((uint64_t)x27 * x37)) + (0x2 * ((uint64_t)x26 * x35)))))))))))));
- { uint64_t x63 = ((((uint64_t)x5 * x31) + ((uint64_t)x7 * x29)) + (0x11 * ((0x2 * ((uint64_t)x9 * x50)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + ((0x2 * ((uint64_t)x25 * x37)) + ((0x2 * ((uint64_t)x27 * x35)) + (0x2 * ((uint64_t)x26 * x33))))))))))))));
- { uint64_t x64 = (((uint64_t)x5 * x29) + (0x11 * ((0x2 * ((uint64_t)x7 * x50)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((0x2 * ((uint64_t)x25 * x35)) + ((0x2 * ((uint64_t)x27 * x33)) + (0x2 * ((uint64_t)x26 * x31)))))))))))))));
- { uint64_t x65 = (x64 >> 0x1a);
- { uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- { uint64_t x67 = (x65 + x63);
- { uint64_t x68 = (x67 >> 0x1a);
- { uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- { uint64_t x70 = (x68 + x62);
- { uint64_t x71 = (x70 >> 0x1a);
- { uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- { uint64_t x73 = (x71 + x61);
- { uint64_t x74 = (x73 >> 0x1a);
- { uint32_t x75 = ((uint32_t)x73 & 0x3ffffff);
- { uint64_t x76 = (x74 + x60);
- { uint64_t x77 = (x76 >> 0x1a);
- { uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- { uint64_t x79 = (x77 + x59);
- { uint64_t x80 = (x79 >> 0x1a);
- { uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- { uint64_t x82 = (x80 + x58);
- { uint64_t x83 = (x82 >> 0x19);
- { uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- { uint64_t x85 = (x83 + x57);
- { uint64_t x86 = (x85 >> 0x1a);
- { uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- { uint64_t x88 = (x86 + x56);
- { uint64_t x89 = (x88 >> 0x1a);
- { uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- { uint64_t x91 = (x89 + x55);
- { uint64_t x92 = (x91 >> 0x1a);
- { uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- { uint64_t x94 = (x92 + x54);
- { uint64_t x95 = (x94 >> 0x1a);
- { uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- { uint64_t x97 = (x95 + x53);
- { uint64_t x98 = (x97 >> 0x1a);
- { uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- { uint64_t x100 = (x98 + x52);
- { uint64_t x101 = (x100 >> 0x19);
- { uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- { uint64_t x103 = (x66 + (0x11 * x101));
- { uint32_t x104 = (uint32_t) (x103 >> 0x1a);
- { uint32_t x105 = ((uint32_t)x103 & 0x3ffffff);
- { uint32_t x106 = (x104 + x69);
- { uint32_t x107 = (x106 >> 0x1a);
- { uint32_t x108 = (x106 & 0x3ffffff);
- out[0] = x105;
- out[1] = x108;
- out[2] = (x107 + x72);
- out[3] = x75;
- out[4] = x78;
- out[5] = x81;
- out[6] = x84;
- out[7] = x87;
- out[8] = x90;
- out[9] = x93;
- out[10] = x96;
- out[11] = x99;
- out[12] = x102;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e336m17_13limbs/femul.v b/src/Specific/solinas32_2e336m17_13limbs/femul.v
deleted file mode 100644
index 7b93fabe0..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e336m17_13limbs.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_2e336m17_13limbs/femulDisplay.log b/src/Specific/solinas32_2e336m17_13limbs/femulDisplay.log
deleted file mode 100644
index 574782726..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/femulDisplay.log
+++ /dev/null
@@ -1,64 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x26, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29))%core,
- uint64_t x52 = (((uint64_t)x5 * x50) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + (((uint64_t)x25 * x33) + (((uint64_t)x27 * x31) + ((uint64_t)x26 * x29)))))))))))));
- uint64_t x53 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + (((uint64_t)x19 * x37) + (((uint64_t)x21 * x35) + (((uint64_t)x23 * x33) + (((uint64_t)x25 * x31) + ((uint64_t)x27 * x29)))))))))))) + (0x11 * (0x2 * ((uint64_t)x26 * x50))));
- uint64_t x54 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + ((0x2 * ((uint64_t)x15 * x39)) + ((0x2 * ((uint64_t)x17 * x37)) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + (((uint64_t)x23 * x31) + ((uint64_t)x25 * x29))))))))))) + (0x11 * ((0x2 * ((uint64_t)x27 * x50)) + (0x2 * ((uint64_t)x26 * x51)))));
- uint64_t x55 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((0x2 * ((uint64_t)x17 * x35)) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((uint64_t)x23 * x29)))))))))) + (0x11 * ((0x2 * ((uint64_t)x25 * x50)) + ((0x2 * ((uint64_t)x27 * x51)) + (0x2 * ((uint64_t)x26 * x49))))));
- uint64_t x56 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + ((0x2 * ((uint64_t)x13 * x37)) + ((0x2 * ((uint64_t)x15 * x35)) + ((0x2 * ((uint64_t)x17 * x33)) + (((uint64_t)x19 * x31) + ((uint64_t)x21 * x29))))))))) + (0x11 * ((0x2 * ((uint64_t)x23 * x50)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + (0x2 * ((uint64_t)x26 * x47)))))));
- uint64_t x57 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + ((0x2 * ((uint64_t)x15 * x33)) + ((0x2 * ((uint64_t)x17 * x31)) + ((uint64_t)x19 * x29)))))))) + (0x11 * ((0x2 * ((uint64_t)x21 * x50)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + (0x2 * ((uint64_t)x26 * x45))))))));
- uint64_t x58 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + ((uint64_t)x17 * x29))))))) + (0x11 * (((uint64_t)x19 * x50) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + ((uint64_t)x26 * x43))))))));
- uint64_t x59 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + ((uint64_t)x15 * x29)))))) + (0x11 * ((0x2 * ((uint64_t)x17 * x50)) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (0x2 * ((uint64_t)x26 * x41))))))))));
- uint64_t x60 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + ((uint64_t)x13 * x29))))) + (0x11 * ((0x2 * ((uint64_t)x15 * x50)) + ((0x2 * ((uint64_t)x17 * x51)) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + ((0x2 * ((uint64_t)x27 * x41)) + (0x2 * ((uint64_t)x26 * x39)))))))))));
- uint64_t x61 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + ((uint64_t)x11 * x29)))) + (0x11 * ((0x2 * ((uint64_t)x13 * x50)) + ((0x2 * ((uint64_t)x15 * x51)) + ((0x2 * ((uint64_t)x17 * x49)) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + ((0x2 * ((uint64_t)x25 * x41)) + ((0x2 * ((uint64_t)x27 * x39)) + (0x2 * ((uint64_t)x26 * x37))))))))))));
- uint64_t x62 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + ((uint64_t)x9 * x29))) + (0x11 * ((0x2 * ((uint64_t)x11 * x50)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + ((0x2 * ((uint64_t)x27 * x37)) + (0x2 * ((uint64_t)x26 * x35)))))))))))));
- uint64_t x63 = ((((uint64_t)x5 * x31) + ((uint64_t)x7 * x29)) + (0x11 * ((0x2 * ((uint64_t)x9 * x50)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + ((0x2 * ((uint64_t)x25 * x37)) + ((0x2 * ((uint64_t)x27 * x35)) + (0x2 * ((uint64_t)x26 * x33))))))))))))));
- uint64_t x64 = (((uint64_t)x5 * x29) + (0x11 * ((0x2 * ((uint64_t)x7 * x50)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((0x2 * ((uint64_t)x25 * x35)) + ((0x2 * ((uint64_t)x27 * x33)) + (0x2 * ((uint64_t)x26 * x31)))))))))))))));
- uint64_t x65 = (x64 >> 0x1a);
- uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- uint64_t x67 = (x65 + x63);
- uint64_t x68 = (x67 >> 0x1a);
- uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- uint64_t x70 = (x68 + x62);
- uint64_t x71 = (x70 >> 0x1a);
- uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- uint64_t x73 = (x71 + x61);
- uint64_t x74 = (x73 >> 0x1a);
- uint32_t x75 = ((uint32_t)x73 & 0x3ffffff);
- uint64_t x76 = (x74 + x60);
- uint64_t x77 = (x76 >> 0x1a);
- uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- uint64_t x79 = (x77 + x59);
- uint64_t x80 = (x79 >> 0x1a);
- uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- uint64_t x82 = (x80 + x58);
- uint64_t x83 = (x82 >> 0x19);
- uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- uint64_t x85 = (x83 + x57);
- uint64_t x86 = (x85 >> 0x1a);
- uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- uint64_t x88 = (x86 + x56);
- uint64_t x89 = (x88 >> 0x1a);
- uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- uint64_t x91 = (x89 + x55);
- uint64_t x92 = (x91 >> 0x1a);
- uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- uint64_t x94 = (x92 + x54);
- uint64_t x95 = (x94 >> 0x1a);
- uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- uint64_t x97 = (x95 + x53);
- uint64_t x98 = (x97 >> 0x1a);
- uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- uint64_t x100 = (x98 + x52);
- uint64_t x101 = (x100 >> 0x19);
- uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- uint64_t x103 = (x66 + (0x11 * x101));
- uint32_t x104 = (uint32_t) (x103 >> 0x1a);
- uint32_t x105 = ((uint32_t)x103 & 0x3ffffff);
- uint32_t x106 = (x104 + x69);
- uint32_t x107 = (x106 >> 0x1a);
- uint32_t x108 = (x106 & 0x3ffffff);
- return (Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, (x107 + x72), Return x108, Return x105))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e336m17_13limbs/femulDisplay.v b/src/Specific/solinas32_2e336m17_13limbs/femulDisplay.v
deleted file mode 100644
index e8b27afb6..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e336m17_13limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e336m17_13limbs/fesquare.c b/src/Specific/solinas32_2e336m17_13limbs/fesquare.c
deleted file mode 100644
index 170b92b82..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/fesquare.c
+++ /dev/null
@@ -1,86 +0,0 @@
-static void fesquare(uint32_t out[13], const uint32_t in1[13]) {
- { const uint32_t x23 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x25 = (((uint64_t)x2 * x23) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x23 * x2)))))))))))));
- { uint64_t x26 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x11 * (0x2 * ((uint64_t)x23 * x23))));
- { uint64_t x27 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x11 * ((0x2 * ((uint64_t)x24 * x23)) + (0x2 * ((uint64_t)x23 * x24)))));
- { uint64_t x28 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x11 * ((0x2 * ((uint64_t)x22 * x23)) + ((0x2 * ((uint64_t)x24 * x24)) + (0x2 * ((uint64_t)x23 * x22))))));
- { uint64_t x29 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x11 * ((0x2 * ((uint64_t)x20 * x23)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + (0x2 * ((uint64_t)x23 * x20)))))));
- { uint64_t x30 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x11 * ((0x2 * ((uint64_t)x18 * x23)) + ((0x2 * ((uint64_t)x20 * x24)) + ((0x2 * ((uint64_t)x22 * x22)) + ((0x2 * ((uint64_t)x24 * x20)) + (0x2 * ((uint64_t)x23 * x18))))))));
- { uint64_t x31 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x11 * (((uint64_t)x16 * x23) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((uint64_t)x23 * x16))))))));
- { uint64_t x32 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x11 * ((0x2 * ((uint64_t)x14 * x23)) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (0x2 * ((uint64_t)x23 * x14))))))))));
- { uint64_t x33 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint64_t)x12 * x23)) + ((0x2 * ((uint64_t)x14 * x24)) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + ((0x2 * ((uint64_t)x24 * x14)) + (0x2 * ((uint64_t)x23 * x12)))))))))));
- { uint64_t x34 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x11 * ((0x2 * ((uint64_t)x10 * x23)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + (0x2 * ((uint64_t)x23 * x10))))))))))));
- { uint64_t x35 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x11 * ((0x2 * ((uint64_t)x8 * x23)) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + (0x2 * ((uint64_t)x23 * x8)))))))))))));
- { uint64_t x36 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * ((0x2 * ((uint64_t)x6 * x23)) + ((0x2 * ((uint64_t)x8 * x24)) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + ((0x2 * ((uint64_t)x24 * x8)) + (0x2 * ((uint64_t)x23 * x6))))))))))))));
- { uint64_t x37 = (((uint64_t)x2 * x2) + (0x11 * ((0x2 * ((uint64_t)x4 * x23)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + (0x2 * ((uint64_t)x23 * x4)))))))))))))));
- { uint64_t x38 = (x37 >> 0x1a);
- { uint32_t x39 = ((uint32_t)x37 & 0x3ffffff);
- { uint64_t x40 = (x38 + x36);
- { uint64_t x41 = (x40 >> 0x1a);
- { uint32_t x42 = ((uint32_t)x40 & 0x3ffffff);
- { uint64_t x43 = (x41 + x35);
- { uint64_t x44 = (x43 >> 0x1a);
- { uint32_t x45 = ((uint32_t)x43 & 0x3ffffff);
- { uint64_t x46 = (x44 + x34);
- { uint64_t x47 = (x46 >> 0x1a);
- { uint32_t x48 = ((uint32_t)x46 & 0x3ffffff);
- { uint64_t x49 = (x47 + x33);
- { uint64_t x50 = (x49 >> 0x1a);
- { uint32_t x51 = ((uint32_t)x49 & 0x3ffffff);
- { uint64_t x52 = (x50 + x32);
- { uint64_t x53 = (x52 >> 0x1a);
- { uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- { uint64_t x55 = (x53 + x31);
- { uint64_t x56 = (x55 >> 0x19);
- { uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- { uint64_t x58 = (x56 + x30);
- { uint64_t x59 = (x58 >> 0x1a);
- { uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- { uint64_t x61 = (x59 + x29);
- { uint64_t x62 = (x61 >> 0x1a);
- { uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- { uint64_t x64 = (x62 + x28);
- { uint64_t x65 = (x64 >> 0x1a);
- { uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- { uint64_t x67 = (x65 + x27);
- { uint64_t x68 = (x67 >> 0x1a);
- { uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- { uint64_t x70 = (x68 + x26);
- { uint64_t x71 = (x70 >> 0x1a);
- { uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- { uint64_t x73 = (x71 + x25);
- { uint64_t x74 = (x73 >> 0x19);
- { uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- { uint64_t x76 = (x39 + (0x11 * x74));
- { uint32_t x77 = (uint32_t) (x76 >> 0x1a);
- { uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- { uint32_t x79 = (x77 + x42);
- { uint32_t x80 = (x79 >> 0x1a);
- { uint32_t x81 = (x79 & 0x3ffffff);
- out[0] = x78;
- out[1] = x81;
- out[2] = (x80 + x45);
- out[3] = x48;
- out[4] = x51;
- out[5] = x54;
- out[6] = x57;
- out[7] = x60;
- out[8] = x63;
- out[9] = x66;
- out[10] = x69;
- out[11] = x72;
- out[12] = x75;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e336m17_13limbs/fesquare.v b/src/Specific/solinas32_2e336m17_13limbs/fesquare.v
deleted file mode 100644
index f371426b4..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e336m17_13limbs.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_2e336m17_13limbs/fesquareDisplay.log b/src/Specific/solinas32_2e336m17_13limbs/fesquareDisplay.log
deleted file mode 100644
index 6e6bedf99..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,64 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x23, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x25 = (((uint64_t)x2 * x23) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x23 * x2)))))))))))));
- uint64_t x26 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x11 * (0x2 * ((uint64_t)x23 * x23))));
- uint64_t x27 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x11 * ((0x2 * ((uint64_t)x24 * x23)) + (0x2 * ((uint64_t)x23 * x24)))));
- uint64_t x28 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x11 * ((0x2 * ((uint64_t)x22 * x23)) + ((0x2 * ((uint64_t)x24 * x24)) + (0x2 * ((uint64_t)x23 * x22))))));
- uint64_t x29 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x11 * ((0x2 * ((uint64_t)x20 * x23)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + (0x2 * ((uint64_t)x23 * x20)))))));
- uint64_t x30 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x11 * ((0x2 * ((uint64_t)x18 * x23)) + ((0x2 * ((uint64_t)x20 * x24)) + ((0x2 * ((uint64_t)x22 * x22)) + ((0x2 * ((uint64_t)x24 * x20)) + (0x2 * ((uint64_t)x23 * x18))))))));
- uint64_t x31 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x11 * (((uint64_t)x16 * x23) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((uint64_t)x23 * x16))))))));
- uint64_t x32 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x11 * ((0x2 * ((uint64_t)x14 * x23)) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (0x2 * ((uint64_t)x23 * x14))))))))));
- uint64_t x33 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint64_t)x12 * x23)) + ((0x2 * ((uint64_t)x14 * x24)) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + ((0x2 * ((uint64_t)x24 * x14)) + (0x2 * ((uint64_t)x23 * x12)))))))))));
- uint64_t x34 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x11 * ((0x2 * ((uint64_t)x10 * x23)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + (0x2 * ((uint64_t)x23 * x10))))))))))));
- uint64_t x35 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x11 * ((0x2 * ((uint64_t)x8 * x23)) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + (0x2 * ((uint64_t)x23 * x8)))))))))))));
- uint64_t x36 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * ((0x2 * ((uint64_t)x6 * x23)) + ((0x2 * ((uint64_t)x8 * x24)) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + ((0x2 * ((uint64_t)x24 * x8)) + (0x2 * ((uint64_t)x23 * x6))))))))))))));
- uint64_t x37 = (((uint64_t)x2 * x2) + (0x11 * ((0x2 * ((uint64_t)x4 * x23)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + (0x2 * ((uint64_t)x23 * x4)))))))))))))));
- uint64_t x38 = (x37 >> 0x1a);
- uint32_t x39 = ((uint32_t)x37 & 0x3ffffff);
- uint64_t x40 = (x38 + x36);
- uint64_t x41 = (x40 >> 0x1a);
- uint32_t x42 = ((uint32_t)x40 & 0x3ffffff);
- uint64_t x43 = (x41 + x35);
- uint64_t x44 = (x43 >> 0x1a);
- uint32_t x45 = ((uint32_t)x43 & 0x3ffffff);
- uint64_t x46 = (x44 + x34);
- uint64_t x47 = (x46 >> 0x1a);
- uint32_t x48 = ((uint32_t)x46 & 0x3ffffff);
- uint64_t x49 = (x47 + x33);
- uint64_t x50 = (x49 >> 0x1a);
- uint32_t x51 = ((uint32_t)x49 & 0x3ffffff);
- uint64_t x52 = (x50 + x32);
- uint64_t x53 = (x52 >> 0x1a);
- uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- uint64_t x55 = (x53 + x31);
- uint64_t x56 = (x55 >> 0x19);
- uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- uint64_t x58 = (x56 + x30);
- uint64_t x59 = (x58 >> 0x1a);
- uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- uint64_t x61 = (x59 + x29);
- uint64_t x62 = (x61 >> 0x1a);
- uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- uint64_t x64 = (x62 + x28);
- uint64_t x65 = (x64 >> 0x1a);
- uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- uint64_t x67 = (x65 + x27);
- uint64_t x68 = (x67 >> 0x1a);
- uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- uint64_t x70 = (x68 + x26);
- uint64_t x71 = (x70 >> 0x1a);
- uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- uint64_t x73 = (x71 + x25);
- uint64_t x74 = (x73 >> 0x19);
- uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- uint64_t x76 = (x39 + (0x11 * x74));
- uint32_t x77 = (uint32_t) (x76 >> 0x1a);
- uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- uint32_t x79 = (x77 + x42);
- uint32_t x80 = (x79 >> 0x1a);
- uint32_t x81 = (x79 & 0x3ffffff);
- return (Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, Return x57, Return x54, Return x51, Return x48, (x80 + x45), Return x81, Return x78))
-x
- : word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e336m17_13limbs/fesquareDisplay.v b/src/Specific/solinas32_2e336m17_13limbs/fesquareDisplay.v
deleted file mode 100644
index 3a6eada0b..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e336m17_13limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e336m17_13limbs/fesub.c b/src/Specific/solinas32_2e336m17_13limbs/fesub.c
deleted file mode 100644
index 74bbeadc1..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/fesub.c
+++ /dev/null
@@ -1,42 +0,0 @@
-static void fesub(uint32_t out[13], const uint32_t in1[13], const uint32_t in2[13]) {
- { const uint32_t x26 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x50 = in2[12];
- { const uint32_t x51 = in2[11];
- { const uint32_t x49 = in2[10];
- { const uint32_t x47 = in2[9];
- { const uint32_t x45 = in2[8];
- { const uint32_t x43 = in2[7];
- { const uint32_t x41 = in2[6];
- { const uint32_t x39 = in2[5];
- { const uint32_t x37 = in2[4];
- { const uint32_t x35 = in2[3];
- { const uint32_t x33 = in2[2];
- { const uint32_t x31 = in2[1];
- { const uint32_t x29 = in2[0];
- out[0] = ((0x7ffffde + x5) - x29);
- out[1] = ((0x7fffffe + x7) - x31);
- out[2] = ((0x7fffffe + x9) - x33);
- out[3] = ((0x7fffffe + x11) - x35);
- out[4] = ((0x7fffffe + x13) - x37);
- out[5] = ((0x7fffffe + x15) - x39);
- out[6] = ((0x3fffffe + x17) - x41);
- out[7] = ((0x7fffffe + x19) - x43);
- out[8] = ((0x7fffffe + x21) - x45);
- out[9] = ((0x7fffffe + x23) - x47);
- out[10] = ((0x7fffffe + x25) - x49);
- out[11] = ((0x7fffffe + x27) - x51);
- out[12] = ((0x3fffffe + x26) - x50);
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e336m17_13limbs/fesub.v b/src/Specific/solinas32_2e336m17_13limbs/fesub.v
deleted file mode 100644
index 721620d20..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e336m17_13limbs.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_2e336m17_13limbs/fesubDisplay.log b/src/Specific/solinas32_2e336m17_13limbs/fesubDisplay.log
deleted file mode 100644
index ca98fa373..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x26, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29))%core,
- (((0x3fffffe + x26) - x50), ((0x7fffffe + x27) - x51), ((0x7fffffe + x25) - x49), ((0x7fffffe + x23) - x47), ((0x7fffffe + x21) - x45), ((0x7fffffe + x19) - x43), ((0x3fffffe + x17) - x41), ((0x7fffffe + x15) - x39), ((0x7fffffe + x13) - x37), ((0x7fffffe + x11) - x35), ((0x7fffffe + x9) - x33), ((0x7fffffe + x7) - x31), ((0x7ffffde + x5) - x29)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e336m17_13limbs/fesubDisplay.v b/src/Specific/solinas32_2e336m17_13limbs/fesubDisplay.v
deleted file mode 100644
index 014c00b64..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e336m17_13limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e336m17_13limbs/freeze.c b/src/Specific/solinas32_2e336m17_13limbs/freeze.c
deleted file mode 100644
index e5d1174b1..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/freeze.c
+++ /dev/null
@@ -1,69 +0,0 @@
-static void freeze(uint32_t out[13], const uint32_t in1[13]) {
- { const uint32_t x23 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffef);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x4, 0x3ffffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x6, 0x3ffffff);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x8, 0x3ffffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x10, 0x3ffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x12, 0x3ffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x14, 0x1ffffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x16, 0x3ffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x18, 0x3ffffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x20, 0x3ffffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x22, 0x3ffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x24, 0x3ffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x23, 0x1ffffff);
- { uint32_t x64 = cmovznz32(x63, 0x0, 0xffffffff);
- { uint32_t x65 = (x64 & 0x3ffffef);
- { uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x26, Return x65);
- { uint32_t x69 = (x64 & 0x3ffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x29, Return x69);
- { uint32_t x73 = (x64 & 0x3ffffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x32, Return x73);
- { uint32_t x77 = (x64 & 0x3ffffff);
- { uint32_t x79, uint8_t x80 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x35, Return x77);
- { uint32_t x81 = (x64 & 0x3ffffff);
- { uint32_t x83, uint8_t x84 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x38, Return x81);
- { uint32_t x85 = (x64 & 0x3ffffff);
- { uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x41, Return x85);
- { uint32_t x89 = (x64 & 0x1ffffff);
- { uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x44, Return x89);
- { uint32_t x93 = (x64 & 0x3ffffff);
- { uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x47, Return x93);
- { uint32_t x97 = (x64 & 0x3ffffff);
- { uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x50, Return x97);
- { uint32_t x101 = (x64 & 0x3ffffff);
- { uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x53, Return x101);
- { uint32_t x105 = (x64 & 0x3ffffff);
- { uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x56, Return x105);
- { uint32_t x109 = (x64 & 0x3ffffff);
- { uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x59, Return x109);
- { uint32_t x113 = (x64 & 0x1ffffff);
- { uint32_t x115, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x62, Return x113);
- out[0] = x67;
- out[1] = x71;
- out[2] = x75;
- out[3] = x79;
- out[4] = x83;
- out[5] = x87;
- out[6] = x91;
- out[7] = x95;
- out[8] = x99;
- out[9] = x103;
- out[10] = x107;
- out[11] = x111;
- out[12] = x115;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e336m17_13limbs/freeze.v b/src/Specific/solinas32_2e336m17_13limbs/freeze.v
deleted file mode 100644
index 5752c3578..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e336m17_13limbs.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_2e336m17_13limbs/freezeDisplay.log b/src/Specific/solinas32_2e336m17_13limbs/freezeDisplay.log
deleted file mode 100644
index 4f2e96d47..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/freezeDisplay.log
+++ /dev/null
@@ -1,47 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x23, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffef);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x4, 0x3ffffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x6, 0x3ffffff);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x8, 0x3ffffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x10, 0x3ffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x12, 0x3ffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x14, 0x1ffffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x16, 0x3ffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x18, 0x3ffffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x20, 0x3ffffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x22, 0x3ffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x24, 0x3ffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x23, 0x1ffffff);
- uint32_t x64 = cmovznz32(x63, 0x0, 0xffffffff);
- uint32_t x65 = (x64 & 0x3ffffef);
- uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x26, Return x65);
- uint32_t x69 = (x64 & 0x3ffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x29, Return x69);
- uint32_t x73 = (x64 & 0x3ffffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x32, Return x73);
- uint32_t x77 = (x64 & 0x3ffffff);
- uint32_t x79, uint8_t x80 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x35, Return x77);
- uint32_t x81 = (x64 & 0x3ffffff);
- uint32_t x83, uint8_t x84 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x38, Return x81);
- uint32_t x85 = (x64 & 0x3ffffff);
- uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x41, Return x85);
- uint32_t x89 = (x64 & 0x1ffffff);
- uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x44, Return x89);
- uint32_t x93 = (x64 & 0x3ffffff);
- uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x47, Return x93);
- uint32_t x97 = (x64 & 0x3ffffff);
- uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x50, Return x97);
- uint32_t x101 = (x64 & 0x3ffffff);
- uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x53, Return x101);
- uint32_t x105 = (x64 & 0x3ffffff);
- uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x56, Return x105);
- uint32_t x109 = (x64 & 0x3ffffff);
- uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x59, Return x109);
- uint32_t x113 = (x64 & 0x1ffffff);
- uint32_t x115, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x62, Return x113);
- (Return x115, Return x111, Return x107, Return x103, Return x99, Return x95, Return x91, Return x87, Return x83, Return x79, Return x75, Return x71, Return x67))
-x
- : word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e336m17_13limbs/freezeDisplay.v b/src/Specific/solinas32_2e336m17_13limbs/freezeDisplay.v
deleted file mode 100644
index e68560c75..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e336m17_13limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e336m17_13limbs/py_interpreter.sh b/src/Specific/solinas32_2e336m17_13limbs/py_interpreter.sh
deleted file mode 100755
index 07030b62b..000000000
--- a/src/Specific/solinas32_2e336m17_13limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**336 - 17' -Dmodulus_bytes='25 + 11/13' -Da24='121665'
diff --git a/src/Specific/solinas32_2e336m17_14limbs/CurveParameters.v b/src/Specific/solinas32_2e336m17_14limbs/CurveParameters.v
deleted file mode 100644
index 15113ce93..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^336 - 17
-Base: 24
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 14%nat;
- base := 24;
- bitwidth := 32;
- s := 2^336;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 14); [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_2e336m17_14limbs/Synthesis.v b/src/Specific/solinas32_2e336m17_14limbs/Synthesis.v
deleted file mode 100644
index 753a0f2a6..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e336m17_14limbs.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_2e336m17_14limbs/compiler.sh b/src/Specific/solinas32_2e336m17_14limbs/compiler.sh
deleted file mode 100755
index c2f3599d8..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/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,0x00,0x00,0x00,0x00,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='{24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='14' -Dq_mpz='(1_mpz<<336) - 17' "$@"
diff --git a/src/Specific/solinas32_2e336m17_14limbs/compilerxx.sh b/src/Specific/solinas32_2e336m17_14limbs/compilerxx.sh
deleted file mode 100755
index 408178be0..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/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,0x00,0x00,0x00,0x00,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='{24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='14' -Dq_mpz='(1_mpz<<336) - 17' "$@"
diff --git a/src/Specific/solinas32_2e336m17_14limbs/feadd.c b/src/Specific/solinas32_2e336m17_14limbs/feadd.c
deleted file mode 100644
index 6b2a8feaf..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/feadd.c
+++ /dev/null
@@ -1,45 +0,0 @@
-static void feadd(uint32_t out[14], const uint32_t in1[14], const uint32_t in2[14]) {
- { const uint32_t x28 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x54 = in2[13];
- { const uint32_t x55 = in2[12];
- { const uint32_t x53 = in2[11];
- { const uint32_t x51 = in2[10];
- { const uint32_t x49 = in2[9];
- { const uint32_t x47 = in2[8];
- { const uint32_t x45 = in2[7];
- { const uint32_t x43 = in2[6];
- { const uint32_t x41 = in2[5];
- { const uint32_t x39 = in2[4];
- { const uint32_t x37 = in2[3];
- { const uint32_t x35 = in2[2];
- { const uint32_t x33 = in2[1];
- { const uint32_t x31 = in2[0];
- out[0] = (x5 + x31);
- out[1] = (x7 + x33);
- out[2] = (x9 + x35);
- out[3] = (x11 + x37);
- out[4] = (x13 + x39);
- out[5] = (x15 + x41);
- out[6] = (x17 + x43);
- out[7] = (x19 + x45);
- out[8] = (x21 + x47);
- out[9] = (x23 + x49);
- out[10] = (x25 + x51);
- out[11] = (x27 + x53);
- out[12] = (x29 + x55);
- out[13] = (x28 + x54);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e336m17_14limbs/feadd.v b/src/Specific/solinas32_2e336m17_14limbs/feadd.v
deleted file mode 100644
index 884edcecf..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e336m17_14limbs.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_2e336m17_14limbs/feaddDisplay.log b/src/Specific/solinas32_2e336m17_14limbs/feaddDisplay.log
deleted file mode 100644
index ff11bcba0..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x28, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x54, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31))%core,
- ((x28 + x54), (x29 + x55), (x27 + x53), (x25 + x51), (x23 + x49), (x21 + x47), (x19 + x45), (x17 + x43), (x15 + x41), (x13 + x39), (x11 + x37), (x9 + x35), (x7 + x33), (x5 + x31)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e336m17_14limbs/feaddDisplay.v b/src/Specific/solinas32_2e336m17_14limbs/feaddDisplay.v
deleted file mode 100644
index 3b63bcdfc..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e336m17_14limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e336m17_14limbs/fecarry.v b/src/Specific/solinas32_2e336m17_14limbs/fecarry.v
deleted file mode 100644
index 1b13bde17..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e336m17_14limbs.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_2e336m17_14limbs/fecarryDisplay.v b/src/Specific/solinas32_2e336m17_14limbs/fecarryDisplay.v
deleted file mode 100644
index 3be4c0671..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e336m17_14limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e336m17_14limbs/femul.c b/src/Specific/solinas32_2e336m17_14limbs/femul.c
deleted file mode 100644
index eb775fe27..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/femul.c
+++ /dev/null
@@ -1,106 +0,0 @@
-static void femul(uint32_t out[14], const uint32_t in1[14], const uint32_t in2[14]) {
- { const uint32_t x28 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x54 = in2[13];
- { const uint32_t x55 = in2[12];
- { const uint32_t x53 = in2[11];
- { const uint32_t x51 = in2[10];
- { const uint32_t x49 = in2[9];
- { const uint32_t x47 = in2[8];
- { const uint32_t x45 = in2[7];
- { const uint32_t x43 = in2[6];
- { const uint32_t x41 = in2[5];
- { const uint32_t x39 = in2[4];
- { const uint32_t x37 = in2[3];
- { const uint32_t x35 = in2[2];
- { const uint32_t x33 = in2[1];
- { const uint32_t x31 = in2[0];
- { uint64_t x56 = (((uint64_t)x5 * x54) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + (((uint64_t)x25 * x37) + (((uint64_t)x27 * x35) + (((uint64_t)x29 * x33) + ((uint64_t)x28 * x31))))))))))))));
- { uint64_t x57 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + (((uint64_t)x25 * x35) + (((uint64_t)x27 * x33) + ((uint64_t)x29 * x31))))))))))))) + (0x11 * ((uint64_t)x28 * x54)));
- { uint64_t x58 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + (((uint64_t)x25 * x33) + ((uint64_t)x27 * x31)))))))))))) + (0x11 * (((uint64_t)x29 * x54) + ((uint64_t)x28 * x55))));
- { uint64_t x59 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + (((uint64_t)x21 * x35) + (((uint64_t)x23 * x33) + ((uint64_t)x25 * x31))))))))))) + (0x11 * (((uint64_t)x27 * x54) + (((uint64_t)x29 * x55) + ((uint64_t)x28 * x53)))));
- { uint64_t x60 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + ((uint64_t)x23 * x31)))))))))) + (0x11 * (((uint64_t)x25 * x54) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + ((uint64_t)x28 * x51))))));
- { uint64_t x61 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x21 * x31))))))))) + (0x11 * (((uint64_t)x23 * x54) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + ((uint64_t)x28 * x49)))))));
- { uint64_t x62 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + ((uint64_t)x19 * x31)))))))) + (0x11 * (((uint64_t)x21 * x54) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + (((uint64_t)x29 * x49) + ((uint64_t)x28 * x47))))))));
- { uint64_t x63 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + ((uint64_t)x17 * x31))))))) + (0x11 * (((uint64_t)x19 * x54) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (((uint64_t)x29 * x47) + ((uint64_t)x28 * x45)))))))));
- { uint64_t x64 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + ((uint64_t)x15 * x31)))))) + (0x11 * (((uint64_t)x17 * x54) + (((uint64_t)x19 * x55) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + (((uint64_t)x25 * x49) + (((uint64_t)x27 * x47) + (((uint64_t)x29 * x45) + ((uint64_t)x28 * x43))))))))));
- { uint64_t x65 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + ((uint64_t)x13 * x31))))) + (0x11 * (((uint64_t)x15 * x54) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + (((uint64_t)x29 * x43) + ((uint64_t)x28 * x41)))))))))));
- { uint64_t x66 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + ((uint64_t)x11 * x31)))) + (0x11 * (((uint64_t)x13 * x54) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (((uint64_t)x29 * x41) + ((uint64_t)x28 * x39))))))))))));
- { uint64_t x67 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + ((uint64_t)x9 * x31))) + (0x11 * (((uint64_t)x11 * x54) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + (((uint64_t)x27 * x41) + (((uint64_t)x29 * x39) + ((uint64_t)x28 * x37)))))))))))));
- { uint64_t x68 = ((((uint64_t)x5 * x33) + ((uint64_t)x7 * x31)) + (0x11 * (((uint64_t)x9 * x54) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + (((uint64_t)x29 * x37) + ((uint64_t)x28 * x35))))))))))))));
- { uint64_t x69 = (((uint64_t)x5 * x31) + (0x11 * (((uint64_t)x7 * x54) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + (((uint64_t)x27 * x37) + (((uint64_t)x29 * x35) + ((uint64_t)x28 * x33)))))))))))))));
- { uint64_t x70 = (x69 >> 0x18);
- { uint32_t x71 = ((uint32_t)x69 & 0xffffff);
- { uint64_t x72 = (x70 + x68);
- { uint64_t x73 = (x72 >> 0x18);
- { uint32_t x74 = ((uint32_t)x72 & 0xffffff);
- { uint64_t x75 = (x73 + x67);
- { uint64_t x76 = (x75 >> 0x18);
- { uint32_t x77 = ((uint32_t)x75 & 0xffffff);
- { uint64_t x78 = (x76 + x66);
- { uint64_t x79 = (x78 >> 0x18);
- { uint32_t x80 = ((uint32_t)x78 & 0xffffff);
- { uint64_t x81 = (x79 + x65);
- { uint64_t x82 = (x81 >> 0x18);
- { uint32_t x83 = ((uint32_t)x81 & 0xffffff);
- { uint64_t x84 = (x82 + x64);
- { uint64_t x85 = (x84 >> 0x18);
- { uint32_t x86 = ((uint32_t)x84 & 0xffffff);
- { uint64_t x87 = (x85 + x63);
- { uint64_t x88 = (x87 >> 0x18);
- { uint32_t x89 = ((uint32_t)x87 & 0xffffff);
- { uint64_t x90 = (x88 + x62);
- { uint64_t x91 = (x90 >> 0x18);
- { uint32_t x92 = ((uint32_t)x90 & 0xffffff);
- { uint64_t x93 = (x91 + x61);
- { uint64_t x94 = (x93 >> 0x18);
- { uint32_t x95 = ((uint32_t)x93 & 0xffffff);
- { uint64_t x96 = (x94 + x60);
- { uint64_t x97 = (x96 >> 0x18);
- { uint32_t x98 = ((uint32_t)x96 & 0xffffff);
- { uint64_t x99 = (x97 + x59);
- { uint64_t x100 = (x99 >> 0x18);
- { uint32_t x101 = ((uint32_t)x99 & 0xffffff);
- { uint64_t x102 = (x100 + x58);
- { uint64_t x103 = (x102 >> 0x18);
- { uint32_t x104 = ((uint32_t)x102 & 0xffffff);
- { uint64_t x105 = (x103 + x57);
- { uint64_t x106 = (x105 >> 0x18);
- { uint32_t x107 = ((uint32_t)x105 & 0xffffff);
- { uint64_t x108 = (x106 + x56);
- { uint32_t x109 = (uint32_t) (x108 >> 0x18);
- { uint32_t x110 = ((uint32_t)x108 & 0xffffff);
- { uint64_t x111 = (x71 + ((uint64_t)0x11 * x109));
- { uint32_t x112 = (uint32_t) (x111 >> 0x18);
- { uint32_t x113 = ((uint32_t)x111 & 0xffffff);
- { uint32_t x114 = (x112 + x74);
- { uint32_t x115 = (x114 >> 0x18);
- { uint32_t x116 = (x114 & 0xffffff);
- out[0] = x113;
- out[1] = x116;
- out[2] = (x115 + x77);
- out[3] = x80;
- out[4] = x83;
- out[5] = x86;
- out[6] = x89;
- out[7] = x92;
- out[8] = x95;
- out[9] = x98;
- out[10] = x101;
- out[11] = x104;
- out[12] = x107;
- out[13] = x110;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e336m17_14limbs/femul.v b/src/Specific/solinas32_2e336m17_14limbs/femul.v
deleted file mode 100644
index 3ecc61b71..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e336m17_14limbs.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_2e336m17_14limbs/femulDisplay.log b/src/Specific/solinas32_2e336m17_14limbs/femulDisplay.log
deleted file mode 100644
index d47b7bb6b..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/femulDisplay.log
+++ /dev/null
@@ -1,68 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x28, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x54, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31))%core,
- uint64_t x56 = (((uint64_t)x5 * x54) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + (((uint64_t)x25 * x37) + (((uint64_t)x27 * x35) + (((uint64_t)x29 * x33) + ((uint64_t)x28 * x31))))))))))))));
- uint64_t x57 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + (((uint64_t)x25 * x35) + (((uint64_t)x27 * x33) + ((uint64_t)x29 * x31))))))))))))) + (0x11 * ((uint64_t)x28 * x54)));
- uint64_t x58 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + (((uint64_t)x25 * x33) + ((uint64_t)x27 * x31)))))))))))) + (0x11 * (((uint64_t)x29 * x54) + ((uint64_t)x28 * x55))));
- uint64_t x59 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + (((uint64_t)x21 * x35) + (((uint64_t)x23 * x33) + ((uint64_t)x25 * x31))))))))))) + (0x11 * (((uint64_t)x27 * x54) + (((uint64_t)x29 * x55) + ((uint64_t)x28 * x53)))));
- uint64_t x60 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + ((uint64_t)x23 * x31)))))))))) + (0x11 * (((uint64_t)x25 * x54) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + ((uint64_t)x28 * x51))))));
- uint64_t x61 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x21 * x31))))))))) + (0x11 * (((uint64_t)x23 * x54) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + ((uint64_t)x28 * x49)))))));
- uint64_t x62 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + ((uint64_t)x19 * x31)))))))) + (0x11 * (((uint64_t)x21 * x54) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + (((uint64_t)x29 * x49) + ((uint64_t)x28 * x47))))))));
- uint64_t x63 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + ((uint64_t)x17 * x31))))))) + (0x11 * (((uint64_t)x19 * x54) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (((uint64_t)x29 * x47) + ((uint64_t)x28 * x45)))))))));
- uint64_t x64 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + ((uint64_t)x15 * x31)))))) + (0x11 * (((uint64_t)x17 * x54) + (((uint64_t)x19 * x55) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + (((uint64_t)x25 * x49) + (((uint64_t)x27 * x47) + (((uint64_t)x29 * x45) + ((uint64_t)x28 * x43))))))))));
- uint64_t x65 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + ((uint64_t)x13 * x31))))) + (0x11 * (((uint64_t)x15 * x54) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + (((uint64_t)x29 * x43) + ((uint64_t)x28 * x41)))))))))));
- uint64_t x66 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + ((uint64_t)x11 * x31)))) + (0x11 * (((uint64_t)x13 * x54) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (((uint64_t)x29 * x41) + ((uint64_t)x28 * x39))))))))))));
- uint64_t x67 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + ((uint64_t)x9 * x31))) + (0x11 * (((uint64_t)x11 * x54) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + (((uint64_t)x27 * x41) + (((uint64_t)x29 * x39) + ((uint64_t)x28 * x37)))))))))))));
- uint64_t x68 = ((((uint64_t)x5 * x33) + ((uint64_t)x7 * x31)) + (0x11 * (((uint64_t)x9 * x54) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + (((uint64_t)x29 * x37) + ((uint64_t)x28 * x35))))))))))))));
- uint64_t x69 = (((uint64_t)x5 * x31) + (0x11 * (((uint64_t)x7 * x54) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + (((uint64_t)x27 * x37) + (((uint64_t)x29 * x35) + ((uint64_t)x28 * x33)))))))))))))));
- uint64_t x70 = (x69 >> 0x18);
- uint32_t x71 = ((uint32_t)x69 & 0xffffff);
- uint64_t x72 = (x70 + x68);
- uint64_t x73 = (x72 >> 0x18);
- uint32_t x74 = ((uint32_t)x72 & 0xffffff);
- uint64_t x75 = (x73 + x67);
- uint64_t x76 = (x75 >> 0x18);
- uint32_t x77 = ((uint32_t)x75 & 0xffffff);
- uint64_t x78 = (x76 + x66);
- uint64_t x79 = (x78 >> 0x18);
- uint32_t x80 = ((uint32_t)x78 & 0xffffff);
- uint64_t x81 = (x79 + x65);
- uint64_t x82 = (x81 >> 0x18);
- uint32_t x83 = ((uint32_t)x81 & 0xffffff);
- uint64_t x84 = (x82 + x64);
- uint64_t x85 = (x84 >> 0x18);
- uint32_t x86 = ((uint32_t)x84 & 0xffffff);
- uint64_t x87 = (x85 + x63);
- uint64_t x88 = (x87 >> 0x18);
- uint32_t x89 = ((uint32_t)x87 & 0xffffff);
- uint64_t x90 = (x88 + x62);
- uint64_t x91 = (x90 >> 0x18);
- uint32_t x92 = ((uint32_t)x90 & 0xffffff);
- uint64_t x93 = (x91 + x61);
- uint64_t x94 = (x93 >> 0x18);
- uint32_t x95 = ((uint32_t)x93 & 0xffffff);
- uint64_t x96 = (x94 + x60);
- uint64_t x97 = (x96 >> 0x18);
- uint32_t x98 = ((uint32_t)x96 & 0xffffff);
- uint64_t x99 = (x97 + x59);
- uint64_t x100 = (x99 >> 0x18);
- uint32_t x101 = ((uint32_t)x99 & 0xffffff);
- uint64_t x102 = (x100 + x58);
- uint64_t x103 = (x102 >> 0x18);
- uint32_t x104 = ((uint32_t)x102 & 0xffffff);
- uint64_t x105 = (x103 + x57);
- uint64_t x106 = (x105 >> 0x18);
- uint32_t x107 = ((uint32_t)x105 & 0xffffff);
- uint64_t x108 = (x106 + x56);
- uint32_t x109 = (uint32_t) (x108 >> 0x18);
- uint32_t x110 = ((uint32_t)x108 & 0xffffff);
- uint64_t x111 = (x71 + ((uint64_t)0x11 * x109));
- uint32_t x112 = (uint32_t) (x111 >> 0x18);
- uint32_t x113 = ((uint32_t)x111 & 0xffffff);
- uint32_t x114 = (x112 + x74);
- uint32_t x115 = (x114 >> 0x18);
- uint32_t x116 = (x114 & 0xffffff);
- return (Return x110, Return x107, Return x104, Return x101, Return x98, Return x95, Return x92, Return x89, Return x86, Return x83, Return x80, (x115 + x77), Return x116, Return x113))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e336m17_14limbs/femulDisplay.v b/src/Specific/solinas32_2e336m17_14limbs/femulDisplay.v
deleted file mode 100644
index 8222fa51f..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e336m17_14limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e336m17_14limbs/fesquare.c b/src/Specific/solinas32_2e336m17_14limbs/fesquare.c
deleted file mode 100644
index 5b42995f1..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/fesquare.c
+++ /dev/null
@@ -1,92 +0,0 @@
-static void fesquare(uint32_t out[14], const uint32_t in1[14]) {
- { const uint32_t x25 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x27 = (((uint64_t)x2 * x25) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x25 * x2))))))))))))));
- { uint64_t x28 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x11 * ((uint64_t)x25 * x25)));
- { uint64_t x29 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x11 * (((uint64_t)x26 * x25) + ((uint64_t)x25 * x26))));
- { uint64_t x30 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x11 * (((uint64_t)x24 * x25) + (((uint64_t)x26 * x26) + ((uint64_t)x25 * x24)))));
- { uint64_t x31 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x11 * (((uint64_t)x22 * x25) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + ((uint64_t)x25 * x22))))));
- { uint64_t x32 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x11 * (((uint64_t)x20 * x25) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + ((uint64_t)x25 * x20)))))));
- { uint64_t x33 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x11 * (((uint64_t)x18 * x25) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + ((uint64_t)x25 * x18))))))));
- { uint64_t x34 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x11 * (((uint64_t)x16 * x25) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + ((uint64_t)x25 * x16)))))))));
- { uint64_t x35 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x11 * (((uint64_t)x14 * x25) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + ((uint64_t)x25 * x14))))))))));
- { uint64_t x36 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x11 * (((uint64_t)x12 * x25) + (((uint64_t)x14 * x26) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (((uint64_t)x26 * x14) + ((uint64_t)x25 * x12)))))))))));
- { uint64_t x37 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x11 * (((uint64_t)x10 * x25) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + ((uint64_t)x25 * x10))))))))))));
- { uint64_t x38 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x11 * (((uint64_t)x8 * x25) + (((uint64_t)x10 * x26) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + (((uint64_t)x26 * x10) + ((uint64_t)x25 * x8)))))))))))));
- { uint64_t x39 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * (((uint64_t)x6 * x25) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + ((uint64_t)x25 * x6))))))))))))));
- { uint64_t x40 = (((uint64_t)x2 * x2) + (0x11 * (((uint64_t)x4 * x25) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + ((uint64_t)x25 * x4)))))))))))))));
- { uint64_t x41 = (x40 >> 0x18);
- { uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- { uint64_t x43 = (x41 + x39);
- { uint64_t x44 = (x43 >> 0x18);
- { uint32_t x45 = ((uint32_t)x43 & 0xffffff);
- { uint64_t x46 = (x44 + x38);
- { uint64_t x47 = (x46 >> 0x18);
- { uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- { uint64_t x49 = (x47 + x37);
- { uint64_t x50 = (x49 >> 0x18);
- { uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- { uint64_t x52 = (x50 + x36);
- { uint64_t x53 = (x52 >> 0x18);
- { uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- { uint64_t x55 = (x53 + x35);
- { uint64_t x56 = (x55 >> 0x18);
- { uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- { uint64_t x58 = (x56 + x34);
- { uint64_t x59 = (x58 >> 0x18);
- { uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- { uint64_t x61 = (x59 + x33);
- { uint64_t x62 = (x61 >> 0x18);
- { uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- { uint64_t x64 = (x62 + x32);
- { uint64_t x65 = (x64 >> 0x18);
- { uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- { uint64_t x67 = (x65 + x31);
- { uint64_t x68 = (x67 >> 0x18);
- { uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- { uint64_t x70 = (x68 + x30);
- { uint64_t x71 = (x70 >> 0x18);
- { uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- { uint64_t x73 = (x71 + x29);
- { uint64_t x74 = (x73 >> 0x18);
- { uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- { uint64_t x76 = (x74 + x28);
- { uint64_t x77 = (x76 >> 0x18);
- { uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- { uint64_t x79 = (x77 + x27);
- { uint32_t x80 = (uint32_t) (x79 >> 0x18);
- { uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- { uint64_t x82 = (x42 + ((uint64_t)0x11 * x80));
- { uint32_t x83 = (uint32_t) (x82 >> 0x18);
- { uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- { uint32_t x85 = (x83 + x45);
- { uint32_t x86 = (x85 >> 0x18);
- { uint32_t x87 = (x85 & 0xffffff);
- out[0] = x84;
- out[1] = x87;
- out[2] = (x86 + x48);
- out[3] = x51;
- out[4] = x54;
- out[5] = x57;
- out[6] = x60;
- out[7] = x63;
- out[8] = x66;
- out[9] = x69;
- out[10] = x72;
- out[11] = x75;
- out[12] = x78;
- out[13] = x81;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e336m17_14limbs/fesquare.v b/src/Specific/solinas32_2e336m17_14limbs/fesquare.v
deleted file mode 100644
index 9dbeb805b..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e336m17_14limbs.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_2e336m17_14limbs/fesquareDisplay.log b/src/Specific/solinas32_2e336m17_14limbs/fesquareDisplay.log
deleted file mode 100644
index 392aa9c3a..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,68 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x25, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x27 = (((uint64_t)x2 * x25) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x25 * x2))))))))))))));
- uint64_t x28 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x11 * ((uint64_t)x25 * x25)));
- uint64_t x29 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x11 * (((uint64_t)x26 * x25) + ((uint64_t)x25 * x26))));
- uint64_t x30 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x11 * (((uint64_t)x24 * x25) + (((uint64_t)x26 * x26) + ((uint64_t)x25 * x24)))));
- uint64_t x31 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x11 * (((uint64_t)x22 * x25) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + ((uint64_t)x25 * x22))))));
- uint64_t x32 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x11 * (((uint64_t)x20 * x25) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + ((uint64_t)x25 * x20)))))));
- uint64_t x33 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x11 * (((uint64_t)x18 * x25) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + ((uint64_t)x25 * x18))))))));
- uint64_t x34 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x11 * (((uint64_t)x16 * x25) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + ((uint64_t)x25 * x16)))))))));
- uint64_t x35 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x11 * (((uint64_t)x14 * x25) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + ((uint64_t)x25 * x14))))))))));
- uint64_t x36 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x11 * (((uint64_t)x12 * x25) + (((uint64_t)x14 * x26) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (((uint64_t)x26 * x14) + ((uint64_t)x25 * x12)))))))))));
- uint64_t x37 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x11 * (((uint64_t)x10 * x25) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + ((uint64_t)x25 * x10))))))))))));
- uint64_t x38 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x11 * (((uint64_t)x8 * x25) + (((uint64_t)x10 * x26) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + (((uint64_t)x26 * x10) + ((uint64_t)x25 * x8)))))))))))));
- uint64_t x39 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * (((uint64_t)x6 * x25) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + ((uint64_t)x25 * x6))))))))))))));
- uint64_t x40 = (((uint64_t)x2 * x2) + (0x11 * (((uint64_t)x4 * x25) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + ((uint64_t)x25 * x4)))))))))))))));
- uint64_t x41 = (x40 >> 0x18);
- uint32_t x42 = ((uint32_t)x40 & 0xffffff);
- uint64_t x43 = (x41 + x39);
- uint64_t x44 = (x43 >> 0x18);
- uint32_t x45 = ((uint32_t)x43 & 0xffffff);
- uint64_t x46 = (x44 + x38);
- uint64_t x47 = (x46 >> 0x18);
- uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- uint64_t x49 = (x47 + x37);
- uint64_t x50 = (x49 >> 0x18);
- uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- uint64_t x52 = (x50 + x36);
- uint64_t x53 = (x52 >> 0x18);
- uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- uint64_t x55 = (x53 + x35);
- uint64_t x56 = (x55 >> 0x18);
- uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- uint64_t x58 = (x56 + x34);
- uint64_t x59 = (x58 >> 0x18);
- uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- uint64_t x61 = (x59 + x33);
- uint64_t x62 = (x61 >> 0x18);
- uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- uint64_t x64 = (x62 + x32);
- uint64_t x65 = (x64 >> 0x18);
- uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- uint64_t x67 = (x65 + x31);
- uint64_t x68 = (x67 >> 0x18);
- uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- uint64_t x70 = (x68 + x30);
- uint64_t x71 = (x70 >> 0x18);
- uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- uint64_t x73 = (x71 + x29);
- uint64_t x74 = (x73 >> 0x18);
- uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- uint64_t x76 = (x74 + x28);
- uint64_t x77 = (x76 >> 0x18);
- uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- uint64_t x79 = (x77 + x27);
- uint32_t x80 = (uint32_t) (x79 >> 0x18);
- uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- uint64_t x82 = (x42 + ((uint64_t)0x11 * x80));
- uint32_t x83 = (uint32_t) (x82 >> 0x18);
- uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- uint32_t x85 = (x83 + x45);
- uint32_t x86 = (x85 >> 0x18);
- uint32_t x87 = (x85 & 0xffffff);
- return (Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, Return x57, Return x54, Return x51, (x86 + x48), Return x87, Return x84))
-x
- : word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e336m17_14limbs/fesquareDisplay.v b/src/Specific/solinas32_2e336m17_14limbs/fesquareDisplay.v
deleted file mode 100644
index 45ddc4d75..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e336m17_14limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e336m17_14limbs/fesub.c b/src/Specific/solinas32_2e336m17_14limbs/fesub.c
deleted file mode 100644
index c3cc34933..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/fesub.c
+++ /dev/null
@@ -1,45 +0,0 @@
-static void fesub(uint32_t out[14], const uint32_t in1[14], const uint32_t in2[14]) {
- { const uint32_t x28 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x54 = in2[13];
- { const uint32_t x55 = in2[12];
- { const uint32_t x53 = in2[11];
- { const uint32_t x51 = in2[10];
- { const uint32_t x49 = in2[9];
- { const uint32_t x47 = in2[8];
- { const uint32_t x45 = in2[7];
- { const uint32_t x43 = in2[6];
- { const uint32_t x41 = in2[5];
- { const uint32_t x39 = in2[4];
- { const uint32_t x37 = in2[3];
- { const uint32_t x35 = in2[2];
- { const uint32_t x33 = in2[1];
- { const uint32_t x31 = in2[0];
- out[0] = ((0x1ffffde + x5) - x31);
- out[1] = ((0x1fffffe + x7) - x33);
- out[2] = ((0x1fffffe + x9) - x35);
- out[3] = ((0x1fffffe + x11) - x37);
- out[4] = ((0x1fffffe + x13) - x39);
- out[5] = ((0x1fffffe + x15) - x41);
- out[6] = ((0x1fffffe + x17) - x43);
- out[7] = ((0x1fffffe + x19) - x45);
- out[8] = ((0x1fffffe + x21) - x47);
- out[9] = ((0x1fffffe + x23) - x49);
- out[10] = ((0x1fffffe + x25) - x51);
- out[11] = ((0x1fffffe + x27) - x53);
- out[12] = ((0x1fffffe + x29) - x55);
- out[13] = ((0x1fffffe + x28) - x54);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e336m17_14limbs/fesub.v b/src/Specific/solinas32_2e336m17_14limbs/fesub.v
deleted file mode 100644
index bec589f96..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e336m17_14limbs.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_2e336m17_14limbs/fesubDisplay.log b/src/Specific/solinas32_2e336m17_14limbs/fesubDisplay.log
deleted file mode 100644
index 7abd23722..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x28, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x54, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31))%core,
- (((0x1fffffe + x28) - x54), ((0x1fffffe + x29) - x55), ((0x1fffffe + x27) - x53), ((0x1fffffe + x25) - x51), ((0x1fffffe + x23) - x49), ((0x1fffffe + x21) - x47), ((0x1fffffe + x19) - x45), ((0x1fffffe + x17) - x43), ((0x1fffffe + x15) - x41), ((0x1fffffe + x13) - x39), ((0x1fffffe + x11) - x37), ((0x1fffffe + x9) - x35), ((0x1fffffe + x7) - x33), ((0x1ffffde + x5) - x31)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e336m17_14limbs/fesubDisplay.v b/src/Specific/solinas32_2e336m17_14limbs/fesubDisplay.v
deleted file mode 100644
index 907de86ea..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e336m17_14limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e336m17_14limbs/freeze.c b/src/Specific/solinas32_2e336m17_14limbs/freeze.c
deleted file mode 100644
index 2d7a3f5f0..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/freeze.c
+++ /dev/null
@@ -1,74 +0,0 @@
-static void freeze(uint32_t out[14], const uint32_t in1[14]) {
- { const uint32_t x25 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffef);
- { uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x4, 0xffffff);
- { uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x6, 0xffffff);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x8, 0xffffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x10, 0xffffff);
- { uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x12, 0xffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x14, 0xffffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x16, 0xffffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x18, 0xffffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x20, 0xffffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x22, 0xffffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x24, 0xffffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x26, 0xffffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x25, 0xffffff);
- { uint32_t x69 = cmovznz32(x68, 0x0, 0xffffffff);
- { uint32_t x70 = (x69 & 0xffffef);
- { uint32_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x28, Return x70);
- { uint32_t x74 = (x69 & 0xffffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x31, Return x74);
- { uint32_t x78 = (x69 & 0xffffff);
- { uint32_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x34, Return x78);
- { uint32_t x82 = (x69 & 0xffffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x37, Return x82);
- { uint32_t x86 = (x69 & 0xffffff);
- { uint32_t x88, uint8_t x89 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x40, Return x86);
- { uint32_t x90 = (x69 & 0xffffff);
- { uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x89, Return x43, Return x90);
- { uint32_t x94 = (x69 & 0xffffff);
- { uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x46, Return x94);
- { uint32_t x98 = (x69 & 0xffffff);
- { uint32_t x100, uint8_t x101 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x49, Return x98);
- { uint32_t x102 = (x69 & 0xffffff);
- { uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x52, Return x102);
- { uint32_t x106 = (x69 & 0xffffff);
- { uint32_t x108, uint8_t x109 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x55, Return x106);
- { uint32_t x110 = (x69 & 0xffffff);
- { uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x58, Return x110);
- { uint32_t x114 = (x69 & 0xffffff);
- { uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x61, Return x114);
- { uint32_t x118 = (x69 & 0xffffff);
- { uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x64, Return x118);
- { uint32_t x122 = (x69 & 0xffffff);
- { uint32_t x124, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x67, Return x122);
- out[0] = x72;
- out[1] = x76;
- out[2] = x80;
- out[3] = x84;
- out[4] = x88;
- out[5] = x92;
- out[6] = x96;
- out[7] = x100;
- out[8] = x104;
- out[9] = x108;
- out[10] = x112;
- out[11] = x116;
- out[12] = x120;
- out[13] = x124;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e336m17_14limbs/freeze.v b/src/Specific/solinas32_2e336m17_14limbs/freeze.v
deleted file mode 100644
index 607da7a00..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e336m17_14limbs.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_2e336m17_14limbs/freezeDisplay.log b/src/Specific/solinas32_2e336m17_14limbs/freezeDisplay.log
deleted file mode 100644
index 17b8867bb..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/freezeDisplay.log
+++ /dev/null
@@ -1,50 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x25, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffef);
- uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x4, 0xffffff);
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x6, 0xffffff);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x8, 0xffffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x10, 0xffffff);
- uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x12, 0xffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x14, 0xffffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x16, 0xffffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x18, 0xffffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x20, 0xffffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x22, 0xffffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x24, 0xffffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x26, 0xffffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x25, 0xffffff);
- uint32_t x69 = cmovznz32(x68, 0x0, 0xffffffff);
- uint32_t x70 = (x69 & 0xffffef);
- uint32_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x28, Return x70);
- uint32_t x74 = (x69 & 0xffffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x31, Return x74);
- uint32_t x78 = (x69 & 0xffffff);
- uint32_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x34, Return x78);
- uint32_t x82 = (x69 & 0xffffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x37, Return x82);
- uint32_t x86 = (x69 & 0xffffff);
- uint32_t x88, uint8_t x89 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x40, Return x86);
- uint32_t x90 = (x69 & 0xffffff);
- uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x89, Return x43, Return x90);
- uint32_t x94 = (x69 & 0xffffff);
- uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x46, Return x94);
- uint32_t x98 = (x69 & 0xffffff);
- uint32_t x100, uint8_t x101 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x49, Return x98);
- uint32_t x102 = (x69 & 0xffffff);
- uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x52, Return x102);
- uint32_t x106 = (x69 & 0xffffff);
- uint32_t x108, uint8_t x109 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x55, Return x106);
- uint32_t x110 = (x69 & 0xffffff);
- uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x58, Return x110);
- uint32_t x114 = (x69 & 0xffffff);
- uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x61, Return x114);
- uint32_t x118 = (x69 & 0xffffff);
- uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x64, Return x118);
- uint32_t x122 = (x69 & 0xffffff);
- uint32_t x124, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x67, Return x122);
- (Return x124, Return x120, Return x116, Return x112, Return x108, Return x104, Return x100, Return x96, Return x92, Return x88, Return x84, Return x80, Return x76, Return x72))
-x
- : word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e336m17_14limbs/freezeDisplay.v b/src/Specific/solinas32_2e336m17_14limbs/freezeDisplay.v
deleted file mode 100644
index 4ff3f3e97..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e336m17_14limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e336m17_14limbs/py_interpreter.sh b/src/Specific/solinas32_2e336m17_14limbs/py_interpreter.sh
deleted file mode 100755
index ed8665123..000000000
--- a/src/Specific/solinas32_2e336m17_14limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**336 - 17' -Dmodulus_bytes='24' -Da24='121665'
diff --git a/src/Specific/solinas32_2e336m3_12limbs/CurveParameters.v b/src/Specific/solinas32_2e336m3_12limbs/CurveParameters.v
deleted file mode 100644
index 8bcb0ddbc..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^336 - 3
-Base: 28
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 12%nat;
- base := 28;
- bitwidth := 32;
- s := 2^336;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 12); [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_2e336m3_12limbs/Synthesis.v b/src/Specific/solinas32_2e336m3_12limbs/Synthesis.v
deleted file mode 100644
index 7e79a29d2..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e336m3_12limbs.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_2e336m3_12limbs/compiler.sh b/src/Specific/solinas32_2e336m3_12limbs/compiler.sh
deleted file mode 100755
index 9a407a560..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/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,0x00,0x00,0x00,0x00,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='{28,28,28,28,28,28,28,28,28,28,28,28}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<336) - 3' "$@"
diff --git a/src/Specific/solinas32_2e336m3_12limbs/compilerxx.sh b/src/Specific/solinas32_2e336m3_12limbs/compilerxx.sh
deleted file mode 100755
index e17160dc9..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/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,0x00,0x00,0x00,0x00,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='{28,28,28,28,28,28,28,28,28,28,28,28}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='12' -Dq_mpz='(1_mpz<<336) - 3' "$@"
diff --git a/src/Specific/solinas32_2e336m3_12limbs/feadd.c b/src/Specific/solinas32_2e336m3_12limbs/feadd.c
deleted file mode 100644
index 68eccd2bc..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/feadd.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void feadd(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- out[0] = (x5 + x27);
- out[1] = (x7 + x29);
- out[2] = (x9 + x31);
- out[3] = (x11 + x33);
- out[4] = (x13 + x35);
- out[5] = (x15 + x37);
- out[6] = (x17 + x39);
- out[7] = (x19 + x41);
- out[8] = (x21 + x43);
- out[9] = (x23 + x45);
- out[10] = (x25 + x47);
- out[11] = (x24 + x46);
- }}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e336m3_12limbs/feadd.v b/src/Specific/solinas32_2e336m3_12limbs/feadd.v
deleted file mode 100644
index a8684812a..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e336m3_12limbs.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_2e336m3_12limbs/feaddDisplay.log b/src/Specific/solinas32_2e336m3_12limbs/feaddDisplay.log
deleted file mode 100644
index 4109af59c..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- ((x24 + x46), (x25 + x47), (x23 + x45), (x21 + x43), (x19 + x41), (x17 + x39), (x15 + x37), (x13 + x35), (x11 + x33), (x9 + x31), (x7 + x29), (x5 + x27)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e336m3_12limbs/feaddDisplay.v b/src/Specific/solinas32_2e336m3_12limbs/feaddDisplay.v
deleted file mode 100644
index 4af3543fd..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e336m3_12limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e336m3_12limbs/fecarry.v b/src/Specific/solinas32_2e336m3_12limbs/fecarry.v
deleted file mode 100644
index 56135b385..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e336m3_12limbs.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_2e336m3_12limbs/fecarryDisplay.v b/src/Specific/solinas32_2e336m3_12limbs/fecarryDisplay.v
deleted file mode 100644
index 1c66581c3..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e336m3_12limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e336m3_12limbs/femul.c b/src/Specific/solinas32_2e336m3_12limbs/femul.c
deleted file mode 100644
index 4d7bf5a52..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/femul.c
+++ /dev/null
@@ -1,92 +0,0 @@
-static void femul(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- { uint64_t x48 = (((uint64_t)x5 * x46) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + (((uint64_t)x23 * x31) + (((uint64_t)x25 * x29) + ((uint64_t)x24 * x27))))))))))));
- { uint64_t x49 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + (((uint64_t)x23 * x29) + ((uint64_t)x25 * x27))))))))))) + (0x3 * ((uint64_t)x24 * x46)));
- { uint64_t x50 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (((uint64_t)x21 * x29) + ((uint64_t)x23 * x27)))))))))) + (0x3 * (((uint64_t)x25 * x46) + ((uint64_t)x24 * x47))));
- { uint64_t x51 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + ((uint64_t)x21 * x27))))))))) + (0x3 * (((uint64_t)x23 * x46) + (((uint64_t)x25 * x47) + ((uint64_t)x24 * x45)))));
- { uint64_t x52 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x19 * x27)))))))) + (0x3 * (((uint64_t)x21 * x46) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + ((uint64_t)x24 * x43))))));
- { uint64_t x53 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + ((uint64_t)x17 * x27))))))) + (0x3 * (((uint64_t)x19 * x46) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + ((uint64_t)x24 * x41)))))));
- { ℤ x54 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + ((uint64_t)x15 * x27)))))) +ℤ (0x3 * (((uint64_t)x17 * x46) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + ((uint64_t)x24 * x39))))))));
- { ℤ x55 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + ((uint64_t)x13 * x27))))) +ℤ (0x3 * (((uint64_t)x15 * x46) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + ((uint64_t)x24 * x37)))))))));
- { ℤ x56 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + ((uint64_t)x11 * x27)))) +ℤ (0x3 *ℤ (((uint64_t)x13 * x46) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + (((uint64_t)x25 * x37) + ((uint64_t)x24 * x35))))))))));
- { ℤ x57 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + ((uint64_t)x9 * x27))) +ℤ (0x3 *ℤ (((uint64_t)x11 * x46) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + (((uint64_t)x25 * x35) + ((uint64_t)x24 * x33)))))))))));
- { ℤ x58 = ((((uint64_t)x5 * x29) + ((uint64_t)x7 * x27)) +ℤ (0x3 *ℤ (((uint64_t)x9 * x46) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + (((uint64_t)x25 * x33) + ((uint64_t)x24 * x31))))))))))));
- { ℤ x59 = (((uint64_t)x5 * x27) +ℤ (0x3 *ℤ (((uint64_t)x7 * x46) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + (((uint64_t)x21 * x35) + (((uint64_t)x23 * x33) + (((uint64_t)x25 * x31) + ((uint64_t)x24 * x29)))))))))))));
- { uint64_t x60 = (x59 >> 0x1c);
- { uint32_t x61 = (x59 & 0xfffffff);
- { ℤ x62 = (x60 +ℤ x58);
- { uint64_t x63 = (x62 >> 0x1c);
- { uint32_t x64 = (x62 & 0xfffffff);
- { ℤ x65 = (x63 +ℤ x57);
- { uint64_t x66 = (x65 >> 0x1c);
- { uint32_t x67 = (x65 & 0xfffffff);
- { ℤ x68 = (x66 +ℤ x56);
- { uint64_t x69 = (x68 >> 0x1c);
- { uint32_t x70 = (x68 & 0xfffffff);
- { ℤ x71 = (x69 +ℤ x55);
- { uint64_t x72 = (x71 >> 0x1c);
- { uint32_t x73 = (x71 & 0xfffffff);
- { ℤ x74 = (x72 +ℤ x54);
- { uint64_t x75 = (x74 >> 0x1c);
- { uint32_t x76 = (x74 & 0xfffffff);
- { uint64_t x77 = (x75 + x53);
- { uint64_t x78 = (x77 >> 0x1c);
- { uint32_t x79 = ((uint32_t)x77 & 0xfffffff);
- { uint64_t x80 = (x78 + x52);
- { uint64_t x81 = (x80 >> 0x1c);
- { uint32_t x82 = ((uint32_t)x80 & 0xfffffff);
- { uint64_t x83 = (x81 + x51);
- { uint64_t x84 = (x83 >> 0x1c);
- { uint32_t x85 = ((uint32_t)x83 & 0xfffffff);
- { uint64_t x86 = (x84 + x50);
- { uint64_t x87 = (x86 >> 0x1c);
- { uint32_t x88 = ((uint32_t)x86 & 0xfffffff);
- { uint64_t x89 = (x87 + x49);
- { uint64_t x90 = (x89 >> 0x1c);
- { uint32_t x91 = ((uint32_t)x89 & 0xfffffff);
- { uint64_t x92 = (x90 + x48);
- { uint64_t x93 = (x92 >> 0x1c);
- { uint32_t x94 = ((uint32_t)x92 & 0xfffffff);
- { uint64_t x95 = (x61 + (0x3 * x93));
- { uint32_t x96 = (uint32_t) (x95 >> 0x1c);
- { uint32_t x97 = ((uint32_t)x95 & 0xfffffff);
- { uint32_t x98 = (x96 + x64);
- { uint32_t x99 = (x98 >> 0x1c);
- { uint32_t x100 = (x98 & 0xfffffff);
- out[0] = x97;
- out[1] = x100;
- out[2] = (x99 + x67);
- out[3] = x70;
- out[4] = x73;
- out[5] = x76;
- out[6] = x79;
- out[7] = x82;
- out[8] = x85;
- out[9] = x88;
- out[10] = x91;
- out[11] = x94;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e336m3_12limbs/femul.v b/src/Specific/solinas32_2e336m3_12limbs/femul.v
deleted file mode 100644
index 74f5a357b..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e336m3_12limbs.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_2e336m3_12limbs/femulDisplay.log b/src/Specific/solinas32_2e336m3_12limbs/femulDisplay.log
deleted file mode 100644
index 7b17e6bed..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/femulDisplay.log
+++ /dev/null
@@ -1,60 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- uint64_t x48 = (((uint64_t)x5 * x46) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + (((uint64_t)x23 * x31) + (((uint64_t)x25 * x29) + ((uint64_t)x24 * x27))))))))))));
- uint64_t x49 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + (((uint64_t)x23 * x29) + ((uint64_t)x25 * x27))))))))))) + (0x3 * ((uint64_t)x24 * x46)));
- uint64_t x50 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + (((uint64_t)x21 * x29) + ((uint64_t)x23 * x27)))))))))) + (0x3 * (((uint64_t)x25 * x46) + ((uint64_t)x24 * x47))));
- uint64_t x51 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + (((uint64_t)x19 * x29) + ((uint64_t)x21 * x27))))))))) + (0x3 * (((uint64_t)x23 * x46) + (((uint64_t)x25 * x47) + ((uint64_t)x24 * x45)))));
- uint64_t x52 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + (((uint64_t)x17 * x29) + ((uint64_t)x19 * x27)))))))) + (0x3 * (((uint64_t)x21 * x46) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + ((uint64_t)x24 * x43))))));
- uint64_t x53 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + (((uint64_t)x15 * x29) + ((uint64_t)x17 * x27))))))) + (0x3 * (((uint64_t)x19 * x46) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + ((uint64_t)x24 * x41)))))));
- ℤ x54 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + (((uint64_t)x13 * x29) + ((uint64_t)x15 * x27)))))) +ℤ (0x3 * (((uint64_t)x17 * x46) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + ((uint64_t)x24 * x39))))))));
- ℤ x55 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + (((uint64_t)x11 * x29) + ((uint64_t)x13 * x27))))) +ℤ (0x3 * (((uint64_t)x15 * x46) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + ((uint64_t)x24 * x37)))))))));
- ℤ x56 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + (((uint64_t)x9 * x29) + ((uint64_t)x11 * x27)))) +ℤ (0x3 *ℤ (((uint64_t)x13 * x46) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + (((uint64_t)x25 * x37) + ((uint64_t)x24 * x35))))))))));
- ℤ x57 = ((((uint64_t)x5 * x31) + (((uint64_t)x7 * x29) + ((uint64_t)x9 * x27))) +ℤ (0x3 *ℤ (((uint64_t)x11 * x46) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + (((uint64_t)x25 * x35) + ((uint64_t)x24 * x33)))))))))));
- ℤ x58 = ((((uint64_t)x5 * x29) + ((uint64_t)x7 * x27)) +ℤ (0x3 *ℤ (((uint64_t)x9 * x46) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + (((uint64_t)x25 * x33) + ((uint64_t)x24 * x31))))))))))));
- ℤ x59 = (((uint64_t)x5 * x27) +ℤ (0x3 *ℤ (((uint64_t)x7 * x46) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + (((uint64_t)x21 * x35) + (((uint64_t)x23 * x33) + (((uint64_t)x25 * x31) + ((uint64_t)x24 * x29)))))))))))));
- uint64_t x60 = (x59 >> 0x1c);
- uint32_t x61 = (x59 & 0xfffffff);
- ℤ x62 = (x60 +ℤ x58);
- uint64_t x63 = (x62 >> 0x1c);
- uint32_t x64 = (x62 & 0xfffffff);
- ℤ x65 = (x63 +ℤ x57);
- uint64_t x66 = (x65 >> 0x1c);
- uint32_t x67 = (x65 & 0xfffffff);
- ℤ x68 = (x66 +ℤ x56);
- uint64_t x69 = (x68 >> 0x1c);
- uint32_t x70 = (x68 & 0xfffffff);
- ℤ x71 = (x69 +ℤ x55);
- uint64_t x72 = (x71 >> 0x1c);
- uint32_t x73 = (x71 & 0xfffffff);
- ℤ x74 = (x72 +ℤ x54);
- uint64_t x75 = (x74 >> 0x1c);
- uint32_t x76 = (x74 & 0xfffffff);
- uint64_t x77 = (x75 + x53);
- uint64_t x78 = (x77 >> 0x1c);
- uint32_t x79 = ((uint32_t)x77 & 0xfffffff);
- uint64_t x80 = (x78 + x52);
- uint64_t x81 = (x80 >> 0x1c);
- uint32_t x82 = ((uint32_t)x80 & 0xfffffff);
- uint64_t x83 = (x81 + x51);
- uint64_t x84 = (x83 >> 0x1c);
- uint32_t x85 = ((uint32_t)x83 & 0xfffffff);
- uint64_t x86 = (x84 + x50);
- uint64_t x87 = (x86 >> 0x1c);
- uint32_t x88 = ((uint32_t)x86 & 0xfffffff);
- uint64_t x89 = (x87 + x49);
- uint64_t x90 = (x89 >> 0x1c);
- uint32_t x91 = ((uint32_t)x89 & 0xfffffff);
- uint64_t x92 = (x90 + x48);
- uint64_t x93 = (x92 >> 0x1c);
- uint32_t x94 = ((uint32_t)x92 & 0xfffffff);
- uint64_t x95 = (x61 + (0x3 * x93));
- uint32_t x96 = (uint32_t) (x95 >> 0x1c);
- uint32_t x97 = ((uint32_t)x95 & 0xfffffff);
- uint32_t x98 = (x96 + x64);
- uint32_t x99 = (x98 >> 0x1c);
- uint32_t x100 = (x98 & 0xfffffff);
- return (Return x94, Return x91, Return x88, Return x85, Return x82, Return x79, Return x76, Return x73, Return x70, (x99 + x67), Return x100, Return x97))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e336m3_12limbs/femulDisplay.v b/src/Specific/solinas32_2e336m3_12limbs/femulDisplay.v
deleted file mode 100644
index a3b8eeab9..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e336m3_12limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e336m3_12limbs/fesquare.c b/src/Specific/solinas32_2e336m3_12limbs/fesquare.c
deleted file mode 100644
index 70f7fecb8..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/fesquare.c
+++ /dev/null
@@ -1,80 +0,0 @@
-static void fesquare(uint32_t out[12], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x23 = (((uint64_t)x2 * x21) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x21 * x2))))))))))));
- { uint64_t x24 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x3 * ((uint64_t)x21 * x21)));
- { uint64_t x25 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x3 * (((uint64_t)x22 * x21) + ((uint64_t)x21 * x22))));
- { uint64_t x26 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x3 * (((uint64_t)x20 * x21) + (((uint64_t)x22 * x22) + ((uint64_t)x21 * x20)))));
- { uint64_t x27 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x3 * (((uint64_t)x18 * x21) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((uint64_t)x21 * x18))))));
- { uint64_t x28 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x3 * (((uint64_t)x16 * x21) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + ((uint64_t)x21 * x16)))))));
- { ℤ x29 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) +ℤ (0x3 * (((uint64_t)x14 * x21) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + ((uint64_t)x21 * x14))))))));
- { ℤ x30 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) +ℤ (0x3 * (((uint64_t)x12 * x21) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + ((uint64_t)x21 * x12)))))))));
- { ℤ x31 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) +ℤ (0x3 *ℤ (((uint64_t)x10 * x21) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + ((uint64_t)x21 * x10))))))))));
- { ℤ x32 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) +ℤ (0x3 *ℤ (((uint64_t)x8 * x21) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + ((uint64_t)x21 * x8)))))))))));
- { ℤ x33 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) +ℤ (0x3 *ℤ (((uint64_t)x6 * x21) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + ((uint64_t)x21 * x6))))))))))));
- { ℤ x34 = (((uint64_t)x2 * x2) +ℤ (0x3 *ℤ (((uint64_t)x4 * x21) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + ((uint64_t)x21 * x4)))))))))))));
- { uint64_t x35 = (x34 >> 0x1c);
- { uint32_t x36 = (x34 & 0xfffffff);
- { ℤ x37 = (x35 +ℤ x33);
- { uint64_t x38 = (x37 >> 0x1c);
- { uint32_t x39 = (x37 & 0xfffffff);
- { ℤ x40 = (x38 +ℤ x32);
- { uint64_t x41 = (x40 >> 0x1c);
- { uint32_t x42 = (x40 & 0xfffffff);
- { ℤ x43 = (x41 +ℤ x31);
- { uint64_t x44 = (x43 >> 0x1c);
- { uint32_t x45 = (x43 & 0xfffffff);
- { ℤ x46 = (x44 +ℤ x30);
- { uint64_t x47 = (x46 >> 0x1c);
- { uint32_t x48 = (x46 & 0xfffffff);
- { ℤ x49 = (x47 +ℤ x29);
- { uint64_t x50 = (x49 >> 0x1c);
- { uint32_t x51 = (x49 & 0xfffffff);
- { uint64_t x52 = (x50 + x28);
- { uint64_t x53 = (x52 >> 0x1c);
- { uint32_t x54 = ((uint32_t)x52 & 0xfffffff);
- { uint64_t x55 = (x53 + x27);
- { uint64_t x56 = (x55 >> 0x1c);
- { uint32_t x57 = ((uint32_t)x55 & 0xfffffff);
- { uint64_t x58 = (x56 + x26);
- { uint64_t x59 = (x58 >> 0x1c);
- { uint32_t x60 = ((uint32_t)x58 & 0xfffffff);
- { uint64_t x61 = (x59 + x25);
- { uint64_t x62 = (x61 >> 0x1c);
- { uint32_t x63 = ((uint32_t)x61 & 0xfffffff);
- { uint64_t x64 = (x62 + x24);
- { uint64_t x65 = (x64 >> 0x1c);
- { uint32_t x66 = ((uint32_t)x64 & 0xfffffff);
- { uint64_t x67 = (x65 + x23);
- { uint64_t x68 = (x67 >> 0x1c);
- { uint32_t x69 = ((uint32_t)x67 & 0xfffffff);
- { uint64_t x70 = (x36 + (0x3 * x68));
- { uint32_t x71 = (uint32_t) (x70 >> 0x1c);
- { uint32_t x72 = ((uint32_t)x70 & 0xfffffff);
- { uint32_t x73 = (x71 + x39);
- { uint32_t x74 = (x73 >> 0x1c);
- { uint32_t x75 = (x73 & 0xfffffff);
- out[0] = x72;
- out[1] = x75;
- out[2] = (x74 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- out[7] = x57;
- out[8] = x60;
- out[9] = x63;
- out[10] = x66;
- out[11] = x69;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e336m3_12limbs/fesquare.v b/src/Specific/solinas32_2e336m3_12limbs/fesquare.v
deleted file mode 100644
index 06c77680b..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e336m3_12limbs.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_2e336m3_12limbs/fesquareDisplay.log b/src/Specific/solinas32_2e336m3_12limbs/fesquareDisplay.log
deleted file mode 100644
index 656b75a45..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,60 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x23 = (((uint64_t)x2 * x21) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x21 * x2))))))))))));
- uint64_t x24 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x3 * ((uint64_t)x21 * x21)));
- uint64_t x25 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x3 * (((uint64_t)x22 * x21) + ((uint64_t)x21 * x22))));
- uint64_t x26 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x3 * (((uint64_t)x20 * x21) + (((uint64_t)x22 * x22) + ((uint64_t)x21 * x20)))));
- uint64_t x27 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x3 * (((uint64_t)x18 * x21) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((uint64_t)x21 * x18))))));
- uint64_t x28 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x3 * (((uint64_t)x16 * x21) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + ((uint64_t)x21 * x16)))))));
- ℤ x29 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) +ℤ (0x3 * (((uint64_t)x14 * x21) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + ((uint64_t)x21 * x14))))))));
- ℤ x30 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) +ℤ (0x3 * (((uint64_t)x12 * x21) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + ((uint64_t)x21 * x12)))))))));
- ℤ x31 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) +ℤ (0x3 *ℤ (((uint64_t)x10 * x21) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + ((uint64_t)x21 * x10))))))))));
- ℤ x32 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) +ℤ (0x3 *ℤ (((uint64_t)x8 * x21) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + ((uint64_t)x21 * x8)))))))))));
- ℤ x33 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) +ℤ (0x3 *ℤ (((uint64_t)x6 * x21) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + ((uint64_t)x21 * x6))))))))))));
- ℤ x34 = (((uint64_t)x2 * x2) +ℤ (0x3 *ℤ (((uint64_t)x4 * x21) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + ((uint64_t)x21 * x4)))))))))))));
- uint64_t x35 = (x34 >> 0x1c);
- uint32_t x36 = (x34 & 0xfffffff);
- ℤ x37 = (x35 +ℤ x33);
- uint64_t x38 = (x37 >> 0x1c);
- uint32_t x39 = (x37 & 0xfffffff);
- ℤ x40 = (x38 +ℤ x32);
- uint64_t x41 = (x40 >> 0x1c);
- uint32_t x42 = (x40 & 0xfffffff);
- ℤ x43 = (x41 +ℤ x31);
- uint64_t x44 = (x43 >> 0x1c);
- uint32_t x45 = (x43 & 0xfffffff);
- ℤ x46 = (x44 +ℤ x30);
- uint64_t x47 = (x46 >> 0x1c);
- uint32_t x48 = (x46 & 0xfffffff);
- ℤ x49 = (x47 +ℤ x29);
- uint64_t x50 = (x49 >> 0x1c);
- uint32_t x51 = (x49 & 0xfffffff);
- uint64_t x52 = (x50 + x28);
- uint64_t x53 = (x52 >> 0x1c);
- uint32_t x54 = ((uint32_t)x52 & 0xfffffff);
- uint64_t x55 = (x53 + x27);
- uint64_t x56 = (x55 >> 0x1c);
- uint32_t x57 = ((uint32_t)x55 & 0xfffffff);
- uint64_t x58 = (x56 + x26);
- uint64_t x59 = (x58 >> 0x1c);
- uint32_t x60 = ((uint32_t)x58 & 0xfffffff);
- uint64_t x61 = (x59 + x25);
- uint64_t x62 = (x61 >> 0x1c);
- uint32_t x63 = ((uint32_t)x61 & 0xfffffff);
- uint64_t x64 = (x62 + x24);
- uint64_t x65 = (x64 >> 0x1c);
- uint32_t x66 = ((uint32_t)x64 & 0xfffffff);
- uint64_t x67 = (x65 + x23);
- uint64_t x68 = (x67 >> 0x1c);
- uint32_t x69 = ((uint32_t)x67 & 0xfffffff);
- uint64_t x70 = (x36 + (0x3 * x68));
- uint32_t x71 = (uint32_t) (x70 >> 0x1c);
- uint32_t x72 = ((uint32_t)x70 & 0xfffffff);
- uint32_t x73 = (x71 + x39);
- uint32_t x74 = (x73 >> 0x1c);
- uint32_t x75 = (x73 & 0xfffffff);
- return (Return x69, Return x66, Return x63, Return x60, Return x57, Return x54, Return x51, Return x48, Return x45, (x74 + x42), Return x75, Return x72))
-x
- : 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e336m3_12limbs/fesquareDisplay.v b/src/Specific/solinas32_2e336m3_12limbs/fesquareDisplay.v
deleted file mode 100644
index 9fba56cda..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e336m3_12limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e336m3_12limbs/fesub.c b/src/Specific/solinas32_2e336m3_12limbs/fesub.c
deleted file mode 100644
index 1fbdaab1a..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/fesub.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void fesub(uint32_t out[12], const uint32_t in1[12], const uint32_t in2[12]) {
- { const uint32_t x24 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x46 = in2[11];
- { const uint32_t x47 = in2[10];
- { const uint32_t x45 = in2[9];
- { const uint32_t x43 = in2[8];
- { const uint32_t x41 = in2[7];
- { const uint32_t x39 = in2[6];
- { const uint32_t x37 = in2[5];
- { const uint32_t x35 = in2[4];
- { const uint32_t x33 = in2[3];
- { const uint32_t x31 = in2[2];
- { const uint32_t x29 = in2[1];
- { const uint32_t x27 = in2[0];
- out[0] = ((0x1ffffffa + x5) - x27);
- out[1] = ((0x1ffffffe + x7) - x29);
- out[2] = ((0x1ffffffe + x9) - x31);
- out[3] = ((0x1ffffffe + x11) - x33);
- out[4] = ((0x1ffffffe + x13) - x35);
- out[5] = ((0x1ffffffe + x15) - x37);
- out[6] = ((0x1ffffffe + x17) - x39);
- out[7] = ((0x1ffffffe + x19) - x41);
- out[8] = ((0x1ffffffe + x21) - x43);
- out[9] = ((0x1ffffffe + x23) - x45);
- out[10] = ((0x1ffffffe + x25) - x47);
- out[11] = ((0x1ffffffe + x24) - x46);
- }}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e336m3_12limbs/fesub.v b/src/Specific/solinas32_2e336m3_12limbs/fesub.v
deleted file mode 100644
index bd7920e70..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e336m3_12limbs.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_2e336m3_12limbs/fesubDisplay.log b/src/Specific/solinas32_2e336m3_12limbs/fesubDisplay.log
deleted file mode 100644
index b5fc20900..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x24, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27))%core,
- (((0x1ffffffe + x24) - x46), ((0x1ffffffe + x25) - x47), ((0x1ffffffe + x23) - x45), ((0x1ffffffe + x21) - x43), ((0x1ffffffe + x19) - x41), ((0x1ffffffe + x17) - x39), ((0x1ffffffe + x15) - x37), ((0x1ffffffe + x13) - x35), ((0x1ffffffe + x11) - x33), ((0x1ffffffe + x9) - x31), ((0x1ffffffe + x7) - x29), ((0x1ffffffa + x5) - x27)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e336m3_12limbs/fesubDisplay.v b/src/Specific/solinas32_2e336m3_12limbs/fesubDisplay.v
deleted file mode 100644
index 63721b2c8..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e336m3_12limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e336m3_12limbs/freeze.c b/src/Specific/solinas32_2e336m3_12limbs/freeze.c
deleted file mode 100644
index 321731d94..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/freeze.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void freeze(uint32_t out[12], const uint32_t in1[12]) {
- { const uint32_t x21 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffd);
- { uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x4, 0xfffffff);
- { uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x6, 0xfffffff);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x8, 0xfffffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x10, 0xfffffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x12, 0xfffffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x14, 0xfffffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x16, 0xfffffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x18, 0xfffffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x20, 0xfffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x22, 0xfffffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x21, 0xfffffff);
- { uint32_t x59 = cmovznz32(x58, 0x0, 0xffffffff);
- { uint32_t x60 = (x59 & 0xffffffd);
- { uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x24, Return x60);
- { uint32_t x64 = (x59 & 0xfffffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x27, Return x64);
- { uint32_t x68 = (x59 & 0xfffffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x30, Return x68);
- { uint32_t x72 = (x59 & 0xfffffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x33, Return x72);
- { uint32_t x76 = (x59 & 0xfffffff);
- { uint32_t x78, uint8_t x79 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x36, Return x76);
- { uint32_t x80 = (x59 & 0xfffffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x39, Return x80);
- { uint32_t x84 = (x59 & 0xfffffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x42, Return x84);
- { uint32_t x88 = (x59 & 0xfffffff);
- { uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x45, Return x88);
- { uint32_t x92 = (x59 & 0xfffffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x48, Return x92);
- { uint32_t x96 = (x59 & 0xfffffff);
- { uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x51, Return x96);
- { uint32_t x100 = (x59 & 0xfffffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x54, Return x100);
- { uint32_t x104 = (x59 & 0xfffffff);
- { uint32_t x106, uint8_t _ = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x57, Return x104);
- out[0] = x62;
- out[1] = x66;
- out[2] = x70;
- out[3] = x74;
- out[4] = x78;
- out[5] = x82;
- out[6] = x86;
- out[7] = x90;
- out[8] = x94;
- out[9] = x98;
- out[10] = x102;
- out[11] = x106;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e336m3_12limbs/freeze.v b/src/Specific/solinas32_2e336m3_12limbs/freeze.v
deleted file mode 100644
index bda5a779b..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e336m3_12limbs.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_2e336m3_12limbs/freezeDisplay.log b/src/Specific/solinas32_2e336m3_12limbs/freezeDisplay.log
deleted file mode 100644
index 8b4f4961f..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/freezeDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x21, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffd);
- uint32_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x25, Return x4, 0xfffffff);
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x28, Return x6, 0xfffffff);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x8, 0xfffffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x10, 0xfffffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x12, 0xfffffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x14, 0xfffffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x16, 0xfffffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x18, 0xfffffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x20, 0xfffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x22, 0xfffffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x21, 0xfffffff);
- uint32_t x59 = cmovznz32(x58, 0x0, 0xffffffff);
- uint32_t x60 = (x59 & 0xffffffd);
- uint32_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x24, Return x60);
- uint32_t x64 = (x59 & 0xfffffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x27, Return x64);
- uint32_t x68 = (x59 & 0xfffffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x30, Return x68);
- uint32_t x72 = (x59 & 0xfffffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x33, Return x72);
- uint32_t x76 = (x59 & 0xfffffff);
- uint32_t x78, uint8_t x79 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x36, Return x76);
- uint32_t x80 = (x59 & 0xfffffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x39, Return x80);
- uint32_t x84 = (x59 & 0xfffffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x42, Return x84);
- uint32_t x88 = (x59 & 0xfffffff);
- uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x45, Return x88);
- uint32_t x92 = (x59 & 0xfffffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x48, Return x92);
- uint32_t x96 = (x59 & 0xfffffff);
- uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x51, Return x96);
- uint32_t x100 = (x59 & 0xfffffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x54, Return x100);
- uint32_t x104 = (x59 & 0xfffffff);
- uint32_t x106, uint8_t _ = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x57, Return x104);
- (Return x106, Return x102, Return x98, Return x94, Return x90, Return x86, Return x82, Return x78, Return x74, Return x70, Return x66, Return x62))
-x
- : 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e336m3_12limbs/freezeDisplay.v b/src/Specific/solinas32_2e336m3_12limbs/freezeDisplay.v
deleted file mode 100644
index 7ced6bff2..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e336m3_12limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e336m3_12limbs/py_interpreter.sh b/src/Specific/solinas32_2e336m3_12limbs/py_interpreter.sh
deleted file mode 100755
index 36fca1cac..000000000
--- a/src/Specific/solinas32_2e336m3_12limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**336 - 3' -Dmodulus_bytes='28' -Da24='121665'
diff --git a/src/Specific/solinas32_2e336m3_13limbs/CurveParameters.v b/src/Specific/solinas32_2e336m3_13limbs/CurveParameters.v
deleted file mode 100644
index 101524c5a..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^336 - 3
-Base: 25 + 11/13
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 13%nat;
- base := 25 + 11/13;
- bitwidth := 32;
- s := 2^336;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 13); [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_2e336m3_13limbs/Synthesis.v b/src/Specific/solinas32_2e336m3_13limbs/Synthesis.v
deleted file mode 100644
index bbecc1814..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e336m3_13limbs.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_2e336m3_13limbs/compiler.sh b/src/Specific/solinas32_2e336m3_13limbs/compiler.sh
deleted file mode 100755
index 78c95ebe8..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/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,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,25,26,26,26,26,26,25}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<336) - 3' "$@"
diff --git a/src/Specific/solinas32_2e336m3_13limbs/compilerxx.sh b/src/Specific/solinas32_2e336m3_13limbs/compilerxx.sh
deleted file mode 100755
index 70fae7d78..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/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,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,25,26,26,26,26,26,25}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<336) - 3' "$@"
diff --git a/src/Specific/solinas32_2e336m3_13limbs/feadd.c b/src/Specific/solinas32_2e336m3_13limbs/feadd.c
deleted file mode 100644
index dbbe1da57..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/feadd.c
+++ /dev/null
@@ -1,42 +0,0 @@
-static void feadd(uint32_t out[13], const uint32_t in1[13], const uint32_t in2[13]) {
- { const uint32_t x26 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x50 = in2[12];
- { const uint32_t x51 = in2[11];
- { const uint32_t x49 = in2[10];
- { const uint32_t x47 = in2[9];
- { const uint32_t x45 = in2[8];
- { const uint32_t x43 = in2[7];
- { const uint32_t x41 = in2[6];
- { const uint32_t x39 = in2[5];
- { const uint32_t x37 = in2[4];
- { const uint32_t x35 = in2[3];
- { const uint32_t x33 = in2[2];
- { const uint32_t x31 = in2[1];
- { const uint32_t x29 = in2[0];
- out[0] = (x5 + x29);
- out[1] = (x7 + x31);
- out[2] = (x9 + x33);
- out[3] = (x11 + x35);
- out[4] = (x13 + x37);
- out[5] = (x15 + x39);
- out[6] = (x17 + x41);
- out[7] = (x19 + x43);
- out[8] = (x21 + x45);
- out[9] = (x23 + x47);
- out[10] = (x25 + x49);
- out[11] = (x27 + x51);
- out[12] = (x26 + x50);
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e336m3_13limbs/feadd.v b/src/Specific/solinas32_2e336m3_13limbs/feadd.v
deleted file mode 100644
index c9d7f10d4..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e336m3_13limbs.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_2e336m3_13limbs/feaddDisplay.log b/src/Specific/solinas32_2e336m3_13limbs/feaddDisplay.log
deleted file mode 100644
index e64abeaba..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x26, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29))%core,
- ((x26 + x50), (x27 + x51), (x25 + x49), (x23 + x47), (x21 + x45), (x19 + x43), (x17 + x41), (x15 + x39), (x13 + x37), (x11 + x35), (x9 + x33), (x7 + x31), (x5 + x29)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e336m3_13limbs/feaddDisplay.v b/src/Specific/solinas32_2e336m3_13limbs/feaddDisplay.v
deleted file mode 100644
index 6e021d222..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e336m3_13limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e336m3_13limbs/fecarry.v b/src/Specific/solinas32_2e336m3_13limbs/fecarry.v
deleted file mode 100644
index 8babc32b1..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e336m3_13limbs.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_2e336m3_13limbs/fecarryDisplay.v b/src/Specific/solinas32_2e336m3_13limbs/fecarryDisplay.v
deleted file mode 100644
index d2c1ebf8f..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e336m3_13limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e336m3_13limbs/femul.c b/src/Specific/solinas32_2e336m3_13limbs/femul.c
deleted file mode 100644
index 5605cb643..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/femul.c
+++ /dev/null
@@ -1,99 +0,0 @@
-static void femul(uint32_t out[13], const uint32_t in1[13], const uint32_t in2[13]) {
- { const uint32_t x26 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x50 = in2[12];
- { const uint32_t x51 = in2[11];
- { const uint32_t x49 = in2[10];
- { const uint32_t x47 = in2[9];
- { const uint32_t x45 = in2[8];
- { const uint32_t x43 = in2[7];
- { const uint32_t x41 = in2[6];
- { const uint32_t x39 = in2[5];
- { const uint32_t x37 = in2[4];
- { const uint32_t x35 = in2[3];
- { const uint32_t x33 = in2[2];
- { const uint32_t x31 = in2[1];
- { const uint32_t x29 = in2[0];
- { uint64_t x52 = (((uint64_t)x5 * x50) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + (((uint64_t)x25 * x33) + (((uint64_t)x27 * x31) + ((uint64_t)x26 * x29)))))))))))));
- { uint64_t x53 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + (((uint64_t)x19 * x37) + (((uint64_t)x21 * x35) + (((uint64_t)x23 * x33) + (((uint64_t)x25 * x31) + ((uint64_t)x27 * x29)))))))))))) + (0x3 * (0x2 * ((uint64_t)x26 * x50))));
- { uint64_t x54 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + ((0x2 * ((uint64_t)x15 * x39)) + ((0x2 * ((uint64_t)x17 * x37)) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + (((uint64_t)x23 * x31) + ((uint64_t)x25 * x29))))))))))) + (0x3 * ((0x2 * ((uint64_t)x27 * x50)) + (0x2 * ((uint64_t)x26 * x51)))));
- { uint64_t x55 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((0x2 * ((uint64_t)x17 * x35)) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((uint64_t)x23 * x29)))))))))) + (0x3 * ((0x2 * ((uint64_t)x25 * x50)) + ((0x2 * ((uint64_t)x27 * x51)) + (0x2 * ((uint64_t)x26 * x49))))));
- { uint64_t x56 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + ((0x2 * ((uint64_t)x13 * x37)) + ((0x2 * ((uint64_t)x15 * x35)) + ((0x2 * ((uint64_t)x17 * x33)) + (((uint64_t)x19 * x31) + ((uint64_t)x21 * x29))))))))) + (0x3 * ((0x2 * ((uint64_t)x23 * x50)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + (0x2 * ((uint64_t)x26 * x47)))))));
- { uint64_t x57 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + ((0x2 * ((uint64_t)x15 * x33)) + ((0x2 * ((uint64_t)x17 * x31)) + ((uint64_t)x19 * x29)))))))) + (0x3 * ((0x2 * ((uint64_t)x21 * x50)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + (0x2 * ((uint64_t)x26 * x45))))))));
- { uint64_t x58 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + ((uint64_t)x17 * x29))))))) + (0x3 * (((uint64_t)x19 * x50) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + ((uint64_t)x26 * x43))))))));
- { uint64_t x59 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + ((uint64_t)x15 * x29)))))) + (0x3 * ((0x2 * ((uint64_t)x17 * x50)) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (0x2 * ((uint64_t)x26 * x41))))))))));
- { uint64_t x60 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + ((uint64_t)x13 * x29))))) + (0x3 * ((0x2 * ((uint64_t)x15 * x50)) + ((0x2 * ((uint64_t)x17 * x51)) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + ((0x2 * ((uint64_t)x27 * x41)) + (0x2 * ((uint64_t)x26 * x39)))))))))));
- { uint64_t x61 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + ((uint64_t)x11 * x29)))) + (0x3 * ((0x2 * ((uint64_t)x13 * x50)) + ((0x2 * ((uint64_t)x15 * x51)) + ((0x2 * ((uint64_t)x17 * x49)) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + ((0x2 * ((uint64_t)x25 * x41)) + ((0x2 * ((uint64_t)x27 * x39)) + (0x2 * ((uint64_t)x26 * x37))))))))))));
- { uint64_t x62 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + ((uint64_t)x9 * x29))) + (0x3 * ((0x2 * ((uint64_t)x11 * x50)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + ((0x2 * ((uint64_t)x27 * x37)) + (0x2 * ((uint64_t)x26 * x35)))))))))))));
- { uint64_t x63 = ((((uint64_t)x5 * x31) + ((uint64_t)x7 * x29)) + (0x3 * ((0x2 * ((uint64_t)x9 * x50)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + ((0x2 * ((uint64_t)x25 * x37)) + ((0x2 * ((uint64_t)x27 * x35)) + (0x2 * ((uint64_t)x26 * x33))))))))))))));
- { uint64_t x64 = (((uint64_t)x5 * x29) + (0x3 * ((0x2 * ((uint64_t)x7 * x50)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((0x2 * ((uint64_t)x25 * x35)) + ((0x2 * ((uint64_t)x27 * x33)) + (0x2 * ((uint64_t)x26 * x31)))))))))))))));
- { uint64_t x65 = (x64 >> 0x1a);
- { uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- { uint64_t x67 = (x65 + x63);
- { uint64_t x68 = (x67 >> 0x1a);
- { uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- { uint64_t x70 = (x68 + x62);
- { uint64_t x71 = (x70 >> 0x1a);
- { uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- { uint64_t x73 = (x71 + x61);
- { uint64_t x74 = (x73 >> 0x1a);
- { uint32_t x75 = ((uint32_t)x73 & 0x3ffffff);
- { uint64_t x76 = (x74 + x60);
- { uint64_t x77 = (x76 >> 0x1a);
- { uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- { uint64_t x79 = (x77 + x59);
- { uint64_t x80 = (x79 >> 0x1a);
- { uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- { uint64_t x82 = (x80 + x58);
- { uint64_t x83 = (x82 >> 0x19);
- { uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- { uint64_t x85 = (x83 + x57);
- { uint64_t x86 = (x85 >> 0x1a);
- { uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- { uint64_t x88 = (x86 + x56);
- { uint64_t x89 = (x88 >> 0x1a);
- { uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- { uint64_t x91 = (x89 + x55);
- { uint64_t x92 = (x91 >> 0x1a);
- { uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- { uint64_t x94 = (x92 + x54);
- { uint64_t x95 = (x94 >> 0x1a);
- { uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- { uint64_t x97 = (x95 + x53);
- { uint64_t x98 = (x97 >> 0x1a);
- { uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- { uint64_t x100 = (x98 + x52);
- { uint64_t x101 = (x100 >> 0x19);
- { uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- { uint64_t x103 = (x66 + (0x3 * x101));
- { uint32_t x104 = (uint32_t) (x103 >> 0x1a);
- { uint32_t x105 = ((uint32_t)x103 & 0x3ffffff);
- { uint32_t x106 = (x104 + x69);
- { uint32_t x107 = (x106 >> 0x1a);
- { uint32_t x108 = (x106 & 0x3ffffff);
- out[0] = x105;
- out[1] = x108;
- out[2] = (x107 + x72);
- out[3] = x75;
- out[4] = x78;
- out[5] = x81;
- out[6] = x84;
- out[7] = x87;
- out[8] = x90;
- out[9] = x93;
- out[10] = x96;
- out[11] = x99;
- out[12] = x102;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e336m3_13limbs/femul.v b/src/Specific/solinas32_2e336m3_13limbs/femul.v
deleted file mode 100644
index 88e13cd2a..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e336m3_13limbs.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_2e336m3_13limbs/femulDisplay.log b/src/Specific/solinas32_2e336m3_13limbs/femulDisplay.log
deleted file mode 100644
index 8eade710d..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/femulDisplay.log
+++ /dev/null
@@ -1,64 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x26, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29))%core,
- uint64_t x52 = (((uint64_t)x5 * x50) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + (((uint64_t)x25 * x33) + (((uint64_t)x27 * x31) + ((uint64_t)x26 * x29)))))))))))));
- uint64_t x53 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + (((uint64_t)x19 * x37) + (((uint64_t)x21 * x35) + (((uint64_t)x23 * x33) + (((uint64_t)x25 * x31) + ((uint64_t)x27 * x29)))))))))))) + (0x3 * (0x2 * ((uint64_t)x26 * x50))));
- uint64_t x54 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + ((0x2 * ((uint64_t)x15 * x39)) + ((0x2 * ((uint64_t)x17 * x37)) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + (((uint64_t)x23 * x31) + ((uint64_t)x25 * x29))))))))))) + (0x3 * ((0x2 * ((uint64_t)x27 * x50)) + (0x2 * ((uint64_t)x26 * x51)))));
- uint64_t x55 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((0x2 * ((uint64_t)x17 * x35)) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((uint64_t)x23 * x29)))))))))) + (0x3 * ((0x2 * ((uint64_t)x25 * x50)) + ((0x2 * ((uint64_t)x27 * x51)) + (0x2 * ((uint64_t)x26 * x49))))));
- uint64_t x56 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + ((0x2 * ((uint64_t)x13 * x37)) + ((0x2 * ((uint64_t)x15 * x35)) + ((0x2 * ((uint64_t)x17 * x33)) + (((uint64_t)x19 * x31) + ((uint64_t)x21 * x29))))))))) + (0x3 * ((0x2 * ((uint64_t)x23 * x50)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + (0x2 * ((uint64_t)x26 * x47)))))));
- uint64_t x57 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + ((0x2 * ((uint64_t)x15 * x33)) + ((0x2 * ((uint64_t)x17 * x31)) + ((uint64_t)x19 * x29)))))))) + (0x3 * ((0x2 * ((uint64_t)x21 * x50)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + (0x2 * ((uint64_t)x26 * x45))))))));
- uint64_t x58 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + ((uint64_t)x17 * x29))))))) + (0x3 * (((uint64_t)x19 * x50) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + ((uint64_t)x26 * x43))))))));
- uint64_t x59 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + ((uint64_t)x15 * x29)))))) + (0x3 * ((0x2 * ((uint64_t)x17 * x50)) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (0x2 * ((uint64_t)x26 * x41))))))))));
- uint64_t x60 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + ((uint64_t)x13 * x29))))) + (0x3 * ((0x2 * ((uint64_t)x15 * x50)) + ((0x2 * ((uint64_t)x17 * x51)) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + ((0x2 * ((uint64_t)x27 * x41)) + (0x2 * ((uint64_t)x26 * x39)))))))))));
- uint64_t x61 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + ((uint64_t)x11 * x29)))) + (0x3 * ((0x2 * ((uint64_t)x13 * x50)) + ((0x2 * ((uint64_t)x15 * x51)) + ((0x2 * ((uint64_t)x17 * x49)) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + ((0x2 * ((uint64_t)x25 * x41)) + ((0x2 * ((uint64_t)x27 * x39)) + (0x2 * ((uint64_t)x26 * x37))))))))))));
- uint64_t x62 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + ((uint64_t)x9 * x29))) + (0x3 * ((0x2 * ((uint64_t)x11 * x50)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + ((0x2 * ((uint64_t)x27 * x37)) + (0x2 * ((uint64_t)x26 * x35)))))))))))));
- uint64_t x63 = ((((uint64_t)x5 * x31) + ((uint64_t)x7 * x29)) + (0x3 * ((0x2 * ((uint64_t)x9 * x50)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + ((0x2 * ((uint64_t)x25 * x37)) + ((0x2 * ((uint64_t)x27 * x35)) + (0x2 * ((uint64_t)x26 * x33))))))))))))));
- uint64_t x64 = (((uint64_t)x5 * x29) + (0x3 * ((0x2 * ((uint64_t)x7 * x50)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((0x2 * ((uint64_t)x25 * x35)) + ((0x2 * ((uint64_t)x27 * x33)) + (0x2 * ((uint64_t)x26 * x31)))))))))))))));
- uint64_t x65 = (x64 >> 0x1a);
- uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- uint64_t x67 = (x65 + x63);
- uint64_t x68 = (x67 >> 0x1a);
- uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- uint64_t x70 = (x68 + x62);
- uint64_t x71 = (x70 >> 0x1a);
- uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- uint64_t x73 = (x71 + x61);
- uint64_t x74 = (x73 >> 0x1a);
- uint32_t x75 = ((uint32_t)x73 & 0x3ffffff);
- uint64_t x76 = (x74 + x60);
- uint64_t x77 = (x76 >> 0x1a);
- uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- uint64_t x79 = (x77 + x59);
- uint64_t x80 = (x79 >> 0x1a);
- uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- uint64_t x82 = (x80 + x58);
- uint64_t x83 = (x82 >> 0x19);
- uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- uint64_t x85 = (x83 + x57);
- uint64_t x86 = (x85 >> 0x1a);
- uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- uint64_t x88 = (x86 + x56);
- uint64_t x89 = (x88 >> 0x1a);
- uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- uint64_t x91 = (x89 + x55);
- uint64_t x92 = (x91 >> 0x1a);
- uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- uint64_t x94 = (x92 + x54);
- uint64_t x95 = (x94 >> 0x1a);
- uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- uint64_t x97 = (x95 + x53);
- uint64_t x98 = (x97 >> 0x1a);
- uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- uint64_t x100 = (x98 + x52);
- uint64_t x101 = (x100 >> 0x19);
- uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- uint64_t x103 = (x66 + (0x3 * x101));
- uint32_t x104 = (uint32_t) (x103 >> 0x1a);
- uint32_t x105 = ((uint32_t)x103 & 0x3ffffff);
- uint32_t x106 = (x104 + x69);
- uint32_t x107 = (x106 >> 0x1a);
- uint32_t x108 = (x106 & 0x3ffffff);
- return (Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, (x107 + x72), Return x108, Return x105))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e336m3_13limbs/femulDisplay.v b/src/Specific/solinas32_2e336m3_13limbs/femulDisplay.v
deleted file mode 100644
index abb9b6677..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e336m3_13limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e336m3_13limbs/fesquare.c b/src/Specific/solinas32_2e336m3_13limbs/fesquare.c
deleted file mode 100644
index dcde6d104..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/fesquare.c
+++ /dev/null
@@ -1,86 +0,0 @@
-static void fesquare(uint32_t out[13], const uint32_t in1[13]) {
- { const uint32_t x23 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x25 = (((uint64_t)x2 * x23) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x23 * x2)))))))))))));
- { uint64_t x26 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x3 * (0x2 * ((uint64_t)x23 * x23))));
- { uint64_t x27 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x3 * ((0x2 * ((uint64_t)x24 * x23)) + (0x2 * ((uint64_t)x23 * x24)))));
- { uint64_t x28 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x3 * ((0x2 * ((uint64_t)x22 * x23)) + ((0x2 * ((uint64_t)x24 * x24)) + (0x2 * ((uint64_t)x23 * x22))))));
- { uint64_t x29 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x3 * ((0x2 * ((uint64_t)x20 * x23)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + (0x2 * ((uint64_t)x23 * x20)))))));
- { uint64_t x30 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x3 * ((0x2 * ((uint64_t)x18 * x23)) + ((0x2 * ((uint64_t)x20 * x24)) + ((0x2 * ((uint64_t)x22 * x22)) + ((0x2 * ((uint64_t)x24 * x20)) + (0x2 * ((uint64_t)x23 * x18))))))));
- { uint64_t x31 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x3 * (((uint64_t)x16 * x23) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((uint64_t)x23 * x16))))))));
- { uint64_t x32 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x3 * ((0x2 * ((uint64_t)x14 * x23)) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (0x2 * ((uint64_t)x23 * x14))))))))));
- { uint64_t x33 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x3 * ((0x2 * ((uint64_t)x12 * x23)) + ((0x2 * ((uint64_t)x14 * x24)) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + ((0x2 * ((uint64_t)x24 * x14)) + (0x2 * ((uint64_t)x23 * x12)))))))))));
- { uint64_t x34 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x3 * ((0x2 * ((uint64_t)x10 * x23)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + (0x2 * ((uint64_t)x23 * x10))))))))))));
- { uint64_t x35 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x3 * ((0x2 * ((uint64_t)x8 * x23)) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + (0x2 * ((uint64_t)x23 * x8)))))))))))));
- { uint64_t x36 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * ((0x2 * ((uint64_t)x6 * x23)) + ((0x2 * ((uint64_t)x8 * x24)) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + ((0x2 * ((uint64_t)x24 * x8)) + (0x2 * ((uint64_t)x23 * x6))))))))))))));
- { uint64_t x37 = (((uint64_t)x2 * x2) + (0x3 * ((0x2 * ((uint64_t)x4 * x23)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + (0x2 * ((uint64_t)x23 * x4)))))))))))))));
- { uint64_t x38 = (x37 >> 0x1a);
- { uint32_t x39 = ((uint32_t)x37 & 0x3ffffff);
- { uint64_t x40 = (x38 + x36);
- { uint64_t x41 = (x40 >> 0x1a);
- { uint32_t x42 = ((uint32_t)x40 & 0x3ffffff);
- { uint64_t x43 = (x41 + x35);
- { uint64_t x44 = (x43 >> 0x1a);
- { uint32_t x45 = ((uint32_t)x43 & 0x3ffffff);
- { uint64_t x46 = (x44 + x34);
- { uint64_t x47 = (x46 >> 0x1a);
- { uint32_t x48 = ((uint32_t)x46 & 0x3ffffff);
- { uint64_t x49 = (x47 + x33);
- { uint64_t x50 = (x49 >> 0x1a);
- { uint32_t x51 = ((uint32_t)x49 & 0x3ffffff);
- { uint64_t x52 = (x50 + x32);
- { uint64_t x53 = (x52 >> 0x1a);
- { uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- { uint64_t x55 = (x53 + x31);
- { uint64_t x56 = (x55 >> 0x19);
- { uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- { uint64_t x58 = (x56 + x30);
- { uint64_t x59 = (x58 >> 0x1a);
- { uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- { uint64_t x61 = (x59 + x29);
- { uint64_t x62 = (x61 >> 0x1a);
- { uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- { uint64_t x64 = (x62 + x28);
- { uint64_t x65 = (x64 >> 0x1a);
- { uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- { uint64_t x67 = (x65 + x27);
- { uint64_t x68 = (x67 >> 0x1a);
- { uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- { uint64_t x70 = (x68 + x26);
- { uint64_t x71 = (x70 >> 0x1a);
- { uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- { uint64_t x73 = (x71 + x25);
- { uint64_t x74 = (x73 >> 0x19);
- { uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- { uint64_t x76 = (x39 + (0x3 * x74));
- { uint32_t x77 = (uint32_t) (x76 >> 0x1a);
- { uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- { uint32_t x79 = (x77 + x42);
- { uint32_t x80 = (x79 >> 0x1a);
- { uint32_t x81 = (x79 & 0x3ffffff);
- out[0] = x78;
- out[1] = x81;
- out[2] = (x80 + x45);
- out[3] = x48;
- out[4] = x51;
- out[5] = x54;
- out[6] = x57;
- out[7] = x60;
- out[8] = x63;
- out[9] = x66;
- out[10] = x69;
- out[11] = x72;
- out[12] = x75;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e336m3_13limbs/fesquare.v b/src/Specific/solinas32_2e336m3_13limbs/fesquare.v
deleted file mode 100644
index 1bfb48b1c..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e336m3_13limbs.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_2e336m3_13limbs/fesquareDisplay.log b/src/Specific/solinas32_2e336m3_13limbs/fesquareDisplay.log
deleted file mode 100644
index 3b2fe9a61..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,64 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x23, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x25 = (((uint64_t)x2 * x23) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x23 * x2)))))))))))));
- uint64_t x26 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x3 * (0x2 * ((uint64_t)x23 * x23))));
- uint64_t x27 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x3 * ((0x2 * ((uint64_t)x24 * x23)) + (0x2 * ((uint64_t)x23 * x24)))));
- uint64_t x28 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x3 * ((0x2 * ((uint64_t)x22 * x23)) + ((0x2 * ((uint64_t)x24 * x24)) + (0x2 * ((uint64_t)x23 * x22))))));
- uint64_t x29 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x3 * ((0x2 * ((uint64_t)x20 * x23)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + (0x2 * ((uint64_t)x23 * x20)))))));
- uint64_t x30 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x3 * ((0x2 * ((uint64_t)x18 * x23)) + ((0x2 * ((uint64_t)x20 * x24)) + ((0x2 * ((uint64_t)x22 * x22)) + ((0x2 * ((uint64_t)x24 * x20)) + (0x2 * ((uint64_t)x23 * x18))))))));
- uint64_t x31 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x3 * (((uint64_t)x16 * x23) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((uint64_t)x23 * x16))))))));
- uint64_t x32 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x3 * ((0x2 * ((uint64_t)x14 * x23)) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (0x2 * ((uint64_t)x23 * x14))))))))));
- uint64_t x33 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x3 * ((0x2 * ((uint64_t)x12 * x23)) + ((0x2 * ((uint64_t)x14 * x24)) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + ((0x2 * ((uint64_t)x24 * x14)) + (0x2 * ((uint64_t)x23 * x12)))))))))));
- uint64_t x34 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x3 * ((0x2 * ((uint64_t)x10 * x23)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + (0x2 * ((uint64_t)x23 * x10))))))))))));
- uint64_t x35 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x3 * ((0x2 * ((uint64_t)x8 * x23)) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + (0x2 * ((uint64_t)x23 * x8)))))))))))));
- uint64_t x36 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * ((0x2 * ((uint64_t)x6 * x23)) + ((0x2 * ((uint64_t)x8 * x24)) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + ((0x2 * ((uint64_t)x24 * x8)) + (0x2 * ((uint64_t)x23 * x6))))))))))))));
- uint64_t x37 = (((uint64_t)x2 * x2) + (0x3 * ((0x2 * ((uint64_t)x4 * x23)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + (0x2 * ((uint64_t)x23 * x4)))))))))))))));
- uint64_t x38 = (x37 >> 0x1a);
- uint32_t x39 = ((uint32_t)x37 & 0x3ffffff);
- uint64_t x40 = (x38 + x36);
- uint64_t x41 = (x40 >> 0x1a);
- uint32_t x42 = ((uint32_t)x40 & 0x3ffffff);
- uint64_t x43 = (x41 + x35);
- uint64_t x44 = (x43 >> 0x1a);
- uint32_t x45 = ((uint32_t)x43 & 0x3ffffff);
- uint64_t x46 = (x44 + x34);
- uint64_t x47 = (x46 >> 0x1a);
- uint32_t x48 = ((uint32_t)x46 & 0x3ffffff);
- uint64_t x49 = (x47 + x33);
- uint64_t x50 = (x49 >> 0x1a);
- uint32_t x51 = ((uint32_t)x49 & 0x3ffffff);
- uint64_t x52 = (x50 + x32);
- uint64_t x53 = (x52 >> 0x1a);
- uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- uint64_t x55 = (x53 + x31);
- uint64_t x56 = (x55 >> 0x19);
- uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- uint64_t x58 = (x56 + x30);
- uint64_t x59 = (x58 >> 0x1a);
- uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- uint64_t x61 = (x59 + x29);
- uint64_t x62 = (x61 >> 0x1a);
- uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- uint64_t x64 = (x62 + x28);
- uint64_t x65 = (x64 >> 0x1a);
- uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- uint64_t x67 = (x65 + x27);
- uint64_t x68 = (x67 >> 0x1a);
- uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- uint64_t x70 = (x68 + x26);
- uint64_t x71 = (x70 >> 0x1a);
- uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- uint64_t x73 = (x71 + x25);
- uint64_t x74 = (x73 >> 0x19);
- uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- uint64_t x76 = (x39 + (0x3 * x74));
- uint32_t x77 = (uint32_t) (x76 >> 0x1a);
- uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- uint32_t x79 = (x77 + x42);
- uint32_t x80 = (x79 >> 0x1a);
- uint32_t x81 = (x79 & 0x3ffffff);
- return (Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, Return x57, Return x54, Return x51, Return x48, (x80 + x45), Return x81, Return x78))
-x
- : word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e336m3_13limbs/fesquareDisplay.v b/src/Specific/solinas32_2e336m3_13limbs/fesquareDisplay.v
deleted file mode 100644
index ca633dab1..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e336m3_13limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e336m3_13limbs/fesub.c b/src/Specific/solinas32_2e336m3_13limbs/fesub.c
deleted file mode 100644
index c015e849b..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/fesub.c
+++ /dev/null
@@ -1,42 +0,0 @@
-static void fesub(uint32_t out[13], const uint32_t in1[13], const uint32_t in2[13]) {
- { const uint32_t x26 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x50 = in2[12];
- { const uint32_t x51 = in2[11];
- { const uint32_t x49 = in2[10];
- { const uint32_t x47 = in2[9];
- { const uint32_t x45 = in2[8];
- { const uint32_t x43 = in2[7];
- { const uint32_t x41 = in2[6];
- { const uint32_t x39 = in2[5];
- { const uint32_t x37 = in2[4];
- { const uint32_t x35 = in2[3];
- { const uint32_t x33 = in2[2];
- { const uint32_t x31 = in2[1];
- { const uint32_t x29 = in2[0];
- out[0] = ((0x7fffffa + x5) - x29);
- out[1] = ((0x7fffffe + x7) - x31);
- out[2] = ((0x7fffffe + x9) - x33);
- out[3] = ((0x7fffffe + x11) - x35);
- out[4] = ((0x7fffffe + x13) - x37);
- out[5] = ((0x7fffffe + x15) - x39);
- out[6] = ((0x3fffffe + x17) - x41);
- out[7] = ((0x7fffffe + x19) - x43);
- out[8] = ((0x7fffffe + x21) - x45);
- out[9] = ((0x7fffffe + x23) - x47);
- out[10] = ((0x7fffffe + x25) - x49);
- out[11] = ((0x7fffffe + x27) - x51);
- out[12] = ((0x3fffffe + x26) - x50);
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e336m3_13limbs/fesub.v b/src/Specific/solinas32_2e336m3_13limbs/fesub.v
deleted file mode 100644
index da693a030..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e336m3_13limbs.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_2e336m3_13limbs/fesubDisplay.log b/src/Specific/solinas32_2e336m3_13limbs/fesubDisplay.log
deleted file mode 100644
index 3245f5189..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x26, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29))%core,
- (((0x3fffffe + x26) - x50), ((0x7fffffe + x27) - x51), ((0x7fffffe + x25) - x49), ((0x7fffffe + x23) - x47), ((0x7fffffe + x21) - x45), ((0x7fffffe + x19) - x43), ((0x3fffffe + x17) - x41), ((0x7fffffe + x15) - x39), ((0x7fffffe + x13) - x37), ((0x7fffffe + x11) - x35), ((0x7fffffe + x9) - x33), ((0x7fffffe + x7) - x31), ((0x7fffffa + x5) - x29)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e336m3_13limbs/fesubDisplay.v b/src/Specific/solinas32_2e336m3_13limbs/fesubDisplay.v
deleted file mode 100644
index 16ada5736..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e336m3_13limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e336m3_13limbs/freeze.c b/src/Specific/solinas32_2e336m3_13limbs/freeze.c
deleted file mode 100644
index bb68e9547..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/freeze.c
+++ /dev/null
@@ -1,69 +0,0 @@
-static void freeze(uint32_t out[13], const uint32_t in1[13]) {
- { const uint32_t x23 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffd);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x4, 0x3ffffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x6, 0x3ffffff);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x8, 0x3ffffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x10, 0x3ffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x12, 0x3ffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x14, 0x1ffffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x16, 0x3ffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x18, 0x3ffffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x20, 0x3ffffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x22, 0x3ffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x24, 0x3ffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x23, 0x1ffffff);
- { uint32_t x64 = cmovznz32(x63, 0x0, 0xffffffff);
- { uint32_t x65 = (x64 & 0x3fffffd);
- { uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x26, Return x65);
- { uint32_t x69 = (x64 & 0x3ffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x29, Return x69);
- { uint32_t x73 = (x64 & 0x3ffffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x32, Return x73);
- { uint32_t x77 = (x64 & 0x3ffffff);
- { uint32_t x79, uint8_t x80 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x35, Return x77);
- { uint32_t x81 = (x64 & 0x3ffffff);
- { uint32_t x83, uint8_t x84 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x38, Return x81);
- { uint32_t x85 = (x64 & 0x3ffffff);
- { uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x41, Return x85);
- { uint32_t x89 = (x64 & 0x1ffffff);
- { uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x44, Return x89);
- { uint32_t x93 = (x64 & 0x3ffffff);
- { uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x47, Return x93);
- { uint32_t x97 = (x64 & 0x3ffffff);
- { uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x50, Return x97);
- { uint32_t x101 = (x64 & 0x3ffffff);
- { uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x53, Return x101);
- { uint32_t x105 = (x64 & 0x3ffffff);
- { uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x56, Return x105);
- { uint32_t x109 = (x64 & 0x3ffffff);
- { uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x59, Return x109);
- { uint32_t x113 = (x64 & 0x1ffffff);
- { uint32_t x115, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x62, Return x113);
- out[0] = x67;
- out[1] = x71;
- out[2] = x75;
- out[3] = x79;
- out[4] = x83;
- out[5] = x87;
- out[6] = x91;
- out[7] = x95;
- out[8] = x99;
- out[9] = x103;
- out[10] = x107;
- out[11] = x111;
- out[12] = x115;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e336m3_13limbs/freeze.v b/src/Specific/solinas32_2e336m3_13limbs/freeze.v
deleted file mode 100644
index e024a0703..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e336m3_13limbs.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_2e336m3_13limbs/freezeDisplay.log b/src/Specific/solinas32_2e336m3_13limbs/freezeDisplay.log
deleted file mode 100644
index 4f4256936..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/freezeDisplay.log
+++ /dev/null
@@ -1,47 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x23, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffd);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x4, 0x3ffffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x6, 0x3ffffff);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x8, 0x3ffffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x10, 0x3ffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x12, 0x3ffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x14, 0x1ffffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x16, 0x3ffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x18, 0x3ffffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x20, 0x3ffffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x22, 0x3ffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x24, 0x3ffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x23, 0x1ffffff);
- uint32_t x64 = cmovznz32(x63, 0x0, 0xffffffff);
- uint32_t x65 = (x64 & 0x3fffffd);
- uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x26, Return x65);
- uint32_t x69 = (x64 & 0x3ffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x29, Return x69);
- uint32_t x73 = (x64 & 0x3ffffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x32, Return x73);
- uint32_t x77 = (x64 & 0x3ffffff);
- uint32_t x79, uint8_t x80 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x35, Return x77);
- uint32_t x81 = (x64 & 0x3ffffff);
- uint32_t x83, uint8_t x84 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x38, Return x81);
- uint32_t x85 = (x64 & 0x3ffffff);
- uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x41, Return x85);
- uint32_t x89 = (x64 & 0x1ffffff);
- uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x44, Return x89);
- uint32_t x93 = (x64 & 0x3ffffff);
- uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x47, Return x93);
- uint32_t x97 = (x64 & 0x3ffffff);
- uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x50, Return x97);
- uint32_t x101 = (x64 & 0x3ffffff);
- uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x53, Return x101);
- uint32_t x105 = (x64 & 0x3ffffff);
- uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x56, Return x105);
- uint32_t x109 = (x64 & 0x3ffffff);
- uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x59, Return x109);
- uint32_t x113 = (x64 & 0x1ffffff);
- uint32_t x115, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x62, Return x113);
- (Return x115, Return x111, Return x107, Return x103, Return x99, Return x95, Return x91, Return x87, Return x83, Return x79, Return x75, Return x71, Return x67))
-x
- : word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e336m3_13limbs/freezeDisplay.v b/src/Specific/solinas32_2e336m3_13limbs/freezeDisplay.v
deleted file mode 100644
index 5ceb1a0be..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e336m3_13limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e336m3_13limbs/py_interpreter.sh b/src/Specific/solinas32_2e336m3_13limbs/py_interpreter.sh
deleted file mode 100755
index 2750a6d19..000000000
--- a/src/Specific/solinas32_2e336m3_13limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**336 - 3' -Dmodulus_bytes='25 + 11/13' -Da24='121665'
diff --git a/src/Specific/solinas32_2e338m15_13limbs/CurveParameters.v b/src/Specific/solinas32_2e338m15_13limbs/CurveParameters.v
deleted file mode 100644
index a76083880..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^338 - 15
-Base: 26
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 13%nat;
- base := 26;
- bitwidth := 32;
- s := 2^338;
- c := [(1, 15)];
- carry_chains := Some [seq 0 (pred 13); [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_2e338m15_13limbs/Synthesis.v b/src/Specific/solinas32_2e338m15_13limbs/Synthesis.v
deleted file mode 100644
index 900488fa0..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e338m15_13limbs.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_2e338m15_13limbs/compiler.sh b/src/Specific/solinas32_2e338m15_13limbs/compiler.sh
deleted file mode 100755
index c6152c49b..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/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,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='43' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<338) - 15' "$@"
diff --git a/src/Specific/solinas32_2e338m15_13limbs/compilerxx.sh b/src/Specific/solinas32_2e338m15_13limbs/compilerxx.sh
deleted file mode 100755
index 3f7737838..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/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,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='43' -Dmodulus_limbs='13' -Dq_mpz='(1_mpz<<338) - 15' "$@"
diff --git a/src/Specific/solinas32_2e338m15_13limbs/feadd.c b/src/Specific/solinas32_2e338m15_13limbs/feadd.c
deleted file mode 100644
index dbbe1da57..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/feadd.c
+++ /dev/null
@@ -1,42 +0,0 @@
-static void feadd(uint32_t out[13], const uint32_t in1[13], const uint32_t in2[13]) {
- { const uint32_t x26 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x50 = in2[12];
- { const uint32_t x51 = in2[11];
- { const uint32_t x49 = in2[10];
- { const uint32_t x47 = in2[9];
- { const uint32_t x45 = in2[8];
- { const uint32_t x43 = in2[7];
- { const uint32_t x41 = in2[6];
- { const uint32_t x39 = in2[5];
- { const uint32_t x37 = in2[4];
- { const uint32_t x35 = in2[3];
- { const uint32_t x33 = in2[2];
- { const uint32_t x31 = in2[1];
- { const uint32_t x29 = in2[0];
- out[0] = (x5 + x29);
- out[1] = (x7 + x31);
- out[2] = (x9 + x33);
- out[3] = (x11 + x35);
- out[4] = (x13 + x37);
- out[5] = (x15 + x39);
- out[6] = (x17 + x41);
- out[7] = (x19 + x43);
- out[8] = (x21 + x45);
- out[9] = (x23 + x47);
- out[10] = (x25 + x49);
- out[11] = (x27 + x51);
- out[12] = (x26 + x50);
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e338m15_13limbs/feadd.v b/src/Specific/solinas32_2e338m15_13limbs/feadd.v
deleted file mode 100644
index 96ee18173..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e338m15_13limbs.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_2e338m15_13limbs/feaddDisplay.log b/src/Specific/solinas32_2e338m15_13limbs/feaddDisplay.log
deleted file mode 100644
index e64abeaba..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x26, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29))%core,
- ((x26 + x50), (x27 + x51), (x25 + x49), (x23 + x47), (x21 + x45), (x19 + x43), (x17 + x41), (x15 + x39), (x13 + x37), (x11 + x35), (x9 + x33), (x7 + x31), (x5 + x29)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e338m15_13limbs/feaddDisplay.v b/src/Specific/solinas32_2e338m15_13limbs/feaddDisplay.v
deleted file mode 100644
index 5e028d088..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e338m15_13limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e338m15_13limbs/fecarry.v b/src/Specific/solinas32_2e338m15_13limbs/fecarry.v
deleted file mode 100644
index a19b54d95..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e338m15_13limbs.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_2e338m15_13limbs/fecarryDisplay.v b/src/Specific/solinas32_2e338m15_13limbs/fecarryDisplay.v
deleted file mode 100644
index 04f444251..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e338m15_13limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e338m15_13limbs/femul.c b/src/Specific/solinas32_2e338m15_13limbs/femul.c
deleted file mode 100644
index 18e92ef65..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/femul.c
+++ /dev/null
@@ -1,99 +0,0 @@
-static void femul(uint32_t out[13], const uint32_t in1[13], const uint32_t in2[13]) {
- { const uint32_t x26 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x50 = in2[12];
- { const uint32_t x51 = in2[11];
- { const uint32_t x49 = in2[10];
- { const uint32_t x47 = in2[9];
- { const uint32_t x45 = in2[8];
- { const uint32_t x43 = in2[7];
- { const uint32_t x41 = in2[6];
- { const uint32_t x39 = in2[5];
- { const uint32_t x37 = in2[4];
- { const uint32_t x35 = in2[3];
- { const uint32_t x33 = in2[2];
- { const uint32_t x31 = in2[1];
- { const uint32_t x29 = in2[0];
- { uint64_t x52 = (((uint64_t)x5 * x50) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + (((uint64_t)x25 * x33) + (((uint64_t)x27 * x31) + ((uint64_t)x26 * x29)))))))))))));
- { uint64_t x53 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + (((uint64_t)x21 * x35) + (((uint64_t)x23 * x33) + (((uint64_t)x25 * x31) + ((uint64_t)x27 * x29)))))))))))) + (0xf * ((uint64_t)x26 * x50)));
- { uint64_t x54 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + (((uint64_t)x23 * x31) + ((uint64_t)x25 * x29))))))))))) + (0xf * (((uint64_t)x27 * x50) + ((uint64_t)x26 * x51))));
- { uint64_t x55 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((uint64_t)x23 * x29)))))))))) + (0xf * (((uint64_t)x25 * x50) + (((uint64_t)x27 * x51) + ((uint64_t)x26 * x49)))));
- { uint64_t x56 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + ((uint64_t)x21 * x29))))))))) + (0xf * (((uint64_t)x23 * x50) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + ((uint64_t)x26 * x47))))));
- { uint64_t x57 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + ((uint64_t)x19 * x29)))))))) + (0xf * (((uint64_t)x21 * x50) + (((uint64_t)x23 * x51) + (((uint64_t)x25 * x49) + (((uint64_t)x27 * x47) + ((uint64_t)x26 * x45)))))));
- { uint64_t x58 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + ((uint64_t)x17 * x29))))))) + (0xf * (((uint64_t)x19 * x50) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + ((uint64_t)x26 * x43))))))));
- { uint64_t x59 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + ((uint64_t)x15 * x29)))))) + (0xf * (((uint64_t)x17 * x50) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + ((uint64_t)x26 * x41)))))))));
- { uint64_t x60 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + ((uint64_t)x13 * x29))))) + (0xf * (((uint64_t)x15 * x50) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + (((uint64_t)x27 * x41) + ((uint64_t)x26 * x39))))))))));
- { uint64_t x61 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + ((uint64_t)x11 * x29)))) + (0xf * (((uint64_t)x13 * x50) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + ((uint64_t)x26 * x37)))))))))));
- { uint64_t x62 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + ((uint64_t)x9 * x29))) + (0xf * (((uint64_t)x11 * x50) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + (((uint64_t)x27 * x37) + ((uint64_t)x26 * x35))))))))))));
- { uint64_t x63 = ((((uint64_t)x5 * x31) + ((uint64_t)x7 * x29)) + (0xf * (((uint64_t)x9 * x50) + (((uint64_t)x11 * x51) + (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + (((uint64_t)x25 * x37) + (((uint64_t)x27 * x35) + ((uint64_t)x26 * x33)))))))))))));
- { uint64_t x64 = (((uint64_t)x5 * x29) + (0xf * (((uint64_t)x7 * x50) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + (((uint64_t)x25 * x35) + (((uint64_t)x27 * x33) + ((uint64_t)x26 * x31))))))))))))));
- { uint64_t x65 = (x64 >> 0x1a);
- { uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- { uint64_t x67 = (x65 + x63);
- { uint64_t x68 = (x67 >> 0x1a);
- { uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- { uint64_t x70 = (x68 + x62);
- { uint64_t x71 = (x70 >> 0x1a);
- { uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- { uint64_t x73 = (x71 + x61);
- { uint64_t x74 = (x73 >> 0x1a);
- { uint32_t x75 = ((uint32_t)x73 & 0x3ffffff);
- { uint64_t x76 = (x74 + x60);
- { uint64_t x77 = (x76 >> 0x1a);
- { uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- { uint64_t x79 = (x77 + x59);
- { uint64_t x80 = (x79 >> 0x1a);
- { uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- { uint64_t x82 = (x80 + x58);
- { uint64_t x83 = (x82 >> 0x1a);
- { uint32_t x84 = ((uint32_t)x82 & 0x3ffffff);
- { uint64_t x85 = (x83 + x57);
- { uint64_t x86 = (x85 >> 0x1a);
- { uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- { uint64_t x88 = (x86 + x56);
- { uint64_t x89 = (x88 >> 0x1a);
- { uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- { uint64_t x91 = (x89 + x55);
- { uint64_t x92 = (x91 >> 0x1a);
- { uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- { uint64_t x94 = (x92 + x54);
- { uint64_t x95 = (x94 >> 0x1a);
- { uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- { uint64_t x97 = (x95 + x53);
- { uint64_t x98 = (x97 >> 0x1a);
- { uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- { uint64_t x100 = (x98 + x52);
- { uint64_t x101 = (x100 >> 0x1a);
- { uint32_t x102 = ((uint32_t)x100 & 0x3ffffff);
- { uint64_t x103 = (x66 + (0xf * x101));
- { uint32_t x104 = (uint32_t) (x103 >> 0x1a);
- { uint32_t x105 = ((uint32_t)x103 & 0x3ffffff);
- { uint32_t x106 = (x104 + x69);
- { uint32_t x107 = (x106 >> 0x1a);
- { uint32_t x108 = (x106 & 0x3ffffff);
- out[0] = x105;
- out[1] = x108;
- out[2] = (x107 + x72);
- out[3] = x75;
- out[4] = x78;
- out[5] = x81;
- out[6] = x84;
- out[7] = x87;
- out[8] = x90;
- out[9] = x93;
- out[10] = x96;
- out[11] = x99;
- out[12] = x102;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e338m15_13limbs/femul.v b/src/Specific/solinas32_2e338m15_13limbs/femul.v
deleted file mode 100644
index 36b25e510..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e338m15_13limbs.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_2e338m15_13limbs/femulDisplay.log b/src/Specific/solinas32_2e338m15_13limbs/femulDisplay.log
deleted file mode 100644
index 8de8577af..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/femulDisplay.log
+++ /dev/null
@@ -1,64 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x26, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29))%core,
- uint64_t x52 = (((uint64_t)x5 * x50) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + (((uint64_t)x25 * x33) + (((uint64_t)x27 * x31) + ((uint64_t)x26 * x29)))))))))))));
- uint64_t x53 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + (((uint64_t)x21 * x35) + (((uint64_t)x23 * x33) + (((uint64_t)x25 * x31) + ((uint64_t)x27 * x29)))))))))))) + (0xf * ((uint64_t)x26 * x50)));
- uint64_t x54 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + (((uint64_t)x21 * x33) + (((uint64_t)x23 * x31) + ((uint64_t)x25 * x29))))))))))) + (0xf * (((uint64_t)x27 * x50) + ((uint64_t)x26 * x51))));
- uint64_t x55 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + (((uint64_t)x21 * x31) + ((uint64_t)x23 * x29)))))))))) + (0xf * (((uint64_t)x25 * x50) + (((uint64_t)x27 * x51) + ((uint64_t)x26 * x49)))));
- uint64_t x56 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + (((uint64_t)x17 * x33) + (((uint64_t)x19 * x31) + ((uint64_t)x21 * x29))))))))) + (0xf * (((uint64_t)x23 * x50) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + ((uint64_t)x26 * x47))))));
- uint64_t x57 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + (((uint64_t)x13 * x35) + (((uint64_t)x15 * x33) + (((uint64_t)x17 * x31) + ((uint64_t)x19 * x29)))))))) + (0xf * (((uint64_t)x21 * x50) + (((uint64_t)x23 * x51) + (((uint64_t)x25 * x49) + (((uint64_t)x27 * x47) + ((uint64_t)x26 * x45)))))));
- uint64_t x58 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + (((uint64_t)x13 * x33) + (((uint64_t)x15 * x31) + ((uint64_t)x17 * x29))))))) + (0xf * (((uint64_t)x19 * x50) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + ((uint64_t)x26 * x43))))))));
- uint64_t x59 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + (((uint64_t)x11 * x33) + (((uint64_t)x13 * x31) + ((uint64_t)x15 * x29)))))) + (0xf * (((uint64_t)x17 * x50) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + ((uint64_t)x26 * x41)))))))));
- uint64_t x60 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + (((uint64_t)x9 * x33) + (((uint64_t)x11 * x31) + ((uint64_t)x13 * x29))))) + (0xf * (((uint64_t)x15 * x50) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + (((uint64_t)x27 * x41) + ((uint64_t)x26 * x39))))))))));
- uint64_t x61 = ((((uint64_t)x5 * x35) + (((uint64_t)x7 * x33) + (((uint64_t)x9 * x31) + ((uint64_t)x11 * x29)))) + (0xf * (((uint64_t)x13 * x50) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + ((uint64_t)x26 * x37)))))))))));
- uint64_t x62 = ((((uint64_t)x5 * x33) + (((uint64_t)x7 * x31) + ((uint64_t)x9 * x29))) + (0xf * (((uint64_t)x11 * x50) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + (((uint64_t)x27 * x37) + ((uint64_t)x26 * x35))))))))))));
- uint64_t x63 = ((((uint64_t)x5 * x31) + ((uint64_t)x7 * x29)) + (0xf * (((uint64_t)x9 * x50) + (((uint64_t)x11 * x51) + (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + (((uint64_t)x25 * x37) + (((uint64_t)x27 * x35) + ((uint64_t)x26 * x33)))))))))))));
- uint64_t x64 = (((uint64_t)x5 * x29) + (0xf * (((uint64_t)x7 * x50) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + (((uint64_t)x25 * x35) + (((uint64_t)x27 * x33) + ((uint64_t)x26 * x31))))))))))))));
- uint64_t x65 = (x64 >> 0x1a);
- uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- uint64_t x67 = (x65 + x63);
- uint64_t x68 = (x67 >> 0x1a);
- uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- uint64_t x70 = (x68 + x62);
- uint64_t x71 = (x70 >> 0x1a);
- uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- uint64_t x73 = (x71 + x61);
- uint64_t x74 = (x73 >> 0x1a);
- uint32_t x75 = ((uint32_t)x73 & 0x3ffffff);
- uint64_t x76 = (x74 + x60);
- uint64_t x77 = (x76 >> 0x1a);
- uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- uint64_t x79 = (x77 + x59);
- uint64_t x80 = (x79 >> 0x1a);
- uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- uint64_t x82 = (x80 + x58);
- uint64_t x83 = (x82 >> 0x1a);
- uint32_t x84 = ((uint32_t)x82 & 0x3ffffff);
- uint64_t x85 = (x83 + x57);
- uint64_t x86 = (x85 >> 0x1a);
- uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- uint64_t x88 = (x86 + x56);
- uint64_t x89 = (x88 >> 0x1a);
- uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- uint64_t x91 = (x89 + x55);
- uint64_t x92 = (x91 >> 0x1a);
- uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- uint64_t x94 = (x92 + x54);
- uint64_t x95 = (x94 >> 0x1a);
- uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- uint64_t x97 = (x95 + x53);
- uint64_t x98 = (x97 >> 0x1a);
- uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- uint64_t x100 = (x98 + x52);
- uint64_t x101 = (x100 >> 0x1a);
- uint32_t x102 = ((uint32_t)x100 & 0x3ffffff);
- uint64_t x103 = (x66 + (0xf * x101));
- uint32_t x104 = (uint32_t) (x103 >> 0x1a);
- uint32_t x105 = ((uint32_t)x103 & 0x3ffffff);
- uint32_t x106 = (x104 + x69);
- uint32_t x107 = (x106 >> 0x1a);
- uint32_t x108 = (x106 & 0x3ffffff);
- return (Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, (x107 + x72), Return x108, Return x105))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e338m15_13limbs/femulDisplay.v b/src/Specific/solinas32_2e338m15_13limbs/femulDisplay.v
deleted file mode 100644
index 16e1ac5aa..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e338m15_13limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e338m15_13limbs/fesquare.c b/src/Specific/solinas32_2e338m15_13limbs/fesquare.c
deleted file mode 100644
index 667230a95..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/fesquare.c
+++ /dev/null
@@ -1,86 +0,0 @@
-static void fesquare(uint32_t out[13], const uint32_t in1[13]) {
- { const uint32_t x23 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x25 = (((uint64_t)x2 * x23) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x23 * x2)))))))))))));
- { uint64_t x26 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0xf * ((uint64_t)x23 * x23)));
- { uint64_t x27 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0xf * (((uint64_t)x24 * x23) + ((uint64_t)x23 * x24))));
- { uint64_t x28 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0xf * (((uint64_t)x22 * x23) + (((uint64_t)x24 * x24) + ((uint64_t)x23 * x22)))));
- { uint64_t x29 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0xf * (((uint64_t)x20 * x23) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + ((uint64_t)x23 * x20))))));
- { uint64_t x30 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0xf * (((uint64_t)x18 * x23) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + ((uint64_t)x23 * x18)))))));
- { uint64_t x31 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0xf * (((uint64_t)x16 * x23) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((uint64_t)x23 * x16))))))));
- { uint64_t x32 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0xf * (((uint64_t)x14 * x23) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + ((uint64_t)x23 * x14)))))))));
- { uint64_t x33 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0xf * (((uint64_t)x12 * x23) + (((uint64_t)x14 * x24) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + ((uint64_t)x23 * x12))))))))));
- { uint64_t x34 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0xf * (((uint64_t)x10 * x23) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + ((uint64_t)x23 * x10)))))))))));
- { uint64_t x35 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0xf * (((uint64_t)x8 * x23) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + ((uint64_t)x23 * x8))))))))))));
- { uint64_t x36 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xf * (((uint64_t)x6 * x23) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + ((uint64_t)x23 * x6)))))))))))));
- { uint64_t x37 = (((uint64_t)x2 * x2) + (0xf * (((uint64_t)x4 * x23) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + ((uint64_t)x23 * x4))))))))))))));
- { uint64_t x38 = (x37 >> 0x1a);
- { uint32_t x39 = ((uint32_t)x37 & 0x3ffffff);
- { uint64_t x40 = (x38 + x36);
- { uint64_t x41 = (x40 >> 0x1a);
- { uint32_t x42 = ((uint32_t)x40 & 0x3ffffff);
- { uint64_t x43 = (x41 + x35);
- { uint64_t x44 = (x43 >> 0x1a);
- { uint32_t x45 = ((uint32_t)x43 & 0x3ffffff);
- { uint64_t x46 = (x44 + x34);
- { uint64_t x47 = (x46 >> 0x1a);
- { uint32_t x48 = ((uint32_t)x46 & 0x3ffffff);
- { uint64_t x49 = (x47 + x33);
- { uint64_t x50 = (x49 >> 0x1a);
- { uint32_t x51 = ((uint32_t)x49 & 0x3ffffff);
- { uint64_t x52 = (x50 + x32);
- { uint64_t x53 = (x52 >> 0x1a);
- { uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- { uint64_t x55 = (x53 + x31);
- { uint64_t x56 = (x55 >> 0x1a);
- { uint32_t x57 = ((uint32_t)x55 & 0x3ffffff);
- { uint64_t x58 = (x56 + x30);
- { uint64_t x59 = (x58 >> 0x1a);
- { uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- { uint64_t x61 = (x59 + x29);
- { uint64_t x62 = (x61 >> 0x1a);
- { uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- { uint64_t x64 = (x62 + x28);
- { uint64_t x65 = (x64 >> 0x1a);
- { uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- { uint64_t x67 = (x65 + x27);
- { uint64_t x68 = (x67 >> 0x1a);
- { uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- { uint64_t x70 = (x68 + x26);
- { uint64_t x71 = (x70 >> 0x1a);
- { uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- { uint64_t x73 = (x71 + x25);
- { uint64_t x74 = (x73 >> 0x1a);
- { uint32_t x75 = ((uint32_t)x73 & 0x3ffffff);
- { uint64_t x76 = (x39 + (0xf * x74));
- { uint32_t x77 = (uint32_t) (x76 >> 0x1a);
- { uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- { uint32_t x79 = (x77 + x42);
- { uint32_t x80 = (x79 >> 0x1a);
- { uint32_t x81 = (x79 & 0x3ffffff);
- out[0] = x78;
- out[1] = x81;
- out[2] = (x80 + x45);
- out[3] = x48;
- out[4] = x51;
- out[5] = x54;
- out[6] = x57;
- out[7] = x60;
- out[8] = x63;
- out[9] = x66;
- out[10] = x69;
- out[11] = x72;
- out[12] = x75;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e338m15_13limbs/fesquare.v b/src/Specific/solinas32_2e338m15_13limbs/fesquare.v
deleted file mode 100644
index 33dc4dd98..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e338m15_13limbs.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_2e338m15_13limbs/fesquareDisplay.log b/src/Specific/solinas32_2e338m15_13limbs/fesquareDisplay.log
deleted file mode 100644
index f7b5ca625..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,64 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x23, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x25 = (((uint64_t)x2 * x23) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x23 * x2)))))))))))));
- uint64_t x26 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0xf * ((uint64_t)x23 * x23)));
- uint64_t x27 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0xf * (((uint64_t)x24 * x23) + ((uint64_t)x23 * x24))));
- uint64_t x28 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0xf * (((uint64_t)x22 * x23) + (((uint64_t)x24 * x24) + ((uint64_t)x23 * x22)))));
- uint64_t x29 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0xf * (((uint64_t)x20 * x23) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + ((uint64_t)x23 * x20))))));
- uint64_t x30 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0xf * (((uint64_t)x18 * x23) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + ((uint64_t)x23 * x18)))))));
- uint64_t x31 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0xf * (((uint64_t)x16 * x23) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((uint64_t)x23 * x16))))))));
- uint64_t x32 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0xf * (((uint64_t)x14 * x23) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + ((uint64_t)x23 * x14)))))))));
- uint64_t x33 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0xf * (((uint64_t)x12 * x23) + (((uint64_t)x14 * x24) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + ((uint64_t)x23 * x12))))))))));
- uint64_t x34 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0xf * (((uint64_t)x10 * x23) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + ((uint64_t)x23 * x10)))))))))));
- uint64_t x35 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0xf * (((uint64_t)x8 * x23) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + ((uint64_t)x23 * x8))))))))))));
- uint64_t x36 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xf * (((uint64_t)x6 * x23) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + ((uint64_t)x23 * x6)))))))))))));
- uint64_t x37 = (((uint64_t)x2 * x2) + (0xf * (((uint64_t)x4 * x23) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + ((uint64_t)x23 * x4))))))))))))));
- uint64_t x38 = (x37 >> 0x1a);
- uint32_t x39 = ((uint32_t)x37 & 0x3ffffff);
- uint64_t x40 = (x38 + x36);
- uint64_t x41 = (x40 >> 0x1a);
- uint32_t x42 = ((uint32_t)x40 & 0x3ffffff);
- uint64_t x43 = (x41 + x35);
- uint64_t x44 = (x43 >> 0x1a);
- uint32_t x45 = ((uint32_t)x43 & 0x3ffffff);
- uint64_t x46 = (x44 + x34);
- uint64_t x47 = (x46 >> 0x1a);
- uint32_t x48 = ((uint32_t)x46 & 0x3ffffff);
- uint64_t x49 = (x47 + x33);
- uint64_t x50 = (x49 >> 0x1a);
- uint32_t x51 = ((uint32_t)x49 & 0x3ffffff);
- uint64_t x52 = (x50 + x32);
- uint64_t x53 = (x52 >> 0x1a);
- uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- uint64_t x55 = (x53 + x31);
- uint64_t x56 = (x55 >> 0x1a);
- uint32_t x57 = ((uint32_t)x55 & 0x3ffffff);
- uint64_t x58 = (x56 + x30);
- uint64_t x59 = (x58 >> 0x1a);
- uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- uint64_t x61 = (x59 + x29);
- uint64_t x62 = (x61 >> 0x1a);
- uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- uint64_t x64 = (x62 + x28);
- uint64_t x65 = (x64 >> 0x1a);
- uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- uint64_t x67 = (x65 + x27);
- uint64_t x68 = (x67 >> 0x1a);
- uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- uint64_t x70 = (x68 + x26);
- uint64_t x71 = (x70 >> 0x1a);
- uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- uint64_t x73 = (x71 + x25);
- uint64_t x74 = (x73 >> 0x1a);
- uint32_t x75 = ((uint32_t)x73 & 0x3ffffff);
- uint64_t x76 = (x39 + (0xf * x74));
- uint32_t x77 = (uint32_t) (x76 >> 0x1a);
- uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- uint32_t x79 = (x77 + x42);
- uint32_t x80 = (x79 >> 0x1a);
- uint32_t x81 = (x79 & 0x3ffffff);
- return (Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, Return x57, Return x54, Return x51, Return x48, (x80 + x45), Return x81, Return x78))
-x
- : word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e338m15_13limbs/fesquareDisplay.v b/src/Specific/solinas32_2e338m15_13limbs/fesquareDisplay.v
deleted file mode 100644
index 04abafbe0..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e338m15_13limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e338m15_13limbs/fesub.c b/src/Specific/solinas32_2e338m15_13limbs/fesub.c
deleted file mode 100644
index 5278414ba..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/fesub.c
+++ /dev/null
@@ -1,42 +0,0 @@
-static void fesub(uint32_t out[13], const uint32_t in1[13], const uint32_t in2[13]) {
- { const uint32_t x26 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x50 = in2[12];
- { const uint32_t x51 = in2[11];
- { const uint32_t x49 = in2[10];
- { const uint32_t x47 = in2[9];
- { const uint32_t x45 = in2[8];
- { const uint32_t x43 = in2[7];
- { const uint32_t x41 = in2[6];
- { const uint32_t x39 = in2[5];
- { const uint32_t x37 = in2[4];
- { const uint32_t x35 = in2[3];
- { const uint32_t x33 = in2[2];
- { const uint32_t x31 = in2[1];
- { const uint32_t x29 = in2[0];
- out[0] = ((0x7ffffe2 + x5) - x29);
- out[1] = ((0x7fffffe + x7) - x31);
- out[2] = ((0x7fffffe + x9) - x33);
- out[3] = ((0x7fffffe + x11) - x35);
- out[4] = ((0x7fffffe + x13) - x37);
- out[5] = ((0x7fffffe + x15) - x39);
- out[6] = ((0x7fffffe + x17) - x41);
- out[7] = ((0x7fffffe + x19) - x43);
- out[8] = ((0x7fffffe + x21) - x45);
- out[9] = ((0x7fffffe + x23) - x47);
- out[10] = ((0x7fffffe + x25) - x49);
- out[11] = ((0x7fffffe + x27) - x51);
- out[12] = ((0x7fffffe + x26) - x50);
- }}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e338m15_13limbs/fesub.v b/src/Specific/solinas32_2e338m15_13limbs/fesub.v
deleted file mode 100644
index e000364a7..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e338m15_13limbs.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_2e338m15_13limbs/fesubDisplay.log b/src/Specific/solinas32_2e338m15_13limbs/fesubDisplay.log
deleted file mode 100644
index fce0d0a23..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x26, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29))%core,
- (((0x7fffffe + x26) - x50), ((0x7fffffe + x27) - x51), ((0x7fffffe + x25) - x49), ((0x7fffffe + x23) - x47), ((0x7fffffe + x21) - x45), ((0x7fffffe + x19) - x43), ((0x7fffffe + x17) - x41), ((0x7fffffe + x15) - x39), ((0x7fffffe + x13) - x37), ((0x7fffffe + x11) - x35), ((0x7fffffe + x9) - x33), ((0x7fffffe + x7) - x31), ((0x7ffffe2 + x5) - x29)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e338m15_13limbs/fesubDisplay.v b/src/Specific/solinas32_2e338m15_13limbs/fesubDisplay.v
deleted file mode 100644
index 4a3676ddf..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e338m15_13limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e338m15_13limbs/freeze.c b/src/Specific/solinas32_2e338m15_13limbs/freeze.c
deleted file mode 100644
index a37f312b1..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/freeze.c
+++ /dev/null
@@ -1,69 +0,0 @@
-static void freeze(uint32_t out[13], const uint32_t in1[13]) {
- { const uint32_t x23 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffff1);
- { uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x4, 0x3ffffff);
- { uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x6, 0x3ffffff);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x8, 0x3ffffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x10, 0x3ffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x12, 0x3ffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x14, 0x3ffffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x16, 0x3ffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x18, 0x3ffffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x20, 0x3ffffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x22, 0x3ffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x24, 0x3ffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x23, 0x3ffffff);
- { uint32_t x64 = cmovznz32(x63, 0x0, 0xffffffff);
- { uint32_t x65 = (x64 & 0x3fffff1);
- { uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x26, Return x65);
- { uint32_t x69 = (x64 & 0x3ffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x29, Return x69);
- { uint32_t x73 = (x64 & 0x3ffffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x32, Return x73);
- { uint32_t x77 = (x64 & 0x3ffffff);
- { uint32_t x79, uint8_t x80 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x35, Return x77);
- { uint32_t x81 = (x64 & 0x3ffffff);
- { uint32_t x83, uint8_t x84 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x38, Return x81);
- { uint32_t x85 = (x64 & 0x3ffffff);
- { uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x41, Return x85);
- { uint32_t x89 = (x64 & 0x3ffffff);
- { uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x44, Return x89);
- { uint32_t x93 = (x64 & 0x3ffffff);
- { uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x47, Return x93);
- { uint32_t x97 = (x64 & 0x3ffffff);
- { uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x50, Return x97);
- { uint32_t x101 = (x64 & 0x3ffffff);
- { uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x53, Return x101);
- { uint32_t x105 = (x64 & 0x3ffffff);
- { uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x56, Return x105);
- { uint32_t x109 = (x64 & 0x3ffffff);
- { uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x59, Return x109);
- { uint32_t x113 = (x64 & 0x3ffffff);
- { uint32_t x115, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x62, Return x113);
- out[0] = x67;
- out[1] = x71;
- out[2] = x75;
- out[3] = x79;
- out[4] = x83;
- out[5] = x87;
- out[6] = x91;
- out[7] = x95;
- out[8] = x99;
- out[9] = x103;
- out[10] = x107;
- out[11] = x111;
- out[12] = x115;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e338m15_13limbs/freeze.v b/src/Specific/solinas32_2e338m15_13limbs/freeze.v
deleted file mode 100644
index cab653cac..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e338m15_13limbs.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_2e338m15_13limbs/freezeDisplay.log b/src/Specific/solinas32_2e338m15_13limbs/freezeDisplay.log
deleted file mode 100644
index 8f8255a0d..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/freezeDisplay.log
+++ /dev/null
@@ -1,47 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x23, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffff1);
- uint32_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x27, Return x4, 0x3ffffff);
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x30, Return x6, 0x3ffffff);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x8, 0x3ffffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x10, 0x3ffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x12, 0x3ffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x14, 0x3ffffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x16, 0x3ffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x18, 0x3ffffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x20, 0x3ffffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x22, 0x3ffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x24, 0x3ffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x23, 0x3ffffff);
- uint32_t x64 = cmovznz32(x63, 0x0, 0xffffffff);
- uint32_t x65 = (x64 & 0x3fffff1);
- uint32_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x26, Return x65);
- uint32_t x69 = (x64 & 0x3ffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x29, Return x69);
- uint32_t x73 = (x64 & 0x3ffffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x32, Return x73);
- uint32_t x77 = (x64 & 0x3ffffff);
- uint32_t x79, uint8_t x80 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x35, Return x77);
- uint32_t x81 = (x64 & 0x3ffffff);
- uint32_t x83, uint8_t x84 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x38, Return x81);
- uint32_t x85 = (x64 & 0x3ffffff);
- uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x41, Return x85);
- uint32_t x89 = (x64 & 0x3ffffff);
- uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x44, Return x89);
- uint32_t x93 = (x64 & 0x3ffffff);
- uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x47, Return x93);
- uint32_t x97 = (x64 & 0x3ffffff);
- uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x50, Return x97);
- uint32_t x101 = (x64 & 0x3ffffff);
- uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x53, Return x101);
- uint32_t x105 = (x64 & 0x3ffffff);
- uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x56, Return x105);
- uint32_t x109 = (x64 & 0x3ffffff);
- uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x59, Return x109);
- uint32_t x113 = (x64 & 0x3ffffff);
- uint32_t x115, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x62, Return x113);
- (Return x115, Return x111, Return x107, Return x103, Return x99, Return x95, Return x91, Return x87, Return x83, Return x79, Return x75, Return x71, Return x67))
-x
- : word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e338m15_13limbs/freezeDisplay.v b/src/Specific/solinas32_2e338m15_13limbs/freezeDisplay.v
deleted file mode 100644
index 734bec166..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e338m15_13limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e338m15_13limbs/py_interpreter.sh b/src/Specific/solinas32_2e338m15_13limbs/py_interpreter.sh
deleted file mode 100755
index 3a4b1a469..000000000
--- a/src/Specific/solinas32_2e338m15_13limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**338 - 15' -Dmodulus_bytes='26' -Da24='121665'
diff --git a/src/Specific/solinas32_2e338m15_14limbs/CurveParameters.v b/src/Specific/solinas32_2e338m15_14limbs/CurveParameters.v
deleted file mode 100644
index db65d9ad9..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^338 - 15
-Base: 24 + 1/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 14%nat;
- base := 24 + 1/7;
- bitwidth := 32;
- s := 2^338;
- c := [(1, 15)];
- carry_chains := Some [seq 0 (pred 14); [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_2e338m15_14limbs/Synthesis.v b/src/Specific/solinas32_2e338m15_14limbs/Synthesis.v
deleted file mode 100644
index b9581e135..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e338m15_14limbs.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_2e338m15_14limbs/compiler.sh b/src/Specific/solinas32_2e338m15_14limbs/compiler.sh
deleted file mode 100755
index 573af3cc1..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/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,0x00,0x00,0x00,0x00,0x00,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='{25,24,24,24,24,24,24,25,24,24,24,24,24,24}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='43' -Dmodulus_limbs='14' -Dq_mpz='(1_mpz<<338) - 15' "$@"
diff --git a/src/Specific/solinas32_2e338m15_14limbs/compilerxx.sh b/src/Specific/solinas32_2e338m15_14limbs/compilerxx.sh
deleted file mode 100755
index 635afc469..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/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,0x00,0x00,0x00,0x00,0x00,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='{25,24,24,24,24,24,24,25,24,24,24,24,24,24}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='43' -Dmodulus_limbs='14' -Dq_mpz='(1_mpz<<338) - 15' "$@"
diff --git a/src/Specific/solinas32_2e338m15_14limbs/feadd.c b/src/Specific/solinas32_2e338m15_14limbs/feadd.c
deleted file mode 100644
index 6b2a8feaf..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/feadd.c
+++ /dev/null
@@ -1,45 +0,0 @@
-static void feadd(uint32_t out[14], const uint32_t in1[14], const uint32_t in2[14]) {
- { const uint32_t x28 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x54 = in2[13];
- { const uint32_t x55 = in2[12];
- { const uint32_t x53 = in2[11];
- { const uint32_t x51 = in2[10];
- { const uint32_t x49 = in2[9];
- { const uint32_t x47 = in2[8];
- { const uint32_t x45 = in2[7];
- { const uint32_t x43 = in2[6];
- { const uint32_t x41 = in2[5];
- { const uint32_t x39 = in2[4];
- { const uint32_t x37 = in2[3];
- { const uint32_t x35 = in2[2];
- { const uint32_t x33 = in2[1];
- { const uint32_t x31 = in2[0];
- out[0] = (x5 + x31);
- out[1] = (x7 + x33);
- out[2] = (x9 + x35);
- out[3] = (x11 + x37);
- out[4] = (x13 + x39);
- out[5] = (x15 + x41);
- out[6] = (x17 + x43);
- out[7] = (x19 + x45);
- out[8] = (x21 + x47);
- out[9] = (x23 + x49);
- out[10] = (x25 + x51);
- out[11] = (x27 + x53);
- out[12] = (x29 + x55);
- out[13] = (x28 + x54);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e338m15_14limbs/feadd.v b/src/Specific/solinas32_2e338m15_14limbs/feadd.v
deleted file mode 100644
index c158dfd4f..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e338m15_14limbs.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_2e338m15_14limbs/feaddDisplay.log b/src/Specific/solinas32_2e338m15_14limbs/feaddDisplay.log
deleted file mode 100644
index ff11bcba0..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x28, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x54, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31))%core,
- ((x28 + x54), (x29 + x55), (x27 + x53), (x25 + x51), (x23 + x49), (x21 + x47), (x19 + x45), (x17 + x43), (x15 + x41), (x13 + x39), (x11 + x37), (x9 + x35), (x7 + x33), (x5 + x31)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e338m15_14limbs/feaddDisplay.v b/src/Specific/solinas32_2e338m15_14limbs/feaddDisplay.v
deleted file mode 100644
index d4fab9552..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e338m15_14limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e338m15_14limbs/fecarry.v b/src/Specific/solinas32_2e338m15_14limbs/fecarry.v
deleted file mode 100644
index 75cc419f2..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e338m15_14limbs.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_2e338m15_14limbs/fecarryDisplay.v b/src/Specific/solinas32_2e338m15_14limbs/fecarryDisplay.v
deleted file mode 100644
index 7ceb63fde..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e338m15_14limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e338m15_14limbs/femul.c b/src/Specific/solinas32_2e338m15_14limbs/femul.c
deleted file mode 100644
index 61d245bf8..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/femul.c
+++ /dev/null
@@ -1,106 +0,0 @@
-static void femul(uint32_t out[14], const uint32_t in1[14], const uint32_t in2[14]) {
- { const uint32_t x28 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x54 = in2[13];
- { const uint32_t x55 = in2[12];
- { const uint32_t x53 = in2[11];
- { const uint32_t x51 = in2[10];
- { const uint32_t x49 = in2[9];
- { const uint32_t x47 = in2[8];
- { const uint32_t x45 = in2[7];
- { const uint32_t x43 = in2[6];
- { const uint32_t x41 = in2[5];
- { const uint32_t x39 = in2[4];
- { const uint32_t x37 = in2[3];
- { const uint32_t x35 = in2[2];
- { const uint32_t x33 = in2[1];
- { const uint32_t x31 = in2[0];
- { uint64_t x56 = (((uint64_t)x5 * x54) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + ((0x2 * ((uint64_t)x25 * x37)) + ((0x2 * ((uint64_t)x27 * x35)) + ((0x2 * ((uint64_t)x29 * x33)) + ((uint64_t)x28 * x31))))))))))))));
- { uint64_t x57 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((0x2 * ((uint64_t)x25 * x35)) + ((0x2 * ((uint64_t)x27 * x33)) + ((uint64_t)x29 * x31))))))))))))) + (0xf * ((uint64_t)x28 * x54)));
- { uint64_t x58 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + ((0x2 * ((uint64_t)x21 * x37)) + ((0x2 * ((uint64_t)x23 * x35)) + ((0x2 * ((uint64_t)x25 * x33)) + ((uint64_t)x27 * x31)))))))))))) + (0xf * (((uint64_t)x29 * x54) + ((uint64_t)x28 * x55))));
- { uint64_t x59 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + ((0x2 * ((uint64_t)x21 * x35)) + ((0x2 * ((uint64_t)x23 * x33)) + ((uint64_t)x25 * x31))))))))))) + (0xf * (((uint64_t)x27 * x54) + (((uint64_t)x29 * x55) + ((uint64_t)x28 * x53)))));
- { uint64_t x60 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + ((0x2 * ((uint64_t)x21 * x33)) + ((uint64_t)x23 * x31)))))))))) + (0xf * (((uint64_t)x25 * x54) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + ((uint64_t)x28 * x51))))));
- { uint64_t x61 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x21 * x31))))))))) + (0xf * (((uint64_t)x23 * x54) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + ((uint64_t)x28 * x49)))))));
- { uint64_t x62 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + ((0x2 * ((uint64_t)x13 * x37)) + ((0x2 * ((uint64_t)x15 * x35)) + ((0x2 * ((uint64_t)x17 * x33)) + ((uint64_t)x19 * x31)))))))) + (0xf * ((0x2 * ((uint64_t)x21 * x54)) + ((0x2 * ((uint64_t)x23 * x55)) + ((0x2 * ((uint64_t)x25 * x53)) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + (0x2 * ((uint64_t)x28 * x47)))))))));
- { uint64_t x63 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + ((0x2 * ((uint64_t)x15 * x33)) + ((uint64_t)x17 * x31))))))) + (0xf * (((uint64_t)x19 * x54) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((uint64_t)x28 * x45)))))))));
- { uint64_t x64 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + ((0x2 * ((uint64_t)x11 * x35)) + ((0x2 * ((uint64_t)x13 * x33)) + ((uint64_t)x15 * x31)))))) + (0xf * (((uint64_t)x17 * x54) + (((uint64_t)x19 * x55) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + (((uint64_t)x29 * x45) + ((uint64_t)x28 * x43))))))))));
- { uint64_t x65 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((uint64_t)x13 * x31))))) + (0xf * (((uint64_t)x15 * x54) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + (((uint64_t)x27 * x45) + (((uint64_t)x29 * x43) + ((uint64_t)x28 * x41)))))))))));
- { uint64_t x66 = ((((uint64_t)x5 * x37) + ((0x2 * ((uint64_t)x7 * x35)) + ((0x2 * ((uint64_t)x9 * x33)) + ((uint64_t)x11 * x31)))) + (0xf * (((uint64_t)x13 * x54) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + ((0x2 * ((uint64_t)x21 * x49)) + ((0x2 * ((uint64_t)x23 * x47)) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (((uint64_t)x29 * x41) + ((uint64_t)x28 * x39))))))))))));
- { uint64_t x67 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((uint64_t)x9 * x31))) + (0xf * (((uint64_t)x11 * x54) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + ((0x2 * ((uint64_t)x21 * x47)) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + (((uint64_t)x27 * x41) + (((uint64_t)x29 * x39) + ((uint64_t)x28 * x37)))))))))))));
- { uint64_t x68 = ((((uint64_t)x5 * x33) + ((uint64_t)x7 * x31)) + (0xf * (((uint64_t)x9 * x54) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + (((uint64_t)x29 * x37) + ((uint64_t)x28 * x35))))))))))))));
- { uint64_t x69 = (((uint64_t)x5 * x31) + (0xf * ((0x2 * ((uint64_t)x7 * x54)) + ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + (((uint64_t)x19 * x45) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + ((0x2 * ((uint64_t)x27 * x37)) + ((0x2 * ((uint64_t)x29 * x35)) + (0x2 * ((uint64_t)x28 * x33))))))))))))))));
- { uint64_t x70 = (x69 >> 0x19);
- { uint32_t x71 = ((uint32_t)x69 & 0x1ffffff);
- { uint64_t x72 = (x70 + x68);
- { uint64_t x73 = (x72 >> 0x18);
- { uint32_t x74 = ((uint32_t)x72 & 0xffffff);
- { uint64_t x75 = (x73 + x67);
- { uint64_t x76 = (x75 >> 0x18);
- { uint32_t x77 = ((uint32_t)x75 & 0xffffff);
- { uint64_t x78 = (x76 + x66);
- { uint64_t x79 = (x78 >> 0x18);
- { uint32_t x80 = ((uint32_t)x78 & 0xffffff);
- { uint64_t x81 = (x79 + x65);
- { uint64_t x82 = (x81 >> 0x18);
- { uint32_t x83 = ((uint32_t)x81 & 0xffffff);
- { uint64_t x84 = (x82 + x64);
- { uint64_t x85 = (x84 >> 0x18);
- { uint32_t x86 = ((uint32_t)x84 & 0xffffff);
- { uint64_t x87 = (x85 + x63);
- { uint64_t x88 = (x87 >> 0x18);
- { uint32_t x89 = ((uint32_t)x87 & 0xffffff);
- { uint64_t x90 = (x88 + x62);
- { uint64_t x91 = (x90 >> 0x19);
- { uint32_t x92 = ((uint32_t)x90 & 0x1ffffff);
- { uint64_t x93 = (x91 + x61);
- { uint64_t x94 = (x93 >> 0x18);
- { uint32_t x95 = ((uint32_t)x93 & 0xffffff);
- { uint64_t x96 = (x94 + x60);
- { uint64_t x97 = (x96 >> 0x18);
- { uint32_t x98 = ((uint32_t)x96 & 0xffffff);
- { uint64_t x99 = (x97 + x59);
- { uint64_t x100 = (x99 >> 0x18);
- { uint32_t x101 = ((uint32_t)x99 & 0xffffff);
- { uint64_t x102 = (x100 + x58);
- { uint64_t x103 = (x102 >> 0x18);
- { uint32_t x104 = ((uint32_t)x102 & 0xffffff);
- { uint64_t x105 = (x103 + x57);
- { uint64_t x106 = (x105 >> 0x18);
- { uint32_t x107 = ((uint32_t)x105 & 0xffffff);
- { uint64_t x108 = (x106 + x56);
- { uint64_t x109 = (x108 >> 0x18);
- { uint32_t x110 = ((uint32_t)x108 & 0xffffff);
- { uint64_t x111 = (x71 + (0xf * x109));
- { uint32_t x112 = (uint32_t) (x111 >> 0x19);
- { uint32_t x113 = ((uint32_t)x111 & 0x1ffffff);
- { uint32_t x114 = (x112 + x74);
- { uint32_t x115 = (x114 >> 0x18);
- { uint32_t x116 = (x114 & 0xffffff);
- out[0] = x113;
- out[1] = x116;
- out[2] = (x115 + x77);
- out[3] = x80;
- out[4] = x83;
- out[5] = x86;
- out[6] = x89;
- out[7] = x92;
- out[8] = x95;
- out[9] = x98;
- out[10] = x101;
- out[11] = x104;
- out[12] = x107;
- out[13] = x110;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e338m15_14limbs/femul.v b/src/Specific/solinas32_2e338m15_14limbs/femul.v
deleted file mode 100644
index 84c00e4ff..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e338m15_14limbs.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_2e338m15_14limbs/femulDisplay.log b/src/Specific/solinas32_2e338m15_14limbs/femulDisplay.log
deleted file mode 100644
index dcbb92107..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/femulDisplay.log
+++ /dev/null
@@ -1,68 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x28, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x54, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31))%core,
- uint64_t x56 = (((uint64_t)x5 * x54) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + ((0x2 * ((uint64_t)x25 * x37)) + ((0x2 * ((uint64_t)x27 * x35)) + ((0x2 * ((uint64_t)x29 * x33)) + ((uint64_t)x28 * x31))))))))))))));
- uint64_t x57 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((0x2 * ((uint64_t)x25 * x35)) + ((0x2 * ((uint64_t)x27 * x33)) + ((uint64_t)x29 * x31))))))))))))) + (0xf * ((uint64_t)x28 * x54)));
- uint64_t x58 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + ((0x2 * ((uint64_t)x21 * x37)) + ((0x2 * ((uint64_t)x23 * x35)) + ((0x2 * ((uint64_t)x25 * x33)) + ((uint64_t)x27 * x31)))))))))))) + (0xf * (((uint64_t)x29 * x54) + ((uint64_t)x28 * x55))));
- uint64_t x59 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + ((0x2 * ((uint64_t)x21 * x35)) + ((0x2 * ((uint64_t)x23 * x33)) + ((uint64_t)x25 * x31))))))))))) + (0xf * (((uint64_t)x27 * x54) + (((uint64_t)x29 * x55) + ((uint64_t)x28 * x53)))));
- uint64_t x60 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + ((0x2 * ((uint64_t)x21 * x33)) + ((uint64_t)x23 * x31)))))))))) + (0xf * (((uint64_t)x25 * x54) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + ((uint64_t)x28 * x51))))));
- uint64_t x61 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + (((uint64_t)x19 * x33) + ((uint64_t)x21 * x31))))))))) + (0xf * (((uint64_t)x23 * x54) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + ((uint64_t)x28 * x49)))))));
- uint64_t x62 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + ((0x2 * ((uint64_t)x13 * x37)) + ((0x2 * ((uint64_t)x15 * x35)) + ((0x2 * ((uint64_t)x17 * x33)) + ((uint64_t)x19 * x31)))))))) + (0xf * ((0x2 * ((uint64_t)x21 * x54)) + ((0x2 * ((uint64_t)x23 * x55)) + ((0x2 * ((uint64_t)x25 * x53)) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + (0x2 * ((uint64_t)x28 * x47)))))))));
- uint64_t x63 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + ((0x2 * ((uint64_t)x15 * x33)) + ((uint64_t)x17 * x31))))))) + (0xf * (((uint64_t)x19 * x54) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((uint64_t)x28 * x45)))))))));
- uint64_t x64 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + ((0x2 * ((uint64_t)x11 * x35)) + ((0x2 * ((uint64_t)x13 * x33)) + ((uint64_t)x15 * x31)))))) + (0xf * (((uint64_t)x17 * x54) + (((uint64_t)x19 * x55) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + (((uint64_t)x29 * x45) + ((uint64_t)x28 * x43))))))))));
- uint64_t x65 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + ((0x2 * ((uint64_t)x11 * x33)) + ((uint64_t)x13 * x31))))) + (0xf * (((uint64_t)x15 * x54) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + (((uint64_t)x27 * x45) + (((uint64_t)x29 * x43) + ((uint64_t)x28 * x41)))))))))));
- uint64_t x66 = ((((uint64_t)x5 * x37) + ((0x2 * ((uint64_t)x7 * x35)) + ((0x2 * ((uint64_t)x9 * x33)) + ((uint64_t)x11 * x31)))) + (0xf * (((uint64_t)x13 * x54) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + ((0x2 * ((uint64_t)x21 * x49)) + ((0x2 * ((uint64_t)x23 * x47)) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (((uint64_t)x29 * x41) + ((uint64_t)x28 * x39))))))))))));
- uint64_t x67 = ((((uint64_t)x5 * x35) + ((0x2 * ((uint64_t)x7 * x33)) + ((uint64_t)x9 * x31))) + (0xf * (((uint64_t)x11 * x54) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + ((0x2 * ((uint64_t)x21 * x47)) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + (((uint64_t)x27 * x41) + (((uint64_t)x29 * x39) + ((uint64_t)x28 * x37)))))))))))));
- uint64_t x68 = ((((uint64_t)x5 * x33) + ((uint64_t)x7 * x31)) + (0xf * (((uint64_t)x9 * x54) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + (((uint64_t)x29 * x37) + ((uint64_t)x28 * x35))))))))))))));
- uint64_t x69 = (((uint64_t)x5 * x31) + (0xf * ((0x2 * ((uint64_t)x7 * x54)) + ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + (((uint64_t)x19 * x45) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + ((0x2 * ((uint64_t)x27 * x37)) + ((0x2 * ((uint64_t)x29 * x35)) + (0x2 * ((uint64_t)x28 * x33))))))))))))))));
- uint64_t x70 = (x69 >> 0x19);
- uint32_t x71 = ((uint32_t)x69 & 0x1ffffff);
- uint64_t x72 = (x70 + x68);
- uint64_t x73 = (x72 >> 0x18);
- uint32_t x74 = ((uint32_t)x72 & 0xffffff);
- uint64_t x75 = (x73 + x67);
- uint64_t x76 = (x75 >> 0x18);
- uint32_t x77 = ((uint32_t)x75 & 0xffffff);
- uint64_t x78 = (x76 + x66);
- uint64_t x79 = (x78 >> 0x18);
- uint32_t x80 = ((uint32_t)x78 & 0xffffff);
- uint64_t x81 = (x79 + x65);
- uint64_t x82 = (x81 >> 0x18);
- uint32_t x83 = ((uint32_t)x81 & 0xffffff);
- uint64_t x84 = (x82 + x64);
- uint64_t x85 = (x84 >> 0x18);
- uint32_t x86 = ((uint32_t)x84 & 0xffffff);
- uint64_t x87 = (x85 + x63);
- uint64_t x88 = (x87 >> 0x18);
- uint32_t x89 = ((uint32_t)x87 & 0xffffff);
- uint64_t x90 = (x88 + x62);
- uint64_t x91 = (x90 >> 0x19);
- uint32_t x92 = ((uint32_t)x90 & 0x1ffffff);
- uint64_t x93 = (x91 + x61);
- uint64_t x94 = (x93 >> 0x18);
- uint32_t x95 = ((uint32_t)x93 & 0xffffff);
- uint64_t x96 = (x94 + x60);
- uint64_t x97 = (x96 >> 0x18);
- uint32_t x98 = ((uint32_t)x96 & 0xffffff);
- uint64_t x99 = (x97 + x59);
- uint64_t x100 = (x99 >> 0x18);
- uint32_t x101 = ((uint32_t)x99 & 0xffffff);
- uint64_t x102 = (x100 + x58);
- uint64_t x103 = (x102 >> 0x18);
- uint32_t x104 = ((uint32_t)x102 & 0xffffff);
- uint64_t x105 = (x103 + x57);
- uint64_t x106 = (x105 >> 0x18);
- uint32_t x107 = ((uint32_t)x105 & 0xffffff);
- uint64_t x108 = (x106 + x56);
- uint64_t x109 = (x108 >> 0x18);
- uint32_t x110 = ((uint32_t)x108 & 0xffffff);
- uint64_t x111 = (x71 + (0xf * x109));
- uint32_t x112 = (uint32_t) (x111 >> 0x19);
- uint32_t x113 = ((uint32_t)x111 & 0x1ffffff);
- uint32_t x114 = (x112 + x74);
- uint32_t x115 = (x114 >> 0x18);
- uint32_t x116 = (x114 & 0xffffff);
- return (Return x110, Return x107, Return x104, Return x101, Return x98, Return x95, Return x92, Return x89, Return x86, Return x83, Return x80, (x115 + x77), Return x116, Return x113))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e338m15_14limbs/femulDisplay.v b/src/Specific/solinas32_2e338m15_14limbs/femulDisplay.v
deleted file mode 100644
index e6943af34..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e338m15_14limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e338m15_14limbs/fesquare.c b/src/Specific/solinas32_2e338m15_14limbs/fesquare.c
deleted file mode 100644
index 37e2bc76c..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/fesquare.c
+++ /dev/null
@@ -1,92 +0,0 @@
-static void fesquare(uint32_t out[14], const uint32_t in1[14]) {
- { const uint32_t x25 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x27 = (((uint64_t)x2 * x25) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x25 * x2))))))))))))));
- { uint64_t x28 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + ((0x2 * ((uint64_t)x10 * x18)) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + ((0x2 * ((uint64_t)x18 * x10)) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0xf * ((uint64_t)x25 * x25)));
- { uint64_t x29 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0xf * (((uint64_t)x26 * x25) + ((uint64_t)x25 * x26))));
- { uint64_t x30 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0xf * (((uint64_t)x24 * x25) + (((uint64_t)x26 * x26) + ((uint64_t)x25 * x24)))));
- { uint64_t x31 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0xf * (((uint64_t)x22 * x25) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + ((uint64_t)x25 * x22))))));
- { uint64_t x32 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0xf * (((uint64_t)x20 * x25) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + ((uint64_t)x25 * x20)))))));
- { uint64_t x33 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0xf * ((0x2 * ((uint64_t)x18 * x25)) + ((0x2 * ((uint64_t)x20 * x26)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + ((0x2 * ((uint64_t)x26 * x20)) + (0x2 * ((uint64_t)x25 * x18)))))))));
- { uint64_t x34 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0xf * (((uint64_t)x16 * x25) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + ((0x2 * ((uint64_t)x22 * x22)) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((uint64_t)x25 * x16)))))))));
- { uint64_t x35 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0xf * (((uint64_t)x14 * x25) + (((uint64_t)x16 * x26) + ((0x2 * ((uint64_t)x18 * x24)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((0x2 * ((uint64_t)x24 * x18)) + (((uint64_t)x26 * x16) + ((uint64_t)x25 * x14))))))))));
- { uint64_t x36 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0xf * (((uint64_t)x12 * x25) + (((uint64_t)x14 * x26) + (((uint64_t)x16 * x24) + ((0x2 * ((uint64_t)x18 * x22)) + ((0x2 * ((uint64_t)x20 * x20)) + ((0x2 * ((uint64_t)x22 * x18)) + (((uint64_t)x24 * x16) + (((uint64_t)x26 * x14) + ((uint64_t)x25 * x12)))))))))));
- { uint64_t x37 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0xf * (((uint64_t)x10 * x25) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + (((uint64_t)x16 * x22) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + ((uint64_t)x25 * x10))))))))))));
- { uint64_t x38 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0xf * (((uint64_t)x8 * x25) + (((uint64_t)x10 * x26) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + ((0x2 * ((uint64_t)x18 * x18)) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + (((uint64_t)x26 * x10) + ((uint64_t)x25 * x8)))))))))))));
- { uint64_t x39 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xf * (((uint64_t)x6 * x25) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + ((uint64_t)x25 * x6))))))))))))));
- { uint64_t x40 = (((uint64_t)x2 * x2) + (0xf * ((0x2 * ((uint64_t)x4 * x25)) + ((0x2 * ((uint64_t)x6 * x26)) + ((0x2 * ((uint64_t)x8 * x24)) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + ((0x2 * ((uint64_t)x24 * x8)) + ((0x2 * ((uint64_t)x26 * x6)) + (0x2 * ((uint64_t)x25 * x4))))))))))))))));
- { uint64_t x41 = (x40 >> 0x19);
- { uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- { uint64_t x43 = (x41 + x39);
- { uint64_t x44 = (x43 >> 0x18);
- { uint32_t x45 = ((uint32_t)x43 & 0xffffff);
- { uint64_t x46 = (x44 + x38);
- { uint64_t x47 = (x46 >> 0x18);
- { uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- { uint64_t x49 = (x47 + x37);
- { uint64_t x50 = (x49 >> 0x18);
- { uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- { uint64_t x52 = (x50 + x36);
- { uint64_t x53 = (x52 >> 0x18);
- { uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- { uint64_t x55 = (x53 + x35);
- { uint64_t x56 = (x55 >> 0x18);
- { uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- { uint64_t x58 = (x56 + x34);
- { uint64_t x59 = (x58 >> 0x18);
- { uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- { uint64_t x61 = (x59 + x33);
- { uint64_t x62 = (x61 >> 0x19);
- { uint32_t x63 = ((uint32_t)x61 & 0x1ffffff);
- { uint64_t x64 = (x62 + x32);
- { uint64_t x65 = (x64 >> 0x18);
- { uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- { uint64_t x67 = (x65 + x31);
- { uint64_t x68 = (x67 >> 0x18);
- { uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- { uint64_t x70 = (x68 + x30);
- { uint64_t x71 = (x70 >> 0x18);
- { uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- { uint64_t x73 = (x71 + x29);
- { uint64_t x74 = (x73 >> 0x18);
- { uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- { uint64_t x76 = (x74 + x28);
- { uint64_t x77 = (x76 >> 0x18);
- { uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- { uint64_t x79 = (x77 + x27);
- { uint64_t x80 = (x79 >> 0x18);
- { uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- { uint64_t x82 = (x42 + (0xf * x80));
- { uint32_t x83 = (uint32_t) (x82 >> 0x19);
- { uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- { uint32_t x85 = (x83 + x45);
- { uint32_t x86 = (x85 >> 0x18);
- { uint32_t x87 = (x85 & 0xffffff);
- out[0] = x84;
- out[1] = x87;
- out[2] = (x86 + x48);
- out[3] = x51;
- out[4] = x54;
- out[5] = x57;
- out[6] = x60;
- out[7] = x63;
- out[8] = x66;
- out[9] = x69;
- out[10] = x72;
- out[11] = x75;
- out[12] = x78;
- out[13] = x81;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e338m15_14limbs/fesquare.v b/src/Specific/solinas32_2e338m15_14limbs/fesquare.v
deleted file mode 100644
index 36eca3b61..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e338m15_14limbs.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_2e338m15_14limbs/fesquareDisplay.log b/src/Specific/solinas32_2e338m15_14limbs/fesquareDisplay.log
deleted file mode 100644
index 34d67b773..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,68 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x25, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x27 = (((uint64_t)x2 * x25) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x25 * x2))))))))))))));
- uint64_t x28 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + ((0x2 * ((uint64_t)x10 * x18)) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + ((0x2 * ((uint64_t)x18 * x10)) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0xf * ((uint64_t)x25 * x25)));
- uint64_t x29 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0xf * (((uint64_t)x26 * x25) + ((uint64_t)x25 * x26))));
- uint64_t x30 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0xf * (((uint64_t)x24 * x25) + (((uint64_t)x26 * x26) + ((uint64_t)x25 * x24)))));
- uint64_t x31 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0xf * (((uint64_t)x22 * x25) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + ((uint64_t)x25 * x22))))));
- uint64_t x32 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0xf * (((uint64_t)x20 * x25) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + ((uint64_t)x25 * x20)))))));
- uint64_t x33 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0xf * ((0x2 * ((uint64_t)x18 * x25)) + ((0x2 * ((uint64_t)x20 * x26)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + ((0x2 * ((uint64_t)x26 * x20)) + (0x2 * ((uint64_t)x25 * x18)))))))));
- uint64_t x34 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0xf * (((uint64_t)x16 * x25) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + ((0x2 * ((uint64_t)x22 * x22)) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((uint64_t)x25 * x16)))))))));
- uint64_t x35 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0xf * (((uint64_t)x14 * x25) + (((uint64_t)x16 * x26) + ((0x2 * ((uint64_t)x18 * x24)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((0x2 * ((uint64_t)x24 * x18)) + (((uint64_t)x26 * x16) + ((uint64_t)x25 * x14))))))))));
- uint64_t x36 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0xf * (((uint64_t)x12 * x25) + (((uint64_t)x14 * x26) + (((uint64_t)x16 * x24) + ((0x2 * ((uint64_t)x18 * x22)) + ((0x2 * ((uint64_t)x20 * x20)) + ((0x2 * ((uint64_t)x22 * x18)) + (((uint64_t)x24 * x16) + (((uint64_t)x26 * x14) + ((uint64_t)x25 * x12)))))))))));
- uint64_t x37 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0xf * (((uint64_t)x10 * x25) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + (((uint64_t)x16 * x22) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + ((uint64_t)x25 * x10))))))))))));
- uint64_t x38 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0xf * (((uint64_t)x8 * x25) + (((uint64_t)x10 * x26) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + ((0x2 * ((uint64_t)x18 * x18)) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + (((uint64_t)x26 * x10) + ((uint64_t)x25 * x8)))))))))))));
- uint64_t x39 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xf * (((uint64_t)x6 * x25) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + ((uint64_t)x25 * x6))))))))))))));
- uint64_t x40 = (((uint64_t)x2 * x2) + (0xf * ((0x2 * ((uint64_t)x4 * x25)) + ((0x2 * ((uint64_t)x6 * x26)) + ((0x2 * ((uint64_t)x8 * x24)) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + ((0x2 * ((uint64_t)x24 * x8)) + ((0x2 * ((uint64_t)x26 * x6)) + (0x2 * ((uint64_t)x25 * x4))))))))))))))));
- uint64_t x41 = (x40 >> 0x19);
- uint32_t x42 = ((uint32_t)x40 & 0x1ffffff);
- uint64_t x43 = (x41 + x39);
- uint64_t x44 = (x43 >> 0x18);
- uint32_t x45 = ((uint32_t)x43 & 0xffffff);
- uint64_t x46 = (x44 + x38);
- uint64_t x47 = (x46 >> 0x18);
- uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- uint64_t x49 = (x47 + x37);
- uint64_t x50 = (x49 >> 0x18);
- uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- uint64_t x52 = (x50 + x36);
- uint64_t x53 = (x52 >> 0x18);
- uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- uint64_t x55 = (x53 + x35);
- uint64_t x56 = (x55 >> 0x18);
- uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- uint64_t x58 = (x56 + x34);
- uint64_t x59 = (x58 >> 0x18);
- uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- uint64_t x61 = (x59 + x33);
- uint64_t x62 = (x61 >> 0x19);
- uint32_t x63 = ((uint32_t)x61 & 0x1ffffff);
- uint64_t x64 = (x62 + x32);
- uint64_t x65 = (x64 >> 0x18);
- uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- uint64_t x67 = (x65 + x31);
- uint64_t x68 = (x67 >> 0x18);
- uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- uint64_t x70 = (x68 + x30);
- uint64_t x71 = (x70 >> 0x18);
- uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- uint64_t x73 = (x71 + x29);
- uint64_t x74 = (x73 >> 0x18);
- uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- uint64_t x76 = (x74 + x28);
- uint64_t x77 = (x76 >> 0x18);
- uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- uint64_t x79 = (x77 + x27);
- uint64_t x80 = (x79 >> 0x18);
- uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- uint64_t x82 = (x42 + (0xf * x80));
- uint32_t x83 = (uint32_t) (x82 >> 0x19);
- uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- uint32_t x85 = (x83 + x45);
- uint32_t x86 = (x85 >> 0x18);
- uint32_t x87 = (x85 & 0xffffff);
- return (Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, Return x57, Return x54, Return x51, (x86 + x48), Return x87, Return x84))
-x
- : word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e338m15_14limbs/fesquareDisplay.v b/src/Specific/solinas32_2e338m15_14limbs/fesquareDisplay.v
deleted file mode 100644
index 4611f1d3f..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e338m15_14limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e338m15_14limbs/fesub.c b/src/Specific/solinas32_2e338m15_14limbs/fesub.c
deleted file mode 100644
index 5573e5737..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/fesub.c
+++ /dev/null
@@ -1,45 +0,0 @@
-static void fesub(uint32_t out[14], const uint32_t in1[14], const uint32_t in2[14]) {
- { const uint32_t x28 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x54 = in2[13];
- { const uint32_t x55 = in2[12];
- { const uint32_t x53 = in2[11];
- { const uint32_t x51 = in2[10];
- { const uint32_t x49 = in2[9];
- { const uint32_t x47 = in2[8];
- { const uint32_t x45 = in2[7];
- { const uint32_t x43 = in2[6];
- { const uint32_t x41 = in2[5];
- { const uint32_t x39 = in2[4];
- { const uint32_t x37 = in2[3];
- { const uint32_t x35 = in2[2];
- { const uint32_t x33 = in2[1];
- { const uint32_t x31 = in2[0];
- out[0] = ((0x3ffffe2 + x5) - x31);
- out[1] = ((0x1fffffe + x7) - x33);
- out[2] = ((0x1fffffe + x9) - x35);
- out[3] = ((0x1fffffe + x11) - x37);
- out[4] = ((0x1fffffe + x13) - x39);
- out[5] = ((0x1fffffe + x15) - x41);
- out[6] = ((0x1fffffe + x17) - x43);
- out[7] = ((0x3fffffe + x19) - x45);
- out[8] = ((0x1fffffe + x21) - x47);
- out[9] = ((0x1fffffe + x23) - x49);
- out[10] = ((0x1fffffe + x25) - x51);
- out[11] = ((0x1fffffe + x27) - x53);
- out[12] = ((0x1fffffe + x29) - x55);
- out[13] = ((0x1fffffe + x28) - x54);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e338m15_14limbs/fesub.v b/src/Specific/solinas32_2e338m15_14limbs/fesub.v
deleted file mode 100644
index c815697a0..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e338m15_14limbs.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_2e338m15_14limbs/fesubDisplay.log b/src/Specific/solinas32_2e338m15_14limbs/fesubDisplay.log
deleted file mode 100644
index 8af6fc90e..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x28, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x54, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31))%core,
- (((0x1fffffe + x28) - x54), ((0x1fffffe + x29) - x55), ((0x1fffffe + x27) - x53), ((0x1fffffe + x25) - x51), ((0x1fffffe + x23) - x49), ((0x1fffffe + x21) - x47), ((0x3fffffe + x19) - x45), ((0x1fffffe + x17) - x43), ((0x1fffffe + x15) - x41), ((0x1fffffe + x13) - x39), ((0x1fffffe + x11) - x37), ((0x1fffffe + x9) - x35), ((0x1fffffe + x7) - x33), ((0x3ffffe2 + x5) - x31)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e338m15_14limbs/fesubDisplay.v b/src/Specific/solinas32_2e338m15_14limbs/fesubDisplay.v
deleted file mode 100644
index b1107f434..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e338m15_14limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e338m15_14limbs/freeze.c b/src/Specific/solinas32_2e338m15_14limbs/freeze.c
deleted file mode 100644
index e70224f70..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/freeze.c
+++ /dev/null
@@ -1,74 +0,0 @@
-static void freeze(uint32_t out[14], const uint32_t in1[14]) {
- { const uint32_t x25 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffff1);
- { uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x4, 0xffffff);
- { uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x6, 0xffffff);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x8, 0xffffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x10, 0xffffff);
- { uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x12, 0xffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x14, 0xffffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x16, 0x1ffffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x18, 0xffffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x20, 0xffffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x22, 0xffffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x24, 0xffffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x26, 0xffffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x25, 0xffffff);
- { uint32_t x69 = cmovznz32(x68, 0x0, 0xffffffff);
- { uint32_t x70 = (x69 & 0x1fffff1);
- { uint32_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x28, Return x70);
- { uint32_t x74 = (x69 & 0xffffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x31, Return x74);
- { uint32_t x78 = (x69 & 0xffffff);
- { uint32_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x34, Return x78);
- { uint32_t x82 = (x69 & 0xffffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x37, Return x82);
- { uint32_t x86 = (x69 & 0xffffff);
- { uint32_t x88, uint8_t x89 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x40, Return x86);
- { uint32_t x90 = (x69 & 0xffffff);
- { uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x89, Return x43, Return x90);
- { uint32_t x94 = (x69 & 0xffffff);
- { uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x46, Return x94);
- { uint32_t x98 = (x69 & 0x1ffffff);
- { uint32_t x100, uint8_t x101 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x49, Return x98);
- { uint32_t x102 = (x69 & 0xffffff);
- { uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x52, Return x102);
- { uint32_t x106 = (x69 & 0xffffff);
- { uint32_t x108, uint8_t x109 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x55, Return x106);
- { uint32_t x110 = (x69 & 0xffffff);
- { uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x58, Return x110);
- { uint32_t x114 = (x69 & 0xffffff);
- { uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x61, Return x114);
- { uint32_t x118 = (x69 & 0xffffff);
- { uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x64, Return x118);
- { uint32_t x122 = (x69 & 0xffffff);
- { uint32_t x124, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x67, Return x122);
- out[0] = x72;
- out[1] = x76;
- out[2] = x80;
- out[3] = x84;
- out[4] = x88;
- out[5] = x92;
- out[6] = x96;
- out[7] = x100;
- out[8] = x104;
- out[9] = x108;
- out[10] = x112;
- out[11] = x116;
- out[12] = x120;
- out[13] = x124;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e338m15_14limbs/freeze.v b/src/Specific/solinas32_2e338m15_14limbs/freeze.v
deleted file mode 100644
index 858a769ec..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e338m15_14limbs.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_2e338m15_14limbs/freezeDisplay.log b/src/Specific/solinas32_2e338m15_14limbs/freezeDisplay.log
deleted file mode 100644
index 55b57957b..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/freezeDisplay.log
+++ /dev/null
@@ -1,50 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x25, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffff1);
- uint32_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x29, Return x4, 0xffffff);
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x32, Return x6, 0xffffff);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x8, 0xffffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x10, 0xffffff);
- uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x12, 0xffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x14, 0xffffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x16, 0x1ffffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x18, 0xffffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x20, 0xffffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x22, 0xffffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x24, 0xffffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x26, 0xffffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x25, 0xffffff);
- uint32_t x69 = cmovznz32(x68, 0x0, 0xffffffff);
- uint32_t x70 = (x69 & 0x1fffff1);
- uint32_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x28, Return x70);
- uint32_t x74 = (x69 & 0xffffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x31, Return x74);
- uint32_t x78 = (x69 & 0xffffff);
- uint32_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x34, Return x78);
- uint32_t x82 = (x69 & 0xffffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x37, Return x82);
- uint32_t x86 = (x69 & 0xffffff);
- uint32_t x88, uint8_t x89 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x40, Return x86);
- uint32_t x90 = (x69 & 0xffffff);
- uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x89, Return x43, Return x90);
- uint32_t x94 = (x69 & 0xffffff);
- uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x46, Return x94);
- uint32_t x98 = (x69 & 0x1ffffff);
- uint32_t x100, uint8_t x101 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x49, Return x98);
- uint32_t x102 = (x69 & 0xffffff);
- uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x52, Return x102);
- uint32_t x106 = (x69 & 0xffffff);
- uint32_t x108, uint8_t x109 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x55, Return x106);
- uint32_t x110 = (x69 & 0xffffff);
- uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x58, Return x110);
- uint32_t x114 = (x69 & 0xffffff);
- uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x61, Return x114);
- uint32_t x118 = (x69 & 0xffffff);
- uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x64, Return x118);
- uint32_t x122 = (x69 & 0xffffff);
- uint32_t x124, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x67, Return x122);
- (Return x124, Return x120, Return x116, Return x112, Return x108, Return x104, Return x100, Return x96, Return x92, Return x88, Return x84, Return x80, Return x76, Return x72))
-x
- : word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e338m15_14limbs/freezeDisplay.v b/src/Specific/solinas32_2e338m15_14limbs/freezeDisplay.v
deleted file mode 100644
index 187a2a775..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e338m15_14limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e338m15_14limbs/py_interpreter.sh b/src/Specific/solinas32_2e338m15_14limbs/py_interpreter.sh
deleted file mode 100755
index cf51489ce..000000000
--- a/src/Specific/solinas32_2e338m15_14limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**338 - 15' -Dmodulus_bytes='24 + 1/7' -Da24='121665'
diff --git a/src/Specific/solinas32_2e369m25_15limbs/CurveParameters.v b/src/Specific/solinas32_2e369m25_15limbs/CurveParameters.v
deleted file mode 100644
index 23d96973b..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^369 - 25
-Base: 24.6
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 15%nat;
- base := 24 + 3/5;
- bitwidth := 32;
- s := 2^369;
- c := [(1, 25)];
- carry_chains := Some [seq 0 (pred 15); [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_2e369m25_15limbs/Synthesis.v b/src/Specific/solinas32_2e369m25_15limbs/Synthesis.v
deleted file mode 100644
index 25da195f3..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e369m25_15limbs.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_2e369m25_15limbs/compiler.sh b/src/Specific/solinas32_2e369m25_15limbs/compiler.sh
deleted file mode 100755
index af73aaeac..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,25,24,25,24,25,25,24,25,24,25,25,24,25,24}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='47' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<369) - 25' "$@"
diff --git a/src/Specific/solinas32_2e369m25_15limbs/compilerxx.sh b/src/Specific/solinas32_2e369m25_15limbs/compilerxx.sh
deleted file mode 100755
index ee0fcbb56..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,25,24,25,24,25,25,24,25,24,25,25,24,25,24}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='47' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<369) - 25' "$@"
diff --git a/src/Specific/solinas32_2e369m25_15limbs/feadd.c b/src/Specific/solinas32_2e369m25_15limbs/feadd.c
deleted file mode 100644
index 72a59425b..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/feadd.c
+++ /dev/null
@@ -1,48 +0,0 @@
-static void feadd(uint32_t out[15], const uint32_t in1[15], const uint32_t in2[15]) {
- { const uint32_t x30 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x58 = in2[14];
- { const uint32_t x59 = in2[13];
- { const uint32_t x57 = in2[12];
- { const uint32_t x55 = in2[11];
- { const uint32_t x53 = in2[10];
- { const uint32_t x51 = in2[9];
- { const uint32_t x49 = in2[8];
- { const uint32_t x47 = in2[7];
- { const uint32_t x45 = in2[6];
- { const uint32_t x43 = in2[5];
- { const uint32_t x41 = in2[4];
- { const uint32_t x39 = in2[3];
- { const uint32_t x37 = in2[2];
- { const uint32_t x35 = in2[1];
- { const uint32_t x33 = in2[0];
- out[0] = (x5 + x33);
- out[1] = (x7 + x35);
- out[2] = (x9 + x37);
- out[3] = (x11 + x39);
- out[4] = (x13 + x41);
- out[5] = (x15 + x43);
- out[6] = (x17 + x45);
- out[7] = (x19 + x47);
- out[8] = (x21 + x49);
- out[9] = (x23 + x51);
- out[10] = (x25 + x53);
- out[11] = (x27 + x55);
- out[12] = (x29 + x57);
- out[13] = (x31 + x59);
- out[14] = (x30 + x58);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e369m25_15limbs/feadd.v b/src/Specific/solinas32_2e369m25_15limbs/feadd.v
deleted file mode 100644
index 48efdb3f2..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e369m25_15limbs.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_2e369m25_15limbs/feaddDisplay.log b/src/Specific/solinas32_2e369m25_15limbs/feaddDisplay.log
deleted file mode 100644
index 08d611628..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x30, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x58, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33))%core,
- ((x30 + x58), (x31 + x59), (x29 + x57), (x27 + x55), (x25 + x53), (x23 + x51), (x21 + x49), (x19 + x47), (x17 + x45), (x15 + x43), (x13 + x41), (x11 + x39), (x9 + x37), (x7 + x35), (x5 + x33)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e369m25_15limbs/feaddDisplay.v b/src/Specific/solinas32_2e369m25_15limbs/feaddDisplay.v
deleted file mode 100644
index 7752e301b..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e369m25_15limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e369m25_15limbs/fecarry.v b/src/Specific/solinas32_2e369m25_15limbs/fecarry.v
deleted file mode 100644
index 31da916c4..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e369m25_15limbs.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_2e369m25_15limbs/fecarryDisplay.v b/src/Specific/solinas32_2e369m25_15limbs/fecarryDisplay.v
deleted file mode 100644
index 8f4e06103..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e369m25_15limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e369m25_15limbs/femul.c b/src/Specific/solinas32_2e369m25_15limbs/femul.c
deleted file mode 100644
index 332b88a70..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/femul.c
+++ /dev/null
@@ -1,113 +0,0 @@
-static void femul(uint32_t out[15], const uint32_t in1[15], const uint32_t in2[15]) {
- { const uint32_t x30 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x58 = in2[14];
- { const uint32_t x59 = in2[13];
- { const uint32_t x57 = in2[12];
- { const uint32_t x55 = in2[11];
- { const uint32_t x53 = in2[10];
- { const uint32_t x51 = in2[9];
- { const uint32_t x49 = in2[8];
- { const uint32_t x47 = in2[7];
- { const uint32_t x45 = in2[6];
- { const uint32_t x43 = in2[5];
- { const uint32_t x41 = in2[4];
- { const uint32_t x39 = in2[3];
- { const uint32_t x37 = in2[2];
- { const uint32_t x35 = in2[1];
- { const uint32_t x33 = in2[0];
- { uint64_t x60 = (((uint64_t)x5 * x58) + (((uint64_t)x7 * x59) + ((0x2 * ((uint64_t)x9 * x57)) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + ((0x2 * ((uint64_t)x29 * x37)) + (((uint64_t)x31 * x35) + ((uint64_t)x30 * x33)))))))))))))));
- { uint64_t x61 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + (((uint64_t)x11 * x53) + ((0x2 * ((uint64_t)x13 * x51)) + (((uint64_t)x15 * x49) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + (((uint64_t)x25 * x39) + ((0x2 * ((uint64_t)x27 * x37)) + ((0x2 * ((uint64_t)x29 * x35)) + ((uint64_t)x31 * x33)))))))))))))) + (0x19 * (0x2 * ((uint64_t)x30 * x58))));
- { uint64_t x62 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + (((uint64_t)x25 * x37) + (((uint64_t)x27 * x35) + ((uint64_t)x29 * x33))))))))))))) + (0x19 * (((uint64_t)x31 * x58) + ((uint64_t)x30 * x59))));
- { uint64_t x63 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + ((0x2 * ((uint64_t)x9 * x51)) + (((uint64_t)x11 * x49) + ((0x2 * ((uint64_t)x13 * x47)) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((0x2 * ((uint64_t)x19 * x41)) + (((uint64_t)x21 * x39) + ((0x2 * ((uint64_t)x23 * x37)) + (((uint64_t)x25 * x35) + ((uint64_t)x27 * x33)))))))))))) + (0x19 * ((0x2 * ((uint64_t)x29 * x58)) + (((uint64_t)x31 * x59) + (0x2 * ((uint64_t)x30 * x57))))));
- { uint64_t x64 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + ((0x2 * ((uint64_t)x23 * x35)) + ((uint64_t)x25 * x33))))))))))) + (0x19 * ((0x2 * ((uint64_t)x27 * x58)) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + (0x2 * ((uint64_t)x30 * x55)))))));
- { uint64_t x65 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + ((0x2 * ((uint64_t)x9 * x47)) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + ((uint64_t)x23 * x33)))))))))) + (0x19 * (((uint64_t)x25 * x58) + (((uint64_t)x27 * x59) + ((0x2 * ((uint64_t)x29 * x57)) + (((uint64_t)x31 * x55) + ((uint64_t)x30 * x53)))))));
- { uint64_t x66 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + (((uint64_t)x15 * x39) + ((0x2 * ((uint64_t)x17 * x37)) + ((0x2 * ((uint64_t)x19 * x35)) + ((uint64_t)x21 * x33))))))))) + (0x19 * ((0x2 * ((uint64_t)x23 * x58)) + (((uint64_t)x25 * x59) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + (((uint64_t)x31 * x53) + (0x2 * ((uint64_t)x30 * x51)))))))));
- { uint64_t x67 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + ((uint64_t)x19 * x33)))))))) + (0x19 * (((uint64_t)x21 * x58) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + ((uint64_t)x30 * x49)))))))));
- { uint64_t x68 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + (((uint64_t)x11 * x39) + ((0x2 * ((uint64_t)x13 * x37)) + (((uint64_t)x15 * x35) + ((uint64_t)x17 * x33))))))) + (0x19 * ((0x2 * ((uint64_t)x19 * x58)) + (((uint64_t)x21 * x59) + ((0x2 * ((uint64_t)x23 * x57)) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + ((0x2 * ((uint64_t)x29 * x51)) + (((uint64_t)x31 * x49) + (0x2 * ((uint64_t)x30 * x47)))))))))));
- { uint64_t x69 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + ((uint64_t)x15 * x33)))))) + (0x19 * ((0x2 * ((uint64_t)x17 * x58)) + ((0x2 * ((uint64_t)x19 * x59)) + ((0x2 * ((uint64_t)x21 * x57)) + ((0x2 * ((uint64_t)x23 * x55)) + (((uint64_t)x25 * x53) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + (0x2 * ((uint64_t)x30 * x45))))))))))));
- { uint64_t x70 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + ((0x2 * ((uint64_t)x9 * x37)) + (((uint64_t)x11 * x35) + ((uint64_t)x13 * x33))))) + (0x19 * (((uint64_t)x15 * x58) + (((uint64_t)x17 * x59) + ((0x2 * ((uint64_t)x19 * x57)) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + ((0x2 * ((uint64_t)x29 * x47)) + (((uint64_t)x31 * x45) + ((uint64_t)x30 * x43))))))))))));
- { uint64_t x71 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + ((uint64_t)x11 * x33)))) + (0x19 * ((0x2 * ((uint64_t)x13 * x58)) + (((uint64_t)x15 * x59) + ((0x2 * ((uint64_t)x17 * x57)) + ((0x2 * ((uint64_t)x19 * x55)) + (((uint64_t)x21 * x53) + ((0x2 * ((uint64_t)x23 * x51)) + (((uint64_t)x25 * x49) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + (((uint64_t)x31 * x43) + (0x2 * ((uint64_t)x30 * x41))))))))))))));
- { uint64_t x72 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + ((uint64_t)x9 * x33))) + (0x19 * (((uint64_t)x11 * x58) + (((uint64_t)x13 * x59) + (((uint64_t)x15 * x57) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + (((uint64_t)x29 * x43) + (((uint64_t)x31 * x41) + ((uint64_t)x30 * x39))))))))))))));
- { uint64_t x73 = ((((uint64_t)x5 * x35) + ((uint64_t)x7 * x33)) + (0x19 * ((0x2 * ((uint64_t)x9 * x58)) + (((uint64_t)x11 * x59) + ((0x2 * ((uint64_t)x13 * x57)) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + ((0x2 * ((uint64_t)x19 * x51)) + (((uint64_t)x21 * x49) + ((0x2 * ((uint64_t)x23 * x47)) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + ((0x2 * ((uint64_t)x29 * x41)) + (((uint64_t)x31 * x39) + (0x2 * ((uint64_t)x30 * x37))))))))))))))));
- { uint64_t x74 = (((uint64_t)x5 * x33) + (0x19 * ((0x2 * ((uint64_t)x7 * x58)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + (((uint64_t)x15 * x53) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + (((uint64_t)x25 * x43) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((0x2 * ((uint64_t)x31 * x37)) + (0x2 * ((uint64_t)x30 * x35)))))))))))))))));
- { uint64_t x75 = (x74 >> 0x19);
- { uint32_t x76 = ((uint32_t)x74 & 0x1ffffff);
- { uint64_t x77 = (x75 + x73);
- { uint64_t x78 = (x77 >> 0x19);
- { uint32_t x79 = ((uint32_t)x77 & 0x1ffffff);
- { uint64_t x80 = (x78 + x72);
- { uint64_t x81 = (x80 >> 0x18);
- { uint32_t x82 = ((uint32_t)x80 & 0xffffff);
- { uint64_t x83 = (x81 + x71);
- { uint64_t x84 = (x83 >> 0x19);
- { uint32_t x85 = ((uint32_t)x83 & 0x1ffffff);
- { uint64_t x86 = (x84 + x70);
- { uint64_t x87 = (x86 >> 0x18);
- { uint32_t x88 = ((uint32_t)x86 & 0xffffff);
- { uint64_t x89 = (x87 + x69);
- { uint64_t x90 = (x89 >> 0x19);
- { uint32_t x91 = ((uint32_t)x89 & 0x1ffffff);
- { uint64_t x92 = (x90 + x68);
- { uint64_t x93 = (x92 >> 0x19);
- { uint32_t x94 = ((uint32_t)x92 & 0x1ffffff);
- { uint64_t x95 = (x93 + x67);
- { uint64_t x96 = (x95 >> 0x18);
- { uint32_t x97 = ((uint32_t)x95 & 0xffffff);
- { uint64_t x98 = (x96 + x66);
- { uint64_t x99 = (x98 >> 0x19);
- { uint32_t x100 = ((uint32_t)x98 & 0x1ffffff);
- { uint64_t x101 = (x99 + x65);
- { uint64_t x102 = (x101 >> 0x18);
- { uint32_t x103 = ((uint32_t)x101 & 0xffffff);
- { uint64_t x104 = (x102 + x64);
- { uint64_t x105 = (x104 >> 0x19);
- { uint32_t x106 = ((uint32_t)x104 & 0x1ffffff);
- { uint64_t x107 = (x105 + x63);
- { uint64_t x108 = (x107 >> 0x19);
- { uint32_t x109 = ((uint32_t)x107 & 0x1ffffff);
- { uint64_t x110 = (x108 + x62);
- { uint64_t x111 = (x110 >> 0x18);
- { uint32_t x112 = ((uint32_t)x110 & 0xffffff);
- { uint64_t x113 = (x111 + x61);
- { uint64_t x114 = (x113 >> 0x19);
- { uint32_t x115 = ((uint32_t)x113 & 0x1ffffff);
- { uint64_t x116 = (x114 + x60);
- { uint64_t x117 = (x116 >> 0x18);
- { uint32_t x118 = ((uint32_t)x116 & 0xffffff);
- { uint64_t x119 = (x76 + (0x19 * x117));
- { uint32_t x120 = (uint32_t) (x119 >> 0x19);
- { uint32_t x121 = ((uint32_t)x119 & 0x1ffffff);
- { uint32_t x122 = (x120 + x79);
- { uint32_t x123 = (x122 >> 0x19);
- { uint32_t x124 = (x122 & 0x1ffffff);
- out[0] = x121;
- out[1] = x124;
- out[2] = (x123 + x82);
- out[3] = x85;
- out[4] = x88;
- out[5] = x91;
- out[6] = x94;
- out[7] = x97;
- out[8] = x100;
- out[9] = x103;
- out[10] = x106;
- out[11] = x109;
- out[12] = x112;
- out[13] = x115;
- out[14] = x118;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e369m25_15limbs/femul.v b/src/Specific/solinas32_2e369m25_15limbs/femul.v
deleted file mode 100644
index 0451ed7bb..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e369m25_15limbs.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_2e369m25_15limbs/femulDisplay.log b/src/Specific/solinas32_2e369m25_15limbs/femulDisplay.log
deleted file mode 100644
index 6ae70205b..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/femulDisplay.log
+++ /dev/null
@@ -1,72 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x30, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x58, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33))%core,
- uint64_t x60 = (((uint64_t)x5 * x58) + (((uint64_t)x7 * x59) + ((0x2 * ((uint64_t)x9 * x57)) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + ((0x2 * ((uint64_t)x29 * x37)) + (((uint64_t)x31 * x35) + ((uint64_t)x30 * x33)))))))))))))));
- uint64_t x61 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + (((uint64_t)x11 * x53) + ((0x2 * ((uint64_t)x13 * x51)) + (((uint64_t)x15 * x49) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + (((uint64_t)x25 * x39) + ((0x2 * ((uint64_t)x27 * x37)) + ((0x2 * ((uint64_t)x29 * x35)) + ((uint64_t)x31 * x33)))))))))))))) + (0x19 * (0x2 * ((uint64_t)x30 * x58))));
- uint64_t x62 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + (((uint64_t)x25 * x37) + (((uint64_t)x27 * x35) + ((uint64_t)x29 * x33))))))))))))) + (0x19 * (((uint64_t)x31 * x58) + ((uint64_t)x30 * x59))));
- uint64_t x63 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + ((0x2 * ((uint64_t)x9 * x51)) + (((uint64_t)x11 * x49) + ((0x2 * ((uint64_t)x13 * x47)) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((0x2 * ((uint64_t)x19 * x41)) + (((uint64_t)x21 * x39) + ((0x2 * ((uint64_t)x23 * x37)) + (((uint64_t)x25 * x35) + ((uint64_t)x27 * x33)))))))))))) + (0x19 * ((0x2 * ((uint64_t)x29 * x58)) + (((uint64_t)x31 * x59) + (0x2 * ((uint64_t)x30 * x57))))));
- uint64_t x64 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + ((0x2 * ((uint64_t)x23 * x35)) + ((uint64_t)x25 * x33))))))))))) + (0x19 * ((0x2 * ((uint64_t)x27 * x58)) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + (0x2 * ((uint64_t)x30 * x55)))))));
- uint64_t x65 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + ((0x2 * ((uint64_t)x9 * x47)) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + ((0x2 * ((uint64_t)x19 * x37)) + (((uint64_t)x21 * x35) + ((uint64_t)x23 * x33)))))))))) + (0x19 * (((uint64_t)x25 * x58) + (((uint64_t)x27 * x59) + ((0x2 * ((uint64_t)x29 * x57)) + (((uint64_t)x31 * x55) + ((uint64_t)x30 * x53)))))));
- uint64_t x66 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + (((uint64_t)x15 * x39) + ((0x2 * ((uint64_t)x17 * x37)) + ((0x2 * ((uint64_t)x19 * x35)) + ((uint64_t)x21 * x33))))))))) + (0x19 * ((0x2 * ((uint64_t)x23 * x58)) + (((uint64_t)x25 * x59) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + (((uint64_t)x31 * x53) + (0x2 * ((uint64_t)x30 * x51)))))))));
- uint64_t x67 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + ((uint64_t)x19 * x33)))))))) + (0x19 * (((uint64_t)x21 * x58) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + ((uint64_t)x30 * x49)))))))));
- uint64_t x68 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + (((uint64_t)x11 * x39) + ((0x2 * ((uint64_t)x13 * x37)) + (((uint64_t)x15 * x35) + ((uint64_t)x17 * x33))))))) + (0x19 * ((0x2 * ((uint64_t)x19 * x58)) + (((uint64_t)x21 * x59) + ((0x2 * ((uint64_t)x23 * x57)) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + ((0x2 * ((uint64_t)x29 * x51)) + (((uint64_t)x31 * x49) + (0x2 * ((uint64_t)x30 * x47)))))))))));
- uint64_t x69 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + ((uint64_t)x15 * x33)))))) + (0x19 * ((0x2 * ((uint64_t)x17 * x58)) + ((0x2 * ((uint64_t)x19 * x59)) + ((0x2 * ((uint64_t)x21 * x57)) + ((0x2 * ((uint64_t)x23 * x55)) + (((uint64_t)x25 * x53) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + (0x2 * ((uint64_t)x30 * x45))))))))))));
- uint64_t x70 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + ((0x2 * ((uint64_t)x9 * x37)) + (((uint64_t)x11 * x35) + ((uint64_t)x13 * x33))))) + (0x19 * (((uint64_t)x15 * x58) + (((uint64_t)x17 * x59) + ((0x2 * ((uint64_t)x19 * x57)) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + ((0x2 * ((uint64_t)x29 * x47)) + (((uint64_t)x31 * x45) + ((uint64_t)x30 * x43))))))))))));
- uint64_t x71 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + ((uint64_t)x11 * x33)))) + (0x19 * ((0x2 * ((uint64_t)x13 * x58)) + (((uint64_t)x15 * x59) + ((0x2 * ((uint64_t)x17 * x57)) + ((0x2 * ((uint64_t)x19 * x55)) + (((uint64_t)x21 * x53) + ((0x2 * ((uint64_t)x23 * x51)) + (((uint64_t)x25 * x49) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + (((uint64_t)x31 * x43) + (0x2 * ((uint64_t)x30 * x41))))))))))))));
- uint64_t x72 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + ((uint64_t)x9 * x33))) + (0x19 * (((uint64_t)x11 * x58) + (((uint64_t)x13 * x59) + (((uint64_t)x15 * x57) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + (((uint64_t)x29 * x43) + (((uint64_t)x31 * x41) + ((uint64_t)x30 * x39))))))))))))));
- uint64_t x73 = ((((uint64_t)x5 * x35) + ((uint64_t)x7 * x33)) + (0x19 * ((0x2 * ((uint64_t)x9 * x58)) + (((uint64_t)x11 * x59) + ((0x2 * ((uint64_t)x13 * x57)) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + ((0x2 * ((uint64_t)x19 * x51)) + (((uint64_t)x21 * x49) + ((0x2 * ((uint64_t)x23 * x47)) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + ((0x2 * ((uint64_t)x29 * x41)) + (((uint64_t)x31 * x39) + (0x2 * ((uint64_t)x30 * x37))))))))))))))));
- uint64_t x74 = (((uint64_t)x5 * x33) + (0x19 * ((0x2 * ((uint64_t)x7 * x58)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + (((uint64_t)x15 * x53) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + (((uint64_t)x25 * x43) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((0x2 * ((uint64_t)x31 * x37)) + (0x2 * ((uint64_t)x30 * x35)))))))))))))))));
- uint64_t x75 = (x74 >> 0x19);
- uint32_t x76 = ((uint32_t)x74 & 0x1ffffff);
- uint64_t x77 = (x75 + x73);
- uint64_t x78 = (x77 >> 0x19);
- uint32_t x79 = ((uint32_t)x77 & 0x1ffffff);
- uint64_t x80 = (x78 + x72);
- uint64_t x81 = (x80 >> 0x18);
- uint32_t x82 = ((uint32_t)x80 & 0xffffff);
- uint64_t x83 = (x81 + x71);
- uint64_t x84 = (x83 >> 0x19);
- uint32_t x85 = ((uint32_t)x83 & 0x1ffffff);
- uint64_t x86 = (x84 + x70);
- uint64_t x87 = (x86 >> 0x18);
- uint32_t x88 = ((uint32_t)x86 & 0xffffff);
- uint64_t x89 = (x87 + x69);
- uint64_t x90 = (x89 >> 0x19);
- uint32_t x91 = ((uint32_t)x89 & 0x1ffffff);
- uint64_t x92 = (x90 + x68);
- uint64_t x93 = (x92 >> 0x19);
- uint32_t x94 = ((uint32_t)x92 & 0x1ffffff);
- uint64_t x95 = (x93 + x67);
- uint64_t x96 = (x95 >> 0x18);
- uint32_t x97 = ((uint32_t)x95 & 0xffffff);
- uint64_t x98 = (x96 + x66);
- uint64_t x99 = (x98 >> 0x19);
- uint32_t x100 = ((uint32_t)x98 & 0x1ffffff);
- uint64_t x101 = (x99 + x65);
- uint64_t x102 = (x101 >> 0x18);
- uint32_t x103 = ((uint32_t)x101 & 0xffffff);
- uint64_t x104 = (x102 + x64);
- uint64_t x105 = (x104 >> 0x19);
- uint32_t x106 = ((uint32_t)x104 & 0x1ffffff);
- uint64_t x107 = (x105 + x63);
- uint64_t x108 = (x107 >> 0x19);
- uint32_t x109 = ((uint32_t)x107 & 0x1ffffff);
- uint64_t x110 = (x108 + x62);
- uint64_t x111 = (x110 >> 0x18);
- uint32_t x112 = ((uint32_t)x110 & 0xffffff);
- uint64_t x113 = (x111 + x61);
- uint64_t x114 = (x113 >> 0x19);
- uint32_t x115 = ((uint32_t)x113 & 0x1ffffff);
- uint64_t x116 = (x114 + x60);
- uint64_t x117 = (x116 >> 0x18);
- uint32_t x118 = ((uint32_t)x116 & 0xffffff);
- uint64_t x119 = (x76 + (0x19 * x117));
- uint32_t x120 = (uint32_t) (x119 >> 0x19);
- uint32_t x121 = ((uint32_t)x119 & 0x1ffffff);
- uint32_t x122 = (x120 + x79);
- uint32_t x123 = (x122 >> 0x19);
- uint32_t x124 = (x122 & 0x1ffffff);
- return (Return x118, Return x115, Return x112, Return x109, Return x106, Return x103, Return x100, Return x97, Return x94, Return x91, Return x88, Return x85, (x123 + x82), Return x124, Return x121))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e369m25_15limbs/femulDisplay.v b/src/Specific/solinas32_2e369m25_15limbs/femulDisplay.v
deleted file mode 100644
index 524b5f11e..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e369m25_15limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e369m25_15limbs/fesquare.c b/src/Specific/solinas32_2e369m25_15limbs/fesquare.c
deleted file mode 100644
index 752b22e8e..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/fesquare.c
+++ /dev/null
@@ -1,98 +0,0 @@
-static void fesquare(uint32_t out[15], const uint32_t in1[15]) {
- { const uint32_t x27 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x29 = (((uint64_t)x2 * x27) + (((uint64_t)x4 * x28) + ((0x2 * ((uint64_t)x6 * x26)) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + ((0x2 * ((uint64_t)x26 * x6)) + (((uint64_t)x28 * x4) + ((uint64_t)x27 * x2)))))))))))))));
- { uint64_t x30 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + (((uint64_t)x8 * x22) + ((0x2 * ((uint64_t)x10 * x20)) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + ((0x2 * ((uint64_t)x20 * x10)) + (((uint64_t)x22 * x8) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x19 * (0x2 * ((uint64_t)x27 * x27))));
- { uint64_t x31 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x19 * (((uint64_t)x28 * x27) + ((uint64_t)x27 * x28))));
- { uint64_t x32 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + ((0x2 * ((uint64_t)x6 * x20)) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + ((0x2 * ((uint64_t)x20 * x6)) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x19 * ((0x2 * ((uint64_t)x26 * x27)) + (((uint64_t)x28 * x28) + (0x2 * ((uint64_t)x27 * x26))))));
- { uint64_t x33 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x19 * ((0x2 * ((uint64_t)x24 * x27)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + (0x2 * ((uint64_t)x27 * x24)))))));
- { uint64_t x34 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x19 * (((uint64_t)x22 * x27) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + ((uint64_t)x27 * x22)))))));
- { uint64_t x35 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x19 * ((0x2 * ((uint64_t)x20 * x27)) + (((uint64_t)x22 * x28) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + (((uint64_t)x28 * x22) + (0x2 * ((uint64_t)x27 * x20)))))))));
- { uint64_t x36 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x19 * (((uint64_t)x18 * x27) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + ((uint64_t)x27 * x18)))))))));
- { uint64_t x37 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x19 * ((0x2 * ((uint64_t)x16 * x27)) + (((uint64_t)x18 * x28) + ((0x2 * ((uint64_t)x20 * x26)) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + ((0x2 * ((uint64_t)x26 * x20)) + (((uint64_t)x28 * x18) + (0x2 * ((uint64_t)x27 * x16)))))))))));
- { uint64_t x38 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x19 * ((0x2 * ((uint64_t)x14 * x27)) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + (0x2 * ((uint64_t)x27 * x14))))))))))));
- { uint64_t x39 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x19 * (((uint64_t)x12 * x27) + (((uint64_t)x14 * x28) + ((0x2 * ((uint64_t)x16 * x26)) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((0x2 * ((uint64_t)x26 * x16)) + (((uint64_t)x28 * x14) + ((uint64_t)x27 * x12))))))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x19 * ((0x2 * ((uint64_t)x10 * x27)) + (((uint64_t)x12 * x28) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + (((uint64_t)x28 * x12) + (0x2 * ((uint64_t)x27 * x10))))))))))))));
- { uint64_t x41 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x19 * (((uint64_t)x8 * x27) + (((uint64_t)x10 * x28) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + (((uint64_t)x28 * x10) + ((uint64_t)x27 * x8))))))))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x19 * ((0x2 * ((uint64_t)x6 * x27)) + (((uint64_t)x8 * x28) + ((0x2 * ((uint64_t)x10 * x26)) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + ((0x2 * ((uint64_t)x26 * x10)) + (((uint64_t)x28 * x8) + (0x2 * ((uint64_t)x27 * x6))))))))))))))));
- { uint64_t x43 = (((uint64_t)x2 * x2) + (0x19 * ((0x2 * ((uint64_t)x4 * x27)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + (((uint64_t)x12 * x22) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + (((uint64_t)x22 * x12) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + (0x2 * ((uint64_t)x27 * x4)))))))))))))))));
- { uint64_t x44 = (x43 >> 0x19);
- { uint32_t x45 = ((uint32_t)x43 & 0x1ffffff);
- { uint64_t x46 = (x44 + x42);
- { uint64_t x47 = (x46 >> 0x19);
- { uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- { uint64_t x49 = (x47 + x41);
- { uint64_t x50 = (x49 >> 0x18);
- { uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- { uint64_t x52 = (x50 + x40);
- { uint64_t x53 = (x52 >> 0x19);
- { uint32_t x54 = ((uint32_t)x52 & 0x1ffffff);
- { uint64_t x55 = (x53 + x39);
- { uint64_t x56 = (x55 >> 0x18);
- { uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- { uint64_t x58 = (x56 + x38);
- { uint64_t x59 = (x58 >> 0x19);
- { uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- { uint64_t x61 = (x59 + x37);
- { uint64_t x62 = (x61 >> 0x19);
- { uint32_t x63 = ((uint32_t)x61 & 0x1ffffff);
- { uint64_t x64 = (x62 + x36);
- { uint64_t x65 = (x64 >> 0x18);
- { uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- { uint64_t x67 = (x65 + x35);
- { uint64_t x68 = (x67 >> 0x19);
- { uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- { uint64_t x70 = (x68 + x34);
- { uint64_t x71 = (x70 >> 0x18);
- { uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- { uint64_t x73 = (x71 + x33);
- { uint64_t x74 = (x73 >> 0x19);
- { uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- { uint64_t x76 = (x74 + x32);
- { uint64_t x77 = (x76 >> 0x19);
- { uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- { uint64_t x79 = (x77 + x31);
- { uint64_t x80 = (x79 >> 0x18);
- { uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- { uint64_t x82 = (x80 + x30);
- { uint64_t x83 = (x82 >> 0x19);
- { uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- { uint64_t x85 = (x83 + x29);
- { uint64_t x86 = (x85 >> 0x18);
- { uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- { uint64_t x88 = (x45 + (0x19 * x86));
- { uint32_t x89 = (uint32_t) (x88 >> 0x19);
- { uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- { uint32_t x91 = (x89 + x48);
- { uint32_t x92 = (x91 >> 0x19);
- { uint32_t x93 = (x91 & 0x1ffffff);
- out[0] = x90;
- out[1] = x93;
- out[2] = (x92 + x51);
- out[3] = x54;
- out[4] = x57;
- out[5] = x60;
- out[6] = x63;
- out[7] = x66;
- out[8] = x69;
- out[9] = x72;
- out[10] = x75;
- out[11] = x78;
- out[12] = x81;
- out[13] = x84;
- out[14] = x87;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e369m25_15limbs/fesquare.v b/src/Specific/solinas32_2e369m25_15limbs/fesquare.v
deleted file mode 100644
index 0cff24c64..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e369m25_15limbs.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_2e369m25_15limbs/fesquareDisplay.log b/src/Specific/solinas32_2e369m25_15limbs/fesquareDisplay.log
deleted file mode 100644
index 27f6a725a..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,72 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x27, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x29 = (((uint64_t)x2 * x27) + (((uint64_t)x4 * x28) + ((0x2 * ((uint64_t)x6 * x26)) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + ((0x2 * ((uint64_t)x26 * x6)) + (((uint64_t)x28 * x4) + ((uint64_t)x27 * x2)))))))))))))));
- uint64_t x30 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + (((uint64_t)x8 * x22) + ((0x2 * ((uint64_t)x10 * x20)) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + ((0x2 * ((uint64_t)x20 * x10)) + (((uint64_t)x22 * x8) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x19 * (0x2 * ((uint64_t)x27 * x27))));
- uint64_t x31 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x19 * (((uint64_t)x28 * x27) + ((uint64_t)x27 * x28))));
- uint64_t x32 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + ((0x2 * ((uint64_t)x6 * x20)) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + ((0x2 * ((uint64_t)x20 * x6)) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x19 * ((0x2 * ((uint64_t)x26 * x27)) + (((uint64_t)x28 * x28) + (0x2 * ((uint64_t)x27 * x26))))));
- uint64_t x33 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x19 * ((0x2 * ((uint64_t)x24 * x27)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + (0x2 * ((uint64_t)x27 * x24)))))));
- uint64_t x34 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x19 * (((uint64_t)x22 * x27) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + ((uint64_t)x27 * x22)))))));
- uint64_t x35 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x19 * ((0x2 * ((uint64_t)x20 * x27)) + (((uint64_t)x22 * x28) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + (((uint64_t)x28 * x22) + (0x2 * ((uint64_t)x27 * x20)))))))));
- uint64_t x36 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x19 * (((uint64_t)x18 * x27) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + ((uint64_t)x27 * x18)))))))));
- uint64_t x37 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x19 * ((0x2 * ((uint64_t)x16 * x27)) + (((uint64_t)x18 * x28) + ((0x2 * ((uint64_t)x20 * x26)) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + ((0x2 * ((uint64_t)x26 * x20)) + (((uint64_t)x28 * x18) + (0x2 * ((uint64_t)x27 * x16)))))))))));
- uint64_t x38 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x19 * ((0x2 * ((uint64_t)x14 * x27)) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + (0x2 * ((uint64_t)x27 * x14))))))))))));
- uint64_t x39 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x19 * (((uint64_t)x12 * x27) + (((uint64_t)x14 * x28) + ((0x2 * ((uint64_t)x16 * x26)) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((0x2 * ((uint64_t)x26 * x16)) + (((uint64_t)x28 * x14) + ((uint64_t)x27 * x12))))))))))));
- uint64_t x40 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x19 * ((0x2 * ((uint64_t)x10 * x27)) + (((uint64_t)x12 * x28) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + (((uint64_t)x28 * x12) + (0x2 * ((uint64_t)x27 * x10))))))))))))));
- uint64_t x41 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x19 * (((uint64_t)x8 * x27) + (((uint64_t)x10 * x28) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + (((uint64_t)x28 * x10) + ((uint64_t)x27 * x8))))))))))))));
- uint64_t x42 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x19 * ((0x2 * ((uint64_t)x6 * x27)) + (((uint64_t)x8 * x28) + ((0x2 * ((uint64_t)x10 * x26)) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + ((0x2 * ((uint64_t)x26 * x10)) + (((uint64_t)x28 * x8) + (0x2 * ((uint64_t)x27 * x6))))))))))))))));
- uint64_t x43 = (((uint64_t)x2 * x2) + (0x19 * ((0x2 * ((uint64_t)x4 * x27)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + (((uint64_t)x12 * x22) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + (((uint64_t)x22 * x12) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + (0x2 * ((uint64_t)x27 * x4)))))))))))))))));
- uint64_t x44 = (x43 >> 0x19);
- uint32_t x45 = ((uint32_t)x43 & 0x1ffffff);
- uint64_t x46 = (x44 + x42);
- uint64_t x47 = (x46 >> 0x19);
- uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- uint64_t x49 = (x47 + x41);
- uint64_t x50 = (x49 >> 0x18);
- uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- uint64_t x52 = (x50 + x40);
- uint64_t x53 = (x52 >> 0x19);
- uint32_t x54 = ((uint32_t)x52 & 0x1ffffff);
- uint64_t x55 = (x53 + x39);
- uint64_t x56 = (x55 >> 0x18);
- uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- uint64_t x58 = (x56 + x38);
- uint64_t x59 = (x58 >> 0x19);
- uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- uint64_t x61 = (x59 + x37);
- uint64_t x62 = (x61 >> 0x19);
- uint32_t x63 = ((uint32_t)x61 & 0x1ffffff);
- uint64_t x64 = (x62 + x36);
- uint64_t x65 = (x64 >> 0x18);
- uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- uint64_t x67 = (x65 + x35);
- uint64_t x68 = (x67 >> 0x19);
- uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- uint64_t x70 = (x68 + x34);
- uint64_t x71 = (x70 >> 0x18);
- uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- uint64_t x73 = (x71 + x33);
- uint64_t x74 = (x73 >> 0x19);
- uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- uint64_t x76 = (x74 + x32);
- uint64_t x77 = (x76 >> 0x19);
- uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- uint64_t x79 = (x77 + x31);
- uint64_t x80 = (x79 >> 0x18);
- uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- uint64_t x82 = (x80 + x30);
- uint64_t x83 = (x82 >> 0x19);
- uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- uint64_t x85 = (x83 + x29);
- uint64_t x86 = (x85 >> 0x18);
- uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- uint64_t x88 = (x45 + (0x19 * x86));
- uint32_t x89 = (uint32_t) (x88 >> 0x19);
- uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- uint32_t x91 = (x89 + x48);
- uint32_t x92 = (x91 >> 0x19);
- uint32_t x93 = (x91 & 0x1ffffff);
- return (Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, Return x57, Return x54, (x92 + x51), Return x93, Return x90))
-x
- : word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e369m25_15limbs/fesquareDisplay.v b/src/Specific/solinas32_2e369m25_15limbs/fesquareDisplay.v
deleted file mode 100644
index 1c693bb46..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e369m25_15limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e369m25_15limbs/fesub.c b/src/Specific/solinas32_2e369m25_15limbs/fesub.c
deleted file mode 100644
index d7d3603d5..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/fesub.c
+++ /dev/null
@@ -1,48 +0,0 @@
-static void fesub(uint32_t out[15], const uint32_t in1[15], const uint32_t in2[15]) {
- { const uint32_t x30 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x58 = in2[14];
- { const uint32_t x59 = in2[13];
- { const uint32_t x57 = in2[12];
- { const uint32_t x55 = in2[11];
- { const uint32_t x53 = in2[10];
- { const uint32_t x51 = in2[9];
- { const uint32_t x49 = in2[8];
- { const uint32_t x47 = in2[7];
- { const uint32_t x45 = in2[6];
- { const uint32_t x43 = in2[5];
- { const uint32_t x41 = in2[4];
- { const uint32_t x39 = in2[3];
- { const uint32_t x37 = in2[2];
- { const uint32_t x35 = in2[1];
- { const uint32_t x33 = in2[0];
- out[0] = ((0x3ffffce + x5) - x33);
- out[1] = ((0x3fffffe + x7) - x35);
- out[2] = ((0x1fffffe + x9) - x37);
- out[3] = ((0x3fffffe + x11) - x39);
- out[4] = ((0x1fffffe + x13) - x41);
- out[5] = ((0x3fffffe + x15) - x43);
- out[6] = ((0x3fffffe + x17) - x45);
- out[7] = ((0x1fffffe + x19) - x47);
- out[8] = ((0x3fffffe + x21) - x49);
- out[9] = ((0x1fffffe + x23) - x51);
- out[10] = ((0x3fffffe + x25) - x53);
- out[11] = ((0x3fffffe + x27) - x55);
- out[12] = ((0x1fffffe + x29) - x57);
- out[13] = ((0x3fffffe + x31) - x59);
- out[14] = ((0x1fffffe + x30) - x58);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e369m25_15limbs/fesub.v b/src/Specific/solinas32_2e369m25_15limbs/fesub.v
deleted file mode 100644
index f2c8d1798..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e369m25_15limbs.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_2e369m25_15limbs/fesubDisplay.log b/src/Specific/solinas32_2e369m25_15limbs/fesubDisplay.log
deleted file mode 100644
index 5acc2d986..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x30, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x58, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33))%core,
- (((0x1fffffe + x30) - x58), ((0x3fffffe + x31) - x59), ((0x1fffffe + x29) - x57), ((0x3fffffe + x27) - x55), ((0x3fffffe + x25) - x53), ((0x1fffffe + x23) - x51), ((0x3fffffe + x21) - x49), ((0x1fffffe + x19) - x47), ((0x3fffffe + x17) - x45), ((0x3fffffe + x15) - x43), ((0x1fffffe + x13) - x41), ((0x3fffffe + x11) - x39), ((0x1fffffe + x9) - x37), ((0x3fffffe + x7) - x35), ((0x3ffffce + x5) - x33)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e369m25_15limbs/fesubDisplay.v b/src/Specific/solinas32_2e369m25_15limbs/fesubDisplay.v
deleted file mode 100644
index 5f8a2af7a..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e369m25_15limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e369m25_15limbs/freeze.c b/src/Specific/solinas32_2e369m25_15limbs/freeze.c
deleted file mode 100644
index f33c335f6..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/freeze.c
+++ /dev/null
@@ -1,79 +0,0 @@
-static void freeze(uint32_t out[15], const uint32_t in1[15]) {
- { const uint32_t x27 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffe7);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x4, 0x1ffffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x6, 0xffffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x8, 0x1ffffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x10, 0xffffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x12, 0x1ffffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x14, 0x1ffffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x16, 0xffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x18, 0x1ffffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x20, 0xffffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x22, 0x1ffffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x24, 0x1ffffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x26, 0xffffff);
- { uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x28, 0x1ffffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x27, 0xffffff);
- { uint32_t x74 = cmovznz32(x73, 0x0, 0xffffffff);
- { uint32_t x75 = (x74 & 0x1ffffe7);
- { uint32_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x30, Return x75);
- { uint32_t x79 = (x74 & 0x1ffffff);
- { uint32_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x33, Return x79);
- { uint32_t x83 = (x74 & 0xffffff);
- { uint32_t x85, uint8_t x86 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x36, Return x83);
- { uint32_t x87 = (x74 & 0x1ffffff);
- { uint32_t x89, uint8_t x90 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x39, Return x87);
- { uint32_t x91 = (x74 & 0xffffff);
- { uint32_t x93, uint8_t x94 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x42, Return x91);
- { uint32_t x95 = (x74 & 0x1ffffff);
- { uint32_t x97, uint8_t x98 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x94, Return x45, Return x95);
- { uint32_t x99 = (x74 & 0x1ffffff);
- { uint32_t x101, uint8_t x102 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x98, Return x48, Return x99);
- { uint32_t x103 = (x74 & 0xffffff);
- { uint32_t x105, uint8_t x106 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x102, Return x51, Return x103);
- { uint32_t x107 = (x74 & 0x1ffffff);
- { uint32_t x109, uint8_t x110 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x106, Return x54, Return x107);
- { uint32_t x111 = (x74 & 0xffffff);
- { uint32_t x113, uint8_t x114 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x110, Return x57, Return x111);
- { uint32_t x115 = (x74 & 0x1ffffff);
- { uint32_t x117, uint8_t x118 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x114, Return x60, Return x115);
- { uint32_t x119 = (x74 & 0x1ffffff);
- { uint32_t x121, uint8_t x122 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x118, Return x63, Return x119);
- { uint32_t x123 = (x74 & 0xffffff);
- { uint32_t x125, uint8_t x126 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x122, Return x66, Return x123);
- { uint32_t x127 = (x74 & 0x1ffffff);
- { uint32_t x129, uint8_t x130 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x126, Return x69, Return x127);
- { uint32_t x131 = (x74 & 0xffffff);
- { uint32_t x133, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x130, Return x72, Return x131);
- out[0] = x77;
- out[1] = x81;
- out[2] = x85;
- out[3] = x89;
- out[4] = x93;
- out[5] = x97;
- out[6] = x101;
- out[7] = x105;
- out[8] = x109;
- out[9] = x113;
- out[10] = x117;
- out[11] = x121;
- out[12] = x125;
- out[13] = x129;
- out[14] = x133;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e369m25_15limbs/freeze.v b/src/Specific/solinas32_2e369m25_15limbs/freeze.v
deleted file mode 100644
index aeb5d58f4..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e369m25_15limbs.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_2e369m25_15limbs/freezeDisplay.log b/src/Specific/solinas32_2e369m25_15limbs/freezeDisplay.log
deleted file mode 100644
index e27aaba97..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/freezeDisplay.log
+++ /dev/null
@@ -1,53 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x27, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffe7);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x4, 0x1ffffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x6, 0xffffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x8, 0x1ffffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x10, 0xffffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x12, 0x1ffffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x14, 0x1ffffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x16, 0xffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x18, 0x1ffffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x20, 0xffffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x22, 0x1ffffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x24, 0x1ffffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x26, 0xffffff);
- uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x28, 0x1ffffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x27, 0xffffff);
- uint32_t x74 = cmovznz32(x73, 0x0, 0xffffffff);
- uint32_t x75 = (x74 & 0x1ffffe7);
- uint32_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x30, Return x75);
- uint32_t x79 = (x74 & 0x1ffffff);
- uint32_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x33, Return x79);
- uint32_t x83 = (x74 & 0xffffff);
- uint32_t x85, uint8_t x86 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x36, Return x83);
- uint32_t x87 = (x74 & 0x1ffffff);
- uint32_t x89, uint8_t x90 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x39, Return x87);
- uint32_t x91 = (x74 & 0xffffff);
- uint32_t x93, uint8_t x94 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x42, Return x91);
- uint32_t x95 = (x74 & 0x1ffffff);
- uint32_t x97, uint8_t x98 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x94, Return x45, Return x95);
- uint32_t x99 = (x74 & 0x1ffffff);
- uint32_t x101, uint8_t x102 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x98, Return x48, Return x99);
- uint32_t x103 = (x74 & 0xffffff);
- uint32_t x105, uint8_t x106 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x102, Return x51, Return x103);
- uint32_t x107 = (x74 & 0x1ffffff);
- uint32_t x109, uint8_t x110 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x106, Return x54, Return x107);
- uint32_t x111 = (x74 & 0xffffff);
- uint32_t x113, uint8_t x114 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x110, Return x57, Return x111);
- uint32_t x115 = (x74 & 0x1ffffff);
- uint32_t x117, uint8_t x118 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x114, Return x60, Return x115);
- uint32_t x119 = (x74 & 0x1ffffff);
- uint32_t x121, uint8_t x122 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x118, Return x63, Return x119);
- uint32_t x123 = (x74 & 0xffffff);
- uint32_t x125, uint8_t x126 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x122, Return x66, Return x123);
- uint32_t x127 = (x74 & 0x1ffffff);
- uint32_t x129, uint8_t x130 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x126, Return x69, Return x127);
- uint32_t x131 = (x74 & 0xffffff);
- uint32_t x133, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x130, Return x72, Return x131);
- (Return x133, Return x129, Return x125, Return x121, Return x117, Return x113, Return x109, Return x105, Return x101, Return x97, Return x93, Return x89, Return x85, Return x81, Return x77))
-x
- : word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e369m25_15limbs/freezeDisplay.v b/src/Specific/solinas32_2e369m25_15limbs/freezeDisplay.v
deleted file mode 100644
index 5c201c0ad..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e369m25_15limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e369m25_15limbs/py_interpreter.sh b/src/Specific/solinas32_2e369m25_15limbs/py_interpreter.sh
deleted file mode 100755
index 730c995fb..000000000
--- a/src/Specific/solinas32_2e369m25_15limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**369 - 25' -Dmodulus_bytes='24.6' -Da24='121665'
diff --git a/src/Specific/solinas32_2e369m25_16limbs/CurveParameters.v b/src/Specific/solinas32_2e369m25_16limbs/CurveParameters.v
deleted file mode 100644
index bcbf236a9..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^369 - 25
-Base: 23 + 1/16
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 16%nat;
- base := 23 + 1/16;
- bitwidth := 32;
- s := 2^369;
- c := [(1, 25)];
- carry_chains := Some [seq 0 (pred 16); [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_2e369m25_16limbs/Synthesis.v b/src/Specific/solinas32_2e369m25_16limbs/Synthesis.v
deleted file mode 100644
index 09ecef29b..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e369m25_16limbs.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_2e369m25_16limbs/compiler.sh b/src/Specific/solinas32_2e369m25_16limbs/compiler.sh
deleted file mode 100755
index 8697440d3..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='47' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<369) - 25' "$@"
diff --git a/src/Specific/solinas32_2e369m25_16limbs/compilerxx.sh b/src/Specific/solinas32_2e369m25_16limbs/compilerxx.sh
deleted file mode 100755
index 28dde99b8..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='47' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<369) - 25' "$@"
diff --git a/src/Specific/solinas32_2e369m25_16limbs/feadd.c b/src/Specific/solinas32_2e369m25_16limbs/feadd.c
deleted file mode 100644
index 18b150e21..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/feadd.c
+++ /dev/null
@@ -1,51 +0,0 @@
-static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- out[0] = (x5 + x35);
- out[1] = (x7 + x37);
- out[2] = (x9 + x39);
- out[3] = (x11 + x41);
- out[4] = (x13 + x43);
- out[5] = (x15 + x45);
- out[6] = (x17 + x47);
- out[7] = (x19 + x49);
- out[8] = (x21 + x51);
- out[9] = (x23 + x53);
- out[10] = (x25 + x55);
- out[11] = (x27 + x57);
- out[12] = (x29 + x59);
- out[13] = (x31 + x61);
- out[14] = (x33 + x63);
- out[15] = (x32 + x62);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e369m25_16limbs/feadd.v b/src/Specific/solinas32_2e369m25_16limbs/feadd.v
deleted file mode 100644
index 74a390c1f..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e369m25_16limbs.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_2e369m25_16limbs/feaddDisplay.log b/src/Specific/solinas32_2e369m25_16limbs/feaddDisplay.log
deleted file mode 100644
index 130c31964..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- ((x32 + x62), (x33 + x63), (x31 + x61), (x29 + x59), (x27 + x57), (x25 + x55), (x23 + x53), (x21 + x51), (x19 + x49), (x17 + x47), (x15 + x45), (x13 + x43), (x11 + x41), (x9 + x39), (x7 + x37), (x5 + x35)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e369m25_16limbs/feaddDisplay.v b/src/Specific/solinas32_2e369m25_16limbs/feaddDisplay.v
deleted file mode 100644
index a595eeb87..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e369m25_16limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e369m25_16limbs/fecarry.v b/src/Specific/solinas32_2e369m25_16limbs/fecarry.v
deleted file mode 100644
index ebce7cc85..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e369m25_16limbs.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_2e369m25_16limbs/fecarryDisplay.v b/src/Specific/solinas32_2e369m25_16limbs/fecarryDisplay.v
deleted file mode 100644
index 39a277032..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e369m25_16limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e369m25_16limbs/femul.c b/src/Specific/solinas32_2e369m25_16limbs/femul.c
deleted file mode 100644
index cc1c2a4b5..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/femul.c
+++ /dev/null
@@ -1,120 +0,0 @@
-static void femul(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- { uint64_t x64 = (((uint64_t)x5 * x62) + ((0x2 * ((uint64_t)x7 * x63)) + ((0x2 * ((uint64_t)x9 * x61)) + ((0x2 * ((uint64_t)x11 * x59)) + ((0x2 * ((uint64_t)x13 * x57)) + ((0x2 * ((uint64_t)x15 * x55)) + ((0x2 * ((uint64_t)x17 * x53)) + ((0x2 * ((uint64_t)x19 * x51)) + ((0x2 * ((uint64_t)x21 * x49)) + ((0x2 * ((uint64_t)x23 * x47)) + ((0x2 * ((uint64_t)x25 * x45)) + ((0x2 * ((uint64_t)x27 * x43)) + ((0x2 * ((uint64_t)x29 * x41)) + ((0x2 * ((uint64_t)x31 * x39)) + ((0x2 * ((uint64_t)x33 * x37)) + ((uint64_t)x32 * x35))))))))))))))));
- { uint64_t x65 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + ((0x2 * ((uint64_t)x25 * x43)) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((0x2 * ((uint64_t)x31 * x37)) + ((uint64_t)x33 * x35))))))))))))))) + (0x19 * ((uint64_t)x32 * x62)));
- { uint64_t x66 = ((((uint64_t)x5 * x61) + ((0x2 * ((uint64_t)x7 * x59)) + ((0x2 * ((uint64_t)x9 * x57)) + ((0x2 * ((uint64_t)x11 * x55)) + ((0x2 * ((uint64_t)x13 * x53)) + ((0x2 * ((uint64_t)x15 * x51)) + ((0x2 * ((uint64_t)x17 * x49)) + ((0x2 * ((uint64_t)x19 * x47)) + ((0x2 * ((uint64_t)x21 * x45)) + ((0x2 * ((uint64_t)x23 * x43)) + ((0x2 * ((uint64_t)x25 * x41)) + ((0x2 * ((uint64_t)x27 * x39)) + ((0x2 * ((uint64_t)x29 * x37)) + ((uint64_t)x31 * x35)))))))))))))) + (0x19 * (((uint64_t)x33 * x62) + ((uint64_t)x32 * x63))));
- { uint64_t x67 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + ((0x2 * ((uint64_t)x27 * x37)) + ((uint64_t)x29 * x35))))))))))))) + (0x19 * (((uint64_t)x31 * x62) + (((uint64_t)x33 * x63) + ((uint64_t)x32 * x61)))));
- { uint64_t x68 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + ((0x2 * ((uint64_t)x25 * x37)) + ((uint64_t)x27 * x35)))))))))))) + (0x19 * (((uint64_t)x29 * x62) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + ((uint64_t)x32 * x59))))));
- { uint64_t x69 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((uint64_t)x25 * x35))))))))))) + (0x19 * (((uint64_t)x27 * x62) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + (((uint64_t)x33 * x59) + ((uint64_t)x32 * x57)))))));
- { uint64_t x70 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + ((uint64_t)x23 * x35)))))))))) + (0x19 * (((uint64_t)x25 * x62) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + ((uint64_t)x32 * x55))))))));
- { uint64_t x71 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + ((uint64_t)x21 * x35))))))))) + (0x19 * (((uint64_t)x23 * x62) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + ((uint64_t)x32 * x53)))))))));
- { uint64_t x72 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + ((0x2 * ((uint64_t)x11 * x43)) + ((0x2 * ((uint64_t)x13 * x41)) + ((0x2 * ((uint64_t)x15 * x39)) + ((0x2 * ((uint64_t)x17 * x37)) + ((uint64_t)x19 * x35)))))))) + (0x19 * (((uint64_t)x21 * x62) + (((uint64_t)x23 * x63) + (((uint64_t)x25 * x61) + (((uint64_t)x27 * x59) + (((uint64_t)x29 * x57) + (((uint64_t)x31 * x55) + (((uint64_t)x33 * x53) + ((uint64_t)x32 * x51))))))))));
- { uint64_t x73 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((uint64_t)x17 * x35))))))) + (0x19 * (((uint64_t)x19 * x62) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + ((uint64_t)x32 * x49)))))))))));
- { uint64_t x74 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + ((0x2 * ((uint64_t)x13 * x37)) + ((uint64_t)x15 * x35)))))) + (0x19 * (((uint64_t)x17 * x62) + (((uint64_t)x19 * x63) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + ((uint64_t)x32 * x47))))))))))));
- { uint64_t x75 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((uint64_t)x13 * x35))))) + (0x19 * (((uint64_t)x15 * x62) + (((uint64_t)x17 * x63) + (((uint64_t)x19 * x61) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + (((uint64_t)x31 * x49) + (((uint64_t)x33 * x47) + ((uint64_t)x32 * x45)))))))))))));
- { uint64_t x76 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + ((uint64_t)x11 * x35)))) + (0x19 * (((uint64_t)x13 * x62) + (((uint64_t)x15 * x63) + (((uint64_t)x17 * x61) + (((uint64_t)x19 * x59) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + (((uint64_t)x29 * x49) + (((uint64_t)x31 * x47) + (((uint64_t)x33 * x45) + ((uint64_t)x32 * x43))))))))))))));
- { uint64_t x77 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((uint64_t)x9 * x35))) + (0x19 * (((uint64_t)x11 * x62) + (((uint64_t)x13 * x63) + (((uint64_t)x15 * x61) + (((uint64_t)x17 * x59) + (((uint64_t)x19 * x57) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (((uint64_t)x29 * x47) + (((uint64_t)x31 * x45) + (((uint64_t)x33 * x43) + ((uint64_t)x32 * x41)))))))))))))));
- { uint64_t x78 = ((((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)) + (0x19 * (((uint64_t)x9 * x62) + (((uint64_t)x11 * x63) + (((uint64_t)x13 * x61) + (((uint64_t)x15 * x59) + (((uint64_t)x17 * x57) + (((uint64_t)x19 * x55) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + (((uint64_t)x25 * x49) + (((uint64_t)x27 * x47) + (((uint64_t)x29 * x45) + (((uint64_t)x31 * x43) + (((uint64_t)x33 * x41) + ((uint64_t)x32 * x39))))))))))))))));
- { uint64_t x79 = (((uint64_t)x5 * x35) + (0x19 * ((0x2 * ((uint64_t)x7 * x62)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + (0x2 * ((uint64_t)x32 * x37))))))))))))))))));
- { uint64_t x80 = (x79 >> 0x18);
- { uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- { uint64_t x82 = (x80 + x78);
- { uint64_t x83 = (x82 >> 0x17);
- { uint32_t x84 = ((uint32_t)x82 & 0x7fffff);
- { uint64_t x85 = (x83 + x77);
- { uint64_t x86 = (x85 >> 0x17);
- { uint32_t x87 = ((uint32_t)x85 & 0x7fffff);
- { uint64_t x88 = (x86 + x76);
- { uint64_t x89 = (x88 >> 0x17);
- { uint32_t x90 = ((uint32_t)x88 & 0x7fffff);
- { uint64_t x91 = (x89 + x75);
- { uint64_t x92 = (x91 >> 0x17);
- { uint32_t x93 = ((uint32_t)x91 & 0x7fffff);
- { uint64_t x94 = (x92 + x74);
- { uint64_t x95 = (x94 >> 0x17);
- { uint32_t x96 = ((uint32_t)x94 & 0x7fffff);
- { uint64_t x97 = (x95 + x73);
- { uint64_t x98 = (x97 >> 0x17);
- { uint32_t x99 = ((uint32_t)x97 & 0x7fffff);
- { uint64_t x100 = (x98 + x72);
- { uint64_t x101 = (x100 >> 0x17);
- { uint32_t x102 = ((uint32_t)x100 & 0x7fffff);
- { uint64_t x103 = (x101 + x71);
- { uint64_t x104 = (x103 >> 0x17);
- { uint32_t x105 = ((uint32_t)x103 & 0x7fffff);
- { uint64_t x106 = (x104 + x70);
- { uint64_t x107 = (x106 >> 0x17);
- { uint32_t x108 = ((uint32_t)x106 & 0x7fffff);
- { uint64_t x109 = (x107 + x69);
- { uint64_t x110 = (x109 >> 0x17);
- { uint32_t x111 = ((uint32_t)x109 & 0x7fffff);
- { uint64_t x112 = (x110 + x68);
- { uint64_t x113 = (x112 >> 0x17);
- { uint32_t x114 = ((uint32_t)x112 & 0x7fffff);
- { uint64_t x115 = (x113 + x67);
- { uint64_t x116 = (x115 >> 0x17);
- { uint32_t x117 = ((uint32_t)x115 & 0x7fffff);
- { uint64_t x118 = (x116 + x66);
- { uint64_t x119 = (x118 >> 0x17);
- { uint32_t x120 = ((uint32_t)x118 & 0x7fffff);
- { uint64_t x121 = (x119 + x65);
- { uint64_t x122 = (x121 >> 0x17);
- { uint32_t x123 = ((uint32_t)x121 & 0x7fffff);
- { uint64_t x124 = (x122 + x64);
- { uint32_t x125 = (uint32_t) (x124 >> 0x17);
- { uint32_t x126 = ((uint32_t)x124 & 0x7fffff);
- { uint64_t x127 = (x81 + ((uint64_t)0x19 * x125));
- { uint32_t x128 = (uint32_t) (x127 >> 0x18);
- { uint32_t x129 = ((uint32_t)x127 & 0xffffff);
- { uint32_t x130 = (x128 + x84);
- { uint32_t x131 = (x130 >> 0x17);
- { uint32_t x132 = (x130 & 0x7fffff);
- out[0] = x129;
- out[1] = x132;
- out[2] = (x131 + x87);
- out[3] = x90;
- out[4] = x93;
- out[5] = x96;
- out[6] = x99;
- out[7] = x102;
- out[8] = x105;
- out[9] = x108;
- out[10] = x111;
- out[11] = x114;
- out[12] = x117;
- out[13] = x120;
- out[14] = x123;
- out[15] = x126;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e369m25_16limbs/femul.v b/src/Specific/solinas32_2e369m25_16limbs/femul.v
deleted file mode 100644
index da0b77870..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e369m25_16limbs.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_2e369m25_16limbs/femulDisplay.log b/src/Specific/solinas32_2e369m25_16limbs/femulDisplay.log
deleted file mode 100644
index de38629da..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/femulDisplay.log
+++ /dev/null
@@ -1,76 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- uint64_t x64 = (((uint64_t)x5 * x62) + ((0x2 * ((uint64_t)x7 * x63)) + ((0x2 * ((uint64_t)x9 * x61)) + ((0x2 * ((uint64_t)x11 * x59)) + ((0x2 * ((uint64_t)x13 * x57)) + ((0x2 * ((uint64_t)x15 * x55)) + ((0x2 * ((uint64_t)x17 * x53)) + ((0x2 * ((uint64_t)x19 * x51)) + ((0x2 * ((uint64_t)x21 * x49)) + ((0x2 * ((uint64_t)x23 * x47)) + ((0x2 * ((uint64_t)x25 * x45)) + ((0x2 * ((uint64_t)x27 * x43)) + ((0x2 * ((uint64_t)x29 * x41)) + ((0x2 * ((uint64_t)x31 * x39)) + ((0x2 * ((uint64_t)x33 * x37)) + ((uint64_t)x32 * x35))))))))))))))));
- uint64_t x65 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + ((0x2 * ((uint64_t)x25 * x43)) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((0x2 * ((uint64_t)x31 * x37)) + ((uint64_t)x33 * x35))))))))))))))) + (0x19 * ((uint64_t)x32 * x62)));
- uint64_t x66 = ((((uint64_t)x5 * x61) + ((0x2 * ((uint64_t)x7 * x59)) + ((0x2 * ((uint64_t)x9 * x57)) + ((0x2 * ((uint64_t)x11 * x55)) + ((0x2 * ((uint64_t)x13 * x53)) + ((0x2 * ((uint64_t)x15 * x51)) + ((0x2 * ((uint64_t)x17 * x49)) + ((0x2 * ((uint64_t)x19 * x47)) + ((0x2 * ((uint64_t)x21 * x45)) + ((0x2 * ((uint64_t)x23 * x43)) + ((0x2 * ((uint64_t)x25 * x41)) + ((0x2 * ((uint64_t)x27 * x39)) + ((0x2 * ((uint64_t)x29 * x37)) + ((uint64_t)x31 * x35)))))))))))))) + (0x19 * (((uint64_t)x33 * x62) + ((uint64_t)x32 * x63))));
- uint64_t x67 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + ((0x2 * ((uint64_t)x27 * x37)) + ((uint64_t)x29 * x35))))))))))))) + (0x19 * (((uint64_t)x31 * x62) + (((uint64_t)x33 * x63) + ((uint64_t)x32 * x61)))));
- uint64_t x68 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + ((0x2 * ((uint64_t)x25 * x37)) + ((uint64_t)x27 * x35)))))))))))) + (0x19 * (((uint64_t)x29 * x62) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + ((uint64_t)x32 * x59))))));
- uint64_t x69 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((uint64_t)x25 * x35))))))))))) + (0x19 * (((uint64_t)x27 * x62) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + (((uint64_t)x33 * x59) + ((uint64_t)x32 * x57)))))));
- uint64_t x70 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + ((uint64_t)x23 * x35)))))))))) + (0x19 * (((uint64_t)x25 * x62) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + ((uint64_t)x32 * x55))))))));
- uint64_t x71 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + ((uint64_t)x21 * x35))))))))) + (0x19 * (((uint64_t)x23 * x62) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + ((uint64_t)x32 * x53)))))))));
- uint64_t x72 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + ((0x2 * ((uint64_t)x11 * x43)) + ((0x2 * ((uint64_t)x13 * x41)) + ((0x2 * ((uint64_t)x15 * x39)) + ((0x2 * ((uint64_t)x17 * x37)) + ((uint64_t)x19 * x35)))))))) + (0x19 * (((uint64_t)x21 * x62) + (((uint64_t)x23 * x63) + (((uint64_t)x25 * x61) + (((uint64_t)x27 * x59) + (((uint64_t)x29 * x57) + (((uint64_t)x31 * x55) + (((uint64_t)x33 * x53) + ((uint64_t)x32 * x51))))))))));
- uint64_t x73 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((uint64_t)x17 * x35))))))) + (0x19 * (((uint64_t)x19 * x62) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + ((uint64_t)x32 * x49)))))))))));
- uint64_t x74 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + ((0x2 * ((uint64_t)x13 * x37)) + ((uint64_t)x15 * x35)))))) + (0x19 * (((uint64_t)x17 * x62) + (((uint64_t)x19 * x63) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + ((uint64_t)x32 * x47))))))))))));
- uint64_t x75 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((uint64_t)x13 * x35))))) + (0x19 * (((uint64_t)x15 * x62) + (((uint64_t)x17 * x63) + (((uint64_t)x19 * x61) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + (((uint64_t)x31 * x49) + (((uint64_t)x33 * x47) + ((uint64_t)x32 * x45)))))))))))));
- uint64_t x76 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + ((uint64_t)x11 * x35)))) + (0x19 * (((uint64_t)x13 * x62) + (((uint64_t)x15 * x63) + (((uint64_t)x17 * x61) + (((uint64_t)x19 * x59) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + (((uint64_t)x29 * x49) + (((uint64_t)x31 * x47) + (((uint64_t)x33 * x45) + ((uint64_t)x32 * x43))))))))))))));
- uint64_t x77 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((uint64_t)x9 * x35))) + (0x19 * (((uint64_t)x11 * x62) + (((uint64_t)x13 * x63) + (((uint64_t)x15 * x61) + (((uint64_t)x17 * x59) + (((uint64_t)x19 * x57) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (((uint64_t)x29 * x47) + (((uint64_t)x31 * x45) + (((uint64_t)x33 * x43) + ((uint64_t)x32 * x41)))))))))))))));
- uint64_t x78 = ((((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)) + (0x19 * (((uint64_t)x9 * x62) + (((uint64_t)x11 * x63) + (((uint64_t)x13 * x61) + (((uint64_t)x15 * x59) + (((uint64_t)x17 * x57) + (((uint64_t)x19 * x55) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + (((uint64_t)x25 * x49) + (((uint64_t)x27 * x47) + (((uint64_t)x29 * x45) + (((uint64_t)x31 * x43) + (((uint64_t)x33 * x41) + ((uint64_t)x32 * x39))))))))))))))));
- uint64_t x79 = (((uint64_t)x5 * x35) + (0x19 * ((0x2 * ((uint64_t)x7 * x62)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + (0x2 * ((uint64_t)x32 * x37))))))))))))))))));
- uint64_t x80 = (x79 >> 0x18);
- uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- uint64_t x82 = (x80 + x78);
- uint64_t x83 = (x82 >> 0x17);
- uint32_t x84 = ((uint32_t)x82 & 0x7fffff);
- uint64_t x85 = (x83 + x77);
- uint64_t x86 = (x85 >> 0x17);
- uint32_t x87 = ((uint32_t)x85 & 0x7fffff);
- uint64_t x88 = (x86 + x76);
- uint64_t x89 = (x88 >> 0x17);
- uint32_t x90 = ((uint32_t)x88 & 0x7fffff);
- uint64_t x91 = (x89 + x75);
- uint64_t x92 = (x91 >> 0x17);
- uint32_t x93 = ((uint32_t)x91 & 0x7fffff);
- uint64_t x94 = (x92 + x74);
- uint64_t x95 = (x94 >> 0x17);
- uint32_t x96 = ((uint32_t)x94 & 0x7fffff);
- uint64_t x97 = (x95 + x73);
- uint64_t x98 = (x97 >> 0x17);
- uint32_t x99 = ((uint32_t)x97 & 0x7fffff);
- uint64_t x100 = (x98 + x72);
- uint64_t x101 = (x100 >> 0x17);
- uint32_t x102 = ((uint32_t)x100 & 0x7fffff);
- uint64_t x103 = (x101 + x71);
- uint64_t x104 = (x103 >> 0x17);
- uint32_t x105 = ((uint32_t)x103 & 0x7fffff);
- uint64_t x106 = (x104 + x70);
- uint64_t x107 = (x106 >> 0x17);
- uint32_t x108 = ((uint32_t)x106 & 0x7fffff);
- uint64_t x109 = (x107 + x69);
- uint64_t x110 = (x109 >> 0x17);
- uint32_t x111 = ((uint32_t)x109 & 0x7fffff);
- uint64_t x112 = (x110 + x68);
- uint64_t x113 = (x112 >> 0x17);
- uint32_t x114 = ((uint32_t)x112 & 0x7fffff);
- uint64_t x115 = (x113 + x67);
- uint64_t x116 = (x115 >> 0x17);
- uint32_t x117 = ((uint32_t)x115 & 0x7fffff);
- uint64_t x118 = (x116 + x66);
- uint64_t x119 = (x118 >> 0x17);
- uint32_t x120 = ((uint32_t)x118 & 0x7fffff);
- uint64_t x121 = (x119 + x65);
- uint64_t x122 = (x121 >> 0x17);
- uint32_t x123 = ((uint32_t)x121 & 0x7fffff);
- uint64_t x124 = (x122 + x64);
- uint32_t x125 = (uint32_t) (x124 >> 0x17);
- uint32_t x126 = ((uint32_t)x124 & 0x7fffff);
- uint64_t x127 = (x81 + ((uint64_t)0x19 * x125));
- uint32_t x128 = (uint32_t) (x127 >> 0x18);
- uint32_t x129 = ((uint32_t)x127 & 0xffffff);
- uint32_t x130 = (x128 + x84);
- uint32_t x131 = (x130 >> 0x17);
- uint32_t x132 = (x130 & 0x7fffff);
- return (Return x126, Return x123, Return x120, Return x117, Return x114, Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, (x131 + x87), Return x132, Return x129))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e369m25_16limbs/femulDisplay.v b/src/Specific/solinas32_2e369m25_16limbs/femulDisplay.v
deleted file mode 100644
index 119fc316f..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e369m25_16limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e369m25_16limbs/fesquare.c b/src/Specific/solinas32_2e369m25_16limbs/fesquare.c
deleted file mode 100644
index dc12ffc32..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/fesquare.c
+++ /dev/null
@@ -1,104 +0,0 @@
-static void fesquare(uint32_t out[16], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x31 = (((uint64_t)x2 * x29) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x29 * x2))))))))))))))));
- { uint64_t x32 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + ((0x2 * ((uint64_t)x6 * x26)) + ((0x2 * ((uint64_t)x8 * x24)) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + ((0x2 * ((uint64_t)x24 * x8)) + ((0x2 * ((uint64_t)x26 * x6)) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x19 * ((uint64_t)x29 * x29)));
- { uint64_t x33 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x19 * (((uint64_t)x30 * x29) + ((uint64_t)x29 * x30))));
- { uint64_t x34 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x19 * (((uint64_t)x28 * x29) + (((uint64_t)x30 * x30) + ((uint64_t)x29 * x28)))));
- { uint64_t x35 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x19 * (((uint64_t)x26 * x29) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + ((uint64_t)x29 * x26))))));
- { uint64_t x36 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x19 * (((uint64_t)x24 * x29) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + ((uint64_t)x29 * x24)))))));
- { uint64_t x37 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x19 * (((uint64_t)x22 * x29) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + ((uint64_t)x29 * x22))))))));
- { uint64_t x38 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x19 * (((uint64_t)x20 * x29) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + ((uint64_t)x29 * x20)))))))));
- { uint64_t x39 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x19 * (((uint64_t)x18 * x29) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + ((uint64_t)x29 * x18))))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x19 * (((uint64_t)x16 * x29) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + ((uint64_t)x29 * x16)))))))))));
- { uint64_t x41 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x19 * (((uint64_t)x14 * x29) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + ((uint64_t)x29 * x14))))))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x19 * (((uint64_t)x12 * x29) + (((uint64_t)x14 * x30) + (((uint64_t)x16 * x28) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + (((uint64_t)x28 * x16) + (((uint64_t)x30 * x14) + ((uint64_t)x29 * x12)))))))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x19 * (((uint64_t)x10 * x29) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + ((uint64_t)x29 * x10))))))))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x19 * (((uint64_t)x8 * x29) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + (((uint64_t)x14 * x26) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (((uint64_t)x26 * x14) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + ((uint64_t)x29 * x8)))))))))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x19 * (((uint64_t)x6 * x29) + (((uint64_t)x8 * x30) + (((uint64_t)x10 * x28) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + (((uint64_t)x28 * x10) + (((uint64_t)x30 * x8) + ((uint64_t)x29 * x6))))))))))))))));
- { uint64_t x46 = (((uint64_t)x2 * x2) + (0x19 * ((0x2 * ((uint64_t)x4 * x29)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + (0x2 * ((uint64_t)x29 * x4))))))))))))))))));
- { uint64_t x47 = (x46 >> 0x18);
- { uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- { uint64_t x49 = (x47 + x45);
- { uint64_t x50 = (x49 >> 0x17);
- { uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- { uint64_t x52 = (x50 + x44);
- { uint64_t x53 = (x52 >> 0x17);
- { uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- { uint64_t x55 = (x53 + x43);
- { uint64_t x56 = (x55 >> 0x17);
- { uint32_t x57 = ((uint32_t)x55 & 0x7fffff);
- { uint64_t x58 = (x56 + x42);
- { uint64_t x59 = (x58 >> 0x17);
- { uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- { uint64_t x61 = (x59 + x41);
- { uint64_t x62 = (x61 >> 0x17);
- { uint32_t x63 = ((uint32_t)x61 & 0x7fffff);
- { uint64_t x64 = (x62 + x40);
- { uint64_t x65 = (x64 >> 0x17);
- { uint32_t x66 = ((uint32_t)x64 & 0x7fffff);
- { uint64_t x67 = (x65 + x39);
- { uint64_t x68 = (x67 >> 0x17);
- { uint32_t x69 = ((uint32_t)x67 & 0x7fffff);
- { uint64_t x70 = (x68 + x38);
- { uint64_t x71 = (x70 >> 0x17);
- { uint32_t x72 = ((uint32_t)x70 & 0x7fffff);
- { uint64_t x73 = (x71 + x37);
- { uint64_t x74 = (x73 >> 0x17);
- { uint32_t x75 = ((uint32_t)x73 & 0x7fffff);
- { uint64_t x76 = (x74 + x36);
- { uint64_t x77 = (x76 >> 0x17);
- { uint32_t x78 = ((uint32_t)x76 & 0x7fffff);
- { uint64_t x79 = (x77 + x35);
- { uint64_t x80 = (x79 >> 0x17);
- { uint32_t x81 = ((uint32_t)x79 & 0x7fffff);
- { uint64_t x82 = (x80 + x34);
- { uint64_t x83 = (x82 >> 0x17);
- { uint32_t x84 = ((uint32_t)x82 & 0x7fffff);
- { uint64_t x85 = (x83 + x33);
- { uint64_t x86 = (x85 >> 0x17);
- { uint32_t x87 = ((uint32_t)x85 & 0x7fffff);
- { uint64_t x88 = (x86 + x32);
- { uint64_t x89 = (x88 >> 0x17);
- { uint32_t x90 = ((uint32_t)x88 & 0x7fffff);
- { uint64_t x91 = (x89 + x31);
- { uint32_t x92 = (uint32_t) (x91 >> 0x17);
- { uint32_t x93 = ((uint32_t)x91 & 0x7fffff);
- { uint64_t x94 = (x48 + ((uint64_t)0x19 * x92));
- { uint32_t x95 = (uint32_t) (x94 >> 0x18);
- { uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- { uint32_t x97 = (x95 + x51);
- { uint32_t x98 = (x97 >> 0x17);
- { uint32_t x99 = (x97 & 0x7fffff);
- out[0] = x96;
- out[1] = x99;
- out[2] = (x98 + x54);
- out[3] = x57;
- out[4] = x60;
- out[5] = x63;
- out[6] = x66;
- out[7] = x69;
- out[8] = x72;
- out[9] = x75;
- out[10] = x78;
- out[11] = x81;
- out[12] = x84;
- out[13] = x87;
- out[14] = x90;
- out[15] = x93;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e369m25_16limbs/fesquare.v b/src/Specific/solinas32_2e369m25_16limbs/fesquare.v
deleted file mode 100644
index c274f3c21..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e369m25_16limbs.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_2e369m25_16limbs/fesquareDisplay.log b/src/Specific/solinas32_2e369m25_16limbs/fesquareDisplay.log
deleted file mode 100644
index 9c6b94bc1..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,76 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x31 = (((uint64_t)x2 * x29) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x29 * x2))))))))))))))));
- uint64_t x32 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + ((0x2 * ((uint64_t)x6 * x26)) + ((0x2 * ((uint64_t)x8 * x24)) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + ((0x2 * ((uint64_t)x24 * x8)) + ((0x2 * ((uint64_t)x26 * x6)) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x19 * ((uint64_t)x29 * x29)));
- uint64_t x33 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x19 * (((uint64_t)x30 * x29) + ((uint64_t)x29 * x30))));
- uint64_t x34 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x19 * (((uint64_t)x28 * x29) + (((uint64_t)x30 * x30) + ((uint64_t)x29 * x28)))));
- uint64_t x35 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x19 * (((uint64_t)x26 * x29) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + ((uint64_t)x29 * x26))))));
- uint64_t x36 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x19 * (((uint64_t)x24 * x29) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + ((uint64_t)x29 * x24)))))));
- uint64_t x37 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x19 * (((uint64_t)x22 * x29) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + ((uint64_t)x29 * x22))))))));
- uint64_t x38 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x19 * (((uint64_t)x20 * x29) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + ((uint64_t)x29 * x20)))))))));
- uint64_t x39 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x19 * (((uint64_t)x18 * x29) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + ((uint64_t)x29 * x18))))))))));
- uint64_t x40 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x19 * (((uint64_t)x16 * x29) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + ((uint64_t)x29 * x16)))))))))));
- uint64_t x41 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x19 * (((uint64_t)x14 * x29) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + ((uint64_t)x29 * x14))))))))))));
- uint64_t x42 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x19 * (((uint64_t)x12 * x29) + (((uint64_t)x14 * x30) + (((uint64_t)x16 * x28) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + (((uint64_t)x28 * x16) + (((uint64_t)x30 * x14) + ((uint64_t)x29 * x12)))))))))))));
- uint64_t x43 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x19 * (((uint64_t)x10 * x29) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + ((uint64_t)x29 * x10))))))))))))));
- uint64_t x44 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x19 * (((uint64_t)x8 * x29) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + (((uint64_t)x14 * x26) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (((uint64_t)x26 * x14) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + ((uint64_t)x29 * x8)))))))))))))));
- uint64_t x45 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x19 * (((uint64_t)x6 * x29) + (((uint64_t)x8 * x30) + (((uint64_t)x10 * x28) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + (((uint64_t)x28 * x10) + (((uint64_t)x30 * x8) + ((uint64_t)x29 * x6))))))))))))))));
- uint64_t x46 = (((uint64_t)x2 * x2) + (0x19 * ((0x2 * ((uint64_t)x4 * x29)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + (0x2 * ((uint64_t)x29 * x4))))))))))))))))));
- uint64_t x47 = (x46 >> 0x18);
- uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- uint64_t x49 = (x47 + x45);
- uint64_t x50 = (x49 >> 0x17);
- uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- uint64_t x52 = (x50 + x44);
- uint64_t x53 = (x52 >> 0x17);
- uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- uint64_t x55 = (x53 + x43);
- uint64_t x56 = (x55 >> 0x17);
- uint32_t x57 = ((uint32_t)x55 & 0x7fffff);
- uint64_t x58 = (x56 + x42);
- uint64_t x59 = (x58 >> 0x17);
- uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- uint64_t x61 = (x59 + x41);
- uint64_t x62 = (x61 >> 0x17);
- uint32_t x63 = ((uint32_t)x61 & 0x7fffff);
- uint64_t x64 = (x62 + x40);
- uint64_t x65 = (x64 >> 0x17);
- uint32_t x66 = ((uint32_t)x64 & 0x7fffff);
- uint64_t x67 = (x65 + x39);
- uint64_t x68 = (x67 >> 0x17);
- uint32_t x69 = ((uint32_t)x67 & 0x7fffff);
- uint64_t x70 = (x68 + x38);
- uint64_t x71 = (x70 >> 0x17);
- uint32_t x72 = ((uint32_t)x70 & 0x7fffff);
- uint64_t x73 = (x71 + x37);
- uint64_t x74 = (x73 >> 0x17);
- uint32_t x75 = ((uint32_t)x73 & 0x7fffff);
- uint64_t x76 = (x74 + x36);
- uint64_t x77 = (x76 >> 0x17);
- uint32_t x78 = ((uint32_t)x76 & 0x7fffff);
- uint64_t x79 = (x77 + x35);
- uint64_t x80 = (x79 >> 0x17);
- uint32_t x81 = ((uint32_t)x79 & 0x7fffff);
- uint64_t x82 = (x80 + x34);
- uint64_t x83 = (x82 >> 0x17);
- uint32_t x84 = ((uint32_t)x82 & 0x7fffff);
- uint64_t x85 = (x83 + x33);
- uint64_t x86 = (x85 >> 0x17);
- uint32_t x87 = ((uint32_t)x85 & 0x7fffff);
- uint64_t x88 = (x86 + x32);
- uint64_t x89 = (x88 >> 0x17);
- uint32_t x90 = ((uint32_t)x88 & 0x7fffff);
- uint64_t x91 = (x89 + x31);
- uint32_t x92 = (uint32_t) (x91 >> 0x17);
- uint32_t x93 = ((uint32_t)x91 & 0x7fffff);
- uint64_t x94 = (x48 + ((uint64_t)0x19 * x92));
- uint32_t x95 = (uint32_t) (x94 >> 0x18);
- uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- uint32_t x97 = (x95 + x51);
- uint32_t x98 = (x97 >> 0x17);
- uint32_t x99 = (x97 & 0x7fffff);
- return (Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, Return x57, (x98 + x54), Return x99, Return x96))
-x
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e369m25_16limbs/fesquareDisplay.v b/src/Specific/solinas32_2e369m25_16limbs/fesquareDisplay.v
deleted file mode 100644
index f911c937b..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e369m25_16limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e369m25_16limbs/fesub.c b/src/Specific/solinas32_2e369m25_16limbs/fesub.c
deleted file mode 100644
index 62ea61d39..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/fesub.c
+++ /dev/null
@@ -1,51 +0,0 @@
-static void fesub(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- out[0] = ((0x1ffffce + x5) - x35);
- out[1] = ((0xfffffe + x7) - x37);
- out[2] = ((0xfffffe + x9) - x39);
- out[3] = ((0xfffffe + x11) - x41);
- out[4] = ((0xfffffe + x13) - x43);
- out[5] = ((0xfffffe + x15) - x45);
- out[6] = ((0xfffffe + x17) - x47);
- out[7] = ((0xfffffe + x19) - x49);
- out[8] = ((0xfffffe + x21) - x51);
- out[9] = ((0xfffffe + x23) - x53);
- out[10] = ((0xfffffe + x25) - x55);
- out[11] = ((0xfffffe + x27) - x57);
- out[12] = ((0xfffffe + x29) - x59);
- out[13] = ((0xfffffe + x31) - x61);
- out[14] = ((0xfffffe + x33) - x63);
- out[15] = ((0xfffffe + x32) - x62);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e369m25_16limbs/fesub.v b/src/Specific/solinas32_2e369m25_16limbs/fesub.v
deleted file mode 100644
index 1dc7d9d19..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e369m25_16limbs.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_2e369m25_16limbs/fesubDisplay.log b/src/Specific/solinas32_2e369m25_16limbs/fesubDisplay.log
deleted file mode 100644
index 861f7676b..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- (((0xfffffe + x32) - x62), ((0xfffffe + x33) - x63), ((0xfffffe + x31) - x61), ((0xfffffe + x29) - x59), ((0xfffffe + x27) - x57), ((0xfffffe + x25) - x55), ((0xfffffe + x23) - x53), ((0xfffffe + x21) - x51), ((0xfffffe + x19) - x49), ((0xfffffe + x17) - x47), ((0xfffffe + x15) - x45), ((0xfffffe + x13) - x43), ((0xfffffe + x11) - x41), ((0xfffffe + x9) - x39), ((0xfffffe + x7) - x37), ((0x1ffffce + x5) - x35)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e369m25_16limbs/fesubDisplay.v b/src/Specific/solinas32_2e369m25_16limbs/fesubDisplay.v
deleted file mode 100644
index 4c5bc0749..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e369m25_16limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e369m25_16limbs/freeze.c b/src/Specific/solinas32_2e369m25_16limbs/freeze.c
deleted file mode 100644
index 9e69a5b92..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/freeze.c
+++ /dev/null
@@ -1,84 +0,0 @@
-static void freeze(uint32_t out[16], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffe7);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x4, 0x7fffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x6, 0x7fffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x8, 0x7fffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x10, 0x7fffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x12, 0x7fffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x14, 0x7fffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x16, 0x7fffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x18, 0x7fffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x20, 0x7fffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x22, 0x7fffff);
- { uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x24, 0x7fffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x26, 0x7fffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x28, 0x7fffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x30, 0x7fffff);
- { uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x29, 0x7fffff);
- { uint32_t x79 = cmovznz32(x78, 0x0, 0xffffffff);
- { uint32_t x80 = (x79 & 0xffffe7);
- { uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x32, Return x80);
- { uint32_t x84 = (x79 & 0x7fffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x35, Return x84);
- { uint32_t x88 = (x79 & 0x7fffff);
- { uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x38, Return x88);
- { uint32_t x92 = (x79 & 0x7fffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x41, Return x92);
- { uint32_t x96 = (x79 & 0x7fffff);
- { uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x44, Return x96);
- { uint32_t x100 = (x79 & 0x7fffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x47, Return x100);
- { uint32_t x104 = (x79 & 0x7fffff);
- { uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x50, Return x104);
- { uint32_t x108 = (x79 & 0x7fffff);
- { uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x53, Return x108);
- { uint32_t x112 = (x79 & 0x7fffff);
- { uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x56, Return x112);
- { uint32_t x116 = (x79 & 0x7fffff);
- { uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x59, Return x116);
- { uint32_t x120 = (x79 & 0x7fffff);
- { uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x62, Return x120);
- { uint32_t x124 = (x79 & 0x7fffff);
- { uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x65, Return x124);
- { uint32_t x128 = (x79 & 0x7fffff);
- { uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x68, Return x128);
- { uint32_t x132 = (x79 & 0x7fffff);
- { uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x71, Return x132);
- { uint32_t x136 = (x79 & 0x7fffff);
- { uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x74, Return x136);
- { uint32_t x140 = (x79 & 0x7fffff);
- { uint32_t x142, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x77, Return x140);
- out[0] = x82;
- out[1] = x86;
- out[2] = x90;
- out[3] = x94;
- out[4] = x98;
- out[5] = x102;
- out[6] = x106;
- out[7] = x110;
- out[8] = x114;
- out[9] = x118;
- out[10] = x122;
- out[11] = x126;
- out[12] = x130;
- out[13] = x134;
- out[14] = x138;
- out[15] = x142;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e369m25_16limbs/freeze.v b/src/Specific/solinas32_2e369m25_16limbs/freeze.v
deleted file mode 100644
index a572cf74d..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e369m25_16limbs.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_2e369m25_16limbs/freezeDisplay.log b/src/Specific/solinas32_2e369m25_16limbs/freezeDisplay.log
deleted file mode 100644
index 8bf6ce780..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/freezeDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffe7);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x4, 0x7fffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x6, 0x7fffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x8, 0x7fffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x10, 0x7fffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x12, 0x7fffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x14, 0x7fffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x16, 0x7fffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x18, 0x7fffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x20, 0x7fffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x22, 0x7fffff);
- uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x24, 0x7fffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x26, 0x7fffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x28, 0x7fffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x30, 0x7fffff);
- uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x29, 0x7fffff);
- uint32_t x79 = cmovznz32(x78, 0x0, 0xffffffff);
- uint32_t x80 = (x79 & 0xffffe7);
- uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x32, Return x80);
- uint32_t x84 = (x79 & 0x7fffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x35, Return x84);
- uint32_t x88 = (x79 & 0x7fffff);
- uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x38, Return x88);
- uint32_t x92 = (x79 & 0x7fffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x41, Return x92);
- uint32_t x96 = (x79 & 0x7fffff);
- uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x44, Return x96);
- uint32_t x100 = (x79 & 0x7fffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x47, Return x100);
- uint32_t x104 = (x79 & 0x7fffff);
- uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x50, Return x104);
- uint32_t x108 = (x79 & 0x7fffff);
- uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x53, Return x108);
- uint32_t x112 = (x79 & 0x7fffff);
- uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x56, Return x112);
- uint32_t x116 = (x79 & 0x7fffff);
- uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x59, Return x116);
- uint32_t x120 = (x79 & 0x7fffff);
- uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x62, Return x120);
- uint32_t x124 = (x79 & 0x7fffff);
- uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x65, Return x124);
- uint32_t x128 = (x79 & 0x7fffff);
- uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x68, Return x128);
- uint32_t x132 = (x79 & 0x7fffff);
- uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x71, Return x132);
- uint32_t x136 = (x79 & 0x7fffff);
- uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x74, Return x136);
- uint32_t x140 = (x79 & 0x7fffff);
- uint32_t x142, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x77, Return x140);
- (Return x142, Return x138, Return x134, Return x130, Return x126, Return x122, Return x118, Return x114, Return x110, Return x106, Return x102, Return x98, Return x94, Return x90, Return x86, Return x82))
-x
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e369m25_16limbs/freezeDisplay.v b/src/Specific/solinas32_2e369m25_16limbs/freezeDisplay.v
deleted file mode 100644
index 2e860427f..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e369m25_16limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e369m25_16limbs/py_interpreter.sh b/src/Specific/solinas32_2e369m25_16limbs/py_interpreter.sh
deleted file mode 100755
index df5837055..000000000
--- a/src/Specific/solinas32_2e369m25_16limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**369 - 25' -Dmodulus_bytes='23 + 1/16' -Da24='121665'
diff --git a/src/Specific/solinas32_2e379m19_15limbs/CurveParameters.v b/src/Specific/solinas32_2e379m19_15limbs/CurveParameters.v
deleted file mode 100644
index 32bb0f429..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^379 - 19
-Base: 25 + 4/15
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 15%nat;
- base := 25 + 4/15;
- bitwidth := 32;
- s := 2^379;
- c := [(1, 19)];
- carry_chains := Some [seq 0 (pred 15); [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_2e379m19_15limbs/Synthesis.v b/src/Specific/solinas32_2e379m19_15limbs/Synthesis.v
deleted file mode 100644
index 1e832c116..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e379m19_15limbs.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_2e379m19_15limbs/compiler.sh b/src/Specific/solinas32_2e379m19_15limbs/compiler.sh
deleted file mode 100755
index fe18607f8..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,25,25,26,25,25,25,26,25,25,25,26,25,25,25}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<379) - 19' "$@"
diff --git a/src/Specific/solinas32_2e379m19_15limbs/compilerxx.sh b/src/Specific/solinas32_2e379m19_15limbs/compilerxx.sh
deleted file mode 100755
index a32f534ca..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,25,25,26,25,25,25,26,25,25,25,26,25,25,25}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<379) - 19' "$@"
diff --git a/src/Specific/solinas32_2e379m19_15limbs/feadd.c b/src/Specific/solinas32_2e379m19_15limbs/feadd.c
deleted file mode 100644
index 72a59425b..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/feadd.c
+++ /dev/null
@@ -1,48 +0,0 @@
-static void feadd(uint32_t out[15], const uint32_t in1[15], const uint32_t in2[15]) {
- { const uint32_t x30 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x58 = in2[14];
- { const uint32_t x59 = in2[13];
- { const uint32_t x57 = in2[12];
- { const uint32_t x55 = in2[11];
- { const uint32_t x53 = in2[10];
- { const uint32_t x51 = in2[9];
- { const uint32_t x49 = in2[8];
- { const uint32_t x47 = in2[7];
- { const uint32_t x45 = in2[6];
- { const uint32_t x43 = in2[5];
- { const uint32_t x41 = in2[4];
- { const uint32_t x39 = in2[3];
- { const uint32_t x37 = in2[2];
- { const uint32_t x35 = in2[1];
- { const uint32_t x33 = in2[0];
- out[0] = (x5 + x33);
- out[1] = (x7 + x35);
- out[2] = (x9 + x37);
- out[3] = (x11 + x39);
- out[4] = (x13 + x41);
- out[5] = (x15 + x43);
- out[6] = (x17 + x45);
- out[7] = (x19 + x47);
- out[8] = (x21 + x49);
- out[9] = (x23 + x51);
- out[10] = (x25 + x53);
- out[11] = (x27 + x55);
- out[12] = (x29 + x57);
- out[13] = (x31 + x59);
- out[14] = (x30 + x58);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e379m19_15limbs/feadd.v b/src/Specific/solinas32_2e379m19_15limbs/feadd.v
deleted file mode 100644
index c0f72ae72..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e379m19_15limbs.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_2e379m19_15limbs/feaddDisplay.log b/src/Specific/solinas32_2e379m19_15limbs/feaddDisplay.log
deleted file mode 100644
index 08d611628..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x30, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x58, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33))%core,
- ((x30 + x58), (x31 + x59), (x29 + x57), (x27 + x55), (x25 + x53), (x23 + x51), (x21 + x49), (x19 + x47), (x17 + x45), (x15 + x43), (x13 + x41), (x11 + x39), (x9 + x37), (x7 + x35), (x5 + x33)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e379m19_15limbs/feaddDisplay.v b/src/Specific/solinas32_2e379m19_15limbs/feaddDisplay.v
deleted file mode 100644
index a13dc39b4..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e379m19_15limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e379m19_15limbs/fecarry.v b/src/Specific/solinas32_2e379m19_15limbs/fecarry.v
deleted file mode 100644
index 33ca01750..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e379m19_15limbs.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_2e379m19_15limbs/fecarryDisplay.v b/src/Specific/solinas32_2e379m19_15limbs/fecarryDisplay.v
deleted file mode 100644
index 6c536b51d..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e379m19_15limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e379m19_15limbs/femul.c b/src/Specific/solinas32_2e379m19_15limbs/femul.c
deleted file mode 100644
index 21a92f9cb..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/femul.c
+++ /dev/null
@@ -1,113 +0,0 @@
-static void femul(uint32_t out[15], const uint32_t in1[15], const uint32_t in2[15]) {
- { const uint32_t x30 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x58 = in2[14];
- { const uint32_t x59 = in2[13];
- { const uint32_t x57 = in2[12];
- { const uint32_t x55 = in2[11];
- { const uint32_t x53 = in2[10];
- { const uint32_t x51 = in2[9];
- { const uint32_t x49 = in2[8];
- { const uint32_t x47 = in2[7];
- { const uint32_t x45 = in2[6];
- { const uint32_t x43 = in2[5];
- { const uint32_t x41 = in2[4];
- { const uint32_t x39 = in2[3];
- { const uint32_t x37 = in2[2];
- { const uint32_t x35 = in2[1];
- { const uint32_t x33 = in2[0];
- { uint64_t x60 = (((uint64_t)x5 * x58) + ((0x2 * ((uint64_t)x7 * x59)) + ((0x2 * ((uint64_t)x9 * x57)) + (((uint64_t)x11 * x55) + ((0x2 * ((uint64_t)x13 * x53)) + ((0x2 * ((uint64_t)x15 * x51)) + ((0x2 * ((uint64_t)x17 * x49)) + (((uint64_t)x19 * x47) + ((0x2 * ((uint64_t)x21 * x45)) + ((0x2 * ((uint64_t)x23 * x43)) + ((0x2 * ((uint64_t)x25 * x41)) + (((uint64_t)x27 * x39) + ((0x2 * ((uint64_t)x29 * x37)) + ((0x2 * ((uint64_t)x31 * x35)) + ((uint64_t)x30 * x33)))))))))))))));
- { uint64_t x61 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + (((uint64_t)x25 * x39) + (((uint64_t)x27 * x37) + ((0x2 * ((uint64_t)x29 * x35)) + ((uint64_t)x31 * x33)))))))))))))) + (0x13 * ((uint64_t)x30 * x58)));
- { uint64_t x62 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + (((uint64_t)x23 * x39) + (((uint64_t)x25 * x37) + (((uint64_t)x27 * x35) + ((uint64_t)x29 * x33))))))))))))) + (0x13 * (((uint64_t)x31 * x58) + ((uint64_t)x30 * x59))));
- { uint64_t x63 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((0x2 * ((uint64_t)x25 * x35)) + ((uint64_t)x27 * x33)))))))))))) + (0x13 * ((0x2 * ((uint64_t)x29 * x58)) + ((0x2 * ((uint64_t)x31 * x59)) + (0x2 * ((uint64_t)x30 * x57))))));
- { uint64_t x64 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + (((uint64_t)x19 * x39) + ((0x2 * ((uint64_t)x21 * x37)) + ((0x2 * ((uint64_t)x23 * x35)) + ((uint64_t)x25 * x33))))))))))) + (0x13 * (((uint64_t)x27 * x58) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + ((uint64_t)x30 * x55))))));
- { uint64_t x65 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + ((0x2 * ((uint64_t)x21 * x35)) + ((uint64_t)x23 * x33)))))))))) + (0x13 * (((uint64_t)x25 * x58) + (((uint64_t)x27 * x59) + ((0x2 * ((uint64_t)x29 * x57)) + (((uint64_t)x31 * x55) + ((uint64_t)x30 * x53)))))));
- { uint64_t x66 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + ((uint64_t)x21 * x33))))))))) + (0x13 * (((uint64_t)x23 * x58) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + ((uint64_t)x30 * x51))))))));
- { uint64_t x67 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((0x2 * ((uint64_t)x17 * x35)) + ((uint64_t)x19 * x33)))))))) + (0x13 * ((0x2 * ((uint64_t)x21 * x58)) + ((0x2 * ((uint64_t)x23 * x59)) + ((0x2 * ((uint64_t)x25 * x57)) + (((uint64_t)x27 * x55) + ((0x2 * ((uint64_t)x29 * x53)) + ((0x2 * ((uint64_t)x31 * x51)) + (0x2 * ((uint64_t)x30 * x49))))))))));
- { uint64_t x68 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + (((uint64_t)x11 * x39) + ((0x2 * ((uint64_t)x13 * x37)) + ((0x2 * ((uint64_t)x15 * x35)) + ((uint64_t)x17 * x33))))))) + (0x13 * (((uint64_t)x19 * x58) + ((0x2 * ((uint64_t)x21 * x59)) + ((0x2 * ((uint64_t)x23 * x57)) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + ((0x2 * ((uint64_t)x29 * x51)) + ((0x2 * ((uint64_t)x31 * x49)) + ((uint64_t)x30 * x47))))))))));
- { uint64_t x69 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((0x2 * ((uint64_t)x13 * x35)) + ((uint64_t)x15 * x33)))))) + (0x13 * (((uint64_t)x17 * x58) + (((uint64_t)x19 * x59) + ((0x2 * ((uint64_t)x21 * x57)) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + ((0x2 * ((uint64_t)x29 * x49)) + (((uint64_t)x31 * x47) + ((uint64_t)x30 * x45)))))))))));
- { uint64_t x70 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + ((uint64_t)x13 * x33))))) + (0x13 * (((uint64_t)x15 * x58) + (((uint64_t)x17 * x59) + (((uint64_t)x19 * x57) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (((uint64_t)x29 * x47) + (((uint64_t)x31 * x45) + ((uint64_t)x30 * x43))))))))))));
- { uint64_t x71 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + ((uint64_t)x11 * x33)))) + (0x13 * ((0x2 * ((uint64_t)x13 * x58)) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + (((uint64_t)x19 * x55) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + (((uint64_t)x27 * x47) + ((0x2 * ((uint64_t)x29 * x45)) + ((0x2 * ((uint64_t)x31 * x43)) + (0x2 * ((uint64_t)x30 * x41))))))))))))));
- { uint64_t x72 = ((((uint64_t)x5 * x37) + ((0x2 * ((uint64_t)x7 * x35)) + ((uint64_t)x9 * x33))) + (0x13 * (((uint64_t)x11 * x58) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((uint64_t)x30 * x39))))))))))))));
- { uint64_t x73 = ((((uint64_t)x5 * x35) + ((uint64_t)x7 * x33)) + (0x13 * (((uint64_t)x9 * x58) + (((uint64_t)x11 * x59) + ((0x2 * ((uint64_t)x13 * x57)) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + ((0x2 * ((uint64_t)x21 * x49)) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + ((0x2 * ((uint64_t)x29 * x41)) + (((uint64_t)x31 * x39) + ((uint64_t)x30 * x37)))))))))))))));
- { uint64_t x74 = (((uint64_t)x5 * x33) + (0x13 * ((0x2 * ((uint64_t)x7 * x58)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + ((0x2 * ((uint64_t)x25 * x43)) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((0x2 * ((uint64_t)x31 * x37)) + (0x2 * ((uint64_t)x30 * x35)))))))))))))))));
- { uint64_t x75 = (x74 >> 0x1a);
- { uint32_t x76 = ((uint32_t)x74 & 0x3ffffff);
- { uint64_t x77 = (x75 + x73);
- { uint64_t x78 = (x77 >> 0x19);
- { uint32_t x79 = ((uint32_t)x77 & 0x1ffffff);
- { uint64_t x80 = (x78 + x72);
- { uint64_t x81 = (x80 >> 0x19);
- { uint32_t x82 = ((uint32_t)x80 & 0x1ffffff);
- { uint64_t x83 = (x81 + x71);
- { uint64_t x84 = (x83 >> 0x1a);
- { uint32_t x85 = ((uint32_t)x83 & 0x3ffffff);
- { uint64_t x86 = (x84 + x70);
- { uint64_t x87 = (x86 >> 0x19);
- { uint32_t x88 = ((uint32_t)x86 & 0x1ffffff);
- { uint64_t x89 = (x87 + x69);
- { uint64_t x90 = (x89 >> 0x19);
- { uint32_t x91 = ((uint32_t)x89 & 0x1ffffff);
- { uint64_t x92 = (x90 + x68);
- { uint64_t x93 = (x92 >> 0x19);
- { uint32_t x94 = ((uint32_t)x92 & 0x1ffffff);
- { uint64_t x95 = (x93 + x67);
- { uint64_t x96 = (x95 >> 0x1a);
- { uint32_t x97 = ((uint32_t)x95 & 0x3ffffff);
- { uint64_t x98 = (x96 + x66);
- { uint64_t x99 = (x98 >> 0x19);
- { uint32_t x100 = ((uint32_t)x98 & 0x1ffffff);
- { uint64_t x101 = (x99 + x65);
- { uint64_t x102 = (x101 >> 0x19);
- { uint32_t x103 = ((uint32_t)x101 & 0x1ffffff);
- { uint64_t x104 = (x102 + x64);
- { uint64_t x105 = (x104 >> 0x19);
- { uint32_t x106 = ((uint32_t)x104 & 0x1ffffff);
- { uint64_t x107 = (x105 + x63);
- { uint64_t x108 = (x107 >> 0x1a);
- { uint32_t x109 = ((uint32_t)x107 & 0x3ffffff);
- { uint64_t x110 = (x108 + x62);
- { uint64_t x111 = (x110 >> 0x19);
- { uint32_t x112 = ((uint32_t)x110 & 0x1ffffff);
- { uint64_t x113 = (x111 + x61);
- { uint64_t x114 = (x113 >> 0x19);
- { uint32_t x115 = ((uint32_t)x113 & 0x1ffffff);
- { uint64_t x116 = (x114 + x60);
- { uint64_t x117 = (x116 >> 0x19);
- { uint32_t x118 = ((uint32_t)x116 & 0x1ffffff);
- { uint64_t x119 = (x76 + (0x13 * x117));
- { uint32_t x120 = (uint32_t) (x119 >> 0x1a);
- { uint32_t x121 = ((uint32_t)x119 & 0x3ffffff);
- { uint32_t x122 = (x120 + x79);
- { uint32_t x123 = (x122 >> 0x19);
- { uint32_t x124 = (x122 & 0x1ffffff);
- out[0] = x121;
- out[1] = x124;
- out[2] = (x123 + x82);
- out[3] = x85;
- out[4] = x88;
- out[5] = x91;
- out[6] = x94;
- out[7] = x97;
- out[8] = x100;
- out[9] = x103;
- out[10] = x106;
- out[11] = x109;
- out[12] = x112;
- out[13] = x115;
- out[14] = x118;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e379m19_15limbs/femul.v b/src/Specific/solinas32_2e379m19_15limbs/femul.v
deleted file mode 100644
index c00e662c7..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e379m19_15limbs.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_2e379m19_15limbs/femulDisplay.log b/src/Specific/solinas32_2e379m19_15limbs/femulDisplay.log
deleted file mode 100644
index 4a2320efa..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/femulDisplay.log
+++ /dev/null
@@ -1,72 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x30, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x58, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33))%core,
- uint64_t x60 = (((uint64_t)x5 * x58) + ((0x2 * ((uint64_t)x7 * x59)) + ((0x2 * ((uint64_t)x9 * x57)) + (((uint64_t)x11 * x55) + ((0x2 * ((uint64_t)x13 * x53)) + ((0x2 * ((uint64_t)x15 * x51)) + ((0x2 * ((uint64_t)x17 * x49)) + (((uint64_t)x19 * x47) + ((0x2 * ((uint64_t)x21 * x45)) + ((0x2 * ((uint64_t)x23 * x43)) + ((0x2 * ((uint64_t)x25 * x41)) + (((uint64_t)x27 * x39) + ((0x2 * ((uint64_t)x29 * x37)) + ((0x2 * ((uint64_t)x31 * x35)) + ((uint64_t)x30 * x33)))))))))))))));
- uint64_t x61 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + (((uint64_t)x25 * x39) + (((uint64_t)x27 * x37) + ((0x2 * ((uint64_t)x29 * x35)) + ((uint64_t)x31 * x33)))))))))))))) + (0x13 * ((uint64_t)x30 * x58)));
- uint64_t x62 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + (((uint64_t)x23 * x39) + (((uint64_t)x25 * x37) + (((uint64_t)x27 * x35) + ((uint64_t)x29 * x33))))))))))))) + (0x13 * (((uint64_t)x31 * x58) + ((uint64_t)x30 * x59))));
- uint64_t x63 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((0x2 * ((uint64_t)x25 * x35)) + ((uint64_t)x27 * x33)))))))))))) + (0x13 * ((0x2 * ((uint64_t)x29 * x58)) + ((0x2 * ((uint64_t)x31 * x59)) + (0x2 * ((uint64_t)x30 * x57))))));
- uint64_t x64 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + (((uint64_t)x19 * x39) + ((0x2 * ((uint64_t)x21 * x37)) + ((0x2 * ((uint64_t)x23 * x35)) + ((uint64_t)x25 * x33))))))))))) + (0x13 * (((uint64_t)x27 * x58) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + ((uint64_t)x30 * x55))))));
- uint64_t x65 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + ((0x2 * ((uint64_t)x21 * x35)) + ((uint64_t)x23 * x33)))))))))) + (0x13 * (((uint64_t)x25 * x58) + (((uint64_t)x27 * x59) + ((0x2 * ((uint64_t)x29 * x57)) + (((uint64_t)x31 * x55) + ((uint64_t)x30 * x53)))))));
- uint64_t x66 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + ((uint64_t)x21 * x33))))))))) + (0x13 * (((uint64_t)x23 * x58) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + ((uint64_t)x30 * x51))))))));
- uint64_t x67 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((0x2 * ((uint64_t)x17 * x35)) + ((uint64_t)x19 * x33)))))))) + (0x13 * ((0x2 * ((uint64_t)x21 * x58)) + ((0x2 * ((uint64_t)x23 * x59)) + ((0x2 * ((uint64_t)x25 * x57)) + (((uint64_t)x27 * x55) + ((0x2 * ((uint64_t)x29 * x53)) + ((0x2 * ((uint64_t)x31 * x51)) + (0x2 * ((uint64_t)x30 * x49))))))))));
- uint64_t x68 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + (((uint64_t)x11 * x39) + ((0x2 * ((uint64_t)x13 * x37)) + ((0x2 * ((uint64_t)x15 * x35)) + ((uint64_t)x17 * x33))))))) + (0x13 * (((uint64_t)x19 * x58) + ((0x2 * ((uint64_t)x21 * x59)) + ((0x2 * ((uint64_t)x23 * x57)) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + ((0x2 * ((uint64_t)x29 * x51)) + ((0x2 * ((uint64_t)x31 * x49)) + ((uint64_t)x30 * x47))))))))));
- uint64_t x69 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((0x2 * ((uint64_t)x13 * x35)) + ((uint64_t)x15 * x33)))))) + (0x13 * (((uint64_t)x17 * x58) + (((uint64_t)x19 * x59) + ((0x2 * ((uint64_t)x21 * x57)) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + ((0x2 * ((uint64_t)x29 * x49)) + (((uint64_t)x31 * x47) + ((uint64_t)x30 * x45)))))))))));
- uint64_t x70 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + ((uint64_t)x13 * x33))))) + (0x13 * (((uint64_t)x15 * x58) + (((uint64_t)x17 * x59) + (((uint64_t)x19 * x57) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (((uint64_t)x29 * x47) + (((uint64_t)x31 * x45) + ((uint64_t)x30 * x43))))))))))));
- uint64_t x71 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + ((uint64_t)x11 * x33)))) + (0x13 * ((0x2 * ((uint64_t)x13 * x58)) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + (((uint64_t)x19 * x55) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + (((uint64_t)x27 * x47) + ((0x2 * ((uint64_t)x29 * x45)) + ((0x2 * ((uint64_t)x31 * x43)) + (0x2 * ((uint64_t)x30 * x41))))))))))))));
- uint64_t x72 = ((((uint64_t)x5 * x37) + ((0x2 * ((uint64_t)x7 * x35)) + ((uint64_t)x9 * x33))) + (0x13 * (((uint64_t)x11 * x58) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((uint64_t)x30 * x39))))))))))))));
- uint64_t x73 = ((((uint64_t)x5 * x35) + ((uint64_t)x7 * x33)) + (0x13 * (((uint64_t)x9 * x58) + (((uint64_t)x11 * x59) + ((0x2 * ((uint64_t)x13 * x57)) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + ((0x2 * ((uint64_t)x21 * x49)) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + ((0x2 * ((uint64_t)x29 * x41)) + (((uint64_t)x31 * x39) + ((uint64_t)x30 * x37)))))))))))))));
- uint64_t x74 = (((uint64_t)x5 * x33) + (0x13 * ((0x2 * ((uint64_t)x7 * x58)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + ((0x2 * ((uint64_t)x25 * x43)) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((0x2 * ((uint64_t)x31 * x37)) + (0x2 * ((uint64_t)x30 * x35)))))))))))))))));
- uint64_t x75 = (x74 >> 0x1a);
- uint32_t x76 = ((uint32_t)x74 & 0x3ffffff);
- uint64_t x77 = (x75 + x73);
- uint64_t x78 = (x77 >> 0x19);
- uint32_t x79 = ((uint32_t)x77 & 0x1ffffff);
- uint64_t x80 = (x78 + x72);
- uint64_t x81 = (x80 >> 0x19);
- uint32_t x82 = ((uint32_t)x80 & 0x1ffffff);
- uint64_t x83 = (x81 + x71);
- uint64_t x84 = (x83 >> 0x1a);
- uint32_t x85 = ((uint32_t)x83 & 0x3ffffff);
- uint64_t x86 = (x84 + x70);
- uint64_t x87 = (x86 >> 0x19);
- uint32_t x88 = ((uint32_t)x86 & 0x1ffffff);
- uint64_t x89 = (x87 + x69);
- uint64_t x90 = (x89 >> 0x19);
- uint32_t x91 = ((uint32_t)x89 & 0x1ffffff);
- uint64_t x92 = (x90 + x68);
- uint64_t x93 = (x92 >> 0x19);
- uint32_t x94 = ((uint32_t)x92 & 0x1ffffff);
- uint64_t x95 = (x93 + x67);
- uint64_t x96 = (x95 >> 0x1a);
- uint32_t x97 = ((uint32_t)x95 & 0x3ffffff);
- uint64_t x98 = (x96 + x66);
- uint64_t x99 = (x98 >> 0x19);
- uint32_t x100 = ((uint32_t)x98 & 0x1ffffff);
- uint64_t x101 = (x99 + x65);
- uint64_t x102 = (x101 >> 0x19);
- uint32_t x103 = ((uint32_t)x101 & 0x1ffffff);
- uint64_t x104 = (x102 + x64);
- uint64_t x105 = (x104 >> 0x19);
- uint32_t x106 = ((uint32_t)x104 & 0x1ffffff);
- uint64_t x107 = (x105 + x63);
- uint64_t x108 = (x107 >> 0x1a);
- uint32_t x109 = ((uint32_t)x107 & 0x3ffffff);
- uint64_t x110 = (x108 + x62);
- uint64_t x111 = (x110 >> 0x19);
- uint32_t x112 = ((uint32_t)x110 & 0x1ffffff);
- uint64_t x113 = (x111 + x61);
- uint64_t x114 = (x113 >> 0x19);
- uint32_t x115 = ((uint32_t)x113 & 0x1ffffff);
- uint64_t x116 = (x114 + x60);
- uint64_t x117 = (x116 >> 0x19);
- uint32_t x118 = ((uint32_t)x116 & 0x1ffffff);
- uint64_t x119 = (x76 + (0x13 * x117));
- uint32_t x120 = (uint32_t) (x119 >> 0x1a);
- uint32_t x121 = ((uint32_t)x119 & 0x3ffffff);
- uint32_t x122 = (x120 + x79);
- uint32_t x123 = (x122 >> 0x19);
- uint32_t x124 = (x122 & 0x1ffffff);
- return (Return x118, Return x115, Return x112, Return x109, Return x106, Return x103, Return x100, Return x97, Return x94, Return x91, Return x88, Return x85, (x123 + x82), Return x124, Return x121))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e379m19_15limbs/femulDisplay.v b/src/Specific/solinas32_2e379m19_15limbs/femulDisplay.v
deleted file mode 100644
index a91deabe5..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e379m19_15limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e379m19_15limbs/fesquare.c b/src/Specific/solinas32_2e379m19_15limbs/fesquare.c
deleted file mode 100644
index b53458091..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/fesquare.c
+++ /dev/null
@@ -1,98 +0,0 @@
-static void fesquare(uint32_t out[15], const uint32_t in1[15]) {
- { const uint32_t x27 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x29 = (((uint64_t)x2 * x27) + ((0x2 * ((uint64_t)x4 * x28)) + ((0x2 * ((uint64_t)x6 * x26)) + (((uint64_t)x8 * x24) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + (((uint64_t)x24 * x8) + ((0x2 * ((uint64_t)x26 * x6)) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x27 * x2)))))))))))))));
- { uint64_t x30 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x13 * ((uint64_t)x27 * x27)));
- { uint64_t x31 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x13 * (((uint64_t)x28 * x27) + ((uint64_t)x27 * x28))));
- { uint64_t x32 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x13 * ((0x2 * ((uint64_t)x26 * x27)) + ((0x2 * ((uint64_t)x28 * x28)) + (0x2 * ((uint64_t)x27 * x26))))));
- { uint64_t x33 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x13 * (((uint64_t)x24 * x27) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((uint64_t)x27 * x24))))));
- { uint64_t x34 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x13 * (((uint64_t)x22 * x27) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + ((uint64_t)x27 * x22)))))));
- { uint64_t x35 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x13 * (((uint64_t)x20 * x27) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + ((uint64_t)x27 * x20))))))));
- { uint64_t x36 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x13 * ((0x2 * ((uint64_t)x18 * x27)) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + (((uint64_t)x24 * x24) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + (0x2 * ((uint64_t)x27 * x18))))))))));
- { uint64_t x37 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x13 * (((uint64_t)x16 * x27) + ((0x2 * ((uint64_t)x18 * x28)) + ((0x2 * ((uint64_t)x20 * x26)) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + ((0x2 * ((uint64_t)x26 * x20)) + ((0x2 * ((uint64_t)x28 * x18)) + ((uint64_t)x27 * x16))))))))));
- { uint64_t x38 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x13 * (((uint64_t)x14 * x27) + (((uint64_t)x16 * x28) + ((0x2 * ((uint64_t)x18 * x26)) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + ((0x2 * ((uint64_t)x26 * x18)) + (((uint64_t)x28 * x16) + ((uint64_t)x27 * x14)))))))))));
- { uint64_t x39 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x13 * (((uint64_t)x12 * x27) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + ((uint64_t)x27 * x12))))))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x13 * ((0x2 * ((uint64_t)x10 * x27)) + ((0x2 * ((uint64_t)x12 * x28)) + ((0x2 * ((uint64_t)x14 * x26)) + (((uint64_t)x16 * x24) + ((0x2 * ((uint64_t)x18 * x22)) + ((0x2 * ((uint64_t)x20 * x20)) + ((0x2 * ((uint64_t)x22 * x18)) + (((uint64_t)x24 * x16) + ((0x2 * ((uint64_t)x26 * x14)) + ((0x2 * ((uint64_t)x28 * x12)) + (0x2 * ((uint64_t)x27 * x10))))))))))))));
- { uint64_t x41 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x13 * (((uint64_t)x8 * x27) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + (((uint64_t)x14 * x24) + (((uint64_t)x16 * x22) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((uint64_t)x27 * x8))))))))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x13 * (((uint64_t)x6 * x27) + (((uint64_t)x8 * x28) + ((0x2 * ((uint64_t)x10 * x26)) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + ((0x2 * ((uint64_t)x18 * x18)) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + ((0x2 * ((uint64_t)x26 * x10)) + (((uint64_t)x28 * x8) + ((uint64_t)x27 * x6)))))))))))))));
- { uint64_t x43 = (((uint64_t)x2 * x2) + (0x13 * ((0x2 * ((uint64_t)x4 * x27)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + (0x2 * ((uint64_t)x27 * x4)))))))))))))))));
- { uint64_t x44 = (x43 >> 0x1a);
- { uint32_t x45 = ((uint32_t)x43 & 0x3ffffff);
- { uint64_t x46 = (x44 + x42);
- { uint64_t x47 = (x46 >> 0x19);
- { uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- { uint64_t x49 = (x47 + x41);
- { uint64_t x50 = (x49 >> 0x19);
- { uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- { uint64_t x52 = (x50 + x40);
- { uint64_t x53 = (x52 >> 0x1a);
- { uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- { uint64_t x55 = (x53 + x39);
- { uint64_t x56 = (x55 >> 0x19);
- { uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- { uint64_t x58 = (x56 + x38);
- { uint64_t x59 = (x58 >> 0x19);
- { uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- { uint64_t x61 = (x59 + x37);
- { uint64_t x62 = (x61 >> 0x19);
- { uint32_t x63 = ((uint32_t)x61 & 0x1ffffff);
- { uint64_t x64 = (x62 + x36);
- { uint64_t x65 = (x64 >> 0x1a);
- { uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- { uint64_t x67 = (x65 + x35);
- { uint64_t x68 = (x67 >> 0x19);
- { uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- { uint64_t x70 = (x68 + x34);
- { uint64_t x71 = (x70 >> 0x19);
- { uint32_t x72 = ((uint32_t)x70 & 0x1ffffff);
- { uint64_t x73 = (x71 + x33);
- { uint64_t x74 = (x73 >> 0x19);
- { uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- { uint64_t x76 = (x74 + x32);
- { uint64_t x77 = (x76 >> 0x1a);
- { uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- { uint64_t x79 = (x77 + x31);
- { uint64_t x80 = (x79 >> 0x19);
- { uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- { uint64_t x82 = (x80 + x30);
- { uint64_t x83 = (x82 >> 0x19);
- { uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- { uint64_t x85 = (x83 + x29);
- { uint64_t x86 = (x85 >> 0x19);
- { uint32_t x87 = ((uint32_t)x85 & 0x1ffffff);
- { uint64_t x88 = (x45 + (0x13 * x86));
- { uint32_t x89 = (uint32_t) (x88 >> 0x1a);
- { uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- { uint32_t x91 = (x89 + x48);
- { uint32_t x92 = (x91 >> 0x19);
- { uint32_t x93 = (x91 & 0x1ffffff);
- out[0] = x90;
- out[1] = x93;
- out[2] = (x92 + x51);
- out[3] = x54;
- out[4] = x57;
- out[5] = x60;
- out[6] = x63;
- out[7] = x66;
- out[8] = x69;
- out[9] = x72;
- out[10] = x75;
- out[11] = x78;
- out[12] = x81;
- out[13] = x84;
- out[14] = x87;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e379m19_15limbs/fesquare.v b/src/Specific/solinas32_2e379m19_15limbs/fesquare.v
deleted file mode 100644
index ff94c0640..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e379m19_15limbs.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_2e379m19_15limbs/fesquareDisplay.log b/src/Specific/solinas32_2e379m19_15limbs/fesquareDisplay.log
deleted file mode 100644
index df3c02c53..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,72 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x27, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x29 = (((uint64_t)x2 * x27) + ((0x2 * ((uint64_t)x4 * x28)) + ((0x2 * ((uint64_t)x6 * x26)) + (((uint64_t)x8 * x24) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + (((uint64_t)x24 * x8) + ((0x2 * ((uint64_t)x26 * x6)) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x27 * x2)))))))))))))));
- uint64_t x30 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x13 * ((uint64_t)x27 * x27)));
- uint64_t x31 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x13 * (((uint64_t)x28 * x27) + ((uint64_t)x27 * x28))));
- uint64_t x32 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x13 * ((0x2 * ((uint64_t)x26 * x27)) + ((0x2 * ((uint64_t)x28 * x28)) + (0x2 * ((uint64_t)x27 * x26))))));
- uint64_t x33 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x13 * (((uint64_t)x24 * x27) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((uint64_t)x27 * x24))))));
- uint64_t x34 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x13 * (((uint64_t)x22 * x27) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + ((uint64_t)x27 * x22)))))));
- uint64_t x35 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x13 * (((uint64_t)x20 * x27) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + ((uint64_t)x27 * x20))))))));
- uint64_t x36 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x13 * ((0x2 * ((uint64_t)x18 * x27)) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + (((uint64_t)x24 * x24) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + (0x2 * ((uint64_t)x27 * x18))))))))));
- uint64_t x37 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x13 * (((uint64_t)x16 * x27) + ((0x2 * ((uint64_t)x18 * x28)) + ((0x2 * ((uint64_t)x20 * x26)) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + ((0x2 * ((uint64_t)x26 * x20)) + ((0x2 * ((uint64_t)x28 * x18)) + ((uint64_t)x27 * x16))))))))));
- uint64_t x38 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x13 * (((uint64_t)x14 * x27) + (((uint64_t)x16 * x28) + ((0x2 * ((uint64_t)x18 * x26)) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + ((0x2 * ((uint64_t)x26 * x18)) + (((uint64_t)x28 * x16) + ((uint64_t)x27 * x14)))))))))));
- uint64_t x39 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x13 * (((uint64_t)x12 * x27) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + ((uint64_t)x27 * x12))))))))))));
- uint64_t x40 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x13 * ((0x2 * ((uint64_t)x10 * x27)) + ((0x2 * ((uint64_t)x12 * x28)) + ((0x2 * ((uint64_t)x14 * x26)) + (((uint64_t)x16 * x24) + ((0x2 * ((uint64_t)x18 * x22)) + ((0x2 * ((uint64_t)x20 * x20)) + ((0x2 * ((uint64_t)x22 * x18)) + (((uint64_t)x24 * x16) + ((0x2 * ((uint64_t)x26 * x14)) + ((0x2 * ((uint64_t)x28 * x12)) + (0x2 * ((uint64_t)x27 * x10))))))))))))));
- uint64_t x41 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x13 * (((uint64_t)x8 * x27) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + (((uint64_t)x14 * x24) + (((uint64_t)x16 * x22) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((uint64_t)x27 * x8))))))))))))));
- uint64_t x42 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x13 * (((uint64_t)x6 * x27) + (((uint64_t)x8 * x28) + ((0x2 * ((uint64_t)x10 * x26)) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + ((0x2 * ((uint64_t)x18 * x18)) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + ((0x2 * ((uint64_t)x26 * x10)) + (((uint64_t)x28 * x8) + ((uint64_t)x27 * x6)))))))))))))));
- uint64_t x43 = (((uint64_t)x2 * x2) + (0x13 * ((0x2 * ((uint64_t)x4 * x27)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + (0x2 * ((uint64_t)x27 * x4)))))))))))))))));
- uint64_t x44 = (x43 >> 0x1a);
- uint32_t x45 = ((uint32_t)x43 & 0x3ffffff);
- uint64_t x46 = (x44 + x42);
- uint64_t x47 = (x46 >> 0x19);
- uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- uint64_t x49 = (x47 + x41);
- uint64_t x50 = (x49 >> 0x19);
- uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- uint64_t x52 = (x50 + x40);
- uint64_t x53 = (x52 >> 0x1a);
- uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- uint64_t x55 = (x53 + x39);
- uint64_t x56 = (x55 >> 0x19);
- uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- uint64_t x58 = (x56 + x38);
- uint64_t x59 = (x58 >> 0x19);
- uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- uint64_t x61 = (x59 + x37);
- uint64_t x62 = (x61 >> 0x19);
- uint32_t x63 = ((uint32_t)x61 & 0x1ffffff);
- uint64_t x64 = (x62 + x36);
- uint64_t x65 = (x64 >> 0x1a);
- uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- uint64_t x67 = (x65 + x35);
- uint64_t x68 = (x67 >> 0x19);
- uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- uint64_t x70 = (x68 + x34);
- uint64_t x71 = (x70 >> 0x19);
- uint32_t x72 = ((uint32_t)x70 & 0x1ffffff);
- uint64_t x73 = (x71 + x33);
- uint64_t x74 = (x73 >> 0x19);
- uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- uint64_t x76 = (x74 + x32);
- uint64_t x77 = (x76 >> 0x1a);
- uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- uint64_t x79 = (x77 + x31);
- uint64_t x80 = (x79 >> 0x19);
- uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- uint64_t x82 = (x80 + x30);
- uint64_t x83 = (x82 >> 0x19);
- uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- uint64_t x85 = (x83 + x29);
- uint64_t x86 = (x85 >> 0x19);
- uint32_t x87 = ((uint32_t)x85 & 0x1ffffff);
- uint64_t x88 = (x45 + (0x13 * x86));
- uint32_t x89 = (uint32_t) (x88 >> 0x1a);
- uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- uint32_t x91 = (x89 + x48);
- uint32_t x92 = (x91 >> 0x19);
- uint32_t x93 = (x91 & 0x1ffffff);
- return (Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, Return x57, Return x54, (x92 + x51), Return x93, Return x90))
-x
- : word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e379m19_15limbs/fesquareDisplay.v b/src/Specific/solinas32_2e379m19_15limbs/fesquareDisplay.v
deleted file mode 100644
index 6e6a27897..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e379m19_15limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e379m19_15limbs/fesub.c b/src/Specific/solinas32_2e379m19_15limbs/fesub.c
deleted file mode 100644
index 67e2bb2ba..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/fesub.c
+++ /dev/null
@@ -1,48 +0,0 @@
-static void fesub(uint32_t out[15], const uint32_t in1[15], const uint32_t in2[15]) {
- { const uint32_t x30 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x58 = in2[14];
- { const uint32_t x59 = in2[13];
- { const uint32_t x57 = in2[12];
- { const uint32_t x55 = in2[11];
- { const uint32_t x53 = in2[10];
- { const uint32_t x51 = in2[9];
- { const uint32_t x49 = in2[8];
- { const uint32_t x47 = in2[7];
- { const uint32_t x45 = in2[6];
- { const uint32_t x43 = in2[5];
- { const uint32_t x41 = in2[4];
- { const uint32_t x39 = in2[3];
- { const uint32_t x37 = in2[2];
- { const uint32_t x35 = in2[1];
- { const uint32_t x33 = in2[0];
- out[0] = ((0x7ffffda + x5) - x33);
- out[1] = ((0x3fffffe + x7) - x35);
- out[2] = ((0x3fffffe + x9) - x37);
- out[3] = ((0x7fffffe + x11) - x39);
- out[4] = ((0x3fffffe + x13) - x41);
- out[5] = ((0x3fffffe + x15) - x43);
- out[6] = ((0x3fffffe + x17) - x45);
- out[7] = ((0x7fffffe + x19) - x47);
- out[8] = ((0x3fffffe + x21) - x49);
- out[9] = ((0x3fffffe + x23) - x51);
- out[10] = ((0x3fffffe + x25) - x53);
- out[11] = ((0x7fffffe + x27) - x55);
- out[12] = ((0x3fffffe + x29) - x57);
- out[13] = ((0x3fffffe + x31) - x59);
- out[14] = ((0x3fffffe + x30) - x58);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e379m19_15limbs/fesub.v b/src/Specific/solinas32_2e379m19_15limbs/fesub.v
deleted file mode 100644
index 4691be4a2..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e379m19_15limbs.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_2e379m19_15limbs/fesubDisplay.log b/src/Specific/solinas32_2e379m19_15limbs/fesubDisplay.log
deleted file mode 100644
index 75aad202e..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x30, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x58, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33))%core,
- (((0x3fffffe + x30) - x58), ((0x3fffffe + x31) - x59), ((0x3fffffe + x29) - x57), ((0x7fffffe + x27) - x55), ((0x3fffffe + x25) - x53), ((0x3fffffe + x23) - x51), ((0x3fffffe + x21) - x49), ((0x7fffffe + x19) - x47), ((0x3fffffe + x17) - x45), ((0x3fffffe + x15) - x43), ((0x3fffffe + x13) - x41), ((0x7fffffe + x11) - x39), ((0x3fffffe + x9) - x37), ((0x3fffffe + x7) - x35), ((0x7ffffda + x5) - x33)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e379m19_15limbs/fesubDisplay.v b/src/Specific/solinas32_2e379m19_15limbs/fesubDisplay.v
deleted file mode 100644
index 46476c03d..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e379m19_15limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e379m19_15limbs/freeze.c b/src/Specific/solinas32_2e379m19_15limbs/freeze.c
deleted file mode 100644
index 00f912634..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/freeze.c
+++ /dev/null
@@ -1,79 +0,0 @@
-static void freeze(uint32_t out[15], const uint32_t in1[15]) {
- { const uint32_t x27 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffed);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x4, 0x1ffffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x6, 0x1ffffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x8, 0x3ffffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x10, 0x1ffffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x12, 0x1ffffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x14, 0x1ffffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x16, 0x3ffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x18, 0x1ffffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x20, 0x1ffffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x22, 0x1ffffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x24, 0x3ffffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x26, 0x1ffffff);
- { uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x28, 0x1ffffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x27, 0x1ffffff);
- { uint32_t x74 = cmovznz32(x73, 0x0, 0xffffffff);
- { uint32_t x75 = (x74 & 0x3ffffed);
- { uint32_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x30, Return x75);
- { uint32_t x79 = (x74 & 0x1ffffff);
- { uint32_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x33, Return x79);
- { uint32_t x83 = (x74 & 0x1ffffff);
- { uint32_t x85, uint8_t x86 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x36, Return x83);
- { uint32_t x87 = (x74 & 0x3ffffff);
- { uint32_t x89, uint8_t x90 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x39, Return x87);
- { uint32_t x91 = (x74 & 0x1ffffff);
- { uint32_t x93, uint8_t x94 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x42, Return x91);
- { uint32_t x95 = (x74 & 0x1ffffff);
- { uint32_t x97, uint8_t x98 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x94, Return x45, Return x95);
- { uint32_t x99 = (x74 & 0x1ffffff);
- { uint32_t x101, uint8_t x102 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x98, Return x48, Return x99);
- { uint32_t x103 = (x74 & 0x3ffffff);
- { uint32_t x105, uint8_t x106 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x102, Return x51, Return x103);
- { uint32_t x107 = (x74 & 0x1ffffff);
- { uint32_t x109, uint8_t x110 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x106, Return x54, Return x107);
- { uint32_t x111 = (x74 & 0x1ffffff);
- { uint32_t x113, uint8_t x114 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x110, Return x57, Return x111);
- { uint32_t x115 = (x74 & 0x1ffffff);
- { uint32_t x117, uint8_t x118 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x114, Return x60, Return x115);
- { uint32_t x119 = (x74 & 0x3ffffff);
- { uint32_t x121, uint8_t x122 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x118, Return x63, Return x119);
- { uint32_t x123 = (x74 & 0x1ffffff);
- { uint32_t x125, uint8_t x126 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x122, Return x66, Return x123);
- { uint32_t x127 = (x74 & 0x1ffffff);
- { uint32_t x129, uint8_t x130 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x126, Return x69, Return x127);
- { uint32_t x131 = (x74 & 0x1ffffff);
- { uint32_t x133, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x130, Return x72, Return x131);
- out[0] = x77;
- out[1] = x81;
- out[2] = x85;
- out[3] = x89;
- out[4] = x93;
- out[5] = x97;
- out[6] = x101;
- out[7] = x105;
- out[8] = x109;
- out[9] = x113;
- out[10] = x117;
- out[11] = x121;
- out[12] = x125;
- out[13] = x129;
- out[14] = x133;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e379m19_15limbs/freeze.v b/src/Specific/solinas32_2e379m19_15limbs/freeze.v
deleted file mode 100644
index 58cd3e180..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e379m19_15limbs.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_2e379m19_15limbs/freezeDisplay.log b/src/Specific/solinas32_2e379m19_15limbs/freezeDisplay.log
deleted file mode 100644
index 4d9db2670..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/freezeDisplay.log
+++ /dev/null
@@ -1,53 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x27, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffed);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x4, 0x1ffffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x6, 0x1ffffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x8, 0x3ffffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x10, 0x1ffffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x12, 0x1ffffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x14, 0x1ffffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x16, 0x3ffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x18, 0x1ffffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x20, 0x1ffffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x22, 0x1ffffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x24, 0x3ffffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x26, 0x1ffffff);
- uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x28, 0x1ffffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x27, 0x1ffffff);
- uint32_t x74 = cmovznz32(x73, 0x0, 0xffffffff);
- uint32_t x75 = (x74 & 0x3ffffed);
- uint32_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x30, Return x75);
- uint32_t x79 = (x74 & 0x1ffffff);
- uint32_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x33, Return x79);
- uint32_t x83 = (x74 & 0x1ffffff);
- uint32_t x85, uint8_t x86 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x36, Return x83);
- uint32_t x87 = (x74 & 0x3ffffff);
- uint32_t x89, uint8_t x90 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x39, Return x87);
- uint32_t x91 = (x74 & 0x1ffffff);
- uint32_t x93, uint8_t x94 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x42, Return x91);
- uint32_t x95 = (x74 & 0x1ffffff);
- uint32_t x97, uint8_t x98 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x94, Return x45, Return x95);
- uint32_t x99 = (x74 & 0x1ffffff);
- uint32_t x101, uint8_t x102 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x98, Return x48, Return x99);
- uint32_t x103 = (x74 & 0x3ffffff);
- uint32_t x105, uint8_t x106 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x102, Return x51, Return x103);
- uint32_t x107 = (x74 & 0x1ffffff);
- uint32_t x109, uint8_t x110 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x106, Return x54, Return x107);
- uint32_t x111 = (x74 & 0x1ffffff);
- uint32_t x113, uint8_t x114 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x110, Return x57, Return x111);
- uint32_t x115 = (x74 & 0x1ffffff);
- uint32_t x117, uint8_t x118 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x114, Return x60, Return x115);
- uint32_t x119 = (x74 & 0x3ffffff);
- uint32_t x121, uint8_t x122 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x118, Return x63, Return x119);
- uint32_t x123 = (x74 & 0x1ffffff);
- uint32_t x125, uint8_t x126 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x122, Return x66, Return x123);
- uint32_t x127 = (x74 & 0x1ffffff);
- uint32_t x129, uint8_t x130 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x126, Return x69, Return x127);
- uint32_t x131 = (x74 & 0x1ffffff);
- uint32_t x133, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x130, Return x72, Return x131);
- (Return x133, Return x129, Return x125, Return x121, Return x117, Return x113, Return x109, Return x105, Return x101, Return x97, Return x93, Return x89, Return x85, Return x81, Return x77))
-x
- : word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e379m19_15limbs/freezeDisplay.v b/src/Specific/solinas32_2e379m19_15limbs/freezeDisplay.v
deleted file mode 100644
index cd756506c..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e379m19_15limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e379m19_15limbs/py_interpreter.sh b/src/Specific/solinas32_2e379m19_15limbs/py_interpreter.sh
deleted file mode 100755
index 8831ea450..000000000
--- a/src/Specific/solinas32_2e379m19_15limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**379 - 19' -Dmodulus_bytes='25 + 4/15' -Da24='121665'
diff --git a/src/Specific/solinas32_2e379m19_16limbs/CurveParameters.v b/src/Specific/solinas32_2e379m19_16limbs/CurveParameters.v
deleted file mode 100644
index 622d740be..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^379 - 19
-Base: 23 + 11/16
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 16%nat;
- base := 23 + 11/16;
- bitwidth := 32;
- s := 2^379;
- c := [(1, 19)];
- carry_chains := Some [seq 0 (pred 16); [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_2e379m19_16limbs/Synthesis.v b/src/Specific/solinas32_2e379m19_16limbs/Synthesis.v
deleted file mode 100644
index 5db5fd152..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e379m19_16limbs.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_2e379m19_16limbs/compiler.sh b/src/Specific/solinas32_2e379m19_16limbs/compiler.sh
deleted file mode 100755
index cce3b8378..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,24,23,24,24,23,24,24,23,24,24,23,24,24,23}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<379) - 19' "$@"
diff --git a/src/Specific/solinas32_2e379m19_16limbs/compilerxx.sh b/src/Specific/solinas32_2e379m19_16limbs/compilerxx.sh
deleted file mode 100755
index 9520d9842..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,24,23,24,24,23,24,24,23,24,24,23,24,24,23}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<379) - 19' "$@"
diff --git a/src/Specific/solinas32_2e379m19_16limbs/feadd.c b/src/Specific/solinas32_2e379m19_16limbs/feadd.c
deleted file mode 100644
index 18b150e21..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/feadd.c
+++ /dev/null
@@ -1,51 +0,0 @@
-static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- out[0] = (x5 + x35);
- out[1] = (x7 + x37);
- out[2] = (x9 + x39);
- out[3] = (x11 + x41);
- out[4] = (x13 + x43);
- out[5] = (x15 + x45);
- out[6] = (x17 + x47);
- out[7] = (x19 + x49);
- out[8] = (x21 + x51);
- out[9] = (x23 + x53);
- out[10] = (x25 + x55);
- out[11] = (x27 + x57);
- out[12] = (x29 + x59);
- out[13] = (x31 + x61);
- out[14] = (x33 + x63);
- out[15] = (x32 + x62);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e379m19_16limbs/feadd.v b/src/Specific/solinas32_2e379m19_16limbs/feadd.v
deleted file mode 100644
index 3a3e69dd0..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e379m19_16limbs.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_2e379m19_16limbs/feaddDisplay.log b/src/Specific/solinas32_2e379m19_16limbs/feaddDisplay.log
deleted file mode 100644
index 130c31964..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- ((x32 + x62), (x33 + x63), (x31 + x61), (x29 + x59), (x27 + x57), (x25 + x55), (x23 + x53), (x21 + x51), (x19 + x49), (x17 + x47), (x15 + x45), (x13 + x43), (x11 + x41), (x9 + x39), (x7 + x37), (x5 + x35)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e379m19_16limbs/feaddDisplay.v b/src/Specific/solinas32_2e379m19_16limbs/feaddDisplay.v
deleted file mode 100644
index 47563d267..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e379m19_16limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e379m19_16limbs/fecarry.v b/src/Specific/solinas32_2e379m19_16limbs/fecarry.v
deleted file mode 100644
index 24098a7c5..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e379m19_16limbs.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_2e379m19_16limbs/fecarryDisplay.v b/src/Specific/solinas32_2e379m19_16limbs/fecarryDisplay.v
deleted file mode 100644
index bf474b24d..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e379m19_16limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e379m19_16limbs/femul.c b/src/Specific/solinas32_2e379m19_16limbs/femul.c
deleted file mode 100644
index adc2d5136..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/femul.c
+++ /dev/null
@@ -1,120 +0,0 @@
-static void femul(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- { uint64_t x64 = (((uint64_t)x5 * x62) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + ((0x2 * ((uint64_t)x11 * x59)) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + ((0x2 * ((uint64_t)x17 * x53)) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + ((0x2 * ((uint64_t)x23 * x47)) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + ((0x2 * ((uint64_t)x29 * x41)) + (((uint64_t)x31 * x39) + (((uint64_t)x33 * x37) + ((uint64_t)x32 * x35))))))))))))))));
- { uint64_t x65 = ((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + (((uint64_t)x13 * x55) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + (((uint64_t)x19 * x49) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + (((uint64_t)x25 * x43) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + (((uint64_t)x31 * x37) + ((uint64_t)x33 * x35))))))))))))))) + (0x13 * (0x2 * ((uint64_t)x32 * x62))));
- { uint64_t x66 = ((((uint64_t)x5 * x61) + ((0x2 * ((uint64_t)x7 * x59)) + ((0x2 * ((uint64_t)x9 * x57)) + ((0x2 * ((uint64_t)x11 * x55)) + ((0x2 * ((uint64_t)x13 * x53)) + ((0x2 * ((uint64_t)x15 * x51)) + ((0x2 * ((uint64_t)x17 * x49)) + ((0x2 * ((uint64_t)x19 * x47)) + ((0x2 * ((uint64_t)x21 * x45)) + ((0x2 * ((uint64_t)x23 * x43)) + ((0x2 * ((uint64_t)x25 * x41)) + ((0x2 * ((uint64_t)x27 * x39)) + ((0x2 * ((uint64_t)x29 * x37)) + ((uint64_t)x31 * x35)))))))))))))) + (0x13 * ((0x2 * ((uint64_t)x33 * x62)) + (0x2 * ((uint64_t)x32 * x63)))));
- { uint64_t x67 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + ((0x2 * ((uint64_t)x11 * x53)) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + ((0x2 * ((uint64_t)x17 * x47)) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + (((uint64_t)x25 * x39) + (((uint64_t)x27 * x37) + ((uint64_t)x29 * x35))))))))))))) + (0x13 * (((uint64_t)x31 * x62) + (((uint64_t)x33 * x63) + ((uint64_t)x32 * x61)))));
- { uint64_t x68 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + (((uint64_t)x13 * x49) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + (((uint64_t)x25 * x37) + ((uint64_t)x27 * x35)))))))))))) + (0x13 * ((0x2 * ((uint64_t)x29 * x62)) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + (0x2 * ((uint64_t)x32 * x59)))))));
- { uint64_t x69 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((uint64_t)x25 * x35))))))))))) + (0x13 * ((0x2 * ((uint64_t)x27 * x62)) + ((0x2 * ((uint64_t)x29 * x63)) + (((uint64_t)x31 * x61) + ((0x2 * ((uint64_t)x33 * x59)) + (0x2 * ((uint64_t)x32 * x57))))))));
- { uint64_t x70 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + ((0x2 * ((uint64_t)x11 * x47)) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + ((uint64_t)x23 * x35)))))))))) + (0x13 * (((uint64_t)x25 * x62) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + ((uint64_t)x32 * x55))))))));
- { uint64_t x71 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + (((uint64_t)x13 * x43) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + (((uint64_t)x19 * x37) + ((uint64_t)x21 * x35))))))))) + (0x13 * ((0x2 * ((uint64_t)x23 * x62)) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + ((0x2 * ((uint64_t)x29 * x59)) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + (0x2 * ((uint64_t)x32 * x53))))))))));
- { uint64_t x72 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + ((0x2 * ((uint64_t)x11 * x43)) + ((0x2 * ((uint64_t)x13 * x41)) + ((0x2 * ((uint64_t)x15 * x39)) + ((0x2 * ((uint64_t)x17 * x37)) + ((uint64_t)x19 * x35)))))))) + (0x13 * ((0x2 * ((uint64_t)x21 * x62)) + ((0x2 * ((uint64_t)x23 * x63)) + (((uint64_t)x25 * x61) + ((0x2 * ((uint64_t)x27 * x59)) + ((0x2 * ((uint64_t)x29 * x57)) + (((uint64_t)x31 * x55) + ((0x2 * ((uint64_t)x33 * x53)) + (0x2 * ((uint64_t)x32 * x51)))))))))));
- { uint64_t x73 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + ((0x2 * ((uint64_t)x11 * x41)) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((uint64_t)x17 * x35))))))) + (0x13 * (((uint64_t)x19 * x62) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + ((uint64_t)x32 * x49)))))))))));
- { uint64_t x74 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + (((uint64_t)x13 * x37) + ((uint64_t)x15 * x35)))))) + (0x13 * ((0x2 * ((uint64_t)x17 * x62)) + (((uint64_t)x19 * x63) + (((uint64_t)x21 * x61) + ((0x2 * ((uint64_t)x23 * x59)) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + ((0x2 * ((uint64_t)x29 * x53)) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + (0x2 * ((uint64_t)x32 * x47)))))))))))));
- { uint64_t x75 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((uint64_t)x13 * x35))))) + (0x13 * ((0x2 * ((uint64_t)x15 * x62)) + ((0x2 * ((uint64_t)x17 * x63)) + (((uint64_t)x19 * x61) + ((0x2 * ((uint64_t)x21 * x59)) + ((0x2 * ((uint64_t)x23 * x57)) + (((uint64_t)x25 * x55) + ((0x2 * ((uint64_t)x27 * x53)) + ((0x2 * ((uint64_t)x29 * x51)) + (((uint64_t)x31 * x49) + ((0x2 * ((uint64_t)x33 * x47)) + (0x2 * ((uint64_t)x32 * x45))))))))))))));
- { uint64_t x76 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((uint64_t)x11 * x35)))) + (0x13 * (((uint64_t)x13 * x62) + (((uint64_t)x15 * x63) + (((uint64_t)x17 * x61) + (((uint64_t)x19 * x59) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + (((uint64_t)x29 * x49) + (((uint64_t)x31 * x47) + (((uint64_t)x33 * x45) + ((uint64_t)x32 * x43))))))))))))));
- { uint64_t x77 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((uint64_t)x9 * x35))) + (0x13 * ((0x2 * ((uint64_t)x11 * x62)) + (((uint64_t)x13 * x63) + (((uint64_t)x15 * x61) + ((0x2 * ((uint64_t)x17 * x59)) + (((uint64_t)x19 * x57) + (((uint64_t)x21 * x55) + ((0x2 * ((uint64_t)x23 * x53)) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + ((0x2 * ((uint64_t)x29 * x47)) + (((uint64_t)x31 * x45) + (((uint64_t)x33 * x43) + (0x2 * ((uint64_t)x32 * x41))))))))))))))));
- { uint64_t x78 = ((((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)) + (0x13 * ((0x2 * ((uint64_t)x9 * x62)) + ((0x2 * ((uint64_t)x11 * x63)) + (((uint64_t)x13 * x61) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + (((uint64_t)x19 * x55) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + (((uint64_t)x25 * x49) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + (((uint64_t)x31 * x43) + ((0x2 * ((uint64_t)x33 * x41)) + (0x2 * ((uint64_t)x32 * x39)))))))))))))))));
- { uint64_t x79 = (((uint64_t)x5 * x35) + (0x13 * ((0x2 * ((uint64_t)x7 * x62)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + (0x2 * ((uint64_t)x32 * x37))))))))))))))))));
- { uint64_t x80 = (x79 >> 0x18);
- { uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- { uint64_t x82 = (x80 + x78);
- { uint64_t x83 = (x82 >> 0x18);
- { uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- { uint64_t x85 = (x83 + x77);
- { uint64_t x86 = (x85 >> 0x18);
- { uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- { uint64_t x88 = (x86 + x76);
- { uint64_t x89 = (x88 >> 0x17);
- { uint32_t x90 = ((uint32_t)x88 & 0x7fffff);
- { uint64_t x91 = (x89 + x75);
- { uint64_t x92 = (x91 >> 0x18);
- { uint32_t x93 = ((uint32_t)x91 & 0xffffff);
- { uint64_t x94 = (x92 + x74);
- { uint64_t x95 = (x94 >> 0x18);
- { uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- { uint64_t x97 = (x95 + x73);
- { uint64_t x98 = (x97 >> 0x17);
- { uint32_t x99 = ((uint32_t)x97 & 0x7fffff);
- { uint64_t x100 = (x98 + x72);
- { uint64_t x101 = (x100 >> 0x18);
- { uint32_t x102 = ((uint32_t)x100 & 0xffffff);
- { uint64_t x103 = (x101 + x71);
- { uint64_t x104 = (x103 >> 0x18);
- { uint32_t x105 = ((uint32_t)x103 & 0xffffff);
- { uint64_t x106 = (x104 + x70);
- { uint64_t x107 = (x106 >> 0x17);
- { uint32_t x108 = ((uint32_t)x106 & 0x7fffff);
- { uint64_t x109 = (x107 + x69);
- { uint64_t x110 = (x109 >> 0x18);
- { uint32_t x111 = ((uint32_t)x109 & 0xffffff);
- { uint64_t x112 = (x110 + x68);
- { uint64_t x113 = (x112 >> 0x18);
- { uint32_t x114 = ((uint32_t)x112 & 0xffffff);
- { uint64_t x115 = (x113 + x67);
- { uint64_t x116 = (x115 >> 0x17);
- { uint32_t x117 = ((uint32_t)x115 & 0x7fffff);
- { uint64_t x118 = (x116 + x66);
- { uint64_t x119 = (x118 >> 0x18);
- { uint32_t x120 = ((uint32_t)x118 & 0xffffff);
- { uint64_t x121 = (x119 + x65);
- { uint64_t x122 = (x121 >> 0x18);
- { uint32_t x123 = ((uint32_t)x121 & 0xffffff);
- { uint64_t x124 = (x122 + x64);
- { uint64_t x125 = (x124 >> 0x17);
- { uint32_t x126 = ((uint32_t)x124 & 0x7fffff);
- { uint64_t x127 = (x81 + (0x13 * x125));
- { uint32_t x128 = (uint32_t) (x127 >> 0x18);
- { uint32_t x129 = ((uint32_t)x127 & 0xffffff);
- { uint32_t x130 = (x128 + x84);
- { uint32_t x131 = (x130 >> 0x18);
- { uint32_t x132 = (x130 & 0xffffff);
- out[0] = x129;
- out[1] = x132;
- out[2] = (x131 + x87);
- out[3] = x90;
- out[4] = x93;
- out[5] = x96;
- out[6] = x99;
- out[7] = x102;
- out[8] = x105;
- out[9] = x108;
- out[10] = x111;
- out[11] = x114;
- out[12] = x117;
- out[13] = x120;
- out[14] = x123;
- out[15] = x126;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e379m19_16limbs/femul.v b/src/Specific/solinas32_2e379m19_16limbs/femul.v
deleted file mode 100644
index ed37b8453..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e379m19_16limbs.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_2e379m19_16limbs/femulDisplay.log b/src/Specific/solinas32_2e379m19_16limbs/femulDisplay.log
deleted file mode 100644
index 79f7def10..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/femulDisplay.log
+++ /dev/null
@@ -1,76 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- uint64_t x64 = (((uint64_t)x5 * x62) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + ((0x2 * ((uint64_t)x11 * x59)) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + ((0x2 * ((uint64_t)x17 * x53)) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + ((0x2 * ((uint64_t)x23 * x47)) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + ((0x2 * ((uint64_t)x29 * x41)) + (((uint64_t)x31 * x39) + (((uint64_t)x33 * x37) + ((uint64_t)x32 * x35))))))))))))))));
- uint64_t x65 = ((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + (((uint64_t)x13 * x55) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + (((uint64_t)x19 * x49) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + (((uint64_t)x25 * x43) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + (((uint64_t)x31 * x37) + ((uint64_t)x33 * x35))))))))))))))) + (0x13 * (0x2 * ((uint64_t)x32 * x62))));
- uint64_t x66 = ((((uint64_t)x5 * x61) + ((0x2 * ((uint64_t)x7 * x59)) + ((0x2 * ((uint64_t)x9 * x57)) + ((0x2 * ((uint64_t)x11 * x55)) + ((0x2 * ((uint64_t)x13 * x53)) + ((0x2 * ((uint64_t)x15 * x51)) + ((0x2 * ((uint64_t)x17 * x49)) + ((0x2 * ((uint64_t)x19 * x47)) + ((0x2 * ((uint64_t)x21 * x45)) + ((0x2 * ((uint64_t)x23 * x43)) + ((0x2 * ((uint64_t)x25 * x41)) + ((0x2 * ((uint64_t)x27 * x39)) + ((0x2 * ((uint64_t)x29 * x37)) + ((uint64_t)x31 * x35)))))))))))))) + (0x13 * ((0x2 * ((uint64_t)x33 * x62)) + (0x2 * ((uint64_t)x32 * x63)))));
- uint64_t x67 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + ((0x2 * ((uint64_t)x11 * x53)) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + ((0x2 * ((uint64_t)x17 * x47)) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + (((uint64_t)x25 * x39) + (((uint64_t)x27 * x37) + ((uint64_t)x29 * x35))))))))))))) + (0x13 * (((uint64_t)x31 * x62) + (((uint64_t)x33 * x63) + ((uint64_t)x32 * x61)))));
- uint64_t x68 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + (((uint64_t)x13 * x49) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + (((uint64_t)x25 * x37) + ((uint64_t)x27 * x35)))))))))))) + (0x13 * ((0x2 * ((uint64_t)x29 * x62)) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + (0x2 * ((uint64_t)x32 * x59)))))));
- uint64_t x69 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((uint64_t)x25 * x35))))))))))) + (0x13 * ((0x2 * ((uint64_t)x27 * x62)) + ((0x2 * ((uint64_t)x29 * x63)) + (((uint64_t)x31 * x61) + ((0x2 * ((uint64_t)x33 * x59)) + (0x2 * ((uint64_t)x32 * x57))))))));
- uint64_t x70 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + ((0x2 * ((uint64_t)x11 * x47)) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + ((uint64_t)x23 * x35)))))))))) + (0x13 * (((uint64_t)x25 * x62) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + ((uint64_t)x32 * x55))))))));
- uint64_t x71 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + (((uint64_t)x13 * x43) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + (((uint64_t)x19 * x37) + ((uint64_t)x21 * x35))))))))) + (0x13 * ((0x2 * ((uint64_t)x23 * x62)) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + ((0x2 * ((uint64_t)x29 * x59)) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + (0x2 * ((uint64_t)x32 * x53))))))))));
- uint64_t x72 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + ((0x2 * ((uint64_t)x11 * x43)) + ((0x2 * ((uint64_t)x13 * x41)) + ((0x2 * ((uint64_t)x15 * x39)) + ((0x2 * ((uint64_t)x17 * x37)) + ((uint64_t)x19 * x35)))))))) + (0x13 * ((0x2 * ((uint64_t)x21 * x62)) + ((0x2 * ((uint64_t)x23 * x63)) + (((uint64_t)x25 * x61) + ((0x2 * ((uint64_t)x27 * x59)) + ((0x2 * ((uint64_t)x29 * x57)) + (((uint64_t)x31 * x55) + ((0x2 * ((uint64_t)x33 * x53)) + (0x2 * ((uint64_t)x32 * x51)))))))))));
- uint64_t x73 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + ((0x2 * ((uint64_t)x11 * x41)) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((uint64_t)x17 * x35))))))) + (0x13 * (((uint64_t)x19 * x62) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + ((uint64_t)x32 * x49)))))))))));
- uint64_t x74 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + (((uint64_t)x13 * x37) + ((uint64_t)x15 * x35)))))) + (0x13 * ((0x2 * ((uint64_t)x17 * x62)) + (((uint64_t)x19 * x63) + (((uint64_t)x21 * x61) + ((0x2 * ((uint64_t)x23 * x59)) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + ((0x2 * ((uint64_t)x29 * x53)) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + (0x2 * ((uint64_t)x32 * x47)))))))))))));
- uint64_t x75 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((uint64_t)x13 * x35))))) + (0x13 * ((0x2 * ((uint64_t)x15 * x62)) + ((0x2 * ((uint64_t)x17 * x63)) + (((uint64_t)x19 * x61) + ((0x2 * ((uint64_t)x21 * x59)) + ((0x2 * ((uint64_t)x23 * x57)) + (((uint64_t)x25 * x55) + ((0x2 * ((uint64_t)x27 * x53)) + ((0x2 * ((uint64_t)x29 * x51)) + (((uint64_t)x31 * x49) + ((0x2 * ((uint64_t)x33 * x47)) + (0x2 * ((uint64_t)x32 * x45))))))))))))));
- uint64_t x76 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((uint64_t)x11 * x35)))) + (0x13 * (((uint64_t)x13 * x62) + (((uint64_t)x15 * x63) + (((uint64_t)x17 * x61) + (((uint64_t)x19 * x59) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + (((uint64_t)x29 * x49) + (((uint64_t)x31 * x47) + (((uint64_t)x33 * x45) + ((uint64_t)x32 * x43))))))))))))));
- uint64_t x77 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((uint64_t)x9 * x35))) + (0x13 * ((0x2 * ((uint64_t)x11 * x62)) + (((uint64_t)x13 * x63) + (((uint64_t)x15 * x61) + ((0x2 * ((uint64_t)x17 * x59)) + (((uint64_t)x19 * x57) + (((uint64_t)x21 * x55) + ((0x2 * ((uint64_t)x23 * x53)) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + ((0x2 * ((uint64_t)x29 * x47)) + (((uint64_t)x31 * x45) + (((uint64_t)x33 * x43) + (0x2 * ((uint64_t)x32 * x41))))))))))))))));
- uint64_t x78 = ((((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)) + (0x13 * ((0x2 * ((uint64_t)x9 * x62)) + ((0x2 * ((uint64_t)x11 * x63)) + (((uint64_t)x13 * x61) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + (((uint64_t)x19 * x55) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + (((uint64_t)x25 * x49) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + (((uint64_t)x31 * x43) + ((0x2 * ((uint64_t)x33 * x41)) + (0x2 * ((uint64_t)x32 * x39)))))))))))))))));
- uint64_t x79 = (((uint64_t)x5 * x35) + (0x13 * ((0x2 * ((uint64_t)x7 * x62)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + (0x2 * ((uint64_t)x32 * x37))))))))))))))))));
- uint64_t x80 = (x79 >> 0x18);
- uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- uint64_t x82 = (x80 + x78);
- uint64_t x83 = (x82 >> 0x18);
- uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- uint64_t x85 = (x83 + x77);
- uint64_t x86 = (x85 >> 0x18);
- uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- uint64_t x88 = (x86 + x76);
- uint64_t x89 = (x88 >> 0x17);
- uint32_t x90 = ((uint32_t)x88 & 0x7fffff);
- uint64_t x91 = (x89 + x75);
- uint64_t x92 = (x91 >> 0x18);
- uint32_t x93 = ((uint32_t)x91 & 0xffffff);
- uint64_t x94 = (x92 + x74);
- uint64_t x95 = (x94 >> 0x18);
- uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- uint64_t x97 = (x95 + x73);
- uint64_t x98 = (x97 >> 0x17);
- uint32_t x99 = ((uint32_t)x97 & 0x7fffff);
- uint64_t x100 = (x98 + x72);
- uint64_t x101 = (x100 >> 0x18);
- uint32_t x102 = ((uint32_t)x100 & 0xffffff);
- uint64_t x103 = (x101 + x71);
- uint64_t x104 = (x103 >> 0x18);
- uint32_t x105 = ((uint32_t)x103 & 0xffffff);
- uint64_t x106 = (x104 + x70);
- uint64_t x107 = (x106 >> 0x17);
- uint32_t x108 = ((uint32_t)x106 & 0x7fffff);
- uint64_t x109 = (x107 + x69);
- uint64_t x110 = (x109 >> 0x18);
- uint32_t x111 = ((uint32_t)x109 & 0xffffff);
- uint64_t x112 = (x110 + x68);
- uint64_t x113 = (x112 >> 0x18);
- uint32_t x114 = ((uint32_t)x112 & 0xffffff);
- uint64_t x115 = (x113 + x67);
- uint64_t x116 = (x115 >> 0x17);
- uint32_t x117 = ((uint32_t)x115 & 0x7fffff);
- uint64_t x118 = (x116 + x66);
- uint64_t x119 = (x118 >> 0x18);
- uint32_t x120 = ((uint32_t)x118 & 0xffffff);
- uint64_t x121 = (x119 + x65);
- uint64_t x122 = (x121 >> 0x18);
- uint32_t x123 = ((uint32_t)x121 & 0xffffff);
- uint64_t x124 = (x122 + x64);
- uint64_t x125 = (x124 >> 0x17);
- uint32_t x126 = ((uint32_t)x124 & 0x7fffff);
- uint64_t x127 = (x81 + (0x13 * x125));
- uint32_t x128 = (uint32_t) (x127 >> 0x18);
- uint32_t x129 = ((uint32_t)x127 & 0xffffff);
- uint32_t x130 = (x128 + x84);
- uint32_t x131 = (x130 >> 0x18);
- uint32_t x132 = (x130 & 0xffffff);
- return (Return x126, Return x123, Return x120, Return x117, Return x114, Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, (x131 + x87), Return x132, Return x129))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e379m19_16limbs/femulDisplay.v b/src/Specific/solinas32_2e379m19_16limbs/femulDisplay.v
deleted file mode 100644
index 326aea737..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e379m19_16limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e379m19_16limbs/fesquare.c b/src/Specific/solinas32_2e379m19_16limbs/fesquare.c
deleted file mode 100644
index 79e93765f..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/fesquare.c
+++ /dev/null
@@ -1,104 +0,0 @@
-static void fesquare(uint32_t out[16], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x31 = (((uint64_t)x2 * x29) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + ((0x2 * ((uint64_t)x8 * x26)) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + ((0x2 * ((uint64_t)x26 * x8)) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x29 * x2))))))))))))))));
- { uint64_t x32 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + ((0x2 * ((uint64_t)x6 * x26)) + ((0x2 * ((uint64_t)x8 * x24)) + (((uint64_t)x10 * x22) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + (((uint64_t)x22 * x10) + ((0x2 * ((uint64_t)x24 * x8)) + ((0x2 * ((uint64_t)x26 * x6)) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x13 * (0x2 * ((uint64_t)x29 * x29))));
- { uint64_t x33 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x13 * ((0x2 * ((uint64_t)x30 * x29)) + (0x2 * ((uint64_t)x29 * x30)))));
- { uint64_t x34 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x13 * (((uint64_t)x28 * x29) + (((uint64_t)x30 * x30) + ((uint64_t)x29 * x28)))));
- { uint64_t x35 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x13 * ((0x2 * ((uint64_t)x26 * x29)) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (0x2 * ((uint64_t)x29 * x26)))))));
- { uint64_t x36 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x13 * ((0x2 * ((uint64_t)x24 * x29)) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + (0x2 * ((uint64_t)x29 * x24))))))));
- { uint64_t x37 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x13 * (((uint64_t)x22 * x29) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + ((uint64_t)x29 * x22))))))));
- { uint64_t x38 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x13 * ((0x2 * ((uint64_t)x20 * x29)) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + (0x2 * ((uint64_t)x29 * x20))))))))));
- { uint64_t x39 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x13 * ((0x2 * ((uint64_t)x18 * x29)) + ((0x2 * ((uint64_t)x20 * x30)) + (((uint64_t)x22 * x28) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + (((uint64_t)x28 * x22) + ((0x2 * ((uint64_t)x30 * x20)) + (0x2 * ((uint64_t)x29 * x18)))))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x13 * (((uint64_t)x16 * x29) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + ((uint64_t)x29 * x16)))))))))));
- { uint64_t x41 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x13 * ((0x2 * ((uint64_t)x14 * x29)) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + ((0x2 * ((uint64_t)x20 * x26)) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + ((0x2 * ((uint64_t)x26 * x20)) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + (0x2 * ((uint64_t)x29 * x14)))))))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x13 * ((0x2 * ((uint64_t)x12 * x29)) + ((0x2 * ((uint64_t)x14 * x30)) + (((uint64_t)x16 * x28) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + (((uint64_t)x28 * x16) + ((0x2 * ((uint64_t)x30 * x14)) + (0x2 * ((uint64_t)x29 * x12))))))))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x13 * (((uint64_t)x10 * x29) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + ((uint64_t)x29 * x10))))))))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x13 * ((0x2 * ((uint64_t)x8 * x29)) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + ((0x2 * ((uint64_t)x14 * x26)) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + ((0x2 * ((uint64_t)x26 * x14)) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + (0x2 * ((uint64_t)x29 * x8))))))))))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x13 * ((0x2 * ((uint64_t)x6 * x29)) + ((0x2 * ((uint64_t)x8 * x30)) + (((uint64_t)x10 * x28) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + (((uint64_t)x16 * x22) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (((uint64_t)x22 * x16) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + (((uint64_t)x28 * x10) + ((0x2 * ((uint64_t)x30 * x8)) + (0x2 * ((uint64_t)x29 * x6)))))))))))))))));
- { uint64_t x46 = (((uint64_t)x2 * x2) + (0x13 * ((0x2 * ((uint64_t)x4 * x29)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + (0x2 * ((uint64_t)x29 * x4))))))))))))))))));
- { uint64_t x47 = (x46 >> 0x18);
- { uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- { uint64_t x49 = (x47 + x45);
- { uint64_t x50 = (x49 >> 0x18);
- { uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- { uint64_t x52 = (x50 + x44);
- { uint64_t x53 = (x52 >> 0x18);
- { uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- { uint64_t x55 = (x53 + x43);
- { uint64_t x56 = (x55 >> 0x17);
- { uint32_t x57 = ((uint32_t)x55 & 0x7fffff);
- { uint64_t x58 = (x56 + x42);
- { uint64_t x59 = (x58 >> 0x18);
- { uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- { uint64_t x61 = (x59 + x41);
- { uint64_t x62 = (x61 >> 0x18);
- { uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- { uint64_t x64 = (x62 + x40);
- { uint64_t x65 = (x64 >> 0x17);
- { uint32_t x66 = ((uint32_t)x64 & 0x7fffff);
- { uint64_t x67 = (x65 + x39);
- { uint64_t x68 = (x67 >> 0x18);
- { uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- { uint64_t x70 = (x68 + x38);
- { uint64_t x71 = (x70 >> 0x18);
- { uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- { uint64_t x73 = (x71 + x37);
- { uint64_t x74 = (x73 >> 0x17);
- { uint32_t x75 = ((uint32_t)x73 & 0x7fffff);
- { uint64_t x76 = (x74 + x36);
- { uint64_t x77 = (x76 >> 0x18);
- { uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- { uint64_t x79 = (x77 + x35);
- { uint64_t x80 = (x79 >> 0x18);
- { uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- { uint64_t x82 = (x80 + x34);
- { uint64_t x83 = (x82 >> 0x17);
- { uint32_t x84 = ((uint32_t)x82 & 0x7fffff);
- { uint64_t x85 = (x83 + x33);
- { uint64_t x86 = (x85 >> 0x18);
- { uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- { uint64_t x88 = (x86 + x32);
- { uint64_t x89 = (x88 >> 0x18);
- { uint32_t x90 = ((uint32_t)x88 & 0xffffff);
- { uint64_t x91 = (x89 + x31);
- { uint64_t x92 = (x91 >> 0x17);
- { uint32_t x93 = ((uint32_t)x91 & 0x7fffff);
- { uint64_t x94 = (x48 + (0x13 * x92));
- { uint32_t x95 = (uint32_t) (x94 >> 0x18);
- { uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- { uint32_t x97 = (x95 + x51);
- { uint32_t x98 = (x97 >> 0x18);
- { uint32_t x99 = (x97 & 0xffffff);
- out[0] = x96;
- out[1] = x99;
- out[2] = (x98 + x54);
- out[3] = x57;
- out[4] = x60;
- out[5] = x63;
- out[6] = x66;
- out[7] = x69;
- out[8] = x72;
- out[9] = x75;
- out[10] = x78;
- out[11] = x81;
- out[12] = x84;
- out[13] = x87;
- out[14] = x90;
- out[15] = x93;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e379m19_16limbs/fesquare.v b/src/Specific/solinas32_2e379m19_16limbs/fesquare.v
deleted file mode 100644
index 0c770a953..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e379m19_16limbs.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_2e379m19_16limbs/fesquareDisplay.log b/src/Specific/solinas32_2e379m19_16limbs/fesquareDisplay.log
deleted file mode 100644
index d7c1cd9c5..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,76 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x31 = (((uint64_t)x2 * x29) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + ((0x2 * ((uint64_t)x8 * x26)) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + ((0x2 * ((uint64_t)x26 * x8)) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x29 * x2))))))))))))))));
- uint64_t x32 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + ((0x2 * ((uint64_t)x6 * x26)) + ((0x2 * ((uint64_t)x8 * x24)) + (((uint64_t)x10 * x22) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + (((uint64_t)x22 * x10) + ((0x2 * ((uint64_t)x24 * x8)) + ((0x2 * ((uint64_t)x26 * x6)) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x13 * (0x2 * ((uint64_t)x29 * x29))));
- uint64_t x33 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x13 * ((0x2 * ((uint64_t)x30 * x29)) + (0x2 * ((uint64_t)x29 * x30)))));
- uint64_t x34 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x13 * (((uint64_t)x28 * x29) + (((uint64_t)x30 * x30) + ((uint64_t)x29 * x28)))));
- uint64_t x35 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x13 * ((0x2 * ((uint64_t)x26 * x29)) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (0x2 * ((uint64_t)x29 * x26)))))));
- uint64_t x36 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x13 * ((0x2 * ((uint64_t)x24 * x29)) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + (0x2 * ((uint64_t)x29 * x24))))))));
- uint64_t x37 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x13 * (((uint64_t)x22 * x29) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + ((uint64_t)x29 * x22))))))));
- uint64_t x38 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x13 * ((0x2 * ((uint64_t)x20 * x29)) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + (0x2 * ((uint64_t)x29 * x20))))))))));
- uint64_t x39 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x13 * ((0x2 * ((uint64_t)x18 * x29)) + ((0x2 * ((uint64_t)x20 * x30)) + (((uint64_t)x22 * x28) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + (((uint64_t)x28 * x22) + ((0x2 * ((uint64_t)x30 * x20)) + (0x2 * ((uint64_t)x29 * x18)))))))))));
- uint64_t x40 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x13 * (((uint64_t)x16 * x29) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + ((uint64_t)x29 * x16)))))))))));
- uint64_t x41 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x13 * ((0x2 * ((uint64_t)x14 * x29)) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + ((0x2 * ((uint64_t)x20 * x26)) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + ((0x2 * ((uint64_t)x26 * x20)) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + (0x2 * ((uint64_t)x29 * x14)))))))))))));
- uint64_t x42 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x13 * ((0x2 * ((uint64_t)x12 * x29)) + ((0x2 * ((uint64_t)x14 * x30)) + (((uint64_t)x16 * x28) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + (((uint64_t)x28 * x16) + ((0x2 * ((uint64_t)x30 * x14)) + (0x2 * ((uint64_t)x29 * x12))))))))))))));
- uint64_t x43 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x13 * (((uint64_t)x10 * x29) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + ((uint64_t)x29 * x10))))))))))))));
- uint64_t x44 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x13 * ((0x2 * ((uint64_t)x8 * x29)) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + ((0x2 * ((uint64_t)x14 * x26)) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + ((0x2 * ((uint64_t)x26 * x14)) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + (0x2 * ((uint64_t)x29 * x8))))))))))))))));
- uint64_t x45 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x13 * ((0x2 * ((uint64_t)x6 * x29)) + ((0x2 * ((uint64_t)x8 * x30)) + (((uint64_t)x10 * x28) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + (((uint64_t)x16 * x22) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (((uint64_t)x22 * x16) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + (((uint64_t)x28 * x10) + ((0x2 * ((uint64_t)x30 * x8)) + (0x2 * ((uint64_t)x29 * x6)))))))))))))))));
- uint64_t x46 = (((uint64_t)x2 * x2) + (0x13 * ((0x2 * ((uint64_t)x4 * x29)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + (0x2 * ((uint64_t)x29 * x4))))))))))))))))));
- uint64_t x47 = (x46 >> 0x18);
- uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- uint64_t x49 = (x47 + x45);
- uint64_t x50 = (x49 >> 0x18);
- uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- uint64_t x52 = (x50 + x44);
- uint64_t x53 = (x52 >> 0x18);
- uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- uint64_t x55 = (x53 + x43);
- uint64_t x56 = (x55 >> 0x17);
- uint32_t x57 = ((uint32_t)x55 & 0x7fffff);
- uint64_t x58 = (x56 + x42);
- uint64_t x59 = (x58 >> 0x18);
- uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- uint64_t x61 = (x59 + x41);
- uint64_t x62 = (x61 >> 0x18);
- uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- uint64_t x64 = (x62 + x40);
- uint64_t x65 = (x64 >> 0x17);
- uint32_t x66 = ((uint32_t)x64 & 0x7fffff);
- uint64_t x67 = (x65 + x39);
- uint64_t x68 = (x67 >> 0x18);
- uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- uint64_t x70 = (x68 + x38);
- uint64_t x71 = (x70 >> 0x18);
- uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- uint64_t x73 = (x71 + x37);
- uint64_t x74 = (x73 >> 0x17);
- uint32_t x75 = ((uint32_t)x73 & 0x7fffff);
- uint64_t x76 = (x74 + x36);
- uint64_t x77 = (x76 >> 0x18);
- uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- uint64_t x79 = (x77 + x35);
- uint64_t x80 = (x79 >> 0x18);
- uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- uint64_t x82 = (x80 + x34);
- uint64_t x83 = (x82 >> 0x17);
- uint32_t x84 = ((uint32_t)x82 & 0x7fffff);
- uint64_t x85 = (x83 + x33);
- uint64_t x86 = (x85 >> 0x18);
- uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- uint64_t x88 = (x86 + x32);
- uint64_t x89 = (x88 >> 0x18);
- uint32_t x90 = ((uint32_t)x88 & 0xffffff);
- uint64_t x91 = (x89 + x31);
- uint64_t x92 = (x91 >> 0x17);
- uint32_t x93 = ((uint32_t)x91 & 0x7fffff);
- uint64_t x94 = (x48 + (0x13 * x92));
- uint32_t x95 = (uint32_t) (x94 >> 0x18);
- uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- uint32_t x97 = (x95 + x51);
- uint32_t x98 = (x97 >> 0x18);
- uint32_t x99 = (x97 & 0xffffff);
- return (Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, Return x57, (x98 + x54), Return x99, Return x96))
-x
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e379m19_16limbs/fesquareDisplay.v b/src/Specific/solinas32_2e379m19_16limbs/fesquareDisplay.v
deleted file mode 100644
index bbf292406..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e379m19_16limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e379m19_16limbs/fesub.c b/src/Specific/solinas32_2e379m19_16limbs/fesub.c
deleted file mode 100644
index d00aacf65..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/fesub.c
+++ /dev/null
@@ -1,51 +0,0 @@
-static void fesub(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- out[0] = ((0x1ffffda + x5) - x35);
- out[1] = ((0x1fffffe + x7) - x37);
- out[2] = ((0x1fffffe + x9) - x39);
- out[3] = ((0xfffffe + x11) - x41);
- out[4] = ((0x1fffffe + x13) - x43);
- out[5] = ((0x1fffffe + x15) - x45);
- out[6] = ((0xfffffe + x17) - x47);
- out[7] = ((0x1fffffe + x19) - x49);
- out[8] = ((0x1fffffe + x21) - x51);
- out[9] = ((0xfffffe + x23) - x53);
- out[10] = ((0x1fffffe + x25) - x55);
- out[11] = ((0x1fffffe + x27) - x57);
- out[12] = ((0xfffffe + x29) - x59);
- out[13] = ((0x1fffffe + x31) - x61);
- out[14] = ((0x1fffffe + x33) - x63);
- out[15] = ((0xfffffe + x32) - x62);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e379m19_16limbs/fesub.v b/src/Specific/solinas32_2e379m19_16limbs/fesub.v
deleted file mode 100644
index 439ab71e8..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e379m19_16limbs.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_2e379m19_16limbs/fesubDisplay.log b/src/Specific/solinas32_2e379m19_16limbs/fesubDisplay.log
deleted file mode 100644
index 49ba4b2a9..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- (((0xfffffe + x32) - x62), ((0x1fffffe + x33) - x63), ((0x1fffffe + x31) - x61), ((0xfffffe + x29) - x59), ((0x1fffffe + x27) - x57), ((0x1fffffe + x25) - x55), ((0xfffffe + x23) - x53), ((0x1fffffe + x21) - x51), ((0x1fffffe + x19) - x49), ((0xfffffe + x17) - x47), ((0x1fffffe + x15) - x45), ((0x1fffffe + x13) - x43), ((0xfffffe + x11) - x41), ((0x1fffffe + x9) - x39), ((0x1fffffe + x7) - x37), ((0x1ffffda + x5) - x35)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e379m19_16limbs/fesubDisplay.v b/src/Specific/solinas32_2e379m19_16limbs/fesubDisplay.v
deleted file mode 100644
index cba3aa401..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e379m19_16limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e379m19_16limbs/freeze.c b/src/Specific/solinas32_2e379m19_16limbs/freeze.c
deleted file mode 100644
index 8d1cf3f8e..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/freeze.c
+++ /dev/null
@@ -1,84 +0,0 @@
-static void freeze(uint32_t out[16], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffed);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x4, 0xffffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x6, 0xffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x8, 0x7fffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x10, 0xffffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x12, 0xffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x14, 0x7fffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x16, 0xffffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x18, 0xffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x20, 0x7fffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x22, 0xffffff);
- { uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x24, 0xffffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x26, 0x7fffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x28, 0xffffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x30, 0xffffff);
- { uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x29, 0x7fffff);
- { uint32_t x79 = cmovznz32(x78, 0x0, 0xffffffff);
- { uint32_t x80 = (x79 & 0xffffed);
- { uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x32, Return x80);
- { uint32_t x84 = (x79 & 0xffffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x35, Return x84);
- { uint32_t x88 = (x79 & 0xffffff);
- { uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x38, Return x88);
- { uint32_t x92 = (x79 & 0x7fffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x41, Return x92);
- { uint32_t x96 = (x79 & 0xffffff);
- { uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x44, Return x96);
- { uint32_t x100 = (x79 & 0xffffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x47, Return x100);
- { uint32_t x104 = (x79 & 0x7fffff);
- { uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x50, Return x104);
- { uint32_t x108 = (x79 & 0xffffff);
- { uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x53, Return x108);
- { uint32_t x112 = (x79 & 0xffffff);
- { uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x56, Return x112);
- { uint32_t x116 = (x79 & 0x7fffff);
- { uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x59, Return x116);
- { uint32_t x120 = (x79 & 0xffffff);
- { uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x62, Return x120);
- { uint32_t x124 = (x79 & 0xffffff);
- { uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x65, Return x124);
- { uint32_t x128 = (x79 & 0x7fffff);
- { uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x68, Return x128);
- { uint32_t x132 = (x79 & 0xffffff);
- { uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x71, Return x132);
- { uint32_t x136 = (x79 & 0xffffff);
- { uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x74, Return x136);
- { uint32_t x140 = (x79 & 0x7fffff);
- { uint32_t x142, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x77, Return x140);
- out[0] = x82;
- out[1] = x86;
- out[2] = x90;
- out[3] = x94;
- out[4] = x98;
- out[5] = x102;
- out[6] = x106;
- out[7] = x110;
- out[8] = x114;
- out[9] = x118;
- out[10] = x122;
- out[11] = x126;
- out[12] = x130;
- out[13] = x134;
- out[14] = x138;
- out[15] = x142;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e379m19_16limbs/freeze.v b/src/Specific/solinas32_2e379m19_16limbs/freeze.v
deleted file mode 100644
index a1f1fa2fb..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e379m19_16limbs.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_2e379m19_16limbs/freezeDisplay.log b/src/Specific/solinas32_2e379m19_16limbs/freezeDisplay.log
deleted file mode 100644
index 13c718586..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/freezeDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffed);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x4, 0xffffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x6, 0xffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x8, 0x7fffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x10, 0xffffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x12, 0xffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x14, 0x7fffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x16, 0xffffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x18, 0xffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x20, 0x7fffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x22, 0xffffff);
- uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x24, 0xffffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x26, 0x7fffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x28, 0xffffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x30, 0xffffff);
- uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x29, 0x7fffff);
- uint32_t x79 = cmovznz32(x78, 0x0, 0xffffffff);
- uint32_t x80 = (x79 & 0xffffed);
- uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x32, Return x80);
- uint32_t x84 = (x79 & 0xffffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x35, Return x84);
- uint32_t x88 = (x79 & 0xffffff);
- uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x38, Return x88);
- uint32_t x92 = (x79 & 0x7fffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x41, Return x92);
- uint32_t x96 = (x79 & 0xffffff);
- uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x44, Return x96);
- uint32_t x100 = (x79 & 0xffffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x47, Return x100);
- uint32_t x104 = (x79 & 0x7fffff);
- uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x50, Return x104);
- uint32_t x108 = (x79 & 0xffffff);
- uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x53, Return x108);
- uint32_t x112 = (x79 & 0xffffff);
- uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x56, Return x112);
- uint32_t x116 = (x79 & 0x7fffff);
- uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x59, Return x116);
- uint32_t x120 = (x79 & 0xffffff);
- uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x62, Return x120);
- uint32_t x124 = (x79 & 0xffffff);
- uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x65, Return x124);
- uint32_t x128 = (x79 & 0x7fffff);
- uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x68, Return x128);
- uint32_t x132 = (x79 & 0xffffff);
- uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x71, Return x132);
- uint32_t x136 = (x79 & 0xffffff);
- uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x74, Return x136);
- uint32_t x140 = (x79 & 0x7fffff);
- uint32_t x142, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x77, Return x140);
- (Return x142, Return x138, Return x134, Return x130, Return x126, Return x122, Return x118, Return x114, Return x110, Return x106, Return x102, Return x98, Return x94, Return x90, Return x86, Return x82))
-x
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e379m19_16limbs/freezeDisplay.v b/src/Specific/solinas32_2e379m19_16limbs/freezeDisplay.v
deleted file mode 100644
index 10f352ee8..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e379m19_16limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e379m19_16limbs/py_interpreter.sh b/src/Specific/solinas32_2e379m19_16limbs/py_interpreter.sh
deleted file mode 100755
index 2df0492b9..000000000
--- a/src/Specific/solinas32_2e379m19_16limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**379 - 19' -Dmodulus_bytes='23 + 11/16' -Da24='121665'
diff --git a/src/Specific/solinas32_2e382m105_16limbs/CurveParameters.v b/src/Specific/solinas32_2e382m105_16limbs/CurveParameters.v
deleted file mode 100644
index b961d157a..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^382 - 105
-Base: 23.875
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 16%nat;
- base := 23 + 7/8;
- bitwidth := 32;
- s := 2^382;
- c := [(1, 105)];
- carry_chains := Some [seq 0 (pred 16); [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_2e382m105_16limbs/Synthesis.v b/src/Specific/solinas32_2e382m105_16limbs/Synthesis.v
deleted file mode 100644
index 35a6503a7..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e382m105_16limbs.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_2e382m105_16limbs/compiler.sh b/src/Specific/solinas32_2e382m105_16limbs/compiler.sh
deleted file mode 100755
index 4b4892add..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,24,24,24,24,24,23,24,24,24,24,24,24,24,23}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<382) - 105' "$@"
diff --git a/src/Specific/solinas32_2e382m105_16limbs/compilerxx.sh b/src/Specific/solinas32_2e382m105_16limbs/compilerxx.sh
deleted file mode 100755
index 26436b5c5..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,24,24,24,24,24,23,24,24,24,24,24,24,24,23}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<382) - 105' "$@"
diff --git a/src/Specific/solinas32_2e382m105_16limbs/feadd.c b/src/Specific/solinas32_2e382m105_16limbs/feadd.c
deleted file mode 100644
index 18b150e21..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/feadd.c
+++ /dev/null
@@ -1,51 +0,0 @@
-static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- out[0] = (x5 + x35);
- out[1] = (x7 + x37);
- out[2] = (x9 + x39);
- out[3] = (x11 + x41);
- out[4] = (x13 + x43);
- out[5] = (x15 + x45);
- out[6] = (x17 + x47);
- out[7] = (x19 + x49);
- out[8] = (x21 + x51);
- out[9] = (x23 + x53);
- out[10] = (x25 + x55);
- out[11] = (x27 + x57);
- out[12] = (x29 + x59);
- out[13] = (x31 + x61);
- out[14] = (x33 + x63);
- out[15] = (x32 + x62);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e382m105_16limbs/feadd.v b/src/Specific/solinas32_2e382m105_16limbs/feadd.v
deleted file mode 100644
index 98983200f..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e382m105_16limbs.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_2e382m105_16limbs/feaddDisplay.log b/src/Specific/solinas32_2e382m105_16limbs/feaddDisplay.log
deleted file mode 100644
index 130c31964..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- ((x32 + x62), (x33 + x63), (x31 + x61), (x29 + x59), (x27 + x57), (x25 + x55), (x23 + x53), (x21 + x51), (x19 + x49), (x17 + x47), (x15 + x45), (x13 + x43), (x11 + x41), (x9 + x39), (x7 + x37), (x5 + x35)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e382m105_16limbs/feaddDisplay.v b/src/Specific/solinas32_2e382m105_16limbs/feaddDisplay.v
deleted file mode 100644
index cf872e81e..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e382m105_16limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e382m105_16limbs/fecarry.v b/src/Specific/solinas32_2e382m105_16limbs/fecarry.v
deleted file mode 100644
index 71c2563c5..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e382m105_16limbs.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_2e382m105_16limbs/fecarryDisplay.v b/src/Specific/solinas32_2e382m105_16limbs/fecarryDisplay.v
deleted file mode 100644
index 8347e5e81..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e382m105_16limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e382m105_16limbs/femul.c b/src/Specific/solinas32_2e382m105_16limbs/femul.c
deleted file mode 100644
index 000c5addd..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/femul.c
+++ /dev/null
@@ -1,120 +0,0 @@
-static void femul(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- { uint64_t x64 = (((uint64_t)x5 * x62) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (((uint64_t)x29 * x41) + (((uint64_t)x31 * x39) + (((uint64_t)x33 * x37) + ((uint64_t)x32 * x35))))))))))))))));
- { uint64_t x65 = ((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + (((uint64_t)x9 * x59) + (((uint64_t)x11 * x57) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + ((0x2 * ((uint64_t)x19 * x49)) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + (((uint64_t)x27 * x41) + (((uint64_t)x29 * x39) + (((uint64_t)x31 * x37) + ((uint64_t)x33 * x35))))))))))))))) + (0x69 * (0x2 * ((uint64_t)x32 * x62))));
- { uint64_t x66 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + ((0x2 * ((uint64_t)x17 * x49)) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + (((uint64_t)x29 * x37) + ((uint64_t)x31 * x35)))))))))))))) + (0x69 * ((0x2 * ((uint64_t)x33 * x62)) + (0x2 * ((uint64_t)x32 * x63)))));
- { uint64_t x67 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + (((uint64_t)x27 * x37) + ((uint64_t)x29 * x35))))))))))))) + (0x69 * ((0x2 * ((uint64_t)x31 * x62)) + ((0x2 * ((uint64_t)x33 * x63)) + (0x2 * ((uint64_t)x32 * x61))))));
- { uint64_t x68 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + (((uint64_t)x25 * x37) + ((uint64_t)x27 * x35)))))))))))) + (0x69 * ((0x2 * ((uint64_t)x29 * x62)) + ((0x2 * ((uint64_t)x31 * x63)) + ((0x2 * ((uint64_t)x33 * x61)) + (0x2 * ((uint64_t)x32 * x59)))))));
- { uint64_t x69 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + ((uint64_t)x25 * x35))))))))))) + (0x69 * ((0x2 * ((uint64_t)x27 * x62)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + (0x2 * ((uint64_t)x32 * x57))))))));
- { uint64_t x70 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + (((uint64_t)x21 * x37) + ((uint64_t)x23 * x35)))))))))) + (0x69 * ((0x2 * ((uint64_t)x25 * x62)) + ((0x2 * ((uint64_t)x27 * x63)) + ((0x2 * ((uint64_t)x29 * x61)) + ((0x2 * ((uint64_t)x31 * x59)) + ((0x2 * ((uint64_t)x33 * x57)) + (0x2 * ((uint64_t)x32 * x55)))))))));
- { uint64_t x71 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + ((uint64_t)x21 * x35))))))))) + (0x69 * ((0x2 * ((uint64_t)x23 * x62)) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + ((0x2 * ((uint64_t)x33 * x55)) + (0x2 * ((uint64_t)x32 * x53))))))))));
- { uint64_t x72 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + ((uint64_t)x19 * x35)))))))) + (0x69 * (((uint64_t)x21 * x62) + (((uint64_t)x23 * x63) + (((uint64_t)x25 * x61) + (((uint64_t)x27 * x59) + (((uint64_t)x29 * x57) + (((uint64_t)x31 * x55) + (((uint64_t)x33 * x53) + ((uint64_t)x32 * x51))))))))));
- { uint64_t x73 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((uint64_t)x17 * x35))))))) + (0x69 * ((0x2 * ((uint64_t)x19 * x62)) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + (0x2 * ((uint64_t)x32 * x49))))))))))));
- { uint64_t x74 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + ((uint64_t)x15 * x35)))))) + (0x69 * ((0x2 * ((uint64_t)x17 * x62)) + ((0x2 * ((uint64_t)x19 * x63)) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + ((0x2 * ((uint64_t)x33 * x49)) + (0x2 * ((uint64_t)x32 * x47)))))))))))));
- { uint64_t x75 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((uint64_t)x13 * x35))))) + (0x69 * ((0x2 * ((uint64_t)x15 * x62)) + ((0x2 * ((uint64_t)x17 * x63)) + ((0x2 * ((uint64_t)x19 * x61)) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + ((0x2 * ((uint64_t)x31 * x49)) + ((0x2 * ((uint64_t)x33 * x47)) + (0x2 * ((uint64_t)x32 * x45))))))))))))));
- { uint64_t x76 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((uint64_t)x11 * x35)))) + (0x69 * ((0x2 * ((uint64_t)x13 * x62)) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + ((0x2 * ((uint64_t)x33 * x45)) + (0x2 * ((uint64_t)x32 * x43)))))))))))))));
- { uint64_t x77 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((uint64_t)x9 * x35))) + (0x69 * ((0x2 * ((uint64_t)x11 * x62)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + (0x2 * ((uint64_t)x32 * x41))))))))))))))));
- { uint64_t x78 = ((((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)) + (0x69 * ((0x2 * ((uint64_t)x9 * x62)) + ((0x2 * ((uint64_t)x11 * x63)) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + ((0x2 * ((uint64_t)x19 * x55)) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + ((0x2 * ((uint64_t)x31 * x43)) + ((0x2 * ((uint64_t)x33 * x41)) + (0x2 * ((uint64_t)x32 * x39)))))))))))))))));
- { uint64_t x79 = (((uint64_t)x5 * x35) + (0x69 * ((0x2 * ((uint64_t)x7 * x62)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + (((uint64_t)x21 * x51) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + (0x2 * ((uint64_t)x32 * x37))))))))))))))))));
- { uint64_t x80 = (x79 >> 0x18);
- { uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- { uint64_t x82 = (x80 + x78);
- { uint64_t x83 = (x82 >> 0x18);
- { uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- { uint64_t x85 = (x83 + x77);
- { uint64_t x86 = (x85 >> 0x18);
- { uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- { uint64_t x88 = (x86 + x76);
- { uint64_t x89 = (x88 >> 0x18);
- { uint32_t x90 = ((uint32_t)x88 & 0xffffff);
- { uint64_t x91 = (x89 + x75);
- { uint64_t x92 = (x91 >> 0x18);
- { uint32_t x93 = ((uint32_t)x91 & 0xffffff);
- { uint64_t x94 = (x92 + x74);
- { uint64_t x95 = (x94 >> 0x18);
- { uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- { uint64_t x97 = (x95 + x73);
- { uint64_t x98 = (x97 >> 0x18);
- { uint32_t x99 = ((uint32_t)x97 & 0xffffff);
- { uint64_t x100 = (x98 + x72);
- { uint64_t x101 = (x100 >> 0x17);
- { uint32_t x102 = ((uint32_t)x100 & 0x7fffff);
- { uint64_t x103 = (x101 + x71);
- { uint64_t x104 = (x103 >> 0x18);
- { uint32_t x105 = ((uint32_t)x103 & 0xffffff);
- { uint64_t x106 = (x104 + x70);
- { uint64_t x107 = (x106 >> 0x18);
- { uint32_t x108 = ((uint32_t)x106 & 0xffffff);
- { uint64_t x109 = (x107 + x69);
- { uint64_t x110 = (x109 >> 0x18);
- { uint32_t x111 = ((uint32_t)x109 & 0xffffff);
- { uint64_t x112 = (x110 + x68);
- { uint64_t x113 = (x112 >> 0x18);
- { uint32_t x114 = ((uint32_t)x112 & 0xffffff);
- { uint64_t x115 = (x113 + x67);
- { uint64_t x116 = (x115 >> 0x18);
- { uint32_t x117 = ((uint32_t)x115 & 0xffffff);
- { uint64_t x118 = (x116 + x66);
- { uint64_t x119 = (x118 >> 0x18);
- { uint32_t x120 = ((uint32_t)x118 & 0xffffff);
- { uint64_t x121 = (x119 + x65);
- { uint64_t x122 = (x121 >> 0x18);
- { uint32_t x123 = ((uint32_t)x121 & 0xffffff);
- { uint64_t x124 = (x122 + x64);
- { uint64_t x125 = (x124 >> 0x17);
- { uint32_t x126 = ((uint32_t)x124 & 0x7fffff);
- { uint64_t x127 = (x81 + (0x69 * x125));
- { uint32_t x128 = (uint32_t) (x127 >> 0x18);
- { uint32_t x129 = ((uint32_t)x127 & 0xffffff);
- { uint32_t x130 = (x128 + x84);
- { uint32_t x131 = (x130 >> 0x18);
- { uint32_t x132 = (x130 & 0xffffff);
- out[0] = x129;
- out[1] = x132;
- out[2] = (x131 + x87);
- out[3] = x90;
- out[4] = x93;
- out[5] = x96;
- out[6] = x99;
- out[7] = x102;
- out[8] = x105;
- out[9] = x108;
- out[10] = x111;
- out[11] = x114;
- out[12] = x117;
- out[13] = x120;
- out[14] = x123;
- out[15] = x126;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e382m105_16limbs/femul.v b/src/Specific/solinas32_2e382m105_16limbs/femul.v
deleted file mode 100644
index 5323b118f..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e382m105_16limbs.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_2e382m105_16limbs/femulDisplay.log b/src/Specific/solinas32_2e382m105_16limbs/femulDisplay.log
deleted file mode 100644
index 4788b52da..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/femulDisplay.log
+++ /dev/null
@@ -1,76 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- uint64_t x64 = (((uint64_t)x5 * x62) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (((uint64_t)x29 * x41) + (((uint64_t)x31 * x39) + (((uint64_t)x33 * x37) + ((uint64_t)x32 * x35))))))))))))))));
- uint64_t x65 = ((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + (((uint64_t)x9 * x59) + (((uint64_t)x11 * x57) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + ((0x2 * ((uint64_t)x19 * x49)) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + (((uint64_t)x27 * x41) + (((uint64_t)x29 * x39) + (((uint64_t)x31 * x37) + ((uint64_t)x33 * x35))))))))))))))) + (0x69 * (0x2 * ((uint64_t)x32 * x62))));
- uint64_t x66 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + ((0x2 * ((uint64_t)x17 * x49)) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + (((uint64_t)x29 * x37) + ((uint64_t)x31 * x35)))))))))))))) + (0x69 * ((0x2 * ((uint64_t)x33 * x62)) + (0x2 * ((uint64_t)x32 * x63)))));
- uint64_t x67 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + (((uint64_t)x27 * x37) + ((uint64_t)x29 * x35))))))))))))) + (0x69 * ((0x2 * ((uint64_t)x31 * x62)) + ((0x2 * ((uint64_t)x33 * x63)) + (0x2 * ((uint64_t)x32 * x61))))));
- uint64_t x68 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + (((uint64_t)x25 * x37) + ((uint64_t)x27 * x35)))))))))))) + (0x69 * ((0x2 * ((uint64_t)x29 * x62)) + ((0x2 * ((uint64_t)x31 * x63)) + ((0x2 * ((uint64_t)x33 * x61)) + (0x2 * ((uint64_t)x32 * x59)))))));
- uint64_t x69 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + ((uint64_t)x25 * x35))))))))))) + (0x69 * ((0x2 * ((uint64_t)x27 * x62)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + (0x2 * ((uint64_t)x32 * x57))))))));
- uint64_t x70 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + (((uint64_t)x21 * x37) + ((uint64_t)x23 * x35)))))))))) + (0x69 * ((0x2 * ((uint64_t)x25 * x62)) + ((0x2 * ((uint64_t)x27 * x63)) + ((0x2 * ((uint64_t)x29 * x61)) + ((0x2 * ((uint64_t)x31 * x59)) + ((0x2 * ((uint64_t)x33 * x57)) + (0x2 * ((uint64_t)x32 * x55)))))))));
- uint64_t x71 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + ((uint64_t)x21 * x35))))))))) + (0x69 * ((0x2 * ((uint64_t)x23 * x62)) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + ((0x2 * ((uint64_t)x33 * x55)) + (0x2 * ((uint64_t)x32 * x53))))))))));
- uint64_t x72 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + ((uint64_t)x19 * x35)))))))) + (0x69 * (((uint64_t)x21 * x62) + (((uint64_t)x23 * x63) + (((uint64_t)x25 * x61) + (((uint64_t)x27 * x59) + (((uint64_t)x29 * x57) + (((uint64_t)x31 * x55) + (((uint64_t)x33 * x53) + ((uint64_t)x32 * x51))))))))));
- uint64_t x73 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((uint64_t)x17 * x35))))))) + (0x69 * ((0x2 * ((uint64_t)x19 * x62)) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + (0x2 * ((uint64_t)x32 * x49))))))))))));
- uint64_t x74 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + ((uint64_t)x15 * x35)))))) + (0x69 * ((0x2 * ((uint64_t)x17 * x62)) + ((0x2 * ((uint64_t)x19 * x63)) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + ((0x2 * ((uint64_t)x33 * x49)) + (0x2 * ((uint64_t)x32 * x47)))))))))))));
- uint64_t x75 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((uint64_t)x13 * x35))))) + (0x69 * ((0x2 * ((uint64_t)x15 * x62)) + ((0x2 * ((uint64_t)x17 * x63)) + ((0x2 * ((uint64_t)x19 * x61)) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + ((0x2 * ((uint64_t)x31 * x49)) + ((0x2 * ((uint64_t)x33 * x47)) + (0x2 * ((uint64_t)x32 * x45))))))))))))));
- uint64_t x76 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((uint64_t)x11 * x35)))) + (0x69 * ((0x2 * ((uint64_t)x13 * x62)) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + ((0x2 * ((uint64_t)x33 * x45)) + (0x2 * ((uint64_t)x32 * x43)))))))))))))));
- uint64_t x77 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((uint64_t)x9 * x35))) + (0x69 * ((0x2 * ((uint64_t)x11 * x62)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + (0x2 * ((uint64_t)x32 * x41))))))))))))))));
- uint64_t x78 = ((((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)) + (0x69 * ((0x2 * ((uint64_t)x9 * x62)) + ((0x2 * ((uint64_t)x11 * x63)) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + ((0x2 * ((uint64_t)x19 * x55)) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + ((0x2 * ((uint64_t)x31 * x43)) + ((0x2 * ((uint64_t)x33 * x41)) + (0x2 * ((uint64_t)x32 * x39)))))))))))))))));
- uint64_t x79 = (((uint64_t)x5 * x35) + (0x69 * ((0x2 * ((uint64_t)x7 * x62)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + (((uint64_t)x21 * x51) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + (0x2 * ((uint64_t)x32 * x37))))))))))))))))));
- uint64_t x80 = (x79 >> 0x18);
- uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- uint64_t x82 = (x80 + x78);
- uint64_t x83 = (x82 >> 0x18);
- uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- uint64_t x85 = (x83 + x77);
- uint64_t x86 = (x85 >> 0x18);
- uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- uint64_t x88 = (x86 + x76);
- uint64_t x89 = (x88 >> 0x18);
- uint32_t x90 = ((uint32_t)x88 & 0xffffff);
- uint64_t x91 = (x89 + x75);
- uint64_t x92 = (x91 >> 0x18);
- uint32_t x93 = ((uint32_t)x91 & 0xffffff);
- uint64_t x94 = (x92 + x74);
- uint64_t x95 = (x94 >> 0x18);
- uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- uint64_t x97 = (x95 + x73);
- uint64_t x98 = (x97 >> 0x18);
- uint32_t x99 = ((uint32_t)x97 & 0xffffff);
- uint64_t x100 = (x98 + x72);
- uint64_t x101 = (x100 >> 0x17);
- uint32_t x102 = ((uint32_t)x100 & 0x7fffff);
- uint64_t x103 = (x101 + x71);
- uint64_t x104 = (x103 >> 0x18);
- uint32_t x105 = ((uint32_t)x103 & 0xffffff);
- uint64_t x106 = (x104 + x70);
- uint64_t x107 = (x106 >> 0x18);
- uint32_t x108 = ((uint32_t)x106 & 0xffffff);
- uint64_t x109 = (x107 + x69);
- uint64_t x110 = (x109 >> 0x18);
- uint32_t x111 = ((uint32_t)x109 & 0xffffff);
- uint64_t x112 = (x110 + x68);
- uint64_t x113 = (x112 >> 0x18);
- uint32_t x114 = ((uint32_t)x112 & 0xffffff);
- uint64_t x115 = (x113 + x67);
- uint64_t x116 = (x115 >> 0x18);
- uint32_t x117 = ((uint32_t)x115 & 0xffffff);
- uint64_t x118 = (x116 + x66);
- uint64_t x119 = (x118 >> 0x18);
- uint32_t x120 = ((uint32_t)x118 & 0xffffff);
- uint64_t x121 = (x119 + x65);
- uint64_t x122 = (x121 >> 0x18);
- uint32_t x123 = ((uint32_t)x121 & 0xffffff);
- uint64_t x124 = (x122 + x64);
- uint64_t x125 = (x124 >> 0x17);
- uint32_t x126 = ((uint32_t)x124 & 0x7fffff);
- uint64_t x127 = (x81 + (0x69 * x125));
- uint32_t x128 = (uint32_t) (x127 >> 0x18);
- uint32_t x129 = ((uint32_t)x127 & 0xffffff);
- uint32_t x130 = (x128 + x84);
- uint32_t x131 = (x130 >> 0x18);
- uint32_t x132 = (x130 & 0xffffff);
- return (Return x126, Return x123, Return x120, Return x117, Return x114, Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, (x131 + x87), Return x132, Return x129))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e382m105_16limbs/femulDisplay.v b/src/Specific/solinas32_2e382m105_16limbs/femulDisplay.v
deleted file mode 100644
index d98e37014..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e382m105_16limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e382m105_16limbs/fesquare.c b/src/Specific/solinas32_2e382m105_16limbs/fesquare.c
deleted file mode 100644
index 72d6e752d..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/fesquare.c
+++ /dev/null
@@ -1,104 +0,0 @@
-static void fesquare(uint32_t out[16], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x31 = (((uint64_t)x2 * x29) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x29 * x2))))))))))))))));
- { uint64_t x32 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x69 * (0x2 * ((uint64_t)x29 * x29))));
- { uint64_t x33 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x69 * ((0x2 * ((uint64_t)x30 * x29)) + (0x2 * ((uint64_t)x29 * x30)))));
- { uint64_t x34 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x69 * ((0x2 * ((uint64_t)x28 * x29)) + ((0x2 * ((uint64_t)x30 * x30)) + (0x2 * ((uint64_t)x29 * x28))))));
- { uint64_t x35 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x69 * ((0x2 * ((uint64_t)x26 * x29)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + (0x2 * ((uint64_t)x29 * x26)))))));
- { uint64_t x36 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x69 * ((0x2 * ((uint64_t)x24 * x29)) + ((0x2 * ((uint64_t)x26 * x30)) + ((0x2 * ((uint64_t)x28 * x28)) + ((0x2 * ((uint64_t)x30 * x26)) + (0x2 * ((uint64_t)x29 * x24))))))));
- { uint64_t x37 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x69 * ((0x2 * ((uint64_t)x22 * x29)) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + (0x2 * ((uint64_t)x29 * x22)))))))));
- { uint64_t x38 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x69 * ((0x2 * ((uint64_t)x20 * x29)) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + ((0x2 * ((uint64_t)x26 * x26)) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + (0x2 * ((uint64_t)x29 * x20))))))))));
- { uint64_t x39 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x69 * (((uint64_t)x18 * x29) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + ((uint64_t)x29 * x18))))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x69 * ((0x2 * ((uint64_t)x16 * x29)) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + (0x2 * ((uint64_t)x29 * x16))))))))))));
- { uint64_t x41 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x69 * ((0x2 * ((uint64_t)x14 * x29)) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + (0x2 * ((uint64_t)x29 * x14)))))))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x69 * ((0x2 * ((uint64_t)x12 * x29)) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + (0x2 * ((uint64_t)x29 * x12))))))))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x69 * ((0x2 * ((uint64_t)x10 * x29)) + ((0x2 * ((uint64_t)x12 * x30)) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + ((0x2 * ((uint64_t)x30 * x12)) + (0x2 * ((uint64_t)x29 * x10)))))))))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x69 * ((0x2 * ((uint64_t)x8 * x29)) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + (0x2 * ((uint64_t)x29 * x8))))))))))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x69 * ((0x2 * ((uint64_t)x6 * x29)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + (0x2 * ((uint64_t)x29 * x6)))))))))))))))));
- { uint64_t x46 = (((uint64_t)x2 * x2) + (0x69 * ((0x2 * ((uint64_t)x4 * x29)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + (0x2 * ((uint64_t)x29 * x4))))))))))))))))));
- { uint64_t x47 = (x46 >> 0x18);
- { uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- { uint64_t x49 = (x47 + x45);
- { uint64_t x50 = (x49 >> 0x18);
- { uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- { uint64_t x52 = (x50 + x44);
- { uint64_t x53 = (x52 >> 0x18);
- { uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- { uint64_t x55 = (x53 + x43);
- { uint64_t x56 = (x55 >> 0x18);
- { uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- { uint64_t x58 = (x56 + x42);
- { uint64_t x59 = (x58 >> 0x18);
- { uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- { uint64_t x61 = (x59 + x41);
- { uint64_t x62 = (x61 >> 0x18);
- { uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- { uint64_t x64 = (x62 + x40);
- { uint64_t x65 = (x64 >> 0x18);
- { uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- { uint64_t x67 = (x65 + x39);
- { uint64_t x68 = (x67 >> 0x17);
- { uint32_t x69 = ((uint32_t)x67 & 0x7fffff);
- { uint64_t x70 = (x68 + x38);
- { uint64_t x71 = (x70 >> 0x18);
- { uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- { uint64_t x73 = (x71 + x37);
- { uint64_t x74 = (x73 >> 0x18);
- { uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- { uint64_t x76 = (x74 + x36);
- { uint64_t x77 = (x76 >> 0x18);
- { uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- { uint64_t x79 = (x77 + x35);
- { uint64_t x80 = (x79 >> 0x18);
- { uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- { uint64_t x82 = (x80 + x34);
- { uint64_t x83 = (x82 >> 0x18);
- { uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- { uint64_t x85 = (x83 + x33);
- { uint64_t x86 = (x85 >> 0x18);
- { uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- { uint64_t x88 = (x86 + x32);
- { uint64_t x89 = (x88 >> 0x18);
- { uint32_t x90 = ((uint32_t)x88 & 0xffffff);
- { uint64_t x91 = (x89 + x31);
- { uint64_t x92 = (x91 >> 0x17);
- { uint32_t x93 = ((uint32_t)x91 & 0x7fffff);
- { uint64_t x94 = (x48 + (0x69 * x92));
- { uint32_t x95 = (uint32_t) (x94 >> 0x18);
- { uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- { uint32_t x97 = (x95 + x51);
- { uint32_t x98 = (x97 >> 0x18);
- { uint32_t x99 = (x97 & 0xffffff);
- out[0] = x96;
- out[1] = x99;
- out[2] = (x98 + x54);
- out[3] = x57;
- out[4] = x60;
- out[5] = x63;
- out[6] = x66;
- out[7] = x69;
- out[8] = x72;
- out[9] = x75;
- out[10] = x78;
- out[11] = x81;
- out[12] = x84;
- out[13] = x87;
- out[14] = x90;
- out[15] = x93;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e382m105_16limbs/fesquare.v b/src/Specific/solinas32_2e382m105_16limbs/fesquare.v
deleted file mode 100644
index 926319ae7..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e382m105_16limbs.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_2e382m105_16limbs/fesquareDisplay.log b/src/Specific/solinas32_2e382m105_16limbs/fesquareDisplay.log
deleted file mode 100644
index 3adbf3fab..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,76 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x31 = (((uint64_t)x2 * x29) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x29 * x2))))))))))))))));
- uint64_t x32 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x69 * (0x2 * ((uint64_t)x29 * x29))));
- uint64_t x33 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x69 * ((0x2 * ((uint64_t)x30 * x29)) + (0x2 * ((uint64_t)x29 * x30)))));
- uint64_t x34 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x69 * ((0x2 * ((uint64_t)x28 * x29)) + ((0x2 * ((uint64_t)x30 * x30)) + (0x2 * ((uint64_t)x29 * x28))))));
- uint64_t x35 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x69 * ((0x2 * ((uint64_t)x26 * x29)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + (0x2 * ((uint64_t)x29 * x26)))))));
- uint64_t x36 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x69 * ((0x2 * ((uint64_t)x24 * x29)) + ((0x2 * ((uint64_t)x26 * x30)) + ((0x2 * ((uint64_t)x28 * x28)) + ((0x2 * ((uint64_t)x30 * x26)) + (0x2 * ((uint64_t)x29 * x24))))))));
- uint64_t x37 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x69 * ((0x2 * ((uint64_t)x22 * x29)) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + (0x2 * ((uint64_t)x29 * x22)))))))));
- uint64_t x38 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x69 * ((0x2 * ((uint64_t)x20 * x29)) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + ((0x2 * ((uint64_t)x26 * x26)) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + (0x2 * ((uint64_t)x29 * x20))))))))));
- uint64_t x39 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x69 * (((uint64_t)x18 * x29) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + ((uint64_t)x29 * x18))))))))));
- uint64_t x40 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x69 * ((0x2 * ((uint64_t)x16 * x29)) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + (0x2 * ((uint64_t)x29 * x16))))))))))));
- uint64_t x41 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x69 * ((0x2 * ((uint64_t)x14 * x29)) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + (0x2 * ((uint64_t)x29 * x14)))))))))))));
- uint64_t x42 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x69 * ((0x2 * ((uint64_t)x12 * x29)) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + (0x2 * ((uint64_t)x29 * x12))))))))))))));
- uint64_t x43 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x69 * ((0x2 * ((uint64_t)x10 * x29)) + ((0x2 * ((uint64_t)x12 * x30)) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + ((0x2 * ((uint64_t)x30 * x12)) + (0x2 * ((uint64_t)x29 * x10)))))))))))))));
- uint64_t x44 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x69 * ((0x2 * ((uint64_t)x8 * x29)) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + (0x2 * ((uint64_t)x29 * x8))))))))))))))));
- uint64_t x45 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x69 * ((0x2 * ((uint64_t)x6 * x29)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + (0x2 * ((uint64_t)x29 * x6)))))))))))))))));
- uint64_t x46 = (((uint64_t)x2 * x2) + (0x69 * ((0x2 * ((uint64_t)x4 * x29)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + (0x2 * ((uint64_t)x29 * x4))))))))))))))))));
- uint64_t x47 = (x46 >> 0x18);
- uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- uint64_t x49 = (x47 + x45);
- uint64_t x50 = (x49 >> 0x18);
- uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- uint64_t x52 = (x50 + x44);
- uint64_t x53 = (x52 >> 0x18);
- uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- uint64_t x55 = (x53 + x43);
- uint64_t x56 = (x55 >> 0x18);
- uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- uint64_t x58 = (x56 + x42);
- uint64_t x59 = (x58 >> 0x18);
- uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- uint64_t x61 = (x59 + x41);
- uint64_t x62 = (x61 >> 0x18);
- uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- uint64_t x64 = (x62 + x40);
- uint64_t x65 = (x64 >> 0x18);
- uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- uint64_t x67 = (x65 + x39);
- uint64_t x68 = (x67 >> 0x17);
- uint32_t x69 = ((uint32_t)x67 & 0x7fffff);
- uint64_t x70 = (x68 + x38);
- uint64_t x71 = (x70 >> 0x18);
- uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- uint64_t x73 = (x71 + x37);
- uint64_t x74 = (x73 >> 0x18);
- uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- uint64_t x76 = (x74 + x36);
- uint64_t x77 = (x76 >> 0x18);
- uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- uint64_t x79 = (x77 + x35);
- uint64_t x80 = (x79 >> 0x18);
- uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- uint64_t x82 = (x80 + x34);
- uint64_t x83 = (x82 >> 0x18);
- uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- uint64_t x85 = (x83 + x33);
- uint64_t x86 = (x85 >> 0x18);
- uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- uint64_t x88 = (x86 + x32);
- uint64_t x89 = (x88 >> 0x18);
- uint32_t x90 = ((uint32_t)x88 & 0xffffff);
- uint64_t x91 = (x89 + x31);
- uint64_t x92 = (x91 >> 0x17);
- uint32_t x93 = ((uint32_t)x91 & 0x7fffff);
- uint64_t x94 = (x48 + (0x69 * x92));
- uint32_t x95 = (uint32_t) (x94 >> 0x18);
- uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- uint32_t x97 = (x95 + x51);
- uint32_t x98 = (x97 >> 0x18);
- uint32_t x99 = (x97 & 0xffffff);
- return (Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, Return x57, (x98 + x54), Return x99, Return x96))
-x
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e382m105_16limbs/fesquareDisplay.v b/src/Specific/solinas32_2e382m105_16limbs/fesquareDisplay.v
deleted file mode 100644
index b183c2f9f..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e382m105_16limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e382m105_16limbs/fesub.c b/src/Specific/solinas32_2e382m105_16limbs/fesub.c
deleted file mode 100644
index 54573ee8f..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/fesub.c
+++ /dev/null
@@ -1,51 +0,0 @@
-static void fesub(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- out[0] = ((0x1ffff2e + x5) - x35);
- out[1] = ((0x1fffffe + x7) - x37);
- out[2] = ((0x1fffffe + x9) - x39);
- out[3] = ((0x1fffffe + x11) - x41);
- out[4] = ((0x1fffffe + x13) - x43);
- out[5] = ((0x1fffffe + x15) - x45);
- out[6] = ((0x1fffffe + x17) - x47);
- out[7] = ((0xfffffe + x19) - x49);
- out[8] = ((0x1fffffe + x21) - x51);
- out[9] = ((0x1fffffe + x23) - x53);
- out[10] = ((0x1fffffe + x25) - x55);
- out[11] = ((0x1fffffe + x27) - x57);
- out[12] = ((0x1fffffe + x29) - x59);
- out[13] = ((0x1fffffe + x31) - x61);
- out[14] = ((0x1fffffe + x33) - x63);
- out[15] = ((0xfffffe + x32) - x62);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e382m105_16limbs/fesub.v b/src/Specific/solinas32_2e382m105_16limbs/fesub.v
deleted file mode 100644
index 7d03994ec..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e382m105_16limbs.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_2e382m105_16limbs/fesubDisplay.log b/src/Specific/solinas32_2e382m105_16limbs/fesubDisplay.log
deleted file mode 100644
index 5ba1c47be..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- (((0xfffffe + x32) - x62), ((0x1fffffe + x33) - x63), ((0x1fffffe + x31) - x61), ((0x1fffffe + x29) - x59), ((0x1fffffe + x27) - x57), ((0x1fffffe + x25) - x55), ((0x1fffffe + x23) - x53), ((0x1fffffe + x21) - x51), ((0xfffffe + x19) - x49), ((0x1fffffe + x17) - x47), ((0x1fffffe + x15) - x45), ((0x1fffffe + x13) - x43), ((0x1fffffe + x11) - x41), ((0x1fffffe + x9) - x39), ((0x1fffffe + x7) - x37), ((0x1ffff2e + x5) - x35)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e382m105_16limbs/fesubDisplay.v b/src/Specific/solinas32_2e382m105_16limbs/fesubDisplay.v
deleted file mode 100644
index ada0d0212..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e382m105_16limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e382m105_16limbs/freeze.c b/src/Specific/solinas32_2e382m105_16limbs/freeze.c
deleted file mode 100644
index 23d68667e..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/freeze.c
+++ /dev/null
@@ -1,84 +0,0 @@
-static void freeze(uint32_t out[16], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffff97);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x4, 0xffffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x6, 0xffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x8, 0xffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x10, 0xffffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x12, 0xffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x14, 0xffffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x16, 0x7fffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x18, 0xffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x20, 0xffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x22, 0xffffff);
- { uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x24, 0xffffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x26, 0xffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x28, 0xffffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x30, 0xffffff);
- { uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x29, 0x7fffff);
- { uint32_t x79 = cmovznz32(x78, 0x0, 0xffffffff);
- { uint32_t x80 = (x79 & 0xffff97);
- { uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x32, Return x80);
- { uint32_t x84 = (x79 & 0xffffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x35, Return x84);
- { uint32_t x88 = (x79 & 0xffffff);
- { uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x38, Return x88);
- { uint32_t x92 = (x79 & 0xffffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x41, Return x92);
- { uint32_t x96 = (x79 & 0xffffff);
- { uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x44, Return x96);
- { uint32_t x100 = (x79 & 0xffffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x47, Return x100);
- { uint32_t x104 = (x79 & 0xffffff);
- { uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x50, Return x104);
- { uint32_t x108 = (x79 & 0x7fffff);
- { uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x53, Return x108);
- { uint32_t x112 = (x79 & 0xffffff);
- { uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x56, Return x112);
- { uint32_t x116 = (x79 & 0xffffff);
- { uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x59, Return x116);
- { uint32_t x120 = (x79 & 0xffffff);
- { uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x62, Return x120);
- { uint32_t x124 = (x79 & 0xffffff);
- { uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x65, Return x124);
- { uint32_t x128 = (x79 & 0xffffff);
- { uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x68, Return x128);
- { uint32_t x132 = (x79 & 0xffffff);
- { uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x71, Return x132);
- { uint32_t x136 = (x79 & 0xffffff);
- { uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x74, Return x136);
- { uint32_t x140 = (x79 & 0x7fffff);
- { uint32_t x142, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x77, Return x140);
- out[0] = x82;
- out[1] = x86;
- out[2] = x90;
- out[3] = x94;
- out[4] = x98;
- out[5] = x102;
- out[6] = x106;
- out[7] = x110;
- out[8] = x114;
- out[9] = x118;
- out[10] = x122;
- out[11] = x126;
- out[12] = x130;
- out[13] = x134;
- out[14] = x138;
- out[15] = x142;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e382m105_16limbs/freeze.v b/src/Specific/solinas32_2e382m105_16limbs/freeze.v
deleted file mode 100644
index 8e1196c92..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e382m105_16limbs.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_2e382m105_16limbs/freezeDisplay.log b/src/Specific/solinas32_2e382m105_16limbs/freezeDisplay.log
deleted file mode 100644
index 41b83672a..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/freezeDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffff97);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x4, 0xffffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x6, 0xffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x8, 0xffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x10, 0xffffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x12, 0xffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x14, 0xffffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x16, 0x7fffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x18, 0xffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x20, 0xffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x22, 0xffffff);
- uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x24, 0xffffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x26, 0xffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x28, 0xffffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x30, 0xffffff);
- uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x29, 0x7fffff);
- uint32_t x79 = cmovznz32(x78, 0x0, 0xffffffff);
- uint32_t x80 = (x79 & 0xffff97);
- uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x32, Return x80);
- uint32_t x84 = (x79 & 0xffffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x35, Return x84);
- uint32_t x88 = (x79 & 0xffffff);
- uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x38, Return x88);
- uint32_t x92 = (x79 & 0xffffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x41, Return x92);
- uint32_t x96 = (x79 & 0xffffff);
- uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x44, Return x96);
- uint32_t x100 = (x79 & 0xffffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x47, Return x100);
- uint32_t x104 = (x79 & 0xffffff);
- uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x50, Return x104);
- uint32_t x108 = (x79 & 0x7fffff);
- uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x53, Return x108);
- uint32_t x112 = (x79 & 0xffffff);
- uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x56, Return x112);
- uint32_t x116 = (x79 & 0xffffff);
- uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x59, Return x116);
- uint32_t x120 = (x79 & 0xffffff);
- uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x62, Return x120);
- uint32_t x124 = (x79 & 0xffffff);
- uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x65, Return x124);
- uint32_t x128 = (x79 & 0xffffff);
- uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x68, Return x128);
- uint32_t x132 = (x79 & 0xffffff);
- uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x71, Return x132);
- uint32_t x136 = (x79 & 0xffffff);
- uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x74, Return x136);
- uint32_t x140 = (x79 & 0x7fffff);
- uint32_t x142, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x77, Return x140);
- (Return x142, Return x138, Return x134, Return x130, Return x126, Return x122, Return x118, Return x114, Return x110, Return x106, Return x102, Return x98, Return x94, Return x90, Return x86, Return x82))
-x
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e382m105_16limbs/freezeDisplay.v b/src/Specific/solinas32_2e382m105_16limbs/freezeDisplay.v
deleted file mode 100644
index 57aa5485d..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e382m105_16limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e382m105_16limbs/py_interpreter.sh b/src/Specific/solinas32_2e382m105_16limbs/py_interpreter.sh
deleted file mode 100755
index d685325c0..000000000
--- a/src/Specific/solinas32_2e382m105_16limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**382 - 105' -Dmodulus_bytes='23.875' -Da24='121665'
diff --git a/src/Specific/solinas32_2e382m105_17limbs/CurveParameters.v b/src/Specific/solinas32_2e382m105_17limbs/CurveParameters.v
deleted file mode 100644
index 8038f4c83..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^382 - 105
-Base: 22 + 8/17
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 17%nat;
- base := 22 + 8/17;
- bitwidth := 32;
- s := 2^382;
- c := [(1, 105)];
- carry_chains := Some [seq 0 (pred 17); [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_2e382m105_17limbs/Synthesis.v b/src/Specific/solinas32_2e382m105_17limbs/Synthesis.v
deleted file mode 100644
index 9a88f7767..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e382m105_17limbs.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_2e382m105_17limbs/compiler.sh b/src/Specific/solinas32_2e382m105_17limbs/compiler.sh
deleted file mode 100755
index b64426472..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22,22}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<382) - 105' "$@"
diff --git a/src/Specific/solinas32_2e382m105_17limbs/compilerxx.sh b/src/Specific/solinas32_2e382m105_17limbs/compilerxx.sh
deleted file mode 100755
index 29553c0ed..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22,22}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<382) - 105' "$@"
diff --git a/src/Specific/solinas32_2e382m105_17limbs/feadd.c b/src/Specific/solinas32_2e382m105_17limbs/feadd.c
deleted file mode 100644
index 30eb11eae..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/feadd.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void feadd(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- out[0] = (x5 + x37);
- out[1] = (x7 + x39);
- out[2] = (x9 + x41);
- out[3] = (x11 + x43);
- out[4] = (x13 + x45);
- out[5] = (x15 + x47);
- out[6] = (x17 + x49);
- out[7] = (x19 + x51);
- out[8] = (x21 + x53);
- out[9] = (x23 + x55);
- out[10] = (x25 + x57);
- out[11] = (x27 + x59);
- out[12] = (x29 + x61);
- out[13] = (x31 + x63);
- out[14] = (x33 + x65);
- out[15] = (x35 + x67);
- out[16] = (x34 + x66);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e382m105_17limbs/feadd.v b/src/Specific/solinas32_2e382m105_17limbs/feadd.v
deleted file mode 100644
index fbf77a99e..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e382m105_17limbs.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_2e382m105_17limbs/feaddDisplay.log b/src/Specific/solinas32_2e382m105_17limbs/feaddDisplay.log
deleted file mode 100644
index 7324e0941..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- ((x34 + x66), (x35 + x67), (x33 + x65), (x31 + x63), (x29 + x61), (x27 + x59), (x25 + x57), (x23 + x55), (x21 + x53), (x19 + x51), (x17 + x49), (x15 + x47), (x13 + x45), (x11 + x43), (x9 + x41), (x7 + x39), (x5 + x37)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e382m105_17limbs/feaddDisplay.v b/src/Specific/solinas32_2e382m105_17limbs/feaddDisplay.v
deleted file mode 100644
index 7a4bb6abd..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e382m105_17limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e382m105_17limbs/fecarry.v b/src/Specific/solinas32_2e382m105_17limbs/fecarry.v
deleted file mode 100644
index 197008155..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e382m105_17limbs.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_2e382m105_17limbs/fecarryDisplay.v b/src/Specific/solinas32_2e382m105_17limbs/fecarryDisplay.v
deleted file mode 100644
index 4c7484224..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e382m105_17limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e382m105_17limbs/femul.c b/src/Specific/solinas32_2e382m105_17limbs/femul.c
deleted file mode 100644
index c3194b2e0..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/femul.c
+++ /dev/null
@@ -1,127 +0,0 @@
-static void femul(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- { uint64_t x68 = (((uint64_t)x5 * x66) + ((0x2 * ((uint64_t)x7 * x67)) + (((uint64_t)x9 * x65) + ((0x2 * ((uint64_t)x11 * x63)) + (((uint64_t)x13 * x61) + ((0x2 * ((uint64_t)x15 * x59)) + (((uint64_t)x17 * x57) + ((0x2 * ((uint64_t)x19 * x55)) + (((uint64_t)x21 * x53) + ((0x2 * ((uint64_t)x23 * x51)) + (((uint64_t)x25 * x49) + ((0x2 * ((uint64_t)x27 * x47)) + (((uint64_t)x29 * x45) + ((0x2 * ((uint64_t)x31 * x43)) + (((uint64_t)x33 * x41) + ((0x2 * ((uint64_t)x35 * x39)) + ((uint64_t)x34 * x37)))))))))))))))));
- { uint64_t x69 = ((((uint64_t)x5 * x67) + (((uint64_t)x7 * x65) + (((uint64_t)x9 * x63) + (((uint64_t)x11 * x61) + (((uint64_t)x13 * x59) + (((uint64_t)x15 * x57) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + (((uint64_t)x29 * x43) + (((uint64_t)x31 * x41) + (((uint64_t)x33 * x39) + ((uint64_t)x35 * x37)))))))))))))))) + (0x69 * ((uint64_t)x34 * x66)));
- { uint64_t x70 = ((((uint64_t)x5 * x65) + ((0x2 * ((uint64_t)x7 * x63)) + (((uint64_t)x9 * x61) + ((0x2 * ((uint64_t)x11 * x59)) + (((uint64_t)x13 * x57) + ((0x2 * ((uint64_t)x15 * x55)) + (((uint64_t)x17 * x53) + ((0x2 * ((uint64_t)x19 * x51)) + (((uint64_t)x21 * x49) + ((0x2 * ((uint64_t)x23 * x47)) + (((uint64_t)x25 * x45) + ((0x2 * ((uint64_t)x27 * x43)) + (((uint64_t)x29 * x41) + ((0x2 * ((uint64_t)x31 * x39)) + ((uint64_t)x33 * x37))))))))))))))) + (0x69 * ((0x2 * ((uint64_t)x35 * x66)) + (0x2 * ((uint64_t)x34 * x67)))));
- { uint64_t x71 = ((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + (((uint64_t)x9 * x59) + (((uint64_t)x11 * x57) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + (((uint64_t)x27 * x41) + (((uint64_t)x29 * x39) + ((uint64_t)x31 * x37)))))))))))))) + (0x69 * (((uint64_t)x33 * x66) + ((0x2 * ((uint64_t)x35 * x67)) + ((uint64_t)x34 * x65)))));
- { uint64_t x72 = ((((uint64_t)x5 * x61) + ((0x2 * ((uint64_t)x7 * x59)) + (((uint64_t)x9 * x57) + ((0x2 * ((uint64_t)x11 * x55)) + (((uint64_t)x13 * x53) + ((0x2 * ((uint64_t)x15 * x51)) + (((uint64_t)x17 * x49) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + ((0x2 * ((uint64_t)x23 * x43)) + (((uint64_t)x25 * x41) + ((0x2 * ((uint64_t)x27 * x39)) + ((uint64_t)x29 * x37))))))))))))) + (0x69 * ((0x2 * ((uint64_t)x31 * x66)) + ((0x2 * ((uint64_t)x33 * x67)) + ((0x2 * ((uint64_t)x35 * x65)) + (0x2 * ((uint64_t)x34 * x63)))))));
- { uint64_t x73 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + ((uint64_t)x27 * x37)))))))))))) + (0x69 * (((uint64_t)x29 * x66) + ((0x2 * ((uint64_t)x31 * x67)) + (((uint64_t)x33 * x65) + ((0x2 * ((uint64_t)x35 * x63)) + ((uint64_t)x34 * x61)))))));
- { uint64_t x74 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + (((uint64_t)x9 * x53) + ((0x2 * ((uint64_t)x11 * x51)) + (((uint64_t)x13 * x49) + ((0x2 * ((uint64_t)x15 * x47)) + (((uint64_t)x17 * x45) + ((0x2 * ((uint64_t)x19 * x43)) + (((uint64_t)x21 * x41) + ((0x2 * ((uint64_t)x23 * x39)) + ((uint64_t)x25 * x37))))))))))) + (0x69 * ((0x2 * ((uint64_t)x27 * x66)) + ((0x2 * ((uint64_t)x29 * x67)) + ((0x2 * ((uint64_t)x31 * x65)) + ((0x2 * ((uint64_t)x33 * x63)) + ((0x2 * ((uint64_t)x35 * x61)) + (0x2 * ((uint64_t)x34 * x59)))))))));
- { uint64_t x75 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + ((uint64_t)x23 * x37)))))))))) + (0x69 * (((uint64_t)x25 * x66) + ((0x2 * ((uint64_t)x27 * x67)) + (((uint64_t)x29 * x65) + ((0x2 * ((uint64_t)x31 * x63)) + (((uint64_t)x33 * x61) + ((0x2 * ((uint64_t)x35 * x59)) + ((uint64_t)x34 * x57)))))))));
- { uint64_t x76 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + (((uint64_t)x9 * x49) + ((0x2 * ((uint64_t)x11 * x47)) + (((uint64_t)x13 * x45) + ((0x2 * ((uint64_t)x15 * x43)) + (((uint64_t)x17 * x41) + ((0x2 * ((uint64_t)x19 * x39)) + ((uint64_t)x21 * x37))))))))) + (0x69 * ((0x2 * ((uint64_t)x23 * x66)) + ((0x2 * ((uint64_t)x25 * x67)) + ((0x2 * ((uint64_t)x27 * x65)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + ((0x2 * ((uint64_t)x35 * x57)) + (0x2 * ((uint64_t)x34 * x55)))))))))));
- { uint64_t x77 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + ((uint64_t)x19 * x37)))))))) + (0x69 * (((uint64_t)x21 * x66) + ((0x2 * ((uint64_t)x23 * x67)) + (((uint64_t)x25 * x65) + ((0x2 * ((uint64_t)x27 * x63)) + (((uint64_t)x29 * x61) + ((0x2 * ((uint64_t)x31 * x59)) + (((uint64_t)x33 * x57) + ((0x2 * ((uint64_t)x35 * x55)) + ((uint64_t)x34 * x53)))))))))));
- { uint64_t x78 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + (((uint64_t)x9 * x45) + ((0x2 * ((uint64_t)x11 * x43)) + (((uint64_t)x13 * x41) + ((0x2 * ((uint64_t)x15 * x39)) + ((uint64_t)x17 * x37))))))) + (0x69 * ((0x2 * ((uint64_t)x19 * x66)) + ((0x2 * ((uint64_t)x21 * x67)) + ((0x2 * ((uint64_t)x23 * x65)) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + ((0x2 * ((uint64_t)x33 * x55)) + ((0x2 * ((uint64_t)x35 * x53)) + (0x2 * ((uint64_t)x34 * x51)))))))))))));
- { uint64_t x79 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + ((uint64_t)x15 * x37)))))) + (0x69 * (((uint64_t)x17 * x66) + ((0x2 * ((uint64_t)x19 * x67)) + (((uint64_t)x21 * x65) + ((0x2 * ((uint64_t)x23 * x63)) + (((uint64_t)x25 * x61) + ((0x2 * ((uint64_t)x27 * x59)) + (((uint64_t)x29 * x57) + ((0x2 * ((uint64_t)x31 * x55)) + (((uint64_t)x33 * x53) + ((0x2 * ((uint64_t)x35 * x51)) + ((uint64_t)x34 * x49)))))))))))));
- { uint64_t x80 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + (((uint64_t)x9 * x41) + ((0x2 * ((uint64_t)x11 * x39)) + ((uint64_t)x13 * x37))))) + (0x69 * ((0x2 * ((uint64_t)x15 * x66)) + ((0x2 * ((uint64_t)x17 * x67)) + ((0x2 * ((uint64_t)x19 * x65)) + ((0x2 * ((uint64_t)x21 * x63)) + ((0x2 * ((uint64_t)x23 * x61)) + ((0x2 * ((uint64_t)x25 * x59)) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + ((0x2 * ((uint64_t)x31 * x53)) + ((0x2 * ((uint64_t)x33 * x51)) + ((0x2 * ((uint64_t)x35 * x49)) + (0x2 * ((uint64_t)x34 * x47)))))))))))))));
- { uint64_t x81 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + ((uint64_t)x11 * x37)))) + (0x69 * (((uint64_t)x13 * x66) + ((0x2 * ((uint64_t)x15 * x67)) + (((uint64_t)x17 * x65) + ((0x2 * ((uint64_t)x19 * x63)) + (((uint64_t)x21 * x61) + ((0x2 * ((uint64_t)x23 * x59)) + (((uint64_t)x25 * x57) + ((0x2 * ((uint64_t)x27 * x55)) + (((uint64_t)x29 * x53) + ((0x2 * ((uint64_t)x31 * x51)) + (((uint64_t)x33 * x49) + ((0x2 * ((uint64_t)x35 * x47)) + ((uint64_t)x34 * x45)))))))))))))));
- { uint64_t x82 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((uint64_t)x9 * x37))) + (0x69 * ((0x2 * ((uint64_t)x11 * x66)) + ((0x2 * ((uint64_t)x13 * x67)) + ((0x2 * ((uint64_t)x15 * x65)) + ((0x2 * ((uint64_t)x17 * x63)) + ((0x2 * ((uint64_t)x19 * x61)) + ((0x2 * ((uint64_t)x21 * x59)) + ((0x2 * ((uint64_t)x23 * x57)) + ((0x2 * ((uint64_t)x25 * x55)) + ((0x2 * ((uint64_t)x27 * x53)) + ((0x2 * ((uint64_t)x29 * x51)) + ((0x2 * ((uint64_t)x31 * x49)) + ((0x2 * ((uint64_t)x33 * x47)) + ((0x2 * ((uint64_t)x35 * x45)) + (0x2 * ((uint64_t)x34 * x43)))))))))))))))));
- { uint64_t x83 = ((((uint64_t)x5 * x39) + ((uint64_t)x7 * x37)) + (0x69 * (((uint64_t)x9 * x66) + ((0x2 * ((uint64_t)x11 * x67)) + (((uint64_t)x13 * x65) + ((0x2 * ((uint64_t)x15 * x63)) + (((uint64_t)x17 * x61) + ((0x2 * ((uint64_t)x19 * x59)) + (((uint64_t)x21 * x57) + ((0x2 * ((uint64_t)x23 * x55)) + (((uint64_t)x25 * x53) + ((0x2 * ((uint64_t)x27 * x51)) + (((uint64_t)x29 * x49) + ((0x2 * ((uint64_t)x31 * x47)) + (((uint64_t)x33 * x45) + ((0x2 * ((uint64_t)x35 * x43)) + ((uint64_t)x34 * x41)))))))))))))))));
- { uint64_t x84 = (((uint64_t)x5 * x37) + (0x69 * ((0x2 * ((uint64_t)x7 * x66)) + ((0x2 * ((uint64_t)x9 * x67)) + ((0x2 * ((uint64_t)x11 * x65)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + ((0x2 * ((uint64_t)x35 * x41)) + (0x2 * ((uint64_t)x34 * x39)))))))))))))))))));
- { uint64_t x85 = (x84 >> 0x17);
- { uint32_t x86 = ((uint32_t)x84 & 0x7fffff);
- { uint64_t x87 = (x85 + x83);
- { uint64_t x88 = (x87 >> 0x16);
- { uint32_t x89 = ((uint32_t)x87 & 0x3fffff);
- { uint64_t x90 = (x88 + x82);
- { uint64_t x91 = (x90 >> 0x17);
- { uint32_t x92 = ((uint32_t)x90 & 0x7fffff);
- { uint64_t x93 = (x91 + x81);
- { uint64_t x94 = (x93 >> 0x16);
- { uint32_t x95 = ((uint32_t)x93 & 0x3fffff);
- { uint64_t x96 = (x94 + x80);
- { uint64_t x97 = (x96 >> 0x17);
- { uint32_t x98 = ((uint32_t)x96 & 0x7fffff);
- { uint64_t x99 = (x97 + x79);
- { uint64_t x100 = (x99 >> 0x16);
- { uint32_t x101 = ((uint32_t)x99 & 0x3fffff);
- { uint64_t x102 = (x100 + x78);
- { uint64_t x103 = (x102 >> 0x17);
- { uint32_t x104 = ((uint32_t)x102 & 0x7fffff);
- { uint64_t x105 = (x103 + x77);
- { uint64_t x106 = (x105 >> 0x16);
- { uint32_t x107 = ((uint32_t)x105 & 0x3fffff);
- { uint64_t x108 = (x106 + x76);
- { uint64_t x109 = (x108 >> 0x17);
- { uint32_t x110 = ((uint32_t)x108 & 0x7fffff);
- { uint64_t x111 = (x109 + x75);
- { uint64_t x112 = (x111 >> 0x16);
- { uint32_t x113 = ((uint32_t)x111 & 0x3fffff);
- { uint64_t x114 = (x112 + x74);
- { uint64_t x115 = (x114 >> 0x17);
- { uint32_t x116 = ((uint32_t)x114 & 0x7fffff);
- { uint64_t x117 = (x115 + x73);
- { uint64_t x118 = (x117 >> 0x16);
- { uint32_t x119 = ((uint32_t)x117 & 0x3fffff);
- { uint64_t x120 = (x118 + x72);
- { uint64_t x121 = (x120 >> 0x17);
- { uint32_t x122 = ((uint32_t)x120 & 0x7fffff);
- { uint64_t x123 = (x121 + x71);
- { uint64_t x124 = (x123 >> 0x16);
- { uint32_t x125 = ((uint32_t)x123 & 0x3fffff);
- { uint64_t x126 = (x124 + x70);
- { uint64_t x127 = (x126 >> 0x17);
- { uint32_t x128 = ((uint32_t)x126 & 0x7fffff);
- { uint64_t x129 = (x127 + x69);
- { uint64_t x130 = (x129 >> 0x16);
- { uint32_t x131 = ((uint32_t)x129 & 0x3fffff);
- { uint64_t x132 = (x130 + x68);
- { uint32_t x133 = (uint32_t) (x132 >> 0x16);
- { uint32_t x134 = ((uint32_t)x132 & 0x3fffff);
- { uint64_t x135 = (x86 + ((uint64_t)0x69 * x133));
- { uint32_t x136 = (uint32_t) (x135 >> 0x17);
- { uint32_t x137 = ((uint32_t)x135 & 0x7fffff);
- { uint32_t x138 = (x136 + x89);
- { uint32_t x139 = (x138 >> 0x16);
- { uint32_t x140 = (x138 & 0x3fffff);
- out[0] = x137;
- out[1] = x140;
- out[2] = (x139 + x92);
- out[3] = x95;
- out[4] = x98;
- out[5] = x101;
- out[6] = x104;
- out[7] = x107;
- out[8] = x110;
- out[9] = x113;
- out[10] = x116;
- out[11] = x119;
- out[12] = x122;
- out[13] = x125;
- out[14] = x128;
- out[15] = x131;
- out[16] = x134;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e382m105_17limbs/femul.v b/src/Specific/solinas32_2e382m105_17limbs/femul.v
deleted file mode 100644
index fb03286ca..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e382m105_17limbs.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_2e382m105_17limbs/femulDisplay.log b/src/Specific/solinas32_2e382m105_17limbs/femulDisplay.log
deleted file mode 100644
index 55f23435e..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/femulDisplay.log
+++ /dev/null
@@ -1,80 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- uint64_t x68 = (((uint64_t)x5 * x66) + ((0x2 * ((uint64_t)x7 * x67)) + (((uint64_t)x9 * x65) + ((0x2 * ((uint64_t)x11 * x63)) + (((uint64_t)x13 * x61) + ((0x2 * ((uint64_t)x15 * x59)) + (((uint64_t)x17 * x57) + ((0x2 * ((uint64_t)x19 * x55)) + (((uint64_t)x21 * x53) + ((0x2 * ((uint64_t)x23 * x51)) + (((uint64_t)x25 * x49) + ((0x2 * ((uint64_t)x27 * x47)) + (((uint64_t)x29 * x45) + ((0x2 * ((uint64_t)x31 * x43)) + (((uint64_t)x33 * x41) + ((0x2 * ((uint64_t)x35 * x39)) + ((uint64_t)x34 * x37)))))))))))))))));
- uint64_t x69 = ((((uint64_t)x5 * x67) + (((uint64_t)x7 * x65) + (((uint64_t)x9 * x63) + (((uint64_t)x11 * x61) + (((uint64_t)x13 * x59) + (((uint64_t)x15 * x57) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + (((uint64_t)x29 * x43) + (((uint64_t)x31 * x41) + (((uint64_t)x33 * x39) + ((uint64_t)x35 * x37)))))))))))))))) + (0x69 * ((uint64_t)x34 * x66)));
- uint64_t x70 = ((((uint64_t)x5 * x65) + ((0x2 * ((uint64_t)x7 * x63)) + (((uint64_t)x9 * x61) + ((0x2 * ((uint64_t)x11 * x59)) + (((uint64_t)x13 * x57) + ((0x2 * ((uint64_t)x15 * x55)) + (((uint64_t)x17 * x53) + ((0x2 * ((uint64_t)x19 * x51)) + (((uint64_t)x21 * x49) + ((0x2 * ((uint64_t)x23 * x47)) + (((uint64_t)x25 * x45) + ((0x2 * ((uint64_t)x27 * x43)) + (((uint64_t)x29 * x41) + ((0x2 * ((uint64_t)x31 * x39)) + ((uint64_t)x33 * x37))))))))))))))) + (0x69 * ((0x2 * ((uint64_t)x35 * x66)) + (0x2 * ((uint64_t)x34 * x67)))));
- uint64_t x71 = ((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + (((uint64_t)x9 * x59) + (((uint64_t)x11 * x57) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + (((uint64_t)x27 * x41) + (((uint64_t)x29 * x39) + ((uint64_t)x31 * x37)))))))))))))) + (0x69 * (((uint64_t)x33 * x66) + ((0x2 * ((uint64_t)x35 * x67)) + ((uint64_t)x34 * x65)))));
- uint64_t x72 = ((((uint64_t)x5 * x61) + ((0x2 * ((uint64_t)x7 * x59)) + (((uint64_t)x9 * x57) + ((0x2 * ((uint64_t)x11 * x55)) + (((uint64_t)x13 * x53) + ((0x2 * ((uint64_t)x15 * x51)) + (((uint64_t)x17 * x49) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + ((0x2 * ((uint64_t)x23 * x43)) + (((uint64_t)x25 * x41) + ((0x2 * ((uint64_t)x27 * x39)) + ((uint64_t)x29 * x37))))))))))))) + (0x69 * ((0x2 * ((uint64_t)x31 * x66)) + ((0x2 * ((uint64_t)x33 * x67)) + ((0x2 * ((uint64_t)x35 * x65)) + (0x2 * ((uint64_t)x34 * x63)))))));
- uint64_t x73 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + ((uint64_t)x27 * x37)))))))))))) + (0x69 * (((uint64_t)x29 * x66) + ((0x2 * ((uint64_t)x31 * x67)) + (((uint64_t)x33 * x65) + ((0x2 * ((uint64_t)x35 * x63)) + ((uint64_t)x34 * x61)))))));
- uint64_t x74 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + (((uint64_t)x9 * x53) + ((0x2 * ((uint64_t)x11 * x51)) + (((uint64_t)x13 * x49) + ((0x2 * ((uint64_t)x15 * x47)) + (((uint64_t)x17 * x45) + ((0x2 * ((uint64_t)x19 * x43)) + (((uint64_t)x21 * x41) + ((0x2 * ((uint64_t)x23 * x39)) + ((uint64_t)x25 * x37))))))))))) + (0x69 * ((0x2 * ((uint64_t)x27 * x66)) + ((0x2 * ((uint64_t)x29 * x67)) + ((0x2 * ((uint64_t)x31 * x65)) + ((0x2 * ((uint64_t)x33 * x63)) + ((0x2 * ((uint64_t)x35 * x61)) + (0x2 * ((uint64_t)x34 * x59)))))))));
- uint64_t x75 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + ((uint64_t)x23 * x37)))))))))) + (0x69 * (((uint64_t)x25 * x66) + ((0x2 * ((uint64_t)x27 * x67)) + (((uint64_t)x29 * x65) + ((0x2 * ((uint64_t)x31 * x63)) + (((uint64_t)x33 * x61) + ((0x2 * ((uint64_t)x35 * x59)) + ((uint64_t)x34 * x57)))))))));
- uint64_t x76 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + (((uint64_t)x9 * x49) + ((0x2 * ((uint64_t)x11 * x47)) + (((uint64_t)x13 * x45) + ((0x2 * ((uint64_t)x15 * x43)) + (((uint64_t)x17 * x41) + ((0x2 * ((uint64_t)x19 * x39)) + ((uint64_t)x21 * x37))))))))) + (0x69 * ((0x2 * ((uint64_t)x23 * x66)) + ((0x2 * ((uint64_t)x25 * x67)) + ((0x2 * ((uint64_t)x27 * x65)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + ((0x2 * ((uint64_t)x35 * x57)) + (0x2 * ((uint64_t)x34 * x55)))))))))));
- uint64_t x77 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + ((uint64_t)x19 * x37)))))))) + (0x69 * (((uint64_t)x21 * x66) + ((0x2 * ((uint64_t)x23 * x67)) + (((uint64_t)x25 * x65) + ((0x2 * ((uint64_t)x27 * x63)) + (((uint64_t)x29 * x61) + ((0x2 * ((uint64_t)x31 * x59)) + (((uint64_t)x33 * x57) + ((0x2 * ((uint64_t)x35 * x55)) + ((uint64_t)x34 * x53)))))))))));
- uint64_t x78 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + (((uint64_t)x9 * x45) + ((0x2 * ((uint64_t)x11 * x43)) + (((uint64_t)x13 * x41) + ((0x2 * ((uint64_t)x15 * x39)) + ((uint64_t)x17 * x37))))))) + (0x69 * ((0x2 * ((uint64_t)x19 * x66)) + ((0x2 * ((uint64_t)x21 * x67)) + ((0x2 * ((uint64_t)x23 * x65)) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + ((0x2 * ((uint64_t)x33 * x55)) + ((0x2 * ((uint64_t)x35 * x53)) + (0x2 * ((uint64_t)x34 * x51)))))))))))));
- uint64_t x79 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + ((uint64_t)x15 * x37)))))) + (0x69 * (((uint64_t)x17 * x66) + ((0x2 * ((uint64_t)x19 * x67)) + (((uint64_t)x21 * x65) + ((0x2 * ((uint64_t)x23 * x63)) + (((uint64_t)x25 * x61) + ((0x2 * ((uint64_t)x27 * x59)) + (((uint64_t)x29 * x57) + ((0x2 * ((uint64_t)x31 * x55)) + (((uint64_t)x33 * x53) + ((0x2 * ((uint64_t)x35 * x51)) + ((uint64_t)x34 * x49)))))))))))));
- uint64_t x80 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + (((uint64_t)x9 * x41) + ((0x2 * ((uint64_t)x11 * x39)) + ((uint64_t)x13 * x37))))) + (0x69 * ((0x2 * ((uint64_t)x15 * x66)) + ((0x2 * ((uint64_t)x17 * x67)) + ((0x2 * ((uint64_t)x19 * x65)) + ((0x2 * ((uint64_t)x21 * x63)) + ((0x2 * ((uint64_t)x23 * x61)) + ((0x2 * ((uint64_t)x25 * x59)) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + ((0x2 * ((uint64_t)x31 * x53)) + ((0x2 * ((uint64_t)x33 * x51)) + ((0x2 * ((uint64_t)x35 * x49)) + (0x2 * ((uint64_t)x34 * x47)))))))))))))));
- uint64_t x81 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + ((uint64_t)x11 * x37)))) + (0x69 * (((uint64_t)x13 * x66) + ((0x2 * ((uint64_t)x15 * x67)) + (((uint64_t)x17 * x65) + ((0x2 * ((uint64_t)x19 * x63)) + (((uint64_t)x21 * x61) + ((0x2 * ((uint64_t)x23 * x59)) + (((uint64_t)x25 * x57) + ((0x2 * ((uint64_t)x27 * x55)) + (((uint64_t)x29 * x53) + ((0x2 * ((uint64_t)x31 * x51)) + (((uint64_t)x33 * x49) + ((0x2 * ((uint64_t)x35 * x47)) + ((uint64_t)x34 * x45)))))))))))))));
- uint64_t x82 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((uint64_t)x9 * x37))) + (0x69 * ((0x2 * ((uint64_t)x11 * x66)) + ((0x2 * ((uint64_t)x13 * x67)) + ((0x2 * ((uint64_t)x15 * x65)) + ((0x2 * ((uint64_t)x17 * x63)) + ((0x2 * ((uint64_t)x19 * x61)) + ((0x2 * ((uint64_t)x21 * x59)) + ((0x2 * ((uint64_t)x23 * x57)) + ((0x2 * ((uint64_t)x25 * x55)) + ((0x2 * ((uint64_t)x27 * x53)) + ((0x2 * ((uint64_t)x29 * x51)) + ((0x2 * ((uint64_t)x31 * x49)) + ((0x2 * ((uint64_t)x33 * x47)) + ((0x2 * ((uint64_t)x35 * x45)) + (0x2 * ((uint64_t)x34 * x43)))))))))))))))));
- uint64_t x83 = ((((uint64_t)x5 * x39) + ((uint64_t)x7 * x37)) + (0x69 * (((uint64_t)x9 * x66) + ((0x2 * ((uint64_t)x11 * x67)) + (((uint64_t)x13 * x65) + ((0x2 * ((uint64_t)x15 * x63)) + (((uint64_t)x17 * x61) + ((0x2 * ((uint64_t)x19 * x59)) + (((uint64_t)x21 * x57) + ((0x2 * ((uint64_t)x23 * x55)) + (((uint64_t)x25 * x53) + ((0x2 * ((uint64_t)x27 * x51)) + (((uint64_t)x29 * x49) + ((0x2 * ((uint64_t)x31 * x47)) + (((uint64_t)x33 * x45) + ((0x2 * ((uint64_t)x35 * x43)) + ((uint64_t)x34 * x41)))))))))))))))));
- uint64_t x84 = (((uint64_t)x5 * x37) + (0x69 * ((0x2 * ((uint64_t)x7 * x66)) + ((0x2 * ((uint64_t)x9 * x67)) + ((0x2 * ((uint64_t)x11 * x65)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + ((0x2 * ((uint64_t)x35 * x41)) + (0x2 * ((uint64_t)x34 * x39)))))))))))))))))));
- uint64_t x85 = (x84 >> 0x17);
- uint32_t x86 = ((uint32_t)x84 & 0x7fffff);
- uint64_t x87 = (x85 + x83);
- uint64_t x88 = (x87 >> 0x16);
- uint32_t x89 = ((uint32_t)x87 & 0x3fffff);
- uint64_t x90 = (x88 + x82);
- uint64_t x91 = (x90 >> 0x17);
- uint32_t x92 = ((uint32_t)x90 & 0x7fffff);
- uint64_t x93 = (x91 + x81);
- uint64_t x94 = (x93 >> 0x16);
- uint32_t x95 = ((uint32_t)x93 & 0x3fffff);
- uint64_t x96 = (x94 + x80);
- uint64_t x97 = (x96 >> 0x17);
- uint32_t x98 = ((uint32_t)x96 & 0x7fffff);
- uint64_t x99 = (x97 + x79);
- uint64_t x100 = (x99 >> 0x16);
- uint32_t x101 = ((uint32_t)x99 & 0x3fffff);
- uint64_t x102 = (x100 + x78);
- uint64_t x103 = (x102 >> 0x17);
- uint32_t x104 = ((uint32_t)x102 & 0x7fffff);
- uint64_t x105 = (x103 + x77);
- uint64_t x106 = (x105 >> 0x16);
- uint32_t x107 = ((uint32_t)x105 & 0x3fffff);
- uint64_t x108 = (x106 + x76);
- uint64_t x109 = (x108 >> 0x17);
- uint32_t x110 = ((uint32_t)x108 & 0x7fffff);
- uint64_t x111 = (x109 + x75);
- uint64_t x112 = (x111 >> 0x16);
- uint32_t x113 = ((uint32_t)x111 & 0x3fffff);
- uint64_t x114 = (x112 + x74);
- uint64_t x115 = (x114 >> 0x17);
- uint32_t x116 = ((uint32_t)x114 & 0x7fffff);
- uint64_t x117 = (x115 + x73);
- uint64_t x118 = (x117 >> 0x16);
- uint32_t x119 = ((uint32_t)x117 & 0x3fffff);
- uint64_t x120 = (x118 + x72);
- uint64_t x121 = (x120 >> 0x17);
- uint32_t x122 = ((uint32_t)x120 & 0x7fffff);
- uint64_t x123 = (x121 + x71);
- uint64_t x124 = (x123 >> 0x16);
- uint32_t x125 = ((uint32_t)x123 & 0x3fffff);
- uint64_t x126 = (x124 + x70);
- uint64_t x127 = (x126 >> 0x17);
- uint32_t x128 = ((uint32_t)x126 & 0x7fffff);
- uint64_t x129 = (x127 + x69);
- uint64_t x130 = (x129 >> 0x16);
- uint32_t x131 = ((uint32_t)x129 & 0x3fffff);
- uint64_t x132 = (x130 + x68);
- uint32_t x133 = (uint32_t) (x132 >> 0x16);
- uint32_t x134 = ((uint32_t)x132 & 0x3fffff);
- uint64_t x135 = (x86 + ((uint64_t)0x69 * x133));
- uint32_t x136 = (uint32_t) (x135 >> 0x17);
- uint32_t x137 = ((uint32_t)x135 & 0x7fffff);
- uint32_t x138 = (x136 + x89);
- uint32_t x139 = (x138 >> 0x16);
- uint32_t x140 = (x138 & 0x3fffff);
- return (Return x134, Return x131, Return x128, Return x125, Return x122, Return x119, Return x116, Return x113, Return x110, Return x107, Return x104, Return x101, Return x98, Return x95, (x139 + x92), Return x140, Return x137))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e382m105_17limbs/femulDisplay.v b/src/Specific/solinas32_2e382m105_17limbs/femulDisplay.v
deleted file mode 100644
index faf75ff09..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e382m105_17limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e382m105_17limbs/fesquare.c b/src/Specific/solinas32_2e382m105_17limbs/fesquare.c
deleted file mode 100644
index bb27bc57f..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/fesquare.c
+++ /dev/null
@@ -1,110 +0,0 @@
-static void fesquare(uint32_t out[17], const uint32_t in1[17]) {
- { const uint32_t x31 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x33 = (((uint64_t)x2 * x31) + ((0x2 * ((uint64_t)x4 * x32)) + (((uint64_t)x6 * x30) + ((0x2 * ((uint64_t)x8 * x28)) + (((uint64_t)x10 * x26) + ((0x2 * ((uint64_t)x12 * x24)) + (((uint64_t)x14 * x22) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + (((uint64_t)x22 * x14) + ((0x2 * ((uint64_t)x24 * x12)) + (((uint64_t)x26 * x10) + ((0x2 * ((uint64_t)x28 * x8)) + (((uint64_t)x30 * x6) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x31 * x2)))))))))))))))));
- { uint64_t x34 = ((((uint64_t)x2 * x32) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x32 * x2)))))))))))))))) + (0x69 * ((uint64_t)x31 * x31)));
- { uint64_t x35 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + (((uint64_t)x6 * x26) + ((0x2 * ((uint64_t)x8 * x24)) + (((uint64_t)x10 * x22) + ((0x2 * ((uint64_t)x12 * x20)) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + ((0x2 * ((uint64_t)x20 * x12)) + (((uint64_t)x22 * x10) + ((0x2 * ((uint64_t)x24 * x8)) + (((uint64_t)x26 * x6) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x69 * ((0x2 * ((uint64_t)x32 * x31)) + (0x2 * ((uint64_t)x31 * x32)))));
- { uint64_t x36 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x69 * (((uint64_t)x30 * x31) + ((0x2 * ((uint64_t)x32 * x32)) + ((uint64_t)x31 * x30)))));
- { uint64_t x37 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + (((uint64_t)x6 * x22) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + (((uint64_t)x22 * x6) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x69 * ((0x2 * ((uint64_t)x28 * x31)) + ((0x2 * ((uint64_t)x30 * x32)) + ((0x2 * ((uint64_t)x32 * x30)) + (0x2 * ((uint64_t)x31 * x28)))))));
- { uint64_t x38 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x69 * (((uint64_t)x26 * x31) + ((0x2 * ((uint64_t)x28 * x32)) + (((uint64_t)x30 * x30) + ((0x2 * ((uint64_t)x32 * x28)) + ((uint64_t)x31 * x26)))))));
- { uint64_t x39 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x69 * ((0x2 * ((uint64_t)x24 * x31)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + (0x2 * ((uint64_t)x31 * x24)))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x69 * (((uint64_t)x22 * x31) + ((0x2 * ((uint64_t)x24 * x32)) + (((uint64_t)x26 * x30) + ((0x2 * ((uint64_t)x28 * x28)) + (((uint64_t)x30 * x26) + ((0x2 * ((uint64_t)x32 * x24)) + ((uint64_t)x31 * x22)))))))));
- { uint64_t x41 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x69 * ((0x2 * ((uint64_t)x20 * x31)) + ((0x2 * ((uint64_t)x22 * x32)) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + ((0x2 * ((uint64_t)x32 * x22)) + (0x2 * ((uint64_t)x31 * x20)))))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x69 * (((uint64_t)x18 * x31) + ((0x2 * ((uint64_t)x20 * x32)) + (((uint64_t)x22 * x30) + ((0x2 * ((uint64_t)x24 * x28)) + (((uint64_t)x26 * x26) + ((0x2 * ((uint64_t)x28 * x24)) + (((uint64_t)x30 * x22) + ((0x2 * ((uint64_t)x32 * x20)) + ((uint64_t)x31 * x18)))))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x69 * ((0x2 * ((uint64_t)x16 * x31)) + ((0x2 * ((uint64_t)x18 * x32)) + ((0x2 * ((uint64_t)x20 * x30)) + ((0x2 * ((uint64_t)x22 * x28)) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + ((0x2 * ((uint64_t)x28 * x22)) + ((0x2 * ((uint64_t)x30 * x20)) + ((0x2 * ((uint64_t)x32 * x18)) + (0x2 * ((uint64_t)x31 * x16)))))))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x69 * (((uint64_t)x14 * x31) + ((0x2 * ((uint64_t)x16 * x32)) + (((uint64_t)x18 * x30) + ((0x2 * ((uint64_t)x20 * x28)) + (((uint64_t)x22 * x26) + ((0x2 * ((uint64_t)x24 * x24)) + (((uint64_t)x26 * x22) + ((0x2 * ((uint64_t)x28 * x20)) + (((uint64_t)x30 * x18) + ((0x2 * ((uint64_t)x32 * x16)) + ((uint64_t)x31 * x14)))))))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x69 * ((0x2 * ((uint64_t)x12 * x31)) + ((0x2 * ((uint64_t)x14 * x32)) + ((0x2 * ((uint64_t)x16 * x30)) + ((0x2 * ((uint64_t)x18 * x28)) + ((0x2 * ((uint64_t)x20 * x26)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + ((0x2 * ((uint64_t)x26 * x20)) + ((0x2 * ((uint64_t)x28 * x18)) + ((0x2 * ((uint64_t)x30 * x16)) + ((0x2 * ((uint64_t)x32 * x14)) + (0x2 * ((uint64_t)x31 * x12)))))))))))))));
- { uint64_t x46 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x69 * (((uint64_t)x10 * x31) + ((0x2 * ((uint64_t)x12 * x32)) + (((uint64_t)x14 * x30) + ((0x2 * ((uint64_t)x16 * x28)) + (((uint64_t)x18 * x26) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + (((uint64_t)x26 * x18) + ((0x2 * ((uint64_t)x28 * x16)) + (((uint64_t)x30 * x14) + ((0x2 * ((uint64_t)x32 * x12)) + ((uint64_t)x31 * x10)))))))))))))));
- { uint64_t x47 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x69 * ((0x2 * ((uint64_t)x8 * x31)) + ((0x2 * ((uint64_t)x10 * x32)) + ((0x2 * ((uint64_t)x12 * x30)) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + ((0x2 * ((uint64_t)x18 * x24)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((0x2 * ((uint64_t)x24 * x18)) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + ((0x2 * ((uint64_t)x30 * x12)) + ((0x2 * ((uint64_t)x32 * x10)) + (0x2 * ((uint64_t)x31 * x8)))))))))))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x69 * (((uint64_t)x6 * x31) + ((0x2 * ((uint64_t)x8 * x32)) + (((uint64_t)x10 * x30) + ((0x2 * ((uint64_t)x12 * x28)) + (((uint64_t)x14 * x26) + ((0x2 * ((uint64_t)x16 * x24)) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + ((0x2 * ((uint64_t)x24 * x16)) + (((uint64_t)x26 * x14) + ((0x2 * ((uint64_t)x28 * x12)) + (((uint64_t)x30 * x10) + ((0x2 * ((uint64_t)x32 * x8)) + ((uint64_t)x31 * x6)))))))))))))))));
- { uint64_t x49 = (((uint64_t)x2 * x2) + (0x69 * ((0x2 * ((uint64_t)x4 * x31)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + (0x2 * ((uint64_t)x31 * x4)))))))))))))))))));
- { uint64_t x50 = (x49 >> 0x17);
- { uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- { uint64_t x52 = (x50 + x48);
- { uint64_t x53 = (x52 >> 0x16);
- { uint32_t x54 = ((uint32_t)x52 & 0x3fffff);
- { uint64_t x55 = (x53 + x47);
- { uint64_t x56 = (x55 >> 0x17);
- { uint32_t x57 = ((uint32_t)x55 & 0x7fffff);
- { uint64_t x58 = (x56 + x46);
- { uint64_t x59 = (x58 >> 0x16);
- { uint32_t x60 = ((uint32_t)x58 & 0x3fffff);
- { uint64_t x61 = (x59 + x45);
- { uint64_t x62 = (x61 >> 0x17);
- { uint32_t x63 = ((uint32_t)x61 & 0x7fffff);
- { uint64_t x64 = (x62 + x44);
- { uint64_t x65 = (x64 >> 0x16);
- { uint32_t x66 = ((uint32_t)x64 & 0x3fffff);
- { uint64_t x67 = (x65 + x43);
- { uint64_t x68 = (x67 >> 0x17);
- { uint32_t x69 = ((uint32_t)x67 & 0x7fffff);
- { uint64_t x70 = (x68 + x42);
- { uint64_t x71 = (x70 >> 0x16);
- { uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- { uint64_t x73 = (x71 + x41);
- { uint64_t x74 = (x73 >> 0x17);
- { uint32_t x75 = ((uint32_t)x73 & 0x7fffff);
- { uint64_t x76 = (x74 + x40);
- { uint64_t x77 = (x76 >> 0x16);
- { uint32_t x78 = ((uint32_t)x76 & 0x3fffff);
- { uint64_t x79 = (x77 + x39);
- { uint64_t x80 = (x79 >> 0x17);
- { uint32_t x81 = ((uint32_t)x79 & 0x7fffff);
- { uint64_t x82 = (x80 + x38);
- { uint64_t x83 = (x82 >> 0x16);
- { uint32_t x84 = ((uint32_t)x82 & 0x3fffff);
- { uint64_t x85 = (x83 + x37);
- { uint64_t x86 = (x85 >> 0x17);
- { uint32_t x87 = ((uint32_t)x85 & 0x7fffff);
- { uint64_t x88 = (x86 + x36);
- { uint64_t x89 = (x88 >> 0x16);
- { uint32_t x90 = ((uint32_t)x88 & 0x3fffff);
- { uint64_t x91 = (x89 + x35);
- { uint64_t x92 = (x91 >> 0x17);
- { uint32_t x93 = ((uint32_t)x91 & 0x7fffff);
- { uint64_t x94 = (x92 + x34);
- { uint64_t x95 = (x94 >> 0x16);
- { uint32_t x96 = ((uint32_t)x94 & 0x3fffff);
- { uint64_t x97 = (x95 + x33);
- { uint32_t x98 = (uint32_t) (x97 >> 0x16);
- { uint32_t x99 = ((uint32_t)x97 & 0x3fffff);
- { uint64_t x100 = (x51 + ((uint64_t)0x69 * x98));
- { uint32_t x101 = (uint32_t) (x100 >> 0x17);
- { uint32_t x102 = ((uint32_t)x100 & 0x7fffff);
- { uint32_t x103 = (x101 + x54);
- { uint32_t x104 = (x103 >> 0x16);
- { uint32_t x105 = (x103 & 0x3fffff);
- out[0] = x102;
- out[1] = x105;
- out[2] = (x104 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- out[10] = x81;
- out[11] = x84;
- out[12] = x87;
- out[13] = x90;
- out[14] = x93;
- out[15] = x96;
- out[16] = x99;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e382m105_17limbs/fesquare.v b/src/Specific/solinas32_2e382m105_17limbs/fesquare.v
deleted file mode 100644
index c1fd0e8b8..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e382m105_17limbs.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_2e382m105_17limbs/fesquareDisplay.log b/src/Specific/solinas32_2e382m105_17limbs/fesquareDisplay.log
deleted file mode 100644
index a86246132..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,80 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x31, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x33 = (((uint64_t)x2 * x31) + ((0x2 * ((uint64_t)x4 * x32)) + (((uint64_t)x6 * x30) + ((0x2 * ((uint64_t)x8 * x28)) + (((uint64_t)x10 * x26) + ((0x2 * ((uint64_t)x12 * x24)) + (((uint64_t)x14 * x22) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + (((uint64_t)x22 * x14) + ((0x2 * ((uint64_t)x24 * x12)) + (((uint64_t)x26 * x10) + ((0x2 * ((uint64_t)x28 * x8)) + (((uint64_t)x30 * x6) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x31 * x2)))))))))))))))));
- uint64_t x34 = ((((uint64_t)x2 * x32) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x32 * x2)))))))))))))))) + (0x69 * ((uint64_t)x31 * x31)));
- uint64_t x35 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + (((uint64_t)x6 * x26) + ((0x2 * ((uint64_t)x8 * x24)) + (((uint64_t)x10 * x22) + ((0x2 * ((uint64_t)x12 * x20)) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + ((0x2 * ((uint64_t)x20 * x12)) + (((uint64_t)x22 * x10) + ((0x2 * ((uint64_t)x24 * x8)) + (((uint64_t)x26 * x6) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x69 * ((0x2 * ((uint64_t)x32 * x31)) + (0x2 * ((uint64_t)x31 * x32)))));
- uint64_t x36 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x69 * (((uint64_t)x30 * x31) + ((0x2 * ((uint64_t)x32 * x32)) + ((uint64_t)x31 * x30)))));
- uint64_t x37 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + (((uint64_t)x6 * x22) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + (((uint64_t)x22 * x6) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x69 * ((0x2 * ((uint64_t)x28 * x31)) + ((0x2 * ((uint64_t)x30 * x32)) + ((0x2 * ((uint64_t)x32 * x30)) + (0x2 * ((uint64_t)x31 * x28)))))));
- uint64_t x38 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x69 * (((uint64_t)x26 * x31) + ((0x2 * ((uint64_t)x28 * x32)) + (((uint64_t)x30 * x30) + ((0x2 * ((uint64_t)x32 * x28)) + ((uint64_t)x31 * x26)))))));
- uint64_t x39 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x69 * ((0x2 * ((uint64_t)x24 * x31)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + (0x2 * ((uint64_t)x31 * x24)))))))));
- uint64_t x40 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x69 * (((uint64_t)x22 * x31) + ((0x2 * ((uint64_t)x24 * x32)) + (((uint64_t)x26 * x30) + ((0x2 * ((uint64_t)x28 * x28)) + (((uint64_t)x30 * x26) + ((0x2 * ((uint64_t)x32 * x24)) + ((uint64_t)x31 * x22)))))))));
- uint64_t x41 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x69 * ((0x2 * ((uint64_t)x20 * x31)) + ((0x2 * ((uint64_t)x22 * x32)) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + ((0x2 * ((uint64_t)x32 * x22)) + (0x2 * ((uint64_t)x31 * x20)))))))))));
- uint64_t x42 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x69 * (((uint64_t)x18 * x31) + ((0x2 * ((uint64_t)x20 * x32)) + (((uint64_t)x22 * x30) + ((0x2 * ((uint64_t)x24 * x28)) + (((uint64_t)x26 * x26) + ((0x2 * ((uint64_t)x28 * x24)) + (((uint64_t)x30 * x22) + ((0x2 * ((uint64_t)x32 * x20)) + ((uint64_t)x31 * x18)))))))))));
- uint64_t x43 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x69 * ((0x2 * ((uint64_t)x16 * x31)) + ((0x2 * ((uint64_t)x18 * x32)) + ((0x2 * ((uint64_t)x20 * x30)) + ((0x2 * ((uint64_t)x22 * x28)) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + ((0x2 * ((uint64_t)x28 * x22)) + ((0x2 * ((uint64_t)x30 * x20)) + ((0x2 * ((uint64_t)x32 * x18)) + (0x2 * ((uint64_t)x31 * x16)))))))))))));
- uint64_t x44 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x69 * (((uint64_t)x14 * x31) + ((0x2 * ((uint64_t)x16 * x32)) + (((uint64_t)x18 * x30) + ((0x2 * ((uint64_t)x20 * x28)) + (((uint64_t)x22 * x26) + ((0x2 * ((uint64_t)x24 * x24)) + (((uint64_t)x26 * x22) + ((0x2 * ((uint64_t)x28 * x20)) + (((uint64_t)x30 * x18) + ((0x2 * ((uint64_t)x32 * x16)) + ((uint64_t)x31 * x14)))))))))))));
- uint64_t x45 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x69 * ((0x2 * ((uint64_t)x12 * x31)) + ((0x2 * ((uint64_t)x14 * x32)) + ((0x2 * ((uint64_t)x16 * x30)) + ((0x2 * ((uint64_t)x18 * x28)) + ((0x2 * ((uint64_t)x20 * x26)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + ((0x2 * ((uint64_t)x26 * x20)) + ((0x2 * ((uint64_t)x28 * x18)) + ((0x2 * ((uint64_t)x30 * x16)) + ((0x2 * ((uint64_t)x32 * x14)) + (0x2 * ((uint64_t)x31 * x12)))))))))))))));
- uint64_t x46 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x69 * (((uint64_t)x10 * x31) + ((0x2 * ((uint64_t)x12 * x32)) + (((uint64_t)x14 * x30) + ((0x2 * ((uint64_t)x16 * x28)) + (((uint64_t)x18 * x26) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + (((uint64_t)x26 * x18) + ((0x2 * ((uint64_t)x28 * x16)) + (((uint64_t)x30 * x14) + ((0x2 * ((uint64_t)x32 * x12)) + ((uint64_t)x31 * x10)))))))))))))));
- uint64_t x47 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x69 * ((0x2 * ((uint64_t)x8 * x31)) + ((0x2 * ((uint64_t)x10 * x32)) + ((0x2 * ((uint64_t)x12 * x30)) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + ((0x2 * ((uint64_t)x18 * x24)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((0x2 * ((uint64_t)x24 * x18)) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + ((0x2 * ((uint64_t)x30 * x12)) + ((0x2 * ((uint64_t)x32 * x10)) + (0x2 * ((uint64_t)x31 * x8)))))))))))))))));
- uint64_t x48 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x69 * (((uint64_t)x6 * x31) + ((0x2 * ((uint64_t)x8 * x32)) + (((uint64_t)x10 * x30) + ((0x2 * ((uint64_t)x12 * x28)) + (((uint64_t)x14 * x26) + ((0x2 * ((uint64_t)x16 * x24)) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + ((0x2 * ((uint64_t)x24 * x16)) + (((uint64_t)x26 * x14) + ((0x2 * ((uint64_t)x28 * x12)) + (((uint64_t)x30 * x10) + ((0x2 * ((uint64_t)x32 * x8)) + ((uint64_t)x31 * x6)))))))))))))))));
- uint64_t x49 = (((uint64_t)x2 * x2) + (0x69 * ((0x2 * ((uint64_t)x4 * x31)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + (0x2 * ((uint64_t)x31 * x4)))))))))))))))))));
- uint64_t x50 = (x49 >> 0x17);
- uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- uint64_t x52 = (x50 + x48);
- uint64_t x53 = (x52 >> 0x16);
- uint32_t x54 = ((uint32_t)x52 & 0x3fffff);
- uint64_t x55 = (x53 + x47);
- uint64_t x56 = (x55 >> 0x17);
- uint32_t x57 = ((uint32_t)x55 & 0x7fffff);
- uint64_t x58 = (x56 + x46);
- uint64_t x59 = (x58 >> 0x16);
- uint32_t x60 = ((uint32_t)x58 & 0x3fffff);
- uint64_t x61 = (x59 + x45);
- uint64_t x62 = (x61 >> 0x17);
- uint32_t x63 = ((uint32_t)x61 & 0x7fffff);
- uint64_t x64 = (x62 + x44);
- uint64_t x65 = (x64 >> 0x16);
- uint32_t x66 = ((uint32_t)x64 & 0x3fffff);
- uint64_t x67 = (x65 + x43);
- uint64_t x68 = (x67 >> 0x17);
- uint32_t x69 = ((uint32_t)x67 & 0x7fffff);
- uint64_t x70 = (x68 + x42);
- uint64_t x71 = (x70 >> 0x16);
- uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- uint64_t x73 = (x71 + x41);
- uint64_t x74 = (x73 >> 0x17);
- uint32_t x75 = ((uint32_t)x73 & 0x7fffff);
- uint64_t x76 = (x74 + x40);
- uint64_t x77 = (x76 >> 0x16);
- uint32_t x78 = ((uint32_t)x76 & 0x3fffff);
- uint64_t x79 = (x77 + x39);
- uint64_t x80 = (x79 >> 0x17);
- uint32_t x81 = ((uint32_t)x79 & 0x7fffff);
- uint64_t x82 = (x80 + x38);
- uint64_t x83 = (x82 >> 0x16);
- uint32_t x84 = ((uint32_t)x82 & 0x3fffff);
- uint64_t x85 = (x83 + x37);
- uint64_t x86 = (x85 >> 0x17);
- uint32_t x87 = ((uint32_t)x85 & 0x7fffff);
- uint64_t x88 = (x86 + x36);
- uint64_t x89 = (x88 >> 0x16);
- uint32_t x90 = ((uint32_t)x88 & 0x3fffff);
- uint64_t x91 = (x89 + x35);
- uint64_t x92 = (x91 >> 0x17);
- uint32_t x93 = ((uint32_t)x91 & 0x7fffff);
- uint64_t x94 = (x92 + x34);
- uint64_t x95 = (x94 >> 0x16);
- uint32_t x96 = ((uint32_t)x94 & 0x3fffff);
- uint64_t x97 = (x95 + x33);
- uint32_t x98 = (uint32_t) (x97 >> 0x16);
- uint32_t x99 = ((uint32_t)x97 & 0x3fffff);
- uint64_t x100 = (x51 + ((uint64_t)0x69 * x98));
- uint32_t x101 = (uint32_t) (x100 >> 0x17);
- uint32_t x102 = ((uint32_t)x100 & 0x7fffff);
- uint32_t x103 = (x101 + x54);
- uint32_t x104 = (x103 >> 0x16);
- uint32_t x105 = (x103 & 0x3fffff);
- return (Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x104 + x57), Return x105, Return x102))
-x
- : word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e382m105_17limbs/fesquareDisplay.v b/src/Specific/solinas32_2e382m105_17limbs/fesquareDisplay.v
deleted file mode 100644
index f0f9fdc8d..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e382m105_17limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e382m105_17limbs/fesub.c b/src/Specific/solinas32_2e382m105_17limbs/fesub.c
deleted file mode 100644
index a4b250af4..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/fesub.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void fesub(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- out[0] = ((0xffff2e + x5) - x37);
- out[1] = ((0x7ffffe + x7) - x39);
- out[2] = ((0xfffffe + x9) - x41);
- out[3] = ((0x7ffffe + x11) - x43);
- out[4] = ((0xfffffe + x13) - x45);
- out[5] = ((0x7ffffe + x15) - x47);
- out[6] = ((0xfffffe + x17) - x49);
- out[7] = ((0x7ffffe + x19) - x51);
- out[8] = ((0xfffffe + x21) - x53);
- out[9] = ((0x7ffffe + x23) - x55);
- out[10] = ((0xfffffe + x25) - x57);
- out[11] = ((0x7ffffe + x27) - x59);
- out[12] = ((0xfffffe + x29) - x61);
- out[13] = ((0x7ffffe + x31) - x63);
- out[14] = ((0xfffffe + x33) - x65);
- out[15] = ((0x7ffffe + x35) - x67);
- out[16] = ((0x7ffffe + x34) - x66);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e382m105_17limbs/fesub.v b/src/Specific/solinas32_2e382m105_17limbs/fesub.v
deleted file mode 100644
index 5d52cc6dd..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e382m105_17limbs.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_2e382m105_17limbs/fesubDisplay.log b/src/Specific/solinas32_2e382m105_17limbs/fesubDisplay.log
deleted file mode 100644
index a46f8a27d..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- (((0x7ffffe + x34) - x66), ((0x7ffffe + x35) - x67), ((0xfffffe + x33) - x65), ((0x7ffffe + x31) - x63), ((0xfffffe + x29) - x61), ((0x7ffffe + x27) - x59), ((0xfffffe + x25) - x57), ((0x7ffffe + x23) - x55), ((0xfffffe + x21) - x53), ((0x7ffffe + x19) - x51), ((0xfffffe + x17) - x49), ((0x7ffffe + x15) - x47), ((0xfffffe + x13) - x45), ((0x7ffffe + x11) - x43), ((0xfffffe + x9) - x41), ((0x7ffffe + x7) - x39), ((0xffff2e + x5) - x37)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e382m105_17limbs/fesubDisplay.v b/src/Specific/solinas32_2e382m105_17limbs/fesubDisplay.v
deleted file mode 100644
index 111cd0ea5..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e382m105_17limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e382m105_17limbs/freeze.c b/src/Specific/solinas32_2e382m105_17limbs/freeze.c
deleted file mode 100644
index af26c1109..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/freeze.c
+++ /dev/null
@@ -1,89 +0,0 @@
-static void freeze(uint32_t out[17], const uint32_t in1[17]) {
- { const uint32_t x31 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fff97);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x4, 0x3fffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x6, 0x7fffff);
- { uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x8, 0x3fffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x10, 0x7fffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x12, 0x3fffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x14, 0x7fffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x16, 0x3fffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x18, 0x7fffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x20, 0x3fffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x22, 0x7fffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x24, 0x3fffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x26, 0x7fffff);
- { uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x28, 0x3fffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x30, 0x7fffff);
- { uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x32, 0x3fffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x31, 0x3fffff);
- { uint32_t x84 = cmovznz32(x83, 0x0, 0xffffffff);
- { uint32_t x85 = (x84 & 0x7fff97);
- { uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x34, Return x85);
- { uint32_t x89 = (x84 & 0x3fffff);
- { uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x37, Return x89);
- { uint32_t x93 = (x84 & 0x7fffff);
- { uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x40, Return x93);
- { uint32_t x97 = (x84 & 0x3fffff);
- { uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x43, Return x97);
- { uint32_t x101 = (x84 & 0x7fffff);
- { uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x46, Return x101);
- { uint32_t x105 = (x84 & 0x3fffff);
- { uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x49, Return x105);
- { uint32_t x109 = (x84 & 0x7fffff);
- { uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x52, Return x109);
- { uint32_t x113 = (x84 & 0x3fffff);
- { uint32_t x115, uint8_t x116 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x55, Return x113);
- { uint32_t x117 = (x84 & 0x7fffff);
- { uint32_t x119, uint8_t x120 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x116, Return x58, Return x117);
- { uint32_t x121 = (x84 & 0x3fffff);
- { uint32_t x123, uint8_t x124 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x120, Return x61, Return x121);
- { uint32_t x125 = (x84 & 0x7fffff);
- { uint32_t x127, uint8_t x128 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x124, Return x64, Return x125);
- { uint32_t x129 = (x84 & 0x3fffff);
- { uint32_t x131, uint8_t x132 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x128, Return x67, Return x129);
- { uint32_t x133 = (x84 & 0x7fffff);
- { uint32_t x135, uint8_t x136 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x132, Return x70, Return x133);
- { uint32_t x137 = (x84 & 0x3fffff);
- { uint32_t x139, uint8_t x140 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x136, Return x73, Return x137);
- { uint32_t x141 = (x84 & 0x7fffff);
- { uint32_t x143, uint8_t x144 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x140, Return x76, Return x141);
- { uint32_t x145 = (x84 & 0x3fffff);
- { uint32_t x147, uint8_t x148 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x144, Return x79, Return x145);
- { uint32_t x149 = (x84 & 0x3fffff);
- { uint32_t x151, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x148, Return x82, Return x149);
- out[0] = x87;
- out[1] = x91;
- out[2] = x95;
- out[3] = x99;
- out[4] = x103;
- out[5] = x107;
- out[6] = x111;
- out[7] = x115;
- out[8] = x119;
- out[9] = x123;
- out[10] = x127;
- out[11] = x131;
- out[12] = x135;
- out[13] = x139;
- out[14] = x143;
- out[15] = x147;
- out[16] = x151;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e382m105_17limbs/freeze.v b/src/Specific/solinas32_2e382m105_17limbs/freeze.v
deleted file mode 100644
index 8be77186b..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e382m105_17limbs.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_2e382m105_17limbs/freezeDisplay.log b/src/Specific/solinas32_2e382m105_17limbs/freezeDisplay.log
deleted file mode 100644
index d1aee48e4..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/freezeDisplay.log
+++ /dev/null
@@ -1,59 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x31, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fff97);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x4, 0x3fffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x6, 0x7fffff);
- uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x8, 0x3fffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x10, 0x7fffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x12, 0x3fffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x14, 0x7fffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x16, 0x3fffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x18, 0x7fffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x20, 0x3fffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x22, 0x7fffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x24, 0x3fffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x26, 0x7fffff);
- uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x28, 0x3fffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x30, 0x7fffff);
- uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x32, 0x3fffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x31, 0x3fffff);
- uint32_t x84 = cmovznz32(x83, 0x0, 0xffffffff);
- uint32_t x85 = (x84 & 0x7fff97);
- uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x34, Return x85);
- uint32_t x89 = (x84 & 0x3fffff);
- uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x37, Return x89);
- uint32_t x93 = (x84 & 0x7fffff);
- uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x40, Return x93);
- uint32_t x97 = (x84 & 0x3fffff);
- uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x43, Return x97);
- uint32_t x101 = (x84 & 0x7fffff);
- uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x46, Return x101);
- uint32_t x105 = (x84 & 0x3fffff);
- uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x49, Return x105);
- uint32_t x109 = (x84 & 0x7fffff);
- uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x52, Return x109);
- uint32_t x113 = (x84 & 0x3fffff);
- uint32_t x115, uint8_t x116 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x55, Return x113);
- uint32_t x117 = (x84 & 0x7fffff);
- uint32_t x119, uint8_t x120 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x116, Return x58, Return x117);
- uint32_t x121 = (x84 & 0x3fffff);
- uint32_t x123, uint8_t x124 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x120, Return x61, Return x121);
- uint32_t x125 = (x84 & 0x7fffff);
- uint32_t x127, uint8_t x128 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x124, Return x64, Return x125);
- uint32_t x129 = (x84 & 0x3fffff);
- uint32_t x131, uint8_t x132 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x128, Return x67, Return x129);
- uint32_t x133 = (x84 & 0x7fffff);
- uint32_t x135, uint8_t x136 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x132, Return x70, Return x133);
- uint32_t x137 = (x84 & 0x3fffff);
- uint32_t x139, uint8_t x140 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x136, Return x73, Return x137);
- uint32_t x141 = (x84 & 0x7fffff);
- uint32_t x143, uint8_t x144 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x140, Return x76, Return x141);
- uint32_t x145 = (x84 & 0x3fffff);
- uint32_t x147, uint8_t x148 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x144, Return x79, Return x145);
- uint32_t x149 = (x84 & 0x3fffff);
- uint32_t x151, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x148, Return x82, Return x149);
- (Return x151, Return x147, Return x143, Return x139, Return x135, Return x131, Return x127, Return x123, Return x119, Return x115, Return x111, Return x107, Return x103, Return x99, Return x95, Return x91, Return x87))
-x
- : word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e382m105_17limbs/freezeDisplay.v b/src/Specific/solinas32_2e382m105_17limbs/freezeDisplay.v
deleted file mode 100644
index 9fa1444b0..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e382m105_17limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e382m105_17limbs/py_interpreter.sh b/src/Specific/solinas32_2e382m105_17limbs/py_interpreter.sh
deleted file mode 100755
index a6c8995c0..000000000
--- a/src/Specific/solinas32_2e382m105_17limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**382 - 105' -Dmodulus_bytes='22 + 8/17' -Da24='121665'
diff --git a/src/Specific/solinas32_2e383m187_16limbs/CurveParameters.v b/src/Specific/solinas32_2e383m187_16limbs/CurveParameters.v
deleted file mode 100644
index 07e2faebd..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^383 - 187
-Base: 23 + 15/16
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 16%nat;
- base := 23 + 15/16;
- bitwidth := 32;
- s := 2^383;
- c := [(1, 187)];
- carry_chains := Some [seq 0 (pred 16); [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_2e383m187_16limbs/Synthesis.v b/src/Specific/solinas32_2e383m187_16limbs/Synthesis.v
deleted file mode 100644
index 3322f466b..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e383m187_16limbs.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_2e383m187_16limbs/compiler.sh b/src/Specific/solinas32_2e383m187_16limbs/compiler.sh
deleted file mode 100755
index 264828517..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,23}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<383) - 187' "$@"
diff --git a/src/Specific/solinas32_2e383m187_16limbs/compilerxx.sh b/src/Specific/solinas32_2e383m187_16limbs/compilerxx.sh
deleted file mode 100755
index ff2b846c9..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,23}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<383) - 187' "$@"
diff --git a/src/Specific/solinas32_2e383m187_16limbs/feadd.c b/src/Specific/solinas32_2e383m187_16limbs/feadd.c
deleted file mode 100644
index 18b150e21..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/feadd.c
+++ /dev/null
@@ -1,51 +0,0 @@
-static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- out[0] = (x5 + x35);
- out[1] = (x7 + x37);
- out[2] = (x9 + x39);
- out[3] = (x11 + x41);
- out[4] = (x13 + x43);
- out[5] = (x15 + x45);
- out[6] = (x17 + x47);
- out[7] = (x19 + x49);
- out[8] = (x21 + x51);
- out[9] = (x23 + x53);
- out[10] = (x25 + x55);
- out[11] = (x27 + x57);
- out[12] = (x29 + x59);
- out[13] = (x31 + x61);
- out[14] = (x33 + x63);
- out[15] = (x32 + x62);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m187_16limbs/feadd.v b/src/Specific/solinas32_2e383m187_16limbs/feadd.v
deleted file mode 100644
index 4bd7089e0..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m187_16limbs.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_2e383m187_16limbs/feaddDisplay.log b/src/Specific/solinas32_2e383m187_16limbs/feaddDisplay.log
deleted file mode 100644
index 130c31964..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- ((x32 + x62), (x33 + x63), (x31 + x61), (x29 + x59), (x27 + x57), (x25 + x55), (x23 + x53), (x21 + x51), (x19 + x49), (x17 + x47), (x15 + x45), (x13 + x43), (x11 + x41), (x9 + x39), (x7 + x37), (x5 + x35)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m187_16limbs/feaddDisplay.v b/src/Specific/solinas32_2e383m187_16limbs/feaddDisplay.v
deleted file mode 100644
index 10142b267..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m187_16limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e383m187_16limbs/fecarry.v b/src/Specific/solinas32_2e383m187_16limbs/fecarry.v
deleted file mode 100644
index b9424408a..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m187_16limbs.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_2e383m187_16limbs/fecarryDisplay.v b/src/Specific/solinas32_2e383m187_16limbs/fecarryDisplay.v
deleted file mode 100644
index da1f82c86..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m187_16limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e383m187_16limbs/femul.c b/src/Specific/solinas32_2e383m187_16limbs/femul.c
deleted file mode 100644
index 802237a93..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/femul.c
+++ /dev/null
@@ -1,120 +0,0 @@
-static void femul(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- { uint64_t x64 = (((uint64_t)x5 * x62) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (((uint64_t)x29 * x41) + (((uint64_t)x31 * x39) + (((uint64_t)x33 * x37) + ((uint64_t)x32 * x35))))))))))))))));
- { uint64_t x65 = ((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + (((uint64_t)x9 * x59) + (((uint64_t)x11 * x57) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + (((uint64_t)x27 * x41) + (((uint64_t)x29 * x39) + (((uint64_t)x31 * x37) + ((uint64_t)x33 * x35))))))))))))))) + (0xbb * (0x2 * ((uint64_t)x32 * x62))));
- { uint64_t x66 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + (((uint64_t)x29 * x37) + ((uint64_t)x31 * x35)))))))))))))) + (0xbb * ((0x2 * ((uint64_t)x33 * x62)) + (0x2 * ((uint64_t)x32 * x63)))));
- { uint64_t x67 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + (((uint64_t)x27 * x37) + ((uint64_t)x29 * x35))))))))))))) + (0xbb * ((0x2 * ((uint64_t)x31 * x62)) + ((0x2 * ((uint64_t)x33 * x63)) + (0x2 * ((uint64_t)x32 * x61))))));
- { uint64_t x68 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + (((uint64_t)x25 * x37) + ((uint64_t)x27 * x35)))))))))))) + (0xbb * ((0x2 * ((uint64_t)x29 * x62)) + ((0x2 * ((uint64_t)x31 * x63)) + ((0x2 * ((uint64_t)x33 * x61)) + (0x2 * ((uint64_t)x32 * x59)))))));
- { uint64_t x69 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + ((uint64_t)x25 * x35))))))))))) + (0xbb * ((0x2 * ((uint64_t)x27 * x62)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + (0x2 * ((uint64_t)x32 * x57))))))));
- { uint64_t x70 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + ((uint64_t)x23 * x35)))))))))) + (0xbb * ((0x2 * ((uint64_t)x25 * x62)) + ((0x2 * ((uint64_t)x27 * x63)) + ((0x2 * ((uint64_t)x29 * x61)) + ((0x2 * ((uint64_t)x31 * x59)) + ((0x2 * ((uint64_t)x33 * x57)) + (0x2 * ((uint64_t)x32 * x55)))))))));
- { uint64_t x71 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + ((uint64_t)x21 * x35))))))))) + (0xbb * ((0x2 * ((uint64_t)x23 * x62)) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + ((0x2 * ((uint64_t)x33 * x55)) + (0x2 * ((uint64_t)x32 * x53))))))))));
- { uint64_t x72 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + ((uint64_t)x19 * x35)))))))) + (0xbb * ((0x2 * ((uint64_t)x21 * x62)) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + ((0x2 * ((uint64_t)x29 * x57)) + ((0x2 * ((uint64_t)x31 * x55)) + ((0x2 * ((uint64_t)x33 * x53)) + (0x2 * ((uint64_t)x32 * x51)))))))))));
- { uint64_t x73 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((uint64_t)x17 * x35))))))) + (0xbb * ((0x2 * ((uint64_t)x19 * x62)) + ((0x2 * ((uint64_t)x21 * x63)) + ((0x2 * ((uint64_t)x23 * x61)) + ((0x2 * ((uint64_t)x25 * x59)) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + ((0x2 * ((uint64_t)x31 * x53)) + ((0x2 * ((uint64_t)x33 * x51)) + (0x2 * ((uint64_t)x32 * x49))))))))))));
- { uint64_t x74 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + ((uint64_t)x15 * x35)))))) + (0xbb * ((0x2 * ((uint64_t)x17 * x62)) + ((0x2 * ((uint64_t)x19 * x63)) + ((0x2 * ((uint64_t)x21 * x61)) + ((0x2 * ((uint64_t)x23 * x59)) + ((0x2 * ((uint64_t)x25 * x57)) + ((0x2 * ((uint64_t)x27 * x55)) + ((0x2 * ((uint64_t)x29 * x53)) + ((0x2 * ((uint64_t)x31 * x51)) + ((0x2 * ((uint64_t)x33 * x49)) + (0x2 * ((uint64_t)x32 * x47)))))))))))));
- { uint64_t x75 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((uint64_t)x13 * x35))))) + (0xbb * ((0x2 * ((uint64_t)x15 * x62)) + ((0x2 * ((uint64_t)x17 * x63)) + ((0x2 * ((uint64_t)x19 * x61)) + ((0x2 * ((uint64_t)x21 * x59)) + ((0x2 * ((uint64_t)x23 * x57)) + ((0x2 * ((uint64_t)x25 * x55)) + ((0x2 * ((uint64_t)x27 * x53)) + ((0x2 * ((uint64_t)x29 * x51)) + ((0x2 * ((uint64_t)x31 * x49)) + ((0x2 * ((uint64_t)x33 * x47)) + (0x2 * ((uint64_t)x32 * x45))))))))))))));
- { uint64_t x76 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((uint64_t)x11 * x35)))) + (0xbb * ((0x2 * ((uint64_t)x13 * x62)) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + ((0x2 * ((uint64_t)x21 * x57)) + ((0x2 * ((uint64_t)x23 * x55)) + ((0x2 * ((uint64_t)x25 * x53)) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + ((0x2 * ((uint64_t)x33 * x45)) + (0x2 * ((uint64_t)x32 * x43)))))))))))))));
- { uint64_t x77 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((uint64_t)x9 * x35))) + (0xbb * ((0x2 * ((uint64_t)x11 * x62)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + (0x2 * ((uint64_t)x32 * x41))))))))))))))));
- { uint64_t x78 = ((((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)) + (0xbb * ((0x2 * ((uint64_t)x9 * x62)) + ((0x2 * ((uint64_t)x11 * x63)) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + ((0x2 * ((uint64_t)x19 * x55)) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + ((0x2 * ((uint64_t)x31 * x43)) + ((0x2 * ((uint64_t)x33 * x41)) + (0x2 * ((uint64_t)x32 * x39)))))))))))))))));
- { uint64_t x79 = (((uint64_t)x5 * x35) + (0xbb * ((0x2 * ((uint64_t)x7 * x62)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + (0x2 * ((uint64_t)x32 * x37))))))))))))))))));
- { uint64_t x80 = (x79 >> 0x18);
- { uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- { uint64_t x82 = (x80 + x78);
- { uint64_t x83 = (x82 >> 0x18);
- { uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- { uint64_t x85 = (x83 + x77);
- { uint64_t x86 = (x85 >> 0x18);
- { uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- { uint64_t x88 = (x86 + x76);
- { uint64_t x89 = (x88 >> 0x18);
- { uint32_t x90 = ((uint32_t)x88 & 0xffffff);
- { uint64_t x91 = (x89 + x75);
- { uint64_t x92 = (x91 >> 0x18);
- { uint32_t x93 = ((uint32_t)x91 & 0xffffff);
- { uint64_t x94 = (x92 + x74);
- { uint64_t x95 = (x94 >> 0x18);
- { uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- { uint64_t x97 = (x95 + x73);
- { uint64_t x98 = (x97 >> 0x18);
- { uint32_t x99 = ((uint32_t)x97 & 0xffffff);
- { uint64_t x100 = (x98 + x72);
- { uint64_t x101 = (x100 >> 0x18);
- { uint32_t x102 = ((uint32_t)x100 & 0xffffff);
- { uint64_t x103 = (x101 + x71);
- { uint64_t x104 = (x103 >> 0x18);
- { uint32_t x105 = ((uint32_t)x103 & 0xffffff);
- { uint64_t x106 = (x104 + x70);
- { uint64_t x107 = (x106 >> 0x18);
- { uint32_t x108 = ((uint32_t)x106 & 0xffffff);
- { uint64_t x109 = (x107 + x69);
- { uint64_t x110 = (x109 >> 0x18);
- { uint32_t x111 = ((uint32_t)x109 & 0xffffff);
- { uint64_t x112 = (x110 + x68);
- { uint64_t x113 = (x112 >> 0x18);
- { uint32_t x114 = ((uint32_t)x112 & 0xffffff);
- { uint64_t x115 = (x113 + x67);
- { uint64_t x116 = (x115 >> 0x18);
- { uint32_t x117 = ((uint32_t)x115 & 0xffffff);
- { uint64_t x118 = (x116 + x66);
- { uint64_t x119 = (x118 >> 0x18);
- { uint32_t x120 = ((uint32_t)x118 & 0xffffff);
- { uint64_t x121 = (x119 + x65);
- { uint64_t x122 = (x121 >> 0x18);
- { uint32_t x123 = ((uint32_t)x121 & 0xffffff);
- { uint64_t x124 = (x122 + x64);
- { uint64_t x125 = (x124 >> 0x17);
- { uint32_t x126 = ((uint32_t)x124 & 0x7fffff);
- { uint64_t x127 = (x81 + (0xbb * x125));
- { uint32_t x128 = (uint32_t) (x127 >> 0x18);
- { uint32_t x129 = ((uint32_t)x127 & 0xffffff);
- { uint32_t x130 = (x128 + x84);
- { uint32_t x131 = (x130 >> 0x18);
- { uint32_t x132 = (x130 & 0xffffff);
- out[0] = x129;
- out[1] = x132;
- out[2] = (x131 + x87);
- out[3] = x90;
- out[4] = x93;
- out[5] = x96;
- out[6] = x99;
- out[7] = x102;
- out[8] = x105;
- out[9] = x108;
- out[10] = x111;
- out[11] = x114;
- out[12] = x117;
- out[13] = x120;
- out[14] = x123;
- out[15] = x126;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m187_16limbs/femul.v b/src/Specific/solinas32_2e383m187_16limbs/femul.v
deleted file mode 100644
index ea32bd8d5..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m187_16limbs.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_2e383m187_16limbs/femulDisplay.log b/src/Specific/solinas32_2e383m187_16limbs/femulDisplay.log
deleted file mode 100644
index 092690c39..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/femulDisplay.log
+++ /dev/null
@@ -1,76 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- uint64_t x64 = (((uint64_t)x5 * x62) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (((uint64_t)x29 * x41) + (((uint64_t)x31 * x39) + (((uint64_t)x33 * x37) + ((uint64_t)x32 * x35))))))))))))))));
- uint64_t x65 = ((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + (((uint64_t)x9 * x59) + (((uint64_t)x11 * x57) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + (((uint64_t)x27 * x41) + (((uint64_t)x29 * x39) + (((uint64_t)x31 * x37) + ((uint64_t)x33 * x35))))))))))))))) + (0xbb * (0x2 * ((uint64_t)x32 * x62))));
- uint64_t x66 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + (((uint64_t)x29 * x37) + ((uint64_t)x31 * x35)))))))))))))) + (0xbb * ((0x2 * ((uint64_t)x33 * x62)) + (0x2 * ((uint64_t)x32 * x63)))));
- uint64_t x67 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + (((uint64_t)x27 * x37) + ((uint64_t)x29 * x35))))))))))))) + (0xbb * ((0x2 * ((uint64_t)x31 * x62)) + ((0x2 * ((uint64_t)x33 * x63)) + (0x2 * ((uint64_t)x32 * x61))))));
- uint64_t x68 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + (((uint64_t)x25 * x37) + ((uint64_t)x27 * x35)))))))))))) + (0xbb * ((0x2 * ((uint64_t)x29 * x62)) + ((0x2 * ((uint64_t)x31 * x63)) + ((0x2 * ((uint64_t)x33 * x61)) + (0x2 * ((uint64_t)x32 * x59)))))));
- uint64_t x69 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + ((uint64_t)x25 * x35))))))))))) + (0xbb * ((0x2 * ((uint64_t)x27 * x62)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + (0x2 * ((uint64_t)x32 * x57))))))));
- uint64_t x70 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + ((uint64_t)x23 * x35)))))))))) + (0xbb * ((0x2 * ((uint64_t)x25 * x62)) + ((0x2 * ((uint64_t)x27 * x63)) + ((0x2 * ((uint64_t)x29 * x61)) + ((0x2 * ((uint64_t)x31 * x59)) + ((0x2 * ((uint64_t)x33 * x57)) + (0x2 * ((uint64_t)x32 * x55)))))))));
- uint64_t x71 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + ((uint64_t)x21 * x35))))))))) + (0xbb * ((0x2 * ((uint64_t)x23 * x62)) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + ((0x2 * ((uint64_t)x33 * x55)) + (0x2 * ((uint64_t)x32 * x53))))))))));
- uint64_t x72 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + ((uint64_t)x19 * x35)))))))) + (0xbb * ((0x2 * ((uint64_t)x21 * x62)) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + ((0x2 * ((uint64_t)x29 * x57)) + ((0x2 * ((uint64_t)x31 * x55)) + ((0x2 * ((uint64_t)x33 * x53)) + (0x2 * ((uint64_t)x32 * x51)))))))))));
- uint64_t x73 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((uint64_t)x17 * x35))))))) + (0xbb * ((0x2 * ((uint64_t)x19 * x62)) + ((0x2 * ((uint64_t)x21 * x63)) + ((0x2 * ((uint64_t)x23 * x61)) + ((0x2 * ((uint64_t)x25 * x59)) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + ((0x2 * ((uint64_t)x31 * x53)) + ((0x2 * ((uint64_t)x33 * x51)) + (0x2 * ((uint64_t)x32 * x49))))))))))));
- uint64_t x74 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + ((uint64_t)x15 * x35)))))) + (0xbb * ((0x2 * ((uint64_t)x17 * x62)) + ((0x2 * ((uint64_t)x19 * x63)) + ((0x2 * ((uint64_t)x21 * x61)) + ((0x2 * ((uint64_t)x23 * x59)) + ((0x2 * ((uint64_t)x25 * x57)) + ((0x2 * ((uint64_t)x27 * x55)) + ((0x2 * ((uint64_t)x29 * x53)) + ((0x2 * ((uint64_t)x31 * x51)) + ((0x2 * ((uint64_t)x33 * x49)) + (0x2 * ((uint64_t)x32 * x47)))))))))))));
- uint64_t x75 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((uint64_t)x13 * x35))))) + (0xbb * ((0x2 * ((uint64_t)x15 * x62)) + ((0x2 * ((uint64_t)x17 * x63)) + ((0x2 * ((uint64_t)x19 * x61)) + ((0x2 * ((uint64_t)x21 * x59)) + ((0x2 * ((uint64_t)x23 * x57)) + ((0x2 * ((uint64_t)x25 * x55)) + ((0x2 * ((uint64_t)x27 * x53)) + ((0x2 * ((uint64_t)x29 * x51)) + ((0x2 * ((uint64_t)x31 * x49)) + ((0x2 * ((uint64_t)x33 * x47)) + (0x2 * ((uint64_t)x32 * x45))))))))))))));
- uint64_t x76 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((uint64_t)x11 * x35)))) + (0xbb * ((0x2 * ((uint64_t)x13 * x62)) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + ((0x2 * ((uint64_t)x21 * x57)) + ((0x2 * ((uint64_t)x23 * x55)) + ((0x2 * ((uint64_t)x25 * x53)) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + ((0x2 * ((uint64_t)x33 * x45)) + (0x2 * ((uint64_t)x32 * x43)))))))))))))));
- uint64_t x77 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((uint64_t)x9 * x35))) + (0xbb * ((0x2 * ((uint64_t)x11 * x62)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + (0x2 * ((uint64_t)x32 * x41))))))))))))))));
- uint64_t x78 = ((((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)) + (0xbb * ((0x2 * ((uint64_t)x9 * x62)) + ((0x2 * ((uint64_t)x11 * x63)) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + ((0x2 * ((uint64_t)x19 * x55)) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + ((0x2 * ((uint64_t)x31 * x43)) + ((0x2 * ((uint64_t)x33 * x41)) + (0x2 * ((uint64_t)x32 * x39)))))))))))))))));
- uint64_t x79 = (((uint64_t)x5 * x35) + (0xbb * ((0x2 * ((uint64_t)x7 * x62)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + (0x2 * ((uint64_t)x32 * x37))))))))))))))))));
- uint64_t x80 = (x79 >> 0x18);
- uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- uint64_t x82 = (x80 + x78);
- uint64_t x83 = (x82 >> 0x18);
- uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- uint64_t x85 = (x83 + x77);
- uint64_t x86 = (x85 >> 0x18);
- uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- uint64_t x88 = (x86 + x76);
- uint64_t x89 = (x88 >> 0x18);
- uint32_t x90 = ((uint32_t)x88 & 0xffffff);
- uint64_t x91 = (x89 + x75);
- uint64_t x92 = (x91 >> 0x18);
- uint32_t x93 = ((uint32_t)x91 & 0xffffff);
- uint64_t x94 = (x92 + x74);
- uint64_t x95 = (x94 >> 0x18);
- uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- uint64_t x97 = (x95 + x73);
- uint64_t x98 = (x97 >> 0x18);
- uint32_t x99 = ((uint32_t)x97 & 0xffffff);
- uint64_t x100 = (x98 + x72);
- uint64_t x101 = (x100 >> 0x18);
- uint32_t x102 = ((uint32_t)x100 & 0xffffff);
- uint64_t x103 = (x101 + x71);
- uint64_t x104 = (x103 >> 0x18);
- uint32_t x105 = ((uint32_t)x103 & 0xffffff);
- uint64_t x106 = (x104 + x70);
- uint64_t x107 = (x106 >> 0x18);
- uint32_t x108 = ((uint32_t)x106 & 0xffffff);
- uint64_t x109 = (x107 + x69);
- uint64_t x110 = (x109 >> 0x18);
- uint32_t x111 = ((uint32_t)x109 & 0xffffff);
- uint64_t x112 = (x110 + x68);
- uint64_t x113 = (x112 >> 0x18);
- uint32_t x114 = ((uint32_t)x112 & 0xffffff);
- uint64_t x115 = (x113 + x67);
- uint64_t x116 = (x115 >> 0x18);
- uint32_t x117 = ((uint32_t)x115 & 0xffffff);
- uint64_t x118 = (x116 + x66);
- uint64_t x119 = (x118 >> 0x18);
- uint32_t x120 = ((uint32_t)x118 & 0xffffff);
- uint64_t x121 = (x119 + x65);
- uint64_t x122 = (x121 >> 0x18);
- uint32_t x123 = ((uint32_t)x121 & 0xffffff);
- uint64_t x124 = (x122 + x64);
- uint64_t x125 = (x124 >> 0x17);
- uint32_t x126 = ((uint32_t)x124 & 0x7fffff);
- uint64_t x127 = (x81 + (0xbb * x125));
- uint32_t x128 = (uint32_t) (x127 >> 0x18);
- uint32_t x129 = ((uint32_t)x127 & 0xffffff);
- uint32_t x130 = (x128 + x84);
- uint32_t x131 = (x130 >> 0x18);
- uint32_t x132 = (x130 & 0xffffff);
- return (Return x126, Return x123, Return x120, Return x117, Return x114, Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, (x131 + x87), Return x132, Return x129))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m187_16limbs/femulDisplay.v b/src/Specific/solinas32_2e383m187_16limbs/femulDisplay.v
deleted file mode 100644
index 5116ab677..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m187_16limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e383m187_16limbs/fesquare.c b/src/Specific/solinas32_2e383m187_16limbs/fesquare.c
deleted file mode 100644
index 3826dd660..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/fesquare.c
+++ /dev/null
@@ -1,104 +0,0 @@
-static void fesquare(uint32_t out[16], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x31 = (((uint64_t)x2 * x29) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x29 * x2))))))))))))))));
- { uint64_t x32 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0xbb * (0x2 * ((uint64_t)x29 * x29))));
- { uint64_t x33 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0xbb * ((0x2 * ((uint64_t)x30 * x29)) + (0x2 * ((uint64_t)x29 * x30)))));
- { uint64_t x34 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0xbb * ((0x2 * ((uint64_t)x28 * x29)) + ((0x2 * ((uint64_t)x30 * x30)) + (0x2 * ((uint64_t)x29 * x28))))));
- { uint64_t x35 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0xbb * ((0x2 * ((uint64_t)x26 * x29)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + (0x2 * ((uint64_t)x29 * x26)))))));
- { uint64_t x36 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0xbb * ((0x2 * ((uint64_t)x24 * x29)) + ((0x2 * ((uint64_t)x26 * x30)) + ((0x2 * ((uint64_t)x28 * x28)) + ((0x2 * ((uint64_t)x30 * x26)) + (0x2 * ((uint64_t)x29 * x24))))))));
- { uint64_t x37 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0xbb * ((0x2 * ((uint64_t)x22 * x29)) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + (0x2 * ((uint64_t)x29 * x22)))))))));
- { uint64_t x38 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0xbb * ((0x2 * ((uint64_t)x20 * x29)) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + ((0x2 * ((uint64_t)x26 * x26)) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + (0x2 * ((uint64_t)x29 * x20))))))))));
- { uint64_t x39 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0xbb * ((0x2 * ((uint64_t)x18 * x29)) + ((0x2 * ((uint64_t)x20 * x30)) + ((0x2 * ((uint64_t)x22 * x28)) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + ((0x2 * ((uint64_t)x28 * x22)) + ((0x2 * ((uint64_t)x30 * x20)) + (0x2 * ((uint64_t)x29 * x18)))))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0xbb * ((0x2 * ((uint64_t)x16 * x29)) + ((0x2 * ((uint64_t)x18 * x30)) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + ((0x2 * ((uint64_t)x30 * x18)) + (0x2 * ((uint64_t)x29 * x16))))))))))));
- { uint64_t x41 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0xbb * ((0x2 * ((uint64_t)x14 * x29)) + ((0x2 * ((uint64_t)x16 * x30)) + ((0x2 * ((uint64_t)x18 * x28)) + ((0x2 * ((uint64_t)x20 * x26)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + ((0x2 * ((uint64_t)x26 * x20)) + ((0x2 * ((uint64_t)x28 * x18)) + ((0x2 * ((uint64_t)x30 * x16)) + (0x2 * ((uint64_t)x29 * x14)))))))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0xbb * ((0x2 * ((uint64_t)x12 * x29)) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + ((0x2 * ((uint64_t)x22 * x22)) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + (0x2 * ((uint64_t)x29 * x12))))))))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0xbb * ((0x2 * ((uint64_t)x10 * x29)) + ((0x2 * ((uint64_t)x12 * x30)) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + ((0x2 * ((uint64_t)x18 * x24)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((0x2 * ((uint64_t)x24 * x18)) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + ((0x2 * ((uint64_t)x30 * x12)) + (0x2 * ((uint64_t)x29 * x10)))))))))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0xbb * ((0x2 * ((uint64_t)x8 * x29)) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + ((0x2 * ((uint64_t)x18 * x22)) + ((0x2 * ((uint64_t)x20 * x20)) + ((0x2 * ((uint64_t)x22 * x18)) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + (0x2 * ((uint64_t)x29 * x8))))))))))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xbb * ((0x2 * ((uint64_t)x6 * x29)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + (0x2 * ((uint64_t)x29 * x6)))))))))))))))));
- { uint64_t x46 = (((uint64_t)x2 * x2) + (0xbb * ((0x2 * ((uint64_t)x4 * x29)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + (0x2 * ((uint64_t)x29 * x4))))))))))))))))));
- { uint64_t x47 = (x46 >> 0x18);
- { uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- { uint64_t x49 = (x47 + x45);
- { uint64_t x50 = (x49 >> 0x18);
- { uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- { uint64_t x52 = (x50 + x44);
- { uint64_t x53 = (x52 >> 0x18);
- { uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- { uint64_t x55 = (x53 + x43);
- { uint64_t x56 = (x55 >> 0x18);
- { uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- { uint64_t x58 = (x56 + x42);
- { uint64_t x59 = (x58 >> 0x18);
- { uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- { uint64_t x61 = (x59 + x41);
- { uint64_t x62 = (x61 >> 0x18);
- { uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- { uint64_t x64 = (x62 + x40);
- { uint64_t x65 = (x64 >> 0x18);
- { uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- { uint64_t x67 = (x65 + x39);
- { uint64_t x68 = (x67 >> 0x18);
- { uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- { uint64_t x70 = (x68 + x38);
- { uint64_t x71 = (x70 >> 0x18);
- { uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- { uint64_t x73 = (x71 + x37);
- { uint64_t x74 = (x73 >> 0x18);
- { uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- { uint64_t x76 = (x74 + x36);
- { uint64_t x77 = (x76 >> 0x18);
- { uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- { uint64_t x79 = (x77 + x35);
- { uint64_t x80 = (x79 >> 0x18);
- { uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- { uint64_t x82 = (x80 + x34);
- { uint64_t x83 = (x82 >> 0x18);
- { uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- { uint64_t x85 = (x83 + x33);
- { uint64_t x86 = (x85 >> 0x18);
- { uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- { uint64_t x88 = (x86 + x32);
- { uint64_t x89 = (x88 >> 0x18);
- { uint32_t x90 = ((uint32_t)x88 & 0xffffff);
- { uint64_t x91 = (x89 + x31);
- { uint64_t x92 = (x91 >> 0x17);
- { uint32_t x93 = ((uint32_t)x91 & 0x7fffff);
- { uint64_t x94 = (x48 + (0xbb * x92));
- { uint32_t x95 = (uint32_t) (x94 >> 0x18);
- { uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- { uint32_t x97 = (x95 + x51);
- { uint32_t x98 = (x97 >> 0x18);
- { uint32_t x99 = (x97 & 0xffffff);
- out[0] = x96;
- out[1] = x99;
- out[2] = (x98 + x54);
- out[3] = x57;
- out[4] = x60;
- out[5] = x63;
- out[6] = x66;
- out[7] = x69;
- out[8] = x72;
- out[9] = x75;
- out[10] = x78;
- out[11] = x81;
- out[12] = x84;
- out[13] = x87;
- out[14] = x90;
- out[15] = x93;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m187_16limbs/fesquare.v b/src/Specific/solinas32_2e383m187_16limbs/fesquare.v
deleted file mode 100644
index 88a0069a6..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m187_16limbs.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_2e383m187_16limbs/fesquareDisplay.log b/src/Specific/solinas32_2e383m187_16limbs/fesquareDisplay.log
deleted file mode 100644
index 09502e8dc..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,76 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x31 = (((uint64_t)x2 * x29) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x29 * x2))))))))))))))));
- uint64_t x32 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0xbb * (0x2 * ((uint64_t)x29 * x29))));
- uint64_t x33 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0xbb * ((0x2 * ((uint64_t)x30 * x29)) + (0x2 * ((uint64_t)x29 * x30)))));
- uint64_t x34 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0xbb * ((0x2 * ((uint64_t)x28 * x29)) + ((0x2 * ((uint64_t)x30 * x30)) + (0x2 * ((uint64_t)x29 * x28))))));
- uint64_t x35 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0xbb * ((0x2 * ((uint64_t)x26 * x29)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + (0x2 * ((uint64_t)x29 * x26)))))));
- uint64_t x36 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0xbb * ((0x2 * ((uint64_t)x24 * x29)) + ((0x2 * ((uint64_t)x26 * x30)) + ((0x2 * ((uint64_t)x28 * x28)) + ((0x2 * ((uint64_t)x30 * x26)) + (0x2 * ((uint64_t)x29 * x24))))))));
- uint64_t x37 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0xbb * ((0x2 * ((uint64_t)x22 * x29)) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + (0x2 * ((uint64_t)x29 * x22)))))))));
- uint64_t x38 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0xbb * ((0x2 * ((uint64_t)x20 * x29)) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + ((0x2 * ((uint64_t)x26 * x26)) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + (0x2 * ((uint64_t)x29 * x20))))))))));
- uint64_t x39 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0xbb * ((0x2 * ((uint64_t)x18 * x29)) + ((0x2 * ((uint64_t)x20 * x30)) + ((0x2 * ((uint64_t)x22 * x28)) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + ((0x2 * ((uint64_t)x28 * x22)) + ((0x2 * ((uint64_t)x30 * x20)) + (0x2 * ((uint64_t)x29 * x18)))))))))));
- uint64_t x40 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0xbb * ((0x2 * ((uint64_t)x16 * x29)) + ((0x2 * ((uint64_t)x18 * x30)) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + ((0x2 * ((uint64_t)x30 * x18)) + (0x2 * ((uint64_t)x29 * x16))))))))))));
- uint64_t x41 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0xbb * ((0x2 * ((uint64_t)x14 * x29)) + ((0x2 * ((uint64_t)x16 * x30)) + ((0x2 * ((uint64_t)x18 * x28)) + ((0x2 * ((uint64_t)x20 * x26)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + ((0x2 * ((uint64_t)x26 * x20)) + ((0x2 * ((uint64_t)x28 * x18)) + ((0x2 * ((uint64_t)x30 * x16)) + (0x2 * ((uint64_t)x29 * x14)))))))))))));
- uint64_t x42 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0xbb * ((0x2 * ((uint64_t)x12 * x29)) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + ((0x2 * ((uint64_t)x22 * x22)) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + (0x2 * ((uint64_t)x29 * x12))))))))))))));
- uint64_t x43 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0xbb * ((0x2 * ((uint64_t)x10 * x29)) + ((0x2 * ((uint64_t)x12 * x30)) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + ((0x2 * ((uint64_t)x18 * x24)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((0x2 * ((uint64_t)x24 * x18)) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + ((0x2 * ((uint64_t)x30 * x12)) + (0x2 * ((uint64_t)x29 * x10)))))))))))))));
- uint64_t x44 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0xbb * ((0x2 * ((uint64_t)x8 * x29)) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + ((0x2 * ((uint64_t)x18 * x22)) + ((0x2 * ((uint64_t)x20 * x20)) + ((0x2 * ((uint64_t)x22 * x18)) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + (0x2 * ((uint64_t)x29 * x8))))))))))))))));
- uint64_t x45 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xbb * ((0x2 * ((uint64_t)x6 * x29)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + (0x2 * ((uint64_t)x29 * x6)))))))))))))))));
- uint64_t x46 = (((uint64_t)x2 * x2) + (0xbb * ((0x2 * ((uint64_t)x4 * x29)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + (0x2 * ((uint64_t)x29 * x4))))))))))))))))));
- uint64_t x47 = (x46 >> 0x18);
- uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- uint64_t x49 = (x47 + x45);
- uint64_t x50 = (x49 >> 0x18);
- uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- uint64_t x52 = (x50 + x44);
- uint64_t x53 = (x52 >> 0x18);
- uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- uint64_t x55 = (x53 + x43);
- uint64_t x56 = (x55 >> 0x18);
- uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- uint64_t x58 = (x56 + x42);
- uint64_t x59 = (x58 >> 0x18);
- uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- uint64_t x61 = (x59 + x41);
- uint64_t x62 = (x61 >> 0x18);
- uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- uint64_t x64 = (x62 + x40);
- uint64_t x65 = (x64 >> 0x18);
- uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- uint64_t x67 = (x65 + x39);
- uint64_t x68 = (x67 >> 0x18);
- uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- uint64_t x70 = (x68 + x38);
- uint64_t x71 = (x70 >> 0x18);
- uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- uint64_t x73 = (x71 + x37);
- uint64_t x74 = (x73 >> 0x18);
- uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- uint64_t x76 = (x74 + x36);
- uint64_t x77 = (x76 >> 0x18);
- uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- uint64_t x79 = (x77 + x35);
- uint64_t x80 = (x79 >> 0x18);
- uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- uint64_t x82 = (x80 + x34);
- uint64_t x83 = (x82 >> 0x18);
- uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- uint64_t x85 = (x83 + x33);
- uint64_t x86 = (x85 >> 0x18);
- uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- uint64_t x88 = (x86 + x32);
- uint64_t x89 = (x88 >> 0x18);
- uint32_t x90 = ((uint32_t)x88 & 0xffffff);
- uint64_t x91 = (x89 + x31);
- uint64_t x92 = (x91 >> 0x17);
- uint32_t x93 = ((uint32_t)x91 & 0x7fffff);
- uint64_t x94 = (x48 + (0xbb * x92));
- uint32_t x95 = (uint32_t) (x94 >> 0x18);
- uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- uint32_t x97 = (x95 + x51);
- uint32_t x98 = (x97 >> 0x18);
- uint32_t x99 = (x97 & 0xffffff);
- return (Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, Return x57, (x98 + x54), Return x99, Return x96))
-x
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m187_16limbs/fesquareDisplay.v b/src/Specific/solinas32_2e383m187_16limbs/fesquareDisplay.v
deleted file mode 100644
index 3ab5ddfac..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m187_16limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e383m187_16limbs/fesub.c b/src/Specific/solinas32_2e383m187_16limbs/fesub.c
deleted file mode 100644
index 30606edb2..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/fesub.c
+++ /dev/null
@@ -1,51 +0,0 @@
-static void fesub(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- out[0] = ((0x1fffe8a + x5) - x35);
- out[1] = ((0x1fffffe + x7) - x37);
- out[2] = ((0x1fffffe + x9) - x39);
- out[3] = ((0x1fffffe + x11) - x41);
- out[4] = ((0x1fffffe + x13) - x43);
- out[5] = ((0x1fffffe + x15) - x45);
- out[6] = ((0x1fffffe + x17) - x47);
- out[7] = ((0x1fffffe + x19) - x49);
- out[8] = ((0x1fffffe + x21) - x51);
- out[9] = ((0x1fffffe + x23) - x53);
- out[10] = ((0x1fffffe + x25) - x55);
- out[11] = ((0x1fffffe + x27) - x57);
- out[12] = ((0x1fffffe + x29) - x59);
- out[13] = ((0x1fffffe + x31) - x61);
- out[14] = ((0x1fffffe + x33) - x63);
- out[15] = ((0xfffffe + x32) - x62);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m187_16limbs/fesub.v b/src/Specific/solinas32_2e383m187_16limbs/fesub.v
deleted file mode 100644
index 77f912b64..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m187_16limbs.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_2e383m187_16limbs/fesubDisplay.log b/src/Specific/solinas32_2e383m187_16limbs/fesubDisplay.log
deleted file mode 100644
index c38739831..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- (((0xfffffe + x32) - x62), ((0x1fffffe + x33) - x63), ((0x1fffffe + x31) - x61), ((0x1fffffe + x29) - x59), ((0x1fffffe + x27) - x57), ((0x1fffffe + x25) - x55), ((0x1fffffe + x23) - x53), ((0x1fffffe + x21) - x51), ((0x1fffffe + x19) - x49), ((0x1fffffe + x17) - x47), ((0x1fffffe + x15) - x45), ((0x1fffffe + x13) - x43), ((0x1fffffe + x11) - x41), ((0x1fffffe + x9) - x39), ((0x1fffffe + x7) - x37), ((0x1fffe8a + x5) - x35)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m187_16limbs/fesubDisplay.v b/src/Specific/solinas32_2e383m187_16limbs/fesubDisplay.v
deleted file mode 100644
index 73f1e58d1..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m187_16limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e383m187_16limbs/freeze.c b/src/Specific/solinas32_2e383m187_16limbs/freeze.c
deleted file mode 100644
index 1bb1fbd60..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/freeze.c
+++ /dev/null
@@ -1,84 +0,0 @@
-static void freeze(uint32_t out[16], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffff45);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x4, 0xffffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x6, 0xffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x8, 0xffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x10, 0xffffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x12, 0xffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x14, 0xffffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x16, 0xffffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x18, 0xffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x20, 0xffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x22, 0xffffff);
- { uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x24, 0xffffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x26, 0xffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x28, 0xffffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x30, 0xffffff);
- { uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x29, 0x7fffff);
- { uint32_t x79 = cmovznz32(x78, 0x0, 0xffffffff);
- { uint32_t x80 = (x79 & 0xffff45);
- { uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x32, Return x80);
- { uint32_t x84 = (x79 & 0xffffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x35, Return x84);
- { uint32_t x88 = (x79 & 0xffffff);
- { uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x38, Return x88);
- { uint32_t x92 = (x79 & 0xffffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x41, Return x92);
- { uint32_t x96 = (x79 & 0xffffff);
- { uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x44, Return x96);
- { uint32_t x100 = (x79 & 0xffffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x47, Return x100);
- { uint32_t x104 = (x79 & 0xffffff);
- { uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x50, Return x104);
- { uint32_t x108 = (x79 & 0xffffff);
- { uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x53, Return x108);
- { uint32_t x112 = (x79 & 0xffffff);
- { uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x56, Return x112);
- { uint32_t x116 = (x79 & 0xffffff);
- { uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x59, Return x116);
- { uint32_t x120 = (x79 & 0xffffff);
- { uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x62, Return x120);
- { uint32_t x124 = (x79 & 0xffffff);
- { uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x65, Return x124);
- { uint32_t x128 = (x79 & 0xffffff);
- { uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x68, Return x128);
- { uint32_t x132 = (x79 & 0xffffff);
- { uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x71, Return x132);
- { uint32_t x136 = (x79 & 0xffffff);
- { uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x74, Return x136);
- { uint32_t x140 = (x79 & 0x7fffff);
- { uint32_t x142, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x77, Return x140);
- out[0] = x82;
- out[1] = x86;
- out[2] = x90;
- out[3] = x94;
- out[4] = x98;
- out[5] = x102;
- out[6] = x106;
- out[7] = x110;
- out[8] = x114;
- out[9] = x118;
- out[10] = x122;
- out[11] = x126;
- out[12] = x130;
- out[13] = x134;
- out[14] = x138;
- out[15] = x142;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m187_16limbs/freeze.v b/src/Specific/solinas32_2e383m187_16limbs/freeze.v
deleted file mode 100644
index 259f23821..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m187_16limbs.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_2e383m187_16limbs/freezeDisplay.log b/src/Specific/solinas32_2e383m187_16limbs/freezeDisplay.log
deleted file mode 100644
index 10a8e1a4d..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/freezeDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffff45);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x4, 0xffffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x6, 0xffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x8, 0xffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x10, 0xffffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x12, 0xffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x14, 0xffffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x16, 0xffffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x18, 0xffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x20, 0xffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x22, 0xffffff);
- uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x24, 0xffffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x26, 0xffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x28, 0xffffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x30, 0xffffff);
- uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x29, 0x7fffff);
- uint32_t x79 = cmovznz32(x78, 0x0, 0xffffffff);
- uint32_t x80 = (x79 & 0xffff45);
- uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x32, Return x80);
- uint32_t x84 = (x79 & 0xffffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x35, Return x84);
- uint32_t x88 = (x79 & 0xffffff);
- uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x38, Return x88);
- uint32_t x92 = (x79 & 0xffffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x41, Return x92);
- uint32_t x96 = (x79 & 0xffffff);
- uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x44, Return x96);
- uint32_t x100 = (x79 & 0xffffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x47, Return x100);
- uint32_t x104 = (x79 & 0xffffff);
- uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x50, Return x104);
- uint32_t x108 = (x79 & 0xffffff);
- uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x53, Return x108);
- uint32_t x112 = (x79 & 0xffffff);
- uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x56, Return x112);
- uint32_t x116 = (x79 & 0xffffff);
- uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x59, Return x116);
- uint32_t x120 = (x79 & 0xffffff);
- uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x62, Return x120);
- uint32_t x124 = (x79 & 0xffffff);
- uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x65, Return x124);
- uint32_t x128 = (x79 & 0xffffff);
- uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x68, Return x128);
- uint32_t x132 = (x79 & 0xffffff);
- uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x71, Return x132);
- uint32_t x136 = (x79 & 0xffffff);
- uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x74, Return x136);
- uint32_t x140 = (x79 & 0x7fffff);
- uint32_t x142, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x77, Return x140);
- (Return x142, Return x138, Return x134, Return x130, Return x126, Return x122, Return x118, Return x114, Return x110, Return x106, Return x102, Return x98, Return x94, Return x90, Return x86, Return x82))
-x
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m187_16limbs/freezeDisplay.v b/src/Specific/solinas32_2e383m187_16limbs/freezeDisplay.v
deleted file mode 100644
index 666081512..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m187_16limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e383m187_16limbs/py_interpreter.sh b/src/Specific/solinas32_2e383m187_16limbs/py_interpreter.sh
deleted file mode 100755
index f30aca3f8..000000000
--- a/src/Specific/solinas32_2e383m187_16limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**383 - 187' -Dmodulus_bytes='23 + 15/16' -Da24='121665'
diff --git a/src/Specific/solinas32_2e383m187_17limbs/CurveParameters.v b/src/Specific/solinas32_2e383m187_17limbs/CurveParameters.v
deleted file mode 100644
index 292bde427..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^383 - 187
-Base: 22 + 9/17
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 17%nat;
- base := 22 + 9/17;
- bitwidth := 32;
- s := 2^383;
- c := [(1, 187)];
- carry_chains := Some [seq 0 (pred 17); [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_2e383m187_17limbs/Synthesis.v b/src/Specific/solinas32_2e383m187_17limbs/Synthesis.v
deleted file mode 100644
index c35ef7e09..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e383m187_17limbs.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_2e383m187_17limbs/compiler.sh b/src/Specific/solinas32_2e383m187_17limbs/compiler.sh
deleted file mode 100755
index 1f11f4a10..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<383) - 187' "$@"
diff --git a/src/Specific/solinas32_2e383m187_17limbs/compilerxx.sh b/src/Specific/solinas32_2e383m187_17limbs/compilerxx.sh
deleted file mode 100755
index aacfe9cc9..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<383) - 187' "$@"
diff --git a/src/Specific/solinas32_2e383m187_17limbs/feadd.c b/src/Specific/solinas32_2e383m187_17limbs/feadd.c
deleted file mode 100644
index 30eb11eae..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/feadd.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void feadd(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- out[0] = (x5 + x37);
- out[1] = (x7 + x39);
- out[2] = (x9 + x41);
- out[3] = (x11 + x43);
- out[4] = (x13 + x45);
- out[5] = (x15 + x47);
- out[6] = (x17 + x49);
- out[7] = (x19 + x51);
- out[8] = (x21 + x53);
- out[9] = (x23 + x55);
- out[10] = (x25 + x57);
- out[11] = (x27 + x59);
- out[12] = (x29 + x61);
- out[13] = (x31 + x63);
- out[14] = (x33 + x65);
- out[15] = (x35 + x67);
- out[16] = (x34 + x66);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m187_17limbs/feadd.v b/src/Specific/solinas32_2e383m187_17limbs/feadd.v
deleted file mode 100644
index e2e0cc872..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m187_17limbs.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_2e383m187_17limbs/feaddDisplay.log b/src/Specific/solinas32_2e383m187_17limbs/feaddDisplay.log
deleted file mode 100644
index 7324e0941..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- ((x34 + x66), (x35 + x67), (x33 + x65), (x31 + x63), (x29 + x61), (x27 + x59), (x25 + x57), (x23 + x55), (x21 + x53), (x19 + x51), (x17 + x49), (x15 + x47), (x13 + x45), (x11 + x43), (x9 + x41), (x7 + x39), (x5 + x37)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m187_17limbs/feaddDisplay.v b/src/Specific/solinas32_2e383m187_17limbs/feaddDisplay.v
deleted file mode 100644
index 89e101866..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m187_17limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e383m187_17limbs/fecarry.v b/src/Specific/solinas32_2e383m187_17limbs/fecarry.v
deleted file mode 100644
index 6977ab1e6..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m187_17limbs.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_2e383m187_17limbs/fecarryDisplay.v b/src/Specific/solinas32_2e383m187_17limbs/fecarryDisplay.v
deleted file mode 100644
index 8dc056fde..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m187_17limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e383m187_17limbs/femul.c b/src/Specific/solinas32_2e383m187_17limbs/femul.c
deleted file mode 100644
index f85e83969..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/femul.c
+++ /dev/null
@@ -1,127 +0,0 @@
-static void femul(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- { uint64_t x68 = (((uint64_t)x5 * x66) + (((uint64_t)x7 * x67) + ((0x2 * ((uint64_t)x9 * x65)) + (((uint64_t)x11 * x63) + ((0x2 * ((uint64_t)x13 * x61)) + (((uint64_t)x15 * x59) + ((0x2 * ((uint64_t)x17 * x57)) + (((uint64_t)x19 * x55) + ((0x2 * ((uint64_t)x21 * x53)) + (((uint64_t)x23 * x51) + ((0x2 * ((uint64_t)x25 * x49)) + (((uint64_t)x27 * x47) + ((0x2 * ((uint64_t)x29 * x45)) + (((uint64_t)x31 * x43) + ((0x2 * ((uint64_t)x33 * x41)) + (((uint64_t)x35 * x39) + ((uint64_t)x34 * x37)))))))))))))))));
- { uint64_t x69 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + ((uint64_t)x35 * x37)))))))))))))))) + (0xbb * (0x2 * ((uint64_t)x34 * x66))));
- { uint64_t x70 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + ((0x2 * ((uint64_t)x9 * x61)) + (((uint64_t)x11 * x59) + ((0x2 * ((uint64_t)x13 * x57)) + (((uint64_t)x15 * x55) + ((0x2 * ((uint64_t)x17 * x53)) + (((uint64_t)x19 * x51) + ((0x2 * ((uint64_t)x21 * x49)) + (((uint64_t)x23 * x47) + ((0x2 * ((uint64_t)x25 * x45)) + (((uint64_t)x27 * x43) + ((0x2 * ((uint64_t)x29 * x41)) + (((uint64_t)x31 * x39) + ((uint64_t)x33 * x37))))))))))))))) + (0xbb * (((uint64_t)x35 * x66) + ((uint64_t)x34 * x67))));
- { uint64_t x71 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + ((0x2 * ((uint64_t)x25 * x43)) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((uint64_t)x31 * x37)))))))))))))) + (0xbb * ((0x2 * ((uint64_t)x33 * x66)) + (((uint64_t)x35 * x67) + (0x2 * ((uint64_t)x34 * x65))))));
- { uint64_t x72 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + ((0x2 * ((uint64_t)x9 * x57)) + (((uint64_t)x11 * x55) + ((0x2 * ((uint64_t)x13 * x53)) + (((uint64_t)x15 * x51) + ((0x2 * ((uint64_t)x17 * x49)) + (((uint64_t)x19 * x47) + ((0x2 * ((uint64_t)x21 * x45)) + (((uint64_t)x23 * x43) + ((0x2 * ((uint64_t)x25 * x41)) + (((uint64_t)x27 * x39) + ((uint64_t)x29 * x37))))))))))))) + (0xbb * (((uint64_t)x31 * x66) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + ((uint64_t)x34 * x63))))));
- { uint64_t x73 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + ((uint64_t)x27 * x37)))))))))))) + (0xbb * ((0x2 * ((uint64_t)x29 * x66)) + (((uint64_t)x31 * x67) + ((0x2 * ((uint64_t)x33 * x65)) + (((uint64_t)x35 * x63) + (0x2 * ((uint64_t)x34 * x61))))))));
- { uint64_t x74 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + ((0x2 * ((uint64_t)x9 * x53)) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + (((uint64_t)x15 * x47) + ((0x2 * ((uint64_t)x17 * x45)) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + (((uint64_t)x23 * x39) + ((uint64_t)x25 * x37))))))))))) + (0xbb * (((uint64_t)x27 * x66) + (((uint64_t)x29 * x67) + (((uint64_t)x31 * x65) + (((uint64_t)x33 * x63) + (((uint64_t)x35 * x61) + ((uint64_t)x34 * x59))))))));
- { uint64_t x75 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((uint64_t)x23 * x37)))))))))) + (0xbb * ((0x2 * ((uint64_t)x25 * x66)) + (((uint64_t)x27 * x67) + ((0x2 * ((uint64_t)x29 * x65)) + (((uint64_t)x31 * x63) + ((0x2 * ((uint64_t)x33 * x61)) + (((uint64_t)x35 * x59) + (0x2 * ((uint64_t)x34 * x57))))))))));
- { uint64_t x76 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + ((0x2 * ((uint64_t)x13 * x45)) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + (((uint64_t)x19 * x39) + ((uint64_t)x21 * x37))))))))) + (0xbb * (((uint64_t)x23 * x66) + (((uint64_t)x25 * x67) + (((uint64_t)x27 * x65) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + (((uint64_t)x33 * x59) + (((uint64_t)x35 * x57) + ((uint64_t)x34 * x55))))))))));
- { uint64_t x77 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((uint64_t)x19 * x37)))))))) + (0xbb * ((0x2 * ((uint64_t)x21 * x66)) + (((uint64_t)x23 * x67) + ((0x2 * ((uint64_t)x25 * x65)) + (((uint64_t)x27 * x63) + ((0x2 * ((uint64_t)x29 * x61)) + (((uint64_t)x31 * x59) + ((0x2 * ((uint64_t)x33 * x57)) + (((uint64_t)x35 * x55) + (0x2 * ((uint64_t)x34 * x53))))))))))));
- { uint64_t x78 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + ((0x2 * ((uint64_t)x9 * x45)) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + (((uint64_t)x15 * x39) + ((uint64_t)x17 * x37))))))) + (0xbb * (((uint64_t)x19 * x66) + (((uint64_t)x21 * x67) + (((uint64_t)x23 * x65) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + (((uint64_t)x35 * x53) + ((uint64_t)x34 * x51))))))))))));
- { uint64_t x79 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((uint64_t)x15 * x37)))))) + (0xbb * ((0x2 * ((uint64_t)x17 * x66)) + (((uint64_t)x19 * x67) + ((0x2 * ((uint64_t)x21 * x65)) + (((uint64_t)x23 * x63) + ((0x2 * ((uint64_t)x25 * x61)) + (((uint64_t)x27 * x59) + ((0x2 * ((uint64_t)x29 * x57)) + (((uint64_t)x31 * x55) + ((0x2 * ((uint64_t)x33 * x53)) + (((uint64_t)x35 * x51) + (0x2 * ((uint64_t)x34 * x49))))))))))))));
- { uint64_t x80 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + (((uint64_t)x11 * x39) + ((uint64_t)x13 * x37))))) + (0xbb * (((uint64_t)x15 * x66) + (((uint64_t)x17 * x67) + (((uint64_t)x19 * x65) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + (((uint64_t)x35 * x49) + ((uint64_t)x34 * x47))))))))))))));
- { uint64_t x81 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((uint64_t)x11 * x37)))) + (0xbb * ((0x2 * ((uint64_t)x13 * x66)) + (((uint64_t)x15 * x67) + ((0x2 * ((uint64_t)x17 * x65)) + (((uint64_t)x19 * x63) + ((0x2 * ((uint64_t)x21 * x61)) + (((uint64_t)x23 * x59) + ((0x2 * ((uint64_t)x25 * x57)) + (((uint64_t)x27 * x55) + ((0x2 * ((uint64_t)x29 * x53)) + (((uint64_t)x31 * x51) + ((0x2 * ((uint64_t)x33 * x49)) + (((uint64_t)x35 * x47) + (0x2 * ((uint64_t)x34 * x45))))))))))))))));
- { uint64_t x82 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + ((uint64_t)x9 * x37))) + (0xbb * (((uint64_t)x11 * x66) + (((uint64_t)x13 * x67) + (((uint64_t)x15 * x65) + (((uint64_t)x17 * x63) + (((uint64_t)x19 * x61) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + (((uint64_t)x31 * x49) + (((uint64_t)x33 * x47) + (((uint64_t)x35 * x45) + ((uint64_t)x34 * x43))))))))))))))));
- { uint64_t x83 = ((((uint64_t)x5 * x39) + ((uint64_t)x7 * x37)) + (0xbb * ((0x2 * ((uint64_t)x9 * x66)) + (((uint64_t)x11 * x67) + ((0x2 * ((uint64_t)x13 * x65)) + (((uint64_t)x15 * x63) + ((0x2 * ((uint64_t)x17 * x61)) + (((uint64_t)x19 * x59) + ((0x2 * ((uint64_t)x21 * x57)) + (((uint64_t)x23 * x55) + ((0x2 * ((uint64_t)x25 * x53)) + (((uint64_t)x27 * x51) + ((0x2 * ((uint64_t)x29 * x49)) + (((uint64_t)x31 * x47) + ((0x2 * ((uint64_t)x33 * x45)) + (((uint64_t)x35 * x43) + (0x2 * ((uint64_t)x34 * x41))))))))))))))))));
- { uint64_t x84 = (((uint64_t)x5 * x37) + (0xbb * ((0x2 * ((uint64_t)x7 * x66)) + ((0x2 * ((uint64_t)x9 * x67)) + ((0x2 * ((uint64_t)x11 * x65)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + ((0x2 * ((uint64_t)x35 * x41)) + (0x2 * ((uint64_t)x34 * x39)))))))))))))))))));
- { uint64_t x85 = (x84 >> 0x17);
- { uint32_t x86 = ((uint32_t)x84 & 0x7fffff);
- { uint64_t x87 = (x85 + x83);
- { uint64_t x88 = (x87 >> 0x17);
- { uint32_t x89 = ((uint32_t)x87 & 0x7fffff);
- { uint64_t x90 = (x88 + x82);
- { uint64_t x91 = (x90 >> 0x16);
- { uint32_t x92 = ((uint32_t)x90 & 0x3fffff);
- { uint64_t x93 = (x91 + x81);
- { uint64_t x94 = (x93 >> 0x17);
- { uint32_t x95 = ((uint32_t)x93 & 0x7fffff);
- { uint64_t x96 = (x94 + x80);
- { uint64_t x97 = (x96 >> 0x16);
- { uint32_t x98 = ((uint32_t)x96 & 0x3fffff);
- { uint64_t x99 = (x97 + x79);
- { uint64_t x100 = (x99 >> 0x17);
- { uint32_t x101 = ((uint32_t)x99 & 0x7fffff);
- { uint64_t x102 = (x100 + x78);
- { uint64_t x103 = (x102 >> 0x16);
- { uint32_t x104 = ((uint32_t)x102 & 0x3fffff);
- { uint64_t x105 = (x103 + x77);
- { uint64_t x106 = (x105 >> 0x17);
- { uint32_t x107 = ((uint32_t)x105 & 0x7fffff);
- { uint64_t x108 = (x106 + x76);
- { uint64_t x109 = (x108 >> 0x16);
- { uint32_t x110 = ((uint32_t)x108 & 0x3fffff);
- { uint64_t x111 = (x109 + x75);
- { uint64_t x112 = (x111 >> 0x17);
- { uint32_t x113 = ((uint32_t)x111 & 0x7fffff);
- { uint64_t x114 = (x112 + x74);
- { uint64_t x115 = (x114 >> 0x16);
- { uint32_t x116 = ((uint32_t)x114 & 0x3fffff);
- { uint64_t x117 = (x115 + x73);
- { uint64_t x118 = (x117 >> 0x17);
- { uint32_t x119 = ((uint32_t)x117 & 0x7fffff);
- { uint64_t x120 = (x118 + x72);
- { uint64_t x121 = (x120 >> 0x16);
- { uint32_t x122 = ((uint32_t)x120 & 0x3fffff);
- { uint64_t x123 = (x121 + x71);
- { uint64_t x124 = (x123 >> 0x17);
- { uint32_t x125 = ((uint32_t)x123 & 0x7fffff);
- { uint64_t x126 = (x124 + x70);
- { uint64_t x127 = (x126 >> 0x16);
- { uint32_t x128 = ((uint32_t)x126 & 0x3fffff);
- { uint64_t x129 = (x127 + x69);
- { uint64_t x130 = (x129 >> 0x17);
- { uint32_t x131 = ((uint32_t)x129 & 0x7fffff);
- { uint64_t x132 = (x130 + x68);
- { uint32_t x133 = (uint32_t) (x132 >> 0x16);
- { uint32_t x134 = ((uint32_t)x132 & 0x3fffff);
- { uint64_t x135 = (x86 + ((uint64_t)0xbb * x133));
- { uint32_t x136 = (uint32_t) (x135 >> 0x17);
- { uint32_t x137 = ((uint32_t)x135 & 0x7fffff);
- { uint32_t x138 = (x136 + x89);
- { uint32_t x139 = (x138 >> 0x17);
- { uint32_t x140 = (x138 & 0x7fffff);
- out[0] = x137;
- out[1] = x140;
- out[2] = (x139 + x92);
- out[3] = x95;
- out[4] = x98;
- out[5] = x101;
- out[6] = x104;
- out[7] = x107;
- out[8] = x110;
- out[9] = x113;
- out[10] = x116;
- out[11] = x119;
- out[12] = x122;
- out[13] = x125;
- out[14] = x128;
- out[15] = x131;
- out[16] = x134;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m187_17limbs/femul.v b/src/Specific/solinas32_2e383m187_17limbs/femul.v
deleted file mode 100644
index 046ae38e3..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m187_17limbs.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_2e383m187_17limbs/femulDisplay.log b/src/Specific/solinas32_2e383m187_17limbs/femulDisplay.log
deleted file mode 100644
index 21c93a2e8..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/femulDisplay.log
+++ /dev/null
@@ -1,80 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- uint64_t x68 = (((uint64_t)x5 * x66) + (((uint64_t)x7 * x67) + ((0x2 * ((uint64_t)x9 * x65)) + (((uint64_t)x11 * x63) + ((0x2 * ((uint64_t)x13 * x61)) + (((uint64_t)x15 * x59) + ((0x2 * ((uint64_t)x17 * x57)) + (((uint64_t)x19 * x55) + ((0x2 * ((uint64_t)x21 * x53)) + (((uint64_t)x23 * x51) + ((0x2 * ((uint64_t)x25 * x49)) + (((uint64_t)x27 * x47) + ((0x2 * ((uint64_t)x29 * x45)) + (((uint64_t)x31 * x43) + ((0x2 * ((uint64_t)x33 * x41)) + (((uint64_t)x35 * x39) + ((uint64_t)x34 * x37)))))))))))))))));
- uint64_t x69 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + ((uint64_t)x35 * x37)))))))))))))))) + (0xbb * (0x2 * ((uint64_t)x34 * x66))));
- uint64_t x70 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + ((0x2 * ((uint64_t)x9 * x61)) + (((uint64_t)x11 * x59) + ((0x2 * ((uint64_t)x13 * x57)) + (((uint64_t)x15 * x55) + ((0x2 * ((uint64_t)x17 * x53)) + (((uint64_t)x19 * x51) + ((0x2 * ((uint64_t)x21 * x49)) + (((uint64_t)x23 * x47) + ((0x2 * ((uint64_t)x25 * x45)) + (((uint64_t)x27 * x43) + ((0x2 * ((uint64_t)x29 * x41)) + (((uint64_t)x31 * x39) + ((uint64_t)x33 * x37))))))))))))))) + (0xbb * (((uint64_t)x35 * x66) + ((uint64_t)x34 * x67))));
- uint64_t x71 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + ((0x2 * ((uint64_t)x25 * x43)) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((uint64_t)x31 * x37)))))))))))))) + (0xbb * ((0x2 * ((uint64_t)x33 * x66)) + (((uint64_t)x35 * x67) + (0x2 * ((uint64_t)x34 * x65))))));
- uint64_t x72 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + ((0x2 * ((uint64_t)x9 * x57)) + (((uint64_t)x11 * x55) + ((0x2 * ((uint64_t)x13 * x53)) + (((uint64_t)x15 * x51) + ((0x2 * ((uint64_t)x17 * x49)) + (((uint64_t)x19 * x47) + ((0x2 * ((uint64_t)x21 * x45)) + (((uint64_t)x23 * x43) + ((0x2 * ((uint64_t)x25 * x41)) + (((uint64_t)x27 * x39) + ((uint64_t)x29 * x37))))))))))))) + (0xbb * (((uint64_t)x31 * x66) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + ((uint64_t)x34 * x63))))));
- uint64_t x73 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + ((uint64_t)x27 * x37)))))))))))) + (0xbb * ((0x2 * ((uint64_t)x29 * x66)) + (((uint64_t)x31 * x67) + ((0x2 * ((uint64_t)x33 * x65)) + (((uint64_t)x35 * x63) + (0x2 * ((uint64_t)x34 * x61))))))));
- uint64_t x74 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + ((0x2 * ((uint64_t)x9 * x53)) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + (((uint64_t)x15 * x47) + ((0x2 * ((uint64_t)x17 * x45)) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + (((uint64_t)x23 * x39) + ((uint64_t)x25 * x37))))))))))) + (0xbb * (((uint64_t)x27 * x66) + (((uint64_t)x29 * x67) + (((uint64_t)x31 * x65) + (((uint64_t)x33 * x63) + (((uint64_t)x35 * x61) + ((uint64_t)x34 * x59))))))));
- uint64_t x75 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((uint64_t)x23 * x37)))))))))) + (0xbb * ((0x2 * ((uint64_t)x25 * x66)) + (((uint64_t)x27 * x67) + ((0x2 * ((uint64_t)x29 * x65)) + (((uint64_t)x31 * x63) + ((0x2 * ((uint64_t)x33 * x61)) + (((uint64_t)x35 * x59) + (0x2 * ((uint64_t)x34 * x57))))))))));
- uint64_t x76 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + ((0x2 * ((uint64_t)x13 * x45)) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + (((uint64_t)x19 * x39) + ((uint64_t)x21 * x37))))))))) + (0xbb * (((uint64_t)x23 * x66) + (((uint64_t)x25 * x67) + (((uint64_t)x27 * x65) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + (((uint64_t)x33 * x59) + (((uint64_t)x35 * x57) + ((uint64_t)x34 * x55))))))))));
- uint64_t x77 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((uint64_t)x19 * x37)))))))) + (0xbb * ((0x2 * ((uint64_t)x21 * x66)) + (((uint64_t)x23 * x67) + ((0x2 * ((uint64_t)x25 * x65)) + (((uint64_t)x27 * x63) + ((0x2 * ((uint64_t)x29 * x61)) + (((uint64_t)x31 * x59) + ((0x2 * ((uint64_t)x33 * x57)) + (((uint64_t)x35 * x55) + (0x2 * ((uint64_t)x34 * x53))))))))))));
- uint64_t x78 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + ((0x2 * ((uint64_t)x9 * x45)) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + (((uint64_t)x15 * x39) + ((uint64_t)x17 * x37))))))) + (0xbb * (((uint64_t)x19 * x66) + (((uint64_t)x21 * x67) + (((uint64_t)x23 * x65) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + (((uint64_t)x35 * x53) + ((uint64_t)x34 * x51))))))))))));
- uint64_t x79 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((uint64_t)x15 * x37)))))) + (0xbb * ((0x2 * ((uint64_t)x17 * x66)) + (((uint64_t)x19 * x67) + ((0x2 * ((uint64_t)x21 * x65)) + (((uint64_t)x23 * x63) + ((0x2 * ((uint64_t)x25 * x61)) + (((uint64_t)x27 * x59) + ((0x2 * ((uint64_t)x29 * x57)) + (((uint64_t)x31 * x55) + ((0x2 * ((uint64_t)x33 * x53)) + (((uint64_t)x35 * x51) + (0x2 * ((uint64_t)x34 * x49))))))))))))));
- uint64_t x80 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + (((uint64_t)x11 * x39) + ((uint64_t)x13 * x37))))) + (0xbb * (((uint64_t)x15 * x66) + (((uint64_t)x17 * x67) + (((uint64_t)x19 * x65) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + (((uint64_t)x35 * x49) + ((uint64_t)x34 * x47))))))))))))));
- uint64_t x81 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((uint64_t)x11 * x37)))) + (0xbb * ((0x2 * ((uint64_t)x13 * x66)) + (((uint64_t)x15 * x67) + ((0x2 * ((uint64_t)x17 * x65)) + (((uint64_t)x19 * x63) + ((0x2 * ((uint64_t)x21 * x61)) + (((uint64_t)x23 * x59) + ((0x2 * ((uint64_t)x25 * x57)) + (((uint64_t)x27 * x55) + ((0x2 * ((uint64_t)x29 * x53)) + (((uint64_t)x31 * x51) + ((0x2 * ((uint64_t)x33 * x49)) + (((uint64_t)x35 * x47) + (0x2 * ((uint64_t)x34 * x45))))))))))))))));
- uint64_t x82 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + ((uint64_t)x9 * x37))) + (0xbb * (((uint64_t)x11 * x66) + (((uint64_t)x13 * x67) + (((uint64_t)x15 * x65) + (((uint64_t)x17 * x63) + (((uint64_t)x19 * x61) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + (((uint64_t)x31 * x49) + (((uint64_t)x33 * x47) + (((uint64_t)x35 * x45) + ((uint64_t)x34 * x43))))))))))))))));
- uint64_t x83 = ((((uint64_t)x5 * x39) + ((uint64_t)x7 * x37)) + (0xbb * ((0x2 * ((uint64_t)x9 * x66)) + (((uint64_t)x11 * x67) + ((0x2 * ((uint64_t)x13 * x65)) + (((uint64_t)x15 * x63) + ((0x2 * ((uint64_t)x17 * x61)) + (((uint64_t)x19 * x59) + ((0x2 * ((uint64_t)x21 * x57)) + (((uint64_t)x23 * x55) + ((0x2 * ((uint64_t)x25 * x53)) + (((uint64_t)x27 * x51) + ((0x2 * ((uint64_t)x29 * x49)) + (((uint64_t)x31 * x47) + ((0x2 * ((uint64_t)x33 * x45)) + (((uint64_t)x35 * x43) + (0x2 * ((uint64_t)x34 * x41))))))))))))))))));
- uint64_t x84 = (((uint64_t)x5 * x37) + (0xbb * ((0x2 * ((uint64_t)x7 * x66)) + ((0x2 * ((uint64_t)x9 * x67)) + ((0x2 * ((uint64_t)x11 * x65)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + ((0x2 * ((uint64_t)x35 * x41)) + (0x2 * ((uint64_t)x34 * x39)))))))))))))))))));
- uint64_t x85 = (x84 >> 0x17);
- uint32_t x86 = ((uint32_t)x84 & 0x7fffff);
- uint64_t x87 = (x85 + x83);
- uint64_t x88 = (x87 >> 0x17);
- uint32_t x89 = ((uint32_t)x87 & 0x7fffff);
- uint64_t x90 = (x88 + x82);
- uint64_t x91 = (x90 >> 0x16);
- uint32_t x92 = ((uint32_t)x90 & 0x3fffff);
- uint64_t x93 = (x91 + x81);
- uint64_t x94 = (x93 >> 0x17);
- uint32_t x95 = ((uint32_t)x93 & 0x7fffff);
- uint64_t x96 = (x94 + x80);
- uint64_t x97 = (x96 >> 0x16);
- uint32_t x98 = ((uint32_t)x96 & 0x3fffff);
- uint64_t x99 = (x97 + x79);
- uint64_t x100 = (x99 >> 0x17);
- uint32_t x101 = ((uint32_t)x99 & 0x7fffff);
- uint64_t x102 = (x100 + x78);
- uint64_t x103 = (x102 >> 0x16);
- uint32_t x104 = ((uint32_t)x102 & 0x3fffff);
- uint64_t x105 = (x103 + x77);
- uint64_t x106 = (x105 >> 0x17);
- uint32_t x107 = ((uint32_t)x105 & 0x7fffff);
- uint64_t x108 = (x106 + x76);
- uint64_t x109 = (x108 >> 0x16);
- uint32_t x110 = ((uint32_t)x108 & 0x3fffff);
- uint64_t x111 = (x109 + x75);
- uint64_t x112 = (x111 >> 0x17);
- uint32_t x113 = ((uint32_t)x111 & 0x7fffff);
- uint64_t x114 = (x112 + x74);
- uint64_t x115 = (x114 >> 0x16);
- uint32_t x116 = ((uint32_t)x114 & 0x3fffff);
- uint64_t x117 = (x115 + x73);
- uint64_t x118 = (x117 >> 0x17);
- uint32_t x119 = ((uint32_t)x117 & 0x7fffff);
- uint64_t x120 = (x118 + x72);
- uint64_t x121 = (x120 >> 0x16);
- uint32_t x122 = ((uint32_t)x120 & 0x3fffff);
- uint64_t x123 = (x121 + x71);
- uint64_t x124 = (x123 >> 0x17);
- uint32_t x125 = ((uint32_t)x123 & 0x7fffff);
- uint64_t x126 = (x124 + x70);
- uint64_t x127 = (x126 >> 0x16);
- uint32_t x128 = ((uint32_t)x126 & 0x3fffff);
- uint64_t x129 = (x127 + x69);
- uint64_t x130 = (x129 >> 0x17);
- uint32_t x131 = ((uint32_t)x129 & 0x7fffff);
- uint64_t x132 = (x130 + x68);
- uint32_t x133 = (uint32_t) (x132 >> 0x16);
- uint32_t x134 = ((uint32_t)x132 & 0x3fffff);
- uint64_t x135 = (x86 + ((uint64_t)0xbb * x133));
- uint32_t x136 = (uint32_t) (x135 >> 0x17);
- uint32_t x137 = ((uint32_t)x135 & 0x7fffff);
- uint32_t x138 = (x136 + x89);
- uint32_t x139 = (x138 >> 0x17);
- uint32_t x140 = (x138 & 0x7fffff);
- return (Return x134, Return x131, Return x128, Return x125, Return x122, Return x119, Return x116, Return x113, Return x110, Return x107, Return x104, Return x101, Return x98, Return x95, (x139 + x92), Return x140, Return x137))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m187_17limbs/femulDisplay.v b/src/Specific/solinas32_2e383m187_17limbs/femulDisplay.v
deleted file mode 100644
index c20d51a59..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m187_17limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e383m187_17limbs/fesquare.c b/src/Specific/solinas32_2e383m187_17limbs/fesquare.c
deleted file mode 100644
index 4d1dd108a..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/fesquare.c
+++ /dev/null
@@ -1,110 +0,0 @@
-static void fesquare(uint32_t out[17], const uint32_t in1[17]) {
- { const uint32_t x31 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x33 = (((uint64_t)x2 * x31) + (((uint64_t)x4 * x32) + ((0x2 * ((uint64_t)x6 * x30)) + (((uint64_t)x8 * x28) + ((0x2 * ((uint64_t)x10 * x26)) + (((uint64_t)x12 * x24) + ((0x2 * ((uint64_t)x14 * x22)) + (((uint64_t)x16 * x20) + ((0x2 * ((uint64_t)x18 * x18)) + (((uint64_t)x20 * x16) + ((0x2 * ((uint64_t)x22 * x14)) + (((uint64_t)x24 * x12) + ((0x2 * ((uint64_t)x26 * x10)) + (((uint64_t)x28 * x8) + ((0x2 * ((uint64_t)x30 * x6)) + (((uint64_t)x32 * x4) + ((uint64_t)x31 * x2)))))))))))))))));
- { uint64_t x34 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0xbb * (0x2 * ((uint64_t)x31 * x31))));
- { uint64_t x35 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + ((0x2 * ((uint64_t)x6 * x26)) + (((uint64_t)x8 * x24) + ((0x2 * ((uint64_t)x10 * x22)) + (((uint64_t)x12 * x20) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + (((uint64_t)x20 * x12) + ((0x2 * ((uint64_t)x22 * x10)) + (((uint64_t)x24 * x8) + ((0x2 * ((uint64_t)x26 * x6)) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0xbb * (((uint64_t)x32 * x31) + ((uint64_t)x31 * x32))));
- { uint64_t x36 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0xbb * ((0x2 * ((uint64_t)x30 * x31)) + (((uint64_t)x32 * x32) + (0x2 * ((uint64_t)x31 * x30))))));
- { uint64_t x37 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0xbb * (((uint64_t)x28 * x31) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + ((uint64_t)x31 * x28))))));
- { uint64_t x38 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0xbb * ((0x2 * ((uint64_t)x26 * x31)) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + (0x2 * ((uint64_t)x31 * x26))))))));
- { uint64_t x39 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + ((0x2 * ((uint64_t)x6 * x18)) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + ((0x2 * ((uint64_t)x18 * x6)) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0xbb * (((uint64_t)x24 * x31) + (((uint64_t)x26 * x32) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (((uint64_t)x32 * x26) + ((uint64_t)x31 * x24))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0xbb * ((0x2 * ((uint64_t)x22 * x31)) + (((uint64_t)x24 * x32) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + (((uint64_t)x32 * x24) + (0x2 * ((uint64_t)x31 * x22))))))))));
- { uint64_t x41 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0xbb * (((uint64_t)x20 * x31) + (((uint64_t)x22 * x32) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + (((uint64_t)x32 * x22) + ((uint64_t)x31 * x20))))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0xbb * ((0x2 * ((uint64_t)x18 * x31)) + (((uint64_t)x20 * x32) + ((0x2 * ((uint64_t)x22 * x30)) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + ((0x2 * ((uint64_t)x30 * x22)) + (((uint64_t)x32 * x20) + (0x2 * ((uint64_t)x31 * x18))))))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0xbb * (((uint64_t)x16 * x31) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + ((uint64_t)x31 * x16))))))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0xbb * ((0x2 * ((uint64_t)x14 * x31)) + (((uint64_t)x16 * x32) + ((0x2 * ((uint64_t)x18 * x30)) + (((uint64_t)x20 * x28) + ((0x2 * ((uint64_t)x22 * x26)) + (((uint64_t)x24 * x24) + ((0x2 * ((uint64_t)x26 * x22)) + (((uint64_t)x28 * x20) + ((0x2 * ((uint64_t)x30 * x18)) + (((uint64_t)x32 * x16) + (0x2 * ((uint64_t)x31 * x14))))))))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0xbb * (((uint64_t)x12 * x31) + (((uint64_t)x14 * x32) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + (((uint64_t)x32 * x14) + ((uint64_t)x31 * x12))))))))))))));
- { uint64_t x46 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0xbb * ((0x2 * ((uint64_t)x10 * x31)) + (((uint64_t)x12 * x32) + ((0x2 * ((uint64_t)x14 * x30)) + (((uint64_t)x16 * x28) + ((0x2 * ((uint64_t)x18 * x26)) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + ((0x2 * ((uint64_t)x26 * x18)) + (((uint64_t)x28 * x16) + ((0x2 * ((uint64_t)x30 * x14)) + (((uint64_t)x32 * x12) + (0x2 * ((uint64_t)x31 * x10))))))))))))))));
- { uint64_t x47 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0xbb * (((uint64_t)x8 * x31) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + ((uint64_t)x31 * x8))))))))))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xbb * ((0x2 * ((uint64_t)x6 * x31)) + (((uint64_t)x8 * x32) + ((0x2 * ((uint64_t)x10 * x30)) + (((uint64_t)x12 * x28) + ((0x2 * ((uint64_t)x14 * x26)) + (((uint64_t)x16 * x24) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + (((uint64_t)x24 * x16) + ((0x2 * ((uint64_t)x26 * x14)) + (((uint64_t)x28 * x12) + ((0x2 * ((uint64_t)x30 * x10)) + (((uint64_t)x32 * x8) + (0x2 * ((uint64_t)x31 * x6))))))))))))))))));
- { uint64_t x49 = (((uint64_t)x2 * x2) + (0xbb * ((0x2 * ((uint64_t)x4 * x31)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + (0x2 * ((uint64_t)x31 * x4)))))))))))))))))));
- { uint64_t x50 = (x49 >> 0x17);
- { uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- { uint64_t x52 = (x50 + x48);
- { uint64_t x53 = (x52 >> 0x17);
- { uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- { uint64_t x55 = (x53 + x47);
- { uint64_t x56 = (x55 >> 0x16);
- { uint32_t x57 = ((uint32_t)x55 & 0x3fffff);
- { uint64_t x58 = (x56 + x46);
- { uint64_t x59 = (x58 >> 0x17);
- { uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- { uint64_t x61 = (x59 + x45);
- { uint64_t x62 = (x61 >> 0x16);
- { uint32_t x63 = ((uint32_t)x61 & 0x3fffff);
- { uint64_t x64 = (x62 + x44);
- { uint64_t x65 = (x64 >> 0x17);
- { uint32_t x66 = ((uint32_t)x64 & 0x7fffff);
- { uint64_t x67 = (x65 + x43);
- { uint64_t x68 = (x67 >> 0x16);
- { uint32_t x69 = ((uint32_t)x67 & 0x3fffff);
- { uint64_t x70 = (x68 + x42);
- { uint64_t x71 = (x70 >> 0x17);
- { uint32_t x72 = ((uint32_t)x70 & 0x7fffff);
- { uint64_t x73 = (x71 + x41);
- { uint64_t x74 = (x73 >> 0x16);
- { uint32_t x75 = ((uint32_t)x73 & 0x3fffff);
- { uint64_t x76 = (x74 + x40);
- { uint64_t x77 = (x76 >> 0x17);
- { uint32_t x78 = ((uint32_t)x76 & 0x7fffff);
- { uint64_t x79 = (x77 + x39);
- { uint64_t x80 = (x79 >> 0x16);
- { uint32_t x81 = ((uint32_t)x79 & 0x3fffff);
- { uint64_t x82 = (x80 + x38);
- { uint64_t x83 = (x82 >> 0x17);
- { uint32_t x84 = ((uint32_t)x82 & 0x7fffff);
- { uint64_t x85 = (x83 + x37);
- { uint64_t x86 = (x85 >> 0x16);
- { uint32_t x87 = ((uint32_t)x85 & 0x3fffff);
- { uint64_t x88 = (x86 + x36);
- { uint64_t x89 = (x88 >> 0x17);
- { uint32_t x90 = ((uint32_t)x88 & 0x7fffff);
- { uint64_t x91 = (x89 + x35);
- { uint64_t x92 = (x91 >> 0x16);
- { uint32_t x93 = ((uint32_t)x91 & 0x3fffff);
- { uint64_t x94 = (x92 + x34);
- { uint64_t x95 = (x94 >> 0x17);
- { uint32_t x96 = ((uint32_t)x94 & 0x7fffff);
- { uint64_t x97 = (x95 + x33);
- { uint32_t x98 = (uint32_t) (x97 >> 0x16);
- { uint32_t x99 = ((uint32_t)x97 & 0x3fffff);
- { uint64_t x100 = (x51 + ((uint64_t)0xbb * x98));
- { uint32_t x101 = (uint32_t) (x100 >> 0x17);
- { uint32_t x102 = ((uint32_t)x100 & 0x7fffff);
- { uint32_t x103 = (x101 + x54);
- { uint32_t x104 = (x103 >> 0x17);
- { uint32_t x105 = (x103 & 0x7fffff);
- out[0] = x102;
- out[1] = x105;
- out[2] = (x104 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- out[10] = x81;
- out[11] = x84;
- out[12] = x87;
- out[13] = x90;
- out[14] = x93;
- out[15] = x96;
- out[16] = x99;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m187_17limbs/fesquare.v b/src/Specific/solinas32_2e383m187_17limbs/fesquare.v
deleted file mode 100644
index 57298dac9..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m187_17limbs.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_2e383m187_17limbs/fesquareDisplay.log b/src/Specific/solinas32_2e383m187_17limbs/fesquareDisplay.log
deleted file mode 100644
index 33739de8b..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,80 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x31, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x33 = (((uint64_t)x2 * x31) + (((uint64_t)x4 * x32) + ((0x2 * ((uint64_t)x6 * x30)) + (((uint64_t)x8 * x28) + ((0x2 * ((uint64_t)x10 * x26)) + (((uint64_t)x12 * x24) + ((0x2 * ((uint64_t)x14 * x22)) + (((uint64_t)x16 * x20) + ((0x2 * ((uint64_t)x18 * x18)) + (((uint64_t)x20 * x16) + ((0x2 * ((uint64_t)x22 * x14)) + (((uint64_t)x24 * x12) + ((0x2 * ((uint64_t)x26 * x10)) + (((uint64_t)x28 * x8) + ((0x2 * ((uint64_t)x30 * x6)) + (((uint64_t)x32 * x4) + ((uint64_t)x31 * x2)))))))))))))))));
- uint64_t x34 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0xbb * (0x2 * ((uint64_t)x31 * x31))));
- uint64_t x35 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + ((0x2 * ((uint64_t)x6 * x26)) + (((uint64_t)x8 * x24) + ((0x2 * ((uint64_t)x10 * x22)) + (((uint64_t)x12 * x20) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + (((uint64_t)x20 * x12) + ((0x2 * ((uint64_t)x22 * x10)) + (((uint64_t)x24 * x8) + ((0x2 * ((uint64_t)x26 * x6)) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0xbb * (((uint64_t)x32 * x31) + ((uint64_t)x31 * x32))));
- uint64_t x36 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0xbb * ((0x2 * ((uint64_t)x30 * x31)) + (((uint64_t)x32 * x32) + (0x2 * ((uint64_t)x31 * x30))))));
- uint64_t x37 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0xbb * (((uint64_t)x28 * x31) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + ((uint64_t)x31 * x28))))));
- uint64_t x38 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0xbb * ((0x2 * ((uint64_t)x26 * x31)) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + (0x2 * ((uint64_t)x31 * x26))))))));
- uint64_t x39 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + ((0x2 * ((uint64_t)x6 * x18)) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + ((0x2 * ((uint64_t)x18 * x6)) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0xbb * (((uint64_t)x24 * x31) + (((uint64_t)x26 * x32) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (((uint64_t)x32 * x26) + ((uint64_t)x31 * x24))))))));
- uint64_t x40 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0xbb * ((0x2 * ((uint64_t)x22 * x31)) + (((uint64_t)x24 * x32) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + (((uint64_t)x32 * x24) + (0x2 * ((uint64_t)x31 * x22))))))))));
- uint64_t x41 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0xbb * (((uint64_t)x20 * x31) + (((uint64_t)x22 * x32) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + (((uint64_t)x32 * x22) + ((uint64_t)x31 * x20))))))))));
- uint64_t x42 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0xbb * ((0x2 * ((uint64_t)x18 * x31)) + (((uint64_t)x20 * x32) + ((0x2 * ((uint64_t)x22 * x30)) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + ((0x2 * ((uint64_t)x30 * x22)) + (((uint64_t)x32 * x20) + (0x2 * ((uint64_t)x31 * x18))))))))))));
- uint64_t x43 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0xbb * (((uint64_t)x16 * x31) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + ((uint64_t)x31 * x16))))))))))));
- uint64_t x44 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0xbb * ((0x2 * ((uint64_t)x14 * x31)) + (((uint64_t)x16 * x32) + ((0x2 * ((uint64_t)x18 * x30)) + (((uint64_t)x20 * x28) + ((0x2 * ((uint64_t)x22 * x26)) + (((uint64_t)x24 * x24) + ((0x2 * ((uint64_t)x26 * x22)) + (((uint64_t)x28 * x20) + ((0x2 * ((uint64_t)x30 * x18)) + (((uint64_t)x32 * x16) + (0x2 * ((uint64_t)x31 * x14))))))))))))));
- uint64_t x45 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0xbb * (((uint64_t)x12 * x31) + (((uint64_t)x14 * x32) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + (((uint64_t)x32 * x14) + ((uint64_t)x31 * x12))))))))))))));
- uint64_t x46 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0xbb * ((0x2 * ((uint64_t)x10 * x31)) + (((uint64_t)x12 * x32) + ((0x2 * ((uint64_t)x14 * x30)) + (((uint64_t)x16 * x28) + ((0x2 * ((uint64_t)x18 * x26)) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + ((0x2 * ((uint64_t)x26 * x18)) + (((uint64_t)x28 * x16) + ((0x2 * ((uint64_t)x30 * x14)) + (((uint64_t)x32 * x12) + (0x2 * ((uint64_t)x31 * x10))))))))))))))));
- uint64_t x47 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0xbb * (((uint64_t)x8 * x31) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + ((uint64_t)x31 * x8))))))))))))))));
- uint64_t x48 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xbb * ((0x2 * ((uint64_t)x6 * x31)) + (((uint64_t)x8 * x32) + ((0x2 * ((uint64_t)x10 * x30)) + (((uint64_t)x12 * x28) + ((0x2 * ((uint64_t)x14 * x26)) + (((uint64_t)x16 * x24) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + (((uint64_t)x24 * x16) + ((0x2 * ((uint64_t)x26 * x14)) + (((uint64_t)x28 * x12) + ((0x2 * ((uint64_t)x30 * x10)) + (((uint64_t)x32 * x8) + (0x2 * ((uint64_t)x31 * x6))))))))))))))))));
- uint64_t x49 = (((uint64_t)x2 * x2) + (0xbb * ((0x2 * ((uint64_t)x4 * x31)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + (0x2 * ((uint64_t)x31 * x4)))))))))))))))))));
- uint64_t x50 = (x49 >> 0x17);
- uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- uint64_t x52 = (x50 + x48);
- uint64_t x53 = (x52 >> 0x17);
- uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- uint64_t x55 = (x53 + x47);
- uint64_t x56 = (x55 >> 0x16);
- uint32_t x57 = ((uint32_t)x55 & 0x3fffff);
- uint64_t x58 = (x56 + x46);
- uint64_t x59 = (x58 >> 0x17);
- uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- uint64_t x61 = (x59 + x45);
- uint64_t x62 = (x61 >> 0x16);
- uint32_t x63 = ((uint32_t)x61 & 0x3fffff);
- uint64_t x64 = (x62 + x44);
- uint64_t x65 = (x64 >> 0x17);
- uint32_t x66 = ((uint32_t)x64 & 0x7fffff);
- uint64_t x67 = (x65 + x43);
- uint64_t x68 = (x67 >> 0x16);
- uint32_t x69 = ((uint32_t)x67 & 0x3fffff);
- uint64_t x70 = (x68 + x42);
- uint64_t x71 = (x70 >> 0x17);
- uint32_t x72 = ((uint32_t)x70 & 0x7fffff);
- uint64_t x73 = (x71 + x41);
- uint64_t x74 = (x73 >> 0x16);
- uint32_t x75 = ((uint32_t)x73 & 0x3fffff);
- uint64_t x76 = (x74 + x40);
- uint64_t x77 = (x76 >> 0x17);
- uint32_t x78 = ((uint32_t)x76 & 0x7fffff);
- uint64_t x79 = (x77 + x39);
- uint64_t x80 = (x79 >> 0x16);
- uint32_t x81 = ((uint32_t)x79 & 0x3fffff);
- uint64_t x82 = (x80 + x38);
- uint64_t x83 = (x82 >> 0x17);
- uint32_t x84 = ((uint32_t)x82 & 0x7fffff);
- uint64_t x85 = (x83 + x37);
- uint64_t x86 = (x85 >> 0x16);
- uint32_t x87 = ((uint32_t)x85 & 0x3fffff);
- uint64_t x88 = (x86 + x36);
- uint64_t x89 = (x88 >> 0x17);
- uint32_t x90 = ((uint32_t)x88 & 0x7fffff);
- uint64_t x91 = (x89 + x35);
- uint64_t x92 = (x91 >> 0x16);
- uint32_t x93 = ((uint32_t)x91 & 0x3fffff);
- uint64_t x94 = (x92 + x34);
- uint64_t x95 = (x94 >> 0x17);
- uint32_t x96 = ((uint32_t)x94 & 0x7fffff);
- uint64_t x97 = (x95 + x33);
- uint32_t x98 = (uint32_t) (x97 >> 0x16);
- uint32_t x99 = ((uint32_t)x97 & 0x3fffff);
- uint64_t x100 = (x51 + ((uint64_t)0xbb * x98));
- uint32_t x101 = (uint32_t) (x100 >> 0x17);
- uint32_t x102 = ((uint32_t)x100 & 0x7fffff);
- uint32_t x103 = (x101 + x54);
- uint32_t x104 = (x103 >> 0x17);
- uint32_t x105 = (x103 & 0x7fffff);
- return (Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x104 + x57), Return x105, Return x102))
-x
- : word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m187_17limbs/fesquareDisplay.v b/src/Specific/solinas32_2e383m187_17limbs/fesquareDisplay.v
deleted file mode 100644
index 3fbccec5c..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m187_17limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e383m187_17limbs/fesub.c b/src/Specific/solinas32_2e383m187_17limbs/fesub.c
deleted file mode 100644
index e9b4888bf..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/fesub.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void fesub(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- out[0] = ((0xfffe8a + x5) - x37);
- out[1] = ((0xfffffe + x7) - x39);
- out[2] = ((0x7ffffe + x9) - x41);
- out[3] = ((0xfffffe + x11) - x43);
- out[4] = ((0x7ffffe + x13) - x45);
- out[5] = ((0xfffffe + x15) - x47);
- out[6] = ((0x7ffffe + x17) - x49);
- out[7] = ((0xfffffe + x19) - x51);
- out[8] = ((0x7ffffe + x21) - x53);
- out[9] = ((0xfffffe + x23) - x55);
- out[10] = ((0x7ffffe + x25) - x57);
- out[11] = ((0xfffffe + x27) - x59);
- out[12] = ((0x7ffffe + x29) - x61);
- out[13] = ((0xfffffe + x31) - x63);
- out[14] = ((0x7ffffe + x33) - x65);
- out[15] = ((0xfffffe + x35) - x67);
- out[16] = ((0x7ffffe + x34) - x66);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m187_17limbs/fesub.v b/src/Specific/solinas32_2e383m187_17limbs/fesub.v
deleted file mode 100644
index 902fe6a62..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m187_17limbs.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_2e383m187_17limbs/fesubDisplay.log b/src/Specific/solinas32_2e383m187_17limbs/fesubDisplay.log
deleted file mode 100644
index 1a8f2a3de..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- (((0x7ffffe + x34) - x66), ((0xfffffe + x35) - x67), ((0x7ffffe + x33) - x65), ((0xfffffe + x31) - x63), ((0x7ffffe + x29) - x61), ((0xfffffe + x27) - x59), ((0x7ffffe + x25) - x57), ((0xfffffe + x23) - x55), ((0x7ffffe + x21) - x53), ((0xfffffe + x19) - x51), ((0x7ffffe + x17) - x49), ((0xfffffe + x15) - x47), ((0x7ffffe + x13) - x45), ((0xfffffe + x11) - x43), ((0x7ffffe + x9) - x41), ((0xfffffe + x7) - x39), ((0xfffe8a + x5) - x37)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m187_17limbs/fesubDisplay.v b/src/Specific/solinas32_2e383m187_17limbs/fesubDisplay.v
deleted file mode 100644
index 9401a4725..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m187_17limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e383m187_17limbs/freeze.c b/src/Specific/solinas32_2e383m187_17limbs/freeze.c
deleted file mode 100644
index af9e61e11..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/freeze.c
+++ /dev/null
@@ -1,89 +0,0 @@
-static void freeze(uint32_t out[17], const uint32_t in1[17]) {
- { const uint32_t x31 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fff45);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x4, 0x7fffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x6, 0x3fffff);
- { uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x8, 0x7fffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x10, 0x3fffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x12, 0x7fffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x14, 0x3fffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x16, 0x7fffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x18, 0x3fffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x20, 0x7fffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x22, 0x3fffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x24, 0x7fffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x26, 0x3fffff);
- { uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x28, 0x7fffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x30, 0x3fffff);
- { uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x32, 0x7fffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x31, 0x3fffff);
- { uint32_t x84 = cmovznz32(x83, 0x0, 0xffffffff);
- { uint32_t x85 = (x84 & 0x7fff45);
- { uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x34, Return x85);
- { uint32_t x89 = (x84 & 0x7fffff);
- { uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x37, Return x89);
- { uint32_t x93 = (x84 & 0x3fffff);
- { uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x40, Return x93);
- { uint32_t x97 = (x84 & 0x7fffff);
- { uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x43, Return x97);
- { uint32_t x101 = (x84 & 0x3fffff);
- { uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x46, Return x101);
- { uint32_t x105 = (x84 & 0x7fffff);
- { uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x49, Return x105);
- { uint32_t x109 = (x84 & 0x3fffff);
- { uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x52, Return x109);
- { uint32_t x113 = (x84 & 0x7fffff);
- { uint32_t x115, uint8_t x116 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x55, Return x113);
- { uint32_t x117 = (x84 & 0x3fffff);
- { uint32_t x119, uint8_t x120 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x116, Return x58, Return x117);
- { uint32_t x121 = (x84 & 0x7fffff);
- { uint32_t x123, uint8_t x124 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x120, Return x61, Return x121);
- { uint32_t x125 = (x84 & 0x3fffff);
- { uint32_t x127, uint8_t x128 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x124, Return x64, Return x125);
- { uint32_t x129 = (x84 & 0x7fffff);
- { uint32_t x131, uint8_t x132 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x128, Return x67, Return x129);
- { uint32_t x133 = (x84 & 0x3fffff);
- { uint32_t x135, uint8_t x136 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x132, Return x70, Return x133);
- { uint32_t x137 = (x84 & 0x7fffff);
- { uint32_t x139, uint8_t x140 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x136, Return x73, Return x137);
- { uint32_t x141 = (x84 & 0x3fffff);
- { uint32_t x143, uint8_t x144 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x140, Return x76, Return x141);
- { uint32_t x145 = (x84 & 0x7fffff);
- { uint32_t x147, uint8_t x148 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x144, Return x79, Return x145);
- { uint32_t x149 = (x84 & 0x3fffff);
- { uint32_t x151, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x148, Return x82, Return x149);
- out[0] = x87;
- out[1] = x91;
- out[2] = x95;
- out[3] = x99;
- out[4] = x103;
- out[5] = x107;
- out[6] = x111;
- out[7] = x115;
- out[8] = x119;
- out[9] = x123;
- out[10] = x127;
- out[11] = x131;
- out[12] = x135;
- out[13] = x139;
- out[14] = x143;
- out[15] = x147;
- out[16] = x151;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m187_17limbs/freeze.v b/src/Specific/solinas32_2e383m187_17limbs/freeze.v
deleted file mode 100644
index 208b23b34..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m187_17limbs.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_2e383m187_17limbs/freezeDisplay.log b/src/Specific/solinas32_2e383m187_17limbs/freezeDisplay.log
deleted file mode 100644
index fa254adf1..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/freezeDisplay.log
+++ /dev/null
@@ -1,59 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x31, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fff45);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x4, 0x7fffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x6, 0x3fffff);
- uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x8, 0x7fffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x10, 0x3fffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x12, 0x7fffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x14, 0x3fffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x16, 0x7fffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x18, 0x3fffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x20, 0x7fffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x22, 0x3fffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x24, 0x7fffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x26, 0x3fffff);
- uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x28, 0x7fffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x30, 0x3fffff);
- uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x32, 0x7fffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x31, 0x3fffff);
- uint32_t x84 = cmovznz32(x83, 0x0, 0xffffffff);
- uint32_t x85 = (x84 & 0x7fff45);
- uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x34, Return x85);
- uint32_t x89 = (x84 & 0x7fffff);
- uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x37, Return x89);
- uint32_t x93 = (x84 & 0x3fffff);
- uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x40, Return x93);
- uint32_t x97 = (x84 & 0x7fffff);
- uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x43, Return x97);
- uint32_t x101 = (x84 & 0x3fffff);
- uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x46, Return x101);
- uint32_t x105 = (x84 & 0x7fffff);
- uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x49, Return x105);
- uint32_t x109 = (x84 & 0x3fffff);
- uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x52, Return x109);
- uint32_t x113 = (x84 & 0x7fffff);
- uint32_t x115, uint8_t x116 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x55, Return x113);
- uint32_t x117 = (x84 & 0x3fffff);
- uint32_t x119, uint8_t x120 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x116, Return x58, Return x117);
- uint32_t x121 = (x84 & 0x7fffff);
- uint32_t x123, uint8_t x124 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x120, Return x61, Return x121);
- uint32_t x125 = (x84 & 0x3fffff);
- uint32_t x127, uint8_t x128 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x124, Return x64, Return x125);
- uint32_t x129 = (x84 & 0x7fffff);
- uint32_t x131, uint8_t x132 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x128, Return x67, Return x129);
- uint32_t x133 = (x84 & 0x3fffff);
- uint32_t x135, uint8_t x136 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x132, Return x70, Return x133);
- uint32_t x137 = (x84 & 0x7fffff);
- uint32_t x139, uint8_t x140 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x136, Return x73, Return x137);
- uint32_t x141 = (x84 & 0x3fffff);
- uint32_t x143, uint8_t x144 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x140, Return x76, Return x141);
- uint32_t x145 = (x84 & 0x7fffff);
- uint32_t x147, uint8_t x148 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x144, Return x79, Return x145);
- uint32_t x149 = (x84 & 0x3fffff);
- uint32_t x151, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x148, Return x82, Return x149);
- (Return x151, Return x147, Return x143, Return x139, Return x135, Return x131, Return x127, Return x123, Return x119, Return x115, Return x111, Return x107, Return x103, Return x99, Return x95, Return x91, Return x87))
-x
- : word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m187_17limbs/freezeDisplay.v b/src/Specific/solinas32_2e383m187_17limbs/freezeDisplay.v
deleted file mode 100644
index dc20af24d..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m187_17limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e383m187_17limbs/py_interpreter.sh b/src/Specific/solinas32_2e383m187_17limbs/py_interpreter.sh
deleted file mode 100755
index f1a7ab21a..000000000
--- a/src/Specific/solinas32_2e383m187_17limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**383 - 187' -Dmodulus_bytes='22 + 9/17' -Da24='121665'
diff --git a/src/Specific/solinas32_2e383m31_15limbs/CurveParameters.v b/src/Specific/solinas32_2e383m31_15limbs/CurveParameters.v
deleted file mode 100644
index ab96240c7..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^383 - 31
-Base: 25 + 8/15
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 15%nat;
- base := 25 + 8/15;
- bitwidth := 32;
- s := 2^383;
- c := [(1, 31)];
- carry_chains := Some [seq 0 (pred 15); [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_2e383m31_15limbs/Synthesis.v b/src/Specific/solinas32_2e383m31_15limbs/Synthesis.v
deleted file mode 100644
index 7f4c9e380..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e383m31_15limbs.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_2e383m31_15limbs/compiler.sh b/src/Specific/solinas32_2e383m31_15limbs/compiler.sh
deleted file mode 100755
index 613482146..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,25,26,25,26,25,26,25,26,25,26,25,26,25}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<383) - 31' "$@"
diff --git a/src/Specific/solinas32_2e383m31_15limbs/compilerxx.sh b/src/Specific/solinas32_2e383m31_15limbs/compilerxx.sh
deleted file mode 100755
index beaad94ab..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,25,26,25,26,25,26,25,26,25,26,25,26,25}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<383) - 31' "$@"
diff --git a/src/Specific/solinas32_2e383m31_15limbs/feadd.c b/src/Specific/solinas32_2e383m31_15limbs/feadd.c
deleted file mode 100644
index 72a59425b..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/feadd.c
+++ /dev/null
@@ -1,48 +0,0 @@
-static void feadd(uint32_t out[15], const uint32_t in1[15], const uint32_t in2[15]) {
- { const uint32_t x30 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x58 = in2[14];
- { const uint32_t x59 = in2[13];
- { const uint32_t x57 = in2[12];
- { const uint32_t x55 = in2[11];
- { const uint32_t x53 = in2[10];
- { const uint32_t x51 = in2[9];
- { const uint32_t x49 = in2[8];
- { const uint32_t x47 = in2[7];
- { const uint32_t x45 = in2[6];
- { const uint32_t x43 = in2[5];
- { const uint32_t x41 = in2[4];
- { const uint32_t x39 = in2[3];
- { const uint32_t x37 = in2[2];
- { const uint32_t x35 = in2[1];
- { const uint32_t x33 = in2[0];
- out[0] = (x5 + x33);
- out[1] = (x7 + x35);
- out[2] = (x9 + x37);
- out[3] = (x11 + x39);
- out[4] = (x13 + x41);
- out[5] = (x15 + x43);
- out[6] = (x17 + x45);
- out[7] = (x19 + x47);
- out[8] = (x21 + x49);
- out[9] = (x23 + x51);
- out[10] = (x25 + x53);
- out[11] = (x27 + x55);
- out[12] = (x29 + x57);
- out[13] = (x31 + x59);
- out[14] = (x30 + x58);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m31_15limbs/feadd.v b/src/Specific/solinas32_2e383m31_15limbs/feadd.v
deleted file mode 100644
index 3d968e49f..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m31_15limbs.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_2e383m31_15limbs/feaddDisplay.log b/src/Specific/solinas32_2e383m31_15limbs/feaddDisplay.log
deleted file mode 100644
index 08d611628..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x30, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x58, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33))%core,
- ((x30 + x58), (x31 + x59), (x29 + x57), (x27 + x55), (x25 + x53), (x23 + x51), (x21 + x49), (x19 + x47), (x17 + x45), (x15 + x43), (x13 + x41), (x11 + x39), (x9 + x37), (x7 + x35), (x5 + x33)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m31_15limbs/feaddDisplay.v b/src/Specific/solinas32_2e383m31_15limbs/feaddDisplay.v
deleted file mode 100644
index 841e867fb..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m31_15limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e383m31_15limbs/fecarry.v b/src/Specific/solinas32_2e383m31_15limbs/fecarry.v
deleted file mode 100644
index 2120ea8db..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m31_15limbs.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_2e383m31_15limbs/fecarryDisplay.v b/src/Specific/solinas32_2e383m31_15limbs/fecarryDisplay.v
deleted file mode 100644
index 176c65a06..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m31_15limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e383m31_15limbs/femul.c b/src/Specific/solinas32_2e383m31_15limbs/femul.c
deleted file mode 100644
index 4e89d811b..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/femul.c
+++ /dev/null
@@ -1,113 +0,0 @@
-static void femul(uint32_t out[15], const uint32_t in1[15], const uint32_t in2[15]) {
- { const uint32_t x30 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x58 = in2[14];
- { const uint32_t x59 = in2[13];
- { const uint32_t x57 = in2[12];
- { const uint32_t x55 = in2[11];
- { const uint32_t x53 = in2[10];
- { const uint32_t x51 = in2[9];
- { const uint32_t x49 = in2[8];
- { const uint32_t x47 = in2[7];
- { const uint32_t x45 = in2[6];
- { const uint32_t x43 = in2[5];
- { const uint32_t x41 = in2[4];
- { const uint32_t x39 = in2[3];
- { const uint32_t x37 = in2[2];
- { const uint32_t x35 = in2[1];
- { const uint32_t x33 = in2[0];
- { uint64_t x60 = (((uint64_t)x5 * x58) + (((uint64_t)x7 * x59) + ((0x2 * ((uint64_t)x9 * x57)) + (((uint64_t)x11 * x55) + ((0x2 * ((uint64_t)x13 * x53)) + (((uint64_t)x15 * x51) + ((0x2 * ((uint64_t)x17 * x49)) + (((uint64_t)x19 * x47) + ((0x2 * ((uint64_t)x21 * x45)) + (((uint64_t)x23 * x43) + ((0x2 * ((uint64_t)x25 * x41)) + (((uint64_t)x27 * x39) + ((0x2 * ((uint64_t)x29 * x37)) + (((uint64_t)x31 * x35) + ((uint64_t)x30 * x33)))))))))))))));
- { uint64_t x61 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + ((0x2 * ((uint64_t)x27 * x37)) + ((0x2 * ((uint64_t)x29 * x35)) + ((uint64_t)x31 * x33)))))))))))))) + (0x1f * (0x2 * ((uint64_t)x30 * x58))));
- { uint64_t x62 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + ((0x2 * ((uint64_t)x9 * x53)) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + (((uint64_t)x15 * x47) + ((0x2 * ((uint64_t)x17 * x45)) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + (((uint64_t)x23 * x39) + ((0x2 * ((uint64_t)x25 * x37)) + (((uint64_t)x27 * x35) + ((uint64_t)x29 * x33))))))))))))) + (0x1f * (((uint64_t)x31 * x58) + ((uint64_t)x30 * x59))));
- { uint64_t x63 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((0x2 * ((uint64_t)x25 * x35)) + ((uint64_t)x27 * x33)))))))))))) + (0x1f * ((0x2 * ((uint64_t)x29 * x58)) + (((uint64_t)x31 * x59) + (0x2 * ((uint64_t)x30 * x57))))));
- { uint64_t x64 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + ((0x2 * ((uint64_t)x13 * x45)) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + (((uint64_t)x19 * x39) + ((0x2 * ((uint64_t)x21 * x37)) + (((uint64_t)x23 * x35) + ((uint64_t)x25 * x33))))))))))) + (0x1f * (((uint64_t)x27 * x58) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + ((uint64_t)x30 * x55))))));
- { uint64_t x65 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + ((0x2 * ((uint64_t)x21 * x35)) + ((uint64_t)x23 * x33)))))))))) + (0x1f * ((0x2 * ((uint64_t)x25 * x58)) + (((uint64_t)x27 * x59) + ((0x2 * ((uint64_t)x29 * x57)) + (((uint64_t)x31 * x55) + (0x2 * ((uint64_t)x30 * x53))))))));
- { uint64_t x66 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + ((0x2 * ((uint64_t)x9 * x45)) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + (((uint64_t)x15 * x39) + ((0x2 * ((uint64_t)x17 * x37)) + (((uint64_t)x19 * x35) + ((uint64_t)x21 * x33))))))))) + (0x1f * (((uint64_t)x23 * x58) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + ((uint64_t)x30 * x51))))))));
- { uint64_t x67 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((0x2 * ((uint64_t)x17 * x35)) + ((uint64_t)x19 * x33)))))))) + (0x1f * ((0x2 * ((uint64_t)x21 * x58)) + (((uint64_t)x23 * x59) + ((0x2 * ((uint64_t)x25 * x57)) + (((uint64_t)x27 * x55) + ((0x2 * ((uint64_t)x29 * x53)) + (((uint64_t)x31 * x51) + (0x2 * ((uint64_t)x30 * x49))))))))));
- { uint64_t x68 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + (((uint64_t)x11 * x39) + ((0x2 * ((uint64_t)x13 * x37)) + (((uint64_t)x15 * x35) + ((uint64_t)x17 * x33))))))) + (0x1f * (((uint64_t)x19 * x58) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + (((uint64_t)x31 * x49) + ((uint64_t)x30 * x47))))))))));
- { uint64_t x69 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + ((uint64_t)x15 * x33)))))) + (0x1f * ((0x2 * ((uint64_t)x17 * x58)) + (((uint64_t)x19 * x59) + ((0x2 * ((uint64_t)x21 * x57)) + (((uint64_t)x23 * x55) + ((0x2 * ((uint64_t)x25 * x53)) + (((uint64_t)x27 * x51) + ((0x2 * ((uint64_t)x29 * x49)) + (((uint64_t)x31 * x47) + (0x2 * ((uint64_t)x30 * x45))))))))))));
- { uint64_t x70 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + ((0x2 * ((uint64_t)x9 * x37)) + (((uint64_t)x11 * x35) + ((uint64_t)x13 * x33))))) + (0x1f * (((uint64_t)x15 * x58) + (((uint64_t)x17 * x59) + (((uint64_t)x19 * x57) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (((uint64_t)x29 * x47) + (((uint64_t)x31 * x45) + ((uint64_t)x30 * x43))))))))))));
- { uint64_t x71 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + ((uint64_t)x11 * x33)))) + (0x1f * ((0x2 * ((uint64_t)x13 * x58)) + (((uint64_t)x15 * x59) + ((0x2 * ((uint64_t)x17 * x57)) + (((uint64_t)x19 * x55) + ((0x2 * ((uint64_t)x21 * x53)) + (((uint64_t)x23 * x51) + ((0x2 * ((uint64_t)x25 * x49)) + (((uint64_t)x27 * x47) + ((0x2 * ((uint64_t)x29 * x45)) + (((uint64_t)x31 * x43) + (0x2 * ((uint64_t)x30 * x41))))))))))))));
- { uint64_t x72 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + ((uint64_t)x9 * x33))) + (0x1f * (((uint64_t)x11 * x58) + (((uint64_t)x13 * x59) + (((uint64_t)x15 * x57) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + (((uint64_t)x29 * x43) + (((uint64_t)x31 * x41) + ((uint64_t)x30 * x39))))))))))))));
- { uint64_t x73 = ((((uint64_t)x5 * x35) + ((uint64_t)x7 * x33)) + (0x1f * ((0x2 * ((uint64_t)x9 * x58)) + (((uint64_t)x11 * x59) + ((0x2 * ((uint64_t)x13 * x57)) + (((uint64_t)x15 * x55) + ((0x2 * ((uint64_t)x17 * x53)) + (((uint64_t)x19 * x51) + ((0x2 * ((uint64_t)x21 * x49)) + (((uint64_t)x23 * x47) + ((0x2 * ((uint64_t)x25 * x45)) + (((uint64_t)x27 * x43) + ((0x2 * ((uint64_t)x29 * x41)) + (((uint64_t)x31 * x39) + (0x2 * ((uint64_t)x30 * x37))))))))))))))));
- { ℤ x74 = (((uint64_t)x5 * x33) +ℤ (0x1f *ℤ ((0x2 * ((uint64_t)x7 * x58)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + ((0x2 * ((uint64_t)x25 * x43)) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((0x2 * ((uint64_t)x31 * x37)) + (0x2 * ((uint64_t)x30 * x35)))))))))))))))));
- { uint64_t x75 = (x74 >> 0x1a);
- { uint32_t x76 = (x74 & 0x3ffffff);
- { uint64_t x77 = (x75 + x73);
- { uint64_t x78 = (x77 >> 0x1a);
- { uint32_t x79 = ((uint32_t)x77 & 0x3ffffff);
- { uint64_t x80 = (x78 + x72);
- { uint64_t x81 = (x80 >> 0x19);
- { uint32_t x82 = ((uint32_t)x80 & 0x1ffffff);
- { uint64_t x83 = (x81 + x71);
- { uint64_t x84 = (x83 >> 0x1a);
- { uint32_t x85 = ((uint32_t)x83 & 0x3ffffff);
- { uint64_t x86 = (x84 + x70);
- { uint64_t x87 = (x86 >> 0x19);
- { uint32_t x88 = ((uint32_t)x86 & 0x1ffffff);
- { uint64_t x89 = (x87 + x69);
- { uint64_t x90 = (x89 >> 0x1a);
- { uint32_t x91 = ((uint32_t)x89 & 0x3ffffff);
- { uint64_t x92 = (x90 + x68);
- { uint64_t x93 = (x92 >> 0x19);
- { uint32_t x94 = ((uint32_t)x92 & 0x1ffffff);
- { uint64_t x95 = (x93 + x67);
- { uint64_t x96 = (x95 >> 0x1a);
- { uint32_t x97 = ((uint32_t)x95 & 0x3ffffff);
- { uint64_t x98 = (x96 + x66);
- { uint64_t x99 = (x98 >> 0x19);
- { uint32_t x100 = ((uint32_t)x98 & 0x1ffffff);
- { uint64_t x101 = (x99 + x65);
- { uint64_t x102 = (x101 >> 0x1a);
- { uint32_t x103 = ((uint32_t)x101 & 0x3ffffff);
- { uint64_t x104 = (x102 + x64);
- { uint64_t x105 = (x104 >> 0x19);
- { uint32_t x106 = ((uint32_t)x104 & 0x1ffffff);
- { uint64_t x107 = (x105 + x63);
- { uint64_t x108 = (x107 >> 0x1a);
- { uint32_t x109 = ((uint32_t)x107 & 0x3ffffff);
- { uint64_t x110 = (x108 + x62);
- { uint64_t x111 = (x110 >> 0x19);
- { uint32_t x112 = ((uint32_t)x110 & 0x1ffffff);
- { uint64_t x113 = (x111 + x61);
- { uint64_t x114 = (x113 >> 0x1a);
- { uint32_t x115 = ((uint32_t)x113 & 0x3ffffff);
- { uint64_t x116 = (x114 + x60);
- { uint64_t x117 = (x116 >> 0x19);
- { uint32_t x118 = ((uint32_t)x116 & 0x1ffffff);
- { uint64_t x119 = (x76 + (0x1f * x117));
- { uint32_t x120 = (uint32_t) (x119 >> 0x1a);
- { uint32_t x121 = ((uint32_t)x119 & 0x3ffffff);
- { uint32_t x122 = (x120 + x79);
- { uint32_t x123 = (x122 >> 0x1a);
- { uint32_t x124 = (x122 & 0x3ffffff);
- out[0] = x121;
- out[1] = x124;
- out[2] = (x123 + x82);
- out[3] = x85;
- out[4] = x88;
- out[5] = x91;
- out[6] = x94;
- out[7] = x97;
- out[8] = x100;
- out[9] = x103;
- out[10] = x106;
- out[11] = x109;
- out[12] = x112;
- out[13] = x115;
- out[14] = x118;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m31_15limbs/femul.v b/src/Specific/solinas32_2e383m31_15limbs/femul.v
deleted file mode 100644
index 25f9c73a1..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m31_15limbs.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_2e383m31_15limbs/femulDisplay.log b/src/Specific/solinas32_2e383m31_15limbs/femulDisplay.log
deleted file mode 100644
index 56f135621..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/femulDisplay.log
+++ /dev/null
@@ -1,72 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x30, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x58, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33))%core,
- uint64_t x60 = (((uint64_t)x5 * x58) + (((uint64_t)x7 * x59) + ((0x2 * ((uint64_t)x9 * x57)) + (((uint64_t)x11 * x55) + ((0x2 * ((uint64_t)x13 * x53)) + (((uint64_t)x15 * x51) + ((0x2 * ((uint64_t)x17 * x49)) + (((uint64_t)x19 * x47) + ((0x2 * ((uint64_t)x21 * x45)) + (((uint64_t)x23 * x43) + ((0x2 * ((uint64_t)x25 * x41)) + (((uint64_t)x27 * x39) + ((0x2 * ((uint64_t)x29 * x37)) + (((uint64_t)x31 * x35) + ((uint64_t)x30 * x33)))))))))))))));
- uint64_t x61 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + ((0x2 * ((uint64_t)x27 * x37)) + ((0x2 * ((uint64_t)x29 * x35)) + ((uint64_t)x31 * x33)))))))))))))) + (0x1f * (0x2 * ((uint64_t)x30 * x58))));
- uint64_t x62 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + ((0x2 * ((uint64_t)x9 * x53)) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + (((uint64_t)x15 * x47) + ((0x2 * ((uint64_t)x17 * x45)) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + (((uint64_t)x23 * x39) + ((0x2 * ((uint64_t)x25 * x37)) + (((uint64_t)x27 * x35) + ((uint64_t)x29 * x33))))))))))))) + (0x1f * (((uint64_t)x31 * x58) + ((uint64_t)x30 * x59))));
- uint64_t x63 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((0x2 * ((uint64_t)x25 * x35)) + ((uint64_t)x27 * x33)))))))))))) + (0x1f * ((0x2 * ((uint64_t)x29 * x58)) + (((uint64_t)x31 * x59) + (0x2 * ((uint64_t)x30 * x57))))));
- uint64_t x64 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + ((0x2 * ((uint64_t)x13 * x45)) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + (((uint64_t)x19 * x39) + ((0x2 * ((uint64_t)x21 * x37)) + (((uint64_t)x23 * x35) + ((uint64_t)x25 * x33))))))))))) + (0x1f * (((uint64_t)x27 * x58) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + ((uint64_t)x30 * x55))))));
- uint64_t x65 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + ((0x2 * ((uint64_t)x21 * x35)) + ((uint64_t)x23 * x33)))))))))) + (0x1f * ((0x2 * ((uint64_t)x25 * x58)) + (((uint64_t)x27 * x59) + ((0x2 * ((uint64_t)x29 * x57)) + (((uint64_t)x31 * x55) + (0x2 * ((uint64_t)x30 * x53))))))));
- uint64_t x66 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + ((0x2 * ((uint64_t)x9 * x45)) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + (((uint64_t)x15 * x39) + ((0x2 * ((uint64_t)x17 * x37)) + (((uint64_t)x19 * x35) + ((uint64_t)x21 * x33))))))))) + (0x1f * (((uint64_t)x23 * x58) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + ((uint64_t)x30 * x51))))))));
- uint64_t x67 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((0x2 * ((uint64_t)x17 * x35)) + ((uint64_t)x19 * x33)))))))) + (0x1f * ((0x2 * ((uint64_t)x21 * x58)) + (((uint64_t)x23 * x59) + ((0x2 * ((uint64_t)x25 * x57)) + (((uint64_t)x27 * x55) + ((0x2 * ((uint64_t)x29 * x53)) + (((uint64_t)x31 * x51) + (0x2 * ((uint64_t)x30 * x49))))))))));
- uint64_t x68 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + (((uint64_t)x11 * x39) + ((0x2 * ((uint64_t)x13 * x37)) + (((uint64_t)x15 * x35) + ((uint64_t)x17 * x33))))))) + (0x1f * (((uint64_t)x19 * x58) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + (((uint64_t)x31 * x49) + ((uint64_t)x30 * x47))))))))));
- uint64_t x69 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((0x2 * ((uint64_t)x13 * x35)) + ((uint64_t)x15 * x33)))))) + (0x1f * ((0x2 * ((uint64_t)x17 * x58)) + (((uint64_t)x19 * x59) + ((0x2 * ((uint64_t)x21 * x57)) + (((uint64_t)x23 * x55) + ((0x2 * ((uint64_t)x25 * x53)) + (((uint64_t)x27 * x51) + ((0x2 * ((uint64_t)x29 * x49)) + (((uint64_t)x31 * x47) + (0x2 * ((uint64_t)x30 * x45))))))))))));
- uint64_t x70 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + ((0x2 * ((uint64_t)x9 * x37)) + (((uint64_t)x11 * x35) + ((uint64_t)x13 * x33))))) + (0x1f * (((uint64_t)x15 * x58) + (((uint64_t)x17 * x59) + (((uint64_t)x19 * x57) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (((uint64_t)x29 * x47) + (((uint64_t)x31 * x45) + ((uint64_t)x30 * x43))))))))))));
- uint64_t x71 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((0x2 * ((uint64_t)x9 * x35)) + ((uint64_t)x11 * x33)))) + (0x1f * ((0x2 * ((uint64_t)x13 * x58)) + (((uint64_t)x15 * x59) + ((0x2 * ((uint64_t)x17 * x57)) + (((uint64_t)x19 * x55) + ((0x2 * ((uint64_t)x21 * x53)) + (((uint64_t)x23 * x51) + ((0x2 * ((uint64_t)x25 * x49)) + (((uint64_t)x27 * x47) + ((0x2 * ((uint64_t)x29 * x45)) + (((uint64_t)x31 * x43) + (0x2 * ((uint64_t)x30 * x41))))))))))))));
- uint64_t x72 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + ((uint64_t)x9 * x33))) + (0x1f * (((uint64_t)x11 * x58) + (((uint64_t)x13 * x59) + (((uint64_t)x15 * x57) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + (((uint64_t)x29 * x43) + (((uint64_t)x31 * x41) + ((uint64_t)x30 * x39))))))))))))));
- uint64_t x73 = ((((uint64_t)x5 * x35) + ((uint64_t)x7 * x33)) + (0x1f * ((0x2 * ((uint64_t)x9 * x58)) + (((uint64_t)x11 * x59) + ((0x2 * ((uint64_t)x13 * x57)) + (((uint64_t)x15 * x55) + ((0x2 * ((uint64_t)x17 * x53)) + (((uint64_t)x19 * x51) + ((0x2 * ((uint64_t)x21 * x49)) + (((uint64_t)x23 * x47) + ((0x2 * ((uint64_t)x25 * x45)) + (((uint64_t)x27 * x43) + ((0x2 * ((uint64_t)x29 * x41)) + (((uint64_t)x31 * x39) + (0x2 * ((uint64_t)x30 * x37))))))))))))))));
- ℤ x74 = (((uint64_t)x5 * x33) +ℤ (0x1f *ℤ ((0x2 * ((uint64_t)x7 * x58)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + ((0x2 * ((uint64_t)x25 * x43)) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((0x2 * ((uint64_t)x31 * x37)) + (0x2 * ((uint64_t)x30 * x35)))))))))))))))));
- uint64_t x75 = (x74 >> 0x1a);
- uint32_t x76 = (x74 & 0x3ffffff);
- uint64_t x77 = (x75 + x73);
- uint64_t x78 = (x77 >> 0x1a);
- uint32_t x79 = ((uint32_t)x77 & 0x3ffffff);
- uint64_t x80 = (x78 + x72);
- uint64_t x81 = (x80 >> 0x19);
- uint32_t x82 = ((uint32_t)x80 & 0x1ffffff);
- uint64_t x83 = (x81 + x71);
- uint64_t x84 = (x83 >> 0x1a);
- uint32_t x85 = ((uint32_t)x83 & 0x3ffffff);
- uint64_t x86 = (x84 + x70);
- uint64_t x87 = (x86 >> 0x19);
- uint32_t x88 = ((uint32_t)x86 & 0x1ffffff);
- uint64_t x89 = (x87 + x69);
- uint64_t x90 = (x89 >> 0x1a);
- uint32_t x91 = ((uint32_t)x89 & 0x3ffffff);
- uint64_t x92 = (x90 + x68);
- uint64_t x93 = (x92 >> 0x19);
- uint32_t x94 = ((uint32_t)x92 & 0x1ffffff);
- uint64_t x95 = (x93 + x67);
- uint64_t x96 = (x95 >> 0x1a);
- uint32_t x97 = ((uint32_t)x95 & 0x3ffffff);
- uint64_t x98 = (x96 + x66);
- uint64_t x99 = (x98 >> 0x19);
- uint32_t x100 = ((uint32_t)x98 & 0x1ffffff);
- uint64_t x101 = (x99 + x65);
- uint64_t x102 = (x101 >> 0x1a);
- uint32_t x103 = ((uint32_t)x101 & 0x3ffffff);
- uint64_t x104 = (x102 + x64);
- uint64_t x105 = (x104 >> 0x19);
- uint32_t x106 = ((uint32_t)x104 & 0x1ffffff);
- uint64_t x107 = (x105 + x63);
- uint64_t x108 = (x107 >> 0x1a);
- uint32_t x109 = ((uint32_t)x107 & 0x3ffffff);
- uint64_t x110 = (x108 + x62);
- uint64_t x111 = (x110 >> 0x19);
- uint32_t x112 = ((uint32_t)x110 & 0x1ffffff);
- uint64_t x113 = (x111 + x61);
- uint64_t x114 = (x113 >> 0x1a);
- uint32_t x115 = ((uint32_t)x113 & 0x3ffffff);
- uint64_t x116 = (x114 + x60);
- uint64_t x117 = (x116 >> 0x19);
- uint32_t x118 = ((uint32_t)x116 & 0x1ffffff);
- uint64_t x119 = (x76 + (0x1f * x117));
- uint32_t x120 = (uint32_t) (x119 >> 0x1a);
- uint32_t x121 = ((uint32_t)x119 & 0x3ffffff);
- uint32_t x122 = (x120 + x79);
- uint32_t x123 = (x122 >> 0x1a);
- uint32_t x124 = (x122 & 0x3ffffff);
- return (Return x118, Return x115, Return x112, Return x109, Return x106, Return x103, Return x100, Return x97, Return x94, Return x91, Return x88, Return x85, (x123 + x82), Return x124, Return x121))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m31_15limbs/femulDisplay.v b/src/Specific/solinas32_2e383m31_15limbs/femulDisplay.v
deleted file mode 100644
index 9d082c9cd..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m31_15limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e383m31_15limbs/fesquare.c b/src/Specific/solinas32_2e383m31_15limbs/fesquare.c
deleted file mode 100644
index 1ab005221..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/fesquare.c
+++ /dev/null
@@ -1,98 +0,0 @@
-static void fesquare(uint32_t out[15], const uint32_t in1[15]) {
- { const uint32_t x27 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x29 = (((uint64_t)x2 * x27) + (((uint64_t)x4 * x28) + ((0x2 * ((uint64_t)x6 * x26)) + (((uint64_t)x8 * x24) + ((0x2 * ((uint64_t)x10 * x22)) + (((uint64_t)x12 * x20) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + (((uint64_t)x20 * x12) + ((0x2 * ((uint64_t)x22 * x10)) + (((uint64_t)x24 * x8) + ((0x2 * ((uint64_t)x26 * x6)) + (((uint64_t)x28 * x4) + ((uint64_t)x27 * x2)))))))))))))));
- { uint64_t x30 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x1f * (0x2 * ((uint64_t)x27 * x27))));
- { uint64_t x31 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x1f * (((uint64_t)x28 * x27) + ((uint64_t)x27 * x28))));
- { uint64_t x32 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x1f * ((0x2 * ((uint64_t)x26 * x27)) + (((uint64_t)x28 * x28) + (0x2 * ((uint64_t)x27 * x26))))));
- { uint64_t x33 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + ((0x2 * ((uint64_t)x6 * x18)) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + ((0x2 * ((uint64_t)x18 * x6)) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x1f * (((uint64_t)x24 * x27) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + ((uint64_t)x27 * x24))))));
- { uint64_t x34 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x1f * ((0x2 * ((uint64_t)x22 * x27)) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + (0x2 * ((uint64_t)x27 * x22))))))));
- { uint64_t x35 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x1f * (((uint64_t)x20 * x27) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + ((uint64_t)x27 * x20))))))));
- { uint64_t x36 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x1f * ((0x2 * ((uint64_t)x18 * x27)) + (((uint64_t)x20 * x28) + ((0x2 * ((uint64_t)x22 * x26)) + (((uint64_t)x24 * x24) + ((0x2 * ((uint64_t)x26 * x22)) + (((uint64_t)x28 * x20) + (0x2 * ((uint64_t)x27 * x18))))))))));
- { uint64_t x37 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x1f * (((uint64_t)x16 * x27) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + ((uint64_t)x27 * x16))))))))));
- { uint64_t x38 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x1f * ((0x2 * ((uint64_t)x14 * x27)) + (((uint64_t)x16 * x28) + ((0x2 * ((uint64_t)x18 * x26)) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + ((0x2 * ((uint64_t)x26 * x18)) + (((uint64_t)x28 * x16) + (0x2 * ((uint64_t)x27 * x14))))))))))));
- { uint64_t x39 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x1f * (((uint64_t)x12 * x27) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + ((uint64_t)x27 * x12))))))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x1f * ((0x2 * ((uint64_t)x10 * x27)) + (((uint64_t)x12 * x28) + ((0x2 * ((uint64_t)x14 * x26)) + (((uint64_t)x16 * x24) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + (((uint64_t)x24 * x16) + ((0x2 * ((uint64_t)x26 * x14)) + (((uint64_t)x28 * x12) + (0x2 * ((uint64_t)x27 * x10))))))))))))));
- { uint64_t x41 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x1f * (((uint64_t)x8 * x27) + (((uint64_t)x10 * x28) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + (((uint64_t)x28 * x10) + ((uint64_t)x27 * x8))))))))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1f * ((0x2 * ((uint64_t)x6 * x27)) + (((uint64_t)x8 * x28) + ((0x2 * ((uint64_t)x10 * x26)) + (((uint64_t)x12 * x24) + ((0x2 * ((uint64_t)x14 * x22)) + (((uint64_t)x16 * x20) + ((0x2 * ((uint64_t)x18 * x18)) + (((uint64_t)x20 * x16) + ((0x2 * ((uint64_t)x22 * x14)) + (((uint64_t)x24 * x12) + ((0x2 * ((uint64_t)x26 * x10)) + (((uint64_t)x28 * x8) + (0x2 * ((uint64_t)x27 * x6))))))))))))))));
- { ℤ x43 = (((uint64_t)x2 * x2) +ℤ (0x1f *ℤ ((0x2 * ((uint64_t)x4 * x27)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + (0x2 * ((uint64_t)x27 * x4)))))))))))))))));
- { uint64_t x44 = (x43 >> 0x1a);
- { uint32_t x45 = (x43 & 0x3ffffff);
- { uint64_t x46 = (x44 + x42);
- { uint64_t x47 = (x46 >> 0x1a);
- { uint32_t x48 = ((uint32_t)x46 & 0x3ffffff);
- { uint64_t x49 = (x47 + x41);
- { uint64_t x50 = (x49 >> 0x19);
- { uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- { uint64_t x52 = (x50 + x40);
- { uint64_t x53 = (x52 >> 0x1a);
- { uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- { uint64_t x55 = (x53 + x39);
- { uint64_t x56 = (x55 >> 0x19);
- { uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- { uint64_t x58 = (x56 + x38);
- { uint64_t x59 = (x58 >> 0x1a);
- { uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- { uint64_t x61 = (x59 + x37);
- { uint64_t x62 = (x61 >> 0x19);
- { uint32_t x63 = ((uint32_t)x61 & 0x1ffffff);
- { uint64_t x64 = (x62 + x36);
- { uint64_t x65 = (x64 >> 0x1a);
- { uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- { uint64_t x67 = (x65 + x35);
- { uint64_t x68 = (x67 >> 0x19);
- { uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- { uint64_t x70 = (x68 + x34);
- { uint64_t x71 = (x70 >> 0x1a);
- { uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- { uint64_t x73 = (x71 + x33);
- { uint64_t x74 = (x73 >> 0x19);
- { uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- { uint64_t x76 = (x74 + x32);
- { uint64_t x77 = (x76 >> 0x1a);
- { uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- { uint64_t x79 = (x77 + x31);
- { uint64_t x80 = (x79 >> 0x19);
- { uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- { uint64_t x82 = (x80 + x30);
- { uint64_t x83 = (x82 >> 0x1a);
- { uint32_t x84 = ((uint32_t)x82 & 0x3ffffff);
- { uint64_t x85 = (x83 + x29);
- { uint64_t x86 = (x85 >> 0x19);
- { uint32_t x87 = ((uint32_t)x85 & 0x1ffffff);
- { uint64_t x88 = (x45 + (0x1f * x86));
- { uint32_t x89 = (uint32_t) (x88 >> 0x1a);
- { uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- { uint32_t x91 = (x89 + x48);
- { uint32_t x92 = (x91 >> 0x1a);
- { uint32_t x93 = (x91 & 0x3ffffff);
- out[0] = x90;
- out[1] = x93;
- out[2] = (x92 + x51);
- out[3] = x54;
- out[4] = x57;
- out[5] = x60;
- out[6] = x63;
- out[7] = x66;
- out[8] = x69;
- out[9] = x72;
- out[10] = x75;
- out[11] = x78;
- out[12] = x81;
- out[13] = x84;
- out[14] = x87;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m31_15limbs/fesquare.v b/src/Specific/solinas32_2e383m31_15limbs/fesquare.v
deleted file mode 100644
index abdfd0df3..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m31_15limbs.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_2e383m31_15limbs/fesquareDisplay.log b/src/Specific/solinas32_2e383m31_15limbs/fesquareDisplay.log
deleted file mode 100644
index de4ccee10..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,72 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x27, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x29 = (((uint64_t)x2 * x27) + (((uint64_t)x4 * x28) + ((0x2 * ((uint64_t)x6 * x26)) + (((uint64_t)x8 * x24) + ((0x2 * ((uint64_t)x10 * x22)) + (((uint64_t)x12 * x20) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + (((uint64_t)x20 * x12) + ((0x2 * ((uint64_t)x22 * x10)) + (((uint64_t)x24 * x8) + ((0x2 * ((uint64_t)x26 * x6)) + (((uint64_t)x28 * x4) + ((uint64_t)x27 * x2)))))))))))))));
- uint64_t x30 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x1f * (0x2 * ((uint64_t)x27 * x27))));
- uint64_t x31 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x1f * (((uint64_t)x28 * x27) + ((uint64_t)x27 * x28))));
- uint64_t x32 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x1f * ((0x2 * ((uint64_t)x26 * x27)) + (((uint64_t)x28 * x28) + (0x2 * ((uint64_t)x27 * x26))))));
- uint64_t x33 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + ((0x2 * ((uint64_t)x6 * x18)) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + ((0x2 * ((uint64_t)x18 * x6)) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x1f * (((uint64_t)x24 * x27) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + ((uint64_t)x27 * x24))))));
- uint64_t x34 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x1f * ((0x2 * ((uint64_t)x22 * x27)) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + (0x2 * ((uint64_t)x27 * x22))))))));
- uint64_t x35 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x1f * (((uint64_t)x20 * x27) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + ((uint64_t)x27 * x20))))))));
- uint64_t x36 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x1f * ((0x2 * ((uint64_t)x18 * x27)) + (((uint64_t)x20 * x28) + ((0x2 * ((uint64_t)x22 * x26)) + (((uint64_t)x24 * x24) + ((0x2 * ((uint64_t)x26 * x22)) + (((uint64_t)x28 * x20) + (0x2 * ((uint64_t)x27 * x18))))))))));
- uint64_t x37 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x1f * (((uint64_t)x16 * x27) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + ((uint64_t)x27 * x16))))))))));
- uint64_t x38 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x1f * ((0x2 * ((uint64_t)x14 * x27)) + (((uint64_t)x16 * x28) + ((0x2 * ((uint64_t)x18 * x26)) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + ((0x2 * ((uint64_t)x26 * x18)) + (((uint64_t)x28 * x16) + (0x2 * ((uint64_t)x27 * x14))))))))))));
- uint64_t x39 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x1f * (((uint64_t)x12 * x27) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + ((uint64_t)x27 * x12))))))))))));
- uint64_t x40 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x1f * ((0x2 * ((uint64_t)x10 * x27)) + (((uint64_t)x12 * x28) + ((0x2 * ((uint64_t)x14 * x26)) + (((uint64_t)x16 * x24) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + (((uint64_t)x24 * x16) + ((0x2 * ((uint64_t)x26 * x14)) + (((uint64_t)x28 * x12) + (0x2 * ((uint64_t)x27 * x10))))))))))))));
- uint64_t x41 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x1f * (((uint64_t)x8 * x27) + (((uint64_t)x10 * x28) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + (((uint64_t)x28 * x10) + ((uint64_t)x27 * x8))))))))))))));
- uint64_t x42 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1f * ((0x2 * ((uint64_t)x6 * x27)) + (((uint64_t)x8 * x28) + ((0x2 * ((uint64_t)x10 * x26)) + (((uint64_t)x12 * x24) + ((0x2 * ((uint64_t)x14 * x22)) + (((uint64_t)x16 * x20) + ((0x2 * ((uint64_t)x18 * x18)) + (((uint64_t)x20 * x16) + ((0x2 * ((uint64_t)x22 * x14)) + (((uint64_t)x24 * x12) + ((0x2 * ((uint64_t)x26 * x10)) + (((uint64_t)x28 * x8) + (0x2 * ((uint64_t)x27 * x6))))))))))))))));
- ℤ x43 = (((uint64_t)x2 * x2) +ℤ (0x1f *ℤ ((0x2 * ((uint64_t)x4 * x27)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + (0x2 * ((uint64_t)x27 * x4)))))))))))))))));
- uint64_t x44 = (x43 >> 0x1a);
- uint32_t x45 = (x43 & 0x3ffffff);
- uint64_t x46 = (x44 + x42);
- uint64_t x47 = (x46 >> 0x1a);
- uint32_t x48 = ((uint32_t)x46 & 0x3ffffff);
- uint64_t x49 = (x47 + x41);
- uint64_t x50 = (x49 >> 0x19);
- uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- uint64_t x52 = (x50 + x40);
- uint64_t x53 = (x52 >> 0x1a);
- uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- uint64_t x55 = (x53 + x39);
- uint64_t x56 = (x55 >> 0x19);
- uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- uint64_t x58 = (x56 + x38);
- uint64_t x59 = (x58 >> 0x1a);
- uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- uint64_t x61 = (x59 + x37);
- uint64_t x62 = (x61 >> 0x19);
- uint32_t x63 = ((uint32_t)x61 & 0x1ffffff);
- uint64_t x64 = (x62 + x36);
- uint64_t x65 = (x64 >> 0x1a);
- uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- uint64_t x67 = (x65 + x35);
- uint64_t x68 = (x67 >> 0x19);
- uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- uint64_t x70 = (x68 + x34);
- uint64_t x71 = (x70 >> 0x1a);
- uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- uint64_t x73 = (x71 + x33);
- uint64_t x74 = (x73 >> 0x19);
- uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- uint64_t x76 = (x74 + x32);
- uint64_t x77 = (x76 >> 0x1a);
- uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- uint64_t x79 = (x77 + x31);
- uint64_t x80 = (x79 >> 0x19);
- uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- uint64_t x82 = (x80 + x30);
- uint64_t x83 = (x82 >> 0x1a);
- uint32_t x84 = ((uint32_t)x82 & 0x3ffffff);
- uint64_t x85 = (x83 + x29);
- uint64_t x86 = (x85 >> 0x19);
- uint32_t x87 = ((uint32_t)x85 & 0x1ffffff);
- uint64_t x88 = (x45 + (0x1f * x86));
- uint32_t x89 = (uint32_t) (x88 >> 0x1a);
- uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- uint32_t x91 = (x89 + x48);
- uint32_t x92 = (x91 >> 0x1a);
- uint32_t x93 = (x91 & 0x3ffffff);
- return (Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, Return x57, Return x54, (x92 + x51), Return x93, Return x90))
-x
- : word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m31_15limbs/fesquareDisplay.v b/src/Specific/solinas32_2e383m31_15limbs/fesquareDisplay.v
deleted file mode 100644
index 4a580497f..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m31_15limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e383m31_15limbs/fesub.c b/src/Specific/solinas32_2e383m31_15limbs/fesub.c
deleted file mode 100644
index 57ed399ad..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/fesub.c
+++ /dev/null
@@ -1,48 +0,0 @@
-static void fesub(uint32_t out[15], const uint32_t in1[15], const uint32_t in2[15]) {
- { const uint32_t x30 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x58 = in2[14];
- { const uint32_t x59 = in2[13];
- { const uint32_t x57 = in2[12];
- { const uint32_t x55 = in2[11];
- { const uint32_t x53 = in2[10];
- { const uint32_t x51 = in2[9];
- { const uint32_t x49 = in2[8];
- { const uint32_t x47 = in2[7];
- { const uint32_t x45 = in2[6];
- { const uint32_t x43 = in2[5];
- { const uint32_t x41 = in2[4];
- { const uint32_t x39 = in2[3];
- { const uint32_t x37 = in2[2];
- { const uint32_t x35 = in2[1];
- { const uint32_t x33 = in2[0];
- out[0] = ((0x7ffffc2 + x5) - x33);
- out[1] = ((0x7fffffe + x7) - x35);
- out[2] = ((0x3fffffe + x9) - x37);
- out[3] = ((0x7fffffe + x11) - x39);
- out[4] = ((0x3fffffe + x13) - x41);
- out[5] = ((0x7fffffe + x15) - x43);
- out[6] = ((0x3fffffe + x17) - x45);
- out[7] = ((0x7fffffe + x19) - x47);
- out[8] = ((0x3fffffe + x21) - x49);
- out[9] = ((0x7fffffe + x23) - x51);
- out[10] = ((0x3fffffe + x25) - x53);
- out[11] = ((0x7fffffe + x27) - x55);
- out[12] = ((0x3fffffe + x29) - x57);
- out[13] = ((0x7fffffe + x31) - x59);
- out[14] = ((0x3fffffe + x30) - x58);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m31_15limbs/fesub.v b/src/Specific/solinas32_2e383m31_15limbs/fesub.v
deleted file mode 100644
index f778f8049..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m31_15limbs.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_2e383m31_15limbs/fesubDisplay.log b/src/Specific/solinas32_2e383m31_15limbs/fesubDisplay.log
deleted file mode 100644
index b23dd1323..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x30, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x58, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33))%core,
- (((0x3fffffe + x30) - x58), ((0x7fffffe + x31) - x59), ((0x3fffffe + x29) - x57), ((0x7fffffe + x27) - x55), ((0x3fffffe + x25) - x53), ((0x7fffffe + x23) - x51), ((0x3fffffe + x21) - x49), ((0x7fffffe + x19) - x47), ((0x3fffffe + x17) - x45), ((0x7fffffe + x15) - x43), ((0x3fffffe + x13) - x41), ((0x7fffffe + x11) - x39), ((0x3fffffe + x9) - x37), ((0x7fffffe + x7) - x35), ((0x7ffffc2 + x5) - x33)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m31_15limbs/fesubDisplay.v b/src/Specific/solinas32_2e383m31_15limbs/fesubDisplay.v
deleted file mode 100644
index ac84ec8a9..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m31_15limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e383m31_15limbs/freeze.c b/src/Specific/solinas32_2e383m31_15limbs/freeze.c
deleted file mode 100644
index fe340eaaa..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/freeze.c
+++ /dev/null
@@ -1,79 +0,0 @@
-static void freeze(uint32_t out[15], const uint32_t in1[15]) {
- { const uint32_t x27 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffe1);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x4, 0x3ffffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x6, 0x1ffffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x8, 0x3ffffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x10, 0x1ffffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x12, 0x3ffffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x14, 0x1ffffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x16, 0x3ffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x18, 0x1ffffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x20, 0x3ffffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x22, 0x1ffffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x24, 0x3ffffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x26, 0x1ffffff);
- { uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x28, 0x3ffffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x27, 0x1ffffff);
- { uint32_t x74 = cmovznz32(x73, 0x0, 0xffffffff);
- { uint32_t x75 = (x74 & 0x3ffffe1);
- { uint32_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x30, Return x75);
- { uint32_t x79 = (x74 & 0x3ffffff);
- { uint32_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x33, Return x79);
- { uint32_t x83 = (x74 & 0x1ffffff);
- { uint32_t x85, uint8_t x86 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x36, Return x83);
- { uint32_t x87 = (x74 & 0x3ffffff);
- { uint32_t x89, uint8_t x90 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x39, Return x87);
- { uint32_t x91 = (x74 & 0x1ffffff);
- { uint32_t x93, uint8_t x94 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x42, Return x91);
- { uint32_t x95 = (x74 & 0x3ffffff);
- { uint32_t x97, uint8_t x98 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x94, Return x45, Return x95);
- { uint32_t x99 = (x74 & 0x1ffffff);
- { uint32_t x101, uint8_t x102 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x98, Return x48, Return x99);
- { uint32_t x103 = (x74 & 0x3ffffff);
- { uint32_t x105, uint8_t x106 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x102, Return x51, Return x103);
- { uint32_t x107 = (x74 & 0x1ffffff);
- { uint32_t x109, uint8_t x110 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x106, Return x54, Return x107);
- { uint32_t x111 = (x74 & 0x3ffffff);
- { uint32_t x113, uint8_t x114 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x110, Return x57, Return x111);
- { uint32_t x115 = (x74 & 0x1ffffff);
- { uint32_t x117, uint8_t x118 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x114, Return x60, Return x115);
- { uint32_t x119 = (x74 & 0x3ffffff);
- { uint32_t x121, uint8_t x122 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x118, Return x63, Return x119);
- { uint32_t x123 = (x74 & 0x1ffffff);
- { uint32_t x125, uint8_t x126 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x122, Return x66, Return x123);
- { uint32_t x127 = (x74 & 0x3ffffff);
- { uint32_t x129, uint8_t x130 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x126, Return x69, Return x127);
- { uint32_t x131 = (x74 & 0x1ffffff);
- { uint32_t x133, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x130, Return x72, Return x131);
- out[0] = x77;
- out[1] = x81;
- out[2] = x85;
- out[3] = x89;
- out[4] = x93;
- out[5] = x97;
- out[6] = x101;
- out[7] = x105;
- out[8] = x109;
- out[9] = x113;
- out[10] = x117;
- out[11] = x121;
- out[12] = x125;
- out[13] = x129;
- out[14] = x133;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m31_15limbs/freeze.v b/src/Specific/solinas32_2e383m31_15limbs/freeze.v
deleted file mode 100644
index 55ae6d1a3..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m31_15limbs.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_2e383m31_15limbs/freezeDisplay.log b/src/Specific/solinas32_2e383m31_15limbs/freezeDisplay.log
deleted file mode 100644
index 10314baa1..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/freezeDisplay.log
+++ /dev/null
@@ -1,53 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x27, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffe1);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x4, 0x3ffffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x6, 0x1ffffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x8, 0x3ffffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x10, 0x1ffffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x12, 0x3ffffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x14, 0x1ffffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x16, 0x3ffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x18, 0x1ffffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x20, 0x3ffffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x22, 0x1ffffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x24, 0x3ffffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x26, 0x1ffffff);
- uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x28, 0x3ffffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x27, 0x1ffffff);
- uint32_t x74 = cmovznz32(x73, 0x0, 0xffffffff);
- uint32_t x75 = (x74 & 0x3ffffe1);
- uint32_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x30, Return x75);
- uint32_t x79 = (x74 & 0x3ffffff);
- uint32_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x33, Return x79);
- uint32_t x83 = (x74 & 0x1ffffff);
- uint32_t x85, uint8_t x86 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x36, Return x83);
- uint32_t x87 = (x74 & 0x3ffffff);
- uint32_t x89, uint8_t x90 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x39, Return x87);
- uint32_t x91 = (x74 & 0x1ffffff);
- uint32_t x93, uint8_t x94 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x42, Return x91);
- uint32_t x95 = (x74 & 0x3ffffff);
- uint32_t x97, uint8_t x98 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x94, Return x45, Return x95);
- uint32_t x99 = (x74 & 0x1ffffff);
- uint32_t x101, uint8_t x102 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x98, Return x48, Return x99);
- uint32_t x103 = (x74 & 0x3ffffff);
- uint32_t x105, uint8_t x106 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x102, Return x51, Return x103);
- uint32_t x107 = (x74 & 0x1ffffff);
- uint32_t x109, uint8_t x110 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x106, Return x54, Return x107);
- uint32_t x111 = (x74 & 0x3ffffff);
- uint32_t x113, uint8_t x114 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x110, Return x57, Return x111);
- uint32_t x115 = (x74 & 0x1ffffff);
- uint32_t x117, uint8_t x118 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x114, Return x60, Return x115);
- uint32_t x119 = (x74 & 0x3ffffff);
- uint32_t x121, uint8_t x122 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x118, Return x63, Return x119);
- uint32_t x123 = (x74 & 0x1ffffff);
- uint32_t x125, uint8_t x126 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x122, Return x66, Return x123);
- uint32_t x127 = (x74 & 0x3ffffff);
- uint32_t x129, uint8_t x130 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x126, Return x69, Return x127);
- uint32_t x131 = (x74 & 0x1ffffff);
- uint32_t x133, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x130, Return x72, Return x131);
- (Return x133, Return x129, Return x125, Return x121, Return x117, Return x113, Return x109, Return x105, Return x101, Return x97, Return x93, Return x89, Return x85, Return x81, Return x77))
-x
- : word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m31_15limbs/freezeDisplay.v b/src/Specific/solinas32_2e383m31_15limbs/freezeDisplay.v
deleted file mode 100644
index bcf2235b8..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m31_15limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e383m31_15limbs/py_interpreter.sh b/src/Specific/solinas32_2e383m31_15limbs/py_interpreter.sh
deleted file mode 100755
index c83f152ae..000000000
--- a/src/Specific/solinas32_2e383m31_15limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**383 - 31' -Dmodulus_bytes='25 + 8/15' -Da24='121665'
diff --git a/src/Specific/solinas32_2e383m31_16limbs/CurveParameters.v b/src/Specific/solinas32_2e383m31_16limbs/CurveParameters.v
deleted file mode 100644
index 1a2049795..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^383 - 31
-Base: 23 + 15/16
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 16%nat;
- base := 23 + 15/16;
- bitwidth := 32;
- s := 2^383;
- c := [(1, 31)];
- carry_chains := Some [seq 0 (pred 16); [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_2e383m31_16limbs/Synthesis.v b/src/Specific/solinas32_2e383m31_16limbs/Synthesis.v
deleted file mode 100644
index b298b5237..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e383m31_16limbs.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_2e383m31_16limbs/compiler.sh b/src/Specific/solinas32_2e383m31_16limbs/compiler.sh
deleted file mode 100755
index 7c9d92b10..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,23}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<383) - 31' "$@"
diff --git a/src/Specific/solinas32_2e383m31_16limbs/compilerxx.sh b/src/Specific/solinas32_2e383m31_16limbs/compilerxx.sh
deleted file mode 100755
index d93b62587..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,23}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<383) - 31' "$@"
diff --git a/src/Specific/solinas32_2e383m31_16limbs/feadd.c b/src/Specific/solinas32_2e383m31_16limbs/feadd.c
deleted file mode 100644
index 18b150e21..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/feadd.c
+++ /dev/null
@@ -1,51 +0,0 @@
-static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- out[0] = (x5 + x35);
- out[1] = (x7 + x37);
- out[2] = (x9 + x39);
- out[3] = (x11 + x41);
- out[4] = (x13 + x43);
- out[5] = (x15 + x45);
- out[6] = (x17 + x47);
- out[7] = (x19 + x49);
- out[8] = (x21 + x51);
- out[9] = (x23 + x53);
- out[10] = (x25 + x55);
- out[11] = (x27 + x57);
- out[12] = (x29 + x59);
- out[13] = (x31 + x61);
- out[14] = (x33 + x63);
- out[15] = (x32 + x62);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m31_16limbs/feadd.v b/src/Specific/solinas32_2e383m31_16limbs/feadd.v
deleted file mode 100644
index 63ff93288..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m31_16limbs.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_2e383m31_16limbs/feaddDisplay.log b/src/Specific/solinas32_2e383m31_16limbs/feaddDisplay.log
deleted file mode 100644
index 130c31964..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- ((x32 + x62), (x33 + x63), (x31 + x61), (x29 + x59), (x27 + x57), (x25 + x55), (x23 + x53), (x21 + x51), (x19 + x49), (x17 + x47), (x15 + x45), (x13 + x43), (x11 + x41), (x9 + x39), (x7 + x37), (x5 + x35)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m31_16limbs/feaddDisplay.v b/src/Specific/solinas32_2e383m31_16limbs/feaddDisplay.v
deleted file mode 100644
index 1243d945a..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m31_16limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e383m31_16limbs/fecarry.v b/src/Specific/solinas32_2e383m31_16limbs/fecarry.v
deleted file mode 100644
index af68e7751..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m31_16limbs.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_2e383m31_16limbs/fecarryDisplay.v b/src/Specific/solinas32_2e383m31_16limbs/fecarryDisplay.v
deleted file mode 100644
index 6921a3f57..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m31_16limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e383m31_16limbs/femul.c b/src/Specific/solinas32_2e383m31_16limbs/femul.c
deleted file mode 100644
index 3839457fa..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/femul.c
+++ /dev/null
@@ -1,120 +0,0 @@
-static void femul(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- { uint64_t x64 = (((uint64_t)x5 * x62) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (((uint64_t)x29 * x41) + (((uint64_t)x31 * x39) + (((uint64_t)x33 * x37) + ((uint64_t)x32 * x35))))))))))))))));
- { uint64_t x65 = ((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + (((uint64_t)x9 * x59) + (((uint64_t)x11 * x57) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + (((uint64_t)x27 * x41) + (((uint64_t)x29 * x39) + (((uint64_t)x31 * x37) + ((uint64_t)x33 * x35))))))))))))))) + (0x1f * (0x2 * ((uint64_t)x32 * x62))));
- { uint64_t x66 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + (((uint64_t)x29 * x37) + ((uint64_t)x31 * x35)))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x33 * x62)) + (0x2 * ((uint64_t)x32 * x63)))));
- { uint64_t x67 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + (((uint64_t)x27 * x37) + ((uint64_t)x29 * x35))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x31 * x62)) + ((0x2 * ((uint64_t)x33 * x63)) + (0x2 * ((uint64_t)x32 * x61))))));
- { uint64_t x68 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + (((uint64_t)x25 * x37) + ((uint64_t)x27 * x35)))))))))))) + (0x1f * ((0x2 * ((uint64_t)x29 * x62)) + ((0x2 * ((uint64_t)x31 * x63)) + ((0x2 * ((uint64_t)x33 * x61)) + (0x2 * ((uint64_t)x32 * x59)))))));
- { uint64_t x69 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + ((uint64_t)x25 * x35))))))))))) + (0x1f * ((0x2 * ((uint64_t)x27 * x62)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + (0x2 * ((uint64_t)x32 * x57))))))));
- { uint64_t x70 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + ((uint64_t)x23 * x35)))))))))) + (0x1f * ((0x2 * ((uint64_t)x25 * x62)) + ((0x2 * ((uint64_t)x27 * x63)) + ((0x2 * ((uint64_t)x29 * x61)) + ((0x2 * ((uint64_t)x31 * x59)) + ((0x2 * ((uint64_t)x33 * x57)) + (0x2 * ((uint64_t)x32 * x55)))))))));
- { uint64_t x71 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + ((uint64_t)x21 * x35))))))))) + (0x1f * ((0x2 * ((uint64_t)x23 * x62)) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + ((0x2 * ((uint64_t)x33 * x55)) + (0x2 * ((uint64_t)x32 * x53))))))))));
- { uint64_t x72 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + ((uint64_t)x19 * x35)))))))) + (0x1f * ((0x2 * ((uint64_t)x21 * x62)) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + ((0x2 * ((uint64_t)x29 * x57)) + ((0x2 * ((uint64_t)x31 * x55)) + ((0x2 * ((uint64_t)x33 * x53)) + (0x2 * ((uint64_t)x32 * x51)))))))))));
- { uint64_t x73 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((uint64_t)x17 * x35))))))) + (0x1f * ((0x2 * ((uint64_t)x19 * x62)) + ((0x2 * ((uint64_t)x21 * x63)) + ((0x2 * ((uint64_t)x23 * x61)) + ((0x2 * ((uint64_t)x25 * x59)) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + ((0x2 * ((uint64_t)x31 * x53)) + ((0x2 * ((uint64_t)x33 * x51)) + (0x2 * ((uint64_t)x32 * x49))))))))))));
- { uint64_t x74 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + ((uint64_t)x15 * x35)))))) + (0x1f * ((0x2 * ((uint64_t)x17 * x62)) + ((0x2 * ((uint64_t)x19 * x63)) + ((0x2 * ((uint64_t)x21 * x61)) + ((0x2 * ((uint64_t)x23 * x59)) + ((0x2 * ((uint64_t)x25 * x57)) + ((0x2 * ((uint64_t)x27 * x55)) + ((0x2 * ((uint64_t)x29 * x53)) + ((0x2 * ((uint64_t)x31 * x51)) + ((0x2 * ((uint64_t)x33 * x49)) + (0x2 * ((uint64_t)x32 * x47)))))))))))));
- { uint64_t x75 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((uint64_t)x13 * x35))))) + (0x1f * ((0x2 * ((uint64_t)x15 * x62)) + ((0x2 * ((uint64_t)x17 * x63)) + ((0x2 * ((uint64_t)x19 * x61)) + ((0x2 * ((uint64_t)x21 * x59)) + ((0x2 * ((uint64_t)x23 * x57)) + ((0x2 * ((uint64_t)x25 * x55)) + ((0x2 * ((uint64_t)x27 * x53)) + ((0x2 * ((uint64_t)x29 * x51)) + ((0x2 * ((uint64_t)x31 * x49)) + ((0x2 * ((uint64_t)x33 * x47)) + (0x2 * ((uint64_t)x32 * x45))))))))))))));
- { uint64_t x76 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((uint64_t)x11 * x35)))) + (0x1f * ((0x2 * ((uint64_t)x13 * x62)) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + ((0x2 * ((uint64_t)x21 * x57)) + ((0x2 * ((uint64_t)x23 * x55)) + ((0x2 * ((uint64_t)x25 * x53)) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + ((0x2 * ((uint64_t)x33 * x45)) + (0x2 * ((uint64_t)x32 * x43)))))))))))))));
- { uint64_t x77 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((uint64_t)x9 * x35))) + (0x1f * ((0x2 * ((uint64_t)x11 * x62)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + (0x2 * ((uint64_t)x32 * x41))))))))))))))));
- { uint64_t x78 = ((((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)) + (0x1f * ((0x2 * ((uint64_t)x9 * x62)) + ((0x2 * ((uint64_t)x11 * x63)) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + ((0x2 * ((uint64_t)x19 * x55)) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + ((0x2 * ((uint64_t)x31 * x43)) + ((0x2 * ((uint64_t)x33 * x41)) + (0x2 * ((uint64_t)x32 * x39)))))))))))))))));
- { uint64_t x79 = (((uint64_t)x5 * x35) + (0x1f * ((0x2 * ((uint64_t)x7 * x62)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + (0x2 * ((uint64_t)x32 * x37))))))))))))))))));
- { uint64_t x80 = (x79 >> 0x18);
- { uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- { uint64_t x82 = (x80 + x78);
- { uint64_t x83 = (x82 >> 0x18);
- { uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- { uint64_t x85 = (x83 + x77);
- { uint64_t x86 = (x85 >> 0x18);
- { uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- { uint64_t x88 = (x86 + x76);
- { uint64_t x89 = (x88 >> 0x18);
- { uint32_t x90 = ((uint32_t)x88 & 0xffffff);
- { uint64_t x91 = (x89 + x75);
- { uint64_t x92 = (x91 >> 0x18);
- { uint32_t x93 = ((uint32_t)x91 & 0xffffff);
- { uint64_t x94 = (x92 + x74);
- { uint64_t x95 = (x94 >> 0x18);
- { uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- { uint64_t x97 = (x95 + x73);
- { uint64_t x98 = (x97 >> 0x18);
- { uint32_t x99 = ((uint32_t)x97 & 0xffffff);
- { uint64_t x100 = (x98 + x72);
- { uint64_t x101 = (x100 >> 0x18);
- { uint32_t x102 = ((uint32_t)x100 & 0xffffff);
- { uint64_t x103 = (x101 + x71);
- { uint64_t x104 = (x103 >> 0x18);
- { uint32_t x105 = ((uint32_t)x103 & 0xffffff);
- { uint64_t x106 = (x104 + x70);
- { uint64_t x107 = (x106 >> 0x18);
- { uint32_t x108 = ((uint32_t)x106 & 0xffffff);
- { uint64_t x109 = (x107 + x69);
- { uint64_t x110 = (x109 >> 0x18);
- { uint32_t x111 = ((uint32_t)x109 & 0xffffff);
- { uint64_t x112 = (x110 + x68);
- { uint64_t x113 = (x112 >> 0x18);
- { uint32_t x114 = ((uint32_t)x112 & 0xffffff);
- { uint64_t x115 = (x113 + x67);
- { uint64_t x116 = (x115 >> 0x18);
- { uint32_t x117 = ((uint32_t)x115 & 0xffffff);
- { uint64_t x118 = (x116 + x66);
- { uint64_t x119 = (x118 >> 0x18);
- { uint32_t x120 = ((uint32_t)x118 & 0xffffff);
- { uint64_t x121 = (x119 + x65);
- { uint64_t x122 = (x121 >> 0x18);
- { uint32_t x123 = ((uint32_t)x121 & 0xffffff);
- { uint64_t x124 = (x122 + x64);
- { uint64_t x125 = (x124 >> 0x17);
- { uint32_t x126 = ((uint32_t)x124 & 0x7fffff);
- { uint64_t x127 = (x81 + (0x1f * x125));
- { uint32_t x128 = (uint32_t) (x127 >> 0x18);
- { uint32_t x129 = ((uint32_t)x127 & 0xffffff);
- { uint32_t x130 = (x128 + x84);
- { uint32_t x131 = (x130 >> 0x18);
- { uint32_t x132 = (x130 & 0xffffff);
- out[0] = x129;
- out[1] = x132;
- out[2] = (x131 + x87);
- out[3] = x90;
- out[4] = x93;
- out[5] = x96;
- out[6] = x99;
- out[7] = x102;
- out[8] = x105;
- out[9] = x108;
- out[10] = x111;
- out[11] = x114;
- out[12] = x117;
- out[13] = x120;
- out[14] = x123;
- out[15] = x126;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m31_16limbs/femul.v b/src/Specific/solinas32_2e383m31_16limbs/femul.v
deleted file mode 100644
index 8a6db108d..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m31_16limbs.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_2e383m31_16limbs/femulDisplay.log b/src/Specific/solinas32_2e383m31_16limbs/femulDisplay.log
deleted file mode 100644
index dfca6c5ed..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/femulDisplay.log
+++ /dev/null
@@ -1,76 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- uint64_t x64 = (((uint64_t)x5 * x62) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (((uint64_t)x29 * x41) + (((uint64_t)x31 * x39) + (((uint64_t)x33 * x37) + ((uint64_t)x32 * x35))))))))))))))));
- uint64_t x65 = ((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + (((uint64_t)x9 * x59) + (((uint64_t)x11 * x57) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + (((uint64_t)x27 * x41) + (((uint64_t)x29 * x39) + (((uint64_t)x31 * x37) + ((uint64_t)x33 * x35))))))))))))))) + (0x1f * (0x2 * ((uint64_t)x32 * x62))));
- uint64_t x66 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + (((uint64_t)x29 * x37) + ((uint64_t)x31 * x35)))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x33 * x62)) + (0x2 * ((uint64_t)x32 * x63)))));
- uint64_t x67 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + (((uint64_t)x27 * x37) + ((uint64_t)x29 * x35))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x31 * x62)) + ((0x2 * ((uint64_t)x33 * x63)) + (0x2 * ((uint64_t)x32 * x61))))));
- uint64_t x68 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + (((uint64_t)x25 * x37) + ((uint64_t)x27 * x35)))))))))))) + (0x1f * ((0x2 * ((uint64_t)x29 * x62)) + ((0x2 * ((uint64_t)x31 * x63)) + ((0x2 * ((uint64_t)x33 * x61)) + (0x2 * ((uint64_t)x32 * x59)))))));
- uint64_t x69 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + ((uint64_t)x25 * x35))))))))))) + (0x1f * ((0x2 * ((uint64_t)x27 * x62)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + (0x2 * ((uint64_t)x32 * x57))))))));
- uint64_t x70 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + ((uint64_t)x23 * x35)))))))))) + (0x1f * ((0x2 * ((uint64_t)x25 * x62)) + ((0x2 * ((uint64_t)x27 * x63)) + ((0x2 * ((uint64_t)x29 * x61)) + ((0x2 * ((uint64_t)x31 * x59)) + ((0x2 * ((uint64_t)x33 * x57)) + (0x2 * ((uint64_t)x32 * x55)))))))));
- uint64_t x71 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + ((uint64_t)x21 * x35))))))))) + (0x1f * ((0x2 * ((uint64_t)x23 * x62)) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + ((0x2 * ((uint64_t)x33 * x55)) + (0x2 * ((uint64_t)x32 * x53))))))))));
- uint64_t x72 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + ((uint64_t)x19 * x35)))))))) + (0x1f * ((0x2 * ((uint64_t)x21 * x62)) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + ((0x2 * ((uint64_t)x29 * x57)) + ((0x2 * ((uint64_t)x31 * x55)) + ((0x2 * ((uint64_t)x33 * x53)) + (0x2 * ((uint64_t)x32 * x51)))))))))));
- uint64_t x73 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((uint64_t)x17 * x35))))))) + (0x1f * ((0x2 * ((uint64_t)x19 * x62)) + ((0x2 * ((uint64_t)x21 * x63)) + ((0x2 * ((uint64_t)x23 * x61)) + ((0x2 * ((uint64_t)x25 * x59)) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + ((0x2 * ((uint64_t)x31 * x53)) + ((0x2 * ((uint64_t)x33 * x51)) + (0x2 * ((uint64_t)x32 * x49))))))))))));
- uint64_t x74 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + ((uint64_t)x15 * x35)))))) + (0x1f * ((0x2 * ((uint64_t)x17 * x62)) + ((0x2 * ((uint64_t)x19 * x63)) + ((0x2 * ((uint64_t)x21 * x61)) + ((0x2 * ((uint64_t)x23 * x59)) + ((0x2 * ((uint64_t)x25 * x57)) + ((0x2 * ((uint64_t)x27 * x55)) + ((0x2 * ((uint64_t)x29 * x53)) + ((0x2 * ((uint64_t)x31 * x51)) + ((0x2 * ((uint64_t)x33 * x49)) + (0x2 * ((uint64_t)x32 * x47)))))))))))));
- uint64_t x75 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((uint64_t)x13 * x35))))) + (0x1f * ((0x2 * ((uint64_t)x15 * x62)) + ((0x2 * ((uint64_t)x17 * x63)) + ((0x2 * ((uint64_t)x19 * x61)) + ((0x2 * ((uint64_t)x21 * x59)) + ((0x2 * ((uint64_t)x23 * x57)) + ((0x2 * ((uint64_t)x25 * x55)) + ((0x2 * ((uint64_t)x27 * x53)) + ((0x2 * ((uint64_t)x29 * x51)) + ((0x2 * ((uint64_t)x31 * x49)) + ((0x2 * ((uint64_t)x33 * x47)) + (0x2 * ((uint64_t)x32 * x45))))))))))))));
- uint64_t x76 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((uint64_t)x11 * x35)))) + (0x1f * ((0x2 * ((uint64_t)x13 * x62)) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + ((0x2 * ((uint64_t)x21 * x57)) + ((0x2 * ((uint64_t)x23 * x55)) + ((0x2 * ((uint64_t)x25 * x53)) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + ((0x2 * ((uint64_t)x33 * x45)) + (0x2 * ((uint64_t)x32 * x43)))))))))))))));
- uint64_t x77 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((uint64_t)x9 * x35))) + (0x1f * ((0x2 * ((uint64_t)x11 * x62)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + (0x2 * ((uint64_t)x32 * x41))))))))))))))));
- uint64_t x78 = ((((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)) + (0x1f * ((0x2 * ((uint64_t)x9 * x62)) + ((0x2 * ((uint64_t)x11 * x63)) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + ((0x2 * ((uint64_t)x19 * x55)) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + ((0x2 * ((uint64_t)x31 * x43)) + ((0x2 * ((uint64_t)x33 * x41)) + (0x2 * ((uint64_t)x32 * x39)))))))))))))))));
- uint64_t x79 = (((uint64_t)x5 * x35) + (0x1f * ((0x2 * ((uint64_t)x7 * x62)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + (0x2 * ((uint64_t)x32 * x37))))))))))))))))));
- uint64_t x80 = (x79 >> 0x18);
- uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- uint64_t x82 = (x80 + x78);
- uint64_t x83 = (x82 >> 0x18);
- uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- uint64_t x85 = (x83 + x77);
- uint64_t x86 = (x85 >> 0x18);
- uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- uint64_t x88 = (x86 + x76);
- uint64_t x89 = (x88 >> 0x18);
- uint32_t x90 = ((uint32_t)x88 & 0xffffff);
- uint64_t x91 = (x89 + x75);
- uint64_t x92 = (x91 >> 0x18);
- uint32_t x93 = ((uint32_t)x91 & 0xffffff);
- uint64_t x94 = (x92 + x74);
- uint64_t x95 = (x94 >> 0x18);
- uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- uint64_t x97 = (x95 + x73);
- uint64_t x98 = (x97 >> 0x18);
- uint32_t x99 = ((uint32_t)x97 & 0xffffff);
- uint64_t x100 = (x98 + x72);
- uint64_t x101 = (x100 >> 0x18);
- uint32_t x102 = ((uint32_t)x100 & 0xffffff);
- uint64_t x103 = (x101 + x71);
- uint64_t x104 = (x103 >> 0x18);
- uint32_t x105 = ((uint32_t)x103 & 0xffffff);
- uint64_t x106 = (x104 + x70);
- uint64_t x107 = (x106 >> 0x18);
- uint32_t x108 = ((uint32_t)x106 & 0xffffff);
- uint64_t x109 = (x107 + x69);
- uint64_t x110 = (x109 >> 0x18);
- uint32_t x111 = ((uint32_t)x109 & 0xffffff);
- uint64_t x112 = (x110 + x68);
- uint64_t x113 = (x112 >> 0x18);
- uint32_t x114 = ((uint32_t)x112 & 0xffffff);
- uint64_t x115 = (x113 + x67);
- uint64_t x116 = (x115 >> 0x18);
- uint32_t x117 = ((uint32_t)x115 & 0xffffff);
- uint64_t x118 = (x116 + x66);
- uint64_t x119 = (x118 >> 0x18);
- uint32_t x120 = ((uint32_t)x118 & 0xffffff);
- uint64_t x121 = (x119 + x65);
- uint64_t x122 = (x121 >> 0x18);
- uint32_t x123 = ((uint32_t)x121 & 0xffffff);
- uint64_t x124 = (x122 + x64);
- uint64_t x125 = (x124 >> 0x17);
- uint32_t x126 = ((uint32_t)x124 & 0x7fffff);
- uint64_t x127 = (x81 + (0x1f * x125));
- uint32_t x128 = (uint32_t) (x127 >> 0x18);
- uint32_t x129 = ((uint32_t)x127 & 0xffffff);
- uint32_t x130 = (x128 + x84);
- uint32_t x131 = (x130 >> 0x18);
- uint32_t x132 = (x130 & 0xffffff);
- return (Return x126, Return x123, Return x120, Return x117, Return x114, Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, (x131 + x87), Return x132, Return x129))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m31_16limbs/femulDisplay.v b/src/Specific/solinas32_2e383m31_16limbs/femulDisplay.v
deleted file mode 100644
index 3f0d52106..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m31_16limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e383m31_16limbs/fesquare.c b/src/Specific/solinas32_2e383m31_16limbs/fesquare.c
deleted file mode 100644
index dc88d3217..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/fesquare.c
+++ /dev/null
@@ -1,104 +0,0 @@
-static void fesquare(uint32_t out[16], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x31 = (((uint64_t)x2 * x29) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x29 * x2))))))))))))))));
- { uint64_t x32 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x1f * (0x2 * ((uint64_t)x29 * x29))));
- { uint64_t x33 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x30 * x29)) + (0x2 * ((uint64_t)x29 * x30)))));
- { uint64_t x34 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x28 * x29)) + ((0x2 * ((uint64_t)x30 * x30)) + (0x2 * ((uint64_t)x29 * x28))))));
- { uint64_t x35 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x1f * ((0x2 * ((uint64_t)x26 * x29)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + (0x2 * ((uint64_t)x29 * x26)))))));
- { uint64_t x36 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x1f * ((0x2 * ((uint64_t)x24 * x29)) + ((0x2 * ((uint64_t)x26 * x30)) + ((0x2 * ((uint64_t)x28 * x28)) + ((0x2 * ((uint64_t)x30 * x26)) + (0x2 * ((uint64_t)x29 * x24))))))));
- { uint64_t x37 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x1f * ((0x2 * ((uint64_t)x22 * x29)) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + (0x2 * ((uint64_t)x29 * x22)))))))));
- { uint64_t x38 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x1f * ((0x2 * ((uint64_t)x20 * x29)) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + ((0x2 * ((uint64_t)x26 * x26)) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + (0x2 * ((uint64_t)x29 * x20))))))))));
- { uint64_t x39 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x1f * ((0x2 * ((uint64_t)x18 * x29)) + ((0x2 * ((uint64_t)x20 * x30)) + ((0x2 * ((uint64_t)x22 * x28)) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + ((0x2 * ((uint64_t)x28 * x22)) + ((0x2 * ((uint64_t)x30 * x20)) + (0x2 * ((uint64_t)x29 * x18)))))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x1f * ((0x2 * ((uint64_t)x16 * x29)) + ((0x2 * ((uint64_t)x18 * x30)) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + ((0x2 * ((uint64_t)x30 * x18)) + (0x2 * ((uint64_t)x29 * x16))))))))))));
- { uint64_t x41 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x1f * ((0x2 * ((uint64_t)x14 * x29)) + ((0x2 * ((uint64_t)x16 * x30)) + ((0x2 * ((uint64_t)x18 * x28)) + ((0x2 * ((uint64_t)x20 * x26)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + ((0x2 * ((uint64_t)x26 * x20)) + ((0x2 * ((uint64_t)x28 * x18)) + ((0x2 * ((uint64_t)x30 * x16)) + (0x2 * ((uint64_t)x29 * x14)))))))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x1f * ((0x2 * ((uint64_t)x12 * x29)) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + ((0x2 * ((uint64_t)x22 * x22)) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + (0x2 * ((uint64_t)x29 * x12))))))))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x1f * ((0x2 * ((uint64_t)x10 * x29)) + ((0x2 * ((uint64_t)x12 * x30)) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + ((0x2 * ((uint64_t)x18 * x24)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((0x2 * ((uint64_t)x24 * x18)) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + ((0x2 * ((uint64_t)x30 * x12)) + (0x2 * ((uint64_t)x29 * x10)))))))))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x1f * ((0x2 * ((uint64_t)x8 * x29)) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + ((0x2 * ((uint64_t)x18 * x22)) + ((0x2 * ((uint64_t)x20 * x20)) + ((0x2 * ((uint64_t)x22 * x18)) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + (0x2 * ((uint64_t)x29 * x8))))))))))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1f * ((0x2 * ((uint64_t)x6 * x29)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + (0x2 * ((uint64_t)x29 * x6)))))))))))))))));
- { uint64_t x46 = (((uint64_t)x2 * x2) + (0x1f * ((0x2 * ((uint64_t)x4 * x29)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + (0x2 * ((uint64_t)x29 * x4))))))))))))))))));
- { uint64_t x47 = (x46 >> 0x18);
- { uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- { uint64_t x49 = (x47 + x45);
- { uint64_t x50 = (x49 >> 0x18);
- { uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- { uint64_t x52 = (x50 + x44);
- { uint64_t x53 = (x52 >> 0x18);
- { uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- { uint64_t x55 = (x53 + x43);
- { uint64_t x56 = (x55 >> 0x18);
- { uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- { uint64_t x58 = (x56 + x42);
- { uint64_t x59 = (x58 >> 0x18);
- { uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- { uint64_t x61 = (x59 + x41);
- { uint64_t x62 = (x61 >> 0x18);
- { uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- { uint64_t x64 = (x62 + x40);
- { uint64_t x65 = (x64 >> 0x18);
- { uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- { uint64_t x67 = (x65 + x39);
- { uint64_t x68 = (x67 >> 0x18);
- { uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- { uint64_t x70 = (x68 + x38);
- { uint64_t x71 = (x70 >> 0x18);
- { uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- { uint64_t x73 = (x71 + x37);
- { uint64_t x74 = (x73 >> 0x18);
- { uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- { uint64_t x76 = (x74 + x36);
- { uint64_t x77 = (x76 >> 0x18);
- { uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- { uint64_t x79 = (x77 + x35);
- { uint64_t x80 = (x79 >> 0x18);
- { uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- { uint64_t x82 = (x80 + x34);
- { uint64_t x83 = (x82 >> 0x18);
- { uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- { uint64_t x85 = (x83 + x33);
- { uint64_t x86 = (x85 >> 0x18);
- { uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- { uint64_t x88 = (x86 + x32);
- { uint64_t x89 = (x88 >> 0x18);
- { uint32_t x90 = ((uint32_t)x88 & 0xffffff);
- { uint64_t x91 = (x89 + x31);
- { uint64_t x92 = (x91 >> 0x17);
- { uint32_t x93 = ((uint32_t)x91 & 0x7fffff);
- { uint64_t x94 = (x48 + (0x1f * x92));
- { uint32_t x95 = (uint32_t) (x94 >> 0x18);
- { uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- { uint32_t x97 = (x95 + x51);
- { uint32_t x98 = (x97 >> 0x18);
- { uint32_t x99 = (x97 & 0xffffff);
- out[0] = x96;
- out[1] = x99;
- out[2] = (x98 + x54);
- out[3] = x57;
- out[4] = x60;
- out[5] = x63;
- out[6] = x66;
- out[7] = x69;
- out[8] = x72;
- out[9] = x75;
- out[10] = x78;
- out[11] = x81;
- out[12] = x84;
- out[13] = x87;
- out[14] = x90;
- out[15] = x93;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m31_16limbs/fesquare.v b/src/Specific/solinas32_2e383m31_16limbs/fesquare.v
deleted file mode 100644
index c4af9f66c..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m31_16limbs.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_2e383m31_16limbs/fesquareDisplay.log b/src/Specific/solinas32_2e383m31_16limbs/fesquareDisplay.log
deleted file mode 100644
index 8fe77b9a4..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,76 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x31 = (((uint64_t)x2 * x29) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x29 * x2))))))))))))))));
- uint64_t x32 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x1f * (0x2 * ((uint64_t)x29 * x29))));
- uint64_t x33 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x30 * x29)) + (0x2 * ((uint64_t)x29 * x30)))));
- uint64_t x34 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x28 * x29)) + ((0x2 * ((uint64_t)x30 * x30)) + (0x2 * ((uint64_t)x29 * x28))))));
- uint64_t x35 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x1f * ((0x2 * ((uint64_t)x26 * x29)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + (0x2 * ((uint64_t)x29 * x26)))))));
- uint64_t x36 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x1f * ((0x2 * ((uint64_t)x24 * x29)) + ((0x2 * ((uint64_t)x26 * x30)) + ((0x2 * ((uint64_t)x28 * x28)) + ((0x2 * ((uint64_t)x30 * x26)) + (0x2 * ((uint64_t)x29 * x24))))))));
- uint64_t x37 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x1f * ((0x2 * ((uint64_t)x22 * x29)) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + (0x2 * ((uint64_t)x29 * x22)))))))));
- uint64_t x38 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x1f * ((0x2 * ((uint64_t)x20 * x29)) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + ((0x2 * ((uint64_t)x26 * x26)) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + (0x2 * ((uint64_t)x29 * x20))))))))));
- uint64_t x39 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x1f * ((0x2 * ((uint64_t)x18 * x29)) + ((0x2 * ((uint64_t)x20 * x30)) + ((0x2 * ((uint64_t)x22 * x28)) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + ((0x2 * ((uint64_t)x28 * x22)) + ((0x2 * ((uint64_t)x30 * x20)) + (0x2 * ((uint64_t)x29 * x18)))))))))));
- uint64_t x40 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x1f * ((0x2 * ((uint64_t)x16 * x29)) + ((0x2 * ((uint64_t)x18 * x30)) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + ((0x2 * ((uint64_t)x30 * x18)) + (0x2 * ((uint64_t)x29 * x16))))))))))));
- uint64_t x41 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x1f * ((0x2 * ((uint64_t)x14 * x29)) + ((0x2 * ((uint64_t)x16 * x30)) + ((0x2 * ((uint64_t)x18 * x28)) + ((0x2 * ((uint64_t)x20 * x26)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + ((0x2 * ((uint64_t)x26 * x20)) + ((0x2 * ((uint64_t)x28 * x18)) + ((0x2 * ((uint64_t)x30 * x16)) + (0x2 * ((uint64_t)x29 * x14)))))))))))));
- uint64_t x42 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x1f * ((0x2 * ((uint64_t)x12 * x29)) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + ((0x2 * ((uint64_t)x22 * x22)) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + (0x2 * ((uint64_t)x29 * x12))))))))))))));
- uint64_t x43 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x1f * ((0x2 * ((uint64_t)x10 * x29)) + ((0x2 * ((uint64_t)x12 * x30)) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + ((0x2 * ((uint64_t)x18 * x24)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((0x2 * ((uint64_t)x24 * x18)) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + ((0x2 * ((uint64_t)x30 * x12)) + (0x2 * ((uint64_t)x29 * x10)))))))))))))));
- uint64_t x44 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x1f * ((0x2 * ((uint64_t)x8 * x29)) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + ((0x2 * ((uint64_t)x18 * x22)) + ((0x2 * ((uint64_t)x20 * x20)) + ((0x2 * ((uint64_t)x22 * x18)) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + (0x2 * ((uint64_t)x29 * x8))))))))))))))));
- uint64_t x45 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1f * ((0x2 * ((uint64_t)x6 * x29)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + (0x2 * ((uint64_t)x29 * x6)))))))))))))))));
- uint64_t x46 = (((uint64_t)x2 * x2) + (0x1f * ((0x2 * ((uint64_t)x4 * x29)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + (0x2 * ((uint64_t)x29 * x4))))))))))))))))));
- uint64_t x47 = (x46 >> 0x18);
- uint32_t x48 = ((uint32_t)x46 & 0xffffff);
- uint64_t x49 = (x47 + x45);
- uint64_t x50 = (x49 >> 0x18);
- uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- uint64_t x52 = (x50 + x44);
- uint64_t x53 = (x52 >> 0x18);
- uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- uint64_t x55 = (x53 + x43);
- uint64_t x56 = (x55 >> 0x18);
- uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- uint64_t x58 = (x56 + x42);
- uint64_t x59 = (x58 >> 0x18);
- uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- uint64_t x61 = (x59 + x41);
- uint64_t x62 = (x61 >> 0x18);
- uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- uint64_t x64 = (x62 + x40);
- uint64_t x65 = (x64 >> 0x18);
- uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- uint64_t x67 = (x65 + x39);
- uint64_t x68 = (x67 >> 0x18);
- uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- uint64_t x70 = (x68 + x38);
- uint64_t x71 = (x70 >> 0x18);
- uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- uint64_t x73 = (x71 + x37);
- uint64_t x74 = (x73 >> 0x18);
- uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- uint64_t x76 = (x74 + x36);
- uint64_t x77 = (x76 >> 0x18);
- uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- uint64_t x79 = (x77 + x35);
- uint64_t x80 = (x79 >> 0x18);
- uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- uint64_t x82 = (x80 + x34);
- uint64_t x83 = (x82 >> 0x18);
- uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- uint64_t x85 = (x83 + x33);
- uint64_t x86 = (x85 >> 0x18);
- uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- uint64_t x88 = (x86 + x32);
- uint64_t x89 = (x88 >> 0x18);
- uint32_t x90 = ((uint32_t)x88 & 0xffffff);
- uint64_t x91 = (x89 + x31);
- uint64_t x92 = (x91 >> 0x17);
- uint32_t x93 = ((uint32_t)x91 & 0x7fffff);
- uint64_t x94 = (x48 + (0x1f * x92));
- uint32_t x95 = (uint32_t) (x94 >> 0x18);
- uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- uint32_t x97 = (x95 + x51);
- uint32_t x98 = (x97 >> 0x18);
- uint32_t x99 = (x97 & 0xffffff);
- return (Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, Return x57, (x98 + x54), Return x99, Return x96))
-x
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m31_16limbs/fesquareDisplay.v b/src/Specific/solinas32_2e383m31_16limbs/fesquareDisplay.v
deleted file mode 100644
index 3ba8cf9ee..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m31_16limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e383m31_16limbs/fesub.c b/src/Specific/solinas32_2e383m31_16limbs/fesub.c
deleted file mode 100644
index 39e6e058d..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/fesub.c
+++ /dev/null
@@ -1,51 +0,0 @@
-static void fesub(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- out[0] = ((0x1ffffc2 + x5) - x35);
- out[1] = ((0x1fffffe + x7) - x37);
- out[2] = ((0x1fffffe + x9) - x39);
- out[3] = ((0x1fffffe + x11) - x41);
- out[4] = ((0x1fffffe + x13) - x43);
- out[5] = ((0x1fffffe + x15) - x45);
- out[6] = ((0x1fffffe + x17) - x47);
- out[7] = ((0x1fffffe + x19) - x49);
- out[8] = ((0x1fffffe + x21) - x51);
- out[9] = ((0x1fffffe + x23) - x53);
- out[10] = ((0x1fffffe + x25) - x55);
- out[11] = ((0x1fffffe + x27) - x57);
- out[12] = ((0x1fffffe + x29) - x59);
- out[13] = ((0x1fffffe + x31) - x61);
- out[14] = ((0x1fffffe + x33) - x63);
- out[15] = ((0xfffffe + x32) - x62);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m31_16limbs/fesub.v b/src/Specific/solinas32_2e383m31_16limbs/fesub.v
deleted file mode 100644
index d630c38f6..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m31_16limbs.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_2e383m31_16limbs/fesubDisplay.log b/src/Specific/solinas32_2e383m31_16limbs/fesubDisplay.log
deleted file mode 100644
index c69661de5..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- (((0xfffffe + x32) - x62), ((0x1fffffe + x33) - x63), ((0x1fffffe + x31) - x61), ((0x1fffffe + x29) - x59), ((0x1fffffe + x27) - x57), ((0x1fffffe + x25) - x55), ((0x1fffffe + x23) - x53), ((0x1fffffe + x21) - x51), ((0x1fffffe + x19) - x49), ((0x1fffffe + x17) - x47), ((0x1fffffe + x15) - x45), ((0x1fffffe + x13) - x43), ((0x1fffffe + x11) - x41), ((0x1fffffe + x9) - x39), ((0x1fffffe + x7) - x37), ((0x1ffffc2 + x5) - x35)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m31_16limbs/fesubDisplay.v b/src/Specific/solinas32_2e383m31_16limbs/fesubDisplay.v
deleted file mode 100644
index 660587f64..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m31_16limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e383m31_16limbs/freeze.c b/src/Specific/solinas32_2e383m31_16limbs/freeze.c
deleted file mode 100644
index ca1ac094c..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/freeze.c
+++ /dev/null
@@ -1,84 +0,0 @@
-static void freeze(uint32_t out[16], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffe1);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x4, 0xffffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x6, 0xffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x8, 0xffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x10, 0xffffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x12, 0xffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x14, 0xffffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x16, 0xffffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x18, 0xffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x20, 0xffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x22, 0xffffff);
- { uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x24, 0xffffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x26, 0xffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x28, 0xffffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x30, 0xffffff);
- { uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x29, 0x7fffff);
- { uint32_t x79 = cmovznz32(x78, 0x0, 0xffffffff);
- { uint32_t x80 = (x79 & 0xffffe1);
- { uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x32, Return x80);
- { uint32_t x84 = (x79 & 0xffffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x35, Return x84);
- { uint32_t x88 = (x79 & 0xffffff);
- { uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x38, Return x88);
- { uint32_t x92 = (x79 & 0xffffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x41, Return x92);
- { uint32_t x96 = (x79 & 0xffffff);
- { uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x44, Return x96);
- { uint32_t x100 = (x79 & 0xffffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x47, Return x100);
- { uint32_t x104 = (x79 & 0xffffff);
- { uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x50, Return x104);
- { uint32_t x108 = (x79 & 0xffffff);
- { uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x53, Return x108);
- { uint32_t x112 = (x79 & 0xffffff);
- { uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x56, Return x112);
- { uint32_t x116 = (x79 & 0xffffff);
- { uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x59, Return x116);
- { uint32_t x120 = (x79 & 0xffffff);
- { uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x62, Return x120);
- { uint32_t x124 = (x79 & 0xffffff);
- { uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x65, Return x124);
- { uint32_t x128 = (x79 & 0xffffff);
- { uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x68, Return x128);
- { uint32_t x132 = (x79 & 0xffffff);
- { uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x71, Return x132);
- { uint32_t x136 = (x79 & 0xffffff);
- { uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x74, Return x136);
- { uint32_t x140 = (x79 & 0x7fffff);
- { uint32_t x142, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x77, Return x140);
- out[0] = x82;
- out[1] = x86;
- out[2] = x90;
- out[3] = x94;
- out[4] = x98;
- out[5] = x102;
- out[6] = x106;
- out[7] = x110;
- out[8] = x114;
- out[9] = x118;
- out[10] = x122;
- out[11] = x126;
- out[12] = x130;
- out[13] = x134;
- out[14] = x138;
- out[15] = x142;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m31_16limbs/freeze.v b/src/Specific/solinas32_2e383m31_16limbs/freeze.v
deleted file mode 100644
index c41154b55..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m31_16limbs.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_2e383m31_16limbs/freezeDisplay.log b/src/Specific/solinas32_2e383m31_16limbs/freezeDisplay.log
deleted file mode 100644
index ca55d2622..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/freezeDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffe1);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x4, 0xffffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x6, 0xffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x8, 0xffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x10, 0xffffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x12, 0xffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x14, 0xffffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x16, 0xffffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x18, 0xffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x20, 0xffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x22, 0xffffff);
- uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x24, 0xffffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x26, 0xffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x28, 0xffffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x30, 0xffffff);
- uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x29, 0x7fffff);
- uint32_t x79 = cmovznz32(x78, 0x0, 0xffffffff);
- uint32_t x80 = (x79 & 0xffffe1);
- uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x32, Return x80);
- uint32_t x84 = (x79 & 0xffffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x35, Return x84);
- uint32_t x88 = (x79 & 0xffffff);
- uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x38, Return x88);
- uint32_t x92 = (x79 & 0xffffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x41, Return x92);
- uint32_t x96 = (x79 & 0xffffff);
- uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x44, Return x96);
- uint32_t x100 = (x79 & 0xffffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x47, Return x100);
- uint32_t x104 = (x79 & 0xffffff);
- uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x50, Return x104);
- uint32_t x108 = (x79 & 0xffffff);
- uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x53, Return x108);
- uint32_t x112 = (x79 & 0xffffff);
- uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x56, Return x112);
- uint32_t x116 = (x79 & 0xffffff);
- uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x59, Return x116);
- uint32_t x120 = (x79 & 0xffffff);
- uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x62, Return x120);
- uint32_t x124 = (x79 & 0xffffff);
- uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x65, Return x124);
- uint32_t x128 = (x79 & 0xffffff);
- uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x68, Return x128);
- uint32_t x132 = (x79 & 0xffffff);
- uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x71, Return x132);
- uint32_t x136 = (x79 & 0xffffff);
- uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x74, Return x136);
- uint32_t x140 = (x79 & 0x7fffff);
- uint32_t x142, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x77, Return x140);
- (Return x142, Return x138, Return x134, Return x130, Return x126, Return x122, Return x118, Return x114, Return x110, Return x106, Return x102, Return x98, Return x94, Return x90, Return x86, Return x82))
-x
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m31_16limbs/freezeDisplay.v b/src/Specific/solinas32_2e383m31_16limbs/freezeDisplay.v
deleted file mode 100644
index eb2882e6a..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m31_16limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e383m31_16limbs/py_interpreter.sh b/src/Specific/solinas32_2e383m31_16limbs/py_interpreter.sh
deleted file mode 100755
index 9108d7675..000000000
--- a/src/Specific/solinas32_2e383m31_16limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**383 - 31' -Dmodulus_bytes='23 + 15/16' -Da24='121665'
diff --git a/src/Specific/solinas32_2e383m421_17limbs/CurveParameters.v b/src/Specific/solinas32_2e383m421_17limbs/CurveParameters.v
deleted file mode 100644
index ec80a720a..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^383 - 421
-Base: 22 + 9/17
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 17%nat;
- base := 22 + 9/17;
- bitwidth := 32;
- s := 2^383;
- c := [(1, 421)];
- carry_chains := Some [seq 0 (pred 17); [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_2e383m421_17limbs/Synthesis.v b/src/Specific/solinas32_2e383m421_17limbs/Synthesis.v
deleted file mode 100644
index 9bcc52d9e..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e383m421_17limbs.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_2e383m421_17limbs/compiler.sh b/src/Specific/solinas32_2e383m421_17limbs/compiler.sh
deleted file mode 100755
index 23c973618..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<383) - 421' "$@"
diff --git a/src/Specific/solinas32_2e383m421_17limbs/compilerxx.sh b/src/Specific/solinas32_2e383m421_17limbs/compilerxx.sh
deleted file mode 100755
index b03226837..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<383) - 421' "$@"
diff --git a/src/Specific/solinas32_2e383m421_17limbs/feadd.c b/src/Specific/solinas32_2e383m421_17limbs/feadd.c
deleted file mode 100644
index 30eb11eae..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/feadd.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void feadd(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- out[0] = (x5 + x37);
- out[1] = (x7 + x39);
- out[2] = (x9 + x41);
- out[3] = (x11 + x43);
- out[4] = (x13 + x45);
- out[5] = (x15 + x47);
- out[6] = (x17 + x49);
- out[7] = (x19 + x51);
- out[8] = (x21 + x53);
- out[9] = (x23 + x55);
- out[10] = (x25 + x57);
- out[11] = (x27 + x59);
- out[12] = (x29 + x61);
- out[13] = (x31 + x63);
- out[14] = (x33 + x65);
- out[15] = (x35 + x67);
- out[16] = (x34 + x66);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m421_17limbs/feadd.v b/src/Specific/solinas32_2e383m421_17limbs/feadd.v
deleted file mode 100644
index 0c5f3689e..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m421_17limbs.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_2e383m421_17limbs/feaddDisplay.log b/src/Specific/solinas32_2e383m421_17limbs/feaddDisplay.log
deleted file mode 100644
index 7324e0941..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- ((x34 + x66), (x35 + x67), (x33 + x65), (x31 + x63), (x29 + x61), (x27 + x59), (x25 + x57), (x23 + x55), (x21 + x53), (x19 + x51), (x17 + x49), (x15 + x47), (x13 + x45), (x11 + x43), (x9 + x41), (x7 + x39), (x5 + x37)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m421_17limbs/feaddDisplay.v b/src/Specific/solinas32_2e383m421_17limbs/feaddDisplay.v
deleted file mode 100644
index 514cc1aae..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m421_17limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e383m421_17limbs/fecarry.v b/src/Specific/solinas32_2e383m421_17limbs/fecarry.v
deleted file mode 100644
index 7530ea344..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m421_17limbs.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_2e383m421_17limbs/fecarryDisplay.v b/src/Specific/solinas32_2e383m421_17limbs/fecarryDisplay.v
deleted file mode 100644
index d9fcc1fdd..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m421_17limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e383m421_17limbs/femul.c b/src/Specific/solinas32_2e383m421_17limbs/femul.c
deleted file mode 100644
index 842b06fac..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/femul.c
+++ /dev/null
@@ -1,127 +0,0 @@
-static void femul(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- { uint64_t x68 = (((uint64_t)x5 * x66) + (((uint64_t)x7 * x67) + ((0x2 * ((uint64_t)x9 * x65)) + (((uint64_t)x11 * x63) + ((0x2 * ((uint64_t)x13 * x61)) + (((uint64_t)x15 * x59) + ((0x2 * ((uint64_t)x17 * x57)) + (((uint64_t)x19 * x55) + ((0x2 * ((uint64_t)x21 * x53)) + (((uint64_t)x23 * x51) + ((0x2 * ((uint64_t)x25 * x49)) + (((uint64_t)x27 * x47) + ((0x2 * ((uint64_t)x29 * x45)) + (((uint64_t)x31 * x43) + ((0x2 * ((uint64_t)x33 * x41)) + (((uint64_t)x35 * x39) + ((uint64_t)x34 * x37)))))))))))))))));
- { uint64_t x69 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + ((uint64_t)x35 * x37)))))))))))))))) + (0x1a5 * (0x2 * ((uint64_t)x34 * x66))));
- { uint64_t x70 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + ((0x2 * ((uint64_t)x9 * x61)) + (((uint64_t)x11 * x59) + ((0x2 * ((uint64_t)x13 * x57)) + (((uint64_t)x15 * x55) + ((0x2 * ((uint64_t)x17 * x53)) + (((uint64_t)x19 * x51) + ((0x2 * ((uint64_t)x21 * x49)) + (((uint64_t)x23 * x47) + ((0x2 * ((uint64_t)x25 * x45)) + (((uint64_t)x27 * x43) + ((0x2 * ((uint64_t)x29 * x41)) + (((uint64_t)x31 * x39) + ((uint64_t)x33 * x37))))))))))))))) + (0x1a5 * (((uint64_t)x35 * x66) + ((uint64_t)x34 * x67))));
- { uint64_t x71 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + ((0x2 * ((uint64_t)x25 * x43)) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((uint64_t)x31 * x37)))))))))))))) + (0x1a5 * ((0x2 * ((uint64_t)x33 * x66)) + (((uint64_t)x35 * x67) + (0x2 * ((uint64_t)x34 * x65))))));
- { uint64_t x72 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + ((0x2 * ((uint64_t)x9 * x57)) + (((uint64_t)x11 * x55) + ((0x2 * ((uint64_t)x13 * x53)) + (((uint64_t)x15 * x51) + ((0x2 * ((uint64_t)x17 * x49)) + (((uint64_t)x19 * x47) + ((0x2 * ((uint64_t)x21 * x45)) + (((uint64_t)x23 * x43) + ((0x2 * ((uint64_t)x25 * x41)) + (((uint64_t)x27 * x39) + ((uint64_t)x29 * x37))))))))))))) + (0x1a5 * (((uint64_t)x31 * x66) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + ((uint64_t)x34 * x63))))));
- { uint64_t x73 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + ((uint64_t)x27 * x37)))))))))))) + (0x1a5 * ((0x2 * ((uint64_t)x29 * x66)) + (((uint64_t)x31 * x67) + ((0x2 * ((uint64_t)x33 * x65)) + (((uint64_t)x35 * x63) + (0x2 * ((uint64_t)x34 * x61))))))));
- { uint64_t x74 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + ((0x2 * ((uint64_t)x9 * x53)) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + (((uint64_t)x15 * x47) + ((0x2 * ((uint64_t)x17 * x45)) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + (((uint64_t)x23 * x39) + ((uint64_t)x25 * x37))))))))))) + (0x1a5 * (((uint64_t)x27 * x66) + (((uint64_t)x29 * x67) + (((uint64_t)x31 * x65) + (((uint64_t)x33 * x63) + (((uint64_t)x35 * x61) + ((uint64_t)x34 * x59))))))));
- { uint64_t x75 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((uint64_t)x23 * x37)))))))))) + (0x1a5 * ((0x2 * ((uint64_t)x25 * x66)) + (((uint64_t)x27 * x67) + ((0x2 * ((uint64_t)x29 * x65)) + (((uint64_t)x31 * x63) + ((0x2 * ((uint64_t)x33 * x61)) + (((uint64_t)x35 * x59) + (0x2 * ((uint64_t)x34 * x57))))))))));
- { uint64_t x76 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + ((0x2 * ((uint64_t)x13 * x45)) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + (((uint64_t)x19 * x39) + ((uint64_t)x21 * x37))))))))) + (0x1a5 * (((uint64_t)x23 * x66) + (((uint64_t)x25 * x67) + (((uint64_t)x27 * x65) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + (((uint64_t)x33 * x59) + (((uint64_t)x35 * x57) + ((uint64_t)x34 * x55))))))))));
- { uint64_t x77 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((uint64_t)x19 * x37)))))))) + (0x1a5 * ((0x2 * ((uint64_t)x21 * x66)) + (((uint64_t)x23 * x67) + ((0x2 * ((uint64_t)x25 * x65)) + (((uint64_t)x27 * x63) + ((0x2 * ((uint64_t)x29 * x61)) + (((uint64_t)x31 * x59) + ((0x2 * ((uint64_t)x33 * x57)) + (((uint64_t)x35 * x55) + (0x2 * ((uint64_t)x34 * x53))))))))))));
- { uint64_t x78 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + ((0x2 * ((uint64_t)x9 * x45)) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + (((uint64_t)x15 * x39) + ((uint64_t)x17 * x37))))))) + (0x1a5 * (((uint64_t)x19 * x66) + (((uint64_t)x21 * x67) + (((uint64_t)x23 * x65) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + (((uint64_t)x35 * x53) + ((uint64_t)x34 * x51))))))))))));
- { uint64_t x79 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((uint64_t)x15 * x37)))))) + (0x1a5 * ((0x2 * ((uint64_t)x17 * x66)) + (((uint64_t)x19 * x67) + ((0x2 * ((uint64_t)x21 * x65)) + (((uint64_t)x23 * x63) + ((0x2 * ((uint64_t)x25 * x61)) + (((uint64_t)x27 * x59) + ((0x2 * ((uint64_t)x29 * x57)) + (((uint64_t)x31 * x55) + ((0x2 * ((uint64_t)x33 * x53)) + (((uint64_t)x35 * x51) + (0x2 * ((uint64_t)x34 * x49))))))))))))));
- { uint64_t x80 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + (((uint64_t)x11 * x39) + ((uint64_t)x13 * x37))))) + (0x1a5 * (((uint64_t)x15 * x66) + (((uint64_t)x17 * x67) + (((uint64_t)x19 * x65) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + (((uint64_t)x35 * x49) + ((uint64_t)x34 * x47))))))))))))));
- { uint64_t x81 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((uint64_t)x11 * x37)))) + (0x1a5 * ((0x2 * ((uint64_t)x13 * x66)) + (((uint64_t)x15 * x67) + ((0x2 * ((uint64_t)x17 * x65)) + (((uint64_t)x19 * x63) + ((0x2 * ((uint64_t)x21 * x61)) + (((uint64_t)x23 * x59) + ((0x2 * ((uint64_t)x25 * x57)) + (((uint64_t)x27 * x55) + ((0x2 * ((uint64_t)x29 * x53)) + (((uint64_t)x31 * x51) + ((0x2 * ((uint64_t)x33 * x49)) + (((uint64_t)x35 * x47) + (0x2 * ((uint64_t)x34 * x45))))))))))))))));
- { uint64_t x82 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + ((uint64_t)x9 * x37))) + (0x1a5 * (((uint64_t)x11 * x66) + (((uint64_t)x13 * x67) + (((uint64_t)x15 * x65) + (((uint64_t)x17 * x63) + (((uint64_t)x19 * x61) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + (((uint64_t)x31 * x49) + (((uint64_t)x33 * x47) + (((uint64_t)x35 * x45) + ((uint64_t)x34 * x43))))))))))))))));
- { uint64_t x83 = ((((uint64_t)x5 * x39) + ((uint64_t)x7 * x37)) + (0x1a5 * ((0x2 * ((uint64_t)x9 * x66)) + (((uint64_t)x11 * x67) + ((0x2 * ((uint64_t)x13 * x65)) + (((uint64_t)x15 * x63) + ((0x2 * ((uint64_t)x17 * x61)) + (((uint64_t)x19 * x59) + ((0x2 * ((uint64_t)x21 * x57)) + (((uint64_t)x23 * x55) + ((0x2 * ((uint64_t)x25 * x53)) + (((uint64_t)x27 * x51) + ((0x2 * ((uint64_t)x29 * x49)) + (((uint64_t)x31 * x47) + ((0x2 * ((uint64_t)x33 * x45)) + (((uint64_t)x35 * x43) + (0x2 * ((uint64_t)x34 * x41))))))))))))))))));
- { uint64_t x84 = (((uint64_t)x5 * x37) + (0x1a5 * ((0x2 * ((uint64_t)x7 * x66)) + ((0x2 * ((uint64_t)x9 * x67)) + ((0x2 * ((uint64_t)x11 * x65)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + ((0x2 * ((uint64_t)x35 * x41)) + (0x2 * ((uint64_t)x34 * x39)))))))))))))))))));
- { uint64_t x85 = (x84 >> 0x17);
- { uint32_t x86 = ((uint32_t)x84 & 0x7fffff);
- { uint64_t x87 = (x85 + x83);
- { uint64_t x88 = (x87 >> 0x17);
- { uint32_t x89 = ((uint32_t)x87 & 0x7fffff);
- { uint64_t x90 = (x88 + x82);
- { uint64_t x91 = (x90 >> 0x16);
- { uint32_t x92 = ((uint32_t)x90 & 0x3fffff);
- { uint64_t x93 = (x91 + x81);
- { uint64_t x94 = (x93 >> 0x17);
- { uint32_t x95 = ((uint32_t)x93 & 0x7fffff);
- { uint64_t x96 = (x94 + x80);
- { uint64_t x97 = (x96 >> 0x16);
- { uint32_t x98 = ((uint32_t)x96 & 0x3fffff);
- { uint64_t x99 = (x97 + x79);
- { uint64_t x100 = (x99 >> 0x17);
- { uint32_t x101 = ((uint32_t)x99 & 0x7fffff);
- { uint64_t x102 = (x100 + x78);
- { uint64_t x103 = (x102 >> 0x16);
- { uint32_t x104 = ((uint32_t)x102 & 0x3fffff);
- { uint64_t x105 = (x103 + x77);
- { uint64_t x106 = (x105 >> 0x17);
- { uint32_t x107 = ((uint32_t)x105 & 0x7fffff);
- { uint64_t x108 = (x106 + x76);
- { uint64_t x109 = (x108 >> 0x16);
- { uint32_t x110 = ((uint32_t)x108 & 0x3fffff);
- { uint64_t x111 = (x109 + x75);
- { uint64_t x112 = (x111 >> 0x17);
- { uint32_t x113 = ((uint32_t)x111 & 0x7fffff);
- { uint64_t x114 = (x112 + x74);
- { uint64_t x115 = (x114 >> 0x16);
- { uint32_t x116 = ((uint32_t)x114 & 0x3fffff);
- { uint64_t x117 = (x115 + x73);
- { uint64_t x118 = (x117 >> 0x17);
- { uint32_t x119 = ((uint32_t)x117 & 0x7fffff);
- { uint64_t x120 = (x118 + x72);
- { uint64_t x121 = (x120 >> 0x16);
- { uint32_t x122 = ((uint32_t)x120 & 0x3fffff);
- { uint64_t x123 = (x121 + x71);
- { uint64_t x124 = (x123 >> 0x17);
- { uint32_t x125 = ((uint32_t)x123 & 0x7fffff);
- { uint64_t x126 = (x124 + x70);
- { uint64_t x127 = (x126 >> 0x16);
- { uint32_t x128 = ((uint32_t)x126 & 0x3fffff);
- { uint64_t x129 = (x127 + x69);
- { uint64_t x130 = (x129 >> 0x17);
- { uint32_t x131 = ((uint32_t)x129 & 0x7fffff);
- { uint64_t x132 = (x130 + x68);
- { uint32_t x133 = (uint32_t) (x132 >> 0x16);
- { uint32_t x134 = ((uint32_t)x132 & 0x3fffff);
- { uint64_t x135 = (x86 + ((uint64_t)0x1a5 * x133));
- { uint32_t x136 = (uint32_t) (x135 >> 0x17);
- { uint32_t x137 = ((uint32_t)x135 & 0x7fffff);
- { uint32_t x138 = (x136 + x89);
- { uint32_t x139 = (x138 >> 0x17);
- { uint32_t x140 = (x138 & 0x7fffff);
- out[0] = x137;
- out[1] = x140;
- out[2] = (x139 + x92);
- out[3] = x95;
- out[4] = x98;
- out[5] = x101;
- out[6] = x104;
- out[7] = x107;
- out[8] = x110;
- out[9] = x113;
- out[10] = x116;
- out[11] = x119;
- out[12] = x122;
- out[13] = x125;
- out[14] = x128;
- out[15] = x131;
- out[16] = x134;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m421_17limbs/femul.v b/src/Specific/solinas32_2e383m421_17limbs/femul.v
deleted file mode 100644
index 3cd04ebd8..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m421_17limbs.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_2e383m421_17limbs/femulDisplay.log b/src/Specific/solinas32_2e383m421_17limbs/femulDisplay.log
deleted file mode 100644
index 2939866b0..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/femulDisplay.log
+++ /dev/null
@@ -1,80 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- uint64_t x68 = (((uint64_t)x5 * x66) + (((uint64_t)x7 * x67) + ((0x2 * ((uint64_t)x9 * x65)) + (((uint64_t)x11 * x63) + ((0x2 * ((uint64_t)x13 * x61)) + (((uint64_t)x15 * x59) + ((0x2 * ((uint64_t)x17 * x57)) + (((uint64_t)x19 * x55) + ((0x2 * ((uint64_t)x21 * x53)) + (((uint64_t)x23 * x51) + ((0x2 * ((uint64_t)x25 * x49)) + (((uint64_t)x27 * x47) + ((0x2 * ((uint64_t)x29 * x45)) + (((uint64_t)x31 * x43) + ((0x2 * ((uint64_t)x33 * x41)) + (((uint64_t)x35 * x39) + ((uint64_t)x34 * x37)))))))))))))))));
- uint64_t x69 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + ((uint64_t)x35 * x37)))))))))))))))) + (0x1a5 * (0x2 * ((uint64_t)x34 * x66))));
- uint64_t x70 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + ((0x2 * ((uint64_t)x9 * x61)) + (((uint64_t)x11 * x59) + ((0x2 * ((uint64_t)x13 * x57)) + (((uint64_t)x15 * x55) + ((0x2 * ((uint64_t)x17 * x53)) + (((uint64_t)x19 * x51) + ((0x2 * ((uint64_t)x21 * x49)) + (((uint64_t)x23 * x47) + ((0x2 * ((uint64_t)x25 * x45)) + (((uint64_t)x27 * x43) + ((0x2 * ((uint64_t)x29 * x41)) + (((uint64_t)x31 * x39) + ((uint64_t)x33 * x37))))))))))))))) + (0x1a5 * (((uint64_t)x35 * x66) + ((uint64_t)x34 * x67))));
- uint64_t x71 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + ((0x2 * ((uint64_t)x25 * x43)) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((uint64_t)x31 * x37)))))))))))))) + (0x1a5 * ((0x2 * ((uint64_t)x33 * x66)) + (((uint64_t)x35 * x67) + (0x2 * ((uint64_t)x34 * x65))))));
- uint64_t x72 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + ((0x2 * ((uint64_t)x9 * x57)) + (((uint64_t)x11 * x55) + ((0x2 * ((uint64_t)x13 * x53)) + (((uint64_t)x15 * x51) + ((0x2 * ((uint64_t)x17 * x49)) + (((uint64_t)x19 * x47) + ((0x2 * ((uint64_t)x21 * x45)) + (((uint64_t)x23 * x43) + ((0x2 * ((uint64_t)x25 * x41)) + (((uint64_t)x27 * x39) + ((uint64_t)x29 * x37))))))))))))) + (0x1a5 * (((uint64_t)x31 * x66) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + ((uint64_t)x34 * x63))))));
- uint64_t x73 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + ((uint64_t)x27 * x37)))))))))))) + (0x1a5 * ((0x2 * ((uint64_t)x29 * x66)) + (((uint64_t)x31 * x67) + ((0x2 * ((uint64_t)x33 * x65)) + (((uint64_t)x35 * x63) + (0x2 * ((uint64_t)x34 * x61))))))));
- uint64_t x74 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + ((0x2 * ((uint64_t)x9 * x53)) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + (((uint64_t)x15 * x47) + ((0x2 * ((uint64_t)x17 * x45)) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + (((uint64_t)x23 * x39) + ((uint64_t)x25 * x37))))))))))) + (0x1a5 * (((uint64_t)x27 * x66) + (((uint64_t)x29 * x67) + (((uint64_t)x31 * x65) + (((uint64_t)x33 * x63) + (((uint64_t)x35 * x61) + ((uint64_t)x34 * x59))))))));
- uint64_t x75 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((uint64_t)x23 * x37)))))))))) + (0x1a5 * ((0x2 * ((uint64_t)x25 * x66)) + (((uint64_t)x27 * x67) + ((0x2 * ((uint64_t)x29 * x65)) + (((uint64_t)x31 * x63) + ((0x2 * ((uint64_t)x33 * x61)) + (((uint64_t)x35 * x59) + (0x2 * ((uint64_t)x34 * x57))))))))));
- uint64_t x76 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + ((0x2 * ((uint64_t)x13 * x45)) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + (((uint64_t)x19 * x39) + ((uint64_t)x21 * x37))))))))) + (0x1a5 * (((uint64_t)x23 * x66) + (((uint64_t)x25 * x67) + (((uint64_t)x27 * x65) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + (((uint64_t)x33 * x59) + (((uint64_t)x35 * x57) + ((uint64_t)x34 * x55))))))))));
- uint64_t x77 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((uint64_t)x19 * x37)))))))) + (0x1a5 * ((0x2 * ((uint64_t)x21 * x66)) + (((uint64_t)x23 * x67) + ((0x2 * ((uint64_t)x25 * x65)) + (((uint64_t)x27 * x63) + ((0x2 * ((uint64_t)x29 * x61)) + (((uint64_t)x31 * x59) + ((0x2 * ((uint64_t)x33 * x57)) + (((uint64_t)x35 * x55) + (0x2 * ((uint64_t)x34 * x53))))))))))));
- uint64_t x78 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + ((0x2 * ((uint64_t)x9 * x45)) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + (((uint64_t)x15 * x39) + ((uint64_t)x17 * x37))))))) + (0x1a5 * (((uint64_t)x19 * x66) + (((uint64_t)x21 * x67) + (((uint64_t)x23 * x65) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + (((uint64_t)x35 * x53) + ((uint64_t)x34 * x51))))))))))));
- uint64_t x79 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((uint64_t)x15 * x37)))))) + (0x1a5 * ((0x2 * ((uint64_t)x17 * x66)) + (((uint64_t)x19 * x67) + ((0x2 * ((uint64_t)x21 * x65)) + (((uint64_t)x23 * x63) + ((0x2 * ((uint64_t)x25 * x61)) + (((uint64_t)x27 * x59) + ((0x2 * ((uint64_t)x29 * x57)) + (((uint64_t)x31 * x55) + ((0x2 * ((uint64_t)x33 * x53)) + (((uint64_t)x35 * x51) + (0x2 * ((uint64_t)x34 * x49))))))))))))));
- uint64_t x80 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + (((uint64_t)x11 * x39) + ((uint64_t)x13 * x37))))) + (0x1a5 * (((uint64_t)x15 * x66) + (((uint64_t)x17 * x67) + (((uint64_t)x19 * x65) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + (((uint64_t)x35 * x49) + ((uint64_t)x34 * x47))))))))))))));
- uint64_t x81 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((uint64_t)x11 * x37)))) + (0x1a5 * ((0x2 * ((uint64_t)x13 * x66)) + (((uint64_t)x15 * x67) + ((0x2 * ((uint64_t)x17 * x65)) + (((uint64_t)x19 * x63) + ((0x2 * ((uint64_t)x21 * x61)) + (((uint64_t)x23 * x59) + ((0x2 * ((uint64_t)x25 * x57)) + (((uint64_t)x27 * x55) + ((0x2 * ((uint64_t)x29 * x53)) + (((uint64_t)x31 * x51) + ((0x2 * ((uint64_t)x33 * x49)) + (((uint64_t)x35 * x47) + (0x2 * ((uint64_t)x34 * x45))))))))))))))));
- uint64_t x82 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + ((uint64_t)x9 * x37))) + (0x1a5 * (((uint64_t)x11 * x66) + (((uint64_t)x13 * x67) + (((uint64_t)x15 * x65) + (((uint64_t)x17 * x63) + (((uint64_t)x19 * x61) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + (((uint64_t)x31 * x49) + (((uint64_t)x33 * x47) + (((uint64_t)x35 * x45) + ((uint64_t)x34 * x43))))))))))))))));
- uint64_t x83 = ((((uint64_t)x5 * x39) + ((uint64_t)x7 * x37)) + (0x1a5 * ((0x2 * ((uint64_t)x9 * x66)) + (((uint64_t)x11 * x67) + ((0x2 * ((uint64_t)x13 * x65)) + (((uint64_t)x15 * x63) + ((0x2 * ((uint64_t)x17 * x61)) + (((uint64_t)x19 * x59) + ((0x2 * ((uint64_t)x21 * x57)) + (((uint64_t)x23 * x55) + ((0x2 * ((uint64_t)x25 * x53)) + (((uint64_t)x27 * x51) + ((0x2 * ((uint64_t)x29 * x49)) + (((uint64_t)x31 * x47) + ((0x2 * ((uint64_t)x33 * x45)) + (((uint64_t)x35 * x43) + (0x2 * ((uint64_t)x34 * x41))))))))))))))))));
- uint64_t x84 = (((uint64_t)x5 * x37) + (0x1a5 * ((0x2 * ((uint64_t)x7 * x66)) + ((0x2 * ((uint64_t)x9 * x67)) + ((0x2 * ((uint64_t)x11 * x65)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + ((0x2 * ((uint64_t)x35 * x41)) + (0x2 * ((uint64_t)x34 * x39)))))))))))))))))));
- uint64_t x85 = (x84 >> 0x17);
- uint32_t x86 = ((uint32_t)x84 & 0x7fffff);
- uint64_t x87 = (x85 + x83);
- uint64_t x88 = (x87 >> 0x17);
- uint32_t x89 = ((uint32_t)x87 & 0x7fffff);
- uint64_t x90 = (x88 + x82);
- uint64_t x91 = (x90 >> 0x16);
- uint32_t x92 = ((uint32_t)x90 & 0x3fffff);
- uint64_t x93 = (x91 + x81);
- uint64_t x94 = (x93 >> 0x17);
- uint32_t x95 = ((uint32_t)x93 & 0x7fffff);
- uint64_t x96 = (x94 + x80);
- uint64_t x97 = (x96 >> 0x16);
- uint32_t x98 = ((uint32_t)x96 & 0x3fffff);
- uint64_t x99 = (x97 + x79);
- uint64_t x100 = (x99 >> 0x17);
- uint32_t x101 = ((uint32_t)x99 & 0x7fffff);
- uint64_t x102 = (x100 + x78);
- uint64_t x103 = (x102 >> 0x16);
- uint32_t x104 = ((uint32_t)x102 & 0x3fffff);
- uint64_t x105 = (x103 + x77);
- uint64_t x106 = (x105 >> 0x17);
- uint32_t x107 = ((uint32_t)x105 & 0x7fffff);
- uint64_t x108 = (x106 + x76);
- uint64_t x109 = (x108 >> 0x16);
- uint32_t x110 = ((uint32_t)x108 & 0x3fffff);
- uint64_t x111 = (x109 + x75);
- uint64_t x112 = (x111 >> 0x17);
- uint32_t x113 = ((uint32_t)x111 & 0x7fffff);
- uint64_t x114 = (x112 + x74);
- uint64_t x115 = (x114 >> 0x16);
- uint32_t x116 = ((uint32_t)x114 & 0x3fffff);
- uint64_t x117 = (x115 + x73);
- uint64_t x118 = (x117 >> 0x17);
- uint32_t x119 = ((uint32_t)x117 & 0x7fffff);
- uint64_t x120 = (x118 + x72);
- uint64_t x121 = (x120 >> 0x16);
- uint32_t x122 = ((uint32_t)x120 & 0x3fffff);
- uint64_t x123 = (x121 + x71);
- uint64_t x124 = (x123 >> 0x17);
- uint32_t x125 = ((uint32_t)x123 & 0x7fffff);
- uint64_t x126 = (x124 + x70);
- uint64_t x127 = (x126 >> 0x16);
- uint32_t x128 = ((uint32_t)x126 & 0x3fffff);
- uint64_t x129 = (x127 + x69);
- uint64_t x130 = (x129 >> 0x17);
- uint32_t x131 = ((uint32_t)x129 & 0x7fffff);
- uint64_t x132 = (x130 + x68);
- uint32_t x133 = (uint32_t) (x132 >> 0x16);
- uint32_t x134 = ((uint32_t)x132 & 0x3fffff);
- uint64_t x135 = (x86 + ((uint64_t)0x1a5 * x133));
- uint32_t x136 = (uint32_t) (x135 >> 0x17);
- uint32_t x137 = ((uint32_t)x135 & 0x7fffff);
- uint32_t x138 = (x136 + x89);
- uint32_t x139 = (x138 >> 0x17);
- uint32_t x140 = (x138 & 0x7fffff);
- return (Return x134, Return x131, Return x128, Return x125, Return x122, Return x119, Return x116, Return x113, Return x110, Return x107, Return x104, Return x101, Return x98, Return x95, (x139 + x92), Return x140, Return x137))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m421_17limbs/femulDisplay.v b/src/Specific/solinas32_2e383m421_17limbs/femulDisplay.v
deleted file mode 100644
index 120d2eb90..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m421_17limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e383m421_17limbs/fesquare.c b/src/Specific/solinas32_2e383m421_17limbs/fesquare.c
deleted file mode 100644
index 7ac3264ac..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/fesquare.c
+++ /dev/null
@@ -1,110 +0,0 @@
-static void fesquare(uint32_t out[17], const uint32_t in1[17]) {
- { const uint32_t x31 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x33 = (((uint64_t)x2 * x31) + (((uint64_t)x4 * x32) + ((0x2 * ((uint64_t)x6 * x30)) + (((uint64_t)x8 * x28) + ((0x2 * ((uint64_t)x10 * x26)) + (((uint64_t)x12 * x24) + ((0x2 * ((uint64_t)x14 * x22)) + (((uint64_t)x16 * x20) + ((0x2 * ((uint64_t)x18 * x18)) + (((uint64_t)x20 * x16) + ((0x2 * ((uint64_t)x22 * x14)) + (((uint64_t)x24 * x12) + ((0x2 * ((uint64_t)x26 * x10)) + (((uint64_t)x28 * x8) + ((0x2 * ((uint64_t)x30 * x6)) + (((uint64_t)x32 * x4) + ((uint64_t)x31 * x2)))))))))))))))));
- { uint64_t x34 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x1a5 * (0x2 * ((uint64_t)x31 * x31))));
- { uint64_t x35 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + ((0x2 * ((uint64_t)x6 * x26)) + (((uint64_t)x8 * x24) + ((0x2 * ((uint64_t)x10 * x22)) + (((uint64_t)x12 * x20) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + (((uint64_t)x20 * x12) + ((0x2 * ((uint64_t)x22 * x10)) + (((uint64_t)x24 * x8) + ((0x2 * ((uint64_t)x26 * x6)) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x1a5 * (((uint64_t)x32 * x31) + ((uint64_t)x31 * x32))));
- { uint64_t x36 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x1a5 * ((0x2 * ((uint64_t)x30 * x31)) + (((uint64_t)x32 * x32) + (0x2 * ((uint64_t)x31 * x30))))));
- { uint64_t x37 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x1a5 * (((uint64_t)x28 * x31) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + ((uint64_t)x31 * x28))))));
- { uint64_t x38 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x1a5 * ((0x2 * ((uint64_t)x26 * x31)) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + (0x2 * ((uint64_t)x31 * x26))))))));
- { uint64_t x39 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + ((0x2 * ((uint64_t)x6 * x18)) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + ((0x2 * ((uint64_t)x18 * x6)) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x1a5 * (((uint64_t)x24 * x31) + (((uint64_t)x26 * x32) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (((uint64_t)x32 * x26) + ((uint64_t)x31 * x24))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x1a5 * ((0x2 * ((uint64_t)x22 * x31)) + (((uint64_t)x24 * x32) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + (((uint64_t)x32 * x24) + (0x2 * ((uint64_t)x31 * x22))))))))));
- { uint64_t x41 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x1a5 * (((uint64_t)x20 * x31) + (((uint64_t)x22 * x32) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + (((uint64_t)x32 * x22) + ((uint64_t)x31 * x20))))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x1a5 * ((0x2 * ((uint64_t)x18 * x31)) + (((uint64_t)x20 * x32) + ((0x2 * ((uint64_t)x22 * x30)) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + ((0x2 * ((uint64_t)x30 * x22)) + (((uint64_t)x32 * x20) + (0x2 * ((uint64_t)x31 * x18))))))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x1a5 * (((uint64_t)x16 * x31) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + ((uint64_t)x31 * x16))))))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x1a5 * ((0x2 * ((uint64_t)x14 * x31)) + (((uint64_t)x16 * x32) + ((0x2 * ((uint64_t)x18 * x30)) + (((uint64_t)x20 * x28) + ((0x2 * ((uint64_t)x22 * x26)) + (((uint64_t)x24 * x24) + ((0x2 * ((uint64_t)x26 * x22)) + (((uint64_t)x28 * x20) + ((0x2 * ((uint64_t)x30 * x18)) + (((uint64_t)x32 * x16) + (0x2 * ((uint64_t)x31 * x14))))))))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x1a5 * (((uint64_t)x12 * x31) + (((uint64_t)x14 * x32) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + (((uint64_t)x32 * x14) + ((uint64_t)x31 * x12))))))))))))));
- { uint64_t x46 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x1a5 * ((0x2 * ((uint64_t)x10 * x31)) + (((uint64_t)x12 * x32) + ((0x2 * ((uint64_t)x14 * x30)) + (((uint64_t)x16 * x28) + ((0x2 * ((uint64_t)x18 * x26)) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + ((0x2 * ((uint64_t)x26 * x18)) + (((uint64_t)x28 * x16) + ((0x2 * ((uint64_t)x30 * x14)) + (((uint64_t)x32 * x12) + (0x2 * ((uint64_t)x31 * x10))))))))))))))));
- { uint64_t x47 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x1a5 * (((uint64_t)x8 * x31) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + ((uint64_t)x31 * x8))))))))))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1a5 * ((0x2 * ((uint64_t)x6 * x31)) + (((uint64_t)x8 * x32) + ((0x2 * ((uint64_t)x10 * x30)) + (((uint64_t)x12 * x28) + ((0x2 * ((uint64_t)x14 * x26)) + (((uint64_t)x16 * x24) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + (((uint64_t)x24 * x16) + ((0x2 * ((uint64_t)x26 * x14)) + (((uint64_t)x28 * x12) + ((0x2 * ((uint64_t)x30 * x10)) + (((uint64_t)x32 * x8) + (0x2 * ((uint64_t)x31 * x6))))))))))))))))));
- { uint64_t x49 = (((uint64_t)x2 * x2) + (0x1a5 * ((0x2 * ((uint64_t)x4 * x31)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + (0x2 * ((uint64_t)x31 * x4)))))))))))))))))));
- { uint64_t x50 = (x49 >> 0x17);
- { uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- { uint64_t x52 = (x50 + x48);
- { uint64_t x53 = (x52 >> 0x17);
- { uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- { uint64_t x55 = (x53 + x47);
- { uint64_t x56 = (x55 >> 0x16);
- { uint32_t x57 = ((uint32_t)x55 & 0x3fffff);
- { uint64_t x58 = (x56 + x46);
- { uint64_t x59 = (x58 >> 0x17);
- { uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- { uint64_t x61 = (x59 + x45);
- { uint64_t x62 = (x61 >> 0x16);
- { uint32_t x63 = ((uint32_t)x61 & 0x3fffff);
- { uint64_t x64 = (x62 + x44);
- { uint64_t x65 = (x64 >> 0x17);
- { uint32_t x66 = ((uint32_t)x64 & 0x7fffff);
- { uint64_t x67 = (x65 + x43);
- { uint64_t x68 = (x67 >> 0x16);
- { uint32_t x69 = ((uint32_t)x67 & 0x3fffff);
- { uint64_t x70 = (x68 + x42);
- { uint64_t x71 = (x70 >> 0x17);
- { uint32_t x72 = ((uint32_t)x70 & 0x7fffff);
- { uint64_t x73 = (x71 + x41);
- { uint64_t x74 = (x73 >> 0x16);
- { uint32_t x75 = ((uint32_t)x73 & 0x3fffff);
- { uint64_t x76 = (x74 + x40);
- { uint64_t x77 = (x76 >> 0x17);
- { uint32_t x78 = ((uint32_t)x76 & 0x7fffff);
- { uint64_t x79 = (x77 + x39);
- { uint64_t x80 = (x79 >> 0x16);
- { uint32_t x81 = ((uint32_t)x79 & 0x3fffff);
- { uint64_t x82 = (x80 + x38);
- { uint64_t x83 = (x82 >> 0x17);
- { uint32_t x84 = ((uint32_t)x82 & 0x7fffff);
- { uint64_t x85 = (x83 + x37);
- { uint64_t x86 = (x85 >> 0x16);
- { uint32_t x87 = ((uint32_t)x85 & 0x3fffff);
- { uint64_t x88 = (x86 + x36);
- { uint64_t x89 = (x88 >> 0x17);
- { uint32_t x90 = ((uint32_t)x88 & 0x7fffff);
- { uint64_t x91 = (x89 + x35);
- { uint64_t x92 = (x91 >> 0x16);
- { uint32_t x93 = ((uint32_t)x91 & 0x3fffff);
- { uint64_t x94 = (x92 + x34);
- { uint64_t x95 = (x94 >> 0x17);
- { uint32_t x96 = ((uint32_t)x94 & 0x7fffff);
- { uint64_t x97 = (x95 + x33);
- { uint32_t x98 = (uint32_t) (x97 >> 0x16);
- { uint32_t x99 = ((uint32_t)x97 & 0x3fffff);
- { uint64_t x100 = (x51 + ((uint64_t)0x1a5 * x98));
- { uint32_t x101 = (uint32_t) (x100 >> 0x17);
- { uint32_t x102 = ((uint32_t)x100 & 0x7fffff);
- { uint32_t x103 = (x101 + x54);
- { uint32_t x104 = (x103 >> 0x17);
- { uint32_t x105 = (x103 & 0x7fffff);
- out[0] = x102;
- out[1] = x105;
- out[2] = (x104 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- out[10] = x81;
- out[11] = x84;
- out[12] = x87;
- out[13] = x90;
- out[14] = x93;
- out[15] = x96;
- out[16] = x99;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m421_17limbs/fesquare.v b/src/Specific/solinas32_2e383m421_17limbs/fesquare.v
deleted file mode 100644
index fdbf9c93f..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m421_17limbs.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_2e383m421_17limbs/fesquareDisplay.log b/src/Specific/solinas32_2e383m421_17limbs/fesquareDisplay.log
deleted file mode 100644
index 214531316..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,80 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x31, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x33 = (((uint64_t)x2 * x31) + (((uint64_t)x4 * x32) + ((0x2 * ((uint64_t)x6 * x30)) + (((uint64_t)x8 * x28) + ((0x2 * ((uint64_t)x10 * x26)) + (((uint64_t)x12 * x24) + ((0x2 * ((uint64_t)x14 * x22)) + (((uint64_t)x16 * x20) + ((0x2 * ((uint64_t)x18 * x18)) + (((uint64_t)x20 * x16) + ((0x2 * ((uint64_t)x22 * x14)) + (((uint64_t)x24 * x12) + ((0x2 * ((uint64_t)x26 * x10)) + (((uint64_t)x28 * x8) + ((0x2 * ((uint64_t)x30 * x6)) + (((uint64_t)x32 * x4) + ((uint64_t)x31 * x2)))))))))))))))));
- uint64_t x34 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x1a5 * (0x2 * ((uint64_t)x31 * x31))));
- uint64_t x35 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + ((0x2 * ((uint64_t)x6 * x26)) + (((uint64_t)x8 * x24) + ((0x2 * ((uint64_t)x10 * x22)) + (((uint64_t)x12 * x20) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + (((uint64_t)x20 * x12) + ((0x2 * ((uint64_t)x22 * x10)) + (((uint64_t)x24 * x8) + ((0x2 * ((uint64_t)x26 * x6)) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x1a5 * (((uint64_t)x32 * x31) + ((uint64_t)x31 * x32))));
- uint64_t x36 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x1a5 * ((0x2 * ((uint64_t)x30 * x31)) + (((uint64_t)x32 * x32) + (0x2 * ((uint64_t)x31 * x30))))));
- uint64_t x37 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x1a5 * (((uint64_t)x28 * x31) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + ((uint64_t)x31 * x28))))));
- uint64_t x38 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x1a5 * ((0x2 * ((uint64_t)x26 * x31)) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + (0x2 * ((uint64_t)x31 * x26))))))));
- uint64_t x39 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + ((0x2 * ((uint64_t)x6 * x18)) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + ((0x2 * ((uint64_t)x18 * x6)) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x1a5 * (((uint64_t)x24 * x31) + (((uint64_t)x26 * x32) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (((uint64_t)x32 * x26) + ((uint64_t)x31 * x24))))))));
- uint64_t x40 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x1a5 * ((0x2 * ((uint64_t)x22 * x31)) + (((uint64_t)x24 * x32) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + (((uint64_t)x32 * x24) + (0x2 * ((uint64_t)x31 * x22))))))))));
- uint64_t x41 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x1a5 * (((uint64_t)x20 * x31) + (((uint64_t)x22 * x32) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + (((uint64_t)x32 * x22) + ((uint64_t)x31 * x20))))))))));
- uint64_t x42 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x1a5 * ((0x2 * ((uint64_t)x18 * x31)) + (((uint64_t)x20 * x32) + ((0x2 * ((uint64_t)x22 * x30)) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + ((0x2 * ((uint64_t)x30 * x22)) + (((uint64_t)x32 * x20) + (0x2 * ((uint64_t)x31 * x18))))))))))));
- uint64_t x43 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x1a5 * (((uint64_t)x16 * x31) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + ((uint64_t)x31 * x16))))))))))));
- uint64_t x44 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x1a5 * ((0x2 * ((uint64_t)x14 * x31)) + (((uint64_t)x16 * x32) + ((0x2 * ((uint64_t)x18 * x30)) + (((uint64_t)x20 * x28) + ((0x2 * ((uint64_t)x22 * x26)) + (((uint64_t)x24 * x24) + ((0x2 * ((uint64_t)x26 * x22)) + (((uint64_t)x28 * x20) + ((0x2 * ((uint64_t)x30 * x18)) + (((uint64_t)x32 * x16) + (0x2 * ((uint64_t)x31 * x14))))))))))))));
- uint64_t x45 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x1a5 * (((uint64_t)x12 * x31) + (((uint64_t)x14 * x32) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + (((uint64_t)x32 * x14) + ((uint64_t)x31 * x12))))))))))))));
- uint64_t x46 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x1a5 * ((0x2 * ((uint64_t)x10 * x31)) + (((uint64_t)x12 * x32) + ((0x2 * ((uint64_t)x14 * x30)) + (((uint64_t)x16 * x28) + ((0x2 * ((uint64_t)x18 * x26)) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + ((0x2 * ((uint64_t)x26 * x18)) + (((uint64_t)x28 * x16) + ((0x2 * ((uint64_t)x30 * x14)) + (((uint64_t)x32 * x12) + (0x2 * ((uint64_t)x31 * x10))))))))))))))));
- uint64_t x47 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x1a5 * (((uint64_t)x8 * x31) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + ((uint64_t)x31 * x8))))))))))))))));
- uint64_t x48 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1a5 * ((0x2 * ((uint64_t)x6 * x31)) + (((uint64_t)x8 * x32) + ((0x2 * ((uint64_t)x10 * x30)) + (((uint64_t)x12 * x28) + ((0x2 * ((uint64_t)x14 * x26)) + (((uint64_t)x16 * x24) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + (((uint64_t)x24 * x16) + ((0x2 * ((uint64_t)x26 * x14)) + (((uint64_t)x28 * x12) + ((0x2 * ((uint64_t)x30 * x10)) + (((uint64_t)x32 * x8) + (0x2 * ((uint64_t)x31 * x6))))))))))))))))));
- uint64_t x49 = (((uint64_t)x2 * x2) + (0x1a5 * ((0x2 * ((uint64_t)x4 * x31)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + (0x2 * ((uint64_t)x31 * x4)))))))))))))))))));
- uint64_t x50 = (x49 >> 0x17);
- uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- uint64_t x52 = (x50 + x48);
- uint64_t x53 = (x52 >> 0x17);
- uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- uint64_t x55 = (x53 + x47);
- uint64_t x56 = (x55 >> 0x16);
- uint32_t x57 = ((uint32_t)x55 & 0x3fffff);
- uint64_t x58 = (x56 + x46);
- uint64_t x59 = (x58 >> 0x17);
- uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- uint64_t x61 = (x59 + x45);
- uint64_t x62 = (x61 >> 0x16);
- uint32_t x63 = ((uint32_t)x61 & 0x3fffff);
- uint64_t x64 = (x62 + x44);
- uint64_t x65 = (x64 >> 0x17);
- uint32_t x66 = ((uint32_t)x64 & 0x7fffff);
- uint64_t x67 = (x65 + x43);
- uint64_t x68 = (x67 >> 0x16);
- uint32_t x69 = ((uint32_t)x67 & 0x3fffff);
- uint64_t x70 = (x68 + x42);
- uint64_t x71 = (x70 >> 0x17);
- uint32_t x72 = ((uint32_t)x70 & 0x7fffff);
- uint64_t x73 = (x71 + x41);
- uint64_t x74 = (x73 >> 0x16);
- uint32_t x75 = ((uint32_t)x73 & 0x3fffff);
- uint64_t x76 = (x74 + x40);
- uint64_t x77 = (x76 >> 0x17);
- uint32_t x78 = ((uint32_t)x76 & 0x7fffff);
- uint64_t x79 = (x77 + x39);
- uint64_t x80 = (x79 >> 0x16);
- uint32_t x81 = ((uint32_t)x79 & 0x3fffff);
- uint64_t x82 = (x80 + x38);
- uint64_t x83 = (x82 >> 0x17);
- uint32_t x84 = ((uint32_t)x82 & 0x7fffff);
- uint64_t x85 = (x83 + x37);
- uint64_t x86 = (x85 >> 0x16);
- uint32_t x87 = ((uint32_t)x85 & 0x3fffff);
- uint64_t x88 = (x86 + x36);
- uint64_t x89 = (x88 >> 0x17);
- uint32_t x90 = ((uint32_t)x88 & 0x7fffff);
- uint64_t x91 = (x89 + x35);
- uint64_t x92 = (x91 >> 0x16);
- uint32_t x93 = ((uint32_t)x91 & 0x3fffff);
- uint64_t x94 = (x92 + x34);
- uint64_t x95 = (x94 >> 0x17);
- uint32_t x96 = ((uint32_t)x94 & 0x7fffff);
- uint64_t x97 = (x95 + x33);
- uint32_t x98 = (uint32_t) (x97 >> 0x16);
- uint32_t x99 = ((uint32_t)x97 & 0x3fffff);
- uint64_t x100 = (x51 + ((uint64_t)0x1a5 * x98));
- uint32_t x101 = (uint32_t) (x100 >> 0x17);
- uint32_t x102 = ((uint32_t)x100 & 0x7fffff);
- uint32_t x103 = (x101 + x54);
- uint32_t x104 = (x103 >> 0x17);
- uint32_t x105 = (x103 & 0x7fffff);
- return (Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x104 + x57), Return x105, Return x102))
-x
- : word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m421_17limbs/fesquareDisplay.v b/src/Specific/solinas32_2e383m421_17limbs/fesquareDisplay.v
deleted file mode 100644
index 49e1e6cee..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m421_17limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e383m421_17limbs/fesub.c b/src/Specific/solinas32_2e383m421_17limbs/fesub.c
deleted file mode 100644
index 24d30fe2b..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/fesub.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void fesub(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- out[0] = ((0xfffcb6 + x5) - x37);
- out[1] = ((0xfffffe + x7) - x39);
- out[2] = ((0x7ffffe + x9) - x41);
- out[3] = ((0xfffffe + x11) - x43);
- out[4] = ((0x7ffffe + x13) - x45);
- out[5] = ((0xfffffe + x15) - x47);
- out[6] = ((0x7ffffe + x17) - x49);
- out[7] = ((0xfffffe + x19) - x51);
- out[8] = ((0x7ffffe + x21) - x53);
- out[9] = ((0xfffffe + x23) - x55);
- out[10] = ((0x7ffffe + x25) - x57);
- out[11] = ((0xfffffe + x27) - x59);
- out[12] = ((0x7ffffe + x29) - x61);
- out[13] = ((0xfffffe + x31) - x63);
- out[14] = ((0x7ffffe + x33) - x65);
- out[15] = ((0xfffffe + x35) - x67);
- out[16] = ((0x7ffffe + x34) - x66);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m421_17limbs/fesub.v b/src/Specific/solinas32_2e383m421_17limbs/fesub.v
deleted file mode 100644
index c0fda0cb1..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m421_17limbs.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_2e383m421_17limbs/fesubDisplay.log b/src/Specific/solinas32_2e383m421_17limbs/fesubDisplay.log
deleted file mode 100644
index ff346dae3..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- (((0x7ffffe + x34) - x66), ((0xfffffe + x35) - x67), ((0x7ffffe + x33) - x65), ((0xfffffe + x31) - x63), ((0x7ffffe + x29) - x61), ((0xfffffe + x27) - x59), ((0x7ffffe + x25) - x57), ((0xfffffe + x23) - x55), ((0x7ffffe + x21) - x53), ((0xfffffe + x19) - x51), ((0x7ffffe + x17) - x49), ((0xfffffe + x15) - x47), ((0x7ffffe + x13) - x45), ((0xfffffe + x11) - x43), ((0x7ffffe + x9) - x41), ((0xfffffe + x7) - x39), ((0xfffcb6 + x5) - x37)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m421_17limbs/fesubDisplay.v b/src/Specific/solinas32_2e383m421_17limbs/fesubDisplay.v
deleted file mode 100644
index 6f34b3d00..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m421_17limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e383m421_17limbs/freeze.c b/src/Specific/solinas32_2e383m421_17limbs/freeze.c
deleted file mode 100644
index 144fb9181..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/freeze.c
+++ /dev/null
@@ -1,89 +0,0 @@
-static void freeze(uint32_t out[17], const uint32_t in1[17]) {
- { const uint32_t x31 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffe5b);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x4, 0x7fffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x6, 0x3fffff);
- { uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x8, 0x7fffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x10, 0x3fffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x12, 0x7fffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x14, 0x3fffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x16, 0x7fffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x18, 0x3fffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x20, 0x7fffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x22, 0x3fffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x24, 0x7fffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x26, 0x3fffff);
- { uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x28, 0x7fffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x30, 0x3fffff);
- { uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x32, 0x7fffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x31, 0x3fffff);
- { uint32_t x84 = cmovznz32(x83, 0x0, 0xffffffff);
- { uint32_t x85 = (x84 & 0x7ffe5b);
- { uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x34, Return x85);
- { uint32_t x89 = (x84 & 0x7fffff);
- { uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x37, Return x89);
- { uint32_t x93 = (x84 & 0x3fffff);
- { uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x40, Return x93);
- { uint32_t x97 = (x84 & 0x7fffff);
- { uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x43, Return x97);
- { uint32_t x101 = (x84 & 0x3fffff);
- { uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x46, Return x101);
- { uint32_t x105 = (x84 & 0x7fffff);
- { uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x49, Return x105);
- { uint32_t x109 = (x84 & 0x3fffff);
- { uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x52, Return x109);
- { uint32_t x113 = (x84 & 0x7fffff);
- { uint32_t x115, uint8_t x116 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x55, Return x113);
- { uint32_t x117 = (x84 & 0x3fffff);
- { uint32_t x119, uint8_t x120 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x116, Return x58, Return x117);
- { uint32_t x121 = (x84 & 0x7fffff);
- { uint32_t x123, uint8_t x124 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x120, Return x61, Return x121);
- { uint32_t x125 = (x84 & 0x3fffff);
- { uint32_t x127, uint8_t x128 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x124, Return x64, Return x125);
- { uint32_t x129 = (x84 & 0x7fffff);
- { uint32_t x131, uint8_t x132 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x128, Return x67, Return x129);
- { uint32_t x133 = (x84 & 0x3fffff);
- { uint32_t x135, uint8_t x136 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x132, Return x70, Return x133);
- { uint32_t x137 = (x84 & 0x7fffff);
- { uint32_t x139, uint8_t x140 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x136, Return x73, Return x137);
- { uint32_t x141 = (x84 & 0x3fffff);
- { uint32_t x143, uint8_t x144 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x140, Return x76, Return x141);
- { uint32_t x145 = (x84 & 0x7fffff);
- { uint32_t x147, uint8_t x148 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x144, Return x79, Return x145);
- { uint32_t x149 = (x84 & 0x3fffff);
- { uint32_t x151, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x148, Return x82, Return x149);
- out[0] = x87;
- out[1] = x91;
- out[2] = x95;
- out[3] = x99;
- out[4] = x103;
- out[5] = x107;
- out[6] = x111;
- out[7] = x115;
- out[8] = x119;
- out[9] = x123;
- out[10] = x127;
- out[11] = x131;
- out[12] = x135;
- out[13] = x139;
- out[14] = x143;
- out[15] = x147;
- out[16] = x151;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m421_17limbs/freeze.v b/src/Specific/solinas32_2e383m421_17limbs/freeze.v
deleted file mode 100644
index 07a8de009..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m421_17limbs.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_2e383m421_17limbs/freezeDisplay.log b/src/Specific/solinas32_2e383m421_17limbs/freezeDisplay.log
deleted file mode 100644
index 34595a6f1..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/freezeDisplay.log
+++ /dev/null
@@ -1,59 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x31, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffe5b);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x4, 0x7fffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x6, 0x3fffff);
- uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x8, 0x7fffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x10, 0x3fffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x12, 0x7fffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x14, 0x3fffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x16, 0x7fffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x18, 0x3fffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x20, 0x7fffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x22, 0x3fffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x24, 0x7fffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x26, 0x3fffff);
- uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x28, 0x7fffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x30, 0x3fffff);
- uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x32, 0x7fffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x31, 0x3fffff);
- uint32_t x84 = cmovznz32(x83, 0x0, 0xffffffff);
- uint32_t x85 = (x84 & 0x7ffe5b);
- uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x34, Return x85);
- uint32_t x89 = (x84 & 0x7fffff);
- uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x37, Return x89);
- uint32_t x93 = (x84 & 0x3fffff);
- uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x40, Return x93);
- uint32_t x97 = (x84 & 0x7fffff);
- uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x43, Return x97);
- uint32_t x101 = (x84 & 0x3fffff);
- uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x46, Return x101);
- uint32_t x105 = (x84 & 0x7fffff);
- uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x49, Return x105);
- uint32_t x109 = (x84 & 0x3fffff);
- uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x52, Return x109);
- uint32_t x113 = (x84 & 0x7fffff);
- uint32_t x115, uint8_t x116 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x55, Return x113);
- uint32_t x117 = (x84 & 0x3fffff);
- uint32_t x119, uint8_t x120 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x116, Return x58, Return x117);
- uint32_t x121 = (x84 & 0x7fffff);
- uint32_t x123, uint8_t x124 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x120, Return x61, Return x121);
- uint32_t x125 = (x84 & 0x3fffff);
- uint32_t x127, uint8_t x128 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x124, Return x64, Return x125);
- uint32_t x129 = (x84 & 0x7fffff);
- uint32_t x131, uint8_t x132 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x128, Return x67, Return x129);
- uint32_t x133 = (x84 & 0x3fffff);
- uint32_t x135, uint8_t x136 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x132, Return x70, Return x133);
- uint32_t x137 = (x84 & 0x7fffff);
- uint32_t x139, uint8_t x140 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x136, Return x73, Return x137);
- uint32_t x141 = (x84 & 0x3fffff);
- uint32_t x143, uint8_t x144 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x140, Return x76, Return x141);
- uint32_t x145 = (x84 & 0x7fffff);
- uint32_t x147, uint8_t x148 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x144, Return x79, Return x145);
- uint32_t x149 = (x84 & 0x3fffff);
- uint32_t x151, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x148, Return x82, Return x149);
- (Return x151, Return x147, Return x143, Return x139, Return x135, Return x131, Return x127, Return x123, Return x119, Return x115, Return x111, Return x107, Return x103, Return x99, Return x95, Return x91, Return x87))
-x
- : word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m421_17limbs/freezeDisplay.v b/src/Specific/solinas32_2e383m421_17limbs/freezeDisplay.v
deleted file mode 100644
index 2cbce4a6c..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m421_17limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e383m421_17limbs/py_interpreter.sh b/src/Specific/solinas32_2e383m421_17limbs/py_interpreter.sh
deleted file mode 100755
index 18e6c6dc4..000000000
--- a/src/Specific/solinas32_2e383m421_17limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**383 - 421' -Dmodulus_bytes='22 + 9/17' -Da24='121665'
diff --git a/src/Specific/solinas32_2e383m421_18limbs/CurveParameters.v b/src/Specific/solinas32_2e383m421_18limbs/CurveParameters.v
deleted file mode 100644
index 2a65aad5b..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^383 - 421
-Base: 21 + 5/18
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 18%nat;
- base := 21 + 5/18;
- bitwidth := 32;
- s := 2^383;
- c := [(1, 421)];
- carry_chains := Some [seq 0 (pred 18); [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_2e383m421_18limbs/Synthesis.v b/src/Specific/solinas32_2e383m421_18limbs/Synthesis.v
deleted file mode 100644
index 5eb3ec3b1..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e383m421_18limbs.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_2e383m421_18limbs/compiler.sh b/src/Specific/solinas32_2e383m421_18limbs/compiler.sh
deleted file mode 100755
index 3d226e43b..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{22,21,21,22,21,21,21,22,21,21,22,21,21,21,22,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<383) - 421' "$@"
diff --git a/src/Specific/solinas32_2e383m421_18limbs/compilerxx.sh b/src/Specific/solinas32_2e383m421_18limbs/compilerxx.sh
deleted file mode 100755
index 8bb430ddb..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{22,21,21,22,21,21,21,22,21,21,22,21,21,21,22,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<383) - 421' "$@"
diff --git a/src/Specific/solinas32_2e383m421_18limbs/feadd.c b/src/Specific/solinas32_2e383m421_18limbs/feadd.c
deleted file mode 100644
index 7b8380410..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/feadd.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void feadd(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- out[0] = (x5 + x39);
- out[1] = (x7 + x41);
- out[2] = (x9 + x43);
- out[3] = (x11 + x45);
- out[4] = (x13 + x47);
- out[5] = (x15 + x49);
- out[6] = (x17 + x51);
- out[7] = (x19 + x53);
- out[8] = (x21 + x55);
- out[9] = (x23 + x57);
- out[10] = (x25 + x59);
- out[11] = (x27 + x61);
- out[12] = (x29 + x63);
- out[13] = (x31 + x65);
- out[14] = (x33 + x67);
- out[15] = (x35 + x69);
- out[16] = (x37 + x71);
- out[17] = (x36 + x70);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m421_18limbs/feadd.v b/src/Specific/solinas32_2e383m421_18limbs/feadd.v
deleted file mode 100644
index 6a6b357dd..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m421_18limbs.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_2e383m421_18limbs/feaddDisplay.log b/src/Specific/solinas32_2e383m421_18limbs/feaddDisplay.log
deleted file mode 100644
index 5e9c243f4..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- ((x36 + x70), (x37 + x71), (x35 + x69), (x33 + x67), (x31 + x65), (x29 + x63), (x27 + x61), (x25 + x59), (x23 + x57), (x21 + x55), (x19 + x53), (x17 + x51), (x15 + x49), (x13 + x47), (x11 + x45), (x9 + x43), (x7 + x41), (x5 + x39)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m421_18limbs/feaddDisplay.v b/src/Specific/solinas32_2e383m421_18limbs/feaddDisplay.v
deleted file mode 100644
index dbd2b5dc6..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m421_18limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e383m421_18limbs/fecarry.v b/src/Specific/solinas32_2e383m421_18limbs/fecarry.v
deleted file mode 100644
index 4661800d1..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m421_18limbs.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_2e383m421_18limbs/fecarryDisplay.v b/src/Specific/solinas32_2e383m421_18limbs/fecarryDisplay.v
deleted file mode 100644
index 50f2af366..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m421_18limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e383m421_18limbs/femul.c b/src/Specific/solinas32_2e383m421_18limbs/femul.c
deleted file mode 100644
index a53dd2381..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/femul.c
+++ /dev/null
@@ -1,134 +0,0 @@
-static void femul(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- { uint64_t x72 = (((uint64_t)x5 * x70) + ((0x2 * ((uint64_t)x7 * x71)) + ((0x2 * ((uint64_t)x9 * x69)) + (((uint64_t)x11 * x67) + ((0x2 * ((uint64_t)x13 * x65)) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + (((uint64_t)x19 * x59) + ((0x2 * ((uint64_t)x21 * x57)) + ((0x2 * ((uint64_t)x23 * x55)) + (((uint64_t)x25 * x53) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + (((uint64_t)x33 * x45) + ((0x2 * ((uint64_t)x35 * x43)) + ((0x2 * ((uint64_t)x37 * x41)) + ((uint64_t)x36 * x39))))))))))))))))));
- { uint64_t x73 = ((((uint64_t)x5 * x71) + ((0x2 * ((uint64_t)x7 * x69)) + (((uint64_t)x9 * x67) + (((uint64_t)x11 * x65) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + (((uint64_t)x17 * x59) + (((uint64_t)x19 * x57) + ((0x2 * ((uint64_t)x21 * x55)) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + (((uint64_t)x31 * x45) + (((uint64_t)x33 * x43) + ((0x2 * ((uint64_t)x35 * x41)) + ((uint64_t)x37 * x39))))))))))))))))) + (0x1a5 * ((uint64_t)x36 * x70)));
- { uint64_t x74 = ((((uint64_t)x5 * x69) + (((uint64_t)x7 * x67) + (((uint64_t)x9 * x65) + (((uint64_t)x11 * x63) + ((0x2 * ((uint64_t)x13 * x61)) + (((uint64_t)x15 * x59) + (((uint64_t)x17 * x57) + (((uint64_t)x19 * x55) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + (((uint64_t)x25 * x49) + ((0x2 * ((uint64_t)x27 * x47)) + (((uint64_t)x29 * x45) + (((uint64_t)x31 * x43) + (((uint64_t)x33 * x41) + ((uint64_t)x35 * x39)))))))))))))))) + (0x1a5 * (((uint64_t)x37 * x70) + ((uint64_t)x36 * x71))));
- { uint64_t x75 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + (((uint64_t)x19 * x53) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((uint64_t)x33 * x39))))))))))))))) + (0x1a5 * ((0x2 * ((uint64_t)x35 * x70)) + ((0x2 * ((uint64_t)x37 * x71)) + (0x2 * ((uint64_t)x36 * x69))))));
- { uint64_t x76 = ((((uint64_t)x5 * x65) + ((0x2 * ((uint64_t)x7 * x63)) + ((0x2 * ((uint64_t)x9 * x61)) + (((uint64_t)x11 * x59) + ((0x2 * ((uint64_t)x13 * x57)) + ((0x2 * ((uint64_t)x15 * x55)) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + ((0x2 * ((uint64_t)x21 * x49)) + ((0x2 * ((uint64_t)x23 * x47)) + (((uint64_t)x25 * x45) + ((0x2 * ((uint64_t)x27 * x43)) + ((0x2 * ((uint64_t)x29 * x41)) + ((uint64_t)x31 * x39)))))))))))))) + (0x1a5 * (((uint64_t)x33 * x70) + ((0x2 * ((uint64_t)x35 * x71)) + ((0x2 * ((uint64_t)x37 * x69)) + ((uint64_t)x36 * x67))))));
- { uint64_t x77 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + (((uint64_t)x9 * x59) + (((uint64_t)x11 * x57) + ((0x2 * ((uint64_t)x13 * x55)) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + ((0x2 * ((uint64_t)x21 * x47)) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + ((0x2 * ((uint64_t)x27 * x41)) + ((uint64_t)x29 * x39))))))))))))) + (0x1a5 * (((uint64_t)x31 * x70) + (((uint64_t)x33 * x71) + ((0x2 * ((uint64_t)x35 * x69)) + (((uint64_t)x37 * x67) + ((uint64_t)x36 * x65)))))));
- { uint64_t x78 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + ((uint64_t)x27 * x39)))))))))))) + (0x1a5 * (((uint64_t)x29 * x70) + (((uint64_t)x31 * x71) + (((uint64_t)x33 * x69) + (((uint64_t)x35 * x67) + (((uint64_t)x37 * x65) + ((uint64_t)x36 * x63))))))));
- { uint64_t x79 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + (((uint64_t)x11 * x53) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + (((uint64_t)x19 * x45) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + ((uint64_t)x25 * x39))))))))))) + (0x1a5 * ((0x2 * ((uint64_t)x27 * x70)) + ((0x2 * ((uint64_t)x29 * x71)) + ((0x2 * ((uint64_t)x31 * x69)) + (((uint64_t)x33 * x67) + ((0x2 * ((uint64_t)x35 * x65)) + ((0x2 * ((uint64_t)x37 * x63)) + (0x2 * ((uint64_t)x36 * x61))))))))));
- { uint64_t x80 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + ((uint64_t)x23 * x39)))))))))) + (0x1a5 * (((uint64_t)x25 * x70) + ((0x2 * ((uint64_t)x27 * x71)) + ((0x2 * ((uint64_t)x29 * x69)) + (((uint64_t)x31 * x67) + (((uint64_t)x33 * x65) + ((0x2 * ((uint64_t)x35 * x63)) + ((0x2 * ((uint64_t)x37 * x61)) + ((uint64_t)x36 * x59))))))))));
- { uint64_t x81 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + ((0x2 * ((uint64_t)x13 * x47)) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + ((uint64_t)x21 * x39))))))))) + (0x1a5 * (((uint64_t)x23 * x70) + (((uint64_t)x25 * x71) + ((0x2 * ((uint64_t)x27 * x69)) + (((uint64_t)x29 * x67) + (((uint64_t)x31 * x65) + (((uint64_t)x33 * x63) + ((0x2 * ((uint64_t)x35 * x61)) + (((uint64_t)x37 * x59) + ((uint64_t)x36 * x57)))))))))));
- { uint64_t x82 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + ((uint64_t)x19 * x39)))))))) + (0x1a5 * ((0x2 * ((uint64_t)x21 * x70)) + ((0x2 * ((uint64_t)x23 * x71)) + ((0x2 * ((uint64_t)x25 * x69)) + ((0x2 * ((uint64_t)x27 * x67)) + ((0x2 * ((uint64_t)x29 * x65)) + ((0x2 * ((uint64_t)x31 * x63)) + ((0x2 * ((uint64_t)x33 * x61)) + ((0x2 * ((uint64_t)x35 * x59)) + ((0x2 * ((uint64_t)x37 * x57)) + (0x2 * ((uint64_t)x36 * x55)))))))))))));
- { uint64_t x83 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + (((uint64_t)x11 * x45) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((uint64_t)x17 * x39))))))) + (0x1a5 * (((uint64_t)x19 * x70) + ((0x2 * ((uint64_t)x21 * x71)) + ((0x2 * ((uint64_t)x23 * x69)) + (((uint64_t)x25 * x67) + ((0x2 * ((uint64_t)x27 * x65)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + (((uint64_t)x33 * x59) + ((0x2 * ((uint64_t)x35 * x57)) + ((0x2 * ((uint64_t)x37 * x55)) + ((uint64_t)x36 * x53)))))))))))));
- { uint64_t x84 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + ((uint64_t)x15 * x39)))))) + (0x1a5 * (((uint64_t)x17 * x70) + (((uint64_t)x19 * x71) + ((0x2 * ((uint64_t)x21 * x69)) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + ((0x2 * ((uint64_t)x27 * x63)) + ((0x2 * ((uint64_t)x29 * x61)) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + ((0x2 * ((uint64_t)x35 * x55)) + (((uint64_t)x37 * x53) + ((uint64_t)x36 * x51))))))))))))));
- { uint64_t x85 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + ((uint64_t)x13 * x39))))) + (0x1a5 * (((uint64_t)x15 * x70) + (((uint64_t)x17 * x71) + (((uint64_t)x19 * x69) + (((uint64_t)x21 * x67) + (((uint64_t)x23 * x65) + (((uint64_t)x25 * x63) + ((0x2 * ((uint64_t)x27 * x61)) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + (((uint64_t)x35 * x53) + (((uint64_t)x37 * x51) + ((uint64_t)x36 * x49)))))))))))))));
- { uint64_t x86 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((uint64_t)x11 * x39)))) + (0x1a5 * ((0x2 * ((uint64_t)x13 * x70)) + ((0x2 * ((uint64_t)x15 * x71)) + ((0x2 * ((uint64_t)x17 * x69)) + (((uint64_t)x19 * x67) + ((0x2 * ((uint64_t)x21 * x65)) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + ((0x2 * ((uint64_t)x29 * x57)) + ((0x2 * ((uint64_t)x31 * x55)) + (((uint64_t)x33 * x53) + ((0x2 * ((uint64_t)x35 * x51)) + ((0x2 * ((uint64_t)x37 * x49)) + (0x2 * ((uint64_t)x36 * x47)))))))))))))))));
- { uint64_t x87 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((uint64_t)x9 * x39))) + (0x1a5 * (((uint64_t)x11 * x70) + ((0x2 * ((uint64_t)x13 * x71)) + ((0x2 * ((uint64_t)x15 * x69)) + (((uint64_t)x17 * x67) + (((uint64_t)x19 * x65) + ((0x2 * ((uint64_t)x21 * x63)) + ((0x2 * ((uint64_t)x23 * x61)) + (((uint64_t)x25 * x59) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + ((0x2 * ((uint64_t)x35 * x49)) + ((0x2 * ((uint64_t)x37 * x47)) + ((uint64_t)x36 * x45)))))))))))))))));
- { uint64_t x88 = ((((uint64_t)x5 * x41) + ((uint64_t)x7 * x39)) + (0x1a5 * (((uint64_t)x9 * x70) + (((uint64_t)x11 * x71) + ((0x2 * ((uint64_t)x13 * x69)) + (((uint64_t)x15 * x67) + (((uint64_t)x17 * x65) + (((uint64_t)x19 * x63) + ((0x2 * ((uint64_t)x21 * x61)) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + ((0x2 * ((uint64_t)x27 * x55)) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + ((0x2 * ((uint64_t)x35 * x47)) + (((uint64_t)x37 * x45) + ((uint64_t)x36 * x43))))))))))))))))));
- { uint64_t x89 = (((uint64_t)x5 * x39) + (0x1a5 * ((0x2 * ((uint64_t)x7 * x70)) + ((0x2 * ((uint64_t)x9 * x71)) + ((0x2 * ((uint64_t)x11 * x69)) + ((0x2 * ((uint64_t)x13 * x67)) + ((0x2 * ((uint64_t)x15 * x65)) + ((0x2 * ((uint64_t)x17 * x63)) + ((0x2 * ((uint64_t)x19 * x61)) + ((0x2 * ((uint64_t)x21 * x59)) + ((0x2 * ((uint64_t)x23 * x57)) + ((0x2 * ((uint64_t)x25 * x55)) + ((0x2 * ((uint64_t)x27 * x53)) + ((0x2 * ((uint64_t)x29 * x51)) + ((0x2 * ((uint64_t)x31 * x49)) + ((0x2 * ((uint64_t)x33 * x47)) + ((0x2 * ((uint64_t)x35 * x45)) + ((0x2 * ((uint64_t)x37 * x43)) + (0x2 * ((uint64_t)x36 * x41))))))))))))))))))));
- { uint64_t x90 = (x89 >> 0x16);
- { uint32_t x91 = ((uint32_t)x89 & 0x3fffff);
- { uint64_t x92 = (x90 + x88);
- { uint64_t x93 = (x92 >> 0x15);
- { uint32_t x94 = ((uint32_t)x92 & 0x1fffff);
- { uint64_t x95 = (x93 + x87);
- { uint64_t x96 = (x95 >> 0x15);
- { uint32_t x97 = ((uint32_t)x95 & 0x1fffff);
- { uint64_t x98 = (x96 + x86);
- { uint64_t x99 = (x98 >> 0x16);
- { uint32_t x100 = ((uint32_t)x98 & 0x3fffff);
- { uint64_t x101 = (x99 + x85);
- { uint64_t x102 = (x101 >> 0x15);
- { uint32_t x103 = ((uint32_t)x101 & 0x1fffff);
- { uint64_t x104 = (x102 + x84);
- { uint64_t x105 = (x104 >> 0x15);
- { uint32_t x106 = ((uint32_t)x104 & 0x1fffff);
- { uint64_t x107 = (x105 + x83);
- { uint64_t x108 = (x107 >> 0x15);
- { uint32_t x109 = ((uint32_t)x107 & 0x1fffff);
- { uint64_t x110 = (x108 + x82);
- { uint64_t x111 = (x110 >> 0x16);
- { uint32_t x112 = ((uint32_t)x110 & 0x3fffff);
- { uint64_t x113 = (x111 + x81);
- { uint64_t x114 = (x113 >> 0x15);
- { uint32_t x115 = ((uint32_t)x113 & 0x1fffff);
- { uint64_t x116 = (x114 + x80);
- { uint64_t x117 = (x116 >> 0x15);
- { uint32_t x118 = ((uint32_t)x116 & 0x1fffff);
- { uint64_t x119 = (x117 + x79);
- { uint64_t x120 = (x119 >> 0x16);
- { uint32_t x121 = ((uint32_t)x119 & 0x3fffff);
- { uint64_t x122 = (x120 + x78);
- { uint64_t x123 = (x122 >> 0x15);
- { uint32_t x124 = ((uint32_t)x122 & 0x1fffff);
- { uint64_t x125 = (x123 + x77);
- { uint64_t x126 = (x125 >> 0x15);
- { uint32_t x127 = ((uint32_t)x125 & 0x1fffff);
- { uint64_t x128 = (x126 + x76);
- { uint64_t x129 = (x128 >> 0x15);
- { uint32_t x130 = ((uint32_t)x128 & 0x1fffff);
- { uint64_t x131 = (x129 + x75);
- { uint64_t x132 = (x131 >> 0x16);
- { uint32_t x133 = ((uint32_t)x131 & 0x3fffff);
- { uint64_t x134 = (x132 + x74);
- { uint64_t x135 = (x134 >> 0x15);
- { uint32_t x136 = ((uint32_t)x134 & 0x1fffff);
- { uint64_t x137 = (x135 + x73);
- { uint64_t x138 = (x137 >> 0x15);
- { uint32_t x139 = ((uint32_t)x137 & 0x1fffff);
- { uint64_t x140 = (x138 + x72);
- { uint32_t x141 = (uint32_t) (x140 >> 0x15);
- { uint32_t x142 = ((uint32_t)x140 & 0x1fffff);
- { uint64_t x143 = (x91 + ((uint64_t)0x1a5 * x141));
- { uint32_t x144 = (uint32_t) (x143 >> 0x16);
- { uint32_t x145 = ((uint32_t)x143 & 0x3fffff);
- { uint32_t x146 = (x144 + x94);
- { uint32_t x147 = (x146 >> 0x15);
- { uint32_t x148 = (x146 & 0x1fffff);
- out[0] = x145;
- out[1] = x148;
- out[2] = (x147 + x97);
- out[3] = x100;
- out[4] = x103;
- out[5] = x106;
- out[6] = x109;
- out[7] = x112;
- out[8] = x115;
- out[9] = x118;
- out[10] = x121;
- out[11] = x124;
- out[12] = x127;
- out[13] = x130;
- out[14] = x133;
- out[15] = x136;
- out[16] = x139;
- out[17] = x142;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m421_18limbs/femul.v b/src/Specific/solinas32_2e383m421_18limbs/femul.v
deleted file mode 100644
index a94c96372..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m421_18limbs.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_2e383m421_18limbs/femulDisplay.log b/src/Specific/solinas32_2e383m421_18limbs/femulDisplay.log
deleted file mode 100644
index e34cb1c55..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/femulDisplay.log
+++ /dev/null
@@ -1,84 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- uint64_t x72 = (((uint64_t)x5 * x70) + ((0x2 * ((uint64_t)x7 * x71)) + ((0x2 * ((uint64_t)x9 * x69)) + (((uint64_t)x11 * x67) + ((0x2 * ((uint64_t)x13 * x65)) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + (((uint64_t)x19 * x59) + ((0x2 * ((uint64_t)x21 * x57)) + ((0x2 * ((uint64_t)x23 * x55)) + (((uint64_t)x25 * x53) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + (((uint64_t)x33 * x45) + ((0x2 * ((uint64_t)x35 * x43)) + ((0x2 * ((uint64_t)x37 * x41)) + ((uint64_t)x36 * x39))))))))))))))))));
- uint64_t x73 = ((((uint64_t)x5 * x71) + ((0x2 * ((uint64_t)x7 * x69)) + (((uint64_t)x9 * x67) + (((uint64_t)x11 * x65) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + (((uint64_t)x17 * x59) + (((uint64_t)x19 * x57) + ((0x2 * ((uint64_t)x21 * x55)) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + (((uint64_t)x31 * x45) + (((uint64_t)x33 * x43) + ((0x2 * ((uint64_t)x35 * x41)) + ((uint64_t)x37 * x39))))))))))))))))) + (0x1a5 * ((uint64_t)x36 * x70)));
- uint64_t x74 = ((((uint64_t)x5 * x69) + (((uint64_t)x7 * x67) + (((uint64_t)x9 * x65) + (((uint64_t)x11 * x63) + ((0x2 * ((uint64_t)x13 * x61)) + (((uint64_t)x15 * x59) + (((uint64_t)x17 * x57) + (((uint64_t)x19 * x55) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + (((uint64_t)x25 * x49) + ((0x2 * ((uint64_t)x27 * x47)) + (((uint64_t)x29 * x45) + (((uint64_t)x31 * x43) + (((uint64_t)x33 * x41) + ((uint64_t)x35 * x39)))))))))))))))) + (0x1a5 * (((uint64_t)x37 * x70) + ((uint64_t)x36 * x71))));
- uint64_t x75 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + (((uint64_t)x19 * x53) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((uint64_t)x33 * x39))))))))))))))) + (0x1a5 * ((0x2 * ((uint64_t)x35 * x70)) + ((0x2 * ((uint64_t)x37 * x71)) + (0x2 * ((uint64_t)x36 * x69))))));
- uint64_t x76 = ((((uint64_t)x5 * x65) + ((0x2 * ((uint64_t)x7 * x63)) + ((0x2 * ((uint64_t)x9 * x61)) + (((uint64_t)x11 * x59) + ((0x2 * ((uint64_t)x13 * x57)) + ((0x2 * ((uint64_t)x15 * x55)) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + ((0x2 * ((uint64_t)x21 * x49)) + ((0x2 * ((uint64_t)x23 * x47)) + (((uint64_t)x25 * x45) + ((0x2 * ((uint64_t)x27 * x43)) + ((0x2 * ((uint64_t)x29 * x41)) + ((uint64_t)x31 * x39)))))))))))))) + (0x1a5 * (((uint64_t)x33 * x70) + ((0x2 * ((uint64_t)x35 * x71)) + ((0x2 * ((uint64_t)x37 * x69)) + ((uint64_t)x36 * x67))))));
- uint64_t x77 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + (((uint64_t)x9 * x59) + (((uint64_t)x11 * x57) + ((0x2 * ((uint64_t)x13 * x55)) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + ((0x2 * ((uint64_t)x21 * x47)) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + ((0x2 * ((uint64_t)x27 * x41)) + ((uint64_t)x29 * x39))))))))))))) + (0x1a5 * (((uint64_t)x31 * x70) + (((uint64_t)x33 * x71) + ((0x2 * ((uint64_t)x35 * x69)) + (((uint64_t)x37 * x67) + ((uint64_t)x36 * x65)))))));
- uint64_t x78 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + ((uint64_t)x27 * x39)))))))))))) + (0x1a5 * (((uint64_t)x29 * x70) + (((uint64_t)x31 * x71) + (((uint64_t)x33 * x69) + (((uint64_t)x35 * x67) + (((uint64_t)x37 * x65) + ((uint64_t)x36 * x63))))))));
- uint64_t x79 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + (((uint64_t)x11 * x53) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + (((uint64_t)x19 * x45) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + ((uint64_t)x25 * x39))))))))))) + (0x1a5 * ((0x2 * ((uint64_t)x27 * x70)) + ((0x2 * ((uint64_t)x29 * x71)) + ((0x2 * ((uint64_t)x31 * x69)) + (((uint64_t)x33 * x67) + ((0x2 * ((uint64_t)x35 * x65)) + ((0x2 * ((uint64_t)x37 * x63)) + (0x2 * ((uint64_t)x36 * x61))))))))));
- uint64_t x80 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + ((0x2 * ((uint64_t)x21 * x41)) + ((uint64_t)x23 * x39)))))))))) + (0x1a5 * (((uint64_t)x25 * x70) + ((0x2 * ((uint64_t)x27 * x71)) + ((0x2 * ((uint64_t)x29 * x69)) + (((uint64_t)x31 * x67) + (((uint64_t)x33 * x65) + ((0x2 * ((uint64_t)x35 * x63)) + ((0x2 * ((uint64_t)x37 * x61)) + ((uint64_t)x36 * x59))))))))));
- uint64_t x81 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + ((0x2 * ((uint64_t)x13 * x47)) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + ((uint64_t)x21 * x39))))))))) + (0x1a5 * (((uint64_t)x23 * x70) + (((uint64_t)x25 * x71) + ((0x2 * ((uint64_t)x27 * x69)) + (((uint64_t)x29 * x67) + (((uint64_t)x31 * x65) + (((uint64_t)x33 * x63) + ((0x2 * ((uint64_t)x35 * x61)) + (((uint64_t)x37 * x59) + ((uint64_t)x36 * x57)))))))))));
- uint64_t x82 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + ((uint64_t)x19 * x39)))))))) + (0x1a5 * ((0x2 * ((uint64_t)x21 * x70)) + ((0x2 * ((uint64_t)x23 * x71)) + ((0x2 * ((uint64_t)x25 * x69)) + ((0x2 * ((uint64_t)x27 * x67)) + ((0x2 * ((uint64_t)x29 * x65)) + ((0x2 * ((uint64_t)x31 * x63)) + ((0x2 * ((uint64_t)x33 * x61)) + ((0x2 * ((uint64_t)x35 * x59)) + ((0x2 * ((uint64_t)x37 * x57)) + (0x2 * ((uint64_t)x36 * x55)))))))))))));
- uint64_t x83 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + (((uint64_t)x11 * x45) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((uint64_t)x17 * x39))))))) + (0x1a5 * (((uint64_t)x19 * x70) + ((0x2 * ((uint64_t)x21 * x71)) + ((0x2 * ((uint64_t)x23 * x69)) + (((uint64_t)x25 * x67) + ((0x2 * ((uint64_t)x27 * x65)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + (((uint64_t)x33 * x59) + ((0x2 * ((uint64_t)x35 * x57)) + ((0x2 * ((uint64_t)x37 * x55)) + ((uint64_t)x36 * x53)))))))))))));
- uint64_t x84 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + ((uint64_t)x15 * x39)))))) + (0x1a5 * (((uint64_t)x17 * x70) + (((uint64_t)x19 * x71) + ((0x2 * ((uint64_t)x21 * x69)) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + ((0x2 * ((uint64_t)x27 * x63)) + ((0x2 * ((uint64_t)x29 * x61)) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + ((0x2 * ((uint64_t)x35 * x55)) + (((uint64_t)x37 * x53) + ((uint64_t)x36 * x51))))))))))))));
- uint64_t x85 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + ((uint64_t)x13 * x39))))) + (0x1a5 * (((uint64_t)x15 * x70) + (((uint64_t)x17 * x71) + (((uint64_t)x19 * x69) + (((uint64_t)x21 * x67) + (((uint64_t)x23 * x65) + (((uint64_t)x25 * x63) + ((0x2 * ((uint64_t)x27 * x61)) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + (((uint64_t)x35 * x53) + (((uint64_t)x37 * x51) + ((uint64_t)x36 * x49)))))))))))))));
- uint64_t x86 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((uint64_t)x11 * x39)))) + (0x1a5 * ((0x2 * ((uint64_t)x13 * x70)) + ((0x2 * ((uint64_t)x15 * x71)) + ((0x2 * ((uint64_t)x17 * x69)) + (((uint64_t)x19 * x67) + ((0x2 * ((uint64_t)x21 * x65)) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + ((0x2 * ((uint64_t)x29 * x57)) + ((0x2 * ((uint64_t)x31 * x55)) + (((uint64_t)x33 * x53) + ((0x2 * ((uint64_t)x35 * x51)) + ((0x2 * ((uint64_t)x37 * x49)) + (0x2 * ((uint64_t)x36 * x47)))))))))))))))));
- uint64_t x87 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((uint64_t)x9 * x39))) + (0x1a5 * (((uint64_t)x11 * x70) + ((0x2 * ((uint64_t)x13 * x71)) + ((0x2 * ((uint64_t)x15 * x69)) + (((uint64_t)x17 * x67) + (((uint64_t)x19 * x65) + ((0x2 * ((uint64_t)x21 * x63)) + ((0x2 * ((uint64_t)x23 * x61)) + (((uint64_t)x25 * x59) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + ((0x2 * ((uint64_t)x35 * x49)) + ((0x2 * ((uint64_t)x37 * x47)) + ((uint64_t)x36 * x45)))))))))))))))));
- uint64_t x88 = ((((uint64_t)x5 * x41) + ((uint64_t)x7 * x39)) + (0x1a5 * (((uint64_t)x9 * x70) + (((uint64_t)x11 * x71) + ((0x2 * ((uint64_t)x13 * x69)) + (((uint64_t)x15 * x67) + (((uint64_t)x17 * x65) + (((uint64_t)x19 * x63) + ((0x2 * ((uint64_t)x21 * x61)) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + ((0x2 * ((uint64_t)x27 * x55)) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + ((0x2 * ((uint64_t)x35 * x47)) + (((uint64_t)x37 * x45) + ((uint64_t)x36 * x43))))))))))))))))));
- uint64_t x89 = (((uint64_t)x5 * x39) + (0x1a5 * ((0x2 * ((uint64_t)x7 * x70)) + ((0x2 * ((uint64_t)x9 * x71)) + ((0x2 * ((uint64_t)x11 * x69)) + ((0x2 * ((uint64_t)x13 * x67)) + ((0x2 * ((uint64_t)x15 * x65)) + ((0x2 * ((uint64_t)x17 * x63)) + ((0x2 * ((uint64_t)x19 * x61)) + ((0x2 * ((uint64_t)x21 * x59)) + ((0x2 * ((uint64_t)x23 * x57)) + ((0x2 * ((uint64_t)x25 * x55)) + ((0x2 * ((uint64_t)x27 * x53)) + ((0x2 * ((uint64_t)x29 * x51)) + ((0x2 * ((uint64_t)x31 * x49)) + ((0x2 * ((uint64_t)x33 * x47)) + ((0x2 * ((uint64_t)x35 * x45)) + ((0x2 * ((uint64_t)x37 * x43)) + (0x2 * ((uint64_t)x36 * x41))))))))))))))))))));
- uint64_t x90 = (x89 >> 0x16);
- uint32_t x91 = ((uint32_t)x89 & 0x3fffff);
- uint64_t x92 = (x90 + x88);
- uint64_t x93 = (x92 >> 0x15);
- uint32_t x94 = ((uint32_t)x92 & 0x1fffff);
- uint64_t x95 = (x93 + x87);
- uint64_t x96 = (x95 >> 0x15);
- uint32_t x97 = ((uint32_t)x95 & 0x1fffff);
- uint64_t x98 = (x96 + x86);
- uint64_t x99 = (x98 >> 0x16);
- uint32_t x100 = ((uint32_t)x98 & 0x3fffff);
- uint64_t x101 = (x99 + x85);
- uint64_t x102 = (x101 >> 0x15);
- uint32_t x103 = ((uint32_t)x101 & 0x1fffff);
- uint64_t x104 = (x102 + x84);
- uint64_t x105 = (x104 >> 0x15);
- uint32_t x106 = ((uint32_t)x104 & 0x1fffff);
- uint64_t x107 = (x105 + x83);
- uint64_t x108 = (x107 >> 0x15);
- uint32_t x109 = ((uint32_t)x107 & 0x1fffff);
- uint64_t x110 = (x108 + x82);
- uint64_t x111 = (x110 >> 0x16);
- uint32_t x112 = ((uint32_t)x110 & 0x3fffff);
- uint64_t x113 = (x111 + x81);
- uint64_t x114 = (x113 >> 0x15);
- uint32_t x115 = ((uint32_t)x113 & 0x1fffff);
- uint64_t x116 = (x114 + x80);
- uint64_t x117 = (x116 >> 0x15);
- uint32_t x118 = ((uint32_t)x116 & 0x1fffff);
- uint64_t x119 = (x117 + x79);
- uint64_t x120 = (x119 >> 0x16);
- uint32_t x121 = ((uint32_t)x119 & 0x3fffff);
- uint64_t x122 = (x120 + x78);
- uint64_t x123 = (x122 >> 0x15);
- uint32_t x124 = ((uint32_t)x122 & 0x1fffff);
- uint64_t x125 = (x123 + x77);
- uint64_t x126 = (x125 >> 0x15);
- uint32_t x127 = ((uint32_t)x125 & 0x1fffff);
- uint64_t x128 = (x126 + x76);
- uint64_t x129 = (x128 >> 0x15);
- uint32_t x130 = ((uint32_t)x128 & 0x1fffff);
- uint64_t x131 = (x129 + x75);
- uint64_t x132 = (x131 >> 0x16);
- uint32_t x133 = ((uint32_t)x131 & 0x3fffff);
- uint64_t x134 = (x132 + x74);
- uint64_t x135 = (x134 >> 0x15);
- uint32_t x136 = ((uint32_t)x134 & 0x1fffff);
- uint64_t x137 = (x135 + x73);
- uint64_t x138 = (x137 >> 0x15);
- uint32_t x139 = ((uint32_t)x137 & 0x1fffff);
- uint64_t x140 = (x138 + x72);
- uint32_t x141 = (uint32_t) (x140 >> 0x15);
- uint32_t x142 = ((uint32_t)x140 & 0x1fffff);
- uint64_t x143 = (x91 + ((uint64_t)0x1a5 * x141));
- uint32_t x144 = (uint32_t) (x143 >> 0x16);
- uint32_t x145 = ((uint32_t)x143 & 0x3fffff);
- uint32_t x146 = (x144 + x94);
- uint32_t x147 = (x146 >> 0x15);
- uint32_t x148 = (x146 & 0x1fffff);
- return (Return x142, Return x139, Return x136, Return x133, Return x130, Return x127, Return x124, Return x121, Return x118, Return x115, Return x112, Return x109, Return x106, Return x103, Return x100, (x147 + x97), Return x148, Return x145))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m421_18limbs/femulDisplay.v b/src/Specific/solinas32_2e383m421_18limbs/femulDisplay.v
deleted file mode 100644
index 9ffff6929..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m421_18limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e383m421_18limbs/fesquare.c b/src/Specific/solinas32_2e383m421_18limbs/fesquare.c
deleted file mode 100644
index faec5f26d..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/fesquare.c
+++ /dev/null
@@ -1,116 +0,0 @@
-static void fesquare(uint32_t out[18], const uint32_t in1[18]) {
- { const uint32_t x33 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x35 = (((uint64_t)x2 * x33) + ((0x2 * ((uint64_t)x4 * x34)) + ((0x2 * ((uint64_t)x6 * x32)) + (((uint64_t)x8 * x30) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + (((uint64_t)x16 * x22) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (((uint64_t)x22 * x16) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + (((uint64_t)x30 * x8) + ((0x2 * ((uint64_t)x32 * x6)) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x33 * x2))))))))))))))))));
- { uint64_t x36 = ((((uint64_t)x2 * x34) + ((0x2 * ((uint64_t)x4 * x32)) + (((uint64_t)x6 * x30) + (((uint64_t)x8 * x28) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + ((0x2 * ((uint64_t)x18 * x18)) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + (((uint64_t)x28 * x8) + (((uint64_t)x30 * x6) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x34 * x2))))))))))))))))) + (0x1a5 * ((uint64_t)x33 * x33)));
- { uint64_t x37 = ((((uint64_t)x2 * x32) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + ((0x2 * ((uint64_t)x10 * x24)) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + ((0x2 * ((uint64_t)x24 * x10)) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x32 * x2)))))))))))))))) + (0x1a5 * (((uint64_t)x34 * x33) + ((uint64_t)x33 * x34))));
- { uint64_t x38 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + ((0x2 * ((uint64_t)x6 * x26)) + ((0x2 * ((uint64_t)x8 * x24)) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + ((0x2 * ((uint64_t)x24 * x8)) + ((0x2 * ((uint64_t)x26 * x6)) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x1a5 * ((0x2 * ((uint64_t)x32 * x33)) + ((0x2 * ((uint64_t)x34 * x34)) + (0x2 * ((uint64_t)x33 * x32))))));
- { uint64_t x39 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + (((uint64_t)x8 * x22) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + (((uint64_t)x22 * x8) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x1a5 * (((uint64_t)x30 * x33) + ((0x2 * ((uint64_t)x32 * x34)) + ((0x2 * ((uint64_t)x34 * x32)) + ((uint64_t)x33 * x30))))));
- { uint64_t x40 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x1a5 * (((uint64_t)x28 * x33) + (((uint64_t)x30 * x34) + ((0x2 * ((uint64_t)x32 * x32)) + (((uint64_t)x34 * x30) + ((uint64_t)x33 * x28)))))));
- { uint64_t x41 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x1a5 * (((uint64_t)x26 * x33) + (((uint64_t)x28 * x34) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + (((uint64_t)x34 * x28) + ((uint64_t)x33 * x26))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x1a5 * ((0x2 * ((uint64_t)x24 * x33)) + ((0x2 * ((uint64_t)x26 * x34)) + ((0x2 * ((uint64_t)x28 * x32)) + (((uint64_t)x30 * x30) + ((0x2 * ((uint64_t)x32 * x28)) + ((0x2 * ((uint64_t)x34 * x26)) + (0x2 * ((uint64_t)x33 * x24))))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x1a5 * (((uint64_t)x22 * x33) + ((0x2 * ((uint64_t)x24 * x34)) + ((0x2 * ((uint64_t)x26 * x32)) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + ((0x2 * ((uint64_t)x32 * x26)) + ((0x2 * ((uint64_t)x34 * x24)) + ((uint64_t)x33 * x22))))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x1a5 * (((uint64_t)x20 * x33) + (((uint64_t)x22 * x34) + ((0x2 * ((uint64_t)x24 * x32)) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + ((0x2 * ((uint64_t)x32 * x24)) + (((uint64_t)x34 * x22) + ((uint64_t)x33 * x20)))))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x1a5 * ((0x2 * ((uint64_t)x18 * x33)) + ((0x2 * ((uint64_t)x20 * x34)) + ((0x2 * ((uint64_t)x22 * x32)) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + ((0x2 * ((uint64_t)x32 * x22)) + ((0x2 * ((uint64_t)x34 * x20)) + (0x2 * ((uint64_t)x33 * x18)))))))))))));
- { uint64_t x46 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x1a5 * (((uint64_t)x16 * x33) + ((0x2 * ((uint64_t)x18 * x34)) + ((0x2 * ((uint64_t)x20 * x32)) + (((uint64_t)x22 * x30) + ((0x2 * ((uint64_t)x24 * x28)) + ((0x2 * ((uint64_t)x26 * x26)) + ((0x2 * ((uint64_t)x28 * x24)) + (((uint64_t)x30 * x22) + ((0x2 * ((uint64_t)x32 * x20)) + ((0x2 * ((uint64_t)x34 * x18)) + ((uint64_t)x33 * x16)))))))))))));
- { uint64_t x47 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x1a5 * (((uint64_t)x14 * x33) + (((uint64_t)x16 * x34) + ((0x2 * ((uint64_t)x18 * x32)) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + ((0x2 * ((uint64_t)x32 * x18)) + (((uint64_t)x34 * x16) + ((uint64_t)x33 * x14))))))))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x1a5 * (((uint64_t)x12 * x33) + (((uint64_t)x14 * x34) + (((uint64_t)x16 * x32) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + ((0x2 * ((uint64_t)x24 * x24)) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + (((uint64_t)x32 * x16) + (((uint64_t)x34 * x14) + ((uint64_t)x33 * x12)))))))))))))));
- { uint64_t x49 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x1a5 * ((0x2 * ((uint64_t)x10 * x33)) + ((0x2 * ((uint64_t)x12 * x34)) + ((0x2 * ((uint64_t)x14 * x32)) + (((uint64_t)x16 * x30) + ((0x2 * ((uint64_t)x18 * x28)) + ((0x2 * ((uint64_t)x20 * x26)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + ((0x2 * ((uint64_t)x26 * x20)) + ((0x2 * ((uint64_t)x28 * x18)) + (((uint64_t)x30 * x16) + ((0x2 * ((uint64_t)x32 * x14)) + ((0x2 * ((uint64_t)x34 * x12)) + (0x2 * ((uint64_t)x33 * x10)))))))))))))))));
- { uint64_t x50 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x1a5 * (((uint64_t)x8 * x33) + ((0x2 * ((uint64_t)x10 * x34)) + ((0x2 * ((uint64_t)x12 * x32)) + (((uint64_t)x14 * x30) + (((uint64_t)x16 * x28) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + (((uint64_t)x28 * x16) + (((uint64_t)x30 * x14) + ((0x2 * ((uint64_t)x32 * x12)) + ((0x2 * ((uint64_t)x34 * x10)) + ((uint64_t)x33 * x8)))))))))))))))));
- { uint64_t x51 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1a5 * (((uint64_t)x6 * x33) + (((uint64_t)x8 * x34) + ((0x2 * ((uint64_t)x10 * x32)) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + ((0x2 * ((uint64_t)x18 * x24)) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((0x2 * ((uint64_t)x24 * x18)) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + ((0x2 * ((uint64_t)x32 * x10)) + (((uint64_t)x34 * x8) + ((uint64_t)x33 * x6))))))))))))))))));
- { uint64_t x52 = (((uint64_t)x2 * x2) + (0x1a5 * ((0x2 * ((uint64_t)x4 * x33)) + ((0x2 * ((uint64_t)x6 * x34)) + ((0x2 * ((uint64_t)x8 * x32)) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + ((0x2 * ((uint64_t)x18 * x22)) + ((0x2 * ((uint64_t)x20 * x20)) + ((0x2 * ((uint64_t)x22 * x18)) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + ((0x2 * ((uint64_t)x32 * x8)) + ((0x2 * ((uint64_t)x34 * x6)) + (0x2 * ((uint64_t)x33 * x4))))))))))))))))))));
- { uint64_t x53 = (x52 >> 0x16);
- { uint32_t x54 = ((uint32_t)x52 & 0x3fffff);
- { uint64_t x55 = (x53 + x51);
- { uint64_t x56 = (x55 >> 0x15);
- { uint32_t x57 = ((uint32_t)x55 & 0x1fffff);
- { uint64_t x58 = (x56 + x50);
- { uint64_t x59 = (x58 >> 0x15);
- { uint32_t x60 = ((uint32_t)x58 & 0x1fffff);
- { uint64_t x61 = (x59 + x49);
- { uint64_t x62 = (x61 >> 0x16);
- { uint32_t x63 = ((uint32_t)x61 & 0x3fffff);
- { uint64_t x64 = (x62 + x48);
- { uint64_t x65 = (x64 >> 0x15);
- { uint32_t x66 = ((uint32_t)x64 & 0x1fffff);
- { uint64_t x67 = (x65 + x47);
- { uint64_t x68 = (x67 >> 0x15);
- { uint32_t x69 = ((uint32_t)x67 & 0x1fffff);
- { uint64_t x70 = (x68 + x46);
- { uint64_t x71 = (x70 >> 0x15);
- { uint32_t x72 = ((uint32_t)x70 & 0x1fffff);
- { uint64_t x73 = (x71 + x45);
- { uint64_t x74 = (x73 >> 0x16);
- { uint32_t x75 = ((uint32_t)x73 & 0x3fffff);
- { uint64_t x76 = (x74 + x44);
- { uint64_t x77 = (x76 >> 0x15);
- { uint32_t x78 = ((uint32_t)x76 & 0x1fffff);
- { uint64_t x79 = (x77 + x43);
- { uint64_t x80 = (x79 >> 0x15);
- { uint32_t x81 = ((uint32_t)x79 & 0x1fffff);
- { uint64_t x82 = (x80 + x42);
- { uint64_t x83 = (x82 >> 0x16);
- { uint32_t x84 = ((uint32_t)x82 & 0x3fffff);
- { uint64_t x85 = (x83 + x41);
- { uint64_t x86 = (x85 >> 0x15);
- { uint32_t x87 = ((uint32_t)x85 & 0x1fffff);
- { uint64_t x88 = (x86 + x40);
- { uint64_t x89 = (x88 >> 0x15);
- { uint32_t x90 = ((uint32_t)x88 & 0x1fffff);
- { uint64_t x91 = (x89 + x39);
- { uint64_t x92 = (x91 >> 0x15);
- { uint32_t x93 = ((uint32_t)x91 & 0x1fffff);
- { uint64_t x94 = (x92 + x38);
- { uint64_t x95 = (x94 >> 0x16);
- { uint32_t x96 = ((uint32_t)x94 & 0x3fffff);
- { uint64_t x97 = (x95 + x37);
- { uint64_t x98 = (x97 >> 0x15);
- { uint32_t x99 = ((uint32_t)x97 & 0x1fffff);
- { uint64_t x100 = (x98 + x36);
- { uint64_t x101 = (x100 >> 0x15);
- { uint32_t x102 = ((uint32_t)x100 & 0x1fffff);
- { uint64_t x103 = (x101 + x35);
- { uint32_t x104 = (uint32_t) (x103 >> 0x15);
- { uint32_t x105 = ((uint32_t)x103 & 0x1fffff);
- { uint64_t x106 = (x54 + ((uint64_t)0x1a5 * x104));
- { uint32_t x107 = (uint32_t) (x106 >> 0x16);
- { uint32_t x108 = ((uint32_t)x106 & 0x3fffff);
- { uint32_t x109 = (x107 + x57);
- { uint32_t x110 = (x109 >> 0x15);
- { uint32_t x111 = (x109 & 0x1fffff);
- out[0] = x108;
- out[1] = x111;
- out[2] = (x110 + x60);
- out[3] = x63;
- out[4] = x66;
- out[5] = x69;
- out[6] = x72;
- out[7] = x75;
- out[8] = x78;
- out[9] = x81;
- out[10] = x84;
- out[11] = x87;
- out[12] = x90;
- out[13] = x93;
- out[14] = x96;
- out[15] = x99;
- out[16] = x102;
- out[17] = x105;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m421_18limbs/fesquare.v b/src/Specific/solinas32_2e383m421_18limbs/fesquare.v
deleted file mode 100644
index 99303411b..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m421_18limbs.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_2e383m421_18limbs/fesquareDisplay.log b/src/Specific/solinas32_2e383m421_18limbs/fesquareDisplay.log
deleted file mode 100644
index 613fa38f2..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,84 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x33, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x35 = (((uint64_t)x2 * x33) + ((0x2 * ((uint64_t)x4 * x34)) + ((0x2 * ((uint64_t)x6 * x32)) + (((uint64_t)x8 * x30) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + (((uint64_t)x16 * x22) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (((uint64_t)x22 * x16) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + (((uint64_t)x30 * x8) + ((0x2 * ((uint64_t)x32 * x6)) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x33 * x2))))))))))))))))));
- uint64_t x36 = ((((uint64_t)x2 * x34) + ((0x2 * ((uint64_t)x4 * x32)) + (((uint64_t)x6 * x30) + (((uint64_t)x8 * x28) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + ((0x2 * ((uint64_t)x18 * x18)) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + (((uint64_t)x28 * x8) + (((uint64_t)x30 * x6) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x34 * x2))))))))))))))))) + (0x1a5 * ((uint64_t)x33 * x33)));
- uint64_t x37 = ((((uint64_t)x2 * x32) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + ((0x2 * ((uint64_t)x10 * x24)) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + ((0x2 * ((uint64_t)x24 * x10)) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x32 * x2)))))))))))))))) + (0x1a5 * (((uint64_t)x34 * x33) + ((uint64_t)x33 * x34))));
- uint64_t x38 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + ((0x2 * ((uint64_t)x6 * x26)) + ((0x2 * ((uint64_t)x8 * x24)) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + ((0x2 * ((uint64_t)x24 * x8)) + ((0x2 * ((uint64_t)x26 * x6)) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x1a5 * ((0x2 * ((uint64_t)x32 * x33)) + ((0x2 * ((uint64_t)x34 * x34)) + (0x2 * ((uint64_t)x33 * x32))))));
- uint64_t x39 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + (((uint64_t)x8 * x22) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + (((uint64_t)x22 * x8) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x1a5 * (((uint64_t)x30 * x33) + ((0x2 * ((uint64_t)x32 * x34)) + ((0x2 * ((uint64_t)x34 * x32)) + ((uint64_t)x33 * x30))))));
- uint64_t x40 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x1a5 * (((uint64_t)x28 * x33) + (((uint64_t)x30 * x34) + ((0x2 * ((uint64_t)x32 * x32)) + (((uint64_t)x34 * x30) + ((uint64_t)x33 * x28)))))));
- uint64_t x41 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x1a5 * (((uint64_t)x26 * x33) + (((uint64_t)x28 * x34) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + (((uint64_t)x34 * x28) + ((uint64_t)x33 * x26))))))));
- uint64_t x42 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x1a5 * ((0x2 * ((uint64_t)x24 * x33)) + ((0x2 * ((uint64_t)x26 * x34)) + ((0x2 * ((uint64_t)x28 * x32)) + (((uint64_t)x30 * x30) + ((0x2 * ((uint64_t)x32 * x28)) + ((0x2 * ((uint64_t)x34 * x26)) + (0x2 * ((uint64_t)x33 * x24))))))))));
- uint64_t x43 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x1a5 * (((uint64_t)x22 * x33) + ((0x2 * ((uint64_t)x24 * x34)) + ((0x2 * ((uint64_t)x26 * x32)) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + ((0x2 * ((uint64_t)x32 * x26)) + ((0x2 * ((uint64_t)x34 * x24)) + ((uint64_t)x33 * x22))))))))));
- uint64_t x44 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x1a5 * (((uint64_t)x20 * x33) + (((uint64_t)x22 * x34) + ((0x2 * ((uint64_t)x24 * x32)) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + ((0x2 * ((uint64_t)x32 * x24)) + (((uint64_t)x34 * x22) + ((uint64_t)x33 * x20)))))))))));
- uint64_t x45 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x1a5 * ((0x2 * ((uint64_t)x18 * x33)) + ((0x2 * ((uint64_t)x20 * x34)) + ((0x2 * ((uint64_t)x22 * x32)) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + ((0x2 * ((uint64_t)x32 * x22)) + ((0x2 * ((uint64_t)x34 * x20)) + (0x2 * ((uint64_t)x33 * x18)))))))))))));
- uint64_t x46 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x1a5 * (((uint64_t)x16 * x33) + ((0x2 * ((uint64_t)x18 * x34)) + ((0x2 * ((uint64_t)x20 * x32)) + (((uint64_t)x22 * x30) + ((0x2 * ((uint64_t)x24 * x28)) + ((0x2 * ((uint64_t)x26 * x26)) + ((0x2 * ((uint64_t)x28 * x24)) + (((uint64_t)x30 * x22) + ((0x2 * ((uint64_t)x32 * x20)) + ((0x2 * ((uint64_t)x34 * x18)) + ((uint64_t)x33 * x16)))))))))))));
- uint64_t x47 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x1a5 * (((uint64_t)x14 * x33) + (((uint64_t)x16 * x34) + ((0x2 * ((uint64_t)x18 * x32)) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + ((0x2 * ((uint64_t)x32 * x18)) + (((uint64_t)x34 * x16) + ((uint64_t)x33 * x14))))))))))))));
- uint64_t x48 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x1a5 * (((uint64_t)x12 * x33) + (((uint64_t)x14 * x34) + (((uint64_t)x16 * x32) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + ((0x2 * ((uint64_t)x24 * x24)) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + (((uint64_t)x32 * x16) + (((uint64_t)x34 * x14) + ((uint64_t)x33 * x12)))))))))))))));
- uint64_t x49 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x1a5 * ((0x2 * ((uint64_t)x10 * x33)) + ((0x2 * ((uint64_t)x12 * x34)) + ((0x2 * ((uint64_t)x14 * x32)) + (((uint64_t)x16 * x30) + ((0x2 * ((uint64_t)x18 * x28)) + ((0x2 * ((uint64_t)x20 * x26)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + ((0x2 * ((uint64_t)x26 * x20)) + ((0x2 * ((uint64_t)x28 * x18)) + (((uint64_t)x30 * x16) + ((0x2 * ((uint64_t)x32 * x14)) + ((0x2 * ((uint64_t)x34 * x12)) + (0x2 * ((uint64_t)x33 * x10)))))))))))))))));
- uint64_t x50 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x1a5 * (((uint64_t)x8 * x33) + ((0x2 * ((uint64_t)x10 * x34)) + ((0x2 * ((uint64_t)x12 * x32)) + (((uint64_t)x14 * x30) + (((uint64_t)x16 * x28) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + (((uint64_t)x28 * x16) + (((uint64_t)x30 * x14) + ((0x2 * ((uint64_t)x32 * x12)) + ((0x2 * ((uint64_t)x34 * x10)) + ((uint64_t)x33 * x8)))))))))))))))));
- uint64_t x51 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1a5 * (((uint64_t)x6 * x33) + (((uint64_t)x8 * x34) + ((0x2 * ((uint64_t)x10 * x32)) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + ((0x2 * ((uint64_t)x18 * x24)) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((0x2 * ((uint64_t)x24 * x18)) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + ((0x2 * ((uint64_t)x32 * x10)) + (((uint64_t)x34 * x8) + ((uint64_t)x33 * x6))))))))))))))))));
- uint64_t x52 = (((uint64_t)x2 * x2) + (0x1a5 * ((0x2 * ((uint64_t)x4 * x33)) + ((0x2 * ((uint64_t)x6 * x34)) + ((0x2 * ((uint64_t)x8 * x32)) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + ((0x2 * ((uint64_t)x18 * x22)) + ((0x2 * ((uint64_t)x20 * x20)) + ((0x2 * ((uint64_t)x22 * x18)) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + ((0x2 * ((uint64_t)x32 * x8)) + ((0x2 * ((uint64_t)x34 * x6)) + (0x2 * ((uint64_t)x33 * x4))))))))))))))))))));
- uint64_t x53 = (x52 >> 0x16);
- uint32_t x54 = ((uint32_t)x52 & 0x3fffff);
- uint64_t x55 = (x53 + x51);
- uint64_t x56 = (x55 >> 0x15);
- uint32_t x57 = ((uint32_t)x55 & 0x1fffff);
- uint64_t x58 = (x56 + x50);
- uint64_t x59 = (x58 >> 0x15);
- uint32_t x60 = ((uint32_t)x58 & 0x1fffff);
- uint64_t x61 = (x59 + x49);
- uint64_t x62 = (x61 >> 0x16);
- uint32_t x63 = ((uint32_t)x61 & 0x3fffff);
- uint64_t x64 = (x62 + x48);
- uint64_t x65 = (x64 >> 0x15);
- uint32_t x66 = ((uint32_t)x64 & 0x1fffff);
- uint64_t x67 = (x65 + x47);
- uint64_t x68 = (x67 >> 0x15);
- uint32_t x69 = ((uint32_t)x67 & 0x1fffff);
- uint64_t x70 = (x68 + x46);
- uint64_t x71 = (x70 >> 0x15);
- uint32_t x72 = ((uint32_t)x70 & 0x1fffff);
- uint64_t x73 = (x71 + x45);
- uint64_t x74 = (x73 >> 0x16);
- uint32_t x75 = ((uint32_t)x73 & 0x3fffff);
- uint64_t x76 = (x74 + x44);
- uint64_t x77 = (x76 >> 0x15);
- uint32_t x78 = ((uint32_t)x76 & 0x1fffff);
- uint64_t x79 = (x77 + x43);
- uint64_t x80 = (x79 >> 0x15);
- uint32_t x81 = ((uint32_t)x79 & 0x1fffff);
- uint64_t x82 = (x80 + x42);
- uint64_t x83 = (x82 >> 0x16);
- uint32_t x84 = ((uint32_t)x82 & 0x3fffff);
- uint64_t x85 = (x83 + x41);
- uint64_t x86 = (x85 >> 0x15);
- uint32_t x87 = ((uint32_t)x85 & 0x1fffff);
- uint64_t x88 = (x86 + x40);
- uint64_t x89 = (x88 >> 0x15);
- uint32_t x90 = ((uint32_t)x88 & 0x1fffff);
- uint64_t x91 = (x89 + x39);
- uint64_t x92 = (x91 >> 0x15);
- uint32_t x93 = ((uint32_t)x91 & 0x1fffff);
- uint64_t x94 = (x92 + x38);
- uint64_t x95 = (x94 >> 0x16);
- uint32_t x96 = ((uint32_t)x94 & 0x3fffff);
- uint64_t x97 = (x95 + x37);
- uint64_t x98 = (x97 >> 0x15);
- uint32_t x99 = ((uint32_t)x97 & 0x1fffff);
- uint64_t x100 = (x98 + x36);
- uint64_t x101 = (x100 >> 0x15);
- uint32_t x102 = ((uint32_t)x100 & 0x1fffff);
- uint64_t x103 = (x101 + x35);
- uint32_t x104 = (uint32_t) (x103 >> 0x15);
- uint32_t x105 = ((uint32_t)x103 & 0x1fffff);
- uint64_t x106 = (x54 + ((uint64_t)0x1a5 * x104));
- uint32_t x107 = (uint32_t) (x106 >> 0x16);
- uint32_t x108 = ((uint32_t)x106 & 0x3fffff);
- uint32_t x109 = (x107 + x57);
- uint32_t x110 = (x109 >> 0x15);
- uint32_t x111 = (x109 & 0x1fffff);
- return (Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, (x110 + x60), Return x111, Return x108))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m421_18limbs/fesquareDisplay.v b/src/Specific/solinas32_2e383m421_18limbs/fesquareDisplay.v
deleted file mode 100644
index a2b758752..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m421_18limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e383m421_18limbs/fesub.c b/src/Specific/solinas32_2e383m421_18limbs/fesub.c
deleted file mode 100644
index 211321bfe..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/fesub.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void fesub(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- out[0] = ((0x7ffcb6 + x5) - x39);
- out[1] = ((0x3ffffe + x7) - x41);
- out[2] = ((0x3ffffe + x9) - x43);
- out[3] = ((0x7ffffe + x11) - x45);
- out[4] = ((0x3ffffe + x13) - x47);
- out[5] = ((0x3ffffe + x15) - x49);
- out[6] = ((0x3ffffe + x17) - x51);
- out[7] = ((0x7ffffe + x19) - x53);
- out[8] = ((0x3ffffe + x21) - x55);
- out[9] = ((0x3ffffe + x23) - x57);
- out[10] = ((0x7ffffe + x25) - x59);
- out[11] = ((0x3ffffe + x27) - x61);
- out[12] = ((0x3ffffe + x29) - x63);
- out[13] = ((0x3ffffe + x31) - x65);
- out[14] = ((0x7ffffe + x33) - x67);
- out[15] = ((0x3ffffe + x35) - x69);
- out[16] = ((0x3ffffe + x37) - x71);
- out[17] = ((0x3ffffe + x36) - x70);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m421_18limbs/fesub.v b/src/Specific/solinas32_2e383m421_18limbs/fesub.v
deleted file mode 100644
index f5253b09a..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m421_18limbs.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_2e383m421_18limbs/fesubDisplay.log b/src/Specific/solinas32_2e383m421_18limbs/fesubDisplay.log
deleted file mode 100644
index a315c2c2a..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- (((0x3ffffe + x36) - x70), ((0x3ffffe + x37) - x71), ((0x3ffffe + x35) - x69), ((0x7ffffe + x33) - x67), ((0x3ffffe + x31) - x65), ((0x3ffffe + x29) - x63), ((0x3ffffe + x27) - x61), ((0x7ffffe + x25) - x59), ((0x3ffffe + x23) - x57), ((0x3ffffe + x21) - x55), ((0x7ffffe + x19) - x53), ((0x3ffffe + x17) - x51), ((0x3ffffe + x15) - x49), ((0x3ffffe + x13) - x47), ((0x7ffffe + x11) - x45), ((0x3ffffe + x9) - x43), ((0x3ffffe + x7) - x41), ((0x7ffcb6 + x5) - x39)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m421_18limbs/fesubDisplay.v b/src/Specific/solinas32_2e383m421_18limbs/fesubDisplay.v
deleted file mode 100644
index 509fbacf7..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m421_18limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e383m421_18limbs/freeze.c b/src/Specific/solinas32_2e383m421_18limbs/freeze.c
deleted file mode 100644
index 967de9472..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/freeze.c
+++ /dev/null
@@ -1,94 +0,0 @@
-static void freeze(uint32_t out[18], const uint32_t in1[18]) {
- { const uint32_t x33 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffe5b);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x4, 0x1fffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x6, 0x1fffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x8, 0x3fffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x10, 0x1fffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x12, 0x1fffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x14, 0x1fffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x16, 0x3fffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x18, 0x1fffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x20, 0x1fffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x22, 0x3fffff);
- { uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x24, 0x1fffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x26, 0x1fffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x28, 0x1fffff);
- { uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x30, 0x3fffff);
- { uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x32, 0x1fffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x34, 0x1fffff);
- { uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x33, 0x1fffff);
- { uint32_t x89 = cmovznz32(x88, 0x0, 0xffffffff);
- { uint32_t x90 = (x89 & 0x3ffe5b);
- { uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x36, Return x90);
- { uint32_t x94 = (x89 & 0x1fffff);
- { uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x39, Return x94);
- { uint32_t x98 = (x89 & 0x1fffff);
- { uint32_t x100, uint8_t x101 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x42, Return x98);
- { uint32_t x102 = (x89 & 0x3fffff);
- { uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x45, Return x102);
- { uint32_t x106 = (x89 & 0x1fffff);
- { uint32_t x108, uint8_t x109 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x48, Return x106);
- { uint32_t x110 = (x89 & 0x1fffff);
- { uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x51, Return x110);
- { uint32_t x114 = (x89 & 0x1fffff);
- { uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x54, Return x114);
- { uint32_t x118 = (x89 & 0x3fffff);
- { uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x57, Return x118);
- { uint32_t x122 = (x89 & 0x1fffff);
- { uint32_t x124, uint8_t x125 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x60, Return x122);
- { uint32_t x126 = (x89 & 0x1fffff);
- { uint32_t x128, uint8_t x129 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x125, Return x63, Return x126);
- { uint32_t x130 = (x89 & 0x3fffff);
- { uint32_t x132, uint8_t x133 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x129, Return x66, Return x130);
- { uint32_t x134 = (x89 & 0x1fffff);
- { uint32_t x136, uint8_t x137 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x133, Return x69, Return x134);
- { uint32_t x138 = (x89 & 0x1fffff);
- { uint32_t x140, uint8_t x141 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x137, Return x72, Return x138);
- { uint32_t x142 = (x89 & 0x1fffff);
- { uint32_t x144, uint8_t x145 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x141, Return x75, Return x142);
- { uint32_t x146 = (x89 & 0x3fffff);
- { uint32_t x148, uint8_t x149 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x145, Return x78, Return x146);
- { uint32_t x150 = (x89 & 0x1fffff);
- { uint32_t x152, uint8_t x153 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x149, Return x81, Return x150);
- { uint32_t x154 = (x89 & 0x1fffff);
- { uint32_t x156, uint8_t x157 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x153, Return x84, Return x154);
- { uint32_t x158 = (x89 & 0x1fffff);
- { uint32_t x160, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x157, Return x87, Return x158);
- out[0] = x92;
- out[1] = x96;
- out[2] = x100;
- out[3] = x104;
- out[4] = x108;
- out[5] = x112;
- out[6] = x116;
- out[7] = x120;
- out[8] = x124;
- out[9] = x128;
- out[10] = x132;
- out[11] = x136;
- out[12] = x140;
- out[13] = x144;
- out[14] = x148;
- out[15] = x152;
- out[16] = x156;
- out[17] = x160;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e383m421_18limbs/freeze.v b/src/Specific/solinas32_2e383m421_18limbs/freeze.v
deleted file mode 100644
index 769684a2f..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e383m421_18limbs.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_2e383m421_18limbs/freezeDisplay.log b/src/Specific/solinas32_2e383m421_18limbs/freezeDisplay.log
deleted file mode 100644
index 2a6e4c9ac..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/freezeDisplay.log
+++ /dev/null
@@ -1,62 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x33, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffe5b);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x4, 0x1fffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x6, 0x1fffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x8, 0x3fffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x10, 0x1fffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x12, 0x1fffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x14, 0x1fffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x16, 0x3fffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x18, 0x1fffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x20, 0x1fffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x22, 0x3fffff);
- uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x24, 0x1fffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x26, 0x1fffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x28, 0x1fffff);
- uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x30, 0x3fffff);
- uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x32, 0x1fffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x34, 0x1fffff);
- uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x33, 0x1fffff);
- uint32_t x89 = cmovznz32(x88, 0x0, 0xffffffff);
- uint32_t x90 = (x89 & 0x3ffe5b);
- uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x36, Return x90);
- uint32_t x94 = (x89 & 0x1fffff);
- uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x39, Return x94);
- uint32_t x98 = (x89 & 0x1fffff);
- uint32_t x100, uint8_t x101 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x42, Return x98);
- uint32_t x102 = (x89 & 0x3fffff);
- uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x45, Return x102);
- uint32_t x106 = (x89 & 0x1fffff);
- uint32_t x108, uint8_t x109 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x48, Return x106);
- uint32_t x110 = (x89 & 0x1fffff);
- uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x51, Return x110);
- uint32_t x114 = (x89 & 0x1fffff);
- uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x54, Return x114);
- uint32_t x118 = (x89 & 0x3fffff);
- uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x57, Return x118);
- uint32_t x122 = (x89 & 0x1fffff);
- uint32_t x124, uint8_t x125 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x60, Return x122);
- uint32_t x126 = (x89 & 0x1fffff);
- uint32_t x128, uint8_t x129 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x125, Return x63, Return x126);
- uint32_t x130 = (x89 & 0x3fffff);
- uint32_t x132, uint8_t x133 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x129, Return x66, Return x130);
- uint32_t x134 = (x89 & 0x1fffff);
- uint32_t x136, uint8_t x137 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x133, Return x69, Return x134);
- uint32_t x138 = (x89 & 0x1fffff);
- uint32_t x140, uint8_t x141 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x137, Return x72, Return x138);
- uint32_t x142 = (x89 & 0x1fffff);
- uint32_t x144, uint8_t x145 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x141, Return x75, Return x142);
- uint32_t x146 = (x89 & 0x3fffff);
- uint32_t x148, uint8_t x149 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x145, Return x78, Return x146);
- uint32_t x150 = (x89 & 0x1fffff);
- uint32_t x152, uint8_t x153 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x149, Return x81, Return x150);
- uint32_t x154 = (x89 & 0x1fffff);
- uint32_t x156, uint8_t x157 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x153, Return x84, Return x154);
- uint32_t x158 = (x89 & 0x1fffff);
- uint32_t x160, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x157, Return x87, Return x158);
- (Return x160, Return x156, Return x152, Return x148, Return x144, Return x140, Return x136, Return x132, Return x128, Return x124, Return x120, Return x116, Return x112, Return x108, Return x104, Return x100, Return x96, Return x92))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e383m421_18limbs/freezeDisplay.v b/src/Specific/solinas32_2e383m421_18limbs/freezeDisplay.v
deleted file mode 100644
index 474501554..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e383m421_18limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e383m421_18limbs/py_interpreter.sh b/src/Specific/solinas32_2e383m421_18limbs/py_interpreter.sh
deleted file mode 100755
index 52fd98954..000000000
--- a/src/Specific/solinas32_2e383m421_18limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**383 - 421' -Dmodulus_bytes='21 + 5/18' -Da24='121665'
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/CurveParameters.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/CurveParameters.v
deleted file mode 100644
index a5920a711..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^384 - 2^128 - 2^96 + 2^32 - 1
-Base: 21 + 1/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 18%nat;
- base := 21 + 1/3;
- bitwidth := 32;
- s := 2^384;
- c := [(1, 1); (2^32, -1); (2^96, 1); (2^128, 1)];
- carry_chains := Some [[5; 3; 0; 17]; [6; 4; 1; 0; 7; 5; 2; 8; 3; 9; 10; 11; 12; 13; 14; 15; 16; 17]; [6; 4; 1; 0]]%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_2e384m2e128m2e96p2e32m1_18limbs/Synthesis.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/Synthesis.v
deleted file mode 100644
index c5d401336..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_18limbs.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_2e384m2e128m2e96p2e32m1_18limbs/compiler.sh b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/compiler.sh
deleted file mode 100755
index 51a34fb80..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1' "$@"
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/compilerxx.sh b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/compilerxx.sh
deleted file mode 100755
index f93452a1f..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1' "$@"
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/feadd.c b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/feadd.c
deleted file mode 100644
index 7b8380410..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/feadd.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void feadd(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- out[0] = (x5 + x39);
- out[1] = (x7 + x41);
- out[2] = (x9 + x43);
- out[3] = (x11 + x45);
- out[4] = (x13 + x47);
- out[5] = (x15 + x49);
- out[6] = (x17 + x51);
- out[7] = (x19 + x53);
- out[8] = (x21 + x55);
- out[9] = (x23 + x57);
- out[10] = (x25 + x59);
- out[11] = (x27 + x61);
- out[12] = (x29 + x63);
- out[13] = (x31 + x65);
- out[14] = (x33 + x67);
- out[15] = (x35 + x69);
- out[16] = (x37 + x71);
- out[17] = (x36 + x70);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/feadd.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/feadd.v
deleted file mode 100644
index 211b35ec9..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_18limbs.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_2e384m2e128m2e96p2e32m1_18limbs/feaddDisplay.log b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/feaddDisplay.log
deleted file mode 100644
index 5e9c243f4..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- ((x36 + x70), (x37 + x71), (x35 + x69), (x33 + x67), (x31 + x65), (x29 + x63), (x27 + x61), (x25 + x59), (x23 + x57), (x21 + x55), (x19 + x53), (x17 + x51), (x15 + x49), (x13 + x47), (x11 + x45), (x9 + x43), (x7 + x41), (x5 + x39)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/feaddDisplay.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/feaddDisplay.v
deleted file mode 100644
index e19b19bab..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_18limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/fecarry.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/fecarry.v
deleted file mode 100644
index 09daf0cb0..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_18limbs.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_2e384m2e128m2e96p2e32m1_18limbs/fecarryDisplay.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/fecarryDisplay.v
deleted file mode 100644
index 94b8c0e1a..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_18limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/femul.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/femul.v
deleted file mode 100644
index f4777f821..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_18limbs.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_2e384m2e128m2e96p2e32m1_18limbs/femulDisplay.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/femulDisplay.v
deleted file mode 100644
index e52f4f588..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_18limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/fesquare.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/fesquare.v
deleted file mode 100644
index 9367c97ce..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_18limbs.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_2e384m2e128m2e96p2e32m1_18limbs/fesquareDisplay.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/fesquareDisplay.v
deleted file mode 100644
index bc686257a..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_18limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/fesub.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/fesub.v
deleted file mode 100644
index c2a25ec8c..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_18limbs.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_2e384m2e128m2e96p2e32m1_18limbs/fesubDisplay.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/fesubDisplay.v
deleted file mode 100644
index 0419894dc..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_18limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/freeze.c b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/freeze.c
deleted file mode 100644
index bb169a01d..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/freeze.c
+++ /dev/null
@@ -1,92 +0,0 @@
-static void freeze(uint32_t out[18], const uint32_t in1[18]) {
- { const uint32_t x33 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffff);
- { uint32_t x39, ℤ x40 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) Syntax.TZ) (Return x37, Return x4, 0x3ff);
- { uint32_t x42, ℤ x43 = Op (Syntax.SubWithGetBorrow 21 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x40, Return x6, 0x0);
- { uint32_t x45, ℤ x46 = Op (Syntax.SubWithGetBorrow 22 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x43, Return x8, 0x0);
- { uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 21 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x10, 0x1ffc00);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x12, 0x1fffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x14, 0x3ffffe);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x16, 0x1fffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x18, 0x1fffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x20, 0x3fffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x22, 0x1fffff);
- { uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x24, 0x1fffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x26, 0x3fffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x28, 0x1fffff);
- { uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x30, 0x1fffff);
- { uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x32, 0x3fffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x34, 0x1fffff);
- { uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x33, 0x1fffff);
- { uint32_t x89 = cmovznz32(x88, 0x0, 0xffffffff);
- { uint32_t x90 = (x89 & 0x3fffff);
- { uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x36, Return x90);
- { uint32_t x94 = (x89 & 0x3ff);
- { uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x39, Return x94);
- { uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x42, 0x0);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x45, 0x0);
- { uint32_t x104 = (x89 & 0x1ffc00);
- { uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x48, Return x104);
- { uint32_t x108 = (x89 & 0x1fffff);
- { uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x51, Return x108);
- { uint32_t x112 = (x89 & 0x3ffffe);
- { uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x54, Return x112);
- { uint32_t x116 = (x89 & 0x1fffff);
- { uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x57, Return x116);
- { uint32_t x120 = (x89 & 0x1fffff);
- { uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x60, Return x120);
- { uint32_t x124 = (x89 & 0x3fffff);
- { uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x63, Return x124);
- { uint32_t x128 = (x89 & 0x1fffff);
- { uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x66, Return x128);
- { uint32_t x132 = (x89 & 0x1fffff);
- { uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x69, Return x132);
- { uint32_t x136 = (x89 & 0x3fffff);
- { uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x72, Return x136);
- { uint32_t x140 = (x89 & 0x1fffff);
- { uint32_t x142, uint8_t x143 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x75, Return x140);
- { uint32_t x144 = (x89 & 0x1fffff);
- { uint32_t x146, uint8_t x147 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x143, Return x78, Return x144);
- { uint32_t x148 = (x89 & 0x3fffff);
- { uint32_t x150, uint8_t x151 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x147, Return x81, Return x148);
- { uint32_t x152 = (x89 & 0x1fffff);
- { uint32_t x154, uint8_t x155 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x151, Return x84, Return x152);
- { uint32_t x156 = (x89 & 0x1fffff);
- { uint32_t x158, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x155, Return x87, Return x156);
- out[0] = x92;
- out[1] = x96;
- out[2] = x99;
- out[3] = x102;
- out[4] = x106;
- out[5] = x110;
- out[6] = x114;
- out[7] = x118;
- out[8] = x122;
- out[9] = x126;
- out[10] = x130;
- out[11] = x134;
- out[12] = x138;
- out[13] = x142;
- out[14] = x146;
- out[15] = x150;
- out[16] = x154;
- out[17] = x158;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/freeze.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/freeze.v
deleted file mode 100644
index e6078afab..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_18limbs.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_2e384m2e128m2e96p2e32m1_18limbs/freezeDisplay.log b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/freezeDisplay.log
deleted file mode 100644
index 3850155ff..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/freezeDisplay.log
+++ /dev/null
@@ -1,60 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x33, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffff);
- uint32_t x39, ℤ x40 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) Syntax.TZ) (Return x37, Return x4, 0x3ff);
- uint32_t x42, ℤ x43 = Op (Syntax.SubWithGetBorrow 21 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x40, Return x6, 0x0);
- uint32_t x45, ℤ x46 = Op (Syntax.SubWithGetBorrow 22 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x43, Return x8, 0x0);
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 21 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x10, 0x1ffc00);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x12, 0x1fffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x14, 0x3ffffe);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x16, 0x1fffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x18, 0x1fffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x20, 0x3fffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x22, 0x1fffff);
- uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x24, 0x1fffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x26, 0x3fffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x28, 0x1fffff);
- uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x30, 0x1fffff);
- uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x32, 0x3fffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x34, 0x1fffff);
- uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x33, 0x1fffff);
- uint32_t x89 = cmovznz32(x88, 0x0, 0xffffffff);
- uint32_t x90 = (x89 & 0x3fffff);
- uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x36, Return x90);
- uint32_t x94 = (x89 & 0x3ff);
- uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x39, Return x94);
- uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x42, 0x0);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x45, 0x0);
- uint32_t x104 = (x89 & 0x1ffc00);
- uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x48, Return x104);
- uint32_t x108 = (x89 & 0x1fffff);
- uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x51, Return x108);
- uint32_t x112 = (x89 & 0x3ffffe);
- uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x54, Return x112);
- uint32_t x116 = (x89 & 0x1fffff);
- uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x57, Return x116);
- uint32_t x120 = (x89 & 0x1fffff);
- uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x60, Return x120);
- uint32_t x124 = (x89 & 0x3fffff);
- uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x63, Return x124);
- uint32_t x128 = (x89 & 0x1fffff);
- uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x66, Return x128);
- uint32_t x132 = (x89 & 0x1fffff);
- uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x69, Return x132);
- uint32_t x136 = (x89 & 0x3fffff);
- uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x72, Return x136);
- uint32_t x140 = (x89 & 0x1fffff);
- uint32_t x142, uint8_t x143 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x75, Return x140);
- uint32_t x144 = (x89 & 0x1fffff);
- uint32_t x146, uint8_t x147 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x143, Return x78, Return x144);
- uint32_t x148 = (x89 & 0x3fffff);
- uint32_t x150, uint8_t x151 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x147, Return x81, Return x148);
- uint32_t x152 = (x89 & 0x1fffff);
- uint32_t x154, uint8_t x155 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x151, Return x84, Return x152);
- uint32_t x156 = (x89 & 0x1fffff);
- uint32_t x158, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x155, Return x87, Return x156);
- (Return x158, Return x154, Return x150, Return x146, Return x142, Return x138, Return x134, Return x130, Return x126, Return x122, Return x118, Return x114, Return x110, Return x106, Return x102, Return x99, Return x96, Return x92))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/freezeDisplay.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/freezeDisplay.v
deleted file mode 100644
index 77f7a5e4a..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_18limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/py_interpreter.sh b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/py_interpreter.sh
deleted file mode 100755
index 6b43ad63a..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_18limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**384 - 2**128 - 2**96 + 2**32 - 1' -Dmodulus_bytes='21 + 1/3' -Da24='121665'
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/CurveParameters.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/CurveParameters.v
deleted file mode 100644
index a276b0327..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^384 - 2^128 - 2^96 + 2^32 - 1
-Base: 20 + 4/19
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 19%nat;
- base := 20 + 4/19;
- bitwidth := 32;
- s := 2^384;
- c := [(1, 1); (2^32, -1); (2^96, 1); (2^128, 1)];
- carry_chains := Some [[5; 3; 0; 18]; [6; 4; 1; 0; 7; 5; 2; 8; 3; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18]; [6; 4; 1; 0]]%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_2e384m2e128m2e96p2e32m1_19limbs/Synthesis.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/Synthesis.v
deleted file mode 100644
index 363ee5d11..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_19limbs.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_2e384m2e128m2e96p2e32m1_19limbs/compiler.sh b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/compiler.sh
deleted file mode 100755
index c95e51fb0..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{21,20,20,20,21,20,20,20,20,21,20,20,20,20,21,20,20,20,20}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='19' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1' "$@"
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/compilerxx.sh b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/compilerxx.sh
deleted file mode 100755
index bbf9ee434..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{21,20,20,20,21,20,20,20,20,21,20,20,20,20,21,20,20,20,20}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='19' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1' "$@"
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/feadd.c b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/feadd.c
deleted file mode 100644
index 7432e2ef1..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/feadd.c
+++ /dev/null
@@ -1,60 +0,0 @@
-static void feadd(uint32_t out[19], const uint32_t in1[19], const uint32_t in2[19]) {
- { const uint32_t x38 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x74 = in2[18];
- { const uint32_t x75 = in2[17];
- { const uint32_t x73 = in2[16];
- { const uint32_t x71 = in2[15];
- { const uint32_t x69 = in2[14];
- { const uint32_t x67 = in2[13];
- { const uint32_t x65 = in2[12];
- { const uint32_t x63 = in2[11];
- { const uint32_t x61 = in2[10];
- { const uint32_t x59 = in2[9];
- { const uint32_t x57 = in2[8];
- { const uint32_t x55 = in2[7];
- { const uint32_t x53 = in2[6];
- { const uint32_t x51 = in2[5];
- { const uint32_t x49 = in2[4];
- { const uint32_t x47 = in2[3];
- { const uint32_t x45 = in2[2];
- { const uint32_t x43 = in2[1];
- { const uint32_t x41 = in2[0];
- out[0] = (x5 + x41);
- out[1] = (x7 + x43);
- out[2] = (x9 + x45);
- out[3] = (x11 + x47);
- out[4] = (x13 + x49);
- out[5] = (x15 + x51);
- out[6] = (x17 + x53);
- out[7] = (x19 + x55);
- out[8] = (x21 + x57);
- out[9] = (x23 + x59);
- out[10] = (x25 + x61);
- out[11] = (x27 + x63);
- out[12] = (x29 + x65);
- out[13] = (x31 + x67);
- out[14] = (x33 + x69);
- out[15] = (x35 + x71);
- out[16] = (x37 + x73);
- out[17] = (x39 + x75);
- out[18] = (x38 + x74);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/feadd.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/feadd.v
deleted file mode 100644
index 1236f2714..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_19limbs.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_2e384m2e128m2e96p2e32m1_19limbs/feaddDisplay.log b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/feaddDisplay.log
deleted file mode 100644
index 76a71b356..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x38, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x74, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41))%core,
- ((x38 + x74), (x39 + x75), (x37 + x73), (x35 + x71), (x33 + x69), (x31 + x67), (x29 + x65), (x27 + x63), (x25 + x61), (x23 + x59), (x21 + x57), (x19 + x55), (x17 + x53), (x15 + x51), (x13 + x49), (x11 + x47), (x9 + x45), (x7 + x43), (x5 + x41)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/feaddDisplay.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/feaddDisplay.v
deleted file mode 100644
index f67a02b84..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_19limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/fecarry.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/fecarry.v
deleted file mode 100644
index 5ff97eb38..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_19limbs.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_2e384m2e128m2e96p2e32m1_19limbs/fecarryDisplay.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/fecarryDisplay.v
deleted file mode 100644
index aa9b736e1..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_19limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/femul.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/femul.v
deleted file mode 100644
index af62e15b1..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_19limbs.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_2e384m2e128m2e96p2e32m1_19limbs/femulDisplay.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/femulDisplay.v
deleted file mode 100644
index 1341e8381..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_19limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/fesquare.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/fesquare.v
deleted file mode 100644
index 6c7ca80a1..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_19limbs.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_2e384m2e128m2e96p2e32m1_19limbs/fesquareDisplay.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/fesquareDisplay.v
deleted file mode 100644
index be1c183ec..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_19limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/fesub.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/fesub.v
deleted file mode 100644
index b2ee140c6..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_19limbs.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_2e384m2e128m2e96p2e32m1_19limbs/fesubDisplay.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/fesubDisplay.v
deleted file mode 100644
index d67ae4880..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_19limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/freeze.c b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/freeze.c
deleted file mode 100644
index 18b0039e4..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/freeze.c
+++ /dev/null
@@ -1,97 +0,0 @@
-static void freeze(uint32_t out[19], const uint32_t in1[19]) {
- { const uint32_t x35 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffff);
- { uint32_t x41, ℤ x42 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) Syntax.TZ) (Return x39, Return x4, 0x7ff);
- { uint32_t x44, ℤ x45 = Op (Syntax.SubWithGetBorrow 20 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x42, Return x6, 0x0);
- { uint32_t x47, ℤ x48 = Op (Syntax.SubWithGetBorrow 20 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x45, Return x8, 0x0);
- { uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 21 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x10, 0x1f8000);
- { uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x12, 0xfffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x14, 0xfffbf);
- { uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x16, 0xfffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x18, 0xfffff);
- { uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x20, 0x1fffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x22, 0xfffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x24, 0xfffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x26, 0xfffff);
- { uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x28, 0xfffff);
- { uint32_t x80, uint8_t x81 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x30, 0x1fffff);
- { uint32_t x83, uint8_t x84 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x32, 0xfffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x34, 0xfffff);
- { uint32_t x89, uint8_t x90 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x36, 0xfffff);
- { uint32_t x92, uint8_t x93 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x35, 0xfffff);
- { uint32_t x94 = cmovznz32(x93, 0x0, 0xffffffff);
- { uint32_t x95 = (x94 & 0x1fffff);
- { uint32_t x97, uint8_t x98 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x38, Return x95);
- { uint32_t x99 = (x94 & 0x7ff);
- { uint32_t x101, uint8_t x102 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x98, Return x41, Return x99);
- { uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x102, Return x44, 0x0);
- { uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x47, 0x0);
- { uint32_t x109 = (x94 & 0x1f8000);
- { uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x50, Return x109);
- { uint32_t x113 = (x94 & 0xfffff);
- { uint32_t x115, uint8_t x116 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x53, Return x113);
- { uint32_t x117 = (x94 & 0xfffbf);
- { uint32_t x119, uint8_t x120 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x116, Return x56, Return x117);
- { uint32_t x121 = (x94 & 0xfffff);
- { uint32_t x123, uint8_t x124 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x120, Return x59, Return x121);
- { uint32_t x125 = (x94 & 0xfffff);
- { uint32_t x127, uint8_t x128 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x124, Return x62, Return x125);
- { uint32_t x129 = (x94 & 0x1fffff);
- { uint32_t x131, uint8_t x132 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x128, Return x65, Return x129);
- { uint32_t x133 = (x94 & 0xfffff);
- { uint32_t x135, uint8_t x136 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x132, Return x68, Return x133);
- { uint32_t x137 = (x94 & 0xfffff);
- { uint32_t x139, uint8_t x140 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x136, Return x71, Return x137);
- { uint32_t x141 = (x94 & 0xfffff);
- { uint32_t x143, uint8_t x144 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x140, Return x74, Return x141);
- { uint32_t x145 = (x94 & 0xfffff);
- { uint32_t x147, uint8_t x148 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x144, Return x77, Return x145);
- { uint32_t x149 = (x94 & 0x1fffff);
- { uint32_t x151, uint8_t x152 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x148, Return x80, Return x149);
- { uint32_t x153 = (x94 & 0xfffff);
- { uint32_t x155, uint8_t x156 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x152, Return x83, Return x153);
- { uint32_t x157 = (x94 & 0xfffff);
- { uint32_t x159, uint8_t x160 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x156, Return x86, Return x157);
- { uint32_t x161 = (x94 & 0xfffff);
- { uint32_t x163, uint8_t x164 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x160, Return x89, Return x161);
- { uint32_t x165 = (x94 & 0xfffff);
- { uint32_t x167, uint8_t _ = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x164, Return x92, Return x165);
- out[0] = x97;
- out[1] = x101;
- out[2] = x104;
- out[3] = x107;
- out[4] = x111;
- out[5] = x115;
- out[6] = x119;
- out[7] = x123;
- out[8] = x127;
- out[9] = x131;
- out[10] = x135;
- out[11] = x139;
- out[12] = x143;
- out[13] = x147;
- out[14] = x151;
- out[15] = x155;
- out[16] = x159;
- out[17] = x163;
- out[18] = x167;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/freeze.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/freeze.v
deleted file mode 100644
index 70a8f4fcc..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_19limbs.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_2e384m2e128m2e96p2e32m1_19limbs/freezeDisplay.log b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/freezeDisplay.log
deleted file mode 100644
index b6f00e6ed..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/freezeDisplay.log
+++ /dev/null
@@ -1,63 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x35, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffff);
- uint32_t x41, ℤ x42 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) Syntax.TZ) (Return x39, Return x4, 0x7ff);
- uint32_t x44, ℤ x45 = Op (Syntax.SubWithGetBorrow 20 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x42, Return x6, 0x0);
- uint32_t x47, ℤ x48 = Op (Syntax.SubWithGetBorrow 20 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) Syntax.TZ) (Return x45, Return x8, 0x0);
- uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 21 Syntax.TZ (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x10, 0x1f8000);
- uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x12, 0xfffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x14, 0xfffbf);
- uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x16, 0xfffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x18, 0xfffff);
- uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x20, 0x1fffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x22, 0xfffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x24, 0xfffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x26, 0xfffff);
- uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x28, 0xfffff);
- uint32_t x80, uint8_t x81 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x30, 0x1fffff);
- uint32_t x83, uint8_t x84 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x32, 0xfffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x34, 0xfffff);
- uint32_t x89, uint8_t x90 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x36, 0xfffff);
- uint32_t x92, uint8_t x93 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x35, 0xfffff);
- uint32_t x94 = cmovznz32(x93, 0x0, 0xffffffff);
- uint32_t x95 = (x94 & 0x1fffff);
- uint32_t x97, uint8_t x98 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x38, Return x95);
- uint32_t x99 = (x94 & 0x7ff);
- uint32_t x101, uint8_t x102 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x98, Return x41, Return x99);
- uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x102, Return x44, 0x0);
- uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x47, 0x0);
- uint32_t x109 = (x94 & 0x1f8000);
- uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x50, Return x109);
- uint32_t x113 = (x94 & 0xfffff);
- uint32_t x115, uint8_t x116 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x53, Return x113);
- uint32_t x117 = (x94 & 0xfffbf);
- uint32_t x119, uint8_t x120 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x116, Return x56, Return x117);
- uint32_t x121 = (x94 & 0xfffff);
- uint32_t x123, uint8_t x124 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x120, Return x59, Return x121);
- uint32_t x125 = (x94 & 0xfffff);
- uint32_t x127, uint8_t x128 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x124, Return x62, Return x125);
- uint32_t x129 = (x94 & 0x1fffff);
- uint32_t x131, uint8_t x132 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x128, Return x65, Return x129);
- uint32_t x133 = (x94 & 0xfffff);
- uint32_t x135, uint8_t x136 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x132, Return x68, Return x133);
- uint32_t x137 = (x94 & 0xfffff);
- uint32_t x139, uint8_t x140 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x136, Return x71, Return x137);
- uint32_t x141 = (x94 & 0xfffff);
- uint32_t x143, uint8_t x144 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x140, Return x74, Return x141);
- uint32_t x145 = (x94 & 0xfffff);
- uint32_t x147, uint8_t x148 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x144, Return x77, Return x145);
- uint32_t x149 = (x94 & 0x1fffff);
- uint32_t x151, uint8_t x152 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x148, Return x80, Return x149);
- uint32_t x153 = (x94 & 0xfffff);
- uint32_t x155, uint8_t x156 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x152, Return x83, Return x153);
- uint32_t x157 = (x94 & 0xfffff);
- uint32_t x159, uint8_t x160 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x156, Return x86, Return x157);
- uint32_t x161 = (x94 & 0xfffff);
- uint32_t x163, uint8_t x164 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x160, Return x89, Return x161);
- uint32_t x165 = (x94 & 0xfffff);
- uint32_t x167, uint8_t _ = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x164, Return x92, Return x165);
- (Return x167, Return x163, Return x159, Return x155, Return x151, Return x147, Return x143, Return x139, Return x135, Return x131, Return x127, Return x123, Return x119, Return x115, Return x111, Return x107, Return x104, Return x101, Return x97))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/freezeDisplay.v b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/freezeDisplay.v
deleted file mode 100644
index 31d59dc57..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e384m2e128m2e96p2e32m1_19limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/py_interpreter.sh b/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/py_interpreter.sh
deleted file mode 100755
index e98eb1b23..000000000
--- a/src/Specific/solinas32_2e384m2e128m2e96p2e32m1_19limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**384 - 2**128 - 2**96 + 2**32 - 1' -Dmodulus_bytes='20 + 4/19' -Da24='121665'
diff --git a/src/Specific/solinas32_2e384m317_17limbs/CurveParameters.v b/src/Specific/solinas32_2e384m317_17limbs/CurveParameters.v
deleted file mode 100644
index d5b3b57de..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^384 - 317
-Base: 22 + 10/17
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 17%nat;
- base := 22 + 10/17;
- bitwidth := 32;
- s := 2^384;
- c := [(1, 317)];
- carry_chains := Some [seq 0 (pred 17); [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_2e384m317_17limbs/Synthesis.v b/src/Specific/solinas32_2e384m317_17limbs/Synthesis.v
deleted file mode 100644
index 0f9144ea3..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e384m317_17limbs.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_2e384m317_17limbs/compiler.sh b/src/Specific/solinas32_2e384m317_17limbs/compiler.sh
deleted file mode 100755
index eefe43eda..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,23,22,23,22,23,23,22,23,22,23,23,22,23,22,23,22}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<384) - 317' "$@"
diff --git a/src/Specific/solinas32_2e384m317_17limbs/compilerxx.sh b/src/Specific/solinas32_2e384m317_17limbs/compilerxx.sh
deleted file mode 100755
index 2f8a378cb..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,23,22,23,22,23,23,22,23,22,23,23,22,23,22,23,22}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<384) - 317' "$@"
diff --git a/src/Specific/solinas32_2e384m317_17limbs/feadd.c b/src/Specific/solinas32_2e384m317_17limbs/feadd.c
deleted file mode 100644
index 30eb11eae..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/feadd.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void feadd(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- out[0] = (x5 + x37);
- out[1] = (x7 + x39);
- out[2] = (x9 + x41);
- out[3] = (x11 + x43);
- out[4] = (x13 + x45);
- out[5] = (x15 + x47);
- out[6] = (x17 + x49);
- out[7] = (x19 + x51);
- out[8] = (x21 + x53);
- out[9] = (x23 + x55);
- out[10] = (x25 + x57);
- out[11] = (x27 + x59);
- out[12] = (x29 + x61);
- out[13] = (x31 + x63);
- out[14] = (x33 + x65);
- out[15] = (x35 + x67);
- out[16] = (x34 + x66);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e384m317_17limbs/feadd.v b/src/Specific/solinas32_2e384m317_17limbs/feadd.v
deleted file mode 100644
index 8cddc007c..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e384m317_17limbs.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_2e384m317_17limbs/feaddDisplay.log b/src/Specific/solinas32_2e384m317_17limbs/feaddDisplay.log
deleted file mode 100644
index 7324e0941..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- ((x34 + x66), (x35 + x67), (x33 + x65), (x31 + x63), (x29 + x61), (x27 + x59), (x25 + x57), (x23 + x55), (x21 + x53), (x19 + x51), (x17 + x49), (x15 + x47), (x13 + x45), (x11 + x43), (x9 + x41), (x7 + x39), (x5 + x37)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e384m317_17limbs/feaddDisplay.v b/src/Specific/solinas32_2e384m317_17limbs/feaddDisplay.v
deleted file mode 100644
index f43b5730a..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e384m317_17limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e384m317_17limbs/fecarry.v b/src/Specific/solinas32_2e384m317_17limbs/fecarry.v
deleted file mode 100644
index 494887008..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e384m317_17limbs.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_2e384m317_17limbs/fecarryDisplay.v b/src/Specific/solinas32_2e384m317_17limbs/fecarryDisplay.v
deleted file mode 100644
index f51272464..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e384m317_17limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e384m317_17limbs/femul.c b/src/Specific/solinas32_2e384m317_17limbs/femul.c
deleted file mode 100644
index 456a5ced2..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/femul.c
+++ /dev/null
@@ -1,127 +0,0 @@
-static void femul(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- { uint64_t x68 = (((uint64_t)x5 * x66) + (((uint64_t)x7 * x67) + ((0x2 * ((uint64_t)x9 * x65)) + (((uint64_t)x11 * x63) + ((0x2 * ((uint64_t)x13 * x61)) + (((uint64_t)x15 * x59) + (((uint64_t)x17 * x57) + ((0x2 * ((uint64_t)x19 * x55)) + (((uint64_t)x21 * x53) + ((0x2 * ((uint64_t)x23 * x51)) + (((uint64_t)x25 * x49) + (((uint64_t)x27 * x47) + ((0x2 * ((uint64_t)x29 * x45)) + (((uint64_t)x31 * x43) + ((0x2 * ((uint64_t)x33 * x41)) + (((uint64_t)x35 * x39) + ((uint64_t)x34 * x37)))))))))))))))));
- { uint64_t x69 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + (((uint64_t)x15 * x57) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + (((uint64_t)x25 * x47) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + ((uint64_t)x35 * x37)))))))))))))))) + (0x13d * (0x2 * ((uint64_t)x34 * x66))));
- { uint64_t x70 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + ((0x2 * ((uint64_t)x9 * x61)) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + ((0x2 * ((uint64_t)x19 * x51)) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + ((0x2 * ((uint64_t)x29 * x41)) + (((uint64_t)x31 * x39) + ((uint64_t)x33 * x37))))))))))))))) + (0x13d * (((uint64_t)x35 * x66) + ((uint64_t)x34 * x67))));
- { uint64_t x71 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + (((uint64_t)x11 * x57) + ((0x2 * ((uint64_t)x13 * x55)) + (((uint64_t)x15 * x53) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + (((uint64_t)x21 * x47) + ((0x2 * ((uint64_t)x23 * x45)) + (((uint64_t)x25 * x43) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((uint64_t)x31 * x37)))))))))))))) + (0x13d * ((0x2 * ((uint64_t)x33 * x66)) + (((uint64_t)x35 * x67) + (0x2 * ((uint64_t)x34 * x65))))));
- { uint64_t x72 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + ((uint64_t)x29 * x37))))))))))))) + (0x13d * (((uint64_t)x31 * x66) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + ((uint64_t)x34 * x63))))));
- { uint64_t x73 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + ((0x2 * ((uint64_t)x9 * x55)) + (((uint64_t)x11 * x53) + ((0x2 * ((uint64_t)x13 * x51)) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + ((0x2 * ((uint64_t)x19 * x45)) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + (((uint64_t)x25 * x39) + ((uint64_t)x27 * x37)))))))))))) + (0x13d * ((0x2 * ((uint64_t)x29 * x66)) + (((uint64_t)x31 * x67) + ((0x2 * ((uint64_t)x33 * x65)) + (((uint64_t)x35 * x63) + (0x2 * ((uint64_t)x34 * x61))))))));
- { uint64_t x74 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + (((uint64_t)x15 * x47) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + ((uint64_t)x25 * x37))))))))))) + (0x13d * ((0x2 * ((uint64_t)x27 * x66)) + ((0x2 * ((uint64_t)x29 * x67)) + ((0x2 * ((uint64_t)x31 * x65)) + ((0x2 * ((uint64_t)x33 * x63)) + ((0x2 * ((uint64_t)x35 * x61)) + (0x2 * ((uint64_t)x34 * x59)))))))));
- { uint64_t x75 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + ((0x2 * ((uint64_t)x9 * x51)) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((0x2 * ((uint64_t)x19 * x41)) + (((uint64_t)x21 * x39) + ((uint64_t)x23 * x37)))))))))) + (0x13d * (((uint64_t)x25 * x66) + (((uint64_t)x27 * x67) + ((0x2 * ((uint64_t)x29 * x65)) + (((uint64_t)x31 * x63) + ((0x2 * ((uint64_t)x33 * x61)) + (((uint64_t)x35 * x59) + ((uint64_t)x34 * x57)))))))));
- { uint64_t x76 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + ((0x2 * ((uint64_t)x13 * x45)) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + ((uint64_t)x21 * x37))))))))) + (0x13d * ((0x2 * ((uint64_t)x23 * x66)) + (((uint64_t)x25 * x67) + ((0x2 * ((uint64_t)x27 * x65)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + (((uint64_t)x35 * x57) + (0x2 * ((uint64_t)x34 * x55)))))))))));
- { uint64_t x77 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + ((uint64_t)x19 * x37)))))))) + (0x13d * (((uint64_t)x21 * x66) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + ((0x2 * ((uint64_t)x29 * x61)) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + ((uint64_t)x34 * x53)))))))))));
- { uint64_t x78 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + ((0x2 * ((uint64_t)x9 * x45)) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + (((uint64_t)x15 * x39) + ((uint64_t)x17 * x37))))))) + (0x13d * ((0x2 * ((uint64_t)x19 * x66)) + (((uint64_t)x21 * x67) + ((0x2 * ((uint64_t)x23 * x65)) + (((uint64_t)x25 * x63) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + (((uint64_t)x31 * x57) + ((0x2 * ((uint64_t)x33 * x55)) + (((uint64_t)x35 * x53) + (0x2 * ((uint64_t)x34 * x51)))))))))))));
- { uint64_t x79 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((uint64_t)x15 * x37)))))) + (0x13d * ((0x2 * ((uint64_t)x17 * x66)) + ((0x2 * ((uint64_t)x19 * x67)) + ((0x2 * ((uint64_t)x21 * x65)) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + ((0x2 * ((uint64_t)x29 * x57)) + ((0x2 * ((uint64_t)x31 * x55)) + ((0x2 * ((uint64_t)x33 * x53)) + ((0x2 * ((uint64_t)x35 * x51)) + (0x2 * ((uint64_t)x34 * x49))))))))))))));
- { uint64_t x80 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + (((uint64_t)x11 * x39) + ((uint64_t)x13 * x37))))) + (0x13d * (((uint64_t)x15 * x66) + (((uint64_t)x17 * x67) + ((0x2 * ((uint64_t)x19 * x65)) + (((uint64_t)x21 * x63) + ((0x2 * ((uint64_t)x23 * x61)) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + ((0x2 * ((uint64_t)x29 * x55)) + (((uint64_t)x31 * x53) + ((0x2 * ((uint64_t)x33 * x51)) + (((uint64_t)x35 * x49) + ((uint64_t)x34 * x47))))))))))))));
- { uint64_t x81 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((uint64_t)x11 * x37)))) + (0x13d * ((0x2 * ((uint64_t)x13 * x66)) + (((uint64_t)x15 * x67) + ((0x2 * ((uint64_t)x17 * x65)) + ((0x2 * ((uint64_t)x19 * x63)) + ((0x2 * ((uint64_t)x21 * x61)) + ((0x2 * ((uint64_t)x23 * x59)) + (((uint64_t)x25 * x57) + ((0x2 * ((uint64_t)x27 * x55)) + ((0x2 * ((uint64_t)x29 * x53)) + ((0x2 * ((uint64_t)x31 * x51)) + ((0x2 * ((uint64_t)x33 * x49)) + (((uint64_t)x35 * x47) + (0x2 * ((uint64_t)x34 * x45))))))))))))))));
- { uint64_t x82 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + ((uint64_t)x9 * x37))) + (0x13d * (((uint64_t)x11 * x66) + (((uint64_t)x13 * x67) + (((uint64_t)x15 * x65) + (((uint64_t)x17 * x63) + ((0x2 * ((uint64_t)x19 * x61)) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + ((0x2 * ((uint64_t)x29 * x51)) + (((uint64_t)x31 * x49) + (((uint64_t)x33 * x47) + (((uint64_t)x35 * x45) + ((uint64_t)x34 * x43))))))))))))))));
- { uint64_t x83 = ((((uint64_t)x5 * x39) + ((uint64_t)x7 * x37)) + (0x13d * ((0x2 * ((uint64_t)x9 * x66)) + (((uint64_t)x11 * x67) + ((0x2 * ((uint64_t)x13 * x65)) + (((uint64_t)x15 * x63) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + (((uint64_t)x21 * x57) + ((0x2 * ((uint64_t)x23 * x55)) + (((uint64_t)x25 * x53) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + (((uint64_t)x31 * x47) + ((0x2 * ((uint64_t)x33 * x45)) + (((uint64_t)x35 * x43) + (0x2 * ((uint64_t)x34 * x41))))))))))))))))));
- { uint64_t x84 = (((uint64_t)x5 * x37) + (0x13d * ((0x2 * ((uint64_t)x7 * x66)) + ((0x2 * ((uint64_t)x9 * x67)) + ((0x2 * ((uint64_t)x11 * x65)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + ((0x2 * ((uint64_t)x35 * x41)) + (0x2 * ((uint64_t)x34 * x39)))))))))))))))))));
- { uint64_t x85 = (x84 >> 0x17);
- { uint32_t x86 = ((uint32_t)x84 & 0x7fffff);
- { uint64_t x87 = (x85 + x83);
- { uint64_t x88 = (x87 >> 0x17);
- { uint32_t x89 = ((uint32_t)x87 & 0x7fffff);
- { uint64_t x90 = (x88 + x82);
- { uint64_t x91 = (x90 >> 0x16);
- { uint32_t x92 = ((uint32_t)x90 & 0x3fffff);
- { uint64_t x93 = (x91 + x81);
- { uint64_t x94 = (x93 >> 0x17);
- { uint32_t x95 = ((uint32_t)x93 & 0x7fffff);
- { uint64_t x96 = (x94 + x80);
- { uint64_t x97 = (x96 >> 0x16);
- { uint32_t x98 = ((uint32_t)x96 & 0x3fffff);
- { uint64_t x99 = (x97 + x79);
- { uint64_t x100 = (x99 >> 0x17);
- { uint32_t x101 = ((uint32_t)x99 & 0x7fffff);
- { uint64_t x102 = (x100 + x78);
- { uint64_t x103 = (x102 >> 0x17);
- { uint32_t x104 = ((uint32_t)x102 & 0x7fffff);
- { uint64_t x105 = (x103 + x77);
- { uint64_t x106 = (x105 >> 0x16);
- { uint32_t x107 = ((uint32_t)x105 & 0x3fffff);
- { uint64_t x108 = (x106 + x76);
- { uint64_t x109 = (x108 >> 0x17);
- { uint32_t x110 = ((uint32_t)x108 & 0x7fffff);
- { uint64_t x111 = (x109 + x75);
- { uint64_t x112 = (x111 >> 0x16);
- { uint32_t x113 = ((uint32_t)x111 & 0x3fffff);
- { uint64_t x114 = (x112 + x74);
- { uint64_t x115 = (x114 >> 0x17);
- { uint32_t x116 = ((uint32_t)x114 & 0x7fffff);
- { uint64_t x117 = (x115 + x73);
- { uint64_t x118 = (x117 >> 0x17);
- { uint32_t x119 = ((uint32_t)x117 & 0x7fffff);
- { uint64_t x120 = (x118 + x72);
- { uint64_t x121 = (x120 >> 0x16);
- { uint32_t x122 = ((uint32_t)x120 & 0x3fffff);
- { uint64_t x123 = (x121 + x71);
- { uint64_t x124 = (x123 >> 0x17);
- { uint32_t x125 = ((uint32_t)x123 & 0x7fffff);
- { uint64_t x126 = (x124 + x70);
- { uint64_t x127 = (x126 >> 0x16);
- { uint32_t x128 = ((uint32_t)x126 & 0x3fffff);
- { uint64_t x129 = (x127 + x69);
- { uint64_t x130 = (x129 >> 0x17);
- { uint32_t x131 = ((uint32_t)x129 & 0x7fffff);
- { uint64_t x132 = (x130 + x68);
- { uint32_t x133 = (uint32_t) (x132 >> 0x16);
- { uint32_t x134 = ((uint32_t)x132 & 0x3fffff);
- { uint64_t x135 = (x86 + ((uint64_t)0x13d * x133));
- { uint32_t x136 = (uint32_t) (x135 >> 0x17);
- { uint32_t x137 = ((uint32_t)x135 & 0x7fffff);
- { uint32_t x138 = (x136 + x89);
- { uint32_t x139 = (x138 >> 0x17);
- { uint32_t x140 = (x138 & 0x7fffff);
- out[0] = x137;
- out[1] = x140;
- out[2] = (x139 + x92);
- out[3] = x95;
- out[4] = x98;
- out[5] = x101;
- out[6] = x104;
- out[7] = x107;
- out[8] = x110;
- out[9] = x113;
- out[10] = x116;
- out[11] = x119;
- out[12] = x122;
- out[13] = x125;
- out[14] = x128;
- out[15] = x131;
- out[16] = x134;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e384m317_17limbs/femul.v b/src/Specific/solinas32_2e384m317_17limbs/femul.v
deleted file mode 100644
index e1f06f67f..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e384m317_17limbs.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_2e384m317_17limbs/femulDisplay.log b/src/Specific/solinas32_2e384m317_17limbs/femulDisplay.log
deleted file mode 100644
index 3da863e0f..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/femulDisplay.log
+++ /dev/null
@@ -1,80 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- uint64_t x68 = (((uint64_t)x5 * x66) + (((uint64_t)x7 * x67) + ((0x2 * ((uint64_t)x9 * x65)) + (((uint64_t)x11 * x63) + ((0x2 * ((uint64_t)x13 * x61)) + (((uint64_t)x15 * x59) + (((uint64_t)x17 * x57) + ((0x2 * ((uint64_t)x19 * x55)) + (((uint64_t)x21 * x53) + ((0x2 * ((uint64_t)x23 * x51)) + (((uint64_t)x25 * x49) + (((uint64_t)x27 * x47) + ((0x2 * ((uint64_t)x29 * x45)) + (((uint64_t)x31 * x43) + ((0x2 * ((uint64_t)x33 * x41)) + (((uint64_t)x35 * x39) + ((uint64_t)x34 * x37)))))))))))))))));
- uint64_t x69 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + (((uint64_t)x15 * x57) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + (((uint64_t)x25 * x47) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + ((uint64_t)x35 * x37)))))))))))))))) + (0x13d * (0x2 * ((uint64_t)x34 * x66))));
- uint64_t x70 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + ((0x2 * ((uint64_t)x9 * x61)) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + ((0x2 * ((uint64_t)x19 * x51)) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + ((0x2 * ((uint64_t)x29 * x41)) + (((uint64_t)x31 * x39) + ((uint64_t)x33 * x37))))))))))))))) + (0x13d * (((uint64_t)x35 * x66) + ((uint64_t)x34 * x67))));
- uint64_t x71 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + (((uint64_t)x11 * x57) + ((0x2 * ((uint64_t)x13 * x55)) + (((uint64_t)x15 * x53) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + (((uint64_t)x21 * x47) + ((0x2 * ((uint64_t)x23 * x45)) + (((uint64_t)x25 * x43) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((uint64_t)x31 * x37)))))))))))))) + (0x13d * ((0x2 * ((uint64_t)x33 * x66)) + (((uint64_t)x35 * x67) + (0x2 * ((uint64_t)x34 * x65))))));
- uint64_t x72 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + ((uint64_t)x29 * x37))))))))))))) + (0x13d * (((uint64_t)x31 * x66) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + ((uint64_t)x34 * x63))))));
- uint64_t x73 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + ((0x2 * ((uint64_t)x9 * x55)) + (((uint64_t)x11 * x53) + ((0x2 * ((uint64_t)x13 * x51)) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + ((0x2 * ((uint64_t)x19 * x45)) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + (((uint64_t)x25 * x39) + ((uint64_t)x27 * x37)))))))))))) + (0x13d * ((0x2 * ((uint64_t)x29 * x66)) + (((uint64_t)x31 * x67) + ((0x2 * ((uint64_t)x33 * x65)) + (((uint64_t)x35 * x63) + (0x2 * ((uint64_t)x34 * x61))))))));
- uint64_t x74 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + (((uint64_t)x15 * x47) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + ((uint64_t)x25 * x37))))))))))) + (0x13d * ((0x2 * ((uint64_t)x27 * x66)) + ((0x2 * ((uint64_t)x29 * x67)) + ((0x2 * ((uint64_t)x31 * x65)) + ((0x2 * ((uint64_t)x33 * x63)) + ((0x2 * ((uint64_t)x35 * x61)) + (0x2 * ((uint64_t)x34 * x59)))))))));
- uint64_t x75 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + ((0x2 * ((uint64_t)x9 * x51)) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((0x2 * ((uint64_t)x19 * x41)) + (((uint64_t)x21 * x39) + ((uint64_t)x23 * x37)))))))))) + (0x13d * (((uint64_t)x25 * x66) + (((uint64_t)x27 * x67) + ((0x2 * ((uint64_t)x29 * x65)) + (((uint64_t)x31 * x63) + ((0x2 * ((uint64_t)x33 * x61)) + (((uint64_t)x35 * x59) + ((uint64_t)x34 * x57)))))))));
- uint64_t x76 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + ((0x2 * ((uint64_t)x13 * x45)) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + ((uint64_t)x21 * x37))))))))) + (0x13d * ((0x2 * ((uint64_t)x23 * x66)) + (((uint64_t)x25 * x67) + ((0x2 * ((uint64_t)x27 * x65)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + (((uint64_t)x35 * x57) + (0x2 * ((uint64_t)x34 * x55)))))))))));
- uint64_t x77 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + ((uint64_t)x19 * x37)))))))) + (0x13d * (((uint64_t)x21 * x66) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + ((0x2 * ((uint64_t)x29 * x61)) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + ((uint64_t)x34 * x53)))))))))));
- uint64_t x78 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + ((0x2 * ((uint64_t)x9 * x45)) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + (((uint64_t)x15 * x39) + ((uint64_t)x17 * x37))))))) + (0x13d * ((0x2 * ((uint64_t)x19 * x66)) + (((uint64_t)x21 * x67) + ((0x2 * ((uint64_t)x23 * x65)) + (((uint64_t)x25 * x63) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + (((uint64_t)x31 * x57) + ((0x2 * ((uint64_t)x33 * x55)) + (((uint64_t)x35 * x53) + (0x2 * ((uint64_t)x34 * x51)))))))))))));
- uint64_t x79 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((uint64_t)x15 * x37)))))) + (0x13d * ((0x2 * ((uint64_t)x17 * x66)) + ((0x2 * ((uint64_t)x19 * x67)) + ((0x2 * ((uint64_t)x21 * x65)) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + ((0x2 * ((uint64_t)x29 * x57)) + ((0x2 * ((uint64_t)x31 * x55)) + ((0x2 * ((uint64_t)x33 * x53)) + ((0x2 * ((uint64_t)x35 * x51)) + (0x2 * ((uint64_t)x34 * x49))))))))))))));
- uint64_t x80 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + (((uint64_t)x11 * x39) + ((uint64_t)x13 * x37))))) + (0x13d * (((uint64_t)x15 * x66) + (((uint64_t)x17 * x67) + ((0x2 * ((uint64_t)x19 * x65)) + (((uint64_t)x21 * x63) + ((0x2 * ((uint64_t)x23 * x61)) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + ((0x2 * ((uint64_t)x29 * x55)) + (((uint64_t)x31 * x53) + ((0x2 * ((uint64_t)x33 * x51)) + (((uint64_t)x35 * x49) + ((uint64_t)x34 * x47))))))))))))));
- uint64_t x81 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((uint64_t)x11 * x37)))) + (0x13d * ((0x2 * ((uint64_t)x13 * x66)) + (((uint64_t)x15 * x67) + ((0x2 * ((uint64_t)x17 * x65)) + ((0x2 * ((uint64_t)x19 * x63)) + ((0x2 * ((uint64_t)x21 * x61)) + ((0x2 * ((uint64_t)x23 * x59)) + (((uint64_t)x25 * x57) + ((0x2 * ((uint64_t)x27 * x55)) + ((0x2 * ((uint64_t)x29 * x53)) + ((0x2 * ((uint64_t)x31 * x51)) + ((0x2 * ((uint64_t)x33 * x49)) + (((uint64_t)x35 * x47) + (0x2 * ((uint64_t)x34 * x45))))))))))))))));
- uint64_t x82 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + ((uint64_t)x9 * x37))) + (0x13d * (((uint64_t)x11 * x66) + (((uint64_t)x13 * x67) + (((uint64_t)x15 * x65) + (((uint64_t)x17 * x63) + ((0x2 * ((uint64_t)x19 * x61)) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + ((0x2 * ((uint64_t)x29 * x51)) + (((uint64_t)x31 * x49) + (((uint64_t)x33 * x47) + (((uint64_t)x35 * x45) + ((uint64_t)x34 * x43))))))))))))))));
- uint64_t x83 = ((((uint64_t)x5 * x39) + ((uint64_t)x7 * x37)) + (0x13d * ((0x2 * ((uint64_t)x9 * x66)) + (((uint64_t)x11 * x67) + ((0x2 * ((uint64_t)x13 * x65)) + (((uint64_t)x15 * x63) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + (((uint64_t)x21 * x57) + ((0x2 * ((uint64_t)x23 * x55)) + (((uint64_t)x25 * x53) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + (((uint64_t)x31 * x47) + ((0x2 * ((uint64_t)x33 * x45)) + (((uint64_t)x35 * x43) + (0x2 * ((uint64_t)x34 * x41))))))))))))))))));
- uint64_t x84 = (((uint64_t)x5 * x37) + (0x13d * ((0x2 * ((uint64_t)x7 * x66)) + ((0x2 * ((uint64_t)x9 * x67)) + ((0x2 * ((uint64_t)x11 * x65)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + ((0x2 * ((uint64_t)x35 * x41)) + (0x2 * ((uint64_t)x34 * x39)))))))))))))))))));
- uint64_t x85 = (x84 >> 0x17);
- uint32_t x86 = ((uint32_t)x84 & 0x7fffff);
- uint64_t x87 = (x85 + x83);
- uint64_t x88 = (x87 >> 0x17);
- uint32_t x89 = ((uint32_t)x87 & 0x7fffff);
- uint64_t x90 = (x88 + x82);
- uint64_t x91 = (x90 >> 0x16);
- uint32_t x92 = ((uint32_t)x90 & 0x3fffff);
- uint64_t x93 = (x91 + x81);
- uint64_t x94 = (x93 >> 0x17);
- uint32_t x95 = ((uint32_t)x93 & 0x7fffff);
- uint64_t x96 = (x94 + x80);
- uint64_t x97 = (x96 >> 0x16);
- uint32_t x98 = ((uint32_t)x96 & 0x3fffff);
- uint64_t x99 = (x97 + x79);
- uint64_t x100 = (x99 >> 0x17);
- uint32_t x101 = ((uint32_t)x99 & 0x7fffff);
- uint64_t x102 = (x100 + x78);
- uint64_t x103 = (x102 >> 0x17);
- uint32_t x104 = ((uint32_t)x102 & 0x7fffff);
- uint64_t x105 = (x103 + x77);
- uint64_t x106 = (x105 >> 0x16);
- uint32_t x107 = ((uint32_t)x105 & 0x3fffff);
- uint64_t x108 = (x106 + x76);
- uint64_t x109 = (x108 >> 0x17);
- uint32_t x110 = ((uint32_t)x108 & 0x7fffff);
- uint64_t x111 = (x109 + x75);
- uint64_t x112 = (x111 >> 0x16);
- uint32_t x113 = ((uint32_t)x111 & 0x3fffff);
- uint64_t x114 = (x112 + x74);
- uint64_t x115 = (x114 >> 0x17);
- uint32_t x116 = ((uint32_t)x114 & 0x7fffff);
- uint64_t x117 = (x115 + x73);
- uint64_t x118 = (x117 >> 0x17);
- uint32_t x119 = ((uint32_t)x117 & 0x7fffff);
- uint64_t x120 = (x118 + x72);
- uint64_t x121 = (x120 >> 0x16);
- uint32_t x122 = ((uint32_t)x120 & 0x3fffff);
- uint64_t x123 = (x121 + x71);
- uint64_t x124 = (x123 >> 0x17);
- uint32_t x125 = ((uint32_t)x123 & 0x7fffff);
- uint64_t x126 = (x124 + x70);
- uint64_t x127 = (x126 >> 0x16);
- uint32_t x128 = ((uint32_t)x126 & 0x3fffff);
- uint64_t x129 = (x127 + x69);
- uint64_t x130 = (x129 >> 0x17);
- uint32_t x131 = ((uint32_t)x129 & 0x7fffff);
- uint64_t x132 = (x130 + x68);
- uint32_t x133 = (uint32_t) (x132 >> 0x16);
- uint32_t x134 = ((uint32_t)x132 & 0x3fffff);
- uint64_t x135 = (x86 + ((uint64_t)0x13d * x133));
- uint32_t x136 = (uint32_t) (x135 >> 0x17);
- uint32_t x137 = ((uint32_t)x135 & 0x7fffff);
- uint32_t x138 = (x136 + x89);
- uint32_t x139 = (x138 >> 0x17);
- uint32_t x140 = (x138 & 0x7fffff);
- return (Return x134, Return x131, Return x128, Return x125, Return x122, Return x119, Return x116, Return x113, Return x110, Return x107, Return x104, Return x101, Return x98, Return x95, (x139 + x92), Return x140, Return x137))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e384m317_17limbs/femulDisplay.v b/src/Specific/solinas32_2e384m317_17limbs/femulDisplay.v
deleted file mode 100644
index 4368cf1b0..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e384m317_17limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e384m317_17limbs/fesquare.c b/src/Specific/solinas32_2e384m317_17limbs/fesquare.c
deleted file mode 100644
index 0bf42c666..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/fesquare.c
+++ /dev/null
@@ -1,110 +0,0 @@
-static void fesquare(uint32_t out[17], const uint32_t in1[17]) {
- { const uint32_t x31 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x33 = (((uint64_t)x2 * x31) + (((uint64_t)x4 * x32) + ((0x2 * ((uint64_t)x6 * x30)) + (((uint64_t)x8 * x28) + ((0x2 * ((uint64_t)x10 * x26)) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + ((0x2 * ((uint64_t)x26 * x10)) + (((uint64_t)x28 * x8) + ((0x2 * ((uint64_t)x30 * x6)) + (((uint64_t)x32 * x4) + ((uint64_t)x31 * x2)))))))))))))))));
- { uint64_t x34 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + (((uint64_t)x12 * x22) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + (((uint64_t)x22 * x12) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x13d * (0x2 * ((uint64_t)x31 * x31))));
- { uint64_t x35 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + ((0x2 * ((uint64_t)x6 * x26)) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + ((0x2 * ((uint64_t)x26 * x6)) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x13d * (((uint64_t)x32 * x31) + ((uint64_t)x31 * x32))));
- { uint64_t x36 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + (((uint64_t)x8 * x22) + ((0x2 * ((uint64_t)x10 * x20)) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + ((0x2 * ((uint64_t)x20 * x10)) + (((uint64_t)x22 * x8) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x13d * ((0x2 * ((uint64_t)x30 * x31)) + (((uint64_t)x32 * x32) + (0x2 * ((uint64_t)x31 * x30))))));
- { uint64_t x37 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x13d * (((uint64_t)x28 * x31) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + ((uint64_t)x31 * x28))))));
- { uint64_t x38 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + ((0x2 * ((uint64_t)x6 * x20)) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + ((0x2 * ((uint64_t)x20 * x6)) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x13d * ((0x2 * ((uint64_t)x26 * x31)) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + (0x2 * ((uint64_t)x31 * x26))))))));
- { uint64_t x39 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x13d * ((0x2 * ((uint64_t)x24 * x31)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + (0x2 * ((uint64_t)x31 * x24)))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x13d * (((uint64_t)x22 * x31) + (((uint64_t)x24 * x32) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + (((uint64_t)x32 * x24) + ((uint64_t)x31 * x22)))))))));
- { uint64_t x41 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x13d * ((0x2 * ((uint64_t)x20 * x31)) + (((uint64_t)x22 * x32) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + (((uint64_t)x32 * x22) + (0x2 * ((uint64_t)x31 * x20)))))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x13d * (((uint64_t)x18 * x31) + (((uint64_t)x20 * x32) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + (((uint64_t)x32 * x20) + ((uint64_t)x31 * x18)))))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x13d * ((0x2 * ((uint64_t)x16 * x31)) + (((uint64_t)x18 * x32) + ((0x2 * ((uint64_t)x20 * x30)) + (((uint64_t)x22 * x28) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + (((uint64_t)x28 * x22) + ((0x2 * ((uint64_t)x30 * x20)) + (((uint64_t)x32 * x18) + (0x2 * ((uint64_t)x31 * x16)))))))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x13d * ((0x2 * ((uint64_t)x14 * x31)) + ((0x2 * ((uint64_t)x16 * x32)) + ((0x2 * ((uint64_t)x18 * x30)) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + ((0x2 * ((uint64_t)x30 * x18)) + ((0x2 * ((uint64_t)x32 * x16)) + (0x2 * ((uint64_t)x31 * x14))))))))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x13d * (((uint64_t)x12 * x31) + (((uint64_t)x14 * x32) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + ((0x2 * ((uint64_t)x20 * x26)) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + ((0x2 * ((uint64_t)x26 * x20)) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + (((uint64_t)x32 * x14) + ((uint64_t)x31 * x12))))))))))))));
- { uint64_t x46 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x13d * ((0x2 * ((uint64_t)x10 * x31)) + (((uint64_t)x12 * x32) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + (((uint64_t)x32 * x12) + (0x2 * ((uint64_t)x31 * x10))))))))))))))));
- { uint64_t x47 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x13d * (((uint64_t)x8 * x31) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + ((0x2 * ((uint64_t)x16 * x26)) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((0x2 * ((uint64_t)x26 * x16)) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + ((uint64_t)x31 * x8))))))))))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x13d * ((0x2 * ((uint64_t)x6 * x31)) + (((uint64_t)x8 * x32) + ((0x2 * ((uint64_t)x10 * x30)) + (((uint64_t)x12 * x28) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + (((uint64_t)x28 * x12) + ((0x2 * ((uint64_t)x30 * x10)) + (((uint64_t)x32 * x8) + (0x2 * ((uint64_t)x31 * x6))))))))))))))))));
- { uint64_t x49 = (((uint64_t)x2 * x2) + (0x13d * ((0x2 * ((uint64_t)x4 * x31)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + (0x2 * ((uint64_t)x31 * x4)))))))))))))))))));
- { uint64_t x50 = (x49 >> 0x17);
- { uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- { uint64_t x52 = (x50 + x48);
- { uint64_t x53 = (x52 >> 0x17);
- { uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- { uint64_t x55 = (x53 + x47);
- { uint64_t x56 = (x55 >> 0x16);
- { uint32_t x57 = ((uint32_t)x55 & 0x3fffff);
- { uint64_t x58 = (x56 + x46);
- { uint64_t x59 = (x58 >> 0x17);
- { uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- { uint64_t x61 = (x59 + x45);
- { uint64_t x62 = (x61 >> 0x16);
- { uint32_t x63 = ((uint32_t)x61 & 0x3fffff);
- { uint64_t x64 = (x62 + x44);
- { uint64_t x65 = (x64 >> 0x17);
- { uint32_t x66 = ((uint32_t)x64 & 0x7fffff);
- { uint64_t x67 = (x65 + x43);
- { uint64_t x68 = (x67 >> 0x17);
- { uint32_t x69 = ((uint32_t)x67 & 0x7fffff);
- { uint64_t x70 = (x68 + x42);
- { uint64_t x71 = (x70 >> 0x16);
- { uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- { uint64_t x73 = (x71 + x41);
- { uint64_t x74 = (x73 >> 0x17);
- { uint32_t x75 = ((uint32_t)x73 & 0x7fffff);
- { uint64_t x76 = (x74 + x40);
- { uint64_t x77 = (x76 >> 0x16);
- { uint32_t x78 = ((uint32_t)x76 & 0x3fffff);
- { uint64_t x79 = (x77 + x39);
- { uint64_t x80 = (x79 >> 0x17);
- { uint32_t x81 = ((uint32_t)x79 & 0x7fffff);
- { uint64_t x82 = (x80 + x38);
- { uint64_t x83 = (x82 >> 0x17);
- { uint32_t x84 = ((uint32_t)x82 & 0x7fffff);
- { uint64_t x85 = (x83 + x37);
- { uint64_t x86 = (x85 >> 0x16);
- { uint32_t x87 = ((uint32_t)x85 & 0x3fffff);
- { uint64_t x88 = (x86 + x36);
- { uint64_t x89 = (x88 >> 0x17);
- { uint32_t x90 = ((uint32_t)x88 & 0x7fffff);
- { uint64_t x91 = (x89 + x35);
- { uint64_t x92 = (x91 >> 0x16);
- { uint32_t x93 = ((uint32_t)x91 & 0x3fffff);
- { uint64_t x94 = (x92 + x34);
- { uint64_t x95 = (x94 >> 0x17);
- { uint32_t x96 = ((uint32_t)x94 & 0x7fffff);
- { uint64_t x97 = (x95 + x33);
- { uint32_t x98 = (uint32_t) (x97 >> 0x16);
- { uint32_t x99 = ((uint32_t)x97 & 0x3fffff);
- { uint64_t x100 = (x51 + ((uint64_t)0x13d * x98));
- { uint32_t x101 = (uint32_t) (x100 >> 0x17);
- { uint32_t x102 = ((uint32_t)x100 & 0x7fffff);
- { uint32_t x103 = (x101 + x54);
- { uint32_t x104 = (x103 >> 0x17);
- { uint32_t x105 = (x103 & 0x7fffff);
- out[0] = x102;
- out[1] = x105;
- out[2] = (x104 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- out[10] = x81;
- out[11] = x84;
- out[12] = x87;
- out[13] = x90;
- out[14] = x93;
- out[15] = x96;
- out[16] = x99;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e384m317_17limbs/fesquare.v b/src/Specific/solinas32_2e384m317_17limbs/fesquare.v
deleted file mode 100644
index a88f26416..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e384m317_17limbs.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_2e384m317_17limbs/fesquareDisplay.log b/src/Specific/solinas32_2e384m317_17limbs/fesquareDisplay.log
deleted file mode 100644
index 79331e699..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,80 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x31, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x33 = (((uint64_t)x2 * x31) + (((uint64_t)x4 * x32) + ((0x2 * ((uint64_t)x6 * x30)) + (((uint64_t)x8 * x28) + ((0x2 * ((uint64_t)x10 * x26)) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + ((0x2 * ((uint64_t)x26 * x10)) + (((uint64_t)x28 * x8) + ((0x2 * ((uint64_t)x30 * x6)) + (((uint64_t)x32 * x4) + ((uint64_t)x31 * x2)))))))))))))))));
- uint64_t x34 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + (((uint64_t)x12 * x22) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + (((uint64_t)x22 * x12) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x13d * (0x2 * ((uint64_t)x31 * x31))));
- uint64_t x35 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + ((0x2 * ((uint64_t)x6 * x26)) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + ((0x2 * ((uint64_t)x26 * x6)) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x13d * (((uint64_t)x32 * x31) + ((uint64_t)x31 * x32))));
- uint64_t x36 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + (((uint64_t)x8 * x22) + ((0x2 * ((uint64_t)x10 * x20)) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + ((0x2 * ((uint64_t)x20 * x10)) + (((uint64_t)x22 * x8) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x13d * ((0x2 * ((uint64_t)x30 * x31)) + (((uint64_t)x32 * x32) + (0x2 * ((uint64_t)x31 * x30))))));
- uint64_t x37 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x13d * (((uint64_t)x28 * x31) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + ((uint64_t)x31 * x28))))));
- uint64_t x38 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + ((0x2 * ((uint64_t)x6 * x20)) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + ((0x2 * ((uint64_t)x20 * x6)) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x13d * ((0x2 * ((uint64_t)x26 * x31)) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + (0x2 * ((uint64_t)x31 * x26))))))));
- uint64_t x39 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x13d * ((0x2 * ((uint64_t)x24 * x31)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + (0x2 * ((uint64_t)x31 * x24)))))))));
- uint64_t x40 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x13d * (((uint64_t)x22 * x31) + (((uint64_t)x24 * x32) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + (((uint64_t)x32 * x24) + ((uint64_t)x31 * x22)))))))));
- uint64_t x41 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x13d * ((0x2 * ((uint64_t)x20 * x31)) + (((uint64_t)x22 * x32) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + (((uint64_t)x32 * x22) + (0x2 * ((uint64_t)x31 * x20)))))))))));
- uint64_t x42 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x13d * (((uint64_t)x18 * x31) + (((uint64_t)x20 * x32) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + (((uint64_t)x32 * x20) + ((uint64_t)x31 * x18)))))))))));
- uint64_t x43 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x13d * ((0x2 * ((uint64_t)x16 * x31)) + (((uint64_t)x18 * x32) + ((0x2 * ((uint64_t)x20 * x30)) + (((uint64_t)x22 * x28) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + (((uint64_t)x28 * x22) + ((0x2 * ((uint64_t)x30 * x20)) + (((uint64_t)x32 * x18) + (0x2 * ((uint64_t)x31 * x16)))))))))))));
- uint64_t x44 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x13d * ((0x2 * ((uint64_t)x14 * x31)) + ((0x2 * ((uint64_t)x16 * x32)) + ((0x2 * ((uint64_t)x18 * x30)) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + ((0x2 * ((uint64_t)x30 * x18)) + ((0x2 * ((uint64_t)x32 * x16)) + (0x2 * ((uint64_t)x31 * x14))))))))))))));
- uint64_t x45 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x13d * (((uint64_t)x12 * x31) + (((uint64_t)x14 * x32) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + ((0x2 * ((uint64_t)x20 * x26)) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + ((0x2 * ((uint64_t)x26 * x20)) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + (((uint64_t)x32 * x14) + ((uint64_t)x31 * x12))))))))))))));
- uint64_t x46 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x13d * ((0x2 * ((uint64_t)x10 * x31)) + (((uint64_t)x12 * x32) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + (((uint64_t)x32 * x12) + (0x2 * ((uint64_t)x31 * x10))))))))))))))));
- uint64_t x47 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x13d * (((uint64_t)x8 * x31) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + ((0x2 * ((uint64_t)x16 * x26)) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((0x2 * ((uint64_t)x26 * x16)) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + ((uint64_t)x31 * x8))))))))))))))));
- uint64_t x48 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x13d * ((0x2 * ((uint64_t)x6 * x31)) + (((uint64_t)x8 * x32) + ((0x2 * ((uint64_t)x10 * x30)) + (((uint64_t)x12 * x28) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + (((uint64_t)x28 * x12) + ((0x2 * ((uint64_t)x30 * x10)) + (((uint64_t)x32 * x8) + (0x2 * ((uint64_t)x31 * x6))))))))))))))))));
- uint64_t x49 = (((uint64_t)x2 * x2) + (0x13d * ((0x2 * ((uint64_t)x4 * x31)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + (0x2 * ((uint64_t)x31 * x4)))))))))))))))))));
- uint64_t x50 = (x49 >> 0x17);
- uint32_t x51 = ((uint32_t)x49 & 0x7fffff);
- uint64_t x52 = (x50 + x48);
- uint64_t x53 = (x52 >> 0x17);
- uint32_t x54 = ((uint32_t)x52 & 0x7fffff);
- uint64_t x55 = (x53 + x47);
- uint64_t x56 = (x55 >> 0x16);
- uint32_t x57 = ((uint32_t)x55 & 0x3fffff);
- uint64_t x58 = (x56 + x46);
- uint64_t x59 = (x58 >> 0x17);
- uint32_t x60 = ((uint32_t)x58 & 0x7fffff);
- uint64_t x61 = (x59 + x45);
- uint64_t x62 = (x61 >> 0x16);
- uint32_t x63 = ((uint32_t)x61 & 0x3fffff);
- uint64_t x64 = (x62 + x44);
- uint64_t x65 = (x64 >> 0x17);
- uint32_t x66 = ((uint32_t)x64 & 0x7fffff);
- uint64_t x67 = (x65 + x43);
- uint64_t x68 = (x67 >> 0x17);
- uint32_t x69 = ((uint32_t)x67 & 0x7fffff);
- uint64_t x70 = (x68 + x42);
- uint64_t x71 = (x70 >> 0x16);
- uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- uint64_t x73 = (x71 + x41);
- uint64_t x74 = (x73 >> 0x17);
- uint32_t x75 = ((uint32_t)x73 & 0x7fffff);
- uint64_t x76 = (x74 + x40);
- uint64_t x77 = (x76 >> 0x16);
- uint32_t x78 = ((uint32_t)x76 & 0x3fffff);
- uint64_t x79 = (x77 + x39);
- uint64_t x80 = (x79 >> 0x17);
- uint32_t x81 = ((uint32_t)x79 & 0x7fffff);
- uint64_t x82 = (x80 + x38);
- uint64_t x83 = (x82 >> 0x17);
- uint32_t x84 = ((uint32_t)x82 & 0x7fffff);
- uint64_t x85 = (x83 + x37);
- uint64_t x86 = (x85 >> 0x16);
- uint32_t x87 = ((uint32_t)x85 & 0x3fffff);
- uint64_t x88 = (x86 + x36);
- uint64_t x89 = (x88 >> 0x17);
- uint32_t x90 = ((uint32_t)x88 & 0x7fffff);
- uint64_t x91 = (x89 + x35);
- uint64_t x92 = (x91 >> 0x16);
- uint32_t x93 = ((uint32_t)x91 & 0x3fffff);
- uint64_t x94 = (x92 + x34);
- uint64_t x95 = (x94 >> 0x17);
- uint32_t x96 = ((uint32_t)x94 & 0x7fffff);
- uint64_t x97 = (x95 + x33);
- uint32_t x98 = (uint32_t) (x97 >> 0x16);
- uint32_t x99 = ((uint32_t)x97 & 0x3fffff);
- uint64_t x100 = (x51 + ((uint64_t)0x13d * x98));
- uint32_t x101 = (uint32_t) (x100 >> 0x17);
- uint32_t x102 = ((uint32_t)x100 & 0x7fffff);
- uint32_t x103 = (x101 + x54);
- uint32_t x104 = (x103 >> 0x17);
- uint32_t x105 = (x103 & 0x7fffff);
- return (Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x104 + x57), Return x105, Return x102))
-x
- : word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e384m317_17limbs/fesquareDisplay.v b/src/Specific/solinas32_2e384m317_17limbs/fesquareDisplay.v
deleted file mode 100644
index 476a93edd..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e384m317_17limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e384m317_17limbs/fesub.c b/src/Specific/solinas32_2e384m317_17limbs/fesub.c
deleted file mode 100644
index 4c4390597..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/fesub.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void fesub(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- out[0] = ((0xfffd86 + x5) - x37);
- out[1] = ((0xfffffe + x7) - x39);
- out[2] = ((0x7ffffe + x9) - x41);
- out[3] = ((0xfffffe + x11) - x43);
- out[4] = ((0x7ffffe + x13) - x45);
- out[5] = ((0xfffffe + x15) - x47);
- out[6] = ((0xfffffe + x17) - x49);
- out[7] = ((0x7ffffe + x19) - x51);
- out[8] = ((0xfffffe + x21) - x53);
- out[9] = ((0x7ffffe + x23) - x55);
- out[10] = ((0xfffffe + x25) - x57);
- out[11] = ((0xfffffe + x27) - x59);
- out[12] = ((0x7ffffe + x29) - x61);
- out[13] = ((0xfffffe + x31) - x63);
- out[14] = ((0x7ffffe + x33) - x65);
- out[15] = ((0xfffffe + x35) - x67);
- out[16] = ((0x7ffffe + x34) - x66);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e384m317_17limbs/fesub.v b/src/Specific/solinas32_2e384m317_17limbs/fesub.v
deleted file mode 100644
index 6edb5ebcb..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e384m317_17limbs.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_2e384m317_17limbs/fesubDisplay.log b/src/Specific/solinas32_2e384m317_17limbs/fesubDisplay.log
deleted file mode 100644
index 978eda426..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- (((0x7ffffe + x34) - x66), ((0xfffffe + x35) - x67), ((0x7ffffe + x33) - x65), ((0xfffffe + x31) - x63), ((0x7ffffe + x29) - x61), ((0xfffffe + x27) - x59), ((0xfffffe + x25) - x57), ((0x7ffffe + x23) - x55), ((0xfffffe + x21) - x53), ((0x7ffffe + x19) - x51), ((0xfffffe + x17) - x49), ((0xfffffe + x15) - x47), ((0x7ffffe + x13) - x45), ((0xfffffe + x11) - x43), ((0x7ffffe + x9) - x41), ((0xfffffe + x7) - x39), ((0xfffd86 + x5) - x37)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e384m317_17limbs/fesubDisplay.v b/src/Specific/solinas32_2e384m317_17limbs/fesubDisplay.v
deleted file mode 100644
index 0f0276213..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e384m317_17limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e384m317_17limbs/freeze.c b/src/Specific/solinas32_2e384m317_17limbs/freeze.c
deleted file mode 100644
index 5474ab624..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/freeze.c
+++ /dev/null
@@ -1,89 +0,0 @@
-static void freeze(uint32_t out[17], const uint32_t in1[17]) {
- { const uint32_t x31 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffec3);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x4, 0x7fffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x6, 0x3fffff);
- { uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x8, 0x7fffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x10, 0x3fffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x12, 0x7fffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x14, 0x7fffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x16, 0x3fffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x18, 0x7fffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x20, 0x3fffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x22, 0x7fffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x24, 0x7fffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x26, 0x3fffff);
- { uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x28, 0x7fffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x30, 0x3fffff);
- { uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x32, 0x7fffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x31, 0x3fffff);
- { uint32_t x84 = cmovznz32(x83, 0x0, 0xffffffff);
- { uint32_t x85 = (x84 & 0x7ffec3);
- { uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x34, Return x85);
- { uint32_t x89 = (x84 & 0x7fffff);
- { uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x37, Return x89);
- { uint32_t x93 = (x84 & 0x3fffff);
- { uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x40, Return x93);
- { uint32_t x97 = (x84 & 0x7fffff);
- { uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x43, Return x97);
- { uint32_t x101 = (x84 & 0x3fffff);
- { uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x46, Return x101);
- { uint32_t x105 = (x84 & 0x7fffff);
- { uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x49, Return x105);
- { uint32_t x109 = (x84 & 0x7fffff);
- { uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x52, Return x109);
- { uint32_t x113 = (x84 & 0x3fffff);
- { uint32_t x115, uint8_t x116 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x55, Return x113);
- { uint32_t x117 = (x84 & 0x7fffff);
- { uint32_t x119, uint8_t x120 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x116, Return x58, Return x117);
- { uint32_t x121 = (x84 & 0x3fffff);
- { uint32_t x123, uint8_t x124 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x120, Return x61, Return x121);
- { uint32_t x125 = (x84 & 0x7fffff);
- { uint32_t x127, uint8_t x128 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x124, Return x64, Return x125);
- { uint32_t x129 = (x84 & 0x7fffff);
- { uint32_t x131, uint8_t x132 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x128, Return x67, Return x129);
- { uint32_t x133 = (x84 & 0x3fffff);
- { uint32_t x135, uint8_t x136 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x132, Return x70, Return x133);
- { uint32_t x137 = (x84 & 0x7fffff);
- { uint32_t x139, uint8_t x140 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x136, Return x73, Return x137);
- { uint32_t x141 = (x84 & 0x3fffff);
- { uint32_t x143, uint8_t x144 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x140, Return x76, Return x141);
- { uint32_t x145 = (x84 & 0x7fffff);
- { uint32_t x147, uint8_t x148 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x144, Return x79, Return x145);
- { uint32_t x149 = (x84 & 0x3fffff);
- { uint32_t x151, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x148, Return x82, Return x149);
- out[0] = x87;
- out[1] = x91;
- out[2] = x95;
- out[3] = x99;
- out[4] = x103;
- out[5] = x107;
- out[6] = x111;
- out[7] = x115;
- out[8] = x119;
- out[9] = x123;
- out[10] = x127;
- out[11] = x131;
- out[12] = x135;
- out[13] = x139;
- out[14] = x143;
- out[15] = x147;
- out[16] = x151;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e384m317_17limbs/freeze.v b/src/Specific/solinas32_2e384m317_17limbs/freeze.v
deleted file mode 100644
index 787850fed..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e384m317_17limbs.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_2e384m317_17limbs/freezeDisplay.log b/src/Specific/solinas32_2e384m317_17limbs/freezeDisplay.log
deleted file mode 100644
index acae41bef..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/freezeDisplay.log
+++ /dev/null
@@ -1,59 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x31, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffec3);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x4, 0x7fffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x6, 0x3fffff);
- uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x8, 0x7fffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x10, 0x3fffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x12, 0x7fffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x14, 0x7fffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x16, 0x3fffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x18, 0x7fffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x20, 0x3fffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x22, 0x7fffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x24, 0x7fffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x26, 0x3fffff);
- uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x28, 0x7fffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x30, 0x3fffff);
- uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x32, 0x7fffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x31, 0x3fffff);
- uint32_t x84 = cmovznz32(x83, 0x0, 0xffffffff);
- uint32_t x85 = (x84 & 0x7ffec3);
- uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x34, Return x85);
- uint32_t x89 = (x84 & 0x7fffff);
- uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x37, Return x89);
- uint32_t x93 = (x84 & 0x3fffff);
- uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x40, Return x93);
- uint32_t x97 = (x84 & 0x7fffff);
- uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x43, Return x97);
- uint32_t x101 = (x84 & 0x3fffff);
- uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x46, Return x101);
- uint32_t x105 = (x84 & 0x7fffff);
- uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x49, Return x105);
- uint32_t x109 = (x84 & 0x7fffff);
- uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x52, Return x109);
- uint32_t x113 = (x84 & 0x3fffff);
- uint32_t x115, uint8_t x116 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x55, Return x113);
- uint32_t x117 = (x84 & 0x7fffff);
- uint32_t x119, uint8_t x120 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x116, Return x58, Return x117);
- uint32_t x121 = (x84 & 0x3fffff);
- uint32_t x123, uint8_t x124 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x120, Return x61, Return x121);
- uint32_t x125 = (x84 & 0x7fffff);
- uint32_t x127, uint8_t x128 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x124, Return x64, Return x125);
- uint32_t x129 = (x84 & 0x7fffff);
- uint32_t x131, uint8_t x132 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x128, Return x67, Return x129);
- uint32_t x133 = (x84 & 0x3fffff);
- uint32_t x135, uint8_t x136 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x132, Return x70, Return x133);
- uint32_t x137 = (x84 & 0x7fffff);
- uint32_t x139, uint8_t x140 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x136, Return x73, Return x137);
- uint32_t x141 = (x84 & 0x3fffff);
- uint32_t x143, uint8_t x144 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x140, Return x76, Return x141);
- uint32_t x145 = (x84 & 0x7fffff);
- uint32_t x147, uint8_t x148 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x144, Return x79, Return x145);
- uint32_t x149 = (x84 & 0x3fffff);
- uint32_t x151, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x148, Return x82, Return x149);
- (Return x151, Return x147, Return x143, Return x139, Return x135, Return x131, Return x127, Return x123, Return x119, Return x115, Return x111, Return x107, Return x103, Return x99, Return x95, Return x91, Return x87))
-x
- : word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e384m317_17limbs/freezeDisplay.v b/src/Specific/solinas32_2e384m317_17limbs/freezeDisplay.v
deleted file mode 100644
index 051558a8a..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e384m317_17limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e384m317_17limbs/py_interpreter.sh b/src/Specific/solinas32_2e384m317_17limbs/py_interpreter.sh
deleted file mode 100755
index 0a1cdc9b6..000000000
--- a/src/Specific/solinas32_2e384m317_17limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**384 - 317' -Dmodulus_bytes='22 + 10/17' -Da24='121665'
diff --git a/src/Specific/solinas32_2e384m317_18limbs/CurveParameters.v b/src/Specific/solinas32_2e384m317_18limbs/CurveParameters.v
deleted file mode 100644
index 303f38aa6..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^384 - 317
-Base: 21 + 1/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 18%nat;
- base := 21 + 1/3;
- bitwidth := 32;
- s := 2^384;
- c := [(1, 317)];
- carry_chains := Some [seq 0 (pred 18); [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_2e384m317_18limbs/Synthesis.v b/src/Specific/solinas32_2e384m317_18limbs/Synthesis.v
deleted file mode 100644
index 461597e9e..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e384m317_18limbs.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_2e384m317_18limbs/compiler.sh b/src/Specific/solinas32_2e384m317_18limbs/compiler.sh
deleted file mode 100755
index 432c5ab1a..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<384) - 317' "$@"
diff --git a/src/Specific/solinas32_2e384m317_18limbs/compilerxx.sh b/src/Specific/solinas32_2e384m317_18limbs/compilerxx.sh
deleted file mode 100755
index 99f30ba7b..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<384) - 317' "$@"
diff --git a/src/Specific/solinas32_2e384m317_18limbs/feadd.c b/src/Specific/solinas32_2e384m317_18limbs/feadd.c
deleted file mode 100644
index 7b8380410..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/feadd.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void feadd(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- out[0] = (x5 + x39);
- out[1] = (x7 + x41);
- out[2] = (x9 + x43);
- out[3] = (x11 + x45);
- out[4] = (x13 + x47);
- out[5] = (x15 + x49);
- out[6] = (x17 + x51);
- out[7] = (x19 + x53);
- out[8] = (x21 + x55);
- out[9] = (x23 + x57);
- out[10] = (x25 + x59);
- out[11] = (x27 + x61);
- out[12] = (x29 + x63);
- out[13] = (x31 + x65);
- out[14] = (x33 + x67);
- out[15] = (x35 + x69);
- out[16] = (x37 + x71);
- out[17] = (x36 + x70);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e384m317_18limbs/feadd.v b/src/Specific/solinas32_2e384m317_18limbs/feadd.v
deleted file mode 100644
index 8fff05f5d..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e384m317_18limbs.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_2e384m317_18limbs/feaddDisplay.log b/src/Specific/solinas32_2e384m317_18limbs/feaddDisplay.log
deleted file mode 100644
index 5e9c243f4..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- ((x36 + x70), (x37 + x71), (x35 + x69), (x33 + x67), (x31 + x65), (x29 + x63), (x27 + x61), (x25 + x59), (x23 + x57), (x21 + x55), (x19 + x53), (x17 + x51), (x15 + x49), (x13 + x47), (x11 + x45), (x9 + x43), (x7 + x41), (x5 + x39)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e384m317_18limbs/feaddDisplay.v b/src/Specific/solinas32_2e384m317_18limbs/feaddDisplay.v
deleted file mode 100644
index 6131661cf..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e384m317_18limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e384m317_18limbs/fecarry.v b/src/Specific/solinas32_2e384m317_18limbs/fecarry.v
deleted file mode 100644
index a8f532342..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e384m317_18limbs.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_2e384m317_18limbs/fecarryDisplay.v b/src/Specific/solinas32_2e384m317_18limbs/fecarryDisplay.v
deleted file mode 100644
index b9b75f953..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e384m317_18limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e384m317_18limbs/femul.c b/src/Specific/solinas32_2e384m317_18limbs/femul.c
deleted file mode 100644
index 29a29e7f6..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/femul.c
+++ /dev/null
@@ -1,134 +0,0 @@
-static void femul(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- { uint64_t x72 = (((uint64_t)x5 * x70) + ((0x2 * ((uint64_t)x7 * x71)) + (((uint64_t)x9 * x69) + (((uint64_t)x11 * x67) + ((0x2 * ((uint64_t)x13 * x65)) + (((uint64_t)x15 * x63) + (((uint64_t)x17 * x61) + ((0x2 * ((uint64_t)x19 * x59)) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + ((0x2 * ((uint64_t)x25 * x53)) + (((uint64_t)x27 * x51) + (((uint64_t)x29 * x49) + ((0x2 * ((uint64_t)x31 * x47)) + (((uint64_t)x33 * x45) + (((uint64_t)x35 * x43) + ((0x2 * ((uint64_t)x37 * x41)) + ((uint64_t)x36 * x39))))))))))))))))));
- { uint64_t x73 = ((((uint64_t)x5 * x71) + (((uint64_t)x7 * x69) + (((uint64_t)x9 * x67) + (((uint64_t)x11 * x65) + (((uint64_t)x13 * x63) + (((uint64_t)x15 * x61) + (((uint64_t)x17 * x59) + (((uint64_t)x19 * x57) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (((uint64_t)x29 * x47) + (((uint64_t)x31 * x45) + (((uint64_t)x33 * x43) + (((uint64_t)x35 * x41) + ((uint64_t)x37 * x39))))))))))))))))) + (0x13d * ((uint64_t)x36 * x70)));
- { uint64_t x74 = ((((uint64_t)x5 * x69) + ((0x2 * ((uint64_t)x7 * x67)) + ((0x2 * ((uint64_t)x9 * x65)) + (((uint64_t)x11 * x63) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + (((uint64_t)x17 * x57) + ((0x2 * ((uint64_t)x19 * x55)) + ((0x2 * ((uint64_t)x21 * x53)) + (((uint64_t)x23 * x51) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + (((uint64_t)x29 * x45) + ((0x2 * ((uint64_t)x31 * x43)) + ((0x2 * ((uint64_t)x33 * x41)) + ((uint64_t)x35 * x39)))))))))))))))) + (0x13d * ((0x2 * ((uint64_t)x37 * x70)) + (0x2 * ((uint64_t)x36 * x71)))));
- { uint64_t x75 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + (((uint64_t)x9 * x63) + (((uint64_t)x11 * x61) + ((0x2 * ((uint64_t)x13 * x59)) + (((uint64_t)x15 * x57) + (((uint64_t)x17 * x55) + ((0x2 * ((uint64_t)x19 * x53)) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + ((0x2 * ((uint64_t)x25 * x47)) + (((uint64_t)x27 * x45) + (((uint64_t)x29 * x43) + ((0x2 * ((uint64_t)x31 * x41)) + ((uint64_t)x33 * x39))))))))))))))) + (0x13d * (((uint64_t)x35 * x70) + ((0x2 * ((uint64_t)x37 * x71)) + ((uint64_t)x36 * x69)))));
- { uint64_t x76 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (((uint64_t)x29 * x41) + ((uint64_t)x31 * x39)))))))))))))) + (0x13d * (((uint64_t)x33 * x70) + (((uint64_t)x35 * x71) + (((uint64_t)x37 * x69) + ((uint64_t)x36 * x67))))));
- { uint64_t x77 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + (((uint64_t)x11 * x57) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + (((uint64_t)x17 * x51) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + (((uint64_t)x23 * x45) + ((0x2 * ((uint64_t)x25 * x43)) + ((0x2 * ((uint64_t)x27 * x41)) + ((uint64_t)x29 * x39))))))))))))) + (0x13d * ((0x2 * ((uint64_t)x31 * x70)) + ((0x2 * ((uint64_t)x33 * x71)) + (((uint64_t)x35 * x69) + ((0x2 * ((uint64_t)x37 * x67)) + (0x2 * ((uint64_t)x36 * x65))))))));
- { uint64_t x78 = ((((uint64_t)x5 * x61) + ((0x2 * ((uint64_t)x7 * x59)) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + ((0x2 * ((uint64_t)x13 * x53)) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + ((0x2 * ((uint64_t)x25 * x41)) + ((uint64_t)x27 * x39)))))))))))) + (0x13d * (((uint64_t)x29 * x70) + ((0x2 * ((uint64_t)x31 * x71)) + (((uint64_t)x33 * x69) + (((uint64_t)x35 * x67) + ((0x2 * ((uint64_t)x37 * x65)) + ((uint64_t)x36 * x63))))))));
- { uint64_t x79 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + ((uint64_t)x25 * x39))))))))))) + (0x13d * (((uint64_t)x27 * x70) + (((uint64_t)x29 * x71) + (((uint64_t)x31 * x69) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + (((uint64_t)x37 * x63) + ((uint64_t)x36 * x61)))))))));
- { uint64_t x80 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + (((uint64_t)x17 * x45) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((uint64_t)x23 * x39)))))))))) + (0x13d * ((0x2 * ((uint64_t)x25 * x70)) + ((0x2 * ((uint64_t)x27 * x71)) + (((uint64_t)x29 * x69) + ((0x2 * ((uint64_t)x31 * x67)) + ((0x2 * ((uint64_t)x33 * x65)) + (((uint64_t)x35 * x63) + ((0x2 * ((uint64_t)x37 * x61)) + (0x2 * ((uint64_t)x36 * x59)))))))))));
- { uint64_t x81 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + ((0x2 * ((uint64_t)x13 * x47)) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((0x2 * ((uint64_t)x19 * x41)) + ((uint64_t)x21 * x39))))))))) + (0x13d * (((uint64_t)x23 * x70) + ((0x2 * ((uint64_t)x25 * x71)) + (((uint64_t)x27 * x69) + (((uint64_t)x29 * x67) + ((0x2 * ((uint64_t)x31 * x65)) + (((uint64_t)x33 * x63) + (((uint64_t)x35 * x61) + ((0x2 * ((uint64_t)x37 * x59)) + ((uint64_t)x36 * x57)))))))))));
- { uint64_t x82 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + ((uint64_t)x19 * x39)))))))) + (0x13d * (((uint64_t)x21 * x70) + (((uint64_t)x23 * x71) + (((uint64_t)x25 * x69) + (((uint64_t)x27 * x67) + (((uint64_t)x29 * x65) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + (((uint64_t)x35 * x59) + (((uint64_t)x37 * x57) + ((uint64_t)x36 * x55))))))))))));
- { uint64_t x83 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + (((uint64_t)x11 * x45) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((uint64_t)x17 * x39))))))) + (0x13d * ((0x2 * ((uint64_t)x19 * x70)) + ((0x2 * ((uint64_t)x21 * x71)) + (((uint64_t)x23 * x69) + ((0x2 * ((uint64_t)x25 * x67)) + ((0x2 * ((uint64_t)x27 * x65)) + (((uint64_t)x29 * x63) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + (((uint64_t)x35 * x57) + ((0x2 * ((uint64_t)x37 * x55)) + (0x2 * ((uint64_t)x36 * x53))))))))))))));
- { uint64_t x84 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + ((uint64_t)x15 * x39)))))) + (0x13d * (((uint64_t)x17 * x70) + ((0x2 * ((uint64_t)x19 * x71)) + (((uint64_t)x21 * x69) + (((uint64_t)x23 * x67) + ((0x2 * ((uint64_t)x25 * x65)) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + ((0x2 * ((uint64_t)x31 * x59)) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + ((0x2 * ((uint64_t)x37 * x53)) + ((uint64_t)x36 * x51))))))))))))));
- { uint64_t x85 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + ((uint64_t)x13 * x39))))) + (0x13d * (((uint64_t)x15 * x70) + (((uint64_t)x17 * x71) + (((uint64_t)x19 * x69) + (((uint64_t)x21 * x67) + (((uint64_t)x23 * x65) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + (((uint64_t)x35 * x53) + (((uint64_t)x37 * x51) + ((uint64_t)x36 * x49)))))))))))))));
- { uint64_t x86 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((uint64_t)x11 * x39)))) + (0x13d * ((0x2 * ((uint64_t)x13 * x70)) + ((0x2 * ((uint64_t)x15 * x71)) + (((uint64_t)x17 * x69) + ((0x2 * ((uint64_t)x19 * x67)) + ((0x2 * ((uint64_t)x21 * x65)) + (((uint64_t)x23 * x63) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + (((uint64_t)x29 * x57) + ((0x2 * ((uint64_t)x31 * x55)) + ((0x2 * ((uint64_t)x33 * x53)) + (((uint64_t)x35 * x51) + ((0x2 * ((uint64_t)x37 * x49)) + (0x2 * ((uint64_t)x36 * x47)))))))))))))))));
- { uint64_t x87 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((uint64_t)x9 * x39))) + (0x13d * (((uint64_t)x11 * x70) + ((0x2 * ((uint64_t)x13 * x71)) + (((uint64_t)x15 * x69) + (((uint64_t)x17 * x67) + ((0x2 * ((uint64_t)x19 * x65)) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + ((0x2 * ((uint64_t)x25 * x59)) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + ((0x2 * ((uint64_t)x31 * x53)) + (((uint64_t)x33 * x51) + (((uint64_t)x35 * x49) + ((0x2 * ((uint64_t)x37 * x47)) + ((uint64_t)x36 * x45)))))))))))))))));
- { uint64_t x88 = ((((uint64_t)x5 * x41) + ((uint64_t)x7 * x39)) + (0x13d * (((uint64_t)x9 * x70) + (((uint64_t)x11 * x71) + (((uint64_t)x13 * x69) + (((uint64_t)x15 * x67) + (((uint64_t)x17 * x65) + (((uint64_t)x19 * x63) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + (((uint64_t)x35 * x47) + (((uint64_t)x37 * x45) + ((uint64_t)x36 * x43))))))))))))))))));
- { uint64_t x89 = (((uint64_t)x5 * x39) + (0x13d * ((0x2 * ((uint64_t)x7 * x70)) + ((0x2 * ((uint64_t)x9 * x71)) + (((uint64_t)x11 * x69) + ((0x2 * ((uint64_t)x13 * x67)) + ((0x2 * ((uint64_t)x15 * x65)) + (((uint64_t)x17 * x63) + ((0x2 * ((uint64_t)x19 * x61)) + ((0x2 * ((uint64_t)x21 * x59)) + (((uint64_t)x23 * x57) + ((0x2 * ((uint64_t)x25 * x55)) + ((0x2 * ((uint64_t)x27 * x53)) + (((uint64_t)x29 * x51) + ((0x2 * ((uint64_t)x31 * x49)) + ((0x2 * ((uint64_t)x33 * x47)) + (((uint64_t)x35 * x45) + ((0x2 * ((uint64_t)x37 * x43)) + (0x2 * ((uint64_t)x36 * x41))))))))))))))))))));
- { uint64_t x90 = (x89 >> 0x16);
- { uint32_t x91 = ((uint32_t)x89 & 0x3fffff);
- { uint64_t x92 = (x90 + x88);
- { uint64_t x93 = (x92 >> 0x15);
- { uint32_t x94 = ((uint32_t)x92 & 0x1fffff);
- { uint64_t x95 = (x93 + x87);
- { uint64_t x96 = (x95 >> 0x15);
- { uint32_t x97 = ((uint32_t)x95 & 0x1fffff);
- { uint64_t x98 = (x96 + x86);
- { uint64_t x99 = (x98 >> 0x16);
- { uint32_t x100 = ((uint32_t)x98 & 0x3fffff);
- { uint64_t x101 = (x99 + x85);
- { uint64_t x102 = (x101 >> 0x15);
- { uint32_t x103 = ((uint32_t)x101 & 0x1fffff);
- { uint64_t x104 = (x102 + x84);
- { uint64_t x105 = (x104 >> 0x15);
- { uint32_t x106 = ((uint32_t)x104 & 0x1fffff);
- { uint64_t x107 = (x105 + x83);
- { uint64_t x108 = (x107 >> 0x16);
- { uint32_t x109 = ((uint32_t)x107 & 0x3fffff);
- { uint64_t x110 = (x108 + x82);
- { uint64_t x111 = (x110 >> 0x15);
- { uint32_t x112 = ((uint32_t)x110 & 0x1fffff);
- { uint64_t x113 = (x111 + x81);
- { uint64_t x114 = (x113 >> 0x15);
- { uint32_t x115 = ((uint32_t)x113 & 0x1fffff);
- { uint64_t x116 = (x114 + x80);
- { uint64_t x117 = (x116 >> 0x16);
- { uint32_t x118 = ((uint32_t)x116 & 0x3fffff);
- { uint64_t x119 = (x117 + x79);
- { uint64_t x120 = (x119 >> 0x15);
- { uint32_t x121 = ((uint32_t)x119 & 0x1fffff);
- { uint64_t x122 = (x120 + x78);
- { uint64_t x123 = (x122 >> 0x15);
- { uint32_t x124 = ((uint32_t)x122 & 0x1fffff);
- { uint64_t x125 = (x123 + x77);
- { uint64_t x126 = (x125 >> 0x16);
- { uint32_t x127 = ((uint32_t)x125 & 0x3fffff);
- { uint64_t x128 = (x126 + x76);
- { uint64_t x129 = (x128 >> 0x15);
- { uint32_t x130 = ((uint32_t)x128 & 0x1fffff);
- { uint64_t x131 = (x129 + x75);
- { uint64_t x132 = (x131 >> 0x15);
- { uint32_t x133 = ((uint32_t)x131 & 0x1fffff);
- { uint64_t x134 = (x132 + x74);
- { uint64_t x135 = (x134 >> 0x16);
- { uint32_t x136 = ((uint32_t)x134 & 0x3fffff);
- { uint64_t x137 = (x135 + x73);
- { uint64_t x138 = (x137 >> 0x15);
- { uint32_t x139 = ((uint32_t)x137 & 0x1fffff);
- { uint64_t x140 = (x138 + x72);
- { uint32_t x141 = (uint32_t) (x140 >> 0x15);
- { uint32_t x142 = ((uint32_t)x140 & 0x1fffff);
- { uint64_t x143 = (x91 + ((uint64_t)0x13d * x141));
- { uint32_t x144 = (uint32_t) (x143 >> 0x16);
- { uint32_t x145 = ((uint32_t)x143 & 0x3fffff);
- { uint32_t x146 = (x144 + x94);
- { uint32_t x147 = (x146 >> 0x15);
- { uint32_t x148 = (x146 & 0x1fffff);
- out[0] = x145;
- out[1] = x148;
- out[2] = (x147 + x97);
- out[3] = x100;
- out[4] = x103;
- out[5] = x106;
- out[6] = x109;
- out[7] = x112;
- out[8] = x115;
- out[9] = x118;
- out[10] = x121;
- out[11] = x124;
- out[12] = x127;
- out[13] = x130;
- out[14] = x133;
- out[15] = x136;
- out[16] = x139;
- out[17] = x142;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e384m317_18limbs/femul.v b/src/Specific/solinas32_2e384m317_18limbs/femul.v
deleted file mode 100644
index 14ef03e4e..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e384m317_18limbs.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_2e384m317_18limbs/femulDisplay.log b/src/Specific/solinas32_2e384m317_18limbs/femulDisplay.log
deleted file mode 100644
index 9b4cb94ec..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/femulDisplay.log
+++ /dev/null
@@ -1,84 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- uint64_t x72 = (((uint64_t)x5 * x70) + ((0x2 * ((uint64_t)x7 * x71)) + (((uint64_t)x9 * x69) + (((uint64_t)x11 * x67) + ((0x2 * ((uint64_t)x13 * x65)) + (((uint64_t)x15 * x63) + (((uint64_t)x17 * x61) + ((0x2 * ((uint64_t)x19 * x59)) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + ((0x2 * ((uint64_t)x25 * x53)) + (((uint64_t)x27 * x51) + (((uint64_t)x29 * x49) + ((0x2 * ((uint64_t)x31 * x47)) + (((uint64_t)x33 * x45) + (((uint64_t)x35 * x43) + ((0x2 * ((uint64_t)x37 * x41)) + ((uint64_t)x36 * x39))))))))))))))))));
- uint64_t x73 = ((((uint64_t)x5 * x71) + (((uint64_t)x7 * x69) + (((uint64_t)x9 * x67) + (((uint64_t)x11 * x65) + (((uint64_t)x13 * x63) + (((uint64_t)x15 * x61) + (((uint64_t)x17 * x59) + (((uint64_t)x19 * x57) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (((uint64_t)x29 * x47) + (((uint64_t)x31 * x45) + (((uint64_t)x33 * x43) + (((uint64_t)x35 * x41) + ((uint64_t)x37 * x39))))))))))))))))) + (0x13d * ((uint64_t)x36 * x70)));
- uint64_t x74 = ((((uint64_t)x5 * x69) + ((0x2 * ((uint64_t)x7 * x67)) + ((0x2 * ((uint64_t)x9 * x65)) + (((uint64_t)x11 * x63) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + (((uint64_t)x17 * x57) + ((0x2 * ((uint64_t)x19 * x55)) + ((0x2 * ((uint64_t)x21 * x53)) + (((uint64_t)x23 * x51) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + (((uint64_t)x29 * x45) + ((0x2 * ((uint64_t)x31 * x43)) + ((0x2 * ((uint64_t)x33 * x41)) + ((uint64_t)x35 * x39)))))))))))))))) + (0x13d * ((0x2 * ((uint64_t)x37 * x70)) + (0x2 * ((uint64_t)x36 * x71)))));
- uint64_t x75 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + (((uint64_t)x9 * x63) + (((uint64_t)x11 * x61) + ((0x2 * ((uint64_t)x13 * x59)) + (((uint64_t)x15 * x57) + (((uint64_t)x17 * x55) + ((0x2 * ((uint64_t)x19 * x53)) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + ((0x2 * ((uint64_t)x25 * x47)) + (((uint64_t)x27 * x45) + (((uint64_t)x29 * x43) + ((0x2 * ((uint64_t)x31 * x41)) + ((uint64_t)x33 * x39))))))))))))))) + (0x13d * (((uint64_t)x35 * x70) + ((0x2 * ((uint64_t)x37 * x71)) + ((uint64_t)x36 * x69)))));
- uint64_t x76 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (((uint64_t)x29 * x41) + ((uint64_t)x31 * x39)))))))))))))) + (0x13d * (((uint64_t)x33 * x70) + (((uint64_t)x35 * x71) + (((uint64_t)x37 * x69) + ((uint64_t)x36 * x67))))));
- uint64_t x77 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + (((uint64_t)x11 * x57) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + (((uint64_t)x17 * x51) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + (((uint64_t)x23 * x45) + ((0x2 * ((uint64_t)x25 * x43)) + ((0x2 * ((uint64_t)x27 * x41)) + ((uint64_t)x29 * x39))))))))))))) + (0x13d * ((0x2 * ((uint64_t)x31 * x70)) + ((0x2 * ((uint64_t)x33 * x71)) + (((uint64_t)x35 * x69) + ((0x2 * ((uint64_t)x37 * x67)) + (0x2 * ((uint64_t)x36 * x65))))))));
- uint64_t x78 = ((((uint64_t)x5 * x61) + ((0x2 * ((uint64_t)x7 * x59)) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + ((0x2 * ((uint64_t)x13 * x53)) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + ((0x2 * ((uint64_t)x25 * x41)) + ((uint64_t)x27 * x39)))))))))))) + (0x13d * (((uint64_t)x29 * x70) + ((0x2 * ((uint64_t)x31 * x71)) + (((uint64_t)x33 * x69) + (((uint64_t)x35 * x67) + ((0x2 * ((uint64_t)x37 * x65)) + ((uint64_t)x36 * x63))))))));
- uint64_t x79 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + ((uint64_t)x25 * x39))))))))))) + (0x13d * (((uint64_t)x27 * x70) + (((uint64_t)x29 * x71) + (((uint64_t)x31 * x69) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + (((uint64_t)x37 * x63) + ((uint64_t)x36 * x61)))))))));
- uint64_t x80 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + (((uint64_t)x17 * x45) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((uint64_t)x23 * x39)))))))))) + (0x13d * ((0x2 * ((uint64_t)x25 * x70)) + ((0x2 * ((uint64_t)x27 * x71)) + (((uint64_t)x29 * x69) + ((0x2 * ((uint64_t)x31 * x67)) + ((0x2 * ((uint64_t)x33 * x65)) + (((uint64_t)x35 * x63) + ((0x2 * ((uint64_t)x37 * x61)) + (0x2 * ((uint64_t)x36 * x59)))))))))));
- uint64_t x81 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + ((0x2 * ((uint64_t)x13 * x47)) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((0x2 * ((uint64_t)x19 * x41)) + ((uint64_t)x21 * x39))))))))) + (0x13d * (((uint64_t)x23 * x70) + ((0x2 * ((uint64_t)x25 * x71)) + (((uint64_t)x27 * x69) + (((uint64_t)x29 * x67) + ((0x2 * ((uint64_t)x31 * x65)) + (((uint64_t)x33 * x63) + (((uint64_t)x35 * x61) + ((0x2 * ((uint64_t)x37 * x59)) + ((uint64_t)x36 * x57)))))))))));
- uint64_t x82 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + ((uint64_t)x19 * x39)))))))) + (0x13d * (((uint64_t)x21 * x70) + (((uint64_t)x23 * x71) + (((uint64_t)x25 * x69) + (((uint64_t)x27 * x67) + (((uint64_t)x29 * x65) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + (((uint64_t)x35 * x59) + (((uint64_t)x37 * x57) + ((uint64_t)x36 * x55))))))))))));
- uint64_t x83 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + (((uint64_t)x11 * x45) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((uint64_t)x17 * x39))))))) + (0x13d * ((0x2 * ((uint64_t)x19 * x70)) + ((0x2 * ((uint64_t)x21 * x71)) + (((uint64_t)x23 * x69) + ((0x2 * ((uint64_t)x25 * x67)) + ((0x2 * ((uint64_t)x27 * x65)) + (((uint64_t)x29 * x63) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + (((uint64_t)x35 * x57) + ((0x2 * ((uint64_t)x37 * x55)) + (0x2 * ((uint64_t)x36 * x53))))))))))))));
- uint64_t x84 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + ((uint64_t)x15 * x39)))))) + (0x13d * (((uint64_t)x17 * x70) + ((0x2 * ((uint64_t)x19 * x71)) + (((uint64_t)x21 * x69) + (((uint64_t)x23 * x67) + ((0x2 * ((uint64_t)x25 * x65)) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + ((0x2 * ((uint64_t)x31 * x59)) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + ((0x2 * ((uint64_t)x37 * x53)) + ((uint64_t)x36 * x51))))))))))))));
- uint64_t x85 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + ((uint64_t)x13 * x39))))) + (0x13d * (((uint64_t)x15 * x70) + (((uint64_t)x17 * x71) + (((uint64_t)x19 * x69) + (((uint64_t)x21 * x67) + (((uint64_t)x23 * x65) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + (((uint64_t)x35 * x53) + (((uint64_t)x37 * x51) + ((uint64_t)x36 * x49)))))))))))))));
- uint64_t x86 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((uint64_t)x11 * x39)))) + (0x13d * ((0x2 * ((uint64_t)x13 * x70)) + ((0x2 * ((uint64_t)x15 * x71)) + (((uint64_t)x17 * x69) + ((0x2 * ((uint64_t)x19 * x67)) + ((0x2 * ((uint64_t)x21 * x65)) + (((uint64_t)x23 * x63) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + (((uint64_t)x29 * x57) + ((0x2 * ((uint64_t)x31 * x55)) + ((0x2 * ((uint64_t)x33 * x53)) + (((uint64_t)x35 * x51) + ((0x2 * ((uint64_t)x37 * x49)) + (0x2 * ((uint64_t)x36 * x47)))))))))))))))));
- uint64_t x87 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((uint64_t)x9 * x39))) + (0x13d * (((uint64_t)x11 * x70) + ((0x2 * ((uint64_t)x13 * x71)) + (((uint64_t)x15 * x69) + (((uint64_t)x17 * x67) + ((0x2 * ((uint64_t)x19 * x65)) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + ((0x2 * ((uint64_t)x25 * x59)) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + ((0x2 * ((uint64_t)x31 * x53)) + (((uint64_t)x33 * x51) + (((uint64_t)x35 * x49) + ((0x2 * ((uint64_t)x37 * x47)) + ((uint64_t)x36 * x45)))))))))))))))));
- uint64_t x88 = ((((uint64_t)x5 * x41) + ((uint64_t)x7 * x39)) + (0x13d * (((uint64_t)x9 * x70) + (((uint64_t)x11 * x71) + (((uint64_t)x13 * x69) + (((uint64_t)x15 * x67) + (((uint64_t)x17 * x65) + (((uint64_t)x19 * x63) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + (((uint64_t)x35 * x47) + (((uint64_t)x37 * x45) + ((uint64_t)x36 * x43))))))))))))))))));
- uint64_t x89 = (((uint64_t)x5 * x39) + (0x13d * ((0x2 * ((uint64_t)x7 * x70)) + ((0x2 * ((uint64_t)x9 * x71)) + (((uint64_t)x11 * x69) + ((0x2 * ((uint64_t)x13 * x67)) + ((0x2 * ((uint64_t)x15 * x65)) + (((uint64_t)x17 * x63) + ((0x2 * ((uint64_t)x19 * x61)) + ((0x2 * ((uint64_t)x21 * x59)) + (((uint64_t)x23 * x57) + ((0x2 * ((uint64_t)x25 * x55)) + ((0x2 * ((uint64_t)x27 * x53)) + (((uint64_t)x29 * x51) + ((0x2 * ((uint64_t)x31 * x49)) + ((0x2 * ((uint64_t)x33 * x47)) + (((uint64_t)x35 * x45) + ((0x2 * ((uint64_t)x37 * x43)) + (0x2 * ((uint64_t)x36 * x41))))))))))))))))))));
- uint64_t x90 = (x89 >> 0x16);
- uint32_t x91 = ((uint32_t)x89 & 0x3fffff);
- uint64_t x92 = (x90 + x88);
- uint64_t x93 = (x92 >> 0x15);
- uint32_t x94 = ((uint32_t)x92 & 0x1fffff);
- uint64_t x95 = (x93 + x87);
- uint64_t x96 = (x95 >> 0x15);
- uint32_t x97 = ((uint32_t)x95 & 0x1fffff);
- uint64_t x98 = (x96 + x86);
- uint64_t x99 = (x98 >> 0x16);
- uint32_t x100 = ((uint32_t)x98 & 0x3fffff);
- uint64_t x101 = (x99 + x85);
- uint64_t x102 = (x101 >> 0x15);
- uint32_t x103 = ((uint32_t)x101 & 0x1fffff);
- uint64_t x104 = (x102 + x84);
- uint64_t x105 = (x104 >> 0x15);
- uint32_t x106 = ((uint32_t)x104 & 0x1fffff);
- uint64_t x107 = (x105 + x83);
- uint64_t x108 = (x107 >> 0x16);
- uint32_t x109 = ((uint32_t)x107 & 0x3fffff);
- uint64_t x110 = (x108 + x82);
- uint64_t x111 = (x110 >> 0x15);
- uint32_t x112 = ((uint32_t)x110 & 0x1fffff);
- uint64_t x113 = (x111 + x81);
- uint64_t x114 = (x113 >> 0x15);
- uint32_t x115 = ((uint32_t)x113 & 0x1fffff);
- uint64_t x116 = (x114 + x80);
- uint64_t x117 = (x116 >> 0x16);
- uint32_t x118 = ((uint32_t)x116 & 0x3fffff);
- uint64_t x119 = (x117 + x79);
- uint64_t x120 = (x119 >> 0x15);
- uint32_t x121 = ((uint32_t)x119 & 0x1fffff);
- uint64_t x122 = (x120 + x78);
- uint64_t x123 = (x122 >> 0x15);
- uint32_t x124 = ((uint32_t)x122 & 0x1fffff);
- uint64_t x125 = (x123 + x77);
- uint64_t x126 = (x125 >> 0x16);
- uint32_t x127 = ((uint32_t)x125 & 0x3fffff);
- uint64_t x128 = (x126 + x76);
- uint64_t x129 = (x128 >> 0x15);
- uint32_t x130 = ((uint32_t)x128 & 0x1fffff);
- uint64_t x131 = (x129 + x75);
- uint64_t x132 = (x131 >> 0x15);
- uint32_t x133 = ((uint32_t)x131 & 0x1fffff);
- uint64_t x134 = (x132 + x74);
- uint64_t x135 = (x134 >> 0x16);
- uint32_t x136 = ((uint32_t)x134 & 0x3fffff);
- uint64_t x137 = (x135 + x73);
- uint64_t x138 = (x137 >> 0x15);
- uint32_t x139 = ((uint32_t)x137 & 0x1fffff);
- uint64_t x140 = (x138 + x72);
- uint32_t x141 = (uint32_t) (x140 >> 0x15);
- uint32_t x142 = ((uint32_t)x140 & 0x1fffff);
- uint64_t x143 = (x91 + ((uint64_t)0x13d * x141));
- uint32_t x144 = (uint32_t) (x143 >> 0x16);
- uint32_t x145 = ((uint32_t)x143 & 0x3fffff);
- uint32_t x146 = (x144 + x94);
- uint32_t x147 = (x146 >> 0x15);
- uint32_t x148 = (x146 & 0x1fffff);
- return (Return x142, Return x139, Return x136, Return x133, Return x130, Return x127, Return x124, Return x121, Return x118, Return x115, Return x112, Return x109, Return x106, Return x103, Return x100, (x147 + x97), Return x148, Return x145))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e384m317_18limbs/femulDisplay.v b/src/Specific/solinas32_2e384m317_18limbs/femulDisplay.v
deleted file mode 100644
index 5c15aea2a..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e384m317_18limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e384m317_18limbs/fesquare.c b/src/Specific/solinas32_2e384m317_18limbs/fesquare.c
deleted file mode 100644
index a8d0e1f7c..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/fesquare.c
+++ /dev/null
@@ -1,116 +0,0 @@
-static void fesquare(uint32_t out[18], const uint32_t in1[18]) {
- { const uint32_t x33 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x35 = (((uint64_t)x2 * x33) + ((0x2 * ((uint64_t)x4 * x34)) + (((uint64_t)x6 * x32) + (((uint64_t)x8 * x30) + ((0x2 * ((uint64_t)x10 * x28)) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + ((0x2 * ((uint64_t)x28 * x10)) + (((uint64_t)x30 * x8) + (((uint64_t)x32 * x6) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x33 * x2))))))))))))))))));
- { uint64_t x36 = ((((uint64_t)x2 * x34) + (((uint64_t)x4 * x32) + (((uint64_t)x6 * x30) + (((uint64_t)x8 * x28) + (((uint64_t)x10 * x26) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + (((uint64_t)x26 * x10) + (((uint64_t)x28 * x8) + (((uint64_t)x30 * x6) + (((uint64_t)x32 * x4) + ((uint64_t)x34 * x2))))))))))))))))) + (0x13d * ((uint64_t)x33 * x33)));
- { uint64_t x37 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + (((uint64_t)x8 * x26) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + (((uint64_t)x26 * x8) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x13d * ((0x2 * ((uint64_t)x34 * x33)) + (0x2 * ((uint64_t)x33 * x34)))));
- { uint64_t x38 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + ((0x2 * ((uint64_t)x10 * x22)) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + ((0x2 * ((uint64_t)x22 * x10)) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x13d * (((uint64_t)x32 * x33) + ((0x2 * ((uint64_t)x34 * x34)) + ((uint64_t)x33 * x32)))));
- { uint64_t x39 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x13d * (((uint64_t)x30 * x33) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + ((uint64_t)x33 * x30))))));
- { uint64_t x40 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x13d * ((0x2 * ((uint64_t)x28 * x33)) + ((0x2 * ((uint64_t)x30 * x34)) + (((uint64_t)x32 * x32) + ((0x2 * ((uint64_t)x34 * x30)) + (0x2 * ((uint64_t)x33 * x28))))))));
- { uint64_t x41 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x13d * (((uint64_t)x26 * x33) + ((0x2 * ((uint64_t)x28 * x34)) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + ((0x2 * ((uint64_t)x34 * x28)) + ((uint64_t)x33 * x26))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x13d * (((uint64_t)x24 * x33) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + (((uint64_t)x30 * x30) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + ((uint64_t)x33 * x24)))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x13d * ((0x2 * ((uint64_t)x22 * x33)) + ((0x2 * ((uint64_t)x24 * x34)) + (((uint64_t)x26 * x32) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + (((uint64_t)x32 * x26) + ((0x2 * ((uint64_t)x34 * x24)) + (0x2 * ((uint64_t)x33 * x22)))))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x13d * (((uint64_t)x20 * x33) + ((0x2 * ((uint64_t)x22 * x34)) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + ((0x2 * ((uint64_t)x28 * x28)) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + ((0x2 * ((uint64_t)x34 * x22)) + ((uint64_t)x33 * x20)))))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x13d * (((uint64_t)x18 * x33) + (((uint64_t)x20 * x34) + (((uint64_t)x22 * x32) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + (((uint64_t)x32 * x22) + (((uint64_t)x34 * x20) + ((uint64_t)x33 * x18))))))))))));
- { uint64_t x46 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x13d * ((0x2 * ((uint64_t)x16 * x33)) + ((0x2 * ((uint64_t)x18 * x34)) + (((uint64_t)x20 * x32) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + (((uint64_t)x26 * x26) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + (((uint64_t)x32 * x20) + ((0x2 * ((uint64_t)x34 * x18)) + (0x2 * ((uint64_t)x33 * x16))))))))))))));
- { uint64_t x47 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x13d * (((uint64_t)x14 * x33) + ((0x2 * ((uint64_t)x16 * x34)) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + ((0x2 * ((uint64_t)x22 * x28)) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + ((0x2 * ((uint64_t)x28 * x22)) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + ((0x2 * ((uint64_t)x34 * x16)) + ((uint64_t)x33 * x14))))))))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x13d * (((uint64_t)x12 * x33) + (((uint64_t)x14 * x34) + (((uint64_t)x16 * x32) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + (((uint64_t)x32 * x16) + (((uint64_t)x34 * x14) + ((uint64_t)x33 * x12)))))))))))))));
- { uint64_t x49 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x13d * ((0x2 * ((uint64_t)x10 * x33)) + ((0x2 * ((uint64_t)x12 * x34)) + (((uint64_t)x14 * x32) + ((0x2 * ((uint64_t)x16 * x30)) + ((0x2 * ((uint64_t)x18 * x28)) + (((uint64_t)x20 * x26) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + (((uint64_t)x26 * x20) + ((0x2 * ((uint64_t)x28 * x18)) + ((0x2 * ((uint64_t)x30 * x16)) + (((uint64_t)x32 * x14) + ((0x2 * ((uint64_t)x34 * x12)) + (0x2 * ((uint64_t)x33 * x10)))))))))))))))));
- { uint64_t x50 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x13d * (((uint64_t)x8 * x33) + ((0x2 * ((uint64_t)x10 * x34)) + (((uint64_t)x12 * x32) + (((uint64_t)x14 * x30) + ((0x2 * ((uint64_t)x16 * x28)) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + ((0x2 * ((uint64_t)x28 * x16)) + (((uint64_t)x30 * x14) + (((uint64_t)x32 * x12) + ((0x2 * ((uint64_t)x34 * x10)) + ((uint64_t)x33 * x8)))))))))))))))));
- { uint64_t x51 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x13d * (((uint64_t)x6 * x33) + (((uint64_t)x8 * x34) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + (((uint64_t)x34 * x8) + ((uint64_t)x33 * x6))))))))))))))))));
- { uint64_t x52 = (((uint64_t)x2 * x2) + (0x13d * ((0x2 * ((uint64_t)x4 * x33)) + ((0x2 * ((uint64_t)x6 * x34)) + (((uint64_t)x8 * x32) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + (((uint64_t)x14 * x26) + ((0x2 * ((uint64_t)x16 * x24)) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + ((0x2 * ((uint64_t)x24 * x16)) + (((uint64_t)x26 * x14) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + (((uint64_t)x32 * x8) + ((0x2 * ((uint64_t)x34 * x6)) + (0x2 * ((uint64_t)x33 * x4))))))))))))))))))));
- { uint64_t x53 = (x52 >> 0x16);
- { uint32_t x54 = ((uint32_t)x52 & 0x3fffff);
- { uint64_t x55 = (x53 + x51);
- { uint64_t x56 = (x55 >> 0x15);
- { uint32_t x57 = ((uint32_t)x55 & 0x1fffff);
- { uint64_t x58 = (x56 + x50);
- { uint64_t x59 = (x58 >> 0x15);
- { uint32_t x60 = ((uint32_t)x58 & 0x1fffff);
- { uint64_t x61 = (x59 + x49);
- { uint64_t x62 = (x61 >> 0x16);
- { uint32_t x63 = ((uint32_t)x61 & 0x3fffff);
- { uint64_t x64 = (x62 + x48);
- { uint64_t x65 = (x64 >> 0x15);
- { uint32_t x66 = ((uint32_t)x64 & 0x1fffff);
- { uint64_t x67 = (x65 + x47);
- { uint64_t x68 = (x67 >> 0x15);
- { uint32_t x69 = ((uint32_t)x67 & 0x1fffff);
- { uint64_t x70 = (x68 + x46);
- { uint64_t x71 = (x70 >> 0x16);
- { uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- { uint64_t x73 = (x71 + x45);
- { uint64_t x74 = (x73 >> 0x15);
- { uint32_t x75 = ((uint32_t)x73 & 0x1fffff);
- { uint64_t x76 = (x74 + x44);
- { uint64_t x77 = (x76 >> 0x15);
- { uint32_t x78 = ((uint32_t)x76 & 0x1fffff);
- { uint64_t x79 = (x77 + x43);
- { uint64_t x80 = (x79 >> 0x16);
- { uint32_t x81 = ((uint32_t)x79 & 0x3fffff);
- { uint64_t x82 = (x80 + x42);
- { uint64_t x83 = (x82 >> 0x15);
- { uint32_t x84 = ((uint32_t)x82 & 0x1fffff);
- { uint64_t x85 = (x83 + x41);
- { uint64_t x86 = (x85 >> 0x15);
- { uint32_t x87 = ((uint32_t)x85 & 0x1fffff);
- { uint64_t x88 = (x86 + x40);
- { uint64_t x89 = (x88 >> 0x16);
- { uint32_t x90 = ((uint32_t)x88 & 0x3fffff);
- { uint64_t x91 = (x89 + x39);
- { uint64_t x92 = (x91 >> 0x15);
- { uint32_t x93 = ((uint32_t)x91 & 0x1fffff);
- { uint64_t x94 = (x92 + x38);
- { uint64_t x95 = (x94 >> 0x15);
- { uint32_t x96 = ((uint32_t)x94 & 0x1fffff);
- { uint64_t x97 = (x95 + x37);
- { uint64_t x98 = (x97 >> 0x16);
- { uint32_t x99 = ((uint32_t)x97 & 0x3fffff);
- { uint64_t x100 = (x98 + x36);
- { uint64_t x101 = (x100 >> 0x15);
- { uint32_t x102 = ((uint32_t)x100 & 0x1fffff);
- { uint64_t x103 = (x101 + x35);
- { uint32_t x104 = (uint32_t) (x103 >> 0x15);
- { uint32_t x105 = ((uint32_t)x103 & 0x1fffff);
- { uint64_t x106 = (x54 + ((uint64_t)0x13d * x104));
- { uint32_t x107 = (uint32_t) (x106 >> 0x16);
- { uint32_t x108 = ((uint32_t)x106 & 0x3fffff);
- { uint32_t x109 = (x107 + x57);
- { uint32_t x110 = (x109 >> 0x15);
- { uint32_t x111 = (x109 & 0x1fffff);
- out[0] = x108;
- out[1] = x111;
- out[2] = (x110 + x60);
- out[3] = x63;
- out[4] = x66;
- out[5] = x69;
- out[6] = x72;
- out[7] = x75;
- out[8] = x78;
- out[9] = x81;
- out[10] = x84;
- out[11] = x87;
- out[12] = x90;
- out[13] = x93;
- out[14] = x96;
- out[15] = x99;
- out[16] = x102;
- out[17] = x105;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e384m317_18limbs/fesquare.v b/src/Specific/solinas32_2e384m317_18limbs/fesquare.v
deleted file mode 100644
index 9814b12a8..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e384m317_18limbs.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_2e384m317_18limbs/fesquareDisplay.log b/src/Specific/solinas32_2e384m317_18limbs/fesquareDisplay.log
deleted file mode 100644
index f8fcd2854..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,84 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x33, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x35 = (((uint64_t)x2 * x33) + ((0x2 * ((uint64_t)x4 * x34)) + (((uint64_t)x6 * x32) + (((uint64_t)x8 * x30) + ((0x2 * ((uint64_t)x10 * x28)) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + ((0x2 * ((uint64_t)x28 * x10)) + (((uint64_t)x30 * x8) + (((uint64_t)x32 * x6) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x33 * x2))))))))))))))))));
- uint64_t x36 = ((((uint64_t)x2 * x34) + (((uint64_t)x4 * x32) + (((uint64_t)x6 * x30) + (((uint64_t)x8 * x28) + (((uint64_t)x10 * x26) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + (((uint64_t)x26 * x10) + (((uint64_t)x28 * x8) + (((uint64_t)x30 * x6) + (((uint64_t)x32 * x4) + ((uint64_t)x34 * x2))))))))))))))))) + (0x13d * ((uint64_t)x33 * x33)));
- uint64_t x37 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + (((uint64_t)x8 * x26) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + (((uint64_t)x26 * x8) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x13d * ((0x2 * ((uint64_t)x34 * x33)) + (0x2 * ((uint64_t)x33 * x34)))));
- uint64_t x38 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + ((0x2 * ((uint64_t)x10 * x22)) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + ((0x2 * ((uint64_t)x22 * x10)) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x13d * (((uint64_t)x32 * x33) + ((0x2 * ((uint64_t)x34 * x34)) + ((uint64_t)x33 * x32)))));
- uint64_t x39 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x13d * (((uint64_t)x30 * x33) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + ((uint64_t)x33 * x30))))));
- uint64_t x40 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x13d * ((0x2 * ((uint64_t)x28 * x33)) + ((0x2 * ((uint64_t)x30 * x34)) + (((uint64_t)x32 * x32) + ((0x2 * ((uint64_t)x34 * x30)) + (0x2 * ((uint64_t)x33 * x28))))))));
- uint64_t x41 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x13d * (((uint64_t)x26 * x33) + ((0x2 * ((uint64_t)x28 * x34)) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + ((0x2 * ((uint64_t)x34 * x28)) + ((uint64_t)x33 * x26))))))));
- uint64_t x42 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x13d * (((uint64_t)x24 * x33) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + (((uint64_t)x30 * x30) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + ((uint64_t)x33 * x24)))))))));
- uint64_t x43 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x13d * ((0x2 * ((uint64_t)x22 * x33)) + ((0x2 * ((uint64_t)x24 * x34)) + (((uint64_t)x26 * x32) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + (((uint64_t)x32 * x26) + ((0x2 * ((uint64_t)x34 * x24)) + (0x2 * ((uint64_t)x33 * x22)))))))))));
- uint64_t x44 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x13d * (((uint64_t)x20 * x33) + ((0x2 * ((uint64_t)x22 * x34)) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + ((0x2 * ((uint64_t)x28 * x28)) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + ((0x2 * ((uint64_t)x34 * x22)) + ((uint64_t)x33 * x20)))))))))));
- uint64_t x45 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x13d * (((uint64_t)x18 * x33) + (((uint64_t)x20 * x34) + (((uint64_t)x22 * x32) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + (((uint64_t)x32 * x22) + (((uint64_t)x34 * x20) + ((uint64_t)x33 * x18))))))))))));
- uint64_t x46 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x13d * ((0x2 * ((uint64_t)x16 * x33)) + ((0x2 * ((uint64_t)x18 * x34)) + (((uint64_t)x20 * x32) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + (((uint64_t)x26 * x26) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + (((uint64_t)x32 * x20) + ((0x2 * ((uint64_t)x34 * x18)) + (0x2 * ((uint64_t)x33 * x16))))))))))))));
- uint64_t x47 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x13d * (((uint64_t)x14 * x33) + ((0x2 * ((uint64_t)x16 * x34)) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + ((0x2 * ((uint64_t)x22 * x28)) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + ((0x2 * ((uint64_t)x28 * x22)) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + ((0x2 * ((uint64_t)x34 * x16)) + ((uint64_t)x33 * x14))))))))))))));
- uint64_t x48 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x13d * (((uint64_t)x12 * x33) + (((uint64_t)x14 * x34) + (((uint64_t)x16 * x32) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + (((uint64_t)x32 * x16) + (((uint64_t)x34 * x14) + ((uint64_t)x33 * x12)))))))))))))));
- uint64_t x49 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x13d * ((0x2 * ((uint64_t)x10 * x33)) + ((0x2 * ((uint64_t)x12 * x34)) + (((uint64_t)x14 * x32) + ((0x2 * ((uint64_t)x16 * x30)) + ((0x2 * ((uint64_t)x18 * x28)) + (((uint64_t)x20 * x26) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + (((uint64_t)x26 * x20) + ((0x2 * ((uint64_t)x28 * x18)) + ((0x2 * ((uint64_t)x30 * x16)) + (((uint64_t)x32 * x14) + ((0x2 * ((uint64_t)x34 * x12)) + (0x2 * ((uint64_t)x33 * x10)))))))))))))))));
- uint64_t x50 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x13d * (((uint64_t)x8 * x33) + ((0x2 * ((uint64_t)x10 * x34)) + (((uint64_t)x12 * x32) + (((uint64_t)x14 * x30) + ((0x2 * ((uint64_t)x16 * x28)) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + ((0x2 * ((uint64_t)x28 * x16)) + (((uint64_t)x30 * x14) + (((uint64_t)x32 * x12) + ((0x2 * ((uint64_t)x34 * x10)) + ((uint64_t)x33 * x8)))))))))))))))));
- uint64_t x51 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x13d * (((uint64_t)x6 * x33) + (((uint64_t)x8 * x34) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + (((uint64_t)x34 * x8) + ((uint64_t)x33 * x6))))))))))))))))));
- uint64_t x52 = (((uint64_t)x2 * x2) + (0x13d * ((0x2 * ((uint64_t)x4 * x33)) + ((0x2 * ((uint64_t)x6 * x34)) + (((uint64_t)x8 * x32) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + (((uint64_t)x14 * x26) + ((0x2 * ((uint64_t)x16 * x24)) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + ((0x2 * ((uint64_t)x24 * x16)) + (((uint64_t)x26 * x14) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + (((uint64_t)x32 * x8) + ((0x2 * ((uint64_t)x34 * x6)) + (0x2 * ((uint64_t)x33 * x4))))))))))))))))))));
- uint64_t x53 = (x52 >> 0x16);
- uint32_t x54 = ((uint32_t)x52 & 0x3fffff);
- uint64_t x55 = (x53 + x51);
- uint64_t x56 = (x55 >> 0x15);
- uint32_t x57 = ((uint32_t)x55 & 0x1fffff);
- uint64_t x58 = (x56 + x50);
- uint64_t x59 = (x58 >> 0x15);
- uint32_t x60 = ((uint32_t)x58 & 0x1fffff);
- uint64_t x61 = (x59 + x49);
- uint64_t x62 = (x61 >> 0x16);
- uint32_t x63 = ((uint32_t)x61 & 0x3fffff);
- uint64_t x64 = (x62 + x48);
- uint64_t x65 = (x64 >> 0x15);
- uint32_t x66 = ((uint32_t)x64 & 0x1fffff);
- uint64_t x67 = (x65 + x47);
- uint64_t x68 = (x67 >> 0x15);
- uint32_t x69 = ((uint32_t)x67 & 0x1fffff);
- uint64_t x70 = (x68 + x46);
- uint64_t x71 = (x70 >> 0x16);
- uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- uint64_t x73 = (x71 + x45);
- uint64_t x74 = (x73 >> 0x15);
- uint32_t x75 = ((uint32_t)x73 & 0x1fffff);
- uint64_t x76 = (x74 + x44);
- uint64_t x77 = (x76 >> 0x15);
- uint32_t x78 = ((uint32_t)x76 & 0x1fffff);
- uint64_t x79 = (x77 + x43);
- uint64_t x80 = (x79 >> 0x16);
- uint32_t x81 = ((uint32_t)x79 & 0x3fffff);
- uint64_t x82 = (x80 + x42);
- uint64_t x83 = (x82 >> 0x15);
- uint32_t x84 = ((uint32_t)x82 & 0x1fffff);
- uint64_t x85 = (x83 + x41);
- uint64_t x86 = (x85 >> 0x15);
- uint32_t x87 = ((uint32_t)x85 & 0x1fffff);
- uint64_t x88 = (x86 + x40);
- uint64_t x89 = (x88 >> 0x16);
- uint32_t x90 = ((uint32_t)x88 & 0x3fffff);
- uint64_t x91 = (x89 + x39);
- uint64_t x92 = (x91 >> 0x15);
- uint32_t x93 = ((uint32_t)x91 & 0x1fffff);
- uint64_t x94 = (x92 + x38);
- uint64_t x95 = (x94 >> 0x15);
- uint32_t x96 = ((uint32_t)x94 & 0x1fffff);
- uint64_t x97 = (x95 + x37);
- uint64_t x98 = (x97 >> 0x16);
- uint32_t x99 = ((uint32_t)x97 & 0x3fffff);
- uint64_t x100 = (x98 + x36);
- uint64_t x101 = (x100 >> 0x15);
- uint32_t x102 = ((uint32_t)x100 & 0x1fffff);
- uint64_t x103 = (x101 + x35);
- uint32_t x104 = (uint32_t) (x103 >> 0x15);
- uint32_t x105 = ((uint32_t)x103 & 0x1fffff);
- uint64_t x106 = (x54 + ((uint64_t)0x13d * x104));
- uint32_t x107 = (uint32_t) (x106 >> 0x16);
- uint32_t x108 = ((uint32_t)x106 & 0x3fffff);
- uint32_t x109 = (x107 + x57);
- uint32_t x110 = (x109 >> 0x15);
- uint32_t x111 = (x109 & 0x1fffff);
- return (Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, (x110 + x60), Return x111, Return x108))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e384m317_18limbs/fesquareDisplay.v b/src/Specific/solinas32_2e384m317_18limbs/fesquareDisplay.v
deleted file mode 100644
index d76011c32..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e384m317_18limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e384m317_18limbs/fesub.c b/src/Specific/solinas32_2e384m317_18limbs/fesub.c
deleted file mode 100644
index 5f8625d0f..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/fesub.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void fesub(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- out[0] = ((0x7ffd86 + x5) - x39);
- out[1] = ((0x3ffffe + x7) - x41);
- out[2] = ((0x3ffffe + x9) - x43);
- out[3] = ((0x7ffffe + x11) - x45);
- out[4] = ((0x3ffffe + x13) - x47);
- out[5] = ((0x3ffffe + x15) - x49);
- out[6] = ((0x7ffffe + x17) - x51);
- out[7] = ((0x3ffffe + x19) - x53);
- out[8] = ((0x3ffffe + x21) - x55);
- out[9] = ((0x7ffffe + x23) - x57);
- out[10] = ((0x3ffffe + x25) - x59);
- out[11] = ((0x3ffffe + x27) - x61);
- out[12] = ((0x7ffffe + x29) - x63);
- out[13] = ((0x3ffffe + x31) - x65);
- out[14] = ((0x3ffffe + x33) - x67);
- out[15] = ((0x7ffffe + x35) - x69);
- out[16] = ((0x3ffffe + x37) - x71);
- out[17] = ((0x3ffffe + x36) - x70);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e384m317_18limbs/fesub.v b/src/Specific/solinas32_2e384m317_18limbs/fesub.v
deleted file mode 100644
index 9024db6c0..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e384m317_18limbs.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_2e384m317_18limbs/fesubDisplay.log b/src/Specific/solinas32_2e384m317_18limbs/fesubDisplay.log
deleted file mode 100644
index 20cc9509d..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- (((0x3ffffe + x36) - x70), ((0x3ffffe + x37) - x71), ((0x7ffffe + x35) - x69), ((0x3ffffe + x33) - x67), ((0x3ffffe + x31) - x65), ((0x7ffffe + x29) - x63), ((0x3ffffe + x27) - x61), ((0x3ffffe + x25) - x59), ((0x7ffffe + x23) - x57), ((0x3ffffe + x21) - x55), ((0x3ffffe + x19) - x53), ((0x7ffffe + x17) - x51), ((0x3ffffe + x15) - x49), ((0x3ffffe + x13) - x47), ((0x7ffffe + x11) - x45), ((0x3ffffe + x9) - x43), ((0x3ffffe + x7) - x41), ((0x7ffd86 + x5) - x39)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e384m317_18limbs/fesubDisplay.v b/src/Specific/solinas32_2e384m317_18limbs/fesubDisplay.v
deleted file mode 100644
index f59e6d63f..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e384m317_18limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e384m317_18limbs/freeze.c b/src/Specific/solinas32_2e384m317_18limbs/freeze.c
deleted file mode 100644
index 3f87099f2..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/freeze.c
+++ /dev/null
@@ -1,94 +0,0 @@
-static void freeze(uint32_t out[18], const uint32_t in1[18]) {
- { const uint32_t x33 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffec3);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x4, 0x1fffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x6, 0x1fffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x8, 0x3fffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x10, 0x1fffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x12, 0x1fffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x14, 0x3fffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x16, 0x1fffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x18, 0x1fffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x20, 0x3fffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x22, 0x1fffff);
- { uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x24, 0x1fffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x26, 0x3fffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x28, 0x1fffff);
- { uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x30, 0x1fffff);
- { uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x32, 0x3fffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x34, 0x1fffff);
- { uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x33, 0x1fffff);
- { uint32_t x89 = cmovznz32(x88, 0x0, 0xffffffff);
- { uint32_t x90 = (x89 & 0x3ffec3);
- { uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x36, Return x90);
- { uint32_t x94 = (x89 & 0x1fffff);
- { uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x39, Return x94);
- { uint32_t x98 = (x89 & 0x1fffff);
- { uint32_t x100, uint8_t x101 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x42, Return x98);
- { uint32_t x102 = (x89 & 0x3fffff);
- { uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x45, Return x102);
- { uint32_t x106 = (x89 & 0x1fffff);
- { uint32_t x108, uint8_t x109 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x48, Return x106);
- { uint32_t x110 = (x89 & 0x1fffff);
- { uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x51, Return x110);
- { uint32_t x114 = (x89 & 0x3fffff);
- { uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x54, Return x114);
- { uint32_t x118 = (x89 & 0x1fffff);
- { uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x57, Return x118);
- { uint32_t x122 = (x89 & 0x1fffff);
- { uint32_t x124, uint8_t x125 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x60, Return x122);
- { uint32_t x126 = (x89 & 0x3fffff);
- { uint32_t x128, uint8_t x129 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x125, Return x63, Return x126);
- { uint32_t x130 = (x89 & 0x1fffff);
- { uint32_t x132, uint8_t x133 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x129, Return x66, Return x130);
- { uint32_t x134 = (x89 & 0x1fffff);
- { uint32_t x136, uint8_t x137 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x133, Return x69, Return x134);
- { uint32_t x138 = (x89 & 0x3fffff);
- { uint32_t x140, uint8_t x141 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x137, Return x72, Return x138);
- { uint32_t x142 = (x89 & 0x1fffff);
- { uint32_t x144, uint8_t x145 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x141, Return x75, Return x142);
- { uint32_t x146 = (x89 & 0x1fffff);
- { uint32_t x148, uint8_t x149 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x145, Return x78, Return x146);
- { uint32_t x150 = (x89 & 0x3fffff);
- { uint32_t x152, uint8_t x153 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x149, Return x81, Return x150);
- { uint32_t x154 = (x89 & 0x1fffff);
- { uint32_t x156, uint8_t x157 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x153, Return x84, Return x154);
- { uint32_t x158 = (x89 & 0x1fffff);
- { uint32_t x160, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x157, Return x87, Return x158);
- out[0] = x92;
- out[1] = x96;
- out[2] = x100;
- out[3] = x104;
- out[4] = x108;
- out[5] = x112;
- out[6] = x116;
- out[7] = x120;
- out[8] = x124;
- out[9] = x128;
- out[10] = x132;
- out[11] = x136;
- out[12] = x140;
- out[13] = x144;
- out[14] = x148;
- out[15] = x152;
- out[16] = x156;
- out[17] = x160;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e384m317_18limbs/freeze.v b/src/Specific/solinas32_2e384m317_18limbs/freeze.v
deleted file mode 100644
index fb817c338..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e384m317_18limbs.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_2e384m317_18limbs/freezeDisplay.log b/src/Specific/solinas32_2e384m317_18limbs/freezeDisplay.log
deleted file mode 100644
index c508179d4..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/freezeDisplay.log
+++ /dev/null
@@ -1,62 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x33, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffec3);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x4, 0x1fffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x6, 0x1fffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x8, 0x3fffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x10, 0x1fffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x12, 0x1fffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x14, 0x3fffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x16, 0x1fffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x18, 0x1fffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x20, 0x3fffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x22, 0x1fffff);
- uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x24, 0x1fffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x26, 0x3fffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x28, 0x1fffff);
- uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x30, 0x1fffff);
- uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x32, 0x3fffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x34, 0x1fffff);
- uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x33, 0x1fffff);
- uint32_t x89 = cmovznz32(x88, 0x0, 0xffffffff);
- uint32_t x90 = (x89 & 0x3ffec3);
- uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x36, Return x90);
- uint32_t x94 = (x89 & 0x1fffff);
- uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x39, Return x94);
- uint32_t x98 = (x89 & 0x1fffff);
- uint32_t x100, uint8_t x101 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x42, Return x98);
- uint32_t x102 = (x89 & 0x3fffff);
- uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x45, Return x102);
- uint32_t x106 = (x89 & 0x1fffff);
- uint32_t x108, uint8_t x109 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x48, Return x106);
- uint32_t x110 = (x89 & 0x1fffff);
- uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x51, Return x110);
- uint32_t x114 = (x89 & 0x3fffff);
- uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x54, Return x114);
- uint32_t x118 = (x89 & 0x1fffff);
- uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x57, Return x118);
- uint32_t x122 = (x89 & 0x1fffff);
- uint32_t x124, uint8_t x125 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x60, Return x122);
- uint32_t x126 = (x89 & 0x3fffff);
- uint32_t x128, uint8_t x129 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x125, Return x63, Return x126);
- uint32_t x130 = (x89 & 0x1fffff);
- uint32_t x132, uint8_t x133 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x129, Return x66, Return x130);
- uint32_t x134 = (x89 & 0x1fffff);
- uint32_t x136, uint8_t x137 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x133, Return x69, Return x134);
- uint32_t x138 = (x89 & 0x3fffff);
- uint32_t x140, uint8_t x141 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x137, Return x72, Return x138);
- uint32_t x142 = (x89 & 0x1fffff);
- uint32_t x144, uint8_t x145 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x141, Return x75, Return x142);
- uint32_t x146 = (x89 & 0x1fffff);
- uint32_t x148, uint8_t x149 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x145, Return x78, Return x146);
- uint32_t x150 = (x89 & 0x3fffff);
- uint32_t x152, uint8_t x153 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x149, Return x81, Return x150);
- uint32_t x154 = (x89 & 0x1fffff);
- uint32_t x156, uint8_t x157 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x153, Return x84, Return x154);
- uint32_t x158 = (x89 & 0x1fffff);
- uint32_t x160, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x157, Return x87, Return x158);
- (Return x160, Return x156, Return x152, Return x148, Return x144, Return x140, Return x136, Return x132, Return x128, Return x124, Return x120, Return x116, Return x112, Return x108, Return x104, Return x100, Return x96, Return x92))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e384m317_18limbs/freezeDisplay.v b/src/Specific/solinas32_2e384m317_18limbs/freezeDisplay.v
deleted file mode 100644
index 2c3eb126a..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e384m317_18limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e384m317_18limbs/py_interpreter.sh b/src/Specific/solinas32_2e384m317_18limbs/py_interpreter.sh
deleted file mode 100755
index c50750dcd..000000000
--- a/src/Specific/solinas32_2e384m317_18limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**384 - 317' -Dmodulus_bytes='21 + 1/3' -Da24='121665'
diff --git a/src/Specific/solinas32_2e389m21_15limbs/CurveParameters.v b/src/Specific/solinas32_2e389m21_15limbs/CurveParameters.v
deleted file mode 100644
index ab5287798..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^389 - 21
-Base: 25 + 14/15
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 15%nat;
- base := 25 + 14/15;
- bitwidth := 32;
- s := 2^389;
- c := [(1, 21)];
- carry_chains := Some [seq 0 (pred 15); [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_2e389m21_15limbs/Synthesis.v b/src/Specific/solinas32_2e389m21_15limbs/Synthesis.v
deleted file mode 100644
index 8ebc8180e..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e389m21_15limbs.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_2e389m21_15limbs/compiler.sh b/src/Specific/solinas32_2e389m21_15limbs/compiler.sh
deleted file mode 100755
index 1dcfe8992..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,25}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='49' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<389) - 21' "$@"
diff --git a/src/Specific/solinas32_2e389m21_15limbs/compilerxx.sh b/src/Specific/solinas32_2e389m21_15limbs/compilerxx.sh
deleted file mode 100755
index e06568566..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,25}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='49' -Dmodulus_limbs='15' -Dq_mpz='(1_mpz<<389) - 21' "$@"
diff --git a/src/Specific/solinas32_2e389m21_15limbs/feadd.c b/src/Specific/solinas32_2e389m21_15limbs/feadd.c
deleted file mode 100644
index 72a59425b..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/feadd.c
+++ /dev/null
@@ -1,48 +0,0 @@
-static void feadd(uint32_t out[15], const uint32_t in1[15], const uint32_t in2[15]) {
- { const uint32_t x30 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x58 = in2[14];
- { const uint32_t x59 = in2[13];
- { const uint32_t x57 = in2[12];
- { const uint32_t x55 = in2[11];
- { const uint32_t x53 = in2[10];
- { const uint32_t x51 = in2[9];
- { const uint32_t x49 = in2[8];
- { const uint32_t x47 = in2[7];
- { const uint32_t x45 = in2[6];
- { const uint32_t x43 = in2[5];
- { const uint32_t x41 = in2[4];
- { const uint32_t x39 = in2[3];
- { const uint32_t x37 = in2[2];
- { const uint32_t x35 = in2[1];
- { const uint32_t x33 = in2[0];
- out[0] = (x5 + x33);
- out[1] = (x7 + x35);
- out[2] = (x9 + x37);
- out[3] = (x11 + x39);
- out[4] = (x13 + x41);
- out[5] = (x15 + x43);
- out[6] = (x17 + x45);
- out[7] = (x19 + x47);
- out[8] = (x21 + x49);
- out[9] = (x23 + x51);
- out[10] = (x25 + x53);
- out[11] = (x27 + x55);
- out[12] = (x29 + x57);
- out[13] = (x31 + x59);
- out[14] = (x30 + x58);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e389m21_15limbs/feadd.v b/src/Specific/solinas32_2e389m21_15limbs/feadd.v
deleted file mode 100644
index fbb552375..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e389m21_15limbs.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_2e389m21_15limbs/feaddDisplay.log b/src/Specific/solinas32_2e389m21_15limbs/feaddDisplay.log
deleted file mode 100644
index 08d611628..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x30, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x58, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33))%core,
- ((x30 + x58), (x31 + x59), (x29 + x57), (x27 + x55), (x25 + x53), (x23 + x51), (x21 + x49), (x19 + x47), (x17 + x45), (x15 + x43), (x13 + x41), (x11 + x39), (x9 + x37), (x7 + x35), (x5 + x33)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e389m21_15limbs/feaddDisplay.v b/src/Specific/solinas32_2e389m21_15limbs/feaddDisplay.v
deleted file mode 100644
index d2c2a9f69..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e389m21_15limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e389m21_15limbs/fecarry.v b/src/Specific/solinas32_2e389m21_15limbs/fecarry.v
deleted file mode 100644
index 23c6e2399..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e389m21_15limbs.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_2e389m21_15limbs/fecarryDisplay.v b/src/Specific/solinas32_2e389m21_15limbs/fecarryDisplay.v
deleted file mode 100644
index b52840365..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e389m21_15limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e389m21_15limbs/femul.c b/src/Specific/solinas32_2e389m21_15limbs/femul.c
deleted file mode 100644
index 07cfa8617..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/femul.c
+++ /dev/null
@@ -1,113 +0,0 @@
-static void femul(uint32_t out[15], const uint32_t in1[15], const uint32_t in2[15]) {
- { const uint32_t x30 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x58 = in2[14];
- { const uint32_t x59 = in2[13];
- { const uint32_t x57 = in2[12];
- { const uint32_t x55 = in2[11];
- { const uint32_t x53 = in2[10];
- { const uint32_t x51 = in2[9];
- { const uint32_t x49 = in2[8];
- { const uint32_t x47 = in2[7];
- { const uint32_t x45 = in2[6];
- { const uint32_t x43 = in2[5];
- { const uint32_t x41 = in2[4];
- { const uint32_t x39 = in2[3];
- { const uint32_t x37 = in2[2];
- { const uint32_t x35 = in2[1];
- { const uint32_t x33 = in2[0];
- { uint64_t x60 = (((uint64_t)x5 * x58) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + (((uint64_t)x29 * x37) + (((uint64_t)x31 * x35) + ((uint64_t)x30 * x33)))))))))))))));
- { uint64_t x61 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + (((uint64_t)x27 * x37) + (((uint64_t)x29 * x35) + ((uint64_t)x31 * x33)))))))))))))) + (0x15 * (0x2 * ((uint64_t)x30 * x58))));
- { uint64_t x62 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + (((uint64_t)x25 * x37) + (((uint64_t)x27 * x35) + ((uint64_t)x29 * x33))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x31 * x58)) + (0x2 * ((uint64_t)x30 * x59)))));
- { uint64_t x63 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + (((uint64_t)x25 * x35) + ((uint64_t)x27 * x33)))))))))))) + (0x15 * ((0x2 * ((uint64_t)x29 * x58)) + ((0x2 * ((uint64_t)x31 * x59)) + (0x2 * ((uint64_t)x30 * x57))))));
- { uint64_t x64 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + ((uint64_t)x25 * x33))))))))))) + (0x15 * ((0x2 * ((uint64_t)x27 * x58)) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + (0x2 * ((uint64_t)x30 * x55)))))));
- { uint64_t x65 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + (((uint64_t)x21 * x35) + ((uint64_t)x23 * x33)))))))))) + (0x15 * ((0x2 * ((uint64_t)x25 * x58)) + ((0x2 * ((uint64_t)x27 * x59)) + ((0x2 * ((uint64_t)x29 * x57)) + ((0x2 * ((uint64_t)x31 * x55)) + (0x2 * ((uint64_t)x30 * x53))))))));
- { uint64_t x66 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + ((uint64_t)x21 * x33))))))))) + (0x15 * ((0x2 * ((uint64_t)x23 * x58)) + ((0x2 * ((uint64_t)x25 * x59)) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + ((0x2 * ((uint64_t)x31 * x53)) + (0x2 * ((uint64_t)x30 * x51)))))))));
- { uint64_t x67 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + ((uint64_t)x19 * x33)))))))) + (0x15 * ((0x2 * ((uint64_t)x21 * x58)) + ((0x2 * ((uint64_t)x23 * x59)) + ((0x2 * ((uint64_t)x25 * x57)) + ((0x2 * ((uint64_t)x27 * x55)) + ((0x2 * ((uint64_t)x29 * x53)) + ((0x2 * ((uint64_t)x31 * x51)) + (0x2 * ((uint64_t)x30 * x49))))))))));
- { uint64_t x68 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + ((uint64_t)x17 * x33))))))) + (0x15 * ((0x2 * ((uint64_t)x19 * x58)) + ((0x2 * ((uint64_t)x21 * x59)) + ((0x2 * ((uint64_t)x23 * x57)) + ((0x2 * ((uint64_t)x25 * x55)) + ((0x2 * ((uint64_t)x27 * x53)) + ((0x2 * ((uint64_t)x29 * x51)) + ((0x2 * ((uint64_t)x31 * x49)) + (0x2 * ((uint64_t)x30 * x47)))))))))));
- { uint64_t x69 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + (((uint64_t)x13 * x35) + ((uint64_t)x15 * x33)))))) + (0x15 * ((0x2 * ((uint64_t)x17 * x58)) + ((0x2 * ((uint64_t)x19 * x59)) + ((0x2 * ((uint64_t)x21 * x57)) + ((0x2 * ((uint64_t)x23 * x55)) + ((0x2 * ((uint64_t)x25 * x53)) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + (0x2 * ((uint64_t)x30 * x45))))))))))));
- { ℤ x70 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + ((uint64_t)x13 * x33))))) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x15 * x58)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + (0x2 * ((uint64_t)x30 * x43)))))))))))));
- { ℤ x71 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + ((uint64_t)x11 * x33)))) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x13 * x58)) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + ((0x2 * ((uint64_t)x19 * x55)) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + ((0x2 * ((uint64_t)x31 * x43)) + (0x2 * ((uint64_t)x30 * x41))))))))))))));
- { ℤ x72 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + ((uint64_t)x9 * x33))) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x11 * x58)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + (0x2 * ((uint64_t)x30 * x39)))))))))))))));
- { ℤ x73 = ((((uint64_t)x5 * x35) + ((uint64_t)x7 * x33)) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x9 * x58)) + ((0x2 * ((uint64_t)x11 * x59)) + ((0x2 * ((uint64_t)x13 * x57)) + ((0x2 * ((uint64_t)x15 * x55)) + ((0x2 * ((uint64_t)x17 * x53)) + ((0x2 * ((uint64_t)x19 * x51)) + ((0x2 * ((uint64_t)x21 * x49)) + ((0x2 * ((uint64_t)x23 * x47)) + ((0x2 * ((uint64_t)x25 * x45)) + ((0x2 * ((uint64_t)x27 * x43)) + ((0x2 * ((uint64_t)x29 * x41)) + ((0x2 * ((uint64_t)x31 * x39)) + (0x2 * ((uint64_t)x30 * x37))))))))))))))));
- { ℤ x74 = (((uint64_t)x5 * x33) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x7 * x58)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + ((0x2 * ((uint64_t)x25 * x43)) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((0x2 * ((uint64_t)x31 * x37)) + (0x2 * ((uint64_t)x30 * x35)))))))))))))))));
- { uint64_t x75 = (x74 >> 0x1a);
- { uint32_t x76 = (x74 & 0x3ffffff);
- { ℤ x77 = (x75 +ℤ x73);
- { uint64_t x78 = (x77 >> 0x1a);
- { uint32_t x79 = (x77 & 0x3ffffff);
- { ℤ x80 = (x78 +ℤ x72);
- { uint64_t x81 = (x80 >> 0x1a);
- { uint32_t x82 = (x80 & 0x3ffffff);
- { ℤ x83 = (x81 +ℤ x71);
- { uint64_t x84 = (x83 >> 0x1a);
- { uint32_t x85 = (x83 & 0x3ffffff);
- { ℤ x86 = (x84 +ℤ x70);
- { uint64_t x87 = (x86 >> 0x1a);
- { uint32_t x88 = (x86 & 0x3ffffff);
- { uint64_t x89 = (x87 + x69);
- { uint64_t x90 = (x89 >> 0x1a);
- { uint32_t x91 = ((uint32_t)x89 & 0x3ffffff);
- { uint64_t x92 = (x90 + x68);
- { uint64_t x93 = (x92 >> 0x1a);
- { uint32_t x94 = ((uint32_t)x92 & 0x3ffffff);
- { uint64_t x95 = (x93 + x67);
- { uint64_t x96 = (x95 >> 0x1a);
- { uint32_t x97 = ((uint32_t)x95 & 0x3ffffff);
- { uint64_t x98 = (x96 + x66);
- { uint64_t x99 = (x98 >> 0x1a);
- { uint32_t x100 = ((uint32_t)x98 & 0x3ffffff);
- { uint64_t x101 = (x99 + x65);
- { uint64_t x102 = (x101 >> 0x1a);
- { uint32_t x103 = ((uint32_t)x101 & 0x3ffffff);
- { uint64_t x104 = (x102 + x64);
- { uint64_t x105 = (x104 >> 0x1a);
- { uint32_t x106 = ((uint32_t)x104 & 0x3ffffff);
- { uint64_t x107 = (x105 + x63);
- { uint64_t x108 = (x107 >> 0x1a);
- { uint32_t x109 = ((uint32_t)x107 & 0x3ffffff);
- { uint64_t x110 = (x108 + x62);
- { uint64_t x111 = (x110 >> 0x1a);
- { uint32_t x112 = ((uint32_t)x110 & 0x3ffffff);
- { uint64_t x113 = (x111 + x61);
- { uint64_t x114 = (x113 >> 0x1a);
- { uint32_t x115 = ((uint32_t)x113 & 0x3ffffff);
- { uint64_t x116 = (x114 + x60);
- { uint64_t x117 = (x116 >> 0x19);
- { uint32_t x118 = ((uint32_t)x116 & 0x1ffffff);
- { uint64_t x119 = (x76 + (0x15 * x117));
- { uint32_t x120 = (uint32_t) (x119 >> 0x1a);
- { uint32_t x121 = ((uint32_t)x119 & 0x3ffffff);
- { uint32_t x122 = (x120 + x79);
- { uint32_t x123 = (x122 >> 0x1a);
- { uint32_t x124 = (x122 & 0x3ffffff);
- out[0] = x121;
- out[1] = x124;
- out[2] = (x123 + x82);
- out[3] = x85;
- out[4] = x88;
- out[5] = x91;
- out[6] = x94;
- out[7] = x97;
- out[8] = x100;
- out[9] = x103;
- out[10] = x106;
- out[11] = x109;
- out[12] = x112;
- out[13] = x115;
- out[14] = x118;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e389m21_15limbs/femul.v b/src/Specific/solinas32_2e389m21_15limbs/femul.v
deleted file mode 100644
index a8fc8ce8e..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e389m21_15limbs.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_2e389m21_15limbs/femulDisplay.log b/src/Specific/solinas32_2e389m21_15limbs/femulDisplay.log
deleted file mode 100644
index 091318fd0..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/femulDisplay.log
+++ /dev/null
@@ -1,72 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x30, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x58, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33))%core,
- uint64_t x60 = (((uint64_t)x5 * x58) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + (((uint64_t)x29 * x37) + (((uint64_t)x31 * x35) + ((uint64_t)x30 * x33)))))))))))))));
- uint64_t x61 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + (((uint64_t)x27 * x37) + (((uint64_t)x29 * x35) + ((uint64_t)x31 * x33)))))))))))))) + (0x15 * (0x2 * ((uint64_t)x30 * x58))));
- uint64_t x62 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + (((uint64_t)x25 * x37) + (((uint64_t)x27 * x35) + ((uint64_t)x29 * x33))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x31 * x58)) + (0x2 * ((uint64_t)x30 * x59)))));
- uint64_t x63 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + (((uint64_t)x25 * x35) + ((uint64_t)x27 * x33)))))))))))) + (0x15 * ((0x2 * ((uint64_t)x29 * x58)) + ((0x2 * ((uint64_t)x31 * x59)) + (0x2 * ((uint64_t)x30 * x57))))));
- uint64_t x64 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + (((uint64_t)x23 * x35) + ((uint64_t)x25 * x33))))))))))) + (0x15 * ((0x2 * ((uint64_t)x27 * x58)) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + (0x2 * ((uint64_t)x30 * x55)))))));
- uint64_t x65 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + (((uint64_t)x21 * x35) + ((uint64_t)x23 * x33)))))))))) + (0x15 * ((0x2 * ((uint64_t)x25 * x58)) + ((0x2 * ((uint64_t)x27 * x59)) + ((0x2 * ((uint64_t)x29 * x57)) + ((0x2 * ((uint64_t)x31 * x55)) + (0x2 * ((uint64_t)x30 * x53))))))));
- uint64_t x66 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + (((uint64_t)x19 * x35) + ((uint64_t)x21 * x33))))))))) + (0x15 * ((0x2 * ((uint64_t)x23 * x58)) + ((0x2 * ((uint64_t)x25 * x59)) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + ((0x2 * ((uint64_t)x31 * x53)) + (0x2 * ((uint64_t)x30 * x51)))))))));
- uint64_t x67 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + (((uint64_t)x17 * x35) + ((uint64_t)x19 * x33)))))))) + (0x15 * ((0x2 * ((uint64_t)x21 * x58)) + ((0x2 * ((uint64_t)x23 * x59)) + ((0x2 * ((uint64_t)x25 * x57)) + ((0x2 * ((uint64_t)x27 * x55)) + ((0x2 * ((uint64_t)x29 * x53)) + ((0x2 * ((uint64_t)x31 * x51)) + (0x2 * ((uint64_t)x30 * x49))))))))));
- uint64_t x68 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + (((uint64_t)x15 * x35) + ((uint64_t)x17 * x33))))))) + (0x15 * ((0x2 * ((uint64_t)x19 * x58)) + ((0x2 * ((uint64_t)x21 * x59)) + ((0x2 * ((uint64_t)x23 * x57)) + ((0x2 * ((uint64_t)x25 * x55)) + ((0x2 * ((uint64_t)x27 * x53)) + ((0x2 * ((uint64_t)x29 * x51)) + ((0x2 * ((uint64_t)x31 * x49)) + (0x2 * ((uint64_t)x30 * x47)))))))))));
- uint64_t x69 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + (((uint64_t)x13 * x35) + ((uint64_t)x15 * x33)))))) + (0x15 * ((0x2 * ((uint64_t)x17 * x58)) + ((0x2 * ((uint64_t)x19 * x59)) + ((0x2 * ((uint64_t)x21 * x57)) + ((0x2 * ((uint64_t)x23 * x55)) + ((0x2 * ((uint64_t)x25 * x53)) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + (0x2 * ((uint64_t)x30 * x45))))))))))));
- ℤ x70 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + (((uint64_t)x11 * x35) + ((uint64_t)x13 * x33))))) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x15 * x58)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + (0x2 * ((uint64_t)x30 * x43)))))))))))));
- ℤ x71 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + (((uint64_t)x9 * x35) + ((uint64_t)x11 * x33)))) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x13 * x58)) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + ((0x2 * ((uint64_t)x19 * x55)) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + ((0x2 * ((uint64_t)x31 * x43)) + (0x2 * ((uint64_t)x30 * x41))))))))))))));
- ℤ x72 = ((((uint64_t)x5 * x37) + (((uint64_t)x7 * x35) + ((uint64_t)x9 * x33))) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x11 * x58)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + (0x2 * ((uint64_t)x30 * x39)))))))))))))));
- ℤ x73 = ((((uint64_t)x5 * x35) + ((uint64_t)x7 * x33)) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x9 * x58)) + ((0x2 * ((uint64_t)x11 * x59)) + ((0x2 * ((uint64_t)x13 * x57)) + ((0x2 * ((uint64_t)x15 * x55)) + ((0x2 * ((uint64_t)x17 * x53)) + ((0x2 * ((uint64_t)x19 * x51)) + ((0x2 * ((uint64_t)x21 * x49)) + ((0x2 * ((uint64_t)x23 * x47)) + ((0x2 * ((uint64_t)x25 * x45)) + ((0x2 * ((uint64_t)x27 * x43)) + ((0x2 * ((uint64_t)x29 * x41)) + ((0x2 * ((uint64_t)x31 * x39)) + (0x2 * ((uint64_t)x30 * x37))))))))))))))));
- ℤ x74 = (((uint64_t)x5 * x33) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x7 * x58)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + ((0x2 * ((uint64_t)x25 * x43)) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((0x2 * ((uint64_t)x31 * x37)) + (0x2 * ((uint64_t)x30 * x35)))))))))))))))));
- uint64_t x75 = (x74 >> 0x1a);
- uint32_t x76 = (x74 & 0x3ffffff);
- ℤ x77 = (x75 +ℤ x73);
- uint64_t x78 = (x77 >> 0x1a);
- uint32_t x79 = (x77 & 0x3ffffff);
- ℤ x80 = (x78 +ℤ x72);
- uint64_t x81 = (x80 >> 0x1a);
- uint32_t x82 = (x80 & 0x3ffffff);
- ℤ x83 = (x81 +ℤ x71);
- uint64_t x84 = (x83 >> 0x1a);
- uint32_t x85 = (x83 & 0x3ffffff);
- ℤ x86 = (x84 +ℤ x70);
- uint64_t x87 = (x86 >> 0x1a);
- uint32_t x88 = (x86 & 0x3ffffff);
- uint64_t x89 = (x87 + x69);
- uint64_t x90 = (x89 >> 0x1a);
- uint32_t x91 = ((uint32_t)x89 & 0x3ffffff);
- uint64_t x92 = (x90 + x68);
- uint64_t x93 = (x92 >> 0x1a);
- uint32_t x94 = ((uint32_t)x92 & 0x3ffffff);
- uint64_t x95 = (x93 + x67);
- uint64_t x96 = (x95 >> 0x1a);
- uint32_t x97 = ((uint32_t)x95 & 0x3ffffff);
- uint64_t x98 = (x96 + x66);
- uint64_t x99 = (x98 >> 0x1a);
- uint32_t x100 = ((uint32_t)x98 & 0x3ffffff);
- uint64_t x101 = (x99 + x65);
- uint64_t x102 = (x101 >> 0x1a);
- uint32_t x103 = ((uint32_t)x101 & 0x3ffffff);
- uint64_t x104 = (x102 + x64);
- uint64_t x105 = (x104 >> 0x1a);
- uint32_t x106 = ((uint32_t)x104 & 0x3ffffff);
- uint64_t x107 = (x105 + x63);
- uint64_t x108 = (x107 >> 0x1a);
- uint32_t x109 = ((uint32_t)x107 & 0x3ffffff);
- uint64_t x110 = (x108 + x62);
- uint64_t x111 = (x110 >> 0x1a);
- uint32_t x112 = ((uint32_t)x110 & 0x3ffffff);
- uint64_t x113 = (x111 + x61);
- uint64_t x114 = (x113 >> 0x1a);
- uint32_t x115 = ((uint32_t)x113 & 0x3ffffff);
- uint64_t x116 = (x114 + x60);
- uint64_t x117 = (x116 >> 0x19);
- uint32_t x118 = ((uint32_t)x116 & 0x1ffffff);
- uint64_t x119 = (x76 + (0x15 * x117));
- uint32_t x120 = (uint32_t) (x119 >> 0x1a);
- uint32_t x121 = ((uint32_t)x119 & 0x3ffffff);
- uint32_t x122 = (x120 + x79);
- uint32_t x123 = (x122 >> 0x1a);
- uint32_t x124 = (x122 & 0x3ffffff);
- return (Return x118, Return x115, Return x112, Return x109, Return x106, Return x103, Return x100, Return x97, Return x94, Return x91, Return x88, Return x85, (x123 + x82), Return x124, Return x121))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e389m21_15limbs/femulDisplay.v b/src/Specific/solinas32_2e389m21_15limbs/femulDisplay.v
deleted file mode 100644
index f3cf57147..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e389m21_15limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e389m21_15limbs/fesquare.c b/src/Specific/solinas32_2e389m21_15limbs/fesquare.c
deleted file mode 100644
index 998045a28..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/fesquare.c
+++ /dev/null
@@ -1,98 +0,0 @@
-static void fesquare(uint32_t out[15], const uint32_t in1[15]) {
- { const uint32_t x27 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x29 = (((uint64_t)x2 * x27) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x27 * x2)))))))))))))));
- { uint64_t x30 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x15 * (0x2 * ((uint64_t)x27 * x27))));
- { uint64_t x31 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x28 * x27)) + (0x2 * ((uint64_t)x27 * x28)))));
- { uint64_t x32 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x15 * ((0x2 * ((uint64_t)x26 * x27)) + ((0x2 * ((uint64_t)x28 * x28)) + (0x2 * ((uint64_t)x27 * x26))))));
- { uint64_t x33 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x15 * ((0x2 * ((uint64_t)x24 * x27)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + (0x2 * ((uint64_t)x27 * x24)))))));
- { uint64_t x34 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x15 * ((0x2 * ((uint64_t)x22 * x27)) + ((0x2 * ((uint64_t)x24 * x28)) + ((0x2 * ((uint64_t)x26 * x26)) + ((0x2 * ((uint64_t)x28 * x24)) + (0x2 * ((uint64_t)x27 * x22))))))));
- { uint64_t x35 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x15 * ((0x2 * ((uint64_t)x20 * x27)) + ((0x2 * ((uint64_t)x22 * x28)) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + ((0x2 * ((uint64_t)x28 * x22)) + (0x2 * ((uint64_t)x27 * x20)))))))));
- { uint64_t x36 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x15 * ((0x2 * ((uint64_t)x18 * x27)) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + (0x2 * ((uint64_t)x27 * x18))))))))));
- { uint64_t x37 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x15 * ((0x2 * ((uint64_t)x16 * x27)) + ((0x2 * ((uint64_t)x18 * x28)) + ((0x2 * ((uint64_t)x20 * x26)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + ((0x2 * ((uint64_t)x26 * x20)) + ((0x2 * ((uint64_t)x28 * x18)) + (0x2 * ((uint64_t)x27 * x16)))))))))));
- { uint64_t x38 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x15 * ((0x2 * ((uint64_t)x14 * x27)) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + ((0x2 * ((uint64_t)x22 * x22)) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + (0x2 * ((uint64_t)x27 * x14))))))))))));
- { ℤ x39 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x12 * x27)) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + ((0x2 * ((uint64_t)x18 * x24)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((0x2 * ((uint64_t)x24 * x18)) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + (0x2 * ((uint64_t)x27 * x12)))))))))))));
- { ℤ x40 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x10 * x27)) + ((0x2 * ((uint64_t)x12 * x28)) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + ((0x2 * ((uint64_t)x18 * x22)) + ((0x2 * ((uint64_t)x20 * x20)) + ((0x2 * ((uint64_t)x22 * x18)) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + ((0x2 * ((uint64_t)x28 * x12)) + (0x2 * ((uint64_t)x27 * x10))))))))))))));
- { ℤ x41 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x8 * x27)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + (0x2 * ((uint64_t)x27 * x8)))))))))))))));
- { ℤ x42 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x6 * x27)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + (0x2 * ((uint64_t)x27 * x6))))))))))))))));
- { ℤ x43 = (((uint64_t)x2 * x2) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x4 * x27)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + (0x2 * ((uint64_t)x27 * x4)))))))))))))))));
- { uint64_t x44 = (x43 >> 0x1a);
- { uint32_t x45 = (x43 & 0x3ffffff);
- { ℤ x46 = (x44 +ℤ x42);
- { uint64_t x47 = (x46 >> 0x1a);
- { uint32_t x48 = (x46 & 0x3ffffff);
- { ℤ x49 = (x47 +ℤ x41);
- { uint64_t x50 = (x49 >> 0x1a);
- { uint32_t x51 = (x49 & 0x3ffffff);
- { ℤ x52 = (x50 +ℤ x40);
- { uint64_t x53 = (x52 >> 0x1a);
- { uint32_t x54 = (x52 & 0x3ffffff);
- { ℤ x55 = (x53 +ℤ x39);
- { uint64_t x56 = (x55 >> 0x1a);
- { uint32_t x57 = (x55 & 0x3ffffff);
- { uint64_t x58 = (x56 + x38);
- { uint64_t x59 = (x58 >> 0x1a);
- { uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- { uint64_t x61 = (x59 + x37);
- { uint64_t x62 = (x61 >> 0x1a);
- { uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- { uint64_t x64 = (x62 + x36);
- { uint64_t x65 = (x64 >> 0x1a);
- { uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- { uint64_t x67 = (x65 + x35);
- { uint64_t x68 = (x67 >> 0x1a);
- { uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- { uint64_t x70 = (x68 + x34);
- { uint64_t x71 = (x70 >> 0x1a);
- { uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- { uint64_t x73 = (x71 + x33);
- { uint64_t x74 = (x73 >> 0x1a);
- { uint32_t x75 = ((uint32_t)x73 & 0x3ffffff);
- { uint64_t x76 = (x74 + x32);
- { uint64_t x77 = (x76 >> 0x1a);
- { uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- { uint64_t x79 = (x77 + x31);
- { uint64_t x80 = (x79 >> 0x1a);
- { uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- { uint64_t x82 = (x80 + x30);
- { uint64_t x83 = (x82 >> 0x1a);
- { uint32_t x84 = ((uint32_t)x82 & 0x3ffffff);
- { uint64_t x85 = (x83 + x29);
- { uint64_t x86 = (x85 >> 0x19);
- { uint32_t x87 = ((uint32_t)x85 & 0x1ffffff);
- { uint64_t x88 = (x45 + (0x15 * x86));
- { uint32_t x89 = (uint32_t) (x88 >> 0x1a);
- { uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- { uint32_t x91 = (x89 + x48);
- { uint32_t x92 = (x91 >> 0x1a);
- { uint32_t x93 = (x91 & 0x3ffffff);
- out[0] = x90;
- out[1] = x93;
- out[2] = (x92 + x51);
- out[3] = x54;
- out[4] = x57;
- out[5] = x60;
- out[6] = x63;
- out[7] = x66;
- out[8] = x69;
- out[9] = x72;
- out[10] = x75;
- out[11] = x78;
- out[12] = x81;
- out[13] = x84;
- out[14] = x87;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e389m21_15limbs/fesquare.v b/src/Specific/solinas32_2e389m21_15limbs/fesquare.v
deleted file mode 100644
index 17afb4559..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e389m21_15limbs.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_2e389m21_15limbs/fesquareDisplay.log b/src/Specific/solinas32_2e389m21_15limbs/fesquareDisplay.log
deleted file mode 100644
index 1ea808365..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,72 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x27, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x29 = (((uint64_t)x2 * x27) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x27 * x2)))))))))))))));
- uint64_t x30 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x15 * (0x2 * ((uint64_t)x27 * x27))));
- uint64_t x31 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x28 * x27)) + (0x2 * ((uint64_t)x27 * x28)))));
- uint64_t x32 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x15 * ((0x2 * ((uint64_t)x26 * x27)) + ((0x2 * ((uint64_t)x28 * x28)) + (0x2 * ((uint64_t)x27 * x26))))));
- uint64_t x33 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x15 * ((0x2 * ((uint64_t)x24 * x27)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + (0x2 * ((uint64_t)x27 * x24)))))));
- uint64_t x34 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x15 * ((0x2 * ((uint64_t)x22 * x27)) + ((0x2 * ((uint64_t)x24 * x28)) + ((0x2 * ((uint64_t)x26 * x26)) + ((0x2 * ((uint64_t)x28 * x24)) + (0x2 * ((uint64_t)x27 * x22))))))));
- uint64_t x35 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x15 * ((0x2 * ((uint64_t)x20 * x27)) + ((0x2 * ((uint64_t)x22 * x28)) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + ((0x2 * ((uint64_t)x28 * x22)) + (0x2 * ((uint64_t)x27 * x20)))))))));
- uint64_t x36 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x15 * ((0x2 * ((uint64_t)x18 * x27)) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + (0x2 * ((uint64_t)x27 * x18))))))))));
- uint64_t x37 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x15 * ((0x2 * ((uint64_t)x16 * x27)) + ((0x2 * ((uint64_t)x18 * x28)) + ((0x2 * ((uint64_t)x20 * x26)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + ((0x2 * ((uint64_t)x26 * x20)) + ((0x2 * ((uint64_t)x28 * x18)) + (0x2 * ((uint64_t)x27 * x16)))))))))));
- uint64_t x38 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x15 * ((0x2 * ((uint64_t)x14 * x27)) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + ((0x2 * ((uint64_t)x22 * x22)) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + (0x2 * ((uint64_t)x27 * x14))))))))))));
- ℤ x39 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x12 * x27)) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + ((0x2 * ((uint64_t)x18 * x24)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((0x2 * ((uint64_t)x24 * x18)) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + (0x2 * ((uint64_t)x27 * x12)))))))))))));
- ℤ x40 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x10 * x27)) + ((0x2 * ((uint64_t)x12 * x28)) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + ((0x2 * ((uint64_t)x18 * x22)) + ((0x2 * ((uint64_t)x20 * x20)) + ((0x2 * ((uint64_t)x22 * x18)) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + ((0x2 * ((uint64_t)x28 * x12)) + (0x2 * ((uint64_t)x27 * x10))))))))))))));
- ℤ x41 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x8 * x27)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + (0x2 * ((uint64_t)x27 * x8)))))))))))))));
- ℤ x42 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x6 * x27)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + (0x2 * ((uint64_t)x27 * x6))))))))))))))));
- ℤ x43 = (((uint64_t)x2 * x2) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x4 * x27)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + (0x2 * ((uint64_t)x27 * x4)))))))))))))))));
- uint64_t x44 = (x43 >> 0x1a);
- uint32_t x45 = (x43 & 0x3ffffff);
- ℤ x46 = (x44 +ℤ x42);
- uint64_t x47 = (x46 >> 0x1a);
- uint32_t x48 = (x46 & 0x3ffffff);
- ℤ x49 = (x47 +ℤ x41);
- uint64_t x50 = (x49 >> 0x1a);
- uint32_t x51 = (x49 & 0x3ffffff);
- ℤ x52 = (x50 +ℤ x40);
- uint64_t x53 = (x52 >> 0x1a);
- uint32_t x54 = (x52 & 0x3ffffff);
- ℤ x55 = (x53 +ℤ x39);
- uint64_t x56 = (x55 >> 0x1a);
- uint32_t x57 = (x55 & 0x3ffffff);
- uint64_t x58 = (x56 + x38);
- uint64_t x59 = (x58 >> 0x1a);
- uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- uint64_t x61 = (x59 + x37);
- uint64_t x62 = (x61 >> 0x1a);
- uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- uint64_t x64 = (x62 + x36);
- uint64_t x65 = (x64 >> 0x1a);
- uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- uint64_t x67 = (x65 + x35);
- uint64_t x68 = (x67 >> 0x1a);
- uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- uint64_t x70 = (x68 + x34);
- uint64_t x71 = (x70 >> 0x1a);
- uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- uint64_t x73 = (x71 + x33);
- uint64_t x74 = (x73 >> 0x1a);
- uint32_t x75 = ((uint32_t)x73 & 0x3ffffff);
- uint64_t x76 = (x74 + x32);
- uint64_t x77 = (x76 >> 0x1a);
- uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- uint64_t x79 = (x77 + x31);
- uint64_t x80 = (x79 >> 0x1a);
- uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- uint64_t x82 = (x80 + x30);
- uint64_t x83 = (x82 >> 0x1a);
- uint32_t x84 = ((uint32_t)x82 & 0x3ffffff);
- uint64_t x85 = (x83 + x29);
- uint64_t x86 = (x85 >> 0x19);
- uint32_t x87 = ((uint32_t)x85 & 0x1ffffff);
- uint64_t x88 = (x45 + (0x15 * x86));
- uint32_t x89 = (uint32_t) (x88 >> 0x1a);
- uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- uint32_t x91 = (x89 + x48);
- uint32_t x92 = (x91 >> 0x1a);
- uint32_t x93 = (x91 & 0x3ffffff);
- return (Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, Return x57, Return x54, (x92 + x51), Return x93, Return x90))
-x
- : word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e389m21_15limbs/fesquareDisplay.v b/src/Specific/solinas32_2e389m21_15limbs/fesquareDisplay.v
deleted file mode 100644
index d9823962d..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e389m21_15limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e389m21_15limbs/fesub.c b/src/Specific/solinas32_2e389m21_15limbs/fesub.c
deleted file mode 100644
index d6022b12b..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/fesub.c
+++ /dev/null
@@ -1,48 +0,0 @@
-static void fesub(uint32_t out[15], const uint32_t in1[15], const uint32_t in2[15]) {
- { const uint32_t x30 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x58 = in2[14];
- { const uint32_t x59 = in2[13];
- { const uint32_t x57 = in2[12];
- { const uint32_t x55 = in2[11];
- { const uint32_t x53 = in2[10];
- { const uint32_t x51 = in2[9];
- { const uint32_t x49 = in2[8];
- { const uint32_t x47 = in2[7];
- { const uint32_t x45 = in2[6];
- { const uint32_t x43 = in2[5];
- { const uint32_t x41 = in2[4];
- { const uint32_t x39 = in2[3];
- { const uint32_t x37 = in2[2];
- { const uint32_t x35 = in2[1];
- { const uint32_t x33 = in2[0];
- out[0] = ((0x7ffffd6 + x5) - x33);
- out[1] = ((0x7fffffe + x7) - x35);
- out[2] = ((0x7fffffe + x9) - x37);
- out[3] = ((0x7fffffe + x11) - x39);
- out[4] = ((0x7fffffe + x13) - x41);
- out[5] = ((0x7fffffe + x15) - x43);
- out[6] = ((0x7fffffe + x17) - x45);
- out[7] = ((0x7fffffe + x19) - x47);
- out[8] = ((0x7fffffe + x21) - x49);
- out[9] = ((0x7fffffe + x23) - x51);
- out[10] = ((0x7fffffe + x25) - x53);
- out[11] = ((0x7fffffe + x27) - x55);
- out[12] = ((0x7fffffe + x29) - x57);
- out[13] = ((0x7fffffe + x31) - x59);
- out[14] = ((0x3fffffe + x30) - x58);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e389m21_15limbs/fesub.v b/src/Specific/solinas32_2e389m21_15limbs/fesub.v
deleted file mode 100644
index 4d7b312e6..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e389m21_15limbs.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_2e389m21_15limbs/fesubDisplay.log b/src/Specific/solinas32_2e389m21_15limbs/fesubDisplay.log
deleted file mode 100644
index ba3642347..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x30, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x58, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33))%core,
- (((0x3fffffe + x30) - x58), ((0x7fffffe + x31) - x59), ((0x7fffffe + x29) - x57), ((0x7fffffe + x27) - x55), ((0x7fffffe + x25) - x53), ((0x7fffffe + x23) - x51), ((0x7fffffe + x21) - x49), ((0x7fffffe + x19) - x47), ((0x7fffffe + x17) - x45), ((0x7fffffe + x15) - x43), ((0x7fffffe + x13) - x41), ((0x7fffffe + x11) - x39), ((0x7fffffe + x9) - x37), ((0x7fffffe + x7) - x35), ((0x7ffffd6 + x5) - x33)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e389m21_15limbs/fesubDisplay.v b/src/Specific/solinas32_2e389m21_15limbs/fesubDisplay.v
deleted file mode 100644
index 9afa59740..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e389m21_15limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e389m21_15limbs/freeze.c b/src/Specific/solinas32_2e389m21_15limbs/freeze.c
deleted file mode 100644
index 45136bd66..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/freeze.c
+++ /dev/null
@@ -1,79 +0,0 @@
-static void freeze(uint32_t out[15], const uint32_t in1[15]) {
- { const uint32_t x27 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffeb);
- { uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x4, 0x3ffffff);
- { uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x6, 0x3ffffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x8, 0x3ffffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x10, 0x3ffffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x12, 0x3ffffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x14, 0x3ffffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x16, 0x3ffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x18, 0x3ffffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x20, 0x3ffffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x22, 0x3ffffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x24, 0x3ffffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x26, 0x3ffffff);
- { uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x28, 0x3ffffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x27, 0x1ffffff);
- { uint32_t x74 = cmovznz32(x73, 0x0, 0xffffffff);
- { uint32_t x75 = (x74 & 0x3ffffeb);
- { uint32_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x30, Return x75);
- { uint32_t x79 = (x74 & 0x3ffffff);
- { uint32_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x33, Return x79);
- { uint32_t x83 = (x74 & 0x3ffffff);
- { uint32_t x85, uint8_t x86 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x36, Return x83);
- { uint32_t x87 = (x74 & 0x3ffffff);
- { uint32_t x89, uint8_t x90 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x39, Return x87);
- { uint32_t x91 = (x74 & 0x3ffffff);
- { uint32_t x93, uint8_t x94 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x42, Return x91);
- { uint32_t x95 = (x74 & 0x3ffffff);
- { uint32_t x97, uint8_t x98 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x94, Return x45, Return x95);
- { uint32_t x99 = (x74 & 0x3ffffff);
- { uint32_t x101, uint8_t x102 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x98, Return x48, Return x99);
- { uint32_t x103 = (x74 & 0x3ffffff);
- { uint32_t x105, uint8_t x106 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x102, Return x51, Return x103);
- { uint32_t x107 = (x74 & 0x3ffffff);
- { uint32_t x109, uint8_t x110 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x106, Return x54, Return x107);
- { uint32_t x111 = (x74 & 0x3ffffff);
- { uint32_t x113, uint8_t x114 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x110, Return x57, Return x111);
- { uint32_t x115 = (x74 & 0x3ffffff);
- { uint32_t x117, uint8_t x118 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x114, Return x60, Return x115);
- { uint32_t x119 = (x74 & 0x3ffffff);
- { uint32_t x121, uint8_t x122 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x118, Return x63, Return x119);
- { uint32_t x123 = (x74 & 0x3ffffff);
- { uint32_t x125, uint8_t x126 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x122, Return x66, Return x123);
- { uint32_t x127 = (x74 & 0x3ffffff);
- { uint32_t x129, uint8_t x130 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x126, Return x69, Return x127);
- { uint32_t x131 = (x74 & 0x1ffffff);
- { uint32_t x133, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x130, Return x72, Return x131);
- out[0] = x77;
- out[1] = x81;
- out[2] = x85;
- out[3] = x89;
- out[4] = x93;
- out[5] = x97;
- out[6] = x101;
- out[7] = x105;
- out[8] = x109;
- out[9] = x113;
- out[10] = x117;
- out[11] = x121;
- out[12] = x125;
- out[13] = x129;
- out[14] = x133;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e389m21_15limbs/freeze.v b/src/Specific/solinas32_2e389m21_15limbs/freeze.v
deleted file mode 100644
index 6db9164a8..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e389m21_15limbs.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_2e389m21_15limbs/freezeDisplay.log b/src/Specific/solinas32_2e389m21_15limbs/freezeDisplay.log
deleted file mode 100644
index 9b71caa46..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/freezeDisplay.log
+++ /dev/null
@@ -1,53 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x27, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffeb);
- uint32_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x31, Return x4, 0x3ffffff);
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x34, Return x6, 0x3ffffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x8, 0x3ffffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x10, 0x3ffffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x12, 0x3ffffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x14, 0x3ffffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x16, 0x3ffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x18, 0x3ffffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x20, 0x3ffffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x22, 0x3ffffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x24, 0x3ffffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x26, 0x3ffffff);
- uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x28, 0x3ffffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x27, 0x1ffffff);
- uint32_t x74 = cmovznz32(x73, 0x0, 0xffffffff);
- uint32_t x75 = (x74 & 0x3ffffeb);
- uint32_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x30, Return x75);
- uint32_t x79 = (x74 & 0x3ffffff);
- uint32_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x33, Return x79);
- uint32_t x83 = (x74 & 0x3ffffff);
- uint32_t x85, uint8_t x86 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x36, Return x83);
- uint32_t x87 = (x74 & 0x3ffffff);
- uint32_t x89, uint8_t x90 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x39, Return x87);
- uint32_t x91 = (x74 & 0x3ffffff);
- uint32_t x93, uint8_t x94 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x42, Return x91);
- uint32_t x95 = (x74 & 0x3ffffff);
- uint32_t x97, uint8_t x98 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x94, Return x45, Return x95);
- uint32_t x99 = (x74 & 0x3ffffff);
- uint32_t x101, uint8_t x102 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x98, Return x48, Return x99);
- uint32_t x103 = (x74 & 0x3ffffff);
- uint32_t x105, uint8_t x106 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x102, Return x51, Return x103);
- uint32_t x107 = (x74 & 0x3ffffff);
- uint32_t x109, uint8_t x110 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x106, Return x54, Return x107);
- uint32_t x111 = (x74 & 0x3ffffff);
- uint32_t x113, uint8_t x114 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x110, Return x57, Return x111);
- uint32_t x115 = (x74 & 0x3ffffff);
- uint32_t x117, uint8_t x118 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x114, Return x60, Return x115);
- uint32_t x119 = (x74 & 0x3ffffff);
- uint32_t x121, uint8_t x122 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x118, Return x63, Return x119);
- uint32_t x123 = (x74 & 0x3ffffff);
- uint32_t x125, uint8_t x126 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x122, Return x66, Return x123);
- uint32_t x127 = (x74 & 0x3ffffff);
- uint32_t x129, uint8_t x130 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x126, Return x69, Return x127);
- uint32_t x131 = (x74 & 0x1ffffff);
- uint32_t x133, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x130, Return x72, Return x131);
- (Return x133, Return x129, Return x125, Return x121, Return x117, Return x113, Return x109, Return x105, Return x101, Return x97, Return x93, Return x89, Return x85, Return x81, Return x77))
-x
- : word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e389m21_15limbs/freezeDisplay.v b/src/Specific/solinas32_2e389m21_15limbs/freezeDisplay.v
deleted file mode 100644
index 3ffc3a5c5..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e389m21_15limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e389m21_15limbs/py_interpreter.sh b/src/Specific/solinas32_2e389m21_15limbs/py_interpreter.sh
deleted file mode 100755
index f85e35424..000000000
--- a/src/Specific/solinas32_2e389m21_15limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**389 - 21' -Dmodulus_bytes='25 + 14/15' -Da24='121665'
diff --git a/src/Specific/solinas32_2e389m21_16limbs/CurveParameters.v b/src/Specific/solinas32_2e389m21_16limbs/CurveParameters.v
deleted file mode 100644
index 9a5935518..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^389 - 21
-Base: 24 + 5/16
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 16%nat;
- base := 24 + 5/16;
- bitwidth := 32;
- s := 2^389;
- c := [(1, 21)];
- carry_chains := Some [seq 0 (pred 16); [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_2e389m21_16limbs/Synthesis.v b/src/Specific/solinas32_2e389m21_16limbs/Synthesis.v
deleted file mode 100644
index 642342c2f..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e389m21_16limbs.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_2e389m21_16limbs/compiler.sh b/src/Specific/solinas32_2e389m21_16limbs/compiler.sh
deleted file mode 100755
index 47429856f..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,24,24,25,24,24,25,24,24,25,24,24,25,24,24,24}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='49' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<389) - 21' "$@"
diff --git a/src/Specific/solinas32_2e389m21_16limbs/compilerxx.sh b/src/Specific/solinas32_2e389m21_16limbs/compilerxx.sh
deleted file mode 100755
index e9ebc9683..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,24,24,25,24,24,25,24,24,25,24,24,25,24,24,24}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='49' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<389) - 21' "$@"
diff --git a/src/Specific/solinas32_2e389m21_16limbs/feadd.c b/src/Specific/solinas32_2e389m21_16limbs/feadd.c
deleted file mode 100644
index 18b150e21..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/feadd.c
+++ /dev/null
@@ -1,51 +0,0 @@
-static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- out[0] = (x5 + x35);
- out[1] = (x7 + x37);
- out[2] = (x9 + x39);
- out[3] = (x11 + x41);
- out[4] = (x13 + x43);
- out[5] = (x15 + x45);
- out[6] = (x17 + x47);
- out[7] = (x19 + x49);
- out[8] = (x21 + x51);
- out[9] = (x23 + x53);
- out[10] = (x25 + x55);
- out[11] = (x27 + x57);
- out[12] = (x29 + x59);
- out[13] = (x31 + x61);
- out[14] = (x33 + x63);
- out[15] = (x32 + x62);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e389m21_16limbs/feadd.v b/src/Specific/solinas32_2e389m21_16limbs/feadd.v
deleted file mode 100644
index a22e7abe1..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e389m21_16limbs.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_2e389m21_16limbs/feaddDisplay.log b/src/Specific/solinas32_2e389m21_16limbs/feaddDisplay.log
deleted file mode 100644
index 130c31964..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- ((x32 + x62), (x33 + x63), (x31 + x61), (x29 + x59), (x27 + x57), (x25 + x55), (x23 + x53), (x21 + x51), (x19 + x49), (x17 + x47), (x15 + x45), (x13 + x43), (x11 + x41), (x9 + x39), (x7 + x37), (x5 + x35)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e389m21_16limbs/feaddDisplay.v b/src/Specific/solinas32_2e389m21_16limbs/feaddDisplay.v
deleted file mode 100644
index bfe534c6b..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e389m21_16limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e389m21_16limbs/fecarry.v b/src/Specific/solinas32_2e389m21_16limbs/fecarry.v
deleted file mode 100644
index fdfc82d4b..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e389m21_16limbs.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_2e389m21_16limbs/fecarryDisplay.v b/src/Specific/solinas32_2e389m21_16limbs/fecarryDisplay.v
deleted file mode 100644
index a390ce603..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e389m21_16limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e389m21_16limbs/femul.c b/src/Specific/solinas32_2e389m21_16limbs/femul.c
deleted file mode 100644
index 541d9b657..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/femul.c
+++ /dev/null
@@ -1,120 +0,0 @@
-static void femul(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- { uint64_t x64 = (((uint64_t)x5 * x62) + ((0x2 * ((uint64_t)x7 * x63)) + ((0x2 * ((uint64_t)x9 * x61)) + (((uint64_t)x11 * x59) + ((0x2 * ((uint64_t)x13 * x57)) + ((0x2 * ((uint64_t)x15 * x55)) + (((uint64_t)x17 * x53) + ((0x2 * ((uint64_t)x19 * x51)) + ((0x2 * ((uint64_t)x21 * x49)) + (((uint64_t)x23 * x47) + ((0x2 * ((uint64_t)x25 * x45)) + ((0x2 * ((uint64_t)x27 * x43)) + (((uint64_t)x29 * x41) + ((0x2 * ((uint64_t)x31 * x39)) + ((0x2 * ((uint64_t)x33 * x37)) + ((uint64_t)x32 * x35))))))))))))))));
- { uint64_t x65 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + (((uint64_t)x9 * x59) + (((uint64_t)x11 * x57) + ((0x2 * ((uint64_t)x13 * x55)) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + ((0x2 * ((uint64_t)x19 * x49)) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + ((0x2 * ((uint64_t)x25 * x43)) + (((uint64_t)x27 * x41) + (((uint64_t)x29 * x39) + ((0x2 * ((uint64_t)x31 * x37)) + ((uint64_t)x33 * x35))))))))))))))) + (0x15 * ((uint64_t)x32 * x62)));
- { uint64_t x66 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + (((uint64_t)x29 * x37) + ((uint64_t)x31 * x35)))))))))))))) + (0x15 * (((uint64_t)x33 * x62) + ((uint64_t)x32 * x63))));
- { uint64_t x67 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + (((uint64_t)x11 * x53) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + (((uint64_t)x17 * x47) + ((0x2 * ((uint64_t)x19 * x45)) + ((0x2 * ((uint64_t)x21 * x43)) + (((uint64_t)x23 * x41) + ((0x2 * ((uint64_t)x25 * x39)) + ((0x2 * ((uint64_t)x27 * x37)) + ((uint64_t)x29 * x35))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x31 * x62)) + ((0x2 * ((uint64_t)x33 * x63)) + (0x2 * ((uint64_t)x32 * x61))))));
- { uint64_t x68 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + ((0x2 * ((uint64_t)x19 * x43)) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + ((0x2 * ((uint64_t)x25 * x37)) + ((uint64_t)x27 * x35)))))))))))) + (0x15 * (((uint64_t)x29 * x62) + ((0x2 * ((uint64_t)x31 * x63)) + ((0x2 * ((uint64_t)x33 * x61)) + ((uint64_t)x32 * x59))))));
- { uint64_t x69 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + ((uint64_t)x25 * x35))))))))))) + (0x15 * (((uint64_t)x27 * x62) + (((uint64_t)x29 * x63) + ((0x2 * ((uint64_t)x31 * x61)) + (((uint64_t)x33 * x59) + ((uint64_t)x32 * x57)))))));
- { uint64_t x70 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + (((uint64_t)x17 * x41) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + ((uint64_t)x23 * x35)))))))))) + (0x15 * ((0x2 * ((uint64_t)x25 * x62)) + ((0x2 * ((uint64_t)x27 * x63)) + ((0x2 * ((uint64_t)x29 * x61)) + ((0x2 * ((uint64_t)x31 * x59)) + ((0x2 * ((uint64_t)x33 * x57)) + (0x2 * ((uint64_t)x32 * x55)))))))));
- { uint64_t x71 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + ((0x2 * ((uint64_t)x13 * x43)) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + ((0x2 * ((uint64_t)x19 * x37)) + ((uint64_t)x21 * x35))))))))) + (0x15 * (((uint64_t)x23 * x62) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + (((uint64_t)x29 * x59) + ((0x2 * ((uint64_t)x31 * x57)) + ((0x2 * ((uint64_t)x33 * x55)) + ((uint64_t)x32 * x53)))))))));
- { uint64_t x72 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + ((uint64_t)x19 * x35)))))))) + (0x15 * (((uint64_t)x21 * x62) + (((uint64_t)x23 * x63) + ((0x2 * ((uint64_t)x25 * x61)) + (((uint64_t)x27 * x59) + (((uint64_t)x29 * x57) + ((0x2 * ((uint64_t)x31 * x55)) + (((uint64_t)x33 * x53) + ((uint64_t)x32 * x51))))))))));
- { uint64_t x73 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + (((uint64_t)x11 * x41) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((uint64_t)x17 * x35))))))) + (0x15 * ((0x2 * ((uint64_t)x19 * x62)) + ((0x2 * ((uint64_t)x21 * x63)) + ((0x2 * ((uint64_t)x23 * x61)) + ((0x2 * ((uint64_t)x25 * x59)) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + ((0x2 * ((uint64_t)x31 * x53)) + ((0x2 * ((uint64_t)x33 * x51)) + (0x2 * ((uint64_t)x32 * x49))))))))))));
- { uint64_t x74 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + ((0x2 * ((uint64_t)x13 * x37)) + ((uint64_t)x15 * x35)))))) + (0x15 * (((uint64_t)x17 * x62) + ((0x2 * ((uint64_t)x19 * x63)) + ((0x2 * ((uint64_t)x21 * x61)) + (((uint64_t)x23 * x59) + ((0x2 * ((uint64_t)x25 * x57)) + ((0x2 * ((uint64_t)x27 * x55)) + (((uint64_t)x29 * x53) + ((0x2 * ((uint64_t)x31 * x51)) + ((0x2 * ((uint64_t)x33 * x49)) + ((uint64_t)x32 * x47))))))))))));
- { uint64_t x75 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((uint64_t)x13 * x35))))) + (0x15 * (((uint64_t)x15 * x62) + (((uint64_t)x17 * x63) + ((0x2 * ((uint64_t)x19 * x61)) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + ((0x2 * ((uint64_t)x25 * x55)) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + ((0x2 * ((uint64_t)x31 * x49)) + (((uint64_t)x33 * x47) + ((uint64_t)x32 * x45)))))))))))));
- { uint64_t x76 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + ((uint64_t)x11 * x35)))) + (0x15 * ((0x2 * ((uint64_t)x13 * x62)) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + ((0x2 * ((uint64_t)x21 * x57)) + ((0x2 * ((uint64_t)x23 * x55)) + ((0x2 * ((uint64_t)x25 * x53)) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + ((0x2 * ((uint64_t)x33 * x45)) + (0x2 * ((uint64_t)x32 * x43)))))))))))))));
- { uint64_t x77 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((uint64_t)x9 * x35))) + (0x15 * (((uint64_t)x11 * x62) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + (((uint64_t)x17 * x59) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + (((uint64_t)x23 * x53) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + (((uint64_t)x29 * x47) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + ((uint64_t)x32 * x41)))))))))))))));
- { uint64_t x78 = ((((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)) + (0x15 * (((uint64_t)x9 * x62) + (((uint64_t)x11 * x63) + ((0x2 * ((uint64_t)x13 * x61)) + (((uint64_t)x15 * x59) + (((uint64_t)x17 * x57) + ((0x2 * ((uint64_t)x19 * x55)) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + ((0x2 * ((uint64_t)x25 * x49)) + (((uint64_t)x27 * x47) + (((uint64_t)x29 * x45) + ((0x2 * ((uint64_t)x31 * x43)) + (((uint64_t)x33 * x41) + ((uint64_t)x32 * x39))))))))))))))));
- { uint64_t x79 = (((uint64_t)x5 * x35) + (0x15 * ((0x2 * ((uint64_t)x7 * x62)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + (0x2 * ((uint64_t)x32 * x37))))))))))))))))));
- { uint64_t x80 = (x79 >> 0x19);
- { uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- { uint64_t x82 = (x80 + x78);
- { uint64_t x83 = (x82 >> 0x18);
- { uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- { uint64_t x85 = (x83 + x77);
- { uint64_t x86 = (x85 >> 0x18);
- { uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- { uint64_t x88 = (x86 + x76);
- { uint64_t x89 = (x88 >> 0x19);
- { uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- { uint64_t x91 = (x89 + x75);
- { uint64_t x92 = (x91 >> 0x18);
- { uint32_t x93 = ((uint32_t)x91 & 0xffffff);
- { uint64_t x94 = (x92 + x74);
- { uint64_t x95 = (x94 >> 0x18);
- { uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- { uint64_t x97 = (x95 + x73);
- { uint64_t x98 = (x97 >> 0x19);
- { uint32_t x99 = ((uint32_t)x97 & 0x1ffffff);
- { uint64_t x100 = (x98 + x72);
- { uint64_t x101 = (x100 >> 0x18);
- { uint32_t x102 = ((uint32_t)x100 & 0xffffff);
- { uint64_t x103 = (x101 + x71);
- { uint64_t x104 = (x103 >> 0x18);
- { uint32_t x105 = ((uint32_t)x103 & 0xffffff);
- { uint64_t x106 = (x104 + x70);
- { uint64_t x107 = (x106 >> 0x19);
- { uint32_t x108 = ((uint32_t)x106 & 0x1ffffff);
- { uint64_t x109 = (x107 + x69);
- { uint64_t x110 = (x109 >> 0x18);
- { uint32_t x111 = ((uint32_t)x109 & 0xffffff);
- { uint64_t x112 = (x110 + x68);
- { uint64_t x113 = (x112 >> 0x18);
- { uint32_t x114 = ((uint32_t)x112 & 0xffffff);
- { uint64_t x115 = (x113 + x67);
- { uint64_t x116 = (x115 >> 0x19);
- { uint32_t x117 = ((uint32_t)x115 & 0x1ffffff);
- { uint64_t x118 = (x116 + x66);
- { uint64_t x119 = (x118 >> 0x18);
- { uint32_t x120 = ((uint32_t)x118 & 0xffffff);
- { uint64_t x121 = (x119 + x65);
- { uint64_t x122 = (x121 >> 0x18);
- { uint32_t x123 = ((uint32_t)x121 & 0xffffff);
- { uint64_t x124 = (x122 + x64);
- { uint64_t x125 = (x124 >> 0x18);
- { uint32_t x126 = ((uint32_t)x124 & 0xffffff);
- { uint64_t x127 = (x81 + (0x15 * x125));
- { uint32_t x128 = (uint32_t) (x127 >> 0x19);
- { uint32_t x129 = ((uint32_t)x127 & 0x1ffffff);
- { uint32_t x130 = (x128 + x84);
- { uint32_t x131 = (x130 >> 0x18);
- { uint32_t x132 = (x130 & 0xffffff);
- out[0] = x129;
- out[1] = x132;
- out[2] = (x131 + x87);
- out[3] = x90;
- out[4] = x93;
- out[5] = x96;
- out[6] = x99;
- out[7] = x102;
- out[8] = x105;
- out[9] = x108;
- out[10] = x111;
- out[11] = x114;
- out[12] = x117;
- out[13] = x120;
- out[14] = x123;
- out[15] = x126;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e389m21_16limbs/femul.v b/src/Specific/solinas32_2e389m21_16limbs/femul.v
deleted file mode 100644
index 888ae7164..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e389m21_16limbs.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_2e389m21_16limbs/femulDisplay.log b/src/Specific/solinas32_2e389m21_16limbs/femulDisplay.log
deleted file mode 100644
index 23efc380a..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/femulDisplay.log
+++ /dev/null
@@ -1,76 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- uint64_t x64 = (((uint64_t)x5 * x62) + ((0x2 * ((uint64_t)x7 * x63)) + ((0x2 * ((uint64_t)x9 * x61)) + (((uint64_t)x11 * x59) + ((0x2 * ((uint64_t)x13 * x57)) + ((0x2 * ((uint64_t)x15 * x55)) + (((uint64_t)x17 * x53) + ((0x2 * ((uint64_t)x19 * x51)) + ((0x2 * ((uint64_t)x21 * x49)) + (((uint64_t)x23 * x47) + ((0x2 * ((uint64_t)x25 * x45)) + ((0x2 * ((uint64_t)x27 * x43)) + (((uint64_t)x29 * x41) + ((0x2 * ((uint64_t)x31 * x39)) + ((0x2 * ((uint64_t)x33 * x37)) + ((uint64_t)x32 * x35))))))))))))))));
- uint64_t x65 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + (((uint64_t)x9 * x59) + (((uint64_t)x11 * x57) + ((0x2 * ((uint64_t)x13 * x55)) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + ((0x2 * ((uint64_t)x19 * x49)) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + ((0x2 * ((uint64_t)x25 * x43)) + (((uint64_t)x27 * x41) + (((uint64_t)x29 * x39) + ((0x2 * ((uint64_t)x31 * x37)) + ((uint64_t)x33 * x35))))))))))))))) + (0x15 * ((uint64_t)x32 * x62)));
- uint64_t x66 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + (((uint64_t)x29 * x37) + ((uint64_t)x31 * x35)))))))))))))) + (0x15 * (((uint64_t)x33 * x62) + ((uint64_t)x32 * x63))));
- uint64_t x67 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + (((uint64_t)x11 * x53) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + (((uint64_t)x17 * x47) + ((0x2 * ((uint64_t)x19 * x45)) + ((0x2 * ((uint64_t)x21 * x43)) + (((uint64_t)x23 * x41) + ((0x2 * ((uint64_t)x25 * x39)) + ((0x2 * ((uint64_t)x27 * x37)) + ((uint64_t)x29 * x35))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x31 * x62)) + ((0x2 * ((uint64_t)x33 * x63)) + (0x2 * ((uint64_t)x32 * x61))))));
- uint64_t x68 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + ((0x2 * ((uint64_t)x19 * x43)) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + ((0x2 * ((uint64_t)x25 * x37)) + ((uint64_t)x27 * x35)))))))))))) + (0x15 * (((uint64_t)x29 * x62) + ((0x2 * ((uint64_t)x31 * x63)) + ((0x2 * ((uint64_t)x33 * x61)) + ((uint64_t)x32 * x59))))));
- uint64_t x69 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + ((uint64_t)x25 * x35))))))))))) + (0x15 * (((uint64_t)x27 * x62) + (((uint64_t)x29 * x63) + ((0x2 * ((uint64_t)x31 * x61)) + (((uint64_t)x33 * x59) + ((uint64_t)x32 * x57)))))));
- uint64_t x70 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + (((uint64_t)x17 * x41) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + ((uint64_t)x23 * x35)))))))))) + (0x15 * ((0x2 * ((uint64_t)x25 * x62)) + ((0x2 * ((uint64_t)x27 * x63)) + ((0x2 * ((uint64_t)x29 * x61)) + ((0x2 * ((uint64_t)x31 * x59)) + ((0x2 * ((uint64_t)x33 * x57)) + (0x2 * ((uint64_t)x32 * x55)))))))));
- uint64_t x71 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + ((0x2 * ((uint64_t)x13 * x43)) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + ((0x2 * ((uint64_t)x19 * x37)) + ((uint64_t)x21 * x35))))))))) + (0x15 * (((uint64_t)x23 * x62) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + (((uint64_t)x29 * x59) + ((0x2 * ((uint64_t)x31 * x57)) + ((0x2 * ((uint64_t)x33 * x55)) + ((uint64_t)x32 * x53)))))))));
- uint64_t x72 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + ((uint64_t)x19 * x35)))))))) + (0x15 * (((uint64_t)x21 * x62) + (((uint64_t)x23 * x63) + ((0x2 * ((uint64_t)x25 * x61)) + (((uint64_t)x27 * x59) + (((uint64_t)x29 * x57) + ((0x2 * ((uint64_t)x31 * x55)) + (((uint64_t)x33 * x53) + ((uint64_t)x32 * x51))))))))));
- uint64_t x73 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + (((uint64_t)x11 * x41) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((uint64_t)x17 * x35))))))) + (0x15 * ((0x2 * ((uint64_t)x19 * x62)) + ((0x2 * ((uint64_t)x21 * x63)) + ((0x2 * ((uint64_t)x23 * x61)) + ((0x2 * ((uint64_t)x25 * x59)) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + ((0x2 * ((uint64_t)x31 * x53)) + ((0x2 * ((uint64_t)x33 * x51)) + (0x2 * ((uint64_t)x32 * x49))))))))))));
- uint64_t x74 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + ((0x2 * ((uint64_t)x13 * x37)) + ((uint64_t)x15 * x35)))))) + (0x15 * (((uint64_t)x17 * x62) + ((0x2 * ((uint64_t)x19 * x63)) + ((0x2 * ((uint64_t)x21 * x61)) + (((uint64_t)x23 * x59) + ((0x2 * ((uint64_t)x25 * x57)) + ((0x2 * ((uint64_t)x27 * x55)) + (((uint64_t)x29 * x53) + ((0x2 * ((uint64_t)x31 * x51)) + ((0x2 * ((uint64_t)x33 * x49)) + ((uint64_t)x32 * x47))))))))))));
- uint64_t x75 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((uint64_t)x13 * x35))))) + (0x15 * (((uint64_t)x15 * x62) + (((uint64_t)x17 * x63) + ((0x2 * ((uint64_t)x19 * x61)) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + ((0x2 * ((uint64_t)x25 * x55)) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + ((0x2 * ((uint64_t)x31 * x49)) + (((uint64_t)x33 * x47) + ((uint64_t)x32 * x45)))))))))))));
- uint64_t x76 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + ((uint64_t)x11 * x35)))) + (0x15 * ((0x2 * ((uint64_t)x13 * x62)) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + ((0x2 * ((uint64_t)x21 * x57)) + ((0x2 * ((uint64_t)x23 * x55)) + ((0x2 * ((uint64_t)x25 * x53)) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + ((0x2 * ((uint64_t)x33 * x45)) + (0x2 * ((uint64_t)x32 * x43)))))))))))))));
- uint64_t x77 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((uint64_t)x9 * x35))) + (0x15 * (((uint64_t)x11 * x62) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + (((uint64_t)x17 * x59) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + (((uint64_t)x23 * x53) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + (((uint64_t)x29 * x47) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + ((uint64_t)x32 * x41)))))))))))))));
- uint64_t x78 = ((((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)) + (0x15 * (((uint64_t)x9 * x62) + (((uint64_t)x11 * x63) + ((0x2 * ((uint64_t)x13 * x61)) + (((uint64_t)x15 * x59) + (((uint64_t)x17 * x57) + ((0x2 * ((uint64_t)x19 * x55)) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + ((0x2 * ((uint64_t)x25 * x49)) + (((uint64_t)x27 * x47) + (((uint64_t)x29 * x45) + ((0x2 * ((uint64_t)x31 * x43)) + (((uint64_t)x33 * x41) + ((uint64_t)x32 * x39))))))))))))))));
- uint64_t x79 = (((uint64_t)x5 * x35) + (0x15 * ((0x2 * ((uint64_t)x7 * x62)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + (0x2 * ((uint64_t)x32 * x37))))))))))))))))));
- uint64_t x80 = (x79 >> 0x19);
- uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- uint64_t x82 = (x80 + x78);
- uint64_t x83 = (x82 >> 0x18);
- uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- uint64_t x85 = (x83 + x77);
- uint64_t x86 = (x85 >> 0x18);
- uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- uint64_t x88 = (x86 + x76);
- uint64_t x89 = (x88 >> 0x19);
- uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- uint64_t x91 = (x89 + x75);
- uint64_t x92 = (x91 >> 0x18);
- uint32_t x93 = ((uint32_t)x91 & 0xffffff);
- uint64_t x94 = (x92 + x74);
- uint64_t x95 = (x94 >> 0x18);
- uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- uint64_t x97 = (x95 + x73);
- uint64_t x98 = (x97 >> 0x19);
- uint32_t x99 = ((uint32_t)x97 & 0x1ffffff);
- uint64_t x100 = (x98 + x72);
- uint64_t x101 = (x100 >> 0x18);
- uint32_t x102 = ((uint32_t)x100 & 0xffffff);
- uint64_t x103 = (x101 + x71);
- uint64_t x104 = (x103 >> 0x18);
- uint32_t x105 = ((uint32_t)x103 & 0xffffff);
- uint64_t x106 = (x104 + x70);
- uint64_t x107 = (x106 >> 0x19);
- uint32_t x108 = ((uint32_t)x106 & 0x1ffffff);
- uint64_t x109 = (x107 + x69);
- uint64_t x110 = (x109 >> 0x18);
- uint32_t x111 = ((uint32_t)x109 & 0xffffff);
- uint64_t x112 = (x110 + x68);
- uint64_t x113 = (x112 >> 0x18);
- uint32_t x114 = ((uint32_t)x112 & 0xffffff);
- uint64_t x115 = (x113 + x67);
- uint64_t x116 = (x115 >> 0x19);
- uint32_t x117 = ((uint32_t)x115 & 0x1ffffff);
- uint64_t x118 = (x116 + x66);
- uint64_t x119 = (x118 >> 0x18);
- uint32_t x120 = ((uint32_t)x118 & 0xffffff);
- uint64_t x121 = (x119 + x65);
- uint64_t x122 = (x121 >> 0x18);
- uint32_t x123 = ((uint32_t)x121 & 0xffffff);
- uint64_t x124 = (x122 + x64);
- uint64_t x125 = (x124 >> 0x18);
- uint32_t x126 = ((uint32_t)x124 & 0xffffff);
- uint64_t x127 = (x81 + (0x15 * x125));
- uint32_t x128 = (uint32_t) (x127 >> 0x19);
- uint32_t x129 = ((uint32_t)x127 & 0x1ffffff);
- uint32_t x130 = (x128 + x84);
- uint32_t x131 = (x130 >> 0x18);
- uint32_t x132 = (x130 & 0xffffff);
- return (Return x126, Return x123, Return x120, Return x117, Return x114, Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, (x131 + x87), Return x132, Return x129))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e389m21_16limbs/femulDisplay.v b/src/Specific/solinas32_2e389m21_16limbs/femulDisplay.v
deleted file mode 100644
index d7cc968fc..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e389m21_16limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e389m21_16limbs/fesquare.c b/src/Specific/solinas32_2e389m21_16limbs/fesquare.c
deleted file mode 100644
index 430ed0b75..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/fesquare.c
+++ /dev/null
@@ -1,104 +0,0 @@
-static void fesquare(uint32_t out[16], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x31 = (((uint64_t)x2 * x29) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + (((uint64_t)x8 * x26) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + (((uint64_t)x26 * x8) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x29 * x2))))))))))))))));
- { uint64_t x32 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + ((0x2 * ((uint64_t)x10 * x22)) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + ((0x2 * ((uint64_t)x22 * x10)) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x15 * ((uint64_t)x29 * x29)));
- { uint64_t x33 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x15 * (((uint64_t)x30 * x29) + ((uint64_t)x29 * x30))));
- { uint64_t x34 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x28 * x29)) + ((0x2 * ((uint64_t)x30 * x30)) + (0x2 * ((uint64_t)x29 * x28))))));
- { uint64_t x35 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x15 * (((uint64_t)x26 * x29) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((uint64_t)x29 * x26))))));
- { uint64_t x36 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x15 * (((uint64_t)x24 * x29) + (((uint64_t)x26 * x30) + ((0x2 * ((uint64_t)x28 * x28)) + (((uint64_t)x30 * x26) + ((uint64_t)x29 * x24)))))));
- { uint64_t x37 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x15 * ((0x2 * ((uint64_t)x22 * x29)) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + (0x2 * ((uint64_t)x29 * x22)))))))));
- { uint64_t x38 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x15 * (((uint64_t)x20 * x29) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + (((uint64_t)x26 * x26) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + ((uint64_t)x29 * x20)))))))));
- { uint64_t x39 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x15 * (((uint64_t)x18 * x29) + (((uint64_t)x20 * x30) + ((0x2 * ((uint64_t)x22 * x28)) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + ((0x2 * ((uint64_t)x28 * x22)) + (((uint64_t)x30 * x20) + ((uint64_t)x29 * x18))))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x15 * ((0x2 * ((uint64_t)x16 * x29)) + ((0x2 * ((uint64_t)x18 * x30)) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + ((0x2 * ((uint64_t)x30 * x18)) + (0x2 * ((uint64_t)x29 * x16))))))))))));
- { uint64_t x41 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x15 * (((uint64_t)x14 * x29) + ((0x2 * ((uint64_t)x16 * x30)) + ((0x2 * ((uint64_t)x18 * x28)) + (((uint64_t)x20 * x26) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + (((uint64_t)x26 * x20) + ((0x2 * ((uint64_t)x28 * x18)) + ((0x2 * ((uint64_t)x30 * x16)) + ((uint64_t)x29 * x14))))))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x15 * (((uint64_t)x12 * x29) + (((uint64_t)x14 * x30) + ((0x2 * ((uint64_t)x16 * x28)) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + ((0x2 * ((uint64_t)x28 * x16)) + (((uint64_t)x30 * x14) + ((uint64_t)x29 * x12)))))))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x15 * ((0x2 * ((uint64_t)x10 * x29)) + ((0x2 * ((uint64_t)x12 * x30)) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + ((0x2 * ((uint64_t)x18 * x24)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((0x2 * ((uint64_t)x24 * x18)) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + ((0x2 * ((uint64_t)x30 * x12)) + (0x2 * ((uint64_t)x29 * x10)))))))))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x15 * (((uint64_t)x8 * x29) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + (((uint64_t)x14 * x26) + ((0x2 * ((uint64_t)x16 * x24)) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + ((0x2 * ((uint64_t)x24 * x16)) + (((uint64_t)x26 * x14) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + ((uint64_t)x29 * x8)))))))))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x15 * (((uint64_t)x6 * x29) + (((uint64_t)x8 * x30) + ((0x2 * ((uint64_t)x10 * x28)) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + ((0x2 * ((uint64_t)x28 * x10)) + (((uint64_t)x30 * x8) + ((uint64_t)x29 * x6))))))))))))))));
- { uint64_t x46 = (((uint64_t)x2 * x2) + (0x15 * ((0x2 * ((uint64_t)x4 * x29)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + (0x2 * ((uint64_t)x29 * x4))))))))))))))))));
- { uint64_t x47 = (x46 >> 0x19);
- { uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- { uint64_t x49 = (x47 + x45);
- { uint64_t x50 = (x49 >> 0x18);
- { uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- { uint64_t x52 = (x50 + x44);
- { uint64_t x53 = (x52 >> 0x18);
- { uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- { uint64_t x55 = (x53 + x43);
- { uint64_t x56 = (x55 >> 0x19);
- { uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- { uint64_t x58 = (x56 + x42);
- { uint64_t x59 = (x58 >> 0x18);
- { uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- { uint64_t x61 = (x59 + x41);
- { uint64_t x62 = (x61 >> 0x18);
- { uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- { uint64_t x64 = (x62 + x40);
- { uint64_t x65 = (x64 >> 0x19);
- { uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- { uint64_t x67 = (x65 + x39);
- { uint64_t x68 = (x67 >> 0x18);
- { uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- { uint64_t x70 = (x68 + x38);
- { uint64_t x71 = (x70 >> 0x18);
- { uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- { uint64_t x73 = (x71 + x37);
- { uint64_t x74 = (x73 >> 0x19);
- { uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- { uint64_t x76 = (x74 + x36);
- { uint64_t x77 = (x76 >> 0x18);
- { uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- { uint64_t x79 = (x77 + x35);
- { uint64_t x80 = (x79 >> 0x18);
- { uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- { uint64_t x82 = (x80 + x34);
- { uint64_t x83 = (x82 >> 0x19);
- { uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- { uint64_t x85 = (x83 + x33);
- { uint64_t x86 = (x85 >> 0x18);
- { uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- { uint64_t x88 = (x86 + x32);
- { uint64_t x89 = (x88 >> 0x18);
- { uint32_t x90 = ((uint32_t)x88 & 0xffffff);
- { uint64_t x91 = (x89 + x31);
- { uint64_t x92 = (x91 >> 0x18);
- { uint32_t x93 = ((uint32_t)x91 & 0xffffff);
- { uint64_t x94 = (x48 + (0x15 * x92));
- { uint32_t x95 = (uint32_t) (x94 >> 0x19);
- { uint32_t x96 = ((uint32_t)x94 & 0x1ffffff);
- { uint32_t x97 = (x95 + x51);
- { uint32_t x98 = (x97 >> 0x18);
- { uint32_t x99 = (x97 & 0xffffff);
- out[0] = x96;
- out[1] = x99;
- out[2] = (x98 + x54);
- out[3] = x57;
- out[4] = x60;
- out[5] = x63;
- out[6] = x66;
- out[7] = x69;
- out[8] = x72;
- out[9] = x75;
- out[10] = x78;
- out[11] = x81;
- out[12] = x84;
- out[13] = x87;
- out[14] = x90;
- out[15] = x93;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e389m21_16limbs/fesquare.v b/src/Specific/solinas32_2e389m21_16limbs/fesquare.v
deleted file mode 100644
index 21d57b619..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e389m21_16limbs.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_2e389m21_16limbs/fesquareDisplay.log b/src/Specific/solinas32_2e389m21_16limbs/fesquareDisplay.log
deleted file mode 100644
index 1e95b9d9b..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,76 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x31 = (((uint64_t)x2 * x29) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + (((uint64_t)x8 * x26) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + (((uint64_t)x26 * x8) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x29 * x2))))))))))))))));
- uint64_t x32 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + ((0x2 * ((uint64_t)x10 * x22)) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + ((0x2 * ((uint64_t)x22 * x10)) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x15 * ((uint64_t)x29 * x29)));
- uint64_t x33 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x15 * (((uint64_t)x30 * x29) + ((uint64_t)x29 * x30))));
- uint64_t x34 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x28 * x29)) + ((0x2 * ((uint64_t)x30 * x30)) + (0x2 * ((uint64_t)x29 * x28))))));
- uint64_t x35 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x15 * (((uint64_t)x26 * x29) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((uint64_t)x29 * x26))))));
- uint64_t x36 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x15 * (((uint64_t)x24 * x29) + (((uint64_t)x26 * x30) + ((0x2 * ((uint64_t)x28 * x28)) + (((uint64_t)x30 * x26) + ((uint64_t)x29 * x24)))))));
- uint64_t x37 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x15 * ((0x2 * ((uint64_t)x22 * x29)) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + (0x2 * ((uint64_t)x29 * x22)))))))));
- uint64_t x38 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x15 * (((uint64_t)x20 * x29) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + (((uint64_t)x26 * x26) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + ((uint64_t)x29 * x20)))))))));
- uint64_t x39 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x15 * (((uint64_t)x18 * x29) + (((uint64_t)x20 * x30) + ((0x2 * ((uint64_t)x22 * x28)) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + ((0x2 * ((uint64_t)x28 * x22)) + (((uint64_t)x30 * x20) + ((uint64_t)x29 * x18))))))))));
- uint64_t x40 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x15 * ((0x2 * ((uint64_t)x16 * x29)) + ((0x2 * ((uint64_t)x18 * x30)) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + ((0x2 * ((uint64_t)x30 * x18)) + (0x2 * ((uint64_t)x29 * x16))))))))))));
- uint64_t x41 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x15 * (((uint64_t)x14 * x29) + ((0x2 * ((uint64_t)x16 * x30)) + ((0x2 * ((uint64_t)x18 * x28)) + (((uint64_t)x20 * x26) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + (((uint64_t)x26 * x20) + ((0x2 * ((uint64_t)x28 * x18)) + ((0x2 * ((uint64_t)x30 * x16)) + ((uint64_t)x29 * x14))))))))))));
- uint64_t x42 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x15 * (((uint64_t)x12 * x29) + (((uint64_t)x14 * x30) + ((0x2 * ((uint64_t)x16 * x28)) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + ((0x2 * ((uint64_t)x28 * x16)) + (((uint64_t)x30 * x14) + ((uint64_t)x29 * x12)))))))))))));
- uint64_t x43 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x15 * ((0x2 * ((uint64_t)x10 * x29)) + ((0x2 * ((uint64_t)x12 * x30)) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + ((0x2 * ((uint64_t)x18 * x24)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((0x2 * ((uint64_t)x24 * x18)) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + ((0x2 * ((uint64_t)x30 * x12)) + (0x2 * ((uint64_t)x29 * x10)))))))))))))));
- uint64_t x44 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x15 * (((uint64_t)x8 * x29) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + (((uint64_t)x14 * x26) + ((0x2 * ((uint64_t)x16 * x24)) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + ((0x2 * ((uint64_t)x24 * x16)) + (((uint64_t)x26 * x14) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + ((uint64_t)x29 * x8)))))))))))))));
- uint64_t x45 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x15 * (((uint64_t)x6 * x29) + (((uint64_t)x8 * x30) + ((0x2 * ((uint64_t)x10 * x28)) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + ((0x2 * ((uint64_t)x28 * x10)) + (((uint64_t)x30 * x8) + ((uint64_t)x29 * x6))))))))))))))));
- uint64_t x46 = (((uint64_t)x2 * x2) + (0x15 * ((0x2 * ((uint64_t)x4 * x29)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + (0x2 * ((uint64_t)x29 * x4))))))))))))))))));
- uint64_t x47 = (x46 >> 0x19);
- uint32_t x48 = ((uint32_t)x46 & 0x1ffffff);
- uint64_t x49 = (x47 + x45);
- uint64_t x50 = (x49 >> 0x18);
- uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- uint64_t x52 = (x50 + x44);
- uint64_t x53 = (x52 >> 0x18);
- uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- uint64_t x55 = (x53 + x43);
- uint64_t x56 = (x55 >> 0x19);
- uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- uint64_t x58 = (x56 + x42);
- uint64_t x59 = (x58 >> 0x18);
- uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- uint64_t x61 = (x59 + x41);
- uint64_t x62 = (x61 >> 0x18);
- uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- uint64_t x64 = (x62 + x40);
- uint64_t x65 = (x64 >> 0x19);
- uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- uint64_t x67 = (x65 + x39);
- uint64_t x68 = (x67 >> 0x18);
- uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- uint64_t x70 = (x68 + x38);
- uint64_t x71 = (x70 >> 0x18);
- uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- uint64_t x73 = (x71 + x37);
- uint64_t x74 = (x73 >> 0x19);
- uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- uint64_t x76 = (x74 + x36);
- uint64_t x77 = (x76 >> 0x18);
- uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- uint64_t x79 = (x77 + x35);
- uint64_t x80 = (x79 >> 0x18);
- uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- uint64_t x82 = (x80 + x34);
- uint64_t x83 = (x82 >> 0x19);
- uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- uint64_t x85 = (x83 + x33);
- uint64_t x86 = (x85 >> 0x18);
- uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- uint64_t x88 = (x86 + x32);
- uint64_t x89 = (x88 >> 0x18);
- uint32_t x90 = ((uint32_t)x88 & 0xffffff);
- uint64_t x91 = (x89 + x31);
- uint64_t x92 = (x91 >> 0x18);
- uint32_t x93 = ((uint32_t)x91 & 0xffffff);
- uint64_t x94 = (x48 + (0x15 * x92));
- uint32_t x95 = (uint32_t) (x94 >> 0x19);
- uint32_t x96 = ((uint32_t)x94 & 0x1ffffff);
- uint32_t x97 = (x95 + x51);
- uint32_t x98 = (x97 >> 0x18);
- uint32_t x99 = (x97 & 0xffffff);
- return (Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, Return x57, (x98 + x54), Return x99, Return x96))
-x
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e389m21_16limbs/fesquareDisplay.v b/src/Specific/solinas32_2e389m21_16limbs/fesquareDisplay.v
deleted file mode 100644
index 3c86ac785..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e389m21_16limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e389m21_16limbs/fesub.c b/src/Specific/solinas32_2e389m21_16limbs/fesub.c
deleted file mode 100644
index 31289b421..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/fesub.c
+++ /dev/null
@@ -1,51 +0,0 @@
-static void fesub(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- out[0] = ((0x3ffffd6 + x5) - x35);
- out[1] = ((0x1fffffe + x7) - x37);
- out[2] = ((0x1fffffe + x9) - x39);
- out[3] = ((0x3fffffe + x11) - x41);
- out[4] = ((0x1fffffe + x13) - x43);
- out[5] = ((0x1fffffe + x15) - x45);
- out[6] = ((0x3fffffe + x17) - x47);
- out[7] = ((0x1fffffe + x19) - x49);
- out[8] = ((0x1fffffe + x21) - x51);
- out[9] = ((0x3fffffe + x23) - x53);
- out[10] = ((0x1fffffe + x25) - x55);
- out[11] = ((0x1fffffe + x27) - x57);
- out[12] = ((0x3fffffe + x29) - x59);
- out[13] = ((0x1fffffe + x31) - x61);
- out[14] = ((0x1fffffe + x33) - x63);
- out[15] = ((0x1fffffe + x32) - x62);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e389m21_16limbs/fesub.v b/src/Specific/solinas32_2e389m21_16limbs/fesub.v
deleted file mode 100644
index 774b8af84..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e389m21_16limbs.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_2e389m21_16limbs/fesubDisplay.log b/src/Specific/solinas32_2e389m21_16limbs/fesubDisplay.log
deleted file mode 100644
index 7ce38839e..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- (((0x1fffffe + x32) - x62), ((0x1fffffe + x33) - x63), ((0x1fffffe + x31) - x61), ((0x3fffffe + x29) - x59), ((0x1fffffe + x27) - x57), ((0x1fffffe + x25) - x55), ((0x3fffffe + x23) - x53), ((0x1fffffe + x21) - x51), ((0x1fffffe + x19) - x49), ((0x3fffffe + x17) - x47), ((0x1fffffe + x15) - x45), ((0x1fffffe + x13) - x43), ((0x3fffffe + x11) - x41), ((0x1fffffe + x9) - x39), ((0x1fffffe + x7) - x37), ((0x3ffffd6 + x5) - x35)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e389m21_16limbs/fesubDisplay.v b/src/Specific/solinas32_2e389m21_16limbs/fesubDisplay.v
deleted file mode 100644
index 01c887743..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e389m21_16limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e389m21_16limbs/freeze.c b/src/Specific/solinas32_2e389m21_16limbs/freeze.c
deleted file mode 100644
index 54164cff7..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/freeze.c
+++ /dev/null
@@ -1,84 +0,0 @@
-static void freeze(uint32_t out[16], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffeb);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x4, 0xffffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x6, 0xffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x8, 0x1ffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x10, 0xffffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x12, 0xffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x14, 0x1ffffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x16, 0xffffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x18, 0xffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x20, 0x1ffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x22, 0xffffff);
- { uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x24, 0xffffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x26, 0x1ffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x28, 0xffffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x30, 0xffffff);
- { uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x29, 0xffffff);
- { uint32_t x79 = cmovznz32(x78, 0x0, 0xffffffff);
- { uint32_t x80 = (x79 & 0x1ffffeb);
- { uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x32, Return x80);
- { uint32_t x84 = (x79 & 0xffffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x35, Return x84);
- { uint32_t x88 = (x79 & 0xffffff);
- { uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x38, Return x88);
- { uint32_t x92 = (x79 & 0x1ffffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x41, Return x92);
- { uint32_t x96 = (x79 & 0xffffff);
- { uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x44, Return x96);
- { uint32_t x100 = (x79 & 0xffffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x47, Return x100);
- { uint32_t x104 = (x79 & 0x1ffffff);
- { uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x50, Return x104);
- { uint32_t x108 = (x79 & 0xffffff);
- { uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x53, Return x108);
- { uint32_t x112 = (x79 & 0xffffff);
- { uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x56, Return x112);
- { uint32_t x116 = (x79 & 0x1ffffff);
- { uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x59, Return x116);
- { uint32_t x120 = (x79 & 0xffffff);
- { uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x62, Return x120);
- { uint32_t x124 = (x79 & 0xffffff);
- { uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x65, Return x124);
- { uint32_t x128 = (x79 & 0x1ffffff);
- { uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x68, Return x128);
- { uint32_t x132 = (x79 & 0xffffff);
- { uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x71, Return x132);
- { uint32_t x136 = (x79 & 0xffffff);
- { uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x74, Return x136);
- { uint32_t x140 = (x79 & 0xffffff);
- { uint32_t x142, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x77, Return x140);
- out[0] = x82;
- out[1] = x86;
- out[2] = x90;
- out[3] = x94;
- out[4] = x98;
- out[5] = x102;
- out[6] = x106;
- out[7] = x110;
- out[8] = x114;
- out[9] = x118;
- out[10] = x122;
- out[11] = x126;
- out[12] = x130;
- out[13] = x134;
- out[14] = x138;
- out[15] = x142;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e389m21_16limbs/freeze.v b/src/Specific/solinas32_2e389m21_16limbs/freeze.v
deleted file mode 100644
index 1a52da835..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e389m21_16limbs.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_2e389m21_16limbs/freezeDisplay.log b/src/Specific/solinas32_2e389m21_16limbs/freezeDisplay.log
deleted file mode 100644
index eccd435b4..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/freezeDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffeb);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x4, 0xffffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x6, 0xffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x8, 0x1ffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x10, 0xffffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x12, 0xffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x14, 0x1ffffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x16, 0xffffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x18, 0xffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x20, 0x1ffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x22, 0xffffff);
- uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x24, 0xffffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x26, 0x1ffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x28, 0xffffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x30, 0xffffff);
- uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x29, 0xffffff);
- uint32_t x79 = cmovznz32(x78, 0x0, 0xffffffff);
- uint32_t x80 = (x79 & 0x1ffffeb);
- uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x32, Return x80);
- uint32_t x84 = (x79 & 0xffffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x35, Return x84);
- uint32_t x88 = (x79 & 0xffffff);
- uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x38, Return x88);
- uint32_t x92 = (x79 & 0x1ffffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x41, Return x92);
- uint32_t x96 = (x79 & 0xffffff);
- uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x44, Return x96);
- uint32_t x100 = (x79 & 0xffffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x47, Return x100);
- uint32_t x104 = (x79 & 0x1ffffff);
- uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x50, Return x104);
- uint32_t x108 = (x79 & 0xffffff);
- uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x53, Return x108);
- uint32_t x112 = (x79 & 0xffffff);
- uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x56, Return x112);
- uint32_t x116 = (x79 & 0x1ffffff);
- uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x59, Return x116);
- uint32_t x120 = (x79 & 0xffffff);
- uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x62, Return x120);
- uint32_t x124 = (x79 & 0xffffff);
- uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x65, Return x124);
- uint32_t x128 = (x79 & 0x1ffffff);
- uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x68, Return x128);
- uint32_t x132 = (x79 & 0xffffff);
- uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x71, Return x132);
- uint32_t x136 = (x79 & 0xffffff);
- uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x74, Return x136);
- uint32_t x140 = (x79 & 0xffffff);
- uint32_t x142, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x77, Return x140);
- (Return x142, Return x138, Return x134, Return x130, Return x126, Return x122, Return x118, Return x114, Return x110, Return x106, Return x102, Return x98, Return x94, Return x90, Return x86, Return x82))
-x
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e389m21_16limbs/freezeDisplay.v b/src/Specific/solinas32_2e389m21_16limbs/freezeDisplay.v
deleted file mode 100644
index 2b74f3b84..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e389m21_16limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e389m21_16limbs/py_interpreter.sh b/src/Specific/solinas32_2e389m21_16limbs/py_interpreter.sh
deleted file mode 100755
index 3f8d9d9d7..000000000
--- a/src/Specific/solinas32_2e389m21_16limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**389 - 21' -Dmodulus_bytes='24 + 5/16' -Da24='121665'
diff --git a/src/Specific/solinas32_2e401m31_16limbs/CurveParameters.v b/src/Specific/solinas32_2e401m31_16limbs/CurveParameters.v
deleted file mode 100644
index 9b085df66..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^401 - 31
-Base: 25 + 1/16
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 16%nat;
- base := 25 + 1/16;
- bitwidth := 32;
- s := 2^401;
- c := [(1, 31)];
- carry_chains := Some [seq 0 (pred 16); [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_2e401m31_16limbs/Synthesis.v b/src/Specific/solinas32_2e401m31_16limbs/Synthesis.v
deleted file mode 100644
index 256652b10..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e401m31_16limbs.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_2e401m31_16limbs/compiler.sh b/src/Specific/solinas32_2e401m31_16limbs/compiler.sh
deleted file mode 100755
index 3672de690..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='51' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<401) - 31' "$@"
diff --git a/src/Specific/solinas32_2e401m31_16limbs/compilerxx.sh b/src/Specific/solinas32_2e401m31_16limbs/compilerxx.sh
deleted file mode 100755
index 4c91e49c7..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='51' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<401) - 31' "$@"
diff --git a/src/Specific/solinas32_2e401m31_16limbs/feadd.c b/src/Specific/solinas32_2e401m31_16limbs/feadd.c
deleted file mode 100644
index 18b150e21..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/feadd.c
+++ /dev/null
@@ -1,51 +0,0 @@
-static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- out[0] = (x5 + x35);
- out[1] = (x7 + x37);
- out[2] = (x9 + x39);
- out[3] = (x11 + x41);
- out[4] = (x13 + x43);
- out[5] = (x15 + x45);
- out[6] = (x17 + x47);
- out[7] = (x19 + x49);
- out[8] = (x21 + x51);
- out[9] = (x23 + x53);
- out[10] = (x25 + x55);
- out[11] = (x27 + x57);
- out[12] = (x29 + x59);
- out[13] = (x31 + x61);
- out[14] = (x33 + x63);
- out[15] = (x32 + x62);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e401m31_16limbs/feadd.v b/src/Specific/solinas32_2e401m31_16limbs/feadd.v
deleted file mode 100644
index 5e8c3253e..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e401m31_16limbs.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_2e401m31_16limbs/feaddDisplay.log b/src/Specific/solinas32_2e401m31_16limbs/feaddDisplay.log
deleted file mode 100644
index 130c31964..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- ((x32 + x62), (x33 + x63), (x31 + x61), (x29 + x59), (x27 + x57), (x25 + x55), (x23 + x53), (x21 + x51), (x19 + x49), (x17 + x47), (x15 + x45), (x13 + x43), (x11 + x41), (x9 + x39), (x7 + x37), (x5 + x35)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e401m31_16limbs/feaddDisplay.v b/src/Specific/solinas32_2e401m31_16limbs/feaddDisplay.v
deleted file mode 100644
index 85fdd4b5c..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e401m31_16limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e401m31_16limbs/fecarry.v b/src/Specific/solinas32_2e401m31_16limbs/fecarry.v
deleted file mode 100644
index c4c255ad1..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e401m31_16limbs.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_2e401m31_16limbs/fecarryDisplay.v b/src/Specific/solinas32_2e401m31_16limbs/fecarryDisplay.v
deleted file mode 100644
index 3f2c37fe5..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e401m31_16limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e401m31_16limbs/femul.c b/src/Specific/solinas32_2e401m31_16limbs/femul.c
deleted file mode 100644
index 39cd5de4e..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/femul.c
+++ /dev/null
@@ -1,120 +0,0 @@
-static void femul(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- { uint64_t x64 = (((uint64_t)x5 * x62) + ((0x2 * ((uint64_t)x7 * x63)) + ((0x2 * ((uint64_t)x9 * x61)) + ((0x2 * ((uint64_t)x11 * x59)) + ((0x2 * ((uint64_t)x13 * x57)) + ((0x2 * ((uint64_t)x15 * x55)) + ((0x2 * ((uint64_t)x17 * x53)) + ((0x2 * ((uint64_t)x19 * x51)) + ((0x2 * ((uint64_t)x21 * x49)) + ((0x2 * ((uint64_t)x23 * x47)) + ((0x2 * ((uint64_t)x25 * x45)) + ((0x2 * ((uint64_t)x27 * x43)) + ((0x2 * ((uint64_t)x29 * x41)) + ((0x2 * ((uint64_t)x31 * x39)) + ((0x2 * ((uint64_t)x33 * x37)) + ((uint64_t)x32 * x35))))))))))))))));
- { uint64_t x65 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + ((0x2 * ((uint64_t)x25 * x43)) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((0x2 * ((uint64_t)x31 * x37)) + ((uint64_t)x33 * x35))))))))))))))) + (0x1f * ((uint64_t)x32 * x62)));
- { uint64_t x66 = ((((uint64_t)x5 * x61) + ((0x2 * ((uint64_t)x7 * x59)) + ((0x2 * ((uint64_t)x9 * x57)) + ((0x2 * ((uint64_t)x11 * x55)) + ((0x2 * ((uint64_t)x13 * x53)) + ((0x2 * ((uint64_t)x15 * x51)) + ((0x2 * ((uint64_t)x17 * x49)) + ((0x2 * ((uint64_t)x19 * x47)) + ((0x2 * ((uint64_t)x21 * x45)) + ((0x2 * ((uint64_t)x23 * x43)) + ((0x2 * ((uint64_t)x25 * x41)) + ((0x2 * ((uint64_t)x27 * x39)) + ((0x2 * ((uint64_t)x29 * x37)) + ((uint64_t)x31 * x35)))))))))))))) + (0x1f * (((uint64_t)x33 * x62) + ((uint64_t)x32 * x63))));
- { uint64_t x67 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + ((0x2 * ((uint64_t)x27 * x37)) + ((uint64_t)x29 * x35))))))))))))) + (0x1f * (((uint64_t)x31 * x62) + (((uint64_t)x33 * x63) + ((uint64_t)x32 * x61)))));
- { uint64_t x68 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + ((0x2 * ((uint64_t)x25 * x37)) + ((uint64_t)x27 * x35)))))))))))) + (0x1f * (((uint64_t)x29 * x62) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + ((uint64_t)x32 * x59))))));
- { uint64_t x69 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((uint64_t)x25 * x35))))))))))) + (0x1f * (((uint64_t)x27 * x62) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + (((uint64_t)x33 * x59) + ((uint64_t)x32 * x57)))))));
- { uint64_t x70 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + ((uint64_t)x23 * x35)))))))))) + (0x1f * (((uint64_t)x25 * x62) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + ((uint64_t)x32 * x55))))))));
- { uint64_t x71 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + ((uint64_t)x21 * x35))))))))) + (0x1f * (((uint64_t)x23 * x62) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + ((uint64_t)x32 * x53)))))))));
- { uint64_t x72 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + ((0x2 * ((uint64_t)x11 * x43)) + ((0x2 * ((uint64_t)x13 * x41)) + ((0x2 * ((uint64_t)x15 * x39)) + ((0x2 * ((uint64_t)x17 * x37)) + ((uint64_t)x19 * x35)))))))) + (0x1f * (((uint64_t)x21 * x62) + (((uint64_t)x23 * x63) + (((uint64_t)x25 * x61) + (((uint64_t)x27 * x59) + (((uint64_t)x29 * x57) + (((uint64_t)x31 * x55) + (((uint64_t)x33 * x53) + ((uint64_t)x32 * x51))))))))));
- { uint64_t x73 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((uint64_t)x17 * x35))))))) + (0x1f * (((uint64_t)x19 * x62) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + ((uint64_t)x32 * x49)))))))))));
- { uint64_t x74 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + ((0x2 * ((uint64_t)x13 * x37)) + ((uint64_t)x15 * x35)))))) + (0x1f * (((uint64_t)x17 * x62) + (((uint64_t)x19 * x63) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + ((uint64_t)x32 * x47))))))))))));
- { uint64_t x75 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((uint64_t)x13 * x35))))) + (0x1f * (((uint64_t)x15 * x62) + (((uint64_t)x17 * x63) + (((uint64_t)x19 * x61) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + (((uint64_t)x31 * x49) + (((uint64_t)x33 * x47) + ((uint64_t)x32 * x45)))))))))))));
- { uint64_t x76 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + ((uint64_t)x11 * x35)))) + (0x1f * (((uint64_t)x13 * x62) + (((uint64_t)x15 * x63) + (((uint64_t)x17 * x61) + (((uint64_t)x19 * x59) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + (((uint64_t)x29 * x49) + (((uint64_t)x31 * x47) + (((uint64_t)x33 * x45) + ((uint64_t)x32 * x43))))))))))))));
- { uint64_t x77 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((uint64_t)x9 * x35))) + (0x1f * (((uint64_t)x11 * x62) + (((uint64_t)x13 * x63) + (((uint64_t)x15 * x61) + (((uint64_t)x17 * x59) + (((uint64_t)x19 * x57) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (((uint64_t)x29 * x47) + (((uint64_t)x31 * x45) + (((uint64_t)x33 * x43) + ((uint64_t)x32 * x41)))))))))))))));
- { uint64_t x78 = ((((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)) + (0x1f * (((uint64_t)x9 * x62) + (((uint64_t)x11 * x63) + (((uint64_t)x13 * x61) + (((uint64_t)x15 * x59) + (((uint64_t)x17 * x57) + (((uint64_t)x19 * x55) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + (((uint64_t)x25 * x49) + (((uint64_t)x27 * x47) + (((uint64_t)x29 * x45) + (((uint64_t)x31 * x43) + (((uint64_t)x33 * x41) + ((uint64_t)x32 * x39))))))))))))))));
- { uint64_t x79 = (((uint64_t)x5 * x35) + (0x1f * ((0x2 * ((uint64_t)x7 * x62)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + (0x2 * ((uint64_t)x32 * x37))))))))))))))))));
- { uint64_t x80 = (x79 >> 0x1a);
- { uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- { uint64_t x82 = (x80 + x78);
- { uint64_t x83 = (x82 >> 0x19);
- { uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- { uint64_t x85 = (x83 + x77);
- { uint64_t x86 = (x85 >> 0x19);
- { uint32_t x87 = ((uint32_t)x85 & 0x1ffffff);
- { uint64_t x88 = (x86 + x76);
- { uint64_t x89 = (x88 >> 0x19);
- { uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- { uint64_t x91 = (x89 + x75);
- { uint64_t x92 = (x91 >> 0x19);
- { uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- { uint64_t x94 = (x92 + x74);
- { uint64_t x95 = (x94 >> 0x19);
- { uint32_t x96 = ((uint32_t)x94 & 0x1ffffff);
- { uint64_t x97 = (x95 + x73);
- { uint64_t x98 = (x97 >> 0x19);
- { uint32_t x99 = ((uint32_t)x97 & 0x1ffffff);
- { uint64_t x100 = (x98 + x72);
- { uint64_t x101 = (x100 >> 0x19);
- { uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- { uint64_t x103 = (x101 + x71);
- { uint64_t x104 = (x103 >> 0x19);
- { uint32_t x105 = ((uint32_t)x103 & 0x1ffffff);
- { uint64_t x106 = (x104 + x70);
- { uint64_t x107 = (x106 >> 0x19);
- { uint32_t x108 = ((uint32_t)x106 & 0x1ffffff);
- { uint64_t x109 = (x107 + x69);
- { uint64_t x110 = (x109 >> 0x19);
- { uint32_t x111 = ((uint32_t)x109 & 0x1ffffff);
- { uint64_t x112 = (x110 + x68);
- { uint64_t x113 = (x112 >> 0x19);
- { uint32_t x114 = ((uint32_t)x112 & 0x1ffffff);
- { uint64_t x115 = (x113 + x67);
- { uint64_t x116 = (x115 >> 0x19);
- { uint32_t x117 = ((uint32_t)x115 & 0x1ffffff);
- { uint64_t x118 = (x116 + x66);
- { uint64_t x119 = (x118 >> 0x19);
- { uint32_t x120 = ((uint32_t)x118 & 0x1ffffff);
- { uint64_t x121 = (x119 + x65);
- { uint64_t x122 = (x121 >> 0x19);
- { uint32_t x123 = ((uint32_t)x121 & 0x1ffffff);
- { uint64_t x124 = (x122 + x64);
- { uint64_t x125 = (x124 >> 0x19);
- { uint32_t x126 = ((uint32_t)x124 & 0x1ffffff);
- { uint64_t x127 = (x81 + (0x1f * x125));
- { uint32_t x128 = (uint32_t) (x127 >> 0x1a);
- { uint32_t x129 = ((uint32_t)x127 & 0x3ffffff);
- { uint32_t x130 = (x128 + x84);
- { uint32_t x131 = (x130 >> 0x19);
- { uint32_t x132 = (x130 & 0x1ffffff);
- out[0] = x129;
- out[1] = x132;
- out[2] = (x131 + x87);
- out[3] = x90;
- out[4] = x93;
- out[5] = x96;
- out[6] = x99;
- out[7] = x102;
- out[8] = x105;
- out[9] = x108;
- out[10] = x111;
- out[11] = x114;
- out[12] = x117;
- out[13] = x120;
- out[14] = x123;
- out[15] = x126;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e401m31_16limbs/femul.v b/src/Specific/solinas32_2e401m31_16limbs/femul.v
deleted file mode 100644
index e3834bc9b..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e401m31_16limbs.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_2e401m31_16limbs/femulDisplay.log b/src/Specific/solinas32_2e401m31_16limbs/femulDisplay.log
deleted file mode 100644
index 5d597ba6a..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/femulDisplay.log
+++ /dev/null
@@ -1,76 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- uint64_t x64 = (((uint64_t)x5 * x62) + ((0x2 * ((uint64_t)x7 * x63)) + ((0x2 * ((uint64_t)x9 * x61)) + ((0x2 * ((uint64_t)x11 * x59)) + ((0x2 * ((uint64_t)x13 * x57)) + ((0x2 * ((uint64_t)x15 * x55)) + ((0x2 * ((uint64_t)x17 * x53)) + ((0x2 * ((uint64_t)x19 * x51)) + ((0x2 * ((uint64_t)x21 * x49)) + ((0x2 * ((uint64_t)x23 * x47)) + ((0x2 * ((uint64_t)x25 * x45)) + ((0x2 * ((uint64_t)x27 * x43)) + ((0x2 * ((uint64_t)x29 * x41)) + ((0x2 * ((uint64_t)x31 * x39)) + ((0x2 * ((uint64_t)x33 * x37)) + ((uint64_t)x32 * x35))))))))))))))));
- uint64_t x65 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + ((0x2 * ((uint64_t)x25 * x43)) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((0x2 * ((uint64_t)x31 * x37)) + ((uint64_t)x33 * x35))))))))))))))) + (0x1f * ((uint64_t)x32 * x62)));
- uint64_t x66 = ((((uint64_t)x5 * x61) + ((0x2 * ((uint64_t)x7 * x59)) + ((0x2 * ((uint64_t)x9 * x57)) + ((0x2 * ((uint64_t)x11 * x55)) + ((0x2 * ((uint64_t)x13 * x53)) + ((0x2 * ((uint64_t)x15 * x51)) + ((0x2 * ((uint64_t)x17 * x49)) + ((0x2 * ((uint64_t)x19 * x47)) + ((0x2 * ((uint64_t)x21 * x45)) + ((0x2 * ((uint64_t)x23 * x43)) + ((0x2 * ((uint64_t)x25 * x41)) + ((0x2 * ((uint64_t)x27 * x39)) + ((0x2 * ((uint64_t)x29 * x37)) + ((uint64_t)x31 * x35)))))))))))))) + (0x1f * (((uint64_t)x33 * x62) + ((uint64_t)x32 * x63))));
- uint64_t x67 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + ((0x2 * ((uint64_t)x27 * x37)) + ((uint64_t)x29 * x35))))))))))))) + (0x1f * (((uint64_t)x31 * x62) + (((uint64_t)x33 * x63) + ((uint64_t)x32 * x61)))));
- uint64_t x68 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + ((0x2 * ((uint64_t)x25 * x37)) + ((uint64_t)x27 * x35)))))))))))) + (0x1f * (((uint64_t)x29 * x62) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + ((uint64_t)x32 * x59))))));
- uint64_t x69 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((0x2 * ((uint64_t)x23 * x37)) + ((uint64_t)x25 * x35))))))))))) + (0x1f * (((uint64_t)x27 * x62) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + (((uint64_t)x33 * x59) + ((uint64_t)x32 * x57)))))));
- uint64_t x70 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + ((0x2 * ((uint64_t)x21 * x37)) + ((uint64_t)x23 * x35)))))))))) + (0x1f * (((uint64_t)x25 * x62) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + ((uint64_t)x32 * x55))))))));
- uint64_t x71 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + ((uint64_t)x21 * x35))))))))) + (0x1f * (((uint64_t)x23 * x62) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + ((uint64_t)x32 * x53)))))))));
- uint64_t x72 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + ((0x2 * ((uint64_t)x11 * x43)) + ((0x2 * ((uint64_t)x13 * x41)) + ((0x2 * ((uint64_t)x15 * x39)) + ((0x2 * ((uint64_t)x17 * x37)) + ((uint64_t)x19 * x35)))))))) + (0x1f * (((uint64_t)x21 * x62) + (((uint64_t)x23 * x63) + (((uint64_t)x25 * x61) + (((uint64_t)x27 * x59) + (((uint64_t)x29 * x57) + (((uint64_t)x31 * x55) + (((uint64_t)x33 * x53) + ((uint64_t)x32 * x51))))))))));
- uint64_t x73 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((uint64_t)x17 * x35))))))) + (0x1f * (((uint64_t)x19 * x62) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + ((uint64_t)x32 * x49)))))))))));
- uint64_t x74 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + ((0x2 * ((uint64_t)x13 * x37)) + ((uint64_t)x15 * x35)))))) + (0x1f * (((uint64_t)x17 * x62) + (((uint64_t)x19 * x63) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + ((uint64_t)x32 * x47))))))))))));
- uint64_t x75 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((0x2 * ((uint64_t)x11 * x37)) + ((uint64_t)x13 * x35))))) + (0x1f * (((uint64_t)x15 * x62) + (((uint64_t)x17 * x63) + (((uint64_t)x19 * x61) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + (((uint64_t)x31 * x49) + (((uint64_t)x33 * x47) + ((uint64_t)x32 * x45)))))))))))));
- uint64_t x76 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((0x2 * ((uint64_t)x9 * x37)) + ((uint64_t)x11 * x35)))) + (0x1f * (((uint64_t)x13 * x62) + (((uint64_t)x15 * x63) + (((uint64_t)x17 * x61) + (((uint64_t)x19 * x59) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + (((uint64_t)x29 * x49) + (((uint64_t)x31 * x47) + (((uint64_t)x33 * x45) + ((uint64_t)x32 * x43))))))))))))));
- uint64_t x77 = ((((uint64_t)x5 * x39) + ((0x2 * ((uint64_t)x7 * x37)) + ((uint64_t)x9 * x35))) + (0x1f * (((uint64_t)x11 * x62) + (((uint64_t)x13 * x63) + (((uint64_t)x15 * x61) + (((uint64_t)x17 * x59) + (((uint64_t)x19 * x57) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (((uint64_t)x29 * x47) + (((uint64_t)x31 * x45) + (((uint64_t)x33 * x43) + ((uint64_t)x32 * x41)))))))))))))));
- uint64_t x78 = ((((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)) + (0x1f * (((uint64_t)x9 * x62) + (((uint64_t)x11 * x63) + (((uint64_t)x13 * x61) + (((uint64_t)x15 * x59) + (((uint64_t)x17 * x57) + (((uint64_t)x19 * x55) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + (((uint64_t)x25 * x49) + (((uint64_t)x27 * x47) + (((uint64_t)x29 * x45) + (((uint64_t)x31 * x43) + (((uint64_t)x33 * x41) + ((uint64_t)x32 * x39))))))))))))))));
- uint64_t x79 = (((uint64_t)x5 * x35) + (0x1f * ((0x2 * ((uint64_t)x7 * x62)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + (0x2 * ((uint64_t)x32 * x37))))))))))))))))));
- uint64_t x80 = (x79 >> 0x1a);
- uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- uint64_t x82 = (x80 + x78);
- uint64_t x83 = (x82 >> 0x19);
- uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- uint64_t x85 = (x83 + x77);
- uint64_t x86 = (x85 >> 0x19);
- uint32_t x87 = ((uint32_t)x85 & 0x1ffffff);
- uint64_t x88 = (x86 + x76);
- uint64_t x89 = (x88 >> 0x19);
- uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- uint64_t x91 = (x89 + x75);
- uint64_t x92 = (x91 >> 0x19);
- uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- uint64_t x94 = (x92 + x74);
- uint64_t x95 = (x94 >> 0x19);
- uint32_t x96 = ((uint32_t)x94 & 0x1ffffff);
- uint64_t x97 = (x95 + x73);
- uint64_t x98 = (x97 >> 0x19);
- uint32_t x99 = ((uint32_t)x97 & 0x1ffffff);
- uint64_t x100 = (x98 + x72);
- uint64_t x101 = (x100 >> 0x19);
- uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- uint64_t x103 = (x101 + x71);
- uint64_t x104 = (x103 >> 0x19);
- uint32_t x105 = ((uint32_t)x103 & 0x1ffffff);
- uint64_t x106 = (x104 + x70);
- uint64_t x107 = (x106 >> 0x19);
- uint32_t x108 = ((uint32_t)x106 & 0x1ffffff);
- uint64_t x109 = (x107 + x69);
- uint64_t x110 = (x109 >> 0x19);
- uint32_t x111 = ((uint32_t)x109 & 0x1ffffff);
- uint64_t x112 = (x110 + x68);
- uint64_t x113 = (x112 >> 0x19);
- uint32_t x114 = ((uint32_t)x112 & 0x1ffffff);
- uint64_t x115 = (x113 + x67);
- uint64_t x116 = (x115 >> 0x19);
- uint32_t x117 = ((uint32_t)x115 & 0x1ffffff);
- uint64_t x118 = (x116 + x66);
- uint64_t x119 = (x118 >> 0x19);
- uint32_t x120 = ((uint32_t)x118 & 0x1ffffff);
- uint64_t x121 = (x119 + x65);
- uint64_t x122 = (x121 >> 0x19);
- uint32_t x123 = ((uint32_t)x121 & 0x1ffffff);
- uint64_t x124 = (x122 + x64);
- uint64_t x125 = (x124 >> 0x19);
- uint32_t x126 = ((uint32_t)x124 & 0x1ffffff);
- uint64_t x127 = (x81 + (0x1f * x125));
- uint32_t x128 = (uint32_t) (x127 >> 0x1a);
- uint32_t x129 = ((uint32_t)x127 & 0x3ffffff);
- uint32_t x130 = (x128 + x84);
- uint32_t x131 = (x130 >> 0x19);
- uint32_t x132 = (x130 & 0x1ffffff);
- return (Return x126, Return x123, Return x120, Return x117, Return x114, Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, (x131 + x87), Return x132, Return x129))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e401m31_16limbs/femulDisplay.v b/src/Specific/solinas32_2e401m31_16limbs/femulDisplay.v
deleted file mode 100644
index 40ea489b7..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e401m31_16limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e401m31_16limbs/fesquare.c b/src/Specific/solinas32_2e401m31_16limbs/fesquare.c
deleted file mode 100644
index 580bcf5f5..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/fesquare.c
+++ /dev/null
@@ -1,104 +0,0 @@
-static void fesquare(uint32_t out[16], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x31 = (((uint64_t)x2 * x29) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x29 * x2))))))))))))))));
- { uint64_t x32 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + ((0x2 * ((uint64_t)x6 * x26)) + ((0x2 * ((uint64_t)x8 * x24)) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + ((0x2 * ((uint64_t)x24 * x8)) + ((0x2 * ((uint64_t)x26 * x6)) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x1f * ((uint64_t)x29 * x29)));
- { uint64_t x33 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x1f * (((uint64_t)x30 * x29) + ((uint64_t)x29 * x30))));
- { uint64_t x34 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x1f * (((uint64_t)x28 * x29) + (((uint64_t)x30 * x30) + ((uint64_t)x29 * x28)))));
- { uint64_t x35 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x1f * (((uint64_t)x26 * x29) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + ((uint64_t)x29 * x26))))));
- { uint64_t x36 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x1f * (((uint64_t)x24 * x29) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + ((uint64_t)x29 * x24)))))));
- { uint64_t x37 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x1f * (((uint64_t)x22 * x29) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + ((uint64_t)x29 * x22))))))));
- { uint64_t x38 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x1f * (((uint64_t)x20 * x29) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + ((uint64_t)x29 * x20)))))))));
- { uint64_t x39 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x1f * (((uint64_t)x18 * x29) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + ((uint64_t)x29 * x18))))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x1f * (((uint64_t)x16 * x29) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + ((uint64_t)x29 * x16)))))))))));
- { uint64_t x41 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x1f * (((uint64_t)x14 * x29) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + ((uint64_t)x29 * x14))))))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x1f * (((uint64_t)x12 * x29) + (((uint64_t)x14 * x30) + (((uint64_t)x16 * x28) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + (((uint64_t)x28 * x16) + (((uint64_t)x30 * x14) + ((uint64_t)x29 * x12)))))))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x1f * (((uint64_t)x10 * x29) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + ((uint64_t)x29 * x10))))))))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x1f * (((uint64_t)x8 * x29) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + (((uint64_t)x14 * x26) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (((uint64_t)x26 * x14) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + ((uint64_t)x29 * x8)))))))))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1f * (((uint64_t)x6 * x29) + (((uint64_t)x8 * x30) + (((uint64_t)x10 * x28) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + (((uint64_t)x28 * x10) + (((uint64_t)x30 * x8) + ((uint64_t)x29 * x6))))))))))))))));
- { uint64_t x46 = (((uint64_t)x2 * x2) + (0x1f * ((0x2 * ((uint64_t)x4 * x29)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + (0x2 * ((uint64_t)x29 * x4))))))))))))))))));
- { uint64_t x47 = (x46 >> 0x1a);
- { uint32_t x48 = ((uint32_t)x46 & 0x3ffffff);
- { uint64_t x49 = (x47 + x45);
- { uint64_t x50 = (x49 >> 0x19);
- { uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- { uint64_t x52 = (x50 + x44);
- { uint64_t x53 = (x52 >> 0x19);
- { uint32_t x54 = ((uint32_t)x52 & 0x1ffffff);
- { uint64_t x55 = (x53 + x43);
- { uint64_t x56 = (x55 >> 0x19);
- { uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- { uint64_t x58 = (x56 + x42);
- { uint64_t x59 = (x58 >> 0x19);
- { uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- { uint64_t x61 = (x59 + x41);
- { uint64_t x62 = (x61 >> 0x19);
- { uint32_t x63 = ((uint32_t)x61 & 0x1ffffff);
- { uint64_t x64 = (x62 + x40);
- { uint64_t x65 = (x64 >> 0x19);
- { uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- { uint64_t x67 = (x65 + x39);
- { uint64_t x68 = (x67 >> 0x19);
- { uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- { uint64_t x70 = (x68 + x38);
- { uint64_t x71 = (x70 >> 0x19);
- { uint32_t x72 = ((uint32_t)x70 & 0x1ffffff);
- { uint64_t x73 = (x71 + x37);
- { uint64_t x74 = (x73 >> 0x19);
- { uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- { uint64_t x76 = (x74 + x36);
- { uint64_t x77 = (x76 >> 0x19);
- { uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- { uint64_t x79 = (x77 + x35);
- { uint64_t x80 = (x79 >> 0x19);
- { uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- { uint64_t x82 = (x80 + x34);
- { uint64_t x83 = (x82 >> 0x19);
- { uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- { uint64_t x85 = (x83 + x33);
- { uint64_t x86 = (x85 >> 0x19);
- { uint32_t x87 = ((uint32_t)x85 & 0x1ffffff);
- { uint64_t x88 = (x86 + x32);
- { uint64_t x89 = (x88 >> 0x19);
- { uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- { uint64_t x91 = (x89 + x31);
- { uint64_t x92 = (x91 >> 0x19);
- { uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- { uint64_t x94 = (x48 + (0x1f * x92));
- { uint32_t x95 = (uint32_t) (x94 >> 0x1a);
- { uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- { uint32_t x97 = (x95 + x51);
- { uint32_t x98 = (x97 >> 0x19);
- { uint32_t x99 = (x97 & 0x1ffffff);
- out[0] = x96;
- out[1] = x99;
- out[2] = (x98 + x54);
- out[3] = x57;
- out[4] = x60;
- out[5] = x63;
- out[6] = x66;
- out[7] = x69;
- out[8] = x72;
- out[9] = x75;
- out[10] = x78;
- out[11] = x81;
- out[12] = x84;
- out[13] = x87;
- out[14] = x90;
- out[15] = x93;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e401m31_16limbs/fesquare.v b/src/Specific/solinas32_2e401m31_16limbs/fesquare.v
deleted file mode 100644
index d47984fe1..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e401m31_16limbs.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_2e401m31_16limbs/fesquareDisplay.log b/src/Specific/solinas32_2e401m31_16limbs/fesquareDisplay.log
deleted file mode 100644
index c1666a6e1..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,76 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x31 = (((uint64_t)x2 * x29) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x29 * x2))))))))))))))));
- uint64_t x32 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + ((0x2 * ((uint64_t)x6 * x26)) + ((0x2 * ((uint64_t)x8 * x24)) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + ((0x2 * ((uint64_t)x24 * x8)) + ((0x2 * ((uint64_t)x26 * x6)) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x1f * ((uint64_t)x29 * x29)));
- uint64_t x33 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x1f * (((uint64_t)x30 * x29) + ((uint64_t)x29 * x30))));
- uint64_t x34 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x1f * (((uint64_t)x28 * x29) + (((uint64_t)x30 * x30) + ((uint64_t)x29 * x28)))));
- uint64_t x35 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x1f * (((uint64_t)x26 * x29) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + ((uint64_t)x29 * x26))))));
- uint64_t x36 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x1f * (((uint64_t)x24 * x29) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + ((uint64_t)x29 * x24)))))));
- uint64_t x37 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x1f * (((uint64_t)x22 * x29) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + ((uint64_t)x29 * x22))))))));
- uint64_t x38 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x1f * (((uint64_t)x20 * x29) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + ((uint64_t)x29 * x20)))))))));
- uint64_t x39 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x1f * (((uint64_t)x18 * x29) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + ((uint64_t)x29 * x18))))))))));
- uint64_t x40 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x1f * (((uint64_t)x16 * x29) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + ((uint64_t)x29 * x16)))))))))));
- uint64_t x41 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x1f * (((uint64_t)x14 * x29) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + ((uint64_t)x29 * x14))))))))))));
- uint64_t x42 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x1f * (((uint64_t)x12 * x29) + (((uint64_t)x14 * x30) + (((uint64_t)x16 * x28) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + (((uint64_t)x28 * x16) + (((uint64_t)x30 * x14) + ((uint64_t)x29 * x12)))))))))))));
- uint64_t x43 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x1f * (((uint64_t)x10 * x29) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + ((uint64_t)x29 * x10))))))))))))));
- uint64_t x44 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x1f * (((uint64_t)x8 * x29) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + (((uint64_t)x14 * x26) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (((uint64_t)x26 * x14) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + ((uint64_t)x29 * x8)))))))))))))));
- uint64_t x45 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1f * (((uint64_t)x6 * x29) + (((uint64_t)x8 * x30) + (((uint64_t)x10 * x28) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + (((uint64_t)x28 * x10) + (((uint64_t)x30 * x8) + ((uint64_t)x29 * x6))))))))))))))));
- uint64_t x46 = (((uint64_t)x2 * x2) + (0x1f * ((0x2 * ((uint64_t)x4 * x29)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + (0x2 * ((uint64_t)x29 * x4))))))))))))))))));
- uint64_t x47 = (x46 >> 0x1a);
- uint32_t x48 = ((uint32_t)x46 & 0x3ffffff);
- uint64_t x49 = (x47 + x45);
- uint64_t x50 = (x49 >> 0x19);
- uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- uint64_t x52 = (x50 + x44);
- uint64_t x53 = (x52 >> 0x19);
- uint32_t x54 = ((uint32_t)x52 & 0x1ffffff);
- uint64_t x55 = (x53 + x43);
- uint64_t x56 = (x55 >> 0x19);
- uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- uint64_t x58 = (x56 + x42);
- uint64_t x59 = (x58 >> 0x19);
- uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- uint64_t x61 = (x59 + x41);
- uint64_t x62 = (x61 >> 0x19);
- uint32_t x63 = ((uint32_t)x61 & 0x1ffffff);
- uint64_t x64 = (x62 + x40);
- uint64_t x65 = (x64 >> 0x19);
- uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- uint64_t x67 = (x65 + x39);
- uint64_t x68 = (x67 >> 0x19);
- uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- uint64_t x70 = (x68 + x38);
- uint64_t x71 = (x70 >> 0x19);
- uint32_t x72 = ((uint32_t)x70 & 0x1ffffff);
- uint64_t x73 = (x71 + x37);
- uint64_t x74 = (x73 >> 0x19);
- uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- uint64_t x76 = (x74 + x36);
- uint64_t x77 = (x76 >> 0x19);
- uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- uint64_t x79 = (x77 + x35);
- uint64_t x80 = (x79 >> 0x19);
- uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- uint64_t x82 = (x80 + x34);
- uint64_t x83 = (x82 >> 0x19);
- uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- uint64_t x85 = (x83 + x33);
- uint64_t x86 = (x85 >> 0x19);
- uint32_t x87 = ((uint32_t)x85 & 0x1ffffff);
- uint64_t x88 = (x86 + x32);
- uint64_t x89 = (x88 >> 0x19);
- uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- uint64_t x91 = (x89 + x31);
- uint64_t x92 = (x91 >> 0x19);
- uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- uint64_t x94 = (x48 + (0x1f * x92));
- uint32_t x95 = (uint32_t) (x94 >> 0x1a);
- uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- uint32_t x97 = (x95 + x51);
- uint32_t x98 = (x97 >> 0x19);
- uint32_t x99 = (x97 & 0x1ffffff);
- return (Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, Return x57, (x98 + x54), Return x99, Return x96))
-x
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e401m31_16limbs/fesquareDisplay.v b/src/Specific/solinas32_2e401m31_16limbs/fesquareDisplay.v
deleted file mode 100644
index f282b99f7..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e401m31_16limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e401m31_16limbs/fesub.c b/src/Specific/solinas32_2e401m31_16limbs/fesub.c
deleted file mode 100644
index f6e2353b7..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/fesub.c
+++ /dev/null
@@ -1,51 +0,0 @@
-static void fesub(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- out[0] = ((0x7ffffc2 + x5) - x35);
- out[1] = ((0x3fffffe + x7) - x37);
- out[2] = ((0x3fffffe + x9) - x39);
- out[3] = ((0x3fffffe + x11) - x41);
- out[4] = ((0x3fffffe + x13) - x43);
- out[5] = ((0x3fffffe + x15) - x45);
- out[6] = ((0x3fffffe + x17) - x47);
- out[7] = ((0x3fffffe + x19) - x49);
- out[8] = ((0x3fffffe + x21) - x51);
- out[9] = ((0x3fffffe + x23) - x53);
- out[10] = ((0x3fffffe + x25) - x55);
- out[11] = ((0x3fffffe + x27) - x57);
- out[12] = ((0x3fffffe + x29) - x59);
- out[13] = ((0x3fffffe + x31) - x61);
- out[14] = ((0x3fffffe + x33) - x63);
- out[15] = ((0x3fffffe + x32) - x62);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e401m31_16limbs/fesub.v b/src/Specific/solinas32_2e401m31_16limbs/fesub.v
deleted file mode 100644
index 21465227f..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e401m31_16limbs.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_2e401m31_16limbs/fesubDisplay.log b/src/Specific/solinas32_2e401m31_16limbs/fesubDisplay.log
deleted file mode 100644
index 97718ab84..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- (((0x3fffffe + x32) - x62), ((0x3fffffe + x33) - x63), ((0x3fffffe + x31) - x61), ((0x3fffffe + x29) - x59), ((0x3fffffe + x27) - x57), ((0x3fffffe + x25) - x55), ((0x3fffffe + x23) - x53), ((0x3fffffe + x21) - x51), ((0x3fffffe + x19) - x49), ((0x3fffffe + x17) - x47), ((0x3fffffe + x15) - x45), ((0x3fffffe + x13) - x43), ((0x3fffffe + x11) - x41), ((0x3fffffe + x9) - x39), ((0x3fffffe + x7) - x37), ((0x7ffffc2 + x5) - x35)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e401m31_16limbs/fesubDisplay.v b/src/Specific/solinas32_2e401m31_16limbs/fesubDisplay.v
deleted file mode 100644
index fcc52c549..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e401m31_16limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e401m31_16limbs/freeze.c b/src/Specific/solinas32_2e401m31_16limbs/freeze.c
deleted file mode 100644
index afca43fcc..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/freeze.c
+++ /dev/null
@@ -1,84 +0,0 @@
-static void freeze(uint32_t out[16], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffe1);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x4, 0x1ffffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x6, 0x1ffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x8, 0x1ffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x10, 0x1ffffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x12, 0x1ffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x14, 0x1ffffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x16, 0x1ffffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x18, 0x1ffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x20, 0x1ffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x22, 0x1ffffff);
- { uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x24, 0x1ffffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x26, 0x1ffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x28, 0x1ffffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x30, 0x1ffffff);
- { uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x29, 0x1ffffff);
- { uint32_t x79 = cmovznz32(x78, 0x0, 0xffffffff);
- { uint32_t x80 = (x79 & 0x3ffffe1);
- { uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x32, Return x80);
- { uint32_t x84 = (x79 & 0x1ffffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x35, Return x84);
- { uint32_t x88 = (x79 & 0x1ffffff);
- { uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x38, Return x88);
- { uint32_t x92 = (x79 & 0x1ffffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x41, Return x92);
- { uint32_t x96 = (x79 & 0x1ffffff);
- { uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x44, Return x96);
- { uint32_t x100 = (x79 & 0x1ffffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x47, Return x100);
- { uint32_t x104 = (x79 & 0x1ffffff);
- { uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x50, Return x104);
- { uint32_t x108 = (x79 & 0x1ffffff);
- { uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x53, Return x108);
- { uint32_t x112 = (x79 & 0x1ffffff);
- { uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x56, Return x112);
- { uint32_t x116 = (x79 & 0x1ffffff);
- { uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x59, Return x116);
- { uint32_t x120 = (x79 & 0x1ffffff);
- { uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x62, Return x120);
- { uint32_t x124 = (x79 & 0x1ffffff);
- { uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x65, Return x124);
- { uint32_t x128 = (x79 & 0x1ffffff);
- { uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x68, Return x128);
- { uint32_t x132 = (x79 & 0x1ffffff);
- { uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x71, Return x132);
- { uint32_t x136 = (x79 & 0x1ffffff);
- { uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x74, Return x136);
- { uint32_t x140 = (x79 & 0x1ffffff);
- { uint32_t x142, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x77, Return x140);
- out[0] = x82;
- out[1] = x86;
- out[2] = x90;
- out[3] = x94;
- out[4] = x98;
- out[5] = x102;
- out[6] = x106;
- out[7] = x110;
- out[8] = x114;
- out[9] = x118;
- out[10] = x122;
- out[11] = x126;
- out[12] = x130;
- out[13] = x134;
- out[14] = x138;
- out[15] = x142;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e401m31_16limbs/freeze.v b/src/Specific/solinas32_2e401m31_16limbs/freeze.v
deleted file mode 100644
index fad369d14..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e401m31_16limbs.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_2e401m31_16limbs/freezeDisplay.log b/src/Specific/solinas32_2e401m31_16limbs/freezeDisplay.log
deleted file mode 100644
index a0de7633b..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/freezeDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffe1);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x4, 0x1ffffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x6, 0x1ffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x8, 0x1ffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x10, 0x1ffffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x12, 0x1ffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x14, 0x1ffffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x16, 0x1ffffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x18, 0x1ffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x20, 0x1ffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x22, 0x1ffffff);
- uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x24, 0x1ffffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x26, 0x1ffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x28, 0x1ffffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x30, 0x1ffffff);
- uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x29, 0x1ffffff);
- uint32_t x79 = cmovznz32(x78, 0x0, 0xffffffff);
- uint32_t x80 = (x79 & 0x3ffffe1);
- uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x32, Return x80);
- uint32_t x84 = (x79 & 0x1ffffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x35, Return x84);
- uint32_t x88 = (x79 & 0x1ffffff);
- uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x38, Return x88);
- uint32_t x92 = (x79 & 0x1ffffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x41, Return x92);
- uint32_t x96 = (x79 & 0x1ffffff);
- uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x44, Return x96);
- uint32_t x100 = (x79 & 0x1ffffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x47, Return x100);
- uint32_t x104 = (x79 & 0x1ffffff);
- uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x50, Return x104);
- uint32_t x108 = (x79 & 0x1ffffff);
- uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x53, Return x108);
- uint32_t x112 = (x79 & 0x1ffffff);
- uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x56, Return x112);
- uint32_t x116 = (x79 & 0x1ffffff);
- uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x59, Return x116);
- uint32_t x120 = (x79 & 0x1ffffff);
- uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x62, Return x120);
- uint32_t x124 = (x79 & 0x1ffffff);
- uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x65, Return x124);
- uint32_t x128 = (x79 & 0x1ffffff);
- uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x68, Return x128);
- uint32_t x132 = (x79 & 0x1ffffff);
- uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x71, Return x132);
- uint32_t x136 = (x79 & 0x1ffffff);
- uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x74, Return x136);
- uint32_t x140 = (x79 & 0x1ffffff);
- uint32_t x142, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x77, Return x140);
- (Return x142, Return x138, Return x134, Return x130, Return x126, Return x122, Return x118, Return x114, Return x110, Return x106, Return x102, Return x98, Return x94, Return x90, Return x86, Return x82))
-x
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e401m31_16limbs/freezeDisplay.v b/src/Specific/solinas32_2e401m31_16limbs/freezeDisplay.v
deleted file mode 100644
index 61fd2172a..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e401m31_16limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e401m31_16limbs/py_interpreter.sh b/src/Specific/solinas32_2e401m31_16limbs/py_interpreter.sh
deleted file mode 100755
index 6ca4da266..000000000
--- a/src/Specific/solinas32_2e401m31_16limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**401 - 31' -Dmodulus_bytes='25 + 1/16' -Da24='121665'
diff --git a/src/Specific/solinas32_2e401m31_17limbs/CurveParameters.v b/src/Specific/solinas32_2e401m31_17limbs/CurveParameters.v
deleted file mode 100644
index 665273bfa..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^401 - 31
-Base: 23 + 10/17
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 17%nat;
- base := 23 + 10/17;
- bitwidth := 32;
- s := 2^401;
- c := [(1, 31)];
- carry_chains := Some [seq 0 (pred 17); [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_2e401m31_17limbs/Synthesis.v b/src/Specific/solinas32_2e401m31_17limbs/Synthesis.v
deleted file mode 100644
index 1b3eb7a0f..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e401m31_17limbs.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_2e401m31_17limbs/compiler.sh b/src/Specific/solinas32_2e401m31_17limbs/compiler.sh
deleted file mode 100755
index 4dc5105f8..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,23,24,23,24,24,23,24,23,24,24,23,24,23,24,23}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='51' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<401) - 31' "$@"
diff --git a/src/Specific/solinas32_2e401m31_17limbs/compilerxx.sh b/src/Specific/solinas32_2e401m31_17limbs/compilerxx.sh
deleted file mode 100755
index 2b91c1396..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,23,24,23,24,24,23,24,23,24,24,23,24,23,24,23}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='51' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<401) - 31' "$@"
diff --git a/src/Specific/solinas32_2e401m31_17limbs/feadd.c b/src/Specific/solinas32_2e401m31_17limbs/feadd.c
deleted file mode 100644
index 30eb11eae..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/feadd.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void feadd(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- out[0] = (x5 + x37);
- out[1] = (x7 + x39);
- out[2] = (x9 + x41);
- out[3] = (x11 + x43);
- out[4] = (x13 + x45);
- out[5] = (x15 + x47);
- out[6] = (x17 + x49);
- out[7] = (x19 + x51);
- out[8] = (x21 + x53);
- out[9] = (x23 + x55);
- out[10] = (x25 + x57);
- out[11] = (x27 + x59);
- out[12] = (x29 + x61);
- out[13] = (x31 + x63);
- out[14] = (x33 + x65);
- out[15] = (x35 + x67);
- out[16] = (x34 + x66);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e401m31_17limbs/feadd.v b/src/Specific/solinas32_2e401m31_17limbs/feadd.v
deleted file mode 100644
index f66007d94..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e401m31_17limbs.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_2e401m31_17limbs/feaddDisplay.log b/src/Specific/solinas32_2e401m31_17limbs/feaddDisplay.log
deleted file mode 100644
index 7324e0941..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- ((x34 + x66), (x35 + x67), (x33 + x65), (x31 + x63), (x29 + x61), (x27 + x59), (x25 + x57), (x23 + x55), (x21 + x53), (x19 + x51), (x17 + x49), (x15 + x47), (x13 + x45), (x11 + x43), (x9 + x41), (x7 + x39), (x5 + x37)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e401m31_17limbs/feaddDisplay.v b/src/Specific/solinas32_2e401m31_17limbs/feaddDisplay.v
deleted file mode 100644
index 323eeb8ee..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e401m31_17limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e401m31_17limbs/fecarry.v b/src/Specific/solinas32_2e401m31_17limbs/fecarry.v
deleted file mode 100644
index f3fed3b4d..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e401m31_17limbs.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_2e401m31_17limbs/fecarryDisplay.v b/src/Specific/solinas32_2e401m31_17limbs/fecarryDisplay.v
deleted file mode 100644
index 6e4974117..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e401m31_17limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e401m31_17limbs/femul.c b/src/Specific/solinas32_2e401m31_17limbs/femul.c
deleted file mode 100644
index b830cdbab..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/femul.c
+++ /dev/null
@@ -1,127 +0,0 @@
-static void femul(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- { uint64_t x68 = (((uint64_t)x5 * x66) + (((uint64_t)x7 * x67) + ((0x2 * ((uint64_t)x9 * x65)) + (((uint64_t)x11 * x63) + ((0x2 * ((uint64_t)x13 * x61)) + (((uint64_t)x15 * x59) + (((uint64_t)x17 * x57) + ((0x2 * ((uint64_t)x19 * x55)) + (((uint64_t)x21 * x53) + ((0x2 * ((uint64_t)x23 * x51)) + (((uint64_t)x25 * x49) + (((uint64_t)x27 * x47) + ((0x2 * ((uint64_t)x29 * x45)) + (((uint64_t)x31 * x43) + ((0x2 * ((uint64_t)x33 * x41)) + (((uint64_t)x35 * x39) + ((uint64_t)x34 * x37)))))))))))))))));
- { uint64_t x69 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + (((uint64_t)x15 * x57) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + (((uint64_t)x25 * x47) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + ((uint64_t)x35 * x37)))))))))))))))) + (0x1f * (0x2 * ((uint64_t)x34 * x66))));
- { uint64_t x70 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + ((0x2 * ((uint64_t)x9 * x61)) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + ((0x2 * ((uint64_t)x19 * x51)) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + ((0x2 * ((uint64_t)x29 * x41)) + (((uint64_t)x31 * x39) + ((uint64_t)x33 * x37))))))))))))))) + (0x1f * (((uint64_t)x35 * x66) + ((uint64_t)x34 * x67))));
- { uint64_t x71 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + (((uint64_t)x11 * x57) + ((0x2 * ((uint64_t)x13 * x55)) + (((uint64_t)x15 * x53) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + (((uint64_t)x21 * x47) + ((0x2 * ((uint64_t)x23 * x45)) + (((uint64_t)x25 * x43) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((uint64_t)x31 * x37)))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x33 * x66)) + (((uint64_t)x35 * x67) + (0x2 * ((uint64_t)x34 * x65))))));
- { uint64_t x72 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + ((uint64_t)x29 * x37))))))))))))) + (0x1f * (((uint64_t)x31 * x66) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + ((uint64_t)x34 * x63))))));
- { uint64_t x73 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + ((0x2 * ((uint64_t)x9 * x55)) + (((uint64_t)x11 * x53) + ((0x2 * ((uint64_t)x13 * x51)) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + ((0x2 * ((uint64_t)x19 * x45)) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + (((uint64_t)x25 * x39) + ((uint64_t)x27 * x37)))))))))))) + (0x1f * ((0x2 * ((uint64_t)x29 * x66)) + (((uint64_t)x31 * x67) + ((0x2 * ((uint64_t)x33 * x65)) + (((uint64_t)x35 * x63) + (0x2 * ((uint64_t)x34 * x61))))))));
- { uint64_t x74 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + (((uint64_t)x15 * x47) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + ((uint64_t)x25 * x37))))))))))) + (0x1f * ((0x2 * ((uint64_t)x27 * x66)) + ((0x2 * ((uint64_t)x29 * x67)) + ((0x2 * ((uint64_t)x31 * x65)) + ((0x2 * ((uint64_t)x33 * x63)) + ((0x2 * ((uint64_t)x35 * x61)) + (0x2 * ((uint64_t)x34 * x59)))))))));
- { uint64_t x75 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + ((0x2 * ((uint64_t)x9 * x51)) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((0x2 * ((uint64_t)x19 * x41)) + (((uint64_t)x21 * x39) + ((uint64_t)x23 * x37)))))))))) + (0x1f * (((uint64_t)x25 * x66) + (((uint64_t)x27 * x67) + ((0x2 * ((uint64_t)x29 * x65)) + (((uint64_t)x31 * x63) + ((0x2 * ((uint64_t)x33 * x61)) + (((uint64_t)x35 * x59) + ((uint64_t)x34 * x57)))))))));
- { uint64_t x76 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + ((0x2 * ((uint64_t)x13 * x45)) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + ((uint64_t)x21 * x37))))))))) + (0x1f * ((0x2 * ((uint64_t)x23 * x66)) + (((uint64_t)x25 * x67) + ((0x2 * ((uint64_t)x27 * x65)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + (((uint64_t)x35 * x57) + (0x2 * ((uint64_t)x34 * x55)))))))))));
- { uint64_t x77 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + ((uint64_t)x19 * x37)))))))) + (0x1f * (((uint64_t)x21 * x66) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + ((0x2 * ((uint64_t)x29 * x61)) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + ((uint64_t)x34 * x53)))))))))));
- { uint64_t x78 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + ((0x2 * ((uint64_t)x9 * x45)) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + (((uint64_t)x15 * x39) + ((uint64_t)x17 * x37))))))) + (0x1f * ((0x2 * ((uint64_t)x19 * x66)) + (((uint64_t)x21 * x67) + ((0x2 * ((uint64_t)x23 * x65)) + (((uint64_t)x25 * x63) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + (((uint64_t)x31 * x57) + ((0x2 * ((uint64_t)x33 * x55)) + (((uint64_t)x35 * x53) + (0x2 * ((uint64_t)x34 * x51)))))))))))));
- { uint64_t x79 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((uint64_t)x15 * x37)))))) + (0x1f * ((0x2 * ((uint64_t)x17 * x66)) + ((0x2 * ((uint64_t)x19 * x67)) + ((0x2 * ((uint64_t)x21 * x65)) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + ((0x2 * ((uint64_t)x29 * x57)) + ((0x2 * ((uint64_t)x31 * x55)) + ((0x2 * ((uint64_t)x33 * x53)) + ((0x2 * ((uint64_t)x35 * x51)) + (0x2 * ((uint64_t)x34 * x49))))))))))))));
- { uint64_t x80 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + (((uint64_t)x11 * x39) + ((uint64_t)x13 * x37))))) + (0x1f * (((uint64_t)x15 * x66) + (((uint64_t)x17 * x67) + ((0x2 * ((uint64_t)x19 * x65)) + (((uint64_t)x21 * x63) + ((0x2 * ((uint64_t)x23 * x61)) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + ((0x2 * ((uint64_t)x29 * x55)) + (((uint64_t)x31 * x53) + ((0x2 * ((uint64_t)x33 * x51)) + (((uint64_t)x35 * x49) + ((uint64_t)x34 * x47))))))))))))));
- { uint64_t x81 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((uint64_t)x11 * x37)))) + (0x1f * ((0x2 * ((uint64_t)x13 * x66)) + (((uint64_t)x15 * x67) + ((0x2 * ((uint64_t)x17 * x65)) + ((0x2 * ((uint64_t)x19 * x63)) + ((0x2 * ((uint64_t)x21 * x61)) + ((0x2 * ((uint64_t)x23 * x59)) + (((uint64_t)x25 * x57) + ((0x2 * ((uint64_t)x27 * x55)) + ((0x2 * ((uint64_t)x29 * x53)) + ((0x2 * ((uint64_t)x31 * x51)) + ((0x2 * ((uint64_t)x33 * x49)) + (((uint64_t)x35 * x47) + (0x2 * ((uint64_t)x34 * x45))))))))))))))));
- { uint64_t x82 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + ((uint64_t)x9 * x37))) + (0x1f * (((uint64_t)x11 * x66) + (((uint64_t)x13 * x67) + (((uint64_t)x15 * x65) + (((uint64_t)x17 * x63) + ((0x2 * ((uint64_t)x19 * x61)) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + ((0x2 * ((uint64_t)x29 * x51)) + (((uint64_t)x31 * x49) + (((uint64_t)x33 * x47) + (((uint64_t)x35 * x45) + ((uint64_t)x34 * x43))))))))))))))));
- { uint64_t x83 = ((((uint64_t)x5 * x39) + ((uint64_t)x7 * x37)) + (0x1f * ((0x2 * ((uint64_t)x9 * x66)) + (((uint64_t)x11 * x67) + ((0x2 * ((uint64_t)x13 * x65)) + (((uint64_t)x15 * x63) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + (((uint64_t)x21 * x57) + ((0x2 * ((uint64_t)x23 * x55)) + (((uint64_t)x25 * x53) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + (((uint64_t)x31 * x47) + ((0x2 * ((uint64_t)x33 * x45)) + (((uint64_t)x35 * x43) + (0x2 * ((uint64_t)x34 * x41))))))))))))))))));
- { uint64_t x84 = (((uint64_t)x5 * x37) + (0x1f * ((0x2 * ((uint64_t)x7 * x66)) + ((0x2 * ((uint64_t)x9 * x67)) + ((0x2 * ((uint64_t)x11 * x65)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + ((0x2 * ((uint64_t)x35 * x41)) + (0x2 * ((uint64_t)x34 * x39)))))))))))))))))));
- { uint64_t x85 = (x84 >> 0x18);
- { uint32_t x86 = ((uint32_t)x84 & 0xffffff);
- { uint64_t x87 = (x85 + x83);
- { uint64_t x88 = (x87 >> 0x18);
- { uint32_t x89 = ((uint32_t)x87 & 0xffffff);
- { uint64_t x90 = (x88 + x82);
- { uint64_t x91 = (x90 >> 0x17);
- { uint32_t x92 = ((uint32_t)x90 & 0x7fffff);
- { uint64_t x93 = (x91 + x81);
- { uint64_t x94 = (x93 >> 0x18);
- { uint32_t x95 = ((uint32_t)x93 & 0xffffff);
- { uint64_t x96 = (x94 + x80);
- { uint64_t x97 = (x96 >> 0x17);
- { uint32_t x98 = ((uint32_t)x96 & 0x7fffff);
- { uint64_t x99 = (x97 + x79);
- { uint64_t x100 = (x99 >> 0x18);
- { uint32_t x101 = ((uint32_t)x99 & 0xffffff);
- { uint64_t x102 = (x100 + x78);
- { uint64_t x103 = (x102 >> 0x18);
- { uint32_t x104 = ((uint32_t)x102 & 0xffffff);
- { uint64_t x105 = (x103 + x77);
- { uint64_t x106 = (x105 >> 0x17);
- { uint32_t x107 = ((uint32_t)x105 & 0x7fffff);
- { uint64_t x108 = (x106 + x76);
- { uint64_t x109 = (x108 >> 0x18);
- { uint32_t x110 = ((uint32_t)x108 & 0xffffff);
- { uint64_t x111 = (x109 + x75);
- { uint64_t x112 = (x111 >> 0x17);
- { uint32_t x113 = ((uint32_t)x111 & 0x7fffff);
- { uint64_t x114 = (x112 + x74);
- { uint64_t x115 = (x114 >> 0x18);
- { uint32_t x116 = ((uint32_t)x114 & 0xffffff);
- { uint64_t x117 = (x115 + x73);
- { uint64_t x118 = (x117 >> 0x18);
- { uint32_t x119 = ((uint32_t)x117 & 0xffffff);
- { uint64_t x120 = (x118 + x72);
- { uint64_t x121 = (x120 >> 0x17);
- { uint32_t x122 = ((uint32_t)x120 & 0x7fffff);
- { uint64_t x123 = (x121 + x71);
- { uint64_t x124 = (x123 >> 0x18);
- { uint32_t x125 = ((uint32_t)x123 & 0xffffff);
- { uint64_t x126 = (x124 + x70);
- { uint64_t x127 = (x126 >> 0x17);
- { uint32_t x128 = ((uint32_t)x126 & 0x7fffff);
- { uint64_t x129 = (x127 + x69);
- { uint64_t x130 = (x129 >> 0x18);
- { uint32_t x131 = ((uint32_t)x129 & 0xffffff);
- { uint64_t x132 = (x130 + x68);
- { uint64_t x133 = (x132 >> 0x17);
- { uint32_t x134 = ((uint32_t)x132 & 0x7fffff);
- { uint64_t x135 = (x86 + (0x1f * x133));
- { uint32_t x136 = (uint32_t) (x135 >> 0x18);
- { uint32_t x137 = ((uint32_t)x135 & 0xffffff);
- { uint32_t x138 = (x136 + x89);
- { uint32_t x139 = (x138 >> 0x18);
- { uint32_t x140 = (x138 & 0xffffff);
- out[0] = x137;
- out[1] = x140;
- out[2] = (x139 + x92);
- out[3] = x95;
- out[4] = x98;
- out[5] = x101;
- out[6] = x104;
- out[7] = x107;
- out[8] = x110;
- out[9] = x113;
- out[10] = x116;
- out[11] = x119;
- out[12] = x122;
- out[13] = x125;
- out[14] = x128;
- out[15] = x131;
- out[16] = x134;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e401m31_17limbs/femul.v b/src/Specific/solinas32_2e401m31_17limbs/femul.v
deleted file mode 100644
index 37c1bd731..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e401m31_17limbs.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_2e401m31_17limbs/femulDisplay.log b/src/Specific/solinas32_2e401m31_17limbs/femulDisplay.log
deleted file mode 100644
index 498ed8562..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/femulDisplay.log
+++ /dev/null
@@ -1,80 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- uint64_t x68 = (((uint64_t)x5 * x66) + (((uint64_t)x7 * x67) + ((0x2 * ((uint64_t)x9 * x65)) + (((uint64_t)x11 * x63) + ((0x2 * ((uint64_t)x13 * x61)) + (((uint64_t)x15 * x59) + (((uint64_t)x17 * x57) + ((0x2 * ((uint64_t)x19 * x55)) + (((uint64_t)x21 * x53) + ((0x2 * ((uint64_t)x23 * x51)) + (((uint64_t)x25 * x49) + (((uint64_t)x27 * x47) + ((0x2 * ((uint64_t)x29 * x45)) + (((uint64_t)x31 * x43) + ((0x2 * ((uint64_t)x33 * x41)) + (((uint64_t)x35 * x39) + ((uint64_t)x34 * x37)))))))))))))))));
- uint64_t x69 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + (((uint64_t)x15 * x57) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + (((uint64_t)x25 * x47) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + ((uint64_t)x35 * x37)))))))))))))))) + (0x1f * (0x2 * ((uint64_t)x34 * x66))));
- uint64_t x70 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + ((0x2 * ((uint64_t)x9 * x61)) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + ((0x2 * ((uint64_t)x19 * x51)) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + ((0x2 * ((uint64_t)x29 * x41)) + (((uint64_t)x31 * x39) + ((uint64_t)x33 * x37))))))))))))))) + (0x1f * (((uint64_t)x35 * x66) + ((uint64_t)x34 * x67))));
- uint64_t x71 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + (((uint64_t)x11 * x57) + ((0x2 * ((uint64_t)x13 * x55)) + (((uint64_t)x15 * x53) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + (((uint64_t)x21 * x47) + ((0x2 * ((uint64_t)x23 * x45)) + (((uint64_t)x25 * x43) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((uint64_t)x31 * x37)))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x33 * x66)) + (((uint64_t)x35 * x67) + (0x2 * ((uint64_t)x34 * x65))))));
- uint64_t x72 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + ((uint64_t)x29 * x37))))))))))))) + (0x1f * (((uint64_t)x31 * x66) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + ((uint64_t)x34 * x63))))));
- uint64_t x73 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + ((0x2 * ((uint64_t)x9 * x55)) + (((uint64_t)x11 * x53) + ((0x2 * ((uint64_t)x13 * x51)) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + ((0x2 * ((uint64_t)x19 * x45)) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + (((uint64_t)x25 * x39) + ((uint64_t)x27 * x37)))))))))))) + (0x1f * ((0x2 * ((uint64_t)x29 * x66)) + (((uint64_t)x31 * x67) + ((0x2 * ((uint64_t)x33 * x65)) + (((uint64_t)x35 * x63) + (0x2 * ((uint64_t)x34 * x61))))))));
- uint64_t x74 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + (((uint64_t)x15 * x47) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + ((uint64_t)x25 * x37))))))))))) + (0x1f * ((0x2 * ((uint64_t)x27 * x66)) + ((0x2 * ((uint64_t)x29 * x67)) + ((0x2 * ((uint64_t)x31 * x65)) + ((0x2 * ((uint64_t)x33 * x63)) + ((0x2 * ((uint64_t)x35 * x61)) + (0x2 * ((uint64_t)x34 * x59)))))))));
- uint64_t x75 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + ((0x2 * ((uint64_t)x9 * x51)) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((0x2 * ((uint64_t)x19 * x41)) + (((uint64_t)x21 * x39) + ((uint64_t)x23 * x37)))))))))) + (0x1f * (((uint64_t)x25 * x66) + (((uint64_t)x27 * x67) + ((0x2 * ((uint64_t)x29 * x65)) + (((uint64_t)x31 * x63) + ((0x2 * ((uint64_t)x33 * x61)) + (((uint64_t)x35 * x59) + ((uint64_t)x34 * x57)))))))));
- uint64_t x76 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + ((0x2 * ((uint64_t)x13 * x45)) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + ((uint64_t)x21 * x37))))))))) + (0x1f * ((0x2 * ((uint64_t)x23 * x66)) + (((uint64_t)x25 * x67) + ((0x2 * ((uint64_t)x27 * x65)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + (((uint64_t)x35 * x57) + (0x2 * ((uint64_t)x34 * x55)))))))))));
- uint64_t x77 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + ((uint64_t)x19 * x37)))))))) + (0x1f * (((uint64_t)x21 * x66) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + ((0x2 * ((uint64_t)x29 * x61)) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + ((uint64_t)x34 * x53)))))))))));
- uint64_t x78 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + ((0x2 * ((uint64_t)x9 * x45)) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + (((uint64_t)x15 * x39) + ((uint64_t)x17 * x37))))))) + (0x1f * ((0x2 * ((uint64_t)x19 * x66)) + (((uint64_t)x21 * x67) + ((0x2 * ((uint64_t)x23 * x65)) + (((uint64_t)x25 * x63) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + (((uint64_t)x31 * x57) + ((0x2 * ((uint64_t)x33 * x55)) + (((uint64_t)x35 * x53) + (0x2 * ((uint64_t)x34 * x51)))))))))))));
- uint64_t x79 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((uint64_t)x15 * x37)))))) + (0x1f * ((0x2 * ((uint64_t)x17 * x66)) + ((0x2 * ((uint64_t)x19 * x67)) + ((0x2 * ((uint64_t)x21 * x65)) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + ((0x2 * ((uint64_t)x29 * x57)) + ((0x2 * ((uint64_t)x31 * x55)) + ((0x2 * ((uint64_t)x33 * x53)) + ((0x2 * ((uint64_t)x35 * x51)) + (0x2 * ((uint64_t)x34 * x49))))))))))))));
- uint64_t x80 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + (((uint64_t)x11 * x39) + ((uint64_t)x13 * x37))))) + (0x1f * (((uint64_t)x15 * x66) + (((uint64_t)x17 * x67) + ((0x2 * ((uint64_t)x19 * x65)) + (((uint64_t)x21 * x63) + ((0x2 * ((uint64_t)x23 * x61)) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + ((0x2 * ((uint64_t)x29 * x55)) + (((uint64_t)x31 * x53) + ((0x2 * ((uint64_t)x33 * x51)) + (((uint64_t)x35 * x49) + ((uint64_t)x34 * x47))))))))))))));
- uint64_t x81 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((uint64_t)x11 * x37)))) + (0x1f * ((0x2 * ((uint64_t)x13 * x66)) + (((uint64_t)x15 * x67) + ((0x2 * ((uint64_t)x17 * x65)) + ((0x2 * ((uint64_t)x19 * x63)) + ((0x2 * ((uint64_t)x21 * x61)) + ((0x2 * ((uint64_t)x23 * x59)) + (((uint64_t)x25 * x57) + ((0x2 * ((uint64_t)x27 * x55)) + ((0x2 * ((uint64_t)x29 * x53)) + ((0x2 * ((uint64_t)x31 * x51)) + ((0x2 * ((uint64_t)x33 * x49)) + (((uint64_t)x35 * x47) + (0x2 * ((uint64_t)x34 * x45))))))))))))))));
- uint64_t x82 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + ((uint64_t)x9 * x37))) + (0x1f * (((uint64_t)x11 * x66) + (((uint64_t)x13 * x67) + (((uint64_t)x15 * x65) + (((uint64_t)x17 * x63) + ((0x2 * ((uint64_t)x19 * x61)) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + ((0x2 * ((uint64_t)x29 * x51)) + (((uint64_t)x31 * x49) + (((uint64_t)x33 * x47) + (((uint64_t)x35 * x45) + ((uint64_t)x34 * x43))))))))))))))));
- uint64_t x83 = ((((uint64_t)x5 * x39) + ((uint64_t)x7 * x37)) + (0x1f * ((0x2 * ((uint64_t)x9 * x66)) + (((uint64_t)x11 * x67) + ((0x2 * ((uint64_t)x13 * x65)) + (((uint64_t)x15 * x63) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + (((uint64_t)x21 * x57) + ((0x2 * ((uint64_t)x23 * x55)) + (((uint64_t)x25 * x53) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + (((uint64_t)x31 * x47) + ((0x2 * ((uint64_t)x33 * x45)) + (((uint64_t)x35 * x43) + (0x2 * ((uint64_t)x34 * x41))))))))))))))))));
- uint64_t x84 = (((uint64_t)x5 * x37) + (0x1f * ((0x2 * ((uint64_t)x7 * x66)) + ((0x2 * ((uint64_t)x9 * x67)) + ((0x2 * ((uint64_t)x11 * x65)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + ((0x2 * ((uint64_t)x35 * x41)) + (0x2 * ((uint64_t)x34 * x39)))))))))))))))))));
- uint64_t x85 = (x84 >> 0x18);
- uint32_t x86 = ((uint32_t)x84 & 0xffffff);
- uint64_t x87 = (x85 + x83);
- uint64_t x88 = (x87 >> 0x18);
- uint32_t x89 = ((uint32_t)x87 & 0xffffff);
- uint64_t x90 = (x88 + x82);
- uint64_t x91 = (x90 >> 0x17);
- uint32_t x92 = ((uint32_t)x90 & 0x7fffff);
- uint64_t x93 = (x91 + x81);
- uint64_t x94 = (x93 >> 0x18);
- uint32_t x95 = ((uint32_t)x93 & 0xffffff);
- uint64_t x96 = (x94 + x80);
- uint64_t x97 = (x96 >> 0x17);
- uint32_t x98 = ((uint32_t)x96 & 0x7fffff);
- uint64_t x99 = (x97 + x79);
- uint64_t x100 = (x99 >> 0x18);
- uint32_t x101 = ((uint32_t)x99 & 0xffffff);
- uint64_t x102 = (x100 + x78);
- uint64_t x103 = (x102 >> 0x18);
- uint32_t x104 = ((uint32_t)x102 & 0xffffff);
- uint64_t x105 = (x103 + x77);
- uint64_t x106 = (x105 >> 0x17);
- uint32_t x107 = ((uint32_t)x105 & 0x7fffff);
- uint64_t x108 = (x106 + x76);
- uint64_t x109 = (x108 >> 0x18);
- uint32_t x110 = ((uint32_t)x108 & 0xffffff);
- uint64_t x111 = (x109 + x75);
- uint64_t x112 = (x111 >> 0x17);
- uint32_t x113 = ((uint32_t)x111 & 0x7fffff);
- uint64_t x114 = (x112 + x74);
- uint64_t x115 = (x114 >> 0x18);
- uint32_t x116 = ((uint32_t)x114 & 0xffffff);
- uint64_t x117 = (x115 + x73);
- uint64_t x118 = (x117 >> 0x18);
- uint32_t x119 = ((uint32_t)x117 & 0xffffff);
- uint64_t x120 = (x118 + x72);
- uint64_t x121 = (x120 >> 0x17);
- uint32_t x122 = ((uint32_t)x120 & 0x7fffff);
- uint64_t x123 = (x121 + x71);
- uint64_t x124 = (x123 >> 0x18);
- uint32_t x125 = ((uint32_t)x123 & 0xffffff);
- uint64_t x126 = (x124 + x70);
- uint64_t x127 = (x126 >> 0x17);
- uint32_t x128 = ((uint32_t)x126 & 0x7fffff);
- uint64_t x129 = (x127 + x69);
- uint64_t x130 = (x129 >> 0x18);
- uint32_t x131 = ((uint32_t)x129 & 0xffffff);
- uint64_t x132 = (x130 + x68);
- uint64_t x133 = (x132 >> 0x17);
- uint32_t x134 = ((uint32_t)x132 & 0x7fffff);
- uint64_t x135 = (x86 + (0x1f * x133));
- uint32_t x136 = (uint32_t) (x135 >> 0x18);
- uint32_t x137 = ((uint32_t)x135 & 0xffffff);
- uint32_t x138 = (x136 + x89);
- uint32_t x139 = (x138 >> 0x18);
- uint32_t x140 = (x138 & 0xffffff);
- return (Return x134, Return x131, Return x128, Return x125, Return x122, Return x119, Return x116, Return x113, Return x110, Return x107, Return x104, Return x101, Return x98, Return x95, (x139 + x92), Return x140, Return x137))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e401m31_17limbs/femulDisplay.v b/src/Specific/solinas32_2e401m31_17limbs/femulDisplay.v
deleted file mode 100644
index 0c5e08bb2..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e401m31_17limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e401m31_17limbs/fesquare.c b/src/Specific/solinas32_2e401m31_17limbs/fesquare.c
deleted file mode 100644
index 598997beb..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/fesquare.c
+++ /dev/null
@@ -1,110 +0,0 @@
-static void fesquare(uint32_t out[17], const uint32_t in1[17]) {
- { const uint32_t x31 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x33 = (((uint64_t)x2 * x31) + (((uint64_t)x4 * x32) + ((0x2 * ((uint64_t)x6 * x30)) + (((uint64_t)x8 * x28) + ((0x2 * ((uint64_t)x10 * x26)) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + ((0x2 * ((uint64_t)x26 * x10)) + (((uint64_t)x28 * x8) + ((0x2 * ((uint64_t)x30 * x6)) + (((uint64_t)x32 * x4) + ((uint64_t)x31 * x2)))))))))))))))));
- { uint64_t x34 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + (((uint64_t)x12 * x22) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + (((uint64_t)x22 * x12) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x1f * (0x2 * ((uint64_t)x31 * x31))));
- { uint64_t x35 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + ((0x2 * ((uint64_t)x6 * x26)) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + ((0x2 * ((uint64_t)x26 * x6)) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x1f * (((uint64_t)x32 * x31) + ((uint64_t)x31 * x32))));
- { uint64_t x36 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + (((uint64_t)x8 * x22) + ((0x2 * ((uint64_t)x10 * x20)) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + ((0x2 * ((uint64_t)x20 * x10)) + (((uint64_t)x22 * x8) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x30 * x31)) + (((uint64_t)x32 * x32) + (0x2 * ((uint64_t)x31 * x30))))));
- { uint64_t x37 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x1f * (((uint64_t)x28 * x31) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + ((uint64_t)x31 * x28))))));
- { uint64_t x38 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + ((0x2 * ((uint64_t)x6 * x20)) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + ((0x2 * ((uint64_t)x20 * x6)) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x1f * ((0x2 * ((uint64_t)x26 * x31)) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + (0x2 * ((uint64_t)x31 * x26))))))));
- { uint64_t x39 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x1f * ((0x2 * ((uint64_t)x24 * x31)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + (0x2 * ((uint64_t)x31 * x24)))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x1f * (((uint64_t)x22 * x31) + (((uint64_t)x24 * x32) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + (((uint64_t)x32 * x24) + ((uint64_t)x31 * x22)))))))));
- { uint64_t x41 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x1f * ((0x2 * ((uint64_t)x20 * x31)) + (((uint64_t)x22 * x32) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + (((uint64_t)x32 * x22) + (0x2 * ((uint64_t)x31 * x20)))))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x1f * (((uint64_t)x18 * x31) + (((uint64_t)x20 * x32) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + (((uint64_t)x32 * x20) + ((uint64_t)x31 * x18)))))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x1f * ((0x2 * ((uint64_t)x16 * x31)) + (((uint64_t)x18 * x32) + ((0x2 * ((uint64_t)x20 * x30)) + (((uint64_t)x22 * x28) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + (((uint64_t)x28 * x22) + ((0x2 * ((uint64_t)x30 * x20)) + (((uint64_t)x32 * x18) + (0x2 * ((uint64_t)x31 * x16)))))))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x1f * ((0x2 * ((uint64_t)x14 * x31)) + ((0x2 * ((uint64_t)x16 * x32)) + ((0x2 * ((uint64_t)x18 * x30)) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + ((0x2 * ((uint64_t)x30 * x18)) + ((0x2 * ((uint64_t)x32 * x16)) + (0x2 * ((uint64_t)x31 * x14))))))))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x1f * (((uint64_t)x12 * x31) + (((uint64_t)x14 * x32) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + ((0x2 * ((uint64_t)x20 * x26)) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + ((0x2 * ((uint64_t)x26 * x20)) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + (((uint64_t)x32 * x14) + ((uint64_t)x31 * x12))))))))))))));
- { uint64_t x46 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x1f * ((0x2 * ((uint64_t)x10 * x31)) + (((uint64_t)x12 * x32) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + (((uint64_t)x32 * x12) + (0x2 * ((uint64_t)x31 * x10))))))))))))))));
- { uint64_t x47 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x1f * (((uint64_t)x8 * x31) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + ((0x2 * ((uint64_t)x16 * x26)) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((0x2 * ((uint64_t)x26 * x16)) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + ((uint64_t)x31 * x8))))))))))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1f * ((0x2 * ((uint64_t)x6 * x31)) + (((uint64_t)x8 * x32) + ((0x2 * ((uint64_t)x10 * x30)) + (((uint64_t)x12 * x28) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + (((uint64_t)x28 * x12) + ((0x2 * ((uint64_t)x30 * x10)) + (((uint64_t)x32 * x8) + (0x2 * ((uint64_t)x31 * x6))))))))))))))))));
- { uint64_t x49 = (((uint64_t)x2 * x2) + (0x1f * ((0x2 * ((uint64_t)x4 * x31)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + (0x2 * ((uint64_t)x31 * x4)))))))))))))))))));
- { uint64_t x50 = (x49 >> 0x18);
- { uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- { uint64_t x52 = (x50 + x48);
- { uint64_t x53 = (x52 >> 0x18);
- { uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- { uint64_t x55 = (x53 + x47);
- { uint64_t x56 = (x55 >> 0x17);
- { uint32_t x57 = ((uint32_t)x55 & 0x7fffff);
- { uint64_t x58 = (x56 + x46);
- { uint64_t x59 = (x58 >> 0x18);
- { uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- { uint64_t x61 = (x59 + x45);
- { uint64_t x62 = (x61 >> 0x17);
- { uint32_t x63 = ((uint32_t)x61 & 0x7fffff);
- { uint64_t x64 = (x62 + x44);
- { uint64_t x65 = (x64 >> 0x18);
- { uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- { uint64_t x67 = (x65 + x43);
- { uint64_t x68 = (x67 >> 0x18);
- { uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- { uint64_t x70 = (x68 + x42);
- { uint64_t x71 = (x70 >> 0x17);
- { uint32_t x72 = ((uint32_t)x70 & 0x7fffff);
- { uint64_t x73 = (x71 + x41);
- { uint64_t x74 = (x73 >> 0x18);
- { uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- { uint64_t x76 = (x74 + x40);
- { uint64_t x77 = (x76 >> 0x17);
- { uint32_t x78 = ((uint32_t)x76 & 0x7fffff);
- { uint64_t x79 = (x77 + x39);
- { uint64_t x80 = (x79 >> 0x18);
- { uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- { uint64_t x82 = (x80 + x38);
- { uint64_t x83 = (x82 >> 0x18);
- { uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- { uint64_t x85 = (x83 + x37);
- { uint64_t x86 = (x85 >> 0x17);
- { uint32_t x87 = ((uint32_t)x85 & 0x7fffff);
- { uint64_t x88 = (x86 + x36);
- { uint64_t x89 = (x88 >> 0x18);
- { uint32_t x90 = ((uint32_t)x88 & 0xffffff);
- { uint64_t x91 = (x89 + x35);
- { uint64_t x92 = (x91 >> 0x17);
- { uint32_t x93 = ((uint32_t)x91 & 0x7fffff);
- { uint64_t x94 = (x92 + x34);
- { uint64_t x95 = (x94 >> 0x18);
- { uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- { uint64_t x97 = (x95 + x33);
- { uint64_t x98 = (x97 >> 0x17);
- { uint32_t x99 = ((uint32_t)x97 & 0x7fffff);
- { uint64_t x100 = (x51 + (0x1f * x98));
- { uint32_t x101 = (uint32_t) (x100 >> 0x18);
- { uint32_t x102 = ((uint32_t)x100 & 0xffffff);
- { uint32_t x103 = (x101 + x54);
- { uint32_t x104 = (x103 >> 0x18);
- { uint32_t x105 = (x103 & 0xffffff);
- out[0] = x102;
- out[1] = x105;
- out[2] = (x104 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- out[10] = x81;
- out[11] = x84;
- out[12] = x87;
- out[13] = x90;
- out[14] = x93;
- out[15] = x96;
- out[16] = x99;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e401m31_17limbs/fesquare.v b/src/Specific/solinas32_2e401m31_17limbs/fesquare.v
deleted file mode 100644
index a8242f17a..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e401m31_17limbs.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_2e401m31_17limbs/fesquareDisplay.log b/src/Specific/solinas32_2e401m31_17limbs/fesquareDisplay.log
deleted file mode 100644
index e6d2e372c..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,80 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x31, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x33 = (((uint64_t)x2 * x31) + (((uint64_t)x4 * x32) + ((0x2 * ((uint64_t)x6 * x30)) + (((uint64_t)x8 * x28) + ((0x2 * ((uint64_t)x10 * x26)) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + ((0x2 * ((uint64_t)x26 * x10)) + (((uint64_t)x28 * x8) + ((0x2 * ((uint64_t)x30 * x6)) + (((uint64_t)x32 * x4) + ((uint64_t)x31 * x2)))))))))))))))));
- uint64_t x34 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + (((uint64_t)x12 * x22) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + (((uint64_t)x22 * x12) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x1f * (0x2 * ((uint64_t)x31 * x31))));
- uint64_t x35 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + ((0x2 * ((uint64_t)x6 * x26)) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + ((0x2 * ((uint64_t)x26 * x6)) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x1f * (((uint64_t)x32 * x31) + ((uint64_t)x31 * x32))));
- uint64_t x36 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + (((uint64_t)x8 * x22) + ((0x2 * ((uint64_t)x10 * x20)) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + ((0x2 * ((uint64_t)x20 * x10)) + (((uint64_t)x22 * x8) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x30 * x31)) + (((uint64_t)x32 * x32) + (0x2 * ((uint64_t)x31 * x30))))));
- uint64_t x37 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x1f * (((uint64_t)x28 * x31) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + ((uint64_t)x31 * x28))))));
- uint64_t x38 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + ((0x2 * ((uint64_t)x6 * x20)) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + ((0x2 * ((uint64_t)x20 * x6)) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x1f * ((0x2 * ((uint64_t)x26 * x31)) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + (0x2 * ((uint64_t)x31 * x26))))))));
- uint64_t x39 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x1f * ((0x2 * ((uint64_t)x24 * x31)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + (0x2 * ((uint64_t)x31 * x24)))))))));
- uint64_t x40 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x1f * (((uint64_t)x22 * x31) + (((uint64_t)x24 * x32) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + (((uint64_t)x32 * x24) + ((uint64_t)x31 * x22)))))))));
- uint64_t x41 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x1f * ((0x2 * ((uint64_t)x20 * x31)) + (((uint64_t)x22 * x32) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + (((uint64_t)x32 * x22) + (0x2 * ((uint64_t)x31 * x20)))))))))));
- uint64_t x42 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x1f * (((uint64_t)x18 * x31) + (((uint64_t)x20 * x32) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + (((uint64_t)x32 * x20) + ((uint64_t)x31 * x18)))))))))));
- uint64_t x43 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x1f * ((0x2 * ((uint64_t)x16 * x31)) + (((uint64_t)x18 * x32) + ((0x2 * ((uint64_t)x20 * x30)) + (((uint64_t)x22 * x28) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + (((uint64_t)x28 * x22) + ((0x2 * ((uint64_t)x30 * x20)) + (((uint64_t)x32 * x18) + (0x2 * ((uint64_t)x31 * x16)))))))))))));
- uint64_t x44 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x1f * ((0x2 * ((uint64_t)x14 * x31)) + ((0x2 * ((uint64_t)x16 * x32)) + ((0x2 * ((uint64_t)x18 * x30)) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + ((0x2 * ((uint64_t)x30 * x18)) + ((0x2 * ((uint64_t)x32 * x16)) + (0x2 * ((uint64_t)x31 * x14))))))))))))));
- uint64_t x45 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x1f * (((uint64_t)x12 * x31) + (((uint64_t)x14 * x32) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + ((0x2 * ((uint64_t)x20 * x26)) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + ((0x2 * ((uint64_t)x26 * x20)) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + (((uint64_t)x32 * x14) + ((uint64_t)x31 * x12))))))))))))));
- uint64_t x46 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x1f * ((0x2 * ((uint64_t)x10 * x31)) + (((uint64_t)x12 * x32) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + (((uint64_t)x32 * x12) + (0x2 * ((uint64_t)x31 * x10))))))))))))))));
- uint64_t x47 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x1f * (((uint64_t)x8 * x31) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + ((0x2 * ((uint64_t)x16 * x26)) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((0x2 * ((uint64_t)x26 * x16)) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + ((uint64_t)x31 * x8))))))))))))))));
- uint64_t x48 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1f * ((0x2 * ((uint64_t)x6 * x31)) + (((uint64_t)x8 * x32) + ((0x2 * ((uint64_t)x10 * x30)) + (((uint64_t)x12 * x28) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + (((uint64_t)x28 * x12) + ((0x2 * ((uint64_t)x30 * x10)) + (((uint64_t)x32 * x8) + (0x2 * ((uint64_t)x31 * x6))))))))))))))))));
- uint64_t x49 = (((uint64_t)x2 * x2) + (0x1f * ((0x2 * ((uint64_t)x4 * x31)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + (0x2 * ((uint64_t)x31 * x4)))))))))))))))))));
- uint64_t x50 = (x49 >> 0x18);
- uint32_t x51 = ((uint32_t)x49 & 0xffffff);
- uint64_t x52 = (x50 + x48);
- uint64_t x53 = (x52 >> 0x18);
- uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- uint64_t x55 = (x53 + x47);
- uint64_t x56 = (x55 >> 0x17);
- uint32_t x57 = ((uint32_t)x55 & 0x7fffff);
- uint64_t x58 = (x56 + x46);
- uint64_t x59 = (x58 >> 0x18);
- uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- uint64_t x61 = (x59 + x45);
- uint64_t x62 = (x61 >> 0x17);
- uint32_t x63 = ((uint32_t)x61 & 0x7fffff);
- uint64_t x64 = (x62 + x44);
- uint64_t x65 = (x64 >> 0x18);
- uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- uint64_t x67 = (x65 + x43);
- uint64_t x68 = (x67 >> 0x18);
- uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- uint64_t x70 = (x68 + x42);
- uint64_t x71 = (x70 >> 0x17);
- uint32_t x72 = ((uint32_t)x70 & 0x7fffff);
- uint64_t x73 = (x71 + x41);
- uint64_t x74 = (x73 >> 0x18);
- uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- uint64_t x76 = (x74 + x40);
- uint64_t x77 = (x76 >> 0x17);
- uint32_t x78 = ((uint32_t)x76 & 0x7fffff);
- uint64_t x79 = (x77 + x39);
- uint64_t x80 = (x79 >> 0x18);
- uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- uint64_t x82 = (x80 + x38);
- uint64_t x83 = (x82 >> 0x18);
- uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- uint64_t x85 = (x83 + x37);
- uint64_t x86 = (x85 >> 0x17);
- uint32_t x87 = ((uint32_t)x85 & 0x7fffff);
- uint64_t x88 = (x86 + x36);
- uint64_t x89 = (x88 >> 0x18);
- uint32_t x90 = ((uint32_t)x88 & 0xffffff);
- uint64_t x91 = (x89 + x35);
- uint64_t x92 = (x91 >> 0x17);
- uint32_t x93 = ((uint32_t)x91 & 0x7fffff);
- uint64_t x94 = (x92 + x34);
- uint64_t x95 = (x94 >> 0x18);
- uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- uint64_t x97 = (x95 + x33);
- uint64_t x98 = (x97 >> 0x17);
- uint32_t x99 = ((uint32_t)x97 & 0x7fffff);
- uint64_t x100 = (x51 + (0x1f * x98));
- uint32_t x101 = (uint32_t) (x100 >> 0x18);
- uint32_t x102 = ((uint32_t)x100 & 0xffffff);
- uint32_t x103 = (x101 + x54);
- uint32_t x104 = (x103 >> 0x18);
- uint32_t x105 = (x103 & 0xffffff);
- return (Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x104 + x57), Return x105, Return x102))
-x
- : word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e401m31_17limbs/fesquareDisplay.v b/src/Specific/solinas32_2e401m31_17limbs/fesquareDisplay.v
deleted file mode 100644
index f8865e160..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e401m31_17limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e401m31_17limbs/fesub.c b/src/Specific/solinas32_2e401m31_17limbs/fesub.c
deleted file mode 100644
index 4860a8735..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/fesub.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void fesub(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- out[0] = ((0x1ffffc2 + x5) - x37);
- out[1] = ((0x1fffffe + x7) - x39);
- out[2] = ((0xfffffe + x9) - x41);
- out[3] = ((0x1fffffe + x11) - x43);
- out[4] = ((0xfffffe + x13) - x45);
- out[5] = ((0x1fffffe + x15) - x47);
- out[6] = ((0x1fffffe + x17) - x49);
- out[7] = ((0xfffffe + x19) - x51);
- out[8] = ((0x1fffffe + x21) - x53);
- out[9] = ((0xfffffe + x23) - x55);
- out[10] = ((0x1fffffe + x25) - x57);
- out[11] = ((0x1fffffe + x27) - x59);
- out[12] = ((0xfffffe + x29) - x61);
- out[13] = ((0x1fffffe + x31) - x63);
- out[14] = ((0xfffffe + x33) - x65);
- out[15] = ((0x1fffffe + x35) - x67);
- out[16] = ((0xfffffe + x34) - x66);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e401m31_17limbs/fesub.v b/src/Specific/solinas32_2e401m31_17limbs/fesub.v
deleted file mode 100644
index a0e85743c..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e401m31_17limbs.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_2e401m31_17limbs/fesubDisplay.log b/src/Specific/solinas32_2e401m31_17limbs/fesubDisplay.log
deleted file mode 100644
index 12835d864..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- (((0xfffffe + x34) - x66), ((0x1fffffe + x35) - x67), ((0xfffffe + x33) - x65), ((0x1fffffe + x31) - x63), ((0xfffffe + x29) - x61), ((0x1fffffe + x27) - x59), ((0x1fffffe + x25) - x57), ((0xfffffe + x23) - x55), ((0x1fffffe + x21) - x53), ((0xfffffe + x19) - x51), ((0x1fffffe + x17) - x49), ((0x1fffffe + x15) - x47), ((0xfffffe + x13) - x45), ((0x1fffffe + x11) - x43), ((0xfffffe + x9) - x41), ((0x1fffffe + x7) - x39), ((0x1ffffc2 + x5) - x37)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e401m31_17limbs/fesubDisplay.v b/src/Specific/solinas32_2e401m31_17limbs/fesubDisplay.v
deleted file mode 100644
index 9d82dbfbb..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e401m31_17limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e401m31_17limbs/freeze.c b/src/Specific/solinas32_2e401m31_17limbs/freeze.c
deleted file mode 100644
index 20404a23b..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/freeze.c
+++ /dev/null
@@ -1,89 +0,0 @@
-static void freeze(uint32_t out[17], const uint32_t in1[17]) {
- { const uint32_t x31 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffe1);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x4, 0xffffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x6, 0x7fffff);
- { uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x8, 0xffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x10, 0x7fffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x12, 0xffffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x14, 0xffffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x16, 0x7fffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x18, 0xffffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x20, 0x7fffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x22, 0xffffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x24, 0xffffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x26, 0x7fffff);
- { uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x28, 0xffffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x30, 0x7fffff);
- { uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x32, 0xffffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x31, 0x7fffff);
- { uint32_t x84 = cmovznz32(x83, 0x0, 0xffffffff);
- { uint32_t x85 = (x84 & 0xffffe1);
- { uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x34, Return x85);
- { uint32_t x89 = (x84 & 0xffffff);
- { uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x37, Return x89);
- { uint32_t x93 = (x84 & 0x7fffff);
- { uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x40, Return x93);
- { uint32_t x97 = (x84 & 0xffffff);
- { uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x43, Return x97);
- { uint32_t x101 = (x84 & 0x7fffff);
- { uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x46, Return x101);
- { uint32_t x105 = (x84 & 0xffffff);
- { uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x49, Return x105);
- { uint32_t x109 = (x84 & 0xffffff);
- { uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x52, Return x109);
- { uint32_t x113 = (x84 & 0x7fffff);
- { uint32_t x115, uint8_t x116 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x55, Return x113);
- { uint32_t x117 = (x84 & 0xffffff);
- { uint32_t x119, uint8_t x120 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x116, Return x58, Return x117);
- { uint32_t x121 = (x84 & 0x7fffff);
- { uint32_t x123, uint8_t x124 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x120, Return x61, Return x121);
- { uint32_t x125 = (x84 & 0xffffff);
- { uint32_t x127, uint8_t x128 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x124, Return x64, Return x125);
- { uint32_t x129 = (x84 & 0xffffff);
- { uint32_t x131, uint8_t x132 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x128, Return x67, Return x129);
- { uint32_t x133 = (x84 & 0x7fffff);
- { uint32_t x135, uint8_t x136 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x132, Return x70, Return x133);
- { uint32_t x137 = (x84 & 0xffffff);
- { uint32_t x139, uint8_t x140 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x136, Return x73, Return x137);
- { uint32_t x141 = (x84 & 0x7fffff);
- { uint32_t x143, uint8_t x144 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x140, Return x76, Return x141);
- { uint32_t x145 = (x84 & 0xffffff);
- { uint32_t x147, uint8_t x148 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x144, Return x79, Return x145);
- { uint32_t x149 = (x84 & 0x7fffff);
- { uint32_t x151, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x148, Return x82, Return x149);
- out[0] = x87;
- out[1] = x91;
- out[2] = x95;
- out[3] = x99;
- out[4] = x103;
- out[5] = x107;
- out[6] = x111;
- out[7] = x115;
- out[8] = x119;
- out[9] = x123;
- out[10] = x127;
- out[11] = x131;
- out[12] = x135;
- out[13] = x139;
- out[14] = x143;
- out[15] = x147;
- out[16] = x151;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e401m31_17limbs/freeze.v b/src/Specific/solinas32_2e401m31_17limbs/freeze.v
deleted file mode 100644
index 880adcfcc..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e401m31_17limbs.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_2e401m31_17limbs/freezeDisplay.log b/src/Specific/solinas32_2e401m31_17limbs/freezeDisplay.log
deleted file mode 100644
index e8e584f85..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/freezeDisplay.log
+++ /dev/null
@@ -1,59 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x31, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffe1);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x4, 0xffffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x6, 0x7fffff);
- uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x8, 0xffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x10, 0x7fffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x12, 0xffffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x14, 0xffffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x16, 0x7fffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x18, 0xffffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x20, 0x7fffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x22, 0xffffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x24, 0xffffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x26, 0x7fffff);
- uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x28, 0xffffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x30, 0x7fffff);
- uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x32, 0xffffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x31, 0x7fffff);
- uint32_t x84 = cmovznz32(x83, 0x0, 0xffffffff);
- uint32_t x85 = (x84 & 0xffffe1);
- uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x34, Return x85);
- uint32_t x89 = (x84 & 0xffffff);
- uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x37, Return x89);
- uint32_t x93 = (x84 & 0x7fffff);
- uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x40, Return x93);
- uint32_t x97 = (x84 & 0xffffff);
- uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x43, Return x97);
- uint32_t x101 = (x84 & 0x7fffff);
- uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x46, Return x101);
- uint32_t x105 = (x84 & 0xffffff);
- uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x49, Return x105);
- uint32_t x109 = (x84 & 0xffffff);
- uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x52, Return x109);
- uint32_t x113 = (x84 & 0x7fffff);
- uint32_t x115, uint8_t x116 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x55, Return x113);
- uint32_t x117 = (x84 & 0xffffff);
- uint32_t x119, uint8_t x120 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x116, Return x58, Return x117);
- uint32_t x121 = (x84 & 0x7fffff);
- uint32_t x123, uint8_t x124 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x120, Return x61, Return x121);
- uint32_t x125 = (x84 & 0xffffff);
- uint32_t x127, uint8_t x128 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x124, Return x64, Return x125);
- uint32_t x129 = (x84 & 0xffffff);
- uint32_t x131, uint8_t x132 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x128, Return x67, Return x129);
- uint32_t x133 = (x84 & 0x7fffff);
- uint32_t x135, uint8_t x136 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x132, Return x70, Return x133);
- uint32_t x137 = (x84 & 0xffffff);
- uint32_t x139, uint8_t x140 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x136, Return x73, Return x137);
- uint32_t x141 = (x84 & 0x7fffff);
- uint32_t x143, uint8_t x144 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x140, Return x76, Return x141);
- uint32_t x145 = (x84 & 0xffffff);
- uint32_t x147, uint8_t x148 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x144, Return x79, Return x145);
- uint32_t x149 = (x84 & 0x7fffff);
- uint32_t x151, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x148, Return x82, Return x149);
- (Return x151, Return x147, Return x143, Return x139, Return x135, Return x131, Return x127, Return x123, Return x119, Return x115, Return x111, Return x107, Return x103, Return x99, Return x95, Return x91, Return x87))
-x
- : word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e401m31_17limbs/freezeDisplay.v b/src/Specific/solinas32_2e401m31_17limbs/freezeDisplay.v
deleted file mode 100644
index f7cd6df88..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e401m31_17limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e401m31_17limbs/py_interpreter.sh b/src/Specific/solinas32_2e401m31_17limbs/py_interpreter.sh
deleted file mode 100755
index 5a4c650f2..000000000
--- a/src/Specific/solinas32_2e401m31_17limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**401 - 31' -Dmodulus_bytes='23 + 10/17' -Da24='121665'
diff --git a/src/Specific/solinas32_2e413m21_16limbs/CurveParameters.v b/src/Specific/solinas32_2e413m21_16limbs/CurveParameters.v
deleted file mode 100644
index e768051fd..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^413 - 21
-Base: 25 + 13/16
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 16%nat;
- base := 25 + 13/16;
- bitwidth := 32;
- s := 2^413;
- c := [(1, 21)];
- carry_chains := Some [seq 0 (pred 16); [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_2e413m21_16limbs/Synthesis.v b/src/Specific/solinas32_2e413m21_16limbs/Synthesis.v
deleted file mode 100644
index 168ec3a3c..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e413m21_16limbs.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_2e413m21_16limbs/compiler.sh b/src/Specific/solinas32_2e413m21_16limbs/compiler.sh
deleted file mode 100755
index 9793f3d2a..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,25,26,26,26,26,25,26,26,26,26,25}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<413) - 21' "$@"
diff --git a/src/Specific/solinas32_2e413m21_16limbs/compilerxx.sh b/src/Specific/solinas32_2e413m21_16limbs/compilerxx.sh
deleted file mode 100755
index a3435756b..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,25,26,26,26,26,25,26,26,26,26,25}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<413) - 21' "$@"
diff --git a/src/Specific/solinas32_2e413m21_16limbs/feadd.c b/src/Specific/solinas32_2e413m21_16limbs/feadd.c
deleted file mode 100644
index 18b150e21..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/feadd.c
+++ /dev/null
@@ -1,51 +0,0 @@
-static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- out[0] = (x5 + x35);
- out[1] = (x7 + x37);
- out[2] = (x9 + x39);
- out[3] = (x11 + x41);
- out[4] = (x13 + x43);
- out[5] = (x15 + x45);
- out[6] = (x17 + x47);
- out[7] = (x19 + x49);
- out[8] = (x21 + x51);
- out[9] = (x23 + x53);
- out[10] = (x25 + x55);
- out[11] = (x27 + x57);
- out[12] = (x29 + x59);
- out[13] = (x31 + x61);
- out[14] = (x33 + x63);
- out[15] = (x32 + x62);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e413m21_16limbs/feadd.v b/src/Specific/solinas32_2e413m21_16limbs/feadd.v
deleted file mode 100644
index 9d4b6e686..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e413m21_16limbs.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_2e413m21_16limbs/feaddDisplay.log b/src/Specific/solinas32_2e413m21_16limbs/feaddDisplay.log
deleted file mode 100644
index 130c31964..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- ((x32 + x62), (x33 + x63), (x31 + x61), (x29 + x59), (x27 + x57), (x25 + x55), (x23 + x53), (x21 + x51), (x19 + x49), (x17 + x47), (x15 + x45), (x13 + x43), (x11 + x41), (x9 + x39), (x7 + x37), (x5 + x35)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e413m21_16limbs/feaddDisplay.v b/src/Specific/solinas32_2e413m21_16limbs/feaddDisplay.v
deleted file mode 100644
index b56dfe2dd..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e413m21_16limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e413m21_16limbs/fecarry.v b/src/Specific/solinas32_2e413m21_16limbs/fecarry.v
deleted file mode 100644
index c3c46fafb..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e413m21_16limbs.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_2e413m21_16limbs/fecarryDisplay.v b/src/Specific/solinas32_2e413m21_16limbs/fecarryDisplay.v
deleted file mode 100644
index 38a4b76ee..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e413m21_16limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e413m21_16limbs/femul.c b/src/Specific/solinas32_2e413m21_16limbs/femul.c
deleted file mode 100644
index 9fddbd58d..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/femul.c
+++ /dev/null
@@ -1,120 +0,0 @@
-static void femul(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- { uint64_t x64 = (((uint64_t)x5 * x62) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + ((0x2 * ((uint64_t)x15 * x55)) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + ((0x2 * ((uint64_t)x25 * x45)) + (((uint64_t)x27 * x43) + (((uint64_t)x29 * x41) + (((uint64_t)x31 * x39) + (((uint64_t)x33 * x37) + ((uint64_t)x32 * x35))))))))))))))));
- { uint64_t x65 = ((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + (((uint64_t)x9 * x59) + (((uint64_t)x11 * x57) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + ((0x2 * ((uint64_t)x23 * x45)) + ((0x2 * ((uint64_t)x25 * x43)) + (((uint64_t)x27 * x41) + (((uint64_t)x29 * x39) + (((uint64_t)x31 * x37) + ((uint64_t)x33 * x35))))))))))))))) + (0x15 * (0x2 * ((uint64_t)x32 * x62))));
- { uint64_t x66 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + ((0x2 * ((uint64_t)x11 * x55)) + ((0x2 * ((uint64_t)x13 * x53)) + ((0x2 * ((uint64_t)x15 * x51)) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + ((0x2 * ((uint64_t)x21 * x45)) + ((0x2 * ((uint64_t)x23 * x43)) + ((0x2 * ((uint64_t)x25 * x41)) + (((uint64_t)x27 * x39) + (((uint64_t)x29 * x37) + ((uint64_t)x31 * x35)))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x33 * x62)) + (0x2 * ((uint64_t)x32 * x63)))));
- { uint64_t x67 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + (((uint64_t)x17 * x47) + ((0x2 * ((uint64_t)x19 * x45)) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + (((uint64_t)x27 * x37) + ((uint64_t)x29 * x35))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x31 * x62)) + ((0x2 * ((uint64_t)x33 * x63)) + (0x2 * ((uint64_t)x32 * x61))))));
- { uint64_t x68 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + ((0x2 * ((uint64_t)x25 * x37)) + ((uint64_t)x27 * x35)))))))))))) + (0x15 * ((0x2 * ((uint64_t)x29 * x62)) + ((0x2 * ((uint64_t)x31 * x63)) + ((0x2 * ((uint64_t)x33 * x61)) + (0x2 * ((uint64_t)x32 * x59)))))));
- { uint64_t x69 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + ((0x2 * ((uint64_t)x15 * x45)) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + ((uint64_t)x25 * x35))))))))))) + (0x15 * (((uint64_t)x27 * x62) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + (((uint64_t)x33 * x59) + ((uint64_t)x32 * x57)))))));
- { uint64_t x70 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + ((uint64_t)x23 * x35)))))))))) + (0x15 * ((0x2 * ((uint64_t)x25 * x62)) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + (0x2 * ((uint64_t)x32 * x55)))))))));
- { uint64_t x71 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + ((uint64_t)x21 * x35))))))))) + (0x15 * ((0x2 * ((uint64_t)x23 * x62)) + ((0x2 * ((uint64_t)x25 * x63)) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + ((0x2 * ((uint64_t)x33 * x55)) + (0x2 * ((uint64_t)x32 * x53))))))))));
- { uint64_t x72 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + ((0x2 * ((uint64_t)x9 * x45)) + ((0x2 * ((uint64_t)x11 * x43)) + ((0x2 * ((uint64_t)x13 * x41)) + ((0x2 * ((uint64_t)x15 * x39)) + (((uint64_t)x17 * x37) + ((uint64_t)x19 * x35)))))))) + (0x15 * ((0x2 * ((uint64_t)x21 * x62)) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + (((uint64_t)x27 * x59) + (((uint64_t)x29 * x57) + ((0x2 * ((uint64_t)x31 * x55)) + ((0x2 * ((uint64_t)x33 * x53)) + (0x2 * ((uint64_t)x32 * x51)))))))))));
- { uint64_t x73 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((uint64_t)x17 * x35))))))) + (0x15 * ((0x2 * ((uint64_t)x19 * x62)) + ((0x2 * ((uint64_t)x21 * x63)) + ((0x2 * ((uint64_t)x23 * x61)) + ((0x2 * ((uint64_t)x25 * x59)) + (((uint64_t)x27 * x57) + ((0x2 * ((uint64_t)x29 * x55)) + ((0x2 * ((uint64_t)x31 * x53)) + ((0x2 * ((uint64_t)x33 * x51)) + (0x2 * ((uint64_t)x32 * x49))))))))))));
- { uint64_t x74 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + ((uint64_t)x15 * x35)))))) + (0x15 * (((uint64_t)x17 * x62) + (((uint64_t)x19 * x63) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + ((uint64_t)x32 * x47))))))))))));
- { uint64_t x75 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((uint64_t)x13 * x35))))) + (0x15 * ((0x2 * ((uint64_t)x15 * x62)) + (((uint64_t)x17 * x63) + (((uint64_t)x19 * x61) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + ((0x2 * ((uint64_t)x25 * x55)) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + (((uint64_t)x31 * x49) + (((uint64_t)x33 * x47) + (0x2 * ((uint64_t)x32 * x45))))))))))))));
- { uint64_t x76 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((uint64_t)x11 * x35)))) + (0x15 * ((0x2 * ((uint64_t)x13 * x62)) + ((0x2 * ((uint64_t)x15 * x63)) + (((uint64_t)x17 * x61) + (((uint64_t)x19 * x59) + (((uint64_t)x21 * x57) + ((0x2 * ((uint64_t)x23 * x55)) + ((0x2 * ((uint64_t)x25 * x53)) + (((uint64_t)x27 * x51) + (((uint64_t)x29 * x49) + (((uint64_t)x31 * x47) + ((0x2 * ((uint64_t)x33 * x45)) + (0x2 * ((uint64_t)x32 * x43)))))))))))))));
- { uint64_t x77 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((uint64_t)x9 * x35))) + (0x15 * ((0x2 * ((uint64_t)x11 * x62)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + (((uint64_t)x17 * x59) + (((uint64_t)x19 * x57) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + (((uint64_t)x27 * x49) + (((uint64_t)x29 * x47) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + (0x2 * ((uint64_t)x32 * x41))))))))))))))));
- { ℤ x78 = ((((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x9 * x62)) + ((0x2 * ((uint64_t)x11 * x63)) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + (((uint64_t)x17 * x57) + ((0x2 * ((uint64_t)x19 * x55)) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + (((uint64_t)x27 * x47) + ((0x2 * ((uint64_t)x29 * x45)) + ((0x2 * ((uint64_t)x31 * x43)) + ((0x2 * ((uint64_t)x33 * x41)) + (0x2 * ((uint64_t)x32 * x39)))))))))))))))));
- { ℤ x79 = (((uint64_t)x5 * x35) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x7 * x62)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + (0x2 * ((uint64_t)x32 * x37))))))))))))))))));
- { uint64_t x80 = (x79 >> 0x1a);
- { uint32_t x81 = (x79 & 0x3ffffff);
- { ℤ x82 = (x80 +ℤ x78);
- { uint64_t x83 = (x82 >> 0x1a);
- { uint32_t x84 = (x82 & 0x3ffffff);
- { uint64_t x85 = (x83 + x77);
- { uint64_t x86 = (x85 >> 0x1a);
- { uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- { uint64_t x88 = (x86 + x76);
- { uint64_t x89 = (x88 >> 0x1a);
- { uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- { uint64_t x91 = (x89 + x75);
- { uint64_t x92 = (x91 >> 0x1a);
- { uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- { uint64_t x94 = (x92 + x74);
- { uint64_t x95 = (x94 >> 0x19);
- { uint32_t x96 = ((uint32_t)x94 & 0x1ffffff);
- { uint64_t x97 = (x95 + x73);
- { uint64_t x98 = (x97 >> 0x1a);
- { uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- { uint64_t x100 = (x98 + x72);
- { uint64_t x101 = (x100 >> 0x1a);
- { uint32_t x102 = ((uint32_t)x100 & 0x3ffffff);
- { uint64_t x103 = (x101 + x71);
- { uint64_t x104 = (x103 >> 0x1a);
- { uint32_t x105 = ((uint32_t)x103 & 0x3ffffff);
- { uint64_t x106 = (x104 + x70);
- { uint64_t x107 = (x106 >> 0x1a);
- { uint32_t x108 = ((uint32_t)x106 & 0x3ffffff);
- { uint64_t x109 = (x107 + x69);
- { uint64_t x110 = (x109 >> 0x19);
- { uint32_t x111 = ((uint32_t)x109 & 0x1ffffff);
- { uint64_t x112 = (x110 + x68);
- { uint64_t x113 = (x112 >> 0x1a);
- { uint32_t x114 = ((uint32_t)x112 & 0x3ffffff);
- { uint64_t x115 = (x113 + x67);
- { uint64_t x116 = (x115 >> 0x1a);
- { uint32_t x117 = ((uint32_t)x115 & 0x3ffffff);
- { uint64_t x118 = (x116 + x66);
- { uint64_t x119 = (x118 >> 0x1a);
- { uint32_t x120 = ((uint32_t)x118 & 0x3ffffff);
- { uint64_t x121 = (x119 + x65);
- { uint64_t x122 = (x121 >> 0x1a);
- { uint32_t x123 = ((uint32_t)x121 & 0x3ffffff);
- { uint64_t x124 = (x122 + x64);
- { uint64_t x125 = (x124 >> 0x19);
- { uint32_t x126 = ((uint32_t)x124 & 0x1ffffff);
- { uint64_t x127 = (x81 + (0x15 * x125));
- { uint32_t x128 = (uint32_t) (x127 >> 0x1a);
- { uint32_t x129 = ((uint32_t)x127 & 0x3ffffff);
- { uint32_t x130 = (x128 + x84);
- { uint32_t x131 = (x130 >> 0x1a);
- { uint32_t x132 = (x130 & 0x3ffffff);
- out[0] = x129;
- out[1] = x132;
- out[2] = (x131 + x87);
- out[3] = x90;
- out[4] = x93;
- out[5] = x96;
- out[6] = x99;
- out[7] = x102;
- out[8] = x105;
- out[9] = x108;
- out[10] = x111;
- out[11] = x114;
- out[12] = x117;
- out[13] = x120;
- out[14] = x123;
- out[15] = x126;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e413m21_16limbs/femul.v b/src/Specific/solinas32_2e413m21_16limbs/femul.v
deleted file mode 100644
index 4a9365973..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e413m21_16limbs.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_2e413m21_16limbs/femulDisplay.log b/src/Specific/solinas32_2e413m21_16limbs/femulDisplay.log
deleted file mode 100644
index 1e744ca34..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/femulDisplay.log
+++ /dev/null
@@ -1,76 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- uint64_t x64 = (((uint64_t)x5 * x62) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + ((0x2 * ((uint64_t)x15 * x55)) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + ((0x2 * ((uint64_t)x25 * x45)) + (((uint64_t)x27 * x43) + (((uint64_t)x29 * x41) + (((uint64_t)x31 * x39) + (((uint64_t)x33 * x37) + ((uint64_t)x32 * x35))))))))))))))));
- uint64_t x65 = ((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + (((uint64_t)x9 * x59) + (((uint64_t)x11 * x57) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + ((0x2 * ((uint64_t)x23 * x45)) + ((0x2 * ((uint64_t)x25 * x43)) + (((uint64_t)x27 * x41) + (((uint64_t)x29 * x39) + (((uint64_t)x31 * x37) + ((uint64_t)x33 * x35))))))))))))))) + (0x15 * (0x2 * ((uint64_t)x32 * x62))));
- uint64_t x66 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + ((0x2 * ((uint64_t)x11 * x55)) + ((0x2 * ((uint64_t)x13 * x53)) + ((0x2 * ((uint64_t)x15 * x51)) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + ((0x2 * ((uint64_t)x21 * x45)) + ((0x2 * ((uint64_t)x23 * x43)) + ((0x2 * ((uint64_t)x25 * x41)) + (((uint64_t)x27 * x39) + (((uint64_t)x29 * x37) + ((uint64_t)x31 * x35)))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x33 * x62)) + (0x2 * ((uint64_t)x32 * x63)))));
- uint64_t x67 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + (((uint64_t)x17 * x47) + ((0x2 * ((uint64_t)x19 * x45)) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + (((uint64_t)x27 * x37) + ((uint64_t)x29 * x35))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x31 * x62)) + ((0x2 * ((uint64_t)x33 * x63)) + (0x2 * ((uint64_t)x32 * x61))))));
- uint64_t x68 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + ((0x2 * ((uint64_t)x25 * x37)) + ((uint64_t)x27 * x35)))))))))))) + (0x15 * ((0x2 * ((uint64_t)x29 * x62)) + ((0x2 * ((uint64_t)x31 * x63)) + ((0x2 * ((uint64_t)x33 * x61)) + (0x2 * ((uint64_t)x32 * x59)))))));
- uint64_t x69 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + ((0x2 * ((uint64_t)x15 * x45)) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + ((uint64_t)x25 * x35))))))))))) + (0x15 * (((uint64_t)x27 * x62) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + (((uint64_t)x33 * x59) + ((uint64_t)x32 * x57)))))));
- uint64_t x70 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + (((uint64_t)x17 * x41) + (((uint64_t)x19 * x39) + (((uint64_t)x21 * x37) + ((uint64_t)x23 * x35)))))))))) + (0x15 * ((0x2 * ((uint64_t)x25 * x62)) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + (0x2 * ((uint64_t)x32 * x55)))))))));
- uint64_t x71 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + (((uint64_t)x17 * x39) + (((uint64_t)x19 * x37) + ((uint64_t)x21 * x35))))))))) + (0x15 * ((0x2 * ((uint64_t)x23 * x62)) + ((0x2 * ((uint64_t)x25 * x63)) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + ((0x2 * ((uint64_t)x33 * x55)) + (0x2 * ((uint64_t)x32 * x53))))))))));
- uint64_t x72 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + ((0x2 * ((uint64_t)x9 * x45)) + ((0x2 * ((uint64_t)x11 * x43)) + ((0x2 * ((uint64_t)x13 * x41)) + ((0x2 * ((uint64_t)x15 * x39)) + (((uint64_t)x17 * x37) + ((uint64_t)x19 * x35)))))))) + (0x15 * ((0x2 * ((uint64_t)x21 * x62)) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + (((uint64_t)x27 * x59) + (((uint64_t)x29 * x57) + ((0x2 * ((uint64_t)x31 * x55)) + ((0x2 * ((uint64_t)x33 * x53)) + (0x2 * ((uint64_t)x32 * x51)))))))))));
- uint64_t x73 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((0x2 * ((uint64_t)x15 * x37)) + ((uint64_t)x17 * x35))))))) + (0x15 * ((0x2 * ((uint64_t)x19 * x62)) + ((0x2 * ((uint64_t)x21 * x63)) + ((0x2 * ((uint64_t)x23 * x61)) + ((0x2 * ((uint64_t)x25 * x59)) + (((uint64_t)x27 * x57) + ((0x2 * ((uint64_t)x29 * x55)) + ((0x2 * ((uint64_t)x31 * x53)) + ((0x2 * ((uint64_t)x33 * x51)) + (0x2 * ((uint64_t)x32 * x49))))))))))));
- uint64_t x74 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + ((uint64_t)x15 * x35)))))) + (0x15 * (((uint64_t)x17 * x62) + (((uint64_t)x19 * x63) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + ((uint64_t)x32 * x47))))))))))));
- uint64_t x75 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((uint64_t)x13 * x35))))) + (0x15 * ((0x2 * ((uint64_t)x15 * x62)) + (((uint64_t)x17 * x63) + (((uint64_t)x19 * x61) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + ((0x2 * ((uint64_t)x25 * x55)) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + (((uint64_t)x31 * x49) + (((uint64_t)x33 * x47) + (0x2 * ((uint64_t)x32 * x45))))))))))))));
- uint64_t x76 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((uint64_t)x11 * x35)))) + (0x15 * ((0x2 * ((uint64_t)x13 * x62)) + ((0x2 * ((uint64_t)x15 * x63)) + (((uint64_t)x17 * x61) + (((uint64_t)x19 * x59) + (((uint64_t)x21 * x57) + ((0x2 * ((uint64_t)x23 * x55)) + ((0x2 * ((uint64_t)x25 * x53)) + (((uint64_t)x27 * x51) + (((uint64_t)x29 * x49) + (((uint64_t)x31 * x47) + ((0x2 * ((uint64_t)x33 * x45)) + (0x2 * ((uint64_t)x32 * x43)))))))))))))));
- uint64_t x77 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((uint64_t)x9 * x35))) + (0x15 * ((0x2 * ((uint64_t)x11 * x62)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + (((uint64_t)x17 * x59) + (((uint64_t)x19 * x57) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + (((uint64_t)x27 * x49) + (((uint64_t)x29 * x47) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + (0x2 * ((uint64_t)x32 * x41))))))))))))))));
- ℤ x78 = ((((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x9 * x62)) + ((0x2 * ((uint64_t)x11 * x63)) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + (((uint64_t)x17 * x57) + ((0x2 * ((uint64_t)x19 * x55)) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + (((uint64_t)x27 * x47) + ((0x2 * ((uint64_t)x29 * x45)) + ((0x2 * ((uint64_t)x31 * x43)) + ((0x2 * ((uint64_t)x33 * x41)) + (0x2 * ((uint64_t)x32 * x39)))))))))))))))));
- ℤ x79 = (((uint64_t)x5 * x35) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x7 * x62)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + (0x2 * ((uint64_t)x32 * x37))))))))))))))))));
- uint64_t x80 = (x79 >> 0x1a);
- uint32_t x81 = (x79 & 0x3ffffff);
- ℤ x82 = (x80 +ℤ x78);
- uint64_t x83 = (x82 >> 0x1a);
- uint32_t x84 = (x82 & 0x3ffffff);
- uint64_t x85 = (x83 + x77);
- uint64_t x86 = (x85 >> 0x1a);
- uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- uint64_t x88 = (x86 + x76);
- uint64_t x89 = (x88 >> 0x1a);
- uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- uint64_t x91 = (x89 + x75);
- uint64_t x92 = (x91 >> 0x1a);
- uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- uint64_t x94 = (x92 + x74);
- uint64_t x95 = (x94 >> 0x19);
- uint32_t x96 = ((uint32_t)x94 & 0x1ffffff);
- uint64_t x97 = (x95 + x73);
- uint64_t x98 = (x97 >> 0x1a);
- uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- uint64_t x100 = (x98 + x72);
- uint64_t x101 = (x100 >> 0x1a);
- uint32_t x102 = ((uint32_t)x100 & 0x3ffffff);
- uint64_t x103 = (x101 + x71);
- uint64_t x104 = (x103 >> 0x1a);
- uint32_t x105 = ((uint32_t)x103 & 0x3ffffff);
- uint64_t x106 = (x104 + x70);
- uint64_t x107 = (x106 >> 0x1a);
- uint32_t x108 = ((uint32_t)x106 & 0x3ffffff);
- uint64_t x109 = (x107 + x69);
- uint64_t x110 = (x109 >> 0x19);
- uint32_t x111 = ((uint32_t)x109 & 0x1ffffff);
- uint64_t x112 = (x110 + x68);
- uint64_t x113 = (x112 >> 0x1a);
- uint32_t x114 = ((uint32_t)x112 & 0x3ffffff);
- uint64_t x115 = (x113 + x67);
- uint64_t x116 = (x115 >> 0x1a);
- uint32_t x117 = ((uint32_t)x115 & 0x3ffffff);
- uint64_t x118 = (x116 + x66);
- uint64_t x119 = (x118 >> 0x1a);
- uint32_t x120 = ((uint32_t)x118 & 0x3ffffff);
- uint64_t x121 = (x119 + x65);
- uint64_t x122 = (x121 >> 0x1a);
- uint32_t x123 = ((uint32_t)x121 & 0x3ffffff);
- uint64_t x124 = (x122 + x64);
- uint64_t x125 = (x124 >> 0x19);
- uint32_t x126 = ((uint32_t)x124 & 0x1ffffff);
- uint64_t x127 = (x81 + (0x15 * x125));
- uint32_t x128 = (uint32_t) (x127 >> 0x1a);
- uint32_t x129 = ((uint32_t)x127 & 0x3ffffff);
- uint32_t x130 = (x128 + x84);
- uint32_t x131 = (x130 >> 0x1a);
- uint32_t x132 = (x130 & 0x3ffffff);
- return (Return x126, Return x123, Return x120, Return x117, Return x114, Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, (x131 + x87), Return x132, Return x129))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e413m21_16limbs/femulDisplay.v b/src/Specific/solinas32_2e413m21_16limbs/femulDisplay.v
deleted file mode 100644
index 5d983dca7..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e413m21_16limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e413m21_16limbs/fesquare.c b/src/Specific/solinas32_2e413m21_16limbs/fesquare.c
deleted file mode 100644
index 08b5c83ec..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/fesquare.c
+++ /dev/null
@@ -1,104 +0,0 @@
-static void fesquare(uint32_t out[16], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x31 = (((uint64_t)x2 * x29) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x29 * x2))))))))))))))));
- { uint64_t x32 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x15 * (0x2 * ((uint64_t)x29 * x29))));
- { uint64_t x33 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x30 * x29)) + (0x2 * ((uint64_t)x29 * x30)))));
- { uint64_t x34 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x28 * x29)) + ((0x2 * ((uint64_t)x30 * x30)) + (0x2 * ((uint64_t)x29 * x28))))));
- { uint64_t x35 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x15 * ((0x2 * ((uint64_t)x26 * x29)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + (0x2 * ((uint64_t)x29 * x26)))))));
- { uint64_t x36 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x15 * (((uint64_t)x24 * x29) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + ((uint64_t)x29 * x24)))))));
- { uint64_t x37 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x15 * ((0x2 * ((uint64_t)x22 * x29)) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + (0x2 * ((uint64_t)x29 * x22)))))))));
- { uint64_t x38 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x15 * ((0x2 * ((uint64_t)x20 * x29)) + ((0x2 * ((uint64_t)x22 * x30)) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + ((0x2 * ((uint64_t)x30 * x22)) + (0x2 * ((uint64_t)x29 * x20))))))))));
- { uint64_t x39 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x15 * ((0x2 * ((uint64_t)x18 * x29)) + ((0x2 * ((uint64_t)x20 * x30)) + ((0x2 * ((uint64_t)x22 * x28)) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + ((0x2 * ((uint64_t)x28 * x22)) + ((0x2 * ((uint64_t)x30 * x20)) + (0x2 * ((uint64_t)x29 * x18)))))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x15 * ((0x2 * ((uint64_t)x16 * x29)) + ((0x2 * ((uint64_t)x18 * x30)) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + (((uint64_t)x24 * x24) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + ((0x2 * ((uint64_t)x30 * x18)) + (0x2 * ((uint64_t)x29 * x16))))))))))));
- { uint64_t x41 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x15 * (((uint64_t)x14 * x29) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + ((uint64_t)x29 * x14))))))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x15 * ((0x2 * ((uint64_t)x12 * x29)) + (((uint64_t)x14 * x30) + (((uint64_t)x16 * x28) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + (((uint64_t)x28 * x16) + (((uint64_t)x30 * x14) + (0x2 * ((uint64_t)x29 * x12))))))))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x15 * ((0x2 * ((uint64_t)x10 * x29)) + ((0x2 * ((uint64_t)x12 * x30)) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + ((0x2 * ((uint64_t)x30 * x12)) + (0x2 * ((uint64_t)x29 * x10)))))))))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x15 * ((0x2 * ((uint64_t)x8 * x29)) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + (((uint64_t)x14 * x26) + (((uint64_t)x16 * x24) + ((0x2 * ((uint64_t)x18 * x22)) + ((0x2 * ((uint64_t)x20 * x20)) + ((0x2 * ((uint64_t)x22 * x18)) + (((uint64_t)x24 * x16) + (((uint64_t)x26 * x14) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + (0x2 * ((uint64_t)x29 * x8))))))))))))))));
- { ℤ x45 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x6 * x29)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + (((uint64_t)x14 * x24) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + (((uint64_t)x24 * x14) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + (0x2 * ((uint64_t)x29 * x6)))))))))))))))));
- { ℤ x46 = (((uint64_t)x2 * x2) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x4 * x29)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + (0x2 * ((uint64_t)x29 * x4))))))))))))))))));
- { uint64_t x47 = (x46 >> 0x1a);
- { uint32_t x48 = (x46 & 0x3ffffff);
- { ℤ x49 = (x47 +ℤ x45);
- { uint64_t x50 = (x49 >> 0x1a);
- { uint32_t x51 = (x49 & 0x3ffffff);
- { uint64_t x52 = (x50 + x44);
- { uint64_t x53 = (x52 >> 0x1a);
- { uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- { uint64_t x55 = (x53 + x43);
- { uint64_t x56 = (x55 >> 0x1a);
- { uint32_t x57 = ((uint32_t)x55 & 0x3ffffff);
- { uint64_t x58 = (x56 + x42);
- { uint64_t x59 = (x58 >> 0x1a);
- { uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- { uint64_t x61 = (x59 + x41);
- { uint64_t x62 = (x61 >> 0x19);
- { uint32_t x63 = ((uint32_t)x61 & 0x1ffffff);
- { uint64_t x64 = (x62 + x40);
- { uint64_t x65 = (x64 >> 0x1a);
- { uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- { uint64_t x67 = (x65 + x39);
- { uint64_t x68 = (x67 >> 0x1a);
- { uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- { uint64_t x70 = (x68 + x38);
- { uint64_t x71 = (x70 >> 0x1a);
- { uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- { uint64_t x73 = (x71 + x37);
- { uint64_t x74 = (x73 >> 0x1a);
- { uint32_t x75 = ((uint32_t)x73 & 0x3ffffff);
- { uint64_t x76 = (x74 + x36);
- { uint64_t x77 = (x76 >> 0x19);
- { uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- { uint64_t x79 = (x77 + x35);
- { uint64_t x80 = (x79 >> 0x1a);
- { uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- { uint64_t x82 = (x80 + x34);
- { uint64_t x83 = (x82 >> 0x1a);
- { uint32_t x84 = ((uint32_t)x82 & 0x3ffffff);
- { uint64_t x85 = (x83 + x33);
- { uint64_t x86 = (x85 >> 0x1a);
- { uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- { uint64_t x88 = (x86 + x32);
- { uint64_t x89 = (x88 >> 0x1a);
- { uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- { uint64_t x91 = (x89 + x31);
- { uint64_t x92 = (x91 >> 0x19);
- { uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- { uint64_t x94 = (x48 + (0x15 * x92));
- { uint32_t x95 = (uint32_t) (x94 >> 0x1a);
- { uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- { uint32_t x97 = (x95 + x51);
- { uint32_t x98 = (x97 >> 0x1a);
- { uint32_t x99 = (x97 & 0x3ffffff);
- out[0] = x96;
- out[1] = x99;
- out[2] = (x98 + x54);
- out[3] = x57;
- out[4] = x60;
- out[5] = x63;
- out[6] = x66;
- out[7] = x69;
- out[8] = x72;
- out[9] = x75;
- out[10] = x78;
- out[11] = x81;
- out[12] = x84;
- out[13] = x87;
- out[14] = x90;
- out[15] = x93;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e413m21_16limbs/fesquare.v b/src/Specific/solinas32_2e413m21_16limbs/fesquare.v
deleted file mode 100644
index 6fbf86ea0..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e413m21_16limbs.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_2e413m21_16limbs/fesquareDisplay.log b/src/Specific/solinas32_2e413m21_16limbs/fesquareDisplay.log
deleted file mode 100644
index c0237da32..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,76 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x31 = (((uint64_t)x2 * x29) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x29 * x2))))))))))))))));
- uint64_t x32 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x15 * (0x2 * ((uint64_t)x29 * x29))));
- uint64_t x33 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x30 * x29)) + (0x2 * ((uint64_t)x29 * x30)))));
- uint64_t x34 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x28 * x29)) + ((0x2 * ((uint64_t)x30 * x30)) + (0x2 * ((uint64_t)x29 * x28))))));
- uint64_t x35 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x15 * ((0x2 * ((uint64_t)x26 * x29)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + (0x2 * ((uint64_t)x29 * x26)))))));
- uint64_t x36 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x15 * (((uint64_t)x24 * x29) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + ((uint64_t)x29 * x24)))))));
- uint64_t x37 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x15 * ((0x2 * ((uint64_t)x22 * x29)) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + (0x2 * ((uint64_t)x29 * x22)))))))));
- uint64_t x38 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x15 * ((0x2 * ((uint64_t)x20 * x29)) + ((0x2 * ((uint64_t)x22 * x30)) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + ((0x2 * ((uint64_t)x30 * x22)) + (0x2 * ((uint64_t)x29 * x20))))))))));
- uint64_t x39 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x15 * ((0x2 * ((uint64_t)x18 * x29)) + ((0x2 * ((uint64_t)x20 * x30)) + ((0x2 * ((uint64_t)x22 * x28)) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + ((0x2 * ((uint64_t)x28 * x22)) + ((0x2 * ((uint64_t)x30 * x20)) + (0x2 * ((uint64_t)x29 * x18)))))))))));
- uint64_t x40 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x15 * ((0x2 * ((uint64_t)x16 * x29)) + ((0x2 * ((uint64_t)x18 * x30)) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + (((uint64_t)x24 * x24) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + ((0x2 * ((uint64_t)x30 * x18)) + (0x2 * ((uint64_t)x29 * x16))))))))))));
- uint64_t x41 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x15 * (((uint64_t)x14 * x29) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + ((uint64_t)x29 * x14))))))))))));
- uint64_t x42 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x15 * ((0x2 * ((uint64_t)x12 * x29)) + (((uint64_t)x14 * x30) + (((uint64_t)x16 * x28) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + (((uint64_t)x28 * x16) + (((uint64_t)x30 * x14) + (0x2 * ((uint64_t)x29 * x12))))))))))))));
- uint64_t x43 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x15 * ((0x2 * ((uint64_t)x10 * x29)) + ((0x2 * ((uint64_t)x12 * x30)) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + ((0x2 * ((uint64_t)x30 * x12)) + (0x2 * ((uint64_t)x29 * x10)))))))))))))));
- uint64_t x44 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x15 * ((0x2 * ((uint64_t)x8 * x29)) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + (((uint64_t)x14 * x26) + (((uint64_t)x16 * x24) + ((0x2 * ((uint64_t)x18 * x22)) + ((0x2 * ((uint64_t)x20 * x20)) + ((0x2 * ((uint64_t)x22 * x18)) + (((uint64_t)x24 * x16) + (((uint64_t)x26 * x14) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + (0x2 * ((uint64_t)x29 * x8))))))))))))))));
- ℤ x45 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x6 * x29)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + (((uint64_t)x14 * x24) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + (((uint64_t)x24 * x14) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + (0x2 * ((uint64_t)x29 * x6)))))))))))))))));
- ℤ x46 = (((uint64_t)x2 * x2) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x4 * x29)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + (0x2 * ((uint64_t)x29 * x4))))))))))))))))));
- uint64_t x47 = (x46 >> 0x1a);
- uint32_t x48 = (x46 & 0x3ffffff);
- ℤ x49 = (x47 +ℤ x45);
- uint64_t x50 = (x49 >> 0x1a);
- uint32_t x51 = (x49 & 0x3ffffff);
- uint64_t x52 = (x50 + x44);
- uint64_t x53 = (x52 >> 0x1a);
- uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- uint64_t x55 = (x53 + x43);
- uint64_t x56 = (x55 >> 0x1a);
- uint32_t x57 = ((uint32_t)x55 & 0x3ffffff);
- uint64_t x58 = (x56 + x42);
- uint64_t x59 = (x58 >> 0x1a);
- uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- uint64_t x61 = (x59 + x41);
- uint64_t x62 = (x61 >> 0x19);
- uint32_t x63 = ((uint32_t)x61 & 0x1ffffff);
- uint64_t x64 = (x62 + x40);
- uint64_t x65 = (x64 >> 0x1a);
- uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- uint64_t x67 = (x65 + x39);
- uint64_t x68 = (x67 >> 0x1a);
- uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- uint64_t x70 = (x68 + x38);
- uint64_t x71 = (x70 >> 0x1a);
- uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- uint64_t x73 = (x71 + x37);
- uint64_t x74 = (x73 >> 0x1a);
- uint32_t x75 = ((uint32_t)x73 & 0x3ffffff);
- uint64_t x76 = (x74 + x36);
- uint64_t x77 = (x76 >> 0x19);
- uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- uint64_t x79 = (x77 + x35);
- uint64_t x80 = (x79 >> 0x1a);
- uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- uint64_t x82 = (x80 + x34);
- uint64_t x83 = (x82 >> 0x1a);
- uint32_t x84 = ((uint32_t)x82 & 0x3ffffff);
- uint64_t x85 = (x83 + x33);
- uint64_t x86 = (x85 >> 0x1a);
- uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- uint64_t x88 = (x86 + x32);
- uint64_t x89 = (x88 >> 0x1a);
- uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- uint64_t x91 = (x89 + x31);
- uint64_t x92 = (x91 >> 0x19);
- uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- uint64_t x94 = (x48 + (0x15 * x92));
- uint32_t x95 = (uint32_t) (x94 >> 0x1a);
- uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- uint32_t x97 = (x95 + x51);
- uint32_t x98 = (x97 >> 0x1a);
- uint32_t x99 = (x97 & 0x3ffffff);
- return (Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, Return x57, (x98 + x54), Return x99, Return x96))
-x
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e413m21_16limbs/fesquareDisplay.v b/src/Specific/solinas32_2e413m21_16limbs/fesquareDisplay.v
deleted file mode 100644
index cdea60354..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e413m21_16limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e413m21_16limbs/fesub.c b/src/Specific/solinas32_2e413m21_16limbs/fesub.c
deleted file mode 100644
index 521b0bd2d..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/fesub.c
+++ /dev/null
@@ -1,51 +0,0 @@
-static void fesub(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- out[0] = ((0x7ffffd6 + x5) - x35);
- out[1] = ((0x7fffffe + x7) - x37);
- out[2] = ((0x7fffffe + x9) - x39);
- out[3] = ((0x7fffffe + x11) - x41);
- out[4] = ((0x7fffffe + x13) - x43);
- out[5] = ((0x3fffffe + x15) - x45);
- out[6] = ((0x7fffffe + x17) - x47);
- out[7] = ((0x7fffffe + x19) - x49);
- out[8] = ((0x7fffffe + x21) - x51);
- out[9] = ((0x7fffffe + x23) - x53);
- out[10] = ((0x3fffffe + x25) - x55);
- out[11] = ((0x7fffffe + x27) - x57);
- out[12] = ((0x7fffffe + x29) - x59);
- out[13] = ((0x7fffffe + x31) - x61);
- out[14] = ((0x7fffffe + x33) - x63);
- out[15] = ((0x3fffffe + x32) - x62);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e413m21_16limbs/fesub.v b/src/Specific/solinas32_2e413m21_16limbs/fesub.v
deleted file mode 100644
index f0eb80343..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e413m21_16limbs.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_2e413m21_16limbs/fesubDisplay.log b/src/Specific/solinas32_2e413m21_16limbs/fesubDisplay.log
deleted file mode 100644
index bfac52a38..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- (((0x3fffffe + x32) - x62), ((0x7fffffe + x33) - x63), ((0x7fffffe + x31) - x61), ((0x7fffffe + x29) - x59), ((0x7fffffe + x27) - x57), ((0x3fffffe + x25) - x55), ((0x7fffffe + x23) - x53), ((0x7fffffe + x21) - x51), ((0x7fffffe + x19) - x49), ((0x7fffffe + x17) - x47), ((0x3fffffe + x15) - x45), ((0x7fffffe + x13) - x43), ((0x7fffffe + x11) - x41), ((0x7fffffe + x9) - x39), ((0x7fffffe + x7) - x37), ((0x7ffffd6 + x5) - x35)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e413m21_16limbs/fesubDisplay.v b/src/Specific/solinas32_2e413m21_16limbs/fesubDisplay.v
deleted file mode 100644
index 3a42f9bb5..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e413m21_16limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e413m21_16limbs/freeze.c b/src/Specific/solinas32_2e413m21_16limbs/freeze.c
deleted file mode 100644
index 939da9121..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/freeze.c
+++ /dev/null
@@ -1,84 +0,0 @@
-static void freeze(uint32_t out[16], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffeb);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x4, 0x3ffffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x6, 0x3ffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x8, 0x3ffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x10, 0x3ffffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x12, 0x1ffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x14, 0x3ffffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x16, 0x3ffffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x18, 0x3ffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x20, 0x3ffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x22, 0x1ffffff);
- { uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x24, 0x3ffffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x26, 0x3ffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x28, 0x3ffffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x30, 0x3ffffff);
- { uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x29, 0x1ffffff);
- { uint32_t x79 = cmovznz32(x78, 0x0, 0xffffffff);
- { uint32_t x80 = (x79 & 0x3ffffeb);
- { uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x32, Return x80);
- { uint32_t x84 = (x79 & 0x3ffffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x35, Return x84);
- { uint32_t x88 = (x79 & 0x3ffffff);
- { uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x38, Return x88);
- { uint32_t x92 = (x79 & 0x3ffffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x41, Return x92);
- { uint32_t x96 = (x79 & 0x3ffffff);
- { uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x44, Return x96);
- { uint32_t x100 = (x79 & 0x1ffffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x47, Return x100);
- { uint32_t x104 = (x79 & 0x3ffffff);
- { uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x50, Return x104);
- { uint32_t x108 = (x79 & 0x3ffffff);
- { uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x53, Return x108);
- { uint32_t x112 = (x79 & 0x3ffffff);
- { uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x56, Return x112);
- { uint32_t x116 = (x79 & 0x3ffffff);
- { uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x59, Return x116);
- { uint32_t x120 = (x79 & 0x1ffffff);
- { uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x62, Return x120);
- { uint32_t x124 = (x79 & 0x3ffffff);
- { uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x65, Return x124);
- { uint32_t x128 = (x79 & 0x3ffffff);
- { uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x68, Return x128);
- { uint32_t x132 = (x79 & 0x3ffffff);
- { uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x71, Return x132);
- { uint32_t x136 = (x79 & 0x3ffffff);
- { uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x74, Return x136);
- { uint32_t x140 = (x79 & 0x1ffffff);
- { uint32_t x142, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x77, Return x140);
- out[0] = x82;
- out[1] = x86;
- out[2] = x90;
- out[3] = x94;
- out[4] = x98;
- out[5] = x102;
- out[6] = x106;
- out[7] = x110;
- out[8] = x114;
- out[9] = x118;
- out[10] = x122;
- out[11] = x126;
- out[12] = x130;
- out[13] = x134;
- out[14] = x138;
- out[15] = x142;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e413m21_16limbs/freeze.v b/src/Specific/solinas32_2e413m21_16limbs/freeze.v
deleted file mode 100644
index 9f29c8580..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e413m21_16limbs.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_2e413m21_16limbs/freezeDisplay.log b/src/Specific/solinas32_2e413m21_16limbs/freezeDisplay.log
deleted file mode 100644
index e9c73f3aa..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/freezeDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffeb);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x4, 0x3ffffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x6, 0x3ffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x8, 0x3ffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x10, 0x3ffffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x12, 0x1ffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x14, 0x3ffffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x16, 0x3ffffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x18, 0x3ffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x20, 0x3ffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x22, 0x1ffffff);
- uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x24, 0x3ffffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x26, 0x3ffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x28, 0x3ffffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x30, 0x3ffffff);
- uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x29, 0x1ffffff);
- uint32_t x79 = cmovznz32(x78, 0x0, 0xffffffff);
- uint32_t x80 = (x79 & 0x3ffffeb);
- uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x32, Return x80);
- uint32_t x84 = (x79 & 0x3ffffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x35, Return x84);
- uint32_t x88 = (x79 & 0x3ffffff);
- uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x38, Return x88);
- uint32_t x92 = (x79 & 0x3ffffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x41, Return x92);
- uint32_t x96 = (x79 & 0x3ffffff);
- uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x44, Return x96);
- uint32_t x100 = (x79 & 0x1ffffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x47, Return x100);
- uint32_t x104 = (x79 & 0x3ffffff);
- uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x50, Return x104);
- uint32_t x108 = (x79 & 0x3ffffff);
- uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x53, Return x108);
- uint32_t x112 = (x79 & 0x3ffffff);
- uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x56, Return x112);
- uint32_t x116 = (x79 & 0x3ffffff);
- uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x59, Return x116);
- uint32_t x120 = (x79 & 0x1ffffff);
- uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x62, Return x120);
- uint32_t x124 = (x79 & 0x3ffffff);
- uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x65, Return x124);
- uint32_t x128 = (x79 & 0x3ffffff);
- uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x68, Return x128);
- uint32_t x132 = (x79 & 0x3ffffff);
- uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x71, Return x132);
- uint32_t x136 = (x79 & 0x3ffffff);
- uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x74, Return x136);
- uint32_t x140 = (x79 & 0x1ffffff);
- uint32_t x142, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x77, Return x140);
- (Return x142, Return x138, Return x134, Return x130, Return x126, Return x122, Return x118, Return x114, Return x110, Return x106, Return x102, Return x98, Return x94, Return x90, Return x86, Return x82))
-x
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e413m21_16limbs/freezeDisplay.v b/src/Specific/solinas32_2e413m21_16limbs/freezeDisplay.v
deleted file mode 100644
index 9c4e3c1aa..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e413m21_16limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e413m21_16limbs/py_interpreter.sh b/src/Specific/solinas32_2e413m21_16limbs/py_interpreter.sh
deleted file mode 100755
index cf6970698..000000000
--- a/src/Specific/solinas32_2e413m21_16limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**413 - 21' -Dmodulus_bytes='25 + 13/16' -Da24='121665'
diff --git a/src/Specific/solinas32_2e413m21_17limbs/CurveParameters.v b/src/Specific/solinas32_2e413m21_17limbs/CurveParameters.v
deleted file mode 100644
index b8c9959e5..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^413 - 21
-Base: 24 + 5/17
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 17%nat;
- base := 24 + 5/17;
- bitwidth := 32;
- s := 2^413;
- c := [(1, 21)];
- carry_chains := Some [seq 0 (pred 17); [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_2e413m21_17limbs/Synthesis.v b/src/Specific/solinas32_2e413m21_17limbs/Synthesis.v
deleted file mode 100644
index 6ff1d0a5a..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e413m21_17limbs.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_2e413m21_17limbs/compiler.sh b/src/Specific/solinas32_2e413m21_17limbs/compiler.sh
deleted file mode 100755
index 03f529b51..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,24,24,25,24,24,25,24,24,24,25,24,24,25,24,24,24}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<413) - 21' "$@"
diff --git a/src/Specific/solinas32_2e413m21_17limbs/compilerxx.sh b/src/Specific/solinas32_2e413m21_17limbs/compilerxx.sh
deleted file mode 100755
index abcfd70b8..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,24,24,25,24,24,25,24,24,24,25,24,24,25,24,24,24}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<413) - 21' "$@"
diff --git a/src/Specific/solinas32_2e413m21_17limbs/feadd.c b/src/Specific/solinas32_2e413m21_17limbs/feadd.c
deleted file mode 100644
index 30eb11eae..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/feadd.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void feadd(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- out[0] = (x5 + x37);
- out[1] = (x7 + x39);
- out[2] = (x9 + x41);
- out[3] = (x11 + x43);
- out[4] = (x13 + x45);
- out[5] = (x15 + x47);
- out[6] = (x17 + x49);
- out[7] = (x19 + x51);
- out[8] = (x21 + x53);
- out[9] = (x23 + x55);
- out[10] = (x25 + x57);
- out[11] = (x27 + x59);
- out[12] = (x29 + x61);
- out[13] = (x31 + x63);
- out[14] = (x33 + x65);
- out[15] = (x35 + x67);
- out[16] = (x34 + x66);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e413m21_17limbs/feadd.v b/src/Specific/solinas32_2e413m21_17limbs/feadd.v
deleted file mode 100644
index d9e02d85f..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e413m21_17limbs.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_2e413m21_17limbs/feaddDisplay.log b/src/Specific/solinas32_2e413m21_17limbs/feaddDisplay.log
deleted file mode 100644
index 7324e0941..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- ((x34 + x66), (x35 + x67), (x33 + x65), (x31 + x63), (x29 + x61), (x27 + x59), (x25 + x57), (x23 + x55), (x21 + x53), (x19 + x51), (x17 + x49), (x15 + x47), (x13 + x45), (x11 + x43), (x9 + x41), (x7 + x39), (x5 + x37)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e413m21_17limbs/feaddDisplay.v b/src/Specific/solinas32_2e413m21_17limbs/feaddDisplay.v
deleted file mode 100644
index e5bce0617..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e413m21_17limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e413m21_17limbs/fecarry.v b/src/Specific/solinas32_2e413m21_17limbs/fecarry.v
deleted file mode 100644
index 2a75748a4..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e413m21_17limbs.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_2e413m21_17limbs/fecarryDisplay.v b/src/Specific/solinas32_2e413m21_17limbs/fecarryDisplay.v
deleted file mode 100644
index 752005f0f..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e413m21_17limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e413m21_17limbs/femul.c b/src/Specific/solinas32_2e413m21_17limbs/femul.c
deleted file mode 100644
index 300e70212..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/femul.c
+++ /dev/null
@@ -1,127 +0,0 @@
-static void femul(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- { uint64_t x68 = (((uint64_t)x5 * x66) + ((0x2 * ((uint64_t)x7 * x67)) + ((0x2 * ((uint64_t)x9 * x65)) + (((uint64_t)x11 * x63) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + (((uint64_t)x17 * x57) + ((0x2 * ((uint64_t)x19 * x55)) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + (((uint64_t)x25 * x49) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + (((uint64_t)x31 * x43) + ((0x2 * ((uint64_t)x33 * x41)) + ((0x2 * ((uint64_t)x35 * x39)) + ((uint64_t)x34 * x37)))))))))))))))));
- { uint64_t x69 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + (((uint64_t)x9 * x63) + (((uint64_t)x11 * x61) + ((0x2 * ((uint64_t)x13 * x59)) + (((uint64_t)x15 * x57) + (((uint64_t)x17 * x55) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + ((0x2 * ((uint64_t)x27 * x45)) + (((uint64_t)x29 * x43) + (((uint64_t)x31 * x41) + ((0x2 * ((uint64_t)x33 * x39)) + ((uint64_t)x35 * x37)))))))))))))))) + (0x15 * ((uint64_t)x34 * x66)));
- { uint64_t x70 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + ((0x2 * ((uint64_t)x19 * x51)) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (((uint64_t)x29 * x41) + (((uint64_t)x31 * x39) + ((uint64_t)x33 * x37))))))))))))))) + (0x15 * (((uint64_t)x35 * x66) + ((uint64_t)x34 * x67))));
- { uint64_t x71 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + (((uint64_t)x11 * x57) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + (((uint64_t)x25 * x43) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((uint64_t)x31 * x37)))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x33 * x66)) + ((0x2 * ((uint64_t)x35 * x67)) + (0x2 * ((uint64_t)x34 * x65))))));
- { uint64_t x72 = ((((uint64_t)x5 * x61) + ((0x2 * ((uint64_t)x7 * x59)) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + ((0x2 * ((uint64_t)x13 * x53)) + ((0x2 * ((uint64_t)x15 * x51)) + (((uint64_t)x17 * x49) + ((0x2 * ((uint64_t)x19 * x47)) + ((0x2 * ((uint64_t)x21 * x45)) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + ((0x2 * ((uint64_t)x27 * x39)) + ((uint64_t)x29 * x37))))))))))))) + (0x15 * (((uint64_t)x31 * x66) + ((0x2 * ((uint64_t)x33 * x67)) + ((0x2 * ((uint64_t)x35 * x65)) + ((uint64_t)x34 * x63))))));
- { uint64_t x73 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + ((0x2 * ((uint64_t)x13 * x51)) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + ((0x2 * ((uint64_t)x19 * x45)) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + ((uint64_t)x27 * x37)))))))))))) + (0x15 * (((uint64_t)x29 * x66) + (((uint64_t)x31 * x67) + ((0x2 * ((uint64_t)x33 * x65)) + (((uint64_t)x35 * x63) + ((uint64_t)x34 * x61)))))));
- { uint64_t x74 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + ((uint64_t)x25 * x37))))))))))) + (0x15 * ((0x2 * ((uint64_t)x27 * x66)) + ((0x2 * ((uint64_t)x29 * x67)) + ((0x2 * ((uint64_t)x31 * x65)) + ((0x2 * ((uint64_t)x33 * x63)) + ((0x2 * ((uint64_t)x35 * x61)) + (0x2 * ((uint64_t)x34 * x59)))))))));
- { uint64_t x75 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + (((uint64_t)x11 * x49) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + (((uint64_t)x17 * x43) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((uint64_t)x23 * x37)))))))))) + (0x15 * (((uint64_t)x25 * x66) + ((0x2 * ((uint64_t)x27 * x67)) + ((0x2 * ((uint64_t)x29 * x65)) + (((uint64_t)x31 * x63) + ((0x2 * ((uint64_t)x33 * x61)) + ((0x2 * ((uint64_t)x35 * x59)) + ((uint64_t)x34 * x57)))))))));
- { uint64_t x76 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + ((0x2 * ((uint64_t)x13 * x45)) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + ((0x2 * ((uint64_t)x19 * x39)) + ((uint64_t)x21 * x37))))))))) + (0x15 * (((uint64_t)x23 * x66) + (((uint64_t)x25 * x67) + ((0x2 * ((uint64_t)x27 * x65)) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + ((0x2 * ((uint64_t)x33 * x59)) + (((uint64_t)x35 * x57) + ((uint64_t)x34 * x55))))))))));
- { uint64_t x77 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + ((uint64_t)x19 * x37)))))))) + (0x15 * (((uint64_t)x21 * x66) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + ((uint64_t)x34 * x53)))))))))));
- { uint64_t x78 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + ((0x2 * ((uint64_t)x15 * x39)) + ((uint64_t)x17 * x37))))))) + (0x15 * ((0x2 * ((uint64_t)x19 * x66)) + ((0x2 * ((uint64_t)x21 * x67)) + ((0x2 * ((uint64_t)x23 * x65)) + (((uint64_t)x25 * x63) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + (((uint64_t)x31 * x57) + ((0x2 * ((uint64_t)x33 * x55)) + ((0x2 * ((uint64_t)x35 * x53)) + (0x2 * ((uint64_t)x34 * x51)))))))))))));
- { uint64_t x79 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + ((0x2 * ((uint64_t)x13 * x39)) + ((uint64_t)x15 * x37)))))) + (0x15 * (((uint64_t)x17 * x66) + ((0x2 * ((uint64_t)x19 * x67)) + ((0x2 * ((uint64_t)x21 * x65)) + (((uint64_t)x23 * x63) + (((uint64_t)x25 * x61) + ((0x2 * ((uint64_t)x27 * x59)) + (((uint64_t)x29 * x57) + (((uint64_t)x31 * x55) + ((0x2 * ((uint64_t)x33 * x53)) + ((0x2 * ((uint64_t)x35 * x51)) + ((uint64_t)x34 * x49)))))))))))));
- { uint64_t x80 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + ((uint64_t)x13 * x37))))) + (0x15 * (((uint64_t)x15 * x66) + (((uint64_t)x17 * x67) + ((0x2 * ((uint64_t)x19 * x65)) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + ((0x2 * ((uint64_t)x33 * x51)) + (((uint64_t)x35 * x49) + ((uint64_t)x34 * x47))))))))))))));
- { uint64_t x81 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((uint64_t)x11 * x37)))) + (0x15 * ((0x2 * ((uint64_t)x13 * x66)) + ((0x2 * ((uint64_t)x15 * x67)) + ((0x2 * ((uint64_t)x17 * x65)) + ((0x2 * ((uint64_t)x19 * x63)) + ((0x2 * ((uint64_t)x21 * x61)) + ((0x2 * ((uint64_t)x23 * x59)) + (((uint64_t)x25 * x57) + ((0x2 * ((uint64_t)x27 * x55)) + ((0x2 * ((uint64_t)x29 * x53)) + ((0x2 * ((uint64_t)x31 * x51)) + ((0x2 * ((uint64_t)x33 * x49)) + ((0x2 * ((uint64_t)x35 * x47)) + (0x2 * ((uint64_t)x34 * x45))))))))))))))));
- { uint64_t x82 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((uint64_t)x9 * x37))) + (0x15 * (((uint64_t)x11 * x66) + ((0x2 * ((uint64_t)x13 * x67)) + ((0x2 * ((uint64_t)x15 * x65)) + (((uint64_t)x17 * x63) + ((0x2 * ((uint64_t)x19 * x61)) + ((0x2 * ((uint64_t)x21 * x59)) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + ((0x2 * ((uint64_t)x27 * x53)) + ((0x2 * ((uint64_t)x29 * x51)) + (((uint64_t)x31 * x49) + ((0x2 * ((uint64_t)x33 * x47)) + ((0x2 * ((uint64_t)x35 * x45)) + ((uint64_t)x34 * x43))))))))))))))));
- { uint64_t x83 = ((((uint64_t)x5 * x39) + ((uint64_t)x7 * x37)) + (0x15 * (((uint64_t)x9 * x66) + (((uint64_t)x11 * x67) + ((0x2 * ((uint64_t)x13 * x65)) + (((uint64_t)x15 * x63) + (((uint64_t)x17 * x61) + ((0x2 * ((uint64_t)x19 * x59)) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + ((0x2 * ((uint64_t)x27 * x51)) + (((uint64_t)x29 * x49) + (((uint64_t)x31 * x47) + ((0x2 * ((uint64_t)x33 * x45)) + (((uint64_t)x35 * x43) + ((uint64_t)x34 * x41)))))))))))))))));
- { uint64_t x84 = (((uint64_t)x5 * x37) + (0x15 * ((0x2 * ((uint64_t)x7 * x66)) + ((0x2 * ((uint64_t)x9 * x67)) + ((0x2 * ((uint64_t)x11 * x65)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + ((0x2 * ((uint64_t)x35 * x41)) + (0x2 * ((uint64_t)x34 * x39)))))))))))))))))));
- { uint64_t x85 = (x84 >> 0x19);
- { uint32_t x86 = ((uint32_t)x84 & 0x1ffffff);
- { uint64_t x87 = (x85 + x83);
- { uint64_t x88 = (x87 >> 0x18);
- { uint32_t x89 = ((uint32_t)x87 & 0xffffff);
- { uint64_t x90 = (x88 + x82);
- { uint64_t x91 = (x90 >> 0x18);
- { uint32_t x92 = ((uint32_t)x90 & 0xffffff);
- { uint64_t x93 = (x91 + x81);
- { uint64_t x94 = (x93 >> 0x19);
- { uint32_t x95 = ((uint32_t)x93 & 0x1ffffff);
- { uint64_t x96 = (x94 + x80);
- { uint64_t x97 = (x96 >> 0x18);
- { uint32_t x98 = ((uint32_t)x96 & 0xffffff);
- { uint64_t x99 = (x97 + x79);
- { uint64_t x100 = (x99 >> 0x18);
- { uint32_t x101 = ((uint32_t)x99 & 0xffffff);
- { uint64_t x102 = (x100 + x78);
- { uint64_t x103 = (x102 >> 0x19);
- { uint32_t x104 = ((uint32_t)x102 & 0x1ffffff);
- { uint64_t x105 = (x103 + x77);
- { uint64_t x106 = (x105 >> 0x18);
- { uint32_t x107 = ((uint32_t)x105 & 0xffffff);
- { uint64_t x108 = (x106 + x76);
- { uint64_t x109 = (x108 >> 0x18);
- { uint32_t x110 = ((uint32_t)x108 & 0xffffff);
- { uint64_t x111 = (x109 + x75);
- { uint64_t x112 = (x111 >> 0x18);
- { uint32_t x113 = ((uint32_t)x111 & 0xffffff);
- { uint64_t x114 = (x112 + x74);
- { uint64_t x115 = (x114 >> 0x19);
- { uint32_t x116 = ((uint32_t)x114 & 0x1ffffff);
- { uint64_t x117 = (x115 + x73);
- { uint64_t x118 = (x117 >> 0x18);
- { uint32_t x119 = ((uint32_t)x117 & 0xffffff);
- { uint64_t x120 = (x118 + x72);
- { uint64_t x121 = (x120 >> 0x18);
- { uint32_t x122 = ((uint32_t)x120 & 0xffffff);
- { uint64_t x123 = (x121 + x71);
- { uint64_t x124 = (x123 >> 0x19);
- { uint32_t x125 = ((uint32_t)x123 & 0x1ffffff);
- { uint64_t x126 = (x124 + x70);
- { uint64_t x127 = (x126 >> 0x18);
- { uint32_t x128 = ((uint32_t)x126 & 0xffffff);
- { uint64_t x129 = (x127 + x69);
- { uint64_t x130 = (x129 >> 0x18);
- { uint32_t x131 = ((uint32_t)x129 & 0xffffff);
- { uint64_t x132 = (x130 + x68);
- { uint64_t x133 = (x132 >> 0x18);
- { uint32_t x134 = ((uint32_t)x132 & 0xffffff);
- { uint64_t x135 = (x86 + (0x15 * x133));
- { uint32_t x136 = (uint32_t) (x135 >> 0x19);
- { uint32_t x137 = ((uint32_t)x135 & 0x1ffffff);
- { uint32_t x138 = (x136 + x89);
- { uint32_t x139 = (x138 >> 0x18);
- { uint32_t x140 = (x138 & 0xffffff);
- out[0] = x137;
- out[1] = x140;
- out[2] = (x139 + x92);
- out[3] = x95;
- out[4] = x98;
- out[5] = x101;
- out[6] = x104;
- out[7] = x107;
- out[8] = x110;
- out[9] = x113;
- out[10] = x116;
- out[11] = x119;
- out[12] = x122;
- out[13] = x125;
- out[14] = x128;
- out[15] = x131;
- out[16] = x134;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e413m21_17limbs/femul.v b/src/Specific/solinas32_2e413m21_17limbs/femul.v
deleted file mode 100644
index 086f225b2..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e413m21_17limbs.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_2e413m21_17limbs/femulDisplay.log b/src/Specific/solinas32_2e413m21_17limbs/femulDisplay.log
deleted file mode 100644
index afa21f5b3..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/femulDisplay.log
+++ /dev/null
@@ -1,80 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- uint64_t x68 = (((uint64_t)x5 * x66) + ((0x2 * ((uint64_t)x7 * x67)) + ((0x2 * ((uint64_t)x9 * x65)) + (((uint64_t)x11 * x63) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + (((uint64_t)x17 * x57) + ((0x2 * ((uint64_t)x19 * x55)) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + (((uint64_t)x25 * x49) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + (((uint64_t)x31 * x43) + ((0x2 * ((uint64_t)x33 * x41)) + ((0x2 * ((uint64_t)x35 * x39)) + ((uint64_t)x34 * x37)))))))))))))))));
- uint64_t x69 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + (((uint64_t)x9 * x63) + (((uint64_t)x11 * x61) + ((0x2 * ((uint64_t)x13 * x59)) + (((uint64_t)x15 * x57) + (((uint64_t)x17 * x55) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + ((0x2 * ((uint64_t)x27 * x45)) + (((uint64_t)x29 * x43) + (((uint64_t)x31 * x41) + ((0x2 * ((uint64_t)x33 * x39)) + ((uint64_t)x35 * x37)))))))))))))))) + (0x15 * ((uint64_t)x34 * x66)));
- uint64_t x70 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + ((0x2 * ((uint64_t)x19 * x51)) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (((uint64_t)x29 * x41) + (((uint64_t)x31 * x39) + ((uint64_t)x33 * x37))))))))))))))) + (0x15 * (((uint64_t)x35 * x66) + ((uint64_t)x34 * x67))));
- uint64_t x71 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + (((uint64_t)x11 * x57) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + (((uint64_t)x25 * x43) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((uint64_t)x31 * x37)))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x33 * x66)) + ((0x2 * ((uint64_t)x35 * x67)) + (0x2 * ((uint64_t)x34 * x65))))));
- uint64_t x72 = ((((uint64_t)x5 * x61) + ((0x2 * ((uint64_t)x7 * x59)) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + ((0x2 * ((uint64_t)x13 * x53)) + ((0x2 * ((uint64_t)x15 * x51)) + (((uint64_t)x17 * x49) + ((0x2 * ((uint64_t)x19 * x47)) + ((0x2 * ((uint64_t)x21 * x45)) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + ((0x2 * ((uint64_t)x27 * x39)) + ((uint64_t)x29 * x37))))))))))))) + (0x15 * (((uint64_t)x31 * x66) + ((0x2 * ((uint64_t)x33 * x67)) + ((0x2 * ((uint64_t)x35 * x65)) + ((uint64_t)x34 * x63))))));
- uint64_t x73 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + ((0x2 * ((uint64_t)x13 * x51)) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + ((0x2 * ((uint64_t)x19 * x45)) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + ((uint64_t)x27 * x37)))))))))))) + (0x15 * (((uint64_t)x29 * x66) + (((uint64_t)x31 * x67) + ((0x2 * ((uint64_t)x33 * x65)) + (((uint64_t)x35 * x63) + ((uint64_t)x34 * x61)))))));
- uint64_t x74 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + ((uint64_t)x25 * x37))))))))))) + (0x15 * ((0x2 * ((uint64_t)x27 * x66)) + ((0x2 * ((uint64_t)x29 * x67)) + ((0x2 * ((uint64_t)x31 * x65)) + ((0x2 * ((uint64_t)x33 * x63)) + ((0x2 * ((uint64_t)x35 * x61)) + (0x2 * ((uint64_t)x34 * x59)))))))));
- uint64_t x75 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + (((uint64_t)x11 * x49) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + (((uint64_t)x17 * x43) + ((0x2 * ((uint64_t)x19 * x41)) + ((0x2 * ((uint64_t)x21 * x39)) + ((uint64_t)x23 * x37)))))))))) + (0x15 * (((uint64_t)x25 * x66) + ((0x2 * ((uint64_t)x27 * x67)) + ((0x2 * ((uint64_t)x29 * x65)) + (((uint64_t)x31 * x63) + ((0x2 * ((uint64_t)x33 * x61)) + ((0x2 * ((uint64_t)x35 * x59)) + ((uint64_t)x34 * x57)))))))));
- uint64_t x76 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + ((0x2 * ((uint64_t)x13 * x45)) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + ((0x2 * ((uint64_t)x19 * x39)) + ((uint64_t)x21 * x37))))))))) + (0x15 * (((uint64_t)x23 * x66) + (((uint64_t)x25 * x67) + ((0x2 * ((uint64_t)x27 * x65)) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + ((0x2 * ((uint64_t)x33 * x59)) + (((uint64_t)x35 * x57) + ((uint64_t)x34 * x55))))))))));
- uint64_t x77 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + ((uint64_t)x19 * x37)))))))) + (0x15 * (((uint64_t)x21 * x66) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + ((uint64_t)x34 * x53)))))))))));
- uint64_t x78 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + ((0x2 * ((uint64_t)x15 * x39)) + ((uint64_t)x17 * x37))))))) + (0x15 * ((0x2 * ((uint64_t)x19 * x66)) + ((0x2 * ((uint64_t)x21 * x67)) + ((0x2 * ((uint64_t)x23 * x65)) + (((uint64_t)x25 * x63) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + (((uint64_t)x31 * x57) + ((0x2 * ((uint64_t)x33 * x55)) + ((0x2 * ((uint64_t)x35 * x53)) + (0x2 * ((uint64_t)x34 * x51)))))))))))));
- uint64_t x79 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + ((0x2 * ((uint64_t)x13 * x39)) + ((uint64_t)x15 * x37)))))) + (0x15 * (((uint64_t)x17 * x66) + ((0x2 * ((uint64_t)x19 * x67)) + ((0x2 * ((uint64_t)x21 * x65)) + (((uint64_t)x23 * x63) + (((uint64_t)x25 * x61) + ((0x2 * ((uint64_t)x27 * x59)) + (((uint64_t)x29 * x57) + (((uint64_t)x31 * x55) + ((0x2 * ((uint64_t)x33 * x53)) + ((0x2 * ((uint64_t)x35 * x51)) + ((uint64_t)x34 * x49)))))))))))));
- uint64_t x80 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + ((uint64_t)x13 * x37))))) + (0x15 * (((uint64_t)x15 * x66) + (((uint64_t)x17 * x67) + ((0x2 * ((uint64_t)x19 * x65)) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + ((0x2 * ((uint64_t)x33 * x51)) + (((uint64_t)x35 * x49) + ((uint64_t)x34 * x47))))))))))))));
- uint64_t x81 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((uint64_t)x11 * x37)))) + (0x15 * ((0x2 * ((uint64_t)x13 * x66)) + ((0x2 * ((uint64_t)x15 * x67)) + ((0x2 * ((uint64_t)x17 * x65)) + ((0x2 * ((uint64_t)x19 * x63)) + ((0x2 * ((uint64_t)x21 * x61)) + ((0x2 * ((uint64_t)x23 * x59)) + (((uint64_t)x25 * x57) + ((0x2 * ((uint64_t)x27 * x55)) + ((0x2 * ((uint64_t)x29 * x53)) + ((0x2 * ((uint64_t)x31 * x51)) + ((0x2 * ((uint64_t)x33 * x49)) + ((0x2 * ((uint64_t)x35 * x47)) + (0x2 * ((uint64_t)x34 * x45))))))))))))))));
- uint64_t x82 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((uint64_t)x9 * x37))) + (0x15 * (((uint64_t)x11 * x66) + ((0x2 * ((uint64_t)x13 * x67)) + ((0x2 * ((uint64_t)x15 * x65)) + (((uint64_t)x17 * x63) + ((0x2 * ((uint64_t)x19 * x61)) + ((0x2 * ((uint64_t)x21 * x59)) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + ((0x2 * ((uint64_t)x27 * x53)) + ((0x2 * ((uint64_t)x29 * x51)) + (((uint64_t)x31 * x49) + ((0x2 * ((uint64_t)x33 * x47)) + ((0x2 * ((uint64_t)x35 * x45)) + ((uint64_t)x34 * x43))))))))))))))));
- uint64_t x83 = ((((uint64_t)x5 * x39) + ((uint64_t)x7 * x37)) + (0x15 * (((uint64_t)x9 * x66) + (((uint64_t)x11 * x67) + ((0x2 * ((uint64_t)x13 * x65)) + (((uint64_t)x15 * x63) + (((uint64_t)x17 * x61) + ((0x2 * ((uint64_t)x19 * x59)) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + ((0x2 * ((uint64_t)x27 * x51)) + (((uint64_t)x29 * x49) + (((uint64_t)x31 * x47) + ((0x2 * ((uint64_t)x33 * x45)) + (((uint64_t)x35 * x43) + ((uint64_t)x34 * x41)))))))))))))))));
- uint64_t x84 = (((uint64_t)x5 * x37) + (0x15 * ((0x2 * ((uint64_t)x7 * x66)) + ((0x2 * ((uint64_t)x9 * x67)) + ((0x2 * ((uint64_t)x11 * x65)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + ((0x2 * ((uint64_t)x35 * x41)) + (0x2 * ((uint64_t)x34 * x39)))))))))))))))))));
- uint64_t x85 = (x84 >> 0x19);
- uint32_t x86 = ((uint32_t)x84 & 0x1ffffff);
- uint64_t x87 = (x85 + x83);
- uint64_t x88 = (x87 >> 0x18);
- uint32_t x89 = ((uint32_t)x87 & 0xffffff);
- uint64_t x90 = (x88 + x82);
- uint64_t x91 = (x90 >> 0x18);
- uint32_t x92 = ((uint32_t)x90 & 0xffffff);
- uint64_t x93 = (x91 + x81);
- uint64_t x94 = (x93 >> 0x19);
- uint32_t x95 = ((uint32_t)x93 & 0x1ffffff);
- uint64_t x96 = (x94 + x80);
- uint64_t x97 = (x96 >> 0x18);
- uint32_t x98 = ((uint32_t)x96 & 0xffffff);
- uint64_t x99 = (x97 + x79);
- uint64_t x100 = (x99 >> 0x18);
- uint32_t x101 = ((uint32_t)x99 & 0xffffff);
- uint64_t x102 = (x100 + x78);
- uint64_t x103 = (x102 >> 0x19);
- uint32_t x104 = ((uint32_t)x102 & 0x1ffffff);
- uint64_t x105 = (x103 + x77);
- uint64_t x106 = (x105 >> 0x18);
- uint32_t x107 = ((uint32_t)x105 & 0xffffff);
- uint64_t x108 = (x106 + x76);
- uint64_t x109 = (x108 >> 0x18);
- uint32_t x110 = ((uint32_t)x108 & 0xffffff);
- uint64_t x111 = (x109 + x75);
- uint64_t x112 = (x111 >> 0x18);
- uint32_t x113 = ((uint32_t)x111 & 0xffffff);
- uint64_t x114 = (x112 + x74);
- uint64_t x115 = (x114 >> 0x19);
- uint32_t x116 = ((uint32_t)x114 & 0x1ffffff);
- uint64_t x117 = (x115 + x73);
- uint64_t x118 = (x117 >> 0x18);
- uint32_t x119 = ((uint32_t)x117 & 0xffffff);
- uint64_t x120 = (x118 + x72);
- uint64_t x121 = (x120 >> 0x18);
- uint32_t x122 = ((uint32_t)x120 & 0xffffff);
- uint64_t x123 = (x121 + x71);
- uint64_t x124 = (x123 >> 0x19);
- uint32_t x125 = ((uint32_t)x123 & 0x1ffffff);
- uint64_t x126 = (x124 + x70);
- uint64_t x127 = (x126 >> 0x18);
- uint32_t x128 = ((uint32_t)x126 & 0xffffff);
- uint64_t x129 = (x127 + x69);
- uint64_t x130 = (x129 >> 0x18);
- uint32_t x131 = ((uint32_t)x129 & 0xffffff);
- uint64_t x132 = (x130 + x68);
- uint64_t x133 = (x132 >> 0x18);
- uint32_t x134 = ((uint32_t)x132 & 0xffffff);
- uint64_t x135 = (x86 + (0x15 * x133));
- uint32_t x136 = (uint32_t) (x135 >> 0x19);
- uint32_t x137 = ((uint32_t)x135 & 0x1ffffff);
- uint32_t x138 = (x136 + x89);
- uint32_t x139 = (x138 >> 0x18);
- uint32_t x140 = (x138 & 0xffffff);
- return (Return x134, Return x131, Return x128, Return x125, Return x122, Return x119, Return x116, Return x113, Return x110, Return x107, Return x104, Return x101, Return x98, Return x95, (x139 + x92), Return x140, Return x137))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e413m21_17limbs/femulDisplay.v b/src/Specific/solinas32_2e413m21_17limbs/femulDisplay.v
deleted file mode 100644
index b0d357f3e..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e413m21_17limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e413m21_17limbs/fesquare.c b/src/Specific/solinas32_2e413m21_17limbs/fesquare.c
deleted file mode 100644
index 52d60a008..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/fesquare.c
+++ /dev/null
@@ -1,110 +0,0 @@
-static void fesquare(uint32_t out[17], const uint32_t in1[17]) {
- { const uint32_t x31 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x33 = (((uint64_t)x2 * x31) + ((0x2 * ((uint64_t)x4 * x32)) + ((0x2 * ((uint64_t)x6 * x30)) + (((uint64_t)x8 * x28) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + (((uint64_t)x14 * x22) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + (((uint64_t)x22 * x14) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + (((uint64_t)x28 * x8) + ((0x2 * ((uint64_t)x30 * x6)) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x31 * x2)))))))))))))))));
- { uint64_t x34 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + ((0x2 * ((uint64_t)x10 * x24)) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + ((0x2 * ((uint64_t)x24 * x10)) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x15 * ((uint64_t)x31 * x31)));
- { uint64_t x35 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x15 * (((uint64_t)x32 * x31) + ((uint64_t)x31 * x32))));
- { uint64_t x36 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + (((uint64_t)x8 * x22) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + (((uint64_t)x22 * x8) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x30 * x31)) + ((0x2 * ((uint64_t)x32 * x32)) + (0x2 * ((uint64_t)x31 * x30))))));
- { uint64_t x37 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x15 * (((uint64_t)x28 * x31) + ((0x2 * ((uint64_t)x30 * x32)) + ((0x2 * ((uint64_t)x32 * x30)) + ((uint64_t)x31 * x28))))));
- { uint64_t x38 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x15 * (((uint64_t)x26 * x31) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + ((uint64_t)x31 * x26)))))));
- { uint64_t x39 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x15 * ((0x2 * ((uint64_t)x24 * x31)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + (0x2 * ((uint64_t)x31 * x24)))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x15 * (((uint64_t)x22 * x31) + ((0x2 * ((uint64_t)x24 * x32)) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + ((0x2 * ((uint64_t)x32 * x24)) + ((uint64_t)x31 * x22)))))))));
- { uint64_t x41 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x15 * (((uint64_t)x20 * x31) + (((uint64_t)x22 * x32) + ((0x2 * ((uint64_t)x24 * x30)) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + ((0x2 * ((uint64_t)x30 * x24)) + (((uint64_t)x32 * x22) + ((uint64_t)x31 * x20))))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x15 * (((uint64_t)x18 * x31) + (((uint64_t)x20 * x32) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + (((uint64_t)x32 * x20) + ((uint64_t)x31 * x18)))))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x15 * ((0x2 * ((uint64_t)x16 * x31)) + ((0x2 * ((uint64_t)x18 * x32)) + ((0x2 * ((uint64_t)x20 * x30)) + (((uint64_t)x22 * x28) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + (((uint64_t)x28 * x22) + ((0x2 * ((uint64_t)x30 * x20)) + ((0x2 * ((uint64_t)x32 * x18)) + (0x2 * ((uint64_t)x31 * x16)))))))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x15 * (((uint64_t)x14 * x31) + ((0x2 * ((uint64_t)x16 * x32)) + ((0x2 * ((uint64_t)x18 * x30)) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + ((0x2 * ((uint64_t)x24 * x24)) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + ((0x2 * ((uint64_t)x30 * x18)) + ((0x2 * ((uint64_t)x32 * x16)) + ((uint64_t)x31 * x14)))))))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x15 * (((uint64_t)x12 * x31) + (((uint64_t)x14 * x32) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + (((uint64_t)x32 * x14) + ((uint64_t)x31 * x12))))))))))))));
- { uint64_t x46 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x15 * ((0x2 * ((uint64_t)x10 * x31)) + ((0x2 * ((uint64_t)x12 * x32)) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + ((0x2 * ((uint64_t)x32 * x12)) + (0x2 * ((uint64_t)x31 * x10))))))))))))))));
- { uint64_t x47 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x15 * (((uint64_t)x8 * x31) + ((0x2 * ((uint64_t)x10 * x32)) + ((0x2 * ((uint64_t)x12 * x30)) + (((uint64_t)x14 * x28) + ((0x2 * ((uint64_t)x16 * x26)) + ((0x2 * ((uint64_t)x18 * x24)) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((0x2 * ((uint64_t)x24 * x18)) + ((0x2 * ((uint64_t)x26 * x16)) + (((uint64_t)x28 * x14) + ((0x2 * ((uint64_t)x30 * x12)) + ((0x2 * ((uint64_t)x32 * x10)) + ((uint64_t)x31 * x8))))))))))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x15 * (((uint64_t)x6 * x31) + (((uint64_t)x8 * x32) + ((0x2 * ((uint64_t)x10 * x30)) + (((uint64_t)x12 * x28) + (((uint64_t)x14 * x26) + ((0x2 * ((uint64_t)x16 * x24)) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + ((0x2 * ((uint64_t)x24 * x16)) + (((uint64_t)x26 * x14) + (((uint64_t)x28 * x12) + ((0x2 * ((uint64_t)x30 * x10)) + (((uint64_t)x32 * x8) + ((uint64_t)x31 * x6)))))))))))))))));
- { uint64_t x49 = (((uint64_t)x2 * x2) + (0x15 * ((0x2 * ((uint64_t)x4 * x31)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + (0x2 * ((uint64_t)x31 * x4)))))))))))))))))));
- { uint64_t x50 = (x49 >> 0x19);
- { uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- { uint64_t x52 = (x50 + x48);
- { uint64_t x53 = (x52 >> 0x18);
- { uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- { uint64_t x55 = (x53 + x47);
- { uint64_t x56 = (x55 >> 0x18);
- { uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- { uint64_t x58 = (x56 + x46);
- { uint64_t x59 = (x58 >> 0x19);
- { uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- { uint64_t x61 = (x59 + x45);
- { uint64_t x62 = (x61 >> 0x18);
- { uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- { uint64_t x64 = (x62 + x44);
- { uint64_t x65 = (x64 >> 0x18);
- { uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- { uint64_t x67 = (x65 + x43);
- { uint64_t x68 = (x67 >> 0x19);
- { uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- { uint64_t x70 = (x68 + x42);
- { uint64_t x71 = (x70 >> 0x18);
- { uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- { uint64_t x73 = (x71 + x41);
- { uint64_t x74 = (x73 >> 0x18);
- { uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- { uint64_t x76 = (x74 + x40);
- { uint64_t x77 = (x76 >> 0x18);
- { uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- { uint64_t x79 = (x77 + x39);
- { uint64_t x80 = (x79 >> 0x19);
- { uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- { uint64_t x82 = (x80 + x38);
- { uint64_t x83 = (x82 >> 0x18);
- { uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- { uint64_t x85 = (x83 + x37);
- { uint64_t x86 = (x85 >> 0x18);
- { uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- { uint64_t x88 = (x86 + x36);
- { uint64_t x89 = (x88 >> 0x19);
- { uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- { uint64_t x91 = (x89 + x35);
- { uint64_t x92 = (x91 >> 0x18);
- { uint32_t x93 = ((uint32_t)x91 & 0xffffff);
- { uint64_t x94 = (x92 + x34);
- { uint64_t x95 = (x94 >> 0x18);
- { uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- { uint64_t x97 = (x95 + x33);
- { uint64_t x98 = (x97 >> 0x18);
- { uint32_t x99 = ((uint32_t)x97 & 0xffffff);
- { uint64_t x100 = (x51 + (0x15 * x98));
- { uint32_t x101 = (uint32_t) (x100 >> 0x19);
- { uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- { uint32_t x103 = (x101 + x54);
- { uint32_t x104 = (x103 >> 0x18);
- { uint32_t x105 = (x103 & 0xffffff);
- out[0] = x102;
- out[1] = x105;
- out[2] = (x104 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- out[10] = x81;
- out[11] = x84;
- out[12] = x87;
- out[13] = x90;
- out[14] = x93;
- out[15] = x96;
- out[16] = x99;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e413m21_17limbs/fesquare.v b/src/Specific/solinas32_2e413m21_17limbs/fesquare.v
deleted file mode 100644
index 70c272091..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e413m21_17limbs.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_2e413m21_17limbs/fesquareDisplay.log b/src/Specific/solinas32_2e413m21_17limbs/fesquareDisplay.log
deleted file mode 100644
index 4c8f706fe..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,80 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x31, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x33 = (((uint64_t)x2 * x31) + ((0x2 * ((uint64_t)x4 * x32)) + ((0x2 * ((uint64_t)x6 * x30)) + (((uint64_t)x8 * x28) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + (((uint64_t)x14 * x22) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + (((uint64_t)x22 * x14) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + (((uint64_t)x28 * x8) + ((0x2 * ((uint64_t)x30 * x6)) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x31 * x2)))))))))))))))));
- uint64_t x34 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + ((0x2 * ((uint64_t)x10 * x24)) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + ((0x2 * ((uint64_t)x24 * x10)) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x15 * ((uint64_t)x31 * x31)));
- uint64_t x35 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x15 * (((uint64_t)x32 * x31) + ((uint64_t)x31 * x32))));
- uint64_t x36 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + (((uint64_t)x8 * x22) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + (((uint64_t)x22 * x8) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x30 * x31)) + ((0x2 * ((uint64_t)x32 * x32)) + (0x2 * ((uint64_t)x31 * x30))))));
- uint64_t x37 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x15 * (((uint64_t)x28 * x31) + ((0x2 * ((uint64_t)x30 * x32)) + ((0x2 * ((uint64_t)x32 * x30)) + ((uint64_t)x31 * x28))))));
- uint64_t x38 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x15 * (((uint64_t)x26 * x31) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + ((uint64_t)x31 * x26)))))));
- uint64_t x39 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x15 * ((0x2 * ((uint64_t)x24 * x31)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + (0x2 * ((uint64_t)x31 * x24)))))))));
- uint64_t x40 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x15 * (((uint64_t)x22 * x31) + ((0x2 * ((uint64_t)x24 * x32)) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + ((0x2 * ((uint64_t)x32 * x24)) + ((uint64_t)x31 * x22)))))))));
- uint64_t x41 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x15 * (((uint64_t)x20 * x31) + (((uint64_t)x22 * x32) + ((0x2 * ((uint64_t)x24 * x30)) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + ((0x2 * ((uint64_t)x30 * x24)) + (((uint64_t)x32 * x22) + ((uint64_t)x31 * x20))))))))));
- uint64_t x42 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x15 * (((uint64_t)x18 * x31) + (((uint64_t)x20 * x32) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + (((uint64_t)x32 * x20) + ((uint64_t)x31 * x18)))))))))));
- uint64_t x43 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x15 * ((0x2 * ((uint64_t)x16 * x31)) + ((0x2 * ((uint64_t)x18 * x32)) + ((0x2 * ((uint64_t)x20 * x30)) + (((uint64_t)x22 * x28) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + (((uint64_t)x28 * x22) + ((0x2 * ((uint64_t)x30 * x20)) + ((0x2 * ((uint64_t)x32 * x18)) + (0x2 * ((uint64_t)x31 * x16)))))))))))));
- uint64_t x44 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x15 * (((uint64_t)x14 * x31) + ((0x2 * ((uint64_t)x16 * x32)) + ((0x2 * ((uint64_t)x18 * x30)) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + ((0x2 * ((uint64_t)x24 * x24)) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + ((0x2 * ((uint64_t)x30 * x18)) + ((0x2 * ((uint64_t)x32 * x16)) + ((uint64_t)x31 * x14)))))))))))));
- uint64_t x45 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x15 * (((uint64_t)x12 * x31) + (((uint64_t)x14 * x32) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + (((uint64_t)x32 * x14) + ((uint64_t)x31 * x12))))))))))))));
- uint64_t x46 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x15 * ((0x2 * ((uint64_t)x10 * x31)) + ((0x2 * ((uint64_t)x12 * x32)) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + ((0x2 * ((uint64_t)x32 * x12)) + (0x2 * ((uint64_t)x31 * x10))))))))))))))));
- uint64_t x47 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x15 * (((uint64_t)x8 * x31) + ((0x2 * ((uint64_t)x10 * x32)) + ((0x2 * ((uint64_t)x12 * x30)) + (((uint64_t)x14 * x28) + ((0x2 * ((uint64_t)x16 * x26)) + ((0x2 * ((uint64_t)x18 * x24)) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((0x2 * ((uint64_t)x24 * x18)) + ((0x2 * ((uint64_t)x26 * x16)) + (((uint64_t)x28 * x14) + ((0x2 * ((uint64_t)x30 * x12)) + ((0x2 * ((uint64_t)x32 * x10)) + ((uint64_t)x31 * x8))))))))))))))));
- uint64_t x48 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x15 * (((uint64_t)x6 * x31) + (((uint64_t)x8 * x32) + ((0x2 * ((uint64_t)x10 * x30)) + (((uint64_t)x12 * x28) + (((uint64_t)x14 * x26) + ((0x2 * ((uint64_t)x16 * x24)) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + ((0x2 * ((uint64_t)x24 * x16)) + (((uint64_t)x26 * x14) + (((uint64_t)x28 * x12) + ((0x2 * ((uint64_t)x30 * x10)) + (((uint64_t)x32 * x8) + ((uint64_t)x31 * x6)))))))))))))))));
- uint64_t x49 = (((uint64_t)x2 * x2) + (0x15 * ((0x2 * ((uint64_t)x4 * x31)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + (0x2 * ((uint64_t)x31 * x4)))))))))))))))))));
- uint64_t x50 = (x49 >> 0x19);
- uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- uint64_t x52 = (x50 + x48);
- uint64_t x53 = (x52 >> 0x18);
- uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- uint64_t x55 = (x53 + x47);
- uint64_t x56 = (x55 >> 0x18);
- uint32_t x57 = ((uint32_t)x55 & 0xffffff);
- uint64_t x58 = (x56 + x46);
- uint64_t x59 = (x58 >> 0x19);
- uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- uint64_t x61 = (x59 + x45);
- uint64_t x62 = (x61 >> 0x18);
- uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- uint64_t x64 = (x62 + x44);
- uint64_t x65 = (x64 >> 0x18);
- uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- uint64_t x67 = (x65 + x43);
- uint64_t x68 = (x67 >> 0x19);
- uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- uint64_t x70 = (x68 + x42);
- uint64_t x71 = (x70 >> 0x18);
- uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- uint64_t x73 = (x71 + x41);
- uint64_t x74 = (x73 >> 0x18);
- uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- uint64_t x76 = (x74 + x40);
- uint64_t x77 = (x76 >> 0x18);
- uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- uint64_t x79 = (x77 + x39);
- uint64_t x80 = (x79 >> 0x19);
- uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- uint64_t x82 = (x80 + x38);
- uint64_t x83 = (x82 >> 0x18);
- uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- uint64_t x85 = (x83 + x37);
- uint64_t x86 = (x85 >> 0x18);
- uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- uint64_t x88 = (x86 + x36);
- uint64_t x89 = (x88 >> 0x19);
- uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- uint64_t x91 = (x89 + x35);
- uint64_t x92 = (x91 >> 0x18);
- uint32_t x93 = ((uint32_t)x91 & 0xffffff);
- uint64_t x94 = (x92 + x34);
- uint64_t x95 = (x94 >> 0x18);
- uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- uint64_t x97 = (x95 + x33);
- uint64_t x98 = (x97 >> 0x18);
- uint32_t x99 = ((uint32_t)x97 & 0xffffff);
- uint64_t x100 = (x51 + (0x15 * x98));
- uint32_t x101 = (uint32_t) (x100 >> 0x19);
- uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- uint32_t x103 = (x101 + x54);
- uint32_t x104 = (x103 >> 0x18);
- uint32_t x105 = (x103 & 0xffffff);
- return (Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x104 + x57), Return x105, Return x102))
-x
- : word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e413m21_17limbs/fesquareDisplay.v b/src/Specific/solinas32_2e413m21_17limbs/fesquareDisplay.v
deleted file mode 100644
index b84904b6d..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e413m21_17limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e413m21_17limbs/fesub.c b/src/Specific/solinas32_2e413m21_17limbs/fesub.c
deleted file mode 100644
index 96318485c..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/fesub.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void fesub(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- out[0] = ((0x3ffffd6 + x5) - x37);
- out[1] = ((0x1fffffe + x7) - x39);
- out[2] = ((0x1fffffe + x9) - x41);
- out[3] = ((0x3fffffe + x11) - x43);
- out[4] = ((0x1fffffe + x13) - x45);
- out[5] = ((0x1fffffe + x15) - x47);
- out[6] = ((0x3fffffe + x17) - x49);
- out[7] = ((0x1fffffe + x19) - x51);
- out[8] = ((0x1fffffe + x21) - x53);
- out[9] = ((0x1fffffe + x23) - x55);
- out[10] = ((0x3fffffe + x25) - x57);
- out[11] = ((0x1fffffe + x27) - x59);
- out[12] = ((0x1fffffe + x29) - x61);
- out[13] = ((0x3fffffe + x31) - x63);
- out[14] = ((0x1fffffe + x33) - x65);
- out[15] = ((0x1fffffe + x35) - x67);
- out[16] = ((0x1fffffe + x34) - x66);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e413m21_17limbs/fesub.v b/src/Specific/solinas32_2e413m21_17limbs/fesub.v
deleted file mode 100644
index ec1c54be4..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e413m21_17limbs.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_2e413m21_17limbs/fesubDisplay.log b/src/Specific/solinas32_2e413m21_17limbs/fesubDisplay.log
deleted file mode 100644
index 930fe52b6..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- (((0x1fffffe + x34) - x66), ((0x1fffffe + x35) - x67), ((0x1fffffe + x33) - x65), ((0x3fffffe + x31) - x63), ((0x1fffffe + x29) - x61), ((0x1fffffe + x27) - x59), ((0x3fffffe + x25) - x57), ((0x1fffffe + x23) - x55), ((0x1fffffe + x21) - x53), ((0x1fffffe + x19) - x51), ((0x3fffffe + x17) - x49), ((0x1fffffe + x15) - x47), ((0x1fffffe + x13) - x45), ((0x3fffffe + x11) - x43), ((0x1fffffe + x9) - x41), ((0x1fffffe + x7) - x39), ((0x3ffffd6 + x5) - x37)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e413m21_17limbs/fesubDisplay.v b/src/Specific/solinas32_2e413m21_17limbs/fesubDisplay.v
deleted file mode 100644
index ed7790db7..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e413m21_17limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e413m21_17limbs/freeze.c b/src/Specific/solinas32_2e413m21_17limbs/freeze.c
deleted file mode 100644
index 5458feafa..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/freeze.c
+++ /dev/null
@@ -1,89 +0,0 @@
-static void freeze(uint32_t out[17], const uint32_t in1[17]) {
- { const uint32_t x31 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffeb);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x4, 0xffffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x6, 0xffffff);
- { uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x8, 0x1ffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x10, 0xffffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x12, 0xffffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x14, 0x1ffffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x16, 0xffffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x18, 0xffffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x20, 0xffffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x22, 0x1ffffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x24, 0xffffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x26, 0xffffff);
- { uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x28, 0x1ffffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x30, 0xffffff);
- { uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x32, 0xffffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x31, 0xffffff);
- { uint32_t x84 = cmovznz32(x83, 0x0, 0xffffffff);
- { uint32_t x85 = (x84 & 0x1ffffeb);
- { uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x34, Return x85);
- { uint32_t x89 = (x84 & 0xffffff);
- { uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x37, Return x89);
- { uint32_t x93 = (x84 & 0xffffff);
- { uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x40, Return x93);
- { uint32_t x97 = (x84 & 0x1ffffff);
- { uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x43, Return x97);
- { uint32_t x101 = (x84 & 0xffffff);
- { uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x46, Return x101);
- { uint32_t x105 = (x84 & 0xffffff);
- { uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x49, Return x105);
- { uint32_t x109 = (x84 & 0x1ffffff);
- { uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x52, Return x109);
- { uint32_t x113 = (x84 & 0xffffff);
- { uint32_t x115, uint8_t x116 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x55, Return x113);
- { uint32_t x117 = (x84 & 0xffffff);
- { uint32_t x119, uint8_t x120 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x116, Return x58, Return x117);
- { uint32_t x121 = (x84 & 0xffffff);
- { uint32_t x123, uint8_t x124 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x120, Return x61, Return x121);
- { uint32_t x125 = (x84 & 0x1ffffff);
- { uint32_t x127, uint8_t x128 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x124, Return x64, Return x125);
- { uint32_t x129 = (x84 & 0xffffff);
- { uint32_t x131, uint8_t x132 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x128, Return x67, Return x129);
- { uint32_t x133 = (x84 & 0xffffff);
- { uint32_t x135, uint8_t x136 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x132, Return x70, Return x133);
- { uint32_t x137 = (x84 & 0x1ffffff);
- { uint32_t x139, uint8_t x140 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x136, Return x73, Return x137);
- { uint32_t x141 = (x84 & 0xffffff);
- { uint32_t x143, uint8_t x144 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x140, Return x76, Return x141);
- { uint32_t x145 = (x84 & 0xffffff);
- { uint32_t x147, uint8_t x148 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x144, Return x79, Return x145);
- { uint32_t x149 = (x84 & 0xffffff);
- { uint32_t x151, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x148, Return x82, Return x149);
- out[0] = x87;
- out[1] = x91;
- out[2] = x95;
- out[3] = x99;
- out[4] = x103;
- out[5] = x107;
- out[6] = x111;
- out[7] = x115;
- out[8] = x119;
- out[9] = x123;
- out[10] = x127;
- out[11] = x131;
- out[12] = x135;
- out[13] = x139;
- out[14] = x143;
- out[15] = x147;
- out[16] = x151;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e413m21_17limbs/freeze.v b/src/Specific/solinas32_2e413m21_17limbs/freeze.v
deleted file mode 100644
index 70c66d9b5..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e413m21_17limbs.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_2e413m21_17limbs/freezeDisplay.log b/src/Specific/solinas32_2e413m21_17limbs/freezeDisplay.log
deleted file mode 100644
index 0c486296d..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/freezeDisplay.log
+++ /dev/null
@@ -1,59 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x31, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffeb);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x4, 0xffffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x6, 0xffffff);
- uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x8, 0x1ffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x10, 0xffffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x12, 0xffffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x14, 0x1ffffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x16, 0xffffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x18, 0xffffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x20, 0xffffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x22, 0x1ffffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x24, 0xffffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x26, 0xffffff);
- uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x28, 0x1ffffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x30, 0xffffff);
- uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x32, 0xffffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x31, 0xffffff);
- uint32_t x84 = cmovznz32(x83, 0x0, 0xffffffff);
- uint32_t x85 = (x84 & 0x1ffffeb);
- uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x34, Return x85);
- uint32_t x89 = (x84 & 0xffffff);
- uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x37, Return x89);
- uint32_t x93 = (x84 & 0xffffff);
- uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x40, Return x93);
- uint32_t x97 = (x84 & 0x1ffffff);
- uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x43, Return x97);
- uint32_t x101 = (x84 & 0xffffff);
- uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x46, Return x101);
- uint32_t x105 = (x84 & 0xffffff);
- uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x49, Return x105);
- uint32_t x109 = (x84 & 0x1ffffff);
- uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x52, Return x109);
- uint32_t x113 = (x84 & 0xffffff);
- uint32_t x115, uint8_t x116 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x55, Return x113);
- uint32_t x117 = (x84 & 0xffffff);
- uint32_t x119, uint8_t x120 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x116, Return x58, Return x117);
- uint32_t x121 = (x84 & 0xffffff);
- uint32_t x123, uint8_t x124 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x120, Return x61, Return x121);
- uint32_t x125 = (x84 & 0x1ffffff);
- uint32_t x127, uint8_t x128 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x124, Return x64, Return x125);
- uint32_t x129 = (x84 & 0xffffff);
- uint32_t x131, uint8_t x132 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x128, Return x67, Return x129);
- uint32_t x133 = (x84 & 0xffffff);
- uint32_t x135, uint8_t x136 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x132, Return x70, Return x133);
- uint32_t x137 = (x84 & 0x1ffffff);
- uint32_t x139, uint8_t x140 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x136, Return x73, Return x137);
- uint32_t x141 = (x84 & 0xffffff);
- uint32_t x143, uint8_t x144 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x140, Return x76, Return x141);
- uint32_t x145 = (x84 & 0xffffff);
- uint32_t x147, uint8_t x148 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x144, Return x79, Return x145);
- uint32_t x149 = (x84 & 0xffffff);
- uint32_t x151, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x148, Return x82, Return x149);
- (Return x151, Return x147, Return x143, Return x139, Return x135, Return x131, Return x127, Return x123, Return x119, Return x115, Return x111, Return x107, Return x103, Return x99, Return x95, Return x91, Return x87))
-x
- : word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e413m21_17limbs/freezeDisplay.v b/src/Specific/solinas32_2e413m21_17limbs/freezeDisplay.v
deleted file mode 100644
index 9b7983935..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e413m21_17limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e413m21_17limbs/py_interpreter.sh b/src/Specific/solinas32_2e413m21_17limbs/py_interpreter.sh
deleted file mode 100755
index dc4eaca33..000000000
--- a/src/Specific/solinas32_2e413m21_17limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**413 - 21' -Dmodulus_bytes='24 + 5/17' -Da24='121665'
diff --git a/src/Specific/solinas32_2e414m17_16limbs/CurveParameters.v b/src/Specific/solinas32_2e414m17_16limbs/CurveParameters.v
deleted file mode 100644
index 1ae1463eb..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^414 - 17
-Base: 25.875
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 16%nat;
- base := 25 + 7/8;
- bitwidth := 32;
- s := 2^414;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 16); [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_2e414m17_16limbs/Synthesis.v b/src/Specific/solinas32_2e414m17_16limbs/Synthesis.v
deleted file mode 100644
index 9dccb57c7..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e414m17_16limbs.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_2e414m17_16limbs/compiler.sh b/src/Specific/solinas32_2e414m17_16limbs/compiler.sh
deleted file mode 100755
index ff783eeb8..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,26,25,26,26,26,26,26,26,26,25}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<414) - 17' "$@"
diff --git a/src/Specific/solinas32_2e414m17_16limbs/compilerxx.sh b/src/Specific/solinas32_2e414m17_16limbs/compilerxx.sh
deleted file mode 100755
index 9c718a116..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,26,25,26,26,26,26,26,26,26,25}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<414) - 17' "$@"
diff --git a/src/Specific/solinas32_2e414m17_16limbs/feadd.c b/src/Specific/solinas32_2e414m17_16limbs/feadd.c
deleted file mode 100644
index 18b150e21..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/feadd.c
+++ /dev/null
@@ -1,51 +0,0 @@
-static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- out[0] = (x5 + x35);
- out[1] = (x7 + x37);
- out[2] = (x9 + x39);
- out[3] = (x11 + x41);
- out[4] = (x13 + x43);
- out[5] = (x15 + x45);
- out[6] = (x17 + x47);
- out[7] = (x19 + x49);
- out[8] = (x21 + x51);
- out[9] = (x23 + x53);
- out[10] = (x25 + x55);
- out[11] = (x27 + x57);
- out[12] = (x29 + x59);
- out[13] = (x31 + x61);
- out[14] = (x33 + x63);
- out[15] = (x32 + x62);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e414m17_16limbs/feadd.v b/src/Specific/solinas32_2e414m17_16limbs/feadd.v
deleted file mode 100644
index b28c0593a..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e414m17_16limbs.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_2e414m17_16limbs/feaddDisplay.log b/src/Specific/solinas32_2e414m17_16limbs/feaddDisplay.log
deleted file mode 100644
index 130c31964..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- ((x32 + x62), (x33 + x63), (x31 + x61), (x29 + x59), (x27 + x57), (x25 + x55), (x23 + x53), (x21 + x51), (x19 + x49), (x17 + x47), (x15 + x45), (x13 + x43), (x11 + x41), (x9 + x39), (x7 + x37), (x5 + x35)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e414m17_16limbs/feaddDisplay.v b/src/Specific/solinas32_2e414m17_16limbs/feaddDisplay.v
deleted file mode 100644
index 59424ced3..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e414m17_16limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e414m17_16limbs/fecarry.v b/src/Specific/solinas32_2e414m17_16limbs/fecarry.v
deleted file mode 100644
index d3937f8d7..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e414m17_16limbs.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_2e414m17_16limbs/fecarryDisplay.v b/src/Specific/solinas32_2e414m17_16limbs/fecarryDisplay.v
deleted file mode 100644
index 410a8732b..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e414m17_16limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e414m17_16limbs/femul.c b/src/Specific/solinas32_2e414m17_16limbs/femul.c
deleted file mode 100644
index 4d31fcfa7..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/femul.c
+++ /dev/null
@@ -1,120 +0,0 @@
-static void femul(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- { uint64_t x64 = (((uint64_t)x5 * x62) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (((uint64_t)x29 * x41) + (((uint64_t)x31 * x39) + (((uint64_t)x33 * x37) + ((uint64_t)x32 * x35))))))))))))))));
- { uint64_t x65 = ((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + (((uint64_t)x9 * x59) + (((uint64_t)x11 * x57) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + ((0x2 * ((uint64_t)x19 * x49)) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + (((uint64_t)x27 * x41) + (((uint64_t)x29 * x39) + (((uint64_t)x31 * x37) + ((uint64_t)x33 * x35))))))))))))))) + (0x11 * (0x2 * ((uint64_t)x32 * x62))));
- { uint64_t x66 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + ((0x2 * ((uint64_t)x17 * x49)) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + (((uint64_t)x29 * x37) + ((uint64_t)x31 * x35)))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x33 * x62)) + (0x2 * ((uint64_t)x32 * x63)))));
- { uint64_t x67 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + (((uint64_t)x27 * x37) + ((uint64_t)x29 * x35))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x31 * x62)) + ((0x2 * ((uint64_t)x33 * x63)) + (0x2 * ((uint64_t)x32 * x61))))));
- { uint64_t x68 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + (((uint64_t)x25 * x37) + ((uint64_t)x27 * x35)))))))))))) + (0x11 * ((0x2 * ((uint64_t)x29 * x62)) + ((0x2 * ((uint64_t)x31 * x63)) + ((0x2 * ((uint64_t)x33 * x61)) + (0x2 * ((uint64_t)x32 * x59)))))));
- { uint64_t x69 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + ((uint64_t)x25 * x35))))))))))) + (0x11 * ((0x2 * ((uint64_t)x27 * x62)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + (0x2 * ((uint64_t)x32 * x57))))))));
- { uint64_t x70 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + (((uint64_t)x21 * x37) + ((uint64_t)x23 * x35)))))))))) + (0x11 * ((0x2 * ((uint64_t)x25 * x62)) + ((0x2 * ((uint64_t)x27 * x63)) + ((0x2 * ((uint64_t)x29 * x61)) + ((0x2 * ((uint64_t)x31 * x59)) + ((0x2 * ((uint64_t)x33 * x57)) + (0x2 * ((uint64_t)x32 * x55)))))))));
- { uint64_t x71 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + ((uint64_t)x21 * x35))))))))) + (0x11 * ((0x2 * ((uint64_t)x23 * x62)) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + ((0x2 * ((uint64_t)x33 * x55)) + (0x2 * ((uint64_t)x32 * x53))))))))));
- { uint64_t x72 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + ((uint64_t)x19 * x35)))))))) + (0x11 * (((uint64_t)x21 * x62) + (((uint64_t)x23 * x63) + (((uint64_t)x25 * x61) + (((uint64_t)x27 * x59) + (((uint64_t)x29 * x57) + (((uint64_t)x31 * x55) + (((uint64_t)x33 * x53) + ((uint64_t)x32 * x51))))))))));
- { uint64_t x73 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((uint64_t)x17 * x35))))))) + (0x11 * ((0x2 * ((uint64_t)x19 * x62)) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + (0x2 * ((uint64_t)x32 * x49))))))))))));
- { uint64_t x74 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + ((uint64_t)x15 * x35)))))) + (0x11 * ((0x2 * ((uint64_t)x17 * x62)) + ((0x2 * ((uint64_t)x19 * x63)) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + ((0x2 * ((uint64_t)x33 * x49)) + (0x2 * ((uint64_t)x32 * x47)))))))))))));
- { uint64_t x75 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((uint64_t)x13 * x35))))) + (0x11 * ((0x2 * ((uint64_t)x15 * x62)) + ((0x2 * ((uint64_t)x17 * x63)) + ((0x2 * ((uint64_t)x19 * x61)) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + ((0x2 * ((uint64_t)x31 * x49)) + ((0x2 * ((uint64_t)x33 * x47)) + (0x2 * ((uint64_t)x32 * x45))))))))))))));
- { uint64_t x76 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((uint64_t)x11 * x35)))) + (0x11 * ((0x2 * ((uint64_t)x13 * x62)) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + ((0x2 * ((uint64_t)x33 * x45)) + (0x2 * ((uint64_t)x32 * x43)))))))))))))));
- { uint64_t x77 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((uint64_t)x9 * x35))) + (0x11 * ((0x2 * ((uint64_t)x11 * x62)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + (0x2 * ((uint64_t)x32 * x41))))))))))))))));
- { ℤ x78 = ((((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)) +ℤ (0x11 *ℤ ((0x2 * ((uint64_t)x9 * x62)) + ((0x2 * ((uint64_t)x11 * x63)) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + ((0x2 * ((uint64_t)x19 * x55)) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + ((0x2 * ((uint64_t)x31 * x43)) + ((0x2 * ((uint64_t)x33 * x41)) + (0x2 * ((uint64_t)x32 * x39)))))))))))))))));
- { ℤ x79 = (((uint64_t)x5 * x35) +ℤ (0x11 *ℤ ((0x2 * ((uint64_t)x7 * x62)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + (((uint64_t)x21 * x51) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + (0x2 * ((uint64_t)x32 * x37))))))))))))))))));
- { uint64_t x80 = (x79 >> 0x1a);
- { uint32_t x81 = (x79 & 0x3ffffff);
- { ℤ x82 = (x80 +ℤ x78);
- { uint64_t x83 = (x82 >> 0x1a);
- { uint32_t x84 = (x82 & 0x3ffffff);
- { uint64_t x85 = (x83 + x77);
- { uint64_t x86 = (x85 >> 0x1a);
- { uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- { uint64_t x88 = (x86 + x76);
- { uint64_t x89 = (x88 >> 0x1a);
- { uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- { uint64_t x91 = (x89 + x75);
- { uint64_t x92 = (x91 >> 0x1a);
- { uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- { uint64_t x94 = (x92 + x74);
- { uint64_t x95 = (x94 >> 0x1a);
- { uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- { uint64_t x97 = (x95 + x73);
- { uint64_t x98 = (x97 >> 0x1a);
- { uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- { uint64_t x100 = (x98 + x72);
- { uint64_t x101 = (x100 >> 0x19);
- { uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- { uint64_t x103 = (x101 + x71);
- { uint64_t x104 = (x103 >> 0x1a);
- { uint32_t x105 = ((uint32_t)x103 & 0x3ffffff);
- { uint64_t x106 = (x104 + x70);
- { uint64_t x107 = (x106 >> 0x1a);
- { uint32_t x108 = ((uint32_t)x106 & 0x3ffffff);
- { uint64_t x109 = (x107 + x69);
- { uint64_t x110 = (x109 >> 0x1a);
- { uint32_t x111 = ((uint32_t)x109 & 0x3ffffff);
- { uint64_t x112 = (x110 + x68);
- { uint64_t x113 = (x112 >> 0x1a);
- { uint32_t x114 = ((uint32_t)x112 & 0x3ffffff);
- { uint64_t x115 = (x113 + x67);
- { uint64_t x116 = (x115 >> 0x1a);
- { uint32_t x117 = ((uint32_t)x115 & 0x3ffffff);
- { uint64_t x118 = (x116 + x66);
- { uint64_t x119 = (x118 >> 0x1a);
- { uint32_t x120 = ((uint32_t)x118 & 0x3ffffff);
- { uint64_t x121 = (x119 + x65);
- { uint64_t x122 = (x121 >> 0x1a);
- { uint32_t x123 = ((uint32_t)x121 & 0x3ffffff);
- { uint64_t x124 = (x122 + x64);
- { uint64_t x125 = (x124 >> 0x19);
- { uint32_t x126 = ((uint32_t)x124 & 0x1ffffff);
- { uint64_t x127 = (x81 + (0x11 * x125));
- { uint32_t x128 = (uint32_t) (x127 >> 0x1a);
- { uint32_t x129 = ((uint32_t)x127 & 0x3ffffff);
- { uint32_t x130 = (x128 + x84);
- { uint32_t x131 = (x130 >> 0x1a);
- { uint32_t x132 = (x130 & 0x3ffffff);
- out[0] = x129;
- out[1] = x132;
- out[2] = (x131 + x87);
- out[3] = x90;
- out[4] = x93;
- out[5] = x96;
- out[6] = x99;
- out[7] = x102;
- out[8] = x105;
- out[9] = x108;
- out[10] = x111;
- out[11] = x114;
- out[12] = x117;
- out[13] = x120;
- out[14] = x123;
- out[15] = x126;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e414m17_16limbs/femul.v b/src/Specific/solinas32_2e414m17_16limbs/femul.v
deleted file mode 100644
index 23d88f754..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e414m17_16limbs.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_2e414m17_16limbs/femulDisplay.log b/src/Specific/solinas32_2e414m17_16limbs/femulDisplay.log
deleted file mode 100644
index a7447d8a1..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/femulDisplay.log
+++ /dev/null
@@ -1,76 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- uint64_t x64 = (((uint64_t)x5 * x62) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (((uint64_t)x29 * x41) + (((uint64_t)x31 * x39) + (((uint64_t)x33 * x37) + ((uint64_t)x32 * x35))))))))))))))));
- uint64_t x65 = ((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + (((uint64_t)x9 * x59) + (((uint64_t)x11 * x57) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + ((0x2 * ((uint64_t)x19 * x49)) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + (((uint64_t)x27 * x41) + (((uint64_t)x29 * x39) + (((uint64_t)x31 * x37) + ((uint64_t)x33 * x35))))))))))))))) + (0x11 * (0x2 * ((uint64_t)x32 * x62))));
- uint64_t x66 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + ((0x2 * ((uint64_t)x17 * x49)) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + (((uint64_t)x29 * x37) + ((uint64_t)x31 * x35)))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x33 * x62)) + (0x2 * ((uint64_t)x32 * x63)))));
- uint64_t x67 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + (((uint64_t)x25 * x39) + (((uint64_t)x27 * x37) + ((uint64_t)x29 * x35))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x31 * x62)) + ((0x2 * ((uint64_t)x33 * x63)) + (0x2 * ((uint64_t)x32 * x61))))));
- uint64_t x68 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + (((uint64_t)x21 * x41) + (((uint64_t)x23 * x39) + (((uint64_t)x25 * x37) + ((uint64_t)x27 * x35)))))))))))) + (0x11 * ((0x2 * ((uint64_t)x29 * x62)) + ((0x2 * ((uint64_t)x31 * x63)) + ((0x2 * ((uint64_t)x33 * x61)) + (0x2 * ((uint64_t)x32 * x59)))))));
- uint64_t x69 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + (((uint64_t)x21 * x39) + (((uint64_t)x23 * x37) + ((uint64_t)x25 * x35))))))))))) + (0x11 * ((0x2 * ((uint64_t)x27 * x62)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + (0x2 * ((uint64_t)x32 * x57))))))));
- uint64_t x70 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + (((uint64_t)x21 * x37) + ((uint64_t)x23 * x35)))))))))) + (0x11 * ((0x2 * ((uint64_t)x25 * x62)) + ((0x2 * ((uint64_t)x27 * x63)) + ((0x2 * ((uint64_t)x29 * x61)) + ((0x2 * ((uint64_t)x31 * x59)) + ((0x2 * ((uint64_t)x33 * x57)) + (0x2 * ((uint64_t)x32 * x55)))))))));
- uint64_t x71 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((0x2 * ((uint64_t)x19 * x37)) + ((uint64_t)x21 * x35))))))))) + (0x11 * ((0x2 * ((uint64_t)x23 * x62)) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + ((0x2 * ((uint64_t)x33 * x55)) + (0x2 * ((uint64_t)x32 * x53))))))))));
- uint64_t x72 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + ((uint64_t)x19 * x35)))))))) + (0x11 * (((uint64_t)x21 * x62) + (((uint64_t)x23 * x63) + (((uint64_t)x25 * x61) + (((uint64_t)x27 * x59) + (((uint64_t)x29 * x57) + (((uint64_t)x31 * x55) + (((uint64_t)x33 * x53) + ((uint64_t)x32 * x51))))))))));
- uint64_t x73 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((uint64_t)x17 * x35))))))) + (0x11 * ((0x2 * ((uint64_t)x19 * x62)) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + (0x2 * ((uint64_t)x32 * x49))))))))))));
- uint64_t x74 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + ((uint64_t)x15 * x35)))))) + (0x11 * ((0x2 * ((uint64_t)x17 * x62)) + ((0x2 * ((uint64_t)x19 * x63)) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + ((0x2 * ((uint64_t)x33 * x49)) + (0x2 * ((uint64_t)x32 * x47)))))))))))));
- uint64_t x75 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((uint64_t)x13 * x35))))) + (0x11 * ((0x2 * ((uint64_t)x15 * x62)) + ((0x2 * ((uint64_t)x17 * x63)) + ((0x2 * ((uint64_t)x19 * x61)) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + ((0x2 * ((uint64_t)x31 * x49)) + ((0x2 * ((uint64_t)x33 * x47)) + (0x2 * ((uint64_t)x32 * x45))))))))))))));
- uint64_t x76 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((uint64_t)x11 * x35)))) + (0x11 * ((0x2 * ((uint64_t)x13 * x62)) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + ((0x2 * ((uint64_t)x33 * x45)) + (0x2 * ((uint64_t)x32 * x43)))))))))))))));
- uint64_t x77 = ((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((uint64_t)x9 * x35))) + (0x11 * ((0x2 * ((uint64_t)x11 * x62)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + (0x2 * ((uint64_t)x32 * x41))))))))))))))));
- ℤ x78 = ((((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)) +ℤ (0x11 *ℤ ((0x2 * ((uint64_t)x9 * x62)) + ((0x2 * ((uint64_t)x11 * x63)) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + ((0x2 * ((uint64_t)x19 * x55)) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + ((0x2 * ((uint64_t)x31 * x43)) + ((0x2 * ((uint64_t)x33 * x41)) + (0x2 * ((uint64_t)x32 * x39)))))))))))))))));
- ℤ x79 = (((uint64_t)x5 * x35) +ℤ (0x11 *ℤ ((0x2 * ((uint64_t)x7 * x62)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + (((uint64_t)x21 * x51) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + (0x2 * ((uint64_t)x32 * x37))))))))))))))))));
- uint64_t x80 = (x79 >> 0x1a);
- uint32_t x81 = (x79 & 0x3ffffff);
- ℤ x82 = (x80 +ℤ x78);
- uint64_t x83 = (x82 >> 0x1a);
- uint32_t x84 = (x82 & 0x3ffffff);
- uint64_t x85 = (x83 + x77);
- uint64_t x86 = (x85 >> 0x1a);
- uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- uint64_t x88 = (x86 + x76);
- uint64_t x89 = (x88 >> 0x1a);
- uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- uint64_t x91 = (x89 + x75);
- uint64_t x92 = (x91 >> 0x1a);
- uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- uint64_t x94 = (x92 + x74);
- uint64_t x95 = (x94 >> 0x1a);
- uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- uint64_t x97 = (x95 + x73);
- uint64_t x98 = (x97 >> 0x1a);
- uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- uint64_t x100 = (x98 + x72);
- uint64_t x101 = (x100 >> 0x19);
- uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- uint64_t x103 = (x101 + x71);
- uint64_t x104 = (x103 >> 0x1a);
- uint32_t x105 = ((uint32_t)x103 & 0x3ffffff);
- uint64_t x106 = (x104 + x70);
- uint64_t x107 = (x106 >> 0x1a);
- uint32_t x108 = ((uint32_t)x106 & 0x3ffffff);
- uint64_t x109 = (x107 + x69);
- uint64_t x110 = (x109 >> 0x1a);
- uint32_t x111 = ((uint32_t)x109 & 0x3ffffff);
- uint64_t x112 = (x110 + x68);
- uint64_t x113 = (x112 >> 0x1a);
- uint32_t x114 = ((uint32_t)x112 & 0x3ffffff);
- uint64_t x115 = (x113 + x67);
- uint64_t x116 = (x115 >> 0x1a);
- uint32_t x117 = ((uint32_t)x115 & 0x3ffffff);
- uint64_t x118 = (x116 + x66);
- uint64_t x119 = (x118 >> 0x1a);
- uint32_t x120 = ((uint32_t)x118 & 0x3ffffff);
- uint64_t x121 = (x119 + x65);
- uint64_t x122 = (x121 >> 0x1a);
- uint32_t x123 = ((uint32_t)x121 & 0x3ffffff);
- uint64_t x124 = (x122 + x64);
- uint64_t x125 = (x124 >> 0x19);
- uint32_t x126 = ((uint32_t)x124 & 0x1ffffff);
- uint64_t x127 = (x81 + (0x11 * x125));
- uint32_t x128 = (uint32_t) (x127 >> 0x1a);
- uint32_t x129 = ((uint32_t)x127 & 0x3ffffff);
- uint32_t x130 = (x128 + x84);
- uint32_t x131 = (x130 >> 0x1a);
- uint32_t x132 = (x130 & 0x3ffffff);
- return (Return x126, Return x123, Return x120, Return x117, Return x114, Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, (x131 + x87), Return x132, Return x129))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e414m17_16limbs/femulDisplay.v b/src/Specific/solinas32_2e414m17_16limbs/femulDisplay.v
deleted file mode 100644
index 6e72de813..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e414m17_16limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e414m17_16limbs/fesquare.c b/src/Specific/solinas32_2e414m17_16limbs/fesquare.c
deleted file mode 100644
index 833a39627..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/fesquare.c
+++ /dev/null
@@ -1,104 +0,0 @@
-static void fesquare(uint32_t out[16], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x31 = (((uint64_t)x2 * x29) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x29 * x2))))))))))))))));
- { uint64_t x32 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x11 * (0x2 * ((uint64_t)x29 * x29))));
- { uint64_t x33 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x30 * x29)) + (0x2 * ((uint64_t)x29 * x30)))));
- { uint64_t x34 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x28 * x29)) + ((0x2 * ((uint64_t)x30 * x30)) + (0x2 * ((uint64_t)x29 * x28))))));
- { uint64_t x35 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x11 * ((0x2 * ((uint64_t)x26 * x29)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + (0x2 * ((uint64_t)x29 * x26)))))));
- { uint64_t x36 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x11 * ((0x2 * ((uint64_t)x24 * x29)) + ((0x2 * ((uint64_t)x26 * x30)) + ((0x2 * ((uint64_t)x28 * x28)) + ((0x2 * ((uint64_t)x30 * x26)) + (0x2 * ((uint64_t)x29 * x24))))))));
- { uint64_t x37 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x11 * ((0x2 * ((uint64_t)x22 * x29)) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + (0x2 * ((uint64_t)x29 * x22)))))))));
- { uint64_t x38 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x11 * ((0x2 * ((uint64_t)x20 * x29)) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + ((0x2 * ((uint64_t)x26 * x26)) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + (0x2 * ((uint64_t)x29 * x20))))))))));
- { uint64_t x39 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x11 * (((uint64_t)x18 * x29) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + ((uint64_t)x29 * x18))))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x11 * ((0x2 * ((uint64_t)x16 * x29)) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + (0x2 * ((uint64_t)x29 * x16))))))))))));
- { uint64_t x41 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x11 * ((0x2 * ((uint64_t)x14 * x29)) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + (0x2 * ((uint64_t)x29 * x14)))))))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint64_t)x12 * x29)) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + (0x2 * ((uint64_t)x29 * x12))))))))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x11 * ((0x2 * ((uint64_t)x10 * x29)) + ((0x2 * ((uint64_t)x12 * x30)) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + ((0x2 * ((uint64_t)x30 * x12)) + (0x2 * ((uint64_t)x29 * x10)))))))))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x11 * ((0x2 * ((uint64_t)x8 * x29)) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + (0x2 * ((uint64_t)x29 * x8))))))))))))))));
- { ℤ x45 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) +ℤ (0x11 *ℤ ((0x2 * ((uint64_t)x6 * x29)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + (0x2 * ((uint64_t)x29 * x6)))))))))))))))));
- { ℤ x46 = (((uint64_t)x2 * x2) +ℤ (0x11 *ℤ ((0x2 * ((uint64_t)x4 * x29)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + (0x2 * ((uint64_t)x29 * x4))))))))))))))))));
- { uint64_t x47 = (x46 >> 0x1a);
- { uint32_t x48 = (x46 & 0x3ffffff);
- { ℤ x49 = (x47 +ℤ x45);
- { uint64_t x50 = (x49 >> 0x1a);
- { uint32_t x51 = (x49 & 0x3ffffff);
- { uint64_t x52 = (x50 + x44);
- { uint64_t x53 = (x52 >> 0x1a);
- { uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- { uint64_t x55 = (x53 + x43);
- { uint64_t x56 = (x55 >> 0x1a);
- { uint32_t x57 = ((uint32_t)x55 & 0x3ffffff);
- { uint64_t x58 = (x56 + x42);
- { uint64_t x59 = (x58 >> 0x1a);
- { uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- { uint64_t x61 = (x59 + x41);
- { uint64_t x62 = (x61 >> 0x1a);
- { uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- { uint64_t x64 = (x62 + x40);
- { uint64_t x65 = (x64 >> 0x1a);
- { uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- { uint64_t x67 = (x65 + x39);
- { uint64_t x68 = (x67 >> 0x19);
- { uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- { uint64_t x70 = (x68 + x38);
- { uint64_t x71 = (x70 >> 0x1a);
- { uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- { uint64_t x73 = (x71 + x37);
- { uint64_t x74 = (x73 >> 0x1a);
- { uint32_t x75 = ((uint32_t)x73 & 0x3ffffff);
- { uint64_t x76 = (x74 + x36);
- { uint64_t x77 = (x76 >> 0x1a);
- { uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- { uint64_t x79 = (x77 + x35);
- { uint64_t x80 = (x79 >> 0x1a);
- { uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- { uint64_t x82 = (x80 + x34);
- { uint64_t x83 = (x82 >> 0x1a);
- { uint32_t x84 = ((uint32_t)x82 & 0x3ffffff);
- { uint64_t x85 = (x83 + x33);
- { uint64_t x86 = (x85 >> 0x1a);
- { uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- { uint64_t x88 = (x86 + x32);
- { uint64_t x89 = (x88 >> 0x1a);
- { uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- { uint64_t x91 = (x89 + x31);
- { uint64_t x92 = (x91 >> 0x19);
- { uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- { uint64_t x94 = (x48 + (0x11 * x92));
- { uint32_t x95 = (uint32_t) (x94 >> 0x1a);
- { uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- { uint32_t x97 = (x95 + x51);
- { uint32_t x98 = (x97 >> 0x1a);
- { uint32_t x99 = (x97 & 0x3ffffff);
- out[0] = x96;
- out[1] = x99;
- out[2] = (x98 + x54);
- out[3] = x57;
- out[4] = x60;
- out[5] = x63;
- out[6] = x66;
- out[7] = x69;
- out[8] = x72;
- out[9] = x75;
- out[10] = x78;
- out[11] = x81;
- out[12] = x84;
- out[13] = x87;
- out[14] = x90;
- out[15] = x93;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e414m17_16limbs/fesquare.v b/src/Specific/solinas32_2e414m17_16limbs/fesquare.v
deleted file mode 100644
index d71be5bc6..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e414m17_16limbs.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_2e414m17_16limbs/fesquareDisplay.log b/src/Specific/solinas32_2e414m17_16limbs/fesquareDisplay.log
deleted file mode 100644
index 936df4db8..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,76 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x31 = (((uint64_t)x2 * x29) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x29 * x2))))))))))))))));
- uint64_t x32 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x11 * (0x2 * ((uint64_t)x29 * x29))));
- uint64_t x33 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x30 * x29)) + (0x2 * ((uint64_t)x29 * x30)))));
- uint64_t x34 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x28 * x29)) + ((0x2 * ((uint64_t)x30 * x30)) + (0x2 * ((uint64_t)x29 * x28))))));
- uint64_t x35 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x11 * ((0x2 * ((uint64_t)x26 * x29)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + (0x2 * ((uint64_t)x29 * x26)))))));
- uint64_t x36 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x11 * ((0x2 * ((uint64_t)x24 * x29)) + ((0x2 * ((uint64_t)x26 * x30)) + ((0x2 * ((uint64_t)x28 * x28)) + ((0x2 * ((uint64_t)x30 * x26)) + (0x2 * ((uint64_t)x29 * x24))))))));
- uint64_t x37 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x11 * ((0x2 * ((uint64_t)x22 * x29)) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + (0x2 * ((uint64_t)x29 * x22)))))))));
- uint64_t x38 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x11 * ((0x2 * ((uint64_t)x20 * x29)) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + ((0x2 * ((uint64_t)x26 * x26)) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + (0x2 * ((uint64_t)x29 * x20))))))))));
- uint64_t x39 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x11 * (((uint64_t)x18 * x29) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + ((uint64_t)x29 * x18))))))))));
- uint64_t x40 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x11 * ((0x2 * ((uint64_t)x16 * x29)) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + (0x2 * ((uint64_t)x29 * x16))))))))))));
- uint64_t x41 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x11 * ((0x2 * ((uint64_t)x14 * x29)) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + (0x2 * ((uint64_t)x29 * x14)))))))))))));
- uint64_t x42 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint64_t)x12 * x29)) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + (0x2 * ((uint64_t)x29 * x12))))))))))))));
- uint64_t x43 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x11 * ((0x2 * ((uint64_t)x10 * x29)) + ((0x2 * ((uint64_t)x12 * x30)) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + ((0x2 * ((uint64_t)x30 * x12)) + (0x2 * ((uint64_t)x29 * x10)))))))))))))));
- uint64_t x44 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x11 * ((0x2 * ((uint64_t)x8 * x29)) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + (0x2 * ((uint64_t)x29 * x8))))))))))))))));
- ℤ x45 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) +ℤ (0x11 *ℤ ((0x2 * ((uint64_t)x6 * x29)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + (0x2 * ((uint64_t)x29 * x6)))))))))))))))));
- ℤ x46 = (((uint64_t)x2 * x2) +ℤ (0x11 *ℤ ((0x2 * ((uint64_t)x4 * x29)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + (0x2 * ((uint64_t)x29 * x4))))))))))))))))));
- uint64_t x47 = (x46 >> 0x1a);
- uint32_t x48 = (x46 & 0x3ffffff);
- ℤ x49 = (x47 +ℤ x45);
- uint64_t x50 = (x49 >> 0x1a);
- uint32_t x51 = (x49 & 0x3ffffff);
- uint64_t x52 = (x50 + x44);
- uint64_t x53 = (x52 >> 0x1a);
- uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- uint64_t x55 = (x53 + x43);
- uint64_t x56 = (x55 >> 0x1a);
- uint32_t x57 = ((uint32_t)x55 & 0x3ffffff);
- uint64_t x58 = (x56 + x42);
- uint64_t x59 = (x58 >> 0x1a);
- uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- uint64_t x61 = (x59 + x41);
- uint64_t x62 = (x61 >> 0x1a);
- uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- uint64_t x64 = (x62 + x40);
- uint64_t x65 = (x64 >> 0x1a);
- uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- uint64_t x67 = (x65 + x39);
- uint64_t x68 = (x67 >> 0x19);
- uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- uint64_t x70 = (x68 + x38);
- uint64_t x71 = (x70 >> 0x1a);
- uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- uint64_t x73 = (x71 + x37);
- uint64_t x74 = (x73 >> 0x1a);
- uint32_t x75 = ((uint32_t)x73 & 0x3ffffff);
- uint64_t x76 = (x74 + x36);
- uint64_t x77 = (x76 >> 0x1a);
- uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- uint64_t x79 = (x77 + x35);
- uint64_t x80 = (x79 >> 0x1a);
- uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- uint64_t x82 = (x80 + x34);
- uint64_t x83 = (x82 >> 0x1a);
- uint32_t x84 = ((uint32_t)x82 & 0x3ffffff);
- uint64_t x85 = (x83 + x33);
- uint64_t x86 = (x85 >> 0x1a);
- uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- uint64_t x88 = (x86 + x32);
- uint64_t x89 = (x88 >> 0x1a);
- uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- uint64_t x91 = (x89 + x31);
- uint64_t x92 = (x91 >> 0x19);
- uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- uint64_t x94 = (x48 + (0x11 * x92));
- uint32_t x95 = (uint32_t) (x94 >> 0x1a);
- uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- uint32_t x97 = (x95 + x51);
- uint32_t x98 = (x97 >> 0x1a);
- uint32_t x99 = (x97 & 0x3ffffff);
- return (Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, Return x57, (x98 + x54), Return x99, Return x96))
-x
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e414m17_16limbs/fesquareDisplay.v b/src/Specific/solinas32_2e414m17_16limbs/fesquareDisplay.v
deleted file mode 100644
index ec0804ce8..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e414m17_16limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e414m17_16limbs/fesub.c b/src/Specific/solinas32_2e414m17_16limbs/fesub.c
deleted file mode 100644
index c9c886634..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/fesub.c
+++ /dev/null
@@ -1,51 +0,0 @@
-static void fesub(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- out[0] = ((0x7ffffde + x5) - x35);
- out[1] = ((0x7fffffe + x7) - x37);
- out[2] = ((0x7fffffe + x9) - x39);
- out[3] = ((0x7fffffe + x11) - x41);
- out[4] = ((0x7fffffe + x13) - x43);
- out[5] = ((0x7fffffe + x15) - x45);
- out[6] = ((0x7fffffe + x17) - x47);
- out[7] = ((0x3fffffe + x19) - x49);
- out[8] = ((0x7fffffe + x21) - x51);
- out[9] = ((0x7fffffe + x23) - x53);
- out[10] = ((0x7fffffe + x25) - x55);
- out[11] = ((0x7fffffe + x27) - x57);
- out[12] = ((0x7fffffe + x29) - x59);
- out[13] = ((0x7fffffe + x31) - x61);
- out[14] = ((0x7fffffe + x33) - x63);
- out[15] = ((0x3fffffe + x32) - x62);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e414m17_16limbs/fesub.v b/src/Specific/solinas32_2e414m17_16limbs/fesub.v
deleted file mode 100644
index c27c1f348..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e414m17_16limbs.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_2e414m17_16limbs/fesubDisplay.log b/src/Specific/solinas32_2e414m17_16limbs/fesubDisplay.log
deleted file mode 100644
index f659e725a..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- (((0x3fffffe + x32) - x62), ((0x7fffffe + x33) - x63), ((0x7fffffe + x31) - x61), ((0x7fffffe + x29) - x59), ((0x7fffffe + x27) - x57), ((0x7fffffe + x25) - x55), ((0x7fffffe + x23) - x53), ((0x7fffffe + x21) - x51), ((0x3fffffe + x19) - x49), ((0x7fffffe + x17) - x47), ((0x7fffffe + x15) - x45), ((0x7fffffe + x13) - x43), ((0x7fffffe + x11) - x41), ((0x7fffffe + x9) - x39), ((0x7fffffe + x7) - x37), ((0x7ffffde + x5) - x35)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e414m17_16limbs/fesubDisplay.v b/src/Specific/solinas32_2e414m17_16limbs/fesubDisplay.v
deleted file mode 100644
index 01622c0ef..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e414m17_16limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e414m17_16limbs/freeze.c b/src/Specific/solinas32_2e414m17_16limbs/freeze.c
deleted file mode 100644
index 2a5789ed7..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/freeze.c
+++ /dev/null
@@ -1,84 +0,0 @@
-static void freeze(uint32_t out[16], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffef);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x4, 0x3ffffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x6, 0x3ffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x8, 0x3ffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x10, 0x3ffffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x12, 0x3ffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x14, 0x3ffffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x16, 0x1ffffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x18, 0x3ffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x20, 0x3ffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x22, 0x3ffffff);
- { uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x24, 0x3ffffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x26, 0x3ffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x28, 0x3ffffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x30, 0x3ffffff);
- { uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x29, 0x1ffffff);
- { uint32_t x79 = cmovznz32(x78, 0x0, 0xffffffff);
- { uint32_t x80 = (x79 & 0x3ffffef);
- { uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x32, Return x80);
- { uint32_t x84 = (x79 & 0x3ffffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x35, Return x84);
- { uint32_t x88 = (x79 & 0x3ffffff);
- { uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x38, Return x88);
- { uint32_t x92 = (x79 & 0x3ffffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x41, Return x92);
- { uint32_t x96 = (x79 & 0x3ffffff);
- { uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x44, Return x96);
- { uint32_t x100 = (x79 & 0x3ffffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x47, Return x100);
- { uint32_t x104 = (x79 & 0x3ffffff);
- { uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x50, Return x104);
- { uint32_t x108 = (x79 & 0x1ffffff);
- { uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x53, Return x108);
- { uint32_t x112 = (x79 & 0x3ffffff);
- { uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x56, Return x112);
- { uint32_t x116 = (x79 & 0x3ffffff);
- { uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x59, Return x116);
- { uint32_t x120 = (x79 & 0x3ffffff);
- { uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x62, Return x120);
- { uint32_t x124 = (x79 & 0x3ffffff);
- { uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x65, Return x124);
- { uint32_t x128 = (x79 & 0x3ffffff);
- { uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x68, Return x128);
- { uint32_t x132 = (x79 & 0x3ffffff);
- { uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x71, Return x132);
- { uint32_t x136 = (x79 & 0x3ffffff);
- { uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x74, Return x136);
- { uint32_t x140 = (x79 & 0x1ffffff);
- { uint32_t x142, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x77, Return x140);
- out[0] = x82;
- out[1] = x86;
- out[2] = x90;
- out[3] = x94;
- out[4] = x98;
- out[5] = x102;
- out[6] = x106;
- out[7] = x110;
- out[8] = x114;
- out[9] = x118;
- out[10] = x122;
- out[11] = x126;
- out[12] = x130;
- out[13] = x134;
- out[14] = x138;
- out[15] = x142;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e414m17_16limbs/freeze.v b/src/Specific/solinas32_2e414m17_16limbs/freeze.v
deleted file mode 100644
index d0dd4e716..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e414m17_16limbs.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_2e414m17_16limbs/freezeDisplay.log b/src/Specific/solinas32_2e414m17_16limbs/freezeDisplay.log
deleted file mode 100644
index 13f2855ea..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/freezeDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffef);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x4, 0x3ffffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x6, 0x3ffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x8, 0x3ffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x10, 0x3ffffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x12, 0x3ffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x14, 0x3ffffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x16, 0x1ffffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x18, 0x3ffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x20, 0x3ffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x22, 0x3ffffff);
- uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x24, 0x3ffffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x26, 0x3ffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x28, 0x3ffffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x30, 0x3ffffff);
- uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x29, 0x1ffffff);
- uint32_t x79 = cmovznz32(x78, 0x0, 0xffffffff);
- uint32_t x80 = (x79 & 0x3ffffef);
- uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x32, Return x80);
- uint32_t x84 = (x79 & 0x3ffffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x35, Return x84);
- uint32_t x88 = (x79 & 0x3ffffff);
- uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x38, Return x88);
- uint32_t x92 = (x79 & 0x3ffffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x41, Return x92);
- uint32_t x96 = (x79 & 0x3ffffff);
- uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x44, Return x96);
- uint32_t x100 = (x79 & 0x3ffffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x47, Return x100);
- uint32_t x104 = (x79 & 0x3ffffff);
- uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x50, Return x104);
- uint32_t x108 = (x79 & 0x1ffffff);
- uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x53, Return x108);
- uint32_t x112 = (x79 & 0x3ffffff);
- uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x56, Return x112);
- uint32_t x116 = (x79 & 0x3ffffff);
- uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x59, Return x116);
- uint32_t x120 = (x79 & 0x3ffffff);
- uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x62, Return x120);
- uint32_t x124 = (x79 & 0x3ffffff);
- uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x65, Return x124);
- uint32_t x128 = (x79 & 0x3ffffff);
- uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x68, Return x128);
- uint32_t x132 = (x79 & 0x3ffffff);
- uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x71, Return x132);
- uint32_t x136 = (x79 & 0x3ffffff);
- uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x74, Return x136);
- uint32_t x140 = (x79 & 0x1ffffff);
- uint32_t x142, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x77, Return x140);
- (Return x142, Return x138, Return x134, Return x130, Return x126, Return x122, Return x118, Return x114, Return x110, Return x106, Return x102, Return x98, Return x94, Return x90, Return x86, Return x82))
-x
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e414m17_16limbs/freezeDisplay.v b/src/Specific/solinas32_2e414m17_16limbs/freezeDisplay.v
deleted file mode 100644
index 2b9332bdd..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e414m17_16limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e414m17_16limbs/py_interpreter.sh b/src/Specific/solinas32_2e414m17_16limbs/py_interpreter.sh
deleted file mode 100755
index 8423a6195..000000000
--- a/src/Specific/solinas32_2e414m17_16limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**414 - 17' -Dmodulus_bytes='25.875' -Da24='121665'
diff --git a/src/Specific/solinas32_2e414m17_17limbs/CurveParameters.v b/src/Specific/solinas32_2e414m17_17limbs/CurveParameters.v
deleted file mode 100644
index 135f1e0a2..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^414 - 17
-Base: 24 + 6/17
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 17%nat;
- base := 24 + 6/17;
- bitwidth := 32;
- s := 2^414;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 17); [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_2e414m17_17limbs/Synthesis.v b/src/Specific/solinas32_2e414m17_17limbs/Synthesis.v
deleted file mode 100644
index 3c70763d3..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e414m17_17limbs.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_2e414m17_17limbs/compiler.sh b/src/Specific/solinas32_2e414m17_17limbs/compiler.sh
deleted file mode 100755
index ea9fdef74..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,24,25,24,24,25,24,24,25,24,24,25,24,24,25,24,24}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<414) - 17' "$@"
diff --git a/src/Specific/solinas32_2e414m17_17limbs/compilerxx.sh b/src/Specific/solinas32_2e414m17_17limbs/compilerxx.sh
deleted file mode 100755
index e36a0b96b..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,24,25,24,24,25,24,24,25,24,24,25,24,24,25,24,24}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<414) - 17' "$@"
diff --git a/src/Specific/solinas32_2e414m17_17limbs/feadd.c b/src/Specific/solinas32_2e414m17_17limbs/feadd.c
deleted file mode 100644
index 30eb11eae..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/feadd.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void feadd(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- out[0] = (x5 + x37);
- out[1] = (x7 + x39);
- out[2] = (x9 + x41);
- out[3] = (x11 + x43);
- out[4] = (x13 + x45);
- out[5] = (x15 + x47);
- out[6] = (x17 + x49);
- out[7] = (x19 + x51);
- out[8] = (x21 + x53);
- out[9] = (x23 + x55);
- out[10] = (x25 + x57);
- out[11] = (x27 + x59);
- out[12] = (x29 + x61);
- out[13] = (x31 + x63);
- out[14] = (x33 + x65);
- out[15] = (x35 + x67);
- out[16] = (x34 + x66);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e414m17_17limbs/feadd.v b/src/Specific/solinas32_2e414m17_17limbs/feadd.v
deleted file mode 100644
index 3a640e412..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e414m17_17limbs.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_2e414m17_17limbs/feaddDisplay.log b/src/Specific/solinas32_2e414m17_17limbs/feaddDisplay.log
deleted file mode 100644
index 7324e0941..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- ((x34 + x66), (x35 + x67), (x33 + x65), (x31 + x63), (x29 + x61), (x27 + x59), (x25 + x57), (x23 + x55), (x21 + x53), (x19 + x51), (x17 + x49), (x15 + x47), (x13 + x45), (x11 + x43), (x9 + x41), (x7 + x39), (x5 + x37)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e414m17_17limbs/feaddDisplay.v b/src/Specific/solinas32_2e414m17_17limbs/feaddDisplay.v
deleted file mode 100644
index 5f214b9a4..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e414m17_17limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e414m17_17limbs/fecarry.v b/src/Specific/solinas32_2e414m17_17limbs/fecarry.v
deleted file mode 100644
index 834ec1787..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e414m17_17limbs.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_2e414m17_17limbs/fecarryDisplay.v b/src/Specific/solinas32_2e414m17_17limbs/fecarryDisplay.v
deleted file mode 100644
index 4550ac945..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e414m17_17limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e414m17_17limbs/femul.c b/src/Specific/solinas32_2e414m17_17limbs/femul.c
deleted file mode 100644
index f22f978ab..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/femul.c
+++ /dev/null
@@ -1,127 +0,0 @@
-static void femul(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- { uint64_t x68 = (((uint64_t)x5 * x66) + ((0x2 * ((uint64_t)x7 * x67)) + (((uint64_t)x9 * x65) + ((0x2 * ((uint64_t)x11 * x63)) + ((0x2 * ((uint64_t)x13 * x61)) + (((uint64_t)x15 * x59) + ((0x2 * ((uint64_t)x17 * x57)) + ((0x2 * ((uint64_t)x19 * x55)) + (((uint64_t)x21 * x53) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + (((uint64_t)x27 * x47) + ((0x2 * ((uint64_t)x29 * x45)) + ((0x2 * ((uint64_t)x31 * x43)) + (((uint64_t)x33 * x41) + ((0x2 * ((uint64_t)x35 * x39)) + ((uint64_t)x34 * x37)))))))))))))))));
- { uint64_t x69 = ((((uint64_t)x5 * x67) + (((uint64_t)x7 * x65) + (((uint64_t)x9 * x63) + ((0x2 * ((uint64_t)x11 * x61)) + (((uint64_t)x13 * x59) + (((uint64_t)x15 * x57) + ((0x2 * ((uint64_t)x17 * x55)) + (((uint64_t)x19 * x53) + (((uint64_t)x21 * x51) + ((0x2 * ((uint64_t)x23 * x49)) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + ((0x2 * ((uint64_t)x29 * x43)) + (((uint64_t)x31 * x41) + (((uint64_t)x33 * x39) + ((uint64_t)x35 * x37)))))))))))))))) + (0x11 * ((uint64_t)x34 * x66)));
- { uint64_t x70 = ((((uint64_t)x5 * x65) + ((0x2 * ((uint64_t)x7 * x63)) + ((0x2 * ((uint64_t)x9 * x61)) + ((0x2 * ((uint64_t)x11 * x59)) + ((0x2 * ((uint64_t)x13 * x57)) + ((0x2 * ((uint64_t)x15 * x55)) + ((0x2 * ((uint64_t)x17 * x53)) + ((0x2 * ((uint64_t)x19 * x51)) + ((0x2 * ((uint64_t)x21 * x49)) + ((0x2 * ((uint64_t)x23 * x47)) + ((0x2 * ((uint64_t)x25 * x45)) + ((0x2 * ((uint64_t)x27 * x43)) + ((0x2 * ((uint64_t)x29 * x41)) + ((0x2 * ((uint64_t)x31 * x39)) + ((uint64_t)x33 * x37))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x35 * x66)) + (0x2 * ((uint64_t)x34 * x67)))));
- { uint64_t x71 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + (((uint64_t)x9 * x59) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + (((uint64_t)x15 * x53) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + (((uint64_t)x21 * x47) + ((0x2 * ((uint64_t)x23 * x45)) + ((0x2 * ((uint64_t)x25 * x43)) + (((uint64_t)x27 * x41) + ((0x2 * ((uint64_t)x29 * x39)) + ((uint64_t)x31 * x37)))))))))))))) + (0x11 * (((uint64_t)x33 * x66) + ((0x2 * ((uint64_t)x35 * x67)) + ((uint64_t)x34 * x65)))));
- { uint64_t x72 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + ((0x2 * ((uint64_t)x11 * x55)) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + ((0x2 * ((uint64_t)x17 * x49)) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + ((0x2 * ((uint64_t)x23 * x43)) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + ((uint64_t)x29 * x37))))))))))))) + (0x11 * (((uint64_t)x31 * x66) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + ((uint64_t)x34 * x63))))));
- { uint64_t x73 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + ((uint64_t)x27 * x37)))))))))))) + (0x11 * ((0x2 * ((uint64_t)x29 * x66)) + ((0x2 * ((uint64_t)x31 * x67)) + (((uint64_t)x33 * x65) + ((0x2 * ((uint64_t)x35 * x63)) + (0x2 * ((uint64_t)x34 * x61))))))));
- { uint64_t x74 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + (((uint64_t)x9 * x53) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + (((uint64_t)x15 * x47) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + (((uint64_t)x21 * x41) + ((0x2 * ((uint64_t)x23 * x39)) + ((uint64_t)x25 * x37))))))))))) + (0x11 * (((uint64_t)x27 * x66) + ((0x2 * ((uint64_t)x29 * x67)) + (((uint64_t)x31 * x65) + (((uint64_t)x33 * x63) + ((0x2 * ((uint64_t)x35 * x61)) + ((uint64_t)x34 * x59))))))));
- { uint64_t x75 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + ((0x2 * ((uint64_t)x11 * x49)) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + ((0x2 * ((uint64_t)x17 * x43)) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + ((uint64_t)x23 * x37)))))))))) + (0x11 * (((uint64_t)x25 * x66) + (((uint64_t)x27 * x67) + (((uint64_t)x29 * x65) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + (((uint64_t)x35 * x59) + ((uint64_t)x34 * x57)))))))));
- { uint64_t x76 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + ((uint64_t)x21 * x37))))))))) + (0x11 * ((0x2 * ((uint64_t)x23 * x66)) + ((0x2 * ((uint64_t)x25 * x67)) + (((uint64_t)x27 * x65) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + (((uint64_t)x33 * x59) + ((0x2 * ((uint64_t)x35 * x57)) + (0x2 * ((uint64_t)x34 * x55)))))))))));
- { uint64_t x77 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + (((uint64_t)x9 * x47) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + (((uint64_t)x15 * x41) + ((0x2 * ((uint64_t)x17 * x39)) + ((uint64_t)x19 * x37)))))))) + (0x11 * (((uint64_t)x21 * x66) + ((0x2 * ((uint64_t)x23 * x67)) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + ((0x2 * ((uint64_t)x29 * x61)) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + ((0x2 * ((uint64_t)x35 * x55)) + ((uint64_t)x34 * x53)))))))))));
- { uint64_t x78 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + ((0x2 * ((uint64_t)x11 * x43)) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + ((uint64_t)x17 * x37))))))) + (0x11 * (((uint64_t)x19 * x66) + (((uint64_t)x21 * x67) + (((uint64_t)x23 * x65) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + (((uint64_t)x35 * x53) + ((uint64_t)x34 * x51))))))))))));
- { uint64_t x79 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((uint64_t)x15 * x37)))))) + (0x11 * ((0x2 * ((uint64_t)x17 * x66)) + ((0x2 * ((uint64_t)x19 * x67)) + (((uint64_t)x21 * x65) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + (((uint64_t)x27 * x59) + ((0x2 * ((uint64_t)x29 * x57)) + ((0x2 * ((uint64_t)x31 * x55)) + (((uint64_t)x33 * x53) + ((0x2 * ((uint64_t)x35 * x51)) + (0x2 * ((uint64_t)x34 * x49))))))))))))));
- { uint64_t x80 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + (((uint64_t)x9 * x41) + ((0x2 * ((uint64_t)x11 * x39)) + ((uint64_t)x13 * x37))))) + (0x11 * (((uint64_t)x15 * x66) + ((0x2 * ((uint64_t)x17 * x67)) + (((uint64_t)x19 * x65) + (((uint64_t)x21 * x63) + ((0x2 * ((uint64_t)x23 * x61)) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + ((0x2 * ((uint64_t)x29 * x55)) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + ((0x2 * ((uint64_t)x35 * x49)) + ((uint64_t)x34 * x47))))))))))))));
- { uint64_t x81 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + ((uint64_t)x11 * x37)))) + (0x11 * (((uint64_t)x13 * x66) + (((uint64_t)x15 * x67) + (((uint64_t)x17 * x65) + (((uint64_t)x19 * x63) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + (((uint64_t)x35 * x47) + ((uint64_t)x34 * x45)))))))))))))));
- { uint64_t x82 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((uint64_t)x9 * x37))) + (0x11 * ((0x2 * ((uint64_t)x11 * x66)) + ((0x2 * ((uint64_t)x13 * x67)) + (((uint64_t)x15 * x65) + ((0x2 * ((uint64_t)x17 * x63)) + ((0x2 * ((uint64_t)x19 * x61)) + (((uint64_t)x21 * x59) + ((0x2 * ((uint64_t)x23 * x57)) + ((0x2 * ((uint64_t)x25 * x55)) + (((uint64_t)x27 * x53) + ((0x2 * ((uint64_t)x29 * x51)) + ((0x2 * ((uint64_t)x31 * x49)) + (((uint64_t)x33 * x47) + ((0x2 * ((uint64_t)x35 * x45)) + (0x2 * ((uint64_t)x34 * x43)))))))))))))))));
- { uint64_t x83 = ((((uint64_t)x5 * x39) + ((uint64_t)x7 * x37)) + (0x11 * (((uint64_t)x9 * x66) + ((0x2 * ((uint64_t)x11 * x67)) + (((uint64_t)x13 * x65) + (((uint64_t)x15 * x63) + ((0x2 * ((uint64_t)x17 * x61)) + (((uint64_t)x19 * x59) + (((uint64_t)x21 * x57) + ((0x2 * ((uint64_t)x23 * x55)) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + ((0x2 * ((uint64_t)x29 * x49)) + (((uint64_t)x31 * x47) + (((uint64_t)x33 * x45) + ((0x2 * ((uint64_t)x35 * x43)) + ((uint64_t)x34 * x41)))))))))))))))));
- { uint64_t x84 = (((uint64_t)x5 * x37) + (0x11 * ((0x2 * ((uint64_t)x7 * x66)) + ((0x2 * ((uint64_t)x9 * x67)) + ((0x2 * ((uint64_t)x11 * x65)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + ((0x2 * ((uint64_t)x35 * x41)) + (0x2 * ((uint64_t)x34 * x39)))))))))))))))))));
- { uint64_t x85 = (x84 >> 0x19);
- { uint32_t x86 = ((uint32_t)x84 & 0x1ffffff);
- { uint64_t x87 = (x85 + x83);
- { uint64_t x88 = (x87 >> 0x18);
- { uint32_t x89 = ((uint32_t)x87 & 0xffffff);
- { uint64_t x90 = (x88 + x82);
- { uint64_t x91 = (x90 >> 0x19);
- { uint32_t x92 = ((uint32_t)x90 & 0x1ffffff);
- { uint64_t x93 = (x91 + x81);
- { uint64_t x94 = (x93 >> 0x18);
- { uint32_t x95 = ((uint32_t)x93 & 0xffffff);
- { uint64_t x96 = (x94 + x80);
- { uint64_t x97 = (x96 >> 0x18);
- { uint32_t x98 = ((uint32_t)x96 & 0xffffff);
- { uint64_t x99 = (x97 + x79);
- { uint64_t x100 = (x99 >> 0x19);
- { uint32_t x101 = ((uint32_t)x99 & 0x1ffffff);
- { uint64_t x102 = (x100 + x78);
- { uint64_t x103 = (x102 >> 0x18);
- { uint32_t x104 = ((uint32_t)x102 & 0xffffff);
- { uint64_t x105 = (x103 + x77);
- { uint64_t x106 = (x105 >> 0x18);
- { uint32_t x107 = ((uint32_t)x105 & 0xffffff);
- { uint64_t x108 = (x106 + x76);
- { uint64_t x109 = (x108 >> 0x19);
- { uint32_t x110 = ((uint32_t)x108 & 0x1ffffff);
- { uint64_t x111 = (x109 + x75);
- { uint64_t x112 = (x111 >> 0x18);
- { uint32_t x113 = ((uint32_t)x111 & 0xffffff);
- { uint64_t x114 = (x112 + x74);
- { uint64_t x115 = (x114 >> 0x18);
- { uint32_t x116 = ((uint32_t)x114 & 0xffffff);
- { uint64_t x117 = (x115 + x73);
- { uint64_t x118 = (x117 >> 0x19);
- { uint32_t x119 = ((uint32_t)x117 & 0x1ffffff);
- { uint64_t x120 = (x118 + x72);
- { uint64_t x121 = (x120 >> 0x18);
- { uint32_t x122 = ((uint32_t)x120 & 0xffffff);
- { uint64_t x123 = (x121 + x71);
- { uint64_t x124 = (x123 >> 0x18);
- { uint32_t x125 = ((uint32_t)x123 & 0xffffff);
- { uint64_t x126 = (x124 + x70);
- { uint64_t x127 = (x126 >> 0x19);
- { uint32_t x128 = ((uint32_t)x126 & 0x1ffffff);
- { uint64_t x129 = (x127 + x69);
- { uint64_t x130 = (x129 >> 0x18);
- { uint32_t x131 = ((uint32_t)x129 & 0xffffff);
- { uint64_t x132 = (x130 + x68);
- { uint64_t x133 = (x132 >> 0x18);
- { uint32_t x134 = ((uint32_t)x132 & 0xffffff);
- { uint64_t x135 = (x86 + (0x11 * x133));
- { uint32_t x136 = (uint32_t) (x135 >> 0x19);
- { uint32_t x137 = ((uint32_t)x135 & 0x1ffffff);
- { uint32_t x138 = (x136 + x89);
- { uint32_t x139 = (x138 >> 0x18);
- { uint32_t x140 = (x138 & 0xffffff);
- out[0] = x137;
- out[1] = x140;
- out[2] = (x139 + x92);
- out[3] = x95;
- out[4] = x98;
- out[5] = x101;
- out[6] = x104;
- out[7] = x107;
- out[8] = x110;
- out[9] = x113;
- out[10] = x116;
- out[11] = x119;
- out[12] = x122;
- out[13] = x125;
- out[14] = x128;
- out[15] = x131;
- out[16] = x134;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e414m17_17limbs/femul.v b/src/Specific/solinas32_2e414m17_17limbs/femul.v
deleted file mode 100644
index 105854031..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e414m17_17limbs.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_2e414m17_17limbs/femulDisplay.log b/src/Specific/solinas32_2e414m17_17limbs/femulDisplay.log
deleted file mode 100644
index 1ab1c3caf..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/femulDisplay.log
+++ /dev/null
@@ -1,80 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- uint64_t x68 = (((uint64_t)x5 * x66) + ((0x2 * ((uint64_t)x7 * x67)) + (((uint64_t)x9 * x65) + ((0x2 * ((uint64_t)x11 * x63)) + ((0x2 * ((uint64_t)x13 * x61)) + (((uint64_t)x15 * x59) + ((0x2 * ((uint64_t)x17 * x57)) + ((0x2 * ((uint64_t)x19 * x55)) + (((uint64_t)x21 * x53) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + (((uint64_t)x27 * x47) + ((0x2 * ((uint64_t)x29 * x45)) + ((0x2 * ((uint64_t)x31 * x43)) + (((uint64_t)x33 * x41) + ((0x2 * ((uint64_t)x35 * x39)) + ((uint64_t)x34 * x37)))))))))))))))));
- uint64_t x69 = ((((uint64_t)x5 * x67) + (((uint64_t)x7 * x65) + (((uint64_t)x9 * x63) + ((0x2 * ((uint64_t)x11 * x61)) + (((uint64_t)x13 * x59) + (((uint64_t)x15 * x57) + ((0x2 * ((uint64_t)x17 * x55)) + (((uint64_t)x19 * x53) + (((uint64_t)x21 * x51) + ((0x2 * ((uint64_t)x23 * x49)) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + ((0x2 * ((uint64_t)x29 * x43)) + (((uint64_t)x31 * x41) + (((uint64_t)x33 * x39) + ((uint64_t)x35 * x37)))))))))))))))) + (0x11 * ((uint64_t)x34 * x66)));
- uint64_t x70 = ((((uint64_t)x5 * x65) + ((0x2 * ((uint64_t)x7 * x63)) + ((0x2 * ((uint64_t)x9 * x61)) + ((0x2 * ((uint64_t)x11 * x59)) + ((0x2 * ((uint64_t)x13 * x57)) + ((0x2 * ((uint64_t)x15 * x55)) + ((0x2 * ((uint64_t)x17 * x53)) + ((0x2 * ((uint64_t)x19 * x51)) + ((0x2 * ((uint64_t)x21 * x49)) + ((0x2 * ((uint64_t)x23 * x47)) + ((0x2 * ((uint64_t)x25 * x45)) + ((0x2 * ((uint64_t)x27 * x43)) + ((0x2 * ((uint64_t)x29 * x41)) + ((0x2 * ((uint64_t)x31 * x39)) + ((uint64_t)x33 * x37))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x35 * x66)) + (0x2 * ((uint64_t)x34 * x67)))));
- uint64_t x71 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + (((uint64_t)x9 * x59) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + (((uint64_t)x15 * x53) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + (((uint64_t)x21 * x47) + ((0x2 * ((uint64_t)x23 * x45)) + ((0x2 * ((uint64_t)x25 * x43)) + (((uint64_t)x27 * x41) + ((0x2 * ((uint64_t)x29 * x39)) + ((uint64_t)x31 * x37)))))))))))))) + (0x11 * (((uint64_t)x33 * x66) + ((0x2 * ((uint64_t)x35 * x67)) + ((uint64_t)x34 * x65)))));
- uint64_t x72 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + ((0x2 * ((uint64_t)x11 * x55)) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + ((0x2 * ((uint64_t)x17 * x49)) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + ((0x2 * ((uint64_t)x23 * x43)) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + ((uint64_t)x29 * x37))))))))))))) + (0x11 * (((uint64_t)x31 * x66) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + ((uint64_t)x34 * x63))))));
- uint64_t x73 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + ((0x2 * ((uint64_t)x21 * x43)) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + ((uint64_t)x27 * x37)))))))))))) + (0x11 * ((0x2 * ((uint64_t)x29 * x66)) + ((0x2 * ((uint64_t)x31 * x67)) + (((uint64_t)x33 * x65) + ((0x2 * ((uint64_t)x35 * x63)) + (0x2 * ((uint64_t)x34 * x61))))))));
- uint64_t x74 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + (((uint64_t)x9 * x53) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + (((uint64_t)x15 * x47) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + (((uint64_t)x21 * x41) + ((0x2 * ((uint64_t)x23 * x39)) + ((uint64_t)x25 * x37))))))))))) + (0x11 * (((uint64_t)x27 * x66) + ((0x2 * ((uint64_t)x29 * x67)) + (((uint64_t)x31 * x65) + (((uint64_t)x33 * x63) + ((0x2 * ((uint64_t)x35 * x61)) + ((uint64_t)x34 * x59))))))));
- uint64_t x75 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + ((0x2 * ((uint64_t)x11 * x49)) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + ((0x2 * ((uint64_t)x17 * x43)) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + ((uint64_t)x23 * x37)))))))))) + (0x11 * (((uint64_t)x25 * x66) + (((uint64_t)x27 * x67) + (((uint64_t)x29 * x65) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + (((uint64_t)x35 * x59) + ((uint64_t)x34 * x57)))))))));
- uint64_t x76 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + ((uint64_t)x21 * x37))))))))) + (0x11 * ((0x2 * ((uint64_t)x23 * x66)) + ((0x2 * ((uint64_t)x25 * x67)) + (((uint64_t)x27 * x65) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + (((uint64_t)x33 * x59) + ((0x2 * ((uint64_t)x35 * x57)) + (0x2 * ((uint64_t)x34 * x55)))))))))));
- uint64_t x77 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + (((uint64_t)x9 * x47) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + (((uint64_t)x15 * x41) + ((0x2 * ((uint64_t)x17 * x39)) + ((uint64_t)x19 * x37)))))))) + (0x11 * (((uint64_t)x21 * x66) + ((0x2 * ((uint64_t)x23 * x67)) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + ((0x2 * ((uint64_t)x29 * x61)) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + ((0x2 * ((uint64_t)x35 * x55)) + ((uint64_t)x34 * x53)))))))))));
- uint64_t x78 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + ((0x2 * ((uint64_t)x11 * x43)) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + ((uint64_t)x17 * x37))))))) + (0x11 * (((uint64_t)x19 * x66) + (((uint64_t)x21 * x67) + (((uint64_t)x23 * x65) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + (((uint64_t)x35 * x53) + ((uint64_t)x34 * x51))))))))))));
- uint64_t x79 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((uint64_t)x15 * x37)))))) + (0x11 * ((0x2 * ((uint64_t)x17 * x66)) + ((0x2 * ((uint64_t)x19 * x67)) + (((uint64_t)x21 * x65) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + (((uint64_t)x27 * x59) + ((0x2 * ((uint64_t)x29 * x57)) + ((0x2 * ((uint64_t)x31 * x55)) + (((uint64_t)x33 * x53) + ((0x2 * ((uint64_t)x35 * x51)) + (0x2 * ((uint64_t)x34 * x49))))))))))))));
- uint64_t x80 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + (((uint64_t)x9 * x41) + ((0x2 * ((uint64_t)x11 * x39)) + ((uint64_t)x13 * x37))))) + (0x11 * (((uint64_t)x15 * x66) + ((0x2 * ((uint64_t)x17 * x67)) + (((uint64_t)x19 * x65) + (((uint64_t)x21 * x63) + ((0x2 * ((uint64_t)x23 * x61)) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + ((0x2 * ((uint64_t)x29 * x55)) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + ((0x2 * ((uint64_t)x35 * x49)) + ((uint64_t)x34 * x47))))))))))))));
- uint64_t x81 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + ((uint64_t)x11 * x37)))) + (0x11 * (((uint64_t)x13 * x66) + (((uint64_t)x15 * x67) + (((uint64_t)x17 * x65) + (((uint64_t)x19 * x63) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + (((uint64_t)x35 * x47) + ((uint64_t)x34 * x45)))))))))))))));
- uint64_t x82 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((uint64_t)x9 * x37))) + (0x11 * ((0x2 * ((uint64_t)x11 * x66)) + ((0x2 * ((uint64_t)x13 * x67)) + (((uint64_t)x15 * x65) + ((0x2 * ((uint64_t)x17 * x63)) + ((0x2 * ((uint64_t)x19 * x61)) + (((uint64_t)x21 * x59) + ((0x2 * ((uint64_t)x23 * x57)) + ((0x2 * ((uint64_t)x25 * x55)) + (((uint64_t)x27 * x53) + ((0x2 * ((uint64_t)x29 * x51)) + ((0x2 * ((uint64_t)x31 * x49)) + (((uint64_t)x33 * x47) + ((0x2 * ((uint64_t)x35 * x45)) + (0x2 * ((uint64_t)x34 * x43)))))))))))))))));
- uint64_t x83 = ((((uint64_t)x5 * x39) + ((uint64_t)x7 * x37)) + (0x11 * (((uint64_t)x9 * x66) + ((0x2 * ((uint64_t)x11 * x67)) + (((uint64_t)x13 * x65) + (((uint64_t)x15 * x63) + ((0x2 * ((uint64_t)x17 * x61)) + (((uint64_t)x19 * x59) + (((uint64_t)x21 * x57) + ((0x2 * ((uint64_t)x23 * x55)) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + ((0x2 * ((uint64_t)x29 * x49)) + (((uint64_t)x31 * x47) + (((uint64_t)x33 * x45) + ((0x2 * ((uint64_t)x35 * x43)) + ((uint64_t)x34 * x41)))))))))))))))));
- uint64_t x84 = (((uint64_t)x5 * x37) + (0x11 * ((0x2 * ((uint64_t)x7 * x66)) + ((0x2 * ((uint64_t)x9 * x67)) + ((0x2 * ((uint64_t)x11 * x65)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + ((0x2 * ((uint64_t)x35 * x41)) + (0x2 * ((uint64_t)x34 * x39)))))))))))))))))));
- uint64_t x85 = (x84 >> 0x19);
- uint32_t x86 = ((uint32_t)x84 & 0x1ffffff);
- uint64_t x87 = (x85 + x83);
- uint64_t x88 = (x87 >> 0x18);
- uint32_t x89 = ((uint32_t)x87 & 0xffffff);
- uint64_t x90 = (x88 + x82);
- uint64_t x91 = (x90 >> 0x19);
- uint32_t x92 = ((uint32_t)x90 & 0x1ffffff);
- uint64_t x93 = (x91 + x81);
- uint64_t x94 = (x93 >> 0x18);
- uint32_t x95 = ((uint32_t)x93 & 0xffffff);
- uint64_t x96 = (x94 + x80);
- uint64_t x97 = (x96 >> 0x18);
- uint32_t x98 = ((uint32_t)x96 & 0xffffff);
- uint64_t x99 = (x97 + x79);
- uint64_t x100 = (x99 >> 0x19);
- uint32_t x101 = ((uint32_t)x99 & 0x1ffffff);
- uint64_t x102 = (x100 + x78);
- uint64_t x103 = (x102 >> 0x18);
- uint32_t x104 = ((uint32_t)x102 & 0xffffff);
- uint64_t x105 = (x103 + x77);
- uint64_t x106 = (x105 >> 0x18);
- uint32_t x107 = ((uint32_t)x105 & 0xffffff);
- uint64_t x108 = (x106 + x76);
- uint64_t x109 = (x108 >> 0x19);
- uint32_t x110 = ((uint32_t)x108 & 0x1ffffff);
- uint64_t x111 = (x109 + x75);
- uint64_t x112 = (x111 >> 0x18);
- uint32_t x113 = ((uint32_t)x111 & 0xffffff);
- uint64_t x114 = (x112 + x74);
- uint64_t x115 = (x114 >> 0x18);
- uint32_t x116 = ((uint32_t)x114 & 0xffffff);
- uint64_t x117 = (x115 + x73);
- uint64_t x118 = (x117 >> 0x19);
- uint32_t x119 = ((uint32_t)x117 & 0x1ffffff);
- uint64_t x120 = (x118 + x72);
- uint64_t x121 = (x120 >> 0x18);
- uint32_t x122 = ((uint32_t)x120 & 0xffffff);
- uint64_t x123 = (x121 + x71);
- uint64_t x124 = (x123 >> 0x18);
- uint32_t x125 = ((uint32_t)x123 & 0xffffff);
- uint64_t x126 = (x124 + x70);
- uint64_t x127 = (x126 >> 0x19);
- uint32_t x128 = ((uint32_t)x126 & 0x1ffffff);
- uint64_t x129 = (x127 + x69);
- uint64_t x130 = (x129 >> 0x18);
- uint32_t x131 = ((uint32_t)x129 & 0xffffff);
- uint64_t x132 = (x130 + x68);
- uint64_t x133 = (x132 >> 0x18);
- uint32_t x134 = ((uint32_t)x132 & 0xffffff);
- uint64_t x135 = (x86 + (0x11 * x133));
- uint32_t x136 = (uint32_t) (x135 >> 0x19);
- uint32_t x137 = ((uint32_t)x135 & 0x1ffffff);
- uint32_t x138 = (x136 + x89);
- uint32_t x139 = (x138 >> 0x18);
- uint32_t x140 = (x138 & 0xffffff);
- return (Return x134, Return x131, Return x128, Return x125, Return x122, Return x119, Return x116, Return x113, Return x110, Return x107, Return x104, Return x101, Return x98, Return x95, (x139 + x92), Return x140, Return x137))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e414m17_17limbs/femulDisplay.v b/src/Specific/solinas32_2e414m17_17limbs/femulDisplay.v
deleted file mode 100644
index 0cf74a2c2..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e414m17_17limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e414m17_17limbs/fesquare.c b/src/Specific/solinas32_2e414m17_17limbs/fesquare.c
deleted file mode 100644
index 2f910b321..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/fesquare.c
+++ /dev/null
@@ -1,110 +0,0 @@
-static void fesquare(uint32_t out[17], const uint32_t in1[17]) {
- { const uint32_t x31 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x33 = (((uint64_t)x2 * x31) + ((0x2 * ((uint64_t)x4 * x32)) + (((uint64_t)x6 * x30) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + (((uint64_t)x12 * x24) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + (((uint64_t)x24 * x12) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + (((uint64_t)x30 * x6) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x31 * x2)))))))))))))))));
- { uint64_t x34 = ((((uint64_t)x2 * x32) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + ((0x2 * ((uint64_t)x8 * x26)) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + ((0x2 * ((uint64_t)x26 * x8)) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x32 * x2)))))))))))))))) + (0x11 * ((uint64_t)x31 * x31)));
- { uint64_t x35 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + ((0x2 * ((uint64_t)x6 * x26)) + ((0x2 * ((uint64_t)x8 * x24)) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + ((0x2 * ((uint64_t)x24 * x8)) + ((0x2 * ((uint64_t)x26 * x6)) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x32 * x31)) + (0x2 * ((uint64_t)x31 * x32)))));
- { uint64_t x36 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + (((uint64_t)x6 * x24) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + (((uint64_t)x24 * x6) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x11 * (((uint64_t)x30 * x31) + ((0x2 * ((uint64_t)x32 * x32)) + ((uint64_t)x31 * x30)))));
- { uint64_t x37 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x11 * (((uint64_t)x28 * x31) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + ((uint64_t)x31 * x28))))));
- { uint64_t x38 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x11 * ((0x2 * ((uint64_t)x26 * x31)) + ((0x2 * ((uint64_t)x28 * x32)) + (((uint64_t)x30 * x30) + ((0x2 * ((uint64_t)x32 * x28)) + (0x2 * ((uint64_t)x31 * x26))))))));
- { uint64_t x39 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x11 * (((uint64_t)x24 * x31) + ((0x2 * ((uint64_t)x26 * x32)) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + ((0x2 * ((uint64_t)x32 * x26)) + ((uint64_t)x31 * x24))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x11 * (((uint64_t)x22 * x31) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + ((uint64_t)x31 * x22)))))))));
- { uint64_t x41 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x11 * ((0x2 * ((uint64_t)x20 * x31)) + ((0x2 * ((uint64_t)x22 * x32)) + (((uint64_t)x24 * x30) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + (((uint64_t)x30 * x24) + ((0x2 * ((uint64_t)x32 * x22)) + (0x2 * ((uint64_t)x31 * x20)))))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + (((uint64_t)x6 * x12) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + (((uint64_t)x12 * x6) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x11 * (((uint64_t)x18 * x31) + ((0x2 * ((uint64_t)x20 * x32)) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + ((0x2 * ((uint64_t)x32 * x20)) + ((uint64_t)x31 * x18)))))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x11 * (((uint64_t)x16 * x31) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + ((uint64_t)x31 * x16))))))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x11 * ((0x2 * ((uint64_t)x14 * x31)) + ((0x2 * ((uint64_t)x16 * x32)) + (((uint64_t)x18 * x30) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + (((uint64_t)x24 * x24) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + (((uint64_t)x30 * x18) + ((0x2 * ((uint64_t)x32 * x16)) + (0x2 * ((uint64_t)x31 * x14))))))))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x11 * (((uint64_t)x12 * x31) + ((0x2 * ((uint64_t)x14 * x32)) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + ((0x2 * ((uint64_t)x20 * x26)) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + ((0x2 * ((uint64_t)x26 * x20)) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + ((0x2 * ((uint64_t)x32 * x14)) + ((uint64_t)x31 * x12))))))))))))));
- { uint64_t x46 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x11 * (((uint64_t)x10 * x31) + (((uint64_t)x12 * x32) + (((uint64_t)x14 * x30) + (((uint64_t)x16 * x28) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + (((uint64_t)x28 * x16) + (((uint64_t)x30 * x14) + (((uint64_t)x32 * x12) + ((uint64_t)x31 * x10)))))))))))))));
- { uint64_t x47 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x11 * ((0x2 * ((uint64_t)x8 * x31)) + ((0x2 * ((uint64_t)x10 * x32)) + (((uint64_t)x12 * x30) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + (((uint64_t)x18 * x24) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + (((uint64_t)x24 * x18) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + (((uint64_t)x30 * x12) + ((0x2 * ((uint64_t)x32 * x10)) + (0x2 * ((uint64_t)x31 * x8)))))))))))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * (((uint64_t)x6 * x31) + ((0x2 * ((uint64_t)x8 * x32)) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + ((0x2 * ((uint64_t)x14 * x26)) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + ((0x2 * ((uint64_t)x26 * x14)) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + ((0x2 * ((uint64_t)x32 * x8)) + ((uint64_t)x31 * x6)))))))))))))))));
- { uint64_t x49 = (((uint64_t)x2 * x2) + (0x11 * ((0x2 * ((uint64_t)x4 * x31)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + (0x2 * ((uint64_t)x31 * x4)))))))))))))))))));
- { uint64_t x50 = (x49 >> 0x19);
- { uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- { uint64_t x52 = (x50 + x48);
- { uint64_t x53 = (x52 >> 0x18);
- { uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- { uint64_t x55 = (x53 + x47);
- { uint64_t x56 = (x55 >> 0x19);
- { uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- { uint64_t x58 = (x56 + x46);
- { uint64_t x59 = (x58 >> 0x18);
- { uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- { uint64_t x61 = (x59 + x45);
- { uint64_t x62 = (x61 >> 0x18);
- { uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- { uint64_t x64 = (x62 + x44);
- { uint64_t x65 = (x64 >> 0x19);
- { uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- { uint64_t x67 = (x65 + x43);
- { uint64_t x68 = (x67 >> 0x18);
- { uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- { uint64_t x70 = (x68 + x42);
- { uint64_t x71 = (x70 >> 0x18);
- { uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- { uint64_t x73 = (x71 + x41);
- { uint64_t x74 = (x73 >> 0x19);
- { uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- { uint64_t x76 = (x74 + x40);
- { uint64_t x77 = (x76 >> 0x18);
- { uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- { uint64_t x79 = (x77 + x39);
- { uint64_t x80 = (x79 >> 0x18);
- { uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- { uint64_t x82 = (x80 + x38);
- { uint64_t x83 = (x82 >> 0x19);
- { uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- { uint64_t x85 = (x83 + x37);
- { uint64_t x86 = (x85 >> 0x18);
- { uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- { uint64_t x88 = (x86 + x36);
- { uint64_t x89 = (x88 >> 0x18);
- { uint32_t x90 = ((uint32_t)x88 & 0xffffff);
- { uint64_t x91 = (x89 + x35);
- { uint64_t x92 = (x91 >> 0x19);
- { uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- { uint64_t x94 = (x92 + x34);
- { uint64_t x95 = (x94 >> 0x18);
- { uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- { uint64_t x97 = (x95 + x33);
- { uint64_t x98 = (x97 >> 0x18);
- { uint32_t x99 = ((uint32_t)x97 & 0xffffff);
- { uint64_t x100 = (x51 + (0x11 * x98));
- { uint32_t x101 = (uint32_t) (x100 >> 0x19);
- { uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- { uint32_t x103 = (x101 + x54);
- { uint32_t x104 = (x103 >> 0x18);
- { uint32_t x105 = (x103 & 0xffffff);
- out[0] = x102;
- out[1] = x105;
- out[2] = (x104 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- out[10] = x81;
- out[11] = x84;
- out[12] = x87;
- out[13] = x90;
- out[14] = x93;
- out[15] = x96;
- out[16] = x99;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e414m17_17limbs/fesquare.v b/src/Specific/solinas32_2e414m17_17limbs/fesquare.v
deleted file mode 100644
index 40d1e6dc5..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e414m17_17limbs.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_2e414m17_17limbs/fesquareDisplay.log b/src/Specific/solinas32_2e414m17_17limbs/fesquareDisplay.log
deleted file mode 100644
index 6b40ab078..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,80 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x31, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x33 = (((uint64_t)x2 * x31) + ((0x2 * ((uint64_t)x4 * x32)) + (((uint64_t)x6 * x30) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + (((uint64_t)x12 * x24) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + (((uint64_t)x24 * x12) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + (((uint64_t)x30 * x6) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x31 * x2)))))))))))))))));
- uint64_t x34 = ((((uint64_t)x2 * x32) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + ((0x2 * ((uint64_t)x8 * x26)) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + ((0x2 * ((uint64_t)x26 * x8)) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x32 * x2)))))))))))))))) + (0x11 * ((uint64_t)x31 * x31)));
- uint64_t x35 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + ((0x2 * ((uint64_t)x6 * x26)) + ((0x2 * ((uint64_t)x8 * x24)) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + ((0x2 * ((uint64_t)x24 * x8)) + ((0x2 * ((uint64_t)x26 * x6)) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x32 * x31)) + (0x2 * ((uint64_t)x31 * x32)))));
- uint64_t x36 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + (((uint64_t)x6 * x24) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + (((uint64_t)x24 * x6) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x11 * (((uint64_t)x30 * x31) + ((0x2 * ((uint64_t)x32 * x32)) + ((uint64_t)x31 * x30)))));
- uint64_t x37 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x11 * (((uint64_t)x28 * x31) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + ((uint64_t)x31 * x28))))));
- uint64_t x38 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x11 * ((0x2 * ((uint64_t)x26 * x31)) + ((0x2 * ((uint64_t)x28 * x32)) + (((uint64_t)x30 * x30) + ((0x2 * ((uint64_t)x32 * x28)) + (0x2 * ((uint64_t)x31 * x26))))))));
- uint64_t x39 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x11 * (((uint64_t)x24 * x31) + ((0x2 * ((uint64_t)x26 * x32)) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + ((0x2 * ((uint64_t)x32 * x26)) + ((uint64_t)x31 * x24))))))));
- uint64_t x40 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x11 * (((uint64_t)x22 * x31) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + ((uint64_t)x31 * x22)))))))));
- uint64_t x41 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x11 * ((0x2 * ((uint64_t)x20 * x31)) + ((0x2 * ((uint64_t)x22 * x32)) + (((uint64_t)x24 * x30) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + (((uint64_t)x30 * x24) + ((0x2 * ((uint64_t)x32 * x22)) + (0x2 * ((uint64_t)x31 * x20)))))))))));
- uint64_t x42 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + (((uint64_t)x6 * x12) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + (((uint64_t)x12 * x6) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x11 * (((uint64_t)x18 * x31) + ((0x2 * ((uint64_t)x20 * x32)) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + ((0x2 * ((uint64_t)x32 * x20)) + ((uint64_t)x31 * x18)))))))))));
- uint64_t x43 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x11 * (((uint64_t)x16 * x31) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + ((uint64_t)x31 * x16))))))))))));
- uint64_t x44 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x11 * ((0x2 * ((uint64_t)x14 * x31)) + ((0x2 * ((uint64_t)x16 * x32)) + (((uint64_t)x18 * x30) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + (((uint64_t)x24 * x24) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + (((uint64_t)x30 * x18) + ((0x2 * ((uint64_t)x32 * x16)) + (0x2 * ((uint64_t)x31 * x14))))))))))))));
- uint64_t x45 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x11 * (((uint64_t)x12 * x31) + ((0x2 * ((uint64_t)x14 * x32)) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + ((0x2 * ((uint64_t)x20 * x26)) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + ((0x2 * ((uint64_t)x26 * x20)) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + ((0x2 * ((uint64_t)x32 * x14)) + ((uint64_t)x31 * x12))))))))))))));
- uint64_t x46 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x11 * (((uint64_t)x10 * x31) + (((uint64_t)x12 * x32) + (((uint64_t)x14 * x30) + (((uint64_t)x16 * x28) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + (((uint64_t)x28 * x16) + (((uint64_t)x30 * x14) + (((uint64_t)x32 * x12) + ((uint64_t)x31 * x10)))))))))))))));
- uint64_t x47 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x11 * ((0x2 * ((uint64_t)x8 * x31)) + ((0x2 * ((uint64_t)x10 * x32)) + (((uint64_t)x12 * x30) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + (((uint64_t)x18 * x24) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + (((uint64_t)x24 * x18) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + (((uint64_t)x30 * x12) + ((0x2 * ((uint64_t)x32 * x10)) + (0x2 * ((uint64_t)x31 * x8)))))))))))))))));
- uint64_t x48 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * (((uint64_t)x6 * x31) + ((0x2 * ((uint64_t)x8 * x32)) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + ((0x2 * ((uint64_t)x14 * x26)) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + ((0x2 * ((uint64_t)x26 * x14)) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + ((0x2 * ((uint64_t)x32 * x8)) + ((uint64_t)x31 * x6)))))))))))))))));
- uint64_t x49 = (((uint64_t)x2 * x2) + (0x11 * ((0x2 * ((uint64_t)x4 * x31)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + (0x2 * ((uint64_t)x31 * x4)))))))))))))))))));
- uint64_t x50 = (x49 >> 0x19);
- uint32_t x51 = ((uint32_t)x49 & 0x1ffffff);
- uint64_t x52 = (x50 + x48);
- uint64_t x53 = (x52 >> 0x18);
- uint32_t x54 = ((uint32_t)x52 & 0xffffff);
- uint64_t x55 = (x53 + x47);
- uint64_t x56 = (x55 >> 0x19);
- uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- uint64_t x58 = (x56 + x46);
- uint64_t x59 = (x58 >> 0x18);
- uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- uint64_t x61 = (x59 + x45);
- uint64_t x62 = (x61 >> 0x18);
- uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- uint64_t x64 = (x62 + x44);
- uint64_t x65 = (x64 >> 0x19);
- uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- uint64_t x67 = (x65 + x43);
- uint64_t x68 = (x67 >> 0x18);
- uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- uint64_t x70 = (x68 + x42);
- uint64_t x71 = (x70 >> 0x18);
- uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- uint64_t x73 = (x71 + x41);
- uint64_t x74 = (x73 >> 0x19);
- uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- uint64_t x76 = (x74 + x40);
- uint64_t x77 = (x76 >> 0x18);
- uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- uint64_t x79 = (x77 + x39);
- uint64_t x80 = (x79 >> 0x18);
- uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- uint64_t x82 = (x80 + x38);
- uint64_t x83 = (x82 >> 0x19);
- uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- uint64_t x85 = (x83 + x37);
- uint64_t x86 = (x85 >> 0x18);
- uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- uint64_t x88 = (x86 + x36);
- uint64_t x89 = (x88 >> 0x18);
- uint32_t x90 = ((uint32_t)x88 & 0xffffff);
- uint64_t x91 = (x89 + x35);
- uint64_t x92 = (x91 >> 0x19);
- uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- uint64_t x94 = (x92 + x34);
- uint64_t x95 = (x94 >> 0x18);
- uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- uint64_t x97 = (x95 + x33);
- uint64_t x98 = (x97 >> 0x18);
- uint32_t x99 = ((uint32_t)x97 & 0xffffff);
- uint64_t x100 = (x51 + (0x11 * x98));
- uint32_t x101 = (uint32_t) (x100 >> 0x19);
- uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- uint32_t x103 = (x101 + x54);
- uint32_t x104 = (x103 >> 0x18);
- uint32_t x105 = (x103 & 0xffffff);
- return (Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x104 + x57), Return x105, Return x102))
-x
- : word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e414m17_17limbs/fesquareDisplay.v b/src/Specific/solinas32_2e414m17_17limbs/fesquareDisplay.v
deleted file mode 100644
index a2d71011c..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e414m17_17limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e414m17_17limbs/fesub.c b/src/Specific/solinas32_2e414m17_17limbs/fesub.c
deleted file mode 100644
index c8bff2b31..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/fesub.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void fesub(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- out[0] = ((0x3ffffde + x5) - x37);
- out[1] = ((0x1fffffe + x7) - x39);
- out[2] = ((0x3fffffe + x9) - x41);
- out[3] = ((0x1fffffe + x11) - x43);
- out[4] = ((0x1fffffe + x13) - x45);
- out[5] = ((0x3fffffe + x15) - x47);
- out[6] = ((0x1fffffe + x17) - x49);
- out[7] = ((0x1fffffe + x19) - x51);
- out[8] = ((0x3fffffe + x21) - x53);
- out[9] = ((0x1fffffe + x23) - x55);
- out[10] = ((0x1fffffe + x25) - x57);
- out[11] = ((0x3fffffe + x27) - x59);
- out[12] = ((0x1fffffe + x29) - x61);
- out[13] = ((0x1fffffe + x31) - x63);
- out[14] = ((0x3fffffe + x33) - x65);
- out[15] = ((0x1fffffe + x35) - x67);
- out[16] = ((0x1fffffe + x34) - x66);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e414m17_17limbs/fesub.v b/src/Specific/solinas32_2e414m17_17limbs/fesub.v
deleted file mode 100644
index 1f0f4c11a..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e414m17_17limbs.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_2e414m17_17limbs/fesubDisplay.log b/src/Specific/solinas32_2e414m17_17limbs/fesubDisplay.log
deleted file mode 100644
index e6d4c2e1d..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- (((0x1fffffe + x34) - x66), ((0x1fffffe + x35) - x67), ((0x3fffffe + x33) - x65), ((0x1fffffe + x31) - x63), ((0x1fffffe + x29) - x61), ((0x3fffffe + x27) - x59), ((0x1fffffe + x25) - x57), ((0x1fffffe + x23) - x55), ((0x3fffffe + x21) - x53), ((0x1fffffe + x19) - x51), ((0x1fffffe + x17) - x49), ((0x3fffffe + x15) - x47), ((0x1fffffe + x13) - x45), ((0x1fffffe + x11) - x43), ((0x3fffffe + x9) - x41), ((0x1fffffe + x7) - x39), ((0x3ffffde + x5) - x37)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e414m17_17limbs/fesubDisplay.v b/src/Specific/solinas32_2e414m17_17limbs/fesubDisplay.v
deleted file mode 100644
index 3af9b9fee..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e414m17_17limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e414m17_17limbs/freeze.c b/src/Specific/solinas32_2e414m17_17limbs/freeze.c
deleted file mode 100644
index 53eddd6b0..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/freeze.c
+++ /dev/null
@@ -1,89 +0,0 @@
-static void freeze(uint32_t out[17], const uint32_t in1[17]) {
- { const uint32_t x31 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffef);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x4, 0xffffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x6, 0x1ffffff);
- { uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x8, 0xffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x10, 0xffffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x12, 0x1ffffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x14, 0xffffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x16, 0xffffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x18, 0x1ffffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x20, 0xffffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x22, 0xffffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x24, 0x1ffffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x26, 0xffffff);
- { uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x28, 0xffffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x30, 0x1ffffff);
- { uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x32, 0xffffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x31, 0xffffff);
- { uint32_t x84 = cmovznz32(x83, 0x0, 0xffffffff);
- { uint32_t x85 = (x84 & 0x1ffffef);
- { uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x34, Return x85);
- { uint32_t x89 = (x84 & 0xffffff);
- { uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x37, Return x89);
- { uint32_t x93 = (x84 & 0x1ffffff);
- { uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x40, Return x93);
- { uint32_t x97 = (x84 & 0xffffff);
- { uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x43, Return x97);
- { uint32_t x101 = (x84 & 0xffffff);
- { uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x46, Return x101);
- { uint32_t x105 = (x84 & 0x1ffffff);
- { uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x49, Return x105);
- { uint32_t x109 = (x84 & 0xffffff);
- { uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x52, Return x109);
- { uint32_t x113 = (x84 & 0xffffff);
- { uint32_t x115, uint8_t x116 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x55, Return x113);
- { uint32_t x117 = (x84 & 0x1ffffff);
- { uint32_t x119, uint8_t x120 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x116, Return x58, Return x117);
- { uint32_t x121 = (x84 & 0xffffff);
- { uint32_t x123, uint8_t x124 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x120, Return x61, Return x121);
- { uint32_t x125 = (x84 & 0xffffff);
- { uint32_t x127, uint8_t x128 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x124, Return x64, Return x125);
- { uint32_t x129 = (x84 & 0x1ffffff);
- { uint32_t x131, uint8_t x132 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x128, Return x67, Return x129);
- { uint32_t x133 = (x84 & 0xffffff);
- { uint32_t x135, uint8_t x136 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x132, Return x70, Return x133);
- { uint32_t x137 = (x84 & 0xffffff);
- { uint32_t x139, uint8_t x140 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x136, Return x73, Return x137);
- { uint32_t x141 = (x84 & 0x1ffffff);
- { uint32_t x143, uint8_t x144 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x140, Return x76, Return x141);
- { uint32_t x145 = (x84 & 0xffffff);
- { uint32_t x147, uint8_t x148 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x144, Return x79, Return x145);
- { uint32_t x149 = (x84 & 0xffffff);
- { uint32_t x151, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x148, Return x82, Return x149);
- out[0] = x87;
- out[1] = x91;
- out[2] = x95;
- out[3] = x99;
- out[4] = x103;
- out[5] = x107;
- out[6] = x111;
- out[7] = x115;
- out[8] = x119;
- out[9] = x123;
- out[10] = x127;
- out[11] = x131;
- out[12] = x135;
- out[13] = x139;
- out[14] = x143;
- out[15] = x147;
- out[16] = x151;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e414m17_17limbs/freeze.v b/src/Specific/solinas32_2e414m17_17limbs/freeze.v
deleted file mode 100644
index 4a766276b..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e414m17_17limbs.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_2e414m17_17limbs/freezeDisplay.log b/src/Specific/solinas32_2e414m17_17limbs/freezeDisplay.log
deleted file mode 100644
index a4c51d315..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/freezeDisplay.log
+++ /dev/null
@@ -1,59 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x31, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffef);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x4, 0xffffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x6, 0x1ffffff);
- uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x8, 0xffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x10, 0xffffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x12, 0x1ffffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x14, 0xffffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x16, 0xffffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x18, 0x1ffffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x20, 0xffffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x22, 0xffffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x24, 0x1ffffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x26, 0xffffff);
- uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x28, 0xffffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x30, 0x1ffffff);
- uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x32, 0xffffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x31, 0xffffff);
- uint32_t x84 = cmovznz32(x83, 0x0, 0xffffffff);
- uint32_t x85 = (x84 & 0x1ffffef);
- uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x34, Return x85);
- uint32_t x89 = (x84 & 0xffffff);
- uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x37, Return x89);
- uint32_t x93 = (x84 & 0x1ffffff);
- uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x40, Return x93);
- uint32_t x97 = (x84 & 0xffffff);
- uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x43, Return x97);
- uint32_t x101 = (x84 & 0xffffff);
- uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x46, Return x101);
- uint32_t x105 = (x84 & 0x1ffffff);
- uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x49, Return x105);
- uint32_t x109 = (x84 & 0xffffff);
- uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x52, Return x109);
- uint32_t x113 = (x84 & 0xffffff);
- uint32_t x115, uint8_t x116 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x55, Return x113);
- uint32_t x117 = (x84 & 0x1ffffff);
- uint32_t x119, uint8_t x120 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x116, Return x58, Return x117);
- uint32_t x121 = (x84 & 0xffffff);
- uint32_t x123, uint8_t x124 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x120, Return x61, Return x121);
- uint32_t x125 = (x84 & 0xffffff);
- uint32_t x127, uint8_t x128 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x124, Return x64, Return x125);
- uint32_t x129 = (x84 & 0x1ffffff);
- uint32_t x131, uint8_t x132 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x128, Return x67, Return x129);
- uint32_t x133 = (x84 & 0xffffff);
- uint32_t x135, uint8_t x136 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x132, Return x70, Return x133);
- uint32_t x137 = (x84 & 0xffffff);
- uint32_t x139, uint8_t x140 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x136, Return x73, Return x137);
- uint32_t x141 = (x84 & 0x1ffffff);
- uint32_t x143, uint8_t x144 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x140, Return x76, Return x141);
- uint32_t x145 = (x84 & 0xffffff);
- uint32_t x147, uint8_t x148 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x144, Return x79, Return x145);
- uint32_t x149 = (x84 & 0xffffff);
- uint32_t x151, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x148, Return x82, Return x149);
- (Return x151, Return x147, Return x143, Return x139, Return x135, Return x131, Return x127, Return x123, Return x119, Return x115, Return x111, Return x107, Return x103, Return x99, Return x95, Return x91, Return x87))
-x
- : word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e414m17_17limbs/freezeDisplay.v b/src/Specific/solinas32_2e414m17_17limbs/freezeDisplay.v
deleted file mode 100644
index 5c730ff2b..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e414m17_17limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e414m17_17limbs/py_interpreter.sh b/src/Specific/solinas32_2e414m17_17limbs/py_interpreter.sh
deleted file mode 100755
index 0e3673252..000000000
--- a/src/Specific/solinas32_2e414m17_17limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**414 - 17' -Dmodulus_bytes='24 + 6/17' -Da24='121665'
diff --git a/src/Specific/solinas32_2e416m2e208m1_16limbs/CurveParameters.v b/src/Specific/solinas32_2e416m2e208m1_16limbs/CurveParameters.v
deleted file mode 100644
index 327219e36..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^416 - 2^208 - 1
-Base: 26
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 16%nat;
- base := 26;
- bitwidth := 32;
- s := 2^416;
- c := [(1, 1); (2^208, 1)];
- carry_chains := Some [[7; 15]; [8; 0; 9; 1; 10; 2; 11; 3; 12; 4; 13; 5; 14; 6; 15; 7]; [8; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- 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_2e416m2e208m1_16limbs/Synthesis.v b/src/Specific/solinas32_2e416m2e208m1_16limbs/Synthesis.v
deleted file mode 100644
index 37e913f3b..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_16limbs.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_2e416m2e208m1_16limbs/compiler.sh b/src/Specific/solinas32_2e416m2e208m1_16limbs/compiler.sh
deleted file mode 100755
index 3cd6c3c6e..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' "$@"
diff --git a/src/Specific/solinas32_2e416m2e208m1_16limbs/compilerxx.sh b/src/Specific/solinas32_2e416m2e208m1_16limbs/compilerxx.sh
deleted file mode 100755
index 2e8a4ea53..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' "$@"
diff --git a/src/Specific/solinas32_2e416m2e208m1_16limbs/feadd.c b/src/Specific/solinas32_2e416m2e208m1_16limbs/feadd.c
deleted file mode 100644
index 18b150e21..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/feadd.c
+++ /dev/null
@@ -1,51 +0,0 @@
-static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- out[0] = (x5 + x35);
- out[1] = (x7 + x37);
- out[2] = (x9 + x39);
- out[3] = (x11 + x41);
- out[4] = (x13 + x43);
- out[5] = (x15 + x45);
- out[6] = (x17 + x47);
- out[7] = (x19 + x49);
- out[8] = (x21 + x51);
- out[9] = (x23 + x53);
- out[10] = (x25 + x55);
- out[11] = (x27 + x57);
- out[12] = (x29 + x59);
- out[13] = (x31 + x61);
- out[14] = (x33 + x63);
- out[15] = (x32 + x62);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e416m2e208m1_16limbs/feadd.v b/src/Specific/solinas32_2e416m2e208m1_16limbs/feadd.v
deleted file mode 100644
index ed7c2b662..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_16limbs.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_2e416m2e208m1_16limbs/feaddDisplay.log b/src/Specific/solinas32_2e416m2e208m1_16limbs/feaddDisplay.log
deleted file mode 100644
index 130c31964..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- ((x32 + x62), (x33 + x63), (x31 + x61), (x29 + x59), (x27 + x57), (x25 + x55), (x23 + x53), (x21 + x51), (x19 + x49), (x17 + x47), (x15 + x45), (x13 + x43), (x11 + x41), (x9 + x39), (x7 + x37), (x5 + x35)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e416m2e208m1_16limbs/feaddDisplay.v b/src/Specific/solinas32_2e416m2e208m1_16limbs/feaddDisplay.v
deleted file mode 100644
index 193688841..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_16limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e416m2e208m1_16limbs/fecarry.v b/src/Specific/solinas32_2e416m2e208m1_16limbs/fecarry.v
deleted file mode 100644
index 831f948fa..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_16limbs.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_2e416m2e208m1_16limbs/fecarryDisplay.v b/src/Specific/solinas32_2e416m2e208m1_16limbs/fecarryDisplay.v
deleted file mode 100644
index bccae022d..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_16limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e416m2e208m1_16limbs/femul.c b/src/Specific/solinas32_2e416m2e208m1_16limbs/femul.c
deleted file mode 100644
index 44254473b..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/femul.c
+++ /dev/null
@@ -1,145 +0,0 @@
-static void femul(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- { uint64_t x64 = (((uint64_t)(x19 + x32) * (x49 + x62)) - ((uint64_t)x19 * x49));
- { uint64_t x65 = ((((uint64_t)(x17 + x33) * (x49 + x62)) + ((uint64_t)(x19 + x32) * (x47 + x63))) - (((uint64_t)x17 * x49) + ((uint64_t)x19 * x47)));
- { uint64_t x66 = ((((uint64_t)(x15 + x31) * (x49 + x62)) + (((uint64_t)(x17 + x33) * (x47 + x63)) + ((uint64_t)(x19 + x32) * (x45 + x61)))) - (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + ((uint64_t)x19 * x45))));
- { uint64_t x67 = ((((uint64_t)(x13 + x29) * (x49 + x62)) + (((uint64_t)(x15 + x31) * (x47 + x63)) + (((uint64_t)(x17 + x33) * (x45 + x61)) + ((uint64_t)(x19 + x32) * (x43 + x59))))) - (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + ((uint64_t)x19 * x43)))));
- { uint64_t x68 = ((((uint64_t)(x11 + x27) * (x49 + x62)) + (((uint64_t)(x13 + x29) * (x47 + x63)) + (((uint64_t)(x15 + x31) * (x45 + x61)) + (((uint64_t)(x17 + x33) * (x43 + x59)) + ((uint64_t)(x19 + x32) * (x41 + x57)))))) - (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((uint64_t)x19 * x41))))));
- { uint64_t x69 = ((((uint64_t)(x9 + x25) * (x49 + x62)) + (((uint64_t)(x11 + x27) * (x47 + x63)) + (((uint64_t)(x13 + x29) * (x45 + x61)) + (((uint64_t)(x15 + x31) * (x43 + x59)) + (((uint64_t)(x17 + x33) * (x41 + x57)) + ((uint64_t)(x19 + x32) * (x39 + x55))))))) - (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + ((uint64_t)x19 * x39)))))));
- { uint64_t x70 = ((((uint64_t)(x7 + x23) * (x49 + x62)) + (((uint64_t)(x9 + x25) * (x47 + x63)) + (((uint64_t)(x11 + x27) * (x45 + x61)) + (((uint64_t)(x13 + x29) * (x43 + x59)) + (((uint64_t)(x15 + x31) * (x41 + x57)) + (((uint64_t)(x17 + x33) * (x39 + x55)) + ((uint64_t)(x19 + x32) * (x37 + x53)))))))) - (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + ((uint64_t)x19 * x37))))))));
- { uint64_t x71 = ((((uint64_t)(x5 + x21) * (x49 + x62)) + (((uint64_t)(x7 + x23) * (x47 + x63)) + (((uint64_t)(x9 + x25) * (x45 + x61)) + (((uint64_t)(x11 + x27) * (x43 + x59)) + (((uint64_t)(x13 + x29) * (x41 + x57)) + (((uint64_t)(x15 + x31) * (x39 + x55)) + (((uint64_t)(x17 + x33) * (x37 + x53)) + ((uint64_t)(x19 + x32) * (x35 + x51))))))))) - (((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + ((uint64_t)x19 * x35)))))))));
- { uint64_t x72 = ((((uint64_t)(x5 + x21) * (x47 + x63)) + (((uint64_t)(x7 + x23) * (x45 + x61)) + (((uint64_t)(x9 + x25) * (x43 + x59)) + (((uint64_t)(x11 + x27) * (x41 + x57)) + (((uint64_t)(x13 + x29) * (x39 + x55)) + (((uint64_t)(x15 + x31) * (x37 + x53)) + ((uint64_t)(x17 + x33) * (x35 + x51)))))))) - (((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((uint64_t)x17 * x35))))))));
- { uint64_t x73 = ((((uint64_t)(x5 + x21) * (x45 + x61)) + (((uint64_t)(x7 + x23) * (x43 + x59)) + (((uint64_t)(x9 + x25) * (x41 + x57)) + (((uint64_t)(x11 + x27) * (x39 + x55)) + (((uint64_t)(x13 + x29) * (x37 + x53)) + ((uint64_t)(x15 + x31) * (x35 + x51))))))) - (((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + ((uint64_t)x15 * x35)))))));
- { uint64_t x74 = ((((uint64_t)(x5 + x21) * (x43 + x59)) + (((uint64_t)(x7 + x23) * (x41 + x57)) + (((uint64_t)(x9 + x25) * (x39 + x55)) + (((uint64_t)(x11 + x27) * (x37 + x53)) + ((uint64_t)(x13 + x29) * (x35 + x51)))))) - (((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((uint64_t)x13 * x35))))));
- { uint64_t x75 = ((((uint64_t)(x5 + x21) * (x41 + x57)) + (((uint64_t)(x7 + x23) * (x39 + x55)) + (((uint64_t)(x9 + x25) * (x37 + x53)) + ((uint64_t)(x11 + x27) * (x35 + x51))))) - (((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((uint64_t)x11 * x35)))));
- { uint64_t x76 = ((((uint64_t)(x5 + x21) * (x39 + x55)) + (((uint64_t)(x7 + x23) * (x37 + x53)) + ((uint64_t)(x9 + x25) * (x35 + x51)))) - (((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((uint64_t)x9 * x35))));
- { uint64_t x77 = ((((uint64_t)(x5 + x21) * (x37 + x53)) + ((uint64_t)(x7 + x23) * (x35 + x51))) - (((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)));
- { uint64_t x78 = (((uint64_t)(x5 + x21) * (x35 + x51)) - ((uint64_t)x5 * x35));
- { uint64_t x79 = (((((uint64_t)x19 * x49) + ((uint64_t)x32 * x62)) + x72) + x64);
- { uint64_t x80 = ((((((uint64_t)x17 * x49) + ((uint64_t)x19 * x47)) + (((uint64_t)x33 * x62) + ((uint64_t)x32 * x63))) + x73) + x65);
- { uint64_t x81 = ((((((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + ((uint64_t)x19 * x45))) + (((uint64_t)x31 * x62) + (((uint64_t)x33 * x63) + ((uint64_t)x32 * x61)))) + x74) + x66);
- { uint64_t x82 = ((((((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + ((uint64_t)x19 * x43)))) + (((uint64_t)x29 * x62) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + ((uint64_t)x32 * x59))))) + x75) + x67);
- { uint64_t x83 = ((((((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((uint64_t)x19 * x41))))) + (((uint64_t)x27 * x62) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + (((uint64_t)x33 * x59) + ((uint64_t)x32 * x57)))))) + x76) + x68);
- { uint64_t x84 = ((((((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + ((uint64_t)x19 * x39)))))) + (((uint64_t)x25 * x62) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + ((uint64_t)x32 * x55))))))) + x77) + x69);
- { uint64_t x85 = ((((((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + ((uint64_t)x19 * x37))))))) + (((uint64_t)x23 * x62) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + ((uint64_t)x32 * x53)))))))) + x78) + x70);
- { uint64_t x86 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + ((uint64_t)x19 * x35)))))))) + (((uint64_t)x21 * x62) + (((uint64_t)x23 * x63) + (((uint64_t)x25 * x61) + (((uint64_t)x27 * x59) + (((uint64_t)x29 * x57) + (((uint64_t)x31 * x55) + (((uint64_t)x33 * x53) + ((uint64_t)x32 * x51)))))))));
- { uint64_t x87 = (((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((uint64_t)x17 * x35))))))) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + ((uint64_t)x33 * x51)))))))) + x64);
- { uint64_t x88 = (((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + ((uint64_t)x15 * x35)))))) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + ((uint64_t)x31 * x51))))))) + x65);
- { uint64_t x89 = (((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((uint64_t)x13 * x35))))) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + ((uint64_t)x29 * x51)))))) + x66);
- { uint64_t x90 = (((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((uint64_t)x11 * x35)))) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + ((uint64_t)x27 * x51))))) + x67);
- { uint64_t x91 = (((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((uint64_t)x9 * x35))) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + ((uint64_t)x25 * x51)))) + x68);
- { uint64_t x92 = (((((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)) + (((uint64_t)x21 * x53) + ((uint64_t)x23 * x51))) + x69);
- { uint64_t x93 = ((((uint64_t)x5 * x35) + ((uint64_t)x21 * x51)) + x70);
- { uint64_t x94 = (x86 >> 0x1a);
- { uint32_t x95 = ((uint32_t)x86 & 0x3ffffff);
- { uint64_t x96 = (x71 >> 0x1a);
- { uint32_t x97 = ((uint32_t)x71 & 0x3ffffff);
- { uint64_t x98 = ((0x4000000 * x96) + x97);
- { uint64_t x99 = (x98 >> 0x1a);
- { uint32_t x100 = ((uint32_t)x98 & 0x3ffffff);
- { uint64_t x101 = ((x94 + x85) + x99);
- { uint64_t x102 = (x101 >> 0x1a);
- { uint32_t x103 = ((uint32_t)x101 & 0x3ffffff);
- { uint64_t x104 = (x93 + x99);
- { uint64_t x105 = (x104 >> 0x1a);
- { uint32_t x106 = ((uint32_t)x104 & 0x3ffffff);
- { uint64_t x107 = (x102 + x84);
- { uint64_t x108 = (x107 >> 0x1a);
- { uint32_t x109 = ((uint32_t)x107 & 0x3ffffff);
- { uint64_t x110 = (x105 + x92);
- { uint64_t x111 = (x110 >> 0x1a);
- { uint32_t x112 = ((uint32_t)x110 & 0x3ffffff);
- { uint64_t x113 = (x108 + x83);
- { uint64_t x114 = (x113 >> 0x1a);
- { uint32_t x115 = ((uint32_t)x113 & 0x3ffffff);
- { uint64_t x116 = (x111 + x91);
- { uint64_t x117 = (x116 >> 0x1a);
- { uint32_t x118 = ((uint32_t)x116 & 0x3ffffff);
- { uint64_t x119 = (x114 + x82);
- { uint64_t x120 = (x119 >> 0x1a);
- { uint32_t x121 = ((uint32_t)x119 & 0x3ffffff);
- { uint64_t x122 = (x117 + x90);
- { uint64_t x123 = (x122 >> 0x1a);
- { uint32_t x124 = ((uint32_t)x122 & 0x3ffffff);
- { uint64_t x125 = (x120 + x81);
- { uint64_t x126 = (x125 >> 0x1a);
- { uint32_t x127 = ((uint32_t)x125 & 0x3ffffff);
- { uint64_t x128 = (x123 + x89);
- { uint64_t x129 = (x128 >> 0x1a);
- { uint32_t x130 = ((uint32_t)x128 & 0x3ffffff);
- { uint64_t x131 = (x126 + x80);
- { uint64_t x132 = (x131 >> 0x1a);
- { uint32_t x133 = ((uint32_t)x131 & 0x3ffffff);
- { uint64_t x134 = (x129 + x88);
- { uint64_t x135 = (x134 >> 0x1a);
- { uint32_t x136 = ((uint32_t)x134 & 0x3ffffff);
- { uint64_t x137 = (x132 + x79);
- { uint64_t x138 = (x137 >> 0x1a);
- { uint32_t x139 = ((uint32_t)x137 & 0x3ffffff);
- { uint64_t x140 = (x135 + x87);
- { uint64_t x141 = (x140 >> 0x1a);
- { uint32_t x142 = ((uint32_t)x140 & 0x3ffffff);
- { uint64_t x143 = (x138 + x100);
- { uint32_t x144 = (uint32_t) (x143 >> 0x1a);
- { uint32_t x145 = ((uint32_t)x143 & 0x3ffffff);
- { uint64_t x146 = (x141 + x95);
- { uint32_t x147 = (uint32_t) (x146 >> 0x1a);
- { uint32_t x148 = ((uint32_t)x146 & 0x3ffffff);
- { uint64_t x149 = (((uint64_t)0x4000000 * x144) + x145);
- { uint32_t x150 = (uint32_t) (x149 >> 0x1a);
- { uint32_t x151 = ((uint32_t)x149 & 0x3ffffff);
- { uint32_t x152 = ((x147 + x103) + x150);
- { uint32_t x153 = (x152 >> 0x1a);
- { uint32_t x154 = (x152 & 0x3ffffff);
- { uint32_t x155 = (x106 + x150);
- { uint32_t x156 = (x155 >> 0x1a);
- { uint32_t x157 = (x155 & 0x3ffffff);
- out[0] = x157;
- out[1] = (x156 + x112);
- out[2] = x118;
- out[3] = x124;
- out[4] = x130;
- out[5] = x136;
- out[6] = x142;
- out[7] = x148;
- out[8] = x154;
- out[9] = (x153 + x109);
- out[10] = x115;
- out[11] = x121;
- out[12] = x127;
- out[13] = x133;
- out[14] = x139;
- out[15] = x151;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e416m2e208m1_16limbs/femul.v b/src/Specific/solinas32_2e416m2e208m1_16limbs/femul.v
deleted file mode 100644
index bd37f6428..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_16limbs.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_2e416m2e208m1_16limbs/femulDisplay.log b/src/Specific/solinas32_2e416m2e208m1_16limbs/femulDisplay.log
deleted file mode 100644
index a1a68ec37..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/femulDisplay.log
+++ /dev/null
@@ -1,101 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- uint64_t x64 = (((uint64_t)(x19 + x32) * (x49 + x62)) - ((uint64_t)x19 * x49));
- uint64_t x65 = ((((uint64_t)(x17 + x33) * (x49 + x62)) + ((uint64_t)(x19 + x32) * (x47 + x63))) - (((uint64_t)x17 * x49) + ((uint64_t)x19 * x47)));
- uint64_t x66 = ((((uint64_t)(x15 + x31) * (x49 + x62)) + (((uint64_t)(x17 + x33) * (x47 + x63)) + ((uint64_t)(x19 + x32) * (x45 + x61)))) - (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + ((uint64_t)x19 * x45))));
- uint64_t x67 = ((((uint64_t)(x13 + x29) * (x49 + x62)) + (((uint64_t)(x15 + x31) * (x47 + x63)) + (((uint64_t)(x17 + x33) * (x45 + x61)) + ((uint64_t)(x19 + x32) * (x43 + x59))))) - (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + ((uint64_t)x19 * x43)))));
- uint64_t x68 = ((((uint64_t)(x11 + x27) * (x49 + x62)) + (((uint64_t)(x13 + x29) * (x47 + x63)) + (((uint64_t)(x15 + x31) * (x45 + x61)) + (((uint64_t)(x17 + x33) * (x43 + x59)) + ((uint64_t)(x19 + x32) * (x41 + x57)))))) - (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((uint64_t)x19 * x41))))));
- uint64_t x69 = ((((uint64_t)(x9 + x25) * (x49 + x62)) + (((uint64_t)(x11 + x27) * (x47 + x63)) + (((uint64_t)(x13 + x29) * (x45 + x61)) + (((uint64_t)(x15 + x31) * (x43 + x59)) + (((uint64_t)(x17 + x33) * (x41 + x57)) + ((uint64_t)(x19 + x32) * (x39 + x55))))))) - (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + ((uint64_t)x19 * x39)))))));
- uint64_t x70 = ((((uint64_t)(x7 + x23) * (x49 + x62)) + (((uint64_t)(x9 + x25) * (x47 + x63)) + (((uint64_t)(x11 + x27) * (x45 + x61)) + (((uint64_t)(x13 + x29) * (x43 + x59)) + (((uint64_t)(x15 + x31) * (x41 + x57)) + (((uint64_t)(x17 + x33) * (x39 + x55)) + ((uint64_t)(x19 + x32) * (x37 + x53)))))))) - (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + ((uint64_t)x19 * x37))))))));
- uint64_t x71 = ((((uint64_t)(x5 + x21) * (x49 + x62)) + (((uint64_t)(x7 + x23) * (x47 + x63)) + (((uint64_t)(x9 + x25) * (x45 + x61)) + (((uint64_t)(x11 + x27) * (x43 + x59)) + (((uint64_t)(x13 + x29) * (x41 + x57)) + (((uint64_t)(x15 + x31) * (x39 + x55)) + (((uint64_t)(x17 + x33) * (x37 + x53)) + ((uint64_t)(x19 + x32) * (x35 + x51))))))))) - (((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + ((uint64_t)x19 * x35)))))))));
- uint64_t x72 = ((((uint64_t)(x5 + x21) * (x47 + x63)) + (((uint64_t)(x7 + x23) * (x45 + x61)) + (((uint64_t)(x9 + x25) * (x43 + x59)) + (((uint64_t)(x11 + x27) * (x41 + x57)) + (((uint64_t)(x13 + x29) * (x39 + x55)) + (((uint64_t)(x15 + x31) * (x37 + x53)) + ((uint64_t)(x17 + x33) * (x35 + x51)))))))) - (((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((uint64_t)x17 * x35))))))));
- uint64_t x73 = ((((uint64_t)(x5 + x21) * (x45 + x61)) + (((uint64_t)(x7 + x23) * (x43 + x59)) + (((uint64_t)(x9 + x25) * (x41 + x57)) + (((uint64_t)(x11 + x27) * (x39 + x55)) + (((uint64_t)(x13 + x29) * (x37 + x53)) + ((uint64_t)(x15 + x31) * (x35 + x51))))))) - (((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + ((uint64_t)x15 * x35)))))));
- uint64_t x74 = ((((uint64_t)(x5 + x21) * (x43 + x59)) + (((uint64_t)(x7 + x23) * (x41 + x57)) + (((uint64_t)(x9 + x25) * (x39 + x55)) + (((uint64_t)(x11 + x27) * (x37 + x53)) + ((uint64_t)(x13 + x29) * (x35 + x51)))))) - (((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((uint64_t)x13 * x35))))));
- uint64_t x75 = ((((uint64_t)(x5 + x21) * (x41 + x57)) + (((uint64_t)(x7 + x23) * (x39 + x55)) + (((uint64_t)(x9 + x25) * (x37 + x53)) + ((uint64_t)(x11 + x27) * (x35 + x51))))) - (((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((uint64_t)x11 * x35)))));
- uint64_t x76 = ((((uint64_t)(x5 + x21) * (x39 + x55)) + (((uint64_t)(x7 + x23) * (x37 + x53)) + ((uint64_t)(x9 + x25) * (x35 + x51)))) - (((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((uint64_t)x9 * x35))));
- uint64_t x77 = ((((uint64_t)(x5 + x21) * (x37 + x53)) + ((uint64_t)(x7 + x23) * (x35 + x51))) - (((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)));
- uint64_t x78 = (((uint64_t)(x5 + x21) * (x35 + x51)) - ((uint64_t)x5 * x35));
- uint64_t x79 = (((((uint64_t)x19 * x49) + ((uint64_t)x32 * x62)) + x72) + x64);
- uint64_t x80 = ((((((uint64_t)x17 * x49) + ((uint64_t)x19 * x47)) + (((uint64_t)x33 * x62) + ((uint64_t)x32 * x63))) + x73) + x65);
- uint64_t x81 = ((((((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + ((uint64_t)x19 * x45))) + (((uint64_t)x31 * x62) + (((uint64_t)x33 * x63) + ((uint64_t)x32 * x61)))) + x74) + x66);
- uint64_t x82 = ((((((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + ((uint64_t)x19 * x43)))) + (((uint64_t)x29 * x62) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + ((uint64_t)x32 * x59))))) + x75) + x67);
- uint64_t x83 = ((((((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((uint64_t)x19 * x41))))) + (((uint64_t)x27 * x62) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + (((uint64_t)x33 * x59) + ((uint64_t)x32 * x57)))))) + x76) + x68);
- uint64_t x84 = ((((((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + ((uint64_t)x19 * x39)))))) + (((uint64_t)x25 * x62) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + ((uint64_t)x32 * x55))))))) + x77) + x69);
- uint64_t x85 = ((((((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + ((uint64_t)x19 * x37))))))) + (((uint64_t)x23 * x62) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + ((uint64_t)x32 * x53)))))))) + x78) + x70);
- uint64_t x86 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + ((uint64_t)x19 * x35)))))))) + (((uint64_t)x21 * x62) + (((uint64_t)x23 * x63) + (((uint64_t)x25 * x61) + (((uint64_t)x27 * x59) + (((uint64_t)x29 * x57) + (((uint64_t)x31 * x55) + (((uint64_t)x33 * x53) + ((uint64_t)x32 * x51)))))))));
- uint64_t x87 = (((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((uint64_t)x17 * x35))))))) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + ((uint64_t)x33 * x51)))))))) + x64);
- uint64_t x88 = (((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + ((uint64_t)x15 * x35)))))) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + ((uint64_t)x31 * x51))))))) + x65);
- uint64_t x89 = (((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((uint64_t)x13 * x35))))) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + ((uint64_t)x29 * x51)))))) + x66);
- uint64_t x90 = (((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((uint64_t)x11 * x35)))) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + ((uint64_t)x27 * x51))))) + x67);
- uint64_t x91 = (((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((uint64_t)x9 * x35))) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + ((uint64_t)x25 * x51)))) + x68);
- uint64_t x92 = (((((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)) + (((uint64_t)x21 * x53) + ((uint64_t)x23 * x51))) + x69);
- uint64_t x93 = ((((uint64_t)x5 * x35) + ((uint64_t)x21 * x51)) + x70);
- uint64_t x94 = (x86 >> 0x1a);
- uint32_t x95 = ((uint32_t)x86 & 0x3ffffff);
- uint64_t x96 = (x71 >> 0x1a);
- uint32_t x97 = ((uint32_t)x71 & 0x3ffffff);
- uint64_t x98 = ((0x4000000 * x96) + x97);
- uint64_t x99 = (x98 >> 0x1a);
- uint32_t x100 = ((uint32_t)x98 & 0x3ffffff);
- uint64_t x101 = ((x94 + x85) + x99);
- uint64_t x102 = (x101 >> 0x1a);
- uint32_t x103 = ((uint32_t)x101 & 0x3ffffff);
- uint64_t x104 = (x93 + x99);
- uint64_t x105 = (x104 >> 0x1a);
- uint32_t x106 = ((uint32_t)x104 & 0x3ffffff);
- uint64_t x107 = (x102 + x84);
- uint64_t x108 = (x107 >> 0x1a);
- uint32_t x109 = ((uint32_t)x107 & 0x3ffffff);
- uint64_t x110 = (x105 + x92);
- uint64_t x111 = (x110 >> 0x1a);
- uint32_t x112 = ((uint32_t)x110 & 0x3ffffff);
- uint64_t x113 = (x108 + x83);
- uint64_t x114 = (x113 >> 0x1a);
- uint32_t x115 = ((uint32_t)x113 & 0x3ffffff);
- uint64_t x116 = (x111 + x91);
- uint64_t x117 = (x116 >> 0x1a);
- uint32_t x118 = ((uint32_t)x116 & 0x3ffffff);
- uint64_t x119 = (x114 + x82);
- uint64_t x120 = (x119 >> 0x1a);
- uint32_t x121 = ((uint32_t)x119 & 0x3ffffff);
- uint64_t x122 = (x117 + x90);
- uint64_t x123 = (x122 >> 0x1a);
- uint32_t x124 = ((uint32_t)x122 & 0x3ffffff);
- uint64_t x125 = (x120 + x81);
- uint64_t x126 = (x125 >> 0x1a);
- uint32_t x127 = ((uint32_t)x125 & 0x3ffffff);
- uint64_t x128 = (x123 + x89);
- uint64_t x129 = (x128 >> 0x1a);
- uint32_t x130 = ((uint32_t)x128 & 0x3ffffff);
- uint64_t x131 = (x126 + x80);
- uint64_t x132 = (x131 >> 0x1a);
- uint32_t x133 = ((uint32_t)x131 & 0x3ffffff);
- uint64_t x134 = (x129 + x88);
- uint64_t x135 = (x134 >> 0x1a);
- uint32_t x136 = ((uint32_t)x134 & 0x3ffffff);
- uint64_t x137 = (x132 + x79);
- uint64_t x138 = (x137 >> 0x1a);
- uint32_t x139 = ((uint32_t)x137 & 0x3ffffff);
- uint64_t x140 = (x135 + x87);
- uint64_t x141 = (x140 >> 0x1a);
- uint32_t x142 = ((uint32_t)x140 & 0x3ffffff);
- uint64_t x143 = (x138 + x100);
- uint32_t x144 = (uint32_t) (x143 >> 0x1a);
- uint32_t x145 = ((uint32_t)x143 & 0x3ffffff);
- uint64_t x146 = (x141 + x95);
- uint32_t x147 = (uint32_t) (x146 >> 0x1a);
- uint32_t x148 = ((uint32_t)x146 & 0x3ffffff);
- uint64_t x149 = (((uint64_t)0x4000000 * x144) + x145);
- uint32_t x150 = (uint32_t) (x149 >> 0x1a);
- uint32_t x151 = ((uint32_t)x149 & 0x3ffffff);
- uint32_t x152 = ((x147 + x103) + x150);
- uint32_t x153 = (x152 >> 0x1a);
- uint32_t x154 = (x152 & 0x3ffffff);
- uint32_t x155 = (x106 + x150);
- uint32_t x156 = (x155 >> 0x1a);
- uint32_t x157 = (x155 & 0x3ffffff);
- return (Return x151, Return x139, Return x133, Return x127, Return x121, Return x115, (x153 + x109), Return x154, Return x148, Return x142, Return x136, Return x130, Return x124, Return x118, (x156 + x112), Return x157))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e416m2e208m1_16limbs/femulDisplay.v b/src/Specific/solinas32_2e416m2e208m1_16limbs/femulDisplay.v
deleted file mode 100644
index 44f4c4240..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_16limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e416m2e208m1_16limbs/fesquare.c b/src/Specific/solinas32_2e416m2e208m1_16limbs/fesquare.c
deleted file mode 100644
index 6499f63f0..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/fesquare.c
+++ /dev/null
@@ -1,129 +0,0 @@
-static void fesquare(uint32_t out[16], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x31 = (((uint64_t)(x16 + x29) * (x16 + x29)) - ((uint64_t)x16 * x16));
- { uint64_t x32 = ((((uint64_t)(x14 + x30) * (x16 + x29)) + ((uint64_t)(x16 + x29) * (x14 + x30))) - (((uint64_t)x14 * x16) + ((uint64_t)x16 * x14)));
- { uint64_t x33 = ((((uint64_t)(x12 + x28) * (x16 + x29)) + (((uint64_t)(x14 + x30) * (x14 + x30)) + ((uint64_t)(x16 + x29) * (x12 + x28)))) - (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + ((uint64_t)x16 * x12))));
- { uint64_t x34 = ((((uint64_t)(x10 + x26) * (x16 + x29)) + (((uint64_t)(x12 + x28) * (x14 + x30)) + (((uint64_t)(x14 + x30) * (x12 + x28)) + ((uint64_t)(x16 + x29) * (x10 + x26))))) - (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x16 * x10)))));
- { uint64_t x35 = ((((uint64_t)(x8 + x24) * (x16 + x29)) + (((uint64_t)(x10 + x26) * (x14 + x30)) + (((uint64_t)(x12 + x28) * (x12 + x28)) + (((uint64_t)(x14 + x30) * (x10 + x26)) + ((uint64_t)(x16 + x29) * (x8 + x24)))))) - (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + ((uint64_t)x16 * x8))))));
- { uint64_t x36 = ((((uint64_t)(x6 + x22) * (x16 + x29)) + (((uint64_t)(x8 + x24) * (x14 + x30)) + (((uint64_t)(x10 + x26) * (x12 + x28)) + (((uint64_t)(x12 + x28) * (x10 + x26)) + (((uint64_t)(x14 + x30) * (x8 + x24)) + ((uint64_t)(x16 + x29) * (x6 + x22))))))) - (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((uint64_t)x16 * x6)))))));
- { uint64_t x37 = ((((uint64_t)(x4 + x20) * (x16 + x29)) + (((uint64_t)(x6 + x22) * (x14 + x30)) + (((uint64_t)(x8 + x24) * (x12 + x28)) + (((uint64_t)(x10 + x26) * (x10 + x26)) + (((uint64_t)(x12 + x28) * (x8 + x24)) + (((uint64_t)(x14 + x30) * (x6 + x22)) + ((uint64_t)(x16 + x29) * (x4 + x20)))))))) - (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((uint64_t)x16 * x4))))))));
- { uint64_t x38 = ((((uint64_t)(x2 + x18) * (x16 + x29)) + (((uint64_t)(x4 + x20) * (x14 + x30)) + (((uint64_t)(x6 + x22) * (x12 + x28)) + (((uint64_t)(x8 + x24) * (x10 + x26)) + (((uint64_t)(x10 + x26) * (x8 + x24)) + (((uint64_t)(x12 + x28) * (x6 + x22)) + (((uint64_t)(x14 + x30) * (x4 + x20)) + ((uint64_t)(x16 + x29) * (x2 + x18))))))))) - (((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))));
- { uint64_t x39 = ((((uint64_t)(x2 + x18) * (x14 + x30)) + (((uint64_t)(x4 + x20) * (x12 + x28)) + (((uint64_t)(x6 + x22) * (x10 + x26)) + (((uint64_t)(x8 + x24) * (x8 + x24)) + (((uint64_t)(x10 + x26) * (x6 + x22)) + (((uint64_t)(x12 + x28) * (x4 + x20)) + ((uint64_t)(x14 + x30) * (x2 + x18)))))))) - (((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))));
- { uint64_t x40 = ((((uint64_t)(x2 + x18) * (x12 + x28)) + (((uint64_t)(x4 + x20) * (x10 + x26)) + (((uint64_t)(x6 + x22) * (x8 + x24)) + (((uint64_t)(x8 + x24) * (x6 + x22)) + (((uint64_t)(x10 + x26) * (x4 + x20)) + ((uint64_t)(x12 + x28) * (x2 + x18))))))) - (((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))));
- { uint64_t x41 = ((((uint64_t)(x2 + x18) * (x10 + x26)) + (((uint64_t)(x4 + x20) * (x8 + x24)) + (((uint64_t)(x6 + x22) * (x6 + x22)) + (((uint64_t)(x8 + x24) * (x4 + x20)) + ((uint64_t)(x10 + x26) * (x2 + x18)))))) - (((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))));
- { uint64_t x42 = ((((uint64_t)(x2 + x18) * (x8 + x24)) + (((uint64_t)(x4 + x20) * (x6 + x22)) + (((uint64_t)(x6 + x22) * (x4 + x20)) + ((uint64_t)(x8 + x24) * (x2 + x18))))) - (((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))));
- { uint64_t x43 = ((((uint64_t)(x2 + x18) * (x6 + x22)) + (((uint64_t)(x4 + x20) * (x4 + x20)) + ((uint64_t)(x6 + x22) * (x2 + x18)))) - (((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))));
- { uint64_t x44 = ((((uint64_t)(x2 + x18) * (x4 + x20)) + ((uint64_t)(x4 + x20) * (x2 + x18))) - (((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)));
- { uint64_t x45 = (((uint64_t)(x2 + x18) * (x2 + x18)) - ((uint64_t)x2 * x2));
- { uint64_t x46 = (((((uint64_t)x16 * x16) + ((uint64_t)x29 * x29)) + x39) + x31);
- { uint64_t x47 = ((((((uint64_t)x14 * x16) + ((uint64_t)x16 * x14)) + (((uint64_t)x30 * x29) + ((uint64_t)x29 * x30))) + x40) + x32);
- { uint64_t x48 = ((((((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + ((uint64_t)x16 * x12))) + (((uint64_t)x28 * x29) + (((uint64_t)x30 * x30) + ((uint64_t)x29 * x28)))) + x41) + x33);
- { uint64_t x49 = ((((((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x16 * x10)))) + (((uint64_t)x26 * x29) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + ((uint64_t)x29 * x26))))) + x42) + x34);
- { uint64_t x50 = ((((((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + ((uint64_t)x16 * x8))))) + (((uint64_t)x24 * x29) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + ((uint64_t)x29 * x24)))))) + x43) + x35);
- { uint64_t x51 = ((((((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((uint64_t)x16 * x6)))))) + (((uint64_t)x22 * x29) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + ((uint64_t)x29 * x22))))))) + x44) + x36);
- { uint64_t x52 = ((((((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((uint64_t)x16 * x4))))))) + (((uint64_t)x20 * x29) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + ((uint64_t)x29 * x20)))))))) + x45) + x37);
- { uint64_t x53 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (((uint64_t)x18 * x29) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + ((uint64_t)x29 * x18)))))))));
- { uint64_t x54 = (((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + ((uint64_t)x30 * x18)))))))) + x31);
- { uint64_t x55 = (((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + ((uint64_t)x28 * x18))))))) + x32);
- { uint64_t x56 = (((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + ((uint64_t)x26 * x18)))))) + x33);
- { uint64_t x57 = (((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((uint64_t)x24 * x18))))) + x34);
- { uint64_t x58 = (((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + ((uint64_t)x22 * x18)))) + x35);
- { uint64_t x59 = (((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x18 * x20) + ((uint64_t)x20 * x18))) + x36);
- { uint64_t x60 = ((((uint64_t)x2 * x2) + ((uint64_t)x18 * x18)) + x37);
- { uint64_t x61 = (x53 >> 0x1a);
- { uint32_t x62 = ((uint32_t)x53 & 0x3ffffff);
- { uint64_t x63 = (x38 >> 0x1a);
- { uint32_t x64 = ((uint32_t)x38 & 0x3ffffff);
- { uint64_t x65 = ((0x4000000 * x63) + x64);
- { uint64_t x66 = (x65 >> 0x1a);
- { uint32_t x67 = ((uint32_t)x65 & 0x3ffffff);
- { uint64_t x68 = ((x61 + x52) + x66);
- { uint64_t x69 = (x68 >> 0x1a);
- { uint32_t x70 = ((uint32_t)x68 & 0x3ffffff);
- { uint64_t x71 = (x60 + x66);
- { uint64_t x72 = (x71 >> 0x1a);
- { uint32_t x73 = ((uint32_t)x71 & 0x3ffffff);
- { uint64_t x74 = (x69 + x51);
- { uint64_t x75 = (x74 >> 0x1a);
- { uint32_t x76 = ((uint32_t)x74 & 0x3ffffff);
- { uint64_t x77 = (x72 + x59);
- { uint64_t x78 = (x77 >> 0x1a);
- { uint32_t x79 = ((uint32_t)x77 & 0x3ffffff);
- { uint64_t x80 = (x75 + x50);
- { uint64_t x81 = (x80 >> 0x1a);
- { uint32_t x82 = ((uint32_t)x80 & 0x3ffffff);
- { uint64_t x83 = (x78 + x58);
- { uint64_t x84 = (x83 >> 0x1a);
- { uint32_t x85 = ((uint32_t)x83 & 0x3ffffff);
- { uint64_t x86 = (x81 + x49);
- { uint64_t x87 = (x86 >> 0x1a);
- { uint32_t x88 = ((uint32_t)x86 & 0x3ffffff);
- { uint64_t x89 = (x84 + x57);
- { uint64_t x90 = (x89 >> 0x1a);
- { uint32_t x91 = ((uint32_t)x89 & 0x3ffffff);
- { uint64_t x92 = (x87 + x48);
- { uint64_t x93 = (x92 >> 0x1a);
- { uint32_t x94 = ((uint32_t)x92 & 0x3ffffff);
- { uint64_t x95 = (x90 + x56);
- { uint64_t x96 = (x95 >> 0x1a);
- { uint32_t x97 = ((uint32_t)x95 & 0x3ffffff);
- { uint64_t x98 = (x93 + x47);
- { uint64_t x99 = (x98 >> 0x1a);
- { uint32_t x100 = ((uint32_t)x98 & 0x3ffffff);
- { uint64_t x101 = (x96 + x55);
- { uint64_t x102 = (x101 >> 0x1a);
- { uint32_t x103 = ((uint32_t)x101 & 0x3ffffff);
- { uint64_t x104 = (x99 + x46);
- { uint64_t x105 = (x104 >> 0x1a);
- { uint32_t x106 = ((uint32_t)x104 & 0x3ffffff);
- { uint64_t x107 = (x102 + x54);
- { uint64_t x108 = (x107 >> 0x1a);
- { uint32_t x109 = ((uint32_t)x107 & 0x3ffffff);
- { uint64_t x110 = (x105 + x67);
- { uint32_t x111 = (uint32_t) (x110 >> 0x1a);
- { uint32_t x112 = ((uint32_t)x110 & 0x3ffffff);
- { uint64_t x113 = (x108 + x62);
- { uint32_t x114 = (uint32_t) (x113 >> 0x1a);
- { uint32_t x115 = ((uint32_t)x113 & 0x3ffffff);
- { uint64_t x116 = (((uint64_t)0x4000000 * x111) + x112);
- { uint32_t x117 = (uint32_t) (x116 >> 0x1a);
- { uint32_t x118 = ((uint32_t)x116 & 0x3ffffff);
- { uint32_t x119 = ((x114 + x70) + x117);
- { uint32_t x120 = (x119 >> 0x1a);
- { uint32_t x121 = (x119 & 0x3ffffff);
- { uint32_t x122 = (x73 + x117);
- { uint32_t x123 = (x122 >> 0x1a);
- { uint32_t x124 = (x122 & 0x3ffffff);
- out[0] = x124;
- out[1] = (x123 + x79);
- out[2] = x85;
- out[3] = x91;
- out[4] = x97;
- out[5] = x103;
- out[6] = x109;
- out[7] = x115;
- out[8] = x121;
- out[9] = (x120 + x76);
- out[10] = x82;
- out[11] = x88;
- out[12] = x94;
- out[13] = x100;
- out[14] = x106;
- out[15] = x118;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e416m2e208m1_16limbs/fesquare.v b/src/Specific/solinas32_2e416m2e208m1_16limbs/fesquare.v
deleted file mode 100644
index 4eb80c753..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_16limbs.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_2e416m2e208m1_16limbs/fesquareDisplay.log b/src/Specific/solinas32_2e416m2e208m1_16limbs/fesquareDisplay.log
deleted file mode 100644
index 53d66e31c..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,101 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x31 = (((uint64_t)(x16 + x29) * (x16 + x29)) - ((uint64_t)x16 * x16));
- uint64_t x32 = ((((uint64_t)(x14 + x30) * (x16 + x29)) + ((uint64_t)(x16 + x29) * (x14 + x30))) - (((uint64_t)x14 * x16) + ((uint64_t)x16 * x14)));
- uint64_t x33 = ((((uint64_t)(x12 + x28) * (x16 + x29)) + (((uint64_t)(x14 + x30) * (x14 + x30)) + ((uint64_t)(x16 + x29) * (x12 + x28)))) - (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + ((uint64_t)x16 * x12))));
- uint64_t x34 = ((((uint64_t)(x10 + x26) * (x16 + x29)) + (((uint64_t)(x12 + x28) * (x14 + x30)) + (((uint64_t)(x14 + x30) * (x12 + x28)) + ((uint64_t)(x16 + x29) * (x10 + x26))))) - (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x16 * x10)))));
- uint64_t x35 = ((((uint64_t)(x8 + x24) * (x16 + x29)) + (((uint64_t)(x10 + x26) * (x14 + x30)) + (((uint64_t)(x12 + x28) * (x12 + x28)) + (((uint64_t)(x14 + x30) * (x10 + x26)) + ((uint64_t)(x16 + x29) * (x8 + x24)))))) - (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + ((uint64_t)x16 * x8))))));
- uint64_t x36 = ((((uint64_t)(x6 + x22) * (x16 + x29)) + (((uint64_t)(x8 + x24) * (x14 + x30)) + (((uint64_t)(x10 + x26) * (x12 + x28)) + (((uint64_t)(x12 + x28) * (x10 + x26)) + (((uint64_t)(x14 + x30) * (x8 + x24)) + ((uint64_t)(x16 + x29) * (x6 + x22))))))) - (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((uint64_t)x16 * x6)))))));
- uint64_t x37 = ((((uint64_t)(x4 + x20) * (x16 + x29)) + (((uint64_t)(x6 + x22) * (x14 + x30)) + (((uint64_t)(x8 + x24) * (x12 + x28)) + (((uint64_t)(x10 + x26) * (x10 + x26)) + (((uint64_t)(x12 + x28) * (x8 + x24)) + (((uint64_t)(x14 + x30) * (x6 + x22)) + ((uint64_t)(x16 + x29) * (x4 + x20)))))))) - (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((uint64_t)x16 * x4))))))));
- uint64_t x38 = ((((uint64_t)(x2 + x18) * (x16 + x29)) + (((uint64_t)(x4 + x20) * (x14 + x30)) + (((uint64_t)(x6 + x22) * (x12 + x28)) + (((uint64_t)(x8 + x24) * (x10 + x26)) + (((uint64_t)(x10 + x26) * (x8 + x24)) + (((uint64_t)(x12 + x28) * (x6 + x22)) + (((uint64_t)(x14 + x30) * (x4 + x20)) + ((uint64_t)(x16 + x29) * (x2 + x18))))))))) - (((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))));
- uint64_t x39 = ((((uint64_t)(x2 + x18) * (x14 + x30)) + (((uint64_t)(x4 + x20) * (x12 + x28)) + (((uint64_t)(x6 + x22) * (x10 + x26)) + (((uint64_t)(x8 + x24) * (x8 + x24)) + (((uint64_t)(x10 + x26) * (x6 + x22)) + (((uint64_t)(x12 + x28) * (x4 + x20)) + ((uint64_t)(x14 + x30) * (x2 + x18)))))))) - (((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))));
- uint64_t x40 = ((((uint64_t)(x2 + x18) * (x12 + x28)) + (((uint64_t)(x4 + x20) * (x10 + x26)) + (((uint64_t)(x6 + x22) * (x8 + x24)) + (((uint64_t)(x8 + x24) * (x6 + x22)) + (((uint64_t)(x10 + x26) * (x4 + x20)) + ((uint64_t)(x12 + x28) * (x2 + x18))))))) - (((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))));
- uint64_t x41 = ((((uint64_t)(x2 + x18) * (x10 + x26)) + (((uint64_t)(x4 + x20) * (x8 + x24)) + (((uint64_t)(x6 + x22) * (x6 + x22)) + (((uint64_t)(x8 + x24) * (x4 + x20)) + ((uint64_t)(x10 + x26) * (x2 + x18)))))) - (((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))));
- uint64_t x42 = ((((uint64_t)(x2 + x18) * (x8 + x24)) + (((uint64_t)(x4 + x20) * (x6 + x22)) + (((uint64_t)(x6 + x22) * (x4 + x20)) + ((uint64_t)(x8 + x24) * (x2 + x18))))) - (((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))));
- uint64_t x43 = ((((uint64_t)(x2 + x18) * (x6 + x22)) + (((uint64_t)(x4 + x20) * (x4 + x20)) + ((uint64_t)(x6 + x22) * (x2 + x18)))) - (((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))));
- uint64_t x44 = ((((uint64_t)(x2 + x18) * (x4 + x20)) + ((uint64_t)(x4 + x20) * (x2 + x18))) - (((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)));
- uint64_t x45 = (((uint64_t)(x2 + x18) * (x2 + x18)) - ((uint64_t)x2 * x2));
- uint64_t x46 = (((((uint64_t)x16 * x16) + ((uint64_t)x29 * x29)) + x39) + x31);
- uint64_t x47 = ((((((uint64_t)x14 * x16) + ((uint64_t)x16 * x14)) + (((uint64_t)x30 * x29) + ((uint64_t)x29 * x30))) + x40) + x32);
- uint64_t x48 = ((((((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + ((uint64_t)x16 * x12))) + (((uint64_t)x28 * x29) + (((uint64_t)x30 * x30) + ((uint64_t)x29 * x28)))) + x41) + x33);
- uint64_t x49 = ((((((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x16 * x10)))) + (((uint64_t)x26 * x29) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + ((uint64_t)x29 * x26))))) + x42) + x34);
- uint64_t x50 = ((((((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + ((uint64_t)x16 * x8))))) + (((uint64_t)x24 * x29) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + ((uint64_t)x29 * x24)))))) + x43) + x35);
- uint64_t x51 = ((((((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((uint64_t)x16 * x6)))))) + (((uint64_t)x22 * x29) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + ((uint64_t)x29 * x22))))))) + x44) + x36);
- uint64_t x52 = ((((((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((uint64_t)x16 * x4))))))) + (((uint64_t)x20 * x29) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + ((uint64_t)x29 * x20)))))))) + x45) + x37);
- uint64_t x53 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (((uint64_t)x18 * x29) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + ((uint64_t)x29 * x18)))))))));
- uint64_t x54 = (((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + ((uint64_t)x30 * x18)))))))) + x31);
- uint64_t x55 = (((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + ((uint64_t)x28 * x18))))))) + x32);
- uint64_t x56 = (((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + ((uint64_t)x26 * x18)))))) + x33);
- uint64_t x57 = (((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((uint64_t)x24 * x18))))) + x34);
- uint64_t x58 = (((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + ((uint64_t)x22 * x18)))) + x35);
- uint64_t x59 = (((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x18 * x20) + ((uint64_t)x20 * x18))) + x36);
- uint64_t x60 = ((((uint64_t)x2 * x2) + ((uint64_t)x18 * x18)) + x37);
- uint64_t x61 = (x53 >> 0x1a);
- uint32_t x62 = ((uint32_t)x53 & 0x3ffffff);
- uint64_t x63 = (x38 >> 0x1a);
- uint32_t x64 = ((uint32_t)x38 & 0x3ffffff);
- uint64_t x65 = ((0x4000000 * x63) + x64);
- uint64_t x66 = (x65 >> 0x1a);
- uint32_t x67 = ((uint32_t)x65 & 0x3ffffff);
- uint64_t x68 = ((x61 + x52) + x66);
- uint64_t x69 = (x68 >> 0x1a);
- uint32_t x70 = ((uint32_t)x68 & 0x3ffffff);
- uint64_t x71 = (x60 + x66);
- uint64_t x72 = (x71 >> 0x1a);
- uint32_t x73 = ((uint32_t)x71 & 0x3ffffff);
- uint64_t x74 = (x69 + x51);
- uint64_t x75 = (x74 >> 0x1a);
- uint32_t x76 = ((uint32_t)x74 & 0x3ffffff);
- uint64_t x77 = (x72 + x59);
- uint64_t x78 = (x77 >> 0x1a);
- uint32_t x79 = ((uint32_t)x77 & 0x3ffffff);
- uint64_t x80 = (x75 + x50);
- uint64_t x81 = (x80 >> 0x1a);
- uint32_t x82 = ((uint32_t)x80 & 0x3ffffff);
- uint64_t x83 = (x78 + x58);
- uint64_t x84 = (x83 >> 0x1a);
- uint32_t x85 = ((uint32_t)x83 & 0x3ffffff);
- uint64_t x86 = (x81 + x49);
- uint64_t x87 = (x86 >> 0x1a);
- uint32_t x88 = ((uint32_t)x86 & 0x3ffffff);
- uint64_t x89 = (x84 + x57);
- uint64_t x90 = (x89 >> 0x1a);
- uint32_t x91 = ((uint32_t)x89 & 0x3ffffff);
- uint64_t x92 = (x87 + x48);
- uint64_t x93 = (x92 >> 0x1a);
- uint32_t x94 = ((uint32_t)x92 & 0x3ffffff);
- uint64_t x95 = (x90 + x56);
- uint64_t x96 = (x95 >> 0x1a);
- uint32_t x97 = ((uint32_t)x95 & 0x3ffffff);
- uint64_t x98 = (x93 + x47);
- uint64_t x99 = (x98 >> 0x1a);
- uint32_t x100 = ((uint32_t)x98 & 0x3ffffff);
- uint64_t x101 = (x96 + x55);
- uint64_t x102 = (x101 >> 0x1a);
- uint32_t x103 = ((uint32_t)x101 & 0x3ffffff);
- uint64_t x104 = (x99 + x46);
- uint64_t x105 = (x104 >> 0x1a);
- uint32_t x106 = ((uint32_t)x104 & 0x3ffffff);
- uint64_t x107 = (x102 + x54);
- uint64_t x108 = (x107 >> 0x1a);
- uint32_t x109 = ((uint32_t)x107 & 0x3ffffff);
- uint64_t x110 = (x105 + x67);
- uint32_t x111 = (uint32_t) (x110 >> 0x1a);
- uint32_t x112 = ((uint32_t)x110 & 0x3ffffff);
- uint64_t x113 = (x108 + x62);
- uint32_t x114 = (uint32_t) (x113 >> 0x1a);
- uint32_t x115 = ((uint32_t)x113 & 0x3ffffff);
- uint64_t x116 = (((uint64_t)0x4000000 * x111) + x112);
- uint32_t x117 = (uint32_t) (x116 >> 0x1a);
- uint32_t x118 = ((uint32_t)x116 & 0x3ffffff);
- uint32_t x119 = ((x114 + x70) + x117);
- uint32_t x120 = (x119 >> 0x1a);
- uint32_t x121 = (x119 & 0x3ffffff);
- uint32_t x122 = (x73 + x117);
- uint32_t x123 = (x122 >> 0x1a);
- uint32_t x124 = (x122 & 0x3ffffff);
- return (Return x118, Return x106, Return x100, Return x94, Return x88, Return x82, (x120 + x76), Return x121, Return x115, Return x109, Return x103, Return x97, Return x91, Return x85, (x123 + x79), Return x124))
-x
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e416m2e208m1_16limbs/fesquareDisplay.v b/src/Specific/solinas32_2e416m2e208m1_16limbs/fesquareDisplay.v
deleted file mode 100644
index e9fa6f1ac..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_16limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e416m2e208m1_16limbs/fesub.c b/src/Specific/solinas32_2e416m2e208m1_16limbs/fesub.c
deleted file mode 100644
index 2dbde5ca0..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/fesub.c
+++ /dev/null
@@ -1,51 +0,0 @@
-static void fesub(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- out[0] = ((0x7fffffe + x5) - x35);
- out[1] = ((0x7fffffe + x7) - x37);
- out[2] = ((0x7fffffe + x9) - x39);
- out[3] = ((0x7fffffe + x11) - x41);
- out[4] = ((0x7fffffe + x13) - x43);
- out[5] = ((0x7fffffe + x15) - x45);
- out[6] = ((0x7fffffe + x17) - x47);
- out[7] = ((0x7fffffe + x19) - x49);
- out[8] = ((0x7fffffc + x21) - x51);
- out[9] = ((0x7fffffe + x23) - x53);
- out[10] = ((0x7fffffe + x25) - x55);
- out[11] = ((0x7fffffe + x27) - x57);
- out[12] = ((0x7fffffe + x29) - x59);
- out[13] = ((0x7fffffe + x31) - x61);
- out[14] = ((0x7fffffe + x33) - x63);
- out[15] = ((0x7fffffe + x32) - x62);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e416m2e208m1_16limbs/fesub.v b/src/Specific/solinas32_2e416m2e208m1_16limbs/fesub.v
deleted file mode 100644
index c01cb30b1..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_16limbs.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_2e416m2e208m1_16limbs/fesubDisplay.log b/src/Specific/solinas32_2e416m2e208m1_16limbs/fesubDisplay.log
deleted file mode 100644
index b2bdd0bf6..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- (((0x7fffffe + x32) - x62), ((0x7fffffe + x33) - x63), ((0x7fffffe + x31) - x61), ((0x7fffffe + x29) - x59), ((0x7fffffe + x27) - x57), ((0x7fffffe + x25) - x55), ((0x7fffffe + x23) - x53), ((0x7fffffc + x21) - x51), ((0x7fffffe + x19) - x49), ((0x7fffffe + x17) - x47), ((0x7fffffe + x15) - x45), ((0x7fffffe + x13) - x43), ((0x7fffffe + x11) - x41), ((0x7fffffe + x9) - x39), ((0x7fffffe + x7) - x37), ((0x7fffffe + x5) - x35)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e416m2e208m1_16limbs/fesubDisplay.v b/src/Specific/solinas32_2e416m2e208m1_16limbs/fesubDisplay.v
deleted file mode 100644
index 84a083043..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_16limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e416m2e208m1_16limbs/freeze.c b/src/Specific/solinas32_2e416m2e208m1_16limbs/freeze.c
deleted file mode 100644
index ae9d0fc2e..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/freeze.c
+++ /dev/null
@@ -1,84 +0,0 @@
-static void freeze(uint32_t out[16], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffff);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x4, 0x3ffffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x6, 0x3ffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x8, 0x3ffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x10, 0x3ffffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x12, 0x3ffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x14, 0x3ffffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x16, 0x3ffffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x18, 0x3fffffe);
- { uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x20, 0x3ffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x22, 0x3ffffff);
- { uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x24, 0x3ffffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x26, 0x3ffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x28, 0x3ffffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x30, 0x3ffffff);
- { uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x29, 0x3ffffff);
- { uint32_t x79 = cmovznz32(x78, 0x0, 0xffffffff);
- { uint32_t x80 = (x79 & 0x3ffffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x32, Return x80);
- { uint32_t x84 = (x79 & 0x3ffffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x35, Return x84);
- { uint32_t x88 = (x79 & 0x3ffffff);
- { uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x38, Return x88);
- { uint32_t x92 = (x79 & 0x3ffffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x41, Return x92);
- { uint32_t x96 = (x79 & 0x3ffffff);
- { uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x44, Return x96);
- { uint32_t x100 = (x79 & 0x3ffffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x47, Return x100);
- { uint32_t x104 = (x79 & 0x3ffffff);
- { uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x50, Return x104);
- { uint32_t x108 = (x79 & 0x3ffffff);
- { uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x53, Return x108);
- { uint32_t x112 = (x79 & 0x3fffffe);
- { uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x56, Return x112);
- { uint32_t x116 = (x79 & 0x3ffffff);
- { uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x59, Return x116);
- { uint32_t x120 = (x79 & 0x3ffffff);
- { uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x62, Return x120);
- { uint32_t x124 = (x79 & 0x3ffffff);
- { uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x65, Return x124);
- { uint32_t x128 = (x79 & 0x3ffffff);
- { uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x68, Return x128);
- { uint32_t x132 = (x79 & 0x3ffffff);
- { uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x71, Return x132);
- { uint32_t x136 = (x79 & 0x3ffffff);
- { uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x74, Return x136);
- { uint32_t x140 = (x79 & 0x3ffffff);
- { uint32_t x142, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x77, Return x140);
- out[0] = x82;
- out[1] = x86;
- out[2] = x90;
- out[3] = x94;
- out[4] = x98;
- out[5] = x102;
- out[6] = x106;
- out[7] = x110;
- out[8] = x114;
- out[9] = x118;
- out[10] = x122;
- out[11] = x126;
- out[12] = x130;
- out[13] = x134;
- out[14] = x138;
- out[15] = x142;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e416m2e208m1_16limbs/freeze.v b/src/Specific/solinas32_2e416m2e208m1_16limbs/freeze.v
deleted file mode 100644
index f4833cbc6..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_16limbs.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_2e416m2e208m1_16limbs/freezeDisplay.log b/src/Specific/solinas32_2e416m2e208m1_16limbs/freezeDisplay.log
deleted file mode 100644
index 22cb7e523..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/freezeDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffff);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x4, 0x3ffffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x6, 0x3ffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x8, 0x3ffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x10, 0x3ffffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x12, 0x3ffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x14, 0x3ffffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x16, 0x3ffffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x18, 0x3fffffe);
- uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x20, 0x3ffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x22, 0x3ffffff);
- uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x24, 0x3ffffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x26, 0x3ffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x28, 0x3ffffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x30, 0x3ffffff);
- uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x29, 0x3ffffff);
- uint32_t x79 = cmovznz32(x78, 0x0, 0xffffffff);
- uint32_t x80 = (x79 & 0x3ffffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x32, Return x80);
- uint32_t x84 = (x79 & 0x3ffffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x35, Return x84);
- uint32_t x88 = (x79 & 0x3ffffff);
- uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x38, Return x88);
- uint32_t x92 = (x79 & 0x3ffffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x41, Return x92);
- uint32_t x96 = (x79 & 0x3ffffff);
- uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x44, Return x96);
- uint32_t x100 = (x79 & 0x3ffffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x47, Return x100);
- uint32_t x104 = (x79 & 0x3ffffff);
- uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x50, Return x104);
- uint32_t x108 = (x79 & 0x3ffffff);
- uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x53, Return x108);
- uint32_t x112 = (x79 & 0x3fffffe);
- uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x56, Return x112);
- uint32_t x116 = (x79 & 0x3ffffff);
- uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x59, Return x116);
- uint32_t x120 = (x79 & 0x3ffffff);
- uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x62, Return x120);
- uint32_t x124 = (x79 & 0x3ffffff);
- uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x65, Return x124);
- uint32_t x128 = (x79 & 0x3ffffff);
- uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x68, Return x128);
- uint32_t x132 = (x79 & 0x3ffffff);
- uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x71, Return x132);
- uint32_t x136 = (x79 & 0x3ffffff);
- uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x74, Return x136);
- uint32_t x140 = (x79 & 0x3ffffff);
- uint32_t x142, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x77, Return x140);
- (Return x142, Return x138, Return x134, Return x130, Return x126, Return x122, Return x118, Return x114, Return x110, Return x106, Return x102, Return x98, Return x94, Return x90, Return x86, Return x82))
-x
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e416m2e208m1_16limbs/freezeDisplay.v b/src/Specific/solinas32_2e416m2e208m1_16limbs/freezeDisplay.v
deleted file mode 100644
index 1ead1cf9c..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_16limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e416m2e208m1_16limbs/py_interpreter.sh b/src/Specific/solinas32_2e416m2e208m1_16limbs/py_interpreter.sh
deleted file mode 100755
index b52e08b04..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_16limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**416 - 2**208 - 1' -Dmodulus_bytes='26' -Da24='121665'
diff --git a/src/Specific/solinas32_2e416m2e208m1_18limbs/CurveParameters.v b/src/Specific/solinas32_2e416m2e208m1_18limbs/CurveParameters.v
deleted file mode 100644
index 5911aa834..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^416 - 2^208 - 1
-Base: 23 + 1/9
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 18%nat;
- base := 23 + 1/9;
- bitwidth := 32;
- s := 2^416;
- c := [(1, 1); (2^208, 1)];
- carry_chains := Some [[8; 17]; [9; 0; 10; 1; 11; 2; 12; 3; 13; 4; 14; 5; 15; 6; 16; 7; 17; 8]; [9; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- 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_2e416m2e208m1_18limbs/Synthesis.v b/src/Specific/solinas32_2e416m2e208m1_18limbs/Synthesis.v
deleted file mode 100644
index 7e917b7c6..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_18limbs.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_2e416m2e208m1_18limbs/compiler.sh b/src/Specific/solinas32_2e416m2e208m1_18limbs/compiler.sh
deleted file mode 100755
index 405f92ef2..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,23,23,23,23,23,23,23,23,24,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' "$@"
diff --git a/src/Specific/solinas32_2e416m2e208m1_18limbs/compilerxx.sh b/src/Specific/solinas32_2e416m2e208m1_18limbs/compilerxx.sh
deleted file mode 100755
index eb8d349d7..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,23,23,23,23,23,23,23,23,24,23,23,23,23,23,23,23,23}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' "$@"
diff --git a/src/Specific/solinas32_2e416m2e208m1_18limbs/feadd.c b/src/Specific/solinas32_2e416m2e208m1_18limbs/feadd.c
deleted file mode 100644
index 7b8380410..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/feadd.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void feadd(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- out[0] = (x5 + x39);
- out[1] = (x7 + x41);
- out[2] = (x9 + x43);
- out[3] = (x11 + x45);
- out[4] = (x13 + x47);
- out[5] = (x15 + x49);
- out[6] = (x17 + x51);
- out[7] = (x19 + x53);
- out[8] = (x21 + x55);
- out[9] = (x23 + x57);
- out[10] = (x25 + x59);
- out[11] = (x27 + x61);
- out[12] = (x29 + x63);
- out[13] = (x31 + x65);
- out[14] = (x33 + x67);
- out[15] = (x35 + x69);
- out[16] = (x37 + x71);
- out[17] = (x36 + x70);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e416m2e208m1_18limbs/feadd.v b/src/Specific/solinas32_2e416m2e208m1_18limbs/feadd.v
deleted file mode 100644
index e079c73d9..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_18limbs.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_2e416m2e208m1_18limbs/feaddDisplay.log b/src/Specific/solinas32_2e416m2e208m1_18limbs/feaddDisplay.log
deleted file mode 100644
index 5e9c243f4..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- ((x36 + x70), (x37 + x71), (x35 + x69), (x33 + x67), (x31 + x65), (x29 + x63), (x27 + x61), (x25 + x59), (x23 + x57), (x21 + x55), (x19 + x53), (x17 + x51), (x15 + x49), (x13 + x47), (x11 + x45), (x9 + x43), (x7 + x41), (x5 + x39)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e416m2e208m1_18limbs/feaddDisplay.v b/src/Specific/solinas32_2e416m2e208m1_18limbs/feaddDisplay.v
deleted file mode 100644
index 69af2d2bc..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_18limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e416m2e208m1_18limbs/fecarry.v b/src/Specific/solinas32_2e416m2e208m1_18limbs/fecarry.v
deleted file mode 100644
index 9f2dc9c69..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_18limbs.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_2e416m2e208m1_18limbs/fecarryDisplay.v b/src/Specific/solinas32_2e416m2e208m1_18limbs/fecarryDisplay.v
deleted file mode 100644
index e453b5a0a..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_18limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e416m2e208m1_18limbs/femul.c b/src/Specific/solinas32_2e416m2e208m1_18limbs/femul.c
deleted file mode 100644
index 93362e493..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/femul.c
+++ /dev/null
@@ -1,161 +0,0 @@
-static void femul(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- { uint64_t x72 = (((uint64_t)(x21 + x36) * (x55 + x70)) - ((uint64_t)x21 * x55));
- { uint64_t x73 = ((((uint64_t)(x19 + x37) * (x55 + x70)) + ((uint64_t)(x21 + x36) * (x53 + x71))) - (((uint64_t)x19 * x55) + ((uint64_t)x21 * x53)));
- { uint64_t x74 = ((((uint64_t)(x17 + x35) * (x55 + x70)) + (((uint64_t)(x19 + x37) * (x53 + x71)) + ((uint64_t)(x21 + x36) * (x51 + x69)))) - (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + ((uint64_t)x21 * x51))));
- { uint64_t x75 = ((((uint64_t)(x15 + x33) * (x55 + x70)) + (((uint64_t)(x17 + x35) * (x53 + x71)) + (((uint64_t)(x19 + x37) * (x51 + x69)) + ((uint64_t)(x21 + x36) * (x49 + x67))))) - (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + ((uint64_t)x21 * x49)))));
- { uint64_t x76 = ((((uint64_t)(x13 + x31) * (x55 + x70)) + (((uint64_t)(x15 + x33) * (x53 + x71)) + (((uint64_t)(x17 + x35) * (x51 + x69)) + (((uint64_t)(x19 + x37) * (x49 + x67)) + ((uint64_t)(x21 + x36) * (x47 + x65)))))) - (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + ((uint64_t)x21 * x47))))));
- { uint64_t x77 = ((((uint64_t)(x11 + x29) * (x55 + x70)) + (((uint64_t)(x13 + x31) * (x53 + x71)) + (((uint64_t)(x15 + x33) * (x51 + x69)) + (((uint64_t)(x17 + x35) * (x49 + x67)) + (((uint64_t)(x19 + x37) * (x47 + x65)) + ((uint64_t)(x21 + x36) * (x45 + x63))))))) - (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + ((uint64_t)x21 * x45)))))));
- { uint64_t x78 = ((((uint64_t)(x9 + x27) * (x55 + x70)) + (((uint64_t)(x11 + x29) * (x53 + x71)) + (((uint64_t)(x13 + x31) * (x51 + x69)) + (((uint64_t)(x15 + x33) * (x49 + x67)) + (((uint64_t)(x17 + x35) * (x47 + x65)) + (((uint64_t)(x19 + x37) * (x45 + x63)) + ((uint64_t)(x21 + x36) * (x43 + x61)))))))) - (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + ((uint64_t)x21 * x43))))))));
- { uint64_t x79 = (((0x2 * ((uint64_t)(x7 + x25) * (x55 + x70))) + ((0x2 * ((uint64_t)(x9 + x27) * (x53 + x71))) + ((0x2 * ((uint64_t)(x11 + x29) * (x51 + x69))) + ((0x2 * ((uint64_t)(x13 + x31) * (x49 + x67))) + ((0x2 * ((uint64_t)(x15 + x33) * (x47 + x65))) + ((0x2 * ((uint64_t)(x17 + x35) * (x45 + x63))) + ((0x2 * ((uint64_t)(x19 + x37) * (x43 + x61))) + (0x2 * ((uint64_t)(x21 + x36) * (x41 + x59)))))))))) - ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + (0x2 * ((uint64_t)x21 * x41))))))))));
- { uint64_t x80 = ((((uint64_t)(x5 + x23) * (x55 + x70)) + ((0x2 * ((uint64_t)(x7 + x25) * (x53 + x71))) + ((0x2 * ((uint64_t)(x9 + x27) * (x51 + x69))) + ((0x2 * ((uint64_t)(x11 + x29) * (x49 + x67))) + ((0x2 * ((uint64_t)(x13 + x31) * (x47 + x65))) + ((0x2 * ((uint64_t)(x15 + x33) * (x45 + x63))) + ((0x2 * ((uint64_t)(x17 + x35) * (x43 + x61))) + ((0x2 * ((uint64_t)(x19 + x37) * (x41 + x59))) + ((uint64_t)(x21 + x36) * (x39 + x57)))))))))) - (((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((uint64_t)x21 * x39))))))))));
- { uint64_t x81 = ((((uint64_t)(x5 + x23) * (x53 + x71)) + ((0x2 * ((uint64_t)(x7 + x25) * (x51 + x69))) + ((0x2 * ((uint64_t)(x9 + x27) * (x49 + x67))) + ((0x2 * ((uint64_t)(x11 + x29) * (x47 + x65))) + ((0x2 * ((uint64_t)(x13 + x31) * (x45 + x63))) + ((0x2 * ((uint64_t)(x15 + x33) * (x43 + x61))) + ((0x2 * ((uint64_t)(x17 + x35) * (x41 + x59))) + ((uint64_t)(x19 + x37) * (x39 + x57))))))))) - (((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + ((uint64_t)x19 * x39)))))))));
- { uint64_t x82 = ((((uint64_t)(x5 + x23) * (x51 + x69)) + ((0x2 * ((uint64_t)(x7 + x25) * (x49 + x67))) + ((0x2 * ((uint64_t)(x9 + x27) * (x47 + x65))) + ((0x2 * ((uint64_t)(x11 + x29) * (x45 + x63))) + ((0x2 * ((uint64_t)(x13 + x31) * (x43 + x61))) + ((0x2 * ((uint64_t)(x15 + x33) * (x41 + x59))) + ((uint64_t)(x17 + x35) * (x39 + x57)))))))) - (((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((uint64_t)x17 * x39))))))));
- { uint64_t x83 = ((((uint64_t)(x5 + x23) * (x49 + x67)) + ((0x2 * ((uint64_t)(x7 + x25) * (x47 + x65))) + ((0x2 * ((uint64_t)(x9 + x27) * (x45 + x63))) + ((0x2 * ((uint64_t)(x11 + x29) * (x43 + x61))) + ((0x2 * ((uint64_t)(x13 + x31) * (x41 + x59))) + ((uint64_t)(x15 + x33) * (x39 + x57))))))) - (((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + ((0x2 * ((uint64_t)x11 * x43)) + ((0x2 * ((uint64_t)x13 * x41)) + ((uint64_t)x15 * x39)))))));
- { uint64_t x84 = ((((uint64_t)(x5 + x23) * (x47 + x65)) + ((0x2 * ((uint64_t)(x7 + x25) * (x45 + x63))) + ((0x2 * ((uint64_t)(x9 + x27) * (x43 + x61))) + ((0x2 * ((uint64_t)(x11 + x29) * (x41 + x59))) + ((uint64_t)(x13 + x31) * (x39 + x57)))))) - (((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((uint64_t)x13 * x39))))));
- { uint64_t x85 = ((((uint64_t)(x5 + x23) * (x45 + x63)) + ((0x2 * ((uint64_t)(x7 + x25) * (x43 + x61))) + ((0x2 * ((uint64_t)(x9 + x27) * (x41 + x59))) + ((uint64_t)(x11 + x29) * (x39 + x57))))) - (((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((uint64_t)x11 * x39)))));
- { uint64_t x86 = ((((uint64_t)(x5 + x23) * (x43 + x61)) + ((0x2 * ((uint64_t)(x7 + x25) * (x41 + x59))) + ((uint64_t)(x9 + x27) * (x39 + x57)))) - (((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((uint64_t)x9 * x39))));
- { uint64_t x87 = ((((uint64_t)(x5 + x23) * (x41 + x59)) + ((uint64_t)(x7 + x25) * (x39 + x57))) - (((uint64_t)x5 * x41) + ((uint64_t)x7 * x39)));
- { uint64_t x88 = (((uint64_t)(x5 + x23) * (x39 + x57)) - ((uint64_t)x5 * x39));
- { uint64_t x89 = (((((uint64_t)x21 * x55) + ((uint64_t)x36 * x70)) + x81) + x72);
- { uint64_t x90 = ((((((uint64_t)x19 * x55) + ((uint64_t)x21 * x53)) + (((uint64_t)x37 * x70) + ((uint64_t)x36 * x71))) + x82) + x73);
- { uint64_t x91 = ((((((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + ((uint64_t)x21 * x51))) + (((uint64_t)x35 * x70) + (((uint64_t)x37 * x71) + ((uint64_t)x36 * x69)))) + x83) + x74);
- { uint64_t x92 = ((((((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + ((uint64_t)x21 * x49)))) + (((uint64_t)x33 * x70) + (((uint64_t)x35 * x71) + (((uint64_t)x37 * x69) + ((uint64_t)x36 * x67))))) + x84) + x75);
- { uint64_t x93 = ((((((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + ((uint64_t)x21 * x47))))) + (((uint64_t)x31 * x70) + (((uint64_t)x33 * x71) + (((uint64_t)x35 * x69) + (((uint64_t)x37 * x67) + ((uint64_t)x36 * x65)))))) + x85) + x76);
- { uint64_t x94 = ((((((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + ((uint64_t)x21 * x45)))))) + (((uint64_t)x29 * x70) + (((uint64_t)x31 * x71) + (((uint64_t)x33 * x69) + (((uint64_t)x35 * x67) + (((uint64_t)x37 * x65) + ((uint64_t)x36 * x63))))))) + x86) + x77);
- { uint64_t x95 = ((((((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + ((uint64_t)x21 * x43))))))) + (((uint64_t)x27 * x70) + (((uint64_t)x29 * x71) + (((uint64_t)x31 * x69) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + (((uint64_t)x37 * x63) + ((uint64_t)x36 * x61)))))))) + x87) + x78);
- { uint64_t x96 = (((((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + (0x2 * ((uint64_t)x21 * x41))))))))) + ((0x2 * ((uint64_t)x25 * x70)) + ((0x2 * ((uint64_t)x27 * x71)) + ((0x2 * ((uint64_t)x29 * x69)) + ((0x2 * ((uint64_t)x31 * x67)) + ((0x2 * ((uint64_t)x33 * x65)) + ((0x2 * ((uint64_t)x35 * x63)) + ((0x2 * ((uint64_t)x37 * x61)) + (0x2 * ((uint64_t)x36 * x59)))))))))) + x88) + x79);
- { uint64_t x97 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((uint64_t)x21 * x39))))))))) + (((uint64_t)x23 * x70) + ((0x2 * ((uint64_t)x25 * x71)) + ((0x2 * ((uint64_t)x27 * x69)) + ((0x2 * ((uint64_t)x29 * x67)) + ((0x2 * ((uint64_t)x31 * x65)) + ((0x2 * ((uint64_t)x33 * x63)) + ((0x2 * ((uint64_t)x35 * x61)) + ((0x2 * ((uint64_t)x37 * x59)) + ((uint64_t)x36 * x57))))))))));
- { uint64_t x98 = (((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + ((uint64_t)x19 * x39)))))))) + (((uint64_t)x23 * x71) + ((0x2 * ((uint64_t)x25 * x69)) + ((0x2 * ((uint64_t)x27 * x67)) + ((0x2 * ((uint64_t)x29 * x65)) + ((0x2 * ((uint64_t)x31 * x63)) + ((0x2 * ((uint64_t)x33 * x61)) + ((0x2 * ((uint64_t)x35 * x59)) + ((uint64_t)x37 * x57))))))))) + x72);
- { uint64_t x99 = (((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((uint64_t)x17 * x39))))))) + (((uint64_t)x23 * x69) + ((0x2 * ((uint64_t)x25 * x67)) + ((0x2 * ((uint64_t)x27 * x65)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + ((uint64_t)x35 * x57)))))))) + x73);
- { uint64_t x100 = (((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + ((0x2 * ((uint64_t)x11 * x43)) + ((0x2 * ((uint64_t)x13 * x41)) + ((uint64_t)x15 * x39)))))) + (((uint64_t)x23 * x67) + ((0x2 * ((uint64_t)x25 * x65)) + ((0x2 * ((uint64_t)x27 * x63)) + ((0x2 * ((uint64_t)x29 * x61)) + ((0x2 * ((uint64_t)x31 * x59)) + ((uint64_t)x33 * x57))))))) + x74);
- { uint64_t x101 = (((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((uint64_t)x13 * x39))))) + (((uint64_t)x23 * x65) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + ((uint64_t)x31 * x57)))))) + x75);
- { uint64_t x102 = (((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((uint64_t)x11 * x39)))) + (((uint64_t)x23 * x63) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + ((uint64_t)x29 * x57))))) + x76);
- { uint64_t x103 = (((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((uint64_t)x9 * x39))) + (((uint64_t)x23 * x61) + ((0x2 * ((uint64_t)x25 * x59)) + ((uint64_t)x27 * x57)))) + x77);
- { uint64_t x104 = (((((uint64_t)x5 * x41) + ((uint64_t)x7 * x39)) + (((uint64_t)x23 * x59) + ((uint64_t)x25 * x57))) + x78);
- { uint64_t x105 = ((((uint64_t)x5 * x39) + ((uint64_t)x23 * x57)) + x79);
- { uint32_t x106 = (uint32_t) (x97 >> 0x17);
- { uint32_t x107 = ((uint32_t)x97 & 0x7fffff);
- { uint64_t x108 = (x80 >> 0x17);
- { uint32_t x109 = ((uint32_t)x80 & 0x7fffff);
- { uint64_t x110 = ((0x800000 * x108) + x109);
- { uint64_t x111 = (x110 >> 0x17);
- { uint32_t x112 = ((uint32_t)x110 & 0x7fffff);
- { uint64_t x113 = ((x106 + x96) + x111);
- { uint64_t x114 = (x113 >> 0x18);
- { uint32_t x115 = ((uint32_t)x113 & 0xffffff);
- { uint64_t x116 = (x105 + x111);
- { uint32_t x117 = (uint32_t) (x116 >> 0x18);
- { uint32_t x118 = ((uint32_t)x116 & 0xffffff);
- { uint64_t x119 = (x114 + x95);
- { uint64_t x120 = (x119 >> 0x17);
- { uint32_t x121 = ((uint32_t)x119 & 0x7fffff);
- { uint64_t x122 = (x117 + x104);
- { uint32_t x123 = (uint32_t) (x122 >> 0x17);
- { uint32_t x124 = ((uint32_t)x122 & 0x7fffff);
- { uint64_t x125 = (x120 + x94);
- { uint64_t x126 = (x125 >> 0x17);
- { uint32_t x127 = ((uint32_t)x125 & 0x7fffff);
- { uint64_t x128 = (x123 + x103);
- { uint32_t x129 = (uint32_t) (x128 >> 0x17);
- { uint32_t x130 = ((uint32_t)x128 & 0x7fffff);
- { uint64_t x131 = (x126 + x93);
- { uint64_t x132 = (x131 >> 0x17);
- { uint32_t x133 = ((uint32_t)x131 & 0x7fffff);
- { uint64_t x134 = (x129 + x102);
- { uint32_t x135 = (uint32_t) (x134 >> 0x17);
- { uint32_t x136 = ((uint32_t)x134 & 0x7fffff);
- { uint64_t x137 = (x132 + x92);
- { uint64_t x138 = (x137 >> 0x17);
- { uint32_t x139 = ((uint32_t)x137 & 0x7fffff);
- { uint64_t x140 = (x135 + x101);
- { uint32_t x141 = (uint32_t) (x140 >> 0x17);
- { uint32_t x142 = ((uint32_t)x140 & 0x7fffff);
- { uint64_t x143 = (x138 + x91);
- { uint64_t x144 = (x143 >> 0x17);
- { uint32_t x145 = ((uint32_t)x143 & 0x7fffff);
- { uint64_t x146 = (x141 + x100);
- { uint32_t x147 = (uint32_t) (x146 >> 0x17);
- { uint32_t x148 = ((uint32_t)x146 & 0x7fffff);
- { uint64_t x149 = (x144 + x90);
- { uint64_t x150 = (x149 >> 0x17);
- { uint32_t x151 = ((uint32_t)x149 & 0x7fffff);
- { uint64_t x152 = (x147 + x99);
- { uint32_t x153 = (uint32_t) (x152 >> 0x17);
- { uint32_t x154 = ((uint32_t)x152 & 0x7fffff);
- { uint64_t x155 = (x150 + x89);
- { uint64_t x156 = (x155 >> 0x17);
- { uint32_t x157 = ((uint32_t)x155 & 0x7fffff);
- { uint64_t x158 = (x153 + x98);
- { uint32_t x159 = (uint32_t) (x158 >> 0x17);
- { uint32_t x160 = ((uint32_t)x158 & 0x7fffff);
- { uint64_t x161 = (x156 + x112);
- { uint32_t x162 = (uint32_t) (x161 >> 0x17);
- { uint32_t x163 = ((uint32_t)x161 & 0x7fffff);
- { uint32_t x164 = (x159 + x107);
- { uint32_t x165 = (x164 >> 0x17);
- { uint32_t x166 = (x164 & 0x7fffff);
- { uint64_t x167 = (((uint64_t)0x800000 * x162) + x163);
- { uint32_t x168 = (uint32_t) (x167 >> 0x17);
- { uint32_t x169 = ((uint32_t)x167 & 0x7fffff);
- { uint32_t x170 = ((x165 + x115) + x168);
- { uint32_t x171 = (x170 >> 0x18);
- { uint32_t x172 = (x170 & 0xffffff);
- { uint32_t x173 = (x118 + x168);
- { uint32_t x174 = (x173 >> 0x18);
- { uint32_t x175 = (x173 & 0xffffff);
- out[0] = x175;
- out[1] = (x174 + x124);
- out[2] = x130;
- out[3] = x136;
- out[4] = x142;
- out[5] = x148;
- out[6] = x154;
- out[7] = x160;
- out[8] = x166;
- out[9] = x172;
- out[10] = (x171 + x121);
- out[11] = x127;
- out[12] = x133;
- out[13] = x139;
- out[14] = x145;
- out[15] = x151;
- out[16] = x157;
- out[17] = x169;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e416m2e208m1_18limbs/femul.v b/src/Specific/solinas32_2e416m2e208m1_18limbs/femul.v
deleted file mode 100644
index 9045f1747..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_18limbs.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_2e416m2e208m1_18limbs/femulDisplay.log b/src/Specific/solinas32_2e416m2e208m1_18limbs/femulDisplay.log
deleted file mode 100644
index 809d34e5a..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/femulDisplay.log
+++ /dev/null
@@ -1,111 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- uint64_t x72 = (((uint64_t)(x21 + x36) * (x55 + x70)) - ((uint64_t)x21 * x55));
- uint64_t x73 = ((((uint64_t)(x19 + x37) * (x55 + x70)) + ((uint64_t)(x21 + x36) * (x53 + x71))) - (((uint64_t)x19 * x55) + ((uint64_t)x21 * x53)));
- uint64_t x74 = ((((uint64_t)(x17 + x35) * (x55 + x70)) + (((uint64_t)(x19 + x37) * (x53 + x71)) + ((uint64_t)(x21 + x36) * (x51 + x69)))) - (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + ((uint64_t)x21 * x51))));
- uint64_t x75 = ((((uint64_t)(x15 + x33) * (x55 + x70)) + (((uint64_t)(x17 + x35) * (x53 + x71)) + (((uint64_t)(x19 + x37) * (x51 + x69)) + ((uint64_t)(x21 + x36) * (x49 + x67))))) - (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + ((uint64_t)x21 * x49)))));
- uint64_t x76 = ((((uint64_t)(x13 + x31) * (x55 + x70)) + (((uint64_t)(x15 + x33) * (x53 + x71)) + (((uint64_t)(x17 + x35) * (x51 + x69)) + (((uint64_t)(x19 + x37) * (x49 + x67)) + ((uint64_t)(x21 + x36) * (x47 + x65)))))) - (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + ((uint64_t)x21 * x47))))));
- uint64_t x77 = ((((uint64_t)(x11 + x29) * (x55 + x70)) + (((uint64_t)(x13 + x31) * (x53 + x71)) + (((uint64_t)(x15 + x33) * (x51 + x69)) + (((uint64_t)(x17 + x35) * (x49 + x67)) + (((uint64_t)(x19 + x37) * (x47 + x65)) + ((uint64_t)(x21 + x36) * (x45 + x63))))))) - (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + ((uint64_t)x21 * x45)))))));
- uint64_t x78 = ((((uint64_t)(x9 + x27) * (x55 + x70)) + (((uint64_t)(x11 + x29) * (x53 + x71)) + (((uint64_t)(x13 + x31) * (x51 + x69)) + (((uint64_t)(x15 + x33) * (x49 + x67)) + (((uint64_t)(x17 + x35) * (x47 + x65)) + (((uint64_t)(x19 + x37) * (x45 + x63)) + ((uint64_t)(x21 + x36) * (x43 + x61)))))))) - (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + ((uint64_t)x21 * x43))))))));
- uint64_t x79 = (((0x2 * ((uint64_t)(x7 + x25) * (x55 + x70))) + ((0x2 * ((uint64_t)(x9 + x27) * (x53 + x71))) + ((0x2 * ((uint64_t)(x11 + x29) * (x51 + x69))) + ((0x2 * ((uint64_t)(x13 + x31) * (x49 + x67))) + ((0x2 * ((uint64_t)(x15 + x33) * (x47 + x65))) + ((0x2 * ((uint64_t)(x17 + x35) * (x45 + x63))) + ((0x2 * ((uint64_t)(x19 + x37) * (x43 + x61))) + (0x2 * ((uint64_t)(x21 + x36) * (x41 + x59)))))))))) - ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + (0x2 * ((uint64_t)x21 * x41))))))))));
- uint64_t x80 = ((((uint64_t)(x5 + x23) * (x55 + x70)) + ((0x2 * ((uint64_t)(x7 + x25) * (x53 + x71))) + ((0x2 * ((uint64_t)(x9 + x27) * (x51 + x69))) + ((0x2 * ((uint64_t)(x11 + x29) * (x49 + x67))) + ((0x2 * ((uint64_t)(x13 + x31) * (x47 + x65))) + ((0x2 * ((uint64_t)(x15 + x33) * (x45 + x63))) + ((0x2 * ((uint64_t)(x17 + x35) * (x43 + x61))) + ((0x2 * ((uint64_t)(x19 + x37) * (x41 + x59))) + ((uint64_t)(x21 + x36) * (x39 + x57)))))))))) - (((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((uint64_t)x21 * x39))))))))));
- uint64_t x81 = ((((uint64_t)(x5 + x23) * (x53 + x71)) + ((0x2 * ((uint64_t)(x7 + x25) * (x51 + x69))) + ((0x2 * ((uint64_t)(x9 + x27) * (x49 + x67))) + ((0x2 * ((uint64_t)(x11 + x29) * (x47 + x65))) + ((0x2 * ((uint64_t)(x13 + x31) * (x45 + x63))) + ((0x2 * ((uint64_t)(x15 + x33) * (x43 + x61))) + ((0x2 * ((uint64_t)(x17 + x35) * (x41 + x59))) + ((uint64_t)(x19 + x37) * (x39 + x57))))))))) - (((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + ((uint64_t)x19 * x39)))))))));
- uint64_t x82 = ((((uint64_t)(x5 + x23) * (x51 + x69)) + ((0x2 * ((uint64_t)(x7 + x25) * (x49 + x67))) + ((0x2 * ((uint64_t)(x9 + x27) * (x47 + x65))) + ((0x2 * ((uint64_t)(x11 + x29) * (x45 + x63))) + ((0x2 * ((uint64_t)(x13 + x31) * (x43 + x61))) + ((0x2 * ((uint64_t)(x15 + x33) * (x41 + x59))) + ((uint64_t)(x17 + x35) * (x39 + x57)))))))) - (((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((uint64_t)x17 * x39))))))));
- uint64_t x83 = ((((uint64_t)(x5 + x23) * (x49 + x67)) + ((0x2 * ((uint64_t)(x7 + x25) * (x47 + x65))) + ((0x2 * ((uint64_t)(x9 + x27) * (x45 + x63))) + ((0x2 * ((uint64_t)(x11 + x29) * (x43 + x61))) + ((0x2 * ((uint64_t)(x13 + x31) * (x41 + x59))) + ((uint64_t)(x15 + x33) * (x39 + x57))))))) - (((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + ((0x2 * ((uint64_t)x11 * x43)) + ((0x2 * ((uint64_t)x13 * x41)) + ((uint64_t)x15 * x39)))))));
- uint64_t x84 = ((((uint64_t)(x5 + x23) * (x47 + x65)) + ((0x2 * ((uint64_t)(x7 + x25) * (x45 + x63))) + ((0x2 * ((uint64_t)(x9 + x27) * (x43 + x61))) + ((0x2 * ((uint64_t)(x11 + x29) * (x41 + x59))) + ((uint64_t)(x13 + x31) * (x39 + x57)))))) - (((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((uint64_t)x13 * x39))))));
- uint64_t x85 = ((((uint64_t)(x5 + x23) * (x45 + x63)) + ((0x2 * ((uint64_t)(x7 + x25) * (x43 + x61))) + ((0x2 * ((uint64_t)(x9 + x27) * (x41 + x59))) + ((uint64_t)(x11 + x29) * (x39 + x57))))) - (((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((uint64_t)x11 * x39)))));
- uint64_t x86 = ((((uint64_t)(x5 + x23) * (x43 + x61)) + ((0x2 * ((uint64_t)(x7 + x25) * (x41 + x59))) + ((uint64_t)(x9 + x27) * (x39 + x57)))) - (((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((uint64_t)x9 * x39))));
- uint64_t x87 = ((((uint64_t)(x5 + x23) * (x41 + x59)) + ((uint64_t)(x7 + x25) * (x39 + x57))) - (((uint64_t)x5 * x41) + ((uint64_t)x7 * x39)));
- uint64_t x88 = (((uint64_t)(x5 + x23) * (x39 + x57)) - ((uint64_t)x5 * x39));
- uint64_t x89 = (((((uint64_t)x21 * x55) + ((uint64_t)x36 * x70)) + x81) + x72);
- uint64_t x90 = ((((((uint64_t)x19 * x55) + ((uint64_t)x21 * x53)) + (((uint64_t)x37 * x70) + ((uint64_t)x36 * x71))) + x82) + x73);
- uint64_t x91 = ((((((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + ((uint64_t)x21 * x51))) + (((uint64_t)x35 * x70) + (((uint64_t)x37 * x71) + ((uint64_t)x36 * x69)))) + x83) + x74);
- uint64_t x92 = ((((((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + ((uint64_t)x21 * x49)))) + (((uint64_t)x33 * x70) + (((uint64_t)x35 * x71) + (((uint64_t)x37 * x69) + ((uint64_t)x36 * x67))))) + x84) + x75);
- uint64_t x93 = ((((((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + ((uint64_t)x21 * x47))))) + (((uint64_t)x31 * x70) + (((uint64_t)x33 * x71) + (((uint64_t)x35 * x69) + (((uint64_t)x37 * x67) + ((uint64_t)x36 * x65)))))) + x85) + x76);
- uint64_t x94 = ((((((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + ((uint64_t)x21 * x45)))))) + (((uint64_t)x29 * x70) + (((uint64_t)x31 * x71) + (((uint64_t)x33 * x69) + (((uint64_t)x35 * x67) + (((uint64_t)x37 * x65) + ((uint64_t)x36 * x63))))))) + x86) + x77);
- uint64_t x95 = ((((((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + ((uint64_t)x21 * x43))))))) + (((uint64_t)x27 * x70) + (((uint64_t)x29 * x71) + (((uint64_t)x31 * x69) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + (((uint64_t)x37 * x63) + ((uint64_t)x36 * x61)))))))) + x87) + x78);
- uint64_t x96 = (((((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + (0x2 * ((uint64_t)x21 * x41))))))))) + ((0x2 * ((uint64_t)x25 * x70)) + ((0x2 * ((uint64_t)x27 * x71)) + ((0x2 * ((uint64_t)x29 * x69)) + ((0x2 * ((uint64_t)x31 * x67)) + ((0x2 * ((uint64_t)x33 * x65)) + ((0x2 * ((uint64_t)x35 * x63)) + ((0x2 * ((uint64_t)x37 * x61)) + (0x2 * ((uint64_t)x36 * x59)))))))))) + x88) + x79);
- uint64_t x97 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((uint64_t)x21 * x39))))))))) + (((uint64_t)x23 * x70) + ((0x2 * ((uint64_t)x25 * x71)) + ((0x2 * ((uint64_t)x27 * x69)) + ((0x2 * ((uint64_t)x29 * x67)) + ((0x2 * ((uint64_t)x31 * x65)) + ((0x2 * ((uint64_t)x33 * x63)) + ((0x2 * ((uint64_t)x35 * x61)) + ((0x2 * ((uint64_t)x37 * x59)) + ((uint64_t)x36 * x57))))))))));
- uint64_t x98 = (((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + ((uint64_t)x19 * x39)))))))) + (((uint64_t)x23 * x71) + ((0x2 * ((uint64_t)x25 * x69)) + ((0x2 * ((uint64_t)x27 * x67)) + ((0x2 * ((uint64_t)x29 * x65)) + ((0x2 * ((uint64_t)x31 * x63)) + ((0x2 * ((uint64_t)x33 * x61)) + ((0x2 * ((uint64_t)x35 * x59)) + ((uint64_t)x37 * x57))))))))) + x72);
- uint64_t x99 = (((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((uint64_t)x17 * x39))))))) + (((uint64_t)x23 * x69) + ((0x2 * ((uint64_t)x25 * x67)) + ((0x2 * ((uint64_t)x27 * x65)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + ((uint64_t)x35 * x57)))))))) + x73);
- uint64_t x100 = (((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + ((0x2 * ((uint64_t)x11 * x43)) + ((0x2 * ((uint64_t)x13 * x41)) + ((uint64_t)x15 * x39)))))) + (((uint64_t)x23 * x67) + ((0x2 * ((uint64_t)x25 * x65)) + ((0x2 * ((uint64_t)x27 * x63)) + ((0x2 * ((uint64_t)x29 * x61)) + ((0x2 * ((uint64_t)x31 * x59)) + ((uint64_t)x33 * x57))))))) + x74);
- uint64_t x101 = (((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((uint64_t)x13 * x39))))) + (((uint64_t)x23 * x65) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + ((uint64_t)x31 * x57)))))) + x75);
- uint64_t x102 = (((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((uint64_t)x11 * x39)))) + (((uint64_t)x23 * x63) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + ((uint64_t)x29 * x57))))) + x76);
- uint64_t x103 = (((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((uint64_t)x9 * x39))) + (((uint64_t)x23 * x61) + ((0x2 * ((uint64_t)x25 * x59)) + ((uint64_t)x27 * x57)))) + x77);
- uint64_t x104 = (((((uint64_t)x5 * x41) + ((uint64_t)x7 * x39)) + (((uint64_t)x23 * x59) + ((uint64_t)x25 * x57))) + x78);
- uint64_t x105 = ((((uint64_t)x5 * x39) + ((uint64_t)x23 * x57)) + x79);
- uint32_t x106 = (uint32_t) (x97 >> 0x17);
- uint32_t x107 = ((uint32_t)x97 & 0x7fffff);
- uint64_t x108 = (x80 >> 0x17);
- uint32_t x109 = ((uint32_t)x80 & 0x7fffff);
- uint64_t x110 = ((0x800000 * x108) + x109);
- uint64_t x111 = (x110 >> 0x17);
- uint32_t x112 = ((uint32_t)x110 & 0x7fffff);
- uint64_t x113 = ((x106 + x96) + x111);
- uint64_t x114 = (x113 >> 0x18);
- uint32_t x115 = ((uint32_t)x113 & 0xffffff);
- uint64_t x116 = (x105 + x111);
- uint32_t x117 = (uint32_t) (x116 >> 0x18);
- uint32_t x118 = ((uint32_t)x116 & 0xffffff);
- uint64_t x119 = (x114 + x95);
- uint64_t x120 = (x119 >> 0x17);
- uint32_t x121 = ((uint32_t)x119 & 0x7fffff);
- uint64_t x122 = (x117 + x104);
- uint32_t x123 = (uint32_t) (x122 >> 0x17);
- uint32_t x124 = ((uint32_t)x122 & 0x7fffff);
- uint64_t x125 = (x120 + x94);
- uint64_t x126 = (x125 >> 0x17);
- uint32_t x127 = ((uint32_t)x125 & 0x7fffff);
- uint64_t x128 = (x123 + x103);
- uint32_t x129 = (uint32_t) (x128 >> 0x17);
- uint32_t x130 = ((uint32_t)x128 & 0x7fffff);
- uint64_t x131 = (x126 + x93);
- uint64_t x132 = (x131 >> 0x17);
- uint32_t x133 = ((uint32_t)x131 & 0x7fffff);
- uint64_t x134 = (x129 + x102);
- uint32_t x135 = (uint32_t) (x134 >> 0x17);
- uint32_t x136 = ((uint32_t)x134 & 0x7fffff);
- uint64_t x137 = (x132 + x92);
- uint64_t x138 = (x137 >> 0x17);
- uint32_t x139 = ((uint32_t)x137 & 0x7fffff);
- uint64_t x140 = (x135 + x101);
- uint32_t x141 = (uint32_t) (x140 >> 0x17);
- uint32_t x142 = ((uint32_t)x140 & 0x7fffff);
- uint64_t x143 = (x138 + x91);
- uint64_t x144 = (x143 >> 0x17);
- uint32_t x145 = ((uint32_t)x143 & 0x7fffff);
- uint64_t x146 = (x141 + x100);
- uint32_t x147 = (uint32_t) (x146 >> 0x17);
- uint32_t x148 = ((uint32_t)x146 & 0x7fffff);
- uint64_t x149 = (x144 + x90);
- uint64_t x150 = (x149 >> 0x17);
- uint32_t x151 = ((uint32_t)x149 & 0x7fffff);
- uint64_t x152 = (x147 + x99);
- uint32_t x153 = (uint32_t) (x152 >> 0x17);
- uint32_t x154 = ((uint32_t)x152 & 0x7fffff);
- uint64_t x155 = (x150 + x89);
- uint64_t x156 = (x155 >> 0x17);
- uint32_t x157 = ((uint32_t)x155 & 0x7fffff);
- uint64_t x158 = (x153 + x98);
- uint32_t x159 = (uint32_t) (x158 >> 0x17);
- uint32_t x160 = ((uint32_t)x158 & 0x7fffff);
- uint64_t x161 = (x156 + x112);
- uint32_t x162 = (uint32_t) (x161 >> 0x17);
- uint32_t x163 = ((uint32_t)x161 & 0x7fffff);
- uint32_t x164 = (x159 + x107);
- uint32_t x165 = (x164 >> 0x17);
- uint32_t x166 = (x164 & 0x7fffff);
- uint64_t x167 = (((uint64_t)0x800000 * x162) + x163);
- uint32_t x168 = (uint32_t) (x167 >> 0x17);
- uint32_t x169 = ((uint32_t)x167 & 0x7fffff);
- uint32_t x170 = ((x165 + x115) + x168);
- uint32_t x171 = (x170 >> 0x18);
- uint32_t x172 = (x170 & 0xffffff);
- uint32_t x173 = (x118 + x168);
- uint32_t x174 = (x173 >> 0x18);
- uint32_t x175 = (x173 & 0xffffff);
- return (Return x169, Return x157, Return x151, Return x145, Return x139, Return x133, Return x127, (x171 + x121), Return x172, Return x166, Return x160, Return x154, Return x148, Return x142, Return x136, Return x130, (x174 + x124), Return x175))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e416m2e208m1_18limbs/femulDisplay.v b/src/Specific/solinas32_2e416m2e208m1_18limbs/femulDisplay.v
deleted file mode 100644
index 22592cc31..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_18limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e416m2e208m1_18limbs/fesquare.c b/src/Specific/solinas32_2e416m2e208m1_18limbs/fesquare.c
deleted file mode 100644
index 75da6d8ab..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/fesquare.c
+++ /dev/null
@@ -1,143 +0,0 @@
-static void fesquare(uint32_t out[18], const uint32_t in1[18]) {
- { const uint32_t x33 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x35 = (((uint64_t)(x18 + x33) * (x18 + x33)) - ((uint64_t)x18 * x18));
- { uint64_t x36 = ((((uint64_t)(x16 + x34) * (x18 + x33)) + ((uint64_t)(x18 + x33) * (x16 + x34))) - (((uint64_t)x16 * x18) + ((uint64_t)x18 * x16)));
- { uint64_t x37 = ((((uint64_t)(x14 + x32) * (x18 + x33)) + (((uint64_t)(x16 + x34) * (x16 + x34)) + ((uint64_t)(x18 + x33) * (x14 + x32)))) - (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + ((uint64_t)x18 * x14))));
- { uint64_t x38 = ((((uint64_t)(x12 + x30) * (x18 + x33)) + (((uint64_t)(x14 + x32) * (x16 + x34)) + (((uint64_t)(x16 + x34) * (x14 + x32)) + ((uint64_t)(x18 + x33) * (x12 + x30))))) - (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x18 * x12)))));
- { uint64_t x39 = ((((uint64_t)(x10 + x28) * (x18 + x33)) + (((uint64_t)(x12 + x30) * (x16 + x34)) + (((uint64_t)(x14 + x32) * (x14 + x32)) + (((uint64_t)(x16 + x34) * (x12 + x30)) + ((uint64_t)(x18 + x33) * (x10 + x28)))))) - (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + ((uint64_t)x18 * x10))))));
- { uint64_t x40 = ((((uint64_t)(x8 + x26) * (x18 + x33)) + (((uint64_t)(x10 + x28) * (x16 + x34)) + (((uint64_t)(x12 + x30) * (x14 + x32)) + (((uint64_t)(x14 + x32) * (x12 + x30)) + (((uint64_t)(x16 + x34) * (x10 + x28)) + ((uint64_t)(x18 + x33) * (x8 + x26))))))) - (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x18 * x8)))))));
- { uint64_t x41 = ((((uint64_t)(x6 + x24) * (x18 + x33)) + (((uint64_t)(x8 + x26) * (x16 + x34)) + (((uint64_t)(x10 + x28) * (x14 + x32)) + (((uint64_t)(x12 + x30) * (x12 + x30)) + (((uint64_t)(x14 + x32) * (x10 + x28)) + (((uint64_t)(x16 + x34) * (x8 + x26)) + ((uint64_t)(x18 + x33) * (x6 + x24)))))))) - (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((uint64_t)x18 * x6))))))));
- { uint64_t x42 = (((0x2 * ((uint64_t)(x4 + x22) * (x18 + x33))) + ((0x2 * ((uint64_t)(x6 + x24) * (x16 + x34))) + ((0x2 * ((uint64_t)(x8 + x26) * (x14 + x32))) + ((0x2 * ((uint64_t)(x10 + x28) * (x12 + x30))) + ((0x2 * ((uint64_t)(x12 + x30) * (x10 + x28))) + ((0x2 * ((uint64_t)(x14 + x32) * (x8 + x26))) + ((0x2 * ((uint64_t)(x16 + x34) * (x6 + x24))) + (0x2 * ((uint64_t)(x18 + x33) * (x4 + x22)))))))))) - ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x18 * x4))))))))));
- { uint64_t x43 = ((((uint64_t)(x2 + x20) * (x18 + x33)) + ((0x2 * ((uint64_t)(x4 + x22) * (x16 + x34))) + ((0x2 * ((uint64_t)(x6 + x24) * (x14 + x32))) + ((0x2 * ((uint64_t)(x8 + x26) * (x12 + x30))) + ((0x2 * ((uint64_t)(x10 + x28) * (x10 + x28))) + ((0x2 * ((uint64_t)(x12 + x30) * (x8 + x26))) + ((0x2 * ((uint64_t)(x14 + x32) * (x6 + x24))) + ((0x2 * ((uint64_t)(x16 + x34) * (x4 + x22))) + ((uint64_t)(x18 + x33) * (x2 + x20)))))))))) - (((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))));
- { uint64_t x44 = ((((uint64_t)(x2 + x20) * (x16 + x34)) + ((0x2 * ((uint64_t)(x4 + x22) * (x14 + x32))) + ((0x2 * ((uint64_t)(x6 + x24) * (x12 + x30))) + ((0x2 * ((uint64_t)(x8 + x26) * (x10 + x28))) + ((0x2 * ((uint64_t)(x10 + x28) * (x8 + x26))) + ((0x2 * ((uint64_t)(x12 + x30) * (x6 + x24))) + ((0x2 * ((uint64_t)(x14 + x32) * (x4 + x22))) + ((uint64_t)(x16 + x34) * (x2 + x20))))))))) - (((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))));
- { uint64_t x45 = ((((uint64_t)(x2 + x20) * (x14 + x32)) + ((0x2 * ((uint64_t)(x4 + x22) * (x12 + x30))) + ((0x2 * ((uint64_t)(x6 + x24) * (x10 + x28))) + ((0x2 * ((uint64_t)(x8 + x26) * (x8 + x26))) + ((0x2 * ((uint64_t)(x10 + x28) * (x6 + x24))) + ((0x2 * ((uint64_t)(x12 + x30) * (x4 + x22))) + ((uint64_t)(x14 + x32) * (x2 + x20)))))))) - (((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))));
- { uint64_t x46 = ((((uint64_t)(x2 + x20) * (x12 + x30)) + ((0x2 * ((uint64_t)(x4 + x22) * (x10 + x28))) + ((0x2 * ((uint64_t)(x6 + x24) * (x8 + x26))) + ((0x2 * ((uint64_t)(x8 + x26) * (x6 + x24))) + ((0x2 * ((uint64_t)(x10 + x28) * (x4 + x22))) + ((uint64_t)(x12 + x30) * (x2 + x20))))))) - (((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))));
- { uint64_t x47 = ((((uint64_t)(x2 + x20) * (x10 + x28)) + ((0x2 * ((uint64_t)(x4 + x22) * (x8 + x26))) + ((0x2 * ((uint64_t)(x6 + x24) * (x6 + x24))) + ((0x2 * ((uint64_t)(x8 + x26) * (x4 + x22))) + ((uint64_t)(x10 + x28) * (x2 + x20)))))) - (((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))));
- { uint64_t x48 = ((((uint64_t)(x2 + x20) * (x8 + x26)) + ((0x2 * ((uint64_t)(x4 + x22) * (x6 + x24))) + ((0x2 * ((uint64_t)(x6 + x24) * (x4 + x22))) + ((uint64_t)(x8 + x26) * (x2 + x20))))) - (((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))));
- { uint64_t x49 = ((((uint64_t)(x2 + x20) * (x6 + x24)) + ((0x2 * ((uint64_t)(x4 + x22) * (x4 + x22))) + ((uint64_t)(x6 + x24) * (x2 + x20)))) - (((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))));
- { uint64_t x50 = ((((uint64_t)(x2 + x20) * (x4 + x22)) + ((uint64_t)(x4 + x22) * (x2 + x20))) - (((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)));
- { uint64_t x51 = (((uint64_t)(x2 + x20) * (x2 + x20)) - ((uint64_t)x2 * x2));
- { uint64_t x52 = (((((uint64_t)x18 * x18) + ((uint64_t)x33 * x33)) + x44) + x35);
- { uint64_t x53 = ((((((uint64_t)x16 * x18) + ((uint64_t)x18 * x16)) + (((uint64_t)x34 * x33) + ((uint64_t)x33 * x34))) + x45) + x36);
- { uint64_t x54 = ((((((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + ((uint64_t)x18 * x14))) + (((uint64_t)x32 * x33) + (((uint64_t)x34 * x34) + ((uint64_t)x33 * x32)))) + x46) + x37);
- { uint64_t x55 = ((((((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x18 * x12)))) + (((uint64_t)x30 * x33) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + ((uint64_t)x33 * x30))))) + x47) + x38);
- { uint64_t x56 = ((((((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + ((uint64_t)x18 * x10))))) + (((uint64_t)x28 * x33) + (((uint64_t)x30 * x34) + (((uint64_t)x32 * x32) + (((uint64_t)x34 * x30) + ((uint64_t)x33 * x28)))))) + x48) + x39);
- { uint64_t x57 = ((((((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x18 * x8)))))) + (((uint64_t)x26 * x33) + (((uint64_t)x28 * x34) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + (((uint64_t)x34 * x28) + ((uint64_t)x33 * x26))))))) + x49) + x40);
- { uint64_t x58 = ((((((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((uint64_t)x18 * x6))))))) + (((uint64_t)x24 * x33) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + (((uint64_t)x30 * x30) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + ((uint64_t)x33 * x24)))))))) + x50) + x41);
- { uint64_t x59 = (((((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x18 * x4))))))))) + ((0x2 * ((uint64_t)x22 * x33)) + ((0x2 * ((uint64_t)x24 * x34)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + ((0x2 * ((uint64_t)x34 * x24)) + (0x2 * ((uint64_t)x33 * x22)))))))))) + x51) + x42);
- { uint64_t x60 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (((uint64_t)x20 * x33) + ((0x2 * ((uint64_t)x22 * x34)) + ((0x2 * ((uint64_t)x24 * x32)) + ((0x2 * ((uint64_t)x26 * x30)) + ((0x2 * ((uint64_t)x28 * x28)) + ((0x2 * ((uint64_t)x30 * x26)) + ((0x2 * ((uint64_t)x32 * x24)) + ((0x2 * ((uint64_t)x34 * x22)) + ((uint64_t)x33 * x20))))))))));
- { uint64_t x61 = (((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (((uint64_t)x20 * x34) + ((0x2 * ((uint64_t)x22 * x32)) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + ((0x2 * ((uint64_t)x32 * x22)) + ((uint64_t)x34 * x20))))))))) + x35);
- { uint64_t x62 = (((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (((uint64_t)x20 * x32) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + ((0x2 * ((uint64_t)x26 * x26)) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + ((uint64_t)x32 * x20)))))))) + x36);
- { uint64_t x63 = (((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (((uint64_t)x20 * x30) + ((0x2 * ((uint64_t)x22 * x28)) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + ((0x2 * ((uint64_t)x28 * x22)) + ((uint64_t)x30 * x20))))))) + x37);
- { uint64_t x64 = (((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (((uint64_t)x20 * x28) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + ((uint64_t)x28 * x20)))))) + x38);
- { uint64_t x65 = (((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (((uint64_t)x20 * x26) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + ((uint64_t)x26 * x20))))) + x39);
- { uint64_t x66 = (((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + ((uint64_t)x24 * x20)))) + x40);
- { uint64_t x67 = (((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x20 * x22) + ((uint64_t)x22 * x20))) + x41);
- { uint64_t x68 = ((((uint64_t)x2 * x2) + ((uint64_t)x20 * x20)) + x42);
- { uint32_t x69 = (uint32_t) (x60 >> 0x17);
- { uint32_t x70 = ((uint32_t)x60 & 0x7fffff);
- { uint64_t x71 = (x43 >> 0x17);
- { uint32_t x72 = ((uint32_t)x43 & 0x7fffff);
- { uint64_t x73 = ((0x800000 * x71) + x72);
- { uint64_t x74 = (x73 >> 0x17);
- { uint32_t x75 = ((uint32_t)x73 & 0x7fffff);
- { uint64_t x76 = ((x69 + x59) + x74);
- { uint64_t x77 = (x76 >> 0x18);
- { uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- { uint64_t x79 = (x68 + x74);
- { uint32_t x80 = (uint32_t) (x79 >> 0x18);
- { uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- { uint64_t x82 = (x77 + x58);
- { uint64_t x83 = (x82 >> 0x17);
- { uint32_t x84 = ((uint32_t)x82 & 0x7fffff);
- { uint64_t x85 = (x80 + x67);
- { uint32_t x86 = (uint32_t) (x85 >> 0x17);
- { uint32_t x87 = ((uint32_t)x85 & 0x7fffff);
- { uint64_t x88 = (x83 + x57);
- { uint64_t x89 = (x88 >> 0x17);
- { uint32_t x90 = ((uint32_t)x88 & 0x7fffff);
- { uint64_t x91 = (x86 + x66);
- { uint32_t x92 = (uint32_t) (x91 >> 0x17);
- { uint32_t x93 = ((uint32_t)x91 & 0x7fffff);
- { uint64_t x94 = (x89 + x56);
- { uint64_t x95 = (x94 >> 0x17);
- { uint32_t x96 = ((uint32_t)x94 & 0x7fffff);
- { uint64_t x97 = (x92 + x65);
- { uint32_t x98 = (uint32_t) (x97 >> 0x17);
- { uint32_t x99 = ((uint32_t)x97 & 0x7fffff);
- { uint64_t x100 = (x95 + x55);
- { uint64_t x101 = (x100 >> 0x17);
- { uint32_t x102 = ((uint32_t)x100 & 0x7fffff);
- { uint64_t x103 = (x98 + x64);
- { uint32_t x104 = (uint32_t) (x103 >> 0x17);
- { uint32_t x105 = ((uint32_t)x103 & 0x7fffff);
- { uint64_t x106 = (x101 + x54);
- { uint64_t x107 = (x106 >> 0x17);
- { uint32_t x108 = ((uint32_t)x106 & 0x7fffff);
- { uint64_t x109 = (x104 + x63);
- { uint32_t x110 = (uint32_t) (x109 >> 0x17);
- { uint32_t x111 = ((uint32_t)x109 & 0x7fffff);
- { uint64_t x112 = (x107 + x53);
- { uint64_t x113 = (x112 >> 0x17);
- { uint32_t x114 = ((uint32_t)x112 & 0x7fffff);
- { uint64_t x115 = (x110 + x62);
- { uint32_t x116 = (uint32_t) (x115 >> 0x17);
- { uint32_t x117 = ((uint32_t)x115 & 0x7fffff);
- { uint64_t x118 = (x113 + x52);
- { uint64_t x119 = (x118 >> 0x17);
- { uint32_t x120 = ((uint32_t)x118 & 0x7fffff);
- { uint64_t x121 = (x116 + x61);
- { uint32_t x122 = (uint32_t) (x121 >> 0x17);
- { uint32_t x123 = ((uint32_t)x121 & 0x7fffff);
- { uint64_t x124 = (x119 + x75);
- { uint32_t x125 = (uint32_t) (x124 >> 0x17);
- { uint32_t x126 = ((uint32_t)x124 & 0x7fffff);
- { uint32_t x127 = (x122 + x70);
- { uint32_t x128 = (x127 >> 0x17);
- { uint32_t x129 = (x127 & 0x7fffff);
- { uint64_t x130 = (((uint64_t)0x800000 * x125) + x126);
- { uint32_t x131 = (uint32_t) (x130 >> 0x17);
- { uint32_t x132 = ((uint32_t)x130 & 0x7fffff);
- { uint32_t x133 = ((x128 + x78) + x131);
- { uint32_t x134 = (x133 >> 0x18);
- { uint32_t x135 = (x133 & 0xffffff);
- { uint32_t x136 = (x81 + x131);
- { uint32_t x137 = (x136 >> 0x18);
- { uint32_t x138 = (x136 & 0xffffff);
- out[0] = x138;
- out[1] = (x137 + x87);
- out[2] = x93;
- out[3] = x99;
- out[4] = x105;
- out[5] = x111;
- out[6] = x117;
- out[7] = x123;
- out[8] = x129;
- out[9] = x135;
- out[10] = (x134 + x84);
- out[11] = x90;
- out[12] = x96;
- out[13] = x102;
- out[14] = x108;
- out[15] = x114;
- out[16] = x120;
- out[17] = x132;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e416m2e208m1_18limbs/fesquare.v b/src/Specific/solinas32_2e416m2e208m1_18limbs/fesquare.v
deleted file mode 100644
index d31b22958..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_18limbs.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_2e416m2e208m1_18limbs/fesquareDisplay.log b/src/Specific/solinas32_2e416m2e208m1_18limbs/fesquareDisplay.log
deleted file mode 100644
index e61df95c2..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,111 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x33, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x35 = (((uint64_t)(x18 + x33) * (x18 + x33)) - ((uint64_t)x18 * x18));
- uint64_t x36 = ((((uint64_t)(x16 + x34) * (x18 + x33)) + ((uint64_t)(x18 + x33) * (x16 + x34))) - (((uint64_t)x16 * x18) + ((uint64_t)x18 * x16)));
- uint64_t x37 = ((((uint64_t)(x14 + x32) * (x18 + x33)) + (((uint64_t)(x16 + x34) * (x16 + x34)) + ((uint64_t)(x18 + x33) * (x14 + x32)))) - (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + ((uint64_t)x18 * x14))));
- uint64_t x38 = ((((uint64_t)(x12 + x30) * (x18 + x33)) + (((uint64_t)(x14 + x32) * (x16 + x34)) + (((uint64_t)(x16 + x34) * (x14 + x32)) + ((uint64_t)(x18 + x33) * (x12 + x30))))) - (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x18 * x12)))));
- uint64_t x39 = ((((uint64_t)(x10 + x28) * (x18 + x33)) + (((uint64_t)(x12 + x30) * (x16 + x34)) + (((uint64_t)(x14 + x32) * (x14 + x32)) + (((uint64_t)(x16 + x34) * (x12 + x30)) + ((uint64_t)(x18 + x33) * (x10 + x28)))))) - (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + ((uint64_t)x18 * x10))))));
- uint64_t x40 = ((((uint64_t)(x8 + x26) * (x18 + x33)) + (((uint64_t)(x10 + x28) * (x16 + x34)) + (((uint64_t)(x12 + x30) * (x14 + x32)) + (((uint64_t)(x14 + x32) * (x12 + x30)) + (((uint64_t)(x16 + x34) * (x10 + x28)) + ((uint64_t)(x18 + x33) * (x8 + x26))))))) - (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x18 * x8)))))));
- uint64_t x41 = ((((uint64_t)(x6 + x24) * (x18 + x33)) + (((uint64_t)(x8 + x26) * (x16 + x34)) + (((uint64_t)(x10 + x28) * (x14 + x32)) + (((uint64_t)(x12 + x30) * (x12 + x30)) + (((uint64_t)(x14 + x32) * (x10 + x28)) + (((uint64_t)(x16 + x34) * (x8 + x26)) + ((uint64_t)(x18 + x33) * (x6 + x24)))))))) - (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((uint64_t)x18 * x6))))))));
- uint64_t x42 = (((0x2 * ((uint64_t)(x4 + x22) * (x18 + x33))) + ((0x2 * ((uint64_t)(x6 + x24) * (x16 + x34))) + ((0x2 * ((uint64_t)(x8 + x26) * (x14 + x32))) + ((0x2 * ((uint64_t)(x10 + x28) * (x12 + x30))) + ((0x2 * ((uint64_t)(x12 + x30) * (x10 + x28))) + ((0x2 * ((uint64_t)(x14 + x32) * (x8 + x26))) + ((0x2 * ((uint64_t)(x16 + x34) * (x6 + x24))) + (0x2 * ((uint64_t)(x18 + x33) * (x4 + x22)))))))))) - ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x18 * x4))))))))));
- uint64_t x43 = ((((uint64_t)(x2 + x20) * (x18 + x33)) + ((0x2 * ((uint64_t)(x4 + x22) * (x16 + x34))) + ((0x2 * ((uint64_t)(x6 + x24) * (x14 + x32))) + ((0x2 * ((uint64_t)(x8 + x26) * (x12 + x30))) + ((0x2 * ((uint64_t)(x10 + x28) * (x10 + x28))) + ((0x2 * ((uint64_t)(x12 + x30) * (x8 + x26))) + ((0x2 * ((uint64_t)(x14 + x32) * (x6 + x24))) + ((0x2 * ((uint64_t)(x16 + x34) * (x4 + x22))) + ((uint64_t)(x18 + x33) * (x2 + x20)))))))))) - (((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))));
- uint64_t x44 = ((((uint64_t)(x2 + x20) * (x16 + x34)) + ((0x2 * ((uint64_t)(x4 + x22) * (x14 + x32))) + ((0x2 * ((uint64_t)(x6 + x24) * (x12 + x30))) + ((0x2 * ((uint64_t)(x8 + x26) * (x10 + x28))) + ((0x2 * ((uint64_t)(x10 + x28) * (x8 + x26))) + ((0x2 * ((uint64_t)(x12 + x30) * (x6 + x24))) + ((0x2 * ((uint64_t)(x14 + x32) * (x4 + x22))) + ((uint64_t)(x16 + x34) * (x2 + x20))))))))) - (((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))));
- uint64_t x45 = ((((uint64_t)(x2 + x20) * (x14 + x32)) + ((0x2 * ((uint64_t)(x4 + x22) * (x12 + x30))) + ((0x2 * ((uint64_t)(x6 + x24) * (x10 + x28))) + ((0x2 * ((uint64_t)(x8 + x26) * (x8 + x26))) + ((0x2 * ((uint64_t)(x10 + x28) * (x6 + x24))) + ((0x2 * ((uint64_t)(x12 + x30) * (x4 + x22))) + ((uint64_t)(x14 + x32) * (x2 + x20)))))))) - (((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))));
- uint64_t x46 = ((((uint64_t)(x2 + x20) * (x12 + x30)) + ((0x2 * ((uint64_t)(x4 + x22) * (x10 + x28))) + ((0x2 * ((uint64_t)(x6 + x24) * (x8 + x26))) + ((0x2 * ((uint64_t)(x8 + x26) * (x6 + x24))) + ((0x2 * ((uint64_t)(x10 + x28) * (x4 + x22))) + ((uint64_t)(x12 + x30) * (x2 + x20))))))) - (((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))));
- uint64_t x47 = ((((uint64_t)(x2 + x20) * (x10 + x28)) + ((0x2 * ((uint64_t)(x4 + x22) * (x8 + x26))) + ((0x2 * ((uint64_t)(x6 + x24) * (x6 + x24))) + ((0x2 * ((uint64_t)(x8 + x26) * (x4 + x22))) + ((uint64_t)(x10 + x28) * (x2 + x20)))))) - (((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))));
- uint64_t x48 = ((((uint64_t)(x2 + x20) * (x8 + x26)) + ((0x2 * ((uint64_t)(x4 + x22) * (x6 + x24))) + ((0x2 * ((uint64_t)(x6 + x24) * (x4 + x22))) + ((uint64_t)(x8 + x26) * (x2 + x20))))) - (((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))));
- uint64_t x49 = ((((uint64_t)(x2 + x20) * (x6 + x24)) + ((0x2 * ((uint64_t)(x4 + x22) * (x4 + x22))) + ((uint64_t)(x6 + x24) * (x2 + x20)))) - (((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))));
- uint64_t x50 = ((((uint64_t)(x2 + x20) * (x4 + x22)) + ((uint64_t)(x4 + x22) * (x2 + x20))) - (((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)));
- uint64_t x51 = (((uint64_t)(x2 + x20) * (x2 + x20)) - ((uint64_t)x2 * x2));
- uint64_t x52 = (((((uint64_t)x18 * x18) + ((uint64_t)x33 * x33)) + x44) + x35);
- uint64_t x53 = ((((((uint64_t)x16 * x18) + ((uint64_t)x18 * x16)) + (((uint64_t)x34 * x33) + ((uint64_t)x33 * x34))) + x45) + x36);
- uint64_t x54 = ((((((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + ((uint64_t)x18 * x14))) + (((uint64_t)x32 * x33) + (((uint64_t)x34 * x34) + ((uint64_t)x33 * x32)))) + x46) + x37);
- uint64_t x55 = ((((((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x18 * x12)))) + (((uint64_t)x30 * x33) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + ((uint64_t)x33 * x30))))) + x47) + x38);
- uint64_t x56 = ((((((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + ((uint64_t)x18 * x10))))) + (((uint64_t)x28 * x33) + (((uint64_t)x30 * x34) + (((uint64_t)x32 * x32) + (((uint64_t)x34 * x30) + ((uint64_t)x33 * x28)))))) + x48) + x39);
- uint64_t x57 = ((((((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x18 * x8)))))) + (((uint64_t)x26 * x33) + (((uint64_t)x28 * x34) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + (((uint64_t)x34 * x28) + ((uint64_t)x33 * x26))))))) + x49) + x40);
- uint64_t x58 = ((((((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((uint64_t)x18 * x6))))))) + (((uint64_t)x24 * x33) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + (((uint64_t)x30 * x30) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + ((uint64_t)x33 * x24)))))))) + x50) + x41);
- uint64_t x59 = (((((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x18 * x4))))))))) + ((0x2 * ((uint64_t)x22 * x33)) + ((0x2 * ((uint64_t)x24 * x34)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + ((0x2 * ((uint64_t)x34 * x24)) + (0x2 * ((uint64_t)x33 * x22)))))))))) + x51) + x42);
- uint64_t x60 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (((uint64_t)x20 * x33) + ((0x2 * ((uint64_t)x22 * x34)) + ((0x2 * ((uint64_t)x24 * x32)) + ((0x2 * ((uint64_t)x26 * x30)) + ((0x2 * ((uint64_t)x28 * x28)) + ((0x2 * ((uint64_t)x30 * x26)) + ((0x2 * ((uint64_t)x32 * x24)) + ((0x2 * ((uint64_t)x34 * x22)) + ((uint64_t)x33 * x20))))))))));
- uint64_t x61 = (((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (((uint64_t)x20 * x34) + ((0x2 * ((uint64_t)x22 * x32)) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + ((0x2 * ((uint64_t)x32 * x22)) + ((uint64_t)x34 * x20))))))))) + x35);
- uint64_t x62 = (((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (((uint64_t)x20 * x32) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + ((0x2 * ((uint64_t)x26 * x26)) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + ((uint64_t)x32 * x20)))))))) + x36);
- uint64_t x63 = (((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (((uint64_t)x20 * x30) + ((0x2 * ((uint64_t)x22 * x28)) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + ((0x2 * ((uint64_t)x28 * x22)) + ((uint64_t)x30 * x20))))))) + x37);
- uint64_t x64 = (((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (((uint64_t)x20 * x28) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + ((uint64_t)x28 * x20)))))) + x38);
- uint64_t x65 = (((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (((uint64_t)x20 * x26) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + ((uint64_t)x26 * x20))))) + x39);
- uint64_t x66 = (((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + ((uint64_t)x24 * x20)))) + x40);
- uint64_t x67 = (((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x20 * x22) + ((uint64_t)x22 * x20))) + x41);
- uint64_t x68 = ((((uint64_t)x2 * x2) + ((uint64_t)x20 * x20)) + x42);
- uint32_t x69 = (uint32_t) (x60 >> 0x17);
- uint32_t x70 = ((uint32_t)x60 & 0x7fffff);
- uint64_t x71 = (x43 >> 0x17);
- uint32_t x72 = ((uint32_t)x43 & 0x7fffff);
- uint64_t x73 = ((0x800000 * x71) + x72);
- uint64_t x74 = (x73 >> 0x17);
- uint32_t x75 = ((uint32_t)x73 & 0x7fffff);
- uint64_t x76 = ((x69 + x59) + x74);
- uint64_t x77 = (x76 >> 0x18);
- uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- uint64_t x79 = (x68 + x74);
- uint32_t x80 = (uint32_t) (x79 >> 0x18);
- uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- uint64_t x82 = (x77 + x58);
- uint64_t x83 = (x82 >> 0x17);
- uint32_t x84 = ((uint32_t)x82 & 0x7fffff);
- uint64_t x85 = (x80 + x67);
- uint32_t x86 = (uint32_t) (x85 >> 0x17);
- uint32_t x87 = ((uint32_t)x85 & 0x7fffff);
- uint64_t x88 = (x83 + x57);
- uint64_t x89 = (x88 >> 0x17);
- uint32_t x90 = ((uint32_t)x88 & 0x7fffff);
- uint64_t x91 = (x86 + x66);
- uint32_t x92 = (uint32_t) (x91 >> 0x17);
- uint32_t x93 = ((uint32_t)x91 & 0x7fffff);
- uint64_t x94 = (x89 + x56);
- uint64_t x95 = (x94 >> 0x17);
- uint32_t x96 = ((uint32_t)x94 & 0x7fffff);
- uint64_t x97 = (x92 + x65);
- uint32_t x98 = (uint32_t) (x97 >> 0x17);
- uint32_t x99 = ((uint32_t)x97 & 0x7fffff);
- uint64_t x100 = (x95 + x55);
- uint64_t x101 = (x100 >> 0x17);
- uint32_t x102 = ((uint32_t)x100 & 0x7fffff);
- uint64_t x103 = (x98 + x64);
- uint32_t x104 = (uint32_t) (x103 >> 0x17);
- uint32_t x105 = ((uint32_t)x103 & 0x7fffff);
- uint64_t x106 = (x101 + x54);
- uint64_t x107 = (x106 >> 0x17);
- uint32_t x108 = ((uint32_t)x106 & 0x7fffff);
- uint64_t x109 = (x104 + x63);
- uint32_t x110 = (uint32_t) (x109 >> 0x17);
- uint32_t x111 = ((uint32_t)x109 & 0x7fffff);
- uint64_t x112 = (x107 + x53);
- uint64_t x113 = (x112 >> 0x17);
- uint32_t x114 = ((uint32_t)x112 & 0x7fffff);
- uint64_t x115 = (x110 + x62);
- uint32_t x116 = (uint32_t) (x115 >> 0x17);
- uint32_t x117 = ((uint32_t)x115 & 0x7fffff);
- uint64_t x118 = (x113 + x52);
- uint64_t x119 = (x118 >> 0x17);
- uint32_t x120 = ((uint32_t)x118 & 0x7fffff);
- uint64_t x121 = (x116 + x61);
- uint32_t x122 = (uint32_t) (x121 >> 0x17);
- uint32_t x123 = ((uint32_t)x121 & 0x7fffff);
- uint64_t x124 = (x119 + x75);
- uint32_t x125 = (uint32_t) (x124 >> 0x17);
- uint32_t x126 = ((uint32_t)x124 & 0x7fffff);
- uint32_t x127 = (x122 + x70);
- uint32_t x128 = (x127 >> 0x17);
- uint32_t x129 = (x127 & 0x7fffff);
- uint64_t x130 = (((uint64_t)0x800000 * x125) + x126);
- uint32_t x131 = (uint32_t) (x130 >> 0x17);
- uint32_t x132 = ((uint32_t)x130 & 0x7fffff);
- uint32_t x133 = ((x128 + x78) + x131);
- uint32_t x134 = (x133 >> 0x18);
- uint32_t x135 = (x133 & 0xffffff);
- uint32_t x136 = (x81 + x131);
- uint32_t x137 = (x136 >> 0x18);
- uint32_t x138 = (x136 & 0xffffff);
- return (Return x132, Return x120, Return x114, Return x108, Return x102, Return x96, Return x90, (x134 + x84), Return x135, Return x129, Return x123, Return x117, Return x111, Return x105, Return x99, Return x93, (x137 + x87), Return x138))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e416m2e208m1_18limbs/fesquareDisplay.v b/src/Specific/solinas32_2e416m2e208m1_18limbs/fesquareDisplay.v
deleted file mode 100644
index 203dbf2dd..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_18limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e416m2e208m1_18limbs/fesub.c b/src/Specific/solinas32_2e416m2e208m1_18limbs/fesub.c
deleted file mode 100644
index 032a19381..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/fesub.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void fesub(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- out[0] = ((0x1fffffe + x5) - x39);
- out[1] = ((0xfffffe + x7) - x41);
- out[2] = ((0xfffffe + x9) - x43);
- out[3] = ((0xfffffe + x11) - x45);
- out[4] = ((0xfffffe + x13) - x47);
- out[5] = ((0xfffffe + x15) - x49);
- out[6] = ((0xfffffe + x17) - x51);
- out[7] = ((0xfffffe + x19) - x53);
- out[8] = ((0xfffffe + x21) - x55);
- out[9] = ((0x1fffffc + x23) - x57);
- out[10] = ((0xfffffe + x25) - x59);
- out[11] = ((0xfffffe + x27) - x61);
- out[12] = ((0xfffffe + x29) - x63);
- out[13] = ((0xfffffe + x31) - x65);
- out[14] = ((0xfffffe + x33) - x67);
- out[15] = ((0xfffffe + x35) - x69);
- out[16] = ((0xfffffe + x37) - x71);
- out[17] = ((0xfffffe + x36) - x70);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e416m2e208m1_18limbs/fesub.v b/src/Specific/solinas32_2e416m2e208m1_18limbs/fesub.v
deleted file mode 100644
index 6f92450f4..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_18limbs.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_2e416m2e208m1_18limbs/fesubDisplay.log b/src/Specific/solinas32_2e416m2e208m1_18limbs/fesubDisplay.log
deleted file mode 100644
index 9374ad1ca..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- (((0xfffffe + x36) - x70), ((0xfffffe + x37) - x71), ((0xfffffe + x35) - x69), ((0xfffffe + x33) - x67), ((0xfffffe + x31) - x65), ((0xfffffe + x29) - x63), ((0xfffffe + x27) - x61), ((0xfffffe + x25) - x59), ((0x1fffffc + x23) - x57), ((0xfffffe + x21) - x55), ((0xfffffe + x19) - x53), ((0xfffffe + x17) - x51), ((0xfffffe + x15) - x49), ((0xfffffe + x13) - x47), ((0xfffffe + x11) - x45), ((0xfffffe + x9) - x43), ((0xfffffe + x7) - x41), ((0x1fffffe + x5) - x39)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e416m2e208m1_18limbs/fesubDisplay.v b/src/Specific/solinas32_2e416m2e208m1_18limbs/fesubDisplay.v
deleted file mode 100644
index c2f983d64..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_18limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e416m2e208m1_18limbs/freeze.c b/src/Specific/solinas32_2e416m2e208m1_18limbs/freeze.c
deleted file mode 100644
index 5d4796729..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/freeze.c
+++ /dev/null
@@ -1,94 +0,0 @@
-static void freeze(uint32_t out[18], const uint32_t in1[18]) {
- { const uint32_t x33 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x4, 0x7fffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x6, 0x7fffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x8, 0x7fffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x10, 0x7fffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x12, 0x7fffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x14, 0x7fffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x16, 0x7fffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x18, 0x7fffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x20, 0xfffffe);
- { uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x22, 0x7fffff);
- { uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x24, 0x7fffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x26, 0x7fffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x28, 0x7fffff);
- { uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x30, 0x7fffff);
- { uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x32, 0x7fffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x34, 0x7fffff);
- { uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x33, 0x7fffff);
- { uint32_t x89 = cmovznz32(x88, 0x0, 0xffffffff);
- { uint32_t x90 = (x89 & 0xffffff);
- { uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x36, Return x90);
- { uint32_t x94 = (x89 & 0x7fffff);
- { uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x39, Return x94);
- { uint32_t x98 = (x89 & 0x7fffff);
- { uint32_t x100, uint8_t x101 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x42, Return x98);
- { uint32_t x102 = (x89 & 0x7fffff);
- { uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x45, Return x102);
- { uint32_t x106 = (x89 & 0x7fffff);
- { uint32_t x108, uint8_t x109 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x48, Return x106);
- { uint32_t x110 = (x89 & 0x7fffff);
- { uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x51, Return x110);
- { uint32_t x114 = (x89 & 0x7fffff);
- { uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x54, Return x114);
- { uint32_t x118 = (x89 & 0x7fffff);
- { uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x57, Return x118);
- { uint32_t x122 = (x89 & 0x7fffff);
- { uint32_t x124, uint8_t x125 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x60, Return x122);
- { uint32_t x126 = (x89 & 0xfffffe);
- { uint32_t x128, uint8_t x129 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x125, Return x63, Return x126);
- { uint32_t x130 = (x89 & 0x7fffff);
- { uint32_t x132, uint8_t x133 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x129, Return x66, Return x130);
- { uint32_t x134 = (x89 & 0x7fffff);
- { uint32_t x136, uint8_t x137 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x133, Return x69, Return x134);
- { uint32_t x138 = (x89 & 0x7fffff);
- { uint32_t x140, uint8_t x141 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x137, Return x72, Return x138);
- { uint32_t x142 = (x89 & 0x7fffff);
- { uint32_t x144, uint8_t x145 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x141, Return x75, Return x142);
- { uint32_t x146 = (x89 & 0x7fffff);
- { uint32_t x148, uint8_t x149 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x145, Return x78, Return x146);
- { uint32_t x150 = (x89 & 0x7fffff);
- { uint32_t x152, uint8_t x153 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x149, Return x81, Return x150);
- { uint32_t x154 = (x89 & 0x7fffff);
- { uint32_t x156, uint8_t x157 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x153, Return x84, Return x154);
- { uint32_t x158 = (x89 & 0x7fffff);
- { uint32_t x160, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x157, Return x87, Return x158);
- out[0] = x92;
- out[1] = x96;
- out[2] = x100;
- out[3] = x104;
- out[4] = x108;
- out[5] = x112;
- out[6] = x116;
- out[7] = x120;
- out[8] = x124;
- out[9] = x128;
- out[10] = x132;
- out[11] = x136;
- out[12] = x140;
- out[13] = x144;
- out[14] = x148;
- out[15] = x152;
- out[16] = x156;
- out[17] = x160;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e416m2e208m1_18limbs/freeze.v b/src/Specific/solinas32_2e416m2e208m1_18limbs/freeze.v
deleted file mode 100644
index 8c05cb013..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_18limbs.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_2e416m2e208m1_18limbs/freezeDisplay.log b/src/Specific/solinas32_2e416m2e208m1_18limbs/freezeDisplay.log
deleted file mode 100644
index 61cd9ffe5..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/freezeDisplay.log
+++ /dev/null
@@ -1,62 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x33, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x4, 0x7fffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x6, 0x7fffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x8, 0x7fffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x10, 0x7fffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x12, 0x7fffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x14, 0x7fffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x16, 0x7fffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x18, 0x7fffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x20, 0xfffffe);
- uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x22, 0x7fffff);
- uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x24, 0x7fffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x26, 0x7fffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x28, 0x7fffff);
- uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x30, 0x7fffff);
- uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x32, 0x7fffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x34, 0x7fffff);
- uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x33, 0x7fffff);
- uint32_t x89 = cmovznz32(x88, 0x0, 0xffffffff);
- uint32_t x90 = (x89 & 0xffffff);
- uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x36, Return x90);
- uint32_t x94 = (x89 & 0x7fffff);
- uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x39, Return x94);
- uint32_t x98 = (x89 & 0x7fffff);
- uint32_t x100, uint8_t x101 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x42, Return x98);
- uint32_t x102 = (x89 & 0x7fffff);
- uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x45, Return x102);
- uint32_t x106 = (x89 & 0x7fffff);
- uint32_t x108, uint8_t x109 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x48, Return x106);
- uint32_t x110 = (x89 & 0x7fffff);
- uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x51, Return x110);
- uint32_t x114 = (x89 & 0x7fffff);
- uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x54, Return x114);
- uint32_t x118 = (x89 & 0x7fffff);
- uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x57, Return x118);
- uint32_t x122 = (x89 & 0x7fffff);
- uint32_t x124, uint8_t x125 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x60, Return x122);
- uint32_t x126 = (x89 & 0xfffffe);
- uint32_t x128, uint8_t x129 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x125, Return x63, Return x126);
- uint32_t x130 = (x89 & 0x7fffff);
- uint32_t x132, uint8_t x133 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x129, Return x66, Return x130);
- uint32_t x134 = (x89 & 0x7fffff);
- uint32_t x136, uint8_t x137 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x133, Return x69, Return x134);
- uint32_t x138 = (x89 & 0x7fffff);
- uint32_t x140, uint8_t x141 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x137, Return x72, Return x138);
- uint32_t x142 = (x89 & 0x7fffff);
- uint32_t x144, uint8_t x145 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x141, Return x75, Return x142);
- uint32_t x146 = (x89 & 0x7fffff);
- uint32_t x148, uint8_t x149 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x145, Return x78, Return x146);
- uint32_t x150 = (x89 & 0x7fffff);
- uint32_t x152, uint8_t x153 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x149, Return x81, Return x150);
- uint32_t x154 = (x89 & 0x7fffff);
- uint32_t x156, uint8_t x157 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x153, Return x84, Return x154);
- uint32_t x158 = (x89 & 0x7fffff);
- uint32_t x160, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x157, Return x87, Return x158);
- (Return x160, Return x156, Return x152, Return x148, Return x144, Return x140, Return x136, Return x132, Return x128, Return x124, Return x120, Return x116, Return x112, Return x108, Return x104, Return x100, Return x96, Return x92))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e416m2e208m1_18limbs/freezeDisplay.v b/src/Specific/solinas32_2e416m2e208m1_18limbs/freezeDisplay.v
deleted file mode 100644
index d8ce5662a..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e416m2e208m1_18limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e416m2e208m1_18limbs/py_interpreter.sh b/src/Specific/solinas32_2e416m2e208m1_18limbs/py_interpreter.sh
deleted file mode 100755
index 8cc606239..000000000
--- a/src/Specific/solinas32_2e416m2e208m1_18limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**416 - 2**208 - 1' -Dmodulus_bytes='23 + 1/9' -Da24='121665'
diff --git a/src/Specific/solinas32_2e444m17_17limbs/CurveParameters.v b/src/Specific/solinas32_2e444m17_17limbs/CurveParameters.v
deleted file mode 100644
index 31e1b2abd..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^444 - 17
-Base: 26 + 2/17
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 17%nat;
- base := 26 + 2/17;
- bitwidth := 32;
- s := 2^444;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 17); [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_2e444m17_17limbs/Synthesis.v b/src/Specific/solinas32_2e444m17_17limbs/Synthesis.v
deleted file mode 100644
index 7503a7e9e..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e444m17_17limbs.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_2e444m17_17limbs/compiler.sh b/src/Specific/solinas32_2e444m17_17limbs/compiler.sh
deleted file mode 100755
index 528a7d6d3..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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,26,26,26,26,26,27,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<444) - 17' "$@"
diff --git a/src/Specific/solinas32_2e444m17_17limbs/compilerxx.sh b/src/Specific/solinas32_2e444m17_17limbs/compilerxx.sh
deleted file mode 100755
index 40aeb5f25..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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,26,26,26,26,26,27,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<444) - 17' "$@"
diff --git a/src/Specific/solinas32_2e444m17_17limbs/feadd.c b/src/Specific/solinas32_2e444m17_17limbs/feadd.c
deleted file mode 100644
index 30eb11eae..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/feadd.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void feadd(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- out[0] = (x5 + x37);
- out[1] = (x7 + x39);
- out[2] = (x9 + x41);
- out[3] = (x11 + x43);
- out[4] = (x13 + x45);
- out[5] = (x15 + x47);
- out[6] = (x17 + x49);
- out[7] = (x19 + x51);
- out[8] = (x21 + x53);
- out[9] = (x23 + x55);
- out[10] = (x25 + x57);
- out[11] = (x27 + x59);
- out[12] = (x29 + x61);
- out[13] = (x31 + x63);
- out[14] = (x33 + x65);
- out[15] = (x35 + x67);
- out[16] = (x34 + x66);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e444m17_17limbs/feadd.v b/src/Specific/solinas32_2e444m17_17limbs/feadd.v
deleted file mode 100644
index 197cb01d2..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e444m17_17limbs.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_2e444m17_17limbs/feaddDisplay.log b/src/Specific/solinas32_2e444m17_17limbs/feaddDisplay.log
deleted file mode 100644
index 7324e0941..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- ((x34 + x66), (x35 + x67), (x33 + x65), (x31 + x63), (x29 + x61), (x27 + x59), (x25 + x57), (x23 + x55), (x21 + x53), (x19 + x51), (x17 + x49), (x15 + x47), (x13 + x45), (x11 + x43), (x9 + x41), (x7 + x39), (x5 + x37)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e444m17_17limbs/feaddDisplay.v b/src/Specific/solinas32_2e444m17_17limbs/feaddDisplay.v
deleted file mode 100644
index 552ccb52d..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e444m17_17limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e444m17_17limbs/fecarry.v b/src/Specific/solinas32_2e444m17_17limbs/fecarry.v
deleted file mode 100644
index c8bc799c2..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e444m17_17limbs.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_2e444m17_17limbs/fecarryDisplay.v b/src/Specific/solinas32_2e444m17_17limbs/fecarryDisplay.v
deleted file mode 100644
index e00209ac1..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e444m17_17limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e444m17_17limbs/femul.c b/src/Specific/solinas32_2e444m17_17limbs/femul.c
deleted file mode 100644
index 4bcb63bcb..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/femul.c
+++ /dev/null
@@ -1,127 +0,0 @@
-static void femul(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- { uint64_t x68 = (((uint64_t)x5 * x66) + ((0x2 * ((uint64_t)x7 * x67)) + ((0x2 * ((uint64_t)x9 * x65)) + ((0x2 * ((uint64_t)x11 * x63)) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + ((0x2 * ((uint64_t)x19 * x55)) + (((uint64_t)x21 * x53) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + ((0x2 * ((uint64_t)x31 * x43)) + ((0x2 * ((uint64_t)x33 * x41)) + ((0x2 * ((uint64_t)x35 * x39)) + ((uint64_t)x34 * x37)))))))))))))))));
- { uint64_t x69 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + (((uint64_t)x19 * x53) + (((uint64_t)x21 * x51) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + ((uint64_t)x35 * x37)))))))))))))))) + (0x11 * ((uint64_t)x34 * x66)));
- { uint64_t x70 = ((((uint64_t)x5 * x65) + ((0x2 * ((uint64_t)x7 * x63)) + ((0x2 * ((uint64_t)x9 * x61)) + ((0x2 * ((uint64_t)x11 * x59)) + ((0x2 * ((uint64_t)x13 * x57)) + ((0x2 * ((uint64_t)x15 * x55)) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + ((0x2 * ((uint64_t)x23 * x47)) + ((0x2 * ((uint64_t)x25 * x45)) + ((0x2 * ((uint64_t)x27 * x43)) + ((0x2 * ((uint64_t)x29 * x41)) + ((0x2 * ((uint64_t)x31 * x39)) + ((uint64_t)x33 * x37))))))))))))))) + (0x11 * (((uint64_t)x35 * x66) + ((uint64_t)x34 * x67))));
- { uint64_t x71 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + ((0x2 * ((uint64_t)x23 * x45)) + ((0x2 * ((uint64_t)x25 * x43)) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((uint64_t)x31 * x37)))))))))))))) + (0x11 * (((uint64_t)x33 * x66) + (((uint64_t)x35 * x67) + ((uint64_t)x34 * x65)))));
- { uint64_t x72 = ((((uint64_t)x5 * x61) + ((0x2 * ((uint64_t)x7 * x59)) + ((0x2 * ((uint64_t)x9 * x57)) + ((0x2 * ((uint64_t)x11 * x55)) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + ((0x2 * ((uint64_t)x23 * x43)) + ((0x2 * ((uint64_t)x25 * x41)) + ((0x2 * ((uint64_t)x27 * x39)) + ((uint64_t)x29 * x37))))))))))))) + (0x11 * (((uint64_t)x31 * x66) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + ((uint64_t)x34 * x63))))));
- { uint64_t x73 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + ((uint64_t)x27 * x37)))))))))))) + (0x11 * (((uint64_t)x29 * x66) + (((uint64_t)x31 * x67) + (((uint64_t)x33 * x65) + (((uint64_t)x35 * x63) + ((uint64_t)x34 * x61)))))));
- { uint64_t x74 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + ((0x2 * ((uint64_t)x23 * x39)) + ((uint64_t)x25 * x37))))))))))) + (0x11 * (((uint64_t)x27 * x66) + (((uint64_t)x29 * x67) + (((uint64_t)x31 * x65) + (((uint64_t)x33 * x63) + (((uint64_t)x35 * x61) + ((uint64_t)x34 * x59))))))));
- { uint64_t x75 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + ((uint64_t)x23 * x37)))))))))) + (0x11 * (((uint64_t)x25 * x66) + (((uint64_t)x27 * x67) + (((uint64_t)x29 * x65) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + (((uint64_t)x35 * x59) + ((uint64_t)x34 * x57)))))))));
- { uint64_t x76 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + ((uint64_t)x21 * x37))))))))) + (0x11 * ((0x2 * ((uint64_t)x23 * x66)) + ((0x2 * ((uint64_t)x25 * x67)) + ((0x2 * ((uint64_t)x27 * x65)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + ((0x2 * ((uint64_t)x35 * x57)) + (0x2 * ((uint64_t)x34 * x55)))))))))));
- { uint64_t x77 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((uint64_t)x19 * x37)))))))) + (0x11 * (((uint64_t)x21 * x66) + ((0x2 * ((uint64_t)x23 * x67)) + ((0x2 * ((uint64_t)x25 * x65)) + ((0x2 * ((uint64_t)x27 * x63)) + ((0x2 * ((uint64_t)x29 * x61)) + ((0x2 * ((uint64_t)x31 * x59)) + ((0x2 * ((uint64_t)x33 * x57)) + ((0x2 * ((uint64_t)x35 * x55)) + ((uint64_t)x34 * x53)))))))))));
- { uint64_t x78 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + ((0x2 * ((uint64_t)x11 * x43)) + ((0x2 * ((uint64_t)x13 * x41)) + ((0x2 * ((uint64_t)x15 * x39)) + ((uint64_t)x17 * x37))))))) + (0x11 * (((uint64_t)x19 * x66) + (((uint64_t)x21 * x67) + ((0x2 * ((uint64_t)x23 * x65)) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + ((0x2 * ((uint64_t)x33 * x55)) + (((uint64_t)x35 * x53) + ((uint64_t)x34 * x51))))))))))));
- { uint64_t x79 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((uint64_t)x15 * x37)))))) + (0x11 * (((uint64_t)x17 * x66) + (((uint64_t)x19 * x67) + (((uint64_t)x21 * x65) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + ((0x2 * ((uint64_t)x29 * x57)) + ((0x2 * ((uint64_t)x31 * x55)) + (((uint64_t)x33 * x53) + (((uint64_t)x35 * x51) + ((uint64_t)x34 * x49)))))))))))));
- { uint64_t x80 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + ((uint64_t)x13 * x37))))) + (0x11 * (((uint64_t)x15 * x66) + (((uint64_t)x17 * x67) + (((uint64_t)x19 * x65) + (((uint64_t)x21 * x63) + ((0x2 * ((uint64_t)x23 * x61)) + ((0x2 * ((uint64_t)x25 * x59)) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + (((uint64_t)x35 * x49) + ((uint64_t)x34 * x47))))))))))))));
- { uint64_t x81 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((uint64_t)x11 * x37)))) + (0x11 * (((uint64_t)x13 * x66) + (((uint64_t)x15 * x67) + (((uint64_t)x17 * x65) + (((uint64_t)x19 * x63) + (((uint64_t)x21 * x61) + ((0x2 * ((uint64_t)x23 * x59)) + ((0x2 * ((uint64_t)x25 * x57)) + ((0x2 * ((uint64_t)x27 * x55)) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + (((uint64_t)x35 * x47) + ((uint64_t)x34 * x45)))))))))))))));
- { uint64_t x82 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((uint64_t)x9 * x37))) + (0x11 * (((uint64_t)x11 * x66) + (((uint64_t)x13 * x67) + (((uint64_t)x15 * x65) + (((uint64_t)x17 * x63) + (((uint64_t)x19 * x61) + (((uint64_t)x21 * x59) + ((0x2 * ((uint64_t)x23 * x57)) + ((0x2 * ((uint64_t)x25 * x55)) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + (((uint64_t)x31 * x49) + (((uint64_t)x33 * x47) + (((uint64_t)x35 * x45) + ((uint64_t)x34 * x43))))))))))))))));
- { uint64_t x83 = ((((uint64_t)x5 * x39) + ((uint64_t)x7 * x37)) + (0x11 * (((uint64_t)x9 * x66) + (((uint64_t)x11 * x67) + (((uint64_t)x13 * x65) + (((uint64_t)x15 * x63) + (((uint64_t)x17 * x61) + (((uint64_t)x19 * x59) + (((uint64_t)x21 * x57) + ((0x2 * ((uint64_t)x23 * x55)) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + (((uint64_t)x29 * x49) + (((uint64_t)x31 * x47) + (((uint64_t)x33 * x45) + (((uint64_t)x35 * x43) + ((uint64_t)x34 * x41)))))))))))))))));
- { ℤ x84 = (((uint64_t)x5 * x37) +ℤ (0x11 *ℤ ((0x2 * ((uint64_t)x7 * x66)) + ((0x2 * ((uint64_t)x9 * x67)) + ((0x2 * ((uint64_t)x11 * x65)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + ((0x2 * ((uint64_t)x35 * x41)) + (0x2 * ((uint64_t)x34 * x39)))))))))))))))))));
- { uint64_t x85 = (x84 >> 0x1b);
- { uint32_t x86 = (x84 & 0x7ffffff);
- { uint64_t x87 = (x85 + x83);
- { uint64_t x88 = (x87 >> 0x1a);
- { uint32_t x89 = ((uint32_t)x87 & 0x3ffffff);
- { uint64_t x90 = (x88 + x82);
- { uint64_t x91 = (x90 >> 0x1a);
- { uint32_t x92 = ((uint32_t)x90 & 0x3ffffff);
- { uint64_t x93 = (x91 + x81);
- { uint64_t x94 = (x93 >> 0x1a);
- { uint32_t x95 = ((uint32_t)x93 & 0x3ffffff);
- { uint64_t x96 = (x94 + x80);
- { uint64_t x97 = (x96 >> 0x1a);
- { uint32_t x98 = ((uint32_t)x96 & 0x3ffffff);
- { uint64_t x99 = (x97 + x79);
- { uint64_t x100 = (x99 >> 0x1a);
- { uint32_t x101 = ((uint32_t)x99 & 0x3ffffff);
- { uint64_t x102 = (x100 + x78);
- { uint64_t x103 = (x102 >> 0x1a);
- { uint32_t x104 = ((uint32_t)x102 & 0x3ffffff);
- { uint64_t x105 = (x103 + x77);
- { uint64_t x106 = (x105 >> 0x1a);
- { uint32_t x107 = ((uint32_t)x105 & 0x3ffffff);
- { uint64_t x108 = (x106 + x76);
- { uint64_t x109 = (x108 >> 0x1b);
- { uint32_t x110 = ((uint32_t)x108 & 0x7ffffff);
- { uint64_t x111 = (x109 + x75);
- { uint64_t x112 = (x111 >> 0x1a);
- { uint32_t x113 = ((uint32_t)x111 & 0x3ffffff);
- { uint64_t x114 = (x112 + x74);
- { uint64_t x115 = (x114 >> 0x1a);
- { uint32_t x116 = ((uint32_t)x114 & 0x3ffffff);
- { uint64_t x117 = (x115 + x73);
- { uint64_t x118 = (x117 >> 0x1a);
- { uint32_t x119 = ((uint32_t)x117 & 0x3ffffff);
- { uint64_t x120 = (x118 + x72);
- { uint64_t x121 = (x120 >> 0x1a);
- { uint32_t x122 = ((uint32_t)x120 & 0x3ffffff);
- { uint64_t x123 = (x121 + x71);
- { uint64_t x124 = (x123 >> 0x1a);
- { uint32_t x125 = ((uint32_t)x123 & 0x3ffffff);
- { uint64_t x126 = (x124 + x70);
- { uint64_t x127 = (x126 >> 0x1a);
- { uint32_t x128 = ((uint32_t)x126 & 0x3ffffff);
- { uint64_t x129 = (x127 + x69);
- { uint64_t x130 = (x129 >> 0x1a);
- { uint32_t x131 = ((uint32_t)x129 & 0x3ffffff);
- { uint64_t x132 = (x130 + x68);
- { uint64_t x133 = (x132 >> 0x1a);
- { uint32_t x134 = ((uint32_t)x132 & 0x3ffffff);
- { uint64_t x135 = (x86 + (0x11 * x133));
- { uint32_t x136 = (uint32_t) (x135 >> 0x1b);
- { uint32_t x137 = ((uint32_t)x135 & 0x7ffffff);
- { uint32_t x138 = (x136 + x89);
- { uint32_t x139 = (x138 >> 0x1a);
- { uint32_t x140 = (x138 & 0x3ffffff);
- out[0] = x137;
- out[1] = x140;
- out[2] = (x139 + x92);
- out[3] = x95;
- out[4] = x98;
- out[5] = x101;
- out[6] = x104;
- out[7] = x107;
- out[8] = x110;
- out[9] = x113;
- out[10] = x116;
- out[11] = x119;
- out[12] = x122;
- out[13] = x125;
- out[14] = x128;
- out[15] = x131;
- out[16] = x134;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e444m17_17limbs/femul.v b/src/Specific/solinas32_2e444m17_17limbs/femul.v
deleted file mode 100644
index cdd2cd290..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e444m17_17limbs.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_2e444m17_17limbs/femulDisplay.log b/src/Specific/solinas32_2e444m17_17limbs/femulDisplay.log
deleted file mode 100644
index 130eb3313..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/femulDisplay.log
+++ /dev/null
@@ -1,80 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- uint64_t x68 = (((uint64_t)x5 * x66) + ((0x2 * ((uint64_t)x7 * x67)) + ((0x2 * ((uint64_t)x9 * x65)) + ((0x2 * ((uint64_t)x11 * x63)) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + ((0x2 * ((uint64_t)x19 * x55)) + (((uint64_t)x21 * x53) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + ((0x2 * ((uint64_t)x31 * x43)) + ((0x2 * ((uint64_t)x33 * x41)) + ((0x2 * ((uint64_t)x35 * x39)) + ((uint64_t)x34 * x37)))))))))))))))));
- uint64_t x69 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + (((uint64_t)x19 * x53) + (((uint64_t)x21 * x51) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + ((uint64_t)x35 * x37)))))))))))))))) + (0x11 * ((uint64_t)x34 * x66)));
- uint64_t x70 = ((((uint64_t)x5 * x65) + ((0x2 * ((uint64_t)x7 * x63)) + ((0x2 * ((uint64_t)x9 * x61)) + ((0x2 * ((uint64_t)x11 * x59)) + ((0x2 * ((uint64_t)x13 * x57)) + ((0x2 * ((uint64_t)x15 * x55)) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + ((0x2 * ((uint64_t)x23 * x47)) + ((0x2 * ((uint64_t)x25 * x45)) + ((0x2 * ((uint64_t)x27 * x43)) + ((0x2 * ((uint64_t)x29 * x41)) + ((0x2 * ((uint64_t)x31 * x39)) + ((uint64_t)x33 * x37))))))))))))))) + (0x11 * (((uint64_t)x35 * x66) + ((uint64_t)x34 * x67))));
- uint64_t x71 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + ((0x2 * ((uint64_t)x23 * x45)) + ((0x2 * ((uint64_t)x25 * x43)) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((uint64_t)x31 * x37)))))))))))))) + (0x11 * (((uint64_t)x33 * x66) + (((uint64_t)x35 * x67) + ((uint64_t)x34 * x65)))));
- uint64_t x72 = ((((uint64_t)x5 * x61) + ((0x2 * ((uint64_t)x7 * x59)) + ((0x2 * ((uint64_t)x9 * x57)) + ((0x2 * ((uint64_t)x11 * x55)) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + ((0x2 * ((uint64_t)x23 * x43)) + ((0x2 * ((uint64_t)x25 * x41)) + ((0x2 * ((uint64_t)x27 * x39)) + ((uint64_t)x29 * x37))))))))))))) + (0x11 * (((uint64_t)x31 * x66) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + ((uint64_t)x34 * x63))))));
- uint64_t x73 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + ((0x2 * ((uint64_t)x25 * x39)) + ((uint64_t)x27 * x37)))))))))))) + (0x11 * (((uint64_t)x29 * x66) + (((uint64_t)x31 * x67) + (((uint64_t)x33 * x65) + (((uint64_t)x35 * x63) + ((uint64_t)x34 * x61)))))));
- uint64_t x74 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + ((0x2 * ((uint64_t)x23 * x39)) + ((uint64_t)x25 * x37))))))))))) + (0x11 * (((uint64_t)x27 * x66) + (((uint64_t)x29 * x67) + (((uint64_t)x31 * x65) + (((uint64_t)x33 * x63) + (((uint64_t)x35 * x61) + ((uint64_t)x34 * x59))))))));
- uint64_t x75 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + (((uint64_t)x21 * x39) + ((uint64_t)x23 * x37)))))))))) + (0x11 * (((uint64_t)x25 * x66) + (((uint64_t)x27 * x67) + (((uint64_t)x29 * x65) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + (((uint64_t)x35 * x59) + ((uint64_t)x34 * x57)))))))));
- uint64_t x76 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + ((uint64_t)x21 * x37))))))))) + (0x11 * ((0x2 * ((uint64_t)x23 * x66)) + ((0x2 * ((uint64_t)x25 * x67)) + ((0x2 * ((uint64_t)x27 * x65)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + ((0x2 * ((uint64_t)x35 * x57)) + (0x2 * ((uint64_t)x34 * x55)))))))))));
- uint64_t x77 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((0x2 * ((uint64_t)x17 * x39)) + ((uint64_t)x19 * x37)))))))) + (0x11 * (((uint64_t)x21 * x66) + ((0x2 * ((uint64_t)x23 * x67)) + ((0x2 * ((uint64_t)x25 * x65)) + ((0x2 * ((uint64_t)x27 * x63)) + ((0x2 * ((uint64_t)x29 * x61)) + ((0x2 * ((uint64_t)x31 * x59)) + ((0x2 * ((uint64_t)x33 * x57)) + ((0x2 * ((uint64_t)x35 * x55)) + ((uint64_t)x34 * x53)))))))))));
- uint64_t x78 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + ((0x2 * ((uint64_t)x11 * x43)) + ((0x2 * ((uint64_t)x13 * x41)) + ((0x2 * ((uint64_t)x15 * x39)) + ((uint64_t)x17 * x37))))))) + (0x11 * (((uint64_t)x19 * x66) + (((uint64_t)x21 * x67) + ((0x2 * ((uint64_t)x23 * x65)) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + ((0x2 * ((uint64_t)x33 * x55)) + (((uint64_t)x35 * x53) + ((uint64_t)x34 * x51))))))))))));
- uint64_t x79 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((uint64_t)x15 * x37)))))) + (0x11 * (((uint64_t)x17 * x66) + (((uint64_t)x19 * x67) + (((uint64_t)x21 * x65) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + ((0x2 * ((uint64_t)x29 * x57)) + ((0x2 * ((uint64_t)x31 * x55)) + (((uint64_t)x33 * x53) + (((uint64_t)x35 * x51) + ((uint64_t)x34 * x49)))))))))))));
- uint64_t x80 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((0x2 * ((uint64_t)x11 * x39)) + ((uint64_t)x13 * x37))))) + (0x11 * (((uint64_t)x15 * x66) + (((uint64_t)x17 * x67) + (((uint64_t)x19 * x65) + (((uint64_t)x21 * x63) + ((0x2 * ((uint64_t)x23 * x61)) + ((0x2 * ((uint64_t)x25 * x59)) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + (((uint64_t)x35 * x49) + ((uint64_t)x34 * x47))))))))))))));
- uint64_t x81 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((uint64_t)x11 * x37)))) + (0x11 * (((uint64_t)x13 * x66) + (((uint64_t)x15 * x67) + (((uint64_t)x17 * x65) + (((uint64_t)x19 * x63) + (((uint64_t)x21 * x61) + ((0x2 * ((uint64_t)x23 * x59)) + ((0x2 * ((uint64_t)x25 * x57)) + ((0x2 * ((uint64_t)x27 * x55)) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + (((uint64_t)x35 * x47) + ((uint64_t)x34 * x45)))))))))))))));
- uint64_t x82 = ((((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x39)) + ((uint64_t)x9 * x37))) + (0x11 * (((uint64_t)x11 * x66) + (((uint64_t)x13 * x67) + (((uint64_t)x15 * x65) + (((uint64_t)x17 * x63) + (((uint64_t)x19 * x61) + (((uint64_t)x21 * x59) + ((0x2 * ((uint64_t)x23 * x57)) + ((0x2 * ((uint64_t)x25 * x55)) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + (((uint64_t)x31 * x49) + (((uint64_t)x33 * x47) + (((uint64_t)x35 * x45) + ((uint64_t)x34 * x43))))))))))))))));
- uint64_t x83 = ((((uint64_t)x5 * x39) + ((uint64_t)x7 * x37)) + (0x11 * (((uint64_t)x9 * x66) + (((uint64_t)x11 * x67) + (((uint64_t)x13 * x65) + (((uint64_t)x15 * x63) + (((uint64_t)x17 * x61) + (((uint64_t)x19 * x59) + (((uint64_t)x21 * x57) + ((0x2 * ((uint64_t)x23 * x55)) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + (((uint64_t)x29 * x49) + (((uint64_t)x31 * x47) + (((uint64_t)x33 * x45) + (((uint64_t)x35 * x43) + ((uint64_t)x34 * x41)))))))))))))))));
- ℤ x84 = (((uint64_t)x5 * x37) +ℤ (0x11 *ℤ ((0x2 * ((uint64_t)x7 * x66)) + ((0x2 * ((uint64_t)x9 * x67)) + ((0x2 * ((uint64_t)x11 * x65)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + ((0x2 * ((uint64_t)x35 * x41)) + (0x2 * ((uint64_t)x34 * x39)))))))))))))))))));
- uint64_t x85 = (x84 >> 0x1b);
- uint32_t x86 = (x84 & 0x7ffffff);
- uint64_t x87 = (x85 + x83);
- uint64_t x88 = (x87 >> 0x1a);
- uint32_t x89 = ((uint32_t)x87 & 0x3ffffff);
- uint64_t x90 = (x88 + x82);
- uint64_t x91 = (x90 >> 0x1a);
- uint32_t x92 = ((uint32_t)x90 & 0x3ffffff);
- uint64_t x93 = (x91 + x81);
- uint64_t x94 = (x93 >> 0x1a);
- uint32_t x95 = ((uint32_t)x93 & 0x3ffffff);
- uint64_t x96 = (x94 + x80);
- uint64_t x97 = (x96 >> 0x1a);
- uint32_t x98 = ((uint32_t)x96 & 0x3ffffff);
- uint64_t x99 = (x97 + x79);
- uint64_t x100 = (x99 >> 0x1a);
- uint32_t x101 = ((uint32_t)x99 & 0x3ffffff);
- uint64_t x102 = (x100 + x78);
- uint64_t x103 = (x102 >> 0x1a);
- uint32_t x104 = ((uint32_t)x102 & 0x3ffffff);
- uint64_t x105 = (x103 + x77);
- uint64_t x106 = (x105 >> 0x1a);
- uint32_t x107 = ((uint32_t)x105 & 0x3ffffff);
- uint64_t x108 = (x106 + x76);
- uint64_t x109 = (x108 >> 0x1b);
- uint32_t x110 = ((uint32_t)x108 & 0x7ffffff);
- uint64_t x111 = (x109 + x75);
- uint64_t x112 = (x111 >> 0x1a);
- uint32_t x113 = ((uint32_t)x111 & 0x3ffffff);
- uint64_t x114 = (x112 + x74);
- uint64_t x115 = (x114 >> 0x1a);
- uint32_t x116 = ((uint32_t)x114 & 0x3ffffff);
- uint64_t x117 = (x115 + x73);
- uint64_t x118 = (x117 >> 0x1a);
- uint32_t x119 = ((uint32_t)x117 & 0x3ffffff);
- uint64_t x120 = (x118 + x72);
- uint64_t x121 = (x120 >> 0x1a);
- uint32_t x122 = ((uint32_t)x120 & 0x3ffffff);
- uint64_t x123 = (x121 + x71);
- uint64_t x124 = (x123 >> 0x1a);
- uint32_t x125 = ((uint32_t)x123 & 0x3ffffff);
- uint64_t x126 = (x124 + x70);
- uint64_t x127 = (x126 >> 0x1a);
- uint32_t x128 = ((uint32_t)x126 & 0x3ffffff);
- uint64_t x129 = (x127 + x69);
- uint64_t x130 = (x129 >> 0x1a);
- uint32_t x131 = ((uint32_t)x129 & 0x3ffffff);
- uint64_t x132 = (x130 + x68);
- uint64_t x133 = (x132 >> 0x1a);
- uint32_t x134 = ((uint32_t)x132 & 0x3ffffff);
- uint64_t x135 = (x86 + (0x11 * x133));
- uint32_t x136 = (uint32_t) (x135 >> 0x1b);
- uint32_t x137 = ((uint32_t)x135 & 0x7ffffff);
- uint32_t x138 = (x136 + x89);
- uint32_t x139 = (x138 >> 0x1a);
- uint32_t x140 = (x138 & 0x3ffffff);
- return (Return x134, Return x131, Return x128, Return x125, Return x122, Return x119, Return x116, Return x113, Return x110, Return x107, Return x104, Return x101, Return x98, Return x95, (x139 + x92), Return x140, Return x137))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e444m17_17limbs/femulDisplay.v b/src/Specific/solinas32_2e444m17_17limbs/femulDisplay.v
deleted file mode 100644
index 335e11d99..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e444m17_17limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e444m17_17limbs/fesquare.c b/src/Specific/solinas32_2e444m17_17limbs/fesquare.c
deleted file mode 100644
index 932f53329..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/fesquare.c
+++ /dev/null
@@ -1,110 +0,0 @@
-static void fesquare(uint32_t out[17], const uint32_t in1[17]) {
- { const uint32_t x31 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x33 = (((uint64_t)x2 * x31) + ((0x2 * ((uint64_t)x4 * x32)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x31 * x2)))))))))))))))));
- { uint64_t x34 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x11 * ((uint64_t)x31 * x31)));
- { uint64_t x35 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + ((0x2 * ((uint64_t)x6 * x26)) + ((0x2 * ((uint64_t)x8 * x24)) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + ((0x2 * ((uint64_t)x24 * x8)) + ((0x2 * ((uint64_t)x26 * x6)) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x11 * (((uint64_t)x32 * x31) + ((uint64_t)x31 * x32))));
- { uint64_t x36 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x11 * (((uint64_t)x30 * x31) + (((uint64_t)x32 * x32) + ((uint64_t)x31 * x30)))));
- { uint64_t x37 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x11 * (((uint64_t)x28 * x31) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + ((uint64_t)x31 * x28))))));
- { uint64_t x38 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x11 * (((uint64_t)x26 * x31) + (((uint64_t)x28 * x32) + (((uint64_t)x30 * x30) + (((uint64_t)x32 * x28) + ((uint64_t)x31 * x26)))))));
- { uint64_t x39 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x11 * (((uint64_t)x24 * x31) + (((uint64_t)x26 * x32) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (((uint64_t)x32 * x26) + ((uint64_t)x31 * x24))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x11 * (((uint64_t)x22 * x31) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + ((uint64_t)x31 * x22)))))))));
- { uint64_t x41 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x11 * ((0x2 * ((uint64_t)x20 * x31)) + ((0x2 * ((uint64_t)x22 * x32)) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + ((0x2 * ((uint64_t)x32 * x22)) + (0x2 * ((uint64_t)x31 * x20)))))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x11 * (((uint64_t)x18 * x31) + ((0x2 * ((uint64_t)x20 * x32)) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + ((0x2 * ((uint64_t)x26 * x26)) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + ((0x2 * ((uint64_t)x32 * x20)) + ((uint64_t)x31 * x18)))))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x11 * (((uint64_t)x16 * x31) + (((uint64_t)x18 * x32) + ((0x2 * ((uint64_t)x20 * x30)) + ((0x2 * ((uint64_t)x22 * x28)) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + ((0x2 * ((uint64_t)x28 * x22)) + ((0x2 * ((uint64_t)x30 * x20)) + (((uint64_t)x32 * x18) + ((uint64_t)x31 * x16))))))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x11 * (((uint64_t)x14 * x31) + (((uint64_t)x16 * x32) + (((uint64_t)x18 * x30) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + (((uint64_t)x30 * x18) + (((uint64_t)x32 * x16) + ((uint64_t)x31 * x14)))))))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x11 * (((uint64_t)x12 * x31) + (((uint64_t)x14 * x32) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + ((0x2 * ((uint64_t)x20 * x26)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + ((0x2 * ((uint64_t)x26 * x20)) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + (((uint64_t)x32 * x14) + ((uint64_t)x31 * x12))))))))))))));
- { uint64_t x46 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x11 * (((uint64_t)x10 * x31) + (((uint64_t)x12 * x32) + (((uint64_t)x14 * x30) + (((uint64_t)x16 * x28) + (((uint64_t)x18 * x26) + ((0x2 * ((uint64_t)x20 * x24)) + ((0x2 * ((uint64_t)x22 * x22)) + ((0x2 * ((uint64_t)x24 * x20)) + (((uint64_t)x26 * x18) + (((uint64_t)x28 * x16) + (((uint64_t)x30 * x14) + (((uint64_t)x32 * x12) + ((uint64_t)x31 * x10)))))))))))))));
- { uint64_t x47 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x11 * (((uint64_t)x8 * x31) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + ((uint64_t)x31 * x8))))))))))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * (((uint64_t)x6 * x31) + (((uint64_t)x8 * x32) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + (((uint64_t)x14 * x26) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (((uint64_t)x26 * x14) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + (((uint64_t)x32 * x8) + ((uint64_t)x31 * x6)))))))))))))))));
- { ℤ x49 = (((uint64_t)x2 * x2) +ℤ (0x11 *ℤ ((0x2 * ((uint64_t)x4 * x31)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + (0x2 * ((uint64_t)x31 * x4)))))))))))))))))));
- { uint64_t x50 = (x49 >> 0x1b);
- { uint32_t x51 = (x49 & 0x7ffffff);
- { uint64_t x52 = (x50 + x48);
- { uint64_t x53 = (x52 >> 0x1a);
- { uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- { uint64_t x55 = (x53 + x47);
- { uint64_t x56 = (x55 >> 0x1a);
- { uint32_t x57 = ((uint32_t)x55 & 0x3ffffff);
- { uint64_t x58 = (x56 + x46);
- { uint64_t x59 = (x58 >> 0x1a);
- { uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- { uint64_t x61 = (x59 + x45);
- { uint64_t x62 = (x61 >> 0x1a);
- { uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- { uint64_t x64 = (x62 + x44);
- { uint64_t x65 = (x64 >> 0x1a);
- { uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- { uint64_t x67 = (x65 + x43);
- { uint64_t x68 = (x67 >> 0x1a);
- { uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- { uint64_t x70 = (x68 + x42);
- { uint64_t x71 = (x70 >> 0x1a);
- { uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- { uint64_t x73 = (x71 + x41);
- { uint64_t x74 = (x73 >> 0x1b);
- { uint32_t x75 = ((uint32_t)x73 & 0x7ffffff);
- { uint64_t x76 = (x74 + x40);
- { uint64_t x77 = (x76 >> 0x1a);
- { uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- { uint64_t x79 = (x77 + x39);
- { uint64_t x80 = (x79 >> 0x1a);
- { uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- { uint64_t x82 = (x80 + x38);
- { uint64_t x83 = (x82 >> 0x1a);
- { uint32_t x84 = ((uint32_t)x82 & 0x3ffffff);
- { uint64_t x85 = (x83 + x37);
- { uint64_t x86 = (x85 >> 0x1a);
- { uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- { uint64_t x88 = (x86 + x36);
- { uint64_t x89 = (x88 >> 0x1a);
- { uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- { uint64_t x91 = (x89 + x35);
- { uint64_t x92 = (x91 >> 0x1a);
- { uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- { uint64_t x94 = (x92 + x34);
- { uint64_t x95 = (x94 >> 0x1a);
- { uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- { uint64_t x97 = (x95 + x33);
- { uint64_t x98 = (x97 >> 0x1a);
- { uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- { uint64_t x100 = (x51 + (0x11 * x98));
- { uint32_t x101 = (uint32_t) (x100 >> 0x1b);
- { uint32_t x102 = ((uint32_t)x100 & 0x7ffffff);
- { uint32_t x103 = (x101 + x54);
- { uint32_t x104 = (x103 >> 0x1a);
- { uint32_t x105 = (x103 & 0x3ffffff);
- out[0] = x102;
- out[1] = x105;
- out[2] = (x104 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- out[10] = x81;
- out[11] = x84;
- out[12] = x87;
- out[13] = x90;
- out[14] = x93;
- out[15] = x96;
- out[16] = x99;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e444m17_17limbs/fesquare.v b/src/Specific/solinas32_2e444m17_17limbs/fesquare.v
deleted file mode 100644
index 0e53eb8c0..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e444m17_17limbs.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_2e444m17_17limbs/fesquareDisplay.log b/src/Specific/solinas32_2e444m17_17limbs/fesquareDisplay.log
deleted file mode 100644
index fc75b2e14..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,80 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x31, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x33 = (((uint64_t)x2 * x31) + ((0x2 * ((uint64_t)x4 * x32)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x31 * x2)))))))))))))))));
- uint64_t x34 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x11 * ((uint64_t)x31 * x31)));
- uint64_t x35 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + ((0x2 * ((uint64_t)x6 * x26)) + ((0x2 * ((uint64_t)x8 * x24)) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + ((0x2 * ((uint64_t)x24 * x8)) + ((0x2 * ((uint64_t)x26 * x6)) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x11 * (((uint64_t)x32 * x31) + ((uint64_t)x31 * x32))));
- uint64_t x36 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x11 * (((uint64_t)x30 * x31) + (((uint64_t)x32 * x32) + ((uint64_t)x31 * x30)))));
- uint64_t x37 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x11 * (((uint64_t)x28 * x31) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + ((uint64_t)x31 * x28))))));
- uint64_t x38 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x11 * (((uint64_t)x26 * x31) + (((uint64_t)x28 * x32) + (((uint64_t)x30 * x30) + (((uint64_t)x32 * x28) + ((uint64_t)x31 * x26)))))));
- uint64_t x39 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x11 * (((uint64_t)x24 * x31) + (((uint64_t)x26 * x32) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (((uint64_t)x32 * x26) + ((uint64_t)x31 * x24))))))));
- uint64_t x40 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x11 * (((uint64_t)x22 * x31) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + ((uint64_t)x31 * x22)))))))));
- uint64_t x41 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x11 * ((0x2 * ((uint64_t)x20 * x31)) + ((0x2 * ((uint64_t)x22 * x32)) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + ((0x2 * ((uint64_t)x32 * x22)) + (0x2 * ((uint64_t)x31 * x20)))))))))));
- uint64_t x42 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x11 * (((uint64_t)x18 * x31) + ((0x2 * ((uint64_t)x20 * x32)) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + ((0x2 * ((uint64_t)x26 * x26)) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + ((0x2 * ((uint64_t)x32 * x20)) + ((uint64_t)x31 * x18)))))))))));
- uint64_t x43 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x11 * (((uint64_t)x16 * x31) + (((uint64_t)x18 * x32) + ((0x2 * ((uint64_t)x20 * x30)) + ((0x2 * ((uint64_t)x22 * x28)) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + ((0x2 * ((uint64_t)x28 * x22)) + ((0x2 * ((uint64_t)x30 * x20)) + (((uint64_t)x32 * x18) + ((uint64_t)x31 * x16))))))))))));
- uint64_t x44 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x11 * (((uint64_t)x14 * x31) + (((uint64_t)x16 * x32) + (((uint64_t)x18 * x30) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + (((uint64_t)x30 * x18) + (((uint64_t)x32 * x16) + ((uint64_t)x31 * x14)))))))))))));
- uint64_t x45 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x11 * (((uint64_t)x12 * x31) + (((uint64_t)x14 * x32) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + ((0x2 * ((uint64_t)x20 * x26)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + ((0x2 * ((uint64_t)x26 * x20)) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + (((uint64_t)x32 * x14) + ((uint64_t)x31 * x12))))))))))))));
- uint64_t x46 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x11 * (((uint64_t)x10 * x31) + (((uint64_t)x12 * x32) + (((uint64_t)x14 * x30) + (((uint64_t)x16 * x28) + (((uint64_t)x18 * x26) + ((0x2 * ((uint64_t)x20 * x24)) + ((0x2 * ((uint64_t)x22 * x22)) + ((0x2 * ((uint64_t)x24 * x20)) + (((uint64_t)x26 * x18) + (((uint64_t)x28 * x16) + (((uint64_t)x30 * x14) + (((uint64_t)x32 * x12) + ((uint64_t)x31 * x10)))))))))))))));
- uint64_t x47 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x11 * (((uint64_t)x8 * x31) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + ((uint64_t)x31 * x8))))))))))))))));
- uint64_t x48 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * (((uint64_t)x6 * x31) + (((uint64_t)x8 * x32) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + (((uint64_t)x14 * x26) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (((uint64_t)x26 * x14) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + (((uint64_t)x32 * x8) + ((uint64_t)x31 * x6)))))))))))))))));
- ℤ x49 = (((uint64_t)x2 * x2) +ℤ (0x11 *ℤ ((0x2 * ((uint64_t)x4 * x31)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + (0x2 * ((uint64_t)x31 * x4)))))))))))))))))));
- uint64_t x50 = (x49 >> 0x1b);
- uint32_t x51 = (x49 & 0x7ffffff);
- uint64_t x52 = (x50 + x48);
- uint64_t x53 = (x52 >> 0x1a);
- uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- uint64_t x55 = (x53 + x47);
- uint64_t x56 = (x55 >> 0x1a);
- uint32_t x57 = ((uint32_t)x55 & 0x3ffffff);
- uint64_t x58 = (x56 + x46);
- uint64_t x59 = (x58 >> 0x1a);
- uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- uint64_t x61 = (x59 + x45);
- uint64_t x62 = (x61 >> 0x1a);
- uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- uint64_t x64 = (x62 + x44);
- uint64_t x65 = (x64 >> 0x1a);
- uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- uint64_t x67 = (x65 + x43);
- uint64_t x68 = (x67 >> 0x1a);
- uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- uint64_t x70 = (x68 + x42);
- uint64_t x71 = (x70 >> 0x1a);
- uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- uint64_t x73 = (x71 + x41);
- uint64_t x74 = (x73 >> 0x1b);
- uint32_t x75 = ((uint32_t)x73 & 0x7ffffff);
- uint64_t x76 = (x74 + x40);
- uint64_t x77 = (x76 >> 0x1a);
- uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- uint64_t x79 = (x77 + x39);
- uint64_t x80 = (x79 >> 0x1a);
- uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- uint64_t x82 = (x80 + x38);
- uint64_t x83 = (x82 >> 0x1a);
- uint32_t x84 = ((uint32_t)x82 & 0x3ffffff);
- uint64_t x85 = (x83 + x37);
- uint64_t x86 = (x85 >> 0x1a);
- uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- uint64_t x88 = (x86 + x36);
- uint64_t x89 = (x88 >> 0x1a);
- uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- uint64_t x91 = (x89 + x35);
- uint64_t x92 = (x91 >> 0x1a);
- uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- uint64_t x94 = (x92 + x34);
- uint64_t x95 = (x94 >> 0x1a);
- uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- uint64_t x97 = (x95 + x33);
- uint64_t x98 = (x97 >> 0x1a);
- uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- uint64_t x100 = (x51 + (0x11 * x98));
- uint32_t x101 = (uint32_t) (x100 >> 0x1b);
- uint32_t x102 = ((uint32_t)x100 & 0x7ffffff);
- uint32_t x103 = (x101 + x54);
- uint32_t x104 = (x103 >> 0x1a);
- uint32_t x105 = (x103 & 0x3ffffff);
- return (Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x104 + x57), Return x105, Return x102))
-x
- : word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e444m17_17limbs/fesquareDisplay.v b/src/Specific/solinas32_2e444m17_17limbs/fesquareDisplay.v
deleted file mode 100644
index b4e84daa0..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e444m17_17limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e444m17_17limbs/fesub.c b/src/Specific/solinas32_2e444m17_17limbs/fesub.c
deleted file mode 100644
index fc24efe86..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/fesub.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void fesub(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- out[0] = ((0xfffffde + x5) - x37);
- out[1] = ((0x7fffffe + x7) - x39);
- out[2] = ((0x7fffffe + x9) - x41);
- out[3] = ((0x7fffffe + x11) - x43);
- out[4] = ((0x7fffffe + x13) - x45);
- out[5] = ((0x7fffffe + x15) - x47);
- out[6] = ((0x7fffffe + x17) - x49);
- out[7] = ((0x7fffffe + x19) - x51);
- out[8] = ((0xffffffe + x21) - x53);
- out[9] = ((0x7fffffe + x23) - x55);
- out[10] = ((0x7fffffe + x25) - x57);
- out[11] = ((0x7fffffe + x27) - x59);
- out[12] = ((0x7fffffe + x29) - x61);
- out[13] = ((0x7fffffe + x31) - x63);
- out[14] = ((0x7fffffe + x33) - x65);
- out[15] = ((0x7fffffe + x35) - x67);
- out[16] = ((0x7fffffe + x34) - x66);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e444m17_17limbs/fesub.v b/src/Specific/solinas32_2e444m17_17limbs/fesub.v
deleted file mode 100644
index 41a287ed8..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e444m17_17limbs.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_2e444m17_17limbs/fesubDisplay.log b/src/Specific/solinas32_2e444m17_17limbs/fesubDisplay.log
deleted file mode 100644
index 1ccd52dd3..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- (((0x7fffffe + x34) - x66), ((0x7fffffe + x35) - x67), ((0x7fffffe + x33) - x65), ((0x7fffffe + x31) - x63), ((0x7fffffe + x29) - x61), ((0x7fffffe + x27) - x59), ((0x7fffffe + x25) - x57), ((0x7fffffe + x23) - x55), ((0xffffffe + x21) - x53), ((0x7fffffe + x19) - x51), ((0x7fffffe + x17) - x49), ((0x7fffffe + x15) - x47), ((0x7fffffe + x13) - x45), ((0x7fffffe + x11) - x43), ((0x7fffffe + x9) - x41), ((0x7fffffe + x7) - x39), ((0xfffffde + x5) - x37)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e444m17_17limbs/fesubDisplay.v b/src/Specific/solinas32_2e444m17_17limbs/fesubDisplay.v
deleted file mode 100644
index 2e3af31f0..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e444m17_17limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e444m17_17limbs/freeze.c b/src/Specific/solinas32_2e444m17_17limbs/freeze.c
deleted file mode 100644
index cb0c59f8a..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/freeze.c
+++ /dev/null
@@ -1,89 +0,0 @@
-static void freeze(uint32_t out[17], const uint32_t in1[17]) {
- { const uint32_t x31 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffef);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x4, 0x3ffffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x6, 0x3ffffff);
- { uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x8, 0x3ffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x10, 0x3ffffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x12, 0x3ffffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x14, 0x3ffffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x16, 0x3ffffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x18, 0x7ffffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x20, 0x3ffffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x22, 0x3ffffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x24, 0x3ffffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x26, 0x3ffffff);
- { uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x28, 0x3ffffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x30, 0x3ffffff);
- { uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x32, 0x3ffffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x31, 0x3ffffff);
- { uint32_t x84 = cmovznz32(x83, 0x0, 0xffffffff);
- { uint32_t x85 = (x84 & 0x7ffffef);
- { uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x34, Return x85);
- { uint32_t x89 = (x84 & 0x3ffffff);
- { uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x37, Return x89);
- { uint32_t x93 = (x84 & 0x3ffffff);
- { uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x40, Return x93);
- { uint32_t x97 = (x84 & 0x3ffffff);
- { uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x43, Return x97);
- { uint32_t x101 = (x84 & 0x3ffffff);
- { uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x46, Return x101);
- { uint32_t x105 = (x84 & 0x3ffffff);
- { uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x49, Return x105);
- { uint32_t x109 = (x84 & 0x3ffffff);
- { uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x52, Return x109);
- { uint32_t x113 = (x84 & 0x3ffffff);
- { uint32_t x115, uint8_t x116 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x55, Return x113);
- { uint32_t x117 = (x84 & 0x7ffffff);
- { uint32_t x119, uint8_t x120 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x116, Return x58, Return x117);
- { uint32_t x121 = (x84 & 0x3ffffff);
- { uint32_t x123, uint8_t x124 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x120, Return x61, Return x121);
- { uint32_t x125 = (x84 & 0x3ffffff);
- { uint32_t x127, uint8_t x128 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x124, Return x64, Return x125);
- { uint32_t x129 = (x84 & 0x3ffffff);
- { uint32_t x131, uint8_t x132 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x128, Return x67, Return x129);
- { uint32_t x133 = (x84 & 0x3ffffff);
- { uint32_t x135, uint8_t x136 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x132, Return x70, Return x133);
- { uint32_t x137 = (x84 & 0x3ffffff);
- { uint32_t x139, uint8_t x140 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x136, Return x73, Return x137);
- { uint32_t x141 = (x84 & 0x3ffffff);
- { uint32_t x143, uint8_t x144 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x140, Return x76, Return x141);
- { uint32_t x145 = (x84 & 0x3ffffff);
- { uint32_t x147, uint8_t x148 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x144, Return x79, Return x145);
- { uint32_t x149 = (x84 & 0x3ffffff);
- { uint32_t x151, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x148, Return x82, Return x149);
- out[0] = x87;
- out[1] = x91;
- out[2] = x95;
- out[3] = x99;
- out[4] = x103;
- out[5] = x107;
- out[6] = x111;
- out[7] = x115;
- out[8] = x119;
- out[9] = x123;
- out[10] = x127;
- out[11] = x131;
- out[12] = x135;
- out[13] = x139;
- out[14] = x143;
- out[15] = x147;
- out[16] = x151;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e444m17_17limbs/freeze.v b/src/Specific/solinas32_2e444m17_17limbs/freeze.v
deleted file mode 100644
index 7e302cfff..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e444m17_17limbs.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_2e444m17_17limbs/freezeDisplay.log b/src/Specific/solinas32_2e444m17_17limbs/freezeDisplay.log
deleted file mode 100644
index 522f24f2d..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/freezeDisplay.log
+++ /dev/null
@@ -1,59 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x31, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffef);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x4, 0x3ffffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x6, 0x3ffffff);
- uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x8, 0x3ffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x10, 0x3ffffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x12, 0x3ffffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x14, 0x3ffffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x16, 0x3ffffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x18, 0x7ffffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x20, 0x3ffffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x22, 0x3ffffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x24, 0x3ffffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x26, 0x3ffffff);
- uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x28, 0x3ffffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x30, 0x3ffffff);
- uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x32, 0x3ffffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x31, 0x3ffffff);
- uint32_t x84 = cmovznz32(x83, 0x0, 0xffffffff);
- uint32_t x85 = (x84 & 0x7ffffef);
- uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x34, Return x85);
- uint32_t x89 = (x84 & 0x3ffffff);
- uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x37, Return x89);
- uint32_t x93 = (x84 & 0x3ffffff);
- uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x40, Return x93);
- uint32_t x97 = (x84 & 0x3ffffff);
- uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x43, Return x97);
- uint32_t x101 = (x84 & 0x3ffffff);
- uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x46, Return x101);
- uint32_t x105 = (x84 & 0x3ffffff);
- uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x49, Return x105);
- uint32_t x109 = (x84 & 0x3ffffff);
- uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x52, Return x109);
- uint32_t x113 = (x84 & 0x3ffffff);
- uint32_t x115, uint8_t x116 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x55, Return x113);
- uint32_t x117 = (x84 & 0x7ffffff);
- uint32_t x119, uint8_t x120 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x116, Return x58, Return x117);
- uint32_t x121 = (x84 & 0x3ffffff);
- uint32_t x123, uint8_t x124 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x120, Return x61, Return x121);
- uint32_t x125 = (x84 & 0x3ffffff);
- uint32_t x127, uint8_t x128 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x124, Return x64, Return x125);
- uint32_t x129 = (x84 & 0x3ffffff);
- uint32_t x131, uint8_t x132 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x128, Return x67, Return x129);
- uint32_t x133 = (x84 & 0x3ffffff);
- uint32_t x135, uint8_t x136 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x132, Return x70, Return x133);
- uint32_t x137 = (x84 & 0x3ffffff);
- uint32_t x139, uint8_t x140 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x136, Return x73, Return x137);
- uint32_t x141 = (x84 & 0x3ffffff);
- uint32_t x143, uint8_t x144 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x140, Return x76, Return x141);
- uint32_t x145 = (x84 & 0x3ffffff);
- uint32_t x147, uint8_t x148 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x144, Return x79, Return x145);
- uint32_t x149 = (x84 & 0x3ffffff);
- uint32_t x151, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x148, Return x82, Return x149);
- (Return x151, Return x147, Return x143, Return x139, Return x135, Return x131, Return x127, Return x123, Return x119, Return x115, Return x111, Return x107, Return x103, Return x99, Return x95, Return x91, Return x87))
-x
- : word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e444m17_17limbs/freezeDisplay.v b/src/Specific/solinas32_2e444m17_17limbs/freezeDisplay.v
deleted file mode 100644
index e669b84cc..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e444m17_17limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e444m17_17limbs/py_interpreter.sh b/src/Specific/solinas32_2e444m17_17limbs/py_interpreter.sh
deleted file mode 100755
index 746a5ef3f..000000000
--- a/src/Specific/solinas32_2e444m17_17limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**444 - 17' -Dmodulus_bytes='26 + 2/17' -Da24='121665'
diff --git a/src/Specific/solinas32_2e444m17_18limbs/CurveParameters.v b/src/Specific/solinas32_2e444m17_18limbs/CurveParameters.v
deleted file mode 100644
index 891ec9f37..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^444 - 17
-Base: 24 + 2/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 18%nat;
- base := 24 + 2/3;
- bitwidth := 32;
- s := 2^444;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 18); [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_2e444m17_18limbs/Synthesis.v b/src/Specific/solinas32_2e444m17_18limbs/Synthesis.v
deleted file mode 100644
index 5254d531f..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e444m17_18limbs.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_2e444m17_18limbs/compiler.sh b/src/Specific/solinas32_2e444m17_18limbs/compiler.sh
deleted file mode 100755
index f67fd2d65..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,25,24,25,25,24,25,25,24,25,25,24,25,25,24,25,25,24}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<444) - 17' "$@"
diff --git a/src/Specific/solinas32_2e444m17_18limbs/compilerxx.sh b/src/Specific/solinas32_2e444m17_18limbs/compilerxx.sh
deleted file mode 100755
index 2ac6f04cc..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,25,24,25,25,24,25,25,24,25,25,24,25,25,24,25,25,24}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<444) - 17' "$@"
diff --git a/src/Specific/solinas32_2e444m17_18limbs/feadd.c b/src/Specific/solinas32_2e444m17_18limbs/feadd.c
deleted file mode 100644
index 7b8380410..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/feadd.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void feadd(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- out[0] = (x5 + x39);
- out[1] = (x7 + x41);
- out[2] = (x9 + x43);
- out[3] = (x11 + x45);
- out[4] = (x13 + x47);
- out[5] = (x15 + x49);
- out[6] = (x17 + x51);
- out[7] = (x19 + x53);
- out[8] = (x21 + x55);
- out[9] = (x23 + x57);
- out[10] = (x25 + x59);
- out[11] = (x27 + x61);
- out[12] = (x29 + x63);
- out[13] = (x31 + x65);
- out[14] = (x33 + x67);
- out[15] = (x35 + x69);
- out[16] = (x37 + x71);
- out[17] = (x36 + x70);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e444m17_18limbs/feadd.v b/src/Specific/solinas32_2e444m17_18limbs/feadd.v
deleted file mode 100644
index dfe1ad6db..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e444m17_18limbs.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_2e444m17_18limbs/feaddDisplay.log b/src/Specific/solinas32_2e444m17_18limbs/feaddDisplay.log
deleted file mode 100644
index 5e9c243f4..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- ((x36 + x70), (x37 + x71), (x35 + x69), (x33 + x67), (x31 + x65), (x29 + x63), (x27 + x61), (x25 + x59), (x23 + x57), (x21 + x55), (x19 + x53), (x17 + x51), (x15 + x49), (x13 + x47), (x11 + x45), (x9 + x43), (x7 + x41), (x5 + x39)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e444m17_18limbs/feaddDisplay.v b/src/Specific/solinas32_2e444m17_18limbs/feaddDisplay.v
deleted file mode 100644
index aa1512a9f..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e444m17_18limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e444m17_18limbs/fecarry.v b/src/Specific/solinas32_2e444m17_18limbs/fecarry.v
deleted file mode 100644
index 3afa67257..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e444m17_18limbs.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_2e444m17_18limbs/fecarryDisplay.v b/src/Specific/solinas32_2e444m17_18limbs/fecarryDisplay.v
deleted file mode 100644
index 5cf6d0f71..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e444m17_18limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e444m17_18limbs/femul.c b/src/Specific/solinas32_2e444m17_18limbs/femul.c
deleted file mode 100644
index f81b8f1fa..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/femul.c
+++ /dev/null
@@ -1,134 +0,0 @@
-static void femul(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- { uint64_t x72 = (((uint64_t)x5 * x70) + (((uint64_t)x7 * x71) + (((uint64_t)x9 * x69) + (((uint64_t)x11 * x67) + (((uint64_t)x13 * x65) + (((uint64_t)x15 * x63) + (((uint64_t)x17 * x61) + (((uint64_t)x19 * x59) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + (((uint64_t)x29 * x49) + (((uint64_t)x31 * x47) + (((uint64_t)x33 * x45) + (((uint64_t)x35 * x43) + (((uint64_t)x37 * x41) + ((uint64_t)x36 * x39))))))))))))))))));
- { uint64_t x73 = ((((uint64_t)x5 * x71) + (((uint64_t)x7 * x69) + ((0x2 * ((uint64_t)x9 * x67)) + (((uint64_t)x11 * x65) + (((uint64_t)x13 * x63) + ((0x2 * ((uint64_t)x15 * x61)) + (((uint64_t)x17 * x59) + (((uint64_t)x19 * x57) + ((0x2 * ((uint64_t)x21 * x55)) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + ((0x2 * ((uint64_t)x27 * x49)) + (((uint64_t)x29 * x47) + (((uint64_t)x31 * x45) + ((0x2 * ((uint64_t)x33 * x43)) + (((uint64_t)x35 * x41) + ((uint64_t)x37 * x39))))))))))))))))) + (0x11 * (0x2 * ((uint64_t)x36 * x70))));
- { uint64_t x74 = ((((uint64_t)x5 * x69) + ((0x2 * ((uint64_t)x7 * x67)) + ((0x2 * ((uint64_t)x9 * x65)) + (((uint64_t)x11 * x63) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + (((uint64_t)x17 * x57) + ((0x2 * ((uint64_t)x19 * x55)) + ((0x2 * ((uint64_t)x21 * x53)) + (((uint64_t)x23 * x51) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + (((uint64_t)x29 * x45) + ((0x2 * ((uint64_t)x31 * x43)) + ((0x2 * ((uint64_t)x33 * x41)) + ((uint64_t)x35 * x39)))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x37 * x70)) + (0x2 * ((uint64_t)x36 * x71)))));
- { uint64_t x75 = ((((uint64_t)x5 * x67) + (((uint64_t)x7 * x65) + (((uint64_t)x9 * x63) + (((uint64_t)x11 * x61) + (((uint64_t)x13 * x59) + (((uint64_t)x15 * x57) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + (((uint64_t)x29 * x43) + (((uint64_t)x31 * x41) + ((uint64_t)x33 * x39))))))))))))))) + (0x11 * (((uint64_t)x35 * x70) + (((uint64_t)x37 * x71) + ((uint64_t)x36 * x69)))));
- { uint64_t x76 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + ((0x2 * ((uint64_t)x9 * x61)) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + ((0x2 * ((uint64_t)x15 * x55)) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + ((0x2 * ((uint64_t)x21 * x49)) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + ((0x2 * ((uint64_t)x27 * x43)) + (((uint64_t)x29 * x41) + ((uint64_t)x31 * x39)))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x33 * x70)) + (((uint64_t)x35 * x71) + (((uint64_t)x37 * x69) + (0x2 * ((uint64_t)x36 * x67)))))));
- { uint64_t x77 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + (((uint64_t)x11 * x57) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + (((uint64_t)x17 * x51) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + (((uint64_t)x23 * x45) + ((0x2 * ((uint64_t)x25 * x43)) + ((0x2 * ((uint64_t)x27 * x41)) + ((uint64_t)x29 * x39))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x31 * x70)) + ((0x2 * ((uint64_t)x33 * x71)) + (((uint64_t)x35 * x69) + ((0x2 * ((uint64_t)x37 * x67)) + (0x2 * ((uint64_t)x36 * x65))))))));
- { uint64_t x78 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + ((uint64_t)x27 * x39)))))))))))) + (0x11 * (((uint64_t)x29 * x70) + (((uint64_t)x31 * x71) + (((uint64_t)x33 * x69) + (((uint64_t)x35 * x67) + (((uint64_t)x37 * x65) + ((uint64_t)x36 * x63))))))));
- { uint64_t x79 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + ((0x2 * ((uint64_t)x9 * x55)) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + ((0x2 * ((uint64_t)x15 * x49)) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + ((0x2 * ((uint64_t)x21 * x43)) + (((uint64_t)x23 * x41) + ((uint64_t)x25 * x39))))))))))) + (0x11 * ((0x2 * ((uint64_t)x27 * x70)) + (((uint64_t)x29 * x71) + (((uint64_t)x31 * x69) + ((0x2 * ((uint64_t)x33 * x67)) + (((uint64_t)x35 * x65) + (((uint64_t)x37 * x63) + (0x2 * ((uint64_t)x36 * x61))))))))));
- { uint64_t x80 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + (((uint64_t)x17 * x45) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((uint64_t)x23 * x39)))))))))) + (0x11 * ((0x2 * ((uint64_t)x25 * x70)) + ((0x2 * ((uint64_t)x27 * x71)) + (((uint64_t)x29 * x69) + ((0x2 * ((uint64_t)x31 * x67)) + ((0x2 * ((uint64_t)x33 * x65)) + (((uint64_t)x35 * x63) + ((0x2 * ((uint64_t)x37 * x61)) + (0x2 * ((uint64_t)x36 * x59)))))))))));
- { uint64_t x81 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + ((uint64_t)x21 * x39))))))))) + (0x11 * (((uint64_t)x23 * x70) + (((uint64_t)x25 * x71) + (((uint64_t)x27 * x69) + (((uint64_t)x29 * x67) + (((uint64_t)x31 * x65) + (((uint64_t)x33 * x63) + (((uint64_t)x35 * x61) + (((uint64_t)x37 * x59) + ((uint64_t)x36 * x57)))))))))));
- { uint64_t x82 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + ((0x2 * ((uint64_t)x15 * x43)) + (((uint64_t)x17 * x41) + ((uint64_t)x19 * x39)))))))) + (0x11 * ((0x2 * ((uint64_t)x21 * x70)) + (((uint64_t)x23 * x71) + (((uint64_t)x25 * x69) + ((0x2 * ((uint64_t)x27 * x67)) + (((uint64_t)x29 * x65) + (((uint64_t)x31 * x63) + ((0x2 * ((uint64_t)x33 * x61)) + (((uint64_t)x35 * x59) + (((uint64_t)x37 * x57) + (0x2 * ((uint64_t)x36 * x55)))))))))))));
- { uint64_t x83 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + (((uint64_t)x11 * x45) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((uint64_t)x17 * x39))))))) + (0x11 * ((0x2 * ((uint64_t)x19 * x70)) + ((0x2 * ((uint64_t)x21 * x71)) + (((uint64_t)x23 * x69) + ((0x2 * ((uint64_t)x25 * x67)) + ((0x2 * ((uint64_t)x27 * x65)) + (((uint64_t)x29 * x63) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + (((uint64_t)x35 * x57) + ((0x2 * ((uint64_t)x37 * x55)) + (0x2 * ((uint64_t)x36 * x53))))))))))))));
- { uint64_t x84 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + ((uint64_t)x15 * x39)))))) + (0x11 * (((uint64_t)x17 * x70) + (((uint64_t)x19 * x71) + (((uint64_t)x21 * x69) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + (((uint64_t)x37 * x53) + ((uint64_t)x36 * x51))))))))))))));
- { uint64_t x85 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + ((0x2 * ((uint64_t)x9 * x43)) + (((uint64_t)x11 * x41) + ((uint64_t)x13 * x39))))) + (0x11 * ((0x2 * ((uint64_t)x15 * x70)) + (((uint64_t)x17 * x71) + (((uint64_t)x19 * x69) + ((0x2 * ((uint64_t)x21 * x67)) + (((uint64_t)x23 * x65) + (((uint64_t)x25 * x63) + ((0x2 * ((uint64_t)x27 * x61)) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + ((0x2 * ((uint64_t)x33 * x55)) + (((uint64_t)x35 * x53) + (((uint64_t)x37 * x51) + (0x2 * ((uint64_t)x36 * x49))))))))))))))));
- { uint64_t x86 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((uint64_t)x11 * x39)))) + (0x11 * ((0x2 * ((uint64_t)x13 * x70)) + ((0x2 * ((uint64_t)x15 * x71)) + (((uint64_t)x17 * x69) + ((0x2 * ((uint64_t)x19 * x67)) + ((0x2 * ((uint64_t)x21 * x65)) + (((uint64_t)x23 * x63) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + (((uint64_t)x29 * x57) + ((0x2 * ((uint64_t)x31 * x55)) + ((0x2 * ((uint64_t)x33 * x53)) + (((uint64_t)x35 * x51) + ((0x2 * ((uint64_t)x37 * x49)) + (0x2 * ((uint64_t)x36 * x47)))))))))))))))));
- { uint64_t x87 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + ((uint64_t)x9 * x39))) + (0x11 * (((uint64_t)x11 * x70) + (((uint64_t)x13 * x71) + (((uint64_t)x15 * x69) + (((uint64_t)x17 * x67) + (((uint64_t)x19 * x65) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + (((uint64_t)x35 * x49) + (((uint64_t)x37 * x47) + ((uint64_t)x36 * x45)))))))))))))))));
- { uint64_t x88 = ((((uint64_t)x5 * x41) + ((uint64_t)x7 * x39)) + (0x11 * ((0x2 * ((uint64_t)x9 * x70)) + (((uint64_t)x11 * x71) + (((uint64_t)x13 * x69) + ((0x2 * ((uint64_t)x15 * x67)) + (((uint64_t)x17 * x65) + (((uint64_t)x19 * x63) + ((0x2 * ((uint64_t)x21 * x61)) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + ((0x2 * ((uint64_t)x27 * x55)) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + ((0x2 * ((uint64_t)x33 * x49)) + (((uint64_t)x35 * x47) + (((uint64_t)x37 * x45) + (0x2 * ((uint64_t)x36 * x43)))))))))))))))))));
- { uint64_t x89 = (((uint64_t)x5 * x39) + (0x11 * ((0x2 * ((uint64_t)x7 * x70)) + ((0x2 * ((uint64_t)x9 * x71)) + (((uint64_t)x11 * x69) + ((0x2 * ((uint64_t)x13 * x67)) + ((0x2 * ((uint64_t)x15 * x65)) + (((uint64_t)x17 * x63) + ((0x2 * ((uint64_t)x19 * x61)) + ((0x2 * ((uint64_t)x21 * x59)) + (((uint64_t)x23 * x57) + ((0x2 * ((uint64_t)x25 * x55)) + ((0x2 * ((uint64_t)x27 * x53)) + (((uint64_t)x29 * x51) + ((0x2 * ((uint64_t)x31 * x49)) + ((0x2 * ((uint64_t)x33 * x47)) + (((uint64_t)x35 * x45) + ((0x2 * ((uint64_t)x37 * x43)) + (0x2 * ((uint64_t)x36 * x41))))))))))))))))))));
- { uint64_t x90 = (x89 >> 0x19);
- { uint32_t x91 = ((uint32_t)x89 & 0x1ffffff);
- { uint64_t x92 = (x90 + x88);
- { uint64_t x93 = (x92 >> 0x19);
- { uint32_t x94 = ((uint32_t)x92 & 0x1ffffff);
- { uint64_t x95 = (x93 + x87);
- { uint64_t x96 = (x95 >> 0x18);
- { uint32_t x97 = ((uint32_t)x95 & 0xffffff);
- { uint64_t x98 = (x96 + x86);
- { uint64_t x99 = (x98 >> 0x19);
- { uint32_t x100 = ((uint32_t)x98 & 0x1ffffff);
- { uint64_t x101 = (x99 + x85);
- { uint64_t x102 = (x101 >> 0x19);
- { uint32_t x103 = ((uint32_t)x101 & 0x1ffffff);
- { uint64_t x104 = (x102 + x84);
- { uint64_t x105 = (x104 >> 0x18);
- { uint32_t x106 = ((uint32_t)x104 & 0xffffff);
- { uint64_t x107 = (x105 + x83);
- { uint64_t x108 = (x107 >> 0x19);
- { uint32_t x109 = ((uint32_t)x107 & 0x1ffffff);
- { uint64_t x110 = (x108 + x82);
- { uint64_t x111 = (x110 >> 0x19);
- { uint32_t x112 = ((uint32_t)x110 & 0x1ffffff);
- { uint64_t x113 = (x111 + x81);
- { uint64_t x114 = (x113 >> 0x18);
- { uint32_t x115 = ((uint32_t)x113 & 0xffffff);
- { uint64_t x116 = (x114 + x80);
- { uint64_t x117 = (x116 >> 0x19);
- { uint32_t x118 = ((uint32_t)x116 & 0x1ffffff);
- { uint64_t x119 = (x117 + x79);
- { uint64_t x120 = (x119 >> 0x19);
- { uint32_t x121 = ((uint32_t)x119 & 0x1ffffff);
- { uint64_t x122 = (x120 + x78);
- { uint64_t x123 = (x122 >> 0x18);
- { uint32_t x124 = ((uint32_t)x122 & 0xffffff);
- { uint64_t x125 = (x123 + x77);
- { uint64_t x126 = (x125 >> 0x19);
- { uint32_t x127 = ((uint32_t)x125 & 0x1ffffff);
- { uint64_t x128 = (x126 + x76);
- { uint64_t x129 = (x128 >> 0x19);
- { uint32_t x130 = ((uint32_t)x128 & 0x1ffffff);
- { uint64_t x131 = (x129 + x75);
- { uint64_t x132 = (x131 >> 0x18);
- { uint32_t x133 = ((uint32_t)x131 & 0xffffff);
- { uint64_t x134 = (x132 + x74);
- { uint64_t x135 = (x134 >> 0x19);
- { uint32_t x136 = ((uint32_t)x134 & 0x1ffffff);
- { uint64_t x137 = (x135 + x73);
- { uint64_t x138 = (x137 >> 0x19);
- { uint32_t x139 = ((uint32_t)x137 & 0x1ffffff);
- { uint64_t x140 = (x138 + x72);
- { uint64_t x141 = (x140 >> 0x18);
- { uint32_t x142 = ((uint32_t)x140 & 0xffffff);
- { uint64_t x143 = (x91 + (0x11 * x141));
- { uint32_t x144 = (uint32_t) (x143 >> 0x19);
- { uint32_t x145 = ((uint32_t)x143 & 0x1ffffff);
- { uint32_t x146 = (x144 + x94);
- { uint32_t x147 = (x146 >> 0x19);
- { uint32_t x148 = (x146 & 0x1ffffff);
- out[0] = x145;
- out[1] = x148;
- out[2] = (x147 + x97);
- out[3] = x100;
- out[4] = x103;
- out[5] = x106;
- out[6] = x109;
- out[7] = x112;
- out[8] = x115;
- out[9] = x118;
- out[10] = x121;
- out[11] = x124;
- out[12] = x127;
- out[13] = x130;
- out[14] = x133;
- out[15] = x136;
- out[16] = x139;
- out[17] = x142;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e444m17_18limbs/femul.v b/src/Specific/solinas32_2e444m17_18limbs/femul.v
deleted file mode 100644
index edc889e6f..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e444m17_18limbs.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_2e444m17_18limbs/femulDisplay.log b/src/Specific/solinas32_2e444m17_18limbs/femulDisplay.log
deleted file mode 100644
index 5f824df8c..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/femulDisplay.log
+++ /dev/null
@@ -1,84 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- uint64_t x72 = (((uint64_t)x5 * x70) + (((uint64_t)x7 * x71) + (((uint64_t)x9 * x69) + (((uint64_t)x11 * x67) + (((uint64_t)x13 * x65) + (((uint64_t)x15 * x63) + (((uint64_t)x17 * x61) + (((uint64_t)x19 * x59) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + (((uint64_t)x29 * x49) + (((uint64_t)x31 * x47) + (((uint64_t)x33 * x45) + (((uint64_t)x35 * x43) + (((uint64_t)x37 * x41) + ((uint64_t)x36 * x39))))))))))))))))));
- uint64_t x73 = ((((uint64_t)x5 * x71) + (((uint64_t)x7 * x69) + ((0x2 * ((uint64_t)x9 * x67)) + (((uint64_t)x11 * x65) + (((uint64_t)x13 * x63) + ((0x2 * ((uint64_t)x15 * x61)) + (((uint64_t)x17 * x59) + (((uint64_t)x19 * x57) + ((0x2 * ((uint64_t)x21 * x55)) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + ((0x2 * ((uint64_t)x27 * x49)) + (((uint64_t)x29 * x47) + (((uint64_t)x31 * x45) + ((0x2 * ((uint64_t)x33 * x43)) + (((uint64_t)x35 * x41) + ((uint64_t)x37 * x39))))))))))))))))) + (0x11 * (0x2 * ((uint64_t)x36 * x70))));
- uint64_t x74 = ((((uint64_t)x5 * x69) + ((0x2 * ((uint64_t)x7 * x67)) + ((0x2 * ((uint64_t)x9 * x65)) + (((uint64_t)x11 * x63) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + (((uint64_t)x17 * x57) + ((0x2 * ((uint64_t)x19 * x55)) + ((0x2 * ((uint64_t)x21 * x53)) + (((uint64_t)x23 * x51) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + (((uint64_t)x29 * x45) + ((0x2 * ((uint64_t)x31 * x43)) + ((0x2 * ((uint64_t)x33 * x41)) + ((uint64_t)x35 * x39)))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x37 * x70)) + (0x2 * ((uint64_t)x36 * x71)))));
- uint64_t x75 = ((((uint64_t)x5 * x67) + (((uint64_t)x7 * x65) + (((uint64_t)x9 * x63) + (((uint64_t)x11 * x61) + (((uint64_t)x13 * x59) + (((uint64_t)x15 * x57) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + (((uint64_t)x29 * x43) + (((uint64_t)x31 * x41) + ((uint64_t)x33 * x39))))))))))))))) + (0x11 * (((uint64_t)x35 * x70) + (((uint64_t)x37 * x71) + ((uint64_t)x36 * x69)))));
- uint64_t x76 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + ((0x2 * ((uint64_t)x9 * x61)) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + ((0x2 * ((uint64_t)x15 * x55)) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + ((0x2 * ((uint64_t)x21 * x49)) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + ((0x2 * ((uint64_t)x27 * x43)) + (((uint64_t)x29 * x41) + ((uint64_t)x31 * x39)))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x33 * x70)) + (((uint64_t)x35 * x71) + (((uint64_t)x37 * x69) + (0x2 * ((uint64_t)x36 * x67)))))));
- uint64_t x77 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + (((uint64_t)x11 * x57) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + (((uint64_t)x17 * x51) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + (((uint64_t)x23 * x45) + ((0x2 * ((uint64_t)x25 * x43)) + ((0x2 * ((uint64_t)x27 * x41)) + ((uint64_t)x29 * x39))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x31 * x70)) + ((0x2 * ((uint64_t)x33 * x71)) + (((uint64_t)x35 * x69) + ((0x2 * ((uint64_t)x37 * x67)) + (0x2 * ((uint64_t)x36 * x65))))))));
- uint64_t x78 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + ((uint64_t)x27 * x39)))))))))))) + (0x11 * (((uint64_t)x29 * x70) + (((uint64_t)x31 * x71) + (((uint64_t)x33 * x69) + (((uint64_t)x35 * x67) + (((uint64_t)x37 * x65) + ((uint64_t)x36 * x63))))))));
- uint64_t x79 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + ((0x2 * ((uint64_t)x9 * x55)) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + ((0x2 * ((uint64_t)x15 * x49)) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + ((0x2 * ((uint64_t)x21 * x43)) + (((uint64_t)x23 * x41) + ((uint64_t)x25 * x39))))))))))) + (0x11 * ((0x2 * ((uint64_t)x27 * x70)) + (((uint64_t)x29 * x71) + (((uint64_t)x31 * x69) + ((0x2 * ((uint64_t)x33 * x67)) + (((uint64_t)x35 * x65) + (((uint64_t)x37 * x63) + (0x2 * ((uint64_t)x36 * x61))))))))));
- uint64_t x80 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + (((uint64_t)x17 * x45) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((uint64_t)x23 * x39)))))))))) + (0x11 * ((0x2 * ((uint64_t)x25 * x70)) + ((0x2 * ((uint64_t)x27 * x71)) + (((uint64_t)x29 * x69) + ((0x2 * ((uint64_t)x31 * x67)) + ((0x2 * ((uint64_t)x33 * x65)) + (((uint64_t)x35 * x63) + ((0x2 * ((uint64_t)x37 * x61)) + (0x2 * ((uint64_t)x36 * x59)))))))))));
- uint64_t x81 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + ((uint64_t)x21 * x39))))))))) + (0x11 * (((uint64_t)x23 * x70) + (((uint64_t)x25 * x71) + (((uint64_t)x27 * x69) + (((uint64_t)x29 * x67) + (((uint64_t)x31 * x65) + (((uint64_t)x33 * x63) + (((uint64_t)x35 * x61) + (((uint64_t)x37 * x59) + ((uint64_t)x36 * x57)))))))))));
- uint64_t x82 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + ((0x2 * ((uint64_t)x15 * x43)) + (((uint64_t)x17 * x41) + ((uint64_t)x19 * x39)))))))) + (0x11 * ((0x2 * ((uint64_t)x21 * x70)) + (((uint64_t)x23 * x71) + (((uint64_t)x25 * x69) + ((0x2 * ((uint64_t)x27 * x67)) + (((uint64_t)x29 * x65) + (((uint64_t)x31 * x63) + ((0x2 * ((uint64_t)x33 * x61)) + (((uint64_t)x35 * x59) + (((uint64_t)x37 * x57) + (0x2 * ((uint64_t)x36 * x55)))))))))))));
- uint64_t x83 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + (((uint64_t)x11 * x45) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((uint64_t)x17 * x39))))))) + (0x11 * ((0x2 * ((uint64_t)x19 * x70)) + ((0x2 * ((uint64_t)x21 * x71)) + (((uint64_t)x23 * x69) + ((0x2 * ((uint64_t)x25 * x67)) + ((0x2 * ((uint64_t)x27 * x65)) + (((uint64_t)x29 * x63) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + (((uint64_t)x35 * x57) + ((0x2 * ((uint64_t)x37 * x55)) + (0x2 * ((uint64_t)x36 * x53))))))))))))));
- uint64_t x84 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + ((uint64_t)x15 * x39)))))) + (0x11 * (((uint64_t)x17 * x70) + (((uint64_t)x19 * x71) + (((uint64_t)x21 * x69) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + (((uint64_t)x37 * x53) + ((uint64_t)x36 * x51))))))))))))));
- uint64_t x85 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + ((0x2 * ((uint64_t)x9 * x43)) + (((uint64_t)x11 * x41) + ((uint64_t)x13 * x39))))) + (0x11 * ((0x2 * ((uint64_t)x15 * x70)) + (((uint64_t)x17 * x71) + (((uint64_t)x19 * x69) + ((0x2 * ((uint64_t)x21 * x67)) + (((uint64_t)x23 * x65) + (((uint64_t)x25 * x63) + ((0x2 * ((uint64_t)x27 * x61)) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + ((0x2 * ((uint64_t)x33 * x55)) + (((uint64_t)x35 * x53) + (((uint64_t)x37 * x51) + (0x2 * ((uint64_t)x36 * x49))))))))))))))));
- uint64_t x86 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((uint64_t)x11 * x39)))) + (0x11 * ((0x2 * ((uint64_t)x13 * x70)) + ((0x2 * ((uint64_t)x15 * x71)) + (((uint64_t)x17 * x69) + ((0x2 * ((uint64_t)x19 * x67)) + ((0x2 * ((uint64_t)x21 * x65)) + (((uint64_t)x23 * x63) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + (((uint64_t)x29 * x57) + ((0x2 * ((uint64_t)x31 * x55)) + ((0x2 * ((uint64_t)x33 * x53)) + (((uint64_t)x35 * x51) + ((0x2 * ((uint64_t)x37 * x49)) + (0x2 * ((uint64_t)x36 * x47)))))))))))))))));
- uint64_t x87 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + ((uint64_t)x9 * x39))) + (0x11 * (((uint64_t)x11 * x70) + (((uint64_t)x13 * x71) + (((uint64_t)x15 * x69) + (((uint64_t)x17 * x67) + (((uint64_t)x19 * x65) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + (((uint64_t)x35 * x49) + (((uint64_t)x37 * x47) + ((uint64_t)x36 * x45)))))))))))))))));
- uint64_t x88 = ((((uint64_t)x5 * x41) + ((uint64_t)x7 * x39)) + (0x11 * ((0x2 * ((uint64_t)x9 * x70)) + (((uint64_t)x11 * x71) + (((uint64_t)x13 * x69) + ((0x2 * ((uint64_t)x15 * x67)) + (((uint64_t)x17 * x65) + (((uint64_t)x19 * x63) + ((0x2 * ((uint64_t)x21 * x61)) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + ((0x2 * ((uint64_t)x27 * x55)) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + ((0x2 * ((uint64_t)x33 * x49)) + (((uint64_t)x35 * x47) + (((uint64_t)x37 * x45) + (0x2 * ((uint64_t)x36 * x43)))))))))))))))))));
- uint64_t x89 = (((uint64_t)x5 * x39) + (0x11 * ((0x2 * ((uint64_t)x7 * x70)) + ((0x2 * ((uint64_t)x9 * x71)) + (((uint64_t)x11 * x69) + ((0x2 * ((uint64_t)x13 * x67)) + ((0x2 * ((uint64_t)x15 * x65)) + (((uint64_t)x17 * x63) + ((0x2 * ((uint64_t)x19 * x61)) + ((0x2 * ((uint64_t)x21 * x59)) + (((uint64_t)x23 * x57) + ((0x2 * ((uint64_t)x25 * x55)) + ((0x2 * ((uint64_t)x27 * x53)) + (((uint64_t)x29 * x51) + ((0x2 * ((uint64_t)x31 * x49)) + ((0x2 * ((uint64_t)x33 * x47)) + (((uint64_t)x35 * x45) + ((0x2 * ((uint64_t)x37 * x43)) + (0x2 * ((uint64_t)x36 * x41))))))))))))))))))));
- uint64_t x90 = (x89 >> 0x19);
- uint32_t x91 = ((uint32_t)x89 & 0x1ffffff);
- uint64_t x92 = (x90 + x88);
- uint64_t x93 = (x92 >> 0x19);
- uint32_t x94 = ((uint32_t)x92 & 0x1ffffff);
- uint64_t x95 = (x93 + x87);
- uint64_t x96 = (x95 >> 0x18);
- uint32_t x97 = ((uint32_t)x95 & 0xffffff);
- uint64_t x98 = (x96 + x86);
- uint64_t x99 = (x98 >> 0x19);
- uint32_t x100 = ((uint32_t)x98 & 0x1ffffff);
- uint64_t x101 = (x99 + x85);
- uint64_t x102 = (x101 >> 0x19);
- uint32_t x103 = ((uint32_t)x101 & 0x1ffffff);
- uint64_t x104 = (x102 + x84);
- uint64_t x105 = (x104 >> 0x18);
- uint32_t x106 = ((uint32_t)x104 & 0xffffff);
- uint64_t x107 = (x105 + x83);
- uint64_t x108 = (x107 >> 0x19);
- uint32_t x109 = ((uint32_t)x107 & 0x1ffffff);
- uint64_t x110 = (x108 + x82);
- uint64_t x111 = (x110 >> 0x19);
- uint32_t x112 = ((uint32_t)x110 & 0x1ffffff);
- uint64_t x113 = (x111 + x81);
- uint64_t x114 = (x113 >> 0x18);
- uint32_t x115 = ((uint32_t)x113 & 0xffffff);
- uint64_t x116 = (x114 + x80);
- uint64_t x117 = (x116 >> 0x19);
- uint32_t x118 = ((uint32_t)x116 & 0x1ffffff);
- uint64_t x119 = (x117 + x79);
- uint64_t x120 = (x119 >> 0x19);
- uint32_t x121 = ((uint32_t)x119 & 0x1ffffff);
- uint64_t x122 = (x120 + x78);
- uint64_t x123 = (x122 >> 0x18);
- uint32_t x124 = ((uint32_t)x122 & 0xffffff);
- uint64_t x125 = (x123 + x77);
- uint64_t x126 = (x125 >> 0x19);
- uint32_t x127 = ((uint32_t)x125 & 0x1ffffff);
- uint64_t x128 = (x126 + x76);
- uint64_t x129 = (x128 >> 0x19);
- uint32_t x130 = ((uint32_t)x128 & 0x1ffffff);
- uint64_t x131 = (x129 + x75);
- uint64_t x132 = (x131 >> 0x18);
- uint32_t x133 = ((uint32_t)x131 & 0xffffff);
- uint64_t x134 = (x132 + x74);
- uint64_t x135 = (x134 >> 0x19);
- uint32_t x136 = ((uint32_t)x134 & 0x1ffffff);
- uint64_t x137 = (x135 + x73);
- uint64_t x138 = (x137 >> 0x19);
- uint32_t x139 = ((uint32_t)x137 & 0x1ffffff);
- uint64_t x140 = (x138 + x72);
- uint64_t x141 = (x140 >> 0x18);
- uint32_t x142 = ((uint32_t)x140 & 0xffffff);
- uint64_t x143 = (x91 + (0x11 * x141));
- uint32_t x144 = (uint32_t) (x143 >> 0x19);
- uint32_t x145 = ((uint32_t)x143 & 0x1ffffff);
- uint32_t x146 = (x144 + x94);
- uint32_t x147 = (x146 >> 0x19);
- uint32_t x148 = (x146 & 0x1ffffff);
- return (Return x142, Return x139, Return x136, Return x133, Return x130, Return x127, Return x124, Return x121, Return x118, Return x115, Return x112, Return x109, Return x106, Return x103, Return x100, (x147 + x97), Return x148, Return x145))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e444m17_18limbs/femulDisplay.v b/src/Specific/solinas32_2e444m17_18limbs/femulDisplay.v
deleted file mode 100644
index 8fb3aca39..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e444m17_18limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e444m17_18limbs/fesquare.c b/src/Specific/solinas32_2e444m17_18limbs/fesquare.c
deleted file mode 100644
index ffe92011d..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/fesquare.c
+++ /dev/null
@@ -1,116 +0,0 @@
-static void fesquare(uint32_t out[18], const uint32_t in1[18]) {
- { const uint32_t x33 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x35 = (((uint64_t)x2 * x33) + (((uint64_t)x4 * x34) + (((uint64_t)x6 * x32) + (((uint64_t)x8 * x30) + (((uint64_t)x10 * x28) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + (((uint64_t)x28 * x10) + (((uint64_t)x30 * x8) + (((uint64_t)x32 * x6) + (((uint64_t)x34 * x4) + ((uint64_t)x33 * x2))))))))))))))))));
- { uint64_t x36 = ((((uint64_t)x2 * x34) + (((uint64_t)x4 * x32) + ((0x2 * ((uint64_t)x6 * x30)) + (((uint64_t)x8 * x28) + (((uint64_t)x10 * x26) + ((0x2 * ((uint64_t)x12 * x24)) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + ((0x2 * ((uint64_t)x18 * x18)) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + ((0x2 * ((uint64_t)x24 * x12)) + (((uint64_t)x26 * x10) + (((uint64_t)x28 * x8) + ((0x2 * ((uint64_t)x30 * x6)) + (((uint64_t)x32 * x4) + ((uint64_t)x34 * x2))))))))))))))))) + (0x11 * (0x2 * ((uint64_t)x33 * x33))));
- { uint64_t x37 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + (((uint64_t)x8 * x26) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + (((uint64_t)x26 * x8) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x34 * x33)) + (0x2 * ((uint64_t)x33 * x34)))));
- { uint64_t x38 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x11 * (((uint64_t)x32 * x33) + (((uint64_t)x34 * x34) + ((uint64_t)x33 * x32)))));
- { uint64_t x39 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + ((0x2 * ((uint64_t)x6 * x24)) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + ((0x2 * ((uint64_t)x12 * x18)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((0x2 * ((uint64_t)x18 * x12)) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + ((0x2 * ((uint64_t)x24 * x6)) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x30 * x33)) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + (0x2 * ((uint64_t)x33 * x30)))))));
- { uint64_t x40 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x28 * x33)) + ((0x2 * ((uint64_t)x30 * x34)) + (((uint64_t)x32 * x32) + ((0x2 * ((uint64_t)x34 * x30)) + (0x2 * ((uint64_t)x33 * x28))))))));
- { uint64_t x41 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x11 * (((uint64_t)x26 * x33) + (((uint64_t)x28 * x34) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + (((uint64_t)x34 * x28) + ((uint64_t)x33 * x26))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + ((0x2 * ((uint64_t)x6 * x18)) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((0x2 * ((uint64_t)x18 * x6)) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x11 * ((0x2 * ((uint64_t)x24 * x33)) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + (0x2 * ((uint64_t)x33 * x24))))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x11 * ((0x2 * ((uint64_t)x22 * x33)) + ((0x2 * ((uint64_t)x24 * x34)) + (((uint64_t)x26 * x32) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + (((uint64_t)x32 * x26) + ((0x2 * ((uint64_t)x34 * x24)) + (0x2 * ((uint64_t)x33 * x22)))))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x11 * (((uint64_t)x20 * x33) + (((uint64_t)x22 * x34) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + (((uint64_t)x34 * x22) + ((uint64_t)x33 * x20)))))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x11 * ((0x2 * ((uint64_t)x18 * x33)) + (((uint64_t)x20 * x34) + (((uint64_t)x22 * x32) + ((0x2 * ((uint64_t)x24 * x30)) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + ((0x2 * ((uint64_t)x30 * x24)) + (((uint64_t)x32 * x22) + (((uint64_t)x34 * x20) + (0x2 * ((uint64_t)x33 * x18)))))))))))));
- { uint64_t x46 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x11 * ((0x2 * ((uint64_t)x16 * x33)) + ((0x2 * ((uint64_t)x18 * x34)) + (((uint64_t)x20 * x32) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + (((uint64_t)x26 * x26) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + (((uint64_t)x32 * x20) + ((0x2 * ((uint64_t)x34 * x18)) + (0x2 * ((uint64_t)x33 * x16))))))))))))));
- { uint64_t x47 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x11 * (((uint64_t)x14 * x33) + (((uint64_t)x16 * x34) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + (((uint64_t)x34 * x16) + ((uint64_t)x33 * x14))))))))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint64_t)x12 * x33)) + (((uint64_t)x14 * x34) + (((uint64_t)x16 * x32) + ((0x2 * ((uint64_t)x18 * x30)) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + ((0x2 * ((uint64_t)x24 * x24)) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + ((0x2 * ((uint64_t)x30 * x18)) + (((uint64_t)x32 * x16) + (((uint64_t)x34 * x14) + (0x2 * ((uint64_t)x33 * x12))))))))))))))));
- { uint64_t x49 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x11 * ((0x2 * ((uint64_t)x10 * x33)) + ((0x2 * ((uint64_t)x12 * x34)) + (((uint64_t)x14 * x32) + ((0x2 * ((uint64_t)x16 * x30)) + ((0x2 * ((uint64_t)x18 * x28)) + (((uint64_t)x20 * x26) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + (((uint64_t)x26 * x20) + ((0x2 * ((uint64_t)x28 * x18)) + ((0x2 * ((uint64_t)x30 * x16)) + (((uint64_t)x32 * x14) + ((0x2 * ((uint64_t)x34 * x12)) + (0x2 * ((uint64_t)x33 * x10)))))))))))))))));
- { uint64_t x50 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x11 * (((uint64_t)x8 * x33) + (((uint64_t)x10 * x34) + (((uint64_t)x12 * x32) + (((uint64_t)x14 * x30) + (((uint64_t)x16 * x28) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + (((uint64_t)x28 * x16) + (((uint64_t)x30 * x14) + (((uint64_t)x32 * x12) + (((uint64_t)x34 * x10) + ((uint64_t)x33 * x8)))))))))))))))));
- { uint64_t x51 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * ((0x2 * ((uint64_t)x6 * x33)) + (((uint64_t)x8 * x34) + (((uint64_t)x10 * x32) + ((0x2 * ((uint64_t)x12 * x30)) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + ((0x2 * ((uint64_t)x18 * x24)) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((0x2 * ((uint64_t)x24 * x18)) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + ((0x2 * ((uint64_t)x30 * x12)) + (((uint64_t)x32 * x10) + (((uint64_t)x34 * x8) + (0x2 * ((uint64_t)x33 * x6)))))))))))))))))));
- { uint64_t x52 = (((uint64_t)x2 * x2) + (0x11 * ((0x2 * ((uint64_t)x4 * x33)) + ((0x2 * ((uint64_t)x6 * x34)) + (((uint64_t)x8 * x32) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + (((uint64_t)x14 * x26) + ((0x2 * ((uint64_t)x16 * x24)) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + ((0x2 * ((uint64_t)x24 * x16)) + (((uint64_t)x26 * x14) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + (((uint64_t)x32 * x8) + ((0x2 * ((uint64_t)x34 * x6)) + (0x2 * ((uint64_t)x33 * x4))))))))))))))))))));
- { uint64_t x53 = (x52 >> 0x19);
- { uint32_t x54 = ((uint32_t)x52 & 0x1ffffff);
- { uint64_t x55 = (x53 + x51);
- { uint64_t x56 = (x55 >> 0x19);
- { uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- { uint64_t x58 = (x56 + x50);
- { uint64_t x59 = (x58 >> 0x18);
- { uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- { uint64_t x61 = (x59 + x49);
- { uint64_t x62 = (x61 >> 0x19);
- { uint32_t x63 = ((uint32_t)x61 & 0x1ffffff);
- { uint64_t x64 = (x62 + x48);
- { uint64_t x65 = (x64 >> 0x19);
- { uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- { uint64_t x67 = (x65 + x47);
- { uint64_t x68 = (x67 >> 0x18);
- { uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- { uint64_t x70 = (x68 + x46);
- { uint64_t x71 = (x70 >> 0x19);
- { uint32_t x72 = ((uint32_t)x70 & 0x1ffffff);
- { uint64_t x73 = (x71 + x45);
- { uint64_t x74 = (x73 >> 0x19);
- { uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- { uint64_t x76 = (x74 + x44);
- { uint64_t x77 = (x76 >> 0x18);
- { uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- { uint64_t x79 = (x77 + x43);
- { uint64_t x80 = (x79 >> 0x19);
- { uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- { uint64_t x82 = (x80 + x42);
- { uint64_t x83 = (x82 >> 0x19);
- { uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- { uint64_t x85 = (x83 + x41);
- { uint64_t x86 = (x85 >> 0x18);
- { uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- { uint64_t x88 = (x86 + x40);
- { uint64_t x89 = (x88 >> 0x19);
- { uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- { uint64_t x91 = (x89 + x39);
- { uint64_t x92 = (x91 >> 0x19);
- { uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- { uint64_t x94 = (x92 + x38);
- { uint64_t x95 = (x94 >> 0x18);
- { uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- { uint64_t x97 = (x95 + x37);
- { uint64_t x98 = (x97 >> 0x19);
- { uint32_t x99 = ((uint32_t)x97 & 0x1ffffff);
- { uint64_t x100 = (x98 + x36);
- { uint64_t x101 = (x100 >> 0x19);
- { uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- { uint64_t x103 = (x101 + x35);
- { uint64_t x104 = (x103 >> 0x18);
- { uint32_t x105 = ((uint32_t)x103 & 0xffffff);
- { uint64_t x106 = (x54 + (0x11 * x104));
- { uint32_t x107 = (uint32_t) (x106 >> 0x19);
- { uint32_t x108 = ((uint32_t)x106 & 0x1ffffff);
- { uint32_t x109 = (x107 + x57);
- { uint32_t x110 = (x109 >> 0x19);
- { uint32_t x111 = (x109 & 0x1ffffff);
- out[0] = x108;
- out[1] = x111;
- out[2] = (x110 + x60);
- out[3] = x63;
- out[4] = x66;
- out[5] = x69;
- out[6] = x72;
- out[7] = x75;
- out[8] = x78;
- out[9] = x81;
- out[10] = x84;
- out[11] = x87;
- out[12] = x90;
- out[13] = x93;
- out[14] = x96;
- out[15] = x99;
- out[16] = x102;
- out[17] = x105;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e444m17_18limbs/fesquare.v b/src/Specific/solinas32_2e444m17_18limbs/fesquare.v
deleted file mode 100644
index 309237607..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e444m17_18limbs.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_2e444m17_18limbs/fesquareDisplay.log b/src/Specific/solinas32_2e444m17_18limbs/fesquareDisplay.log
deleted file mode 100644
index 68749c664..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,84 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x33, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x35 = (((uint64_t)x2 * x33) + (((uint64_t)x4 * x34) + (((uint64_t)x6 * x32) + (((uint64_t)x8 * x30) + (((uint64_t)x10 * x28) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + (((uint64_t)x28 * x10) + (((uint64_t)x30 * x8) + (((uint64_t)x32 * x6) + (((uint64_t)x34 * x4) + ((uint64_t)x33 * x2))))))))))))))))));
- uint64_t x36 = ((((uint64_t)x2 * x34) + (((uint64_t)x4 * x32) + ((0x2 * ((uint64_t)x6 * x30)) + (((uint64_t)x8 * x28) + (((uint64_t)x10 * x26) + ((0x2 * ((uint64_t)x12 * x24)) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + ((0x2 * ((uint64_t)x18 * x18)) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + ((0x2 * ((uint64_t)x24 * x12)) + (((uint64_t)x26 * x10) + (((uint64_t)x28 * x8) + ((0x2 * ((uint64_t)x30 * x6)) + (((uint64_t)x32 * x4) + ((uint64_t)x34 * x2))))))))))))))))) + (0x11 * (0x2 * ((uint64_t)x33 * x33))));
- uint64_t x37 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + (((uint64_t)x8 * x26) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + (((uint64_t)x26 * x8) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x34 * x33)) + (0x2 * ((uint64_t)x33 * x34)))));
- uint64_t x38 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x11 * (((uint64_t)x32 * x33) + (((uint64_t)x34 * x34) + ((uint64_t)x33 * x32)))));
- uint64_t x39 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + ((0x2 * ((uint64_t)x6 * x24)) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + ((0x2 * ((uint64_t)x12 * x18)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((0x2 * ((uint64_t)x18 * x12)) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + ((0x2 * ((uint64_t)x24 * x6)) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x30 * x33)) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + (0x2 * ((uint64_t)x33 * x30)))))));
- uint64_t x40 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x28 * x33)) + ((0x2 * ((uint64_t)x30 * x34)) + (((uint64_t)x32 * x32) + ((0x2 * ((uint64_t)x34 * x30)) + (0x2 * ((uint64_t)x33 * x28))))))));
- uint64_t x41 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x11 * (((uint64_t)x26 * x33) + (((uint64_t)x28 * x34) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + (((uint64_t)x34 * x28) + ((uint64_t)x33 * x26))))))));
- uint64_t x42 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + ((0x2 * ((uint64_t)x6 * x18)) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((0x2 * ((uint64_t)x18 * x6)) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x11 * ((0x2 * ((uint64_t)x24 * x33)) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + (0x2 * ((uint64_t)x33 * x24))))))))));
- uint64_t x43 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x11 * ((0x2 * ((uint64_t)x22 * x33)) + ((0x2 * ((uint64_t)x24 * x34)) + (((uint64_t)x26 * x32) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + (((uint64_t)x32 * x26) + ((0x2 * ((uint64_t)x34 * x24)) + (0x2 * ((uint64_t)x33 * x22)))))))))));
- uint64_t x44 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x11 * (((uint64_t)x20 * x33) + (((uint64_t)x22 * x34) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + (((uint64_t)x34 * x22) + ((uint64_t)x33 * x20)))))))))));
- uint64_t x45 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x11 * ((0x2 * ((uint64_t)x18 * x33)) + (((uint64_t)x20 * x34) + (((uint64_t)x22 * x32) + ((0x2 * ((uint64_t)x24 * x30)) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + ((0x2 * ((uint64_t)x30 * x24)) + (((uint64_t)x32 * x22) + (((uint64_t)x34 * x20) + (0x2 * ((uint64_t)x33 * x18)))))))))))));
- uint64_t x46 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x11 * ((0x2 * ((uint64_t)x16 * x33)) + ((0x2 * ((uint64_t)x18 * x34)) + (((uint64_t)x20 * x32) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + (((uint64_t)x26 * x26) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + (((uint64_t)x32 * x20) + ((0x2 * ((uint64_t)x34 * x18)) + (0x2 * ((uint64_t)x33 * x16))))))))))))));
- uint64_t x47 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x11 * (((uint64_t)x14 * x33) + (((uint64_t)x16 * x34) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + (((uint64_t)x34 * x16) + ((uint64_t)x33 * x14))))))))))))));
- uint64_t x48 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint64_t)x12 * x33)) + (((uint64_t)x14 * x34) + (((uint64_t)x16 * x32) + ((0x2 * ((uint64_t)x18 * x30)) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + ((0x2 * ((uint64_t)x24 * x24)) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + ((0x2 * ((uint64_t)x30 * x18)) + (((uint64_t)x32 * x16) + (((uint64_t)x34 * x14) + (0x2 * ((uint64_t)x33 * x12))))))))))))))));
- uint64_t x49 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x11 * ((0x2 * ((uint64_t)x10 * x33)) + ((0x2 * ((uint64_t)x12 * x34)) + (((uint64_t)x14 * x32) + ((0x2 * ((uint64_t)x16 * x30)) + ((0x2 * ((uint64_t)x18 * x28)) + (((uint64_t)x20 * x26) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + (((uint64_t)x26 * x20) + ((0x2 * ((uint64_t)x28 * x18)) + ((0x2 * ((uint64_t)x30 * x16)) + (((uint64_t)x32 * x14) + ((0x2 * ((uint64_t)x34 * x12)) + (0x2 * ((uint64_t)x33 * x10)))))))))))))))));
- uint64_t x50 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x11 * (((uint64_t)x8 * x33) + (((uint64_t)x10 * x34) + (((uint64_t)x12 * x32) + (((uint64_t)x14 * x30) + (((uint64_t)x16 * x28) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + (((uint64_t)x28 * x16) + (((uint64_t)x30 * x14) + (((uint64_t)x32 * x12) + (((uint64_t)x34 * x10) + ((uint64_t)x33 * x8)))))))))))))))));
- uint64_t x51 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * ((0x2 * ((uint64_t)x6 * x33)) + (((uint64_t)x8 * x34) + (((uint64_t)x10 * x32) + ((0x2 * ((uint64_t)x12 * x30)) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + ((0x2 * ((uint64_t)x18 * x24)) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((0x2 * ((uint64_t)x24 * x18)) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + ((0x2 * ((uint64_t)x30 * x12)) + (((uint64_t)x32 * x10) + (((uint64_t)x34 * x8) + (0x2 * ((uint64_t)x33 * x6)))))))))))))))))));
- uint64_t x52 = (((uint64_t)x2 * x2) + (0x11 * ((0x2 * ((uint64_t)x4 * x33)) + ((0x2 * ((uint64_t)x6 * x34)) + (((uint64_t)x8 * x32) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + (((uint64_t)x14 * x26) + ((0x2 * ((uint64_t)x16 * x24)) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + ((0x2 * ((uint64_t)x24 * x16)) + (((uint64_t)x26 * x14) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + (((uint64_t)x32 * x8) + ((0x2 * ((uint64_t)x34 * x6)) + (0x2 * ((uint64_t)x33 * x4))))))))))))))))))));
- uint64_t x53 = (x52 >> 0x19);
- uint32_t x54 = ((uint32_t)x52 & 0x1ffffff);
- uint64_t x55 = (x53 + x51);
- uint64_t x56 = (x55 >> 0x19);
- uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- uint64_t x58 = (x56 + x50);
- uint64_t x59 = (x58 >> 0x18);
- uint32_t x60 = ((uint32_t)x58 & 0xffffff);
- uint64_t x61 = (x59 + x49);
- uint64_t x62 = (x61 >> 0x19);
- uint32_t x63 = ((uint32_t)x61 & 0x1ffffff);
- uint64_t x64 = (x62 + x48);
- uint64_t x65 = (x64 >> 0x19);
- uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- uint64_t x67 = (x65 + x47);
- uint64_t x68 = (x67 >> 0x18);
- uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- uint64_t x70 = (x68 + x46);
- uint64_t x71 = (x70 >> 0x19);
- uint32_t x72 = ((uint32_t)x70 & 0x1ffffff);
- uint64_t x73 = (x71 + x45);
- uint64_t x74 = (x73 >> 0x19);
- uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- uint64_t x76 = (x74 + x44);
- uint64_t x77 = (x76 >> 0x18);
- uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- uint64_t x79 = (x77 + x43);
- uint64_t x80 = (x79 >> 0x19);
- uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- uint64_t x82 = (x80 + x42);
- uint64_t x83 = (x82 >> 0x19);
- uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- uint64_t x85 = (x83 + x41);
- uint64_t x86 = (x85 >> 0x18);
- uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- uint64_t x88 = (x86 + x40);
- uint64_t x89 = (x88 >> 0x19);
- uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- uint64_t x91 = (x89 + x39);
- uint64_t x92 = (x91 >> 0x19);
- uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- uint64_t x94 = (x92 + x38);
- uint64_t x95 = (x94 >> 0x18);
- uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- uint64_t x97 = (x95 + x37);
- uint64_t x98 = (x97 >> 0x19);
- uint32_t x99 = ((uint32_t)x97 & 0x1ffffff);
- uint64_t x100 = (x98 + x36);
- uint64_t x101 = (x100 >> 0x19);
- uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- uint64_t x103 = (x101 + x35);
- uint64_t x104 = (x103 >> 0x18);
- uint32_t x105 = ((uint32_t)x103 & 0xffffff);
- uint64_t x106 = (x54 + (0x11 * x104));
- uint32_t x107 = (uint32_t) (x106 >> 0x19);
- uint32_t x108 = ((uint32_t)x106 & 0x1ffffff);
- uint32_t x109 = (x107 + x57);
- uint32_t x110 = (x109 >> 0x19);
- uint32_t x111 = (x109 & 0x1ffffff);
- return (Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, (x110 + x60), Return x111, Return x108))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e444m17_18limbs/fesquareDisplay.v b/src/Specific/solinas32_2e444m17_18limbs/fesquareDisplay.v
deleted file mode 100644
index e93272d16..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e444m17_18limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e444m17_18limbs/fesub.c b/src/Specific/solinas32_2e444m17_18limbs/fesub.c
deleted file mode 100644
index 3e3d1c7e0..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/fesub.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void fesub(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- out[0] = ((0x3ffffde + x5) - x39);
- out[1] = ((0x3fffffe + x7) - x41);
- out[2] = ((0x1fffffe + x9) - x43);
- out[3] = ((0x3fffffe + x11) - x45);
- out[4] = ((0x3fffffe + x13) - x47);
- out[5] = ((0x1fffffe + x15) - x49);
- out[6] = ((0x3fffffe + x17) - x51);
- out[7] = ((0x3fffffe + x19) - x53);
- out[8] = ((0x1fffffe + x21) - x55);
- out[9] = ((0x3fffffe + x23) - x57);
- out[10] = ((0x3fffffe + x25) - x59);
- out[11] = ((0x1fffffe + x27) - x61);
- out[12] = ((0x3fffffe + x29) - x63);
- out[13] = ((0x3fffffe + x31) - x65);
- out[14] = ((0x1fffffe + x33) - x67);
- out[15] = ((0x3fffffe + x35) - x69);
- out[16] = ((0x3fffffe + x37) - x71);
- out[17] = ((0x1fffffe + x36) - x70);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e444m17_18limbs/fesub.v b/src/Specific/solinas32_2e444m17_18limbs/fesub.v
deleted file mode 100644
index d28f2dc25..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e444m17_18limbs.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_2e444m17_18limbs/fesubDisplay.log b/src/Specific/solinas32_2e444m17_18limbs/fesubDisplay.log
deleted file mode 100644
index 5f9e0cc11..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- (((0x1fffffe + x36) - x70), ((0x3fffffe + x37) - x71), ((0x3fffffe + x35) - x69), ((0x1fffffe + x33) - x67), ((0x3fffffe + x31) - x65), ((0x3fffffe + x29) - x63), ((0x1fffffe + x27) - x61), ((0x3fffffe + x25) - x59), ((0x3fffffe + x23) - x57), ((0x1fffffe + x21) - x55), ((0x3fffffe + x19) - x53), ((0x3fffffe + x17) - x51), ((0x1fffffe + x15) - x49), ((0x3fffffe + x13) - x47), ((0x3fffffe + x11) - x45), ((0x1fffffe + x9) - x43), ((0x3fffffe + x7) - x41), ((0x3ffffde + x5) - x39)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e444m17_18limbs/fesubDisplay.v b/src/Specific/solinas32_2e444m17_18limbs/fesubDisplay.v
deleted file mode 100644
index 2d14918e5..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e444m17_18limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e444m17_18limbs/freeze.c b/src/Specific/solinas32_2e444m17_18limbs/freeze.c
deleted file mode 100644
index 8d357ea1e..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/freeze.c
+++ /dev/null
@@ -1,94 +0,0 @@
-static void freeze(uint32_t out[18], const uint32_t in1[18]) {
- { const uint32_t x33 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffef);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x4, 0x1ffffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x6, 0xffffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x8, 0x1ffffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x10, 0x1ffffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x12, 0xffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x14, 0x1ffffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x16, 0x1ffffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x18, 0xffffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x20, 0x1ffffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x22, 0x1ffffff);
- { uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x24, 0xffffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x26, 0x1ffffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x28, 0x1ffffff);
- { uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x30, 0xffffff);
- { uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x32, 0x1ffffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x34, 0x1ffffff);
- { uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x33, 0xffffff);
- { uint32_t x89 = cmovznz32(x88, 0x0, 0xffffffff);
- { uint32_t x90 = (x89 & 0x1ffffef);
- { uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x36, Return x90);
- { uint32_t x94 = (x89 & 0x1ffffff);
- { uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x39, Return x94);
- { uint32_t x98 = (x89 & 0xffffff);
- { uint32_t x100, uint8_t x101 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x42, Return x98);
- { uint32_t x102 = (x89 & 0x1ffffff);
- { uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x45, Return x102);
- { uint32_t x106 = (x89 & 0x1ffffff);
- { uint32_t x108, uint8_t x109 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x48, Return x106);
- { uint32_t x110 = (x89 & 0xffffff);
- { uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x51, Return x110);
- { uint32_t x114 = (x89 & 0x1ffffff);
- { uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x54, Return x114);
- { uint32_t x118 = (x89 & 0x1ffffff);
- { uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x57, Return x118);
- { uint32_t x122 = (x89 & 0xffffff);
- { uint32_t x124, uint8_t x125 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x60, Return x122);
- { uint32_t x126 = (x89 & 0x1ffffff);
- { uint32_t x128, uint8_t x129 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x125, Return x63, Return x126);
- { uint32_t x130 = (x89 & 0x1ffffff);
- { uint32_t x132, uint8_t x133 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x129, Return x66, Return x130);
- { uint32_t x134 = (x89 & 0xffffff);
- { uint32_t x136, uint8_t x137 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x133, Return x69, Return x134);
- { uint32_t x138 = (x89 & 0x1ffffff);
- { uint32_t x140, uint8_t x141 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x137, Return x72, Return x138);
- { uint32_t x142 = (x89 & 0x1ffffff);
- { uint32_t x144, uint8_t x145 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x141, Return x75, Return x142);
- { uint32_t x146 = (x89 & 0xffffff);
- { uint32_t x148, uint8_t x149 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x145, Return x78, Return x146);
- { uint32_t x150 = (x89 & 0x1ffffff);
- { uint32_t x152, uint8_t x153 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x149, Return x81, Return x150);
- { uint32_t x154 = (x89 & 0x1ffffff);
- { uint32_t x156, uint8_t x157 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x153, Return x84, Return x154);
- { uint32_t x158 = (x89 & 0xffffff);
- { uint32_t x160, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x157, Return x87, Return x158);
- out[0] = x92;
- out[1] = x96;
- out[2] = x100;
- out[3] = x104;
- out[4] = x108;
- out[5] = x112;
- out[6] = x116;
- out[7] = x120;
- out[8] = x124;
- out[9] = x128;
- out[10] = x132;
- out[11] = x136;
- out[12] = x140;
- out[13] = x144;
- out[14] = x148;
- out[15] = x152;
- out[16] = x156;
- out[17] = x160;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e444m17_18limbs/freeze.v b/src/Specific/solinas32_2e444m17_18limbs/freeze.v
deleted file mode 100644
index 540438b89..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e444m17_18limbs.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_2e444m17_18limbs/freezeDisplay.log b/src/Specific/solinas32_2e444m17_18limbs/freezeDisplay.log
deleted file mode 100644
index ad10a3a46..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/freezeDisplay.log
+++ /dev/null
@@ -1,62 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x33, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffef);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x4, 0x1ffffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x6, 0xffffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x8, 0x1ffffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x10, 0x1ffffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x12, 0xffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x14, 0x1ffffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x16, 0x1ffffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x18, 0xffffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x20, 0x1ffffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x22, 0x1ffffff);
- uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x24, 0xffffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x26, 0x1ffffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x28, 0x1ffffff);
- uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x30, 0xffffff);
- uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x32, 0x1ffffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x34, 0x1ffffff);
- uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x33, 0xffffff);
- uint32_t x89 = cmovznz32(x88, 0x0, 0xffffffff);
- uint32_t x90 = (x89 & 0x1ffffef);
- uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x36, Return x90);
- uint32_t x94 = (x89 & 0x1ffffff);
- uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x39, Return x94);
- uint32_t x98 = (x89 & 0xffffff);
- uint32_t x100, uint8_t x101 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x42, Return x98);
- uint32_t x102 = (x89 & 0x1ffffff);
- uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x45, Return x102);
- uint32_t x106 = (x89 & 0x1ffffff);
- uint32_t x108, uint8_t x109 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x48, Return x106);
- uint32_t x110 = (x89 & 0xffffff);
- uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x51, Return x110);
- uint32_t x114 = (x89 & 0x1ffffff);
- uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x54, Return x114);
- uint32_t x118 = (x89 & 0x1ffffff);
- uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x57, Return x118);
- uint32_t x122 = (x89 & 0xffffff);
- uint32_t x124, uint8_t x125 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x60, Return x122);
- uint32_t x126 = (x89 & 0x1ffffff);
- uint32_t x128, uint8_t x129 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x125, Return x63, Return x126);
- uint32_t x130 = (x89 & 0x1ffffff);
- uint32_t x132, uint8_t x133 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x129, Return x66, Return x130);
- uint32_t x134 = (x89 & 0xffffff);
- uint32_t x136, uint8_t x137 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x133, Return x69, Return x134);
- uint32_t x138 = (x89 & 0x1ffffff);
- uint32_t x140, uint8_t x141 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x137, Return x72, Return x138);
- uint32_t x142 = (x89 & 0x1ffffff);
- uint32_t x144, uint8_t x145 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x141, Return x75, Return x142);
- uint32_t x146 = (x89 & 0xffffff);
- uint32_t x148, uint8_t x149 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x145, Return x78, Return x146);
- uint32_t x150 = (x89 & 0x1ffffff);
- uint32_t x152, uint8_t x153 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x149, Return x81, Return x150);
- uint32_t x154 = (x89 & 0x1ffffff);
- uint32_t x156, uint8_t x157 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x153, Return x84, Return x154);
- uint32_t x158 = (x89 & 0xffffff);
- uint32_t x160, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x157, Return x87, Return x158);
- (Return x160, Return x156, Return x152, Return x148, Return x144, Return x140, Return x136, Return x132, Return x128, Return x124, Return x120, Return x116, Return x112, Return x108, Return x104, Return x100, Return x96, Return x92))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e444m17_18limbs/freezeDisplay.v b/src/Specific/solinas32_2e444m17_18limbs/freezeDisplay.v
deleted file mode 100644
index 442619828..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e444m17_18limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e444m17_18limbs/py_interpreter.sh b/src/Specific/solinas32_2e444m17_18limbs/py_interpreter.sh
deleted file mode 100755
index f215ec39d..000000000
--- a/src/Specific/solinas32_2e444m17_18limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**444 - 17' -Dmodulus_bytes='24 + 2/3' -Da24='121665'
diff --git a/src/Specific/solinas32_2e448m2e224m1_16limbs/CurveParameters.v b/src/Specific/solinas32_2e448m2e224m1_16limbs/CurveParameters.v
deleted file mode 100644
index 7588e5dd1..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^448 - 2^224 - 1
-Base: 28
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 16%nat;
- base := 28;
- bitwidth := 32;
- s := 2^448;
- c := [(1, 1); (2^224, 1)];
- carry_chains := Some [[7; 15]; [8; 0; 9; 1; 10; 2; 11; 3; 12; 4; 13; 5; 14; 6; 15; 7]; [8; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- 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_2e448m2e224m1_16limbs/Synthesis.v b/src/Specific/solinas32_2e448m2e224m1_16limbs/Synthesis.v
deleted file mode 100644
index 5dfd986ec..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_16limbs.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_2e448m2e224m1_16limbs/compiler.sh b/src/Specific/solinas32_2e448m2e224m1_16limbs/compiler.sh
deleted file mode 100755
index f8fa55db3..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1' "$@"
diff --git a/src/Specific/solinas32_2e448m2e224m1_16limbs/compilerxx.sh b/src/Specific/solinas32_2e448m2e224m1_16limbs/compilerxx.sh
deleted file mode 100755
index cdb94d367..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='16' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1' "$@"
diff --git a/src/Specific/solinas32_2e448m2e224m1_16limbs/feadd.c b/src/Specific/solinas32_2e448m2e224m1_16limbs/feadd.c
deleted file mode 100644
index 18b150e21..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/feadd.c
+++ /dev/null
@@ -1,51 +0,0 @@
-static void feadd(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- out[0] = (x5 + x35);
- out[1] = (x7 + x37);
- out[2] = (x9 + x39);
- out[3] = (x11 + x41);
- out[4] = (x13 + x43);
- out[5] = (x15 + x45);
- out[6] = (x17 + x47);
- out[7] = (x19 + x49);
- out[8] = (x21 + x51);
- out[9] = (x23 + x53);
- out[10] = (x25 + x55);
- out[11] = (x27 + x57);
- out[12] = (x29 + x59);
- out[13] = (x31 + x61);
- out[14] = (x33 + x63);
- out[15] = (x32 + x62);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e448m2e224m1_16limbs/feadd.v b/src/Specific/solinas32_2e448m2e224m1_16limbs/feadd.v
deleted file mode 100644
index f122d3754..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_16limbs.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_2e448m2e224m1_16limbs/feaddDisplay.log b/src/Specific/solinas32_2e448m2e224m1_16limbs/feaddDisplay.log
deleted file mode 100644
index 130c31964..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- ((x32 + x62), (x33 + x63), (x31 + x61), (x29 + x59), (x27 + x57), (x25 + x55), (x23 + x53), (x21 + x51), (x19 + x49), (x17 + x47), (x15 + x45), (x13 + x43), (x11 + x41), (x9 + x39), (x7 + x37), (x5 + x35)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e448m2e224m1_16limbs/feaddDisplay.v b/src/Specific/solinas32_2e448m2e224m1_16limbs/feaddDisplay.v
deleted file mode 100644
index 43ca23445..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_16limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e448m2e224m1_16limbs/fecarry.v b/src/Specific/solinas32_2e448m2e224m1_16limbs/fecarry.v
deleted file mode 100644
index 39944ae90..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_16limbs.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_2e448m2e224m1_16limbs/fecarryDisplay.v b/src/Specific/solinas32_2e448m2e224m1_16limbs/fecarryDisplay.v
deleted file mode 100644
index 037cd096b..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_16limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e448m2e224m1_16limbs/femul.c b/src/Specific/solinas32_2e448m2e224m1_16limbs/femul.c
deleted file mode 100644
index 309e7b417..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/femul.c
+++ /dev/null
@@ -1,145 +0,0 @@
-static void femul(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- { uint64_t x64 = (((uint64_t)(x19 + x32) * (x49 + x62)) - ((uint64_t)x19 * x49));
- { uint64_t x65 = ((((uint64_t)(x17 + x33) * (x49 + x62)) + ((uint64_t)(x19 + x32) * (x47 + x63))) - (((uint64_t)x17 * x49) + ((uint64_t)x19 * x47)));
- { uint64_t x66 = ((((uint64_t)(x15 + x31) * (x49 + x62)) + (((uint64_t)(x17 + x33) * (x47 + x63)) + ((uint64_t)(x19 + x32) * (x45 + x61)))) - (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + ((uint64_t)x19 * x45))));
- { uint64_t x67 = ((((uint64_t)(x13 + x29) * (x49 + x62)) + (((uint64_t)(x15 + x31) * (x47 + x63)) + (((uint64_t)(x17 + x33) * (x45 + x61)) + ((uint64_t)(x19 + x32) * (x43 + x59))))) - (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + ((uint64_t)x19 * x43)))));
- { uint64_t x68 = ((((uint64_t)(x11 + x27) * (x49 + x62)) + (((uint64_t)(x13 + x29) * (x47 + x63)) + (((uint64_t)(x15 + x31) * (x45 + x61)) + (((uint64_t)(x17 + x33) * (x43 + x59)) + ((uint64_t)(x19 + x32) * (x41 + x57)))))) - (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((uint64_t)x19 * x41))))));
- { uint64_t x69 = Op (Syntax.IdWithAlt Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6)) (((((uint64_t)(x9 + x25) * (x49 + x62)) +ℤ (((uint64_t)(x11 + x27) * (x47 + x63)) + (((uint64_t)(x13 + x29) * (x45 + x61)) + (((uint64_t)(x15 + x31) * (x43 + x59)) + (((uint64_t)(x17 + x33) * (x41 + x57)) + ((uint64_t)(x19 + x32) * (x39 + x55))))))) -ℤ (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + ((uint64_t)x19 * x39))))))), (((((uint64_t)x9 * x62) + (((uint64_t)x11 * x63) + (((uint64_t)x13 * x61) + (((uint64_t)x15 * x59) + (((uint64_t)x17 * x57) + ((uint64_t)x19 * x55)))))) + (((uint64_t)x25 * x49) + (((uint64_t)x27 * x47) + (((uint64_t)x29 * x45) + (((uint64_t)x31 * x43) + (((uint64_t)x33 * x41) + ((uint64_t)x32 * x39))))))) + (((uint64_t)x25 * x62) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + ((uint64_t)x32 * x55))))))));
- { uint64_t x70 = Op (Syntax.IdWithAlt Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6)) (((((uint64_t)(x7 + x23) * (x49 + x62)) +ℤ (((uint64_t)(x9 + x25) * (x47 + x63)) +ℤ (((uint64_t)(x11 + x27) * (x45 + x61)) + (((uint64_t)(x13 + x29) * (x43 + x59)) + (((uint64_t)(x15 + x31) * (x41 + x57)) + (((uint64_t)(x17 + x33) * (x39 + x55)) + ((uint64_t)(x19 + x32) * (x37 + x53)))))))) -ℤ (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + ((uint64_t)x19 * x37)))))))), (((((uint64_t)x7 * x62) + (((uint64_t)x9 * x63) + (((uint64_t)x11 * x61) + (((uint64_t)x13 * x59) + (((uint64_t)x15 * x57) + (((uint64_t)x17 * x55) + ((uint64_t)x19 * x53))))))) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + (((uint64_t)x29 * x43) + (((uint64_t)x31 * x41) + (((uint64_t)x33 * x39) + ((uint64_t)x32 * x37)))))))) + (((uint64_t)x23 * x62) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + ((uint64_t)x32 * x53)))))))));
- { ℤ x71 = Op (Syntax.IdWithAlt Syntax.TZ Syntax.TZ Syntax.TZ) (((((uint64_t)(x5 + x21) * (x49 + x62)) +ℤ (((uint64_t)(x7 + x23) * (x47 + x63)) +ℤ (((uint64_t)(x9 + x25) * (x45 + x61)) +ℤ (((uint64_t)(x11 + x27) * (x43 + x59)) + (((uint64_t)(x13 + x29) * (x41 + x57)) + (((uint64_t)(x15 + x31) * (x39 + x55)) + (((uint64_t)(x17 + x33) * (x37 + x53)) + ((uint64_t)(x19 + x32) * (x35 + x51))))))))) -ℤ (((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + ((uint64_t)x19 * x35))))))))), (((((uint64_t)x5 * x62) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + ((uint64_t)x19 * x51)))))))) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (((uint64_t)x29 * x41) + (((uint64_t)x31 * x39) + (((uint64_t)x33 * x37) + ((uint64_t)x32 * x35))))))))) +ℤ (((uint64_t)x21 * x62) + (((uint64_t)x23 * x63) + (((uint64_t)x25 * x61) + (((uint64_t)x27 * x59) + (((uint64_t)x29 * x57) + (((uint64_t)x31 * x55) + (((uint64_t)x33 * x53) + ((uint64_t)x32 * x51))))))))));
- { uint64_t x72 = Op (Syntax.IdWithAlt Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6)) (((((uint64_t)(x5 + x21) * (x47 + x63)) +ℤ (((uint64_t)(x7 + x23) * (x45 + x61)) +ℤ (((uint64_t)(x9 + x25) * (x43 + x59)) + (((uint64_t)(x11 + x27) * (x41 + x57)) + (((uint64_t)(x13 + x29) * (x39 + x55)) + (((uint64_t)(x15 + x31) * (x37 + x53)) + ((uint64_t)(x17 + x33) * (x35 + x51)))))))) -ℤ (((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((uint64_t)x17 * x35)))))))), (((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + (((uint64_t)x9 * x59) + (((uint64_t)x11 * x57) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + ((uint64_t)x17 * x51))))))) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + (((uint64_t)x27 * x41) + (((uint64_t)x29 * x39) + (((uint64_t)x31 * x37) + ((uint64_t)x33 * x35)))))))) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + ((uint64_t)x33 * x51)))))))));
- { uint64_t x73 = Op (Syntax.IdWithAlt Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6)) (((((uint64_t)(x5 + x21) * (x45 + x61)) +ℤ (((uint64_t)(x7 + x23) * (x43 + x59)) + (((uint64_t)(x9 + x25) * (x41 + x57)) + (((uint64_t)(x11 + x27) * (x39 + x55)) + (((uint64_t)(x13 + x29) * (x37 + x53)) + ((uint64_t)(x15 + x31) * (x35 + x51))))))) -ℤ (((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + ((uint64_t)x15 * x35))))))), (((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + ((uint64_t)x15 * x51)))))) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + (((uint64_t)x29 * x37) + ((uint64_t)x31 * x35))))))) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + ((uint64_t)x31 * x51))))))));
- { uint64_t x74 = ((((uint64_t)(x5 + x21) * (x43 + x59)) + (((uint64_t)(x7 + x23) * (x41 + x57)) + (((uint64_t)(x9 + x25) * (x39 + x55)) + (((uint64_t)(x11 + x27) * (x37 + x53)) + ((uint64_t)(x13 + x29) * (x35 + x51)))))) - (((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((uint64_t)x13 * x35))))));
- { uint64_t x75 = ((((uint64_t)(x5 + x21) * (x41 + x57)) + (((uint64_t)(x7 + x23) * (x39 + x55)) + (((uint64_t)(x9 + x25) * (x37 + x53)) + ((uint64_t)(x11 + x27) * (x35 + x51))))) - (((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((uint64_t)x11 * x35)))));
- { uint64_t x76 = ((((uint64_t)(x5 + x21) * (x39 + x55)) + (((uint64_t)(x7 + x23) * (x37 + x53)) + ((uint64_t)(x9 + x25) * (x35 + x51)))) - (((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((uint64_t)x9 * x35))));
- { uint64_t x77 = ((((uint64_t)(x5 + x21) * (x37 + x53)) + ((uint64_t)(x7 + x23) * (x35 + x51))) - (((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)));
- { uint64_t x78 = (((uint64_t)(x5 + x21) * (x35 + x51)) - ((uint64_t)x5 * x35));
- { ℤ x79 = (((((uint64_t)x19 * x49) + ((uint64_t)x32 * x62)) +ℤ x72) +ℤ x64);
- { ℤ x80 = ((((((uint64_t)x17 * x49) + ((uint64_t)x19 * x47)) + (((uint64_t)x33 * x62) + ((uint64_t)x32 * x63))) + x73) +ℤ x65);
- { ℤ x81 = ((((((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + ((uint64_t)x19 * x45))) + (((uint64_t)x31 * x62) + (((uint64_t)x33 * x63) + ((uint64_t)x32 * x61)))) + x74) +ℤ x66);
- { ℤ x82 = ((((((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + ((uint64_t)x19 * x43)))) + (((uint64_t)x29 * x62) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + ((uint64_t)x32 * x59))))) + x75) +ℤ x67);
- { ℤ x83 = ((((((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((uint64_t)x19 * x41))))) + (((uint64_t)x27 * x62) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + (((uint64_t)x33 * x59) + ((uint64_t)x32 * x57)))))) + x76) +ℤ x68);
- { ℤ x84 = ((((((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + ((uint64_t)x19 * x39)))))) + (((uint64_t)x25 * x62) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + ((uint64_t)x32 * x55))))))) + x77) +ℤ x69);
- { ℤ x85 = ((((((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + ((uint64_t)x19 * x37))))))) + (((uint64_t)x23 * x62) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + ((uint64_t)x32 * x53)))))))) + x78) +ℤ x70);
- { uint64_t x86 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + ((uint64_t)x19 * x35)))))))) + (((uint64_t)x21 * x62) + (((uint64_t)x23 * x63) + (((uint64_t)x25 * x61) + (((uint64_t)x27 * x59) + (((uint64_t)x29 * x57) + (((uint64_t)x31 * x55) + (((uint64_t)x33 * x53) + ((uint64_t)x32 * x51)))))))));
- { uint64_t x87 = (((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((uint64_t)x17 * x35))))))) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + ((uint64_t)x33 * x51)))))))) + x64);
- { uint64_t x88 = (((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + ((uint64_t)x15 * x35)))))) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + ((uint64_t)x31 * x51))))))) + x65);
- { uint64_t x89 = (((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((uint64_t)x13 * x35))))) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + ((uint64_t)x29 * x51)))))) + x66);
- { uint64_t x90 = (((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((uint64_t)x11 * x35)))) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + ((uint64_t)x27 * x51))))) + x67);
- { uint64_t x91 = (((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((uint64_t)x9 * x35))) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + ((uint64_t)x25 * x51)))) + x68);
- { uint64_t x92 = (((((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)) + (((uint64_t)x21 * x53) + ((uint64_t)x23 * x51))) + x69);
- { ℤ x93 = ((((uint64_t)x5 * x35) + ((uint64_t)x21 * x51)) +ℤ x70);
- { uint64_t x94 = (x86 >> 0x1c);
- { uint32_t x95 = ((uint32_t)x86 & 0xfffffff);
- { uint64_t x96 = (x71 >> 0x1c);
- { uint32_t x97 = (x71 & 0xfffffff);
- { ℤ x98 = ((0x10000000 *ℤ x96) +ℤ x97);
- { uint64_t x99 = (x98 >> 0x1c);
- { uint32_t x100 = (x98 & 0xfffffff);
- { ℤ x101 = ((x94 +ℤ x85) +ℤ x99);
- { uint64_t x102 = (x101 >> 0x1c);
- { uint32_t x103 = (x101 & 0xfffffff);
- { ℤ x104 = (x93 +ℤ x99);
- { uint64_t x105 = (x104 >> 0x1c);
- { uint32_t x106 = (x104 & 0xfffffff);
- { ℤ x107 = (x102 +ℤ x84);
- { uint64_t x108 = (x107 >> 0x1c);
- { uint32_t x109 = (x107 & 0xfffffff);
- { uint64_t x110 = (x105 + x92);
- { uint64_t x111 = (x110 >> 0x1c);
- { uint32_t x112 = ((uint32_t)x110 & 0xfffffff);
- { ℤ x113 = (x108 +ℤ x83);
- { uint64_t x114 = (x113 >> 0x1c);
- { uint32_t x115 = (x113 & 0xfffffff);
- { uint64_t x116 = (x111 + x91);
- { uint64_t x117 = (x116 >> 0x1c);
- { uint32_t x118 = ((uint32_t)x116 & 0xfffffff);
- { ℤ x119 = (x114 +ℤ x82);
- { uint64_t x120 = (x119 >> 0x1c);
- { uint32_t x121 = (x119 & 0xfffffff);
- { uint64_t x122 = (x117 + x90);
- { uint64_t x123 = (x122 >> 0x1c);
- { uint32_t x124 = ((uint32_t)x122 & 0xfffffff);
- { ℤ x125 = (x120 +ℤ x81);
- { uint64_t x126 = (x125 >> 0x1c);
- { uint32_t x127 = (x125 & 0xfffffff);
- { uint64_t x128 = (x123 + x89);
- { uint64_t x129 = (x128 >> 0x1c);
- { uint32_t x130 = ((uint32_t)x128 & 0xfffffff);
- { ℤ x131 = (x126 +ℤ x80);
- { uint64_t x132 = (x131 >> 0x1c);
- { uint32_t x133 = (x131 & 0xfffffff);
- { uint64_t x134 = (x129 + x88);
- { uint64_t x135 = (x134 >> 0x1c);
- { uint32_t x136 = ((uint32_t)x134 & 0xfffffff);
- { ℤ x137 = (x132 +ℤ x79);
- { uint64_t x138 = (x137 >> 0x1c);
- { uint32_t x139 = (x137 & 0xfffffff);
- { uint64_t x140 = (x135 + x87);
- { uint64_t x141 = (x140 >> 0x1c);
- { uint32_t x142 = ((uint32_t)x140 & 0xfffffff);
- { uint64_t x143 = (x138 + x100);
- { uint32_t x144 = (uint32_t) (x143 >> 0x1c);
- { uint32_t x145 = ((uint32_t)x143 & 0xfffffff);
- { uint64_t x146 = (x141 + x95);
- { uint32_t x147 = (uint32_t) (x146 >> 0x1c);
- { uint32_t x148 = ((uint32_t)x146 & 0xfffffff);
- { uint64_t x149 = (((uint64_t)0x10000000 * x144) + x145);
- { uint32_t x150 = (uint32_t) (x149 >> 0x1c);
- { uint32_t x151 = ((uint32_t)x149 & 0xfffffff);
- { uint32_t x152 = ((x147 + x103) + x150);
- { uint32_t x153 = (x152 >> 0x1c);
- { uint32_t x154 = (x152 & 0xfffffff);
- { uint32_t x155 = (x106 + x150);
- { uint32_t x156 = (x155 >> 0x1c);
- { uint32_t x157 = (x155 & 0xfffffff);
- out[0] = x157;
- out[1] = (x156 + x112);
- out[2] = x118;
- out[3] = x124;
- out[4] = x130;
- out[5] = x136;
- out[6] = x142;
- out[7] = x148;
- out[8] = x154;
- out[9] = (x153 + x109);
- out[10] = x115;
- out[11] = x121;
- out[12] = x127;
- out[13] = x133;
- out[14] = x139;
- out[15] = x151;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e448m2e224m1_16limbs/femul.v b/src/Specific/solinas32_2e448m2e224m1_16limbs/femul.v
deleted file mode 100644
index 8f2843ccf..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_16limbs.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_2e448m2e224m1_16limbs/femulDisplay.log b/src/Specific/solinas32_2e448m2e224m1_16limbs/femulDisplay.log
deleted file mode 100644
index f2ea9e588..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/femulDisplay.log
+++ /dev/null
@@ -1,101 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- uint64_t x64 = (((uint64_t)(x19 + x32) * (x49 + x62)) - ((uint64_t)x19 * x49));
- uint64_t x65 = ((((uint64_t)(x17 + x33) * (x49 + x62)) + ((uint64_t)(x19 + x32) * (x47 + x63))) - (((uint64_t)x17 * x49) + ((uint64_t)x19 * x47)));
- uint64_t x66 = ((((uint64_t)(x15 + x31) * (x49 + x62)) + (((uint64_t)(x17 + x33) * (x47 + x63)) + ((uint64_t)(x19 + x32) * (x45 + x61)))) - (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + ((uint64_t)x19 * x45))));
- uint64_t x67 = ((((uint64_t)(x13 + x29) * (x49 + x62)) + (((uint64_t)(x15 + x31) * (x47 + x63)) + (((uint64_t)(x17 + x33) * (x45 + x61)) + ((uint64_t)(x19 + x32) * (x43 + x59))))) - (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + ((uint64_t)x19 * x43)))));
- uint64_t x68 = ((((uint64_t)(x11 + x27) * (x49 + x62)) + (((uint64_t)(x13 + x29) * (x47 + x63)) + (((uint64_t)(x15 + x31) * (x45 + x61)) + (((uint64_t)(x17 + x33) * (x43 + x59)) + ((uint64_t)(x19 + x32) * (x41 + x57)))))) - (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((uint64_t)x19 * x41))))));
- uint64_t x69 = Op (Syntax.IdWithAlt Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6)) (((((uint64_t)(x9 + x25) * (x49 + x62)) +ℤ (((uint64_t)(x11 + x27) * (x47 + x63)) + (((uint64_t)(x13 + x29) * (x45 + x61)) + (((uint64_t)(x15 + x31) * (x43 + x59)) + (((uint64_t)(x17 + x33) * (x41 + x57)) + ((uint64_t)(x19 + x32) * (x39 + x55))))))) -ℤ (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + ((uint64_t)x19 * x39))))))), (((((uint64_t)x9 * x62) + (((uint64_t)x11 * x63) + (((uint64_t)x13 * x61) + (((uint64_t)x15 * x59) + (((uint64_t)x17 * x57) + ((uint64_t)x19 * x55)))))) + (((uint64_t)x25 * x49) + (((uint64_t)x27 * x47) + (((uint64_t)x29 * x45) + (((uint64_t)x31 * x43) + (((uint64_t)x33 * x41) + ((uint64_t)x32 * x39))))))) + (((uint64_t)x25 * x62) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + ((uint64_t)x32 * x55))))))));
- uint64_t x70 = Op (Syntax.IdWithAlt Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6)) (((((uint64_t)(x7 + x23) * (x49 + x62)) +ℤ (((uint64_t)(x9 + x25) * (x47 + x63)) +ℤ (((uint64_t)(x11 + x27) * (x45 + x61)) + (((uint64_t)(x13 + x29) * (x43 + x59)) + (((uint64_t)(x15 + x31) * (x41 + x57)) + (((uint64_t)(x17 + x33) * (x39 + x55)) + ((uint64_t)(x19 + x32) * (x37 + x53)))))))) -ℤ (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + ((uint64_t)x19 * x37)))))))), (((((uint64_t)x7 * x62) + (((uint64_t)x9 * x63) + (((uint64_t)x11 * x61) + (((uint64_t)x13 * x59) + (((uint64_t)x15 * x57) + (((uint64_t)x17 * x55) + ((uint64_t)x19 * x53))))))) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + (((uint64_t)x29 * x43) + (((uint64_t)x31 * x41) + (((uint64_t)x33 * x39) + ((uint64_t)x32 * x37)))))))) + (((uint64_t)x23 * x62) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + ((uint64_t)x32 * x53)))))))));
- ℤ x71 = Op (Syntax.IdWithAlt Syntax.TZ Syntax.TZ Syntax.TZ) (((((uint64_t)(x5 + x21) * (x49 + x62)) +ℤ (((uint64_t)(x7 + x23) * (x47 + x63)) +ℤ (((uint64_t)(x9 + x25) * (x45 + x61)) +ℤ (((uint64_t)(x11 + x27) * (x43 + x59)) + (((uint64_t)(x13 + x29) * (x41 + x57)) + (((uint64_t)(x15 + x31) * (x39 + x55)) + (((uint64_t)(x17 + x33) * (x37 + x53)) + ((uint64_t)(x19 + x32) * (x35 + x51))))))))) -ℤ (((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + ((uint64_t)x19 * x35))))))))), (((((uint64_t)x5 * x62) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + ((uint64_t)x19 * x51)))))))) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (((uint64_t)x29 * x41) + (((uint64_t)x31 * x39) + (((uint64_t)x33 * x37) + ((uint64_t)x32 * x35))))))))) +ℤ (((uint64_t)x21 * x62) + (((uint64_t)x23 * x63) + (((uint64_t)x25 * x61) + (((uint64_t)x27 * x59) + (((uint64_t)x29 * x57) + (((uint64_t)x31 * x55) + (((uint64_t)x33 * x53) + ((uint64_t)x32 * x51))))))))));
- uint64_t x72 = Op (Syntax.IdWithAlt Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6)) (((((uint64_t)(x5 + x21) * (x47 + x63)) +ℤ (((uint64_t)(x7 + x23) * (x45 + x61)) +ℤ (((uint64_t)(x9 + x25) * (x43 + x59)) + (((uint64_t)(x11 + x27) * (x41 + x57)) + (((uint64_t)(x13 + x29) * (x39 + x55)) + (((uint64_t)(x15 + x31) * (x37 + x53)) + ((uint64_t)(x17 + x33) * (x35 + x51)))))))) -ℤ (((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((uint64_t)x17 * x35)))))))), (((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + (((uint64_t)x9 * x59) + (((uint64_t)x11 * x57) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + ((uint64_t)x17 * x51))))))) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + (((uint64_t)x27 * x41) + (((uint64_t)x29 * x39) + (((uint64_t)x31 * x37) + ((uint64_t)x33 * x35)))))))) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + ((uint64_t)x33 * x51)))))))));
- uint64_t x73 = Op (Syntax.IdWithAlt Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6)) (((((uint64_t)(x5 + x21) * (x45 + x61)) +ℤ (((uint64_t)(x7 + x23) * (x43 + x59)) + (((uint64_t)(x9 + x25) * (x41 + x57)) + (((uint64_t)(x11 + x27) * (x39 + x55)) + (((uint64_t)(x13 + x29) * (x37 + x53)) + ((uint64_t)(x15 + x31) * (x35 + x51))))))) -ℤ (((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + ((uint64_t)x15 * x35))))))), (((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + ((uint64_t)x15 * x51)))))) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + (((uint64_t)x29 * x37) + ((uint64_t)x31 * x35))))))) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + ((uint64_t)x31 * x51))))))));
- uint64_t x74 = ((((uint64_t)(x5 + x21) * (x43 + x59)) + (((uint64_t)(x7 + x23) * (x41 + x57)) + (((uint64_t)(x9 + x25) * (x39 + x55)) + (((uint64_t)(x11 + x27) * (x37 + x53)) + ((uint64_t)(x13 + x29) * (x35 + x51)))))) - (((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((uint64_t)x13 * x35))))));
- uint64_t x75 = ((((uint64_t)(x5 + x21) * (x41 + x57)) + (((uint64_t)(x7 + x23) * (x39 + x55)) + (((uint64_t)(x9 + x25) * (x37 + x53)) + ((uint64_t)(x11 + x27) * (x35 + x51))))) - (((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((uint64_t)x11 * x35)))));
- uint64_t x76 = ((((uint64_t)(x5 + x21) * (x39 + x55)) + (((uint64_t)(x7 + x23) * (x37 + x53)) + ((uint64_t)(x9 + x25) * (x35 + x51)))) - (((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((uint64_t)x9 * x35))));
- uint64_t x77 = ((((uint64_t)(x5 + x21) * (x37 + x53)) + ((uint64_t)(x7 + x23) * (x35 + x51))) - (((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)));
- uint64_t x78 = (((uint64_t)(x5 + x21) * (x35 + x51)) - ((uint64_t)x5 * x35));
- ℤ x79 = (((((uint64_t)x19 * x49) + ((uint64_t)x32 * x62)) +ℤ x72) +ℤ x64);
- ℤ x80 = ((((((uint64_t)x17 * x49) + ((uint64_t)x19 * x47)) + (((uint64_t)x33 * x62) + ((uint64_t)x32 * x63))) + x73) +ℤ x65);
- ℤ x81 = ((((((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + ((uint64_t)x19 * x45))) + (((uint64_t)x31 * x62) + (((uint64_t)x33 * x63) + ((uint64_t)x32 * x61)))) + x74) +ℤ x66);
- ℤ x82 = ((((((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + ((uint64_t)x19 * x43)))) + (((uint64_t)x29 * x62) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + ((uint64_t)x32 * x59))))) + x75) +ℤ x67);
- ℤ x83 = ((((((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((uint64_t)x19 * x41))))) + (((uint64_t)x27 * x62) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + (((uint64_t)x33 * x59) + ((uint64_t)x32 * x57)))))) + x76) +ℤ x68);
- ℤ x84 = ((((((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + ((uint64_t)x19 * x39)))))) + (((uint64_t)x25 * x62) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + ((uint64_t)x32 * x55))))))) + x77) +ℤ x69);
- ℤ x85 = ((((((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + ((uint64_t)x19 * x37))))))) + (((uint64_t)x23 * x62) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + ((uint64_t)x32 * x53)))))))) + x78) +ℤ x70);
- uint64_t x86 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + (((uint64_t)x15 * x39) + (((uint64_t)x17 * x37) + ((uint64_t)x19 * x35)))))))) + (((uint64_t)x21 * x62) + (((uint64_t)x23 * x63) + (((uint64_t)x25 * x61) + (((uint64_t)x27 * x59) + (((uint64_t)x29 * x57) + (((uint64_t)x31 * x55) + (((uint64_t)x33 * x53) + ((uint64_t)x32 * x51)))))))));
- uint64_t x87 = (((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + (((uint64_t)x13 * x39) + (((uint64_t)x15 * x37) + ((uint64_t)x17 * x35))))))) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + ((uint64_t)x33 * x51)))))))) + x64);
- uint64_t x88 = (((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + (((uint64_t)x11 * x39) + (((uint64_t)x13 * x37) + ((uint64_t)x15 * x35)))))) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + ((uint64_t)x31 * x51))))))) + x65);
- uint64_t x89 = (((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + (((uint64_t)x9 * x39) + (((uint64_t)x11 * x37) + ((uint64_t)x13 * x35))))) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + ((uint64_t)x29 * x51)))))) + x66);
- uint64_t x90 = (((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + (((uint64_t)x9 * x37) + ((uint64_t)x11 * x35)))) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + ((uint64_t)x27 * x51))))) + x67);
- uint64_t x91 = (((((uint64_t)x5 * x39) + (((uint64_t)x7 * x37) + ((uint64_t)x9 * x35))) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + ((uint64_t)x25 * x51)))) + x68);
- uint64_t x92 = (((((uint64_t)x5 * x37) + ((uint64_t)x7 * x35)) + (((uint64_t)x21 * x53) + ((uint64_t)x23 * x51))) + x69);
- ℤ x93 = ((((uint64_t)x5 * x35) + ((uint64_t)x21 * x51)) +ℤ x70);
- uint64_t x94 = (x86 >> 0x1c);
- uint32_t x95 = ((uint32_t)x86 & 0xfffffff);
- uint64_t x96 = (x71 >> 0x1c);
- uint32_t x97 = (x71 & 0xfffffff);
- ℤ x98 = ((0x10000000 *ℤ x96) +ℤ x97);
- uint64_t x99 = (x98 >> 0x1c);
- uint32_t x100 = (x98 & 0xfffffff);
- ℤ x101 = ((x94 +ℤ x85) +ℤ x99);
- uint64_t x102 = (x101 >> 0x1c);
- uint32_t x103 = (x101 & 0xfffffff);
- ℤ x104 = (x93 +ℤ x99);
- uint64_t x105 = (x104 >> 0x1c);
- uint32_t x106 = (x104 & 0xfffffff);
- ℤ x107 = (x102 +ℤ x84);
- uint64_t x108 = (x107 >> 0x1c);
- uint32_t x109 = (x107 & 0xfffffff);
- uint64_t x110 = (x105 + x92);
- uint64_t x111 = (x110 >> 0x1c);
- uint32_t x112 = ((uint32_t)x110 & 0xfffffff);
- ℤ x113 = (x108 +ℤ x83);
- uint64_t x114 = (x113 >> 0x1c);
- uint32_t x115 = (x113 & 0xfffffff);
- uint64_t x116 = (x111 + x91);
- uint64_t x117 = (x116 >> 0x1c);
- uint32_t x118 = ((uint32_t)x116 & 0xfffffff);
- ℤ x119 = (x114 +ℤ x82);
- uint64_t x120 = (x119 >> 0x1c);
- uint32_t x121 = (x119 & 0xfffffff);
- uint64_t x122 = (x117 + x90);
- uint64_t x123 = (x122 >> 0x1c);
- uint32_t x124 = ((uint32_t)x122 & 0xfffffff);
- ℤ x125 = (x120 +ℤ x81);
- uint64_t x126 = (x125 >> 0x1c);
- uint32_t x127 = (x125 & 0xfffffff);
- uint64_t x128 = (x123 + x89);
- uint64_t x129 = (x128 >> 0x1c);
- uint32_t x130 = ((uint32_t)x128 & 0xfffffff);
- ℤ x131 = (x126 +ℤ x80);
- uint64_t x132 = (x131 >> 0x1c);
- uint32_t x133 = (x131 & 0xfffffff);
- uint64_t x134 = (x129 + x88);
- uint64_t x135 = (x134 >> 0x1c);
- uint32_t x136 = ((uint32_t)x134 & 0xfffffff);
- ℤ x137 = (x132 +ℤ x79);
- uint64_t x138 = (x137 >> 0x1c);
- uint32_t x139 = (x137 & 0xfffffff);
- uint64_t x140 = (x135 + x87);
- uint64_t x141 = (x140 >> 0x1c);
- uint32_t x142 = ((uint32_t)x140 & 0xfffffff);
- uint64_t x143 = (x138 + x100);
- uint32_t x144 = (uint32_t) (x143 >> 0x1c);
- uint32_t x145 = ((uint32_t)x143 & 0xfffffff);
- uint64_t x146 = (x141 + x95);
- uint32_t x147 = (uint32_t) (x146 >> 0x1c);
- uint32_t x148 = ((uint32_t)x146 & 0xfffffff);
- uint64_t x149 = (((uint64_t)0x10000000 * x144) + x145);
- uint32_t x150 = (uint32_t) (x149 >> 0x1c);
- uint32_t x151 = ((uint32_t)x149 & 0xfffffff);
- uint32_t x152 = ((x147 + x103) + x150);
- uint32_t x153 = (x152 >> 0x1c);
- uint32_t x154 = (x152 & 0xfffffff);
- uint32_t x155 = (x106 + x150);
- uint32_t x156 = (x155 >> 0x1c);
- uint32_t x157 = (x155 & 0xfffffff);
- return (Return x151, Return x139, Return x133, Return x127, Return x121, Return x115, (x153 + x109), Return x154, Return x148, Return x142, Return x136, Return x130, Return x124, Return x118, (x156 + x112), Return x157))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e448m2e224m1_16limbs/femulDisplay.v b/src/Specific/solinas32_2e448m2e224m1_16limbs/femulDisplay.v
deleted file mode 100644
index d2f8196ec..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_16limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e448m2e224m1_16limbs/fesquare.c b/src/Specific/solinas32_2e448m2e224m1_16limbs/fesquare.c
deleted file mode 100644
index 5f1a92651..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/fesquare.c
+++ /dev/null
@@ -1,129 +0,0 @@
-static void fesquare(uint32_t out[16], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x31 = (((uint64_t)(x16 + x29) * (x16 + x29)) - ((uint64_t)x16 * x16));
- { uint64_t x32 = ((((uint64_t)(x14 + x30) * (x16 + x29)) + ((uint64_t)(x16 + x29) * (x14 + x30))) - (((uint64_t)x14 * x16) + ((uint64_t)x16 * x14)));
- { uint64_t x33 = ((((uint64_t)(x12 + x28) * (x16 + x29)) + (((uint64_t)(x14 + x30) * (x14 + x30)) + ((uint64_t)(x16 + x29) * (x12 + x28)))) - (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + ((uint64_t)x16 * x12))));
- { uint64_t x34 = ((((uint64_t)(x10 + x26) * (x16 + x29)) + (((uint64_t)(x12 + x28) * (x14 + x30)) + (((uint64_t)(x14 + x30) * (x12 + x28)) + ((uint64_t)(x16 + x29) * (x10 + x26))))) - (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x16 * x10)))));
- { uint64_t x35 = ((((uint64_t)(x8 + x24) * (x16 + x29)) + (((uint64_t)(x10 + x26) * (x14 + x30)) + (((uint64_t)(x12 + x28) * (x12 + x28)) + (((uint64_t)(x14 + x30) * (x10 + x26)) + ((uint64_t)(x16 + x29) * (x8 + x24)))))) - (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + ((uint64_t)x16 * x8))))));
- { uint64_t x36 = Op (Syntax.IdWithAlt Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6)) (((((uint64_t)(x6 + x22) * (x16 + x29)) +ℤ (((uint64_t)(x8 + x24) * (x14 + x30)) + (((uint64_t)(x10 + x26) * (x12 + x28)) + (((uint64_t)(x12 + x28) * (x10 + x26)) + (((uint64_t)(x14 + x30) * (x8 + x24)) + ((uint64_t)(x16 + x29) * (x6 + x22))))))) -ℤ (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((uint64_t)x16 * x6))))))), (((((uint64_t)x6 * x29) + (((uint64_t)x8 * x30) + (((uint64_t)x10 * x28) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + ((uint64_t)x16 * x22)))))) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + (((uint64_t)x28 * x10) + (((uint64_t)x30 * x8) + ((uint64_t)x29 * x6))))))) + (((uint64_t)x22 * x29) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + ((uint64_t)x29 * x22))))))));
- { uint64_t x37 = Op (Syntax.IdWithAlt Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6)) (((((uint64_t)(x4 + x20) * (x16 + x29)) +ℤ (((uint64_t)(x6 + x22) * (x14 + x30)) +ℤ (((uint64_t)(x8 + x24) * (x12 + x28)) + (((uint64_t)(x10 + x26) * (x10 + x26)) + (((uint64_t)(x12 + x28) * (x8 + x24)) + (((uint64_t)(x14 + x30) * (x6 + x22)) + ((uint64_t)(x16 + x29) * (x4 + x20)))))))) -ℤ (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((uint64_t)x16 * x4)))))))), (((((uint64_t)x4 * x29) + (((uint64_t)x6 * x30) + (((uint64_t)x8 * x28) + (((uint64_t)x10 * x26) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + ((uint64_t)x16 * x20))))))) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + (((uint64_t)x26 * x10) + (((uint64_t)x28 * x8) + (((uint64_t)x30 * x6) + ((uint64_t)x29 * x4)))))))) + (((uint64_t)x20 * x29) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + ((uint64_t)x29 * x20)))))))));
- { ℤ x38 = Op (Syntax.IdWithAlt Syntax.TZ Syntax.TZ Syntax.TZ) (((((uint64_t)(x2 + x18) * (x16 + x29)) +ℤ (((uint64_t)(x4 + x20) * (x14 + x30)) +ℤ (((uint64_t)(x6 + x22) * (x12 + x28)) +ℤ (((uint64_t)(x8 + x24) * (x10 + x26)) + (((uint64_t)(x10 + x26) * (x8 + x24)) + (((uint64_t)(x12 + x28) * (x6 + x22)) + (((uint64_t)(x14 + x30) * (x4 + x20)) + ((uint64_t)(x16 + x29) * (x2 + x18))))))))) -ℤ (((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2))))))))), (((((uint64_t)x2 * x29) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + ((uint64_t)x16 * x18)))))))) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x29 * x2))))))))) +ℤ (((uint64_t)x18 * x29) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + ((uint64_t)x29 * x18))))))))));
- { uint64_t x39 = Op (Syntax.IdWithAlt Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6)) (((((uint64_t)(x2 + x18) * (x14 + x30)) +ℤ (((uint64_t)(x4 + x20) * (x12 + x28)) +ℤ (((uint64_t)(x6 + x22) * (x10 + x26)) + (((uint64_t)(x8 + x24) * (x8 + x24)) + (((uint64_t)(x10 + x26) * (x6 + x22)) + (((uint64_t)(x12 + x28) * (x4 + x20)) + ((uint64_t)(x14 + x30) * (x2 + x18)))))))) -ℤ (((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2)))))))), (((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + ((uint64_t)x14 * x18))))))) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2)))))))) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + ((uint64_t)x30 * x18)))))))));
- { uint64_t x40 = Op (Syntax.IdWithAlt Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6)) (((((uint64_t)(x2 + x18) * (x12 + x28)) +ℤ (((uint64_t)(x4 + x20) * (x10 + x26)) + (((uint64_t)(x6 + x22) * (x8 + x24)) + (((uint64_t)(x8 + x24) * (x6 + x22)) + (((uint64_t)(x10 + x26) * (x4 + x20)) + ((uint64_t)(x12 + x28) * (x2 + x18))))))) -ℤ (((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2))))))), (((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + ((uint64_t)x12 * x18)))))) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2))))))) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + ((uint64_t)x28 * x18))))))));
- { uint64_t x41 = ((((uint64_t)(x2 + x18) * (x10 + x26)) + (((uint64_t)(x4 + x20) * (x8 + x24)) + (((uint64_t)(x6 + x22) * (x6 + x22)) + (((uint64_t)(x8 + x24) * (x4 + x20)) + ((uint64_t)(x10 + x26) * (x2 + x18)))))) - (((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))));
- { uint64_t x42 = ((((uint64_t)(x2 + x18) * (x8 + x24)) + (((uint64_t)(x4 + x20) * (x6 + x22)) + (((uint64_t)(x6 + x22) * (x4 + x20)) + ((uint64_t)(x8 + x24) * (x2 + x18))))) - (((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))));
- { uint64_t x43 = ((((uint64_t)(x2 + x18) * (x6 + x22)) + (((uint64_t)(x4 + x20) * (x4 + x20)) + ((uint64_t)(x6 + x22) * (x2 + x18)))) - (((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))));
- { uint64_t x44 = ((((uint64_t)(x2 + x18) * (x4 + x20)) + ((uint64_t)(x4 + x20) * (x2 + x18))) - (((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)));
- { uint64_t x45 = (((uint64_t)(x2 + x18) * (x2 + x18)) - ((uint64_t)x2 * x2));
- { ℤ x46 = (((((uint64_t)x16 * x16) + ((uint64_t)x29 * x29)) +ℤ x39) +ℤ x31);
- { ℤ x47 = ((((((uint64_t)x14 * x16) + ((uint64_t)x16 * x14)) + (((uint64_t)x30 * x29) + ((uint64_t)x29 * x30))) + x40) +ℤ x32);
- { ℤ x48 = ((((((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + ((uint64_t)x16 * x12))) + (((uint64_t)x28 * x29) + (((uint64_t)x30 * x30) + ((uint64_t)x29 * x28)))) + x41) +ℤ x33);
- { ℤ x49 = ((((((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x16 * x10)))) + (((uint64_t)x26 * x29) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + ((uint64_t)x29 * x26))))) + x42) +ℤ x34);
- { ℤ x50 = ((((((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + ((uint64_t)x16 * x8))))) + (((uint64_t)x24 * x29) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + ((uint64_t)x29 * x24)))))) + x43) +ℤ x35);
- { ℤ x51 = ((((((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((uint64_t)x16 * x6)))))) + (((uint64_t)x22 * x29) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + ((uint64_t)x29 * x22))))))) + x44) +ℤ x36);
- { ℤ x52 = ((((((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((uint64_t)x16 * x4))))))) + (((uint64_t)x20 * x29) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + ((uint64_t)x29 * x20)))))))) + x45) +ℤ x37);
- { uint64_t x53 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (((uint64_t)x18 * x29) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + ((uint64_t)x29 * x18)))))))));
- { uint64_t x54 = (((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + ((uint64_t)x30 * x18)))))))) + x31);
- { uint64_t x55 = (((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + ((uint64_t)x28 * x18))))))) + x32);
- { uint64_t x56 = (((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + ((uint64_t)x26 * x18)))))) + x33);
- { uint64_t x57 = (((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((uint64_t)x24 * x18))))) + x34);
- { uint64_t x58 = (((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + ((uint64_t)x22 * x18)))) + x35);
- { uint64_t x59 = (((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x18 * x20) + ((uint64_t)x20 * x18))) + x36);
- { ℤ x60 = ((((uint64_t)x2 * x2) + ((uint64_t)x18 * x18)) +ℤ x37);
- { uint64_t x61 = (x53 >> 0x1c);
- { uint32_t x62 = ((uint32_t)x53 & 0xfffffff);
- { uint64_t x63 = (x38 >> 0x1c);
- { uint32_t x64 = (x38 & 0xfffffff);
- { ℤ x65 = ((0x10000000 *ℤ x63) +ℤ x64);
- { uint64_t x66 = (x65 >> 0x1c);
- { uint32_t x67 = (x65 & 0xfffffff);
- { ℤ x68 = ((x61 +ℤ x52) +ℤ x66);
- { uint64_t x69 = (x68 >> 0x1c);
- { uint32_t x70 = (x68 & 0xfffffff);
- { ℤ x71 = (x60 +ℤ x66);
- { uint64_t x72 = (x71 >> 0x1c);
- { uint32_t x73 = (x71 & 0xfffffff);
- { ℤ x74 = (x69 +ℤ x51);
- { uint64_t x75 = (x74 >> 0x1c);
- { uint32_t x76 = (x74 & 0xfffffff);
- { uint64_t x77 = (x72 + x59);
- { uint64_t x78 = (x77 >> 0x1c);
- { uint32_t x79 = ((uint32_t)x77 & 0xfffffff);
- { ℤ x80 = (x75 +ℤ x50);
- { uint64_t x81 = (x80 >> 0x1c);
- { uint32_t x82 = (x80 & 0xfffffff);
- { uint64_t x83 = (x78 + x58);
- { uint64_t x84 = (x83 >> 0x1c);
- { uint32_t x85 = ((uint32_t)x83 & 0xfffffff);
- { ℤ x86 = (x81 +ℤ x49);
- { uint64_t x87 = (x86 >> 0x1c);
- { uint32_t x88 = (x86 & 0xfffffff);
- { uint64_t x89 = (x84 + x57);
- { uint64_t x90 = (x89 >> 0x1c);
- { uint32_t x91 = ((uint32_t)x89 & 0xfffffff);
- { ℤ x92 = (x87 +ℤ x48);
- { uint64_t x93 = (x92 >> 0x1c);
- { uint32_t x94 = (x92 & 0xfffffff);
- { uint64_t x95 = (x90 + x56);
- { uint64_t x96 = (x95 >> 0x1c);
- { uint32_t x97 = ((uint32_t)x95 & 0xfffffff);
- { ℤ x98 = (x93 +ℤ x47);
- { uint64_t x99 = (x98 >> 0x1c);
- { uint32_t x100 = (x98 & 0xfffffff);
- { uint64_t x101 = (x96 + x55);
- { uint64_t x102 = (x101 >> 0x1c);
- { uint32_t x103 = ((uint32_t)x101 & 0xfffffff);
- { ℤ x104 = (x99 +ℤ x46);
- { uint64_t x105 = (x104 >> 0x1c);
- { uint32_t x106 = (x104 & 0xfffffff);
- { uint64_t x107 = (x102 + x54);
- { uint64_t x108 = (x107 >> 0x1c);
- { uint32_t x109 = ((uint32_t)x107 & 0xfffffff);
- { uint64_t x110 = (x105 + x67);
- { uint32_t x111 = (uint32_t) (x110 >> 0x1c);
- { uint32_t x112 = ((uint32_t)x110 & 0xfffffff);
- { uint64_t x113 = (x108 + x62);
- { uint32_t x114 = (uint32_t) (x113 >> 0x1c);
- { uint32_t x115 = ((uint32_t)x113 & 0xfffffff);
- { uint64_t x116 = (((uint64_t)0x10000000 * x111) + x112);
- { uint32_t x117 = (uint32_t) (x116 >> 0x1c);
- { uint32_t x118 = ((uint32_t)x116 & 0xfffffff);
- { uint32_t x119 = ((x114 + x70) + x117);
- { uint32_t x120 = (x119 >> 0x1c);
- { uint32_t x121 = (x119 & 0xfffffff);
- { uint32_t x122 = (x73 + x117);
- { uint32_t x123 = (x122 >> 0x1c);
- { uint32_t x124 = (x122 & 0xfffffff);
- out[0] = x124;
- out[1] = (x123 + x79);
- out[2] = x85;
- out[3] = x91;
- out[4] = x97;
- out[5] = x103;
- out[6] = x109;
- out[7] = x115;
- out[8] = x121;
- out[9] = (x120 + x76);
- out[10] = x82;
- out[11] = x88;
- out[12] = x94;
- out[13] = x100;
- out[14] = x106;
- out[15] = x118;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e448m2e224m1_16limbs/fesquare.v b/src/Specific/solinas32_2e448m2e224m1_16limbs/fesquare.v
deleted file mode 100644
index b2566b3f8..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_16limbs.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_2e448m2e224m1_16limbs/fesquareDisplay.log b/src/Specific/solinas32_2e448m2e224m1_16limbs/fesquareDisplay.log
deleted file mode 100644
index e1ffcf26b..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,101 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x31 = (((uint64_t)(x16 + x29) * (x16 + x29)) - ((uint64_t)x16 * x16));
- uint64_t x32 = ((((uint64_t)(x14 + x30) * (x16 + x29)) + ((uint64_t)(x16 + x29) * (x14 + x30))) - (((uint64_t)x14 * x16) + ((uint64_t)x16 * x14)));
- uint64_t x33 = ((((uint64_t)(x12 + x28) * (x16 + x29)) + (((uint64_t)(x14 + x30) * (x14 + x30)) + ((uint64_t)(x16 + x29) * (x12 + x28)))) - (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + ((uint64_t)x16 * x12))));
- uint64_t x34 = ((((uint64_t)(x10 + x26) * (x16 + x29)) + (((uint64_t)(x12 + x28) * (x14 + x30)) + (((uint64_t)(x14 + x30) * (x12 + x28)) + ((uint64_t)(x16 + x29) * (x10 + x26))))) - (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x16 * x10)))));
- uint64_t x35 = ((((uint64_t)(x8 + x24) * (x16 + x29)) + (((uint64_t)(x10 + x26) * (x14 + x30)) + (((uint64_t)(x12 + x28) * (x12 + x28)) + (((uint64_t)(x14 + x30) * (x10 + x26)) + ((uint64_t)(x16 + x29) * (x8 + x24)))))) - (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + ((uint64_t)x16 * x8))))));
- uint64_t x36 = Op (Syntax.IdWithAlt Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6)) (((((uint64_t)(x6 + x22) * (x16 + x29)) +ℤ (((uint64_t)(x8 + x24) * (x14 + x30)) + (((uint64_t)(x10 + x26) * (x12 + x28)) + (((uint64_t)(x12 + x28) * (x10 + x26)) + (((uint64_t)(x14 + x30) * (x8 + x24)) + ((uint64_t)(x16 + x29) * (x6 + x22))))))) -ℤ (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((uint64_t)x16 * x6))))))), (((((uint64_t)x6 * x29) + (((uint64_t)x8 * x30) + (((uint64_t)x10 * x28) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + ((uint64_t)x16 * x22)))))) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + (((uint64_t)x28 * x10) + (((uint64_t)x30 * x8) + ((uint64_t)x29 * x6))))))) + (((uint64_t)x22 * x29) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + ((uint64_t)x29 * x22))))))));
- uint64_t x37 = Op (Syntax.IdWithAlt Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6)) (((((uint64_t)(x4 + x20) * (x16 + x29)) +ℤ (((uint64_t)(x6 + x22) * (x14 + x30)) +ℤ (((uint64_t)(x8 + x24) * (x12 + x28)) + (((uint64_t)(x10 + x26) * (x10 + x26)) + (((uint64_t)(x12 + x28) * (x8 + x24)) + (((uint64_t)(x14 + x30) * (x6 + x22)) + ((uint64_t)(x16 + x29) * (x4 + x20)))))))) -ℤ (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((uint64_t)x16 * x4)))))))), (((((uint64_t)x4 * x29) + (((uint64_t)x6 * x30) + (((uint64_t)x8 * x28) + (((uint64_t)x10 * x26) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + ((uint64_t)x16 * x20))))))) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + (((uint64_t)x26 * x10) + (((uint64_t)x28 * x8) + (((uint64_t)x30 * x6) + ((uint64_t)x29 * x4)))))))) + (((uint64_t)x20 * x29) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + ((uint64_t)x29 * x20)))))))));
- ℤ x38 = Op (Syntax.IdWithAlt Syntax.TZ Syntax.TZ Syntax.TZ) (((((uint64_t)(x2 + x18) * (x16 + x29)) +ℤ (((uint64_t)(x4 + x20) * (x14 + x30)) +ℤ (((uint64_t)(x6 + x22) * (x12 + x28)) +ℤ (((uint64_t)(x8 + x24) * (x10 + x26)) + (((uint64_t)(x10 + x26) * (x8 + x24)) + (((uint64_t)(x12 + x28) * (x6 + x22)) + (((uint64_t)(x14 + x30) * (x4 + x20)) + ((uint64_t)(x16 + x29) * (x2 + x18))))))))) -ℤ (((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2))))))))), (((((uint64_t)x2 * x29) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + ((uint64_t)x16 * x18)))))))) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x29 * x2))))))))) +ℤ (((uint64_t)x18 * x29) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + ((uint64_t)x29 * x18))))))))));
- uint64_t x39 = Op (Syntax.IdWithAlt Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6)) (((((uint64_t)(x2 + x18) * (x14 + x30)) +ℤ (((uint64_t)(x4 + x20) * (x12 + x28)) +ℤ (((uint64_t)(x6 + x22) * (x10 + x26)) + (((uint64_t)(x8 + x24) * (x8 + x24)) + (((uint64_t)(x10 + x26) * (x6 + x22)) + (((uint64_t)(x12 + x28) * (x4 + x20)) + ((uint64_t)(x14 + x30) * (x2 + x18)))))))) -ℤ (((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2)))))))), (((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + ((uint64_t)x14 * x18))))))) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2)))))))) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + ((uint64_t)x30 * x18)))))))));
- uint64_t x40 = Op (Syntax.IdWithAlt Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6)) (((((uint64_t)(x2 + x18) * (x12 + x28)) +ℤ (((uint64_t)(x4 + x20) * (x10 + x26)) + (((uint64_t)(x6 + x22) * (x8 + x24)) + (((uint64_t)(x8 + x24) * (x6 + x22)) + (((uint64_t)(x10 + x26) * (x4 + x20)) + ((uint64_t)(x12 + x28) * (x2 + x18))))))) -ℤ (((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2))))))), (((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + ((uint64_t)x12 * x18)))))) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2))))))) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + ((uint64_t)x28 * x18))))))));
- uint64_t x41 = ((((uint64_t)(x2 + x18) * (x10 + x26)) + (((uint64_t)(x4 + x20) * (x8 + x24)) + (((uint64_t)(x6 + x22) * (x6 + x22)) + (((uint64_t)(x8 + x24) * (x4 + x20)) + ((uint64_t)(x10 + x26) * (x2 + x18)))))) - (((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))));
- uint64_t x42 = ((((uint64_t)(x2 + x18) * (x8 + x24)) + (((uint64_t)(x4 + x20) * (x6 + x22)) + (((uint64_t)(x6 + x22) * (x4 + x20)) + ((uint64_t)(x8 + x24) * (x2 + x18))))) - (((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))));
- uint64_t x43 = ((((uint64_t)(x2 + x18) * (x6 + x22)) + (((uint64_t)(x4 + x20) * (x4 + x20)) + ((uint64_t)(x6 + x22) * (x2 + x18)))) - (((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))));
- uint64_t x44 = ((((uint64_t)(x2 + x18) * (x4 + x20)) + ((uint64_t)(x4 + x20) * (x2 + x18))) - (((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)));
- uint64_t x45 = (((uint64_t)(x2 + x18) * (x2 + x18)) - ((uint64_t)x2 * x2));
- ℤ x46 = (((((uint64_t)x16 * x16) + ((uint64_t)x29 * x29)) +ℤ x39) +ℤ x31);
- ℤ x47 = ((((((uint64_t)x14 * x16) + ((uint64_t)x16 * x14)) + (((uint64_t)x30 * x29) + ((uint64_t)x29 * x30))) + x40) +ℤ x32);
- ℤ x48 = ((((((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + ((uint64_t)x16 * x12))) + (((uint64_t)x28 * x29) + (((uint64_t)x30 * x30) + ((uint64_t)x29 * x28)))) + x41) +ℤ x33);
- ℤ x49 = ((((((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((uint64_t)x16 * x10)))) + (((uint64_t)x26 * x29) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + ((uint64_t)x29 * x26))))) + x42) +ℤ x34);
- ℤ x50 = ((((((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + ((uint64_t)x16 * x8))))) + (((uint64_t)x24 * x29) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + ((uint64_t)x29 * x24)))))) + x43) +ℤ x35);
- ℤ x51 = ((((((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((uint64_t)x16 * x6)))))) + (((uint64_t)x22 * x29) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + ((uint64_t)x29 * x22))))))) + x44) +ℤ x36);
- ℤ x52 = ((((((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((uint64_t)x16 * x4))))))) + (((uint64_t)x20 * x29) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + ((uint64_t)x29 * x20)))))))) + x45) +ℤ x37);
- uint64_t x53 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (((uint64_t)x18 * x29) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + ((uint64_t)x29 * x18)))))))));
- uint64_t x54 = (((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + ((uint64_t)x30 * x18)))))))) + x31);
- uint64_t x55 = (((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + ((uint64_t)x28 * x18))))))) + x32);
- uint64_t x56 = (((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + ((uint64_t)x26 * x18)))))) + x33);
- uint64_t x57 = (((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((uint64_t)x24 * x18))))) + x34);
- uint64_t x58 = (((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + ((uint64_t)x22 * x18)))) + x35);
- uint64_t x59 = (((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x18 * x20) + ((uint64_t)x20 * x18))) + x36);
- ℤ x60 = ((((uint64_t)x2 * x2) + ((uint64_t)x18 * x18)) +ℤ x37);
- uint64_t x61 = (x53 >> 0x1c);
- uint32_t x62 = ((uint32_t)x53 & 0xfffffff);
- uint64_t x63 = (x38 >> 0x1c);
- uint32_t x64 = (x38 & 0xfffffff);
- ℤ x65 = ((0x10000000 *ℤ x63) +ℤ x64);
- uint64_t x66 = (x65 >> 0x1c);
- uint32_t x67 = (x65 & 0xfffffff);
- ℤ x68 = ((x61 +ℤ x52) +ℤ x66);
- uint64_t x69 = (x68 >> 0x1c);
- uint32_t x70 = (x68 & 0xfffffff);
- ℤ x71 = (x60 +ℤ x66);
- uint64_t x72 = (x71 >> 0x1c);
- uint32_t x73 = (x71 & 0xfffffff);
- ℤ x74 = (x69 +ℤ x51);
- uint64_t x75 = (x74 >> 0x1c);
- uint32_t x76 = (x74 & 0xfffffff);
- uint64_t x77 = (x72 + x59);
- uint64_t x78 = (x77 >> 0x1c);
- uint32_t x79 = ((uint32_t)x77 & 0xfffffff);
- ℤ x80 = (x75 +ℤ x50);
- uint64_t x81 = (x80 >> 0x1c);
- uint32_t x82 = (x80 & 0xfffffff);
- uint64_t x83 = (x78 + x58);
- uint64_t x84 = (x83 >> 0x1c);
- uint32_t x85 = ((uint32_t)x83 & 0xfffffff);
- ℤ x86 = (x81 +ℤ x49);
- uint64_t x87 = (x86 >> 0x1c);
- uint32_t x88 = (x86 & 0xfffffff);
- uint64_t x89 = (x84 + x57);
- uint64_t x90 = (x89 >> 0x1c);
- uint32_t x91 = ((uint32_t)x89 & 0xfffffff);
- ℤ x92 = (x87 +ℤ x48);
- uint64_t x93 = (x92 >> 0x1c);
- uint32_t x94 = (x92 & 0xfffffff);
- uint64_t x95 = (x90 + x56);
- uint64_t x96 = (x95 >> 0x1c);
- uint32_t x97 = ((uint32_t)x95 & 0xfffffff);
- ℤ x98 = (x93 +ℤ x47);
- uint64_t x99 = (x98 >> 0x1c);
- uint32_t x100 = (x98 & 0xfffffff);
- uint64_t x101 = (x96 + x55);
- uint64_t x102 = (x101 >> 0x1c);
- uint32_t x103 = ((uint32_t)x101 & 0xfffffff);
- ℤ x104 = (x99 +ℤ x46);
- uint64_t x105 = (x104 >> 0x1c);
- uint32_t x106 = (x104 & 0xfffffff);
- uint64_t x107 = (x102 + x54);
- uint64_t x108 = (x107 >> 0x1c);
- uint32_t x109 = ((uint32_t)x107 & 0xfffffff);
- uint64_t x110 = (x105 + x67);
- uint32_t x111 = (uint32_t) (x110 >> 0x1c);
- uint32_t x112 = ((uint32_t)x110 & 0xfffffff);
- uint64_t x113 = (x108 + x62);
- uint32_t x114 = (uint32_t) (x113 >> 0x1c);
- uint32_t x115 = ((uint32_t)x113 & 0xfffffff);
- uint64_t x116 = (((uint64_t)0x10000000 * x111) + x112);
- uint32_t x117 = (uint32_t) (x116 >> 0x1c);
- uint32_t x118 = ((uint32_t)x116 & 0xfffffff);
- uint32_t x119 = ((x114 + x70) + x117);
- uint32_t x120 = (x119 >> 0x1c);
- uint32_t x121 = (x119 & 0xfffffff);
- uint32_t x122 = (x73 + x117);
- uint32_t x123 = (x122 >> 0x1c);
- uint32_t x124 = (x122 & 0xfffffff);
- return (Return x118, Return x106, Return x100, Return x94, Return x88, Return x82, (x120 + x76), Return x121, Return x115, Return x109, Return x103, Return x97, Return x91, Return x85, (x123 + x79), Return x124))
-x
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e448m2e224m1_16limbs/fesquareDisplay.v b/src/Specific/solinas32_2e448m2e224m1_16limbs/fesquareDisplay.v
deleted file mode 100644
index 044cffaeb..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_16limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e448m2e224m1_16limbs/fesub.c b/src/Specific/solinas32_2e448m2e224m1_16limbs/fesub.c
deleted file mode 100644
index 387cc589e..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/fesub.c
+++ /dev/null
@@ -1,51 +0,0 @@
-static void fesub(uint32_t out[16], const uint32_t in1[16], const uint32_t in2[16]) {
- { const uint32_t x32 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x62 = in2[15];
- { const uint32_t x63 = in2[14];
- { const uint32_t x61 = in2[13];
- { const uint32_t x59 = in2[12];
- { const uint32_t x57 = in2[11];
- { const uint32_t x55 = in2[10];
- { const uint32_t x53 = in2[9];
- { const uint32_t x51 = in2[8];
- { const uint32_t x49 = in2[7];
- { const uint32_t x47 = in2[6];
- { const uint32_t x45 = in2[5];
- { const uint32_t x43 = in2[4];
- { const uint32_t x41 = in2[3];
- { const uint32_t x39 = in2[2];
- { const uint32_t x37 = in2[1];
- { const uint32_t x35 = in2[0];
- out[0] = ((0x1ffffffe + x5) - x35);
- out[1] = ((0x1ffffffe + x7) - x37);
- out[2] = ((0x1ffffffe + x9) - x39);
- out[3] = ((0x1ffffffe + x11) - x41);
- out[4] = ((0x1ffffffe + x13) - x43);
- out[5] = ((0x1ffffffe + x15) - x45);
- out[6] = ((0x1ffffffe + x17) - x47);
- out[7] = ((0x1ffffffe + x19) - x49);
- out[8] = ((0x1ffffffc + x21) - x51);
- out[9] = ((0x1ffffffe + x23) - x53);
- out[10] = ((0x1ffffffe + x25) - x55);
- out[11] = ((0x1ffffffe + x27) - x57);
- out[12] = ((0x1ffffffe + x29) - x59);
- out[13] = ((0x1ffffffe + x31) - x61);
- out[14] = ((0x1ffffffe + x33) - x63);
- out[15] = ((0x1ffffffe + x32) - x62);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e448m2e224m1_16limbs/fesub.v b/src/Specific/solinas32_2e448m2e224m1_16limbs/fesub.v
deleted file mode 100644
index 10e5b653c..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_16limbs.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_2e448m2e224m1_16limbs/fesubDisplay.log b/src/Specific/solinas32_2e448m2e224m1_16limbs/fesubDisplay.log
deleted file mode 100644
index 3007e8715..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x32, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x62, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37, x35))%core,
- (((0x1ffffffe + x32) - x62), ((0x1ffffffe + x33) - x63), ((0x1ffffffe + x31) - x61), ((0x1ffffffe + x29) - x59), ((0x1ffffffe + x27) - x57), ((0x1ffffffe + x25) - x55), ((0x1ffffffe + x23) - x53), ((0x1ffffffc + x21) - x51), ((0x1ffffffe + x19) - x49), ((0x1ffffffe + x17) - x47), ((0x1ffffffe + x15) - x45), ((0x1ffffffe + x13) - x43), ((0x1ffffffe + x11) - x41), ((0x1ffffffe + x9) - x39), ((0x1ffffffe + x7) - x37), ((0x1ffffffe + x5) - x35)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e448m2e224m1_16limbs/fesubDisplay.v b/src/Specific/solinas32_2e448m2e224m1_16limbs/fesubDisplay.v
deleted file mode 100644
index e89f4ace2..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_16limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e448m2e224m1_16limbs/freeze.c b/src/Specific/solinas32_2e448m2e224m1_16limbs/freeze.c
deleted file mode 100644
index 0763e4c18..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/freeze.c
+++ /dev/null
@@ -1,84 +0,0 @@
-static void freeze(uint32_t out[16], const uint32_t in1[16]) {
- { const uint32_t x29 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffff);
- { uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x4, 0xfffffff);
- { uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x6, 0xfffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x8, 0xfffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x10, 0xfffffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x12, 0xfffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x14, 0xfffffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x16, 0xfffffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x18, 0xffffffe);
- { uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x20, 0xfffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x22, 0xfffffff);
- { uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x24, 0xfffffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x26, 0xfffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x28, 0xfffffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x30, 0xfffffff);
- { uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x29, 0xfffffff);
- { uint32_t x79 = cmovznz32(x78, 0x0, 0xffffffff);
- { uint32_t x80 = (x79 & 0xfffffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x32, Return x80);
- { uint32_t x84 = (x79 & 0xfffffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x35, Return x84);
- { uint32_t x88 = (x79 & 0xfffffff);
- { uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x38, Return x88);
- { uint32_t x92 = (x79 & 0xfffffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x41, Return x92);
- { uint32_t x96 = (x79 & 0xfffffff);
- { uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x44, Return x96);
- { uint32_t x100 = (x79 & 0xfffffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x47, Return x100);
- { uint32_t x104 = (x79 & 0xfffffff);
- { uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x50, Return x104);
- { uint32_t x108 = (x79 & 0xfffffff);
- { uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x53, Return x108);
- { uint32_t x112 = (x79 & 0xffffffe);
- { uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x56, Return x112);
- { uint32_t x116 = (x79 & 0xfffffff);
- { uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x59, Return x116);
- { uint32_t x120 = (x79 & 0xfffffff);
- { uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x62, Return x120);
- { uint32_t x124 = (x79 & 0xfffffff);
- { uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x65, Return x124);
- { uint32_t x128 = (x79 & 0xfffffff);
- { uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x68, Return x128);
- { uint32_t x132 = (x79 & 0xfffffff);
- { uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x71, Return x132);
- { uint32_t x136 = (x79 & 0xfffffff);
- { uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x74, Return x136);
- { uint32_t x140 = (x79 & 0xfffffff);
- { uint32_t x142, uint8_t _ = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x77, Return x140);
- out[0] = x82;
- out[1] = x86;
- out[2] = x90;
- out[3] = x94;
- out[4] = x98;
- out[5] = x102;
- out[6] = x106;
- out[7] = x110;
- out[8] = x114;
- out[9] = x118;
- out[10] = x122;
- out[11] = x126;
- out[12] = x130;
- out[13] = x134;
- out[14] = x138;
- out[15] = x142;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e448m2e224m1_16limbs/freeze.v b/src/Specific/solinas32_2e448m2e224m1_16limbs/freeze.v
deleted file mode 100644
index 2563bcf51..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_16limbs.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_2e448m2e224m1_16limbs/freezeDisplay.log b/src/Specific/solinas32_2e448m2e224m1_16limbs/freezeDisplay.log
deleted file mode 100644
index bf5bf0738..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/freezeDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x29, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffff);
- uint32_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x33, Return x4, 0xfffffff);
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x36, Return x6, 0xfffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x8, 0xfffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x10, 0xfffffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x12, 0xfffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x14, 0xfffffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x16, 0xfffffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x18, 0xffffffe);
- uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x20, 0xfffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x22, 0xfffffff);
- uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x24, 0xfffffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x26, 0xfffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x28, 0xfffffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x30, 0xfffffff);
- uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x29, 0xfffffff);
- uint32_t x79 = cmovznz32(x78, 0x0, 0xffffffff);
- uint32_t x80 = (x79 & 0xfffffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x32, Return x80);
- uint32_t x84 = (x79 & 0xfffffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x35, Return x84);
- uint32_t x88 = (x79 & 0xfffffff);
- uint32_t x90, uint8_t x91 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x38, Return x88);
- uint32_t x92 = (x79 & 0xfffffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x41, Return x92);
- uint32_t x96 = (x79 & 0xfffffff);
- uint32_t x98, uint8_t x99 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x44, Return x96);
- uint32_t x100 = (x79 & 0xfffffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x47, Return x100);
- uint32_t x104 = (x79 & 0xfffffff);
- uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x50, Return x104);
- uint32_t x108 = (x79 & 0xfffffff);
- uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x53, Return x108);
- uint32_t x112 = (x79 & 0xffffffe);
- uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x56, Return x112);
- uint32_t x116 = (x79 & 0xfffffff);
- uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x59, Return x116);
- uint32_t x120 = (x79 & 0xfffffff);
- uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x62, Return x120);
- uint32_t x124 = (x79 & 0xfffffff);
- uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x65, Return x124);
- uint32_t x128 = (x79 & 0xfffffff);
- uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x68, Return x128);
- uint32_t x132 = (x79 & 0xfffffff);
- uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x71, Return x132);
- uint32_t x136 = (x79 & 0xfffffff);
- uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x74, Return x136);
- uint32_t x140 = (x79 & 0xfffffff);
- uint32_t x142, uint8_t _ = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x77, Return x140);
- (Return x142, Return x138, Return x134, Return x130, Return x126, Return x122, Return x118, Return x114, Return x110, Return x106, Return x102, Return x98, Return x94, Return x90, Return x86, Return x82))
-x
- : word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e448m2e224m1_16limbs/freezeDisplay.v b/src/Specific/solinas32_2e448m2e224m1_16limbs/freezeDisplay.v
deleted file mode 100644
index b9938e4c0..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_16limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e448m2e224m1_16limbs/py_interpreter.sh b/src/Specific/solinas32_2e448m2e224m1_16limbs/py_interpreter.sh
deleted file mode 100755
index cc74503cd..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_16limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**448 - 2**224 - 1' -Dmodulus_bytes='28' -Da24='121665'
diff --git a/src/Specific/solinas32_2e448m2e224m1_18limbs/CurveParameters.v b/src/Specific/solinas32_2e448m2e224m1_18limbs/CurveParameters.v
deleted file mode 100644
index 798ff2fd8..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^448 - 2^224 - 1
-Base: 24 + 8/9
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 18%nat;
- base := 24 + 8/9;
- bitwidth := 32;
- s := 2^448;
- c := [(1, 1); (2^224, 1)];
- carry_chains := Some [[8; 17]; [9; 0; 10; 1; 11; 2; 12; 3; 13; 4; 14; 5; 15; 6; 16; 7; 17; 8]; [9; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- 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_2e448m2e224m1_18limbs/Synthesis.v b/src/Specific/solinas32_2e448m2e224m1_18limbs/Synthesis.v
deleted file mode 100644
index 0776324e3..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_18limbs.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_2e448m2e224m1_18limbs/compiler.sh b/src/Specific/solinas32_2e448m2e224m1_18limbs/compiler.sh
deleted file mode 100755
index c3ae5eeb6..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,25,25,25,25,25,25,25,24,25,25,25,25,25,25,25,25,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1' "$@"
diff --git a/src/Specific/solinas32_2e448m2e224m1_18limbs/compilerxx.sh b/src/Specific/solinas32_2e448m2e224m1_18limbs/compilerxx.sh
deleted file mode 100755
index 5f310ff99..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,25,25,25,25,25,25,25,24,25,25,25,25,25,25,25,25,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1' "$@"
diff --git a/src/Specific/solinas32_2e448m2e224m1_18limbs/feadd.c b/src/Specific/solinas32_2e448m2e224m1_18limbs/feadd.c
deleted file mode 100644
index 7b8380410..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/feadd.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void feadd(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- out[0] = (x5 + x39);
- out[1] = (x7 + x41);
- out[2] = (x9 + x43);
- out[3] = (x11 + x45);
- out[4] = (x13 + x47);
- out[5] = (x15 + x49);
- out[6] = (x17 + x51);
- out[7] = (x19 + x53);
- out[8] = (x21 + x55);
- out[9] = (x23 + x57);
- out[10] = (x25 + x59);
- out[11] = (x27 + x61);
- out[12] = (x29 + x63);
- out[13] = (x31 + x65);
- out[14] = (x33 + x67);
- out[15] = (x35 + x69);
- out[16] = (x37 + x71);
- out[17] = (x36 + x70);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e448m2e224m1_18limbs/feadd.v b/src/Specific/solinas32_2e448m2e224m1_18limbs/feadd.v
deleted file mode 100644
index e3a109779..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_18limbs.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_2e448m2e224m1_18limbs/feaddDisplay.log b/src/Specific/solinas32_2e448m2e224m1_18limbs/feaddDisplay.log
deleted file mode 100644
index 5e9c243f4..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- ((x36 + x70), (x37 + x71), (x35 + x69), (x33 + x67), (x31 + x65), (x29 + x63), (x27 + x61), (x25 + x59), (x23 + x57), (x21 + x55), (x19 + x53), (x17 + x51), (x15 + x49), (x13 + x47), (x11 + x45), (x9 + x43), (x7 + x41), (x5 + x39)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e448m2e224m1_18limbs/feaddDisplay.v b/src/Specific/solinas32_2e448m2e224m1_18limbs/feaddDisplay.v
deleted file mode 100644
index 5f0724be0..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_18limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e448m2e224m1_18limbs/fecarry.v b/src/Specific/solinas32_2e448m2e224m1_18limbs/fecarry.v
deleted file mode 100644
index 803a64892..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_18limbs.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_2e448m2e224m1_18limbs/fecarryDisplay.v b/src/Specific/solinas32_2e448m2e224m1_18limbs/fecarryDisplay.v
deleted file mode 100644
index ebbd0fea4..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_18limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e448m2e224m1_18limbs/femul.c b/src/Specific/solinas32_2e448m2e224m1_18limbs/femul.c
deleted file mode 100644
index 55cc0ed77..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/femul.c
+++ /dev/null
@@ -1,161 +0,0 @@
-static void femul(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- { uint64_t x72 = ((0x2 * ((uint64_t)(x21 + x36) * (x55 + x70))) - (0x2 * ((uint64_t)x21 * x55)));
- { uint64_t x73 = (((0x2 * ((uint64_t)(x19 + x37) * (x55 + x70))) + (0x2 * ((uint64_t)(x21 + x36) * (x53 + x71)))) - ((0x2 * ((uint64_t)x19 * x55)) + (0x2 * ((uint64_t)x21 * x53))));
- { uint64_t x74 = (((0x2 * ((uint64_t)(x17 + x35) * (x55 + x70))) + ((0x2 * ((uint64_t)(x19 + x37) * (x53 + x71))) + (0x2 * ((uint64_t)(x21 + x36) * (x51 + x69))))) - ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + (0x2 * ((uint64_t)x21 * x51)))));
- { uint64_t x75 = (((0x2 * ((uint64_t)(x15 + x33) * (x55 + x70))) + ((0x2 * ((uint64_t)(x17 + x35) * (x53 + x71))) + ((0x2 * ((uint64_t)(x19 + x37) * (x51 + x69))) + (0x2 * ((uint64_t)(x21 + x36) * (x49 + x67)))))) - ((0x2 * ((uint64_t)x15 * x55)) + ((0x2 * ((uint64_t)x17 * x53)) + ((0x2 * ((uint64_t)x19 * x51)) + (0x2 * ((uint64_t)x21 * x49))))));
- { uint64_t x76 = (((0x2 * ((uint64_t)(x13 + x31) * (x55 + x70))) + ((0x2 * ((uint64_t)(x15 + x33) * (x53 + x71))) + ((0x2 * ((uint64_t)(x17 + x35) * (x51 + x69))) + ((0x2 * ((uint64_t)(x19 + x37) * (x49 + x67))) + (0x2 * ((uint64_t)(x21 + x36) * (x47 + x65))))))) - ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + (0x2 * ((uint64_t)x21 * x47)))))));
- { uint64_t x77 = (((0x2 * ((uint64_t)(x11 + x29) * (x55 + x70))) + ((0x2 * ((uint64_t)(x13 + x31) * (x53 + x71))) + ((0x2 * ((uint64_t)(x15 + x33) * (x51 + x69))) + ((0x2 * ((uint64_t)(x17 + x35) * (x49 + x67))) + ((0x2 * ((uint64_t)(x19 + x37) * (x47 + x65))) + (0x2 * ((uint64_t)(x21 + x36) * (x45 + x63)))))))) - ((0x2 * ((uint64_t)x11 * x55)) + ((0x2 * ((uint64_t)x13 * x53)) + ((0x2 * ((uint64_t)x15 * x51)) + ((0x2 * ((uint64_t)x17 * x49)) + ((0x2 * ((uint64_t)x19 * x47)) + (0x2 * ((uint64_t)x21 * x45))))))));
- { uint64_t x78 = (((0x2 * ((uint64_t)(x9 + x27) * (x55 + x70))) + ((0x2 * ((uint64_t)(x11 + x29) * (x53 + x71))) + ((0x2 * ((uint64_t)(x13 + x31) * (x51 + x69))) + ((0x2 * ((uint64_t)(x15 + x33) * (x49 + x67))) + ((0x2 * ((uint64_t)(x17 + x35) * (x47 + x65))) + ((0x2 * ((uint64_t)(x19 + x37) * (x45 + x63))) + (0x2 * ((uint64_t)(x21 + x36) * (x43 + x61))))))))) - ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + (0x2 * ((uint64_t)x21 * x43)))))))));
- { uint64_t x79 = (((0x2 * ((uint64_t)(x7 + x25) * (x55 + x70))) + ((0x2 * ((uint64_t)(x9 + x27) * (x53 + x71))) + ((0x2 * ((uint64_t)(x11 + x29) * (x51 + x69))) + ((0x2 * ((uint64_t)(x13 + x31) * (x49 + x67))) + ((0x2 * ((uint64_t)(x15 + x33) * (x47 + x65))) + ((0x2 * ((uint64_t)(x17 + x35) * (x45 + x63))) + ((0x2 * ((uint64_t)(x19 + x37) * (x43 + x61))) + (0x2 * ((uint64_t)(x21 + x36) * (x41 + x59)))))))))) - ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + (0x2 * ((uint64_t)x21 * x41))))))))));
- { uint64_t x80 = ((((uint64_t)(x5 + x23) * (x55 + x70)) + (((uint64_t)(x7 + x25) * (x53 + x71)) + (((uint64_t)(x9 + x27) * (x51 + x69)) + (((uint64_t)(x11 + x29) * (x49 + x67)) + (((uint64_t)(x13 + x31) * (x47 + x65)) + (((uint64_t)(x15 + x33) * (x45 + x63)) + (((uint64_t)(x17 + x35) * (x43 + x61)) + (((uint64_t)(x19 + x37) * (x41 + x59)) + ((uint64_t)(x21 + x36) * (x39 + x57)))))))))) - (((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + ((uint64_t)x21 * x39))))))))));
- { uint64_t x81 = ((((uint64_t)(x5 + x23) * (x53 + x71)) + (((uint64_t)(x7 + x25) * (x51 + x69)) + (((uint64_t)(x9 + x27) * (x49 + x67)) + (((uint64_t)(x11 + x29) * (x47 + x65)) + (((uint64_t)(x13 + x31) * (x45 + x63)) + (((uint64_t)(x15 + x33) * (x43 + x61)) + (((uint64_t)(x17 + x35) * (x41 + x59)) + ((uint64_t)(x19 + x37) * (x39 + x57))))))))) - (((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + ((uint64_t)x19 * x39)))))))));
- { uint64_t x82 = ((((uint64_t)(x5 + x23) * (x51 + x69)) + (((uint64_t)(x7 + x25) * (x49 + x67)) + (((uint64_t)(x9 + x27) * (x47 + x65)) + (((uint64_t)(x11 + x29) * (x45 + x63)) + (((uint64_t)(x13 + x31) * (x43 + x61)) + (((uint64_t)(x15 + x33) * (x41 + x59)) + ((uint64_t)(x17 + x35) * (x39 + x57)))))))) - (((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + ((uint64_t)x17 * x39))))))));
- { uint64_t x83 = ((((uint64_t)(x5 + x23) * (x49 + x67)) + (((uint64_t)(x7 + x25) * (x47 + x65)) + (((uint64_t)(x9 + x27) * (x45 + x63)) + (((uint64_t)(x11 + x29) * (x43 + x61)) + (((uint64_t)(x13 + x31) * (x41 + x59)) + ((uint64_t)(x15 + x33) * (x39 + x57))))))) - (((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + ((uint64_t)x15 * x39)))))));
- { uint64_t x84 = ((((uint64_t)(x5 + x23) * (x47 + x65)) + (((uint64_t)(x7 + x25) * (x45 + x63)) + (((uint64_t)(x9 + x27) * (x43 + x61)) + (((uint64_t)(x11 + x29) * (x41 + x59)) + ((uint64_t)(x13 + x31) * (x39 + x57)))))) - (((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + ((uint64_t)x13 * x39))))));
- { uint64_t x85 = ((((uint64_t)(x5 + x23) * (x45 + x63)) + (((uint64_t)(x7 + x25) * (x43 + x61)) + (((uint64_t)(x9 + x27) * (x41 + x59)) + ((uint64_t)(x11 + x29) * (x39 + x57))))) - (((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + ((uint64_t)x11 * x39)))));
- { uint64_t x86 = ((((uint64_t)(x5 + x23) * (x43 + x61)) + (((uint64_t)(x7 + x25) * (x41 + x59)) + ((uint64_t)(x9 + x27) * (x39 + x57)))) - (((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + ((uint64_t)x9 * x39))));
- { uint64_t x87 = ((((uint64_t)(x5 + x23) * (x41 + x59)) + ((uint64_t)(x7 + x25) * (x39 + x57))) - (((uint64_t)x5 * x41) + ((uint64_t)x7 * x39)));
- { uint64_t x88 = (((uint64_t)(x5 + x23) * (x39 + x57)) - ((uint64_t)x5 * x39));
- { uint64_t x89 = ((((0x2 * ((uint64_t)x21 * x55)) + (0x2 * ((uint64_t)x36 * x70))) + x81) + x72);
- { uint64_t x90 = (((((0x2 * ((uint64_t)x19 * x55)) + (0x2 * ((uint64_t)x21 * x53))) + ((0x2 * ((uint64_t)x37 * x70)) + (0x2 * ((uint64_t)x36 * x71)))) + x82) + x73);
- { uint64_t x91 = (((((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + (0x2 * ((uint64_t)x21 * x51)))) + ((0x2 * ((uint64_t)x35 * x70)) + ((0x2 * ((uint64_t)x37 * x71)) + (0x2 * ((uint64_t)x36 * x69))))) + x83) + x74);
- { uint64_t x92 = (((((0x2 * ((uint64_t)x15 * x55)) + ((0x2 * ((uint64_t)x17 * x53)) + ((0x2 * ((uint64_t)x19 * x51)) + (0x2 * ((uint64_t)x21 * x49))))) + ((0x2 * ((uint64_t)x33 * x70)) + ((0x2 * ((uint64_t)x35 * x71)) + ((0x2 * ((uint64_t)x37 * x69)) + (0x2 * ((uint64_t)x36 * x67)))))) + x84) + x75);
- { uint64_t x93 = (((((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + (0x2 * ((uint64_t)x21 * x47)))))) + ((0x2 * ((uint64_t)x31 * x70)) + ((0x2 * ((uint64_t)x33 * x71)) + ((0x2 * ((uint64_t)x35 * x69)) + ((0x2 * ((uint64_t)x37 * x67)) + (0x2 * ((uint64_t)x36 * x65))))))) + x85) + x76);
- { uint64_t x94 = (((((0x2 * ((uint64_t)x11 * x55)) + ((0x2 * ((uint64_t)x13 * x53)) + ((0x2 * ((uint64_t)x15 * x51)) + ((0x2 * ((uint64_t)x17 * x49)) + ((0x2 * ((uint64_t)x19 * x47)) + (0x2 * ((uint64_t)x21 * x45))))))) + ((0x2 * ((uint64_t)x29 * x70)) + ((0x2 * ((uint64_t)x31 * x71)) + ((0x2 * ((uint64_t)x33 * x69)) + ((0x2 * ((uint64_t)x35 * x67)) + ((0x2 * ((uint64_t)x37 * x65)) + (0x2 * ((uint64_t)x36 * x63)))))))) + x86) + x77);
- { uint64_t x95 = (((((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + (0x2 * ((uint64_t)x21 * x43)))))))) + ((0x2 * ((uint64_t)x27 * x70)) + ((0x2 * ((uint64_t)x29 * x71)) + ((0x2 * ((uint64_t)x31 * x69)) + ((0x2 * ((uint64_t)x33 * x67)) + ((0x2 * ((uint64_t)x35 * x65)) + ((0x2 * ((uint64_t)x37 * x63)) + (0x2 * ((uint64_t)x36 * x61))))))))) + x87) + x78);
- { uint64_t x96 = (((((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + (0x2 * ((uint64_t)x21 * x41))))))))) + ((0x2 * ((uint64_t)x25 * x70)) + ((0x2 * ((uint64_t)x27 * x71)) + ((0x2 * ((uint64_t)x29 * x69)) + ((0x2 * ((uint64_t)x31 * x67)) + ((0x2 * ((uint64_t)x33 * x65)) + ((0x2 * ((uint64_t)x35 * x63)) + ((0x2 * ((uint64_t)x37 * x61)) + (0x2 * ((uint64_t)x36 * x59)))))))))) + x88) + x79);
- { uint64_t x97 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + ((uint64_t)x21 * x39))))))))) + (((uint64_t)x23 * x70) + (((uint64_t)x25 * x71) + (((uint64_t)x27 * x69) + (((uint64_t)x29 * x67) + (((uint64_t)x31 * x65) + (((uint64_t)x33 * x63) + (((uint64_t)x35 * x61) + (((uint64_t)x37 * x59) + ((uint64_t)x36 * x57))))))))));
- { uint64_t x98 = (((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + ((uint64_t)x19 * x39)))))))) + (((uint64_t)x23 * x71) + (((uint64_t)x25 * x69) + (((uint64_t)x27 * x67) + (((uint64_t)x29 * x65) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + (((uint64_t)x35 * x59) + ((uint64_t)x37 * x57))))))))) + x72);
- { uint64_t x99 = (((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + ((uint64_t)x17 * x39))))))) + (((uint64_t)x23 * x69) + (((uint64_t)x25 * x67) + (((uint64_t)x27 * x65) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + (((uint64_t)x33 * x59) + ((uint64_t)x35 * x57)))))))) + x73);
- { uint64_t x100 = (((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + ((uint64_t)x15 * x39)))))) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + ((uint64_t)x33 * x57))))))) + x74);
- { uint64_t x101 = (((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + ((uint64_t)x13 * x39))))) + (((uint64_t)x23 * x65) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + ((uint64_t)x31 * x57)))))) + x75);
- { uint64_t x102 = (((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + ((uint64_t)x11 * x39)))) + (((uint64_t)x23 * x63) + (((uint64_t)x25 * x61) + (((uint64_t)x27 * x59) + ((uint64_t)x29 * x57))))) + x76);
- { uint64_t x103 = (((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + ((uint64_t)x9 * x39))) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + ((uint64_t)x27 * x57)))) + x77);
- { uint64_t x104 = (((((uint64_t)x5 * x41) + ((uint64_t)x7 * x39)) + (((uint64_t)x23 * x59) + ((uint64_t)x25 * x57))) + x78);
- { uint64_t x105 = ((((uint64_t)x5 * x39) + ((uint64_t)x23 * x57)) + x79);
- { uint64_t x106 = (x97 >> 0x18);
- { uint32_t x107 = ((uint32_t)x97 & 0xffffff);
- { uint64_t x108 = (x80 >> 0x18);
- { uint32_t x109 = ((uint32_t)x80 & 0xffffff);
- { uint64_t x110 = ((0x1000000 * x108) + x109);
- { uint64_t x111 = (x110 >> 0x18);
- { uint32_t x112 = ((uint32_t)x110 & 0xffffff);
- { uint64_t x113 = ((x106 + x96) + x111);
- { uint64_t x114 = (x113 >> 0x19);
- { uint32_t x115 = ((uint32_t)x113 & 0x1ffffff);
- { uint64_t x116 = (x105 + x111);
- { uint64_t x117 = (x116 >> 0x19);
- { uint32_t x118 = ((uint32_t)x116 & 0x1ffffff);
- { uint64_t x119 = (x114 + x95);
- { uint64_t x120 = (x119 >> 0x19);
- { uint32_t x121 = ((uint32_t)x119 & 0x1ffffff);
- { uint64_t x122 = (x117 + x104);
- { uint64_t x123 = (x122 >> 0x19);
- { uint32_t x124 = ((uint32_t)x122 & 0x1ffffff);
- { uint64_t x125 = (x120 + x94);
- { uint64_t x126 = (x125 >> 0x19);
- { uint32_t x127 = ((uint32_t)x125 & 0x1ffffff);
- { uint64_t x128 = (x123 + x103);
- { uint64_t x129 = (x128 >> 0x19);
- { uint32_t x130 = ((uint32_t)x128 & 0x1ffffff);
- { uint64_t x131 = (x126 + x93);
- { uint64_t x132 = (x131 >> 0x19);
- { uint32_t x133 = ((uint32_t)x131 & 0x1ffffff);
- { uint64_t x134 = (x129 + x102);
- { uint64_t x135 = (x134 >> 0x19);
- { uint32_t x136 = ((uint32_t)x134 & 0x1ffffff);
- { uint64_t x137 = (x132 + x92);
- { uint64_t x138 = (x137 >> 0x19);
- { uint32_t x139 = ((uint32_t)x137 & 0x1ffffff);
- { uint64_t x140 = (x135 + x101);
- { uint64_t x141 = (x140 >> 0x19);
- { uint32_t x142 = ((uint32_t)x140 & 0x1ffffff);
- { uint64_t x143 = (x138 + x91);
- { uint64_t x144 = (x143 >> 0x19);
- { uint32_t x145 = ((uint32_t)x143 & 0x1ffffff);
- { uint64_t x146 = (x141 + x100);
- { uint64_t x147 = (x146 >> 0x19);
- { uint32_t x148 = ((uint32_t)x146 & 0x1ffffff);
- { uint64_t x149 = (x144 + x90);
- { uint64_t x150 = (x149 >> 0x19);
- { uint32_t x151 = ((uint32_t)x149 & 0x1ffffff);
- { uint64_t x152 = (x147 + x99);
- { uint64_t x153 = (x152 >> 0x19);
- { uint32_t x154 = ((uint32_t)x152 & 0x1ffffff);
- { uint64_t x155 = (x150 + x89);
- { uint64_t x156 = (x155 >> 0x19);
- { uint32_t x157 = ((uint32_t)x155 & 0x1ffffff);
- { uint64_t x158 = (x153 + x98);
- { uint64_t x159 = (x158 >> 0x19);
- { uint32_t x160 = ((uint32_t)x158 & 0x1ffffff);
- { uint64_t x161 = (x156 + x112);
- { uint32_t x162 = (uint32_t) (x161 >> 0x18);
- { uint32_t x163 = ((uint32_t)x161 & 0xffffff);
- { uint64_t x164 = (x159 + x107);
- { uint32_t x165 = (uint32_t) (x164 >> 0x18);
- { uint32_t x166 = ((uint32_t)x164 & 0xffffff);
- { uint64_t x167 = (((uint64_t)0x1000000 * x162) + x163);
- { uint32_t x168 = (uint32_t) (x167 >> 0x18);
- { uint32_t x169 = ((uint32_t)x167 & 0xffffff);
- { uint32_t x170 = ((x165 + x115) + x168);
- { uint32_t x171 = (x170 >> 0x19);
- { uint32_t x172 = (x170 & 0x1ffffff);
- { uint32_t x173 = (x118 + x168);
- { uint32_t x174 = (x173 >> 0x19);
- { uint32_t x175 = (x173 & 0x1ffffff);
- out[0] = x175;
- out[1] = (x174 + x124);
- out[2] = x130;
- out[3] = x136;
- out[4] = x142;
- out[5] = x148;
- out[6] = x154;
- out[7] = x160;
- out[8] = x166;
- out[9] = x172;
- out[10] = (x171 + x121);
- out[11] = x127;
- out[12] = x133;
- out[13] = x139;
- out[14] = x145;
- out[15] = x151;
- out[16] = x157;
- out[17] = x169;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e448m2e224m1_18limbs/femul.v b/src/Specific/solinas32_2e448m2e224m1_18limbs/femul.v
deleted file mode 100644
index defa12b92..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_18limbs.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_2e448m2e224m1_18limbs/femulDisplay.log b/src/Specific/solinas32_2e448m2e224m1_18limbs/femulDisplay.log
deleted file mode 100644
index 8b3222a55..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/femulDisplay.log
+++ /dev/null
@@ -1,111 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- uint64_t x72 = ((0x2 * ((uint64_t)(x21 + x36) * (x55 + x70))) - (0x2 * ((uint64_t)x21 * x55)));
- uint64_t x73 = (((0x2 * ((uint64_t)(x19 + x37) * (x55 + x70))) + (0x2 * ((uint64_t)(x21 + x36) * (x53 + x71)))) - ((0x2 * ((uint64_t)x19 * x55)) + (0x2 * ((uint64_t)x21 * x53))));
- uint64_t x74 = (((0x2 * ((uint64_t)(x17 + x35) * (x55 + x70))) + ((0x2 * ((uint64_t)(x19 + x37) * (x53 + x71))) + (0x2 * ((uint64_t)(x21 + x36) * (x51 + x69))))) - ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + (0x2 * ((uint64_t)x21 * x51)))));
- uint64_t x75 = (((0x2 * ((uint64_t)(x15 + x33) * (x55 + x70))) + ((0x2 * ((uint64_t)(x17 + x35) * (x53 + x71))) + ((0x2 * ((uint64_t)(x19 + x37) * (x51 + x69))) + (0x2 * ((uint64_t)(x21 + x36) * (x49 + x67)))))) - ((0x2 * ((uint64_t)x15 * x55)) + ((0x2 * ((uint64_t)x17 * x53)) + ((0x2 * ((uint64_t)x19 * x51)) + (0x2 * ((uint64_t)x21 * x49))))));
- uint64_t x76 = (((0x2 * ((uint64_t)(x13 + x31) * (x55 + x70))) + ((0x2 * ((uint64_t)(x15 + x33) * (x53 + x71))) + ((0x2 * ((uint64_t)(x17 + x35) * (x51 + x69))) + ((0x2 * ((uint64_t)(x19 + x37) * (x49 + x67))) + (0x2 * ((uint64_t)(x21 + x36) * (x47 + x65))))))) - ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + (0x2 * ((uint64_t)x21 * x47)))))));
- uint64_t x77 = (((0x2 * ((uint64_t)(x11 + x29) * (x55 + x70))) + ((0x2 * ((uint64_t)(x13 + x31) * (x53 + x71))) + ((0x2 * ((uint64_t)(x15 + x33) * (x51 + x69))) + ((0x2 * ((uint64_t)(x17 + x35) * (x49 + x67))) + ((0x2 * ((uint64_t)(x19 + x37) * (x47 + x65))) + (0x2 * ((uint64_t)(x21 + x36) * (x45 + x63)))))))) - ((0x2 * ((uint64_t)x11 * x55)) + ((0x2 * ((uint64_t)x13 * x53)) + ((0x2 * ((uint64_t)x15 * x51)) + ((0x2 * ((uint64_t)x17 * x49)) + ((0x2 * ((uint64_t)x19 * x47)) + (0x2 * ((uint64_t)x21 * x45))))))));
- uint64_t x78 = (((0x2 * ((uint64_t)(x9 + x27) * (x55 + x70))) + ((0x2 * ((uint64_t)(x11 + x29) * (x53 + x71))) + ((0x2 * ((uint64_t)(x13 + x31) * (x51 + x69))) + ((0x2 * ((uint64_t)(x15 + x33) * (x49 + x67))) + ((0x2 * ((uint64_t)(x17 + x35) * (x47 + x65))) + ((0x2 * ((uint64_t)(x19 + x37) * (x45 + x63))) + (0x2 * ((uint64_t)(x21 + x36) * (x43 + x61))))))))) - ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + (0x2 * ((uint64_t)x21 * x43)))))))));
- uint64_t x79 = (((0x2 * ((uint64_t)(x7 + x25) * (x55 + x70))) + ((0x2 * ((uint64_t)(x9 + x27) * (x53 + x71))) + ((0x2 * ((uint64_t)(x11 + x29) * (x51 + x69))) + ((0x2 * ((uint64_t)(x13 + x31) * (x49 + x67))) + ((0x2 * ((uint64_t)(x15 + x33) * (x47 + x65))) + ((0x2 * ((uint64_t)(x17 + x35) * (x45 + x63))) + ((0x2 * ((uint64_t)(x19 + x37) * (x43 + x61))) + (0x2 * ((uint64_t)(x21 + x36) * (x41 + x59)))))))))) - ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + (0x2 * ((uint64_t)x21 * x41))))))))));
- uint64_t x80 = ((((uint64_t)(x5 + x23) * (x55 + x70)) + (((uint64_t)(x7 + x25) * (x53 + x71)) + (((uint64_t)(x9 + x27) * (x51 + x69)) + (((uint64_t)(x11 + x29) * (x49 + x67)) + (((uint64_t)(x13 + x31) * (x47 + x65)) + (((uint64_t)(x15 + x33) * (x45 + x63)) + (((uint64_t)(x17 + x35) * (x43 + x61)) + (((uint64_t)(x19 + x37) * (x41 + x59)) + ((uint64_t)(x21 + x36) * (x39 + x57)))))))))) - (((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + ((uint64_t)x21 * x39))))))))));
- uint64_t x81 = ((((uint64_t)(x5 + x23) * (x53 + x71)) + (((uint64_t)(x7 + x25) * (x51 + x69)) + (((uint64_t)(x9 + x27) * (x49 + x67)) + (((uint64_t)(x11 + x29) * (x47 + x65)) + (((uint64_t)(x13 + x31) * (x45 + x63)) + (((uint64_t)(x15 + x33) * (x43 + x61)) + (((uint64_t)(x17 + x35) * (x41 + x59)) + ((uint64_t)(x19 + x37) * (x39 + x57))))))))) - (((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + ((uint64_t)x19 * x39)))))))));
- uint64_t x82 = ((((uint64_t)(x5 + x23) * (x51 + x69)) + (((uint64_t)(x7 + x25) * (x49 + x67)) + (((uint64_t)(x9 + x27) * (x47 + x65)) + (((uint64_t)(x11 + x29) * (x45 + x63)) + (((uint64_t)(x13 + x31) * (x43 + x61)) + (((uint64_t)(x15 + x33) * (x41 + x59)) + ((uint64_t)(x17 + x35) * (x39 + x57)))))))) - (((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + ((uint64_t)x17 * x39))))))));
- uint64_t x83 = ((((uint64_t)(x5 + x23) * (x49 + x67)) + (((uint64_t)(x7 + x25) * (x47 + x65)) + (((uint64_t)(x9 + x27) * (x45 + x63)) + (((uint64_t)(x11 + x29) * (x43 + x61)) + (((uint64_t)(x13 + x31) * (x41 + x59)) + ((uint64_t)(x15 + x33) * (x39 + x57))))))) - (((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + ((uint64_t)x15 * x39)))))));
- uint64_t x84 = ((((uint64_t)(x5 + x23) * (x47 + x65)) + (((uint64_t)(x7 + x25) * (x45 + x63)) + (((uint64_t)(x9 + x27) * (x43 + x61)) + (((uint64_t)(x11 + x29) * (x41 + x59)) + ((uint64_t)(x13 + x31) * (x39 + x57)))))) - (((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + ((uint64_t)x13 * x39))))));
- uint64_t x85 = ((((uint64_t)(x5 + x23) * (x45 + x63)) + (((uint64_t)(x7 + x25) * (x43 + x61)) + (((uint64_t)(x9 + x27) * (x41 + x59)) + ((uint64_t)(x11 + x29) * (x39 + x57))))) - (((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + ((uint64_t)x11 * x39)))));
- uint64_t x86 = ((((uint64_t)(x5 + x23) * (x43 + x61)) + (((uint64_t)(x7 + x25) * (x41 + x59)) + ((uint64_t)(x9 + x27) * (x39 + x57)))) - (((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + ((uint64_t)x9 * x39))));
- uint64_t x87 = ((((uint64_t)(x5 + x23) * (x41 + x59)) + ((uint64_t)(x7 + x25) * (x39 + x57))) - (((uint64_t)x5 * x41) + ((uint64_t)x7 * x39)));
- uint64_t x88 = (((uint64_t)(x5 + x23) * (x39 + x57)) - ((uint64_t)x5 * x39));
- uint64_t x89 = ((((0x2 * ((uint64_t)x21 * x55)) + (0x2 * ((uint64_t)x36 * x70))) + x81) + x72);
- uint64_t x90 = (((((0x2 * ((uint64_t)x19 * x55)) + (0x2 * ((uint64_t)x21 * x53))) + ((0x2 * ((uint64_t)x37 * x70)) + (0x2 * ((uint64_t)x36 * x71)))) + x82) + x73);
- uint64_t x91 = (((((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + (0x2 * ((uint64_t)x21 * x51)))) + ((0x2 * ((uint64_t)x35 * x70)) + ((0x2 * ((uint64_t)x37 * x71)) + (0x2 * ((uint64_t)x36 * x69))))) + x83) + x74);
- uint64_t x92 = (((((0x2 * ((uint64_t)x15 * x55)) + ((0x2 * ((uint64_t)x17 * x53)) + ((0x2 * ((uint64_t)x19 * x51)) + (0x2 * ((uint64_t)x21 * x49))))) + ((0x2 * ((uint64_t)x33 * x70)) + ((0x2 * ((uint64_t)x35 * x71)) + ((0x2 * ((uint64_t)x37 * x69)) + (0x2 * ((uint64_t)x36 * x67)))))) + x84) + x75);
- uint64_t x93 = (((((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + (0x2 * ((uint64_t)x21 * x47)))))) + ((0x2 * ((uint64_t)x31 * x70)) + ((0x2 * ((uint64_t)x33 * x71)) + ((0x2 * ((uint64_t)x35 * x69)) + ((0x2 * ((uint64_t)x37 * x67)) + (0x2 * ((uint64_t)x36 * x65))))))) + x85) + x76);
- uint64_t x94 = (((((0x2 * ((uint64_t)x11 * x55)) + ((0x2 * ((uint64_t)x13 * x53)) + ((0x2 * ((uint64_t)x15 * x51)) + ((0x2 * ((uint64_t)x17 * x49)) + ((0x2 * ((uint64_t)x19 * x47)) + (0x2 * ((uint64_t)x21 * x45))))))) + ((0x2 * ((uint64_t)x29 * x70)) + ((0x2 * ((uint64_t)x31 * x71)) + ((0x2 * ((uint64_t)x33 * x69)) + ((0x2 * ((uint64_t)x35 * x67)) + ((0x2 * ((uint64_t)x37 * x65)) + (0x2 * ((uint64_t)x36 * x63)))))))) + x86) + x77);
- uint64_t x95 = (((((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + (0x2 * ((uint64_t)x21 * x43)))))))) + ((0x2 * ((uint64_t)x27 * x70)) + ((0x2 * ((uint64_t)x29 * x71)) + ((0x2 * ((uint64_t)x31 * x69)) + ((0x2 * ((uint64_t)x33 * x67)) + ((0x2 * ((uint64_t)x35 * x65)) + ((0x2 * ((uint64_t)x37 * x63)) + (0x2 * ((uint64_t)x36 * x61))))))))) + x87) + x78);
- uint64_t x96 = (((((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + (0x2 * ((uint64_t)x21 * x41))))))))) + ((0x2 * ((uint64_t)x25 * x70)) + ((0x2 * ((uint64_t)x27 * x71)) + ((0x2 * ((uint64_t)x29 * x69)) + ((0x2 * ((uint64_t)x31 * x67)) + ((0x2 * ((uint64_t)x33 * x65)) + ((0x2 * ((uint64_t)x35 * x63)) + ((0x2 * ((uint64_t)x37 * x61)) + (0x2 * ((uint64_t)x36 * x59)))))))))) + x88) + x79);
- uint64_t x97 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + ((uint64_t)x21 * x39))))))))) + (((uint64_t)x23 * x70) + (((uint64_t)x25 * x71) + (((uint64_t)x27 * x69) + (((uint64_t)x29 * x67) + (((uint64_t)x31 * x65) + (((uint64_t)x33 * x63) + (((uint64_t)x35 * x61) + (((uint64_t)x37 * x59) + ((uint64_t)x36 * x57))))))))));
- uint64_t x98 = (((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + ((uint64_t)x19 * x39)))))))) + (((uint64_t)x23 * x71) + (((uint64_t)x25 * x69) + (((uint64_t)x27 * x67) + (((uint64_t)x29 * x65) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + (((uint64_t)x35 * x59) + ((uint64_t)x37 * x57))))))))) + x72);
- uint64_t x99 = (((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + ((uint64_t)x17 * x39))))))) + (((uint64_t)x23 * x69) + (((uint64_t)x25 * x67) + (((uint64_t)x27 * x65) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + (((uint64_t)x33 * x59) + ((uint64_t)x35 * x57)))))))) + x73);
- uint64_t x100 = (((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + ((uint64_t)x15 * x39)))))) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + ((uint64_t)x33 * x57))))))) + x74);
- uint64_t x101 = (((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + ((uint64_t)x13 * x39))))) + (((uint64_t)x23 * x65) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + ((uint64_t)x31 * x57)))))) + x75);
- uint64_t x102 = (((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + ((uint64_t)x11 * x39)))) + (((uint64_t)x23 * x63) + (((uint64_t)x25 * x61) + (((uint64_t)x27 * x59) + ((uint64_t)x29 * x57))))) + x76);
- uint64_t x103 = (((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + ((uint64_t)x9 * x39))) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + ((uint64_t)x27 * x57)))) + x77);
- uint64_t x104 = (((((uint64_t)x5 * x41) + ((uint64_t)x7 * x39)) + (((uint64_t)x23 * x59) + ((uint64_t)x25 * x57))) + x78);
- uint64_t x105 = ((((uint64_t)x5 * x39) + ((uint64_t)x23 * x57)) + x79);
- uint64_t x106 = (x97 >> 0x18);
- uint32_t x107 = ((uint32_t)x97 & 0xffffff);
- uint64_t x108 = (x80 >> 0x18);
- uint32_t x109 = ((uint32_t)x80 & 0xffffff);
- uint64_t x110 = ((0x1000000 * x108) + x109);
- uint64_t x111 = (x110 >> 0x18);
- uint32_t x112 = ((uint32_t)x110 & 0xffffff);
- uint64_t x113 = ((x106 + x96) + x111);
- uint64_t x114 = (x113 >> 0x19);
- uint32_t x115 = ((uint32_t)x113 & 0x1ffffff);
- uint64_t x116 = (x105 + x111);
- uint64_t x117 = (x116 >> 0x19);
- uint32_t x118 = ((uint32_t)x116 & 0x1ffffff);
- uint64_t x119 = (x114 + x95);
- uint64_t x120 = (x119 >> 0x19);
- uint32_t x121 = ((uint32_t)x119 & 0x1ffffff);
- uint64_t x122 = (x117 + x104);
- uint64_t x123 = (x122 >> 0x19);
- uint32_t x124 = ((uint32_t)x122 & 0x1ffffff);
- uint64_t x125 = (x120 + x94);
- uint64_t x126 = (x125 >> 0x19);
- uint32_t x127 = ((uint32_t)x125 & 0x1ffffff);
- uint64_t x128 = (x123 + x103);
- uint64_t x129 = (x128 >> 0x19);
- uint32_t x130 = ((uint32_t)x128 & 0x1ffffff);
- uint64_t x131 = (x126 + x93);
- uint64_t x132 = (x131 >> 0x19);
- uint32_t x133 = ((uint32_t)x131 & 0x1ffffff);
- uint64_t x134 = (x129 + x102);
- uint64_t x135 = (x134 >> 0x19);
- uint32_t x136 = ((uint32_t)x134 & 0x1ffffff);
- uint64_t x137 = (x132 + x92);
- uint64_t x138 = (x137 >> 0x19);
- uint32_t x139 = ((uint32_t)x137 & 0x1ffffff);
- uint64_t x140 = (x135 + x101);
- uint64_t x141 = (x140 >> 0x19);
- uint32_t x142 = ((uint32_t)x140 & 0x1ffffff);
- uint64_t x143 = (x138 + x91);
- uint64_t x144 = (x143 >> 0x19);
- uint32_t x145 = ((uint32_t)x143 & 0x1ffffff);
- uint64_t x146 = (x141 + x100);
- uint64_t x147 = (x146 >> 0x19);
- uint32_t x148 = ((uint32_t)x146 & 0x1ffffff);
- uint64_t x149 = (x144 + x90);
- uint64_t x150 = (x149 >> 0x19);
- uint32_t x151 = ((uint32_t)x149 & 0x1ffffff);
- uint64_t x152 = (x147 + x99);
- uint64_t x153 = (x152 >> 0x19);
- uint32_t x154 = ((uint32_t)x152 & 0x1ffffff);
- uint64_t x155 = (x150 + x89);
- uint64_t x156 = (x155 >> 0x19);
- uint32_t x157 = ((uint32_t)x155 & 0x1ffffff);
- uint64_t x158 = (x153 + x98);
- uint64_t x159 = (x158 >> 0x19);
- uint32_t x160 = ((uint32_t)x158 & 0x1ffffff);
- uint64_t x161 = (x156 + x112);
- uint32_t x162 = (uint32_t) (x161 >> 0x18);
- uint32_t x163 = ((uint32_t)x161 & 0xffffff);
- uint64_t x164 = (x159 + x107);
- uint32_t x165 = (uint32_t) (x164 >> 0x18);
- uint32_t x166 = ((uint32_t)x164 & 0xffffff);
- uint64_t x167 = (((uint64_t)0x1000000 * x162) + x163);
- uint32_t x168 = (uint32_t) (x167 >> 0x18);
- uint32_t x169 = ((uint32_t)x167 & 0xffffff);
- uint32_t x170 = ((x165 + x115) + x168);
- uint32_t x171 = (x170 >> 0x19);
- uint32_t x172 = (x170 & 0x1ffffff);
- uint32_t x173 = (x118 + x168);
- uint32_t x174 = (x173 >> 0x19);
- uint32_t x175 = (x173 & 0x1ffffff);
- return (Return x169, Return x157, Return x151, Return x145, Return x139, Return x133, Return x127, (x171 + x121), Return x172, Return x166, Return x160, Return x154, Return x148, Return x142, Return x136, Return x130, (x174 + x124), Return x175))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e448m2e224m1_18limbs/femulDisplay.v b/src/Specific/solinas32_2e448m2e224m1_18limbs/femulDisplay.v
deleted file mode 100644
index 59835a631..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_18limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e448m2e224m1_18limbs/fesquare.c b/src/Specific/solinas32_2e448m2e224m1_18limbs/fesquare.c
deleted file mode 100644
index a507015b9..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/fesquare.c
+++ /dev/null
@@ -1,143 +0,0 @@
-static void fesquare(uint32_t out[18], const uint32_t in1[18]) {
- { const uint32_t x33 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x35 = ((0x2 * ((uint64_t)(x18 + x33) * (x18 + x33))) - (0x2 * ((uint64_t)x18 * x18)));
- { uint64_t x36 = (((0x2 * ((uint64_t)(x16 + x34) * (x18 + x33))) + (0x2 * ((uint64_t)(x18 + x33) * (x16 + x34)))) - ((0x2 * ((uint64_t)x16 * x18)) + (0x2 * ((uint64_t)x18 * x16))));
- { uint64_t x37 = (((0x2 * ((uint64_t)(x14 + x32) * (x18 + x33))) + ((0x2 * ((uint64_t)(x16 + x34) * (x16 + x34))) + (0x2 * ((uint64_t)(x18 + x33) * (x14 + x32))))) - ((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + (0x2 * ((uint64_t)x18 * x14)))));
- { uint64_t x38 = (((0x2 * ((uint64_t)(x12 + x30) * (x18 + x33))) + ((0x2 * ((uint64_t)(x14 + x32) * (x16 + x34))) + ((0x2 * ((uint64_t)(x16 + x34) * (x14 + x32))) + (0x2 * ((uint64_t)(x18 + x33) * (x12 + x30)))))) - ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (0x2 * ((uint64_t)x18 * x12))))));
- { uint64_t x39 = (((0x2 * ((uint64_t)(x10 + x28) * (x18 + x33))) + ((0x2 * ((uint64_t)(x12 + x30) * (x16 + x34))) + ((0x2 * ((uint64_t)(x14 + x32) * (x14 + x32))) + ((0x2 * ((uint64_t)(x16 + x34) * (x12 + x30))) + (0x2 * ((uint64_t)(x18 + x33) * (x10 + x28))))))) - ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (0x2 * ((uint64_t)x18 * x10)))))));
- { uint64_t x40 = (((0x2 * ((uint64_t)(x8 + x26) * (x18 + x33))) + ((0x2 * ((uint64_t)(x10 + x28) * (x16 + x34))) + ((0x2 * ((uint64_t)(x12 + x30) * (x14 + x32))) + ((0x2 * ((uint64_t)(x14 + x32) * (x12 + x30))) + ((0x2 * ((uint64_t)(x16 + x34) * (x10 + x28))) + (0x2 * ((uint64_t)(x18 + x33) * (x8 + x26)))))))) - ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + (0x2 * ((uint64_t)x18 * x8))))))));
- { uint64_t x41 = (((0x2 * ((uint64_t)(x6 + x24) * (x18 + x33))) + ((0x2 * ((uint64_t)(x8 + x26) * (x16 + x34))) + ((0x2 * ((uint64_t)(x10 + x28) * (x14 + x32))) + ((0x2 * ((uint64_t)(x12 + x30) * (x12 + x30))) + ((0x2 * ((uint64_t)(x14 + x32) * (x10 + x28))) + ((0x2 * ((uint64_t)(x16 + x34) * (x8 + x26))) + (0x2 * ((uint64_t)(x18 + x33) * (x6 + x24))))))))) - ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + (0x2 * ((uint64_t)x18 * x6)))))))));
- { uint64_t x42 = (((0x2 * ((uint64_t)(x4 + x22) * (x18 + x33))) + ((0x2 * ((uint64_t)(x6 + x24) * (x16 + x34))) + ((0x2 * ((uint64_t)(x8 + x26) * (x14 + x32))) + ((0x2 * ((uint64_t)(x10 + x28) * (x12 + x30))) + ((0x2 * ((uint64_t)(x12 + x30) * (x10 + x28))) + ((0x2 * ((uint64_t)(x14 + x32) * (x8 + x26))) + ((0x2 * ((uint64_t)(x16 + x34) * (x6 + x24))) + (0x2 * ((uint64_t)(x18 + x33) * (x4 + x22)))))))))) - ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x18 * x4))))))))));
- { uint64_t x43 = ((((uint64_t)(x2 + x20) * (x18 + x33)) + (((uint64_t)(x4 + x22) * (x16 + x34)) + (((uint64_t)(x6 + x24) * (x14 + x32)) + (((uint64_t)(x8 + x26) * (x12 + x30)) + (((uint64_t)(x10 + x28) * (x10 + x28)) + (((uint64_t)(x12 + x30) * (x8 + x26)) + (((uint64_t)(x14 + x32) * (x6 + x24)) + (((uint64_t)(x16 + x34) * (x4 + x22)) + ((uint64_t)(x18 + x33) * (x2 + x20)))))))))) - (((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))));
- { uint64_t x44 = ((((uint64_t)(x2 + x20) * (x16 + x34)) + (((uint64_t)(x4 + x22) * (x14 + x32)) + (((uint64_t)(x6 + x24) * (x12 + x30)) + (((uint64_t)(x8 + x26) * (x10 + x28)) + (((uint64_t)(x10 + x28) * (x8 + x26)) + (((uint64_t)(x12 + x30) * (x6 + x24)) + (((uint64_t)(x14 + x32) * (x4 + x22)) + ((uint64_t)(x16 + x34) * (x2 + x20))))))))) - (((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))));
- { uint64_t x45 = ((((uint64_t)(x2 + x20) * (x14 + x32)) + (((uint64_t)(x4 + x22) * (x12 + x30)) + (((uint64_t)(x6 + x24) * (x10 + x28)) + (((uint64_t)(x8 + x26) * (x8 + x26)) + (((uint64_t)(x10 + x28) * (x6 + x24)) + (((uint64_t)(x12 + x30) * (x4 + x22)) + ((uint64_t)(x14 + x32) * (x2 + x20)))))))) - (((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))));
- { uint64_t x46 = ((((uint64_t)(x2 + x20) * (x12 + x30)) + (((uint64_t)(x4 + x22) * (x10 + x28)) + (((uint64_t)(x6 + x24) * (x8 + x26)) + (((uint64_t)(x8 + x26) * (x6 + x24)) + (((uint64_t)(x10 + x28) * (x4 + x22)) + ((uint64_t)(x12 + x30) * (x2 + x20))))))) - (((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))));
- { uint64_t x47 = ((((uint64_t)(x2 + x20) * (x10 + x28)) + (((uint64_t)(x4 + x22) * (x8 + x26)) + (((uint64_t)(x6 + x24) * (x6 + x24)) + (((uint64_t)(x8 + x26) * (x4 + x22)) + ((uint64_t)(x10 + x28) * (x2 + x20)))))) - (((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))));
- { uint64_t x48 = ((((uint64_t)(x2 + x20) * (x8 + x26)) + (((uint64_t)(x4 + x22) * (x6 + x24)) + (((uint64_t)(x6 + x24) * (x4 + x22)) + ((uint64_t)(x8 + x26) * (x2 + x20))))) - (((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))));
- { uint64_t x49 = ((((uint64_t)(x2 + x20) * (x6 + x24)) + (((uint64_t)(x4 + x22) * (x4 + x22)) + ((uint64_t)(x6 + x24) * (x2 + x20)))) - (((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))));
- { uint64_t x50 = ((((uint64_t)(x2 + x20) * (x4 + x22)) + ((uint64_t)(x4 + x22) * (x2 + x20))) - (((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)));
- { uint64_t x51 = (((uint64_t)(x2 + x20) * (x2 + x20)) - ((uint64_t)x2 * x2));
- { uint64_t x52 = ((((0x2 * ((uint64_t)x18 * x18)) + (0x2 * ((uint64_t)x33 * x33))) + x44) + x35);
- { uint64_t x53 = (((((0x2 * ((uint64_t)x16 * x18)) + (0x2 * ((uint64_t)x18 * x16))) + ((0x2 * ((uint64_t)x34 * x33)) + (0x2 * ((uint64_t)x33 * x34)))) + x45) + x36);
- { uint64_t x54 = (((((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + (0x2 * ((uint64_t)x18 * x14)))) + ((0x2 * ((uint64_t)x32 * x33)) + ((0x2 * ((uint64_t)x34 * x34)) + (0x2 * ((uint64_t)x33 * x32))))) + x46) + x37);
- { uint64_t x55 = (((((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (0x2 * ((uint64_t)x18 * x12))))) + ((0x2 * ((uint64_t)x30 * x33)) + ((0x2 * ((uint64_t)x32 * x34)) + ((0x2 * ((uint64_t)x34 * x32)) + (0x2 * ((uint64_t)x33 * x30)))))) + x47) + x38);
- { uint64_t x56 = (((((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (0x2 * ((uint64_t)x18 * x10)))))) + ((0x2 * ((uint64_t)x28 * x33)) + ((0x2 * ((uint64_t)x30 * x34)) + ((0x2 * ((uint64_t)x32 * x32)) + ((0x2 * ((uint64_t)x34 * x30)) + (0x2 * ((uint64_t)x33 * x28))))))) + x48) + x39);
- { uint64_t x57 = (((((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + (0x2 * ((uint64_t)x18 * x8))))))) + ((0x2 * ((uint64_t)x26 * x33)) + ((0x2 * ((uint64_t)x28 * x34)) + ((0x2 * ((uint64_t)x30 * x32)) + ((0x2 * ((uint64_t)x32 * x30)) + ((0x2 * ((uint64_t)x34 * x28)) + (0x2 * ((uint64_t)x33 * x26)))))))) + x49) + x40);
- { uint64_t x58 = (((((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + (0x2 * ((uint64_t)x18 * x6)))))))) + ((0x2 * ((uint64_t)x24 * x33)) + ((0x2 * ((uint64_t)x26 * x34)) + ((0x2 * ((uint64_t)x28 * x32)) + ((0x2 * ((uint64_t)x30 * x30)) + ((0x2 * ((uint64_t)x32 * x28)) + ((0x2 * ((uint64_t)x34 * x26)) + (0x2 * ((uint64_t)x33 * x24))))))))) + x50) + x41);
- { uint64_t x59 = (((((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x18 * x4))))))))) + ((0x2 * ((uint64_t)x22 * x33)) + ((0x2 * ((uint64_t)x24 * x34)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + ((0x2 * ((uint64_t)x34 * x24)) + (0x2 * ((uint64_t)x33 * x22)))))))))) + x51) + x42);
- { uint64_t x60 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (((uint64_t)x20 * x33) + (((uint64_t)x22 * x34) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + (((uint64_t)x34 * x22) + ((uint64_t)x33 * x20))))))))));
- { uint64_t x61 = (((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (((uint64_t)x20 * x34) + (((uint64_t)x22 * x32) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + (((uint64_t)x32 * x22) + ((uint64_t)x34 * x20))))))))) + x35);
- { uint64_t x62 = (((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (((uint64_t)x20 * x32) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + ((uint64_t)x32 * x20)))))))) + x36);
- { uint64_t x63 = (((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + ((uint64_t)x30 * x20))))))) + x37);
- { uint64_t x64 = (((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + ((uint64_t)x28 * x20)))))) + x38);
- { uint64_t x65 = (((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + ((uint64_t)x26 * x20))))) + x39);
- { uint64_t x66 = (((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + ((uint64_t)x24 * x20)))) + x40);
- { uint64_t x67 = (((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x20 * x22) + ((uint64_t)x22 * x20))) + x41);
- { uint64_t x68 = ((((uint64_t)x2 * x2) + ((uint64_t)x20 * x20)) + x42);
- { uint64_t x69 = (x60 >> 0x18);
- { uint32_t x70 = ((uint32_t)x60 & 0xffffff);
- { uint64_t x71 = (x43 >> 0x18);
- { uint32_t x72 = ((uint32_t)x43 & 0xffffff);
- { uint64_t x73 = ((0x1000000 * x71) + x72);
- { uint64_t x74 = (x73 >> 0x18);
- { uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- { uint64_t x76 = ((x69 + x59) + x74);
- { uint64_t x77 = (x76 >> 0x19);
- { uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- { uint64_t x79 = (x68 + x74);
- { uint64_t x80 = (x79 >> 0x19);
- { uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- { uint64_t x82 = (x77 + x58);
- { uint64_t x83 = (x82 >> 0x19);
- { uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- { uint64_t x85 = (x80 + x67);
- { uint64_t x86 = (x85 >> 0x19);
- { uint32_t x87 = ((uint32_t)x85 & 0x1ffffff);
- { uint64_t x88 = (x83 + x57);
- { uint64_t x89 = (x88 >> 0x19);
- { uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- { uint64_t x91 = (x86 + x66);
- { uint64_t x92 = (x91 >> 0x19);
- { uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- { uint64_t x94 = (x89 + x56);
- { uint64_t x95 = (x94 >> 0x19);
- { uint32_t x96 = ((uint32_t)x94 & 0x1ffffff);
- { uint64_t x97 = (x92 + x65);
- { uint64_t x98 = (x97 >> 0x19);
- { uint32_t x99 = ((uint32_t)x97 & 0x1ffffff);
- { uint64_t x100 = (x95 + x55);
- { uint64_t x101 = (x100 >> 0x19);
- { uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- { uint64_t x103 = (x98 + x64);
- { uint64_t x104 = (x103 >> 0x19);
- { uint32_t x105 = ((uint32_t)x103 & 0x1ffffff);
- { uint64_t x106 = (x101 + x54);
- { uint64_t x107 = (x106 >> 0x19);
- { uint32_t x108 = ((uint32_t)x106 & 0x1ffffff);
- { uint64_t x109 = (x104 + x63);
- { uint64_t x110 = (x109 >> 0x19);
- { uint32_t x111 = ((uint32_t)x109 & 0x1ffffff);
- { uint64_t x112 = (x107 + x53);
- { uint64_t x113 = (x112 >> 0x19);
- { uint32_t x114 = ((uint32_t)x112 & 0x1ffffff);
- { uint64_t x115 = (x110 + x62);
- { uint64_t x116 = (x115 >> 0x19);
- { uint32_t x117 = ((uint32_t)x115 & 0x1ffffff);
- { uint64_t x118 = (x113 + x52);
- { uint64_t x119 = (x118 >> 0x19);
- { uint32_t x120 = ((uint32_t)x118 & 0x1ffffff);
- { uint64_t x121 = (x116 + x61);
- { uint64_t x122 = (x121 >> 0x19);
- { uint32_t x123 = ((uint32_t)x121 & 0x1ffffff);
- { uint64_t x124 = (x119 + x75);
- { uint32_t x125 = (uint32_t) (x124 >> 0x18);
- { uint32_t x126 = ((uint32_t)x124 & 0xffffff);
- { uint64_t x127 = (x122 + x70);
- { uint32_t x128 = (uint32_t) (x127 >> 0x18);
- { uint32_t x129 = ((uint32_t)x127 & 0xffffff);
- { uint64_t x130 = (((uint64_t)0x1000000 * x125) + x126);
- { uint32_t x131 = (uint32_t) (x130 >> 0x18);
- { uint32_t x132 = ((uint32_t)x130 & 0xffffff);
- { uint32_t x133 = ((x128 + x78) + x131);
- { uint32_t x134 = (x133 >> 0x19);
- { uint32_t x135 = (x133 & 0x1ffffff);
- { uint32_t x136 = (x81 + x131);
- { uint32_t x137 = (x136 >> 0x19);
- { uint32_t x138 = (x136 & 0x1ffffff);
- out[0] = x138;
- out[1] = (x137 + x87);
- out[2] = x93;
- out[3] = x99;
- out[4] = x105;
- out[5] = x111;
- out[6] = x117;
- out[7] = x123;
- out[8] = x129;
- out[9] = x135;
- out[10] = (x134 + x84);
- out[11] = x90;
- out[12] = x96;
- out[13] = x102;
- out[14] = x108;
- out[15] = x114;
- out[16] = x120;
- out[17] = x132;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e448m2e224m1_18limbs/fesquare.v b/src/Specific/solinas32_2e448m2e224m1_18limbs/fesquare.v
deleted file mode 100644
index 70d782290..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_18limbs.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_2e448m2e224m1_18limbs/fesquareDisplay.log b/src/Specific/solinas32_2e448m2e224m1_18limbs/fesquareDisplay.log
deleted file mode 100644
index 68cd50b7f..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,111 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x33, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x35 = ((0x2 * ((uint64_t)(x18 + x33) * (x18 + x33))) - (0x2 * ((uint64_t)x18 * x18)));
- uint64_t x36 = (((0x2 * ((uint64_t)(x16 + x34) * (x18 + x33))) + (0x2 * ((uint64_t)(x18 + x33) * (x16 + x34)))) - ((0x2 * ((uint64_t)x16 * x18)) + (0x2 * ((uint64_t)x18 * x16))));
- uint64_t x37 = (((0x2 * ((uint64_t)(x14 + x32) * (x18 + x33))) + ((0x2 * ((uint64_t)(x16 + x34) * (x16 + x34))) + (0x2 * ((uint64_t)(x18 + x33) * (x14 + x32))))) - ((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + (0x2 * ((uint64_t)x18 * x14)))));
- uint64_t x38 = (((0x2 * ((uint64_t)(x12 + x30) * (x18 + x33))) + ((0x2 * ((uint64_t)(x14 + x32) * (x16 + x34))) + ((0x2 * ((uint64_t)(x16 + x34) * (x14 + x32))) + (0x2 * ((uint64_t)(x18 + x33) * (x12 + x30)))))) - ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (0x2 * ((uint64_t)x18 * x12))))));
- uint64_t x39 = (((0x2 * ((uint64_t)(x10 + x28) * (x18 + x33))) + ((0x2 * ((uint64_t)(x12 + x30) * (x16 + x34))) + ((0x2 * ((uint64_t)(x14 + x32) * (x14 + x32))) + ((0x2 * ((uint64_t)(x16 + x34) * (x12 + x30))) + (0x2 * ((uint64_t)(x18 + x33) * (x10 + x28))))))) - ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (0x2 * ((uint64_t)x18 * x10)))))));
- uint64_t x40 = (((0x2 * ((uint64_t)(x8 + x26) * (x18 + x33))) + ((0x2 * ((uint64_t)(x10 + x28) * (x16 + x34))) + ((0x2 * ((uint64_t)(x12 + x30) * (x14 + x32))) + ((0x2 * ((uint64_t)(x14 + x32) * (x12 + x30))) + ((0x2 * ((uint64_t)(x16 + x34) * (x10 + x28))) + (0x2 * ((uint64_t)(x18 + x33) * (x8 + x26)))))))) - ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + (0x2 * ((uint64_t)x18 * x8))))))));
- uint64_t x41 = (((0x2 * ((uint64_t)(x6 + x24) * (x18 + x33))) + ((0x2 * ((uint64_t)(x8 + x26) * (x16 + x34))) + ((0x2 * ((uint64_t)(x10 + x28) * (x14 + x32))) + ((0x2 * ((uint64_t)(x12 + x30) * (x12 + x30))) + ((0x2 * ((uint64_t)(x14 + x32) * (x10 + x28))) + ((0x2 * ((uint64_t)(x16 + x34) * (x8 + x26))) + (0x2 * ((uint64_t)(x18 + x33) * (x6 + x24))))))))) - ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + (0x2 * ((uint64_t)x18 * x6)))))))));
- uint64_t x42 = (((0x2 * ((uint64_t)(x4 + x22) * (x18 + x33))) + ((0x2 * ((uint64_t)(x6 + x24) * (x16 + x34))) + ((0x2 * ((uint64_t)(x8 + x26) * (x14 + x32))) + ((0x2 * ((uint64_t)(x10 + x28) * (x12 + x30))) + ((0x2 * ((uint64_t)(x12 + x30) * (x10 + x28))) + ((0x2 * ((uint64_t)(x14 + x32) * (x8 + x26))) + ((0x2 * ((uint64_t)(x16 + x34) * (x6 + x24))) + (0x2 * ((uint64_t)(x18 + x33) * (x4 + x22)))))))))) - ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x18 * x4))))))))));
- uint64_t x43 = ((((uint64_t)(x2 + x20) * (x18 + x33)) + (((uint64_t)(x4 + x22) * (x16 + x34)) + (((uint64_t)(x6 + x24) * (x14 + x32)) + (((uint64_t)(x8 + x26) * (x12 + x30)) + (((uint64_t)(x10 + x28) * (x10 + x28)) + (((uint64_t)(x12 + x30) * (x8 + x26)) + (((uint64_t)(x14 + x32) * (x6 + x24)) + (((uint64_t)(x16 + x34) * (x4 + x22)) + ((uint64_t)(x18 + x33) * (x2 + x20)))))))))) - (((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))));
- uint64_t x44 = ((((uint64_t)(x2 + x20) * (x16 + x34)) + (((uint64_t)(x4 + x22) * (x14 + x32)) + (((uint64_t)(x6 + x24) * (x12 + x30)) + (((uint64_t)(x8 + x26) * (x10 + x28)) + (((uint64_t)(x10 + x28) * (x8 + x26)) + (((uint64_t)(x12 + x30) * (x6 + x24)) + (((uint64_t)(x14 + x32) * (x4 + x22)) + ((uint64_t)(x16 + x34) * (x2 + x20))))))))) - (((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))));
- uint64_t x45 = ((((uint64_t)(x2 + x20) * (x14 + x32)) + (((uint64_t)(x4 + x22) * (x12 + x30)) + (((uint64_t)(x6 + x24) * (x10 + x28)) + (((uint64_t)(x8 + x26) * (x8 + x26)) + (((uint64_t)(x10 + x28) * (x6 + x24)) + (((uint64_t)(x12 + x30) * (x4 + x22)) + ((uint64_t)(x14 + x32) * (x2 + x20)))))))) - (((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))));
- uint64_t x46 = ((((uint64_t)(x2 + x20) * (x12 + x30)) + (((uint64_t)(x4 + x22) * (x10 + x28)) + (((uint64_t)(x6 + x24) * (x8 + x26)) + (((uint64_t)(x8 + x26) * (x6 + x24)) + (((uint64_t)(x10 + x28) * (x4 + x22)) + ((uint64_t)(x12 + x30) * (x2 + x20))))))) - (((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))));
- uint64_t x47 = ((((uint64_t)(x2 + x20) * (x10 + x28)) + (((uint64_t)(x4 + x22) * (x8 + x26)) + (((uint64_t)(x6 + x24) * (x6 + x24)) + (((uint64_t)(x8 + x26) * (x4 + x22)) + ((uint64_t)(x10 + x28) * (x2 + x20)))))) - (((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))));
- uint64_t x48 = ((((uint64_t)(x2 + x20) * (x8 + x26)) + (((uint64_t)(x4 + x22) * (x6 + x24)) + (((uint64_t)(x6 + x24) * (x4 + x22)) + ((uint64_t)(x8 + x26) * (x2 + x20))))) - (((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))));
- uint64_t x49 = ((((uint64_t)(x2 + x20) * (x6 + x24)) + (((uint64_t)(x4 + x22) * (x4 + x22)) + ((uint64_t)(x6 + x24) * (x2 + x20)))) - (((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))));
- uint64_t x50 = ((((uint64_t)(x2 + x20) * (x4 + x22)) + ((uint64_t)(x4 + x22) * (x2 + x20))) - (((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)));
- uint64_t x51 = (((uint64_t)(x2 + x20) * (x2 + x20)) - ((uint64_t)x2 * x2));
- uint64_t x52 = ((((0x2 * ((uint64_t)x18 * x18)) + (0x2 * ((uint64_t)x33 * x33))) + x44) + x35);
- uint64_t x53 = (((((0x2 * ((uint64_t)x16 * x18)) + (0x2 * ((uint64_t)x18 * x16))) + ((0x2 * ((uint64_t)x34 * x33)) + (0x2 * ((uint64_t)x33 * x34)))) + x45) + x36);
- uint64_t x54 = (((((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + (0x2 * ((uint64_t)x18 * x14)))) + ((0x2 * ((uint64_t)x32 * x33)) + ((0x2 * ((uint64_t)x34 * x34)) + (0x2 * ((uint64_t)x33 * x32))))) + x46) + x37);
- uint64_t x55 = (((((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (0x2 * ((uint64_t)x18 * x12))))) + ((0x2 * ((uint64_t)x30 * x33)) + ((0x2 * ((uint64_t)x32 * x34)) + ((0x2 * ((uint64_t)x34 * x32)) + (0x2 * ((uint64_t)x33 * x30)))))) + x47) + x38);
- uint64_t x56 = (((((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (0x2 * ((uint64_t)x18 * x10)))))) + ((0x2 * ((uint64_t)x28 * x33)) + ((0x2 * ((uint64_t)x30 * x34)) + ((0x2 * ((uint64_t)x32 * x32)) + ((0x2 * ((uint64_t)x34 * x30)) + (0x2 * ((uint64_t)x33 * x28))))))) + x48) + x39);
- uint64_t x57 = (((((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + (0x2 * ((uint64_t)x18 * x8))))))) + ((0x2 * ((uint64_t)x26 * x33)) + ((0x2 * ((uint64_t)x28 * x34)) + ((0x2 * ((uint64_t)x30 * x32)) + ((0x2 * ((uint64_t)x32 * x30)) + ((0x2 * ((uint64_t)x34 * x28)) + (0x2 * ((uint64_t)x33 * x26)))))))) + x49) + x40);
- uint64_t x58 = (((((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + (0x2 * ((uint64_t)x18 * x6)))))))) + ((0x2 * ((uint64_t)x24 * x33)) + ((0x2 * ((uint64_t)x26 * x34)) + ((0x2 * ((uint64_t)x28 * x32)) + ((0x2 * ((uint64_t)x30 * x30)) + ((0x2 * ((uint64_t)x32 * x28)) + ((0x2 * ((uint64_t)x34 * x26)) + (0x2 * ((uint64_t)x33 * x24))))))))) + x50) + x41);
- uint64_t x59 = (((((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x18 * x4))))))))) + ((0x2 * ((uint64_t)x22 * x33)) + ((0x2 * ((uint64_t)x24 * x34)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + ((0x2 * ((uint64_t)x34 * x24)) + (0x2 * ((uint64_t)x33 * x22)))))))))) + x51) + x42);
- uint64_t x60 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (((uint64_t)x20 * x33) + (((uint64_t)x22 * x34) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + (((uint64_t)x34 * x22) + ((uint64_t)x33 * x20))))))))));
- uint64_t x61 = (((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (((uint64_t)x20 * x34) + (((uint64_t)x22 * x32) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + (((uint64_t)x32 * x22) + ((uint64_t)x34 * x20))))))))) + x35);
- uint64_t x62 = (((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (((uint64_t)x20 * x32) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + ((uint64_t)x32 * x20)))))))) + x36);
- uint64_t x63 = (((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + ((uint64_t)x30 * x20))))))) + x37);
- uint64_t x64 = (((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + ((uint64_t)x28 * x20)))))) + x38);
- uint64_t x65 = (((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + ((uint64_t)x26 * x20))))) + x39);
- uint64_t x66 = (((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + ((uint64_t)x24 * x20)))) + x40);
- uint64_t x67 = (((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x20 * x22) + ((uint64_t)x22 * x20))) + x41);
- uint64_t x68 = ((((uint64_t)x2 * x2) + ((uint64_t)x20 * x20)) + x42);
- uint64_t x69 = (x60 >> 0x18);
- uint32_t x70 = ((uint32_t)x60 & 0xffffff);
- uint64_t x71 = (x43 >> 0x18);
- uint32_t x72 = ((uint32_t)x43 & 0xffffff);
- uint64_t x73 = ((0x1000000 * x71) + x72);
- uint64_t x74 = (x73 >> 0x18);
- uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- uint64_t x76 = ((x69 + x59) + x74);
- uint64_t x77 = (x76 >> 0x19);
- uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- uint64_t x79 = (x68 + x74);
- uint64_t x80 = (x79 >> 0x19);
- uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- uint64_t x82 = (x77 + x58);
- uint64_t x83 = (x82 >> 0x19);
- uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- uint64_t x85 = (x80 + x67);
- uint64_t x86 = (x85 >> 0x19);
- uint32_t x87 = ((uint32_t)x85 & 0x1ffffff);
- uint64_t x88 = (x83 + x57);
- uint64_t x89 = (x88 >> 0x19);
- uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- uint64_t x91 = (x86 + x66);
- uint64_t x92 = (x91 >> 0x19);
- uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- uint64_t x94 = (x89 + x56);
- uint64_t x95 = (x94 >> 0x19);
- uint32_t x96 = ((uint32_t)x94 & 0x1ffffff);
- uint64_t x97 = (x92 + x65);
- uint64_t x98 = (x97 >> 0x19);
- uint32_t x99 = ((uint32_t)x97 & 0x1ffffff);
- uint64_t x100 = (x95 + x55);
- uint64_t x101 = (x100 >> 0x19);
- uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- uint64_t x103 = (x98 + x64);
- uint64_t x104 = (x103 >> 0x19);
- uint32_t x105 = ((uint32_t)x103 & 0x1ffffff);
- uint64_t x106 = (x101 + x54);
- uint64_t x107 = (x106 >> 0x19);
- uint32_t x108 = ((uint32_t)x106 & 0x1ffffff);
- uint64_t x109 = (x104 + x63);
- uint64_t x110 = (x109 >> 0x19);
- uint32_t x111 = ((uint32_t)x109 & 0x1ffffff);
- uint64_t x112 = (x107 + x53);
- uint64_t x113 = (x112 >> 0x19);
- uint32_t x114 = ((uint32_t)x112 & 0x1ffffff);
- uint64_t x115 = (x110 + x62);
- uint64_t x116 = (x115 >> 0x19);
- uint32_t x117 = ((uint32_t)x115 & 0x1ffffff);
- uint64_t x118 = (x113 + x52);
- uint64_t x119 = (x118 >> 0x19);
- uint32_t x120 = ((uint32_t)x118 & 0x1ffffff);
- uint64_t x121 = (x116 + x61);
- uint64_t x122 = (x121 >> 0x19);
- uint32_t x123 = ((uint32_t)x121 & 0x1ffffff);
- uint64_t x124 = (x119 + x75);
- uint32_t x125 = (uint32_t) (x124 >> 0x18);
- uint32_t x126 = ((uint32_t)x124 & 0xffffff);
- uint64_t x127 = (x122 + x70);
- uint32_t x128 = (uint32_t) (x127 >> 0x18);
- uint32_t x129 = ((uint32_t)x127 & 0xffffff);
- uint64_t x130 = (((uint64_t)0x1000000 * x125) + x126);
- uint32_t x131 = (uint32_t) (x130 >> 0x18);
- uint32_t x132 = ((uint32_t)x130 & 0xffffff);
- uint32_t x133 = ((x128 + x78) + x131);
- uint32_t x134 = (x133 >> 0x19);
- uint32_t x135 = (x133 & 0x1ffffff);
- uint32_t x136 = (x81 + x131);
- uint32_t x137 = (x136 >> 0x19);
- uint32_t x138 = (x136 & 0x1ffffff);
- return (Return x132, Return x120, Return x114, Return x108, Return x102, Return x96, Return x90, (x134 + x84), Return x135, Return x129, Return x123, Return x117, Return x111, Return x105, Return x99, Return x93, (x137 + x87), Return x138))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e448m2e224m1_18limbs/fesquareDisplay.v b/src/Specific/solinas32_2e448m2e224m1_18limbs/fesquareDisplay.v
deleted file mode 100644
index 4ad694326..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_18limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e448m2e224m1_18limbs/fesub.c b/src/Specific/solinas32_2e448m2e224m1_18limbs/fesub.c
deleted file mode 100644
index 5991a474f..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/fesub.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void fesub(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- out[0] = ((0x3fffffe + x5) - x39);
- out[1] = ((0x3fffffe + x7) - x41);
- out[2] = ((0x3fffffe + x9) - x43);
- out[3] = ((0x3fffffe + x11) - x45);
- out[4] = ((0x3fffffe + x13) - x47);
- out[5] = ((0x3fffffe + x15) - x49);
- out[6] = ((0x3fffffe + x17) - x51);
- out[7] = ((0x3fffffe + x19) - x53);
- out[8] = ((0x1fffffe + x21) - x55);
- out[9] = ((0x3fffffc + x23) - x57);
- out[10] = ((0x3fffffe + x25) - x59);
- out[11] = ((0x3fffffe + x27) - x61);
- out[12] = ((0x3fffffe + x29) - x63);
- out[13] = ((0x3fffffe + x31) - x65);
- out[14] = ((0x3fffffe + x33) - x67);
- out[15] = ((0x3fffffe + x35) - x69);
- out[16] = ((0x3fffffe + x37) - x71);
- out[17] = ((0x1fffffe + x36) - x70);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e448m2e224m1_18limbs/fesub.v b/src/Specific/solinas32_2e448m2e224m1_18limbs/fesub.v
deleted file mode 100644
index a1b14d9e8..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_18limbs.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_2e448m2e224m1_18limbs/fesubDisplay.log b/src/Specific/solinas32_2e448m2e224m1_18limbs/fesubDisplay.log
deleted file mode 100644
index 70588da86..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- (((0x1fffffe + x36) - x70), ((0x3fffffe + x37) - x71), ((0x3fffffe + x35) - x69), ((0x3fffffe + x33) - x67), ((0x3fffffe + x31) - x65), ((0x3fffffe + x29) - x63), ((0x3fffffe + x27) - x61), ((0x3fffffe + x25) - x59), ((0x3fffffc + x23) - x57), ((0x1fffffe + x21) - x55), ((0x3fffffe + x19) - x53), ((0x3fffffe + x17) - x51), ((0x3fffffe + x15) - x49), ((0x3fffffe + x13) - x47), ((0x3fffffe + x11) - x45), ((0x3fffffe + x9) - x43), ((0x3fffffe + x7) - x41), ((0x3fffffe + x5) - x39)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e448m2e224m1_18limbs/fesubDisplay.v b/src/Specific/solinas32_2e448m2e224m1_18limbs/fesubDisplay.v
deleted file mode 100644
index fba73a28c..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_18limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e448m2e224m1_18limbs/freeze.c b/src/Specific/solinas32_2e448m2e224m1_18limbs/freeze.c
deleted file mode 100644
index dc8637431..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/freeze.c
+++ /dev/null
@@ -1,94 +0,0 @@
-static void freeze(uint32_t out[18], const uint32_t in1[18]) {
- { const uint32_t x33 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x4, 0x1ffffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x6, 0x1ffffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x8, 0x1ffffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x10, 0x1ffffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x12, 0x1ffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x14, 0x1ffffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x16, 0x1ffffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x18, 0xffffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x20, 0x1fffffe);
- { uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x22, 0x1ffffff);
- { uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x24, 0x1ffffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x26, 0x1ffffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x28, 0x1ffffff);
- { uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x30, 0x1ffffff);
- { uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x32, 0x1ffffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x34, 0x1ffffff);
- { uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x33, 0xffffff);
- { uint32_t x89 = cmovznz32(x88, 0x0, 0xffffffff);
- { uint32_t x90 = (x89 & 0x1ffffff);
- { uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x36, Return x90);
- { uint32_t x94 = (x89 & 0x1ffffff);
- { uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x39, Return x94);
- { uint32_t x98 = (x89 & 0x1ffffff);
- { uint32_t x100, uint8_t x101 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x42, Return x98);
- { uint32_t x102 = (x89 & 0x1ffffff);
- { uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x45, Return x102);
- { uint32_t x106 = (x89 & 0x1ffffff);
- { uint32_t x108, uint8_t x109 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x48, Return x106);
- { uint32_t x110 = (x89 & 0x1ffffff);
- { uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x51, Return x110);
- { uint32_t x114 = (x89 & 0x1ffffff);
- { uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x54, Return x114);
- { uint32_t x118 = (x89 & 0x1ffffff);
- { uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x57, Return x118);
- { uint32_t x122 = (x89 & 0xffffff);
- { uint32_t x124, uint8_t x125 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x60, Return x122);
- { uint32_t x126 = (x89 & 0x1fffffe);
- { uint32_t x128, uint8_t x129 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x125, Return x63, Return x126);
- { uint32_t x130 = (x89 & 0x1ffffff);
- { uint32_t x132, uint8_t x133 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x129, Return x66, Return x130);
- { uint32_t x134 = (x89 & 0x1ffffff);
- { uint32_t x136, uint8_t x137 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x133, Return x69, Return x134);
- { uint32_t x138 = (x89 & 0x1ffffff);
- { uint32_t x140, uint8_t x141 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x137, Return x72, Return x138);
- { uint32_t x142 = (x89 & 0x1ffffff);
- { uint32_t x144, uint8_t x145 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x141, Return x75, Return x142);
- { uint32_t x146 = (x89 & 0x1ffffff);
- { uint32_t x148, uint8_t x149 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x145, Return x78, Return x146);
- { uint32_t x150 = (x89 & 0x1ffffff);
- { uint32_t x152, uint8_t x153 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x149, Return x81, Return x150);
- { uint32_t x154 = (x89 & 0x1ffffff);
- { uint32_t x156, uint8_t x157 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x153, Return x84, Return x154);
- { uint32_t x158 = (x89 & 0xffffff);
- { uint32_t x160, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x157, Return x87, Return x158);
- out[0] = x92;
- out[1] = x96;
- out[2] = x100;
- out[3] = x104;
- out[4] = x108;
- out[5] = x112;
- out[6] = x116;
- out[7] = x120;
- out[8] = x124;
- out[9] = x128;
- out[10] = x132;
- out[11] = x136;
- out[12] = x140;
- out[13] = x144;
- out[14] = x148;
- out[15] = x152;
- out[16] = x156;
- out[17] = x160;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e448m2e224m1_18limbs/freeze.v b/src/Specific/solinas32_2e448m2e224m1_18limbs/freeze.v
deleted file mode 100644
index c170a826b..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_18limbs.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_2e448m2e224m1_18limbs/freezeDisplay.log b/src/Specific/solinas32_2e448m2e224m1_18limbs/freezeDisplay.log
deleted file mode 100644
index a917fb35d..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/freezeDisplay.log
+++ /dev/null
@@ -1,62 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x33, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x4, 0x1ffffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x6, 0x1ffffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x8, 0x1ffffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x10, 0x1ffffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x12, 0x1ffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x14, 0x1ffffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x16, 0x1ffffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x18, 0xffffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x20, 0x1fffffe);
- uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x22, 0x1ffffff);
- uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x24, 0x1ffffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x26, 0x1ffffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x28, 0x1ffffff);
- uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x30, 0x1ffffff);
- uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x32, 0x1ffffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x34, 0x1ffffff);
- uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x33, 0xffffff);
- uint32_t x89 = cmovznz32(x88, 0x0, 0xffffffff);
- uint32_t x90 = (x89 & 0x1ffffff);
- uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x36, Return x90);
- uint32_t x94 = (x89 & 0x1ffffff);
- uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x39, Return x94);
- uint32_t x98 = (x89 & 0x1ffffff);
- uint32_t x100, uint8_t x101 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x42, Return x98);
- uint32_t x102 = (x89 & 0x1ffffff);
- uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x45, Return x102);
- uint32_t x106 = (x89 & 0x1ffffff);
- uint32_t x108, uint8_t x109 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x48, Return x106);
- uint32_t x110 = (x89 & 0x1ffffff);
- uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x51, Return x110);
- uint32_t x114 = (x89 & 0x1ffffff);
- uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x54, Return x114);
- uint32_t x118 = (x89 & 0x1ffffff);
- uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x57, Return x118);
- uint32_t x122 = (x89 & 0xffffff);
- uint32_t x124, uint8_t x125 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x60, Return x122);
- uint32_t x126 = (x89 & 0x1fffffe);
- uint32_t x128, uint8_t x129 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x125, Return x63, Return x126);
- uint32_t x130 = (x89 & 0x1ffffff);
- uint32_t x132, uint8_t x133 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x129, Return x66, Return x130);
- uint32_t x134 = (x89 & 0x1ffffff);
- uint32_t x136, uint8_t x137 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x133, Return x69, Return x134);
- uint32_t x138 = (x89 & 0x1ffffff);
- uint32_t x140, uint8_t x141 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x137, Return x72, Return x138);
- uint32_t x142 = (x89 & 0x1ffffff);
- uint32_t x144, uint8_t x145 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x141, Return x75, Return x142);
- uint32_t x146 = (x89 & 0x1ffffff);
- uint32_t x148, uint8_t x149 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x145, Return x78, Return x146);
- uint32_t x150 = (x89 & 0x1ffffff);
- uint32_t x152, uint8_t x153 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x149, Return x81, Return x150);
- uint32_t x154 = (x89 & 0x1ffffff);
- uint32_t x156, uint8_t x157 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x153, Return x84, Return x154);
- uint32_t x158 = (x89 & 0xffffff);
- uint32_t x160, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x157, Return x87, Return x158);
- (Return x160, Return x156, Return x152, Return x148, Return x144, Return x140, Return x136, Return x132, Return x128, Return x124, Return x120, Return x116, Return x112, Return x108, Return x104, Return x100, Return x96, Return x92))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e448m2e224m1_18limbs/freezeDisplay.v b/src/Specific/solinas32_2e448m2e224m1_18limbs/freezeDisplay.v
deleted file mode 100644
index 9744bc807..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e448m2e224m1_18limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e448m2e224m1_18limbs/py_interpreter.sh b/src/Specific/solinas32_2e448m2e224m1_18limbs/py_interpreter.sh
deleted file mode 100755
index e8f045ff8..000000000
--- a/src/Specific/solinas32_2e448m2e224m1_18limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**448 - 2**224 - 1' -Dmodulus_bytes='24 + 8/9' -Da24='121665'
diff --git a/src/Specific/solinas32_2e450m2e225m1_18limbs/CurveParameters.v b/src/Specific/solinas32_2e450m2e225m1_18limbs/CurveParameters.v
deleted file mode 100644
index 56065b02c..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^450 - 2^225 - 1
-Base: 25
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 18%nat;
- base := 25;
- bitwidth := 32;
- s := 2^450;
- c := [(1, 1); (2^225, 1)];
- carry_chains := Some [[8; 17]; [9; 0; 10; 1; 11; 2; 12; 3; 13; 4; 14; 5; 15; 6; 16; 7; 17; 8]; [9; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- 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_2e450m2e225m1_18limbs/Synthesis.v b/src/Specific/solinas32_2e450m2e225m1_18limbs/Synthesis.v
deleted file mode 100644
index ef78c8682..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_18limbs.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_2e450m2e225m1_18limbs/compiler.sh b/src/Specific/solinas32_2e450m2e225m1_18limbs/compiler.sh
deleted file mode 100755
index 27d32e95d..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' "$@"
diff --git a/src/Specific/solinas32_2e450m2e225m1_18limbs/compilerxx.sh b/src/Specific/solinas32_2e450m2e225m1_18limbs/compilerxx.sh
deleted file mode 100755
index c4c58505e..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' "$@"
diff --git a/src/Specific/solinas32_2e450m2e225m1_18limbs/feadd.c b/src/Specific/solinas32_2e450m2e225m1_18limbs/feadd.c
deleted file mode 100644
index 7b8380410..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/feadd.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void feadd(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- out[0] = (x5 + x39);
- out[1] = (x7 + x41);
- out[2] = (x9 + x43);
- out[3] = (x11 + x45);
- out[4] = (x13 + x47);
- out[5] = (x15 + x49);
- out[6] = (x17 + x51);
- out[7] = (x19 + x53);
- out[8] = (x21 + x55);
- out[9] = (x23 + x57);
- out[10] = (x25 + x59);
- out[11] = (x27 + x61);
- out[12] = (x29 + x63);
- out[13] = (x31 + x65);
- out[14] = (x33 + x67);
- out[15] = (x35 + x69);
- out[16] = (x37 + x71);
- out[17] = (x36 + x70);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e450m2e225m1_18limbs/feadd.v b/src/Specific/solinas32_2e450m2e225m1_18limbs/feadd.v
deleted file mode 100644
index 85331b83b..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_18limbs.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_2e450m2e225m1_18limbs/feaddDisplay.log b/src/Specific/solinas32_2e450m2e225m1_18limbs/feaddDisplay.log
deleted file mode 100644
index 5e9c243f4..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- ((x36 + x70), (x37 + x71), (x35 + x69), (x33 + x67), (x31 + x65), (x29 + x63), (x27 + x61), (x25 + x59), (x23 + x57), (x21 + x55), (x19 + x53), (x17 + x51), (x15 + x49), (x13 + x47), (x11 + x45), (x9 + x43), (x7 + x41), (x5 + x39)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e450m2e225m1_18limbs/feaddDisplay.v b/src/Specific/solinas32_2e450m2e225m1_18limbs/feaddDisplay.v
deleted file mode 100644
index cb9e4b1f7..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_18limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e450m2e225m1_18limbs/fecarry.v b/src/Specific/solinas32_2e450m2e225m1_18limbs/fecarry.v
deleted file mode 100644
index 945f55f8e..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_18limbs.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_2e450m2e225m1_18limbs/fecarryDisplay.v b/src/Specific/solinas32_2e450m2e225m1_18limbs/fecarryDisplay.v
deleted file mode 100644
index 194579436..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_18limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e450m2e225m1_18limbs/femul.v b/src/Specific/solinas32_2e450m2e225m1_18limbs/femul.v
deleted file mode 100644
index 6dbfa959b..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_18limbs.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_2e450m2e225m1_18limbs/femulDisplay.v b/src/Specific/solinas32_2e450m2e225m1_18limbs/femulDisplay.v
deleted file mode 100644
index afd61db70..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_18limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e450m2e225m1_18limbs/fesquare.c b/src/Specific/solinas32_2e450m2e225m1_18limbs/fesquare.c
deleted file mode 100644
index edc67b41d..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/fesquare.c
+++ /dev/null
@@ -1,143 +0,0 @@
-static void fesquare(uint32_t out[18], const uint32_t in1[18]) {
- { const uint32_t x33 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x35 = (((uint64_t)(x18 + x33) * (x18 + x33)) - ((uint64_t)x18 * x18));
- { uint64_t x36 = ((((uint64_t)(x16 + x34) * (x18 + x33)) + ((uint64_t)(x18 + x33) * (x16 + x34))) - (((uint64_t)x16 * x18) + ((uint64_t)x18 * x16)));
- { uint64_t x37 = ((((uint64_t)(x14 + x32) * (x18 + x33)) + (((uint64_t)(x16 + x34) * (x16 + x34)) + ((uint64_t)(x18 + x33) * (x14 + x32)))) - (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + ((uint64_t)x18 * x14))));
- { uint64_t x38 = ((((uint64_t)(x12 + x30) * (x18 + x33)) + (((uint64_t)(x14 + x32) * (x16 + x34)) + (((uint64_t)(x16 + x34) * (x14 + x32)) + ((uint64_t)(x18 + x33) * (x12 + x30))))) - (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x18 * x12)))));
- { uint64_t x39 = ((((uint64_t)(x10 + x28) * (x18 + x33)) + (((uint64_t)(x12 + x30) * (x16 + x34)) + (((uint64_t)(x14 + x32) * (x14 + x32)) + (((uint64_t)(x16 + x34) * (x12 + x30)) + ((uint64_t)(x18 + x33) * (x10 + x28)))))) - (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + ((uint64_t)x18 * x10))))));
- { uint64_t x40 = ((((uint64_t)(x8 + x26) * (x18 + x33)) + (((uint64_t)(x10 + x28) * (x16 + x34)) + (((uint64_t)(x12 + x30) * (x14 + x32)) + (((uint64_t)(x14 + x32) * (x12 + x30)) + (((uint64_t)(x16 + x34) * (x10 + x28)) + ((uint64_t)(x18 + x33) * (x8 + x26))))))) - (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x18 * x8)))))));
- { uint64_t x41 = ((((uint64_t)(x6 + x24) * (x18 + x33)) + (((uint64_t)(x8 + x26) * (x16 + x34)) + (((uint64_t)(x10 + x28) * (x14 + x32)) + (((uint64_t)(x12 + x30) * (x12 + x30)) + (((uint64_t)(x14 + x32) * (x10 + x28)) + (((uint64_t)(x16 + x34) * (x8 + x26)) + ((uint64_t)(x18 + x33) * (x6 + x24)))))))) - (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((uint64_t)x18 * x6))))))));
- { uint64_t x42 = ((((uint64_t)(x4 + x22) * (x18 + x33)) + (((uint64_t)(x6 + x24) * (x16 + x34)) + (((uint64_t)(x8 + x26) * (x14 + x32)) + (((uint64_t)(x10 + x28) * (x12 + x30)) + (((uint64_t)(x12 + x30) * (x10 + x28)) + (((uint64_t)(x14 + x32) * (x8 + x26)) + (((uint64_t)(x16 + x34) * (x6 + x24)) + ((uint64_t)(x18 + x33) * (x4 + x22))))))))) - (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + ((uint64_t)x18 * x4)))))))));
- { uint64_t x43 = ((((uint64_t)(x2 + x20) * (x18 + x33)) + (((uint64_t)(x4 + x22) * (x16 + x34)) + (((uint64_t)(x6 + x24) * (x14 + x32)) + (((uint64_t)(x8 + x26) * (x12 + x30)) + (((uint64_t)(x10 + x28) * (x10 + x28)) + (((uint64_t)(x12 + x30) * (x8 + x26)) + (((uint64_t)(x14 + x32) * (x6 + x24)) + (((uint64_t)(x16 + x34) * (x4 + x22)) + ((uint64_t)(x18 + x33) * (x2 + x20)))))))))) - (((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))));
- { uint64_t x44 = ((((uint64_t)(x2 + x20) * (x16 + x34)) + (((uint64_t)(x4 + x22) * (x14 + x32)) + (((uint64_t)(x6 + x24) * (x12 + x30)) + (((uint64_t)(x8 + x26) * (x10 + x28)) + (((uint64_t)(x10 + x28) * (x8 + x26)) + (((uint64_t)(x12 + x30) * (x6 + x24)) + (((uint64_t)(x14 + x32) * (x4 + x22)) + ((uint64_t)(x16 + x34) * (x2 + x20))))))))) - (((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))));
- { uint64_t x45 = ((((uint64_t)(x2 + x20) * (x14 + x32)) + (((uint64_t)(x4 + x22) * (x12 + x30)) + (((uint64_t)(x6 + x24) * (x10 + x28)) + (((uint64_t)(x8 + x26) * (x8 + x26)) + (((uint64_t)(x10 + x28) * (x6 + x24)) + (((uint64_t)(x12 + x30) * (x4 + x22)) + ((uint64_t)(x14 + x32) * (x2 + x20)))))))) - (((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))));
- { uint64_t x46 = ((((uint64_t)(x2 + x20) * (x12 + x30)) + (((uint64_t)(x4 + x22) * (x10 + x28)) + (((uint64_t)(x6 + x24) * (x8 + x26)) + (((uint64_t)(x8 + x26) * (x6 + x24)) + (((uint64_t)(x10 + x28) * (x4 + x22)) + ((uint64_t)(x12 + x30) * (x2 + x20))))))) - (((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))));
- { uint64_t x47 = ((((uint64_t)(x2 + x20) * (x10 + x28)) + (((uint64_t)(x4 + x22) * (x8 + x26)) + (((uint64_t)(x6 + x24) * (x6 + x24)) + (((uint64_t)(x8 + x26) * (x4 + x22)) + ((uint64_t)(x10 + x28) * (x2 + x20)))))) - (((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))));
- { uint64_t x48 = ((((uint64_t)(x2 + x20) * (x8 + x26)) + (((uint64_t)(x4 + x22) * (x6 + x24)) + (((uint64_t)(x6 + x24) * (x4 + x22)) + ((uint64_t)(x8 + x26) * (x2 + x20))))) - (((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))));
- { uint64_t x49 = ((((uint64_t)(x2 + x20) * (x6 + x24)) + (((uint64_t)(x4 + x22) * (x4 + x22)) + ((uint64_t)(x6 + x24) * (x2 + x20)))) - (((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))));
- { uint64_t x50 = ((((uint64_t)(x2 + x20) * (x4 + x22)) + ((uint64_t)(x4 + x22) * (x2 + x20))) - (((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)));
- { uint64_t x51 = (((uint64_t)(x2 + x20) * (x2 + x20)) - ((uint64_t)x2 * x2));
- { uint64_t x52 = (((((uint64_t)x18 * x18) + ((uint64_t)x33 * x33)) + x44) + x35);
- { uint64_t x53 = ((((((uint64_t)x16 * x18) + ((uint64_t)x18 * x16)) + (((uint64_t)x34 * x33) + ((uint64_t)x33 * x34))) + x45) + x36);
- { uint64_t x54 = ((((((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + ((uint64_t)x18 * x14))) + (((uint64_t)x32 * x33) + (((uint64_t)x34 * x34) + ((uint64_t)x33 * x32)))) + x46) + x37);
- { uint64_t x55 = ((((((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x18 * x12)))) + (((uint64_t)x30 * x33) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + ((uint64_t)x33 * x30))))) + x47) + x38);
- { uint64_t x56 = ((((((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + ((uint64_t)x18 * x10))))) + (((uint64_t)x28 * x33) + (((uint64_t)x30 * x34) + (((uint64_t)x32 * x32) + (((uint64_t)x34 * x30) + ((uint64_t)x33 * x28)))))) + x48) + x39);
- { uint64_t x57 = ((((((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x18 * x8)))))) + (((uint64_t)x26 * x33) + (((uint64_t)x28 * x34) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + (((uint64_t)x34 * x28) + ((uint64_t)x33 * x26))))))) + x49) + x40);
- { uint64_t x58 = ((((((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((uint64_t)x18 * x6))))))) + (((uint64_t)x24 * x33) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + (((uint64_t)x30 * x30) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + ((uint64_t)x33 * x24)))))))) + x50) + x41);
- { uint64_t x59 = ((((((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + ((uint64_t)x18 * x4)))))))) + (((uint64_t)x22 * x33) + (((uint64_t)x24 * x34) + (((uint64_t)x26 * x32) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (((uint64_t)x32 * x26) + (((uint64_t)x34 * x24) + ((uint64_t)x33 * x22))))))))) + x51) + x42);
- { uint64_t x60 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (((uint64_t)x20 * x33) + (((uint64_t)x22 * x34) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + (((uint64_t)x34 * x22) + ((uint64_t)x33 * x20))))))))));
- { uint64_t x61 = (((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (((uint64_t)x20 * x34) + (((uint64_t)x22 * x32) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + (((uint64_t)x32 * x22) + ((uint64_t)x34 * x20))))))))) + x35);
- { uint64_t x62 = (((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (((uint64_t)x20 * x32) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + ((uint64_t)x32 * x20)))))))) + x36);
- { uint64_t x63 = (((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + ((uint64_t)x30 * x20))))))) + x37);
- { uint64_t x64 = (((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + ((uint64_t)x28 * x20)))))) + x38);
- { uint64_t x65 = (((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + ((uint64_t)x26 * x20))))) + x39);
- { uint64_t x66 = (((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + ((uint64_t)x24 * x20)))) + x40);
- { uint64_t x67 = (((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x20 * x22) + ((uint64_t)x22 * x20))) + x41);
- { uint64_t x68 = ((((uint64_t)x2 * x2) + ((uint64_t)x20 * x20)) + x42);
- { uint64_t x69 = (x60 >> 0x19);
- { uint32_t x70 = ((uint32_t)x60 & 0x1ffffff);
- { uint64_t x71 = (x43 >> 0x19);
- { uint32_t x72 = ((uint32_t)x43 & 0x1ffffff);
- { uint64_t x73 = ((0x2000000 * x71) + x72);
- { uint64_t x74 = (x73 >> 0x19);
- { uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- { uint64_t x76 = ((x69 + x59) + x74);
- { uint64_t x77 = (x76 >> 0x19);
- { uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- { uint64_t x79 = (x68 + x74);
- { uint64_t x80 = (x79 >> 0x19);
- { uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- { uint64_t x82 = (x77 + x58);
- { uint64_t x83 = (x82 >> 0x19);
- { uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- { uint64_t x85 = (x80 + x67);
- { uint64_t x86 = (x85 >> 0x19);
- { uint32_t x87 = ((uint32_t)x85 & 0x1ffffff);
- { uint64_t x88 = (x83 + x57);
- { uint64_t x89 = (x88 >> 0x19);
- { uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- { uint64_t x91 = (x86 + x66);
- { uint64_t x92 = (x91 >> 0x19);
- { uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- { uint64_t x94 = (x89 + x56);
- { uint64_t x95 = (x94 >> 0x19);
- { uint32_t x96 = ((uint32_t)x94 & 0x1ffffff);
- { uint64_t x97 = (x92 + x65);
- { uint64_t x98 = (x97 >> 0x19);
- { uint32_t x99 = ((uint32_t)x97 & 0x1ffffff);
- { uint64_t x100 = (x95 + x55);
- { uint64_t x101 = (x100 >> 0x19);
- { uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- { uint64_t x103 = (x98 + x64);
- { uint64_t x104 = (x103 >> 0x19);
- { uint32_t x105 = ((uint32_t)x103 & 0x1ffffff);
- { uint64_t x106 = (x101 + x54);
- { uint64_t x107 = (x106 >> 0x19);
- { uint32_t x108 = ((uint32_t)x106 & 0x1ffffff);
- { uint64_t x109 = (x104 + x63);
- { uint64_t x110 = (x109 >> 0x19);
- { uint32_t x111 = ((uint32_t)x109 & 0x1ffffff);
- { uint64_t x112 = (x107 + x53);
- { uint64_t x113 = (x112 >> 0x19);
- { uint32_t x114 = ((uint32_t)x112 & 0x1ffffff);
- { uint64_t x115 = (x110 + x62);
- { uint64_t x116 = (x115 >> 0x19);
- { uint32_t x117 = ((uint32_t)x115 & 0x1ffffff);
- { uint64_t x118 = (x113 + x52);
- { uint64_t x119 = (x118 >> 0x19);
- { uint32_t x120 = ((uint32_t)x118 & 0x1ffffff);
- { uint64_t x121 = (x116 + x61);
- { uint64_t x122 = (x121 >> 0x19);
- { uint32_t x123 = ((uint32_t)x121 & 0x1ffffff);
- { uint64_t x124 = (x119 + x75);
- { uint32_t x125 = (uint32_t) (x124 >> 0x19);
- { uint32_t x126 = ((uint32_t)x124 & 0x1ffffff);
- { uint64_t x127 = (x122 + x70);
- { uint32_t x128 = (uint32_t) (x127 >> 0x19);
- { uint32_t x129 = ((uint32_t)x127 & 0x1ffffff);
- { uint64_t x130 = (((uint64_t)0x2000000 * x125) + x126);
- { uint32_t x131 = (uint32_t) (x130 >> 0x19);
- { uint32_t x132 = ((uint32_t)x130 & 0x1ffffff);
- { uint32_t x133 = ((x128 + x78) + x131);
- { uint32_t x134 = (x133 >> 0x19);
- { uint32_t x135 = (x133 & 0x1ffffff);
- { uint32_t x136 = (x81 + x131);
- { uint32_t x137 = (x136 >> 0x19);
- { uint32_t x138 = (x136 & 0x1ffffff);
- out[0] = x138;
- out[1] = (x137 + x87);
- out[2] = x93;
- out[3] = x99;
- out[4] = x105;
- out[5] = x111;
- out[6] = x117;
- out[7] = x123;
- out[8] = x129;
- out[9] = x135;
- out[10] = (x134 + x84);
- out[11] = x90;
- out[12] = x96;
- out[13] = x102;
- out[14] = x108;
- out[15] = x114;
- out[16] = x120;
- out[17] = x132;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e450m2e225m1_18limbs/fesquare.v b/src/Specific/solinas32_2e450m2e225m1_18limbs/fesquare.v
deleted file mode 100644
index 131550cf2..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_18limbs.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_2e450m2e225m1_18limbs/fesquareDisplay.log b/src/Specific/solinas32_2e450m2e225m1_18limbs/fesquareDisplay.log
deleted file mode 100644
index 2b4cfc1ed..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,111 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x33, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x35 = (((uint64_t)(x18 + x33) * (x18 + x33)) - ((uint64_t)x18 * x18));
- uint64_t x36 = ((((uint64_t)(x16 + x34) * (x18 + x33)) + ((uint64_t)(x18 + x33) * (x16 + x34))) - (((uint64_t)x16 * x18) + ((uint64_t)x18 * x16)));
- uint64_t x37 = ((((uint64_t)(x14 + x32) * (x18 + x33)) + (((uint64_t)(x16 + x34) * (x16 + x34)) + ((uint64_t)(x18 + x33) * (x14 + x32)))) - (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + ((uint64_t)x18 * x14))));
- uint64_t x38 = ((((uint64_t)(x12 + x30) * (x18 + x33)) + (((uint64_t)(x14 + x32) * (x16 + x34)) + (((uint64_t)(x16 + x34) * (x14 + x32)) + ((uint64_t)(x18 + x33) * (x12 + x30))))) - (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x18 * x12)))));
- uint64_t x39 = ((((uint64_t)(x10 + x28) * (x18 + x33)) + (((uint64_t)(x12 + x30) * (x16 + x34)) + (((uint64_t)(x14 + x32) * (x14 + x32)) + (((uint64_t)(x16 + x34) * (x12 + x30)) + ((uint64_t)(x18 + x33) * (x10 + x28)))))) - (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + ((uint64_t)x18 * x10))))));
- uint64_t x40 = ((((uint64_t)(x8 + x26) * (x18 + x33)) + (((uint64_t)(x10 + x28) * (x16 + x34)) + (((uint64_t)(x12 + x30) * (x14 + x32)) + (((uint64_t)(x14 + x32) * (x12 + x30)) + (((uint64_t)(x16 + x34) * (x10 + x28)) + ((uint64_t)(x18 + x33) * (x8 + x26))))))) - (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x18 * x8)))))));
- uint64_t x41 = ((((uint64_t)(x6 + x24) * (x18 + x33)) + (((uint64_t)(x8 + x26) * (x16 + x34)) + (((uint64_t)(x10 + x28) * (x14 + x32)) + (((uint64_t)(x12 + x30) * (x12 + x30)) + (((uint64_t)(x14 + x32) * (x10 + x28)) + (((uint64_t)(x16 + x34) * (x8 + x26)) + ((uint64_t)(x18 + x33) * (x6 + x24)))))))) - (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((uint64_t)x18 * x6))))))));
- uint64_t x42 = ((((uint64_t)(x4 + x22) * (x18 + x33)) + (((uint64_t)(x6 + x24) * (x16 + x34)) + (((uint64_t)(x8 + x26) * (x14 + x32)) + (((uint64_t)(x10 + x28) * (x12 + x30)) + (((uint64_t)(x12 + x30) * (x10 + x28)) + (((uint64_t)(x14 + x32) * (x8 + x26)) + (((uint64_t)(x16 + x34) * (x6 + x24)) + ((uint64_t)(x18 + x33) * (x4 + x22))))))))) - (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + ((uint64_t)x18 * x4)))))))));
- uint64_t x43 = ((((uint64_t)(x2 + x20) * (x18 + x33)) + (((uint64_t)(x4 + x22) * (x16 + x34)) + (((uint64_t)(x6 + x24) * (x14 + x32)) + (((uint64_t)(x8 + x26) * (x12 + x30)) + (((uint64_t)(x10 + x28) * (x10 + x28)) + (((uint64_t)(x12 + x30) * (x8 + x26)) + (((uint64_t)(x14 + x32) * (x6 + x24)) + (((uint64_t)(x16 + x34) * (x4 + x22)) + ((uint64_t)(x18 + x33) * (x2 + x20)))))))))) - (((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))));
- uint64_t x44 = ((((uint64_t)(x2 + x20) * (x16 + x34)) + (((uint64_t)(x4 + x22) * (x14 + x32)) + (((uint64_t)(x6 + x24) * (x12 + x30)) + (((uint64_t)(x8 + x26) * (x10 + x28)) + (((uint64_t)(x10 + x28) * (x8 + x26)) + (((uint64_t)(x12 + x30) * (x6 + x24)) + (((uint64_t)(x14 + x32) * (x4 + x22)) + ((uint64_t)(x16 + x34) * (x2 + x20))))))))) - (((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))));
- uint64_t x45 = ((((uint64_t)(x2 + x20) * (x14 + x32)) + (((uint64_t)(x4 + x22) * (x12 + x30)) + (((uint64_t)(x6 + x24) * (x10 + x28)) + (((uint64_t)(x8 + x26) * (x8 + x26)) + (((uint64_t)(x10 + x28) * (x6 + x24)) + (((uint64_t)(x12 + x30) * (x4 + x22)) + ((uint64_t)(x14 + x32) * (x2 + x20)))))))) - (((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))));
- uint64_t x46 = ((((uint64_t)(x2 + x20) * (x12 + x30)) + (((uint64_t)(x4 + x22) * (x10 + x28)) + (((uint64_t)(x6 + x24) * (x8 + x26)) + (((uint64_t)(x8 + x26) * (x6 + x24)) + (((uint64_t)(x10 + x28) * (x4 + x22)) + ((uint64_t)(x12 + x30) * (x2 + x20))))))) - (((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))));
- uint64_t x47 = ((((uint64_t)(x2 + x20) * (x10 + x28)) + (((uint64_t)(x4 + x22) * (x8 + x26)) + (((uint64_t)(x6 + x24) * (x6 + x24)) + (((uint64_t)(x8 + x26) * (x4 + x22)) + ((uint64_t)(x10 + x28) * (x2 + x20)))))) - (((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))));
- uint64_t x48 = ((((uint64_t)(x2 + x20) * (x8 + x26)) + (((uint64_t)(x4 + x22) * (x6 + x24)) + (((uint64_t)(x6 + x24) * (x4 + x22)) + ((uint64_t)(x8 + x26) * (x2 + x20))))) - (((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))));
- uint64_t x49 = ((((uint64_t)(x2 + x20) * (x6 + x24)) + (((uint64_t)(x4 + x22) * (x4 + x22)) + ((uint64_t)(x6 + x24) * (x2 + x20)))) - (((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))));
- uint64_t x50 = ((((uint64_t)(x2 + x20) * (x4 + x22)) + ((uint64_t)(x4 + x22) * (x2 + x20))) - (((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)));
- uint64_t x51 = (((uint64_t)(x2 + x20) * (x2 + x20)) - ((uint64_t)x2 * x2));
- uint64_t x52 = (((((uint64_t)x18 * x18) + ((uint64_t)x33 * x33)) + x44) + x35);
- uint64_t x53 = ((((((uint64_t)x16 * x18) + ((uint64_t)x18 * x16)) + (((uint64_t)x34 * x33) + ((uint64_t)x33 * x34))) + x45) + x36);
- uint64_t x54 = ((((((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + ((uint64_t)x18 * x14))) + (((uint64_t)x32 * x33) + (((uint64_t)x34 * x34) + ((uint64_t)x33 * x32)))) + x46) + x37);
- uint64_t x55 = ((((((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((uint64_t)x18 * x12)))) + (((uint64_t)x30 * x33) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + ((uint64_t)x33 * x30))))) + x47) + x38);
- uint64_t x56 = ((((((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + ((uint64_t)x18 * x10))))) + (((uint64_t)x28 * x33) + (((uint64_t)x30 * x34) + (((uint64_t)x32 * x32) + (((uint64_t)x34 * x30) + ((uint64_t)x33 * x28)))))) + x48) + x39);
- uint64_t x57 = ((((((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x18 * x8)))))) + (((uint64_t)x26 * x33) + (((uint64_t)x28 * x34) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + (((uint64_t)x34 * x28) + ((uint64_t)x33 * x26))))))) + x49) + x40);
- uint64_t x58 = ((((((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((uint64_t)x18 * x6))))))) + (((uint64_t)x24 * x33) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + (((uint64_t)x30 * x30) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + ((uint64_t)x33 * x24)))))))) + x50) + x41);
- uint64_t x59 = ((((((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + ((uint64_t)x18 * x4)))))))) + (((uint64_t)x22 * x33) + (((uint64_t)x24 * x34) + (((uint64_t)x26 * x32) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (((uint64_t)x32 * x26) + (((uint64_t)x34 * x24) + ((uint64_t)x33 * x22))))))))) + x51) + x42);
- uint64_t x60 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (((uint64_t)x20 * x33) + (((uint64_t)x22 * x34) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + (((uint64_t)x34 * x22) + ((uint64_t)x33 * x20))))))))));
- uint64_t x61 = (((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (((uint64_t)x20 * x34) + (((uint64_t)x22 * x32) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + (((uint64_t)x32 * x22) + ((uint64_t)x34 * x20))))))))) + x35);
- uint64_t x62 = (((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (((uint64_t)x20 * x32) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + ((uint64_t)x32 * x20)))))))) + x36);
- uint64_t x63 = (((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + ((uint64_t)x30 * x20))))))) + x37);
- uint64_t x64 = (((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + ((uint64_t)x28 * x20)))))) + x38);
- uint64_t x65 = (((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + ((uint64_t)x26 * x20))))) + x39);
- uint64_t x66 = (((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + ((uint64_t)x24 * x20)))) + x40);
- uint64_t x67 = (((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x20 * x22) + ((uint64_t)x22 * x20))) + x41);
- uint64_t x68 = ((((uint64_t)x2 * x2) + ((uint64_t)x20 * x20)) + x42);
- uint64_t x69 = (x60 >> 0x19);
- uint32_t x70 = ((uint32_t)x60 & 0x1ffffff);
- uint64_t x71 = (x43 >> 0x19);
- uint32_t x72 = ((uint32_t)x43 & 0x1ffffff);
- uint64_t x73 = ((0x2000000 * x71) + x72);
- uint64_t x74 = (x73 >> 0x19);
- uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- uint64_t x76 = ((x69 + x59) + x74);
- uint64_t x77 = (x76 >> 0x19);
- uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- uint64_t x79 = (x68 + x74);
- uint64_t x80 = (x79 >> 0x19);
- uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- uint64_t x82 = (x77 + x58);
- uint64_t x83 = (x82 >> 0x19);
- uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- uint64_t x85 = (x80 + x67);
- uint64_t x86 = (x85 >> 0x19);
- uint32_t x87 = ((uint32_t)x85 & 0x1ffffff);
- uint64_t x88 = (x83 + x57);
- uint64_t x89 = (x88 >> 0x19);
- uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- uint64_t x91 = (x86 + x66);
- uint64_t x92 = (x91 >> 0x19);
- uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- uint64_t x94 = (x89 + x56);
- uint64_t x95 = (x94 >> 0x19);
- uint32_t x96 = ((uint32_t)x94 & 0x1ffffff);
- uint64_t x97 = (x92 + x65);
- uint64_t x98 = (x97 >> 0x19);
- uint32_t x99 = ((uint32_t)x97 & 0x1ffffff);
- uint64_t x100 = (x95 + x55);
- uint64_t x101 = (x100 >> 0x19);
- uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- uint64_t x103 = (x98 + x64);
- uint64_t x104 = (x103 >> 0x19);
- uint32_t x105 = ((uint32_t)x103 & 0x1ffffff);
- uint64_t x106 = (x101 + x54);
- uint64_t x107 = (x106 >> 0x19);
- uint32_t x108 = ((uint32_t)x106 & 0x1ffffff);
- uint64_t x109 = (x104 + x63);
- uint64_t x110 = (x109 >> 0x19);
- uint32_t x111 = ((uint32_t)x109 & 0x1ffffff);
- uint64_t x112 = (x107 + x53);
- uint64_t x113 = (x112 >> 0x19);
- uint32_t x114 = ((uint32_t)x112 & 0x1ffffff);
- uint64_t x115 = (x110 + x62);
- uint64_t x116 = (x115 >> 0x19);
- uint32_t x117 = ((uint32_t)x115 & 0x1ffffff);
- uint64_t x118 = (x113 + x52);
- uint64_t x119 = (x118 >> 0x19);
- uint32_t x120 = ((uint32_t)x118 & 0x1ffffff);
- uint64_t x121 = (x116 + x61);
- uint64_t x122 = (x121 >> 0x19);
- uint32_t x123 = ((uint32_t)x121 & 0x1ffffff);
- uint64_t x124 = (x119 + x75);
- uint32_t x125 = (uint32_t) (x124 >> 0x19);
- uint32_t x126 = ((uint32_t)x124 & 0x1ffffff);
- uint64_t x127 = (x122 + x70);
- uint32_t x128 = (uint32_t) (x127 >> 0x19);
- uint32_t x129 = ((uint32_t)x127 & 0x1ffffff);
- uint64_t x130 = (((uint64_t)0x2000000 * x125) + x126);
- uint32_t x131 = (uint32_t) (x130 >> 0x19);
- uint32_t x132 = ((uint32_t)x130 & 0x1ffffff);
- uint32_t x133 = ((x128 + x78) + x131);
- uint32_t x134 = (x133 >> 0x19);
- uint32_t x135 = (x133 & 0x1ffffff);
- uint32_t x136 = (x81 + x131);
- uint32_t x137 = (x136 >> 0x19);
- uint32_t x138 = (x136 & 0x1ffffff);
- return (Return x132, Return x120, Return x114, Return x108, Return x102, Return x96, Return x90, (x134 + x84), Return x135, Return x129, Return x123, Return x117, Return x111, Return x105, Return x99, Return x93, (x137 + x87), Return x138))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e450m2e225m1_18limbs/fesquareDisplay.v b/src/Specific/solinas32_2e450m2e225m1_18limbs/fesquareDisplay.v
deleted file mode 100644
index b96996a46..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_18limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e450m2e225m1_18limbs/fesub.c b/src/Specific/solinas32_2e450m2e225m1_18limbs/fesub.c
deleted file mode 100644
index 286014641..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/fesub.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void fesub(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- out[0] = ((0x3fffffe + x5) - x39);
- out[1] = ((0x3fffffe + x7) - x41);
- out[2] = ((0x3fffffe + x9) - x43);
- out[3] = ((0x3fffffe + x11) - x45);
- out[4] = ((0x3fffffe + x13) - x47);
- out[5] = ((0x3fffffe + x15) - x49);
- out[6] = ((0x3fffffe + x17) - x51);
- out[7] = ((0x3fffffe + x19) - x53);
- out[8] = ((0x3fffffe + x21) - x55);
- out[9] = ((0x3fffffc + x23) - x57);
- out[10] = ((0x3fffffe + x25) - x59);
- out[11] = ((0x3fffffe + x27) - x61);
- out[12] = ((0x3fffffe + x29) - x63);
- out[13] = ((0x3fffffe + x31) - x65);
- out[14] = ((0x3fffffe + x33) - x67);
- out[15] = ((0x3fffffe + x35) - x69);
- out[16] = ((0x3fffffe + x37) - x71);
- out[17] = ((0x3fffffe + x36) - x70);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e450m2e225m1_18limbs/fesub.v b/src/Specific/solinas32_2e450m2e225m1_18limbs/fesub.v
deleted file mode 100644
index 185414f1f..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_18limbs.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_2e450m2e225m1_18limbs/fesubDisplay.log b/src/Specific/solinas32_2e450m2e225m1_18limbs/fesubDisplay.log
deleted file mode 100644
index 888ae180b..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- (((0x3fffffe + x36) - x70), ((0x3fffffe + x37) - x71), ((0x3fffffe + x35) - x69), ((0x3fffffe + x33) - x67), ((0x3fffffe + x31) - x65), ((0x3fffffe + x29) - x63), ((0x3fffffe + x27) - x61), ((0x3fffffe + x25) - x59), ((0x3fffffc + x23) - x57), ((0x3fffffe + x21) - x55), ((0x3fffffe + x19) - x53), ((0x3fffffe + x17) - x51), ((0x3fffffe + x15) - x49), ((0x3fffffe + x13) - x47), ((0x3fffffe + x11) - x45), ((0x3fffffe + x9) - x43), ((0x3fffffe + x7) - x41), ((0x3fffffe + x5) - x39)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e450m2e225m1_18limbs/fesubDisplay.v b/src/Specific/solinas32_2e450m2e225m1_18limbs/fesubDisplay.v
deleted file mode 100644
index 4c87b9c94..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_18limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e450m2e225m1_18limbs/freeze.c b/src/Specific/solinas32_2e450m2e225m1_18limbs/freeze.c
deleted file mode 100644
index a13a54c3d..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/freeze.c
+++ /dev/null
@@ -1,94 +0,0 @@
-static void freeze(uint32_t out[18], const uint32_t in1[18]) {
- { const uint32_t x33 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x4, 0x1ffffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x6, 0x1ffffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x8, 0x1ffffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x10, 0x1ffffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x12, 0x1ffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x14, 0x1ffffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x16, 0x1ffffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x18, 0x1ffffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x20, 0x1fffffe);
- { uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x22, 0x1ffffff);
- { uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x24, 0x1ffffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x26, 0x1ffffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x28, 0x1ffffff);
- { uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x30, 0x1ffffff);
- { uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x32, 0x1ffffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x34, 0x1ffffff);
- { uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x33, 0x1ffffff);
- { uint32_t x89 = cmovznz32(x88, 0x0, 0xffffffff);
- { uint32_t x90 = (x89 & 0x1ffffff);
- { uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x36, Return x90);
- { uint32_t x94 = (x89 & 0x1ffffff);
- { uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x39, Return x94);
- { uint32_t x98 = (x89 & 0x1ffffff);
- { uint32_t x100, uint8_t x101 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x42, Return x98);
- { uint32_t x102 = (x89 & 0x1ffffff);
- { uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x45, Return x102);
- { uint32_t x106 = (x89 & 0x1ffffff);
- { uint32_t x108, uint8_t x109 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x48, Return x106);
- { uint32_t x110 = (x89 & 0x1ffffff);
- { uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x51, Return x110);
- { uint32_t x114 = (x89 & 0x1ffffff);
- { uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x54, Return x114);
- { uint32_t x118 = (x89 & 0x1ffffff);
- { uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x57, Return x118);
- { uint32_t x122 = (x89 & 0x1ffffff);
- { uint32_t x124, uint8_t x125 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x60, Return x122);
- { uint32_t x126 = (x89 & 0x1fffffe);
- { uint32_t x128, uint8_t x129 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x125, Return x63, Return x126);
- { uint32_t x130 = (x89 & 0x1ffffff);
- { uint32_t x132, uint8_t x133 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x129, Return x66, Return x130);
- { uint32_t x134 = (x89 & 0x1ffffff);
- { uint32_t x136, uint8_t x137 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x133, Return x69, Return x134);
- { uint32_t x138 = (x89 & 0x1ffffff);
- { uint32_t x140, uint8_t x141 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x137, Return x72, Return x138);
- { uint32_t x142 = (x89 & 0x1ffffff);
- { uint32_t x144, uint8_t x145 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x141, Return x75, Return x142);
- { uint32_t x146 = (x89 & 0x1ffffff);
- { uint32_t x148, uint8_t x149 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x145, Return x78, Return x146);
- { uint32_t x150 = (x89 & 0x1ffffff);
- { uint32_t x152, uint8_t x153 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x149, Return x81, Return x150);
- { uint32_t x154 = (x89 & 0x1ffffff);
- { uint32_t x156, uint8_t x157 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x153, Return x84, Return x154);
- { uint32_t x158 = (x89 & 0x1ffffff);
- { uint32_t x160, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x157, Return x87, Return x158);
- out[0] = x92;
- out[1] = x96;
- out[2] = x100;
- out[3] = x104;
- out[4] = x108;
- out[5] = x112;
- out[6] = x116;
- out[7] = x120;
- out[8] = x124;
- out[9] = x128;
- out[10] = x132;
- out[11] = x136;
- out[12] = x140;
- out[13] = x144;
- out[14] = x148;
- out[15] = x152;
- out[16] = x156;
- out[17] = x160;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e450m2e225m1_18limbs/freeze.v b/src/Specific/solinas32_2e450m2e225m1_18limbs/freeze.v
deleted file mode 100644
index cb8efbb4b..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_18limbs.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_2e450m2e225m1_18limbs/freezeDisplay.log b/src/Specific/solinas32_2e450m2e225m1_18limbs/freezeDisplay.log
deleted file mode 100644
index 405267392..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/freezeDisplay.log
+++ /dev/null
@@ -1,62 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x33, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x4, 0x1ffffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x6, 0x1ffffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x8, 0x1ffffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x10, 0x1ffffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x12, 0x1ffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x14, 0x1ffffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x16, 0x1ffffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x18, 0x1ffffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x20, 0x1fffffe);
- uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x22, 0x1ffffff);
- uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x24, 0x1ffffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x26, 0x1ffffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x28, 0x1ffffff);
- uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x30, 0x1ffffff);
- uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x32, 0x1ffffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x34, 0x1ffffff);
- uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x33, 0x1ffffff);
- uint32_t x89 = cmovznz32(x88, 0x0, 0xffffffff);
- uint32_t x90 = (x89 & 0x1ffffff);
- uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x36, Return x90);
- uint32_t x94 = (x89 & 0x1ffffff);
- uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x39, Return x94);
- uint32_t x98 = (x89 & 0x1ffffff);
- uint32_t x100, uint8_t x101 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x42, Return x98);
- uint32_t x102 = (x89 & 0x1ffffff);
- uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x45, Return x102);
- uint32_t x106 = (x89 & 0x1ffffff);
- uint32_t x108, uint8_t x109 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x48, Return x106);
- uint32_t x110 = (x89 & 0x1ffffff);
- uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x51, Return x110);
- uint32_t x114 = (x89 & 0x1ffffff);
- uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x54, Return x114);
- uint32_t x118 = (x89 & 0x1ffffff);
- uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x57, Return x118);
- uint32_t x122 = (x89 & 0x1ffffff);
- uint32_t x124, uint8_t x125 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x60, Return x122);
- uint32_t x126 = (x89 & 0x1fffffe);
- uint32_t x128, uint8_t x129 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x125, Return x63, Return x126);
- uint32_t x130 = (x89 & 0x1ffffff);
- uint32_t x132, uint8_t x133 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x129, Return x66, Return x130);
- uint32_t x134 = (x89 & 0x1ffffff);
- uint32_t x136, uint8_t x137 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x133, Return x69, Return x134);
- uint32_t x138 = (x89 & 0x1ffffff);
- uint32_t x140, uint8_t x141 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x137, Return x72, Return x138);
- uint32_t x142 = (x89 & 0x1ffffff);
- uint32_t x144, uint8_t x145 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x141, Return x75, Return x142);
- uint32_t x146 = (x89 & 0x1ffffff);
- uint32_t x148, uint8_t x149 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x145, Return x78, Return x146);
- uint32_t x150 = (x89 & 0x1ffffff);
- uint32_t x152, uint8_t x153 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x149, Return x81, Return x150);
- uint32_t x154 = (x89 & 0x1ffffff);
- uint32_t x156, uint8_t x157 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x153, Return x84, Return x154);
- uint32_t x158 = (x89 & 0x1ffffff);
- uint32_t x160, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x157, Return x87, Return x158);
- (Return x160, Return x156, Return x152, Return x148, Return x144, Return x140, Return x136, Return x132, Return x128, Return x124, Return x120, Return x116, Return x112, Return x108, Return x104, Return x100, Return x96, Return x92))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e450m2e225m1_18limbs/freezeDisplay.v b/src/Specific/solinas32_2e450m2e225m1_18limbs/freezeDisplay.v
deleted file mode 100644
index 02926153c..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_18limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e450m2e225m1_18limbs/py_interpreter.sh b/src/Specific/solinas32_2e450m2e225m1_18limbs/py_interpreter.sh
deleted file mode 100755
index a8276b1a3..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_18limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**450 - 2**225 - 1' -Dmodulus_bytes='25' -Da24='121665'
diff --git a/src/Specific/solinas32_2e450m2e225m1_20limbs/CurveParameters.v b/src/Specific/solinas32_2e450m2e225m1_20limbs/CurveParameters.v
deleted file mode 100644
index 5dd10bdcd..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_20limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^450 - 2^225 - 1
-Base: 22.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 20%nat;
- base := 22 + 1/2;
- bitwidth := 32;
- s := 2^450;
- c := [(1, 1); (2^225, 1)];
- carry_chains := Some [[9; 19]; [10; 0; 11; 1; 12; 2; 13; 3; 14; 4; 15; 5; 16; 6; 17; 7; 18; 8; 19; 9]; [10; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- 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_2e450m2e225m1_20limbs/Synthesis.v b/src/Specific/solinas32_2e450m2e225m1_20limbs/Synthesis.v
deleted file mode 100644
index e8edfe4fc..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_20limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_20limbs.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_2e450m2e225m1_20limbs/compiler.sh b/src/Specific/solinas32_2e450m2e225m1_20limbs/compiler.sh
deleted file mode 100755
index 80c5ba0d3..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_20limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='20' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' "$@"
diff --git a/src/Specific/solinas32_2e450m2e225m1_20limbs/compilerxx.sh b/src/Specific/solinas32_2e450m2e225m1_20limbs/compilerxx.sh
deleted file mode 100755
index 4bc3cb828..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_20limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22,23,22}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='20' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' "$@"
diff --git a/src/Specific/solinas32_2e450m2e225m1_20limbs/feadd.c b/src/Specific/solinas32_2e450m2e225m1_20limbs/feadd.c
deleted file mode 100644
index 28ee6f665..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_20limbs/feadd.c
+++ /dev/null
@@ -1,63 +0,0 @@
-static void feadd(uint32_t out[20], const uint32_t in1[20], const uint32_t in2[20]) {
- { const uint32_t x40 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x78 = in2[19];
- { const uint32_t x79 = in2[18];
- { const uint32_t x77 = in2[17];
- { const uint32_t x75 = in2[16];
- { const uint32_t x73 = in2[15];
- { const uint32_t x71 = in2[14];
- { const uint32_t x69 = in2[13];
- { const uint32_t x67 = in2[12];
- { const uint32_t x65 = in2[11];
- { const uint32_t x63 = in2[10];
- { const uint32_t x61 = in2[9];
- { const uint32_t x59 = in2[8];
- { const uint32_t x57 = in2[7];
- { const uint32_t x55 = in2[6];
- { const uint32_t x53 = in2[5];
- { const uint32_t x51 = in2[4];
- { const uint32_t x49 = in2[3];
- { const uint32_t x47 = in2[2];
- { const uint32_t x45 = in2[1];
- { const uint32_t x43 = in2[0];
- out[0] = (x5 + x43);
- out[1] = (x7 + x45);
- out[2] = (x9 + x47);
- out[3] = (x11 + x49);
- out[4] = (x13 + x51);
- out[5] = (x15 + x53);
- out[6] = (x17 + x55);
- out[7] = (x19 + x57);
- out[8] = (x21 + x59);
- out[9] = (x23 + x61);
- out[10] = (x25 + x63);
- out[11] = (x27 + x65);
- out[12] = (x29 + x67);
- out[13] = (x31 + x69);
- out[14] = (x33 + x71);
- out[15] = (x35 + x73);
- out[16] = (x37 + x75);
- out[17] = (x39 + x77);
- out[18] = (x41 + x79);
- out[19] = (x40 + x78);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e450m2e225m1_20limbs/feadd.v b/src/Specific/solinas32_2e450m2e225m1_20limbs/feadd.v
deleted file mode 100644
index 2a542e1d8..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_20limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_20limbs.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_2e450m2e225m1_20limbs/feaddDisplay.log b/src/Specific/solinas32_2e450m2e225m1_20limbs/feaddDisplay.log
deleted file mode 100644
index eebe17777..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_20limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x40, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x78, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43))%core,
- ((x40 + x78), (x41 + x79), (x39 + x77), (x37 + x75), (x35 + x73), (x33 + x71), (x31 + x69), (x29 + x67), (x27 + x65), (x25 + x63), (x23 + x61), (x21 + x59), (x19 + x57), (x17 + x55), (x15 + x53), (x13 + x51), (x11 + x49), (x9 + x47), (x7 + x45), (x5 + x43)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e450m2e225m1_20limbs/feaddDisplay.v b/src/Specific/solinas32_2e450m2e225m1_20limbs/feaddDisplay.v
deleted file mode 100644
index df7f7b477..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_20limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_20limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e450m2e225m1_20limbs/fecarry.v b/src/Specific/solinas32_2e450m2e225m1_20limbs/fecarry.v
deleted file mode 100644
index 4c8cbb643..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_20limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_20limbs.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_2e450m2e225m1_20limbs/fecarryDisplay.v b/src/Specific/solinas32_2e450m2e225m1_20limbs/fecarryDisplay.v
deleted file mode 100644
index 644346518..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_20limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_20limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e450m2e225m1_20limbs/femul.v b/src/Specific/solinas32_2e450m2e225m1_20limbs/femul.v
deleted file mode 100644
index 6b09c1bc8..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_20limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_20limbs.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_2e450m2e225m1_20limbs/femulDisplay.v b/src/Specific/solinas32_2e450m2e225m1_20limbs/femulDisplay.v
deleted file mode 100644
index 5cb523d55..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_20limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_20limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e450m2e225m1_20limbs/fesquare.v b/src/Specific/solinas32_2e450m2e225m1_20limbs/fesquare.v
deleted file mode 100644
index 30e0062a1..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_20limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_20limbs.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_2e450m2e225m1_20limbs/fesquareDisplay.v b/src/Specific/solinas32_2e450m2e225m1_20limbs/fesquareDisplay.v
deleted file mode 100644
index 505034b8d..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_20limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_20limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e450m2e225m1_20limbs/fesub.c b/src/Specific/solinas32_2e450m2e225m1_20limbs/fesub.c
deleted file mode 100644
index ed639ad94..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_20limbs/fesub.c
+++ /dev/null
@@ -1,63 +0,0 @@
-static void fesub(uint32_t out[20], const uint32_t in1[20], const uint32_t in2[20]) {
- { const uint32_t x40 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x78 = in2[19];
- { const uint32_t x79 = in2[18];
- { const uint32_t x77 = in2[17];
- { const uint32_t x75 = in2[16];
- { const uint32_t x73 = in2[15];
- { const uint32_t x71 = in2[14];
- { const uint32_t x69 = in2[13];
- { const uint32_t x67 = in2[12];
- { const uint32_t x65 = in2[11];
- { const uint32_t x63 = in2[10];
- { const uint32_t x61 = in2[9];
- { const uint32_t x59 = in2[8];
- { const uint32_t x57 = in2[7];
- { const uint32_t x55 = in2[6];
- { const uint32_t x53 = in2[5];
- { const uint32_t x51 = in2[4];
- { const uint32_t x49 = in2[3];
- { const uint32_t x47 = in2[2];
- { const uint32_t x45 = in2[1];
- { const uint32_t x43 = in2[0];
- out[0] = ((0xfffffe + x5) - x43);
- out[1] = ((0x7ffffe + x7) - x45);
- out[2] = ((0xfffffe + x9) - x47);
- out[3] = ((0x7ffffe + x11) - x49);
- out[4] = ((0xfffffe + x13) - x51);
- out[5] = ((0x7ffffe + x15) - x53);
- out[6] = ((0xfffffe + x17) - x55);
- out[7] = ((0x7ffffe + x19) - x57);
- out[8] = ((0xfffffe + x21) - x59);
- out[9] = ((0x7ffffe + x23) - x61);
- out[10] = ((0xfffffc + x25) - x63);
- out[11] = ((0x7ffffe + x27) - x65);
- out[12] = ((0xfffffe + x29) - x67);
- out[13] = ((0x7ffffe + x31) - x69);
- out[14] = ((0xfffffe + x33) - x71);
- out[15] = ((0x7ffffe + x35) - x73);
- out[16] = ((0xfffffe + x37) - x75);
- out[17] = ((0x7ffffe + x39) - x77);
- out[18] = ((0xfffffe + x41) - x79);
- out[19] = ((0x7ffffe + x40) - x78);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e450m2e225m1_20limbs/fesub.v b/src/Specific/solinas32_2e450m2e225m1_20limbs/fesub.v
deleted file mode 100644
index be6f22593..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_20limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_20limbs.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_2e450m2e225m1_20limbs/fesubDisplay.log b/src/Specific/solinas32_2e450m2e225m1_20limbs/fesubDisplay.log
deleted file mode 100644
index 84a9874f5..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_20limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x40, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x78, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43))%core,
- (((0x7ffffe + x40) - x78), ((0xfffffe + x41) - x79), ((0x7ffffe + x39) - x77), ((0xfffffe + x37) - x75), ((0x7ffffe + x35) - x73), ((0xfffffe + x33) - x71), ((0x7ffffe + x31) - x69), ((0xfffffe + x29) - x67), ((0x7ffffe + x27) - x65), ((0xfffffc + x25) - x63), ((0x7ffffe + x23) - x61), ((0xfffffe + x21) - x59), ((0x7ffffe + x19) - x57), ((0xfffffe + x17) - x55), ((0x7ffffe + x15) - x53), ((0xfffffe + x13) - x51), ((0x7ffffe + x11) - x49), ((0xfffffe + x9) - x47), ((0x7ffffe + x7) - x45), ((0xfffffe + x5) - x43)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e450m2e225m1_20limbs/fesubDisplay.v b/src/Specific/solinas32_2e450m2e225m1_20limbs/fesubDisplay.v
deleted file mode 100644
index cb404e986..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_20limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_20limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e450m2e225m1_20limbs/freeze.c b/src/Specific/solinas32_2e450m2e225m1_20limbs/freeze.c
deleted file mode 100644
index 20510dff8..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_20limbs/freeze.c
+++ /dev/null
@@ -1,104 +0,0 @@
-static void freeze(uint32_t out[20], const uint32_t in1[20]) {
- { const uint32_t x37 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffff);
- { uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x4, 0x3fffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x6, 0x7fffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x8, 0x3fffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x10, 0x7fffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x12, 0x3fffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x14, 0x7fffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x16, 0x3fffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x18, 0x7fffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x20, 0x3fffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x22, 0x7ffffe);
- { uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x24, 0x3fffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x26, 0x7fffff);
- { uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x28, 0x3fffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x30, 0x7fffff);
- { uint32_t x85, uint8_t x86 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x32, 0x3fffff);
- { uint32_t x88, uint8_t x89 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x34, 0x7fffff);
- { uint32_t x91, uint8_t x92 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x89, Return x36, 0x3fffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x38, 0x7fffff);
- { uint32_t x97, uint8_t x98 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x37, 0x3fffff);
- { uint32_t x99 = cmovznz32(x98, 0x0, 0xffffffff);
- { uint32_t x100 = (x99 & 0x7fffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x40, Return x100);
- { uint32_t x104 = (x99 & 0x3fffff);
- { uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x43, Return x104);
- { uint32_t x108 = (x99 & 0x7fffff);
- { uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x46, Return x108);
- { uint32_t x112 = (x99 & 0x3fffff);
- { uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x49, Return x112);
- { uint32_t x116 = (x99 & 0x7fffff);
- { uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x52, Return x116);
- { uint32_t x120 = (x99 & 0x3fffff);
- { uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x55, Return x120);
- { uint32_t x124 = (x99 & 0x7fffff);
- { uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x58, Return x124);
- { uint32_t x128 = (x99 & 0x3fffff);
- { uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x61, Return x128);
- { uint32_t x132 = (x99 & 0x7fffff);
- { uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x64, Return x132);
- { uint32_t x136 = (x99 & 0x3fffff);
- { uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x67, Return x136);
- { uint32_t x140 = (x99 & 0x7ffffe);
- { uint32_t x142, uint8_t x143 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x70, Return x140);
- { uint32_t x144 = (x99 & 0x3fffff);
- { uint32_t x146, uint8_t x147 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x143, Return x73, Return x144);
- { uint32_t x148 = (x99 & 0x7fffff);
- { uint32_t x150, uint8_t x151 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x147, Return x76, Return x148);
- { uint32_t x152 = (x99 & 0x3fffff);
- { uint32_t x154, uint8_t x155 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x151, Return x79, Return x152);
- { uint32_t x156 = (x99 & 0x7fffff);
- { uint32_t x158, uint8_t x159 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x155, Return x82, Return x156);
- { uint32_t x160 = (x99 & 0x3fffff);
- { uint32_t x162, uint8_t x163 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x159, Return x85, Return x160);
- { uint32_t x164 = (x99 & 0x7fffff);
- { uint32_t x166, uint8_t x167 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x163, Return x88, Return x164);
- { uint32_t x168 = (x99 & 0x3fffff);
- { uint32_t x170, uint8_t x171 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x167, Return x91, Return x168);
- { uint32_t x172 = (x99 & 0x7fffff);
- { uint32_t x174, uint8_t x175 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x171, Return x94, Return x172);
- { uint32_t x176 = (x99 & 0x3fffff);
- { uint32_t x178, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x175, Return x97, Return x176);
- out[0] = x102;
- out[1] = x106;
- out[2] = x110;
- out[3] = x114;
- out[4] = x118;
- out[5] = x122;
- out[6] = x126;
- out[7] = x130;
- out[8] = x134;
- out[9] = x138;
- out[10] = x142;
- out[11] = x146;
- out[12] = x150;
- out[13] = x154;
- out[14] = x158;
- out[15] = x162;
- out[16] = x166;
- out[17] = x170;
- out[18] = x174;
- out[19] = x178;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e450m2e225m1_20limbs/freeze.v b/src/Specific/solinas32_2e450m2e225m1_20limbs/freeze.v
deleted file mode 100644
index 38d438a36..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_20limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_20limbs.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_2e450m2e225m1_20limbs/freezeDisplay.log b/src/Specific/solinas32_2e450m2e225m1_20limbs/freezeDisplay.log
deleted file mode 100644
index f02273677..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_20limbs/freezeDisplay.log
+++ /dev/null
@@ -1,68 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x37, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffff);
- uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x4, 0x3fffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x6, 0x7fffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x8, 0x3fffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x10, 0x7fffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x12, 0x3fffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x14, 0x7fffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x16, 0x3fffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x18, 0x7fffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x20, 0x3fffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x22, 0x7ffffe);
- uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x24, 0x3fffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x26, 0x7fffff);
- uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x28, 0x3fffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x30, 0x7fffff);
- uint32_t x85, uint8_t x86 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x32, 0x3fffff);
- uint32_t x88, uint8_t x89 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x34, 0x7fffff);
- uint32_t x91, uint8_t x92 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x89, Return x36, 0x3fffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x38, 0x7fffff);
- uint32_t x97, uint8_t x98 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x37, 0x3fffff);
- uint32_t x99 = cmovznz32(x98, 0x0, 0xffffffff);
- uint32_t x100 = (x99 & 0x7fffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x40, Return x100);
- uint32_t x104 = (x99 & 0x3fffff);
- uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x43, Return x104);
- uint32_t x108 = (x99 & 0x7fffff);
- uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x46, Return x108);
- uint32_t x112 = (x99 & 0x3fffff);
- uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x49, Return x112);
- uint32_t x116 = (x99 & 0x7fffff);
- uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x52, Return x116);
- uint32_t x120 = (x99 & 0x3fffff);
- uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x55, Return x120);
- uint32_t x124 = (x99 & 0x7fffff);
- uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x58, Return x124);
- uint32_t x128 = (x99 & 0x3fffff);
- uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x61, Return x128);
- uint32_t x132 = (x99 & 0x7fffff);
- uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x64, Return x132);
- uint32_t x136 = (x99 & 0x3fffff);
- uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x67, Return x136);
- uint32_t x140 = (x99 & 0x7ffffe);
- uint32_t x142, uint8_t x143 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x70, Return x140);
- uint32_t x144 = (x99 & 0x3fffff);
- uint32_t x146, uint8_t x147 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x143, Return x73, Return x144);
- uint32_t x148 = (x99 & 0x7fffff);
- uint32_t x150, uint8_t x151 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x147, Return x76, Return x148);
- uint32_t x152 = (x99 & 0x3fffff);
- uint32_t x154, uint8_t x155 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x151, Return x79, Return x152);
- uint32_t x156 = (x99 & 0x7fffff);
- uint32_t x158, uint8_t x159 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x155, Return x82, Return x156);
- uint32_t x160 = (x99 & 0x3fffff);
- uint32_t x162, uint8_t x163 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x159, Return x85, Return x160);
- uint32_t x164 = (x99 & 0x7fffff);
- uint32_t x166, uint8_t x167 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x163, Return x88, Return x164);
- uint32_t x168 = (x99 & 0x3fffff);
- uint32_t x170, uint8_t x171 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x167, Return x91, Return x168);
- uint32_t x172 = (x99 & 0x7fffff);
- uint32_t x174, uint8_t x175 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x171, Return x94, Return x172);
- uint32_t x176 = (x99 & 0x3fffff);
- uint32_t x178, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x175, Return x97, Return x176);
- (Return x178, Return x174, Return x170, Return x166, Return x162, Return x158, Return x154, Return x150, Return x146, Return x142, Return x138, Return x134, Return x130, Return x126, Return x122, Return x118, Return x114, Return x110, Return x106, Return x102))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e450m2e225m1_20limbs/freezeDisplay.v b/src/Specific/solinas32_2e450m2e225m1_20limbs/freezeDisplay.v
deleted file mode 100644
index eb0eb0cdd..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_20limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e450m2e225m1_20limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e450m2e225m1_20limbs/py_interpreter.sh b/src/Specific/solinas32_2e450m2e225m1_20limbs/py_interpreter.sh
deleted file mode 100755
index 7d162026d..000000000
--- a/src/Specific/solinas32_2e450m2e225m1_20limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**450 - 2**225 - 1' -Dmodulus_bytes='22.5' -Da24='121665'
diff --git a/src/Specific/solinas32_2e452m3_17limbs/CurveParameters.v b/src/Specific/solinas32_2e452m3_17limbs/CurveParameters.v
deleted file mode 100644
index 6eaf1ff77..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^452 - 3
-Base: 26 + 10/17
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 17%nat;
- base := 26 + 10/17;
- bitwidth := 32;
- s := 2^452;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 17); [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_2e452m3_17limbs/Synthesis.v b/src/Specific/solinas32_2e452m3_17limbs/Synthesis.v
deleted file mode 100644
index cf5d313db..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e452m3_17limbs.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_2e452m3_17limbs/compiler.sh b/src/Specific/solinas32_2e452m3_17limbs/compiler.sh
deleted file mode 100755
index 9f25e992a..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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,27,26,27,26,27,27,26,27,26,27,27,26,27,26,27,26}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<452) - 3' "$@"
diff --git a/src/Specific/solinas32_2e452m3_17limbs/compilerxx.sh b/src/Specific/solinas32_2e452m3_17limbs/compilerxx.sh
deleted file mode 100755
index 2965d120b..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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,27,26,27,26,27,27,26,27,26,27,27,26,27,26,27,26}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='17' -Dq_mpz='(1_mpz<<452) - 3' "$@"
diff --git a/src/Specific/solinas32_2e452m3_17limbs/feadd.c b/src/Specific/solinas32_2e452m3_17limbs/feadd.c
deleted file mode 100644
index 30eb11eae..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/feadd.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void feadd(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- out[0] = (x5 + x37);
- out[1] = (x7 + x39);
- out[2] = (x9 + x41);
- out[3] = (x11 + x43);
- out[4] = (x13 + x45);
- out[5] = (x15 + x47);
- out[6] = (x17 + x49);
- out[7] = (x19 + x51);
- out[8] = (x21 + x53);
- out[9] = (x23 + x55);
- out[10] = (x25 + x57);
- out[11] = (x27 + x59);
- out[12] = (x29 + x61);
- out[13] = (x31 + x63);
- out[14] = (x33 + x65);
- out[15] = (x35 + x67);
- out[16] = (x34 + x66);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e452m3_17limbs/feadd.v b/src/Specific/solinas32_2e452m3_17limbs/feadd.v
deleted file mode 100644
index d4d54bafd..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e452m3_17limbs.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_2e452m3_17limbs/feaddDisplay.log b/src/Specific/solinas32_2e452m3_17limbs/feaddDisplay.log
deleted file mode 100644
index 7324e0941..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- ((x34 + x66), (x35 + x67), (x33 + x65), (x31 + x63), (x29 + x61), (x27 + x59), (x25 + x57), (x23 + x55), (x21 + x53), (x19 + x51), (x17 + x49), (x15 + x47), (x13 + x45), (x11 + x43), (x9 + x41), (x7 + x39), (x5 + x37)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e452m3_17limbs/feaddDisplay.v b/src/Specific/solinas32_2e452m3_17limbs/feaddDisplay.v
deleted file mode 100644
index ae868d519..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e452m3_17limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e452m3_17limbs/fecarry.v b/src/Specific/solinas32_2e452m3_17limbs/fecarry.v
deleted file mode 100644
index 6fb898881..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e452m3_17limbs.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_2e452m3_17limbs/fecarryDisplay.v b/src/Specific/solinas32_2e452m3_17limbs/fecarryDisplay.v
deleted file mode 100644
index 90b107705..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e452m3_17limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e452m3_17limbs/femul.c b/src/Specific/solinas32_2e452m3_17limbs/femul.c
deleted file mode 100644
index a50528090..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/femul.c
+++ /dev/null
@@ -1,127 +0,0 @@
-static void femul(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- { uint64_t x68 = (((uint64_t)x5 * x66) + (((uint64_t)x7 * x67) + ((0x2 * ((uint64_t)x9 * x65)) + (((uint64_t)x11 * x63) + ((0x2 * ((uint64_t)x13 * x61)) + (((uint64_t)x15 * x59) + (((uint64_t)x17 * x57) + ((0x2 * ((uint64_t)x19 * x55)) + (((uint64_t)x21 * x53) + ((0x2 * ((uint64_t)x23 * x51)) + (((uint64_t)x25 * x49) + (((uint64_t)x27 * x47) + ((0x2 * ((uint64_t)x29 * x45)) + (((uint64_t)x31 * x43) + ((0x2 * ((uint64_t)x33 * x41)) + (((uint64_t)x35 * x39) + ((uint64_t)x34 * x37)))))))))))))))));
- { uint64_t x69 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + (((uint64_t)x15 * x57) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + (((uint64_t)x25 * x47) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + ((uint64_t)x35 * x37)))))))))))))))) + (0x3 * (0x2 * ((uint64_t)x34 * x66))));
- { uint64_t x70 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + ((0x2 * ((uint64_t)x9 * x61)) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + ((0x2 * ((uint64_t)x19 * x51)) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + ((0x2 * ((uint64_t)x29 * x41)) + (((uint64_t)x31 * x39) + ((uint64_t)x33 * x37))))))))))))))) + (0x3 * (((uint64_t)x35 * x66) + ((uint64_t)x34 * x67))));
- { uint64_t x71 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + (((uint64_t)x11 * x57) + ((0x2 * ((uint64_t)x13 * x55)) + (((uint64_t)x15 * x53) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + (((uint64_t)x21 * x47) + ((0x2 * ((uint64_t)x23 * x45)) + (((uint64_t)x25 * x43) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((uint64_t)x31 * x37)))))))))))))) + (0x3 * ((0x2 * ((uint64_t)x33 * x66)) + (((uint64_t)x35 * x67) + (0x2 * ((uint64_t)x34 * x65))))));
- { uint64_t x72 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + ((uint64_t)x29 * x37))))))))))))) + (0x3 * (((uint64_t)x31 * x66) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + ((uint64_t)x34 * x63))))));
- { uint64_t x73 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + ((0x2 * ((uint64_t)x9 * x55)) + (((uint64_t)x11 * x53) + ((0x2 * ((uint64_t)x13 * x51)) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + ((0x2 * ((uint64_t)x19 * x45)) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + (((uint64_t)x25 * x39) + ((uint64_t)x27 * x37)))))))))))) + (0x3 * ((0x2 * ((uint64_t)x29 * x66)) + (((uint64_t)x31 * x67) + ((0x2 * ((uint64_t)x33 * x65)) + (((uint64_t)x35 * x63) + (0x2 * ((uint64_t)x34 * x61))))))));
- { uint64_t x74 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + (((uint64_t)x15 * x47) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + ((uint64_t)x25 * x37))))))))))) + (0x3 * ((0x2 * ((uint64_t)x27 * x66)) + ((0x2 * ((uint64_t)x29 * x67)) + ((0x2 * ((uint64_t)x31 * x65)) + ((0x2 * ((uint64_t)x33 * x63)) + ((0x2 * ((uint64_t)x35 * x61)) + (0x2 * ((uint64_t)x34 * x59)))))))));
- { uint64_t x75 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + ((0x2 * ((uint64_t)x9 * x51)) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((0x2 * ((uint64_t)x19 * x41)) + (((uint64_t)x21 * x39) + ((uint64_t)x23 * x37)))))))))) + (0x3 * (((uint64_t)x25 * x66) + (((uint64_t)x27 * x67) + ((0x2 * ((uint64_t)x29 * x65)) + (((uint64_t)x31 * x63) + ((0x2 * ((uint64_t)x33 * x61)) + (((uint64_t)x35 * x59) + ((uint64_t)x34 * x57)))))))));
- { uint64_t x76 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + ((0x2 * ((uint64_t)x13 * x45)) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + ((uint64_t)x21 * x37))))))))) + (0x3 * ((0x2 * ((uint64_t)x23 * x66)) + (((uint64_t)x25 * x67) + ((0x2 * ((uint64_t)x27 * x65)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + (((uint64_t)x35 * x57) + (0x2 * ((uint64_t)x34 * x55)))))))))));
- { uint64_t x77 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + ((uint64_t)x19 * x37)))))))) + (0x3 * (((uint64_t)x21 * x66) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + ((0x2 * ((uint64_t)x29 * x61)) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + ((uint64_t)x34 * x53)))))))))));
- { uint64_t x78 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + ((0x2 * ((uint64_t)x9 * x45)) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + (((uint64_t)x15 * x39) + ((uint64_t)x17 * x37))))))) + (0x3 * ((0x2 * ((uint64_t)x19 * x66)) + (((uint64_t)x21 * x67) + ((0x2 * ((uint64_t)x23 * x65)) + (((uint64_t)x25 * x63) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + (((uint64_t)x31 * x57) + ((0x2 * ((uint64_t)x33 * x55)) + (((uint64_t)x35 * x53) + (0x2 * ((uint64_t)x34 * x51)))))))))))));
- { uint64_t x79 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((uint64_t)x15 * x37)))))) + (0x3 * ((0x2 * ((uint64_t)x17 * x66)) + ((0x2 * ((uint64_t)x19 * x67)) + ((0x2 * ((uint64_t)x21 * x65)) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + ((0x2 * ((uint64_t)x29 * x57)) + ((0x2 * ((uint64_t)x31 * x55)) + ((0x2 * ((uint64_t)x33 * x53)) + ((0x2 * ((uint64_t)x35 * x51)) + (0x2 * ((uint64_t)x34 * x49))))))))))))));
- { uint64_t x80 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + (((uint64_t)x11 * x39) + ((uint64_t)x13 * x37))))) + (0x3 * (((uint64_t)x15 * x66) + (((uint64_t)x17 * x67) + ((0x2 * ((uint64_t)x19 * x65)) + (((uint64_t)x21 * x63) + ((0x2 * ((uint64_t)x23 * x61)) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + ((0x2 * ((uint64_t)x29 * x55)) + (((uint64_t)x31 * x53) + ((0x2 * ((uint64_t)x33 * x51)) + (((uint64_t)x35 * x49) + ((uint64_t)x34 * x47))))))))))))));
- { uint64_t x81 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((uint64_t)x11 * x37)))) + (0x3 * ((0x2 * ((uint64_t)x13 * x66)) + (((uint64_t)x15 * x67) + ((0x2 * ((uint64_t)x17 * x65)) + ((0x2 * ((uint64_t)x19 * x63)) + ((0x2 * ((uint64_t)x21 * x61)) + ((0x2 * ((uint64_t)x23 * x59)) + (((uint64_t)x25 * x57) + ((0x2 * ((uint64_t)x27 * x55)) + ((0x2 * ((uint64_t)x29 * x53)) + ((0x2 * ((uint64_t)x31 * x51)) + ((0x2 * ((uint64_t)x33 * x49)) + (((uint64_t)x35 * x47) + (0x2 * ((uint64_t)x34 * x45))))))))))))))));
- { uint64_t x82 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + ((uint64_t)x9 * x37))) + (0x3 * (((uint64_t)x11 * x66) + (((uint64_t)x13 * x67) + (((uint64_t)x15 * x65) + (((uint64_t)x17 * x63) + ((0x2 * ((uint64_t)x19 * x61)) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + ((0x2 * ((uint64_t)x29 * x51)) + (((uint64_t)x31 * x49) + (((uint64_t)x33 * x47) + (((uint64_t)x35 * x45) + ((uint64_t)x34 * x43))))))))))))))));
- { uint64_t x83 = ((((uint64_t)x5 * x39) + ((uint64_t)x7 * x37)) + (0x3 * ((0x2 * ((uint64_t)x9 * x66)) + (((uint64_t)x11 * x67) + ((0x2 * ((uint64_t)x13 * x65)) + (((uint64_t)x15 * x63) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + (((uint64_t)x21 * x57) + ((0x2 * ((uint64_t)x23 * x55)) + (((uint64_t)x25 * x53) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + (((uint64_t)x31 * x47) + ((0x2 * ((uint64_t)x33 * x45)) + (((uint64_t)x35 * x43) + (0x2 * ((uint64_t)x34 * x41))))))))))))))))));
- { uint64_t x84 = (((uint64_t)x5 * x37) + (0x3 * ((0x2 * ((uint64_t)x7 * x66)) + ((0x2 * ((uint64_t)x9 * x67)) + ((0x2 * ((uint64_t)x11 * x65)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + ((0x2 * ((uint64_t)x35 * x41)) + (0x2 * ((uint64_t)x34 * x39)))))))))))))))))));
- { uint64_t x85 = (x84 >> 0x1b);
- { uint32_t x86 = ((uint32_t)x84 & 0x7ffffff);
- { uint64_t x87 = (x85 + x83);
- { uint64_t x88 = (x87 >> 0x1b);
- { uint32_t x89 = ((uint32_t)x87 & 0x7ffffff);
- { uint64_t x90 = (x88 + x82);
- { uint64_t x91 = (x90 >> 0x1a);
- { uint32_t x92 = ((uint32_t)x90 & 0x3ffffff);
- { uint64_t x93 = (x91 + x81);
- { uint64_t x94 = (x93 >> 0x1b);
- { uint32_t x95 = ((uint32_t)x93 & 0x7ffffff);
- { uint64_t x96 = (x94 + x80);
- { uint64_t x97 = (x96 >> 0x1a);
- { uint32_t x98 = ((uint32_t)x96 & 0x3ffffff);
- { uint64_t x99 = (x97 + x79);
- { uint64_t x100 = (x99 >> 0x1b);
- { uint32_t x101 = ((uint32_t)x99 & 0x7ffffff);
- { uint64_t x102 = (x100 + x78);
- { uint64_t x103 = (x102 >> 0x1b);
- { uint32_t x104 = ((uint32_t)x102 & 0x7ffffff);
- { uint64_t x105 = (x103 + x77);
- { uint64_t x106 = (x105 >> 0x1a);
- { uint32_t x107 = ((uint32_t)x105 & 0x3ffffff);
- { uint64_t x108 = (x106 + x76);
- { uint64_t x109 = (x108 >> 0x1b);
- { uint32_t x110 = ((uint32_t)x108 & 0x7ffffff);
- { uint64_t x111 = (x109 + x75);
- { uint64_t x112 = (x111 >> 0x1a);
- { uint32_t x113 = ((uint32_t)x111 & 0x3ffffff);
- { uint64_t x114 = (x112 + x74);
- { uint64_t x115 = (x114 >> 0x1b);
- { uint32_t x116 = ((uint32_t)x114 & 0x7ffffff);
- { uint64_t x117 = (x115 + x73);
- { uint64_t x118 = (x117 >> 0x1b);
- { uint32_t x119 = ((uint32_t)x117 & 0x7ffffff);
- { uint64_t x120 = (x118 + x72);
- { uint64_t x121 = (x120 >> 0x1a);
- { uint32_t x122 = ((uint32_t)x120 & 0x3ffffff);
- { uint64_t x123 = (x121 + x71);
- { uint64_t x124 = (x123 >> 0x1b);
- { uint32_t x125 = ((uint32_t)x123 & 0x7ffffff);
- { uint64_t x126 = (x124 + x70);
- { uint64_t x127 = (x126 >> 0x1a);
- { uint32_t x128 = ((uint32_t)x126 & 0x3ffffff);
- { uint64_t x129 = (x127 + x69);
- { uint64_t x130 = (x129 >> 0x1b);
- { uint32_t x131 = ((uint32_t)x129 & 0x7ffffff);
- { uint64_t x132 = (x130 + x68);
- { uint64_t x133 = (x132 >> 0x1a);
- { uint32_t x134 = ((uint32_t)x132 & 0x3ffffff);
- { uint64_t x135 = (x86 + (0x3 * x133));
- { uint32_t x136 = (uint32_t) (x135 >> 0x1b);
- { uint32_t x137 = ((uint32_t)x135 & 0x7ffffff);
- { uint32_t x138 = (x136 + x89);
- { uint32_t x139 = (x138 >> 0x1b);
- { uint32_t x140 = (x138 & 0x7ffffff);
- out[0] = x137;
- out[1] = x140;
- out[2] = (x139 + x92);
- out[3] = x95;
- out[4] = x98;
- out[5] = x101;
- out[6] = x104;
- out[7] = x107;
- out[8] = x110;
- out[9] = x113;
- out[10] = x116;
- out[11] = x119;
- out[12] = x122;
- out[13] = x125;
- out[14] = x128;
- out[15] = x131;
- out[16] = x134;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e452m3_17limbs/femul.v b/src/Specific/solinas32_2e452m3_17limbs/femul.v
deleted file mode 100644
index 7ac7c21f1..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e452m3_17limbs.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_2e452m3_17limbs/femulDisplay.log b/src/Specific/solinas32_2e452m3_17limbs/femulDisplay.log
deleted file mode 100644
index 1209c60de..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/femulDisplay.log
+++ /dev/null
@@ -1,80 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- uint64_t x68 = (((uint64_t)x5 * x66) + (((uint64_t)x7 * x67) + ((0x2 * ((uint64_t)x9 * x65)) + (((uint64_t)x11 * x63) + ((0x2 * ((uint64_t)x13 * x61)) + (((uint64_t)x15 * x59) + (((uint64_t)x17 * x57) + ((0x2 * ((uint64_t)x19 * x55)) + (((uint64_t)x21 * x53) + ((0x2 * ((uint64_t)x23 * x51)) + (((uint64_t)x25 * x49) + (((uint64_t)x27 * x47) + ((0x2 * ((uint64_t)x29 * x45)) + (((uint64_t)x31 * x43) + ((0x2 * ((uint64_t)x33 * x41)) + (((uint64_t)x35 * x39) + ((uint64_t)x34 * x37)))))))))))))))));
- uint64_t x69 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + (((uint64_t)x15 * x57) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + (((uint64_t)x25 * x47) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((0x2 * ((uint64_t)x33 * x39)) + ((uint64_t)x35 * x37)))))))))))))))) + (0x3 * (0x2 * ((uint64_t)x34 * x66))));
- uint64_t x70 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + ((0x2 * ((uint64_t)x9 * x61)) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + ((0x2 * ((uint64_t)x19 * x51)) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + ((0x2 * ((uint64_t)x29 * x41)) + (((uint64_t)x31 * x39) + ((uint64_t)x33 * x37))))))))))))))) + (0x3 * (((uint64_t)x35 * x66) + ((uint64_t)x34 * x67))));
- uint64_t x71 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + (((uint64_t)x11 * x57) + ((0x2 * ((uint64_t)x13 * x55)) + (((uint64_t)x15 * x53) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + (((uint64_t)x21 * x47) + ((0x2 * ((uint64_t)x23 * x45)) + (((uint64_t)x25 * x43) + ((0x2 * ((uint64_t)x27 * x41)) + ((0x2 * ((uint64_t)x29 * x39)) + ((uint64_t)x31 * x37)))))))))))))) + (0x3 * ((0x2 * ((uint64_t)x33 * x66)) + (((uint64_t)x35 * x67) + (0x2 * ((uint64_t)x34 * x65))))));
- uint64_t x72 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + (((uint64_t)x27 * x39) + ((uint64_t)x29 * x37))))))))))))) + (0x3 * (((uint64_t)x31 * x66) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + ((uint64_t)x34 * x63))))));
- uint64_t x73 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + ((0x2 * ((uint64_t)x9 * x55)) + (((uint64_t)x11 * x53) + ((0x2 * ((uint64_t)x13 * x51)) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + ((0x2 * ((uint64_t)x19 * x45)) + (((uint64_t)x21 * x43) + ((0x2 * ((uint64_t)x23 * x41)) + (((uint64_t)x25 * x39) + ((uint64_t)x27 * x37)))))))))))) + (0x3 * ((0x2 * ((uint64_t)x29 * x66)) + (((uint64_t)x31 * x67) + ((0x2 * ((uint64_t)x33 * x65)) + (((uint64_t)x35 * x63) + (0x2 * ((uint64_t)x34 * x61))))))));
- uint64_t x74 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + (((uint64_t)x15 * x47) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((0x2 * ((uint64_t)x23 * x39)) + ((uint64_t)x25 * x37))))))))))) + (0x3 * ((0x2 * ((uint64_t)x27 * x66)) + ((0x2 * ((uint64_t)x29 * x67)) + ((0x2 * ((uint64_t)x31 * x65)) + ((0x2 * ((uint64_t)x33 * x63)) + ((0x2 * ((uint64_t)x35 * x61)) + (0x2 * ((uint64_t)x34 * x59)))))))));
- uint64_t x75 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + ((0x2 * ((uint64_t)x9 * x51)) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((0x2 * ((uint64_t)x19 * x41)) + (((uint64_t)x21 * x39) + ((uint64_t)x23 * x37)))))))))) + (0x3 * (((uint64_t)x25 * x66) + (((uint64_t)x27 * x67) + ((0x2 * ((uint64_t)x29 * x65)) + (((uint64_t)x31 * x63) + ((0x2 * ((uint64_t)x33 * x61)) + (((uint64_t)x35 * x59) + ((uint64_t)x34 * x57)))))))));
- uint64_t x76 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + ((0x2 * ((uint64_t)x13 * x45)) + (((uint64_t)x15 * x43) + ((0x2 * ((uint64_t)x17 * x41)) + ((0x2 * ((uint64_t)x19 * x39)) + ((uint64_t)x21 * x37))))))))) + (0x3 * ((0x2 * ((uint64_t)x23 * x66)) + (((uint64_t)x25 * x67) + ((0x2 * ((uint64_t)x27 * x65)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + (((uint64_t)x35 * x57) + (0x2 * ((uint64_t)x34 * x55)))))))))));
- uint64_t x77 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + (((uint64_t)x17 * x39) + ((uint64_t)x19 * x37)))))))) + (0x3 * (((uint64_t)x21 * x66) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + ((0x2 * ((uint64_t)x29 * x61)) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + ((uint64_t)x34 * x53)))))))))));
- uint64_t x78 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + ((0x2 * ((uint64_t)x9 * x45)) + (((uint64_t)x11 * x43) + ((0x2 * ((uint64_t)x13 * x41)) + (((uint64_t)x15 * x39) + ((uint64_t)x17 * x37))))))) + (0x3 * ((0x2 * ((uint64_t)x19 * x66)) + (((uint64_t)x21 * x67) + ((0x2 * ((uint64_t)x23 * x65)) + (((uint64_t)x25 * x63) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + (((uint64_t)x31 * x57) + ((0x2 * ((uint64_t)x33 * x55)) + (((uint64_t)x35 * x53) + (0x2 * ((uint64_t)x34 * x51)))))))))))));
- uint64_t x79 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((0x2 * ((uint64_t)x13 * x39)) + ((uint64_t)x15 * x37)))))) + (0x3 * ((0x2 * ((uint64_t)x17 * x66)) + ((0x2 * ((uint64_t)x19 * x67)) + ((0x2 * ((uint64_t)x21 * x65)) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + ((0x2 * ((uint64_t)x29 * x57)) + ((0x2 * ((uint64_t)x31 * x55)) + ((0x2 * ((uint64_t)x33 * x53)) + ((0x2 * ((uint64_t)x35 * x51)) + (0x2 * ((uint64_t)x34 * x49))))))))))))));
- uint64_t x80 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((0x2 * ((uint64_t)x9 * x41)) + (((uint64_t)x11 * x39) + ((uint64_t)x13 * x37))))) + (0x3 * (((uint64_t)x15 * x66) + (((uint64_t)x17 * x67) + ((0x2 * ((uint64_t)x19 * x65)) + (((uint64_t)x21 * x63) + ((0x2 * ((uint64_t)x23 * x61)) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + ((0x2 * ((uint64_t)x29 * x55)) + (((uint64_t)x31 * x53) + ((0x2 * ((uint64_t)x33 * x51)) + (((uint64_t)x35 * x49) + ((uint64_t)x34 * x47))))))))))))));
- uint64_t x81 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((0x2 * ((uint64_t)x9 * x39)) + ((uint64_t)x11 * x37)))) + (0x3 * ((0x2 * ((uint64_t)x13 * x66)) + (((uint64_t)x15 * x67) + ((0x2 * ((uint64_t)x17 * x65)) + ((0x2 * ((uint64_t)x19 * x63)) + ((0x2 * ((uint64_t)x21 * x61)) + ((0x2 * ((uint64_t)x23 * x59)) + (((uint64_t)x25 * x57) + ((0x2 * ((uint64_t)x27 * x55)) + ((0x2 * ((uint64_t)x29 * x53)) + ((0x2 * ((uint64_t)x31 * x51)) + ((0x2 * ((uint64_t)x33 * x49)) + (((uint64_t)x35 * x47) + (0x2 * ((uint64_t)x34 * x45))))))))))))))));
- uint64_t x82 = ((((uint64_t)x5 * x41) + (((uint64_t)x7 * x39) + ((uint64_t)x9 * x37))) + (0x3 * (((uint64_t)x11 * x66) + (((uint64_t)x13 * x67) + (((uint64_t)x15 * x65) + (((uint64_t)x17 * x63) + ((0x2 * ((uint64_t)x19 * x61)) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + ((0x2 * ((uint64_t)x29 * x51)) + (((uint64_t)x31 * x49) + (((uint64_t)x33 * x47) + (((uint64_t)x35 * x45) + ((uint64_t)x34 * x43))))))))))))))));
- uint64_t x83 = ((((uint64_t)x5 * x39) + ((uint64_t)x7 * x37)) + (0x3 * ((0x2 * ((uint64_t)x9 * x66)) + (((uint64_t)x11 * x67) + ((0x2 * ((uint64_t)x13 * x65)) + (((uint64_t)x15 * x63) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + (((uint64_t)x21 * x57) + ((0x2 * ((uint64_t)x23 * x55)) + (((uint64_t)x25 * x53) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + (((uint64_t)x31 * x47) + ((0x2 * ((uint64_t)x33 * x45)) + (((uint64_t)x35 * x43) + (0x2 * ((uint64_t)x34 * x41))))))))))))))))));
- uint64_t x84 = (((uint64_t)x5 * x37) + (0x3 * ((0x2 * ((uint64_t)x7 * x66)) + ((0x2 * ((uint64_t)x9 * x67)) + ((0x2 * ((uint64_t)x11 * x65)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + ((0x2 * ((uint64_t)x35 * x41)) + (0x2 * ((uint64_t)x34 * x39)))))))))))))))))));
- uint64_t x85 = (x84 >> 0x1b);
- uint32_t x86 = ((uint32_t)x84 & 0x7ffffff);
- uint64_t x87 = (x85 + x83);
- uint64_t x88 = (x87 >> 0x1b);
- uint32_t x89 = ((uint32_t)x87 & 0x7ffffff);
- uint64_t x90 = (x88 + x82);
- uint64_t x91 = (x90 >> 0x1a);
- uint32_t x92 = ((uint32_t)x90 & 0x3ffffff);
- uint64_t x93 = (x91 + x81);
- uint64_t x94 = (x93 >> 0x1b);
- uint32_t x95 = ((uint32_t)x93 & 0x7ffffff);
- uint64_t x96 = (x94 + x80);
- uint64_t x97 = (x96 >> 0x1a);
- uint32_t x98 = ((uint32_t)x96 & 0x3ffffff);
- uint64_t x99 = (x97 + x79);
- uint64_t x100 = (x99 >> 0x1b);
- uint32_t x101 = ((uint32_t)x99 & 0x7ffffff);
- uint64_t x102 = (x100 + x78);
- uint64_t x103 = (x102 >> 0x1b);
- uint32_t x104 = ((uint32_t)x102 & 0x7ffffff);
- uint64_t x105 = (x103 + x77);
- uint64_t x106 = (x105 >> 0x1a);
- uint32_t x107 = ((uint32_t)x105 & 0x3ffffff);
- uint64_t x108 = (x106 + x76);
- uint64_t x109 = (x108 >> 0x1b);
- uint32_t x110 = ((uint32_t)x108 & 0x7ffffff);
- uint64_t x111 = (x109 + x75);
- uint64_t x112 = (x111 >> 0x1a);
- uint32_t x113 = ((uint32_t)x111 & 0x3ffffff);
- uint64_t x114 = (x112 + x74);
- uint64_t x115 = (x114 >> 0x1b);
- uint32_t x116 = ((uint32_t)x114 & 0x7ffffff);
- uint64_t x117 = (x115 + x73);
- uint64_t x118 = (x117 >> 0x1b);
- uint32_t x119 = ((uint32_t)x117 & 0x7ffffff);
- uint64_t x120 = (x118 + x72);
- uint64_t x121 = (x120 >> 0x1a);
- uint32_t x122 = ((uint32_t)x120 & 0x3ffffff);
- uint64_t x123 = (x121 + x71);
- uint64_t x124 = (x123 >> 0x1b);
- uint32_t x125 = ((uint32_t)x123 & 0x7ffffff);
- uint64_t x126 = (x124 + x70);
- uint64_t x127 = (x126 >> 0x1a);
- uint32_t x128 = ((uint32_t)x126 & 0x3ffffff);
- uint64_t x129 = (x127 + x69);
- uint64_t x130 = (x129 >> 0x1b);
- uint32_t x131 = ((uint32_t)x129 & 0x7ffffff);
- uint64_t x132 = (x130 + x68);
- uint64_t x133 = (x132 >> 0x1a);
- uint32_t x134 = ((uint32_t)x132 & 0x3ffffff);
- uint64_t x135 = (x86 + (0x3 * x133));
- uint32_t x136 = (uint32_t) (x135 >> 0x1b);
- uint32_t x137 = ((uint32_t)x135 & 0x7ffffff);
- uint32_t x138 = (x136 + x89);
- uint32_t x139 = (x138 >> 0x1b);
- uint32_t x140 = (x138 & 0x7ffffff);
- return (Return x134, Return x131, Return x128, Return x125, Return x122, Return x119, Return x116, Return x113, Return x110, Return x107, Return x104, Return x101, Return x98, Return x95, (x139 + x92), Return x140, Return x137))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e452m3_17limbs/femulDisplay.v b/src/Specific/solinas32_2e452m3_17limbs/femulDisplay.v
deleted file mode 100644
index 97f913395..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e452m3_17limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e452m3_17limbs/fesquare.c b/src/Specific/solinas32_2e452m3_17limbs/fesquare.c
deleted file mode 100644
index f37b13343..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/fesquare.c
+++ /dev/null
@@ -1,110 +0,0 @@
-static void fesquare(uint32_t out[17], const uint32_t in1[17]) {
- { const uint32_t x31 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x33 = (((uint64_t)x2 * x31) + (((uint64_t)x4 * x32) + ((0x2 * ((uint64_t)x6 * x30)) + (((uint64_t)x8 * x28) + ((0x2 * ((uint64_t)x10 * x26)) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + ((0x2 * ((uint64_t)x26 * x10)) + (((uint64_t)x28 * x8) + ((0x2 * ((uint64_t)x30 * x6)) + (((uint64_t)x32 * x4) + ((uint64_t)x31 * x2)))))))))))))))));
- { uint64_t x34 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + (((uint64_t)x12 * x22) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + (((uint64_t)x22 * x12) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x3 * (0x2 * ((uint64_t)x31 * x31))));
- { uint64_t x35 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + ((0x2 * ((uint64_t)x6 * x26)) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + ((0x2 * ((uint64_t)x26 * x6)) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x3 * (((uint64_t)x32 * x31) + ((uint64_t)x31 * x32))));
- { uint64_t x36 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + (((uint64_t)x8 * x22) + ((0x2 * ((uint64_t)x10 * x20)) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + ((0x2 * ((uint64_t)x20 * x10)) + (((uint64_t)x22 * x8) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x3 * ((0x2 * ((uint64_t)x30 * x31)) + (((uint64_t)x32 * x32) + (0x2 * ((uint64_t)x31 * x30))))));
- { uint64_t x37 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x3 * (((uint64_t)x28 * x31) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + ((uint64_t)x31 * x28))))));
- { uint64_t x38 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + ((0x2 * ((uint64_t)x6 * x20)) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + ((0x2 * ((uint64_t)x20 * x6)) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x3 * ((0x2 * ((uint64_t)x26 * x31)) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + (0x2 * ((uint64_t)x31 * x26))))))));
- { uint64_t x39 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x3 * ((0x2 * ((uint64_t)x24 * x31)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + (0x2 * ((uint64_t)x31 * x24)))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x3 * (((uint64_t)x22 * x31) + (((uint64_t)x24 * x32) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + (((uint64_t)x32 * x24) + ((uint64_t)x31 * x22)))))))));
- { uint64_t x41 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x3 * ((0x2 * ((uint64_t)x20 * x31)) + (((uint64_t)x22 * x32) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + (((uint64_t)x32 * x22) + (0x2 * ((uint64_t)x31 * x20)))))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x3 * (((uint64_t)x18 * x31) + (((uint64_t)x20 * x32) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + (((uint64_t)x32 * x20) + ((uint64_t)x31 * x18)))))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x3 * ((0x2 * ((uint64_t)x16 * x31)) + (((uint64_t)x18 * x32) + ((0x2 * ((uint64_t)x20 * x30)) + (((uint64_t)x22 * x28) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + (((uint64_t)x28 * x22) + ((0x2 * ((uint64_t)x30 * x20)) + (((uint64_t)x32 * x18) + (0x2 * ((uint64_t)x31 * x16)))))))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x3 * ((0x2 * ((uint64_t)x14 * x31)) + ((0x2 * ((uint64_t)x16 * x32)) + ((0x2 * ((uint64_t)x18 * x30)) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + ((0x2 * ((uint64_t)x30 * x18)) + ((0x2 * ((uint64_t)x32 * x16)) + (0x2 * ((uint64_t)x31 * x14))))))))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x3 * (((uint64_t)x12 * x31) + (((uint64_t)x14 * x32) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + ((0x2 * ((uint64_t)x20 * x26)) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + ((0x2 * ((uint64_t)x26 * x20)) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + (((uint64_t)x32 * x14) + ((uint64_t)x31 * x12))))))))))))));
- { uint64_t x46 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x3 * ((0x2 * ((uint64_t)x10 * x31)) + (((uint64_t)x12 * x32) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + (((uint64_t)x32 * x12) + (0x2 * ((uint64_t)x31 * x10))))))))))))))));
- { uint64_t x47 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x3 * (((uint64_t)x8 * x31) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + ((0x2 * ((uint64_t)x16 * x26)) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((0x2 * ((uint64_t)x26 * x16)) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + ((uint64_t)x31 * x8))))))))))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * ((0x2 * ((uint64_t)x6 * x31)) + (((uint64_t)x8 * x32) + ((0x2 * ((uint64_t)x10 * x30)) + (((uint64_t)x12 * x28) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + (((uint64_t)x28 * x12) + ((0x2 * ((uint64_t)x30 * x10)) + (((uint64_t)x32 * x8) + (0x2 * ((uint64_t)x31 * x6))))))))))))))))));
- { uint64_t x49 = (((uint64_t)x2 * x2) + (0x3 * ((0x2 * ((uint64_t)x4 * x31)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + (0x2 * ((uint64_t)x31 * x4)))))))))))))))))));
- { uint64_t x50 = (x49 >> 0x1b);
- { uint32_t x51 = ((uint32_t)x49 & 0x7ffffff);
- { uint64_t x52 = (x50 + x48);
- { uint64_t x53 = (x52 >> 0x1b);
- { uint32_t x54 = ((uint32_t)x52 & 0x7ffffff);
- { uint64_t x55 = (x53 + x47);
- { uint64_t x56 = (x55 >> 0x1a);
- { uint32_t x57 = ((uint32_t)x55 & 0x3ffffff);
- { uint64_t x58 = (x56 + x46);
- { uint64_t x59 = (x58 >> 0x1b);
- { uint32_t x60 = ((uint32_t)x58 & 0x7ffffff);
- { uint64_t x61 = (x59 + x45);
- { uint64_t x62 = (x61 >> 0x1a);
- { uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- { uint64_t x64 = (x62 + x44);
- { uint64_t x65 = (x64 >> 0x1b);
- { uint32_t x66 = ((uint32_t)x64 & 0x7ffffff);
- { uint64_t x67 = (x65 + x43);
- { uint64_t x68 = (x67 >> 0x1b);
- { uint32_t x69 = ((uint32_t)x67 & 0x7ffffff);
- { uint64_t x70 = (x68 + x42);
- { uint64_t x71 = (x70 >> 0x1a);
- { uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- { uint64_t x73 = (x71 + x41);
- { uint64_t x74 = (x73 >> 0x1b);
- { uint32_t x75 = ((uint32_t)x73 & 0x7ffffff);
- { uint64_t x76 = (x74 + x40);
- { uint64_t x77 = (x76 >> 0x1a);
- { uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- { uint64_t x79 = (x77 + x39);
- { uint64_t x80 = (x79 >> 0x1b);
- { uint32_t x81 = ((uint32_t)x79 & 0x7ffffff);
- { uint64_t x82 = (x80 + x38);
- { uint64_t x83 = (x82 >> 0x1b);
- { uint32_t x84 = ((uint32_t)x82 & 0x7ffffff);
- { uint64_t x85 = (x83 + x37);
- { uint64_t x86 = (x85 >> 0x1a);
- { uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- { uint64_t x88 = (x86 + x36);
- { uint64_t x89 = (x88 >> 0x1b);
- { uint32_t x90 = ((uint32_t)x88 & 0x7ffffff);
- { uint64_t x91 = (x89 + x35);
- { uint64_t x92 = (x91 >> 0x1a);
- { uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- { uint64_t x94 = (x92 + x34);
- { uint64_t x95 = (x94 >> 0x1b);
- { uint32_t x96 = ((uint32_t)x94 & 0x7ffffff);
- { uint64_t x97 = (x95 + x33);
- { uint64_t x98 = (x97 >> 0x1a);
- { uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- { uint64_t x100 = (x51 + (0x3 * x98));
- { uint32_t x101 = (uint32_t) (x100 >> 0x1b);
- { uint32_t x102 = ((uint32_t)x100 & 0x7ffffff);
- { uint32_t x103 = (x101 + x54);
- { uint32_t x104 = (x103 >> 0x1b);
- { uint32_t x105 = (x103 & 0x7ffffff);
- out[0] = x102;
- out[1] = x105;
- out[2] = (x104 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- out[10] = x81;
- out[11] = x84;
- out[12] = x87;
- out[13] = x90;
- out[14] = x93;
- out[15] = x96;
- out[16] = x99;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e452m3_17limbs/fesquare.v b/src/Specific/solinas32_2e452m3_17limbs/fesquare.v
deleted file mode 100644
index af0b30e3a..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e452m3_17limbs.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_2e452m3_17limbs/fesquareDisplay.log b/src/Specific/solinas32_2e452m3_17limbs/fesquareDisplay.log
deleted file mode 100644
index f71baf7a9..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,80 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x31, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x33 = (((uint64_t)x2 * x31) + (((uint64_t)x4 * x32) + ((0x2 * ((uint64_t)x6 * x30)) + (((uint64_t)x8 * x28) + ((0x2 * ((uint64_t)x10 * x26)) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + ((0x2 * ((uint64_t)x26 * x10)) + (((uint64_t)x28 * x8) + ((0x2 * ((uint64_t)x30 * x6)) + (((uint64_t)x32 * x4) + ((uint64_t)x31 * x2)))))))))))))))));
- uint64_t x34 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + (((uint64_t)x12 * x22) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + (((uint64_t)x22 * x12) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x3 * (0x2 * ((uint64_t)x31 * x31))));
- uint64_t x35 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + ((0x2 * ((uint64_t)x6 * x26)) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + ((0x2 * ((uint64_t)x26 * x6)) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x3 * (((uint64_t)x32 * x31) + ((uint64_t)x31 * x32))));
- uint64_t x36 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + (((uint64_t)x8 * x22) + ((0x2 * ((uint64_t)x10 * x20)) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + ((0x2 * ((uint64_t)x20 * x10)) + (((uint64_t)x22 * x8) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x3 * ((0x2 * ((uint64_t)x30 * x31)) + (((uint64_t)x32 * x32) + (0x2 * ((uint64_t)x31 * x30))))));
- uint64_t x37 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x3 * (((uint64_t)x28 * x31) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + ((uint64_t)x31 * x28))))));
- uint64_t x38 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + ((0x2 * ((uint64_t)x6 * x20)) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + ((0x2 * ((uint64_t)x20 * x6)) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x3 * ((0x2 * ((uint64_t)x26 * x31)) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + (0x2 * ((uint64_t)x31 * x26))))))));
- uint64_t x39 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x3 * ((0x2 * ((uint64_t)x24 * x31)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + (0x2 * ((uint64_t)x31 * x24)))))))));
- uint64_t x40 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x3 * (((uint64_t)x22 * x31) + (((uint64_t)x24 * x32) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + (((uint64_t)x32 * x24) + ((uint64_t)x31 * x22)))))))));
- uint64_t x41 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x3 * ((0x2 * ((uint64_t)x20 * x31)) + (((uint64_t)x22 * x32) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + (((uint64_t)x32 * x22) + (0x2 * ((uint64_t)x31 * x20)))))))))));
- uint64_t x42 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x3 * (((uint64_t)x18 * x31) + (((uint64_t)x20 * x32) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + (((uint64_t)x32 * x20) + ((uint64_t)x31 * x18)))))))))));
- uint64_t x43 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x3 * ((0x2 * ((uint64_t)x16 * x31)) + (((uint64_t)x18 * x32) + ((0x2 * ((uint64_t)x20 * x30)) + (((uint64_t)x22 * x28) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + (((uint64_t)x28 * x22) + ((0x2 * ((uint64_t)x30 * x20)) + (((uint64_t)x32 * x18) + (0x2 * ((uint64_t)x31 * x16)))))))))))));
- uint64_t x44 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x3 * ((0x2 * ((uint64_t)x14 * x31)) + ((0x2 * ((uint64_t)x16 * x32)) + ((0x2 * ((uint64_t)x18 * x30)) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + ((0x2 * ((uint64_t)x30 * x18)) + ((0x2 * ((uint64_t)x32 * x16)) + (0x2 * ((uint64_t)x31 * x14))))))))))))));
- uint64_t x45 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x3 * (((uint64_t)x12 * x31) + (((uint64_t)x14 * x32) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + ((0x2 * ((uint64_t)x20 * x26)) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + ((0x2 * ((uint64_t)x26 * x20)) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + (((uint64_t)x32 * x14) + ((uint64_t)x31 * x12))))))))))))));
- uint64_t x46 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x3 * ((0x2 * ((uint64_t)x10 * x31)) + (((uint64_t)x12 * x32) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + (((uint64_t)x32 * x12) + (0x2 * ((uint64_t)x31 * x10))))))))))))))));
- uint64_t x47 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x3 * (((uint64_t)x8 * x31) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + ((0x2 * ((uint64_t)x16 * x26)) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + ((0x2 * ((uint64_t)x26 * x16)) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + ((uint64_t)x31 * x8))))))))))))))));
- uint64_t x48 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * ((0x2 * ((uint64_t)x6 * x31)) + (((uint64_t)x8 * x32) + ((0x2 * ((uint64_t)x10 * x30)) + (((uint64_t)x12 * x28) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + (((uint64_t)x28 * x12) + ((0x2 * ((uint64_t)x30 * x10)) + (((uint64_t)x32 * x8) + (0x2 * ((uint64_t)x31 * x6))))))))))))))))));
- uint64_t x49 = (((uint64_t)x2 * x2) + (0x3 * ((0x2 * ((uint64_t)x4 * x31)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + (0x2 * ((uint64_t)x31 * x4)))))))))))))))))));
- uint64_t x50 = (x49 >> 0x1b);
- uint32_t x51 = ((uint32_t)x49 & 0x7ffffff);
- uint64_t x52 = (x50 + x48);
- uint64_t x53 = (x52 >> 0x1b);
- uint32_t x54 = ((uint32_t)x52 & 0x7ffffff);
- uint64_t x55 = (x53 + x47);
- uint64_t x56 = (x55 >> 0x1a);
- uint32_t x57 = ((uint32_t)x55 & 0x3ffffff);
- uint64_t x58 = (x56 + x46);
- uint64_t x59 = (x58 >> 0x1b);
- uint32_t x60 = ((uint32_t)x58 & 0x7ffffff);
- uint64_t x61 = (x59 + x45);
- uint64_t x62 = (x61 >> 0x1a);
- uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- uint64_t x64 = (x62 + x44);
- uint64_t x65 = (x64 >> 0x1b);
- uint32_t x66 = ((uint32_t)x64 & 0x7ffffff);
- uint64_t x67 = (x65 + x43);
- uint64_t x68 = (x67 >> 0x1b);
- uint32_t x69 = ((uint32_t)x67 & 0x7ffffff);
- uint64_t x70 = (x68 + x42);
- uint64_t x71 = (x70 >> 0x1a);
- uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- uint64_t x73 = (x71 + x41);
- uint64_t x74 = (x73 >> 0x1b);
- uint32_t x75 = ((uint32_t)x73 & 0x7ffffff);
- uint64_t x76 = (x74 + x40);
- uint64_t x77 = (x76 >> 0x1a);
- uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- uint64_t x79 = (x77 + x39);
- uint64_t x80 = (x79 >> 0x1b);
- uint32_t x81 = ((uint32_t)x79 & 0x7ffffff);
- uint64_t x82 = (x80 + x38);
- uint64_t x83 = (x82 >> 0x1b);
- uint32_t x84 = ((uint32_t)x82 & 0x7ffffff);
- uint64_t x85 = (x83 + x37);
- uint64_t x86 = (x85 >> 0x1a);
- uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- uint64_t x88 = (x86 + x36);
- uint64_t x89 = (x88 >> 0x1b);
- uint32_t x90 = ((uint32_t)x88 & 0x7ffffff);
- uint64_t x91 = (x89 + x35);
- uint64_t x92 = (x91 >> 0x1a);
- uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- uint64_t x94 = (x92 + x34);
- uint64_t x95 = (x94 >> 0x1b);
- uint32_t x96 = ((uint32_t)x94 & 0x7ffffff);
- uint64_t x97 = (x95 + x33);
- uint64_t x98 = (x97 >> 0x1a);
- uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- uint64_t x100 = (x51 + (0x3 * x98));
- uint32_t x101 = (uint32_t) (x100 >> 0x1b);
- uint32_t x102 = ((uint32_t)x100 & 0x7ffffff);
- uint32_t x103 = (x101 + x54);
- uint32_t x104 = (x103 >> 0x1b);
- uint32_t x105 = (x103 & 0x7ffffff);
- return (Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x104 + x57), Return x105, Return x102))
-x
- : word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e452m3_17limbs/fesquareDisplay.v b/src/Specific/solinas32_2e452m3_17limbs/fesquareDisplay.v
deleted file mode 100644
index eb6913539..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e452m3_17limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e452m3_17limbs/fesub.c b/src/Specific/solinas32_2e452m3_17limbs/fesub.c
deleted file mode 100644
index 792826292..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/fesub.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void fesub(uint32_t out[17], const uint32_t in1[17], const uint32_t in2[17]) {
- { const uint32_t x34 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x66 = in2[16];
- { const uint32_t x67 = in2[15];
- { const uint32_t x65 = in2[14];
- { const uint32_t x63 = in2[13];
- { const uint32_t x61 = in2[12];
- { const uint32_t x59 = in2[11];
- { const uint32_t x57 = in2[10];
- { const uint32_t x55 = in2[9];
- { const uint32_t x53 = in2[8];
- { const uint32_t x51 = in2[7];
- { const uint32_t x49 = in2[6];
- { const uint32_t x47 = in2[5];
- { const uint32_t x45 = in2[4];
- { const uint32_t x43 = in2[3];
- { const uint32_t x41 = in2[2];
- { const uint32_t x39 = in2[1];
- { const uint32_t x37 = in2[0];
- out[0] = ((0xffffffa + x5) - x37);
- out[1] = ((0xffffffe + x7) - x39);
- out[2] = ((0x7fffffe + x9) - x41);
- out[3] = ((0xffffffe + x11) - x43);
- out[4] = ((0x7fffffe + x13) - x45);
- out[5] = ((0xffffffe + x15) - x47);
- out[6] = ((0xffffffe + x17) - x49);
- out[7] = ((0x7fffffe + x19) - x51);
- out[8] = ((0xffffffe + x21) - x53);
- out[9] = ((0x7fffffe + x23) - x55);
- out[10] = ((0xffffffe + x25) - x57);
- out[11] = ((0xffffffe + x27) - x59);
- out[12] = ((0x7fffffe + x29) - x61);
- out[13] = ((0xffffffe + x31) - x63);
- out[14] = ((0x7fffffe + x33) - x65);
- out[15] = ((0xffffffe + x35) - x67);
- out[16] = ((0x7fffffe + x34) - x66);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e452m3_17limbs/fesub.v b/src/Specific/solinas32_2e452m3_17limbs/fesub.v
deleted file mode 100644
index 2a27b3c6a..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e452m3_17limbs.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_2e452m3_17limbs/fesubDisplay.log b/src/Specific/solinas32_2e452m3_17limbs/fesubDisplay.log
deleted file mode 100644
index c717e8328..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x34, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x66, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39, x37))%core,
- (((0x7fffffe + x34) - x66), ((0xffffffe + x35) - x67), ((0x7fffffe + x33) - x65), ((0xffffffe + x31) - x63), ((0x7fffffe + x29) - x61), ((0xffffffe + x27) - x59), ((0xffffffe + x25) - x57), ((0x7fffffe + x23) - x55), ((0xffffffe + x21) - x53), ((0x7fffffe + x19) - x51), ((0xffffffe + x17) - x49), ((0xffffffe + x15) - x47), ((0x7fffffe + x13) - x45), ((0xffffffe + x11) - x43), ((0x7fffffe + x9) - x41), ((0xffffffe + x7) - x39), ((0xffffffa + x5) - x37)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e452m3_17limbs/fesubDisplay.v b/src/Specific/solinas32_2e452m3_17limbs/fesubDisplay.v
deleted file mode 100644
index b2eddd8ed..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e452m3_17limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e452m3_17limbs/freeze.c b/src/Specific/solinas32_2e452m3_17limbs/freeze.c
deleted file mode 100644
index 3bca81046..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/freeze.c
+++ /dev/null
@@ -1,89 +0,0 @@
-static void freeze(uint32_t out[17], const uint32_t in1[17]) {
- { const uint32_t x31 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffd);
- { uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x4, 0x7ffffff);
- { uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x6, 0x3ffffff);
- { uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x8, 0x7ffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x10, 0x3ffffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x12, 0x7ffffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x14, 0x7ffffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x16, 0x3ffffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x18, 0x7ffffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x20, 0x3ffffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x22, 0x7ffffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x24, 0x7ffffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x26, 0x3ffffff);
- { uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x28, 0x7ffffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x30, 0x3ffffff);
- { uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x32, 0x7ffffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x31, 0x3ffffff);
- { uint32_t x84 = cmovznz32(x83, 0x0, 0xffffffff);
- { uint32_t x85 = (x84 & 0x7fffffd);
- { uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x34, Return x85);
- { uint32_t x89 = (x84 & 0x7ffffff);
- { uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x37, Return x89);
- { uint32_t x93 = (x84 & 0x3ffffff);
- { uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x40, Return x93);
- { uint32_t x97 = (x84 & 0x7ffffff);
- { uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x43, Return x97);
- { uint32_t x101 = (x84 & 0x3ffffff);
- { uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x46, Return x101);
- { uint32_t x105 = (x84 & 0x7ffffff);
- { uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x49, Return x105);
- { uint32_t x109 = (x84 & 0x7ffffff);
- { uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x52, Return x109);
- { uint32_t x113 = (x84 & 0x3ffffff);
- { uint32_t x115, uint8_t x116 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x55, Return x113);
- { uint32_t x117 = (x84 & 0x7ffffff);
- { uint32_t x119, uint8_t x120 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x116, Return x58, Return x117);
- { uint32_t x121 = (x84 & 0x3ffffff);
- { uint32_t x123, uint8_t x124 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x120, Return x61, Return x121);
- { uint32_t x125 = (x84 & 0x7ffffff);
- { uint32_t x127, uint8_t x128 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x124, Return x64, Return x125);
- { uint32_t x129 = (x84 & 0x7ffffff);
- { uint32_t x131, uint8_t x132 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x128, Return x67, Return x129);
- { uint32_t x133 = (x84 & 0x3ffffff);
- { uint32_t x135, uint8_t x136 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x132, Return x70, Return x133);
- { uint32_t x137 = (x84 & 0x7ffffff);
- { uint32_t x139, uint8_t x140 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x136, Return x73, Return x137);
- { uint32_t x141 = (x84 & 0x3ffffff);
- { uint32_t x143, uint8_t x144 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x140, Return x76, Return x141);
- { uint32_t x145 = (x84 & 0x7ffffff);
- { uint32_t x147, uint8_t x148 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x144, Return x79, Return x145);
- { uint32_t x149 = (x84 & 0x3ffffff);
- { uint32_t x151, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x148, Return x82, Return x149);
- out[0] = x87;
- out[1] = x91;
- out[2] = x95;
- out[3] = x99;
- out[4] = x103;
- out[5] = x107;
- out[6] = x111;
- out[7] = x115;
- out[8] = x119;
- out[9] = x123;
- out[10] = x127;
- out[11] = x131;
- out[12] = x135;
- out[13] = x139;
- out[14] = x143;
- out[15] = x147;
- out[16] = x151;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e452m3_17limbs/freeze.v b/src/Specific/solinas32_2e452m3_17limbs/freeze.v
deleted file mode 100644
index bdee0d052..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e452m3_17limbs.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_2e452m3_17limbs/freezeDisplay.log b/src/Specific/solinas32_2e452m3_17limbs/freezeDisplay.log
deleted file mode 100644
index 50cf2b436..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/freezeDisplay.log
+++ /dev/null
@@ -1,59 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x31, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffd);
- uint32_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x35, Return x4, 0x7ffffff);
- uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x38, Return x6, 0x3ffffff);
- uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x8, 0x7ffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x10, 0x3ffffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x12, 0x7ffffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x14, 0x7ffffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x16, 0x3ffffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x18, 0x7ffffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x20, 0x3ffffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x22, 0x7ffffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x24, 0x7ffffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x26, 0x3ffffff);
- uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x28, 0x7ffffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x30, 0x3ffffff);
- uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x32, 0x7ffffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x31, 0x3ffffff);
- uint32_t x84 = cmovznz32(x83, 0x0, 0xffffffff);
- uint32_t x85 = (x84 & 0x7fffffd);
- uint32_t x87, uint8_t x88 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x34, Return x85);
- uint32_t x89 = (x84 & 0x7ffffff);
- uint32_t x91, uint8_t x92 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x37, Return x89);
- uint32_t x93 = (x84 & 0x3ffffff);
- uint32_t x95, uint8_t x96 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x40, Return x93);
- uint32_t x97 = (x84 & 0x7ffffff);
- uint32_t x99, uint8_t x100 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x43, Return x97);
- uint32_t x101 = (x84 & 0x3ffffff);
- uint32_t x103, uint8_t x104 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x46, Return x101);
- uint32_t x105 = (x84 & 0x7ffffff);
- uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x49, Return x105);
- uint32_t x109 = (x84 & 0x7ffffff);
- uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x52, Return x109);
- uint32_t x113 = (x84 & 0x3ffffff);
- uint32_t x115, uint8_t x116 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x55, Return x113);
- uint32_t x117 = (x84 & 0x7ffffff);
- uint32_t x119, uint8_t x120 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x116, Return x58, Return x117);
- uint32_t x121 = (x84 & 0x3ffffff);
- uint32_t x123, uint8_t x124 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x120, Return x61, Return x121);
- uint32_t x125 = (x84 & 0x7ffffff);
- uint32_t x127, uint8_t x128 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x124, Return x64, Return x125);
- uint32_t x129 = (x84 & 0x7ffffff);
- uint32_t x131, uint8_t x132 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x128, Return x67, Return x129);
- uint32_t x133 = (x84 & 0x3ffffff);
- uint32_t x135, uint8_t x136 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x132, Return x70, Return x133);
- uint32_t x137 = (x84 & 0x7ffffff);
- uint32_t x139, uint8_t x140 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x136, Return x73, Return x137);
- uint32_t x141 = (x84 & 0x3ffffff);
- uint32_t x143, uint8_t x144 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x140, Return x76, Return x141);
- uint32_t x145 = (x84 & 0x7ffffff);
- uint32_t x147, uint8_t x148 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x144, Return x79, Return x145);
- uint32_t x149 = (x84 & 0x3ffffff);
- uint32_t x151, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x148, Return x82, Return x149);
- (Return x151, Return x147, Return x143, Return x139, Return x135, Return x131, Return x127, Return x123, Return x119, Return x115, Return x111, Return x107, Return x103, Return x99, Return x95, Return x91, Return x87))
-x
- : word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e452m3_17limbs/freezeDisplay.v b/src/Specific/solinas32_2e452m3_17limbs/freezeDisplay.v
deleted file mode 100644
index af4d75679..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e452m3_17limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e452m3_17limbs/py_interpreter.sh b/src/Specific/solinas32_2e452m3_17limbs/py_interpreter.sh
deleted file mode 100755
index 825fa927d..000000000
--- a/src/Specific/solinas32_2e452m3_17limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**452 - 3' -Dmodulus_bytes='26 + 10/17' -Da24='121665'
diff --git a/src/Specific/solinas32_2e452m3_18limbs/CurveParameters.v b/src/Specific/solinas32_2e452m3_18limbs/CurveParameters.v
deleted file mode 100644
index e248a0012..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^452 - 3
-Base: 25 + 1/9
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 18%nat;
- base := 25 + 1/9;
- bitwidth := 32;
- s := 2^452;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 18); [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_2e452m3_18limbs/Synthesis.v b/src/Specific/solinas32_2e452m3_18limbs/Synthesis.v
deleted file mode 100644
index 51a907b62..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e452m3_18limbs.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_2e452m3_18limbs/compiler.sh b/src/Specific/solinas32_2e452m3_18limbs/compiler.sh
deleted file mode 100755
index 2a59ac6f9..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,25,25,25,25,25,25,25,25,26,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<452) - 3' "$@"
diff --git a/src/Specific/solinas32_2e452m3_18limbs/compilerxx.sh b/src/Specific/solinas32_2e452m3_18limbs/compilerxx.sh
deleted file mode 100755
index 231bd9295..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,25,25,25,25,25,25,25,25,26,25,25,25,25,25,25,25,25}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<452) - 3' "$@"
diff --git a/src/Specific/solinas32_2e452m3_18limbs/feadd.c b/src/Specific/solinas32_2e452m3_18limbs/feadd.c
deleted file mode 100644
index 7b8380410..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/feadd.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void feadd(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- out[0] = (x5 + x39);
- out[1] = (x7 + x41);
- out[2] = (x9 + x43);
- out[3] = (x11 + x45);
- out[4] = (x13 + x47);
- out[5] = (x15 + x49);
- out[6] = (x17 + x51);
- out[7] = (x19 + x53);
- out[8] = (x21 + x55);
- out[9] = (x23 + x57);
- out[10] = (x25 + x59);
- out[11] = (x27 + x61);
- out[12] = (x29 + x63);
- out[13] = (x31 + x65);
- out[14] = (x33 + x67);
- out[15] = (x35 + x69);
- out[16] = (x37 + x71);
- out[17] = (x36 + x70);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e452m3_18limbs/feadd.v b/src/Specific/solinas32_2e452m3_18limbs/feadd.v
deleted file mode 100644
index 77d48dc2f..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e452m3_18limbs.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_2e452m3_18limbs/feaddDisplay.log b/src/Specific/solinas32_2e452m3_18limbs/feaddDisplay.log
deleted file mode 100644
index 5e9c243f4..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- ((x36 + x70), (x37 + x71), (x35 + x69), (x33 + x67), (x31 + x65), (x29 + x63), (x27 + x61), (x25 + x59), (x23 + x57), (x21 + x55), (x19 + x53), (x17 + x51), (x15 + x49), (x13 + x47), (x11 + x45), (x9 + x43), (x7 + x41), (x5 + x39)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e452m3_18limbs/feaddDisplay.v b/src/Specific/solinas32_2e452m3_18limbs/feaddDisplay.v
deleted file mode 100644
index 95ca34983..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e452m3_18limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e452m3_18limbs/fecarry.v b/src/Specific/solinas32_2e452m3_18limbs/fecarry.v
deleted file mode 100644
index f0bb3ee72..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e452m3_18limbs.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_2e452m3_18limbs/fecarryDisplay.v b/src/Specific/solinas32_2e452m3_18limbs/fecarryDisplay.v
deleted file mode 100644
index ba96535ad..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e452m3_18limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e452m3_18limbs/femul.c b/src/Specific/solinas32_2e452m3_18limbs/femul.c
deleted file mode 100644
index dc6233236..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/femul.c
+++ /dev/null
@@ -1,134 +0,0 @@
-static void femul(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- { uint64_t x72 = (((uint64_t)x5 * x70) + ((0x2 * ((uint64_t)x7 * x71)) + ((0x2 * ((uint64_t)x9 * x69)) + ((0x2 * ((uint64_t)x11 * x67)) + ((0x2 * ((uint64_t)x13 * x65)) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + ((0x2 * ((uint64_t)x25 * x53)) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + ((0x2 * ((uint64_t)x33 * x45)) + ((0x2 * ((uint64_t)x35 * x43)) + ((0x2 * ((uint64_t)x37 * x41)) + ((uint64_t)x36 * x39))))))))))))))))));
- { uint64_t x73 = ((((uint64_t)x5 * x71) + ((0x2 * ((uint64_t)x7 * x69)) + ((0x2 * ((uint64_t)x9 * x67)) + ((0x2 * ((uint64_t)x11 * x65)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + (((uint64_t)x19 * x57) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + ((0x2 * ((uint64_t)x35 * x41)) + ((uint64_t)x37 * x39))))))))))))))))) + (0x3 * ((uint64_t)x36 * x70)));
- { uint64_t x74 = ((((uint64_t)x5 * x69) + ((0x2 * ((uint64_t)x7 * x67)) + ((0x2 * ((uint64_t)x9 * x65)) + ((0x2 * ((uint64_t)x11 * x63)) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + (((uint64_t)x17 * x57) + (((uint64_t)x19 * x55) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + ((0x2 * ((uint64_t)x31 * x43)) + ((0x2 * ((uint64_t)x33 * x41)) + ((uint64_t)x35 * x39)))))))))))))))) + (0x3 * (((uint64_t)x37 * x70) + ((uint64_t)x36 * x71))));
- { uint64_t x75 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + (((uint64_t)x15 * x57) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((uint64_t)x33 * x39))))))))))))))) + (0x3 * (((uint64_t)x35 * x70) + (((uint64_t)x37 * x71) + ((uint64_t)x36 * x69)))));
- { uint64_t x76 = ((((uint64_t)x5 * x65) + ((0x2 * ((uint64_t)x7 * x63)) + ((0x2 * ((uint64_t)x9 * x61)) + ((0x2 * ((uint64_t)x11 * x59)) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + ((0x2 * ((uint64_t)x25 * x45)) + ((0x2 * ((uint64_t)x27 * x43)) + ((0x2 * ((uint64_t)x29 * x41)) + ((uint64_t)x31 * x39)))))))))))))) + (0x3 * (((uint64_t)x33 * x70) + (((uint64_t)x35 * x71) + (((uint64_t)x37 * x69) + ((uint64_t)x36 * x67))))));
- { uint64_t x77 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + (((uint64_t)x11 * x57) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + ((0x2 * ((uint64_t)x25 * x43)) + ((0x2 * ((uint64_t)x27 * x41)) + ((uint64_t)x29 * x39))))))))))))) + (0x3 * (((uint64_t)x31 * x70) + (((uint64_t)x33 * x71) + (((uint64_t)x35 * x69) + (((uint64_t)x37 * x67) + ((uint64_t)x36 * x65)))))));
- { uint64_t x78 = ((((uint64_t)x5 * x61) + ((0x2 * ((uint64_t)x7 * x59)) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + ((0x2 * ((uint64_t)x25 * x41)) + ((uint64_t)x27 * x39)))))))))))) + (0x3 * (((uint64_t)x29 * x70) + (((uint64_t)x31 * x71) + (((uint64_t)x33 * x69) + (((uint64_t)x35 * x67) + (((uint64_t)x37 * x65) + ((uint64_t)x36 * x63))))))));
- { uint64_t x79 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + ((uint64_t)x25 * x39))))))))))) + (0x3 * (((uint64_t)x27 * x70) + (((uint64_t)x29 * x71) + (((uint64_t)x31 * x69) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + (((uint64_t)x37 * x63) + ((uint64_t)x36 * x61)))))))));
- { uint64_t x80 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((uint64_t)x23 * x39)))))))))) + (0x3 * ((0x2 * ((uint64_t)x25 * x70)) + ((0x2 * ((uint64_t)x27 * x71)) + ((0x2 * ((uint64_t)x29 * x69)) + ((0x2 * ((uint64_t)x31 * x67)) + ((0x2 * ((uint64_t)x33 * x65)) + ((0x2 * ((uint64_t)x35 * x63)) + ((0x2 * ((uint64_t)x37 * x61)) + (0x2 * ((uint64_t)x36 * x59)))))))))));
- { uint64_t x81 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((uint64_t)x21 * x39))))))))) + (0x3 * (((uint64_t)x23 * x70) + ((0x2 * ((uint64_t)x25 * x71)) + ((0x2 * ((uint64_t)x27 * x69)) + ((0x2 * ((uint64_t)x29 * x67)) + ((0x2 * ((uint64_t)x31 * x65)) + ((0x2 * ((uint64_t)x33 * x63)) + ((0x2 * ((uint64_t)x35 * x61)) + ((0x2 * ((uint64_t)x37 * x59)) + ((uint64_t)x36 * x57)))))))))));
- { uint64_t x82 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + ((uint64_t)x19 * x39)))))))) + (0x3 * (((uint64_t)x21 * x70) + (((uint64_t)x23 * x71) + ((0x2 * ((uint64_t)x25 * x69)) + ((0x2 * ((uint64_t)x27 * x67)) + ((0x2 * ((uint64_t)x29 * x65)) + ((0x2 * ((uint64_t)x31 * x63)) + ((0x2 * ((uint64_t)x33 * x61)) + ((0x2 * ((uint64_t)x35 * x59)) + (((uint64_t)x37 * x57) + ((uint64_t)x36 * x55))))))))))));
- { uint64_t x83 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((uint64_t)x17 * x39))))))) + (0x3 * (((uint64_t)x19 * x70) + (((uint64_t)x21 * x71) + (((uint64_t)x23 * x69) + ((0x2 * ((uint64_t)x25 * x67)) + ((0x2 * ((uint64_t)x27 * x65)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + (((uint64_t)x35 * x57) + (((uint64_t)x37 * x55) + ((uint64_t)x36 * x53)))))))))))));
- { uint64_t x84 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + ((0x2 * ((uint64_t)x11 * x43)) + ((0x2 * ((uint64_t)x13 * x41)) + ((uint64_t)x15 * x39)))))) + (0x3 * (((uint64_t)x17 * x70) + (((uint64_t)x19 * x71) + (((uint64_t)x21 * x69) + (((uint64_t)x23 * x67) + ((0x2 * ((uint64_t)x25 * x65)) + ((0x2 * ((uint64_t)x27 * x63)) + ((0x2 * ((uint64_t)x29 * x61)) + ((0x2 * ((uint64_t)x31 * x59)) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + (((uint64_t)x37 * x53) + ((uint64_t)x36 * x51))))))))))))));
- { uint64_t x85 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((uint64_t)x13 * x39))))) + (0x3 * (((uint64_t)x15 * x70) + (((uint64_t)x17 * x71) + (((uint64_t)x19 * x69) + (((uint64_t)x21 * x67) + (((uint64_t)x23 * x65) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + (((uint64_t)x35 * x53) + (((uint64_t)x37 * x51) + ((uint64_t)x36 * x49)))))))))))))));
- { uint64_t x86 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((uint64_t)x11 * x39)))) + (0x3 * (((uint64_t)x13 * x70) + (((uint64_t)x15 * x71) + (((uint64_t)x17 * x69) + (((uint64_t)x19 * x67) + (((uint64_t)x21 * x65) + (((uint64_t)x23 * x63) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + (((uint64_t)x29 * x57) + (((uint64_t)x31 * x55) + (((uint64_t)x33 * x53) + (((uint64_t)x35 * x51) + (((uint64_t)x37 * x49) + ((uint64_t)x36 * x47))))))))))))))));
- { uint64_t x87 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((uint64_t)x9 * x39))) + (0x3 * (((uint64_t)x11 * x70) + (((uint64_t)x13 * x71) + (((uint64_t)x15 * x69) + (((uint64_t)x17 * x67) + (((uint64_t)x19 * x65) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + ((0x2 * ((uint64_t)x25 * x59)) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + (((uint64_t)x35 * x49) + (((uint64_t)x37 * x47) + ((uint64_t)x36 * x45)))))))))))))))));
- { uint64_t x88 = ((((uint64_t)x5 * x41) + ((uint64_t)x7 * x39)) + (0x3 * (((uint64_t)x9 * x70) + (((uint64_t)x11 * x71) + (((uint64_t)x13 * x69) + (((uint64_t)x15 * x67) + (((uint64_t)x17 * x65) + (((uint64_t)x19 * x63) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + (((uint64_t)x35 * x47) + (((uint64_t)x37 * x45) + ((uint64_t)x36 * x43))))))))))))))))));
- { uint64_t x89 = (((uint64_t)x5 * x39) + (0x3 * ((0x2 * ((uint64_t)x7 * x70)) + ((0x2 * ((uint64_t)x9 * x71)) + ((0x2 * ((uint64_t)x11 * x69)) + ((0x2 * ((uint64_t)x13 * x67)) + ((0x2 * ((uint64_t)x15 * x65)) + ((0x2 * ((uint64_t)x17 * x63)) + ((0x2 * ((uint64_t)x19 * x61)) + ((0x2 * ((uint64_t)x21 * x59)) + (((uint64_t)x23 * x57) + ((0x2 * ((uint64_t)x25 * x55)) + ((0x2 * ((uint64_t)x27 * x53)) + ((0x2 * ((uint64_t)x29 * x51)) + ((0x2 * ((uint64_t)x31 * x49)) + ((0x2 * ((uint64_t)x33 * x47)) + ((0x2 * ((uint64_t)x35 * x45)) + ((0x2 * ((uint64_t)x37 * x43)) + (0x2 * ((uint64_t)x36 * x41))))))))))))))))))));
- { uint64_t x90 = (x89 >> 0x1a);
- { uint32_t x91 = ((uint32_t)x89 & 0x3ffffff);
- { uint64_t x92 = (x90 + x88);
- { uint64_t x93 = (x92 >> 0x19);
- { uint32_t x94 = ((uint32_t)x92 & 0x1ffffff);
- { uint64_t x95 = (x93 + x87);
- { uint64_t x96 = (x95 >> 0x19);
- { uint32_t x97 = ((uint32_t)x95 & 0x1ffffff);
- { uint64_t x98 = (x96 + x86);
- { uint64_t x99 = (x98 >> 0x19);
- { uint32_t x100 = ((uint32_t)x98 & 0x1ffffff);
- { uint64_t x101 = (x99 + x85);
- { uint64_t x102 = (x101 >> 0x19);
- { uint32_t x103 = ((uint32_t)x101 & 0x1ffffff);
- { uint64_t x104 = (x102 + x84);
- { uint64_t x105 = (x104 >> 0x19);
- { uint32_t x106 = ((uint32_t)x104 & 0x1ffffff);
- { uint64_t x107 = (x105 + x83);
- { uint64_t x108 = (x107 >> 0x19);
- { uint32_t x109 = ((uint32_t)x107 & 0x1ffffff);
- { uint64_t x110 = (x108 + x82);
- { uint64_t x111 = (x110 >> 0x19);
- { uint32_t x112 = ((uint32_t)x110 & 0x1ffffff);
- { uint64_t x113 = (x111 + x81);
- { uint64_t x114 = (x113 >> 0x19);
- { uint32_t x115 = ((uint32_t)x113 & 0x1ffffff);
- { uint64_t x116 = (x114 + x80);
- { uint64_t x117 = (x116 >> 0x1a);
- { uint32_t x118 = ((uint32_t)x116 & 0x3ffffff);
- { uint64_t x119 = (x117 + x79);
- { uint64_t x120 = (x119 >> 0x19);
- { uint32_t x121 = ((uint32_t)x119 & 0x1ffffff);
- { uint64_t x122 = (x120 + x78);
- { uint64_t x123 = (x122 >> 0x19);
- { uint32_t x124 = ((uint32_t)x122 & 0x1ffffff);
- { uint64_t x125 = (x123 + x77);
- { uint64_t x126 = (x125 >> 0x19);
- { uint32_t x127 = ((uint32_t)x125 & 0x1ffffff);
- { uint64_t x128 = (x126 + x76);
- { uint64_t x129 = (x128 >> 0x19);
- { uint32_t x130 = ((uint32_t)x128 & 0x1ffffff);
- { uint64_t x131 = (x129 + x75);
- { uint64_t x132 = (x131 >> 0x19);
- { uint32_t x133 = ((uint32_t)x131 & 0x1ffffff);
- { uint64_t x134 = (x132 + x74);
- { uint64_t x135 = (x134 >> 0x19);
- { uint32_t x136 = ((uint32_t)x134 & 0x1ffffff);
- { uint64_t x137 = (x135 + x73);
- { uint64_t x138 = (x137 >> 0x19);
- { uint32_t x139 = ((uint32_t)x137 & 0x1ffffff);
- { uint64_t x140 = (x138 + x72);
- { uint64_t x141 = (x140 >> 0x19);
- { uint32_t x142 = ((uint32_t)x140 & 0x1ffffff);
- { uint64_t x143 = (x91 + (0x3 * x141));
- { uint32_t x144 = (uint32_t) (x143 >> 0x1a);
- { uint32_t x145 = ((uint32_t)x143 & 0x3ffffff);
- { uint32_t x146 = (x144 + x94);
- { uint32_t x147 = (x146 >> 0x19);
- { uint32_t x148 = (x146 & 0x1ffffff);
- out[0] = x145;
- out[1] = x148;
- out[2] = (x147 + x97);
- out[3] = x100;
- out[4] = x103;
- out[5] = x106;
- out[6] = x109;
- out[7] = x112;
- out[8] = x115;
- out[9] = x118;
- out[10] = x121;
- out[11] = x124;
- out[12] = x127;
- out[13] = x130;
- out[14] = x133;
- out[15] = x136;
- out[16] = x139;
- out[17] = x142;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e452m3_18limbs/femul.v b/src/Specific/solinas32_2e452m3_18limbs/femul.v
deleted file mode 100644
index b7701fd22..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e452m3_18limbs.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_2e452m3_18limbs/femulDisplay.log b/src/Specific/solinas32_2e452m3_18limbs/femulDisplay.log
deleted file mode 100644
index 2ce27ff76..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/femulDisplay.log
+++ /dev/null
@@ -1,84 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- uint64_t x72 = (((uint64_t)x5 * x70) + ((0x2 * ((uint64_t)x7 * x71)) + ((0x2 * ((uint64_t)x9 * x69)) + ((0x2 * ((uint64_t)x11 * x67)) + ((0x2 * ((uint64_t)x13 * x65)) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + ((0x2 * ((uint64_t)x25 * x53)) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + ((0x2 * ((uint64_t)x33 * x45)) + ((0x2 * ((uint64_t)x35 * x43)) + ((0x2 * ((uint64_t)x37 * x41)) + ((uint64_t)x36 * x39))))))))))))))))));
- uint64_t x73 = ((((uint64_t)x5 * x71) + ((0x2 * ((uint64_t)x7 * x69)) + ((0x2 * ((uint64_t)x9 * x67)) + ((0x2 * ((uint64_t)x11 * x65)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + (((uint64_t)x19 * x57) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((0x2 * ((uint64_t)x33 * x43)) + ((0x2 * ((uint64_t)x35 * x41)) + ((uint64_t)x37 * x39))))))))))))))))) + (0x3 * ((uint64_t)x36 * x70)));
- uint64_t x74 = ((((uint64_t)x5 * x69) + ((0x2 * ((uint64_t)x7 * x67)) + ((0x2 * ((uint64_t)x9 * x65)) + ((0x2 * ((uint64_t)x11 * x63)) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + (((uint64_t)x17 * x57) + (((uint64_t)x19 * x55) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + ((0x2 * ((uint64_t)x31 * x43)) + ((0x2 * ((uint64_t)x33 * x41)) + ((uint64_t)x35 * x39)))))))))))))))) + (0x3 * (((uint64_t)x37 * x70) + ((uint64_t)x36 * x71))));
- uint64_t x75 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + (((uint64_t)x15 * x57) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((0x2 * ((uint64_t)x31 * x41)) + ((uint64_t)x33 * x39))))))))))))))) + (0x3 * (((uint64_t)x35 * x70) + (((uint64_t)x37 * x71) + ((uint64_t)x36 * x69)))));
- uint64_t x76 = ((((uint64_t)x5 * x65) + ((0x2 * ((uint64_t)x7 * x63)) + ((0x2 * ((uint64_t)x9 * x61)) + ((0x2 * ((uint64_t)x11 * x59)) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + ((0x2 * ((uint64_t)x25 * x45)) + ((0x2 * ((uint64_t)x27 * x43)) + ((0x2 * ((uint64_t)x29 * x41)) + ((uint64_t)x31 * x39)))))))))))))) + (0x3 * (((uint64_t)x33 * x70) + (((uint64_t)x35 * x71) + (((uint64_t)x37 * x69) + ((uint64_t)x36 * x67))))));
- uint64_t x77 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + (((uint64_t)x11 * x57) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + ((0x2 * ((uint64_t)x25 * x43)) + ((0x2 * ((uint64_t)x27 * x41)) + ((uint64_t)x29 * x39))))))))))))) + (0x3 * (((uint64_t)x31 * x70) + (((uint64_t)x33 * x71) + (((uint64_t)x35 * x69) + (((uint64_t)x37 * x67) + ((uint64_t)x36 * x65)))))));
- uint64_t x78 = ((((uint64_t)x5 * x61) + ((0x2 * ((uint64_t)x7 * x59)) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + ((0x2 * ((uint64_t)x25 * x41)) + ((uint64_t)x27 * x39)))))))))))) + (0x3 * (((uint64_t)x29 * x70) + (((uint64_t)x31 * x71) + (((uint64_t)x33 * x69) + (((uint64_t)x35 * x67) + (((uint64_t)x37 * x65) + ((uint64_t)x36 * x63))))))));
- uint64_t x79 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + ((uint64_t)x25 * x39))))))))))) + (0x3 * (((uint64_t)x27 * x70) + (((uint64_t)x29 * x71) + (((uint64_t)x31 * x69) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + (((uint64_t)x37 * x63) + ((uint64_t)x36 * x61)))))))));
- uint64_t x80 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + ((0x2 * ((uint64_t)x21 * x41)) + ((uint64_t)x23 * x39)))))))))) + (0x3 * ((0x2 * ((uint64_t)x25 * x70)) + ((0x2 * ((uint64_t)x27 * x71)) + ((0x2 * ((uint64_t)x29 * x69)) + ((0x2 * ((uint64_t)x31 * x67)) + ((0x2 * ((uint64_t)x33 * x65)) + ((0x2 * ((uint64_t)x35 * x63)) + ((0x2 * ((uint64_t)x37 * x61)) + (0x2 * ((uint64_t)x36 * x59)))))))))));
- uint64_t x81 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((0x2 * ((uint64_t)x19 * x41)) + ((uint64_t)x21 * x39))))))))) + (0x3 * (((uint64_t)x23 * x70) + ((0x2 * ((uint64_t)x25 * x71)) + ((0x2 * ((uint64_t)x27 * x69)) + ((0x2 * ((uint64_t)x29 * x67)) + ((0x2 * ((uint64_t)x31 * x65)) + ((0x2 * ((uint64_t)x33 * x63)) + ((0x2 * ((uint64_t)x35 * x61)) + ((0x2 * ((uint64_t)x37 * x59)) + ((uint64_t)x36 * x57)))))))))));
- uint64_t x82 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + ((0x2 * ((uint64_t)x17 * x41)) + ((uint64_t)x19 * x39)))))))) + (0x3 * (((uint64_t)x21 * x70) + (((uint64_t)x23 * x71) + ((0x2 * ((uint64_t)x25 * x69)) + ((0x2 * ((uint64_t)x27 * x67)) + ((0x2 * ((uint64_t)x29 * x65)) + ((0x2 * ((uint64_t)x31 * x63)) + ((0x2 * ((uint64_t)x33 * x61)) + ((0x2 * ((uint64_t)x35 * x59)) + (((uint64_t)x37 * x57) + ((uint64_t)x36 * x55))))))))))));
- uint64_t x83 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((uint64_t)x17 * x39))))))) + (0x3 * (((uint64_t)x19 * x70) + (((uint64_t)x21 * x71) + (((uint64_t)x23 * x69) + ((0x2 * ((uint64_t)x25 * x67)) + ((0x2 * ((uint64_t)x27 * x65)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + (((uint64_t)x35 * x57) + (((uint64_t)x37 * x55) + ((uint64_t)x36 * x53)))))))))))));
- uint64_t x84 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + ((0x2 * ((uint64_t)x11 * x43)) + ((0x2 * ((uint64_t)x13 * x41)) + ((uint64_t)x15 * x39)))))) + (0x3 * (((uint64_t)x17 * x70) + (((uint64_t)x19 * x71) + (((uint64_t)x21 * x69) + (((uint64_t)x23 * x67) + ((0x2 * ((uint64_t)x25 * x65)) + ((0x2 * ((uint64_t)x27 * x63)) + ((0x2 * ((uint64_t)x29 * x61)) + ((0x2 * ((uint64_t)x31 * x59)) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + (((uint64_t)x37 * x53) + ((uint64_t)x36 * x51))))))))))))));
- uint64_t x85 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((0x2 * ((uint64_t)x11 * x41)) + ((uint64_t)x13 * x39))))) + (0x3 * (((uint64_t)x15 * x70) + (((uint64_t)x17 * x71) + (((uint64_t)x19 * x69) + (((uint64_t)x21 * x67) + (((uint64_t)x23 * x65) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + (((uint64_t)x35 * x53) + (((uint64_t)x37 * x51) + ((uint64_t)x36 * x49)))))))))))))));
- uint64_t x86 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((uint64_t)x11 * x39)))) + (0x3 * (((uint64_t)x13 * x70) + (((uint64_t)x15 * x71) + (((uint64_t)x17 * x69) + (((uint64_t)x19 * x67) + (((uint64_t)x21 * x65) + (((uint64_t)x23 * x63) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + (((uint64_t)x29 * x57) + (((uint64_t)x31 * x55) + (((uint64_t)x33 * x53) + (((uint64_t)x35 * x51) + (((uint64_t)x37 * x49) + ((uint64_t)x36 * x47))))))))))))))));
- uint64_t x87 = ((((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x41)) + ((uint64_t)x9 * x39))) + (0x3 * (((uint64_t)x11 * x70) + (((uint64_t)x13 * x71) + (((uint64_t)x15 * x69) + (((uint64_t)x17 * x67) + (((uint64_t)x19 * x65) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + ((0x2 * ((uint64_t)x25 * x59)) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + (((uint64_t)x35 * x49) + (((uint64_t)x37 * x47) + ((uint64_t)x36 * x45)))))))))))))))));
- uint64_t x88 = ((((uint64_t)x5 * x41) + ((uint64_t)x7 * x39)) + (0x3 * (((uint64_t)x9 * x70) + (((uint64_t)x11 * x71) + (((uint64_t)x13 * x69) + (((uint64_t)x15 * x67) + (((uint64_t)x17 * x65) + (((uint64_t)x19 * x63) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + (((uint64_t)x35 * x47) + (((uint64_t)x37 * x45) + ((uint64_t)x36 * x43))))))))))))))))));
- uint64_t x89 = (((uint64_t)x5 * x39) + (0x3 * ((0x2 * ((uint64_t)x7 * x70)) + ((0x2 * ((uint64_t)x9 * x71)) + ((0x2 * ((uint64_t)x11 * x69)) + ((0x2 * ((uint64_t)x13 * x67)) + ((0x2 * ((uint64_t)x15 * x65)) + ((0x2 * ((uint64_t)x17 * x63)) + ((0x2 * ((uint64_t)x19 * x61)) + ((0x2 * ((uint64_t)x21 * x59)) + (((uint64_t)x23 * x57) + ((0x2 * ((uint64_t)x25 * x55)) + ((0x2 * ((uint64_t)x27 * x53)) + ((0x2 * ((uint64_t)x29 * x51)) + ((0x2 * ((uint64_t)x31 * x49)) + ((0x2 * ((uint64_t)x33 * x47)) + ((0x2 * ((uint64_t)x35 * x45)) + ((0x2 * ((uint64_t)x37 * x43)) + (0x2 * ((uint64_t)x36 * x41))))))))))))))))))));
- uint64_t x90 = (x89 >> 0x1a);
- uint32_t x91 = ((uint32_t)x89 & 0x3ffffff);
- uint64_t x92 = (x90 + x88);
- uint64_t x93 = (x92 >> 0x19);
- uint32_t x94 = ((uint32_t)x92 & 0x1ffffff);
- uint64_t x95 = (x93 + x87);
- uint64_t x96 = (x95 >> 0x19);
- uint32_t x97 = ((uint32_t)x95 & 0x1ffffff);
- uint64_t x98 = (x96 + x86);
- uint64_t x99 = (x98 >> 0x19);
- uint32_t x100 = ((uint32_t)x98 & 0x1ffffff);
- uint64_t x101 = (x99 + x85);
- uint64_t x102 = (x101 >> 0x19);
- uint32_t x103 = ((uint32_t)x101 & 0x1ffffff);
- uint64_t x104 = (x102 + x84);
- uint64_t x105 = (x104 >> 0x19);
- uint32_t x106 = ((uint32_t)x104 & 0x1ffffff);
- uint64_t x107 = (x105 + x83);
- uint64_t x108 = (x107 >> 0x19);
- uint32_t x109 = ((uint32_t)x107 & 0x1ffffff);
- uint64_t x110 = (x108 + x82);
- uint64_t x111 = (x110 >> 0x19);
- uint32_t x112 = ((uint32_t)x110 & 0x1ffffff);
- uint64_t x113 = (x111 + x81);
- uint64_t x114 = (x113 >> 0x19);
- uint32_t x115 = ((uint32_t)x113 & 0x1ffffff);
- uint64_t x116 = (x114 + x80);
- uint64_t x117 = (x116 >> 0x1a);
- uint32_t x118 = ((uint32_t)x116 & 0x3ffffff);
- uint64_t x119 = (x117 + x79);
- uint64_t x120 = (x119 >> 0x19);
- uint32_t x121 = ((uint32_t)x119 & 0x1ffffff);
- uint64_t x122 = (x120 + x78);
- uint64_t x123 = (x122 >> 0x19);
- uint32_t x124 = ((uint32_t)x122 & 0x1ffffff);
- uint64_t x125 = (x123 + x77);
- uint64_t x126 = (x125 >> 0x19);
- uint32_t x127 = ((uint32_t)x125 & 0x1ffffff);
- uint64_t x128 = (x126 + x76);
- uint64_t x129 = (x128 >> 0x19);
- uint32_t x130 = ((uint32_t)x128 & 0x1ffffff);
- uint64_t x131 = (x129 + x75);
- uint64_t x132 = (x131 >> 0x19);
- uint32_t x133 = ((uint32_t)x131 & 0x1ffffff);
- uint64_t x134 = (x132 + x74);
- uint64_t x135 = (x134 >> 0x19);
- uint32_t x136 = ((uint32_t)x134 & 0x1ffffff);
- uint64_t x137 = (x135 + x73);
- uint64_t x138 = (x137 >> 0x19);
- uint32_t x139 = ((uint32_t)x137 & 0x1ffffff);
- uint64_t x140 = (x138 + x72);
- uint64_t x141 = (x140 >> 0x19);
- uint32_t x142 = ((uint32_t)x140 & 0x1ffffff);
- uint64_t x143 = (x91 + (0x3 * x141));
- uint32_t x144 = (uint32_t) (x143 >> 0x1a);
- uint32_t x145 = ((uint32_t)x143 & 0x3ffffff);
- uint32_t x146 = (x144 + x94);
- uint32_t x147 = (x146 >> 0x19);
- uint32_t x148 = (x146 & 0x1ffffff);
- return (Return x142, Return x139, Return x136, Return x133, Return x130, Return x127, Return x124, Return x121, Return x118, Return x115, Return x112, Return x109, Return x106, Return x103, Return x100, (x147 + x97), Return x148, Return x145))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e452m3_18limbs/femulDisplay.v b/src/Specific/solinas32_2e452m3_18limbs/femulDisplay.v
deleted file mode 100644
index cc70d0e55..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e452m3_18limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e452m3_18limbs/fesquare.c b/src/Specific/solinas32_2e452m3_18limbs/fesquare.c
deleted file mode 100644
index 125526889..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/fesquare.c
+++ /dev/null
@@ -1,116 +0,0 @@
-static void fesquare(uint32_t out[18], const uint32_t in1[18]) {
- { const uint32_t x33 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x35 = (((uint64_t)x2 * x33) + ((0x2 * ((uint64_t)x4 * x34)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x33 * x2))))))))))))))))));
- { uint64_t x36 = ((((uint64_t)x2 * x34) + ((0x2 * ((uint64_t)x4 * x32)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x34 * x2))))))))))))))))) + (0x3 * ((uint64_t)x33 * x33)));
- { uint64_t x37 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x3 * (((uint64_t)x34 * x33) + ((uint64_t)x33 * x34))));
- { uint64_t x38 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + ((0x2 * ((uint64_t)x6 * x26)) + ((0x2 * ((uint64_t)x8 * x24)) + ((0x2 * ((uint64_t)x10 * x22)) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + ((0x2 * ((uint64_t)x22 * x10)) + ((0x2 * ((uint64_t)x24 * x8)) + ((0x2 * ((uint64_t)x26 * x6)) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x3 * (((uint64_t)x32 * x33) + (((uint64_t)x34 * x34) + ((uint64_t)x33 * x32)))));
- { uint64_t x39 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x3 * (((uint64_t)x30 * x33) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + ((uint64_t)x33 * x30))))));
- { uint64_t x40 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x3 * (((uint64_t)x28 * x33) + (((uint64_t)x30 * x34) + (((uint64_t)x32 * x32) + (((uint64_t)x34 * x30) + ((uint64_t)x33 * x28)))))));
- { uint64_t x41 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x3 * (((uint64_t)x26 * x33) + (((uint64_t)x28 * x34) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + (((uint64_t)x34 * x28) + ((uint64_t)x33 * x26))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x3 * (((uint64_t)x24 * x33) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + (((uint64_t)x30 * x30) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + ((uint64_t)x33 * x24)))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x3 * ((0x2 * ((uint64_t)x22 * x33)) + ((0x2 * ((uint64_t)x24 * x34)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + ((0x2 * ((uint64_t)x34 * x24)) + (0x2 * ((uint64_t)x33 * x22)))))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x3 * (((uint64_t)x20 * x33) + ((0x2 * ((uint64_t)x22 * x34)) + ((0x2 * ((uint64_t)x24 * x32)) + ((0x2 * ((uint64_t)x26 * x30)) + ((0x2 * ((uint64_t)x28 * x28)) + ((0x2 * ((uint64_t)x30 * x26)) + ((0x2 * ((uint64_t)x32 * x24)) + ((0x2 * ((uint64_t)x34 * x22)) + ((uint64_t)x33 * x20)))))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x3 * (((uint64_t)x18 * x33) + (((uint64_t)x20 * x34) + ((0x2 * ((uint64_t)x22 * x32)) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + ((0x2 * ((uint64_t)x32 * x22)) + (((uint64_t)x34 * x20) + ((uint64_t)x33 * x18))))))))))));
- { uint64_t x46 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x3 * (((uint64_t)x16 * x33) + (((uint64_t)x18 * x34) + (((uint64_t)x20 * x32) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + ((0x2 * ((uint64_t)x26 * x26)) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + (((uint64_t)x32 * x20) + (((uint64_t)x34 * x18) + ((uint64_t)x33 * x16)))))))))))));
- { uint64_t x47 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x3 * (((uint64_t)x14 * x33) + (((uint64_t)x16 * x34) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + ((0x2 * ((uint64_t)x22 * x28)) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + ((0x2 * ((uint64_t)x28 * x22)) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + (((uint64_t)x34 * x16) + ((uint64_t)x33 * x14))))))))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x3 * (((uint64_t)x12 * x33) + (((uint64_t)x14 * x34) + (((uint64_t)x16 * x32) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + (((uint64_t)x32 * x16) + (((uint64_t)x34 * x14) + ((uint64_t)x33 * x12)))))))))))))));
- { uint64_t x49 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x3 * (((uint64_t)x10 * x33) + (((uint64_t)x12 * x34) + (((uint64_t)x14 * x32) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + (((uint64_t)x32 * x14) + (((uint64_t)x34 * x12) + ((uint64_t)x33 * x10))))))))))))))));
- { uint64_t x50 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x3 * (((uint64_t)x8 * x33) + (((uint64_t)x10 * x34) + (((uint64_t)x12 * x32) + (((uint64_t)x14 * x30) + (((uint64_t)x16 * x28) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + (((uint64_t)x28 * x16) + (((uint64_t)x30 * x14) + (((uint64_t)x32 * x12) + (((uint64_t)x34 * x10) + ((uint64_t)x33 * x8)))))))))))))))));
- { uint64_t x51 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * (((uint64_t)x6 * x33) + (((uint64_t)x8 * x34) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + (((uint64_t)x34 * x8) + ((uint64_t)x33 * x6))))))))))))))))));
- { uint64_t x52 = (((uint64_t)x2 * x2) + (0x3 * ((0x2 * ((uint64_t)x4 * x33)) + ((0x2 * ((uint64_t)x6 * x34)) + ((0x2 * ((uint64_t)x8 * x32)) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + ((0x2 * ((uint64_t)x32 * x8)) + ((0x2 * ((uint64_t)x34 * x6)) + (0x2 * ((uint64_t)x33 * x4))))))))))))))))))));
- { uint64_t x53 = (x52 >> 0x1a);
- { uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- { uint64_t x55 = (x53 + x51);
- { uint64_t x56 = (x55 >> 0x19);
- { uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- { uint64_t x58 = (x56 + x50);
- { uint64_t x59 = (x58 >> 0x19);
- { uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- { uint64_t x61 = (x59 + x49);
- { uint64_t x62 = (x61 >> 0x19);
- { uint32_t x63 = ((uint32_t)x61 & 0x1ffffff);
- { uint64_t x64 = (x62 + x48);
- { uint64_t x65 = (x64 >> 0x19);
- { uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- { uint64_t x67 = (x65 + x47);
- { uint64_t x68 = (x67 >> 0x19);
- { uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- { uint64_t x70 = (x68 + x46);
- { uint64_t x71 = (x70 >> 0x19);
- { uint32_t x72 = ((uint32_t)x70 & 0x1ffffff);
- { uint64_t x73 = (x71 + x45);
- { uint64_t x74 = (x73 >> 0x19);
- { uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- { uint64_t x76 = (x74 + x44);
- { uint64_t x77 = (x76 >> 0x19);
- { uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- { uint64_t x79 = (x77 + x43);
- { uint64_t x80 = (x79 >> 0x1a);
- { uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- { uint64_t x82 = (x80 + x42);
- { uint64_t x83 = (x82 >> 0x19);
- { uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- { uint64_t x85 = (x83 + x41);
- { uint64_t x86 = (x85 >> 0x19);
- { uint32_t x87 = ((uint32_t)x85 & 0x1ffffff);
- { uint64_t x88 = (x86 + x40);
- { uint64_t x89 = (x88 >> 0x19);
- { uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- { uint64_t x91 = (x89 + x39);
- { uint64_t x92 = (x91 >> 0x19);
- { uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- { uint64_t x94 = (x92 + x38);
- { uint64_t x95 = (x94 >> 0x19);
- { uint32_t x96 = ((uint32_t)x94 & 0x1ffffff);
- { uint64_t x97 = (x95 + x37);
- { uint64_t x98 = (x97 >> 0x19);
- { uint32_t x99 = ((uint32_t)x97 & 0x1ffffff);
- { uint64_t x100 = (x98 + x36);
- { uint64_t x101 = (x100 >> 0x19);
- { uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- { uint64_t x103 = (x101 + x35);
- { uint64_t x104 = (x103 >> 0x19);
- { uint32_t x105 = ((uint32_t)x103 & 0x1ffffff);
- { uint64_t x106 = (x54 + (0x3 * x104));
- { uint32_t x107 = (uint32_t) (x106 >> 0x1a);
- { uint32_t x108 = ((uint32_t)x106 & 0x3ffffff);
- { uint32_t x109 = (x107 + x57);
- { uint32_t x110 = (x109 >> 0x19);
- { uint32_t x111 = (x109 & 0x1ffffff);
- out[0] = x108;
- out[1] = x111;
- out[2] = (x110 + x60);
- out[3] = x63;
- out[4] = x66;
- out[5] = x69;
- out[6] = x72;
- out[7] = x75;
- out[8] = x78;
- out[9] = x81;
- out[10] = x84;
- out[11] = x87;
- out[12] = x90;
- out[13] = x93;
- out[14] = x96;
- out[15] = x99;
- out[16] = x102;
- out[17] = x105;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e452m3_18limbs/fesquare.v b/src/Specific/solinas32_2e452m3_18limbs/fesquare.v
deleted file mode 100644
index 1dfe73146..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e452m3_18limbs.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_2e452m3_18limbs/fesquareDisplay.log b/src/Specific/solinas32_2e452m3_18limbs/fesquareDisplay.log
deleted file mode 100644
index 6ad6d3306..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,84 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x33, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x35 = (((uint64_t)x2 * x33) + ((0x2 * ((uint64_t)x4 * x34)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x33 * x2))))))))))))))))));
- uint64_t x36 = ((((uint64_t)x2 * x34) + ((0x2 * ((uint64_t)x4 * x32)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x34 * x2))))))))))))))))) + (0x3 * ((uint64_t)x33 * x33)));
- uint64_t x37 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x3 * (((uint64_t)x34 * x33) + ((uint64_t)x33 * x34))));
- uint64_t x38 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + ((0x2 * ((uint64_t)x6 * x26)) + ((0x2 * ((uint64_t)x8 * x24)) + ((0x2 * ((uint64_t)x10 * x22)) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + ((0x2 * ((uint64_t)x22 * x10)) + ((0x2 * ((uint64_t)x24 * x8)) + ((0x2 * ((uint64_t)x26 * x6)) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x3 * (((uint64_t)x32 * x33) + (((uint64_t)x34 * x34) + ((uint64_t)x33 * x32)))));
- uint64_t x39 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x3 * (((uint64_t)x30 * x33) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + ((uint64_t)x33 * x30))))));
- uint64_t x40 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x3 * (((uint64_t)x28 * x33) + (((uint64_t)x30 * x34) + (((uint64_t)x32 * x32) + (((uint64_t)x34 * x30) + ((uint64_t)x33 * x28)))))));
- uint64_t x41 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x3 * (((uint64_t)x26 * x33) + (((uint64_t)x28 * x34) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + (((uint64_t)x34 * x28) + ((uint64_t)x33 * x26))))))));
- uint64_t x42 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x3 * (((uint64_t)x24 * x33) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + (((uint64_t)x30 * x30) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + ((uint64_t)x33 * x24)))))))));
- uint64_t x43 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x3 * ((0x2 * ((uint64_t)x22 * x33)) + ((0x2 * ((uint64_t)x24 * x34)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + ((0x2 * ((uint64_t)x34 * x24)) + (0x2 * ((uint64_t)x33 * x22)))))))))));
- uint64_t x44 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x3 * (((uint64_t)x20 * x33) + ((0x2 * ((uint64_t)x22 * x34)) + ((0x2 * ((uint64_t)x24 * x32)) + ((0x2 * ((uint64_t)x26 * x30)) + ((0x2 * ((uint64_t)x28 * x28)) + ((0x2 * ((uint64_t)x30 * x26)) + ((0x2 * ((uint64_t)x32 * x24)) + ((0x2 * ((uint64_t)x34 * x22)) + ((uint64_t)x33 * x20)))))))))));
- uint64_t x45 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x3 * (((uint64_t)x18 * x33) + (((uint64_t)x20 * x34) + ((0x2 * ((uint64_t)x22 * x32)) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + ((0x2 * ((uint64_t)x32 * x22)) + (((uint64_t)x34 * x20) + ((uint64_t)x33 * x18))))))))))));
- uint64_t x46 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x3 * (((uint64_t)x16 * x33) + (((uint64_t)x18 * x34) + (((uint64_t)x20 * x32) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + ((0x2 * ((uint64_t)x26 * x26)) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + (((uint64_t)x32 * x20) + (((uint64_t)x34 * x18) + ((uint64_t)x33 * x16)))))))))))));
- uint64_t x47 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x3 * (((uint64_t)x14 * x33) + (((uint64_t)x16 * x34) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + ((0x2 * ((uint64_t)x22 * x28)) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + ((0x2 * ((uint64_t)x28 * x22)) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + (((uint64_t)x34 * x16) + ((uint64_t)x33 * x14))))))))))))));
- uint64_t x48 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x3 * (((uint64_t)x12 * x33) + (((uint64_t)x14 * x34) + (((uint64_t)x16 * x32) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + (((uint64_t)x32 * x16) + (((uint64_t)x34 * x14) + ((uint64_t)x33 * x12)))))))))))))));
- uint64_t x49 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x3 * (((uint64_t)x10 * x33) + (((uint64_t)x12 * x34) + (((uint64_t)x14 * x32) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + (((uint64_t)x32 * x14) + (((uint64_t)x34 * x12) + ((uint64_t)x33 * x10))))))))))))))));
- uint64_t x50 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x3 * (((uint64_t)x8 * x33) + (((uint64_t)x10 * x34) + (((uint64_t)x12 * x32) + (((uint64_t)x14 * x30) + (((uint64_t)x16 * x28) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + (((uint64_t)x28 * x16) + (((uint64_t)x30 * x14) + (((uint64_t)x32 * x12) + (((uint64_t)x34 * x10) + ((uint64_t)x33 * x8)))))))))))))))));
- uint64_t x51 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x3 * (((uint64_t)x6 * x33) + (((uint64_t)x8 * x34) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + (((uint64_t)x34 * x8) + ((uint64_t)x33 * x6))))))))))))))))));
- uint64_t x52 = (((uint64_t)x2 * x2) + (0x3 * ((0x2 * ((uint64_t)x4 * x33)) + ((0x2 * ((uint64_t)x6 * x34)) + ((0x2 * ((uint64_t)x8 * x32)) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + ((0x2 * ((uint64_t)x32 * x8)) + ((0x2 * ((uint64_t)x34 * x6)) + (0x2 * ((uint64_t)x33 * x4))))))))))))))))))));
- uint64_t x53 = (x52 >> 0x1a);
- uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- uint64_t x55 = (x53 + x51);
- uint64_t x56 = (x55 >> 0x19);
- uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- uint64_t x58 = (x56 + x50);
- uint64_t x59 = (x58 >> 0x19);
- uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- uint64_t x61 = (x59 + x49);
- uint64_t x62 = (x61 >> 0x19);
- uint32_t x63 = ((uint32_t)x61 & 0x1ffffff);
- uint64_t x64 = (x62 + x48);
- uint64_t x65 = (x64 >> 0x19);
- uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- uint64_t x67 = (x65 + x47);
- uint64_t x68 = (x67 >> 0x19);
- uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- uint64_t x70 = (x68 + x46);
- uint64_t x71 = (x70 >> 0x19);
- uint32_t x72 = ((uint32_t)x70 & 0x1ffffff);
- uint64_t x73 = (x71 + x45);
- uint64_t x74 = (x73 >> 0x19);
- uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- uint64_t x76 = (x74 + x44);
- uint64_t x77 = (x76 >> 0x19);
- uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- uint64_t x79 = (x77 + x43);
- uint64_t x80 = (x79 >> 0x1a);
- uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- uint64_t x82 = (x80 + x42);
- uint64_t x83 = (x82 >> 0x19);
- uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- uint64_t x85 = (x83 + x41);
- uint64_t x86 = (x85 >> 0x19);
- uint32_t x87 = ((uint32_t)x85 & 0x1ffffff);
- uint64_t x88 = (x86 + x40);
- uint64_t x89 = (x88 >> 0x19);
- uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- uint64_t x91 = (x89 + x39);
- uint64_t x92 = (x91 >> 0x19);
- uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- uint64_t x94 = (x92 + x38);
- uint64_t x95 = (x94 >> 0x19);
- uint32_t x96 = ((uint32_t)x94 & 0x1ffffff);
- uint64_t x97 = (x95 + x37);
- uint64_t x98 = (x97 >> 0x19);
- uint32_t x99 = ((uint32_t)x97 & 0x1ffffff);
- uint64_t x100 = (x98 + x36);
- uint64_t x101 = (x100 >> 0x19);
- uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- uint64_t x103 = (x101 + x35);
- uint64_t x104 = (x103 >> 0x19);
- uint32_t x105 = ((uint32_t)x103 & 0x1ffffff);
- uint64_t x106 = (x54 + (0x3 * x104));
- uint32_t x107 = (uint32_t) (x106 >> 0x1a);
- uint32_t x108 = ((uint32_t)x106 & 0x3ffffff);
- uint32_t x109 = (x107 + x57);
- uint32_t x110 = (x109 >> 0x19);
- uint32_t x111 = (x109 & 0x1ffffff);
- return (Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, (x110 + x60), Return x111, Return x108))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e452m3_18limbs/fesquareDisplay.v b/src/Specific/solinas32_2e452m3_18limbs/fesquareDisplay.v
deleted file mode 100644
index 9aa3446d9..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e452m3_18limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e452m3_18limbs/fesub.c b/src/Specific/solinas32_2e452m3_18limbs/fesub.c
deleted file mode 100644
index 7dedf43e8..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/fesub.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void fesub(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- out[0] = ((0x7fffffa + x5) - x39);
- out[1] = ((0x3fffffe + x7) - x41);
- out[2] = ((0x3fffffe + x9) - x43);
- out[3] = ((0x3fffffe + x11) - x45);
- out[4] = ((0x3fffffe + x13) - x47);
- out[5] = ((0x3fffffe + x15) - x49);
- out[6] = ((0x3fffffe + x17) - x51);
- out[7] = ((0x3fffffe + x19) - x53);
- out[8] = ((0x3fffffe + x21) - x55);
- out[9] = ((0x7fffffe + x23) - x57);
- out[10] = ((0x3fffffe + x25) - x59);
- out[11] = ((0x3fffffe + x27) - x61);
- out[12] = ((0x3fffffe + x29) - x63);
- out[13] = ((0x3fffffe + x31) - x65);
- out[14] = ((0x3fffffe + x33) - x67);
- out[15] = ((0x3fffffe + x35) - x69);
- out[16] = ((0x3fffffe + x37) - x71);
- out[17] = ((0x3fffffe + x36) - x70);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e452m3_18limbs/fesub.v b/src/Specific/solinas32_2e452m3_18limbs/fesub.v
deleted file mode 100644
index 9fdafe308..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e452m3_18limbs.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_2e452m3_18limbs/fesubDisplay.log b/src/Specific/solinas32_2e452m3_18limbs/fesubDisplay.log
deleted file mode 100644
index 76c1e1b54..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- (((0x3fffffe + x36) - x70), ((0x3fffffe + x37) - x71), ((0x3fffffe + x35) - x69), ((0x3fffffe + x33) - x67), ((0x3fffffe + x31) - x65), ((0x3fffffe + x29) - x63), ((0x3fffffe + x27) - x61), ((0x3fffffe + x25) - x59), ((0x7fffffe + x23) - x57), ((0x3fffffe + x21) - x55), ((0x3fffffe + x19) - x53), ((0x3fffffe + x17) - x51), ((0x3fffffe + x15) - x49), ((0x3fffffe + x13) - x47), ((0x3fffffe + x11) - x45), ((0x3fffffe + x9) - x43), ((0x3fffffe + x7) - x41), ((0x7fffffa + x5) - x39)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e452m3_18limbs/fesubDisplay.v b/src/Specific/solinas32_2e452m3_18limbs/fesubDisplay.v
deleted file mode 100644
index 8e0ad01be..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e452m3_18limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e452m3_18limbs/freeze.c b/src/Specific/solinas32_2e452m3_18limbs/freeze.c
deleted file mode 100644
index faa9bb885..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/freeze.c
+++ /dev/null
@@ -1,94 +0,0 @@
-static void freeze(uint32_t out[18], const uint32_t in1[18]) {
- { const uint32_t x33 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffd);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x4, 0x1ffffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x6, 0x1ffffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x8, 0x1ffffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x10, 0x1ffffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x12, 0x1ffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x14, 0x1ffffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x16, 0x1ffffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x18, 0x1ffffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x20, 0x3ffffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x22, 0x1ffffff);
- { uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x24, 0x1ffffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x26, 0x1ffffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x28, 0x1ffffff);
- { uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x30, 0x1ffffff);
- { uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x32, 0x1ffffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x34, 0x1ffffff);
- { uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x33, 0x1ffffff);
- { uint32_t x89 = cmovznz32(x88, 0x0, 0xffffffff);
- { uint32_t x90 = (x89 & 0x3fffffd);
- { uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x36, Return x90);
- { uint32_t x94 = (x89 & 0x1ffffff);
- { uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x39, Return x94);
- { uint32_t x98 = (x89 & 0x1ffffff);
- { uint32_t x100, uint8_t x101 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x42, Return x98);
- { uint32_t x102 = (x89 & 0x1ffffff);
- { uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x45, Return x102);
- { uint32_t x106 = (x89 & 0x1ffffff);
- { uint32_t x108, uint8_t x109 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x48, Return x106);
- { uint32_t x110 = (x89 & 0x1ffffff);
- { uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x51, Return x110);
- { uint32_t x114 = (x89 & 0x1ffffff);
- { uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x54, Return x114);
- { uint32_t x118 = (x89 & 0x1ffffff);
- { uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x57, Return x118);
- { uint32_t x122 = (x89 & 0x1ffffff);
- { uint32_t x124, uint8_t x125 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x60, Return x122);
- { uint32_t x126 = (x89 & 0x3ffffff);
- { uint32_t x128, uint8_t x129 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x125, Return x63, Return x126);
- { uint32_t x130 = (x89 & 0x1ffffff);
- { uint32_t x132, uint8_t x133 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x129, Return x66, Return x130);
- { uint32_t x134 = (x89 & 0x1ffffff);
- { uint32_t x136, uint8_t x137 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x133, Return x69, Return x134);
- { uint32_t x138 = (x89 & 0x1ffffff);
- { uint32_t x140, uint8_t x141 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x137, Return x72, Return x138);
- { uint32_t x142 = (x89 & 0x1ffffff);
- { uint32_t x144, uint8_t x145 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x141, Return x75, Return x142);
- { uint32_t x146 = (x89 & 0x1ffffff);
- { uint32_t x148, uint8_t x149 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x145, Return x78, Return x146);
- { uint32_t x150 = (x89 & 0x1ffffff);
- { uint32_t x152, uint8_t x153 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x149, Return x81, Return x150);
- { uint32_t x154 = (x89 & 0x1ffffff);
- { uint32_t x156, uint8_t x157 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x153, Return x84, Return x154);
- { uint32_t x158 = (x89 & 0x1ffffff);
- { uint32_t x160, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x157, Return x87, Return x158);
- out[0] = x92;
- out[1] = x96;
- out[2] = x100;
- out[3] = x104;
- out[4] = x108;
- out[5] = x112;
- out[6] = x116;
- out[7] = x120;
- out[8] = x124;
- out[9] = x128;
- out[10] = x132;
- out[11] = x136;
- out[12] = x140;
- out[13] = x144;
- out[14] = x148;
- out[15] = x152;
- out[16] = x156;
- out[17] = x160;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e452m3_18limbs/freeze.v b/src/Specific/solinas32_2e452m3_18limbs/freeze.v
deleted file mode 100644
index 8f336447c..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e452m3_18limbs.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_2e452m3_18limbs/freezeDisplay.log b/src/Specific/solinas32_2e452m3_18limbs/freezeDisplay.log
deleted file mode 100644
index 90a47f95d..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/freezeDisplay.log
+++ /dev/null
@@ -1,62 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x33, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffd);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x4, 0x1ffffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x6, 0x1ffffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x8, 0x1ffffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x10, 0x1ffffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x12, 0x1ffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x14, 0x1ffffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x16, 0x1ffffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x18, 0x1ffffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x20, 0x3ffffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x22, 0x1ffffff);
- uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x24, 0x1ffffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x26, 0x1ffffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x28, 0x1ffffff);
- uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x30, 0x1ffffff);
- uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x32, 0x1ffffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x34, 0x1ffffff);
- uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x33, 0x1ffffff);
- uint32_t x89 = cmovznz32(x88, 0x0, 0xffffffff);
- uint32_t x90 = (x89 & 0x3fffffd);
- uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x36, Return x90);
- uint32_t x94 = (x89 & 0x1ffffff);
- uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x39, Return x94);
- uint32_t x98 = (x89 & 0x1ffffff);
- uint32_t x100, uint8_t x101 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x42, Return x98);
- uint32_t x102 = (x89 & 0x1ffffff);
- uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x45, Return x102);
- uint32_t x106 = (x89 & 0x1ffffff);
- uint32_t x108, uint8_t x109 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x48, Return x106);
- uint32_t x110 = (x89 & 0x1ffffff);
- uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x51, Return x110);
- uint32_t x114 = (x89 & 0x1ffffff);
- uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x54, Return x114);
- uint32_t x118 = (x89 & 0x1ffffff);
- uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x57, Return x118);
- uint32_t x122 = (x89 & 0x1ffffff);
- uint32_t x124, uint8_t x125 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x60, Return x122);
- uint32_t x126 = (x89 & 0x3ffffff);
- uint32_t x128, uint8_t x129 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x125, Return x63, Return x126);
- uint32_t x130 = (x89 & 0x1ffffff);
- uint32_t x132, uint8_t x133 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x129, Return x66, Return x130);
- uint32_t x134 = (x89 & 0x1ffffff);
- uint32_t x136, uint8_t x137 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x133, Return x69, Return x134);
- uint32_t x138 = (x89 & 0x1ffffff);
- uint32_t x140, uint8_t x141 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x137, Return x72, Return x138);
- uint32_t x142 = (x89 & 0x1ffffff);
- uint32_t x144, uint8_t x145 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x141, Return x75, Return x142);
- uint32_t x146 = (x89 & 0x1ffffff);
- uint32_t x148, uint8_t x149 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x145, Return x78, Return x146);
- uint32_t x150 = (x89 & 0x1ffffff);
- uint32_t x152, uint8_t x153 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x149, Return x81, Return x150);
- uint32_t x154 = (x89 & 0x1ffffff);
- uint32_t x156, uint8_t x157 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x153, Return x84, Return x154);
- uint32_t x158 = (x89 & 0x1ffffff);
- uint32_t x160, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x157, Return x87, Return x158);
- (Return x160, Return x156, Return x152, Return x148, Return x144, Return x140, Return x136, Return x132, Return x128, Return x124, Return x120, Return x116, Return x112, Return x108, Return x104, Return x100, Return x96, Return x92))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e452m3_18limbs/freezeDisplay.v b/src/Specific/solinas32_2e452m3_18limbs/freezeDisplay.v
deleted file mode 100644
index 17672d058..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e452m3_18limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e452m3_18limbs/py_interpreter.sh b/src/Specific/solinas32_2e452m3_18limbs/py_interpreter.sh
deleted file mode 100755
index c7fc345f1..000000000
--- a/src/Specific/solinas32_2e452m3_18limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**452 - 3' -Dmodulus_bytes='25 + 1/9' -Da24='121665'
diff --git a/src/Specific/solinas32_2e468m17_18limbs/CurveParameters.v b/src/Specific/solinas32_2e468m17_18limbs/CurveParameters.v
deleted file mode 100644
index 4bb88d487..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^468 - 17
-Base: 26
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 18%nat;
- base := 26;
- bitwidth := 32;
- s := 2^468;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 18); [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_2e468m17_18limbs/Synthesis.v b/src/Specific/solinas32_2e468m17_18limbs/Synthesis.v
deleted file mode 100644
index dd8d91be6..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e468m17_18limbs.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_2e468m17_18limbs/compiler.sh b/src/Specific/solinas32_2e468m17_18limbs/compiler.sh
deleted file mode 100755
index 3f682c904..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='59' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<468) - 17' "$@"
diff --git a/src/Specific/solinas32_2e468m17_18limbs/compilerxx.sh b/src/Specific/solinas32_2e468m17_18limbs/compilerxx.sh
deleted file mode 100755
index 167d8f771..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='59' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<468) - 17' "$@"
diff --git a/src/Specific/solinas32_2e468m17_18limbs/feadd.c b/src/Specific/solinas32_2e468m17_18limbs/feadd.c
deleted file mode 100644
index 7b8380410..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/feadd.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void feadd(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- out[0] = (x5 + x39);
- out[1] = (x7 + x41);
- out[2] = (x9 + x43);
- out[3] = (x11 + x45);
- out[4] = (x13 + x47);
- out[5] = (x15 + x49);
- out[6] = (x17 + x51);
- out[7] = (x19 + x53);
- out[8] = (x21 + x55);
- out[9] = (x23 + x57);
- out[10] = (x25 + x59);
- out[11] = (x27 + x61);
- out[12] = (x29 + x63);
- out[13] = (x31 + x65);
- out[14] = (x33 + x67);
- out[15] = (x35 + x69);
- out[16] = (x37 + x71);
- out[17] = (x36 + x70);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e468m17_18limbs/feadd.v b/src/Specific/solinas32_2e468m17_18limbs/feadd.v
deleted file mode 100644
index ce7b5938c..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e468m17_18limbs.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_2e468m17_18limbs/feaddDisplay.log b/src/Specific/solinas32_2e468m17_18limbs/feaddDisplay.log
deleted file mode 100644
index 5e9c243f4..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- ((x36 + x70), (x37 + x71), (x35 + x69), (x33 + x67), (x31 + x65), (x29 + x63), (x27 + x61), (x25 + x59), (x23 + x57), (x21 + x55), (x19 + x53), (x17 + x51), (x15 + x49), (x13 + x47), (x11 + x45), (x9 + x43), (x7 + x41), (x5 + x39)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e468m17_18limbs/feaddDisplay.v b/src/Specific/solinas32_2e468m17_18limbs/feaddDisplay.v
deleted file mode 100644
index 6f9ab0650..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e468m17_18limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e468m17_18limbs/fecarry.v b/src/Specific/solinas32_2e468m17_18limbs/fecarry.v
deleted file mode 100644
index dbe7288da..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e468m17_18limbs.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_2e468m17_18limbs/fecarryDisplay.v b/src/Specific/solinas32_2e468m17_18limbs/fecarryDisplay.v
deleted file mode 100644
index e162f4bbc..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e468m17_18limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e468m17_18limbs/femul.c b/src/Specific/solinas32_2e468m17_18limbs/femul.c
deleted file mode 100644
index fb91e4e45..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/femul.c
+++ /dev/null
@@ -1,134 +0,0 @@
-static void femul(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- { uint64_t x72 = (((uint64_t)x5 * x70) + (((uint64_t)x7 * x71) + (((uint64_t)x9 * x69) + (((uint64_t)x11 * x67) + (((uint64_t)x13 * x65) + (((uint64_t)x15 * x63) + (((uint64_t)x17 * x61) + (((uint64_t)x19 * x59) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + (((uint64_t)x29 * x49) + (((uint64_t)x31 * x47) + (((uint64_t)x33 * x45) + (((uint64_t)x35 * x43) + (((uint64_t)x37 * x41) + ((uint64_t)x36 * x39))))))))))))))))));
- { uint64_t x73 = ((((uint64_t)x5 * x71) + (((uint64_t)x7 * x69) + (((uint64_t)x9 * x67) + (((uint64_t)x11 * x65) + (((uint64_t)x13 * x63) + (((uint64_t)x15 * x61) + (((uint64_t)x17 * x59) + (((uint64_t)x19 * x57) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (((uint64_t)x29 * x47) + (((uint64_t)x31 * x45) + (((uint64_t)x33 * x43) + (((uint64_t)x35 * x41) + ((uint64_t)x37 * x39))))))))))))))))) + (0x11 * ((uint64_t)x36 * x70)));
- { uint64_t x74 = ((((uint64_t)x5 * x69) + (((uint64_t)x7 * x67) + (((uint64_t)x9 * x65) + (((uint64_t)x11 * x63) + (((uint64_t)x13 * x61) + (((uint64_t)x15 * x59) + (((uint64_t)x17 * x57) + (((uint64_t)x19 * x55) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + (((uint64_t)x25 * x49) + (((uint64_t)x27 * x47) + (((uint64_t)x29 * x45) + (((uint64_t)x31 * x43) + (((uint64_t)x33 * x41) + ((uint64_t)x35 * x39)))))))))))))))) + (0x11 * (((uint64_t)x37 * x70) + ((uint64_t)x36 * x71))));
- { uint64_t x75 = ((((uint64_t)x5 * x67) + (((uint64_t)x7 * x65) + (((uint64_t)x9 * x63) + (((uint64_t)x11 * x61) + (((uint64_t)x13 * x59) + (((uint64_t)x15 * x57) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + (((uint64_t)x29 * x43) + (((uint64_t)x31 * x41) + ((uint64_t)x33 * x39))))))))))))))) + (0x11 * (((uint64_t)x35 * x70) + (((uint64_t)x37 * x71) + ((uint64_t)x36 * x69)))));
- { uint64_t x76 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (((uint64_t)x29 * x41) + ((uint64_t)x31 * x39)))))))))))))) + (0x11 * (((uint64_t)x33 * x70) + (((uint64_t)x35 * x71) + (((uint64_t)x37 * x69) + ((uint64_t)x36 * x67))))));
- { uint64_t x77 = ((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + (((uint64_t)x9 * x59) + (((uint64_t)x11 * x57) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + (((uint64_t)x27 * x41) + ((uint64_t)x29 * x39))))))))))))) + (0x11 * (((uint64_t)x31 * x70) + (((uint64_t)x33 * x71) + (((uint64_t)x35 * x69) + (((uint64_t)x37 * x67) + ((uint64_t)x36 * x65)))))));
- { uint64_t x78 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + ((uint64_t)x27 * x39)))))))))))) + (0x11 * (((uint64_t)x29 * x70) + (((uint64_t)x31 * x71) + (((uint64_t)x33 * x69) + (((uint64_t)x35 * x67) + (((uint64_t)x37 * x65) + ((uint64_t)x36 * x63))))))));
- { uint64_t x79 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + ((uint64_t)x25 * x39))))))))))) + (0x11 * (((uint64_t)x27 * x70) + (((uint64_t)x29 * x71) + (((uint64_t)x31 * x69) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + (((uint64_t)x37 * x63) + ((uint64_t)x36 * x61)))))))));
- { uint64_t x80 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + ((uint64_t)x23 * x39)))))))))) + (0x11 * (((uint64_t)x25 * x70) + (((uint64_t)x27 * x71) + (((uint64_t)x29 * x69) + (((uint64_t)x31 * x67) + (((uint64_t)x33 * x65) + (((uint64_t)x35 * x63) + (((uint64_t)x37 * x61) + ((uint64_t)x36 * x59))))))))));
- { uint64_t x81 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + ((uint64_t)x21 * x39))))))))) + (0x11 * (((uint64_t)x23 * x70) + (((uint64_t)x25 * x71) + (((uint64_t)x27 * x69) + (((uint64_t)x29 * x67) + (((uint64_t)x31 * x65) + (((uint64_t)x33 * x63) + (((uint64_t)x35 * x61) + (((uint64_t)x37 * x59) + ((uint64_t)x36 * x57)))))))))));
- { uint64_t x82 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + ((uint64_t)x19 * x39)))))))) + (0x11 * (((uint64_t)x21 * x70) + (((uint64_t)x23 * x71) + (((uint64_t)x25 * x69) + (((uint64_t)x27 * x67) + (((uint64_t)x29 * x65) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + (((uint64_t)x35 * x59) + (((uint64_t)x37 * x57) + ((uint64_t)x36 * x55))))))))))));
- { uint64_t x83 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + ((uint64_t)x17 * x39))))))) + (0x11 * (((uint64_t)x19 * x70) + (((uint64_t)x21 * x71) + (((uint64_t)x23 * x69) + (((uint64_t)x25 * x67) + (((uint64_t)x27 * x65) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + (((uint64_t)x33 * x59) + (((uint64_t)x35 * x57) + (((uint64_t)x37 * x55) + ((uint64_t)x36 * x53)))))))))))));
- { uint64_t x84 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + ((uint64_t)x15 * x39)))))) + (0x11 * (((uint64_t)x17 * x70) + (((uint64_t)x19 * x71) + (((uint64_t)x21 * x69) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + (((uint64_t)x37 * x53) + ((uint64_t)x36 * x51))))))))))))));
- { uint64_t x85 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + ((uint64_t)x13 * x39))))) + (0x11 * (((uint64_t)x15 * x70) + (((uint64_t)x17 * x71) + (((uint64_t)x19 * x69) + (((uint64_t)x21 * x67) + (((uint64_t)x23 * x65) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + (((uint64_t)x35 * x53) + (((uint64_t)x37 * x51) + ((uint64_t)x36 * x49)))))))))))))));
- { uint64_t x86 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + ((uint64_t)x11 * x39)))) + (0x11 * (((uint64_t)x13 * x70) + (((uint64_t)x15 * x71) + (((uint64_t)x17 * x69) + (((uint64_t)x19 * x67) + (((uint64_t)x21 * x65) + (((uint64_t)x23 * x63) + (((uint64_t)x25 * x61) + (((uint64_t)x27 * x59) + (((uint64_t)x29 * x57) + (((uint64_t)x31 * x55) + (((uint64_t)x33 * x53) + (((uint64_t)x35 * x51) + (((uint64_t)x37 * x49) + ((uint64_t)x36 * x47))))))))))))))));
- { uint64_t x87 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + ((uint64_t)x9 * x39))) + (0x11 * (((uint64_t)x11 * x70) + (((uint64_t)x13 * x71) + (((uint64_t)x15 * x69) + (((uint64_t)x17 * x67) + (((uint64_t)x19 * x65) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + (((uint64_t)x35 * x49) + (((uint64_t)x37 * x47) + ((uint64_t)x36 * x45)))))))))))))))));
- { uint64_t x88 = ((((uint64_t)x5 * x41) + ((uint64_t)x7 * x39)) + (0x11 * (((uint64_t)x9 * x70) + (((uint64_t)x11 * x71) + (((uint64_t)x13 * x69) + (((uint64_t)x15 * x67) + (((uint64_t)x17 * x65) + (((uint64_t)x19 * x63) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + (((uint64_t)x35 * x47) + (((uint64_t)x37 * x45) + ((uint64_t)x36 * x43))))))))))))))))));
- { uint64_t x89 = (((uint64_t)x5 * x39) + (0x11 * (((uint64_t)x7 * x70) + (((uint64_t)x9 * x71) + (((uint64_t)x11 * x69) + (((uint64_t)x13 * x67) + (((uint64_t)x15 * x65) + (((uint64_t)x17 * x63) + (((uint64_t)x19 * x61) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + (((uint64_t)x31 * x49) + (((uint64_t)x33 * x47) + (((uint64_t)x35 * x45) + (((uint64_t)x37 * x43) + ((uint64_t)x36 * x41)))))))))))))))))));
- { uint64_t x90 = (x89 >> 0x1a);
- { uint32_t x91 = ((uint32_t)x89 & 0x3ffffff);
- { uint64_t x92 = (x90 + x88);
- { uint64_t x93 = (x92 >> 0x1a);
- { uint32_t x94 = ((uint32_t)x92 & 0x3ffffff);
- { uint64_t x95 = (x93 + x87);
- { uint64_t x96 = (x95 >> 0x1a);
- { uint32_t x97 = ((uint32_t)x95 & 0x3ffffff);
- { uint64_t x98 = (x96 + x86);
- { uint64_t x99 = (x98 >> 0x1a);
- { uint32_t x100 = ((uint32_t)x98 & 0x3ffffff);
- { uint64_t x101 = (x99 + x85);
- { uint64_t x102 = (x101 >> 0x1a);
- { uint32_t x103 = ((uint32_t)x101 & 0x3ffffff);
- { uint64_t x104 = (x102 + x84);
- { uint64_t x105 = (x104 >> 0x1a);
- { uint32_t x106 = ((uint32_t)x104 & 0x3ffffff);
- { uint64_t x107 = (x105 + x83);
- { uint64_t x108 = (x107 >> 0x1a);
- { uint32_t x109 = ((uint32_t)x107 & 0x3ffffff);
- { uint64_t x110 = (x108 + x82);
- { uint64_t x111 = (x110 >> 0x1a);
- { uint32_t x112 = ((uint32_t)x110 & 0x3ffffff);
- { uint64_t x113 = (x111 + x81);
- { uint64_t x114 = (x113 >> 0x1a);
- { uint32_t x115 = ((uint32_t)x113 & 0x3ffffff);
- { uint64_t x116 = (x114 + x80);
- { uint64_t x117 = (x116 >> 0x1a);
- { uint32_t x118 = ((uint32_t)x116 & 0x3ffffff);
- { uint64_t x119 = (x117 + x79);
- { uint64_t x120 = (x119 >> 0x1a);
- { uint32_t x121 = ((uint32_t)x119 & 0x3ffffff);
- { uint64_t x122 = (x120 + x78);
- { uint64_t x123 = (x122 >> 0x1a);
- { uint32_t x124 = ((uint32_t)x122 & 0x3ffffff);
- { uint64_t x125 = (x123 + x77);
- { uint64_t x126 = (x125 >> 0x1a);
- { uint32_t x127 = ((uint32_t)x125 & 0x3ffffff);
- { uint64_t x128 = (x126 + x76);
- { uint64_t x129 = (x128 >> 0x1a);
- { uint32_t x130 = ((uint32_t)x128 & 0x3ffffff);
- { uint64_t x131 = (x129 + x75);
- { uint64_t x132 = (x131 >> 0x1a);
- { uint32_t x133 = ((uint32_t)x131 & 0x3ffffff);
- { uint64_t x134 = (x132 + x74);
- { uint64_t x135 = (x134 >> 0x1a);
- { uint32_t x136 = ((uint32_t)x134 & 0x3ffffff);
- { uint64_t x137 = (x135 + x73);
- { uint64_t x138 = (x137 >> 0x1a);
- { uint32_t x139 = ((uint32_t)x137 & 0x3ffffff);
- { uint64_t x140 = (x138 + x72);
- { uint64_t x141 = (x140 >> 0x1a);
- { uint32_t x142 = ((uint32_t)x140 & 0x3ffffff);
- { uint64_t x143 = (x91 + (0x11 * x141));
- { uint32_t x144 = (uint32_t) (x143 >> 0x1a);
- { uint32_t x145 = ((uint32_t)x143 & 0x3ffffff);
- { uint32_t x146 = (x144 + x94);
- { uint32_t x147 = (x146 >> 0x1a);
- { uint32_t x148 = (x146 & 0x3ffffff);
- out[0] = x145;
- out[1] = x148;
- out[2] = (x147 + x97);
- out[3] = x100;
- out[4] = x103;
- out[5] = x106;
- out[6] = x109;
- out[7] = x112;
- out[8] = x115;
- out[9] = x118;
- out[10] = x121;
- out[11] = x124;
- out[12] = x127;
- out[13] = x130;
- out[14] = x133;
- out[15] = x136;
- out[16] = x139;
- out[17] = x142;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e468m17_18limbs/femul.v b/src/Specific/solinas32_2e468m17_18limbs/femul.v
deleted file mode 100644
index c8bb742ce..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e468m17_18limbs.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_2e468m17_18limbs/femulDisplay.log b/src/Specific/solinas32_2e468m17_18limbs/femulDisplay.log
deleted file mode 100644
index 4785b2fac..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/femulDisplay.log
+++ /dev/null
@@ -1,84 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- uint64_t x72 = (((uint64_t)x5 * x70) + (((uint64_t)x7 * x71) + (((uint64_t)x9 * x69) + (((uint64_t)x11 * x67) + (((uint64_t)x13 * x65) + (((uint64_t)x15 * x63) + (((uint64_t)x17 * x61) + (((uint64_t)x19 * x59) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + (((uint64_t)x29 * x49) + (((uint64_t)x31 * x47) + (((uint64_t)x33 * x45) + (((uint64_t)x35 * x43) + (((uint64_t)x37 * x41) + ((uint64_t)x36 * x39))))))))))))))))));
- uint64_t x73 = ((((uint64_t)x5 * x71) + (((uint64_t)x7 * x69) + (((uint64_t)x9 * x67) + (((uint64_t)x11 * x65) + (((uint64_t)x13 * x63) + (((uint64_t)x15 * x61) + (((uint64_t)x17 * x59) + (((uint64_t)x19 * x57) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (((uint64_t)x29 * x47) + (((uint64_t)x31 * x45) + (((uint64_t)x33 * x43) + (((uint64_t)x35 * x41) + ((uint64_t)x37 * x39))))))))))))))))) + (0x11 * ((uint64_t)x36 * x70)));
- uint64_t x74 = ((((uint64_t)x5 * x69) + (((uint64_t)x7 * x67) + (((uint64_t)x9 * x65) + (((uint64_t)x11 * x63) + (((uint64_t)x13 * x61) + (((uint64_t)x15 * x59) + (((uint64_t)x17 * x57) + (((uint64_t)x19 * x55) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + (((uint64_t)x25 * x49) + (((uint64_t)x27 * x47) + (((uint64_t)x29 * x45) + (((uint64_t)x31 * x43) + (((uint64_t)x33 * x41) + ((uint64_t)x35 * x39)))))))))))))))) + (0x11 * (((uint64_t)x37 * x70) + ((uint64_t)x36 * x71))));
- uint64_t x75 = ((((uint64_t)x5 * x67) + (((uint64_t)x7 * x65) + (((uint64_t)x9 * x63) + (((uint64_t)x11 * x61) + (((uint64_t)x13 * x59) + (((uint64_t)x15 * x57) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + (((uint64_t)x29 * x43) + (((uint64_t)x31 * x41) + ((uint64_t)x33 * x39))))))))))))))) + (0x11 * (((uint64_t)x35 * x70) + (((uint64_t)x37 * x71) + ((uint64_t)x36 * x69)))));
- uint64_t x76 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + (((uint64_t)x29 * x41) + ((uint64_t)x31 * x39)))))))))))))) + (0x11 * (((uint64_t)x33 * x70) + (((uint64_t)x35 * x71) + (((uint64_t)x37 * x69) + ((uint64_t)x36 * x67))))));
- uint64_t x77 = ((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + (((uint64_t)x9 * x59) + (((uint64_t)x11 * x57) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + (((uint64_t)x27 * x41) + ((uint64_t)x29 * x39))))))))))))) + (0x11 * (((uint64_t)x31 * x70) + (((uint64_t)x33 * x71) + (((uint64_t)x35 * x69) + (((uint64_t)x37 * x67) + ((uint64_t)x36 * x65)))))));
- uint64_t x78 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + (((uint64_t)x25 * x41) + ((uint64_t)x27 * x39)))))))))))) + (0x11 * (((uint64_t)x29 * x70) + (((uint64_t)x31 * x71) + (((uint64_t)x33 * x69) + (((uint64_t)x35 * x67) + (((uint64_t)x37 * x65) + ((uint64_t)x36 * x63))))))));
- uint64_t x79 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + (((uint64_t)x23 * x41) + ((uint64_t)x25 * x39))))))))))) + (0x11 * (((uint64_t)x27 * x70) + (((uint64_t)x29 * x71) + (((uint64_t)x31 * x69) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + (((uint64_t)x37 * x63) + ((uint64_t)x36 * x61)))))))));
- uint64_t x80 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + (((uint64_t)x21 * x41) + ((uint64_t)x23 * x39)))))))))) + (0x11 * (((uint64_t)x25 * x70) + (((uint64_t)x27 * x71) + (((uint64_t)x29 * x69) + (((uint64_t)x31 * x67) + (((uint64_t)x33 * x65) + (((uint64_t)x35 * x63) + (((uint64_t)x37 * x61) + ((uint64_t)x36 * x59))))))))));
- uint64_t x81 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + ((uint64_t)x21 * x39))))))))) + (0x11 * (((uint64_t)x23 * x70) + (((uint64_t)x25 * x71) + (((uint64_t)x27 * x69) + (((uint64_t)x29 * x67) + (((uint64_t)x31 * x65) + (((uint64_t)x33 * x63) + (((uint64_t)x35 * x61) + (((uint64_t)x37 * x59) + ((uint64_t)x36 * x57)))))))))));
- uint64_t x82 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + (((uint64_t)x17 * x41) + ((uint64_t)x19 * x39)))))))) + (0x11 * (((uint64_t)x21 * x70) + (((uint64_t)x23 * x71) + (((uint64_t)x25 * x69) + (((uint64_t)x27 * x67) + (((uint64_t)x29 * x65) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + (((uint64_t)x35 * x59) + (((uint64_t)x37 * x57) + ((uint64_t)x36 * x55))))))))))));
- uint64_t x83 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + (((uint64_t)x15 * x41) + ((uint64_t)x17 * x39))))))) + (0x11 * (((uint64_t)x19 * x70) + (((uint64_t)x21 * x71) + (((uint64_t)x23 * x69) + (((uint64_t)x25 * x67) + (((uint64_t)x27 * x65) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + (((uint64_t)x33 * x59) + (((uint64_t)x35 * x57) + (((uint64_t)x37 * x55) + ((uint64_t)x36 * x53)))))))))))));
- uint64_t x84 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + ((uint64_t)x15 * x39)))))) + (0x11 * (((uint64_t)x17 * x70) + (((uint64_t)x19 * x71) + (((uint64_t)x21 * x69) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + (((uint64_t)x37 * x53) + ((uint64_t)x36 * x51))))))))))))));
- uint64_t x85 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + (((uint64_t)x11 * x41) + ((uint64_t)x13 * x39))))) + (0x11 * (((uint64_t)x15 * x70) + (((uint64_t)x17 * x71) + (((uint64_t)x19 * x69) + (((uint64_t)x21 * x67) + (((uint64_t)x23 * x65) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + (((uint64_t)x35 * x53) + (((uint64_t)x37 * x51) + ((uint64_t)x36 * x49)))))))))))))));
- uint64_t x86 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + (((uint64_t)x9 * x41) + ((uint64_t)x11 * x39)))) + (0x11 * (((uint64_t)x13 * x70) + (((uint64_t)x15 * x71) + (((uint64_t)x17 * x69) + (((uint64_t)x19 * x67) + (((uint64_t)x21 * x65) + (((uint64_t)x23 * x63) + (((uint64_t)x25 * x61) + (((uint64_t)x27 * x59) + (((uint64_t)x29 * x57) + (((uint64_t)x31 * x55) + (((uint64_t)x33 * x53) + (((uint64_t)x35 * x51) + (((uint64_t)x37 * x49) + ((uint64_t)x36 * x47))))))))))))))));
- uint64_t x87 = ((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + ((uint64_t)x9 * x39))) + (0x11 * (((uint64_t)x11 * x70) + (((uint64_t)x13 * x71) + (((uint64_t)x15 * x69) + (((uint64_t)x17 * x67) + (((uint64_t)x19 * x65) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + (((uint64_t)x35 * x49) + (((uint64_t)x37 * x47) + ((uint64_t)x36 * x45)))))))))))))))));
- uint64_t x88 = ((((uint64_t)x5 * x41) + ((uint64_t)x7 * x39)) + (0x11 * (((uint64_t)x9 * x70) + (((uint64_t)x11 * x71) + (((uint64_t)x13 * x69) + (((uint64_t)x15 * x67) + (((uint64_t)x17 * x65) + (((uint64_t)x19 * x63) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + (((uint64_t)x35 * x47) + (((uint64_t)x37 * x45) + ((uint64_t)x36 * x43))))))))))))))))));
- uint64_t x89 = (((uint64_t)x5 * x39) + (0x11 * (((uint64_t)x7 * x70) + (((uint64_t)x9 * x71) + (((uint64_t)x11 * x69) + (((uint64_t)x13 * x67) + (((uint64_t)x15 * x65) + (((uint64_t)x17 * x63) + (((uint64_t)x19 * x61) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + (((uint64_t)x31 * x49) + (((uint64_t)x33 * x47) + (((uint64_t)x35 * x45) + (((uint64_t)x37 * x43) + ((uint64_t)x36 * x41)))))))))))))))))));
- uint64_t x90 = (x89 >> 0x1a);
- uint32_t x91 = ((uint32_t)x89 & 0x3ffffff);
- uint64_t x92 = (x90 + x88);
- uint64_t x93 = (x92 >> 0x1a);
- uint32_t x94 = ((uint32_t)x92 & 0x3ffffff);
- uint64_t x95 = (x93 + x87);
- uint64_t x96 = (x95 >> 0x1a);
- uint32_t x97 = ((uint32_t)x95 & 0x3ffffff);
- uint64_t x98 = (x96 + x86);
- uint64_t x99 = (x98 >> 0x1a);
- uint32_t x100 = ((uint32_t)x98 & 0x3ffffff);
- uint64_t x101 = (x99 + x85);
- uint64_t x102 = (x101 >> 0x1a);
- uint32_t x103 = ((uint32_t)x101 & 0x3ffffff);
- uint64_t x104 = (x102 + x84);
- uint64_t x105 = (x104 >> 0x1a);
- uint32_t x106 = ((uint32_t)x104 & 0x3ffffff);
- uint64_t x107 = (x105 + x83);
- uint64_t x108 = (x107 >> 0x1a);
- uint32_t x109 = ((uint32_t)x107 & 0x3ffffff);
- uint64_t x110 = (x108 + x82);
- uint64_t x111 = (x110 >> 0x1a);
- uint32_t x112 = ((uint32_t)x110 & 0x3ffffff);
- uint64_t x113 = (x111 + x81);
- uint64_t x114 = (x113 >> 0x1a);
- uint32_t x115 = ((uint32_t)x113 & 0x3ffffff);
- uint64_t x116 = (x114 + x80);
- uint64_t x117 = (x116 >> 0x1a);
- uint32_t x118 = ((uint32_t)x116 & 0x3ffffff);
- uint64_t x119 = (x117 + x79);
- uint64_t x120 = (x119 >> 0x1a);
- uint32_t x121 = ((uint32_t)x119 & 0x3ffffff);
- uint64_t x122 = (x120 + x78);
- uint64_t x123 = (x122 >> 0x1a);
- uint32_t x124 = ((uint32_t)x122 & 0x3ffffff);
- uint64_t x125 = (x123 + x77);
- uint64_t x126 = (x125 >> 0x1a);
- uint32_t x127 = ((uint32_t)x125 & 0x3ffffff);
- uint64_t x128 = (x126 + x76);
- uint64_t x129 = (x128 >> 0x1a);
- uint32_t x130 = ((uint32_t)x128 & 0x3ffffff);
- uint64_t x131 = (x129 + x75);
- uint64_t x132 = (x131 >> 0x1a);
- uint32_t x133 = ((uint32_t)x131 & 0x3ffffff);
- uint64_t x134 = (x132 + x74);
- uint64_t x135 = (x134 >> 0x1a);
- uint32_t x136 = ((uint32_t)x134 & 0x3ffffff);
- uint64_t x137 = (x135 + x73);
- uint64_t x138 = (x137 >> 0x1a);
- uint32_t x139 = ((uint32_t)x137 & 0x3ffffff);
- uint64_t x140 = (x138 + x72);
- uint64_t x141 = (x140 >> 0x1a);
- uint32_t x142 = ((uint32_t)x140 & 0x3ffffff);
- uint64_t x143 = (x91 + (0x11 * x141));
- uint32_t x144 = (uint32_t) (x143 >> 0x1a);
- uint32_t x145 = ((uint32_t)x143 & 0x3ffffff);
- uint32_t x146 = (x144 + x94);
- uint32_t x147 = (x146 >> 0x1a);
- uint32_t x148 = (x146 & 0x3ffffff);
- return (Return x142, Return x139, Return x136, Return x133, Return x130, Return x127, Return x124, Return x121, Return x118, Return x115, Return x112, Return x109, Return x106, Return x103, Return x100, (x147 + x97), Return x148, Return x145))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e468m17_18limbs/femulDisplay.v b/src/Specific/solinas32_2e468m17_18limbs/femulDisplay.v
deleted file mode 100644
index 4c0445b7c..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e468m17_18limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e468m17_18limbs/fesquare.c b/src/Specific/solinas32_2e468m17_18limbs/fesquare.c
deleted file mode 100644
index d7eb27dd4..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/fesquare.c
+++ /dev/null
@@ -1,116 +0,0 @@
-static void fesquare(uint32_t out[18], const uint32_t in1[18]) {
- { const uint32_t x33 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x35 = (((uint64_t)x2 * x33) + (((uint64_t)x4 * x34) + (((uint64_t)x6 * x32) + (((uint64_t)x8 * x30) + (((uint64_t)x10 * x28) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + (((uint64_t)x28 * x10) + (((uint64_t)x30 * x8) + (((uint64_t)x32 * x6) + (((uint64_t)x34 * x4) + ((uint64_t)x33 * x2))))))))))))))))));
- { uint64_t x36 = ((((uint64_t)x2 * x34) + (((uint64_t)x4 * x32) + (((uint64_t)x6 * x30) + (((uint64_t)x8 * x28) + (((uint64_t)x10 * x26) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + (((uint64_t)x26 * x10) + (((uint64_t)x28 * x8) + (((uint64_t)x30 * x6) + (((uint64_t)x32 * x4) + ((uint64_t)x34 * x2))))))))))))))))) + (0x11 * ((uint64_t)x33 * x33)));
- { uint64_t x37 = ((((uint64_t)x2 * x32) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x32 * x2)))))))))))))))) + (0x11 * (((uint64_t)x34 * x33) + ((uint64_t)x33 * x34))));
- { uint64_t x38 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x11 * (((uint64_t)x32 * x33) + (((uint64_t)x34 * x34) + ((uint64_t)x33 * x32)))));
- { uint64_t x39 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x11 * (((uint64_t)x30 * x33) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + ((uint64_t)x33 * x30))))));
- { uint64_t x40 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x11 * (((uint64_t)x28 * x33) + (((uint64_t)x30 * x34) + (((uint64_t)x32 * x32) + (((uint64_t)x34 * x30) + ((uint64_t)x33 * x28)))))));
- { uint64_t x41 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x11 * (((uint64_t)x26 * x33) + (((uint64_t)x28 * x34) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + (((uint64_t)x34 * x28) + ((uint64_t)x33 * x26))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x11 * (((uint64_t)x24 * x33) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + (((uint64_t)x30 * x30) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + ((uint64_t)x33 * x24)))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x11 * (((uint64_t)x22 * x33) + (((uint64_t)x24 * x34) + (((uint64_t)x26 * x32) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (((uint64_t)x32 * x26) + (((uint64_t)x34 * x24) + ((uint64_t)x33 * x22))))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x11 * (((uint64_t)x20 * x33) + (((uint64_t)x22 * x34) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + (((uint64_t)x34 * x22) + ((uint64_t)x33 * x20)))))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x11 * (((uint64_t)x18 * x33) + (((uint64_t)x20 * x34) + (((uint64_t)x22 * x32) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + (((uint64_t)x32 * x22) + (((uint64_t)x34 * x20) + ((uint64_t)x33 * x18))))))))))));
- { uint64_t x46 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x11 * (((uint64_t)x16 * x33) + (((uint64_t)x18 * x34) + (((uint64_t)x20 * x32) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + (((uint64_t)x32 * x20) + (((uint64_t)x34 * x18) + ((uint64_t)x33 * x16)))))))))))));
- { uint64_t x47 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x11 * (((uint64_t)x14 * x33) + (((uint64_t)x16 * x34) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + (((uint64_t)x34 * x16) + ((uint64_t)x33 * x14))))))))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x11 * (((uint64_t)x12 * x33) + (((uint64_t)x14 * x34) + (((uint64_t)x16 * x32) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + (((uint64_t)x32 * x16) + (((uint64_t)x34 * x14) + ((uint64_t)x33 * x12)))))))))))))));
- { uint64_t x49 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x11 * (((uint64_t)x10 * x33) + (((uint64_t)x12 * x34) + (((uint64_t)x14 * x32) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + (((uint64_t)x32 * x14) + (((uint64_t)x34 * x12) + ((uint64_t)x33 * x10))))))))))))))));
- { uint64_t x50 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x11 * (((uint64_t)x8 * x33) + (((uint64_t)x10 * x34) + (((uint64_t)x12 * x32) + (((uint64_t)x14 * x30) + (((uint64_t)x16 * x28) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + (((uint64_t)x28 * x16) + (((uint64_t)x30 * x14) + (((uint64_t)x32 * x12) + (((uint64_t)x34 * x10) + ((uint64_t)x33 * x8)))))))))))))))));
- { uint64_t x51 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * (((uint64_t)x6 * x33) + (((uint64_t)x8 * x34) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + (((uint64_t)x34 * x8) + ((uint64_t)x33 * x6))))))))))))))))));
- { uint64_t x52 = (((uint64_t)x2 * x2) + (0x11 * (((uint64_t)x4 * x33) + (((uint64_t)x6 * x34) + (((uint64_t)x8 * x32) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + (((uint64_t)x14 * x26) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (((uint64_t)x26 * x14) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + (((uint64_t)x32 * x8) + (((uint64_t)x34 * x6) + ((uint64_t)x33 * x4)))))))))))))))))));
- { uint64_t x53 = (x52 >> 0x1a);
- { uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- { uint64_t x55 = (x53 + x51);
- { uint64_t x56 = (x55 >> 0x1a);
- { uint32_t x57 = ((uint32_t)x55 & 0x3ffffff);
- { uint64_t x58 = (x56 + x50);
- { uint64_t x59 = (x58 >> 0x1a);
- { uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- { uint64_t x61 = (x59 + x49);
- { uint64_t x62 = (x61 >> 0x1a);
- { uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- { uint64_t x64 = (x62 + x48);
- { uint64_t x65 = (x64 >> 0x1a);
- { uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- { uint64_t x67 = (x65 + x47);
- { uint64_t x68 = (x67 >> 0x1a);
- { uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- { uint64_t x70 = (x68 + x46);
- { uint64_t x71 = (x70 >> 0x1a);
- { uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- { uint64_t x73 = (x71 + x45);
- { uint64_t x74 = (x73 >> 0x1a);
- { uint32_t x75 = ((uint32_t)x73 & 0x3ffffff);
- { uint64_t x76 = (x74 + x44);
- { uint64_t x77 = (x76 >> 0x1a);
- { uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- { uint64_t x79 = (x77 + x43);
- { uint64_t x80 = (x79 >> 0x1a);
- { uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- { uint64_t x82 = (x80 + x42);
- { uint64_t x83 = (x82 >> 0x1a);
- { uint32_t x84 = ((uint32_t)x82 & 0x3ffffff);
- { uint64_t x85 = (x83 + x41);
- { uint64_t x86 = (x85 >> 0x1a);
- { uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- { uint64_t x88 = (x86 + x40);
- { uint64_t x89 = (x88 >> 0x1a);
- { uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- { uint64_t x91 = (x89 + x39);
- { uint64_t x92 = (x91 >> 0x1a);
- { uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- { uint64_t x94 = (x92 + x38);
- { uint64_t x95 = (x94 >> 0x1a);
- { uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- { uint64_t x97 = (x95 + x37);
- { uint64_t x98 = (x97 >> 0x1a);
- { uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- { uint64_t x100 = (x98 + x36);
- { uint64_t x101 = (x100 >> 0x1a);
- { uint32_t x102 = ((uint32_t)x100 & 0x3ffffff);
- { uint64_t x103 = (x101 + x35);
- { uint64_t x104 = (x103 >> 0x1a);
- { uint32_t x105 = ((uint32_t)x103 & 0x3ffffff);
- { uint64_t x106 = (x54 + (0x11 * x104));
- { uint32_t x107 = (uint32_t) (x106 >> 0x1a);
- { uint32_t x108 = ((uint32_t)x106 & 0x3ffffff);
- { uint32_t x109 = (x107 + x57);
- { uint32_t x110 = (x109 >> 0x1a);
- { uint32_t x111 = (x109 & 0x3ffffff);
- out[0] = x108;
- out[1] = x111;
- out[2] = (x110 + x60);
- out[3] = x63;
- out[4] = x66;
- out[5] = x69;
- out[6] = x72;
- out[7] = x75;
- out[8] = x78;
- out[9] = x81;
- out[10] = x84;
- out[11] = x87;
- out[12] = x90;
- out[13] = x93;
- out[14] = x96;
- out[15] = x99;
- out[16] = x102;
- out[17] = x105;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e468m17_18limbs/fesquare.v b/src/Specific/solinas32_2e468m17_18limbs/fesquare.v
deleted file mode 100644
index fc78927b1..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e468m17_18limbs.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_2e468m17_18limbs/fesquareDisplay.log b/src/Specific/solinas32_2e468m17_18limbs/fesquareDisplay.log
deleted file mode 100644
index ce059ed76..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,84 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x33, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x35 = (((uint64_t)x2 * x33) + (((uint64_t)x4 * x34) + (((uint64_t)x6 * x32) + (((uint64_t)x8 * x30) + (((uint64_t)x10 * x28) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + (((uint64_t)x28 * x10) + (((uint64_t)x30 * x8) + (((uint64_t)x32 * x6) + (((uint64_t)x34 * x4) + ((uint64_t)x33 * x2))))))))))))))))));
- uint64_t x36 = ((((uint64_t)x2 * x34) + (((uint64_t)x4 * x32) + (((uint64_t)x6 * x30) + (((uint64_t)x8 * x28) + (((uint64_t)x10 * x26) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + (((uint64_t)x26 * x10) + (((uint64_t)x28 * x8) + (((uint64_t)x30 * x6) + (((uint64_t)x32 * x4) + ((uint64_t)x34 * x2))))))))))))))))) + (0x11 * ((uint64_t)x33 * x33)));
- uint64_t x37 = ((((uint64_t)x2 * x32) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x32 * x2)))))))))))))))) + (0x11 * (((uint64_t)x34 * x33) + ((uint64_t)x33 * x34))));
- uint64_t x38 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x11 * (((uint64_t)x32 * x33) + (((uint64_t)x34 * x34) + ((uint64_t)x33 * x32)))));
- uint64_t x39 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x11 * (((uint64_t)x30 * x33) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + ((uint64_t)x33 * x30))))));
- uint64_t x40 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x11 * (((uint64_t)x28 * x33) + (((uint64_t)x30 * x34) + (((uint64_t)x32 * x32) + (((uint64_t)x34 * x30) + ((uint64_t)x33 * x28)))))));
- uint64_t x41 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x11 * (((uint64_t)x26 * x33) + (((uint64_t)x28 * x34) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + (((uint64_t)x34 * x28) + ((uint64_t)x33 * x26))))))));
- uint64_t x42 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x11 * (((uint64_t)x24 * x33) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + (((uint64_t)x30 * x30) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + ((uint64_t)x33 * x24)))))))));
- uint64_t x43 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x11 * (((uint64_t)x22 * x33) + (((uint64_t)x24 * x34) + (((uint64_t)x26 * x32) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (((uint64_t)x32 * x26) + (((uint64_t)x34 * x24) + ((uint64_t)x33 * x22))))))))));
- uint64_t x44 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x11 * (((uint64_t)x20 * x33) + (((uint64_t)x22 * x34) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + (((uint64_t)x34 * x22) + ((uint64_t)x33 * x20)))))))))));
- uint64_t x45 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x11 * (((uint64_t)x18 * x33) + (((uint64_t)x20 * x34) + (((uint64_t)x22 * x32) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + (((uint64_t)x32 * x22) + (((uint64_t)x34 * x20) + ((uint64_t)x33 * x18))))))))))));
- uint64_t x46 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x11 * (((uint64_t)x16 * x33) + (((uint64_t)x18 * x34) + (((uint64_t)x20 * x32) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + (((uint64_t)x32 * x20) + (((uint64_t)x34 * x18) + ((uint64_t)x33 * x16)))))))))))));
- uint64_t x47 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x11 * (((uint64_t)x14 * x33) + (((uint64_t)x16 * x34) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + (((uint64_t)x34 * x16) + ((uint64_t)x33 * x14))))))))))))));
- uint64_t x48 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x11 * (((uint64_t)x12 * x33) + (((uint64_t)x14 * x34) + (((uint64_t)x16 * x32) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + (((uint64_t)x32 * x16) + (((uint64_t)x34 * x14) + ((uint64_t)x33 * x12)))))))))))))));
- uint64_t x49 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x11 * (((uint64_t)x10 * x33) + (((uint64_t)x12 * x34) + (((uint64_t)x14 * x32) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + (((uint64_t)x32 * x14) + (((uint64_t)x34 * x12) + ((uint64_t)x33 * x10))))))))))))))));
- uint64_t x50 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x11 * (((uint64_t)x8 * x33) + (((uint64_t)x10 * x34) + (((uint64_t)x12 * x32) + (((uint64_t)x14 * x30) + (((uint64_t)x16 * x28) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + (((uint64_t)x28 * x16) + (((uint64_t)x30 * x14) + (((uint64_t)x32 * x12) + (((uint64_t)x34 * x10) + ((uint64_t)x33 * x8)))))))))))))))));
- uint64_t x51 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * (((uint64_t)x6 * x33) + (((uint64_t)x8 * x34) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + (((uint64_t)x34 * x8) + ((uint64_t)x33 * x6))))))))))))))))));
- uint64_t x52 = (((uint64_t)x2 * x2) + (0x11 * (((uint64_t)x4 * x33) + (((uint64_t)x6 * x34) + (((uint64_t)x8 * x32) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + (((uint64_t)x14 * x26) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (((uint64_t)x26 * x14) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + (((uint64_t)x32 * x8) + (((uint64_t)x34 * x6) + ((uint64_t)x33 * x4)))))))))))))))))));
- uint64_t x53 = (x52 >> 0x1a);
- uint32_t x54 = ((uint32_t)x52 & 0x3ffffff);
- uint64_t x55 = (x53 + x51);
- uint64_t x56 = (x55 >> 0x1a);
- uint32_t x57 = ((uint32_t)x55 & 0x3ffffff);
- uint64_t x58 = (x56 + x50);
- uint64_t x59 = (x58 >> 0x1a);
- uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- uint64_t x61 = (x59 + x49);
- uint64_t x62 = (x61 >> 0x1a);
- uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- uint64_t x64 = (x62 + x48);
- uint64_t x65 = (x64 >> 0x1a);
- uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- uint64_t x67 = (x65 + x47);
- uint64_t x68 = (x67 >> 0x1a);
- uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- uint64_t x70 = (x68 + x46);
- uint64_t x71 = (x70 >> 0x1a);
- uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- uint64_t x73 = (x71 + x45);
- uint64_t x74 = (x73 >> 0x1a);
- uint32_t x75 = ((uint32_t)x73 & 0x3ffffff);
- uint64_t x76 = (x74 + x44);
- uint64_t x77 = (x76 >> 0x1a);
- uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- uint64_t x79 = (x77 + x43);
- uint64_t x80 = (x79 >> 0x1a);
- uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- uint64_t x82 = (x80 + x42);
- uint64_t x83 = (x82 >> 0x1a);
- uint32_t x84 = ((uint32_t)x82 & 0x3ffffff);
- uint64_t x85 = (x83 + x41);
- uint64_t x86 = (x85 >> 0x1a);
- uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- uint64_t x88 = (x86 + x40);
- uint64_t x89 = (x88 >> 0x1a);
- uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- uint64_t x91 = (x89 + x39);
- uint64_t x92 = (x91 >> 0x1a);
- uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- uint64_t x94 = (x92 + x38);
- uint64_t x95 = (x94 >> 0x1a);
- uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- uint64_t x97 = (x95 + x37);
- uint64_t x98 = (x97 >> 0x1a);
- uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- uint64_t x100 = (x98 + x36);
- uint64_t x101 = (x100 >> 0x1a);
- uint32_t x102 = ((uint32_t)x100 & 0x3ffffff);
- uint64_t x103 = (x101 + x35);
- uint64_t x104 = (x103 >> 0x1a);
- uint32_t x105 = ((uint32_t)x103 & 0x3ffffff);
- uint64_t x106 = (x54 + (0x11 * x104));
- uint32_t x107 = (uint32_t) (x106 >> 0x1a);
- uint32_t x108 = ((uint32_t)x106 & 0x3ffffff);
- uint32_t x109 = (x107 + x57);
- uint32_t x110 = (x109 >> 0x1a);
- uint32_t x111 = (x109 & 0x3ffffff);
- return (Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, (x110 + x60), Return x111, Return x108))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e468m17_18limbs/fesquareDisplay.v b/src/Specific/solinas32_2e468m17_18limbs/fesquareDisplay.v
deleted file mode 100644
index 16d02e529..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e468m17_18limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e468m17_18limbs/fesub.c b/src/Specific/solinas32_2e468m17_18limbs/fesub.c
deleted file mode 100644
index 033df9f0f..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/fesub.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void fesub(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- out[0] = ((0x7ffffde + x5) - x39);
- out[1] = ((0x7fffffe + x7) - x41);
- out[2] = ((0x7fffffe + x9) - x43);
- out[3] = ((0x7fffffe + x11) - x45);
- out[4] = ((0x7fffffe + x13) - x47);
- out[5] = ((0x7fffffe + x15) - x49);
- out[6] = ((0x7fffffe + x17) - x51);
- out[7] = ((0x7fffffe + x19) - x53);
- out[8] = ((0x7fffffe + x21) - x55);
- out[9] = ((0x7fffffe + x23) - x57);
- out[10] = ((0x7fffffe + x25) - x59);
- out[11] = ((0x7fffffe + x27) - x61);
- out[12] = ((0x7fffffe + x29) - x63);
- out[13] = ((0x7fffffe + x31) - x65);
- out[14] = ((0x7fffffe + x33) - x67);
- out[15] = ((0x7fffffe + x35) - x69);
- out[16] = ((0x7fffffe + x37) - x71);
- out[17] = ((0x7fffffe + x36) - x70);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e468m17_18limbs/fesub.v b/src/Specific/solinas32_2e468m17_18limbs/fesub.v
deleted file mode 100644
index 96acd5162..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e468m17_18limbs.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_2e468m17_18limbs/fesubDisplay.log b/src/Specific/solinas32_2e468m17_18limbs/fesubDisplay.log
deleted file mode 100644
index 0224e108e..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- (((0x7fffffe + x36) - x70), ((0x7fffffe + x37) - x71), ((0x7fffffe + x35) - x69), ((0x7fffffe + x33) - x67), ((0x7fffffe + x31) - x65), ((0x7fffffe + x29) - x63), ((0x7fffffe + x27) - x61), ((0x7fffffe + x25) - x59), ((0x7fffffe + x23) - x57), ((0x7fffffe + x21) - x55), ((0x7fffffe + x19) - x53), ((0x7fffffe + x17) - x51), ((0x7fffffe + x15) - x49), ((0x7fffffe + x13) - x47), ((0x7fffffe + x11) - x45), ((0x7fffffe + x9) - x43), ((0x7fffffe + x7) - x41), ((0x7ffffde + x5) - x39)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e468m17_18limbs/fesubDisplay.v b/src/Specific/solinas32_2e468m17_18limbs/fesubDisplay.v
deleted file mode 100644
index d7987792e..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e468m17_18limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e468m17_18limbs/freeze.c b/src/Specific/solinas32_2e468m17_18limbs/freeze.c
deleted file mode 100644
index 625fba05e..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/freeze.c
+++ /dev/null
@@ -1,94 +0,0 @@
-static void freeze(uint32_t out[18], const uint32_t in1[18]) {
- { const uint32_t x33 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffef);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x4, 0x3ffffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x6, 0x3ffffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x8, 0x3ffffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x10, 0x3ffffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x12, 0x3ffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x14, 0x3ffffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x16, 0x3ffffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x18, 0x3ffffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x20, 0x3ffffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x22, 0x3ffffff);
- { uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x24, 0x3ffffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x26, 0x3ffffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x28, 0x3ffffff);
- { uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x30, 0x3ffffff);
- { uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x32, 0x3ffffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x34, 0x3ffffff);
- { uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x33, 0x3ffffff);
- { uint32_t x89 = cmovznz32(x88, 0x0, 0xffffffff);
- { uint32_t x90 = (x89 & 0x3ffffef);
- { uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x36, Return x90);
- { uint32_t x94 = (x89 & 0x3ffffff);
- { uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x39, Return x94);
- { uint32_t x98 = (x89 & 0x3ffffff);
- { uint32_t x100, uint8_t x101 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x42, Return x98);
- { uint32_t x102 = (x89 & 0x3ffffff);
- { uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x45, Return x102);
- { uint32_t x106 = (x89 & 0x3ffffff);
- { uint32_t x108, uint8_t x109 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x48, Return x106);
- { uint32_t x110 = (x89 & 0x3ffffff);
- { uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x51, Return x110);
- { uint32_t x114 = (x89 & 0x3ffffff);
- { uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x54, Return x114);
- { uint32_t x118 = (x89 & 0x3ffffff);
- { uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x57, Return x118);
- { uint32_t x122 = (x89 & 0x3ffffff);
- { uint32_t x124, uint8_t x125 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x60, Return x122);
- { uint32_t x126 = (x89 & 0x3ffffff);
- { uint32_t x128, uint8_t x129 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x125, Return x63, Return x126);
- { uint32_t x130 = (x89 & 0x3ffffff);
- { uint32_t x132, uint8_t x133 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x129, Return x66, Return x130);
- { uint32_t x134 = (x89 & 0x3ffffff);
- { uint32_t x136, uint8_t x137 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x133, Return x69, Return x134);
- { uint32_t x138 = (x89 & 0x3ffffff);
- { uint32_t x140, uint8_t x141 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x137, Return x72, Return x138);
- { uint32_t x142 = (x89 & 0x3ffffff);
- { uint32_t x144, uint8_t x145 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x141, Return x75, Return x142);
- { uint32_t x146 = (x89 & 0x3ffffff);
- { uint32_t x148, uint8_t x149 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x145, Return x78, Return x146);
- { uint32_t x150 = (x89 & 0x3ffffff);
- { uint32_t x152, uint8_t x153 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x149, Return x81, Return x150);
- { uint32_t x154 = (x89 & 0x3ffffff);
- { uint32_t x156, uint8_t x157 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x153, Return x84, Return x154);
- { uint32_t x158 = (x89 & 0x3ffffff);
- { uint32_t x160, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x157, Return x87, Return x158);
- out[0] = x92;
- out[1] = x96;
- out[2] = x100;
- out[3] = x104;
- out[4] = x108;
- out[5] = x112;
- out[6] = x116;
- out[7] = x120;
- out[8] = x124;
- out[9] = x128;
- out[10] = x132;
- out[11] = x136;
- out[12] = x140;
- out[13] = x144;
- out[14] = x148;
- out[15] = x152;
- out[16] = x156;
- out[17] = x160;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e468m17_18limbs/freeze.v b/src/Specific/solinas32_2e468m17_18limbs/freeze.v
deleted file mode 100644
index 3778b7a9c..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e468m17_18limbs.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_2e468m17_18limbs/freezeDisplay.log b/src/Specific/solinas32_2e468m17_18limbs/freezeDisplay.log
deleted file mode 100644
index b2480f2df..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/freezeDisplay.log
+++ /dev/null
@@ -1,62 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x33, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffef);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x4, 0x3ffffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x6, 0x3ffffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x8, 0x3ffffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x10, 0x3ffffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x12, 0x3ffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x14, 0x3ffffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x16, 0x3ffffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x18, 0x3ffffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x20, 0x3ffffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x22, 0x3ffffff);
- uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x24, 0x3ffffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x26, 0x3ffffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x28, 0x3ffffff);
- uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x30, 0x3ffffff);
- uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x32, 0x3ffffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x34, 0x3ffffff);
- uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x33, 0x3ffffff);
- uint32_t x89 = cmovznz32(x88, 0x0, 0xffffffff);
- uint32_t x90 = (x89 & 0x3ffffef);
- uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x36, Return x90);
- uint32_t x94 = (x89 & 0x3ffffff);
- uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x39, Return x94);
- uint32_t x98 = (x89 & 0x3ffffff);
- uint32_t x100, uint8_t x101 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x42, Return x98);
- uint32_t x102 = (x89 & 0x3ffffff);
- uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x45, Return x102);
- uint32_t x106 = (x89 & 0x3ffffff);
- uint32_t x108, uint8_t x109 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x48, Return x106);
- uint32_t x110 = (x89 & 0x3ffffff);
- uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x51, Return x110);
- uint32_t x114 = (x89 & 0x3ffffff);
- uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x54, Return x114);
- uint32_t x118 = (x89 & 0x3ffffff);
- uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x57, Return x118);
- uint32_t x122 = (x89 & 0x3ffffff);
- uint32_t x124, uint8_t x125 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x60, Return x122);
- uint32_t x126 = (x89 & 0x3ffffff);
- uint32_t x128, uint8_t x129 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x125, Return x63, Return x126);
- uint32_t x130 = (x89 & 0x3ffffff);
- uint32_t x132, uint8_t x133 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x129, Return x66, Return x130);
- uint32_t x134 = (x89 & 0x3ffffff);
- uint32_t x136, uint8_t x137 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x133, Return x69, Return x134);
- uint32_t x138 = (x89 & 0x3ffffff);
- uint32_t x140, uint8_t x141 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x137, Return x72, Return x138);
- uint32_t x142 = (x89 & 0x3ffffff);
- uint32_t x144, uint8_t x145 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x141, Return x75, Return x142);
- uint32_t x146 = (x89 & 0x3ffffff);
- uint32_t x148, uint8_t x149 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x145, Return x78, Return x146);
- uint32_t x150 = (x89 & 0x3ffffff);
- uint32_t x152, uint8_t x153 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x149, Return x81, Return x150);
- uint32_t x154 = (x89 & 0x3ffffff);
- uint32_t x156, uint8_t x157 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x153, Return x84, Return x154);
- uint32_t x158 = (x89 & 0x3ffffff);
- uint32_t x160, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x157, Return x87, Return x158);
- (Return x160, Return x156, Return x152, Return x148, Return x144, Return x140, Return x136, Return x132, Return x128, Return x124, Return x120, Return x116, Return x112, Return x108, Return x104, Return x100, Return x96, Return x92))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e468m17_18limbs/freezeDisplay.v b/src/Specific/solinas32_2e468m17_18limbs/freezeDisplay.v
deleted file mode 100644
index 3a39951e9..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e468m17_18limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e468m17_18limbs/py_interpreter.sh b/src/Specific/solinas32_2e468m17_18limbs/py_interpreter.sh
deleted file mode 100755
index f551f9bed..000000000
--- a/src/Specific/solinas32_2e468m17_18limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**468 - 17' -Dmodulus_bytes='26' -Da24='121665'
diff --git a/src/Specific/solinas32_2e468m17_19limbs/CurveParameters.v b/src/Specific/solinas32_2e468m17_19limbs/CurveParameters.v
deleted file mode 100644
index e45e0b6a8..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^468 - 17
-Base: 24 + 12/19
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 19%nat;
- base := 24 + 12/19;
- bitwidth := 32;
- s := 2^468;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 19); [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_2e468m17_19limbs/Synthesis.v b/src/Specific/solinas32_2e468m17_19limbs/Synthesis.v
deleted file mode 100644
index ad55dee34..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e468m17_19limbs.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_2e468m17_19limbs/compiler.sh b/src/Specific/solinas32_2e468m17_19limbs/compiler.sh
deleted file mode 100755
index 81f276f93..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,25,24,25,25,24,25,25,24,25,24,25,25,24,25,25,24,25,24}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='59' -Dmodulus_limbs='19' -Dq_mpz='(1_mpz<<468) - 17' "$@"
diff --git a/src/Specific/solinas32_2e468m17_19limbs/compilerxx.sh b/src/Specific/solinas32_2e468m17_19limbs/compilerxx.sh
deleted file mode 100755
index 15bad2349..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,25,24,25,25,24,25,25,24,25,24,25,25,24,25,25,24,25,24}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='59' -Dmodulus_limbs='19' -Dq_mpz='(1_mpz<<468) - 17' "$@"
diff --git a/src/Specific/solinas32_2e468m17_19limbs/feadd.c b/src/Specific/solinas32_2e468m17_19limbs/feadd.c
deleted file mode 100644
index 7432e2ef1..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/feadd.c
+++ /dev/null
@@ -1,60 +0,0 @@
-static void feadd(uint32_t out[19], const uint32_t in1[19], const uint32_t in2[19]) {
- { const uint32_t x38 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x74 = in2[18];
- { const uint32_t x75 = in2[17];
- { const uint32_t x73 = in2[16];
- { const uint32_t x71 = in2[15];
- { const uint32_t x69 = in2[14];
- { const uint32_t x67 = in2[13];
- { const uint32_t x65 = in2[12];
- { const uint32_t x63 = in2[11];
- { const uint32_t x61 = in2[10];
- { const uint32_t x59 = in2[9];
- { const uint32_t x57 = in2[8];
- { const uint32_t x55 = in2[7];
- { const uint32_t x53 = in2[6];
- { const uint32_t x51 = in2[5];
- { const uint32_t x49 = in2[4];
- { const uint32_t x47 = in2[3];
- { const uint32_t x45 = in2[2];
- { const uint32_t x43 = in2[1];
- { const uint32_t x41 = in2[0];
- out[0] = (x5 + x41);
- out[1] = (x7 + x43);
- out[2] = (x9 + x45);
- out[3] = (x11 + x47);
- out[4] = (x13 + x49);
- out[5] = (x15 + x51);
- out[6] = (x17 + x53);
- out[7] = (x19 + x55);
- out[8] = (x21 + x57);
- out[9] = (x23 + x59);
- out[10] = (x25 + x61);
- out[11] = (x27 + x63);
- out[12] = (x29 + x65);
- out[13] = (x31 + x67);
- out[14] = (x33 + x69);
- out[15] = (x35 + x71);
- out[16] = (x37 + x73);
- out[17] = (x39 + x75);
- out[18] = (x38 + x74);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e468m17_19limbs/feadd.v b/src/Specific/solinas32_2e468m17_19limbs/feadd.v
deleted file mode 100644
index a27c79f2a..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e468m17_19limbs.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_2e468m17_19limbs/feaddDisplay.log b/src/Specific/solinas32_2e468m17_19limbs/feaddDisplay.log
deleted file mode 100644
index 76a71b356..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x38, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x74, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41))%core,
- ((x38 + x74), (x39 + x75), (x37 + x73), (x35 + x71), (x33 + x69), (x31 + x67), (x29 + x65), (x27 + x63), (x25 + x61), (x23 + x59), (x21 + x57), (x19 + x55), (x17 + x53), (x15 + x51), (x13 + x49), (x11 + x47), (x9 + x45), (x7 + x43), (x5 + x41)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e468m17_19limbs/feaddDisplay.v b/src/Specific/solinas32_2e468m17_19limbs/feaddDisplay.v
deleted file mode 100644
index f7d6bbc6d..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e468m17_19limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e468m17_19limbs/fecarry.v b/src/Specific/solinas32_2e468m17_19limbs/fecarry.v
deleted file mode 100644
index c7b28119b..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e468m17_19limbs.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_2e468m17_19limbs/fecarryDisplay.v b/src/Specific/solinas32_2e468m17_19limbs/fecarryDisplay.v
deleted file mode 100644
index aa7decfaa..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e468m17_19limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e468m17_19limbs/femul.c b/src/Specific/solinas32_2e468m17_19limbs/femul.c
deleted file mode 100644
index 91ddcff49..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/femul.c
+++ /dev/null
@@ -1,141 +0,0 @@
-static void femul(uint32_t out[19], const uint32_t in1[19], const uint32_t in2[19]) {
- { const uint32_t x38 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x74 = in2[18];
- { const uint32_t x75 = in2[17];
- { const uint32_t x73 = in2[16];
- { const uint32_t x71 = in2[15];
- { const uint32_t x69 = in2[14];
- { const uint32_t x67 = in2[13];
- { const uint32_t x65 = in2[12];
- { const uint32_t x63 = in2[11];
- { const uint32_t x61 = in2[10];
- { const uint32_t x59 = in2[9];
- { const uint32_t x57 = in2[8];
- { const uint32_t x55 = in2[7];
- { const uint32_t x53 = in2[6];
- { const uint32_t x51 = in2[5];
- { const uint32_t x49 = in2[4];
- { const uint32_t x47 = in2[3];
- { const uint32_t x45 = in2[2];
- { const uint32_t x43 = in2[1];
- { const uint32_t x41 = in2[0];
- { uint64_t x76 = (((uint64_t)x5 * x74) + (((uint64_t)x7 * x75) + ((0x2 * ((uint64_t)x9 * x73)) + (((uint64_t)x11 * x71) + (((uint64_t)x13 * x69) + ((0x2 * ((uint64_t)x15 * x67)) + (((uint64_t)x17 * x65) + (((uint64_t)x19 * x63) + ((0x2 * ((uint64_t)x21 * x61)) + (((uint64_t)x23 * x59) + ((0x2 * ((uint64_t)x25 * x57)) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + ((0x2 * ((uint64_t)x31 * x51)) + (((uint64_t)x33 * x49) + (((uint64_t)x35 * x47) + ((0x2 * ((uint64_t)x37 * x45)) + (((uint64_t)x39 * x43) + ((uint64_t)x38 * x41)))))))))))))))))));
- { uint64_t x77 = ((((uint64_t)x5 * x75) + ((0x2 * ((uint64_t)x7 * x73)) + ((0x2 * ((uint64_t)x9 * x71)) + (((uint64_t)x11 * x69) + ((0x2 * ((uint64_t)x13 * x67)) + ((0x2 * ((uint64_t)x15 * x65)) + (((uint64_t)x17 * x63) + ((0x2 * ((uint64_t)x19 * x61)) + ((0x2 * ((uint64_t)x21 * x59)) + ((0x2 * ((uint64_t)x23 * x57)) + ((0x2 * ((uint64_t)x25 * x55)) + (((uint64_t)x27 * x53) + ((0x2 * ((uint64_t)x29 * x51)) + ((0x2 * ((uint64_t)x31 * x49)) + (((uint64_t)x33 * x47) + ((0x2 * ((uint64_t)x35 * x45)) + ((0x2 * ((uint64_t)x37 * x43)) + ((uint64_t)x39 * x41)))))))))))))))))) + (0x11 * (0x2 * ((uint64_t)x38 * x74))));
- { uint64_t x78 = ((((uint64_t)x5 * x73) + (((uint64_t)x7 * x71) + (((uint64_t)x9 * x69) + (((uint64_t)x11 * x67) + (((uint64_t)x13 * x65) + (((uint64_t)x15 * x63) + (((uint64_t)x17 * x61) + (((uint64_t)x19 * x59) + ((0x2 * ((uint64_t)x21 * x57)) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + (((uint64_t)x29 * x49) + (((uint64_t)x31 * x47) + (((uint64_t)x33 * x45) + (((uint64_t)x35 * x43) + ((uint64_t)x37 * x41))))))))))))))))) + (0x11 * (((uint64_t)x39 * x74) + ((uint64_t)x38 * x75))));
- { uint64_t x79 = ((((uint64_t)x5 * x71) + (((uint64_t)x7 * x69) + ((0x2 * ((uint64_t)x9 * x67)) + (((uint64_t)x11 * x65) + (((uint64_t)x13 * x63) + ((0x2 * ((uint64_t)x15 * x61)) + (((uint64_t)x17 * x59) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + (((uint64_t)x23 * x53) + ((0x2 * ((uint64_t)x25 * x51)) + (((uint64_t)x27 * x49) + (((uint64_t)x29 * x47) + ((0x2 * ((uint64_t)x31 * x45)) + (((uint64_t)x33 * x43) + ((uint64_t)x35 * x41)))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x37 * x74)) + (((uint64_t)x39 * x75) + (0x2 * ((uint64_t)x38 * x73))))));
- { uint64_t x80 = ((((uint64_t)x5 * x69) + ((0x2 * ((uint64_t)x7 * x67)) + ((0x2 * ((uint64_t)x9 * x65)) + (((uint64_t)x11 * x63) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + ((0x2 * ((uint64_t)x19 * x55)) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + (((uint64_t)x27 * x47) + ((0x2 * ((uint64_t)x29 * x45)) + ((0x2 * ((uint64_t)x31 * x43)) + ((uint64_t)x33 * x41))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x35 * x74)) + ((0x2 * ((uint64_t)x37 * x75)) + ((0x2 * ((uint64_t)x39 * x73)) + (0x2 * ((uint64_t)x38 * x71)))))));
- { uint64_t x81 = ((((uint64_t)x5 * x67) + (((uint64_t)x7 * x65) + (((uint64_t)x9 * x63) + (((uint64_t)x11 * x61) + (((uint64_t)x13 * x59) + ((0x2 * ((uint64_t)x15 * x57)) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + ((0x2 * ((uint64_t)x21 * x51)) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + (((uint64_t)x29 * x43) + ((uint64_t)x31 * x41)))))))))))))) + (0x11 * (((uint64_t)x33 * x74) + (((uint64_t)x35 * x75) + ((0x2 * ((uint64_t)x37 * x73)) + (((uint64_t)x39 * x71) + ((uint64_t)x38 * x69)))))));
- { uint64_t x82 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + ((0x2 * ((uint64_t)x9 * x61)) + (((uint64_t)x11 * x59) + ((0x2 * ((uint64_t)x13 * x57)) + ((0x2 * ((uint64_t)x15 * x55)) + (((uint64_t)x17 * x53) + ((0x2 * ((uint64_t)x19 * x51)) + ((0x2 * ((uint64_t)x21 * x49)) + (((uint64_t)x23 * x47) + ((0x2 * ((uint64_t)x25 * x45)) + (((uint64_t)x27 * x43) + ((uint64_t)x29 * x41))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x31 * x74)) + (((uint64_t)x33 * x75) + ((0x2 * ((uint64_t)x35 * x73)) + ((0x2 * ((uint64_t)x37 * x71)) + (((uint64_t)x39 * x69) + (0x2 * ((uint64_t)x38 * x67)))))))));
- { uint64_t x83 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + ((0x2 * ((uint64_t)x25 * x43)) + ((uint64_t)x27 * x41)))))))))))) + (0x11 * ((0x2 * ((uint64_t)x29 * x74)) + ((0x2 * ((uint64_t)x31 * x75)) + ((0x2 * ((uint64_t)x33 * x73)) + ((0x2 * ((uint64_t)x35 * x71)) + ((0x2 * ((uint64_t)x37 * x69)) + ((0x2 * ((uint64_t)x39 * x67)) + (0x2 * ((uint64_t)x38 * x65))))))))));
- { uint64_t x84 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + ((0x2 * ((uint64_t)x9 * x57)) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + ((0x2 * ((uint64_t)x15 * x51)) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + ((0x2 * ((uint64_t)x21 * x45)) + (((uint64_t)x23 * x43) + ((uint64_t)x25 * x41))))))))))) + (0x11 * (((uint64_t)x27 * x74) + (((uint64_t)x29 * x75) + ((0x2 * ((uint64_t)x31 * x73)) + (((uint64_t)x33 * x71) + (((uint64_t)x35 * x69) + ((0x2 * ((uint64_t)x37 * x67)) + (((uint64_t)x39 * x65) + ((uint64_t)x38 * x63))))))))));
- { uint64_t x85 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + (((uint64_t)x11 * x53) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + (((uint64_t)x17 * x47) + ((0x2 * ((uint64_t)x19 * x45)) + ((0x2 * ((uint64_t)x21 * x43)) + ((uint64_t)x23 * x41)))))))))) + (0x11 * ((0x2 * ((uint64_t)x25 * x74)) + (((uint64_t)x27 * x75) + ((0x2 * ((uint64_t)x29 * x73)) + ((0x2 * ((uint64_t)x31 * x71)) + (((uint64_t)x33 * x69) + ((0x2 * ((uint64_t)x35 * x67)) + ((0x2 * ((uint64_t)x37 * x65)) + (((uint64_t)x39 * x63) + (0x2 * ((uint64_t)x38 * x61))))))))))));
- { uint64_t x86 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + ((uint64_t)x21 * x41))))))))) + (0x11 * (((uint64_t)x23 * x74) + (((uint64_t)x25 * x75) + (((uint64_t)x27 * x73) + (((uint64_t)x29 * x71) + (((uint64_t)x31 * x69) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + (((uint64_t)x37 * x63) + (((uint64_t)x39 * x61) + ((uint64_t)x38 * x59))))))))))));
- { uint64_t x87 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + ((0x2 * ((uint64_t)x9 * x51)) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + ((0x2 * ((uint64_t)x15 * x45)) + (((uint64_t)x17 * x43) + ((uint64_t)x19 * x41)))))))) + (0x11 * ((0x2 * ((uint64_t)x21 * x74)) + (((uint64_t)x23 * x75) + ((0x2 * ((uint64_t)x25 * x73)) + (((uint64_t)x27 * x71) + (((uint64_t)x29 * x69) + ((0x2 * ((uint64_t)x31 * x67)) + (((uint64_t)x33 * x65) + (((uint64_t)x35 * x63) + ((0x2 * ((uint64_t)x37 * x61)) + (((uint64_t)x39 * x59) + (0x2 * ((uint64_t)x38 * x57))))))))))))));
- { uint64_t x88 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + ((uint64_t)x17 * x41))))))) + (0x11 * ((0x2 * ((uint64_t)x19 * x74)) + ((0x2 * ((uint64_t)x21 * x75)) + ((0x2 * ((uint64_t)x23 * x73)) + ((0x2 * ((uint64_t)x25 * x71)) + (((uint64_t)x27 * x69) + ((0x2 * ((uint64_t)x29 * x67)) + ((0x2 * ((uint64_t)x31 * x65)) + (((uint64_t)x33 * x63) + ((0x2 * ((uint64_t)x35 * x61)) + ((0x2 * ((uint64_t)x37 * x59)) + ((0x2 * ((uint64_t)x39 * x57)) + (0x2 * ((uint64_t)x38 * x55)))))))))))))));
- { uint64_t x89 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + ((uint64_t)x15 * x41)))))) + (0x11 * (((uint64_t)x17 * x74) + (((uint64_t)x19 * x75) + ((0x2 * ((uint64_t)x21 * x73)) + (((uint64_t)x23 * x71) + (((uint64_t)x25 * x69) + (((uint64_t)x27 * x67) + (((uint64_t)x29 * x65) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + (((uint64_t)x35 * x59) + ((0x2 * ((uint64_t)x37 * x57)) + (((uint64_t)x39 * x55) + ((uint64_t)x38 * x53)))))))))))))));
- { uint64_t x90 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + ((0x2 * ((uint64_t)x9 * x45)) + (((uint64_t)x11 * x43) + ((uint64_t)x13 * x41))))) + (0x11 * ((0x2 * ((uint64_t)x15 * x74)) + (((uint64_t)x17 * x75) + ((0x2 * ((uint64_t)x19 * x73)) + ((0x2 * ((uint64_t)x21 * x71)) + (((uint64_t)x23 * x69) + ((0x2 * ((uint64_t)x25 * x67)) + (((uint64_t)x27 * x65) + (((uint64_t)x29 * x63) + ((0x2 * ((uint64_t)x31 * x61)) + (((uint64_t)x33 * x59) + ((0x2 * ((uint64_t)x35 * x57)) + ((0x2 * ((uint64_t)x37 * x55)) + (((uint64_t)x39 * x53) + (0x2 * ((uint64_t)x38 * x51)))))))))))))))));
- { uint64_t x91 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((uint64_t)x11 * x41)))) + (0x11 * ((0x2 * ((uint64_t)x13 * x74)) + ((0x2 * ((uint64_t)x15 * x75)) + ((0x2 * ((uint64_t)x17 * x73)) + ((0x2 * ((uint64_t)x19 * x71)) + ((0x2 * ((uint64_t)x21 * x69)) + ((0x2 * ((uint64_t)x23 * x67)) + ((0x2 * ((uint64_t)x25 * x65)) + (((uint64_t)x27 * x63) + ((0x2 * ((uint64_t)x29 * x61)) + ((0x2 * ((uint64_t)x31 * x59)) + ((0x2 * ((uint64_t)x33 * x57)) + ((0x2 * ((uint64_t)x35 * x55)) + ((0x2 * ((uint64_t)x37 * x53)) + ((0x2 * ((uint64_t)x39 * x51)) + (0x2 * ((uint64_t)x38 * x49))))))))))))))))));
- { uint64_t x92 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((uint64_t)x9 * x41))) + (0x11 * (((uint64_t)x11 * x74) + (((uint64_t)x13 * x75) + ((0x2 * ((uint64_t)x15 * x73)) + (((uint64_t)x17 * x71) + (((uint64_t)x19 * x69) + ((0x2 * ((uint64_t)x21 * x67)) + (((uint64_t)x23 * x65) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + ((0x2 * ((uint64_t)x31 * x57)) + (((uint64_t)x33 * x55) + (((uint64_t)x35 * x53) + ((0x2 * ((uint64_t)x37 * x51)) + (((uint64_t)x39 * x49) + ((uint64_t)x38 * x47))))))))))))))))));
- { uint64_t x93 = ((((uint64_t)x5 * x43) + ((uint64_t)x7 * x41)) + (0x11 * ((0x2 * ((uint64_t)x9 * x74)) + (((uint64_t)x11 * x75) + ((0x2 * ((uint64_t)x13 * x73)) + ((0x2 * ((uint64_t)x15 * x71)) + (((uint64_t)x17 * x69) + ((0x2 * ((uint64_t)x19 * x67)) + ((0x2 * ((uint64_t)x21 * x65)) + (((uint64_t)x23 * x63) + ((0x2 * ((uint64_t)x25 * x61)) + (((uint64_t)x27 * x59) + ((0x2 * ((uint64_t)x29 * x57)) + ((0x2 * ((uint64_t)x31 * x55)) + (((uint64_t)x33 * x53) + ((0x2 * ((uint64_t)x35 * x51)) + ((0x2 * ((uint64_t)x37 * x49)) + (((uint64_t)x39 * x47) + (0x2 * ((uint64_t)x38 * x45))))))))))))))))))));
- { uint64_t x94 = (((uint64_t)x5 * x41) + (0x11 * ((0x2 * ((uint64_t)x7 * x74)) + ((0x2 * ((uint64_t)x9 * x75)) + ((0x2 * ((uint64_t)x11 * x73)) + ((0x2 * ((uint64_t)x13 * x71)) + ((0x2 * ((uint64_t)x15 * x69)) + ((0x2 * ((uint64_t)x17 * x67)) + ((0x2 * ((uint64_t)x19 * x65)) + ((0x2 * ((uint64_t)x21 * x63)) + ((0x2 * ((uint64_t)x23 * x61)) + ((0x2 * ((uint64_t)x25 * x59)) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + ((0x2 * ((uint64_t)x31 * x53)) + ((0x2 * ((uint64_t)x33 * x51)) + ((0x2 * ((uint64_t)x35 * x49)) + ((0x2 * ((uint64_t)x37 * x47)) + ((0x2 * ((uint64_t)x39 * x45)) + (0x2 * ((uint64_t)x38 * x43)))))))))))))))))))));
- { uint64_t x95 = (x94 >> 0x19);
- { uint32_t x96 = ((uint32_t)x94 & 0x1ffffff);
- { uint64_t x97 = (x95 + x93);
- { uint64_t x98 = (x97 >> 0x19);
- { uint32_t x99 = ((uint32_t)x97 & 0x1ffffff);
- { uint64_t x100 = (x98 + x92);
- { uint64_t x101 = (x100 >> 0x18);
- { uint32_t x102 = ((uint32_t)x100 & 0xffffff);
- { uint64_t x103 = (x101 + x91);
- { uint64_t x104 = (x103 >> 0x19);
- { uint32_t x105 = ((uint32_t)x103 & 0x1ffffff);
- { uint64_t x106 = (x104 + x90);
- { uint64_t x107 = (x106 >> 0x19);
- { uint32_t x108 = ((uint32_t)x106 & 0x1ffffff);
- { uint64_t x109 = (x107 + x89);
- { uint64_t x110 = (x109 >> 0x18);
- { uint32_t x111 = ((uint32_t)x109 & 0xffffff);
- { uint64_t x112 = (x110 + x88);
- { uint64_t x113 = (x112 >> 0x19);
- { uint32_t x114 = ((uint32_t)x112 & 0x1ffffff);
- { uint64_t x115 = (x113 + x87);
- { uint64_t x116 = (x115 >> 0x19);
- { uint32_t x117 = ((uint32_t)x115 & 0x1ffffff);
- { uint64_t x118 = (x116 + x86);
- { uint64_t x119 = (x118 >> 0x18);
- { uint32_t x120 = ((uint32_t)x118 & 0xffffff);
- { uint64_t x121 = (x119 + x85);
- { uint64_t x122 = (x121 >> 0x19);
- { uint32_t x123 = ((uint32_t)x121 & 0x1ffffff);
- { uint64_t x124 = (x122 + x84);
- { uint64_t x125 = (x124 >> 0x18);
- { uint32_t x126 = ((uint32_t)x124 & 0xffffff);
- { uint64_t x127 = (x125 + x83);
- { uint64_t x128 = (x127 >> 0x19);
- { uint32_t x129 = ((uint32_t)x127 & 0x1ffffff);
- { uint64_t x130 = (x128 + x82);
- { uint64_t x131 = (x130 >> 0x19);
- { uint32_t x132 = ((uint32_t)x130 & 0x1ffffff);
- { uint64_t x133 = (x131 + x81);
- { uint64_t x134 = (x133 >> 0x18);
- { uint32_t x135 = ((uint32_t)x133 & 0xffffff);
- { uint64_t x136 = (x134 + x80);
- { uint64_t x137 = (x136 >> 0x19);
- { uint32_t x138 = ((uint32_t)x136 & 0x1ffffff);
- { uint64_t x139 = (x137 + x79);
- { uint64_t x140 = (x139 >> 0x19);
- { uint32_t x141 = ((uint32_t)x139 & 0x1ffffff);
- { uint64_t x142 = (x140 + x78);
- { uint64_t x143 = (x142 >> 0x18);
- { uint32_t x144 = ((uint32_t)x142 & 0xffffff);
- { uint64_t x145 = (x143 + x77);
- { uint64_t x146 = (x145 >> 0x19);
- { uint32_t x147 = ((uint32_t)x145 & 0x1ffffff);
- { uint64_t x148 = (x146 + x76);
- { uint64_t x149 = (x148 >> 0x18);
- { uint32_t x150 = ((uint32_t)x148 & 0xffffff);
- { uint64_t x151 = (x96 + (0x11 * x149));
- { uint32_t x152 = (uint32_t) (x151 >> 0x19);
- { uint32_t x153 = ((uint32_t)x151 & 0x1ffffff);
- { uint32_t x154 = (x152 + x99);
- { uint32_t x155 = (x154 >> 0x19);
- { uint32_t x156 = (x154 & 0x1ffffff);
- out[0] = x153;
- out[1] = x156;
- out[2] = (x155 + x102);
- out[3] = x105;
- out[4] = x108;
- out[5] = x111;
- out[6] = x114;
- out[7] = x117;
- out[8] = x120;
- out[9] = x123;
- out[10] = x126;
- out[11] = x129;
- out[12] = x132;
- out[13] = x135;
- out[14] = x138;
- out[15] = x141;
- out[16] = x144;
- out[17] = x147;
- out[18] = x150;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e468m17_19limbs/femul.v b/src/Specific/solinas32_2e468m17_19limbs/femul.v
deleted file mode 100644
index 9f6fa710e..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e468m17_19limbs.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_2e468m17_19limbs/femulDisplay.log b/src/Specific/solinas32_2e468m17_19limbs/femulDisplay.log
deleted file mode 100644
index 83dc83bae..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/femulDisplay.log
+++ /dev/null
@@ -1,88 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x38, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x74, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41))%core,
- uint64_t x76 = (((uint64_t)x5 * x74) + (((uint64_t)x7 * x75) + ((0x2 * ((uint64_t)x9 * x73)) + (((uint64_t)x11 * x71) + (((uint64_t)x13 * x69) + ((0x2 * ((uint64_t)x15 * x67)) + (((uint64_t)x17 * x65) + (((uint64_t)x19 * x63) + ((0x2 * ((uint64_t)x21 * x61)) + (((uint64_t)x23 * x59) + ((0x2 * ((uint64_t)x25 * x57)) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + ((0x2 * ((uint64_t)x31 * x51)) + (((uint64_t)x33 * x49) + (((uint64_t)x35 * x47) + ((0x2 * ((uint64_t)x37 * x45)) + (((uint64_t)x39 * x43) + ((uint64_t)x38 * x41)))))))))))))))))));
- uint64_t x77 = ((((uint64_t)x5 * x75) + ((0x2 * ((uint64_t)x7 * x73)) + ((0x2 * ((uint64_t)x9 * x71)) + (((uint64_t)x11 * x69) + ((0x2 * ((uint64_t)x13 * x67)) + ((0x2 * ((uint64_t)x15 * x65)) + (((uint64_t)x17 * x63) + ((0x2 * ((uint64_t)x19 * x61)) + ((0x2 * ((uint64_t)x21 * x59)) + ((0x2 * ((uint64_t)x23 * x57)) + ((0x2 * ((uint64_t)x25 * x55)) + (((uint64_t)x27 * x53) + ((0x2 * ((uint64_t)x29 * x51)) + ((0x2 * ((uint64_t)x31 * x49)) + (((uint64_t)x33 * x47) + ((0x2 * ((uint64_t)x35 * x45)) + ((0x2 * ((uint64_t)x37 * x43)) + ((uint64_t)x39 * x41)))))))))))))))))) + (0x11 * (0x2 * ((uint64_t)x38 * x74))));
- uint64_t x78 = ((((uint64_t)x5 * x73) + (((uint64_t)x7 * x71) + (((uint64_t)x9 * x69) + (((uint64_t)x11 * x67) + (((uint64_t)x13 * x65) + (((uint64_t)x15 * x63) + (((uint64_t)x17 * x61) + (((uint64_t)x19 * x59) + ((0x2 * ((uint64_t)x21 * x57)) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + (((uint64_t)x29 * x49) + (((uint64_t)x31 * x47) + (((uint64_t)x33 * x45) + (((uint64_t)x35 * x43) + ((uint64_t)x37 * x41))))))))))))))))) + (0x11 * (((uint64_t)x39 * x74) + ((uint64_t)x38 * x75))));
- uint64_t x79 = ((((uint64_t)x5 * x71) + (((uint64_t)x7 * x69) + ((0x2 * ((uint64_t)x9 * x67)) + (((uint64_t)x11 * x65) + (((uint64_t)x13 * x63) + ((0x2 * ((uint64_t)x15 * x61)) + (((uint64_t)x17 * x59) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + (((uint64_t)x23 * x53) + ((0x2 * ((uint64_t)x25 * x51)) + (((uint64_t)x27 * x49) + (((uint64_t)x29 * x47) + ((0x2 * ((uint64_t)x31 * x45)) + (((uint64_t)x33 * x43) + ((uint64_t)x35 * x41)))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x37 * x74)) + (((uint64_t)x39 * x75) + (0x2 * ((uint64_t)x38 * x73))))));
- uint64_t x80 = ((((uint64_t)x5 * x69) + ((0x2 * ((uint64_t)x7 * x67)) + ((0x2 * ((uint64_t)x9 * x65)) + (((uint64_t)x11 * x63) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + ((0x2 * ((uint64_t)x19 * x55)) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + (((uint64_t)x27 * x47) + ((0x2 * ((uint64_t)x29 * x45)) + ((0x2 * ((uint64_t)x31 * x43)) + ((uint64_t)x33 * x41))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x35 * x74)) + ((0x2 * ((uint64_t)x37 * x75)) + ((0x2 * ((uint64_t)x39 * x73)) + (0x2 * ((uint64_t)x38 * x71)))))));
- uint64_t x81 = ((((uint64_t)x5 * x67) + (((uint64_t)x7 * x65) + (((uint64_t)x9 * x63) + (((uint64_t)x11 * x61) + (((uint64_t)x13 * x59) + ((0x2 * ((uint64_t)x15 * x57)) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + ((0x2 * ((uint64_t)x21 * x51)) + (((uint64_t)x23 * x49) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + (((uint64_t)x29 * x43) + ((uint64_t)x31 * x41)))))))))))))) + (0x11 * (((uint64_t)x33 * x74) + (((uint64_t)x35 * x75) + ((0x2 * ((uint64_t)x37 * x73)) + (((uint64_t)x39 * x71) + ((uint64_t)x38 * x69)))))));
- uint64_t x82 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + ((0x2 * ((uint64_t)x9 * x61)) + (((uint64_t)x11 * x59) + ((0x2 * ((uint64_t)x13 * x57)) + ((0x2 * ((uint64_t)x15 * x55)) + (((uint64_t)x17 * x53) + ((0x2 * ((uint64_t)x19 * x51)) + ((0x2 * ((uint64_t)x21 * x49)) + (((uint64_t)x23 * x47) + ((0x2 * ((uint64_t)x25 * x45)) + (((uint64_t)x27 * x43) + ((uint64_t)x29 * x41))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x31 * x74)) + (((uint64_t)x33 * x75) + ((0x2 * ((uint64_t)x35 * x73)) + ((0x2 * ((uint64_t)x37 * x71)) + (((uint64_t)x39 * x69) + (0x2 * ((uint64_t)x38 * x67)))))))));
- uint64_t x83 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + ((0x2 * ((uint64_t)x25 * x43)) + ((uint64_t)x27 * x41)))))))))))) + (0x11 * ((0x2 * ((uint64_t)x29 * x74)) + ((0x2 * ((uint64_t)x31 * x75)) + ((0x2 * ((uint64_t)x33 * x73)) + ((0x2 * ((uint64_t)x35 * x71)) + ((0x2 * ((uint64_t)x37 * x69)) + ((0x2 * ((uint64_t)x39 * x67)) + (0x2 * ((uint64_t)x38 * x65))))))))));
- uint64_t x84 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + ((0x2 * ((uint64_t)x9 * x57)) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + ((0x2 * ((uint64_t)x15 * x51)) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + ((0x2 * ((uint64_t)x21 * x45)) + (((uint64_t)x23 * x43) + ((uint64_t)x25 * x41))))))))))) + (0x11 * (((uint64_t)x27 * x74) + (((uint64_t)x29 * x75) + ((0x2 * ((uint64_t)x31 * x73)) + (((uint64_t)x33 * x71) + (((uint64_t)x35 * x69) + ((0x2 * ((uint64_t)x37 * x67)) + (((uint64_t)x39 * x65) + ((uint64_t)x38 * x63))))))))));
- uint64_t x85 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + (((uint64_t)x11 * x53) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + (((uint64_t)x17 * x47) + ((0x2 * ((uint64_t)x19 * x45)) + ((0x2 * ((uint64_t)x21 * x43)) + ((uint64_t)x23 * x41)))))))))) + (0x11 * ((0x2 * ((uint64_t)x25 * x74)) + (((uint64_t)x27 * x75) + ((0x2 * ((uint64_t)x29 * x73)) + ((0x2 * ((uint64_t)x31 * x71)) + (((uint64_t)x33 * x69) + ((0x2 * ((uint64_t)x35 * x67)) + ((0x2 * ((uint64_t)x37 * x65)) + (((uint64_t)x39 * x63) + (0x2 * ((uint64_t)x38 * x61))))))))))));
- uint64_t x86 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + ((uint64_t)x21 * x41))))))))) + (0x11 * (((uint64_t)x23 * x74) + (((uint64_t)x25 * x75) + (((uint64_t)x27 * x73) + (((uint64_t)x29 * x71) + (((uint64_t)x31 * x69) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + (((uint64_t)x37 * x63) + (((uint64_t)x39 * x61) + ((uint64_t)x38 * x59))))))))))));
- uint64_t x87 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + ((0x2 * ((uint64_t)x9 * x51)) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + ((0x2 * ((uint64_t)x15 * x45)) + (((uint64_t)x17 * x43) + ((uint64_t)x19 * x41)))))))) + (0x11 * ((0x2 * ((uint64_t)x21 * x74)) + (((uint64_t)x23 * x75) + ((0x2 * ((uint64_t)x25 * x73)) + (((uint64_t)x27 * x71) + (((uint64_t)x29 * x69) + ((0x2 * ((uint64_t)x31 * x67)) + (((uint64_t)x33 * x65) + (((uint64_t)x35 * x63) + ((0x2 * ((uint64_t)x37 * x61)) + (((uint64_t)x39 * x59) + (0x2 * ((uint64_t)x38 * x57))))))))))))));
- uint64_t x88 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + ((0x2 * ((uint64_t)x13 * x45)) + ((0x2 * ((uint64_t)x15 * x43)) + ((uint64_t)x17 * x41))))))) + (0x11 * ((0x2 * ((uint64_t)x19 * x74)) + ((0x2 * ((uint64_t)x21 * x75)) + ((0x2 * ((uint64_t)x23 * x73)) + ((0x2 * ((uint64_t)x25 * x71)) + (((uint64_t)x27 * x69) + ((0x2 * ((uint64_t)x29 * x67)) + ((0x2 * ((uint64_t)x31 * x65)) + (((uint64_t)x33 * x63) + ((0x2 * ((uint64_t)x35 * x61)) + ((0x2 * ((uint64_t)x37 * x59)) + ((0x2 * ((uint64_t)x39 * x57)) + (0x2 * ((uint64_t)x38 * x55)))))))))))))));
- uint64_t x89 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + ((uint64_t)x15 * x41)))))) + (0x11 * (((uint64_t)x17 * x74) + (((uint64_t)x19 * x75) + ((0x2 * ((uint64_t)x21 * x73)) + (((uint64_t)x23 * x71) + (((uint64_t)x25 * x69) + (((uint64_t)x27 * x67) + (((uint64_t)x29 * x65) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + (((uint64_t)x35 * x59) + ((0x2 * ((uint64_t)x37 * x57)) + (((uint64_t)x39 * x55) + ((uint64_t)x38 * x53)))))))))))))));
- uint64_t x90 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + ((0x2 * ((uint64_t)x9 * x45)) + (((uint64_t)x11 * x43) + ((uint64_t)x13 * x41))))) + (0x11 * ((0x2 * ((uint64_t)x15 * x74)) + (((uint64_t)x17 * x75) + ((0x2 * ((uint64_t)x19 * x73)) + ((0x2 * ((uint64_t)x21 * x71)) + (((uint64_t)x23 * x69) + ((0x2 * ((uint64_t)x25 * x67)) + (((uint64_t)x27 * x65) + (((uint64_t)x29 * x63) + ((0x2 * ((uint64_t)x31 * x61)) + (((uint64_t)x33 * x59) + ((0x2 * ((uint64_t)x35 * x57)) + ((0x2 * ((uint64_t)x37 * x55)) + (((uint64_t)x39 * x53) + (0x2 * ((uint64_t)x38 * x51)))))))))))))))));
- uint64_t x91 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((0x2 * ((uint64_t)x9 * x43)) + ((uint64_t)x11 * x41)))) + (0x11 * ((0x2 * ((uint64_t)x13 * x74)) + ((0x2 * ((uint64_t)x15 * x75)) + ((0x2 * ((uint64_t)x17 * x73)) + ((0x2 * ((uint64_t)x19 * x71)) + ((0x2 * ((uint64_t)x21 * x69)) + ((0x2 * ((uint64_t)x23 * x67)) + ((0x2 * ((uint64_t)x25 * x65)) + (((uint64_t)x27 * x63) + ((0x2 * ((uint64_t)x29 * x61)) + ((0x2 * ((uint64_t)x31 * x59)) + ((0x2 * ((uint64_t)x33 * x57)) + ((0x2 * ((uint64_t)x35 * x55)) + ((0x2 * ((uint64_t)x37 * x53)) + ((0x2 * ((uint64_t)x39 * x51)) + (0x2 * ((uint64_t)x38 * x49))))))))))))))))));
- uint64_t x92 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((uint64_t)x9 * x41))) + (0x11 * (((uint64_t)x11 * x74) + (((uint64_t)x13 * x75) + ((0x2 * ((uint64_t)x15 * x73)) + (((uint64_t)x17 * x71) + (((uint64_t)x19 * x69) + ((0x2 * ((uint64_t)x21 * x67)) + (((uint64_t)x23 * x65) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + ((0x2 * ((uint64_t)x31 * x57)) + (((uint64_t)x33 * x55) + (((uint64_t)x35 * x53) + ((0x2 * ((uint64_t)x37 * x51)) + (((uint64_t)x39 * x49) + ((uint64_t)x38 * x47))))))))))))))))));
- uint64_t x93 = ((((uint64_t)x5 * x43) + ((uint64_t)x7 * x41)) + (0x11 * ((0x2 * ((uint64_t)x9 * x74)) + (((uint64_t)x11 * x75) + ((0x2 * ((uint64_t)x13 * x73)) + ((0x2 * ((uint64_t)x15 * x71)) + (((uint64_t)x17 * x69) + ((0x2 * ((uint64_t)x19 * x67)) + ((0x2 * ((uint64_t)x21 * x65)) + (((uint64_t)x23 * x63) + ((0x2 * ((uint64_t)x25 * x61)) + (((uint64_t)x27 * x59) + ((0x2 * ((uint64_t)x29 * x57)) + ((0x2 * ((uint64_t)x31 * x55)) + (((uint64_t)x33 * x53) + ((0x2 * ((uint64_t)x35 * x51)) + ((0x2 * ((uint64_t)x37 * x49)) + (((uint64_t)x39 * x47) + (0x2 * ((uint64_t)x38 * x45))))))))))))))))))));
- uint64_t x94 = (((uint64_t)x5 * x41) + (0x11 * ((0x2 * ((uint64_t)x7 * x74)) + ((0x2 * ((uint64_t)x9 * x75)) + ((0x2 * ((uint64_t)x11 * x73)) + ((0x2 * ((uint64_t)x13 * x71)) + ((0x2 * ((uint64_t)x15 * x69)) + ((0x2 * ((uint64_t)x17 * x67)) + ((0x2 * ((uint64_t)x19 * x65)) + ((0x2 * ((uint64_t)x21 * x63)) + ((0x2 * ((uint64_t)x23 * x61)) + ((0x2 * ((uint64_t)x25 * x59)) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + ((0x2 * ((uint64_t)x31 * x53)) + ((0x2 * ((uint64_t)x33 * x51)) + ((0x2 * ((uint64_t)x35 * x49)) + ((0x2 * ((uint64_t)x37 * x47)) + ((0x2 * ((uint64_t)x39 * x45)) + (0x2 * ((uint64_t)x38 * x43)))))))))))))))))))));
- uint64_t x95 = (x94 >> 0x19);
- uint32_t x96 = ((uint32_t)x94 & 0x1ffffff);
- uint64_t x97 = (x95 + x93);
- uint64_t x98 = (x97 >> 0x19);
- uint32_t x99 = ((uint32_t)x97 & 0x1ffffff);
- uint64_t x100 = (x98 + x92);
- uint64_t x101 = (x100 >> 0x18);
- uint32_t x102 = ((uint32_t)x100 & 0xffffff);
- uint64_t x103 = (x101 + x91);
- uint64_t x104 = (x103 >> 0x19);
- uint32_t x105 = ((uint32_t)x103 & 0x1ffffff);
- uint64_t x106 = (x104 + x90);
- uint64_t x107 = (x106 >> 0x19);
- uint32_t x108 = ((uint32_t)x106 & 0x1ffffff);
- uint64_t x109 = (x107 + x89);
- uint64_t x110 = (x109 >> 0x18);
- uint32_t x111 = ((uint32_t)x109 & 0xffffff);
- uint64_t x112 = (x110 + x88);
- uint64_t x113 = (x112 >> 0x19);
- uint32_t x114 = ((uint32_t)x112 & 0x1ffffff);
- uint64_t x115 = (x113 + x87);
- uint64_t x116 = (x115 >> 0x19);
- uint32_t x117 = ((uint32_t)x115 & 0x1ffffff);
- uint64_t x118 = (x116 + x86);
- uint64_t x119 = (x118 >> 0x18);
- uint32_t x120 = ((uint32_t)x118 & 0xffffff);
- uint64_t x121 = (x119 + x85);
- uint64_t x122 = (x121 >> 0x19);
- uint32_t x123 = ((uint32_t)x121 & 0x1ffffff);
- uint64_t x124 = (x122 + x84);
- uint64_t x125 = (x124 >> 0x18);
- uint32_t x126 = ((uint32_t)x124 & 0xffffff);
- uint64_t x127 = (x125 + x83);
- uint64_t x128 = (x127 >> 0x19);
- uint32_t x129 = ((uint32_t)x127 & 0x1ffffff);
- uint64_t x130 = (x128 + x82);
- uint64_t x131 = (x130 >> 0x19);
- uint32_t x132 = ((uint32_t)x130 & 0x1ffffff);
- uint64_t x133 = (x131 + x81);
- uint64_t x134 = (x133 >> 0x18);
- uint32_t x135 = ((uint32_t)x133 & 0xffffff);
- uint64_t x136 = (x134 + x80);
- uint64_t x137 = (x136 >> 0x19);
- uint32_t x138 = ((uint32_t)x136 & 0x1ffffff);
- uint64_t x139 = (x137 + x79);
- uint64_t x140 = (x139 >> 0x19);
- uint32_t x141 = ((uint32_t)x139 & 0x1ffffff);
- uint64_t x142 = (x140 + x78);
- uint64_t x143 = (x142 >> 0x18);
- uint32_t x144 = ((uint32_t)x142 & 0xffffff);
- uint64_t x145 = (x143 + x77);
- uint64_t x146 = (x145 >> 0x19);
- uint32_t x147 = ((uint32_t)x145 & 0x1ffffff);
- uint64_t x148 = (x146 + x76);
- uint64_t x149 = (x148 >> 0x18);
- uint32_t x150 = ((uint32_t)x148 & 0xffffff);
- uint64_t x151 = (x96 + (0x11 * x149));
- uint32_t x152 = (uint32_t) (x151 >> 0x19);
- uint32_t x153 = ((uint32_t)x151 & 0x1ffffff);
- uint32_t x154 = (x152 + x99);
- uint32_t x155 = (x154 >> 0x19);
- uint32_t x156 = (x154 & 0x1ffffff);
- return (Return x150, Return x147, Return x144, Return x141, Return x138, Return x135, Return x132, Return x129, Return x126, Return x123, Return x120, Return x117, Return x114, Return x111, Return x108, Return x105, (x155 + x102), Return x156, Return x153))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e468m17_19limbs/femulDisplay.v b/src/Specific/solinas32_2e468m17_19limbs/femulDisplay.v
deleted file mode 100644
index 7ad7c42be..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e468m17_19limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e468m17_19limbs/fesquare.c b/src/Specific/solinas32_2e468m17_19limbs/fesquare.c
deleted file mode 100644
index 89a40e6c8..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/fesquare.c
+++ /dev/null
@@ -1,122 +0,0 @@
-static void fesquare(uint32_t out[19], const uint32_t in1[19]) {
- { const uint32_t x35 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x37 = (((uint64_t)x2 * x35) + (((uint64_t)x4 * x36) + ((0x2 * ((uint64_t)x6 * x34)) + (((uint64_t)x8 * x32) + (((uint64_t)x10 * x30) + ((0x2 * ((uint64_t)x12 * x28)) + (((uint64_t)x14 * x26) + (((uint64_t)x16 * x24) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + (((uint64_t)x24 * x16) + (((uint64_t)x26 * x14) + ((0x2 * ((uint64_t)x28 * x12)) + (((uint64_t)x30 * x10) + (((uint64_t)x32 * x8) + ((0x2 * ((uint64_t)x34 * x6)) + (((uint64_t)x36 * x4) + ((uint64_t)x35 * x2)))))))))))))))))));
- { uint64_t x38 = ((((uint64_t)x2 * x36) + ((0x2 * ((uint64_t)x4 * x34)) + ((0x2 * ((uint64_t)x6 * x32)) + (((uint64_t)x8 * x30) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + (((uint64_t)x14 * x24) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + (((uint64_t)x24 * x14) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + (((uint64_t)x30 * x8) + ((0x2 * ((uint64_t)x32 * x6)) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x36 * x2)))))))))))))))))) + (0x11 * (0x2 * ((uint64_t)x35 * x35))));
- { uint64_t x39 = ((((uint64_t)x2 * x34) + (((uint64_t)x4 * x32) + (((uint64_t)x6 * x30) + (((uint64_t)x8 * x28) + (((uint64_t)x10 * x26) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + ((0x2 * ((uint64_t)x18 * x18)) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + (((uint64_t)x26 * x10) + (((uint64_t)x28 * x8) + (((uint64_t)x30 * x6) + (((uint64_t)x32 * x4) + ((uint64_t)x34 * x2))))))))))))))))) + (0x11 * (((uint64_t)x36 * x35) + ((uint64_t)x35 * x36))));
- { uint64_t x40 = ((((uint64_t)x2 * x32) + (((uint64_t)x4 * x30) + ((0x2 * ((uint64_t)x6 * x28)) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + ((0x2 * ((uint64_t)x28 * x6)) + (((uint64_t)x30 * x4) + ((uint64_t)x32 * x2)))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x34 * x35)) + (((uint64_t)x36 * x36) + (0x2 * ((uint64_t)x35 * x34))))));
- { uint64_t x41 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + ((0x2 * ((uint64_t)x6 * x26)) + (((uint64_t)x8 * x24) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + (((uint64_t)x24 * x8) + ((0x2 * ((uint64_t)x26 * x6)) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x32 * x35)) + ((0x2 * ((uint64_t)x34 * x36)) + ((0x2 * ((uint64_t)x36 * x34)) + (0x2 * ((uint64_t)x35 * x32)))))));
- { uint64_t x42 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + ((0x2 * ((uint64_t)x12 * x18)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((0x2 * ((uint64_t)x18 * x12)) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x11 * (((uint64_t)x30 * x35) + (((uint64_t)x32 * x36) + ((0x2 * ((uint64_t)x34 * x34)) + (((uint64_t)x36 * x32) + ((uint64_t)x35 * x30)))))));
- { uint64_t x43 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x28 * x35)) + (((uint64_t)x30 * x36) + ((0x2 * ((uint64_t)x32 * x34)) + ((0x2 * ((uint64_t)x34 * x32)) + (((uint64_t)x36 * x30) + (0x2 * ((uint64_t)x35 * x28)))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x11 * ((0x2 * ((uint64_t)x26 * x35)) + ((0x2 * ((uint64_t)x28 * x36)) + ((0x2 * ((uint64_t)x30 * x34)) + ((0x2 * ((uint64_t)x32 * x32)) + ((0x2 * ((uint64_t)x34 * x30)) + ((0x2 * ((uint64_t)x36 * x28)) + (0x2 * ((uint64_t)x35 * x26))))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + ((0x2 * ((uint64_t)x6 * x18)) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((0x2 * ((uint64_t)x18 * x6)) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x11 * (((uint64_t)x24 * x35) + (((uint64_t)x26 * x36) + ((0x2 * ((uint64_t)x28 * x34)) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + ((0x2 * ((uint64_t)x34 * x28)) + (((uint64_t)x36 * x26) + ((uint64_t)x35 * x24))))))))));
- { uint64_t x46 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x11 * ((0x2 * ((uint64_t)x22 * x35)) + (((uint64_t)x24 * x36) + ((0x2 * ((uint64_t)x26 * x34)) + ((0x2 * ((uint64_t)x28 * x32)) + (((uint64_t)x30 * x30) + ((0x2 * ((uint64_t)x32 * x28)) + ((0x2 * ((uint64_t)x34 * x26)) + (((uint64_t)x36 * x24) + (0x2 * ((uint64_t)x35 * x22))))))))))));
- { uint64_t x47 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x11 * (((uint64_t)x20 * x35) + (((uint64_t)x22 * x36) + (((uint64_t)x24 * x34) + (((uint64_t)x26 * x32) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (((uint64_t)x32 * x26) + (((uint64_t)x34 * x24) + (((uint64_t)x36 * x22) + ((uint64_t)x35 * x20))))))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x11 * ((0x2 * ((uint64_t)x18 * x35)) + (((uint64_t)x20 * x36) + ((0x2 * ((uint64_t)x22 * x34)) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + ((0x2 * ((uint64_t)x28 * x28)) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + ((0x2 * ((uint64_t)x34 * x22)) + (((uint64_t)x36 * x20) + (0x2 * ((uint64_t)x35 * x18))))))))))))));
- { uint64_t x49 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x11 * ((0x2 * ((uint64_t)x16 * x35)) + ((0x2 * ((uint64_t)x18 * x36)) + ((0x2 * ((uint64_t)x20 * x34)) + ((0x2 * ((uint64_t)x22 * x32)) + (((uint64_t)x24 * x30) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + (((uint64_t)x30 * x24) + ((0x2 * ((uint64_t)x32 * x22)) + ((0x2 * ((uint64_t)x34 * x20)) + ((0x2 * ((uint64_t)x36 * x18)) + (0x2 * ((uint64_t)x35 * x16)))))))))))))));
- { uint64_t x50 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x11 * (((uint64_t)x14 * x35) + (((uint64_t)x16 * x36) + ((0x2 * ((uint64_t)x18 * x34)) + (((uint64_t)x20 * x32) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + (((uint64_t)x32 * x20) + ((0x2 * ((uint64_t)x34 * x18)) + (((uint64_t)x36 * x16) + ((uint64_t)x35 * x14)))))))))))))));
- { uint64_t x51 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint64_t)x12 * x35)) + (((uint64_t)x14 * x36) + ((0x2 * ((uint64_t)x16 * x34)) + ((0x2 * ((uint64_t)x18 * x32)) + (((uint64_t)x20 * x30) + ((0x2 * ((uint64_t)x22 * x28)) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + ((0x2 * ((uint64_t)x28 * x22)) + (((uint64_t)x30 * x20) + ((0x2 * ((uint64_t)x32 * x18)) + ((0x2 * ((uint64_t)x34 * x16)) + (((uint64_t)x36 * x14) + (0x2 * ((uint64_t)x35 * x12)))))))))))))))));
- { uint64_t x52 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x11 * ((0x2 * ((uint64_t)x10 * x35)) + ((0x2 * ((uint64_t)x12 * x36)) + ((0x2 * ((uint64_t)x14 * x34)) + ((0x2 * ((uint64_t)x16 * x32)) + ((0x2 * ((uint64_t)x18 * x30)) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + (((uint64_t)x24 * x24) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + ((0x2 * ((uint64_t)x30 * x18)) + ((0x2 * ((uint64_t)x32 * x16)) + ((0x2 * ((uint64_t)x34 * x14)) + ((0x2 * ((uint64_t)x36 * x12)) + (0x2 * ((uint64_t)x35 * x10))))))))))))))))));
- { uint64_t x53 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x11 * (((uint64_t)x8 * x35) + (((uint64_t)x10 * x36) + ((0x2 * ((uint64_t)x12 * x34)) + (((uint64_t)x14 * x32) + (((uint64_t)x16 * x30) + ((0x2 * ((uint64_t)x18 * x28)) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + ((0x2 * ((uint64_t)x28 * x18)) + (((uint64_t)x30 * x16) + (((uint64_t)x32 * x14) + ((0x2 * ((uint64_t)x34 * x12)) + (((uint64_t)x36 * x10) + ((uint64_t)x35 * x8))))))))))))))))));
- { uint64_t x54 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * ((0x2 * ((uint64_t)x6 * x35)) + (((uint64_t)x8 * x36) + ((0x2 * ((uint64_t)x10 * x34)) + ((0x2 * ((uint64_t)x12 * x32)) + (((uint64_t)x14 * x30) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + (((uint64_t)x30 * x14) + ((0x2 * ((uint64_t)x32 * x12)) + ((0x2 * ((uint64_t)x34 * x10)) + (((uint64_t)x36 * x8) + (0x2 * ((uint64_t)x35 * x6))))))))))))))))))));
- { uint64_t x55 = (((uint64_t)x2 * x2) + (0x11 * ((0x2 * ((uint64_t)x4 * x35)) + ((0x2 * ((uint64_t)x6 * x36)) + ((0x2 * ((uint64_t)x8 * x34)) + ((0x2 * ((uint64_t)x10 * x32)) + ((0x2 * ((uint64_t)x12 * x30)) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + ((0x2 * ((uint64_t)x18 * x24)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((0x2 * ((uint64_t)x24 * x18)) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + ((0x2 * ((uint64_t)x30 * x12)) + ((0x2 * ((uint64_t)x32 * x10)) + ((0x2 * ((uint64_t)x34 * x8)) + ((0x2 * ((uint64_t)x36 * x6)) + (0x2 * ((uint64_t)x35 * x4)))))))))))))))))))));
- { uint64_t x56 = (x55 >> 0x19);
- { uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- { uint64_t x58 = (x56 + x54);
- { uint64_t x59 = (x58 >> 0x19);
- { uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- { uint64_t x61 = (x59 + x53);
- { uint64_t x62 = (x61 >> 0x18);
- { uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- { uint64_t x64 = (x62 + x52);
- { uint64_t x65 = (x64 >> 0x19);
- { uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- { uint64_t x67 = (x65 + x51);
- { uint64_t x68 = (x67 >> 0x19);
- { uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- { uint64_t x70 = (x68 + x50);
- { uint64_t x71 = (x70 >> 0x18);
- { uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- { uint64_t x73 = (x71 + x49);
- { uint64_t x74 = (x73 >> 0x19);
- { uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- { uint64_t x76 = (x74 + x48);
- { uint64_t x77 = (x76 >> 0x19);
- { uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- { uint64_t x79 = (x77 + x47);
- { uint64_t x80 = (x79 >> 0x18);
- { uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- { uint64_t x82 = (x80 + x46);
- { uint64_t x83 = (x82 >> 0x19);
- { uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- { uint64_t x85 = (x83 + x45);
- { uint64_t x86 = (x85 >> 0x18);
- { uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- { uint64_t x88 = (x86 + x44);
- { uint64_t x89 = (x88 >> 0x19);
- { uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- { uint64_t x91 = (x89 + x43);
- { uint64_t x92 = (x91 >> 0x19);
- { uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- { uint64_t x94 = (x92 + x42);
- { uint64_t x95 = (x94 >> 0x18);
- { uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- { uint64_t x97 = (x95 + x41);
- { uint64_t x98 = (x97 >> 0x19);
- { uint32_t x99 = ((uint32_t)x97 & 0x1ffffff);
- { uint64_t x100 = (x98 + x40);
- { uint64_t x101 = (x100 >> 0x19);
- { uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- { uint64_t x103 = (x101 + x39);
- { uint64_t x104 = (x103 >> 0x18);
- { uint32_t x105 = ((uint32_t)x103 & 0xffffff);
- { uint64_t x106 = (x104 + x38);
- { uint64_t x107 = (x106 >> 0x19);
- { uint32_t x108 = ((uint32_t)x106 & 0x1ffffff);
- { uint64_t x109 = (x107 + x37);
- { uint64_t x110 = (x109 >> 0x18);
- { uint32_t x111 = ((uint32_t)x109 & 0xffffff);
- { uint64_t x112 = (x57 + (0x11 * x110));
- { uint32_t x113 = (uint32_t) (x112 >> 0x19);
- { uint32_t x114 = ((uint32_t)x112 & 0x1ffffff);
- { uint32_t x115 = (x113 + x60);
- { uint32_t x116 = (x115 >> 0x19);
- { uint32_t x117 = (x115 & 0x1ffffff);
- out[0] = x114;
- out[1] = x117;
- out[2] = (x116 + x63);
- out[3] = x66;
- out[4] = x69;
- out[5] = x72;
- out[6] = x75;
- out[7] = x78;
- out[8] = x81;
- out[9] = x84;
- out[10] = x87;
- out[11] = x90;
- out[12] = x93;
- out[13] = x96;
- out[14] = x99;
- out[15] = x102;
- out[16] = x105;
- out[17] = x108;
- out[18] = x111;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e468m17_19limbs/fesquare.v b/src/Specific/solinas32_2e468m17_19limbs/fesquare.v
deleted file mode 100644
index ec9f2c37e..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e468m17_19limbs.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_2e468m17_19limbs/fesquareDisplay.log b/src/Specific/solinas32_2e468m17_19limbs/fesquareDisplay.log
deleted file mode 100644
index 110f01e41..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,88 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x35, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x37 = (((uint64_t)x2 * x35) + (((uint64_t)x4 * x36) + ((0x2 * ((uint64_t)x6 * x34)) + (((uint64_t)x8 * x32) + (((uint64_t)x10 * x30) + ((0x2 * ((uint64_t)x12 * x28)) + (((uint64_t)x14 * x26) + (((uint64_t)x16 * x24) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + (((uint64_t)x24 * x16) + (((uint64_t)x26 * x14) + ((0x2 * ((uint64_t)x28 * x12)) + (((uint64_t)x30 * x10) + (((uint64_t)x32 * x8) + ((0x2 * ((uint64_t)x34 * x6)) + (((uint64_t)x36 * x4) + ((uint64_t)x35 * x2)))))))))))))))))));
- uint64_t x38 = ((((uint64_t)x2 * x36) + ((0x2 * ((uint64_t)x4 * x34)) + ((0x2 * ((uint64_t)x6 * x32)) + (((uint64_t)x8 * x30) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + (((uint64_t)x14 * x24) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + (((uint64_t)x24 * x14) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + (((uint64_t)x30 * x8) + ((0x2 * ((uint64_t)x32 * x6)) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x36 * x2)))))))))))))))))) + (0x11 * (0x2 * ((uint64_t)x35 * x35))));
- uint64_t x39 = ((((uint64_t)x2 * x34) + (((uint64_t)x4 * x32) + (((uint64_t)x6 * x30) + (((uint64_t)x8 * x28) + (((uint64_t)x10 * x26) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + ((0x2 * ((uint64_t)x18 * x18)) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + (((uint64_t)x26 * x10) + (((uint64_t)x28 * x8) + (((uint64_t)x30 * x6) + (((uint64_t)x32 * x4) + ((uint64_t)x34 * x2))))))))))))))))) + (0x11 * (((uint64_t)x36 * x35) + ((uint64_t)x35 * x36))));
- uint64_t x40 = ((((uint64_t)x2 * x32) + (((uint64_t)x4 * x30) + ((0x2 * ((uint64_t)x6 * x28)) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + ((0x2 * ((uint64_t)x28 * x6)) + (((uint64_t)x30 * x4) + ((uint64_t)x32 * x2)))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x34 * x35)) + (((uint64_t)x36 * x36) + (0x2 * ((uint64_t)x35 * x34))))));
- uint64_t x41 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + ((0x2 * ((uint64_t)x6 * x26)) + (((uint64_t)x8 * x24) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + (((uint64_t)x24 * x8) + ((0x2 * ((uint64_t)x26 * x6)) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x32 * x35)) + ((0x2 * ((uint64_t)x34 * x36)) + ((0x2 * ((uint64_t)x36 * x34)) + (0x2 * ((uint64_t)x35 * x32)))))));
- uint64_t x42 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + ((0x2 * ((uint64_t)x12 * x18)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((0x2 * ((uint64_t)x18 * x12)) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x11 * (((uint64_t)x30 * x35) + (((uint64_t)x32 * x36) + ((0x2 * ((uint64_t)x34 * x34)) + (((uint64_t)x36 * x32) + ((uint64_t)x35 * x30)))))));
- uint64_t x43 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x28 * x35)) + (((uint64_t)x30 * x36) + ((0x2 * ((uint64_t)x32 * x34)) + ((0x2 * ((uint64_t)x34 * x32)) + (((uint64_t)x36 * x30) + (0x2 * ((uint64_t)x35 * x28)))))))));
- uint64_t x44 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x11 * ((0x2 * ((uint64_t)x26 * x35)) + ((0x2 * ((uint64_t)x28 * x36)) + ((0x2 * ((uint64_t)x30 * x34)) + ((0x2 * ((uint64_t)x32 * x32)) + ((0x2 * ((uint64_t)x34 * x30)) + ((0x2 * ((uint64_t)x36 * x28)) + (0x2 * ((uint64_t)x35 * x26))))))))));
- uint64_t x45 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + ((0x2 * ((uint64_t)x6 * x18)) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + ((0x2 * ((uint64_t)x18 * x6)) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x11 * (((uint64_t)x24 * x35) + (((uint64_t)x26 * x36) + ((0x2 * ((uint64_t)x28 * x34)) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + ((0x2 * ((uint64_t)x34 * x28)) + (((uint64_t)x36 * x26) + ((uint64_t)x35 * x24))))))))));
- uint64_t x46 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x11 * ((0x2 * ((uint64_t)x22 * x35)) + (((uint64_t)x24 * x36) + ((0x2 * ((uint64_t)x26 * x34)) + ((0x2 * ((uint64_t)x28 * x32)) + (((uint64_t)x30 * x30) + ((0x2 * ((uint64_t)x32 * x28)) + ((0x2 * ((uint64_t)x34 * x26)) + (((uint64_t)x36 * x24) + (0x2 * ((uint64_t)x35 * x22))))))))))));
- uint64_t x47 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x11 * (((uint64_t)x20 * x35) + (((uint64_t)x22 * x36) + (((uint64_t)x24 * x34) + (((uint64_t)x26 * x32) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (((uint64_t)x32 * x26) + (((uint64_t)x34 * x24) + (((uint64_t)x36 * x22) + ((uint64_t)x35 * x20))))))))))));
- uint64_t x48 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x11 * ((0x2 * ((uint64_t)x18 * x35)) + (((uint64_t)x20 * x36) + ((0x2 * ((uint64_t)x22 * x34)) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + ((0x2 * ((uint64_t)x28 * x28)) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + ((0x2 * ((uint64_t)x34 * x22)) + (((uint64_t)x36 * x20) + (0x2 * ((uint64_t)x35 * x18))))))))))))));
- uint64_t x49 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x11 * ((0x2 * ((uint64_t)x16 * x35)) + ((0x2 * ((uint64_t)x18 * x36)) + ((0x2 * ((uint64_t)x20 * x34)) + ((0x2 * ((uint64_t)x22 * x32)) + (((uint64_t)x24 * x30) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + (((uint64_t)x30 * x24) + ((0x2 * ((uint64_t)x32 * x22)) + ((0x2 * ((uint64_t)x34 * x20)) + ((0x2 * ((uint64_t)x36 * x18)) + (0x2 * ((uint64_t)x35 * x16)))))))))))))));
- uint64_t x50 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x11 * (((uint64_t)x14 * x35) + (((uint64_t)x16 * x36) + ((0x2 * ((uint64_t)x18 * x34)) + (((uint64_t)x20 * x32) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + (((uint64_t)x32 * x20) + ((0x2 * ((uint64_t)x34 * x18)) + (((uint64_t)x36 * x16) + ((uint64_t)x35 * x14)))))))))))))));
- uint64_t x51 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint64_t)x12 * x35)) + (((uint64_t)x14 * x36) + ((0x2 * ((uint64_t)x16 * x34)) + ((0x2 * ((uint64_t)x18 * x32)) + (((uint64_t)x20 * x30) + ((0x2 * ((uint64_t)x22 * x28)) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + ((0x2 * ((uint64_t)x28 * x22)) + (((uint64_t)x30 * x20) + ((0x2 * ((uint64_t)x32 * x18)) + ((0x2 * ((uint64_t)x34 * x16)) + (((uint64_t)x36 * x14) + (0x2 * ((uint64_t)x35 * x12)))))))))))))))));
- uint64_t x52 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x11 * ((0x2 * ((uint64_t)x10 * x35)) + ((0x2 * ((uint64_t)x12 * x36)) + ((0x2 * ((uint64_t)x14 * x34)) + ((0x2 * ((uint64_t)x16 * x32)) + ((0x2 * ((uint64_t)x18 * x30)) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + (((uint64_t)x24 * x24) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + ((0x2 * ((uint64_t)x30 * x18)) + ((0x2 * ((uint64_t)x32 * x16)) + ((0x2 * ((uint64_t)x34 * x14)) + ((0x2 * ((uint64_t)x36 * x12)) + (0x2 * ((uint64_t)x35 * x10))))))))))))))))));
- uint64_t x53 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x11 * (((uint64_t)x8 * x35) + (((uint64_t)x10 * x36) + ((0x2 * ((uint64_t)x12 * x34)) + (((uint64_t)x14 * x32) + (((uint64_t)x16 * x30) + ((0x2 * ((uint64_t)x18 * x28)) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + ((0x2 * ((uint64_t)x28 * x18)) + (((uint64_t)x30 * x16) + (((uint64_t)x32 * x14) + ((0x2 * ((uint64_t)x34 * x12)) + (((uint64_t)x36 * x10) + ((uint64_t)x35 * x8))))))))))))))))));
- uint64_t x54 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * ((0x2 * ((uint64_t)x6 * x35)) + (((uint64_t)x8 * x36) + ((0x2 * ((uint64_t)x10 * x34)) + ((0x2 * ((uint64_t)x12 * x32)) + (((uint64_t)x14 * x30) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + (((uint64_t)x30 * x14) + ((0x2 * ((uint64_t)x32 * x12)) + ((0x2 * ((uint64_t)x34 * x10)) + (((uint64_t)x36 * x8) + (0x2 * ((uint64_t)x35 * x6))))))))))))))))))));
- uint64_t x55 = (((uint64_t)x2 * x2) + (0x11 * ((0x2 * ((uint64_t)x4 * x35)) + ((0x2 * ((uint64_t)x6 * x36)) + ((0x2 * ((uint64_t)x8 * x34)) + ((0x2 * ((uint64_t)x10 * x32)) + ((0x2 * ((uint64_t)x12 * x30)) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + ((0x2 * ((uint64_t)x18 * x24)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((0x2 * ((uint64_t)x24 * x18)) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + ((0x2 * ((uint64_t)x30 * x12)) + ((0x2 * ((uint64_t)x32 * x10)) + ((0x2 * ((uint64_t)x34 * x8)) + ((0x2 * ((uint64_t)x36 * x6)) + (0x2 * ((uint64_t)x35 * x4)))))))))))))))))))));
- uint64_t x56 = (x55 >> 0x19);
- uint32_t x57 = ((uint32_t)x55 & 0x1ffffff);
- uint64_t x58 = (x56 + x54);
- uint64_t x59 = (x58 >> 0x19);
- uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- uint64_t x61 = (x59 + x53);
- uint64_t x62 = (x61 >> 0x18);
- uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- uint64_t x64 = (x62 + x52);
- uint64_t x65 = (x64 >> 0x19);
- uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- uint64_t x67 = (x65 + x51);
- uint64_t x68 = (x67 >> 0x19);
- uint32_t x69 = ((uint32_t)x67 & 0x1ffffff);
- uint64_t x70 = (x68 + x50);
- uint64_t x71 = (x70 >> 0x18);
- uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- uint64_t x73 = (x71 + x49);
- uint64_t x74 = (x73 >> 0x19);
- uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- uint64_t x76 = (x74 + x48);
- uint64_t x77 = (x76 >> 0x19);
- uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- uint64_t x79 = (x77 + x47);
- uint64_t x80 = (x79 >> 0x18);
- uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- uint64_t x82 = (x80 + x46);
- uint64_t x83 = (x82 >> 0x19);
- uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- uint64_t x85 = (x83 + x45);
- uint64_t x86 = (x85 >> 0x18);
- uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- uint64_t x88 = (x86 + x44);
- uint64_t x89 = (x88 >> 0x19);
- uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- uint64_t x91 = (x89 + x43);
- uint64_t x92 = (x91 >> 0x19);
- uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- uint64_t x94 = (x92 + x42);
- uint64_t x95 = (x94 >> 0x18);
- uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- uint64_t x97 = (x95 + x41);
- uint64_t x98 = (x97 >> 0x19);
- uint32_t x99 = ((uint32_t)x97 & 0x1ffffff);
- uint64_t x100 = (x98 + x40);
- uint64_t x101 = (x100 >> 0x19);
- uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- uint64_t x103 = (x101 + x39);
- uint64_t x104 = (x103 >> 0x18);
- uint32_t x105 = ((uint32_t)x103 & 0xffffff);
- uint64_t x106 = (x104 + x38);
- uint64_t x107 = (x106 >> 0x19);
- uint32_t x108 = ((uint32_t)x106 & 0x1ffffff);
- uint64_t x109 = (x107 + x37);
- uint64_t x110 = (x109 >> 0x18);
- uint32_t x111 = ((uint32_t)x109 & 0xffffff);
- uint64_t x112 = (x57 + (0x11 * x110));
- uint32_t x113 = (uint32_t) (x112 >> 0x19);
- uint32_t x114 = ((uint32_t)x112 & 0x1ffffff);
- uint32_t x115 = (x113 + x60);
- uint32_t x116 = (x115 >> 0x19);
- uint32_t x117 = (x115 & 0x1ffffff);
- return (Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, (x116 + x63), Return x117, Return x114))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e468m17_19limbs/fesquareDisplay.v b/src/Specific/solinas32_2e468m17_19limbs/fesquareDisplay.v
deleted file mode 100644
index 13aa93c57..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e468m17_19limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e468m17_19limbs/fesub.c b/src/Specific/solinas32_2e468m17_19limbs/fesub.c
deleted file mode 100644
index 716f62fd9..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/fesub.c
+++ /dev/null
@@ -1,60 +0,0 @@
-static void fesub(uint32_t out[19], const uint32_t in1[19], const uint32_t in2[19]) {
- { const uint32_t x38 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x74 = in2[18];
- { const uint32_t x75 = in2[17];
- { const uint32_t x73 = in2[16];
- { const uint32_t x71 = in2[15];
- { const uint32_t x69 = in2[14];
- { const uint32_t x67 = in2[13];
- { const uint32_t x65 = in2[12];
- { const uint32_t x63 = in2[11];
- { const uint32_t x61 = in2[10];
- { const uint32_t x59 = in2[9];
- { const uint32_t x57 = in2[8];
- { const uint32_t x55 = in2[7];
- { const uint32_t x53 = in2[6];
- { const uint32_t x51 = in2[5];
- { const uint32_t x49 = in2[4];
- { const uint32_t x47 = in2[3];
- { const uint32_t x45 = in2[2];
- { const uint32_t x43 = in2[1];
- { const uint32_t x41 = in2[0];
- out[0] = ((0x3ffffde + x5) - x41);
- out[1] = ((0x3fffffe + x7) - x43);
- out[2] = ((0x1fffffe + x9) - x45);
- out[3] = ((0x3fffffe + x11) - x47);
- out[4] = ((0x3fffffe + x13) - x49);
- out[5] = ((0x1fffffe + x15) - x51);
- out[6] = ((0x3fffffe + x17) - x53);
- out[7] = ((0x3fffffe + x19) - x55);
- out[8] = ((0x1fffffe + x21) - x57);
- out[9] = ((0x3fffffe + x23) - x59);
- out[10] = ((0x1fffffe + x25) - x61);
- out[11] = ((0x3fffffe + x27) - x63);
- out[12] = ((0x3fffffe + x29) - x65);
- out[13] = ((0x1fffffe + x31) - x67);
- out[14] = ((0x3fffffe + x33) - x69);
- out[15] = ((0x3fffffe + x35) - x71);
- out[16] = ((0x1fffffe + x37) - x73);
- out[17] = ((0x3fffffe + x39) - x75);
- out[18] = ((0x1fffffe + x38) - x74);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e468m17_19limbs/fesub.v b/src/Specific/solinas32_2e468m17_19limbs/fesub.v
deleted file mode 100644
index 3a515d44c..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e468m17_19limbs.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_2e468m17_19limbs/fesubDisplay.log b/src/Specific/solinas32_2e468m17_19limbs/fesubDisplay.log
deleted file mode 100644
index 24e35ba8f..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x38, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x74, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41))%core,
- (((0x1fffffe + x38) - x74), ((0x3fffffe + x39) - x75), ((0x1fffffe + x37) - x73), ((0x3fffffe + x35) - x71), ((0x3fffffe + x33) - x69), ((0x1fffffe + x31) - x67), ((0x3fffffe + x29) - x65), ((0x3fffffe + x27) - x63), ((0x1fffffe + x25) - x61), ((0x3fffffe + x23) - x59), ((0x1fffffe + x21) - x57), ((0x3fffffe + x19) - x55), ((0x3fffffe + x17) - x53), ((0x1fffffe + x15) - x51), ((0x3fffffe + x13) - x49), ((0x3fffffe + x11) - x47), ((0x1fffffe + x9) - x45), ((0x3fffffe + x7) - x43), ((0x3ffffde + x5) - x41)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e468m17_19limbs/fesubDisplay.v b/src/Specific/solinas32_2e468m17_19limbs/fesubDisplay.v
deleted file mode 100644
index ca0803865..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e468m17_19limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e468m17_19limbs/freeze.c b/src/Specific/solinas32_2e468m17_19limbs/freeze.c
deleted file mode 100644
index 3a728a145..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/freeze.c
+++ /dev/null
@@ -1,99 +0,0 @@
-static void freeze(uint32_t out[19], const uint32_t in1[19]) {
- { const uint32_t x35 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffef);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x4, 0x1ffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x6, 0xffffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x8, 0x1ffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x10, 0x1ffffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x12, 0xffffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x14, 0x1ffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x16, 0x1ffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x18, 0xffffff);
- { uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x20, 0x1ffffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x22, 0xffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x24, 0x1ffffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x26, 0x1ffffff);
- { uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x28, 0xffffff);
- { uint32_t x80, uint8_t x81 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x30, 0x1ffffff);
- { uint32_t x83, uint8_t x84 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x32, 0x1ffffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x34, 0xffffff);
- { uint32_t x89, uint8_t x90 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x36, 0x1ffffff);
- { uint32_t x92, uint8_t x93 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x35, 0xffffff);
- { uint32_t x94 = cmovznz32(x93, 0x0, 0xffffffff);
- { uint32_t x95 = (x94 & 0x1ffffef);
- { uint32_t x97, uint8_t x98 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x38, Return x95);
- { uint32_t x99 = (x94 & 0x1ffffff);
- { uint32_t x101, uint8_t x102 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x98, Return x41, Return x99);
- { uint32_t x103 = (x94 & 0xffffff);
- { uint32_t x105, uint8_t x106 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x102, Return x44, Return x103);
- { uint32_t x107 = (x94 & 0x1ffffff);
- { uint32_t x109, uint8_t x110 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x106, Return x47, Return x107);
- { uint32_t x111 = (x94 & 0x1ffffff);
- { uint32_t x113, uint8_t x114 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x110, Return x50, Return x111);
- { uint32_t x115 = (x94 & 0xffffff);
- { uint32_t x117, uint8_t x118 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x114, Return x53, Return x115);
- { uint32_t x119 = (x94 & 0x1ffffff);
- { uint32_t x121, uint8_t x122 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x118, Return x56, Return x119);
- { uint32_t x123 = (x94 & 0x1ffffff);
- { uint32_t x125, uint8_t x126 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x122, Return x59, Return x123);
- { uint32_t x127 = (x94 & 0xffffff);
- { uint32_t x129, uint8_t x130 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x126, Return x62, Return x127);
- { uint32_t x131 = (x94 & 0x1ffffff);
- { uint32_t x133, uint8_t x134 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x130, Return x65, Return x131);
- { uint32_t x135 = (x94 & 0xffffff);
- { uint32_t x137, uint8_t x138 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x134, Return x68, Return x135);
- { uint32_t x139 = (x94 & 0x1ffffff);
- { uint32_t x141, uint8_t x142 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x138, Return x71, Return x139);
- { uint32_t x143 = (x94 & 0x1ffffff);
- { uint32_t x145, uint8_t x146 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x142, Return x74, Return x143);
- { uint32_t x147 = (x94 & 0xffffff);
- { uint32_t x149, uint8_t x150 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x146, Return x77, Return x147);
- { uint32_t x151 = (x94 & 0x1ffffff);
- { uint32_t x153, uint8_t x154 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x150, Return x80, Return x151);
- { uint32_t x155 = (x94 & 0x1ffffff);
- { uint32_t x157, uint8_t x158 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x154, Return x83, Return x155);
- { uint32_t x159 = (x94 & 0xffffff);
- { uint32_t x161, uint8_t x162 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x158, Return x86, Return x159);
- { uint32_t x163 = (x94 & 0x1ffffff);
- { uint32_t x165, uint8_t x166 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x162, Return x89, Return x163);
- { uint32_t x167 = (x94 & 0xffffff);
- { uint32_t x169, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x166, Return x92, Return x167);
- out[0] = x97;
- out[1] = x101;
- out[2] = x105;
- out[3] = x109;
- out[4] = x113;
- out[5] = x117;
- out[6] = x121;
- out[7] = x125;
- out[8] = x129;
- out[9] = x133;
- out[10] = x137;
- out[11] = x141;
- out[12] = x145;
- out[13] = x149;
- out[14] = x153;
- out[15] = x157;
- out[16] = x161;
- out[17] = x165;
- out[18] = x169;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e468m17_19limbs/freeze.v b/src/Specific/solinas32_2e468m17_19limbs/freeze.v
deleted file mode 100644
index fb4f849ed..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e468m17_19limbs.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_2e468m17_19limbs/freezeDisplay.log b/src/Specific/solinas32_2e468m17_19limbs/freezeDisplay.log
deleted file mode 100644
index a5f3c7bba..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/freezeDisplay.log
+++ /dev/null
@@ -1,65 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x35, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffef);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x4, 0x1ffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x6, 0xffffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x8, 0x1ffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x10, 0x1ffffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x12, 0xffffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x14, 0x1ffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x16, 0x1ffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x18, 0xffffff);
- uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x20, 0x1ffffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x22, 0xffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x24, 0x1ffffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x26, 0x1ffffff);
- uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x28, 0xffffff);
- uint32_t x80, uint8_t x81 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x30, 0x1ffffff);
- uint32_t x83, uint8_t x84 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x32, 0x1ffffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x34, 0xffffff);
- uint32_t x89, uint8_t x90 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x36, 0x1ffffff);
- uint32_t x92, uint8_t x93 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x35, 0xffffff);
- uint32_t x94 = cmovznz32(x93, 0x0, 0xffffffff);
- uint32_t x95 = (x94 & 0x1ffffef);
- uint32_t x97, uint8_t x98 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x38, Return x95);
- uint32_t x99 = (x94 & 0x1ffffff);
- uint32_t x101, uint8_t x102 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x98, Return x41, Return x99);
- uint32_t x103 = (x94 & 0xffffff);
- uint32_t x105, uint8_t x106 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x102, Return x44, Return x103);
- uint32_t x107 = (x94 & 0x1ffffff);
- uint32_t x109, uint8_t x110 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x106, Return x47, Return x107);
- uint32_t x111 = (x94 & 0x1ffffff);
- uint32_t x113, uint8_t x114 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x110, Return x50, Return x111);
- uint32_t x115 = (x94 & 0xffffff);
- uint32_t x117, uint8_t x118 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x114, Return x53, Return x115);
- uint32_t x119 = (x94 & 0x1ffffff);
- uint32_t x121, uint8_t x122 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x118, Return x56, Return x119);
- uint32_t x123 = (x94 & 0x1ffffff);
- uint32_t x125, uint8_t x126 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x122, Return x59, Return x123);
- uint32_t x127 = (x94 & 0xffffff);
- uint32_t x129, uint8_t x130 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x126, Return x62, Return x127);
- uint32_t x131 = (x94 & 0x1ffffff);
- uint32_t x133, uint8_t x134 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x130, Return x65, Return x131);
- uint32_t x135 = (x94 & 0xffffff);
- uint32_t x137, uint8_t x138 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x134, Return x68, Return x135);
- uint32_t x139 = (x94 & 0x1ffffff);
- uint32_t x141, uint8_t x142 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x138, Return x71, Return x139);
- uint32_t x143 = (x94 & 0x1ffffff);
- uint32_t x145, uint8_t x146 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x142, Return x74, Return x143);
- uint32_t x147 = (x94 & 0xffffff);
- uint32_t x149, uint8_t x150 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x146, Return x77, Return x147);
- uint32_t x151 = (x94 & 0x1ffffff);
- uint32_t x153, uint8_t x154 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x150, Return x80, Return x151);
- uint32_t x155 = (x94 & 0x1ffffff);
- uint32_t x157, uint8_t x158 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x154, Return x83, Return x155);
- uint32_t x159 = (x94 & 0xffffff);
- uint32_t x161, uint8_t x162 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x158, Return x86, Return x159);
- uint32_t x163 = (x94 & 0x1ffffff);
- uint32_t x165, uint8_t x166 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x162, Return x89, Return x163);
- uint32_t x167 = (x94 & 0xffffff);
- uint32_t x169, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x166, Return x92, Return x167);
- (Return x169, Return x165, Return x161, Return x157, Return x153, Return x149, Return x145, Return x141, Return x137, Return x133, Return x129, Return x125, Return x121, Return x117, Return x113, Return x109, Return x105, Return x101, Return x97))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e468m17_19limbs/freezeDisplay.v b/src/Specific/solinas32_2e468m17_19limbs/freezeDisplay.v
deleted file mode 100644
index 887dc0d20..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e468m17_19limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e468m17_19limbs/py_interpreter.sh b/src/Specific/solinas32_2e468m17_19limbs/py_interpreter.sh
deleted file mode 100755
index 40894c774..000000000
--- a/src/Specific/solinas32_2e468m17_19limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**468 - 17' -Dmodulus_bytes='24 + 12/19' -Da24='121665'
diff --git a/src/Specific/solinas32_2e480m2e240m1_18limbs/CurveParameters.v b/src/Specific/solinas32_2e480m2e240m1_18limbs/CurveParameters.v
deleted file mode 100644
index a3c18bc6a..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^480 - 2^240 - 1
-Base: 26 + 2/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 18%nat;
- base := 26 + 2/3;
- bitwidth := 32;
- s := 2^480;
- c := [(1, 1); (2^240, 1)];
- carry_chains := Some [[8; 17]; [9; 0; 10; 1; 11; 2; 12; 3; 13; 4; 14; 5; 15; 6; 16; 7; 17; 8]; [9; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- 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_2e480m2e240m1_18limbs/Synthesis.v b/src/Specific/solinas32_2e480m2e240m1_18limbs/Synthesis.v
deleted file mode 100644
index 34431311e..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_18limbs.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_2e480m2e240m1_18limbs/compiler.sh b/src/Specific/solinas32_2e480m2e240m1_18limbs/compiler.sh
deleted file mode 100755
index 8c5cdb550..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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,27,26,27,27,26,27,27,26,27,27,26,27,27,26,27,27,26}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='60' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1' "$@"
diff --git a/src/Specific/solinas32_2e480m2e240m1_18limbs/compilerxx.sh b/src/Specific/solinas32_2e480m2e240m1_18limbs/compilerxx.sh
deleted file mode 100755
index 09009b252..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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,27,26,27,27,26,27,27,26,27,27,26,27,27,26,27,27,26}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='60' -Dmodulus_limbs='18' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1' "$@"
diff --git a/src/Specific/solinas32_2e480m2e240m1_18limbs/feadd.c b/src/Specific/solinas32_2e480m2e240m1_18limbs/feadd.c
deleted file mode 100644
index 7b8380410..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/feadd.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void feadd(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- out[0] = (x5 + x39);
- out[1] = (x7 + x41);
- out[2] = (x9 + x43);
- out[3] = (x11 + x45);
- out[4] = (x13 + x47);
- out[5] = (x15 + x49);
- out[6] = (x17 + x51);
- out[7] = (x19 + x53);
- out[8] = (x21 + x55);
- out[9] = (x23 + x57);
- out[10] = (x25 + x59);
- out[11] = (x27 + x61);
- out[12] = (x29 + x63);
- out[13] = (x31 + x65);
- out[14] = (x33 + x67);
- out[15] = (x35 + x69);
- out[16] = (x37 + x71);
- out[17] = (x36 + x70);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e480m2e240m1_18limbs/feadd.v b/src/Specific/solinas32_2e480m2e240m1_18limbs/feadd.v
deleted file mode 100644
index c6104511c..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_18limbs.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_2e480m2e240m1_18limbs/feaddDisplay.log b/src/Specific/solinas32_2e480m2e240m1_18limbs/feaddDisplay.log
deleted file mode 100644
index 5e9c243f4..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- ((x36 + x70), (x37 + x71), (x35 + x69), (x33 + x67), (x31 + x65), (x29 + x63), (x27 + x61), (x25 + x59), (x23 + x57), (x21 + x55), (x19 + x53), (x17 + x51), (x15 + x49), (x13 + x47), (x11 + x45), (x9 + x43), (x7 + x41), (x5 + x39)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e480m2e240m1_18limbs/feaddDisplay.v b/src/Specific/solinas32_2e480m2e240m1_18limbs/feaddDisplay.v
deleted file mode 100644
index 5be19f5a9..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_18limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e480m2e240m1_18limbs/fecarry.v b/src/Specific/solinas32_2e480m2e240m1_18limbs/fecarry.v
deleted file mode 100644
index 4a9c8b9c5..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_18limbs.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_2e480m2e240m1_18limbs/fecarryDisplay.v b/src/Specific/solinas32_2e480m2e240m1_18limbs/fecarryDisplay.v
deleted file mode 100644
index 0a7e80af2..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_18limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e480m2e240m1_18limbs/femul.c b/src/Specific/solinas32_2e480m2e240m1_18limbs/femul.c
deleted file mode 100644
index 9ac9e2e54..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/femul.c
+++ /dev/null
@@ -1,161 +0,0 @@
-static void femul(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- { uint64_t x72 = ((0x2 * ((uint64_t)(x21 + x36) * (x55 + x70))) - (0x2 * ((uint64_t)x21 * x55)));
- { uint64_t x73 = (((0x2 * ((uint64_t)(x19 + x37) * (x55 + x70))) + (0x2 * ((uint64_t)(x21 + x36) * (x53 + x71)))) - ((0x2 * ((uint64_t)x19 * x55)) + (0x2 * ((uint64_t)x21 * x53))));
- { uint64_t x74 = ((((uint64_t)(x17 + x35) * (x55 + x70)) + (((uint64_t)(x19 + x37) * (x53 + x71)) + ((uint64_t)(x21 + x36) * (x51 + x69)))) - (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + ((uint64_t)x21 * x51))));
- { uint64_t x75 = (((0x2 * ((uint64_t)(x15 + x33) * (x55 + x70))) + (((uint64_t)(x17 + x35) * (x53 + x71)) + (((uint64_t)(x19 + x37) * (x51 + x69)) + (0x2 * ((uint64_t)(x21 + x36) * (x49 + x67)))))) - ((0x2 * ((uint64_t)x15 * x55)) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (0x2 * ((uint64_t)x21 * x49))))));
- { uint64_t x76 = (((0x2 * ((uint64_t)(x13 + x31) * (x55 + x70))) + ((0x2 * ((uint64_t)(x15 + x33) * (x53 + x71))) + (((uint64_t)(x17 + x35) * (x51 + x69)) + ((0x2 * ((uint64_t)(x19 + x37) * (x49 + x67))) + (0x2 * ((uint64_t)(x21 + x36) * (x47 + x65))))))) - ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + (((uint64_t)x17 * x51) + ((0x2 * ((uint64_t)x19 * x49)) + (0x2 * ((uint64_t)x21 * x47)))))));
- { uint64_t x77 = ((((uint64_t)(x11 + x29) * (x55 + x70)) + (((uint64_t)(x13 + x31) * (x53 + x71)) + (((uint64_t)(x15 + x33) * (x51 + x69)) + (((uint64_t)(x17 + x35) * (x49 + x67)) + (((uint64_t)(x19 + x37) * (x47 + x65)) + ((uint64_t)(x21 + x36) * (x45 + x63))))))) - (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + ((uint64_t)x21 * x45)))))));
- { uint64_t x78 = (((0x2 * ((uint64_t)(x9 + x27) * (x55 + x70))) + (((uint64_t)(x11 + x29) * (x53 + x71)) + (((uint64_t)(x13 + x31) * (x51 + x69)) + ((0x2 * ((uint64_t)(x15 + x33) * (x49 + x67))) + (((uint64_t)(x17 + x35) * (x47 + x65)) + (((uint64_t)(x19 + x37) * (x45 + x63)) + (0x2 * ((uint64_t)(x21 + x36) * (x43 + x61))))))))) - ((0x2 * ((uint64_t)x9 * x55)) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + ((0x2 * ((uint64_t)x15 * x49)) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (0x2 * ((uint64_t)x21 * x43)))))))));
- { uint64_t x79 = (((0x2 * ((uint64_t)(x7 + x25) * (x55 + x70))) + ((0x2 * ((uint64_t)(x9 + x27) * (x53 + x71))) + (((uint64_t)(x11 + x29) * (x51 + x69)) + ((0x2 * ((uint64_t)(x13 + x31) * (x49 + x67))) + ((0x2 * ((uint64_t)(x15 + x33) * (x47 + x65))) + (((uint64_t)(x17 + x35) * (x45 + x63)) + ((0x2 * ((uint64_t)(x19 + x37) * (x43 + x61))) + (0x2 * ((uint64_t)(x21 + x36) * (x41 + x59)))))))))) - ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + (((uint64_t)x17 * x45) + ((0x2 * ((uint64_t)x19 * x43)) + (0x2 * ((uint64_t)x21 * x41))))))))));
- { uint64_t x80 = ((((uint64_t)(x5 + x23) * (x55 + x70)) + (((uint64_t)(x7 + x25) * (x53 + x71)) + (((uint64_t)(x9 + x27) * (x51 + x69)) + (((uint64_t)(x11 + x29) * (x49 + x67)) + (((uint64_t)(x13 + x31) * (x47 + x65)) + (((uint64_t)(x15 + x33) * (x45 + x63)) + (((uint64_t)(x17 + x35) * (x43 + x61)) + (((uint64_t)(x19 + x37) * (x41 + x59)) + ((uint64_t)(x21 + x36) * (x39 + x57)))))))))) - (((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + ((uint64_t)x21 * x39))))))))));
- { uint64_t x81 = ((((uint64_t)(x5 + x23) * (x53 + x71)) + (((uint64_t)(x7 + x25) * (x51 + x69)) + ((0x2 * ((uint64_t)(x9 + x27) * (x49 + x67))) + (((uint64_t)(x11 + x29) * (x47 + x65)) + (((uint64_t)(x13 + x31) * (x45 + x63)) + ((0x2 * ((uint64_t)(x15 + x33) * (x43 + x61))) + (((uint64_t)(x17 + x35) * (x41 + x59)) + ((uint64_t)(x19 + x37) * (x39 + x57))))))))) - (((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + ((0x2 * ((uint64_t)x15 * x43)) + (((uint64_t)x17 * x41) + ((uint64_t)x19 * x39)))))))));
- { uint64_t x82 = ((((uint64_t)(x5 + x23) * (x51 + x69)) + ((0x2 * ((uint64_t)(x7 + x25) * (x49 + x67))) + ((0x2 * ((uint64_t)(x9 + x27) * (x47 + x65))) + (((uint64_t)(x11 + x29) * (x45 + x63)) + ((0x2 * ((uint64_t)(x13 + x31) * (x43 + x61))) + ((0x2 * ((uint64_t)(x15 + x33) * (x41 + x59))) + ((uint64_t)(x17 + x35) * (x39 + x57)))))))) - (((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + (((uint64_t)x11 * x45) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((uint64_t)x17 * x39))))))));
- { uint64_t x83 = ((((uint64_t)(x5 + x23) * (x49 + x67)) + (((uint64_t)(x7 + x25) * (x47 + x65)) + (((uint64_t)(x9 + x27) * (x45 + x63)) + (((uint64_t)(x11 + x29) * (x43 + x61)) + (((uint64_t)(x13 + x31) * (x41 + x59)) + ((uint64_t)(x15 + x33) * (x39 + x57))))))) - (((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + ((uint64_t)x15 * x39)))))));
- { uint64_t x84 = ((((uint64_t)(x5 + x23) * (x47 + x65)) + (((uint64_t)(x7 + x25) * (x45 + x63)) + ((0x2 * ((uint64_t)(x9 + x27) * (x43 + x61))) + (((uint64_t)(x11 + x29) * (x41 + x59)) + ((uint64_t)(x13 + x31) * (x39 + x57)))))) - (((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + ((0x2 * ((uint64_t)x9 * x43)) + (((uint64_t)x11 * x41) + ((uint64_t)x13 * x39))))));
- { uint64_t x85 = ((((uint64_t)(x5 + x23) * (x45 + x63)) + ((0x2 * ((uint64_t)(x7 + x25) * (x43 + x61))) + ((0x2 * ((uint64_t)(x9 + x27) * (x41 + x59))) + ((uint64_t)(x11 + x29) * (x39 + x57))))) - (((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((uint64_t)x11 * x39)))));
- { uint64_t x86 = ((((uint64_t)(x5 + x23) * (x43 + x61)) + (((uint64_t)(x7 + x25) * (x41 + x59)) + ((uint64_t)(x9 + x27) * (x39 + x57)))) - (((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + ((uint64_t)x9 * x39))));
- { uint64_t x87 = ((((uint64_t)(x5 + x23) * (x41 + x59)) + ((uint64_t)(x7 + x25) * (x39 + x57))) - (((uint64_t)x5 * x41) + ((uint64_t)x7 * x39)));
- { uint64_t x88 = (((uint64_t)(x5 + x23) * (x39 + x57)) - ((uint64_t)x5 * x39));
- { uint64_t x89 = ((((0x2 * ((uint64_t)x21 * x55)) + (0x2 * ((uint64_t)x36 * x70))) + x81) + x72);
- { uint64_t x90 = (((((0x2 * ((uint64_t)x19 * x55)) + (0x2 * ((uint64_t)x21 * x53))) + ((0x2 * ((uint64_t)x37 * x70)) + (0x2 * ((uint64_t)x36 * x71)))) + x82) + x73);
- { uint64_t x91 = ((((((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + ((uint64_t)x21 * x51))) + (((uint64_t)x35 * x70) + (((uint64_t)x37 * x71) + ((uint64_t)x36 * x69)))) + x83) + x74);
- { uint64_t x92 = (((((0x2 * ((uint64_t)x15 * x55)) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (0x2 * ((uint64_t)x21 * x49))))) + ((0x2 * ((uint64_t)x33 * x70)) + (((uint64_t)x35 * x71) + (((uint64_t)x37 * x69) + (0x2 * ((uint64_t)x36 * x67)))))) + x84) + x75);
- { uint64_t x93 = (((((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + (((uint64_t)x17 * x51) + ((0x2 * ((uint64_t)x19 * x49)) + (0x2 * ((uint64_t)x21 * x47)))))) + ((0x2 * ((uint64_t)x31 * x70)) + ((0x2 * ((uint64_t)x33 * x71)) + (((uint64_t)x35 * x69) + ((0x2 * ((uint64_t)x37 * x67)) + (0x2 * ((uint64_t)x36 * x65))))))) + x85) + x76);
- { uint64_t x94 = ((((((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + ((uint64_t)x21 * x45)))))) + (((uint64_t)x29 * x70) + (((uint64_t)x31 * x71) + (((uint64_t)x33 * x69) + (((uint64_t)x35 * x67) + (((uint64_t)x37 * x65) + ((uint64_t)x36 * x63))))))) + x86) + x77);
- { uint64_t x95 = (((((0x2 * ((uint64_t)x9 * x55)) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + ((0x2 * ((uint64_t)x15 * x49)) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (0x2 * ((uint64_t)x21 * x43)))))))) + ((0x2 * ((uint64_t)x27 * x70)) + (((uint64_t)x29 * x71) + (((uint64_t)x31 * x69) + ((0x2 * ((uint64_t)x33 * x67)) + (((uint64_t)x35 * x65) + (((uint64_t)x37 * x63) + (0x2 * ((uint64_t)x36 * x61))))))))) + x87) + x78);
- { uint64_t x96 = (((((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + (((uint64_t)x17 * x45) + ((0x2 * ((uint64_t)x19 * x43)) + (0x2 * ((uint64_t)x21 * x41))))))))) + ((0x2 * ((uint64_t)x25 * x70)) + ((0x2 * ((uint64_t)x27 * x71)) + (((uint64_t)x29 * x69) + ((0x2 * ((uint64_t)x31 * x67)) + ((0x2 * ((uint64_t)x33 * x65)) + (((uint64_t)x35 * x63) + ((0x2 * ((uint64_t)x37 * x61)) + (0x2 * ((uint64_t)x36 * x59)))))))))) + x88) + x79);
- { uint64_t x97 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + ((uint64_t)x21 * x39))))))))) + (((uint64_t)x23 * x70) + (((uint64_t)x25 * x71) + (((uint64_t)x27 * x69) + (((uint64_t)x29 * x67) + (((uint64_t)x31 * x65) + (((uint64_t)x33 * x63) + (((uint64_t)x35 * x61) + (((uint64_t)x37 * x59) + ((uint64_t)x36 * x57))))))))));
- { uint64_t x98 = (((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + ((0x2 * ((uint64_t)x15 * x43)) + (((uint64_t)x17 * x41) + ((uint64_t)x19 * x39)))))))) + (((uint64_t)x23 * x71) + (((uint64_t)x25 * x69) + ((0x2 * ((uint64_t)x27 * x67)) + (((uint64_t)x29 * x65) + (((uint64_t)x31 * x63) + ((0x2 * ((uint64_t)x33 * x61)) + (((uint64_t)x35 * x59) + ((uint64_t)x37 * x57))))))))) + x72);
- { uint64_t x99 = (((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + (((uint64_t)x11 * x45) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((uint64_t)x17 * x39))))))) + (((uint64_t)x23 * x69) + ((0x2 * ((uint64_t)x25 * x67)) + ((0x2 * ((uint64_t)x27 * x65)) + (((uint64_t)x29 * x63) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + ((uint64_t)x35 * x57)))))))) + x73);
- { uint64_t x100 = (((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + ((uint64_t)x15 * x39)))))) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + ((uint64_t)x33 * x57))))))) + x74);
- { uint64_t x101 = (((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + ((0x2 * ((uint64_t)x9 * x43)) + (((uint64_t)x11 * x41) + ((uint64_t)x13 * x39))))) + (((uint64_t)x23 * x65) + (((uint64_t)x25 * x63) + ((0x2 * ((uint64_t)x27 * x61)) + (((uint64_t)x29 * x59) + ((uint64_t)x31 * x57)))))) + x75);
- { uint64_t x102 = (((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((uint64_t)x11 * x39)))) + (((uint64_t)x23 * x63) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + ((uint64_t)x29 * x57))))) + x76);
- { uint64_t x103 = (((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + ((uint64_t)x9 * x39))) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + ((uint64_t)x27 * x57)))) + x77);
- { uint64_t x104 = (((((uint64_t)x5 * x41) + ((uint64_t)x7 * x39)) + (((uint64_t)x23 * x59) + ((uint64_t)x25 * x57))) + x78);
- { uint64_t x105 = ((((uint64_t)x5 * x39) + ((uint64_t)x23 * x57)) + x79);
- { uint64_t x106 = (x97 >> 0x1a);
- { uint32_t x107 = ((uint32_t)x97 & 0x3ffffff);
- { uint64_t x108 = (x80 >> 0x1a);
- { uint32_t x109 = ((uint32_t)x80 & 0x3ffffff);
- { uint64_t x110 = ((0x4000000 * x108) + x109);
- { uint64_t x111 = (x110 >> 0x1a);
- { uint32_t x112 = ((uint32_t)x110 & 0x3ffffff);
- { uint64_t x113 = ((x106 + x96) + x111);
- { uint64_t x114 = (x113 >> 0x1b);
- { uint32_t x115 = ((uint32_t)x113 & 0x7ffffff);
- { uint64_t x116 = (x105 + x111);
- { uint64_t x117 = (x116 >> 0x1b);
- { uint32_t x118 = ((uint32_t)x116 & 0x7ffffff);
- { uint64_t x119 = (x114 + x95);
- { uint64_t x120 = (x119 >> 0x1b);
- { uint32_t x121 = ((uint32_t)x119 & 0x7ffffff);
- { uint64_t x122 = (x117 + x104);
- { uint64_t x123 = (x122 >> 0x1b);
- { uint32_t x124 = ((uint32_t)x122 & 0x7ffffff);
- { uint64_t x125 = (x120 + x94);
- { uint64_t x126 = (x125 >> 0x1a);
- { uint32_t x127 = ((uint32_t)x125 & 0x3ffffff);
- { uint64_t x128 = (x123 + x103);
- { uint64_t x129 = (x128 >> 0x1a);
- { uint32_t x130 = ((uint32_t)x128 & 0x3ffffff);
- { uint64_t x131 = (x126 + x93);
- { uint64_t x132 = (x131 >> 0x1b);
- { uint32_t x133 = ((uint32_t)x131 & 0x7ffffff);
- { uint64_t x134 = (x129 + x102);
- { uint64_t x135 = (x134 >> 0x1b);
- { uint32_t x136 = ((uint32_t)x134 & 0x7ffffff);
- { uint64_t x137 = (x132 + x92);
- { uint64_t x138 = (x137 >> 0x1b);
- { uint32_t x139 = ((uint32_t)x137 & 0x7ffffff);
- { uint64_t x140 = (x135 + x101);
- { uint64_t x141 = (x140 >> 0x1b);
- { uint32_t x142 = ((uint32_t)x140 & 0x7ffffff);
- { uint64_t x143 = (x138 + x91);
- { uint64_t x144 = (x143 >> 0x1a);
- { uint32_t x145 = ((uint32_t)x143 & 0x3ffffff);
- { uint64_t x146 = (x141 + x100);
- { uint64_t x147 = (x146 >> 0x1a);
- { uint32_t x148 = ((uint32_t)x146 & 0x3ffffff);
- { uint64_t x149 = (x144 + x90);
- { uint64_t x150 = (x149 >> 0x1b);
- { uint32_t x151 = ((uint32_t)x149 & 0x7ffffff);
- { uint64_t x152 = (x147 + x99);
- { uint64_t x153 = (x152 >> 0x1b);
- { uint32_t x154 = ((uint32_t)x152 & 0x7ffffff);
- { uint64_t x155 = (x150 + x89);
- { uint64_t x156 = (x155 >> 0x1b);
- { uint32_t x157 = ((uint32_t)x155 & 0x7ffffff);
- { uint64_t x158 = (x153 + x98);
- { uint64_t x159 = (x158 >> 0x1b);
- { uint32_t x160 = ((uint32_t)x158 & 0x7ffffff);
- { uint64_t x161 = (x156 + x112);
- { uint32_t x162 = (uint32_t) (x161 >> 0x1a);
- { uint32_t x163 = ((uint32_t)x161 & 0x3ffffff);
- { uint64_t x164 = (x159 + x107);
- { uint32_t x165 = (uint32_t) (x164 >> 0x1a);
- { uint32_t x166 = ((uint32_t)x164 & 0x3ffffff);
- { uint64_t x167 = (((uint64_t)0x4000000 * x162) + x163);
- { uint32_t x168 = (uint32_t) (x167 >> 0x1a);
- { uint32_t x169 = ((uint32_t)x167 & 0x3ffffff);
- { uint32_t x170 = ((x165 + x115) + x168);
- { uint32_t x171 = (x170 >> 0x1b);
- { uint32_t x172 = (x170 & 0x7ffffff);
- { uint32_t x173 = (x118 + x168);
- { uint32_t x174 = (x173 >> 0x1b);
- { uint32_t x175 = (x173 & 0x7ffffff);
- out[0] = x175;
- out[1] = (x174 + x124);
- out[2] = x130;
- out[3] = x136;
- out[4] = x142;
- out[5] = x148;
- out[6] = x154;
- out[7] = x160;
- out[8] = x166;
- out[9] = x172;
- out[10] = (x171 + x121);
- out[11] = x127;
- out[12] = x133;
- out[13] = x139;
- out[14] = x145;
- out[15] = x151;
- out[16] = x157;
- out[17] = x169;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e480m2e240m1_18limbs/femul.v b/src/Specific/solinas32_2e480m2e240m1_18limbs/femul.v
deleted file mode 100644
index cf5f738e4..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_18limbs.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_2e480m2e240m1_18limbs/femulDisplay.log b/src/Specific/solinas32_2e480m2e240m1_18limbs/femulDisplay.log
deleted file mode 100644
index eeb06a53a..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/femulDisplay.log
+++ /dev/null
@@ -1,111 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- uint64_t x72 = ((0x2 * ((uint64_t)(x21 + x36) * (x55 + x70))) - (0x2 * ((uint64_t)x21 * x55)));
- uint64_t x73 = (((0x2 * ((uint64_t)(x19 + x37) * (x55 + x70))) + (0x2 * ((uint64_t)(x21 + x36) * (x53 + x71)))) - ((0x2 * ((uint64_t)x19 * x55)) + (0x2 * ((uint64_t)x21 * x53))));
- uint64_t x74 = ((((uint64_t)(x17 + x35) * (x55 + x70)) + (((uint64_t)(x19 + x37) * (x53 + x71)) + ((uint64_t)(x21 + x36) * (x51 + x69)))) - (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + ((uint64_t)x21 * x51))));
- uint64_t x75 = (((0x2 * ((uint64_t)(x15 + x33) * (x55 + x70))) + (((uint64_t)(x17 + x35) * (x53 + x71)) + (((uint64_t)(x19 + x37) * (x51 + x69)) + (0x2 * ((uint64_t)(x21 + x36) * (x49 + x67)))))) - ((0x2 * ((uint64_t)x15 * x55)) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (0x2 * ((uint64_t)x21 * x49))))));
- uint64_t x76 = (((0x2 * ((uint64_t)(x13 + x31) * (x55 + x70))) + ((0x2 * ((uint64_t)(x15 + x33) * (x53 + x71))) + (((uint64_t)(x17 + x35) * (x51 + x69)) + ((0x2 * ((uint64_t)(x19 + x37) * (x49 + x67))) + (0x2 * ((uint64_t)(x21 + x36) * (x47 + x65))))))) - ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + (((uint64_t)x17 * x51) + ((0x2 * ((uint64_t)x19 * x49)) + (0x2 * ((uint64_t)x21 * x47)))))));
- uint64_t x77 = ((((uint64_t)(x11 + x29) * (x55 + x70)) + (((uint64_t)(x13 + x31) * (x53 + x71)) + (((uint64_t)(x15 + x33) * (x51 + x69)) + (((uint64_t)(x17 + x35) * (x49 + x67)) + (((uint64_t)(x19 + x37) * (x47 + x65)) + ((uint64_t)(x21 + x36) * (x45 + x63))))))) - (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + ((uint64_t)x21 * x45)))))));
- uint64_t x78 = (((0x2 * ((uint64_t)(x9 + x27) * (x55 + x70))) + (((uint64_t)(x11 + x29) * (x53 + x71)) + (((uint64_t)(x13 + x31) * (x51 + x69)) + ((0x2 * ((uint64_t)(x15 + x33) * (x49 + x67))) + (((uint64_t)(x17 + x35) * (x47 + x65)) + (((uint64_t)(x19 + x37) * (x45 + x63)) + (0x2 * ((uint64_t)(x21 + x36) * (x43 + x61))))))))) - ((0x2 * ((uint64_t)x9 * x55)) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + ((0x2 * ((uint64_t)x15 * x49)) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (0x2 * ((uint64_t)x21 * x43)))))))));
- uint64_t x79 = (((0x2 * ((uint64_t)(x7 + x25) * (x55 + x70))) + ((0x2 * ((uint64_t)(x9 + x27) * (x53 + x71))) + (((uint64_t)(x11 + x29) * (x51 + x69)) + ((0x2 * ((uint64_t)(x13 + x31) * (x49 + x67))) + ((0x2 * ((uint64_t)(x15 + x33) * (x47 + x65))) + (((uint64_t)(x17 + x35) * (x45 + x63)) + ((0x2 * ((uint64_t)(x19 + x37) * (x43 + x61))) + (0x2 * ((uint64_t)(x21 + x36) * (x41 + x59)))))))))) - ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + (((uint64_t)x17 * x45) + ((0x2 * ((uint64_t)x19 * x43)) + (0x2 * ((uint64_t)x21 * x41))))))))));
- uint64_t x80 = ((((uint64_t)(x5 + x23) * (x55 + x70)) + (((uint64_t)(x7 + x25) * (x53 + x71)) + (((uint64_t)(x9 + x27) * (x51 + x69)) + (((uint64_t)(x11 + x29) * (x49 + x67)) + (((uint64_t)(x13 + x31) * (x47 + x65)) + (((uint64_t)(x15 + x33) * (x45 + x63)) + (((uint64_t)(x17 + x35) * (x43 + x61)) + (((uint64_t)(x19 + x37) * (x41 + x59)) + ((uint64_t)(x21 + x36) * (x39 + x57)))))))))) - (((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + ((uint64_t)x21 * x39))))))))));
- uint64_t x81 = ((((uint64_t)(x5 + x23) * (x53 + x71)) + (((uint64_t)(x7 + x25) * (x51 + x69)) + ((0x2 * ((uint64_t)(x9 + x27) * (x49 + x67))) + (((uint64_t)(x11 + x29) * (x47 + x65)) + (((uint64_t)(x13 + x31) * (x45 + x63)) + ((0x2 * ((uint64_t)(x15 + x33) * (x43 + x61))) + (((uint64_t)(x17 + x35) * (x41 + x59)) + ((uint64_t)(x19 + x37) * (x39 + x57))))))))) - (((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + ((0x2 * ((uint64_t)x15 * x43)) + (((uint64_t)x17 * x41) + ((uint64_t)x19 * x39)))))))));
- uint64_t x82 = ((((uint64_t)(x5 + x23) * (x51 + x69)) + ((0x2 * ((uint64_t)(x7 + x25) * (x49 + x67))) + ((0x2 * ((uint64_t)(x9 + x27) * (x47 + x65))) + (((uint64_t)(x11 + x29) * (x45 + x63)) + ((0x2 * ((uint64_t)(x13 + x31) * (x43 + x61))) + ((0x2 * ((uint64_t)(x15 + x33) * (x41 + x59))) + ((uint64_t)(x17 + x35) * (x39 + x57)))))))) - (((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + (((uint64_t)x11 * x45) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((uint64_t)x17 * x39))))))));
- uint64_t x83 = ((((uint64_t)(x5 + x23) * (x49 + x67)) + (((uint64_t)(x7 + x25) * (x47 + x65)) + (((uint64_t)(x9 + x27) * (x45 + x63)) + (((uint64_t)(x11 + x29) * (x43 + x61)) + (((uint64_t)(x13 + x31) * (x41 + x59)) + ((uint64_t)(x15 + x33) * (x39 + x57))))))) - (((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + ((uint64_t)x15 * x39)))))));
- uint64_t x84 = ((((uint64_t)(x5 + x23) * (x47 + x65)) + (((uint64_t)(x7 + x25) * (x45 + x63)) + ((0x2 * ((uint64_t)(x9 + x27) * (x43 + x61))) + (((uint64_t)(x11 + x29) * (x41 + x59)) + ((uint64_t)(x13 + x31) * (x39 + x57)))))) - (((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + ((0x2 * ((uint64_t)x9 * x43)) + (((uint64_t)x11 * x41) + ((uint64_t)x13 * x39))))));
- uint64_t x85 = ((((uint64_t)(x5 + x23) * (x45 + x63)) + ((0x2 * ((uint64_t)(x7 + x25) * (x43 + x61))) + ((0x2 * ((uint64_t)(x9 + x27) * (x41 + x59))) + ((uint64_t)(x11 + x29) * (x39 + x57))))) - (((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((uint64_t)x11 * x39)))));
- uint64_t x86 = ((((uint64_t)(x5 + x23) * (x43 + x61)) + (((uint64_t)(x7 + x25) * (x41 + x59)) + ((uint64_t)(x9 + x27) * (x39 + x57)))) - (((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + ((uint64_t)x9 * x39))));
- uint64_t x87 = ((((uint64_t)(x5 + x23) * (x41 + x59)) + ((uint64_t)(x7 + x25) * (x39 + x57))) - (((uint64_t)x5 * x41) + ((uint64_t)x7 * x39)));
- uint64_t x88 = (((uint64_t)(x5 + x23) * (x39 + x57)) - ((uint64_t)x5 * x39));
- uint64_t x89 = ((((0x2 * ((uint64_t)x21 * x55)) + (0x2 * ((uint64_t)x36 * x70))) + x81) + x72);
- uint64_t x90 = (((((0x2 * ((uint64_t)x19 * x55)) + (0x2 * ((uint64_t)x21 * x53))) + ((0x2 * ((uint64_t)x37 * x70)) + (0x2 * ((uint64_t)x36 * x71)))) + x82) + x73);
- uint64_t x91 = ((((((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + ((uint64_t)x21 * x51))) + (((uint64_t)x35 * x70) + (((uint64_t)x37 * x71) + ((uint64_t)x36 * x69)))) + x83) + x74);
- uint64_t x92 = (((((0x2 * ((uint64_t)x15 * x55)) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (0x2 * ((uint64_t)x21 * x49))))) + ((0x2 * ((uint64_t)x33 * x70)) + (((uint64_t)x35 * x71) + (((uint64_t)x37 * x69) + (0x2 * ((uint64_t)x36 * x67)))))) + x84) + x75);
- uint64_t x93 = (((((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + (((uint64_t)x17 * x51) + ((0x2 * ((uint64_t)x19 * x49)) + (0x2 * ((uint64_t)x21 * x47)))))) + ((0x2 * ((uint64_t)x31 * x70)) + ((0x2 * ((uint64_t)x33 * x71)) + (((uint64_t)x35 * x69) + ((0x2 * ((uint64_t)x37 * x67)) + (0x2 * ((uint64_t)x36 * x65))))))) + x85) + x76);
- uint64_t x94 = ((((((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + ((uint64_t)x21 * x45)))))) + (((uint64_t)x29 * x70) + (((uint64_t)x31 * x71) + (((uint64_t)x33 * x69) + (((uint64_t)x35 * x67) + (((uint64_t)x37 * x65) + ((uint64_t)x36 * x63))))))) + x86) + x77);
- uint64_t x95 = (((((0x2 * ((uint64_t)x9 * x55)) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + ((0x2 * ((uint64_t)x15 * x49)) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + (0x2 * ((uint64_t)x21 * x43)))))))) + ((0x2 * ((uint64_t)x27 * x70)) + (((uint64_t)x29 * x71) + (((uint64_t)x31 * x69) + ((0x2 * ((uint64_t)x33 * x67)) + (((uint64_t)x35 * x65) + (((uint64_t)x37 * x63) + (0x2 * ((uint64_t)x36 * x61))))))))) + x87) + x78);
- uint64_t x96 = (((((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + (((uint64_t)x17 * x45) + ((0x2 * ((uint64_t)x19 * x43)) + (0x2 * ((uint64_t)x21 * x41))))))))) + ((0x2 * ((uint64_t)x25 * x70)) + ((0x2 * ((uint64_t)x27 * x71)) + (((uint64_t)x29 * x69) + ((0x2 * ((uint64_t)x31 * x67)) + ((0x2 * ((uint64_t)x33 * x65)) + (((uint64_t)x35 * x63) + ((0x2 * ((uint64_t)x37 * x61)) + (0x2 * ((uint64_t)x36 * x59)))))))))) + x88) + x79);
- uint64_t x97 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + (((uint64_t)x19 * x41) + ((uint64_t)x21 * x39))))))))) + (((uint64_t)x23 * x70) + (((uint64_t)x25 * x71) + (((uint64_t)x27 * x69) + (((uint64_t)x29 * x67) + (((uint64_t)x31 * x65) + (((uint64_t)x33 * x63) + (((uint64_t)x35 * x61) + (((uint64_t)x37 * x59) + ((uint64_t)x36 * x57))))))))));
- uint64_t x98 = (((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + ((0x2 * ((uint64_t)x15 * x43)) + (((uint64_t)x17 * x41) + ((uint64_t)x19 * x39)))))))) + (((uint64_t)x23 * x71) + (((uint64_t)x25 * x69) + ((0x2 * ((uint64_t)x27 * x67)) + (((uint64_t)x29 * x65) + (((uint64_t)x31 * x63) + ((0x2 * ((uint64_t)x33 * x61)) + (((uint64_t)x35 * x59) + ((uint64_t)x37 * x57))))))))) + x72);
- uint64_t x99 = (((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + (((uint64_t)x11 * x45) + ((0x2 * ((uint64_t)x13 * x43)) + ((0x2 * ((uint64_t)x15 * x41)) + ((uint64_t)x17 * x39))))))) + (((uint64_t)x23 * x69) + ((0x2 * ((uint64_t)x25 * x67)) + ((0x2 * ((uint64_t)x27 * x65)) + (((uint64_t)x29 * x63) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + ((uint64_t)x35 * x57)))))))) + x73);
- uint64_t x100 = (((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + (((uint64_t)x11 * x43) + (((uint64_t)x13 * x41) + ((uint64_t)x15 * x39)))))) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + ((uint64_t)x33 * x57))))))) + x74);
- uint64_t x101 = (((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + ((0x2 * ((uint64_t)x9 * x43)) + (((uint64_t)x11 * x41) + ((uint64_t)x13 * x39))))) + (((uint64_t)x23 * x65) + (((uint64_t)x25 * x63) + ((0x2 * ((uint64_t)x27 * x61)) + (((uint64_t)x29 * x59) + ((uint64_t)x31 * x57)))))) + x75);
- uint64_t x102 = (((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((0x2 * ((uint64_t)x9 * x41)) + ((uint64_t)x11 * x39)))) + (((uint64_t)x23 * x63) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + ((uint64_t)x29 * x57))))) + x76);
- uint64_t x103 = (((((uint64_t)x5 * x43) + (((uint64_t)x7 * x41) + ((uint64_t)x9 * x39))) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + ((uint64_t)x27 * x57)))) + x77);
- uint64_t x104 = (((((uint64_t)x5 * x41) + ((uint64_t)x7 * x39)) + (((uint64_t)x23 * x59) + ((uint64_t)x25 * x57))) + x78);
- uint64_t x105 = ((((uint64_t)x5 * x39) + ((uint64_t)x23 * x57)) + x79);
- uint64_t x106 = (x97 >> 0x1a);
- uint32_t x107 = ((uint32_t)x97 & 0x3ffffff);
- uint64_t x108 = (x80 >> 0x1a);
- uint32_t x109 = ((uint32_t)x80 & 0x3ffffff);
- uint64_t x110 = ((0x4000000 * x108) + x109);
- uint64_t x111 = (x110 >> 0x1a);
- uint32_t x112 = ((uint32_t)x110 & 0x3ffffff);
- uint64_t x113 = ((x106 + x96) + x111);
- uint64_t x114 = (x113 >> 0x1b);
- uint32_t x115 = ((uint32_t)x113 & 0x7ffffff);
- uint64_t x116 = (x105 + x111);
- uint64_t x117 = (x116 >> 0x1b);
- uint32_t x118 = ((uint32_t)x116 & 0x7ffffff);
- uint64_t x119 = (x114 + x95);
- uint64_t x120 = (x119 >> 0x1b);
- uint32_t x121 = ((uint32_t)x119 & 0x7ffffff);
- uint64_t x122 = (x117 + x104);
- uint64_t x123 = (x122 >> 0x1b);
- uint32_t x124 = ((uint32_t)x122 & 0x7ffffff);
- uint64_t x125 = (x120 + x94);
- uint64_t x126 = (x125 >> 0x1a);
- uint32_t x127 = ((uint32_t)x125 & 0x3ffffff);
- uint64_t x128 = (x123 + x103);
- uint64_t x129 = (x128 >> 0x1a);
- uint32_t x130 = ((uint32_t)x128 & 0x3ffffff);
- uint64_t x131 = (x126 + x93);
- uint64_t x132 = (x131 >> 0x1b);
- uint32_t x133 = ((uint32_t)x131 & 0x7ffffff);
- uint64_t x134 = (x129 + x102);
- uint64_t x135 = (x134 >> 0x1b);
- uint32_t x136 = ((uint32_t)x134 & 0x7ffffff);
- uint64_t x137 = (x132 + x92);
- uint64_t x138 = (x137 >> 0x1b);
- uint32_t x139 = ((uint32_t)x137 & 0x7ffffff);
- uint64_t x140 = (x135 + x101);
- uint64_t x141 = (x140 >> 0x1b);
- uint32_t x142 = ((uint32_t)x140 & 0x7ffffff);
- uint64_t x143 = (x138 + x91);
- uint64_t x144 = (x143 >> 0x1a);
- uint32_t x145 = ((uint32_t)x143 & 0x3ffffff);
- uint64_t x146 = (x141 + x100);
- uint64_t x147 = (x146 >> 0x1a);
- uint32_t x148 = ((uint32_t)x146 & 0x3ffffff);
- uint64_t x149 = (x144 + x90);
- uint64_t x150 = (x149 >> 0x1b);
- uint32_t x151 = ((uint32_t)x149 & 0x7ffffff);
- uint64_t x152 = (x147 + x99);
- uint64_t x153 = (x152 >> 0x1b);
- uint32_t x154 = ((uint32_t)x152 & 0x7ffffff);
- uint64_t x155 = (x150 + x89);
- uint64_t x156 = (x155 >> 0x1b);
- uint32_t x157 = ((uint32_t)x155 & 0x7ffffff);
- uint64_t x158 = (x153 + x98);
- uint64_t x159 = (x158 >> 0x1b);
- uint32_t x160 = ((uint32_t)x158 & 0x7ffffff);
- uint64_t x161 = (x156 + x112);
- uint32_t x162 = (uint32_t) (x161 >> 0x1a);
- uint32_t x163 = ((uint32_t)x161 & 0x3ffffff);
- uint64_t x164 = (x159 + x107);
- uint32_t x165 = (uint32_t) (x164 >> 0x1a);
- uint32_t x166 = ((uint32_t)x164 & 0x3ffffff);
- uint64_t x167 = (((uint64_t)0x4000000 * x162) + x163);
- uint32_t x168 = (uint32_t) (x167 >> 0x1a);
- uint32_t x169 = ((uint32_t)x167 & 0x3ffffff);
- uint32_t x170 = ((x165 + x115) + x168);
- uint32_t x171 = (x170 >> 0x1b);
- uint32_t x172 = (x170 & 0x7ffffff);
- uint32_t x173 = (x118 + x168);
- uint32_t x174 = (x173 >> 0x1b);
- uint32_t x175 = (x173 & 0x7ffffff);
- return (Return x169, Return x157, Return x151, Return x145, Return x139, Return x133, Return x127, (x171 + x121), Return x172, Return x166, Return x160, Return x154, Return x148, Return x142, Return x136, Return x130, (x174 + x124), Return x175))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e480m2e240m1_18limbs/femulDisplay.v b/src/Specific/solinas32_2e480m2e240m1_18limbs/femulDisplay.v
deleted file mode 100644
index 1123aa1c8..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_18limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e480m2e240m1_18limbs/fesquare.c b/src/Specific/solinas32_2e480m2e240m1_18limbs/fesquare.c
deleted file mode 100644
index 30feb9ffd..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/fesquare.c
+++ /dev/null
@@ -1,143 +0,0 @@
-static void fesquare(uint32_t out[18], const uint32_t in1[18]) {
- { const uint32_t x33 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x35 = ((0x2 * ((uint64_t)(x18 + x33) * (x18 + x33))) - (0x2 * ((uint64_t)x18 * x18)));
- { uint64_t x36 = (((0x2 * ((uint64_t)(x16 + x34) * (x18 + x33))) + (0x2 * ((uint64_t)(x18 + x33) * (x16 + x34)))) - ((0x2 * ((uint64_t)x16 * x18)) + (0x2 * ((uint64_t)x18 * x16))));
- { uint64_t x37 = ((((uint64_t)(x14 + x32) * (x18 + x33)) + (((uint64_t)(x16 + x34) * (x16 + x34)) + ((uint64_t)(x18 + x33) * (x14 + x32)))) - (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + ((uint64_t)x18 * x14))));
- { uint64_t x38 = (((0x2 * ((uint64_t)(x12 + x30) * (x18 + x33))) + (((uint64_t)(x14 + x32) * (x16 + x34)) + (((uint64_t)(x16 + x34) * (x14 + x32)) + (0x2 * ((uint64_t)(x18 + x33) * (x12 + x30)))))) - ((0x2 * ((uint64_t)x12 * x18)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (0x2 * ((uint64_t)x18 * x12))))));
- { uint64_t x39 = (((0x2 * ((uint64_t)(x10 + x28) * (x18 + x33))) + ((0x2 * ((uint64_t)(x12 + x30) * (x16 + x34))) + (((uint64_t)(x14 + x32) * (x14 + x32)) + ((0x2 * ((uint64_t)(x16 + x34) * (x12 + x30))) + (0x2 * ((uint64_t)(x18 + x33) * (x10 + x28))))))) - ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (0x2 * ((uint64_t)x18 * x10)))))));
- { uint64_t x40 = ((((uint64_t)(x8 + x26) * (x18 + x33)) + (((uint64_t)(x10 + x28) * (x16 + x34)) + (((uint64_t)(x12 + x30) * (x14 + x32)) + (((uint64_t)(x14 + x32) * (x12 + x30)) + (((uint64_t)(x16 + x34) * (x10 + x28)) + ((uint64_t)(x18 + x33) * (x8 + x26))))))) - (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x18 * x8)))))));
- { uint64_t x41 = (((0x2 * ((uint64_t)(x6 + x24) * (x18 + x33))) + (((uint64_t)(x8 + x26) * (x16 + x34)) + (((uint64_t)(x10 + x28) * (x14 + x32)) + ((0x2 * ((uint64_t)(x12 + x30) * (x12 + x30))) + (((uint64_t)(x14 + x32) * (x10 + x28)) + (((uint64_t)(x16 + x34) * (x8 + x26)) + (0x2 * ((uint64_t)(x18 + x33) * (x6 + x24))))))))) - ((0x2 * ((uint64_t)x6 * x18)) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (0x2 * ((uint64_t)x18 * x6)))))))));
- { uint64_t x42 = (((0x2 * ((uint64_t)(x4 + x22) * (x18 + x33))) + ((0x2 * ((uint64_t)(x6 + x24) * (x16 + x34))) + (((uint64_t)(x8 + x26) * (x14 + x32)) + ((0x2 * ((uint64_t)(x10 + x28) * (x12 + x30))) + ((0x2 * ((uint64_t)(x12 + x30) * (x10 + x28))) + (((uint64_t)(x14 + x32) * (x8 + x26)) + ((0x2 * ((uint64_t)(x16 + x34) * (x6 + x24))) + (0x2 * ((uint64_t)(x18 + x33) * (x4 + x22)))))))))) - ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x18 * x4))))))))));
- { uint64_t x43 = ((((uint64_t)(x2 + x20) * (x18 + x33)) + (((uint64_t)(x4 + x22) * (x16 + x34)) + (((uint64_t)(x6 + x24) * (x14 + x32)) + (((uint64_t)(x8 + x26) * (x12 + x30)) + (((uint64_t)(x10 + x28) * (x10 + x28)) + (((uint64_t)(x12 + x30) * (x8 + x26)) + (((uint64_t)(x14 + x32) * (x6 + x24)) + (((uint64_t)(x16 + x34) * (x4 + x22)) + ((uint64_t)(x18 + x33) * (x2 + x20)))))))))) - (((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))));
- { uint64_t x44 = ((((uint64_t)(x2 + x20) * (x16 + x34)) + (((uint64_t)(x4 + x22) * (x14 + x32)) + ((0x2 * ((uint64_t)(x6 + x24) * (x12 + x30))) + (((uint64_t)(x8 + x26) * (x10 + x28)) + (((uint64_t)(x10 + x28) * (x8 + x26)) + ((0x2 * ((uint64_t)(x12 + x30) * (x6 + x24))) + (((uint64_t)(x14 + x32) * (x4 + x22)) + ((uint64_t)(x16 + x34) * (x2 + x20))))))))) - (((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))));
- { uint64_t x45 = ((((uint64_t)(x2 + x20) * (x14 + x32)) + ((0x2 * ((uint64_t)(x4 + x22) * (x12 + x30))) + ((0x2 * ((uint64_t)(x6 + x24) * (x10 + x28))) + (((uint64_t)(x8 + x26) * (x8 + x26)) + ((0x2 * ((uint64_t)(x10 + x28) * (x6 + x24))) + ((0x2 * ((uint64_t)(x12 + x30) * (x4 + x22))) + ((uint64_t)(x14 + x32) * (x2 + x20)))))))) - (((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))));
- { uint64_t x46 = ((((uint64_t)(x2 + x20) * (x12 + x30)) + (((uint64_t)(x4 + x22) * (x10 + x28)) + (((uint64_t)(x6 + x24) * (x8 + x26)) + (((uint64_t)(x8 + x26) * (x6 + x24)) + (((uint64_t)(x10 + x28) * (x4 + x22)) + ((uint64_t)(x12 + x30) * (x2 + x20))))))) - (((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))));
- { uint64_t x47 = ((((uint64_t)(x2 + x20) * (x10 + x28)) + (((uint64_t)(x4 + x22) * (x8 + x26)) + ((0x2 * ((uint64_t)(x6 + x24) * (x6 + x24))) + (((uint64_t)(x8 + x26) * (x4 + x22)) + ((uint64_t)(x10 + x28) * (x2 + x20)))))) - (((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))));
- { uint64_t x48 = ((((uint64_t)(x2 + x20) * (x8 + x26)) + ((0x2 * ((uint64_t)(x4 + x22) * (x6 + x24))) + ((0x2 * ((uint64_t)(x6 + x24) * (x4 + x22))) + ((uint64_t)(x8 + x26) * (x2 + x20))))) - (((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))));
- { uint64_t x49 = ((((uint64_t)(x2 + x20) * (x6 + x24)) + (((uint64_t)(x4 + x22) * (x4 + x22)) + ((uint64_t)(x6 + x24) * (x2 + x20)))) - (((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))));
- { uint64_t x50 = ((((uint64_t)(x2 + x20) * (x4 + x22)) + ((uint64_t)(x4 + x22) * (x2 + x20))) - (((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)));
- { uint64_t x51 = (((uint64_t)(x2 + x20) * (x2 + x20)) - ((uint64_t)x2 * x2));
- { uint64_t x52 = ((((0x2 * ((uint64_t)x18 * x18)) + (0x2 * ((uint64_t)x33 * x33))) + x44) + x35);
- { uint64_t x53 = (((((0x2 * ((uint64_t)x16 * x18)) + (0x2 * ((uint64_t)x18 * x16))) + ((0x2 * ((uint64_t)x34 * x33)) + (0x2 * ((uint64_t)x33 * x34)))) + x45) + x36);
- { uint64_t x54 = ((((((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + ((uint64_t)x18 * x14))) + (((uint64_t)x32 * x33) + (((uint64_t)x34 * x34) + ((uint64_t)x33 * x32)))) + x46) + x37);
- { uint64_t x55 = (((((0x2 * ((uint64_t)x12 * x18)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (0x2 * ((uint64_t)x18 * x12))))) + ((0x2 * ((uint64_t)x30 * x33)) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + (0x2 * ((uint64_t)x33 * x30)))))) + x47) + x38);
- { uint64_t x56 = (((((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (0x2 * ((uint64_t)x18 * x10)))))) + ((0x2 * ((uint64_t)x28 * x33)) + ((0x2 * ((uint64_t)x30 * x34)) + (((uint64_t)x32 * x32) + ((0x2 * ((uint64_t)x34 * x30)) + (0x2 * ((uint64_t)x33 * x28))))))) + x48) + x39);
- { uint64_t x57 = ((((((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x18 * x8)))))) + (((uint64_t)x26 * x33) + (((uint64_t)x28 * x34) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + (((uint64_t)x34 * x28) + ((uint64_t)x33 * x26))))))) + x49) + x40);
- { uint64_t x58 = (((((0x2 * ((uint64_t)x6 * x18)) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (0x2 * ((uint64_t)x18 * x6)))))))) + ((0x2 * ((uint64_t)x24 * x33)) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + (0x2 * ((uint64_t)x33 * x24))))))))) + x50) + x41);
- { uint64_t x59 = (((((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x18 * x4))))))))) + ((0x2 * ((uint64_t)x22 * x33)) + ((0x2 * ((uint64_t)x24 * x34)) + (((uint64_t)x26 * x32) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + (((uint64_t)x32 * x26) + ((0x2 * ((uint64_t)x34 * x24)) + (0x2 * ((uint64_t)x33 * x22)))))))))) + x51) + x42);
- { uint64_t x60 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (((uint64_t)x20 * x33) + (((uint64_t)x22 * x34) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + (((uint64_t)x34 * x22) + ((uint64_t)x33 * x20))))))))));
- { uint64_t x61 = (((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (((uint64_t)x20 * x34) + (((uint64_t)x22 * x32) + ((0x2 * ((uint64_t)x24 * x30)) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + ((0x2 * ((uint64_t)x30 * x24)) + (((uint64_t)x32 * x22) + ((uint64_t)x34 * x20))))))))) + x35);
- { uint64_t x62 = (((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (((uint64_t)x20 * x32) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + (((uint64_t)x26 * x26) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + ((uint64_t)x32 * x20)))))))) + x36);
- { uint64_t x63 = (((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + ((uint64_t)x30 * x20))))))) + x37);
- { uint64_t x64 = (((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + ((0x2 * ((uint64_t)x24 * x24)) + (((uint64_t)x26 * x22) + ((uint64_t)x28 * x20)))))) + x38);
- { uint64_t x65 = (((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (((uint64_t)x20 * x26) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + ((uint64_t)x26 * x20))))) + x39);
- { uint64_t x66 = (((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + ((uint64_t)x24 * x20)))) + x40);
- { uint64_t x67 = (((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x20 * x22) + ((uint64_t)x22 * x20))) + x41);
- { uint64_t x68 = ((((uint64_t)x2 * x2) + ((uint64_t)x20 * x20)) + x42);
- { uint64_t x69 = (x60 >> 0x1a);
- { uint32_t x70 = ((uint32_t)x60 & 0x3ffffff);
- { uint64_t x71 = (x43 >> 0x1a);
- { uint32_t x72 = ((uint32_t)x43 & 0x3ffffff);
- { uint64_t x73 = ((0x4000000 * x71) + x72);
- { uint64_t x74 = (x73 >> 0x1a);
- { uint32_t x75 = ((uint32_t)x73 & 0x3ffffff);
- { uint64_t x76 = ((x69 + x59) + x74);
- { uint64_t x77 = (x76 >> 0x1b);
- { uint32_t x78 = ((uint32_t)x76 & 0x7ffffff);
- { uint64_t x79 = (x68 + x74);
- { uint64_t x80 = (x79 >> 0x1b);
- { uint32_t x81 = ((uint32_t)x79 & 0x7ffffff);
- { uint64_t x82 = (x77 + x58);
- { uint64_t x83 = (x82 >> 0x1b);
- { uint32_t x84 = ((uint32_t)x82 & 0x7ffffff);
- { uint64_t x85 = (x80 + x67);
- { uint64_t x86 = (x85 >> 0x1b);
- { uint32_t x87 = ((uint32_t)x85 & 0x7ffffff);
- { uint64_t x88 = (x83 + x57);
- { uint64_t x89 = (x88 >> 0x1a);
- { uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- { uint64_t x91 = (x86 + x66);
- { uint64_t x92 = (x91 >> 0x1a);
- { uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- { uint64_t x94 = (x89 + x56);
- { uint64_t x95 = (x94 >> 0x1b);
- { uint32_t x96 = ((uint32_t)x94 & 0x7ffffff);
- { uint64_t x97 = (x92 + x65);
- { uint64_t x98 = (x97 >> 0x1b);
- { uint32_t x99 = ((uint32_t)x97 & 0x7ffffff);
- { uint64_t x100 = (x95 + x55);
- { uint64_t x101 = (x100 >> 0x1b);
- { uint32_t x102 = ((uint32_t)x100 & 0x7ffffff);
- { uint64_t x103 = (x98 + x64);
- { uint64_t x104 = (x103 >> 0x1b);
- { uint32_t x105 = ((uint32_t)x103 & 0x7ffffff);
- { uint64_t x106 = (x101 + x54);
- { uint64_t x107 = (x106 >> 0x1a);
- { uint32_t x108 = ((uint32_t)x106 & 0x3ffffff);
- { uint64_t x109 = (x104 + x63);
- { uint64_t x110 = (x109 >> 0x1a);
- { uint32_t x111 = ((uint32_t)x109 & 0x3ffffff);
- { uint64_t x112 = (x107 + x53);
- { uint64_t x113 = (x112 >> 0x1b);
- { uint32_t x114 = ((uint32_t)x112 & 0x7ffffff);
- { uint64_t x115 = (x110 + x62);
- { uint64_t x116 = (x115 >> 0x1b);
- { uint32_t x117 = ((uint32_t)x115 & 0x7ffffff);
- { uint64_t x118 = (x113 + x52);
- { uint64_t x119 = (x118 >> 0x1b);
- { uint32_t x120 = ((uint32_t)x118 & 0x7ffffff);
- { uint64_t x121 = (x116 + x61);
- { uint64_t x122 = (x121 >> 0x1b);
- { uint32_t x123 = ((uint32_t)x121 & 0x7ffffff);
- { uint64_t x124 = (x119 + x75);
- { uint32_t x125 = (uint32_t) (x124 >> 0x1a);
- { uint32_t x126 = ((uint32_t)x124 & 0x3ffffff);
- { uint64_t x127 = (x122 + x70);
- { uint32_t x128 = (uint32_t) (x127 >> 0x1a);
- { uint32_t x129 = ((uint32_t)x127 & 0x3ffffff);
- { uint64_t x130 = (((uint64_t)0x4000000 * x125) + x126);
- { uint32_t x131 = (uint32_t) (x130 >> 0x1a);
- { uint32_t x132 = ((uint32_t)x130 & 0x3ffffff);
- { uint32_t x133 = ((x128 + x78) + x131);
- { uint32_t x134 = (x133 >> 0x1b);
- { uint32_t x135 = (x133 & 0x7ffffff);
- { uint32_t x136 = (x81 + x131);
- { uint32_t x137 = (x136 >> 0x1b);
- { uint32_t x138 = (x136 & 0x7ffffff);
- out[0] = x138;
- out[1] = (x137 + x87);
- out[2] = x93;
- out[3] = x99;
- out[4] = x105;
- out[5] = x111;
- out[6] = x117;
- out[7] = x123;
- out[8] = x129;
- out[9] = x135;
- out[10] = (x134 + x84);
- out[11] = x90;
- out[12] = x96;
- out[13] = x102;
- out[14] = x108;
- out[15] = x114;
- out[16] = x120;
- out[17] = x132;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e480m2e240m1_18limbs/fesquare.v b/src/Specific/solinas32_2e480m2e240m1_18limbs/fesquare.v
deleted file mode 100644
index 3391371cd..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_18limbs.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_2e480m2e240m1_18limbs/fesquareDisplay.log b/src/Specific/solinas32_2e480m2e240m1_18limbs/fesquareDisplay.log
deleted file mode 100644
index 13f6edcfc..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,111 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x33, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x35 = ((0x2 * ((uint64_t)(x18 + x33) * (x18 + x33))) - (0x2 * ((uint64_t)x18 * x18)));
- uint64_t x36 = (((0x2 * ((uint64_t)(x16 + x34) * (x18 + x33))) + (0x2 * ((uint64_t)(x18 + x33) * (x16 + x34)))) - ((0x2 * ((uint64_t)x16 * x18)) + (0x2 * ((uint64_t)x18 * x16))));
- uint64_t x37 = ((((uint64_t)(x14 + x32) * (x18 + x33)) + (((uint64_t)(x16 + x34) * (x16 + x34)) + ((uint64_t)(x18 + x33) * (x14 + x32)))) - (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + ((uint64_t)x18 * x14))));
- uint64_t x38 = (((0x2 * ((uint64_t)(x12 + x30) * (x18 + x33))) + (((uint64_t)(x14 + x32) * (x16 + x34)) + (((uint64_t)(x16 + x34) * (x14 + x32)) + (0x2 * ((uint64_t)(x18 + x33) * (x12 + x30)))))) - ((0x2 * ((uint64_t)x12 * x18)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (0x2 * ((uint64_t)x18 * x12))))));
- uint64_t x39 = (((0x2 * ((uint64_t)(x10 + x28) * (x18 + x33))) + ((0x2 * ((uint64_t)(x12 + x30) * (x16 + x34))) + (((uint64_t)(x14 + x32) * (x14 + x32)) + ((0x2 * ((uint64_t)(x16 + x34) * (x12 + x30))) + (0x2 * ((uint64_t)(x18 + x33) * (x10 + x28))))))) - ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (0x2 * ((uint64_t)x18 * x10)))))));
- uint64_t x40 = ((((uint64_t)(x8 + x26) * (x18 + x33)) + (((uint64_t)(x10 + x28) * (x16 + x34)) + (((uint64_t)(x12 + x30) * (x14 + x32)) + (((uint64_t)(x14 + x32) * (x12 + x30)) + (((uint64_t)(x16 + x34) * (x10 + x28)) + ((uint64_t)(x18 + x33) * (x8 + x26))))))) - (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x18 * x8)))))));
- uint64_t x41 = (((0x2 * ((uint64_t)(x6 + x24) * (x18 + x33))) + (((uint64_t)(x8 + x26) * (x16 + x34)) + (((uint64_t)(x10 + x28) * (x14 + x32)) + ((0x2 * ((uint64_t)(x12 + x30) * (x12 + x30))) + (((uint64_t)(x14 + x32) * (x10 + x28)) + (((uint64_t)(x16 + x34) * (x8 + x26)) + (0x2 * ((uint64_t)(x18 + x33) * (x6 + x24))))))))) - ((0x2 * ((uint64_t)x6 * x18)) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (0x2 * ((uint64_t)x18 * x6)))))))));
- uint64_t x42 = (((0x2 * ((uint64_t)(x4 + x22) * (x18 + x33))) + ((0x2 * ((uint64_t)(x6 + x24) * (x16 + x34))) + (((uint64_t)(x8 + x26) * (x14 + x32)) + ((0x2 * ((uint64_t)(x10 + x28) * (x12 + x30))) + ((0x2 * ((uint64_t)(x12 + x30) * (x10 + x28))) + (((uint64_t)(x14 + x32) * (x8 + x26)) + ((0x2 * ((uint64_t)(x16 + x34) * (x6 + x24))) + (0x2 * ((uint64_t)(x18 + x33) * (x4 + x22)))))))))) - ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x18 * x4))))))))));
- uint64_t x43 = ((((uint64_t)(x2 + x20) * (x18 + x33)) + (((uint64_t)(x4 + x22) * (x16 + x34)) + (((uint64_t)(x6 + x24) * (x14 + x32)) + (((uint64_t)(x8 + x26) * (x12 + x30)) + (((uint64_t)(x10 + x28) * (x10 + x28)) + (((uint64_t)(x12 + x30) * (x8 + x26)) + (((uint64_t)(x14 + x32) * (x6 + x24)) + (((uint64_t)(x16 + x34) * (x4 + x22)) + ((uint64_t)(x18 + x33) * (x2 + x20)))))))))) - (((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))));
- uint64_t x44 = ((((uint64_t)(x2 + x20) * (x16 + x34)) + (((uint64_t)(x4 + x22) * (x14 + x32)) + ((0x2 * ((uint64_t)(x6 + x24) * (x12 + x30))) + (((uint64_t)(x8 + x26) * (x10 + x28)) + (((uint64_t)(x10 + x28) * (x8 + x26)) + ((0x2 * ((uint64_t)(x12 + x30) * (x6 + x24))) + (((uint64_t)(x14 + x32) * (x4 + x22)) + ((uint64_t)(x16 + x34) * (x2 + x20))))))))) - (((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))));
- uint64_t x45 = ((((uint64_t)(x2 + x20) * (x14 + x32)) + ((0x2 * ((uint64_t)(x4 + x22) * (x12 + x30))) + ((0x2 * ((uint64_t)(x6 + x24) * (x10 + x28))) + (((uint64_t)(x8 + x26) * (x8 + x26)) + ((0x2 * ((uint64_t)(x10 + x28) * (x6 + x24))) + ((0x2 * ((uint64_t)(x12 + x30) * (x4 + x22))) + ((uint64_t)(x14 + x32) * (x2 + x20)))))))) - (((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))));
- uint64_t x46 = ((((uint64_t)(x2 + x20) * (x12 + x30)) + (((uint64_t)(x4 + x22) * (x10 + x28)) + (((uint64_t)(x6 + x24) * (x8 + x26)) + (((uint64_t)(x8 + x26) * (x6 + x24)) + (((uint64_t)(x10 + x28) * (x4 + x22)) + ((uint64_t)(x12 + x30) * (x2 + x20))))))) - (((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))));
- uint64_t x47 = ((((uint64_t)(x2 + x20) * (x10 + x28)) + (((uint64_t)(x4 + x22) * (x8 + x26)) + ((0x2 * ((uint64_t)(x6 + x24) * (x6 + x24))) + (((uint64_t)(x8 + x26) * (x4 + x22)) + ((uint64_t)(x10 + x28) * (x2 + x20)))))) - (((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))));
- uint64_t x48 = ((((uint64_t)(x2 + x20) * (x8 + x26)) + ((0x2 * ((uint64_t)(x4 + x22) * (x6 + x24))) + ((0x2 * ((uint64_t)(x6 + x24) * (x4 + x22))) + ((uint64_t)(x8 + x26) * (x2 + x20))))) - (((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))));
- uint64_t x49 = ((((uint64_t)(x2 + x20) * (x6 + x24)) + (((uint64_t)(x4 + x22) * (x4 + x22)) + ((uint64_t)(x6 + x24) * (x2 + x20)))) - (((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))));
- uint64_t x50 = ((((uint64_t)(x2 + x20) * (x4 + x22)) + ((uint64_t)(x4 + x22) * (x2 + x20))) - (((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)));
- uint64_t x51 = (((uint64_t)(x2 + x20) * (x2 + x20)) - ((uint64_t)x2 * x2));
- uint64_t x52 = ((((0x2 * ((uint64_t)x18 * x18)) + (0x2 * ((uint64_t)x33 * x33))) + x44) + x35);
- uint64_t x53 = (((((0x2 * ((uint64_t)x16 * x18)) + (0x2 * ((uint64_t)x18 * x16))) + ((0x2 * ((uint64_t)x34 * x33)) + (0x2 * ((uint64_t)x33 * x34)))) + x45) + x36);
- uint64_t x54 = ((((((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + ((uint64_t)x18 * x14))) + (((uint64_t)x32 * x33) + (((uint64_t)x34 * x34) + ((uint64_t)x33 * x32)))) + x46) + x37);
- uint64_t x55 = (((((0x2 * ((uint64_t)x12 * x18)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (0x2 * ((uint64_t)x18 * x12))))) + ((0x2 * ((uint64_t)x30 * x33)) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + (0x2 * ((uint64_t)x33 * x30)))))) + x47) + x38);
- uint64_t x56 = (((((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (0x2 * ((uint64_t)x18 * x10)))))) + ((0x2 * ((uint64_t)x28 * x33)) + ((0x2 * ((uint64_t)x30 * x34)) + (((uint64_t)x32 * x32) + ((0x2 * ((uint64_t)x34 * x30)) + (0x2 * ((uint64_t)x33 * x28))))))) + x48) + x39);
- uint64_t x57 = ((((((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((uint64_t)x18 * x8)))))) + (((uint64_t)x26 * x33) + (((uint64_t)x28 * x34) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + (((uint64_t)x34 * x28) + ((uint64_t)x33 * x26))))))) + x49) + x40);
- uint64_t x58 = (((((0x2 * ((uint64_t)x6 * x18)) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (0x2 * ((uint64_t)x18 * x6)))))))) + ((0x2 * ((uint64_t)x24 * x33)) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + (0x2 * ((uint64_t)x33 * x24))))))))) + x50) + x41);
- uint64_t x59 = (((((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + (0x2 * ((uint64_t)x18 * x4))))))))) + ((0x2 * ((uint64_t)x22 * x33)) + ((0x2 * ((uint64_t)x24 * x34)) + (((uint64_t)x26 * x32) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + (((uint64_t)x32 * x26) + ((0x2 * ((uint64_t)x34 * x24)) + (0x2 * ((uint64_t)x33 * x22)))))))))) + x51) + x42);
- uint64_t x60 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (((uint64_t)x20 * x33) + (((uint64_t)x22 * x34) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + (((uint64_t)x34 * x22) + ((uint64_t)x33 * x20))))))))));
- uint64_t x61 = (((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (((uint64_t)x20 * x34) + (((uint64_t)x22 * x32) + ((0x2 * ((uint64_t)x24 * x30)) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + ((0x2 * ((uint64_t)x30 * x24)) + (((uint64_t)x32 * x22) + ((uint64_t)x34 * x20))))))))) + x35);
- uint64_t x62 = (((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (((uint64_t)x20 * x32) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + (((uint64_t)x26 * x26) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + ((uint64_t)x32 * x20)))))))) + x36);
- uint64_t x63 = (((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + ((uint64_t)x30 * x20))))))) + x37);
- uint64_t x64 = (((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + ((0x2 * ((uint64_t)x24 * x24)) + (((uint64_t)x26 * x22) + ((uint64_t)x28 * x20)))))) + x38);
- uint64_t x65 = (((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (((uint64_t)x20 * x26) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + ((uint64_t)x26 * x20))))) + x39);
- uint64_t x66 = (((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (((uint64_t)x20 * x24) + (((uint64_t)x22 * x22) + ((uint64_t)x24 * x20)))) + x40);
- uint64_t x67 = (((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x20 * x22) + ((uint64_t)x22 * x20))) + x41);
- uint64_t x68 = ((((uint64_t)x2 * x2) + ((uint64_t)x20 * x20)) + x42);
- uint64_t x69 = (x60 >> 0x1a);
- uint32_t x70 = ((uint32_t)x60 & 0x3ffffff);
- uint64_t x71 = (x43 >> 0x1a);
- uint32_t x72 = ((uint32_t)x43 & 0x3ffffff);
- uint64_t x73 = ((0x4000000 * x71) + x72);
- uint64_t x74 = (x73 >> 0x1a);
- uint32_t x75 = ((uint32_t)x73 & 0x3ffffff);
- uint64_t x76 = ((x69 + x59) + x74);
- uint64_t x77 = (x76 >> 0x1b);
- uint32_t x78 = ((uint32_t)x76 & 0x7ffffff);
- uint64_t x79 = (x68 + x74);
- uint64_t x80 = (x79 >> 0x1b);
- uint32_t x81 = ((uint32_t)x79 & 0x7ffffff);
- uint64_t x82 = (x77 + x58);
- uint64_t x83 = (x82 >> 0x1b);
- uint32_t x84 = ((uint32_t)x82 & 0x7ffffff);
- uint64_t x85 = (x80 + x67);
- uint64_t x86 = (x85 >> 0x1b);
- uint32_t x87 = ((uint32_t)x85 & 0x7ffffff);
- uint64_t x88 = (x83 + x57);
- uint64_t x89 = (x88 >> 0x1a);
- uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- uint64_t x91 = (x86 + x66);
- uint64_t x92 = (x91 >> 0x1a);
- uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- uint64_t x94 = (x89 + x56);
- uint64_t x95 = (x94 >> 0x1b);
- uint32_t x96 = ((uint32_t)x94 & 0x7ffffff);
- uint64_t x97 = (x92 + x65);
- uint64_t x98 = (x97 >> 0x1b);
- uint32_t x99 = ((uint32_t)x97 & 0x7ffffff);
- uint64_t x100 = (x95 + x55);
- uint64_t x101 = (x100 >> 0x1b);
- uint32_t x102 = ((uint32_t)x100 & 0x7ffffff);
- uint64_t x103 = (x98 + x64);
- uint64_t x104 = (x103 >> 0x1b);
- uint32_t x105 = ((uint32_t)x103 & 0x7ffffff);
- uint64_t x106 = (x101 + x54);
- uint64_t x107 = (x106 >> 0x1a);
- uint32_t x108 = ((uint32_t)x106 & 0x3ffffff);
- uint64_t x109 = (x104 + x63);
- uint64_t x110 = (x109 >> 0x1a);
- uint32_t x111 = ((uint32_t)x109 & 0x3ffffff);
- uint64_t x112 = (x107 + x53);
- uint64_t x113 = (x112 >> 0x1b);
- uint32_t x114 = ((uint32_t)x112 & 0x7ffffff);
- uint64_t x115 = (x110 + x62);
- uint64_t x116 = (x115 >> 0x1b);
- uint32_t x117 = ((uint32_t)x115 & 0x7ffffff);
- uint64_t x118 = (x113 + x52);
- uint64_t x119 = (x118 >> 0x1b);
- uint32_t x120 = ((uint32_t)x118 & 0x7ffffff);
- uint64_t x121 = (x116 + x61);
- uint64_t x122 = (x121 >> 0x1b);
- uint32_t x123 = ((uint32_t)x121 & 0x7ffffff);
- uint64_t x124 = (x119 + x75);
- uint32_t x125 = (uint32_t) (x124 >> 0x1a);
- uint32_t x126 = ((uint32_t)x124 & 0x3ffffff);
- uint64_t x127 = (x122 + x70);
- uint32_t x128 = (uint32_t) (x127 >> 0x1a);
- uint32_t x129 = ((uint32_t)x127 & 0x3ffffff);
- uint64_t x130 = (((uint64_t)0x4000000 * x125) + x126);
- uint32_t x131 = (uint32_t) (x130 >> 0x1a);
- uint32_t x132 = ((uint32_t)x130 & 0x3ffffff);
- uint32_t x133 = ((x128 + x78) + x131);
- uint32_t x134 = (x133 >> 0x1b);
- uint32_t x135 = (x133 & 0x7ffffff);
- uint32_t x136 = (x81 + x131);
- uint32_t x137 = (x136 >> 0x1b);
- uint32_t x138 = (x136 & 0x7ffffff);
- return (Return x132, Return x120, Return x114, Return x108, Return x102, Return x96, Return x90, (x134 + x84), Return x135, Return x129, Return x123, Return x117, Return x111, Return x105, Return x99, Return x93, (x137 + x87), Return x138))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e480m2e240m1_18limbs/fesquareDisplay.v b/src/Specific/solinas32_2e480m2e240m1_18limbs/fesquareDisplay.v
deleted file mode 100644
index 0ae9c2e4d..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_18limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e480m2e240m1_18limbs/fesub.c b/src/Specific/solinas32_2e480m2e240m1_18limbs/fesub.c
deleted file mode 100644
index 034ac8f56..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/fesub.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void fesub(uint32_t out[18], const uint32_t in1[18], const uint32_t in2[18]) {
- { const uint32_t x36 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x70 = in2[17];
- { const uint32_t x71 = in2[16];
- { const uint32_t x69 = in2[15];
- { const uint32_t x67 = in2[14];
- { const uint32_t x65 = in2[13];
- { const uint32_t x63 = in2[12];
- { const uint32_t x61 = in2[11];
- { const uint32_t x59 = in2[10];
- { const uint32_t x57 = in2[9];
- { const uint32_t x55 = in2[8];
- { const uint32_t x53 = in2[7];
- { const uint32_t x51 = in2[6];
- { const uint32_t x49 = in2[5];
- { const uint32_t x47 = in2[4];
- { const uint32_t x45 = in2[3];
- { const uint32_t x43 = in2[2];
- { const uint32_t x41 = in2[1];
- { const uint32_t x39 = in2[0];
- out[0] = ((0xffffffe + x5) - x39);
- out[1] = ((0xffffffe + x7) - x41);
- out[2] = ((0x7fffffe + x9) - x43);
- out[3] = ((0xffffffe + x11) - x45);
- out[4] = ((0xffffffe + x13) - x47);
- out[5] = ((0x7fffffe + x15) - x49);
- out[6] = ((0xffffffe + x17) - x51);
- out[7] = ((0xffffffe + x19) - x53);
- out[8] = ((0x7fffffe + x21) - x55);
- out[9] = ((0xffffffc + x23) - x57);
- out[10] = ((0xffffffe + x25) - x59);
- out[11] = ((0x7fffffe + x27) - x61);
- out[12] = ((0xffffffe + x29) - x63);
- out[13] = ((0xffffffe + x31) - x65);
- out[14] = ((0x7fffffe + x33) - x67);
- out[15] = ((0xffffffe + x35) - x69);
- out[16] = ((0xffffffe + x37) - x71);
- out[17] = ((0x7fffffe + x36) - x70);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e480m2e240m1_18limbs/fesub.v b/src/Specific/solinas32_2e480m2e240m1_18limbs/fesub.v
deleted file mode 100644
index 80cf7cd2e..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_18limbs.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_2e480m2e240m1_18limbs/fesubDisplay.log b/src/Specific/solinas32_2e480m2e240m1_18limbs/fesubDisplay.log
deleted file mode 100644
index ab9498c56..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x36, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x70, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41, x39))%core,
- (((0x7fffffe + x36) - x70), ((0xffffffe + x37) - x71), ((0xffffffe + x35) - x69), ((0x7fffffe + x33) - x67), ((0xffffffe + x31) - x65), ((0xffffffe + x29) - x63), ((0x7fffffe + x27) - x61), ((0xffffffe + x25) - x59), ((0xffffffc + x23) - x57), ((0x7fffffe + x21) - x55), ((0xffffffe + x19) - x53), ((0xffffffe + x17) - x51), ((0x7fffffe + x15) - x49), ((0xffffffe + x13) - x47), ((0xffffffe + x11) - x45), ((0x7fffffe + x9) - x43), ((0xffffffe + x7) - x41), ((0xffffffe + x5) - x39)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e480m2e240m1_18limbs/fesubDisplay.v b/src/Specific/solinas32_2e480m2e240m1_18limbs/fesubDisplay.v
deleted file mode 100644
index c289d8d63..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_18limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e480m2e240m1_18limbs/freeze.c b/src/Specific/solinas32_2e480m2e240m1_18limbs/freeze.c
deleted file mode 100644
index 893a6ba35..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/freeze.c
+++ /dev/null
@@ -1,94 +0,0 @@
-static void freeze(uint32_t out[18], const uint32_t in1[18]) {
- { const uint32_t x33 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffff);
- { uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x4, 0x7ffffff);
- { uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x6, 0x3ffffff);
- { uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x8, 0x7ffffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x10, 0x7ffffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x12, 0x3ffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x14, 0x7ffffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x16, 0x7ffffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x18, 0x3ffffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x20, 0x7fffffe);
- { uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x22, 0x7ffffff);
- { uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x24, 0x3ffffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x26, 0x7ffffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x28, 0x7ffffff);
- { uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x30, 0x3ffffff);
- { uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x32, 0x7ffffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x34, 0x7ffffff);
- { uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x33, 0x3ffffff);
- { uint32_t x89 = cmovznz32(x88, 0x0, 0xffffffff);
- { uint32_t x90 = (x89 & 0x7ffffff);
- { uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x36, Return x90);
- { uint32_t x94 = (x89 & 0x7ffffff);
- { uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x39, Return x94);
- { uint32_t x98 = (x89 & 0x3ffffff);
- { uint32_t x100, uint8_t x101 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x42, Return x98);
- { uint32_t x102 = (x89 & 0x7ffffff);
- { uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x45, Return x102);
- { uint32_t x106 = (x89 & 0x7ffffff);
- { uint32_t x108, uint8_t x109 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x48, Return x106);
- { uint32_t x110 = (x89 & 0x3ffffff);
- { uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x51, Return x110);
- { uint32_t x114 = (x89 & 0x7ffffff);
- { uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x54, Return x114);
- { uint32_t x118 = (x89 & 0x7ffffff);
- { uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x57, Return x118);
- { uint32_t x122 = (x89 & 0x3ffffff);
- { uint32_t x124, uint8_t x125 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x60, Return x122);
- { uint32_t x126 = (x89 & 0x7fffffe);
- { uint32_t x128, uint8_t x129 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x125, Return x63, Return x126);
- { uint32_t x130 = (x89 & 0x7ffffff);
- { uint32_t x132, uint8_t x133 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x129, Return x66, Return x130);
- { uint32_t x134 = (x89 & 0x3ffffff);
- { uint32_t x136, uint8_t x137 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x133, Return x69, Return x134);
- { uint32_t x138 = (x89 & 0x7ffffff);
- { uint32_t x140, uint8_t x141 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x137, Return x72, Return x138);
- { uint32_t x142 = (x89 & 0x7ffffff);
- { uint32_t x144, uint8_t x145 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x141, Return x75, Return x142);
- { uint32_t x146 = (x89 & 0x3ffffff);
- { uint32_t x148, uint8_t x149 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x145, Return x78, Return x146);
- { uint32_t x150 = (x89 & 0x7ffffff);
- { uint32_t x152, uint8_t x153 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x149, Return x81, Return x150);
- { uint32_t x154 = (x89 & 0x7ffffff);
- { uint32_t x156, uint8_t x157 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x153, Return x84, Return x154);
- { uint32_t x158 = (x89 & 0x3ffffff);
- { uint32_t x160, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x157, Return x87, Return x158);
- out[0] = x92;
- out[1] = x96;
- out[2] = x100;
- out[3] = x104;
- out[4] = x108;
- out[5] = x112;
- out[6] = x116;
- out[7] = x120;
- out[8] = x124;
- out[9] = x128;
- out[10] = x132;
- out[11] = x136;
- out[12] = x140;
- out[13] = x144;
- out[14] = x148;
- out[15] = x152;
- out[16] = x156;
- out[17] = x160;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e480m2e240m1_18limbs/freeze.v b/src/Specific/solinas32_2e480m2e240m1_18limbs/freeze.v
deleted file mode 100644
index a9aa0bf7f..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_18limbs.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_2e480m2e240m1_18limbs/freezeDisplay.log b/src/Specific/solinas32_2e480m2e240m1_18limbs/freezeDisplay.log
deleted file mode 100644
index 75988f109..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/freezeDisplay.log
+++ /dev/null
@@ -1,62 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x33, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffff);
- uint32_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x37, Return x4, 0x7ffffff);
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x40, Return x6, 0x3ffffff);
- uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x8, 0x7ffffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x10, 0x7ffffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x12, 0x3ffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x14, 0x7ffffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x16, 0x7ffffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x18, 0x3ffffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x20, 0x7fffffe);
- uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x22, 0x7ffffff);
- uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x24, 0x3ffffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x26, 0x7ffffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x28, 0x7ffffff);
- uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x30, 0x3ffffff);
- uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x32, 0x7ffffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x34, 0x7ffffff);
- uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x33, 0x3ffffff);
- uint32_t x89 = cmovznz32(x88, 0x0, 0xffffffff);
- uint32_t x90 = (x89 & 0x7ffffff);
- uint32_t x92, uint8_t x93 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x36, Return x90);
- uint32_t x94 = (x89 & 0x7ffffff);
- uint32_t x96, uint8_t x97 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x39, Return x94);
- uint32_t x98 = (x89 & 0x3ffffff);
- uint32_t x100, uint8_t x101 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x42, Return x98);
- uint32_t x102 = (x89 & 0x7ffffff);
- uint32_t x104, uint8_t x105 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x45, Return x102);
- uint32_t x106 = (x89 & 0x7ffffff);
- uint32_t x108, uint8_t x109 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x48, Return x106);
- uint32_t x110 = (x89 & 0x3ffffff);
- uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x51, Return x110);
- uint32_t x114 = (x89 & 0x7ffffff);
- uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x54, Return x114);
- uint32_t x118 = (x89 & 0x7ffffff);
- uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x57, Return x118);
- uint32_t x122 = (x89 & 0x3ffffff);
- uint32_t x124, uint8_t x125 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x60, Return x122);
- uint32_t x126 = (x89 & 0x7fffffe);
- uint32_t x128, uint8_t x129 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x125, Return x63, Return x126);
- uint32_t x130 = (x89 & 0x7ffffff);
- uint32_t x132, uint8_t x133 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x129, Return x66, Return x130);
- uint32_t x134 = (x89 & 0x3ffffff);
- uint32_t x136, uint8_t x137 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x133, Return x69, Return x134);
- uint32_t x138 = (x89 & 0x7ffffff);
- uint32_t x140, uint8_t x141 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x137, Return x72, Return x138);
- uint32_t x142 = (x89 & 0x7ffffff);
- uint32_t x144, uint8_t x145 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x141, Return x75, Return x142);
- uint32_t x146 = (x89 & 0x3ffffff);
- uint32_t x148, uint8_t x149 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x145, Return x78, Return x146);
- uint32_t x150 = (x89 & 0x7ffffff);
- uint32_t x152, uint8_t x153 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x149, Return x81, Return x150);
- uint32_t x154 = (x89 & 0x7ffffff);
- uint32_t x156, uint8_t x157 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x153, Return x84, Return x154);
- uint32_t x158 = (x89 & 0x3ffffff);
- uint32_t x160, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x157, Return x87, Return x158);
- (Return x160, Return x156, Return x152, Return x148, Return x144, Return x140, Return x136, Return x132, Return x128, Return x124, Return x120, Return x116, Return x112, Return x108, Return x104, Return x100, Return x96, Return x92))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e480m2e240m1_18limbs/freezeDisplay.v b/src/Specific/solinas32_2e480m2e240m1_18limbs/freezeDisplay.v
deleted file mode 100644
index 6541480e4..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_18limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e480m2e240m1_18limbs/py_interpreter.sh b/src/Specific/solinas32_2e480m2e240m1_18limbs/py_interpreter.sh
deleted file mode 100755
index b421c17d5..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_18limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**480 - 2**240 - 1' -Dmodulus_bytes='26 + 2/3' -Da24='121665'
diff --git a/src/Specific/solinas32_2e480m2e240m1_20limbs/CurveParameters.v b/src/Specific/solinas32_2e480m2e240m1_20limbs/CurveParameters.v
deleted file mode 100644
index 1dce74bff..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^480 - 2^240 - 1
-Base: 24
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 20%nat;
- base := 24;
- bitwidth := 32;
- s := 2^480;
- c := [(1, 1); (2^240, 1)];
- carry_chains := Some [[9; 19]; [10; 0; 11; 1; 12; 2; 13; 3; 14; 4; 15; 5; 16; 6; 17; 7; 18; 8; 19; 9]; [10; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- 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_2e480m2e240m1_20limbs/Synthesis.v b/src/Specific/solinas32_2e480m2e240m1_20limbs/Synthesis.v
deleted file mode 100644
index c50903bf2..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_20limbs.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_2e480m2e240m1_20limbs/compiler.sh b/src/Specific/solinas32_2e480m2e240m1_20limbs/compiler.sh
deleted file mode 100755
index 25813e401..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='60' -Dmodulus_limbs='20' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1' "$@"
diff --git a/src/Specific/solinas32_2e480m2e240m1_20limbs/compilerxx.sh b/src/Specific/solinas32_2e480m2e240m1_20limbs/compilerxx.sh
deleted file mode 100755
index 3ca1549fb..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='60' -Dmodulus_limbs='20' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1' "$@"
diff --git a/src/Specific/solinas32_2e480m2e240m1_20limbs/feadd.c b/src/Specific/solinas32_2e480m2e240m1_20limbs/feadd.c
deleted file mode 100644
index 28ee6f665..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/feadd.c
+++ /dev/null
@@ -1,63 +0,0 @@
-static void feadd(uint32_t out[20], const uint32_t in1[20], const uint32_t in2[20]) {
- { const uint32_t x40 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x78 = in2[19];
- { const uint32_t x79 = in2[18];
- { const uint32_t x77 = in2[17];
- { const uint32_t x75 = in2[16];
- { const uint32_t x73 = in2[15];
- { const uint32_t x71 = in2[14];
- { const uint32_t x69 = in2[13];
- { const uint32_t x67 = in2[12];
- { const uint32_t x65 = in2[11];
- { const uint32_t x63 = in2[10];
- { const uint32_t x61 = in2[9];
- { const uint32_t x59 = in2[8];
- { const uint32_t x57 = in2[7];
- { const uint32_t x55 = in2[6];
- { const uint32_t x53 = in2[5];
- { const uint32_t x51 = in2[4];
- { const uint32_t x49 = in2[3];
- { const uint32_t x47 = in2[2];
- { const uint32_t x45 = in2[1];
- { const uint32_t x43 = in2[0];
- out[0] = (x5 + x43);
- out[1] = (x7 + x45);
- out[2] = (x9 + x47);
- out[3] = (x11 + x49);
- out[4] = (x13 + x51);
- out[5] = (x15 + x53);
- out[6] = (x17 + x55);
- out[7] = (x19 + x57);
- out[8] = (x21 + x59);
- out[9] = (x23 + x61);
- out[10] = (x25 + x63);
- out[11] = (x27 + x65);
- out[12] = (x29 + x67);
- out[13] = (x31 + x69);
- out[14] = (x33 + x71);
- out[15] = (x35 + x73);
- out[16] = (x37 + x75);
- out[17] = (x39 + x77);
- out[18] = (x41 + x79);
- out[19] = (x40 + x78);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e480m2e240m1_20limbs/feadd.v b/src/Specific/solinas32_2e480m2e240m1_20limbs/feadd.v
deleted file mode 100644
index 018912fdb..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_20limbs.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_2e480m2e240m1_20limbs/feaddDisplay.log b/src/Specific/solinas32_2e480m2e240m1_20limbs/feaddDisplay.log
deleted file mode 100644
index eebe17777..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x40, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x78, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43))%core,
- ((x40 + x78), (x41 + x79), (x39 + x77), (x37 + x75), (x35 + x73), (x33 + x71), (x31 + x69), (x29 + x67), (x27 + x65), (x25 + x63), (x23 + x61), (x21 + x59), (x19 + x57), (x17 + x55), (x15 + x53), (x13 + x51), (x11 + x49), (x9 + x47), (x7 + x45), (x5 + x43)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e480m2e240m1_20limbs/feaddDisplay.v b/src/Specific/solinas32_2e480m2e240m1_20limbs/feaddDisplay.v
deleted file mode 100644
index 36c44209c..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_20limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e480m2e240m1_20limbs/fecarry.v b/src/Specific/solinas32_2e480m2e240m1_20limbs/fecarry.v
deleted file mode 100644
index 5a98bc2ae..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_20limbs.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_2e480m2e240m1_20limbs/fecarryDisplay.v b/src/Specific/solinas32_2e480m2e240m1_20limbs/fecarryDisplay.v
deleted file mode 100644
index de52f61f9..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_20limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e480m2e240m1_20limbs/femul.v b/src/Specific/solinas32_2e480m2e240m1_20limbs/femul.v
deleted file mode 100644
index 00636b95a..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_20limbs.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_2e480m2e240m1_20limbs/femulDisplay.v b/src/Specific/solinas32_2e480m2e240m1_20limbs/femulDisplay.v
deleted file mode 100644
index 73745e82a..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_20limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e480m2e240m1_20limbs/fesquare.c b/src/Specific/solinas32_2e480m2e240m1_20limbs/fesquare.c
deleted file mode 100644
index 599462a50..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/fesquare.c
+++ /dev/null
@@ -1,157 +0,0 @@
-static void fesquare(uint32_t out[20], const uint32_t in1[20]) {
- { const uint32_t x37 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x39 = (((uint64_t)(x20 + x37) * (x20 + x37)) - ((uint64_t)x20 * x20));
- { uint64_t x40 = ((((uint64_t)(x18 + x38) * (x20 + x37)) + ((uint64_t)(x20 + x37) * (x18 + x38))) - (((uint64_t)x18 * x20) + ((uint64_t)x20 * x18)));
- { uint64_t x41 = ((((uint64_t)(x16 + x36) * (x20 + x37)) + (((uint64_t)(x18 + x38) * (x18 + x38)) + ((uint64_t)(x20 + x37) * (x16 + x36)))) - (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + ((uint64_t)x20 * x16))));
- { uint64_t x42 = ((((uint64_t)(x14 + x34) * (x20 + x37)) + (((uint64_t)(x16 + x36) * (x18 + x38)) + (((uint64_t)(x18 + x38) * (x16 + x36)) + ((uint64_t)(x20 + x37) * (x14 + x34))))) - (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((uint64_t)x20 * x14)))));
- { uint64_t x43 = ((((uint64_t)(x12 + x32) * (x20 + x37)) + (((uint64_t)(x14 + x34) * (x18 + x38)) + (((uint64_t)(x16 + x36) * (x16 + x36)) + (((uint64_t)(x18 + x38) * (x14 + x34)) + ((uint64_t)(x20 + x37) * (x12 + x32)))))) - (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + ((uint64_t)x20 * x12))))));
- { uint64_t x44 = ((((uint64_t)(x10 + x30) * (x20 + x37)) + (((uint64_t)(x12 + x32) * (x18 + x38)) + (((uint64_t)(x14 + x34) * (x16 + x36)) + (((uint64_t)(x16 + x36) * (x14 + x34)) + (((uint64_t)(x18 + x38) * (x12 + x32)) + ((uint64_t)(x20 + x37) * (x10 + x30))))))) - (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + ((uint64_t)x20 * x10)))))));
- { uint64_t x45 = ((((uint64_t)(x8 + x28) * (x20 + x37)) + (((uint64_t)(x10 + x30) * (x18 + x38)) + (((uint64_t)(x12 + x32) * (x16 + x36)) + (((uint64_t)(x14 + x34) * (x14 + x34)) + (((uint64_t)(x16 + x36) * (x12 + x32)) + (((uint64_t)(x18 + x38) * (x10 + x30)) + ((uint64_t)(x20 + x37) * (x8 + x28)))))))) - (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((uint64_t)x20 * x8))))))));
- { uint64_t x46 = ((((uint64_t)(x6 + x26) * (x20 + x37)) + (((uint64_t)(x8 + x28) * (x18 + x38)) + (((uint64_t)(x10 + x30) * (x16 + x36)) + (((uint64_t)(x12 + x32) * (x14 + x34)) + (((uint64_t)(x14 + x34) * (x12 + x32)) + (((uint64_t)(x16 + x36) * (x10 + x30)) + (((uint64_t)(x18 + x38) * (x8 + x28)) + ((uint64_t)(x20 + x37) * (x6 + x26))))))))) - (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((uint64_t)x20 * x6)))))))));
- { uint64_t x47 = ((((uint64_t)(x4 + x24) * (x20 + x37)) + (((uint64_t)(x6 + x26) * (x18 + x38)) + (((uint64_t)(x8 + x28) * (x16 + x36)) + (((uint64_t)(x10 + x30) * (x14 + x34)) + (((uint64_t)(x12 + x32) * (x12 + x32)) + (((uint64_t)(x14 + x34) * (x10 + x30)) + (((uint64_t)(x16 + x36) * (x8 + x28)) + (((uint64_t)(x18 + x38) * (x6 + x26)) + ((uint64_t)(x20 + x37) * (x4 + x24)))))))))) - (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + ((uint64_t)x20 * x4))))))))));
- { uint64_t x48 = ((((uint64_t)(x2 + x22) * (x20 + x37)) + (((uint64_t)(x4 + x24) * (x18 + x38)) + (((uint64_t)(x6 + x26) * (x16 + x36)) + (((uint64_t)(x8 + x28) * (x14 + x34)) + (((uint64_t)(x10 + x30) * (x12 + x32)) + (((uint64_t)(x12 + x32) * (x10 + x30)) + (((uint64_t)(x14 + x34) * (x8 + x28)) + (((uint64_t)(x16 + x36) * (x6 + x26)) + (((uint64_t)(x18 + x38) * (x4 + x24)) + ((uint64_t)(x20 + x37) * (x2 + x22))))))))))) - (((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))));
- { uint64_t x49 = ((((uint64_t)(x2 + x22) * (x18 + x38)) + (((uint64_t)(x4 + x24) * (x16 + x36)) + (((uint64_t)(x6 + x26) * (x14 + x34)) + (((uint64_t)(x8 + x28) * (x12 + x32)) + (((uint64_t)(x10 + x30) * (x10 + x30)) + (((uint64_t)(x12 + x32) * (x8 + x28)) + (((uint64_t)(x14 + x34) * (x6 + x26)) + (((uint64_t)(x16 + x36) * (x4 + x24)) + ((uint64_t)(x18 + x38) * (x2 + x22)))))))))) - (((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))));
- { uint64_t x50 = ((((uint64_t)(x2 + x22) * (x16 + x36)) + (((uint64_t)(x4 + x24) * (x14 + x34)) + (((uint64_t)(x6 + x26) * (x12 + x32)) + (((uint64_t)(x8 + x28) * (x10 + x30)) + (((uint64_t)(x10 + x30) * (x8 + x28)) + (((uint64_t)(x12 + x32) * (x6 + x26)) + (((uint64_t)(x14 + x34) * (x4 + x24)) + ((uint64_t)(x16 + x36) * (x2 + x22))))))))) - (((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))));
- { uint64_t x51 = ((((uint64_t)(x2 + x22) * (x14 + x34)) + (((uint64_t)(x4 + x24) * (x12 + x32)) + (((uint64_t)(x6 + x26) * (x10 + x30)) + (((uint64_t)(x8 + x28) * (x8 + x28)) + (((uint64_t)(x10 + x30) * (x6 + x26)) + (((uint64_t)(x12 + x32) * (x4 + x24)) + ((uint64_t)(x14 + x34) * (x2 + x22)))))))) - (((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))));
- { uint64_t x52 = ((((uint64_t)(x2 + x22) * (x12 + x32)) + (((uint64_t)(x4 + x24) * (x10 + x30)) + (((uint64_t)(x6 + x26) * (x8 + x28)) + (((uint64_t)(x8 + x28) * (x6 + x26)) + (((uint64_t)(x10 + x30) * (x4 + x24)) + ((uint64_t)(x12 + x32) * (x2 + x22))))))) - (((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))));
- { uint64_t x53 = ((((uint64_t)(x2 + x22) * (x10 + x30)) + (((uint64_t)(x4 + x24) * (x8 + x28)) + (((uint64_t)(x6 + x26) * (x6 + x26)) + (((uint64_t)(x8 + x28) * (x4 + x24)) + ((uint64_t)(x10 + x30) * (x2 + x22)))))) - (((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))));
- { uint64_t x54 = ((((uint64_t)(x2 + x22) * (x8 + x28)) + (((uint64_t)(x4 + x24) * (x6 + x26)) + (((uint64_t)(x6 + x26) * (x4 + x24)) + ((uint64_t)(x8 + x28) * (x2 + x22))))) - (((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))));
- { uint64_t x55 = ((((uint64_t)(x2 + x22) * (x6 + x26)) + (((uint64_t)(x4 + x24) * (x4 + x24)) + ((uint64_t)(x6 + x26) * (x2 + x22)))) - (((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))));
- { uint64_t x56 = ((((uint64_t)(x2 + x22) * (x4 + x24)) + ((uint64_t)(x4 + x24) * (x2 + x22))) - (((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)));
- { uint64_t x57 = (((uint64_t)(x2 + x22) * (x2 + x22)) - ((uint64_t)x2 * x2));
- { uint64_t x58 = (((((uint64_t)x20 * x20) + ((uint64_t)x37 * x37)) + x49) + x39);
- { uint64_t x59 = ((((((uint64_t)x18 * x20) + ((uint64_t)x20 * x18)) + (((uint64_t)x38 * x37) + ((uint64_t)x37 * x38))) + x50) + x40);
- { uint64_t x60 = ((((((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + ((uint64_t)x20 * x16))) + (((uint64_t)x36 * x37) + (((uint64_t)x38 * x38) + ((uint64_t)x37 * x36)))) + x51) + x41);
- { uint64_t x61 = ((((((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((uint64_t)x20 * x14)))) + (((uint64_t)x34 * x37) + (((uint64_t)x36 * x38) + (((uint64_t)x38 * x36) + ((uint64_t)x37 * x34))))) + x52) + x42);
- { uint64_t x62 = ((((((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + ((uint64_t)x20 * x12))))) + (((uint64_t)x32 * x37) + (((uint64_t)x34 * x38) + (((uint64_t)x36 * x36) + (((uint64_t)x38 * x34) + ((uint64_t)x37 * x32)))))) + x53) + x43);
- { uint64_t x63 = ((((((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + ((uint64_t)x20 * x10)))))) + (((uint64_t)x30 * x37) + (((uint64_t)x32 * x38) + (((uint64_t)x34 * x36) + (((uint64_t)x36 * x34) + (((uint64_t)x38 * x32) + ((uint64_t)x37 * x30))))))) + x54) + x44);
- { uint64_t x64 = ((((((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((uint64_t)x20 * x8))))))) + (((uint64_t)x28 * x37) + (((uint64_t)x30 * x38) + (((uint64_t)x32 * x36) + (((uint64_t)x34 * x34) + (((uint64_t)x36 * x32) + (((uint64_t)x38 * x30) + ((uint64_t)x37 * x28)))))))) + x55) + x45);
- { uint64_t x65 = ((((((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((uint64_t)x20 * x6)))))))) + (((uint64_t)x26 * x37) + (((uint64_t)x28 * x38) + (((uint64_t)x30 * x36) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + (((uint64_t)x36 * x30) + (((uint64_t)x38 * x28) + ((uint64_t)x37 * x26))))))))) + x56) + x46);
- { uint64_t x66 = ((((((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + ((uint64_t)x20 * x4))))))))) + (((uint64_t)x24 * x37) + (((uint64_t)x26 * x38) + (((uint64_t)x28 * x36) + (((uint64_t)x30 * x34) + (((uint64_t)x32 * x32) + (((uint64_t)x34 * x30) + (((uint64_t)x36 * x28) + (((uint64_t)x38 * x26) + ((uint64_t)x37 * x24)))))))))) + x57) + x47);
- { uint64_t x67 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (((uint64_t)x22 * x37) + (((uint64_t)x24 * x38) + (((uint64_t)x26 * x36) + (((uint64_t)x28 * x34) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + (((uint64_t)x34 * x28) + (((uint64_t)x36 * x26) + (((uint64_t)x38 * x24) + ((uint64_t)x37 * x22)))))))))));
- { uint64_t x68 = (((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (((uint64_t)x22 * x38) + (((uint64_t)x24 * x36) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + (((uint64_t)x30 * x30) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + (((uint64_t)x36 * x24) + ((uint64_t)x38 * x22)))))))))) + x39);
- { uint64_t x69 = (((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (((uint64_t)x22 * x36) + (((uint64_t)x24 * x34) + (((uint64_t)x26 * x32) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (((uint64_t)x32 * x26) + (((uint64_t)x34 * x24) + ((uint64_t)x36 * x22))))))))) + x40);
- { uint64_t x70 = (((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (((uint64_t)x22 * x34) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + ((uint64_t)x34 * x22)))))))) + x41);
- { uint64_t x71 = (((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (((uint64_t)x22 * x32) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + ((uint64_t)x32 * x22))))))) + x42);
- { uint64_t x72 = (((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + ((uint64_t)x30 * x22)))))) + x43);
- { uint64_t x73 = (((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + ((uint64_t)x28 * x22))))) + x44);
- { uint64_t x74 = (((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + ((uint64_t)x26 * x22)))) + x45);
- { uint64_t x75 = (((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x22 * x24) + ((uint64_t)x24 * x22))) + x46);
- { uint64_t x76 = ((((uint64_t)x2 * x2) + ((uint64_t)x22 * x22)) + x47);
- { uint32_t x77 = (uint32_t) (x67 >> 0x18);
- { uint32_t x78 = ((uint32_t)x67 & 0xffffff);
- { uint64_t x79 = (x48 >> 0x18);
- { uint32_t x80 = ((uint32_t)x48 & 0xffffff);
- { uint64_t x81 = ((0x1000000 * x79) + x80);
- { uint64_t x82 = (x81 >> 0x18);
- { uint32_t x83 = ((uint32_t)x81 & 0xffffff);
- { uint64_t x84 = ((x77 + x66) + x82);
- { uint64_t x85 = (x84 >> 0x18);
- { uint32_t x86 = ((uint32_t)x84 & 0xffffff);
- { uint64_t x87 = (x76 + x82);
- { uint64_t x88 = (x87 >> 0x18);
- { uint32_t x89 = ((uint32_t)x87 & 0xffffff);
- { uint64_t x90 = (x85 + x65);
- { uint64_t x91 = (x90 >> 0x18);
- { uint32_t x92 = ((uint32_t)x90 & 0xffffff);
- { uint64_t x93 = (x88 + x75);
- { uint64_t x94 = (x93 >> 0x18);
- { uint32_t x95 = ((uint32_t)x93 & 0xffffff);
- { uint64_t x96 = (x91 + x64);
- { uint64_t x97 = (x96 >> 0x18);
- { uint32_t x98 = ((uint32_t)x96 & 0xffffff);
- { uint64_t x99 = (x94 + x74);
- { uint64_t x100 = (x99 >> 0x18);
- { uint32_t x101 = ((uint32_t)x99 & 0xffffff);
- { uint64_t x102 = (x97 + x63);
- { uint64_t x103 = (x102 >> 0x18);
- { uint32_t x104 = ((uint32_t)x102 & 0xffffff);
- { uint64_t x105 = (x100 + x73);
- { uint64_t x106 = (x105 >> 0x18);
- { uint32_t x107 = ((uint32_t)x105 & 0xffffff);
- { uint64_t x108 = (x103 + x62);
- { uint64_t x109 = (x108 >> 0x18);
- { uint32_t x110 = ((uint32_t)x108 & 0xffffff);
- { uint64_t x111 = (x106 + x72);
- { uint64_t x112 = (x111 >> 0x18);
- { uint32_t x113 = ((uint32_t)x111 & 0xffffff);
- { uint64_t x114 = (x109 + x61);
- { uint64_t x115 = (x114 >> 0x18);
- { uint32_t x116 = ((uint32_t)x114 & 0xffffff);
- { uint64_t x117 = (x112 + x71);
- { uint64_t x118 = (x117 >> 0x18);
- { uint32_t x119 = ((uint32_t)x117 & 0xffffff);
- { uint64_t x120 = (x115 + x60);
- { uint64_t x121 = (x120 >> 0x18);
- { uint32_t x122 = ((uint32_t)x120 & 0xffffff);
- { uint64_t x123 = (x118 + x70);
- { uint64_t x124 = (x123 >> 0x18);
- { uint32_t x125 = ((uint32_t)x123 & 0xffffff);
- { uint64_t x126 = (x121 + x59);
- { uint64_t x127 = (x126 >> 0x18);
- { uint32_t x128 = ((uint32_t)x126 & 0xffffff);
- { uint64_t x129 = (x124 + x69);
- { uint32_t x130 = (uint32_t) (x129 >> 0x18);
- { uint32_t x131 = ((uint32_t)x129 & 0xffffff);
- { uint64_t x132 = (x127 + x58);
- { uint64_t x133 = (x132 >> 0x18);
- { uint32_t x134 = ((uint32_t)x132 & 0xffffff);
- { uint64_t x135 = (x130 + x68);
- { uint32_t x136 = (uint32_t) (x135 >> 0x18);
- { uint32_t x137 = ((uint32_t)x135 & 0xffffff);
- { uint64_t x138 = (x133 + x83);
- { uint32_t x139 = (uint32_t) (x138 >> 0x18);
- { uint32_t x140 = ((uint32_t)x138 & 0xffffff);
- { uint32_t x141 = (x136 + x78);
- { uint32_t x142 = (x141 >> 0x18);
- { uint32_t x143 = (x141 & 0xffffff);
- { uint64_t x144 = (((uint64_t)0x1000000 * x139) + x140);
- { uint32_t x145 = (uint32_t) (x144 >> 0x18);
- { uint32_t x146 = ((uint32_t)x144 & 0xffffff);
- { uint32_t x147 = ((x142 + x86) + x145);
- { uint32_t x148 = (x147 >> 0x18);
- { uint32_t x149 = (x147 & 0xffffff);
- { uint32_t x150 = (x89 + x145);
- { uint32_t x151 = (x150 >> 0x18);
- { uint32_t x152 = (x150 & 0xffffff);
- out[0] = x152;
- out[1] = (x151 + x95);
- out[2] = x101;
- out[3] = x107;
- out[4] = x113;
- out[5] = x119;
- out[6] = x125;
- out[7] = x131;
- out[8] = x137;
- out[9] = x143;
- out[10] = x149;
- out[11] = (x148 + x92);
- out[12] = x98;
- out[13] = x104;
- out[14] = x110;
- out[15] = x116;
- out[16] = x122;
- out[17] = x128;
- out[18] = x134;
- out[19] = x146;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e480m2e240m1_20limbs/fesquare.v b/src/Specific/solinas32_2e480m2e240m1_20limbs/fesquare.v
deleted file mode 100644
index e2a24f49b..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_20limbs.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_2e480m2e240m1_20limbs/fesquareDisplay.log b/src/Specific/solinas32_2e480m2e240m1_20limbs/fesquareDisplay.log
deleted file mode 100644
index 76084d1c1..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,121 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x37, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x39 = (((uint64_t)(x20 + x37) * (x20 + x37)) - ((uint64_t)x20 * x20));
- uint64_t x40 = ((((uint64_t)(x18 + x38) * (x20 + x37)) + ((uint64_t)(x20 + x37) * (x18 + x38))) - (((uint64_t)x18 * x20) + ((uint64_t)x20 * x18)));
- uint64_t x41 = ((((uint64_t)(x16 + x36) * (x20 + x37)) + (((uint64_t)(x18 + x38) * (x18 + x38)) + ((uint64_t)(x20 + x37) * (x16 + x36)))) - (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + ((uint64_t)x20 * x16))));
- uint64_t x42 = ((((uint64_t)(x14 + x34) * (x20 + x37)) + (((uint64_t)(x16 + x36) * (x18 + x38)) + (((uint64_t)(x18 + x38) * (x16 + x36)) + ((uint64_t)(x20 + x37) * (x14 + x34))))) - (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((uint64_t)x20 * x14)))));
- uint64_t x43 = ((((uint64_t)(x12 + x32) * (x20 + x37)) + (((uint64_t)(x14 + x34) * (x18 + x38)) + (((uint64_t)(x16 + x36) * (x16 + x36)) + (((uint64_t)(x18 + x38) * (x14 + x34)) + ((uint64_t)(x20 + x37) * (x12 + x32)))))) - (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + ((uint64_t)x20 * x12))))));
- uint64_t x44 = ((((uint64_t)(x10 + x30) * (x20 + x37)) + (((uint64_t)(x12 + x32) * (x18 + x38)) + (((uint64_t)(x14 + x34) * (x16 + x36)) + (((uint64_t)(x16 + x36) * (x14 + x34)) + (((uint64_t)(x18 + x38) * (x12 + x32)) + ((uint64_t)(x20 + x37) * (x10 + x30))))))) - (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + ((uint64_t)x20 * x10)))))));
- uint64_t x45 = ((((uint64_t)(x8 + x28) * (x20 + x37)) + (((uint64_t)(x10 + x30) * (x18 + x38)) + (((uint64_t)(x12 + x32) * (x16 + x36)) + (((uint64_t)(x14 + x34) * (x14 + x34)) + (((uint64_t)(x16 + x36) * (x12 + x32)) + (((uint64_t)(x18 + x38) * (x10 + x30)) + ((uint64_t)(x20 + x37) * (x8 + x28)))))))) - (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((uint64_t)x20 * x8))))))));
- uint64_t x46 = ((((uint64_t)(x6 + x26) * (x20 + x37)) + (((uint64_t)(x8 + x28) * (x18 + x38)) + (((uint64_t)(x10 + x30) * (x16 + x36)) + (((uint64_t)(x12 + x32) * (x14 + x34)) + (((uint64_t)(x14 + x34) * (x12 + x32)) + (((uint64_t)(x16 + x36) * (x10 + x30)) + (((uint64_t)(x18 + x38) * (x8 + x28)) + ((uint64_t)(x20 + x37) * (x6 + x26))))))))) - (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((uint64_t)x20 * x6)))))))));
- uint64_t x47 = ((((uint64_t)(x4 + x24) * (x20 + x37)) + (((uint64_t)(x6 + x26) * (x18 + x38)) + (((uint64_t)(x8 + x28) * (x16 + x36)) + (((uint64_t)(x10 + x30) * (x14 + x34)) + (((uint64_t)(x12 + x32) * (x12 + x32)) + (((uint64_t)(x14 + x34) * (x10 + x30)) + (((uint64_t)(x16 + x36) * (x8 + x28)) + (((uint64_t)(x18 + x38) * (x6 + x26)) + ((uint64_t)(x20 + x37) * (x4 + x24)))))))))) - (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + ((uint64_t)x20 * x4))))))))));
- uint64_t x48 = ((((uint64_t)(x2 + x22) * (x20 + x37)) + (((uint64_t)(x4 + x24) * (x18 + x38)) + (((uint64_t)(x6 + x26) * (x16 + x36)) + (((uint64_t)(x8 + x28) * (x14 + x34)) + (((uint64_t)(x10 + x30) * (x12 + x32)) + (((uint64_t)(x12 + x32) * (x10 + x30)) + (((uint64_t)(x14 + x34) * (x8 + x28)) + (((uint64_t)(x16 + x36) * (x6 + x26)) + (((uint64_t)(x18 + x38) * (x4 + x24)) + ((uint64_t)(x20 + x37) * (x2 + x22))))))))))) - (((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))));
- uint64_t x49 = ((((uint64_t)(x2 + x22) * (x18 + x38)) + (((uint64_t)(x4 + x24) * (x16 + x36)) + (((uint64_t)(x6 + x26) * (x14 + x34)) + (((uint64_t)(x8 + x28) * (x12 + x32)) + (((uint64_t)(x10 + x30) * (x10 + x30)) + (((uint64_t)(x12 + x32) * (x8 + x28)) + (((uint64_t)(x14 + x34) * (x6 + x26)) + (((uint64_t)(x16 + x36) * (x4 + x24)) + ((uint64_t)(x18 + x38) * (x2 + x22)))))))))) - (((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))));
- uint64_t x50 = ((((uint64_t)(x2 + x22) * (x16 + x36)) + (((uint64_t)(x4 + x24) * (x14 + x34)) + (((uint64_t)(x6 + x26) * (x12 + x32)) + (((uint64_t)(x8 + x28) * (x10 + x30)) + (((uint64_t)(x10 + x30) * (x8 + x28)) + (((uint64_t)(x12 + x32) * (x6 + x26)) + (((uint64_t)(x14 + x34) * (x4 + x24)) + ((uint64_t)(x16 + x36) * (x2 + x22))))))))) - (((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))));
- uint64_t x51 = ((((uint64_t)(x2 + x22) * (x14 + x34)) + (((uint64_t)(x4 + x24) * (x12 + x32)) + (((uint64_t)(x6 + x26) * (x10 + x30)) + (((uint64_t)(x8 + x28) * (x8 + x28)) + (((uint64_t)(x10 + x30) * (x6 + x26)) + (((uint64_t)(x12 + x32) * (x4 + x24)) + ((uint64_t)(x14 + x34) * (x2 + x22)))))))) - (((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))));
- uint64_t x52 = ((((uint64_t)(x2 + x22) * (x12 + x32)) + (((uint64_t)(x4 + x24) * (x10 + x30)) + (((uint64_t)(x6 + x26) * (x8 + x28)) + (((uint64_t)(x8 + x28) * (x6 + x26)) + (((uint64_t)(x10 + x30) * (x4 + x24)) + ((uint64_t)(x12 + x32) * (x2 + x22))))))) - (((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))));
- uint64_t x53 = ((((uint64_t)(x2 + x22) * (x10 + x30)) + (((uint64_t)(x4 + x24) * (x8 + x28)) + (((uint64_t)(x6 + x26) * (x6 + x26)) + (((uint64_t)(x8 + x28) * (x4 + x24)) + ((uint64_t)(x10 + x30) * (x2 + x22)))))) - (((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))));
- uint64_t x54 = ((((uint64_t)(x2 + x22) * (x8 + x28)) + (((uint64_t)(x4 + x24) * (x6 + x26)) + (((uint64_t)(x6 + x26) * (x4 + x24)) + ((uint64_t)(x8 + x28) * (x2 + x22))))) - (((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))));
- uint64_t x55 = ((((uint64_t)(x2 + x22) * (x6 + x26)) + (((uint64_t)(x4 + x24) * (x4 + x24)) + ((uint64_t)(x6 + x26) * (x2 + x22)))) - (((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))));
- uint64_t x56 = ((((uint64_t)(x2 + x22) * (x4 + x24)) + ((uint64_t)(x4 + x24) * (x2 + x22))) - (((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)));
- uint64_t x57 = (((uint64_t)(x2 + x22) * (x2 + x22)) - ((uint64_t)x2 * x2));
- uint64_t x58 = (((((uint64_t)x20 * x20) + ((uint64_t)x37 * x37)) + x49) + x39);
- uint64_t x59 = ((((((uint64_t)x18 * x20) + ((uint64_t)x20 * x18)) + (((uint64_t)x38 * x37) + ((uint64_t)x37 * x38))) + x50) + x40);
- uint64_t x60 = ((((((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + ((uint64_t)x20 * x16))) + (((uint64_t)x36 * x37) + (((uint64_t)x38 * x38) + ((uint64_t)x37 * x36)))) + x51) + x41);
- uint64_t x61 = ((((((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((uint64_t)x20 * x14)))) + (((uint64_t)x34 * x37) + (((uint64_t)x36 * x38) + (((uint64_t)x38 * x36) + ((uint64_t)x37 * x34))))) + x52) + x42);
- uint64_t x62 = ((((((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + ((uint64_t)x20 * x12))))) + (((uint64_t)x32 * x37) + (((uint64_t)x34 * x38) + (((uint64_t)x36 * x36) + (((uint64_t)x38 * x34) + ((uint64_t)x37 * x32)))))) + x53) + x43);
- uint64_t x63 = ((((((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + ((uint64_t)x20 * x10)))))) + (((uint64_t)x30 * x37) + (((uint64_t)x32 * x38) + (((uint64_t)x34 * x36) + (((uint64_t)x36 * x34) + (((uint64_t)x38 * x32) + ((uint64_t)x37 * x30))))))) + x54) + x44);
- uint64_t x64 = ((((((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((uint64_t)x20 * x8))))))) + (((uint64_t)x28 * x37) + (((uint64_t)x30 * x38) + (((uint64_t)x32 * x36) + (((uint64_t)x34 * x34) + (((uint64_t)x36 * x32) + (((uint64_t)x38 * x30) + ((uint64_t)x37 * x28)))))))) + x55) + x45);
- uint64_t x65 = ((((((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((uint64_t)x20 * x6)))))))) + (((uint64_t)x26 * x37) + (((uint64_t)x28 * x38) + (((uint64_t)x30 * x36) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + (((uint64_t)x36 * x30) + (((uint64_t)x38 * x28) + ((uint64_t)x37 * x26))))))))) + x56) + x46);
- uint64_t x66 = ((((((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + ((uint64_t)x20 * x4))))))))) + (((uint64_t)x24 * x37) + (((uint64_t)x26 * x38) + (((uint64_t)x28 * x36) + (((uint64_t)x30 * x34) + (((uint64_t)x32 * x32) + (((uint64_t)x34 * x30) + (((uint64_t)x36 * x28) + (((uint64_t)x38 * x26) + ((uint64_t)x37 * x24)))))))))) + x57) + x47);
- uint64_t x67 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (((uint64_t)x22 * x37) + (((uint64_t)x24 * x38) + (((uint64_t)x26 * x36) + (((uint64_t)x28 * x34) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + (((uint64_t)x34 * x28) + (((uint64_t)x36 * x26) + (((uint64_t)x38 * x24) + ((uint64_t)x37 * x22)))))))))));
- uint64_t x68 = (((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (((uint64_t)x22 * x38) + (((uint64_t)x24 * x36) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + (((uint64_t)x30 * x30) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + (((uint64_t)x36 * x24) + ((uint64_t)x38 * x22)))))))))) + x39);
- uint64_t x69 = (((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (((uint64_t)x22 * x36) + (((uint64_t)x24 * x34) + (((uint64_t)x26 * x32) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (((uint64_t)x32 * x26) + (((uint64_t)x34 * x24) + ((uint64_t)x36 * x22))))))))) + x40);
- uint64_t x70 = (((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (((uint64_t)x22 * x34) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + ((uint64_t)x34 * x22)))))))) + x41);
- uint64_t x71 = (((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (((uint64_t)x22 * x32) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + ((uint64_t)x32 * x22))))))) + x42);
- uint64_t x72 = (((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + ((uint64_t)x30 * x22)))))) + x43);
- uint64_t x73 = (((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + ((uint64_t)x28 * x22))))) + x44);
- uint64_t x74 = (((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + ((uint64_t)x26 * x22)))) + x45);
- uint64_t x75 = (((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x22 * x24) + ((uint64_t)x24 * x22))) + x46);
- uint64_t x76 = ((((uint64_t)x2 * x2) + ((uint64_t)x22 * x22)) + x47);
- uint32_t x77 = (uint32_t) (x67 >> 0x18);
- uint32_t x78 = ((uint32_t)x67 & 0xffffff);
- uint64_t x79 = (x48 >> 0x18);
- uint32_t x80 = ((uint32_t)x48 & 0xffffff);
- uint64_t x81 = ((0x1000000 * x79) + x80);
- uint64_t x82 = (x81 >> 0x18);
- uint32_t x83 = ((uint32_t)x81 & 0xffffff);
- uint64_t x84 = ((x77 + x66) + x82);
- uint64_t x85 = (x84 >> 0x18);
- uint32_t x86 = ((uint32_t)x84 & 0xffffff);
- uint64_t x87 = (x76 + x82);
- uint64_t x88 = (x87 >> 0x18);
- uint32_t x89 = ((uint32_t)x87 & 0xffffff);
- uint64_t x90 = (x85 + x65);
- uint64_t x91 = (x90 >> 0x18);
- uint32_t x92 = ((uint32_t)x90 & 0xffffff);
- uint64_t x93 = (x88 + x75);
- uint64_t x94 = (x93 >> 0x18);
- uint32_t x95 = ((uint32_t)x93 & 0xffffff);
- uint64_t x96 = (x91 + x64);
- uint64_t x97 = (x96 >> 0x18);
- uint32_t x98 = ((uint32_t)x96 & 0xffffff);
- uint64_t x99 = (x94 + x74);
- uint64_t x100 = (x99 >> 0x18);
- uint32_t x101 = ((uint32_t)x99 & 0xffffff);
- uint64_t x102 = (x97 + x63);
- uint64_t x103 = (x102 >> 0x18);
- uint32_t x104 = ((uint32_t)x102 & 0xffffff);
- uint64_t x105 = (x100 + x73);
- uint64_t x106 = (x105 >> 0x18);
- uint32_t x107 = ((uint32_t)x105 & 0xffffff);
- uint64_t x108 = (x103 + x62);
- uint64_t x109 = (x108 >> 0x18);
- uint32_t x110 = ((uint32_t)x108 & 0xffffff);
- uint64_t x111 = (x106 + x72);
- uint64_t x112 = (x111 >> 0x18);
- uint32_t x113 = ((uint32_t)x111 & 0xffffff);
- uint64_t x114 = (x109 + x61);
- uint64_t x115 = (x114 >> 0x18);
- uint32_t x116 = ((uint32_t)x114 & 0xffffff);
- uint64_t x117 = (x112 + x71);
- uint64_t x118 = (x117 >> 0x18);
- uint32_t x119 = ((uint32_t)x117 & 0xffffff);
- uint64_t x120 = (x115 + x60);
- uint64_t x121 = (x120 >> 0x18);
- uint32_t x122 = ((uint32_t)x120 & 0xffffff);
- uint64_t x123 = (x118 + x70);
- uint64_t x124 = (x123 >> 0x18);
- uint32_t x125 = ((uint32_t)x123 & 0xffffff);
- uint64_t x126 = (x121 + x59);
- uint64_t x127 = (x126 >> 0x18);
- uint32_t x128 = ((uint32_t)x126 & 0xffffff);
- uint64_t x129 = (x124 + x69);
- uint32_t x130 = (uint32_t) (x129 >> 0x18);
- uint32_t x131 = ((uint32_t)x129 & 0xffffff);
- uint64_t x132 = (x127 + x58);
- uint64_t x133 = (x132 >> 0x18);
- uint32_t x134 = ((uint32_t)x132 & 0xffffff);
- uint64_t x135 = (x130 + x68);
- uint32_t x136 = (uint32_t) (x135 >> 0x18);
- uint32_t x137 = ((uint32_t)x135 & 0xffffff);
- uint64_t x138 = (x133 + x83);
- uint32_t x139 = (uint32_t) (x138 >> 0x18);
- uint32_t x140 = ((uint32_t)x138 & 0xffffff);
- uint32_t x141 = (x136 + x78);
- uint32_t x142 = (x141 >> 0x18);
- uint32_t x143 = (x141 & 0xffffff);
- uint64_t x144 = (((uint64_t)0x1000000 * x139) + x140);
- uint32_t x145 = (uint32_t) (x144 >> 0x18);
- uint32_t x146 = ((uint32_t)x144 & 0xffffff);
- uint32_t x147 = ((x142 + x86) + x145);
- uint32_t x148 = (x147 >> 0x18);
- uint32_t x149 = (x147 & 0xffffff);
- uint32_t x150 = (x89 + x145);
- uint32_t x151 = (x150 >> 0x18);
- uint32_t x152 = (x150 & 0xffffff);
- return (Return x146, Return x134, Return x128, Return x122, Return x116, Return x110, Return x104, Return x98, (x148 + x92), Return x149, Return x143, Return x137, Return x131, Return x125, Return x119, Return x113, Return x107, Return x101, (x151 + x95), Return x152))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e480m2e240m1_20limbs/fesquareDisplay.v b/src/Specific/solinas32_2e480m2e240m1_20limbs/fesquareDisplay.v
deleted file mode 100644
index c3e9a0f5f..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_20limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e480m2e240m1_20limbs/fesub.c b/src/Specific/solinas32_2e480m2e240m1_20limbs/fesub.c
deleted file mode 100644
index ec2beda21..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/fesub.c
+++ /dev/null
@@ -1,63 +0,0 @@
-static void fesub(uint32_t out[20], const uint32_t in1[20], const uint32_t in2[20]) {
- { const uint32_t x40 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x78 = in2[19];
- { const uint32_t x79 = in2[18];
- { const uint32_t x77 = in2[17];
- { const uint32_t x75 = in2[16];
- { const uint32_t x73 = in2[15];
- { const uint32_t x71 = in2[14];
- { const uint32_t x69 = in2[13];
- { const uint32_t x67 = in2[12];
- { const uint32_t x65 = in2[11];
- { const uint32_t x63 = in2[10];
- { const uint32_t x61 = in2[9];
- { const uint32_t x59 = in2[8];
- { const uint32_t x57 = in2[7];
- { const uint32_t x55 = in2[6];
- { const uint32_t x53 = in2[5];
- { const uint32_t x51 = in2[4];
- { const uint32_t x49 = in2[3];
- { const uint32_t x47 = in2[2];
- { const uint32_t x45 = in2[1];
- { const uint32_t x43 = in2[0];
- out[0] = ((0x1fffffe + x5) - x43);
- out[1] = ((0x1fffffe + x7) - x45);
- out[2] = ((0x1fffffe + x9) - x47);
- out[3] = ((0x1fffffe + x11) - x49);
- out[4] = ((0x1fffffe + x13) - x51);
- out[5] = ((0x1fffffe + x15) - x53);
- out[6] = ((0x1fffffe + x17) - x55);
- out[7] = ((0x1fffffe + x19) - x57);
- out[8] = ((0x1fffffe + x21) - x59);
- out[9] = ((0x1fffffe + x23) - x61);
- out[10] = ((0x1fffffc + x25) - x63);
- out[11] = ((0x1fffffe + x27) - x65);
- out[12] = ((0x1fffffe + x29) - x67);
- out[13] = ((0x1fffffe + x31) - x69);
- out[14] = ((0x1fffffe + x33) - x71);
- out[15] = ((0x1fffffe + x35) - x73);
- out[16] = ((0x1fffffe + x37) - x75);
- out[17] = ((0x1fffffe + x39) - x77);
- out[18] = ((0x1fffffe + x41) - x79);
- out[19] = ((0x1fffffe + x40) - x78);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e480m2e240m1_20limbs/fesub.v b/src/Specific/solinas32_2e480m2e240m1_20limbs/fesub.v
deleted file mode 100644
index 3f0ddf055..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_20limbs.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_2e480m2e240m1_20limbs/fesubDisplay.log b/src/Specific/solinas32_2e480m2e240m1_20limbs/fesubDisplay.log
deleted file mode 100644
index 761d9228e..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x40, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x78, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43))%core,
- (((0x1fffffe + x40) - x78), ((0x1fffffe + x41) - x79), ((0x1fffffe + x39) - x77), ((0x1fffffe + x37) - x75), ((0x1fffffe + x35) - x73), ((0x1fffffe + x33) - x71), ((0x1fffffe + x31) - x69), ((0x1fffffe + x29) - x67), ((0x1fffffe + x27) - x65), ((0x1fffffc + x25) - x63), ((0x1fffffe + x23) - x61), ((0x1fffffe + x21) - x59), ((0x1fffffe + x19) - x57), ((0x1fffffe + x17) - x55), ((0x1fffffe + x15) - x53), ((0x1fffffe + x13) - x51), ((0x1fffffe + x11) - x49), ((0x1fffffe + x9) - x47), ((0x1fffffe + x7) - x45), ((0x1fffffe + x5) - x43)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e480m2e240m1_20limbs/fesubDisplay.v b/src/Specific/solinas32_2e480m2e240m1_20limbs/fesubDisplay.v
deleted file mode 100644
index bf9822a3e..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_20limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e480m2e240m1_20limbs/freeze.c b/src/Specific/solinas32_2e480m2e240m1_20limbs/freeze.c
deleted file mode 100644
index 319462208..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/freeze.c
+++ /dev/null
@@ -1,104 +0,0 @@
-static void freeze(uint32_t out[20], const uint32_t in1[20]) {
- { const uint32_t x37 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffff);
- { uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x4, 0xffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x6, 0xffffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x8, 0xffffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x10, 0xffffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x12, 0xffffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x14, 0xffffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x16, 0xffffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x18, 0xffffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x20, 0xffffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x22, 0xfffffe);
- { uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x24, 0xffffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x26, 0xffffff);
- { uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x28, 0xffffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x30, 0xffffff);
- { uint32_t x85, uint8_t x86 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x32, 0xffffff);
- { uint32_t x88, uint8_t x89 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x34, 0xffffff);
- { uint32_t x91, uint8_t x92 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x89, Return x36, 0xffffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x38, 0xffffff);
- { uint32_t x97, uint8_t x98 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x37, 0xffffff);
- { uint32_t x99 = cmovznz32(x98, 0x0, 0xffffffff);
- { uint32_t x100 = (x99 & 0xffffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x40, Return x100);
- { uint32_t x104 = (x99 & 0xffffff);
- { uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x43, Return x104);
- { uint32_t x108 = (x99 & 0xffffff);
- { uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x46, Return x108);
- { uint32_t x112 = (x99 & 0xffffff);
- { uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x49, Return x112);
- { uint32_t x116 = (x99 & 0xffffff);
- { uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x52, Return x116);
- { uint32_t x120 = (x99 & 0xffffff);
- { uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x55, Return x120);
- { uint32_t x124 = (x99 & 0xffffff);
- { uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x58, Return x124);
- { uint32_t x128 = (x99 & 0xffffff);
- { uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x61, Return x128);
- { uint32_t x132 = (x99 & 0xffffff);
- { uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x64, Return x132);
- { uint32_t x136 = (x99 & 0xffffff);
- { uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x67, Return x136);
- { uint32_t x140 = (x99 & 0xfffffe);
- { uint32_t x142, uint8_t x143 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x70, Return x140);
- { uint32_t x144 = (x99 & 0xffffff);
- { uint32_t x146, uint8_t x147 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x143, Return x73, Return x144);
- { uint32_t x148 = (x99 & 0xffffff);
- { uint32_t x150, uint8_t x151 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x147, Return x76, Return x148);
- { uint32_t x152 = (x99 & 0xffffff);
- { uint32_t x154, uint8_t x155 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x151, Return x79, Return x152);
- { uint32_t x156 = (x99 & 0xffffff);
- { uint32_t x158, uint8_t x159 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x155, Return x82, Return x156);
- { uint32_t x160 = (x99 & 0xffffff);
- { uint32_t x162, uint8_t x163 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x159, Return x85, Return x160);
- { uint32_t x164 = (x99 & 0xffffff);
- { uint32_t x166, uint8_t x167 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x163, Return x88, Return x164);
- { uint32_t x168 = (x99 & 0xffffff);
- { uint32_t x170, uint8_t x171 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x167, Return x91, Return x168);
- { uint32_t x172 = (x99 & 0xffffff);
- { uint32_t x174, uint8_t x175 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x171, Return x94, Return x172);
- { uint32_t x176 = (x99 & 0xffffff);
- { uint32_t x178, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x175, Return x97, Return x176);
- out[0] = x102;
- out[1] = x106;
- out[2] = x110;
- out[3] = x114;
- out[4] = x118;
- out[5] = x122;
- out[6] = x126;
- out[7] = x130;
- out[8] = x134;
- out[9] = x138;
- out[10] = x142;
- out[11] = x146;
- out[12] = x150;
- out[13] = x154;
- out[14] = x158;
- out[15] = x162;
- out[16] = x166;
- out[17] = x170;
- out[18] = x174;
- out[19] = x178;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e480m2e240m1_20limbs/freeze.v b/src/Specific/solinas32_2e480m2e240m1_20limbs/freeze.v
deleted file mode 100644
index ed1f7c8bc..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_20limbs.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_2e480m2e240m1_20limbs/freezeDisplay.log b/src/Specific/solinas32_2e480m2e240m1_20limbs/freezeDisplay.log
deleted file mode 100644
index c85195aff..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/freezeDisplay.log
+++ /dev/null
@@ -1,68 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x37, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffff);
- uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x4, 0xffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x6, 0xffffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x8, 0xffffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x10, 0xffffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x12, 0xffffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x14, 0xffffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x16, 0xffffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x18, 0xffffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x20, 0xffffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x22, 0xfffffe);
- uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x24, 0xffffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x26, 0xffffff);
- uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x28, 0xffffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x30, 0xffffff);
- uint32_t x85, uint8_t x86 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x32, 0xffffff);
- uint32_t x88, uint8_t x89 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x34, 0xffffff);
- uint32_t x91, uint8_t x92 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x89, Return x36, 0xffffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x38, 0xffffff);
- uint32_t x97, uint8_t x98 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x37, 0xffffff);
- uint32_t x99 = cmovznz32(x98, 0x0, 0xffffffff);
- uint32_t x100 = (x99 & 0xffffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x40, Return x100);
- uint32_t x104 = (x99 & 0xffffff);
- uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x43, Return x104);
- uint32_t x108 = (x99 & 0xffffff);
- uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x46, Return x108);
- uint32_t x112 = (x99 & 0xffffff);
- uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x49, Return x112);
- uint32_t x116 = (x99 & 0xffffff);
- uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x52, Return x116);
- uint32_t x120 = (x99 & 0xffffff);
- uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x55, Return x120);
- uint32_t x124 = (x99 & 0xffffff);
- uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x58, Return x124);
- uint32_t x128 = (x99 & 0xffffff);
- uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x61, Return x128);
- uint32_t x132 = (x99 & 0xffffff);
- uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x64, Return x132);
- uint32_t x136 = (x99 & 0xffffff);
- uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x67, Return x136);
- uint32_t x140 = (x99 & 0xfffffe);
- uint32_t x142, uint8_t x143 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x70, Return x140);
- uint32_t x144 = (x99 & 0xffffff);
- uint32_t x146, uint8_t x147 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x143, Return x73, Return x144);
- uint32_t x148 = (x99 & 0xffffff);
- uint32_t x150, uint8_t x151 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x147, Return x76, Return x148);
- uint32_t x152 = (x99 & 0xffffff);
- uint32_t x154, uint8_t x155 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x151, Return x79, Return x152);
- uint32_t x156 = (x99 & 0xffffff);
- uint32_t x158, uint8_t x159 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x155, Return x82, Return x156);
- uint32_t x160 = (x99 & 0xffffff);
- uint32_t x162, uint8_t x163 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x159, Return x85, Return x160);
- uint32_t x164 = (x99 & 0xffffff);
- uint32_t x166, uint8_t x167 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x163, Return x88, Return x164);
- uint32_t x168 = (x99 & 0xffffff);
- uint32_t x170, uint8_t x171 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x167, Return x91, Return x168);
- uint32_t x172 = (x99 & 0xffffff);
- uint32_t x174, uint8_t x175 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x171, Return x94, Return x172);
- uint32_t x176 = (x99 & 0xffffff);
- uint32_t x178, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x175, Return x97, Return x176);
- (Return x178, Return x174, Return x170, Return x166, Return x162, Return x158, Return x154, Return x150, Return x146, Return x142, Return x138, Return x134, Return x130, Return x126, Return x122, Return x118, Return x114, Return x110, Return x106, Return x102))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e480m2e240m1_20limbs/freezeDisplay.v b/src/Specific/solinas32_2e480m2e240m1_20limbs/freezeDisplay.v
deleted file mode 100644
index ce84e57bb..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e480m2e240m1_20limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e480m2e240m1_20limbs/py_interpreter.sh b/src/Specific/solinas32_2e480m2e240m1_20limbs/py_interpreter.sh
deleted file mode 100755
index cbc626bfb..000000000
--- a/src/Specific/solinas32_2e480m2e240m1_20limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**480 - 2**240 - 1' -Dmodulus_bytes='24' -Da24='121665'
diff --git a/src/Specific/solinas32_2e488m17_19limbs/CurveParameters.v b/src/Specific/solinas32_2e488m17_19limbs/CurveParameters.v
deleted file mode 100644
index b1014a16f..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^488 - 17
-Base: 25 + 13/19
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 19%nat;
- base := 25 + 13/19;
- bitwidth := 32;
- s := 2^488;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 19); [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_2e488m17_19limbs/Synthesis.v b/src/Specific/solinas32_2e488m17_19limbs/Synthesis.v
deleted file mode 100644
index 844e66895..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e488m17_19limbs.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_2e488m17_19limbs/compiler.sh b/src/Specific/solinas32_2e488m17_19limbs/compiler.sh
deleted file mode 100755
index f0b50f5fa..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,25,26,26,25,26,26,25,26,26,25,26,26,25,26,26,25}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='61' -Dmodulus_limbs='19' -Dq_mpz='(1_mpz<<488) - 17' "$@"
diff --git a/src/Specific/solinas32_2e488m17_19limbs/compilerxx.sh b/src/Specific/solinas32_2e488m17_19limbs/compilerxx.sh
deleted file mode 100755
index a39402773..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,25,26,26,25,26,26,25,26,26,25,26,26,25,26,26,25}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='61' -Dmodulus_limbs='19' -Dq_mpz='(1_mpz<<488) - 17' "$@"
diff --git a/src/Specific/solinas32_2e488m17_19limbs/feadd.c b/src/Specific/solinas32_2e488m17_19limbs/feadd.c
deleted file mode 100644
index 7432e2ef1..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/feadd.c
+++ /dev/null
@@ -1,60 +0,0 @@
-static void feadd(uint32_t out[19], const uint32_t in1[19], const uint32_t in2[19]) {
- { const uint32_t x38 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x74 = in2[18];
- { const uint32_t x75 = in2[17];
- { const uint32_t x73 = in2[16];
- { const uint32_t x71 = in2[15];
- { const uint32_t x69 = in2[14];
- { const uint32_t x67 = in2[13];
- { const uint32_t x65 = in2[12];
- { const uint32_t x63 = in2[11];
- { const uint32_t x61 = in2[10];
- { const uint32_t x59 = in2[9];
- { const uint32_t x57 = in2[8];
- { const uint32_t x55 = in2[7];
- { const uint32_t x53 = in2[6];
- { const uint32_t x51 = in2[5];
- { const uint32_t x49 = in2[4];
- { const uint32_t x47 = in2[3];
- { const uint32_t x45 = in2[2];
- { const uint32_t x43 = in2[1];
- { const uint32_t x41 = in2[0];
- out[0] = (x5 + x41);
- out[1] = (x7 + x43);
- out[2] = (x9 + x45);
- out[3] = (x11 + x47);
- out[4] = (x13 + x49);
- out[5] = (x15 + x51);
- out[6] = (x17 + x53);
- out[7] = (x19 + x55);
- out[8] = (x21 + x57);
- out[9] = (x23 + x59);
- out[10] = (x25 + x61);
- out[11] = (x27 + x63);
- out[12] = (x29 + x65);
- out[13] = (x31 + x67);
- out[14] = (x33 + x69);
- out[15] = (x35 + x71);
- out[16] = (x37 + x73);
- out[17] = (x39 + x75);
- out[18] = (x38 + x74);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e488m17_19limbs/feadd.v b/src/Specific/solinas32_2e488m17_19limbs/feadd.v
deleted file mode 100644
index 90623b7af..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e488m17_19limbs.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_2e488m17_19limbs/feaddDisplay.log b/src/Specific/solinas32_2e488m17_19limbs/feaddDisplay.log
deleted file mode 100644
index 76a71b356..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x38, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x74, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41))%core,
- ((x38 + x74), (x39 + x75), (x37 + x73), (x35 + x71), (x33 + x69), (x31 + x67), (x29 + x65), (x27 + x63), (x25 + x61), (x23 + x59), (x21 + x57), (x19 + x55), (x17 + x53), (x15 + x51), (x13 + x49), (x11 + x47), (x9 + x45), (x7 + x43), (x5 + x41)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e488m17_19limbs/feaddDisplay.v b/src/Specific/solinas32_2e488m17_19limbs/feaddDisplay.v
deleted file mode 100644
index 34b7f80be..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e488m17_19limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e488m17_19limbs/fecarry.v b/src/Specific/solinas32_2e488m17_19limbs/fecarry.v
deleted file mode 100644
index 3ce307517..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e488m17_19limbs.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_2e488m17_19limbs/fecarryDisplay.v b/src/Specific/solinas32_2e488m17_19limbs/fecarryDisplay.v
deleted file mode 100644
index 3755732b9..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e488m17_19limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e488m17_19limbs/femul.c b/src/Specific/solinas32_2e488m17_19limbs/femul.c
deleted file mode 100644
index da892cbce..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/femul.c
+++ /dev/null
@@ -1,141 +0,0 @@
-static void femul(uint32_t out[19], const uint32_t in1[19], const uint32_t in2[19]) {
- { const uint32_t x38 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x74 = in2[18];
- { const uint32_t x75 = in2[17];
- { const uint32_t x73 = in2[16];
- { const uint32_t x71 = in2[15];
- { const uint32_t x69 = in2[14];
- { const uint32_t x67 = in2[13];
- { const uint32_t x65 = in2[12];
- { const uint32_t x63 = in2[11];
- { const uint32_t x61 = in2[10];
- { const uint32_t x59 = in2[9];
- { const uint32_t x57 = in2[8];
- { const uint32_t x55 = in2[7];
- { const uint32_t x53 = in2[6];
- { const uint32_t x51 = in2[5];
- { const uint32_t x49 = in2[4];
- { const uint32_t x47 = in2[3];
- { const uint32_t x45 = in2[2];
- { const uint32_t x43 = in2[1];
- { const uint32_t x41 = in2[0];
- { uint64_t x76 = (((uint64_t)x5 * x74) + (((uint64_t)x7 * x75) + (((uint64_t)x9 * x73) + ((0x2 * ((uint64_t)x11 * x71)) + (((uint64_t)x13 * x69) + (((uint64_t)x15 * x67) + ((0x2 * ((uint64_t)x17 * x65)) + (((uint64_t)x19 * x63) + (((uint64_t)x21 * x61) + ((0x2 * ((uint64_t)x23 * x59)) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + ((0x2 * ((uint64_t)x29 * x53)) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + ((0x2 * ((uint64_t)x35 * x47)) + (((uint64_t)x37 * x45) + (((uint64_t)x39 * x43) + ((uint64_t)x38 * x41)))))))))))))))))));
- { uint64_t x77 = ((((uint64_t)x5 * x75) + (((uint64_t)x7 * x73) + ((0x2 * ((uint64_t)x9 * x71)) + ((0x2 * ((uint64_t)x11 * x69)) + (((uint64_t)x13 * x67) + ((0x2 * ((uint64_t)x15 * x65)) + ((0x2 * ((uint64_t)x17 * x63)) + (((uint64_t)x19 * x61) + ((0x2 * ((uint64_t)x21 * x59)) + ((0x2 * ((uint64_t)x23 * x57)) + (((uint64_t)x25 * x55) + ((0x2 * ((uint64_t)x27 * x53)) + ((0x2 * ((uint64_t)x29 * x51)) + (((uint64_t)x31 * x49) + ((0x2 * ((uint64_t)x33 * x47)) + ((0x2 * ((uint64_t)x35 * x45)) + (((uint64_t)x37 * x43) + ((uint64_t)x39 * x41)))))))))))))))))) + (0x11 * (0x2 * ((uint64_t)x38 * x74))));
- { uint64_t x78 = ((((uint64_t)x5 * x73) + ((0x2 * ((uint64_t)x7 * x71)) + ((0x2 * ((uint64_t)x9 * x69)) + ((0x2 * ((uint64_t)x11 * x67)) + ((0x2 * ((uint64_t)x13 * x65)) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + ((0x2 * ((uint64_t)x21 * x57)) + ((0x2 * ((uint64_t)x23 * x55)) + ((0x2 * ((uint64_t)x25 * x53)) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + ((0x2 * ((uint64_t)x33 * x45)) + ((0x2 * ((uint64_t)x35 * x43)) + ((uint64_t)x37 * x41))))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x39 * x74)) + (0x2 * ((uint64_t)x38 * x75)))));
- { uint64_t x79 = ((((uint64_t)x5 * x71) + (((uint64_t)x7 * x69) + (((uint64_t)x9 * x67) + ((0x2 * ((uint64_t)x11 * x65)) + (((uint64_t)x13 * x63) + (((uint64_t)x15 * x61) + ((0x2 * ((uint64_t)x17 * x59)) + (((uint64_t)x19 * x57) + (((uint64_t)x21 * x55) + ((0x2 * ((uint64_t)x23 * x53)) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + ((0x2 * ((uint64_t)x29 * x47)) + (((uint64_t)x31 * x45) + (((uint64_t)x33 * x43) + ((uint64_t)x35 * x41)))))))))))))))) + (0x11 * (((uint64_t)x37 * x74) + (((uint64_t)x39 * x75) + ((uint64_t)x38 * x73)))));
- { uint64_t x80 = ((((uint64_t)x5 * x69) + (((uint64_t)x7 * x67) + ((0x2 * ((uint64_t)x9 * x65)) + ((0x2 * ((uint64_t)x11 * x63)) + (((uint64_t)x13 * x61) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + (((uint64_t)x19 * x55) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + (((uint64_t)x25 * x49) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + (((uint64_t)x31 * x43) + ((uint64_t)x33 * x41))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x35 * x74)) + (((uint64_t)x37 * x75) + (((uint64_t)x39 * x73) + (0x2 * ((uint64_t)x38 * x71)))))));
- { uint64_t x81 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((uint64_t)x31 * x41)))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x33 * x74)) + ((0x2 * ((uint64_t)x35 * x75)) + (((uint64_t)x37 * x73) + ((0x2 * ((uint64_t)x39 * x71)) + (0x2 * ((uint64_t)x38 * x69))))))));
- { uint64_t x82 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + ((0x2 * ((uint64_t)x11 * x59)) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + ((0x2 * ((uint64_t)x17 * x53)) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + ((0x2 * ((uint64_t)x23 * x47)) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + ((uint64_t)x29 * x41))))))))))))) + (0x11 * (((uint64_t)x31 * x74) + (((uint64_t)x33 * x75) + (((uint64_t)x35 * x73) + (((uint64_t)x37 * x71) + (((uint64_t)x39 * x69) + ((uint64_t)x38 * x67))))))));
- { uint64_t x83 = ((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + (((uint64_t)x13 * x55) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + (((uint64_t)x19 * x49) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + (((uint64_t)x25 * x43) + ((uint64_t)x27 * x41)))))))))))) + (0x11 * ((0x2 * ((uint64_t)x29 * x74)) + (((uint64_t)x31 * x75) + (((uint64_t)x33 * x73) + ((0x2 * ((uint64_t)x35 * x71)) + (((uint64_t)x37 * x69) + (((uint64_t)x39 * x67) + (0x2 * ((uint64_t)x38 * x65))))))))));
- { uint64_t x84 = ((((uint64_t)x5 * x61) + ((0x2 * ((uint64_t)x7 * x59)) + ((0x2 * ((uint64_t)x9 * x57)) + ((0x2 * ((uint64_t)x11 * x55)) + ((0x2 * ((uint64_t)x13 * x53)) + ((0x2 * ((uint64_t)x15 * x51)) + ((0x2 * ((uint64_t)x17 * x49)) + ((0x2 * ((uint64_t)x19 * x47)) + ((0x2 * ((uint64_t)x21 * x45)) + ((0x2 * ((uint64_t)x23 * x43)) + ((uint64_t)x25 * x41))))))))))) + (0x11 * ((0x2 * ((uint64_t)x27 * x74)) + ((0x2 * ((uint64_t)x29 * x75)) + (((uint64_t)x31 * x73) + ((0x2 * ((uint64_t)x33 * x71)) + ((0x2 * ((uint64_t)x35 * x69)) + (((uint64_t)x37 * x67) + ((0x2 * ((uint64_t)x39 * x65)) + (0x2 * ((uint64_t)x38 * x63)))))))))));
- { uint64_t x85 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + ((0x2 * ((uint64_t)x11 * x53)) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + ((0x2 * ((uint64_t)x17 * x47)) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + ((uint64_t)x23 * x41)))))))))) + (0x11 * (((uint64_t)x25 * x74) + (((uint64_t)x27 * x75) + (((uint64_t)x29 * x73) + (((uint64_t)x31 * x71) + (((uint64_t)x33 * x69) + (((uint64_t)x35 * x67) + (((uint64_t)x37 * x65) + (((uint64_t)x39 * x63) + ((uint64_t)x38 * x61)))))))))));
- { uint64_t x86 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + (((uint64_t)x13 * x49) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + (((uint64_t)x19 * x43) + ((uint64_t)x21 * x41))))))))) + (0x11 * ((0x2 * ((uint64_t)x23 * x74)) + (((uint64_t)x25 * x75) + (((uint64_t)x27 * x73) + ((0x2 * ((uint64_t)x29 * x71)) + (((uint64_t)x31 * x69) + (((uint64_t)x33 * x67) + ((0x2 * ((uint64_t)x35 * x65)) + (((uint64_t)x37 * x63) + (((uint64_t)x39 * x61) + (0x2 * ((uint64_t)x38 * x59)))))))))))));
- { uint64_t x87 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((uint64_t)x19 * x41)))))))) + (0x11 * ((0x2 * ((uint64_t)x21 * x74)) + ((0x2 * ((uint64_t)x23 * x75)) + (((uint64_t)x25 * x73) + ((0x2 * ((uint64_t)x27 * x71)) + ((0x2 * ((uint64_t)x29 * x69)) + (((uint64_t)x31 * x67) + ((0x2 * ((uint64_t)x33 * x65)) + ((0x2 * ((uint64_t)x35 * x63)) + (((uint64_t)x37 * x61) + ((0x2 * ((uint64_t)x39 * x59)) + (0x2 * ((uint64_t)x38 * x57))))))))))))));
- { uint64_t x88 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + ((0x2 * ((uint64_t)x11 * x47)) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + ((uint64_t)x17 * x41))))))) + (0x11 * (((uint64_t)x19 * x74) + (((uint64_t)x21 * x75) + (((uint64_t)x23 * x73) + (((uint64_t)x25 * x71) + (((uint64_t)x27 * x69) + (((uint64_t)x29 * x67) + (((uint64_t)x31 * x65) + (((uint64_t)x33 * x63) + (((uint64_t)x35 * x61) + (((uint64_t)x37 * x59) + (((uint64_t)x39 * x57) + ((uint64_t)x38 * x55))))))))))))));
- { uint64_t x89 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + (((uint64_t)x13 * x43) + ((uint64_t)x15 * x41)))))) + (0x11 * ((0x2 * ((uint64_t)x17 * x74)) + (((uint64_t)x19 * x75) + (((uint64_t)x21 * x73) + ((0x2 * ((uint64_t)x23 * x71)) + (((uint64_t)x25 * x69) + (((uint64_t)x27 * x67) + ((0x2 * ((uint64_t)x29 * x65)) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + ((0x2 * ((uint64_t)x35 * x59)) + (((uint64_t)x37 * x57) + (((uint64_t)x39 * x55) + (0x2 * ((uint64_t)x38 * x53))))))))))))))));
- { uint64_t x90 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + ((0x2 * ((uint64_t)x11 * x43)) + ((uint64_t)x13 * x41))))) + (0x11 * ((0x2 * ((uint64_t)x15 * x74)) + ((0x2 * ((uint64_t)x17 * x75)) + (((uint64_t)x19 * x73) + ((0x2 * ((uint64_t)x21 * x71)) + ((0x2 * ((uint64_t)x23 * x69)) + (((uint64_t)x25 * x67) + ((0x2 * ((uint64_t)x27 * x65)) + ((0x2 * ((uint64_t)x29 * x63)) + (((uint64_t)x31 * x61) + ((0x2 * ((uint64_t)x33 * x59)) + ((0x2 * ((uint64_t)x35 * x57)) + (((uint64_t)x37 * x55) + ((0x2 * ((uint64_t)x39 * x53)) + (0x2 * ((uint64_t)x38 * x51)))))))))))))))));
- { uint64_t x91 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + ((uint64_t)x11 * x41)))) + (0x11 * (((uint64_t)x13 * x74) + (((uint64_t)x15 * x75) + (((uint64_t)x17 * x73) + (((uint64_t)x19 * x71) + (((uint64_t)x21 * x69) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + (((uint64_t)x37 * x53) + (((uint64_t)x39 * x51) + ((uint64_t)x38 * x49)))))))))))))))));
- { uint64_t x92 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((uint64_t)x9 * x41))) + (0x11 * ((0x2 * ((uint64_t)x11 * x74)) + (((uint64_t)x13 * x75) + (((uint64_t)x15 * x73) + ((0x2 * ((uint64_t)x17 * x71)) + (((uint64_t)x19 * x69) + (((uint64_t)x21 * x67) + ((0x2 * ((uint64_t)x23 * x65)) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + ((0x2 * ((uint64_t)x29 * x59)) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + ((0x2 * ((uint64_t)x35 * x53)) + (((uint64_t)x37 * x51) + (((uint64_t)x39 * x49) + (0x2 * ((uint64_t)x38 * x47)))))))))))))))))));
- { uint64_t x93 = ((((uint64_t)x5 * x43) + ((uint64_t)x7 * x41)) + (0x11 * ((0x2 * ((uint64_t)x9 * x74)) + ((0x2 * ((uint64_t)x11 * x75)) + (((uint64_t)x13 * x73) + ((0x2 * ((uint64_t)x15 * x71)) + ((0x2 * ((uint64_t)x17 * x69)) + (((uint64_t)x19 * x67) + ((0x2 * ((uint64_t)x21 * x65)) + ((0x2 * ((uint64_t)x23 * x63)) + (((uint64_t)x25 * x61) + ((0x2 * ((uint64_t)x27 * x59)) + ((0x2 * ((uint64_t)x29 * x57)) + (((uint64_t)x31 * x55) + ((0x2 * ((uint64_t)x33 * x53)) + ((0x2 * ((uint64_t)x35 * x51)) + (((uint64_t)x37 * x49) + ((0x2 * ((uint64_t)x39 * x47)) + (0x2 * ((uint64_t)x38 * x45))))))))))))))))))));
- { ℤ x94 = (((uint64_t)x5 * x41) +ℤ (0x11 *ℤ ((0x2 * ((uint64_t)x7 * x74)) + ((0x2 * ((uint64_t)x9 * x75)) + ((0x2 * ((uint64_t)x11 * x73)) + ((0x2 * ((uint64_t)x13 * x71)) + ((0x2 * ((uint64_t)x15 * x69)) + ((0x2 * ((uint64_t)x17 * x67)) + ((0x2 * ((uint64_t)x19 * x65)) + ((0x2 * ((uint64_t)x21 * x63)) + ((0x2 * ((uint64_t)x23 * x61)) + ((0x2 * ((uint64_t)x25 * x59)) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + ((0x2 * ((uint64_t)x31 * x53)) + ((0x2 * ((uint64_t)x33 * x51)) + ((0x2 * ((uint64_t)x35 * x49)) + ((0x2 * ((uint64_t)x37 * x47)) + ((0x2 * ((uint64_t)x39 * x45)) + (0x2 * ((uint64_t)x38 * x43)))))))))))))))))))));
- { uint64_t x95 = (x94 >> 0x1a);
- { uint32_t x96 = (x94 & 0x3ffffff);
- { uint64_t x97 = (x95 + x93);
- { uint64_t x98 = (x97 >> 0x1a);
- { uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- { uint64_t x100 = (x98 + x92);
- { uint64_t x101 = (x100 >> 0x1a);
- { uint32_t x102 = ((uint32_t)x100 & 0x3ffffff);
- { uint64_t x103 = (x101 + x91);
- { uint64_t x104 = (x103 >> 0x19);
- { uint32_t x105 = ((uint32_t)x103 & 0x1ffffff);
- { uint64_t x106 = (x104 + x90);
- { uint64_t x107 = (x106 >> 0x1a);
- { uint32_t x108 = ((uint32_t)x106 & 0x3ffffff);
- { uint64_t x109 = (x107 + x89);
- { uint64_t x110 = (x109 >> 0x1a);
- { uint32_t x111 = ((uint32_t)x109 & 0x3ffffff);
- { uint64_t x112 = (x110 + x88);
- { uint64_t x113 = (x112 >> 0x19);
- { uint32_t x114 = ((uint32_t)x112 & 0x1ffffff);
- { uint64_t x115 = (x113 + x87);
- { uint64_t x116 = (x115 >> 0x1a);
- { uint32_t x117 = ((uint32_t)x115 & 0x3ffffff);
- { uint64_t x118 = (x116 + x86);
- { uint64_t x119 = (x118 >> 0x1a);
- { uint32_t x120 = ((uint32_t)x118 & 0x3ffffff);
- { uint64_t x121 = (x119 + x85);
- { uint64_t x122 = (x121 >> 0x19);
- { uint32_t x123 = ((uint32_t)x121 & 0x1ffffff);
- { uint64_t x124 = (x122 + x84);
- { uint64_t x125 = (x124 >> 0x1a);
- { uint32_t x126 = ((uint32_t)x124 & 0x3ffffff);
- { uint64_t x127 = (x125 + x83);
- { uint64_t x128 = (x127 >> 0x1a);
- { uint32_t x129 = ((uint32_t)x127 & 0x3ffffff);
- { uint64_t x130 = (x128 + x82);
- { uint64_t x131 = (x130 >> 0x19);
- { uint32_t x132 = ((uint32_t)x130 & 0x1ffffff);
- { uint64_t x133 = (x131 + x81);
- { uint64_t x134 = (x133 >> 0x1a);
- { uint32_t x135 = ((uint32_t)x133 & 0x3ffffff);
- { uint64_t x136 = (x134 + x80);
- { uint64_t x137 = (x136 >> 0x1a);
- { uint32_t x138 = ((uint32_t)x136 & 0x3ffffff);
- { uint64_t x139 = (x137 + x79);
- { uint64_t x140 = (x139 >> 0x19);
- { uint32_t x141 = ((uint32_t)x139 & 0x1ffffff);
- { uint64_t x142 = (x140 + x78);
- { uint64_t x143 = (x142 >> 0x1a);
- { uint32_t x144 = ((uint32_t)x142 & 0x3ffffff);
- { uint64_t x145 = (x143 + x77);
- { uint64_t x146 = (x145 >> 0x1a);
- { uint32_t x147 = ((uint32_t)x145 & 0x3ffffff);
- { uint64_t x148 = (x146 + x76);
- { uint64_t x149 = (x148 >> 0x19);
- { uint32_t x150 = ((uint32_t)x148 & 0x1ffffff);
- { uint64_t x151 = (x96 + (0x11 * x149));
- { uint32_t x152 = (uint32_t) (x151 >> 0x1a);
- { uint32_t x153 = ((uint32_t)x151 & 0x3ffffff);
- { uint32_t x154 = (x152 + x99);
- { uint32_t x155 = (x154 >> 0x1a);
- { uint32_t x156 = (x154 & 0x3ffffff);
- out[0] = x153;
- out[1] = x156;
- out[2] = (x155 + x102);
- out[3] = x105;
- out[4] = x108;
- out[5] = x111;
- out[6] = x114;
- out[7] = x117;
- out[8] = x120;
- out[9] = x123;
- out[10] = x126;
- out[11] = x129;
- out[12] = x132;
- out[13] = x135;
- out[14] = x138;
- out[15] = x141;
- out[16] = x144;
- out[17] = x147;
- out[18] = x150;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e488m17_19limbs/femul.v b/src/Specific/solinas32_2e488m17_19limbs/femul.v
deleted file mode 100644
index 1ac7ce256..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e488m17_19limbs.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_2e488m17_19limbs/femulDisplay.log b/src/Specific/solinas32_2e488m17_19limbs/femulDisplay.log
deleted file mode 100644
index 0caf0f422..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/femulDisplay.log
+++ /dev/null
@@ -1,88 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x38, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x74, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41))%core,
- uint64_t x76 = (((uint64_t)x5 * x74) + (((uint64_t)x7 * x75) + (((uint64_t)x9 * x73) + ((0x2 * ((uint64_t)x11 * x71)) + (((uint64_t)x13 * x69) + (((uint64_t)x15 * x67) + ((0x2 * ((uint64_t)x17 * x65)) + (((uint64_t)x19 * x63) + (((uint64_t)x21 * x61) + ((0x2 * ((uint64_t)x23 * x59)) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + ((0x2 * ((uint64_t)x29 * x53)) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + ((0x2 * ((uint64_t)x35 * x47)) + (((uint64_t)x37 * x45) + (((uint64_t)x39 * x43) + ((uint64_t)x38 * x41)))))))))))))))))));
- uint64_t x77 = ((((uint64_t)x5 * x75) + (((uint64_t)x7 * x73) + ((0x2 * ((uint64_t)x9 * x71)) + ((0x2 * ((uint64_t)x11 * x69)) + (((uint64_t)x13 * x67) + ((0x2 * ((uint64_t)x15 * x65)) + ((0x2 * ((uint64_t)x17 * x63)) + (((uint64_t)x19 * x61) + ((0x2 * ((uint64_t)x21 * x59)) + ((0x2 * ((uint64_t)x23 * x57)) + (((uint64_t)x25 * x55) + ((0x2 * ((uint64_t)x27 * x53)) + ((0x2 * ((uint64_t)x29 * x51)) + (((uint64_t)x31 * x49) + ((0x2 * ((uint64_t)x33 * x47)) + ((0x2 * ((uint64_t)x35 * x45)) + (((uint64_t)x37 * x43) + ((uint64_t)x39 * x41)))))))))))))))))) + (0x11 * (0x2 * ((uint64_t)x38 * x74))));
- uint64_t x78 = ((((uint64_t)x5 * x73) + ((0x2 * ((uint64_t)x7 * x71)) + ((0x2 * ((uint64_t)x9 * x69)) + ((0x2 * ((uint64_t)x11 * x67)) + ((0x2 * ((uint64_t)x13 * x65)) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + ((0x2 * ((uint64_t)x21 * x57)) + ((0x2 * ((uint64_t)x23 * x55)) + ((0x2 * ((uint64_t)x25 * x53)) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + ((0x2 * ((uint64_t)x33 * x45)) + ((0x2 * ((uint64_t)x35 * x43)) + ((uint64_t)x37 * x41))))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x39 * x74)) + (0x2 * ((uint64_t)x38 * x75)))));
- uint64_t x79 = ((((uint64_t)x5 * x71) + (((uint64_t)x7 * x69) + (((uint64_t)x9 * x67) + ((0x2 * ((uint64_t)x11 * x65)) + (((uint64_t)x13 * x63) + (((uint64_t)x15 * x61) + ((0x2 * ((uint64_t)x17 * x59)) + (((uint64_t)x19 * x57) + (((uint64_t)x21 * x55) + ((0x2 * ((uint64_t)x23 * x53)) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + ((0x2 * ((uint64_t)x29 * x47)) + (((uint64_t)x31 * x45) + (((uint64_t)x33 * x43) + ((uint64_t)x35 * x41)))))))))))))))) + (0x11 * (((uint64_t)x37 * x74) + (((uint64_t)x39 * x75) + ((uint64_t)x38 * x73)))));
- uint64_t x80 = ((((uint64_t)x5 * x69) + (((uint64_t)x7 * x67) + ((0x2 * ((uint64_t)x9 * x65)) + ((0x2 * ((uint64_t)x11 * x63)) + (((uint64_t)x13 * x61) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + (((uint64_t)x19 * x55) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + (((uint64_t)x25 * x49) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + (((uint64_t)x31 * x43) + ((uint64_t)x33 * x41))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x35 * x74)) + (((uint64_t)x37 * x75) + (((uint64_t)x39 * x73) + (0x2 * ((uint64_t)x38 * x71)))))));
- uint64_t x81 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((0x2 * ((uint64_t)x29 * x43)) + ((uint64_t)x31 * x41)))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x33 * x74)) + ((0x2 * ((uint64_t)x35 * x75)) + (((uint64_t)x37 * x73) + ((0x2 * ((uint64_t)x39 * x71)) + (0x2 * ((uint64_t)x38 * x69))))))));
- uint64_t x82 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + ((0x2 * ((uint64_t)x11 * x59)) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + ((0x2 * ((uint64_t)x17 * x53)) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + ((0x2 * ((uint64_t)x23 * x47)) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + ((uint64_t)x29 * x41))))))))))))) + (0x11 * (((uint64_t)x31 * x74) + (((uint64_t)x33 * x75) + (((uint64_t)x35 * x73) + (((uint64_t)x37 * x71) + (((uint64_t)x39 * x69) + ((uint64_t)x38 * x67))))))));
- uint64_t x83 = ((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + (((uint64_t)x13 * x55) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + (((uint64_t)x19 * x49) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + (((uint64_t)x25 * x43) + ((uint64_t)x27 * x41)))))))))))) + (0x11 * ((0x2 * ((uint64_t)x29 * x74)) + (((uint64_t)x31 * x75) + (((uint64_t)x33 * x73) + ((0x2 * ((uint64_t)x35 * x71)) + (((uint64_t)x37 * x69) + (((uint64_t)x39 * x67) + (0x2 * ((uint64_t)x38 * x65))))))))));
- uint64_t x84 = ((((uint64_t)x5 * x61) + ((0x2 * ((uint64_t)x7 * x59)) + ((0x2 * ((uint64_t)x9 * x57)) + ((0x2 * ((uint64_t)x11 * x55)) + ((0x2 * ((uint64_t)x13 * x53)) + ((0x2 * ((uint64_t)x15 * x51)) + ((0x2 * ((uint64_t)x17 * x49)) + ((0x2 * ((uint64_t)x19 * x47)) + ((0x2 * ((uint64_t)x21 * x45)) + ((0x2 * ((uint64_t)x23 * x43)) + ((uint64_t)x25 * x41))))))))))) + (0x11 * ((0x2 * ((uint64_t)x27 * x74)) + ((0x2 * ((uint64_t)x29 * x75)) + (((uint64_t)x31 * x73) + ((0x2 * ((uint64_t)x33 * x71)) + ((0x2 * ((uint64_t)x35 * x69)) + (((uint64_t)x37 * x67) + ((0x2 * ((uint64_t)x39 * x65)) + (0x2 * ((uint64_t)x38 * x63)))))))))));
- uint64_t x85 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + ((0x2 * ((uint64_t)x11 * x53)) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + ((0x2 * ((uint64_t)x17 * x47)) + (((uint64_t)x19 * x45) + (((uint64_t)x21 * x43) + ((uint64_t)x23 * x41)))))))))) + (0x11 * (((uint64_t)x25 * x74) + (((uint64_t)x27 * x75) + (((uint64_t)x29 * x73) + (((uint64_t)x31 * x71) + (((uint64_t)x33 * x69) + (((uint64_t)x35 * x67) + (((uint64_t)x37 * x65) + (((uint64_t)x39 * x63) + ((uint64_t)x38 * x61)))))))))));
- uint64_t x86 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + (((uint64_t)x13 * x49) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + (((uint64_t)x19 * x43) + ((uint64_t)x21 * x41))))))))) + (0x11 * ((0x2 * ((uint64_t)x23 * x74)) + (((uint64_t)x25 * x75) + (((uint64_t)x27 * x73) + ((0x2 * ((uint64_t)x29 * x71)) + (((uint64_t)x31 * x69) + (((uint64_t)x33 * x67) + ((0x2 * ((uint64_t)x35 * x65)) + (((uint64_t)x37 * x63) + (((uint64_t)x39 * x61) + (0x2 * ((uint64_t)x38 * x59)))))))))))));
- uint64_t x87 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((uint64_t)x19 * x41)))))))) + (0x11 * ((0x2 * ((uint64_t)x21 * x74)) + ((0x2 * ((uint64_t)x23 * x75)) + (((uint64_t)x25 * x73) + ((0x2 * ((uint64_t)x27 * x71)) + ((0x2 * ((uint64_t)x29 * x69)) + (((uint64_t)x31 * x67) + ((0x2 * ((uint64_t)x33 * x65)) + ((0x2 * ((uint64_t)x35 * x63)) + (((uint64_t)x37 * x61) + ((0x2 * ((uint64_t)x39 * x59)) + (0x2 * ((uint64_t)x38 * x57))))))))))))));
- uint64_t x88 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + ((0x2 * ((uint64_t)x11 * x47)) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + ((uint64_t)x17 * x41))))))) + (0x11 * (((uint64_t)x19 * x74) + (((uint64_t)x21 * x75) + (((uint64_t)x23 * x73) + (((uint64_t)x25 * x71) + (((uint64_t)x27 * x69) + (((uint64_t)x29 * x67) + (((uint64_t)x31 * x65) + (((uint64_t)x33 * x63) + (((uint64_t)x35 * x61) + (((uint64_t)x37 * x59) + (((uint64_t)x39 * x57) + ((uint64_t)x38 * x55))))))))))))));
- uint64_t x89 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + (((uint64_t)x13 * x43) + ((uint64_t)x15 * x41)))))) + (0x11 * ((0x2 * ((uint64_t)x17 * x74)) + (((uint64_t)x19 * x75) + (((uint64_t)x21 * x73) + ((0x2 * ((uint64_t)x23 * x71)) + (((uint64_t)x25 * x69) + (((uint64_t)x27 * x67) + ((0x2 * ((uint64_t)x29 * x65)) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + ((0x2 * ((uint64_t)x35 * x59)) + (((uint64_t)x37 * x57) + (((uint64_t)x39 * x55) + (0x2 * ((uint64_t)x38 * x53))))))))))))))));
- uint64_t x90 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + ((0x2 * ((uint64_t)x11 * x43)) + ((uint64_t)x13 * x41))))) + (0x11 * ((0x2 * ((uint64_t)x15 * x74)) + ((0x2 * ((uint64_t)x17 * x75)) + (((uint64_t)x19 * x73) + ((0x2 * ((uint64_t)x21 * x71)) + ((0x2 * ((uint64_t)x23 * x69)) + (((uint64_t)x25 * x67) + ((0x2 * ((uint64_t)x27 * x65)) + ((0x2 * ((uint64_t)x29 * x63)) + (((uint64_t)x31 * x61) + ((0x2 * ((uint64_t)x33 * x59)) + ((0x2 * ((uint64_t)x35 * x57)) + (((uint64_t)x37 * x55) + ((0x2 * ((uint64_t)x39 * x53)) + (0x2 * ((uint64_t)x38 * x51)))))))))))))))));
- uint64_t x91 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + ((uint64_t)x11 * x41)))) + (0x11 * (((uint64_t)x13 * x74) + (((uint64_t)x15 * x75) + (((uint64_t)x17 * x73) + (((uint64_t)x19 * x71) + (((uint64_t)x21 * x69) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + (((uint64_t)x37 * x53) + (((uint64_t)x39 * x51) + ((uint64_t)x38 * x49)))))))))))))))));
- uint64_t x92 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((uint64_t)x9 * x41))) + (0x11 * ((0x2 * ((uint64_t)x11 * x74)) + (((uint64_t)x13 * x75) + (((uint64_t)x15 * x73) + ((0x2 * ((uint64_t)x17 * x71)) + (((uint64_t)x19 * x69) + (((uint64_t)x21 * x67) + ((0x2 * ((uint64_t)x23 * x65)) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + ((0x2 * ((uint64_t)x29 * x59)) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + ((0x2 * ((uint64_t)x35 * x53)) + (((uint64_t)x37 * x51) + (((uint64_t)x39 * x49) + (0x2 * ((uint64_t)x38 * x47)))))))))))))))))));
- uint64_t x93 = ((((uint64_t)x5 * x43) + ((uint64_t)x7 * x41)) + (0x11 * ((0x2 * ((uint64_t)x9 * x74)) + ((0x2 * ((uint64_t)x11 * x75)) + (((uint64_t)x13 * x73) + ((0x2 * ((uint64_t)x15 * x71)) + ((0x2 * ((uint64_t)x17 * x69)) + (((uint64_t)x19 * x67) + ((0x2 * ((uint64_t)x21 * x65)) + ((0x2 * ((uint64_t)x23 * x63)) + (((uint64_t)x25 * x61) + ((0x2 * ((uint64_t)x27 * x59)) + ((0x2 * ((uint64_t)x29 * x57)) + (((uint64_t)x31 * x55) + ((0x2 * ((uint64_t)x33 * x53)) + ((0x2 * ((uint64_t)x35 * x51)) + (((uint64_t)x37 * x49) + ((0x2 * ((uint64_t)x39 * x47)) + (0x2 * ((uint64_t)x38 * x45))))))))))))))))))));
- ℤ x94 = (((uint64_t)x5 * x41) +ℤ (0x11 *ℤ ((0x2 * ((uint64_t)x7 * x74)) + ((0x2 * ((uint64_t)x9 * x75)) + ((0x2 * ((uint64_t)x11 * x73)) + ((0x2 * ((uint64_t)x13 * x71)) + ((0x2 * ((uint64_t)x15 * x69)) + ((0x2 * ((uint64_t)x17 * x67)) + ((0x2 * ((uint64_t)x19 * x65)) + ((0x2 * ((uint64_t)x21 * x63)) + ((0x2 * ((uint64_t)x23 * x61)) + ((0x2 * ((uint64_t)x25 * x59)) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + ((0x2 * ((uint64_t)x31 * x53)) + ((0x2 * ((uint64_t)x33 * x51)) + ((0x2 * ((uint64_t)x35 * x49)) + ((0x2 * ((uint64_t)x37 * x47)) + ((0x2 * ((uint64_t)x39 * x45)) + (0x2 * ((uint64_t)x38 * x43)))))))))))))))))))));
- uint64_t x95 = (x94 >> 0x1a);
- uint32_t x96 = (x94 & 0x3ffffff);
- uint64_t x97 = (x95 + x93);
- uint64_t x98 = (x97 >> 0x1a);
- uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- uint64_t x100 = (x98 + x92);
- uint64_t x101 = (x100 >> 0x1a);
- uint32_t x102 = ((uint32_t)x100 & 0x3ffffff);
- uint64_t x103 = (x101 + x91);
- uint64_t x104 = (x103 >> 0x19);
- uint32_t x105 = ((uint32_t)x103 & 0x1ffffff);
- uint64_t x106 = (x104 + x90);
- uint64_t x107 = (x106 >> 0x1a);
- uint32_t x108 = ((uint32_t)x106 & 0x3ffffff);
- uint64_t x109 = (x107 + x89);
- uint64_t x110 = (x109 >> 0x1a);
- uint32_t x111 = ((uint32_t)x109 & 0x3ffffff);
- uint64_t x112 = (x110 + x88);
- uint64_t x113 = (x112 >> 0x19);
- uint32_t x114 = ((uint32_t)x112 & 0x1ffffff);
- uint64_t x115 = (x113 + x87);
- uint64_t x116 = (x115 >> 0x1a);
- uint32_t x117 = ((uint32_t)x115 & 0x3ffffff);
- uint64_t x118 = (x116 + x86);
- uint64_t x119 = (x118 >> 0x1a);
- uint32_t x120 = ((uint32_t)x118 & 0x3ffffff);
- uint64_t x121 = (x119 + x85);
- uint64_t x122 = (x121 >> 0x19);
- uint32_t x123 = ((uint32_t)x121 & 0x1ffffff);
- uint64_t x124 = (x122 + x84);
- uint64_t x125 = (x124 >> 0x1a);
- uint32_t x126 = ((uint32_t)x124 & 0x3ffffff);
- uint64_t x127 = (x125 + x83);
- uint64_t x128 = (x127 >> 0x1a);
- uint32_t x129 = ((uint32_t)x127 & 0x3ffffff);
- uint64_t x130 = (x128 + x82);
- uint64_t x131 = (x130 >> 0x19);
- uint32_t x132 = ((uint32_t)x130 & 0x1ffffff);
- uint64_t x133 = (x131 + x81);
- uint64_t x134 = (x133 >> 0x1a);
- uint32_t x135 = ((uint32_t)x133 & 0x3ffffff);
- uint64_t x136 = (x134 + x80);
- uint64_t x137 = (x136 >> 0x1a);
- uint32_t x138 = ((uint32_t)x136 & 0x3ffffff);
- uint64_t x139 = (x137 + x79);
- uint64_t x140 = (x139 >> 0x19);
- uint32_t x141 = ((uint32_t)x139 & 0x1ffffff);
- uint64_t x142 = (x140 + x78);
- uint64_t x143 = (x142 >> 0x1a);
- uint32_t x144 = ((uint32_t)x142 & 0x3ffffff);
- uint64_t x145 = (x143 + x77);
- uint64_t x146 = (x145 >> 0x1a);
- uint32_t x147 = ((uint32_t)x145 & 0x3ffffff);
- uint64_t x148 = (x146 + x76);
- uint64_t x149 = (x148 >> 0x19);
- uint32_t x150 = ((uint32_t)x148 & 0x1ffffff);
- uint64_t x151 = (x96 + (0x11 * x149));
- uint32_t x152 = (uint32_t) (x151 >> 0x1a);
- uint32_t x153 = ((uint32_t)x151 & 0x3ffffff);
- uint32_t x154 = (x152 + x99);
- uint32_t x155 = (x154 >> 0x1a);
- uint32_t x156 = (x154 & 0x3ffffff);
- return (Return x150, Return x147, Return x144, Return x141, Return x138, Return x135, Return x132, Return x129, Return x126, Return x123, Return x120, Return x117, Return x114, Return x111, Return x108, Return x105, (x155 + x102), Return x156, Return x153))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e488m17_19limbs/femulDisplay.v b/src/Specific/solinas32_2e488m17_19limbs/femulDisplay.v
deleted file mode 100644
index fa87269b0..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e488m17_19limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e488m17_19limbs/fesquare.c b/src/Specific/solinas32_2e488m17_19limbs/fesquare.c
deleted file mode 100644
index 2b25c02e8..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/fesquare.c
+++ /dev/null
@@ -1,122 +0,0 @@
-static void fesquare(uint32_t out[19], const uint32_t in1[19]) {
- { const uint32_t x35 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x37 = (((uint64_t)x2 * x35) + (((uint64_t)x4 * x36) + (((uint64_t)x6 * x34) + ((0x2 * ((uint64_t)x8 * x32)) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + ((0x2 * ((uint64_t)x14 * x26)) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + ((0x2 * ((uint64_t)x26 * x14)) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + ((0x2 * ((uint64_t)x32 * x8)) + (((uint64_t)x34 * x6) + (((uint64_t)x36 * x4) + ((uint64_t)x35 * x2)))))))))))))))))));
- { uint64_t x38 = ((((uint64_t)x2 * x36) + (((uint64_t)x4 * x34) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + (((uint64_t)x10 * x28) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + (((uint64_t)x16 * x22) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (((uint64_t)x22 * x16) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + (((uint64_t)x28 * x10) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + (((uint64_t)x34 * x4) + ((uint64_t)x36 * x2)))))))))))))))))) + (0x11 * (0x2 * ((uint64_t)x35 * x35))));
- { uint64_t x39 = ((((uint64_t)x2 * x34) + ((0x2 * ((uint64_t)x4 * x32)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x34 * x2))))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x36 * x35)) + (0x2 * ((uint64_t)x35 * x36)))));
- { uint64_t x40 = ((((uint64_t)x2 * x32) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + ((0x2 * ((uint64_t)x8 * x26)) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + ((0x2 * ((uint64_t)x26 * x8)) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x32 * x2)))))))))))))))) + (0x11 * (((uint64_t)x34 * x35) + (((uint64_t)x36 * x36) + ((uint64_t)x35 * x34)))));
- { uint64_t x41 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + ((0x2 * ((uint64_t)x6 * x26)) + ((0x2 * ((uint64_t)x8 * x24)) + (((uint64_t)x10 * x22) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + (((uint64_t)x22 * x10) + ((0x2 * ((uint64_t)x24 * x8)) + ((0x2 * ((uint64_t)x26 * x6)) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x32 * x35)) + (((uint64_t)x34 * x36) + (((uint64_t)x36 * x34) + (0x2 * ((uint64_t)x35 * x32)))))));
- { uint64_t x42 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x30 * x35)) + ((0x2 * ((uint64_t)x32 * x36)) + (((uint64_t)x34 * x34) + ((0x2 * ((uint64_t)x36 * x32)) + (0x2 * ((uint64_t)x35 * x30))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x11 * (((uint64_t)x28 * x35) + (((uint64_t)x30 * x36) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + (((uint64_t)x36 * x30) + ((uint64_t)x35 * x28))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x11 * ((0x2 * ((uint64_t)x26 * x35)) + (((uint64_t)x28 * x36) + (((uint64_t)x30 * x34) + ((0x2 * ((uint64_t)x32 * x32)) + (((uint64_t)x34 * x30) + (((uint64_t)x36 * x28) + (0x2 * ((uint64_t)x35 * x26))))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x11 * ((0x2 * ((uint64_t)x24 * x35)) + ((0x2 * ((uint64_t)x26 * x36)) + (((uint64_t)x28 * x34) + ((0x2 * ((uint64_t)x30 * x32)) + ((0x2 * ((uint64_t)x32 * x30)) + (((uint64_t)x34 * x28) + ((0x2 * ((uint64_t)x36 * x26)) + (0x2 * ((uint64_t)x35 * x24)))))))))));
- { uint64_t x46 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x11 * (((uint64_t)x22 * x35) + (((uint64_t)x24 * x36) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + (((uint64_t)x30 * x30) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + (((uint64_t)x36 * x24) + ((uint64_t)x35 * x22)))))))))));
- { uint64_t x47 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x11 * ((0x2 * ((uint64_t)x20 * x35)) + (((uint64_t)x22 * x36) + (((uint64_t)x24 * x34) + ((0x2 * ((uint64_t)x26 * x32)) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + ((0x2 * ((uint64_t)x32 * x26)) + (((uint64_t)x34 * x24) + (((uint64_t)x36 * x22) + (0x2 * ((uint64_t)x35 * x20)))))))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x11 * ((0x2 * ((uint64_t)x18 * x35)) + ((0x2 * ((uint64_t)x20 * x36)) + (((uint64_t)x22 * x34) + ((0x2 * ((uint64_t)x24 * x32)) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + ((0x2 * ((uint64_t)x32 * x24)) + (((uint64_t)x34 * x22) + ((0x2 * ((uint64_t)x36 * x20)) + (0x2 * ((uint64_t)x35 * x18))))))))))))));
- { uint64_t x49 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x11 * (((uint64_t)x16 * x35) + (((uint64_t)x18 * x36) + (((uint64_t)x20 * x34) + (((uint64_t)x22 * x32) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + (((uint64_t)x32 * x22) + (((uint64_t)x34 * x20) + (((uint64_t)x36 * x18) + ((uint64_t)x35 * x16))))))))))))));
- { uint64_t x50 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x11 * ((0x2 * ((uint64_t)x14 * x35)) + (((uint64_t)x16 * x36) + (((uint64_t)x18 * x34) + ((0x2 * ((uint64_t)x20 * x32)) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + ((0x2 * ((uint64_t)x32 * x20)) + (((uint64_t)x34 * x18) + (((uint64_t)x36 * x16) + (0x2 * ((uint64_t)x35 * x14))))))))))))))));
- { uint64_t x51 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint64_t)x12 * x35)) + ((0x2 * ((uint64_t)x14 * x36)) + (((uint64_t)x16 * x34) + ((0x2 * ((uint64_t)x18 * x32)) + ((0x2 * ((uint64_t)x20 * x30)) + (((uint64_t)x22 * x28) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + (((uint64_t)x28 * x22) + ((0x2 * ((uint64_t)x30 * x20)) + ((0x2 * ((uint64_t)x32 * x18)) + (((uint64_t)x34 * x16) + ((0x2 * ((uint64_t)x36 * x14)) + (0x2 * ((uint64_t)x35 * x12)))))))))))))))));
- { uint64_t x52 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x11 * (((uint64_t)x10 * x35) + (((uint64_t)x12 * x36) + (((uint64_t)x14 * x34) + (((uint64_t)x16 * x32) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + (((uint64_t)x32 * x16) + (((uint64_t)x34 * x14) + (((uint64_t)x36 * x12) + ((uint64_t)x35 * x10)))))))))))))))));
- { uint64_t x53 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x11 * ((0x2 * ((uint64_t)x8 * x35)) + (((uint64_t)x10 * x36) + (((uint64_t)x12 * x34) + ((0x2 * ((uint64_t)x14 * x32)) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + ((0x2 * ((uint64_t)x20 * x26)) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + ((0x2 * ((uint64_t)x26 * x20)) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + ((0x2 * ((uint64_t)x32 * x14)) + (((uint64_t)x34 * x12) + (((uint64_t)x36 * x10) + (0x2 * ((uint64_t)x35 * x8)))))))))))))))))));
- { uint64_t x54 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * ((0x2 * ((uint64_t)x6 * x35)) + ((0x2 * ((uint64_t)x8 * x36)) + (((uint64_t)x10 * x34) + ((0x2 * ((uint64_t)x12 * x32)) + ((0x2 * ((uint64_t)x14 * x30)) + (((uint64_t)x16 * x28) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + (((uint64_t)x28 * x16) + ((0x2 * ((uint64_t)x30 * x14)) + ((0x2 * ((uint64_t)x32 * x12)) + (((uint64_t)x34 * x10) + ((0x2 * ((uint64_t)x36 * x8)) + (0x2 * ((uint64_t)x35 * x6))))))))))))))))))));
- { ℤ x55 = (((uint64_t)x2 * x2) +ℤ (0x11 *ℤ ((0x2 * ((uint64_t)x4 * x35)) + ((0x2 * ((uint64_t)x6 * x36)) + ((0x2 * ((uint64_t)x8 * x34)) + ((0x2 * ((uint64_t)x10 * x32)) + ((0x2 * ((uint64_t)x12 * x30)) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + ((0x2 * ((uint64_t)x18 * x24)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((0x2 * ((uint64_t)x24 * x18)) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + ((0x2 * ((uint64_t)x30 * x12)) + ((0x2 * ((uint64_t)x32 * x10)) + ((0x2 * ((uint64_t)x34 * x8)) + ((0x2 * ((uint64_t)x36 * x6)) + (0x2 * ((uint64_t)x35 * x4)))))))))))))))))))));
- { uint64_t x56 = (x55 >> 0x1a);
- { uint32_t x57 = (x55 & 0x3ffffff);
- { uint64_t x58 = (x56 + x54);
- { uint64_t x59 = (x58 >> 0x1a);
- { uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- { uint64_t x61 = (x59 + x53);
- { uint64_t x62 = (x61 >> 0x1a);
- { uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- { uint64_t x64 = (x62 + x52);
- { uint64_t x65 = (x64 >> 0x19);
- { uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- { uint64_t x67 = (x65 + x51);
- { uint64_t x68 = (x67 >> 0x1a);
- { uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- { uint64_t x70 = (x68 + x50);
- { uint64_t x71 = (x70 >> 0x1a);
- { uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- { uint64_t x73 = (x71 + x49);
- { uint64_t x74 = (x73 >> 0x19);
- { uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- { uint64_t x76 = (x74 + x48);
- { uint64_t x77 = (x76 >> 0x1a);
- { uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- { uint64_t x79 = (x77 + x47);
- { uint64_t x80 = (x79 >> 0x1a);
- { uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- { uint64_t x82 = (x80 + x46);
- { uint64_t x83 = (x82 >> 0x19);
- { uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- { uint64_t x85 = (x83 + x45);
- { uint64_t x86 = (x85 >> 0x1a);
- { uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- { uint64_t x88 = (x86 + x44);
- { uint64_t x89 = (x88 >> 0x1a);
- { uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- { uint64_t x91 = (x89 + x43);
- { uint64_t x92 = (x91 >> 0x19);
- { uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- { uint64_t x94 = (x92 + x42);
- { uint64_t x95 = (x94 >> 0x1a);
- { uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- { uint64_t x97 = (x95 + x41);
- { uint64_t x98 = (x97 >> 0x1a);
- { uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- { uint64_t x100 = (x98 + x40);
- { uint64_t x101 = (x100 >> 0x19);
- { uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- { uint64_t x103 = (x101 + x39);
- { uint64_t x104 = (x103 >> 0x1a);
- { uint32_t x105 = ((uint32_t)x103 & 0x3ffffff);
- { uint64_t x106 = (x104 + x38);
- { uint64_t x107 = (x106 >> 0x1a);
- { uint32_t x108 = ((uint32_t)x106 & 0x3ffffff);
- { uint64_t x109 = (x107 + x37);
- { uint64_t x110 = (x109 >> 0x19);
- { uint32_t x111 = ((uint32_t)x109 & 0x1ffffff);
- { uint64_t x112 = (x57 + (0x11 * x110));
- { uint32_t x113 = (uint32_t) (x112 >> 0x1a);
- { uint32_t x114 = ((uint32_t)x112 & 0x3ffffff);
- { uint32_t x115 = (x113 + x60);
- { uint32_t x116 = (x115 >> 0x1a);
- { uint32_t x117 = (x115 & 0x3ffffff);
- out[0] = x114;
- out[1] = x117;
- out[2] = (x116 + x63);
- out[3] = x66;
- out[4] = x69;
- out[5] = x72;
- out[6] = x75;
- out[7] = x78;
- out[8] = x81;
- out[9] = x84;
- out[10] = x87;
- out[11] = x90;
- out[12] = x93;
- out[13] = x96;
- out[14] = x99;
- out[15] = x102;
- out[16] = x105;
- out[17] = x108;
- out[18] = x111;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e488m17_19limbs/fesquare.v b/src/Specific/solinas32_2e488m17_19limbs/fesquare.v
deleted file mode 100644
index b516c0d66..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e488m17_19limbs.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_2e488m17_19limbs/fesquareDisplay.log b/src/Specific/solinas32_2e488m17_19limbs/fesquareDisplay.log
deleted file mode 100644
index 4c31d51f8..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,88 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x35, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x37 = (((uint64_t)x2 * x35) + (((uint64_t)x4 * x36) + (((uint64_t)x6 * x34) + ((0x2 * ((uint64_t)x8 * x32)) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + ((0x2 * ((uint64_t)x14 * x26)) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + ((0x2 * ((uint64_t)x26 * x14)) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + ((0x2 * ((uint64_t)x32 * x8)) + (((uint64_t)x34 * x6) + (((uint64_t)x36 * x4) + ((uint64_t)x35 * x2)))))))))))))))))));
- uint64_t x38 = ((((uint64_t)x2 * x36) + (((uint64_t)x4 * x34) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + (((uint64_t)x10 * x28) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + (((uint64_t)x16 * x22) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (((uint64_t)x22 * x16) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + (((uint64_t)x28 * x10) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + (((uint64_t)x34 * x4) + ((uint64_t)x36 * x2)))))))))))))))))) + (0x11 * (0x2 * ((uint64_t)x35 * x35))));
- uint64_t x39 = ((((uint64_t)x2 * x34) + ((0x2 * ((uint64_t)x4 * x32)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x34 * x2))))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x36 * x35)) + (0x2 * ((uint64_t)x35 * x36)))));
- uint64_t x40 = ((((uint64_t)x2 * x32) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + ((0x2 * ((uint64_t)x8 * x26)) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + ((0x2 * ((uint64_t)x26 * x8)) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x32 * x2)))))))))))))))) + (0x11 * (((uint64_t)x34 * x35) + (((uint64_t)x36 * x36) + ((uint64_t)x35 * x34)))));
- uint64_t x41 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + ((0x2 * ((uint64_t)x6 * x26)) + ((0x2 * ((uint64_t)x8 * x24)) + (((uint64_t)x10 * x22) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + (((uint64_t)x22 * x10) + ((0x2 * ((uint64_t)x24 * x8)) + ((0x2 * ((uint64_t)x26 * x6)) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x32 * x35)) + (((uint64_t)x34 * x36) + (((uint64_t)x36 * x34) + (0x2 * ((uint64_t)x35 * x32)))))));
- uint64_t x42 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x30 * x35)) + ((0x2 * ((uint64_t)x32 * x36)) + (((uint64_t)x34 * x34) + ((0x2 * ((uint64_t)x36 * x32)) + (0x2 * ((uint64_t)x35 * x30))))))));
- uint64_t x43 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x11 * (((uint64_t)x28 * x35) + (((uint64_t)x30 * x36) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + (((uint64_t)x36 * x30) + ((uint64_t)x35 * x28))))))));
- uint64_t x44 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x11 * ((0x2 * ((uint64_t)x26 * x35)) + (((uint64_t)x28 * x36) + (((uint64_t)x30 * x34) + ((0x2 * ((uint64_t)x32 * x32)) + (((uint64_t)x34 * x30) + (((uint64_t)x36 * x28) + (0x2 * ((uint64_t)x35 * x26))))))))));
- uint64_t x45 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x11 * ((0x2 * ((uint64_t)x24 * x35)) + ((0x2 * ((uint64_t)x26 * x36)) + (((uint64_t)x28 * x34) + ((0x2 * ((uint64_t)x30 * x32)) + ((0x2 * ((uint64_t)x32 * x30)) + (((uint64_t)x34 * x28) + ((0x2 * ((uint64_t)x36 * x26)) + (0x2 * ((uint64_t)x35 * x24)))))))))));
- uint64_t x46 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x11 * (((uint64_t)x22 * x35) + (((uint64_t)x24 * x36) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + (((uint64_t)x30 * x30) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + (((uint64_t)x36 * x24) + ((uint64_t)x35 * x22)))))))))));
- uint64_t x47 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x11 * ((0x2 * ((uint64_t)x20 * x35)) + (((uint64_t)x22 * x36) + (((uint64_t)x24 * x34) + ((0x2 * ((uint64_t)x26 * x32)) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + ((0x2 * ((uint64_t)x32 * x26)) + (((uint64_t)x34 * x24) + (((uint64_t)x36 * x22) + (0x2 * ((uint64_t)x35 * x20)))))))))))));
- uint64_t x48 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x11 * ((0x2 * ((uint64_t)x18 * x35)) + ((0x2 * ((uint64_t)x20 * x36)) + (((uint64_t)x22 * x34) + ((0x2 * ((uint64_t)x24 * x32)) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + ((0x2 * ((uint64_t)x32 * x24)) + (((uint64_t)x34 * x22) + ((0x2 * ((uint64_t)x36 * x20)) + (0x2 * ((uint64_t)x35 * x18))))))))))))));
- uint64_t x49 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x11 * (((uint64_t)x16 * x35) + (((uint64_t)x18 * x36) + (((uint64_t)x20 * x34) + (((uint64_t)x22 * x32) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + (((uint64_t)x32 * x22) + (((uint64_t)x34 * x20) + (((uint64_t)x36 * x18) + ((uint64_t)x35 * x16))))))))))))));
- uint64_t x50 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x11 * ((0x2 * ((uint64_t)x14 * x35)) + (((uint64_t)x16 * x36) + (((uint64_t)x18 * x34) + ((0x2 * ((uint64_t)x20 * x32)) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + ((0x2 * ((uint64_t)x32 * x20)) + (((uint64_t)x34 * x18) + (((uint64_t)x36 * x16) + (0x2 * ((uint64_t)x35 * x14))))))))))))))));
- uint64_t x51 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint64_t)x12 * x35)) + ((0x2 * ((uint64_t)x14 * x36)) + (((uint64_t)x16 * x34) + ((0x2 * ((uint64_t)x18 * x32)) + ((0x2 * ((uint64_t)x20 * x30)) + (((uint64_t)x22 * x28) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + (((uint64_t)x28 * x22) + ((0x2 * ((uint64_t)x30 * x20)) + ((0x2 * ((uint64_t)x32 * x18)) + (((uint64_t)x34 * x16) + ((0x2 * ((uint64_t)x36 * x14)) + (0x2 * ((uint64_t)x35 * x12)))))))))))))))));
- uint64_t x52 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x11 * (((uint64_t)x10 * x35) + (((uint64_t)x12 * x36) + (((uint64_t)x14 * x34) + (((uint64_t)x16 * x32) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + (((uint64_t)x32 * x16) + (((uint64_t)x34 * x14) + (((uint64_t)x36 * x12) + ((uint64_t)x35 * x10)))))))))))))))));
- uint64_t x53 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x11 * ((0x2 * ((uint64_t)x8 * x35)) + (((uint64_t)x10 * x36) + (((uint64_t)x12 * x34) + ((0x2 * ((uint64_t)x14 * x32)) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + ((0x2 * ((uint64_t)x20 * x26)) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + ((0x2 * ((uint64_t)x26 * x20)) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + ((0x2 * ((uint64_t)x32 * x14)) + (((uint64_t)x34 * x12) + (((uint64_t)x36 * x10) + (0x2 * ((uint64_t)x35 * x8)))))))))))))))))));
- uint64_t x54 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * ((0x2 * ((uint64_t)x6 * x35)) + ((0x2 * ((uint64_t)x8 * x36)) + (((uint64_t)x10 * x34) + ((0x2 * ((uint64_t)x12 * x32)) + ((0x2 * ((uint64_t)x14 * x30)) + (((uint64_t)x16 * x28) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + (((uint64_t)x28 * x16) + ((0x2 * ((uint64_t)x30 * x14)) + ((0x2 * ((uint64_t)x32 * x12)) + (((uint64_t)x34 * x10) + ((0x2 * ((uint64_t)x36 * x8)) + (0x2 * ((uint64_t)x35 * x6))))))))))))))))))));
- ℤ x55 = (((uint64_t)x2 * x2) +ℤ (0x11 *ℤ ((0x2 * ((uint64_t)x4 * x35)) + ((0x2 * ((uint64_t)x6 * x36)) + ((0x2 * ((uint64_t)x8 * x34)) + ((0x2 * ((uint64_t)x10 * x32)) + ((0x2 * ((uint64_t)x12 * x30)) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + ((0x2 * ((uint64_t)x18 * x24)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((0x2 * ((uint64_t)x24 * x18)) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + ((0x2 * ((uint64_t)x30 * x12)) + ((0x2 * ((uint64_t)x32 * x10)) + ((0x2 * ((uint64_t)x34 * x8)) + ((0x2 * ((uint64_t)x36 * x6)) + (0x2 * ((uint64_t)x35 * x4)))))))))))))))))))));
- uint64_t x56 = (x55 >> 0x1a);
- uint32_t x57 = (x55 & 0x3ffffff);
- uint64_t x58 = (x56 + x54);
- uint64_t x59 = (x58 >> 0x1a);
- uint32_t x60 = ((uint32_t)x58 & 0x3ffffff);
- uint64_t x61 = (x59 + x53);
- uint64_t x62 = (x61 >> 0x1a);
- uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- uint64_t x64 = (x62 + x52);
- uint64_t x65 = (x64 >> 0x19);
- uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- uint64_t x67 = (x65 + x51);
- uint64_t x68 = (x67 >> 0x1a);
- uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- uint64_t x70 = (x68 + x50);
- uint64_t x71 = (x70 >> 0x1a);
- uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- uint64_t x73 = (x71 + x49);
- uint64_t x74 = (x73 >> 0x19);
- uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- uint64_t x76 = (x74 + x48);
- uint64_t x77 = (x76 >> 0x1a);
- uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- uint64_t x79 = (x77 + x47);
- uint64_t x80 = (x79 >> 0x1a);
- uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- uint64_t x82 = (x80 + x46);
- uint64_t x83 = (x82 >> 0x19);
- uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- uint64_t x85 = (x83 + x45);
- uint64_t x86 = (x85 >> 0x1a);
- uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- uint64_t x88 = (x86 + x44);
- uint64_t x89 = (x88 >> 0x1a);
- uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- uint64_t x91 = (x89 + x43);
- uint64_t x92 = (x91 >> 0x19);
- uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- uint64_t x94 = (x92 + x42);
- uint64_t x95 = (x94 >> 0x1a);
- uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- uint64_t x97 = (x95 + x41);
- uint64_t x98 = (x97 >> 0x1a);
- uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- uint64_t x100 = (x98 + x40);
- uint64_t x101 = (x100 >> 0x19);
- uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- uint64_t x103 = (x101 + x39);
- uint64_t x104 = (x103 >> 0x1a);
- uint32_t x105 = ((uint32_t)x103 & 0x3ffffff);
- uint64_t x106 = (x104 + x38);
- uint64_t x107 = (x106 >> 0x1a);
- uint32_t x108 = ((uint32_t)x106 & 0x3ffffff);
- uint64_t x109 = (x107 + x37);
- uint64_t x110 = (x109 >> 0x19);
- uint32_t x111 = ((uint32_t)x109 & 0x1ffffff);
- uint64_t x112 = (x57 + (0x11 * x110));
- uint32_t x113 = (uint32_t) (x112 >> 0x1a);
- uint32_t x114 = ((uint32_t)x112 & 0x3ffffff);
- uint32_t x115 = (x113 + x60);
- uint32_t x116 = (x115 >> 0x1a);
- uint32_t x117 = (x115 & 0x3ffffff);
- return (Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, (x116 + x63), Return x117, Return x114))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e488m17_19limbs/fesquareDisplay.v b/src/Specific/solinas32_2e488m17_19limbs/fesquareDisplay.v
deleted file mode 100644
index 2e8db5ad9..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e488m17_19limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e488m17_19limbs/fesub.c b/src/Specific/solinas32_2e488m17_19limbs/fesub.c
deleted file mode 100644
index 844b8947a..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/fesub.c
+++ /dev/null
@@ -1,60 +0,0 @@
-static void fesub(uint32_t out[19], const uint32_t in1[19], const uint32_t in2[19]) {
- { const uint32_t x38 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x74 = in2[18];
- { const uint32_t x75 = in2[17];
- { const uint32_t x73 = in2[16];
- { const uint32_t x71 = in2[15];
- { const uint32_t x69 = in2[14];
- { const uint32_t x67 = in2[13];
- { const uint32_t x65 = in2[12];
- { const uint32_t x63 = in2[11];
- { const uint32_t x61 = in2[10];
- { const uint32_t x59 = in2[9];
- { const uint32_t x57 = in2[8];
- { const uint32_t x55 = in2[7];
- { const uint32_t x53 = in2[6];
- { const uint32_t x51 = in2[5];
- { const uint32_t x49 = in2[4];
- { const uint32_t x47 = in2[3];
- { const uint32_t x45 = in2[2];
- { const uint32_t x43 = in2[1];
- { const uint32_t x41 = in2[0];
- out[0] = ((0x7ffffde + x5) - x41);
- out[1] = ((0x7fffffe + x7) - x43);
- out[2] = ((0x7fffffe + x9) - x45);
- out[3] = ((0x3fffffe + x11) - x47);
- out[4] = ((0x7fffffe + x13) - x49);
- out[5] = ((0x7fffffe + x15) - x51);
- out[6] = ((0x3fffffe + x17) - x53);
- out[7] = ((0x7fffffe + x19) - x55);
- out[8] = ((0x7fffffe + x21) - x57);
- out[9] = ((0x3fffffe + x23) - x59);
- out[10] = ((0x7fffffe + x25) - x61);
- out[11] = ((0x7fffffe + x27) - x63);
- out[12] = ((0x3fffffe + x29) - x65);
- out[13] = ((0x7fffffe + x31) - x67);
- out[14] = ((0x7fffffe + x33) - x69);
- out[15] = ((0x3fffffe + x35) - x71);
- out[16] = ((0x7fffffe + x37) - x73);
- out[17] = ((0x7fffffe + x39) - x75);
- out[18] = ((0x3fffffe + x38) - x74);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e488m17_19limbs/fesub.v b/src/Specific/solinas32_2e488m17_19limbs/fesub.v
deleted file mode 100644
index 88eabf376..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e488m17_19limbs.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_2e488m17_19limbs/fesubDisplay.log b/src/Specific/solinas32_2e488m17_19limbs/fesubDisplay.log
deleted file mode 100644
index 7e8da590d..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x38, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x74, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41))%core,
- (((0x3fffffe + x38) - x74), ((0x7fffffe + x39) - x75), ((0x7fffffe + x37) - x73), ((0x3fffffe + x35) - x71), ((0x7fffffe + x33) - x69), ((0x7fffffe + x31) - x67), ((0x3fffffe + x29) - x65), ((0x7fffffe + x27) - x63), ((0x7fffffe + x25) - x61), ((0x3fffffe + x23) - x59), ((0x7fffffe + x21) - x57), ((0x7fffffe + x19) - x55), ((0x3fffffe + x17) - x53), ((0x7fffffe + x15) - x51), ((0x7fffffe + x13) - x49), ((0x3fffffe + x11) - x47), ((0x7fffffe + x9) - x45), ((0x7fffffe + x7) - x43), ((0x7ffffde + x5) - x41)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e488m17_19limbs/fesubDisplay.v b/src/Specific/solinas32_2e488m17_19limbs/fesubDisplay.v
deleted file mode 100644
index 9b498cf2f..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e488m17_19limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e488m17_19limbs/freeze.c b/src/Specific/solinas32_2e488m17_19limbs/freeze.c
deleted file mode 100644
index 4aa6c61f8..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/freeze.c
+++ /dev/null
@@ -1,99 +0,0 @@
-static void freeze(uint32_t out[19], const uint32_t in1[19]) {
- { const uint32_t x35 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffef);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x4, 0x3ffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x6, 0x3ffffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x8, 0x1ffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x10, 0x3ffffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x12, 0x3ffffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x14, 0x1ffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x16, 0x3ffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x18, 0x3ffffff);
- { uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x20, 0x1ffffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x22, 0x3ffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x24, 0x3ffffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x26, 0x1ffffff);
- { uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x28, 0x3ffffff);
- { uint32_t x80, uint8_t x81 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x30, 0x3ffffff);
- { uint32_t x83, uint8_t x84 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x32, 0x1ffffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x34, 0x3ffffff);
- { uint32_t x89, uint8_t x90 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x36, 0x3ffffff);
- { uint32_t x92, uint8_t x93 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x35, 0x1ffffff);
- { uint32_t x94 = cmovznz32(x93, 0x0, 0xffffffff);
- { uint32_t x95 = (x94 & 0x3ffffef);
- { uint32_t x97, uint8_t x98 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x38, Return x95);
- { uint32_t x99 = (x94 & 0x3ffffff);
- { uint32_t x101, uint8_t x102 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x98, Return x41, Return x99);
- { uint32_t x103 = (x94 & 0x3ffffff);
- { uint32_t x105, uint8_t x106 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x102, Return x44, Return x103);
- { uint32_t x107 = (x94 & 0x1ffffff);
- { uint32_t x109, uint8_t x110 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x106, Return x47, Return x107);
- { uint32_t x111 = (x94 & 0x3ffffff);
- { uint32_t x113, uint8_t x114 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x110, Return x50, Return x111);
- { uint32_t x115 = (x94 & 0x3ffffff);
- { uint32_t x117, uint8_t x118 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x114, Return x53, Return x115);
- { uint32_t x119 = (x94 & 0x1ffffff);
- { uint32_t x121, uint8_t x122 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x118, Return x56, Return x119);
- { uint32_t x123 = (x94 & 0x3ffffff);
- { uint32_t x125, uint8_t x126 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x122, Return x59, Return x123);
- { uint32_t x127 = (x94 & 0x3ffffff);
- { uint32_t x129, uint8_t x130 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x126, Return x62, Return x127);
- { uint32_t x131 = (x94 & 0x1ffffff);
- { uint32_t x133, uint8_t x134 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x130, Return x65, Return x131);
- { uint32_t x135 = (x94 & 0x3ffffff);
- { uint32_t x137, uint8_t x138 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x134, Return x68, Return x135);
- { uint32_t x139 = (x94 & 0x3ffffff);
- { uint32_t x141, uint8_t x142 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x138, Return x71, Return x139);
- { uint32_t x143 = (x94 & 0x1ffffff);
- { uint32_t x145, uint8_t x146 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x142, Return x74, Return x143);
- { uint32_t x147 = (x94 & 0x3ffffff);
- { uint32_t x149, uint8_t x150 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x146, Return x77, Return x147);
- { uint32_t x151 = (x94 & 0x3ffffff);
- { uint32_t x153, uint8_t x154 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x150, Return x80, Return x151);
- { uint32_t x155 = (x94 & 0x1ffffff);
- { uint32_t x157, uint8_t x158 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x154, Return x83, Return x155);
- { uint32_t x159 = (x94 & 0x3ffffff);
- { uint32_t x161, uint8_t x162 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x158, Return x86, Return x159);
- { uint32_t x163 = (x94 & 0x3ffffff);
- { uint32_t x165, uint8_t x166 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x162, Return x89, Return x163);
- { uint32_t x167 = (x94 & 0x1ffffff);
- { uint32_t x169, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x166, Return x92, Return x167);
- out[0] = x97;
- out[1] = x101;
- out[2] = x105;
- out[3] = x109;
- out[4] = x113;
- out[5] = x117;
- out[6] = x121;
- out[7] = x125;
- out[8] = x129;
- out[9] = x133;
- out[10] = x137;
- out[11] = x141;
- out[12] = x145;
- out[13] = x149;
- out[14] = x153;
- out[15] = x157;
- out[16] = x161;
- out[17] = x165;
- out[18] = x169;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e488m17_19limbs/freeze.v b/src/Specific/solinas32_2e488m17_19limbs/freeze.v
deleted file mode 100644
index d40fd750c..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e488m17_19limbs.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_2e488m17_19limbs/freezeDisplay.log b/src/Specific/solinas32_2e488m17_19limbs/freezeDisplay.log
deleted file mode 100644
index 68a85d9df..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/freezeDisplay.log
+++ /dev/null
@@ -1,65 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x35, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffef);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x4, 0x3ffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x6, 0x3ffffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x8, 0x1ffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x10, 0x3ffffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x12, 0x3ffffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x14, 0x1ffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x16, 0x3ffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x18, 0x3ffffff);
- uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x20, 0x1ffffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x22, 0x3ffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x24, 0x3ffffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x26, 0x1ffffff);
- uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x28, 0x3ffffff);
- uint32_t x80, uint8_t x81 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x30, 0x3ffffff);
- uint32_t x83, uint8_t x84 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x32, 0x1ffffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x34, 0x3ffffff);
- uint32_t x89, uint8_t x90 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x36, 0x3ffffff);
- uint32_t x92, uint8_t x93 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x35, 0x1ffffff);
- uint32_t x94 = cmovznz32(x93, 0x0, 0xffffffff);
- uint32_t x95 = (x94 & 0x3ffffef);
- uint32_t x97, uint8_t x98 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x38, Return x95);
- uint32_t x99 = (x94 & 0x3ffffff);
- uint32_t x101, uint8_t x102 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x98, Return x41, Return x99);
- uint32_t x103 = (x94 & 0x3ffffff);
- uint32_t x105, uint8_t x106 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x102, Return x44, Return x103);
- uint32_t x107 = (x94 & 0x1ffffff);
- uint32_t x109, uint8_t x110 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x106, Return x47, Return x107);
- uint32_t x111 = (x94 & 0x3ffffff);
- uint32_t x113, uint8_t x114 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x110, Return x50, Return x111);
- uint32_t x115 = (x94 & 0x3ffffff);
- uint32_t x117, uint8_t x118 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x114, Return x53, Return x115);
- uint32_t x119 = (x94 & 0x1ffffff);
- uint32_t x121, uint8_t x122 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x118, Return x56, Return x119);
- uint32_t x123 = (x94 & 0x3ffffff);
- uint32_t x125, uint8_t x126 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x122, Return x59, Return x123);
- uint32_t x127 = (x94 & 0x3ffffff);
- uint32_t x129, uint8_t x130 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x126, Return x62, Return x127);
- uint32_t x131 = (x94 & 0x1ffffff);
- uint32_t x133, uint8_t x134 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x130, Return x65, Return x131);
- uint32_t x135 = (x94 & 0x3ffffff);
- uint32_t x137, uint8_t x138 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x134, Return x68, Return x135);
- uint32_t x139 = (x94 & 0x3ffffff);
- uint32_t x141, uint8_t x142 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x138, Return x71, Return x139);
- uint32_t x143 = (x94 & 0x1ffffff);
- uint32_t x145, uint8_t x146 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x142, Return x74, Return x143);
- uint32_t x147 = (x94 & 0x3ffffff);
- uint32_t x149, uint8_t x150 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x146, Return x77, Return x147);
- uint32_t x151 = (x94 & 0x3ffffff);
- uint32_t x153, uint8_t x154 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x150, Return x80, Return x151);
- uint32_t x155 = (x94 & 0x1ffffff);
- uint32_t x157, uint8_t x158 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x154, Return x83, Return x155);
- uint32_t x159 = (x94 & 0x3ffffff);
- uint32_t x161, uint8_t x162 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x158, Return x86, Return x159);
- uint32_t x163 = (x94 & 0x3ffffff);
- uint32_t x165, uint8_t x166 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x162, Return x89, Return x163);
- uint32_t x167 = (x94 & 0x1ffffff);
- uint32_t x169, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x166, Return x92, Return x167);
- (Return x169, Return x165, Return x161, Return x157, Return x153, Return x149, Return x145, Return x141, Return x137, Return x133, Return x129, Return x125, Return x121, Return x117, Return x113, Return x109, Return x105, Return x101, Return x97))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e488m17_19limbs/freezeDisplay.v b/src/Specific/solinas32_2e488m17_19limbs/freezeDisplay.v
deleted file mode 100644
index dd05b88ea..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e488m17_19limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e488m17_19limbs/py_interpreter.sh b/src/Specific/solinas32_2e488m17_19limbs/py_interpreter.sh
deleted file mode 100755
index 67515d991..000000000
--- a/src/Specific/solinas32_2e488m17_19limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**488 - 17' -Dmodulus_bytes='25 + 13/19' -Da24='121665'
diff --git a/src/Specific/solinas32_2e488m17_20limbs/CurveParameters.v b/src/Specific/solinas32_2e488m17_20limbs/CurveParameters.v
deleted file mode 100644
index 0c38c15e7..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^488 - 17
-Base: 24.4
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 20%nat;
- base := 24 + 2/5;
- bitwidth := 32;
- s := 2^488;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 20); [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_2e488m17_20limbs/Synthesis.v b/src/Specific/solinas32_2e488m17_20limbs/Synthesis.v
deleted file mode 100644
index 421236ed7..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e488m17_20limbs.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_2e488m17_20limbs/compiler.sh b/src/Specific/solinas32_2e488m17_20limbs/compiler.sh
deleted file mode 100755
index 0eb68276d..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,24,25,24,24,25,24,25,24,24,25,24,25,24,24,25,24,25,24,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='61' -Dmodulus_limbs='20' -Dq_mpz='(1_mpz<<488) - 17' "$@"
diff --git a/src/Specific/solinas32_2e488m17_20limbs/compilerxx.sh b/src/Specific/solinas32_2e488m17_20limbs/compilerxx.sh
deleted file mode 100755
index 865354889..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,24,25,24,24,25,24,25,24,24,25,24,25,24,24,25,24,25,24,24}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='61' -Dmodulus_limbs='20' -Dq_mpz='(1_mpz<<488) - 17' "$@"
diff --git a/src/Specific/solinas32_2e488m17_20limbs/feadd.c b/src/Specific/solinas32_2e488m17_20limbs/feadd.c
deleted file mode 100644
index 28ee6f665..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/feadd.c
+++ /dev/null
@@ -1,63 +0,0 @@
-static void feadd(uint32_t out[20], const uint32_t in1[20], const uint32_t in2[20]) {
- { const uint32_t x40 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x78 = in2[19];
- { const uint32_t x79 = in2[18];
- { const uint32_t x77 = in2[17];
- { const uint32_t x75 = in2[16];
- { const uint32_t x73 = in2[15];
- { const uint32_t x71 = in2[14];
- { const uint32_t x69 = in2[13];
- { const uint32_t x67 = in2[12];
- { const uint32_t x65 = in2[11];
- { const uint32_t x63 = in2[10];
- { const uint32_t x61 = in2[9];
- { const uint32_t x59 = in2[8];
- { const uint32_t x57 = in2[7];
- { const uint32_t x55 = in2[6];
- { const uint32_t x53 = in2[5];
- { const uint32_t x51 = in2[4];
- { const uint32_t x49 = in2[3];
- { const uint32_t x47 = in2[2];
- { const uint32_t x45 = in2[1];
- { const uint32_t x43 = in2[0];
- out[0] = (x5 + x43);
- out[1] = (x7 + x45);
- out[2] = (x9 + x47);
- out[3] = (x11 + x49);
- out[4] = (x13 + x51);
- out[5] = (x15 + x53);
- out[6] = (x17 + x55);
- out[7] = (x19 + x57);
- out[8] = (x21 + x59);
- out[9] = (x23 + x61);
- out[10] = (x25 + x63);
- out[11] = (x27 + x65);
- out[12] = (x29 + x67);
- out[13] = (x31 + x69);
- out[14] = (x33 + x71);
- out[15] = (x35 + x73);
- out[16] = (x37 + x75);
- out[17] = (x39 + x77);
- out[18] = (x41 + x79);
- out[19] = (x40 + x78);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e488m17_20limbs/feadd.v b/src/Specific/solinas32_2e488m17_20limbs/feadd.v
deleted file mode 100644
index 905cc672b..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e488m17_20limbs.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_2e488m17_20limbs/feaddDisplay.log b/src/Specific/solinas32_2e488m17_20limbs/feaddDisplay.log
deleted file mode 100644
index eebe17777..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x40, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x78, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43))%core,
- ((x40 + x78), (x41 + x79), (x39 + x77), (x37 + x75), (x35 + x73), (x33 + x71), (x31 + x69), (x29 + x67), (x27 + x65), (x25 + x63), (x23 + x61), (x21 + x59), (x19 + x57), (x17 + x55), (x15 + x53), (x13 + x51), (x11 + x49), (x9 + x47), (x7 + x45), (x5 + x43)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e488m17_20limbs/feaddDisplay.v b/src/Specific/solinas32_2e488m17_20limbs/feaddDisplay.v
deleted file mode 100644
index dd1a3c726..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e488m17_20limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e488m17_20limbs/fecarry.v b/src/Specific/solinas32_2e488m17_20limbs/fecarry.v
deleted file mode 100644
index 939eff20d..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e488m17_20limbs.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_2e488m17_20limbs/fecarryDisplay.v b/src/Specific/solinas32_2e488m17_20limbs/fecarryDisplay.v
deleted file mode 100644
index f07d3fde7..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e488m17_20limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e488m17_20limbs/femul.c b/src/Specific/solinas32_2e488m17_20limbs/femul.c
deleted file mode 100644
index c1a465e6e..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/femul.c
+++ /dev/null
@@ -1,148 +0,0 @@
-static void femul(uint32_t out[20], const uint32_t in1[20], const uint32_t in2[20]) {
- { const uint32_t x40 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x78 = in2[19];
- { const uint32_t x79 = in2[18];
- { const uint32_t x77 = in2[17];
- { const uint32_t x75 = in2[16];
- { const uint32_t x73 = in2[15];
- { const uint32_t x71 = in2[14];
- { const uint32_t x69 = in2[13];
- { const uint32_t x67 = in2[12];
- { const uint32_t x65 = in2[11];
- { const uint32_t x63 = in2[10];
- { const uint32_t x61 = in2[9];
- { const uint32_t x59 = in2[8];
- { const uint32_t x57 = in2[7];
- { const uint32_t x55 = in2[6];
- { const uint32_t x53 = in2[5];
- { const uint32_t x51 = in2[4];
- { const uint32_t x49 = in2[3];
- { const uint32_t x47 = in2[2];
- { const uint32_t x45 = in2[1];
- { const uint32_t x43 = in2[0];
- { uint64_t x80 = (((uint64_t)x5 * x78) + ((0x2 * ((uint64_t)x7 * x79)) + (((uint64_t)x9 * x77) + ((0x2 * ((uint64_t)x11 * x75)) + (((uint64_t)x13 * x73) + (((uint64_t)x15 * x71) + ((0x2 * ((uint64_t)x17 * x69)) + (((uint64_t)x19 * x67) + ((0x2 * ((uint64_t)x21 * x65)) + (((uint64_t)x23 * x63) + (((uint64_t)x25 * x61) + ((0x2 * ((uint64_t)x27 * x59)) + (((uint64_t)x29 * x57) + ((0x2 * ((uint64_t)x31 * x55)) + (((uint64_t)x33 * x53) + (((uint64_t)x35 * x51) + ((0x2 * ((uint64_t)x37 * x49)) + (((uint64_t)x39 * x47) + ((0x2 * ((uint64_t)x41 * x45)) + ((uint64_t)x40 * x43))))))))))))))))))));
- { uint64_t x81 = ((((uint64_t)x5 * x79) + (((uint64_t)x7 * x77) + (((uint64_t)x9 * x75) + (((uint64_t)x11 * x73) + (((uint64_t)x13 * x71) + (((uint64_t)x15 * x69) + (((uint64_t)x17 * x67) + (((uint64_t)x19 * x65) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + (((uint64_t)x35 * x49) + (((uint64_t)x37 * x47) + (((uint64_t)x39 * x45) + ((uint64_t)x41 * x43))))))))))))))))))) + (0x11 * ((uint64_t)x40 * x78)));
- { uint64_t x82 = ((((uint64_t)x5 * x77) + ((0x2 * ((uint64_t)x7 * x75)) + (((uint64_t)x9 * x73) + ((0x2 * ((uint64_t)x11 * x71)) + ((0x2 * ((uint64_t)x13 * x69)) + (((uint64_t)x15 * x67) + ((0x2 * ((uint64_t)x17 * x65)) + (((uint64_t)x19 * x63) + ((0x2 * ((uint64_t)x21 * x61)) + ((0x2 * ((uint64_t)x23 * x59)) + (((uint64_t)x25 * x57) + ((0x2 * ((uint64_t)x27 * x55)) + (((uint64_t)x29 * x53) + ((0x2 * ((uint64_t)x31 * x51)) + ((0x2 * ((uint64_t)x33 * x49)) + (((uint64_t)x35 * x47) + ((0x2 * ((uint64_t)x37 * x45)) + ((uint64_t)x39 * x43)))))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x41 * x78)) + (0x2 * ((uint64_t)x40 * x79)))));
- { uint64_t x83 = ((((uint64_t)x5 * x75) + (((uint64_t)x7 * x73) + (((uint64_t)x9 * x71) + ((0x2 * ((uint64_t)x11 * x69)) + (((uint64_t)x13 * x67) + (((uint64_t)x15 * x65) + (((uint64_t)x17 * x63) + (((uint64_t)x19 * x61) + ((0x2 * ((uint64_t)x21 * x59)) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + ((0x2 * ((uint64_t)x31 * x49)) + (((uint64_t)x33 * x47) + (((uint64_t)x35 * x45) + ((uint64_t)x37 * x43))))))))))))))))) + (0x11 * (((uint64_t)x39 * x78) + ((0x2 * ((uint64_t)x41 * x79)) + ((uint64_t)x40 * x77)))));
- { uint64_t x84 = ((((uint64_t)x5 * x73) + ((0x2 * ((uint64_t)x7 * x71)) + ((0x2 * ((uint64_t)x9 * x69)) + ((0x2 * ((uint64_t)x11 * x67)) + ((0x2 * ((uint64_t)x13 * x65)) + (((uint64_t)x15 * x63) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + ((0x2 * ((uint64_t)x21 * x57)) + ((0x2 * ((uint64_t)x23 * x55)) + (((uint64_t)x25 * x53) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + ((0x2 * ((uint64_t)x33 * x45)) + ((uint64_t)x35 * x43)))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x37 * x78)) + ((0x2 * ((uint64_t)x39 * x79)) + ((0x2 * ((uint64_t)x41 * x77)) + (0x2 * ((uint64_t)x40 * x75)))))));
- { uint64_t x85 = ((((uint64_t)x5 * x71) + ((0x2 * ((uint64_t)x7 * x69)) + (((uint64_t)x9 * x67) + ((0x2 * ((uint64_t)x11 * x65)) + (((uint64_t)x13 * x63) + (((uint64_t)x15 * x61) + ((0x2 * ((uint64_t)x17 * x59)) + (((uint64_t)x19 * x57) + ((0x2 * ((uint64_t)x21 * x55)) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + ((0x2 * ((uint64_t)x27 * x49)) + (((uint64_t)x29 * x47) + ((0x2 * ((uint64_t)x31 * x45)) + ((uint64_t)x33 * x43))))))))))))))) + (0x11 * (((uint64_t)x35 * x78) + ((0x2 * ((uint64_t)x37 * x79)) + (((uint64_t)x39 * x77) + ((0x2 * ((uint64_t)x41 * x75)) + ((uint64_t)x40 * x73)))))));
- { uint64_t x86 = ((((uint64_t)x5 * x69) + (((uint64_t)x7 * x67) + (((uint64_t)x9 * x65) + (((uint64_t)x11 * x63) + (((uint64_t)x13 * x61) + (((uint64_t)x15 * x59) + (((uint64_t)x17 * x57) + (((uint64_t)x19 * x55) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + (((uint64_t)x25 * x49) + (((uint64_t)x27 * x47) + (((uint64_t)x29 * x45) + ((uint64_t)x31 * x43)))))))))))))) + (0x11 * (((uint64_t)x33 * x78) + (((uint64_t)x35 * x79) + (((uint64_t)x37 * x77) + (((uint64_t)x39 * x75) + (((uint64_t)x41 * x73) + ((uint64_t)x40 * x71))))))));
- { uint64_t x87 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + (((uint64_t)x9 * x63) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + (((uint64_t)x15 * x57) + ((0x2 * ((uint64_t)x17 * x55)) + (((uint64_t)x19 * x53) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + (((uint64_t)x25 * x47) + ((0x2 * ((uint64_t)x27 * x45)) + ((uint64_t)x29 * x43))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x31 * x78)) + ((0x2 * ((uint64_t)x33 * x79)) + (((uint64_t)x35 * x77) + ((0x2 * ((uint64_t)x37 * x75)) + (((uint64_t)x39 * x73) + ((0x2 * ((uint64_t)x41 * x71)) + (0x2 * ((uint64_t)x40 * x69))))))))));
- { uint64_t x88 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + ((0x2 * ((uint64_t)x11 * x59)) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + ((0x2 * ((uint64_t)x21 * x49)) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + ((uint64_t)x27 * x43)))))))))))) + (0x11 * (((uint64_t)x29 * x78) + ((0x2 * ((uint64_t)x31 * x79)) + (((uint64_t)x33 * x77) + (((uint64_t)x35 * x75) + (((uint64_t)x37 * x73) + (((uint64_t)x39 * x71) + ((0x2 * ((uint64_t)x41 * x69)) + ((uint64_t)x40 * x67))))))))));
- { uint64_t x89 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + (((uint64_t)x15 * x53) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + ((uint64_t)x25 * x43))))))))))) + (0x11 * ((0x2 * ((uint64_t)x27 * x78)) + ((0x2 * ((uint64_t)x29 * x79)) + ((0x2 * ((uint64_t)x31 * x77)) + ((0x2 * ((uint64_t)x33 * x75)) + (((uint64_t)x35 * x73) + ((0x2 * ((uint64_t)x37 * x71)) + ((0x2 * ((uint64_t)x39 * x69)) + ((0x2 * ((uint64_t)x41 * x67)) + (0x2 * ((uint64_t)x40 * x65))))))))))));
- { uint64_t x90 = ((((uint64_t)x5 * x61) + ((0x2 * ((uint64_t)x7 * x59)) + (((uint64_t)x9 * x57) + ((0x2 * ((uint64_t)x11 * x55)) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + ((0x2 * ((uint64_t)x17 * x49)) + (((uint64_t)x19 * x47) + ((0x2 * ((uint64_t)x21 * x45)) + ((uint64_t)x23 * x43)))))))))) + (0x11 * (((uint64_t)x25 * x78) + ((0x2 * ((uint64_t)x27 * x79)) + (((uint64_t)x29 * x77) + ((0x2 * ((uint64_t)x31 * x75)) + (((uint64_t)x33 * x73) + (((uint64_t)x35 * x71) + ((0x2 * ((uint64_t)x37 * x69)) + (((uint64_t)x39 * x67) + ((0x2 * ((uint64_t)x41 * x65)) + ((uint64_t)x40 * x63))))))))))));
- { uint64_t x91 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + ((uint64_t)x21 * x43))))))))) + (0x11 * (((uint64_t)x23 * x78) + (((uint64_t)x25 * x79) + (((uint64_t)x27 * x77) + (((uint64_t)x29 * x75) + (((uint64_t)x31 * x73) + (((uint64_t)x33 * x71) + (((uint64_t)x35 * x69) + (((uint64_t)x37 * x67) + (((uint64_t)x39 * x65) + (((uint64_t)x41 * x63) + ((uint64_t)x40 * x61)))))))))))));
- { uint64_t x92 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + (((uint64_t)x9 * x53) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + (((uint64_t)x15 * x47) + ((0x2 * ((uint64_t)x17 * x45)) + ((uint64_t)x19 * x43)))))))) + (0x11 * ((0x2 * ((uint64_t)x21 * x78)) + ((0x2 * ((uint64_t)x23 * x79)) + (((uint64_t)x25 * x77) + ((0x2 * ((uint64_t)x27 * x75)) + (((uint64_t)x29 * x73) + ((0x2 * ((uint64_t)x31 * x71)) + ((0x2 * ((uint64_t)x33 * x69)) + (((uint64_t)x35 * x67) + ((0x2 * ((uint64_t)x37 * x65)) + (((uint64_t)x39 * x63) + ((0x2 * ((uint64_t)x41 * x61)) + (0x2 * ((uint64_t)x40 * x59)))))))))))))));
- { uint64_t x93 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + ((0x2 * ((uint64_t)x11 * x49)) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + ((uint64_t)x17 * x43))))))) + (0x11 * (((uint64_t)x19 * x78) + ((0x2 * ((uint64_t)x21 * x79)) + (((uint64_t)x23 * x77) + (((uint64_t)x25 * x75) + (((uint64_t)x27 * x73) + (((uint64_t)x29 * x71) + ((0x2 * ((uint64_t)x31 * x69)) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + (((uint64_t)x37 * x63) + (((uint64_t)x39 * x61) + ((0x2 * ((uint64_t)x41 * x59)) + ((uint64_t)x40 * x57)))))))))))))));
- { uint64_t x94 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + ((uint64_t)x15 * x43)))))) + (0x11 * ((0x2 * ((uint64_t)x17 * x78)) + ((0x2 * ((uint64_t)x19 * x79)) + ((0x2 * ((uint64_t)x21 * x77)) + ((0x2 * ((uint64_t)x23 * x75)) + (((uint64_t)x25 * x73) + ((0x2 * ((uint64_t)x27 * x71)) + ((0x2 * ((uint64_t)x29 * x69)) + ((0x2 * ((uint64_t)x31 * x67)) + ((0x2 * ((uint64_t)x33 * x65)) + (((uint64_t)x35 * x63) + ((0x2 * ((uint64_t)x37 * x61)) + ((0x2 * ((uint64_t)x39 * x59)) + ((0x2 * ((uint64_t)x41 * x57)) + (0x2 * ((uint64_t)x40 * x55)))))))))))))))));
- { uint64_t x95 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + (((uint64_t)x9 * x47) + ((0x2 * ((uint64_t)x11 * x45)) + ((uint64_t)x13 * x43))))) + (0x11 * (((uint64_t)x15 * x78) + ((0x2 * ((uint64_t)x17 * x79)) + (((uint64_t)x19 * x77) + ((0x2 * ((uint64_t)x21 * x75)) + (((uint64_t)x23 * x73) + (((uint64_t)x25 * x71) + ((0x2 * ((uint64_t)x27 * x69)) + (((uint64_t)x29 * x67) + ((0x2 * ((uint64_t)x31 * x65)) + (((uint64_t)x33 * x63) + (((uint64_t)x35 * x61) + ((0x2 * ((uint64_t)x37 * x59)) + (((uint64_t)x39 * x57) + ((0x2 * ((uint64_t)x41 * x55)) + ((uint64_t)x40 * x53)))))))))))))))));
- { uint64_t x96 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + ((uint64_t)x11 * x43)))) + (0x11 * (((uint64_t)x13 * x78) + (((uint64_t)x15 * x79) + (((uint64_t)x17 * x77) + (((uint64_t)x19 * x75) + (((uint64_t)x21 * x73) + (((uint64_t)x23 * x71) + (((uint64_t)x25 * x69) + (((uint64_t)x27 * x67) + (((uint64_t)x29 * x65) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + (((uint64_t)x35 * x59) + (((uint64_t)x37 * x57) + (((uint64_t)x39 * x55) + (((uint64_t)x41 * x53) + ((uint64_t)x40 * x51))))))))))))))))));
- { uint64_t x97 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((uint64_t)x9 * x43))) + (0x11 * ((0x2 * ((uint64_t)x11 * x78)) + ((0x2 * ((uint64_t)x13 * x79)) + (((uint64_t)x15 * x77) + ((0x2 * ((uint64_t)x17 * x75)) + (((uint64_t)x19 * x73) + ((0x2 * ((uint64_t)x21 * x71)) + ((0x2 * ((uint64_t)x23 * x69)) + (((uint64_t)x25 * x67) + ((0x2 * ((uint64_t)x27 * x65)) + (((uint64_t)x29 * x63) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + (((uint64_t)x35 * x57) + ((0x2 * ((uint64_t)x37 * x55)) + (((uint64_t)x39 * x53) + ((0x2 * ((uint64_t)x41 * x51)) + (0x2 * ((uint64_t)x40 * x49))))))))))))))))))));
- { uint64_t x98 = ((((uint64_t)x5 * x45) + ((uint64_t)x7 * x43)) + (0x11 * (((uint64_t)x9 * x78) + ((0x2 * ((uint64_t)x11 * x79)) + (((uint64_t)x13 * x77) + (((uint64_t)x15 * x75) + (((uint64_t)x17 * x73) + (((uint64_t)x19 * x71) + ((0x2 * ((uint64_t)x21 * x69)) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + ((0x2 * ((uint64_t)x31 * x59)) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + (((uint64_t)x37 * x53) + (((uint64_t)x39 * x51) + ((0x2 * ((uint64_t)x41 * x49)) + ((uint64_t)x40 * x47))))))))))))))))))));
- { uint64_t x99 = (((uint64_t)x5 * x43) + (0x11 * ((0x2 * ((uint64_t)x7 * x78)) + ((0x2 * ((uint64_t)x9 * x79)) + ((0x2 * ((uint64_t)x11 * x77)) + ((0x2 * ((uint64_t)x13 * x75)) + (((uint64_t)x15 * x73) + ((0x2 * ((uint64_t)x17 * x71)) + ((0x2 * ((uint64_t)x19 * x69)) + ((0x2 * ((uint64_t)x21 * x67)) + ((0x2 * ((uint64_t)x23 * x65)) + (((uint64_t)x25 * x63) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + ((0x2 * ((uint64_t)x33 * x55)) + (((uint64_t)x35 * x53) + ((0x2 * ((uint64_t)x37 * x51)) + ((0x2 * ((uint64_t)x39 * x49)) + ((0x2 * ((uint64_t)x41 * x47)) + (0x2 * ((uint64_t)x40 * x45))))))))))))))))))))));
- { uint64_t x100 = (x99 >> 0x19);
- { uint32_t x101 = ((uint32_t)x99 & 0x1ffffff);
- { uint64_t x102 = (x100 + x98);
- { uint64_t x103 = (x102 >> 0x18);
- { uint32_t x104 = ((uint32_t)x102 & 0xffffff);
- { uint64_t x105 = (x103 + x97);
- { uint64_t x106 = (x105 >> 0x19);
- { uint32_t x107 = ((uint32_t)x105 & 0x1ffffff);
- { uint64_t x108 = (x106 + x96);
- { uint64_t x109 = (x108 >> 0x18);
- { uint32_t x110 = ((uint32_t)x108 & 0xffffff);
- { uint64_t x111 = (x109 + x95);
- { uint64_t x112 = (x111 >> 0x18);
- { uint32_t x113 = ((uint32_t)x111 & 0xffffff);
- { uint64_t x114 = (x112 + x94);
- { uint64_t x115 = (x114 >> 0x19);
- { uint32_t x116 = ((uint32_t)x114 & 0x1ffffff);
- { uint64_t x117 = (x115 + x93);
- { uint64_t x118 = (x117 >> 0x18);
- { uint32_t x119 = ((uint32_t)x117 & 0xffffff);
- { uint64_t x120 = (x118 + x92);
- { uint64_t x121 = (x120 >> 0x19);
- { uint32_t x122 = ((uint32_t)x120 & 0x1ffffff);
- { uint64_t x123 = (x121 + x91);
- { uint64_t x124 = (x123 >> 0x18);
- { uint32_t x125 = ((uint32_t)x123 & 0xffffff);
- { uint64_t x126 = (x124 + x90);
- { uint64_t x127 = (x126 >> 0x18);
- { uint32_t x128 = ((uint32_t)x126 & 0xffffff);
- { uint64_t x129 = (x127 + x89);
- { uint64_t x130 = (x129 >> 0x19);
- { uint32_t x131 = ((uint32_t)x129 & 0x1ffffff);
- { uint64_t x132 = (x130 + x88);
- { uint64_t x133 = (x132 >> 0x18);
- { uint32_t x134 = ((uint32_t)x132 & 0xffffff);
- { uint64_t x135 = (x133 + x87);
- { uint64_t x136 = (x135 >> 0x19);
- { uint32_t x137 = ((uint32_t)x135 & 0x1ffffff);
- { uint64_t x138 = (x136 + x86);
- { uint64_t x139 = (x138 >> 0x18);
- { uint32_t x140 = ((uint32_t)x138 & 0xffffff);
- { uint64_t x141 = (x139 + x85);
- { uint64_t x142 = (x141 >> 0x18);
- { uint32_t x143 = ((uint32_t)x141 & 0xffffff);
- { uint64_t x144 = (x142 + x84);
- { uint64_t x145 = (x144 >> 0x19);
- { uint32_t x146 = ((uint32_t)x144 & 0x1ffffff);
- { uint64_t x147 = (x145 + x83);
- { uint64_t x148 = (x147 >> 0x18);
- { uint32_t x149 = ((uint32_t)x147 & 0xffffff);
- { uint64_t x150 = (x148 + x82);
- { uint64_t x151 = (x150 >> 0x19);
- { uint32_t x152 = ((uint32_t)x150 & 0x1ffffff);
- { uint64_t x153 = (x151 + x81);
- { uint64_t x154 = (x153 >> 0x18);
- { uint32_t x155 = ((uint32_t)x153 & 0xffffff);
- { uint64_t x156 = (x154 + x80);
- { uint64_t x157 = (x156 >> 0x18);
- { uint32_t x158 = ((uint32_t)x156 & 0xffffff);
- { uint64_t x159 = (x101 + (0x11 * x157));
- { uint32_t x160 = (uint32_t) (x159 >> 0x19);
- { uint32_t x161 = ((uint32_t)x159 & 0x1ffffff);
- { uint32_t x162 = (x160 + x104);
- { uint32_t x163 = (x162 >> 0x18);
- { uint32_t x164 = (x162 & 0xffffff);
- out[0] = x161;
- out[1] = x164;
- out[2] = (x163 + x107);
- out[3] = x110;
- out[4] = x113;
- out[5] = x116;
- out[6] = x119;
- out[7] = x122;
- out[8] = x125;
- out[9] = x128;
- out[10] = x131;
- out[11] = x134;
- out[12] = x137;
- out[13] = x140;
- out[14] = x143;
- out[15] = x146;
- out[16] = x149;
- out[17] = x152;
- out[18] = x155;
- out[19] = x158;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e488m17_20limbs/femul.v b/src/Specific/solinas32_2e488m17_20limbs/femul.v
deleted file mode 100644
index 76d8f1315..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e488m17_20limbs.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_2e488m17_20limbs/femulDisplay.log b/src/Specific/solinas32_2e488m17_20limbs/femulDisplay.log
deleted file mode 100644
index 0df76c657..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/femulDisplay.log
+++ /dev/null
@@ -1,92 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x40, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x78, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43))%core,
- uint64_t x80 = (((uint64_t)x5 * x78) + ((0x2 * ((uint64_t)x7 * x79)) + (((uint64_t)x9 * x77) + ((0x2 * ((uint64_t)x11 * x75)) + (((uint64_t)x13 * x73) + (((uint64_t)x15 * x71) + ((0x2 * ((uint64_t)x17 * x69)) + (((uint64_t)x19 * x67) + ((0x2 * ((uint64_t)x21 * x65)) + (((uint64_t)x23 * x63) + (((uint64_t)x25 * x61) + ((0x2 * ((uint64_t)x27 * x59)) + (((uint64_t)x29 * x57) + ((0x2 * ((uint64_t)x31 * x55)) + (((uint64_t)x33 * x53) + (((uint64_t)x35 * x51) + ((0x2 * ((uint64_t)x37 * x49)) + (((uint64_t)x39 * x47) + ((0x2 * ((uint64_t)x41 * x45)) + ((uint64_t)x40 * x43))))))))))))))))))));
- uint64_t x81 = ((((uint64_t)x5 * x79) + (((uint64_t)x7 * x77) + (((uint64_t)x9 * x75) + (((uint64_t)x11 * x73) + (((uint64_t)x13 * x71) + (((uint64_t)x15 * x69) + (((uint64_t)x17 * x67) + (((uint64_t)x19 * x65) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + (((uint64_t)x35 * x49) + (((uint64_t)x37 * x47) + (((uint64_t)x39 * x45) + ((uint64_t)x41 * x43))))))))))))))))))) + (0x11 * ((uint64_t)x40 * x78)));
- uint64_t x82 = ((((uint64_t)x5 * x77) + ((0x2 * ((uint64_t)x7 * x75)) + (((uint64_t)x9 * x73) + ((0x2 * ((uint64_t)x11 * x71)) + ((0x2 * ((uint64_t)x13 * x69)) + (((uint64_t)x15 * x67) + ((0x2 * ((uint64_t)x17 * x65)) + (((uint64_t)x19 * x63) + ((0x2 * ((uint64_t)x21 * x61)) + ((0x2 * ((uint64_t)x23 * x59)) + (((uint64_t)x25 * x57) + ((0x2 * ((uint64_t)x27 * x55)) + (((uint64_t)x29 * x53) + ((0x2 * ((uint64_t)x31 * x51)) + ((0x2 * ((uint64_t)x33 * x49)) + (((uint64_t)x35 * x47) + ((0x2 * ((uint64_t)x37 * x45)) + ((uint64_t)x39 * x43)))))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x41 * x78)) + (0x2 * ((uint64_t)x40 * x79)))));
- uint64_t x83 = ((((uint64_t)x5 * x75) + (((uint64_t)x7 * x73) + (((uint64_t)x9 * x71) + ((0x2 * ((uint64_t)x11 * x69)) + (((uint64_t)x13 * x67) + (((uint64_t)x15 * x65) + (((uint64_t)x17 * x63) + (((uint64_t)x19 * x61) + ((0x2 * ((uint64_t)x21 * x59)) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + ((0x2 * ((uint64_t)x31 * x49)) + (((uint64_t)x33 * x47) + (((uint64_t)x35 * x45) + ((uint64_t)x37 * x43))))))))))))))))) + (0x11 * (((uint64_t)x39 * x78) + ((0x2 * ((uint64_t)x41 * x79)) + ((uint64_t)x40 * x77)))));
- uint64_t x84 = ((((uint64_t)x5 * x73) + ((0x2 * ((uint64_t)x7 * x71)) + ((0x2 * ((uint64_t)x9 * x69)) + ((0x2 * ((uint64_t)x11 * x67)) + ((0x2 * ((uint64_t)x13 * x65)) + (((uint64_t)x15 * x63) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + ((0x2 * ((uint64_t)x21 * x57)) + ((0x2 * ((uint64_t)x23 * x55)) + (((uint64_t)x25 * x53) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + ((0x2 * ((uint64_t)x33 * x45)) + ((uint64_t)x35 * x43)))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x37 * x78)) + ((0x2 * ((uint64_t)x39 * x79)) + ((0x2 * ((uint64_t)x41 * x77)) + (0x2 * ((uint64_t)x40 * x75)))))));
- uint64_t x85 = ((((uint64_t)x5 * x71) + ((0x2 * ((uint64_t)x7 * x69)) + (((uint64_t)x9 * x67) + ((0x2 * ((uint64_t)x11 * x65)) + (((uint64_t)x13 * x63) + (((uint64_t)x15 * x61) + ((0x2 * ((uint64_t)x17 * x59)) + (((uint64_t)x19 * x57) + ((0x2 * ((uint64_t)x21 * x55)) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + ((0x2 * ((uint64_t)x27 * x49)) + (((uint64_t)x29 * x47) + ((0x2 * ((uint64_t)x31 * x45)) + ((uint64_t)x33 * x43))))))))))))))) + (0x11 * (((uint64_t)x35 * x78) + ((0x2 * ((uint64_t)x37 * x79)) + (((uint64_t)x39 * x77) + ((0x2 * ((uint64_t)x41 * x75)) + ((uint64_t)x40 * x73)))))));
- uint64_t x86 = ((((uint64_t)x5 * x69) + (((uint64_t)x7 * x67) + (((uint64_t)x9 * x65) + (((uint64_t)x11 * x63) + (((uint64_t)x13 * x61) + (((uint64_t)x15 * x59) + (((uint64_t)x17 * x57) + (((uint64_t)x19 * x55) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + (((uint64_t)x25 * x49) + (((uint64_t)x27 * x47) + (((uint64_t)x29 * x45) + ((uint64_t)x31 * x43)))))))))))))) + (0x11 * (((uint64_t)x33 * x78) + (((uint64_t)x35 * x79) + (((uint64_t)x37 * x77) + (((uint64_t)x39 * x75) + (((uint64_t)x41 * x73) + ((uint64_t)x40 * x71))))))));
- uint64_t x87 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + (((uint64_t)x9 * x63) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + (((uint64_t)x15 * x57) + ((0x2 * ((uint64_t)x17 * x55)) + (((uint64_t)x19 * x53) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + (((uint64_t)x25 * x47) + ((0x2 * ((uint64_t)x27 * x45)) + ((uint64_t)x29 * x43))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x31 * x78)) + ((0x2 * ((uint64_t)x33 * x79)) + (((uint64_t)x35 * x77) + ((0x2 * ((uint64_t)x37 * x75)) + (((uint64_t)x39 * x73) + ((0x2 * ((uint64_t)x41 * x71)) + (0x2 * ((uint64_t)x40 * x69))))))))));
- uint64_t x88 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + ((0x2 * ((uint64_t)x11 * x59)) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + ((0x2 * ((uint64_t)x21 * x49)) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + ((uint64_t)x27 * x43)))))))))))) + (0x11 * (((uint64_t)x29 * x78) + ((0x2 * ((uint64_t)x31 * x79)) + (((uint64_t)x33 * x77) + (((uint64_t)x35 * x75) + (((uint64_t)x37 * x73) + (((uint64_t)x39 * x71) + ((0x2 * ((uint64_t)x41 * x69)) + ((uint64_t)x40 * x67))))))))));
- uint64_t x89 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + (((uint64_t)x15 * x53) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + ((uint64_t)x25 * x43))))))))))) + (0x11 * ((0x2 * ((uint64_t)x27 * x78)) + ((0x2 * ((uint64_t)x29 * x79)) + ((0x2 * ((uint64_t)x31 * x77)) + ((0x2 * ((uint64_t)x33 * x75)) + (((uint64_t)x35 * x73) + ((0x2 * ((uint64_t)x37 * x71)) + ((0x2 * ((uint64_t)x39 * x69)) + ((0x2 * ((uint64_t)x41 * x67)) + (0x2 * ((uint64_t)x40 * x65))))))))))));
- uint64_t x90 = ((((uint64_t)x5 * x61) + ((0x2 * ((uint64_t)x7 * x59)) + (((uint64_t)x9 * x57) + ((0x2 * ((uint64_t)x11 * x55)) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + ((0x2 * ((uint64_t)x17 * x49)) + (((uint64_t)x19 * x47) + ((0x2 * ((uint64_t)x21 * x45)) + ((uint64_t)x23 * x43)))))))))) + (0x11 * (((uint64_t)x25 * x78) + ((0x2 * ((uint64_t)x27 * x79)) + (((uint64_t)x29 * x77) + ((0x2 * ((uint64_t)x31 * x75)) + (((uint64_t)x33 * x73) + (((uint64_t)x35 * x71) + ((0x2 * ((uint64_t)x37 * x69)) + (((uint64_t)x39 * x67) + ((0x2 * ((uint64_t)x41 * x65)) + ((uint64_t)x40 * x63))))))))))));
- uint64_t x91 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + (((uint64_t)x17 * x47) + (((uint64_t)x19 * x45) + ((uint64_t)x21 * x43))))))))) + (0x11 * (((uint64_t)x23 * x78) + (((uint64_t)x25 * x79) + (((uint64_t)x27 * x77) + (((uint64_t)x29 * x75) + (((uint64_t)x31 * x73) + (((uint64_t)x33 * x71) + (((uint64_t)x35 * x69) + (((uint64_t)x37 * x67) + (((uint64_t)x39 * x65) + (((uint64_t)x41 * x63) + ((uint64_t)x40 * x61)))))))))))));
- uint64_t x92 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + (((uint64_t)x9 * x53) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + (((uint64_t)x15 * x47) + ((0x2 * ((uint64_t)x17 * x45)) + ((uint64_t)x19 * x43)))))))) + (0x11 * ((0x2 * ((uint64_t)x21 * x78)) + ((0x2 * ((uint64_t)x23 * x79)) + (((uint64_t)x25 * x77) + ((0x2 * ((uint64_t)x27 * x75)) + (((uint64_t)x29 * x73) + ((0x2 * ((uint64_t)x31 * x71)) + ((0x2 * ((uint64_t)x33 * x69)) + (((uint64_t)x35 * x67) + ((0x2 * ((uint64_t)x37 * x65)) + (((uint64_t)x39 * x63) + ((0x2 * ((uint64_t)x41 * x61)) + (0x2 * ((uint64_t)x40 * x59)))))))))))))));
- uint64_t x93 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + ((0x2 * ((uint64_t)x11 * x49)) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + ((uint64_t)x17 * x43))))))) + (0x11 * (((uint64_t)x19 * x78) + ((0x2 * ((uint64_t)x21 * x79)) + (((uint64_t)x23 * x77) + (((uint64_t)x25 * x75) + (((uint64_t)x27 * x73) + (((uint64_t)x29 * x71) + ((0x2 * ((uint64_t)x31 * x69)) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + (((uint64_t)x37 * x63) + (((uint64_t)x39 * x61) + ((0x2 * ((uint64_t)x41 * x59)) + ((uint64_t)x40 * x57)))))))))))))));
- uint64_t x94 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + ((uint64_t)x15 * x43)))))) + (0x11 * ((0x2 * ((uint64_t)x17 * x78)) + ((0x2 * ((uint64_t)x19 * x79)) + ((0x2 * ((uint64_t)x21 * x77)) + ((0x2 * ((uint64_t)x23 * x75)) + (((uint64_t)x25 * x73) + ((0x2 * ((uint64_t)x27 * x71)) + ((0x2 * ((uint64_t)x29 * x69)) + ((0x2 * ((uint64_t)x31 * x67)) + ((0x2 * ((uint64_t)x33 * x65)) + (((uint64_t)x35 * x63) + ((0x2 * ((uint64_t)x37 * x61)) + ((0x2 * ((uint64_t)x39 * x59)) + ((0x2 * ((uint64_t)x41 * x57)) + (0x2 * ((uint64_t)x40 * x55)))))))))))))))));
- uint64_t x95 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + (((uint64_t)x9 * x47) + ((0x2 * ((uint64_t)x11 * x45)) + ((uint64_t)x13 * x43))))) + (0x11 * (((uint64_t)x15 * x78) + ((0x2 * ((uint64_t)x17 * x79)) + (((uint64_t)x19 * x77) + ((0x2 * ((uint64_t)x21 * x75)) + (((uint64_t)x23 * x73) + (((uint64_t)x25 * x71) + ((0x2 * ((uint64_t)x27 * x69)) + (((uint64_t)x29 * x67) + ((0x2 * ((uint64_t)x31 * x65)) + (((uint64_t)x33 * x63) + (((uint64_t)x35 * x61) + ((0x2 * ((uint64_t)x37 * x59)) + (((uint64_t)x39 * x57) + ((0x2 * ((uint64_t)x41 * x55)) + ((uint64_t)x40 * x53)))))))))))))))));
- uint64_t x96 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + ((uint64_t)x11 * x43)))) + (0x11 * (((uint64_t)x13 * x78) + (((uint64_t)x15 * x79) + (((uint64_t)x17 * x77) + (((uint64_t)x19 * x75) + (((uint64_t)x21 * x73) + (((uint64_t)x23 * x71) + (((uint64_t)x25 * x69) + (((uint64_t)x27 * x67) + (((uint64_t)x29 * x65) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + (((uint64_t)x35 * x59) + (((uint64_t)x37 * x57) + (((uint64_t)x39 * x55) + (((uint64_t)x41 * x53) + ((uint64_t)x40 * x51))))))))))))))))));
- uint64_t x97 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((uint64_t)x9 * x43))) + (0x11 * ((0x2 * ((uint64_t)x11 * x78)) + ((0x2 * ((uint64_t)x13 * x79)) + (((uint64_t)x15 * x77) + ((0x2 * ((uint64_t)x17 * x75)) + (((uint64_t)x19 * x73) + ((0x2 * ((uint64_t)x21 * x71)) + ((0x2 * ((uint64_t)x23 * x69)) + (((uint64_t)x25 * x67) + ((0x2 * ((uint64_t)x27 * x65)) + (((uint64_t)x29 * x63) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + (((uint64_t)x35 * x57) + ((0x2 * ((uint64_t)x37 * x55)) + (((uint64_t)x39 * x53) + ((0x2 * ((uint64_t)x41 * x51)) + (0x2 * ((uint64_t)x40 * x49))))))))))))))))))));
- uint64_t x98 = ((((uint64_t)x5 * x45) + ((uint64_t)x7 * x43)) + (0x11 * (((uint64_t)x9 * x78) + ((0x2 * ((uint64_t)x11 * x79)) + (((uint64_t)x13 * x77) + (((uint64_t)x15 * x75) + (((uint64_t)x17 * x73) + (((uint64_t)x19 * x71) + ((0x2 * ((uint64_t)x21 * x69)) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + ((0x2 * ((uint64_t)x31 * x59)) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + (((uint64_t)x37 * x53) + (((uint64_t)x39 * x51) + ((0x2 * ((uint64_t)x41 * x49)) + ((uint64_t)x40 * x47))))))))))))))))))));
- uint64_t x99 = (((uint64_t)x5 * x43) + (0x11 * ((0x2 * ((uint64_t)x7 * x78)) + ((0x2 * ((uint64_t)x9 * x79)) + ((0x2 * ((uint64_t)x11 * x77)) + ((0x2 * ((uint64_t)x13 * x75)) + (((uint64_t)x15 * x73) + ((0x2 * ((uint64_t)x17 * x71)) + ((0x2 * ((uint64_t)x19 * x69)) + ((0x2 * ((uint64_t)x21 * x67)) + ((0x2 * ((uint64_t)x23 * x65)) + (((uint64_t)x25 * x63) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + ((0x2 * ((uint64_t)x33 * x55)) + (((uint64_t)x35 * x53) + ((0x2 * ((uint64_t)x37 * x51)) + ((0x2 * ((uint64_t)x39 * x49)) + ((0x2 * ((uint64_t)x41 * x47)) + (0x2 * ((uint64_t)x40 * x45))))))))))))))))))))));
- uint64_t x100 = (x99 >> 0x19);
- uint32_t x101 = ((uint32_t)x99 & 0x1ffffff);
- uint64_t x102 = (x100 + x98);
- uint64_t x103 = (x102 >> 0x18);
- uint32_t x104 = ((uint32_t)x102 & 0xffffff);
- uint64_t x105 = (x103 + x97);
- uint64_t x106 = (x105 >> 0x19);
- uint32_t x107 = ((uint32_t)x105 & 0x1ffffff);
- uint64_t x108 = (x106 + x96);
- uint64_t x109 = (x108 >> 0x18);
- uint32_t x110 = ((uint32_t)x108 & 0xffffff);
- uint64_t x111 = (x109 + x95);
- uint64_t x112 = (x111 >> 0x18);
- uint32_t x113 = ((uint32_t)x111 & 0xffffff);
- uint64_t x114 = (x112 + x94);
- uint64_t x115 = (x114 >> 0x19);
- uint32_t x116 = ((uint32_t)x114 & 0x1ffffff);
- uint64_t x117 = (x115 + x93);
- uint64_t x118 = (x117 >> 0x18);
- uint32_t x119 = ((uint32_t)x117 & 0xffffff);
- uint64_t x120 = (x118 + x92);
- uint64_t x121 = (x120 >> 0x19);
- uint32_t x122 = ((uint32_t)x120 & 0x1ffffff);
- uint64_t x123 = (x121 + x91);
- uint64_t x124 = (x123 >> 0x18);
- uint32_t x125 = ((uint32_t)x123 & 0xffffff);
- uint64_t x126 = (x124 + x90);
- uint64_t x127 = (x126 >> 0x18);
- uint32_t x128 = ((uint32_t)x126 & 0xffffff);
- uint64_t x129 = (x127 + x89);
- uint64_t x130 = (x129 >> 0x19);
- uint32_t x131 = ((uint32_t)x129 & 0x1ffffff);
- uint64_t x132 = (x130 + x88);
- uint64_t x133 = (x132 >> 0x18);
- uint32_t x134 = ((uint32_t)x132 & 0xffffff);
- uint64_t x135 = (x133 + x87);
- uint64_t x136 = (x135 >> 0x19);
- uint32_t x137 = ((uint32_t)x135 & 0x1ffffff);
- uint64_t x138 = (x136 + x86);
- uint64_t x139 = (x138 >> 0x18);
- uint32_t x140 = ((uint32_t)x138 & 0xffffff);
- uint64_t x141 = (x139 + x85);
- uint64_t x142 = (x141 >> 0x18);
- uint32_t x143 = ((uint32_t)x141 & 0xffffff);
- uint64_t x144 = (x142 + x84);
- uint64_t x145 = (x144 >> 0x19);
- uint32_t x146 = ((uint32_t)x144 & 0x1ffffff);
- uint64_t x147 = (x145 + x83);
- uint64_t x148 = (x147 >> 0x18);
- uint32_t x149 = ((uint32_t)x147 & 0xffffff);
- uint64_t x150 = (x148 + x82);
- uint64_t x151 = (x150 >> 0x19);
- uint32_t x152 = ((uint32_t)x150 & 0x1ffffff);
- uint64_t x153 = (x151 + x81);
- uint64_t x154 = (x153 >> 0x18);
- uint32_t x155 = ((uint32_t)x153 & 0xffffff);
- uint64_t x156 = (x154 + x80);
- uint64_t x157 = (x156 >> 0x18);
- uint32_t x158 = ((uint32_t)x156 & 0xffffff);
- uint64_t x159 = (x101 + (0x11 * x157));
- uint32_t x160 = (uint32_t) (x159 >> 0x19);
- uint32_t x161 = ((uint32_t)x159 & 0x1ffffff);
- uint32_t x162 = (x160 + x104);
- uint32_t x163 = (x162 >> 0x18);
- uint32_t x164 = (x162 & 0xffffff);
- return (Return x158, Return x155, Return x152, Return x149, Return x146, Return x143, Return x140, Return x137, Return x134, Return x131, Return x128, Return x125, Return x122, Return x119, Return x116, Return x113, Return x110, (x163 + x107), Return x164, Return x161))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e488m17_20limbs/femulDisplay.v b/src/Specific/solinas32_2e488m17_20limbs/femulDisplay.v
deleted file mode 100644
index f3e20757d..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e488m17_20limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e488m17_20limbs/fesquare.c b/src/Specific/solinas32_2e488m17_20limbs/fesquare.c
deleted file mode 100644
index 43f70cce0..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/fesquare.c
+++ /dev/null
@@ -1,128 +0,0 @@
-static void fesquare(uint32_t out[20], const uint32_t in1[20]) {
- { const uint32_t x37 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x39 = (((uint64_t)x2 * x37) + ((0x2 * ((uint64_t)x4 * x38)) + (((uint64_t)x6 * x36) + ((0x2 * ((uint64_t)x8 * x34)) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + ((0x2 * ((uint64_t)x14 * x28)) + (((uint64_t)x16 * x26) + ((0x2 * ((uint64_t)x18 * x24)) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((0x2 * ((uint64_t)x24 * x18)) + (((uint64_t)x26 * x16) + ((0x2 * ((uint64_t)x28 * x14)) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + ((0x2 * ((uint64_t)x34 * x8)) + (((uint64_t)x36 * x6) + ((0x2 * ((uint64_t)x38 * x4)) + ((uint64_t)x37 * x2))))))))))))))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x38) + (((uint64_t)x4 * x36) + (((uint64_t)x6 * x34) + (((uint64_t)x8 * x32) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + (((uint64_t)x14 * x26) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (((uint64_t)x26 * x14) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + (((uint64_t)x32 * x8) + (((uint64_t)x34 * x6) + (((uint64_t)x36 * x4) + ((uint64_t)x38 * x2))))))))))))))))))) + (0x11 * ((uint64_t)x37 * x37)));
- { uint64_t x41 = ((((uint64_t)x2 * x36) + ((0x2 * ((uint64_t)x4 * x34)) + (((uint64_t)x6 * x32) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + (((uint64_t)x12 * x26) + ((0x2 * ((uint64_t)x14 * x24)) + (((uint64_t)x16 * x22) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (((uint64_t)x22 * x16) + ((0x2 * ((uint64_t)x24 * x14)) + (((uint64_t)x26 * x12) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + (((uint64_t)x32 * x6) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x36 * x2)))))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x38 * x37)) + (0x2 * ((uint64_t)x37 * x38)))));
- { uint64_t x42 = ((((uint64_t)x2 * x34) + (((uint64_t)x4 * x32) + (((uint64_t)x6 * x30) + ((0x2 * ((uint64_t)x8 * x28)) + (((uint64_t)x10 * x26) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + ((0x2 * ((uint64_t)x18 * x18)) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + (((uint64_t)x26 * x10) + ((0x2 * ((uint64_t)x28 * x8)) + (((uint64_t)x30 * x6) + (((uint64_t)x32 * x4) + ((uint64_t)x34 * x2))))))))))))))))) + (0x11 * (((uint64_t)x36 * x37) + ((0x2 * ((uint64_t)x38 * x38)) + ((uint64_t)x37 * x36)))));
- { uint64_t x43 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + (((uint64_t)x12 * x22) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + (((uint64_t)x22 * x12) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x34 * x37)) + ((0x2 * ((uint64_t)x36 * x38)) + ((0x2 * ((uint64_t)x38 * x36)) + (0x2 * ((uint64_t)x37 * x34)))))));
- { uint64_t x44 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + (((uint64_t)x6 * x26) + ((0x2 * ((uint64_t)x8 * x24)) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + ((0x2 * ((uint64_t)x24 * x8)) + (((uint64_t)x26 * x6) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x11 * (((uint64_t)x32 * x37) + ((0x2 * ((uint64_t)x34 * x38)) + (((uint64_t)x36 * x36) + ((0x2 * ((uint64_t)x38 * x34)) + ((uint64_t)x37 * x32)))))));
- { uint64_t x45 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x11 * (((uint64_t)x30 * x37) + (((uint64_t)x32 * x38) + (((uint64_t)x34 * x36) + (((uint64_t)x36 * x34) + (((uint64_t)x38 * x32) + ((uint64_t)x37 * x30))))))));
- { uint64_t x46 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + (((uint64_t)x6 * x22) + ((0x2 * ((uint64_t)x8 * x20)) + ((0x2 * ((uint64_t)x10 * x18)) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + ((0x2 * ((uint64_t)x18 * x10)) + ((0x2 * ((uint64_t)x20 * x8)) + (((uint64_t)x22 * x6) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x28 * x37)) + ((0x2 * ((uint64_t)x30 * x38)) + (((uint64_t)x32 * x36) + ((0x2 * ((uint64_t)x34 * x34)) + (((uint64_t)x36 * x32) + ((0x2 * ((uint64_t)x38 * x30)) + (0x2 * ((uint64_t)x37 * x28))))))))));
- { uint64_t x47 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + ((0x2 * ((uint64_t)x8 * x18)) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((0x2 * ((uint64_t)x18 * x8)) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x11 * (((uint64_t)x26 * x37) + ((0x2 * ((uint64_t)x28 * x38)) + (((uint64_t)x30 * x36) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + (((uint64_t)x36 * x30) + ((0x2 * ((uint64_t)x38 * x28)) + ((uint64_t)x37 * x26))))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x11 * ((0x2 * ((uint64_t)x24 * x37)) + ((0x2 * ((uint64_t)x26 * x38)) + ((0x2 * ((uint64_t)x28 * x36)) + ((0x2 * ((uint64_t)x30 * x34)) + (((uint64_t)x32 * x32) + ((0x2 * ((uint64_t)x34 * x30)) + ((0x2 * ((uint64_t)x36 * x28)) + ((0x2 * ((uint64_t)x38 * x26)) + (0x2 * ((uint64_t)x37 * x24))))))))))));
- { uint64_t x49 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + (((uint64_t)x6 * x16) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + (((uint64_t)x16 * x6) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x11 * (((uint64_t)x22 * x37) + ((0x2 * ((uint64_t)x24 * x38)) + (((uint64_t)x26 * x36) + ((0x2 * ((uint64_t)x28 * x34)) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + ((0x2 * ((uint64_t)x34 * x28)) + (((uint64_t)x36 * x26) + ((0x2 * ((uint64_t)x38 * x24)) + ((uint64_t)x37 * x22))))))))))));
- { uint64_t x50 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x11 * (((uint64_t)x20 * x37) + (((uint64_t)x22 * x38) + (((uint64_t)x24 * x36) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + (((uint64_t)x30 * x30) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + (((uint64_t)x36 * x24) + (((uint64_t)x38 * x22) + ((uint64_t)x37 * x20)))))))))))));
- { uint64_t x51 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + (((uint64_t)x6 * x12) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + (((uint64_t)x12 * x6) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x11 * ((0x2 * ((uint64_t)x18 * x37)) + ((0x2 * ((uint64_t)x20 * x38)) + (((uint64_t)x22 * x36) + ((0x2 * ((uint64_t)x24 * x34)) + (((uint64_t)x26 * x32) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + (((uint64_t)x32 * x26) + ((0x2 * ((uint64_t)x34 * x24)) + (((uint64_t)x36 * x22) + ((0x2 * ((uint64_t)x38 * x20)) + (0x2 * ((uint64_t)x37 * x18)))))))))))))));
- { uint64_t x52 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x11 * (((uint64_t)x16 * x37) + ((0x2 * ((uint64_t)x18 * x38)) + (((uint64_t)x20 * x36) + (((uint64_t)x22 * x34) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + ((0x2 * ((uint64_t)x28 * x28)) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + (((uint64_t)x34 * x22) + (((uint64_t)x36 * x20) + ((0x2 * ((uint64_t)x38 * x18)) + ((uint64_t)x37 * x16)))))))))))))));
- { uint64_t x53 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x11 * ((0x2 * ((uint64_t)x14 * x37)) + ((0x2 * ((uint64_t)x16 * x38)) + ((0x2 * ((uint64_t)x18 * x36)) + ((0x2 * ((uint64_t)x20 * x34)) + (((uint64_t)x22 * x32) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + (((uint64_t)x32 * x22) + ((0x2 * ((uint64_t)x34 * x20)) + ((0x2 * ((uint64_t)x36 * x18)) + ((0x2 * ((uint64_t)x38 * x16)) + (0x2 * ((uint64_t)x37 * x14)))))))))))))))));
- { uint64_t x54 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x11 * (((uint64_t)x12 * x37) + ((0x2 * ((uint64_t)x14 * x38)) + (((uint64_t)x16 * x36) + ((0x2 * ((uint64_t)x18 * x34)) + (((uint64_t)x20 * x32) + (((uint64_t)x22 * x30) + ((0x2 * ((uint64_t)x24 * x28)) + (((uint64_t)x26 * x26) + ((0x2 * ((uint64_t)x28 * x24)) + (((uint64_t)x30 * x22) + (((uint64_t)x32 * x20) + ((0x2 * ((uint64_t)x34 * x18)) + (((uint64_t)x36 * x16) + ((0x2 * ((uint64_t)x38 * x14)) + ((uint64_t)x37 * x12)))))))))))))))));
- { uint64_t x55 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x11 * (((uint64_t)x10 * x37) + (((uint64_t)x12 * x38) + (((uint64_t)x14 * x36) + (((uint64_t)x16 * x34) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + (((uint64_t)x34 * x16) + (((uint64_t)x36 * x14) + (((uint64_t)x38 * x12) + ((uint64_t)x37 * x10))))))))))))))))));
- { uint64_t x56 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x11 * ((0x2 * ((uint64_t)x8 * x37)) + ((0x2 * ((uint64_t)x10 * x38)) + (((uint64_t)x12 * x36) + ((0x2 * ((uint64_t)x14 * x34)) + (((uint64_t)x16 * x32) + ((0x2 * ((uint64_t)x18 * x30)) + ((0x2 * ((uint64_t)x20 * x28)) + (((uint64_t)x22 * x26) + ((0x2 * ((uint64_t)x24 * x24)) + (((uint64_t)x26 * x22) + ((0x2 * ((uint64_t)x28 * x20)) + ((0x2 * ((uint64_t)x30 * x18)) + (((uint64_t)x32 * x16) + ((0x2 * ((uint64_t)x34 * x14)) + (((uint64_t)x36 * x12) + ((0x2 * ((uint64_t)x38 * x10)) + (0x2 * ((uint64_t)x37 * x8))))))))))))))))))));
- { uint64_t x57 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * (((uint64_t)x6 * x37) + ((0x2 * ((uint64_t)x8 * x38)) + (((uint64_t)x10 * x36) + (((uint64_t)x12 * x34) + (((uint64_t)x14 * x32) + (((uint64_t)x16 * x30) + ((0x2 * ((uint64_t)x18 * x28)) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + ((0x2 * ((uint64_t)x28 * x18)) + (((uint64_t)x30 * x16) + (((uint64_t)x32 * x14) + (((uint64_t)x34 * x12) + (((uint64_t)x36 * x10) + ((0x2 * ((uint64_t)x38 * x8)) + ((uint64_t)x37 * x6))))))))))))))))))));
- { uint64_t x58 = (((uint64_t)x2 * x2) + (0x11 * ((0x2 * ((uint64_t)x4 * x37)) + ((0x2 * ((uint64_t)x6 * x38)) + ((0x2 * ((uint64_t)x8 * x36)) + ((0x2 * ((uint64_t)x10 * x34)) + (((uint64_t)x12 * x32) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + (((uint64_t)x32 * x12) + ((0x2 * ((uint64_t)x34 * x10)) + ((0x2 * ((uint64_t)x36 * x8)) + ((0x2 * ((uint64_t)x38 * x6)) + (0x2 * ((uint64_t)x37 * x4))))))))))))))))))))));
- { uint64_t x59 = (x58 >> 0x19);
- { uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- { uint64_t x61 = (x59 + x57);
- { uint64_t x62 = (x61 >> 0x18);
- { uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- { uint64_t x64 = (x62 + x56);
- { uint64_t x65 = (x64 >> 0x19);
- { uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- { uint64_t x67 = (x65 + x55);
- { uint64_t x68 = (x67 >> 0x18);
- { uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- { uint64_t x70 = (x68 + x54);
- { uint64_t x71 = (x70 >> 0x18);
- { uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- { uint64_t x73 = (x71 + x53);
- { uint64_t x74 = (x73 >> 0x19);
- { uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- { uint64_t x76 = (x74 + x52);
- { uint64_t x77 = (x76 >> 0x18);
- { uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- { uint64_t x79 = (x77 + x51);
- { uint64_t x80 = (x79 >> 0x19);
- { uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- { uint64_t x82 = (x80 + x50);
- { uint64_t x83 = (x82 >> 0x18);
- { uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- { uint64_t x85 = (x83 + x49);
- { uint64_t x86 = (x85 >> 0x18);
- { uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- { uint64_t x88 = (x86 + x48);
- { uint64_t x89 = (x88 >> 0x19);
- { uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- { uint64_t x91 = (x89 + x47);
- { uint64_t x92 = (x91 >> 0x18);
- { uint32_t x93 = ((uint32_t)x91 & 0xffffff);
- { uint64_t x94 = (x92 + x46);
- { uint64_t x95 = (x94 >> 0x19);
- { uint32_t x96 = ((uint32_t)x94 & 0x1ffffff);
- { uint64_t x97 = (x95 + x45);
- { uint64_t x98 = (x97 >> 0x18);
- { uint32_t x99 = ((uint32_t)x97 & 0xffffff);
- { uint64_t x100 = (x98 + x44);
- { uint64_t x101 = (x100 >> 0x18);
- { uint32_t x102 = ((uint32_t)x100 & 0xffffff);
- { uint64_t x103 = (x101 + x43);
- { uint64_t x104 = (x103 >> 0x19);
- { uint32_t x105 = ((uint32_t)x103 & 0x1ffffff);
- { uint64_t x106 = (x104 + x42);
- { uint64_t x107 = (x106 >> 0x18);
- { uint32_t x108 = ((uint32_t)x106 & 0xffffff);
- { uint64_t x109 = (x107 + x41);
- { uint64_t x110 = (x109 >> 0x19);
- { uint32_t x111 = ((uint32_t)x109 & 0x1ffffff);
- { uint64_t x112 = (x110 + x40);
- { uint64_t x113 = (x112 >> 0x18);
- { uint32_t x114 = ((uint32_t)x112 & 0xffffff);
- { uint64_t x115 = (x113 + x39);
- { uint64_t x116 = (x115 >> 0x18);
- { uint32_t x117 = ((uint32_t)x115 & 0xffffff);
- { uint64_t x118 = (x60 + (0x11 * x116));
- { uint32_t x119 = (uint32_t) (x118 >> 0x19);
- { uint32_t x120 = ((uint32_t)x118 & 0x1ffffff);
- { uint32_t x121 = (x119 + x63);
- { uint32_t x122 = (x121 >> 0x18);
- { uint32_t x123 = (x121 & 0xffffff);
- out[0] = x120;
- out[1] = x123;
- out[2] = (x122 + x66);
- out[3] = x69;
- out[4] = x72;
- out[5] = x75;
- out[6] = x78;
- out[7] = x81;
- out[8] = x84;
- out[9] = x87;
- out[10] = x90;
- out[11] = x93;
- out[12] = x96;
- out[13] = x99;
- out[14] = x102;
- out[15] = x105;
- out[16] = x108;
- out[17] = x111;
- out[18] = x114;
- out[19] = x117;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e488m17_20limbs/fesquare.v b/src/Specific/solinas32_2e488m17_20limbs/fesquare.v
deleted file mode 100644
index 007079fa6..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e488m17_20limbs.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_2e488m17_20limbs/fesquareDisplay.log b/src/Specific/solinas32_2e488m17_20limbs/fesquareDisplay.log
deleted file mode 100644
index aca498357..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,92 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x37, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x39 = (((uint64_t)x2 * x37) + ((0x2 * ((uint64_t)x4 * x38)) + (((uint64_t)x6 * x36) + ((0x2 * ((uint64_t)x8 * x34)) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + ((0x2 * ((uint64_t)x14 * x28)) + (((uint64_t)x16 * x26) + ((0x2 * ((uint64_t)x18 * x24)) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((0x2 * ((uint64_t)x24 * x18)) + (((uint64_t)x26 * x16) + ((0x2 * ((uint64_t)x28 * x14)) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + ((0x2 * ((uint64_t)x34 * x8)) + (((uint64_t)x36 * x6) + ((0x2 * ((uint64_t)x38 * x4)) + ((uint64_t)x37 * x2))))))))))))))))))));
- uint64_t x40 = ((((uint64_t)x2 * x38) + (((uint64_t)x4 * x36) + (((uint64_t)x6 * x34) + (((uint64_t)x8 * x32) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + (((uint64_t)x14 * x26) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (((uint64_t)x26 * x14) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + (((uint64_t)x32 * x8) + (((uint64_t)x34 * x6) + (((uint64_t)x36 * x4) + ((uint64_t)x38 * x2))))))))))))))))))) + (0x11 * ((uint64_t)x37 * x37)));
- uint64_t x41 = ((((uint64_t)x2 * x36) + ((0x2 * ((uint64_t)x4 * x34)) + (((uint64_t)x6 * x32) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + (((uint64_t)x12 * x26) + ((0x2 * ((uint64_t)x14 * x24)) + (((uint64_t)x16 * x22) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (((uint64_t)x22 * x16) + ((0x2 * ((uint64_t)x24 * x14)) + (((uint64_t)x26 * x12) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + (((uint64_t)x32 * x6) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x36 * x2)))))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x38 * x37)) + (0x2 * ((uint64_t)x37 * x38)))));
- uint64_t x42 = ((((uint64_t)x2 * x34) + (((uint64_t)x4 * x32) + (((uint64_t)x6 * x30) + ((0x2 * ((uint64_t)x8 * x28)) + (((uint64_t)x10 * x26) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + ((0x2 * ((uint64_t)x18 * x18)) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + (((uint64_t)x26 * x10) + ((0x2 * ((uint64_t)x28 * x8)) + (((uint64_t)x30 * x6) + (((uint64_t)x32 * x4) + ((uint64_t)x34 * x2))))))))))))))))) + (0x11 * (((uint64_t)x36 * x37) + ((0x2 * ((uint64_t)x38 * x38)) + ((uint64_t)x37 * x36)))));
- uint64_t x43 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + (((uint64_t)x12 * x22) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + (((uint64_t)x22 * x12) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x34 * x37)) + ((0x2 * ((uint64_t)x36 * x38)) + ((0x2 * ((uint64_t)x38 * x36)) + (0x2 * ((uint64_t)x37 * x34)))))));
- uint64_t x44 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + (((uint64_t)x6 * x26) + ((0x2 * ((uint64_t)x8 * x24)) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + ((0x2 * ((uint64_t)x24 * x8)) + (((uint64_t)x26 * x6) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x11 * (((uint64_t)x32 * x37) + ((0x2 * ((uint64_t)x34 * x38)) + (((uint64_t)x36 * x36) + ((0x2 * ((uint64_t)x38 * x34)) + ((uint64_t)x37 * x32)))))));
- uint64_t x45 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x11 * (((uint64_t)x30 * x37) + (((uint64_t)x32 * x38) + (((uint64_t)x34 * x36) + (((uint64_t)x36 * x34) + (((uint64_t)x38 * x32) + ((uint64_t)x37 * x30))))))));
- uint64_t x46 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + (((uint64_t)x6 * x22) + ((0x2 * ((uint64_t)x8 * x20)) + ((0x2 * ((uint64_t)x10 * x18)) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + ((0x2 * ((uint64_t)x18 * x10)) + ((0x2 * ((uint64_t)x20 * x8)) + (((uint64_t)x22 * x6) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x11 * ((0x2 * ((uint64_t)x28 * x37)) + ((0x2 * ((uint64_t)x30 * x38)) + (((uint64_t)x32 * x36) + ((0x2 * ((uint64_t)x34 * x34)) + (((uint64_t)x36 * x32) + ((0x2 * ((uint64_t)x38 * x30)) + (0x2 * ((uint64_t)x37 * x28))))))))));
- uint64_t x47 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + ((0x2 * ((uint64_t)x8 * x18)) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + ((0x2 * ((uint64_t)x18 * x8)) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x11 * (((uint64_t)x26 * x37) + ((0x2 * ((uint64_t)x28 * x38)) + (((uint64_t)x30 * x36) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + (((uint64_t)x36 * x30) + ((0x2 * ((uint64_t)x38 * x28)) + ((uint64_t)x37 * x26))))))))));
- uint64_t x48 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x11 * ((0x2 * ((uint64_t)x24 * x37)) + ((0x2 * ((uint64_t)x26 * x38)) + ((0x2 * ((uint64_t)x28 * x36)) + ((0x2 * ((uint64_t)x30 * x34)) + (((uint64_t)x32 * x32) + ((0x2 * ((uint64_t)x34 * x30)) + ((0x2 * ((uint64_t)x36 * x28)) + ((0x2 * ((uint64_t)x38 * x26)) + (0x2 * ((uint64_t)x37 * x24))))))))))));
- uint64_t x49 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + (((uint64_t)x6 * x16) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + (((uint64_t)x16 * x6) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x11 * (((uint64_t)x22 * x37) + ((0x2 * ((uint64_t)x24 * x38)) + (((uint64_t)x26 * x36) + ((0x2 * ((uint64_t)x28 * x34)) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + ((0x2 * ((uint64_t)x34 * x28)) + (((uint64_t)x36 * x26) + ((0x2 * ((uint64_t)x38 * x24)) + ((uint64_t)x37 * x22))))))))))));
- uint64_t x50 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + (((uint64_t)x10 * x10) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x11 * (((uint64_t)x20 * x37) + (((uint64_t)x22 * x38) + (((uint64_t)x24 * x36) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + (((uint64_t)x30 * x30) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + (((uint64_t)x36 * x24) + (((uint64_t)x38 * x22) + ((uint64_t)x37 * x20)))))))))))));
- uint64_t x51 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + (((uint64_t)x6 * x12) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + (((uint64_t)x12 * x6) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x11 * ((0x2 * ((uint64_t)x18 * x37)) + ((0x2 * ((uint64_t)x20 * x38)) + (((uint64_t)x22 * x36) + ((0x2 * ((uint64_t)x24 * x34)) + (((uint64_t)x26 * x32) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + (((uint64_t)x32 * x26) + ((0x2 * ((uint64_t)x34 * x24)) + (((uint64_t)x36 * x22) + ((0x2 * ((uint64_t)x38 * x20)) + (0x2 * ((uint64_t)x37 * x18)))))))))))))));
- uint64_t x52 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x11 * (((uint64_t)x16 * x37) + ((0x2 * ((uint64_t)x18 * x38)) + (((uint64_t)x20 * x36) + (((uint64_t)x22 * x34) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + ((0x2 * ((uint64_t)x28 * x28)) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + (((uint64_t)x34 * x22) + (((uint64_t)x36 * x20) + ((0x2 * ((uint64_t)x38 * x18)) + ((uint64_t)x37 * x16)))))))))))))));
- uint64_t x53 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x11 * ((0x2 * ((uint64_t)x14 * x37)) + ((0x2 * ((uint64_t)x16 * x38)) + ((0x2 * ((uint64_t)x18 * x36)) + ((0x2 * ((uint64_t)x20 * x34)) + (((uint64_t)x22 * x32) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + (((uint64_t)x32 * x22) + ((0x2 * ((uint64_t)x34 * x20)) + ((0x2 * ((uint64_t)x36 * x18)) + ((0x2 * ((uint64_t)x38 * x16)) + (0x2 * ((uint64_t)x37 * x14)))))))))))))))));
- uint64_t x54 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x11 * (((uint64_t)x12 * x37) + ((0x2 * ((uint64_t)x14 * x38)) + (((uint64_t)x16 * x36) + ((0x2 * ((uint64_t)x18 * x34)) + (((uint64_t)x20 * x32) + (((uint64_t)x22 * x30) + ((0x2 * ((uint64_t)x24 * x28)) + (((uint64_t)x26 * x26) + ((0x2 * ((uint64_t)x28 * x24)) + (((uint64_t)x30 * x22) + (((uint64_t)x32 * x20) + ((0x2 * ((uint64_t)x34 * x18)) + (((uint64_t)x36 * x16) + ((0x2 * ((uint64_t)x38 * x14)) + ((uint64_t)x37 * x12)))))))))))))))));
- uint64_t x55 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x11 * (((uint64_t)x10 * x37) + (((uint64_t)x12 * x38) + (((uint64_t)x14 * x36) + (((uint64_t)x16 * x34) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + (((uint64_t)x34 * x16) + (((uint64_t)x36 * x14) + (((uint64_t)x38 * x12) + ((uint64_t)x37 * x10))))))))))))))))));
- uint64_t x56 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x11 * ((0x2 * ((uint64_t)x8 * x37)) + ((0x2 * ((uint64_t)x10 * x38)) + (((uint64_t)x12 * x36) + ((0x2 * ((uint64_t)x14 * x34)) + (((uint64_t)x16 * x32) + ((0x2 * ((uint64_t)x18 * x30)) + ((0x2 * ((uint64_t)x20 * x28)) + (((uint64_t)x22 * x26) + ((0x2 * ((uint64_t)x24 * x24)) + (((uint64_t)x26 * x22) + ((0x2 * ((uint64_t)x28 * x20)) + ((0x2 * ((uint64_t)x30 * x18)) + (((uint64_t)x32 * x16) + ((0x2 * ((uint64_t)x34 * x14)) + (((uint64_t)x36 * x12) + ((0x2 * ((uint64_t)x38 * x10)) + (0x2 * ((uint64_t)x37 * x8))))))))))))))))))));
- uint64_t x57 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x11 * (((uint64_t)x6 * x37) + ((0x2 * ((uint64_t)x8 * x38)) + (((uint64_t)x10 * x36) + (((uint64_t)x12 * x34) + (((uint64_t)x14 * x32) + (((uint64_t)x16 * x30) + ((0x2 * ((uint64_t)x18 * x28)) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + ((0x2 * ((uint64_t)x28 * x18)) + (((uint64_t)x30 * x16) + (((uint64_t)x32 * x14) + (((uint64_t)x34 * x12) + (((uint64_t)x36 * x10) + ((0x2 * ((uint64_t)x38 * x8)) + ((uint64_t)x37 * x6))))))))))))))))))));
- uint64_t x58 = (((uint64_t)x2 * x2) + (0x11 * ((0x2 * ((uint64_t)x4 * x37)) + ((0x2 * ((uint64_t)x6 * x38)) + ((0x2 * ((uint64_t)x8 * x36)) + ((0x2 * ((uint64_t)x10 * x34)) + (((uint64_t)x12 * x32) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + (((uint64_t)x32 * x12) + ((0x2 * ((uint64_t)x34 * x10)) + ((0x2 * ((uint64_t)x36 * x8)) + ((0x2 * ((uint64_t)x38 * x6)) + (0x2 * ((uint64_t)x37 * x4))))))))))))))))))))));
- uint64_t x59 = (x58 >> 0x19);
- uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- uint64_t x61 = (x59 + x57);
- uint64_t x62 = (x61 >> 0x18);
- uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- uint64_t x64 = (x62 + x56);
- uint64_t x65 = (x64 >> 0x19);
- uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- uint64_t x67 = (x65 + x55);
- uint64_t x68 = (x67 >> 0x18);
- uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- uint64_t x70 = (x68 + x54);
- uint64_t x71 = (x70 >> 0x18);
- uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- uint64_t x73 = (x71 + x53);
- uint64_t x74 = (x73 >> 0x19);
- uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- uint64_t x76 = (x74 + x52);
- uint64_t x77 = (x76 >> 0x18);
- uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- uint64_t x79 = (x77 + x51);
- uint64_t x80 = (x79 >> 0x19);
- uint32_t x81 = ((uint32_t)x79 & 0x1ffffff);
- uint64_t x82 = (x80 + x50);
- uint64_t x83 = (x82 >> 0x18);
- uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- uint64_t x85 = (x83 + x49);
- uint64_t x86 = (x85 >> 0x18);
- uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- uint64_t x88 = (x86 + x48);
- uint64_t x89 = (x88 >> 0x19);
- uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- uint64_t x91 = (x89 + x47);
- uint64_t x92 = (x91 >> 0x18);
- uint32_t x93 = ((uint32_t)x91 & 0xffffff);
- uint64_t x94 = (x92 + x46);
- uint64_t x95 = (x94 >> 0x19);
- uint32_t x96 = ((uint32_t)x94 & 0x1ffffff);
- uint64_t x97 = (x95 + x45);
- uint64_t x98 = (x97 >> 0x18);
- uint32_t x99 = ((uint32_t)x97 & 0xffffff);
- uint64_t x100 = (x98 + x44);
- uint64_t x101 = (x100 >> 0x18);
- uint32_t x102 = ((uint32_t)x100 & 0xffffff);
- uint64_t x103 = (x101 + x43);
- uint64_t x104 = (x103 >> 0x19);
- uint32_t x105 = ((uint32_t)x103 & 0x1ffffff);
- uint64_t x106 = (x104 + x42);
- uint64_t x107 = (x106 >> 0x18);
- uint32_t x108 = ((uint32_t)x106 & 0xffffff);
- uint64_t x109 = (x107 + x41);
- uint64_t x110 = (x109 >> 0x19);
- uint32_t x111 = ((uint32_t)x109 & 0x1ffffff);
- uint64_t x112 = (x110 + x40);
- uint64_t x113 = (x112 >> 0x18);
- uint32_t x114 = ((uint32_t)x112 & 0xffffff);
- uint64_t x115 = (x113 + x39);
- uint64_t x116 = (x115 >> 0x18);
- uint32_t x117 = ((uint32_t)x115 & 0xffffff);
- uint64_t x118 = (x60 + (0x11 * x116));
- uint32_t x119 = (uint32_t) (x118 >> 0x19);
- uint32_t x120 = ((uint32_t)x118 & 0x1ffffff);
- uint32_t x121 = (x119 + x63);
- uint32_t x122 = (x121 >> 0x18);
- uint32_t x123 = (x121 & 0xffffff);
- return (Return x117, Return x114, Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, (x122 + x66), Return x123, Return x120))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e488m17_20limbs/fesquareDisplay.v b/src/Specific/solinas32_2e488m17_20limbs/fesquareDisplay.v
deleted file mode 100644
index ce7e965aa..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e488m17_20limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e488m17_20limbs/fesub.c b/src/Specific/solinas32_2e488m17_20limbs/fesub.c
deleted file mode 100644
index 206417acd..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/fesub.c
+++ /dev/null
@@ -1,63 +0,0 @@
-static void fesub(uint32_t out[20], const uint32_t in1[20], const uint32_t in2[20]) {
- { const uint32_t x40 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x78 = in2[19];
- { const uint32_t x79 = in2[18];
- { const uint32_t x77 = in2[17];
- { const uint32_t x75 = in2[16];
- { const uint32_t x73 = in2[15];
- { const uint32_t x71 = in2[14];
- { const uint32_t x69 = in2[13];
- { const uint32_t x67 = in2[12];
- { const uint32_t x65 = in2[11];
- { const uint32_t x63 = in2[10];
- { const uint32_t x61 = in2[9];
- { const uint32_t x59 = in2[8];
- { const uint32_t x57 = in2[7];
- { const uint32_t x55 = in2[6];
- { const uint32_t x53 = in2[5];
- { const uint32_t x51 = in2[4];
- { const uint32_t x49 = in2[3];
- { const uint32_t x47 = in2[2];
- { const uint32_t x45 = in2[1];
- { const uint32_t x43 = in2[0];
- out[0] = ((0x3ffffde + x5) - x43);
- out[1] = ((0x1fffffe + x7) - x45);
- out[2] = ((0x3fffffe + x9) - x47);
- out[3] = ((0x1fffffe + x11) - x49);
- out[4] = ((0x1fffffe + x13) - x51);
- out[5] = ((0x3fffffe + x15) - x53);
- out[6] = ((0x1fffffe + x17) - x55);
- out[7] = ((0x3fffffe + x19) - x57);
- out[8] = ((0x1fffffe + x21) - x59);
- out[9] = ((0x1fffffe + x23) - x61);
- out[10] = ((0x3fffffe + x25) - x63);
- out[11] = ((0x1fffffe + x27) - x65);
- out[12] = ((0x3fffffe + x29) - x67);
- out[13] = ((0x1fffffe + x31) - x69);
- out[14] = ((0x1fffffe + x33) - x71);
- out[15] = ((0x3fffffe + x35) - x73);
- out[16] = ((0x1fffffe + x37) - x75);
- out[17] = ((0x3fffffe + x39) - x77);
- out[18] = ((0x1fffffe + x41) - x79);
- out[19] = ((0x1fffffe + x40) - x78);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e488m17_20limbs/fesub.v b/src/Specific/solinas32_2e488m17_20limbs/fesub.v
deleted file mode 100644
index 662033c26..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e488m17_20limbs.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_2e488m17_20limbs/fesubDisplay.log b/src/Specific/solinas32_2e488m17_20limbs/fesubDisplay.log
deleted file mode 100644
index 452ba7d53..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x40, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x78, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43))%core,
- (((0x1fffffe + x40) - x78), ((0x1fffffe + x41) - x79), ((0x3fffffe + x39) - x77), ((0x1fffffe + x37) - x75), ((0x3fffffe + x35) - x73), ((0x1fffffe + x33) - x71), ((0x1fffffe + x31) - x69), ((0x3fffffe + x29) - x67), ((0x1fffffe + x27) - x65), ((0x3fffffe + x25) - x63), ((0x1fffffe + x23) - x61), ((0x1fffffe + x21) - x59), ((0x3fffffe + x19) - x57), ((0x1fffffe + x17) - x55), ((0x3fffffe + x15) - x53), ((0x1fffffe + x13) - x51), ((0x1fffffe + x11) - x49), ((0x3fffffe + x9) - x47), ((0x1fffffe + x7) - x45), ((0x3ffffde + x5) - x43)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e488m17_20limbs/fesubDisplay.v b/src/Specific/solinas32_2e488m17_20limbs/fesubDisplay.v
deleted file mode 100644
index 877b9efde..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e488m17_20limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e488m17_20limbs/freeze.c b/src/Specific/solinas32_2e488m17_20limbs/freeze.c
deleted file mode 100644
index 79ed98278..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/freeze.c
+++ /dev/null
@@ -1,104 +0,0 @@
-static void freeze(uint32_t out[20], const uint32_t in1[20]) {
- { const uint32_t x37 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffef);
- { uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x4, 0xffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x6, 0x1ffffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x8, 0xffffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x10, 0xffffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x12, 0x1ffffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x14, 0xffffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x16, 0x1ffffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x18, 0xffffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x20, 0xffffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x22, 0x1ffffff);
- { uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x24, 0xffffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x26, 0x1ffffff);
- { uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x28, 0xffffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x30, 0xffffff);
- { uint32_t x85, uint8_t x86 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x32, 0x1ffffff);
- { uint32_t x88, uint8_t x89 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x34, 0xffffff);
- { uint32_t x91, uint8_t x92 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x89, Return x36, 0x1ffffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x38, 0xffffff);
- { uint32_t x97, uint8_t x98 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x37, 0xffffff);
- { uint32_t x99 = cmovznz32(x98, 0x0, 0xffffffff);
- { uint32_t x100 = (x99 & 0x1ffffef);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x40, Return x100);
- { uint32_t x104 = (x99 & 0xffffff);
- { uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x43, Return x104);
- { uint32_t x108 = (x99 & 0x1ffffff);
- { uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x46, Return x108);
- { uint32_t x112 = (x99 & 0xffffff);
- { uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x49, Return x112);
- { uint32_t x116 = (x99 & 0xffffff);
- { uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x52, Return x116);
- { uint32_t x120 = (x99 & 0x1ffffff);
- { uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x55, Return x120);
- { uint32_t x124 = (x99 & 0xffffff);
- { uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x58, Return x124);
- { uint32_t x128 = (x99 & 0x1ffffff);
- { uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x61, Return x128);
- { uint32_t x132 = (x99 & 0xffffff);
- { uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x64, Return x132);
- { uint32_t x136 = (x99 & 0xffffff);
- { uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x67, Return x136);
- { uint32_t x140 = (x99 & 0x1ffffff);
- { uint32_t x142, uint8_t x143 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x70, Return x140);
- { uint32_t x144 = (x99 & 0xffffff);
- { uint32_t x146, uint8_t x147 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x143, Return x73, Return x144);
- { uint32_t x148 = (x99 & 0x1ffffff);
- { uint32_t x150, uint8_t x151 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x147, Return x76, Return x148);
- { uint32_t x152 = (x99 & 0xffffff);
- { uint32_t x154, uint8_t x155 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x151, Return x79, Return x152);
- { uint32_t x156 = (x99 & 0xffffff);
- { uint32_t x158, uint8_t x159 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x155, Return x82, Return x156);
- { uint32_t x160 = (x99 & 0x1ffffff);
- { uint32_t x162, uint8_t x163 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x159, Return x85, Return x160);
- { uint32_t x164 = (x99 & 0xffffff);
- { uint32_t x166, uint8_t x167 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x163, Return x88, Return x164);
- { uint32_t x168 = (x99 & 0x1ffffff);
- { uint32_t x170, uint8_t x171 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x167, Return x91, Return x168);
- { uint32_t x172 = (x99 & 0xffffff);
- { uint32_t x174, uint8_t x175 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x171, Return x94, Return x172);
- { uint32_t x176 = (x99 & 0xffffff);
- { uint32_t x178, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x175, Return x97, Return x176);
- out[0] = x102;
- out[1] = x106;
- out[2] = x110;
- out[3] = x114;
- out[4] = x118;
- out[5] = x122;
- out[6] = x126;
- out[7] = x130;
- out[8] = x134;
- out[9] = x138;
- out[10] = x142;
- out[11] = x146;
- out[12] = x150;
- out[13] = x154;
- out[14] = x158;
- out[15] = x162;
- out[16] = x166;
- out[17] = x170;
- out[18] = x174;
- out[19] = x178;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e488m17_20limbs/freeze.v b/src/Specific/solinas32_2e488m17_20limbs/freeze.v
deleted file mode 100644
index 36268957e..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e488m17_20limbs.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_2e488m17_20limbs/freezeDisplay.log b/src/Specific/solinas32_2e488m17_20limbs/freezeDisplay.log
deleted file mode 100644
index 908e52cea..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/freezeDisplay.log
+++ /dev/null
@@ -1,68 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x37, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffef);
- uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x4, 0xffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x6, 0x1ffffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x8, 0xffffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x10, 0xffffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x12, 0x1ffffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x14, 0xffffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x16, 0x1ffffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x18, 0xffffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x20, 0xffffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x22, 0x1ffffff);
- uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x24, 0xffffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x26, 0x1ffffff);
- uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x28, 0xffffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x30, 0xffffff);
- uint32_t x85, uint8_t x86 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x32, 0x1ffffff);
- uint32_t x88, uint8_t x89 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x34, 0xffffff);
- uint32_t x91, uint8_t x92 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x89, Return x36, 0x1ffffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x38, 0xffffff);
- uint32_t x97, uint8_t x98 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x37, 0xffffff);
- uint32_t x99 = cmovznz32(x98, 0x0, 0xffffffff);
- uint32_t x100 = (x99 & 0x1ffffef);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x40, Return x100);
- uint32_t x104 = (x99 & 0xffffff);
- uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x43, Return x104);
- uint32_t x108 = (x99 & 0x1ffffff);
- uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x46, Return x108);
- uint32_t x112 = (x99 & 0xffffff);
- uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x49, Return x112);
- uint32_t x116 = (x99 & 0xffffff);
- uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x52, Return x116);
- uint32_t x120 = (x99 & 0x1ffffff);
- uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x55, Return x120);
- uint32_t x124 = (x99 & 0xffffff);
- uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x58, Return x124);
- uint32_t x128 = (x99 & 0x1ffffff);
- uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x61, Return x128);
- uint32_t x132 = (x99 & 0xffffff);
- uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x64, Return x132);
- uint32_t x136 = (x99 & 0xffffff);
- uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x67, Return x136);
- uint32_t x140 = (x99 & 0x1ffffff);
- uint32_t x142, uint8_t x143 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x70, Return x140);
- uint32_t x144 = (x99 & 0xffffff);
- uint32_t x146, uint8_t x147 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x143, Return x73, Return x144);
- uint32_t x148 = (x99 & 0x1ffffff);
- uint32_t x150, uint8_t x151 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x147, Return x76, Return x148);
- uint32_t x152 = (x99 & 0xffffff);
- uint32_t x154, uint8_t x155 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x151, Return x79, Return x152);
- uint32_t x156 = (x99 & 0xffffff);
- uint32_t x158, uint8_t x159 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x155, Return x82, Return x156);
- uint32_t x160 = (x99 & 0x1ffffff);
- uint32_t x162, uint8_t x163 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x159, Return x85, Return x160);
- uint32_t x164 = (x99 & 0xffffff);
- uint32_t x166, uint8_t x167 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x163, Return x88, Return x164);
- uint32_t x168 = (x99 & 0x1ffffff);
- uint32_t x170, uint8_t x171 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x167, Return x91, Return x168);
- uint32_t x172 = (x99 & 0xffffff);
- uint32_t x174, uint8_t x175 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x171, Return x94, Return x172);
- uint32_t x176 = (x99 & 0xffffff);
- uint32_t x178, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x175, Return x97, Return x176);
- (Return x178, Return x174, Return x170, Return x166, Return x162, Return x158, Return x154, Return x150, Return x146, Return x142, Return x138, Return x134, Return x130, Return x126, Return x122, Return x118, Return x114, Return x110, Return x106, Return x102))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e488m17_20limbs/freezeDisplay.v b/src/Specific/solinas32_2e488m17_20limbs/freezeDisplay.v
deleted file mode 100644
index 36b01db19..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e488m17_20limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e488m17_20limbs/py_interpreter.sh b/src/Specific/solinas32_2e488m17_20limbs/py_interpreter.sh
deleted file mode 100755
index 906be2e3d..000000000
--- a/src/Specific/solinas32_2e488m17_20limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**488 - 17' -Dmodulus_bytes='24.4' -Da24='121665'
diff --git a/src/Specific/solinas32_2e489m21_19limbs/CurveParameters.v b/src/Specific/solinas32_2e489m21_19limbs/CurveParameters.v
deleted file mode 100644
index 55c7fba35..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^489 - 21
-Base: 25 + 14/19
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 19%nat;
- base := 25 + 14/19;
- bitwidth := 32;
- s := 2^489;
- c := [(1, 21)];
- carry_chains := Some [seq 0 (pred 19); [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_2e489m21_19limbs/Synthesis.v b/src/Specific/solinas32_2e489m21_19limbs/Synthesis.v
deleted file mode 100644
index f5eb0a99e..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e489m21_19limbs.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_2e489m21_19limbs/compiler.sh b/src/Specific/solinas32_2e489m21_19limbs/compiler.sh
deleted file mode 100755
index e0bed9018..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,25,26,26,26,25,26,26,26,25,26,26,26,25,26,26,25}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='19' -Dq_mpz='(1_mpz<<489) - 21' "$@"
diff --git a/src/Specific/solinas32_2e489m21_19limbs/compilerxx.sh b/src/Specific/solinas32_2e489m21_19limbs/compilerxx.sh
deleted file mode 100755
index 4f6f47511..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{26,26,26,25,26,26,26,25,26,26,26,25,26,26,26,25,26,26,25}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='19' -Dq_mpz='(1_mpz<<489) - 21' "$@"
diff --git a/src/Specific/solinas32_2e489m21_19limbs/feadd.c b/src/Specific/solinas32_2e489m21_19limbs/feadd.c
deleted file mode 100644
index 7432e2ef1..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/feadd.c
+++ /dev/null
@@ -1,60 +0,0 @@
-static void feadd(uint32_t out[19], const uint32_t in1[19], const uint32_t in2[19]) {
- { const uint32_t x38 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x74 = in2[18];
- { const uint32_t x75 = in2[17];
- { const uint32_t x73 = in2[16];
- { const uint32_t x71 = in2[15];
- { const uint32_t x69 = in2[14];
- { const uint32_t x67 = in2[13];
- { const uint32_t x65 = in2[12];
- { const uint32_t x63 = in2[11];
- { const uint32_t x61 = in2[10];
- { const uint32_t x59 = in2[9];
- { const uint32_t x57 = in2[8];
- { const uint32_t x55 = in2[7];
- { const uint32_t x53 = in2[6];
- { const uint32_t x51 = in2[5];
- { const uint32_t x49 = in2[4];
- { const uint32_t x47 = in2[3];
- { const uint32_t x45 = in2[2];
- { const uint32_t x43 = in2[1];
- { const uint32_t x41 = in2[0];
- out[0] = (x5 + x41);
- out[1] = (x7 + x43);
- out[2] = (x9 + x45);
- out[3] = (x11 + x47);
- out[4] = (x13 + x49);
- out[5] = (x15 + x51);
- out[6] = (x17 + x53);
- out[7] = (x19 + x55);
- out[8] = (x21 + x57);
- out[9] = (x23 + x59);
- out[10] = (x25 + x61);
- out[11] = (x27 + x63);
- out[12] = (x29 + x65);
- out[13] = (x31 + x67);
- out[14] = (x33 + x69);
- out[15] = (x35 + x71);
- out[16] = (x37 + x73);
- out[17] = (x39 + x75);
- out[18] = (x38 + x74);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e489m21_19limbs/feadd.v b/src/Specific/solinas32_2e489m21_19limbs/feadd.v
deleted file mode 100644
index 7e346bcdb..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e489m21_19limbs.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_2e489m21_19limbs/feaddDisplay.log b/src/Specific/solinas32_2e489m21_19limbs/feaddDisplay.log
deleted file mode 100644
index 76a71b356..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x38, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x74, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41))%core,
- ((x38 + x74), (x39 + x75), (x37 + x73), (x35 + x71), (x33 + x69), (x31 + x67), (x29 + x65), (x27 + x63), (x25 + x61), (x23 + x59), (x21 + x57), (x19 + x55), (x17 + x53), (x15 + x51), (x13 + x49), (x11 + x47), (x9 + x45), (x7 + x43), (x5 + x41)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e489m21_19limbs/feaddDisplay.v b/src/Specific/solinas32_2e489m21_19limbs/feaddDisplay.v
deleted file mode 100644
index 78dee1f40..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e489m21_19limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e489m21_19limbs/fecarry.v b/src/Specific/solinas32_2e489m21_19limbs/fecarry.v
deleted file mode 100644
index f149823df..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e489m21_19limbs.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_2e489m21_19limbs/fecarryDisplay.v b/src/Specific/solinas32_2e489m21_19limbs/fecarryDisplay.v
deleted file mode 100644
index e3d238077..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e489m21_19limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e489m21_19limbs/femul.c b/src/Specific/solinas32_2e489m21_19limbs/femul.c
deleted file mode 100644
index cd4bd09ed..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/femul.c
+++ /dev/null
@@ -1,141 +0,0 @@
-static void femul(uint32_t out[19], const uint32_t in1[19], const uint32_t in2[19]) {
- { const uint32_t x38 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x74 = in2[18];
- { const uint32_t x75 = in2[17];
- { const uint32_t x73 = in2[16];
- { const uint32_t x71 = in2[15];
- { const uint32_t x69 = in2[14];
- { const uint32_t x67 = in2[13];
- { const uint32_t x65 = in2[12];
- { const uint32_t x63 = in2[11];
- { const uint32_t x61 = in2[10];
- { const uint32_t x59 = in2[9];
- { const uint32_t x57 = in2[8];
- { const uint32_t x55 = in2[7];
- { const uint32_t x53 = in2[6];
- { const uint32_t x51 = in2[5];
- { const uint32_t x49 = in2[4];
- { const uint32_t x47 = in2[3];
- { const uint32_t x45 = in2[2];
- { const uint32_t x43 = in2[1];
- { const uint32_t x41 = in2[0];
- { uint64_t x76 = (((uint64_t)x5 * x74) + (((uint64_t)x7 * x75) + (((uint64_t)x9 * x73) + ((0x2 * ((uint64_t)x11 * x71)) + (((uint64_t)x13 * x69) + (((uint64_t)x15 * x67) + (((uint64_t)x17 * x65) + ((0x2 * ((uint64_t)x19 * x63)) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + ((0x2 * ((uint64_t)x27 * x55)) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + ((0x2 * ((uint64_t)x35 * x47)) + (((uint64_t)x37 * x45) + (((uint64_t)x39 * x43) + ((uint64_t)x38 * x41)))))))))))))))))));
- { uint64_t x77 = ((((uint64_t)x5 * x75) + (((uint64_t)x7 * x73) + ((0x2 * ((uint64_t)x9 * x71)) + ((0x2 * ((uint64_t)x11 * x69)) + (((uint64_t)x13 * x67) + (((uint64_t)x15 * x65) + ((0x2 * ((uint64_t)x17 * x63)) + ((0x2 * ((uint64_t)x19 * x61)) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + ((0x2 * ((uint64_t)x25 * x55)) + ((0x2 * ((uint64_t)x27 * x53)) + (((uint64_t)x29 * x51) + (((uint64_t)x31 * x49) + ((0x2 * ((uint64_t)x33 * x47)) + ((0x2 * ((uint64_t)x35 * x45)) + (((uint64_t)x37 * x43) + ((uint64_t)x39 * x41)))))))))))))))))) + (0x15 * (0x2 * ((uint64_t)x38 * x74))));
- { uint64_t x78 = ((((uint64_t)x5 * x73) + ((0x2 * ((uint64_t)x7 * x71)) + ((0x2 * ((uint64_t)x9 * x69)) + ((0x2 * ((uint64_t)x11 * x67)) + (((uint64_t)x13 * x65) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + (((uint64_t)x21 * x57) + ((0x2 * ((uint64_t)x23 * x55)) + ((0x2 * ((uint64_t)x25 * x53)) + ((0x2 * ((uint64_t)x27 * x51)) + (((uint64_t)x29 * x49) + ((0x2 * ((uint64_t)x31 * x47)) + ((0x2 * ((uint64_t)x33 * x45)) + ((0x2 * ((uint64_t)x35 * x43)) + ((uint64_t)x37 * x41))))))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x39 * x74)) + (0x2 * ((uint64_t)x38 * x75)))));
- { uint64_t x79 = ((((uint64_t)x5 * x71) + (((uint64_t)x7 * x69) + (((uint64_t)x9 * x67) + (((uint64_t)x11 * x65) + (((uint64_t)x13 * x63) + (((uint64_t)x15 * x61) + (((uint64_t)x17 * x59) + (((uint64_t)x19 * x57) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (((uint64_t)x29 * x47) + (((uint64_t)x31 * x45) + (((uint64_t)x33 * x43) + ((uint64_t)x35 * x41)))))))))))))))) + (0x15 * (((uint64_t)x37 * x74) + (((uint64_t)x39 * x75) + ((uint64_t)x38 * x73)))));
- { uint64_t x80 = ((((uint64_t)x5 * x69) + (((uint64_t)x7 * x67) + (((uint64_t)x9 * x65) + ((0x2 * ((uint64_t)x11 * x63)) + (((uint64_t)x13 * x61) + (((uint64_t)x15 * x59) + (((uint64_t)x17 * x57) + ((0x2 * ((uint64_t)x19 * x55)) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + (((uint64_t)x25 * x49) + ((0x2 * ((uint64_t)x27 * x47)) + (((uint64_t)x29 * x45) + (((uint64_t)x31 * x43) + ((uint64_t)x33 * x41))))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x35 * x74)) + (((uint64_t)x37 * x75) + (((uint64_t)x39 * x73) + (0x2 * ((uint64_t)x38 * x71)))))));
- { uint64_t x81 = ((((uint64_t)x5 * x67) + (((uint64_t)x7 * x65) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + (((uint64_t)x13 * x59) + (((uint64_t)x15 * x57) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + (((uint64_t)x29 * x43) + ((uint64_t)x31 * x41)))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x33 * x74)) + ((0x2 * ((uint64_t)x35 * x75)) + (((uint64_t)x37 * x73) + ((0x2 * ((uint64_t)x39 * x71)) + (0x2 * ((uint64_t)x38 * x69))))))));
- { uint64_t x82 = ((((uint64_t)x5 * x65) + ((0x2 * ((uint64_t)x7 * x63)) + ((0x2 * ((uint64_t)x9 * x61)) + ((0x2 * ((uint64_t)x11 * x59)) + (((uint64_t)x13 * x57) + ((0x2 * ((uint64_t)x15 * x55)) + ((0x2 * ((uint64_t)x17 * x53)) + ((0x2 * ((uint64_t)x19 * x51)) + (((uint64_t)x21 * x49) + ((0x2 * ((uint64_t)x23 * x47)) + ((0x2 * ((uint64_t)x25 * x45)) + ((0x2 * ((uint64_t)x27 * x43)) + ((uint64_t)x29 * x41))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x31 * x74)) + ((0x2 * ((uint64_t)x33 * x75)) + ((0x2 * ((uint64_t)x35 * x73)) + ((0x2 * ((uint64_t)x37 * x71)) + ((0x2 * ((uint64_t)x39 * x69)) + (0x2 * ((uint64_t)x38 * x67)))))))));
- { uint64_t x83 = ((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + (((uint64_t)x9 * x59) + (((uint64_t)x11 * x57) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + ((uint64_t)x27 * x41)))))))))))) + (0x15 * (((uint64_t)x29 * x74) + (((uint64_t)x31 * x75) + (((uint64_t)x33 * x73) + ((0x2 * ((uint64_t)x35 * x71)) + (((uint64_t)x37 * x69) + (((uint64_t)x39 * x67) + ((uint64_t)x38 * x65)))))))));
- { uint64_t x84 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + ((0x2 * ((uint64_t)x11 * x55)) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + ((uint64_t)x25 * x41))))))))))) + (0x15 * ((0x2 * ((uint64_t)x27 * x74)) + (((uint64_t)x29 * x75) + (((uint64_t)x31 * x73) + ((0x2 * ((uint64_t)x33 * x71)) + ((0x2 * ((uint64_t)x35 * x69)) + (((uint64_t)x37 * x67) + (((uint64_t)x39 * x65) + (0x2 * ((uint64_t)x38 * x63)))))))))));
- { uint64_t x85 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + (((uint64_t)x21 * x43) + ((uint64_t)x23 * x41)))))))))) + (0x15 * ((0x2 * ((uint64_t)x25 * x74)) + ((0x2 * ((uint64_t)x27 * x75)) + (((uint64_t)x29 * x73) + ((0x2 * ((uint64_t)x31 * x71)) + ((0x2 * ((uint64_t)x33 * x69)) + ((0x2 * ((uint64_t)x35 * x67)) + (((uint64_t)x37 * x65) + ((0x2 * ((uint64_t)x39 * x63)) + (0x2 * ((uint64_t)x38 * x61))))))))))));
- { uint64_t x86 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + (((uint64_t)x13 * x49) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + ((uint64_t)x21 * x41))))))))) + (0x15 * ((0x2 * ((uint64_t)x23 * x74)) + ((0x2 * ((uint64_t)x25 * x75)) + ((0x2 * ((uint64_t)x27 * x73)) + ((0x2 * ((uint64_t)x29 * x71)) + ((0x2 * ((uint64_t)x31 * x69)) + ((0x2 * ((uint64_t)x33 * x67)) + ((0x2 * ((uint64_t)x35 * x65)) + ((0x2 * ((uint64_t)x37 * x63)) + ((0x2 * ((uint64_t)x39 * x61)) + (0x2 * ((uint64_t)x38 * x59)))))))))))));
- { uint64_t x87 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((uint64_t)x19 * x41)))))))) + (0x15 * (((uint64_t)x21 * x74) + (((uint64_t)x23 * x75) + (((uint64_t)x25 * x73) + ((0x2 * ((uint64_t)x27 * x71)) + (((uint64_t)x29 * x69) + (((uint64_t)x31 * x67) + (((uint64_t)x33 * x65) + ((0x2 * ((uint64_t)x35 * x63)) + (((uint64_t)x37 * x61) + (((uint64_t)x39 * x59) + ((uint64_t)x38 * x57)))))))))))));
- { uint64_t x88 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + ((0x2 * ((uint64_t)x11 * x47)) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + ((uint64_t)x17 * x41))))))) + (0x15 * ((0x2 * ((uint64_t)x19 * x74)) + (((uint64_t)x21 * x75) + (((uint64_t)x23 * x73) + ((0x2 * ((uint64_t)x25 * x71)) + ((0x2 * ((uint64_t)x27 * x69)) + (((uint64_t)x29 * x67) + (((uint64_t)x31 * x65) + ((0x2 * ((uint64_t)x33 * x63)) + ((0x2 * ((uint64_t)x35 * x61)) + (((uint64_t)x37 * x59) + (((uint64_t)x39 * x57) + (0x2 * ((uint64_t)x38 * x55)))))))))))))));
- { uint64_t x89 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + (((uint64_t)x13 * x43) + ((uint64_t)x15 * x41)))))) + (0x15 * ((0x2 * ((uint64_t)x17 * x74)) + ((0x2 * ((uint64_t)x19 * x75)) + (((uint64_t)x21 * x73) + ((0x2 * ((uint64_t)x23 * x71)) + ((0x2 * ((uint64_t)x25 * x69)) + ((0x2 * ((uint64_t)x27 * x67)) + (((uint64_t)x29 * x65) + ((0x2 * ((uint64_t)x31 * x63)) + ((0x2 * ((uint64_t)x33 * x61)) + ((0x2 * ((uint64_t)x35 * x59)) + (((uint64_t)x37 * x57) + ((0x2 * ((uint64_t)x39 * x55)) + (0x2 * ((uint64_t)x38 * x53))))))))))))))));
- { ℤ x90 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + ((0x2 * ((uint64_t)x11 * x43)) + ((uint64_t)x13 * x41))))) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x15 * x74)) + ((0x2 * ((uint64_t)x17 * x75)) + ((0x2 * ((uint64_t)x19 * x73)) + ((0x2 * ((uint64_t)x21 * x71)) + ((0x2 * ((uint64_t)x23 * x69)) + ((0x2 * ((uint64_t)x25 * x67)) + ((0x2 * ((uint64_t)x27 * x65)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + ((0x2 * ((uint64_t)x35 * x57)) + ((0x2 * ((uint64_t)x37 * x55)) + ((0x2 * ((uint64_t)x39 * x53)) + (0x2 * ((uint64_t)x38 * x51)))))))))))))))));
- { uint64_t x91 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + ((uint64_t)x11 * x41)))) + (0x15 * (((uint64_t)x13 * x74) + (((uint64_t)x15 * x75) + (((uint64_t)x17 * x73) + ((0x2 * ((uint64_t)x19 * x71)) + (((uint64_t)x21 * x69) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + ((0x2 * ((uint64_t)x27 * x63)) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + ((0x2 * ((uint64_t)x35 * x55)) + (((uint64_t)x37 * x53) + (((uint64_t)x39 * x51) + ((uint64_t)x38 * x49)))))))))))))))));
- { uint64_t x92 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((uint64_t)x9 * x41))) + (0x15 * ((0x2 * ((uint64_t)x11 * x74)) + (((uint64_t)x13 * x75) + (((uint64_t)x15 * x73) + ((0x2 * ((uint64_t)x17 * x71)) + ((0x2 * ((uint64_t)x19 * x69)) + (((uint64_t)x21 * x67) + (((uint64_t)x23 * x65) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + ((0x2 * ((uint64_t)x33 * x55)) + ((0x2 * ((uint64_t)x35 * x53)) + (((uint64_t)x37 * x51) + (((uint64_t)x39 * x49) + (0x2 * ((uint64_t)x38 * x47)))))))))))))))))));
- { ℤ x93 = ((((uint64_t)x5 * x43) + ((uint64_t)x7 * x41)) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x9 * x74)) + ((0x2 * ((uint64_t)x11 * x75)) + (((uint64_t)x13 * x73) + ((0x2 * ((uint64_t)x15 * x71)) + ((0x2 * ((uint64_t)x17 * x69)) + ((0x2 * ((uint64_t)x19 * x67)) + (((uint64_t)x21 * x65) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + (((uint64_t)x29 * x57) + ((0x2 * ((uint64_t)x31 * x55)) + ((0x2 * ((uint64_t)x33 * x53)) + ((0x2 * ((uint64_t)x35 * x51)) + (((uint64_t)x37 * x49) + ((0x2 * ((uint64_t)x39 * x47)) + (0x2 * ((uint64_t)x38 * x45))))))))))))))))))));
- { ℤ x94 = (((uint64_t)x5 * x41) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x7 * x74)) + ((0x2 * ((uint64_t)x9 * x75)) + ((0x2 * ((uint64_t)x11 * x73)) + ((0x2 * ((uint64_t)x13 * x71)) + ((0x2 * ((uint64_t)x15 * x69)) + ((0x2 * ((uint64_t)x17 * x67)) + ((0x2 * ((uint64_t)x19 * x65)) + ((0x2 * ((uint64_t)x21 * x63)) + ((0x2 * ((uint64_t)x23 * x61)) + ((0x2 * ((uint64_t)x25 * x59)) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + ((0x2 * ((uint64_t)x31 * x53)) + ((0x2 * ((uint64_t)x33 * x51)) + ((0x2 * ((uint64_t)x35 * x49)) + ((0x2 * ((uint64_t)x37 * x47)) + ((0x2 * ((uint64_t)x39 * x45)) + (0x2 * ((uint64_t)x38 * x43)))))))))))))))))))));
- { uint64_t x95 = (x94 >> 0x1a);
- { uint32_t x96 = (x94 & 0x3ffffff);
- { ℤ x97 = (x95 +ℤ x93);
- { uint64_t x98 = (x97 >> 0x1a);
- { uint32_t x99 = (x97 & 0x3ffffff);
- { uint64_t x100 = (x98 + x92);
- { uint64_t x101 = (x100 >> 0x1a);
- { uint32_t x102 = ((uint32_t)x100 & 0x3ffffff);
- { uint64_t x103 = (x101 + x91);
- { uint64_t x104 = (x103 >> 0x19);
- { uint32_t x105 = ((uint32_t)x103 & 0x1ffffff);
- { ℤ x106 = (x104 +ℤ x90);
- { uint64_t x107 = (x106 >> 0x1a);
- { uint32_t x108 = (x106 & 0x3ffffff);
- { uint64_t x109 = (x107 + x89);
- { uint64_t x110 = (x109 >> 0x1a);
- { uint32_t x111 = ((uint32_t)x109 & 0x3ffffff);
- { uint64_t x112 = (x110 + x88);
- { uint64_t x113 = (x112 >> 0x1a);
- { uint32_t x114 = ((uint32_t)x112 & 0x3ffffff);
- { uint64_t x115 = (x113 + x87);
- { uint64_t x116 = (x115 >> 0x19);
- { uint32_t x117 = ((uint32_t)x115 & 0x1ffffff);
- { uint64_t x118 = (x116 + x86);
- { uint64_t x119 = (x118 >> 0x1a);
- { uint32_t x120 = ((uint32_t)x118 & 0x3ffffff);
- { uint64_t x121 = (x119 + x85);
- { uint64_t x122 = (x121 >> 0x1a);
- { uint32_t x123 = ((uint32_t)x121 & 0x3ffffff);
- { uint64_t x124 = (x122 + x84);
- { uint64_t x125 = (x124 >> 0x1a);
- { uint32_t x126 = ((uint32_t)x124 & 0x3ffffff);
- { uint64_t x127 = (x125 + x83);
- { uint64_t x128 = (x127 >> 0x19);
- { uint32_t x129 = ((uint32_t)x127 & 0x1ffffff);
- { uint64_t x130 = (x128 + x82);
- { uint64_t x131 = (x130 >> 0x1a);
- { uint32_t x132 = ((uint32_t)x130 & 0x3ffffff);
- { uint64_t x133 = (x131 + x81);
- { uint64_t x134 = (x133 >> 0x1a);
- { uint32_t x135 = ((uint32_t)x133 & 0x3ffffff);
- { uint64_t x136 = (x134 + x80);
- { uint64_t x137 = (x136 >> 0x1a);
- { uint32_t x138 = ((uint32_t)x136 & 0x3ffffff);
- { uint64_t x139 = (x137 + x79);
- { uint64_t x140 = (x139 >> 0x19);
- { uint32_t x141 = ((uint32_t)x139 & 0x1ffffff);
- { uint64_t x142 = (x140 + x78);
- { uint64_t x143 = (x142 >> 0x1a);
- { uint32_t x144 = ((uint32_t)x142 & 0x3ffffff);
- { uint64_t x145 = (x143 + x77);
- { uint64_t x146 = (x145 >> 0x1a);
- { uint32_t x147 = ((uint32_t)x145 & 0x3ffffff);
- { uint64_t x148 = (x146 + x76);
- { uint64_t x149 = (x148 >> 0x19);
- { uint32_t x150 = ((uint32_t)x148 & 0x1ffffff);
- { uint64_t x151 = (x96 + (0x15 * x149));
- { uint32_t x152 = (uint32_t) (x151 >> 0x1a);
- { uint32_t x153 = ((uint32_t)x151 & 0x3ffffff);
- { uint32_t x154 = (x152 + x99);
- { uint32_t x155 = (x154 >> 0x1a);
- { uint32_t x156 = (x154 & 0x3ffffff);
- out[0] = x153;
- out[1] = x156;
- out[2] = (x155 + x102);
- out[3] = x105;
- out[4] = x108;
- out[5] = x111;
- out[6] = x114;
- out[7] = x117;
- out[8] = x120;
- out[9] = x123;
- out[10] = x126;
- out[11] = x129;
- out[12] = x132;
- out[13] = x135;
- out[14] = x138;
- out[15] = x141;
- out[16] = x144;
- out[17] = x147;
- out[18] = x150;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e489m21_19limbs/femul.v b/src/Specific/solinas32_2e489m21_19limbs/femul.v
deleted file mode 100644
index 9d6bc5e17..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e489m21_19limbs.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_2e489m21_19limbs/femulDisplay.log b/src/Specific/solinas32_2e489m21_19limbs/femulDisplay.log
deleted file mode 100644
index f3059424a..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/femulDisplay.log
+++ /dev/null
@@ -1,88 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x38, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x74, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41))%core,
- uint64_t x76 = (((uint64_t)x5 * x74) + (((uint64_t)x7 * x75) + (((uint64_t)x9 * x73) + ((0x2 * ((uint64_t)x11 * x71)) + (((uint64_t)x13 * x69) + (((uint64_t)x15 * x67) + (((uint64_t)x17 * x65) + ((0x2 * ((uint64_t)x19 * x63)) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + ((0x2 * ((uint64_t)x27 * x55)) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + ((0x2 * ((uint64_t)x35 * x47)) + (((uint64_t)x37 * x45) + (((uint64_t)x39 * x43) + ((uint64_t)x38 * x41)))))))))))))))))));
- uint64_t x77 = ((((uint64_t)x5 * x75) + (((uint64_t)x7 * x73) + ((0x2 * ((uint64_t)x9 * x71)) + ((0x2 * ((uint64_t)x11 * x69)) + (((uint64_t)x13 * x67) + (((uint64_t)x15 * x65) + ((0x2 * ((uint64_t)x17 * x63)) + ((0x2 * ((uint64_t)x19 * x61)) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + ((0x2 * ((uint64_t)x25 * x55)) + ((0x2 * ((uint64_t)x27 * x53)) + (((uint64_t)x29 * x51) + (((uint64_t)x31 * x49) + ((0x2 * ((uint64_t)x33 * x47)) + ((0x2 * ((uint64_t)x35 * x45)) + (((uint64_t)x37 * x43) + ((uint64_t)x39 * x41)))))))))))))))))) + (0x15 * (0x2 * ((uint64_t)x38 * x74))));
- uint64_t x78 = ((((uint64_t)x5 * x73) + ((0x2 * ((uint64_t)x7 * x71)) + ((0x2 * ((uint64_t)x9 * x69)) + ((0x2 * ((uint64_t)x11 * x67)) + (((uint64_t)x13 * x65) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + (((uint64_t)x21 * x57) + ((0x2 * ((uint64_t)x23 * x55)) + ((0x2 * ((uint64_t)x25 * x53)) + ((0x2 * ((uint64_t)x27 * x51)) + (((uint64_t)x29 * x49) + ((0x2 * ((uint64_t)x31 * x47)) + ((0x2 * ((uint64_t)x33 * x45)) + ((0x2 * ((uint64_t)x35 * x43)) + ((uint64_t)x37 * x41))))))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x39 * x74)) + (0x2 * ((uint64_t)x38 * x75)))));
- uint64_t x79 = ((((uint64_t)x5 * x71) + (((uint64_t)x7 * x69) + (((uint64_t)x9 * x67) + (((uint64_t)x11 * x65) + (((uint64_t)x13 * x63) + (((uint64_t)x15 * x61) + (((uint64_t)x17 * x59) + (((uint64_t)x19 * x57) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (((uint64_t)x29 * x47) + (((uint64_t)x31 * x45) + (((uint64_t)x33 * x43) + ((uint64_t)x35 * x41)))))))))))))))) + (0x15 * (((uint64_t)x37 * x74) + (((uint64_t)x39 * x75) + ((uint64_t)x38 * x73)))));
- uint64_t x80 = ((((uint64_t)x5 * x69) + (((uint64_t)x7 * x67) + (((uint64_t)x9 * x65) + ((0x2 * ((uint64_t)x11 * x63)) + (((uint64_t)x13 * x61) + (((uint64_t)x15 * x59) + (((uint64_t)x17 * x57) + ((0x2 * ((uint64_t)x19 * x55)) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + (((uint64_t)x25 * x49) + ((0x2 * ((uint64_t)x27 * x47)) + (((uint64_t)x29 * x45) + (((uint64_t)x31 * x43) + ((uint64_t)x33 * x41))))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x35 * x74)) + (((uint64_t)x37 * x75) + (((uint64_t)x39 * x73) + (0x2 * ((uint64_t)x38 * x71)))))));
- uint64_t x81 = ((((uint64_t)x5 * x67) + (((uint64_t)x7 * x65) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + (((uint64_t)x13 * x59) + (((uint64_t)x15 * x57) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + (((uint64_t)x21 * x51) + (((uint64_t)x23 * x49) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + (((uint64_t)x29 * x43) + ((uint64_t)x31 * x41)))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x33 * x74)) + ((0x2 * ((uint64_t)x35 * x75)) + (((uint64_t)x37 * x73) + ((0x2 * ((uint64_t)x39 * x71)) + (0x2 * ((uint64_t)x38 * x69))))))));
- uint64_t x82 = ((((uint64_t)x5 * x65) + ((0x2 * ((uint64_t)x7 * x63)) + ((0x2 * ((uint64_t)x9 * x61)) + ((0x2 * ((uint64_t)x11 * x59)) + (((uint64_t)x13 * x57) + ((0x2 * ((uint64_t)x15 * x55)) + ((0x2 * ((uint64_t)x17 * x53)) + ((0x2 * ((uint64_t)x19 * x51)) + (((uint64_t)x21 * x49) + ((0x2 * ((uint64_t)x23 * x47)) + ((0x2 * ((uint64_t)x25 * x45)) + ((0x2 * ((uint64_t)x27 * x43)) + ((uint64_t)x29 * x41))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x31 * x74)) + ((0x2 * ((uint64_t)x33 * x75)) + ((0x2 * ((uint64_t)x35 * x73)) + ((0x2 * ((uint64_t)x37 * x71)) + ((0x2 * ((uint64_t)x39 * x69)) + (0x2 * ((uint64_t)x38 * x67)))))))));
- uint64_t x83 = ((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + (((uint64_t)x9 * x59) + (((uint64_t)x11 * x57) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + (((uint64_t)x25 * x43) + ((uint64_t)x27 * x41)))))))))))) + (0x15 * (((uint64_t)x29 * x74) + (((uint64_t)x31 * x75) + (((uint64_t)x33 * x73) + ((0x2 * ((uint64_t)x35 * x71)) + (((uint64_t)x37 * x69) + (((uint64_t)x39 * x67) + ((uint64_t)x38 * x65)))))))));
- uint64_t x84 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + ((0x2 * ((uint64_t)x11 * x55)) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + ((uint64_t)x25 * x41))))))))))) + (0x15 * ((0x2 * ((uint64_t)x27 * x74)) + (((uint64_t)x29 * x75) + (((uint64_t)x31 * x73) + ((0x2 * ((uint64_t)x33 * x71)) + ((0x2 * ((uint64_t)x35 * x69)) + (((uint64_t)x37 * x67) + (((uint64_t)x39 * x65) + (0x2 * ((uint64_t)x38 * x63)))))))))));
- uint64_t x85 = ((((uint64_t)x5 * x59) + (((uint64_t)x7 * x57) + ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + (((uint64_t)x13 * x51) + (((uint64_t)x15 * x49) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + (((uint64_t)x21 * x43) + ((uint64_t)x23 * x41)))))))))) + (0x15 * ((0x2 * ((uint64_t)x25 * x74)) + ((0x2 * ((uint64_t)x27 * x75)) + (((uint64_t)x29 * x73) + ((0x2 * ((uint64_t)x31 * x71)) + ((0x2 * ((uint64_t)x33 * x69)) + ((0x2 * ((uint64_t)x35 * x67)) + (((uint64_t)x37 * x65) + ((0x2 * ((uint64_t)x39 * x63)) + (0x2 * ((uint64_t)x38 * x61))))))))))));
- uint64_t x86 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + (((uint64_t)x13 * x49) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((0x2 * ((uint64_t)x19 * x43)) + ((uint64_t)x21 * x41))))))))) + (0x15 * ((0x2 * ((uint64_t)x23 * x74)) + ((0x2 * ((uint64_t)x25 * x75)) + ((0x2 * ((uint64_t)x27 * x73)) + ((0x2 * ((uint64_t)x29 * x71)) + ((0x2 * ((uint64_t)x31 * x69)) + ((0x2 * ((uint64_t)x33 * x67)) + ((0x2 * ((uint64_t)x35 * x65)) + ((0x2 * ((uint64_t)x37 * x63)) + ((0x2 * ((uint64_t)x39 * x61)) + (0x2 * ((uint64_t)x38 * x59)))))))))))));
- uint64_t x87 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + (((uint64_t)x11 * x49) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + (((uint64_t)x17 * x43) + ((uint64_t)x19 * x41)))))))) + (0x15 * (((uint64_t)x21 * x74) + (((uint64_t)x23 * x75) + (((uint64_t)x25 * x73) + ((0x2 * ((uint64_t)x27 * x71)) + (((uint64_t)x29 * x69) + (((uint64_t)x31 * x67) + (((uint64_t)x33 * x65) + ((0x2 * ((uint64_t)x35 * x63)) + (((uint64_t)x37 * x61) + (((uint64_t)x39 * x59) + ((uint64_t)x38 * x57)))))))))))));
- uint64_t x88 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + ((0x2 * ((uint64_t)x11 * x47)) + (((uint64_t)x13 * x45) + (((uint64_t)x15 * x43) + ((uint64_t)x17 * x41))))))) + (0x15 * ((0x2 * ((uint64_t)x19 * x74)) + (((uint64_t)x21 * x75) + (((uint64_t)x23 * x73) + ((0x2 * ((uint64_t)x25 * x71)) + ((0x2 * ((uint64_t)x27 * x69)) + (((uint64_t)x29 * x67) + (((uint64_t)x31 * x65) + ((0x2 * ((uint64_t)x33 * x63)) + ((0x2 * ((uint64_t)x35 * x61)) + (((uint64_t)x37 * x59) + (((uint64_t)x39 * x57) + (0x2 * ((uint64_t)x38 * x55)))))))))))))));
- uint64_t x89 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + (((uint64_t)x13 * x43) + ((uint64_t)x15 * x41)))))) + (0x15 * ((0x2 * ((uint64_t)x17 * x74)) + ((0x2 * ((uint64_t)x19 * x75)) + (((uint64_t)x21 * x73) + ((0x2 * ((uint64_t)x23 * x71)) + ((0x2 * ((uint64_t)x25 * x69)) + ((0x2 * ((uint64_t)x27 * x67)) + (((uint64_t)x29 * x65) + ((0x2 * ((uint64_t)x31 * x63)) + ((0x2 * ((uint64_t)x33 * x61)) + ((0x2 * ((uint64_t)x35 * x59)) + (((uint64_t)x37 * x57) + ((0x2 * ((uint64_t)x39 * x55)) + (0x2 * ((uint64_t)x38 * x53))))))))))))))));
- ℤ x90 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + ((0x2 * ((uint64_t)x11 * x43)) + ((uint64_t)x13 * x41))))) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x15 * x74)) + ((0x2 * ((uint64_t)x17 * x75)) + ((0x2 * ((uint64_t)x19 * x73)) + ((0x2 * ((uint64_t)x21 * x71)) + ((0x2 * ((uint64_t)x23 * x69)) + ((0x2 * ((uint64_t)x25 * x67)) + ((0x2 * ((uint64_t)x27 * x65)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + ((0x2 * ((uint64_t)x35 * x57)) + ((0x2 * ((uint64_t)x37 * x55)) + ((0x2 * ((uint64_t)x39 * x53)) + (0x2 * ((uint64_t)x38 * x51)))))))))))))))));
- uint64_t x91 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + ((uint64_t)x11 * x41)))) + (0x15 * (((uint64_t)x13 * x74) + (((uint64_t)x15 * x75) + (((uint64_t)x17 * x73) + ((0x2 * ((uint64_t)x19 * x71)) + (((uint64_t)x21 * x69) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + ((0x2 * ((uint64_t)x27 * x63)) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + ((0x2 * ((uint64_t)x35 * x55)) + (((uint64_t)x37 * x53) + (((uint64_t)x39 * x51) + ((uint64_t)x38 * x49)))))))))))))))));
- uint64_t x92 = ((((uint64_t)x5 * x45) + (((uint64_t)x7 * x43) + ((uint64_t)x9 * x41))) + (0x15 * ((0x2 * ((uint64_t)x11 * x74)) + (((uint64_t)x13 * x75) + (((uint64_t)x15 * x73) + ((0x2 * ((uint64_t)x17 * x71)) + ((0x2 * ((uint64_t)x19 * x69)) + (((uint64_t)x21 * x67) + (((uint64_t)x23 * x65) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + ((0x2 * ((uint64_t)x33 * x55)) + ((0x2 * ((uint64_t)x35 * x53)) + (((uint64_t)x37 * x51) + (((uint64_t)x39 * x49) + (0x2 * ((uint64_t)x38 * x47)))))))))))))))))));
- ℤ x93 = ((((uint64_t)x5 * x43) + ((uint64_t)x7 * x41)) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x9 * x74)) + ((0x2 * ((uint64_t)x11 * x75)) + (((uint64_t)x13 * x73) + ((0x2 * ((uint64_t)x15 * x71)) + ((0x2 * ((uint64_t)x17 * x69)) + ((0x2 * ((uint64_t)x19 * x67)) + (((uint64_t)x21 * x65) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + (((uint64_t)x29 * x57) + ((0x2 * ((uint64_t)x31 * x55)) + ((0x2 * ((uint64_t)x33 * x53)) + ((0x2 * ((uint64_t)x35 * x51)) + (((uint64_t)x37 * x49) + ((0x2 * ((uint64_t)x39 * x47)) + (0x2 * ((uint64_t)x38 * x45))))))))))))))))))));
- ℤ x94 = (((uint64_t)x5 * x41) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x7 * x74)) + ((0x2 * ((uint64_t)x9 * x75)) + ((0x2 * ((uint64_t)x11 * x73)) + ((0x2 * ((uint64_t)x13 * x71)) + ((0x2 * ((uint64_t)x15 * x69)) + ((0x2 * ((uint64_t)x17 * x67)) + ((0x2 * ((uint64_t)x19 * x65)) + ((0x2 * ((uint64_t)x21 * x63)) + ((0x2 * ((uint64_t)x23 * x61)) + ((0x2 * ((uint64_t)x25 * x59)) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + ((0x2 * ((uint64_t)x31 * x53)) + ((0x2 * ((uint64_t)x33 * x51)) + ((0x2 * ((uint64_t)x35 * x49)) + ((0x2 * ((uint64_t)x37 * x47)) + ((0x2 * ((uint64_t)x39 * x45)) + (0x2 * ((uint64_t)x38 * x43)))))))))))))))))))));
- uint64_t x95 = (x94 >> 0x1a);
- uint32_t x96 = (x94 & 0x3ffffff);
- ℤ x97 = (x95 +ℤ x93);
- uint64_t x98 = (x97 >> 0x1a);
- uint32_t x99 = (x97 & 0x3ffffff);
- uint64_t x100 = (x98 + x92);
- uint64_t x101 = (x100 >> 0x1a);
- uint32_t x102 = ((uint32_t)x100 & 0x3ffffff);
- uint64_t x103 = (x101 + x91);
- uint64_t x104 = (x103 >> 0x19);
- uint32_t x105 = ((uint32_t)x103 & 0x1ffffff);
- ℤ x106 = (x104 +ℤ x90);
- uint64_t x107 = (x106 >> 0x1a);
- uint32_t x108 = (x106 & 0x3ffffff);
- uint64_t x109 = (x107 + x89);
- uint64_t x110 = (x109 >> 0x1a);
- uint32_t x111 = ((uint32_t)x109 & 0x3ffffff);
- uint64_t x112 = (x110 + x88);
- uint64_t x113 = (x112 >> 0x1a);
- uint32_t x114 = ((uint32_t)x112 & 0x3ffffff);
- uint64_t x115 = (x113 + x87);
- uint64_t x116 = (x115 >> 0x19);
- uint32_t x117 = ((uint32_t)x115 & 0x1ffffff);
- uint64_t x118 = (x116 + x86);
- uint64_t x119 = (x118 >> 0x1a);
- uint32_t x120 = ((uint32_t)x118 & 0x3ffffff);
- uint64_t x121 = (x119 + x85);
- uint64_t x122 = (x121 >> 0x1a);
- uint32_t x123 = ((uint32_t)x121 & 0x3ffffff);
- uint64_t x124 = (x122 + x84);
- uint64_t x125 = (x124 >> 0x1a);
- uint32_t x126 = ((uint32_t)x124 & 0x3ffffff);
- uint64_t x127 = (x125 + x83);
- uint64_t x128 = (x127 >> 0x19);
- uint32_t x129 = ((uint32_t)x127 & 0x1ffffff);
- uint64_t x130 = (x128 + x82);
- uint64_t x131 = (x130 >> 0x1a);
- uint32_t x132 = ((uint32_t)x130 & 0x3ffffff);
- uint64_t x133 = (x131 + x81);
- uint64_t x134 = (x133 >> 0x1a);
- uint32_t x135 = ((uint32_t)x133 & 0x3ffffff);
- uint64_t x136 = (x134 + x80);
- uint64_t x137 = (x136 >> 0x1a);
- uint32_t x138 = ((uint32_t)x136 & 0x3ffffff);
- uint64_t x139 = (x137 + x79);
- uint64_t x140 = (x139 >> 0x19);
- uint32_t x141 = ((uint32_t)x139 & 0x1ffffff);
- uint64_t x142 = (x140 + x78);
- uint64_t x143 = (x142 >> 0x1a);
- uint32_t x144 = ((uint32_t)x142 & 0x3ffffff);
- uint64_t x145 = (x143 + x77);
- uint64_t x146 = (x145 >> 0x1a);
- uint32_t x147 = ((uint32_t)x145 & 0x3ffffff);
- uint64_t x148 = (x146 + x76);
- uint64_t x149 = (x148 >> 0x19);
- uint32_t x150 = ((uint32_t)x148 & 0x1ffffff);
- uint64_t x151 = (x96 + (0x15 * x149));
- uint32_t x152 = (uint32_t) (x151 >> 0x1a);
- uint32_t x153 = ((uint32_t)x151 & 0x3ffffff);
- uint32_t x154 = (x152 + x99);
- uint32_t x155 = (x154 >> 0x1a);
- uint32_t x156 = (x154 & 0x3ffffff);
- return (Return x150, Return x147, Return x144, Return x141, Return x138, Return x135, Return x132, Return x129, Return x126, Return x123, Return x120, Return x117, Return x114, Return x111, Return x108, Return x105, (x155 + x102), Return x156, Return x153))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e489m21_19limbs/femulDisplay.v b/src/Specific/solinas32_2e489m21_19limbs/femulDisplay.v
deleted file mode 100644
index 0195adea7..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e489m21_19limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e489m21_19limbs/fesquare.c b/src/Specific/solinas32_2e489m21_19limbs/fesquare.c
deleted file mode 100644
index ac43e2200..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/fesquare.c
+++ /dev/null
@@ -1,122 +0,0 @@
-static void fesquare(uint32_t out[19], const uint32_t in1[19]) {
- { const uint32_t x35 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x37 = (((uint64_t)x2 * x35) + (((uint64_t)x4 * x36) + (((uint64_t)x6 * x34) + ((0x2 * ((uint64_t)x8 * x32)) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + (((uint64_t)x14 * x26) + ((0x2 * ((uint64_t)x16 * x24)) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + ((0x2 * ((uint64_t)x24 * x16)) + (((uint64_t)x26 * x14) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + ((0x2 * ((uint64_t)x32 * x8)) + (((uint64_t)x34 * x6) + (((uint64_t)x36 * x4) + ((uint64_t)x35 * x2)))))))))))))))))));
- { uint64_t x38 = ((((uint64_t)x2 * x36) + (((uint64_t)x4 * x34) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + (((uint64_t)x10 * x28) + (((uint64_t)x12 * x26) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + (((uint64_t)x26 * x12) + (((uint64_t)x28 * x10) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + (((uint64_t)x34 * x4) + ((uint64_t)x36 * x2)))))))))))))))))) + (0x15 * (0x2 * ((uint64_t)x35 * x35))));
- { uint64_t x39 = ((((uint64_t)x2 * x34) + ((0x2 * ((uint64_t)x4 * x32)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + (((uint64_t)x10 * x26) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + (((uint64_t)x26 * x10) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x34 * x2))))))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x36 * x35)) + (0x2 * ((uint64_t)x35 * x36)))));
- { uint64_t x40 = ((((uint64_t)x2 * x32) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x32 * x2)))))))))))))))) + (0x15 * (((uint64_t)x34 * x35) + (((uint64_t)x36 * x36) + ((uint64_t)x35 * x34)))));
- { uint64_t x41 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + ((0x2 * ((uint64_t)x8 * x24)) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + ((0x2 * ((uint64_t)x24 * x8)) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x32 * x35)) + (((uint64_t)x34 * x36) + (((uint64_t)x36 * x34) + (0x2 * ((uint64_t)x35 * x32)))))));
- { uint64_t x42 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x30 * x35)) + ((0x2 * ((uint64_t)x32 * x36)) + (((uint64_t)x34 * x34) + ((0x2 * ((uint64_t)x36 * x32)) + (0x2 * ((uint64_t)x35 * x30))))))));
- { uint64_t x43 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x28 * x35)) + ((0x2 * ((uint64_t)x30 * x36)) + ((0x2 * ((uint64_t)x32 * x34)) + ((0x2 * ((uint64_t)x34 * x32)) + ((0x2 * ((uint64_t)x36 * x30)) + (0x2 * ((uint64_t)x35 * x28)))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x15 * (((uint64_t)x26 * x35) + (((uint64_t)x28 * x36) + (((uint64_t)x30 * x34) + ((0x2 * ((uint64_t)x32 * x32)) + (((uint64_t)x34 * x30) + (((uint64_t)x36 * x28) + ((uint64_t)x35 * x26)))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x15 * ((0x2 * ((uint64_t)x24 * x35)) + (((uint64_t)x26 * x36) + (((uint64_t)x28 * x34) + ((0x2 * ((uint64_t)x30 * x32)) + ((0x2 * ((uint64_t)x32 * x30)) + (((uint64_t)x34 * x28) + (((uint64_t)x36 * x26) + (0x2 * ((uint64_t)x35 * x24)))))))))));
- { uint64_t x46 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x15 * ((0x2 * ((uint64_t)x22 * x35)) + ((0x2 * ((uint64_t)x24 * x36)) + (((uint64_t)x26 * x34) + ((0x2 * ((uint64_t)x28 * x32)) + ((0x2 * ((uint64_t)x30 * x30)) + ((0x2 * ((uint64_t)x32 * x28)) + (((uint64_t)x34 * x26) + ((0x2 * ((uint64_t)x36 * x24)) + (0x2 * ((uint64_t)x35 * x22))))))))))));
- { uint64_t x47 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x15 * ((0x2 * ((uint64_t)x20 * x35)) + ((0x2 * ((uint64_t)x22 * x36)) + ((0x2 * ((uint64_t)x24 * x34)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + ((0x2 * ((uint64_t)x34 * x24)) + ((0x2 * ((uint64_t)x36 * x22)) + (0x2 * ((uint64_t)x35 * x20)))))))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x15 * (((uint64_t)x18 * x35) + (((uint64_t)x20 * x36) + (((uint64_t)x22 * x34) + ((0x2 * ((uint64_t)x24 * x32)) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + ((0x2 * ((uint64_t)x32 * x24)) + (((uint64_t)x34 * x22) + (((uint64_t)x36 * x20) + ((uint64_t)x35 * x18)))))))))))));
- { uint64_t x49 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x15 * ((0x2 * ((uint64_t)x16 * x35)) + (((uint64_t)x18 * x36) + (((uint64_t)x20 * x34) + ((0x2 * ((uint64_t)x22 * x32)) + ((0x2 * ((uint64_t)x24 * x30)) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + ((0x2 * ((uint64_t)x30 * x24)) + ((0x2 * ((uint64_t)x32 * x22)) + (((uint64_t)x34 * x20) + (((uint64_t)x36 * x18) + (0x2 * ((uint64_t)x35 * x16)))))))))))))));
- { uint64_t x50 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x15 * ((0x2 * ((uint64_t)x14 * x35)) + ((0x2 * ((uint64_t)x16 * x36)) + (((uint64_t)x18 * x34) + ((0x2 * ((uint64_t)x20 * x32)) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + (((uint64_t)x26 * x26) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + ((0x2 * ((uint64_t)x32 * x20)) + (((uint64_t)x34 * x18) + ((0x2 * ((uint64_t)x36 * x16)) + (0x2 * ((uint64_t)x35 * x14))))))))))))))));
- { ℤ x51 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x12 * x35)) + ((0x2 * ((uint64_t)x14 * x36)) + ((0x2 * ((uint64_t)x16 * x34)) + ((0x2 * ((uint64_t)x18 * x32)) + ((0x2 * ((uint64_t)x20 * x30)) + ((0x2 * ((uint64_t)x22 * x28)) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + ((0x2 * ((uint64_t)x28 * x22)) + ((0x2 * ((uint64_t)x30 * x20)) + ((0x2 * ((uint64_t)x32 * x18)) + ((0x2 * ((uint64_t)x34 * x16)) + ((0x2 * ((uint64_t)x36 * x14)) + (0x2 * ((uint64_t)x35 * x12)))))))))))))))));
- { uint64_t x52 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x15 * (((uint64_t)x10 * x35) + (((uint64_t)x12 * x36) + (((uint64_t)x14 * x34) + ((0x2 * ((uint64_t)x16 * x32)) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + ((0x2 * ((uint64_t)x24 * x24)) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + ((0x2 * ((uint64_t)x32 * x16)) + (((uint64_t)x34 * x14) + (((uint64_t)x36 * x12) + ((uint64_t)x35 * x10)))))))))))))))));
- { uint64_t x53 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x15 * ((0x2 * ((uint64_t)x8 * x35)) + (((uint64_t)x10 * x36) + (((uint64_t)x12 * x34) + ((0x2 * ((uint64_t)x14 * x32)) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + ((0x2 * ((uint64_t)x32 * x14)) + (((uint64_t)x34 * x12) + (((uint64_t)x36 * x10) + (0x2 * ((uint64_t)x35 * x8)))))))))))))))))));
- { ℤ x54 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x6 * x35)) + ((0x2 * ((uint64_t)x8 * x36)) + (((uint64_t)x10 * x34) + ((0x2 * ((uint64_t)x12 * x32)) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + (((uint64_t)x18 * x26) + ((0x2 * ((uint64_t)x20 * x24)) + ((0x2 * ((uint64_t)x22 * x22)) + ((0x2 * ((uint64_t)x24 * x20)) + (((uint64_t)x26 * x18) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + ((0x2 * ((uint64_t)x32 * x12)) + (((uint64_t)x34 * x10) + ((0x2 * ((uint64_t)x36 * x8)) + (0x2 * ((uint64_t)x35 * x6))))))))))))))))))));
- { ℤ x55 = (((uint64_t)x2 * x2) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x4 * x35)) + ((0x2 * ((uint64_t)x6 * x36)) + ((0x2 * ((uint64_t)x8 * x34)) + ((0x2 * ((uint64_t)x10 * x32)) + ((0x2 * ((uint64_t)x12 * x30)) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + ((0x2 * ((uint64_t)x18 * x24)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((0x2 * ((uint64_t)x24 * x18)) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + ((0x2 * ((uint64_t)x30 * x12)) + ((0x2 * ((uint64_t)x32 * x10)) + ((0x2 * ((uint64_t)x34 * x8)) + ((0x2 * ((uint64_t)x36 * x6)) + (0x2 * ((uint64_t)x35 * x4)))))))))))))))))))));
- { uint64_t x56 = (x55 >> 0x1a);
- { uint32_t x57 = (x55 & 0x3ffffff);
- { ℤ x58 = (x56 +ℤ x54);
- { uint64_t x59 = (x58 >> 0x1a);
- { uint32_t x60 = (x58 & 0x3ffffff);
- { uint64_t x61 = (x59 + x53);
- { uint64_t x62 = (x61 >> 0x1a);
- { uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- { uint64_t x64 = (x62 + x52);
- { uint64_t x65 = (x64 >> 0x19);
- { uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- { ℤ x67 = (x65 +ℤ x51);
- { uint64_t x68 = (x67 >> 0x1a);
- { uint32_t x69 = (x67 & 0x3ffffff);
- { uint64_t x70 = (x68 + x50);
- { uint64_t x71 = (x70 >> 0x1a);
- { uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- { uint64_t x73 = (x71 + x49);
- { uint64_t x74 = (x73 >> 0x1a);
- { uint32_t x75 = ((uint32_t)x73 & 0x3ffffff);
- { uint64_t x76 = (x74 + x48);
- { uint64_t x77 = (x76 >> 0x19);
- { uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- { uint64_t x79 = (x77 + x47);
- { uint64_t x80 = (x79 >> 0x1a);
- { uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- { uint64_t x82 = (x80 + x46);
- { uint64_t x83 = (x82 >> 0x1a);
- { uint32_t x84 = ((uint32_t)x82 & 0x3ffffff);
- { uint64_t x85 = (x83 + x45);
- { uint64_t x86 = (x85 >> 0x1a);
- { uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- { uint64_t x88 = (x86 + x44);
- { uint64_t x89 = (x88 >> 0x19);
- { uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- { uint64_t x91 = (x89 + x43);
- { uint64_t x92 = (x91 >> 0x1a);
- { uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- { uint64_t x94 = (x92 + x42);
- { uint64_t x95 = (x94 >> 0x1a);
- { uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- { uint64_t x97 = (x95 + x41);
- { uint64_t x98 = (x97 >> 0x1a);
- { uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- { uint64_t x100 = (x98 + x40);
- { uint64_t x101 = (x100 >> 0x19);
- { uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- { uint64_t x103 = (x101 + x39);
- { uint64_t x104 = (x103 >> 0x1a);
- { uint32_t x105 = ((uint32_t)x103 & 0x3ffffff);
- { uint64_t x106 = (x104 + x38);
- { uint64_t x107 = (x106 >> 0x1a);
- { uint32_t x108 = ((uint32_t)x106 & 0x3ffffff);
- { uint64_t x109 = (x107 + x37);
- { uint64_t x110 = (x109 >> 0x19);
- { uint32_t x111 = ((uint32_t)x109 & 0x1ffffff);
- { uint64_t x112 = (x57 + (0x15 * x110));
- { uint32_t x113 = (uint32_t) (x112 >> 0x1a);
- { uint32_t x114 = ((uint32_t)x112 & 0x3ffffff);
- { uint32_t x115 = (x113 + x60);
- { uint32_t x116 = (x115 >> 0x1a);
- { uint32_t x117 = (x115 & 0x3ffffff);
- out[0] = x114;
- out[1] = x117;
- out[2] = (x116 + x63);
- out[3] = x66;
- out[4] = x69;
- out[5] = x72;
- out[6] = x75;
- out[7] = x78;
- out[8] = x81;
- out[9] = x84;
- out[10] = x87;
- out[11] = x90;
- out[12] = x93;
- out[13] = x96;
- out[14] = x99;
- out[15] = x102;
- out[16] = x105;
- out[17] = x108;
- out[18] = x111;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e489m21_19limbs/fesquare.v b/src/Specific/solinas32_2e489m21_19limbs/fesquare.v
deleted file mode 100644
index 0ae018993..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e489m21_19limbs.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_2e489m21_19limbs/fesquareDisplay.log b/src/Specific/solinas32_2e489m21_19limbs/fesquareDisplay.log
deleted file mode 100644
index d04850be0..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,88 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x35, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x37 = (((uint64_t)x2 * x35) + (((uint64_t)x4 * x36) + (((uint64_t)x6 * x34) + ((0x2 * ((uint64_t)x8 * x32)) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + (((uint64_t)x14 * x26) + ((0x2 * ((uint64_t)x16 * x24)) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + ((0x2 * ((uint64_t)x24 * x16)) + (((uint64_t)x26 * x14) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + ((0x2 * ((uint64_t)x32 * x8)) + (((uint64_t)x34 * x6) + (((uint64_t)x36 * x4) + ((uint64_t)x35 * x2)))))))))))))))))));
- uint64_t x38 = ((((uint64_t)x2 * x36) + (((uint64_t)x4 * x34) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + (((uint64_t)x10 * x28) + (((uint64_t)x12 * x26) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + (((uint64_t)x26 * x12) + (((uint64_t)x28 * x10) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + (((uint64_t)x34 * x4) + ((uint64_t)x36 * x2)))))))))))))))))) + (0x15 * (0x2 * ((uint64_t)x35 * x35))));
- uint64_t x39 = ((((uint64_t)x2 * x34) + ((0x2 * ((uint64_t)x4 * x32)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + (((uint64_t)x10 * x26) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + (((uint64_t)x26 * x10) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x34 * x2))))))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x36 * x35)) + (0x2 * ((uint64_t)x35 * x36)))));
- uint64_t x40 = ((((uint64_t)x2 * x32) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x32 * x2)))))))))))))))) + (0x15 * (((uint64_t)x34 * x35) + (((uint64_t)x36 * x36) + ((uint64_t)x35 * x34)))));
- uint64_t x41 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + ((0x2 * ((uint64_t)x8 * x24)) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + ((0x2 * ((uint64_t)x24 * x8)) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x32 * x35)) + (((uint64_t)x34 * x36) + (((uint64_t)x36 * x34) + (0x2 * ((uint64_t)x35 * x32)))))));
- uint64_t x42 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x30 * x35)) + ((0x2 * ((uint64_t)x32 * x36)) + (((uint64_t)x34 * x34) + ((0x2 * ((uint64_t)x36 * x32)) + (0x2 * ((uint64_t)x35 * x30))))))));
- uint64_t x43 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x28 * x35)) + ((0x2 * ((uint64_t)x30 * x36)) + ((0x2 * ((uint64_t)x32 * x34)) + ((0x2 * ((uint64_t)x34 * x32)) + ((0x2 * ((uint64_t)x36 * x30)) + (0x2 * ((uint64_t)x35 * x28)))))))));
- uint64_t x44 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x15 * (((uint64_t)x26 * x35) + (((uint64_t)x28 * x36) + (((uint64_t)x30 * x34) + ((0x2 * ((uint64_t)x32 * x32)) + (((uint64_t)x34 * x30) + (((uint64_t)x36 * x28) + ((uint64_t)x35 * x26)))))))));
- uint64_t x45 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x15 * ((0x2 * ((uint64_t)x24 * x35)) + (((uint64_t)x26 * x36) + (((uint64_t)x28 * x34) + ((0x2 * ((uint64_t)x30 * x32)) + ((0x2 * ((uint64_t)x32 * x30)) + (((uint64_t)x34 * x28) + (((uint64_t)x36 * x26) + (0x2 * ((uint64_t)x35 * x24)))))))))));
- uint64_t x46 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x15 * ((0x2 * ((uint64_t)x22 * x35)) + ((0x2 * ((uint64_t)x24 * x36)) + (((uint64_t)x26 * x34) + ((0x2 * ((uint64_t)x28 * x32)) + ((0x2 * ((uint64_t)x30 * x30)) + ((0x2 * ((uint64_t)x32 * x28)) + (((uint64_t)x34 * x26) + ((0x2 * ((uint64_t)x36 * x24)) + (0x2 * ((uint64_t)x35 * x22))))))))))));
- uint64_t x47 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x15 * ((0x2 * ((uint64_t)x20 * x35)) + ((0x2 * ((uint64_t)x22 * x36)) + ((0x2 * ((uint64_t)x24 * x34)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + ((0x2 * ((uint64_t)x34 * x24)) + ((0x2 * ((uint64_t)x36 * x22)) + (0x2 * ((uint64_t)x35 * x20)))))))))))));
- uint64_t x48 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x15 * (((uint64_t)x18 * x35) + (((uint64_t)x20 * x36) + (((uint64_t)x22 * x34) + ((0x2 * ((uint64_t)x24 * x32)) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + ((0x2 * ((uint64_t)x32 * x24)) + (((uint64_t)x34 * x22) + (((uint64_t)x36 * x20) + ((uint64_t)x35 * x18)))))))))))));
- uint64_t x49 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x15 * ((0x2 * ((uint64_t)x16 * x35)) + (((uint64_t)x18 * x36) + (((uint64_t)x20 * x34) + ((0x2 * ((uint64_t)x22 * x32)) + ((0x2 * ((uint64_t)x24 * x30)) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + ((0x2 * ((uint64_t)x30 * x24)) + ((0x2 * ((uint64_t)x32 * x22)) + (((uint64_t)x34 * x20) + (((uint64_t)x36 * x18) + (0x2 * ((uint64_t)x35 * x16)))))))))))))));
- uint64_t x50 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x15 * ((0x2 * ((uint64_t)x14 * x35)) + ((0x2 * ((uint64_t)x16 * x36)) + (((uint64_t)x18 * x34) + ((0x2 * ((uint64_t)x20 * x32)) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + (((uint64_t)x26 * x26) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + ((0x2 * ((uint64_t)x32 * x20)) + (((uint64_t)x34 * x18) + ((0x2 * ((uint64_t)x36 * x16)) + (0x2 * ((uint64_t)x35 * x14))))))))))))))));
- ℤ x51 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x12 * x35)) + ((0x2 * ((uint64_t)x14 * x36)) + ((0x2 * ((uint64_t)x16 * x34)) + ((0x2 * ((uint64_t)x18 * x32)) + ((0x2 * ((uint64_t)x20 * x30)) + ((0x2 * ((uint64_t)x22 * x28)) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + ((0x2 * ((uint64_t)x28 * x22)) + ((0x2 * ((uint64_t)x30 * x20)) + ((0x2 * ((uint64_t)x32 * x18)) + ((0x2 * ((uint64_t)x34 * x16)) + ((0x2 * ((uint64_t)x36 * x14)) + (0x2 * ((uint64_t)x35 * x12)))))))))))))))));
- uint64_t x52 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x15 * (((uint64_t)x10 * x35) + (((uint64_t)x12 * x36) + (((uint64_t)x14 * x34) + ((0x2 * ((uint64_t)x16 * x32)) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + ((0x2 * ((uint64_t)x24 * x24)) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + ((0x2 * ((uint64_t)x32 * x16)) + (((uint64_t)x34 * x14) + (((uint64_t)x36 * x12) + ((uint64_t)x35 * x10)))))))))))))))));
- uint64_t x53 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x15 * ((0x2 * ((uint64_t)x8 * x35)) + (((uint64_t)x10 * x36) + (((uint64_t)x12 * x34) + ((0x2 * ((uint64_t)x14 * x32)) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + ((0x2 * ((uint64_t)x32 * x14)) + (((uint64_t)x34 * x12) + (((uint64_t)x36 * x10) + (0x2 * ((uint64_t)x35 * x8)))))))))))))))))));
- ℤ x54 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x6 * x35)) + ((0x2 * ((uint64_t)x8 * x36)) + (((uint64_t)x10 * x34) + ((0x2 * ((uint64_t)x12 * x32)) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + (((uint64_t)x18 * x26) + ((0x2 * ((uint64_t)x20 * x24)) + ((0x2 * ((uint64_t)x22 * x22)) + ((0x2 * ((uint64_t)x24 * x20)) + (((uint64_t)x26 * x18) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + ((0x2 * ((uint64_t)x32 * x12)) + (((uint64_t)x34 * x10) + ((0x2 * ((uint64_t)x36 * x8)) + (0x2 * ((uint64_t)x35 * x6))))))))))))))))))));
- ℤ x55 = (((uint64_t)x2 * x2) +ℤ (0x15 *ℤ ((0x2 * ((uint64_t)x4 * x35)) + ((0x2 * ((uint64_t)x6 * x36)) + ((0x2 * ((uint64_t)x8 * x34)) + ((0x2 * ((uint64_t)x10 * x32)) + ((0x2 * ((uint64_t)x12 * x30)) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + ((0x2 * ((uint64_t)x18 * x24)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((0x2 * ((uint64_t)x24 * x18)) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + ((0x2 * ((uint64_t)x30 * x12)) + ((0x2 * ((uint64_t)x32 * x10)) + ((0x2 * ((uint64_t)x34 * x8)) + ((0x2 * ((uint64_t)x36 * x6)) + (0x2 * ((uint64_t)x35 * x4)))))))))))))))))))));
- uint64_t x56 = (x55 >> 0x1a);
- uint32_t x57 = (x55 & 0x3ffffff);
- ℤ x58 = (x56 +ℤ x54);
- uint64_t x59 = (x58 >> 0x1a);
- uint32_t x60 = (x58 & 0x3ffffff);
- uint64_t x61 = (x59 + x53);
- uint64_t x62 = (x61 >> 0x1a);
- uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- uint64_t x64 = (x62 + x52);
- uint64_t x65 = (x64 >> 0x19);
- uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- ℤ x67 = (x65 +ℤ x51);
- uint64_t x68 = (x67 >> 0x1a);
- uint32_t x69 = (x67 & 0x3ffffff);
- uint64_t x70 = (x68 + x50);
- uint64_t x71 = (x70 >> 0x1a);
- uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- uint64_t x73 = (x71 + x49);
- uint64_t x74 = (x73 >> 0x1a);
- uint32_t x75 = ((uint32_t)x73 & 0x3ffffff);
- uint64_t x76 = (x74 + x48);
- uint64_t x77 = (x76 >> 0x19);
- uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- uint64_t x79 = (x77 + x47);
- uint64_t x80 = (x79 >> 0x1a);
- uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- uint64_t x82 = (x80 + x46);
- uint64_t x83 = (x82 >> 0x1a);
- uint32_t x84 = ((uint32_t)x82 & 0x3ffffff);
- uint64_t x85 = (x83 + x45);
- uint64_t x86 = (x85 >> 0x1a);
- uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- uint64_t x88 = (x86 + x44);
- uint64_t x89 = (x88 >> 0x19);
- uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- uint64_t x91 = (x89 + x43);
- uint64_t x92 = (x91 >> 0x1a);
- uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- uint64_t x94 = (x92 + x42);
- uint64_t x95 = (x94 >> 0x1a);
- uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- uint64_t x97 = (x95 + x41);
- uint64_t x98 = (x97 >> 0x1a);
- uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- uint64_t x100 = (x98 + x40);
- uint64_t x101 = (x100 >> 0x19);
- uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- uint64_t x103 = (x101 + x39);
- uint64_t x104 = (x103 >> 0x1a);
- uint32_t x105 = ((uint32_t)x103 & 0x3ffffff);
- uint64_t x106 = (x104 + x38);
- uint64_t x107 = (x106 >> 0x1a);
- uint32_t x108 = ((uint32_t)x106 & 0x3ffffff);
- uint64_t x109 = (x107 + x37);
- uint64_t x110 = (x109 >> 0x19);
- uint32_t x111 = ((uint32_t)x109 & 0x1ffffff);
- uint64_t x112 = (x57 + (0x15 * x110));
- uint32_t x113 = (uint32_t) (x112 >> 0x1a);
- uint32_t x114 = ((uint32_t)x112 & 0x3ffffff);
- uint32_t x115 = (x113 + x60);
- uint32_t x116 = (x115 >> 0x1a);
- uint32_t x117 = (x115 & 0x3ffffff);
- return (Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, (x116 + x63), Return x117, Return x114))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e489m21_19limbs/fesquareDisplay.v b/src/Specific/solinas32_2e489m21_19limbs/fesquareDisplay.v
deleted file mode 100644
index 469ff012f..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e489m21_19limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e489m21_19limbs/fesub.c b/src/Specific/solinas32_2e489m21_19limbs/fesub.c
deleted file mode 100644
index c03afdc41..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/fesub.c
+++ /dev/null
@@ -1,60 +0,0 @@
-static void fesub(uint32_t out[19], const uint32_t in1[19], const uint32_t in2[19]) {
- { const uint32_t x38 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x74 = in2[18];
- { const uint32_t x75 = in2[17];
- { const uint32_t x73 = in2[16];
- { const uint32_t x71 = in2[15];
- { const uint32_t x69 = in2[14];
- { const uint32_t x67 = in2[13];
- { const uint32_t x65 = in2[12];
- { const uint32_t x63 = in2[11];
- { const uint32_t x61 = in2[10];
- { const uint32_t x59 = in2[9];
- { const uint32_t x57 = in2[8];
- { const uint32_t x55 = in2[7];
- { const uint32_t x53 = in2[6];
- { const uint32_t x51 = in2[5];
- { const uint32_t x49 = in2[4];
- { const uint32_t x47 = in2[3];
- { const uint32_t x45 = in2[2];
- { const uint32_t x43 = in2[1];
- { const uint32_t x41 = in2[0];
- out[0] = ((0x7ffffd6 + x5) - x41);
- out[1] = ((0x7fffffe + x7) - x43);
- out[2] = ((0x7fffffe + x9) - x45);
- out[3] = ((0x3fffffe + x11) - x47);
- out[4] = ((0x7fffffe + x13) - x49);
- out[5] = ((0x7fffffe + x15) - x51);
- out[6] = ((0x7fffffe + x17) - x53);
- out[7] = ((0x3fffffe + x19) - x55);
- out[8] = ((0x7fffffe + x21) - x57);
- out[9] = ((0x7fffffe + x23) - x59);
- out[10] = ((0x7fffffe + x25) - x61);
- out[11] = ((0x3fffffe + x27) - x63);
- out[12] = ((0x7fffffe + x29) - x65);
- out[13] = ((0x7fffffe + x31) - x67);
- out[14] = ((0x7fffffe + x33) - x69);
- out[15] = ((0x3fffffe + x35) - x71);
- out[16] = ((0x7fffffe + x37) - x73);
- out[17] = ((0x7fffffe + x39) - x75);
- out[18] = ((0x3fffffe + x38) - x74);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e489m21_19limbs/fesub.v b/src/Specific/solinas32_2e489m21_19limbs/fesub.v
deleted file mode 100644
index e2bbea9b0..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e489m21_19limbs.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_2e489m21_19limbs/fesubDisplay.log b/src/Specific/solinas32_2e489m21_19limbs/fesubDisplay.log
deleted file mode 100644
index a75514f62..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x38, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x74, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41))%core,
- (((0x3fffffe + x38) - x74), ((0x7fffffe + x39) - x75), ((0x7fffffe + x37) - x73), ((0x3fffffe + x35) - x71), ((0x7fffffe + x33) - x69), ((0x7fffffe + x31) - x67), ((0x7fffffe + x29) - x65), ((0x3fffffe + x27) - x63), ((0x7fffffe + x25) - x61), ((0x7fffffe + x23) - x59), ((0x7fffffe + x21) - x57), ((0x3fffffe + x19) - x55), ((0x7fffffe + x17) - x53), ((0x7fffffe + x15) - x51), ((0x7fffffe + x13) - x49), ((0x3fffffe + x11) - x47), ((0x7fffffe + x9) - x45), ((0x7fffffe + x7) - x43), ((0x7ffffd6 + x5) - x41)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e489m21_19limbs/fesubDisplay.v b/src/Specific/solinas32_2e489m21_19limbs/fesubDisplay.v
deleted file mode 100644
index dd3bd6b9a..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e489m21_19limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e489m21_19limbs/freeze.c b/src/Specific/solinas32_2e489m21_19limbs/freeze.c
deleted file mode 100644
index ef122f7d9..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/freeze.c
+++ /dev/null
@@ -1,99 +0,0 @@
-static void freeze(uint32_t out[19], const uint32_t in1[19]) {
- { const uint32_t x35 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffeb);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x4, 0x3ffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x6, 0x3ffffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x8, 0x1ffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x10, 0x3ffffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x12, 0x3ffffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x14, 0x3ffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x16, 0x1ffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x18, 0x3ffffff);
- { uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x20, 0x3ffffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x22, 0x3ffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x24, 0x1ffffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x26, 0x3ffffff);
- { uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x28, 0x3ffffff);
- { uint32_t x80, uint8_t x81 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x30, 0x3ffffff);
- { uint32_t x83, uint8_t x84 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x32, 0x1ffffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x34, 0x3ffffff);
- { uint32_t x89, uint8_t x90 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x36, 0x3ffffff);
- { uint32_t x92, uint8_t x93 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x35, 0x1ffffff);
- { uint32_t x94 = cmovznz32(x93, 0x0, 0xffffffff);
- { uint32_t x95 = (x94 & 0x3ffffeb);
- { uint32_t x97, uint8_t x98 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x38, Return x95);
- { uint32_t x99 = (x94 & 0x3ffffff);
- { uint32_t x101, uint8_t x102 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x98, Return x41, Return x99);
- { uint32_t x103 = (x94 & 0x3ffffff);
- { uint32_t x105, uint8_t x106 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x102, Return x44, Return x103);
- { uint32_t x107 = (x94 & 0x1ffffff);
- { uint32_t x109, uint8_t x110 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x106, Return x47, Return x107);
- { uint32_t x111 = (x94 & 0x3ffffff);
- { uint32_t x113, uint8_t x114 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x110, Return x50, Return x111);
- { uint32_t x115 = (x94 & 0x3ffffff);
- { uint32_t x117, uint8_t x118 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x114, Return x53, Return x115);
- { uint32_t x119 = (x94 & 0x3ffffff);
- { uint32_t x121, uint8_t x122 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x118, Return x56, Return x119);
- { uint32_t x123 = (x94 & 0x1ffffff);
- { uint32_t x125, uint8_t x126 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x122, Return x59, Return x123);
- { uint32_t x127 = (x94 & 0x3ffffff);
- { uint32_t x129, uint8_t x130 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x126, Return x62, Return x127);
- { uint32_t x131 = (x94 & 0x3ffffff);
- { uint32_t x133, uint8_t x134 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x130, Return x65, Return x131);
- { uint32_t x135 = (x94 & 0x3ffffff);
- { uint32_t x137, uint8_t x138 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x134, Return x68, Return x135);
- { uint32_t x139 = (x94 & 0x1ffffff);
- { uint32_t x141, uint8_t x142 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x138, Return x71, Return x139);
- { uint32_t x143 = (x94 & 0x3ffffff);
- { uint32_t x145, uint8_t x146 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x142, Return x74, Return x143);
- { uint32_t x147 = (x94 & 0x3ffffff);
- { uint32_t x149, uint8_t x150 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x146, Return x77, Return x147);
- { uint32_t x151 = (x94 & 0x3ffffff);
- { uint32_t x153, uint8_t x154 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x150, Return x80, Return x151);
- { uint32_t x155 = (x94 & 0x1ffffff);
- { uint32_t x157, uint8_t x158 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x154, Return x83, Return x155);
- { uint32_t x159 = (x94 & 0x3ffffff);
- { uint32_t x161, uint8_t x162 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x158, Return x86, Return x159);
- { uint32_t x163 = (x94 & 0x3ffffff);
- { uint32_t x165, uint8_t x166 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x162, Return x89, Return x163);
- { uint32_t x167 = (x94 & 0x1ffffff);
- { uint32_t x169, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x166, Return x92, Return x167);
- out[0] = x97;
- out[1] = x101;
- out[2] = x105;
- out[3] = x109;
- out[4] = x113;
- out[5] = x117;
- out[6] = x121;
- out[7] = x125;
- out[8] = x129;
- out[9] = x133;
- out[10] = x137;
- out[11] = x141;
- out[12] = x145;
- out[13] = x149;
- out[14] = x153;
- out[15] = x157;
- out[16] = x161;
- out[17] = x165;
- out[18] = x169;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e489m21_19limbs/freeze.v b/src/Specific/solinas32_2e489m21_19limbs/freeze.v
deleted file mode 100644
index a875989ac..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e489m21_19limbs.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_2e489m21_19limbs/freezeDisplay.log b/src/Specific/solinas32_2e489m21_19limbs/freezeDisplay.log
deleted file mode 100644
index d2a4e4ae9..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/freezeDisplay.log
+++ /dev/null
@@ -1,65 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x35, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffeb);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x4, 0x3ffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x6, 0x3ffffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x8, 0x1ffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x10, 0x3ffffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x12, 0x3ffffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x14, 0x3ffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x16, 0x1ffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x18, 0x3ffffff);
- uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x20, 0x3ffffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x22, 0x3ffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x24, 0x1ffffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x26, 0x3ffffff);
- uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x28, 0x3ffffff);
- uint32_t x80, uint8_t x81 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x30, 0x3ffffff);
- uint32_t x83, uint8_t x84 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x32, 0x1ffffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x34, 0x3ffffff);
- uint32_t x89, uint8_t x90 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x36, 0x3ffffff);
- uint32_t x92, uint8_t x93 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x35, 0x1ffffff);
- uint32_t x94 = cmovznz32(x93, 0x0, 0xffffffff);
- uint32_t x95 = (x94 & 0x3ffffeb);
- uint32_t x97, uint8_t x98 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x38, Return x95);
- uint32_t x99 = (x94 & 0x3ffffff);
- uint32_t x101, uint8_t x102 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x98, Return x41, Return x99);
- uint32_t x103 = (x94 & 0x3ffffff);
- uint32_t x105, uint8_t x106 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x102, Return x44, Return x103);
- uint32_t x107 = (x94 & 0x1ffffff);
- uint32_t x109, uint8_t x110 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x106, Return x47, Return x107);
- uint32_t x111 = (x94 & 0x3ffffff);
- uint32_t x113, uint8_t x114 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x110, Return x50, Return x111);
- uint32_t x115 = (x94 & 0x3ffffff);
- uint32_t x117, uint8_t x118 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x114, Return x53, Return x115);
- uint32_t x119 = (x94 & 0x3ffffff);
- uint32_t x121, uint8_t x122 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x118, Return x56, Return x119);
- uint32_t x123 = (x94 & 0x1ffffff);
- uint32_t x125, uint8_t x126 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x122, Return x59, Return x123);
- uint32_t x127 = (x94 & 0x3ffffff);
- uint32_t x129, uint8_t x130 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x126, Return x62, Return x127);
- uint32_t x131 = (x94 & 0x3ffffff);
- uint32_t x133, uint8_t x134 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x130, Return x65, Return x131);
- uint32_t x135 = (x94 & 0x3ffffff);
- uint32_t x137, uint8_t x138 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x134, Return x68, Return x135);
- uint32_t x139 = (x94 & 0x1ffffff);
- uint32_t x141, uint8_t x142 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x138, Return x71, Return x139);
- uint32_t x143 = (x94 & 0x3ffffff);
- uint32_t x145, uint8_t x146 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x142, Return x74, Return x143);
- uint32_t x147 = (x94 & 0x3ffffff);
- uint32_t x149, uint8_t x150 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x146, Return x77, Return x147);
- uint32_t x151 = (x94 & 0x3ffffff);
- uint32_t x153, uint8_t x154 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x150, Return x80, Return x151);
- uint32_t x155 = (x94 & 0x1ffffff);
- uint32_t x157, uint8_t x158 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x154, Return x83, Return x155);
- uint32_t x159 = (x94 & 0x3ffffff);
- uint32_t x161, uint8_t x162 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x158, Return x86, Return x159);
- uint32_t x163 = (x94 & 0x3ffffff);
- uint32_t x165, uint8_t x166 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x162, Return x89, Return x163);
- uint32_t x167 = (x94 & 0x1ffffff);
- uint32_t x169, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x166, Return x92, Return x167);
- (Return x169, Return x165, Return x161, Return x157, Return x153, Return x149, Return x145, Return x141, Return x137, Return x133, Return x129, Return x125, Return x121, Return x117, Return x113, Return x109, Return x105, Return x101, Return x97))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e489m21_19limbs/freezeDisplay.v b/src/Specific/solinas32_2e489m21_19limbs/freezeDisplay.v
deleted file mode 100644
index 75662dc3d..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e489m21_19limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e489m21_19limbs/py_interpreter.sh b/src/Specific/solinas32_2e489m21_19limbs/py_interpreter.sh
deleted file mode 100755
index 559437c50..000000000
--- a/src/Specific/solinas32_2e489m21_19limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**489 - 21' -Dmodulus_bytes='25 + 14/19' -Da24='121665'
diff --git a/src/Specific/solinas32_2e489m21_20limbs/CurveParameters.v b/src/Specific/solinas32_2e489m21_20limbs/CurveParameters.v
deleted file mode 100644
index da6de2217..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^489 - 21
-Base: 24 + 9/20
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 20%nat;
- base := 24 + 9/20;
- bitwidth := 32;
- s := 2^489;
- c := [(1, 21)];
- carry_chains := Some [seq 0 (pred 20); [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_2e489m21_20limbs/Synthesis.v b/src/Specific/solinas32_2e489m21_20limbs/Synthesis.v
deleted file mode 100644
index 61f5940d3..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e489m21_20limbs.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_2e489m21_20limbs/compiler.sh b/src/Specific/solinas32_2e489m21_20limbs/compiler.sh
deleted file mode 100755
index 72f65f1a2..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,24,25,24,25,24,25,24,25,24,24,25,24,25,24,25,24,25,24,24}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='20' -Dq_mpz='(1_mpz<<489) - 21' "$@"
diff --git a/src/Specific/solinas32_2e489m21_20limbs/compilerxx.sh b/src/Specific/solinas32_2e489m21_20limbs/compilerxx.sh
deleted file mode 100755
index 0a1081805..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,24,25,24,25,24,25,24,25,24,24,25,24,25,24,25,24,25,24,24}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='20' -Dq_mpz='(1_mpz<<489) - 21' "$@"
diff --git a/src/Specific/solinas32_2e489m21_20limbs/feadd.c b/src/Specific/solinas32_2e489m21_20limbs/feadd.c
deleted file mode 100644
index 28ee6f665..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/feadd.c
+++ /dev/null
@@ -1,63 +0,0 @@
-static void feadd(uint32_t out[20], const uint32_t in1[20], const uint32_t in2[20]) {
- { const uint32_t x40 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x78 = in2[19];
- { const uint32_t x79 = in2[18];
- { const uint32_t x77 = in2[17];
- { const uint32_t x75 = in2[16];
- { const uint32_t x73 = in2[15];
- { const uint32_t x71 = in2[14];
- { const uint32_t x69 = in2[13];
- { const uint32_t x67 = in2[12];
- { const uint32_t x65 = in2[11];
- { const uint32_t x63 = in2[10];
- { const uint32_t x61 = in2[9];
- { const uint32_t x59 = in2[8];
- { const uint32_t x57 = in2[7];
- { const uint32_t x55 = in2[6];
- { const uint32_t x53 = in2[5];
- { const uint32_t x51 = in2[4];
- { const uint32_t x49 = in2[3];
- { const uint32_t x47 = in2[2];
- { const uint32_t x45 = in2[1];
- { const uint32_t x43 = in2[0];
- out[0] = (x5 + x43);
- out[1] = (x7 + x45);
- out[2] = (x9 + x47);
- out[3] = (x11 + x49);
- out[4] = (x13 + x51);
- out[5] = (x15 + x53);
- out[6] = (x17 + x55);
- out[7] = (x19 + x57);
- out[8] = (x21 + x59);
- out[9] = (x23 + x61);
- out[10] = (x25 + x63);
- out[11] = (x27 + x65);
- out[12] = (x29 + x67);
- out[13] = (x31 + x69);
- out[14] = (x33 + x71);
- out[15] = (x35 + x73);
- out[16] = (x37 + x75);
- out[17] = (x39 + x77);
- out[18] = (x41 + x79);
- out[19] = (x40 + x78);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e489m21_20limbs/feadd.v b/src/Specific/solinas32_2e489m21_20limbs/feadd.v
deleted file mode 100644
index 47765b62b..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e489m21_20limbs.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_2e489m21_20limbs/feaddDisplay.log b/src/Specific/solinas32_2e489m21_20limbs/feaddDisplay.log
deleted file mode 100644
index eebe17777..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x40, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x78, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43))%core,
- ((x40 + x78), (x41 + x79), (x39 + x77), (x37 + x75), (x35 + x73), (x33 + x71), (x31 + x69), (x29 + x67), (x27 + x65), (x25 + x63), (x23 + x61), (x21 + x59), (x19 + x57), (x17 + x55), (x15 + x53), (x13 + x51), (x11 + x49), (x9 + x47), (x7 + x45), (x5 + x43)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e489m21_20limbs/feaddDisplay.v b/src/Specific/solinas32_2e489m21_20limbs/feaddDisplay.v
deleted file mode 100644
index 04d64b1ce..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e489m21_20limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e489m21_20limbs/fecarry.v b/src/Specific/solinas32_2e489m21_20limbs/fecarry.v
deleted file mode 100644
index 7915ab566..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e489m21_20limbs.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_2e489m21_20limbs/fecarryDisplay.v b/src/Specific/solinas32_2e489m21_20limbs/fecarryDisplay.v
deleted file mode 100644
index 2a4482fde..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e489m21_20limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e489m21_20limbs/femul.c b/src/Specific/solinas32_2e489m21_20limbs/femul.c
deleted file mode 100644
index 5bd479fb9..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/femul.c
+++ /dev/null
@@ -1,148 +0,0 @@
-static void femul(uint32_t out[20], const uint32_t in1[20], const uint32_t in2[20]) {
- { const uint32_t x40 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x78 = in2[19];
- { const uint32_t x79 = in2[18];
- { const uint32_t x77 = in2[17];
- { const uint32_t x75 = in2[16];
- { const uint32_t x73 = in2[15];
- { const uint32_t x71 = in2[14];
- { const uint32_t x69 = in2[13];
- { const uint32_t x67 = in2[12];
- { const uint32_t x65 = in2[11];
- { const uint32_t x63 = in2[10];
- { const uint32_t x61 = in2[9];
- { const uint32_t x59 = in2[8];
- { const uint32_t x57 = in2[7];
- { const uint32_t x55 = in2[6];
- { const uint32_t x53 = in2[5];
- { const uint32_t x51 = in2[4];
- { const uint32_t x49 = in2[3];
- { const uint32_t x47 = in2[2];
- { const uint32_t x45 = in2[1];
- { const uint32_t x43 = in2[0];
- { uint64_t x80 = (((uint64_t)x5 * x78) + ((0x2 * ((uint64_t)x7 * x79)) + (((uint64_t)x9 * x77) + ((0x2 * ((uint64_t)x11 * x75)) + (((uint64_t)x13 * x73) + ((0x2 * ((uint64_t)x15 * x71)) + (((uint64_t)x17 * x69) + ((0x2 * ((uint64_t)x19 * x67)) + (((uint64_t)x21 * x65) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + (((uint64_t)x27 * x59) + ((0x2 * ((uint64_t)x29 * x57)) + (((uint64_t)x31 * x55) + ((0x2 * ((uint64_t)x33 * x53)) + (((uint64_t)x35 * x51) + ((0x2 * ((uint64_t)x37 * x49)) + (((uint64_t)x39 * x47) + ((0x2 * ((uint64_t)x41 * x45)) + ((uint64_t)x40 * x43))))))))))))))))))));
- { uint64_t x81 = ((((uint64_t)x5 * x79) + (((uint64_t)x7 * x77) + (((uint64_t)x9 * x75) + (((uint64_t)x11 * x73) + (((uint64_t)x13 * x71) + (((uint64_t)x15 * x69) + (((uint64_t)x17 * x67) + (((uint64_t)x19 * x65) + (((uint64_t)x21 * x63) + ((0x2 * ((uint64_t)x23 * x61)) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + (((uint64_t)x35 * x49) + (((uint64_t)x37 * x47) + (((uint64_t)x39 * x45) + ((uint64_t)x41 * x43))))))))))))))))))) + (0x15 * ((uint64_t)x40 * x78)));
- { uint64_t x82 = ((((uint64_t)x5 * x77) + ((0x2 * ((uint64_t)x7 * x75)) + (((uint64_t)x9 * x73) + ((0x2 * ((uint64_t)x11 * x71)) + (((uint64_t)x13 * x69) + ((0x2 * ((uint64_t)x15 * x67)) + (((uint64_t)x17 * x65) + ((0x2 * ((uint64_t)x19 * x63)) + ((0x2 * ((uint64_t)x21 * x61)) + ((0x2 * ((uint64_t)x23 * x59)) + ((0x2 * ((uint64_t)x25 * x57)) + (((uint64_t)x27 * x55) + ((0x2 * ((uint64_t)x29 * x53)) + (((uint64_t)x31 * x51) + ((0x2 * ((uint64_t)x33 * x49)) + (((uint64_t)x35 * x47) + ((0x2 * ((uint64_t)x37 * x45)) + ((uint64_t)x39 * x43)))))))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x41 * x78)) + (0x2 * ((uint64_t)x40 * x79)))));
- { uint64_t x83 = ((((uint64_t)x5 * x75) + (((uint64_t)x7 * x73) + (((uint64_t)x9 * x71) + (((uint64_t)x11 * x69) + (((uint64_t)x13 * x67) + (((uint64_t)x15 * x65) + (((uint64_t)x17 * x63) + ((0x2 * ((uint64_t)x19 * x61)) + (((uint64_t)x21 * x59) + ((0x2 * ((uint64_t)x23 * x57)) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + (((uint64_t)x31 * x49) + (((uint64_t)x33 * x47) + (((uint64_t)x35 * x45) + ((uint64_t)x37 * x43))))))))))))))))) + (0x15 * (((uint64_t)x39 * x78) + ((0x2 * ((uint64_t)x41 * x79)) + ((uint64_t)x40 * x77)))));
- { uint64_t x84 = ((((uint64_t)x5 * x73) + ((0x2 * ((uint64_t)x7 * x71)) + (((uint64_t)x9 * x69) + ((0x2 * ((uint64_t)x11 * x67)) + (((uint64_t)x13 * x65) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + ((0x2 * ((uint64_t)x21 * x57)) + ((0x2 * ((uint64_t)x23 * x55)) + ((0x2 * ((uint64_t)x25 * x53)) + (((uint64_t)x27 * x51) + ((0x2 * ((uint64_t)x29 * x49)) + (((uint64_t)x31 * x47) + ((0x2 * ((uint64_t)x33 * x45)) + ((uint64_t)x35 * x43)))))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x37 * x78)) + ((0x2 * ((uint64_t)x39 * x79)) + ((0x2 * ((uint64_t)x41 * x77)) + (0x2 * ((uint64_t)x40 * x75)))))));
- { uint64_t x85 = ((((uint64_t)x5 * x71) + (((uint64_t)x7 * x69) + (((uint64_t)x9 * x67) + (((uint64_t)x11 * x65) + (((uint64_t)x13 * x63) + ((0x2 * ((uint64_t)x15 * x61)) + (((uint64_t)x17 * x59) + ((0x2 * ((uint64_t)x19 * x57)) + (((uint64_t)x21 * x55) + ((0x2 * ((uint64_t)x23 * x53)) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (((uint64_t)x29 * x47) + (((uint64_t)x31 * x45) + ((uint64_t)x33 * x43))))))))))))))) + (0x15 * (((uint64_t)x35 * x78) + ((0x2 * ((uint64_t)x37 * x79)) + (((uint64_t)x39 * x77) + ((0x2 * ((uint64_t)x41 * x75)) + ((uint64_t)x40 * x73)))))));
- { uint64_t x86 = ((((uint64_t)x5 * x69) + ((0x2 * ((uint64_t)x7 * x67)) + (((uint64_t)x9 * x65) + ((0x2 * ((uint64_t)x11 * x63)) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + ((0x2 * ((uint64_t)x19 * x55)) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + (((uint64_t)x27 * x47) + ((0x2 * ((uint64_t)x29 * x45)) + ((uint64_t)x31 * x43)))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x33 * x78)) + ((0x2 * ((uint64_t)x35 * x79)) + ((0x2 * ((uint64_t)x37 * x77)) + ((0x2 * ((uint64_t)x39 * x75)) + ((0x2 * ((uint64_t)x41 * x73)) + (0x2 * ((uint64_t)x40 * x71)))))))));
- { uint64_t x87 = ((((uint64_t)x5 * x67) + (((uint64_t)x7 * x65) + (((uint64_t)x9 * x63) + ((0x2 * ((uint64_t)x11 * x61)) + (((uint64_t)x13 * x59) + ((0x2 * ((uint64_t)x15 * x57)) + (((uint64_t)x17 * x55) + ((0x2 * ((uint64_t)x19 * x53)) + (((uint64_t)x21 * x51) + ((0x2 * ((uint64_t)x23 * x49)) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + ((uint64_t)x29 * x43))))))))))))) + (0x15 * (((uint64_t)x31 * x78) + ((0x2 * ((uint64_t)x33 * x79)) + (((uint64_t)x35 * x77) + ((0x2 * ((uint64_t)x37 * x75)) + (((uint64_t)x39 * x73) + ((0x2 * ((uint64_t)x41 * x71)) + ((uint64_t)x40 * x69)))))))));
- { uint64_t x88 = ((((uint64_t)x5 * x65) + ((0x2 * ((uint64_t)x7 * x63)) + ((0x2 * ((uint64_t)x9 * x61)) + ((0x2 * ((uint64_t)x11 * x59)) + ((0x2 * ((uint64_t)x13 * x57)) + ((0x2 * ((uint64_t)x15 * x55)) + ((0x2 * ((uint64_t)x17 * x53)) + ((0x2 * ((uint64_t)x19 * x51)) + ((0x2 * ((uint64_t)x21 * x49)) + ((0x2 * ((uint64_t)x23 * x47)) + ((0x2 * ((uint64_t)x25 * x45)) + ((uint64_t)x27 * x43)))))))))))) + (0x15 * ((0x2 * ((uint64_t)x29 * x78)) + ((0x2 * ((uint64_t)x31 * x79)) + ((0x2 * ((uint64_t)x33 * x77)) + ((0x2 * ((uint64_t)x35 * x75)) + ((0x2 * ((uint64_t)x37 * x73)) + ((0x2 * ((uint64_t)x39 * x71)) + ((0x2 * ((uint64_t)x41 * x69)) + (0x2 * ((uint64_t)x40 * x67)))))))))));
- { uint64_t x89 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + (((uint64_t)x9 * x59) + ((0x2 * ((uint64_t)x11 * x57)) + (((uint64_t)x13 * x55) + ((0x2 * ((uint64_t)x15 * x53)) + (((uint64_t)x17 * x51) + ((0x2 * ((uint64_t)x19 * x49)) + (((uint64_t)x21 * x47) + ((0x2 * ((uint64_t)x23 * x45)) + ((uint64_t)x25 * x43))))))))))) + (0x15 * (((uint64_t)x27 * x78) + ((0x2 * ((uint64_t)x29 * x79)) + (((uint64_t)x31 * x77) + ((0x2 * ((uint64_t)x33 * x75)) + (((uint64_t)x35 * x73) + ((0x2 * ((uint64_t)x37 * x71)) + (((uint64_t)x39 * x69) + ((0x2 * ((uint64_t)x41 * x67)) + ((uint64_t)x40 * x65)))))))))));
- { uint64_t x90 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + ((uint64_t)x23 * x43)))))))))) + (0x15 * (((uint64_t)x25 * x78) + (((uint64_t)x27 * x79) + (((uint64_t)x29 * x77) + (((uint64_t)x31 * x75) + (((uint64_t)x33 * x73) + (((uint64_t)x35 * x71) + (((uint64_t)x37 * x69) + (((uint64_t)x39 * x67) + (((uint64_t)x41 * x65) + ((uint64_t)x40 * x63))))))))))));
- { uint64_t x91 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + (((uint64_t)x9 * x55) + ((0x2 * ((uint64_t)x11 * x53)) + (((uint64_t)x13 * x51) + ((0x2 * ((uint64_t)x15 * x49)) + (((uint64_t)x17 * x47) + ((0x2 * ((uint64_t)x19 * x45)) + ((uint64_t)x21 * x43))))))))) + (0x15 * ((0x2 * ((uint64_t)x23 * x78)) + ((0x2 * ((uint64_t)x25 * x79)) + (((uint64_t)x27 * x77) + ((0x2 * ((uint64_t)x29 * x75)) + (((uint64_t)x31 * x73) + ((0x2 * ((uint64_t)x33 * x71)) + (((uint64_t)x35 * x69) + ((0x2 * ((uint64_t)x37 * x67)) + (((uint64_t)x39 * x65) + ((0x2 * ((uint64_t)x41 * x63)) + (0x2 * ((uint64_t)x40 * x61))))))))))))));
- { uint64_t x92 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + ((uint64_t)x19 * x43)))))))) + (0x15 * (((uint64_t)x21 * x78) + ((0x2 * ((uint64_t)x23 * x79)) + (((uint64_t)x25 * x77) + (((uint64_t)x27 * x75) + (((uint64_t)x29 * x73) + (((uint64_t)x31 * x71) + (((uint64_t)x33 * x69) + (((uint64_t)x35 * x67) + (((uint64_t)x37 * x65) + (((uint64_t)x39 * x63) + ((0x2 * ((uint64_t)x41 * x61)) + ((uint64_t)x40 * x59))))))))))))));
- { uint64_t x93 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + (((uint64_t)x9 * x51) + ((0x2 * ((uint64_t)x11 * x49)) + (((uint64_t)x13 * x47) + ((0x2 * ((uint64_t)x15 * x45)) + ((uint64_t)x17 * x43))))))) + (0x15 * ((0x2 * ((uint64_t)x19 * x78)) + ((0x2 * ((uint64_t)x21 * x79)) + ((0x2 * ((uint64_t)x23 * x77)) + ((0x2 * ((uint64_t)x25 * x75)) + (((uint64_t)x27 * x73) + ((0x2 * ((uint64_t)x29 * x71)) + (((uint64_t)x31 * x69) + ((0x2 * ((uint64_t)x33 * x67)) + (((uint64_t)x35 * x65) + ((0x2 * ((uint64_t)x37 * x63)) + ((0x2 * ((uint64_t)x39 * x61)) + ((0x2 * ((uint64_t)x41 * x59)) + (0x2 * ((uint64_t)x40 * x57))))))))))))))));
- { uint64_t x94 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + ((uint64_t)x15 * x43)))))) + (0x15 * (((uint64_t)x17 * x78) + ((0x2 * ((uint64_t)x19 * x79)) + (((uint64_t)x21 * x77) + ((0x2 * ((uint64_t)x23 * x75)) + (((uint64_t)x25 * x73) + (((uint64_t)x27 * x71) + (((uint64_t)x29 * x69) + (((uint64_t)x31 * x67) + (((uint64_t)x33 * x65) + (((uint64_t)x35 * x63) + ((0x2 * ((uint64_t)x37 * x61)) + (((uint64_t)x39 * x59) + ((0x2 * ((uint64_t)x41 * x57)) + ((uint64_t)x40 * x55))))))))))))))));
- { uint64_t x95 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + (((uint64_t)x9 * x47) + ((0x2 * ((uint64_t)x11 * x45)) + ((uint64_t)x13 * x43))))) + (0x15 * ((0x2 * ((uint64_t)x15 * x78)) + ((0x2 * ((uint64_t)x17 * x79)) + ((0x2 * ((uint64_t)x19 * x77)) + ((0x2 * ((uint64_t)x21 * x75)) + ((0x2 * ((uint64_t)x23 * x73)) + ((0x2 * ((uint64_t)x25 * x71)) + (((uint64_t)x27 * x69) + ((0x2 * ((uint64_t)x29 * x67)) + (((uint64_t)x31 * x65) + ((0x2 * ((uint64_t)x33 * x63)) + ((0x2 * ((uint64_t)x35 * x61)) + ((0x2 * ((uint64_t)x37 * x59)) + ((0x2 * ((uint64_t)x39 * x57)) + ((0x2 * ((uint64_t)x41 * x55)) + (0x2 * ((uint64_t)x40 * x53))))))))))))))))));
- { uint64_t x96 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + ((uint64_t)x11 * x43)))) + (0x15 * (((uint64_t)x13 * x78) + ((0x2 * ((uint64_t)x15 * x79)) + (((uint64_t)x17 * x77) + ((0x2 * ((uint64_t)x19 * x75)) + (((uint64_t)x21 * x73) + ((0x2 * ((uint64_t)x23 * x71)) + (((uint64_t)x25 * x69) + (((uint64_t)x27 * x67) + (((uint64_t)x29 * x65) + (((uint64_t)x31 * x63) + ((0x2 * ((uint64_t)x33 * x61)) + (((uint64_t)x35 * x59) + ((0x2 * ((uint64_t)x37 * x57)) + (((uint64_t)x39 * x55) + ((0x2 * ((uint64_t)x41 * x53)) + ((uint64_t)x40 * x51))))))))))))))))));
- { uint64_t x97 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((uint64_t)x9 * x43))) + (0x15 * ((0x2 * ((uint64_t)x11 * x78)) + ((0x2 * ((uint64_t)x13 * x79)) + ((0x2 * ((uint64_t)x15 * x77)) + ((0x2 * ((uint64_t)x17 * x75)) + ((0x2 * ((uint64_t)x19 * x73)) + ((0x2 * ((uint64_t)x21 * x71)) + ((0x2 * ((uint64_t)x23 * x69)) + ((0x2 * ((uint64_t)x25 * x67)) + (((uint64_t)x27 * x65) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + ((0x2 * ((uint64_t)x35 * x57)) + ((0x2 * ((uint64_t)x37 * x55)) + ((0x2 * ((uint64_t)x39 * x53)) + ((0x2 * ((uint64_t)x41 * x51)) + (0x2 * ((uint64_t)x40 * x49))))))))))))))))))));
- { uint64_t x98 = ((((uint64_t)x5 * x45) + ((uint64_t)x7 * x43)) + (0x15 * (((uint64_t)x9 * x78) + ((0x2 * ((uint64_t)x11 * x79)) + (((uint64_t)x13 * x77) + ((0x2 * ((uint64_t)x15 * x75)) + (((uint64_t)x17 * x73) + ((0x2 * ((uint64_t)x19 * x71)) + (((uint64_t)x21 * x69) + ((0x2 * ((uint64_t)x23 * x67)) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + ((0x2 * ((uint64_t)x29 * x61)) + (((uint64_t)x31 * x59) + ((0x2 * ((uint64_t)x33 * x57)) + (((uint64_t)x35 * x55) + ((0x2 * ((uint64_t)x37 * x53)) + (((uint64_t)x39 * x51) + ((0x2 * ((uint64_t)x41 * x49)) + ((uint64_t)x40 * x47))))))))))))))))))));
- { uint64_t x99 = (((uint64_t)x5 * x43) + (0x15 * ((0x2 * ((uint64_t)x7 * x78)) + ((0x2 * ((uint64_t)x9 * x79)) + ((0x2 * ((uint64_t)x11 * x77)) + ((0x2 * ((uint64_t)x13 * x75)) + ((0x2 * ((uint64_t)x15 * x73)) + ((0x2 * ((uint64_t)x17 * x71)) + ((0x2 * ((uint64_t)x19 * x69)) + ((0x2 * ((uint64_t)x21 * x67)) + ((0x2 * ((uint64_t)x23 * x65)) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + ((0x2 * ((uint64_t)x33 * x55)) + ((0x2 * ((uint64_t)x35 * x53)) + ((0x2 * ((uint64_t)x37 * x51)) + ((0x2 * ((uint64_t)x39 * x49)) + ((0x2 * ((uint64_t)x41 * x47)) + (0x2 * ((uint64_t)x40 * x45))))))))))))))))))))));
- { uint64_t x100 = (x99 >> 0x19);
- { uint32_t x101 = ((uint32_t)x99 & 0x1ffffff);
- { uint64_t x102 = (x100 + x98);
- { uint64_t x103 = (x102 >> 0x18);
- { uint32_t x104 = ((uint32_t)x102 & 0xffffff);
- { uint64_t x105 = (x103 + x97);
- { uint64_t x106 = (x105 >> 0x19);
- { uint32_t x107 = ((uint32_t)x105 & 0x1ffffff);
- { uint64_t x108 = (x106 + x96);
- { uint64_t x109 = (x108 >> 0x18);
- { uint32_t x110 = ((uint32_t)x108 & 0xffffff);
- { uint64_t x111 = (x109 + x95);
- { uint64_t x112 = (x111 >> 0x19);
- { uint32_t x113 = ((uint32_t)x111 & 0x1ffffff);
- { uint64_t x114 = (x112 + x94);
- { uint64_t x115 = (x114 >> 0x18);
- { uint32_t x116 = ((uint32_t)x114 & 0xffffff);
- { uint64_t x117 = (x115 + x93);
- { uint64_t x118 = (x117 >> 0x19);
- { uint32_t x119 = ((uint32_t)x117 & 0x1ffffff);
- { uint64_t x120 = (x118 + x92);
- { uint64_t x121 = (x120 >> 0x18);
- { uint32_t x122 = ((uint32_t)x120 & 0xffffff);
- { uint64_t x123 = (x121 + x91);
- { uint64_t x124 = (x123 >> 0x19);
- { uint32_t x125 = ((uint32_t)x123 & 0x1ffffff);
- { uint64_t x126 = (x124 + x90);
- { uint64_t x127 = (x126 >> 0x18);
- { uint32_t x128 = ((uint32_t)x126 & 0xffffff);
- { uint64_t x129 = (x127 + x89);
- { uint64_t x130 = (x129 >> 0x18);
- { uint32_t x131 = ((uint32_t)x129 & 0xffffff);
- { uint64_t x132 = (x130 + x88);
- { uint64_t x133 = (x132 >> 0x19);
- { uint32_t x134 = ((uint32_t)x132 & 0x1ffffff);
- { uint64_t x135 = (x133 + x87);
- { uint64_t x136 = (x135 >> 0x18);
- { uint32_t x137 = ((uint32_t)x135 & 0xffffff);
- { uint64_t x138 = (x136 + x86);
- { uint64_t x139 = (x138 >> 0x19);
- { uint32_t x140 = ((uint32_t)x138 & 0x1ffffff);
- { uint64_t x141 = (x139 + x85);
- { uint64_t x142 = (x141 >> 0x18);
- { uint32_t x143 = ((uint32_t)x141 & 0xffffff);
- { uint64_t x144 = (x142 + x84);
- { uint64_t x145 = (x144 >> 0x19);
- { uint32_t x146 = ((uint32_t)x144 & 0x1ffffff);
- { uint64_t x147 = (x145 + x83);
- { uint64_t x148 = (x147 >> 0x18);
- { uint32_t x149 = ((uint32_t)x147 & 0xffffff);
- { uint64_t x150 = (x148 + x82);
- { uint64_t x151 = (x150 >> 0x19);
- { uint32_t x152 = ((uint32_t)x150 & 0x1ffffff);
- { uint64_t x153 = (x151 + x81);
- { uint64_t x154 = (x153 >> 0x18);
- { uint32_t x155 = ((uint32_t)x153 & 0xffffff);
- { uint64_t x156 = (x154 + x80);
- { uint64_t x157 = (x156 >> 0x18);
- { uint32_t x158 = ((uint32_t)x156 & 0xffffff);
- { uint64_t x159 = (x101 + (0x15 * x157));
- { uint32_t x160 = (uint32_t) (x159 >> 0x19);
- { uint32_t x161 = ((uint32_t)x159 & 0x1ffffff);
- { uint32_t x162 = (x160 + x104);
- { uint32_t x163 = (x162 >> 0x18);
- { uint32_t x164 = (x162 & 0xffffff);
- out[0] = x161;
- out[1] = x164;
- out[2] = (x163 + x107);
- out[3] = x110;
- out[4] = x113;
- out[5] = x116;
- out[6] = x119;
- out[7] = x122;
- out[8] = x125;
- out[9] = x128;
- out[10] = x131;
- out[11] = x134;
- out[12] = x137;
- out[13] = x140;
- out[14] = x143;
- out[15] = x146;
- out[16] = x149;
- out[17] = x152;
- out[18] = x155;
- out[19] = x158;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e489m21_20limbs/femul.v b/src/Specific/solinas32_2e489m21_20limbs/femul.v
deleted file mode 100644
index 58bbbb570..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e489m21_20limbs.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_2e489m21_20limbs/femulDisplay.log b/src/Specific/solinas32_2e489m21_20limbs/femulDisplay.log
deleted file mode 100644
index 9612d08d1..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/femulDisplay.log
+++ /dev/null
@@ -1,92 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x40, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x78, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43))%core,
- uint64_t x80 = (((uint64_t)x5 * x78) + ((0x2 * ((uint64_t)x7 * x79)) + (((uint64_t)x9 * x77) + ((0x2 * ((uint64_t)x11 * x75)) + (((uint64_t)x13 * x73) + ((0x2 * ((uint64_t)x15 * x71)) + (((uint64_t)x17 * x69) + ((0x2 * ((uint64_t)x19 * x67)) + (((uint64_t)x21 * x65) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + (((uint64_t)x27 * x59) + ((0x2 * ((uint64_t)x29 * x57)) + (((uint64_t)x31 * x55) + ((0x2 * ((uint64_t)x33 * x53)) + (((uint64_t)x35 * x51) + ((0x2 * ((uint64_t)x37 * x49)) + (((uint64_t)x39 * x47) + ((0x2 * ((uint64_t)x41 * x45)) + ((uint64_t)x40 * x43))))))))))))))))))));
- uint64_t x81 = ((((uint64_t)x5 * x79) + (((uint64_t)x7 * x77) + (((uint64_t)x9 * x75) + (((uint64_t)x11 * x73) + (((uint64_t)x13 * x71) + (((uint64_t)x15 * x69) + (((uint64_t)x17 * x67) + (((uint64_t)x19 * x65) + (((uint64_t)x21 * x63) + ((0x2 * ((uint64_t)x23 * x61)) + (((uint64_t)x25 * x59) + (((uint64_t)x27 * x57) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + (((uint64_t)x35 * x49) + (((uint64_t)x37 * x47) + (((uint64_t)x39 * x45) + ((uint64_t)x41 * x43))))))))))))))))))) + (0x15 * ((uint64_t)x40 * x78)));
- uint64_t x82 = ((((uint64_t)x5 * x77) + ((0x2 * ((uint64_t)x7 * x75)) + (((uint64_t)x9 * x73) + ((0x2 * ((uint64_t)x11 * x71)) + (((uint64_t)x13 * x69) + ((0x2 * ((uint64_t)x15 * x67)) + (((uint64_t)x17 * x65) + ((0x2 * ((uint64_t)x19 * x63)) + ((0x2 * ((uint64_t)x21 * x61)) + ((0x2 * ((uint64_t)x23 * x59)) + ((0x2 * ((uint64_t)x25 * x57)) + (((uint64_t)x27 * x55) + ((0x2 * ((uint64_t)x29 * x53)) + (((uint64_t)x31 * x51) + ((0x2 * ((uint64_t)x33 * x49)) + (((uint64_t)x35 * x47) + ((0x2 * ((uint64_t)x37 * x45)) + ((uint64_t)x39 * x43)))))))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x41 * x78)) + (0x2 * ((uint64_t)x40 * x79)))));
- uint64_t x83 = ((((uint64_t)x5 * x75) + (((uint64_t)x7 * x73) + (((uint64_t)x9 * x71) + (((uint64_t)x11 * x69) + (((uint64_t)x13 * x67) + (((uint64_t)x15 * x65) + (((uint64_t)x17 * x63) + ((0x2 * ((uint64_t)x19 * x61)) + (((uint64_t)x21 * x59) + ((0x2 * ((uint64_t)x23 * x57)) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + (((uint64_t)x31 * x49) + (((uint64_t)x33 * x47) + (((uint64_t)x35 * x45) + ((uint64_t)x37 * x43))))))))))))))))) + (0x15 * (((uint64_t)x39 * x78) + ((0x2 * ((uint64_t)x41 * x79)) + ((uint64_t)x40 * x77)))));
- uint64_t x84 = ((((uint64_t)x5 * x73) + ((0x2 * ((uint64_t)x7 * x71)) + (((uint64_t)x9 * x69) + ((0x2 * ((uint64_t)x11 * x67)) + (((uint64_t)x13 * x65) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + ((0x2 * ((uint64_t)x21 * x57)) + ((0x2 * ((uint64_t)x23 * x55)) + ((0x2 * ((uint64_t)x25 * x53)) + (((uint64_t)x27 * x51) + ((0x2 * ((uint64_t)x29 * x49)) + (((uint64_t)x31 * x47) + ((0x2 * ((uint64_t)x33 * x45)) + ((uint64_t)x35 * x43)))))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x37 * x78)) + ((0x2 * ((uint64_t)x39 * x79)) + ((0x2 * ((uint64_t)x41 * x77)) + (0x2 * ((uint64_t)x40 * x75)))))));
- uint64_t x85 = ((((uint64_t)x5 * x71) + (((uint64_t)x7 * x69) + (((uint64_t)x9 * x67) + (((uint64_t)x11 * x65) + (((uint64_t)x13 * x63) + ((0x2 * ((uint64_t)x15 * x61)) + (((uint64_t)x17 * x59) + ((0x2 * ((uint64_t)x19 * x57)) + (((uint64_t)x21 * x55) + ((0x2 * ((uint64_t)x23 * x53)) + (((uint64_t)x25 * x51) + (((uint64_t)x27 * x49) + (((uint64_t)x29 * x47) + (((uint64_t)x31 * x45) + ((uint64_t)x33 * x43))))))))))))))) + (0x15 * (((uint64_t)x35 * x78) + ((0x2 * ((uint64_t)x37 * x79)) + (((uint64_t)x39 * x77) + ((0x2 * ((uint64_t)x41 * x75)) + ((uint64_t)x40 * x73)))))));
- uint64_t x86 = ((((uint64_t)x5 * x69) + ((0x2 * ((uint64_t)x7 * x67)) + (((uint64_t)x9 * x65) + ((0x2 * ((uint64_t)x11 * x63)) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + ((0x2 * ((uint64_t)x19 * x55)) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + (((uint64_t)x27 * x47) + ((0x2 * ((uint64_t)x29 * x45)) + ((uint64_t)x31 * x43)))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x33 * x78)) + ((0x2 * ((uint64_t)x35 * x79)) + ((0x2 * ((uint64_t)x37 * x77)) + ((0x2 * ((uint64_t)x39 * x75)) + ((0x2 * ((uint64_t)x41 * x73)) + (0x2 * ((uint64_t)x40 * x71)))))))));
- uint64_t x87 = ((((uint64_t)x5 * x67) + (((uint64_t)x7 * x65) + (((uint64_t)x9 * x63) + ((0x2 * ((uint64_t)x11 * x61)) + (((uint64_t)x13 * x59) + ((0x2 * ((uint64_t)x15 * x57)) + (((uint64_t)x17 * x55) + ((0x2 * ((uint64_t)x19 * x53)) + (((uint64_t)x21 * x51) + ((0x2 * ((uint64_t)x23 * x49)) + (((uint64_t)x25 * x47) + (((uint64_t)x27 * x45) + ((uint64_t)x29 * x43))))))))))))) + (0x15 * (((uint64_t)x31 * x78) + ((0x2 * ((uint64_t)x33 * x79)) + (((uint64_t)x35 * x77) + ((0x2 * ((uint64_t)x37 * x75)) + (((uint64_t)x39 * x73) + ((0x2 * ((uint64_t)x41 * x71)) + ((uint64_t)x40 * x69)))))))));
- uint64_t x88 = ((((uint64_t)x5 * x65) + ((0x2 * ((uint64_t)x7 * x63)) + ((0x2 * ((uint64_t)x9 * x61)) + ((0x2 * ((uint64_t)x11 * x59)) + ((0x2 * ((uint64_t)x13 * x57)) + ((0x2 * ((uint64_t)x15 * x55)) + ((0x2 * ((uint64_t)x17 * x53)) + ((0x2 * ((uint64_t)x19 * x51)) + ((0x2 * ((uint64_t)x21 * x49)) + ((0x2 * ((uint64_t)x23 * x47)) + ((0x2 * ((uint64_t)x25 * x45)) + ((uint64_t)x27 * x43)))))))))))) + (0x15 * ((0x2 * ((uint64_t)x29 * x78)) + ((0x2 * ((uint64_t)x31 * x79)) + ((0x2 * ((uint64_t)x33 * x77)) + ((0x2 * ((uint64_t)x35 * x75)) + ((0x2 * ((uint64_t)x37 * x73)) + ((0x2 * ((uint64_t)x39 * x71)) + ((0x2 * ((uint64_t)x41 * x69)) + (0x2 * ((uint64_t)x40 * x67)))))))))));
- uint64_t x89 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + (((uint64_t)x9 * x59) + ((0x2 * ((uint64_t)x11 * x57)) + (((uint64_t)x13 * x55) + ((0x2 * ((uint64_t)x15 * x53)) + (((uint64_t)x17 * x51) + ((0x2 * ((uint64_t)x19 * x49)) + (((uint64_t)x21 * x47) + ((0x2 * ((uint64_t)x23 * x45)) + ((uint64_t)x25 * x43))))))))))) + (0x15 * (((uint64_t)x27 * x78) + ((0x2 * ((uint64_t)x29 * x79)) + (((uint64_t)x31 * x77) + ((0x2 * ((uint64_t)x33 * x75)) + (((uint64_t)x35 * x73) + ((0x2 * ((uint64_t)x37 * x71)) + (((uint64_t)x39 * x69) + ((0x2 * ((uint64_t)x41 * x67)) + ((uint64_t)x40 * x65)))))))))));
- uint64_t x90 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + ((uint64_t)x23 * x43)))))))))) + (0x15 * (((uint64_t)x25 * x78) + (((uint64_t)x27 * x79) + (((uint64_t)x29 * x77) + (((uint64_t)x31 * x75) + (((uint64_t)x33 * x73) + (((uint64_t)x35 * x71) + (((uint64_t)x37 * x69) + (((uint64_t)x39 * x67) + (((uint64_t)x41 * x65) + ((uint64_t)x40 * x63))))))))))));
- uint64_t x91 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + (((uint64_t)x9 * x55) + ((0x2 * ((uint64_t)x11 * x53)) + (((uint64_t)x13 * x51) + ((0x2 * ((uint64_t)x15 * x49)) + (((uint64_t)x17 * x47) + ((0x2 * ((uint64_t)x19 * x45)) + ((uint64_t)x21 * x43))))))))) + (0x15 * ((0x2 * ((uint64_t)x23 * x78)) + ((0x2 * ((uint64_t)x25 * x79)) + (((uint64_t)x27 * x77) + ((0x2 * ((uint64_t)x29 * x75)) + (((uint64_t)x31 * x73) + ((0x2 * ((uint64_t)x33 * x71)) + (((uint64_t)x35 * x69) + ((0x2 * ((uint64_t)x37 * x67)) + (((uint64_t)x39 * x65) + ((0x2 * ((uint64_t)x41 * x63)) + (0x2 * ((uint64_t)x40 * x61))))))))))))));
- uint64_t x92 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + ((uint64_t)x19 * x43)))))))) + (0x15 * (((uint64_t)x21 * x78) + ((0x2 * ((uint64_t)x23 * x79)) + (((uint64_t)x25 * x77) + (((uint64_t)x27 * x75) + (((uint64_t)x29 * x73) + (((uint64_t)x31 * x71) + (((uint64_t)x33 * x69) + (((uint64_t)x35 * x67) + (((uint64_t)x37 * x65) + (((uint64_t)x39 * x63) + ((0x2 * ((uint64_t)x41 * x61)) + ((uint64_t)x40 * x59))))))))))))));
- uint64_t x93 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + (((uint64_t)x9 * x51) + ((0x2 * ((uint64_t)x11 * x49)) + (((uint64_t)x13 * x47) + ((0x2 * ((uint64_t)x15 * x45)) + ((uint64_t)x17 * x43))))))) + (0x15 * ((0x2 * ((uint64_t)x19 * x78)) + ((0x2 * ((uint64_t)x21 * x79)) + ((0x2 * ((uint64_t)x23 * x77)) + ((0x2 * ((uint64_t)x25 * x75)) + (((uint64_t)x27 * x73) + ((0x2 * ((uint64_t)x29 * x71)) + (((uint64_t)x31 * x69) + ((0x2 * ((uint64_t)x33 * x67)) + (((uint64_t)x35 * x65) + ((0x2 * ((uint64_t)x37 * x63)) + ((0x2 * ((uint64_t)x39 * x61)) + ((0x2 * ((uint64_t)x41 * x59)) + (0x2 * ((uint64_t)x40 * x57))))))))))))))));
- uint64_t x94 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + (((uint64_t)x9 * x49) + (((uint64_t)x11 * x47) + (((uint64_t)x13 * x45) + ((uint64_t)x15 * x43)))))) + (0x15 * (((uint64_t)x17 * x78) + ((0x2 * ((uint64_t)x19 * x79)) + (((uint64_t)x21 * x77) + ((0x2 * ((uint64_t)x23 * x75)) + (((uint64_t)x25 * x73) + (((uint64_t)x27 * x71) + (((uint64_t)x29 * x69) + (((uint64_t)x31 * x67) + (((uint64_t)x33 * x65) + (((uint64_t)x35 * x63) + ((0x2 * ((uint64_t)x37 * x61)) + (((uint64_t)x39 * x59) + ((0x2 * ((uint64_t)x41 * x57)) + ((uint64_t)x40 * x55))))))))))))))));
- uint64_t x95 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + (((uint64_t)x9 * x47) + ((0x2 * ((uint64_t)x11 * x45)) + ((uint64_t)x13 * x43))))) + (0x15 * ((0x2 * ((uint64_t)x15 * x78)) + ((0x2 * ((uint64_t)x17 * x79)) + ((0x2 * ((uint64_t)x19 * x77)) + ((0x2 * ((uint64_t)x21 * x75)) + ((0x2 * ((uint64_t)x23 * x73)) + ((0x2 * ((uint64_t)x25 * x71)) + (((uint64_t)x27 * x69) + ((0x2 * ((uint64_t)x29 * x67)) + (((uint64_t)x31 * x65) + ((0x2 * ((uint64_t)x33 * x63)) + ((0x2 * ((uint64_t)x35 * x61)) + ((0x2 * ((uint64_t)x37 * x59)) + ((0x2 * ((uint64_t)x39 * x57)) + ((0x2 * ((uint64_t)x41 * x55)) + (0x2 * ((uint64_t)x40 * x53))))))))))))))))));
- uint64_t x96 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + ((uint64_t)x11 * x43)))) + (0x15 * (((uint64_t)x13 * x78) + ((0x2 * ((uint64_t)x15 * x79)) + (((uint64_t)x17 * x77) + ((0x2 * ((uint64_t)x19 * x75)) + (((uint64_t)x21 * x73) + ((0x2 * ((uint64_t)x23 * x71)) + (((uint64_t)x25 * x69) + (((uint64_t)x27 * x67) + (((uint64_t)x29 * x65) + (((uint64_t)x31 * x63) + ((0x2 * ((uint64_t)x33 * x61)) + (((uint64_t)x35 * x59) + ((0x2 * ((uint64_t)x37 * x57)) + (((uint64_t)x39 * x55) + ((0x2 * ((uint64_t)x41 * x53)) + ((uint64_t)x40 * x51))))))))))))))))));
- uint64_t x97 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((uint64_t)x9 * x43))) + (0x15 * ((0x2 * ((uint64_t)x11 * x78)) + ((0x2 * ((uint64_t)x13 * x79)) + ((0x2 * ((uint64_t)x15 * x77)) + ((0x2 * ((uint64_t)x17 * x75)) + ((0x2 * ((uint64_t)x19 * x73)) + ((0x2 * ((uint64_t)x21 * x71)) + ((0x2 * ((uint64_t)x23 * x69)) + ((0x2 * ((uint64_t)x25 * x67)) + (((uint64_t)x27 * x65) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + ((0x2 * ((uint64_t)x33 * x59)) + ((0x2 * ((uint64_t)x35 * x57)) + ((0x2 * ((uint64_t)x37 * x55)) + ((0x2 * ((uint64_t)x39 * x53)) + ((0x2 * ((uint64_t)x41 * x51)) + (0x2 * ((uint64_t)x40 * x49))))))))))))))))))));
- uint64_t x98 = ((((uint64_t)x5 * x45) + ((uint64_t)x7 * x43)) + (0x15 * (((uint64_t)x9 * x78) + ((0x2 * ((uint64_t)x11 * x79)) + (((uint64_t)x13 * x77) + ((0x2 * ((uint64_t)x15 * x75)) + (((uint64_t)x17 * x73) + ((0x2 * ((uint64_t)x19 * x71)) + (((uint64_t)x21 * x69) + ((0x2 * ((uint64_t)x23 * x67)) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + ((0x2 * ((uint64_t)x29 * x61)) + (((uint64_t)x31 * x59) + ((0x2 * ((uint64_t)x33 * x57)) + (((uint64_t)x35 * x55) + ((0x2 * ((uint64_t)x37 * x53)) + (((uint64_t)x39 * x51) + ((0x2 * ((uint64_t)x41 * x49)) + ((uint64_t)x40 * x47))))))))))))))))))));
- uint64_t x99 = (((uint64_t)x5 * x43) + (0x15 * ((0x2 * ((uint64_t)x7 * x78)) + ((0x2 * ((uint64_t)x9 * x79)) + ((0x2 * ((uint64_t)x11 * x77)) + ((0x2 * ((uint64_t)x13 * x75)) + ((0x2 * ((uint64_t)x15 * x73)) + ((0x2 * ((uint64_t)x17 * x71)) + ((0x2 * ((uint64_t)x19 * x69)) + ((0x2 * ((uint64_t)x21 * x67)) + ((0x2 * ((uint64_t)x23 * x65)) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + ((0x2 * ((uint64_t)x33 * x55)) + ((0x2 * ((uint64_t)x35 * x53)) + ((0x2 * ((uint64_t)x37 * x51)) + ((0x2 * ((uint64_t)x39 * x49)) + ((0x2 * ((uint64_t)x41 * x47)) + (0x2 * ((uint64_t)x40 * x45))))))))))))))))))))));
- uint64_t x100 = (x99 >> 0x19);
- uint32_t x101 = ((uint32_t)x99 & 0x1ffffff);
- uint64_t x102 = (x100 + x98);
- uint64_t x103 = (x102 >> 0x18);
- uint32_t x104 = ((uint32_t)x102 & 0xffffff);
- uint64_t x105 = (x103 + x97);
- uint64_t x106 = (x105 >> 0x19);
- uint32_t x107 = ((uint32_t)x105 & 0x1ffffff);
- uint64_t x108 = (x106 + x96);
- uint64_t x109 = (x108 >> 0x18);
- uint32_t x110 = ((uint32_t)x108 & 0xffffff);
- uint64_t x111 = (x109 + x95);
- uint64_t x112 = (x111 >> 0x19);
- uint32_t x113 = ((uint32_t)x111 & 0x1ffffff);
- uint64_t x114 = (x112 + x94);
- uint64_t x115 = (x114 >> 0x18);
- uint32_t x116 = ((uint32_t)x114 & 0xffffff);
- uint64_t x117 = (x115 + x93);
- uint64_t x118 = (x117 >> 0x19);
- uint32_t x119 = ((uint32_t)x117 & 0x1ffffff);
- uint64_t x120 = (x118 + x92);
- uint64_t x121 = (x120 >> 0x18);
- uint32_t x122 = ((uint32_t)x120 & 0xffffff);
- uint64_t x123 = (x121 + x91);
- uint64_t x124 = (x123 >> 0x19);
- uint32_t x125 = ((uint32_t)x123 & 0x1ffffff);
- uint64_t x126 = (x124 + x90);
- uint64_t x127 = (x126 >> 0x18);
- uint32_t x128 = ((uint32_t)x126 & 0xffffff);
- uint64_t x129 = (x127 + x89);
- uint64_t x130 = (x129 >> 0x18);
- uint32_t x131 = ((uint32_t)x129 & 0xffffff);
- uint64_t x132 = (x130 + x88);
- uint64_t x133 = (x132 >> 0x19);
- uint32_t x134 = ((uint32_t)x132 & 0x1ffffff);
- uint64_t x135 = (x133 + x87);
- uint64_t x136 = (x135 >> 0x18);
- uint32_t x137 = ((uint32_t)x135 & 0xffffff);
- uint64_t x138 = (x136 + x86);
- uint64_t x139 = (x138 >> 0x19);
- uint32_t x140 = ((uint32_t)x138 & 0x1ffffff);
- uint64_t x141 = (x139 + x85);
- uint64_t x142 = (x141 >> 0x18);
- uint32_t x143 = ((uint32_t)x141 & 0xffffff);
- uint64_t x144 = (x142 + x84);
- uint64_t x145 = (x144 >> 0x19);
- uint32_t x146 = ((uint32_t)x144 & 0x1ffffff);
- uint64_t x147 = (x145 + x83);
- uint64_t x148 = (x147 >> 0x18);
- uint32_t x149 = ((uint32_t)x147 & 0xffffff);
- uint64_t x150 = (x148 + x82);
- uint64_t x151 = (x150 >> 0x19);
- uint32_t x152 = ((uint32_t)x150 & 0x1ffffff);
- uint64_t x153 = (x151 + x81);
- uint64_t x154 = (x153 >> 0x18);
- uint32_t x155 = ((uint32_t)x153 & 0xffffff);
- uint64_t x156 = (x154 + x80);
- uint64_t x157 = (x156 >> 0x18);
- uint32_t x158 = ((uint32_t)x156 & 0xffffff);
- uint64_t x159 = (x101 + (0x15 * x157));
- uint32_t x160 = (uint32_t) (x159 >> 0x19);
- uint32_t x161 = ((uint32_t)x159 & 0x1ffffff);
- uint32_t x162 = (x160 + x104);
- uint32_t x163 = (x162 >> 0x18);
- uint32_t x164 = (x162 & 0xffffff);
- return (Return x158, Return x155, Return x152, Return x149, Return x146, Return x143, Return x140, Return x137, Return x134, Return x131, Return x128, Return x125, Return x122, Return x119, Return x116, Return x113, Return x110, (x163 + x107), Return x164, Return x161))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e489m21_20limbs/femulDisplay.v b/src/Specific/solinas32_2e489m21_20limbs/femulDisplay.v
deleted file mode 100644
index 7795ee25b..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e489m21_20limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e489m21_20limbs/fesquare.c b/src/Specific/solinas32_2e489m21_20limbs/fesquare.c
deleted file mode 100644
index 0d9ba98b1..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/fesquare.c
+++ /dev/null
@@ -1,128 +0,0 @@
-static void fesquare(uint32_t out[20], const uint32_t in1[20]) {
- { const uint32_t x37 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x39 = (((uint64_t)x2 * x37) + ((0x2 * ((uint64_t)x4 * x38)) + (((uint64_t)x6 * x36) + ((0x2 * ((uint64_t)x8 * x34)) + (((uint64_t)x10 * x32) + ((0x2 * ((uint64_t)x12 * x30)) + (((uint64_t)x14 * x28) + ((0x2 * ((uint64_t)x16 * x26)) + (((uint64_t)x18 * x24) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + (((uint64_t)x24 * x18) + ((0x2 * ((uint64_t)x26 * x16)) + (((uint64_t)x28 * x14) + ((0x2 * ((uint64_t)x30 * x12)) + (((uint64_t)x32 * x10) + ((0x2 * ((uint64_t)x34 * x8)) + (((uint64_t)x36 * x6) + ((0x2 * ((uint64_t)x38 * x4)) + ((uint64_t)x37 * x2))))))))))))))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x38) + (((uint64_t)x4 * x36) + (((uint64_t)x6 * x34) + (((uint64_t)x8 * x32) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + (((uint64_t)x14 * x26) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (((uint64_t)x26 * x14) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + (((uint64_t)x32 * x8) + (((uint64_t)x34 * x6) + (((uint64_t)x36 * x4) + ((uint64_t)x38 * x2))))))))))))))))))) + (0x15 * ((uint64_t)x37 * x37)));
- { uint64_t x41 = ((((uint64_t)x2 * x36) + ((0x2 * ((uint64_t)x4 * x34)) + (((uint64_t)x6 * x32) + ((0x2 * ((uint64_t)x8 * x30)) + (((uint64_t)x10 * x28) + ((0x2 * ((uint64_t)x12 * x26)) + (((uint64_t)x14 * x24) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + (((uint64_t)x24 * x14) + ((0x2 * ((uint64_t)x26 * x12)) + (((uint64_t)x28 * x10) + ((0x2 * ((uint64_t)x30 * x8)) + (((uint64_t)x32 * x6) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x36 * x2)))))))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x38 * x37)) + (0x2 * ((uint64_t)x37 * x38)))));
- { uint64_t x42 = ((((uint64_t)x2 * x34) + (((uint64_t)x4 * x32) + (((uint64_t)x6 * x30) + (((uint64_t)x8 * x28) + (((uint64_t)x10 * x26) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + (((uint64_t)x26 * x10) + (((uint64_t)x28 * x8) + (((uint64_t)x30 * x6) + (((uint64_t)x32 * x4) + ((uint64_t)x34 * x2))))))))))))))))) + (0x15 * (((uint64_t)x36 * x37) + ((0x2 * ((uint64_t)x38 * x38)) + ((uint64_t)x37 * x36)))));
- { uint64_t x43 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + (((uint64_t)x6 * x28) + ((0x2 * ((uint64_t)x8 * x26)) + (((uint64_t)x10 * x24) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + (((uint64_t)x24 * x10) + ((0x2 * ((uint64_t)x26 * x8)) + (((uint64_t)x28 * x6) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x34 * x37)) + ((0x2 * ((uint64_t)x36 * x38)) + ((0x2 * ((uint64_t)x38 * x36)) + (0x2 * ((uint64_t)x37 * x34)))))));
- { uint64_t x44 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + ((0x2 * ((uint64_t)x12 * x20)) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + ((0x2 * ((uint64_t)x20 * x12)) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x15 * (((uint64_t)x32 * x37) + ((0x2 * ((uint64_t)x34 * x38)) + (((uint64_t)x36 * x36) + ((0x2 * ((uint64_t)x38 * x34)) + ((uint64_t)x37 * x32)))))));
- { uint64_t x45 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + (((uint64_t)x6 * x24) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + (((uint64_t)x24 * x6) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x30 * x37)) + ((0x2 * ((uint64_t)x32 * x38)) + ((0x2 * ((uint64_t)x34 * x36)) + ((0x2 * ((uint64_t)x36 * x34)) + ((0x2 * ((uint64_t)x38 * x32)) + (0x2 * ((uint64_t)x37 * x30)))))))));
- { uint64_t x46 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x15 * (((uint64_t)x28 * x37) + ((0x2 * ((uint64_t)x30 * x38)) + (((uint64_t)x32 * x36) + ((0x2 * ((uint64_t)x34 * x34)) + (((uint64_t)x36 * x32) + ((0x2 * ((uint64_t)x38 * x30)) + ((uint64_t)x37 * x28)))))))));
- { uint64_t x47 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x15 * ((0x2 * ((uint64_t)x26 * x37)) + ((0x2 * ((uint64_t)x28 * x38)) + ((0x2 * ((uint64_t)x30 * x36)) + ((0x2 * ((uint64_t)x32 * x34)) + ((0x2 * ((uint64_t)x34 * x32)) + ((0x2 * ((uint64_t)x36 * x30)) + ((0x2 * ((uint64_t)x38 * x28)) + (0x2 * ((uint64_t)x37 * x26)))))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x15 * (((uint64_t)x24 * x37) + ((0x2 * ((uint64_t)x26 * x38)) + (((uint64_t)x28 * x36) + ((0x2 * ((uint64_t)x30 * x34)) + (((uint64_t)x32 * x32) + ((0x2 * ((uint64_t)x34 * x30)) + (((uint64_t)x36 * x28) + ((0x2 * ((uint64_t)x38 * x26)) + ((uint64_t)x37 * x24)))))))))));
- { uint64_t x49 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x15 * (((uint64_t)x22 * x37) + (((uint64_t)x24 * x38) + (((uint64_t)x26 * x36) + (((uint64_t)x28 * x34) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + (((uint64_t)x34 * x28) + (((uint64_t)x36 * x26) + (((uint64_t)x38 * x24) + ((uint64_t)x37 * x22))))))))))));
- { uint64_t x50 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x15 * ((0x2 * ((uint64_t)x20 * x37)) + ((0x2 * ((uint64_t)x22 * x38)) + (((uint64_t)x24 * x36) + ((0x2 * ((uint64_t)x26 * x34)) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + ((0x2 * ((uint64_t)x34 * x26)) + (((uint64_t)x36 * x24) + ((0x2 * ((uint64_t)x38 * x22)) + (0x2 * ((uint64_t)x37 * x20))))))))))))));
- { uint64_t x51 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x15 * (((uint64_t)x18 * x37) + ((0x2 * ((uint64_t)x20 * x38)) + (((uint64_t)x22 * x36) + (((uint64_t)x24 * x34) + (((uint64_t)x26 * x32) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (((uint64_t)x32 * x26) + (((uint64_t)x34 * x24) + (((uint64_t)x36 * x22) + ((0x2 * ((uint64_t)x38 * x20)) + ((uint64_t)x37 * x18))))))))))))));
- { uint64_t x52 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x15 * ((0x2 * ((uint64_t)x16 * x37)) + ((0x2 * ((uint64_t)x18 * x38)) + ((0x2 * ((uint64_t)x20 * x36)) + ((0x2 * ((uint64_t)x22 * x34)) + (((uint64_t)x24 * x32) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + (((uint64_t)x32 * x24) + ((0x2 * ((uint64_t)x34 * x22)) + ((0x2 * ((uint64_t)x36 * x20)) + ((0x2 * ((uint64_t)x38 * x18)) + (0x2 * ((uint64_t)x37 * x16))))))))))))))));
- { uint64_t x53 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x15 * (((uint64_t)x14 * x37) + ((0x2 * ((uint64_t)x16 * x38)) + (((uint64_t)x18 * x36) + ((0x2 * ((uint64_t)x20 * x34)) + (((uint64_t)x22 * x32) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + (((uint64_t)x32 * x22) + ((0x2 * ((uint64_t)x34 * x20)) + (((uint64_t)x36 * x18) + ((0x2 * ((uint64_t)x38 * x16)) + ((uint64_t)x37 * x14))))))))))))))));
- { uint64_t x54 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x15 * ((0x2 * ((uint64_t)x12 * x37)) + ((0x2 * ((uint64_t)x14 * x38)) + ((0x2 * ((uint64_t)x16 * x36)) + ((0x2 * ((uint64_t)x18 * x34)) + ((0x2 * ((uint64_t)x20 * x32)) + ((0x2 * ((uint64_t)x22 * x30)) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + ((0x2 * ((uint64_t)x30 * x22)) + ((0x2 * ((uint64_t)x32 * x20)) + ((0x2 * ((uint64_t)x34 * x18)) + ((0x2 * ((uint64_t)x36 * x16)) + ((0x2 * ((uint64_t)x38 * x14)) + (0x2 * ((uint64_t)x37 * x12))))))))))))))))));
- { uint64_t x55 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x15 * (((uint64_t)x10 * x37) + ((0x2 * ((uint64_t)x12 * x38)) + (((uint64_t)x14 * x36) + ((0x2 * ((uint64_t)x16 * x34)) + (((uint64_t)x18 * x32) + ((0x2 * ((uint64_t)x20 * x30)) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + ((0x2 * ((uint64_t)x30 * x20)) + (((uint64_t)x32 * x18) + ((0x2 * ((uint64_t)x34 * x16)) + (((uint64_t)x36 * x14) + ((0x2 * ((uint64_t)x38 * x12)) + ((uint64_t)x37 * x10))))))))))))))))));
- { uint64_t x56 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x15 * ((0x2 * ((uint64_t)x8 * x37)) + ((0x2 * ((uint64_t)x10 * x38)) + ((0x2 * ((uint64_t)x12 * x36)) + ((0x2 * ((uint64_t)x14 * x34)) + ((0x2 * ((uint64_t)x16 * x32)) + ((0x2 * ((uint64_t)x18 * x30)) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + (((uint64_t)x24 * x24) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + ((0x2 * ((uint64_t)x30 * x18)) + ((0x2 * ((uint64_t)x32 * x16)) + ((0x2 * ((uint64_t)x34 * x14)) + ((0x2 * ((uint64_t)x36 * x12)) + ((0x2 * ((uint64_t)x38 * x10)) + (0x2 * ((uint64_t)x37 * x8))))))))))))))))))));
- { uint64_t x57 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x15 * (((uint64_t)x6 * x37) + ((0x2 * ((uint64_t)x8 * x38)) + (((uint64_t)x10 * x36) + ((0x2 * ((uint64_t)x12 * x34)) + (((uint64_t)x14 * x32) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + ((0x2 * ((uint64_t)x20 * x26)) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + ((0x2 * ((uint64_t)x26 * x20)) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + (((uint64_t)x32 * x14) + ((0x2 * ((uint64_t)x34 * x12)) + (((uint64_t)x36 * x10) + ((0x2 * ((uint64_t)x38 * x8)) + ((uint64_t)x37 * x6))))))))))))))))))));
- { uint64_t x58 = (((uint64_t)x2 * x2) + (0x15 * ((0x2 * ((uint64_t)x4 * x37)) + ((0x2 * ((uint64_t)x6 * x38)) + ((0x2 * ((uint64_t)x8 * x36)) + ((0x2 * ((uint64_t)x10 * x34)) + ((0x2 * ((uint64_t)x12 * x32)) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + ((0x2 * ((uint64_t)x22 * x22)) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + ((0x2 * ((uint64_t)x32 * x12)) + ((0x2 * ((uint64_t)x34 * x10)) + ((0x2 * ((uint64_t)x36 * x8)) + ((0x2 * ((uint64_t)x38 * x6)) + (0x2 * ((uint64_t)x37 * x4))))))))))))))))))))));
- { uint64_t x59 = (x58 >> 0x19);
- { uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- { uint64_t x61 = (x59 + x57);
- { uint64_t x62 = (x61 >> 0x18);
- { uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- { uint64_t x64 = (x62 + x56);
- { uint64_t x65 = (x64 >> 0x19);
- { uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- { uint64_t x67 = (x65 + x55);
- { uint64_t x68 = (x67 >> 0x18);
- { uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- { uint64_t x70 = (x68 + x54);
- { uint64_t x71 = (x70 >> 0x19);
- { uint32_t x72 = ((uint32_t)x70 & 0x1ffffff);
- { uint64_t x73 = (x71 + x53);
- { uint64_t x74 = (x73 >> 0x18);
- { uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- { uint64_t x76 = (x74 + x52);
- { uint64_t x77 = (x76 >> 0x19);
- { uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- { uint64_t x79 = (x77 + x51);
- { uint64_t x80 = (x79 >> 0x18);
- { uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- { uint64_t x82 = (x80 + x50);
- { uint64_t x83 = (x82 >> 0x19);
- { uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- { uint64_t x85 = (x83 + x49);
- { uint64_t x86 = (x85 >> 0x18);
- { uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- { uint64_t x88 = (x86 + x48);
- { uint64_t x89 = (x88 >> 0x18);
- { uint32_t x90 = ((uint32_t)x88 & 0xffffff);
- { uint64_t x91 = (x89 + x47);
- { uint64_t x92 = (x91 >> 0x19);
- { uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- { uint64_t x94 = (x92 + x46);
- { uint64_t x95 = (x94 >> 0x18);
- { uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- { uint64_t x97 = (x95 + x45);
- { uint64_t x98 = (x97 >> 0x19);
- { uint32_t x99 = ((uint32_t)x97 & 0x1ffffff);
- { uint64_t x100 = (x98 + x44);
- { uint64_t x101 = (x100 >> 0x18);
- { uint32_t x102 = ((uint32_t)x100 & 0xffffff);
- { uint64_t x103 = (x101 + x43);
- { uint64_t x104 = (x103 >> 0x19);
- { uint32_t x105 = ((uint32_t)x103 & 0x1ffffff);
- { uint64_t x106 = (x104 + x42);
- { uint64_t x107 = (x106 >> 0x18);
- { uint32_t x108 = ((uint32_t)x106 & 0xffffff);
- { uint64_t x109 = (x107 + x41);
- { uint64_t x110 = (x109 >> 0x19);
- { uint32_t x111 = ((uint32_t)x109 & 0x1ffffff);
- { uint64_t x112 = (x110 + x40);
- { uint64_t x113 = (x112 >> 0x18);
- { uint32_t x114 = ((uint32_t)x112 & 0xffffff);
- { uint64_t x115 = (x113 + x39);
- { uint64_t x116 = (x115 >> 0x18);
- { uint32_t x117 = ((uint32_t)x115 & 0xffffff);
- { uint64_t x118 = (x60 + (0x15 * x116));
- { uint32_t x119 = (uint32_t) (x118 >> 0x19);
- { uint32_t x120 = ((uint32_t)x118 & 0x1ffffff);
- { uint32_t x121 = (x119 + x63);
- { uint32_t x122 = (x121 >> 0x18);
- { uint32_t x123 = (x121 & 0xffffff);
- out[0] = x120;
- out[1] = x123;
- out[2] = (x122 + x66);
- out[3] = x69;
- out[4] = x72;
- out[5] = x75;
- out[6] = x78;
- out[7] = x81;
- out[8] = x84;
- out[9] = x87;
- out[10] = x90;
- out[11] = x93;
- out[12] = x96;
- out[13] = x99;
- out[14] = x102;
- out[15] = x105;
- out[16] = x108;
- out[17] = x111;
- out[18] = x114;
- out[19] = x117;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e489m21_20limbs/fesquare.v b/src/Specific/solinas32_2e489m21_20limbs/fesquare.v
deleted file mode 100644
index c4809a321..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e489m21_20limbs.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_2e489m21_20limbs/fesquareDisplay.log b/src/Specific/solinas32_2e489m21_20limbs/fesquareDisplay.log
deleted file mode 100644
index fc27a3cd0..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,92 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x37, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x39 = (((uint64_t)x2 * x37) + ((0x2 * ((uint64_t)x4 * x38)) + (((uint64_t)x6 * x36) + ((0x2 * ((uint64_t)x8 * x34)) + (((uint64_t)x10 * x32) + ((0x2 * ((uint64_t)x12 * x30)) + (((uint64_t)x14 * x28) + ((0x2 * ((uint64_t)x16 * x26)) + (((uint64_t)x18 * x24) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + (((uint64_t)x24 * x18) + ((0x2 * ((uint64_t)x26 * x16)) + (((uint64_t)x28 * x14) + ((0x2 * ((uint64_t)x30 * x12)) + (((uint64_t)x32 * x10) + ((0x2 * ((uint64_t)x34 * x8)) + (((uint64_t)x36 * x6) + ((0x2 * ((uint64_t)x38 * x4)) + ((uint64_t)x37 * x2))))))))))))))))))));
- uint64_t x40 = ((((uint64_t)x2 * x38) + (((uint64_t)x4 * x36) + (((uint64_t)x6 * x34) + (((uint64_t)x8 * x32) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + (((uint64_t)x14 * x26) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (((uint64_t)x26 * x14) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + (((uint64_t)x32 * x8) + (((uint64_t)x34 * x6) + (((uint64_t)x36 * x4) + ((uint64_t)x38 * x2))))))))))))))))))) + (0x15 * ((uint64_t)x37 * x37)));
- uint64_t x41 = ((((uint64_t)x2 * x36) + ((0x2 * ((uint64_t)x4 * x34)) + (((uint64_t)x6 * x32) + ((0x2 * ((uint64_t)x8 * x30)) + (((uint64_t)x10 * x28) + ((0x2 * ((uint64_t)x12 * x26)) + (((uint64_t)x14 * x24) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + (((uint64_t)x24 * x14) + ((0x2 * ((uint64_t)x26 * x12)) + (((uint64_t)x28 * x10) + ((0x2 * ((uint64_t)x30 * x8)) + (((uint64_t)x32 * x6) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x36 * x2)))))))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x38 * x37)) + (0x2 * ((uint64_t)x37 * x38)))));
- uint64_t x42 = ((((uint64_t)x2 * x34) + (((uint64_t)x4 * x32) + (((uint64_t)x6 * x30) + (((uint64_t)x8 * x28) + (((uint64_t)x10 * x26) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + (((uint64_t)x26 * x10) + (((uint64_t)x28 * x8) + (((uint64_t)x30 * x6) + (((uint64_t)x32 * x4) + ((uint64_t)x34 * x2))))))))))))))))) + (0x15 * (((uint64_t)x36 * x37) + ((0x2 * ((uint64_t)x38 * x38)) + ((uint64_t)x37 * x36)))));
- uint64_t x43 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + (((uint64_t)x6 * x28) + ((0x2 * ((uint64_t)x8 * x26)) + (((uint64_t)x10 * x24) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + (((uint64_t)x24 * x10) + ((0x2 * ((uint64_t)x26 * x8)) + (((uint64_t)x28 * x6) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x34 * x37)) + ((0x2 * ((uint64_t)x36 * x38)) + ((0x2 * ((uint64_t)x38 * x36)) + (0x2 * ((uint64_t)x37 * x34)))))));
- uint64_t x44 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + ((0x2 * ((uint64_t)x12 * x20)) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + ((0x2 * ((uint64_t)x20 * x12)) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x15 * (((uint64_t)x32 * x37) + ((0x2 * ((uint64_t)x34 * x38)) + (((uint64_t)x36 * x36) + ((0x2 * ((uint64_t)x38 * x34)) + ((uint64_t)x37 * x32)))))));
- uint64_t x45 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + (((uint64_t)x6 * x24) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + (((uint64_t)x24 * x6) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x15 * ((0x2 * ((uint64_t)x30 * x37)) + ((0x2 * ((uint64_t)x32 * x38)) + ((0x2 * ((uint64_t)x34 * x36)) + ((0x2 * ((uint64_t)x36 * x34)) + ((0x2 * ((uint64_t)x38 * x32)) + (0x2 * ((uint64_t)x37 * x30)))))))));
- uint64_t x46 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (0x15 * (((uint64_t)x28 * x37) + ((0x2 * ((uint64_t)x30 * x38)) + (((uint64_t)x32 * x36) + ((0x2 * ((uint64_t)x34 * x34)) + (((uint64_t)x36 * x32) + ((0x2 * ((uint64_t)x38 * x30)) + ((uint64_t)x37 * x28)))))))));
- uint64_t x47 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x15 * ((0x2 * ((uint64_t)x26 * x37)) + ((0x2 * ((uint64_t)x28 * x38)) + ((0x2 * ((uint64_t)x30 * x36)) + ((0x2 * ((uint64_t)x32 * x34)) + ((0x2 * ((uint64_t)x34 * x32)) + ((0x2 * ((uint64_t)x36 * x30)) + ((0x2 * ((uint64_t)x38 * x28)) + (0x2 * ((uint64_t)x37 * x26)))))))))));
- uint64_t x48 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x15 * (((uint64_t)x24 * x37) + ((0x2 * ((uint64_t)x26 * x38)) + (((uint64_t)x28 * x36) + ((0x2 * ((uint64_t)x30 * x34)) + (((uint64_t)x32 * x32) + ((0x2 * ((uint64_t)x34 * x30)) + (((uint64_t)x36 * x28) + ((0x2 * ((uint64_t)x38 * x26)) + ((uint64_t)x37 * x24)))))))))));
- uint64_t x49 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x15 * (((uint64_t)x22 * x37) + (((uint64_t)x24 * x38) + (((uint64_t)x26 * x36) + (((uint64_t)x28 * x34) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + (((uint64_t)x34 * x28) + (((uint64_t)x36 * x26) + (((uint64_t)x38 * x24) + ((uint64_t)x37 * x22))))))))))));
- uint64_t x50 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x15 * ((0x2 * ((uint64_t)x20 * x37)) + ((0x2 * ((uint64_t)x22 * x38)) + (((uint64_t)x24 * x36) + ((0x2 * ((uint64_t)x26 * x34)) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + ((0x2 * ((uint64_t)x34 * x26)) + (((uint64_t)x36 * x24) + ((0x2 * ((uint64_t)x38 * x22)) + (0x2 * ((uint64_t)x37 * x20))))))))))))));
- uint64_t x51 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x15 * (((uint64_t)x18 * x37) + ((0x2 * ((uint64_t)x20 * x38)) + (((uint64_t)x22 * x36) + (((uint64_t)x24 * x34) + (((uint64_t)x26 * x32) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (((uint64_t)x32 * x26) + (((uint64_t)x34 * x24) + (((uint64_t)x36 * x22) + ((0x2 * ((uint64_t)x38 * x20)) + ((uint64_t)x37 * x18))))))))))))));
- uint64_t x52 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x15 * ((0x2 * ((uint64_t)x16 * x37)) + ((0x2 * ((uint64_t)x18 * x38)) + ((0x2 * ((uint64_t)x20 * x36)) + ((0x2 * ((uint64_t)x22 * x34)) + (((uint64_t)x24 * x32) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + (((uint64_t)x32 * x24) + ((0x2 * ((uint64_t)x34 * x22)) + ((0x2 * ((uint64_t)x36 * x20)) + ((0x2 * ((uint64_t)x38 * x18)) + (0x2 * ((uint64_t)x37 * x16))))))))))))))));
- uint64_t x53 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x15 * (((uint64_t)x14 * x37) + ((0x2 * ((uint64_t)x16 * x38)) + (((uint64_t)x18 * x36) + ((0x2 * ((uint64_t)x20 * x34)) + (((uint64_t)x22 * x32) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + (((uint64_t)x32 * x22) + ((0x2 * ((uint64_t)x34 * x20)) + (((uint64_t)x36 * x18) + ((0x2 * ((uint64_t)x38 * x16)) + ((uint64_t)x37 * x14))))))))))))))));
- uint64_t x54 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x15 * ((0x2 * ((uint64_t)x12 * x37)) + ((0x2 * ((uint64_t)x14 * x38)) + ((0x2 * ((uint64_t)x16 * x36)) + ((0x2 * ((uint64_t)x18 * x34)) + ((0x2 * ((uint64_t)x20 * x32)) + ((0x2 * ((uint64_t)x22 * x30)) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + ((0x2 * ((uint64_t)x30 * x22)) + ((0x2 * ((uint64_t)x32 * x20)) + ((0x2 * ((uint64_t)x34 * x18)) + ((0x2 * ((uint64_t)x36 * x16)) + ((0x2 * ((uint64_t)x38 * x14)) + (0x2 * ((uint64_t)x37 * x12))))))))))))))))));
- uint64_t x55 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x15 * (((uint64_t)x10 * x37) + ((0x2 * ((uint64_t)x12 * x38)) + (((uint64_t)x14 * x36) + ((0x2 * ((uint64_t)x16 * x34)) + (((uint64_t)x18 * x32) + ((0x2 * ((uint64_t)x20 * x30)) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + ((0x2 * ((uint64_t)x30 * x20)) + (((uint64_t)x32 * x18) + ((0x2 * ((uint64_t)x34 * x16)) + (((uint64_t)x36 * x14) + ((0x2 * ((uint64_t)x38 * x12)) + ((uint64_t)x37 * x10))))))))))))))))));
- uint64_t x56 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x15 * ((0x2 * ((uint64_t)x8 * x37)) + ((0x2 * ((uint64_t)x10 * x38)) + ((0x2 * ((uint64_t)x12 * x36)) + ((0x2 * ((uint64_t)x14 * x34)) + ((0x2 * ((uint64_t)x16 * x32)) + ((0x2 * ((uint64_t)x18 * x30)) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + (((uint64_t)x24 * x24) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + ((0x2 * ((uint64_t)x30 * x18)) + ((0x2 * ((uint64_t)x32 * x16)) + ((0x2 * ((uint64_t)x34 * x14)) + ((0x2 * ((uint64_t)x36 * x12)) + ((0x2 * ((uint64_t)x38 * x10)) + (0x2 * ((uint64_t)x37 * x8))))))))))))))))))));
- uint64_t x57 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x15 * (((uint64_t)x6 * x37) + ((0x2 * ((uint64_t)x8 * x38)) + (((uint64_t)x10 * x36) + ((0x2 * ((uint64_t)x12 * x34)) + (((uint64_t)x14 * x32) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + ((0x2 * ((uint64_t)x20 * x26)) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + ((0x2 * ((uint64_t)x26 * x20)) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + (((uint64_t)x32 * x14) + ((0x2 * ((uint64_t)x34 * x12)) + (((uint64_t)x36 * x10) + ((0x2 * ((uint64_t)x38 * x8)) + ((uint64_t)x37 * x6))))))))))))))))))));
- uint64_t x58 = (((uint64_t)x2 * x2) + (0x15 * ((0x2 * ((uint64_t)x4 * x37)) + ((0x2 * ((uint64_t)x6 * x38)) + ((0x2 * ((uint64_t)x8 * x36)) + ((0x2 * ((uint64_t)x10 * x34)) + ((0x2 * ((uint64_t)x12 * x32)) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + ((0x2 * ((uint64_t)x22 * x22)) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + ((0x2 * ((uint64_t)x32 * x12)) + ((0x2 * ((uint64_t)x34 * x10)) + ((0x2 * ((uint64_t)x36 * x8)) + ((0x2 * ((uint64_t)x38 * x6)) + (0x2 * ((uint64_t)x37 * x4))))))))))))))))))))));
- uint64_t x59 = (x58 >> 0x19);
- uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- uint64_t x61 = (x59 + x57);
- uint64_t x62 = (x61 >> 0x18);
- uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- uint64_t x64 = (x62 + x56);
- uint64_t x65 = (x64 >> 0x19);
- uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- uint64_t x67 = (x65 + x55);
- uint64_t x68 = (x67 >> 0x18);
- uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- uint64_t x70 = (x68 + x54);
- uint64_t x71 = (x70 >> 0x19);
- uint32_t x72 = ((uint32_t)x70 & 0x1ffffff);
- uint64_t x73 = (x71 + x53);
- uint64_t x74 = (x73 >> 0x18);
- uint32_t x75 = ((uint32_t)x73 & 0xffffff);
- uint64_t x76 = (x74 + x52);
- uint64_t x77 = (x76 >> 0x19);
- uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- uint64_t x79 = (x77 + x51);
- uint64_t x80 = (x79 >> 0x18);
- uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- uint64_t x82 = (x80 + x50);
- uint64_t x83 = (x82 >> 0x19);
- uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- uint64_t x85 = (x83 + x49);
- uint64_t x86 = (x85 >> 0x18);
- uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- uint64_t x88 = (x86 + x48);
- uint64_t x89 = (x88 >> 0x18);
- uint32_t x90 = ((uint32_t)x88 & 0xffffff);
- uint64_t x91 = (x89 + x47);
- uint64_t x92 = (x91 >> 0x19);
- uint32_t x93 = ((uint32_t)x91 & 0x1ffffff);
- uint64_t x94 = (x92 + x46);
- uint64_t x95 = (x94 >> 0x18);
- uint32_t x96 = ((uint32_t)x94 & 0xffffff);
- uint64_t x97 = (x95 + x45);
- uint64_t x98 = (x97 >> 0x19);
- uint32_t x99 = ((uint32_t)x97 & 0x1ffffff);
- uint64_t x100 = (x98 + x44);
- uint64_t x101 = (x100 >> 0x18);
- uint32_t x102 = ((uint32_t)x100 & 0xffffff);
- uint64_t x103 = (x101 + x43);
- uint64_t x104 = (x103 >> 0x19);
- uint32_t x105 = ((uint32_t)x103 & 0x1ffffff);
- uint64_t x106 = (x104 + x42);
- uint64_t x107 = (x106 >> 0x18);
- uint32_t x108 = ((uint32_t)x106 & 0xffffff);
- uint64_t x109 = (x107 + x41);
- uint64_t x110 = (x109 >> 0x19);
- uint32_t x111 = ((uint32_t)x109 & 0x1ffffff);
- uint64_t x112 = (x110 + x40);
- uint64_t x113 = (x112 >> 0x18);
- uint32_t x114 = ((uint32_t)x112 & 0xffffff);
- uint64_t x115 = (x113 + x39);
- uint64_t x116 = (x115 >> 0x18);
- uint32_t x117 = ((uint32_t)x115 & 0xffffff);
- uint64_t x118 = (x60 + (0x15 * x116));
- uint32_t x119 = (uint32_t) (x118 >> 0x19);
- uint32_t x120 = ((uint32_t)x118 & 0x1ffffff);
- uint32_t x121 = (x119 + x63);
- uint32_t x122 = (x121 >> 0x18);
- uint32_t x123 = (x121 & 0xffffff);
- return (Return x117, Return x114, Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, (x122 + x66), Return x123, Return x120))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e489m21_20limbs/fesquareDisplay.v b/src/Specific/solinas32_2e489m21_20limbs/fesquareDisplay.v
deleted file mode 100644
index 76ec1f57f..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e489m21_20limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e489m21_20limbs/fesub.c b/src/Specific/solinas32_2e489m21_20limbs/fesub.c
deleted file mode 100644
index fa8347798..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/fesub.c
+++ /dev/null
@@ -1,63 +0,0 @@
-static void fesub(uint32_t out[20], const uint32_t in1[20], const uint32_t in2[20]) {
- { const uint32_t x40 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x78 = in2[19];
- { const uint32_t x79 = in2[18];
- { const uint32_t x77 = in2[17];
- { const uint32_t x75 = in2[16];
- { const uint32_t x73 = in2[15];
- { const uint32_t x71 = in2[14];
- { const uint32_t x69 = in2[13];
- { const uint32_t x67 = in2[12];
- { const uint32_t x65 = in2[11];
- { const uint32_t x63 = in2[10];
- { const uint32_t x61 = in2[9];
- { const uint32_t x59 = in2[8];
- { const uint32_t x57 = in2[7];
- { const uint32_t x55 = in2[6];
- { const uint32_t x53 = in2[5];
- { const uint32_t x51 = in2[4];
- { const uint32_t x49 = in2[3];
- { const uint32_t x47 = in2[2];
- { const uint32_t x45 = in2[1];
- { const uint32_t x43 = in2[0];
- out[0] = ((0x3ffffd6 + x5) - x43);
- out[1] = ((0x1fffffe + x7) - x45);
- out[2] = ((0x3fffffe + x9) - x47);
- out[3] = ((0x1fffffe + x11) - x49);
- out[4] = ((0x3fffffe + x13) - x51);
- out[5] = ((0x1fffffe + x15) - x53);
- out[6] = ((0x3fffffe + x17) - x55);
- out[7] = ((0x1fffffe + x19) - x57);
- out[8] = ((0x3fffffe + x21) - x59);
- out[9] = ((0x1fffffe + x23) - x61);
- out[10] = ((0x1fffffe + x25) - x63);
- out[11] = ((0x3fffffe + x27) - x65);
- out[12] = ((0x1fffffe + x29) - x67);
- out[13] = ((0x3fffffe + x31) - x69);
- out[14] = ((0x1fffffe + x33) - x71);
- out[15] = ((0x3fffffe + x35) - x73);
- out[16] = ((0x1fffffe + x37) - x75);
- out[17] = ((0x3fffffe + x39) - x77);
- out[18] = ((0x1fffffe + x41) - x79);
- out[19] = ((0x1fffffe + x40) - x78);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e489m21_20limbs/fesub.v b/src/Specific/solinas32_2e489m21_20limbs/fesub.v
deleted file mode 100644
index 18a68ac6d..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e489m21_20limbs.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_2e489m21_20limbs/fesubDisplay.log b/src/Specific/solinas32_2e489m21_20limbs/fesubDisplay.log
deleted file mode 100644
index 4e4869762..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x40, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x78, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43))%core,
- (((0x1fffffe + x40) - x78), ((0x1fffffe + x41) - x79), ((0x3fffffe + x39) - x77), ((0x1fffffe + x37) - x75), ((0x3fffffe + x35) - x73), ((0x1fffffe + x33) - x71), ((0x3fffffe + x31) - x69), ((0x1fffffe + x29) - x67), ((0x3fffffe + x27) - x65), ((0x1fffffe + x25) - x63), ((0x1fffffe + x23) - x61), ((0x3fffffe + x21) - x59), ((0x1fffffe + x19) - x57), ((0x3fffffe + x17) - x55), ((0x1fffffe + x15) - x53), ((0x3fffffe + x13) - x51), ((0x1fffffe + x11) - x49), ((0x3fffffe + x9) - x47), ((0x1fffffe + x7) - x45), ((0x3ffffd6 + x5) - x43)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e489m21_20limbs/fesubDisplay.v b/src/Specific/solinas32_2e489m21_20limbs/fesubDisplay.v
deleted file mode 100644
index 5ab8157d9..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e489m21_20limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e489m21_20limbs/freeze.c b/src/Specific/solinas32_2e489m21_20limbs/freeze.c
deleted file mode 100644
index 74090ad04..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/freeze.c
+++ /dev/null
@@ -1,104 +0,0 @@
-static void freeze(uint32_t out[20], const uint32_t in1[20]) {
- { const uint32_t x37 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffeb);
- { uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x4, 0xffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x6, 0x1ffffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x8, 0xffffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x10, 0x1ffffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x12, 0xffffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x14, 0x1ffffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x16, 0xffffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x18, 0x1ffffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x20, 0xffffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x22, 0xffffff);
- { uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x24, 0x1ffffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x26, 0xffffff);
- { uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x28, 0x1ffffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x30, 0xffffff);
- { uint32_t x85, uint8_t x86 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x32, 0x1ffffff);
- { uint32_t x88, uint8_t x89 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x34, 0xffffff);
- { uint32_t x91, uint8_t x92 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x89, Return x36, 0x1ffffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x38, 0xffffff);
- { uint32_t x97, uint8_t x98 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x37, 0xffffff);
- { uint32_t x99 = cmovznz32(x98, 0x0, 0xffffffff);
- { uint32_t x100 = (x99 & 0x1ffffeb);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x40, Return x100);
- { uint32_t x104 = (x99 & 0xffffff);
- { uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x43, Return x104);
- { uint32_t x108 = (x99 & 0x1ffffff);
- { uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x46, Return x108);
- { uint32_t x112 = (x99 & 0xffffff);
- { uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x49, Return x112);
- { uint32_t x116 = (x99 & 0x1ffffff);
- { uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x52, Return x116);
- { uint32_t x120 = (x99 & 0xffffff);
- { uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x55, Return x120);
- { uint32_t x124 = (x99 & 0x1ffffff);
- { uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x58, Return x124);
- { uint32_t x128 = (x99 & 0xffffff);
- { uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x61, Return x128);
- { uint32_t x132 = (x99 & 0x1ffffff);
- { uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x64, Return x132);
- { uint32_t x136 = (x99 & 0xffffff);
- { uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x67, Return x136);
- { uint32_t x140 = (x99 & 0xffffff);
- { uint32_t x142, uint8_t x143 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x70, Return x140);
- { uint32_t x144 = (x99 & 0x1ffffff);
- { uint32_t x146, uint8_t x147 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x143, Return x73, Return x144);
- { uint32_t x148 = (x99 & 0xffffff);
- { uint32_t x150, uint8_t x151 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x147, Return x76, Return x148);
- { uint32_t x152 = (x99 & 0x1ffffff);
- { uint32_t x154, uint8_t x155 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x151, Return x79, Return x152);
- { uint32_t x156 = (x99 & 0xffffff);
- { uint32_t x158, uint8_t x159 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x155, Return x82, Return x156);
- { uint32_t x160 = (x99 & 0x1ffffff);
- { uint32_t x162, uint8_t x163 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x159, Return x85, Return x160);
- { uint32_t x164 = (x99 & 0xffffff);
- { uint32_t x166, uint8_t x167 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x163, Return x88, Return x164);
- { uint32_t x168 = (x99 & 0x1ffffff);
- { uint32_t x170, uint8_t x171 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x167, Return x91, Return x168);
- { uint32_t x172 = (x99 & 0xffffff);
- { uint32_t x174, uint8_t x175 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x171, Return x94, Return x172);
- { uint32_t x176 = (x99 & 0xffffff);
- { uint32_t x178, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x175, Return x97, Return x176);
- out[0] = x102;
- out[1] = x106;
- out[2] = x110;
- out[3] = x114;
- out[4] = x118;
- out[5] = x122;
- out[6] = x126;
- out[7] = x130;
- out[8] = x134;
- out[9] = x138;
- out[10] = x142;
- out[11] = x146;
- out[12] = x150;
- out[13] = x154;
- out[14] = x158;
- out[15] = x162;
- out[16] = x166;
- out[17] = x170;
- out[18] = x174;
- out[19] = x178;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e489m21_20limbs/freeze.v b/src/Specific/solinas32_2e489m21_20limbs/freeze.v
deleted file mode 100644
index 7c038c01a..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e489m21_20limbs.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_2e489m21_20limbs/freezeDisplay.log b/src/Specific/solinas32_2e489m21_20limbs/freezeDisplay.log
deleted file mode 100644
index c3e45107d..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/freezeDisplay.log
+++ /dev/null
@@ -1,68 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x37, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffeb);
- uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x4, 0xffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x6, 0x1ffffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x8, 0xffffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x10, 0x1ffffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x12, 0xffffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x14, 0x1ffffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x16, 0xffffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x18, 0x1ffffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x20, 0xffffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x22, 0xffffff);
- uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x24, 0x1ffffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x26, 0xffffff);
- uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x28, 0x1ffffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x30, 0xffffff);
- uint32_t x85, uint8_t x86 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x32, 0x1ffffff);
- uint32_t x88, uint8_t x89 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x34, 0xffffff);
- uint32_t x91, uint8_t x92 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x89, Return x36, 0x1ffffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x38, 0xffffff);
- uint32_t x97, uint8_t x98 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x37, 0xffffff);
- uint32_t x99 = cmovznz32(x98, 0x0, 0xffffffff);
- uint32_t x100 = (x99 & 0x1ffffeb);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x40, Return x100);
- uint32_t x104 = (x99 & 0xffffff);
- uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x43, Return x104);
- uint32_t x108 = (x99 & 0x1ffffff);
- uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x46, Return x108);
- uint32_t x112 = (x99 & 0xffffff);
- uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x49, Return x112);
- uint32_t x116 = (x99 & 0x1ffffff);
- uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x52, Return x116);
- uint32_t x120 = (x99 & 0xffffff);
- uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x55, Return x120);
- uint32_t x124 = (x99 & 0x1ffffff);
- uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x58, Return x124);
- uint32_t x128 = (x99 & 0xffffff);
- uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x61, Return x128);
- uint32_t x132 = (x99 & 0x1ffffff);
- uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x64, Return x132);
- uint32_t x136 = (x99 & 0xffffff);
- uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x67, Return x136);
- uint32_t x140 = (x99 & 0xffffff);
- uint32_t x142, uint8_t x143 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x70, Return x140);
- uint32_t x144 = (x99 & 0x1ffffff);
- uint32_t x146, uint8_t x147 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x143, Return x73, Return x144);
- uint32_t x148 = (x99 & 0xffffff);
- uint32_t x150, uint8_t x151 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x147, Return x76, Return x148);
- uint32_t x152 = (x99 & 0x1ffffff);
- uint32_t x154, uint8_t x155 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x151, Return x79, Return x152);
- uint32_t x156 = (x99 & 0xffffff);
- uint32_t x158, uint8_t x159 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x155, Return x82, Return x156);
- uint32_t x160 = (x99 & 0x1ffffff);
- uint32_t x162, uint8_t x163 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x159, Return x85, Return x160);
- uint32_t x164 = (x99 & 0xffffff);
- uint32_t x166, uint8_t x167 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x163, Return x88, Return x164);
- uint32_t x168 = (x99 & 0x1ffffff);
- uint32_t x170, uint8_t x171 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x167, Return x91, Return x168);
- uint32_t x172 = (x99 & 0xffffff);
- uint32_t x174, uint8_t x175 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x171, Return x94, Return x172);
- uint32_t x176 = (x99 & 0xffffff);
- uint32_t x178, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x175, Return x97, Return x176);
- (Return x178, Return x174, Return x170, Return x166, Return x162, Return x158, Return x154, Return x150, Return x146, Return x142, Return x138, Return x134, Return x130, Return x126, Return x122, Return x118, Return x114, Return x110, Return x106, Return x102))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e489m21_20limbs/freezeDisplay.v b/src/Specific/solinas32_2e489m21_20limbs/freezeDisplay.v
deleted file mode 100644
index 99a9d6ce2..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e489m21_20limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e489m21_20limbs/py_interpreter.sh b/src/Specific/solinas32_2e489m21_20limbs/py_interpreter.sh
deleted file mode 100755
index 0d19b63ff..000000000
--- a/src/Specific/solinas32_2e489m21_20limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**489 - 21' -Dmodulus_bytes='24 + 9/20' -Da24='121665'
diff --git a/src/Specific/solinas32_2e495m31_20limbs/CurveParameters.v b/src/Specific/solinas32_2e495m31_20limbs/CurveParameters.v
deleted file mode 100644
index 4e2d82a90..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^495 - 31
-Base: 24.75
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 20%nat;
- base := 24 + 3/4;
- bitwidth := 32;
- s := 2^495;
- c := [(1, 31)];
- carry_chains := Some [seq 0 (pred 20); [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_2e495m31_20limbs/Synthesis.v b/src/Specific/solinas32_2e495m31_20limbs/Synthesis.v
deleted file mode 100644
index 8ae6b2161..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e495m31_20limbs.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_2e495m31_20limbs/compiler.sh b/src/Specific/solinas32_2e495m31_20limbs/compiler.sh
deleted file mode 100755
index 05abc8c8f..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,25,25,24,25,25,25,24,25,25,25,24,25,25,25,24,25,25,25,24}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='20' -Dq_mpz='(1_mpz<<495) - 31' "$@"
diff --git a/src/Specific/solinas32_2e495m31_20limbs/compilerxx.sh b/src/Specific/solinas32_2e495m31_20limbs/compilerxx.sh
deleted file mode 100755
index daab39791..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{25,25,25,24,25,25,25,24,25,25,25,24,25,25,25,24,25,25,25,24}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='20' -Dq_mpz='(1_mpz<<495) - 31' "$@"
diff --git a/src/Specific/solinas32_2e495m31_20limbs/feadd.c b/src/Specific/solinas32_2e495m31_20limbs/feadd.c
deleted file mode 100644
index 28ee6f665..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/feadd.c
+++ /dev/null
@@ -1,63 +0,0 @@
-static void feadd(uint32_t out[20], const uint32_t in1[20], const uint32_t in2[20]) {
- { const uint32_t x40 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x78 = in2[19];
- { const uint32_t x79 = in2[18];
- { const uint32_t x77 = in2[17];
- { const uint32_t x75 = in2[16];
- { const uint32_t x73 = in2[15];
- { const uint32_t x71 = in2[14];
- { const uint32_t x69 = in2[13];
- { const uint32_t x67 = in2[12];
- { const uint32_t x65 = in2[11];
- { const uint32_t x63 = in2[10];
- { const uint32_t x61 = in2[9];
- { const uint32_t x59 = in2[8];
- { const uint32_t x57 = in2[7];
- { const uint32_t x55 = in2[6];
- { const uint32_t x53 = in2[5];
- { const uint32_t x51 = in2[4];
- { const uint32_t x49 = in2[3];
- { const uint32_t x47 = in2[2];
- { const uint32_t x45 = in2[1];
- { const uint32_t x43 = in2[0];
- out[0] = (x5 + x43);
- out[1] = (x7 + x45);
- out[2] = (x9 + x47);
- out[3] = (x11 + x49);
- out[4] = (x13 + x51);
- out[5] = (x15 + x53);
- out[6] = (x17 + x55);
- out[7] = (x19 + x57);
- out[8] = (x21 + x59);
- out[9] = (x23 + x61);
- out[10] = (x25 + x63);
- out[11] = (x27 + x65);
- out[12] = (x29 + x67);
- out[13] = (x31 + x69);
- out[14] = (x33 + x71);
- out[15] = (x35 + x73);
- out[16] = (x37 + x75);
- out[17] = (x39 + x77);
- out[18] = (x41 + x79);
- out[19] = (x40 + x78);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e495m31_20limbs/feadd.v b/src/Specific/solinas32_2e495m31_20limbs/feadd.v
deleted file mode 100644
index 801a6dae0..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e495m31_20limbs.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_2e495m31_20limbs/feaddDisplay.log b/src/Specific/solinas32_2e495m31_20limbs/feaddDisplay.log
deleted file mode 100644
index eebe17777..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x40, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x78, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43))%core,
- ((x40 + x78), (x41 + x79), (x39 + x77), (x37 + x75), (x35 + x73), (x33 + x71), (x31 + x69), (x29 + x67), (x27 + x65), (x25 + x63), (x23 + x61), (x21 + x59), (x19 + x57), (x17 + x55), (x15 + x53), (x13 + x51), (x11 + x49), (x9 + x47), (x7 + x45), (x5 + x43)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e495m31_20limbs/feaddDisplay.v b/src/Specific/solinas32_2e495m31_20limbs/feaddDisplay.v
deleted file mode 100644
index 608b1fdd0..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e495m31_20limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e495m31_20limbs/fecarry.v b/src/Specific/solinas32_2e495m31_20limbs/fecarry.v
deleted file mode 100644
index 6855cba8c..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e495m31_20limbs.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_2e495m31_20limbs/fecarryDisplay.v b/src/Specific/solinas32_2e495m31_20limbs/fecarryDisplay.v
deleted file mode 100644
index 0de3faef2..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e495m31_20limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e495m31_20limbs/femul.c b/src/Specific/solinas32_2e495m31_20limbs/femul.c
deleted file mode 100644
index 7818797cb..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/femul.c
+++ /dev/null
@@ -1,148 +0,0 @@
-static void femul(uint32_t out[20], const uint32_t in1[20], const uint32_t in2[20]) {
- { const uint32_t x40 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x78 = in2[19];
- { const uint32_t x79 = in2[18];
- { const uint32_t x77 = in2[17];
- { const uint32_t x75 = in2[16];
- { const uint32_t x73 = in2[15];
- { const uint32_t x71 = in2[14];
- { const uint32_t x69 = in2[13];
- { const uint32_t x67 = in2[12];
- { const uint32_t x65 = in2[11];
- { const uint32_t x63 = in2[10];
- { const uint32_t x61 = in2[9];
- { const uint32_t x59 = in2[8];
- { const uint32_t x57 = in2[7];
- { const uint32_t x55 = in2[6];
- { const uint32_t x53 = in2[5];
- { const uint32_t x51 = in2[4];
- { const uint32_t x49 = in2[3];
- { const uint32_t x47 = in2[2];
- { const uint32_t x45 = in2[1];
- { const uint32_t x43 = in2[0];
- { uint64_t x80 = (((uint64_t)x5 * x78) + (((uint64_t)x7 * x79) + (((uint64_t)x9 * x77) + (((uint64_t)x11 * x75) + (((uint64_t)x13 * x73) + (((uint64_t)x15 * x71) + (((uint64_t)x17 * x69) + (((uint64_t)x19 * x67) + (((uint64_t)x21 * x65) + (((uint64_t)x23 * x63) + (((uint64_t)x25 * x61) + (((uint64_t)x27 * x59) + (((uint64_t)x29 * x57) + (((uint64_t)x31 * x55) + (((uint64_t)x33 * x53) + (((uint64_t)x35 * x51) + (((uint64_t)x37 * x49) + (((uint64_t)x39 * x47) + (((uint64_t)x41 * x45) + ((uint64_t)x40 * x43))))))))))))))))))));
- { uint64_t x81 = ((((uint64_t)x5 * x79) + (((uint64_t)x7 * x77) + (((uint64_t)x9 * x75) + ((0x2 * ((uint64_t)x11 * x73)) + (((uint64_t)x13 * x71) + (((uint64_t)x15 * x69) + (((uint64_t)x17 * x67) + ((0x2 * ((uint64_t)x19 * x65)) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + ((0x2 * ((uint64_t)x27 * x57)) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + ((0x2 * ((uint64_t)x35 * x49)) + (((uint64_t)x37 * x47) + (((uint64_t)x39 * x45) + ((uint64_t)x41 * x43))))))))))))))))))) + (0x1f * (0x2 * ((uint64_t)x40 * x78))));
- { uint64_t x82 = ((((uint64_t)x5 * x77) + (((uint64_t)x7 * x75) + ((0x2 * ((uint64_t)x9 * x73)) + ((0x2 * ((uint64_t)x11 * x71)) + (((uint64_t)x13 * x69) + (((uint64_t)x15 * x67) + ((0x2 * ((uint64_t)x17 * x65)) + ((0x2 * ((uint64_t)x19 * x63)) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + ((0x2 * ((uint64_t)x25 * x57)) + ((0x2 * ((uint64_t)x27 * x55)) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + ((0x2 * ((uint64_t)x33 * x49)) + ((0x2 * ((uint64_t)x35 * x47)) + (((uint64_t)x37 * x45) + ((uint64_t)x39 * x43)))))))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x41 * x78)) + (0x2 * ((uint64_t)x40 * x79)))));
- { uint64_t x83 = ((((uint64_t)x5 * x75) + ((0x2 * ((uint64_t)x7 * x73)) + ((0x2 * ((uint64_t)x9 * x71)) + ((0x2 * ((uint64_t)x11 * x69)) + (((uint64_t)x13 * x67) + ((0x2 * ((uint64_t)x15 * x65)) + ((0x2 * ((uint64_t)x17 * x63)) + ((0x2 * ((uint64_t)x19 * x61)) + (((uint64_t)x21 * x59) + ((0x2 * ((uint64_t)x23 * x57)) + ((0x2 * ((uint64_t)x25 * x55)) + ((0x2 * ((uint64_t)x27 * x53)) + (((uint64_t)x29 * x51) + ((0x2 * ((uint64_t)x31 * x49)) + ((0x2 * ((uint64_t)x33 * x47)) + ((0x2 * ((uint64_t)x35 * x45)) + ((uint64_t)x37 * x43))))))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x39 * x78)) + ((0x2 * ((uint64_t)x41 * x79)) + (0x2 * ((uint64_t)x40 * x77))))));
- { uint64_t x84 = ((((uint64_t)x5 * x73) + (((uint64_t)x7 * x71) + (((uint64_t)x9 * x69) + (((uint64_t)x11 * x67) + (((uint64_t)x13 * x65) + (((uint64_t)x15 * x63) + (((uint64_t)x17 * x61) + (((uint64_t)x19 * x59) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + (((uint64_t)x29 * x49) + (((uint64_t)x31 * x47) + (((uint64_t)x33 * x45) + ((uint64_t)x35 * x43)))))))))))))))) + (0x1f * (((uint64_t)x37 * x78) + (((uint64_t)x39 * x79) + (((uint64_t)x41 * x77) + ((uint64_t)x40 * x75))))));
- { uint64_t x85 = ((((uint64_t)x5 * x71) + (((uint64_t)x7 * x69) + (((uint64_t)x9 * x67) + ((0x2 * ((uint64_t)x11 * x65)) + (((uint64_t)x13 * x63) + (((uint64_t)x15 * x61) + (((uint64_t)x17 * x59) + ((0x2 * ((uint64_t)x19 * x57)) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + ((0x2 * ((uint64_t)x27 * x49)) + (((uint64_t)x29 * x47) + (((uint64_t)x31 * x45) + ((uint64_t)x33 * x43))))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x35 * x78)) + (((uint64_t)x37 * x79) + (((uint64_t)x39 * x77) + (((uint64_t)x41 * x75) + (0x2 * ((uint64_t)x40 * x73))))))));
- { uint64_t x86 = ((((uint64_t)x5 * x69) + (((uint64_t)x7 * x67) + ((0x2 * ((uint64_t)x9 * x65)) + ((0x2 * ((uint64_t)x11 * x63)) + (((uint64_t)x13 * x61) + (((uint64_t)x15 * x59) + ((0x2 * ((uint64_t)x17 * x57)) + ((0x2 * ((uint64_t)x19 * x55)) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + (((uint64_t)x29 * x45) + ((uint64_t)x31 * x43)))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x33 * x78)) + ((0x2 * ((uint64_t)x35 * x79)) + (((uint64_t)x37 * x77) + (((uint64_t)x39 * x75) + ((0x2 * ((uint64_t)x41 * x73)) + (0x2 * ((uint64_t)x40 * x71)))))))));
- { uint64_t x87 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + (((uint64_t)x13 * x59) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + (((uint64_t)x21 * x51) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((uint64_t)x29 * x43))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x31 * x78)) + ((0x2 * ((uint64_t)x33 * x79)) + ((0x2 * ((uint64_t)x35 * x77)) + (((uint64_t)x37 * x75) + ((0x2 * ((uint64_t)x39 * x73)) + ((0x2 * ((uint64_t)x41 * x71)) + (0x2 * ((uint64_t)x40 * x69))))))))));
- { uint64_t x88 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + ((uint64_t)x27 * x43)))))))))))) + (0x1f * (((uint64_t)x29 * x78) + (((uint64_t)x31 * x79) + (((uint64_t)x33 * x77) + (((uint64_t)x35 * x75) + (((uint64_t)x37 * x73) + (((uint64_t)x39 * x71) + (((uint64_t)x41 * x69) + ((uint64_t)x40 * x67))))))))));
- { uint64_t x89 = ((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + (((uint64_t)x9 * x59) + ((0x2 * ((uint64_t)x11 * x57)) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + ((0x2 * ((uint64_t)x19 * x49)) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + ((uint64_t)x25 * x43))))))))))) + (0x1f * ((0x2 * ((uint64_t)x27 * x78)) + (((uint64_t)x29 * x79) + (((uint64_t)x31 * x77) + (((uint64_t)x33 * x75) + ((0x2 * ((uint64_t)x35 * x73)) + (((uint64_t)x37 * x71) + (((uint64_t)x39 * x69) + (((uint64_t)x41 * x67) + (0x2 * ((uint64_t)x40 * x65))))))))))));
- { uint64_t x90 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + ((0x2 * ((uint64_t)x9 * x57)) + ((0x2 * ((uint64_t)x11 * x55)) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + ((0x2 * ((uint64_t)x17 * x49)) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + ((uint64_t)x23 * x43)))))))))) + (0x1f * ((0x2 * ((uint64_t)x25 * x78)) + ((0x2 * ((uint64_t)x27 * x79)) + (((uint64_t)x29 * x77) + (((uint64_t)x31 * x75) + ((0x2 * ((uint64_t)x33 * x73)) + ((0x2 * ((uint64_t)x35 * x71)) + (((uint64_t)x37 * x69) + (((uint64_t)x39 * x67) + ((0x2 * ((uint64_t)x41 * x65)) + (0x2 * ((uint64_t)x40 * x63)))))))))))));
- { uint64_t x91 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + (((uint64_t)x13 * x51) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + ((uint64_t)x21 * x43))))))))) + (0x1f * ((0x2 * ((uint64_t)x23 * x78)) + ((0x2 * ((uint64_t)x25 * x79)) + ((0x2 * ((uint64_t)x27 * x77)) + (((uint64_t)x29 * x75) + ((0x2 * ((uint64_t)x31 * x73)) + ((0x2 * ((uint64_t)x33 * x71)) + ((0x2 * ((uint64_t)x35 * x69)) + (((uint64_t)x37 * x67) + ((0x2 * ((uint64_t)x39 * x65)) + ((0x2 * ((uint64_t)x41 * x63)) + (0x2 * ((uint64_t)x40 * x61))))))))))))));
- { uint64_t x92 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + ((uint64_t)x19 * x43)))))))) + (0x1f * (((uint64_t)x21 * x78) + (((uint64_t)x23 * x79) + (((uint64_t)x25 * x77) + (((uint64_t)x27 * x75) + (((uint64_t)x29 * x73) + (((uint64_t)x31 * x71) + (((uint64_t)x33 * x69) + (((uint64_t)x35 * x67) + (((uint64_t)x37 * x65) + (((uint64_t)x39 * x63) + (((uint64_t)x41 * x61) + ((uint64_t)x40 * x59))))))))))))));
- { uint64_t x93 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + ((0x2 * ((uint64_t)x11 * x49)) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + ((uint64_t)x17 * x43))))))) + (0x1f * ((0x2 * ((uint64_t)x19 * x78)) + (((uint64_t)x21 * x79) + (((uint64_t)x23 * x77) + (((uint64_t)x25 * x75) + ((0x2 * ((uint64_t)x27 * x73)) + (((uint64_t)x29 * x71) + (((uint64_t)x31 * x69) + (((uint64_t)x33 * x67) + ((0x2 * ((uint64_t)x35 * x65)) + (((uint64_t)x37 * x63) + (((uint64_t)x39 * x61) + (((uint64_t)x41 * x59) + (0x2 * ((uint64_t)x40 * x57))))))))))))))));
- { uint64_t x94 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + (((uint64_t)x13 * x45) + ((uint64_t)x15 * x43)))))) + (0x1f * ((0x2 * ((uint64_t)x17 * x78)) + ((0x2 * ((uint64_t)x19 * x79)) + (((uint64_t)x21 * x77) + (((uint64_t)x23 * x75) + ((0x2 * ((uint64_t)x25 * x73)) + ((0x2 * ((uint64_t)x27 * x71)) + (((uint64_t)x29 * x69) + (((uint64_t)x31 * x67) + ((0x2 * ((uint64_t)x33 * x65)) + ((0x2 * ((uint64_t)x35 * x63)) + (((uint64_t)x37 * x61) + (((uint64_t)x39 * x59) + ((0x2 * ((uint64_t)x41 * x57)) + (0x2 * ((uint64_t)x40 * x55)))))))))))))))));
- { uint64_t x95 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((uint64_t)x13 * x43))))) + (0x1f * ((0x2 * ((uint64_t)x15 * x78)) + ((0x2 * ((uint64_t)x17 * x79)) + ((0x2 * ((uint64_t)x19 * x77)) + (((uint64_t)x21 * x75) + ((0x2 * ((uint64_t)x23 * x73)) + ((0x2 * ((uint64_t)x25 * x71)) + ((0x2 * ((uint64_t)x27 * x69)) + (((uint64_t)x29 * x67) + ((0x2 * ((uint64_t)x31 * x65)) + ((0x2 * ((uint64_t)x33 * x63)) + ((0x2 * ((uint64_t)x35 * x61)) + (((uint64_t)x37 * x59) + ((0x2 * ((uint64_t)x39 * x57)) + ((0x2 * ((uint64_t)x41 * x55)) + (0x2 * ((uint64_t)x40 * x53))))))))))))))))));
- { uint64_t x96 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + ((uint64_t)x11 * x43)))) + (0x1f * (((uint64_t)x13 * x78) + (((uint64_t)x15 * x79) + (((uint64_t)x17 * x77) + (((uint64_t)x19 * x75) + (((uint64_t)x21 * x73) + (((uint64_t)x23 * x71) + (((uint64_t)x25 * x69) + (((uint64_t)x27 * x67) + (((uint64_t)x29 * x65) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + (((uint64_t)x35 * x59) + (((uint64_t)x37 * x57) + (((uint64_t)x39 * x55) + (((uint64_t)x41 * x53) + ((uint64_t)x40 * x51))))))))))))))))));
- { uint64_t x97 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + ((uint64_t)x9 * x43))) + (0x1f * ((0x2 * ((uint64_t)x11 * x78)) + (((uint64_t)x13 * x79) + (((uint64_t)x15 * x77) + (((uint64_t)x17 * x75) + ((0x2 * ((uint64_t)x19 * x73)) + (((uint64_t)x21 * x71) + (((uint64_t)x23 * x69) + (((uint64_t)x25 * x67) + ((0x2 * ((uint64_t)x27 * x65)) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + (((uint64_t)x33 * x59) + ((0x2 * ((uint64_t)x35 * x57)) + (((uint64_t)x37 * x55) + (((uint64_t)x39 * x53) + (((uint64_t)x41 * x51) + (0x2 * ((uint64_t)x40 * x49))))))))))))))))))));
- { uint64_t x98 = ((((uint64_t)x5 * x45) + ((uint64_t)x7 * x43)) + (0x1f * ((0x2 * ((uint64_t)x9 * x78)) + ((0x2 * ((uint64_t)x11 * x79)) + (((uint64_t)x13 * x77) + (((uint64_t)x15 * x75) + ((0x2 * ((uint64_t)x17 * x73)) + ((0x2 * ((uint64_t)x19 * x71)) + (((uint64_t)x21 * x69) + (((uint64_t)x23 * x67) + ((0x2 * ((uint64_t)x25 * x65)) + ((0x2 * ((uint64_t)x27 * x63)) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + ((0x2 * ((uint64_t)x33 * x57)) + ((0x2 * ((uint64_t)x35 * x55)) + (((uint64_t)x37 * x53) + (((uint64_t)x39 * x51) + ((0x2 * ((uint64_t)x41 * x49)) + (0x2 * ((uint64_t)x40 * x47)))))))))))))))))))));
- { uint64_t x99 = (((uint64_t)x5 * x43) + (0x1f * ((0x2 * ((uint64_t)x7 * x78)) + ((0x2 * ((uint64_t)x9 * x79)) + ((0x2 * ((uint64_t)x11 * x77)) + (((uint64_t)x13 * x75) + ((0x2 * ((uint64_t)x15 * x73)) + ((0x2 * ((uint64_t)x17 * x71)) + ((0x2 * ((uint64_t)x19 * x69)) + (((uint64_t)x21 * x67) + ((0x2 * ((uint64_t)x23 * x65)) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + (((uint64_t)x29 * x59) + ((0x2 * ((uint64_t)x31 * x57)) + ((0x2 * ((uint64_t)x33 * x55)) + ((0x2 * ((uint64_t)x35 * x53)) + (((uint64_t)x37 * x51) + ((0x2 * ((uint64_t)x39 * x49)) + ((0x2 * ((uint64_t)x41 * x47)) + (0x2 * ((uint64_t)x40 * x45))))))))))))))))))))));
- { uint64_t x100 = (x99 >> 0x19);
- { uint32_t x101 = ((uint32_t)x99 & 0x1ffffff);
- { uint64_t x102 = (x100 + x98);
- { uint64_t x103 = (x102 >> 0x19);
- { uint32_t x104 = ((uint32_t)x102 & 0x1ffffff);
- { uint64_t x105 = (x103 + x97);
- { uint64_t x106 = (x105 >> 0x19);
- { uint32_t x107 = ((uint32_t)x105 & 0x1ffffff);
- { uint64_t x108 = (x106 + x96);
- { uint64_t x109 = (x108 >> 0x18);
- { uint32_t x110 = ((uint32_t)x108 & 0xffffff);
- { uint64_t x111 = (x109 + x95);
- { uint64_t x112 = (x111 >> 0x19);
- { uint32_t x113 = ((uint32_t)x111 & 0x1ffffff);
- { uint64_t x114 = (x112 + x94);
- { uint64_t x115 = (x114 >> 0x19);
- { uint32_t x116 = ((uint32_t)x114 & 0x1ffffff);
- { uint64_t x117 = (x115 + x93);
- { uint64_t x118 = (x117 >> 0x19);
- { uint32_t x119 = ((uint32_t)x117 & 0x1ffffff);
- { uint64_t x120 = (x118 + x92);
- { uint64_t x121 = (x120 >> 0x18);
- { uint32_t x122 = ((uint32_t)x120 & 0xffffff);
- { uint64_t x123 = (x121 + x91);
- { uint64_t x124 = (x123 >> 0x19);
- { uint32_t x125 = ((uint32_t)x123 & 0x1ffffff);
- { uint64_t x126 = (x124 + x90);
- { uint64_t x127 = (x126 >> 0x19);
- { uint32_t x128 = ((uint32_t)x126 & 0x1ffffff);
- { uint64_t x129 = (x127 + x89);
- { uint64_t x130 = (x129 >> 0x19);
- { uint32_t x131 = ((uint32_t)x129 & 0x1ffffff);
- { uint64_t x132 = (x130 + x88);
- { uint64_t x133 = (x132 >> 0x18);
- { uint32_t x134 = ((uint32_t)x132 & 0xffffff);
- { uint64_t x135 = (x133 + x87);
- { uint64_t x136 = (x135 >> 0x19);
- { uint32_t x137 = ((uint32_t)x135 & 0x1ffffff);
- { uint64_t x138 = (x136 + x86);
- { uint64_t x139 = (x138 >> 0x19);
- { uint32_t x140 = ((uint32_t)x138 & 0x1ffffff);
- { uint64_t x141 = (x139 + x85);
- { uint64_t x142 = (x141 >> 0x19);
- { uint32_t x143 = ((uint32_t)x141 & 0x1ffffff);
- { uint64_t x144 = (x142 + x84);
- { uint64_t x145 = (x144 >> 0x18);
- { uint32_t x146 = ((uint32_t)x144 & 0xffffff);
- { uint64_t x147 = (x145 + x83);
- { uint64_t x148 = (x147 >> 0x19);
- { uint32_t x149 = ((uint32_t)x147 & 0x1ffffff);
- { uint64_t x150 = (x148 + x82);
- { uint64_t x151 = (x150 >> 0x19);
- { uint32_t x152 = ((uint32_t)x150 & 0x1ffffff);
- { uint64_t x153 = (x151 + x81);
- { uint64_t x154 = (x153 >> 0x19);
- { uint32_t x155 = ((uint32_t)x153 & 0x1ffffff);
- { uint64_t x156 = (x154 + x80);
- { uint64_t x157 = (x156 >> 0x18);
- { uint32_t x158 = ((uint32_t)x156 & 0xffffff);
- { uint64_t x159 = (x101 + (0x1f * x157));
- { uint32_t x160 = (uint32_t) (x159 >> 0x19);
- { uint32_t x161 = ((uint32_t)x159 & 0x1ffffff);
- { uint32_t x162 = (x160 + x104);
- { uint32_t x163 = (x162 >> 0x19);
- { uint32_t x164 = (x162 & 0x1ffffff);
- out[0] = x161;
- out[1] = x164;
- out[2] = (x163 + x107);
- out[3] = x110;
- out[4] = x113;
- out[5] = x116;
- out[6] = x119;
- out[7] = x122;
- out[8] = x125;
- out[9] = x128;
- out[10] = x131;
- out[11] = x134;
- out[12] = x137;
- out[13] = x140;
- out[14] = x143;
- out[15] = x146;
- out[16] = x149;
- out[17] = x152;
- out[18] = x155;
- out[19] = x158;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e495m31_20limbs/femul.v b/src/Specific/solinas32_2e495m31_20limbs/femul.v
deleted file mode 100644
index 7ea6d31ef..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e495m31_20limbs.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_2e495m31_20limbs/femulDisplay.log b/src/Specific/solinas32_2e495m31_20limbs/femulDisplay.log
deleted file mode 100644
index 08b1f4dc7..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/femulDisplay.log
+++ /dev/null
@@ -1,92 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x40, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x78, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43))%core,
- uint64_t x80 = (((uint64_t)x5 * x78) + (((uint64_t)x7 * x79) + (((uint64_t)x9 * x77) + (((uint64_t)x11 * x75) + (((uint64_t)x13 * x73) + (((uint64_t)x15 * x71) + (((uint64_t)x17 * x69) + (((uint64_t)x19 * x67) + (((uint64_t)x21 * x65) + (((uint64_t)x23 * x63) + (((uint64_t)x25 * x61) + (((uint64_t)x27 * x59) + (((uint64_t)x29 * x57) + (((uint64_t)x31 * x55) + (((uint64_t)x33 * x53) + (((uint64_t)x35 * x51) + (((uint64_t)x37 * x49) + (((uint64_t)x39 * x47) + (((uint64_t)x41 * x45) + ((uint64_t)x40 * x43))))))))))))))))))));
- uint64_t x81 = ((((uint64_t)x5 * x79) + (((uint64_t)x7 * x77) + (((uint64_t)x9 * x75) + ((0x2 * ((uint64_t)x11 * x73)) + (((uint64_t)x13 * x71) + (((uint64_t)x15 * x69) + (((uint64_t)x17 * x67) + ((0x2 * ((uint64_t)x19 * x65)) + (((uint64_t)x21 * x63) + (((uint64_t)x23 * x61) + (((uint64_t)x25 * x59) + ((0x2 * ((uint64_t)x27 * x57)) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + (((uint64_t)x33 * x51) + ((0x2 * ((uint64_t)x35 * x49)) + (((uint64_t)x37 * x47) + (((uint64_t)x39 * x45) + ((uint64_t)x41 * x43))))))))))))))))))) + (0x1f * (0x2 * ((uint64_t)x40 * x78))));
- uint64_t x82 = ((((uint64_t)x5 * x77) + (((uint64_t)x7 * x75) + ((0x2 * ((uint64_t)x9 * x73)) + ((0x2 * ((uint64_t)x11 * x71)) + (((uint64_t)x13 * x69) + (((uint64_t)x15 * x67) + ((0x2 * ((uint64_t)x17 * x65)) + ((0x2 * ((uint64_t)x19 * x63)) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + ((0x2 * ((uint64_t)x25 * x57)) + ((0x2 * ((uint64_t)x27 * x55)) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + ((0x2 * ((uint64_t)x33 * x49)) + ((0x2 * ((uint64_t)x35 * x47)) + (((uint64_t)x37 * x45) + ((uint64_t)x39 * x43)))))))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x41 * x78)) + (0x2 * ((uint64_t)x40 * x79)))));
- uint64_t x83 = ((((uint64_t)x5 * x75) + ((0x2 * ((uint64_t)x7 * x73)) + ((0x2 * ((uint64_t)x9 * x71)) + ((0x2 * ((uint64_t)x11 * x69)) + (((uint64_t)x13 * x67) + ((0x2 * ((uint64_t)x15 * x65)) + ((0x2 * ((uint64_t)x17 * x63)) + ((0x2 * ((uint64_t)x19 * x61)) + (((uint64_t)x21 * x59) + ((0x2 * ((uint64_t)x23 * x57)) + ((0x2 * ((uint64_t)x25 * x55)) + ((0x2 * ((uint64_t)x27 * x53)) + (((uint64_t)x29 * x51) + ((0x2 * ((uint64_t)x31 * x49)) + ((0x2 * ((uint64_t)x33 * x47)) + ((0x2 * ((uint64_t)x35 * x45)) + ((uint64_t)x37 * x43))))))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x39 * x78)) + ((0x2 * ((uint64_t)x41 * x79)) + (0x2 * ((uint64_t)x40 * x77))))));
- uint64_t x84 = ((((uint64_t)x5 * x73) + (((uint64_t)x7 * x71) + (((uint64_t)x9 * x69) + (((uint64_t)x11 * x67) + (((uint64_t)x13 * x65) + (((uint64_t)x15 * x63) + (((uint64_t)x17 * x61) + (((uint64_t)x19 * x59) + (((uint64_t)x21 * x57) + (((uint64_t)x23 * x55) + (((uint64_t)x25 * x53) + (((uint64_t)x27 * x51) + (((uint64_t)x29 * x49) + (((uint64_t)x31 * x47) + (((uint64_t)x33 * x45) + ((uint64_t)x35 * x43)))))))))))))))) + (0x1f * (((uint64_t)x37 * x78) + (((uint64_t)x39 * x79) + (((uint64_t)x41 * x77) + ((uint64_t)x40 * x75))))));
- uint64_t x85 = ((((uint64_t)x5 * x71) + (((uint64_t)x7 * x69) + (((uint64_t)x9 * x67) + ((0x2 * ((uint64_t)x11 * x65)) + (((uint64_t)x13 * x63) + (((uint64_t)x15 * x61) + (((uint64_t)x17 * x59) + ((0x2 * ((uint64_t)x19 * x57)) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + (((uint64_t)x25 * x51) + ((0x2 * ((uint64_t)x27 * x49)) + (((uint64_t)x29 * x47) + (((uint64_t)x31 * x45) + ((uint64_t)x33 * x43))))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x35 * x78)) + (((uint64_t)x37 * x79) + (((uint64_t)x39 * x77) + (((uint64_t)x41 * x75) + (0x2 * ((uint64_t)x40 * x73))))))));
- uint64_t x86 = ((((uint64_t)x5 * x69) + (((uint64_t)x7 * x67) + ((0x2 * ((uint64_t)x9 * x65)) + ((0x2 * ((uint64_t)x11 * x63)) + (((uint64_t)x13 * x61) + (((uint64_t)x15 * x59) + ((0x2 * ((uint64_t)x17 * x57)) + ((0x2 * ((uint64_t)x19 * x55)) + (((uint64_t)x21 * x53) + (((uint64_t)x23 * x51) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + (((uint64_t)x29 * x45) + ((uint64_t)x31 * x43)))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x33 * x78)) + ((0x2 * ((uint64_t)x35 * x79)) + (((uint64_t)x37 * x77) + (((uint64_t)x39 * x75) + ((0x2 * ((uint64_t)x41 * x73)) + (0x2 * ((uint64_t)x40 * x71)))))))));
- uint64_t x87 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + (((uint64_t)x13 * x59) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + (((uint64_t)x21 * x51) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((uint64_t)x29 * x43))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x31 * x78)) + ((0x2 * ((uint64_t)x33 * x79)) + ((0x2 * ((uint64_t)x35 * x77)) + (((uint64_t)x37 * x75) + ((0x2 * ((uint64_t)x39 * x73)) + ((0x2 * ((uint64_t)x41 * x71)) + (0x2 * ((uint64_t)x40 * x69))))))))));
- uint64_t x88 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + ((uint64_t)x27 * x43)))))))))))) + (0x1f * (((uint64_t)x29 * x78) + (((uint64_t)x31 * x79) + (((uint64_t)x33 * x77) + (((uint64_t)x35 * x75) + (((uint64_t)x37 * x73) + (((uint64_t)x39 * x71) + (((uint64_t)x41 * x69) + ((uint64_t)x40 * x67))))))))));
- uint64_t x89 = ((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + (((uint64_t)x9 * x59) + ((0x2 * ((uint64_t)x11 * x57)) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + ((0x2 * ((uint64_t)x19 * x49)) + (((uint64_t)x21 * x47) + (((uint64_t)x23 * x45) + ((uint64_t)x25 * x43))))))))))) + (0x1f * ((0x2 * ((uint64_t)x27 * x78)) + (((uint64_t)x29 * x79) + (((uint64_t)x31 * x77) + (((uint64_t)x33 * x75) + ((0x2 * ((uint64_t)x35 * x73)) + (((uint64_t)x37 * x71) + (((uint64_t)x39 * x69) + (((uint64_t)x41 * x67) + (0x2 * ((uint64_t)x40 * x65))))))))))));
- uint64_t x90 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + ((0x2 * ((uint64_t)x9 * x57)) + ((0x2 * ((uint64_t)x11 * x55)) + (((uint64_t)x13 * x53) + (((uint64_t)x15 * x51) + ((0x2 * ((uint64_t)x17 * x49)) + ((0x2 * ((uint64_t)x19 * x47)) + (((uint64_t)x21 * x45) + ((uint64_t)x23 * x43)))))))))) + (0x1f * ((0x2 * ((uint64_t)x25 * x78)) + ((0x2 * ((uint64_t)x27 * x79)) + (((uint64_t)x29 * x77) + (((uint64_t)x31 * x75) + ((0x2 * ((uint64_t)x33 * x73)) + ((0x2 * ((uint64_t)x35 * x71)) + (((uint64_t)x37 * x69) + (((uint64_t)x39 * x67) + ((0x2 * ((uint64_t)x41 * x65)) + (0x2 * ((uint64_t)x40 * x63)))))))))))));
- uint64_t x91 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + (((uint64_t)x13 * x51) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + ((uint64_t)x21 * x43))))))))) + (0x1f * ((0x2 * ((uint64_t)x23 * x78)) + ((0x2 * ((uint64_t)x25 * x79)) + ((0x2 * ((uint64_t)x27 * x77)) + (((uint64_t)x29 * x75) + ((0x2 * ((uint64_t)x31 * x73)) + ((0x2 * ((uint64_t)x33 * x71)) + ((0x2 * ((uint64_t)x35 * x69)) + (((uint64_t)x37 * x67) + ((0x2 * ((uint64_t)x39 * x65)) + ((0x2 * ((uint64_t)x41 * x63)) + (0x2 * ((uint64_t)x40 * x61))))))))))))));
- uint64_t x92 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + (((uint64_t)x13 * x49) + (((uint64_t)x15 * x47) + (((uint64_t)x17 * x45) + ((uint64_t)x19 * x43)))))))) + (0x1f * (((uint64_t)x21 * x78) + (((uint64_t)x23 * x79) + (((uint64_t)x25 * x77) + (((uint64_t)x27 * x75) + (((uint64_t)x29 * x73) + (((uint64_t)x31 * x71) + (((uint64_t)x33 * x69) + (((uint64_t)x35 * x67) + (((uint64_t)x37 * x65) + (((uint64_t)x39 * x63) + (((uint64_t)x41 * x61) + ((uint64_t)x40 * x59))))))))))))));
- uint64_t x93 = ((((uint64_t)x5 * x55) + (((uint64_t)x7 * x53) + (((uint64_t)x9 * x51) + ((0x2 * ((uint64_t)x11 * x49)) + (((uint64_t)x13 * x47) + (((uint64_t)x15 * x45) + ((uint64_t)x17 * x43))))))) + (0x1f * ((0x2 * ((uint64_t)x19 * x78)) + (((uint64_t)x21 * x79) + (((uint64_t)x23 * x77) + (((uint64_t)x25 * x75) + ((0x2 * ((uint64_t)x27 * x73)) + (((uint64_t)x29 * x71) + (((uint64_t)x31 * x69) + (((uint64_t)x33 * x67) + ((0x2 * ((uint64_t)x35 * x65)) + (((uint64_t)x37 * x63) + (((uint64_t)x39 * x61) + (((uint64_t)x41 * x59) + (0x2 * ((uint64_t)x40 * x57))))))))))))))));
- uint64_t x94 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + (((uint64_t)x13 * x45) + ((uint64_t)x15 * x43)))))) + (0x1f * ((0x2 * ((uint64_t)x17 * x78)) + ((0x2 * ((uint64_t)x19 * x79)) + (((uint64_t)x21 * x77) + (((uint64_t)x23 * x75) + ((0x2 * ((uint64_t)x25 * x73)) + ((0x2 * ((uint64_t)x27 * x71)) + (((uint64_t)x29 * x69) + (((uint64_t)x31 * x67) + ((0x2 * ((uint64_t)x33 * x65)) + ((0x2 * ((uint64_t)x35 * x63)) + (((uint64_t)x37 * x61) + (((uint64_t)x39 * x59) + ((0x2 * ((uint64_t)x41 * x57)) + (0x2 * ((uint64_t)x40 * x55)))))))))))))))));
- uint64_t x95 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((uint64_t)x13 * x43))))) + (0x1f * ((0x2 * ((uint64_t)x15 * x78)) + ((0x2 * ((uint64_t)x17 * x79)) + ((0x2 * ((uint64_t)x19 * x77)) + (((uint64_t)x21 * x75) + ((0x2 * ((uint64_t)x23 * x73)) + ((0x2 * ((uint64_t)x25 * x71)) + ((0x2 * ((uint64_t)x27 * x69)) + (((uint64_t)x29 * x67) + ((0x2 * ((uint64_t)x31 * x65)) + ((0x2 * ((uint64_t)x33 * x63)) + ((0x2 * ((uint64_t)x35 * x61)) + (((uint64_t)x37 * x59) + ((0x2 * ((uint64_t)x39 * x57)) + ((0x2 * ((uint64_t)x41 * x55)) + (0x2 * ((uint64_t)x40 * x53))))))))))))))))));
- uint64_t x96 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + (((uint64_t)x9 * x45) + ((uint64_t)x11 * x43)))) + (0x1f * (((uint64_t)x13 * x78) + (((uint64_t)x15 * x79) + (((uint64_t)x17 * x77) + (((uint64_t)x19 * x75) + (((uint64_t)x21 * x73) + (((uint64_t)x23 * x71) + (((uint64_t)x25 * x69) + (((uint64_t)x27 * x67) + (((uint64_t)x29 * x65) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + (((uint64_t)x35 * x59) + (((uint64_t)x37 * x57) + (((uint64_t)x39 * x55) + (((uint64_t)x41 * x53) + ((uint64_t)x40 * x51))))))))))))))))));
- uint64_t x97 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + ((uint64_t)x9 * x43))) + (0x1f * ((0x2 * ((uint64_t)x11 * x78)) + (((uint64_t)x13 * x79) + (((uint64_t)x15 * x77) + (((uint64_t)x17 * x75) + ((0x2 * ((uint64_t)x19 * x73)) + (((uint64_t)x21 * x71) + (((uint64_t)x23 * x69) + (((uint64_t)x25 * x67) + ((0x2 * ((uint64_t)x27 * x65)) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + (((uint64_t)x33 * x59) + ((0x2 * ((uint64_t)x35 * x57)) + (((uint64_t)x37 * x55) + (((uint64_t)x39 * x53) + (((uint64_t)x41 * x51) + (0x2 * ((uint64_t)x40 * x49))))))))))))))))))));
- uint64_t x98 = ((((uint64_t)x5 * x45) + ((uint64_t)x7 * x43)) + (0x1f * ((0x2 * ((uint64_t)x9 * x78)) + ((0x2 * ((uint64_t)x11 * x79)) + (((uint64_t)x13 * x77) + (((uint64_t)x15 * x75) + ((0x2 * ((uint64_t)x17 * x73)) + ((0x2 * ((uint64_t)x19 * x71)) + (((uint64_t)x21 * x69) + (((uint64_t)x23 * x67) + ((0x2 * ((uint64_t)x25 * x65)) + ((0x2 * ((uint64_t)x27 * x63)) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + ((0x2 * ((uint64_t)x33 * x57)) + ((0x2 * ((uint64_t)x35 * x55)) + (((uint64_t)x37 * x53) + (((uint64_t)x39 * x51) + ((0x2 * ((uint64_t)x41 * x49)) + (0x2 * ((uint64_t)x40 * x47)))))))))))))))))))));
- uint64_t x99 = (((uint64_t)x5 * x43) + (0x1f * ((0x2 * ((uint64_t)x7 * x78)) + ((0x2 * ((uint64_t)x9 * x79)) + ((0x2 * ((uint64_t)x11 * x77)) + (((uint64_t)x13 * x75) + ((0x2 * ((uint64_t)x15 * x73)) + ((0x2 * ((uint64_t)x17 * x71)) + ((0x2 * ((uint64_t)x19 * x69)) + (((uint64_t)x21 * x67) + ((0x2 * ((uint64_t)x23 * x65)) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + (((uint64_t)x29 * x59) + ((0x2 * ((uint64_t)x31 * x57)) + ((0x2 * ((uint64_t)x33 * x55)) + ((0x2 * ((uint64_t)x35 * x53)) + (((uint64_t)x37 * x51) + ((0x2 * ((uint64_t)x39 * x49)) + ((0x2 * ((uint64_t)x41 * x47)) + (0x2 * ((uint64_t)x40 * x45))))))))))))))))))))));
- uint64_t x100 = (x99 >> 0x19);
- uint32_t x101 = ((uint32_t)x99 & 0x1ffffff);
- uint64_t x102 = (x100 + x98);
- uint64_t x103 = (x102 >> 0x19);
- uint32_t x104 = ((uint32_t)x102 & 0x1ffffff);
- uint64_t x105 = (x103 + x97);
- uint64_t x106 = (x105 >> 0x19);
- uint32_t x107 = ((uint32_t)x105 & 0x1ffffff);
- uint64_t x108 = (x106 + x96);
- uint64_t x109 = (x108 >> 0x18);
- uint32_t x110 = ((uint32_t)x108 & 0xffffff);
- uint64_t x111 = (x109 + x95);
- uint64_t x112 = (x111 >> 0x19);
- uint32_t x113 = ((uint32_t)x111 & 0x1ffffff);
- uint64_t x114 = (x112 + x94);
- uint64_t x115 = (x114 >> 0x19);
- uint32_t x116 = ((uint32_t)x114 & 0x1ffffff);
- uint64_t x117 = (x115 + x93);
- uint64_t x118 = (x117 >> 0x19);
- uint32_t x119 = ((uint32_t)x117 & 0x1ffffff);
- uint64_t x120 = (x118 + x92);
- uint64_t x121 = (x120 >> 0x18);
- uint32_t x122 = ((uint32_t)x120 & 0xffffff);
- uint64_t x123 = (x121 + x91);
- uint64_t x124 = (x123 >> 0x19);
- uint32_t x125 = ((uint32_t)x123 & 0x1ffffff);
- uint64_t x126 = (x124 + x90);
- uint64_t x127 = (x126 >> 0x19);
- uint32_t x128 = ((uint32_t)x126 & 0x1ffffff);
- uint64_t x129 = (x127 + x89);
- uint64_t x130 = (x129 >> 0x19);
- uint32_t x131 = ((uint32_t)x129 & 0x1ffffff);
- uint64_t x132 = (x130 + x88);
- uint64_t x133 = (x132 >> 0x18);
- uint32_t x134 = ((uint32_t)x132 & 0xffffff);
- uint64_t x135 = (x133 + x87);
- uint64_t x136 = (x135 >> 0x19);
- uint32_t x137 = ((uint32_t)x135 & 0x1ffffff);
- uint64_t x138 = (x136 + x86);
- uint64_t x139 = (x138 >> 0x19);
- uint32_t x140 = ((uint32_t)x138 & 0x1ffffff);
- uint64_t x141 = (x139 + x85);
- uint64_t x142 = (x141 >> 0x19);
- uint32_t x143 = ((uint32_t)x141 & 0x1ffffff);
- uint64_t x144 = (x142 + x84);
- uint64_t x145 = (x144 >> 0x18);
- uint32_t x146 = ((uint32_t)x144 & 0xffffff);
- uint64_t x147 = (x145 + x83);
- uint64_t x148 = (x147 >> 0x19);
- uint32_t x149 = ((uint32_t)x147 & 0x1ffffff);
- uint64_t x150 = (x148 + x82);
- uint64_t x151 = (x150 >> 0x19);
- uint32_t x152 = ((uint32_t)x150 & 0x1ffffff);
- uint64_t x153 = (x151 + x81);
- uint64_t x154 = (x153 >> 0x19);
- uint32_t x155 = ((uint32_t)x153 & 0x1ffffff);
- uint64_t x156 = (x154 + x80);
- uint64_t x157 = (x156 >> 0x18);
- uint32_t x158 = ((uint32_t)x156 & 0xffffff);
- uint64_t x159 = (x101 + (0x1f * x157));
- uint32_t x160 = (uint32_t) (x159 >> 0x19);
- uint32_t x161 = ((uint32_t)x159 & 0x1ffffff);
- uint32_t x162 = (x160 + x104);
- uint32_t x163 = (x162 >> 0x19);
- uint32_t x164 = (x162 & 0x1ffffff);
- return (Return x158, Return x155, Return x152, Return x149, Return x146, Return x143, Return x140, Return x137, Return x134, Return x131, Return x128, Return x125, Return x122, Return x119, Return x116, Return x113, Return x110, (x163 + x107), Return x164, Return x161))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e495m31_20limbs/femulDisplay.v b/src/Specific/solinas32_2e495m31_20limbs/femulDisplay.v
deleted file mode 100644
index 426f08911..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e495m31_20limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e495m31_20limbs/fesquare.c b/src/Specific/solinas32_2e495m31_20limbs/fesquare.c
deleted file mode 100644
index 225ff913b..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/fesquare.c
+++ /dev/null
@@ -1,128 +0,0 @@
-static void fesquare(uint32_t out[20], const uint32_t in1[20]) {
- { const uint32_t x37 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x39 = (((uint64_t)x2 * x37) + (((uint64_t)x4 * x38) + (((uint64_t)x6 * x36) + (((uint64_t)x8 * x34) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + (((uint64_t)x34 * x8) + (((uint64_t)x36 * x6) + (((uint64_t)x38 * x4) + ((uint64_t)x37 * x2))))))))))))))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x38) + (((uint64_t)x4 * x36) + (((uint64_t)x6 * x34) + ((0x2 * ((uint64_t)x8 * x32)) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + (((uint64_t)x14 * x26) + ((0x2 * ((uint64_t)x16 * x24)) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + ((0x2 * ((uint64_t)x24 * x16)) + (((uint64_t)x26 * x14) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + ((0x2 * ((uint64_t)x32 * x8)) + (((uint64_t)x34 * x6) + (((uint64_t)x36 * x4) + ((uint64_t)x38 * x2))))))))))))))))))) + (0x1f * (0x2 * ((uint64_t)x37 * x37))));
- { uint64_t x41 = ((((uint64_t)x2 * x36) + (((uint64_t)x4 * x34) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + (((uint64_t)x10 * x28) + (((uint64_t)x12 * x26) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + (((uint64_t)x26 * x12) + (((uint64_t)x28 * x10) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + (((uint64_t)x34 * x4) + ((uint64_t)x36 * x2)))))))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x38 * x37)) + (0x2 * ((uint64_t)x37 * x38)))));
- { uint64_t x42 = ((((uint64_t)x2 * x34) + ((0x2 * ((uint64_t)x4 * x32)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + (((uint64_t)x10 * x26) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + (((uint64_t)x26 * x10) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x34 * x2))))))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x36 * x37)) + ((0x2 * ((uint64_t)x38 * x38)) + (0x2 * ((uint64_t)x37 * x36))))));
- { uint64_t x43 = ((((uint64_t)x2 * x32) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x32 * x2)))))))))))))))) + (0x1f * (((uint64_t)x34 * x37) + (((uint64_t)x36 * x38) + (((uint64_t)x38 * x36) + ((uint64_t)x37 * x34))))));
- { uint64_t x44 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + ((0x2 * ((uint64_t)x8 * x24)) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + ((0x2 * ((uint64_t)x24 * x8)) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x32 * x37)) + (((uint64_t)x34 * x38) + (((uint64_t)x36 * x36) + (((uint64_t)x38 * x34) + (0x2 * ((uint64_t)x37 * x32))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x30 * x37)) + ((0x2 * ((uint64_t)x32 * x38)) + (((uint64_t)x34 * x36) + (((uint64_t)x36 * x34) + ((0x2 * ((uint64_t)x38 * x32)) + (0x2 * ((uint64_t)x37 * x30)))))))));
- { uint64_t x46 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x28 * x37)) + ((0x2 * ((uint64_t)x30 * x38)) + ((0x2 * ((uint64_t)x32 * x36)) + (((uint64_t)x34 * x34) + ((0x2 * ((uint64_t)x36 * x32)) + ((0x2 * ((uint64_t)x38 * x30)) + (0x2 * ((uint64_t)x37 * x28))))))))));
- { uint64_t x47 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x1f * (((uint64_t)x26 * x37) + (((uint64_t)x28 * x38) + (((uint64_t)x30 * x36) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + (((uint64_t)x36 * x30) + (((uint64_t)x38 * x28) + ((uint64_t)x37 * x26))))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x1f * ((0x2 * ((uint64_t)x24 * x37)) + (((uint64_t)x26 * x38) + (((uint64_t)x28 * x36) + (((uint64_t)x30 * x34) + ((0x2 * ((uint64_t)x32 * x32)) + (((uint64_t)x34 * x30) + (((uint64_t)x36 * x28) + (((uint64_t)x38 * x26) + (0x2 * ((uint64_t)x37 * x24))))))))))));
- { uint64_t x49 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x1f * ((0x2 * ((uint64_t)x22 * x37)) + ((0x2 * ((uint64_t)x24 * x38)) + (((uint64_t)x26 * x36) + (((uint64_t)x28 * x34) + ((0x2 * ((uint64_t)x30 * x32)) + ((0x2 * ((uint64_t)x32 * x30)) + (((uint64_t)x34 * x28) + (((uint64_t)x36 * x26) + ((0x2 * ((uint64_t)x38 * x24)) + (0x2 * ((uint64_t)x37 * x22)))))))))))));
- { uint64_t x50 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x1f * ((0x2 * ((uint64_t)x20 * x37)) + ((0x2 * ((uint64_t)x22 * x38)) + ((0x2 * ((uint64_t)x24 * x36)) + (((uint64_t)x26 * x34) + ((0x2 * ((uint64_t)x28 * x32)) + ((0x2 * ((uint64_t)x30 * x30)) + ((0x2 * ((uint64_t)x32 * x28)) + (((uint64_t)x34 * x26) + ((0x2 * ((uint64_t)x36 * x24)) + ((0x2 * ((uint64_t)x38 * x22)) + (0x2 * ((uint64_t)x37 * x20))))))))))))));
- { uint64_t x51 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x1f * (((uint64_t)x18 * x37) + (((uint64_t)x20 * x38) + (((uint64_t)x22 * x36) + (((uint64_t)x24 * x34) + (((uint64_t)x26 * x32) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (((uint64_t)x32 * x26) + (((uint64_t)x34 * x24) + (((uint64_t)x36 * x22) + (((uint64_t)x38 * x20) + ((uint64_t)x37 * x18))))))))))))));
- { uint64_t x52 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x1f * ((0x2 * ((uint64_t)x16 * x37)) + (((uint64_t)x18 * x38) + (((uint64_t)x20 * x36) + (((uint64_t)x22 * x34) + ((0x2 * ((uint64_t)x24 * x32)) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + ((0x2 * ((uint64_t)x32 * x24)) + (((uint64_t)x34 * x22) + (((uint64_t)x36 * x20) + (((uint64_t)x38 * x18) + (0x2 * ((uint64_t)x37 * x16))))))))))))))));
- { uint64_t x53 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x1f * ((0x2 * ((uint64_t)x14 * x37)) + ((0x2 * ((uint64_t)x16 * x38)) + (((uint64_t)x18 * x36) + (((uint64_t)x20 * x34) + ((0x2 * ((uint64_t)x22 * x32)) + ((0x2 * ((uint64_t)x24 * x30)) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + ((0x2 * ((uint64_t)x30 * x24)) + ((0x2 * ((uint64_t)x32 * x22)) + (((uint64_t)x34 * x20) + (((uint64_t)x36 * x18) + ((0x2 * ((uint64_t)x38 * x16)) + (0x2 * ((uint64_t)x37 * x14)))))))))))))))));
- { uint64_t x54 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x1f * ((0x2 * ((uint64_t)x12 * x37)) + ((0x2 * ((uint64_t)x14 * x38)) + ((0x2 * ((uint64_t)x16 * x36)) + (((uint64_t)x18 * x34) + ((0x2 * ((uint64_t)x20 * x32)) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + (((uint64_t)x26 * x26) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + ((0x2 * ((uint64_t)x32 * x20)) + (((uint64_t)x34 * x18) + ((0x2 * ((uint64_t)x36 * x16)) + ((0x2 * ((uint64_t)x38 * x14)) + (0x2 * ((uint64_t)x37 * x12))))))))))))))))));
- { uint64_t x55 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x1f * (((uint64_t)x10 * x37) + (((uint64_t)x12 * x38) + (((uint64_t)x14 * x36) + (((uint64_t)x16 * x34) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + (((uint64_t)x34 * x16) + (((uint64_t)x36 * x14) + (((uint64_t)x38 * x12) + ((uint64_t)x37 * x10))))))))))))))))));
- { uint64_t x56 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x1f * ((0x2 * ((uint64_t)x8 * x37)) + (((uint64_t)x10 * x38) + (((uint64_t)x12 * x36) + (((uint64_t)x14 * x34) + ((0x2 * ((uint64_t)x16 * x32)) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + ((0x2 * ((uint64_t)x24 * x24)) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + ((0x2 * ((uint64_t)x32 * x16)) + (((uint64_t)x34 * x14) + (((uint64_t)x36 * x12) + (((uint64_t)x38 * x10) + (0x2 * ((uint64_t)x37 * x8))))))))))))))))))));
- { uint64_t x57 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1f * ((0x2 * ((uint64_t)x6 * x37)) + ((0x2 * ((uint64_t)x8 * x38)) + (((uint64_t)x10 * x36) + (((uint64_t)x12 * x34) + ((0x2 * ((uint64_t)x14 * x32)) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + ((0x2 * ((uint64_t)x32 * x14)) + (((uint64_t)x34 * x12) + (((uint64_t)x36 * x10) + ((0x2 * ((uint64_t)x38 * x8)) + (0x2 * ((uint64_t)x37 * x6)))))))))))))))))))));
- { uint64_t x58 = (((uint64_t)x2 * x2) + (0x1f * ((0x2 * ((uint64_t)x4 * x37)) + ((0x2 * ((uint64_t)x6 * x38)) + ((0x2 * ((uint64_t)x8 * x36)) + (((uint64_t)x10 * x34) + ((0x2 * ((uint64_t)x12 * x32)) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + (((uint64_t)x18 * x26) + ((0x2 * ((uint64_t)x20 * x24)) + ((0x2 * ((uint64_t)x22 * x22)) + ((0x2 * ((uint64_t)x24 * x20)) + (((uint64_t)x26 * x18) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + ((0x2 * ((uint64_t)x32 * x12)) + (((uint64_t)x34 * x10) + ((0x2 * ((uint64_t)x36 * x8)) + ((0x2 * ((uint64_t)x38 * x6)) + (0x2 * ((uint64_t)x37 * x4))))))))))))))))))))));
- { uint64_t x59 = (x58 >> 0x19);
- { uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- { uint64_t x61 = (x59 + x57);
- { uint64_t x62 = (x61 >> 0x19);
- { uint32_t x63 = ((uint32_t)x61 & 0x1ffffff);
- { uint64_t x64 = (x62 + x56);
- { uint64_t x65 = (x64 >> 0x19);
- { uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- { uint64_t x67 = (x65 + x55);
- { uint64_t x68 = (x67 >> 0x18);
- { uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- { uint64_t x70 = (x68 + x54);
- { uint64_t x71 = (x70 >> 0x19);
- { uint32_t x72 = ((uint32_t)x70 & 0x1ffffff);
- { uint64_t x73 = (x71 + x53);
- { uint64_t x74 = (x73 >> 0x19);
- { uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- { uint64_t x76 = (x74 + x52);
- { uint64_t x77 = (x76 >> 0x19);
- { uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- { uint64_t x79 = (x77 + x51);
- { uint64_t x80 = (x79 >> 0x18);
- { uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- { uint64_t x82 = (x80 + x50);
- { uint64_t x83 = (x82 >> 0x19);
- { uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- { uint64_t x85 = (x83 + x49);
- { uint64_t x86 = (x85 >> 0x19);
- { uint32_t x87 = ((uint32_t)x85 & 0x1ffffff);
- { uint64_t x88 = (x86 + x48);
- { uint64_t x89 = (x88 >> 0x19);
- { uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- { uint64_t x91 = (x89 + x47);
- { uint64_t x92 = (x91 >> 0x18);
- { uint32_t x93 = ((uint32_t)x91 & 0xffffff);
- { uint64_t x94 = (x92 + x46);
- { uint64_t x95 = (x94 >> 0x19);
- { uint32_t x96 = ((uint32_t)x94 & 0x1ffffff);
- { uint64_t x97 = (x95 + x45);
- { uint64_t x98 = (x97 >> 0x19);
- { uint32_t x99 = ((uint32_t)x97 & 0x1ffffff);
- { uint64_t x100 = (x98 + x44);
- { uint64_t x101 = (x100 >> 0x19);
- { uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- { uint64_t x103 = (x101 + x43);
- { uint64_t x104 = (x103 >> 0x18);
- { uint32_t x105 = ((uint32_t)x103 & 0xffffff);
- { uint64_t x106 = (x104 + x42);
- { uint64_t x107 = (x106 >> 0x19);
- { uint32_t x108 = ((uint32_t)x106 & 0x1ffffff);
- { uint64_t x109 = (x107 + x41);
- { uint64_t x110 = (x109 >> 0x19);
- { uint32_t x111 = ((uint32_t)x109 & 0x1ffffff);
- { uint64_t x112 = (x110 + x40);
- { uint64_t x113 = (x112 >> 0x19);
- { uint32_t x114 = ((uint32_t)x112 & 0x1ffffff);
- { uint64_t x115 = (x113 + x39);
- { uint64_t x116 = (x115 >> 0x18);
- { uint32_t x117 = ((uint32_t)x115 & 0xffffff);
- { uint64_t x118 = (x60 + (0x1f * x116));
- { uint32_t x119 = (uint32_t) (x118 >> 0x19);
- { uint32_t x120 = ((uint32_t)x118 & 0x1ffffff);
- { uint32_t x121 = (x119 + x63);
- { uint32_t x122 = (x121 >> 0x19);
- { uint32_t x123 = (x121 & 0x1ffffff);
- out[0] = x120;
- out[1] = x123;
- out[2] = (x122 + x66);
- out[3] = x69;
- out[4] = x72;
- out[5] = x75;
- out[6] = x78;
- out[7] = x81;
- out[8] = x84;
- out[9] = x87;
- out[10] = x90;
- out[11] = x93;
- out[12] = x96;
- out[13] = x99;
- out[14] = x102;
- out[15] = x105;
- out[16] = x108;
- out[17] = x111;
- out[18] = x114;
- out[19] = x117;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e495m31_20limbs/fesquare.v b/src/Specific/solinas32_2e495m31_20limbs/fesquare.v
deleted file mode 100644
index e2500d864..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e495m31_20limbs.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_2e495m31_20limbs/fesquareDisplay.log b/src/Specific/solinas32_2e495m31_20limbs/fesquareDisplay.log
deleted file mode 100644
index 613dfc798..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,92 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x37, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x39 = (((uint64_t)x2 * x37) + (((uint64_t)x4 * x38) + (((uint64_t)x6 * x36) + (((uint64_t)x8 * x34) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + (((uint64_t)x34 * x8) + (((uint64_t)x36 * x6) + (((uint64_t)x38 * x4) + ((uint64_t)x37 * x2))))))))))))))))))));
- uint64_t x40 = ((((uint64_t)x2 * x38) + (((uint64_t)x4 * x36) + (((uint64_t)x6 * x34) + ((0x2 * ((uint64_t)x8 * x32)) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + (((uint64_t)x14 * x26) + ((0x2 * ((uint64_t)x16 * x24)) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + ((0x2 * ((uint64_t)x24 * x16)) + (((uint64_t)x26 * x14) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + ((0x2 * ((uint64_t)x32 * x8)) + (((uint64_t)x34 * x6) + (((uint64_t)x36 * x4) + ((uint64_t)x38 * x2))))))))))))))))))) + (0x1f * (0x2 * ((uint64_t)x37 * x37))));
- uint64_t x41 = ((((uint64_t)x2 * x36) + (((uint64_t)x4 * x34) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + (((uint64_t)x10 * x28) + (((uint64_t)x12 * x26) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + (((uint64_t)x26 * x12) + (((uint64_t)x28 * x10) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + (((uint64_t)x34 * x4) + ((uint64_t)x36 * x2)))))))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x38 * x37)) + (0x2 * ((uint64_t)x37 * x38)))));
- uint64_t x42 = ((((uint64_t)x2 * x34) + ((0x2 * ((uint64_t)x4 * x32)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + (((uint64_t)x10 * x26) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + (((uint64_t)x26 * x10) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x34 * x2))))))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x36 * x37)) + ((0x2 * ((uint64_t)x38 * x38)) + (0x2 * ((uint64_t)x37 * x36))))));
- uint64_t x43 = ((((uint64_t)x2 * x32) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x32 * x2)))))))))))))))) + (0x1f * (((uint64_t)x34 * x37) + (((uint64_t)x36 * x38) + (((uint64_t)x38 * x36) + ((uint64_t)x37 * x34))))));
- uint64_t x44 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + ((0x2 * ((uint64_t)x8 * x24)) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + ((0x2 * ((uint64_t)x24 * x8)) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x32 * x37)) + (((uint64_t)x34 * x38) + (((uint64_t)x36 * x36) + (((uint64_t)x38 * x34) + (0x2 * ((uint64_t)x37 * x32))))))));
- uint64_t x45 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x30 * x37)) + ((0x2 * ((uint64_t)x32 * x38)) + (((uint64_t)x34 * x36) + (((uint64_t)x36 * x34) + ((0x2 * ((uint64_t)x38 * x32)) + (0x2 * ((uint64_t)x37 * x30)))))))));
- uint64_t x46 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x28 * x37)) + ((0x2 * ((uint64_t)x30 * x38)) + ((0x2 * ((uint64_t)x32 * x36)) + (((uint64_t)x34 * x34) + ((0x2 * ((uint64_t)x36 * x32)) + ((0x2 * ((uint64_t)x38 * x30)) + (0x2 * ((uint64_t)x37 * x28))))))))));
- uint64_t x47 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x1f * (((uint64_t)x26 * x37) + (((uint64_t)x28 * x38) + (((uint64_t)x30 * x36) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + (((uint64_t)x36 * x30) + (((uint64_t)x38 * x28) + ((uint64_t)x37 * x26))))))))));
- uint64_t x48 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x1f * ((0x2 * ((uint64_t)x24 * x37)) + (((uint64_t)x26 * x38) + (((uint64_t)x28 * x36) + (((uint64_t)x30 * x34) + ((0x2 * ((uint64_t)x32 * x32)) + (((uint64_t)x34 * x30) + (((uint64_t)x36 * x28) + (((uint64_t)x38 * x26) + (0x2 * ((uint64_t)x37 * x24))))))))))));
- uint64_t x49 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x1f * ((0x2 * ((uint64_t)x22 * x37)) + ((0x2 * ((uint64_t)x24 * x38)) + (((uint64_t)x26 * x36) + (((uint64_t)x28 * x34) + ((0x2 * ((uint64_t)x30 * x32)) + ((0x2 * ((uint64_t)x32 * x30)) + (((uint64_t)x34 * x28) + (((uint64_t)x36 * x26) + ((0x2 * ((uint64_t)x38 * x24)) + (0x2 * ((uint64_t)x37 * x22)))))))))))));
- uint64_t x50 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x1f * ((0x2 * ((uint64_t)x20 * x37)) + ((0x2 * ((uint64_t)x22 * x38)) + ((0x2 * ((uint64_t)x24 * x36)) + (((uint64_t)x26 * x34) + ((0x2 * ((uint64_t)x28 * x32)) + ((0x2 * ((uint64_t)x30 * x30)) + ((0x2 * ((uint64_t)x32 * x28)) + (((uint64_t)x34 * x26) + ((0x2 * ((uint64_t)x36 * x24)) + ((0x2 * ((uint64_t)x38 * x22)) + (0x2 * ((uint64_t)x37 * x20))))))))))))));
- uint64_t x51 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x1f * (((uint64_t)x18 * x37) + (((uint64_t)x20 * x38) + (((uint64_t)x22 * x36) + (((uint64_t)x24 * x34) + (((uint64_t)x26 * x32) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (((uint64_t)x32 * x26) + (((uint64_t)x34 * x24) + (((uint64_t)x36 * x22) + (((uint64_t)x38 * x20) + ((uint64_t)x37 * x18))))))))))))));
- uint64_t x52 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x1f * ((0x2 * ((uint64_t)x16 * x37)) + (((uint64_t)x18 * x38) + (((uint64_t)x20 * x36) + (((uint64_t)x22 * x34) + ((0x2 * ((uint64_t)x24 * x32)) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + ((0x2 * ((uint64_t)x32 * x24)) + (((uint64_t)x34 * x22) + (((uint64_t)x36 * x20) + (((uint64_t)x38 * x18) + (0x2 * ((uint64_t)x37 * x16))))))))))))))));
- uint64_t x53 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x1f * ((0x2 * ((uint64_t)x14 * x37)) + ((0x2 * ((uint64_t)x16 * x38)) + (((uint64_t)x18 * x36) + (((uint64_t)x20 * x34) + ((0x2 * ((uint64_t)x22 * x32)) + ((0x2 * ((uint64_t)x24 * x30)) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + ((0x2 * ((uint64_t)x30 * x24)) + ((0x2 * ((uint64_t)x32 * x22)) + (((uint64_t)x34 * x20) + (((uint64_t)x36 * x18) + ((0x2 * ((uint64_t)x38 * x16)) + (0x2 * ((uint64_t)x37 * x14)))))))))))))))));
- uint64_t x54 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x1f * ((0x2 * ((uint64_t)x12 * x37)) + ((0x2 * ((uint64_t)x14 * x38)) + ((0x2 * ((uint64_t)x16 * x36)) + (((uint64_t)x18 * x34) + ((0x2 * ((uint64_t)x20 * x32)) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + (((uint64_t)x26 * x26) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + ((0x2 * ((uint64_t)x32 * x20)) + (((uint64_t)x34 * x18) + ((0x2 * ((uint64_t)x36 * x16)) + ((0x2 * ((uint64_t)x38 * x14)) + (0x2 * ((uint64_t)x37 * x12))))))))))))))))));
- uint64_t x55 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x1f * (((uint64_t)x10 * x37) + (((uint64_t)x12 * x38) + (((uint64_t)x14 * x36) + (((uint64_t)x16 * x34) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + (((uint64_t)x34 * x16) + (((uint64_t)x36 * x14) + (((uint64_t)x38 * x12) + ((uint64_t)x37 * x10))))))))))))))))));
- uint64_t x56 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x1f * ((0x2 * ((uint64_t)x8 * x37)) + (((uint64_t)x10 * x38) + (((uint64_t)x12 * x36) + (((uint64_t)x14 * x34) + ((0x2 * ((uint64_t)x16 * x32)) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + ((0x2 * ((uint64_t)x24 * x24)) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + ((0x2 * ((uint64_t)x32 * x16)) + (((uint64_t)x34 * x14) + (((uint64_t)x36 * x12) + (((uint64_t)x38 * x10) + (0x2 * ((uint64_t)x37 * x8))))))))))))))))))));
- uint64_t x57 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1f * ((0x2 * ((uint64_t)x6 * x37)) + ((0x2 * ((uint64_t)x8 * x38)) + (((uint64_t)x10 * x36) + (((uint64_t)x12 * x34) + ((0x2 * ((uint64_t)x14 * x32)) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + ((0x2 * ((uint64_t)x32 * x14)) + (((uint64_t)x34 * x12) + (((uint64_t)x36 * x10) + ((0x2 * ((uint64_t)x38 * x8)) + (0x2 * ((uint64_t)x37 * x6)))))))))))))))))))));
- uint64_t x58 = (((uint64_t)x2 * x2) + (0x1f * ((0x2 * ((uint64_t)x4 * x37)) + ((0x2 * ((uint64_t)x6 * x38)) + ((0x2 * ((uint64_t)x8 * x36)) + (((uint64_t)x10 * x34) + ((0x2 * ((uint64_t)x12 * x32)) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + (((uint64_t)x18 * x26) + ((0x2 * ((uint64_t)x20 * x24)) + ((0x2 * ((uint64_t)x22 * x22)) + ((0x2 * ((uint64_t)x24 * x20)) + (((uint64_t)x26 * x18) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + ((0x2 * ((uint64_t)x32 * x12)) + (((uint64_t)x34 * x10) + ((0x2 * ((uint64_t)x36 * x8)) + ((0x2 * ((uint64_t)x38 * x6)) + (0x2 * ((uint64_t)x37 * x4))))))))))))))))))))));
- uint64_t x59 = (x58 >> 0x19);
- uint32_t x60 = ((uint32_t)x58 & 0x1ffffff);
- uint64_t x61 = (x59 + x57);
- uint64_t x62 = (x61 >> 0x19);
- uint32_t x63 = ((uint32_t)x61 & 0x1ffffff);
- uint64_t x64 = (x62 + x56);
- uint64_t x65 = (x64 >> 0x19);
- uint32_t x66 = ((uint32_t)x64 & 0x1ffffff);
- uint64_t x67 = (x65 + x55);
- uint64_t x68 = (x67 >> 0x18);
- uint32_t x69 = ((uint32_t)x67 & 0xffffff);
- uint64_t x70 = (x68 + x54);
- uint64_t x71 = (x70 >> 0x19);
- uint32_t x72 = ((uint32_t)x70 & 0x1ffffff);
- uint64_t x73 = (x71 + x53);
- uint64_t x74 = (x73 >> 0x19);
- uint32_t x75 = ((uint32_t)x73 & 0x1ffffff);
- uint64_t x76 = (x74 + x52);
- uint64_t x77 = (x76 >> 0x19);
- uint32_t x78 = ((uint32_t)x76 & 0x1ffffff);
- uint64_t x79 = (x77 + x51);
- uint64_t x80 = (x79 >> 0x18);
- uint32_t x81 = ((uint32_t)x79 & 0xffffff);
- uint64_t x82 = (x80 + x50);
- uint64_t x83 = (x82 >> 0x19);
- uint32_t x84 = ((uint32_t)x82 & 0x1ffffff);
- uint64_t x85 = (x83 + x49);
- uint64_t x86 = (x85 >> 0x19);
- uint32_t x87 = ((uint32_t)x85 & 0x1ffffff);
- uint64_t x88 = (x86 + x48);
- uint64_t x89 = (x88 >> 0x19);
- uint32_t x90 = ((uint32_t)x88 & 0x1ffffff);
- uint64_t x91 = (x89 + x47);
- uint64_t x92 = (x91 >> 0x18);
- uint32_t x93 = ((uint32_t)x91 & 0xffffff);
- uint64_t x94 = (x92 + x46);
- uint64_t x95 = (x94 >> 0x19);
- uint32_t x96 = ((uint32_t)x94 & 0x1ffffff);
- uint64_t x97 = (x95 + x45);
- uint64_t x98 = (x97 >> 0x19);
- uint32_t x99 = ((uint32_t)x97 & 0x1ffffff);
- uint64_t x100 = (x98 + x44);
- uint64_t x101 = (x100 >> 0x19);
- uint32_t x102 = ((uint32_t)x100 & 0x1ffffff);
- uint64_t x103 = (x101 + x43);
- uint64_t x104 = (x103 >> 0x18);
- uint32_t x105 = ((uint32_t)x103 & 0xffffff);
- uint64_t x106 = (x104 + x42);
- uint64_t x107 = (x106 >> 0x19);
- uint32_t x108 = ((uint32_t)x106 & 0x1ffffff);
- uint64_t x109 = (x107 + x41);
- uint64_t x110 = (x109 >> 0x19);
- uint32_t x111 = ((uint32_t)x109 & 0x1ffffff);
- uint64_t x112 = (x110 + x40);
- uint64_t x113 = (x112 >> 0x19);
- uint32_t x114 = ((uint32_t)x112 & 0x1ffffff);
- uint64_t x115 = (x113 + x39);
- uint64_t x116 = (x115 >> 0x18);
- uint32_t x117 = ((uint32_t)x115 & 0xffffff);
- uint64_t x118 = (x60 + (0x1f * x116));
- uint32_t x119 = (uint32_t) (x118 >> 0x19);
- uint32_t x120 = ((uint32_t)x118 & 0x1ffffff);
- uint32_t x121 = (x119 + x63);
- uint32_t x122 = (x121 >> 0x19);
- uint32_t x123 = (x121 & 0x1ffffff);
- return (Return x117, Return x114, Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, (x122 + x66), Return x123, Return x120))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e495m31_20limbs/fesquareDisplay.v b/src/Specific/solinas32_2e495m31_20limbs/fesquareDisplay.v
deleted file mode 100644
index dc4656fc2..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e495m31_20limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e495m31_20limbs/fesub.c b/src/Specific/solinas32_2e495m31_20limbs/fesub.c
deleted file mode 100644
index f6af61356..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/fesub.c
+++ /dev/null
@@ -1,63 +0,0 @@
-static void fesub(uint32_t out[20], const uint32_t in1[20], const uint32_t in2[20]) {
- { const uint32_t x40 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x78 = in2[19];
- { const uint32_t x79 = in2[18];
- { const uint32_t x77 = in2[17];
- { const uint32_t x75 = in2[16];
- { const uint32_t x73 = in2[15];
- { const uint32_t x71 = in2[14];
- { const uint32_t x69 = in2[13];
- { const uint32_t x67 = in2[12];
- { const uint32_t x65 = in2[11];
- { const uint32_t x63 = in2[10];
- { const uint32_t x61 = in2[9];
- { const uint32_t x59 = in2[8];
- { const uint32_t x57 = in2[7];
- { const uint32_t x55 = in2[6];
- { const uint32_t x53 = in2[5];
- { const uint32_t x51 = in2[4];
- { const uint32_t x49 = in2[3];
- { const uint32_t x47 = in2[2];
- { const uint32_t x45 = in2[1];
- { const uint32_t x43 = in2[0];
- out[0] = ((0x3ffffc2 + x5) - x43);
- out[1] = ((0x3fffffe + x7) - x45);
- out[2] = ((0x3fffffe + x9) - x47);
- out[3] = ((0x1fffffe + x11) - x49);
- out[4] = ((0x3fffffe + x13) - x51);
- out[5] = ((0x3fffffe + x15) - x53);
- out[6] = ((0x3fffffe + x17) - x55);
- out[7] = ((0x1fffffe + x19) - x57);
- out[8] = ((0x3fffffe + x21) - x59);
- out[9] = ((0x3fffffe + x23) - x61);
- out[10] = ((0x3fffffe + x25) - x63);
- out[11] = ((0x1fffffe + x27) - x65);
- out[12] = ((0x3fffffe + x29) - x67);
- out[13] = ((0x3fffffe + x31) - x69);
- out[14] = ((0x3fffffe + x33) - x71);
- out[15] = ((0x1fffffe + x35) - x73);
- out[16] = ((0x3fffffe + x37) - x75);
- out[17] = ((0x3fffffe + x39) - x77);
- out[18] = ((0x3fffffe + x41) - x79);
- out[19] = ((0x1fffffe + x40) - x78);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e495m31_20limbs/fesub.v b/src/Specific/solinas32_2e495m31_20limbs/fesub.v
deleted file mode 100644
index ff352a2f1..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e495m31_20limbs.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_2e495m31_20limbs/fesubDisplay.log b/src/Specific/solinas32_2e495m31_20limbs/fesubDisplay.log
deleted file mode 100644
index e42ae510a..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x40, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x78, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43))%core,
- (((0x1fffffe + x40) - x78), ((0x3fffffe + x41) - x79), ((0x3fffffe + x39) - x77), ((0x3fffffe + x37) - x75), ((0x1fffffe + x35) - x73), ((0x3fffffe + x33) - x71), ((0x3fffffe + x31) - x69), ((0x3fffffe + x29) - x67), ((0x1fffffe + x27) - x65), ((0x3fffffe + x25) - x63), ((0x3fffffe + x23) - x61), ((0x3fffffe + x21) - x59), ((0x1fffffe + x19) - x57), ((0x3fffffe + x17) - x55), ((0x3fffffe + x15) - x53), ((0x3fffffe + x13) - x51), ((0x1fffffe + x11) - x49), ((0x3fffffe + x9) - x47), ((0x3fffffe + x7) - x45), ((0x3ffffc2 + x5) - x43)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e495m31_20limbs/fesubDisplay.v b/src/Specific/solinas32_2e495m31_20limbs/fesubDisplay.v
deleted file mode 100644
index 565c8bad7..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e495m31_20limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e495m31_20limbs/freeze.c b/src/Specific/solinas32_2e495m31_20limbs/freeze.c
deleted file mode 100644
index 3e5fd626b..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/freeze.c
+++ /dev/null
@@ -1,104 +0,0 @@
-static void freeze(uint32_t out[20], const uint32_t in1[20]) {
- { const uint32_t x37 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffe1);
- { uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x4, 0x1ffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x6, 0x1ffffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x8, 0xffffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x10, 0x1ffffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x12, 0x1ffffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x14, 0x1ffffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x16, 0xffffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x18, 0x1ffffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x20, 0x1ffffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x22, 0x1ffffff);
- { uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x24, 0xffffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x26, 0x1ffffff);
- { uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x28, 0x1ffffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x30, 0x1ffffff);
- { uint32_t x85, uint8_t x86 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x32, 0xffffff);
- { uint32_t x88, uint8_t x89 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x34, 0x1ffffff);
- { uint32_t x91, uint8_t x92 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x89, Return x36, 0x1ffffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x38, 0x1ffffff);
- { uint32_t x97, uint8_t x98 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x37, 0xffffff);
- { uint32_t x99 = cmovznz32(x98, 0x0, 0xffffffff);
- { uint32_t x100 = (x99 & 0x1ffffe1);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x40, Return x100);
- { uint32_t x104 = (x99 & 0x1ffffff);
- { uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x43, Return x104);
- { uint32_t x108 = (x99 & 0x1ffffff);
- { uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x46, Return x108);
- { uint32_t x112 = (x99 & 0xffffff);
- { uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x49, Return x112);
- { uint32_t x116 = (x99 & 0x1ffffff);
- { uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x52, Return x116);
- { uint32_t x120 = (x99 & 0x1ffffff);
- { uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x55, Return x120);
- { uint32_t x124 = (x99 & 0x1ffffff);
- { uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x58, Return x124);
- { uint32_t x128 = (x99 & 0xffffff);
- { uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x61, Return x128);
- { uint32_t x132 = (x99 & 0x1ffffff);
- { uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x64, Return x132);
- { uint32_t x136 = (x99 & 0x1ffffff);
- { uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x67, Return x136);
- { uint32_t x140 = (x99 & 0x1ffffff);
- { uint32_t x142, uint8_t x143 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x70, Return x140);
- { uint32_t x144 = (x99 & 0xffffff);
- { uint32_t x146, uint8_t x147 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x143, Return x73, Return x144);
- { uint32_t x148 = (x99 & 0x1ffffff);
- { uint32_t x150, uint8_t x151 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x147, Return x76, Return x148);
- { uint32_t x152 = (x99 & 0x1ffffff);
- { uint32_t x154, uint8_t x155 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x151, Return x79, Return x152);
- { uint32_t x156 = (x99 & 0x1ffffff);
- { uint32_t x158, uint8_t x159 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x155, Return x82, Return x156);
- { uint32_t x160 = (x99 & 0xffffff);
- { uint32_t x162, uint8_t x163 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x159, Return x85, Return x160);
- { uint32_t x164 = (x99 & 0x1ffffff);
- { uint32_t x166, uint8_t x167 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x163, Return x88, Return x164);
- { uint32_t x168 = (x99 & 0x1ffffff);
- { uint32_t x170, uint8_t x171 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x167, Return x91, Return x168);
- { uint32_t x172 = (x99 & 0x1ffffff);
- { uint32_t x174, uint8_t x175 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x171, Return x94, Return x172);
- { uint32_t x176 = (x99 & 0xffffff);
- { uint32_t x178, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x175, Return x97, Return x176);
- out[0] = x102;
- out[1] = x106;
- out[2] = x110;
- out[3] = x114;
- out[4] = x118;
- out[5] = x122;
- out[6] = x126;
- out[7] = x130;
- out[8] = x134;
- out[9] = x138;
- out[10] = x142;
- out[11] = x146;
- out[12] = x150;
- out[13] = x154;
- out[14] = x158;
- out[15] = x162;
- out[16] = x166;
- out[17] = x170;
- out[18] = x174;
- out[19] = x178;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e495m31_20limbs/freeze.v b/src/Specific/solinas32_2e495m31_20limbs/freeze.v
deleted file mode 100644
index d51880edf..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e495m31_20limbs.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_2e495m31_20limbs/freezeDisplay.log b/src/Specific/solinas32_2e495m31_20limbs/freezeDisplay.log
deleted file mode 100644
index 1da1ddb85..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/freezeDisplay.log
+++ /dev/null
@@ -1,68 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x37, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffe1);
- uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x4, 0x1ffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x6, 0x1ffffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x8, 0xffffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x10, 0x1ffffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x12, 0x1ffffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x14, 0x1ffffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x16, 0xffffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x18, 0x1ffffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x20, 0x1ffffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x22, 0x1ffffff);
- uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x24, 0xffffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x26, 0x1ffffff);
- uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x28, 0x1ffffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x30, 0x1ffffff);
- uint32_t x85, uint8_t x86 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x32, 0xffffff);
- uint32_t x88, uint8_t x89 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x34, 0x1ffffff);
- uint32_t x91, uint8_t x92 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x89, Return x36, 0x1ffffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x38, 0x1ffffff);
- uint32_t x97, uint8_t x98 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x37, 0xffffff);
- uint32_t x99 = cmovznz32(x98, 0x0, 0xffffffff);
- uint32_t x100 = (x99 & 0x1ffffe1);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x40, Return x100);
- uint32_t x104 = (x99 & 0x1ffffff);
- uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x43, Return x104);
- uint32_t x108 = (x99 & 0x1ffffff);
- uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x46, Return x108);
- uint32_t x112 = (x99 & 0xffffff);
- uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x49, Return x112);
- uint32_t x116 = (x99 & 0x1ffffff);
- uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x52, Return x116);
- uint32_t x120 = (x99 & 0x1ffffff);
- uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x55, Return x120);
- uint32_t x124 = (x99 & 0x1ffffff);
- uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x58, Return x124);
- uint32_t x128 = (x99 & 0xffffff);
- uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x61, Return x128);
- uint32_t x132 = (x99 & 0x1ffffff);
- uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x64, Return x132);
- uint32_t x136 = (x99 & 0x1ffffff);
- uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x67, Return x136);
- uint32_t x140 = (x99 & 0x1ffffff);
- uint32_t x142, uint8_t x143 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x70, Return x140);
- uint32_t x144 = (x99 & 0xffffff);
- uint32_t x146, uint8_t x147 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x143, Return x73, Return x144);
- uint32_t x148 = (x99 & 0x1ffffff);
- uint32_t x150, uint8_t x151 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x147, Return x76, Return x148);
- uint32_t x152 = (x99 & 0x1ffffff);
- uint32_t x154, uint8_t x155 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x151, Return x79, Return x152);
- uint32_t x156 = (x99 & 0x1ffffff);
- uint32_t x158, uint8_t x159 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x155, Return x82, Return x156);
- uint32_t x160 = (x99 & 0xffffff);
- uint32_t x162, uint8_t x163 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x159, Return x85, Return x160);
- uint32_t x164 = (x99 & 0x1ffffff);
- uint32_t x166, uint8_t x167 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x163, Return x88, Return x164);
- uint32_t x168 = (x99 & 0x1ffffff);
- uint32_t x170, uint8_t x171 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x167, Return x91, Return x168);
- uint32_t x172 = (x99 & 0x1ffffff);
- uint32_t x174, uint8_t x175 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x171, Return x94, Return x172);
- uint32_t x176 = (x99 & 0xffffff);
- uint32_t x178, uint8_t _ = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x175, Return x97, Return x176);
- (Return x178, Return x174, Return x170, Return x166, Return x162, Return x158, Return x154, Return x150, Return x146, Return x142, Return x138, Return x134, Return x130, Return x126, Return x122, Return x118, Return x114, Return x110, Return x106, Return x102))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e495m31_20limbs/freezeDisplay.v b/src/Specific/solinas32_2e495m31_20limbs/freezeDisplay.v
deleted file mode 100644
index 278c54d82..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e495m31_20limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e495m31_20limbs/py_interpreter.sh b/src/Specific/solinas32_2e495m31_20limbs/py_interpreter.sh
deleted file mode 100755
index 60e78069b..000000000
--- a/src/Specific/solinas32_2e495m31_20limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**495 - 31' -Dmodulus_bytes='24.75' -Da24='121665'
diff --git a/src/Specific/solinas32_2e495m31_21limbs/CurveParameters.v b/src/Specific/solinas32_2e495m31_21limbs/CurveParameters.v
deleted file mode 100644
index 17fe6c0b8..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^495 - 31
-Base: 23 + 4/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 21%nat;
- base := 23 + 4/7;
- bitwidth := 32;
- s := 2^495;
- c := [(1, 31)];
- carry_chains := Some [seq 0 (pred 21); [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_2e495m31_21limbs/Synthesis.v b/src/Specific/solinas32_2e495m31_21limbs/Synthesis.v
deleted file mode 100644
index b55dd1d70..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e495m31_21limbs.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_2e495m31_21limbs/compiler.sh b/src/Specific/solinas32_2e495m31_21limbs/compiler.sh
deleted file mode 100755
index e4766e188..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,23,24,23,24,23,24,24,23,24,23,24,23,24,24,23,24,23,24,23}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='21' -Dq_mpz='(1_mpz<<495) - 31' "$@"
diff --git a/src/Specific/solinas32_2e495m31_21limbs/compilerxx.sh b/src/Specific/solinas32_2e495m31_21limbs/compilerxx.sh
deleted file mode 100755
index 4795b9c51..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,24,23,24,23,24,23,24,24,23,24,23,24,23,24,24,23,24,23,24,23}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='21' -Dq_mpz='(1_mpz<<495) - 31' "$@"
diff --git a/src/Specific/solinas32_2e495m31_21limbs/feadd.c b/src/Specific/solinas32_2e495m31_21limbs/feadd.c
deleted file mode 100644
index b5452623f..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/feadd.c
+++ /dev/null
@@ -1,66 +0,0 @@
-static void feadd(uint32_t out[21], const uint32_t in1[21], const uint32_t in2[21]) {
- { const uint32_t x42 = in1[20];
- { const uint32_t x43 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x82 = in2[20];
- { const uint32_t x83 = in2[19];
- { const uint32_t x81 = in2[18];
- { const uint32_t x79 = in2[17];
- { const uint32_t x77 = in2[16];
- { const uint32_t x75 = in2[15];
- { const uint32_t x73 = in2[14];
- { const uint32_t x71 = in2[13];
- { const uint32_t x69 = in2[12];
- { const uint32_t x67 = in2[11];
- { const uint32_t x65 = in2[10];
- { const uint32_t x63 = in2[9];
- { const uint32_t x61 = in2[8];
- { const uint32_t x59 = in2[7];
- { const uint32_t x57 = in2[6];
- { const uint32_t x55 = in2[5];
- { const uint32_t x53 = in2[4];
- { const uint32_t x51 = in2[3];
- { const uint32_t x49 = in2[2];
- { const uint32_t x47 = in2[1];
- { const uint32_t x45 = in2[0];
- out[0] = (x5 + x45);
- out[1] = (x7 + x47);
- out[2] = (x9 + x49);
- out[3] = (x11 + x51);
- out[4] = (x13 + x53);
- out[5] = (x15 + x55);
- out[6] = (x17 + x57);
- out[7] = (x19 + x59);
- out[8] = (x21 + x61);
- out[9] = (x23 + x63);
- out[10] = (x25 + x65);
- out[11] = (x27 + x67);
- out[12] = (x29 + x69);
- out[13] = (x31 + x71);
- out[14] = (x33 + x73);
- out[15] = (x35 + x75);
- out[16] = (x37 + x77);
- out[17] = (x39 + x79);
- out[18] = (x41 + x81);
- out[19] = (x43 + x83);
- out[20] = (x42 + x82);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e495m31_21limbs/feadd.v b/src/Specific/solinas32_2e495m31_21limbs/feadd.v
deleted file mode 100644
index 3e0caf08c..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e495m31_21limbs.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_2e495m31_21limbs/feaddDisplay.log b/src/Specific/solinas32_2e495m31_21limbs/feaddDisplay.log
deleted file mode 100644
index 0841fa889..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x82, x83, x81, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45))%core,
- ((x42 + x82), (x43 + x83), (x41 + x81), (x39 + x79), (x37 + x77), (x35 + x75), (x33 + x73), (x31 + x71), (x29 + x69), (x27 + x67), (x25 + x65), (x23 + x63), (x21 + x61), (x19 + x59), (x17 + x57), (x15 + x55), (x13 + x53), (x11 + x51), (x9 + x49), (x7 + x47), (x5 + x45)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e495m31_21limbs/feaddDisplay.v b/src/Specific/solinas32_2e495m31_21limbs/feaddDisplay.v
deleted file mode 100644
index a0c1fb07a..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e495m31_21limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e495m31_21limbs/fecarry.v b/src/Specific/solinas32_2e495m31_21limbs/fecarry.v
deleted file mode 100644
index 385f6e6b5..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e495m31_21limbs.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_2e495m31_21limbs/fecarryDisplay.v b/src/Specific/solinas32_2e495m31_21limbs/fecarryDisplay.v
deleted file mode 100644
index 12e006627..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e495m31_21limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e495m31_21limbs/femul.c b/src/Specific/solinas32_2e495m31_21limbs/femul.c
deleted file mode 100644
index 6485af339..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/femul.c
+++ /dev/null
@@ -1,155 +0,0 @@
-static void femul(uint32_t out[21], const uint32_t in1[21], const uint32_t in2[21]) {
- { const uint32_t x42 = in1[20];
- { const uint32_t x43 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x82 = in2[20];
- { const uint32_t x83 = in2[19];
- { const uint32_t x81 = in2[18];
- { const uint32_t x79 = in2[17];
- { const uint32_t x77 = in2[16];
- { const uint32_t x75 = in2[15];
- { const uint32_t x73 = in2[14];
- { const uint32_t x71 = in2[13];
- { const uint32_t x69 = in2[12];
- { const uint32_t x67 = in2[11];
- { const uint32_t x65 = in2[10];
- { const uint32_t x63 = in2[9];
- { const uint32_t x61 = in2[8];
- { const uint32_t x59 = in2[7];
- { const uint32_t x57 = in2[6];
- { const uint32_t x55 = in2[5];
- { const uint32_t x53 = in2[4];
- { const uint32_t x51 = in2[3];
- { const uint32_t x49 = in2[2];
- { const uint32_t x47 = in2[1];
- { const uint32_t x45 = in2[0];
- { uint64_t x84 = (((uint64_t)x5 * x82) + (((uint64_t)x7 * x83) + ((0x2 * ((uint64_t)x9 * x81)) + (((uint64_t)x11 * x79) + ((0x2 * ((uint64_t)x13 * x77)) + (((uint64_t)x15 * x75) + (((uint64_t)x17 * x73) + (((uint64_t)x19 * x71) + (((uint64_t)x21 * x69) + ((0x2 * ((uint64_t)x23 * x67)) + (((uint64_t)x25 * x65) + ((0x2 * ((uint64_t)x27 * x63)) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + ((0x2 * ((uint64_t)x37 * x53)) + (((uint64_t)x39 * x51) + ((0x2 * ((uint64_t)x41 * x49)) + (((uint64_t)x43 * x47) + ((uint64_t)x42 * x45)))))))))))))))))))));
- { uint64_t x85 = ((((uint64_t)x5 * x83) + ((0x2 * ((uint64_t)x7 * x81)) + ((0x2 * ((uint64_t)x9 * x79)) + ((0x2 * ((uint64_t)x11 * x77)) + ((0x2 * ((uint64_t)x13 * x75)) + (((uint64_t)x15 * x73) + ((0x2 * ((uint64_t)x17 * x71)) + (((uint64_t)x19 * x69) + ((0x2 * ((uint64_t)x21 * x67)) + ((0x2 * ((uint64_t)x23 * x65)) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + (((uint64_t)x29 * x59) + ((0x2 * ((uint64_t)x31 * x57)) + (((uint64_t)x33 * x55) + ((0x2 * ((uint64_t)x35 * x53)) + ((0x2 * ((uint64_t)x37 * x51)) + ((0x2 * ((uint64_t)x39 * x49)) + ((0x2 * ((uint64_t)x41 * x47)) + ((uint64_t)x43 * x45)))))))))))))))))))) + (0x1f * (0x2 * ((uint64_t)x42 * x82))));
- { uint64_t x86 = ((((uint64_t)x5 * x81) + (((uint64_t)x7 * x79) + ((0x2 * ((uint64_t)x9 * x77)) + (((uint64_t)x11 * x75) + (((uint64_t)x13 * x73) + (((uint64_t)x15 * x71) + (((uint64_t)x17 * x69) + (((uint64_t)x19 * x67) + (((uint64_t)x21 * x65) + ((0x2 * ((uint64_t)x23 * x63)) + (((uint64_t)x25 * x61) + (((uint64_t)x27 * x59) + (((uint64_t)x29 * x57) + (((uint64_t)x31 * x55) + (((uint64_t)x33 * x53) + (((uint64_t)x35 * x51) + ((0x2 * ((uint64_t)x37 * x49)) + (((uint64_t)x39 * x47) + ((uint64_t)x41 * x45))))))))))))))))))) + (0x1f * (((uint64_t)x43 * x82) + ((uint64_t)x42 * x83))));
- { uint64_t x87 = ((((uint64_t)x5 * x79) + ((0x2 * ((uint64_t)x7 * x77)) + ((0x2 * ((uint64_t)x9 * x75)) + (((uint64_t)x11 * x73) + ((0x2 * ((uint64_t)x13 * x71)) + (((uint64_t)x15 * x69) + ((0x2 * ((uint64_t)x17 * x67)) + (((uint64_t)x19 * x65) + ((0x2 * ((uint64_t)x21 * x63)) + ((0x2 * ((uint64_t)x23 * x61)) + (((uint64_t)x25 * x59) + ((0x2 * ((uint64_t)x27 * x57)) + (((uint64_t)x29 * x55) + ((0x2 * ((uint64_t)x31 * x53)) + (((uint64_t)x33 * x51) + ((0x2 * ((uint64_t)x35 * x49)) + ((0x2 * ((uint64_t)x37 * x47)) + ((uint64_t)x39 * x45)))))))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x41 * x82)) + (((uint64_t)x43 * x83) + (0x2 * ((uint64_t)x42 * x81))))));
- { uint64_t x88 = ((((uint64_t)x5 * x77) + (((uint64_t)x7 * x75) + (((uint64_t)x9 * x73) + (((uint64_t)x11 * x71) + (((uint64_t)x13 * x69) + (((uint64_t)x15 * x67) + (((uint64_t)x17 * x65) + (((uint64_t)x19 * x63) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + (((uint64_t)x35 * x47) + ((uint64_t)x37 * x45))))))))))))))))) + (0x1f * (((uint64_t)x39 * x82) + (((uint64_t)x41 * x83) + (((uint64_t)x43 * x81) + ((uint64_t)x42 * x79))))));
- { uint64_t x89 = ((((uint64_t)x5 * x75) + (((uint64_t)x7 * x73) + ((0x2 * ((uint64_t)x9 * x71)) + (((uint64_t)x11 * x69) + ((0x2 * ((uint64_t)x13 * x67)) + (((uint64_t)x15 * x65) + ((0x2 * ((uint64_t)x17 * x63)) + (((uint64_t)x19 * x61) + (((uint64_t)x21 * x59) + ((0x2 * ((uint64_t)x23 * x57)) + (((uint64_t)x25 * x55) + ((0x2 * ((uint64_t)x27 * x53)) + (((uint64_t)x29 * x51) + ((0x2 * ((uint64_t)x31 * x49)) + (((uint64_t)x33 * x47) + ((uint64_t)x35 * x45)))))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x37 * x82)) + (((uint64_t)x39 * x83) + ((0x2 * ((uint64_t)x41 * x81)) + (((uint64_t)x43 * x79) + (0x2 * ((uint64_t)x42 * x77))))))));
- { uint64_t x90 = ((((uint64_t)x5 * x73) + ((0x2 * ((uint64_t)x7 * x71)) + ((0x2 * ((uint64_t)x9 * x69)) + ((0x2 * ((uint64_t)x11 * x67)) + ((0x2 * ((uint64_t)x13 * x65)) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + (((uint64_t)x19 * x59) + ((0x2 * ((uint64_t)x21 * x57)) + ((0x2 * ((uint64_t)x23 * x55)) + ((0x2 * ((uint64_t)x25 * x53)) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + ((uint64_t)x33 * x45))))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x35 * x82)) + ((0x2 * ((uint64_t)x37 * x83)) + ((0x2 * ((uint64_t)x39 * x81)) + ((0x2 * ((uint64_t)x41 * x79)) + ((0x2 * ((uint64_t)x43 * x77)) + (0x2 * ((uint64_t)x42 * x75)))))))));
- { uint64_t x91 = ((((uint64_t)x5 * x71) + (((uint64_t)x7 * x69) + ((0x2 * ((uint64_t)x9 * x67)) + (((uint64_t)x11 * x65) + ((0x2 * ((uint64_t)x13 * x63)) + (((uint64_t)x15 * x61) + (((uint64_t)x17 * x59) + (((uint64_t)x19 * x57) + (((uint64_t)x21 * x55) + ((0x2 * ((uint64_t)x23 * x53)) + (((uint64_t)x25 * x51) + ((0x2 * ((uint64_t)x27 * x49)) + (((uint64_t)x29 * x47) + ((uint64_t)x31 * x45)))))))))))))) + (0x1f * (((uint64_t)x33 * x82) + (((uint64_t)x35 * x83) + ((0x2 * ((uint64_t)x37 * x81)) + (((uint64_t)x39 * x79) + ((0x2 * ((uint64_t)x41 * x77)) + (((uint64_t)x43 * x75) + ((uint64_t)x42 * x73)))))))));
- { uint64_t x92 = ((((uint64_t)x5 * x69) + ((0x2 * ((uint64_t)x7 * x67)) + ((0x2 * ((uint64_t)x9 * x65)) + ((0x2 * ((uint64_t)x11 * x63)) + ((0x2 * ((uint64_t)x13 * x61)) + (((uint64_t)x15 * x59) + ((0x2 * ((uint64_t)x17 * x57)) + (((uint64_t)x19 * x55) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + ((uint64_t)x29 * x45))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x31 * x82)) + (((uint64_t)x33 * x83) + ((0x2 * ((uint64_t)x35 * x81)) + ((0x2 * ((uint64_t)x37 * x79)) + ((0x2 * ((uint64_t)x39 * x77)) + ((0x2 * ((uint64_t)x41 * x75)) + (((uint64_t)x43 * x73) + (0x2 * ((uint64_t)x42 * x71)))))))))));
- { uint64_t x93 = ((((uint64_t)x5 * x67) + (((uint64_t)x7 * x65) + ((0x2 * ((uint64_t)x9 * x63)) + (((uint64_t)x11 * x61) + (((uint64_t)x13 * x59) + (((uint64_t)x15 * x57) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + (((uint64_t)x21 * x51) + ((0x2 * ((uint64_t)x23 * x49)) + (((uint64_t)x25 * x47) + ((uint64_t)x27 * x45)))))))))))) + (0x1f * (((uint64_t)x29 * x82) + (((uint64_t)x31 * x83) + (((uint64_t)x33 * x81) + (((uint64_t)x35 * x79) + ((0x2 * ((uint64_t)x37 * x77)) + (((uint64_t)x39 * x75) + (((uint64_t)x41 * x73) + (((uint64_t)x43 * x71) + ((uint64_t)x42 * x69)))))))))));
- { uint64_t x94 = ((((uint64_t)x5 * x65) + ((0x2 * ((uint64_t)x7 * x63)) + ((0x2 * ((uint64_t)x9 * x61)) + (((uint64_t)x11 * x59) + ((0x2 * ((uint64_t)x13 * x57)) + (((uint64_t)x15 * x55) + ((0x2 * ((uint64_t)x17 * x53)) + (((uint64_t)x19 * x51) + ((0x2 * ((uint64_t)x21 * x49)) + ((0x2 * ((uint64_t)x23 * x47)) + ((uint64_t)x25 * x45))))))))))) + (0x1f * ((0x2 * ((uint64_t)x27 * x82)) + (((uint64_t)x29 * x83) + ((0x2 * ((uint64_t)x31 * x81)) + (((uint64_t)x33 * x79) + ((0x2 * ((uint64_t)x35 * x77)) + ((0x2 * ((uint64_t)x37 * x75)) + (((uint64_t)x39 * x73) + ((0x2 * ((uint64_t)x41 * x71)) + (((uint64_t)x43 * x69) + (0x2 * ((uint64_t)x42 * x67)))))))))))));
- { uint64_t x95 = ((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + (((uint64_t)x9 * x59) + (((uint64_t)x11 * x57) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + ((uint64_t)x23 * x45)))))))))) + (0x1f * (((uint64_t)x25 * x82) + (((uint64_t)x27 * x83) + (((uint64_t)x29 * x81) + (((uint64_t)x31 * x79) + (((uint64_t)x33 * x77) + (((uint64_t)x35 * x75) + (((uint64_t)x37 * x73) + (((uint64_t)x39 * x71) + (((uint64_t)x41 * x69) + (((uint64_t)x43 * x67) + ((uint64_t)x42 * x65)))))))))))));
- { uint64_t x96 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + ((0x2 * ((uint64_t)x9 * x57)) + (((uint64_t)x11 * x55) + ((0x2 * ((uint64_t)x13 * x53)) + (((uint64_t)x15 * x51) + ((0x2 * ((uint64_t)x17 * x49)) + (((uint64_t)x19 * x47) + ((uint64_t)x21 * x45))))))))) + (0x1f * ((0x2 * ((uint64_t)x23 * x82)) + (((uint64_t)x25 * x83) + ((0x2 * ((uint64_t)x27 * x81)) + (((uint64_t)x29 * x79) + ((0x2 * ((uint64_t)x31 * x77)) + (((uint64_t)x33 * x75) + (((uint64_t)x35 * x73) + ((0x2 * ((uint64_t)x37 * x71)) + (((uint64_t)x39 * x69) + ((0x2 * ((uint64_t)x41 * x67)) + (((uint64_t)x43 * x65) + (0x2 * ((uint64_t)x42 * x63)))))))))))))));
- { uint64_t x97 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((uint64_t)x19 * x45)))))))) + (0x1f * ((0x2 * ((uint64_t)x21 * x82)) + ((0x2 * ((uint64_t)x23 * x83)) + ((0x2 * ((uint64_t)x25 * x81)) + ((0x2 * ((uint64_t)x27 * x79)) + ((0x2 * ((uint64_t)x29 * x77)) + ((0x2 * ((uint64_t)x31 * x75)) + (((uint64_t)x33 * x73) + ((0x2 * ((uint64_t)x35 * x71)) + ((0x2 * ((uint64_t)x37 * x69)) + ((0x2 * ((uint64_t)x39 * x67)) + ((0x2 * ((uint64_t)x41 * x65)) + ((0x2 * ((uint64_t)x43 * x63)) + (0x2 * ((uint64_t)x42 * x61))))))))))))))));
- { uint64_t x98 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + ((0x2 * ((uint64_t)x9 * x53)) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + (((uint64_t)x15 * x47) + ((uint64_t)x17 * x45))))))) + (0x1f * (((uint64_t)x19 * x82) + (((uint64_t)x21 * x83) + ((0x2 * ((uint64_t)x23 * x81)) + (((uint64_t)x25 * x79) + ((0x2 * ((uint64_t)x27 * x77)) + (((uint64_t)x29 * x75) + (((uint64_t)x31 * x73) + (((uint64_t)x33 * x71) + (((uint64_t)x35 * x69) + ((0x2 * ((uint64_t)x37 * x67)) + (((uint64_t)x39 * x65) + ((0x2 * ((uint64_t)x41 * x63)) + (((uint64_t)x43 * x61) + ((uint64_t)x42 * x59))))))))))))))));
- { uint64_t x99 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((uint64_t)x15 * x45)))))) + (0x1f * ((0x2 * ((uint64_t)x17 * x82)) + (((uint64_t)x19 * x83) + ((0x2 * ((uint64_t)x21 * x81)) + ((0x2 * ((uint64_t)x23 * x79)) + ((0x2 * ((uint64_t)x25 * x77)) + ((0x2 * ((uint64_t)x27 * x75)) + (((uint64_t)x29 * x73) + ((0x2 * ((uint64_t)x31 * x71)) + (((uint64_t)x33 * x69) + ((0x2 * ((uint64_t)x35 * x67)) + ((0x2 * ((uint64_t)x37 * x65)) + ((0x2 * ((uint64_t)x39 * x63)) + ((0x2 * ((uint64_t)x41 * x61)) + (((uint64_t)x43 * x59) + (0x2 * ((uint64_t)x42 * x57))))))))))))))))));
- { uint64_t x100 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + ((uint64_t)x13 * x45))))) + (0x1f * (((uint64_t)x15 * x82) + (((uint64_t)x17 * x83) + (((uint64_t)x19 * x81) + (((uint64_t)x21 * x79) + ((0x2 * ((uint64_t)x23 * x77)) + (((uint64_t)x25 * x75) + (((uint64_t)x27 * x73) + (((uint64_t)x29 * x71) + (((uint64_t)x31 * x69) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + ((0x2 * ((uint64_t)x37 * x63)) + (((uint64_t)x39 * x61) + (((uint64_t)x41 * x59) + (((uint64_t)x43 * x57) + ((uint64_t)x42 * x55))))))))))))))))));
- { uint64_t x101 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((uint64_t)x11 * x45)))) + (0x1f * ((0x2 * ((uint64_t)x13 * x82)) + (((uint64_t)x15 * x83) + ((0x2 * ((uint64_t)x17 * x81)) + (((uint64_t)x19 * x79) + ((0x2 * ((uint64_t)x21 * x77)) + ((0x2 * ((uint64_t)x23 * x75)) + (((uint64_t)x25 * x73) + ((0x2 * ((uint64_t)x27 * x71)) + (((uint64_t)x29 * x69) + ((0x2 * ((uint64_t)x31 * x67)) + (((uint64_t)x33 * x65) + ((0x2 * ((uint64_t)x35 * x63)) + ((0x2 * ((uint64_t)x37 * x61)) + (((uint64_t)x39 * x59) + ((0x2 * ((uint64_t)x41 * x57)) + (((uint64_t)x43 * x55) + (0x2 * ((uint64_t)x42 * x53))))))))))))))))))));
- { uint64_t x102 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + ((uint64_t)x9 * x45))) + (0x1f * (((uint64_t)x11 * x82) + (((uint64_t)x13 * x83) + (((uint64_t)x15 * x81) + (((uint64_t)x17 * x79) + (((uint64_t)x19 * x77) + (((uint64_t)x21 * x75) + (((uint64_t)x23 * x73) + (((uint64_t)x25 * x71) + (((uint64_t)x27 * x69) + (((uint64_t)x29 * x67) + (((uint64_t)x31 * x65) + (((uint64_t)x33 * x63) + (((uint64_t)x35 * x61) + (((uint64_t)x37 * x59) + (((uint64_t)x39 * x57) + (((uint64_t)x41 * x55) + (((uint64_t)x43 * x53) + ((uint64_t)x42 * x51))))))))))))))))))));
- { uint64_t x103 = ((((uint64_t)x5 * x47) + ((uint64_t)x7 * x45)) + (0x1f * ((0x2 * ((uint64_t)x9 * x82)) + (((uint64_t)x11 * x83) + ((0x2 * ((uint64_t)x13 * x81)) + (((uint64_t)x15 * x79) + ((0x2 * ((uint64_t)x17 * x77)) + (((uint64_t)x19 * x75) + (((uint64_t)x21 * x73) + ((0x2 * ((uint64_t)x23 * x71)) + (((uint64_t)x25 * x69) + ((0x2 * ((uint64_t)x27 * x67)) + (((uint64_t)x29 * x65) + ((0x2 * ((uint64_t)x31 * x63)) + (((uint64_t)x33 * x61) + (((uint64_t)x35 * x59) + ((0x2 * ((uint64_t)x37 * x57)) + (((uint64_t)x39 * x55) + ((0x2 * ((uint64_t)x41 * x53)) + (((uint64_t)x43 * x51) + (0x2 * ((uint64_t)x42 * x49))))))))))))))))))))));
- { uint64_t x104 = (((uint64_t)x5 * x45) + (0x1f * ((0x2 * ((uint64_t)x7 * x82)) + ((0x2 * ((uint64_t)x9 * x83)) + ((0x2 * ((uint64_t)x11 * x81)) + ((0x2 * ((uint64_t)x13 * x79)) + ((0x2 * ((uint64_t)x15 * x77)) + ((0x2 * ((uint64_t)x17 * x75)) + (((uint64_t)x19 * x73) + ((0x2 * ((uint64_t)x21 * x71)) + ((0x2 * ((uint64_t)x23 * x69)) + ((0x2 * ((uint64_t)x25 * x67)) + ((0x2 * ((uint64_t)x27 * x65)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + (((uint64_t)x33 * x59) + ((0x2 * ((uint64_t)x35 * x57)) + ((0x2 * ((uint64_t)x37 * x55)) + ((0x2 * ((uint64_t)x39 * x53)) + ((0x2 * ((uint64_t)x41 * x51)) + ((0x2 * ((uint64_t)x43 * x49)) + (0x2 * ((uint64_t)x42 * x47)))))))))))))))))))))));
- { uint64_t x105 = (x104 >> 0x18);
- { uint32_t x106 = ((uint32_t)x104 & 0xffffff);
- { uint64_t x107 = (x105 + x103);
- { uint64_t x108 = (x107 >> 0x18);
- { uint32_t x109 = ((uint32_t)x107 & 0xffffff);
- { uint64_t x110 = (x108 + x102);
- { uint64_t x111 = (x110 >> 0x17);
- { uint32_t x112 = ((uint32_t)x110 & 0x7fffff);
- { uint64_t x113 = (x111 + x101);
- { uint64_t x114 = (x113 >> 0x18);
- { uint32_t x115 = ((uint32_t)x113 & 0xffffff);
- { uint64_t x116 = (x114 + x100);
- { uint64_t x117 = (x116 >> 0x17);
- { uint32_t x118 = ((uint32_t)x116 & 0x7fffff);
- { uint64_t x119 = (x117 + x99);
- { uint64_t x120 = (x119 >> 0x18);
- { uint32_t x121 = ((uint32_t)x119 & 0xffffff);
- { uint64_t x122 = (x120 + x98);
- { uint64_t x123 = (x122 >> 0x17);
- { uint32_t x124 = ((uint32_t)x122 & 0x7fffff);
- { uint64_t x125 = (x123 + x97);
- { uint64_t x126 = (x125 >> 0x18);
- { uint32_t x127 = ((uint32_t)x125 & 0xffffff);
- { uint64_t x128 = (x126 + x96);
- { uint64_t x129 = (x128 >> 0x18);
- { uint32_t x130 = ((uint32_t)x128 & 0xffffff);
- { uint64_t x131 = (x129 + x95);
- { uint64_t x132 = (x131 >> 0x17);
- { uint32_t x133 = ((uint32_t)x131 & 0x7fffff);
- { uint64_t x134 = (x132 + x94);
- { uint64_t x135 = (x134 >> 0x18);
- { uint32_t x136 = ((uint32_t)x134 & 0xffffff);
- { uint64_t x137 = (x135 + x93);
- { uint64_t x138 = (x137 >> 0x17);
- { uint32_t x139 = ((uint32_t)x137 & 0x7fffff);
- { uint64_t x140 = (x138 + x92);
- { uint64_t x141 = (x140 >> 0x18);
- { uint32_t x142 = ((uint32_t)x140 & 0xffffff);
- { uint64_t x143 = (x141 + x91);
- { uint64_t x144 = (x143 >> 0x17);
- { uint32_t x145 = ((uint32_t)x143 & 0x7fffff);
- { uint64_t x146 = (x144 + x90);
- { uint64_t x147 = (x146 >> 0x18);
- { uint32_t x148 = ((uint32_t)x146 & 0xffffff);
- { uint64_t x149 = (x147 + x89);
- { uint64_t x150 = (x149 >> 0x18);
- { uint32_t x151 = ((uint32_t)x149 & 0xffffff);
- { uint64_t x152 = (x150 + x88);
- { uint64_t x153 = (x152 >> 0x17);
- { uint32_t x154 = ((uint32_t)x152 & 0x7fffff);
- { uint64_t x155 = (x153 + x87);
- { uint64_t x156 = (x155 >> 0x18);
- { uint32_t x157 = ((uint32_t)x155 & 0xffffff);
- { uint64_t x158 = (x156 + x86);
- { uint64_t x159 = (x158 >> 0x17);
- { uint32_t x160 = ((uint32_t)x158 & 0x7fffff);
- { uint64_t x161 = (x159 + x85);
- { uint64_t x162 = (x161 >> 0x18);
- { uint32_t x163 = ((uint32_t)x161 & 0xffffff);
- { uint64_t x164 = (x162 + x84);
- { uint64_t x165 = (x164 >> 0x17);
- { uint32_t x166 = ((uint32_t)x164 & 0x7fffff);
- { uint64_t x167 = (x106 + (0x1f * x165));
- { uint32_t x168 = (uint32_t) (x167 >> 0x18);
- { uint32_t x169 = ((uint32_t)x167 & 0xffffff);
- { uint32_t x170 = (x168 + x109);
- { uint32_t x171 = (x170 >> 0x18);
- { uint32_t x172 = (x170 & 0xffffff);
- out[0] = x169;
- out[1] = x172;
- out[2] = (x171 + x112);
- out[3] = x115;
- out[4] = x118;
- out[5] = x121;
- out[6] = x124;
- out[7] = x127;
- out[8] = x130;
- out[9] = x133;
- out[10] = x136;
- out[11] = x139;
- out[12] = x142;
- out[13] = x145;
- out[14] = x148;
- out[15] = x151;
- out[16] = x154;
- out[17] = x157;
- out[18] = x160;
- out[19] = x163;
- out[20] = x166;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e495m31_21limbs/femul.v b/src/Specific/solinas32_2e495m31_21limbs/femul.v
deleted file mode 100644
index 860886430..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e495m31_21limbs.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_2e495m31_21limbs/femulDisplay.log b/src/Specific/solinas32_2e495m31_21limbs/femulDisplay.log
deleted file mode 100644
index a22086fd9..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/femulDisplay.log
+++ /dev/null
@@ -1,96 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x82, x83, x81, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45))%core,
- uint64_t x84 = (((uint64_t)x5 * x82) + (((uint64_t)x7 * x83) + ((0x2 * ((uint64_t)x9 * x81)) + (((uint64_t)x11 * x79) + ((0x2 * ((uint64_t)x13 * x77)) + (((uint64_t)x15 * x75) + (((uint64_t)x17 * x73) + (((uint64_t)x19 * x71) + (((uint64_t)x21 * x69) + ((0x2 * ((uint64_t)x23 * x67)) + (((uint64_t)x25 * x65) + ((0x2 * ((uint64_t)x27 * x63)) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + ((0x2 * ((uint64_t)x37 * x53)) + (((uint64_t)x39 * x51) + ((0x2 * ((uint64_t)x41 * x49)) + (((uint64_t)x43 * x47) + ((uint64_t)x42 * x45)))))))))))))))))))));
- uint64_t x85 = ((((uint64_t)x5 * x83) + ((0x2 * ((uint64_t)x7 * x81)) + ((0x2 * ((uint64_t)x9 * x79)) + ((0x2 * ((uint64_t)x11 * x77)) + ((0x2 * ((uint64_t)x13 * x75)) + (((uint64_t)x15 * x73) + ((0x2 * ((uint64_t)x17 * x71)) + (((uint64_t)x19 * x69) + ((0x2 * ((uint64_t)x21 * x67)) + ((0x2 * ((uint64_t)x23 * x65)) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + (((uint64_t)x29 * x59) + ((0x2 * ((uint64_t)x31 * x57)) + (((uint64_t)x33 * x55) + ((0x2 * ((uint64_t)x35 * x53)) + ((0x2 * ((uint64_t)x37 * x51)) + ((0x2 * ((uint64_t)x39 * x49)) + ((0x2 * ((uint64_t)x41 * x47)) + ((uint64_t)x43 * x45)))))))))))))))))))) + (0x1f * (0x2 * ((uint64_t)x42 * x82))));
- uint64_t x86 = ((((uint64_t)x5 * x81) + (((uint64_t)x7 * x79) + ((0x2 * ((uint64_t)x9 * x77)) + (((uint64_t)x11 * x75) + (((uint64_t)x13 * x73) + (((uint64_t)x15 * x71) + (((uint64_t)x17 * x69) + (((uint64_t)x19 * x67) + (((uint64_t)x21 * x65) + ((0x2 * ((uint64_t)x23 * x63)) + (((uint64_t)x25 * x61) + (((uint64_t)x27 * x59) + (((uint64_t)x29 * x57) + (((uint64_t)x31 * x55) + (((uint64_t)x33 * x53) + (((uint64_t)x35 * x51) + ((0x2 * ((uint64_t)x37 * x49)) + (((uint64_t)x39 * x47) + ((uint64_t)x41 * x45))))))))))))))))))) + (0x1f * (((uint64_t)x43 * x82) + ((uint64_t)x42 * x83))));
- uint64_t x87 = ((((uint64_t)x5 * x79) + ((0x2 * ((uint64_t)x7 * x77)) + ((0x2 * ((uint64_t)x9 * x75)) + (((uint64_t)x11 * x73) + ((0x2 * ((uint64_t)x13 * x71)) + (((uint64_t)x15 * x69) + ((0x2 * ((uint64_t)x17 * x67)) + (((uint64_t)x19 * x65) + ((0x2 * ((uint64_t)x21 * x63)) + ((0x2 * ((uint64_t)x23 * x61)) + (((uint64_t)x25 * x59) + ((0x2 * ((uint64_t)x27 * x57)) + (((uint64_t)x29 * x55) + ((0x2 * ((uint64_t)x31 * x53)) + (((uint64_t)x33 * x51) + ((0x2 * ((uint64_t)x35 * x49)) + ((0x2 * ((uint64_t)x37 * x47)) + ((uint64_t)x39 * x45)))))))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x41 * x82)) + (((uint64_t)x43 * x83) + (0x2 * ((uint64_t)x42 * x81))))));
- uint64_t x88 = ((((uint64_t)x5 * x77) + (((uint64_t)x7 * x75) + (((uint64_t)x9 * x73) + (((uint64_t)x11 * x71) + (((uint64_t)x13 * x69) + (((uint64_t)x15 * x67) + (((uint64_t)x17 * x65) + (((uint64_t)x19 * x63) + (((uint64_t)x21 * x61) + (((uint64_t)x23 * x59) + (((uint64_t)x25 * x57) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + (((uint64_t)x33 * x49) + (((uint64_t)x35 * x47) + ((uint64_t)x37 * x45))))))))))))))))) + (0x1f * (((uint64_t)x39 * x82) + (((uint64_t)x41 * x83) + (((uint64_t)x43 * x81) + ((uint64_t)x42 * x79))))));
- uint64_t x89 = ((((uint64_t)x5 * x75) + (((uint64_t)x7 * x73) + ((0x2 * ((uint64_t)x9 * x71)) + (((uint64_t)x11 * x69) + ((0x2 * ((uint64_t)x13 * x67)) + (((uint64_t)x15 * x65) + ((0x2 * ((uint64_t)x17 * x63)) + (((uint64_t)x19 * x61) + (((uint64_t)x21 * x59) + ((0x2 * ((uint64_t)x23 * x57)) + (((uint64_t)x25 * x55) + ((0x2 * ((uint64_t)x27 * x53)) + (((uint64_t)x29 * x51) + ((0x2 * ((uint64_t)x31 * x49)) + (((uint64_t)x33 * x47) + ((uint64_t)x35 * x45)))))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x37 * x82)) + (((uint64_t)x39 * x83) + ((0x2 * ((uint64_t)x41 * x81)) + (((uint64_t)x43 * x79) + (0x2 * ((uint64_t)x42 * x77))))))));
- uint64_t x90 = ((((uint64_t)x5 * x73) + ((0x2 * ((uint64_t)x7 * x71)) + ((0x2 * ((uint64_t)x9 * x69)) + ((0x2 * ((uint64_t)x11 * x67)) + ((0x2 * ((uint64_t)x13 * x65)) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + (((uint64_t)x19 * x59) + ((0x2 * ((uint64_t)x21 * x57)) + ((0x2 * ((uint64_t)x23 * x55)) + ((0x2 * ((uint64_t)x25 * x53)) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + ((uint64_t)x33 * x45))))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x35 * x82)) + ((0x2 * ((uint64_t)x37 * x83)) + ((0x2 * ((uint64_t)x39 * x81)) + ((0x2 * ((uint64_t)x41 * x79)) + ((0x2 * ((uint64_t)x43 * x77)) + (0x2 * ((uint64_t)x42 * x75)))))))));
- uint64_t x91 = ((((uint64_t)x5 * x71) + (((uint64_t)x7 * x69) + ((0x2 * ((uint64_t)x9 * x67)) + (((uint64_t)x11 * x65) + ((0x2 * ((uint64_t)x13 * x63)) + (((uint64_t)x15 * x61) + (((uint64_t)x17 * x59) + (((uint64_t)x19 * x57) + (((uint64_t)x21 * x55) + ((0x2 * ((uint64_t)x23 * x53)) + (((uint64_t)x25 * x51) + ((0x2 * ((uint64_t)x27 * x49)) + (((uint64_t)x29 * x47) + ((uint64_t)x31 * x45)))))))))))))) + (0x1f * (((uint64_t)x33 * x82) + (((uint64_t)x35 * x83) + ((0x2 * ((uint64_t)x37 * x81)) + (((uint64_t)x39 * x79) + ((0x2 * ((uint64_t)x41 * x77)) + (((uint64_t)x43 * x75) + ((uint64_t)x42 * x73)))))))));
- uint64_t x92 = ((((uint64_t)x5 * x69) + ((0x2 * ((uint64_t)x7 * x67)) + ((0x2 * ((uint64_t)x9 * x65)) + ((0x2 * ((uint64_t)x11 * x63)) + ((0x2 * ((uint64_t)x13 * x61)) + (((uint64_t)x15 * x59) + ((0x2 * ((uint64_t)x17 * x57)) + (((uint64_t)x19 * x55) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + ((uint64_t)x29 * x45))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x31 * x82)) + (((uint64_t)x33 * x83) + ((0x2 * ((uint64_t)x35 * x81)) + ((0x2 * ((uint64_t)x37 * x79)) + ((0x2 * ((uint64_t)x39 * x77)) + ((0x2 * ((uint64_t)x41 * x75)) + (((uint64_t)x43 * x73) + (0x2 * ((uint64_t)x42 * x71)))))))))));
- uint64_t x93 = ((((uint64_t)x5 * x67) + (((uint64_t)x7 * x65) + ((0x2 * ((uint64_t)x9 * x63)) + (((uint64_t)x11 * x61) + (((uint64_t)x13 * x59) + (((uint64_t)x15 * x57) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + (((uint64_t)x21 * x51) + ((0x2 * ((uint64_t)x23 * x49)) + (((uint64_t)x25 * x47) + ((uint64_t)x27 * x45)))))))))))) + (0x1f * (((uint64_t)x29 * x82) + (((uint64_t)x31 * x83) + (((uint64_t)x33 * x81) + (((uint64_t)x35 * x79) + ((0x2 * ((uint64_t)x37 * x77)) + (((uint64_t)x39 * x75) + (((uint64_t)x41 * x73) + (((uint64_t)x43 * x71) + ((uint64_t)x42 * x69)))))))))));
- uint64_t x94 = ((((uint64_t)x5 * x65) + ((0x2 * ((uint64_t)x7 * x63)) + ((0x2 * ((uint64_t)x9 * x61)) + (((uint64_t)x11 * x59) + ((0x2 * ((uint64_t)x13 * x57)) + (((uint64_t)x15 * x55) + ((0x2 * ((uint64_t)x17 * x53)) + (((uint64_t)x19 * x51) + ((0x2 * ((uint64_t)x21 * x49)) + ((0x2 * ((uint64_t)x23 * x47)) + ((uint64_t)x25 * x45))))))))))) + (0x1f * ((0x2 * ((uint64_t)x27 * x82)) + (((uint64_t)x29 * x83) + ((0x2 * ((uint64_t)x31 * x81)) + (((uint64_t)x33 * x79) + ((0x2 * ((uint64_t)x35 * x77)) + ((0x2 * ((uint64_t)x37 * x75)) + (((uint64_t)x39 * x73) + ((0x2 * ((uint64_t)x41 * x71)) + (((uint64_t)x43 * x69) + (0x2 * ((uint64_t)x42 * x67)))))))))))));
- uint64_t x95 = ((((uint64_t)x5 * x63) + (((uint64_t)x7 * x61) + (((uint64_t)x9 * x59) + (((uint64_t)x11 * x57) + (((uint64_t)x13 * x55) + (((uint64_t)x15 * x53) + (((uint64_t)x17 * x51) + (((uint64_t)x19 * x49) + (((uint64_t)x21 * x47) + ((uint64_t)x23 * x45)))))))))) + (0x1f * (((uint64_t)x25 * x82) + (((uint64_t)x27 * x83) + (((uint64_t)x29 * x81) + (((uint64_t)x31 * x79) + (((uint64_t)x33 * x77) + (((uint64_t)x35 * x75) + (((uint64_t)x37 * x73) + (((uint64_t)x39 * x71) + (((uint64_t)x41 * x69) + (((uint64_t)x43 * x67) + ((uint64_t)x42 * x65)))))))))))));
- uint64_t x96 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + ((0x2 * ((uint64_t)x9 * x57)) + (((uint64_t)x11 * x55) + ((0x2 * ((uint64_t)x13 * x53)) + (((uint64_t)x15 * x51) + ((0x2 * ((uint64_t)x17 * x49)) + (((uint64_t)x19 * x47) + ((uint64_t)x21 * x45))))))))) + (0x1f * ((0x2 * ((uint64_t)x23 * x82)) + (((uint64_t)x25 * x83) + ((0x2 * ((uint64_t)x27 * x81)) + (((uint64_t)x29 * x79) + ((0x2 * ((uint64_t)x31 * x77)) + (((uint64_t)x33 * x75) + (((uint64_t)x35 * x73) + ((0x2 * ((uint64_t)x37 * x71)) + (((uint64_t)x39 * x69) + ((0x2 * ((uint64_t)x41 * x67)) + (((uint64_t)x43 * x65) + (0x2 * ((uint64_t)x42 * x63)))))))))))))));
- uint64_t x97 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((uint64_t)x19 * x45)))))))) + (0x1f * ((0x2 * ((uint64_t)x21 * x82)) + ((0x2 * ((uint64_t)x23 * x83)) + ((0x2 * ((uint64_t)x25 * x81)) + ((0x2 * ((uint64_t)x27 * x79)) + ((0x2 * ((uint64_t)x29 * x77)) + ((0x2 * ((uint64_t)x31 * x75)) + (((uint64_t)x33 * x73) + ((0x2 * ((uint64_t)x35 * x71)) + ((0x2 * ((uint64_t)x37 * x69)) + ((0x2 * ((uint64_t)x39 * x67)) + ((0x2 * ((uint64_t)x41 * x65)) + ((0x2 * ((uint64_t)x43 * x63)) + (0x2 * ((uint64_t)x42 * x61))))))))))))))));
- uint64_t x98 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + ((0x2 * ((uint64_t)x9 * x53)) + (((uint64_t)x11 * x51) + ((0x2 * ((uint64_t)x13 * x49)) + (((uint64_t)x15 * x47) + ((uint64_t)x17 * x45))))))) + (0x1f * (((uint64_t)x19 * x82) + (((uint64_t)x21 * x83) + ((0x2 * ((uint64_t)x23 * x81)) + (((uint64_t)x25 * x79) + ((0x2 * ((uint64_t)x27 * x77)) + (((uint64_t)x29 * x75) + (((uint64_t)x31 * x73) + (((uint64_t)x33 * x71) + (((uint64_t)x35 * x69) + ((0x2 * ((uint64_t)x37 * x67)) + (((uint64_t)x39 * x65) + ((0x2 * ((uint64_t)x41 * x63)) + (((uint64_t)x43 * x61) + ((uint64_t)x42 * x59))))))))))))))));
- uint64_t x99 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((uint64_t)x15 * x45)))))) + (0x1f * ((0x2 * ((uint64_t)x17 * x82)) + (((uint64_t)x19 * x83) + ((0x2 * ((uint64_t)x21 * x81)) + ((0x2 * ((uint64_t)x23 * x79)) + ((0x2 * ((uint64_t)x25 * x77)) + ((0x2 * ((uint64_t)x27 * x75)) + (((uint64_t)x29 * x73) + ((0x2 * ((uint64_t)x31 * x71)) + (((uint64_t)x33 * x69) + ((0x2 * ((uint64_t)x35 * x67)) + ((0x2 * ((uint64_t)x37 * x65)) + ((0x2 * ((uint64_t)x39 * x63)) + ((0x2 * ((uint64_t)x41 * x61)) + (((uint64_t)x43 * x59) + (0x2 * ((uint64_t)x42 * x57))))))))))))))))));
- uint64_t x100 = ((((uint64_t)x5 * x53) + (((uint64_t)x7 * x51) + ((0x2 * ((uint64_t)x9 * x49)) + (((uint64_t)x11 * x47) + ((uint64_t)x13 * x45))))) + (0x1f * (((uint64_t)x15 * x82) + (((uint64_t)x17 * x83) + (((uint64_t)x19 * x81) + (((uint64_t)x21 * x79) + ((0x2 * ((uint64_t)x23 * x77)) + (((uint64_t)x25 * x75) + (((uint64_t)x27 * x73) + (((uint64_t)x29 * x71) + (((uint64_t)x31 * x69) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + ((0x2 * ((uint64_t)x37 * x63)) + (((uint64_t)x39 * x61) + (((uint64_t)x41 * x59) + (((uint64_t)x43 * x57) + ((uint64_t)x42 * x55))))))))))))))))));
- uint64_t x101 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((uint64_t)x11 * x45)))) + (0x1f * ((0x2 * ((uint64_t)x13 * x82)) + (((uint64_t)x15 * x83) + ((0x2 * ((uint64_t)x17 * x81)) + (((uint64_t)x19 * x79) + ((0x2 * ((uint64_t)x21 * x77)) + ((0x2 * ((uint64_t)x23 * x75)) + (((uint64_t)x25 * x73) + ((0x2 * ((uint64_t)x27 * x71)) + (((uint64_t)x29 * x69) + ((0x2 * ((uint64_t)x31 * x67)) + (((uint64_t)x33 * x65) + ((0x2 * ((uint64_t)x35 * x63)) + ((0x2 * ((uint64_t)x37 * x61)) + (((uint64_t)x39 * x59) + ((0x2 * ((uint64_t)x41 * x57)) + (((uint64_t)x43 * x55) + (0x2 * ((uint64_t)x42 * x53))))))))))))))))))));
- uint64_t x102 = ((((uint64_t)x5 * x49) + (((uint64_t)x7 * x47) + ((uint64_t)x9 * x45))) + (0x1f * (((uint64_t)x11 * x82) + (((uint64_t)x13 * x83) + (((uint64_t)x15 * x81) + (((uint64_t)x17 * x79) + (((uint64_t)x19 * x77) + (((uint64_t)x21 * x75) + (((uint64_t)x23 * x73) + (((uint64_t)x25 * x71) + (((uint64_t)x27 * x69) + (((uint64_t)x29 * x67) + (((uint64_t)x31 * x65) + (((uint64_t)x33 * x63) + (((uint64_t)x35 * x61) + (((uint64_t)x37 * x59) + (((uint64_t)x39 * x57) + (((uint64_t)x41 * x55) + (((uint64_t)x43 * x53) + ((uint64_t)x42 * x51))))))))))))))))))));
- uint64_t x103 = ((((uint64_t)x5 * x47) + ((uint64_t)x7 * x45)) + (0x1f * ((0x2 * ((uint64_t)x9 * x82)) + (((uint64_t)x11 * x83) + ((0x2 * ((uint64_t)x13 * x81)) + (((uint64_t)x15 * x79) + ((0x2 * ((uint64_t)x17 * x77)) + (((uint64_t)x19 * x75) + (((uint64_t)x21 * x73) + ((0x2 * ((uint64_t)x23 * x71)) + (((uint64_t)x25 * x69) + ((0x2 * ((uint64_t)x27 * x67)) + (((uint64_t)x29 * x65) + ((0x2 * ((uint64_t)x31 * x63)) + (((uint64_t)x33 * x61) + (((uint64_t)x35 * x59) + ((0x2 * ((uint64_t)x37 * x57)) + (((uint64_t)x39 * x55) + ((0x2 * ((uint64_t)x41 * x53)) + (((uint64_t)x43 * x51) + (0x2 * ((uint64_t)x42 * x49))))))))))))))))))))));
- uint64_t x104 = (((uint64_t)x5 * x45) + (0x1f * ((0x2 * ((uint64_t)x7 * x82)) + ((0x2 * ((uint64_t)x9 * x83)) + ((0x2 * ((uint64_t)x11 * x81)) + ((0x2 * ((uint64_t)x13 * x79)) + ((0x2 * ((uint64_t)x15 * x77)) + ((0x2 * ((uint64_t)x17 * x75)) + (((uint64_t)x19 * x73) + ((0x2 * ((uint64_t)x21 * x71)) + ((0x2 * ((uint64_t)x23 * x69)) + ((0x2 * ((uint64_t)x25 * x67)) + ((0x2 * ((uint64_t)x27 * x65)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + (((uint64_t)x33 * x59) + ((0x2 * ((uint64_t)x35 * x57)) + ((0x2 * ((uint64_t)x37 * x55)) + ((0x2 * ((uint64_t)x39 * x53)) + ((0x2 * ((uint64_t)x41 * x51)) + ((0x2 * ((uint64_t)x43 * x49)) + (0x2 * ((uint64_t)x42 * x47)))))))))))))))))))))));
- uint64_t x105 = (x104 >> 0x18);
- uint32_t x106 = ((uint32_t)x104 & 0xffffff);
- uint64_t x107 = (x105 + x103);
- uint64_t x108 = (x107 >> 0x18);
- uint32_t x109 = ((uint32_t)x107 & 0xffffff);
- uint64_t x110 = (x108 + x102);
- uint64_t x111 = (x110 >> 0x17);
- uint32_t x112 = ((uint32_t)x110 & 0x7fffff);
- uint64_t x113 = (x111 + x101);
- uint64_t x114 = (x113 >> 0x18);
- uint32_t x115 = ((uint32_t)x113 & 0xffffff);
- uint64_t x116 = (x114 + x100);
- uint64_t x117 = (x116 >> 0x17);
- uint32_t x118 = ((uint32_t)x116 & 0x7fffff);
- uint64_t x119 = (x117 + x99);
- uint64_t x120 = (x119 >> 0x18);
- uint32_t x121 = ((uint32_t)x119 & 0xffffff);
- uint64_t x122 = (x120 + x98);
- uint64_t x123 = (x122 >> 0x17);
- uint32_t x124 = ((uint32_t)x122 & 0x7fffff);
- uint64_t x125 = (x123 + x97);
- uint64_t x126 = (x125 >> 0x18);
- uint32_t x127 = ((uint32_t)x125 & 0xffffff);
- uint64_t x128 = (x126 + x96);
- uint64_t x129 = (x128 >> 0x18);
- uint32_t x130 = ((uint32_t)x128 & 0xffffff);
- uint64_t x131 = (x129 + x95);
- uint64_t x132 = (x131 >> 0x17);
- uint32_t x133 = ((uint32_t)x131 & 0x7fffff);
- uint64_t x134 = (x132 + x94);
- uint64_t x135 = (x134 >> 0x18);
- uint32_t x136 = ((uint32_t)x134 & 0xffffff);
- uint64_t x137 = (x135 + x93);
- uint64_t x138 = (x137 >> 0x17);
- uint32_t x139 = ((uint32_t)x137 & 0x7fffff);
- uint64_t x140 = (x138 + x92);
- uint64_t x141 = (x140 >> 0x18);
- uint32_t x142 = ((uint32_t)x140 & 0xffffff);
- uint64_t x143 = (x141 + x91);
- uint64_t x144 = (x143 >> 0x17);
- uint32_t x145 = ((uint32_t)x143 & 0x7fffff);
- uint64_t x146 = (x144 + x90);
- uint64_t x147 = (x146 >> 0x18);
- uint32_t x148 = ((uint32_t)x146 & 0xffffff);
- uint64_t x149 = (x147 + x89);
- uint64_t x150 = (x149 >> 0x18);
- uint32_t x151 = ((uint32_t)x149 & 0xffffff);
- uint64_t x152 = (x150 + x88);
- uint64_t x153 = (x152 >> 0x17);
- uint32_t x154 = ((uint32_t)x152 & 0x7fffff);
- uint64_t x155 = (x153 + x87);
- uint64_t x156 = (x155 >> 0x18);
- uint32_t x157 = ((uint32_t)x155 & 0xffffff);
- uint64_t x158 = (x156 + x86);
- uint64_t x159 = (x158 >> 0x17);
- uint32_t x160 = ((uint32_t)x158 & 0x7fffff);
- uint64_t x161 = (x159 + x85);
- uint64_t x162 = (x161 >> 0x18);
- uint32_t x163 = ((uint32_t)x161 & 0xffffff);
- uint64_t x164 = (x162 + x84);
- uint64_t x165 = (x164 >> 0x17);
- uint32_t x166 = ((uint32_t)x164 & 0x7fffff);
- uint64_t x167 = (x106 + (0x1f * x165));
- uint32_t x168 = (uint32_t) (x167 >> 0x18);
- uint32_t x169 = ((uint32_t)x167 & 0xffffff);
- uint32_t x170 = (x168 + x109);
- uint32_t x171 = (x170 >> 0x18);
- uint32_t x172 = (x170 & 0xffffff);
- return (Return x166, Return x163, Return x160, Return x157, Return x154, Return x151, Return x148, Return x145, Return x142, Return x139, Return x136, Return x133, Return x130, Return x127, Return x124, Return x121, Return x118, Return x115, (x171 + x112), Return x172, Return x169))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e495m31_21limbs/femulDisplay.v b/src/Specific/solinas32_2e495m31_21limbs/femulDisplay.v
deleted file mode 100644
index f7109ada5..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e495m31_21limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e495m31_21limbs/fesquare.c b/src/Specific/solinas32_2e495m31_21limbs/fesquare.c
deleted file mode 100644
index b15f980e6..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/fesquare.c
+++ /dev/null
@@ -1,134 +0,0 @@
-static void fesquare(uint32_t out[21], const uint32_t in1[21]) {
- { const uint32_t x39 = in1[20];
- { const uint32_t x40 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x41 = (((uint64_t)x2 * x39) + (((uint64_t)x4 * x40) + ((0x2 * ((uint64_t)x6 * x38)) + (((uint64_t)x8 * x36) + ((0x2 * ((uint64_t)x10 * x34)) + (((uint64_t)x12 * x32) + (((uint64_t)x14 * x30) + (((uint64_t)x16 * x28) + (((uint64_t)x18 * x26) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + (((uint64_t)x26 * x18) + (((uint64_t)x28 * x16) + (((uint64_t)x30 * x14) + (((uint64_t)x32 * x12) + ((0x2 * ((uint64_t)x34 * x10)) + (((uint64_t)x36 * x8) + ((0x2 * ((uint64_t)x38 * x6)) + (((uint64_t)x40 * x4) + ((uint64_t)x39 * x2)))))))))))))))))))));
- { uint64_t x42 = ((((uint64_t)x2 * x40) + ((0x2 * ((uint64_t)x4 * x38)) + ((0x2 * ((uint64_t)x6 * x36)) + ((0x2 * ((uint64_t)x8 * x34)) + ((0x2 * ((uint64_t)x10 * x32)) + (((uint64_t)x12 * x30) + ((0x2 * ((uint64_t)x14 * x28)) + (((uint64_t)x16 * x26) + ((0x2 * ((uint64_t)x18 * x24)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((0x2 * ((uint64_t)x24 * x18)) + (((uint64_t)x26 * x16) + ((0x2 * ((uint64_t)x28 * x14)) + (((uint64_t)x30 * x12) + ((0x2 * ((uint64_t)x32 * x10)) + ((0x2 * ((uint64_t)x34 * x8)) + ((0x2 * ((uint64_t)x36 * x6)) + ((0x2 * ((uint64_t)x38 * x4)) + ((uint64_t)x40 * x2)))))))))))))))))))) + (0x1f * (0x2 * ((uint64_t)x39 * x39))));
- { uint64_t x43 = ((((uint64_t)x2 * x38) + (((uint64_t)x4 * x36) + ((0x2 * ((uint64_t)x6 * x34)) + (((uint64_t)x8 * x32) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + (((uint64_t)x14 * x26) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (((uint64_t)x26 * x14) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + (((uint64_t)x32 * x8) + ((0x2 * ((uint64_t)x34 * x6)) + (((uint64_t)x36 * x4) + ((uint64_t)x38 * x2))))))))))))))))))) + (0x1f * (((uint64_t)x40 * x39) + ((uint64_t)x39 * x40))));
- { uint64_t x44 = ((((uint64_t)x2 * x36) + ((0x2 * ((uint64_t)x4 * x34)) + ((0x2 * ((uint64_t)x6 * x32)) + (((uint64_t)x8 * x30) + ((0x2 * ((uint64_t)x10 * x28)) + (((uint64_t)x12 * x26) + ((0x2 * ((uint64_t)x14 * x24)) + (((uint64_t)x16 * x22) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (((uint64_t)x22 * x16) + ((0x2 * ((uint64_t)x24 * x14)) + (((uint64_t)x26 * x12) + ((0x2 * ((uint64_t)x28 * x10)) + (((uint64_t)x30 * x8) + ((0x2 * ((uint64_t)x32 * x6)) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x36 * x2)))))))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x38 * x39)) + (((uint64_t)x40 * x40) + (0x2 * ((uint64_t)x39 * x38))))));
- { uint64_t x45 = ((((uint64_t)x2 * x34) + (((uint64_t)x4 * x32) + (((uint64_t)x6 * x30) + (((uint64_t)x8 * x28) + (((uint64_t)x10 * x26) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + (((uint64_t)x26 * x10) + (((uint64_t)x28 * x8) + (((uint64_t)x30 * x6) + (((uint64_t)x32 * x4) + ((uint64_t)x34 * x2))))))))))))))))) + (0x1f * (((uint64_t)x36 * x39) + (((uint64_t)x38 * x40) + (((uint64_t)x40 * x38) + ((uint64_t)x39 * x36))))));
- { uint64_t x46 = ((((uint64_t)x2 * x32) + (((uint64_t)x4 * x30) + ((0x2 * ((uint64_t)x6 * x28)) + (((uint64_t)x8 * x26) + ((0x2 * ((uint64_t)x10 * x24)) + (((uint64_t)x12 * x22) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + (((uint64_t)x22 * x12) + ((0x2 * ((uint64_t)x24 * x10)) + (((uint64_t)x26 * x8) + ((0x2 * ((uint64_t)x28 * x6)) + (((uint64_t)x30 * x4) + ((uint64_t)x32 * x2)))))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x34 * x39)) + (((uint64_t)x36 * x40) + ((0x2 * ((uint64_t)x38 * x38)) + (((uint64_t)x40 * x36) + (0x2 * ((uint64_t)x39 * x34))))))));
- { uint64_t x47 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + ((0x2 * ((uint64_t)x6 * x26)) + ((0x2 * ((uint64_t)x8 * x24)) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + ((0x2 * ((uint64_t)x24 * x8)) + ((0x2 * ((uint64_t)x26 * x6)) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x32 * x39)) + ((0x2 * ((uint64_t)x34 * x40)) + ((0x2 * ((uint64_t)x36 * x38)) + ((0x2 * ((uint64_t)x38 * x36)) + ((0x2 * ((uint64_t)x40 * x34)) + (0x2 * ((uint64_t)x39 * x32)))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + ((0x2 * ((uint64_t)x6 * x24)) + (((uint64_t)x8 * x22) + ((0x2 * ((uint64_t)x10 * x20)) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + ((0x2 * ((uint64_t)x20 * x10)) + (((uint64_t)x22 * x8) + ((0x2 * ((uint64_t)x24 * x6)) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x1f * (((uint64_t)x30 * x39) + (((uint64_t)x32 * x40) + ((0x2 * ((uint64_t)x34 * x38)) + (((uint64_t)x36 * x36) + ((0x2 * ((uint64_t)x38 * x34)) + (((uint64_t)x40 * x32) + ((uint64_t)x39 * x30)))))))));
- { uint64_t x49 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + ((0x2 * ((uint64_t)x10 * x18)) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + ((0x2 * ((uint64_t)x18 * x10)) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x28 * x39)) + (((uint64_t)x30 * x40) + ((0x2 * ((uint64_t)x32 * x38)) + ((0x2 * ((uint64_t)x34 * x36)) + ((0x2 * ((uint64_t)x36 * x34)) + ((0x2 * ((uint64_t)x38 * x32)) + (((uint64_t)x40 * x30) + (0x2 * ((uint64_t)x39 * x28)))))))))));
- { uint64_t x50 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + ((0x2 * ((uint64_t)x6 * x20)) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((0x2 * ((uint64_t)x20 * x6)) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x1f * (((uint64_t)x26 * x39) + (((uint64_t)x28 * x40) + (((uint64_t)x30 * x38) + (((uint64_t)x32 * x36) + ((0x2 * ((uint64_t)x34 * x34)) + (((uint64_t)x36 * x32) + (((uint64_t)x38 * x30) + (((uint64_t)x40 * x28) + ((uint64_t)x39 * x26)))))))))));
- { uint64_t x51 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x1f * ((0x2 * ((uint64_t)x24 * x39)) + (((uint64_t)x26 * x40) + ((0x2 * ((uint64_t)x28 * x38)) + (((uint64_t)x30 * x36) + ((0x2 * ((uint64_t)x32 * x34)) + ((0x2 * ((uint64_t)x34 * x32)) + (((uint64_t)x36 * x30) + ((0x2 * ((uint64_t)x38 * x28)) + (((uint64_t)x40 * x26) + (0x2 * ((uint64_t)x39 * x24)))))))))))));
- { uint64_t x52 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x1f * (((uint64_t)x22 * x39) + (((uint64_t)x24 * x40) + (((uint64_t)x26 * x38) + (((uint64_t)x28 * x36) + (((uint64_t)x30 * x34) + (((uint64_t)x32 * x32) + (((uint64_t)x34 * x30) + (((uint64_t)x36 * x28) + (((uint64_t)x38 * x26) + (((uint64_t)x40 * x24) + ((uint64_t)x39 * x22)))))))))))));
- { uint64_t x53 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x1f * ((0x2 * ((uint64_t)x20 * x39)) + (((uint64_t)x22 * x40) + ((0x2 * ((uint64_t)x24 * x38)) + (((uint64_t)x26 * x36) + ((0x2 * ((uint64_t)x28 * x34)) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + ((0x2 * ((uint64_t)x34 * x28)) + (((uint64_t)x36 * x26) + ((0x2 * ((uint64_t)x38 * x24)) + (((uint64_t)x40 * x22) + (0x2 * ((uint64_t)x39 * x20)))))))))))))));
- { uint64_t x54 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x1f * ((0x2 * ((uint64_t)x18 * x39)) + ((0x2 * ((uint64_t)x20 * x40)) + ((0x2 * ((uint64_t)x22 * x38)) + ((0x2 * ((uint64_t)x24 * x36)) + ((0x2 * ((uint64_t)x26 * x34)) + ((0x2 * ((uint64_t)x28 * x32)) + (((uint64_t)x30 * x30) + ((0x2 * ((uint64_t)x32 * x28)) + ((0x2 * ((uint64_t)x34 * x26)) + ((0x2 * ((uint64_t)x36 * x24)) + ((0x2 * ((uint64_t)x38 * x22)) + ((0x2 * ((uint64_t)x40 * x20)) + (0x2 * ((uint64_t)x39 * x18))))))))))))))));
- { uint64_t x55 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x1f * (((uint64_t)x16 * x39) + (((uint64_t)x18 * x40) + ((0x2 * ((uint64_t)x20 * x38)) + (((uint64_t)x22 * x36) + ((0x2 * ((uint64_t)x24 * x34)) + (((uint64_t)x26 * x32) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (((uint64_t)x32 * x26) + ((0x2 * ((uint64_t)x34 * x24)) + (((uint64_t)x36 * x22) + ((0x2 * ((uint64_t)x38 * x20)) + (((uint64_t)x40 * x18) + ((uint64_t)x39 * x16))))))))))))))));
- { uint64_t x56 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x1f * ((0x2 * ((uint64_t)x14 * x39)) + (((uint64_t)x16 * x40) + ((0x2 * ((uint64_t)x18 * x38)) + ((0x2 * ((uint64_t)x20 * x36)) + ((0x2 * ((uint64_t)x22 * x34)) + ((0x2 * ((uint64_t)x24 * x32)) + (((uint64_t)x26 * x30) + ((0x2 * ((uint64_t)x28 * x28)) + (((uint64_t)x30 * x26) + ((0x2 * ((uint64_t)x32 * x24)) + ((0x2 * ((uint64_t)x34 * x22)) + ((0x2 * ((uint64_t)x36 * x20)) + ((0x2 * ((uint64_t)x38 * x18)) + (((uint64_t)x40 * x16) + (0x2 * ((uint64_t)x39 * x14))))))))))))))))));
- { uint64_t x57 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x1f * (((uint64_t)x12 * x39) + (((uint64_t)x14 * x40) + (((uint64_t)x16 * x38) + (((uint64_t)x18 * x36) + ((0x2 * ((uint64_t)x20 * x34)) + (((uint64_t)x22 * x32) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + (((uint64_t)x32 * x22) + ((0x2 * ((uint64_t)x34 * x20)) + (((uint64_t)x36 * x18) + (((uint64_t)x38 * x16) + (((uint64_t)x40 * x14) + ((uint64_t)x39 * x12))))))))))))))))));
- { uint64_t x58 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x1f * ((0x2 * ((uint64_t)x10 * x39)) + (((uint64_t)x12 * x40) + ((0x2 * ((uint64_t)x14 * x38)) + (((uint64_t)x16 * x36) + ((0x2 * ((uint64_t)x18 * x34)) + ((0x2 * ((uint64_t)x20 * x32)) + (((uint64_t)x22 * x30) + ((0x2 * ((uint64_t)x24 * x28)) + (((uint64_t)x26 * x26) + ((0x2 * ((uint64_t)x28 * x24)) + (((uint64_t)x30 * x22) + ((0x2 * ((uint64_t)x32 * x20)) + ((0x2 * ((uint64_t)x34 * x18)) + (((uint64_t)x36 * x16) + ((0x2 * ((uint64_t)x38 * x14)) + (((uint64_t)x40 * x12) + (0x2 * ((uint64_t)x39 * x10))))))))))))))))))));
- { uint64_t x59 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x1f * (((uint64_t)x8 * x39) + (((uint64_t)x10 * x40) + (((uint64_t)x12 * x38) + (((uint64_t)x14 * x36) + (((uint64_t)x16 * x34) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + (((uint64_t)x34 * x16) + (((uint64_t)x36 * x14) + (((uint64_t)x38 * x12) + (((uint64_t)x40 * x10) + ((uint64_t)x39 * x8))))))))))))))))))));
- { uint64_t x60 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1f * ((0x2 * ((uint64_t)x6 * x39)) + (((uint64_t)x8 * x40) + ((0x2 * ((uint64_t)x10 * x38)) + (((uint64_t)x12 * x36) + ((0x2 * ((uint64_t)x14 * x34)) + (((uint64_t)x16 * x32) + (((uint64_t)x18 * x30) + ((0x2 * ((uint64_t)x20 * x28)) + (((uint64_t)x22 * x26) + ((0x2 * ((uint64_t)x24 * x24)) + (((uint64_t)x26 * x22) + ((0x2 * ((uint64_t)x28 * x20)) + (((uint64_t)x30 * x18) + (((uint64_t)x32 * x16) + ((0x2 * ((uint64_t)x34 * x14)) + (((uint64_t)x36 * x12) + ((0x2 * ((uint64_t)x38 * x10)) + (((uint64_t)x40 * x8) + (0x2 * ((uint64_t)x39 * x6))))))))))))))))))))));
- { uint64_t x61 = (((uint64_t)x2 * x2) + (0x1f * ((0x2 * ((uint64_t)x4 * x39)) + ((0x2 * ((uint64_t)x6 * x40)) + ((0x2 * ((uint64_t)x8 * x38)) + ((0x2 * ((uint64_t)x10 * x36)) + ((0x2 * ((uint64_t)x12 * x34)) + ((0x2 * ((uint64_t)x14 * x32)) + (((uint64_t)x16 * x30) + ((0x2 * ((uint64_t)x18 * x28)) + ((0x2 * ((uint64_t)x20 * x26)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + ((0x2 * ((uint64_t)x26 * x20)) + ((0x2 * ((uint64_t)x28 * x18)) + (((uint64_t)x30 * x16) + ((0x2 * ((uint64_t)x32 * x14)) + ((0x2 * ((uint64_t)x34 * x12)) + ((0x2 * ((uint64_t)x36 * x10)) + ((0x2 * ((uint64_t)x38 * x8)) + ((0x2 * ((uint64_t)x40 * x6)) + (0x2 * ((uint64_t)x39 * x4)))))))))))))))))))))));
- { uint64_t x62 = (x61 >> 0x18);
- { uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- { uint64_t x64 = (x62 + x60);
- { uint64_t x65 = (x64 >> 0x18);
- { uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- { uint64_t x67 = (x65 + x59);
- { uint64_t x68 = (x67 >> 0x17);
- { uint32_t x69 = ((uint32_t)x67 & 0x7fffff);
- { uint64_t x70 = (x68 + x58);
- { uint64_t x71 = (x70 >> 0x18);
- { uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- { uint64_t x73 = (x71 + x57);
- { uint64_t x74 = (x73 >> 0x17);
- { uint32_t x75 = ((uint32_t)x73 & 0x7fffff);
- { uint64_t x76 = (x74 + x56);
- { uint64_t x77 = (x76 >> 0x18);
- { uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- { uint64_t x79 = (x77 + x55);
- { uint64_t x80 = (x79 >> 0x17);
- { uint32_t x81 = ((uint32_t)x79 & 0x7fffff);
- { uint64_t x82 = (x80 + x54);
- { uint64_t x83 = (x82 >> 0x18);
- { uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- { uint64_t x85 = (x83 + x53);
- { uint64_t x86 = (x85 >> 0x18);
- { uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- { uint64_t x88 = (x86 + x52);
- { uint64_t x89 = (x88 >> 0x17);
- { uint32_t x90 = ((uint32_t)x88 & 0x7fffff);
- { uint64_t x91 = (x89 + x51);
- { uint64_t x92 = (x91 >> 0x18);
- { uint32_t x93 = ((uint32_t)x91 & 0xffffff);
- { uint64_t x94 = (x92 + x50);
- { uint64_t x95 = (x94 >> 0x17);
- { uint32_t x96 = ((uint32_t)x94 & 0x7fffff);
- { uint64_t x97 = (x95 + x49);
- { uint64_t x98 = (x97 >> 0x18);
- { uint32_t x99 = ((uint32_t)x97 & 0xffffff);
- { uint64_t x100 = (x98 + x48);
- { uint64_t x101 = (x100 >> 0x17);
- { uint32_t x102 = ((uint32_t)x100 & 0x7fffff);
- { uint64_t x103 = (x101 + x47);
- { uint64_t x104 = (x103 >> 0x18);
- { uint32_t x105 = ((uint32_t)x103 & 0xffffff);
- { uint64_t x106 = (x104 + x46);
- { uint64_t x107 = (x106 >> 0x18);
- { uint32_t x108 = ((uint32_t)x106 & 0xffffff);
- { uint64_t x109 = (x107 + x45);
- { uint64_t x110 = (x109 >> 0x17);
- { uint32_t x111 = ((uint32_t)x109 & 0x7fffff);
- { uint64_t x112 = (x110 + x44);
- { uint64_t x113 = (x112 >> 0x18);
- { uint32_t x114 = ((uint32_t)x112 & 0xffffff);
- { uint64_t x115 = (x113 + x43);
- { uint64_t x116 = (x115 >> 0x17);
- { uint32_t x117 = ((uint32_t)x115 & 0x7fffff);
- { uint64_t x118 = (x116 + x42);
- { uint64_t x119 = (x118 >> 0x18);
- { uint32_t x120 = ((uint32_t)x118 & 0xffffff);
- { uint64_t x121 = (x119 + x41);
- { uint64_t x122 = (x121 >> 0x17);
- { uint32_t x123 = ((uint32_t)x121 & 0x7fffff);
- { uint64_t x124 = (x63 + (0x1f * x122));
- { uint32_t x125 = (uint32_t) (x124 >> 0x18);
- { uint32_t x126 = ((uint32_t)x124 & 0xffffff);
- { uint32_t x127 = (x125 + x66);
- { uint32_t x128 = (x127 >> 0x18);
- { uint32_t x129 = (x127 & 0xffffff);
- out[0] = x126;
- out[1] = x129;
- out[2] = (x128 + x69);
- out[3] = x72;
- out[4] = x75;
- out[5] = x78;
- out[6] = x81;
- out[7] = x84;
- out[8] = x87;
- out[9] = x90;
- out[10] = x93;
- out[11] = x96;
- out[12] = x99;
- out[13] = x102;
- out[14] = x105;
- out[15] = x108;
- out[16] = x111;
- out[17] = x114;
- out[18] = x117;
- out[19] = x120;
- out[20] = x123;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e495m31_21limbs/fesquare.v b/src/Specific/solinas32_2e495m31_21limbs/fesquare.v
deleted file mode 100644
index 794bfcee7..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e495m31_21limbs.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_2e495m31_21limbs/fesquareDisplay.log b/src/Specific/solinas32_2e495m31_21limbs/fesquareDisplay.log
deleted file mode 100644
index 525cbd6c3..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,96 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x39, x40, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x41 = (((uint64_t)x2 * x39) + (((uint64_t)x4 * x40) + ((0x2 * ((uint64_t)x6 * x38)) + (((uint64_t)x8 * x36) + ((0x2 * ((uint64_t)x10 * x34)) + (((uint64_t)x12 * x32) + (((uint64_t)x14 * x30) + (((uint64_t)x16 * x28) + (((uint64_t)x18 * x26) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + (((uint64_t)x26 * x18) + (((uint64_t)x28 * x16) + (((uint64_t)x30 * x14) + (((uint64_t)x32 * x12) + ((0x2 * ((uint64_t)x34 * x10)) + (((uint64_t)x36 * x8) + ((0x2 * ((uint64_t)x38 * x6)) + (((uint64_t)x40 * x4) + ((uint64_t)x39 * x2)))))))))))))))))))));
- uint64_t x42 = ((((uint64_t)x2 * x40) + ((0x2 * ((uint64_t)x4 * x38)) + ((0x2 * ((uint64_t)x6 * x36)) + ((0x2 * ((uint64_t)x8 * x34)) + ((0x2 * ((uint64_t)x10 * x32)) + (((uint64_t)x12 * x30) + ((0x2 * ((uint64_t)x14 * x28)) + (((uint64_t)x16 * x26) + ((0x2 * ((uint64_t)x18 * x24)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((0x2 * ((uint64_t)x24 * x18)) + (((uint64_t)x26 * x16) + ((0x2 * ((uint64_t)x28 * x14)) + (((uint64_t)x30 * x12) + ((0x2 * ((uint64_t)x32 * x10)) + ((0x2 * ((uint64_t)x34 * x8)) + ((0x2 * ((uint64_t)x36 * x6)) + ((0x2 * ((uint64_t)x38 * x4)) + ((uint64_t)x40 * x2)))))))))))))))))))) + (0x1f * (0x2 * ((uint64_t)x39 * x39))));
- uint64_t x43 = ((((uint64_t)x2 * x38) + (((uint64_t)x4 * x36) + ((0x2 * ((uint64_t)x6 * x34)) + (((uint64_t)x8 * x32) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + (((uint64_t)x14 * x26) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (((uint64_t)x26 * x14) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + (((uint64_t)x32 * x8) + ((0x2 * ((uint64_t)x34 * x6)) + (((uint64_t)x36 * x4) + ((uint64_t)x38 * x2))))))))))))))))))) + (0x1f * (((uint64_t)x40 * x39) + ((uint64_t)x39 * x40))));
- uint64_t x44 = ((((uint64_t)x2 * x36) + ((0x2 * ((uint64_t)x4 * x34)) + ((0x2 * ((uint64_t)x6 * x32)) + (((uint64_t)x8 * x30) + ((0x2 * ((uint64_t)x10 * x28)) + (((uint64_t)x12 * x26) + ((0x2 * ((uint64_t)x14 * x24)) + (((uint64_t)x16 * x22) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + (((uint64_t)x22 * x16) + ((0x2 * ((uint64_t)x24 * x14)) + (((uint64_t)x26 * x12) + ((0x2 * ((uint64_t)x28 * x10)) + (((uint64_t)x30 * x8) + ((0x2 * ((uint64_t)x32 * x6)) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x36 * x2)))))))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x38 * x39)) + (((uint64_t)x40 * x40) + (0x2 * ((uint64_t)x39 * x38))))));
- uint64_t x45 = ((((uint64_t)x2 * x34) + (((uint64_t)x4 * x32) + (((uint64_t)x6 * x30) + (((uint64_t)x8 * x28) + (((uint64_t)x10 * x26) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + (((uint64_t)x26 * x10) + (((uint64_t)x28 * x8) + (((uint64_t)x30 * x6) + (((uint64_t)x32 * x4) + ((uint64_t)x34 * x2))))))))))))))))) + (0x1f * (((uint64_t)x36 * x39) + (((uint64_t)x38 * x40) + (((uint64_t)x40 * x38) + ((uint64_t)x39 * x36))))));
- uint64_t x46 = ((((uint64_t)x2 * x32) + (((uint64_t)x4 * x30) + ((0x2 * ((uint64_t)x6 * x28)) + (((uint64_t)x8 * x26) + ((0x2 * ((uint64_t)x10 * x24)) + (((uint64_t)x12 * x22) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + (((uint64_t)x22 * x12) + ((0x2 * ((uint64_t)x24 * x10)) + (((uint64_t)x26 * x8) + ((0x2 * ((uint64_t)x28 * x6)) + (((uint64_t)x30 * x4) + ((uint64_t)x32 * x2)))))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x34 * x39)) + (((uint64_t)x36 * x40) + ((0x2 * ((uint64_t)x38 * x38)) + (((uint64_t)x40 * x36) + (0x2 * ((uint64_t)x39 * x34))))))));
- uint64_t x47 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + ((0x2 * ((uint64_t)x6 * x26)) + ((0x2 * ((uint64_t)x8 * x24)) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + ((0x2 * ((uint64_t)x24 * x8)) + ((0x2 * ((uint64_t)x26 * x6)) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x32 * x39)) + ((0x2 * ((uint64_t)x34 * x40)) + ((0x2 * ((uint64_t)x36 * x38)) + ((0x2 * ((uint64_t)x38 * x36)) + ((0x2 * ((uint64_t)x40 * x34)) + (0x2 * ((uint64_t)x39 * x32)))))))));
- uint64_t x48 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + ((0x2 * ((uint64_t)x6 * x24)) + (((uint64_t)x8 * x22) + ((0x2 * ((uint64_t)x10 * x20)) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + ((0x2 * ((uint64_t)x20 * x10)) + (((uint64_t)x22 * x8) + ((0x2 * ((uint64_t)x24 * x6)) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x1f * (((uint64_t)x30 * x39) + (((uint64_t)x32 * x40) + ((0x2 * ((uint64_t)x34 * x38)) + (((uint64_t)x36 * x36) + ((0x2 * ((uint64_t)x38 * x34)) + (((uint64_t)x40 * x32) + ((uint64_t)x39 * x30)))))))));
- uint64_t x49 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + ((0x2 * ((uint64_t)x10 * x18)) + (((uint64_t)x12 * x16) + ((0x2 * ((uint64_t)x14 * x14)) + (((uint64_t)x16 * x12) + ((0x2 * ((uint64_t)x18 * x10)) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x1f * ((0x2 * ((uint64_t)x28 * x39)) + (((uint64_t)x30 * x40) + ((0x2 * ((uint64_t)x32 * x38)) + ((0x2 * ((uint64_t)x34 * x36)) + ((0x2 * ((uint64_t)x36 * x34)) + ((0x2 * ((uint64_t)x38 * x32)) + (((uint64_t)x40 * x30) + (0x2 * ((uint64_t)x39 * x28)))))))))));
- uint64_t x50 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + ((0x2 * ((uint64_t)x6 * x20)) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((0x2 * ((uint64_t)x20 * x6)) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x1f * (((uint64_t)x26 * x39) + (((uint64_t)x28 * x40) + (((uint64_t)x30 * x38) + (((uint64_t)x32 * x36) + ((0x2 * ((uint64_t)x34 * x34)) + (((uint64_t)x36 * x32) + (((uint64_t)x38 * x30) + (((uint64_t)x40 * x28) + ((uint64_t)x39 * x26)))))))))));
- uint64_t x51 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + (((uint64_t)x8 * x16) + ((0x2 * ((uint64_t)x10 * x14)) + (((uint64_t)x12 * x12) + ((0x2 * ((uint64_t)x14 * x10)) + (((uint64_t)x16 * x8) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x1f * ((0x2 * ((uint64_t)x24 * x39)) + (((uint64_t)x26 * x40) + ((0x2 * ((uint64_t)x28 * x38)) + (((uint64_t)x30 * x36) + ((0x2 * ((uint64_t)x32 * x34)) + ((0x2 * ((uint64_t)x34 * x32)) + (((uint64_t)x36 * x30) + ((0x2 * ((uint64_t)x38 * x28)) + (((uint64_t)x40 * x26) + (0x2 * ((uint64_t)x39 * x24)))))))))))));
- uint64_t x52 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x1f * (((uint64_t)x22 * x39) + (((uint64_t)x24 * x40) + (((uint64_t)x26 * x38) + (((uint64_t)x28 * x36) + (((uint64_t)x30 * x34) + (((uint64_t)x32 * x32) + (((uint64_t)x34 * x30) + (((uint64_t)x36 * x28) + (((uint64_t)x38 * x26) + (((uint64_t)x40 * x24) + ((uint64_t)x39 * x22)))))))))))));
- uint64_t x53 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + ((0x2 * ((uint64_t)x6 * x14)) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + ((0x2 * ((uint64_t)x14 * x6)) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (0x1f * ((0x2 * ((uint64_t)x20 * x39)) + (((uint64_t)x22 * x40) + ((0x2 * ((uint64_t)x24 * x38)) + (((uint64_t)x26 * x36) + ((0x2 * ((uint64_t)x28 * x34)) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + ((0x2 * ((uint64_t)x34 * x28)) + (((uint64_t)x36 * x26) + ((0x2 * ((uint64_t)x38 * x24)) + (((uint64_t)x40 * x22) + (0x2 * ((uint64_t)x39 * x20)))))))))))))));
- uint64_t x54 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x1f * ((0x2 * ((uint64_t)x18 * x39)) + ((0x2 * ((uint64_t)x20 * x40)) + ((0x2 * ((uint64_t)x22 * x38)) + ((0x2 * ((uint64_t)x24 * x36)) + ((0x2 * ((uint64_t)x26 * x34)) + ((0x2 * ((uint64_t)x28 * x32)) + (((uint64_t)x30 * x30) + ((0x2 * ((uint64_t)x32 * x28)) + ((0x2 * ((uint64_t)x34 * x26)) + ((0x2 * ((uint64_t)x36 * x24)) + ((0x2 * ((uint64_t)x38 * x22)) + ((0x2 * ((uint64_t)x40 * x20)) + (0x2 * ((uint64_t)x39 * x18))))))))))))))));
- uint64_t x55 = ((((uint64_t)x2 * x14) + (((uint64_t)x4 * x12) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + (((uint64_t)x12 * x4) + ((uint64_t)x14 * x2))))))) + (0x1f * (((uint64_t)x16 * x39) + (((uint64_t)x18 * x40) + ((0x2 * ((uint64_t)x20 * x38)) + (((uint64_t)x22 * x36) + ((0x2 * ((uint64_t)x24 * x34)) + (((uint64_t)x26 * x32) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (((uint64_t)x32 * x26) + ((0x2 * ((uint64_t)x34 * x24)) + (((uint64_t)x36 * x22) + ((0x2 * ((uint64_t)x38 * x20)) + (((uint64_t)x40 * x18) + ((uint64_t)x39 * x16))))))))))))))));
- uint64_t x56 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x1f * ((0x2 * ((uint64_t)x14 * x39)) + (((uint64_t)x16 * x40) + ((0x2 * ((uint64_t)x18 * x38)) + ((0x2 * ((uint64_t)x20 * x36)) + ((0x2 * ((uint64_t)x22 * x34)) + ((0x2 * ((uint64_t)x24 * x32)) + (((uint64_t)x26 * x30) + ((0x2 * ((uint64_t)x28 * x28)) + (((uint64_t)x30 * x26) + ((0x2 * ((uint64_t)x32 * x24)) + ((0x2 * ((uint64_t)x34 * x22)) + ((0x2 * ((uint64_t)x36 * x20)) + ((0x2 * ((uint64_t)x38 * x18)) + (((uint64_t)x40 * x16) + (0x2 * ((uint64_t)x39 * x14))))))))))))))))));
- uint64_t x57 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + ((0x2 * ((uint64_t)x6 * x6)) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x1f * (((uint64_t)x12 * x39) + (((uint64_t)x14 * x40) + (((uint64_t)x16 * x38) + (((uint64_t)x18 * x36) + ((0x2 * ((uint64_t)x20 * x34)) + (((uint64_t)x22 * x32) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + (((uint64_t)x32 * x22) + ((0x2 * ((uint64_t)x34 * x20)) + (((uint64_t)x36 * x18) + (((uint64_t)x38 * x16) + (((uint64_t)x40 * x14) + ((uint64_t)x39 * x12))))))))))))))))));
- uint64_t x58 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x1f * ((0x2 * ((uint64_t)x10 * x39)) + (((uint64_t)x12 * x40) + ((0x2 * ((uint64_t)x14 * x38)) + (((uint64_t)x16 * x36) + ((0x2 * ((uint64_t)x18 * x34)) + ((0x2 * ((uint64_t)x20 * x32)) + (((uint64_t)x22 * x30) + ((0x2 * ((uint64_t)x24 * x28)) + (((uint64_t)x26 * x26) + ((0x2 * ((uint64_t)x28 * x24)) + (((uint64_t)x30 * x22) + ((0x2 * ((uint64_t)x32 * x20)) + ((0x2 * ((uint64_t)x34 * x18)) + (((uint64_t)x36 * x16) + ((0x2 * ((uint64_t)x38 * x14)) + (((uint64_t)x40 * x12) + (0x2 * ((uint64_t)x39 * x10))))))))))))))))))));
- uint64_t x59 = ((((uint64_t)x2 * x6) + (((uint64_t)x4 * x4) + ((uint64_t)x6 * x2))) + (0x1f * (((uint64_t)x8 * x39) + (((uint64_t)x10 * x40) + (((uint64_t)x12 * x38) + (((uint64_t)x14 * x36) + (((uint64_t)x16 * x34) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + (((uint64_t)x34 * x16) + (((uint64_t)x36 * x14) + (((uint64_t)x38 * x12) + (((uint64_t)x40 * x10) + ((uint64_t)x39 * x8))))))))))))))))))));
- uint64_t x60 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1f * ((0x2 * ((uint64_t)x6 * x39)) + (((uint64_t)x8 * x40) + ((0x2 * ((uint64_t)x10 * x38)) + (((uint64_t)x12 * x36) + ((0x2 * ((uint64_t)x14 * x34)) + (((uint64_t)x16 * x32) + (((uint64_t)x18 * x30) + ((0x2 * ((uint64_t)x20 * x28)) + (((uint64_t)x22 * x26) + ((0x2 * ((uint64_t)x24 * x24)) + (((uint64_t)x26 * x22) + ((0x2 * ((uint64_t)x28 * x20)) + (((uint64_t)x30 * x18) + (((uint64_t)x32 * x16) + ((0x2 * ((uint64_t)x34 * x14)) + (((uint64_t)x36 * x12) + ((0x2 * ((uint64_t)x38 * x10)) + (((uint64_t)x40 * x8) + (0x2 * ((uint64_t)x39 * x6))))))))))))))))))))));
- uint64_t x61 = (((uint64_t)x2 * x2) + (0x1f * ((0x2 * ((uint64_t)x4 * x39)) + ((0x2 * ((uint64_t)x6 * x40)) + ((0x2 * ((uint64_t)x8 * x38)) + ((0x2 * ((uint64_t)x10 * x36)) + ((0x2 * ((uint64_t)x12 * x34)) + ((0x2 * ((uint64_t)x14 * x32)) + (((uint64_t)x16 * x30) + ((0x2 * ((uint64_t)x18 * x28)) + ((0x2 * ((uint64_t)x20 * x26)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + ((0x2 * ((uint64_t)x26 * x20)) + ((0x2 * ((uint64_t)x28 * x18)) + (((uint64_t)x30 * x16) + ((0x2 * ((uint64_t)x32 * x14)) + ((0x2 * ((uint64_t)x34 * x12)) + ((0x2 * ((uint64_t)x36 * x10)) + ((0x2 * ((uint64_t)x38 * x8)) + ((0x2 * ((uint64_t)x40 * x6)) + (0x2 * ((uint64_t)x39 * x4)))))))))))))))))))))));
- uint64_t x62 = (x61 >> 0x18);
- uint32_t x63 = ((uint32_t)x61 & 0xffffff);
- uint64_t x64 = (x62 + x60);
- uint64_t x65 = (x64 >> 0x18);
- uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- uint64_t x67 = (x65 + x59);
- uint64_t x68 = (x67 >> 0x17);
- uint32_t x69 = ((uint32_t)x67 & 0x7fffff);
- uint64_t x70 = (x68 + x58);
- uint64_t x71 = (x70 >> 0x18);
- uint32_t x72 = ((uint32_t)x70 & 0xffffff);
- uint64_t x73 = (x71 + x57);
- uint64_t x74 = (x73 >> 0x17);
- uint32_t x75 = ((uint32_t)x73 & 0x7fffff);
- uint64_t x76 = (x74 + x56);
- uint64_t x77 = (x76 >> 0x18);
- uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- uint64_t x79 = (x77 + x55);
- uint64_t x80 = (x79 >> 0x17);
- uint32_t x81 = ((uint32_t)x79 & 0x7fffff);
- uint64_t x82 = (x80 + x54);
- uint64_t x83 = (x82 >> 0x18);
- uint32_t x84 = ((uint32_t)x82 & 0xffffff);
- uint64_t x85 = (x83 + x53);
- uint64_t x86 = (x85 >> 0x18);
- uint32_t x87 = ((uint32_t)x85 & 0xffffff);
- uint64_t x88 = (x86 + x52);
- uint64_t x89 = (x88 >> 0x17);
- uint32_t x90 = ((uint32_t)x88 & 0x7fffff);
- uint64_t x91 = (x89 + x51);
- uint64_t x92 = (x91 >> 0x18);
- uint32_t x93 = ((uint32_t)x91 & 0xffffff);
- uint64_t x94 = (x92 + x50);
- uint64_t x95 = (x94 >> 0x17);
- uint32_t x96 = ((uint32_t)x94 & 0x7fffff);
- uint64_t x97 = (x95 + x49);
- uint64_t x98 = (x97 >> 0x18);
- uint32_t x99 = ((uint32_t)x97 & 0xffffff);
- uint64_t x100 = (x98 + x48);
- uint64_t x101 = (x100 >> 0x17);
- uint32_t x102 = ((uint32_t)x100 & 0x7fffff);
- uint64_t x103 = (x101 + x47);
- uint64_t x104 = (x103 >> 0x18);
- uint32_t x105 = ((uint32_t)x103 & 0xffffff);
- uint64_t x106 = (x104 + x46);
- uint64_t x107 = (x106 >> 0x18);
- uint32_t x108 = ((uint32_t)x106 & 0xffffff);
- uint64_t x109 = (x107 + x45);
- uint64_t x110 = (x109 >> 0x17);
- uint32_t x111 = ((uint32_t)x109 & 0x7fffff);
- uint64_t x112 = (x110 + x44);
- uint64_t x113 = (x112 >> 0x18);
- uint32_t x114 = ((uint32_t)x112 & 0xffffff);
- uint64_t x115 = (x113 + x43);
- uint64_t x116 = (x115 >> 0x17);
- uint32_t x117 = ((uint32_t)x115 & 0x7fffff);
- uint64_t x118 = (x116 + x42);
- uint64_t x119 = (x118 >> 0x18);
- uint32_t x120 = ((uint32_t)x118 & 0xffffff);
- uint64_t x121 = (x119 + x41);
- uint64_t x122 = (x121 >> 0x17);
- uint32_t x123 = ((uint32_t)x121 & 0x7fffff);
- uint64_t x124 = (x63 + (0x1f * x122));
- uint32_t x125 = (uint32_t) (x124 >> 0x18);
- uint32_t x126 = ((uint32_t)x124 & 0xffffff);
- uint32_t x127 = (x125 + x66);
- uint32_t x128 = (x127 >> 0x18);
- uint32_t x129 = (x127 & 0xffffff);
- return (Return x123, Return x120, Return x117, Return x114, Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, (x128 + x69), Return x129, Return x126))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e495m31_21limbs/fesquareDisplay.v b/src/Specific/solinas32_2e495m31_21limbs/fesquareDisplay.v
deleted file mode 100644
index d0144a732..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e495m31_21limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e495m31_21limbs/fesub.c b/src/Specific/solinas32_2e495m31_21limbs/fesub.c
deleted file mode 100644
index 7ef27ae2c..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/fesub.c
+++ /dev/null
@@ -1,66 +0,0 @@
-static void fesub(uint32_t out[21], const uint32_t in1[21], const uint32_t in2[21]) {
- { const uint32_t x42 = in1[20];
- { const uint32_t x43 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x82 = in2[20];
- { const uint32_t x83 = in2[19];
- { const uint32_t x81 = in2[18];
- { const uint32_t x79 = in2[17];
- { const uint32_t x77 = in2[16];
- { const uint32_t x75 = in2[15];
- { const uint32_t x73 = in2[14];
- { const uint32_t x71 = in2[13];
- { const uint32_t x69 = in2[12];
- { const uint32_t x67 = in2[11];
- { const uint32_t x65 = in2[10];
- { const uint32_t x63 = in2[9];
- { const uint32_t x61 = in2[8];
- { const uint32_t x59 = in2[7];
- { const uint32_t x57 = in2[6];
- { const uint32_t x55 = in2[5];
- { const uint32_t x53 = in2[4];
- { const uint32_t x51 = in2[3];
- { const uint32_t x49 = in2[2];
- { const uint32_t x47 = in2[1];
- { const uint32_t x45 = in2[0];
- out[0] = ((0x1ffffc2 + x5) - x45);
- out[1] = ((0x1fffffe + x7) - x47);
- out[2] = ((0xfffffe + x9) - x49);
- out[3] = ((0x1fffffe + x11) - x51);
- out[4] = ((0xfffffe + x13) - x53);
- out[5] = ((0x1fffffe + x15) - x55);
- out[6] = ((0xfffffe + x17) - x57);
- out[7] = ((0x1fffffe + x19) - x59);
- out[8] = ((0x1fffffe + x21) - x61);
- out[9] = ((0xfffffe + x23) - x63);
- out[10] = ((0x1fffffe + x25) - x65);
- out[11] = ((0xfffffe + x27) - x67);
- out[12] = ((0x1fffffe + x29) - x69);
- out[13] = ((0xfffffe + x31) - x71);
- out[14] = ((0x1fffffe + x33) - x73);
- out[15] = ((0x1fffffe + x35) - x75);
- out[16] = ((0xfffffe + x37) - x77);
- out[17] = ((0x1fffffe + x39) - x79);
- out[18] = ((0xfffffe + x41) - x81);
- out[19] = ((0x1fffffe + x43) - x83);
- out[20] = ((0xfffffe + x42) - x82);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e495m31_21limbs/fesub.v b/src/Specific/solinas32_2e495m31_21limbs/fesub.v
deleted file mode 100644
index 48a3002cb..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e495m31_21limbs.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_2e495m31_21limbs/fesubDisplay.log b/src/Specific/solinas32_2e495m31_21limbs/fesubDisplay.log
deleted file mode 100644
index 7ec697dfc..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x82, x83, x81, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45))%core,
- (((0xfffffe + x42) - x82), ((0x1fffffe + x43) - x83), ((0xfffffe + x41) - x81), ((0x1fffffe + x39) - x79), ((0xfffffe + x37) - x77), ((0x1fffffe + x35) - x75), ((0x1fffffe + x33) - x73), ((0xfffffe + x31) - x71), ((0x1fffffe + x29) - x69), ((0xfffffe + x27) - x67), ((0x1fffffe + x25) - x65), ((0xfffffe + x23) - x63), ((0x1fffffe + x21) - x61), ((0x1fffffe + x19) - x59), ((0xfffffe + x17) - x57), ((0x1fffffe + x15) - x55), ((0xfffffe + x13) - x53), ((0x1fffffe + x11) - x51), ((0xfffffe + x9) - x49), ((0x1fffffe + x7) - x47), ((0x1ffffc2 + x5) - x45)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e495m31_21limbs/fesubDisplay.v b/src/Specific/solinas32_2e495m31_21limbs/fesubDisplay.v
deleted file mode 100644
index c834d28da..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e495m31_21limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e495m31_21limbs/freeze.c b/src/Specific/solinas32_2e495m31_21limbs/freeze.c
deleted file mode 100644
index 7ec13fe90..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/freeze.c
+++ /dev/null
@@ -1,109 +0,0 @@
-static void freeze(uint32_t out[21], const uint32_t in1[21]) {
- { const uint32_t x39 = in1[20];
- { const uint32_t x40 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffe1);
- { uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x4, 0xffffff);
- { uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x6, 0x7fffff);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x8, 0xffffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x10, 0x7fffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x12, 0xffffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x14, 0x7fffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x16, 0xffffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x18, 0xffffff);
- { uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x20, 0x7fffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x22, 0xffffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x24, 0x7fffff);
- { uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x26, 0xffffff);
- { uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x28, 0x7fffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x30, 0xffffff);
- { uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x32, 0xffffff);
- { uint32_t x90, uint8_t x91 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x34, 0x7fffff);
- { uint32_t x93, uint8_t x94 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x36, 0xffffff);
- { uint32_t x96, uint8_t x97 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x94, Return x38, 0x7fffff);
- { uint32_t x99, uint8_t x100 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x40, 0xffffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x39, 0x7fffff);
- { uint32_t x104 = cmovznz32(x103, 0x0, 0xffffffff);
- { uint32_t x105 = (x104 & 0xffffe1);
- { uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x42, Return x105);
- { uint32_t x109 = (x104 & 0xffffff);
- { uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x45, Return x109);
- { uint32_t x113 = (x104 & 0x7fffff);
- { uint32_t x115, uint8_t x116 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x48, Return x113);
- { uint32_t x117 = (x104 & 0xffffff);
- { uint32_t x119, uint8_t x120 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x116, Return x51, Return x117);
- { uint32_t x121 = (x104 & 0x7fffff);
- { uint32_t x123, uint8_t x124 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x120, Return x54, Return x121);
- { uint32_t x125 = (x104 & 0xffffff);
- { uint32_t x127, uint8_t x128 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x124, Return x57, Return x125);
- { uint32_t x129 = (x104 & 0x7fffff);
- { uint32_t x131, uint8_t x132 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x128, Return x60, Return x129);
- { uint32_t x133 = (x104 & 0xffffff);
- { uint32_t x135, uint8_t x136 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x132, Return x63, Return x133);
- { uint32_t x137 = (x104 & 0xffffff);
- { uint32_t x139, uint8_t x140 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x136, Return x66, Return x137);
- { uint32_t x141 = (x104 & 0x7fffff);
- { uint32_t x143, uint8_t x144 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x140, Return x69, Return x141);
- { uint32_t x145 = (x104 & 0xffffff);
- { uint32_t x147, uint8_t x148 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x144, Return x72, Return x145);
- { uint32_t x149 = (x104 & 0x7fffff);
- { uint32_t x151, uint8_t x152 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x148, Return x75, Return x149);
- { uint32_t x153 = (x104 & 0xffffff);
- { uint32_t x155, uint8_t x156 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x152, Return x78, Return x153);
- { uint32_t x157 = (x104 & 0x7fffff);
- { uint32_t x159, uint8_t x160 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x156, Return x81, Return x157);
- { uint32_t x161 = (x104 & 0xffffff);
- { uint32_t x163, uint8_t x164 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x160, Return x84, Return x161);
- { uint32_t x165 = (x104 & 0xffffff);
- { uint32_t x167, uint8_t x168 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x164, Return x87, Return x165);
- { uint32_t x169 = (x104 & 0x7fffff);
- { uint32_t x171, uint8_t x172 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x168, Return x90, Return x169);
- { uint32_t x173 = (x104 & 0xffffff);
- { uint32_t x175, uint8_t x176 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x172, Return x93, Return x173);
- { uint32_t x177 = (x104 & 0x7fffff);
- { uint32_t x179, uint8_t x180 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x176, Return x96, Return x177);
- { uint32_t x181 = (x104 & 0xffffff);
- { uint32_t x183, uint8_t x184 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x180, Return x99, Return x181);
- { uint32_t x185 = (x104 & 0x7fffff);
- { uint32_t x187, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x184, Return x102, Return x185);
- out[0] = x107;
- out[1] = x111;
- out[2] = x115;
- out[3] = x119;
- out[4] = x123;
- out[5] = x127;
- out[6] = x131;
- out[7] = x135;
- out[8] = x139;
- out[9] = x143;
- out[10] = x147;
- out[11] = x151;
- out[12] = x155;
- out[13] = x159;
- out[14] = x163;
- out[15] = x167;
- out[16] = x171;
- out[17] = x175;
- out[18] = x179;
- out[19] = x183;
- out[20] = x187;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e495m31_21limbs/freeze.v b/src/Specific/solinas32_2e495m31_21limbs/freeze.v
deleted file mode 100644
index c18a9461e..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e495m31_21limbs.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_2e495m31_21limbs/freezeDisplay.log b/src/Specific/solinas32_2e495m31_21limbs/freezeDisplay.log
deleted file mode 100644
index 0317a3298..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/freezeDisplay.log
+++ /dev/null
@@ -1,71 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x39, x40, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffffe1);
- uint32_t x45, uint8_t x46 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x43, Return x4, 0xffffff);
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x46, Return x6, 0x7fffff);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x8, 0xffffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x10, 0x7fffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x12, 0xffffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x14, 0x7fffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x16, 0xffffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x18, 0xffffff);
- uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x20, 0x7fffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x22, 0xffffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x24, 0x7fffff);
- uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x26, 0xffffff);
- uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x28, 0x7fffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x30, 0xffffff);
- uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x32, 0xffffff);
- uint32_t x90, uint8_t x91 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x34, 0x7fffff);
- uint32_t x93, uint8_t x94 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x36, 0xffffff);
- uint32_t x96, uint8_t x97 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x94, Return x38, 0x7fffff);
- uint32_t x99, uint8_t x100 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x40, 0xffffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x39, 0x7fffff);
- uint32_t x104 = cmovznz32(x103, 0x0, 0xffffffff);
- uint32_t x105 = (x104 & 0xffffe1);
- uint32_t x107, uint8_t x108 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x42, Return x105);
- uint32_t x109 = (x104 & 0xffffff);
- uint32_t x111, uint8_t x112 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x45, Return x109);
- uint32_t x113 = (x104 & 0x7fffff);
- uint32_t x115, uint8_t x116 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x48, Return x113);
- uint32_t x117 = (x104 & 0xffffff);
- uint32_t x119, uint8_t x120 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x116, Return x51, Return x117);
- uint32_t x121 = (x104 & 0x7fffff);
- uint32_t x123, uint8_t x124 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x120, Return x54, Return x121);
- uint32_t x125 = (x104 & 0xffffff);
- uint32_t x127, uint8_t x128 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x124, Return x57, Return x125);
- uint32_t x129 = (x104 & 0x7fffff);
- uint32_t x131, uint8_t x132 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x128, Return x60, Return x129);
- uint32_t x133 = (x104 & 0xffffff);
- uint32_t x135, uint8_t x136 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x132, Return x63, Return x133);
- uint32_t x137 = (x104 & 0xffffff);
- uint32_t x139, uint8_t x140 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x136, Return x66, Return x137);
- uint32_t x141 = (x104 & 0x7fffff);
- uint32_t x143, uint8_t x144 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x140, Return x69, Return x141);
- uint32_t x145 = (x104 & 0xffffff);
- uint32_t x147, uint8_t x148 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x144, Return x72, Return x145);
- uint32_t x149 = (x104 & 0x7fffff);
- uint32_t x151, uint8_t x152 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x148, Return x75, Return x149);
- uint32_t x153 = (x104 & 0xffffff);
- uint32_t x155, uint8_t x156 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x152, Return x78, Return x153);
- uint32_t x157 = (x104 & 0x7fffff);
- uint32_t x159, uint8_t x160 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x156, Return x81, Return x157);
- uint32_t x161 = (x104 & 0xffffff);
- uint32_t x163, uint8_t x164 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x160, Return x84, Return x161);
- uint32_t x165 = (x104 & 0xffffff);
- uint32_t x167, uint8_t x168 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x164, Return x87, Return x165);
- uint32_t x169 = (x104 & 0x7fffff);
- uint32_t x171, uint8_t x172 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x168, Return x90, Return x169);
- uint32_t x173 = (x104 & 0xffffff);
- uint32_t x175, uint8_t x176 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x172, Return x93, Return x173);
- uint32_t x177 = (x104 & 0x7fffff);
- uint32_t x179, uint8_t x180 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x176, Return x96, Return x177);
- uint32_t x181 = (x104 & 0xffffff);
- uint32_t x183, uint8_t x184 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x180, Return x99, Return x181);
- uint32_t x185 = (x104 & 0x7fffff);
- uint32_t x187, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x184, Return x102, Return x185);
- (Return x187, Return x183, Return x179, Return x175, Return x171, Return x167, Return x163, Return x159, Return x155, Return x151, Return x147, Return x143, Return x139, Return x135, Return x131, Return x127, Return x123, Return x119, Return x115, Return x111, Return x107))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e495m31_21limbs/freezeDisplay.v b/src/Specific/solinas32_2e495m31_21limbs/freezeDisplay.v
deleted file mode 100644
index ddf9c252c..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e495m31_21limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e495m31_21limbs/py_interpreter.sh b/src/Specific/solinas32_2e495m31_21limbs/py_interpreter.sh
deleted file mode 100755
index b789f7fe4..000000000
--- a/src/Specific/solinas32_2e495m31_21limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**495 - 31' -Dmodulus_bytes='23 + 4/7' -Da24='121665'
diff --git a/src/Specific/solinas32_2e511m187_22limbs/CurveParameters.v b/src/Specific/solinas32_2e511m187_22limbs/CurveParameters.v
deleted file mode 100644
index 911ade92b..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^511 - 187
-Base: 23 + 5/22
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 22%nat;
- base := 23 + 5/22;
- bitwidth := 32;
- s := 2^511;
- c := [(1, 187)];
- carry_chains := Some [seq 0 (pred 22); [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_2e511m187_22limbs/Synthesis.v b/src/Specific/solinas32_2e511m187_22limbs/Synthesis.v
deleted file mode 100644
index ad22063c2..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e511m187_22limbs.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_2e511m187_22limbs/compiler.sh b/src/Specific/solinas32_2e511m187_22limbs/compiler.sh
deleted file mode 100755
index 365f3d8dc..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,23,23,23,24,23,23,23,24,23,23,23,23,24,23,23,23,24,23,23,23,23}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='22' -Dq_mpz='(1_mpz<<511) - 187' "$@"
diff --git a/src/Specific/solinas32_2e511m187_22limbs/compilerxx.sh b/src/Specific/solinas32_2e511m187_22limbs/compilerxx.sh
deleted file mode 100755
index d2803f273..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{24,23,23,23,24,23,23,23,24,23,23,23,23,24,23,23,23,24,23,23,23,23}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='22' -Dq_mpz='(1_mpz<<511) - 187' "$@"
diff --git a/src/Specific/solinas32_2e511m187_22limbs/feadd.c b/src/Specific/solinas32_2e511m187_22limbs/feadd.c
deleted file mode 100644
index 3d8fcaced..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/feadd.c
+++ /dev/null
@@ -1,69 +0,0 @@
-static void feadd(uint32_t out[22], const uint32_t in1[22], const uint32_t in2[22]) {
- { const uint32_t x44 = in1[21];
- { const uint32_t x45 = in1[20];
- { const uint32_t x43 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x86 = in2[21];
- { const uint32_t x87 = in2[20];
- { const uint32_t x85 = in2[19];
- { const uint32_t x83 = in2[18];
- { const uint32_t x81 = in2[17];
- { const uint32_t x79 = in2[16];
- { const uint32_t x77 = in2[15];
- { const uint32_t x75 = in2[14];
- { const uint32_t x73 = in2[13];
- { const uint32_t x71 = in2[12];
- { const uint32_t x69 = in2[11];
- { const uint32_t x67 = in2[10];
- { const uint32_t x65 = in2[9];
- { const uint32_t x63 = in2[8];
- { const uint32_t x61 = in2[7];
- { const uint32_t x59 = in2[6];
- { const uint32_t x57 = in2[5];
- { const uint32_t x55 = in2[4];
- { const uint32_t x53 = in2[3];
- { const uint32_t x51 = in2[2];
- { const uint32_t x49 = in2[1];
- { const uint32_t x47 = in2[0];
- out[0] = (x5 + x47);
- out[1] = (x7 + x49);
- out[2] = (x9 + x51);
- out[3] = (x11 + x53);
- out[4] = (x13 + x55);
- out[5] = (x15 + x57);
- out[6] = (x17 + x59);
- out[7] = (x19 + x61);
- out[8] = (x21 + x63);
- out[9] = (x23 + x65);
- out[10] = (x25 + x67);
- out[11] = (x27 + x69);
- out[12] = (x29 + x71);
- out[13] = (x31 + x73);
- out[14] = (x33 + x75);
- out[15] = (x35 + x77);
- out[16] = (x37 + x79);
- out[17] = (x39 + x81);
- out[18] = (x41 + x83);
- out[19] = (x43 + x85);
- out[20] = (x45 + x87);
- out[21] = (x44 + x86);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e511m187_22limbs/feadd.v b/src/Specific/solinas32_2e511m187_22limbs/feadd.v
deleted file mode 100644
index 25cd4e3aa..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e511m187_22limbs.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_2e511m187_22limbs/feaddDisplay.log b/src/Specific/solinas32_2e511m187_22limbs/feaddDisplay.log
deleted file mode 100644
index 721ed2e79..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x44, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x86, x87, x85, x83, x81, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47))%core,
- ((x44 + x86), (x45 + x87), (x43 + x85), (x41 + x83), (x39 + x81), (x37 + x79), (x35 + x77), (x33 + x75), (x31 + x73), (x29 + x71), (x27 + x69), (x25 + x67), (x23 + x65), (x21 + x63), (x19 + x61), (x17 + x59), (x15 + x57), (x13 + x55), (x11 + x53), (x9 + x51), (x7 + x49), (x5 + x47)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e511m187_22limbs/feaddDisplay.v b/src/Specific/solinas32_2e511m187_22limbs/feaddDisplay.v
deleted file mode 100644
index b2fb0847d..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e511m187_22limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e511m187_22limbs/fecarry.v b/src/Specific/solinas32_2e511m187_22limbs/fecarry.v
deleted file mode 100644
index 967870050..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e511m187_22limbs.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_2e511m187_22limbs/fecarryDisplay.v b/src/Specific/solinas32_2e511m187_22limbs/fecarryDisplay.v
deleted file mode 100644
index 97e42ad48..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e511m187_22limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e511m187_22limbs/femul.c b/src/Specific/solinas32_2e511m187_22limbs/femul.c
deleted file mode 100644
index ea126d46e..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/femul.c
+++ /dev/null
@@ -1,162 +0,0 @@
-static void femul(uint32_t out[22], const uint32_t in1[22], const uint32_t in2[22]) {
- { const uint32_t x44 = in1[21];
- { const uint32_t x45 = in1[20];
- { const uint32_t x43 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x86 = in2[21];
- { const uint32_t x87 = in2[20];
- { const uint32_t x85 = in2[19];
- { const uint32_t x83 = in2[18];
- { const uint32_t x81 = in2[17];
- { const uint32_t x79 = in2[16];
- { const uint32_t x77 = in2[15];
- { const uint32_t x75 = in2[14];
- { const uint32_t x73 = in2[13];
- { const uint32_t x71 = in2[12];
- { const uint32_t x69 = in2[11];
- { const uint32_t x67 = in2[10];
- { const uint32_t x65 = in2[9];
- { const uint32_t x63 = in2[8];
- { const uint32_t x61 = in2[7];
- { const uint32_t x59 = in2[6];
- { const uint32_t x57 = in2[5];
- { const uint32_t x55 = in2[4];
- { const uint32_t x53 = in2[3];
- { const uint32_t x51 = in2[2];
- { const uint32_t x49 = in2[1];
- { const uint32_t x47 = in2[0];
- { uint64_t x88 = (((uint64_t)x5 * x86) + ((0x2 * ((uint64_t)x7 * x87)) + ((0x2 * ((uint64_t)x9 * x85)) + ((0x2 * ((uint64_t)x11 * x83)) + (((uint64_t)x13 * x81) + ((0x2 * ((uint64_t)x15 * x79)) + ((0x2 * ((uint64_t)x17 * x77)) + ((0x2 * ((uint64_t)x19 * x75)) + (((uint64_t)x21 * x73) + ((0x2 * ((uint64_t)x23 * x71)) + ((0x2 * ((uint64_t)x25 * x69)) + ((0x2 * ((uint64_t)x27 * x67)) + ((0x2 * ((uint64_t)x29 * x65)) + (((uint64_t)x31 * x63) + ((0x2 * ((uint64_t)x33 * x61)) + ((0x2 * ((uint64_t)x35 * x59)) + ((0x2 * ((uint64_t)x37 * x57)) + (((uint64_t)x39 * x55) + ((0x2 * ((uint64_t)x41 * x53)) + ((0x2 * ((uint64_t)x43 * x51)) + ((0x2 * ((uint64_t)x45 * x49)) + ((uint64_t)x44 * x47))))))))))))))))))))));
- { uint64_t x89 = ((((uint64_t)x5 * x87) + ((0x2 * ((uint64_t)x7 * x85)) + ((0x2 * ((uint64_t)x9 * x83)) + (((uint64_t)x11 * x81) + (((uint64_t)x13 * x79) + ((0x2 * ((uint64_t)x15 * x77)) + ((0x2 * ((uint64_t)x17 * x75)) + (((uint64_t)x19 * x73) + (((uint64_t)x21 * x71) + ((0x2 * ((uint64_t)x23 * x69)) + ((0x2 * ((uint64_t)x25 * x67)) + ((0x2 * ((uint64_t)x27 * x65)) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + ((0x2 * ((uint64_t)x33 * x59)) + ((0x2 * ((uint64_t)x35 * x57)) + (((uint64_t)x37 * x55) + (((uint64_t)x39 * x53) + ((0x2 * ((uint64_t)x41 * x51)) + ((0x2 * ((uint64_t)x43 * x49)) + ((uint64_t)x45 * x47))))))))))))))))))))) + (0xbb * ((uint64_t)x44 * x86)));
- { uint64_t x90 = ((((uint64_t)x5 * x85) + ((0x2 * ((uint64_t)x7 * x83)) + (((uint64_t)x9 * x81) + (((uint64_t)x11 * x79) + (((uint64_t)x13 * x77) + ((0x2 * ((uint64_t)x15 * x75)) + (((uint64_t)x17 * x73) + (((uint64_t)x19 * x71) + (((uint64_t)x21 * x69) + ((0x2 * ((uint64_t)x23 * x67)) + ((0x2 * ((uint64_t)x25 * x65)) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + ((0x2 * ((uint64_t)x33 * x57)) + (((uint64_t)x35 * x55) + (((uint64_t)x37 * x53) + (((uint64_t)x39 * x51) + ((0x2 * ((uint64_t)x41 * x49)) + ((uint64_t)x43 * x47)))))))))))))))))))) + (0xbb * (((uint64_t)x45 * x86) + ((uint64_t)x44 * x87))));
- { uint64_t x91 = ((((uint64_t)x5 * x83) + (((uint64_t)x7 * x81) + (((uint64_t)x9 * x79) + (((uint64_t)x11 * x77) + (((uint64_t)x13 * x75) + (((uint64_t)x15 * x73) + (((uint64_t)x17 * x71) + (((uint64_t)x19 * x69) + (((uint64_t)x21 * x67) + ((0x2 * ((uint64_t)x23 * x65)) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + (((uint64_t)x35 * x53) + (((uint64_t)x37 * x51) + (((uint64_t)x39 * x49) + ((uint64_t)x41 * x47))))))))))))))))))) + (0xbb * (((uint64_t)x43 * x86) + (((uint64_t)x45 * x87) + ((uint64_t)x44 * x85)))));
- { uint64_t x92 = ((((uint64_t)x5 * x81) + ((0x2 * ((uint64_t)x7 * x79)) + ((0x2 * ((uint64_t)x9 * x77)) + ((0x2 * ((uint64_t)x11 * x75)) + (((uint64_t)x13 * x73) + ((0x2 * ((uint64_t)x15 * x71)) + ((0x2 * ((uint64_t)x17 * x69)) + ((0x2 * ((uint64_t)x19 * x67)) + ((0x2 * ((uint64_t)x21 * x65)) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + ((0x2 * ((uint64_t)x29 * x57)) + (((uint64_t)x31 * x55) + ((0x2 * ((uint64_t)x33 * x53)) + ((0x2 * ((uint64_t)x35 * x51)) + ((0x2 * ((uint64_t)x37 * x49)) + ((uint64_t)x39 * x47)))))))))))))))))) + (0xbb * ((0x2 * ((uint64_t)x41 * x86)) + ((0x2 * ((uint64_t)x43 * x87)) + ((0x2 * ((uint64_t)x45 * x85)) + (0x2 * ((uint64_t)x44 * x83)))))));
- { uint64_t x93 = ((((uint64_t)x5 * x79) + ((0x2 * ((uint64_t)x7 * x77)) + ((0x2 * ((uint64_t)x9 * x75)) + (((uint64_t)x11 * x73) + (((uint64_t)x13 * x71) + ((0x2 * ((uint64_t)x15 * x69)) + ((0x2 * ((uint64_t)x17 * x67)) + ((0x2 * ((uint64_t)x19 * x65)) + (((uint64_t)x21 * x63) + ((0x2 * ((uint64_t)x23 * x61)) + ((0x2 * ((uint64_t)x25 * x59)) + ((0x2 * ((uint64_t)x27 * x57)) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + ((0x2 * ((uint64_t)x33 * x51)) + ((0x2 * ((uint64_t)x35 * x49)) + ((uint64_t)x37 * x47))))))))))))))))) + (0xbb * (((uint64_t)x39 * x86) + ((0x2 * ((uint64_t)x41 * x87)) + ((0x2 * ((uint64_t)x43 * x85)) + ((0x2 * ((uint64_t)x45 * x83)) + ((uint64_t)x44 * x81)))))));
- { uint64_t x94 = ((((uint64_t)x5 * x77) + ((0x2 * ((uint64_t)x7 * x75)) + (((uint64_t)x9 * x73) + (((uint64_t)x11 * x71) + (((uint64_t)x13 * x69) + ((0x2 * ((uint64_t)x15 * x67)) + ((0x2 * ((uint64_t)x17 * x65)) + (((uint64_t)x19 * x63) + (((uint64_t)x21 * x61) + ((0x2 * ((uint64_t)x23 * x59)) + ((0x2 * ((uint64_t)x25 * x57)) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + ((0x2 * ((uint64_t)x33 * x49)) + ((uint64_t)x35 * x47)))))))))))))))) + (0xbb * (((uint64_t)x37 * x86) + (((uint64_t)x39 * x87) + ((0x2 * ((uint64_t)x41 * x85)) + ((0x2 * ((uint64_t)x43 * x83)) + (((uint64_t)x45 * x81) + ((uint64_t)x44 * x79))))))));
- { uint64_t x95 = ((((uint64_t)x5 * x75) + (((uint64_t)x7 * x73) + (((uint64_t)x9 * x71) + (((uint64_t)x11 * x69) + (((uint64_t)x13 * x67) + ((0x2 * ((uint64_t)x15 * x65)) + (((uint64_t)x17 * x63) + (((uint64_t)x19 * x61) + (((uint64_t)x21 * x59) + ((0x2 * ((uint64_t)x23 * x57)) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + (((uint64_t)x31 * x49) + ((uint64_t)x33 * x47))))))))))))))) + (0xbb * (((uint64_t)x35 * x86) + (((uint64_t)x37 * x87) + (((uint64_t)x39 * x85) + ((0x2 * ((uint64_t)x41 * x83)) + (((uint64_t)x43 * x81) + (((uint64_t)x45 * x79) + ((uint64_t)x44 * x77)))))))));
- { uint64_t x96 = ((((uint64_t)x5 * x73) + ((0x2 * ((uint64_t)x7 * x71)) + ((0x2 * ((uint64_t)x9 * x69)) + ((0x2 * ((uint64_t)x11 * x67)) + ((0x2 * ((uint64_t)x13 * x65)) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + ((0x2 * ((uint64_t)x21 * x57)) + ((0x2 * ((uint64_t)x23 * x55)) + ((0x2 * ((uint64_t)x25 * x53)) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((uint64_t)x31 * x47)))))))))))))) + (0xbb * ((0x2 * ((uint64_t)x33 * x86)) + ((0x2 * ((uint64_t)x35 * x87)) + ((0x2 * ((uint64_t)x37 * x85)) + ((0x2 * ((uint64_t)x39 * x83)) + ((0x2 * ((uint64_t)x41 * x81)) + ((0x2 * ((uint64_t)x43 * x79)) + ((0x2 * ((uint64_t)x45 * x77)) + (0x2 * ((uint64_t)x44 * x75)))))))))));
- { uint64_t x97 = ((((uint64_t)x5 * x71) + ((0x2 * ((uint64_t)x7 * x69)) + ((0x2 * ((uint64_t)x9 * x67)) + ((0x2 * ((uint64_t)x11 * x65)) + (((uint64_t)x13 * x63) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + (((uint64_t)x21 * x55) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((uint64_t)x29 * x47))))))))))))) + (0xbb * (((uint64_t)x31 * x86) + ((0x2 * ((uint64_t)x33 * x87)) + ((0x2 * ((uint64_t)x35 * x85)) + ((0x2 * ((uint64_t)x37 * x83)) + (((uint64_t)x39 * x81) + ((0x2 * ((uint64_t)x41 * x79)) + ((0x2 * ((uint64_t)x43 * x77)) + ((0x2 * ((uint64_t)x45 * x75)) + ((uint64_t)x44 * x73)))))))))));
- { uint64_t x98 = ((((uint64_t)x5 * x69) + ((0x2 * ((uint64_t)x7 * x67)) + ((0x2 * ((uint64_t)x9 * x65)) + (((uint64_t)x11 * x63) + (((uint64_t)x13 * x61) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + (((uint64_t)x19 * x55) + (((uint64_t)x21 * x53) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + ((uint64_t)x27 * x47)))))))))))) + (0xbb * (((uint64_t)x29 * x86) + (((uint64_t)x31 * x87) + ((0x2 * ((uint64_t)x33 * x85)) + ((0x2 * ((uint64_t)x35 * x83)) + (((uint64_t)x37 * x81) + (((uint64_t)x39 * x79) + ((0x2 * ((uint64_t)x41 * x77)) + ((0x2 * ((uint64_t)x43 * x75)) + (((uint64_t)x45 * x73) + ((uint64_t)x44 * x71))))))))))));
- { uint64_t x99 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + (((uint64_t)x9 * x63) + (((uint64_t)x11 * x61) + (((uint64_t)x13 * x59) + ((0x2 * ((uint64_t)x15 * x57)) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + (((uint64_t)x21 * x51) + ((0x2 * ((uint64_t)x23 * x49)) + ((uint64_t)x25 * x47))))))))))) + (0xbb * (((uint64_t)x27 * x86) + (((uint64_t)x29 * x87) + (((uint64_t)x31 * x85) + ((0x2 * ((uint64_t)x33 * x83)) + (((uint64_t)x35 * x81) + (((uint64_t)x37 * x79) + (((uint64_t)x39 * x77) + ((0x2 * ((uint64_t)x41 * x75)) + (((uint64_t)x43 * x73) + (((uint64_t)x45 * x71) + ((uint64_t)x44 * x69)))))))))))));
- { uint64_t x100 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + ((uint64_t)x23 * x47)))))))))) + (0xbb * (((uint64_t)x25 * x86) + (((uint64_t)x27 * x87) + (((uint64_t)x29 * x85) + (((uint64_t)x31 * x83) + (((uint64_t)x33 * x81) + (((uint64_t)x35 * x79) + (((uint64_t)x37 * x77) + (((uint64_t)x39 * x75) + (((uint64_t)x41 * x73) + (((uint64_t)x43 * x71) + (((uint64_t)x45 * x69) + ((uint64_t)x44 * x67))))))))))))));
- { uint64_t x101 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + (((uint64_t)x13 * x55) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((uint64_t)x21 * x47))))))))) + (0xbb * ((0x2 * ((uint64_t)x23 * x86)) + ((0x2 * ((uint64_t)x25 * x87)) + ((0x2 * ((uint64_t)x27 * x85)) + ((0x2 * ((uint64_t)x29 * x83)) + (((uint64_t)x31 * x81) + ((0x2 * ((uint64_t)x33 * x79)) + ((0x2 * ((uint64_t)x35 * x77)) + ((0x2 * ((uint64_t)x37 * x75)) + (((uint64_t)x39 * x73) + ((0x2 * ((uint64_t)x41 * x71)) + ((0x2 * ((uint64_t)x43 * x69)) + ((0x2 * ((uint64_t)x45 * x67)) + (0x2 * ((uint64_t)x44 * x65))))))))))))))));
- { uint64_t x102 = ((((uint64_t)x5 * x61) + ((0x2 * ((uint64_t)x7 * x59)) + ((0x2 * ((uint64_t)x9 * x57)) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + ((0x2 * ((uint64_t)x15 * x51)) + ((0x2 * ((uint64_t)x17 * x49)) + ((uint64_t)x19 * x47)))))))) + (0xbb * (((uint64_t)x21 * x86) + ((0x2 * ((uint64_t)x23 * x87)) + ((0x2 * ((uint64_t)x25 * x85)) + ((0x2 * ((uint64_t)x27 * x83)) + (((uint64_t)x29 * x81) + (((uint64_t)x31 * x79) + ((0x2 * ((uint64_t)x33 * x77)) + ((0x2 * ((uint64_t)x35 * x75)) + (((uint64_t)x37 * x73) + (((uint64_t)x39 * x71) + ((0x2 * ((uint64_t)x41 * x69)) + ((0x2 * ((uint64_t)x43 * x67)) + ((0x2 * ((uint64_t)x45 * x65)) + ((uint64_t)x44 * x63))))))))))))))));
- { uint64_t x103 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + ((0x2 * ((uint64_t)x15 * x49)) + ((uint64_t)x17 * x47))))))) + (0xbb * (((uint64_t)x19 * x86) + (((uint64_t)x21 * x87) + ((0x2 * ((uint64_t)x23 * x85)) + ((0x2 * ((uint64_t)x25 * x83)) + (((uint64_t)x27 * x81) + (((uint64_t)x29 * x79) + (((uint64_t)x31 * x77) + ((0x2 * ((uint64_t)x33 * x75)) + (((uint64_t)x35 * x73) + (((uint64_t)x37 * x71) + (((uint64_t)x39 * x69) + ((0x2 * ((uint64_t)x41 * x67)) + ((0x2 * ((uint64_t)x43 * x65)) + (((uint64_t)x45 * x63) + ((uint64_t)x44 * x61)))))))))))))))));
- { uint64_t x104 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + (((uint64_t)x13 * x49) + ((uint64_t)x15 * x47)))))) + (0xbb * (((uint64_t)x17 * x86) + (((uint64_t)x19 * x87) + (((uint64_t)x21 * x85) + ((0x2 * ((uint64_t)x23 * x83)) + (((uint64_t)x25 * x81) + (((uint64_t)x27 * x79) + (((uint64_t)x29 * x77) + (((uint64_t)x31 * x75) + (((uint64_t)x33 * x73) + (((uint64_t)x35 * x71) + (((uint64_t)x37 * x69) + (((uint64_t)x39 * x67) + ((0x2 * ((uint64_t)x41 * x65)) + (((uint64_t)x43 * x63) + (((uint64_t)x45 * x61) + ((uint64_t)x44 * x59))))))))))))))))));
- { uint64_t x105 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((uint64_t)x13 * x47))))) + (0xbb * ((0x2 * ((uint64_t)x15 * x86)) + ((0x2 * ((uint64_t)x17 * x87)) + ((0x2 * ((uint64_t)x19 * x85)) + ((0x2 * ((uint64_t)x21 * x83)) + ((0x2 * ((uint64_t)x23 * x81)) + ((0x2 * ((uint64_t)x25 * x79)) + ((0x2 * ((uint64_t)x27 * x77)) + ((0x2 * ((uint64_t)x29 * x75)) + (((uint64_t)x31 * x73) + ((0x2 * ((uint64_t)x33 * x71)) + ((0x2 * ((uint64_t)x35 * x69)) + ((0x2 * ((uint64_t)x37 * x67)) + ((0x2 * ((uint64_t)x39 * x65)) + ((0x2 * ((uint64_t)x41 * x63)) + ((0x2 * ((uint64_t)x43 * x61)) + ((0x2 * ((uint64_t)x45 * x59)) + (0x2 * ((uint64_t)x44 * x57))))))))))))))))))));
- { uint64_t x106 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((uint64_t)x11 * x47)))) + (0xbb * (((uint64_t)x13 * x86) + ((0x2 * ((uint64_t)x15 * x87)) + ((0x2 * ((uint64_t)x17 * x85)) + ((0x2 * ((uint64_t)x19 * x83)) + (((uint64_t)x21 * x81) + ((0x2 * ((uint64_t)x23 * x79)) + ((0x2 * ((uint64_t)x25 * x77)) + ((0x2 * ((uint64_t)x27 * x75)) + (((uint64_t)x29 * x73) + (((uint64_t)x31 * x71) + ((0x2 * ((uint64_t)x33 * x69)) + ((0x2 * ((uint64_t)x35 * x67)) + ((0x2 * ((uint64_t)x37 * x65)) + (((uint64_t)x39 * x63) + ((0x2 * ((uint64_t)x41 * x61)) + ((0x2 * ((uint64_t)x43 * x59)) + ((0x2 * ((uint64_t)x45 * x57)) + ((uint64_t)x44 * x55))))))))))))))))))));
- { uint64_t x107 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((uint64_t)x9 * x47))) + (0xbb * (((uint64_t)x11 * x86) + (((uint64_t)x13 * x87) + ((0x2 * ((uint64_t)x15 * x85)) + ((0x2 * ((uint64_t)x17 * x83)) + (((uint64_t)x19 * x81) + (((uint64_t)x21 * x79) + ((0x2 * ((uint64_t)x23 * x77)) + ((0x2 * ((uint64_t)x25 * x75)) + (((uint64_t)x27 * x73) + (((uint64_t)x29 * x71) + (((uint64_t)x31 * x69) + ((0x2 * ((uint64_t)x33 * x67)) + ((0x2 * ((uint64_t)x35 * x65)) + (((uint64_t)x37 * x63) + (((uint64_t)x39 * x61) + ((0x2 * ((uint64_t)x41 * x59)) + ((0x2 * ((uint64_t)x43 * x57)) + (((uint64_t)x45 * x55) + ((uint64_t)x44 * x53)))))))))))))))))))));
- { uint64_t x108 = ((((uint64_t)x5 * x49) + ((uint64_t)x7 * x47)) + (0xbb * (((uint64_t)x9 * x86) + (((uint64_t)x11 * x87) + (((uint64_t)x13 * x85) + ((0x2 * ((uint64_t)x15 * x83)) + (((uint64_t)x17 * x81) + (((uint64_t)x19 * x79) + (((uint64_t)x21 * x77) + ((0x2 * ((uint64_t)x23 * x75)) + (((uint64_t)x25 * x73) + (((uint64_t)x27 * x71) + (((uint64_t)x29 * x69) + (((uint64_t)x31 * x67) + ((0x2 * ((uint64_t)x33 * x65)) + (((uint64_t)x35 * x63) + (((uint64_t)x37 * x61) + (((uint64_t)x39 * x59) + ((0x2 * ((uint64_t)x41 * x57)) + (((uint64_t)x43 * x55) + (((uint64_t)x45 * x53) + ((uint64_t)x44 * x51))))))))))))))))))))));
- { uint64_t x109 = (((uint64_t)x5 * x47) + (0xbb * ((0x2 * ((uint64_t)x7 * x86)) + ((0x2 * ((uint64_t)x9 * x87)) + ((0x2 * ((uint64_t)x11 * x85)) + ((0x2 * ((uint64_t)x13 * x83)) + ((0x2 * ((uint64_t)x15 * x81)) + ((0x2 * ((uint64_t)x17 * x79)) + ((0x2 * ((uint64_t)x19 * x77)) + ((0x2 * ((uint64_t)x21 * x75)) + ((0x2 * ((uint64_t)x23 * x73)) + ((0x2 * ((uint64_t)x25 * x71)) + ((0x2 * ((uint64_t)x27 * x69)) + ((0x2 * ((uint64_t)x29 * x67)) + ((0x2 * ((uint64_t)x31 * x65)) + ((0x2 * ((uint64_t)x33 * x63)) + ((0x2 * ((uint64_t)x35 * x61)) + ((0x2 * ((uint64_t)x37 * x59)) + ((0x2 * ((uint64_t)x39 * x57)) + ((0x2 * ((uint64_t)x41 * x55)) + ((0x2 * ((uint64_t)x43 * x53)) + ((0x2 * ((uint64_t)x45 * x51)) + (0x2 * ((uint64_t)x44 * x49))))))))))))))))))))))));
- { uint64_t x110 = (x109 >> 0x18);
- { uint32_t x111 = ((uint32_t)x109 & 0xffffff);
- { uint64_t x112 = (x110 + x108);
- { uint64_t x113 = (x112 >> 0x17);
- { uint32_t x114 = ((uint32_t)x112 & 0x7fffff);
- { uint64_t x115 = (x113 + x107);
- { uint64_t x116 = (x115 >> 0x17);
- { uint32_t x117 = ((uint32_t)x115 & 0x7fffff);
- { uint64_t x118 = (x116 + x106);
- { uint64_t x119 = (x118 >> 0x17);
- { uint32_t x120 = ((uint32_t)x118 & 0x7fffff);
- { uint64_t x121 = (x119 + x105);
- { uint64_t x122 = (x121 >> 0x18);
- { uint32_t x123 = ((uint32_t)x121 & 0xffffff);
- { uint64_t x124 = (x122 + x104);
- { uint64_t x125 = (x124 >> 0x17);
- { uint32_t x126 = ((uint32_t)x124 & 0x7fffff);
- { uint64_t x127 = (x125 + x103);
- { uint64_t x128 = (x127 >> 0x17);
- { uint32_t x129 = ((uint32_t)x127 & 0x7fffff);
- { uint64_t x130 = (x128 + x102);
- { uint64_t x131 = (x130 >> 0x17);
- { uint32_t x132 = ((uint32_t)x130 & 0x7fffff);
- { uint64_t x133 = (x131 + x101);
- { uint64_t x134 = (x133 >> 0x18);
- { uint32_t x135 = ((uint32_t)x133 & 0xffffff);
- { uint64_t x136 = (x134 + x100);
- { uint64_t x137 = (x136 >> 0x17);
- { uint32_t x138 = ((uint32_t)x136 & 0x7fffff);
- { uint64_t x139 = (x137 + x99);
- { uint64_t x140 = (x139 >> 0x17);
- { uint32_t x141 = ((uint32_t)x139 & 0x7fffff);
- { uint64_t x142 = (x140 + x98);
- { uint64_t x143 = (x142 >> 0x17);
- { uint32_t x144 = ((uint32_t)x142 & 0x7fffff);
- { uint64_t x145 = (x143 + x97);
- { uint64_t x146 = (x145 >> 0x17);
- { uint32_t x147 = ((uint32_t)x145 & 0x7fffff);
- { uint64_t x148 = (x146 + x96);
- { uint64_t x149 = (x148 >> 0x18);
- { uint32_t x150 = ((uint32_t)x148 & 0xffffff);
- { uint64_t x151 = (x149 + x95);
- { uint64_t x152 = (x151 >> 0x17);
- { uint32_t x153 = ((uint32_t)x151 & 0x7fffff);
- { uint64_t x154 = (x152 + x94);
- { uint64_t x155 = (x154 >> 0x17);
- { uint32_t x156 = ((uint32_t)x154 & 0x7fffff);
- { uint64_t x157 = (x155 + x93);
- { uint64_t x158 = (x157 >> 0x17);
- { uint32_t x159 = ((uint32_t)x157 & 0x7fffff);
- { uint64_t x160 = (x158 + x92);
- { uint64_t x161 = (x160 >> 0x18);
- { uint32_t x162 = ((uint32_t)x160 & 0xffffff);
- { uint64_t x163 = (x161 + x91);
- { uint64_t x164 = (x163 >> 0x17);
- { uint32_t x165 = ((uint32_t)x163 & 0x7fffff);
- { uint64_t x166 = (x164 + x90);
- { uint64_t x167 = (x166 >> 0x17);
- { uint32_t x168 = ((uint32_t)x166 & 0x7fffff);
- { uint64_t x169 = (x167 + x89);
- { uint64_t x170 = (x169 >> 0x17);
- { uint32_t x171 = ((uint32_t)x169 & 0x7fffff);
- { uint64_t x172 = (x170 + x88);
- { uint64_t x173 = (x172 >> 0x17);
- { uint32_t x174 = ((uint32_t)x172 & 0x7fffff);
- { uint64_t x175 = (x111 + (0xbb * x173));
- { uint32_t x176 = (uint32_t) (x175 >> 0x18);
- { uint32_t x177 = ((uint32_t)x175 & 0xffffff);
- { uint32_t x178 = (x176 + x114);
- { uint32_t x179 = (x178 >> 0x17);
- { uint32_t x180 = (x178 & 0x7fffff);
- out[0] = x177;
- out[1] = x180;
- out[2] = (x179 + x117);
- out[3] = x120;
- out[4] = x123;
- out[5] = x126;
- out[6] = x129;
- out[7] = x132;
- out[8] = x135;
- out[9] = x138;
- out[10] = x141;
- out[11] = x144;
- out[12] = x147;
- out[13] = x150;
- out[14] = x153;
- out[15] = x156;
- out[16] = x159;
- out[17] = x162;
- out[18] = x165;
- out[19] = x168;
- out[20] = x171;
- out[21] = x174;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e511m187_22limbs/femul.v b/src/Specific/solinas32_2e511m187_22limbs/femul.v
deleted file mode 100644
index 1201c85ba..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e511m187_22limbs.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_2e511m187_22limbs/femulDisplay.log b/src/Specific/solinas32_2e511m187_22limbs/femulDisplay.log
deleted file mode 100644
index ae153fcc0..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/femulDisplay.log
+++ /dev/null
@@ -1,100 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x44, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x86, x87, x85, x83, x81, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47))%core,
- uint64_t x88 = (((uint64_t)x5 * x86) + ((0x2 * ((uint64_t)x7 * x87)) + ((0x2 * ((uint64_t)x9 * x85)) + ((0x2 * ((uint64_t)x11 * x83)) + (((uint64_t)x13 * x81) + ((0x2 * ((uint64_t)x15 * x79)) + ((0x2 * ((uint64_t)x17 * x77)) + ((0x2 * ((uint64_t)x19 * x75)) + (((uint64_t)x21 * x73) + ((0x2 * ((uint64_t)x23 * x71)) + ((0x2 * ((uint64_t)x25 * x69)) + ((0x2 * ((uint64_t)x27 * x67)) + ((0x2 * ((uint64_t)x29 * x65)) + (((uint64_t)x31 * x63) + ((0x2 * ((uint64_t)x33 * x61)) + ((0x2 * ((uint64_t)x35 * x59)) + ((0x2 * ((uint64_t)x37 * x57)) + (((uint64_t)x39 * x55) + ((0x2 * ((uint64_t)x41 * x53)) + ((0x2 * ((uint64_t)x43 * x51)) + ((0x2 * ((uint64_t)x45 * x49)) + ((uint64_t)x44 * x47))))))))))))))))))))));
- uint64_t x89 = ((((uint64_t)x5 * x87) + ((0x2 * ((uint64_t)x7 * x85)) + ((0x2 * ((uint64_t)x9 * x83)) + (((uint64_t)x11 * x81) + (((uint64_t)x13 * x79) + ((0x2 * ((uint64_t)x15 * x77)) + ((0x2 * ((uint64_t)x17 * x75)) + (((uint64_t)x19 * x73) + (((uint64_t)x21 * x71) + ((0x2 * ((uint64_t)x23 * x69)) + ((0x2 * ((uint64_t)x25 * x67)) + ((0x2 * ((uint64_t)x27 * x65)) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + ((0x2 * ((uint64_t)x33 * x59)) + ((0x2 * ((uint64_t)x35 * x57)) + (((uint64_t)x37 * x55) + (((uint64_t)x39 * x53) + ((0x2 * ((uint64_t)x41 * x51)) + ((0x2 * ((uint64_t)x43 * x49)) + ((uint64_t)x45 * x47))))))))))))))))))))) + (0xbb * ((uint64_t)x44 * x86)));
- uint64_t x90 = ((((uint64_t)x5 * x85) + ((0x2 * ((uint64_t)x7 * x83)) + (((uint64_t)x9 * x81) + (((uint64_t)x11 * x79) + (((uint64_t)x13 * x77) + ((0x2 * ((uint64_t)x15 * x75)) + (((uint64_t)x17 * x73) + (((uint64_t)x19 * x71) + (((uint64_t)x21 * x69) + ((0x2 * ((uint64_t)x23 * x67)) + ((0x2 * ((uint64_t)x25 * x65)) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + ((0x2 * ((uint64_t)x33 * x57)) + (((uint64_t)x35 * x55) + (((uint64_t)x37 * x53) + (((uint64_t)x39 * x51) + ((0x2 * ((uint64_t)x41 * x49)) + ((uint64_t)x43 * x47)))))))))))))))))))) + (0xbb * (((uint64_t)x45 * x86) + ((uint64_t)x44 * x87))));
- uint64_t x91 = ((((uint64_t)x5 * x83) + (((uint64_t)x7 * x81) + (((uint64_t)x9 * x79) + (((uint64_t)x11 * x77) + (((uint64_t)x13 * x75) + (((uint64_t)x15 * x73) + (((uint64_t)x17 * x71) + (((uint64_t)x19 * x69) + (((uint64_t)x21 * x67) + ((0x2 * ((uint64_t)x23 * x65)) + (((uint64_t)x25 * x63) + (((uint64_t)x27 * x61) + (((uint64_t)x29 * x59) + (((uint64_t)x31 * x57) + (((uint64_t)x33 * x55) + (((uint64_t)x35 * x53) + (((uint64_t)x37 * x51) + (((uint64_t)x39 * x49) + ((uint64_t)x41 * x47))))))))))))))))))) + (0xbb * (((uint64_t)x43 * x86) + (((uint64_t)x45 * x87) + ((uint64_t)x44 * x85)))));
- uint64_t x92 = ((((uint64_t)x5 * x81) + ((0x2 * ((uint64_t)x7 * x79)) + ((0x2 * ((uint64_t)x9 * x77)) + ((0x2 * ((uint64_t)x11 * x75)) + (((uint64_t)x13 * x73) + ((0x2 * ((uint64_t)x15 * x71)) + ((0x2 * ((uint64_t)x17 * x69)) + ((0x2 * ((uint64_t)x19 * x67)) + ((0x2 * ((uint64_t)x21 * x65)) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + ((0x2 * ((uint64_t)x29 * x57)) + (((uint64_t)x31 * x55) + ((0x2 * ((uint64_t)x33 * x53)) + ((0x2 * ((uint64_t)x35 * x51)) + ((0x2 * ((uint64_t)x37 * x49)) + ((uint64_t)x39 * x47)))))))))))))))))) + (0xbb * ((0x2 * ((uint64_t)x41 * x86)) + ((0x2 * ((uint64_t)x43 * x87)) + ((0x2 * ((uint64_t)x45 * x85)) + (0x2 * ((uint64_t)x44 * x83)))))));
- uint64_t x93 = ((((uint64_t)x5 * x79) + ((0x2 * ((uint64_t)x7 * x77)) + ((0x2 * ((uint64_t)x9 * x75)) + (((uint64_t)x11 * x73) + (((uint64_t)x13 * x71) + ((0x2 * ((uint64_t)x15 * x69)) + ((0x2 * ((uint64_t)x17 * x67)) + ((0x2 * ((uint64_t)x19 * x65)) + (((uint64_t)x21 * x63) + ((0x2 * ((uint64_t)x23 * x61)) + ((0x2 * ((uint64_t)x25 * x59)) + ((0x2 * ((uint64_t)x27 * x57)) + (((uint64_t)x29 * x55) + (((uint64_t)x31 * x53) + ((0x2 * ((uint64_t)x33 * x51)) + ((0x2 * ((uint64_t)x35 * x49)) + ((uint64_t)x37 * x47))))))))))))))))) + (0xbb * (((uint64_t)x39 * x86) + ((0x2 * ((uint64_t)x41 * x87)) + ((0x2 * ((uint64_t)x43 * x85)) + ((0x2 * ((uint64_t)x45 * x83)) + ((uint64_t)x44 * x81)))))));
- uint64_t x94 = ((((uint64_t)x5 * x77) + ((0x2 * ((uint64_t)x7 * x75)) + (((uint64_t)x9 * x73) + (((uint64_t)x11 * x71) + (((uint64_t)x13 * x69) + ((0x2 * ((uint64_t)x15 * x67)) + ((0x2 * ((uint64_t)x17 * x65)) + (((uint64_t)x19 * x63) + (((uint64_t)x21 * x61) + ((0x2 * ((uint64_t)x23 * x59)) + ((0x2 * ((uint64_t)x25 * x57)) + (((uint64_t)x27 * x55) + (((uint64_t)x29 * x53) + (((uint64_t)x31 * x51) + ((0x2 * ((uint64_t)x33 * x49)) + ((uint64_t)x35 * x47)))))))))))))))) + (0xbb * (((uint64_t)x37 * x86) + (((uint64_t)x39 * x87) + ((0x2 * ((uint64_t)x41 * x85)) + ((0x2 * ((uint64_t)x43 * x83)) + (((uint64_t)x45 * x81) + ((uint64_t)x44 * x79))))))));
- uint64_t x95 = ((((uint64_t)x5 * x75) + (((uint64_t)x7 * x73) + (((uint64_t)x9 * x71) + (((uint64_t)x11 * x69) + (((uint64_t)x13 * x67) + ((0x2 * ((uint64_t)x15 * x65)) + (((uint64_t)x17 * x63) + (((uint64_t)x19 * x61) + (((uint64_t)x21 * x59) + ((0x2 * ((uint64_t)x23 * x57)) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + (((uint64_t)x29 * x51) + (((uint64_t)x31 * x49) + ((uint64_t)x33 * x47))))))))))))))) + (0xbb * (((uint64_t)x35 * x86) + (((uint64_t)x37 * x87) + (((uint64_t)x39 * x85) + ((0x2 * ((uint64_t)x41 * x83)) + (((uint64_t)x43 * x81) + (((uint64_t)x45 * x79) + ((uint64_t)x44 * x77)))))))));
- uint64_t x96 = ((((uint64_t)x5 * x73) + ((0x2 * ((uint64_t)x7 * x71)) + ((0x2 * ((uint64_t)x9 * x69)) + ((0x2 * ((uint64_t)x11 * x67)) + ((0x2 * ((uint64_t)x13 * x65)) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + ((0x2 * ((uint64_t)x21 * x57)) + ((0x2 * ((uint64_t)x23 * x55)) + ((0x2 * ((uint64_t)x25 * x53)) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((uint64_t)x31 * x47)))))))))))))) + (0xbb * ((0x2 * ((uint64_t)x33 * x86)) + ((0x2 * ((uint64_t)x35 * x87)) + ((0x2 * ((uint64_t)x37 * x85)) + ((0x2 * ((uint64_t)x39 * x83)) + ((0x2 * ((uint64_t)x41 * x81)) + ((0x2 * ((uint64_t)x43 * x79)) + ((0x2 * ((uint64_t)x45 * x77)) + (0x2 * ((uint64_t)x44 * x75)))))))))));
- uint64_t x97 = ((((uint64_t)x5 * x71) + ((0x2 * ((uint64_t)x7 * x69)) + ((0x2 * ((uint64_t)x9 * x67)) + ((0x2 * ((uint64_t)x11 * x65)) + (((uint64_t)x13 * x63) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + (((uint64_t)x21 * x55) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((uint64_t)x29 * x47))))))))))))) + (0xbb * (((uint64_t)x31 * x86) + ((0x2 * ((uint64_t)x33 * x87)) + ((0x2 * ((uint64_t)x35 * x85)) + ((0x2 * ((uint64_t)x37 * x83)) + (((uint64_t)x39 * x81) + ((0x2 * ((uint64_t)x41 * x79)) + ((0x2 * ((uint64_t)x43 * x77)) + ((0x2 * ((uint64_t)x45 * x75)) + ((uint64_t)x44 * x73)))))))))));
- uint64_t x98 = ((((uint64_t)x5 * x69) + ((0x2 * ((uint64_t)x7 * x67)) + ((0x2 * ((uint64_t)x9 * x65)) + (((uint64_t)x11 * x63) + (((uint64_t)x13 * x61) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + (((uint64_t)x19 * x55) + (((uint64_t)x21 * x53) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + ((uint64_t)x27 * x47)))))))))))) + (0xbb * (((uint64_t)x29 * x86) + (((uint64_t)x31 * x87) + ((0x2 * ((uint64_t)x33 * x85)) + ((0x2 * ((uint64_t)x35 * x83)) + (((uint64_t)x37 * x81) + (((uint64_t)x39 * x79) + ((0x2 * ((uint64_t)x41 * x77)) + ((0x2 * ((uint64_t)x43 * x75)) + (((uint64_t)x45 * x73) + ((uint64_t)x44 * x71))))))))))));
- uint64_t x99 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + (((uint64_t)x9 * x63) + (((uint64_t)x11 * x61) + (((uint64_t)x13 * x59) + ((0x2 * ((uint64_t)x15 * x57)) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + (((uint64_t)x21 * x51) + ((0x2 * ((uint64_t)x23 * x49)) + ((uint64_t)x25 * x47))))))))))) + (0xbb * (((uint64_t)x27 * x86) + (((uint64_t)x29 * x87) + (((uint64_t)x31 * x85) + ((0x2 * ((uint64_t)x33 * x83)) + (((uint64_t)x35 * x81) + (((uint64_t)x37 * x79) + (((uint64_t)x39 * x77) + ((0x2 * ((uint64_t)x41 * x75)) + (((uint64_t)x43 * x73) + (((uint64_t)x45 * x71) + ((uint64_t)x44 * x69)))))))))))));
- uint64_t x100 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + ((uint64_t)x23 * x47)))))))))) + (0xbb * (((uint64_t)x25 * x86) + (((uint64_t)x27 * x87) + (((uint64_t)x29 * x85) + (((uint64_t)x31 * x83) + (((uint64_t)x33 * x81) + (((uint64_t)x35 * x79) + (((uint64_t)x37 * x77) + (((uint64_t)x39 * x75) + (((uint64_t)x41 * x73) + (((uint64_t)x43 * x71) + (((uint64_t)x45 * x69) + ((uint64_t)x44 * x67))))))))))))));
- uint64_t x101 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + (((uint64_t)x13 * x55) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((uint64_t)x21 * x47))))))))) + (0xbb * ((0x2 * ((uint64_t)x23 * x86)) + ((0x2 * ((uint64_t)x25 * x87)) + ((0x2 * ((uint64_t)x27 * x85)) + ((0x2 * ((uint64_t)x29 * x83)) + (((uint64_t)x31 * x81) + ((0x2 * ((uint64_t)x33 * x79)) + ((0x2 * ((uint64_t)x35 * x77)) + ((0x2 * ((uint64_t)x37 * x75)) + (((uint64_t)x39 * x73) + ((0x2 * ((uint64_t)x41 * x71)) + ((0x2 * ((uint64_t)x43 * x69)) + ((0x2 * ((uint64_t)x45 * x67)) + (0x2 * ((uint64_t)x44 * x65))))))))))))))));
- uint64_t x102 = ((((uint64_t)x5 * x61) + ((0x2 * ((uint64_t)x7 * x59)) + ((0x2 * ((uint64_t)x9 * x57)) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + ((0x2 * ((uint64_t)x15 * x51)) + ((0x2 * ((uint64_t)x17 * x49)) + ((uint64_t)x19 * x47)))))))) + (0xbb * (((uint64_t)x21 * x86) + ((0x2 * ((uint64_t)x23 * x87)) + ((0x2 * ((uint64_t)x25 * x85)) + ((0x2 * ((uint64_t)x27 * x83)) + (((uint64_t)x29 * x81) + (((uint64_t)x31 * x79) + ((0x2 * ((uint64_t)x33 * x77)) + ((0x2 * ((uint64_t)x35 * x75)) + (((uint64_t)x37 * x73) + (((uint64_t)x39 * x71) + ((0x2 * ((uint64_t)x41 * x69)) + ((0x2 * ((uint64_t)x43 * x67)) + ((0x2 * ((uint64_t)x45 * x65)) + ((uint64_t)x44 * x63))))))))))))))));
- uint64_t x103 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + (((uint64_t)x9 * x55) + (((uint64_t)x11 * x53) + (((uint64_t)x13 * x51) + ((0x2 * ((uint64_t)x15 * x49)) + ((uint64_t)x17 * x47))))))) + (0xbb * (((uint64_t)x19 * x86) + (((uint64_t)x21 * x87) + ((0x2 * ((uint64_t)x23 * x85)) + ((0x2 * ((uint64_t)x25 * x83)) + (((uint64_t)x27 * x81) + (((uint64_t)x29 * x79) + (((uint64_t)x31 * x77) + ((0x2 * ((uint64_t)x33 * x75)) + (((uint64_t)x35 * x73) + (((uint64_t)x37 * x71) + (((uint64_t)x39 * x69) + ((0x2 * ((uint64_t)x41 * x67)) + ((0x2 * ((uint64_t)x43 * x65)) + (((uint64_t)x45 * x63) + ((uint64_t)x44 * x61)))))))))))))))));
- uint64_t x104 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + (((uint64_t)x11 * x51) + (((uint64_t)x13 * x49) + ((uint64_t)x15 * x47)))))) + (0xbb * (((uint64_t)x17 * x86) + (((uint64_t)x19 * x87) + (((uint64_t)x21 * x85) + ((0x2 * ((uint64_t)x23 * x83)) + (((uint64_t)x25 * x81) + (((uint64_t)x27 * x79) + (((uint64_t)x29 * x77) + (((uint64_t)x31 * x75) + (((uint64_t)x33 * x73) + (((uint64_t)x35 * x71) + (((uint64_t)x37 * x69) + (((uint64_t)x39 * x67) + ((0x2 * ((uint64_t)x41 * x65)) + (((uint64_t)x43 * x63) + (((uint64_t)x45 * x61) + ((uint64_t)x44 * x59))))))))))))))))));
- uint64_t x105 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((uint64_t)x13 * x47))))) + (0xbb * ((0x2 * ((uint64_t)x15 * x86)) + ((0x2 * ((uint64_t)x17 * x87)) + ((0x2 * ((uint64_t)x19 * x85)) + ((0x2 * ((uint64_t)x21 * x83)) + ((0x2 * ((uint64_t)x23 * x81)) + ((0x2 * ((uint64_t)x25 * x79)) + ((0x2 * ((uint64_t)x27 * x77)) + ((0x2 * ((uint64_t)x29 * x75)) + (((uint64_t)x31 * x73) + ((0x2 * ((uint64_t)x33 * x71)) + ((0x2 * ((uint64_t)x35 * x69)) + ((0x2 * ((uint64_t)x37 * x67)) + ((0x2 * ((uint64_t)x39 * x65)) + ((0x2 * ((uint64_t)x41 * x63)) + ((0x2 * ((uint64_t)x43 * x61)) + ((0x2 * ((uint64_t)x45 * x59)) + (0x2 * ((uint64_t)x44 * x57))))))))))))))))))));
- uint64_t x106 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((uint64_t)x11 * x47)))) + (0xbb * (((uint64_t)x13 * x86) + ((0x2 * ((uint64_t)x15 * x87)) + ((0x2 * ((uint64_t)x17 * x85)) + ((0x2 * ((uint64_t)x19 * x83)) + (((uint64_t)x21 * x81) + ((0x2 * ((uint64_t)x23 * x79)) + ((0x2 * ((uint64_t)x25 * x77)) + ((0x2 * ((uint64_t)x27 * x75)) + (((uint64_t)x29 * x73) + (((uint64_t)x31 * x71) + ((0x2 * ((uint64_t)x33 * x69)) + ((0x2 * ((uint64_t)x35 * x67)) + ((0x2 * ((uint64_t)x37 * x65)) + (((uint64_t)x39 * x63) + ((0x2 * ((uint64_t)x41 * x61)) + ((0x2 * ((uint64_t)x43 * x59)) + ((0x2 * ((uint64_t)x45 * x57)) + ((uint64_t)x44 * x55))))))))))))))))))));
- uint64_t x107 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((uint64_t)x9 * x47))) + (0xbb * (((uint64_t)x11 * x86) + (((uint64_t)x13 * x87) + ((0x2 * ((uint64_t)x15 * x85)) + ((0x2 * ((uint64_t)x17 * x83)) + (((uint64_t)x19 * x81) + (((uint64_t)x21 * x79) + ((0x2 * ((uint64_t)x23 * x77)) + ((0x2 * ((uint64_t)x25 * x75)) + (((uint64_t)x27 * x73) + (((uint64_t)x29 * x71) + (((uint64_t)x31 * x69) + ((0x2 * ((uint64_t)x33 * x67)) + ((0x2 * ((uint64_t)x35 * x65)) + (((uint64_t)x37 * x63) + (((uint64_t)x39 * x61) + ((0x2 * ((uint64_t)x41 * x59)) + ((0x2 * ((uint64_t)x43 * x57)) + (((uint64_t)x45 * x55) + ((uint64_t)x44 * x53)))))))))))))))))))));
- uint64_t x108 = ((((uint64_t)x5 * x49) + ((uint64_t)x7 * x47)) + (0xbb * (((uint64_t)x9 * x86) + (((uint64_t)x11 * x87) + (((uint64_t)x13 * x85) + ((0x2 * ((uint64_t)x15 * x83)) + (((uint64_t)x17 * x81) + (((uint64_t)x19 * x79) + (((uint64_t)x21 * x77) + ((0x2 * ((uint64_t)x23 * x75)) + (((uint64_t)x25 * x73) + (((uint64_t)x27 * x71) + (((uint64_t)x29 * x69) + (((uint64_t)x31 * x67) + ((0x2 * ((uint64_t)x33 * x65)) + (((uint64_t)x35 * x63) + (((uint64_t)x37 * x61) + (((uint64_t)x39 * x59) + ((0x2 * ((uint64_t)x41 * x57)) + (((uint64_t)x43 * x55) + (((uint64_t)x45 * x53) + ((uint64_t)x44 * x51))))))))))))))))))))));
- uint64_t x109 = (((uint64_t)x5 * x47) + (0xbb * ((0x2 * ((uint64_t)x7 * x86)) + ((0x2 * ((uint64_t)x9 * x87)) + ((0x2 * ((uint64_t)x11 * x85)) + ((0x2 * ((uint64_t)x13 * x83)) + ((0x2 * ((uint64_t)x15 * x81)) + ((0x2 * ((uint64_t)x17 * x79)) + ((0x2 * ((uint64_t)x19 * x77)) + ((0x2 * ((uint64_t)x21 * x75)) + ((0x2 * ((uint64_t)x23 * x73)) + ((0x2 * ((uint64_t)x25 * x71)) + ((0x2 * ((uint64_t)x27 * x69)) + ((0x2 * ((uint64_t)x29 * x67)) + ((0x2 * ((uint64_t)x31 * x65)) + ((0x2 * ((uint64_t)x33 * x63)) + ((0x2 * ((uint64_t)x35 * x61)) + ((0x2 * ((uint64_t)x37 * x59)) + ((0x2 * ((uint64_t)x39 * x57)) + ((0x2 * ((uint64_t)x41 * x55)) + ((0x2 * ((uint64_t)x43 * x53)) + ((0x2 * ((uint64_t)x45 * x51)) + (0x2 * ((uint64_t)x44 * x49))))))))))))))))))))))));
- uint64_t x110 = (x109 >> 0x18);
- uint32_t x111 = ((uint32_t)x109 & 0xffffff);
- uint64_t x112 = (x110 + x108);
- uint64_t x113 = (x112 >> 0x17);
- uint32_t x114 = ((uint32_t)x112 & 0x7fffff);
- uint64_t x115 = (x113 + x107);
- uint64_t x116 = (x115 >> 0x17);
- uint32_t x117 = ((uint32_t)x115 & 0x7fffff);
- uint64_t x118 = (x116 + x106);
- uint64_t x119 = (x118 >> 0x17);
- uint32_t x120 = ((uint32_t)x118 & 0x7fffff);
- uint64_t x121 = (x119 + x105);
- uint64_t x122 = (x121 >> 0x18);
- uint32_t x123 = ((uint32_t)x121 & 0xffffff);
- uint64_t x124 = (x122 + x104);
- uint64_t x125 = (x124 >> 0x17);
- uint32_t x126 = ((uint32_t)x124 & 0x7fffff);
- uint64_t x127 = (x125 + x103);
- uint64_t x128 = (x127 >> 0x17);
- uint32_t x129 = ((uint32_t)x127 & 0x7fffff);
- uint64_t x130 = (x128 + x102);
- uint64_t x131 = (x130 >> 0x17);
- uint32_t x132 = ((uint32_t)x130 & 0x7fffff);
- uint64_t x133 = (x131 + x101);
- uint64_t x134 = (x133 >> 0x18);
- uint32_t x135 = ((uint32_t)x133 & 0xffffff);
- uint64_t x136 = (x134 + x100);
- uint64_t x137 = (x136 >> 0x17);
- uint32_t x138 = ((uint32_t)x136 & 0x7fffff);
- uint64_t x139 = (x137 + x99);
- uint64_t x140 = (x139 >> 0x17);
- uint32_t x141 = ((uint32_t)x139 & 0x7fffff);
- uint64_t x142 = (x140 + x98);
- uint64_t x143 = (x142 >> 0x17);
- uint32_t x144 = ((uint32_t)x142 & 0x7fffff);
- uint64_t x145 = (x143 + x97);
- uint64_t x146 = (x145 >> 0x17);
- uint32_t x147 = ((uint32_t)x145 & 0x7fffff);
- uint64_t x148 = (x146 + x96);
- uint64_t x149 = (x148 >> 0x18);
- uint32_t x150 = ((uint32_t)x148 & 0xffffff);
- uint64_t x151 = (x149 + x95);
- uint64_t x152 = (x151 >> 0x17);
- uint32_t x153 = ((uint32_t)x151 & 0x7fffff);
- uint64_t x154 = (x152 + x94);
- uint64_t x155 = (x154 >> 0x17);
- uint32_t x156 = ((uint32_t)x154 & 0x7fffff);
- uint64_t x157 = (x155 + x93);
- uint64_t x158 = (x157 >> 0x17);
- uint32_t x159 = ((uint32_t)x157 & 0x7fffff);
- uint64_t x160 = (x158 + x92);
- uint64_t x161 = (x160 >> 0x18);
- uint32_t x162 = ((uint32_t)x160 & 0xffffff);
- uint64_t x163 = (x161 + x91);
- uint64_t x164 = (x163 >> 0x17);
- uint32_t x165 = ((uint32_t)x163 & 0x7fffff);
- uint64_t x166 = (x164 + x90);
- uint64_t x167 = (x166 >> 0x17);
- uint32_t x168 = ((uint32_t)x166 & 0x7fffff);
- uint64_t x169 = (x167 + x89);
- uint64_t x170 = (x169 >> 0x17);
- uint32_t x171 = ((uint32_t)x169 & 0x7fffff);
- uint64_t x172 = (x170 + x88);
- uint64_t x173 = (x172 >> 0x17);
- uint32_t x174 = ((uint32_t)x172 & 0x7fffff);
- uint64_t x175 = (x111 + (0xbb * x173));
- uint32_t x176 = (uint32_t) (x175 >> 0x18);
- uint32_t x177 = ((uint32_t)x175 & 0xffffff);
- uint32_t x178 = (x176 + x114);
- uint32_t x179 = (x178 >> 0x17);
- uint32_t x180 = (x178 & 0x7fffff);
- return (Return x174, Return x171, Return x168, Return x165, Return x162, Return x159, Return x156, Return x153, Return x150, Return x147, Return x144, Return x141, Return x138, Return x135, Return x132, Return x129, Return x126, Return x123, Return x120, (x179 + x117), Return x180, Return x177))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e511m187_22limbs/femulDisplay.v b/src/Specific/solinas32_2e511m187_22limbs/femulDisplay.v
deleted file mode 100644
index 7b0822995..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e511m187_22limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e511m187_22limbs/fesquare.c b/src/Specific/solinas32_2e511m187_22limbs/fesquare.c
deleted file mode 100644
index c2be3c759..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/fesquare.c
+++ /dev/null
@@ -1,140 +0,0 @@
-static void fesquare(uint32_t out[22], const uint32_t in1[22]) {
- { const uint32_t x41 = in1[21];
- { const uint32_t x42 = in1[20];
- { const uint32_t x40 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x43 = (((uint64_t)x2 * x41) + ((0x2 * ((uint64_t)x4 * x42)) + ((0x2 * ((uint64_t)x6 * x40)) + ((0x2 * ((uint64_t)x8 * x38)) + (((uint64_t)x10 * x36) + ((0x2 * ((uint64_t)x12 * x34)) + ((0x2 * ((uint64_t)x14 * x32)) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + ((0x2 * ((uint64_t)x20 * x26)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + ((0x2 * ((uint64_t)x26 * x20)) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + ((0x2 * ((uint64_t)x32 * x14)) + ((0x2 * ((uint64_t)x34 * x12)) + (((uint64_t)x36 * x10) + ((0x2 * ((uint64_t)x38 * x8)) + ((0x2 * ((uint64_t)x40 * x6)) + ((0x2 * ((uint64_t)x42 * x4)) + ((uint64_t)x41 * x2))))))))))))))))))))));
- { uint64_t x44 = ((((uint64_t)x2 * x42) + ((0x2 * ((uint64_t)x4 * x40)) + ((0x2 * ((uint64_t)x6 * x38)) + (((uint64_t)x8 * x36) + (((uint64_t)x10 * x34) + ((0x2 * ((uint64_t)x12 * x32)) + ((0x2 * ((uint64_t)x14 * x30)) + (((uint64_t)x16 * x28) + (((uint64_t)x18 * x26) + ((0x2 * ((uint64_t)x20 * x24)) + ((0x2 * ((uint64_t)x22 * x22)) + ((0x2 * ((uint64_t)x24 * x20)) + (((uint64_t)x26 * x18) + (((uint64_t)x28 * x16) + ((0x2 * ((uint64_t)x30 * x14)) + ((0x2 * ((uint64_t)x32 * x12)) + (((uint64_t)x34 * x10) + (((uint64_t)x36 * x8) + ((0x2 * ((uint64_t)x38 * x6)) + ((0x2 * ((uint64_t)x40 * x4)) + ((uint64_t)x42 * x2))))))))))))))))))))) + (0xbb * ((uint64_t)x41 * x41)));
- { uint64_t x45 = ((((uint64_t)x2 * x40) + ((0x2 * ((uint64_t)x4 * x38)) + (((uint64_t)x6 * x36) + (((uint64_t)x8 * x34) + (((uint64_t)x10 * x32) + ((0x2 * ((uint64_t)x12 * x30)) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + ((0x2 * ((uint64_t)x30 * x12)) + (((uint64_t)x32 * x10) + (((uint64_t)x34 * x8) + (((uint64_t)x36 * x6) + ((0x2 * ((uint64_t)x38 * x4)) + ((uint64_t)x40 * x2)))))))))))))))))))) + (0xbb * (((uint64_t)x42 * x41) + ((uint64_t)x41 * x42))));
- { uint64_t x46 = ((((uint64_t)x2 * x38) + (((uint64_t)x4 * x36) + (((uint64_t)x6 * x34) + (((uint64_t)x8 * x32) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + (((uint64_t)x14 * x26) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (((uint64_t)x26 * x14) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + (((uint64_t)x32 * x8) + (((uint64_t)x34 * x6) + (((uint64_t)x36 * x4) + ((uint64_t)x38 * x2))))))))))))))))))) + (0xbb * (((uint64_t)x40 * x41) + (((uint64_t)x42 * x42) + ((uint64_t)x41 * x40)))));
- { uint64_t x47 = ((((uint64_t)x2 * x36) + ((0x2 * ((uint64_t)x4 * x34)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + (((uint64_t)x10 * x28) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + (((uint64_t)x28 * x10) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x36 * x2)))))))))))))))))) + (0xbb * ((0x2 * ((uint64_t)x38 * x41)) + ((0x2 * ((uint64_t)x40 * x42)) + ((0x2 * ((uint64_t)x42 * x40)) + (0x2 * ((uint64_t)x41 * x38)))))));
- { uint64_t x48 = ((((uint64_t)x2 * x34) + ((0x2 * ((uint64_t)x4 * x32)) + ((0x2 * ((uint64_t)x6 * x30)) + (((uint64_t)x8 * x28) + (((uint64_t)x10 * x26) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + (((uint64_t)x26 * x10) + (((uint64_t)x28 * x8) + ((0x2 * ((uint64_t)x30 * x6)) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x34 * x2))))))))))))))))) + (0xbb * (((uint64_t)x36 * x41) + ((0x2 * ((uint64_t)x38 * x42)) + ((0x2 * ((uint64_t)x40 * x40)) + ((0x2 * ((uint64_t)x42 * x38)) + ((uint64_t)x41 * x36)))))));
- { uint64_t x49 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0xbb * (((uint64_t)x34 * x41) + (((uint64_t)x36 * x42) + ((0x2 * ((uint64_t)x38 * x40)) + ((0x2 * ((uint64_t)x40 * x38)) + (((uint64_t)x42 * x36) + ((uint64_t)x41 * x34))))))));
- { uint64_t x50 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + ((0x2 * ((uint64_t)x12 * x20)) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + ((0x2 * ((uint64_t)x20 * x12)) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0xbb * (((uint64_t)x32 * x41) + (((uint64_t)x34 * x42) + (((uint64_t)x36 * x40) + ((0x2 * ((uint64_t)x38 * x38)) + (((uint64_t)x40 * x36) + (((uint64_t)x42 * x34) + ((uint64_t)x41 * x32)))))))));
- { uint64_t x51 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0xbb * ((0x2 * ((uint64_t)x30 * x41)) + ((0x2 * ((uint64_t)x32 * x42)) + ((0x2 * ((uint64_t)x34 * x40)) + ((0x2 * ((uint64_t)x36 * x38)) + ((0x2 * ((uint64_t)x38 * x36)) + ((0x2 * ((uint64_t)x40 * x34)) + ((0x2 * ((uint64_t)x42 * x32)) + (0x2 * ((uint64_t)x41 * x30)))))))))));
- { uint64_t x52 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0xbb * (((uint64_t)x28 * x41) + ((0x2 * ((uint64_t)x30 * x42)) + ((0x2 * ((uint64_t)x32 * x40)) + ((0x2 * ((uint64_t)x34 * x38)) + (((uint64_t)x36 * x36) + ((0x2 * ((uint64_t)x38 * x34)) + ((0x2 * ((uint64_t)x40 * x32)) + ((0x2 * ((uint64_t)x42 * x30)) + ((uint64_t)x41 * x28)))))))))));
- { uint64_t x53 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0xbb * (((uint64_t)x26 * x41) + (((uint64_t)x28 * x42) + ((0x2 * ((uint64_t)x30 * x40)) + ((0x2 * ((uint64_t)x32 * x38)) + (((uint64_t)x34 * x36) + (((uint64_t)x36 * x34) + ((0x2 * ((uint64_t)x38 * x32)) + ((0x2 * ((uint64_t)x40 * x30)) + (((uint64_t)x42 * x28) + ((uint64_t)x41 * x26))))))))))));
- { uint64_t x54 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0xbb * (((uint64_t)x24 * x41) + (((uint64_t)x26 * x42) + (((uint64_t)x28 * x40) + ((0x2 * ((uint64_t)x30 * x38)) + (((uint64_t)x32 * x36) + (((uint64_t)x34 * x34) + (((uint64_t)x36 * x32) + ((0x2 * ((uint64_t)x38 * x30)) + (((uint64_t)x40 * x28) + (((uint64_t)x42 * x26) + ((uint64_t)x41 * x24)))))))))))));
- { uint64_t x55 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0xbb * (((uint64_t)x22 * x41) + (((uint64_t)x24 * x42) + (((uint64_t)x26 * x40) + (((uint64_t)x28 * x38) + (((uint64_t)x30 * x36) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + (((uint64_t)x36 * x30) + (((uint64_t)x38 * x28) + (((uint64_t)x40 * x26) + (((uint64_t)x42 * x24) + ((uint64_t)x41 * x22))))))))))))));
- { uint64_t x56 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0xbb * ((0x2 * ((uint64_t)x20 * x41)) + ((0x2 * ((uint64_t)x22 * x42)) + ((0x2 * ((uint64_t)x24 * x40)) + ((0x2 * ((uint64_t)x26 * x38)) + (((uint64_t)x28 * x36) + ((0x2 * ((uint64_t)x30 * x34)) + ((0x2 * ((uint64_t)x32 * x32)) + ((0x2 * ((uint64_t)x34 * x30)) + (((uint64_t)x36 * x28) + ((0x2 * ((uint64_t)x38 * x26)) + ((0x2 * ((uint64_t)x40 * x24)) + ((0x2 * ((uint64_t)x42 * x22)) + (0x2 * ((uint64_t)x41 * x20))))))))))))))));
- { uint64_t x57 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0xbb * (((uint64_t)x18 * x41) + ((0x2 * ((uint64_t)x20 * x42)) + ((0x2 * ((uint64_t)x22 * x40)) + ((0x2 * ((uint64_t)x24 * x38)) + (((uint64_t)x26 * x36) + (((uint64_t)x28 * x34) + ((0x2 * ((uint64_t)x30 * x32)) + ((0x2 * ((uint64_t)x32 * x30)) + (((uint64_t)x34 * x28) + (((uint64_t)x36 * x26) + ((0x2 * ((uint64_t)x38 * x24)) + ((0x2 * ((uint64_t)x40 * x22)) + ((0x2 * ((uint64_t)x42 * x20)) + ((uint64_t)x41 * x18))))))))))))))));
- { uint64_t x58 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0xbb * (((uint64_t)x16 * x41) + (((uint64_t)x18 * x42) + ((0x2 * ((uint64_t)x20 * x40)) + ((0x2 * ((uint64_t)x22 * x38)) + (((uint64_t)x24 * x36) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + (((uint64_t)x36 * x24) + ((0x2 * ((uint64_t)x38 * x22)) + ((0x2 * ((uint64_t)x40 * x20)) + (((uint64_t)x42 * x18) + ((uint64_t)x41 * x16)))))))))))))))));
- { uint64_t x59 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0xbb * (((uint64_t)x14 * x41) + (((uint64_t)x16 * x42) + (((uint64_t)x18 * x40) + ((0x2 * ((uint64_t)x20 * x38)) + (((uint64_t)x22 * x36) + (((uint64_t)x24 * x34) + (((uint64_t)x26 * x32) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (((uint64_t)x32 * x26) + (((uint64_t)x34 * x24) + (((uint64_t)x36 * x22) + ((0x2 * ((uint64_t)x38 * x20)) + (((uint64_t)x40 * x18) + (((uint64_t)x42 * x16) + ((uint64_t)x41 * x14))))))))))))))))));
- { uint64_t x60 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0xbb * ((0x2 * ((uint64_t)x12 * x41)) + ((0x2 * ((uint64_t)x14 * x42)) + ((0x2 * ((uint64_t)x16 * x40)) + ((0x2 * ((uint64_t)x18 * x38)) + ((0x2 * ((uint64_t)x20 * x36)) + ((0x2 * ((uint64_t)x22 * x34)) + ((0x2 * ((uint64_t)x24 * x32)) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + ((0x2 * ((uint64_t)x32 * x24)) + ((0x2 * ((uint64_t)x34 * x22)) + ((0x2 * ((uint64_t)x36 * x20)) + ((0x2 * ((uint64_t)x38 * x18)) + ((0x2 * ((uint64_t)x40 * x16)) + ((0x2 * ((uint64_t)x42 * x14)) + (0x2 * ((uint64_t)x41 * x12))))))))))))))))))));
- { uint64_t x61 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0xbb * (((uint64_t)x10 * x41) + ((0x2 * ((uint64_t)x12 * x42)) + ((0x2 * ((uint64_t)x14 * x40)) + ((0x2 * ((uint64_t)x16 * x38)) + (((uint64_t)x18 * x36) + ((0x2 * ((uint64_t)x20 * x34)) + ((0x2 * ((uint64_t)x22 * x32)) + ((0x2 * ((uint64_t)x24 * x30)) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + ((0x2 * ((uint64_t)x30 * x24)) + ((0x2 * ((uint64_t)x32 * x22)) + ((0x2 * ((uint64_t)x34 * x20)) + (((uint64_t)x36 * x18) + ((0x2 * ((uint64_t)x38 * x16)) + ((0x2 * ((uint64_t)x40 * x14)) + ((0x2 * ((uint64_t)x42 * x12)) + ((uint64_t)x41 * x10))))))))))))))))))));
- { uint64_t x62 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0xbb * (((uint64_t)x8 * x41) + (((uint64_t)x10 * x42) + ((0x2 * ((uint64_t)x12 * x40)) + ((0x2 * ((uint64_t)x14 * x38)) + (((uint64_t)x16 * x36) + (((uint64_t)x18 * x34) + ((0x2 * ((uint64_t)x20 * x32)) + ((0x2 * ((uint64_t)x22 * x30)) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + ((0x2 * ((uint64_t)x30 * x22)) + ((0x2 * ((uint64_t)x32 * x20)) + (((uint64_t)x34 * x18) + (((uint64_t)x36 * x16) + ((0x2 * ((uint64_t)x38 * x14)) + ((0x2 * ((uint64_t)x40 * x12)) + (((uint64_t)x42 * x10) + ((uint64_t)x41 * x8)))))))))))))))))))));
- { uint64_t x63 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xbb * (((uint64_t)x6 * x41) + (((uint64_t)x8 * x42) + (((uint64_t)x10 * x40) + ((0x2 * ((uint64_t)x12 * x38)) + (((uint64_t)x14 * x36) + (((uint64_t)x16 * x34) + (((uint64_t)x18 * x32) + ((0x2 * ((uint64_t)x20 * x30)) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + ((0x2 * ((uint64_t)x30 * x20)) + (((uint64_t)x32 * x18) + (((uint64_t)x34 * x16) + (((uint64_t)x36 * x14) + ((0x2 * ((uint64_t)x38 * x12)) + (((uint64_t)x40 * x10) + (((uint64_t)x42 * x8) + ((uint64_t)x41 * x6))))))))))))))))))))));
- { uint64_t x64 = (((uint64_t)x2 * x2) + (0xbb * ((0x2 * ((uint64_t)x4 * x41)) + ((0x2 * ((uint64_t)x6 * x42)) + ((0x2 * ((uint64_t)x8 * x40)) + ((0x2 * ((uint64_t)x10 * x38)) + ((0x2 * ((uint64_t)x12 * x36)) + ((0x2 * ((uint64_t)x14 * x34)) + ((0x2 * ((uint64_t)x16 * x32)) + ((0x2 * ((uint64_t)x18 * x30)) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + ((0x2 * ((uint64_t)x30 * x18)) + ((0x2 * ((uint64_t)x32 * x16)) + ((0x2 * ((uint64_t)x34 * x14)) + ((0x2 * ((uint64_t)x36 * x12)) + ((0x2 * ((uint64_t)x38 * x10)) + ((0x2 * ((uint64_t)x40 * x8)) + ((0x2 * ((uint64_t)x42 * x6)) + (0x2 * ((uint64_t)x41 * x4))))))))))))))))))))))));
- { uint64_t x65 = (x64 >> 0x18);
- { uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- { uint64_t x67 = (x65 + x63);
- { uint64_t x68 = (x67 >> 0x17);
- { uint32_t x69 = ((uint32_t)x67 & 0x7fffff);
- { uint64_t x70 = (x68 + x62);
- { uint64_t x71 = (x70 >> 0x17);
- { uint32_t x72 = ((uint32_t)x70 & 0x7fffff);
- { uint64_t x73 = (x71 + x61);
- { uint64_t x74 = (x73 >> 0x17);
- { uint32_t x75 = ((uint32_t)x73 & 0x7fffff);
- { uint64_t x76 = (x74 + x60);
- { uint64_t x77 = (x76 >> 0x18);
- { uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- { uint64_t x79 = (x77 + x59);
- { uint64_t x80 = (x79 >> 0x17);
- { uint32_t x81 = ((uint32_t)x79 & 0x7fffff);
- { uint64_t x82 = (x80 + x58);
- { uint64_t x83 = (x82 >> 0x17);
- { uint32_t x84 = ((uint32_t)x82 & 0x7fffff);
- { uint64_t x85 = (x83 + x57);
- { uint64_t x86 = (x85 >> 0x17);
- { uint32_t x87 = ((uint32_t)x85 & 0x7fffff);
- { uint64_t x88 = (x86 + x56);
- { uint64_t x89 = (x88 >> 0x18);
- { uint32_t x90 = ((uint32_t)x88 & 0xffffff);
- { uint64_t x91 = (x89 + x55);
- { uint64_t x92 = (x91 >> 0x17);
- { uint32_t x93 = ((uint32_t)x91 & 0x7fffff);
- { uint64_t x94 = (x92 + x54);
- { uint64_t x95 = (x94 >> 0x17);
- { uint32_t x96 = ((uint32_t)x94 & 0x7fffff);
- { uint64_t x97 = (x95 + x53);
- { uint64_t x98 = (x97 >> 0x17);
- { uint32_t x99 = ((uint32_t)x97 & 0x7fffff);
- { uint64_t x100 = (x98 + x52);
- { uint64_t x101 = (x100 >> 0x17);
- { uint32_t x102 = ((uint32_t)x100 & 0x7fffff);
- { uint64_t x103 = (x101 + x51);
- { uint64_t x104 = (x103 >> 0x18);
- { uint32_t x105 = ((uint32_t)x103 & 0xffffff);
- { uint64_t x106 = (x104 + x50);
- { uint64_t x107 = (x106 >> 0x17);
- { uint32_t x108 = ((uint32_t)x106 & 0x7fffff);
- { uint64_t x109 = (x107 + x49);
- { uint64_t x110 = (x109 >> 0x17);
- { uint32_t x111 = ((uint32_t)x109 & 0x7fffff);
- { uint64_t x112 = (x110 + x48);
- { uint64_t x113 = (x112 >> 0x17);
- { uint32_t x114 = ((uint32_t)x112 & 0x7fffff);
- { uint64_t x115 = (x113 + x47);
- { uint64_t x116 = (x115 >> 0x18);
- { uint32_t x117 = ((uint32_t)x115 & 0xffffff);
- { uint64_t x118 = (x116 + x46);
- { uint64_t x119 = (x118 >> 0x17);
- { uint32_t x120 = ((uint32_t)x118 & 0x7fffff);
- { uint64_t x121 = (x119 + x45);
- { uint64_t x122 = (x121 >> 0x17);
- { uint32_t x123 = ((uint32_t)x121 & 0x7fffff);
- { uint64_t x124 = (x122 + x44);
- { uint64_t x125 = (x124 >> 0x17);
- { uint32_t x126 = ((uint32_t)x124 & 0x7fffff);
- { uint64_t x127 = (x125 + x43);
- { uint64_t x128 = (x127 >> 0x17);
- { uint32_t x129 = ((uint32_t)x127 & 0x7fffff);
- { uint64_t x130 = (x66 + (0xbb * x128));
- { uint32_t x131 = (uint32_t) (x130 >> 0x18);
- { uint32_t x132 = ((uint32_t)x130 & 0xffffff);
- { uint32_t x133 = (x131 + x69);
- { uint32_t x134 = (x133 >> 0x17);
- { uint32_t x135 = (x133 & 0x7fffff);
- out[0] = x132;
- out[1] = x135;
- out[2] = (x134 + x72);
- out[3] = x75;
- out[4] = x78;
- out[5] = x81;
- out[6] = x84;
- out[7] = x87;
- out[8] = x90;
- out[9] = x93;
- out[10] = x96;
- out[11] = x99;
- out[12] = x102;
- out[13] = x105;
- out[14] = x108;
- out[15] = x111;
- out[16] = x114;
- out[17] = x117;
- out[18] = x120;
- out[19] = x123;
- out[20] = x126;
- out[21] = x129;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e511m187_22limbs/fesquare.v b/src/Specific/solinas32_2e511m187_22limbs/fesquare.v
deleted file mode 100644
index 9aecd2cbb..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e511m187_22limbs.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_2e511m187_22limbs/fesquareDisplay.log b/src/Specific/solinas32_2e511m187_22limbs/fesquareDisplay.log
deleted file mode 100644
index 6317d70a1..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,100 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x41, x42, x40, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x43 = (((uint64_t)x2 * x41) + ((0x2 * ((uint64_t)x4 * x42)) + ((0x2 * ((uint64_t)x6 * x40)) + ((0x2 * ((uint64_t)x8 * x38)) + (((uint64_t)x10 * x36) + ((0x2 * ((uint64_t)x12 * x34)) + ((0x2 * ((uint64_t)x14 * x32)) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + ((0x2 * ((uint64_t)x20 * x26)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + ((0x2 * ((uint64_t)x26 * x20)) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + ((0x2 * ((uint64_t)x32 * x14)) + ((0x2 * ((uint64_t)x34 * x12)) + (((uint64_t)x36 * x10) + ((0x2 * ((uint64_t)x38 * x8)) + ((0x2 * ((uint64_t)x40 * x6)) + ((0x2 * ((uint64_t)x42 * x4)) + ((uint64_t)x41 * x2))))))))))))))))))))));
- uint64_t x44 = ((((uint64_t)x2 * x42) + ((0x2 * ((uint64_t)x4 * x40)) + ((0x2 * ((uint64_t)x6 * x38)) + (((uint64_t)x8 * x36) + (((uint64_t)x10 * x34) + ((0x2 * ((uint64_t)x12 * x32)) + ((0x2 * ((uint64_t)x14 * x30)) + (((uint64_t)x16 * x28) + (((uint64_t)x18 * x26) + ((0x2 * ((uint64_t)x20 * x24)) + ((0x2 * ((uint64_t)x22 * x22)) + ((0x2 * ((uint64_t)x24 * x20)) + (((uint64_t)x26 * x18) + (((uint64_t)x28 * x16) + ((0x2 * ((uint64_t)x30 * x14)) + ((0x2 * ((uint64_t)x32 * x12)) + (((uint64_t)x34 * x10) + (((uint64_t)x36 * x8) + ((0x2 * ((uint64_t)x38 * x6)) + ((0x2 * ((uint64_t)x40 * x4)) + ((uint64_t)x42 * x2))))))))))))))))))))) + (0xbb * ((uint64_t)x41 * x41)));
- uint64_t x45 = ((((uint64_t)x2 * x40) + ((0x2 * ((uint64_t)x4 * x38)) + (((uint64_t)x6 * x36) + (((uint64_t)x8 * x34) + (((uint64_t)x10 * x32) + ((0x2 * ((uint64_t)x12 * x30)) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + ((0x2 * ((uint64_t)x30 * x12)) + (((uint64_t)x32 * x10) + (((uint64_t)x34 * x8) + (((uint64_t)x36 * x6) + ((0x2 * ((uint64_t)x38 * x4)) + ((uint64_t)x40 * x2)))))))))))))))))))) + (0xbb * (((uint64_t)x42 * x41) + ((uint64_t)x41 * x42))));
- uint64_t x46 = ((((uint64_t)x2 * x38) + (((uint64_t)x4 * x36) + (((uint64_t)x6 * x34) + (((uint64_t)x8 * x32) + (((uint64_t)x10 * x30) + (((uint64_t)x12 * x28) + (((uint64_t)x14 * x26) + (((uint64_t)x16 * x24) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + (((uint64_t)x24 * x16) + (((uint64_t)x26 * x14) + (((uint64_t)x28 * x12) + (((uint64_t)x30 * x10) + (((uint64_t)x32 * x8) + (((uint64_t)x34 * x6) + (((uint64_t)x36 * x4) + ((uint64_t)x38 * x2))))))))))))))))))) + (0xbb * (((uint64_t)x40 * x41) + (((uint64_t)x42 * x42) + ((uint64_t)x41 * x40)))));
- uint64_t x47 = ((((uint64_t)x2 * x36) + ((0x2 * ((uint64_t)x4 * x34)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + (((uint64_t)x10 * x28) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + (((uint64_t)x28 * x10) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x36 * x2)))))))))))))))))) + (0xbb * ((0x2 * ((uint64_t)x38 * x41)) + ((0x2 * ((uint64_t)x40 * x42)) + ((0x2 * ((uint64_t)x42 * x40)) + (0x2 * ((uint64_t)x41 * x38)))))));
- uint64_t x48 = ((((uint64_t)x2 * x34) + ((0x2 * ((uint64_t)x4 * x32)) + ((0x2 * ((uint64_t)x6 * x30)) + (((uint64_t)x8 * x28) + (((uint64_t)x10 * x26) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + (((uint64_t)x26 * x10) + (((uint64_t)x28 * x8) + ((0x2 * ((uint64_t)x30 * x6)) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x34 * x2))))))))))))))))) + (0xbb * (((uint64_t)x36 * x41) + ((0x2 * ((uint64_t)x38 * x42)) + ((0x2 * ((uint64_t)x40 * x40)) + ((0x2 * ((uint64_t)x42 * x38)) + ((uint64_t)x41 * x36)))))));
- uint64_t x49 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0xbb * (((uint64_t)x34 * x41) + (((uint64_t)x36 * x42) + ((0x2 * ((uint64_t)x38 * x40)) + ((0x2 * ((uint64_t)x40 * x38)) + (((uint64_t)x42 * x36) + ((uint64_t)x41 * x34))))))));
- uint64_t x50 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + ((0x2 * ((uint64_t)x12 * x20)) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + ((0x2 * ((uint64_t)x20 * x12)) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0xbb * (((uint64_t)x32 * x41) + (((uint64_t)x34 * x42) + (((uint64_t)x36 * x40) + ((0x2 * ((uint64_t)x38 * x38)) + (((uint64_t)x40 * x36) + (((uint64_t)x42 * x34) + ((uint64_t)x41 * x32)))))))));
- uint64_t x51 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0xbb * ((0x2 * ((uint64_t)x30 * x41)) + ((0x2 * ((uint64_t)x32 * x42)) + ((0x2 * ((uint64_t)x34 * x40)) + ((0x2 * ((uint64_t)x36 * x38)) + ((0x2 * ((uint64_t)x38 * x36)) + ((0x2 * ((uint64_t)x40 * x34)) + ((0x2 * ((uint64_t)x42 * x32)) + (0x2 * ((uint64_t)x41 * x30)))))))))));
- uint64_t x52 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0xbb * (((uint64_t)x28 * x41) + ((0x2 * ((uint64_t)x30 * x42)) + ((0x2 * ((uint64_t)x32 * x40)) + ((0x2 * ((uint64_t)x34 * x38)) + (((uint64_t)x36 * x36) + ((0x2 * ((uint64_t)x38 * x34)) + ((0x2 * ((uint64_t)x40 * x32)) + ((0x2 * ((uint64_t)x42 * x30)) + ((uint64_t)x41 * x28)))))))))));
- uint64_t x53 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0xbb * (((uint64_t)x26 * x41) + (((uint64_t)x28 * x42) + ((0x2 * ((uint64_t)x30 * x40)) + ((0x2 * ((uint64_t)x32 * x38)) + (((uint64_t)x34 * x36) + (((uint64_t)x36 * x34) + ((0x2 * ((uint64_t)x38 * x32)) + ((0x2 * ((uint64_t)x40 * x30)) + (((uint64_t)x42 * x28) + ((uint64_t)x41 * x26))))))))))));
- uint64_t x54 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0xbb * (((uint64_t)x24 * x41) + (((uint64_t)x26 * x42) + (((uint64_t)x28 * x40) + ((0x2 * ((uint64_t)x30 * x38)) + (((uint64_t)x32 * x36) + (((uint64_t)x34 * x34) + (((uint64_t)x36 * x32) + ((0x2 * ((uint64_t)x38 * x30)) + (((uint64_t)x40 * x28) + (((uint64_t)x42 * x26) + ((uint64_t)x41 * x24)))))))))))));
- uint64_t x55 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0xbb * (((uint64_t)x22 * x41) + (((uint64_t)x24 * x42) + (((uint64_t)x26 * x40) + (((uint64_t)x28 * x38) + (((uint64_t)x30 * x36) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + (((uint64_t)x36 * x30) + (((uint64_t)x38 * x28) + (((uint64_t)x40 * x26) + (((uint64_t)x42 * x24) + ((uint64_t)x41 * x22))))))))))))));
- uint64_t x56 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0xbb * ((0x2 * ((uint64_t)x20 * x41)) + ((0x2 * ((uint64_t)x22 * x42)) + ((0x2 * ((uint64_t)x24 * x40)) + ((0x2 * ((uint64_t)x26 * x38)) + (((uint64_t)x28 * x36) + ((0x2 * ((uint64_t)x30 * x34)) + ((0x2 * ((uint64_t)x32 * x32)) + ((0x2 * ((uint64_t)x34 * x30)) + (((uint64_t)x36 * x28) + ((0x2 * ((uint64_t)x38 * x26)) + ((0x2 * ((uint64_t)x40 * x24)) + ((0x2 * ((uint64_t)x42 * x22)) + (0x2 * ((uint64_t)x41 * x20))))))))))))))));
- uint64_t x57 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0xbb * (((uint64_t)x18 * x41) + ((0x2 * ((uint64_t)x20 * x42)) + ((0x2 * ((uint64_t)x22 * x40)) + ((0x2 * ((uint64_t)x24 * x38)) + (((uint64_t)x26 * x36) + (((uint64_t)x28 * x34) + ((0x2 * ((uint64_t)x30 * x32)) + ((0x2 * ((uint64_t)x32 * x30)) + (((uint64_t)x34 * x28) + (((uint64_t)x36 * x26) + ((0x2 * ((uint64_t)x38 * x24)) + ((0x2 * ((uint64_t)x40 * x22)) + ((0x2 * ((uint64_t)x42 * x20)) + ((uint64_t)x41 * x18))))))))))))))));
- uint64_t x58 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0xbb * (((uint64_t)x16 * x41) + (((uint64_t)x18 * x42) + ((0x2 * ((uint64_t)x20 * x40)) + ((0x2 * ((uint64_t)x22 * x38)) + (((uint64_t)x24 * x36) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + (((uint64_t)x36 * x24) + ((0x2 * ((uint64_t)x38 * x22)) + ((0x2 * ((uint64_t)x40 * x20)) + (((uint64_t)x42 * x18) + ((uint64_t)x41 * x16)))))))))))))))));
- uint64_t x59 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0xbb * (((uint64_t)x14 * x41) + (((uint64_t)x16 * x42) + (((uint64_t)x18 * x40) + ((0x2 * ((uint64_t)x20 * x38)) + (((uint64_t)x22 * x36) + (((uint64_t)x24 * x34) + (((uint64_t)x26 * x32) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (((uint64_t)x32 * x26) + (((uint64_t)x34 * x24) + (((uint64_t)x36 * x22) + ((0x2 * ((uint64_t)x38 * x20)) + (((uint64_t)x40 * x18) + (((uint64_t)x42 * x16) + ((uint64_t)x41 * x14))))))))))))))))));
- uint64_t x60 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0xbb * ((0x2 * ((uint64_t)x12 * x41)) + ((0x2 * ((uint64_t)x14 * x42)) + ((0x2 * ((uint64_t)x16 * x40)) + ((0x2 * ((uint64_t)x18 * x38)) + ((0x2 * ((uint64_t)x20 * x36)) + ((0x2 * ((uint64_t)x22 * x34)) + ((0x2 * ((uint64_t)x24 * x32)) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + ((0x2 * ((uint64_t)x32 * x24)) + ((0x2 * ((uint64_t)x34 * x22)) + ((0x2 * ((uint64_t)x36 * x20)) + ((0x2 * ((uint64_t)x38 * x18)) + ((0x2 * ((uint64_t)x40 * x16)) + ((0x2 * ((uint64_t)x42 * x14)) + (0x2 * ((uint64_t)x41 * x12))))))))))))))))))));
- uint64_t x61 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0xbb * (((uint64_t)x10 * x41) + ((0x2 * ((uint64_t)x12 * x42)) + ((0x2 * ((uint64_t)x14 * x40)) + ((0x2 * ((uint64_t)x16 * x38)) + (((uint64_t)x18 * x36) + ((0x2 * ((uint64_t)x20 * x34)) + ((0x2 * ((uint64_t)x22 * x32)) + ((0x2 * ((uint64_t)x24 * x30)) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + ((0x2 * ((uint64_t)x30 * x24)) + ((0x2 * ((uint64_t)x32 * x22)) + ((0x2 * ((uint64_t)x34 * x20)) + (((uint64_t)x36 * x18) + ((0x2 * ((uint64_t)x38 * x16)) + ((0x2 * ((uint64_t)x40 * x14)) + ((0x2 * ((uint64_t)x42 * x12)) + ((uint64_t)x41 * x10))))))))))))))))))));
- uint64_t x62 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0xbb * (((uint64_t)x8 * x41) + (((uint64_t)x10 * x42) + ((0x2 * ((uint64_t)x12 * x40)) + ((0x2 * ((uint64_t)x14 * x38)) + (((uint64_t)x16 * x36) + (((uint64_t)x18 * x34) + ((0x2 * ((uint64_t)x20 * x32)) + ((0x2 * ((uint64_t)x22 * x30)) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + ((0x2 * ((uint64_t)x30 * x22)) + ((0x2 * ((uint64_t)x32 * x20)) + (((uint64_t)x34 * x18) + (((uint64_t)x36 * x16) + ((0x2 * ((uint64_t)x38 * x14)) + ((0x2 * ((uint64_t)x40 * x12)) + (((uint64_t)x42 * x10) + ((uint64_t)x41 * x8)))))))))))))))))))));
- uint64_t x63 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xbb * (((uint64_t)x6 * x41) + (((uint64_t)x8 * x42) + (((uint64_t)x10 * x40) + ((0x2 * ((uint64_t)x12 * x38)) + (((uint64_t)x14 * x36) + (((uint64_t)x16 * x34) + (((uint64_t)x18 * x32) + ((0x2 * ((uint64_t)x20 * x30)) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + ((0x2 * ((uint64_t)x30 * x20)) + (((uint64_t)x32 * x18) + (((uint64_t)x34 * x16) + (((uint64_t)x36 * x14) + ((0x2 * ((uint64_t)x38 * x12)) + (((uint64_t)x40 * x10) + (((uint64_t)x42 * x8) + ((uint64_t)x41 * x6))))))))))))))))))))));
- uint64_t x64 = (((uint64_t)x2 * x2) + (0xbb * ((0x2 * ((uint64_t)x4 * x41)) + ((0x2 * ((uint64_t)x6 * x42)) + ((0x2 * ((uint64_t)x8 * x40)) + ((0x2 * ((uint64_t)x10 * x38)) + ((0x2 * ((uint64_t)x12 * x36)) + ((0x2 * ((uint64_t)x14 * x34)) + ((0x2 * ((uint64_t)x16 * x32)) + ((0x2 * ((uint64_t)x18 * x30)) + ((0x2 * ((uint64_t)x20 * x28)) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + ((0x2 * ((uint64_t)x28 * x20)) + ((0x2 * ((uint64_t)x30 * x18)) + ((0x2 * ((uint64_t)x32 * x16)) + ((0x2 * ((uint64_t)x34 * x14)) + ((0x2 * ((uint64_t)x36 * x12)) + ((0x2 * ((uint64_t)x38 * x10)) + ((0x2 * ((uint64_t)x40 * x8)) + ((0x2 * ((uint64_t)x42 * x6)) + (0x2 * ((uint64_t)x41 * x4))))))))))))))))))))))));
- uint64_t x65 = (x64 >> 0x18);
- uint32_t x66 = ((uint32_t)x64 & 0xffffff);
- uint64_t x67 = (x65 + x63);
- uint64_t x68 = (x67 >> 0x17);
- uint32_t x69 = ((uint32_t)x67 & 0x7fffff);
- uint64_t x70 = (x68 + x62);
- uint64_t x71 = (x70 >> 0x17);
- uint32_t x72 = ((uint32_t)x70 & 0x7fffff);
- uint64_t x73 = (x71 + x61);
- uint64_t x74 = (x73 >> 0x17);
- uint32_t x75 = ((uint32_t)x73 & 0x7fffff);
- uint64_t x76 = (x74 + x60);
- uint64_t x77 = (x76 >> 0x18);
- uint32_t x78 = ((uint32_t)x76 & 0xffffff);
- uint64_t x79 = (x77 + x59);
- uint64_t x80 = (x79 >> 0x17);
- uint32_t x81 = ((uint32_t)x79 & 0x7fffff);
- uint64_t x82 = (x80 + x58);
- uint64_t x83 = (x82 >> 0x17);
- uint32_t x84 = ((uint32_t)x82 & 0x7fffff);
- uint64_t x85 = (x83 + x57);
- uint64_t x86 = (x85 >> 0x17);
- uint32_t x87 = ((uint32_t)x85 & 0x7fffff);
- uint64_t x88 = (x86 + x56);
- uint64_t x89 = (x88 >> 0x18);
- uint32_t x90 = ((uint32_t)x88 & 0xffffff);
- uint64_t x91 = (x89 + x55);
- uint64_t x92 = (x91 >> 0x17);
- uint32_t x93 = ((uint32_t)x91 & 0x7fffff);
- uint64_t x94 = (x92 + x54);
- uint64_t x95 = (x94 >> 0x17);
- uint32_t x96 = ((uint32_t)x94 & 0x7fffff);
- uint64_t x97 = (x95 + x53);
- uint64_t x98 = (x97 >> 0x17);
- uint32_t x99 = ((uint32_t)x97 & 0x7fffff);
- uint64_t x100 = (x98 + x52);
- uint64_t x101 = (x100 >> 0x17);
- uint32_t x102 = ((uint32_t)x100 & 0x7fffff);
- uint64_t x103 = (x101 + x51);
- uint64_t x104 = (x103 >> 0x18);
- uint32_t x105 = ((uint32_t)x103 & 0xffffff);
- uint64_t x106 = (x104 + x50);
- uint64_t x107 = (x106 >> 0x17);
- uint32_t x108 = ((uint32_t)x106 & 0x7fffff);
- uint64_t x109 = (x107 + x49);
- uint64_t x110 = (x109 >> 0x17);
- uint32_t x111 = ((uint32_t)x109 & 0x7fffff);
- uint64_t x112 = (x110 + x48);
- uint64_t x113 = (x112 >> 0x17);
- uint32_t x114 = ((uint32_t)x112 & 0x7fffff);
- uint64_t x115 = (x113 + x47);
- uint64_t x116 = (x115 >> 0x18);
- uint32_t x117 = ((uint32_t)x115 & 0xffffff);
- uint64_t x118 = (x116 + x46);
- uint64_t x119 = (x118 >> 0x17);
- uint32_t x120 = ((uint32_t)x118 & 0x7fffff);
- uint64_t x121 = (x119 + x45);
- uint64_t x122 = (x121 >> 0x17);
- uint32_t x123 = ((uint32_t)x121 & 0x7fffff);
- uint64_t x124 = (x122 + x44);
- uint64_t x125 = (x124 >> 0x17);
- uint32_t x126 = ((uint32_t)x124 & 0x7fffff);
- uint64_t x127 = (x125 + x43);
- uint64_t x128 = (x127 >> 0x17);
- uint32_t x129 = ((uint32_t)x127 & 0x7fffff);
- uint64_t x130 = (x66 + (0xbb * x128));
- uint32_t x131 = (uint32_t) (x130 >> 0x18);
- uint32_t x132 = ((uint32_t)x130 & 0xffffff);
- uint32_t x133 = (x131 + x69);
- uint32_t x134 = (x133 >> 0x17);
- uint32_t x135 = (x133 & 0x7fffff);
- return (Return x129, Return x126, Return x123, Return x120, Return x117, Return x114, Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, (x134 + x72), Return x135, Return x132))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e511m187_22limbs/fesquareDisplay.v b/src/Specific/solinas32_2e511m187_22limbs/fesquareDisplay.v
deleted file mode 100644
index e7fbb69c5..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e511m187_22limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e511m187_22limbs/fesub.c b/src/Specific/solinas32_2e511m187_22limbs/fesub.c
deleted file mode 100644
index 205cbc01b..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/fesub.c
+++ /dev/null
@@ -1,69 +0,0 @@
-static void fesub(uint32_t out[22], const uint32_t in1[22], const uint32_t in2[22]) {
- { const uint32_t x44 = in1[21];
- { const uint32_t x45 = in1[20];
- { const uint32_t x43 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x86 = in2[21];
- { const uint32_t x87 = in2[20];
- { const uint32_t x85 = in2[19];
- { const uint32_t x83 = in2[18];
- { const uint32_t x81 = in2[17];
- { const uint32_t x79 = in2[16];
- { const uint32_t x77 = in2[15];
- { const uint32_t x75 = in2[14];
- { const uint32_t x73 = in2[13];
- { const uint32_t x71 = in2[12];
- { const uint32_t x69 = in2[11];
- { const uint32_t x67 = in2[10];
- { const uint32_t x65 = in2[9];
- { const uint32_t x63 = in2[8];
- { const uint32_t x61 = in2[7];
- { const uint32_t x59 = in2[6];
- { const uint32_t x57 = in2[5];
- { const uint32_t x55 = in2[4];
- { const uint32_t x53 = in2[3];
- { const uint32_t x51 = in2[2];
- { const uint32_t x49 = in2[1];
- { const uint32_t x47 = in2[0];
- out[0] = ((0x1fffe8a + x5) - x47);
- out[1] = ((0xfffffe + x7) - x49);
- out[2] = ((0xfffffe + x9) - x51);
- out[3] = ((0xfffffe + x11) - x53);
- out[4] = ((0x1fffffe + x13) - x55);
- out[5] = ((0xfffffe + x15) - x57);
- out[6] = ((0xfffffe + x17) - x59);
- out[7] = ((0xfffffe + x19) - x61);
- out[8] = ((0x1fffffe + x21) - x63);
- out[9] = ((0xfffffe + x23) - x65);
- out[10] = ((0xfffffe + x25) - x67);
- out[11] = ((0xfffffe + x27) - x69);
- out[12] = ((0xfffffe + x29) - x71);
- out[13] = ((0x1fffffe + x31) - x73);
- out[14] = ((0xfffffe + x33) - x75);
- out[15] = ((0xfffffe + x35) - x77);
- out[16] = ((0xfffffe + x37) - x79);
- out[17] = ((0x1fffffe + x39) - x81);
- out[18] = ((0xfffffe + x41) - x83);
- out[19] = ((0xfffffe + x43) - x85);
- out[20] = ((0xfffffe + x45) - x87);
- out[21] = ((0xfffffe + x44) - x86);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e511m187_22limbs/fesub.v b/src/Specific/solinas32_2e511m187_22limbs/fesub.v
deleted file mode 100644
index a2594d765..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e511m187_22limbs.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_2e511m187_22limbs/fesubDisplay.log b/src/Specific/solinas32_2e511m187_22limbs/fesubDisplay.log
deleted file mode 100644
index 054f49d3d..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x44, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x86, x87, x85, x83, x81, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47))%core,
- (((0xfffffe + x44) - x86), ((0xfffffe + x45) - x87), ((0xfffffe + x43) - x85), ((0xfffffe + x41) - x83), ((0x1fffffe + x39) - x81), ((0xfffffe + x37) - x79), ((0xfffffe + x35) - x77), ((0xfffffe + x33) - x75), ((0x1fffffe + x31) - x73), ((0xfffffe + x29) - x71), ((0xfffffe + x27) - x69), ((0xfffffe + x25) - x67), ((0xfffffe + x23) - x65), ((0x1fffffe + x21) - x63), ((0xfffffe + x19) - x61), ((0xfffffe + x17) - x59), ((0xfffffe + x15) - x57), ((0x1fffffe + x13) - x55), ((0xfffffe + x11) - x53), ((0xfffffe + x9) - x51), ((0xfffffe + x7) - x49), ((0x1fffe8a + x5) - x47)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e511m187_22limbs/fesubDisplay.v b/src/Specific/solinas32_2e511m187_22limbs/fesubDisplay.v
deleted file mode 100644
index 6b4a495c7..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e511m187_22limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e511m187_22limbs/freeze.c b/src/Specific/solinas32_2e511m187_22limbs/freeze.c
deleted file mode 100644
index a256a11e3..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/freeze.c
+++ /dev/null
@@ -1,114 +0,0 @@
-static void freeze(uint32_t out[22], const uint32_t in1[22]) {
- { const uint32_t x41 = in1[21];
- { const uint32_t x42 = in1[20];
- { const uint32_t x40 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffff45);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x4, 0x7fffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x6, 0x7fffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x8, 0x7fffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x10, 0xffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x12, 0x7fffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x14, 0x7fffff);
- { uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x16, 0x7fffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x18, 0xffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x20, 0x7fffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x22, 0x7fffff);
- { uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x24, 0x7fffff);
- { uint32_t x80, uint8_t x81 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x26, 0x7fffff);
- { uint32_t x83, uint8_t x84 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x28, 0xffffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x30, 0x7fffff);
- { uint32_t x89, uint8_t x90 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x32, 0x7fffff);
- { uint32_t x92, uint8_t x93 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x34, 0x7fffff);
- { uint32_t x95, uint8_t x96 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x36, 0xffffff);
- { uint32_t x98, uint8_t x99 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x38, 0x7fffff);
- { uint32_t x101, uint8_t x102 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x40, 0x7fffff);
- { uint32_t x104, uint8_t x105 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x102, Return x42, 0x7fffff);
- { uint32_t x107, uint8_t x108 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x41, 0x7fffff);
- { uint32_t x109 = cmovznz32(x108, 0x0, 0xffffffff);
- { uint32_t x110 = (x109 & 0xffff45);
- { uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x44, Return x110);
- { uint32_t x114 = (x109 & 0x7fffff);
- { uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x47, Return x114);
- { uint32_t x118 = (x109 & 0x7fffff);
- { uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x50, Return x118);
- { uint32_t x122 = (x109 & 0x7fffff);
- { uint32_t x124, uint8_t x125 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x53, Return x122);
- { uint32_t x126 = (x109 & 0xffffff);
- { uint32_t x128, uint8_t x129 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x125, Return x56, Return x126);
- { uint32_t x130 = (x109 & 0x7fffff);
- { uint32_t x132, uint8_t x133 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x129, Return x59, Return x130);
- { uint32_t x134 = (x109 & 0x7fffff);
- { uint32_t x136, uint8_t x137 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x133, Return x62, Return x134);
- { uint32_t x138 = (x109 & 0x7fffff);
- { uint32_t x140, uint8_t x141 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x137, Return x65, Return x138);
- { uint32_t x142 = (x109 & 0xffffff);
- { uint32_t x144, uint8_t x145 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x141, Return x68, Return x142);
- { uint32_t x146 = (x109 & 0x7fffff);
- { uint32_t x148, uint8_t x149 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x145, Return x71, Return x146);
- { uint32_t x150 = (x109 & 0x7fffff);
- { uint32_t x152, uint8_t x153 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x149, Return x74, Return x150);
- { uint32_t x154 = (x109 & 0x7fffff);
- { uint32_t x156, uint8_t x157 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x153, Return x77, Return x154);
- { uint32_t x158 = (x109 & 0x7fffff);
- { uint32_t x160, uint8_t x161 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x157, Return x80, Return x158);
- { uint32_t x162 = (x109 & 0xffffff);
- { uint32_t x164, uint8_t x165 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x161, Return x83, Return x162);
- { uint32_t x166 = (x109 & 0x7fffff);
- { uint32_t x168, uint8_t x169 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x165, Return x86, Return x166);
- { uint32_t x170 = (x109 & 0x7fffff);
- { uint32_t x172, uint8_t x173 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x169, Return x89, Return x170);
- { uint32_t x174 = (x109 & 0x7fffff);
- { uint32_t x176, uint8_t x177 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x173, Return x92, Return x174);
- { uint32_t x178 = (x109 & 0xffffff);
- { uint32_t x180, uint8_t x181 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x177, Return x95, Return x178);
- { uint32_t x182 = (x109 & 0x7fffff);
- { uint32_t x184, uint8_t x185 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x181, Return x98, Return x182);
- { uint32_t x186 = (x109 & 0x7fffff);
- { uint32_t x188, uint8_t x189 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x185, Return x101, Return x186);
- { uint32_t x190 = (x109 & 0x7fffff);
- { uint32_t x192, uint8_t x193 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x189, Return x104, Return x190);
- { uint32_t x194 = (x109 & 0x7fffff);
- { uint32_t x196, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x193, Return x107, Return x194);
- out[0] = x112;
- out[1] = x116;
- out[2] = x120;
- out[3] = x124;
- out[4] = x128;
- out[5] = x132;
- out[6] = x136;
- out[7] = x140;
- out[8] = x144;
- out[9] = x148;
- out[10] = x152;
- out[11] = x156;
- out[12] = x160;
- out[13] = x164;
- out[14] = x168;
- out[15] = x172;
- out[16] = x176;
- out[17] = x180;
- out[18] = x184;
- out[19] = x188;
- out[20] = x192;
- out[21] = x196;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e511m187_22limbs/freeze.v b/src/Specific/solinas32_2e511m187_22limbs/freeze.v
deleted file mode 100644
index 8f7e348b3..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e511m187_22limbs.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_2e511m187_22limbs/freezeDisplay.log b/src/Specific/solinas32_2e511m187_22limbs/freezeDisplay.log
deleted file mode 100644
index c068076ae..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/freezeDisplay.log
+++ /dev/null
@@ -1,74 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x41, x42, x40, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xffff45);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x4, 0x7fffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x6, 0x7fffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x8, 0x7fffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x10, 0xffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x12, 0x7fffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x14, 0x7fffff);
- uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x16, 0x7fffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x18, 0xffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x20, 0x7fffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x22, 0x7fffff);
- uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x24, 0x7fffff);
- uint32_t x80, uint8_t x81 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x26, 0x7fffff);
- uint32_t x83, uint8_t x84 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x28, 0xffffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x30, 0x7fffff);
- uint32_t x89, uint8_t x90 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x32, 0x7fffff);
- uint32_t x92, uint8_t x93 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x34, 0x7fffff);
- uint32_t x95, uint8_t x96 = Op (Syntax.SubWithGetBorrow 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x36, 0xffffff);
- uint32_t x98, uint8_t x99 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x38, 0x7fffff);
- uint32_t x101, uint8_t x102 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x40, 0x7fffff);
- uint32_t x104, uint8_t x105 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x102, Return x42, 0x7fffff);
- uint32_t x107, uint8_t x108 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x41, 0x7fffff);
- uint32_t x109 = cmovznz32(x108, 0x0, 0xffffffff);
- uint32_t x110 = (x109 & 0xffff45);
- uint32_t x112, uint8_t x113 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x44, Return x110);
- uint32_t x114 = (x109 & 0x7fffff);
- uint32_t x116, uint8_t x117 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x113, Return x47, Return x114);
- uint32_t x118 = (x109 & 0x7fffff);
- uint32_t x120, uint8_t x121 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x50, Return x118);
- uint32_t x122 = (x109 & 0x7fffff);
- uint32_t x124, uint8_t x125 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x121, Return x53, Return x122);
- uint32_t x126 = (x109 & 0xffffff);
- uint32_t x128, uint8_t x129 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x125, Return x56, Return x126);
- uint32_t x130 = (x109 & 0x7fffff);
- uint32_t x132, uint8_t x133 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x129, Return x59, Return x130);
- uint32_t x134 = (x109 & 0x7fffff);
- uint32_t x136, uint8_t x137 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x133, Return x62, Return x134);
- uint32_t x138 = (x109 & 0x7fffff);
- uint32_t x140, uint8_t x141 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x137, Return x65, Return x138);
- uint32_t x142 = (x109 & 0xffffff);
- uint32_t x144, uint8_t x145 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x141, Return x68, Return x142);
- uint32_t x146 = (x109 & 0x7fffff);
- uint32_t x148, uint8_t x149 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x145, Return x71, Return x146);
- uint32_t x150 = (x109 & 0x7fffff);
- uint32_t x152, uint8_t x153 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x149, Return x74, Return x150);
- uint32_t x154 = (x109 & 0x7fffff);
- uint32_t x156, uint8_t x157 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x153, Return x77, Return x154);
- uint32_t x158 = (x109 & 0x7fffff);
- uint32_t x160, uint8_t x161 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x157, Return x80, Return x158);
- uint32_t x162 = (x109 & 0xffffff);
- uint32_t x164, uint8_t x165 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x161, Return x83, Return x162);
- uint32_t x166 = (x109 & 0x7fffff);
- uint32_t x168, uint8_t x169 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x165, Return x86, Return x166);
- uint32_t x170 = (x109 & 0x7fffff);
- uint32_t x172, uint8_t x173 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x169, Return x89, Return x170);
- uint32_t x174 = (x109 & 0x7fffff);
- uint32_t x176, uint8_t x177 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x173, Return x92, Return x174);
- uint32_t x178 = (x109 & 0xffffff);
- uint32_t x180, uint8_t x181 = Op (Syntax.AddWithGetCarry 24 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x177, Return x95, Return x178);
- uint32_t x182 = (x109 & 0x7fffff);
- uint32_t x184, uint8_t x185 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x181, Return x98, Return x182);
- uint32_t x186 = (x109 & 0x7fffff);
- uint32_t x188, uint8_t x189 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x185, Return x101, Return x186);
- uint32_t x190 = (x109 & 0x7fffff);
- uint32_t x192, uint8_t x193 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x189, Return x104, Return x190);
- uint32_t x194 = (x109 & 0x7fffff);
- uint32_t x196, uint8_t _ = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x193, Return x107, Return x194);
- (Return x196, Return x192, Return x188, Return x184, Return x180, Return x176, Return x172, Return x168, Return x164, Return x160, Return x156, Return x152, Return x148, Return x144, Return x140, Return x136, Return x132, Return x128, Return x124, Return x120, Return x116, Return x112))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e511m187_22limbs/freezeDisplay.v b/src/Specific/solinas32_2e511m187_22limbs/freezeDisplay.v
deleted file mode 100644
index 7b629f620..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e511m187_22limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e511m187_22limbs/py_interpreter.sh b/src/Specific/solinas32_2e511m187_22limbs/py_interpreter.sh
deleted file mode 100755
index 6424acd21..000000000
--- a/src/Specific/solinas32_2e511m187_22limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**511 - 187' -Dmodulus_bytes='23 + 5/22' -Da24='121665'
diff --git a/src/Specific/solinas32_2e511m187_23limbs/CurveParameters.v b/src/Specific/solinas32_2e511m187_23limbs/CurveParameters.v
deleted file mode 100644
index bae6e9ac3..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^511 - 187
-Base: 22 + 5/23
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 23%nat;
- base := 22 + 5/23;
- bitwidth := 32;
- s := 2^511;
- c := [(1, 187)];
- carry_chains := Some [seq 0 (pred 23); [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_2e511m187_23limbs/Synthesis.v b/src/Specific/solinas32_2e511m187_23limbs/Synthesis.v
deleted file mode 100644
index 019dd5088..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e511m187_23limbs.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_2e511m187_23limbs/compiler.sh b/src/Specific/solinas32_2e511m187_23limbs/compiler.sh
deleted file mode 100755
index a43a174f6..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,22,22,22,23,22,22,22,22,23,22,22,22,23,22,22,22,22,23,22,22,22,22}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='23' -Dq_mpz='(1_mpz<<511) - 187' "$@"
diff --git a/src/Specific/solinas32_2e511m187_23limbs/compilerxx.sh b/src/Specific/solinas32_2e511m187_23limbs/compilerxx.sh
deleted file mode 100755
index 529512588..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,22,22,22,23,22,22,22,22,23,22,22,22,23,22,22,22,22,23,22,22,22,22}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='23' -Dq_mpz='(1_mpz<<511) - 187' "$@"
diff --git a/src/Specific/solinas32_2e511m187_23limbs/feadd.c b/src/Specific/solinas32_2e511m187_23limbs/feadd.c
deleted file mode 100644
index 3ec1f7bb3..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/feadd.c
+++ /dev/null
@@ -1,72 +0,0 @@
-static void feadd(uint32_t out[23], const uint32_t in1[23], const uint32_t in2[23]) {
- { const uint32_t x46 = in1[22];
- { const uint32_t x47 = in1[21];
- { const uint32_t x45 = in1[20];
- { const uint32_t x43 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x90 = in2[22];
- { const uint32_t x91 = in2[21];
- { const uint32_t x89 = in2[20];
- { const uint32_t x87 = in2[19];
- { const uint32_t x85 = in2[18];
- { const uint32_t x83 = in2[17];
- { const uint32_t x81 = in2[16];
- { const uint32_t x79 = in2[15];
- { const uint32_t x77 = in2[14];
- { const uint32_t x75 = in2[13];
- { const uint32_t x73 = in2[12];
- { const uint32_t x71 = in2[11];
- { const uint32_t x69 = in2[10];
- { const uint32_t x67 = in2[9];
- { const uint32_t x65 = in2[8];
- { const uint32_t x63 = in2[7];
- { const uint32_t x61 = in2[6];
- { const uint32_t x59 = in2[5];
- { const uint32_t x57 = in2[4];
- { const uint32_t x55 = in2[3];
- { const uint32_t x53 = in2[2];
- { const uint32_t x51 = in2[1];
- { const uint32_t x49 = in2[0];
- out[0] = (x5 + x49);
- out[1] = (x7 + x51);
- out[2] = (x9 + x53);
- out[3] = (x11 + x55);
- out[4] = (x13 + x57);
- out[5] = (x15 + x59);
- out[6] = (x17 + x61);
- out[7] = (x19 + x63);
- out[8] = (x21 + x65);
- out[9] = (x23 + x67);
- out[10] = (x25 + x69);
- out[11] = (x27 + x71);
- out[12] = (x29 + x73);
- out[13] = (x31 + x75);
- out[14] = (x33 + x77);
- out[15] = (x35 + x79);
- out[16] = (x37 + x81);
- out[17] = (x39 + x83);
- out[18] = (x41 + x85);
- out[19] = (x43 + x87);
- out[20] = (x45 + x89);
- out[21] = (x47 + x91);
- out[22] = (x46 + x90);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e511m187_23limbs/feadd.v b/src/Specific/solinas32_2e511m187_23limbs/feadd.v
deleted file mode 100644
index abcde5034..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e511m187_23limbs.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_2e511m187_23limbs/feaddDisplay.log b/src/Specific/solinas32_2e511m187_23limbs/feaddDisplay.log
deleted file mode 100644
index c6d6c303e..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x90, x91, x89, x87, x85, x83, x81, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49))%core,
- ((x46 + x90), (x47 + x91), (x45 + x89), (x43 + x87), (x41 + x85), (x39 + x83), (x37 + x81), (x35 + x79), (x33 + x77), (x31 + x75), (x29 + x73), (x27 + x71), (x25 + x69), (x23 + x67), (x21 + x65), (x19 + x63), (x17 + x61), (x15 + x59), (x13 + x57), (x11 + x55), (x9 + x53), (x7 + x51), (x5 + x49)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e511m187_23limbs/feaddDisplay.v b/src/Specific/solinas32_2e511m187_23limbs/feaddDisplay.v
deleted file mode 100644
index 785bd0373..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e511m187_23limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e511m187_23limbs/fecarry.v b/src/Specific/solinas32_2e511m187_23limbs/fecarry.v
deleted file mode 100644
index 62783b27c..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e511m187_23limbs.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_2e511m187_23limbs/fecarryDisplay.v b/src/Specific/solinas32_2e511m187_23limbs/fecarryDisplay.v
deleted file mode 100644
index 85de84826..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e511m187_23limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e511m187_23limbs/femul.v b/src/Specific/solinas32_2e511m187_23limbs/femul.v
deleted file mode 100644
index 7ab057ece..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e511m187_23limbs.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_2e511m187_23limbs/femulDisplay.v b/src/Specific/solinas32_2e511m187_23limbs/femulDisplay.v
deleted file mode 100644
index 48b2db1cb..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e511m187_23limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e511m187_23limbs/fesquare.c b/src/Specific/solinas32_2e511m187_23limbs/fesquare.c
deleted file mode 100644
index 0b95fde93..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/fesquare.c
+++ /dev/null
@@ -1,146 +0,0 @@
-static void fesquare(uint32_t out[23], const uint32_t in1[23]) {
- { const uint32_t x43 = in1[22];
- { const uint32_t x44 = in1[21];
- { const uint32_t x42 = in1[20];
- { const uint32_t x40 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x45 = (((uint64_t)x2 * x43) + ((0x2 * ((uint64_t)x4 * x44)) + ((0x2 * ((uint64_t)x6 * x42)) + ((0x2 * ((uint64_t)x8 * x40)) + (((uint64_t)x10 * x38) + ((0x2 * ((uint64_t)x12 * x36)) + ((0x2 * ((uint64_t)x14 * x34)) + ((0x2 * ((uint64_t)x16 * x32)) + ((0x2 * ((uint64_t)x18 * x30)) + (((uint64_t)x20 * x28) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + (((uint64_t)x28 * x20) + ((0x2 * ((uint64_t)x30 * x18)) + ((0x2 * ((uint64_t)x32 * x16)) + ((0x2 * ((uint64_t)x34 * x14)) + ((0x2 * ((uint64_t)x36 * x12)) + (((uint64_t)x38 * x10) + ((0x2 * ((uint64_t)x40 * x8)) + ((0x2 * ((uint64_t)x42 * x6)) + ((0x2 * ((uint64_t)x44 * x4)) + ((uint64_t)x43 * x2)))))))))))))))))))))));
- { uint64_t x46 = ((((uint64_t)x2 * x44) + ((0x2 * ((uint64_t)x4 * x42)) + ((0x2 * ((uint64_t)x6 * x40)) + (((uint64_t)x8 * x38) + (((uint64_t)x10 * x36) + ((0x2 * ((uint64_t)x12 * x34)) + ((0x2 * ((uint64_t)x14 * x32)) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + ((0x2 * ((uint64_t)x32 * x14)) + ((0x2 * ((uint64_t)x34 * x12)) + (((uint64_t)x36 * x10) + (((uint64_t)x38 * x8) + ((0x2 * ((uint64_t)x40 * x6)) + ((0x2 * ((uint64_t)x42 * x4)) + ((uint64_t)x44 * x2)))))))))))))))))))))) + (0xbb * ((uint64_t)x43 * x43)));
- { uint64_t x47 = ((((uint64_t)x2 * x42) + ((0x2 * ((uint64_t)x4 * x40)) + (((uint64_t)x6 * x38) + (((uint64_t)x8 * x36) + (((uint64_t)x10 * x34) + ((0x2 * ((uint64_t)x12 * x32)) + ((0x2 * ((uint64_t)x14 * x30)) + (((uint64_t)x16 * x28) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + (((uint64_t)x28 * x16) + ((0x2 * ((uint64_t)x30 * x14)) + ((0x2 * ((uint64_t)x32 * x12)) + (((uint64_t)x34 * x10) + (((uint64_t)x36 * x8) + (((uint64_t)x38 * x6) + ((0x2 * ((uint64_t)x40 * x4)) + ((uint64_t)x42 * x2))))))))))))))))))))) + (0xbb * (((uint64_t)x44 * x43) + ((uint64_t)x43 * x44))));
- { uint64_t x48 = ((((uint64_t)x2 * x40) + (((uint64_t)x4 * x38) + (((uint64_t)x6 * x36) + (((uint64_t)x8 * x34) + (((uint64_t)x10 * x32) + ((0x2 * ((uint64_t)x12 * x30)) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + ((0x2 * ((uint64_t)x30 * x12)) + (((uint64_t)x32 * x10) + (((uint64_t)x34 * x8) + (((uint64_t)x36 * x6) + (((uint64_t)x38 * x4) + ((uint64_t)x40 * x2)))))))))))))))))))) + (0xbb * (((uint64_t)x42 * x43) + (((uint64_t)x44 * x44) + ((uint64_t)x43 * x42)))));
- { uint64_t x49 = ((((uint64_t)x2 * x38) + ((0x2 * ((uint64_t)x4 * x36)) + ((0x2 * ((uint64_t)x6 * x34)) + ((0x2 * ((uint64_t)x8 * x32)) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + ((0x2 * ((uint64_t)x32 * x8)) + ((0x2 * ((uint64_t)x34 * x6)) + ((0x2 * ((uint64_t)x36 * x4)) + ((uint64_t)x38 * x2))))))))))))))))))) + (0xbb * ((0x2 * ((uint64_t)x40 * x43)) + ((0x2 * ((uint64_t)x42 * x44)) + ((0x2 * ((uint64_t)x44 * x42)) + (0x2 * ((uint64_t)x43 * x40)))))));
- { uint64_t x50 = ((((uint64_t)x2 * x36) + ((0x2 * ((uint64_t)x4 * x34)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + (((uint64_t)x10 * x28) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + (((uint64_t)x28 * x10) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x36 * x2)))))))))))))))))) + (0xbb * (((uint64_t)x38 * x43) + ((0x2 * ((uint64_t)x40 * x44)) + ((0x2 * ((uint64_t)x42 * x42)) + ((0x2 * ((uint64_t)x44 * x40)) + ((uint64_t)x43 * x38)))))));
- { uint64_t x51 = ((((uint64_t)x2 * x34) + ((0x2 * ((uint64_t)x4 * x32)) + ((0x2 * ((uint64_t)x6 * x30)) + (((uint64_t)x8 * x28) + (((uint64_t)x10 * x26) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + (((uint64_t)x26 * x10) + (((uint64_t)x28 * x8) + ((0x2 * ((uint64_t)x30 * x6)) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x34 * x2))))))))))))))))) + (0xbb * (((uint64_t)x36 * x43) + (((uint64_t)x38 * x44) + ((0x2 * ((uint64_t)x40 * x42)) + ((0x2 * ((uint64_t)x42 * x40)) + (((uint64_t)x44 * x38) + ((uint64_t)x43 * x36))))))));
- { uint64_t x52 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0xbb * (((uint64_t)x34 * x43) + (((uint64_t)x36 * x44) + (((uint64_t)x38 * x42) + ((0x2 * ((uint64_t)x40 * x40)) + (((uint64_t)x42 * x38) + (((uint64_t)x44 * x36) + ((uint64_t)x43 * x34)))))))));
- { uint64_t x53 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0xbb * (((uint64_t)x32 * x43) + (((uint64_t)x34 * x44) + (((uint64_t)x36 * x42) + (((uint64_t)x38 * x40) + (((uint64_t)x40 * x38) + (((uint64_t)x42 * x36) + (((uint64_t)x44 * x34) + ((uint64_t)x43 * x32))))))))));
- { uint64_t x54 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + (((uint64_t)x10 * x20) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + (((uint64_t)x20 * x10) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0xbb * ((0x2 * ((uint64_t)x30 * x43)) + ((0x2 * ((uint64_t)x32 * x44)) + ((0x2 * ((uint64_t)x34 * x42)) + ((0x2 * ((uint64_t)x36 * x40)) + (((uint64_t)x38 * x38) + ((0x2 * ((uint64_t)x40 * x36)) + ((0x2 * ((uint64_t)x42 * x34)) + ((0x2 * ((uint64_t)x44 * x32)) + (0x2 * ((uint64_t)x43 * x30))))))))))));
- { uint64_t x55 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0xbb * (((uint64_t)x28 * x43) + ((0x2 * ((uint64_t)x30 * x44)) + ((0x2 * ((uint64_t)x32 * x42)) + ((0x2 * ((uint64_t)x34 * x40)) + (((uint64_t)x36 * x38) + (((uint64_t)x38 * x36) + ((0x2 * ((uint64_t)x40 * x34)) + ((0x2 * ((uint64_t)x42 * x32)) + ((0x2 * ((uint64_t)x44 * x30)) + ((uint64_t)x43 * x28))))))))))));
- { uint64_t x56 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0xbb * (((uint64_t)x26 * x43) + (((uint64_t)x28 * x44) + ((0x2 * ((uint64_t)x30 * x42)) + ((0x2 * ((uint64_t)x32 * x40)) + (((uint64_t)x34 * x38) + (((uint64_t)x36 * x36) + (((uint64_t)x38 * x34) + ((0x2 * ((uint64_t)x40 * x32)) + ((0x2 * ((uint64_t)x42 * x30)) + (((uint64_t)x44 * x28) + ((uint64_t)x43 * x26)))))))))))));
- { uint64_t x57 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0xbb * (((uint64_t)x24 * x43) + (((uint64_t)x26 * x44) + (((uint64_t)x28 * x42) + ((0x2 * ((uint64_t)x30 * x40)) + (((uint64_t)x32 * x38) + (((uint64_t)x34 * x36) + (((uint64_t)x36 * x34) + (((uint64_t)x38 * x32) + ((0x2 * ((uint64_t)x40 * x30)) + (((uint64_t)x42 * x28) + (((uint64_t)x44 * x26) + ((uint64_t)x43 * x24))))))))))))));
- { uint64_t x58 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0xbb * ((0x2 * ((uint64_t)x22 * x43)) + ((0x2 * ((uint64_t)x24 * x44)) + ((0x2 * ((uint64_t)x26 * x42)) + ((0x2 * ((uint64_t)x28 * x40)) + ((0x2 * ((uint64_t)x30 * x38)) + ((0x2 * ((uint64_t)x32 * x36)) + ((0x2 * ((uint64_t)x34 * x34)) + ((0x2 * ((uint64_t)x36 * x32)) + ((0x2 * ((uint64_t)x38 * x30)) + ((0x2 * ((uint64_t)x40 * x28)) + ((0x2 * ((uint64_t)x42 * x26)) + ((0x2 * ((uint64_t)x44 * x24)) + (0x2 * ((uint64_t)x43 * x22))))))))))))))));
- { uint64_t x59 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0xbb * (((uint64_t)x20 * x43) + ((0x2 * ((uint64_t)x22 * x44)) + ((0x2 * ((uint64_t)x24 * x42)) + ((0x2 * ((uint64_t)x26 * x40)) + (((uint64_t)x28 * x38) + ((0x2 * ((uint64_t)x30 * x36)) + ((0x2 * ((uint64_t)x32 * x34)) + ((0x2 * ((uint64_t)x34 * x32)) + ((0x2 * ((uint64_t)x36 * x30)) + (((uint64_t)x38 * x28) + ((0x2 * ((uint64_t)x40 * x26)) + ((0x2 * ((uint64_t)x42 * x24)) + ((0x2 * ((uint64_t)x44 * x22)) + ((uint64_t)x43 * x20))))))))))))))));
- { uint64_t x60 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0xbb * (((uint64_t)x18 * x43) + (((uint64_t)x20 * x44) + ((0x2 * ((uint64_t)x22 * x42)) + ((0x2 * ((uint64_t)x24 * x40)) + (((uint64_t)x26 * x38) + (((uint64_t)x28 * x36) + ((0x2 * ((uint64_t)x30 * x34)) + ((0x2 * ((uint64_t)x32 * x32)) + ((0x2 * ((uint64_t)x34 * x30)) + (((uint64_t)x36 * x28) + (((uint64_t)x38 * x26) + ((0x2 * ((uint64_t)x40 * x24)) + ((0x2 * ((uint64_t)x42 * x22)) + (((uint64_t)x44 * x20) + ((uint64_t)x43 * x18)))))))))))))))));
- { uint64_t x61 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0xbb * (((uint64_t)x16 * x43) + (((uint64_t)x18 * x44) + (((uint64_t)x20 * x42) + ((0x2 * ((uint64_t)x22 * x40)) + (((uint64_t)x24 * x38) + (((uint64_t)x26 * x36) + (((uint64_t)x28 * x34) + ((0x2 * ((uint64_t)x30 * x32)) + ((0x2 * ((uint64_t)x32 * x30)) + (((uint64_t)x34 * x28) + (((uint64_t)x36 * x26) + (((uint64_t)x38 * x24) + ((0x2 * ((uint64_t)x40 * x22)) + (((uint64_t)x42 * x20) + (((uint64_t)x44 * x18) + ((uint64_t)x43 * x16))))))))))))))))));
- { uint64_t x62 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0xbb * (((uint64_t)x14 * x43) + (((uint64_t)x16 * x44) + (((uint64_t)x18 * x42) + (((uint64_t)x20 * x40) + (((uint64_t)x22 * x38) + (((uint64_t)x24 * x36) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + (((uint64_t)x36 * x24) + (((uint64_t)x38 * x22) + (((uint64_t)x40 * x20) + (((uint64_t)x42 * x18) + (((uint64_t)x44 * x16) + ((uint64_t)x43 * x14)))))))))))))))))));
- { uint64_t x63 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0xbb * ((0x2 * ((uint64_t)x12 * x43)) + ((0x2 * ((uint64_t)x14 * x44)) + ((0x2 * ((uint64_t)x16 * x42)) + ((0x2 * ((uint64_t)x18 * x40)) + (((uint64_t)x20 * x38) + ((0x2 * ((uint64_t)x22 * x36)) + ((0x2 * ((uint64_t)x24 * x34)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + ((0x2 * ((uint64_t)x34 * x24)) + ((0x2 * ((uint64_t)x36 * x22)) + (((uint64_t)x38 * x20) + ((0x2 * ((uint64_t)x40 * x18)) + ((0x2 * ((uint64_t)x42 * x16)) + ((0x2 * ((uint64_t)x44 * x14)) + (0x2 * ((uint64_t)x43 * x12)))))))))))))))))))));
- { uint64_t x64 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0xbb * (((uint64_t)x10 * x43) + ((0x2 * ((uint64_t)x12 * x44)) + ((0x2 * ((uint64_t)x14 * x42)) + ((0x2 * ((uint64_t)x16 * x40)) + (((uint64_t)x18 * x38) + (((uint64_t)x20 * x36) + ((0x2 * ((uint64_t)x22 * x34)) + ((0x2 * ((uint64_t)x24 * x32)) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + ((0x2 * ((uint64_t)x32 * x24)) + ((0x2 * ((uint64_t)x34 * x22)) + (((uint64_t)x36 * x20) + (((uint64_t)x38 * x18) + ((0x2 * ((uint64_t)x40 * x16)) + ((0x2 * ((uint64_t)x42 * x14)) + ((0x2 * ((uint64_t)x44 * x12)) + ((uint64_t)x43 * x10)))))))))))))))))))));
- { uint64_t x65 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0xbb * (((uint64_t)x8 * x43) + (((uint64_t)x10 * x44) + ((0x2 * ((uint64_t)x12 * x42)) + ((0x2 * ((uint64_t)x14 * x40)) + (((uint64_t)x16 * x38) + (((uint64_t)x18 * x36) + (((uint64_t)x20 * x34) + ((0x2 * ((uint64_t)x22 * x32)) + ((0x2 * ((uint64_t)x24 * x30)) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + ((0x2 * ((uint64_t)x30 * x24)) + ((0x2 * ((uint64_t)x32 * x22)) + (((uint64_t)x34 * x20) + (((uint64_t)x36 * x18) + (((uint64_t)x38 * x16) + ((0x2 * ((uint64_t)x40 * x14)) + ((0x2 * ((uint64_t)x42 * x12)) + (((uint64_t)x44 * x10) + ((uint64_t)x43 * x8))))))))))))))))))))));
- { uint64_t x66 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xbb * (((uint64_t)x6 * x43) + (((uint64_t)x8 * x44) + (((uint64_t)x10 * x42) + ((0x2 * ((uint64_t)x12 * x40)) + (((uint64_t)x14 * x38) + (((uint64_t)x16 * x36) + (((uint64_t)x18 * x34) + (((uint64_t)x20 * x32) + ((0x2 * ((uint64_t)x22 * x30)) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + ((0x2 * ((uint64_t)x30 * x22)) + (((uint64_t)x32 * x20) + (((uint64_t)x34 * x18) + (((uint64_t)x36 * x16) + (((uint64_t)x38 * x14) + ((0x2 * ((uint64_t)x40 * x12)) + (((uint64_t)x42 * x10) + (((uint64_t)x44 * x8) + ((uint64_t)x43 * x6)))))))))))))))))))))));
- { uint64_t x67 = (((uint64_t)x2 * x2) + (0xbb * ((0x2 * ((uint64_t)x4 * x43)) + ((0x2 * ((uint64_t)x6 * x44)) + ((0x2 * ((uint64_t)x8 * x42)) + ((0x2 * ((uint64_t)x10 * x40)) + ((0x2 * ((uint64_t)x12 * x38)) + ((0x2 * ((uint64_t)x14 * x36)) + ((0x2 * ((uint64_t)x16 * x34)) + ((0x2 * ((uint64_t)x18 * x32)) + ((0x2 * ((uint64_t)x20 * x30)) + ((0x2 * ((uint64_t)x22 * x28)) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + ((0x2 * ((uint64_t)x28 * x22)) + ((0x2 * ((uint64_t)x30 * x20)) + ((0x2 * ((uint64_t)x32 * x18)) + ((0x2 * ((uint64_t)x34 * x16)) + ((0x2 * ((uint64_t)x36 * x14)) + ((0x2 * ((uint64_t)x38 * x12)) + ((0x2 * ((uint64_t)x40 * x10)) + ((0x2 * ((uint64_t)x42 * x8)) + ((0x2 * ((uint64_t)x44 * x6)) + (0x2 * ((uint64_t)x43 * x4)))))))))))))))))))))))));
- { uint64_t x68 = (x67 >> 0x17);
- { uint32_t x69 = ((uint32_t)x67 & 0x7fffff);
- { uint64_t x70 = (x68 + x66);
- { uint64_t x71 = (x70 >> 0x16);
- { uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- { uint64_t x73 = (x71 + x65);
- { uint64_t x74 = (x73 >> 0x16);
- { uint32_t x75 = ((uint32_t)x73 & 0x3fffff);
- { uint64_t x76 = (x74 + x64);
- { uint64_t x77 = (x76 >> 0x16);
- { uint32_t x78 = ((uint32_t)x76 & 0x3fffff);
- { uint64_t x79 = (x77 + x63);
- { uint64_t x80 = (x79 >> 0x17);
- { uint32_t x81 = ((uint32_t)x79 & 0x7fffff);
- { uint64_t x82 = (x80 + x62);
- { uint64_t x83 = (x82 >> 0x16);
- { uint32_t x84 = ((uint32_t)x82 & 0x3fffff);
- { uint64_t x85 = (x83 + x61);
- { uint64_t x86 = (x85 >> 0x16);
- { uint32_t x87 = ((uint32_t)x85 & 0x3fffff);
- { uint64_t x88 = (x86 + x60);
- { uint64_t x89 = (x88 >> 0x16);
- { uint32_t x90 = ((uint32_t)x88 & 0x3fffff);
- { uint64_t x91 = (x89 + x59);
- { uint64_t x92 = (x91 >> 0x16);
- { uint32_t x93 = ((uint32_t)x91 & 0x3fffff);
- { uint64_t x94 = (x92 + x58);
- { uint64_t x95 = (x94 >> 0x17);
- { uint32_t x96 = ((uint32_t)x94 & 0x7fffff);
- { uint64_t x97 = (x95 + x57);
- { uint64_t x98 = (x97 >> 0x16);
- { uint32_t x99 = ((uint32_t)x97 & 0x3fffff);
- { uint64_t x100 = (x98 + x56);
- { uint64_t x101 = (x100 >> 0x16);
- { uint32_t x102 = ((uint32_t)x100 & 0x3fffff);
- { uint64_t x103 = (x101 + x55);
- { uint64_t x104 = (x103 >> 0x16);
- { uint32_t x105 = ((uint32_t)x103 & 0x3fffff);
- { uint64_t x106 = (x104 + x54);
- { uint64_t x107 = (x106 >> 0x17);
- { uint32_t x108 = ((uint32_t)x106 & 0x7fffff);
- { uint64_t x109 = (x107 + x53);
- { uint64_t x110 = (x109 >> 0x16);
- { uint32_t x111 = ((uint32_t)x109 & 0x3fffff);
- { uint64_t x112 = (x110 + x52);
- { uint64_t x113 = (x112 >> 0x16);
- { uint32_t x114 = ((uint32_t)x112 & 0x3fffff);
- { uint64_t x115 = (x113 + x51);
- { uint64_t x116 = (x115 >> 0x16);
- { uint32_t x117 = ((uint32_t)x115 & 0x3fffff);
- { uint64_t x118 = (x116 + x50);
- { uint64_t x119 = (x118 >> 0x16);
- { uint32_t x120 = ((uint32_t)x118 & 0x3fffff);
- { uint64_t x121 = (x119 + x49);
- { uint64_t x122 = (x121 >> 0x17);
- { uint32_t x123 = ((uint32_t)x121 & 0x7fffff);
- { uint64_t x124 = (x122 + x48);
- { uint64_t x125 = (x124 >> 0x16);
- { uint32_t x126 = ((uint32_t)x124 & 0x3fffff);
- { uint64_t x127 = (x125 + x47);
- { uint64_t x128 = (x127 >> 0x16);
- { uint32_t x129 = ((uint32_t)x127 & 0x3fffff);
- { uint64_t x130 = (x128 + x46);
- { uint64_t x131 = (x130 >> 0x16);
- { uint32_t x132 = ((uint32_t)x130 & 0x3fffff);
- { uint64_t x133 = (x131 + x45);
- { uint32_t x134 = (uint32_t) (x133 >> 0x16);
- { uint32_t x135 = ((uint32_t)x133 & 0x3fffff);
- { uint64_t x136 = (x69 + ((uint64_t)0xbb * x134));
- { uint32_t x137 = (uint32_t) (x136 >> 0x17);
- { uint32_t x138 = ((uint32_t)x136 & 0x7fffff);
- { uint32_t x139 = (x137 + x72);
- { uint32_t x140 = (x139 >> 0x16);
- { uint32_t x141 = (x139 & 0x3fffff);
- out[0] = x138;
- out[1] = x141;
- out[2] = (x140 + x75);
- out[3] = x78;
- out[4] = x81;
- out[5] = x84;
- out[6] = x87;
- out[7] = x90;
- out[8] = x93;
- out[9] = x96;
- out[10] = x99;
- out[11] = x102;
- out[12] = x105;
- out[13] = x108;
- out[14] = x111;
- out[15] = x114;
- out[16] = x117;
- out[17] = x120;
- out[18] = x123;
- out[19] = x126;
- out[20] = x129;
- out[21] = x132;
- out[22] = x135;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e511m187_23limbs/fesquare.v b/src/Specific/solinas32_2e511m187_23limbs/fesquare.v
deleted file mode 100644
index d60704062..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e511m187_23limbs.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_2e511m187_23limbs/fesquareDisplay.log b/src/Specific/solinas32_2e511m187_23limbs/fesquareDisplay.log
deleted file mode 100644
index d44893b5f..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,104 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x43, x44, x42, x40, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x45 = (((uint64_t)x2 * x43) + ((0x2 * ((uint64_t)x4 * x44)) + ((0x2 * ((uint64_t)x6 * x42)) + ((0x2 * ((uint64_t)x8 * x40)) + (((uint64_t)x10 * x38) + ((0x2 * ((uint64_t)x12 * x36)) + ((0x2 * ((uint64_t)x14 * x34)) + ((0x2 * ((uint64_t)x16 * x32)) + ((0x2 * ((uint64_t)x18 * x30)) + (((uint64_t)x20 * x28) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + (((uint64_t)x28 * x20) + ((0x2 * ((uint64_t)x30 * x18)) + ((0x2 * ((uint64_t)x32 * x16)) + ((0x2 * ((uint64_t)x34 * x14)) + ((0x2 * ((uint64_t)x36 * x12)) + (((uint64_t)x38 * x10) + ((0x2 * ((uint64_t)x40 * x8)) + ((0x2 * ((uint64_t)x42 * x6)) + ((0x2 * ((uint64_t)x44 * x4)) + ((uint64_t)x43 * x2)))))))))))))))))))))));
- uint64_t x46 = ((((uint64_t)x2 * x44) + ((0x2 * ((uint64_t)x4 * x42)) + ((0x2 * ((uint64_t)x6 * x40)) + (((uint64_t)x8 * x38) + (((uint64_t)x10 * x36) + ((0x2 * ((uint64_t)x12 * x34)) + ((0x2 * ((uint64_t)x14 * x32)) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + ((0x2 * ((uint64_t)x32 * x14)) + ((0x2 * ((uint64_t)x34 * x12)) + (((uint64_t)x36 * x10) + (((uint64_t)x38 * x8) + ((0x2 * ((uint64_t)x40 * x6)) + ((0x2 * ((uint64_t)x42 * x4)) + ((uint64_t)x44 * x2)))))))))))))))))))))) + (0xbb * ((uint64_t)x43 * x43)));
- uint64_t x47 = ((((uint64_t)x2 * x42) + ((0x2 * ((uint64_t)x4 * x40)) + (((uint64_t)x6 * x38) + (((uint64_t)x8 * x36) + (((uint64_t)x10 * x34) + ((0x2 * ((uint64_t)x12 * x32)) + ((0x2 * ((uint64_t)x14 * x30)) + (((uint64_t)x16 * x28) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + (((uint64_t)x28 * x16) + ((0x2 * ((uint64_t)x30 * x14)) + ((0x2 * ((uint64_t)x32 * x12)) + (((uint64_t)x34 * x10) + (((uint64_t)x36 * x8) + (((uint64_t)x38 * x6) + ((0x2 * ((uint64_t)x40 * x4)) + ((uint64_t)x42 * x2))))))))))))))))))))) + (0xbb * (((uint64_t)x44 * x43) + ((uint64_t)x43 * x44))));
- uint64_t x48 = ((((uint64_t)x2 * x40) + (((uint64_t)x4 * x38) + (((uint64_t)x6 * x36) + (((uint64_t)x8 * x34) + (((uint64_t)x10 * x32) + ((0x2 * ((uint64_t)x12 * x30)) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + ((0x2 * ((uint64_t)x30 * x12)) + (((uint64_t)x32 * x10) + (((uint64_t)x34 * x8) + (((uint64_t)x36 * x6) + (((uint64_t)x38 * x4) + ((uint64_t)x40 * x2)))))))))))))))))))) + (0xbb * (((uint64_t)x42 * x43) + (((uint64_t)x44 * x44) + ((uint64_t)x43 * x42)))));
- uint64_t x49 = ((((uint64_t)x2 * x38) + ((0x2 * ((uint64_t)x4 * x36)) + ((0x2 * ((uint64_t)x6 * x34)) + ((0x2 * ((uint64_t)x8 * x32)) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + ((0x2 * ((uint64_t)x32 * x8)) + ((0x2 * ((uint64_t)x34 * x6)) + ((0x2 * ((uint64_t)x36 * x4)) + ((uint64_t)x38 * x2))))))))))))))))))) + (0xbb * ((0x2 * ((uint64_t)x40 * x43)) + ((0x2 * ((uint64_t)x42 * x44)) + ((0x2 * ((uint64_t)x44 * x42)) + (0x2 * ((uint64_t)x43 * x40)))))));
- uint64_t x50 = ((((uint64_t)x2 * x36) + ((0x2 * ((uint64_t)x4 * x34)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + (((uint64_t)x10 * x28) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + (((uint64_t)x28 * x10) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x36 * x2)))))))))))))))))) + (0xbb * (((uint64_t)x38 * x43) + ((0x2 * ((uint64_t)x40 * x44)) + ((0x2 * ((uint64_t)x42 * x42)) + ((0x2 * ((uint64_t)x44 * x40)) + ((uint64_t)x43 * x38)))))));
- uint64_t x51 = ((((uint64_t)x2 * x34) + ((0x2 * ((uint64_t)x4 * x32)) + ((0x2 * ((uint64_t)x6 * x30)) + (((uint64_t)x8 * x28) + (((uint64_t)x10 * x26) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + (((uint64_t)x26 * x10) + (((uint64_t)x28 * x8) + ((0x2 * ((uint64_t)x30 * x6)) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x34 * x2))))))))))))))))) + (0xbb * (((uint64_t)x36 * x43) + (((uint64_t)x38 * x44) + ((0x2 * ((uint64_t)x40 * x42)) + ((0x2 * ((uint64_t)x42 * x40)) + (((uint64_t)x44 * x38) + ((uint64_t)x43 * x36))))))));
- uint64_t x52 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0xbb * (((uint64_t)x34 * x43) + (((uint64_t)x36 * x44) + (((uint64_t)x38 * x42) + ((0x2 * ((uint64_t)x40 * x40)) + (((uint64_t)x42 * x38) + (((uint64_t)x44 * x36) + ((uint64_t)x43 * x34)))))))));
- uint64_t x53 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0xbb * (((uint64_t)x32 * x43) + (((uint64_t)x34 * x44) + (((uint64_t)x36 * x42) + (((uint64_t)x38 * x40) + (((uint64_t)x40 * x38) + (((uint64_t)x42 * x36) + (((uint64_t)x44 * x34) + ((uint64_t)x43 * x32))))))))));
- uint64_t x54 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + (((uint64_t)x10 * x20) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + (((uint64_t)x20 * x10) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0xbb * ((0x2 * ((uint64_t)x30 * x43)) + ((0x2 * ((uint64_t)x32 * x44)) + ((0x2 * ((uint64_t)x34 * x42)) + ((0x2 * ((uint64_t)x36 * x40)) + (((uint64_t)x38 * x38) + ((0x2 * ((uint64_t)x40 * x36)) + ((0x2 * ((uint64_t)x42 * x34)) + ((0x2 * ((uint64_t)x44 * x32)) + (0x2 * ((uint64_t)x43 * x30))))))))))));
- uint64_t x55 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0xbb * (((uint64_t)x28 * x43) + ((0x2 * ((uint64_t)x30 * x44)) + ((0x2 * ((uint64_t)x32 * x42)) + ((0x2 * ((uint64_t)x34 * x40)) + (((uint64_t)x36 * x38) + (((uint64_t)x38 * x36) + ((0x2 * ((uint64_t)x40 * x34)) + ((0x2 * ((uint64_t)x42 * x32)) + ((0x2 * ((uint64_t)x44 * x30)) + ((uint64_t)x43 * x28))))))))))));
- uint64_t x56 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0xbb * (((uint64_t)x26 * x43) + (((uint64_t)x28 * x44) + ((0x2 * ((uint64_t)x30 * x42)) + ((0x2 * ((uint64_t)x32 * x40)) + (((uint64_t)x34 * x38) + (((uint64_t)x36 * x36) + (((uint64_t)x38 * x34) + ((0x2 * ((uint64_t)x40 * x32)) + ((0x2 * ((uint64_t)x42 * x30)) + (((uint64_t)x44 * x28) + ((uint64_t)x43 * x26)))))))))))));
- uint64_t x57 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0xbb * (((uint64_t)x24 * x43) + (((uint64_t)x26 * x44) + (((uint64_t)x28 * x42) + ((0x2 * ((uint64_t)x30 * x40)) + (((uint64_t)x32 * x38) + (((uint64_t)x34 * x36) + (((uint64_t)x36 * x34) + (((uint64_t)x38 * x32) + ((0x2 * ((uint64_t)x40 * x30)) + (((uint64_t)x42 * x28) + (((uint64_t)x44 * x26) + ((uint64_t)x43 * x24))))))))))))));
- uint64_t x58 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0xbb * ((0x2 * ((uint64_t)x22 * x43)) + ((0x2 * ((uint64_t)x24 * x44)) + ((0x2 * ((uint64_t)x26 * x42)) + ((0x2 * ((uint64_t)x28 * x40)) + ((0x2 * ((uint64_t)x30 * x38)) + ((0x2 * ((uint64_t)x32 * x36)) + ((0x2 * ((uint64_t)x34 * x34)) + ((0x2 * ((uint64_t)x36 * x32)) + ((0x2 * ((uint64_t)x38 * x30)) + ((0x2 * ((uint64_t)x40 * x28)) + ((0x2 * ((uint64_t)x42 * x26)) + ((0x2 * ((uint64_t)x44 * x24)) + (0x2 * ((uint64_t)x43 * x22))))))))))))))));
- uint64_t x59 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0xbb * (((uint64_t)x20 * x43) + ((0x2 * ((uint64_t)x22 * x44)) + ((0x2 * ((uint64_t)x24 * x42)) + ((0x2 * ((uint64_t)x26 * x40)) + (((uint64_t)x28 * x38) + ((0x2 * ((uint64_t)x30 * x36)) + ((0x2 * ((uint64_t)x32 * x34)) + ((0x2 * ((uint64_t)x34 * x32)) + ((0x2 * ((uint64_t)x36 * x30)) + (((uint64_t)x38 * x28) + ((0x2 * ((uint64_t)x40 * x26)) + ((0x2 * ((uint64_t)x42 * x24)) + ((0x2 * ((uint64_t)x44 * x22)) + ((uint64_t)x43 * x20))))))))))))))));
- uint64_t x60 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0xbb * (((uint64_t)x18 * x43) + (((uint64_t)x20 * x44) + ((0x2 * ((uint64_t)x22 * x42)) + ((0x2 * ((uint64_t)x24 * x40)) + (((uint64_t)x26 * x38) + (((uint64_t)x28 * x36) + ((0x2 * ((uint64_t)x30 * x34)) + ((0x2 * ((uint64_t)x32 * x32)) + ((0x2 * ((uint64_t)x34 * x30)) + (((uint64_t)x36 * x28) + (((uint64_t)x38 * x26) + ((0x2 * ((uint64_t)x40 * x24)) + ((0x2 * ((uint64_t)x42 * x22)) + (((uint64_t)x44 * x20) + ((uint64_t)x43 * x18)))))))))))))))));
- uint64_t x61 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0xbb * (((uint64_t)x16 * x43) + (((uint64_t)x18 * x44) + (((uint64_t)x20 * x42) + ((0x2 * ((uint64_t)x22 * x40)) + (((uint64_t)x24 * x38) + (((uint64_t)x26 * x36) + (((uint64_t)x28 * x34) + ((0x2 * ((uint64_t)x30 * x32)) + ((0x2 * ((uint64_t)x32 * x30)) + (((uint64_t)x34 * x28) + (((uint64_t)x36 * x26) + (((uint64_t)x38 * x24) + ((0x2 * ((uint64_t)x40 * x22)) + (((uint64_t)x42 * x20) + (((uint64_t)x44 * x18) + ((uint64_t)x43 * x16))))))))))))))))));
- uint64_t x62 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0xbb * (((uint64_t)x14 * x43) + (((uint64_t)x16 * x44) + (((uint64_t)x18 * x42) + (((uint64_t)x20 * x40) + (((uint64_t)x22 * x38) + (((uint64_t)x24 * x36) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + (((uint64_t)x36 * x24) + (((uint64_t)x38 * x22) + (((uint64_t)x40 * x20) + (((uint64_t)x42 * x18) + (((uint64_t)x44 * x16) + ((uint64_t)x43 * x14)))))))))))))))))));
- uint64_t x63 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0xbb * ((0x2 * ((uint64_t)x12 * x43)) + ((0x2 * ((uint64_t)x14 * x44)) + ((0x2 * ((uint64_t)x16 * x42)) + ((0x2 * ((uint64_t)x18 * x40)) + (((uint64_t)x20 * x38) + ((0x2 * ((uint64_t)x22 * x36)) + ((0x2 * ((uint64_t)x24 * x34)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + ((0x2 * ((uint64_t)x34 * x24)) + ((0x2 * ((uint64_t)x36 * x22)) + (((uint64_t)x38 * x20) + ((0x2 * ((uint64_t)x40 * x18)) + ((0x2 * ((uint64_t)x42 * x16)) + ((0x2 * ((uint64_t)x44 * x14)) + (0x2 * ((uint64_t)x43 * x12)))))))))))))))))))));
- uint64_t x64 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0xbb * (((uint64_t)x10 * x43) + ((0x2 * ((uint64_t)x12 * x44)) + ((0x2 * ((uint64_t)x14 * x42)) + ((0x2 * ((uint64_t)x16 * x40)) + (((uint64_t)x18 * x38) + (((uint64_t)x20 * x36) + ((0x2 * ((uint64_t)x22 * x34)) + ((0x2 * ((uint64_t)x24 * x32)) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + ((0x2 * ((uint64_t)x32 * x24)) + ((0x2 * ((uint64_t)x34 * x22)) + (((uint64_t)x36 * x20) + (((uint64_t)x38 * x18) + ((0x2 * ((uint64_t)x40 * x16)) + ((0x2 * ((uint64_t)x42 * x14)) + ((0x2 * ((uint64_t)x44 * x12)) + ((uint64_t)x43 * x10)))))))))))))))))))));
- uint64_t x65 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0xbb * (((uint64_t)x8 * x43) + (((uint64_t)x10 * x44) + ((0x2 * ((uint64_t)x12 * x42)) + ((0x2 * ((uint64_t)x14 * x40)) + (((uint64_t)x16 * x38) + (((uint64_t)x18 * x36) + (((uint64_t)x20 * x34) + ((0x2 * ((uint64_t)x22 * x32)) + ((0x2 * ((uint64_t)x24 * x30)) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + ((0x2 * ((uint64_t)x30 * x24)) + ((0x2 * ((uint64_t)x32 * x22)) + (((uint64_t)x34 * x20) + (((uint64_t)x36 * x18) + (((uint64_t)x38 * x16) + ((0x2 * ((uint64_t)x40 * x14)) + ((0x2 * ((uint64_t)x42 * x12)) + (((uint64_t)x44 * x10) + ((uint64_t)x43 * x8))))))))))))))))))))));
- uint64_t x66 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0xbb * (((uint64_t)x6 * x43) + (((uint64_t)x8 * x44) + (((uint64_t)x10 * x42) + ((0x2 * ((uint64_t)x12 * x40)) + (((uint64_t)x14 * x38) + (((uint64_t)x16 * x36) + (((uint64_t)x18 * x34) + (((uint64_t)x20 * x32) + ((0x2 * ((uint64_t)x22 * x30)) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + ((0x2 * ((uint64_t)x30 * x22)) + (((uint64_t)x32 * x20) + (((uint64_t)x34 * x18) + (((uint64_t)x36 * x16) + (((uint64_t)x38 * x14) + ((0x2 * ((uint64_t)x40 * x12)) + (((uint64_t)x42 * x10) + (((uint64_t)x44 * x8) + ((uint64_t)x43 * x6)))))))))))))))))))))));
- uint64_t x67 = (((uint64_t)x2 * x2) + (0xbb * ((0x2 * ((uint64_t)x4 * x43)) + ((0x2 * ((uint64_t)x6 * x44)) + ((0x2 * ((uint64_t)x8 * x42)) + ((0x2 * ((uint64_t)x10 * x40)) + ((0x2 * ((uint64_t)x12 * x38)) + ((0x2 * ((uint64_t)x14 * x36)) + ((0x2 * ((uint64_t)x16 * x34)) + ((0x2 * ((uint64_t)x18 * x32)) + ((0x2 * ((uint64_t)x20 * x30)) + ((0x2 * ((uint64_t)x22 * x28)) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + ((0x2 * ((uint64_t)x28 * x22)) + ((0x2 * ((uint64_t)x30 * x20)) + ((0x2 * ((uint64_t)x32 * x18)) + ((0x2 * ((uint64_t)x34 * x16)) + ((0x2 * ((uint64_t)x36 * x14)) + ((0x2 * ((uint64_t)x38 * x12)) + ((0x2 * ((uint64_t)x40 * x10)) + ((0x2 * ((uint64_t)x42 * x8)) + ((0x2 * ((uint64_t)x44 * x6)) + (0x2 * ((uint64_t)x43 * x4)))))))))))))))))))))))));
- uint64_t x68 = (x67 >> 0x17);
- uint32_t x69 = ((uint32_t)x67 & 0x7fffff);
- uint64_t x70 = (x68 + x66);
- uint64_t x71 = (x70 >> 0x16);
- uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- uint64_t x73 = (x71 + x65);
- uint64_t x74 = (x73 >> 0x16);
- uint32_t x75 = ((uint32_t)x73 & 0x3fffff);
- uint64_t x76 = (x74 + x64);
- uint64_t x77 = (x76 >> 0x16);
- uint32_t x78 = ((uint32_t)x76 & 0x3fffff);
- uint64_t x79 = (x77 + x63);
- uint64_t x80 = (x79 >> 0x17);
- uint32_t x81 = ((uint32_t)x79 & 0x7fffff);
- uint64_t x82 = (x80 + x62);
- uint64_t x83 = (x82 >> 0x16);
- uint32_t x84 = ((uint32_t)x82 & 0x3fffff);
- uint64_t x85 = (x83 + x61);
- uint64_t x86 = (x85 >> 0x16);
- uint32_t x87 = ((uint32_t)x85 & 0x3fffff);
- uint64_t x88 = (x86 + x60);
- uint64_t x89 = (x88 >> 0x16);
- uint32_t x90 = ((uint32_t)x88 & 0x3fffff);
- uint64_t x91 = (x89 + x59);
- uint64_t x92 = (x91 >> 0x16);
- uint32_t x93 = ((uint32_t)x91 & 0x3fffff);
- uint64_t x94 = (x92 + x58);
- uint64_t x95 = (x94 >> 0x17);
- uint32_t x96 = ((uint32_t)x94 & 0x7fffff);
- uint64_t x97 = (x95 + x57);
- uint64_t x98 = (x97 >> 0x16);
- uint32_t x99 = ((uint32_t)x97 & 0x3fffff);
- uint64_t x100 = (x98 + x56);
- uint64_t x101 = (x100 >> 0x16);
- uint32_t x102 = ((uint32_t)x100 & 0x3fffff);
- uint64_t x103 = (x101 + x55);
- uint64_t x104 = (x103 >> 0x16);
- uint32_t x105 = ((uint32_t)x103 & 0x3fffff);
- uint64_t x106 = (x104 + x54);
- uint64_t x107 = (x106 >> 0x17);
- uint32_t x108 = ((uint32_t)x106 & 0x7fffff);
- uint64_t x109 = (x107 + x53);
- uint64_t x110 = (x109 >> 0x16);
- uint32_t x111 = ((uint32_t)x109 & 0x3fffff);
- uint64_t x112 = (x110 + x52);
- uint64_t x113 = (x112 >> 0x16);
- uint32_t x114 = ((uint32_t)x112 & 0x3fffff);
- uint64_t x115 = (x113 + x51);
- uint64_t x116 = (x115 >> 0x16);
- uint32_t x117 = ((uint32_t)x115 & 0x3fffff);
- uint64_t x118 = (x116 + x50);
- uint64_t x119 = (x118 >> 0x16);
- uint32_t x120 = ((uint32_t)x118 & 0x3fffff);
- uint64_t x121 = (x119 + x49);
- uint64_t x122 = (x121 >> 0x17);
- uint32_t x123 = ((uint32_t)x121 & 0x7fffff);
- uint64_t x124 = (x122 + x48);
- uint64_t x125 = (x124 >> 0x16);
- uint32_t x126 = ((uint32_t)x124 & 0x3fffff);
- uint64_t x127 = (x125 + x47);
- uint64_t x128 = (x127 >> 0x16);
- uint32_t x129 = ((uint32_t)x127 & 0x3fffff);
- uint64_t x130 = (x128 + x46);
- uint64_t x131 = (x130 >> 0x16);
- uint32_t x132 = ((uint32_t)x130 & 0x3fffff);
- uint64_t x133 = (x131 + x45);
- uint32_t x134 = (uint32_t) (x133 >> 0x16);
- uint32_t x135 = ((uint32_t)x133 & 0x3fffff);
- uint64_t x136 = (x69 + ((uint64_t)0xbb * x134));
- uint32_t x137 = (uint32_t) (x136 >> 0x17);
- uint32_t x138 = ((uint32_t)x136 & 0x7fffff);
- uint32_t x139 = (x137 + x72);
- uint32_t x140 = (x139 >> 0x16);
- uint32_t x141 = (x139 & 0x3fffff);
- return (Return x135, Return x132, Return x129, Return x126, Return x123, Return x120, Return x117, Return x114, Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, (x140 + x75), Return x141, Return x138))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e511m187_23limbs/fesquareDisplay.v b/src/Specific/solinas32_2e511m187_23limbs/fesquareDisplay.v
deleted file mode 100644
index e85e7f0fd..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e511m187_23limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e511m187_23limbs/fesub.c b/src/Specific/solinas32_2e511m187_23limbs/fesub.c
deleted file mode 100644
index e4020c8b9..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/fesub.c
+++ /dev/null
@@ -1,72 +0,0 @@
-static void fesub(uint32_t out[23], const uint32_t in1[23], const uint32_t in2[23]) {
- { const uint32_t x46 = in1[22];
- { const uint32_t x47 = in1[21];
- { const uint32_t x45 = in1[20];
- { const uint32_t x43 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x90 = in2[22];
- { const uint32_t x91 = in2[21];
- { const uint32_t x89 = in2[20];
- { const uint32_t x87 = in2[19];
- { const uint32_t x85 = in2[18];
- { const uint32_t x83 = in2[17];
- { const uint32_t x81 = in2[16];
- { const uint32_t x79 = in2[15];
- { const uint32_t x77 = in2[14];
- { const uint32_t x75 = in2[13];
- { const uint32_t x73 = in2[12];
- { const uint32_t x71 = in2[11];
- { const uint32_t x69 = in2[10];
- { const uint32_t x67 = in2[9];
- { const uint32_t x65 = in2[8];
- { const uint32_t x63 = in2[7];
- { const uint32_t x61 = in2[6];
- { const uint32_t x59 = in2[5];
- { const uint32_t x57 = in2[4];
- { const uint32_t x55 = in2[3];
- { const uint32_t x53 = in2[2];
- { const uint32_t x51 = in2[1];
- { const uint32_t x49 = in2[0];
- out[0] = ((0xfffe8a + x5) - x49);
- out[1] = ((0x7ffffe + x7) - x51);
- out[2] = ((0x7ffffe + x9) - x53);
- out[3] = ((0x7ffffe + x11) - x55);
- out[4] = ((0xfffffe + x13) - x57);
- out[5] = ((0x7ffffe + x15) - x59);
- out[6] = ((0x7ffffe + x17) - x61);
- out[7] = ((0x7ffffe + x19) - x63);
- out[8] = ((0x7ffffe + x21) - x65);
- out[9] = ((0xfffffe + x23) - x67);
- out[10] = ((0x7ffffe + x25) - x69);
- out[11] = ((0x7ffffe + x27) - x71);
- out[12] = ((0x7ffffe + x29) - x73);
- out[13] = ((0xfffffe + x31) - x75);
- out[14] = ((0x7ffffe + x33) - x77);
- out[15] = ((0x7ffffe + x35) - x79);
- out[16] = ((0x7ffffe + x37) - x81);
- out[17] = ((0x7ffffe + x39) - x83);
- out[18] = ((0xfffffe + x41) - x85);
- out[19] = ((0x7ffffe + x43) - x87);
- out[20] = ((0x7ffffe + x45) - x89);
- out[21] = ((0x7ffffe + x47) - x91);
- out[22] = ((0x7ffffe + x46) - x90);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e511m187_23limbs/fesub.v b/src/Specific/solinas32_2e511m187_23limbs/fesub.v
deleted file mode 100644
index b8d52e6e9..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e511m187_23limbs.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_2e511m187_23limbs/fesubDisplay.log b/src/Specific/solinas32_2e511m187_23limbs/fesubDisplay.log
deleted file mode 100644
index a777c844f..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x90, x91, x89, x87, x85, x83, x81, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49))%core,
- (((0x7ffffe + x46) - x90), ((0x7ffffe + x47) - x91), ((0x7ffffe + x45) - x89), ((0x7ffffe + x43) - x87), ((0xfffffe + x41) - x85), ((0x7ffffe + x39) - x83), ((0x7ffffe + x37) - x81), ((0x7ffffe + x35) - x79), ((0x7ffffe + x33) - x77), ((0xfffffe + x31) - x75), ((0x7ffffe + x29) - x73), ((0x7ffffe + x27) - x71), ((0x7ffffe + x25) - x69), ((0xfffffe + x23) - x67), ((0x7ffffe + x21) - x65), ((0x7ffffe + x19) - x63), ((0x7ffffe + x17) - x61), ((0x7ffffe + x15) - x59), ((0xfffffe + x13) - x57), ((0x7ffffe + x11) - x55), ((0x7ffffe + x9) - x53), ((0x7ffffe + x7) - x51), ((0xfffe8a + x5) - x49)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e511m187_23limbs/fesubDisplay.v b/src/Specific/solinas32_2e511m187_23limbs/fesubDisplay.v
deleted file mode 100644
index 466b081ab..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e511m187_23limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e511m187_23limbs/freeze.c b/src/Specific/solinas32_2e511m187_23limbs/freeze.c
deleted file mode 100644
index 60e669a9c..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/freeze.c
+++ /dev/null
@@ -1,119 +0,0 @@
-static void freeze(uint32_t out[23], const uint32_t in1[23]) {
- { const uint32_t x43 = in1[22];
- { const uint32_t x44 = in1[21];
- { const uint32_t x42 = in1[20];
- { const uint32_t x40 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fff45);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x4, 0x3fffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x6, 0x3fffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x8, 0x3fffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x10, 0x7fffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x12, 0x3fffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x14, 0x3fffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x16, 0x3fffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x18, 0x3fffff);
- { uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x20, 0x7fffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x22, 0x3fffff);
- { uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x24, 0x3fffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x26, 0x3fffff);
- { uint32_t x85, uint8_t x86 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x28, 0x7fffff);
- { uint32_t x88, uint8_t x89 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x30, 0x3fffff);
- { uint32_t x91, uint8_t x92 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x89, Return x32, 0x3fffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x34, 0x3fffff);
- { uint32_t x97, uint8_t x98 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x36, 0x3fffff);
- { uint32_t x100, uint8_t x101 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x98, Return x38, 0x7fffff);
- { uint32_t x103, uint8_t x104 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x40, 0x3fffff);
- { uint32_t x106, uint8_t x107 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x42, 0x3fffff);
- { uint32_t x109, uint8_t x110 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x44, 0x3fffff);
- { uint32_t x112, uint8_t x113 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x110, Return x43, 0x3fffff);
- { uint32_t x114 = cmovznz32(x113, 0x0, 0xffffffff);
- { uint32_t x115 = (x114 & 0x7fff45);
- { uint32_t x117, uint8_t x118 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x46, Return x115);
- { uint32_t x119 = (x114 & 0x3fffff);
- { uint32_t x121, uint8_t x122 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x118, Return x49, Return x119);
- { uint32_t x123 = (x114 & 0x3fffff);
- { uint32_t x125, uint8_t x126 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x122, Return x52, Return x123);
- { uint32_t x127 = (x114 & 0x3fffff);
- { uint32_t x129, uint8_t x130 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x126, Return x55, Return x127);
- { uint32_t x131 = (x114 & 0x7fffff);
- { uint32_t x133, uint8_t x134 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x130, Return x58, Return x131);
- { uint32_t x135 = (x114 & 0x3fffff);
- { uint32_t x137, uint8_t x138 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x134, Return x61, Return x135);
- { uint32_t x139 = (x114 & 0x3fffff);
- { uint32_t x141, uint8_t x142 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x138, Return x64, Return x139);
- { uint32_t x143 = (x114 & 0x3fffff);
- { uint32_t x145, uint8_t x146 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x142, Return x67, Return x143);
- { uint32_t x147 = (x114 & 0x3fffff);
- { uint32_t x149, uint8_t x150 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x146, Return x70, Return x147);
- { uint32_t x151 = (x114 & 0x7fffff);
- { uint32_t x153, uint8_t x154 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x150, Return x73, Return x151);
- { uint32_t x155 = (x114 & 0x3fffff);
- { uint32_t x157, uint8_t x158 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x154, Return x76, Return x155);
- { uint32_t x159 = (x114 & 0x3fffff);
- { uint32_t x161, uint8_t x162 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x158, Return x79, Return x159);
- { uint32_t x163 = (x114 & 0x3fffff);
- { uint32_t x165, uint8_t x166 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x162, Return x82, Return x163);
- { uint32_t x167 = (x114 & 0x7fffff);
- { uint32_t x169, uint8_t x170 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x166, Return x85, Return x167);
- { uint32_t x171 = (x114 & 0x3fffff);
- { uint32_t x173, uint8_t x174 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x170, Return x88, Return x171);
- { uint32_t x175 = (x114 & 0x3fffff);
- { uint32_t x177, uint8_t x178 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x174, Return x91, Return x175);
- { uint32_t x179 = (x114 & 0x3fffff);
- { uint32_t x181, uint8_t x182 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x178, Return x94, Return x179);
- { uint32_t x183 = (x114 & 0x3fffff);
- { uint32_t x185, uint8_t x186 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x182, Return x97, Return x183);
- { uint32_t x187 = (x114 & 0x7fffff);
- { uint32_t x189, uint8_t x190 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x186, Return x100, Return x187);
- { uint32_t x191 = (x114 & 0x3fffff);
- { uint32_t x193, uint8_t x194 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x190, Return x103, Return x191);
- { uint32_t x195 = (x114 & 0x3fffff);
- { uint32_t x197, uint8_t x198 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x194, Return x106, Return x195);
- { uint32_t x199 = (x114 & 0x3fffff);
- { uint32_t x201, uint8_t x202 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x198, Return x109, Return x199);
- { uint32_t x203 = (x114 & 0x3fffff);
- { uint32_t x205, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x202, Return x112, Return x203);
- out[0] = x117;
- out[1] = x121;
- out[2] = x125;
- out[3] = x129;
- out[4] = x133;
- out[5] = x137;
- out[6] = x141;
- out[7] = x145;
- out[8] = x149;
- out[9] = x153;
- out[10] = x157;
- out[11] = x161;
- out[12] = x165;
- out[13] = x169;
- out[14] = x173;
- out[15] = x177;
- out[16] = x181;
- out[17] = x185;
- out[18] = x189;
- out[19] = x193;
- out[20] = x197;
- out[21] = x201;
- out[22] = x205;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e511m187_23limbs/freeze.v b/src/Specific/solinas32_2e511m187_23limbs/freeze.v
deleted file mode 100644
index ac9bcfe5c..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e511m187_23limbs.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_2e511m187_23limbs/freezeDisplay.log b/src/Specific/solinas32_2e511m187_23limbs/freezeDisplay.log
deleted file mode 100644
index a442982ff..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/freezeDisplay.log
+++ /dev/null
@@ -1,77 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x43, x44, x42, x40, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7fff45);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x4, 0x3fffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x6, 0x3fffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x8, 0x3fffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x10, 0x7fffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x12, 0x3fffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x14, 0x3fffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x16, 0x3fffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x18, 0x3fffff);
- uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x20, 0x7fffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x22, 0x3fffff);
- uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x24, 0x3fffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x26, 0x3fffff);
- uint32_t x85, uint8_t x86 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x28, 0x7fffff);
- uint32_t x88, uint8_t x89 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x30, 0x3fffff);
- uint32_t x91, uint8_t x92 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x89, Return x32, 0x3fffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x34, 0x3fffff);
- uint32_t x97, uint8_t x98 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x36, 0x3fffff);
- uint32_t x100, uint8_t x101 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x98, Return x38, 0x7fffff);
- uint32_t x103, uint8_t x104 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x40, 0x3fffff);
- uint32_t x106, uint8_t x107 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x42, 0x3fffff);
- uint32_t x109, uint8_t x110 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x44, 0x3fffff);
- uint32_t x112, uint8_t x113 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x110, Return x43, 0x3fffff);
- uint32_t x114 = cmovznz32(x113, 0x0, 0xffffffff);
- uint32_t x115 = (x114 & 0x7fff45);
- uint32_t x117, uint8_t x118 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x46, Return x115);
- uint32_t x119 = (x114 & 0x3fffff);
- uint32_t x121, uint8_t x122 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x118, Return x49, Return x119);
- uint32_t x123 = (x114 & 0x3fffff);
- uint32_t x125, uint8_t x126 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x122, Return x52, Return x123);
- uint32_t x127 = (x114 & 0x3fffff);
- uint32_t x129, uint8_t x130 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x126, Return x55, Return x127);
- uint32_t x131 = (x114 & 0x7fffff);
- uint32_t x133, uint8_t x134 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x130, Return x58, Return x131);
- uint32_t x135 = (x114 & 0x3fffff);
- uint32_t x137, uint8_t x138 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x134, Return x61, Return x135);
- uint32_t x139 = (x114 & 0x3fffff);
- uint32_t x141, uint8_t x142 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x138, Return x64, Return x139);
- uint32_t x143 = (x114 & 0x3fffff);
- uint32_t x145, uint8_t x146 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x142, Return x67, Return x143);
- uint32_t x147 = (x114 & 0x3fffff);
- uint32_t x149, uint8_t x150 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x146, Return x70, Return x147);
- uint32_t x151 = (x114 & 0x7fffff);
- uint32_t x153, uint8_t x154 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x150, Return x73, Return x151);
- uint32_t x155 = (x114 & 0x3fffff);
- uint32_t x157, uint8_t x158 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x154, Return x76, Return x155);
- uint32_t x159 = (x114 & 0x3fffff);
- uint32_t x161, uint8_t x162 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x158, Return x79, Return x159);
- uint32_t x163 = (x114 & 0x3fffff);
- uint32_t x165, uint8_t x166 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x162, Return x82, Return x163);
- uint32_t x167 = (x114 & 0x7fffff);
- uint32_t x169, uint8_t x170 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x166, Return x85, Return x167);
- uint32_t x171 = (x114 & 0x3fffff);
- uint32_t x173, uint8_t x174 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x170, Return x88, Return x171);
- uint32_t x175 = (x114 & 0x3fffff);
- uint32_t x177, uint8_t x178 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x174, Return x91, Return x175);
- uint32_t x179 = (x114 & 0x3fffff);
- uint32_t x181, uint8_t x182 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x178, Return x94, Return x179);
- uint32_t x183 = (x114 & 0x3fffff);
- uint32_t x185, uint8_t x186 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x182, Return x97, Return x183);
- uint32_t x187 = (x114 & 0x7fffff);
- uint32_t x189, uint8_t x190 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x186, Return x100, Return x187);
- uint32_t x191 = (x114 & 0x3fffff);
- uint32_t x193, uint8_t x194 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x190, Return x103, Return x191);
- uint32_t x195 = (x114 & 0x3fffff);
- uint32_t x197, uint8_t x198 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x194, Return x106, Return x195);
- uint32_t x199 = (x114 & 0x3fffff);
- uint32_t x201, uint8_t x202 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x198, Return x109, Return x199);
- uint32_t x203 = (x114 & 0x3fffff);
- uint32_t x205, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x202, Return x112, Return x203);
- (Return x205, Return x201, Return x197, Return x193, Return x189, Return x185, Return x181, Return x177, Return x173, Return x169, Return x165, Return x161, Return x157, Return x153, Return x149, Return x145, Return x141, Return x137, Return x133, Return x129, Return x125, Return x121, Return x117))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e511m187_23limbs/freezeDisplay.v b/src/Specific/solinas32_2e511m187_23limbs/freezeDisplay.v
deleted file mode 100644
index 19b4b09e9..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e511m187_23limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e511m187_23limbs/py_interpreter.sh b/src/Specific/solinas32_2e511m187_23limbs/py_interpreter.sh
deleted file mode 100755
index a1d2975d2..000000000
--- a/src/Specific/solinas32_2e511m187_23limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**511 - 187' -Dmodulus_bytes='22 + 5/23' -Da24='121665'
diff --git a/src/Specific/solinas32_2e511m481_23limbs/CurveParameters.v b/src/Specific/solinas32_2e511m481_23limbs/CurveParameters.v
deleted file mode 100644
index 2279e611b..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^511 - 481
-Base: 22 + 5/23
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 23%nat;
- base := 22 + 5/23;
- bitwidth := 32;
- s := 2^511;
- c := [(1, 481)];
- carry_chains := Some [seq 0 (pred 23); [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_2e511m481_23limbs/Synthesis.v b/src/Specific/solinas32_2e511m481_23limbs/Synthesis.v
deleted file mode 100644
index efe1e8bce..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e511m481_23limbs.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_2e511m481_23limbs/compiler.sh b/src/Specific/solinas32_2e511m481_23limbs/compiler.sh
deleted file mode 100755
index 08174fe51..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,22,22,22,23,22,22,22,22,23,22,22,22,23,22,22,22,22,23,22,22,22,22}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='23' -Dq_mpz='(1_mpz<<511) - 481' "$@"
diff --git a/src/Specific/solinas32_2e511m481_23limbs/compilerxx.sh b/src/Specific/solinas32_2e511m481_23limbs/compilerxx.sh
deleted file mode 100755
index 23719ca9e..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{23,22,22,22,23,22,22,22,22,23,22,22,22,23,22,22,22,22,23,22,22,22,22}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='23' -Dq_mpz='(1_mpz<<511) - 481' "$@"
diff --git a/src/Specific/solinas32_2e511m481_23limbs/feadd.c b/src/Specific/solinas32_2e511m481_23limbs/feadd.c
deleted file mode 100644
index 3ec1f7bb3..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/feadd.c
+++ /dev/null
@@ -1,72 +0,0 @@
-static void feadd(uint32_t out[23], const uint32_t in1[23], const uint32_t in2[23]) {
- { const uint32_t x46 = in1[22];
- { const uint32_t x47 = in1[21];
- { const uint32_t x45 = in1[20];
- { const uint32_t x43 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x90 = in2[22];
- { const uint32_t x91 = in2[21];
- { const uint32_t x89 = in2[20];
- { const uint32_t x87 = in2[19];
- { const uint32_t x85 = in2[18];
- { const uint32_t x83 = in2[17];
- { const uint32_t x81 = in2[16];
- { const uint32_t x79 = in2[15];
- { const uint32_t x77 = in2[14];
- { const uint32_t x75 = in2[13];
- { const uint32_t x73 = in2[12];
- { const uint32_t x71 = in2[11];
- { const uint32_t x69 = in2[10];
- { const uint32_t x67 = in2[9];
- { const uint32_t x65 = in2[8];
- { const uint32_t x63 = in2[7];
- { const uint32_t x61 = in2[6];
- { const uint32_t x59 = in2[5];
- { const uint32_t x57 = in2[4];
- { const uint32_t x55 = in2[3];
- { const uint32_t x53 = in2[2];
- { const uint32_t x51 = in2[1];
- { const uint32_t x49 = in2[0];
- out[0] = (x5 + x49);
- out[1] = (x7 + x51);
- out[2] = (x9 + x53);
- out[3] = (x11 + x55);
- out[4] = (x13 + x57);
- out[5] = (x15 + x59);
- out[6] = (x17 + x61);
- out[7] = (x19 + x63);
- out[8] = (x21 + x65);
- out[9] = (x23 + x67);
- out[10] = (x25 + x69);
- out[11] = (x27 + x71);
- out[12] = (x29 + x73);
- out[13] = (x31 + x75);
- out[14] = (x33 + x77);
- out[15] = (x35 + x79);
- out[16] = (x37 + x81);
- out[17] = (x39 + x83);
- out[18] = (x41 + x85);
- out[19] = (x43 + x87);
- out[20] = (x45 + x89);
- out[21] = (x47 + x91);
- out[22] = (x46 + x90);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e511m481_23limbs/feadd.v b/src/Specific/solinas32_2e511m481_23limbs/feadd.v
deleted file mode 100644
index b09d5b4fe..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e511m481_23limbs.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_2e511m481_23limbs/feaddDisplay.log b/src/Specific/solinas32_2e511m481_23limbs/feaddDisplay.log
deleted file mode 100644
index c6d6c303e..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x90, x91, x89, x87, x85, x83, x81, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49))%core,
- ((x46 + x90), (x47 + x91), (x45 + x89), (x43 + x87), (x41 + x85), (x39 + x83), (x37 + x81), (x35 + x79), (x33 + x77), (x31 + x75), (x29 + x73), (x27 + x71), (x25 + x69), (x23 + x67), (x21 + x65), (x19 + x63), (x17 + x61), (x15 + x59), (x13 + x57), (x11 + x55), (x9 + x53), (x7 + x51), (x5 + x49)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e511m481_23limbs/feaddDisplay.v b/src/Specific/solinas32_2e511m481_23limbs/feaddDisplay.v
deleted file mode 100644
index 035721b49..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e511m481_23limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e511m481_23limbs/fecarry.v b/src/Specific/solinas32_2e511m481_23limbs/fecarry.v
deleted file mode 100644
index fe3e5f896..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e511m481_23limbs.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_2e511m481_23limbs/fecarryDisplay.v b/src/Specific/solinas32_2e511m481_23limbs/fecarryDisplay.v
deleted file mode 100644
index a94c9ce15..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e511m481_23limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e511m481_23limbs/femul.v b/src/Specific/solinas32_2e511m481_23limbs/femul.v
deleted file mode 100644
index 4d9d6762a..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e511m481_23limbs.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_2e511m481_23limbs/femulDisplay.v b/src/Specific/solinas32_2e511m481_23limbs/femulDisplay.v
deleted file mode 100644
index b64e2f0ac..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e511m481_23limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e511m481_23limbs/fesquare.c b/src/Specific/solinas32_2e511m481_23limbs/fesquare.c
deleted file mode 100644
index 932e04c59..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/fesquare.c
+++ /dev/null
@@ -1,146 +0,0 @@
-static void fesquare(uint32_t out[23], const uint32_t in1[23]) {
- { const uint32_t x43 = in1[22];
- { const uint32_t x44 = in1[21];
- { const uint32_t x42 = in1[20];
- { const uint32_t x40 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x45 = (((uint64_t)x2 * x43) + ((0x2 * ((uint64_t)x4 * x44)) + ((0x2 * ((uint64_t)x6 * x42)) + ((0x2 * ((uint64_t)x8 * x40)) + (((uint64_t)x10 * x38) + ((0x2 * ((uint64_t)x12 * x36)) + ((0x2 * ((uint64_t)x14 * x34)) + ((0x2 * ((uint64_t)x16 * x32)) + ((0x2 * ((uint64_t)x18 * x30)) + (((uint64_t)x20 * x28) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + (((uint64_t)x28 * x20) + ((0x2 * ((uint64_t)x30 * x18)) + ((0x2 * ((uint64_t)x32 * x16)) + ((0x2 * ((uint64_t)x34 * x14)) + ((0x2 * ((uint64_t)x36 * x12)) + (((uint64_t)x38 * x10) + ((0x2 * ((uint64_t)x40 * x8)) + ((0x2 * ((uint64_t)x42 * x6)) + ((0x2 * ((uint64_t)x44 * x4)) + ((uint64_t)x43 * x2)))))))))))))))))))))));
- { uint64_t x46 = ((((uint64_t)x2 * x44) + ((0x2 * ((uint64_t)x4 * x42)) + ((0x2 * ((uint64_t)x6 * x40)) + (((uint64_t)x8 * x38) + (((uint64_t)x10 * x36) + ((0x2 * ((uint64_t)x12 * x34)) + ((0x2 * ((uint64_t)x14 * x32)) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + ((0x2 * ((uint64_t)x32 * x14)) + ((0x2 * ((uint64_t)x34 * x12)) + (((uint64_t)x36 * x10) + (((uint64_t)x38 * x8) + ((0x2 * ((uint64_t)x40 * x6)) + ((0x2 * ((uint64_t)x42 * x4)) + ((uint64_t)x44 * x2)))))))))))))))))))))) + (0x1e1 * ((uint64_t)x43 * x43)));
- { uint64_t x47 = ((((uint64_t)x2 * x42) + ((0x2 * ((uint64_t)x4 * x40)) + (((uint64_t)x6 * x38) + (((uint64_t)x8 * x36) + (((uint64_t)x10 * x34) + ((0x2 * ((uint64_t)x12 * x32)) + ((0x2 * ((uint64_t)x14 * x30)) + (((uint64_t)x16 * x28) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + (((uint64_t)x28 * x16) + ((0x2 * ((uint64_t)x30 * x14)) + ((0x2 * ((uint64_t)x32 * x12)) + (((uint64_t)x34 * x10) + (((uint64_t)x36 * x8) + (((uint64_t)x38 * x6) + ((0x2 * ((uint64_t)x40 * x4)) + ((uint64_t)x42 * x2))))))))))))))))))))) + (0x1e1 * (((uint64_t)x44 * x43) + ((uint64_t)x43 * x44))));
- { uint64_t x48 = ((((uint64_t)x2 * x40) + (((uint64_t)x4 * x38) + (((uint64_t)x6 * x36) + (((uint64_t)x8 * x34) + (((uint64_t)x10 * x32) + ((0x2 * ((uint64_t)x12 * x30)) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + ((0x2 * ((uint64_t)x30 * x12)) + (((uint64_t)x32 * x10) + (((uint64_t)x34 * x8) + (((uint64_t)x36 * x6) + (((uint64_t)x38 * x4) + ((uint64_t)x40 * x2)))))))))))))))))))) + (0x1e1 * (((uint64_t)x42 * x43) + (((uint64_t)x44 * x44) + ((uint64_t)x43 * x42)))));
- { uint64_t x49 = ((((uint64_t)x2 * x38) + ((0x2 * ((uint64_t)x4 * x36)) + ((0x2 * ((uint64_t)x6 * x34)) + ((0x2 * ((uint64_t)x8 * x32)) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + ((0x2 * ((uint64_t)x32 * x8)) + ((0x2 * ((uint64_t)x34 * x6)) + ((0x2 * ((uint64_t)x36 * x4)) + ((uint64_t)x38 * x2))))))))))))))))))) + (0x1e1 * ((0x2 * ((uint64_t)x40 * x43)) + ((0x2 * ((uint64_t)x42 * x44)) + ((0x2 * ((uint64_t)x44 * x42)) + (0x2 * ((uint64_t)x43 * x40)))))));
- { uint64_t x50 = ((((uint64_t)x2 * x36) + ((0x2 * ((uint64_t)x4 * x34)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + (((uint64_t)x10 * x28) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + (((uint64_t)x28 * x10) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x36 * x2)))))))))))))))))) + (0x1e1 * (((uint64_t)x38 * x43) + ((0x2 * ((uint64_t)x40 * x44)) + ((0x2 * ((uint64_t)x42 * x42)) + ((0x2 * ((uint64_t)x44 * x40)) + ((uint64_t)x43 * x38)))))));
- { uint64_t x51 = ((((uint64_t)x2 * x34) + ((0x2 * ((uint64_t)x4 * x32)) + ((0x2 * ((uint64_t)x6 * x30)) + (((uint64_t)x8 * x28) + (((uint64_t)x10 * x26) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + (((uint64_t)x26 * x10) + (((uint64_t)x28 * x8) + ((0x2 * ((uint64_t)x30 * x6)) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x34 * x2))))))))))))))))) + (0x1e1 * (((uint64_t)x36 * x43) + (((uint64_t)x38 * x44) + ((0x2 * ((uint64_t)x40 * x42)) + ((0x2 * ((uint64_t)x42 * x40)) + (((uint64_t)x44 * x38) + ((uint64_t)x43 * x36))))))));
- { uint64_t x52 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x1e1 * (((uint64_t)x34 * x43) + (((uint64_t)x36 * x44) + (((uint64_t)x38 * x42) + ((0x2 * ((uint64_t)x40 * x40)) + (((uint64_t)x42 * x38) + (((uint64_t)x44 * x36) + ((uint64_t)x43 * x34)))))))));
- { uint64_t x53 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x1e1 * (((uint64_t)x32 * x43) + (((uint64_t)x34 * x44) + (((uint64_t)x36 * x42) + (((uint64_t)x38 * x40) + (((uint64_t)x40 * x38) + (((uint64_t)x42 * x36) + (((uint64_t)x44 * x34) + ((uint64_t)x43 * x32))))))))));
- { uint64_t x54 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + (((uint64_t)x10 * x20) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + (((uint64_t)x20 * x10) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x1e1 * ((0x2 * ((uint64_t)x30 * x43)) + ((0x2 * ((uint64_t)x32 * x44)) + ((0x2 * ((uint64_t)x34 * x42)) + ((0x2 * ((uint64_t)x36 * x40)) + (((uint64_t)x38 * x38) + ((0x2 * ((uint64_t)x40 * x36)) + ((0x2 * ((uint64_t)x42 * x34)) + ((0x2 * ((uint64_t)x44 * x32)) + (0x2 * ((uint64_t)x43 * x30))))))))))));
- { uint64_t x55 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x1e1 * (((uint64_t)x28 * x43) + ((0x2 * ((uint64_t)x30 * x44)) + ((0x2 * ((uint64_t)x32 * x42)) + ((0x2 * ((uint64_t)x34 * x40)) + (((uint64_t)x36 * x38) + (((uint64_t)x38 * x36) + ((0x2 * ((uint64_t)x40 * x34)) + ((0x2 * ((uint64_t)x42 * x32)) + ((0x2 * ((uint64_t)x44 * x30)) + ((uint64_t)x43 * x28))))))))))));
- { uint64_t x56 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x1e1 * (((uint64_t)x26 * x43) + (((uint64_t)x28 * x44) + ((0x2 * ((uint64_t)x30 * x42)) + ((0x2 * ((uint64_t)x32 * x40)) + (((uint64_t)x34 * x38) + (((uint64_t)x36 * x36) + (((uint64_t)x38 * x34) + ((0x2 * ((uint64_t)x40 * x32)) + ((0x2 * ((uint64_t)x42 * x30)) + (((uint64_t)x44 * x28) + ((uint64_t)x43 * x26)))))))))))));
- { uint64_t x57 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x1e1 * (((uint64_t)x24 * x43) + (((uint64_t)x26 * x44) + (((uint64_t)x28 * x42) + ((0x2 * ((uint64_t)x30 * x40)) + (((uint64_t)x32 * x38) + (((uint64_t)x34 * x36) + (((uint64_t)x36 * x34) + (((uint64_t)x38 * x32) + ((0x2 * ((uint64_t)x40 * x30)) + (((uint64_t)x42 * x28) + (((uint64_t)x44 * x26) + ((uint64_t)x43 * x24))))))))))))));
- { uint64_t x58 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x1e1 * ((0x2 * ((uint64_t)x22 * x43)) + ((0x2 * ((uint64_t)x24 * x44)) + ((0x2 * ((uint64_t)x26 * x42)) + ((0x2 * ((uint64_t)x28 * x40)) + ((0x2 * ((uint64_t)x30 * x38)) + ((0x2 * ((uint64_t)x32 * x36)) + ((0x2 * ((uint64_t)x34 * x34)) + ((0x2 * ((uint64_t)x36 * x32)) + ((0x2 * ((uint64_t)x38 * x30)) + ((0x2 * ((uint64_t)x40 * x28)) + ((0x2 * ((uint64_t)x42 * x26)) + ((0x2 * ((uint64_t)x44 * x24)) + (0x2 * ((uint64_t)x43 * x22))))))))))))))));
- { uint64_t x59 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x1e1 * (((uint64_t)x20 * x43) + ((0x2 * ((uint64_t)x22 * x44)) + ((0x2 * ((uint64_t)x24 * x42)) + ((0x2 * ((uint64_t)x26 * x40)) + (((uint64_t)x28 * x38) + ((0x2 * ((uint64_t)x30 * x36)) + ((0x2 * ((uint64_t)x32 * x34)) + ((0x2 * ((uint64_t)x34 * x32)) + ((0x2 * ((uint64_t)x36 * x30)) + (((uint64_t)x38 * x28) + ((0x2 * ((uint64_t)x40 * x26)) + ((0x2 * ((uint64_t)x42 * x24)) + ((0x2 * ((uint64_t)x44 * x22)) + ((uint64_t)x43 * x20))))))))))))))));
- { uint64_t x60 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x1e1 * (((uint64_t)x18 * x43) + (((uint64_t)x20 * x44) + ((0x2 * ((uint64_t)x22 * x42)) + ((0x2 * ((uint64_t)x24 * x40)) + (((uint64_t)x26 * x38) + (((uint64_t)x28 * x36) + ((0x2 * ((uint64_t)x30 * x34)) + ((0x2 * ((uint64_t)x32 * x32)) + ((0x2 * ((uint64_t)x34 * x30)) + (((uint64_t)x36 * x28) + (((uint64_t)x38 * x26) + ((0x2 * ((uint64_t)x40 * x24)) + ((0x2 * ((uint64_t)x42 * x22)) + (((uint64_t)x44 * x20) + ((uint64_t)x43 * x18)))))))))))))))));
- { uint64_t x61 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x1e1 * (((uint64_t)x16 * x43) + (((uint64_t)x18 * x44) + (((uint64_t)x20 * x42) + ((0x2 * ((uint64_t)x22 * x40)) + (((uint64_t)x24 * x38) + (((uint64_t)x26 * x36) + (((uint64_t)x28 * x34) + ((0x2 * ((uint64_t)x30 * x32)) + ((0x2 * ((uint64_t)x32 * x30)) + (((uint64_t)x34 * x28) + (((uint64_t)x36 * x26) + (((uint64_t)x38 * x24) + ((0x2 * ((uint64_t)x40 * x22)) + (((uint64_t)x42 * x20) + (((uint64_t)x44 * x18) + ((uint64_t)x43 * x16))))))))))))))))));
- { uint64_t x62 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x1e1 * (((uint64_t)x14 * x43) + (((uint64_t)x16 * x44) + (((uint64_t)x18 * x42) + (((uint64_t)x20 * x40) + (((uint64_t)x22 * x38) + (((uint64_t)x24 * x36) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + (((uint64_t)x36 * x24) + (((uint64_t)x38 * x22) + (((uint64_t)x40 * x20) + (((uint64_t)x42 * x18) + (((uint64_t)x44 * x16) + ((uint64_t)x43 * x14)))))))))))))))))));
- { uint64_t x63 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x1e1 * ((0x2 * ((uint64_t)x12 * x43)) + ((0x2 * ((uint64_t)x14 * x44)) + ((0x2 * ((uint64_t)x16 * x42)) + ((0x2 * ((uint64_t)x18 * x40)) + (((uint64_t)x20 * x38) + ((0x2 * ((uint64_t)x22 * x36)) + ((0x2 * ((uint64_t)x24 * x34)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + ((0x2 * ((uint64_t)x34 * x24)) + ((0x2 * ((uint64_t)x36 * x22)) + (((uint64_t)x38 * x20) + ((0x2 * ((uint64_t)x40 * x18)) + ((0x2 * ((uint64_t)x42 * x16)) + ((0x2 * ((uint64_t)x44 * x14)) + (0x2 * ((uint64_t)x43 * x12)))))))))))))))))))));
- { uint64_t x64 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x1e1 * (((uint64_t)x10 * x43) + ((0x2 * ((uint64_t)x12 * x44)) + ((0x2 * ((uint64_t)x14 * x42)) + ((0x2 * ((uint64_t)x16 * x40)) + (((uint64_t)x18 * x38) + (((uint64_t)x20 * x36) + ((0x2 * ((uint64_t)x22 * x34)) + ((0x2 * ((uint64_t)x24 * x32)) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + ((0x2 * ((uint64_t)x32 * x24)) + ((0x2 * ((uint64_t)x34 * x22)) + (((uint64_t)x36 * x20) + (((uint64_t)x38 * x18) + ((0x2 * ((uint64_t)x40 * x16)) + ((0x2 * ((uint64_t)x42 * x14)) + ((0x2 * ((uint64_t)x44 * x12)) + ((uint64_t)x43 * x10)))))))))))))))))))));
- { uint64_t x65 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x1e1 * (((uint64_t)x8 * x43) + (((uint64_t)x10 * x44) + ((0x2 * ((uint64_t)x12 * x42)) + ((0x2 * ((uint64_t)x14 * x40)) + (((uint64_t)x16 * x38) + (((uint64_t)x18 * x36) + (((uint64_t)x20 * x34) + ((0x2 * ((uint64_t)x22 * x32)) + ((0x2 * ((uint64_t)x24 * x30)) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + ((0x2 * ((uint64_t)x30 * x24)) + ((0x2 * ((uint64_t)x32 * x22)) + (((uint64_t)x34 * x20) + (((uint64_t)x36 * x18) + (((uint64_t)x38 * x16) + ((0x2 * ((uint64_t)x40 * x14)) + ((0x2 * ((uint64_t)x42 * x12)) + (((uint64_t)x44 * x10) + ((uint64_t)x43 * x8))))))))))))))))))))));
- { uint64_t x66 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1e1 * (((uint64_t)x6 * x43) + (((uint64_t)x8 * x44) + (((uint64_t)x10 * x42) + ((0x2 * ((uint64_t)x12 * x40)) + (((uint64_t)x14 * x38) + (((uint64_t)x16 * x36) + (((uint64_t)x18 * x34) + (((uint64_t)x20 * x32) + ((0x2 * ((uint64_t)x22 * x30)) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + ((0x2 * ((uint64_t)x30 * x22)) + (((uint64_t)x32 * x20) + (((uint64_t)x34 * x18) + (((uint64_t)x36 * x16) + (((uint64_t)x38 * x14) + ((0x2 * ((uint64_t)x40 * x12)) + (((uint64_t)x42 * x10) + (((uint64_t)x44 * x8) + ((uint64_t)x43 * x6)))))))))))))))))))))));
- { uint64_t x67 = (((uint64_t)x2 * x2) + (0x1e1 * ((0x2 * ((uint64_t)x4 * x43)) + ((0x2 * ((uint64_t)x6 * x44)) + ((0x2 * ((uint64_t)x8 * x42)) + ((0x2 * ((uint64_t)x10 * x40)) + ((0x2 * ((uint64_t)x12 * x38)) + ((0x2 * ((uint64_t)x14 * x36)) + ((0x2 * ((uint64_t)x16 * x34)) + ((0x2 * ((uint64_t)x18 * x32)) + ((0x2 * ((uint64_t)x20 * x30)) + ((0x2 * ((uint64_t)x22 * x28)) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + ((0x2 * ((uint64_t)x28 * x22)) + ((0x2 * ((uint64_t)x30 * x20)) + ((0x2 * ((uint64_t)x32 * x18)) + ((0x2 * ((uint64_t)x34 * x16)) + ((0x2 * ((uint64_t)x36 * x14)) + ((0x2 * ((uint64_t)x38 * x12)) + ((0x2 * ((uint64_t)x40 * x10)) + ((0x2 * ((uint64_t)x42 * x8)) + ((0x2 * ((uint64_t)x44 * x6)) + (0x2 * ((uint64_t)x43 * x4)))))))))))))))))))))))));
- { uint64_t x68 = (x67 >> 0x17);
- { uint32_t x69 = ((uint32_t)x67 & 0x7fffff);
- { uint64_t x70 = (x68 + x66);
- { uint64_t x71 = (x70 >> 0x16);
- { uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- { uint64_t x73 = (x71 + x65);
- { uint64_t x74 = (x73 >> 0x16);
- { uint32_t x75 = ((uint32_t)x73 & 0x3fffff);
- { uint64_t x76 = (x74 + x64);
- { uint64_t x77 = (x76 >> 0x16);
- { uint32_t x78 = ((uint32_t)x76 & 0x3fffff);
- { uint64_t x79 = (x77 + x63);
- { uint64_t x80 = (x79 >> 0x17);
- { uint32_t x81 = ((uint32_t)x79 & 0x7fffff);
- { uint64_t x82 = (x80 + x62);
- { uint64_t x83 = (x82 >> 0x16);
- { uint32_t x84 = ((uint32_t)x82 & 0x3fffff);
- { uint64_t x85 = (x83 + x61);
- { uint64_t x86 = (x85 >> 0x16);
- { uint32_t x87 = ((uint32_t)x85 & 0x3fffff);
- { uint64_t x88 = (x86 + x60);
- { uint64_t x89 = (x88 >> 0x16);
- { uint32_t x90 = ((uint32_t)x88 & 0x3fffff);
- { uint64_t x91 = (x89 + x59);
- { uint64_t x92 = (x91 >> 0x16);
- { uint32_t x93 = ((uint32_t)x91 & 0x3fffff);
- { uint64_t x94 = (x92 + x58);
- { uint64_t x95 = (x94 >> 0x17);
- { uint32_t x96 = ((uint32_t)x94 & 0x7fffff);
- { uint64_t x97 = (x95 + x57);
- { uint64_t x98 = (x97 >> 0x16);
- { uint32_t x99 = ((uint32_t)x97 & 0x3fffff);
- { uint64_t x100 = (x98 + x56);
- { uint64_t x101 = (x100 >> 0x16);
- { uint32_t x102 = ((uint32_t)x100 & 0x3fffff);
- { uint64_t x103 = (x101 + x55);
- { uint64_t x104 = (x103 >> 0x16);
- { uint32_t x105 = ((uint32_t)x103 & 0x3fffff);
- { uint64_t x106 = (x104 + x54);
- { uint64_t x107 = (x106 >> 0x17);
- { uint32_t x108 = ((uint32_t)x106 & 0x7fffff);
- { uint64_t x109 = (x107 + x53);
- { uint64_t x110 = (x109 >> 0x16);
- { uint32_t x111 = ((uint32_t)x109 & 0x3fffff);
- { uint64_t x112 = (x110 + x52);
- { uint64_t x113 = (x112 >> 0x16);
- { uint32_t x114 = ((uint32_t)x112 & 0x3fffff);
- { uint64_t x115 = (x113 + x51);
- { uint64_t x116 = (x115 >> 0x16);
- { uint32_t x117 = ((uint32_t)x115 & 0x3fffff);
- { uint64_t x118 = (x116 + x50);
- { uint64_t x119 = (x118 >> 0x16);
- { uint32_t x120 = ((uint32_t)x118 & 0x3fffff);
- { uint64_t x121 = (x119 + x49);
- { uint64_t x122 = (x121 >> 0x17);
- { uint32_t x123 = ((uint32_t)x121 & 0x7fffff);
- { uint64_t x124 = (x122 + x48);
- { uint64_t x125 = (x124 >> 0x16);
- { uint32_t x126 = ((uint32_t)x124 & 0x3fffff);
- { uint64_t x127 = (x125 + x47);
- { uint64_t x128 = (x127 >> 0x16);
- { uint32_t x129 = ((uint32_t)x127 & 0x3fffff);
- { uint64_t x130 = (x128 + x46);
- { uint64_t x131 = (x130 >> 0x16);
- { uint32_t x132 = ((uint32_t)x130 & 0x3fffff);
- { uint64_t x133 = (x131 + x45);
- { uint32_t x134 = (uint32_t) (x133 >> 0x16);
- { uint32_t x135 = ((uint32_t)x133 & 0x3fffff);
- { uint64_t x136 = (x69 + ((uint64_t)0x1e1 * x134));
- { uint32_t x137 = (uint32_t) (x136 >> 0x17);
- { uint32_t x138 = ((uint32_t)x136 & 0x7fffff);
- { uint32_t x139 = (x137 + x72);
- { uint32_t x140 = (x139 >> 0x16);
- { uint32_t x141 = (x139 & 0x3fffff);
- out[0] = x138;
- out[1] = x141;
- out[2] = (x140 + x75);
- out[3] = x78;
- out[4] = x81;
- out[5] = x84;
- out[6] = x87;
- out[7] = x90;
- out[8] = x93;
- out[9] = x96;
- out[10] = x99;
- out[11] = x102;
- out[12] = x105;
- out[13] = x108;
- out[14] = x111;
- out[15] = x114;
- out[16] = x117;
- out[17] = x120;
- out[18] = x123;
- out[19] = x126;
- out[20] = x129;
- out[21] = x132;
- out[22] = x135;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e511m481_23limbs/fesquare.v b/src/Specific/solinas32_2e511m481_23limbs/fesquare.v
deleted file mode 100644
index 453b4bac6..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e511m481_23limbs.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_2e511m481_23limbs/fesquareDisplay.log b/src/Specific/solinas32_2e511m481_23limbs/fesquareDisplay.log
deleted file mode 100644
index 8e9a96339..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,104 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x43, x44, x42, x40, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x45 = (((uint64_t)x2 * x43) + ((0x2 * ((uint64_t)x4 * x44)) + ((0x2 * ((uint64_t)x6 * x42)) + ((0x2 * ((uint64_t)x8 * x40)) + (((uint64_t)x10 * x38) + ((0x2 * ((uint64_t)x12 * x36)) + ((0x2 * ((uint64_t)x14 * x34)) + ((0x2 * ((uint64_t)x16 * x32)) + ((0x2 * ((uint64_t)x18 * x30)) + (((uint64_t)x20 * x28) + ((0x2 * ((uint64_t)x22 * x26)) + ((0x2 * ((uint64_t)x24 * x24)) + ((0x2 * ((uint64_t)x26 * x22)) + (((uint64_t)x28 * x20) + ((0x2 * ((uint64_t)x30 * x18)) + ((0x2 * ((uint64_t)x32 * x16)) + ((0x2 * ((uint64_t)x34 * x14)) + ((0x2 * ((uint64_t)x36 * x12)) + (((uint64_t)x38 * x10) + ((0x2 * ((uint64_t)x40 * x8)) + ((0x2 * ((uint64_t)x42 * x6)) + ((0x2 * ((uint64_t)x44 * x4)) + ((uint64_t)x43 * x2)))))))))))))))))))))));
- uint64_t x46 = ((((uint64_t)x2 * x44) + ((0x2 * ((uint64_t)x4 * x42)) + ((0x2 * ((uint64_t)x6 * x40)) + (((uint64_t)x8 * x38) + (((uint64_t)x10 * x36) + ((0x2 * ((uint64_t)x12 * x34)) + ((0x2 * ((uint64_t)x14 * x32)) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + ((0x2 * ((uint64_t)x32 * x14)) + ((0x2 * ((uint64_t)x34 * x12)) + (((uint64_t)x36 * x10) + (((uint64_t)x38 * x8) + ((0x2 * ((uint64_t)x40 * x6)) + ((0x2 * ((uint64_t)x42 * x4)) + ((uint64_t)x44 * x2)))))))))))))))))))))) + (0x1e1 * ((uint64_t)x43 * x43)));
- uint64_t x47 = ((((uint64_t)x2 * x42) + ((0x2 * ((uint64_t)x4 * x40)) + (((uint64_t)x6 * x38) + (((uint64_t)x8 * x36) + (((uint64_t)x10 * x34) + ((0x2 * ((uint64_t)x12 * x32)) + ((0x2 * ((uint64_t)x14 * x30)) + (((uint64_t)x16 * x28) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + (((uint64_t)x28 * x16) + ((0x2 * ((uint64_t)x30 * x14)) + ((0x2 * ((uint64_t)x32 * x12)) + (((uint64_t)x34 * x10) + (((uint64_t)x36 * x8) + (((uint64_t)x38 * x6) + ((0x2 * ((uint64_t)x40 * x4)) + ((uint64_t)x42 * x2))))))))))))))))))))) + (0x1e1 * (((uint64_t)x44 * x43) + ((uint64_t)x43 * x44))));
- uint64_t x48 = ((((uint64_t)x2 * x40) + (((uint64_t)x4 * x38) + (((uint64_t)x6 * x36) + (((uint64_t)x8 * x34) + (((uint64_t)x10 * x32) + ((0x2 * ((uint64_t)x12 * x30)) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + ((0x2 * ((uint64_t)x30 * x12)) + (((uint64_t)x32 * x10) + (((uint64_t)x34 * x8) + (((uint64_t)x36 * x6) + (((uint64_t)x38 * x4) + ((uint64_t)x40 * x2)))))))))))))))))))) + (0x1e1 * (((uint64_t)x42 * x43) + (((uint64_t)x44 * x44) + ((uint64_t)x43 * x42)))));
- uint64_t x49 = ((((uint64_t)x2 * x38) + ((0x2 * ((uint64_t)x4 * x36)) + ((0x2 * ((uint64_t)x6 * x34)) + ((0x2 * ((uint64_t)x8 * x32)) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + ((0x2 * ((uint64_t)x32 * x8)) + ((0x2 * ((uint64_t)x34 * x6)) + ((0x2 * ((uint64_t)x36 * x4)) + ((uint64_t)x38 * x2))))))))))))))))))) + (0x1e1 * ((0x2 * ((uint64_t)x40 * x43)) + ((0x2 * ((uint64_t)x42 * x44)) + ((0x2 * ((uint64_t)x44 * x42)) + (0x2 * ((uint64_t)x43 * x40)))))));
- uint64_t x50 = ((((uint64_t)x2 * x36) + ((0x2 * ((uint64_t)x4 * x34)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + (((uint64_t)x10 * x28) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + (((uint64_t)x28 * x10) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x36 * x2)))))))))))))))))) + (0x1e1 * (((uint64_t)x38 * x43) + ((0x2 * ((uint64_t)x40 * x44)) + ((0x2 * ((uint64_t)x42 * x42)) + ((0x2 * ((uint64_t)x44 * x40)) + ((uint64_t)x43 * x38)))))));
- uint64_t x51 = ((((uint64_t)x2 * x34) + ((0x2 * ((uint64_t)x4 * x32)) + ((0x2 * ((uint64_t)x6 * x30)) + (((uint64_t)x8 * x28) + (((uint64_t)x10 * x26) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + (((uint64_t)x26 * x10) + (((uint64_t)x28 * x8) + ((0x2 * ((uint64_t)x30 * x6)) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x34 * x2))))))))))))))))) + (0x1e1 * (((uint64_t)x36 * x43) + (((uint64_t)x38 * x44) + ((0x2 * ((uint64_t)x40 * x42)) + ((0x2 * ((uint64_t)x42 * x40)) + (((uint64_t)x44 * x38) + ((uint64_t)x43 * x36))))))));
- uint64_t x52 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x1e1 * (((uint64_t)x34 * x43) + (((uint64_t)x36 * x44) + (((uint64_t)x38 * x42) + ((0x2 * ((uint64_t)x40 * x40)) + (((uint64_t)x42 * x38) + (((uint64_t)x44 * x36) + ((uint64_t)x43 * x34)))))))));
- uint64_t x53 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + (((uint64_t)x16 * x16) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x1e1 * (((uint64_t)x32 * x43) + (((uint64_t)x34 * x44) + (((uint64_t)x36 * x42) + (((uint64_t)x38 * x40) + (((uint64_t)x40 * x38) + (((uint64_t)x42 * x36) + (((uint64_t)x44 * x34) + ((uint64_t)x43 * x32))))))))));
- uint64_t x54 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + (((uint64_t)x10 * x20) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + (((uint64_t)x20 * x10) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x1e1 * ((0x2 * ((uint64_t)x30 * x43)) + ((0x2 * ((uint64_t)x32 * x44)) + ((0x2 * ((uint64_t)x34 * x42)) + ((0x2 * ((uint64_t)x36 * x40)) + (((uint64_t)x38 * x38) + ((0x2 * ((uint64_t)x40 * x36)) + ((0x2 * ((uint64_t)x42 * x34)) + ((0x2 * ((uint64_t)x44 * x32)) + (0x2 * ((uint64_t)x43 * x30))))))))))));
- uint64_t x55 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x1e1 * (((uint64_t)x28 * x43) + ((0x2 * ((uint64_t)x30 * x44)) + ((0x2 * ((uint64_t)x32 * x42)) + ((0x2 * ((uint64_t)x34 * x40)) + (((uint64_t)x36 * x38) + (((uint64_t)x38 * x36) + ((0x2 * ((uint64_t)x40 * x34)) + ((0x2 * ((uint64_t)x42 * x32)) + ((0x2 * ((uint64_t)x44 * x30)) + ((uint64_t)x43 * x28))))))))))));
- uint64_t x56 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x1e1 * (((uint64_t)x26 * x43) + (((uint64_t)x28 * x44) + ((0x2 * ((uint64_t)x30 * x42)) + ((0x2 * ((uint64_t)x32 * x40)) + (((uint64_t)x34 * x38) + (((uint64_t)x36 * x36) + (((uint64_t)x38 * x34) + ((0x2 * ((uint64_t)x40 * x32)) + ((0x2 * ((uint64_t)x42 * x30)) + (((uint64_t)x44 * x28) + ((uint64_t)x43 * x26)))))))))))));
- uint64_t x57 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x1e1 * (((uint64_t)x24 * x43) + (((uint64_t)x26 * x44) + (((uint64_t)x28 * x42) + ((0x2 * ((uint64_t)x30 * x40)) + (((uint64_t)x32 * x38) + (((uint64_t)x34 * x36) + (((uint64_t)x36 * x34) + (((uint64_t)x38 * x32) + ((0x2 * ((uint64_t)x40 * x30)) + (((uint64_t)x42 * x28) + (((uint64_t)x44 * x26) + ((uint64_t)x43 * x24))))))))))))));
- uint64_t x58 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x1e1 * ((0x2 * ((uint64_t)x22 * x43)) + ((0x2 * ((uint64_t)x24 * x44)) + ((0x2 * ((uint64_t)x26 * x42)) + ((0x2 * ((uint64_t)x28 * x40)) + ((0x2 * ((uint64_t)x30 * x38)) + ((0x2 * ((uint64_t)x32 * x36)) + ((0x2 * ((uint64_t)x34 * x34)) + ((0x2 * ((uint64_t)x36 * x32)) + ((0x2 * ((uint64_t)x38 * x30)) + ((0x2 * ((uint64_t)x40 * x28)) + ((0x2 * ((uint64_t)x42 * x26)) + ((0x2 * ((uint64_t)x44 * x24)) + (0x2 * ((uint64_t)x43 * x22))))))))))))))));
- uint64_t x59 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x1e1 * (((uint64_t)x20 * x43) + ((0x2 * ((uint64_t)x22 * x44)) + ((0x2 * ((uint64_t)x24 * x42)) + ((0x2 * ((uint64_t)x26 * x40)) + (((uint64_t)x28 * x38) + ((0x2 * ((uint64_t)x30 * x36)) + ((0x2 * ((uint64_t)x32 * x34)) + ((0x2 * ((uint64_t)x34 * x32)) + ((0x2 * ((uint64_t)x36 * x30)) + (((uint64_t)x38 * x28) + ((0x2 * ((uint64_t)x40 * x26)) + ((0x2 * ((uint64_t)x42 * x24)) + ((0x2 * ((uint64_t)x44 * x22)) + ((uint64_t)x43 * x20))))))))))))))));
- uint64_t x60 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (0x1e1 * (((uint64_t)x18 * x43) + (((uint64_t)x20 * x44) + ((0x2 * ((uint64_t)x22 * x42)) + ((0x2 * ((uint64_t)x24 * x40)) + (((uint64_t)x26 * x38) + (((uint64_t)x28 * x36) + ((0x2 * ((uint64_t)x30 * x34)) + ((0x2 * ((uint64_t)x32 * x32)) + ((0x2 * ((uint64_t)x34 * x30)) + (((uint64_t)x36 * x28) + (((uint64_t)x38 * x26) + ((0x2 * ((uint64_t)x40 * x24)) + ((0x2 * ((uint64_t)x42 * x22)) + (((uint64_t)x44 * x20) + ((uint64_t)x43 * x18)))))))))))))))));
- uint64_t x61 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + (((uint64_t)x8 * x8) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x1e1 * (((uint64_t)x16 * x43) + (((uint64_t)x18 * x44) + (((uint64_t)x20 * x42) + ((0x2 * ((uint64_t)x22 * x40)) + (((uint64_t)x24 * x38) + (((uint64_t)x26 * x36) + (((uint64_t)x28 * x34) + ((0x2 * ((uint64_t)x30 * x32)) + ((0x2 * ((uint64_t)x32 * x30)) + (((uint64_t)x34 * x28) + (((uint64_t)x36 * x26) + (((uint64_t)x38 * x24) + ((0x2 * ((uint64_t)x40 * x22)) + (((uint64_t)x42 * x20) + (((uint64_t)x44 * x18) + ((uint64_t)x43 * x16))))))))))))))))));
- uint64_t x62 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x1e1 * (((uint64_t)x14 * x43) + (((uint64_t)x16 * x44) + (((uint64_t)x18 * x42) + (((uint64_t)x20 * x40) + (((uint64_t)x22 * x38) + (((uint64_t)x24 * x36) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + (((uint64_t)x36 * x24) + (((uint64_t)x38 * x22) + (((uint64_t)x40 * x20) + (((uint64_t)x42 * x18) + (((uint64_t)x44 * x16) + ((uint64_t)x43 * x14)))))))))))))))))));
- uint64_t x63 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x1e1 * ((0x2 * ((uint64_t)x12 * x43)) + ((0x2 * ((uint64_t)x14 * x44)) + ((0x2 * ((uint64_t)x16 * x42)) + ((0x2 * ((uint64_t)x18 * x40)) + (((uint64_t)x20 * x38) + ((0x2 * ((uint64_t)x22 * x36)) + ((0x2 * ((uint64_t)x24 * x34)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + ((0x2 * ((uint64_t)x34 * x24)) + ((0x2 * ((uint64_t)x36 * x22)) + (((uint64_t)x38 * x20) + ((0x2 * ((uint64_t)x40 * x18)) + ((0x2 * ((uint64_t)x42 * x16)) + ((0x2 * ((uint64_t)x44 * x14)) + (0x2 * ((uint64_t)x43 * x12)))))))))))))))))))));
- uint64_t x64 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x1e1 * (((uint64_t)x10 * x43) + ((0x2 * ((uint64_t)x12 * x44)) + ((0x2 * ((uint64_t)x14 * x42)) + ((0x2 * ((uint64_t)x16 * x40)) + (((uint64_t)x18 * x38) + (((uint64_t)x20 * x36) + ((0x2 * ((uint64_t)x22 * x34)) + ((0x2 * ((uint64_t)x24 * x32)) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + ((0x2 * ((uint64_t)x32 * x24)) + ((0x2 * ((uint64_t)x34 * x22)) + (((uint64_t)x36 * x20) + (((uint64_t)x38 * x18) + ((0x2 * ((uint64_t)x40 * x16)) + ((0x2 * ((uint64_t)x42 * x14)) + ((0x2 * ((uint64_t)x44 * x12)) + ((uint64_t)x43 * x10)))))))))))))))))))));
- uint64_t x65 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x1e1 * (((uint64_t)x8 * x43) + (((uint64_t)x10 * x44) + ((0x2 * ((uint64_t)x12 * x42)) + ((0x2 * ((uint64_t)x14 * x40)) + (((uint64_t)x16 * x38) + (((uint64_t)x18 * x36) + (((uint64_t)x20 * x34) + ((0x2 * ((uint64_t)x22 * x32)) + ((0x2 * ((uint64_t)x24 * x30)) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + ((0x2 * ((uint64_t)x30 * x24)) + ((0x2 * ((uint64_t)x32 * x22)) + (((uint64_t)x34 * x20) + (((uint64_t)x36 * x18) + (((uint64_t)x38 * x16) + ((0x2 * ((uint64_t)x40 * x14)) + ((0x2 * ((uint64_t)x42 * x12)) + (((uint64_t)x44 * x10) + ((uint64_t)x43 * x8))))))))))))))))))))));
- uint64_t x66 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1e1 * (((uint64_t)x6 * x43) + (((uint64_t)x8 * x44) + (((uint64_t)x10 * x42) + ((0x2 * ((uint64_t)x12 * x40)) + (((uint64_t)x14 * x38) + (((uint64_t)x16 * x36) + (((uint64_t)x18 * x34) + (((uint64_t)x20 * x32) + ((0x2 * ((uint64_t)x22 * x30)) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + ((0x2 * ((uint64_t)x30 * x22)) + (((uint64_t)x32 * x20) + (((uint64_t)x34 * x18) + (((uint64_t)x36 * x16) + (((uint64_t)x38 * x14) + ((0x2 * ((uint64_t)x40 * x12)) + (((uint64_t)x42 * x10) + (((uint64_t)x44 * x8) + ((uint64_t)x43 * x6)))))))))))))))))))))));
- uint64_t x67 = (((uint64_t)x2 * x2) + (0x1e1 * ((0x2 * ((uint64_t)x4 * x43)) + ((0x2 * ((uint64_t)x6 * x44)) + ((0x2 * ((uint64_t)x8 * x42)) + ((0x2 * ((uint64_t)x10 * x40)) + ((0x2 * ((uint64_t)x12 * x38)) + ((0x2 * ((uint64_t)x14 * x36)) + ((0x2 * ((uint64_t)x16 * x34)) + ((0x2 * ((uint64_t)x18 * x32)) + ((0x2 * ((uint64_t)x20 * x30)) + ((0x2 * ((uint64_t)x22 * x28)) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + ((0x2 * ((uint64_t)x28 * x22)) + ((0x2 * ((uint64_t)x30 * x20)) + ((0x2 * ((uint64_t)x32 * x18)) + ((0x2 * ((uint64_t)x34 * x16)) + ((0x2 * ((uint64_t)x36 * x14)) + ((0x2 * ((uint64_t)x38 * x12)) + ((0x2 * ((uint64_t)x40 * x10)) + ((0x2 * ((uint64_t)x42 * x8)) + ((0x2 * ((uint64_t)x44 * x6)) + (0x2 * ((uint64_t)x43 * x4)))))))))))))))))))))))));
- uint64_t x68 = (x67 >> 0x17);
- uint32_t x69 = ((uint32_t)x67 & 0x7fffff);
- uint64_t x70 = (x68 + x66);
- uint64_t x71 = (x70 >> 0x16);
- uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- uint64_t x73 = (x71 + x65);
- uint64_t x74 = (x73 >> 0x16);
- uint32_t x75 = ((uint32_t)x73 & 0x3fffff);
- uint64_t x76 = (x74 + x64);
- uint64_t x77 = (x76 >> 0x16);
- uint32_t x78 = ((uint32_t)x76 & 0x3fffff);
- uint64_t x79 = (x77 + x63);
- uint64_t x80 = (x79 >> 0x17);
- uint32_t x81 = ((uint32_t)x79 & 0x7fffff);
- uint64_t x82 = (x80 + x62);
- uint64_t x83 = (x82 >> 0x16);
- uint32_t x84 = ((uint32_t)x82 & 0x3fffff);
- uint64_t x85 = (x83 + x61);
- uint64_t x86 = (x85 >> 0x16);
- uint32_t x87 = ((uint32_t)x85 & 0x3fffff);
- uint64_t x88 = (x86 + x60);
- uint64_t x89 = (x88 >> 0x16);
- uint32_t x90 = ((uint32_t)x88 & 0x3fffff);
- uint64_t x91 = (x89 + x59);
- uint64_t x92 = (x91 >> 0x16);
- uint32_t x93 = ((uint32_t)x91 & 0x3fffff);
- uint64_t x94 = (x92 + x58);
- uint64_t x95 = (x94 >> 0x17);
- uint32_t x96 = ((uint32_t)x94 & 0x7fffff);
- uint64_t x97 = (x95 + x57);
- uint64_t x98 = (x97 >> 0x16);
- uint32_t x99 = ((uint32_t)x97 & 0x3fffff);
- uint64_t x100 = (x98 + x56);
- uint64_t x101 = (x100 >> 0x16);
- uint32_t x102 = ((uint32_t)x100 & 0x3fffff);
- uint64_t x103 = (x101 + x55);
- uint64_t x104 = (x103 >> 0x16);
- uint32_t x105 = ((uint32_t)x103 & 0x3fffff);
- uint64_t x106 = (x104 + x54);
- uint64_t x107 = (x106 >> 0x17);
- uint32_t x108 = ((uint32_t)x106 & 0x7fffff);
- uint64_t x109 = (x107 + x53);
- uint64_t x110 = (x109 >> 0x16);
- uint32_t x111 = ((uint32_t)x109 & 0x3fffff);
- uint64_t x112 = (x110 + x52);
- uint64_t x113 = (x112 >> 0x16);
- uint32_t x114 = ((uint32_t)x112 & 0x3fffff);
- uint64_t x115 = (x113 + x51);
- uint64_t x116 = (x115 >> 0x16);
- uint32_t x117 = ((uint32_t)x115 & 0x3fffff);
- uint64_t x118 = (x116 + x50);
- uint64_t x119 = (x118 >> 0x16);
- uint32_t x120 = ((uint32_t)x118 & 0x3fffff);
- uint64_t x121 = (x119 + x49);
- uint64_t x122 = (x121 >> 0x17);
- uint32_t x123 = ((uint32_t)x121 & 0x7fffff);
- uint64_t x124 = (x122 + x48);
- uint64_t x125 = (x124 >> 0x16);
- uint32_t x126 = ((uint32_t)x124 & 0x3fffff);
- uint64_t x127 = (x125 + x47);
- uint64_t x128 = (x127 >> 0x16);
- uint32_t x129 = ((uint32_t)x127 & 0x3fffff);
- uint64_t x130 = (x128 + x46);
- uint64_t x131 = (x130 >> 0x16);
- uint32_t x132 = ((uint32_t)x130 & 0x3fffff);
- uint64_t x133 = (x131 + x45);
- uint32_t x134 = (uint32_t) (x133 >> 0x16);
- uint32_t x135 = ((uint32_t)x133 & 0x3fffff);
- uint64_t x136 = (x69 + ((uint64_t)0x1e1 * x134));
- uint32_t x137 = (uint32_t) (x136 >> 0x17);
- uint32_t x138 = ((uint32_t)x136 & 0x7fffff);
- uint32_t x139 = (x137 + x72);
- uint32_t x140 = (x139 >> 0x16);
- uint32_t x141 = (x139 & 0x3fffff);
- return (Return x135, Return x132, Return x129, Return x126, Return x123, Return x120, Return x117, Return x114, Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, (x140 + x75), Return x141, Return x138))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e511m481_23limbs/fesquareDisplay.v b/src/Specific/solinas32_2e511m481_23limbs/fesquareDisplay.v
deleted file mode 100644
index 36824d5af..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e511m481_23limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e511m481_23limbs/fesub.c b/src/Specific/solinas32_2e511m481_23limbs/fesub.c
deleted file mode 100644
index e770c9238..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/fesub.c
+++ /dev/null
@@ -1,72 +0,0 @@
-static void fesub(uint32_t out[23], const uint32_t in1[23], const uint32_t in2[23]) {
- { const uint32_t x46 = in1[22];
- { const uint32_t x47 = in1[21];
- { const uint32_t x45 = in1[20];
- { const uint32_t x43 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x90 = in2[22];
- { const uint32_t x91 = in2[21];
- { const uint32_t x89 = in2[20];
- { const uint32_t x87 = in2[19];
- { const uint32_t x85 = in2[18];
- { const uint32_t x83 = in2[17];
- { const uint32_t x81 = in2[16];
- { const uint32_t x79 = in2[15];
- { const uint32_t x77 = in2[14];
- { const uint32_t x75 = in2[13];
- { const uint32_t x73 = in2[12];
- { const uint32_t x71 = in2[11];
- { const uint32_t x69 = in2[10];
- { const uint32_t x67 = in2[9];
- { const uint32_t x65 = in2[8];
- { const uint32_t x63 = in2[7];
- { const uint32_t x61 = in2[6];
- { const uint32_t x59 = in2[5];
- { const uint32_t x57 = in2[4];
- { const uint32_t x55 = in2[3];
- { const uint32_t x53 = in2[2];
- { const uint32_t x51 = in2[1];
- { const uint32_t x49 = in2[0];
- out[0] = ((0xfffc3e + x5) - x49);
- out[1] = ((0x7ffffe + x7) - x51);
- out[2] = ((0x7ffffe + x9) - x53);
- out[3] = ((0x7ffffe + x11) - x55);
- out[4] = ((0xfffffe + x13) - x57);
- out[5] = ((0x7ffffe + x15) - x59);
- out[6] = ((0x7ffffe + x17) - x61);
- out[7] = ((0x7ffffe + x19) - x63);
- out[8] = ((0x7ffffe + x21) - x65);
- out[9] = ((0xfffffe + x23) - x67);
- out[10] = ((0x7ffffe + x25) - x69);
- out[11] = ((0x7ffffe + x27) - x71);
- out[12] = ((0x7ffffe + x29) - x73);
- out[13] = ((0xfffffe + x31) - x75);
- out[14] = ((0x7ffffe + x33) - x77);
- out[15] = ((0x7ffffe + x35) - x79);
- out[16] = ((0x7ffffe + x37) - x81);
- out[17] = ((0x7ffffe + x39) - x83);
- out[18] = ((0xfffffe + x41) - x85);
- out[19] = ((0x7ffffe + x43) - x87);
- out[20] = ((0x7ffffe + x45) - x89);
- out[21] = ((0x7ffffe + x47) - x91);
- out[22] = ((0x7ffffe + x46) - x90);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e511m481_23limbs/fesub.v b/src/Specific/solinas32_2e511m481_23limbs/fesub.v
deleted file mode 100644
index d168af4b3..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e511m481_23limbs.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_2e511m481_23limbs/fesubDisplay.log b/src/Specific/solinas32_2e511m481_23limbs/fesubDisplay.log
deleted file mode 100644
index e8081c601..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x46, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x90, x91, x89, x87, x85, x83, x81, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49))%core,
- (((0x7ffffe + x46) - x90), ((0x7ffffe + x47) - x91), ((0x7ffffe + x45) - x89), ((0x7ffffe + x43) - x87), ((0xfffffe + x41) - x85), ((0x7ffffe + x39) - x83), ((0x7ffffe + x37) - x81), ((0x7ffffe + x35) - x79), ((0x7ffffe + x33) - x77), ((0xfffffe + x31) - x75), ((0x7ffffe + x29) - x73), ((0x7ffffe + x27) - x71), ((0x7ffffe + x25) - x69), ((0xfffffe + x23) - x67), ((0x7ffffe + x21) - x65), ((0x7ffffe + x19) - x63), ((0x7ffffe + x17) - x61), ((0x7ffffe + x15) - x59), ((0xfffffe + x13) - x57), ((0x7ffffe + x11) - x55), ((0x7ffffe + x9) - x53), ((0x7ffffe + x7) - x51), ((0xfffc3e + x5) - x49)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e511m481_23limbs/fesubDisplay.v b/src/Specific/solinas32_2e511m481_23limbs/fesubDisplay.v
deleted file mode 100644
index f1c244b04..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e511m481_23limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e511m481_23limbs/freeze.c b/src/Specific/solinas32_2e511m481_23limbs/freeze.c
deleted file mode 100644
index bc421e9e4..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/freeze.c
+++ /dev/null
@@ -1,119 +0,0 @@
-static void freeze(uint32_t out[23], const uint32_t in1[23]) {
- { const uint32_t x43 = in1[22];
- { const uint32_t x44 = in1[21];
- { const uint32_t x42 = in1[20];
- { const uint32_t x40 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffe1f);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x4, 0x3fffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x6, 0x3fffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x8, 0x3fffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x10, 0x7fffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x12, 0x3fffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x14, 0x3fffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x16, 0x3fffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x18, 0x3fffff);
- { uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x20, 0x7fffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x22, 0x3fffff);
- { uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x24, 0x3fffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x26, 0x3fffff);
- { uint32_t x85, uint8_t x86 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x28, 0x7fffff);
- { uint32_t x88, uint8_t x89 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x30, 0x3fffff);
- { uint32_t x91, uint8_t x92 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x89, Return x32, 0x3fffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x34, 0x3fffff);
- { uint32_t x97, uint8_t x98 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x36, 0x3fffff);
- { uint32_t x100, uint8_t x101 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x98, Return x38, 0x7fffff);
- { uint32_t x103, uint8_t x104 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x40, 0x3fffff);
- { uint32_t x106, uint8_t x107 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x42, 0x3fffff);
- { uint32_t x109, uint8_t x110 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x44, 0x3fffff);
- { uint32_t x112, uint8_t x113 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x110, Return x43, 0x3fffff);
- { uint32_t x114 = cmovznz32(x113, 0x0, 0xffffffff);
- { uint32_t x115 = (x114 & 0x7ffe1f);
- { uint32_t x117, uint8_t x118 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x46, Return x115);
- { uint32_t x119 = (x114 & 0x3fffff);
- { uint32_t x121, uint8_t x122 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x118, Return x49, Return x119);
- { uint32_t x123 = (x114 & 0x3fffff);
- { uint32_t x125, uint8_t x126 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x122, Return x52, Return x123);
- { uint32_t x127 = (x114 & 0x3fffff);
- { uint32_t x129, uint8_t x130 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x126, Return x55, Return x127);
- { uint32_t x131 = (x114 & 0x7fffff);
- { uint32_t x133, uint8_t x134 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x130, Return x58, Return x131);
- { uint32_t x135 = (x114 & 0x3fffff);
- { uint32_t x137, uint8_t x138 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x134, Return x61, Return x135);
- { uint32_t x139 = (x114 & 0x3fffff);
- { uint32_t x141, uint8_t x142 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x138, Return x64, Return x139);
- { uint32_t x143 = (x114 & 0x3fffff);
- { uint32_t x145, uint8_t x146 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x142, Return x67, Return x143);
- { uint32_t x147 = (x114 & 0x3fffff);
- { uint32_t x149, uint8_t x150 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x146, Return x70, Return x147);
- { uint32_t x151 = (x114 & 0x7fffff);
- { uint32_t x153, uint8_t x154 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x150, Return x73, Return x151);
- { uint32_t x155 = (x114 & 0x3fffff);
- { uint32_t x157, uint8_t x158 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x154, Return x76, Return x155);
- { uint32_t x159 = (x114 & 0x3fffff);
- { uint32_t x161, uint8_t x162 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x158, Return x79, Return x159);
- { uint32_t x163 = (x114 & 0x3fffff);
- { uint32_t x165, uint8_t x166 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x162, Return x82, Return x163);
- { uint32_t x167 = (x114 & 0x7fffff);
- { uint32_t x169, uint8_t x170 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x166, Return x85, Return x167);
- { uint32_t x171 = (x114 & 0x3fffff);
- { uint32_t x173, uint8_t x174 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x170, Return x88, Return x171);
- { uint32_t x175 = (x114 & 0x3fffff);
- { uint32_t x177, uint8_t x178 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x174, Return x91, Return x175);
- { uint32_t x179 = (x114 & 0x3fffff);
- { uint32_t x181, uint8_t x182 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x178, Return x94, Return x179);
- { uint32_t x183 = (x114 & 0x3fffff);
- { uint32_t x185, uint8_t x186 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x182, Return x97, Return x183);
- { uint32_t x187 = (x114 & 0x7fffff);
- { uint32_t x189, uint8_t x190 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x186, Return x100, Return x187);
- { uint32_t x191 = (x114 & 0x3fffff);
- { uint32_t x193, uint8_t x194 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x190, Return x103, Return x191);
- { uint32_t x195 = (x114 & 0x3fffff);
- { uint32_t x197, uint8_t x198 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x194, Return x106, Return x195);
- { uint32_t x199 = (x114 & 0x3fffff);
- { uint32_t x201, uint8_t x202 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x198, Return x109, Return x199);
- { uint32_t x203 = (x114 & 0x3fffff);
- { uint32_t x205, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x202, Return x112, Return x203);
- out[0] = x117;
- out[1] = x121;
- out[2] = x125;
- out[3] = x129;
- out[4] = x133;
- out[5] = x137;
- out[6] = x141;
- out[7] = x145;
- out[8] = x149;
- out[9] = x153;
- out[10] = x157;
- out[11] = x161;
- out[12] = x165;
- out[13] = x169;
- out[14] = x173;
- out[15] = x177;
- out[16] = x181;
- out[17] = x185;
- out[18] = x189;
- out[19] = x193;
- out[20] = x197;
- out[21] = x201;
- out[22] = x205;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e511m481_23limbs/freeze.v b/src/Specific/solinas32_2e511m481_23limbs/freeze.v
deleted file mode 100644
index 006b005d8..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e511m481_23limbs.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_2e511m481_23limbs/freezeDisplay.log b/src/Specific/solinas32_2e511m481_23limbs/freezeDisplay.log
deleted file mode 100644
index de1f9e30a..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/freezeDisplay.log
+++ /dev/null
@@ -1,77 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x43, x44, x42, x40, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffe1f);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x4, 0x3fffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x6, 0x3fffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x8, 0x3fffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x10, 0x7fffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x12, 0x3fffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x14, 0x3fffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x16, 0x3fffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x18, 0x3fffff);
- uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x20, 0x7fffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x22, 0x3fffff);
- uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x24, 0x3fffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x26, 0x3fffff);
- uint32_t x85, uint8_t x86 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x28, 0x7fffff);
- uint32_t x88, uint8_t x89 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x30, 0x3fffff);
- uint32_t x91, uint8_t x92 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x89, Return x32, 0x3fffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x34, 0x3fffff);
- uint32_t x97, uint8_t x98 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x36, 0x3fffff);
- uint32_t x100, uint8_t x101 = Op (Syntax.SubWithGetBorrow 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x98, Return x38, 0x7fffff);
- uint32_t x103, uint8_t x104 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x101, Return x40, 0x3fffff);
- uint32_t x106, uint8_t x107 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x104, Return x42, 0x3fffff);
- uint32_t x109, uint8_t x110 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x44, 0x3fffff);
- uint32_t x112, uint8_t x113 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x110, Return x43, 0x3fffff);
- uint32_t x114 = cmovznz32(x113, 0x0, 0xffffffff);
- uint32_t x115 = (x114 & 0x7ffe1f);
- uint32_t x117, uint8_t x118 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x46, Return x115);
- uint32_t x119 = (x114 & 0x3fffff);
- uint32_t x121, uint8_t x122 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x118, Return x49, Return x119);
- uint32_t x123 = (x114 & 0x3fffff);
- uint32_t x125, uint8_t x126 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x122, Return x52, Return x123);
- uint32_t x127 = (x114 & 0x3fffff);
- uint32_t x129, uint8_t x130 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x126, Return x55, Return x127);
- uint32_t x131 = (x114 & 0x7fffff);
- uint32_t x133, uint8_t x134 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x130, Return x58, Return x131);
- uint32_t x135 = (x114 & 0x3fffff);
- uint32_t x137, uint8_t x138 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x134, Return x61, Return x135);
- uint32_t x139 = (x114 & 0x3fffff);
- uint32_t x141, uint8_t x142 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x138, Return x64, Return x139);
- uint32_t x143 = (x114 & 0x3fffff);
- uint32_t x145, uint8_t x146 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x142, Return x67, Return x143);
- uint32_t x147 = (x114 & 0x3fffff);
- uint32_t x149, uint8_t x150 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x146, Return x70, Return x147);
- uint32_t x151 = (x114 & 0x7fffff);
- uint32_t x153, uint8_t x154 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x150, Return x73, Return x151);
- uint32_t x155 = (x114 & 0x3fffff);
- uint32_t x157, uint8_t x158 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x154, Return x76, Return x155);
- uint32_t x159 = (x114 & 0x3fffff);
- uint32_t x161, uint8_t x162 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x158, Return x79, Return x159);
- uint32_t x163 = (x114 & 0x3fffff);
- uint32_t x165, uint8_t x166 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x162, Return x82, Return x163);
- uint32_t x167 = (x114 & 0x7fffff);
- uint32_t x169, uint8_t x170 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x166, Return x85, Return x167);
- uint32_t x171 = (x114 & 0x3fffff);
- uint32_t x173, uint8_t x174 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x170, Return x88, Return x171);
- uint32_t x175 = (x114 & 0x3fffff);
- uint32_t x177, uint8_t x178 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x174, Return x91, Return x175);
- uint32_t x179 = (x114 & 0x3fffff);
- uint32_t x181, uint8_t x182 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x178, Return x94, Return x179);
- uint32_t x183 = (x114 & 0x3fffff);
- uint32_t x185, uint8_t x186 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x182, Return x97, Return x183);
- uint32_t x187 = (x114 & 0x7fffff);
- uint32_t x189, uint8_t x190 = Op (Syntax.AddWithGetCarry 23 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x186, Return x100, Return x187);
- uint32_t x191 = (x114 & 0x3fffff);
- uint32_t x193, uint8_t x194 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x190, Return x103, Return x191);
- uint32_t x195 = (x114 & 0x3fffff);
- uint32_t x197, uint8_t x198 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x194, Return x106, Return x195);
- uint32_t x199 = (x114 & 0x3fffff);
- uint32_t x201, uint8_t x202 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x198, Return x109, Return x199);
- uint32_t x203 = (x114 & 0x3fffff);
- uint32_t x205, uint8_t _ = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x202, Return x112, Return x203);
- (Return x205, Return x201, Return x197, Return x193, Return x189, Return x185, Return x181, Return x177, Return x173, Return x169, Return x165, Return x161, Return x157, Return x153, Return x149, Return x145, Return x141, Return x137, Return x133, Return x129, Return x125, Return x121, Return x117))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e511m481_23limbs/freezeDisplay.v b/src/Specific/solinas32_2e511m481_23limbs/freezeDisplay.v
deleted file mode 100644
index 92188dcbe..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e511m481_23limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e511m481_23limbs/py_interpreter.sh b/src/Specific/solinas32_2e511m481_23limbs/py_interpreter.sh
deleted file mode 100755
index f56ac3492..000000000
--- a/src/Specific/solinas32_2e511m481_23limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**511 - 481' -Dmodulus_bytes='22 + 5/23' -Da24='121665'
diff --git a/src/Specific/solinas32_2e511m481_24limbs/CurveParameters.v b/src/Specific/solinas32_2e511m481_24limbs/CurveParameters.v
deleted file mode 100644
index a30f9f608..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^511 - 481
-Base: 21 + 7/24
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 24%nat;
- base := 21 + 7/24;
- bitwidth := 32;
- s := 2^511;
- c := [(1, 481)];
- carry_chains := Some [seq 0 (pred 24); [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_2e511m481_24limbs/Synthesis.v b/src/Specific/solinas32_2e511m481_24limbs/Synthesis.v
deleted file mode 100644
index 4063d289d..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e511m481_24limbs.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_2e511m481_24limbs/compiler.sh b/src/Specific/solinas32_2e511m481_24limbs/compiler.sh
deleted file mode 100755
index eddeea46c..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{22,21,21,22,21,21,22,21,21,21,22,21,21,22,21,21,21,22,21,21,22,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='24' -Dq_mpz='(1_mpz<<511) - 481' "$@"
diff --git a/src/Specific/solinas32_2e511m481_24limbs/compilerxx.sh b/src/Specific/solinas32_2e511m481_24limbs/compilerxx.sh
deleted file mode 100755
index 640ee4d34..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{22,21,21,22,21,21,22,21,21,21,22,21,21,22,21,21,21,22,21,21,22,21,21,21}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='24' -Dq_mpz='(1_mpz<<511) - 481' "$@"
diff --git a/src/Specific/solinas32_2e511m481_24limbs/feadd.c b/src/Specific/solinas32_2e511m481_24limbs/feadd.c
deleted file mode 100644
index 115132981..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/feadd.c
+++ /dev/null
@@ -1,75 +0,0 @@
-static void feadd(uint32_t out[24], const uint32_t in1[24], const uint32_t in2[24]) {
- { const uint32_t x48 = in1[23];
- { const uint32_t x49 = in1[22];
- { const uint32_t x47 = in1[21];
- { const uint32_t x45 = in1[20];
- { const uint32_t x43 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x94 = in2[23];
- { const uint32_t x95 = in2[22];
- { const uint32_t x93 = in2[21];
- { const uint32_t x91 = in2[20];
- { const uint32_t x89 = in2[19];
- { const uint32_t x87 = in2[18];
- { const uint32_t x85 = in2[17];
- { const uint32_t x83 = in2[16];
- { const uint32_t x81 = in2[15];
- { const uint32_t x79 = in2[14];
- { const uint32_t x77 = in2[13];
- { const uint32_t x75 = in2[12];
- { const uint32_t x73 = in2[11];
- { const uint32_t x71 = in2[10];
- { const uint32_t x69 = in2[9];
- { const uint32_t x67 = in2[8];
- { const uint32_t x65 = in2[7];
- { const uint32_t x63 = in2[6];
- { const uint32_t x61 = in2[5];
- { const uint32_t x59 = in2[4];
- { const uint32_t x57 = in2[3];
- { const uint32_t x55 = in2[2];
- { const uint32_t x53 = in2[1];
- { const uint32_t x51 = in2[0];
- out[0] = (x5 + x51);
- out[1] = (x7 + x53);
- out[2] = (x9 + x55);
- out[3] = (x11 + x57);
- out[4] = (x13 + x59);
- out[5] = (x15 + x61);
- out[6] = (x17 + x63);
- out[7] = (x19 + x65);
- out[8] = (x21 + x67);
- out[9] = (x23 + x69);
- out[10] = (x25 + x71);
- out[11] = (x27 + x73);
- out[12] = (x29 + x75);
- out[13] = (x31 + x77);
- out[14] = (x33 + x79);
- out[15] = (x35 + x81);
- out[16] = (x37 + x83);
- out[17] = (x39 + x85);
- out[18] = (x41 + x87);
- out[19] = (x43 + x89);
- out[20] = (x45 + x91);
- out[21] = (x47 + x93);
- out[22] = (x49 + x95);
- out[23] = (x48 + x94);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e511m481_24limbs/feadd.v b/src/Specific/solinas32_2e511m481_24limbs/feadd.v
deleted file mode 100644
index d67400ba4..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e511m481_24limbs.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_2e511m481_24limbs/feaddDisplay.log b/src/Specific/solinas32_2e511m481_24limbs/feaddDisplay.log
deleted file mode 100644
index 8ec776f44..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x48, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x94, x95, x93, x91, x89, x87, x85, x83, x81, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51))%core,
- ((x48 + x94), (x49 + x95), (x47 + x93), (x45 + x91), (x43 + x89), (x41 + x87), (x39 + x85), (x37 + x83), (x35 + x81), (x33 + x79), (x31 + x77), (x29 + x75), (x27 + x73), (x25 + x71), (x23 + x69), (x21 + x67), (x19 + x65), (x17 + x63), (x15 + x61), (x13 + x59), (x11 + x57), (x9 + x55), (x7 + x53), (x5 + x51)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e511m481_24limbs/feaddDisplay.v b/src/Specific/solinas32_2e511m481_24limbs/feaddDisplay.v
deleted file mode 100644
index 0f9d72b8b..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e511m481_24limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e511m481_24limbs/fecarry.v b/src/Specific/solinas32_2e511m481_24limbs/fecarry.v
deleted file mode 100644
index d821afa63..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e511m481_24limbs.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_2e511m481_24limbs/fecarryDisplay.v b/src/Specific/solinas32_2e511m481_24limbs/fecarryDisplay.v
deleted file mode 100644
index a18722af9..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e511m481_24limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e511m481_24limbs/femul.v b/src/Specific/solinas32_2e511m481_24limbs/femul.v
deleted file mode 100644
index 6eb722bd3..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e511m481_24limbs.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_2e511m481_24limbs/femulDisplay.v b/src/Specific/solinas32_2e511m481_24limbs/femulDisplay.v
deleted file mode 100644
index 04377712c..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e511m481_24limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e511m481_24limbs/fesquare.c b/src/Specific/solinas32_2e511m481_24limbs/fesquare.c
deleted file mode 100644
index 0b7f1cb44..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/fesquare.c
+++ /dev/null
@@ -1,152 +0,0 @@
-static void fesquare(uint32_t out[24], const uint32_t in1[24]) {
- { const uint32_t x45 = in1[23];
- { const uint32_t x46 = in1[22];
- { const uint32_t x44 = in1[21];
- { const uint32_t x42 = in1[20];
- { const uint32_t x40 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x47 = (((uint64_t)x2 * x45) + ((0x2 * ((uint64_t)x4 * x46)) + ((0x2 * ((uint64_t)x6 * x44)) + (((uint64_t)x8 * x42) + ((0x2 * ((uint64_t)x10 * x40)) + ((0x2 * ((uint64_t)x12 * x38)) + (((uint64_t)x14 * x36) + ((0x2 * ((uint64_t)x16 * x34)) + ((0x2 * ((uint64_t)x18 * x32)) + ((0x2 * ((uint64_t)x20 * x30)) + (((uint64_t)x22 * x28) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + (((uint64_t)x28 * x22) + ((0x2 * ((uint64_t)x30 * x20)) + ((0x2 * ((uint64_t)x32 * x18)) + ((0x2 * ((uint64_t)x34 * x16)) + (((uint64_t)x36 * x14) + ((0x2 * ((uint64_t)x38 * x12)) + ((0x2 * ((uint64_t)x40 * x10)) + (((uint64_t)x42 * x8) + ((0x2 * ((uint64_t)x44 * x6)) + ((0x2 * ((uint64_t)x46 * x4)) + ((uint64_t)x45 * x2))))))))))))))))))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x46) + ((0x2 * ((uint64_t)x4 * x44)) + (((uint64_t)x6 * x42) + (((uint64_t)x8 * x40) + ((0x2 * ((uint64_t)x10 * x38)) + (((uint64_t)x12 * x36) + (((uint64_t)x14 * x34) + ((0x2 * ((uint64_t)x16 * x32)) + ((0x2 * ((uint64_t)x18 * x30)) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + ((0x2 * ((uint64_t)x24 * x24)) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + ((0x2 * ((uint64_t)x30 * x18)) + ((0x2 * ((uint64_t)x32 * x16)) + (((uint64_t)x34 * x14) + (((uint64_t)x36 * x12) + ((0x2 * ((uint64_t)x38 * x10)) + (((uint64_t)x40 * x8) + (((uint64_t)x42 * x6) + ((0x2 * ((uint64_t)x44 * x4)) + ((uint64_t)x46 * x2))))))))))))))))))))))) + (0x1e1 * ((uint64_t)x45 * x45)));
- { uint64_t x49 = ((((uint64_t)x2 * x44) + (((uint64_t)x4 * x42) + (((uint64_t)x6 * x40) + (((uint64_t)x8 * x38) + (((uint64_t)x10 * x36) + (((uint64_t)x12 * x34) + (((uint64_t)x14 * x32) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + (((uint64_t)x32 * x14) + (((uint64_t)x34 * x12) + (((uint64_t)x36 * x10) + (((uint64_t)x38 * x8) + (((uint64_t)x40 * x6) + (((uint64_t)x42 * x4) + ((uint64_t)x44 * x2)))))))))))))))))))))) + (0x1e1 * (((uint64_t)x46 * x45) + ((uint64_t)x45 * x46))));
- { uint64_t x50 = ((((uint64_t)x2 * x42) + ((0x2 * ((uint64_t)x4 * x40)) + ((0x2 * ((uint64_t)x6 * x38)) + (((uint64_t)x8 * x36) + ((0x2 * ((uint64_t)x10 * x34)) + ((0x2 * ((uint64_t)x12 * x32)) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + ((0x2 * ((uint64_t)x32 * x12)) + ((0x2 * ((uint64_t)x34 * x10)) + (((uint64_t)x36 * x8) + ((0x2 * ((uint64_t)x38 * x6)) + ((0x2 * ((uint64_t)x40 * x4)) + ((uint64_t)x42 * x2))))))))))))))))))))) + (0x1e1 * ((0x2 * ((uint64_t)x44 * x45)) + ((0x2 * ((uint64_t)x46 * x46)) + (0x2 * ((uint64_t)x45 * x44))))));
- { uint64_t x51 = ((((uint64_t)x2 * x40) + ((0x2 * ((uint64_t)x4 * x38)) + (((uint64_t)x6 * x36) + (((uint64_t)x8 * x34) + ((0x2 * ((uint64_t)x10 * x32)) + ((0x2 * ((uint64_t)x12 * x30)) + (((uint64_t)x14 * x28) + ((0x2 * ((uint64_t)x16 * x26)) + ((0x2 * ((uint64_t)x18 * x24)) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((0x2 * ((uint64_t)x24 * x18)) + ((0x2 * ((uint64_t)x26 * x16)) + (((uint64_t)x28 * x14) + ((0x2 * ((uint64_t)x30 * x12)) + ((0x2 * ((uint64_t)x32 * x10)) + (((uint64_t)x34 * x8) + (((uint64_t)x36 * x6) + ((0x2 * ((uint64_t)x38 * x4)) + ((uint64_t)x40 * x2)))))))))))))))))))) + (0x1e1 * (((uint64_t)x42 * x45) + ((0x2 * ((uint64_t)x44 * x46)) + ((0x2 * ((uint64_t)x46 * x44)) + ((uint64_t)x45 * x42))))));
- { uint64_t x52 = ((((uint64_t)x2 * x38) + (((uint64_t)x4 * x36) + (((uint64_t)x6 * x34) + (((uint64_t)x8 * x32) + ((0x2 * ((uint64_t)x10 * x30)) + (((uint64_t)x12 * x28) + (((uint64_t)x14 * x26) + ((0x2 * ((uint64_t)x16 * x24)) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + ((0x2 * ((uint64_t)x24 * x16)) + (((uint64_t)x26 * x14) + (((uint64_t)x28 * x12) + ((0x2 * ((uint64_t)x30 * x10)) + (((uint64_t)x32 * x8) + (((uint64_t)x34 * x6) + (((uint64_t)x36 * x4) + ((uint64_t)x38 * x2))))))))))))))))))) + (0x1e1 * (((uint64_t)x40 * x45) + (((uint64_t)x42 * x46) + ((0x2 * ((uint64_t)x44 * x44)) + (((uint64_t)x46 * x42) + ((uint64_t)x45 * x40)))))));
- { uint64_t x53 = ((((uint64_t)x2 * x36) + ((0x2 * ((uint64_t)x4 * x34)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x36 * x2)))))))))))))))))) + (0x1e1 * ((0x2 * ((uint64_t)x38 * x45)) + ((0x2 * ((uint64_t)x40 * x46)) + ((0x2 * ((uint64_t)x42 * x44)) + ((0x2 * ((uint64_t)x44 * x42)) + ((0x2 * ((uint64_t)x46 * x40)) + (0x2 * ((uint64_t)x45 * x38)))))))));
- { uint64_t x54 = ((((uint64_t)x2 * x34) + ((0x2 * ((uint64_t)x4 * x32)) + ((0x2 * ((uint64_t)x6 * x30)) + (((uint64_t)x8 * x28) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + (((uint64_t)x14 * x22) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + (((uint64_t)x22 * x14) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + (((uint64_t)x28 * x8) + ((0x2 * ((uint64_t)x30 * x6)) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x34 * x2))))))))))))))))) + (0x1e1 * (((uint64_t)x36 * x45) + ((0x2 * ((uint64_t)x38 * x46)) + ((0x2 * ((uint64_t)x40 * x44)) + (((uint64_t)x42 * x42) + ((0x2 * ((uint64_t)x44 * x40)) + ((0x2 * ((uint64_t)x46 * x38)) + ((uint64_t)x45 * x36)))))))));
- { uint64_t x55 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + ((0x2 * ((uint64_t)x10 * x24)) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + ((0x2 * ((uint64_t)x24 * x10)) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x1e1 * (((uint64_t)x34 * x45) + (((uint64_t)x36 * x46) + ((0x2 * ((uint64_t)x38 * x44)) + (((uint64_t)x40 * x42) + (((uint64_t)x42 * x40) + ((0x2 * ((uint64_t)x44 * x38)) + (((uint64_t)x46 * x36) + ((uint64_t)x45 * x34))))))))));
- { uint64_t x56 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x1e1 * (((uint64_t)x32 * x45) + (((uint64_t)x34 * x46) + (((uint64_t)x36 * x44) + (((uint64_t)x38 * x42) + (((uint64_t)x40 * x40) + (((uint64_t)x42 * x38) + (((uint64_t)x44 * x36) + (((uint64_t)x46 * x34) + ((uint64_t)x45 * x32)))))))))));
- { uint64_t x57 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + (((uint64_t)x8 * x22) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + (((uint64_t)x22 * x8) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x1e1 * ((0x2 * ((uint64_t)x30 * x45)) + ((0x2 * ((uint64_t)x32 * x46)) + ((0x2 * ((uint64_t)x34 * x44)) + (((uint64_t)x36 * x42) + ((0x2 * ((uint64_t)x38 * x40)) + ((0x2 * ((uint64_t)x40 * x38)) + (((uint64_t)x42 * x36) + ((0x2 * ((uint64_t)x44 * x34)) + ((0x2 * ((uint64_t)x46 * x32)) + (0x2 * ((uint64_t)x45 * x30)))))))))))));
- { uint64_t x58 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x1e1 * (((uint64_t)x28 * x45) + ((0x2 * ((uint64_t)x30 * x46)) + ((0x2 * ((uint64_t)x32 * x44)) + (((uint64_t)x34 * x42) + (((uint64_t)x36 * x40) + ((0x2 * ((uint64_t)x38 * x38)) + (((uint64_t)x40 * x36) + (((uint64_t)x42 * x34) + ((0x2 * ((uint64_t)x44 * x32)) + ((0x2 * ((uint64_t)x46 * x30)) + ((uint64_t)x45 * x28)))))))))))));
- { uint64_t x59 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x1e1 * (((uint64_t)x26 * x45) + (((uint64_t)x28 * x46) + ((0x2 * ((uint64_t)x30 * x44)) + (((uint64_t)x32 * x42) + (((uint64_t)x34 * x40) + (((uint64_t)x36 * x38) + (((uint64_t)x38 * x36) + (((uint64_t)x40 * x34) + (((uint64_t)x42 * x32) + ((0x2 * ((uint64_t)x44 * x30)) + (((uint64_t)x46 * x28) + ((uint64_t)x45 * x26))))))))))))));
- { uint64_t x60 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x1e1 * ((0x2 * ((uint64_t)x24 * x45)) + ((0x2 * ((uint64_t)x26 * x46)) + ((0x2 * ((uint64_t)x28 * x44)) + ((0x2 * ((uint64_t)x30 * x42)) + ((0x2 * ((uint64_t)x32 * x40)) + ((0x2 * ((uint64_t)x34 * x38)) + (((uint64_t)x36 * x36) + ((0x2 * ((uint64_t)x38 * x34)) + ((0x2 * ((uint64_t)x40 * x32)) + ((0x2 * ((uint64_t)x42 * x30)) + ((0x2 * ((uint64_t)x44 * x28)) + ((0x2 * ((uint64_t)x46 * x26)) + (0x2 * ((uint64_t)x45 * x24))))))))))))))));
- { uint64_t x61 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x1e1 * (((uint64_t)x22 * x45) + ((0x2 * ((uint64_t)x24 * x46)) + ((0x2 * ((uint64_t)x26 * x44)) + (((uint64_t)x28 * x42) + ((0x2 * ((uint64_t)x30 * x40)) + ((0x2 * ((uint64_t)x32 * x38)) + (((uint64_t)x34 * x36) + (((uint64_t)x36 * x34) + ((0x2 * ((uint64_t)x38 * x32)) + ((0x2 * ((uint64_t)x40 * x30)) + (((uint64_t)x42 * x28) + ((0x2 * ((uint64_t)x44 * x26)) + ((0x2 * ((uint64_t)x46 * x24)) + ((uint64_t)x45 * x22))))))))))))))));
- { uint64_t x62 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x1e1 * (((uint64_t)x20 * x45) + (((uint64_t)x22 * x46) + ((0x2 * ((uint64_t)x24 * x44)) + (((uint64_t)x26 * x42) + (((uint64_t)x28 * x40) + ((0x2 * ((uint64_t)x30 * x38)) + (((uint64_t)x32 * x36) + (((uint64_t)x34 * x34) + (((uint64_t)x36 * x32) + ((0x2 * ((uint64_t)x38 * x30)) + (((uint64_t)x40 * x28) + (((uint64_t)x42 * x26) + ((0x2 * ((uint64_t)x44 * x24)) + (((uint64_t)x46 * x22) + ((uint64_t)x45 * x20)))))))))))))))));
- { uint64_t x63 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x1e1 * (((uint64_t)x18 * x45) + (((uint64_t)x20 * x46) + (((uint64_t)x22 * x44) + (((uint64_t)x24 * x42) + (((uint64_t)x26 * x40) + (((uint64_t)x28 * x38) + (((uint64_t)x30 * x36) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + (((uint64_t)x36 * x30) + (((uint64_t)x38 * x28) + (((uint64_t)x40 * x26) + (((uint64_t)x42 * x24) + (((uint64_t)x44 * x22) + (((uint64_t)x46 * x20) + ((uint64_t)x45 * x18))))))))))))))))));
- { uint64_t x64 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x1e1 * ((0x2 * ((uint64_t)x16 * x45)) + ((0x2 * ((uint64_t)x18 * x46)) + ((0x2 * ((uint64_t)x20 * x44)) + (((uint64_t)x22 * x42) + ((0x2 * ((uint64_t)x24 * x40)) + ((0x2 * ((uint64_t)x26 * x38)) + (((uint64_t)x28 * x36) + ((0x2 * ((uint64_t)x30 * x34)) + ((0x2 * ((uint64_t)x32 * x32)) + ((0x2 * ((uint64_t)x34 * x30)) + (((uint64_t)x36 * x28) + ((0x2 * ((uint64_t)x38 * x26)) + ((0x2 * ((uint64_t)x40 * x24)) + (((uint64_t)x42 * x22) + ((0x2 * ((uint64_t)x44 * x20)) + ((0x2 * ((uint64_t)x46 * x18)) + (0x2 * ((uint64_t)x45 * x16))))))))))))))))))));
- { uint64_t x65 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x1e1 * (((uint64_t)x14 * x45) + ((0x2 * ((uint64_t)x16 * x46)) + ((0x2 * ((uint64_t)x18 * x44)) + (((uint64_t)x20 * x42) + (((uint64_t)x22 * x40) + ((0x2 * ((uint64_t)x24 * x38)) + (((uint64_t)x26 * x36) + (((uint64_t)x28 * x34) + ((0x2 * ((uint64_t)x30 * x32)) + ((0x2 * ((uint64_t)x32 * x30)) + (((uint64_t)x34 * x28) + (((uint64_t)x36 * x26) + ((0x2 * ((uint64_t)x38 * x24)) + (((uint64_t)x40 * x22) + (((uint64_t)x42 * x20) + ((0x2 * ((uint64_t)x44 * x18)) + ((0x2 * ((uint64_t)x46 * x16)) + ((uint64_t)x45 * x14))))))))))))))))))));
- { uint64_t x66 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x1e1 * (((uint64_t)x12 * x45) + (((uint64_t)x14 * x46) + ((0x2 * ((uint64_t)x16 * x44)) + (((uint64_t)x18 * x42) + (((uint64_t)x20 * x40) + (((uint64_t)x22 * x38) + (((uint64_t)x24 * x36) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + (((uint64_t)x36 * x24) + (((uint64_t)x38 * x22) + (((uint64_t)x40 * x20) + (((uint64_t)x42 * x18) + ((0x2 * ((uint64_t)x44 * x16)) + (((uint64_t)x46 * x14) + ((uint64_t)x45 * x12)))))))))))))))))))));
- { uint64_t x67 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x1e1 * ((0x2 * ((uint64_t)x10 * x45)) + ((0x2 * ((uint64_t)x12 * x46)) + ((0x2 * ((uint64_t)x14 * x44)) + ((0x2 * ((uint64_t)x16 * x42)) + ((0x2 * ((uint64_t)x18 * x40)) + ((0x2 * ((uint64_t)x20 * x38)) + (((uint64_t)x22 * x36) + ((0x2 * ((uint64_t)x24 * x34)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + ((0x2 * ((uint64_t)x34 * x24)) + (((uint64_t)x36 * x22) + ((0x2 * ((uint64_t)x38 * x20)) + ((0x2 * ((uint64_t)x40 * x18)) + ((0x2 * ((uint64_t)x42 * x16)) + ((0x2 * ((uint64_t)x44 * x14)) + ((0x2 * ((uint64_t)x46 * x12)) + (0x2 * ((uint64_t)x45 * x10)))))))))))))))))))))));
- { uint64_t x68 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x1e1 * (((uint64_t)x8 * x45) + ((0x2 * ((uint64_t)x10 * x46)) + ((0x2 * ((uint64_t)x12 * x44)) + (((uint64_t)x14 * x42) + ((0x2 * ((uint64_t)x16 * x40)) + ((0x2 * ((uint64_t)x18 * x38)) + (((uint64_t)x20 * x36) + (((uint64_t)x22 * x34) + ((0x2 * ((uint64_t)x24 * x32)) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + ((0x2 * ((uint64_t)x32 * x24)) + (((uint64_t)x34 * x22) + (((uint64_t)x36 * x20) + ((0x2 * ((uint64_t)x38 * x18)) + ((0x2 * ((uint64_t)x40 * x16)) + (((uint64_t)x42 * x14) + ((0x2 * ((uint64_t)x44 * x12)) + ((0x2 * ((uint64_t)x46 * x10)) + ((uint64_t)x45 * x8)))))))))))))))))))))));
- { uint64_t x69 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1e1 * (((uint64_t)x6 * x45) + (((uint64_t)x8 * x46) + ((0x2 * ((uint64_t)x10 * x44)) + (((uint64_t)x12 * x42) + (((uint64_t)x14 * x40) + ((0x2 * ((uint64_t)x16 * x38)) + (((uint64_t)x18 * x36) + (((uint64_t)x20 * x34) + (((uint64_t)x22 * x32) + ((0x2 * ((uint64_t)x24 * x30)) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + ((0x2 * ((uint64_t)x30 * x24)) + (((uint64_t)x32 * x22) + (((uint64_t)x34 * x20) + (((uint64_t)x36 * x18) + ((0x2 * ((uint64_t)x38 * x16)) + (((uint64_t)x40 * x14) + (((uint64_t)x42 * x12) + ((0x2 * ((uint64_t)x44 * x10)) + (((uint64_t)x46 * x8) + ((uint64_t)x45 * x6))))))))))))))))))))))));
- { uint64_t x70 = (((uint64_t)x2 * x2) + (0x1e1 * ((0x2 * ((uint64_t)x4 * x45)) + ((0x2 * ((uint64_t)x6 * x46)) + ((0x2 * ((uint64_t)x8 * x44)) + ((0x2 * ((uint64_t)x10 * x42)) + ((0x2 * ((uint64_t)x12 * x40)) + ((0x2 * ((uint64_t)x14 * x38)) + ((0x2 * ((uint64_t)x16 * x36)) + ((0x2 * ((uint64_t)x18 * x34)) + ((0x2 * ((uint64_t)x20 * x32)) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + ((0x2 * ((uint64_t)x26 * x26)) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + ((0x2 * ((uint64_t)x32 * x20)) + ((0x2 * ((uint64_t)x34 * x18)) + ((0x2 * ((uint64_t)x36 * x16)) + ((0x2 * ((uint64_t)x38 * x14)) + ((0x2 * ((uint64_t)x40 * x12)) + ((0x2 * ((uint64_t)x42 * x10)) + ((0x2 * ((uint64_t)x44 * x8)) + ((0x2 * ((uint64_t)x46 * x6)) + (0x2 * ((uint64_t)x45 * x4))))))))))))))))))))))))));
- { uint64_t x71 = (x70 >> 0x16);
- { uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- { uint64_t x73 = (x71 + x69);
- { uint64_t x74 = (x73 >> 0x15);
- { uint32_t x75 = ((uint32_t)x73 & 0x1fffff);
- { uint64_t x76 = (x74 + x68);
- { uint64_t x77 = (x76 >> 0x15);
- { uint32_t x78 = ((uint32_t)x76 & 0x1fffff);
- { uint64_t x79 = (x77 + x67);
- { uint64_t x80 = (x79 >> 0x16);
- { uint32_t x81 = ((uint32_t)x79 & 0x3fffff);
- { uint64_t x82 = (x80 + x66);
- { uint64_t x83 = (x82 >> 0x15);
- { uint32_t x84 = ((uint32_t)x82 & 0x1fffff);
- { uint64_t x85 = (x83 + x65);
- { uint64_t x86 = (x85 >> 0x15);
- { uint32_t x87 = ((uint32_t)x85 & 0x1fffff);
- { uint64_t x88 = (x86 + x64);
- { uint64_t x89 = (x88 >> 0x16);
- { uint32_t x90 = ((uint32_t)x88 & 0x3fffff);
- { uint64_t x91 = (x89 + x63);
- { uint64_t x92 = (x91 >> 0x15);
- { uint32_t x93 = ((uint32_t)x91 & 0x1fffff);
- { uint64_t x94 = (x92 + x62);
- { uint64_t x95 = (x94 >> 0x15);
- { uint32_t x96 = ((uint32_t)x94 & 0x1fffff);
- { uint64_t x97 = (x95 + x61);
- { uint64_t x98 = (x97 >> 0x15);
- { uint32_t x99 = ((uint32_t)x97 & 0x1fffff);
- { uint64_t x100 = (x98 + x60);
- { uint64_t x101 = (x100 >> 0x16);
- { uint32_t x102 = ((uint32_t)x100 & 0x3fffff);
- { uint64_t x103 = (x101 + x59);
- { uint64_t x104 = (x103 >> 0x15);
- { uint32_t x105 = ((uint32_t)x103 & 0x1fffff);
- { uint64_t x106 = (x104 + x58);
- { uint64_t x107 = (x106 >> 0x15);
- { uint32_t x108 = ((uint32_t)x106 & 0x1fffff);
- { uint64_t x109 = (x107 + x57);
- { uint64_t x110 = (x109 >> 0x16);
- { uint32_t x111 = ((uint32_t)x109 & 0x3fffff);
- { uint64_t x112 = (x110 + x56);
- { uint64_t x113 = (x112 >> 0x15);
- { uint32_t x114 = ((uint32_t)x112 & 0x1fffff);
- { uint64_t x115 = (x113 + x55);
- { uint64_t x116 = (x115 >> 0x15);
- { uint32_t x117 = ((uint32_t)x115 & 0x1fffff);
- { uint64_t x118 = (x116 + x54);
- { uint64_t x119 = (x118 >> 0x15);
- { uint32_t x120 = ((uint32_t)x118 & 0x1fffff);
- { uint64_t x121 = (x119 + x53);
- { uint64_t x122 = (x121 >> 0x16);
- { uint32_t x123 = ((uint32_t)x121 & 0x3fffff);
- { uint64_t x124 = (x122 + x52);
- { uint64_t x125 = (x124 >> 0x15);
- { uint32_t x126 = ((uint32_t)x124 & 0x1fffff);
- { uint64_t x127 = (x125 + x51);
- { uint64_t x128 = (x127 >> 0x15);
- { uint32_t x129 = ((uint32_t)x127 & 0x1fffff);
- { uint64_t x130 = (x128 + x50);
- { uint64_t x131 = (x130 >> 0x16);
- { uint32_t x132 = ((uint32_t)x130 & 0x3fffff);
- { uint64_t x133 = (x131 + x49);
- { uint64_t x134 = (x133 >> 0x15);
- { uint32_t x135 = ((uint32_t)x133 & 0x1fffff);
- { uint64_t x136 = (x134 + x48);
- { uint64_t x137 = (x136 >> 0x15);
- { uint32_t x138 = ((uint32_t)x136 & 0x1fffff);
- { uint64_t x139 = (x137 + x47);
- { uint32_t x140 = (uint32_t) (x139 >> 0x15);
- { uint32_t x141 = ((uint32_t)x139 & 0x1fffff);
- { uint64_t x142 = (x72 + ((uint64_t)0x1e1 * x140));
- { uint32_t x143 = (uint32_t) (x142 >> 0x16);
- { uint32_t x144 = ((uint32_t)x142 & 0x3fffff);
- { uint32_t x145 = (x143 + x75);
- { uint32_t x146 = (x145 >> 0x15);
- { uint32_t x147 = (x145 & 0x1fffff);
- out[0] = x144;
- out[1] = x147;
- out[2] = (x146 + x78);
- out[3] = x81;
- out[4] = x84;
- out[5] = x87;
- out[6] = x90;
- out[7] = x93;
- out[8] = x96;
- out[9] = x99;
- out[10] = x102;
- out[11] = x105;
- out[12] = x108;
- out[13] = x111;
- out[14] = x114;
- out[15] = x117;
- out[16] = x120;
- out[17] = x123;
- out[18] = x126;
- out[19] = x129;
- out[20] = x132;
- out[21] = x135;
- out[22] = x138;
- out[23] = x141;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e511m481_24limbs/fesquare.v b/src/Specific/solinas32_2e511m481_24limbs/fesquare.v
deleted file mode 100644
index 3bbcd6344..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e511m481_24limbs.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_2e511m481_24limbs/fesquareDisplay.log b/src/Specific/solinas32_2e511m481_24limbs/fesquareDisplay.log
deleted file mode 100644
index ce2cb65f7..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,108 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x45, x46, x44, x42, x40, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x47 = (((uint64_t)x2 * x45) + ((0x2 * ((uint64_t)x4 * x46)) + ((0x2 * ((uint64_t)x6 * x44)) + (((uint64_t)x8 * x42) + ((0x2 * ((uint64_t)x10 * x40)) + ((0x2 * ((uint64_t)x12 * x38)) + (((uint64_t)x14 * x36) + ((0x2 * ((uint64_t)x16 * x34)) + ((0x2 * ((uint64_t)x18 * x32)) + ((0x2 * ((uint64_t)x20 * x30)) + (((uint64_t)x22 * x28) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + (((uint64_t)x28 * x22) + ((0x2 * ((uint64_t)x30 * x20)) + ((0x2 * ((uint64_t)x32 * x18)) + ((0x2 * ((uint64_t)x34 * x16)) + (((uint64_t)x36 * x14) + ((0x2 * ((uint64_t)x38 * x12)) + ((0x2 * ((uint64_t)x40 * x10)) + (((uint64_t)x42 * x8) + ((0x2 * ((uint64_t)x44 * x6)) + ((0x2 * ((uint64_t)x46 * x4)) + ((uint64_t)x45 * x2))))))))))))))))))))))));
- uint64_t x48 = ((((uint64_t)x2 * x46) + ((0x2 * ((uint64_t)x4 * x44)) + (((uint64_t)x6 * x42) + (((uint64_t)x8 * x40) + ((0x2 * ((uint64_t)x10 * x38)) + (((uint64_t)x12 * x36) + (((uint64_t)x14 * x34) + ((0x2 * ((uint64_t)x16 * x32)) + ((0x2 * ((uint64_t)x18 * x30)) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + ((0x2 * ((uint64_t)x24 * x24)) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + ((0x2 * ((uint64_t)x30 * x18)) + ((0x2 * ((uint64_t)x32 * x16)) + (((uint64_t)x34 * x14) + (((uint64_t)x36 * x12) + ((0x2 * ((uint64_t)x38 * x10)) + (((uint64_t)x40 * x8) + (((uint64_t)x42 * x6) + ((0x2 * ((uint64_t)x44 * x4)) + ((uint64_t)x46 * x2))))))))))))))))))))))) + (0x1e1 * ((uint64_t)x45 * x45)));
- uint64_t x49 = ((((uint64_t)x2 * x44) + (((uint64_t)x4 * x42) + (((uint64_t)x6 * x40) + (((uint64_t)x8 * x38) + (((uint64_t)x10 * x36) + (((uint64_t)x12 * x34) + (((uint64_t)x14 * x32) + ((0x2 * ((uint64_t)x16 * x30)) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + ((0x2 * ((uint64_t)x30 * x16)) + (((uint64_t)x32 * x14) + (((uint64_t)x34 * x12) + (((uint64_t)x36 * x10) + (((uint64_t)x38 * x8) + (((uint64_t)x40 * x6) + (((uint64_t)x42 * x4) + ((uint64_t)x44 * x2)))))))))))))))))))))) + (0x1e1 * (((uint64_t)x46 * x45) + ((uint64_t)x45 * x46))));
- uint64_t x50 = ((((uint64_t)x2 * x42) + ((0x2 * ((uint64_t)x4 * x40)) + ((0x2 * ((uint64_t)x6 * x38)) + (((uint64_t)x8 * x36) + ((0x2 * ((uint64_t)x10 * x34)) + ((0x2 * ((uint64_t)x12 * x32)) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + ((0x2 * ((uint64_t)x32 * x12)) + ((0x2 * ((uint64_t)x34 * x10)) + (((uint64_t)x36 * x8) + ((0x2 * ((uint64_t)x38 * x6)) + ((0x2 * ((uint64_t)x40 * x4)) + ((uint64_t)x42 * x2))))))))))))))))))))) + (0x1e1 * ((0x2 * ((uint64_t)x44 * x45)) + ((0x2 * ((uint64_t)x46 * x46)) + (0x2 * ((uint64_t)x45 * x44))))));
- uint64_t x51 = ((((uint64_t)x2 * x40) + ((0x2 * ((uint64_t)x4 * x38)) + (((uint64_t)x6 * x36) + (((uint64_t)x8 * x34) + ((0x2 * ((uint64_t)x10 * x32)) + ((0x2 * ((uint64_t)x12 * x30)) + (((uint64_t)x14 * x28) + ((0x2 * ((uint64_t)x16 * x26)) + ((0x2 * ((uint64_t)x18 * x24)) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + ((0x2 * ((uint64_t)x24 * x18)) + ((0x2 * ((uint64_t)x26 * x16)) + (((uint64_t)x28 * x14) + ((0x2 * ((uint64_t)x30 * x12)) + ((0x2 * ((uint64_t)x32 * x10)) + (((uint64_t)x34 * x8) + (((uint64_t)x36 * x6) + ((0x2 * ((uint64_t)x38 * x4)) + ((uint64_t)x40 * x2)))))))))))))))))))) + (0x1e1 * (((uint64_t)x42 * x45) + ((0x2 * ((uint64_t)x44 * x46)) + ((0x2 * ((uint64_t)x46 * x44)) + ((uint64_t)x45 * x42))))));
- uint64_t x52 = ((((uint64_t)x2 * x38) + (((uint64_t)x4 * x36) + (((uint64_t)x6 * x34) + (((uint64_t)x8 * x32) + ((0x2 * ((uint64_t)x10 * x30)) + (((uint64_t)x12 * x28) + (((uint64_t)x14 * x26) + ((0x2 * ((uint64_t)x16 * x24)) + (((uint64_t)x18 * x22) + (((uint64_t)x20 * x20) + (((uint64_t)x22 * x18) + ((0x2 * ((uint64_t)x24 * x16)) + (((uint64_t)x26 * x14) + (((uint64_t)x28 * x12) + ((0x2 * ((uint64_t)x30 * x10)) + (((uint64_t)x32 * x8) + (((uint64_t)x34 * x6) + (((uint64_t)x36 * x4) + ((uint64_t)x38 * x2))))))))))))))))))) + (0x1e1 * (((uint64_t)x40 * x45) + (((uint64_t)x42 * x46) + ((0x2 * ((uint64_t)x44 * x44)) + (((uint64_t)x46 * x42) + ((uint64_t)x45 * x40)))))));
- uint64_t x53 = ((((uint64_t)x2 * x36) + ((0x2 * ((uint64_t)x4 * x34)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x36 * x2)))))))))))))))))) + (0x1e1 * ((0x2 * ((uint64_t)x38 * x45)) + ((0x2 * ((uint64_t)x40 * x46)) + ((0x2 * ((uint64_t)x42 * x44)) + ((0x2 * ((uint64_t)x44 * x42)) + ((0x2 * ((uint64_t)x46 * x40)) + (0x2 * ((uint64_t)x45 * x38)))))))));
- uint64_t x54 = ((((uint64_t)x2 * x34) + ((0x2 * ((uint64_t)x4 * x32)) + ((0x2 * ((uint64_t)x6 * x30)) + (((uint64_t)x8 * x28) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + (((uint64_t)x14 * x22) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + (((uint64_t)x22 * x14) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + (((uint64_t)x28 * x8) + ((0x2 * ((uint64_t)x30 * x6)) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x34 * x2))))))))))))))))) + (0x1e1 * (((uint64_t)x36 * x45) + ((0x2 * ((uint64_t)x38 * x46)) + ((0x2 * ((uint64_t)x40 * x44)) + (((uint64_t)x42 * x42) + ((0x2 * ((uint64_t)x44 * x40)) + ((0x2 * ((uint64_t)x46 * x38)) + ((uint64_t)x45 * x36)))))))));
- uint64_t x55 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + ((0x2 * ((uint64_t)x10 * x24)) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + ((0x2 * ((uint64_t)x24 * x10)) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x1e1 * (((uint64_t)x34 * x45) + (((uint64_t)x36 * x46) + ((0x2 * ((uint64_t)x38 * x44)) + (((uint64_t)x40 * x42) + (((uint64_t)x42 * x40) + ((0x2 * ((uint64_t)x44 * x38)) + (((uint64_t)x46 * x36) + ((uint64_t)x45 * x34))))))))));
- uint64_t x56 = ((((uint64_t)x2 * x30) + (((uint64_t)x4 * x28) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + (((uint64_t)x10 * x22) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + (((uint64_t)x22 * x10) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + (((uint64_t)x28 * x4) + ((uint64_t)x30 * x2))))))))))))))) + (0x1e1 * (((uint64_t)x32 * x45) + (((uint64_t)x34 * x46) + (((uint64_t)x36 * x44) + (((uint64_t)x38 * x42) + (((uint64_t)x40 * x40) + (((uint64_t)x42 * x38) + (((uint64_t)x44 * x36) + (((uint64_t)x46 * x34) + ((uint64_t)x45 * x32)))))))))));
- uint64_t x57 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + (((uint64_t)x8 * x22) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + (((uint64_t)x22 * x8) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (0x1e1 * ((0x2 * ((uint64_t)x30 * x45)) + ((0x2 * ((uint64_t)x32 * x46)) + ((0x2 * ((uint64_t)x34 * x44)) + (((uint64_t)x36 * x42) + ((0x2 * ((uint64_t)x38 * x40)) + ((0x2 * ((uint64_t)x40 * x38)) + (((uint64_t)x42 * x36) + ((0x2 * ((uint64_t)x44 * x34)) + ((0x2 * ((uint64_t)x46 * x32)) + (0x2 * ((uint64_t)x45 * x30)))))))))))));
- uint64_t x58 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x1e1 * (((uint64_t)x28 * x45) + ((0x2 * ((uint64_t)x30 * x46)) + ((0x2 * ((uint64_t)x32 * x44)) + (((uint64_t)x34 * x42) + (((uint64_t)x36 * x40) + ((0x2 * ((uint64_t)x38 * x38)) + (((uint64_t)x40 * x36) + (((uint64_t)x42 * x34) + ((0x2 * ((uint64_t)x44 * x32)) + ((0x2 * ((uint64_t)x46 * x30)) + ((uint64_t)x45 * x28)))))))))))));
- uint64_t x59 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x1e1 * (((uint64_t)x26 * x45) + (((uint64_t)x28 * x46) + ((0x2 * ((uint64_t)x30 * x44)) + (((uint64_t)x32 * x42) + (((uint64_t)x34 * x40) + (((uint64_t)x36 * x38) + (((uint64_t)x38 * x36) + (((uint64_t)x40 * x34) + (((uint64_t)x42 * x32) + ((0x2 * ((uint64_t)x44 * x30)) + (((uint64_t)x46 * x28) + ((uint64_t)x45 * x26))))))))))))));
- uint64_t x60 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x1e1 * ((0x2 * ((uint64_t)x24 * x45)) + ((0x2 * ((uint64_t)x26 * x46)) + ((0x2 * ((uint64_t)x28 * x44)) + ((0x2 * ((uint64_t)x30 * x42)) + ((0x2 * ((uint64_t)x32 * x40)) + ((0x2 * ((uint64_t)x34 * x38)) + (((uint64_t)x36 * x36) + ((0x2 * ((uint64_t)x38 * x34)) + ((0x2 * ((uint64_t)x40 * x32)) + ((0x2 * ((uint64_t)x42 * x30)) + ((0x2 * ((uint64_t)x44 * x28)) + ((0x2 * ((uint64_t)x46 * x26)) + (0x2 * ((uint64_t)x45 * x24))))))))))))))));
- uint64_t x61 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x1e1 * (((uint64_t)x22 * x45) + ((0x2 * ((uint64_t)x24 * x46)) + ((0x2 * ((uint64_t)x26 * x44)) + (((uint64_t)x28 * x42) + ((0x2 * ((uint64_t)x30 * x40)) + ((0x2 * ((uint64_t)x32 * x38)) + (((uint64_t)x34 * x36) + (((uint64_t)x36 * x34) + ((0x2 * ((uint64_t)x38 * x32)) + ((0x2 * ((uint64_t)x40 * x30)) + (((uint64_t)x42 * x28) + ((0x2 * ((uint64_t)x44 * x26)) + ((0x2 * ((uint64_t)x46 * x24)) + ((uint64_t)x45 * x22))))))))))))))));
- uint64_t x62 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x1e1 * (((uint64_t)x20 * x45) + (((uint64_t)x22 * x46) + ((0x2 * ((uint64_t)x24 * x44)) + (((uint64_t)x26 * x42) + (((uint64_t)x28 * x40) + ((0x2 * ((uint64_t)x30 * x38)) + (((uint64_t)x32 * x36) + (((uint64_t)x34 * x34) + (((uint64_t)x36 * x32) + ((0x2 * ((uint64_t)x38 * x30)) + (((uint64_t)x40 * x28) + (((uint64_t)x42 * x26) + ((0x2 * ((uint64_t)x44 * x24)) + (((uint64_t)x46 * x22) + ((uint64_t)x45 * x20)))))))))))))))));
- uint64_t x63 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x1e1 * (((uint64_t)x18 * x45) + (((uint64_t)x20 * x46) + (((uint64_t)x22 * x44) + (((uint64_t)x24 * x42) + (((uint64_t)x26 * x40) + (((uint64_t)x28 * x38) + (((uint64_t)x30 * x36) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + (((uint64_t)x36 * x30) + (((uint64_t)x38 * x28) + (((uint64_t)x40 * x26) + (((uint64_t)x42 * x24) + (((uint64_t)x44 * x22) + (((uint64_t)x46 * x20) + ((uint64_t)x45 * x18))))))))))))))))));
- uint64_t x64 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x1e1 * ((0x2 * ((uint64_t)x16 * x45)) + ((0x2 * ((uint64_t)x18 * x46)) + ((0x2 * ((uint64_t)x20 * x44)) + (((uint64_t)x22 * x42) + ((0x2 * ((uint64_t)x24 * x40)) + ((0x2 * ((uint64_t)x26 * x38)) + (((uint64_t)x28 * x36) + ((0x2 * ((uint64_t)x30 * x34)) + ((0x2 * ((uint64_t)x32 * x32)) + ((0x2 * ((uint64_t)x34 * x30)) + (((uint64_t)x36 * x28) + ((0x2 * ((uint64_t)x38 * x26)) + ((0x2 * ((uint64_t)x40 * x24)) + (((uint64_t)x42 * x22) + ((0x2 * ((uint64_t)x44 * x20)) + ((0x2 * ((uint64_t)x46 * x18)) + (0x2 * ((uint64_t)x45 * x16))))))))))))))))))));
- uint64_t x65 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x1e1 * (((uint64_t)x14 * x45) + ((0x2 * ((uint64_t)x16 * x46)) + ((0x2 * ((uint64_t)x18 * x44)) + (((uint64_t)x20 * x42) + (((uint64_t)x22 * x40) + ((0x2 * ((uint64_t)x24 * x38)) + (((uint64_t)x26 * x36) + (((uint64_t)x28 * x34) + ((0x2 * ((uint64_t)x30 * x32)) + ((0x2 * ((uint64_t)x32 * x30)) + (((uint64_t)x34 * x28) + (((uint64_t)x36 * x26) + ((0x2 * ((uint64_t)x38 * x24)) + (((uint64_t)x40 * x22) + (((uint64_t)x42 * x20) + ((0x2 * ((uint64_t)x44 * x18)) + ((0x2 * ((uint64_t)x46 * x16)) + ((uint64_t)x45 * x14))))))))))))))))))));
- uint64_t x66 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x1e1 * (((uint64_t)x12 * x45) + (((uint64_t)x14 * x46) + ((0x2 * ((uint64_t)x16 * x44)) + (((uint64_t)x18 * x42) + (((uint64_t)x20 * x40) + (((uint64_t)x22 * x38) + (((uint64_t)x24 * x36) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + ((0x2 * ((uint64_t)x30 * x30)) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + (((uint64_t)x36 * x24) + (((uint64_t)x38 * x22) + (((uint64_t)x40 * x20) + (((uint64_t)x42 * x18) + ((0x2 * ((uint64_t)x44 * x16)) + (((uint64_t)x46 * x14) + ((uint64_t)x45 * x12)))))))))))))))))))));
- uint64_t x67 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x1e1 * ((0x2 * ((uint64_t)x10 * x45)) + ((0x2 * ((uint64_t)x12 * x46)) + ((0x2 * ((uint64_t)x14 * x44)) + ((0x2 * ((uint64_t)x16 * x42)) + ((0x2 * ((uint64_t)x18 * x40)) + ((0x2 * ((uint64_t)x20 * x38)) + (((uint64_t)x22 * x36) + ((0x2 * ((uint64_t)x24 * x34)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + ((0x2 * ((uint64_t)x34 * x24)) + (((uint64_t)x36 * x22) + ((0x2 * ((uint64_t)x38 * x20)) + ((0x2 * ((uint64_t)x40 * x18)) + ((0x2 * ((uint64_t)x42 * x16)) + ((0x2 * ((uint64_t)x44 * x14)) + ((0x2 * ((uint64_t)x46 * x12)) + (0x2 * ((uint64_t)x45 * x10)))))))))))))))))))))));
- uint64_t x68 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x1e1 * (((uint64_t)x8 * x45) + ((0x2 * ((uint64_t)x10 * x46)) + ((0x2 * ((uint64_t)x12 * x44)) + (((uint64_t)x14 * x42) + ((0x2 * ((uint64_t)x16 * x40)) + ((0x2 * ((uint64_t)x18 * x38)) + (((uint64_t)x20 * x36) + (((uint64_t)x22 * x34) + ((0x2 * ((uint64_t)x24 * x32)) + ((0x2 * ((uint64_t)x26 * x30)) + (((uint64_t)x28 * x28) + ((0x2 * ((uint64_t)x30 * x26)) + ((0x2 * ((uint64_t)x32 * x24)) + (((uint64_t)x34 * x22) + (((uint64_t)x36 * x20) + ((0x2 * ((uint64_t)x38 * x18)) + ((0x2 * ((uint64_t)x40 * x16)) + (((uint64_t)x42 * x14) + ((0x2 * ((uint64_t)x44 * x12)) + ((0x2 * ((uint64_t)x46 * x10)) + ((uint64_t)x45 * x8)))))))))))))))))))))));
- uint64_t x69 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x1e1 * (((uint64_t)x6 * x45) + (((uint64_t)x8 * x46) + ((0x2 * ((uint64_t)x10 * x44)) + (((uint64_t)x12 * x42) + (((uint64_t)x14 * x40) + ((0x2 * ((uint64_t)x16 * x38)) + (((uint64_t)x18 * x36) + (((uint64_t)x20 * x34) + (((uint64_t)x22 * x32) + ((0x2 * ((uint64_t)x24 * x30)) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + ((0x2 * ((uint64_t)x30 * x24)) + (((uint64_t)x32 * x22) + (((uint64_t)x34 * x20) + (((uint64_t)x36 * x18) + ((0x2 * ((uint64_t)x38 * x16)) + (((uint64_t)x40 * x14) + (((uint64_t)x42 * x12) + ((0x2 * ((uint64_t)x44 * x10)) + (((uint64_t)x46 * x8) + ((uint64_t)x45 * x6))))))))))))))))))))))));
- uint64_t x70 = (((uint64_t)x2 * x2) + (0x1e1 * ((0x2 * ((uint64_t)x4 * x45)) + ((0x2 * ((uint64_t)x6 * x46)) + ((0x2 * ((uint64_t)x8 * x44)) + ((0x2 * ((uint64_t)x10 * x42)) + ((0x2 * ((uint64_t)x12 * x40)) + ((0x2 * ((uint64_t)x14 * x38)) + ((0x2 * ((uint64_t)x16 * x36)) + ((0x2 * ((uint64_t)x18 * x34)) + ((0x2 * ((uint64_t)x20 * x32)) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + ((0x2 * ((uint64_t)x26 * x26)) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + ((0x2 * ((uint64_t)x32 * x20)) + ((0x2 * ((uint64_t)x34 * x18)) + ((0x2 * ((uint64_t)x36 * x16)) + ((0x2 * ((uint64_t)x38 * x14)) + ((0x2 * ((uint64_t)x40 * x12)) + ((0x2 * ((uint64_t)x42 * x10)) + ((0x2 * ((uint64_t)x44 * x8)) + ((0x2 * ((uint64_t)x46 * x6)) + (0x2 * ((uint64_t)x45 * x4))))))))))))))))))))))))));
- uint64_t x71 = (x70 >> 0x16);
- uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- uint64_t x73 = (x71 + x69);
- uint64_t x74 = (x73 >> 0x15);
- uint32_t x75 = ((uint32_t)x73 & 0x1fffff);
- uint64_t x76 = (x74 + x68);
- uint64_t x77 = (x76 >> 0x15);
- uint32_t x78 = ((uint32_t)x76 & 0x1fffff);
- uint64_t x79 = (x77 + x67);
- uint64_t x80 = (x79 >> 0x16);
- uint32_t x81 = ((uint32_t)x79 & 0x3fffff);
- uint64_t x82 = (x80 + x66);
- uint64_t x83 = (x82 >> 0x15);
- uint32_t x84 = ((uint32_t)x82 & 0x1fffff);
- uint64_t x85 = (x83 + x65);
- uint64_t x86 = (x85 >> 0x15);
- uint32_t x87 = ((uint32_t)x85 & 0x1fffff);
- uint64_t x88 = (x86 + x64);
- uint64_t x89 = (x88 >> 0x16);
- uint32_t x90 = ((uint32_t)x88 & 0x3fffff);
- uint64_t x91 = (x89 + x63);
- uint64_t x92 = (x91 >> 0x15);
- uint32_t x93 = ((uint32_t)x91 & 0x1fffff);
- uint64_t x94 = (x92 + x62);
- uint64_t x95 = (x94 >> 0x15);
- uint32_t x96 = ((uint32_t)x94 & 0x1fffff);
- uint64_t x97 = (x95 + x61);
- uint64_t x98 = (x97 >> 0x15);
- uint32_t x99 = ((uint32_t)x97 & 0x1fffff);
- uint64_t x100 = (x98 + x60);
- uint64_t x101 = (x100 >> 0x16);
- uint32_t x102 = ((uint32_t)x100 & 0x3fffff);
- uint64_t x103 = (x101 + x59);
- uint64_t x104 = (x103 >> 0x15);
- uint32_t x105 = ((uint32_t)x103 & 0x1fffff);
- uint64_t x106 = (x104 + x58);
- uint64_t x107 = (x106 >> 0x15);
- uint32_t x108 = ((uint32_t)x106 & 0x1fffff);
- uint64_t x109 = (x107 + x57);
- uint64_t x110 = (x109 >> 0x16);
- uint32_t x111 = ((uint32_t)x109 & 0x3fffff);
- uint64_t x112 = (x110 + x56);
- uint64_t x113 = (x112 >> 0x15);
- uint32_t x114 = ((uint32_t)x112 & 0x1fffff);
- uint64_t x115 = (x113 + x55);
- uint64_t x116 = (x115 >> 0x15);
- uint32_t x117 = ((uint32_t)x115 & 0x1fffff);
- uint64_t x118 = (x116 + x54);
- uint64_t x119 = (x118 >> 0x15);
- uint32_t x120 = ((uint32_t)x118 & 0x1fffff);
- uint64_t x121 = (x119 + x53);
- uint64_t x122 = (x121 >> 0x16);
- uint32_t x123 = ((uint32_t)x121 & 0x3fffff);
- uint64_t x124 = (x122 + x52);
- uint64_t x125 = (x124 >> 0x15);
- uint32_t x126 = ((uint32_t)x124 & 0x1fffff);
- uint64_t x127 = (x125 + x51);
- uint64_t x128 = (x127 >> 0x15);
- uint32_t x129 = ((uint32_t)x127 & 0x1fffff);
- uint64_t x130 = (x128 + x50);
- uint64_t x131 = (x130 >> 0x16);
- uint32_t x132 = ((uint32_t)x130 & 0x3fffff);
- uint64_t x133 = (x131 + x49);
- uint64_t x134 = (x133 >> 0x15);
- uint32_t x135 = ((uint32_t)x133 & 0x1fffff);
- uint64_t x136 = (x134 + x48);
- uint64_t x137 = (x136 >> 0x15);
- uint32_t x138 = ((uint32_t)x136 & 0x1fffff);
- uint64_t x139 = (x137 + x47);
- uint32_t x140 = (uint32_t) (x139 >> 0x15);
- uint32_t x141 = ((uint32_t)x139 & 0x1fffff);
- uint64_t x142 = (x72 + ((uint64_t)0x1e1 * x140));
- uint32_t x143 = (uint32_t) (x142 >> 0x16);
- uint32_t x144 = ((uint32_t)x142 & 0x3fffff);
- uint32_t x145 = (x143 + x75);
- uint32_t x146 = (x145 >> 0x15);
- uint32_t x147 = (x145 & 0x1fffff);
- return (Return x141, Return x138, Return x135, Return x132, Return x129, Return x126, Return x123, Return x120, Return x117, Return x114, Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, (x146 + x78), Return x147, Return x144))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e511m481_24limbs/fesquareDisplay.v b/src/Specific/solinas32_2e511m481_24limbs/fesquareDisplay.v
deleted file mode 100644
index 89388dd05..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e511m481_24limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e511m481_24limbs/fesub.c b/src/Specific/solinas32_2e511m481_24limbs/fesub.c
deleted file mode 100644
index 54a98b98f..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/fesub.c
+++ /dev/null
@@ -1,75 +0,0 @@
-static void fesub(uint32_t out[24], const uint32_t in1[24], const uint32_t in2[24]) {
- { const uint32_t x48 = in1[23];
- { const uint32_t x49 = in1[22];
- { const uint32_t x47 = in1[21];
- { const uint32_t x45 = in1[20];
- { const uint32_t x43 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x94 = in2[23];
- { const uint32_t x95 = in2[22];
- { const uint32_t x93 = in2[21];
- { const uint32_t x91 = in2[20];
- { const uint32_t x89 = in2[19];
- { const uint32_t x87 = in2[18];
- { const uint32_t x85 = in2[17];
- { const uint32_t x83 = in2[16];
- { const uint32_t x81 = in2[15];
- { const uint32_t x79 = in2[14];
- { const uint32_t x77 = in2[13];
- { const uint32_t x75 = in2[12];
- { const uint32_t x73 = in2[11];
- { const uint32_t x71 = in2[10];
- { const uint32_t x69 = in2[9];
- { const uint32_t x67 = in2[8];
- { const uint32_t x65 = in2[7];
- { const uint32_t x63 = in2[6];
- { const uint32_t x61 = in2[5];
- { const uint32_t x59 = in2[4];
- { const uint32_t x57 = in2[3];
- { const uint32_t x55 = in2[2];
- { const uint32_t x53 = in2[1];
- { const uint32_t x51 = in2[0];
- out[0] = ((0x7ffc3e + x5) - x51);
- out[1] = ((0x3ffffe + x7) - x53);
- out[2] = ((0x3ffffe + x9) - x55);
- out[3] = ((0x7ffffe + x11) - x57);
- out[4] = ((0x3ffffe + x13) - x59);
- out[5] = ((0x3ffffe + x15) - x61);
- out[6] = ((0x7ffffe + x17) - x63);
- out[7] = ((0x3ffffe + x19) - x65);
- out[8] = ((0x3ffffe + x21) - x67);
- out[9] = ((0x3ffffe + x23) - x69);
- out[10] = ((0x7ffffe + x25) - x71);
- out[11] = ((0x3ffffe + x27) - x73);
- out[12] = ((0x3ffffe + x29) - x75);
- out[13] = ((0x7ffffe + x31) - x77);
- out[14] = ((0x3ffffe + x33) - x79);
- out[15] = ((0x3ffffe + x35) - x81);
- out[16] = ((0x3ffffe + x37) - x83);
- out[17] = ((0x7ffffe + x39) - x85);
- out[18] = ((0x3ffffe + x41) - x87);
- out[19] = ((0x3ffffe + x43) - x89);
- out[20] = ((0x7ffffe + x45) - x91);
- out[21] = ((0x3ffffe + x47) - x93);
- out[22] = ((0x3ffffe + x49) - x95);
- out[23] = ((0x3ffffe + x48) - x94);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e511m481_24limbs/fesub.v b/src/Specific/solinas32_2e511m481_24limbs/fesub.v
deleted file mode 100644
index 07625eb6b..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e511m481_24limbs.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_2e511m481_24limbs/fesubDisplay.log b/src/Specific/solinas32_2e511m481_24limbs/fesubDisplay.log
deleted file mode 100644
index 4128195bf..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x48, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x94, x95, x93, x91, x89, x87, x85, x83, x81, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51))%core,
- (((0x3ffffe + x48) - x94), ((0x3ffffe + x49) - x95), ((0x3ffffe + x47) - x93), ((0x7ffffe + x45) - x91), ((0x3ffffe + x43) - x89), ((0x3ffffe + x41) - x87), ((0x7ffffe + x39) - x85), ((0x3ffffe + x37) - x83), ((0x3ffffe + x35) - x81), ((0x3ffffe + x33) - x79), ((0x7ffffe + x31) - x77), ((0x3ffffe + x29) - x75), ((0x3ffffe + x27) - x73), ((0x7ffffe + x25) - x71), ((0x3ffffe + x23) - x69), ((0x3ffffe + x21) - x67), ((0x3ffffe + x19) - x65), ((0x7ffffe + x17) - x63), ((0x3ffffe + x15) - x61), ((0x3ffffe + x13) - x59), ((0x7ffffe + x11) - x57), ((0x3ffffe + x9) - x55), ((0x3ffffe + x7) - x53), ((0x7ffc3e + x5) - x51)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e511m481_24limbs/fesubDisplay.v b/src/Specific/solinas32_2e511m481_24limbs/fesubDisplay.v
deleted file mode 100644
index 605ff19b6..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e511m481_24limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e511m481_24limbs/freeze.c b/src/Specific/solinas32_2e511m481_24limbs/freeze.c
deleted file mode 100644
index e21f4ddee..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/freeze.c
+++ /dev/null
@@ -1,124 +0,0 @@
-static void freeze(uint32_t out[24], const uint32_t in1[24]) {
- { const uint32_t x45 = in1[23];
- { const uint32_t x46 = in1[22];
- { const uint32_t x44 = in1[21];
- { const uint32_t x42 = in1[20];
- { const uint32_t x40 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffe1f);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x4, 0x1fffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x6, 0x1fffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x8, 0x3fffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x10, 0x1fffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x12, 0x1fffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x14, 0x3fffff);
- { uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x16, 0x1fffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x18, 0x1fffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x20, 0x1fffff);
- { uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x22, 0x3fffff);
- { uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x24, 0x1fffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x26, 0x1fffff);
- { uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x28, 0x3fffff);
- { uint32_t x90, uint8_t x91 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x30, 0x1fffff);
- { uint32_t x93, uint8_t x94 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x32, 0x1fffff);
- { uint32_t x96, uint8_t x97 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x94, Return x34, 0x1fffff);
- { uint32_t x99, uint8_t x100 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x36, 0x3fffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x38, 0x1fffff);
- { uint32_t x105, uint8_t x106 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x40, 0x1fffff);
- { uint32_t x108, uint8_t x109 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x106, Return x42, 0x3fffff);
- { uint32_t x111, uint8_t x112 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x44, 0x1fffff);
- { uint32_t x114, uint8_t x115 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x46, 0x1fffff);
- { uint32_t x117, uint8_t x118 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x45, 0x1fffff);
- { uint32_t x119 = cmovznz32(x118, 0x0, 0xffffffff);
- { uint32_t x120 = (x119 & 0x3ffe1f);
- { uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x48, Return x120);
- { uint32_t x124 = (x119 & 0x1fffff);
- { uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x51, Return x124);
- { uint32_t x128 = (x119 & 0x1fffff);
- { uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x54, Return x128);
- { uint32_t x132 = (x119 & 0x3fffff);
- { uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x57, Return x132);
- { uint32_t x136 = (x119 & 0x1fffff);
- { uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x60, Return x136);
- { uint32_t x140 = (x119 & 0x1fffff);
- { uint32_t x142, uint8_t x143 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x63, Return x140);
- { uint32_t x144 = (x119 & 0x3fffff);
- { uint32_t x146, uint8_t x147 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x143, Return x66, Return x144);
- { uint32_t x148 = (x119 & 0x1fffff);
- { uint32_t x150, uint8_t x151 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x147, Return x69, Return x148);
- { uint32_t x152 = (x119 & 0x1fffff);
- { uint32_t x154, uint8_t x155 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x151, Return x72, Return x152);
- { uint32_t x156 = (x119 & 0x1fffff);
- { uint32_t x158, uint8_t x159 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x155, Return x75, Return x156);
- { uint32_t x160 = (x119 & 0x3fffff);
- { uint32_t x162, uint8_t x163 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x159, Return x78, Return x160);
- { uint32_t x164 = (x119 & 0x1fffff);
- { uint32_t x166, uint8_t x167 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x163, Return x81, Return x164);
- { uint32_t x168 = (x119 & 0x1fffff);
- { uint32_t x170, uint8_t x171 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x167, Return x84, Return x168);
- { uint32_t x172 = (x119 & 0x3fffff);
- { uint32_t x174, uint8_t x175 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x171, Return x87, Return x172);
- { uint32_t x176 = (x119 & 0x1fffff);
- { uint32_t x178, uint8_t x179 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x175, Return x90, Return x176);
- { uint32_t x180 = (x119 & 0x1fffff);
- { uint32_t x182, uint8_t x183 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x179, Return x93, Return x180);
- { uint32_t x184 = (x119 & 0x1fffff);
- { uint32_t x186, uint8_t x187 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x183, Return x96, Return x184);
- { uint32_t x188 = (x119 & 0x3fffff);
- { uint32_t x190, uint8_t x191 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x187, Return x99, Return x188);
- { uint32_t x192 = (x119 & 0x1fffff);
- { uint32_t x194, uint8_t x195 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x191, Return x102, Return x192);
- { uint32_t x196 = (x119 & 0x1fffff);
- { uint32_t x198, uint8_t x199 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x195, Return x105, Return x196);
- { uint32_t x200 = (x119 & 0x3fffff);
- { uint32_t x202, uint8_t x203 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x199, Return x108, Return x200);
- { uint32_t x204 = (x119 & 0x1fffff);
- { uint32_t x206, uint8_t x207 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x203, Return x111, Return x204);
- { uint32_t x208 = (x119 & 0x1fffff);
- { uint32_t x210, uint8_t x211 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x207, Return x114, Return x208);
- { uint32_t x212 = (x119 & 0x1fffff);
- { uint32_t x214, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x211, Return x117, Return x212);
- out[0] = x122;
- out[1] = x126;
- out[2] = x130;
- out[3] = x134;
- out[4] = x138;
- out[5] = x142;
- out[6] = x146;
- out[7] = x150;
- out[8] = x154;
- out[9] = x158;
- out[10] = x162;
- out[11] = x166;
- out[12] = x170;
- out[13] = x174;
- out[14] = x178;
- out[15] = x182;
- out[16] = x186;
- out[17] = x190;
- out[18] = x194;
- out[19] = x198;
- out[20] = x202;
- out[21] = x206;
- out[22] = x210;
- out[23] = x214;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e511m481_24limbs/freeze.v b/src/Specific/solinas32_2e511m481_24limbs/freeze.v
deleted file mode 100644
index 72dc11d57..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e511m481_24limbs.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_2e511m481_24limbs/freezeDisplay.log b/src/Specific/solinas32_2e511m481_24limbs/freezeDisplay.log
deleted file mode 100644
index 2aced0ce3..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/freezeDisplay.log
+++ /dev/null
@@ -1,80 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x45, x46, x44, x42, x40, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffe1f);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x4, 0x1fffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x6, 0x1fffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x8, 0x3fffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x10, 0x1fffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x12, 0x1fffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x14, 0x3fffff);
- uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x16, 0x1fffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x18, 0x1fffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x20, 0x1fffff);
- uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x22, 0x3fffff);
- uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x24, 0x1fffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x26, 0x1fffff);
- uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x28, 0x3fffff);
- uint32_t x90, uint8_t x91 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x30, 0x1fffff);
- uint32_t x93, uint8_t x94 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x32, 0x1fffff);
- uint32_t x96, uint8_t x97 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x94, Return x34, 0x1fffff);
- uint32_t x99, uint8_t x100 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x36, 0x3fffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x38, 0x1fffff);
- uint32_t x105, uint8_t x106 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x40, 0x1fffff);
- uint32_t x108, uint8_t x109 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x106, Return x42, 0x3fffff);
- uint32_t x111, uint8_t x112 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x44, 0x1fffff);
- uint32_t x114, uint8_t x115 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x46, 0x1fffff);
- uint32_t x117, uint8_t x118 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x45, 0x1fffff);
- uint32_t x119 = cmovznz32(x118, 0x0, 0xffffffff);
- uint32_t x120 = (x119 & 0x3ffe1f);
- uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x48, Return x120);
- uint32_t x124 = (x119 & 0x1fffff);
- uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x51, Return x124);
- uint32_t x128 = (x119 & 0x1fffff);
- uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x54, Return x128);
- uint32_t x132 = (x119 & 0x3fffff);
- uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x57, Return x132);
- uint32_t x136 = (x119 & 0x1fffff);
- uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x60, Return x136);
- uint32_t x140 = (x119 & 0x1fffff);
- uint32_t x142, uint8_t x143 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x63, Return x140);
- uint32_t x144 = (x119 & 0x3fffff);
- uint32_t x146, uint8_t x147 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x143, Return x66, Return x144);
- uint32_t x148 = (x119 & 0x1fffff);
- uint32_t x150, uint8_t x151 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x147, Return x69, Return x148);
- uint32_t x152 = (x119 & 0x1fffff);
- uint32_t x154, uint8_t x155 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x151, Return x72, Return x152);
- uint32_t x156 = (x119 & 0x1fffff);
- uint32_t x158, uint8_t x159 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x155, Return x75, Return x156);
- uint32_t x160 = (x119 & 0x3fffff);
- uint32_t x162, uint8_t x163 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x159, Return x78, Return x160);
- uint32_t x164 = (x119 & 0x1fffff);
- uint32_t x166, uint8_t x167 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x163, Return x81, Return x164);
- uint32_t x168 = (x119 & 0x1fffff);
- uint32_t x170, uint8_t x171 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x167, Return x84, Return x168);
- uint32_t x172 = (x119 & 0x3fffff);
- uint32_t x174, uint8_t x175 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x171, Return x87, Return x172);
- uint32_t x176 = (x119 & 0x1fffff);
- uint32_t x178, uint8_t x179 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x175, Return x90, Return x176);
- uint32_t x180 = (x119 & 0x1fffff);
- uint32_t x182, uint8_t x183 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x179, Return x93, Return x180);
- uint32_t x184 = (x119 & 0x1fffff);
- uint32_t x186, uint8_t x187 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x183, Return x96, Return x184);
- uint32_t x188 = (x119 & 0x3fffff);
- uint32_t x190, uint8_t x191 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x187, Return x99, Return x188);
- uint32_t x192 = (x119 & 0x1fffff);
- uint32_t x194, uint8_t x195 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x191, Return x102, Return x192);
- uint32_t x196 = (x119 & 0x1fffff);
- uint32_t x198, uint8_t x199 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x195, Return x105, Return x196);
- uint32_t x200 = (x119 & 0x3fffff);
- uint32_t x202, uint8_t x203 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x199, Return x108, Return x200);
- uint32_t x204 = (x119 & 0x1fffff);
- uint32_t x206, uint8_t x207 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x203, Return x111, Return x204);
- uint32_t x208 = (x119 & 0x1fffff);
- uint32_t x210, uint8_t x211 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x207, Return x114, Return x208);
- uint32_t x212 = (x119 & 0x1fffff);
- uint32_t x214, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x211, Return x117, Return x212);
- (Return x214, Return x210, Return x206, Return x202, Return x198, Return x194, Return x190, Return x186, Return x182, Return x178, Return x174, Return x170, Return x166, Return x162, Return x158, Return x154, Return x150, Return x146, Return x142, Return x138, Return x134, Return x130, Return x126, Return x122))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e511m481_24limbs/freezeDisplay.v b/src/Specific/solinas32_2e511m481_24limbs/freezeDisplay.v
deleted file mode 100644
index ca9e9bbec..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e511m481_24limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e511m481_24limbs/py_interpreter.sh b/src/Specific/solinas32_2e511m481_24limbs/py_interpreter.sh
deleted file mode 100755
index 82064f834..000000000
--- a/src/Specific/solinas32_2e511m481_24limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**511 - 481' -Dmodulus_bytes='21 + 7/24' -Da24='121665'
diff --git a/src/Specific/solinas32_2e512m569_24limbs/CurveParameters.v b/src/Specific/solinas32_2e512m569_24limbs/CurveParameters.v
deleted file mode 100644
index e97a2dd47..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^512 - 569
-Base: 21 + 1/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 24%nat;
- base := 21 + 1/3;
- bitwidth := 32;
- s := 2^512;
- c := [(1, 569)];
- carry_chains := Some [seq 0 (pred 24); [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_2e512m569_24limbs/Synthesis.v b/src/Specific/solinas32_2e512m569_24limbs/Synthesis.v
deleted file mode 100644
index 03a60089a..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e512m569_24limbs.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_2e512m569_24limbs/compiler.sh b/src/Specific/solinas32_2e512m569_24limbs/compiler.sh
deleted file mode 100755
index 81e5704b4..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='24' -Dq_mpz='(1_mpz<<512) - 569' "$@"
diff --git a/src/Specific/solinas32_2e512m569_24limbs/compilerxx.sh b/src/Specific/solinas32_2e512m569_24limbs/compilerxx.sh
deleted file mode 100755
index b63afa92c..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21,22,21,21}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='24' -Dq_mpz='(1_mpz<<512) - 569' "$@"
diff --git a/src/Specific/solinas32_2e512m569_24limbs/feadd.c b/src/Specific/solinas32_2e512m569_24limbs/feadd.c
deleted file mode 100644
index 115132981..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/feadd.c
+++ /dev/null
@@ -1,75 +0,0 @@
-static void feadd(uint32_t out[24], const uint32_t in1[24], const uint32_t in2[24]) {
- { const uint32_t x48 = in1[23];
- { const uint32_t x49 = in1[22];
- { const uint32_t x47 = in1[21];
- { const uint32_t x45 = in1[20];
- { const uint32_t x43 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x94 = in2[23];
- { const uint32_t x95 = in2[22];
- { const uint32_t x93 = in2[21];
- { const uint32_t x91 = in2[20];
- { const uint32_t x89 = in2[19];
- { const uint32_t x87 = in2[18];
- { const uint32_t x85 = in2[17];
- { const uint32_t x83 = in2[16];
- { const uint32_t x81 = in2[15];
- { const uint32_t x79 = in2[14];
- { const uint32_t x77 = in2[13];
- { const uint32_t x75 = in2[12];
- { const uint32_t x73 = in2[11];
- { const uint32_t x71 = in2[10];
- { const uint32_t x69 = in2[9];
- { const uint32_t x67 = in2[8];
- { const uint32_t x65 = in2[7];
- { const uint32_t x63 = in2[6];
- { const uint32_t x61 = in2[5];
- { const uint32_t x59 = in2[4];
- { const uint32_t x57 = in2[3];
- { const uint32_t x55 = in2[2];
- { const uint32_t x53 = in2[1];
- { const uint32_t x51 = in2[0];
- out[0] = (x5 + x51);
- out[1] = (x7 + x53);
- out[2] = (x9 + x55);
- out[3] = (x11 + x57);
- out[4] = (x13 + x59);
- out[5] = (x15 + x61);
- out[6] = (x17 + x63);
- out[7] = (x19 + x65);
- out[8] = (x21 + x67);
- out[9] = (x23 + x69);
- out[10] = (x25 + x71);
- out[11] = (x27 + x73);
- out[12] = (x29 + x75);
- out[13] = (x31 + x77);
- out[14] = (x33 + x79);
- out[15] = (x35 + x81);
- out[16] = (x37 + x83);
- out[17] = (x39 + x85);
- out[18] = (x41 + x87);
- out[19] = (x43 + x89);
- out[20] = (x45 + x91);
- out[21] = (x47 + x93);
- out[22] = (x49 + x95);
- out[23] = (x48 + x94);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e512m569_24limbs/feadd.v b/src/Specific/solinas32_2e512m569_24limbs/feadd.v
deleted file mode 100644
index 8cf349ebb..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e512m569_24limbs.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_2e512m569_24limbs/feaddDisplay.log b/src/Specific/solinas32_2e512m569_24limbs/feaddDisplay.log
deleted file mode 100644
index 8ec776f44..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x48, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x94, x95, x93, x91, x89, x87, x85, x83, x81, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51))%core,
- ((x48 + x94), (x49 + x95), (x47 + x93), (x45 + x91), (x43 + x89), (x41 + x87), (x39 + x85), (x37 + x83), (x35 + x81), (x33 + x79), (x31 + x77), (x29 + x75), (x27 + x73), (x25 + x71), (x23 + x69), (x21 + x67), (x19 + x65), (x17 + x63), (x15 + x61), (x13 + x59), (x11 + x57), (x9 + x55), (x7 + x53), (x5 + x51)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e512m569_24limbs/feaddDisplay.v b/src/Specific/solinas32_2e512m569_24limbs/feaddDisplay.v
deleted file mode 100644
index 96a51c522..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e512m569_24limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e512m569_24limbs/fecarry.v b/src/Specific/solinas32_2e512m569_24limbs/fecarry.v
deleted file mode 100644
index 26a6aed19..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e512m569_24limbs.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_2e512m569_24limbs/fecarryDisplay.v b/src/Specific/solinas32_2e512m569_24limbs/fecarryDisplay.v
deleted file mode 100644
index a5f0b9244..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e512m569_24limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e512m569_24limbs/femul.v b/src/Specific/solinas32_2e512m569_24limbs/femul.v
deleted file mode 100644
index f4cb7be21..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e512m569_24limbs.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_2e512m569_24limbs/femulDisplay.v b/src/Specific/solinas32_2e512m569_24limbs/femulDisplay.v
deleted file mode 100644
index 36849c5d1..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e512m569_24limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e512m569_24limbs/fesquare.c b/src/Specific/solinas32_2e512m569_24limbs/fesquare.c
deleted file mode 100644
index e1d0ea01d..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/fesquare.c
+++ /dev/null
@@ -1,152 +0,0 @@
-static void fesquare(uint32_t out[24], const uint32_t in1[24]) {
- { const uint32_t x45 = in1[23];
- { const uint32_t x46 = in1[22];
- { const uint32_t x44 = in1[21];
- { const uint32_t x42 = in1[20];
- { const uint32_t x40 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x47 = (((uint64_t)x2 * x45) + ((0x2 * ((uint64_t)x4 * x46)) + (((uint64_t)x6 * x44) + (((uint64_t)x8 * x42) + ((0x2 * ((uint64_t)x10 * x40)) + (((uint64_t)x12 * x38) + (((uint64_t)x14 * x36) + ((0x2 * ((uint64_t)x16 * x34)) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + ((0x2 * ((uint64_t)x22 * x28)) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + ((0x2 * ((uint64_t)x28 * x22)) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + ((0x2 * ((uint64_t)x34 * x16)) + (((uint64_t)x36 * x14) + (((uint64_t)x38 * x12) + ((0x2 * ((uint64_t)x40 * x10)) + (((uint64_t)x42 * x8) + (((uint64_t)x44 * x6) + ((0x2 * ((uint64_t)x46 * x4)) + ((uint64_t)x45 * x2))))))))))))))))))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x46) + (((uint64_t)x4 * x44) + (((uint64_t)x6 * x42) + (((uint64_t)x8 * x40) + (((uint64_t)x10 * x38) + (((uint64_t)x12 * x36) + (((uint64_t)x14 * x34) + (((uint64_t)x16 * x32) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + (((uint64_t)x32 * x16) + (((uint64_t)x34 * x14) + (((uint64_t)x36 * x12) + (((uint64_t)x38 * x10) + (((uint64_t)x40 * x8) + (((uint64_t)x42 * x6) + (((uint64_t)x44 * x4) + ((uint64_t)x46 * x2))))))))))))))))))))))) + (0x239 * ((uint64_t)x45 * x45)));
- { uint64_t x49 = ((((uint64_t)x2 * x44) + ((0x2 * ((uint64_t)x4 * x42)) + ((0x2 * ((uint64_t)x6 * x40)) + (((uint64_t)x8 * x38) + ((0x2 * ((uint64_t)x10 * x36)) + ((0x2 * ((uint64_t)x12 * x34)) + (((uint64_t)x14 * x32) + ((0x2 * ((uint64_t)x16 * x30)) + ((0x2 * ((uint64_t)x18 * x28)) + (((uint64_t)x20 * x26) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + (((uint64_t)x26 * x20) + ((0x2 * ((uint64_t)x28 * x18)) + ((0x2 * ((uint64_t)x30 * x16)) + (((uint64_t)x32 * x14) + ((0x2 * ((uint64_t)x34 * x12)) + ((0x2 * ((uint64_t)x36 * x10)) + (((uint64_t)x38 * x8) + ((0x2 * ((uint64_t)x40 * x6)) + ((0x2 * ((uint64_t)x42 * x4)) + ((uint64_t)x44 * x2)))))))))))))))))))))) + (0x239 * ((0x2 * ((uint64_t)x46 * x45)) + (0x2 * ((uint64_t)x45 * x46)))));
- { uint64_t x50 = ((((uint64_t)x2 * x42) + ((0x2 * ((uint64_t)x4 * x40)) + (((uint64_t)x6 * x38) + (((uint64_t)x8 * x36) + ((0x2 * ((uint64_t)x10 * x34)) + (((uint64_t)x12 * x32) + (((uint64_t)x14 * x30) + ((0x2 * ((uint64_t)x16 * x28)) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + ((0x2 * ((uint64_t)x28 * x16)) + (((uint64_t)x30 * x14) + (((uint64_t)x32 * x12) + ((0x2 * ((uint64_t)x34 * x10)) + (((uint64_t)x36 * x8) + (((uint64_t)x38 * x6) + ((0x2 * ((uint64_t)x40 * x4)) + ((uint64_t)x42 * x2))))))))))))))))))))) + (0x239 * (((uint64_t)x44 * x45) + ((0x2 * ((uint64_t)x46 * x46)) + ((uint64_t)x45 * x44)))));
- { uint64_t x51 = ((((uint64_t)x2 * x40) + (((uint64_t)x4 * x38) + (((uint64_t)x6 * x36) + (((uint64_t)x8 * x34) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + (((uint64_t)x34 * x8) + (((uint64_t)x36 * x6) + (((uint64_t)x38 * x4) + ((uint64_t)x40 * x2)))))))))))))))))))) + (0x239 * (((uint64_t)x42 * x45) + (((uint64_t)x44 * x46) + (((uint64_t)x46 * x44) + ((uint64_t)x45 * x42))))));
- { uint64_t x52 = ((((uint64_t)x2 * x38) + ((0x2 * ((uint64_t)x4 * x36)) + ((0x2 * ((uint64_t)x6 * x34)) + (((uint64_t)x8 * x32) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + (((uint64_t)x14 * x26) + ((0x2 * ((uint64_t)x16 * x24)) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + ((0x2 * ((uint64_t)x24 * x16)) + (((uint64_t)x26 * x14) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + (((uint64_t)x32 * x8) + ((0x2 * ((uint64_t)x34 * x6)) + ((0x2 * ((uint64_t)x36 * x4)) + ((uint64_t)x38 * x2))))))))))))))))))) + (0x239 * ((0x2 * ((uint64_t)x40 * x45)) + ((0x2 * ((uint64_t)x42 * x46)) + (((uint64_t)x44 * x44) + ((0x2 * ((uint64_t)x46 * x42)) + (0x2 * ((uint64_t)x45 * x40))))))));
- { uint64_t x53 = ((((uint64_t)x2 * x36) + ((0x2 * ((uint64_t)x4 * x34)) + (((uint64_t)x6 * x32) + (((uint64_t)x8 * x30) + ((0x2 * ((uint64_t)x10 * x28)) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + ((0x2 * ((uint64_t)x28 * x10)) + (((uint64_t)x30 * x8) + (((uint64_t)x32 * x6) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x36 * x2)))))))))))))))))) + (0x239 * (((uint64_t)x38 * x45) + ((0x2 * ((uint64_t)x40 * x46)) + (((uint64_t)x42 * x44) + (((uint64_t)x44 * x42) + ((0x2 * ((uint64_t)x46 * x40)) + ((uint64_t)x45 * x38))))))));
- { uint64_t x54 = ((((uint64_t)x2 * x34) + (((uint64_t)x4 * x32) + (((uint64_t)x6 * x30) + (((uint64_t)x8 * x28) + (((uint64_t)x10 * x26) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + (((uint64_t)x26 * x10) + (((uint64_t)x28 * x8) + (((uint64_t)x30 * x6) + (((uint64_t)x32 * x4) + ((uint64_t)x34 * x2))))))))))))))))) + (0x239 * (((uint64_t)x36 * x45) + (((uint64_t)x38 * x46) + (((uint64_t)x40 * x44) + (((uint64_t)x42 * x42) + (((uint64_t)x44 * x40) + (((uint64_t)x46 * x38) + ((uint64_t)x45 * x36)))))))));
- { uint64_t x55 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + (((uint64_t)x8 * x26) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + (((uint64_t)x26 * x8) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x239 * ((0x2 * ((uint64_t)x34 * x45)) + ((0x2 * ((uint64_t)x36 * x46)) + (((uint64_t)x38 * x44) + ((0x2 * ((uint64_t)x40 * x42)) + ((0x2 * ((uint64_t)x42 * x40)) + (((uint64_t)x44 * x38) + ((0x2 * ((uint64_t)x46 * x36)) + (0x2 * ((uint64_t)x45 * x34)))))))))));
- { uint64_t x56 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + ((0x2 * ((uint64_t)x10 * x22)) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + ((0x2 * ((uint64_t)x22 * x10)) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x239 * (((uint64_t)x32 * x45) + ((0x2 * ((uint64_t)x34 * x46)) + (((uint64_t)x36 * x44) + (((uint64_t)x38 * x42) + ((0x2 * ((uint64_t)x40 * x40)) + (((uint64_t)x42 * x38) + (((uint64_t)x44 * x36) + ((0x2 * ((uint64_t)x46 * x34)) + ((uint64_t)x45 * x32)))))))))));
- { uint64_t x57 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x239 * (((uint64_t)x30 * x45) + (((uint64_t)x32 * x46) + (((uint64_t)x34 * x44) + (((uint64_t)x36 * x42) + (((uint64_t)x38 * x40) + (((uint64_t)x40 * x38) + (((uint64_t)x42 * x36) + (((uint64_t)x44 * x34) + (((uint64_t)x46 * x32) + ((uint64_t)x45 * x30))))))))))));
- { uint64_t x58 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x239 * ((0x2 * ((uint64_t)x28 * x45)) + ((0x2 * ((uint64_t)x30 * x46)) + (((uint64_t)x32 * x44) + ((0x2 * ((uint64_t)x34 * x42)) + ((0x2 * ((uint64_t)x36 * x40)) + (((uint64_t)x38 * x38) + ((0x2 * ((uint64_t)x40 * x36)) + ((0x2 * ((uint64_t)x42 * x34)) + (((uint64_t)x44 * x32) + ((0x2 * ((uint64_t)x46 * x30)) + (0x2 * ((uint64_t)x45 * x28))))))))))))));
- { uint64_t x59 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x239 * (((uint64_t)x26 * x45) + ((0x2 * ((uint64_t)x28 * x46)) + (((uint64_t)x30 * x44) + (((uint64_t)x32 * x42) + ((0x2 * ((uint64_t)x34 * x40)) + (((uint64_t)x36 * x38) + (((uint64_t)x38 * x36) + ((0x2 * ((uint64_t)x40 * x34)) + (((uint64_t)x42 * x32) + (((uint64_t)x44 * x30) + ((0x2 * ((uint64_t)x46 * x28)) + ((uint64_t)x45 * x26))))))))))))));
- { uint64_t x60 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x239 * (((uint64_t)x24 * x45) + (((uint64_t)x26 * x46) + (((uint64_t)x28 * x44) + (((uint64_t)x30 * x42) + (((uint64_t)x32 * x40) + (((uint64_t)x34 * x38) + (((uint64_t)x36 * x36) + (((uint64_t)x38 * x34) + (((uint64_t)x40 * x32) + (((uint64_t)x42 * x30) + (((uint64_t)x44 * x28) + (((uint64_t)x46 * x26) + ((uint64_t)x45 * x24)))))))))))))));
- { uint64_t x61 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x239 * ((0x2 * ((uint64_t)x22 * x45)) + ((0x2 * ((uint64_t)x24 * x46)) + (((uint64_t)x26 * x44) + ((0x2 * ((uint64_t)x28 * x42)) + ((0x2 * ((uint64_t)x30 * x40)) + (((uint64_t)x32 * x38) + ((0x2 * ((uint64_t)x34 * x36)) + ((0x2 * ((uint64_t)x36 * x34)) + (((uint64_t)x38 * x32) + ((0x2 * ((uint64_t)x40 * x30)) + ((0x2 * ((uint64_t)x42 * x28)) + (((uint64_t)x44 * x26) + ((0x2 * ((uint64_t)x46 * x24)) + (0x2 * ((uint64_t)x45 * x22)))))))))))))))));
- { uint64_t x62 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x239 * (((uint64_t)x20 * x45) + ((0x2 * ((uint64_t)x22 * x46)) + (((uint64_t)x24 * x44) + (((uint64_t)x26 * x42) + ((0x2 * ((uint64_t)x28 * x40)) + (((uint64_t)x30 * x38) + (((uint64_t)x32 * x36) + ((0x2 * ((uint64_t)x34 * x34)) + (((uint64_t)x36 * x32) + (((uint64_t)x38 * x30) + ((0x2 * ((uint64_t)x40 * x28)) + (((uint64_t)x42 * x26) + (((uint64_t)x44 * x24) + ((0x2 * ((uint64_t)x46 * x22)) + ((uint64_t)x45 * x20)))))))))))))))));
- { uint64_t x63 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x239 * (((uint64_t)x18 * x45) + (((uint64_t)x20 * x46) + (((uint64_t)x22 * x44) + (((uint64_t)x24 * x42) + (((uint64_t)x26 * x40) + (((uint64_t)x28 * x38) + (((uint64_t)x30 * x36) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + (((uint64_t)x36 * x30) + (((uint64_t)x38 * x28) + (((uint64_t)x40 * x26) + (((uint64_t)x42 * x24) + (((uint64_t)x44 * x22) + (((uint64_t)x46 * x20) + ((uint64_t)x45 * x18))))))))))))))))));
- { uint64_t x64 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x239 * ((0x2 * ((uint64_t)x16 * x45)) + ((0x2 * ((uint64_t)x18 * x46)) + (((uint64_t)x20 * x44) + ((0x2 * ((uint64_t)x22 * x42)) + ((0x2 * ((uint64_t)x24 * x40)) + (((uint64_t)x26 * x38) + ((0x2 * ((uint64_t)x28 * x36)) + ((0x2 * ((uint64_t)x30 * x34)) + (((uint64_t)x32 * x32) + ((0x2 * ((uint64_t)x34 * x30)) + ((0x2 * ((uint64_t)x36 * x28)) + (((uint64_t)x38 * x26) + ((0x2 * ((uint64_t)x40 * x24)) + ((0x2 * ((uint64_t)x42 * x22)) + (((uint64_t)x44 * x20) + ((0x2 * ((uint64_t)x46 * x18)) + (0x2 * ((uint64_t)x45 * x16))))))))))))))))))));
- { uint64_t x65 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x239 * (((uint64_t)x14 * x45) + ((0x2 * ((uint64_t)x16 * x46)) + (((uint64_t)x18 * x44) + (((uint64_t)x20 * x42) + ((0x2 * ((uint64_t)x22 * x40)) + (((uint64_t)x24 * x38) + (((uint64_t)x26 * x36) + ((0x2 * ((uint64_t)x28 * x34)) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + ((0x2 * ((uint64_t)x34 * x28)) + (((uint64_t)x36 * x26) + (((uint64_t)x38 * x24) + ((0x2 * ((uint64_t)x40 * x22)) + (((uint64_t)x42 * x20) + (((uint64_t)x44 * x18) + ((0x2 * ((uint64_t)x46 * x16)) + ((uint64_t)x45 * x14))))))))))))))))))));
- { uint64_t x66 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x239 * (((uint64_t)x12 * x45) + (((uint64_t)x14 * x46) + (((uint64_t)x16 * x44) + (((uint64_t)x18 * x42) + (((uint64_t)x20 * x40) + (((uint64_t)x22 * x38) + (((uint64_t)x24 * x36) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + (((uint64_t)x30 * x30) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + (((uint64_t)x36 * x24) + (((uint64_t)x38 * x22) + (((uint64_t)x40 * x20) + (((uint64_t)x42 * x18) + (((uint64_t)x44 * x16) + (((uint64_t)x46 * x14) + ((uint64_t)x45 * x12)))))))))))))))))))));
- { uint64_t x67 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x239 * ((0x2 * ((uint64_t)x10 * x45)) + ((0x2 * ((uint64_t)x12 * x46)) + (((uint64_t)x14 * x44) + ((0x2 * ((uint64_t)x16 * x42)) + ((0x2 * ((uint64_t)x18 * x40)) + (((uint64_t)x20 * x38) + ((0x2 * ((uint64_t)x22 * x36)) + ((0x2 * ((uint64_t)x24 * x34)) + (((uint64_t)x26 * x32) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + (((uint64_t)x32 * x26) + ((0x2 * ((uint64_t)x34 * x24)) + ((0x2 * ((uint64_t)x36 * x22)) + (((uint64_t)x38 * x20) + ((0x2 * ((uint64_t)x40 * x18)) + ((0x2 * ((uint64_t)x42 * x16)) + (((uint64_t)x44 * x14) + ((0x2 * ((uint64_t)x46 * x12)) + (0x2 * ((uint64_t)x45 * x10)))))))))))))))))))))));
- { uint64_t x68 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x239 * (((uint64_t)x8 * x45) + ((0x2 * ((uint64_t)x10 * x46)) + (((uint64_t)x12 * x44) + (((uint64_t)x14 * x42) + ((0x2 * ((uint64_t)x16 * x40)) + (((uint64_t)x18 * x38) + (((uint64_t)x20 * x36) + ((0x2 * ((uint64_t)x22 * x34)) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + ((0x2 * ((uint64_t)x28 * x28)) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + ((0x2 * ((uint64_t)x34 * x22)) + (((uint64_t)x36 * x20) + (((uint64_t)x38 * x18) + ((0x2 * ((uint64_t)x40 * x16)) + (((uint64_t)x42 * x14) + (((uint64_t)x44 * x12) + ((0x2 * ((uint64_t)x46 * x10)) + ((uint64_t)x45 * x8)))))))))))))))))))))));
- { uint64_t x69 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x239 * (((uint64_t)x6 * x45) + (((uint64_t)x8 * x46) + (((uint64_t)x10 * x44) + (((uint64_t)x12 * x42) + (((uint64_t)x14 * x40) + (((uint64_t)x16 * x38) + (((uint64_t)x18 * x36) + (((uint64_t)x20 * x34) + (((uint64_t)x22 * x32) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + (((uint64_t)x32 * x22) + (((uint64_t)x34 * x20) + (((uint64_t)x36 * x18) + (((uint64_t)x38 * x16) + (((uint64_t)x40 * x14) + (((uint64_t)x42 * x12) + (((uint64_t)x44 * x10) + (((uint64_t)x46 * x8) + ((uint64_t)x45 * x6))))))))))))))))))))))));
- { uint64_t x70 = (((uint64_t)x2 * x2) + (0x239 * ((0x2 * ((uint64_t)x4 * x45)) + ((0x2 * ((uint64_t)x6 * x46)) + (((uint64_t)x8 * x44) + ((0x2 * ((uint64_t)x10 * x42)) + ((0x2 * ((uint64_t)x12 * x40)) + (((uint64_t)x14 * x38) + ((0x2 * ((uint64_t)x16 * x36)) + ((0x2 * ((uint64_t)x18 * x34)) + (((uint64_t)x20 * x32) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + (((uint64_t)x26 * x26) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + (((uint64_t)x32 * x20) + ((0x2 * ((uint64_t)x34 * x18)) + ((0x2 * ((uint64_t)x36 * x16)) + (((uint64_t)x38 * x14) + ((0x2 * ((uint64_t)x40 * x12)) + ((0x2 * ((uint64_t)x42 * x10)) + (((uint64_t)x44 * x8) + ((0x2 * ((uint64_t)x46 * x6)) + (0x2 * ((uint64_t)x45 * x4))))))))))))))))))))))))));
- { uint64_t x71 = (x70 >> 0x16);
- { uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- { uint64_t x73 = (x71 + x69);
- { uint64_t x74 = (x73 >> 0x15);
- { uint32_t x75 = ((uint32_t)x73 & 0x1fffff);
- { uint64_t x76 = (x74 + x68);
- { uint64_t x77 = (x76 >> 0x15);
- { uint32_t x78 = ((uint32_t)x76 & 0x1fffff);
- { uint64_t x79 = (x77 + x67);
- { uint64_t x80 = (x79 >> 0x16);
- { uint32_t x81 = ((uint32_t)x79 & 0x3fffff);
- { uint64_t x82 = (x80 + x66);
- { uint64_t x83 = (x82 >> 0x15);
- { uint32_t x84 = ((uint32_t)x82 & 0x1fffff);
- { uint64_t x85 = (x83 + x65);
- { uint64_t x86 = (x85 >> 0x15);
- { uint32_t x87 = ((uint32_t)x85 & 0x1fffff);
- { uint64_t x88 = (x86 + x64);
- { uint64_t x89 = (x88 >> 0x16);
- { uint32_t x90 = ((uint32_t)x88 & 0x3fffff);
- { uint64_t x91 = (x89 + x63);
- { uint64_t x92 = (x91 >> 0x15);
- { uint32_t x93 = ((uint32_t)x91 & 0x1fffff);
- { uint64_t x94 = (x92 + x62);
- { uint64_t x95 = (x94 >> 0x15);
- { uint32_t x96 = ((uint32_t)x94 & 0x1fffff);
- { uint64_t x97 = (x95 + x61);
- { uint64_t x98 = (x97 >> 0x16);
- { uint32_t x99 = ((uint32_t)x97 & 0x3fffff);
- { uint64_t x100 = (x98 + x60);
- { uint64_t x101 = (x100 >> 0x15);
- { uint32_t x102 = ((uint32_t)x100 & 0x1fffff);
- { uint64_t x103 = (x101 + x59);
- { uint64_t x104 = (x103 >> 0x15);
- { uint32_t x105 = ((uint32_t)x103 & 0x1fffff);
- { uint64_t x106 = (x104 + x58);
- { uint64_t x107 = (x106 >> 0x16);
- { uint32_t x108 = ((uint32_t)x106 & 0x3fffff);
- { uint64_t x109 = (x107 + x57);
- { uint64_t x110 = (x109 >> 0x15);
- { uint32_t x111 = ((uint32_t)x109 & 0x1fffff);
- { uint64_t x112 = (x110 + x56);
- { uint64_t x113 = (x112 >> 0x15);
- { uint32_t x114 = ((uint32_t)x112 & 0x1fffff);
- { uint64_t x115 = (x113 + x55);
- { uint64_t x116 = (x115 >> 0x16);
- { uint32_t x117 = ((uint32_t)x115 & 0x3fffff);
- { uint64_t x118 = (x116 + x54);
- { uint64_t x119 = (x118 >> 0x15);
- { uint32_t x120 = ((uint32_t)x118 & 0x1fffff);
- { uint64_t x121 = (x119 + x53);
- { uint64_t x122 = (x121 >> 0x15);
- { uint32_t x123 = ((uint32_t)x121 & 0x1fffff);
- { uint64_t x124 = (x122 + x52);
- { uint64_t x125 = (x124 >> 0x16);
- { uint32_t x126 = ((uint32_t)x124 & 0x3fffff);
- { uint64_t x127 = (x125 + x51);
- { uint64_t x128 = (x127 >> 0x15);
- { uint32_t x129 = ((uint32_t)x127 & 0x1fffff);
- { uint64_t x130 = (x128 + x50);
- { uint64_t x131 = (x130 >> 0x15);
- { uint32_t x132 = ((uint32_t)x130 & 0x1fffff);
- { uint64_t x133 = (x131 + x49);
- { uint64_t x134 = (x133 >> 0x16);
- { uint32_t x135 = ((uint32_t)x133 & 0x3fffff);
- { uint64_t x136 = (x134 + x48);
- { uint64_t x137 = (x136 >> 0x15);
- { uint32_t x138 = ((uint32_t)x136 & 0x1fffff);
- { uint64_t x139 = (x137 + x47);
- { uint32_t x140 = (uint32_t) (x139 >> 0x15);
- { uint32_t x141 = ((uint32_t)x139 & 0x1fffff);
- { uint64_t x142 = (x72 + ((uint64_t)0x239 * x140));
- { uint32_t x143 = (uint32_t) (x142 >> 0x16);
- { uint32_t x144 = ((uint32_t)x142 & 0x3fffff);
- { uint32_t x145 = (x143 + x75);
- { uint32_t x146 = (x145 >> 0x15);
- { uint32_t x147 = (x145 & 0x1fffff);
- out[0] = x144;
- out[1] = x147;
- out[2] = (x146 + x78);
- out[3] = x81;
- out[4] = x84;
- out[5] = x87;
- out[6] = x90;
- out[7] = x93;
- out[8] = x96;
- out[9] = x99;
- out[10] = x102;
- out[11] = x105;
- out[12] = x108;
- out[13] = x111;
- out[14] = x114;
- out[15] = x117;
- out[16] = x120;
- out[17] = x123;
- out[18] = x126;
- out[19] = x129;
- out[20] = x132;
- out[21] = x135;
- out[22] = x138;
- out[23] = x141;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e512m569_24limbs/fesquare.v b/src/Specific/solinas32_2e512m569_24limbs/fesquare.v
deleted file mode 100644
index 39f6a4725..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e512m569_24limbs.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_2e512m569_24limbs/fesquareDisplay.log b/src/Specific/solinas32_2e512m569_24limbs/fesquareDisplay.log
deleted file mode 100644
index a942ed88f..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,108 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x45, x46, x44, x42, x40, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x47 = (((uint64_t)x2 * x45) + ((0x2 * ((uint64_t)x4 * x46)) + (((uint64_t)x6 * x44) + (((uint64_t)x8 * x42) + ((0x2 * ((uint64_t)x10 * x40)) + (((uint64_t)x12 * x38) + (((uint64_t)x14 * x36) + ((0x2 * ((uint64_t)x16 * x34)) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + ((0x2 * ((uint64_t)x22 * x28)) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + ((0x2 * ((uint64_t)x28 * x22)) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + ((0x2 * ((uint64_t)x34 * x16)) + (((uint64_t)x36 * x14) + (((uint64_t)x38 * x12) + ((0x2 * ((uint64_t)x40 * x10)) + (((uint64_t)x42 * x8) + (((uint64_t)x44 * x6) + ((0x2 * ((uint64_t)x46 * x4)) + ((uint64_t)x45 * x2))))))))))))))))))))))));
- uint64_t x48 = ((((uint64_t)x2 * x46) + (((uint64_t)x4 * x44) + (((uint64_t)x6 * x42) + (((uint64_t)x8 * x40) + (((uint64_t)x10 * x38) + (((uint64_t)x12 * x36) + (((uint64_t)x14 * x34) + (((uint64_t)x16 * x32) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + (((uint64_t)x32 * x16) + (((uint64_t)x34 * x14) + (((uint64_t)x36 * x12) + (((uint64_t)x38 * x10) + (((uint64_t)x40 * x8) + (((uint64_t)x42 * x6) + (((uint64_t)x44 * x4) + ((uint64_t)x46 * x2))))))))))))))))))))))) + (0x239 * ((uint64_t)x45 * x45)));
- uint64_t x49 = ((((uint64_t)x2 * x44) + ((0x2 * ((uint64_t)x4 * x42)) + ((0x2 * ((uint64_t)x6 * x40)) + (((uint64_t)x8 * x38) + ((0x2 * ((uint64_t)x10 * x36)) + ((0x2 * ((uint64_t)x12 * x34)) + (((uint64_t)x14 * x32) + ((0x2 * ((uint64_t)x16 * x30)) + ((0x2 * ((uint64_t)x18 * x28)) + (((uint64_t)x20 * x26) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + (((uint64_t)x26 * x20) + ((0x2 * ((uint64_t)x28 * x18)) + ((0x2 * ((uint64_t)x30 * x16)) + (((uint64_t)x32 * x14) + ((0x2 * ((uint64_t)x34 * x12)) + ((0x2 * ((uint64_t)x36 * x10)) + (((uint64_t)x38 * x8) + ((0x2 * ((uint64_t)x40 * x6)) + ((0x2 * ((uint64_t)x42 * x4)) + ((uint64_t)x44 * x2)))))))))))))))))))))) + (0x239 * ((0x2 * ((uint64_t)x46 * x45)) + (0x2 * ((uint64_t)x45 * x46)))));
- uint64_t x50 = ((((uint64_t)x2 * x42) + ((0x2 * ((uint64_t)x4 * x40)) + (((uint64_t)x6 * x38) + (((uint64_t)x8 * x36) + ((0x2 * ((uint64_t)x10 * x34)) + (((uint64_t)x12 * x32) + (((uint64_t)x14 * x30) + ((0x2 * ((uint64_t)x16 * x28)) + (((uint64_t)x18 * x26) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + (((uint64_t)x26 * x18) + ((0x2 * ((uint64_t)x28 * x16)) + (((uint64_t)x30 * x14) + (((uint64_t)x32 * x12) + ((0x2 * ((uint64_t)x34 * x10)) + (((uint64_t)x36 * x8) + (((uint64_t)x38 * x6) + ((0x2 * ((uint64_t)x40 * x4)) + ((uint64_t)x42 * x2))))))))))))))))))))) + (0x239 * (((uint64_t)x44 * x45) + ((0x2 * ((uint64_t)x46 * x46)) + ((uint64_t)x45 * x44)))));
- uint64_t x51 = ((((uint64_t)x2 * x40) + (((uint64_t)x4 * x38) + (((uint64_t)x6 * x36) + (((uint64_t)x8 * x34) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + (((uint64_t)x34 * x8) + (((uint64_t)x36 * x6) + (((uint64_t)x38 * x4) + ((uint64_t)x40 * x2)))))))))))))))))))) + (0x239 * (((uint64_t)x42 * x45) + (((uint64_t)x44 * x46) + (((uint64_t)x46 * x44) + ((uint64_t)x45 * x42))))));
- uint64_t x52 = ((((uint64_t)x2 * x38) + ((0x2 * ((uint64_t)x4 * x36)) + ((0x2 * ((uint64_t)x6 * x34)) + (((uint64_t)x8 * x32) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + (((uint64_t)x14 * x26) + ((0x2 * ((uint64_t)x16 * x24)) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + ((0x2 * ((uint64_t)x24 * x16)) + (((uint64_t)x26 * x14) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + (((uint64_t)x32 * x8) + ((0x2 * ((uint64_t)x34 * x6)) + ((0x2 * ((uint64_t)x36 * x4)) + ((uint64_t)x38 * x2))))))))))))))))))) + (0x239 * ((0x2 * ((uint64_t)x40 * x45)) + ((0x2 * ((uint64_t)x42 * x46)) + (((uint64_t)x44 * x44) + ((0x2 * ((uint64_t)x46 * x42)) + (0x2 * ((uint64_t)x45 * x40))))))));
- uint64_t x53 = ((((uint64_t)x2 * x36) + ((0x2 * ((uint64_t)x4 * x34)) + (((uint64_t)x6 * x32) + (((uint64_t)x8 * x30) + ((0x2 * ((uint64_t)x10 * x28)) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + ((0x2 * ((uint64_t)x16 * x22)) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + ((0x2 * ((uint64_t)x22 * x16)) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + ((0x2 * ((uint64_t)x28 * x10)) + (((uint64_t)x30 * x8) + (((uint64_t)x32 * x6) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x36 * x2)))))))))))))))))) + (0x239 * (((uint64_t)x38 * x45) + ((0x2 * ((uint64_t)x40 * x46)) + (((uint64_t)x42 * x44) + (((uint64_t)x44 * x42) + ((0x2 * ((uint64_t)x46 * x40)) + ((uint64_t)x45 * x38))))))));
- uint64_t x54 = ((((uint64_t)x2 * x34) + (((uint64_t)x4 * x32) + (((uint64_t)x6 * x30) + (((uint64_t)x8 * x28) + (((uint64_t)x10 * x26) + (((uint64_t)x12 * x24) + (((uint64_t)x14 * x22) + (((uint64_t)x16 * x20) + (((uint64_t)x18 * x18) + (((uint64_t)x20 * x16) + (((uint64_t)x22 * x14) + (((uint64_t)x24 * x12) + (((uint64_t)x26 * x10) + (((uint64_t)x28 * x8) + (((uint64_t)x30 * x6) + (((uint64_t)x32 * x4) + ((uint64_t)x34 * x2))))))))))))))))) + (0x239 * (((uint64_t)x36 * x45) + (((uint64_t)x38 * x46) + (((uint64_t)x40 * x44) + (((uint64_t)x42 * x42) + (((uint64_t)x44 * x40) + (((uint64_t)x46 * x38) + ((uint64_t)x45 * x36)))))))));
- uint64_t x55 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + (((uint64_t)x8 * x26) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + (((uint64_t)x26 * x8) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (0x239 * ((0x2 * ((uint64_t)x34 * x45)) + ((0x2 * ((uint64_t)x36 * x46)) + (((uint64_t)x38 * x44) + ((0x2 * ((uint64_t)x40 * x42)) + ((0x2 * ((uint64_t)x42 * x40)) + (((uint64_t)x44 * x38) + ((0x2 * ((uint64_t)x46 * x36)) + (0x2 * ((uint64_t)x45 * x34)))))))))));
- uint64_t x56 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + (((uint64_t)x6 * x26) + (((uint64_t)x8 * x24) + ((0x2 * ((uint64_t)x10 * x22)) + (((uint64_t)x12 * x20) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + (((uint64_t)x20 * x12) + ((0x2 * ((uint64_t)x22 * x10)) + (((uint64_t)x24 * x8) + (((uint64_t)x26 * x6) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x239 * (((uint64_t)x32 * x45) + ((0x2 * ((uint64_t)x34 * x46)) + (((uint64_t)x36 * x44) + (((uint64_t)x38 * x42) + ((0x2 * ((uint64_t)x40 * x40)) + (((uint64_t)x42 * x38) + (((uint64_t)x44 * x36) + ((0x2 * ((uint64_t)x46 * x34)) + ((uint64_t)x45 * x32)))))))))));
- uint64_t x57 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x239 * (((uint64_t)x30 * x45) + (((uint64_t)x32 * x46) + (((uint64_t)x34 * x44) + (((uint64_t)x36 * x42) + (((uint64_t)x38 * x40) + (((uint64_t)x40 * x38) + (((uint64_t)x42 * x36) + (((uint64_t)x44 * x34) + (((uint64_t)x46 * x32) + ((uint64_t)x45 * x30))))))))))));
- uint64_t x58 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + (((uint64_t)x8 * x20) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + (((uint64_t)x20 * x8) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x239 * ((0x2 * ((uint64_t)x28 * x45)) + ((0x2 * ((uint64_t)x30 * x46)) + (((uint64_t)x32 * x44) + ((0x2 * ((uint64_t)x34 * x42)) + ((0x2 * ((uint64_t)x36 * x40)) + (((uint64_t)x38 * x38) + ((0x2 * ((uint64_t)x40 * x36)) + ((0x2 * ((uint64_t)x42 * x34)) + (((uint64_t)x44 * x32) + ((0x2 * ((uint64_t)x46 * x30)) + (0x2 * ((uint64_t)x45 * x28))))))))))))));
- uint64_t x59 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + ((0x2 * ((uint64_t)x10 * x16)) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + ((0x2 * ((uint64_t)x16 * x10)) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (0x239 * (((uint64_t)x26 * x45) + ((0x2 * ((uint64_t)x28 * x46)) + (((uint64_t)x30 * x44) + (((uint64_t)x32 * x42) + ((0x2 * ((uint64_t)x34 * x40)) + (((uint64_t)x36 * x38) + (((uint64_t)x38 * x36) + ((0x2 * ((uint64_t)x40 * x34)) + (((uint64_t)x42 * x32) + (((uint64_t)x44 * x30) + ((0x2 * ((uint64_t)x46 * x28)) + ((uint64_t)x45 * x26))))))))))))));
- uint64_t x60 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + (((uint64_t)x12 * x12) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (0x239 * (((uint64_t)x24 * x45) + (((uint64_t)x26 * x46) + (((uint64_t)x28 * x44) + (((uint64_t)x30 * x42) + (((uint64_t)x32 * x40) + (((uint64_t)x34 * x38) + (((uint64_t)x36 * x36) + (((uint64_t)x38 * x34) + (((uint64_t)x40 * x32) + (((uint64_t)x42 * x30) + (((uint64_t)x44 * x28) + (((uint64_t)x46 * x26) + ((uint64_t)x45 * x24)))))))))))))));
- uint64_t x61 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + (((uint64_t)x8 * x14) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + (((uint64_t)x14 * x8) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (0x239 * ((0x2 * ((uint64_t)x22 * x45)) + ((0x2 * ((uint64_t)x24 * x46)) + (((uint64_t)x26 * x44) + ((0x2 * ((uint64_t)x28 * x42)) + ((0x2 * ((uint64_t)x30 * x40)) + (((uint64_t)x32 * x38) + ((0x2 * ((uint64_t)x34 * x36)) + ((0x2 * ((uint64_t)x36 * x34)) + (((uint64_t)x38 * x32) + ((0x2 * ((uint64_t)x40 * x30)) + ((0x2 * ((uint64_t)x42 * x28)) + (((uint64_t)x44 * x26) + ((0x2 * ((uint64_t)x46 * x24)) + (0x2 * ((uint64_t)x45 * x22)))))))))))))))));
- uint64_t x62 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + (((uint64_t)x8 * x12) + ((0x2 * ((uint64_t)x10 * x10)) + (((uint64_t)x12 * x8) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x239 * (((uint64_t)x20 * x45) + ((0x2 * ((uint64_t)x22 * x46)) + (((uint64_t)x24 * x44) + (((uint64_t)x26 * x42) + ((0x2 * ((uint64_t)x28 * x40)) + (((uint64_t)x30 * x38) + (((uint64_t)x32 * x36) + ((0x2 * ((uint64_t)x34 * x34)) + (((uint64_t)x36 * x32) + (((uint64_t)x38 * x30) + ((0x2 * ((uint64_t)x40 * x28)) + (((uint64_t)x42 * x26) + (((uint64_t)x44 * x24) + ((0x2 * ((uint64_t)x46 * x22)) + ((uint64_t)x45 * x20)))))))))))))))));
- uint64_t x63 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x239 * (((uint64_t)x18 * x45) + (((uint64_t)x20 * x46) + (((uint64_t)x22 * x44) + (((uint64_t)x24 * x42) + (((uint64_t)x26 * x40) + (((uint64_t)x28 * x38) + (((uint64_t)x30 * x36) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + (((uint64_t)x36 * x30) + (((uint64_t)x38 * x28) + (((uint64_t)x40 * x26) + (((uint64_t)x42 * x24) + (((uint64_t)x44 * x22) + (((uint64_t)x46 * x20) + ((uint64_t)x45 * x18))))))))))))))))));
- uint64_t x64 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + (((uint64_t)x8 * x8) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x239 * ((0x2 * ((uint64_t)x16 * x45)) + ((0x2 * ((uint64_t)x18 * x46)) + (((uint64_t)x20 * x44) + ((0x2 * ((uint64_t)x22 * x42)) + ((0x2 * ((uint64_t)x24 * x40)) + (((uint64_t)x26 * x38) + ((0x2 * ((uint64_t)x28 * x36)) + ((0x2 * ((uint64_t)x30 * x34)) + (((uint64_t)x32 * x32) + ((0x2 * ((uint64_t)x34 * x30)) + ((0x2 * ((uint64_t)x36 * x28)) + (((uint64_t)x38 * x26) + ((0x2 * ((uint64_t)x40 * x24)) + ((0x2 * ((uint64_t)x42 * x22)) + (((uint64_t)x44 * x20) + ((0x2 * ((uint64_t)x46 * x18)) + (0x2 * ((uint64_t)x45 * x16))))))))))))))))))));
- uint64_t x65 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (0x239 * (((uint64_t)x14 * x45) + ((0x2 * ((uint64_t)x16 * x46)) + (((uint64_t)x18 * x44) + (((uint64_t)x20 * x42) + ((0x2 * ((uint64_t)x22 * x40)) + (((uint64_t)x24 * x38) + (((uint64_t)x26 * x36) + ((0x2 * ((uint64_t)x28 * x34)) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + ((0x2 * ((uint64_t)x34 * x28)) + (((uint64_t)x36 * x26) + (((uint64_t)x38 * x24) + ((0x2 * ((uint64_t)x40 * x22)) + (((uint64_t)x42 * x20) + (((uint64_t)x44 * x18) + ((0x2 * ((uint64_t)x46 * x16)) + ((uint64_t)x45 * x14))))))))))))))))))));
- uint64_t x66 = ((((uint64_t)x2 * x10) + (((uint64_t)x4 * x8) + (((uint64_t)x6 * x6) + (((uint64_t)x8 * x4) + ((uint64_t)x10 * x2))))) + (0x239 * (((uint64_t)x12 * x45) + (((uint64_t)x14 * x46) + (((uint64_t)x16 * x44) + (((uint64_t)x18 * x42) + (((uint64_t)x20 * x40) + (((uint64_t)x22 * x38) + (((uint64_t)x24 * x36) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + (((uint64_t)x30 * x30) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + (((uint64_t)x36 * x24) + (((uint64_t)x38 * x22) + (((uint64_t)x40 * x20) + (((uint64_t)x42 * x18) + (((uint64_t)x44 * x16) + (((uint64_t)x46 * x14) + ((uint64_t)x45 * x12)))))))))))))))))))));
- uint64_t x67 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (0x239 * ((0x2 * ((uint64_t)x10 * x45)) + ((0x2 * ((uint64_t)x12 * x46)) + (((uint64_t)x14 * x44) + ((0x2 * ((uint64_t)x16 * x42)) + ((0x2 * ((uint64_t)x18 * x40)) + (((uint64_t)x20 * x38) + ((0x2 * ((uint64_t)x22 * x36)) + ((0x2 * ((uint64_t)x24 * x34)) + (((uint64_t)x26 * x32) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + (((uint64_t)x32 * x26) + ((0x2 * ((uint64_t)x34 * x24)) + ((0x2 * ((uint64_t)x36 * x22)) + (((uint64_t)x38 * x20) + ((0x2 * ((uint64_t)x40 * x18)) + ((0x2 * ((uint64_t)x42 * x16)) + (((uint64_t)x44 * x14) + ((0x2 * ((uint64_t)x46 * x12)) + (0x2 * ((uint64_t)x45 * x10)))))))))))))))))))))));
- uint64_t x68 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x239 * (((uint64_t)x8 * x45) + ((0x2 * ((uint64_t)x10 * x46)) + (((uint64_t)x12 * x44) + (((uint64_t)x14 * x42) + ((0x2 * ((uint64_t)x16 * x40)) + (((uint64_t)x18 * x38) + (((uint64_t)x20 * x36) + ((0x2 * ((uint64_t)x22 * x34)) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + ((0x2 * ((uint64_t)x28 * x28)) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + ((0x2 * ((uint64_t)x34 * x22)) + (((uint64_t)x36 * x20) + (((uint64_t)x38 * x18) + ((0x2 * ((uint64_t)x40 * x16)) + (((uint64_t)x42 * x14) + (((uint64_t)x44 * x12) + ((0x2 * ((uint64_t)x46 * x10)) + ((uint64_t)x45 * x8)))))))))))))))))))))));
- uint64_t x69 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x239 * (((uint64_t)x6 * x45) + (((uint64_t)x8 * x46) + (((uint64_t)x10 * x44) + (((uint64_t)x12 * x42) + (((uint64_t)x14 * x40) + (((uint64_t)x16 * x38) + (((uint64_t)x18 * x36) + (((uint64_t)x20 * x34) + (((uint64_t)x22 * x32) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + (((uint64_t)x32 * x22) + (((uint64_t)x34 * x20) + (((uint64_t)x36 * x18) + (((uint64_t)x38 * x16) + (((uint64_t)x40 * x14) + (((uint64_t)x42 * x12) + (((uint64_t)x44 * x10) + (((uint64_t)x46 * x8) + ((uint64_t)x45 * x6))))))))))))))))))))))));
- uint64_t x70 = (((uint64_t)x2 * x2) + (0x239 * ((0x2 * ((uint64_t)x4 * x45)) + ((0x2 * ((uint64_t)x6 * x46)) + (((uint64_t)x8 * x44) + ((0x2 * ((uint64_t)x10 * x42)) + ((0x2 * ((uint64_t)x12 * x40)) + (((uint64_t)x14 * x38) + ((0x2 * ((uint64_t)x16 * x36)) + ((0x2 * ((uint64_t)x18 * x34)) + (((uint64_t)x20 * x32) + ((0x2 * ((uint64_t)x22 * x30)) + ((0x2 * ((uint64_t)x24 * x28)) + (((uint64_t)x26 * x26) + ((0x2 * ((uint64_t)x28 * x24)) + ((0x2 * ((uint64_t)x30 * x22)) + (((uint64_t)x32 * x20) + ((0x2 * ((uint64_t)x34 * x18)) + ((0x2 * ((uint64_t)x36 * x16)) + (((uint64_t)x38 * x14) + ((0x2 * ((uint64_t)x40 * x12)) + ((0x2 * ((uint64_t)x42 * x10)) + (((uint64_t)x44 * x8) + ((0x2 * ((uint64_t)x46 * x6)) + (0x2 * ((uint64_t)x45 * x4))))))))))))))))))))))))));
- uint64_t x71 = (x70 >> 0x16);
- uint32_t x72 = ((uint32_t)x70 & 0x3fffff);
- uint64_t x73 = (x71 + x69);
- uint64_t x74 = (x73 >> 0x15);
- uint32_t x75 = ((uint32_t)x73 & 0x1fffff);
- uint64_t x76 = (x74 + x68);
- uint64_t x77 = (x76 >> 0x15);
- uint32_t x78 = ((uint32_t)x76 & 0x1fffff);
- uint64_t x79 = (x77 + x67);
- uint64_t x80 = (x79 >> 0x16);
- uint32_t x81 = ((uint32_t)x79 & 0x3fffff);
- uint64_t x82 = (x80 + x66);
- uint64_t x83 = (x82 >> 0x15);
- uint32_t x84 = ((uint32_t)x82 & 0x1fffff);
- uint64_t x85 = (x83 + x65);
- uint64_t x86 = (x85 >> 0x15);
- uint32_t x87 = ((uint32_t)x85 & 0x1fffff);
- uint64_t x88 = (x86 + x64);
- uint64_t x89 = (x88 >> 0x16);
- uint32_t x90 = ((uint32_t)x88 & 0x3fffff);
- uint64_t x91 = (x89 + x63);
- uint64_t x92 = (x91 >> 0x15);
- uint32_t x93 = ((uint32_t)x91 & 0x1fffff);
- uint64_t x94 = (x92 + x62);
- uint64_t x95 = (x94 >> 0x15);
- uint32_t x96 = ((uint32_t)x94 & 0x1fffff);
- uint64_t x97 = (x95 + x61);
- uint64_t x98 = (x97 >> 0x16);
- uint32_t x99 = ((uint32_t)x97 & 0x3fffff);
- uint64_t x100 = (x98 + x60);
- uint64_t x101 = (x100 >> 0x15);
- uint32_t x102 = ((uint32_t)x100 & 0x1fffff);
- uint64_t x103 = (x101 + x59);
- uint64_t x104 = (x103 >> 0x15);
- uint32_t x105 = ((uint32_t)x103 & 0x1fffff);
- uint64_t x106 = (x104 + x58);
- uint64_t x107 = (x106 >> 0x16);
- uint32_t x108 = ((uint32_t)x106 & 0x3fffff);
- uint64_t x109 = (x107 + x57);
- uint64_t x110 = (x109 >> 0x15);
- uint32_t x111 = ((uint32_t)x109 & 0x1fffff);
- uint64_t x112 = (x110 + x56);
- uint64_t x113 = (x112 >> 0x15);
- uint32_t x114 = ((uint32_t)x112 & 0x1fffff);
- uint64_t x115 = (x113 + x55);
- uint64_t x116 = (x115 >> 0x16);
- uint32_t x117 = ((uint32_t)x115 & 0x3fffff);
- uint64_t x118 = (x116 + x54);
- uint64_t x119 = (x118 >> 0x15);
- uint32_t x120 = ((uint32_t)x118 & 0x1fffff);
- uint64_t x121 = (x119 + x53);
- uint64_t x122 = (x121 >> 0x15);
- uint32_t x123 = ((uint32_t)x121 & 0x1fffff);
- uint64_t x124 = (x122 + x52);
- uint64_t x125 = (x124 >> 0x16);
- uint32_t x126 = ((uint32_t)x124 & 0x3fffff);
- uint64_t x127 = (x125 + x51);
- uint64_t x128 = (x127 >> 0x15);
- uint32_t x129 = ((uint32_t)x127 & 0x1fffff);
- uint64_t x130 = (x128 + x50);
- uint64_t x131 = (x130 >> 0x15);
- uint32_t x132 = ((uint32_t)x130 & 0x1fffff);
- uint64_t x133 = (x131 + x49);
- uint64_t x134 = (x133 >> 0x16);
- uint32_t x135 = ((uint32_t)x133 & 0x3fffff);
- uint64_t x136 = (x134 + x48);
- uint64_t x137 = (x136 >> 0x15);
- uint32_t x138 = ((uint32_t)x136 & 0x1fffff);
- uint64_t x139 = (x137 + x47);
- uint32_t x140 = (uint32_t) (x139 >> 0x15);
- uint32_t x141 = ((uint32_t)x139 & 0x1fffff);
- uint64_t x142 = (x72 + ((uint64_t)0x239 * x140));
- uint32_t x143 = (uint32_t) (x142 >> 0x16);
- uint32_t x144 = ((uint32_t)x142 & 0x3fffff);
- uint32_t x145 = (x143 + x75);
- uint32_t x146 = (x145 >> 0x15);
- uint32_t x147 = (x145 & 0x1fffff);
- return (Return x141, Return x138, Return x135, Return x132, Return x129, Return x126, Return x123, Return x120, Return x117, Return x114, Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, (x146 + x78), Return x147, Return x144))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e512m569_24limbs/fesquareDisplay.v b/src/Specific/solinas32_2e512m569_24limbs/fesquareDisplay.v
deleted file mode 100644
index 953b95d45..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e512m569_24limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e512m569_24limbs/fesub.c b/src/Specific/solinas32_2e512m569_24limbs/fesub.c
deleted file mode 100644
index 3acb523c0..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/fesub.c
+++ /dev/null
@@ -1,75 +0,0 @@
-static void fesub(uint32_t out[24], const uint32_t in1[24], const uint32_t in2[24]) {
- { const uint32_t x48 = in1[23];
- { const uint32_t x49 = in1[22];
- { const uint32_t x47 = in1[21];
- { const uint32_t x45 = in1[20];
- { const uint32_t x43 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x94 = in2[23];
- { const uint32_t x95 = in2[22];
- { const uint32_t x93 = in2[21];
- { const uint32_t x91 = in2[20];
- { const uint32_t x89 = in2[19];
- { const uint32_t x87 = in2[18];
- { const uint32_t x85 = in2[17];
- { const uint32_t x83 = in2[16];
- { const uint32_t x81 = in2[15];
- { const uint32_t x79 = in2[14];
- { const uint32_t x77 = in2[13];
- { const uint32_t x75 = in2[12];
- { const uint32_t x73 = in2[11];
- { const uint32_t x71 = in2[10];
- { const uint32_t x69 = in2[9];
- { const uint32_t x67 = in2[8];
- { const uint32_t x65 = in2[7];
- { const uint32_t x63 = in2[6];
- { const uint32_t x61 = in2[5];
- { const uint32_t x59 = in2[4];
- { const uint32_t x57 = in2[3];
- { const uint32_t x55 = in2[2];
- { const uint32_t x53 = in2[1];
- { const uint32_t x51 = in2[0];
- out[0] = ((0x7ffb8e + x5) - x51);
- out[1] = ((0x3ffffe + x7) - x53);
- out[2] = ((0x3ffffe + x9) - x55);
- out[3] = ((0x7ffffe + x11) - x57);
- out[4] = ((0x3ffffe + x13) - x59);
- out[5] = ((0x3ffffe + x15) - x61);
- out[6] = ((0x7ffffe + x17) - x63);
- out[7] = ((0x3ffffe + x19) - x65);
- out[8] = ((0x3ffffe + x21) - x67);
- out[9] = ((0x7ffffe + x23) - x69);
- out[10] = ((0x3ffffe + x25) - x71);
- out[11] = ((0x3ffffe + x27) - x73);
- out[12] = ((0x7ffffe + x29) - x75);
- out[13] = ((0x3ffffe + x31) - x77);
- out[14] = ((0x3ffffe + x33) - x79);
- out[15] = ((0x7ffffe + x35) - x81);
- out[16] = ((0x3ffffe + x37) - x83);
- out[17] = ((0x3ffffe + x39) - x85);
- out[18] = ((0x7ffffe + x41) - x87);
- out[19] = ((0x3ffffe + x43) - x89);
- out[20] = ((0x3ffffe + x45) - x91);
- out[21] = ((0x7ffffe + x47) - x93);
- out[22] = ((0x3ffffe + x49) - x95);
- out[23] = ((0x3ffffe + x48) - x94);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e512m569_24limbs/fesub.v b/src/Specific/solinas32_2e512m569_24limbs/fesub.v
deleted file mode 100644
index 88f45d410..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e512m569_24limbs.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_2e512m569_24limbs/fesubDisplay.log b/src/Specific/solinas32_2e512m569_24limbs/fesubDisplay.log
deleted file mode 100644
index a92e47200..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x48, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x94, x95, x93, x91, x89, x87, x85, x83, x81, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51))%core,
- (((0x3ffffe + x48) - x94), ((0x3ffffe + x49) - x95), ((0x7ffffe + x47) - x93), ((0x3ffffe + x45) - x91), ((0x3ffffe + x43) - x89), ((0x7ffffe + x41) - x87), ((0x3ffffe + x39) - x85), ((0x3ffffe + x37) - x83), ((0x7ffffe + x35) - x81), ((0x3ffffe + x33) - x79), ((0x3ffffe + x31) - x77), ((0x7ffffe + x29) - x75), ((0x3ffffe + x27) - x73), ((0x3ffffe + x25) - x71), ((0x7ffffe + x23) - x69), ((0x3ffffe + x21) - x67), ((0x3ffffe + x19) - x65), ((0x7ffffe + x17) - x63), ((0x3ffffe + x15) - x61), ((0x3ffffe + x13) - x59), ((0x7ffffe + x11) - x57), ((0x3ffffe + x9) - x55), ((0x3ffffe + x7) - x53), ((0x7ffb8e + x5) - x51)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e512m569_24limbs/fesubDisplay.v b/src/Specific/solinas32_2e512m569_24limbs/fesubDisplay.v
deleted file mode 100644
index ee1d6df8b..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e512m569_24limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e512m569_24limbs/freeze.c b/src/Specific/solinas32_2e512m569_24limbs/freeze.c
deleted file mode 100644
index a06bca255..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/freeze.c
+++ /dev/null
@@ -1,124 +0,0 @@
-static void freeze(uint32_t out[24], const uint32_t in1[24]) {
- { const uint32_t x45 = in1[23];
- { const uint32_t x46 = in1[22];
- { const uint32_t x44 = in1[21];
- { const uint32_t x42 = in1[20];
- { const uint32_t x40 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffdc7);
- { uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x4, 0x1fffff);
- { uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x6, 0x1fffff);
- { uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x8, 0x3fffff);
- { uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x10, 0x1fffff);
- { uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x12, 0x1fffff);
- { uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x14, 0x3fffff);
- { uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x16, 0x1fffff);
- { uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x18, 0x1fffff);
- { uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x20, 0x3fffff);
- { uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x22, 0x1fffff);
- { uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x24, 0x1fffff);
- { uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x26, 0x3fffff);
- { uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x28, 0x1fffff);
- { uint32_t x90, uint8_t x91 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x30, 0x1fffff);
- { uint32_t x93, uint8_t x94 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x32, 0x3fffff);
- { uint32_t x96, uint8_t x97 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x94, Return x34, 0x1fffff);
- { uint32_t x99, uint8_t x100 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x36, 0x1fffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x38, 0x3fffff);
- { uint32_t x105, uint8_t x106 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x40, 0x1fffff);
- { uint32_t x108, uint8_t x109 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x106, Return x42, 0x1fffff);
- { uint32_t x111, uint8_t x112 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x44, 0x3fffff);
- { uint32_t x114, uint8_t x115 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x46, 0x1fffff);
- { uint32_t x117, uint8_t x118 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x45, 0x1fffff);
- { uint32_t x119 = cmovznz32(x118, 0x0, 0xffffffff);
- { uint32_t x120 = (x119 & 0x3ffdc7);
- { uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x48, Return x120);
- { uint32_t x124 = (x119 & 0x1fffff);
- { uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x51, Return x124);
- { uint32_t x128 = (x119 & 0x1fffff);
- { uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x54, Return x128);
- { uint32_t x132 = (x119 & 0x3fffff);
- { uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x57, Return x132);
- { uint32_t x136 = (x119 & 0x1fffff);
- { uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x60, Return x136);
- { uint32_t x140 = (x119 & 0x1fffff);
- { uint32_t x142, uint8_t x143 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x63, Return x140);
- { uint32_t x144 = (x119 & 0x3fffff);
- { uint32_t x146, uint8_t x147 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x143, Return x66, Return x144);
- { uint32_t x148 = (x119 & 0x1fffff);
- { uint32_t x150, uint8_t x151 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x147, Return x69, Return x148);
- { uint32_t x152 = (x119 & 0x1fffff);
- { uint32_t x154, uint8_t x155 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x151, Return x72, Return x152);
- { uint32_t x156 = (x119 & 0x3fffff);
- { uint32_t x158, uint8_t x159 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x155, Return x75, Return x156);
- { uint32_t x160 = (x119 & 0x1fffff);
- { uint32_t x162, uint8_t x163 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x159, Return x78, Return x160);
- { uint32_t x164 = (x119 & 0x1fffff);
- { uint32_t x166, uint8_t x167 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x163, Return x81, Return x164);
- { uint32_t x168 = (x119 & 0x3fffff);
- { uint32_t x170, uint8_t x171 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x167, Return x84, Return x168);
- { uint32_t x172 = (x119 & 0x1fffff);
- { uint32_t x174, uint8_t x175 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x171, Return x87, Return x172);
- { uint32_t x176 = (x119 & 0x1fffff);
- { uint32_t x178, uint8_t x179 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x175, Return x90, Return x176);
- { uint32_t x180 = (x119 & 0x3fffff);
- { uint32_t x182, uint8_t x183 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x179, Return x93, Return x180);
- { uint32_t x184 = (x119 & 0x1fffff);
- { uint32_t x186, uint8_t x187 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x183, Return x96, Return x184);
- { uint32_t x188 = (x119 & 0x1fffff);
- { uint32_t x190, uint8_t x191 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x187, Return x99, Return x188);
- { uint32_t x192 = (x119 & 0x3fffff);
- { uint32_t x194, uint8_t x195 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x191, Return x102, Return x192);
- { uint32_t x196 = (x119 & 0x1fffff);
- { uint32_t x198, uint8_t x199 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x195, Return x105, Return x196);
- { uint32_t x200 = (x119 & 0x1fffff);
- { uint32_t x202, uint8_t x203 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x199, Return x108, Return x200);
- { uint32_t x204 = (x119 & 0x3fffff);
- { uint32_t x206, uint8_t x207 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x203, Return x111, Return x204);
- { uint32_t x208 = (x119 & 0x1fffff);
- { uint32_t x210, uint8_t x211 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x207, Return x114, Return x208);
- { uint32_t x212 = (x119 & 0x1fffff);
- { uint32_t x214, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x211, Return x117, Return x212);
- out[0] = x122;
- out[1] = x126;
- out[2] = x130;
- out[3] = x134;
- out[4] = x138;
- out[5] = x142;
- out[6] = x146;
- out[7] = x150;
- out[8] = x154;
- out[9] = x158;
- out[10] = x162;
- out[11] = x166;
- out[12] = x170;
- out[13] = x174;
- out[14] = x178;
- out[15] = x182;
- out[16] = x186;
- out[17] = x190;
- out[18] = x194;
- out[19] = x198;
- out[20] = x202;
- out[21] = x206;
- out[22] = x210;
- out[23] = x214;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e512m569_24limbs/freeze.v b/src/Specific/solinas32_2e512m569_24limbs/freeze.v
deleted file mode 100644
index c717f8691..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e512m569_24limbs.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_2e512m569_24limbs/freezeDisplay.log b/src/Specific/solinas32_2e512m569_24limbs/freezeDisplay.log
deleted file mode 100644
index d3f60da16..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/freezeDisplay.log
+++ /dev/null
@@ -1,80 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x45, x46, x44, x42, x40, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x48, uint8_t x49 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffdc7);
- uint32_t x51, uint8_t x52 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x49, Return x4, 0x1fffff);
- uint32_t x54, uint8_t x55 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x52, Return x6, 0x1fffff);
- uint32_t x57, uint8_t x58 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x55, Return x8, 0x3fffff);
- uint32_t x60, uint8_t x61 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x58, Return x10, 0x1fffff);
- uint32_t x63, uint8_t x64 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x61, Return x12, 0x1fffff);
- uint32_t x66, uint8_t x67 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x64, Return x14, 0x3fffff);
- uint32_t x69, uint8_t x70 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x67, Return x16, 0x1fffff);
- uint32_t x72, uint8_t x73 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x70, Return x18, 0x1fffff);
- uint32_t x75, uint8_t x76 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x73, Return x20, 0x3fffff);
- uint32_t x78, uint8_t x79 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x76, Return x22, 0x1fffff);
- uint32_t x81, uint8_t x82 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x79, Return x24, 0x1fffff);
- uint32_t x84, uint8_t x85 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x82, Return x26, 0x3fffff);
- uint32_t x87, uint8_t x88 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x85, Return x28, 0x1fffff);
- uint32_t x90, uint8_t x91 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x88, Return x30, 0x1fffff);
- uint32_t x93, uint8_t x94 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x91, Return x32, 0x3fffff);
- uint32_t x96, uint8_t x97 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x94, Return x34, 0x1fffff);
- uint32_t x99, uint8_t x100 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x97, Return x36, 0x1fffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x100, Return x38, 0x3fffff);
- uint32_t x105, uint8_t x106 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x40, 0x1fffff);
- uint32_t x108, uint8_t x109 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x106, Return x42, 0x1fffff);
- uint32_t x111, uint8_t x112 = Op (Syntax.SubWithGetBorrow 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x109, Return x44, 0x3fffff);
- uint32_t x114, uint8_t x115 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x112, Return x46, 0x1fffff);
- uint32_t x117, uint8_t x118 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x45, 0x1fffff);
- uint32_t x119 = cmovznz32(x118, 0x0, 0xffffffff);
- uint32_t x120 = (x119 & 0x3ffdc7);
- uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x48, Return x120);
- uint32_t x124 = (x119 & 0x1fffff);
- uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x51, Return x124);
- uint32_t x128 = (x119 & 0x1fffff);
- uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x54, Return x128);
- uint32_t x132 = (x119 & 0x3fffff);
- uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x57, Return x132);
- uint32_t x136 = (x119 & 0x1fffff);
- uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x60, Return x136);
- uint32_t x140 = (x119 & 0x1fffff);
- uint32_t x142, uint8_t x143 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x63, Return x140);
- uint32_t x144 = (x119 & 0x3fffff);
- uint32_t x146, uint8_t x147 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x143, Return x66, Return x144);
- uint32_t x148 = (x119 & 0x1fffff);
- uint32_t x150, uint8_t x151 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x147, Return x69, Return x148);
- uint32_t x152 = (x119 & 0x1fffff);
- uint32_t x154, uint8_t x155 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x151, Return x72, Return x152);
- uint32_t x156 = (x119 & 0x3fffff);
- uint32_t x158, uint8_t x159 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x155, Return x75, Return x156);
- uint32_t x160 = (x119 & 0x1fffff);
- uint32_t x162, uint8_t x163 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x159, Return x78, Return x160);
- uint32_t x164 = (x119 & 0x1fffff);
- uint32_t x166, uint8_t x167 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x163, Return x81, Return x164);
- uint32_t x168 = (x119 & 0x3fffff);
- uint32_t x170, uint8_t x171 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x167, Return x84, Return x168);
- uint32_t x172 = (x119 & 0x1fffff);
- uint32_t x174, uint8_t x175 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x171, Return x87, Return x172);
- uint32_t x176 = (x119 & 0x1fffff);
- uint32_t x178, uint8_t x179 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x175, Return x90, Return x176);
- uint32_t x180 = (x119 & 0x3fffff);
- uint32_t x182, uint8_t x183 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x179, Return x93, Return x180);
- uint32_t x184 = (x119 & 0x1fffff);
- uint32_t x186, uint8_t x187 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x183, Return x96, Return x184);
- uint32_t x188 = (x119 & 0x1fffff);
- uint32_t x190, uint8_t x191 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x187, Return x99, Return x188);
- uint32_t x192 = (x119 & 0x3fffff);
- uint32_t x194, uint8_t x195 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x191, Return x102, Return x192);
- uint32_t x196 = (x119 & 0x1fffff);
- uint32_t x198, uint8_t x199 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x195, Return x105, Return x196);
- uint32_t x200 = (x119 & 0x1fffff);
- uint32_t x202, uint8_t x203 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x199, Return x108, Return x200);
- uint32_t x204 = (x119 & 0x3fffff);
- uint32_t x206, uint8_t x207 = Op (Syntax.AddWithGetCarry 22 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x203, Return x111, Return x204);
- uint32_t x208 = (x119 & 0x1fffff);
- uint32_t x210, uint8_t x211 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x207, Return x114, Return x208);
- uint32_t x212 = (x119 & 0x1fffff);
- uint32_t x214, uint8_t _ = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x211, Return x117, Return x212);
- (Return x214, Return x210, Return x206, Return x202, Return x198, Return x194, Return x190, Return x186, Return x182, Return x178, Return x174, Return x170, Return x166, Return x162, Return x158, Return x154, Return x150, Return x146, Return x142, Return x138, Return x134, Return x130, Return x126, Return x122))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e512m569_24limbs/freezeDisplay.v b/src/Specific/solinas32_2e512m569_24limbs/freezeDisplay.v
deleted file mode 100644
index 6708f2099..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e512m569_24limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e512m569_24limbs/py_interpreter.sh b/src/Specific/solinas32_2e512m569_24limbs/py_interpreter.sh
deleted file mode 100755
index b9714844c..000000000
--- a/src/Specific/solinas32_2e512m569_24limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**512 - 569' -Dmodulus_bytes='21 + 1/3' -Da24='121665'
diff --git a/src/Specific/solinas32_2e512m569_25limbs/CurveParameters.v b/src/Specific/solinas32_2e512m569_25limbs/CurveParameters.v
deleted file mode 100644
index d3f7a5042..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^512 - 569
-Base: 20 + 12/25
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 25%nat;
- base := 20 + 12/25;
- bitwidth := 32;
- s := 2^512;
- c := [(1, 569)];
- carry_chains := Some [seq 0 (pred 25); [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_2e512m569_25limbs/Synthesis.v b/src/Specific/solinas32_2e512m569_25limbs/Synthesis.v
deleted file mode 100644
index 00691ffb7..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e512m569_25limbs.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_2e512m569_25limbs/compiler.sh b/src/Specific/solinas32_2e512m569_25limbs/compiler.sh
deleted file mode 100755
index 4094fb440..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{21,20,21,20,21,20,21,20,21,20,21,20,21,20,21,20,21,20,21,20,21,20,21,20,20}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='25' -Dq_mpz='(1_mpz<<512) - 569' "$@"
diff --git a/src/Specific/solinas32_2e512m569_25limbs/compilerxx.sh b/src/Specific/solinas32_2e512m569_25limbs/compilerxx.sh
deleted file mode 100755
index f8a05fc6b..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{21,20,21,20,21,20,21,20,21,20,21,20,21,20,21,20,21,20,21,20,21,20,21,20,20}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='25' -Dq_mpz='(1_mpz<<512) - 569' "$@"
diff --git a/src/Specific/solinas32_2e512m569_25limbs/feadd.c b/src/Specific/solinas32_2e512m569_25limbs/feadd.c
deleted file mode 100644
index f297d1eee..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/feadd.c
+++ /dev/null
@@ -1,78 +0,0 @@
-static void feadd(uint32_t out[25], const uint32_t in1[25], const uint32_t in2[25]) {
- { const uint32_t x50 = in1[24];
- { const uint32_t x51 = in1[23];
- { const uint32_t x49 = in1[22];
- { const uint32_t x47 = in1[21];
- { const uint32_t x45 = in1[20];
- { const uint32_t x43 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x98 = in2[24];
- { const uint32_t x99 = in2[23];
- { const uint32_t x97 = in2[22];
- { const uint32_t x95 = in2[21];
- { const uint32_t x93 = in2[20];
- { const uint32_t x91 = in2[19];
- { const uint32_t x89 = in2[18];
- { const uint32_t x87 = in2[17];
- { const uint32_t x85 = in2[16];
- { const uint32_t x83 = in2[15];
- { const uint32_t x81 = in2[14];
- { const uint32_t x79 = in2[13];
- { const uint32_t x77 = in2[12];
- { const uint32_t x75 = in2[11];
- { const uint32_t x73 = in2[10];
- { const uint32_t x71 = in2[9];
- { const uint32_t x69 = in2[8];
- { const uint32_t x67 = in2[7];
- { const uint32_t x65 = in2[6];
- { const uint32_t x63 = in2[5];
- { const uint32_t x61 = in2[4];
- { const uint32_t x59 = in2[3];
- { const uint32_t x57 = in2[2];
- { const uint32_t x55 = in2[1];
- { const uint32_t x53 = in2[0];
- out[0] = (x5 + x53);
- out[1] = (x7 + x55);
- out[2] = (x9 + x57);
- out[3] = (x11 + x59);
- out[4] = (x13 + x61);
- out[5] = (x15 + x63);
- out[6] = (x17 + x65);
- out[7] = (x19 + x67);
- out[8] = (x21 + x69);
- out[9] = (x23 + x71);
- out[10] = (x25 + x73);
- out[11] = (x27 + x75);
- out[12] = (x29 + x77);
- out[13] = (x31 + x79);
- out[14] = (x33 + x81);
- out[15] = (x35 + x83);
- out[16] = (x37 + x85);
- out[17] = (x39 + x87);
- out[18] = (x41 + x89);
- out[19] = (x43 + x91);
- out[20] = (x45 + x93);
- out[21] = (x47 + x95);
- out[22] = (x49 + x97);
- out[23] = (x51 + x99);
- out[24] = (x50 + x98);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e512m569_25limbs/feadd.v b/src/Specific/solinas32_2e512m569_25limbs/feadd.v
deleted file mode 100644
index 888acda1e..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e512m569_25limbs.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_2e512m569_25limbs/feaddDisplay.log b/src/Specific/solinas32_2e512m569_25limbs/feaddDisplay.log
deleted file mode 100644
index a5f61c9b9..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x98, x99, x97, x95, x93, x91, x89, x87, x85, x83, x81, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53))%core,
- ((x50 + x98), (x51 + x99), (x49 + x97), (x47 + x95), (x45 + x93), (x43 + x91), (x41 + x89), (x39 + x87), (x37 + x85), (x35 + x83), (x33 + x81), (x31 + x79), (x29 + x77), (x27 + x75), (x25 + x73), (x23 + x71), (x21 + x69), (x19 + x67), (x17 + x65), (x15 + x63), (x13 + x61), (x11 + x59), (x9 + x57), (x7 + x55), (x5 + x53)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e512m569_25limbs/feaddDisplay.v b/src/Specific/solinas32_2e512m569_25limbs/feaddDisplay.v
deleted file mode 100644
index a0377aadf..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e512m569_25limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e512m569_25limbs/fecarry.v b/src/Specific/solinas32_2e512m569_25limbs/fecarry.v
deleted file mode 100644
index c7635653c..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e512m569_25limbs.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_2e512m569_25limbs/fecarryDisplay.v b/src/Specific/solinas32_2e512m569_25limbs/fecarryDisplay.v
deleted file mode 100644
index 73792e5c2..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e512m569_25limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e512m569_25limbs/femul.v b/src/Specific/solinas32_2e512m569_25limbs/femul.v
deleted file mode 100644
index 54090d4de..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e512m569_25limbs.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_2e512m569_25limbs/femulDisplay.v b/src/Specific/solinas32_2e512m569_25limbs/femulDisplay.v
deleted file mode 100644
index 1f2a84bc8..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e512m569_25limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e512m569_25limbs/fesquare.c b/src/Specific/solinas32_2e512m569_25limbs/fesquare.c
deleted file mode 100644
index 7ec3e8d64..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/fesquare.c
+++ /dev/null
@@ -1,158 +0,0 @@
-static void fesquare(uint32_t out[25], const uint32_t in1[25]) {
- { const uint32_t x47 = in1[24];
- { const uint32_t x48 = in1[23];
- { const uint32_t x46 = in1[22];
- { const uint32_t x44 = in1[21];
- { const uint32_t x42 = in1[20];
- { const uint32_t x40 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x49 = (((uint64_t)x2 * x47) + ((0x2 * ((uint64_t)x4 * x48)) + (((uint64_t)x6 * x46) + ((0x2 * ((uint64_t)x8 * x44)) + (((uint64_t)x10 * x42) + ((0x2 * ((uint64_t)x12 * x40)) + (((uint64_t)x14 * x38) + ((0x2 * ((uint64_t)x16 * x36)) + (((uint64_t)x18 * x34) + ((0x2 * ((uint64_t)x20 * x32)) + (((uint64_t)x22 * x30) + ((0x2 * ((uint64_t)x24 * x28)) + (((uint64_t)x26 * x26) + ((0x2 * ((uint64_t)x28 * x24)) + (((uint64_t)x30 * x22) + ((0x2 * ((uint64_t)x32 * x20)) + (((uint64_t)x34 * x18) + ((0x2 * ((uint64_t)x36 * x16)) + (((uint64_t)x38 * x14) + ((0x2 * ((uint64_t)x40 * x12)) + (((uint64_t)x42 * x10) + ((0x2 * ((uint64_t)x44 * x8)) + (((uint64_t)x46 * x6) + ((0x2 * ((uint64_t)x48 * x4)) + ((uint64_t)x47 * x2)))))))))))))))))))))))));
- { uint64_t x50 = ((((uint64_t)x2 * x48) + (((uint64_t)x4 * x46) + (((uint64_t)x6 * x44) + (((uint64_t)x8 * x42) + (((uint64_t)x10 * x40) + (((uint64_t)x12 * x38) + (((uint64_t)x14 * x36) + (((uint64_t)x16 * x34) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + (((uint64_t)x34 * x16) + (((uint64_t)x36 * x14) + (((uint64_t)x38 * x12) + (((uint64_t)x40 * x10) + (((uint64_t)x42 * x8) + (((uint64_t)x44 * x6) + (((uint64_t)x46 * x4) + ((uint64_t)x48 * x2)))))))))))))))))))))))) + (0x239 * ((uint64_t)x47 * x47)));
- { uint64_t x51 = ((((uint64_t)x2 * x46) + ((0x2 * ((uint64_t)x4 * x44)) + (((uint64_t)x6 * x42) + ((0x2 * ((uint64_t)x8 * x40)) + (((uint64_t)x10 * x38) + ((0x2 * ((uint64_t)x12 * x36)) + (((uint64_t)x14 * x34) + ((0x2 * ((uint64_t)x16 * x32)) + (((uint64_t)x18 * x30) + ((0x2 * ((uint64_t)x20 * x28)) + (((uint64_t)x22 * x26) + ((0x2 * ((uint64_t)x24 * x24)) + (((uint64_t)x26 * x22) + ((0x2 * ((uint64_t)x28 * x20)) + (((uint64_t)x30 * x18) + ((0x2 * ((uint64_t)x32 * x16)) + (((uint64_t)x34 * x14) + ((0x2 * ((uint64_t)x36 * x12)) + (((uint64_t)x38 * x10) + ((0x2 * ((uint64_t)x40 * x8)) + (((uint64_t)x42 * x6) + ((0x2 * ((uint64_t)x44 * x4)) + ((uint64_t)x46 * x2))))))))))))))))))))))) + (0x239 * ((0x2 * ((uint64_t)x48 * x47)) + (0x2 * ((uint64_t)x47 * x48)))));
- { uint64_t x52 = ((((uint64_t)x2 * x44) + (((uint64_t)x4 * x42) + (((uint64_t)x6 * x40) + (((uint64_t)x8 * x38) + (((uint64_t)x10 * x36) + (((uint64_t)x12 * x34) + (((uint64_t)x14 * x32) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + (((uint64_t)x32 * x14) + (((uint64_t)x34 * x12) + (((uint64_t)x36 * x10) + (((uint64_t)x38 * x8) + (((uint64_t)x40 * x6) + (((uint64_t)x42 * x4) + ((uint64_t)x44 * x2)))))))))))))))))))))) + (0x239 * (((uint64_t)x46 * x47) + ((0x2 * ((uint64_t)x48 * x48)) + ((uint64_t)x47 * x46)))));
- { uint64_t x53 = ((((uint64_t)x2 * x42) + ((0x2 * ((uint64_t)x4 * x40)) + (((uint64_t)x6 * x38) + ((0x2 * ((uint64_t)x8 * x36)) + (((uint64_t)x10 * x34) + ((0x2 * ((uint64_t)x12 * x32)) + (((uint64_t)x14 * x30) + ((0x2 * ((uint64_t)x16 * x28)) + (((uint64_t)x18 * x26) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + (((uint64_t)x26 * x18) + ((0x2 * ((uint64_t)x28 * x16)) + (((uint64_t)x30 * x14) + ((0x2 * ((uint64_t)x32 * x12)) + (((uint64_t)x34 * x10) + ((0x2 * ((uint64_t)x36 * x8)) + (((uint64_t)x38 * x6) + ((0x2 * ((uint64_t)x40 * x4)) + ((uint64_t)x42 * x2))))))))))))))))))))) + (0x239 * ((0x2 * ((uint64_t)x44 * x47)) + ((0x2 * ((uint64_t)x46 * x48)) + ((0x2 * ((uint64_t)x48 * x46)) + (0x2 * ((uint64_t)x47 * x44)))))));
- { uint64_t x54 = ((((uint64_t)x2 * x40) + (((uint64_t)x4 * x38) + (((uint64_t)x6 * x36) + (((uint64_t)x8 * x34) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + (((uint64_t)x34 * x8) + (((uint64_t)x36 * x6) + (((uint64_t)x38 * x4) + ((uint64_t)x40 * x2)))))))))))))))))))) + (0x239 * (((uint64_t)x42 * x47) + ((0x2 * ((uint64_t)x44 * x48)) + (((uint64_t)x46 * x46) + ((0x2 * ((uint64_t)x48 * x44)) + ((uint64_t)x47 * x42)))))));
- { uint64_t x55 = ((((uint64_t)x2 * x38) + ((0x2 * ((uint64_t)x4 * x36)) + (((uint64_t)x6 * x34) + ((0x2 * ((uint64_t)x8 * x32)) + (((uint64_t)x10 * x30) + ((0x2 * ((uint64_t)x12 * x28)) + (((uint64_t)x14 * x26) + ((0x2 * ((uint64_t)x16 * x24)) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + ((0x2 * ((uint64_t)x24 * x16)) + (((uint64_t)x26 * x14) + ((0x2 * ((uint64_t)x28 * x12)) + (((uint64_t)x30 * x10) + ((0x2 * ((uint64_t)x32 * x8)) + (((uint64_t)x34 * x6) + ((0x2 * ((uint64_t)x36 * x4)) + ((uint64_t)x38 * x2))))))))))))))))))) + (0x239 * ((0x2 * ((uint64_t)x40 * x47)) + ((0x2 * ((uint64_t)x42 * x48)) + ((0x2 * ((uint64_t)x44 * x46)) + ((0x2 * ((uint64_t)x46 * x44)) + ((0x2 * ((uint64_t)x48 * x42)) + (0x2 * ((uint64_t)x47 * x40)))))))));
- { uint64_t x56 = ((((uint64_t)x2 * x36) + (((uint64_t)x4 * x34) + (((uint64_t)x6 * x32) + (((uint64_t)x8 * x30) + (((uint64_t)x10 * x28) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + (((uint64_t)x28 * x10) + (((uint64_t)x30 * x8) + (((uint64_t)x32 * x6) + (((uint64_t)x34 * x4) + ((uint64_t)x36 * x2)))))))))))))))))) + (0x239 * (((uint64_t)x38 * x47) + ((0x2 * ((uint64_t)x40 * x48)) + (((uint64_t)x42 * x46) + ((0x2 * ((uint64_t)x44 * x44)) + (((uint64_t)x46 * x42) + ((0x2 * ((uint64_t)x48 * x40)) + ((uint64_t)x47 * x38)))))))));
- { uint64_t x57 = ((((uint64_t)x2 * x34) + ((0x2 * ((uint64_t)x4 * x32)) + (((uint64_t)x6 * x30) + ((0x2 * ((uint64_t)x8 * x28)) + (((uint64_t)x10 * x26) + ((0x2 * ((uint64_t)x12 * x24)) + (((uint64_t)x14 * x22) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + (((uint64_t)x22 * x14) + ((0x2 * ((uint64_t)x24 * x12)) + (((uint64_t)x26 * x10) + ((0x2 * ((uint64_t)x28 * x8)) + (((uint64_t)x30 * x6) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x34 * x2))))))))))))))))) + (0x239 * ((0x2 * ((uint64_t)x36 * x47)) + ((0x2 * ((uint64_t)x38 * x48)) + ((0x2 * ((uint64_t)x40 * x46)) + ((0x2 * ((uint64_t)x42 * x44)) + ((0x2 * ((uint64_t)x44 * x42)) + ((0x2 * ((uint64_t)x46 * x40)) + ((0x2 * ((uint64_t)x48 * x38)) + (0x2 * ((uint64_t)x47 * x36)))))))))));
- { uint64_t x58 = ((((uint64_t)x2 * x32) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x32 * x2)))))))))))))))) + (0x239 * (((uint64_t)x34 * x47) + ((0x2 * ((uint64_t)x36 * x48)) + (((uint64_t)x38 * x46) + ((0x2 * ((uint64_t)x40 * x44)) + (((uint64_t)x42 * x42) + ((0x2 * ((uint64_t)x44 * x40)) + (((uint64_t)x46 * x38) + ((0x2 * ((uint64_t)x48 * x36)) + ((uint64_t)x47 * x34)))))))))));
- { uint64_t x59 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + (((uint64_t)x6 * x26) + ((0x2 * ((uint64_t)x8 * x24)) + (((uint64_t)x10 * x22) + ((0x2 * ((uint64_t)x12 * x20)) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + ((0x2 * ((uint64_t)x20 * x12)) + (((uint64_t)x22 * x10) + ((0x2 * ((uint64_t)x24 * x8)) + (((uint64_t)x26 * x6) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x239 * ((0x2 * ((uint64_t)x32 * x47)) + ((0x2 * ((uint64_t)x34 * x48)) + ((0x2 * ((uint64_t)x36 * x46)) + ((0x2 * ((uint64_t)x38 * x44)) + ((0x2 * ((uint64_t)x40 * x42)) + ((0x2 * ((uint64_t)x42 * x40)) + ((0x2 * ((uint64_t)x44 * x38)) + ((0x2 * ((uint64_t)x46 * x36)) + ((0x2 * ((uint64_t)x48 * x34)) + (0x2 * ((uint64_t)x47 * x32)))))))))))));
- { uint64_t x60 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x239 * (((uint64_t)x30 * x47) + ((0x2 * ((uint64_t)x32 * x48)) + (((uint64_t)x34 * x46) + ((0x2 * ((uint64_t)x36 * x44)) + (((uint64_t)x38 * x42) + ((0x2 * ((uint64_t)x40 * x40)) + (((uint64_t)x42 * x38) + ((0x2 * ((uint64_t)x44 * x36)) + (((uint64_t)x46 * x34) + ((0x2 * ((uint64_t)x48 * x32)) + ((uint64_t)x47 * x30)))))))))))));
- { uint64_t x61 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + (((uint64_t)x6 * x22) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + (((uint64_t)x22 * x6) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x239 * ((0x2 * ((uint64_t)x28 * x47)) + ((0x2 * ((uint64_t)x30 * x48)) + ((0x2 * ((uint64_t)x32 * x46)) + ((0x2 * ((uint64_t)x34 * x44)) + ((0x2 * ((uint64_t)x36 * x42)) + ((0x2 * ((uint64_t)x38 * x40)) + ((0x2 * ((uint64_t)x40 * x38)) + ((0x2 * ((uint64_t)x42 * x36)) + ((0x2 * ((uint64_t)x44 * x34)) + ((0x2 * ((uint64_t)x46 * x32)) + ((0x2 * ((uint64_t)x48 * x30)) + (0x2 * ((uint64_t)x47 * x28)))))))))))))));
- { uint64_t x62 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x239 * (((uint64_t)x26 * x47) + ((0x2 * ((uint64_t)x28 * x48)) + (((uint64_t)x30 * x46) + ((0x2 * ((uint64_t)x32 * x44)) + (((uint64_t)x34 * x42) + ((0x2 * ((uint64_t)x36 * x40)) + (((uint64_t)x38 * x38) + ((0x2 * ((uint64_t)x40 * x36)) + (((uint64_t)x42 * x34) + ((0x2 * ((uint64_t)x44 * x32)) + (((uint64_t)x46 * x30) + ((0x2 * ((uint64_t)x48 * x28)) + ((uint64_t)x47 * x26)))))))))))))));
- { uint64_t x63 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x239 * ((0x2 * ((uint64_t)x24 * x47)) + ((0x2 * ((uint64_t)x26 * x48)) + ((0x2 * ((uint64_t)x28 * x46)) + ((0x2 * ((uint64_t)x30 * x44)) + ((0x2 * ((uint64_t)x32 * x42)) + ((0x2 * ((uint64_t)x34 * x40)) + ((0x2 * ((uint64_t)x36 * x38)) + ((0x2 * ((uint64_t)x38 * x36)) + ((0x2 * ((uint64_t)x40 * x34)) + ((0x2 * ((uint64_t)x42 * x32)) + ((0x2 * ((uint64_t)x44 * x30)) + ((0x2 * ((uint64_t)x46 * x28)) + ((0x2 * ((uint64_t)x48 * x26)) + (0x2 * ((uint64_t)x47 * x24)))))))))))))))));
- { uint64_t x64 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x239 * (((uint64_t)x22 * x47) + ((0x2 * ((uint64_t)x24 * x48)) + (((uint64_t)x26 * x46) + ((0x2 * ((uint64_t)x28 * x44)) + (((uint64_t)x30 * x42) + ((0x2 * ((uint64_t)x32 * x40)) + (((uint64_t)x34 * x38) + ((0x2 * ((uint64_t)x36 * x36)) + (((uint64_t)x38 * x34) + ((0x2 * ((uint64_t)x40 * x32)) + (((uint64_t)x42 * x30) + ((0x2 * ((uint64_t)x44 * x28)) + (((uint64_t)x46 * x26) + ((0x2 * ((uint64_t)x48 * x24)) + ((uint64_t)x47 * x22)))))))))))))))));
- { uint64_t x65 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x239 * ((0x2 * ((uint64_t)x20 * x47)) + ((0x2 * ((uint64_t)x22 * x48)) + ((0x2 * ((uint64_t)x24 * x46)) + ((0x2 * ((uint64_t)x26 * x44)) + ((0x2 * ((uint64_t)x28 * x42)) + ((0x2 * ((uint64_t)x30 * x40)) + ((0x2 * ((uint64_t)x32 * x38)) + ((0x2 * ((uint64_t)x34 * x36)) + ((0x2 * ((uint64_t)x36 * x34)) + ((0x2 * ((uint64_t)x38 * x32)) + ((0x2 * ((uint64_t)x40 * x30)) + ((0x2 * ((uint64_t)x42 * x28)) + ((0x2 * ((uint64_t)x44 * x26)) + ((0x2 * ((uint64_t)x46 * x24)) + ((0x2 * ((uint64_t)x48 * x22)) + (0x2 * ((uint64_t)x47 * x20)))))))))))))))))));
- { uint64_t x66 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x239 * (((uint64_t)x18 * x47) + ((0x2 * ((uint64_t)x20 * x48)) + (((uint64_t)x22 * x46) + ((0x2 * ((uint64_t)x24 * x44)) + (((uint64_t)x26 * x42) + ((0x2 * ((uint64_t)x28 * x40)) + (((uint64_t)x30 * x38) + ((0x2 * ((uint64_t)x32 * x36)) + (((uint64_t)x34 * x34) + ((0x2 * ((uint64_t)x36 * x32)) + (((uint64_t)x38 * x30) + ((0x2 * ((uint64_t)x40 * x28)) + (((uint64_t)x42 * x26) + ((0x2 * ((uint64_t)x44 * x24)) + (((uint64_t)x46 * x22) + ((0x2 * ((uint64_t)x48 * x20)) + ((uint64_t)x47 * x18)))))))))))))))))));
- { uint64_t x67 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x239 * ((0x2 * ((uint64_t)x16 * x47)) + ((0x2 * ((uint64_t)x18 * x48)) + ((0x2 * ((uint64_t)x20 * x46)) + ((0x2 * ((uint64_t)x22 * x44)) + ((0x2 * ((uint64_t)x24 * x42)) + ((0x2 * ((uint64_t)x26 * x40)) + ((0x2 * ((uint64_t)x28 * x38)) + ((0x2 * ((uint64_t)x30 * x36)) + ((0x2 * ((uint64_t)x32 * x34)) + ((0x2 * ((uint64_t)x34 * x32)) + ((0x2 * ((uint64_t)x36 * x30)) + ((0x2 * ((uint64_t)x38 * x28)) + ((0x2 * ((uint64_t)x40 * x26)) + ((0x2 * ((uint64_t)x42 * x24)) + ((0x2 * ((uint64_t)x44 * x22)) + ((0x2 * ((uint64_t)x46 * x20)) + ((0x2 * ((uint64_t)x48 * x18)) + (0x2 * ((uint64_t)x47 * x16)))))))))))))))))))));
- { uint64_t x68 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x239 * (((uint64_t)x14 * x47) + ((0x2 * ((uint64_t)x16 * x48)) + (((uint64_t)x18 * x46) + ((0x2 * ((uint64_t)x20 * x44)) + (((uint64_t)x22 * x42) + ((0x2 * ((uint64_t)x24 * x40)) + (((uint64_t)x26 * x38) + ((0x2 * ((uint64_t)x28 * x36)) + (((uint64_t)x30 * x34) + ((0x2 * ((uint64_t)x32 * x32)) + (((uint64_t)x34 * x30) + ((0x2 * ((uint64_t)x36 * x28)) + (((uint64_t)x38 * x26) + ((0x2 * ((uint64_t)x40 * x24)) + (((uint64_t)x42 * x22) + ((0x2 * ((uint64_t)x44 * x20)) + (((uint64_t)x46 * x18) + ((0x2 * ((uint64_t)x48 * x16)) + ((uint64_t)x47 * x14)))))))))))))))))))));
- { uint64_t x69 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x239 * ((0x2 * ((uint64_t)x12 * x47)) + ((0x2 * ((uint64_t)x14 * x48)) + ((0x2 * ((uint64_t)x16 * x46)) + ((0x2 * ((uint64_t)x18 * x44)) + ((0x2 * ((uint64_t)x20 * x42)) + ((0x2 * ((uint64_t)x22 * x40)) + ((0x2 * ((uint64_t)x24 * x38)) + ((0x2 * ((uint64_t)x26 * x36)) + ((0x2 * ((uint64_t)x28 * x34)) + ((0x2 * ((uint64_t)x30 * x32)) + ((0x2 * ((uint64_t)x32 * x30)) + ((0x2 * ((uint64_t)x34 * x28)) + ((0x2 * ((uint64_t)x36 * x26)) + ((0x2 * ((uint64_t)x38 * x24)) + ((0x2 * ((uint64_t)x40 * x22)) + ((0x2 * ((uint64_t)x42 * x20)) + ((0x2 * ((uint64_t)x44 * x18)) + ((0x2 * ((uint64_t)x46 * x16)) + ((0x2 * ((uint64_t)x48 * x14)) + (0x2 * ((uint64_t)x47 * x12)))))))))))))))))))))));
- { uint64_t x70 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x239 * (((uint64_t)x10 * x47) + ((0x2 * ((uint64_t)x12 * x48)) + (((uint64_t)x14 * x46) + ((0x2 * ((uint64_t)x16 * x44)) + (((uint64_t)x18 * x42) + ((0x2 * ((uint64_t)x20 * x40)) + (((uint64_t)x22 * x38) + ((0x2 * ((uint64_t)x24 * x36)) + (((uint64_t)x26 * x34) + ((0x2 * ((uint64_t)x28 * x32)) + (((uint64_t)x30 * x30) + ((0x2 * ((uint64_t)x32 * x28)) + (((uint64_t)x34 * x26) + ((0x2 * ((uint64_t)x36 * x24)) + (((uint64_t)x38 * x22) + ((0x2 * ((uint64_t)x40 * x20)) + (((uint64_t)x42 * x18) + ((0x2 * ((uint64_t)x44 * x16)) + (((uint64_t)x46 * x14) + ((0x2 * ((uint64_t)x48 * x12)) + ((uint64_t)x47 * x10)))))))))))))))))))))));
- { uint64_t x71 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x239 * ((0x2 * ((uint64_t)x8 * x47)) + ((0x2 * ((uint64_t)x10 * x48)) + ((0x2 * ((uint64_t)x12 * x46)) + ((0x2 * ((uint64_t)x14 * x44)) + ((0x2 * ((uint64_t)x16 * x42)) + ((0x2 * ((uint64_t)x18 * x40)) + ((0x2 * ((uint64_t)x20 * x38)) + ((0x2 * ((uint64_t)x22 * x36)) + ((0x2 * ((uint64_t)x24 * x34)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + ((0x2 * ((uint64_t)x34 * x24)) + ((0x2 * ((uint64_t)x36 * x22)) + ((0x2 * ((uint64_t)x38 * x20)) + ((0x2 * ((uint64_t)x40 * x18)) + ((0x2 * ((uint64_t)x42 * x16)) + ((0x2 * ((uint64_t)x44 * x14)) + ((0x2 * ((uint64_t)x46 * x12)) + ((0x2 * ((uint64_t)x48 * x10)) + (0x2 * ((uint64_t)x47 * x8)))))))))))))))))))))))));
- { uint64_t x72 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x239 * (((uint64_t)x6 * x47) + ((0x2 * ((uint64_t)x8 * x48)) + (((uint64_t)x10 * x46) + ((0x2 * ((uint64_t)x12 * x44)) + (((uint64_t)x14 * x42) + ((0x2 * ((uint64_t)x16 * x40)) + (((uint64_t)x18 * x38) + ((0x2 * ((uint64_t)x20 * x36)) + (((uint64_t)x22 * x34) + ((0x2 * ((uint64_t)x24 * x32)) + (((uint64_t)x26 * x30) + ((0x2 * ((uint64_t)x28 * x28)) + (((uint64_t)x30 * x26) + ((0x2 * ((uint64_t)x32 * x24)) + (((uint64_t)x34 * x22) + ((0x2 * ((uint64_t)x36 * x20)) + (((uint64_t)x38 * x18) + ((0x2 * ((uint64_t)x40 * x16)) + (((uint64_t)x42 * x14) + ((0x2 * ((uint64_t)x44 * x12)) + (((uint64_t)x46 * x10) + ((0x2 * ((uint64_t)x48 * x8)) + ((uint64_t)x47 * x6)))))))))))))))))))))))));
- { uint64_t x73 = (((uint64_t)x2 * x2) + (0x239 * ((0x2 * ((uint64_t)x4 * x47)) + ((0x2 * ((uint64_t)x6 * x48)) + ((0x2 * ((uint64_t)x8 * x46)) + ((0x2 * ((uint64_t)x10 * x44)) + ((0x2 * ((uint64_t)x12 * x42)) + ((0x2 * ((uint64_t)x14 * x40)) + ((0x2 * ((uint64_t)x16 * x38)) + ((0x2 * ((uint64_t)x18 * x36)) + ((0x2 * ((uint64_t)x20 * x34)) + ((0x2 * ((uint64_t)x22 * x32)) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + ((0x2 * ((uint64_t)x32 * x22)) + ((0x2 * ((uint64_t)x34 * x20)) + ((0x2 * ((uint64_t)x36 * x18)) + ((0x2 * ((uint64_t)x38 * x16)) + ((0x2 * ((uint64_t)x40 * x14)) + ((0x2 * ((uint64_t)x42 * x12)) + ((0x2 * ((uint64_t)x44 * x10)) + ((0x2 * ((uint64_t)x46 * x8)) + ((0x2 * ((uint64_t)x48 * x6)) + (0x2 * ((uint64_t)x47 * x4)))))))))))))))))))))))))));
- { uint64_t x74 = (x73 >> 0x15);
- { uint32_t x75 = ((uint32_t)x73 & 0x1fffff);
- { uint64_t x76 = (x74 + x72);
- { uint64_t x77 = (x76 >> 0x14);
- { uint32_t x78 = ((uint32_t)x76 & 0xfffff);
- { uint64_t x79 = (x77 + x71);
- { uint64_t x80 = (x79 >> 0x15);
- { uint32_t x81 = ((uint32_t)x79 & 0x1fffff);
- { uint64_t x82 = (x80 + x70);
- { uint64_t x83 = (x82 >> 0x14);
- { uint32_t x84 = ((uint32_t)x82 & 0xfffff);
- { uint64_t x85 = (x83 + x69);
- { uint64_t x86 = (x85 >> 0x15);
- { uint32_t x87 = ((uint32_t)x85 & 0x1fffff);
- { uint64_t x88 = (x86 + x68);
- { uint64_t x89 = (x88 >> 0x14);
- { uint32_t x90 = ((uint32_t)x88 & 0xfffff);
- { uint64_t x91 = (x89 + x67);
- { uint64_t x92 = (x91 >> 0x15);
- { uint32_t x93 = ((uint32_t)x91 & 0x1fffff);
- { uint64_t x94 = (x92 + x66);
- { uint64_t x95 = (x94 >> 0x14);
- { uint32_t x96 = ((uint32_t)x94 & 0xfffff);
- { uint64_t x97 = (x95 + x65);
- { uint64_t x98 = (x97 >> 0x15);
- { uint32_t x99 = ((uint32_t)x97 & 0x1fffff);
- { uint64_t x100 = (x98 + x64);
- { uint64_t x101 = (x100 >> 0x14);
- { uint32_t x102 = ((uint32_t)x100 & 0xfffff);
- { uint64_t x103 = (x101 + x63);
- { uint64_t x104 = (x103 >> 0x15);
- { uint32_t x105 = ((uint32_t)x103 & 0x1fffff);
- { uint64_t x106 = (x104 + x62);
- { uint64_t x107 = (x106 >> 0x14);
- { uint32_t x108 = ((uint32_t)x106 & 0xfffff);
- { uint64_t x109 = (x107 + x61);
- { uint64_t x110 = (x109 >> 0x15);
- { uint32_t x111 = ((uint32_t)x109 & 0x1fffff);
- { uint64_t x112 = (x110 + x60);
- { uint64_t x113 = (x112 >> 0x14);
- { uint32_t x114 = ((uint32_t)x112 & 0xfffff);
- { uint64_t x115 = (x113 + x59);
- { uint64_t x116 = (x115 >> 0x15);
- { uint32_t x117 = ((uint32_t)x115 & 0x1fffff);
- { uint64_t x118 = (x116 + x58);
- { uint64_t x119 = (x118 >> 0x14);
- { uint32_t x120 = ((uint32_t)x118 & 0xfffff);
- { uint64_t x121 = (x119 + x57);
- { uint64_t x122 = (x121 >> 0x15);
- { uint32_t x123 = ((uint32_t)x121 & 0x1fffff);
- { uint64_t x124 = (x122 + x56);
- { uint64_t x125 = (x124 >> 0x14);
- { uint32_t x126 = ((uint32_t)x124 & 0xfffff);
- { uint64_t x127 = (x125 + x55);
- { uint64_t x128 = (x127 >> 0x15);
- { uint32_t x129 = ((uint32_t)x127 & 0x1fffff);
- { uint64_t x130 = (x128 + x54);
- { uint64_t x131 = (x130 >> 0x14);
- { uint32_t x132 = ((uint32_t)x130 & 0xfffff);
- { uint64_t x133 = (x131 + x53);
- { uint64_t x134 = (x133 >> 0x15);
- { uint32_t x135 = ((uint32_t)x133 & 0x1fffff);
- { uint64_t x136 = (x134 + x52);
- { uint64_t x137 = (x136 >> 0x14);
- { uint32_t x138 = ((uint32_t)x136 & 0xfffff);
- { uint64_t x139 = (x137 + x51);
- { uint64_t x140 = (x139 >> 0x15);
- { uint32_t x141 = ((uint32_t)x139 & 0x1fffff);
- { uint64_t x142 = (x140 + x50);
- { uint64_t x143 = (x142 >> 0x14);
- { uint32_t x144 = ((uint32_t)x142 & 0xfffff);
- { uint64_t x145 = (x143 + x49);
- { uint32_t x146 = (uint32_t) (x145 >> 0x14);
- { uint32_t x147 = ((uint32_t)x145 & 0xfffff);
- { uint64_t x148 = (x75 + ((uint64_t)0x239 * x146));
- { uint32_t x149 = (uint32_t) (x148 >> 0x15);
- { uint32_t x150 = ((uint32_t)x148 & 0x1fffff);
- { uint32_t x151 = (x149 + x78);
- { uint32_t x152 = (x151 >> 0x14);
- { uint32_t x153 = (x151 & 0xfffff);
- out[0] = x150;
- out[1] = x153;
- out[2] = (x152 + x81);
- out[3] = x84;
- out[4] = x87;
- out[5] = x90;
- out[6] = x93;
- out[7] = x96;
- out[8] = x99;
- out[9] = x102;
- out[10] = x105;
- out[11] = x108;
- out[12] = x111;
- out[13] = x114;
- out[14] = x117;
- out[15] = x120;
- out[16] = x123;
- out[17] = x126;
- out[18] = x129;
- out[19] = x132;
- out[20] = x135;
- out[21] = x138;
- out[22] = x141;
- out[23] = x144;
- out[24] = x147;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e512m569_25limbs/fesquare.v b/src/Specific/solinas32_2e512m569_25limbs/fesquare.v
deleted file mode 100644
index 1bd784456..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e512m569_25limbs.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_2e512m569_25limbs/fesquareDisplay.log b/src/Specific/solinas32_2e512m569_25limbs/fesquareDisplay.log
deleted file mode 100644
index 656e9ee16..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,112 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x47, x48, x46, x44, x42, x40, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x49 = (((uint64_t)x2 * x47) + ((0x2 * ((uint64_t)x4 * x48)) + (((uint64_t)x6 * x46) + ((0x2 * ((uint64_t)x8 * x44)) + (((uint64_t)x10 * x42) + ((0x2 * ((uint64_t)x12 * x40)) + (((uint64_t)x14 * x38) + ((0x2 * ((uint64_t)x16 * x36)) + (((uint64_t)x18 * x34) + ((0x2 * ((uint64_t)x20 * x32)) + (((uint64_t)x22 * x30) + ((0x2 * ((uint64_t)x24 * x28)) + (((uint64_t)x26 * x26) + ((0x2 * ((uint64_t)x28 * x24)) + (((uint64_t)x30 * x22) + ((0x2 * ((uint64_t)x32 * x20)) + (((uint64_t)x34 * x18) + ((0x2 * ((uint64_t)x36 * x16)) + (((uint64_t)x38 * x14) + ((0x2 * ((uint64_t)x40 * x12)) + (((uint64_t)x42 * x10) + ((0x2 * ((uint64_t)x44 * x8)) + (((uint64_t)x46 * x6) + ((0x2 * ((uint64_t)x48 * x4)) + ((uint64_t)x47 * x2)))))))))))))))))))))))));
- uint64_t x50 = ((((uint64_t)x2 * x48) + (((uint64_t)x4 * x46) + (((uint64_t)x6 * x44) + (((uint64_t)x8 * x42) + (((uint64_t)x10 * x40) + (((uint64_t)x12 * x38) + (((uint64_t)x14 * x36) + (((uint64_t)x16 * x34) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + (((uint64_t)x34 * x16) + (((uint64_t)x36 * x14) + (((uint64_t)x38 * x12) + (((uint64_t)x40 * x10) + (((uint64_t)x42 * x8) + (((uint64_t)x44 * x6) + (((uint64_t)x46 * x4) + ((uint64_t)x48 * x2)))))))))))))))))))))))) + (0x239 * ((uint64_t)x47 * x47)));
- uint64_t x51 = ((((uint64_t)x2 * x46) + ((0x2 * ((uint64_t)x4 * x44)) + (((uint64_t)x6 * x42) + ((0x2 * ((uint64_t)x8 * x40)) + (((uint64_t)x10 * x38) + ((0x2 * ((uint64_t)x12 * x36)) + (((uint64_t)x14 * x34) + ((0x2 * ((uint64_t)x16 * x32)) + (((uint64_t)x18 * x30) + ((0x2 * ((uint64_t)x20 * x28)) + (((uint64_t)x22 * x26) + ((0x2 * ((uint64_t)x24 * x24)) + (((uint64_t)x26 * x22) + ((0x2 * ((uint64_t)x28 * x20)) + (((uint64_t)x30 * x18) + ((0x2 * ((uint64_t)x32 * x16)) + (((uint64_t)x34 * x14) + ((0x2 * ((uint64_t)x36 * x12)) + (((uint64_t)x38 * x10) + ((0x2 * ((uint64_t)x40 * x8)) + (((uint64_t)x42 * x6) + ((0x2 * ((uint64_t)x44 * x4)) + ((uint64_t)x46 * x2))))))))))))))))))))))) + (0x239 * ((0x2 * ((uint64_t)x48 * x47)) + (0x2 * ((uint64_t)x47 * x48)))));
- uint64_t x52 = ((((uint64_t)x2 * x44) + (((uint64_t)x4 * x42) + (((uint64_t)x6 * x40) + (((uint64_t)x8 * x38) + (((uint64_t)x10 * x36) + (((uint64_t)x12 * x34) + (((uint64_t)x14 * x32) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + (((uint64_t)x32 * x14) + (((uint64_t)x34 * x12) + (((uint64_t)x36 * x10) + (((uint64_t)x38 * x8) + (((uint64_t)x40 * x6) + (((uint64_t)x42 * x4) + ((uint64_t)x44 * x2)))))))))))))))))))))) + (0x239 * (((uint64_t)x46 * x47) + ((0x2 * ((uint64_t)x48 * x48)) + ((uint64_t)x47 * x46)))));
- uint64_t x53 = ((((uint64_t)x2 * x42) + ((0x2 * ((uint64_t)x4 * x40)) + (((uint64_t)x6 * x38) + ((0x2 * ((uint64_t)x8 * x36)) + (((uint64_t)x10 * x34) + ((0x2 * ((uint64_t)x12 * x32)) + (((uint64_t)x14 * x30) + ((0x2 * ((uint64_t)x16 * x28)) + (((uint64_t)x18 * x26) + ((0x2 * ((uint64_t)x20 * x24)) + (((uint64_t)x22 * x22) + ((0x2 * ((uint64_t)x24 * x20)) + (((uint64_t)x26 * x18) + ((0x2 * ((uint64_t)x28 * x16)) + (((uint64_t)x30 * x14) + ((0x2 * ((uint64_t)x32 * x12)) + (((uint64_t)x34 * x10) + ((0x2 * ((uint64_t)x36 * x8)) + (((uint64_t)x38 * x6) + ((0x2 * ((uint64_t)x40 * x4)) + ((uint64_t)x42 * x2))))))))))))))))))))) + (0x239 * ((0x2 * ((uint64_t)x44 * x47)) + ((0x2 * ((uint64_t)x46 * x48)) + ((0x2 * ((uint64_t)x48 * x46)) + (0x2 * ((uint64_t)x47 * x44)))))));
- uint64_t x54 = ((((uint64_t)x2 * x40) + (((uint64_t)x4 * x38) + (((uint64_t)x6 * x36) + (((uint64_t)x8 * x34) + (((uint64_t)x10 * x32) + (((uint64_t)x12 * x30) + (((uint64_t)x14 * x28) + (((uint64_t)x16 * x26) + (((uint64_t)x18 * x24) + (((uint64_t)x20 * x22) + (((uint64_t)x22 * x20) + (((uint64_t)x24 * x18) + (((uint64_t)x26 * x16) + (((uint64_t)x28 * x14) + (((uint64_t)x30 * x12) + (((uint64_t)x32 * x10) + (((uint64_t)x34 * x8) + (((uint64_t)x36 * x6) + (((uint64_t)x38 * x4) + ((uint64_t)x40 * x2)))))))))))))))))))) + (0x239 * (((uint64_t)x42 * x47) + ((0x2 * ((uint64_t)x44 * x48)) + (((uint64_t)x46 * x46) + ((0x2 * ((uint64_t)x48 * x44)) + ((uint64_t)x47 * x42)))))));
- uint64_t x55 = ((((uint64_t)x2 * x38) + ((0x2 * ((uint64_t)x4 * x36)) + (((uint64_t)x6 * x34) + ((0x2 * ((uint64_t)x8 * x32)) + (((uint64_t)x10 * x30) + ((0x2 * ((uint64_t)x12 * x28)) + (((uint64_t)x14 * x26) + ((0x2 * ((uint64_t)x16 * x24)) + (((uint64_t)x18 * x22) + ((0x2 * ((uint64_t)x20 * x20)) + (((uint64_t)x22 * x18) + ((0x2 * ((uint64_t)x24 * x16)) + (((uint64_t)x26 * x14) + ((0x2 * ((uint64_t)x28 * x12)) + (((uint64_t)x30 * x10) + ((0x2 * ((uint64_t)x32 * x8)) + (((uint64_t)x34 * x6) + ((0x2 * ((uint64_t)x36 * x4)) + ((uint64_t)x38 * x2))))))))))))))))))) + (0x239 * ((0x2 * ((uint64_t)x40 * x47)) + ((0x2 * ((uint64_t)x42 * x48)) + ((0x2 * ((uint64_t)x44 * x46)) + ((0x2 * ((uint64_t)x46 * x44)) + ((0x2 * ((uint64_t)x48 * x42)) + (0x2 * ((uint64_t)x47 * x40)))))))));
- uint64_t x56 = ((((uint64_t)x2 * x36) + (((uint64_t)x4 * x34) + (((uint64_t)x6 * x32) + (((uint64_t)x8 * x30) + (((uint64_t)x10 * x28) + (((uint64_t)x12 * x26) + (((uint64_t)x14 * x24) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + (((uint64_t)x26 * x12) + (((uint64_t)x28 * x10) + (((uint64_t)x30 * x8) + (((uint64_t)x32 * x6) + (((uint64_t)x34 * x4) + ((uint64_t)x36 * x2)))))))))))))))))) + (0x239 * (((uint64_t)x38 * x47) + ((0x2 * ((uint64_t)x40 * x48)) + (((uint64_t)x42 * x46) + ((0x2 * ((uint64_t)x44 * x44)) + (((uint64_t)x46 * x42) + ((0x2 * ((uint64_t)x48 * x40)) + ((uint64_t)x47 * x38)))))))));
- uint64_t x57 = ((((uint64_t)x2 * x34) + ((0x2 * ((uint64_t)x4 * x32)) + (((uint64_t)x6 * x30) + ((0x2 * ((uint64_t)x8 * x28)) + (((uint64_t)x10 * x26) + ((0x2 * ((uint64_t)x12 * x24)) + (((uint64_t)x14 * x22) + ((0x2 * ((uint64_t)x16 * x20)) + (((uint64_t)x18 * x18) + ((0x2 * ((uint64_t)x20 * x16)) + (((uint64_t)x22 * x14) + ((0x2 * ((uint64_t)x24 * x12)) + (((uint64_t)x26 * x10) + ((0x2 * ((uint64_t)x28 * x8)) + (((uint64_t)x30 * x6) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x34 * x2))))))))))))))))) + (0x239 * ((0x2 * ((uint64_t)x36 * x47)) + ((0x2 * ((uint64_t)x38 * x48)) + ((0x2 * ((uint64_t)x40 * x46)) + ((0x2 * ((uint64_t)x42 * x44)) + ((0x2 * ((uint64_t)x44 * x42)) + ((0x2 * ((uint64_t)x46 * x40)) + ((0x2 * ((uint64_t)x48 * x38)) + (0x2 * ((uint64_t)x47 * x36)))))))))));
- uint64_t x58 = ((((uint64_t)x2 * x32) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + (((uint64_t)x8 * x26) + (((uint64_t)x10 * x24) + (((uint64_t)x12 * x22) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + (((uint64_t)x22 * x12) + (((uint64_t)x24 * x10) + (((uint64_t)x26 * x8) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x32 * x2)))))))))))))))) + (0x239 * (((uint64_t)x34 * x47) + ((0x2 * ((uint64_t)x36 * x48)) + (((uint64_t)x38 * x46) + ((0x2 * ((uint64_t)x40 * x44)) + (((uint64_t)x42 * x42) + ((0x2 * ((uint64_t)x44 * x40)) + (((uint64_t)x46 * x38) + ((0x2 * ((uint64_t)x48 * x36)) + ((uint64_t)x47 * x34)))))))))));
- uint64_t x59 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + (((uint64_t)x6 * x26) + ((0x2 * ((uint64_t)x8 * x24)) + (((uint64_t)x10 * x22) + ((0x2 * ((uint64_t)x12 * x20)) + (((uint64_t)x14 * x18) + ((0x2 * ((uint64_t)x16 * x16)) + (((uint64_t)x18 * x14) + ((0x2 * ((uint64_t)x20 * x12)) + (((uint64_t)x22 * x10) + ((0x2 * ((uint64_t)x24 * x8)) + (((uint64_t)x26 * x6) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (0x239 * ((0x2 * ((uint64_t)x32 * x47)) + ((0x2 * ((uint64_t)x34 * x48)) + ((0x2 * ((uint64_t)x36 * x46)) + ((0x2 * ((uint64_t)x38 * x44)) + ((0x2 * ((uint64_t)x40 * x42)) + ((0x2 * ((uint64_t)x42 * x40)) + ((0x2 * ((uint64_t)x44 * x38)) + ((0x2 * ((uint64_t)x46 * x36)) + ((0x2 * ((uint64_t)x48 * x34)) + (0x2 * ((uint64_t)x47 * x32)))))))))))));
- uint64_t x60 = ((((uint64_t)x2 * x28) + (((uint64_t)x4 * x26) + (((uint64_t)x6 * x24) + (((uint64_t)x8 * x22) + (((uint64_t)x10 * x20) + (((uint64_t)x12 * x18) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + (((uint64_t)x18 * x12) + (((uint64_t)x20 * x10) + (((uint64_t)x22 * x8) + (((uint64_t)x24 * x6) + (((uint64_t)x26 * x4) + ((uint64_t)x28 * x2)))))))))))))) + (0x239 * (((uint64_t)x30 * x47) + ((0x2 * ((uint64_t)x32 * x48)) + (((uint64_t)x34 * x46) + ((0x2 * ((uint64_t)x36 * x44)) + (((uint64_t)x38 * x42) + ((0x2 * ((uint64_t)x40 * x40)) + (((uint64_t)x42 * x38) + ((0x2 * ((uint64_t)x44 * x36)) + (((uint64_t)x46 * x34) + ((0x2 * ((uint64_t)x48 * x32)) + ((uint64_t)x47 * x30)))))))))))));
- uint64_t x61 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + (((uint64_t)x6 * x22) + ((0x2 * ((uint64_t)x8 * x20)) + (((uint64_t)x10 * x18) + ((0x2 * ((uint64_t)x12 * x16)) + (((uint64_t)x14 * x14) + ((0x2 * ((uint64_t)x16 * x12)) + (((uint64_t)x18 * x10) + ((0x2 * ((uint64_t)x20 * x8)) + (((uint64_t)x22 * x6) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (0x239 * ((0x2 * ((uint64_t)x28 * x47)) + ((0x2 * ((uint64_t)x30 * x48)) + ((0x2 * ((uint64_t)x32 * x46)) + ((0x2 * ((uint64_t)x34 * x44)) + ((0x2 * ((uint64_t)x36 * x42)) + ((0x2 * ((uint64_t)x38 * x40)) + ((0x2 * ((uint64_t)x40 * x38)) + ((0x2 * ((uint64_t)x42 * x36)) + ((0x2 * ((uint64_t)x44 * x34)) + ((0x2 * ((uint64_t)x46 * x32)) + ((0x2 * ((uint64_t)x48 * x30)) + (0x2 * ((uint64_t)x47 * x28)))))))))))))));
- uint64_t x62 = ((((uint64_t)x2 * x24) + (((uint64_t)x4 * x22) + (((uint64_t)x6 * x20) + (((uint64_t)x8 * x18) + (((uint64_t)x10 * x16) + (((uint64_t)x12 * x14) + (((uint64_t)x14 * x12) + (((uint64_t)x16 * x10) + (((uint64_t)x18 * x8) + (((uint64_t)x20 * x6) + (((uint64_t)x22 * x4) + ((uint64_t)x24 * x2)))))))))))) + (0x239 * (((uint64_t)x26 * x47) + ((0x2 * ((uint64_t)x28 * x48)) + (((uint64_t)x30 * x46) + ((0x2 * ((uint64_t)x32 * x44)) + (((uint64_t)x34 * x42) + ((0x2 * ((uint64_t)x36 * x40)) + (((uint64_t)x38 * x38) + ((0x2 * ((uint64_t)x40 * x36)) + (((uint64_t)x42 * x34) + ((0x2 * ((uint64_t)x44 * x32)) + (((uint64_t)x46 * x30) + ((0x2 * ((uint64_t)x48 * x28)) + ((uint64_t)x47 * x26)))))))))))))));
- uint64_t x63 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + (((uint64_t)x6 * x18) + ((0x2 * ((uint64_t)x8 * x16)) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + ((0x2 * ((uint64_t)x16 * x8)) + (((uint64_t)x18 * x6) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (0x239 * ((0x2 * ((uint64_t)x24 * x47)) + ((0x2 * ((uint64_t)x26 * x48)) + ((0x2 * ((uint64_t)x28 * x46)) + ((0x2 * ((uint64_t)x30 * x44)) + ((0x2 * ((uint64_t)x32 * x42)) + ((0x2 * ((uint64_t)x34 * x40)) + ((0x2 * ((uint64_t)x36 * x38)) + ((0x2 * ((uint64_t)x38 * x36)) + ((0x2 * ((uint64_t)x40 * x34)) + ((0x2 * ((uint64_t)x42 * x32)) + ((0x2 * ((uint64_t)x44 * x30)) + ((0x2 * ((uint64_t)x46 * x28)) + ((0x2 * ((uint64_t)x48 * x26)) + (0x2 * ((uint64_t)x47 * x24)))))))))))))))));
- uint64_t x64 = ((((uint64_t)x2 * x20) + (((uint64_t)x4 * x18) + (((uint64_t)x6 * x16) + (((uint64_t)x8 * x14) + (((uint64_t)x10 * x12) + (((uint64_t)x12 * x10) + (((uint64_t)x14 * x8) + (((uint64_t)x16 * x6) + (((uint64_t)x18 * x4) + ((uint64_t)x20 * x2)))))))))) + (0x239 * (((uint64_t)x22 * x47) + ((0x2 * ((uint64_t)x24 * x48)) + (((uint64_t)x26 * x46) + ((0x2 * ((uint64_t)x28 * x44)) + (((uint64_t)x30 * x42) + ((0x2 * ((uint64_t)x32 * x40)) + (((uint64_t)x34 * x38) + ((0x2 * ((uint64_t)x36 * x36)) + (((uint64_t)x38 * x34) + ((0x2 * ((uint64_t)x40 * x32)) + (((uint64_t)x42 * x30) + ((0x2 * ((uint64_t)x44 * x28)) + (((uint64_t)x46 * x26) + ((0x2 * ((uint64_t)x48 * x24)) + ((uint64_t)x47 * x22)))))))))))))))));
- uint64_t x65 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + (((uint64_t)x6 * x14) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + (((uint64_t)x14 * x6) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (0x239 * ((0x2 * ((uint64_t)x20 * x47)) + ((0x2 * ((uint64_t)x22 * x48)) + ((0x2 * ((uint64_t)x24 * x46)) + ((0x2 * ((uint64_t)x26 * x44)) + ((0x2 * ((uint64_t)x28 * x42)) + ((0x2 * ((uint64_t)x30 * x40)) + ((0x2 * ((uint64_t)x32 * x38)) + ((0x2 * ((uint64_t)x34 * x36)) + ((0x2 * ((uint64_t)x36 * x34)) + ((0x2 * ((uint64_t)x38 * x32)) + ((0x2 * ((uint64_t)x40 * x30)) + ((0x2 * ((uint64_t)x42 * x28)) + ((0x2 * ((uint64_t)x44 * x26)) + ((0x2 * ((uint64_t)x46 * x24)) + ((0x2 * ((uint64_t)x48 * x22)) + (0x2 * ((uint64_t)x47 * x20)))))))))))))))))));
- uint64_t x66 = ((((uint64_t)x2 * x16) + (((uint64_t)x4 * x14) + (((uint64_t)x6 * x12) + (((uint64_t)x8 * x10) + (((uint64_t)x10 * x8) + (((uint64_t)x12 * x6) + (((uint64_t)x14 * x4) + ((uint64_t)x16 * x2)))))))) + (0x239 * (((uint64_t)x18 * x47) + ((0x2 * ((uint64_t)x20 * x48)) + (((uint64_t)x22 * x46) + ((0x2 * ((uint64_t)x24 * x44)) + (((uint64_t)x26 * x42) + ((0x2 * ((uint64_t)x28 * x40)) + (((uint64_t)x30 * x38) + ((0x2 * ((uint64_t)x32 * x36)) + (((uint64_t)x34 * x34) + ((0x2 * ((uint64_t)x36 * x32)) + (((uint64_t)x38 * x30) + ((0x2 * ((uint64_t)x40 * x28)) + (((uint64_t)x42 * x26) + ((0x2 * ((uint64_t)x44 * x24)) + (((uint64_t)x46 * x22) + ((0x2 * ((uint64_t)x48 * x20)) + ((uint64_t)x47 * x18)))))))))))))))))));
- uint64_t x67 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (0x239 * ((0x2 * ((uint64_t)x16 * x47)) + ((0x2 * ((uint64_t)x18 * x48)) + ((0x2 * ((uint64_t)x20 * x46)) + ((0x2 * ((uint64_t)x22 * x44)) + ((0x2 * ((uint64_t)x24 * x42)) + ((0x2 * ((uint64_t)x26 * x40)) + ((0x2 * ((uint64_t)x28 * x38)) + ((0x2 * ((uint64_t)x30 * x36)) + ((0x2 * ((uint64_t)x32 * x34)) + ((0x2 * ((uint64_t)x34 * x32)) + ((0x2 * ((uint64_t)x36 * x30)) + ((0x2 * ((uint64_t)x38 * x28)) + ((0x2 * ((uint64_t)x40 * x26)) + ((0x2 * ((uint64_t)x42 * x24)) + ((0x2 * ((uint64_t)x44 * x22)) + ((0x2 * ((uint64_t)x46 * x20)) + ((0x2 * ((uint64_t)x48 * x18)) + (0x2 * ((uint64_t)x47 * x16)))))))))))))))))))));
- uint64_t x68 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (0x239 * (((uint64_t)x14 * x47) + ((0x2 * ((uint64_t)x16 * x48)) + (((uint64_t)x18 * x46) + ((0x2 * ((uint64_t)x20 * x44)) + (((uint64_t)x22 * x42) + ((0x2 * ((uint64_t)x24 * x40)) + (((uint64_t)x26 * x38) + ((0x2 * ((uint64_t)x28 * x36)) + (((uint64_t)x30 * x34) + ((0x2 * ((uint64_t)x32 * x32)) + (((uint64_t)x34 * x30) + ((0x2 * ((uint64_t)x36 * x28)) + (((uint64_t)x38 * x26) + ((0x2 * ((uint64_t)x40 * x24)) + (((uint64_t)x42 * x22) + ((0x2 * ((uint64_t)x44 * x20)) + (((uint64_t)x46 * x18) + ((0x2 * ((uint64_t)x48 * x16)) + ((uint64_t)x47 * x14)))))))))))))))))))));
- uint64_t x69 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (0x239 * ((0x2 * ((uint64_t)x12 * x47)) + ((0x2 * ((uint64_t)x14 * x48)) + ((0x2 * ((uint64_t)x16 * x46)) + ((0x2 * ((uint64_t)x18 * x44)) + ((0x2 * ((uint64_t)x20 * x42)) + ((0x2 * ((uint64_t)x22 * x40)) + ((0x2 * ((uint64_t)x24 * x38)) + ((0x2 * ((uint64_t)x26 * x36)) + ((0x2 * ((uint64_t)x28 * x34)) + ((0x2 * ((uint64_t)x30 * x32)) + ((0x2 * ((uint64_t)x32 * x30)) + ((0x2 * ((uint64_t)x34 * x28)) + ((0x2 * ((uint64_t)x36 * x26)) + ((0x2 * ((uint64_t)x38 * x24)) + ((0x2 * ((uint64_t)x40 * x22)) + ((0x2 * ((uint64_t)x42 * x20)) + ((0x2 * ((uint64_t)x44 * x18)) + ((0x2 * ((uint64_t)x46 * x16)) + ((0x2 * ((uint64_t)x48 * x14)) + (0x2 * ((uint64_t)x47 * x12)))))))))))))))))))))));
- uint64_t x70 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (0x239 * (((uint64_t)x10 * x47) + ((0x2 * ((uint64_t)x12 * x48)) + (((uint64_t)x14 * x46) + ((0x2 * ((uint64_t)x16 * x44)) + (((uint64_t)x18 * x42) + ((0x2 * ((uint64_t)x20 * x40)) + (((uint64_t)x22 * x38) + ((0x2 * ((uint64_t)x24 * x36)) + (((uint64_t)x26 * x34) + ((0x2 * ((uint64_t)x28 * x32)) + (((uint64_t)x30 * x30) + ((0x2 * ((uint64_t)x32 * x28)) + (((uint64_t)x34 * x26) + ((0x2 * ((uint64_t)x36 * x24)) + (((uint64_t)x38 * x22) + ((0x2 * ((uint64_t)x40 * x20)) + (((uint64_t)x42 * x18) + ((0x2 * ((uint64_t)x44 * x16)) + (((uint64_t)x46 * x14) + ((0x2 * ((uint64_t)x48 * x12)) + ((uint64_t)x47 * x10)))))))))))))))))))))));
- uint64_t x71 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (0x239 * ((0x2 * ((uint64_t)x8 * x47)) + ((0x2 * ((uint64_t)x10 * x48)) + ((0x2 * ((uint64_t)x12 * x46)) + ((0x2 * ((uint64_t)x14 * x44)) + ((0x2 * ((uint64_t)x16 * x42)) + ((0x2 * ((uint64_t)x18 * x40)) + ((0x2 * ((uint64_t)x20 * x38)) + ((0x2 * ((uint64_t)x22 * x36)) + ((0x2 * ((uint64_t)x24 * x34)) + ((0x2 * ((uint64_t)x26 * x32)) + ((0x2 * ((uint64_t)x28 * x30)) + ((0x2 * ((uint64_t)x30 * x28)) + ((0x2 * ((uint64_t)x32 * x26)) + ((0x2 * ((uint64_t)x34 * x24)) + ((0x2 * ((uint64_t)x36 * x22)) + ((0x2 * ((uint64_t)x38 * x20)) + ((0x2 * ((uint64_t)x40 * x18)) + ((0x2 * ((uint64_t)x42 * x16)) + ((0x2 * ((uint64_t)x44 * x14)) + ((0x2 * ((uint64_t)x46 * x12)) + ((0x2 * ((uint64_t)x48 * x10)) + (0x2 * ((uint64_t)x47 * x8)))))))))))))))))))))))));
- uint64_t x72 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (0x239 * (((uint64_t)x6 * x47) + ((0x2 * ((uint64_t)x8 * x48)) + (((uint64_t)x10 * x46) + ((0x2 * ((uint64_t)x12 * x44)) + (((uint64_t)x14 * x42) + ((0x2 * ((uint64_t)x16 * x40)) + (((uint64_t)x18 * x38) + ((0x2 * ((uint64_t)x20 * x36)) + (((uint64_t)x22 * x34) + ((0x2 * ((uint64_t)x24 * x32)) + (((uint64_t)x26 * x30) + ((0x2 * ((uint64_t)x28 * x28)) + (((uint64_t)x30 * x26) + ((0x2 * ((uint64_t)x32 * x24)) + (((uint64_t)x34 * x22) + ((0x2 * ((uint64_t)x36 * x20)) + (((uint64_t)x38 * x18) + ((0x2 * ((uint64_t)x40 * x16)) + (((uint64_t)x42 * x14) + ((0x2 * ((uint64_t)x44 * x12)) + (((uint64_t)x46 * x10) + ((0x2 * ((uint64_t)x48 * x8)) + ((uint64_t)x47 * x6)))))))))))))))))))))))));
- uint64_t x73 = (((uint64_t)x2 * x2) + (0x239 * ((0x2 * ((uint64_t)x4 * x47)) + ((0x2 * ((uint64_t)x6 * x48)) + ((0x2 * ((uint64_t)x8 * x46)) + ((0x2 * ((uint64_t)x10 * x44)) + ((0x2 * ((uint64_t)x12 * x42)) + ((0x2 * ((uint64_t)x14 * x40)) + ((0x2 * ((uint64_t)x16 * x38)) + ((0x2 * ((uint64_t)x18 * x36)) + ((0x2 * ((uint64_t)x20 * x34)) + ((0x2 * ((uint64_t)x22 * x32)) + ((0x2 * ((uint64_t)x24 * x30)) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + ((0x2 * ((uint64_t)x30 * x24)) + ((0x2 * ((uint64_t)x32 * x22)) + ((0x2 * ((uint64_t)x34 * x20)) + ((0x2 * ((uint64_t)x36 * x18)) + ((0x2 * ((uint64_t)x38 * x16)) + ((0x2 * ((uint64_t)x40 * x14)) + ((0x2 * ((uint64_t)x42 * x12)) + ((0x2 * ((uint64_t)x44 * x10)) + ((0x2 * ((uint64_t)x46 * x8)) + ((0x2 * ((uint64_t)x48 * x6)) + (0x2 * ((uint64_t)x47 * x4)))))))))))))))))))))))))));
- uint64_t x74 = (x73 >> 0x15);
- uint32_t x75 = ((uint32_t)x73 & 0x1fffff);
- uint64_t x76 = (x74 + x72);
- uint64_t x77 = (x76 >> 0x14);
- uint32_t x78 = ((uint32_t)x76 & 0xfffff);
- uint64_t x79 = (x77 + x71);
- uint64_t x80 = (x79 >> 0x15);
- uint32_t x81 = ((uint32_t)x79 & 0x1fffff);
- uint64_t x82 = (x80 + x70);
- uint64_t x83 = (x82 >> 0x14);
- uint32_t x84 = ((uint32_t)x82 & 0xfffff);
- uint64_t x85 = (x83 + x69);
- uint64_t x86 = (x85 >> 0x15);
- uint32_t x87 = ((uint32_t)x85 & 0x1fffff);
- uint64_t x88 = (x86 + x68);
- uint64_t x89 = (x88 >> 0x14);
- uint32_t x90 = ((uint32_t)x88 & 0xfffff);
- uint64_t x91 = (x89 + x67);
- uint64_t x92 = (x91 >> 0x15);
- uint32_t x93 = ((uint32_t)x91 & 0x1fffff);
- uint64_t x94 = (x92 + x66);
- uint64_t x95 = (x94 >> 0x14);
- uint32_t x96 = ((uint32_t)x94 & 0xfffff);
- uint64_t x97 = (x95 + x65);
- uint64_t x98 = (x97 >> 0x15);
- uint32_t x99 = ((uint32_t)x97 & 0x1fffff);
- uint64_t x100 = (x98 + x64);
- uint64_t x101 = (x100 >> 0x14);
- uint32_t x102 = ((uint32_t)x100 & 0xfffff);
- uint64_t x103 = (x101 + x63);
- uint64_t x104 = (x103 >> 0x15);
- uint32_t x105 = ((uint32_t)x103 & 0x1fffff);
- uint64_t x106 = (x104 + x62);
- uint64_t x107 = (x106 >> 0x14);
- uint32_t x108 = ((uint32_t)x106 & 0xfffff);
- uint64_t x109 = (x107 + x61);
- uint64_t x110 = (x109 >> 0x15);
- uint32_t x111 = ((uint32_t)x109 & 0x1fffff);
- uint64_t x112 = (x110 + x60);
- uint64_t x113 = (x112 >> 0x14);
- uint32_t x114 = ((uint32_t)x112 & 0xfffff);
- uint64_t x115 = (x113 + x59);
- uint64_t x116 = (x115 >> 0x15);
- uint32_t x117 = ((uint32_t)x115 & 0x1fffff);
- uint64_t x118 = (x116 + x58);
- uint64_t x119 = (x118 >> 0x14);
- uint32_t x120 = ((uint32_t)x118 & 0xfffff);
- uint64_t x121 = (x119 + x57);
- uint64_t x122 = (x121 >> 0x15);
- uint32_t x123 = ((uint32_t)x121 & 0x1fffff);
- uint64_t x124 = (x122 + x56);
- uint64_t x125 = (x124 >> 0x14);
- uint32_t x126 = ((uint32_t)x124 & 0xfffff);
- uint64_t x127 = (x125 + x55);
- uint64_t x128 = (x127 >> 0x15);
- uint32_t x129 = ((uint32_t)x127 & 0x1fffff);
- uint64_t x130 = (x128 + x54);
- uint64_t x131 = (x130 >> 0x14);
- uint32_t x132 = ((uint32_t)x130 & 0xfffff);
- uint64_t x133 = (x131 + x53);
- uint64_t x134 = (x133 >> 0x15);
- uint32_t x135 = ((uint32_t)x133 & 0x1fffff);
- uint64_t x136 = (x134 + x52);
- uint64_t x137 = (x136 >> 0x14);
- uint32_t x138 = ((uint32_t)x136 & 0xfffff);
- uint64_t x139 = (x137 + x51);
- uint64_t x140 = (x139 >> 0x15);
- uint32_t x141 = ((uint32_t)x139 & 0x1fffff);
- uint64_t x142 = (x140 + x50);
- uint64_t x143 = (x142 >> 0x14);
- uint32_t x144 = ((uint32_t)x142 & 0xfffff);
- uint64_t x145 = (x143 + x49);
- uint32_t x146 = (uint32_t) (x145 >> 0x14);
- uint32_t x147 = ((uint32_t)x145 & 0xfffff);
- uint64_t x148 = (x75 + ((uint64_t)0x239 * x146));
- uint32_t x149 = (uint32_t) (x148 >> 0x15);
- uint32_t x150 = ((uint32_t)x148 & 0x1fffff);
- uint32_t x151 = (x149 + x78);
- uint32_t x152 = (x151 >> 0x14);
- uint32_t x153 = (x151 & 0xfffff);
- return (Return x147, Return x144, Return x141, Return x138, Return x135, Return x132, Return x129, Return x126, Return x123, Return x120, Return x117, Return x114, Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, (x152 + x81), Return x153, Return x150))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e512m569_25limbs/fesquareDisplay.v b/src/Specific/solinas32_2e512m569_25limbs/fesquareDisplay.v
deleted file mode 100644
index 603896064..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e512m569_25limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e512m569_25limbs/fesub.c b/src/Specific/solinas32_2e512m569_25limbs/fesub.c
deleted file mode 100644
index fb6b779e3..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/fesub.c
+++ /dev/null
@@ -1,78 +0,0 @@
-static void fesub(uint32_t out[25], const uint32_t in1[25], const uint32_t in2[25]) {
- { const uint32_t x50 = in1[24];
- { const uint32_t x51 = in1[23];
- { const uint32_t x49 = in1[22];
- { const uint32_t x47 = in1[21];
- { const uint32_t x45 = in1[20];
- { const uint32_t x43 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x98 = in2[24];
- { const uint32_t x99 = in2[23];
- { const uint32_t x97 = in2[22];
- { const uint32_t x95 = in2[21];
- { const uint32_t x93 = in2[20];
- { const uint32_t x91 = in2[19];
- { const uint32_t x89 = in2[18];
- { const uint32_t x87 = in2[17];
- { const uint32_t x85 = in2[16];
- { const uint32_t x83 = in2[15];
- { const uint32_t x81 = in2[14];
- { const uint32_t x79 = in2[13];
- { const uint32_t x77 = in2[12];
- { const uint32_t x75 = in2[11];
- { const uint32_t x73 = in2[10];
- { const uint32_t x71 = in2[9];
- { const uint32_t x69 = in2[8];
- { const uint32_t x67 = in2[7];
- { const uint32_t x65 = in2[6];
- { const uint32_t x63 = in2[5];
- { const uint32_t x61 = in2[4];
- { const uint32_t x59 = in2[3];
- { const uint32_t x57 = in2[2];
- { const uint32_t x55 = in2[1];
- { const uint32_t x53 = in2[0];
- out[0] = ((0x3ffb8e + x5) - x53);
- out[1] = ((0x1ffffe + x7) - x55);
- out[2] = ((0x3ffffe + x9) - x57);
- out[3] = ((0x1ffffe + x11) - x59);
- out[4] = ((0x3ffffe + x13) - x61);
- out[5] = ((0x1ffffe + x15) - x63);
- out[6] = ((0x3ffffe + x17) - x65);
- out[7] = ((0x1ffffe + x19) - x67);
- out[8] = ((0x3ffffe + x21) - x69);
- out[9] = ((0x1ffffe + x23) - x71);
- out[10] = ((0x3ffffe + x25) - x73);
- out[11] = ((0x1ffffe + x27) - x75);
- out[12] = ((0x3ffffe + x29) - x77);
- out[13] = ((0x1ffffe + x31) - x79);
- out[14] = ((0x3ffffe + x33) - x81);
- out[15] = ((0x1ffffe + x35) - x83);
- out[16] = ((0x3ffffe + x37) - x85);
- out[17] = ((0x1ffffe + x39) - x87);
- out[18] = ((0x3ffffe + x41) - x89);
- out[19] = ((0x1ffffe + x43) - x91);
- out[20] = ((0x3ffffe + x45) - x93);
- out[21] = ((0x1ffffe + x47) - x95);
- out[22] = ((0x3ffffe + x49) - x97);
- out[23] = ((0x1ffffe + x51) - x99);
- out[24] = ((0x1ffffe + x50) - x98);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e512m569_25limbs/fesub.v b/src/Specific/solinas32_2e512m569_25limbs/fesub.v
deleted file mode 100644
index 4b1c1bc8d..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e512m569_25limbs.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_2e512m569_25limbs/fesubDisplay.log b/src/Specific/solinas32_2e512m569_25limbs/fesubDisplay.log
deleted file mode 100644
index bb633ea33..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x50, x51, x49, x47, x45, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x98, x99, x97, x95, x93, x91, x89, x87, x85, x83, x81, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53))%core,
- (((0x1ffffe + x50) - x98), ((0x1ffffe + x51) - x99), ((0x3ffffe + x49) - x97), ((0x1ffffe + x47) - x95), ((0x3ffffe + x45) - x93), ((0x1ffffe + x43) - x91), ((0x3ffffe + x41) - x89), ((0x1ffffe + x39) - x87), ((0x3ffffe + x37) - x85), ((0x1ffffe + x35) - x83), ((0x3ffffe + x33) - x81), ((0x1ffffe + x31) - x79), ((0x3ffffe + x29) - x77), ((0x1ffffe + x27) - x75), ((0x3ffffe + x25) - x73), ((0x1ffffe + x23) - x71), ((0x3ffffe + x21) - x69), ((0x1ffffe + x19) - x67), ((0x3ffffe + x17) - x65), ((0x1ffffe + x15) - x63), ((0x3ffffe + x13) - x61), ((0x1ffffe + x11) - x59), ((0x3ffffe + x9) - x57), ((0x1ffffe + x7) - x55), ((0x3ffb8e + x5) - x53)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e512m569_25limbs/fesubDisplay.v b/src/Specific/solinas32_2e512m569_25limbs/fesubDisplay.v
deleted file mode 100644
index 310043be0..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e512m569_25limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e512m569_25limbs/freeze.c b/src/Specific/solinas32_2e512m569_25limbs/freeze.c
deleted file mode 100644
index dc8d24656..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/freeze.c
+++ /dev/null
@@ -1,129 +0,0 @@
-static void freeze(uint32_t out[25], const uint32_t in1[25]) {
- { const uint32_t x47 = in1[24];
- { const uint32_t x48 = in1[23];
- { const uint32_t x46 = in1[22];
- { const uint32_t x44 = in1[21];
- { const uint32_t x42 = in1[20];
- { const uint32_t x40 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffdc7);
- { uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x4, 0xfffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x6, 0x1fffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x8, 0xfffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x10, 0x1fffff);
- { uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x12, 0xfffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x14, 0x1fffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x16, 0xfffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x18, 0x1fffff);
- { uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x20, 0xfffff);
- { uint32_t x80, uint8_t x81 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x22, 0x1fffff);
- { uint32_t x83, uint8_t x84 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x24, 0xfffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x26, 0x1fffff);
- { uint32_t x89, uint8_t x90 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x28, 0xfffff);
- { uint32_t x92, uint8_t x93 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x30, 0x1fffff);
- { uint32_t x95, uint8_t x96 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x32, 0xfffff);
- { uint32_t x98, uint8_t x99 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x34, 0x1fffff);
- { uint32_t x101, uint8_t x102 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x36, 0xfffff);
- { uint32_t x104, uint8_t x105 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x102, Return x38, 0x1fffff);
- { uint32_t x107, uint8_t x108 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x40, 0xfffff);
- { uint32_t x110, uint8_t x111 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x42, 0x1fffff);
- { uint32_t x113, uint8_t x114 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x44, 0xfffff);
- { uint32_t x116, uint8_t x117 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x114, Return x46, 0x1fffff);
- { uint32_t x119, uint8_t x120 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x48, 0xfffff);
- { uint32_t x122, uint8_t x123 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x120, Return x47, 0xfffff);
- { uint32_t x124 = cmovznz32(x123, 0x0, 0xffffffff);
- { uint32_t x125 = (x124 & 0x1ffdc7);
- { uint32_t x127, uint8_t x128 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x50, Return x125);
- { uint32_t x129 = (x124 & 0xfffff);
- { uint32_t x131, uint8_t x132 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x128, Return x53, Return x129);
- { uint32_t x133 = (x124 & 0x1fffff);
- { uint32_t x135, uint8_t x136 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x132, Return x56, Return x133);
- { uint32_t x137 = (x124 & 0xfffff);
- { uint32_t x139, uint8_t x140 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x136, Return x59, Return x137);
- { uint32_t x141 = (x124 & 0x1fffff);
- { uint32_t x143, uint8_t x144 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x140, Return x62, Return x141);
- { uint32_t x145 = (x124 & 0xfffff);
- { uint32_t x147, uint8_t x148 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x144, Return x65, Return x145);
- { uint32_t x149 = (x124 & 0x1fffff);
- { uint32_t x151, uint8_t x152 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x148, Return x68, Return x149);
- { uint32_t x153 = (x124 & 0xfffff);
- { uint32_t x155, uint8_t x156 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x152, Return x71, Return x153);
- { uint32_t x157 = (x124 & 0x1fffff);
- { uint32_t x159, uint8_t x160 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x156, Return x74, Return x157);
- { uint32_t x161 = (x124 & 0xfffff);
- { uint32_t x163, uint8_t x164 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x160, Return x77, Return x161);
- { uint32_t x165 = (x124 & 0x1fffff);
- { uint32_t x167, uint8_t x168 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x164, Return x80, Return x165);
- { uint32_t x169 = (x124 & 0xfffff);
- { uint32_t x171, uint8_t x172 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x168, Return x83, Return x169);
- { uint32_t x173 = (x124 & 0x1fffff);
- { uint32_t x175, uint8_t x176 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x172, Return x86, Return x173);
- { uint32_t x177 = (x124 & 0xfffff);
- { uint32_t x179, uint8_t x180 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x176, Return x89, Return x177);
- { uint32_t x181 = (x124 & 0x1fffff);
- { uint32_t x183, uint8_t x184 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x180, Return x92, Return x181);
- { uint32_t x185 = (x124 & 0xfffff);
- { uint32_t x187, uint8_t x188 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x184, Return x95, Return x185);
- { uint32_t x189 = (x124 & 0x1fffff);
- { uint32_t x191, uint8_t x192 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x188, Return x98, Return x189);
- { uint32_t x193 = (x124 & 0xfffff);
- { uint32_t x195, uint8_t x196 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x192, Return x101, Return x193);
- { uint32_t x197 = (x124 & 0x1fffff);
- { uint32_t x199, uint8_t x200 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x196, Return x104, Return x197);
- { uint32_t x201 = (x124 & 0xfffff);
- { uint32_t x203, uint8_t x204 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x200, Return x107, Return x201);
- { uint32_t x205 = (x124 & 0x1fffff);
- { uint32_t x207, uint8_t x208 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x204, Return x110, Return x205);
- { uint32_t x209 = (x124 & 0xfffff);
- { uint32_t x211, uint8_t x212 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x208, Return x113, Return x209);
- { uint32_t x213 = (x124 & 0x1fffff);
- { uint32_t x215, uint8_t x216 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x212, Return x116, Return x213);
- { uint32_t x217 = (x124 & 0xfffff);
- { uint32_t x219, uint8_t x220 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x216, Return x119, Return x217);
- { uint32_t x221 = (x124 & 0xfffff);
- { uint32_t x223, uint8_t _ = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x220, Return x122, Return x221);
- out[0] = x127;
- out[1] = x131;
- out[2] = x135;
- out[3] = x139;
- out[4] = x143;
- out[5] = x147;
- out[6] = x151;
- out[7] = x155;
- out[8] = x159;
- out[9] = x163;
- out[10] = x167;
- out[11] = x171;
- out[12] = x175;
- out[13] = x179;
- out[14] = x183;
- out[15] = x187;
- out[16] = x191;
- out[17] = x195;
- out[18] = x199;
- out[19] = x203;
- out[20] = x207;
- out[21] = x211;
- out[22] = x215;
- out[23] = x219;
- out[24] = x223;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e512m569_25limbs/freeze.v b/src/Specific/solinas32_2e512m569_25limbs/freeze.v
deleted file mode 100644
index 6e0180849..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e512m569_25limbs.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_2e512m569_25limbs/freezeDisplay.log b/src/Specific/solinas32_2e512m569_25limbs/freezeDisplay.log
deleted file mode 100644
index 0e95dcf8e..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/freezeDisplay.log
+++ /dev/null
@@ -1,83 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x47, x48, x46, x44, x42, x40, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffdc7);
- uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x4, 0xfffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x6, 0x1fffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x8, 0xfffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x10, 0x1fffff);
- uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x12, 0xfffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x14, 0x1fffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x16, 0xfffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x18, 0x1fffff);
- uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x20, 0xfffff);
- uint32_t x80, uint8_t x81 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x22, 0x1fffff);
- uint32_t x83, uint8_t x84 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x24, 0xfffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x26, 0x1fffff);
- uint32_t x89, uint8_t x90 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x28, 0xfffff);
- uint32_t x92, uint8_t x93 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x30, 0x1fffff);
- uint32_t x95, uint8_t x96 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x93, Return x32, 0xfffff);
- uint32_t x98, uint8_t x99 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x96, Return x34, 0x1fffff);
- uint32_t x101, uint8_t x102 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x99, Return x36, 0xfffff);
- uint32_t x104, uint8_t x105 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x102, Return x38, 0x1fffff);
- uint32_t x107, uint8_t x108 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x105, Return x40, 0xfffff);
- uint32_t x110, uint8_t x111 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x108, Return x42, 0x1fffff);
- uint32_t x113, uint8_t x114 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x44, 0xfffff);
- uint32_t x116, uint8_t x117 = Op (Syntax.SubWithGetBorrow 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x114, Return x46, 0x1fffff);
- uint32_t x119, uint8_t x120 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x117, Return x48, 0xfffff);
- uint32_t x122, uint8_t x123 = Op (Syntax.SubWithGetBorrow 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x120, Return x47, 0xfffff);
- uint32_t x124 = cmovznz32(x123, 0x0, 0xffffffff);
- uint32_t x125 = (x124 & 0x1ffdc7);
- uint32_t x127, uint8_t x128 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x50, Return x125);
- uint32_t x129 = (x124 & 0xfffff);
- uint32_t x131, uint8_t x132 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x128, Return x53, Return x129);
- uint32_t x133 = (x124 & 0x1fffff);
- uint32_t x135, uint8_t x136 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x132, Return x56, Return x133);
- uint32_t x137 = (x124 & 0xfffff);
- uint32_t x139, uint8_t x140 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x136, Return x59, Return x137);
- uint32_t x141 = (x124 & 0x1fffff);
- uint32_t x143, uint8_t x144 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x140, Return x62, Return x141);
- uint32_t x145 = (x124 & 0xfffff);
- uint32_t x147, uint8_t x148 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x144, Return x65, Return x145);
- uint32_t x149 = (x124 & 0x1fffff);
- uint32_t x151, uint8_t x152 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x148, Return x68, Return x149);
- uint32_t x153 = (x124 & 0xfffff);
- uint32_t x155, uint8_t x156 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x152, Return x71, Return x153);
- uint32_t x157 = (x124 & 0x1fffff);
- uint32_t x159, uint8_t x160 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x156, Return x74, Return x157);
- uint32_t x161 = (x124 & 0xfffff);
- uint32_t x163, uint8_t x164 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x160, Return x77, Return x161);
- uint32_t x165 = (x124 & 0x1fffff);
- uint32_t x167, uint8_t x168 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x164, Return x80, Return x165);
- uint32_t x169 = (x124 & 0xfffff);
- uint32_t x171, uint8_t x172 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x168, Return x83, Return x169);
- uint32_t x173 = (x124 & 0x1fffff);
- uint32_t x175, uint8_t x176 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x172, Return x86, Return x173);
- uint32_t x177 = (x124 & 0xfffff);
- uint32_t x179, uint8_t x180 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x176, Return x89, Return x177);
- uint32_t x181 = (x124 & 0x1fffff);
- uint32_t x183, uint8_t x184 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x180, Return x92, Return x181);
- uint32_t x185 = (x124 & 0xfffff);
- uint32_t x187, uint8_t x188 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x184, Return x95, Return x185);
- uint32_t x189 = (x124 & 0x1fffff);
- uint32_t x191, uint8_t x192 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x188, Return x98, Return x189);
- uint32_t x193 = (x124 & 0xfffff);
- uint32_t x195, uint8_t x196 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x192, Return x101, Return x193);
- uint32_t x197 = (x124 & 0x1fffff);
- uint32_t x199, uint8_t x200 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x196, Return x104, Return x197);
- uint32_t x201 = (x124 & 0xfffff);
- uint32_t x203, uint8_t x204 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x200, Return x107, Return x201);
- uint32_t x205 = (x124 & 0x1fffff);
- uint32_t x207, uint8_t x208 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x204, Return x110, Return x205);
- uint32_t x209 = (x124 & 0xfffff);
- uint32_t x211, uint8_t x212 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x208, Return x113, Return x209);
- uint32_t x213 = (x124 & 0x1fffff);
- uint32_t x215, uint8_t x216 = Op (Syntax.AddWithGetCarry 21 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x212, Return x116, Return x213);
- uint32_t x217 = (x124 & 0xfffff);
- uint32_t x219, uint8_t x220 = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x216, Return x119, Return x217);
- uint32_t x221 = (x124 & 0xfffff);
- uint32_t x223, uint8_t _ = Op (Syntax.AddWithGetCarry 20 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x220, Return x122, Return x221);
- (Return x223, Return x219, Return x215, Return x211, Return x207, Return x203, Return x199, Return x195, Return x191, Return x187, Return x183, Return x179, Return x175, Return x171, Return x167, Return x163, Return x159, Return x155, Return x151, Return x147, Return x143, Return x139, Return x135, Return x131, Return x127))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e512m569_25limbs/freezeDisplay.v b/src/Specific/solinas32_2e512m569_25limbs/freezeDisplay.v
deleted file mode 100644
index 38122eaa7..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e512m569_25limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e512m569_25limbs/py_interpreter.sh b/src/Specific/solinas32_2e512m569_25limbs/py_interpreter.sh
deleted file mode 100755
index 9ad22d5c1..000000000
--- a/src/Specific/solinas32_2e512m569_25limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**512 - 569' -Dmodulus_bytes='20 + 12/25' -Da24='121665'
diff --git a/src/Specific/solinas32_2e521m1_19limbs/CurveParameters.v b/src/Specific/solinas32_2e521m1_19limbs/CurveParameters.v
deleted file mode 100644
index cd138bbe2..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^521 - 1
-Base: 27 + 8/19
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 19%nat;
- base := 27 + 8/19;
- bitwidth := 32;
- s := 2^521;
- c := [(1, 1)];
- carry_chains := Some [seq 0 (pred 19); [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_2e521m1_19limbs/Synthesis.v b/src/Specific/solinas32_2e521m1_19limbs/Synthesis.v
deleted file mode 100644
index a1acc3dcb..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e521m1_19limbs.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_2e521m1_19limbs/compiler.sh b/src/Specific/solinas32_2e521m1_19limbs/compiler.sh
deleted file mode 100755
index 6892e38e0..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{28,27,28,27,28,27,27,28,27,28,27,28,27,27,28,27,28,27,27}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='66' -Dmodulus_limbs='19' -Dq_mpz='(1_mpz<<521) - 1' "$@"
diff --git a/src/Specific/solinas32_2e521m1_19limbs/compilerxx.sh b/src/Specific/solinas32_2e521m1_19limbs/compilerxx.sh
deleted file mode 100755
index 72a7814d5..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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='{28,27,28,27,28,27,27,28,27,28,27,28,27,27,28,27,28,27,27}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='66' -Dmodulus_limbs='19' -Dq_mpz='(1_mpz<<521) - 1' "$@"
diff --git a/src/Specific/solinas32_2e521m1_19limbs/feadd.c b/src/Specific/solinas32_2e521m1_19limbs/feadd.c
deleted file mode 100644
index 7432e2ef1..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/feadd.c
+++ /dev/null
@@ -1,60 +0,0 @@
-static void feadd(uint32_t out[19], const uint32_t in1[19], const uint32_t in2[19]) {
- { const uint32_t x38 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x74 = in2[18];
- { const uint32_t x75 = in2[17];
- { const uint32_t x73 = in2[16];
- { const uint32_t x71 = in2[15];
- { const uint32_t x69 = in2[14];
- { const uint32_t x67 = in2[13];
- { const uint32_t x65 = in2[12];
- { const uint32_t x63 = in2[11];
- { const uint32_t x61 = in2[10];
- { const uint32_t x59 = in2[9];
- { const uint32_t x57 = in2[8];
- { const uint32_t x55 = in2[7];
- { const uint32_t x53 = in2[6];
- { const uint32_t x51 = in2[5];
- { const uint32_t x49 = in2[4];
- { const uint32_t x47 = in2[3];
- { const uint32_t x45 = in2[2];
- { const uint32_t x43 = in2[1];
- { const uint32_t x41 = in2[0];
- out[0] = (x5 + x41);
- out[1] = (x7 + x43);
- out[2] = (x9 + x45);
- out[3] = (x11 + x47);
- out[4] = (x13 + x49);
- out[5] = (x15 + x51);
- out[6] = (x17 + x53);
- out[7] = (x19 + x55);
- out[8] = (x21 + x57);
- out[9] = (x23 + x59);
- out[10] = (x25 + x61);
- out[11] = (x27 + x63);
- out[12] = (x29 + x65);
- out[13] = (x31 + x67);
- out[14] = (x33 + x69);
- out[15] = (x35 + x71);
- out[16] = (x37 + x73);
- out[17] = (x39 + x75);
- out[18] = (x38 + x74);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e521m1_19limbs/feadd.v b/src/Specific/solinas32_2e521m1_19limbs/feadd.v
deleted file mode 100644
index b563d4375..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e521m1_19limbs.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_2e521m1_19limbs/feaddDisplay.log b/src/Specific/solinas32_2e521m1_19limbs/feaddDisplay.log
deleted file mode 100644
index 76a71b356..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x38, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x74, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41))%core,
- ((x38 + x74), (x39 + x75), (x37 + x73), (x35 + x71), (x33 + x69), (x31 + x67), (x29 + x65), (x27 + x63), (x25 + x61), (x23 + x59), (x21 + x57), (x19 + x55), (x17 + x53), (x15 + x51), (x13 + x49), (x11 + x47), (x9 + x45), (x7 + x43), (x5 + x41)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e521m1_19limbs/feaddDisplay.v b/src/Specific/solinas32_2e521m1_19limbs/feaddDisplay.v
deleted file mode 100644
index e39988842..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e521m1_19limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e521m1_19limbs/fecarry.v b/src/Specific/solinas32_2e521m1_19limbs/fecarry.v
deleted file mode 100644
index abf846fad..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e521m1_19limbs.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_2e521m1_19limbs/fecarryDisplay.v b/src/Specific/solinas32_2e521m1_19limbs/fecarryDisplay.v
deleted file mode 100644
index de3f5b380..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e521m1_19limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e521m1_19limbs/femul.c b/src/Specific/solinas32_2e521m1_19limbs/femul.c
deleted file mode 100644
index f59f48180..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/femul.c
+++ /dev/null
@@ -1,141 +0,0 @@
-static void femul(uint32_t out[19], const uint32_t in1[19], const uint32_t in2[19]) {
- { const uint32_t x38 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x74 = in2[18];
- { const uint32_t x75 = in2[17];
- { const uint32_t x73 = in2[16];
- { const uint32_t x71 = in2[15];
- { const uint32_t x69 = in2[14];
- { const uint32_t x67 = in2[13];
- { const uint32_t x65 = in2[12];
- { const uint32_t x63 = in2[11];
- { const uint32_t x61 = in2[10];
- { const uint32_t x59 = in2[9];
- { const uint32_t x57 = in2[8];
- { const uint32_t x55 = in2[7];
- { const uint32_t x53 = in2[6];
- { const uint32_t x51 = in2[5];
- { const uint32_t x49 = in2[4];
- { const uint32_t x47 = in2[3];
- { const uint32_t x45 = in2[2];
- { const uint32_t x43 = in2[1];
- { const uint32_t x41 = in2[0];
- { uint64_t x76 = (((uint64_t)x5 * x74) + ((0x2 * ((uint64_t)x7 * x75)) + (((uint64_t)x9 * x73) + ((0x2 * ((uint64_t)x11 * x71)) + (((uint64_t)x13 * x69) + ((0x2 * ((uint64_t)x15 * x67)) + ((0x2 * ((uint64_t)x17 * x65)) + (((uint64_t)x19 * x63) + ((0x2 * ((uint64_t)x21 * x61)) + (((uint64_t)x23 * x59) + ((0x2 * ((uint64_t)x25 * x57)) + (((uint64_t)x27 * x55) + ((0x2 * ((uint64_t)x29 * x53)) + ((0x2 * ((uint64_t)x31 * x51)) + (((uint64_t)x33 * x49) + ((0x2 * ((uint64_t)x35 * x47)) + (((uint64_t)x37 * x45) + ((0x2 * ((uint64_t)x39 * x43)) + ((uint64_t)x38 * x41)))))))))))))))))));
- { uint64_t x77 = ((((uint64_t)x5 * x75) + (((uint64_t)x7 * x73) + (((uint64_t)x9 * x71) + (((uint64_t)x11 * x69) + (((uint64_t)x13 * x67) + ((0x2 * ((uint64_t)x15 * x65)) + (((uint64_t)x17 * x63) + (((uint64_t)x19 * x61) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + ((0x2 * ((uint64_t)x29 * x51)) + (((uint64_t)x31 * x49) + (((uint64_t)x33 * x47) + (((uint64_t)x35 * x45) + (((uint64_t)x37 * x43) + ((uint64_t)x39 * x41)))))))))))))))))) + ((uint64_t)x38 * x74));
- { uint64_t x78 = ((((uint64_t)x5 * x73) + ((0x2 * ((uint64_t)x7 * x71)) + (((uint64_t)x9 * x69) + ((0x2 * ((uint64_t)x11 * x67)) + ((0x2 * ((uint64_t)x13 * x65)) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + (((uint64_t)x19 * x59) + ((0x2 * ((uint64_t)x21 * x57)) + (((uint64_t)x23 * x55) + ((0x2 * ((uint64_t)x25 * x53)) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + (((uint64_t)x33 * x45) + ((0x2 * ((uint64_t)x35 * x43)) + ((uint64_t)x37 * x41))))))))))))))))) + ((0x2 * ((uint64_t)x39 * x74)) + (0x2 * ((uint64_t)x38 * x75))));
- { uint64_t x79 = ((((uint64_t)x5 * x71) + (((uint64_t)x7 * x69) + (((uint64_t)x9 * x67) + ((0x2 * ((uint64_t)x11 * x65)) + (((uint64_t)x13 * x63) + ((0x2 * ((uint64_t)x15 * x61)) + (((uint64_t)x17 * x59) + (((uint64_t)x19 * x57) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + ((0x2 * ((uint64_t)x25 * x51)) + (((uint64_t)x27 * x49) + ((0x2 * ((uint64_t)x29 * x47)) + (((uint64_t)x31 * x45) + (((uint64_t)x33 * x43) + ((uint64_t)x35 * x41)))))))))))))))) + (((uint64_t)x37 * x74) + ((0x2 * ((uint64_t)x39 * x75)) + ((uint64_t)x38 * x73))));
- { uint64_t x80 = ((((uint64_t)x5 * x69) + ((0x2 * ((uint64_t)x7 * x67)) + ((0x2 * ((uint64_t)x9 * x65)) + ((0x2 * ((uint64_t)x11 * x63)) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + (((uint64_t)x19 * x55) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + ((0x2 * ((uint64_t)x31 * x43)) + ((uint64_t)x33 * x41))))))))))))))) + ((0x2 * ((uint64_t)x35 * x74)) + ((0x2 * ((uint64_t)x37 * x75)) + ((0x2 * ((uint64_t)x39 * x73)) + (0x2 * ((uint64_t)x38 * x71))))));
- { uint64_t x81 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + (((uint64_t)x9 * x63) + ((0x2 * ((uint64_t)x11 * x61)) + (((uint64_t)x13 * x59) + ((0x2 * ((uint64_t)x15 * x57)) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + ((0x2 * ((uint64_t)x21 * x51)) + (((uint64_t)x23 * x49) + ((0x2 * ((uint64_t)x25 * x47)) + (((uint64_t)x27 * x45) + ((0x2 * ((uint64_t)x29 * x43)) + ((uint64_t)x31 * x41)))))))))))))) + (((uint64_t)x33 * x74) + ((0x2 * ((uint64_t)x35 * x75)) + (((uint64_t)x37 * x73) + ((0x2 * ((uint64_t)x39 * x71)) + ((uint64_t)x38 * x69))))));
- { uint64_t x82 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + ((uint64_t)x29 * x41))))))))))))) + (((uint64_t)x31 * x74) + (((uint64_t)x33 * x75) + (((uint64_t)x35 * x73) + (((uint64_t)x37 * x71) + (((uint64_t)x39 * x69) + ((uint64_t)x38 * x67)))))));
- { uint64_t x83 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + (((uint64_t)x9 * x59) + ((0x2 * ((uint64_t)x11 * x57)) + (((uint64_t)x13 * x55) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + (((uint64_t)x19 * x49) + ((0x2 * ((uint64_t)x21 * x47)) + (((uint64_t)x23 * x45) + ((0x2 * ((uint64_t)x25 * x43)) + ((uint64_t)x27 * x41)))))))))))) + ((0x2 * ((uint64_t)x29 * x74)) + ((0x2 * ((uint64_t)x31 * x75)) + (((uint64_t)x33 * x73) + ((0x2 * ((uint64_t)x35 * x71)) + (((uint64_t)x37 * x69) + ((0x2 * ((uint64_t)x39 * x67)) + (0x2 * ((uint64_t)x38 * x65)))))))));
- { uint64_t x84 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + ((0x2 * ((uint64_t)x15 * x51)) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + ((uint64_t)x25 * x41))))))))))) + (((uint64_t)x27 * x74) + ((0x2 * ((uint64_t)x29 * x75)) + (((uint64_t)x31 * x73) + (((uint64_t)x33 * x71) + (((uint64_t)x35 * x69) + (((uint64_t)x37 * x67) + ((0x2 * ((uint64_t)x39 * x65)) + ((uint64_t)x38 * x63)))))))));
- { uint64_t x85 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + (((uint64_t)x9 * x55) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + (((uint64_t)x19 * x45) + ((0x2 * ((uint64_t)x21 * x43)) + ((uint64_t)x23 * x41)))))))))) + ((0x2 * ((uint64_t)x25 * x74)) + ((0x2 * ((uint64_t)x27 * x75)) + ((0x2 * ((uint64_t)x29 * x73)) + ((0x2 * ((uint64_t)x31 * x71)) + (((uint64_t)x33 * x69) + ((0x2 * ((uint64_t)x35 * x67)) + ((0x2 * ((uint64_t)x37 * x65)) + ((0x2 * ((uint64_t)x39 * x63)) + (0x2 * ((uint64_t)x38 * x61)))))))))));
- { uint64_t x86 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + ((0x2 * ((uint64_t)x11 * x51)) + (((uint64_t)x13 * x49) + ((0x2 * ((uint64_t)x15 * x47)) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + ((uint64_t)x21 * x41))))))))) + (((uint64_t)x23 * x74) + ((0x2 * ((uint64_t)x25 * x75)) + (((uint64_t)x27 * x73) + ((0x2 * ((uint64_t)x29 * x71)) + (((uint64_t)x31 * x69) + (((uint64_t)x33 * x67) + ((0x2 * ((uint64_t)x35 * x65)) + (((uint64_t)x37 * x63) + ((0x2 * ((uint64_t)x39 * x61)) + ((uint64_t)x38 * x59)))))))))));
- { uint64_t x87 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((uint64_t)x19 * x41)))))))) + ((0x2 * ((uint64_t)x21 * x74)) + ((0x2 * ((uint64_t)x23 * x75)) + ((0x2 * ((uint64_t)x25 * x73)) + ((0x2 * ((uint64_t)x27 * x71)) + ((0x2 * ((uint64_t)x29 * x69)) + ((0x2 * ((uint64_t)x31 * x67)) + ((0x2 * ((uint64_t)x33 * x65)) + ((0x2 * ((uint64_t)x35 * x63)) + ((0x2 * ((uint64_t)x37 * x61)) + ((0x2 * ((uint64_t)x39 * x59)) + (0x2 * ((uint64_t)x38 * x57)))))))))))));
- { uint64_t x88 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + (((uint64_t)x9 * x49) + ((0x2 * ((uint64_t)x11 * x47)) + (((uint64_t)x13 * x45) + ((0x2 * ((uint64_t)x15 * x43)) + ((uint64_t)x17 * x41))))))) + (((uint64_t)x19 * x74) + ((0x2 * ((uint64_t)x21 * x75)) + (((uint64_t)x23 * x73) + ((0x2 * ((uint64_t)x25 * x71)) + (((uint64_t)x27 * x69) + ((0x2 * ((uint64_t)x29 * x67)) + ((0x2 * ((uint64_t)x31 * x65)) + (((uint64_t)x33 * x63) + ((0x2 * ((uint64_t)x35 * x61)) + (((uint64_t)x37 * x59) + ((0x2 * ((uint64_t)x39 * x57)) + ((uint64_t)x38 * x55)))))))))))));
- { uint64_t x89 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + ((uint64_t)x15 * x41)))))) + (((uint64_t)x17 * x74) + (((uint64_t)x19 * x75) + (((uint64_t)x21 * x73) + (((uint64_t)x23 * x71) + (((uint64_t)x25 * x69) + (((uint64_t)x27 * x67) + ((0x2 * ((uint64_t)x29 * x65)) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + (((uint64_t)x35 * x59) + (((uint64_t)x37 * x57) + (((uint64_t)x39 * x55) + ((uint64_t)x38 * x53))))))))))))));
- { uint64_t x90 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + (((uint64_t)x9 * x45) + ((0x2 * ((uint64_t)x11 * x43)) + ((uint64_t)x13 * x41))))) + ((0x2 * ((uint64_t)x15 * x74)) + ((0x2 * ((uint64_t)x17 * x75)) + (((uint64_t)x19 * x73) + ((0x2 * ((uint64_t)x21 * x71)) + (((uint64_t)x23 * x69) + ((0x2 * ((uint64_t)x25 * x67)) + ((0x2 * ((uint64_t)x27 * x65)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + (((uint64_t)x33 * x59) + ((0x2 * ((uint64_t)x35 * x57)) + (((uint64_t)x37 * x55) + ((0x2 * ((uint64_t)x39 * x53)) + (0x2 * ((uint64_t)x38 * x51))))))))))))))));
- { uint64_t x91 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + ((uint64_t)x11 * x41)))) + (((uint64_t)x13 * x74) + ((0x2 * ((uint64_t)x15 * x75)) + (((uint64_t)x17 * x73) + (((uint64_t)x19 * x71) + (((uint64_t)x21 * x69) + (((uint64_t)x23 * x67) + ((0x2 * ((uint64_t)x25 * x65)) + (((uint64_t)x27 * x63) + ((0x2 * ((uint64_t)x29 * x61)) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + (((uint64_t)x37 * x53) + ((0x2 * ((uint64_t)x39 * x51)) + ((uint64_t)x38 * x49))))))))))))))));
- { uint64_t x92 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((uint64_t)x9 * x41))) + ((0x2 * ((uint64_t)x11 * x74)) + ((0x2 * ((uint64_t)x13 * x75)) + ((0x2 * ((uint64_t)x15 * x73)) + ((0x2 * ((uint64_t)x17 * x71)) + (((uint64_t)x19 * x69) + ((0x2 * ((uint64_t)x21 * x67)) + ((0x2 * ((uint64_t)x23 * x65)) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + (((uint64_t)x33 * x55) + ((0x2 * ((uint64_t)x35 * x53)) + ((0x2 * ((uint64_t)x37 * x51)) + ((0x2 * ((uint64_t)x39 * x49)) + (0x2 * ((uint64_t)x38 * x47))))))))))))))))));
- { uint64_t x93 = ((((uint64_t)x5 * x43) + ((uint64_t)x7 * x41)) + (((uint64_t)x9 * x74) + ((0x2 * ((uint64_t)x11 * x75)) + (((uint64_t)x13 * x73) + ((0x2 * ((uint64_t)x15 * x71)) + (((uint64_t)x17 * x69) + (((uint64_t)x19 * x67) + ((0x2 * ((uint64_t)x21 * x65)) + (((uint64_t)x23 * x63) + ((0x2 * ((uint64_t)x25 * x61)) + (((uint64_t)x27 * x59) + ((0x2 * ((uint64_t)x29 * x57)) + (((uint64_t)x31 * x55) + (((uint64_t)x33 * x53) + ((0x2 * ((uint64_t)x35 * x51)) + (((uint64_t)x37 * x49) + ((0x2 * ((uint64_t)x39 * x47)) + ((uint64_t)x38 * x45))))))))))))))))));
- { uint64_t x94 = (((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x74)) + ((0x2 * ((uint64_t)x9 * x75)) + ((0x2 * ((uint64_t)x11 * x73)) + ((0x2 * ((uint64_t)x13 * x71)) + ((0x2 * ((uint64_t)x15 * x69)) + ((0x2 * ((uint64_t)x17 * x67)) + ((0x2 * ((uint64_t)x19 * x65)) + ((0x2 * ((uint64_t)x21 * x63)) + ((0x2 * ((uint64_t)x23 * x61)) + ((0x2 * ((uint64_t)x25 * x59)) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + ((0x2 * ((uint64_t)x31 * x53)) + ((0x2 * ((uint64_t)x33 * x51)) + ((0x2 * ((uint64_t)x35 * x49)) + ((0x2 * ((uint64_t)x37 * x47)) + ((0x2 * ((uint64_t)x39 * x45)) + (0x2 * ((uint64_t)x38 * x43))))))))))))))))))));
- { uint64_t x95 = (x94 >> 0x1c);
- { uint32_t x96 = ((uint32_t)x94 & 0xfffffff);
- { uint64_t x97 = (x95 + x93);
- { uint64_t x98 = (x97 >> 0x1b);
- { uint32_t x99 = ((uint32_t)x97 & 0x7ffffff);
- { uint64_t x100 = (x98 + x92);
- { uint64_t x101 = (x100 >> 0x1c);
- { uint32_t x102 = ((uint32_t)x100 & 0xfffffff);
- { uint64_t x103 = (x101 + x91);
- { uint64_t x104 = (x103 >> 0x1b);
- { uint32_t x105 = ((uint32_t)x103 & 0x7ffffff);
- { uint64_t x106 = (x104 + x90);
- { uint64_t x107 = (x106 >> 0x1c);
- { uint32_t x108 = ((uint32_t)x106 & 0xfffffff);
- { uint64_t x109 = (x107 + x89);
- { uint64_t x110 = (x109 >> 0x1b);
- { uint32_t x111 = ((uint32_t)x109 & 0x7ffffff);
- { uint64_t x112 = (x110 + x88);
- { uint64_t x113 = (x112 >> 0x1b);
- { uint32_t x114 = ((uint32_t)x112 & 0x7ffffff);
- { uint64_t x115 = (x113 + x87);
- { uint64_t x116 = (x115 >> 0x1c);
- { uint32_t x117 = ((uint32_t)x115 & 0xfffffff);
- { uint64_t x118 = (x116 + x86);
- { uint64_t x119 = (x118 >> 0x1b);
- { uint32_t x120 = ((uint32_t)x118 & 0x7ffffff);
- { uint64_t x121 = (x119 + x85);
- { uint64_t x122 = (x121 >> 0x1c);
- { uint32_t x123 = ((uint32_t)x121 & 0xfffffff);
- { uint64_t x124 = (x122 + x84);
- { uint64_t x125 = (x124 >> 0x1b);
- { uint32_t x126 = ((uint32_t)x124 & 0x7ffffff);
- { uint64_t x127 = (x125 + x83);
- { uint64_t x128 = (x127 >> 0x1c);
- { uint32_t x129 = ((uint32_t)x127 & 0xfffffff);
- { uint64_t x130 = (x128 + x82);
- { uint64_t x131 = (x130 >> 0x1b);
- { uint32_t x132 = ((uint32_t)x130 & 0x7ffffff);
- { uint64_t x133 = (x131 + x81);
- { uint64_t x134 = (x133 >> 0x1b);
- { uint32_t x135 = ((uint32_t)x133 & 0x7ffffff);
- { uint64_t x136 = (x134 + x80);
- { uint64_t x137 = (x136 >> 0x1c);
- { uint32_t x138 = ((uint32_t)x136 & 0xfffffff);
- { uint64_t x139 = (x137 + x79);
- { uint64_t x140 = (x139 >> 0x1b);
- { uint32_t x141 = ((uint32_t)x139 & 0x7ffffff);
- { uint64_t x142 = (x140 + x78);
- { uint64_t x143 = (x142 >> 0x1c);
- { uint32_t x144 = ((uint32_t)x142 & 0xfffffff);
- { uint64_t x145 = (x143 + x77);
- { uint64_t x146 = (x145 >> 0x1b);
- { uint32_t x147 = ((uint32_t)x145 & 0x7ffffff);
- { uint64_t x148 = (x146 + x76);
- { uint64_t x149 = (x148 >> 0x1b);
- { uint32_t x150 = ((uint32_t)x148 & 0x7ffffff);
- { uint64_t x151 = (x96 + x149);
- { uint32_t x152 = (uint32_t) (x151 >> 0x1c);
- { uint32_t x153 = ((uint32_t)x151 & 0xfffffff);
- { uint32_t x154 = (x152 + x99);
- { uint32_t x155 = (x154 >> 0x1b);
- { uint32_t x156 = (x154 & 0x7ffffff);
- out[0] = x153;
- out[1] = x156;
- out[2] = (x155 + x102);
- out[3] = x105;
- out[4] = x108;
- out[5] = x111;
- out[6] = x114;
- out[7] = x117;
- out[8] = x120;
- out[9] = x123;
- out[10] = x126;
- out[11] = x129;
- out[12] = x132;
- out[13] = x135;
- out[14] = x138;
- out[15] = x141;
- out[16] = x144;
- out[17] = x147;
- out[18] = x150;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e521m1_19limbs/femul.v b/src/Specific/solinas32_2e521m1_19limbs/femul.v
deleted file mode 100644
index 031588cb6..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e521m1_19limbs.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_2e521m1_19limbs/femulDisplay.log b/src/Specific/solinas32_2e521m1_19limbs/femulDisplay.log
deleted file mode 100644
index af9c19e0e..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/femulDisplay.log
+++ /dev/null
@@ -1,88 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x38, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x74, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41))%core,
- uint64_t x76 = (((uint64_t)x5 * x74) + ((0x2 * ((uint64_t)x7 * x75)) + (((uint64_t)x9 * x73) + ((0x2 * ((uint64_t)x11 * x71)) + (((uint64_t)x13 * x69) + ((0x2 * ((uint64_t)x15 * x67)) + ((0x2 * ((uint64_t)x17 * x65)) + (((uint64_t)x19 * x63) + ((0x2 * ((uint64_t)x21 * x61)) + (((uint64_t)x23 * x59) + ((0x2 * ((uint64_t)x25 * x57)) + (((uint64_t)x27 * x55) + ((0x2 * ((uint64_t)x29 * x53)) + ((0x2 * ((uint64_t)x31 * x51)) + (((uint64_t)x33 * x49) + ((0x2 * ((uint64_t)x35 * x47)) + (((uint64_t)x37 * x45) + ((0x2 * ((uint64_t)x39 * x43)) + ((uint64_t)x38 * x41)))))))))))))))))));
- uint64_t x77 = ((((uint64_t)x5 * x75) + (((uint64_t)x7 * x73) + (((uint64_t)x9 * x71) + (((uint64_t)x11 * x69) + (((uint64_t)x13 * x67) + ((0x2 * ((uint64_t)x15 * x65)) + (((uint64_t)x17 * x63) + (((uint64_t)x19 * x61) + (((uint64_t)x21 * x59) + (((uint64_t)x23 * x57) + (((uint64_t)x25 * x55) + (((uint64_t)x27 * x53) + ((0x2 * ((uint64_t)x29 * x51)) + (((uint64_t)x31 * x49) + (((uint64_t)x33 * x47) + (((uint64_t)x35 * x45) + (((uint64_t)x37 * x43) + ((uint64_t)x39 * x41)))))))))))))))))) + ((uint64_t)x38 * x74));
- uint64_t x78 = ((((uint64_t)x5 * x73) + ((0x2 * ((uint64_t)x7 * x71)) + (((uint64_t)x9 * x69) + ((0x2 * ((uint64_t)x11 * x67)) + ((0x2 * ((uint64_t)x13 * x65)) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + (((uint64_t)x19 * x59) + ((0x2 * ((uint64_t)x21 * x57)) + (((uint64_t)x23 * x55) + ((0x2 * ((uint64_t)x25 * x53)) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + (((uint64_t)x33 * x45) + ((0x2 * ((uint64_t)x35 * x43)) + ((uint64_t)x37 * x41))))))))))))))))) + ((0x2 * ((uint64_t)x39 * x74)) + (0x2 * ((uint64_t)x38 * x75))));
- uint64_t x79 = ((((uint64_t)x5 * x71) + (((uint64_t)x7 * x69) + (((uint64_t)x9 * x67) + ((0x2 * ((uint64_t)x11 * x65)) + (((uint64_t)x13 * x63) + ((0x2 * ((uint64_t)x15 * x61)) + (((uint64_t)x17 * x59) + (((uint64_t)x19 * x57) + (((uint64_t)x21 * x55) + (((uint64_t)x23 * x53) + ((0x2 * ((uint64_t)x25 * x51)) + (((uint64_t)x27 * x49) + ((0x2 * ((uint64_t)x29 * x47)) + (((uint64_t)x31 * x45) + (((uint64_t)x33 * x43) + ((uint64_t)x35 * x41)))))))))))))))) + (((uint64_t)x37 * x74) + ((0x2 * ((uint64_t)x39 * x75)) + ((uint64_t)x38 * x73))));
- uint64_t x80 = ((((uint64_t)x5 * x69) + ((0x2 * ((uint64_t)x7 * x67)) + ((0x2 * ((uint64_t)x9 * x65)) + ((0x2 * ((uint64_t)x11 * x63)) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + (((uint64_t)x19 * x55) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + ((0x2 * ((uint64_t)x31 * x43)) + ((uint64_t)x33 * x41))))))))))))))) + ((0x2 * ((uint64_t)x35 * x74)) + ((0x2 * ((uint64_t)x37 * x75)) + ((0x2 * ((uint64_t)x39 * x73)) + (0x2 * ((uint64_t)x38 * x71))))));
- uint64_t x81 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + (((uint64_t)x9 * x63) + ((0x2 * ((uint64_t)x11 * x61)) + (((uint64_t)x13 * x59) + ((0x2 * ((uint64_t)x15 * x57)) + (((uint64_t)x17 * x55) + (((uint64_t)x19 * x53) + ((0x2 * ((uint64_t)x21 * x51)) + (((uint64_t)x23 * x49) + ((0x2 * ((uint64_t)x25 * x47)) + (((uint64_t)x27 * x45) + ((0x2 * ((uint64_t)x29 * x43)) + ((uint64_t)x31 * x41)))))))))))))) + (((uint64_t)x33 * x74) + ((0x2 * ((uint64_t)x35 * x75)) + (((uint64_t)x37 * x73) + ((0x2 * ((uint64_t)x39 * x71)) + ((uint64_t)x38 * x69))))));
- uint64_t x82 = ((((uint64_t)x5 * x65) + (((uint64_t)x7 * x63) + (((uint64_t)x9 * x61) + (((uint64_t)x11 * x59) + (((uint64_t)x13 * x57) + (((uint64_t)x15 * x55) + (((uint64_t)x17 * x53) + (((uint64_t)x19 * x51) + (((uint64_t)x21 * x49) + (((uint64_t)x23 * x47) + (((uint64_t)x25 * x45) + (((uint64_t)x27 * x43) + ((uint64_t)x29 * x41))))))))))))) + (((uint64_t)x31 * x74) + (((uint64_t)x33 * x75) + (((uint64_t)x35 * x73) + (((uint64_t)x37 * x71) + (((uint64_t)x39 * x69) + ((uint64_t)x38 * x67)))))));
- uint64_t x83 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + (((uint64_t)x9 * x59) + ((0x2 * ((uint64_t)x11 * x57)) + (((uint64_t)x13 * x55) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + (((uint64_t)x19 * x49) + ((0x2 * ((uint64_t)x21 * x47)) + (((uint64_t)x23 * x45) + ((0x2 * ((uint64_t)x25 * x43)) + ((uint64_t)x27 * x41)))))))))))) + ((0x2 * ((uint64_t)x29 * x74)) + ((0x2 * ((uint64_t)x31 * x75)) + (((uint64_t)x33 * x73) + ((0x2 * ((uint64_t)x35 * x71)) + (((uint64_t)x37 * x69) + ((0x2 * ((uint64_t)x39 * x67)) + (0x2 * ((uint64_t)x38 * x65)))))))));
- uint64_t x84 = ((((uint64_t)x5 * x61) + (((uint64_t)x7 * x59) + (((uint64_t)x9 * x57) + (((uint64_t)x11 * x55) + (((uint64_t)x13 * x53) + ((0x2 * ((uint64_t)x15 * x51)) + (((uint64_t)x17 * x49) + (((uint64_t)x19 * x47) + (((uint64_t)x21 * x45) + (((uint64_t)x23 * x43) + ((uint64_t)x25 * x41))))))))))) + (((uint64_t)x27 * x74) + ((0x2 * ((uint64_t)x29 * x75)) + (((uint64_t)x31 * x73) + (((uint64_t)x33 * x71) + (((uint64_t)x35 * x69) + (((uint64_t)x37 * x67) + ((0x2 * ((uint64_t)x39 * x65)) + ((uint64_t)x38 * x63)))))))));
- uint64_t x85 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + (((uint64_t)x9 * x55) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + (((uint64_t)x19 * x45) + ((0x2 * ((uint64_t)x21 * x43)) + ((uint64_t)x23 * x41)))))))))) + ((0x2 * ((uint64_t)x25 * x74)) + ((0x2 * ((uint64_t)x27 * x75)) + ((0x2 * ((uint64_t)x29 * x73)) + ((0x2 * ((uint64_t)x31 * x71)) + (((uint64_t)x33 * x69) + ((0x2 * ((uint64_t)x35 * x67)) + ((0x2 * ((uint64_t)x37 * x65)) + ((0x2 * ((uint64_t)x39 * x63)) + (0x2 * ((uint64_t)x38 * x61)))))))))));
- uint64_t x86 = ((((uint64_t)x5 * x57) + (((uint64_t)x7 * x55) + (((uint64_t)x9 * x53) + ((0x2 * ((uint64_t)x11 * x51)) + (((uint64_t)x13 * x49) + ((0x2 * ((uint64_t)x15 * x47)) + (((uint64_t)x17 * x45) + (((uint64_t)x19 * x43) + ((uint64_t)x21 * x41))))))))) + (((uint64_t)x23 * x74) + ((0x2 * ((uint64_t)x25 * x75)) + (((uint64_t)x27 * x73) + ((0x2 * ((uint64_t)x29 * x71)) + (((uint64_t)x31 * x69) + (((uint64_t)x33 * x67) + ((0x2 * ((uint64_t)x35 * x65)) + (((uint64_t)x37 * x63) + ((0x2 * ((uint64_t)x39 * x61)) + ((uint64_t)x38 * x59)))))))))));
- uint64_t x87 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((0x2 * ((uint64_t)x17 * x43)) + ((uint64_t)x19 * x41)))))))) + ((0x2 * ((uint64_t)x21 * x74)) + ((0x2 * ((uint64_t)x23 * x75)) + ((0x2 * ((uint64_t)x25 * x73)) + ((0x2 * ((uint64_t)x27 * x71)) + ((0x2 * ((uint64_t)x29 * x69)) + ((0x2 * ((uint64_t)x31 * x67)) + ((0x2 * ((uint64_t)x33 * x65)) + ((0x2 * ((uint64_t)x35 * x63)) + ((0x2 * ((uint64_t)x37 * x61)) + ((0x2 * ((uint64_t)x39 * x59)) + (0x2 * ((uint64_t)x38 * x57)))))))))))));
- uint64_t x88 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + (((uint64_t)x9 * x49) + ((0x2 * ((uint64_t)x11 * x47)) + (((uint64_t)x13 * x45) + ((0x2 * ((uint64_t)x15 * x43)) + ((uint64_t)x17 * x41))))))) + (((uint64_t)x19 * x74) + ((0x2 * ((uint64_t)x21 * x75)) + (((uint64_t)x23 * x73) + ((0x2 * ((uint64_t)x25 * x71)) + (((uint64_t)x27 * x69) + ((0x2 * ((uint64_t)x29 * x67)) + ((0x2 * ((uint64_t)x31 * x65)) + (((uint64_t)x33 * x63) + ((0x2 * ((uint64_t)x35 * x61)) + (((uint64_t)x37 * x59) + ((0x2 * ((uint64_t)x39 * x57)) + ((uint64_t)x38 * x55)))))))))))));
- uint64_t x89 = ((((uint64_t)x5 * x51) + (((uint64_t)x7 * x49) + (((uint64_t)x9 * x47) + (((uint64_t)x11 * x45) + (((uint64_t)x13 * x43) + ((uint64_t)x15 * x41)))))) + (((uint64_t)x17 * x74) + (((uint64_t)x19 * x75) + (((uint64_t)x21 * x73) + (((uint64_t)x23 * x71) + (((uint64_t)x25 * x69) + (((uint64_t)x27 * x67) + ((0x2 * ((uint64_t)x29 * x65)) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + (((uint64_t)x35 * x59) + (((uint64_t)x37 * x57) + (((uint64_t)x39 * x55) + ((uint64_t)x38 * x53))))))))))))));
- uint64_t x90 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + (((uint64_t)x9 * x45) + ((0x2 * ((uint64_t)x11 * x43)) + ((uint64_t)x13 * x41))))) + ((0x2 * ((uint64_t)x15 * x74)) + ((0x2 * ((uint64_t)x17 * x75)) + (((uint64_t)x19 * x73) + ((0x2 * ((uint64_t)x21 * x71)) + (((uint64_t)x23 * x69) + ((0x2 * ((uint64_t)x25 * x67)) + ((0x2 * ((uint64_t)x27 * x65)) + ((0x2 * ((uint64_t)x29 * x63)) + ((0x2 * ((uint64_t)x31 * x61)) + (((uint64_t)x33 * x59) + ((0x2 * ((uint64_t)x35 * x57)) + (((uint64_t)x37 * x55) + ((0x2 * ((uint64_t)x39 * x53)) + (0x2 * ((uint64_t)x38 * x51))))))))))))))));
- uint64_t x91 = ((((uint64_t)x5 * x47) + (((uint64_t)x7 * x45) + (((uint64_t)x9 * x43) + ((uint64_t)x11 * x41)))) + (((uint64_t)x13 * x74) + ((0x2 * ((uint64_t)x15 * x75)) + (((uint64_t)x17 * x73) + (((uint64_t)x19 * x71) + (((uint64_t)x21 * x69) + (((uint64_t)x23 * x67) + ((0x2 * ((uint64_t)x25 * x65)) + (((uint64_t)x27 * x63) + ((0x2 * ((uint64_t)x29 * x61)) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + (((uint64_t)x37 * x53) + ((0x2 * ((uint64_t)x39 * x51)) + ((uint64_t)x38 * x49))))))))))))))));
- uint64_t x92 = ((((uint64_t)x5 * x45) + ((0x2 * ((uint64_t)x7 * x43)) + ((uint64_t)x9 * x41))) + ((0x2 * ((uint64_t)x11 * x74)) + ((0x2 * ((uint64_t)x13 * x75)) + ((0x2 * ((uint64_t)x15 * x73)) + ((0x2 * ((uint64_t)x17 * x71)) + (((uint64_t)x19 * x69) + ((0x2 * ((uint64_t)x21 * x67)) + ((0x2 * ((uint64_t)x23 * x65)) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + (((uint64_t)x33 * x55) + ((0x2 * ((uint64_t)x35 * x53)) + ((0x2 * ((uint64_t)x37 * x51)) + ((0x2 * ((uint64_t)x39 * x49)) + (0x2 * ((uint64_t)x38 * x47))))))))))))))))));
- uint64_t x93 = ((((uint64_t)x5 * x43) + ((uint64_t)x7 * x41)) + (((uint64_t)x9 * x74) + ((0x2 * ((uint64_t)x11 * x75)) + (((uint64_t)x13 * x73) + ((0x2 * ((uint64_t)x15 * x71)) + (((uint64_t)x17 * x69) + (((uint64_t)x19 * x67) + ((0x2 * ((uint64_t)x21 * x65)) + (((uint64_t)x23 * x63) + ((0x2 * ((uint64_t)x25 * x61)) + (((uint64_t)x27 * x59) + ((0x2 * ((uint64_t)x29 * x57)) + (((uint64_t)x31 * x55) + (((uint64_t)x33 * x53) + ((0x2 * ((uint64_t)x35 * x51)) + (((uint64_t)x37 * x49) + ((0x2 * ((uint64_t)x39 * x47)) + ((uint64_t)x38 * x45))))))))))))))))));
- uint64_t x94 = (((uint64_t)x5 * x41) + ((0x2 * ((uint64_t)x7 * x74)) + ((0x2 * ((uint64_t)x9 * x75)) + ((0x2 * ((uint64_t)x11 * x73)) + ((0x2 * ((uint64_t)x13 * x71)) + ((0x2 * ((uint64_t)x15 * x69)) + ((0x2 * ((uint64_t)x17 * x67)) + ((0x2 * ((uint64_t)x19 * x65)) + ((0x2 * ((uint64_t)x21 * x63)) + ((0x2 * ((uint64_t)x23 * x61)) + ((0x2 * ((uint64_t)x25 * x59)) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + ((0x2 * ((uint64_t)x31 * x53)) + ((0x2 * ((uint64_t)x33 * x51)) + ((0x2 * ((uint64_t)x35 * x49)) + ((0x2 * ((uint64_t)x37 * x47)) + ((0x2 * ((uint64_t)x39 * x45)) + (0x2 * ((uint64_t)x38 * x43))))))))))))))))))));
- uint64_t x95 = (x94 >> 0x1c);
- uint32_t x96 = ((uint32_t)x94 & 0xfffffff);
- uint64_t x97 = (x95 + x93);
- uint64_t x98 = (x97 >> 0x1b);
- uint32_t x99 = ((uint32_t)x97 & 0x7ffffff);
- uint64_t x100 = (x98 + x92);
- uint64_t x101 = (x100 >> 0x1c);
- uint32_t x102 = ((uint32_t)x100 & 0xfffffff);
- uint64_t x103 = (x101 + x91);
- uint64_t x104 = (x103 >> 0x1b);
- uint32_t x105 = ((uint32_t)x103 & 0x7ffffff);
- uint64_t x106 = (x104 + x90);
- uint64_t x107 = (x106 >> 0x1c);
- uint32_t x108 = ((uint32_t)x106 & 0xfffffff);
- uint64_t x109 = (x107 + x89);
- uint64_t x110 = (x109 >> 0x1b);
- uint32_t x111 = ((uint32_t)x109 & 0x7ffffff);
- uint64_t x112 = (x110 + x88);
- uint64_t x113 = (x112 >> 0x1b);
- uint32_t x114 = ((uint32_t)x112 & 0x7ffffff);
- uint64_t x115 = (x113 + x87);
- uint64_t x116 = (x115 >> 0x1c);
- uint32_t x117 = ((uint32_t)x115 & 0xfffffff);
- uint64_t x118 = (x116 + x86);
- uint64_t x119 = (x118 >> 0x1b);
- uint32_t x120 = ((uint32_t)x118 & 0x7ffffff);
- uint64_t x121 = (x119 + x85);
- uint64_t x122 = (x121 >> 0x1c);
- uint32_t x123 = ((uint32_t)x121 & 0xfffffff);
- uint64_t x124 = (x122 + x84);
- uint64_t x125 = (x124 >> 0x1b);
- uint32_t x126 = ((uint32_t)x124 & 0x7ffffff);
- uint64_t x127 = (x125 + x83);
- uint64_t x128 = (x127 >> 0x1c);
- uint32_t x129 = ((uint32_t)x127 & 0xfffffff);
- uint64_t x130 = (x128 + x82);
- uint64_t x131 = (x130 >> 0x1b);
- uint32_t x132 = ((uint32_t)x130 & 0x7ffffff);
- uint64_t x133 = (x131 + x81);
- uint64_t x134 = (x133 >> 0x1b);
- uint32_t x135 = ((uint32_t)x133 & 0x7ffffff);
- uint64_t x136 = (x134 + x80);
- uint64_t x137 = (x136 >> 0x1c);
- uint32_t x138 = ((uint32_t)x136 & 0xfffffff);
- uint64_t x139 = (x137 + x79);
- uint64_t x140 = (x139 >> 0x1b);
- uint32_t x141 = ((uint32_t)x139 & 0x7ffffff);
- uint64_t x142 = (x140 + x78);
- uint64_t x143 = (x142 >> 0x1c);
- uint32_t x144 = ((uint32_t)x142 & 0xfffffff);
- uint64_t x145 = (x143 + x77);
- uint64_t x146 = (x145 >> 0x1b);
- uint32_t x147 = ((uint32_t)x145 & 0x7ffffff);
- uint64_t x148 = (x146 + x76);
- uint64_t x149 = (x148 >> 0x1b);
- uint32_t x150 = ((uint32_t)x148 & 0x7ffffff);
- uint64_t x151 = (x96 + x149);
- uint32_t x152 = (uint32_t) (x151 >> 0x1c);
- uint32_t x153 = ((uint32_t)x151 & 0xfffffff);
- uint32_t x154 = (x152 + x99);
- uint32_t x155 = (x154 >> 0x1b);
- uint32_t x156 = (x154 & 0x7ffffff);
- return (Return x150, Return x147, Return x144, Return x141, Return x138, Return x135, Return x132, Return x129, Return x126, Return x123, Return x120, Return x117, Return x114, Return x111, Return x108, Return x105, (x155 + x102), Return x156, Return x153))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e521m1_19limbs/femulDisplay.v b/src/Specific/solinas32_2e521m1_19limbs/femulDisplay.v
deleted file mode 100644
index 766d89955..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e521m1_19limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e521m1_19limbs/fesquare.c b/src/Specific/solinas32_2e521m1_19limbs/fesquare.c
deleted file mode 100644
index abc81f325..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/fesquare.c
+++ /dev/null
@@ -1,122 +0,0 @@
-static void fesquare(uint32_t out[19], const uint32_t in1[19]) {
- { const uint32_t x35 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x37 = (((uint64_t)x2 * x35) + ((0x2 * ((uint64_t)x4 * x36)) + (((uint64_t)x6 * x34) + ((0x2 * ((uint64_t)x8 * x32)) + (((uint64_t)x10 * x30) + ((0x2 * ((uint64_t)x12 * x28)) + ((0x2 * ((uint64_t)x14 * x26)) + (((uint64_t)x16 * x24) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + (((uint64_t)x24 * x16) + ((0x2 * ((uint64_t)x26 * x14)) + ((0x2 * ((uint64_t)x28 * x12)) + (((uint64_t)x30 * x10) + ((0x2 * ((uint64_t)x32 * x8)) + (((uint64_t)x34 * x6) + ((0x2 * ((uint64_t)x36 * x4)) + ((uint64_t)x35 * x2)))))))))))))))))));
- { uint64_t x38 = ((((uint64_t)x2 * x36) + (((uint64_t)x4 * x34) + (((uint64_t)x6 * x32) + (((uint64_t)x8 * x30) + (((uint64_t)x10 * x28) + ((0x2 * ((uint64_t)x12 * x26)) + (((uint64_t)x14 * x24) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + ((0x2 * ((uint64_t)x26 * x12)) + (((uint64_t)x28 * x10) + (((uint64_t)x30 * x8) + (((uint64_t)x32 * x6) + (((uint64_t)x34 * x4) + ((uint64_t)x36 * x2)))))))))))))))))) + ((uint64_t)x35 * x35));
- { uint64_t x39 = ((((uint64_t)x2 * x34) + ((0x2 * ((uint64_t)x4 * x32)) + (((uint64_t)x6 * x30) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + (((uint64_t)x16 * x20) + ((0x2 * ((uint64_t)x18 * x18)) + (((uint64_t)x20 * x16) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + (((uint64_t)x30 * x6) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x34 * x2))))))))))))))))) + ((0x2 * ((uint64_t)x36 * x35)) + (0x2 * ((uint64_t)x35 * x36))));
- { uint64_t x40 = ((((uint64_t)x2 * x32) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + ((0x2 * ((uint64_t)x8 * x26)) + (((uint64_t)x10 * x24) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + (((uint64_t)x24 * x10) + ((0x2 * ((uint64_t)x26 * x8)) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x32 * x2)))))))))))))))) + (((uint64_t)x34 * x35) + ((0x2 * ((uint64_t)x36 * x36)) + ((uint64_t)x35 * x34))));
- { uint64_t x41 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + ((0x2 * ((uint64_t)x6 * x26)) + ((0x2 * ((uint64_t)x8 * x24)) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + ((0x2 * ((uint64_t)x24 * x8)) + ((0x2 * ((uint64_t)x26 * x6)) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + ((0x2 * ((uint64_t)x32 * x35)) + ((0x2 * ((uint64_t)x34 * x36)) + ((0x2 * ((uint64_t)x36 * x34)) + (0x2 * ((uint64_t)x35 * x32))))));
- { uint64_t x42 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + (((uint64_t)x6 * x24) + ((0x2 * ((uint64_t)x8 * x22)) + (((uint64_t)x10 * x20) + ((0x2 * ((uint64_t)x12 * x18)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((0x2 * ((uint64_t)x18 * x12)) + (((uint64_t)x20 * x10) + ((0x2 * ((uint64_t)x22 * x8)) + (((uint64_t)x24 * x6) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (((uint64_t)x30 * x35) + ((0x2 * ((uint64_t)x32 * x36)) + (((uint64_t)x34 * x34) + ((0x2 * ((uint64_t)x36 * x32)) + ((uint64_t)x35 * x30))))));
- { uint64_t x43 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (((uint64_t)x28 * x35) + (((uint64_t)x30 * x36) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + (((uint64_t)x36 * x30) + ((uint64_t)x35 * x28)))))));
- { uint64_t x44 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + (((uint64_t)x6 * x20) + ((0x2 * ((uint64_t)x8 * x18)) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + ((0x2 * ((uint64_t)x18 * x8)) + (((uint64_t)x20 * x6) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + ((0x2 * ((uint64_t)x26 * x35)) + ((0x2 * ((uint64_t)x28 * x36)) + (((uint64_t)x30 * x34) + ((0x2 * ((uint64_t)x32 * x32)) + (((uint64_t)x34 * x30) + ((0x2 * ((uint64_t)x36 * x28)) + (0x2 * ((uint64_t)x35 * x26)))))))));
- { uint64_t x45 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (((uint64_t)x24 * x35) + ((0x2 * ((uint64_t)x26 * x36)) + (((uint64_t)x28 * x34) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + (((uint64_t)x34 * x28) + ((0x2 * ((uint64_t)x36 * x26)) + ((uint64_t)x35 * x24)))))))));
- { uint64_t x46 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + (((uint64_t)x6 * x16) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + (((uint64_t)x16 * x6) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + ((0x2 * ((uint64_t)x22 * x35)) + ((0x2 * ((uint64_t)x24 * x36)) + ((0x2 * ((uint64_t)x26 * x34)) + ((0x2 * ((uint64_t)x28 * x32)) + (((uint64_t)x30 * x30) + ((0x2 * ((uint64_t)x32 * x28)) + ((0x2 * ((uint64_t)x34 * x26)) + ((0x2 * ((uint64_t)x36 * x24)) + (0x2 * ((uint64_t)x35 * x22)))))))))));
- { uint64_t x47 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (((uint64_t)x20 * x35) + ((0x2 * ((uint64_t)x22 * x36)) + (((uint64_t)x24 * x34) + ((0x2 * ((uint64_t)x26 * x32)) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + ((0x2 * ((uint64_t)x32 * x26)) + (((uint64_t)x34 * x24) + ((0x2 * ((uint64_t)x36 * x22)) + ((uint64_t)x35 * x20)))))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + ((0x2 * ((uint64_t)x18 * x35)) + ((0x2 * ((uint64_t)x20 * x36)) + ((0x2 * ((uint64_t)x22 * x34)) + ((0x2 * ((uint64_t)x24 * x32)) + ((0x2 * ((uint64_t)x26 * x30)) + ((0x2 * ((uint64_t)x28 * x28)) + ((0x2 * ((uint64_t)x30 * x26)) + ((0x2 * ((uint64_t)x32 * x24)) + ((0x2 * ((uint64_t)x34 * x22)) + ((0x2 * ((uint64_t)x36 * x20)) + (0x2 * ((uint64_t)x35 * x18)))))))))))));
- { uint64_t x49 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (((uint64_t)x16 * x35) + ((0x2 * ((uint64_t)x18 * x36)) + (((uint64_t)x20 * x34) + ((0x2 * ((uint64_t)x22 * x32)) + (((uint64_t)x24 * x30) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + (((uint64_t)x30 * x24) + ((0x2 * ((uint64_t)x32 * x22)) + (((uint64_t)x34 * x20) + ((0x2 * ((uint64_t)x36 * x18)) + ((uint64_t)x35 * x16)))))))))))));
- { uint64_t x50 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (((uint64_t)x14 * x35) + (((uint64_t)x16 * x36) + (((uint64_t)x18 * x34) + (((uint64_t)x20 * x32) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + (((uint64_t)x32 * x20) + (((uint64_t)x34 * x18) + (((uint64_t)x36 * x16) + ((uint64_t)x35 * x14))))))))))))));
- { uint64_t x51 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + ((0x2 * ((uint64_t)x12 * x35)) + ((0x2 * ((uint64_t)x14 * x36)) + (((uint64_t)x16 * x34) + ((0x2 * ((uint64_t)x18 * x32)) + (((uint64_t)x20 * x30) + ((0x2 * ((uint64_t)x22 * x28)) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + ((0x2 * ((uint64_t)x28 * x22)) + (((uint64_t)x30 * x20) + ((0x2 * ((uint64_t)x32 * x18)) + (((uint64_t)x34 * x16) + ((0x2 * ((uint64_t)x36 * x14)) + (0x2 * ((uint64_t)x35 * x12))))))))))))))));
- { uint64_t x52 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (((uint64_t)x10 * x35) + ((0x2 * ((uint64_t)x12 * x36)) + (((uint64_t)x14 * x34) + (((uint64_t)x16 * x32) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + ((0x2 * ((uint64_t)x22 * x26)) + (((uint64_t)x24 * x24) + ((0x2 * ((uint64_t)x26 * x22)) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + (((uint64_t)x32 * x16) + (((uint64_t)x34 * x14) + ((0x2 * ((uint64_t)x36 * x12)) + ((uint64_t)x35 * x10))))))))))))))));
- { uint64_t x53 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + ((0x2 * ((uint64_t)x8 * x35)) + ((0x2 * ((uint64_t)x10 * x36)) + ((0x2 * ((uint64_t)x12 * x34)) + ((0x2 * ((uint64_t)x14 * x32)) + (((uint64_t)x16 * x30) + ((0x2 * ((uint64_t)x18 * x28)) + ((0x2 * ((uint64_t)x20 * x26)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + ((0x2 * ((uint64_t)x26 * x20)) + ((0x2 * ((uint64_t)x28 * x18)) + (((uint64_t)x30 * x16) + ((0x2 * ((uint64_t)x32 * x14)) + ((0x2 * ((uint64_t)x34 * x12)) + ((0x2 * ((uint64_t)x36 * x10)) + (0x2 * ((uint64_t)x35 * x8))))))))))))))))));
- { uint64_t x54 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x6 * x35) + ((0x2 * ((uint64_t)x8 * x36)) + (((uint64_t)x10 * x34) + ((0x2 * ((uint64_t)x12 * x32)) + (((uint64_t)x14 * x30) + (((uint64_t)x16 * x28) + ((0x2 * ((uint64_t)x18 * x26)) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + ((0x2 * ((uint64_t)x26 * x18)) + (((uint64_t)x28 * x16) + (((uint64_t)x30 * x14) + ((0x2 * ((uint64_t)x32 * x12)) + (((uint64_t)x34 * x10) + ((0x2 * ((uint64_t)x36 * x8)) + ((uint64_t)x35 * x6))))))))))))))))));
- { uint64_t x55 = (((uint64_t)x2 * x2) + ((0x2 * ((uint64_t)x4 * x35)) + ((0x2 * ((uint64_t)x6 * x36)) + ((0x2 * ((uint64_t)x8 * x34)) + ((0x2 * ((uint64_t)x10 * x32)) + ((0x2 * ((uint64_t)x12 * x30)) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + ((0x2 * ((uint64_t)x18 * x24)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((0x2 * ((uint64_t)x24 * x18)) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + ((0x2 * ((uint64_t)x30 * x12)) + ((0x2 * ((uint64_t)x32 * x10)) + ((0x2 * ((uint64_t)x34 * x8)) + ((0x2 * ((uint64_t)x36 * x6)) + (0x2 * ((uint64_t)x35 * x4))))))))))))))))))));
- { uint64_t x56 = (x55 >> 0x1c);
- { uint32_t x57 = ((uint32_t)x55 & 0xfffffff);
- { uint64_t x58 = (x56 + x54);
- { uint64_t x59 = (x58 >> 0x1b);
- { uint32_t x60 = ((uint32_t)x58 & 0x7ffffff);
- { uint64_t x61 = (x59 + x53);
- { uint64_t x62 = (x61 >> 0x1c);
- { uint32_t x63 = ((uint32_t)x61 & 0xfffffff);
- { uint64_t x64 = (x62 + x52);
- { uint64_t x65 = (x64 >> 0x1b);
- { uint32_t x66 = ((uint32_t)x64 & 0x7ffffff);
- { uint64_t x67 = (x65 + x51);
- { uint64_t x68 = (x67 >> 0x1c);
- { uint32_t x69 = ((uint32_t)x67 & 0xfffffff);
- { uint64_t x70 = (x68 + x50);
- { uint64_t x71 = (x70 >> 0x1b);
- { uint32_t x72 = ((uint32_t)x70 & 0x7ffffff);
- { uint64_t x73 = (x71 + x49);
- { uint64_t x74 = (x73 >> 0x1b);
- { uint32_t x75 = ((uint32_t)x73 & 0x7ffffff);
- { uint64_t x76 = (x74 + x48);
- { uint64_t x77 = (x76 >> 0x1c);
- { uint32_t x78 = ((uint32_t)x76 & 0xfffffff);
- { uint64_t x79 = (x77 + x47);
- { uint64_t x80 = (x79 >> 0x1b);
- { uint32_t x81 = ((uint32_t)x79 & 0x7ffffff);
- { uint64_t x82 = (x80 + x46);
- { uint64_t x83 = (x82 >> 0x1c);
- { uint32_t x84 = ((uint32_t)x82 & 0xfffffff);
- { uint64_t x85 = (x83 + x45);
- { uint64_t x86 = (x85 >> 0x1b);
- { uint32_t x87 = ((uint32_t)x85 & 0x7ffffff);
- { uint64_t x88 = (x86 + x44);
- { uint64_t x89 = (x88 >> 0x1c);
- { uint32_t x90 = ((uint32_t)x88 & 0xfffffff);
- { uint64_t x91 = (x89 + x43);
- { uint64_t x92 = (x91 >> 0x1b);
- { uint32_t x93 = ((uint32_t)x91 & 0x7ffffff);
- { uint64_t x94 = (x92 + x42);
- { uint64_t x95 = (x94 >> 0x1b);
- { uint32_t x96 = ((uint32_t)x94 & 0x7ffffff);
- { uint64_t x97 = (x95 + x41);
- { uint64_t x98 = (x97 >> 0x1c);
- { uint32_t x99 = ((uint32_t)x97 & 0xfffffff);
- { uint64_t x100 = (x98 + x40);
- { uint64_t x101 = (x100 >> 0x1b);
- { uint32_t x102 = ((uint32_t)x100 & 0x7ffffff);
- { uint64_t x103 = (x101 + x39);
- { uint64_t x104 = (x103 >> 0x1c);
- { uint32_t x105 = ((uint32_t)x103 & 0xfffffff);
- { uint64_t x106 = (x104 + x38);
- { uint64_t x107 = (x106 >> 0x1b);
- { uint32_t x108 = ((uint32_t)x106 & 0x7ffffff);
- { uint64_t x109 = (x107 + x37);
- { uint64_t x110 = (x109 >> 0x1b);
- { uint32_t x111 = ((uint32_t)x109 & 0x7ffffff);
- { uint64_t x112 = (x57 + x110);
- { uint32_t x113 = (uint32_t) (x112 >> 0x1c);
- { uint32_t x114 = ((uint32_t)x112 & 0xfffffff);
- { uint32_t x115 = (x113 + x60);
- { uint32_t x116 = (x115 >> 0x1b);
- { uint32_t x117 = (x115 & 0x7ffffff);
- out[0] = x114;
- out[1] = x117;
- out[2] = (x116 + x63);
- out[3] = x66;
- out[4] = x69;
- out[5] = x72;
- out[6] = x75;
- out[7] = x78;
- out[8] = x81;
- out[9] = x84;
- out[10] = x87;
- out[11] = x90;
- out[12] = x93;
- out[13] = x96;
- out[14] = x99;
- out[15] = x102;
- out[16] = x105;
- out[17] = x108;
- out[18] = x111;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e521m1_19limbs/fesquare.v b/src/Specific/solinas32_2e521m1_19limbs/fesquare.v
deleted file mode 100644
index 7720acd6b..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e521m1_19limbs.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_2e521m1_19limbs/fesquareDisplay.log b/src/Specific/solinas32_2e521m1_19limbs/fesquareDisplay.log
deleted file mode 100644
index 25f8760f4..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,88 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x35, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x37 = (((uint64_t)x2 * x35) + ((0x2 * ((uint64_t)x4 * x36)) + (((uint64_t)x6 * x34) + ((0x2 * ((uint64_t)x8 * x32)) + (((uint64_t)x10 * x30) + ((0x2 * ((uint64_t)x12 * x28)) + ((0x2 * ((uint64_t)x14 * x26)) + (((uint64_t)x16 * x24) + ((0x2 * ((uint64_t)x18 * x22)) + (((uint64_t)x20 * x20) + ((0x2 * ((uint64_t)x22 * x18)) + (((uint64_t)x24 * x16) + ((0x2 * ((uint64_t)x26 * x14)) + ((0x2 * ((uint64_t)x28 * x12)) + (((uint64_t)x30 * x10) + ((0x2 * ((uint64_t)x32 * x8)) + (((uint64_t)x34 * x6) + ((0x2 * ((uint64_t)x36 * x4)) + ((uint64_t)x35 * x2)))))))))))))))))));
- uint64_t x38 = ((((uint64_t)x2 * x36) + (((uint64_t)x4 * x34) + (((uint64_t)x6 * x32) + (((uint64_t)x8 * x30) + (((uint64_t)x10 * x28) + ((0x2 * ((uint64_t)x12 * x26)) + (((uint64_t)x14 * x24) + (((uint64_t)x16 * x22) + (((uint64_t)x18 * x20) + (((uint64_t)x20 * x18) + (((uint64_t)x22 * x16) + (((uint64_t)x24 * x14) + ((0x2 * ((uint64_t)x26 * x12)) + (((uint64_t)x28 * x10) + (((uint64_t)x30 * x8) + (((uint64_t)x32 * x6) + (((uint64_t)x34 * x4) + ((uint64_t)x36 * x2)))))))))))))))))) + ((uint64_t)x35 * x35));
- uint64_t x39 = ((((uint64_t)x2 * x34) + ((0x2 * ((uint64_t)x4 * x32)) + (((uint64_t)x6 * x30) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + (((uint64_t)x16 * x20) + ((0x2 * ((uint64_t)x18 * x18)) + (((uint64_t)x20 * x16) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + (((uint64_t)x30 * x6) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x34 * x2))))))))))))))))) + ((0x2 * ((uint64_t)x36 * x35)) + (0x2 * ((uint64_t)x35 * x36))));
- uint64_t x40 = ((((uint64_t)x2 * x32) + (((uint64_t)x4 * x30) + (((uint64_t)x6 * x28) + ((0x2 * ((uint64_t)x8 * x26)) + (((uint64_t)x10 * x24) + ((0x2 * ((uint64_t)x12 * x22)) + (((uint64_t)x14 * x20) + (((uint64_t)x16 * x18) + (((uint64_t)x18 * x16) + (((uint64_t)x20 * x14) + ((0x2 * ((uint64_t)x22 * x12)) + (((uint64_t)x24 * x10) + ((0x2 * ((uint64_t)x26 * x8)) + (((uint64_t)x28 * x6) + (((uint64_t)x30 * x4) + ((uint64_t)x32 * x2)))))))))))))))) + (((uint64_t)x34 * x35) + ((0x2 * ((uint64_t)x36 * x36)) + ((uint64_t)x35 * x34))));
- uint64_t x41 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + ((0x2 * ((uint64_t)x6 * x26)) + ((0x2 * ((uint64_t)x8 * x24)) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + (((uint64_t)x16 * x16) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + ((0x2 * ((uint64_t)x24 * x8)) + ((0x2 * ((uint64_t)x26 * x6)) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + ((0x2 * ((uint64_t)x32 * x35)) + ((0x2 * ((uint64_t)x34 * x36)) + ((0x2 * ((uint64_t)x36 * x34)) + (0x2 * ((uint64_t)x35 * x32))))));
- uint64_t x42 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + (((uint64_t)x6 * x24) + ((0x2 * ((uint64_t)x8 * x22)) + (((uint64_t)x10 * x20) + ((0x2 * ((uint64_t)x12 * x18)) + (((uint64_t)x14 * x16) + (((uint64_t)x16 * x14) + ((0x2 * ((uint64_t)x18 * x12)) + (((uint64_t)x20 * x10) + ((0x2 * ((uint64_t)x22 * x8)) + (((uint64_t)x24 * x6) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (((uint64_t)x30 * x35) + ((0x2 * ((uint64_t)x32 * x36)) + (((uint64_t)x34 * x34) + ((0x2 * ((uint64_t)x36 * x32)) + ((uint64_t)x35 * x30))))));
- uint64_t x43 = ((((uint64_t)x2 * x26) + (((uint64_t)x4 * x24) + (((uint64_t)x6 * x22) + (((uint64_t)x8 * x20) + (((uint64_t)x10 * x18) + (((uint64_t)x12 * x16) + (((uint64_t)x14 * x14) + (((uint64_t)x16 * x12) + (((uint64_t)x18 * x10) + (((uint64_t)x20 * x8) + (((uint64_t)x22 * x6) + (((uint64_t)x24 * x4) + ((uint64_t)x26 * x2))))))))))))) + (((uint64_t)x28 * x35) + (((uint64_t)x30 * x36) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + (((uint64_t)x36 * x30) + ((uint64_t)x35 * x28)))))));
- uint64_t x44 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + (((uint64_t)x6 * x20) + ((0x2 * ((uint64_t)x8 * x18)) + (((uint64_t)x10 * x16) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + (((uint64_t)x16 * x10) + ((0x2 * ((uint64_t)x18 * x8)) + (((uint64_t)x20 * x6) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + ((0x2 * ((uint64_t)x26 * x35)) + ((0x2 * ((uint64_t)x28 * x36)) + (((uint64_t)x30 * x34) + ((0x2 * ((uint64_t)x32 * x32)) + (((uint64_t)x34 * x30) + ((0x2 * ((uint64_t)x36 * x28)) + (0x2 * ((uint64_t)x35 * x26)))))))));
- uint64_t x45 = ((((uint64_t)x2 * x22) + (((uint64_t)x4 * x20) + (((uint64_t)x6 * x18) + (((uint64_t)x8 * x16) + (((uint64_t)x10 * x14) + ((0x2 * ((uint64_t)x12 * x12)) + (((uint64_t)x14 * x10) + (((uint64_t)x16 * x8) + (((uint64_t)x18 * x6) + (((uint64_t)x20 * x4) + ((uint64_t)x22 * x2))))))))))) + (((uint64_t)x24 * x35) + ((0x2 * ((uint64_t)x26 * x36)) + (((uint64_t)x28 * x34) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + (((uint64_t)x34 * x28) + ((0x2 * ((uint64_t)x36 * x26)) + ((uint64_t)x35 * x24)))))))));
- uint64_t x46 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + (((uint64_t)x6 * x16) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + (((uint64_t)x16 * x6) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + ((0x2 * ((uint64_t)x22 * x35)) + ((0x2 * ((uint64_t)x24 * x36)) + ((0x2 * ((uint64_t)x26 * x34)) + ((0x2 * ((uint64_t)x28 * x32)) + (((uint64_t)x30 * x30) + ((0x2 * ((uint64_t)x32 * x28)) + ((0x2 * ((uint64_t)x34 * x26)) + ((0x2 * ((uint64_t)x36 * x24)) + (0x2 * ((uint64_t)x35 * x22)))))))))));
- uint64_t x47 = ((((uint64_t)x2 * x18) + (((uint64_t)x4 * x16) + (((uint64_t)x6 * x14) + ((0x2 * ((uint64_t)x8 * x12)) + (((uint64_t)x10 * x10) + ((0x2 * ((uint64_t)x12 * x8)) + (((uint64_t)x14 * x6) + (((uint64_t)x16 * x4) + ((uint64_t)x18 * x2))))))))) + (((uint64_t)x20 * x35) + ((0x2 * ((uint64_t)x22 * x36)) + (((uint64_t)x24 * x34) + ((0x2 * ((uint64_t)x26 * x32)) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + ((0x2 * ((uint64_t)x32 * x26)) + (((uint64_t)x34 * x24) + ((0x2 * ((uint64_t)x36 * x22)) + ((uint64_t)x35 * x20)))))))))));
- uint64_t x48 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + ((0x2 * ((uint64_t)x18 * x35)) + ((0x2 * ((uint64_t)x20 * x36)) + ((0x2 * ((uint64_t)x22 * x34)) + ((0x2 * ((uint64_t)x24 * x32)) + ((0x2 * ((uint64_t)x26 * x30)) + ((0x2 * ((uint64_t)x28 * x28)) + ((0x2 * ((uint64_t)x30 * x26)) + ((0x2 * ((uint64_t)x32 * x24)) + ((0x2 * ((uint64_t)x34 * x22)) + ((0x2 * ((uint64_t)x36 * x20)) + (0x2 * ((uint64_t)x35 * x18)))))))))))));
- uint64_t x49 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + (((uint64_t)x6 * x10) + ((0x2 * ((uint64_t)x8 * x8)) + (((uint64_t)x10 * x6) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (((uint64_t)x16 * x35) + ((0x2 * ((uint64_t)x18 * x36)) + (((uint64_t)x20 * x34) + ((0x2 * ((uint64_t)x22 * x32)) + (((uint64_t)x24 * x30) + ((0x2 * ((uint64_t)x26 * x28)) + ((0x2 * ((uint64_t)x28 * x26)) + (((uint64_t)x30 * x24) + ((0x2 * ((uint64_t)x32 * x22)) + (((uint64_t)x34 * x20) + ((0x2 * ((uint64_t)x36 * x18)) + ((uint64_t)x35 * x16)))))))))))));
- uint64_t x50 = ((((uint64_t)x2 * x12) + (((uint64_t)x4 * x10) + (((uint64_t)x6 * x8) + (((uint64_t)x8 * x6) + (((uint64_t)x10 * x4) + ((uint64_t)x12 * x2)))))) + (((uint64_t)x14 * x35) + (((uint64_t)x16 * x36) + (((uint64_t)x18 * x34) + (((uint64_t)x20 * x32) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + ((0x2 * ((uint64_t)x26 * x26)) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + (((uint64_t)x32 * x20) + (((uint64_t)x34 * x18) + (((uint64_t)x36 * x16) + ((uint64_t)x35 * x14))))))))))))));
- uint64_t x51 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + (((uint64_t)x6 * x6) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + ((0x2 * ((uint64_t)x12 * x35)) + ((0x2 * ((uint64_t)x14 * x36)) + (((uint64_t)x16 * x34) + ((0x2 * ((uint64_t)x18 * x32)) + (((uint64_t)x20 * x30) + ((0x2 * ((uint64_t)x22 * x28)) + ((0x2 * ((uint64_t)x24 * x26)) + ((0x2 * ((uint64_t)x26 * x24)) + ((0x2 * ((uint64_t)x28 * x22)) + (((uint64_t)x30 * x20) + ((0x2 * ((uint64_t)x32 * x18)) + (((uint64_t)x34 * x16) + ((0x2 * ((uint64_t)x36 * x14)) + (0x2 * ((uint64_t)x35 * x12))))))))))))))));
- uint64_t x52 = ((((uint64_t)x2 * x8) + (((uint64_t)x4 * x6) + (((uint64_t)x6 * x4) + ((uint64_t)x8 * x2)))) + (((uint64_t)x10 * x35) + ((0x2 * ((uint64_t)x12 * x36)) + (((uint64_t)x14 * x34) + (((uint64_t)x16 * x32) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + ((0x2 * ((uint64_t)x22 * x26)) + (((uint64_t)x24 * x24) + ((0x2 * ((uint64_t)x26 * x22)) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + (((uint64_t)x32 * x16) + (((uint64_t)x34 * x14) + ((0x2 * ((uint64_t)x36 * x12)) + ((uint64_t)x35 * x10))))))))))))))));
- uint64_t x53 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + ((0x2 * ((uint64_t)x8 * x35)) + ((0x2 * ((uint64_t)x10 * x36)) + ((0x2 * ((uint64_t)x12 * x34)) + ((0x2 * ((uint64_t)x14 * x32)) + (((uint64_t)x16 * x30) + ((0x2 * ((uint64_t)x18 * x28)) + ((0x2 * ((uint64_t)x20 * x26)) + ((0x2 * ((uint64_t)x22 * x24)) + ((0x2 * ((uint64_t)x24 * x22)) + ((0x2 * ((uint64_t)x26 * x20)) + ((0x2 * ((uint64_t)x28 * x18)) + (((uint64_t)x30 * x16) + ((0x2 * ((uint64_t)x32 * x14)) + ((0x2 * ((uint64_t)x34 * x12)) + ((0x2 * ((uint64_t)x36 * x10)) + (0x2 * ((uint64_t)x35 * x8))))))))))))))))));
- uint64_t x54 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x6 * x35) + ((0x2 * ((uint64_t)x8 * x36)) + (((uint64_t)x10 * x34) + ((0x2 * ((uint64_t)x12 * x32)) + (((uint64_t)x14 * x30) + (((uint64_t)x16 * x28) + ((0x2 * ((uint64_t)x18 * x26)) + (((uint64_t)x20 * x24) + ((0x2 * ((uint64_t)x22 * x22)) + (((uint64_t)x24 * x20) + ((0x2 * ((uint64_t)x26 * x18)) + (((uint64_t)x28 * x16) + (((uint64_t)x30 * x14) + ((0x2 * ((uint64_t)x32 * x12)) + (((uint64_t)x34 * x10) + ((0x2 * ((uint64_t)x36 * x8)) + ((uint64_t)x35 * x6))))))))))))))))));
- uint64_t x55 = (((uint64_t)x2 * x2) + ((0x2 * ((uint64_t)x4 * x35)) + ((0x2 * ((uint64_t)x6 * x36)) + ((0x2 * ((uint64_t)x8 * x34)) + ((0x2 * ((uint64_t)x10 * x32)) + ((0x2 * ((uint64_t)x12 * x30)) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + ((0x2 * ((uint64_t)x18 * x24)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((0x2 * ((uint64_t)x24 * x18)) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + ((0x2 * ((uint64_t)x30 * x12)) + ((0x2 * ((uint64_t)x32 * x10)) + ((0x2 * ((uint64_t)x34 * x8)) + ((0x2 * ((uint64_t)x36 * x6)) + (0x2 * ((uint64_t)x35 * x4))))))))))))))))))));
- uint64_t x56 = (x55 >> 0x1c);
- uint32_t x57 = ((uint32_t)x55 & 0xfffffff);
- uint64_t x58 = (x56 + x54);
- uint64_t x59 = (x58 >> 0x1b);
- uint32_t x60 = ((uint32_t)x58 & 0x7ffffff);
- uint64_t x61 = (x59 + x53);
- uint64_t x62 = (x61 >> 0x1c);
- uint32_t x63 = ((uint32_t)x61 & 0xfffffff);
- uint64_t x64 = (x62 + x52);
- uint64_t x65 = (x64 >> 0x1b);
- uint32_t x66 = ((uint32_t)x64 & 0x7ffffff);
- uint64_t x67 = (x65 + x51);
- uint64_t x68 = (x67 >> 0x1c);
- uint32_t x69 = ((uint32_t)x67 & 0xfffffff);
- uint64_t x70 = (x68 + x50);
- uint64_t x71 = (x70 >> 0x1b);
- uint32_t x72 = ((uint32_t)x70 & 0x7ffffff);
- uint64_t x73 = (x71 + x49);
- uint64_t x74 = (x73 >> 0x1b);
- uint32_t x75 = ((uint32_t)x73 & 0x7ffffff);
- uint64_t x76 = (x74 + x48);
- uint64_t x77 = (x76 >> 0x1c);
- uint32_t x78 = ((uint32_t)x76 & 0xfffffff);
- uint64_t x79 = (x77 + x47);
- uint64_t x80 = (x79 >> 0x1b);
- uint32_t x81 = ((uint32_t)x79 & 0x7ffffff);
- uint64_t x82 = (x80 + x46);
- uint64_t x83 = (x82 >> 0x1c);
- uint32_t x84 = ((uint32_t)x82 & 0xfffffff);
- uint64_t x85 = (x83 + x45);
- uint64_t x86 = (x85 >> 0x1b);
- uint32_t x87 = ((uint32_t)x85 & 0x7ffffff);
- uint64_t x88 = (x86 + x44);
- uint64_t x89 = (x88 >> 0x1c);
- uint32_t x90 = ((uint32_t)x88 & 0xfffffff);
- uint64_t x91 = (x89 + x43);
- uint64_t x92 = (x91 >> 0x1b);
- uint32_t x93 = ((uint32_t)x91 & 0x7ffffff);
- uint64_t x94 = (x92 + x42);
- uint64_t x95 = (x94 >> 0x1b);
- uint32_t x96 = ((uint32_t)x94 & 0x7ffffff);
- uint64_t x97 = (x95 + x41);
- uint64_t x98 = (x97 >> 0x1c);
- uint32_t x99 = ((uint32_t)x97 & 0xfffffff);
- uint64_t x100 = (x98 + x40);
- uint64_t x101 = (x100 >> 0x1b);
- uint32_t x102 = ((uint32_t)x100 & 0x7ffffff);
- uint64_t x103 = (x101 + x39);
- uint64_t x104 = (x103 >> 0x1c);
- uint32_t x105 = ((uint32_t)x103 & 0xfffffff);
- uint64_t x106 = (x104 + x38);
- uint64_t x107 = (x106 >> 0x1b);
- uint32_t x108 = ((uint32_t)x106 & 0x7ffffff);
- uint64_t x109 = (x107 + x37);
- uint64_t x110 = (x109 >> 0x1b);
- uint32_t x111 = ((uint32_t)x109 & 0x7ffffff);
- uint64_t x112 = (x57 + x110);
- uint32_t x113 = (uint32_t) (x112 >> 0x1c);
- uint32_t x114 = ((uint32_t)x112 & 0xfffffff);
- uint32_t x115 = (x113 + x60);
- uint32_t x116 = (x115 >> 0x1b);
- uint32_t x117 = (x115 & 0x7ffffff);
- return (Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, Return x66, (x116 + x63), Return x117, Return x114))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e521m1_19limbs/fesquareDisplay.v b/src/Specific/solinas32_2e521m1_19limbs/fesquareDisplay.v
deleted file mode 100644
index c674f75ac..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e521m1_19limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e521m1_19limbs/fesub.c b/src/Specific/solinas32_2e521m1_19limbs/fesub.c
deleted file mode 100644
index 038fe49c1..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/fesub.c
+++ /dev/null
@@ -1,60 +0,0 @@
-static void fesub(uint32_t out[19], const uint32_t in1[19], const uint32_t in2[19]) {
- { const uint32_t x38 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x74 = in2[18];
- { const uint32_t x75 = in2[17];
- { const uint32_t x73 = in2[16];
- { const uint32_t x71 = in2[15];
- { const uint32_t x69 = in2[14];
- { const uint32_t x67 = in2[13];
- { const uint32_t x65 = in2[12];
- { const uint32_t x63 = in2[11];
- { const uint32_t x61 = in2[10];
- { const uint32_t x59 = in2[9];
- { const uint32_t x57 = in2[8];
- { const uint32_t x55 = in2[7];
- { const uint32_t x53 = in2[6];
- { const uint32_t x51 = in2[5];
- { const uint32_t x49 = in2[4];
- { const uint32_t x47 = in2[3];
- { const uint32_t x45 = in2[2];
- { const uint32_t x43 = in2[1];
- { const uint32_t x41 = in2[0];
- out[0] = ((0x1ffffffe + x5) - x41);
- out[1] = ((0xffffffe + x7) - x43);
- out[2] = ((0x1ffffffe + x9) - x45);
- out[3] = ((0xffffffe + x11) - x47);
- out[4] = ((0x1ffffffe + x13) - x49);
- out[5] = ((0xffffffe + x15) - x51);
- out[6] = ((0xffffffe + x17) - x53);
- out[7] = ((0x1ffffffe + x19) - x55);
- out[8] = ((0xffffffe + x21) - x57);
- out[9] = ((0x1ffffffe + x23) - x59);
- out[10] = ((0xffffffe + x25) - x61);
- out[11] = ((0x1ffffffe + x27) - x63);
- out[12] = ((0xffffffe + x29) - x65);
- out[13] = ((0xffffffe + x31) - x67);
- out[14] = ((0x1ffffffe + x33) - x69);
- out[15] = ((0xffffffe + x35) - x71);
- out[16] = ((0x1ffffffe + x37) - x73);
- out[17] = ((0xffffffe + x39) - x75);
- out[18] = ((0xffffffe + x38) - x74);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e521m1_19limbs/fesub.v b/src/Specific/solinas32_2e521m1_19limbs/fesub.v
deleted file mode 100644
index eeb077b7e..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e521m1_19limbs.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_2e521m1_19limbs/fesubDisplay.log b/src/Specific/solinas32_2e521m1_19limbs/fesubDisplay.log
deleted file mode 100644
index d3d4cf2c2..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x38, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x74, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43, x41))%core,
- (((0xffffffe + x38) - x74), ((0xffffffe + x39) - x75), ((0x1ffffffe + x37) - x73), ((0xffffffe + x35) - x71), ((0x1ffffffe + x33) - x69), ((0xffffffe + x31) - x67), ((0xffffffe + x29) - x65), ((0x1ffffffe + x27) - x63), ((0xffffffe + x25) - x61), ((0x1ffffffe + x23) - x59), ((0xffffffe + x21) - x57), ((0x1ffffffe + x19) - x55), ((0xffffffe + x17) - x53), ((0xffffffe + x15) - x51), ((0x1ffffffe + x13) - x49), ((0xffffffe + x11) - x47), ((0x1ffffffe + x9) - x45), ((0xffffffe + x7) - x43), ((0x1ffffffe + x5) - x41)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e521m1_19limbs/fesubDisplay.v b/src/Specific/solinas32_2e521m1_19limbs/fesubDisplay.v
deleted file mode 100644
index 9b523f348..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e521m1_19limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e521m1_19limbs/freeze.c b/src/Specific/solinas32_2e521m1_19limbs/freeze.c
deleted file mode 100644
index 126184b96..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/freeze.c
+++ /dev/null
@@ -1,99 +0,0 @@
-static void freeze(uint32_t out[19], const uint32_t in1[19]) {
- { const uint32_t x35 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffff);
- { uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x4, 0x7ffffff);
- { uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x6, 0xfffffff);
- { uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x8, 0x7ffffff);
- { uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x10, 0xfffffff);
- { uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x12, 0x7ffffff);
- { uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x14, 0x7ffffff);
- { uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x16, 0xfffffff);
- { uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x18, 0x7ffffff);
- { uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x20, 0xfffffff);
- { uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x22, 0x7ffffff);
- { uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x24, 0xfffffff);
- { uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x26, 0x7ffffff);
- { uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x28, 0x7ffffff);
- { uint32_t x80, uint8_t x81 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x30, 0xfffffff);
- { uint32_t x83, uint8_t x84 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x32, 0x7ffffff);
- { uint32_t x86, uint8_t x87 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x34, 0xfffffff);
- { uint32_t x89, uint8_t x90 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x36, 0x7ffffff);
- { uint32_t x92, uint8_t x93 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x35, 0x7ffffff);
- { uint32_t x94 = cmovznz32(x93, 0x0, 0xffffffff);
- { uint32_t x95 = (x94 & 0xfffffff);
- { uint32_t x97, uint8_t x98 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x38, Return x95);
- { uint32_t x99 = (x94 & 0x7ffffff);
- { uint32_t x101, uint8_t x102 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x98, Return x41, Return x99);
- { uint32_t x103 = (x94 & 0xfffffff);
- { uint32_t x105, uint8_t x106 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x102, Return x44, Return x103);
- { uint32_t x107 = (x94 & 0x7ffffff);
- { uint32_t x109, uint8_t x110 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x106, Return x47, Return x107);
- { uint32_t x111 = (x94 & 0xfffffff);
- { uint32_t x113, uint8_t x114 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x110, Return x50, Return x111);
- { uint32_t x115 = (x94 & 0x7ffffff);
- { uint32_t x117, uint8_t x118 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x114, Return x53, Return x115);
- { uint32_t x119 = (x94 & 0x7ffffff);
- { uint32_t x121, uint8_t x122 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x118, Return x56, Return x119);
- { uint32_t x123 = (x94 & 0xfffffff);
- { uint32_t x125, uint8_t x126 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x122, Return x59, Return x123);
- { uint32_t x127 = (x94 & 0x7ffffff);
- { uint32_t x129, uint8_t x130 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x126, Return x62, Return x127);
- { uint32_t x131 = (x94 & 0xfffffff);
- { uint32_t x133, uint8_t x134 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x130, Return x65, Return x131);
- { uint32_t x135 = (x94 & 0x7ffffff);
- { uint32_t x137, uint8_t x138 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x134, Return x68, Return x135);
- { uint32_t x139 = (x94 & 0xfffffff);
- { uint32_t x141, uint8_t x142 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x138, Return x71, Return x139);
- { uint32_t x143 = (x94 & 0x7ffffff);
- { uint32_t x145, uint8_t x146 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x142, Return x74, Return x143);
- { uint32_t x147 = (x94 & 0x7ffffff);
- { uint32_t x149, uint8_t x150 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x146, Return x77, Return x147);
- { uint32_t x151 = (x94 & 0xfffffff);
- { uint32_t x153, uint8_t x154 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x150, Return x80, Return x151);
- { uint32_t x155 = (x94 & 0x7ffffff);
- { uint32_t x157, uint8_t x158 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x154, Return x83, Return x155);
- { uint32_t x159 = (x94 & 0xfffffff);
- { uint32_t x161, uint8_t x162 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x158, Return x86, Return x159);
- { uint32_t x163 = (x94 & 0x7ffffff);
- { uint32_t x165, uint8_t x166 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x162, Return x89, Return x163);
- { uint32_t x167 = (x94 & 0x7ffffff);
- { uint32_t x169, uint8_t _ = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x166, Return x92, Return x167);
- out[0] = x97;
- out[1] = x101;
- out[2] = x105;
- out[3] = x109;
- out[4] = x113;
- out[5] = x117;
- out[6] = x121;
- out[7] = x125;
- out[8] = x129;
- out[9] = x133;
- out[10] = x137;
- out[11] = x141;
- out[12] = x145;
- out[13] = x149;
- out[14] = x153;
- out[15] = x157;
- out[16] = x161;
- out[17] = x165;
- out[18] = x169;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e521m1_19limbs/freeze.v b/src/Specific/solinas32_2e521m1_19limbs/freeze.v
deleted file mode 100644
index b052a4885..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e521m1_19limbs.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_2e521m1_19limbs/freezeDisplay.log b/src/Specific/solinas32_2e521m1_19limbs/freezeDisplay.log
deleted file mode 100644
index 6a6ce93bd..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/freezeDisplay.log
+++ /dev/null
@@ -1,65 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x35, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffff);
- uint32_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x39, Return x4, 0x7ffffff);
- uint32_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x42, Return x6, 0xfffffff);
- uint32_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x45, Return x8, 0x7ffffff);
- uint32_t x50, uint8_t x51 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x48, Return x10, 0xfffffff);
- uint32_t x53, uint8_t x54 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x51, Return x12, 0x7ffffff);
- uint32_t x56, uint8_t x57 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x54, Return x14, 0x7ffffff);
- uint32_t x59, uint8_t x60 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x57, Return x16, 0xfffffff);
- uint32_t x62, uint8_t x63 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x60, Return x18, 0x7ffffff);
- uint32_t x65, uint8_t x66 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x63, Return x20, 0xfffffff);
- uint32_t x68, uint8_t x69 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x66, Return x22, 0x7ffffff);
- uint32_t x71, uint8_t x72 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x69, Return x24, 0xfffffff);
- uint32_t x74, uint8_t x75 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x72, Return x26, 0x7ffffff);
- uint32_t x77, uint8_t x78 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x75, Return x28, 0x7ffffff);
- uint32_t x80, uint8_t x81 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x78, Return x30, 0xfffffff);
- uint32_t x83, uint8_t x84 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x81, Return x32, 0x7ffffff);
- uint32_t x86, uint8_t x87 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x84, Return x34, 0xfffffff);
- uint32_t x89, uint8_t x90 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x87, Return x36, 0x7ffffff);
- uint32_t x92, uint8_t x93 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x90, Return x35, 0x7ffffff);
- uint32_t x94 = cmovznz32(x93, 0x0, 0xffffffff);
- uint32_t x95 = (x94 & 0xfffffff);
- uint32_t x97, uint8_t x98 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x38, Return x95);
- uint32_t x99 = (x94 & 0x7ffffff);
- uint32_t x101, uint8_t x102 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x98, Return x41, Return x99);
- uint32_t x103 = (x94 & 0xfffffff);
- uint32_t x105, uint8_t x106 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x102, Return x44, Return x103);
- uint32_t x107 = (x94 & 0x7ffffff);
- uint32_t x109, uint8_t x110 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x106, Return x47, Return x107);
- uint32_t x111 = (x94 & 0xfffffff);
- uint32_t x113, uint8_t x114 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x110, Return x50, Return x111);
- uint32_t x115 = (x94 & 0x7ffffff);
- uint32_t x117, uint8_t x118 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x114, Return x53, Return x115);
- uint32_t x119 = (x94 & 0x7ffffff);
- uint32_t x121, uint8_t x122 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x118, Return x56, Return x119);
- uint32_t x123 = (x94 & 0xfffffff);
- uint32_t x125, uint8_t x126 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x122, Return x59, Return x123);
- uint32_t x127 = (x94 & 0x7ffffff);
- uint32_t x129, uint8_t x130 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x126, Return x62, Return x127);
- uint32_t x131 = (x94 & 0xfffffff);
- uint32_t x133, uint8_t x134 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x130, Return x65, Return x131);
- uint32_t x135 = (x94 & 0x7ffffff);
- uint32_t x137, uint8_t x138 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x134, Return x68, Return x135);
- uint32_t x139 = (x94 & 0xfffffff);
- uint32_t x141, uint8_t x142 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x138, Return x71, Return x139);
- uint32_t x143 = (x94 & 0x7ffffff);
- uint32_t x145, uint8_t x146 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x142, Return x74, Return x143);
- uint32_t x147 = (x94 & 0x7ffffff);
- uint32_t x149, uint8_t x150 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x146, Return x77, Return x147);
- uint32_t x151 = (x94 & 0xfffffff);
- uint32_t x153, uint8_t x154 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x150, Return x80, Return x151);
- uint32_t x155 = (x94 & 0x7ffffff);
- uint32_t x157, uint8_t x158 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x154, Return x83, Return x155);
- uint32_t x159 = (x94 & 0xfffffff);
- uint32_t x161, uint8_t x162 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x158, Return x86, Return x159);
- uint32_t x163 = (x94 & 0x7ffffff);
- uint32_t x165, uint8_t x166 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x162, Return x89, Return x163);
- uint32_t x167 = (x94 & 0x7ffffff);
- uint32_t x169, uint8_t _ = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x166, Return x92, Return x167);
- (Return x169, Return x165, Return x161, Return x157, Return x153, Return x149, Return x145, Return x141, Return x137, Return x133, Return x129, Return x125, Return x121, Return x117, Return x113, Return x109, Return x105, Return x101, Return x97))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e521m1_19limbs/freezeDisplay.v b/src/Specific/solinas32_2e521m1_19limbs/freezeDisplay.v
deleted file mode 100644
index b6580d7f9..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e521m1_19limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e521m1_19limbs/py_interpreter.sh b/src/Specific/solinas32_2e521m1_19limbs/py_interpreter.sh
deleted file mode 100755
index a8cdd7045..000000000
--- a/src/Specific/solinas32_2e521m1_19limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**521 - 1' -Dmodulus_bytes='27 + 8/19' -Da24='121665'
diff --git a/src/Specific/solinas32_2e521m1_20limbs/CurveParameters.v b/src/Specific/solinas32_2e521m1_20limbs/CurveParameters.v
deleted file mode 100644
index 14fb480f7..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^521 - 1
-Base: 26 + 1/20
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 20%nat;
- base := 26 + 1/20;
- bitwidth := 32;
- s := 2^521;
- c := [(1, 1)];
- carry_chains := Some [seq 0 (pred 20); [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_2e521m1_20limbs/Synthesis.v b/src/Specific/solinas32_2e521m1_20limbs/Synthesis.v
deleted file mode 100644
index e9da27249..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas32_2e521m1_20limbs.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_2e521m1_20limbs/compiler.sh b/src/Specific/solinas32_2e521m1_20limbs/compiler.sh
deleted file mode 100755
index bf159bf76..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='66' -Dmodulus_limbs='20' -Dq_mpz='(1_mpz<<521) - 1' "$@"
diff --git a/src/Specific/solinas32_2e521m1_20limbs/compilerxx.sh b/src/Specific/solinas32_2e521m1_20limbs/compilerxx.sh
deleted file mode 100755
index a1dc19c79..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='66' -Dmodulus_limbs='20' -Dq_mpz='(1_mpz<<521) - 1' "$@"
diff --git a/src/Specific/solinas32_2e521m1_20limbs/feadd.c b/src/Specific/solinas32_2e521m1_20limbs/feadd.c
deleted file mode 100644
index 28ee6f665..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/feadd.c
+++ /dev/null
@@ -1,63 +0,0 @@
-static void feadd(uint32_t out[20], const uint32_t in1[20], const uint32_t in2[20]) {
- { const uint32_t x40 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x78 = in2[19];
- { const uint32_t x79 = in2[18];
- { const uint32_t x77 = in2[17];
- { const uint32_t x75 = in2[16];
- { const uint32_t x73 = in2[15];
- { const uint32_t x71 = in2[14];
- { const uint32_t x69 = in2[13];
- { const uint32_t x67 = in2[12];
- { const uint32_t x65 = in2[11];
- { const uint32_t x63 = in2[10];
- { const uint32_t x61 = in2[9];
- { const uint32_t x59 = in2[8];
- { const uint32_t x57 = in2[7];
- { const uint32_t x55 = in2[6];
- { const uint32_t x53 = in2[5];
- { const uint32_t x51 = in2[4];
- { const uint32_t x49 = in2[3];
- { const uint32_t x47 = in2[2];
- { const uint32_t x45 = in2[1];
- { const uint32_t x43 = in2[0];
- out[0] = (x5 + x43);
- out[1] = (x7 + x45);
- out[2] = (x9 + x47);
- out[3] = (x11 + x49);
- out[4] = (x13 + x51);
- out[5] = (x15 + x53);
- out[6] = (x17 + x55);
- out[7] = (x19 + x57);
- out[8] = (x21 + x59);
- out[9] = (x23 + x61);
- out[10] = (x25 + x63);
- out[11] = (x27 + x65);
- out[12] = (x29 + x67);
- out[13] = (x31 + x69);
- out[14] = (x33 + x71);
- out[15] = (x35 + x73);
- out[16] = (x37 + x75);
- out[17] = (x39 + x77);
- out[18] = (x41 + x79);
- out[19] = (x40 + x78);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e521m1_20limbs/feadd.v b/src/Specific/solinas32_2e521m1_20limbs/feadd.v
deleted file mode 100644
index 4eefbedde..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e521m1_20limbs.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_2e521m1_20limbs/feaddDisplay.log b/src/Specific/solinas32_2e521m1_20limbs/feaddDisplay.log
deleted file mode 100644
index eebe17777..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x40, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x78, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43))%core,
- ((x40 + x78), (x41 + x79), (x39 + x77), (x37 + x75), (x35 + x73), (x33 + x71), (x31 + x69), (x29 + x67), (x27 + x65), (x25 + x63), (x23 + x61), (x21 + x59), (x19 + x57), (x17 + x55), (x15 + x53), (x13 + x51), (x11 + x49), (x9 + x47), (x7 + x45), (x5 + x43)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e521m1_20limbs/feaddDisplay.v b/src/Specific/solinas32_2e521m1_20limbs/feaddDisplay.v
deleted file mode 100644
index 2e30dba4e..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e521m1_20limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas32_2e521m1_20limbs/fecarry.v b/src/Specific/solinas32_2e521m1_20limbs/fecarry.v
deleted file mode 100644
index 8614a4d41..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e521m1_20limbs.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_2e521m1_20limbs/fecarryDisplay.v b/src/Specific/solinas32_2e521m1_20limbs/fecarryDisplay.v
deleted file mode 100644
index 795e35bc9..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e521m1_20limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas32_2e521m1_20limbs/femul.c b/src/Specific/solinas32_2e521m1_20limbs/femul.c
deleted file mode 100644
index 5d3dd9fd8..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/femul.c
+++ /dev/null
@@ -1,148 +0,0 @@
-static void femul(uint32_t out[20], const uint32_t in1[20], const uint32_t in2[20]) {
- { const uint32_t x40 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x78 = in2[19];
- { const uint32_t x79 = in2[18];
- { const uint32_t x77 = in2[17];
- { const uint32_t x75 = in2[16];
- { const uint32_t x73 = in2[15];
- { const uint32_t x71 = in2[14];
- { const uint32_t x69 = in2[13];
- { const uint32_t x67 = in2[12];
- { const uint32_t x65 = in2[11];
- { const uint32_t x63 = in2[10];
- { const uint32_t x61 = in2[9];
- { const uint32_t x59 = in2[8];
- { const uint32_t x57 = in2[7];
- { const uint32_t x55 = in2[6];
- { const uint32_t x53 = in2[5];
- { const uint32_t x51 = in2[4];
- { const uint32_t x49 = in2[3];
- { const uint32_t x47 = in2[2];
- { const uint32_t x45 = in2[1];
- { const uint32_t x43 = in2[0];
- { uint64_t x80 = (((uint64_t)x5 * x78) + ((0x2 * ((uint64_t)x7 * x79)) + ((0x2 * ((uint64_t)x9 * x77)) + ((0x2 * ((uint64_t)x11 * x75)) + ((0x2 * ((uint64_t)x13 * x73)) + ((0x2 * ((uint64_t)x15 * x71)) + ((0x2 * ((uint64_t)x17 * x69)) + ((0x2 * ((uint64_t)x19 * x67)) + ((0x2 * ((uint64_t)x21 * x65)) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + ((0x2 * ((uint64_t)x29 * x57)) + ((0x2 * ((uint64_t)x31 * x55)) + ((0x2 * ((uint64_t)x33 * x53)) + ((0x2 * ((uint64_t)x35 * x51)) + ((0x2 * ((uint64_t)x37 * x49)) + ((0x2 * ((uint64_t)x39 * x47)) + ((0x2 * ((uint64_t)x41 * x45)) + ((uint64_t)x40 * x43))))))))))))))))))));
- { uint64_t x81 = ((((uint64_t)x5 * x79) + ((0x2 * ((uint64_t)x7 * x77)) + ((0x2 * ((uint64_t)x9 * x75)) + ((0x2 * ((uint64_t)x11 * x73)) + ((0x2 * ((uint64_t)x13 * x71)) + ((0x2 * ((uint64_t)x15 * x69)) + ((0x2 * ((uint64_t)x17 * x67)) + ((0x2 * ((uint64_t)x19 * x65)) + ((0x2 * ((uint64_t)x21 * x63)) + ((0x2 * ((uint64_t)x23 * x61)) + ((0x2 * ((uint64_t)x25 * x59)) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + ((0x2 * ((uint64_t)x31 * x53)) + ((0x2 * ((uint64_t)x33 * x51)) + ((0x2 * ((uint64_t)x35 * x49)) + ((0x2 * ((uint64_t)x37 * x47)) + ((0x2 * ((uint64_t)x39 * x45)) + ((uint64_t)x41 * x43))))))))))))))))))) + ((uint64_t)x40 * x78));
- { uint64_t x82 = ((((uint64_t)x5 * x77) + ((0x2 * ((uint64_t)x7 * x75)) + ((0x2 * ((uint64_t)x9 * x73)) + ((0x2 * ((uint64_t)x11 * x71)) + ((0x2 * ((uint64_t)x13 * x69)) + ((0x2 * ((uint64_t)x15 * x67)) + ((0x2 * ((uint64_t)x17 * x65)) + ((0x2 * ((uint64_t)x19 * x63)) + ((0x2 * ((uint64_t)x21 * x61)) + ((0x2 * ((uint64_t)x23 * x59)) + ((0x2 * ((uint64_t)x25 * x57)) + ((0x2 * ((uint64_t)x27 * x55)) + ((0x2 * ((uint64_t)x29 * x53)) + ((0x2 * ((uint64_t)x31 * x51)) + ((0x2 * ((uint64_t)x33 * x49)) + ((0x2 * ((uint64_t)x35 * x47)) + ((0x2 * ((uint64_t)x37 * x45)) + ((uint64_t)x39 * x43)))))))))))))))))) + (((uint64_t)x41 * x78) + ((uint64_t)x40 * x79)));
- { uint64_t x83 = ((((uint64_t)x5 * x75) + ((0x2 * ((uint64_t)x7 * x73)) + ((0x2 * ((uint64_t)x9 * x71)) + ((0x2 * ((uint64_t)x11 * x69)) + ((0x2 * ((uint64_t)x13 * x67)) + ((0x2 * ((uint64_t)x15 * x65)) + ((0x2 * ((uint64_t)x17 * x63)) + ((0x2 * ((uint64_t)x19 * x61)) + ((0x2 * ((uint64_t)x21 * x59)) + ((0x2 * ((uint64_t)x23 * x57)) + ((0x2 * ((uint64_t)x25 * x55)) + ((0x2 * ((uint64_t)x27 * x53)) + ((0x2 * ((uint64_t)x29 * x51)) + ((0x2 * ((uint64_t)x31 * x49)) + ((0x2 * ((uint64_t)x33 * x47)) + ((0x2 * ((uint64_t)x35 * x45)) + ((uint64_t)x37 * x43))))))))))))))))) + (((uint64_t)x39 * x78) + (((uint64_t)x41 * x79) + ((uint64_t)x40 * x77))));
- { uint64_t x84 = ((((uint64_t)x5 * x73) + ((0x2 * ((uint64_t)x7 * x71)) + ((0x2 * ((uint64_t)x9 * x69)) + ((0x2 * ((uint64_t)x11 * x67)) + ((0x2 * ((uint64_t)x13 * x65)) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + ((0x2 * ((uint64_t)x21 * x57)) + ((0x2 * ((uint64_t)x23 * x55)) + ((0x2 * ((uint64_t)x25 * x53)) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + ((0x2 * ((uint64_t)x33 * x45)) + ((uint64_t)x35 * x43)))))))))))))))) + (((uint64_t)x37 * x78) + (((uint64_t)x39 * x79) + (((uint64_t)x41 * x77) + ((uint64_t)x40 * x75)))));
- { uint64_t x85 = ((((uint64_t)x5 * x71) + ((0x2 * ((uint64_t)x7 * x69)) + ((0x2 * ((uint64_t)x9 * x67)) + ((0x2 * ((uint64_t)x11 * x65)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((uint64_t)x33 * x43))))))))))))))) + (((uint64_t)x35 * x78) + (((uint64_t)x37 * x79) + (((uint64_t)x39 * x77) + (((uint64_t)x41 * x75) + ((uint64_t)x40 * x73))))));
- { uint64_t x86 = ((((uint64_t)x5 * x69) + ((0x2 * ((uint64_t)x7 * x67)) + ((0x2 * ((uint64_t)x9 * x65)) + ((0x2 * ((uint64_t)x11 * x63)) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + ((0x2 * ((uint64_t)x19 * x55)) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + ((uint64_t)x31 * x43)))))))))))))) + (((uint64_t)x33 * x78) + (((uint64_t)x35 * x79) + (((uint64_t)x37 * x77) + (((uint64_t)x39 * x75) + (((uint64_t)x41 * x73) + ((uint64_t)x40 * x71)))))));
- { uint64_t x87 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((uint64_t)x29 * x43))))))))))))) + (((uint64_t)x31 * x78) + (((uint64_t)x33 * x79) + (((uint64_t)x35 * x77) + (((uint64_t)x37 * x75) + (((uint64_t)x39 * x73) + (((uint64_t)x41 * x71) + ((uint64_t)x40 * x69))))))));
- { uint64_t x88 = ((((uint64_t)x5 * x65) + ((0x2 * ((uint64_t)x7 * x63)) + ((0x2 * ((uint64_t)x9 * x61)) + ((0x2 * ((uint64_t)x11 * x59)) + ((0x2 * ((uint64_t)x13 * x57)) + ((0x2 * ((uint64_t)x15 * x55)) + ((0x2 * ((uint64_t)x17 * x53)) + ((0x2 * ((uint64_t)x19 * x51)) + ((0x2 * ((uint64_t)x21 * x49)) + ((0x2 * ((uint64_t)x23 * x47)) + ((0x2 * ((uint64_t)x25 * x45)) + ((uint64_t)x27 * x43)))))))))))) + (((uint64_t)x29 * x78) + (((uint64_t)x31 * x79) + (((uint64_t)x33 * x77) + (((uint64_t)x35 * x75) + (((uint64_t)x37 * x73) + (((uint64_t)x39 * x71) + (((uint64_t)x41 * x69) + ((uint64_t)x40 * x67)))))))));
- { uint64_t x89 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + ((uint64_t)x25 * x43))))))))))) + (((uint64_t)x27 * x78) + (((uint64_t)x29 * x79) + (((uint64_t)x31 * x77) + (((uint64_t)x33 * x75) + (((uint64_t)x35 * x73) + (((uint64_t)x37 * x71) + (((uint64_t)x39 * x69) + (((uint64_t)x41 * x67) + ((uint64_t)x40 * x65))))))))));
- { uint64_t x90 = ((((uint64_t)x5 * x61) + ((0x2 * ((uint64_t)x7 * x59)) + ((0x2 * ((uint64_t)x9 * x57)) + ((0x2 * ((uint64_t)x11 * x55)) + ((0x2 * ((uint64_t)x13 * x53)) + ((0x2 * ((uint64_t)x15 * x51)) + ((0x2 * ((uint64_t)x17 * x49)) + ((0x2 * ((uint64_t)x19 * x47)) + ((0x2 * ((uint64_t)x21 * x45)) + ((uint64_t)x23 * x43)))))))))) + (((uint64_t)x25 * x78) + (((uint64_t)x27 * x79) + (((uint64_t)x29 * x77) + (((uint64_t)x31 * x75) + (((uint64_t)x33 * x73) + (((uint64_t)x35 * x71) + (((uint64_t)x37 * x69) + (((uint64_t)x39 * x67) + (((uint64_t)x41 * x65) + ((uint64_t)x40 * x63)))))))))));
- { uint64_t x91 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + ((uint64_t)x21 * x43))))))))) + (((uint64_t)x23 * x78) + (((uint64_t)x25 * x79) + (((uint64_t)x27 * x77) + (((uint64_t)x29 * x75) + (((uint64_t)x31 * x73) + (((uint64_t)x33 * x71) + (((uint64_t)x35 * x69) + (((uint64_t)x37 * x67) + (((uint64_t)x39 * x65) + (((uint64_t)x41 * x63) + ((uint64_t)x40 * x61))))))))))));
- { uint64_t x92 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((uint64_t)x19 * x43)))))))) + (((uint64_t)x21 * x78) + (((uint64_t)x23 * x79) + (((uint64_t)x25 * x77) + (((uint64_t)x27 * x75) + (((uint64_t)x29 * x73) + (((uint64_t)x31 * x71) + (((uint64_t)x33 * x69) + (((uint64_t)x35 * x67) + (((uint64_t)x37 * x65) + (((uint64_t)x39 * x63) + (((uint64_t)x41 * x61) + ((uint64_t)x40 * x59)))))))))))));
- { uint64_t x93 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((uint64_t)x17 * x43))))))) + (((uint64_t)x19 * x78) + (((uint64_t)x21 * x79) + (((uint64_t)x23 * x77) + (((uint64_t)x25 * x75) + (((uint64_t)x27 * x73) + (((uint64_t)x29 * x71) + (((uint64_t)x31 * x69) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + (((uint64_t)x37 * x63) + (((uint64_t)x39 * x61) + (((uint64_t)x41 * x59) + ((uint64_t)x40 * x57))))))))))))));
- { uint64_t x94 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + ((uint64_t)x15 * x43)))))) + (((uint64_t)x17 * x78) + (((uint64_t)x19 * x79) + (((uint64_t)x21 * x77) + (((uint64_t)x23 * x75) + (((uint64_t)x25 * x73) + (((uint64_t)x27 * x71) + (((uint64_t)x29 * x69) + (((uint64_t)x31 * x67) + (((uint64_t)x33 * x65) + (((uint64_t)x35 * x63) + (((uint64_t)x37 * x61) + (((uint64_t)x39 * x59) + (((uint64_t)x41 * x57) + ((uint64_t)x40 * x55)))))))))))))));
- { uint64_t x95 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((uint64_t)x13 * x43))))) + (((uint64_t)x15 * x78) + (((uint64_t)x17 * x79) + (((uint64_t)x19 * x77) + (((uint64_t)x21 * x75) + (((uint64_t)x23 * x73) + (((uint64_t)x25 * x71) + (((uint64_t)x27 * x69) + (((uint64_t)x29 * x67) + (((uint64_t)x31 * x65) + (((uint64_t)x33 * x63) + (((uint64_t)x35 * x61) + (((uint64_t)x37 * x59) + (((uint64_t)x39 * x57) + (((uint64_t)x41 * x55) + ((uint64_t)x40 * x53))))))))))))))));
- { uint64_t x96 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + ((uint64_t)x11 * x43)))) + (((uint64_t)x13 * x78) + (((uint64_t)x15 * x79) + (((uint64_t)x17 * x77) + (((uint64_t)x19 * x75) + (((uint64_t)x21 * x73) + (((uint64_t)x23 * x71) + (((uint64_t)x25 * x69) + (((uint64_t)x27 * x67) + (((uint64_t)x29 * x65) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + (((uint64_t)x35 * x59) + (((uint64_t)x37 * x57) + (((uint64_t)x39 * x55) + (((uint64_t)x41 * x53) + ((uint64_t)x40 * x51)))))))))))))))));
- { uint64_t x97 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((uint64_t)x9 * x43))) + (((uint64_t)x11 * x78) + (((uint64_t)x13 * x79) + (((uint64_t)x15 * x77) + (((uint64_t)x17 * x75) + (((uint64_t)x19 * x73) + (((uint64_t)x21 * x71) + (((uint64_t)x23 * x69) + (((uint64_t)x25 * x67) + (((uint64_t)x27 * x65) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + (((uint64_t)x33 * x59) + (((uint64_t)x35 * x57) + (((uint64_t)x37 * x55) + (((uint64_t)x39 * x53) + (((uint64_t)x41 * x51) + ((uint64_t)x40 * x49))))))))))))))))));
- { uint64_t x98 = ((((uint64_t)x5 * x45) + ((uint64_t)x7 * x43)) + (((uint64_t)x9 * x78) + (((uint64_t)x11 * x79) + (((uint64_t)x13 * x77) + (((uint64_t)x15 * x75) + (((uint64_t)x17 * x73) + (((uint64_t)x19 * x71) + (((uint64_t)x21 * x69) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + (((uint64_t)x37 * x53) + (((uint64_t)x39 * x51) + (((uint64_t)x41 * x49) + ((uint64_t)x40 * x47)))))))))))))))))));
- { uint64_t x99 = (((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x78)) + ((0x2 * ((uint64_t)x9 * x79)) + ((0x2 * ((uint64_t)x11 * x77)) + ((0x2 * ((uint64_t)x13 * x75)) + ((0x2 * ((uint64_t)x15 * x73)) + ((0x2 * ((uint64_t)x17 * x71)) + ((0x2 * ((uint64_t)x19 * x69)) + ((0x2 * ((uint64_t)x21 * x67)) + ((0x2 * ((uint64_t)x23 * x65)) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + ((0x2 * ((uint64_t)x33 * x55)) + ((0x2 * ((uint64_t)x35 * x53)) + ((0x2 * ((uint64_t)x37 * x51)) + ((0x2 * ((uint64_t)x39 * x49)) + ((0x2 * ((uint64_t)x41 * x47)) + (0x2 * ((uint64_t)x40 * x45)))))))))))))))))))));
- { uint64_t x100 = (x99 >> 0x1b);
- { uint32_t x101 = ((uint32_t)x99 & 0x7ffffff);
- { uint64_t x102 = (x100 + x98);
- { uint64_t x103 = (x102 >> 0x1a);
- { uint32_t x104 = ((uint32_t)x102 & 0x3ffffff);
- { uint64_t x105 = (x103 + x97);
- { uint64_t x106 = (x105 >> 0x1a);
- { uint32_t x107 = ((uint32_t)x105 & 0x3ffffff);
- { uint64_t x108 = (x106 + x96);
- { uint64_t x109 = (x108 >> 0x1a);
- { uint32_t x110 = ((uint32_t)x108 & 0x3ffffff);
- { uint64_t x111 = (x109 + x95);
- { uint64_t x112 = (x111 >> 0x1a);
- { uint32_t x113 = ((uint32_t)x111 & 0x3ffffff);
- { uint64_t x114 = (x112 + x94);
- { uint64_t x115 = (x114 >> 0x1a);
- { uint32_t x116 = ((uint32_t)x114 & 0x3ffffff);
- { uint64_t x117 = (x115 + x93);
- { uint64_t x118 = (x117 >> 0x1a);
- { uint32_t x119 = ((uint32_t)x117 & 0x3ffffff);
- { uint64_t x120 = (x118 + x92);
- { uint64_t x121 = (x120 >> 0x1a);
- { uint32_t x122 = ((uint32_t)x120 & 0x3ffffff);
- { uint64_t x123 = (x121 + x91);
- { uint64_t x124 = (x123 >> 0x1a);
- { uint32_t x125 = ((uint32_t)x123 & 0x3ffffff);
- { uint64_t x126 = (x124 + x90);
- { uint64_t x127 = (x126 >> 0x1a);
- { uint32_t x128 = ((uint32_t)x126 & 0x3ffffff);
- { uint64_t x129 = (x127 + x89);
- { uint64_t x130 = (x129 >> 0x1a);
- { uint32_t x131 = ((uint32_t)x129 & 0x3ffffff);
- { uint64_t x132 = (x130 + x88);
- { uint64_t x133 = (x132 >> 0x1a);
- { uint32_t x134 = ((uint32_t)x132 & 0x3ffffff);
- { uint64_t x135 = (x133 + x87);
- { uint64_t x136 = (x135 >> 0x1a);
- { uint32_t x137 = ((uint32_t)x135 & 0x3ffffff);
- { uint64_t x138 = (x136 + x86);
- { uint64_t x139 = (x138 >> 0x1a);
- { uint32_t x140 = ((uint32_t)x138 & 0x3ffffff);
- { uint64_t x141 = (x139 + x85);
- { uint64_t x142 = (x141 >> 0x1a);
- { uint32_t x143 = ((uint32_t)x141 & 0x3ffffff);
- { uint64_t x144 = (x142 + x84);
- { uint64_t x145 = (x144 >> 0x1a);
- { uint32_t x146 = ((uint32_t)x144 & 0x3ffffff);
- { uint64_t x147 = (x145 + x83);
- { uint64_t x148 = (x147 >> 0x1a);
- { uint32_t x149 = ((uint32_t)x147 & 0x3ffffff);
- { uint64_t x150 = (x148 + x82);
- { uint64_t x151 = (x150 >> 0x1a);
- { uint32_t x152 = ((uint32_t)x150 & 0x3ffffff);
- { uint64_t x153 = (x151 + x81);
- { uint64_t x154 = (x153 >> 0x1a);
- { uint32_t x155 = ((uint32_t)x153 & 0x3ffffff);
- { uint64_t x156 = (x154 + x80);
- { uint64_t x157 = (x156 >> 0x1a);
- { uint32_t x158 = ((uint32_t)x156 & 0x3ffffff);
- { uint64_t x159 = (x101 + x157);
- { uint32_t x160 = (uint32_t) (x159 >> 0x1b);
- { uint32_t x161 = ((uint32_t)x159 & 0x7ffffff);
- { uint32_t x162 = (x160 + x104);
- { uint32_t x163 = (x162 >> 0x1a);
- { uint32_t x164 = (x162 & 0x3ffffff);
- out[0] = x161;
- out[1] = x164;
- out[2] = (x163 + x107);
- out[3] = x110;
- out[4] = x113;
- out[5] = x116;
- out[6] = x119;
- out[7] = x122;
- out[8] = x125;
- out[9] = x128;
- out[10] = x131;
- out[11] = x134;
- out[12] = x137;
- out[13] = x140;
- out[14] = x143;
- out[15] = x146;
- out[16] = x149;
- out[17] = x152;
- out[18] = x155;
- out[19] = x158;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e521m1_20limbs/femul.v b/src/Specific/solinas32_2e521m1_20limbs/femul.v
deleted file mode 100644
index e900766cd..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e521m1_20limbs.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_2e521m1_20limbs/femulDisplay.log b/src/Specific/solinas32_2e521m1_20limbs/femulDisplay.log
deleted file mode 100644
index ef4833993..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/femulDisplay.log
+++ /dev/null
@@ -1,92 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x40, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x78, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43))%core,
- uint64_t x80 = (((uint64_t)x5 * x78) + ((0x2 * ((uint64_t)x7 * x79)) + ((0x2 * ((uint64_t)x9 * x77)) + ((0x2 * ((uint64_t)x11 * x75)) + ((0x2 * ((uint64_t)x13 * x73)) + ((0x2 * ((uint64_t)x15 * x71)) + ((0x2 * ((uint64_t)x17 * x69)) + ((0x2 * ((uint64_t)x19 * x67)) + ((0x2 * ((uint64_t)x21 * x65)) + ((0x2 * ((uint64_t)x23 * x63)) + ((0x2 * ((uint64_t)x25 * x61)) + ((0x2 * ((uint64_t)x27 * x59)) + ((0x2 * ((uint64_t)x29 * x57)) + ((0x2 * ((uint64_t)x31 * x55)) + ((0x2 * ((uint64_t)x33 * x53)) + ((0x2 * ((uint64_t)x35 * x51)) + ((0x2 * ((uint64_t)x37 * x49)) + ((0x2 * ((uint64_t)x39 * x47)) + ((0x2 * ((uint64_t)x41 * x45)) + ((uint64_t)x40 * x43))))))))))))))))))));
- uint64_t x81 = ((((uint64_t)x5 * x79) + ((0x2 * ((uint64_t)x7 * x77)) + ((0x2 * ((uint64_t)x9 * x75)) + ((0x2 * ((uint64_t)x11 * x73)) + ((0x2 * ((uint64_t)x13 * x71)) + ((0x2 * ((uint64_t)x15 * x69)) + ((0x2 * ((uint64_t)x17 * x67)) + ((0x2 * ((uint64_t)x19 * x65)) + ((0x2 * ((uint64_t)x21 * x63)) + ((0x2 * ((uint64_t)x23 * x61)) + ((0x2 * ((uint64_t)x25 * x59)) + ((0x2 * ((uint64_t)x27 * x57)) + ((0x2 * ((uint64_t)x29 * x55)) + ((0x2 * ((uint64_t)x31 * x53)) + ((0x2 * ((uint64_t)x33 * x51)) + ((0x2 * ((uint64_t)x35 * x49)) + ((0x2 * ((uint64_t)x37 * x47)) + ((0x2 * ((uint64_t)x39 * x45)) + ((uint64_t)x41 * x43))))))))))))))))))) + ((uint64_t)x40 * x78));
- uint64_t x82 = ((((uint64_t)x5 * x77) + ((0x2 * ((uint64_t)x7 * x75)) + ((0x2 * ((uint64_t)x9 * x73)) + ((0x2 * ((uint64_t)x11 * x71)) + ((0x2 * ((uint64_t)x13 * x69)) + ((0x2 * ((uint64_t)x15 * x67)) + ((0x2 * ((uint64_t)x17 * x65)) + ((0x2 * ((uint64_t)x19 * x63)) + ((0x2 * ((uint64_t)x21 * x61)) + ((0x2 * ((uint64_t)x23 * x59)) + ((0x2 * ((uint64_t)x25 * x57)) + ((0x2 * ((uint64_t)x27 * x55)) + ((0x2 * ((uint64_t)x29 * x53)) + ((0x2 * ((uint64_t)x31 * x51)) + ((0x2 * ((uint64_t)x33 * x49)) + ((0x2 * ((uint64_t)x35 * x47)) + ((0x2 * ((uint64_t)x37 * x45)) + ((uint64_t)x39 * x43)))))))))))))))))) + (((uint64_t)x41 * x78) + ((uint64_t)x40 * x79)));
- uint64_t x83 = ((((uint64_t)x5 * x75) + ((0x2 * ((uint64_t)x7 * x73)) + ((0x2 * ((uint64_t)x9 * x71)) + ((0x2 * ((uint64_t)x11 * x69)) + ((0x2 * ((uint64_t)x13 * x67)) + ((0x2 * ((uint64_t)x15 * x65)) + ((0x2 * ((uint64_t)x17 * x63)) + ((0x2 * ((uint64_t)x19 * x61)) + ((0x2 * ((uint64_t)x21 * x59)) + ((0x2 * ((uint64_t)x23 * x57)) + ((0x2 * ((uint64_t)x25 * x55)) + ((0x2 * ((uint64_t)x27 * x53)) + ((0x2 * ((uint64_t)x29 * x51)) + ((0x2 * ((uint64_t)x31 * x49)) + ((0x2 * ((uint64_t)x33 * x47)) + ((0x2 * ((uint64_t)x35 * x45)) + ((uint64_t)x37 * x43))))))))))))))))) + (((uint64_t)x39 * x78) + (((uint64_t)x41 * x79) + ((uint64_t)x40 * x77))));
- uint64_t x84 = ((((uint64_t)x5 * x73) + ((0x2 * ((uint64_t)x7 * x71)) + ((0x2 * ((uint64_t)x9 * x69)) + ((0x2 * ((uint64_t)x11 * x67)) + ((0x2 * ((uint64_t)x13 * x65)) + ((0x2 * ((uint64_t)x15 * x63)) + ((0x2 * ((uint64_t)x17 * x61)) + ((0x2 * ((uint64_t)x19 * x59)) + ((0x2 * ((uint64_t)x21 * x57)) + ((0x2 * ((uint64_t)x23 * x55)) + ((0x2 * ((uint64_t)x25 * x53)) + ((0x2 * ((uint64_t)x27 * x51)) + ((0x2 * ((uint64_t)x29 * x49)) + ((0x2 * ((uint64_t)x31 * x47)) + ((0x2 * ((uint64_t)x33 * x45)) + ((uint64_t)x35 * x43)))))))))))))))) + (((uint64_t)x37 * x78) + (((uint64_t)x39 * x79) + (((uint64_t)x41 * x77) + ((uint64_t)x40 * x75)))));
- uint64_t x85 = ((((uint64_t)x5 * x71) + ((0x2 * ((uint64_t)x7 * x69)) + ((0x2 * ((uint64_t)x9 * x67)) + ((0x2 * ((uint64_t)x11 * x65)) + ((0x2 * ((uint64_t)x13 * x63)) + ((0x2 * ((uint64_t)x15 * x61)) + ((0x2 * ((uint64_t)x17 * x59)) + ((0x2 * ((uint64_t)x19 * x57)) + ((0x2 * ((uint64_t)x21 * x55)) + ((0x2 * ((uint64_t)x23 * x53)) + ((0x2 * ((uint64_t)x25 * x51)) + ((0x2 * ((uint64_t)x27 * x49)) + ((0x2 * ((uint64_t)x29 * x47)) + ((0x2 * ((uint64_t)x31 * x45)) + ((uint64_t)x33 * x43))))))))))))))) + (((uint64_t)x35 * x78) + (((uint64_t)x37 * x79) + (((uint64_t)x39 * x77) + (((uint64_t)x41 * x75) + ((uint64_t)x40 * x73))))));
- uint64_t x86 = ((((uint64_t)x5 * x69) + ((0x2 * ((uint64_t)x7 * x67)) + ((0x2 * ((uint64_t)x9 * x65)) + ((0x2 * ((uint64_t)x11 * x63)) + ((0x2 * ((uint64_t)x13 * x61)) + ((0x2 * ((uint64_t)x15 * x59)) + ((0x2 * ((uint64_t)x17 * x57)) + ((0x2 * ((uint64_t)x19 * x55)) + ((0x2 * ((uint64_t)x21 * x53)) + ((0x2 * ((uint64_t)x23 * x51)) + ((0x2 * ((uint64_t)x25 * x49)) + ((0x2 * ((uint64_t)x27 * x47)) + ((0x2 * ((uint64_t)x29 * x45)) + ((uint64_t)x31 * x43)))))))))))))) + (((uint64_t)x33 * x78) + (((uint64_t)x35 * x79) + (((uint64_t)x37 * x77) + (((uint64_t)x39 * x75) + (((uint64_t)x41 * x73) + ((uint64_t)x40 * x71)))))));
- uint64_t x87 = ((((uint64_t)x5 * x67) + ((0x2 * ((uint64_t)x7 * x65)) + ((0x2 * ((uint64_t)x9 * x63)) + ((0x2 * ((uint64_t)x11 * x61)) + ((0x2 * ((uint64_t)x13 * x59)) + ((0x2 * ((uint64_t)x15 * x57)) + ((0x2 * ((uint64_t)x17 * x55)) + ((0x2 * ((uint64_t)x19 * x53)) + ((0x2 * ((uint64_t)x21 * x51)) + ((0x2 * ((uint64_t)x23 * x49)) + ((0x2 * ((uint64_t)x25 * x47)) + ((0x2 * ((uint64_t)x27 * x45)) + ((uint64_t)x29 * x43))))))))))))) + (((uint64_t)x31 * x78) + (((uint64_t)x33 * x79) + (((uint64_t)x35 * x77) + (((uint64_t)x37 * x75) + (((uint64_t)x39 * x73) + (((uint64_t)x41 * x71) + ((uint64_t)x40 * x69))))))));
- uint64_t x88 = ((((uint64_t)x5 * x65) + ((0x2 * ((uint64_t)x7 * x63)) + ((0x2 * ((uint64_t)x9 * x61)) + ((0x2 * ((uint64_t)x11 * x59)) + ((0x2 * ((uint64_t)x13 * x57)) + ((0x2 * ((uint64_t)x15 * x55)) + ((0x2 * ((uint64_t)x17 * x53)) + ((0x2 * ((uint64_t)x19 * x51)) + ((0x2 * ((uint64_t)x21 * x49)) + ((0x2 * ((uint64_t)x23 * x47)) + ((0x2 * ((uint64_t)x25 * x45)) + ((uint64_t)x27 * x43)))))))))))) + (((uint64_t)x29 * x78) + (((uint64_t)x31 * x79) + (((uint64_t)x33 * x77) + (((uint64_t)x35 * x75) + (((uint64_t)x37 * x73) + (((uint64_t)x39 * x71) + (((uint64_t)x41 * x69) + ((uint64_t)x40 * x67)))))))));
- uint64_t x89 = ((((uint64_t)x5 * x63) + ((0x2 * ((uint64_t)x7 * x61)) + ((0x2 * ((uint64_t)x9 * x59)) + ((0x2 * ((uint64_t)x11 * x57)) + ((0x2 * ((uint64_t)x13 * x55)) + ((0x2 * ((uint64_t)x15 * x53)) + ((0x2 * ((uint64_t)x17 * x51)) + ((0x2 * ((uint64_t)x19 * x49)) + ((0x2 * ((uint64_t)x21 * x47)) + ((0x2 * ((uint64_t)x23 * x45)) + ((uint64_t)x25 * x43))))))))))) + (((uint64_t)x27 * x78) + (((uint64_t)x29 * x79) + (((uint64_t)x31 * x77) + (((uint64_t)x33 * x75) + (((uint64_t)x35 * x73) + (((uint64_t)x37 * x71) + (((uint64_t)x39 * x69) + (((uint64_t)x41 * x67) + ((uint64_t)x40 * x65))))))))));
- uint64_t x90 = ((((uint64_t)x5 * x61) + ((0x2 * ((uint64_t)x7 * x59)) + ((0x2 * ((uint64_t)x9 * x57)) + ((0x2 * ((uint64_t)x11 * x55)) + ((0x2 * ((uint64_t)x13 * x53)) + ((0x2 * ((uint64_t)x15 * x51)) + ((0x2 * ((uint64_t)x17 * x49)) + ((0x2 * ((uint64_t)x19 * x47)) + ((0x2 * ((uint64_t)x21 * x45)) + ((uint64_t)x23 * x43)))))))))) + (((uint64_t)x25 * x78) + (((uint64_t)x27 * x79) + (((uint64_t)x29 * x77) + (((uint64_t)x31 * x75) + (((uint64_t)x33 * x73) + (((uint64_t)x35 * x71) + (((uint64_t)x37 * x69) + (((uint64_t)x39 * x67) + (((uint64_t)x41 * x65) + ((uint64_t)x40 * x63)))))))))));
- uint64_t x91 = ((((uint64_t)x5 * x59) + ((0x2 * ((uint64_t)x7 * x57)) + ((0x2 * ((uint64_t)x9 * x55)) + ((0x2 * ((uint64_t)x11 * x53)) + ((0x2 * ((uint64_t)x13 * x51)) + ((0x2 * ((uint64_t)x15 * x49)) + ((0x2 * ((uint64_t)x17 * x47)) + ((0x2 * ((uint64_t)x19 * x45)) + ((uint64_t)x21 * x43))))))))) + (((uint64_t)x23 * x78) + (((uint64_t)x25 * x79) + (((uint64_t)x27 * x77) + (((uint64_t)x29 * x75) + (((uint64_t)x31 * x73) + (((uint64_t)x33 * x71) + (((uint64_t)x35 * x69) + (((uint64_t)x37 * x67) + (((uint64_t)x39 * x65) + (((uint64_t)x41 * x63) + ((uint64_t)x40 * x61))))))))))));
- uint64_t x92 = ((((uint64_t)x5 * x57) + ((0x2 * ((uint64_t)x7 * x55)) + ((0x2 * ((uint64_t)x9 * x53)) + ((0x2 * ((uint64_t)x11 * x51)) + ((0x2 * ((uint64_t)x13 * x49)) + ((0x2 * ((uint64_t)x15 * x47)) + ((0x2 * ((uint64_t)x17 * x45)) + ((uint64_t)x19 * x43)))))))) + (((uint64_t)x21 * x78) + (((uint64_t)x23 * x79) + (((uint64_t)x25 * x77) + (((uint64_t)x27 * x75) + (((uint64_t)x29 * x73) + (((uint64_t)x31 * x71) + (((uint64_t)x33 * x69) + (((uint64_t)x35 * x67) + (((uint64_t)x37 * x65) + (((uint64_t)x39 * x63) + (((uint64_t)x41 * x61) + ((uint64_t)x40 * x59)))))))))))));
- uint64_t x93 = ((((uint64_t)x5 * x55) + ((0x2 * ((uint64_t)x7 * x53)) + ((0x2 * ((uint64_t)x9 * x51)) + ((0x2 * ((uint64_t)x11 * x49)) + ((0x2 * ((uint64_t)x13 * x47)) + ((0x2 * ((uint64_t)x15 * x45)) + ((uint64_t)x17 * x43))))))) + (((uint64_t)x19 * x78) + (((uint64_t)x21 * x79) + (((uint64_t)x23 * x77) + (((uint64_t)x25 * x75) + (((uint64_t)x27 * x73) + (((uint64_t)x29 * x71) + (((uint64_t)x31 * x69) + (((uint64_t)x33 * x67) + (((uint64_t)x35 * x65) + (((uint64_t)x37 * x63) + (((uint64_t)x39 * x61) + (((uint64_t)x41 * x59) + ((uint64_t)x40 * x57))))))))))))));
- uint64_t x94 = ((((uint64_t)x5 * x53) + ((0x2 * ((uint64_t)x7 * x51)) + ((0x2 * ((uint64_t)x9 * x49)) + ((0x2 * ((uint64_t)x11 * x47)) + ((0x2 * ((uint64_t)x13 * x45)) + ((uint64_t)x15 * x43)))))) + (((uint64_t)x17 * x78) + (((uint64_t)x19 * x79) + (((uint64_t)x21 * x77) + (((uint64_t)x23 * x75) + (((uint64_t)x25 * x73) + (((uint64_t)x27 * x71) + (((uint64_t)x29 * x69) + (((uint64_t)x31 * x67) + (((uint64_t)x33 * x65) + (((uint64_t)x35 * x63) + (((uint64_t)x37 * x61) + (((uint64_t)x39 * x59) + (((uint64_t)x41 * x57) + ((uint64_t)x40 * x55)))))))))))))));
- uint64_t x95 = ((((uint64_t)x5 * x51) + ((0x2 * ((uint64_t)x7 * x49)) + ((0x2 * ((uint64_t)x9 * x47)) + ((0x2 * ((uint64_t)x11 * x45)) + ((uint64_t)x13 * x43))))) + (((uint64_t)x15 * x78) + (((uint64_t)x17 * x79) + (((uint64_t)x19 * x77) + (((uint64_t)x21 * x75) + (((uint64_t)x23 * x73) + (((uint64_t)x25 * x71) + (((uint64_t)x27 * x69) + (((uint64_t)x29 * x67) + (((uint64_t)x31 * x65) + (((uint64_t)x33 * x63) + (((uint64_t)x35 * x61) + (((uint64_t)x37 * x59) + (((uint64_t)x39 * x57) + (((uint64_t)x41 * x55) + ((uint64_t)x40 * x53))))))))))))))));
- uint64_t x96 = ((((uint64_t)x5 * x49) + ((0x2 * ((uint64_t)x7 * x47)) + ((0x2 * ((uint64_t)x9 * x45)) + ((uint64_t)x11 * x43)))) + (((uint64_t)x13 * x78) + (((uint64_t)x15 * x79) + (((uint64_t)x17 * x77) + (((uint64_t)x19 * x75) + (((uint64_t)x21 * x73) + (((uint64_t)x23 * x71) + (((uint64_t)x25 * x69) + (((uint64_t)x27 * x67) + (((uint64_t)x29 * x65) + (((uint64_t)x31 * x63) + (((uint64_t)x33 * x61) + (((uint64_t)x35 * x59) + (((uint64_t)x37 * x57) + (((uint64_t)x39 * x55) + (((uint64_t)x41 * x53) + ((uint64_t)x40 * x51)))))))))))))))));
- uint64_t x97 = ((((uint64_t)x5 * x47) + ((0x2 * ((uint64_t)x7 * x45)) + ((uint64_t)x9 * x43))) + (((uint64_t)x11 * x78) + (((uint64_t)x13 * x79) + (((uint64_t)x15 * x77) + (((uint64_t)x17 * x75) + (((uint64_t)x19 * x73) + (((uint64_t)x21 * x71) + (((uint64_t)x23 * x69) + (((uint64_t)x25 * x67) + (((uint64_t)x27 * x65) + (((uint64_t)x29 * x63) + (((uint64_t)x31 * x61) + (((uint64_t)x33 * x59) + (((uint64_t)x35 * x57) + (((uint64_t)x37 * x55) + (((uint64_t)x39 * x53) + (((uint64_t)x41 * x51) + ((uint64_t)x40 * x49))))))))))))))))));
- uint64_t x98 = ((((uint64_t)x5 * x45) + ((uint64_t)x7 * x43)) + (((uint64_t)x9 * x78) + (((uint64_t)x11 * x79) + (((uint64_t)x13 * x77) + (((uint64_t)x15 * x75) + (((uint64_t)x17 * x73) + (((uint64_t)x19 * x71) + (((uint64_t)x21 * x69) + (((uint64_t)x23 * x67) + (((uint64_t)x25 * x65) + (((uint64_t)x27 * x63) + (((uint64_t)x29 * x61) + (((uint64_t)x31 * x59) + (((uint64_t)x33 * x57) + (((uint64_t)x35 * x55) + (((uint64_t)x37 * x53) + (((uint64_t)x39 * x51) + (((uint64_t)x41 * x49) + ((uint64_t)x40 * x47)))))))))))))))))));
- uint64_t x99 = (((uint64_t)x5 * x43) + ((0x2 * ((uint64_t)x7 * x78)) + ((0x2 * ((uint64_t)x9 * x79)) + ((0x2 * ((uint64_t)x11 * x77)) + ((0x2 * ((uint64_t)x13 * x75)) + ((0x2 * ((uint64_t)x15 * x73)) + ((0x2 * ((uint64_t)x17 * x71)) + ((0x2 * ((uint64_t)x19 * x69)) + ((0x2 * ((uint64_t)x21 * x67)) + ((0x2 * ((uint64_t)x23 * x65)) + ((0x2 * ((uint64_t)x25 * x63)) + ((0x2 * ((uint64_t)x27 * x61)) + ((0x2 * ((uint64_t)x29 * x59)) + ((0x2 * ((uint64_t)x31 * x57)) + ((0x2 * ((uint64_t)x33 * x55)) + ((0x2 * ((uint64_t)x35 * x53)) + ((0x2 * ((uint64_t)x37 * x51)) + ((0x2 * ((uint64_t)x39 * x49)) + ((0x2 * ((uint64_t)x41 * x47)) + (0x2 * ((uint64_t)x40 * x45)))))))))))))))))))));
- uint64_t x100 = (x99 >> 0x1b);
- uint32_t x101 = ((uint32_t)x99 & 0x7ffffff);
- uint64_t x102 = (x100 + x98);
- uint64_t x103 = (x102 >> 0x1a);
- uint32_t x104 = ((uint32_t)x102 & 0x3ffffff);
- uint64_t x105 = (x103 + x97);
- uint64_t x106 = (x105 >> 0x1a);
- uint32_t x107 = ((uint32_t)x105 & 0x3ffffff);
- uint64_t x108 = (x106 + x96);
- uint64_t x109 = (x108 >> 0x1a);
- uint32_t x110 = ((uint32_t)x108 & 0x3ffffff);
- uint64_t x111 = (x109 + x95);
- uint64_t x112 = (x111 >> 0x1a);
- uint32_t x113 = ((uint32_t)x111 & 0x3ffffff);
- uint64_t x114 = (x112 + x94);
- uint64_t x115 = (x114 >> 0x1a);
- uint32_t x116 = ((uint32_t)x114 & 0x3ffffff);
- uint64_t x117 = (x115 + x93);
- uint64_t x118 = (x117 >> 0x1a);
- uint32_t x119 = ((uint32_t)x117 & 0x3ffffff);
- uint64_t x120 = (x118 + x92);
- uint64_t x121 = (x120 >> 0x1a);
- uint32_t x122 = ((uint32_t)x120 & 0x3ffffff);
- uint64_t x123 = (x121 + x91);
- uint64_t x124 = (x123 >> 0x1a);
- uint32_t x125 = ((uint32_t)x123 & 0x3ffffff);
- uint64_t x126 = (x124 + x90);
- uint64_t x127 = (x126 >> 0x1a);
- uint32_t x128 = ((uint32_t)x126 & 0x3ffffff);
- uint64_t x129 = (x127 + x89);
- uint64_t x130 = (x129 >> 0x1a);
- uint32_t x131 = ((uint32_t)x129 & 0x3ffffff);
- uint64_t x132 = (x130 + x88);
- uint64_t x133 = (x132 >> 0x1a);
- uint32_t x134 = ((uint32_t)x132 & 0x3ffffff);
- uint64_t x135 = (x133 + x87);
- uint64_t x136 = (x135 >> 0x1a);
- uint32_t x137 = ((uint32_t)x135 & 0x3ffffff);
- uint64_t x138 = (x136 + x86);
- uint64_t x139 = (x138 >> 0x1a);
- uint32_t x140 = ((uint32_t)x138 & 0x3ffffff);
- uint64_t x141 = (x139 + x85);
- uint64_t x142 = (x141 >> 0x1a);
- uint32_t x143 = ((uint32_t)x141 & 0x3ffffff);
- uint64_t x144 = (x142 + x84);
- uint64_t x145 = (x144 >> 0x1a);
- uint32_t x146 = ((uint32_t)x144 & 0x3ffffff);
- uint64_t x147 = (x145 + x83);
- uint64_t x148 = (x147 >> 0x1a);
- uint32_t x149 = ((uint32_t)x147 & 0x3ffffff);
- uint64_t x150 = (x148 + x82);
- uint64_t x151 = (x150 >> 0x1a);
- uint32_t x152 = ((uint32_t)x150 & 0x3ffffff);
- uint64_t x153 = (x151 + x81);
- uint64_t x154 = (x153 >> 0x1a);
- uint32_t x155 = ((uint32_t)x153 & 0x3ffffff);
- uint64_t x156 = (x154 + x80);
- uint64_t x157 = (x156 >> 0x1a);
- uint32_t x158 = ((uint32_t)x156 & 0x3ffffff);
- uint64_t x159 = (x101 + x157);
- uint32_t x160 = (uint32_t) (x159 >> 0x1b);
- uint32_t x161 = ((uint32_t)x159 & 0x7ffffff);
- uint32_t x162 = (x160 + x104);
- uint32_t x163 = (x162 >> 0x1a);
- uint32_t x164 = (x162 & 0x3ffffff);
- return (Return x158, Return x155, Return x152, Return x149, Return x146, Return x143, Return x140, Return x137, Return x134, Return x131, Return x128, Return x125, Return x122, Return x119, Return x116, Return x113, Return x110, (x163 + x107), Return x164, Return x161))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e521m1_20limbs/femulDisplay.v b/src/Specific/solinas32_2e521m1_20limbs/femulDisplay.v
deleted file mode 100644
index be8d9b30e..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e521m1_20limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas32_2e521m1_20limbs/fesquare.c b/src/Specific/solinas32_2e521m1_20limbs/fesquare.c
deleted file mode 100644
index fc2e62bc4..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/fesquare.c
+++ /dev/null
@@ -1,128 +0,0 @@
-static void fesquare(uint32_t out[20], const uint32_t in1[20]) {
- { const uint32_t x37 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x39 = (((uint64_t)x2 * x37) + ((0x2 * ((uint64_t)x4 * x38)) + ((0x2 * ((uint64_t)x6 * x36)) + ((0x2 * ((uint64_t)x8 * x34)) + ((0x2 * ((uint64_t)x10 * x32)) + ((0x2 * ((uint64_t)x12 * x30)) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + ((0x2 * ((uint64_t)x18 * x24)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((0x2 * ((uint64_t)x24 * x18)) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + ((0x2 * ((uint64_t)x30 * x12)) + ((0x2 * ((uint64_t)x32 * x10)) + ((0x2 * ((uint64_t)x34 * x8)) + ((0x2 * ((uint64_t)x36 * x6)) + ((0x2 * ((uint64_t)x38 * x4)) + ((uint64_t)x37 * x2))))))))))))))))))));
- { uint64_t x40 = ((((uint64_t)x2 * x38) + ((0x2 * ((uint64_t)x4 * x36)) + ((0x2 * ((uint64_t)x6 * x34)) + ((0x2 * ((uint64_t)x8 * x32)) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + ((0x2 * ((uint64_t)x18 * x22)) + ((0x2 * ((uint64_t)x20 * x20)) + ((0x2 * ((uint64_t)x22 * x18)) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + ((0x2 * ((uint64_t)x32 * x8)) + ((0x2 * ((uint64_t)x34 * x6)) + ((0x2 * ((uint64_t)x36 * x4)) + ((uint64_t)x38 * x2))))))))))))))))))) + ((uint64_t)x37 * x37));
- { uint64_t x41 = ((((uint64_t)x2 * x36) + ((0x2 * ((uint64_t)x4 * x34)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x36 * x2)))))))))))))))))) + (((uint64_t)x38 * x37) + ((uint64_t)x37 * x38)));
- { uint64_t x42 = ((((uint64_t)x2 * x34) + ((0x2 * ((uint64_t)x4 * x32)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x34 * x2))))))))))))))))) + (((uint64_t)x36 * x37) + (((uint64_t)x38 * x38) + ((uint64_t)x37 * x36))));
- { uint64_t x43 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (((uint64_t)x34 * x37) + (((uint64_t)x36 * x38) + (((uint64_t)x38 * x36) + ((uint64_t)x37 * x34)))));
- { uint64_t x44 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + ((0x2 * ((uint64_t)x6 * x26)) + ((0x2 * ((uint64_t)x8 * x24)) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + ((0x2 * ((uint64_t)x24 * x8)) + ((0x2 * ((uint64_t)x26 * x6)) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (((uint64_t)x32 * x37) + (((uint64_t)x34 * x38) + (((uint64_t)x36 * x36) + (((uint64_t)x38 * x34) + ((uint64_t)x37 * x32))))));
- { uint64_t x45 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (((uint64_t)x30 * x37) + (((uint64_t)x32 * x38) + (((uint64_t)x34 * x36) + (((uint64_t)x36 * x34) + (((uint64_t)x38 * x32) + ((uint64_t)x37 * x30)))))));
- { uint64_t x46 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (((uint64_t)x28 * x37) + (((uint64_t)x30 * x38) + (((uint64_t)x32 * x36) + (((uint64_t)x34 * x34) + (((uint64_t)x36 * x32) + (((uint64_t)x38 * x30) + ((uint64_t)x37 * x28))))))));
- { uint64_t x47 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (((uint64_t)x26 * x37) + (((uint64_t)x28 * x38) + (((uint64_t)x30 * x36) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + (((uint64_t)x36 * x30) + (((uint64_t)x38 * x28) + ((uint64_t)x37 * x26)))))))));
- { uint64_t x48 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (((uint64_t)x24 * x37) + (((uint64_t)x26 * x38) + (((uint64_t)x28 * x36) + (((uint64_t)x30 * x34) + (((uint64_t)x32 * x32) + (((uint64_t)x34 * x30) + (((uint64_t)x36 * x28) + (((uint64_t)x38 * x26) + ((uint64_t)x37 * x24))))))))));
- { uint64_t x49 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (((uint64_t)x22 * x37) + (((uint64_t)x24 * x38) + (((uint64_t)x26 * x36) + (((uint64_t)x28 * x34) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + (((uint64_t)x34 * x28) + (((uint64_t)x36 * x26) + (((uint64_t)x38 * x24) + ((uint64_t)x37 * x22)))))))))));
- { uint64_t x50 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (((uint64_t)x20 * x37) + (((uint64_t)x22 * x38) + (((uint64_t)x24 * x36) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + (((uint64_t)x30 * x30) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + (((uint64_t)x36 * x24) + (((uint64_t)x38 * x22) + ((uint64_t)x37 * x20))))))))))));
- { uint64_t x51 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (((uint64_t)x18 * x37) + (((uint64_t)x20 * x38) + (((uint64_t)x22 * x36) + (((uint64_t)x24 * x34) + (((uint64_t)x26 * x32) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (((uint64_t)x32 * x26) + (((uint64_t)x34 * x24) + (((uint64_t)x36 * x22) + (((uint64_t)x38 * x20) + ((uint64_t)x37 * x18)))))))))))));
- { uint64_t x52 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (((uint64_t)x16 * x37) + (((uint64_t)x18 * x38) + (((uint64_t)x20 * x36) + (((uint64_t)x22 * x34) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + (((uint64_t)x34 * x22) + (((uint64_t)x36 * x20) + (((uint64_t)x38 * x18) + ((uint64_t)x37 * x16))))))))))))));
- { uint64_t x53 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (((uint64_t)x14 * x37) + (((uint64_t)x16 * x38) + (((uint64_t)x18 * x36) + (((uint64_t)x20 * x34) + (((uint64_t)x22 * x32) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + (((uint64_t)x32 * x22) + (((uint64_t)x34 * x20) + (((uint64_t)x36 * x18) + (((uint64_t)x38 * x16) + ((uint64_t)x37 * x14)))))))))))))));
- { uint64_t x54 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (((uint64_t)x12 * x37) + (((uint64_t)x14 * x38) + (((uint64_t)x16 * x36) + (((uint64_t)x18 * x34) + (((uint64_t)x20 * x32) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + (((uint64_t)x32 * x20) + (((uint64_t)x34 * x18) + (((uint64_t)x36 * x16) + (((uint64_t)x38 * x14) + ((uint64_t)x37 * x12))))))))))))))));
- { uint64_t x55 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (((uint64_t)x10 * x37) + (((uint64_t)x12 * x38) + (((uint64_t)x14 * x36) + (((uint64_t)x16 * x34) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + (((uint64_t)x34 * x16) + (((uint64_t)x36 * x14) + (((uint64_t)x38 * x12) + ((uint64_t)x37 * x10)))))))))))))))));
- { uint64_t x56 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (((uint64_t)x8 * x37) + (((uint64_t)x10 * x38) + (((uint64_t)x12 * x36) + (((uint64_t)x14 * x34) + (((uint64_t)x16 * x32) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + (((uint64_t)x32 * x16) + (((uint64_t)x34 * x14) + (((uint64_t)x36 * x12) + (((uint64_t)x38 * x10) + ((uint64_t)x37 * x8))))))))))))))))));
- { uint64_t x57 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x6 * x37) + (((uint64_t)x8 * x38) + (((uint64_t)x10 * x36) + (((uint64_t)x12 * x34) + (((uint64_t)x14 * x32) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + (((uint64_t)x32 * x14) + (((uint64_t)x34 * x12) + (((uint64_t)x36 * x10) + (((uint64_t)x38 * x8) + ((uint64_t)x37 * x6)))))))))))))))))));
- { uint64_t x58 = (((uint64_t)x2 * x2) + ((0x2 * ((uint64_t)x4 * x37)) + ((0x2 * ((uint64_t)x6 * x38)) + ((0x2 * ((uint64_t)x8 * x36)) + ((0x2 * ((uint64_t)x10 * x34)) + ((0x2 * ((uint64_t)x12 * x32)) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + ((0x2 * ((uint64_t)x22 * x22)) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + ((0x2 * ((uint64_t)x32 * x12)) + ((0x2 * ((uint64_t)x34 * x10)) + ((0x2 * ((uint64_t)x36 * x8)) + ((0x2 * ((uint64_t)x38 * x6)) + (0x2 * ((uint64_t)x37 * x4)))))))))))))))))))));
- { uint64_t x59 = (x58 >> 0x1b);
- { uint32_t x60 = ((uint32_t)x58 & 0x7ffffff);
- { uint64_t x61 = (x59 + x57);
- { uint64_t x62 = (x61 >> 0x1a);
- { uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- { uint64_t x64 = (x62 + x56);
- { uint64_t x65 = (x64 >> 0x1a);
- { uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- { uint64_t x67 = (x65 + x55);
- { uint64_t x68 = (x67 >> 0x1a);
- { uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- { uint64_t x70 = (x68 + x54);
- { uint64_t x71 = (x70 >> 0x1a);
- { uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- { uint64_t x73 = (x71 + x53);
- { uint64_t x74 = (x73 >> 0x1a);
- { uint32_t x75 = ((uint32_t)x73 & 0x3ffffff);
- { uint64_t x76 = (x74 + x52);
- { uint64_t x77 = (x76 >> 0x1a);
- { uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- { uint64_t x79 = (x77 + x51);
- { uint64_t x80 = (x79 >> 0x1a);
- { uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- { uint64_t x82 = (x80 + x50);
- { uint64_t x83 = (x82 >> 0x1a);
- { uint32_t x84 = ((uint32_t)x82 & 0x3ffffff);
- { uint64_t x85 = (x83 + x49);
- { uint64_t x86 = (x85 >> 0x1a);
- { uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- { uint64_t x88 = (x86 + x48);
- { uint64_t x89 = (x88 >> 0x1a);
- { uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- { uint64_t x91 = (x89 + x47);
- { uint64_t x92 = (x91 >> 0x1a);
- { uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- { uint64_t x94 = (x92 + x46);
- { uint64_t x95 = (x94 >> 0x1a);
- { uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- { uint64_t x97 = (x95 + x45);
- { uint64_t x98 = (x97 >> 0x1a);
- { uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- { uint64_t x100 = (x98 + x44);
- { uint64_t x101 = (x100 >> 0x1a);
- { uint32_t x102 = ((uint32_t)x100 & 0x3ffffff);
- { uint64_t x103 = (x101 + x43);
- { uint64_t x104 = (x103 >> 0x1a);
- { uint32_t x105 = ((uint32_t)x103 & 0x3ffffff);
- { uint64_t x106 = (x104 + x42);
- { uint64_t x107 = (x106 >> 0x1a);
- { uint32_t x108 = ((uint32_t)x106 & 0x3ffffff);
- { uint64_t x109 = (x107 + x41);
- { uint64_t x110 = (x109 >> 0x1a);
- { uint32_t x111 = ((uint32_t)x109 & 0x3ffffff);
- { uint64_t x112 = (x110 + x40);
- { uint64_t x113 = (x112 >> 0x1a);
- { uint32_t x114 = ((uint32_t)x112 & 0x3ffffff);
- { uint64_t x115 = (x113 + x39);
- { uint64_t x116 = (x115 >> 0x1a);
- { uint32_t x117 = ((uint32_t)x115 & 0x3ffffff);
- { uint64_t x118 = (x60 + x116);
- { uint32_t x119 = (uint32_t) (x118 >> 0x1b);
- { uint32_t x120 = ((uint32_t)x118 & 0x7ffffff);
- { uint32_t x121 = (x119 + x63);
- { uint32_t x122 = (x121 >> 0x1a);
- { uint32_t x123 = (x121 & 0x3ffffff);
- out[0] = x120;
- out[1] = x123;
- out[2] = (x122 + x66);
- out[3] = x69;
- out[4] = x72;
- out[5] = x75;
- out[6] = x78;
- out[7] = x81;
- out[8] = x84;
- out[9] = x87;
- out[10] = x90;
- out[11] = x93;
- out[12] = x96;
- out[13] = x99;
- out[14] = x102;
- out[15] = x105;
- out[16] = x108;
- out[17] = x111;
- out[18] = x114;
- out[19] = x117;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e521m1_20limbs/fesquare.v b/src/Specific/solinas32_2e521m1_20limbs/fesquare.v
deleted file mode 100644
index 39838ab15..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e521m1_20limbs.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_2e521m1_20limbs/fesquareDisplay.log b/src/Specific/solinas32_2e521m1_20limbs/fesquareDisplay.log
deleted file mode 100644
index eeef1dab4..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,92 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x37, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x39 = (((uint64_t)x2 * x37) + ((0x2 * ((uint64_t)x4 * x38)) + ((0x2 * ((uint64_t)x6 * x36)) + ((0x2 * ((uint64_t)x8 * x34)) + ((0x2 * ((uint64_t)x10 * x32)) + ((0x2 * ((uint64_t)x12 * x30)) + ((0x2 * ((uint64_t)x14 * x28)) + ((0x2 * ((uint64_t)x16 * x26)) + ((0x2 * ((uint64_t)x18 * x24)) + ((0x2 * ((uint64_t)x20 * x22)) + ((0x2 * ((uint64_t)x22 * x20)) + ((0x2 * ((uint64_t)x24 * x18)) + ((0x2 * ((uint64_t)x26 * x16)) + ((0x2 * ((uint64_t)x28 * x14)) + ((0x2 * ((uint64_t)x30 * x12)) + ((0x2 * ((uint64_t)x32 * x10)) + ((0x2 * ((uint64_t)x34 * x8)) + ((0x2 * ((uint64_t)x36 * x6)) + ((0x2 * ((uint64_t)x38 * x4)) + ((uint64_t)x37 * x2))))))))))))))))))));
- uint64_t x40 = ((((uint64_t)x2 * x38) + ((0x2 * ((uint64_t)x4 * x36)) + ((0x2 * ((uint64_t)x6 * x34)) + ((0x2 * ((uint64_t)x8 * x32)) + ((0x2 * ((uint64_t)x10 * x30)) + ((0x2 * ((uint64_t)x12 * x28)) + ((0x2 * ((uint64_t)x14 * x26)) + ((0x2 * ((uint64_t)x16 * x24)) + ((0x2 * ((uint64_t)x18 * x22)) + ((0x2 * ((uint64_t)x20 * x20)) + ((0x2 * ((uint64_t)x22 * x18)) + ((0x2 * ((uint64_t)x24 * x16)) + ((0x2 * ((uint64_t)x26 * x14)) + ((0x2 * ((uint64_t)x28 * x12)) + ((0x2 * ((uint64_t)x30 * x10)) + ((0x2 * ((uint64_t)x32 * x8)) + ((0x2 * ((uint64_t)x34 * x6)) + ((0x2 * ((uint64_t)x36 * x4)) + ((uint64_t)x38 * x2))))))))))))))))))) + ((uint64_t)x37 * x37));
- uint64_t x41 = ((((uint64_t)x2 * x36) + ((0x2 * ((uint64_t)x4 * x34)) + ((0x2 * ((uint64_t)x6 * x32)) + ((0x2 * ((uint64_t)x8 * x30)) + ((0x2 * ((uint64_t)x10 * x28)) + ((0x2 * ((uint64_t)x12 * x26)) + ((0x2 * ((uint64_t)x14 * x24)) + ((0x2 * ((uint64_t)x16 * x22)) + ((0x2 * ((uint64_t)x18 * x20)) + ((0x2 * ((uint64_t)x20 * x18)) + ((0x2 * ((uint64_t)x22 * x16)) + ((0x2 * ((uint64_t)x24 * x14)) + ((0x2 * ((uint64_t)x26 * x12)) + ((0x2 * ((uint64_t)x28 * x10)) + ((0x2 * ((uint64_t)x30 * x8)) + ((0x2 * ((uint64_t)x32 * x6)) + ((0x2 * ((uint64_t)x34 * x4)) + ((uint64_t)x36 * x2)))))))))))))))))) + (((uint64_t)x38 * x37) + ((uint64_t)x37 * x38)));
- uint64_t x42 = ((((uint64_t)x2 * x34) + ((0x2 * ((uint64_t)x4 * x32)) + ((0x2 * ((uint64_t)x6 * x30)) + ((0x2 * ((uint64_t)x8 * x28)) + ((0x2 * ((uint64_t)x10 * x26)) + ((0x2 * ((uint64_t)x12 * x24)) + ((0x2 * ((uint64_t)x14 * x22)) + ((0x2 * ((uint64_t)x16 * x20)) + ((0x2 * ((uint64_t)x18 * x18)) + ((0x2 * ((uint64_t)x20 * x16)) + ((0x2 * ((uint64_t)x22 * x14)) + ((0x2 * ((uint64_t)x24 * x12)) + ((0x2 * ((uint64_t)x26 * x10)) + ((0x2 * ((uint64_t)x28 * x8)) + ((0x2 * ((uint64_t)x30 * x6)) + ((0x2 * ((uint64_t)x32 * x4)) + ((uint64_t)x34 * x2))))))))))))))))) + (((uint64_t)x36 * x37) + (((uint64_t)x38 * x38) + ((uint64_t)x37 * x36))));
- uint64_t x43 = ((((uint64_t)x2 * x32) + ((0x2 * ((uint64_t)x4 * x30)) + ((0x2 * ((uint64_t)x6 * x28)) + ((0x2 * ((uint64_t)x8 * x26)) + ((0x2 * ((uint64_t)x10 * x24)) + ((0x2 * ((uint64_t)x12 * x22)) + ((0x2 * ((uint64_t)x14 * x20)) + ((0x2 * ((uint64_t)x16 * x18)) + ((0x2 * ((uint64_t)x18 * x16)) + ((0x2 * ((uint64_t)x20 * x14)) + ((0x2 * ((uint64_t)x22 * x12)) + ((0x2 * ((uint64_t)x24 * x10)) + ((0x2 * ((uint64_t)x26 * x8)) + ((0x2 * ((uint64_t)x28 * x6)) + ((0x2 * ((uint64_t)x30 * x4)) + ((uint64_t)x32 * x2)))))))))))))))) + (((uint64_t)x34 * x37) + (((uint64_t)x36 * x38) + (((uint64_t)x38 * x36) + ((uint64_t)x37 * x34)))));
- uint64_t x44 = ((((uint64_t)x2 * x30) + ((0x2 * ((uint64_t)x4 * x28)) + ((0x2 * ((uint64_t)x6 * x26)) + ((0x2 * ((uint64_t)x8 * x24)) + ((0x2 * ((uint64_t)x10 * x22)) + ((0x2 * ((uint64_t)x12 * x20)) + ((0x2 * ((uint64_t)x14 * x18)) + ((0x2 * ((uint64_t)x16 * x16)) + ((0x2 * ((uint64_t)x18 * x14)) + ((0x2 * ((uint64_t)x20 * x12)) + ((0x2 * ((uint64_t)x22 * x10)) + ((0x2 * ((uint64_t)x24 * x8)) + ((0x2 * ((uint64_t)x26 * x6)) + ((0x2 * ((uint64_t)x28 * x4)) + ((uint64_t)x30 * x2))))))))))))))) + (((uint64_t)x32 * x37) + (((uint64_t)x34 * x38) + (((uint64_t)x36 * x36) + (((uint64_t)x38 * x34) + ((uint64_t)x37 * x32))))));
- uint64_t x45 = ((((uint64_t)x2 * x28) + ((0x2 * ((uint64_t)x4 * x26)) + ((0x2 * ((uint64_t)x6 * x24)) + ((0x2 * ((uint64_t)x8 * x22)) + ((0x2 * ((uint64_t)x10 * x20)) + ((0x2 * ((uint64_t)x12 * x18)) + ((0x2 * ((uint64_t)x14 * x16)) + ((0x2 * ((uint64_t)x16 * x14)) + ((0x2 * ((uint64_t)x18 * x12)) + ((0x2 * ((uint64_t)x20 * x10)) + ((0x2 * ((uint64_t)x22 * x8)) + ((0x2 * ((uint64_t)x24 * x6)) + ((0x2 * ((uint64_t)x26 * x4)) + ((uint64_t)x28 * x2)))))))))))))) + (((uint64_t)x30 * x37) + (((uint64_t)x32 * x38) + (((uint64_t)x34 * x36) + (((uint64_t)x36 * x34) + (((uint64_t)x38 * x32) + ((uint64_t)x37 * x30)))))));
- uint64_t x46 = ((((uint64_t)x2 * x26) + ((0x2 * ((uint64_t)x4 * x24)) + ((0x2 * ((uint64_t)x6 * x22)) + ((0x2 * ((uint64_t)x8 * x20)) + ((0x2 * ((uint64_t)x10 * x18)) + ((0x2 * ((uint64_t)x12 * x16)) + ((0x2 * ((uint64_t)x14 * x14)) + ((0x2 * ((uint64_t)x16 * x12)) + ((0x2 * ((uint64_t)x18 * x10)) + ((0x2 * ((uint64_t)x20 * x8)) + ((0x2 * ((uint64_t)x22 * x6)) + ((0x2 * ((uint64_t)x24 * x4)) + ((uint64_t)x26 * x2))))))))))))) + (((uint64_t)x28 * x37) + (((uint64_t)x30 * x38) + (((uint64_t)x32 * x36) + (((uint64_t)x34 * x34) + (((uint64_t)x36 * x32) + (((uint64_t)x38 * x30) + ((uint64_t)x37 * x28))))))));
- uint64_t x47 = ((((uint64_t)x2 * x24) + ((0x2 * ((uint64_t)x4 * x22)) + ((0x2 * ((uint64_t)x6 * x20)) + ((0x2 * ((uint64_t)x8 * x18)) + ((0x2 * ((uint64_t)x10 * x16)) + ((0x2 * ((uint64_t)x12 * x14)) + ((0x2 * ((uint64_t)x14 * x12)) + ((0x2 * ((uint64_t)x16 * x10)) + ((0x2 * ((uint64_t)x18 * x8)) + ((0x2 * ((uint64_t)x20 * x6)) + ((0x2 * ((uint64_t)x22 * x4)) + ((uint64_t)x24 * x2)))))))))))) + (((uint64_t)x26 * x37) + (((uint64_t)x28 * x38) + (((uint64_t)x30 * x36) + (((uint64_t)x32 * x34) + (((uint64_t)x34 * x32) + (((uint64_t)x36 * x30) + (((uint64_t)x38 * x28) + ((uint64_t)x37 * x26)))))))));
- uint64_t x48 = ((((uint64_t)x2 * x22) + ((0x2 * ((uint64_t)x4 * x20)) + ((0x2 * ((uint64_t)x6 * x18)) + ((0x2 * ((uint64_t)x8 * x16)) + ((0x2 * ((uint64_t)x10 * x14)) + ((0x2 * ((uint64_t)x12 * x12)) + ((0x2 * ((uint64_t)x14 * x10)) + ((0x2 * ((uint64_t)x16 * x8)) + ((0x2 * ((uint64_t)x18 * x6)) + ((0x2 * ((uint64_t)x20 * x4)) + ((uint64_t)x22 * x2))))))))))) + (((uint64_t)x24 * x37) + (((uint64_t)x26 * x38) + (((uint64_t)x28 * x36) + (((uint64_t)x30 * x34) + (((uint64_t)x32 * x32) + (((uint64_t)x34 * x30) + (((uint64_t)x36 * x28) + (((uint64_t)x38 * x26) + ((uint64_t)x37 * x24))))))))));
- uint64_t x49 = ((((uint64_t)x2 * x20) + ((0x2 * ((uint64_t)x4 * x18)) + ((0x2 * ((uint64_t)x6 * x16)) + ((0x2 * ((uint64_t)x8 * x14)) + ((0x2 * ((uint64_t)x10 * x12)) + ((0x2 * ((uint64_t)x12 * x10)) + ((0x2 * ((uint64_t)x14 * x8)) + ((0x2 * ((uint64_t)x16 * x6)) + ((0x2 * ((uint64_t)x18 * x4)) + ((uint64_t)x20 * x2)))))))))) + (((uint64_t)x22 * x37) + (((uint64_t)x24 * x38) + (((uint64_t)x26 * x36) + (((uint64_t)x28 * x34) + (((uint64_t)x30 * x32) + (((uint64_t)x32 * x30) + (((uint64_t)x34 * x28) + (((uint64_t)x36 * x26) + (((uint64_t)x38 * x24) + ((uint64_t)x37 * x22)))))))))));
- uint64_t x50 = ((((uint64_t)x2 * x18) + ((0x2 * ((uint64_t)x4 * x16)) + ((0x2 * ((uint64_t)x6 * x14)) + ((0x2 * ((uint64_t)x8 * x12)) + ((0x2 * ((uint64_t)x10 * x10)) + ((0x2 * ((uint64_t)x12 * x8)) + ((0x2 * ((uint64_t)x14 * x6)) + ((0x2 * ((uint64_t)x16 * x4)) + ((uint64_t)x18 * x2))))))))) + (((uint64_t)x20 * x37) + (((uint64_t)x22 * x38) + (((uint64_t)x24 * x36) + (((uint64_t)x26 * x34) + (((uint64_t)x28 * x32) + (((uint64_t)x30 * x30) + (((uint64_t)x32 * x28) + (((uint64_t)x34 * x26) + (((uint64_t)x36 * x24) + (((uint64_t)x38 * x22) + ((uint64_t)x37 * x20))))))))))));
- uint64_t x51 = ((((uint64_t)x2 * x16) + ((0x2 * ((uint64_t)x4 * x14)) + ((0x2 * ((uint64_t)x6 * x12)) + ((0x2 * ((uint64_t)x8 * x10)) + ((0x2 * ((uint64_t)x10 * x8)) + ((0x2 * ((uint64_t)x12 * x6)) + ((0x2 * ((uint64_t)x14 * x4)) + ((uint64_t)x16 * x2)))))))) + (((uint64_t)x18 * x37) + (((uint64_t)x20 * x38) + (((uint64_t)x22 * x36) + (((uint64_t)x24 * x34) + (((uint64_t)x26 * x32) + (((uint64_t)x28 * x30) + (((uint64_t)x30 * x28) + (((uint64_t)x32 * x26) + (((uint64_t)x34 * x24) + (((uint64_t)x36 * x22) + (((uint64_t)x38 * x20) + ((uint64_t)x37 * x18)))))))))))));
- uint64_t x52 = ((((uint64_t)x2 * x14) + ((0x2 * ((uint64_t)x4 * x12)) + ((0x2 * ((uint64_t)x6 * x10)) + ((0x2 * ((uint64_t)x8 * x8)) + ((0x2 * ((uint64_t)x10 * x6)) + ((0x2 * ((uint64_t)x12 * x4)) + ((uint64_t)x14 * x2))))))) + (((uint64_t)x16 * x37) + (((uint64_t)x18 * x38) + (((uint64_t)x20 * x36) + (((uint64_t)x22 * x34) + (((uint64_t)x24 * x32) + (((uint64_t)x26 * x30) + (((uint64_t)x28 * x28) + (((uint64_t)x30 * x26) + (((uint64_t)x32 * x24) + (((uint64_t)x34 * x22) + (((uint64_t)x36 * x20) + (((uint64_t)x38 * x18) + ((uint64_t)x37 * x16))))))))))))));
- uint64_t x53 = ((((uint64_t)x2 * x12) + ((0x2 * ((uint64_t)x4 * x10)) + ((0x2 * ((uint64_t)x6 * x8)) + ((0x2 * ((uint64_t)x8 * x6)) + ((0x2 * ((uint64_t)x10 * x4)) + ((uint64_t)x12 * x2)))))) + (((uint64_t)x14 * x37) + (((uint64_t)x16 * x38) + (((uint64_t)x18 * x36) + (((uint64_t)x20 * x34) + (((uint64_t)x22 * x32) + (((uint64_t)x24 * x30) + (((uint64_t)x26 * x28) + (((uint64_t)x28 * x26) + (((uint64_t)x30 * x24) + (((uint64_t)x32 * x22) + (((uint64_t)x34 * x20) + (((uint64_t)x36 * x18) + (((uint64_t)x38 * x16) + ((uint64_t)x37 * x14)))))))))))))));
- uint64_t x54 = ((((uint64_t)x2 * x10) + ((0x2 * ((uint64_t)x4 * x8)) + ((0x2 * ((uint64_t)x6 * x6)) + ((0x2 * ((uint64_t)x8 * x4)) + ((uint64_t)x10 * x2))))) + (((uint64_t)x12 * x37) + (((uint64_t)x14 * x38) + (((uint64_t)x16 * x36) + (((uint64_t)x18 * x34) + (((uint64_t)x20 * x32) + (((uint64_t)x22 * x30) + (((uint64_t)x24 * x28) + (((uint64_t)x26 * x26) + (((uint64_t)x28 * x24) + (((uint64_t)x30 * x22) + (((uint64_t)x32 * x20) + (((uint64_t)x34 * x18) + (((uint64_t)x36 * x16) + (((uint64_t)x38 * x14) + ((uint64_t)x37 * x12))))))))))))))));
- uint64_t x55 = ((((uint64_t)x2 * x8) + ((0x2 * ((uint64_t)x4 * x6)) + ((0x2 * ((uint64_t)x6 * x4)) + ((uint64_t)x8 * x2)))) + (((uint64_t)x10 * x37) + (((uint64_t)x12 * x38) + (((uint64_t)x14 * x36) + (((uint64_t)x16 * x34) + (((uint64_t)x18 * x32) + (((uint64_t)x20 * x30) + (((uint64_t)x22 * x28) + (((uint64_t)x24 * x26) + (((uint64_t)x26 * x24) + (((uint64_t)x28 * x22) + (((uint64_t)x30 * x20) + (((uint64_t)x32 * x18) + (((uint64_t)x34 * x16) + (((uint64_t)x36 * x14) + (((uint64_t)x38 * x12) + ((uint64_t)x37 * x10)))))))))))))))));
- uint64_t x56 = ((((uint64_t)x2 * x6) + ((0x2 * ((uint64_t)x4 * x4)) + ((uint64_t)x6 * x2))) + (((uint64_t)x8 * x37) + (((uint64_t)x10 * x38) + (((uint64_t)x12 * x36) + (((uint64_t)x14 * x34) + (((uint64_t)x16 * x32) + (((uint64_t)x18 * x30) + (((uint64_t)x20 * x28) + (((uint64_t)x22 * x26) + (((uint64_t)x24 * x24) + (((uint64_t)x26 * x22) + (((uint64_t)x28 * x20) + (((uint64_t)x30 * x18) + (((uint64_t)x32 * x16) + (((uint64_t)x34 * x14) + (((uint64_t)x36 * x12) + (((uint64_t)x38 * x10) + ((uint64_t)x37 * x8))))))))))))))))));
- uint64_t x57 = ((((uint64_t)x2 * x4) + ((uint64_t)x4 * x2)) + (((uint64_t)x6 * x37) + (((uint64_t)x8 * x38) + (((uint64_t)x10 * x36) + (((uint64_t)x12 * x34) + (((uint64_t)x14 * x32) + (((uint64_t)x16 * x30) + (((uint64_t)x18 * x28) + (((uint64_t)x20 * x26) + (((uint64_t)x22 * x24) + (((uint64_t)x24 * x22) + (((uint64_t)x26 * x20) + (((uint64_t)x28 * x18) + (((uint64_t)x30 * x16) + (((uint64_t)x32 * x14) + (((uint64_t)x34 * x12) + (((uint64_t)x36 * x10) + (((uint64_t)x38 * x8) + ((uint64_t)x37 * x6)))))))))))))))))));
- uint64_t x58 = (((uint64_t)x2 * x2) + ((0x2 * ((uint64_t)x4 * x37)) + ((0x2 * ((uint64_t)x6 * x38)) + ((0x2 * ((uint64_t)x8 * x36)) + ((0x2 * ((uint64_t)x10 * x34)) + ((0x2 * ((uint64_t)x12 * x32)) + ((0x2 * ((uint64_t)x14 * x30)) + ((0x2 * ((uint64_t)x16 * x28)) + ((0x2 * ((uint64_t)x18 * x26)) + ((0x2 * ((uint64_t)x20 * x24)) + ((0x2 * ((uint64_t)x22 * x22)) + ((0x2 * ((uint64_t)x24 * x20)) + ((0x2 * ((uint64_t)x26 * x18)) + ((0x2 * ((uint64_t)x28 * x16)) + ((0x2 * ((uint64_t)x30 * x14)) + ((0x2 * ((uint64_t)x32 * x12)) + ((0x2 * ((uint64_t)x34 * x10)) + ((0x2 * ((uint64_t)x36 * x8)) + ((0x2 * ((uint64_t)x38 * x6)) + (0x2 * ((uint64_t)x37 * x4)))))))))))))))))))));
- uint64_t x59 = (x58 >> 0x1b);
- uint32_t x60 = ((uint32_t)x58 & 0x7ffffff);
- uint64_t x61 = (x59 + x57);
- uint64_t x62 = (x61 >> 0x1a);
- uint32_t x63 = ((uint32_t)x61 & 0x3ffffff);
- uint64_t x64 = (x62 + x56);
- uint64_t x65 = (x64 >> 0x1a);
- uint32_t x66 = ((uint32_t)x64 & 0x3ffffff);
- uint64_t x67 = (x65 + x55);
- uint64_t x68 = (x67 >> 0x1a);
- uint32_t x69 = ((uint32_t)x67 & 0x3ffffff);
- uint64_t x70 = (x68 + x54);
- uint64_t x71 = (x70 >> 0x1a);
- uint32_t x72 = ((uint32_t)x70 & 0x3ffffff);
- uint64_t x73 = (x71 + x53);
- uint64_t x74 = (x73 >> 0x1a);
- uint32_t x75 = ((uint32_t)x73 & 0x3ffffff);
- uint64_t x76 = (x74 + x52);
- uint64_t x77 = (x76 >> 0x1a);
- uint32_t x78 = ((uint32_t)x76 & 0x3ffffff);
- uint64_t x79 = (x77 + x51);
- uint64_t x80 = (x79 >> 0x1a);
- uint32_t x81 = ((uint32_t)x79 & 0x3ffffff);
- uint64_t x82 = (x80 + x50);
- uint64_t x83 = (x82 >> 0x1a);
- uint32_t x84 = ((uint32_t)x82 & 0x3ffffff);
- uint64_t x85 = (x83 + x49);
- uint64_t x86 = (x85 >> 0x1a);
- uint32_t x87 = ((uint32_t)x85 & 0x3ffffff);
- uint64_t x88 = (x86 + x48);
- uint64_t x89 = (x88 >> 0x1a);
- uint32_t x90 = ((uint32_t)x88 & 0x3ffffff);
- uint64_t x91 = (x89 + x47);
- uint64_t x92 = (x91 >> 0x1a);
- uint32_t x93 = ((uint32_t)x91 & 0x3ffffff);
- uint64_t x94 = (x92 + x46);
- uint64_t x95 = (x94 >> 0x1a);
- uint32_t x96 = ((uint32_t)x94 & 0x3ffffff);
- uint64_t x97 = (x95 + x45);
- uint64_t x98 = (x97 >> 0x1a);
- uint32_t x99 = ((uint32_t)x97 & 0x3ffffff);
- uint64_t x100 = (x98 + x44);
- uint64_t x101 = (x100 >> 0x1a);
- uint32_t x102 = ((uint32_t)x100 & 0x3ffffff);
- uint64_t x103 = (x101 + x43);
- uint64_t x104 = (x103 >> 0x1a);
- uint32_t x105 = ((uint32_t)x103 & 0x3ffffff);
- uint64_t x106 = (x104 + x42);
- uint64_t x107 = (x106 >> 0x1a);
- uint32_t x108 = ((uint32_t)x106 & 0x3ffffff);
- uint64_t x109 = (x107 + x41);
- uint64_t x110 = (x109 >> 0x1a);
- uint32_t x111 = ((uint32_t)x109 & 0x3ffffff);
- uint64_t x112 = (x110 + x40);
- uint64_t x113 = (x112 >> 0x1a);
- uint32_t x114 = ((uint32_t)x112 & 0x3ffffff);
- uint64_t x115 = (x113 + x39);
- uint64_t x116 = (x115 >> 0x1a);
- uint32_t x117 = ((uint32_t)x115 & 0x3ffffff);
- uint64_t x118 = (x60 + x116);
- uint32_t x119 = (uint32_t) (x118 >> 0x1b);
- uint32_t x120 = ((uint32_t)x118 & 0x7ffffff);
- uint32_t x121 = (x119 + x63);
- uint32_t x122 = (x121 >> 0x1a);
- uint32_t x123 = (x121 & 0x3ffffff);
- return (Return x117, Return x114, Return x111, Return x108, Return x105, Return x102, Return x99, Return x96, Return x93, Return x90, Return x87, Return x84, Return x81, Return x78, Return x75, Return x72, Return x69, (x122 + x66), Return x123, Return x120))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e521m1_20limbs/fesquareDisplay.v b/src/Specific/solinas32_2e521m1_20limbs/fesquareDisplay.v
deleted file mode 100644
index e28c6343c..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e521m1_20limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas32_2e521m1_20limbs/fesub.c b/src/Specific/solinas32_2e521m1_20limbs/fesub.c
deleted file mode 100644
index 5fa57aceb..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/fesub.c
+++ /dev/null
@@ -1,63 +0,0 @@
-static void fesub(uint32_t out[20], const uint32_t in1[20], const uint32_t in2[20]) {
- { const uint32_t x40 = in1[19];
- { const uint32_t x41 = in1[18];
- { const uint32_t x39 = in1[17];
- { const uint32_t x37 = in1[16];
- { const uint32_t x35 = in1[15];
- { const uint32_t x33 = in1[14];
- { const uint32_t x31 = in1[13];
- { const uint32_t x29 = in1[12];
- { const uint32_t x27 = in1[11];
- { const uint32_t x25 = in1[10];
- { const uint32_t x23 = in1[9];
- { const uint32_t x21 = in1[8];
- { const uint32_t x19 = in1[7];
- { const uint32_t x17 = in1[6];
- { const uint32_t x15 = 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 x78 = in2[19];
- { const uint32_t x79 = in2[18];
- { const uint32_t x77 = in2[17];
- { const uint32_t x75 = in2[16];
- { const uint32_t x73 = in2[15];
- { const uint32_t x71 = in2[14];
- { const uint32_t x69 = in2[13];
- { const uint32_t x67 = in2[12];
- { const uint32_t x65 = in2[11];
- { const uint32_t x63 = in2[10];
- { const uint32_t x61 = in2[9];
- { const uint32_t x59 = in2[8];
- { const uint32_t x57 = in2[7];
- { const uint32_t x55 = in2[6];
- { const uint32_t x53 = in2[5];
- { const uint32_t x51 = in2[4];
- { const uint32_t x49 = in2[3];
- { const uint32_t x47 = in2[2];
- { const uint32_t x45 = in2[1];
- { const uint32_t x43 = in2[0];
- out[0] = ((0xffffffe + x5) - x43);
- out[1] = ((0x7fffffe + x7) - x45);
- out[2] = ((0x7fffffe + x9) - x47);
- out[3] = ((0x7fffffe + x11) - x49);
- out[4] = ((0x7fffffe + x13) - x51);
- out[5] = ((0x7fffffe + x15) - x53);
- out[6] = ((0x7fffffe + x17) - x55);
- out[7] = ((0x7fffffe + x19) - x57);
- out[8] = ((0x7fffffe + x21) - x59);
- out[9] = ((0x7fffffe + x23) - x61);
- out[10] = ((0x7fffffe + x25) - x63);
- out[11] = ((0x7fffffe + x27) - x65);
- out[12] = ((0x7fffffe + x29) - x67);
- out[13] = ((0x7fffffe + x31) - x69);
- out[14] = ((0x7fffffe + x33) - x71);
- out[15] = ((0x7fffffe + x35) - x73);
- out[16] = ((0x7fffffe + x37) - x75);
- out[17] = ((0x7fffffe + x39) - x77);
- out[18] = ((0x7fffffe + x41) - x79);
- out[19] = ((0x7fffffe + x40) - x78);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e521m1_20limbs/fesub.v b/src/Specific/solinas32_2e521m1_20limbs/fesub.v
deleted file mode 100644
index ee4c31d1c..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e521m1_20limbs.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_2e521m1_20limbs/fesubDisplay.log b/src/Specific/solinas32_2e521m1_20limbs/fesubDisplay.log
deleted file mode 100644
index 4baaf158b..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x40, x41, x39, x37, x35, x33, x31, x29, x27, x25, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x78, x79, x77, x75, x73, x71, x69, x67, x65, x63, x61, x59, x57, x55, x53, x51, x49, x47, x45, x43))%core,
- (((0x7fffffe + x40) - x78), ((0x7fffffe + x41) - x79), ((0x7fffffe + x39) - x77), ((0x7fffffe + x37) - x75), ((0x7fffffe + x35) - x73), ((0x7fffffe + x33) - x71), ((0x7fffffe + x31) - x69), ((0x7fffffe + x29) - x67), ((0x7fffffe + x27) - x65), ((0x7fffffe + x25) - x63), ((0x7fffffe + x23) - x61), ((0x7fffffe + x21) - x59), ((0x7fffffe + x19) - x57), ((0x7fffffe + x17) - x55), ((0x7fffffe + x15) - x53), ((0x7fffffe + x13) - x51), ((0x7fffffe + x11) - x49), ((0x7fffffe + x9) - x47), ((0x7fffffe + x7) - x45), ((0xffffffe + x5) - x43)))
-(x, x0)%core
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 → word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e521m1_20limbs/fesubDisplay.v b/src/Specific/solinas32_2e521m1_20limbs/fesubDisplay.v
deleted file mode 100644
index be9fa4936..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e521m1_20limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas32_2e521m1_20limbs/freeze.c b/src/Specific/solinas32_2e521m1_20limbs/freeze.c
deleted file mode 100644
index aa2e4e36c..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/freeze.c
+++ /dev/null
@@ -1,104 +0,0 @@
-static void freeze(uint32_t out[20], const uint32_t in1[20]) {
- { const uint32_t x37 = in1[19];
- { const uint32_t x38 = in1[18];
- { const uint32_t x36 = in1[17];
- { const uint32_t x34 = in1[16];
- { const uint32_t x32 = in1[15];
- { const uint32_t x30 = in1[14];
- { const uint32_t x28 = in1[13];
- { const uint32_t x26 = in1[12];
- { const uint32_t x24 = in1[11];
- { const uint32_t x22 = in1[10];
- { const uint32_t x20 = in1[9];
- { const uint32_t x18 = in1[8];
- { const uint32_t x16 = in1[7];
- { const uint32_t x14 = in1[6];
- { const uint32_t x12 = 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 x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffff);
- { uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x4, 0x3ffffff);
- { uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x6, 0x3ffffff);
- { uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x8, 0x3ffffff);
- { uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x10, 0x3ffffff);
- { uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x12, 0x3ffffff);
- { uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x14, 0x3ffffff);
- { uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x16, 0x3ffffff);
- { uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x18, 0x3ffffff);
- { uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x20, 0x3ffffff);
- { uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x22, 0x3ffffff);
- { uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x24, 0x3ffffff);
- { uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x26, 0x3ffffff);
- { uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x28, 0x3ffffff);
- { uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x30, 0x3ffffff);
- { uint32_t x85, uint8_t x86 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x32, 0x3ffffff);
- { uint32_t x88, uint8_t x89 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x34, 0x3ffffff);
- { uint32_t x91, uint8_t x92 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x89, Return x36, 0x3ffffff);
- { uint32_t x94, uint8_t x95 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x38, 0x3ffffff);
- { uint32_t x97, uint8_t x98 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x37, 0x3ffffff);
- { uint32_t x99 = cmovznz32(x98, 0x0, 0xffffffff);
- { uint32_t x100 = (x99 & 0x7ffffff);
- { uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x40, Return x100);
- { uint32_t x104 = (x99 & 0x3ffffff);
- { uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x43, Return x104);
- { uint32_t x108 = (x99 & 0x3ffffff);
- { uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x46, Return x108);
- { uint32_t x112 = (x99 & 0x3ffffff);
- { uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x49, Return x112);
- { uint32_t x116 = (x99 & 0x3ffffff);
- { uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x52, Return x116);
- { uint32_t x120 = (x99 & 0x3ffffff);
- { uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x55, Return x120);
- { uint32_t x124 = (x99 & 0x3ffffff);
- { uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x58, Return x124);
- { uint32_t x128 = (x99 & 0x3ffffff);
- { uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x61, Return x128);
- { uint32_t x132 = (x99 & 0x3ffffff);
- { uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x64, Return x132);
- { uint32_t x136 = (x99 & 0x3ffffff);
- { uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x67, Return x136);
- { uint32_t x140 = (x99 & 0x3ffffff);
- { uint32_t x142, uint8_t x143 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x70, Return x140);
- { uint32_t x144 = (x99 & 0x3ffffff);
- { uint32_t x146, uint8_t x147 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x143, Return x73, Return x144);
- { uint32_t x148 = (x99 & 0x3ffffff);
- { uint32_t x150, uint8_t x151 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x147, Return x76, Return x148);
- { uint32_t x152 = (x99 & 0x3ffffff);
- { uint32_t x154, uint8_t x155 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x151, Return x79, Return x152);
- { uint32_t x156 = (x99 & 0x3ffffff);
- { uint32_t x158, uint8_t x159 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x155, Return x82, Return x156);
- { uint32_t x160 = (x99 & 0x3ffffff);
- { uint32_t x162, uint8_t x163 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x159, Return x85, Return x160);
- { uint32_t x164 = (x99 & 0x3ffffff);
- { uint32_t x166, uint8_t x167 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x163, Return x88, Return x164);
- { uint32_t x168 = (x99 & 0x3ffffff);
- { uint32_t x170, uint8_t x171 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x167, Return x91, Return x168);
- { uint32_t x172 = (x99 & 0x3ffffff);
- { uint32_t x174, uint8_t x175 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x171, Return x94, Return x172);
- { uint32_t x176 = (x99 & 0x3ffffff);
- { uint32_t x178, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x175, Return x97, Return x176);
- out[0] = x102;
- out[1] = x106;
- out[2] = x110;
- out[3] = x114;
- out[4] = x118;
- out[5] = x122;
- out[6] = x126;
- out[7] = x130;
- out[8] = x134;
- out[9] = x138;
- out[10] = x142;
- out[11] = x146;
- out[12] = x150;
- out[13] = x154;
- out[14] = x158;
- out[15] = x162;
- out[16] = x166;
- out[17] = x170;
- out[18] = x174;
- out[19] = x178;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas32_2e521m1_20limbs/freeze.v b/src/Specific/solinas32_2e521m1_20limbs/freeze.v
deleted file mode 100644
index 575c7c0ed..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas32_2e521m1_20limbs.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_2e521m1_20limbs/freezeDisplay.log b/src/Specific/solinas32_2e521m1_20limbs/freezeDisplay.log
deleted file mode 100644
index 6abf83604..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/freezeDisplay.log
+++ /dev/null
@@ -1,68 +0,0 @@
-λ x : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x37, x38, x36, x34, x32, x30, x28, x26, x24, x22, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint32_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffff);
- uint32_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x41, Return x4, 0x3ffffff);
- uint32_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x44, Return x6, 0x3ffffff);
- uint32_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x47, Return x8, 0x3ffffff);
- uint32_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x50, Return x10, 0x3ffffff);
- uint32_t x55, uint8_t x56 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x53, Return x12, 0x3ffffff);
- uint32_t x58, uint8_t x59 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x56, Return x14, 0x3ffffff);
- uint32_t x61, uint8_t x62 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x59, Return x16, 0x3ffffff);
- uint32_t x64, uint8_t x65 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x62, Return x18, 0x3ffffff);
- uint32_t x67, uint8_t x68 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x65, Return x20, 0x3ffffff);
- uint32_t x70, uint8_t x71 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x68, Return x22, 0x3ffffff);
- uint32_t x73, uint8_t x74 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x71, Return x24, 0x3ffffff);
- uint32_t x76, uint8_t x77 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x74, Return x26, 0x3ffffff);
- uint32_t x79, uint8_t x80 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x77, Return x28, 0x3ffffff);
- uint32_t x82, uint8_t x83 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x80, Return x30, 0x3ffffff);
- uint32_t x85, uint8_t x86 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x83, Return x32, 0x3ffffff);
- uint32_t x88, uint8_t x89 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x86, Return x34, 0x3ffffff);
- uint32_t x91, uint8_t x92 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x89, Return x36, 0x3ffffff);
- uint32_t x94, uint8_t x95 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x92, Return x38, 0x3ffffff);
- uint32_t x97, uint8_t x98 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x95, Return x37, 0x3ffffff);
- uint32_t x99 = cmovznz32(x98, 0x0, 0xffffffff);
- uint32_t x100 = (x99 & 0x7ffffff);
- uint32_t x102, uint8_t x103 = Op (Syntax.AddWithGetCarry 27 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (0x0, Return x40, Return x100);
- uint32_t x104 = (x99 & 0x3ffffff);
- uint32_t x106, uint8_t x107 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x103, Return x43, Return x104);
- uint32_t x108 = (x99 & 0x3ffffff);
- uint32_t x110, uint8_t x111 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x107, Return x46, Return x108);
- uint32_t x112 = (x99 & 0x3ffffff);
- uint32_t x114, uint8_t x115 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x111, Return x49, Return x112);
- uint32_t x116 = (x99 & 0x3ffffff);
- uint32_t x118, uint8_t x119 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x115, Return x52, Return x116);
- uint32_t x120 = (x99 & 0x3ffffff);
- uint32_t x122, uint8_t x123 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x119, Return x55, Return x120);
- uint32_t x124 = (x99 & 0x3ffffff);
- uint32_t x126, uint8_t x127 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x123, Return x58, Return x124);
- uint32_t x128 = (x99 & 0x3ffffff);
- uint32_t x130, uint8_t x131 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x127, Return x61, Return x128);
- uint32_t x132 = (x99 & 0x3ffffff);
- uint32_t x134, uint8_t x135 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x131, Return x64, Return x132);
- uint32_t x136 = (x99 & 0x3ffffff);
- uint32_t x138, uint8_t x139 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x135, Return x67, Return x136);
- uint32_t x140 = (x99 & 0x3ffffff);
- uint32_t x142, uint8_t x143 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x139, Return x70, Return x140);
- uint32_t x144 = (x99 & 0x3ffffff);
- uint32_t x146, uint8_t x147 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x143, Return x73, Return x144);
- uint32_t x148 = (x99 & 0x3ffffff);
- uint32_t x150, uint8_t x151 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x147, Return x76, Return x148);
- uint32_t x152 = (x99 & 0x3ffffff);
- uint32_t x154, uint8_t x155 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x151, Return x79, Return x152);
- uint32_t x156 = (x99 & 0x3ffffff);
- uint32_t x158, uint8_t x159 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x155, Return x82, Return x156);
- uint32_t x160 = (x99 & 0x3ffffff);
- uint32_t x162, uint8_t x163 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x159, Return x85, Return x160);
- uint32_t x164 = (x99 & 0x3ffffff);
- uint32_t x166, uint8_t x167 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x163, Return x88, Return x164);
- uint32_t x168 = (x99 & 0x3ffffff);
- uint32_t x170, uint8_t x171 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x167, Return x91, Return x168);
- uint32_t x172 = (x99 & 0x3ffffff);
- uint32_t x174, uint8_t x175 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x171, Return x94, Return x172);
- uint32_t x176 = (x99 & 0x3ffffff);
- uint32_t x178, uint8_t _ = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 5) (Syntax.TWord 3)) (Return x175, Return x97, Return x176);
- (Return x178, Return x174, Return x170, Return x166, Return x162, Return x158, Return x154, Return x150, Return x146, Return x142, Return x138, Return x134, Return x130, Return x126, Return x122, Return x118, Return x114, Return x110, Return x106, Return x102))
-x
- : word32 * word32 * word32 * word32 * word32 * word32 * word32 * word32 * 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 * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t * uint32_t)
diff --git a/src/Specific/solinas32_2e521m1_20limbs/freezeDisplay.v b/src/Specific/solinas32_2e521m1_20limbs/freezeDisplay.v
deleted file mode 100644
index bf02767b0..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas32_2e521m1_20limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas32_2e521m1_20limbs/py_interpreter.sh b/src/Specific/solinas32_2e521m1_20limbs/py_interpreter.sh
deleted file mode 100755
index 597b2ad8f..000000000
--- a/src/Specific/solinas32_2e521m1_20limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**521 - 1' -Dmodulus_bytes='26 + 1/20' -Da24='121665'
diff --git a/src/Specific/solinas64_2e127m1_3limbs/CurveParameters.v b/src/Specific/solinas64_2e127m1_3limbs/CurveParameters.v
deleted file mode 100644
index 3cbb46ff2..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^127 - 1
-Base: 42 + 1/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 42 + 1/3;
- bitwidth := 64;
- s := 2^127;
- c := [(1, 1)];
- carry_chains := Some [seq 0 (pred 3); [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/solinas64_2e127m1_3limbs/Synthesis.v b/src/Specific/solinas64_2e127m1_3limbs/Synthesis.v
deleted file mode 100644
index c4147a476..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e127m1_3limbs.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/solinas64_2e127m1_3limbs/compiler.sh b/src/Specific/solinas64_2e127m1_3limbs/compiler.sh
deleted file mode 100755
index bbd278188..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,42,42}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='16' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<127) - 1' "$@"
diff --git a/src/Specific/solinas64_2e127m1_3limbs/compilerxx.sh b/src/Specific/solinas64_2e127m1_3limbs/compilerxx.sh
deleted file mode 100755
index 48bd45746..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,42,42}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='16' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<127) - 1' "$@"
diff --git a/src/Specific/solinas64_2e127m1_3limbs/feadd.c b/src/Specific/solinas64_2e127m1_3limbs/feadd.c
deleted file mode 100644
index 725c1f205..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/feadd.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = (x5 + x9);
- out[1] = (x7 + x11);
- out[2] = (x6 + x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e127m1_3limbs/feadd.v b/src/Specific/solinas64_2e127m1_3limbs/feadd.v
deleted file mode 100644
index 667129b7c..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e127m1_3limbs.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/solinas64_2e127m1_3limbs/feaddDisplay.log b/src/Specific/solinas64_2e127m1_3limbs/feaddDisplay.log
deleted file mode 100644
index 64fb467ef..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- ((x6 + x10), (x7 + x11), (x5 + x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e127m1_3limbs/feaddDisplay.v b/src/Specific/solinas64_2e127m1_3limbs/feaddDisplay.v
deleted file mode 100644
index a761ac93d..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e127m1_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e127m1_3limbs/fecarry.v b/src/Specific/solinas64_2e127m1_3limbs/fecarry.v
deleted file mode 100644
index dc085ed77..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e127m1_3limbs.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/solinas64_2e127m1_3limbs/fecarryDisplay.v b/src/Specific/solinas64_2e127m1_3limbs/fecarryDisplay.v
deleted file mode 100644
index 4208a6e57..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e127m1_3limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e127m1_3limbs/femul.c b/src/Specific/solinas64_2e127m1_3limbs/femul.c
deleted file mode 100644
index 4d53c606f..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/femul.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint128_t x12 = (((uint128_t)x5 * x10) + ((0x2 * ((uint128_t)x7 * x11)) + ((uint128_t)x6 * x9)));
- { uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + ((uint128_t)x6 * x10));
- { uint128_t x14 = (((uint128_t)x5 * x9) + ((0x2 * ((uint128_t)x7 * x10)) + (0x2 * ((uint128_t)x6 * x11))));
- { uint64_t x15 = (uint64_t) (x14 >> 0x2b);
- { uint64_t x16 = ((uint64_t)x14 & 0x7ffffffffff);
- { uint128_t x17 = (x15 + x13);
- { uint64_t x18 = (uint64_t) (x17 >> 0x2a);
- { uint64_t x19 = ((uint64_t)x17 & 0x3ffffffffff);
- { uint128_t x20 = (x18 + x12);
- { uint64_t x21 = (uint64_t) (x20 >> 0x2a);
- { uint64_t x22 = ((uint64_t)x20 & 0x3ffffffffff);
- { uint64_t x23 = (x16 + x21);
- { uint64_t x24 = (x23 >> 0x2b);
- { uint64_t x25 = (x23 & 0x7ffffffffff);
- { uint64_t x26 = (x24 + x19);
- { uint64_t x27 = (x26 >> 0x2a);
- { uint64_t x28 = (x26 & 0x3ffffffffff);
- out[0] = x25;
- out[1] = x28;
- out[2] = (x27 + x22);
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e127m1_3limbs/femul.v b/src/Specific/solinas64_2e127m1_3limbs/femul.v
deleted file mode 100644
index 8f0417dfd..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e127m1_3limbs.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/solinas64_2e127m1_3limbs/femulDisplay.log b/src/Specific/solinas64_2e127m1_3limbs/femulDisplay.log
deleted file mode 100644
index c36e46960..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint128_t x12 = (((uint128_t)x5 * x10) + ((0x2 * ((uint128_t)x7 * x11)) + ((uint128_t)x6 * x9)));
- uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + ((uint128_t)x6 * x10));
- uint128_t x14 = (((uint128_t)x5 * x9) + ((0x2 * ((uint128_t)x7 * x10)) + (0x2 * ((uint128_t)x6 * x11))));
- uint64_t x15 = (uint64_t) (x14 >> 0x2b);
- uint64_t x16 = ((uint64_t)x14 & 0x7ffffffffff);
- uint128_t x17 = (x15 + x13);
- uint64_t x18 = (uint64_t) (x17 >> 0x2a);
- uint64_t x19 = ((uint64_t)x17 & 0x3ffffffffff);
- uint128_t x20 = (x18 + x12);
- uint64_t x21 = (uint64_t) (x20 >> 0x2a);
- uint64_t x22 = ((uint64_t)x20 & 0x3ffffffffff);
- uint64_t x23 = (x16 + x21);
- uint64_t x24 = (x23 >> 0x2b);
- uint64_t x25 = (x23 & 0x7ffffffffff);
- uint64_t x26 = (x24 + x19);
- uint64_t x27 = (x26 >> 0x2a);
- uint64_t x28 = (x26 & 0x3ffffffffff);
- return ((x27 + x22), Return x28, Return x25))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e127m1_3limbs/femulDisplay.v b/src/Specific/solinas64_2e127m1_3limbs/femulDisplay.v
deleted file mode 100644
index 59b7ec763..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e127m1_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e127m1_3limbs/fesquare.c b/src/Specific/solinas64_2e127m1_3limbs/fesquare.c
deleted file mode 100644
index 3c6dcc648..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/fesquare.c
+++ /dev/null
@@ -1,26 +0,0 @@
-static void fesquare(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x5 = (((uint128_t)x2 * x3) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x3 * x2)));
- { uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + ((uint128_t)x3 * x3));
- { uint128_t x7 = (((uint128_t)x2 * x2) + ((0x2 * ((uint128_t)x4 * x3)) + (0x2 * ((uint128_t)x3 * x4))));
- { uint64_t x8 = (uint64_t) (x7 >> 0x2b);
- { uint64_t x9 = ((uint64_t)x7 & 0x7ffffffffff);
- { uint128_t x10 = (x8 + x6);
- { uint64_t x11 = (uint64_t) (x10 >> 0x2a);
- { uint64_t x12 = ((uint64_t)x10 & 0x3ffffffffff);
- { uint128_t x13 = (x11 + x5);
- { uint64_t x14 = (uint64_t) (x13 >> 0x2a);
- { uint64_t x15 = ((uint64_t)x13 & 0x3ffffffffff);
- { uint64_t x16 = (x9 + x14);
- { uint64_t x17 = (x16 >> 0x2b);
- { uint64_t x18 = (x16 & 0x7ffffffffff);
- { uint64_t x19 = (x17 + x12);
- { uint64_t x20 = (x19 >> 0x2a);
- { uint64_t x21 = (x19 & 0x3ffffffffff);
- out[0] = x18;
- out[1] = x21;
- out[2] = (x20 + x15);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e127m1_3limbs/fesquare.v b/src/Specific/solinas64_2e127m1_3limbs/fesquare.v
deleted file mode 100644
index 0ddf612d3..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e127m1_3limbs.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/solinas64_2e127m1_3limbs/fesquareDisplay.log b/src/Specific/solinas64_2e127m1_3limbs/fesquareDisplay.log
deleted file mode 100644
index 8fb8df2f4..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint128_t x5 = (((uint128_t)x2 * x3) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x3 * x2)));
- uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + ((uint128_t)x3 * x3));
- uint128_t x7 = (((uint128_t)x2 * x2) + ((0x2 * ((uint128_t)x4 * x3)) + (0x2 * ((uint128_t)x3 * x4))));
- uint64_t x8 = (uint64_t) (x7 >> 0x2b);
- uint64_t x9 = ((uint64_t)x7 & 0x7ffffffffff);
- uint128_t x10 = (x8 + x6);
- uint64_t x11 = (uint64_t) (x10 >> 0x2a);
- uint64_t x12 = ((uint64_t)x10 & 0x3ffffffffff);
- uint128_t x13 = (x11 + x5);
- uint64_t x14 = (uint64_t) (x13 >> 0x2a);
- uint64_t x15 = ((uint64_t)x13 & 0x3ffffffffff);
- uint64_t x16 = (x9 + x14);
- uint64_t x17 = (x16 >> 0x2b);
- uint64_t x18 = (x16 & 0x7ffffffffff);
- uint64_t x19 = (x17 + x12);
- uint64_t x20 = (x19 >> 0x2a);
- uint64_t x21 = (x19 & 0x3ffffffffff);
- return ((x20 + x15), Return x21, Return x18))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e127m1_3limbs/fesquareDisplay.v b/src/Specific/solinas64_2e127m1_3limbs/fesquareDisplay.v
deleted file mode 100644
index 9d8a97bc6..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e127m1_3limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e127m1_3limbs/fesub.c b/src/Specific/solinas64_2e127m1_3limbs/fesub.c
deleted file mode 100644
index c2fd208d1..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/fesub.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = ((0xffffffffffe + x5) - x9);
- out[1] = ((0x7fffffffffe + x7) - x11);
- out[2] = ((0x7fffffffffe + x6) - x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e127m1_3limbs/fesub.v b/src/Specific/solinas64_2e127m1_3limbs/fesub.v
deleted file mode 100644
index bdf39d9e7..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e127m1_3limbs.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/solinas64_2e127m1_3limbs/fesubDisplay.log b/src/Specific/solinas64_2e127m1_3limbs/fesubDisplay.log
deleted file mode 100644
index f9746a1ad..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- (((0x7fffffffffe + x6) - x10), ((0x7fffffffffe + x7) - x11), ((0xffffffffffe + x5) - x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e127m1_3limbs/fesubDisplay.v b/src/Specific/solinas64_2e127m1_3limbs/fesubDisplay.v
deleted file mode 100644
index 5ca534c97..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e127m1_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e127m1_3limbs/freeze.c b/src/Specific/solinas64_2e127m1_3limbs/freeze.c
deleted file mode 100644
index c032d35b1..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/freeze.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void freeze(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffff);
- { uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x3ffffffffff);
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x3ffffffffff);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0x7ffffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- { uint64_t x19 = (x14 & 0x3ffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- { uint64_t x23 = (x14 & 0x3ffffffffff);
- { uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e127m1_3limbs/freeze.v b/src/Specific/solinas64_2e127m1_3limbs/freeze.v
deleted file mode 100644
index 18bdc86b6..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e127m1_3limbs.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/solinas64_2e127m1_3limbs/freezeDisplay.log b/src/Specific/solinas64_2e127m1_3limbs/freezeDisplay.log
deleted file mode 100644
index 48a026179..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/freezeDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffff);
- uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x3ffffffffff);
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x3ffffffffff);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0x7ffffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- uint64_t x19 = (x14 & 0x3ffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- uint64_t x23 = (x14 & 0x3ffffffffff);
- uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e127m1_3limbs/freezeDisplay.v b/src/Specific/solinas64_2e127m1_3limbs/freezeDisplay.v
deleted file mode 100644
index 43bf47cf3..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e127m1_3limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e127m1_3limbs/py_interpreter.sh b/src/Specific/solinas64_2e127m1_3limbs/py_interpreter.sh
deleted file mode 100755
index 80126e541..000000000
--- a/src/Specific/solinas64_2e127m1_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**127 - 1' -Dmodulus_bytes='42 + 1/3' -Da24='121665'
diff --git a/src/Specific/solinas64_2e129m25_3limbs/CurveParameters.v b/src/Specific/solinas64_2e129m25_3limbs/CurveParameters.v
deleted file mode 100644
index df897a547..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^129 - 25
-Base: 43
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 43;
- bitwidth := 64;
- s := 2^129;
- c := [(1, 25)];
- carry_chains := Some [seq 0 (pred 3); [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/solinas64_2e129m25_3limbs/Synthesis.v b/src/Specific/solinas64_2e129m25_3limbs/Synthesis.v
deleted file mode 100644
index 1abfe164d..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e129m25_3limbs.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/solinas64_2e129m25_3limbs/compiler.sh b/src/Specific/solinas64_2e129m25_3limbs/compiler.sh
deleted file mode 100755
index 54abdf10b..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,43}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<129) - 25' "$@"
diff --git a/src/Specific/solinas64_2e129m25_3limbs/compilerxx.sh b/src/Specific/solinas64_2e129m25_3limbs/compilerxx.sh
deleted file mode 100755
index 3b4837af3..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,43}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<129) - 25' "$@"
diff --git a/src/Specific/solinas64_2e129m25_3limbs/feadd.c b/src/Specific/solinas64_2e129m25_3limbs/feadd.c
deleted file mode 100644
index 725c1f205..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/feadd.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = (x5 + x9);
- out[1] = (x7 + x11);
- out[2] = (x6 + x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e129m25_3limbs/feadd.v b/src/Specific/solinas64_2e129m25_3limbs/feadd.v
deleted file mode 100644
index b94a5449f..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e129m25_3limbs.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/solinas64_2e129m25_3limbs/feaddDisplay.log b/src/Specific/solinas64_2e129m25_3limbs/feaddDisplay.log
deleted file mode 100644
index 64fb467ef..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- ((x6 + x10), (x7 + x11), (x5 + x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e129m25_3limbs/feaddDisplay.v b/src/Specific/solinas64_2e129m25_3limbs/feaddDisplay.v
deleted file mode 100644
index 42cf38995..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e129m25_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e129m25_3limbs/fecarry.v b/src/Specific/solinas64_2e129m25_3limbs/fecarry.v
deleted file mode 100644
index 41aed88dd..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e129m25_3limbs.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/solinas64_2e129m25_3limbs/fecarryDisplay.v b/src/Specific/solinas64_2e129m25_3limbs/fecarryDisplay.v
deleted file mode 100644
index beae0bc90..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e129m25_3limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e129m25_3limbs/femul.c b/src/Specific/solinas64_2e129m25_3limbs/femul.c
deleted file mode 100644
index f4d7f2f96..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/femul.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint128_t x12 = (((uint128_t)x5 * x10) + (((uint128_t)x7 * x11) + ((uint128_t)x6 * x9)));
- { uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0x19 * ((uint128_t)x6 * x10)));
- { uint128_t x14 = (((uint128_t)x5 * x9) + (0x19 * (((uint128_t)x7 * x10) + ((uint128_t)x6 * x11))));
- { uint64_t x15 = (uint64_t) (x14 >> 0x2b);
- { uint64_t x16 = ((uint64_t)x14 & 0x7ffffffffff);
- { uint128_t x17 = (x15 + x13);
- { uint64_t x18 = (uint64_t) (x17 >> 0x2b);
- { uint64_t x19 = ((uint64_t)x17 & 0x7ffffffffff);
- { uint128_t x20 = (x18 + x12);
- { uint64_t x21 = (uint64_t) (x20 >> 0x2b);
- { uint64_t x22 = ((uint64_t)x20 & 0x7ffffffffff);
- { uint64_t x23 = (x16 + (0x19 * x21));
- { uint64_t x24 = (x23 >> 0x2b);
- { uint64_t x25 = (x23 & 0x7ffffffffff);
- { uint64_t x26 = (x24 + x19);
- { uint64_t x27 = (x26 >> 0x2b);
- { uint64_t x28 = (x26 & 0x7ffffffffff);
- out[0] = x25;
- out[1] = x28;
- out[2] = (x27 + x22);
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e129m25_3limbs/femul.v b/src/Specific/solinas64_2e129m25_3limbs/femul.v
deleted file mode 100644
index 9056599d4..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e129m25_3limbs.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/solinas64_2e129m25_3limbs/femulDisplay.log b/src/Specific/solinas64_2e129m25_3limbs/femulDisplay.log
deleted file mode 100644
index 4e21c36ee..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint128_t x12 = (((uint128_t)x5 * x10) + (((uint128_t)x7 * x11) + ((uint128_t)x6 * x9)));
- uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0x19 * ((uint128_t)x6 * x10)));
- uint128_t x14 = (((uint128_t)x5 * x9) + (0x19 * (((uint128_t)x7 * x10) + ((uint128_t)x6 * x11))));
- uint64_t x15 = (uint64_t) (x14 >> 0x2b);
- uint64_t x16 = ((uint64_t)x14 & 0x7ffffffffff);
- uint128_t x17 = (x15 + x13);
- uint64_t x18 = (uint64_t) (x17 >> 0x2b);
- uint64_t x19 = ((uint64_t)x17 & 0x7ffffffffff);
- uint128_t x20 = (x18 + x12);
- uint64_t x21 = (uint64_t) (x20 >> 0x2b);
- uint64_t x22 = ((uint64_t)x20 & 0x7ffffffffff);
- uint64_t x23 = (x16 + (0x19 * x21));
- uint64_t x24 = (x23 >> 0x2b);
- uint64_t x25 = (x23 & 0x7ffffffffff);
- uint64_t x26 = (x24 + x19);
- uint64_t x27 = (x26 >> 0x2b);
- uint64_t x28 = (x26 & 0x7ffffffffff);
- return ((x27 + x22), Return x28, Return x25))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e129m25_3limbs/femulDisplay.v b/src/Specific/solinas64_2e129m25_3limbs/femulDisplay.v
deleted file mode 100644
index 9465514bf..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e129m25_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e129m25_3limbs/fesquare.c b/src/Specific/solinas64_2e129m25_3limbs/fesquare.c
deleted file mode 100644
index e46051319..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/fesquare.c
+++ /dev/null
@@ -1,26 +0,0 @@
-static void fesquare(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x5 = (((uint128_t)x2 * x3) + (((uint128_t)x4 * x4) + ((uint128_t)x3 * x2)));
- { uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x19 * ((uint128_t)x3 * x3)));
- { uint128_t x7 = (((uint128_t)x2 * x2) + (0x19 * (((uint128_t)x4 * x3) + ((uint128_t)x3 * x4))));
- { uint64_t x8 = (uint64_t) (x7 >> 0x2b);
- { uint64_t x9 = ((uint64_t)x7 & 0x7ffffffffff);
- { uint128_t x10 = (x8 + x6);
- { uint64_t x11 = (uint64_t) (x10 >> 0x2b);
- { uint64_t x12 = ((uint64_t)x10 & 0x7ffffffffff);
- { uint128_t x13 = (x11 + x5);
- { uint64_t x14 = (uint64_t) (x13 >> 0x2b);
- { uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffff);
- { uint64_t x16 = (x9 + (0x19 * x14));
- { uint64_t x17 = (x16 >> 0x2b);
- { uint64_t x18 = (x16 & 0x7ffffffffff);
- { uint64_t x19 = (x17 + x12);
- { uint64_t x20 = (x19 >> 0x2b);
- { uint64_t x21 = (x19 & 0x7ffffffffff);
- out[0] = x18;
- out[1] = x21;
- out[2] = (x20 + x15);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e129m25_3limbs/fesquare.v b/src/Specific/solinas64_2e129m25_3limbs/fesquare.v
deleted file mode 100644
index a0ec619fe..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e129m25_3limbs.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/solinas64_2e129m25_3limbs/fesquareDisplay.log b/src/Specific/solinas64_2e129m25_3limbs/fesquareDisplay.log
deleted file mode 100644
index 9aec8330b..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint128_t x5 = (((uint128_t)x2 * x3) + (((uint128_t)x4 * x4) + ((uint128_t)x3 * x2)));
- uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x19 * ((uint128_t)x3 * x3)));
- uint128_t x7 = (((uint128_t)x2 * x2) + (0x19 * (((uint128_t)x4 * x3) + ((uint128_t)x3 * x4))));
- uint64_t x8 = (uint64_t) (x7 >> 0x2b);
- uint64_t x9 = ((uint64_t)x7 & 0x7ffffffffff);
- uint128_t x10 = (x8 + x6);
- uint64_t x11 = (uint64_t) (x10 >> 0x2b);
- uint64_t x12 = ((uint64_t)x10 & 0x7ffffffffff);
- uint128_t x13 = (x11 + x5);
- uint64_t x14 = (uint64_t) (x13 >> 0x2b);
- uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffff);
- uint64_t x16 = (x9 + (0x19 * x14));
- uint64_t x17 = (x16 >> 0x2b);
- uint64_t x18 = (x16 & 0x7ffffffffff);
- uint64_t x19 = (x17 + x12);
- uint64_t x20 = (x19 >> 0x2b);
- uint64_t x21 = (x19 & 0x7ffffffffff);
- return ((x20 + x15), Return x21, Return x18))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e129m25_3limbs/fesquareDisplay.v b/src/Specific/solinas64_2e129m25_3limbs/fesquareDisplay.v
deleted file mode 100644
index d67c7d693..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e129m25_3limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e129m25_3limbs/fesub.c b/src/Specific/solinas64_2e129m25_3limbs/fesub.c
deleted file mode 100644
index 3b568ec45..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/fesub.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = ((0xfffffffffce + x5) - x9);
- out[1] = ((0xffffffffffe + x7) - x11);
- out[2] = ((0xffffffffffe + x6) - x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e129m25_3limbs/fesub.v b/src/Specific/solinas64_2e129m25_3limbs/fesub.v
deleted file mode 100644
index 38dc55a8a..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e129m25_3limbs.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/solinas64_2e129m25_3limbs/fesubDisplay.log b/src/Specific/solinas64_2e129m25_3limbs/fesubDisplay.log
deleted file mode 100644
index d5762eae8..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- (((0xffffffffffe + x6) - x10), ((0xffffffffffe + x7) - x11), ((0xfffffffffce + x5) - x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e129m25_3limbs/fesubDisplay.v b/src/Specific/solinas64_2e129m25_3limbs/fesubDisplay.v
deleted file mode 100644
index ce7a4fa8e..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e129m25_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e129m25_3limbs/freeze.c b/src/Specific/solinas64_2e129m25_3limbs/freeze.c
deleted file mode 100644
index a0c83f37d..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/freeze.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void freeze(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffe7);
- { uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x7ffffffffff);
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x7ffffffffff);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0x7ffffffffe7);
- { uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- { uint64_t x19 = (x14 & 0x7ffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- { uint64_t x23 = (x14 & 0x7ffffffffff);
- { uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e129m25_3limbs/freeze.v b/src/Specific/solinas64_2e129m25_3limbs/freeze.v
deleted file mode 100644
index fdbf2d759..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e129m25_3limbs.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/solinas64_2e129m25_3limbs/freezeDisplay.log b/src/Specific/solinas64_2e129m25_3limbs/freezeDisplay.log
deleted file mode 100644
index d45479954..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/freezeDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffe7);
- uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x7ffffffffff);
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x7ffffffffff);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0x7ffffffffe7);
- uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- uint64_t x19 = (x14 & 0x7ffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- uint64_t x23 = (x14 & 0x7ffffffffff);
- uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e129m25_3limbs/freezeDisplay.v b/src/Specific/solinas64_2e129m25_3limbs/freezeDisplay.v
deleted file mode 100644
index b76491141..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e129m25_3limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e129m25_3limbs/py_interpreter.sh b/src/Specific/solinas64_2e129m25_3limbs/py_interpreter.sh
deleted file mode 100755
index 9b3975489..000000000
--- a/src/Specific/solinas64_2e129m25_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**129 - 25' -Dmodulus_bytes='43' -Da24='121665'
diff --git a/src/Specific/solinas64_2e129m25_4limbs/CurveParameters.v b/src/Specific/solinas64_2e129m25_4limbs/CurveParameters.v
deleted file mode 100644
index bc07cd21a..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^129 - 25
-Base: 32.25
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 32 + 1/4;
- bitwidth := 64;
- s := 2^129;
- c := [(1, 25)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e129m25_4limbs/Synthesis.v b/src/Specific/solinas64_2e129m25_4limbs/Synthesis.v
deleted file mode 100644
index 5b2cf6def..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e129m25_4limbs.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/solinas64_2e129m25_4limbs/compiler.sh b/src/Specific/solinas64_2e129m25_4limbs/compiler.sh
deleted file mode 100755
index ba6da4b8b..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{33,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<129) - 25' "$@"
diff --git a/src/Specific/solinas64_2e129m25_4limbs/compilerxx.sh b/src/Specific/solinas64_2e129m25_4limbs/compilerxx.sh
deleted file mode 100755
index f015adb3e..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{33,32,32,32}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<129) - 25' "$@"
diff --git a/src/Specific/solinas64_2e129m25_4limbs/feadd.c b/src/Specific/solinas64_2e129m25_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e129m25_4limbs/feadd.v b/src/Specific/solinas64_2e129m25_4limbs/feadd.v
deleted file mode 100644
index b041a05ce..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e129m25_4limbs.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/solinas64_2e129m25_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e129m25_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e129m25_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e129m25_4limbs/feaddDisplay.v
deleted file mode 100644
index 68a5422a6..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e129m25_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e129m25_4limbs/fecarry.v b/src/Specific/solinas64_2e129m25_4limbs/fecarry.v
deleted file mode 100644
index 006e4cc37..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e129m25_4limbs.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/solinas64_2e129m25_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e129m25_4limbs/fecarryDisplay.v
deleted file mode 100644
index bbfd2ca8f..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e129m25_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e129m25_4limbs/femul.c b/src/Specific/solinas64_2e129m25_4limbs/femul.c
deleted file mode 100644
index f07be3d04..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + ((0x2 * ((uint128_t)x7 * x15)) + ((0x2 * ((uint128_t)x9 * x13)) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x19 * ((uint128_t)x8 * x14)));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x19 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0x19 * ((0x2 * ((uint128_t)x7 * x14)) + ((0x2 * ((uint128_t)x9 * x15)) + (0x2 * ((uint128_t)x8 * x13))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x21);
- { uint64_t x21 = ((uint64_t)x19 & 0x1ffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x20);
- { uint64_t x24 = ((uint64_t)x22 & 0xffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x20);
- { uint64_t x27 = ((uint64_t)x25 & 0xffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x20);
- { uint64_t x30 = ((uint64_t)x28 & 0xffffffff);
- { uint64_t x31 = (x21 + (0x19 * x29));
- { uint64_t x32 = (x31 >> 0x21);
- { uint64_t x33 = (x31 & 0x1ffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x20);
- { uint64_t x36 = (x34 & 0xffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e129m25_4limbs/femul.v b/src/Specific/solinas64_2e129m25_4limbs/femul.v
deleted file mode 100644
index 07526d7b5..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e129m25_4limbs.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/solinas64_2e129m25_4limbs/femulDisplay.log b/src/Specific/solinas64_2e129m25_4limbs/femulDisplay.log
deleted file mode 100644
index dd96f12b3..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + ((0x2 * ((uint128_t)x7 * x15)) + ((0x2 * ((uint128_t)x9 * x13)) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x19 * ((uint128_t)x8 * x14)));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x19 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0x19 * ((0x2 * ((uint128_t)x7 * x14)) + ((0x2 * ((uint128_t)x9 * x15)) + (0x2 * ((uint128_t)x8 * x13))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x21);
- uint64_t x21 = ((uint64_t)x19 & 0x1ffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x20);
- uint64_t x24 = ((uint64_t)x22 & 0xffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x20);
- uint64_t x27 = ((uint64_t)x25 & 0xffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x20);
- uint64_t x30 = ((uint64_t)x28 & 0xffffffff);
- uint64_t x31 = (x21 + (0x19 * x29));
- uint64_t x32 = (x31 >> 0x21);
- uint64_t x33 = (x31 & 0x1ffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x20);
- uint64_t x36 = (x34 & 0xffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e129m25_4limbs/femulDisplay.v b/src/Specific/solinas64_2e129m25_4limbs/femulDisplay.v
deleted file mode 100644
index 9857bba98..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e129m25_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e129m25_4limbs/fesquare.c b/src/Specific/solinas64_2e129m25_4limbs/fesquare.c
deleted file mode 100644
index 72f509c26..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x19 * ((uint128_t)x5 * x5)));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x19 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0x19 * ((0x2 * ((uint128_t)x4 * x5)) + ((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x5 * x4))))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x21);
- { uint64_t x12 = ((uint64_t)x10 & 0x1ffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint64_t x14 = (uint64_t) (x13 >> 0x20);
- { uint64_t x15 = ((uint64_t)x13 & 0xffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x20);
- { uint64_t x18 = ((uint64_t)x16 & 0xffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x20);
- { uint64_t x21 = ((uint64_t)x19 & 0xffffffff);
- { uint64_t x22 = (x12 + (0x19 * x20));
- { uint64_t x23 = (x22 >> 0x21);
- { uint64_t x24 = (x22 & 0x1ffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x20);
- { uint64_t x27 = (x25 & 0xffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e129m25_4limbs/fesquare.v b/src/Specific/solinas64_2e129m25_4limbs/fesquare.v
deleted file mode 100644
index 98a477edf..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e129m25_4limbs.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/solinas64_2e129m25_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e129m25_4limbs/fesquareDisplay.log
deleted file mode 100644
index 346dc8933..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x19 * ((uint128_t)x5 * x5)));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x19 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0x19 * ((0x2 * ((uint128_t)x4 * x5)) + ((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x5 * x4))))));
- uint64_t x11 = (uint64_t) (x10 >> 0x21);
- uint64_t x12 = ((uint64_t)x10 & 0x1ffffffff);
- uint128_t x13 = (x11 + x9);
- uint64_t x14 = (uint64_t) (x13 >> 0x20);
- uint64_t x15 = ((uint64_t)x13 & 0xffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x20);
- uint64_t x18 = ((uint64_t)x16 & 0xffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x20);
- uint64_t x21 = ((uint64_t)x19 & 0xffffffff);
- uint64_t x22 = (x12 + (0x19 * x20));
- uint64_t x23 = (x22 >> 0x21);
- uint64_t x24 = (x22 & 0x1ffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x20);
- uint64_t x27 = (x25 & 0xffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e129m25_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e129m25_4limbs/fesquareDisplay.v
deleted file mode 100644
index 07e1f6079..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e129m25_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e129m25_4limbs/fesub.c b/src/Specific/solinas64_2e129m25_4limbs/fesub.c
deleted file mode 100644
index ce33d3af7..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x3ffffffce + x5) - x11);
- out[1] = ((0x1fffffffe + x7) - x13);
- out[2] = ((0x1fffffffe + x9) - x15);
- out[3] = ((0x1fffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e129m25_4limbs/fesub.v b/src/Specific/solinas64_2e129m25_4limbs/fesub.v
deleted file mode 100644
index 95c81205b..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e129m25_4limbs.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/solinas64_2e129m25_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e129m25_4limbs/fesubDisplay.log
deleted file mode 100644
index 9a0916e14..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0x1fffffffe + x8) - x14), ((0x1fffffffe + x9) - x15), ((0x1fffffffe + x7) - x13), ((0x3ffffffce + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e129m25_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e129m25_4limbs/fesubDisplay.v
deleted file mode 100644
index 68a01010a..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e129m25_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e129m25_4limbs/freeze.c b/src/Specific/solinas64_2e129m25_4limbs/freeze.c
deleted file mode 100644
index 832c90f84..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 33 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffffe7);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 32 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0xffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 32 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0xffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 32 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0xffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0x1ffffffe7);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 33 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0xffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 32 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0xffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 32 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0xffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 32 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e129m25_4limbs/freeze.v b/src/Specific/solinas64_2e129m25_4limbs/freeze.v
deleted file mode 100644
index 61a0a105b..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e129m25_4limbs.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/solinas64_2e129m25_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e129m25_4limbs/freezeDisplay.log
deleted file mode 100644
index 5232e193d..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 33 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffffe7);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 32 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0xffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 32 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0xffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 32 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0xffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0x1ffffffe7);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 33 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0xffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 32 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0xffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 32 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0xffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 32 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e129m25_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e129m25_4limbs/freezeDisplay.v
deleted file mode 100644
index cd66ba01e..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e129m25_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e129m25_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e129m25_4limbs/py_interpreter.sh
deleted file mode 100755
index d89efd522..000000000
--- a/src/Specific/solinas64_2e129m25_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**129 - 25' -Dmodulus_bytes='32.25' -Da24='121665'
diff --git a/src/Specific/solinas64_2e130m5_3limbs/CurveParameters.v b/src/Specific/solinas64_2e130m5_3limbs/CurveParameters.v
deleted file mode 100644
index 16175f52a..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^130 - 5
-Base: 43 + 1/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 43 + 1/3;
- bitwidth := 64;
- s := 2^130;
- c := [(1, 5)];
- carry_chains := Some [seq 0 (pred 3); [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/solinas64_2e130m5_3limbs/Synthesis.v b/src/Specific/solinas64_2e130m5_3limbs/Synthesis.v
deleted file mode 100644
index 63d8e67c5..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e130m5_3limbs.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/solinas64_2e130m5_3limbs/compiler.sh b/src/Specific/solinas64_2e130m5_3limbs/compiler.sh
deleted file mode 100755
index 72a4f1e05..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{44,43,43}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<130) - 5' "$@"
diff --git a/src/Specific/solinas64_2e130m5_3limbs/compilerxx.sh b/src/Specific/solinas64_2e130m5_3limbs/compilerxx.sh
deleted file mode 100755
index b9220e65c..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{44,43,43}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<130) - 5' "$@"
diff --git a/src/Specific/solinas64_2e130m5_3limbs/feadd.c b/src/Specific/solinas64_2e130m5_3limbs/feadd.c
deleted file mode 100644
index 725c1f205..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/feadd.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = (x5 + x9);
- out[1] = (x7 + x11);
- out[2] = (x6 + x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e130m5_3limbs/feadd.v b/src/Specific/solinas64_2e130m5_3limbs/feadd.v
deleted file mode 100644
index ba2a6b3dd..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e130m5_3limbs.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/solinas64_2e130m5_3limbs/feaddDisplay.log b/src/Specific/solinas64_2e130m5_3limbs/feaddDisplay.log
deleted file mode 100644
index 64fb467ef..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- ((x6 + x10), (x7 + x11), (x5 + x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e130m5_3limbs/feaddDisplay.v b/src/Specific/solinas64_2e130m5_3limbs/feaddDisplay.v
deleted file mode 100644
index 8efafb0f8..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e130m5_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e130m5_3limbs/fecarry.v b/src/Specific/solinas64_2e130m5_3limbs/fecarry.v
deleted file mode 100644
index 5433d3752..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e130m5_3limbs.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/solinas64_2e130m5_3limbs/fecarryDisplay.v b/src/Specific/solinas64_2e130m5_3limbs/fecarryDisplay.v
deleted file mode 100644
index 3d62fe845..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e130m5_3limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e130m5_3limbs/femul.c b/src/Specific/solinas64_2e130m5_3limbs/femul.c
deleted file mode 100644
index a14294d6d..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/femul.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint128_t x12 = (((uint128_t)x5 * x10) + ((0x2 * ((uint128_t)x7 * x11)) + ((uint128_t)x6 * x9)));
- { uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0x5 * ((uint128_t)x6 * x10)));
- { uint128_t x14 = (((uint128_t)x5 * x9) + (0x5 * ((0x2 * ((uint128_t)x7 * x10)) + (0x2 * ((uint128_t)x6 * x11)))));
- { uint64_t x15 = (uint64_t) (x14 >> 0x2c);
- { uint64_t x16 = ((uint64_t)x14 & 0xfffffffffff);
- { uint128_t x17 = (x15 + x13);
- { uint64_t x18 = (uint64_t) (x17 >> 0x2b);
- { uint64_t x19 = ((uint64_t)x17 & 0x7ffffffffff);
- { uint128_t x20 = (x18 + x12);
- { uint64_t x21 = (uint64_t) (x20 >> 0x2b);
- { uint64_t x22 = ((uint64_t)x20 & 0x7ffffffffff);
- { uint64_t x23 = (x16 + (0x5 * x21));
- { uint64_t x24 = (x23 >> 0x2c);
- { uint64_t x25 = (x23 & 0xfffffffffff);
- { uint64_t x26 = (x24 + x19);
- { uint64_t x27 = (x26 >> 0x2b);
- { uint64_t x28 = (x26 & 0x7ffffffffff);
- out[0] = x25;
- out[1] = x28;
- out[2] = (x27 + x22);
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e130m5_3limbs/femul.v b/src/Specific/solinas64_2e130m5_3limbs/femul.v
deleted file mode 100644
index 40dc803fe..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e130m5_3limbs.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/solinas64_2e130m5_3limbs/femulDisplay.log b/src/Specific/solinas64_2e130m5_3limbs/femulDisplay.log
deleted file mode 100644
index c514c0886..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint128_t x12 = (((uint128_t)x5 * x10) + ((0x2 * ((uint128_t)x7 * x11)) + ((uint128_t)x6 * x9)));
- uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0x5 * ((uint128_t)x6 * x10)));
- uint128_t x14 = (((uint128_t)x5 * x9) + (0x5 * ((0x2 * ((uint128_t)x7 * x10)) + (0x2 * ((uint128_t)x6 * x11)))));
- uint64_t x15 = (uint64_t) (x14 >> 0x2c);
- uint64_t x16 = ((uint64_t)x14 & 0xfffffffffff);
- uint128_t x17 = (x15 + x13);
- uint64_t x18 = (uint64_t) (x17 >> 0x2b);
- uint64_t x19 = ((uint64_t)x17 & 0x7ffffffffff);
- uint128_t x20 = (x18 + x12);
- uint64_t x21 = (uint64_t) (x20 >> 0x2b);
- uint64_t x22 = ((uint64_t)x20 & 0x7ffffffffff);
- uint64_t x23 = (x16 + (0x5 * x21));
- uint64_t x24 = (x23 >> 0x2c);
- uint64_t x25 = (x23 & 0xfffffffffff);
- uint64_t x26 = (x24 + x19);
- uint64_t x27 = (x26 >> 0x2b);
- uint64_t x28 = (x26 & 0x7ffffffffff);
- return ((x27 + x22), Return x28, Return x25))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e130m5_3limbs/femulDisplay.v b/src/Specific/solinas64_2e130m5_3limbs/femulDisplay.v
deleted file mode 100644
index 1f2969c32..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e130m5_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e130m5_3limbs/fesquare.c b/src/Specific/solinas64_2e130m5_3limbs/fesquare.c
deleted file mode 100644
index 499c28d6d..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/fesquare.c
+++ /dev/null
@@ -1,26 +0,0 @@
-static void fesquare(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x5 = (((uint128_t)x2 * x3) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x3 * x2)));
- { uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x5 * ((uint128_t)x3 * x3)));
- { uint128_t x7 = (((uint128_t)x2 * x2) + (0x5 * ((0x2 * ((uint128_t)x4 * x3)) + (0x2 * ((uint128_t)x3 * x4)))));
- { uint64_t x8 = (uint64_t) (x7 >> 0x2c);
- { uint64_t x9 = ((uint64_t)x7 & 0xfffffffffff);
- { uint128_t x10 = (x8 + x6);
- { uint64_t x11 = (uint64_t) (x10 >> 0x2b);
- { uint64_t x12 = ((uint64_t)x10 & 0x7ffffffffff);
- { uint128_t x13 = (x11 + x5);
- { uint64_t x14 = (uint64_t) (x13 >> 0x2b);
- { uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffff);
- { uint64_t x16 = (x9 + (0x5 * x14));
- { uint64_t x17 = (x16 >> 0x2c);
- { uint64_t x18 = (x16 & 0xfffffffffff);
- { uint64_t x19 = (x17 + x12);
- { uint64_t x20 = (x19 >> 0x2b);
- { uint64_t x21 = (x19 & 0x7ffffffffff);
- out[0] = x18;
- out[1] = x21;
- out[2] = (x20 + x15);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e130m5_3limbs/fesquare.v b/src/Specific/solinas64_2e130m5_3limbs/fesquare.v
deleted file mode 100644
index a770401a9..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e130m5_3limbs.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/solinas64_2e130m5_3limbs/fesquareDisplay.log b/src/Specific/solinas64_2e130m5_3limbs/fesquareDisplay.log
deleted file mode 100644
index f60cdd005..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint128_t x5 = (((uint128_t)x2 * x3) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x3 * x2)));
- uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x5 * ((uint128_t)x3 * x3)));
- uint128_t x7 = (((uint128_t)x2 * x2) + (0x5 * ((0x2 * ((uint128_t)x4 * x3)) + (0x2 * ((uint128_t)x3 * x4)))));
- uint64_t x8 = (uint64_t) (x7 >> 0x2c);
- uint64_t x9 = ((uint64_t)x7 & 0xfffffffffff);
- uint128_t x10 = (x8 + x6);
- uint64_t x11 = (uint64_t) (x10 >> 0x2b);
- uint64_t x12 = ((uint64_t)x10 & 0x7ffffffffff);
- uint128_t x13 = (x11 + x5);
- uint64_t x14 = (uint64_t) (x13 >> 0x2b);
- uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffff);
- uint64_t x16 = (x9 + (0x5 * x14));
- uint64_t x17 = (x16 >> 0x2c);
- uint64_t x18 = (x16 & 0xfffffffffff);
- uint64_t x19 = (x17 + x12);
- uint64_t x20 = (x19 >> 0x2b);
- uint64_t x21 = (x19 & 0x7ffffffffff);
- return ((x20 + x15), Return x21, Return x18))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e130m5_3limbs/fesquareDisplay.v b/src/Specific/solinas64_2e130m5_3limbs/fesquareDisplay.v
deleted file mode 100644
index 57c4b5070..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e130m5_3limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e130m5_3limbs/fesub.c b/src/Specific/solinas64_2e130m5_3limbs/fesub.c
deleted file mode 100644
index cde6ead7d..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/fesub.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = ((0x1ffffffffff6 + x5) - x9);
- out[1] = ((0xffffffffffe + x7) - x11);
- out[2] = ((0xffffffffffe + x6) - x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e130m5_3limbs/fesub.v b/src/Specific/solinas64_2e130m5_3limbs/fesub.v
deleted file mode 100644
index 2cb067582..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e130m5_3limbs.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/solinas64_2e130m5_3limbs/fesubDisplay.log b/src/Specific/solinas64_2e130m5_3limbs/fesubDisplay.log
deleted file mode 100644
index 3496fca22..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- (((0xffffffffffe + x6) - x10), ((0xffffffffffe + x7) - x11), ((0x1ffffffffff6 + x5) - x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e130m5_3limbs/fesubDisplay.v b/src/Specific/solinas64_2e130m5_3limbs/fesubDisplay.v
deleted file mode 100644
index b3f3560a5..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e130m5_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e130m5_3limbs/freeze.c b/src/Specific/solinas64_2e130m5_3limbs/freeze.c
deleted file mode 100644
index 442eefaf1..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/freeze.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void freeze(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffb);
- { uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x7ffffffffff);
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x7ffffffffff);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0xffffffffffb);
- { uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- { uint64_t x19 = (x14 & 0x7ffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- { uint64_t x23 = (x14 & 0x7ffffffffff);
- { uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e130m5_3limbs/freeze.v b/src/Specific/solinas64_2e130m5_3limbs/freeze.v
deleted file mode 100644
index e30f6825e..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e130m5_3limbs.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/solinas64_2e130m5_3limbs/freezeDisplay.log b/src/Specific/solinas64_2e130m5_3limbs/freezeDisplay.log
deleted file mode 100644
index ef7c05558..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/freezeDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffb);
- uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x7ffffffffff);
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x7ffffffffff);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0xffffffffffb);
- uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- uint64_t x19 = (x14 & 0x7ffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- uint64_t x23 = (x14 & 0x7ffffffffff);
- uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e130m5_3limbs/freezeDisplay.v b/src/Specific/solinas64_2e130m5_3limbs/freezeDisplay.v
deleted file mode 100644
index 1d001d822..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e130m5_3limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e130m5_3limbs/py_interpreter.sh b/src/Specific/solinas64_2e130m5_3limbs/py_interpreter.sh
deleted file mode 100755
index 258d27d68..000000000
--- a/src/Specific/solinas64_2e130m5_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**130 - 5' -Dmodulus_bytes='43 + 1/3' -Da24='121665'
diff --git a/src/Specific/solinas64_2e130m5_4limbs/CurveParameters.v b/src/Specific/solinas64_2e130m5_4limbs/CurveParameters.v
deleted file mode 100644
index adaffc7a8..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^130 - 5
-Base: 32.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 32 + 1/2;
- bitwidth := 64;
- s := 2^130;
- c := [(1, 5)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e130m5_4limbs/Synthesis.v b/src/Specific/solinas64_2e130m5_4limbs/Synthesis.v
deleted file mode 100644
index 717392fbf..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e130m5_4limbs.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/solinas64_2e130m5_4limbs/compiler.sh b/src/Specific/solinas64_2e130m5_4limbs/compiler.sh
deleted file mode 100755
index 7477e09a0..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{33,32,33,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<130) - 5' "$@"
diff --git a/src/Specific/solinas64_2e130m5_4limbs/compilerxx.sh b/src/Specific/solinas64_2e130m5_4limbs/compilerxx.sh
deleted file mode 100755
index c5a4b9424..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{33,32,33,32}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='17' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<130) - 5' "$@"
diff --git a/src/Specific/solinas64_2e130m5_4limbs/feadd.c b/src/Specific/solinas64_2e130m5_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e130m5_4limbs/feadd.v b/src/Specific/solinas64_2e130m5_4limbs/feadd.v
deleted file mode 100644
index a9a0bacc2..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e130m5_4limbs.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/solinas64_2e130m5_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e130m5_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e130m5_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e130m5_4limbs/feaddDisplay.v
deleted file mode 100644
index f0a528c8e..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e130m5_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e130m5_4limbs/fecarry.v b/src/Specific/solinas64_2e130m5_4limbs/fecarry.v
deleted file mode 100644
index 32a1e9117..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e130m5_4limbs.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/solinas64_2e130m5_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e130m5_4limbs/fecarryDisplay.v
deleted file mode 100644
index f96429efd..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e130m5_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e130m5_4limbs/femul.c b/src/Specific/solinas64_2e130m5_4limbs/femul.c
deleted file mode 100644
index 0180fbf40..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x5 * (0x2 * ((uint128_t)x8 * x14))));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x5 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0x5 * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x21);
- { uint64_t x21 = ((uint64_t)x19 & 0x1ffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x20);
- { uint64_t x24 = ((uint64_t)x22 & 0xffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x21);
- { uint64_t x27 = ((uint64_t)x25 & 0x1ffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x20);
- { uint64_t x30 = ((uint64_t)x28 & 0xffffffff);
- { uint64_t x31 = (x21 + (0x5 * x29));
- { uint64_t x32 = (x31 >> 0x21);
- { uint64_t x33 = (x31 & 0x1ffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x20);
- { uint64_t x36 = (x34 & 0xffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e130m5_4limbs/femul.v b/src/Specific/solinas64_2e130m5_4limbs/femul.v
deleted file mode 100644
index 4fc8faddf..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e130m5_4limbs.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/solinas64_2e130m5_4limbs/femulDisplay.log b/src/Specific/solinas64_2e130m5_4limbs/femulDisplay.log
deleted file mode 100644
index 3f5eab4de..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x5 * (0x2 * ((uint128_t)x8 * x14))));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x5 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0x5 * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x21);
- uint64_t x21 = ((uint64_t)x19 & 0x1ffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x20);
- uint64_t x24 = ((uint64_t)x22 & 0xffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x21);
- uint64_t x27 = ((uint64_t)x25 & 0x1ffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x20);
- uint64_t x30 = ((uint64_t)x28 & 0xffffffff);
- uint64_t x31 = (x21 + (0x5 * x29));
- uint64_t x32 = (x31 >> 0x21);
- uint64_t x33 = (x31 & 0x1ffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x20);
- uint64_t x36 = (x34 & 0xffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e130m5_4limbs/femulDisplay.v b/src/Specific/solinas64_2e130m5_4limbs/femulDisplay.v
deleted file mode 100644
index 2495d29b5..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e130m5_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e130m5_4limbs/fesquare.c b/src/Specific/solinas64_2e130m5_4limbs/fesquare.c
deleted file mode 100644
index bed6a5a41..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x5 * (0x2 * ((uint128_t)x5 * x5))));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x5 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0x5 * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x21);
- { uint64_t x12 = ((uint64_t)x10 & 0x1ffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint64_t x14 = (uint64_t) (x13 >> 0x20);
- { uint64_t x15 = ((uint64_t)x13 & 0xffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x21);
- { uint64_t x18 = ((uint64_t)x16 & 0x1ffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x20);
- { uint64_t x21 = ((uint64_t)x19 & 0xffffffff);
- { uint64_t x22 = (x12 + (0x5 * x20));
- { uint64_t x23 = (x22 >> 0x21);
- { uint64_t x24 = (x22 & 0x1ffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x20);
- { uint64_t x27 = (x25 & 0xffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e130m5_4limbs/fesquare.v b/src/Specific/solinas64_2e130m5_4limbs/fesquare.v
deleted file mode 100644
index 6c3254087..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e130m5_4limbs.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/solinas64_2e130m5_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e130m5_4limbs/fesquareDisplay.log
deleted file mode 100644
index a7a33524a..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x5 * (0x2 * ((uint128_t)x5 * x5))));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x5 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0x5 * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- uint64_t x11 = (uint64_t) (x10 >> 0x21);
- uint64_t x12 = ((uint64_t)x10 & 0x1ffffffff);
- uint128_t x13 = (x11 + x9);
- uint64_t x14 = (uint64_t) (x13 >> 0x20);
- uint64_t x15 = ((uint64_t)x13 & 0xffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x21);
- uint64_t x18 = ((uint64_t)x16 & 0x1ffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x20);
- uint64_t x21 = ((uint64_t)x19 & 0xffffffff);
- uint64_t x22 = (x12 + (0x5 * x20));
- uint64_t x23 = (x22 >> 0x21);
- uint64_t x24 = (x22 & 0x1ffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x20);
- uint64_t x27 = (x25 & 0xffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e130m5_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e130m5_4limbs/fesquareDisplay.v
deleted file mode 100644
index 3a5d9f650..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e130m5_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e130m5_4limbs/fesub.c b/src/Specific/solinas64_2e130m5_4limbs/fesub.c
deleted file mode 100644
index 776a276d7..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x3fffffff6 + x5) - x11);
- out[1] = ((0x1fffffffe + x7) - x13);
- out[2] = ((0x3fffffffe + x9) - x15);
- out[3] = ((0x1fffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e130m5_4limbs/fesub.v b/src/Specific/solinas64_2e130m5_4limbs/fesub.v
deleted file mode 100644
index 7527a86f8..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e130m5_4limbs.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/solinas64_2e130m5_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e130m5_4limbs/fesubDisplay.log
deleted file mode 100644
index dec95f014..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0x1fffffffe + x8) - x14), ((0x3fffffffe + x9) - x15), ((0x1fffffffe + x7) - x13), ((0x3fffffff6 + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e130m5_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e130m5_4limbs/fesubDisplay.v
deleted file mode 100644
index ba6988d5d..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e130m5_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e130m5_4limbs/freeze.c b/src/Specific/solinas64_2e130m5_4limbs/freeze.c
deleted file mode 100644
index 091688155..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 33 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffb);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 32 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0xffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 33 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x1ffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 32 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0xffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0x1fffffffb);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 33 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0xffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 32 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0x1ffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 33 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0xffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 32 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e130m5_4limbs/freeze.v b/src/Specific/solinas64_2e130m5_4limbs/freeze.v
deleted file mode 100644
index 73bb65405..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e130m5_4limbs.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/solinas64_2e130m5_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e130m5_4limbs/freezeDisplay.log
deleted file mode 100644
index b242fa6fa..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 33 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffb);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 32 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0xffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 33 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x1ffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 32 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0xffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0x1fffffffb);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 33 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0xffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 32 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0x1ffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 33 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0xffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 32 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e130m5_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e130m5_4limbs/freezeDisplay.v
deleted file mode 100644
index ef8912fdf..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e130m5_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e130m5_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e130m5_4limbs/py_interpreter.sh
deleted file mode 100755
index 26a1c3f1a..000000000
--- a/src/Specific/solinas64_2e130m5_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**130 - 5' -Dmodulus_bytes='32.5' -Da24='121665'
diff --git a/src/Specific/solinas64_2e137m13_3limbs/CurveParameters.v b/src/Specific/solinas64_2e137m13_3limbs/CurveParameters.v
deleted file mode 100644
index 833f29658..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^137 - 13
-Base: 45 + 2/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 45 + 2/3;
- bitwidth := 64;
- s := 2^137;
- c := [(1, 13)];
- carry_chains := Some [seq 0 (pred 3); [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/solinas64_2e137m13_3limbs/Synthesis.v b/src/Specific/solinas64_2e137m13_3limbs/Synthesis.v
deleted file mode 100644
index ccc38845d..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e137m13_3limbs.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/solinas64_2e137m13_3limbs/compiler.sh b/src/Specific/solinas64_2e137m13_3limbs/compiler.sh
deleted file mode 100755
index b81be6eda..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{46,46,45}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<137) - 13' "$@"
diff --git a/src/Specific/solinas64_2e137m13_3limbs/compilerxx.sh b/src/Specific/solinas64_2e137m13_3limbs/compilerxx.sh
deleted file mode 100755
index b23fb0422..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{46,46,45}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<137) - 13' "$@"
diff --git a/src/Specific/solinas64_2e137m13_3limbs/feadd.c b/src/Specific/solinas64_2e137m13_3limbs/feadd.c
deleted file mode 100644
index 725c1f205..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/feadd.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = (x5 + x9);
- out[1] = (x7 + x11);
- out[2] = (x6 + x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e137m13_3limbs/feadd.v b/src/Specific/solinas64_2e137m13_3limbs/feadd.v
deleted file mode 100644
index d9edce574..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e137m13_3limbs.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/solinas64_2e137m13_3limbs/feaddDisplay.log b/src/Specific/solinas64_2e137m13_3limbs/feaddDisplay.log
deleted file mode 100644
index 64fb467ef..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- ((x6 + x10), (x7 + x11), (x5 + x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e137m13_3limbs/feaddDisplay.v b/src/Specific/solinas64_2e137m13_3limbs/feaddDisplay.v
deleted file mode 100644
index adfa01f08..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e137m13_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e137m13_3limbs/fecarry.v b/src/Specific/solinas64_2e137m13_3limbs/fecarry.v
deleted file mode 100644
index bba33b23a..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e137m13_3limbs.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/solinas64_2e137m13_3limbs/fecarryDisplay.v b/src/Specific/solinas64_2e137m13_3limbs/fecarryDisplay.v
deleted file mode 100644
index 5942fc150..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e137m13_3limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e137m13_3limbs/femul.c b/src/Specific/solinas64_2e137m13_3limbs/femul.c
deleted file mode 100644
index e3a2963cc..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/femul.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint128_t x12 = (((uint128_t)x5 * x10) + (((uint128_t)x7 * x11) + ((uint128_t)x6 * x9)));
- { uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0xd * (0x2 * ((uint128_t)x6 * x10))));
- { uint128_t x14 = (((uint128_t)x5 * x9) + (0xd * ((0x2 * ((uint128_t)x7 * x10)) + (0x2 * ((uint128_t)x6 * x11)))));
- { uint64_t x15 = (uint64_t) (x14 >> 0x2e);
- { uint64_t x16 = ((uint64_t)x14 & 0x3fffffffffff);
- { uint128_t x17 = (x15 + x13);
- { uint64_t x18 = (uint64_t) (x17 >> 0x2e);
- { uint64_t x19 = ((uint64_t)x17 & 0x3fffffffffff);
- { uint128_t x20 = (x18 + x12);
- { uint64_t x21 = (uint64_t) (x20 >> 0x2d);
- { uint64_t x22 = ((uint64_t)x20 & 0x1fffffffffff);
- { uint64_t x23 = (x16 + (0xd * x21));
- { uint64_t x24 = (x23 >> 0x2e);
- { uint64_t x25 = (x23 & 0x3fffffffffff);
- { uint64_t x26 = (x24 + x19);
- { uint64_t x27 = (x26 >> 0x2e);
- { uint64_t x28 = (x26 & 0x3fffffffffff);
- out[0] = x25;
- out[1] = x28;
- out[2] = (x27 + x22);
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e137m13_3limbs/femul.v b/src/Specific/solinas64_2e137m13_3limbs/femul.v
deleted file mode 100644
index 23ba24967..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e137m13_3limbs.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/solinas64_2e137m13_3limbs/femulDisplay.log b/src/Specific/solinas64_2e137m13_3limbs/femulDisplay.log
deleted file mode 100644
index bd7d6387b..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint128_t x12 = (((uint128_t)x5 * x10) + (((uint128_t)x7 * x11) + ((uint128_t)x6 * x9)));
- uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0xd * (0x2 * ((uint128_t)x6 * x10))));
- uint128_t x14 = (((uint128_t)x5 * x9) + (0xd * ((0x2 * ((uint128_t)x7 * x10)) + (0x2 * ((uint128_t)x6 * x11)))));
- uint64_t x15 = (uint64_t) (x14 >> 0x2e);
- uint64_t x16 = ((uint64_t)x14 & 0x3fffffffffff);
- uint128_t x17 = (x15 + x13);
- uint64_t x18 = (uint64_t) (x17 >> 0x2e);
- uint64_t x19 = ((uint64_t)x17 & 0x3fffffffffff);
- uint128_t x20 = (x18 + x12);
- uint64_t x21 = (uint64_t) (x20 >> 0x2d);
- uint64_t x22 = ((uint64_t)x20 & 0x1fffffffffff);
- uint64_t x23 = (x16 + (0xd * x21));
- uint64_t x24 = (x23 >> 0x2e);
- uint64_t x25 = (x23 & 0x3fffffffffff);
- uint64_t x26 = (x24 + x19);
- uint64_t x27 = (x26 >> 0x2e);
- uint64_t x28 = (x26 & 0x3fffffffffff);
- return ((x27 + x22), Return x28, Return x25))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e137m13_3limbs/femulDisplay.v b/src/Specific/solinas64_2e137m13_3limbs/femulDisplay.v
deleted file mode 100644
index 8d98c1340..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e137m13_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e137m13_3limbs/fesquare.c b/src/Specific/solinas64_2e137m13_3limbs/fesquare.c
deleted file mode 100644
index 0f3716434..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/fesquare.c
+++ /dev/null
@@ -1,26 +0,0 @@
-static void fesquare(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x5 = (((uint128_t)x2 * x3) + (((uint128_t)x4 * x4) + ((uint128_t)x3 * x2)));
- { uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xd * (0x2 * ((uint128_t)x3 * x3))));
- { uint128_t x7 = (((uint128_t)x2 * x2) + (0xd * ((0x2 * ((uint128_t)x4 * x3)) + (0x2 * ((uint128_t)x3 * x4)))));
- { uint64_t x8 = (uint64_t) (x7 >> 0x2e);
- { uint64_t x9 = ((uint64_t)x7 & 0x3fffffffffff);
- { uint128_t x10 = (x8 + x6);
- { uint64_t x11 = (uint64_t) (x10 >> 0x2e);
- { uint64_t x12 = ((uint64_t)x10 & 0x3fffffffffff);
- { uint128_t x13 = (x11 + x5);
- { uint64_t x14 = (uint64_t) (x13 >> 0x2d);
- { uint64_t x15 = ((uint64_t)x13 & 0x1fffffffffff);
- { uint64_t x16 = (x9 + (0xd * x14));
- { uint64_t x17 = (x16 >> 0x2e);
- { uint64_t x18 = (x16 & 0x3fffffffffff);
- { uint64_t x19 = (x17 + x12);
- { uint64_t x20 = (x19 >> 0x2e);
- { uint64_t x21 = (x19 & 0x3fffffffffff);
- out[0] = x18;
- out[1] = x21;
- out[2] = (x20 + x15);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e137m13_3limbs/fesquare.v b/src/Specific/solinas64_2e137m13_3limbs/fesquare.v
deleted file mode 100644
index 0646821cc..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e137m13_3limbs.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/solinas64_2e137m13_3limbs/fesquareDisplay.log b/src/Specific/solinas64_2e137m13_3limbs/fesquareDisplay.log
deleted file mode 100644
index be6402492..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint128_t x5 = (((uint128_t)x2 * x3) + (((uint128_t)x4 * x4) + ((uint128_t)x3 * x2)));
- uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xd * (0x2 * ((uint128_t)x3 * x3))));
- uint128_t x7 = (((uint128_t)x2 * x2) + (0xd * ((0x2 * ((uint128_t)x4 * x3)) + (0x2 * ((uint128_t)x3 * x4)))));
- uint64_t x8 = (uint64_t) (x7 >> 0x2e);
- uint64_t x9 = ((uint64_t)x7 & 0x3fffffffffff);
- uint128_t x10 = (x8 + x6);
- uint64_t x11 = (uint64_t) (x10 >> 0x2e);
- uint64_t x12 = ((uint64_t)x10 & 0x3fffffffffff);
- uint128_t x13 = (x11 + x5);
- uint64_t x14 = (uint64_t) (x13 >> 0x2d);
- uint64_t x15 = ((uint64_t)x13 & 0x1fffffffffff);
- uint64_t x16 = (x9 + (0xd * x14));
- uint64_t x17 = (x16 >> 0x2e);
- uint64_t x18 = (x16 & 0x3fffffffffff);
- uint64_t x19 = (x17 + x12);
- uint64_t x20 = (x19 >> 0x2e);
- uint64_t x21 = (x19 & 0x3fffffffffff);
- return ((x20 + x15), Return x21, Return x18))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e137m13_3limbs/fesquareDisplay.v b/src/Specific/solinas64_2e137m13_3limbs/fesquareDisplay.v
deleted file mode 100644
index 9bda8f18c..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e137m13_3limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e137m13_3limbs/fesub.c b/src/Specific/solinas64_2e137m13_3limbs/fesub.c
deleted file mode 100644
index 43c7089ba..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/fesub.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = ((0x7fffffffffe6 + x5) - x9);
- out[1] = ((0x7ffffffffffe + x7) - x11);
- out[2] = ((0x3ffffffffffe + x6) - x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e137m13_3limbs/fesub.v b/src/Specific/solinas64_2e137m13_3limbs/fesub.v
deleted file mode 100644
index 72eddbe0a..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e137m13_3limbs.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/solinas64_2e137m13_3limbs/fesubDisplay.log b/src/Specific/solinas64_2e137m13_3limbs/fesubDisplay.log
deleted file mode 100644
index d9a19e025..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- (((0x3ffffffffffe + x6) - x10), ((0x7ffffffffffe + x7) - x11), ((0x7fffffffffe6 + x5) - x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e137m13_3limbs/fesubDisplay.v b/src/Specific/solinas64_2e137m13_3limbs/fesubDisplay.v
deleted file mode 100644
index 327e3bff9..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e137m13_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e137m13_3limbs/freeze.c b/src/Specific/solinas64_2e137m13_3limbs/freeze.c
deleted file mode 100644
index ca0572fce..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/freeze.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void freeze(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffff3);
- { uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x3fffffffffff);
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x1fffffffffff);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0x3ffffffffff3);
- { uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- { uint64_t x19 = (x14 & 0x3fffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- { uint64_t x23 = (x14 & 0x1fffffffffff);
- { uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e137m13_3limbs/freeze.v b/src/Specific/solinas64_2e137m13_3limbs/freeze.v
deleted file mode 100644
index c8293ae87..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e137m13_3limbs.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/solinas64_2e137m13_3limbs/freezeDisplay.log b/src/Specific/solinas64_2e137m13_3limbs/freezeDisplay.log
deleted file mode 100644
index b748f9e0f..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/freezeDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffff3);
- uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x3fffffffffff);
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x1fffffffffff);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0x3ffffffffff3);
- uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- uint64_t x19 = (x14 & 0x3fffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- uint64_t x23 = (x14 & 0x1fffffffffff);
- uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e137m13_3limbs/freezeDisplay.v b/src/Specific/solinas64_2e137m13_3limbs/freezeDisplay.v
deleted file mode 100644
index 55810457e..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e137m13_3limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e137m13_3limbs/py_interpreter.sh b/src/Specific/solinas64_2e137m13_3limbs/py_interpreter.sh
deleted file mode 100755
index e4f2ab231..000000000
--- a/src/Specific/solinas64_2e137m13_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**137 - 13' -Dmodulus_bytes='45 + 2/3' -Da24='121665'
diff --git a/src/Specific/solinas64_2e137m13_4limbs/CurveParameters.v b/src/Specific/solinas64_2e137m13_4limbs/CurveParameters.v
deleted file mode 100644
index e8e42dabb..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^137 - 13
-Base: 34.25
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 34 + 1/4;
- bitwidth := 64;
- s := 2^137;
- c := [(1, 13)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e137m13_4limbs/Synthesis.v b/src/Specific/solinas64_2e137m13_4limbs/Synthesis.v
deleted file mode 100644
index 96bd75af8..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e137m13_4limbs.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/solinas64_2e137m13_4limbs/compiler.sh b/src/Specific/solinas64_2e137m13_4limbs/compiler.sh
deleted file mode 100755
index e5043aa9b..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{35,34,34,34}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<137) - 13' "$@"
diff --git a/src/Specific/solinas64_2e137m13_4limbs/compilerxx.sh b/src/Specific/solinas64_2e137m13_4limbs/compilerxx.sh
deleted file mode 100755
index b5ebd65ac..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{35,34,34,34}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf3}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<137) - 13' "$@"
diff --git a/src/Specific/solinas64_2e137m13_4limbs/feadd.c b/src/Specific/solinas64_2e137m13_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e137m13_4limbs/feadd.v b/src/Specific/solinas64_2e137m13_4limbs/feadd.v
deleted file mode 100644
index 017b0023d..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e137m13_4limbs.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/solinas64_2e137m13_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e137m13_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e137m13_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e137m13_4limbs/feaddDisplay.v
deleted file mode 100644
index 7ebd7b26c..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e137m13_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e137m13_4limbs/fecarry.v b/src/Specific/solinas64_2e137m13_4limbs/fecarry.v
deleted file mode 100644
index b26d7217c..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e137m13_4limbs.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/solinas64_2e137m13_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e137m13_4limbs/fecarryDisplay.v
deleted file mode 100644
index 4815eeda4..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e137m13_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e137m13_4limbs/femul.c b/src/Specific/solinas64_2e137m13_4limbs/femul.c
deleted file mode 100644
index d68990736..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + ((0x2 * ((uint128_t)x7 * x15)) + ((0x2 * ((uint128_t)x9 * x13)) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0xd * ((uint128_t)x8 * x14)));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0xd * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0xd * ((0x2 * ((uint128_t)x7 * x14)) + ((0x2 * ((uint128_t)x9 * x15)) + (0x2 * ((uint128_t)x8 * x13))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x23);
- { uint64_t x21 = ((uint64_t)x19 & 0x7ffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x22);
- { uint64_t x24 = ((uint64_t)x22 & 0x3ffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x22);
- { uint64_t x27 = ((uint64_t)x25 & 0x3ffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x22);
- { uint64_t x30 = ((uint64_t)x28 & 0x3ffffffff);
- { uint64_t x31 = (x21 + (0xd * x29));
- { uint64_t x32 = (x31 >> 0x23);
- { uint64_t x33 = (x31 & 0x7ffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x22);
- { uint64_t x36 = (x34 & 0x3ffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e137m13_4limbs/femul.v b/src/Specific/solinas64_2e137m13_4limbs/femul.v
deleted file mode 100644
index 850b68176..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e137m13_4limbs.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/solinas64_2e137m13_4limbs/femulDisplay.log b/src/Specific/solinas64_2e137m13_4limbs/femulDisplay.log
deleted file mode 100644
index 403577545..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + ((0x2 * ((uint128_t)x7 * x15)) + ((0x2 * ((uint128_t)x9 * x13)) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0xd * ((uint128_t)x8 * x14)));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0xd * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0xd * ((0x2 * ((uint128_t)x7 * x14)) + ((0x2 * ((uint128_t)x9 * x15)) + (0x2 * ((uint128_t)x8 * x13))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x23);
- uint64_t x21 = ((uint64_t)x19 & 0x7ffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x22);
- uint64_t x24 = ((uint64_t)x22 & 0x3ffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x22);
- uint64_t x27 = ((uint64_t)x25 & 0x3ffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x22);
- uint64_t x30 = ((uint64_t)x28 & 0x3ffffffff);
- uint64_t x31 = (x21 + (0xd * x29));
- uint64_t x32 = (x31 >> 0x23);
- uint64_t x33 = (x31 & 0x7ffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x22);
- uint64_t x36 = (x34 & 0x3ffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e137m13_4limbs/femulDisplay.v b/src/Specific/solinas64_2e137m13_4limbs/femulDisplay.v
deleted file mode 100644
index 5406d3dfe..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e137m13_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e137m13_4limbs/fesquare.c b/src/Specific/solinas64_2e137m13_4limbs/fesquare.c
deleted file mode 100644
index ea414891a..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0xd * ((uint128_t)x5 * x5)));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xd * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0xd * ((0x2 * ((uint128_t)x4 * x5)) + ((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x5 * x4))))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x23);
- { uint64_t x12 = ((uint64_t)x10 & 0x7ffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint64_t x14 = (uint64_t) (x13 >> 0x22);
- { uint64_t x15 = ((uint64_t)x13 & 0x3ffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x22);
- { uint64_t x18 = ((uint64_t)x16 & 0x3ffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x22);
- { uint64_t x21 = ((uint64_t)x19 & 0x3ffffffff);
- { uint64_t x22 = (x12 + (0xd * x20));
- { uint64_t x23 = (x22 >> 0x23);
- { uint64_t x24 = (x22 & 0x7ffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x22);
- { uint64_t x27 = (x25 & 0x3ffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e137m13_4limbs/fesquare.v b/src/Specific/solinas64_2e137m13_4limbs/fesquare.v
deleted file mode 100644
index 5fc502cad..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e137m13_4limbs.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/solinas64_2e137m13_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e137m13_4limbs/fesquareDisplay.log
deleted file mode 100644
index dce7d48c9..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0xd * ((uint128_t)x5 * x5)));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xd * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0xd * ((0x2 * ((uint128_t)x4 * x5)) + ((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x5 * x4))))));
- uint64_t x11 = (uint64_t) (x10 >> 0x23);
- uint64_t x12 = ((uint64_t)x10 & 0x7ffffffff);
- uint128_t x13 = (x11 + x9);
- uint64_t x14 = (uint64_t) (x13 >> 0x22);
- uint64_t x15 = ((uint64_t)x13 & 0x3ffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x22);
- uint64_t x18 = ((uint64_t)x16 & 0x3ffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x22);
- uint64_t x21 = ((uint64_t)x19 & 0x3ffffffff);
- uint64_t x22 = (x12 + (0xd * x20));
- uint64_t x23 = (x22 >> 0x23);
- uint64_t x24 = (x22 & 0x7ffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x22);
- uint64_t x27 = (x25 & 0x3ffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e137m13_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e137m13_4limbs/fesquareDisplay.v
deleted file mode 100644
index 108f197bd..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e137m13_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e137m13_4limbs/fesub.c b/src/Specific/solinas64_2e137m13_4limbs/fesub.c
deleted file mode 100644
index a4ecc2809..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0xfffffffe6 + x5) - x11);
- out[1] = ((0x7fffffffe + x7) - x13);
- out[2] = ((0x7fffffffe + x9) - x15);
- out[3] = ((0x7fffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e137m13_4limbs/fesub.v b/src/Specific/solinas64_2e137m13_4limbs/fesub.v
deleted file mode 100644
index 5a5687f1a..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e137m13_4limbs.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/solinas64_2e137m13_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e137m13_4limbs/fesubDisplay.log
deleted file mode 100644
index c007b2271..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0x7fffffffe + x8) - x14), ((0x7fffffffe + x9) - x15), ((0x7fffffffe + x7) - x13), ((0xfffffffe6 + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e137m13_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e137m13_4limbs/fesubDisplay.v
deleted file mode 100644
index a456e44f2..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e137m13_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e137m13_4limbs/freeze.c b/src/Specific/solinas64_2e137m13_4limbs/freeze.c
deleted file mode 100644
index 0ff635111..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffff3);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 34 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x3ffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 34 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x3ffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 34 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x3ffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0x7fffffff3);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0x3ffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 34 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0x3ffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 34 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x3ffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 34 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e137m13_4limbs/freeze.v b/src/Specific/solinas64_2e137m13_4limbs/freeze.v
deleted file mode 100644
index 6f26d425f..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e137m13_4limbs.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/solinas64_2e137m13_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e137m13_4limbs/freezeDisplay.log
deleted file mode 100644
index ca2db3c69..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffff3);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 34 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x3ffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 34 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x3ffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 34 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x3ffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0x7fffffff3);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0x3ffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 34 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0x3ffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 34 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x3ffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 34 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e137m13_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e137m13_4limbs/freezeDisplay.v
deleted file mode 100644
index c46bc4b12..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e137m13_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e137m13_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e137m13_4limbs/py_interpreter.sh
deleted file mode 100755
index 40f7c141c..000000000
--- a/src/Specific/solinas64_2e137m13_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**137 - 13' -Dmodulus_bytes='34.25' -Da24='121665'
diff --git a/src/Specific/solinas64_2e140m27_3limbs/CurveParameters.v b/src/Specific/solinas64_2e140m27_3limbs/CurveParameters.v
deleted file mode 100644
index 9b148920f..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^140 - 27
-Base: 46 + 2/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 46 + 2/3;
- bitwidth := 64;
- s := 2^140;
- c := [(1, 27)];
- carry_chains := Some [seq 0 (pred 3); [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/solinas64_2e140m27_3limbs/Synthesis.v b/src/Specific/solinas64_2e140m27_3limbs/Synthesis.v
deleted file mode 100644
index 3b4b7d404..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e140m27_3limbs.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/solinas64_2e140m27_3limbs/compiler.sh b/src/Specific/solinas64_2e140m27_3limbs/compiler.sh
deleted file mode 100755
index 1b12adff0..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,47,46}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<140) - 27' "$@"
diff --git a/src/Specific/solinas64_2e140m27_3limbs/compilerxx.sh b/src/Specific/solinas64_2e140m27_3limbs/compilerxx.sh
deleted file mode 100755
index 8e8e157a7..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,47,46}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<140) - 27' "$@"
diff --git a/src/Specific/solinas64_2e140m27_3limbs/feadd.c b/src/Specific/solinas64_2e140m27_3limbs/feadd.c
deleted file mode 100644
index 725c1f205..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/feadd.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = (x5 + x9);
- out[1] = (x7 + x11);
- out[2] = (x6 + x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e140m27_3limbs/feadd.v b/src/Specific/solinas64_2e140m27_3limbs/feadd.v
deleted file mode 100644
index 621ba1fed..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e140m27_3limbs.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/solinas64_2e140m27_3limbs/feaddDisplay.log b/src/Specific/solinas64_2e140m27_3limbs/feaddDisplay.log
deleted file mode 100644
index 64fb467ef..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- ((x6 + x10), (x7 + x11), (x5 + x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e140m27_3limbs/feaddDisplay.v b/src/Specific/solinas64_2e140m27_3limbs/feaddDisplay.v
deleted file mode 100644
index 3b012f996..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e140m27_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e140m27_3limbs/fecarry.v b/src/Specific/solinas64_2e140m27_3limbs/fecarry.v
deleted file mode 100644
index 4d384093b..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e140m27_3limbs.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/solinas64_2e140m27_3limbs/fecarryDisplay.v b/src/Specific/solinas64_2e140m27_3limbs/fecarryDisplay.v
deleted file mode 100644
index d1a5a5937..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e140m27_3limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e140m27_3limbs/femul.c b/src/Specific/solinas64_2e140m27_3limbs/femul.c
deleted file mode 100644
index 9c6cf807d..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/femul.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint128_t x12 = (((uint128_t)x5 * x10) + (((uint128_t)x7 * x11) + ((uint128_t)x6 * x9)));
- { uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0x1b * (0x2 * ((uint128_t)x6 * x10))));
- { uint128_t x14 = (((uint128_t)x5 * x9) + (0x1b * ((0x2 * ((uint128_t)x7 * x10)) + (0x2 * ((uint128_t)x6 * x11)))));
- { uint64_t x15 = (uint64_t) (x14 >> 0x2f);
- { uint64_t x16 = ((uint64_t)x14 & 0x7fffffffffff);
- { uint128_t x17 = (x15 + x13);
- { uint64_t x18 = (uint64_t) (x17 >> 0x2f);
- { uint64_t x19 = ((uint64_t)x17 & 0x7fffffffffff);
- { uint128_t x20 = (x18 + x12);
- { uint64_t x21 = (uint64_t) (x20 >> 0x2e);
- { uint64_t x22 = ((uint64_t)x20 & 0x3fffffffffff);
- { uint64_t x23 = (x16 + (0x1b * x21));
- { uint64_t x24 = (x23 >> 0x2f);
- { uint64_t x25 = (x23 & 0x7fffffffffff);
- { uint64_t x26 = (x24 + x19);
- { uint64_t x27 = (x26 >> 0x2f);
- { uint64_t x28 = (x26 & 0x7fffffffffff);
- out[0] = x25;
- out[1] = x28;
- out[2] = (x27 + x22);
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e140m27_3limbs/femul.v b/src/Specific/solinas64_2e140m27_3limbs/femul.v
deleted file mode 100644
index 17887e83e..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e140m27_3limbs.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/solinas64_2e140m27_3limbs/femulDisplay.log b/src/Specific/solinas64_2e140m27_3limbs/femulDisplay.log
deleted file mode 100644
index 652b97b3c..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint128_t x12 = (((uint128_t)x5 * x10) + (((uint128_t)x7 * x11) + ((uint128_t)x6 * x9)));
- uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0x1b * (0x2 * ((uint128_t)x6 * x10))));
- uint128_t x14 = (((uint128_t)x5 * x9) + (0x1b * ((0x2 * ((uint128_t)x7 * x10)) + (0x2 * ((uint128_t)x6 * x11)))));
- uint64_t x15 = (uint64_t) (x14 >> 0x2f);
- uint64_t x16 = ((uint64_t)x14 & 0x7fffffffffff);
- uint128_t x17 = (x15 + x13);
- uint64_t x18 = (uint64_t) (x17 >> 0x2f);
- uint64_t x19 = ((uint64_t)x17 & 0x7fffffffffff);
- uint128_t x20 = (x18 + x12);
- uint64_t x21 = (uint64_t) (x20 >> 0x2e);
- uint64_t x22 = ((uint64_t)x20 & 0x3fffffffffff);
- uint64_t x23 = (x16 + (0x1b * x21));
- uint64_t x24 = (x23 >> 0x2f);
- uint64_t x25 = (x23 & 0x7fffffffffff);
- uint64_t x26 = (x24 + x19);
- uint64_t x27 = (x26 >> 0x2f);
- uint64_t x28 = (x26 & 0x7fffffffffff);
- return ((x27 + x22), Return x28, Return x25))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e140m27_3limbs/femulDisplay.v b/src/Specific/solinas64_2e140m27_3limbs/femulDisplay.v
deleted file mode 100644
index 4a2b03d05..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e140m27_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e140m27_3limbs/fesquare.c b/src/Specific/solinas64_2e140m27_3limbs/fesquare.c
deleted file mode 100644
index aa8167fb3..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/fesquare.c
+++ /dev/null
@@ -1,26 +0,0 @@
-static void fesquare(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x5 = (((uint128_t)x2 * x3) + (((uint128_t)x4 * x4) + ((uint128_t)x3 * x2)));
- { uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1b * (0x2 * ((uint128_t)x3 * x3))));
- { uint128_t x7 = (((uint128_t)x2 * x2) + (0x1b * ((0x2 * ((uint128_t)x4 * x3)) + (0x2 * ((uint128_t)x3 * x4)))));
- { uint64_t x8 = (uint64_t) (x7 >> 0x2f);
- { uint64_t x9 = ((uint64_t)x7 & 0x7fffffffffff);
- { uint128_t x10 = (x8 + x6);
- { uint64_t x11 = (uint64_t) (x10 >> 0x2f);
- { uint64_t x12 = ((uint64_t)x10 & 0x7fffffffffff);
- { uint128_t x13 = (x11 + x5);
- { uint64_t x14 = (uint64_t) (x13 >> 0x2e);
- { uint64_t x15 = ((uint64_t)x13 & 0x3fffffffffff);
- { uint64_t x16 = (x9 + (0x1b * x14));
- { uint64_t x17 = (x16 >> 0x2f);
- { uint64_t x18 = (x16 & 0x7fffffffffff);
- { uint64_t x19 = (x17 + x12);
- { uint64_t x20 = (x19 >> 0x2f);
- { uint64_t x21 = (x19 & 0x7fffffffffff);
- out[0] = x18;
- out[1] = x21;
- out[2] = (x20 + x15);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e140m27_3limbs/fesquare.v b/src/Specific/solinas64_2e140m27_3limbs/fesquare.v
deleted file mode 100644
index 7420c1c30..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e140m27_3limbs.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/solinas64_2e140m27_3limbs/fesquareDisplay.log b/src/Specific/solinas64_2e140m27_3limbs/fesquareDisplay.log
deleted file mode 100644
index 4b83253a8..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint128_t x5 = (((uint128_t)x2 * x3) + (((uint128_t)x4 * x4) + ((uint128_t)x3 * x2)));
- uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1b * (0x2 * ((uint128_t)x3 * x3))));
- uint128_t x7 = (((uint128_t)x2 * x2) + (0x1b * ((0x2 * ((uint128_t)x4 * x3)) + (0x2 * ((uint128_t)x3 * x4)))));
- uint64_t x8 = (uint64_t) (x7 >> 0x2f);
- uint64_t x9 = ((uint64_t)x7 & 0x7fffffffffff);
- uint128_t x10 = (x8 + x6);
- uint64_t x11 = (uint64_t) (x10 >> 0x2f);
- uint64_t x12 = ((uint64_t)x10 & 0x7fffffffffff);
- uint128_t x13 = (x11 + x5);
- uint64_t x14 = (uint64_t) (x13 >> 0x2e);
- uint64_t x15 = ((uint64_t)x13 & 0x3fffffffffff);
- uint64_t x16 = (x9 + (0x1b * x14));
- uint64_t x17 = (x16 >> 0x2f);
- uint64_t x18 = (x16 & 0x7fffffffffff);
- uint64_t x19 = (x17 + x12);
- uint64_t x20 = (x19 >> 0x2f);
- uint64_t x21 = (x19 & 0x7fffffffffff);
- return ((x20 + x15), Return x21, Return x18))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e140m27_3limbs/fesquareDisplay.v b/src/Specific/solinas64_2e140m27_3limbs/fesquareDisplay.v
deleted file mode 100644
index 07e281cda..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e140m27_3limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e140m27_3limbs/fesub.c b/src/Specific/solinas64_2e140m27_3limbs/fesub.c
deleted file mode 100644
index da837b1c9..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/fesub.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = ((0xffffffffffca + x5) - x9);
- out[1] = ((0xfffffffffffe + x7) - x11);
- out[2] = ((0x7ffffffffffe + x6) - x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e140m27_3limbs/fesub.v b/src/Specific/solinas64_2e140m27_3limbs/fesub.v
deleted file mode 100644
index 43bad3c04..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e140m27_3limbs.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/solinas64_2e140m27_3limbs/fesubDisplay.log b/src/Specific/solinas64_2e140m27_3limbs/fesubDisplay.log
deleted file mode 100644
index 12210376d..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- (((0x7ffffffffffe + x6) - x10), ((0xfffffffffffe + x7) - x11), ((0xffffffffffca + x5) - x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e140m27_3limbs/fesubDisplay.v b/src/Specific/solinas64_2e140m27_3limbs/fesubDisplay.v
deleted file mode 100644
index 541d1c9c9..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e140m27_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e140m27_3limbs/freeze.c b/src/Specific/solinas64_2e140m27_3limbs/freeze.c
deleted file mode 100644
index 0e10c06cc..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/freeze.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void freeze(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffe5);
- { uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x7fffffffffff);
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x3fffffffffff);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0x7fffffffffe5);
- { uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- { uint64_t x19 = (x14 & 0x7fffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- { uint64_t x23 = (x14 & 0x3fffffffffff);
- { uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e140m27_3limbs/freeze.v b/src/Specific/solinas64_2e140m27_3limbs/freeze.v
deleted file mode 100644
index 555bbf38a..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e140m27_3limbs.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/solinas64_2e140m27_3limbs/freezeDisplay.log b/src/Specific/solinas64_2e140m27_3limbs/freezeDisplay.log
deleted file mode 100644
index 15ce8018a..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/freezeDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffe5);
- uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x7fffffffffff);
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x3fffffffffff);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0x7fffffffffe5);
- uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- uint64_t x19 = (x14 & 0x7fffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- uint64_t x23 = (x14 & 0x3fffffffffff);
- uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e140m27_3limbs/freezeDisplay.v b/src/Specific/solinas64_2e140m27_3limbs/freezeDisplay.v
deleted file mode 100644
index fbf49ef23..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e140m27_3limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e140m27_3limbs/py_interpreter.sh b/src/Specific/solinas64_2e140m27_3limbs/py_interpreter.sh
deleted file mode 100755
index 8a60a873c..000000000
--- a/src/Specific/solinas64_2e140m27_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**140 - 27' -Dmodulus_bytes='46 + 2/3' -Da24='121665'
diff --git a/src/Specific/solinas64_2e140m27_4limbs/CurveParameters.v b/src/Specific/solinas64_2e140m27_4limbs/CurveParameters.v
deleted file mode 100644
index 8b2d58b07..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^140 - 27
-Base: 35
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 35;
- bitwidth := 64;
- s := 2^140;
- c := [(1, 27)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e140m27_4limbs/Synthesis.v b/src/Specific/solinas64_2e140m27_4limbs/Synthesis.v
deleted file mode 100644
index 9c03e6275..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e140m27_4limbs.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/solinas64_2e140m27_4limbs/compiler.sh b/src/Specific/solinas64_2e140m27_4limbs/compiler.sh
deleted file mode 100755
index 0c0988a77..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{35,35,35,35}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<140) - 27' "$@"
diff --git a/src/Specific/solinas64_2e140m27_4limbs/compilerxx.sh b/src/Specific/solinas64_2e140m27_4limbs/compilerxx.sh
deleted file mode 100755
index 4d1ab59df..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{35,35,35,35}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<140) - 27' "$@"
diff --git a/src/Specific/solinas64_2e140m27_4limbs/feadd.c b/src/Specific/solinas64_2e140m27_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e140m27_4limbs/feadd.v b/src/Specific/solinas64_2e140m27_4limbs/feadd.v
deleted file mode 100644
index bf89a167e..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e140m27_4limbs.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/solinas64_2e140m27_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e140m27_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e140m27_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e140m27_4limbs/feaddDisplay.v
deleted file mode 100644
index 964cc1072..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e140m27_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e140m27_4limbs/fecarry.v b/src/Specific/solinas64_2e140m27_4limbs/fecarry.v
deleted file mode 100644
index 0ce8eacd8..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e140m27_4limbs.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/solinas64_2e140m27_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e140m27_4limbs/fecarryDisplay.v
deleted file mode 100644
index 045490d4f..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e140m27_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e140m27_4limbs/femul.c b/src/Specific/solinas64_2e140m27_4limbs/femul.c
deleted file mode 100644
index 60bd565a7..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + (((uint128_t)x7 * x13) + ((uint128_t)x9 * x11))) + (0x1b * ((uint128_t)x8 * x14)));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x1b * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0x1b * (((uint128_t)x7 * x14) + (((uint128_t)x9 * x15) + ((uint128_t)x8 * x13)))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x23);
- { uint64_t x21 = ((uint64_t)x19 & 0x7ffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x23);
- { uint64_t x24 = ((uint64_t)x22 & 0x7ffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x23);
- { uint64_t x27 = ((uint64_t)x25 & 0x7ffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x23);
- { uint64_t x30 = ((uint64_t)x28 & 0x7ffffffff);
- { uint64_t x31 = (x21 + (0x1b * x29));
- { uint64_t x32 = (x31 >> 0x23);
- { uint64_t x33 = (x31 & 0x7ffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x23);
- { uint64_t x36 = (x34 & 0x7ffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e140m27_4limbs/femul.v b/src/Specific/solinas64_2e140m27_4limbs/femul.v
deleted file mode 100644
index 15105fced..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e140m27_4limbs.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/solinas64_2e140m27_4limbs/femulDisplay.log b/src/Specific/solinas64_2e140m27_4limbs/femulDisplay.log
deleted file mode 100644
index 1d8b8a24b..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + (((uint128_t)x7 * x13) + ((uint128_t)x9 * x11))) + (0x1b * ((uint128_t)x8 * x14)));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x1b * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0x1b * (((uint128_t)x7 * x14) + (((uint128_t)x9 * x15) + ((uint128_t)x8 * x13)))));
- uint64_t x20 = (uint64_t) (x19 >> 0x23);
- uint64_t x21 = ((uint64_t)x19 & 0x7ffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x23);
- uint64_t x24 = ((uint64_t)x22 & 0x7ffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x23);
- uint64_t x27 = ((uint64_t)x25 & 0x7ffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x23);
- uint64_t x30 = ((uint64_t)x28 & 0x7ffffffff);
- uint64_t x31 = (x21 + (0x1b * x29));
- uint64_t x32 = (x31 >> 0x23);
- uint64_t x33 = (x31 & 0x7ffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x23);
- uint64_t x36 = (x34 & 0x7ffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e140m27_4limbs/femulDisplay.v b/src/Specific/solinas64_2e140m27_4limbs/femulDisplay.v
deleted file mode 100644
index 92dc15b2e..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e140m27_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e140m27_4limbs/fesquare.c b/src/Specific/solinas64_2e140m27_4limbs/fesquare.c
deleted file mode 100644
index d99bc0584..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x1b * ((uint128_t)x5 * x5)));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1b * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0x1b * (((uint128_t)x4 * x5) + (((uint128_t)x6 * x6) + ((uint128_t)x5 * x4)))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x23);
- { uint64_t x12 = ((uint64_t)x10 & 0x7ffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint64_t x14 = (uint64_t) (x13 >> 0x23);
- { uint64_t x15 = ((uint64_t)x13 & 0x7ffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x23);
- { uint64_t x18 = ((uint64_t)x16 & 0x7ffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x23);
- { uint64_t x21 = ((uint64_t)x19 & 0x7ffffffff);
- { uint64_t x22 = (x12 + (0x1b * x20));
- { uint64_t x23 = (x22 >> 0x23);
- { uint64_t x24 = (x22 & 0x7ffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x23);
- { uint64_t x27 = (x25 & 0x7ffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e140m27_4limbs/fesquare.v b/src/Specific/solinas64_2e140m27_4limbs/fesquare.v
deleted file mode 100644
index 5ecb99f83..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e140m27_4limbs.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/solinas64_2e140m27_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e140m27_4limbs/fesquareDisplay.log
deleted file mode 100644
index 102460441..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x1b * ((uint128_t)x5 * x5)));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1b * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0x1b * (((uint128_t)x4 * x5) + (((uint128_t)x6 * x6) + ((uint128_t)x5 * x4)))));
- uint64_t x11 = (uint64_t) (x10 >> 0x23);
- uint64_t x12 = ((uint64_t)x10 & 0x7ffffffff);
- uint128_t x13 = (x11 + x9);
- uint64_t x14 = (uint64_t) (x13 >> 0x23);
- uint64_t x15 = ((uint64_t)x13 & 0x7ffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x23);
- uint64_t x18 = ((uint64_t)x16 & 0x7ffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x23);
- uint64_t x21 = ((uint64_t)x19 & 0x7ffffffff);
- uint64_t x22 = (x12 + (0x1b * x20));
- uint64_t x23 = (x22 >> 0x23);
- uint64_t x24 = (x22 & 0x7ffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x23);
- uint64_t x27 = (x25 & 0x7ffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e140m27_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e140m27_4limbs/fesquareDisplay.v
deleted file mode 100644
index c2077c945..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e140m27_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e140m27_4limbs/fesub.c b/src/Specific/solinas64_2e140m27_4limbs/fesub.c
deleted file mode 100644
index b8cc9ed0d..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0xfffffffca + x5) - x11);
- out[1] = ((0xffffffffe + x7) - x13);
- out[2] = ((0xffffffffe + x9) - x15);
- out[3] = ((0xffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e140m27_4limbs/fesub.v b/src/Specific/solinas64_2e140m27_4limbs/fesub.v
deleted file mode 100644
index e783015db..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e140m27_4limbs.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/solinas64_2e140m27_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e140m27_4limbs/fesubDisplay.log
deleted file mode 100644
index a4d489ec2..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0xffffffffe + x8) - x14), ((0xffffffffe + x9) - x15), ((0xffffffffe + x7) - x13), ((0xfffffffca + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e140m27_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e140m27_4limbs/fesubDisplay.v
deleted file mode 100644
index 303d1708d..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e140m27_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e140m27_4limbs/freeze.c b/src/Specific/solinas64_2e140m27_4limbs/freeze.c
deleted file mode 100644
index 2d8379135..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffe5);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x7ffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x7ffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x7ffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0x7ffffffe5);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0x7ffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0x7ffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x7ffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e140m27_4limbs/freeze.v b/src/Specific/solinas64_2e140m27_4limbs/freeze.v
deleted file mode 100644
index c09ee7705..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e140m27_4limbs.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/solinas64_2e140m27_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e140m27_4limbs/freezeDisplay.log
deleted file mode 100644
index d3fcf0a5d..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffe5);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x7ffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x7ffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x7ffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0x7ffffffe5);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0x7ffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0x7ffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x7ffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e140m27_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e140m27_4limbs/freezeDisplay.v
deleted file mode 100644
index fbf1f5332..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e140m27_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e140m27_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e140m27_4limbs/py_interpreter.sh
deleted file mode 100755
index 70367901d..000000000
--- a/src/Specific/solinas64_2e140m27_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**140 - 27' -Dmodulus_bytes='35' -Da24='121665'
diff --git a/src/Specific/solinas64_2e141m9_3limbs/CurveParameters.v b/src/Specific/solinas64_2e141m9_3limbs/CurveParameters.v
deleted file mode 100644
index 0ad50a39e..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^141 - 9
-Base: 47
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 47;
- bitwidth := 64;
- s := 2^141;
- c := [(1, 9)];
- carry_chains := Some [seq 0 (pred 3); [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/solinas64_2e141m9_3limbs/Synthesis.v b/src/Specific/solinas64_2e141m9_3limbs/Synthesis.v
deleted file mode 100644
index 30a2c556b..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e141m9_3limbs.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/solinas64_2e141m9_3limbs/compiler.sh b/src/Specific/solinas64_2e141m9_3limbs/compiler.sh
deleted file mode 100755
index eb91a928d..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,47,47}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<141) - 9' "$@"
diff --git a/src/Specific/solinas64_2e141m9_3limbs/compilerxx.sh b/src/Specific/solinas64_2e141m9_3limbs/compilerxx.sh
deleted file mode 100755
index 0065a32f1..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,47,47}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<141) - 9' "$@"
diff --git a/src/Specific/solinas64_2e141m9_3limbs/feadd.c b/src/Specific/solinas64_2e141m9_3limbs/feadd.c
deleted file mode 100644
index 725c1f205..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/feadd.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = (x5 + x9);
- out[1] = (x7 + x11);
- out[2] = (x6 + x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e141m9_3limbs/feadd.v b/src/Specific/solinas64_2e141m9_3limbs/feadd.v
deleted file mode 100644
index c4d0e53e2..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e141m9_3limbs.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/solinas64_2e141m9_3limbs/feaddDisplay.log b/src/Specific/solinas64_2e141m9_3limbs/feaddDisplay.log
deleted file mode 100644
index 64fb467ef..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- ((x6 + x10), (x7 + x11), (x5 + x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e141m9_3limbs/feaddDisplay.v b/src/Specific/solinas64_2e141m9_3limbs/feaddDisplay.v
deleted file mode 100644
index e7cd8054f..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e141m9_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e141m9_3limbs/fecarry.v b/src/Specific/solinas64_2e141m9_3limbs/fecarry.v
deleted file mode 100644
index 93a7370f8..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e141m9_3limbs.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/solinas64_2e141m9_3limbs/fecarryDisplay.v b/src/Specific/solinas64_2e141m9_3limbs/fecarryDisplay.v
deleted file mode 100644
index a86ad3397..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e141m9_3limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e141m9_3limbs/femul.c b/src/Specific/solinas64_2e141m9_3limbs/femul.c
deleted file mode 100644
index adfd592ca..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/femul.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint128_t x12 = (((uint128_t)x5 * x10) + (((uint128_t)x7 * x11) + ((uint128_t)x6 * x9)));
- { uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0x9 * ((uint128_t)x6 * x10)));
- { uint128_t x14 = (((uint128_t)x5 * x9) + (0x9 * (((uint128_t)x7 * x10) + ((uint128_t)x6 * x11))));
- { uint64_t x15 = (uint64_t) (x14 >> 0x2f);
- { uint64_t x16 = ((uint64_t)x14 & 0x7fffffffffff);
- { uint128_t x17 = (x15 + x13);
- { uint64_t x18 = (uint64_t) (x17 >> 0x2f);
- { uint64_t x19 = ((uint64_t)x17 & 0x7fffffffffff);
- { uint128_t x20 = (x18 + x12);
- { uint64_t x21 = (uint64_t) (x20 >> 0x2f);
- { uint64_t x22 = ((uint64_t)x20 & 0x7fffffffffff);
- { uint64_t x23 = (x16 + (0x9 * x21));
- { uint64_t x24 = (x23 >> 0x2f);
- { uint64_t x25 = (x23 & 0x7fffffffffff);
- { uint64_t x26 = (x24 + x19);
- { uint64_t x27 = (x26 >> 0x2f);
- { uint64_t x28 = (x26 & 0x7fffffffffff);
- out[0] = x25;
- out[1] = x28;
- out[2] = (x27 + x22);
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e141m9_3limbs/femul.v b/src/Specific/solinas64_2e141m9_3limbs/femul.v
deleted file mode 100644
index b931028c5..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e141m9_3limbs.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/solinas64_2e141m9_3limbs/femulDisplay.log b/src/Specific/solinas64_2e141m9_3limbs/femulDisplay.log
deleted file mode 100644
index 178fcdec6..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint128_t x12 = (((uint128_t)x5 * x10) + (((uint128_t)x7 * x11) + ((uint128_t)x6 * x9)));
- uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0x9 * ((uint128_t)x6 * x10)));
- uint128_t x14 = (((uint128_t)x5 * x9) + (0x9 * (((uint128_t)x7 * x10) + ((uint128_t)x6 * x11))));
- uint64_t x15 = (uint64_t) (x14 >> 0x2f);
- uint64_t x16 = ((uint64_t)x14 & 0x7fffffffffff);
- uint128_t x17 = (x15 + x13);
- uint64_t x18 = (uint64_t) (x17 >> 0x2f);
- uint64_t x19 = ((uint64_t)x17 & 0x7fffffffffff);
- uint128_t x20 = (x18 + x12);
- uint64_t x21 = (uint64_t) (x20 >> 0x2f);
- uint64_t x22 = ((uint64_t)x20 & 0x7fffffffffff);
- uint64_t x23 = (x16 + (0x9 * x21));
- uint64_t x24 = (x23 >> 0x2f);
- uint64_t x25 = (x23 & 0x7fffffffffff);
- uint64_t x26 = (x24 + x19);
- uint64_t x27 = (x26 >> 0x2f);
- uint64_t x28 = (x26 & 0x7fffffffffff);
- return ((x27 + x22), Return x28, Return x25))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e141m9_3limbs/femulDisplay.v b/src/Specific/solinas64_2e141m9_3limbs/femulDisplay.v
deleted file mode 100644
index 4d5caf488..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e141m9_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e141m9_3limbs/fesquare.c b/src/Specific/solinas64_2e141m9_3limbs/fesquare.c
deleted file mode 100644
index ddcbf6334..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/fesquare.c
+++ /dev/null
@@ -1,26 +0,0 @@
-static void fesquare(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x5 = (((uint128_t)x2 * x3) + (((uint128_t)x4 * x4) + ((uint128_t)x3 * x2)));
- { uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x9 * ((uint128_t)x3 * x3)));
- { uint128_t x7 = (((uint128_t)x2 * x2) + (0x9 * (((uint128_t)x4 * x3) + ((uint128_t)x3 * x4))));
- { uint64_t x8 = (uint64_t) (x7 >> 0x2f);
- { uint64_t x9 = ((uint64_t)x7 & 0x7fffffffffff);
- { uint128_t x10 = (x8 + x6);
- { uint64_t x11 = (uint64_t) (x10 >> 0x2f);
- { uint64_t x12 = ((uint64_t)x10 & 0x7fffffffffff);
- { uint128_t x13 = (x11 + x5);
- { uint64_t x14 = (uint64_t) (x13 >> 0x2f);
- { uint64_t x15 = ((uint64_t)x13 & 0x7fffffffffff);
- { uint64_t x16 = (x9 + (0x9 * x14));
- { uint64_t x17 = (x16 >> 0x2f);
- { uint64_t x18 = (x16 & 0x7fffffffffff);
- { uint64_t x19 = (x17 + x12);
- { uint64_t x20 = (x19 >> 0x2f);
- { uint64_t x21 = (x19 & 0x7fffffffffff);
- out[0] = x18;
- out[1] = x21;
- out[2] = (x20 + x15);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e141m9_3limbs/fesquare.v b/src/Specific/solinas64_2e141m9_3limbs/fesquare.v
deleted file mode 100644
index cec7c148b..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e141m9_3limbs.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/solinas64_2e141m9_3limbs/fesquareDisplay.log b/src/Specific/solinas64_2e141m9_3limbs/fesquareDisplay.log
deleted file mode 100644
index 33bde0fba..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint128_t x5 = (((uint128_t)x2 * x3) + (((uint128_t)x4 * x4) + ((uint128_t)x3 * x2)));
- uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x9 * ((uint128_t)x3 * x3)));
- uint128_t x7 = (((uint128_t)x2 * x2) + (0x9 * (((uint128_t)x4 * x3) + ((uint128_t)x3 * x4))));
- uint64_t x8 = (uint64_t) (x7 >> 0x2f);
- uint64_t x9 = ((uint64_t)x7 & 0x7fffffffffff);
- uint128_t x10 = (x8 + x6);
- uint64_t x11 = (uint64_t) (x10 >> 0x2f);
- uint64_t x12 = ((uint64_t)x10 & 0x7fffffffffff);
- uint128_t x13 = (x11 + x5);
- uint64_t x14 = (uint64_t) (x13 >> 0x2f);
- uint64_t x15 = ((uint64_t)x13 & 0x7fffffffffff);
- uint64_t x16 = (x9 + (0x9 * x14));
- uint64_t x17 = (x16 >> 0x2f);
- uint64_t x18 = (x16 & 0x7fffffffffff);
- uint64_t x19 = (x17 + x12);
- uint64_t x20 = (x19 >> 0x2f);
- uint64_t x21 = (x19 & 0x7fffffffffff);
- return ((x20 + x15), Return x21, Return x18))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e141m9_3limbs/fesquareDisplay.v b/src/Specific/solinas64_2e141m9_3limbs/fesquareDisplay.v
deleted file mode 100644
index 34f7212e1..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e141m9_3limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e141m9_3limbs/fesub.c b/src/Specific/solinas64_2e141m9_3limbs/fesub.c
deleted file mode 100644
index 318c34358..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/fesub.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = ((0xffffffffffee + x5) - x9);
- out[1] = ((0xfffffffffffe + x7) - x11);
- out[2] = ((0xfffffffffffe + x6) - x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e141m9_3limbs/fesub.v b/src/Specific/solinas64_2e141m9_3limbs/fesub.v
deleted file mode 100644
index a33b42b6c..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e141m9_3limbs.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/solinas64_2e141m9_3limbs/fesubDisplay.log b/src/Specific/solinas64_2e141m9_3limbs/fesubDisplay.log
deleted file mode 100644
index 18bf8250e..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- (((0xfffffffffffe + x6) - x10), ((0xfffffffffffe + x7) - x11), ((0xffffffffffee + x5) - x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e141m9_3limbs/fesubDisplay.v b/src/Specific/solinas64_2e141m9_3limbs/fesubDisplay.v
deleted file mode 100644
index 57a6ea133..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e141m9_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e141m9_3limbs/freeze.c b/src/Specific/solinas64_2e141m9_3limbs/freeze.c
deleted file mode 100644
index d1a0d57f5..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/freeze.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void freeze(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffff7);
- { uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x7fffffffffff);
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x7fffffffffff);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0x7ffffffffff7);
- { uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- { uint64_t x19 = (x14 & 0x7fffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- { uint64_t x23 = (x14 & 0x7fffffffffff);
- { uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e141m9_3limbs/freeze.v b/src/Specific/solinas64_2e141m9_3limbs/freeze.v
deleted file mode 100644
index deee7372b..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e141m9_3limbs.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/solinas64_2e141m9_3limbs/freezeDisplay.log b/src/Specific/solinas64_2e141m9_3limbs/freezeDisplay.log
deleted file mode 100644
index 6bcb50b66..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/freezeDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffff7);
- uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x7fffffffffff);
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x7fffffffffff);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0x7ffffffffff7);
- uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- uint64_t x19 = (x14 & 0x7fffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- uint64_t x23 = (x14 & 0x7fffffffffff);
- uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e141m9_3limbs/freezeDisplay.v b/src/Specific/solinas64_2e141m9_3limbs/freezeDisplay.v
deleted file mode 100644
index 769986182..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e141m9_3limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e141m9_3limbs/py_interpreter.sh b/src/Specific/solinas64_2e141m9_3limbs/py_interpreter.sh
deleted file mode 100755
index 4aea01032..000000000
--- a/src/Specific/solinas64_2e141m9_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**141 - 9' -Dmodulus_bytes='47' -Da24='121665'
diff --git a/src/Specific/solinas64_2e141m9_4limbs/CurveParameters.v b/src/Specific/solinas64_2e141m9_4limbs/CurveParameters.v
deleted file mode 100644
index ad669482f..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^141 - 9
-Base: 35.25
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 35 + 1/4;
- bitwidth := 64;
- s := 2^141;
- c := [(1, 9)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e141m9_4limbs/Synthesis.v b/src/Specific/solinas64_2e141m9_4limbs/Synthesis.v
deleted file mode 100644
index 53642d651..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e141m9_4limbs.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/solinas64_2e141m9_4limbs/compiler.sh b/src/Specific/solinas64_2e141m9_4limbs/compiler.sh
deleted file mode 100755
index a12c31d7e..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{36,35,35,35}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<141) - 9' "$@"
diff --git a/src/Specific/solinas64_2e141m9_4limbs/compilerxx.sh b/src/Specific/solinas64_2e141m9_4limbs/compilerxx.sh
deleted file mode 100755
index 70694e5c7..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{36,35,35,35}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='18' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<141) - 9' "$@"
diff --git a/src/Specific/solinas64_2e141m9_4limbs/feadd.c b/src/Specific/solinas64_2e141m9_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e141m9_4limbs/feadd.v b/src/Specific/solinas64_2e141m9_4limbs/feadd.v
deleted file mode 100644
index 19966419e..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e141m9_4limbs.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/solinas64_2e141m9_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e141m9_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e141m9_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e141m9_4limbs/feaddDisplay.v
deleted file mode 100644
index 5c1b90dcd..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e141m9_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e141m9_4limbs/fecarry.v b/src/Specific/solinas64_2e141m9_4limbs/fecarry.v
deleted file mode 100644
index d2a91611e..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e141m9_4limbs.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/solinas64_2e141m9_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e141m9_4limbs/fecarryDisplay.v
deleted file mode 100644
index e7b4b5d8a..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e141m9_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e141m9_4limbs/femul.c b/src/Specific/solinas64_2e141m9_4limbs/femul.c
deleted file mode 100644
index 4e087cc58..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + ((0x2 * ((uint128_t)x7 * x15)) + ((0x2 * ((uint128_t)x9 * x13)) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x9 * ((uint128_t)x8 * x14)));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x9 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0x9 * ((0x2 * ((uint128_t)x7 * x14)) + ((0x2 * ((uint128_t)x9 * x15)) + (0x2 * ((uint128_t)x8 * x13))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x24);
- { uint64_t x21 = ((uint64_t)x19 & 0xfffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x23);
- { uint64_t x24 = ((uint64_t)x22 & 0x7ffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x23);
- { uint64_t x27 = ((uint64_t)x25 & 0x7ffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x23);
- { uint64_t x30 = ((uint64_t)x28 & 0x7ffffffff);
- { uint64_t x31 = (x21 + (0x9 * x29));
- { uint64_t x32 = (x31 >> 0x24);
- { uint64_t x33 = (x31 & 0xfffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x23);
- { uint64_t x36 = (x34 & 0x7ffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e141m9_4limbs/femul.v b/src/Specific/solinas64_2e141m9_4limbs/femul.v
deleted file mode 100644
index dfc443ba1..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e141m9_4limbs.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/solinas64_2e141m9_4limbs/femulDisplay.log b/src/Specific/solinas64_2e141m9_4limbs/femulDisplay.log
deleted file mode 100644
index 90dcba9e4..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + ((0x2 * ((uint128_t)x7 * x15)) + ((0x2 * ((uint128_t)x9 * x13)) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x9 * ((uint128_t)x8 * x14)));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x9 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0x9 * ((0x2 * ((uint128_t)x7 * x14)) + ((0x2 * ((uint128_t)x9 * x15)) + (0x2 * ((uint128_t)x8 * x13))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x24);
- uint64_t x21 = ((uint64_t)x19 & 0xfffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x23);
- uint64_t x24 = ((uint64_t)x22 & 0x7ffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x23);
- uint64_t x27 = ((uint64_t)x25 & 0x7ffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x23);
- uint64_t x30 = ((uint64_t)x28 & 0x7ffffffff);
- uint64_t x31 = (x21 + (0x9 * x29));
- uint64_t x32 = (x31 >> 0x24);
- uint64_t x33 = (x31 & 0xfffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x23);
- uint64_t x36 = (x34 & 0x7ffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e141m9_4limbs/femulDisplay.v b/src/Specific/solinas64_2e141m9_4limbs/femulDisplay.v
deleted file mode 100644
index 52980dfa2..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e141m9_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e141m9_4limbs/fesquare.c b/src/Specific/solinas64_2e141m9_4limbs/fesquare.c
deleted file mode 100644
index 59eeeb375..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x9 * ((uint128_t)x5 * x5)));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x9 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0x9 * ((0x2 * ((uint128_t)x4 * x5)) + ((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x5 * x4))))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x24);
- { uint64_t x12 = ((uint64_t)x10 & 0xfffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint64_t x14 = (uint64_t) (x13 >> 0x23);
- { uint64_t x15 = ((uint64_t)x13 & 0x7ffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x23);
- { uint64_t x18 = ((uint64_t)x16 & 0x7ffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x23);
- { uint64_t x21 = ((uint64_t)x19 & 0x7ffffffff);
- { uint64_t x22 = (x12 + (0x9 * x20));
- { uint64_t x23 = (x22 >> 0x24);
- { uint64_t x24 = (x22 & 0xfffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x23);
- { uint64_t x27 = (x25 & 0x7ffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e141m9_4limbs/fesquare.v b/src/Specific/solinas64_2e141m9_4limbs/fesquare.v
deleted file mode 100644
index 2d570b68c..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e141m9_4limbs.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/solinas64_2e141m9_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e141m9_4limbs/fesquareDisplay.log
deleted file mode 100644
index 0dce2db7c..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x9 * ((uint128_t)x5 * x5)));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x9 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0x9 * ((0x2 * ((uint128_t)x4 * x5)) + ((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x5 * x4))))));
- uint64_t x11 = (uint64_t) (x10 >> 0x24);
- uint64_t x12 = ((uint64_t)x10 & 0xfffffffff);
- uint128_t x13 = (x11 + x9);
- uint64_t x14 = (uint64_t) (x13 >> 0x23);
- uint64_t x15 = ((uint64_t)x13 & 0x7ffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x23);
- uint64_t x18 = ((uint64_t)x16 & 0x7ffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x23);
- uint64_t x21 = ((uint64_t)x19 & 0x7ffffffff);
- uint64_t x22 = (x12 + (0x9 * x20));
- uint64_t x23 = (x22 >> 0x24);
- uint64_t x24 = (x22 & 0xfffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x23);
- uint64_t x27 = (x25 & 0x7ffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e141m9_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e141m9_4limbs/fesquareDisplay.v
deleted file mode 100644
index 24ce02322..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e141m9_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e141m9_4limbs/fesub.c b/src/Specific/solinas64_2e141m9_4limbs/fesub.c
deleted file mode 100644
index 1cd5e39b5..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x1fffffffee + x5) - x11);
- out[1] = ((0xffffffffe + x7) - x13);
- out[2] = ((0xffffffffe + x9) - x15);
- out[3] = ((0xffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e141m9_4limbs/fesub.v b/src/Specific/solinas64_2e141m9_4limbs/fesub.v
deleted file mode 100644
index aff4b4221..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e141m9_4limbs.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/solinas64_2e141m9_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e141m9_4limbs/fesubDisplay.log
deleted file mode 100644
index aaaa3a8f3..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0xffffffffe + x8) - x14), ((0xffffffffe + x9) - x15), ((0xffffffffe + x7) - x13), ((0x1fffffffee + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e141m9_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e141m9_4limbs/fesubDisplay.v
deleted file mode 100644
index a9c2e1546..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e141m9_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e141m9_4limbs/freeze.c b/src/Specific/solinas64_2e141m9_4limbs/freeze.c
deleted file mode 100644
index 8e9d2c0d6..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 36 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffff7);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x7ffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x7ffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x7ffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xffffffff7);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 36 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0x7ffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0x7ffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x7ffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e141m9_4limbs/freeze.v b/src/Specific/solinas64_2e141m9_4limbs/freeze.v
deleted file mode 100644
index cc0b9f05f..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e141m9_4limbs.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/solinas64_2e141m9_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e141m9_4limbs/freezeDisplay.log
deleted file mode 100644
index dc3230c7e..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 36 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffff7);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x7ffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x7ffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x7ffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xffffffff7);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 36 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0x7ffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0x7ffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x7ffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 35 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e141m9_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e141m9_4limbs/freezeDisplay.v
deleted file mode 100644
index 57f52ed46..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e141m9_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e141m9_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e141m9_4limbs/py_interpreter.sh
deleted file mode 100755
index f38e696b6..000000000
--- a/src/Specific/solinas64_2e141m9_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**141 - 9' -Dmodulus_bytes='35.25' -Da24='121665'
diff --git a/src/Specific/solinas64_2e150m3_3limbs/CurveParameters.v b/src/Specific/solinas64_2e150m3_3limbs/CurveParameters.v
deleted file mode 100644
index e451620f4..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^150 - 3
-Base: 50
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 50;
- bitwidth := 64;
- s := 2^150;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 3); [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/solinas64_2e150m3_3limbs/Synthesis.v b/src/Specific/solinas64_2e150m3_3limbs/Synthesis.v
deleted file mode 100644
index e0fe202d1..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e150m3_3limbs.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/solinas64_2e150m3_3limbs/compiler.sh b/src/Specific/solinas64_2e150m3_3limbs/compiler.sh
deleted file mode 100755
index f4447111d..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{50,50,50}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<150) - 3' "$@"
diff --git a/src/Specific/solinas64_2e150m3_3limbs/compilerxx.sh b/src/Specific/solinas64_2e150m3_3limbs/compilerxx.sh
deleted file mode 100755
index d00290374..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{50,50,50}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<150) - 3' "$@"
diff --git a/src/Specific/solinas64_2e150m3_3limbs/feadd.c b/src/Specific/solinas64_2e150m3_3limbs/feadd.c
deleted file mode 100644
index 725c1f205..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/feadd.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = (x5 + x9);
- out[1] = (x7 + x11);
- out[2] = (x6 + x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e150m3_3limbs/feadd.v b/src/Specific/solinas64_2e150m3_3limbs/feadd.v
deleted file mode 100644
index f12c2649a..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e150m3_3limbs.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/solinas64_2e150m3_3limbs/feaddDisplay.log b/src/Specific/solinas64_2e150m3_3limbs/feaddDisplay.log
deleted file mode 100644
index 64fb467ef..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- ((x6 + x10), (x7 + x11), (x5 + x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e150m3_3limbs/feaddDisplay.v b/src/Specific/solinas64_2e150m3_3limbs/feaddDisplay.v
deleted file mode 100644
index dd040ab81..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e150m3_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e150m3_3limbs/fecarry.v b/src/Specific/solinas64_2e150m3_3limbs/fecarry.v
deleted file mode 100644
index 4fe5d4908..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e150m3_3limbs.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/solinas64_2e150m3_3limbs/fecarryDisplay.v b/src/Specific/solinas64_2e150m3_3limbs/fecarryDisplay.v
deleted file mode 100644
index fc5f6c980..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e150m3_3limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e150m3_3limbs/femul.c b/src/Specific/solinas64_2e150m3_3limbs/femul.c
deleted file mode 100644
index 667c4cdea..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/femul.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint128_t x12 = (((uint128_t)x5 * x10) + (((uint128_t)x7 * x11) + ((uint128_t)x6 * x9)));
- { uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0x3 * ((uint128_t)x6 * x10)));
- { uint128_t x14 = (((uint128_t)x5 * x9) + (0x3 * (((uint128_t)x7 * x10) + ((uint128_t)x6 * x11))));
- { uint64_t x15 = (uint64_t) (x14 >> 0x32);
- { uint64_t x16 = ((uint64_t)x14 & 0x3ffffffffffff);
- { uint128_t x17 = (x15 + x13);
- { uint64_t x18 = (uint64_t) (x17 >> 0x32);
- { uint64_t x19 = ((uint64_t)x17 & 0x3ffffffffffff);
- { uint128_t x20 = (x18 + x12);
- { uint64_t x21 = (uint64_t) (x20 >> 0x32);
- { uint64_t x22 = ((uint64_t)x20 & 0x3ffffffffffff);
- { uint64_t x23 = (x16 + (0x3 * x21));
- { uint64_t x24 = (x23 >> 0x32);
- { uint64_t x25 = (x23 & 0x3ffffffffffff);
- { uint64_t x26 = (x24 + x19);
- { uint64_t x27 = (x26 >> 0x32);
- { uint64_t x28 = (x26 & 0x3ffffffffffff);
- out[0] = x25;
- out[1] = x28;
- out[2] = (x27 + x22);
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e150m3_3limbs/femul.v b/src/Specific/solinas64_2e150m3_3limbs/femul.v
deleted file mode 100644
index cfb393148..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e150m3_3limbs.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/solinas64_2e150m3_3limbs/femulDisplay.log b/src/Specific/solinas64_2e150m3_3limbs/femulDisplay.log
deleted file mode 100644
index 3940c0dd0..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint128_t x12 = (((uint128_t)x5 * x10) + (((uint128_t)x7 * x11) + ((uint128_t)x6 * x9)));
- uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0x3 * ((uint128_t)x6 * x10)));
- uint128_t x14 = (((uint128_t)x5 * x9) + (0x3 * (((uint128_t)x7 * x10) + ((uint128_t)x6 * x11))));
- uint64_t x15 = (uint64_t) (x14 >> 0x32);
- uint64_t x16 = ((uint64_t)x14 & 0x3ffffffffffff);
- uint128_t x17 = (x15 + x13);
- uint64_t x18 = (uint64_t) (x17 >> 0x32);
- uint64_t x19 = ((uint64_t)x17 & 0x3ffffffffffff);
- uint128_t x20 = (x18 + x12);
- uint64_t x21 = (uint64_t) (x20 >> 0x32);
- uint64_t x22 = ((uint64_t)x20 & 0x3ffffffffffff);
- uint64_t x23 = (x16 + (0x3 * x21));
- uint64_t x24 = (x23 >> 0x32);
- uint64_t x25 = (x23 & 0x3ffffffffffff);
- uint64_t x26 = (x24 + x19);
- uint64_t x27 = (x26 >> 0x32);
- uint64_t x28 = (x26 & 0x3ffffffffffff);
- return ((x27 + x22), Return x28, Return x25))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e150m3_3limbs/femulDisplay.v b/src/Specific/solinas64_2e150m3_3limbs/femulDisplay.v
deleted file mode 100644
index b59bd80c3..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e150m3_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e150m3_3limbs/fesquare.c b/src/Specific/solinas64_2e150m3_3limbs/fesquare.c
deleted file mode 100644
index 1124db94f..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/fesquare.c
+++ /dev/null
@@ -1,26 +0,0 @@
-static void fesquare(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x5 = (((uint128_t)x2 * x3) + (((uint128_t)x4 * x4) + ((uint128_t)x3 * x2)));
- { uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * ((uint128_t)x3 * x3)));
- { uint128_t x7 = (((uint128_t)x2 * x2) + (0x3 * (((uint128_t)x4 * x3) + ((uint128_t)x3 * x4))));
- { uint64_t x8 = (uint64_t) (x7 >> 0x32);
- { uint64_t x9 = ((uint64_t)x7 & 0x3ffffffffffff);
- { uint128_t x10 = (x8 + x6);
- { uint64_t x11 = (uint64_t) (x10 >> 0x32);
- { uint64_t x12 = ((uint64_t)x10 & 0x3ffffffffffff);
- { uint128_t x13 = (x11 + x5);
- { uint64_t x14 = (uint64_t) (x13 >> 0x32);
- { uint64_t x15 = ((uint64_t)x13 & 0x3ffffffffffff);
- { uint64_t x16 = (x9 + (0x3 * x14));
- { uint64_t x17 = (x16 >> 0x32);
- { uint64_t x18 = (x16 & 0x3ffffffffffff);
- { uint64_t x19 = (x17 + x12);
- { uint64_t x20 = (x19 >> 0x32);
- { uint64_t x21 = (x19 & 0x3ffffffffffff);
- out[0] = x18;
- out[1] = x21;
- out[2] = (x20 + x15);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e150m3_3limbs/fesquare.v b/src/Specific/solinas64_2e150m3_3limbs/fesquare.v
deleted file mode 100644
index c2698290f..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e150m3_3limbs.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/solinas64_2e150m3_3limbs/fesquareDisplay.log b/src/Specific/solinas64_2e150m3_3limbs/fesquareDisplay.log
deleted file mode 100644
index 67dcd761e..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint128_t x5 = (((uint128_t)x2 * x3) + (((uint128_t)x4 * x4) + ((uint128_t)x3 * x2)));
- uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * ((uint128_t)x3 * x3)));
- uint128_t x7 = (((uint128_t)x2 * x2) + (0x3 * (((uint128_t)x4 * x3) + ((uint128_t)x3 * x4))));
- uint64_t x8 = (uint64_t) (x7 >> 0x32);
- uint64_t x9 = ((uint64_t)x7 & 0x3ffffffffffff);
- uint128_t x10 = (x8 + x6);
- uint64_t x11 = (uint64_t) (x10 >> 0x32);
- uint64_t x12 = ((uint64_t)x10 & 0x3ffffffffffff);
- uint128_t x13 = (x11 + x5);
- uint64_t x14 = (uint64_t) (x13 >> 0x32);
- uint64_t x15 = ((uint64_t)x13 & 0x3ffffffffffff);
- uint64_t x16 = (x9 + (0x3 * x14));
- uint64_t x17 = (x16 >> 0x32);
- uint64_t x18 = (x16 & 0x3ffffffffffff);
- uint64_t x19 = (x17 + x12);
- uint64_t x20 = (x19 >> 0x32);
- uint64_t x21 = (x19 & 0x3ffffffffffff);
- return ((x20 + x15), Return x21, Return x18))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e150m3_3limbs/fesquareDisplay.v b/src/Specific/solinas64_2e150m3_3limbs/fesquareDisplay.v
deleted file mode 100644
index 2bdeb83c6..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e150m3_3limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e150m3_3limbs/fesub.c b/src/Specific/solinas64_2e150m3_3limbs/fesub.c
deleted file mode 100644
index ed1081ab3..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/fesub.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = ((0x7fffffffffffa + x5) - x9);
- out[1] = ((0x7fffffffffffe + x7) - x11);
- out[2] = ((0x7fffffffffffe + x6) - x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e150m3_3limbs/fesub.v b/src/Specific/solinas64_2e150m3_3limbs/fesub.v
deleted file mode 100644
index 4cbda3916..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e150m3_3limbs.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/solinas64_2e150m3_3limbs/fesubDisplay.log b/src/Specific/solinas64_2e150m3_3limbs/fesubDisplay.log
deleted file mode 100644
index 5506e17af..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- (((0x7fffffffffffe + x6) - x10), ((0x7fffffffffffe + x7) - x11), ((0x7fffffffffffa + x5) - x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e150m3_3limbs/fesubDisplay.v b/src/Specific/solinas64_2e150m3_3limbs/fesubDisplay.v
deleted file mode 100644
index 4df625baa..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e150m3_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e150m3_3limbs/freeze.c b/src/Specific/solinas64_2e150m3_3limbs/freeze.c
deleted file mode 100644
index e69cfbeeb..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/freeze.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void freeze(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffffffd);
- { uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x3ffffffffffff);
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x3ffffffffffff);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0x3fffffffffffd);
- { uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- { uint64_t x19 = (x14 & 0x3ffffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- { uint64_t x23 = (x14 & 0x3ffffffffffff);
- { uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e150m3_3limbs/freeze.v b/src/Specific/solinas64_2e150m3_3limbs/freeze.v
deleted file mode 100644
index ac2133824..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e150m3_3limbs.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/solinas64_2e150m3_3limbs/freezeDisplay.log b/src/Specific/solinas64_2e150m3_3limbs/freezeDisplay.log
deleted file mode 100644
index 3a7a67072..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/freezeDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffffffd);
- uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x3ffffffffffff);
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x3ffffffffffff);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0x3fffffffffffd);
- uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- uint64_t x19 = (x14 & 0x3ffffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- uint64_t x23 = (x14 & 0x3ffffffffffff);
- uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e150m3_3limbs/freezeDisplay.v b/src/Specific/solinas64_2e150m3_3limbs/freezeDisplay.v
deleted file mode 100644
index 3e444992e..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e150m3_3limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e150m3_3limbs/py_interpreter.sh b/src/Specific/solinas64_2e150m3_3limbs/py_interpreter.sh
deleted file mode 100755
index 21d6ae317..000000000
--- a/src/Specific/solinas64_2e150m3_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**150 - 3' -Dmodulus_bytes='50' -Da24='121665'
diff --git a/src/Specific/solinas64_2e150m3_4limbs/CurveParameters.v b/src/Specific/solinas64_2e150m3_4limbs/CurveParameters.v
deleted file mode 100644
index b83f82d65..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^150 - 3
-Base: 37.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 37 + 1/2;
- bitwidth := 64;
- s := 2^150;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e150m3_4limbs/Synthesis.v b/src/Specific/solinas64_2e150m3_4limbs/Synthesis.v
deleted file mode 100644
index 946e6194f..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e150m3_4limbs.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/solinas64_2e150m3_4limbs/compiler.sh b/src/Specific/solinas64_2e150m3_4limbs/compiler.sh
deleted file mode 100755
index 9d2e06908..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{38,37,38,37}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<150) - 3' "$@"
diff --git a/src/Specific/solinas64_2e150m3_4limbs/compilerxx.sh b/src/Specific/solinas64_2e150m3_4limbs/compilerxx.sh
deleted file mode 100755
index 3845390d9..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{38,37,38,37}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<150) - 3' "$@"
diff --git a/src/Specific/solinas64_2e150m3_4limbs/feadd.c b/src/Specific/solinas64_2e150m3_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e150m3_4limbs/feadd.v b/src/Specific/solinas64_2e150m3_4limbs/feadd.v
deleted file mode 100644
index 1aba48cd4..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e150m3_4limbs.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/solinas64_2e150m3_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e150m3_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e150m3_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e150m3_4limbs/feaddDisplay.v
deleted file mode 100644
index 1735f4734..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e150m3_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e150m3_4limbs/fecarry.v b/src/Specific/solinas64_2e150m3_4limbs/fecarry.v
deleted file mode 100644
index 692fa56e0..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e150m3_4limbs.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/solinas64_2e150m3_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e150m3_4limbs/fecarryDisplay.v
deleted file mode 100644
index bcd59cae6..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e150m3_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e150m3_4limbs/femul.c b/src/Specific/solinas64_2e150m3_4limbs/femul.c
deleted file mode 100644
index 9bde2da19..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x3 * (0x2 * ((uint128_t)x8 * x14))));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x3 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0x3 * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x26);
- { uint64_t x21 = ((uint64_t)x19 & 0x3fffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x25);
- { uint64_t x24 = ((uint64_t)x22 & 0x1fffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x26);
- { uint64_t x27 = ((uint64_t)x25 & 0x3fffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x25);
- { uint64_t x30 = ((uint64_t)x28 & 0x1fffffffff);
- { uint64_t x31 = (x21 + (0x3 * x29));
- { uint64_t x32 = (x31 >> 0x26);
- { uint64_t x33 = (x31 & 0x3fffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x25);
- { uint64_t x36 = (x34 & 0x1fffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e150m3_4limbs/femul.v b/src/Specific/solinas64_2e150m3_4limbs/femul.v
deleted file mode 100644
index 1ea902244..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e150m3_4limbs.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/solinas64_2e150m3_4limbs/femulDisplay.log b/src/Specific/solinas64_2e150m3_4limbs/femulDisplay.log
deleted file mode 100644
index e57673ce5..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x3 * (0x2 * ((uint128_t)x8 * x14))));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x3 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0x3 * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x26);
- uint64_t x21 = ((uint64_t)x19 & 0x3fffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x25);
- uint64_t x24 = ((uint64_t)x22 & 0x1fffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x26);
- uint64_t x27 = ((uint64_t)x25 & 0x3fffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x25);
- uint64_t x30 = ((uint64_t)x28 & 0x1fffffffff);
- uint64_t x31 = (x21 + (0x3 * x29));
- uint64_t x32 = (x31 >> 0x26);
- uint64_t x33 = (x31 & 0x3fffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x25);
- uint64_t x36 = (x34 & 0x1fffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e150m3_4limbs/femulDisplay.v b/src/Specific/solinas64_2e150m3_4limbs/femulDisplay.v
deleted file mode 100644
index ca87c66ee..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e150m3_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e150m3_4limbs/fesquare.c b/src/Specific/solinas64_2e150m3_4limbs/fesquare.c
deleted file mode 100644
index a90a11932..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x3 * (0x2 * ((uint128_t)x5 * x5))));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0x3 * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x26);
- { uint64_t x12 = ((uint64_t)x10 & 0x3fffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint64_t x14 = (uint64_t) (x13 >> 0x25);
- { uint64_t x15 = ((uint64_t)x13 & 0x1fffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x26);
- { uint64_t x18 = ((uint64_t)x16 & 0x3fffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x25);
- { uint64_t x21 = ((uint64_t)x19 & 0x1fffffffff);
- { uint64_t x22 = (x12 + (0x3 * x20));
- { uint64_t x23 = (x22 >> 0x26);
- { uint64_t x24 = (x22 & 0x3fffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x25);
- { uint64_t x27 = (x25 & 0x1fffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e150m3_4limbs/fesquare.v b/src/Specific/solinas64_2e150m3_4limbs/fesquare.v
deleted file mode 100644
index 06a7805fb..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e150m3_4limbs.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/solinas64_2e150m3_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e150m3_4limbs/fesquareDisplay.log
deleted file mode 100644
index eee121078..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x3 * (0x2 * ((uint128_t)x5 * x5))));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0x3 * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- uint64_t x11 = (uint64_t) (x10 >> 0x26);
- uint64_t x12 = ((uint64_t)x10 & 0x3fffffffff);
- uint128_t x13 = (x11 + x9);
- uint64_t x14 = (uint64_t) (x13 >> 0x25);
- uint64_t x15 = ((uint64_t)x13 & 0x1fffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x26);
- uint64_t x18 = ((uint64_t)x16 & 0x3fffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x25);
- uint64_t x21 = ((uint64_t)x19 & 0x1fffffffff);
- uint64_t x22 = (x12 + (0x3 * x20));
- uint64_t x23 = (x22 >> 0x26);
- uint64_t x24 = (x22 & 0x3fffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x25);
- uint64_t x27 = (x25 & 0x1fffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e150m3_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e150m3_4limbs/fesquareDisplay.v
deleted file mode 100644
index cd84770c9..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e150m3_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e150m3_4limbs/fesub.c b/src/Specific/solinas64_2e150m3_4limbs/fesub.c
deleted file mode 100644
index 5a767e64f..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x7ffffffffa + x5) - x11);
- out[1] = ((0x3ffffffffe + x7) - x13);
- out[2] = ((0x7ffffffffe + x9) - x15);
- out[3] = ((0x3ffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e150m3_4limbs/fesub.v b/src/Specific/solinas64_2e150m3_4limbs/fesub.v
deleted file mode 100644
index 3a962cf36..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e150m3_4limbs.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/solinas64_2e150m3_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e150m3_4limbs/fesubDisplay.log
deleted file mode 100644
index 798f08921..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0x3ffffffffe + x8) - x14), ((0x7ffffffffe + x9) - x15), ((0x3ffffffffe + x7) - x13), ((0x7ffffffffa + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e150m3_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e150m3_4limbs/fesubDisplay.v
deleted file mode 100644
index 268189b79..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e150m3_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e150m3_4limbs/freeze.c b/src/Specific/solinas64_2e150m3_4limbs/freeze.c
deleted file mode 100644
index 4b2f75318..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffd);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x1fffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x3fffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x1fffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0x3ffffffffd);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0x1fffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0x3fffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x1fffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e150m3_4limbs/freeze.v b/src/Specific/solinas64_2e150m3_4limbs/freeze.v
deleted file mode 100644
index e7f941f9d..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e150m3_4limbs.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/solinas64_2e150m3_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e150m3_4limbs/freezeDisplay.log
deleted file mode 100644
index 060813ab5..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffd);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x1fffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x3fffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x1fffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0x3ffffffffd);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0x1fffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0x3fffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x1fffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e150m3_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e150m3_4limbs/freezeDisplay.v
deleted file mode 100644
index d97f5060b..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e150m3_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e150m3_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e150m3_4limbs/py_interpreter.sh
deleted file mode 100755
index a5b81aa61..000000000
--- a/src/Specific/solinas64_2e150m3_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**150 - 3' -Dmodulus_bytes='37.5' -Da24='121665'
diff --git a/src/Specific/solinas64_2e150m5_3limbs/CurveParameters.v b/src/Specific/solinas64_2e150m5_3limbs/CurveParameters.v
deleted file mode 100644
index 598e97b48..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^150 - 5
-Base: 50
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 50;
- bitwidth := 64;
- s := 2^150;
- c := [(1, 5)];
- carry_chains := Some [seq 0 (pred 3); [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/solinas64_2e150m5_3limbs/Synthesis.v b/src/Specific/solinas64_2e150m5_3limbs/Synthesis.v
deleted file mode 100644
index fbaaf99af..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e150m5_3limbs.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/solinas64_2e150m5_3limbs/compiler.sh b/src/Specific/solinas64_2e150m5_3limbs/compiler.sh
deleted file mode 100755
index cbc196a86..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{50,50,50}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<150) - 5' "$@"
diff --git a/src/Specific/solinas64_2e150m5_3limbs/compilerxx.sh b/src/Specific/solinas64_2e150m5_3limbs/compilerxx.sh
deleted file mode 100755
index 00c38cbd9..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{50,50,50}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<150) - 5' "$@"
diff --git a/src/Specific/solinas64_2e150m5_3limbs/feadd.c b/src/Specific/solinas64_2e150m5_3limbs/feadd.c
deleted file mode 100644
index 725c1f205..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/feadd.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = (x5 + x9);
- out[1] = (x7 + x11);
- out[2] = (x6 + x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e150m5_3limbs/feadd.v b/src/Specific/solinas64_2e150m5_3limbs/feadd.v
deleted file mode 100644
index 76a0ffe45..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e150m5_3limbs.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/solinas64_2e150m5_3limbs/feaddDisplay.log b/src/Specific/solinas64_2e150m5_3limbs/feaddDisplay.log
deleted file mode 100644
index 64fb467ef..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- ((x6 + x10), (x7 + x11), (x5 + x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e150m5_3limbs/feaddDisplay.v b/src/Specific/solinas64_2e150m5_3limbs/feaddDisplay.v
deleted file mode 100644
index bab86dd3c..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e150m5_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e150m5_3limbs/fecarry.v b/src/Specific/solinas64_2e150m5_3limbs/fecarry.v
deleted file mode 100644
index 6791c06d6..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e150m5_3limbs.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/solinas64_2e150m5_3limbs/fecarryDisplay.v b/src/Specific/solinas64_2e150m5_3limbs/fecarryDisplay.v
deleted file mode 100644
index 157d35567..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e150m5_3limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e150m5_3limbs/femul.c b/src/Specific/solinas64_2e150m5_3limbs/femul.c
deleted file mode 100644
index d79487ffe..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/femul.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint128_t x12 = (((uint128_t)x5 * x10) + (((uint128_t)x7 * x11) + ((uint128_t)x6 * x9)));
- { uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0x5 * ((uint128_t)x6 * x10)));
- { uint128_t x14 = (((uint128_t)x5 * x9) + (0x5 * (((uint128_t)x7 * x10) + ((uint128_t)x6 * x11))));
- { uint64_t x15 = (uint64_t) (x14 >> 0x32);
- { uint64_t x16 = ((uint64_t)x14 & 0x3ffffffffffff);
- { uint128_t x17 = (x15 + x13);
- { uint64_t x18 = (uint64_t) (x17 >> 0x32);
- { uint64_t x19 = ((uint64_t)x17 & 0x3ffffffffffff);
- { uint128_t x20 = (x18 + x12);
- { uint64_t x21 = (uint64_t) (x20 >> 0x32);
- { uint64_t x22 = ((uint64_t)x20 & 0x3ffffffffffff);
- { uint64_t x23 = (x16 + (0x5 * x21));
- { uint64_t x24 = (x23 >> 0x32);
- { uint64_t x25 = (x23 & 0x3ffffffffffff);
- { uint64_t x26 = (x24 + x19);
- { uint64_t x27 = (x26 >> 0x32);
- { uint64_t x28 = (x26 & 0x3ffffffffffff);
- out[0] = x25;
- out[1] = x28;
- out[2] = (x27 + x22);
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e150m5_3limbs/femul.v b/src/Specific/solinas64_2e150m5_3limbs/femul.v
deleted file mode 100644
index c2e6a2133..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e150m5_3limbs.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/solinas64_2e150m5_3limbs/femulDisplay.log b/src/Specific/solinas64_2e150m5_3limbs/femulDisplay.log
deleted file mode 100644
index 8596878ef..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint128_t x12 = (((uint128_t)x5 * x10) + (((uint128_t)x7 * x11) + ((uint128_t)x6 * x9)));
- uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0x5 * ((uint128_t)x6 * x10)));
- uint128_t x14 = (((uint128_t)x5 * x9) + (0x5 * (((uint128_t)x7 * x10) + ((uint128_t)x6 * x11))));
- uint64_t x15 = (uint64_t) (x14 >> 0x32);
- uint64_t x16 = ((uint64_t)x14 & 0x3ffffffffffff);
- uint128_t x17 = (x15 + x13);
- uint64_t x18 = (uint64_t) (x17 >> 0x32);
- uint64_t x19 = ((uint64_t)x17 & 0x3ffffffffffff);
- uint128_t x20 = (x18 + x12);
- uint64_t x21 = (uint64_t) (x20 >> 0x32);
- uint64_t x22 = ((uint64_t)x20 & 0x3ffffffffffff);
- uint64_t x23 = (x16 + (0x5 * x21));
- uint64_t x24 = (x23 >> 0x32);
- uint64_t x25 = (x23 & 0x3ffffffffffff);
- uint64_t x26 = (x24 + x19);
- uint64_t x27 = (x26 >> 0x32);
- uint64_t x28 = (x26 & 0x3ffffffffffff);
- return ((x27 + x22), Return x28, Return x25))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e150m5_3limbs/femulDisplay.v b/src/Specific/solinas64_2e150m5_3limbs/femulDisplay.v
deleted file mode 100644
index 59119c0a9..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e150m5_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e150m5_3limbs/fesquare.c b/src/Specific/solinas64_2e150m5_3limbs/fesquare.c
deleted file mode 100644
index f3c699e60..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/fesquare.c
+++ /dev/null
@@ -1,26 +0,0 @@
-static void fesquare(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x5 = (((uint128_t)x2 * x3) + (((uint128_t)x4 * x4) + ((uint128_t)x3 * x2)));
- { uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x5 * ((uint128_t)x3 * x3)));
- { uint128_t x7 = (((uint128_t)x2 * x2) + (0x5 * (((uint128_t)x4 * x3) + ((uint128_t)x3 * x4))));
- { uint64_t x8 = (uint64_t) (x7 >> 0x32);
- { uint64_t x9 = ((uint64_t)x7 & 0x3ffffffffffff);
- { uint128_t x10 = (x8 + x6);
- { uint64_t x11 = (uint64_t) (x10 >> 0x32);
- { uint64_t x12 = ((uint64_t)x10 & 0x3ffffffffffff);
- { uint128_t x13 = (x11 + x5);
- { uint64_t x14 = (uint64_t) (x13 >> 0x32);
- { uint64_t x15 = ((uint64_t)x13 & 0x3ffffffffffff);
- { uint64_t x16 = (x9 + (0x5 * x14));
- { uint64_t x17 = (x16 >> 0x32);
- { uint64_t x18 = (x16 & 0x3ffffffffffff);
- { uint64_t x19 = (x17 + x12);
- { uint64_t x20 = (x19 >> 0x32);
- { uint64_t x21 = (x19 & 0x3ffffffffffff);
- out[0] = x18;
- out[1] = x21;
- out[2] = (x20 + x15);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e150m5_3limbs/fesquare.v b/src/Specific/solinas64_2e150m5_3limbs/fesquare.v
deleted file mode 100644
index 81223a6de..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e150m5_3limbs.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/solinas64_2e150m5_3limbs/fesquareDisplay.log b/src/Specific/solinas64_2e150m5_3limbs/fesquareDisplay.log
deleted file mode 100644
index 6d4126245..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint128_t x5 = (((uint128_t)x2 * x3) + (((uint128_t)x4 * x4) + ((uint128_t)x3 * x2)));
- uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x5 * ((uint128_t)x3 * x3)));
- uint128_t x7 = (((uint128_t)x2 * x2) + (0x5 * (((uint128_t)x4 * x3) + ((uint128_t)x3 * x4))));
- uint64_t x8 = (uint64_t) (x7 >> 0x32);
- uint64_t x9 = ((uint64_t)x7 & 0x3ffffffffffff);
- uint128_t x10 = (x8 + x6);
- uint64_t x11 = (uint64_t) (x10 >> 0x32);
- uint64_t x12 = ((uint64_t)x10 & 0x3ffffffffffff);
- uint128_t x13 = (x11 + x5);
- uint64_t x14 = (uint64_t) (x13 >> 0x32);
- uint64_t x15 = ((uint64_t)x13 & 0x3ffffffffffff);
- uint64_t x16 = (x9 + (0x5 * x14));
- uint64_t x17 = (x16 >> 0x32);
- uint64_t x18 = (x16 & 0x3ffffffffffff);
- uint64_t x19 = (x17 + x12);
- uint64_t x20 = (x19 >> 0x32);
- uint64_t x21 = (x19 & 0x3ffffffffffff);
- return ((x20 + x15), Return x21, Return x18))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e150m5_3limbs/fesquareDisplay.v b/src/Specific/solinas64_2e150m5_3limbs/fesquareDisplay.v
deleted file mode 100644
index 69dd74684..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e150m5_3limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e150m5_3limbs/fesub.c b/src/Specific/solinas64_2e150m5_3limbs/fesub.c
deleted file mode 100644
index a50cce660..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/fesub.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = ((0x7fffffffffff6 + x5) - x9);
- out[1] = ((0x7fffffffffffe + x7) - x11);
- out[2] = ((0x7fffffffffffe + x6) - x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e150m5_3limbs/fesub.v b/src/Specific/solinas64_2e150m5_3limbs/fesub.v
deleted file mode 100644
index d03e1eaa0..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e150m5_3limbs.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/solinas64_2e150m5_3limbs/fesubDisplay.log b/src/Specific/solinas64_2e150m5_3limbs/fesubDisplay.log
deleted file mode 100644
index d4a7f1c68..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- (((0x7fffffffffffe + x6) - x10), ((0x7fffffffffffe + x7) - x11), ((0x7fffffffffff6 + x5) - x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e150m5_3limbs/fesubDisplay.v b/src/Specific/solinas64_2e150m5_3limbs/fesubDisplay.v
deleted file mode 100644
index 88bbcd9be..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e150m5_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e150m5_3limbs/freeze.c b/src/Specific/solinas64_2e150m5_3limbs/freeze.c
deleted file mode 100644
index 0283f7ae1..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/freeze.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void freeze(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffffffb);
- { uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x3ffffffffffff);
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x3ffffffffffff);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0x3fffffffffffb);
- { uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- { uint64_t x19 = (x14 & 0x3ffffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- { uint64_t x23 = (x14 & 0x3ffffffffffff);
- { uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e150m5_3limbs/freeze.v b/src/Specific/solinas64_2e150m5_3limbs/freeze.v
deleted file mode 100644
index 47825531c..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e150m5_3limbs.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/solinas64_2e150m5_3limbs/freezeDisplay.log b/src/Specific/solinas64_2e150m5_3limbs/freezeDisplay.log
deleted file mode 100644
index 90dc24017..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/freezeDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffffffb);
- uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x3ffffffffffff);
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x3ffffffffffff);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0x3fffffffffffb);
- uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- uint64_t x19 = (x14 & 0x3ffffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- uint64_t x23 = (x14 & 0x3ffffffffffff);
- uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e150m5_3limbs/freezeDisplay.v b/src/Specific/solinas64_2e150m5_3limbs/freezeDisplay.v
deleted file mode 100644
index fa08bd8aa..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e150m5_3limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e150m5_3limbs/py_interpreter.sh b/src/Specific/solinas64_2e150m5_3limbs/py_interpreter.sh
deleted file mode 100755
index a840c463b..000000000
--- a/src/Specific/solinas64_2e150m5_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**150 - 5' -Dmodulus_bytes='50' -Da24='121665'
diff --git a/src/Specific/solinas64_2e150m5_4limbs/CurveParameters.v b/src/Specific/solinas64_2e150m5_4limbs/CurveParameters.v
deleted file mode 100644
index 390416b47..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^150 - 5
-Base: 37.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 37 + 1/2;
- bitwidth := 64;
- s := 2^150;
- c := [(1, 5)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e150m5_4limbs/Synthesis.v b/src/Specific/solinas64_2e150m5_4limbs/Synthesis.v
deleted file mode 100644
index c236d0737..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e150m5_4limbs.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/solinas64_2e150m5_4limbs/compiler.sh b/src/Specific/solinas64_2e150m5_4limbs/compiler.sh
deleted file mode 100755
index dd8685578..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{38,37,38,37}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<150) - 5' "$@"
diff --git a/src/Specific/solinas64_2e150m5_4limbs/compilerxx.sh b/src/Specific/solinas64_2e150m5_4limbs/compilerxx.sh
deleted file mode 100755
index 4816fc63d..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{38,37,38,37}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<150) - 5' "$@"
diff --git a/src/Specific/solinas64_2e150m5_4limbs/feadd.c b/src/Specific/solinas64_2e150m5_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e150m5_4limbs/feadd.v b/src/Specific/solinas64_2e150m5_4limbs/feadd.v
deleted file mode 100644
index 18aa60924..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e150m5_4limbs.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/solinas64_2e150m5_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e150m5_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e150m5_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e150m5_4limbs/feaddDisplay.v
deleted file mode 100644
index c7fb09285..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e150m5_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e150m5_4limbs/fecarry.v b/src/Specific/solinas64_2e150m5_4limbs/fecarry.v
deleted file mode 100644
index ef905e4f8..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e150m5_4limbs.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/solinas64_2e150m5_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e150m5_4limbs/fecarryDisplay.v
deleted file mode 100644
index f1a226c72..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e150m5_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e150m5_4limbs/femul.c b/src/Specific/solinas64_2e150m5_4limbs/femul.c
deleted file mode 100644
index de83c79a0..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x5 * (0x2 * ((uint128_t)x8 * x14))));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x5 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0x5 * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x26);
- { uint64_t x21 = ((uint64_t)x19 & 0x3fffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x25);
- { uint64_t x24 = ((uint64_t)x22 & 0x1fffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x26);
- { uint64_t x27 = ((uint64_t)x25 & 0x3fffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x25);
- { uint64_t x30 = ((uint64_t)x28 & 0x1fffffffff);
- { uint64_t x31 = (x21 + (0x5 * x29));
- { uint64_t x32 = (x31 >> 0x26);
- { uint64_t x33 = (x31 & 0x3fffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x25);
- { uint64_t x36 = (x34 & 0x1fffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e150m5_4limbs/femul.v b/src/Specific/solinas64_2e150m5_4limbs/femul.v
deleted file mode 100644
index 5ad0838be..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e150m5_4limbs.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/solinas64_2e150m5_4limbs/femulDisplay.log b/src/Specific/solinas64_2e150m5_4limbs/femulDisplay.log
deleted file mode 100644
index 8ca7957d9..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x5 * (0x2 * ((uint128_t)x8 * x14))));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x5 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0x5 * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x26);
- uint64_t x21 = ((uint64_t)x19 & 0x3fffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x25);
- uint64_t x24 = ((uint64_t)x22 & 0x1fffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x26);
- uint64_t x27 = ((uint64_t)x25 & 0x3fffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x25);
- uint64_t x30 = ((uint64_t)x28 & 0x1fffffffff);
- uint64_t x31 = (x21 + (0x5 * x29));
- uint64_t x32 = (x31 >> 0x26);
- uint64_t x33 = (x31 & 0x3fffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x25);
- uint64_t x36 = (x34 & 0x1fffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e150m5_4limbs/femulDisplay.v b/src/Specific/solinas64_2e150m5_4limbs/femulDisplay.v
deleted file mode 100644
index b62f96d9e..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e150m5_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e150m5_4limbs/fesquare.c b/src/Specific/solinas64_2e150m5_4limbs/fesquare.c
deleted file mode 100644
index 52b67dcbf..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x5 * (0x2 * ((uint128_t)x5 * x5))));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x5 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0x5 * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x26);
- { uint64_t x12 = ((uint64_t)x10 & 0x3fffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint64_t x14 = (uint64_t) (x13 >> 0x25);
- { uint64_t x15 = ((uint64_t)x13 & 0x1fffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x26);
- { uint64_t x18 = ((uint64_t)x16 & 0x3fffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x25);
- { uint64_t x21 = ((uint64_t)x19 & 0x1fffffffff);
- { uint64_t x22 = (x12 + (0x5 * x20));
- { uint64_t x23 = (x22 >> 0x26);
- { uint64_t x24 = (x22 & 0x3fffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x25);
- { uint64_t x27 = (x25 & 0x1fffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e150m5_4limbs/fesquare.v b/src/Specific/solinas64_2e150m5_4limbs/fesquare.v
deleted file mode 100644
index 2c05d1039..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e150m5_4limbs.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/solinas64_2e150m5_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e150m5_4limbs/fesquareDisplay.log
deleted file mode 100644
index 60f9916e3..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x5 * (0x2 * ((uint128_t)x5 * x5))));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x5 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0x5 * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- uint64_t x11 = (uint64_t) (x10 >> 0x26);
- uint64_t x12 = ((uint64_t)x10 & 0x3fffffffff);
- uint128_t x13 = (x11 + x9);
- uint64_t x14 = (uint64_t) (x13 >> 0x25);
- uint64_t x15 = ((uint64_t)x13 & 0x1fffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x26);
- uint64_t x18 = ((uint64_t)x16 & 0x3fffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x25);
- uint64_t x21 = ((uint64_t)x19 & 0x1fffffffff);
- uint64_t x22 = (x12 + (0x5 * x20));
- uint64_t x23 = (x22 >> 0x26);
- uint64_t x24 = (x22 & 0x3fffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x25);
- uint64_t x27 = (x25 & 0x1fffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e150m5_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e150m5_4limbs/fesquareDisplay.v
deleted file mode 100644
index 73d16719c..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e150m5_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e150m5_4limbs/fesub.c b/src/Specific/solinas64_2e150m5_4limbs/fesub.c
deleted file mode 100644
index 6417ee1c0..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x7ffffffff6 + x5) - x11);
- out[1] = ((0x3ffffffffe + x7) - x13);
- out[2] = ((0x7ffffffffe + x9) - x15);
- out[3] = ((0x3ffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e150m5_4limbs/fesub.v b/src/Specific/solinas64_2e150m5_4limbs/fesub.v
deleted file mode 100644
index e000c781b..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e150m5_4limbs.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/solinas64_2e150m5_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e150m5_4limbs/fesubDisplay.log
deleted file mode 100644
index f2e7599a7..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0x3ffffffffe + x8) - x14), ((0x7ffffffffe + x9) - x15), ((0x3ffffffffe + x7) - x13), ((0x7ffffffff6 + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e150m5_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e150m5_4limbs/fesubDisplay.v
deleted file mode 100644
index 4e223971d..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e150m5_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e150m5_4limbs/freeze.c b/src/Specific/solinas64_2e150m5_4limbs/freeze.c
deleted file mode 100644
index 780c727c8..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffb);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x1fffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x3fffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x1fffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0x3ffffffffb);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0x1fffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0x3fffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x1fffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e150m5_4limbs/freeze.v b/src/Specific/solinas64_2e150m5_4limbs/freeze.v
deleted file mode 100644
index 303c16604..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e150m5_4limbs.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/solinas64_2e150m5_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e150m5_4limbs/freezeDisplay.log
deleted file mode 100644
index b08075751..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffb);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x1fffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x3fffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x1fffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0x3ffffffffb);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0x1fffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0x3fffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x1fffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e150m5_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e150m5_4limbs/freezeDisplay.v
deleted file mode 100644
index 6b2a38219..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e150m5_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e150m5_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e150m5_4limbs/py_interpreter.sh
deleted file mode 100755
index 6d97e1865..000000000
--- a/src/Specific/solinas64_2e150m5_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**150 - 5' -Dmodulus_bytes='37.5' -Da24='121665'
diff --git a/src/Specific/solinas64_2e152m17_3limbs/CurveParameters.v b/src/Specific/solinas64_2e152m17_3limbs/CurveParameters.v
deleted file mode 100644
index a8578fe7d..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^152 - 17
-Base: 50 + 2/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 50 + 2/3;
- bitwidth := 64;
- s := 2^152;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 3); [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/solinas64_2e152m17_3limbs/Synthesis.v b/src/Specific/solinas64_2e152m17_3limbs/Synthesis.v
deleted file mode 100644
index 124631633..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e152m17_3limbs.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/solinas64_2e152m17_3limbs/compiler.sh b/src/Specific/solinas64_2e152m17_3limbs/compiler.sh
deleted file mode 100755
index 16ddf057a..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,51,50}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<152) - 17' "$@"
diff --git a/src/Specific/solinas64_2e152m17_3limbs/compilerxx.sh b/src/Specific/solinas64_2e152m17_3limbs/compilerxx.sh
deleted file mode 100755
index ab47ca1f7..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,51,50}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<152) - 17' "$@"
diff --git a/src/Specific/solinas64_2e152m17_3limbs/feadd.c b/src/Specific/solinas64_2e152m17_3limbs/feadd.c
deleted file mode 100644
index 725c1f205..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/feadd.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = (x5 + x9);
- out[1] = (x7 + x11);
- out[2] = (x6 + x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e152m17_3limbs/feadd.v b/src/Specific/solinas64_2e152m17_3limbs/feadd.v
deleted file mode 100644
index d184cf738..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e152m17_3limbs.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/solinas64_2e152m17_3limbs/feaddDisplay.log b/src/Specific/solinas64_2e152m17_3limbs/feaddDisplay.log
deleted file mode 100644
index 64fb467ef..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- ((x6 + x10), (x7 + x11), (x5 + x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e152m17_3limbs/feaddDisplay.v b/src/Specific/solinas64_2e152m17_3limbs/feaddDisplay.v
deleted file mode 100644
index f4b95a3f2..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e152m17_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e152m17_3limbs/fecarry.v b/src/Specific/solinas64_2e152m17_3limbs/fecarry.v
deleted file mode 100644
index 419b7026a..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e152m17_3limbs.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/solinas64_2e152m17_3limbs/fecarryDisplay.v b/src/Specific/solinas64_2e152m17_3limbs/fecarryDisplay.v
deleted file mode 100644
index ca44b7749..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e152m17_3limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e152m17_3limbs/femul.c b/src/Specific/solinas64_2e152m17_3limbs/femul.c
deleted file mode 100644
index 75bd91db1..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/femul.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint128_t x12 = (((uint128_t)x5 * x10) + (((uint128_t)x7 * x11) + ((uint128_t)x6 * x9)));
- { uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0x11 * (0x2 * ((uint128_t)x6 * x10))));
- { uint128_t x14 = (((uint128_t)x5 * x9) + (0x11 * ((0x2 * ((uint128_t)x7 * x10)) + (0x2 * ((uint128_t)x6 * x11)))));
- { uint64_t x15 = (uint64_t) (x14 >> 0x33);
- { uint64_t x16 = ((uint64_t)x14 & 0x7ffffffffffff);
- { uint128_t x17 = (x15 + x13);
- { uint64_t x18 = (uint64_t) (x17 >> 0x33);
- { uint64_t x19 = ((uint64_t)x17 & 0x7ffffffffffff);
- { uint128_t x20 = (x18 + x12);
- { uint64_t x21 = (uint64_t) (x20 >> 0x32);
- { uint64_t x22 = ((uint64_t)x20 & 0x3ffffffffffff);
- { uint64_t x23 = (x16 + (0x11 * x21));
- { uint64_t x24 = (x23 >> 0x33);
- { uint64_t x25 = (x23 & 0x7ffffffffffff);
- { uint64_t x26 = (x24 + x19);
- { uint64_t x27 = (x26 >> 0x33);
- { uint64_t x28 = (x26 & 0x7ffffffffffff);
- out[0] = x25;
- out[1] = x28;
- out[2] = (x27 + x22);
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e152m17_3limbs/femul.v b/src/Specific/solinas64_2e152m17_3limbs/femul.v
deleted file mode 100644
index 578a69cef..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e152m17_3limbs.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/solinas64_2e152m17_3limbs/femulDisplay.log b/src/Specific/solinas64_2e152m17_3limbs/femulDisplay.log
deleted file mode 100644
index 452b3bdef..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint128_t x12 = (((uint128_t)x5 * x10) + (((uint128_t)x7 * x11) + ((uint128_t)x6 * x9)));
- uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0x11 * (0x2 * ((uint128_t)x6 * x10))));
- uint128_t x14 = (((uint128_t)x5 * x9) + (0x11 * ((0x2 * ((uint128_t)x7 * x10)) + (0x2 * ((uint128_t)x6 * x11)))));
- uint64_t x15 = (uint64_t) (x14 >> 0x33);
- uint64_t x16 = ((uint64_t)x14 & 0x7ffffffffffff);
- uint128_t x17 = (x15 + x13);
- uint64_t x18 = (uint64_t) (x17 >> 0x33);
- uint64_t x19 = ((uint64_t)x17 & 0x7ffffffffffff);
- uint128_t x20 = (x18 + x12);
- uint64_t x21 = (uint64_t) (x20 >> 0x32);
- uint64_t x22 = ((uint64_t)x20 & 0x3ffffffffffff);
- uint64_t x23 = (x16 + (0x11 * x21));
- uint64_t x24 = (x23 >> 0x33);
- uint64_t x25 = (x23 & 0x7ffffffffffff);
- uint64_t x26 = (x24 + x19);
- uint64_t x27 = (x26 >> 0x33);
- uint64_t x28 = (x26 & 0x7ffffffffffff);
- return ((x27 + x22), Return x28, Return x25))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e152m17_3limbs/femulDisplay.v b/src/Specific/solinas64_2e152m17_3limbs/femulDisplay.v
deleted file mode 100644
index e1b6854a5..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e152m17_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e152m17_3limbs/fesquare.c b/src/Specific/solinas64_2e152m17_3limbs/fesquare.c
deleted file mode 100644
index fbca9bc7e..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/fesquare.c
+++ /dev/null
@@ -1,26 +0,0 @@
-static void fesquare(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x5 = (((uint128_t)x2 * x3) + (((uint128_t)x4 * x4) + ((uint128_t)x3 * x2)));
- { uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * (0x2 * ((uint128_t)x3 * x3))));
- { uint128_t x7 = (((uint128_t)x2 * x2) + (0x11 * ((0x2 * ((uint128_t)x4 * x3)) + (0x2 * ((uint128_t)x3 * x4)))));
- { uint64_t x8 = (uint64_t) (x7 >> 0x33);
- { uint64_t x9 = ((uint64_t)x7 & 0x7ffffffffffff);
- { uint128_t x10 = (x8 + x6);
- { uint64_t x11 = (uint64_t) (x10 >> 0x33);
- { uint64_t x12 = ((uint64_t)x10 & 0x7ffffffffffff);
- { uint128_t x13 = (x11 + x5);
- { uint64_t x14 = (uint64_t) (x13 >> 0x32);
- { uint64_t x15 = ((uint64_t)x13 & 0x3ffffffffffff);
- { uint64_t x16 = (x9 + (0x11 * x14));
- { uint64_t x17 = (x16 >> 0x33);
- { uint64_t x18 = (x16 & 0x7ffffffffffff);
- { uint64_t x19 = (x17 + x12);
- { uint64_t x20 = (x19 >> 0x33);
- { uint64_t x21 = (x19 & 0x7ffffffffffff);
- out[0] = x18;
- out[1] = x21;
- out[2] = (x20 + x15);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e152m17_3limbs/fesquare.v b/src/Specific/solinas64_2e152m17_3limbs/fesquare.v
deleted file mode 100644
index 0e47f659e..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e152m17_3limbs.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/solinas64_2e152m17_3limbs/fesquareDisplay.log b/src/Specific/solinas64_2e152m17_3limbs/fesquareDisplay.log
deleted file mode 100644
index fc6452c98..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint128_t x5 = (((uint128_t)x2 * x3) + (((uint128_t)x4 * x4) + ((uint128_t)x3 * x2)));
- uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * (0x2 * ((uint128_t)x3 * x3))));
- uint128_t x7 = (((uint128_t)x2 * x2) + (0x11 * ((0x2 * ((uint128_t)x4 * x3)) + (0x2 * ((uint128_t)x3 * x4)))));
- uint64_t x8 = (uint64_t) (x7 >> 0x33);
- uint64_t x9 = ((uint64_t)x7 & 0x7ffffffffffff);
- uint128_t x10 = (x8 + x6);
- uint64_t x11 = (uint64_t) (x10 >> 0x33);
- uint64_t x12 = ((uint64_t)x10 & 0x7ffffffffffff);
- uint128_t x13 = (x11 + x5);
- uint64_t x14 = (uint64_t) (x13 >> 0x32);
- uint64_t x15 = ((uint64_t)x13 & 0x3ffffffffffff);
- uint64_t x16 = (x9 + (0x11 * x14));
- uint64_t x17 = (x16 >> 0x33);
- uint64_t x18 = (x16 & 0x7ffffffffffff);
- uint64_t x19 = (x17 + x12);
- uint64_t x20 = (x19 >> 0x33);
- uint64_t x21 = (x19 & 0x7ffffffffffff);
- return ((x20 + x15), Return x21, Return x18))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e152m17_3limbs/fesquareDisplay.v b/src/Specific/solinas64_2e152m17_3limbs/fesquareDisplay.v
deleted file mode 100644
index 9698b3e75..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e152m17_3limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e152m17_3limbs/fesub.c b/src/Specific/solinas64_2e152m17_3limbs/fesub.c
deleted file mode 100644
index 72692ad0b..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/fesub.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = ((0xfffffffffffde + x5) - x9);
- out[1] = ((0xffffffffffffe + x7) - x11);
- out[2] = ((0x7fffffffffffe + x6) - x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e152m17_3limbs/fesub.v b/src/Specific/solinas64_2e152m17_3limbs/fesub.v
deleted file mode 100644
index fc0a228bb..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e152m17_3limbs.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/solinas64_2e152m17_3limbs/fesubDisplay.log b/src/Specific/solinas64_2e152m17_3limbs/fesubDisplay.log
deleted file mode 100644
index 36d87ccd5..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- (((0x7fffffffffffe + x6) - x10), ((0xffffffffffffe + x7) - x11), ((0xfffffffffffde + x5) - x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e152m17_3limbs/fesubDisplay.v b/src/Specific/solinas64_2e152m17_3limbs/fesubDisplay.v
deleted file mode 100644
index 519258dda..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e152m17_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e152m17_3limbs/freeze.c b/src/Specific/solinas64_2e152m17_3limbs/freeze.c
deleted file mode 100644
index 10a1650e5..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/freeze.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void freeze(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6; uint8_t x7 = _subborrow_u51(0x0, x2, 0x7ffffffffffef, &x6);
- { uint64_t x9; uint8_t x10 = _subborrow_u51(x7, x4, 0x7ffffffffffff, &x9);
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x3ffffffffffff);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0x7ffffffffffef);
- { uint64_t x17; uint8_t x18 = _addcarryx_u51(0x0, x6, x15, &x17);
- { uint64_t x19 = (x14 & 0x7ffffffffffff);
- { uint64_t x21; uint8_t x22 = _addcarryx_u51(x18, x9, x19, &x21);
- { uint64_t x23 = (x14 & 0x3ffffffffffff);
- { uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e152m17_3limbs/freeze.v b/src/Specific/solinas64_2e152m17_3limbs/freeze.v
deleted file mode 100644
index f3204e8a5..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e152m17_3limbs.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/solinas64_2e152m17_3limbs/freezeDisplay.log b/src/Specific/solinas64_2e152m17_3limbs/freezeDisplay.log
deleted file mode 100644
index ddd32769a..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/freezeDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = subborrow_u51(0x0, x2, 0x7ffffffffffef);
- uint64_t x9, uint8_t x10 = subborrow_u51(x7, x4, 0x7ffffffffffff);
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x3ffffffffffff);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0x7ffffffffffef);
- uint64_t x17, uint8_t x18 = addcarryx_u51(0x0, x6, x15);
- uint64_t x19 = (x14 & 0x7ffffffffffff);
- uint64_t x21, uint8_t x22 = addcarryx_u51(x18, x9, x19);
- uint64_t x23 = (x14 & 0x3ffffffffffff);
- uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e152m17_3limbs/freezeDisplay.v b/src/Specific/solinas64_2e152m17_3limbs/freezeDisplay.v
deleted file mode 100644
index 3dd2bb416..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e152m17_3limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e152m17_3limbs/py_interpreter.sh b/src/Specific/solinas64_2e152m17_3limbs/py_interpreter.sh
deleted file mode 100755
index 043bdf87f..000000000
--- a/src/Specific/solinas64_2e152m17_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**152 - 17' -Dmodulus_bytes='50 + 2/3' -Da24='121665'
diff --git a/src/Specific/solinas64_2e152m17_4limbs/CurveParameters.v b/src/Specific/solinas64_2e152m17_4limbs/CurveParameters.v
deleted file mode 100644
index e17acd9de..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^152 - 17
-Base: 38
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 38;
- bitwidth := 64;
- s := 2^152;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e152m17_4limbs/Synthesis.v b/src/Specific/solinas64_2e152m17_4limbs/Synthesis.v
deleted file mode 100644
index f9678decc..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e152m17_4limbs.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/solinas64_2e152m17_4limbs/compiler.sh b/src/Specific/solinas64_2e152m17_4limbs/compiler.sh
deleted file mode 100755
index eb3c348ea..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{38,38,38,38}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<152) - 17' "$@"
diff --git a/src/Specific/solinas64_2e152m17_4limbs/compilerxx.sh b/src/Specific/solinas64_2e152m17_4limbs/compilerxx.sh
deleted file mode 100755
index 6a783b1bf..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/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,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{38,38,38,38}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='19' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<152) - 17' "$@"
diff --git a/src/Specific/solinas64_2e152m17_4limbs/feadd.c b/src/Specific/solinas64_2e152m17_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e152m17_4limbs/feadd.v b/src/Specific/solinas64_2e152m17_4limbs/feadd.v
deleted file mode 100644
index c5a96a493..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e152m17_4limbs.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/solinas64_2e152m17_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e152m17_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e152m17_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e152m17_4limbs/feaddDisplay.v
deleted file mode 100644
index f8d5ea1e3..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e152m17_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e152m17_4limbs/fecarry.v b/src/Specific/solinas64_2e152m17_4limbs/fecarry.v
deleted file mode 100644
index e379b1e2a..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e152m17_4limbs.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/solinas64_2e152m17_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e152m17_4limbs/fecarryDisplay.v
deleted file mode 100644
index df7d6fdec..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e152m17_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e152m17_4limbs/femul.c b/src/Specific/solinas64_2e152m17_4limbs/femul.c
deleted file mode 100644
index c351efd1e..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + (((uint128_t)x7 * x13) + ((uint128_t)x9 * x11))) + (0x11 * ((uint128_t)x8 * x14)));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x11 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0x11 * (((uint128_t)x7 * x14) + (((uint128_t)x9 * x15) + ((uint128_t)x8 * x13)))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x26);
- { uint64_t x21 = ((uint64_t)x19 & 0x3fffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x26);
- { uint64_t x24 = ((uint64_t)x22 & 0x3fffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x26);
- { uint64_t x27 = ((uint64_t)x25 & 0x3fffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x26);
- { uint64_t x30 = ((uint64_t)x28 & 0x3fffffffff);
- { uint64_t x31 = (x21 + (0x11 * x29));
- { uint64_t x32 = (x31 >> 0x26);
- { uint64_t x33 = (x31 & 0x3fffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x26);
- { uint64_t x36 = (x34 & 0x3fffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e152m17_4limbs/femul.v b/src/Specific/solinas64_2e152m17_4limbs/femul.v
deleted file mode 100644
index 32cfb40b1..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e152m17_4limbs.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/solinas64_2e152m17_4limbs/femulDisplay.log b/src/Specific/solinas64_2e152m17_4limbs/femulDisplay.log
deleted file mode 100644
index 10abf603b..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + (((uint128_t)x7 * x13) + ((uint128_t)x9 * x11))) + (0x11 * ((uint128_t)x8 * x14)));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x11 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0x11 * (((uint128_t)x7 * x14) + (((uint128_t)x9 * x15) + ((uint128_t)x8 * x13)))));
- uint64_t x20 = (uint64_t) (x19 >> 0x26);
- uint64_t x21 = ((uint64_t)x19 & 0x3fffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x26);
- uint64_t x24 = ((uint64_t)x22 & 0x3fffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x26);
- uint64_t x27 = ((uint64_t)x25 & 0x3fffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x26);
- uint64_t x30 = ((uint64_t)x28 & 0x3fffffffff);
- uint64_t x31 = (x21 + (0x11 * x29));
- uint64_t x32 = (x31 >> 0x26);
- uint64_t x33 = (x31 & 0x3fffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x26);
- uint64_t x36 = (x34 & 0x3fffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e152m17_4limbs/femulDisplay.v b/src/Specific/solinas64_2e152m17_4limbs/femulDisplay.v
deleted file mode 100644
index 5ff8ce46b..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e152m17_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e152m17_4limbs/fesquare.c b/src/Specific/solinas64_2e152m17_4limbs/fesquare.c
deleted file mode 100644
index d8cf4dafa..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x11 * ((uint128_t)x5 * x5)));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0x11 * (((uint128_t)x4 * x5) + (((uint128_t)x6 * x6) + ((uint128_t)x5 * x4)))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x26);
- { uint64_t x12 = ((uint64_t)x10 & 0x3fffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint64_t x14 = (uint64_t) (x13 >> 0x26);
- { uint64_t x15 = ((uint64_t)x13 & 0x3fffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x26);
- { uint64_t x18 = ((uint64_t)x16 & 0x3fffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x26);
- { uint64_t x21 = ((uint64_t)x19 & 0x3fffffffff);
- { uint64_t x22 = (x12 + (0x11 * x20));
- { uint64_t x23 = (x22 >> 0x26);
- { uint64_t x24 = (x22 & 0x3fffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x26);
- { uint64_t x27 = (x25 & 0x3fffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e152m17_4limbs/fesquare.v b/src/Specific/solinas64_2e152m17_4limbs/fesquare.v
deleted file mode 100644
index 120f3e72f..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e152m17_4limbs.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/solinas64_2e152m17_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e152m17_4limbs/fesquareDisplay.log
deleted file mode 100644
index c0a02bdce..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x11 * ((uint128_t)x5 * x5)));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0x11 * (((uint128_t)x4 * x5) + (((uint128_t)x6 * x6) + ((uint128_t)x5 * x4)))));
- uint64_t x11 = (uint64_t) (x10 >> 0x26);
- uint64_t x12 = ((uint64_t)x10 & 0x3fffffffff);
- uint128_t x13 = (x11 + x9);
- uint64_t x14 = (uint64_t) (x13 >> 0x26);
- uint64_t x15 = ((uint64_t)x13 & 0x3fffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x26);
- uint64_t x18 = ((uint64_t)x16 & 0x3fffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x26);
- uint64_t x21 = ((uint64_t)x19 & 0x3fffffffff);
- uint64_t x22 = (x12 + (0x11 * x20));
- uint64_t x23 = (x22 >> 0x26);
- uint64_t x24 = (x22 & 0x3fffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x26);
- uint64_t x27 = (x25 & 0x3fffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e152m17_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e152m17_4limbs/fesquareDisplay.v
deleted file mode 100644
index 7ccb3c574..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e152m17_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e152m17_4limbs/fesub.c b/src/Specific/solinas64_2e152m17_4limbs/fesub.c
deleted file mode 100644
index 1ceabd249..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x7fffffffde + x5) - x11);
- out[1] = ((0x7ffffffffe + x7) - x13);
- out[2] = ((0x7ffffffffe + x9) - x15);
- out[3] = ((0x7ffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e152m17_4limbs/fesub.v b/src/Specific/solinas64_2e152m17_4limbs/fesub.v
deleted file mode 100644
index 0b2bdf52a..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e152m17_4limbs.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/solinas64_2e152m17_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e152m17_4limbs/fesubDisplay.log
deleted file mode 100644
index 7ab073e38..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0x7ffffffffe + x8) - x14), ((0x7ffffffffe + x9) - x15), ((0x7ffffffffe + x7) - x13), ((0x7fffffffde + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e152m17_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e152m17_4limbs/fesubDisplay.v
deleted file mode 100644
index 47d448ca9..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e152m17_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e152m17_4limbs/freeze.c b/src/Specific/solinas64_2e152m17_4limbs/freeze.c
deleted file mode 100644
index 39ce4203c..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffef);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x3fffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x3fffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x3fffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0x3fffffffef);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0x3fffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0x3fffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x3fffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e152m17_4limbs/freeze.v b/src/Specific/solinas64_2e152m17_4limbs/freeze.v
deleted file mode 100644
index 7dc01409e..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e152m17_4limbs.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/solinas64_2e152m17_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e152m17_4limbs/freezeDisplay.log
deleted file mode 100644
index 9c337e131..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffef);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x3fffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x3fffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x3fffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0x3fffffffef);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0x3fffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0x3fffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x3fffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e152m17_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e152m17_4limbs/freezeDisplay.v
deleted file mode 100644
index 31fdf5579..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e152m17_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e152m17_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e152m17_4limbs/py_interpreter.sh
deleted file mode 100755
index a898be393..000000000
--- a/src/Specific/solinas64_2e152m17_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**152 - 17' -Dmodulus_bytes='38' -Da24='121665'
diff --git a/src/Specific/solinas64_2e158m15_3limbs/CurveParameters.v b/src/Specific/solinas64_2e158m15_3limbs/CurveParameters.v
deleted file mode 100644
index 6c2984501..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^158 - 15
-Base: 52 + 2/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 52 + 2/3;
- bitwidth := 64;
- s := 2^158;
- c := [(1, 15)];
- carry_chains := Some [seq 0 (pred 3); [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/solinas64_2e158m15_3limbs/Synthesis.v b/src/Specific/solinas64_2e158m15_3limbs/Synthesis.v
deleted file mode 100644
index f5a132fe0..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e158m15_3limbs.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/solinas64_2e158m15_3limbs/compiler.sh b/src/Specific/solinas64_2e158m15_3limbs/compiler.sh
deleted file mode 100755
index 1137388ac..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/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='64' -Dlimb_weight_gaps_array='{53,53,52}' -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='3' -Dq_mpz='(1_mpz<<158) - 15' "$@"
diff --git a/src/Specific/solinas64_2e158m15_3limbs/compilerxx.sh b/src/Specific/solinas64_2e158m15_3limbs/compilerxx.sh
deleted file mode 100755
index 7ffd36d7f..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/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='64' -Dlimb_weight_gaps_array='{53,53,52}' -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='3' -Dq_mpz='(1_mpz<<158) - 15' "$@"
diff --git a/src/Specific/solinas64_2e158m15_3limbs/feadd.c b/src/Specific/solinas64_2e158m15_3limbs/feadd.c
deleted file mode 100644
index 725c1f205..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/feadd.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = (x5 + x9);
- out[1] = (x7 + x11);
- out[2] = (x6 + x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e158m15_3limbs/feadd.v b/src/Specific/solinas64_2e158m15_3limbs/feadd.v
deleted file mode 100644
index ff07bbc36..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e158m15_3limbs.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/solinas64_2e158m15_3limbs/feaddDisplay.log b/src/Specific/solinas64_2e158m15_3limbs/feaddDisplay.log
deleted file mode 100644
index 64fb467ef..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- ((x6 + x10), (x7 + x11), (x5 + x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e158m15_3limbs/feaddDisplay.v b/src/Specific/solinas64_2e158m15_3limbs/feaddDisplay.v
deleted file mode 100644
index ff85c5dd9..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e158m15_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e158m15_3limbs/fecarry.v b/src/Specific/solinas64_2e158m15_3limbs/fecarry.v
deleted file mode 100644
index 55205b9e4..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e158m15_3limbs.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/solinas64_2e158m15_3limbs/fecarryDisplay.v b/src/Specific/solinas64_2e158m15_3limbs/fecarryDisplay.v
deleted file mode 100644
index c5267b88c..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e158m15_3limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e158m15_3limbs/femul.c b/src/Specific/solinas64_2e158m15_3limbs/femul.c
deleted file mode 100644
index f45007cd1..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/femul.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint128_t x12 = (((uint128_t)x5 * x10) + (((uint128_t)x7 * x11) + ((uint128_t)x6 * x9)));
- { uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0xf * (0x2 * ((uint128_t)x6 * x10))));
- { uint128_t x14 = (((uint128_t)x5 * x9) + (0xf * ((0x2 * ((uint128_t)x7 * x10)) + (0x2 * ((uint128_t)x6 * x11)))));
- { uint64_t x15 = (uint64_t) (x14 >> 0x35);
- { uint64_t x16 = ((uint64_t)x14 & 0x1fffffffffffff);
- { uint128_t x17 = (x15 + x13);
- { uint64_t x18 = (uint64_t) (x17 >> 0x35);
- { uint64_t x19 = ((uint64_t)x17 & 0x1fffffffffffff);
- { uint128_t x20 = (x18 + x12);
- { uint64_t x21 = (uint64_t) (x20 >> 0x34);
- { uint64_t x22 = ((uint64_t)x20 & 0xfffffffffffff);
- { uint64_t x23 = (x16 + (0xf * x21));
- { uint64_t x24 = (x23 >> 0x35);
- { uint64_t x25 = (x23 & 0x1fffffffffffff);
- { uint64_t x26 = (x24 + x19);
- { uint64_t x27 = (x26 >> 0x35);
- { uint64_t x28 = (x26 & 0x1fffffffffffff);
- out[0] = x25;
- out[1] = x28;
- out[2] = (x27 + x22);
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e158m15_3limbs/femul.v b/src/Specific/solinas64_2e158m15_3limbs/femul.v
deleted file mode 100644
index 7f070ee75..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e158m15_3limbs.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/solinas64_2e158m15_3limbs/femulDisplay.log b/src/Specific/solinas64_2e158m15_3limbs/femulDisplay.log
deleted file mode 100644
index f6e415238..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint128_t x12 = (((uint128_t)x5 * x10) + (((uint128_t)x7 * x11) + ((uint128_t)x6 * x9)));
- uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0xf * (0x2 * ((uint128_t)x6 * x10))));
- uint128_t x14 = (((uint128_t)x5 * x9) + (0xf * ((0x2 * ((uint128_t)x7 * x10)) + (0x2 * ((uint128_t)x6 * x11)))));
- uint64_t x15 = (uint64_t) (x14 >> 0x35);
- uint64_t x16 = ((uint64_t)x14 & 0x1fffffffffffff);
- uint128_t x17 = (x15 + x13);
- uint64_t x18 = (uint64_t) (x17 >> 0x35);
- uint64_t x19 = ((uint64_t)x17 & 0x1fffffffffffff);
- uint128_t x20 = (x18 + x12);
- uint64_t x21 = (uint64_t) (x20 >> 0x34);
- uint64_t x22 = ((uint64_t)x20 & 0xfffffffffffff);
- uint64_t x23 = (x16 + (0xf * x21));
- uint64_t x24 = (x23 >> 0x35);
- uint64_t x25 = (x23 & 0x1fffffffffffff);
- uint64_t x26 = (x24 + x19);
- uint64_t x27 = (x26 >> 0x35);
- uint64_t x28 = (x26 & 0x1fffffffffffff);
- return ((x27 + x22), Return x28, Return x25))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e158m15_3limbs/femulDisplay.v b/src/Specific/solinas64_2e158m15_3limbs/femulDisplay.v
deleted file mode 100644
index b6c590207..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e158m15_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e158m15_3limbs/fesquare.c b/src/Specific/solinas64_2e158m15_3limbs/fesquare.c
deleted file mode 100644
index 96cd9d1bc..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/fesquare.c
+++ /dev/null
@@ -1,26 +0,0 @@
-static void fesquare(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x5 = (((uint128_t)x2 * x3) + (((uint128_t)x4 * x4) + ((uint128_t)x3 * x2)));
- { uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xf * (0x2 * ((uint128_t)x3 * x3))));
- { uint128_t x7 = (((uint128_t)x2 * x2) + (0xf * ((0x2 * ((uint128_t)x4 * x3)) + (0x2 * ((uint128_t)x3 * x4)))));
- { uint64_t x8 = (uint64_t) (x7 >> 0x35);
- { uint64_t x9 = ((uint64_t)x7 & 0x1fffffffffffff);
- { uint128_t x10 = (x8 + x6);
- { uint64_t x11 = (uint64_t) (x10 >> 0x35);
- { uint64_t x12 = ((uint64_t)x10 & 0x1fffffffffffff);
- { uint128_t x13 = (x11 + x5);
- { uint64_t x14 = (uint64_t) (x13 >> 0x34);
- { uint64_t x15 = ((uint64_t)x13 & 0xfffffffffffff);
- { uint64_t x16 = (x9 + (0xf * x14));
- { uint64_t x17 = (x16 >> 0x35);
- { uint64_t x18 = (x16 & 0x1fffffffffffff);
- { uint64_t x19 = (x17 + x12);
- { uint64_t x20 = (x19 >> 0x35);
- { uint64_t x21 = (x19 & 0x1fffffffffffff);
- out[0] = x18;
- out[1] = x21;
- out[2] = (x20 + x15);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e158m15_3limbs/fesquare.v b/src/Specific/solinas64_2e158m15_3limbs/fesquare.v
deleted file mode 100644
index 776e4ba4c..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e158m15_3limbs.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/solinas64_2e158m15_3limbs/fesquareDisplay.log b/src/Specific/solinas64_2e158m15_3limbs/fesquareDisplay.log
deleted file mode 100644
index 003397707..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint128_t x5 = (((uint128_t)x2 * x3) + (((uint128_t)x4 * x4) + ((uint128_t)x3 * x2)));
- uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xf * (0x2 * ((uint128_t)x3 * x3))));
- uint128_t x7 = (((uint128_t)x2 * x2) + (0xf * ((0x2 * ((uint128_t)x4 * x3)) + (0x2 * ((uint128_t)x3 * x4)))));
- uint64_t x8 = (uint64_t) (x7 >> 0x35);
- uint64_t x9 = ((uint64_t)x7 & 0x1fffffffffffff);
- uint128_t x10 = (x8 + x6);
- uint64_t x11 = (uint64_t) (x10 >> 0x35);
- uint64_t x12 = ((uint64_t)x10 & 0x1fffffffffffff);
- uint128_t x13 = (x11 + x5);
- uint64_t x14 = (uint64_t) (x13 >> 0x34);
- uint64_t x15 = ((uint64_t)x13 & 0xfffffffffffff);
- uint64_t x16 = (x9 + (0xf * x14));
- uint64_t x17 = (x16 >> 0x35);
- uint64_t x18 = (x16 & 0x1fffffffffffff);
- uint64_t x19 = (x17 + x12);
- uint64_t x20 = (x19 >> 0x35);
- uint64_t x21 = (x19 & 0x1fffffffffffff);
- return ((x20 + x15), Return x21, Return x18))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e158m15_3limbs/fesquareDisplay.v b/src/Specific/solinas64_2e158m15_3limbs/fesquareDisplay.v
deleted file mode 100644
index 7e2b0aeed..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e158m15_3limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e158m15_3limbs/fesub.c b/src/Specific/solinas64_2e158m15_3limbs/fesub.c
deleted file mode 100644
index 54d3f502f..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/fesub.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = ((0x3fffffffffffe2 + x5) - x9);
- out[1] = ((0x3ffffffffffffe + x7) - x11);
- out[2] = ((0x1ffffffffffffe + x6) - x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e158m15_3limbs/fesub.v b/src/Specific/solinas64_2e158m15_3limbs/fesub.v
deleted file mode 100644
index 6df1c169a..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e158m15_3limbs.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/solinas64_2e158m15_3limbs/fesubDisplay.log b/src/Specific/solinas64_2e158m15_3limbs/fesubDisplay.log
deleted file mode 100644
index 05695579b..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- (((0x1ffffffffffffe + x6) - x10), ((0x3ffffffffffffe + x7) - x11), ((0x3fffffffffffe2 + x5) - x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e158m15_3limbs/fesubDisplay.v b/src/Specific/solinas64_2e158m15_3limbs/fesubDisplay.v
deleted file mode 100644
index 81f92d6a8..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e158m15_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e158m15_3limbs/freeze.c b/src/Specific/solinas64_2e158m15_3limbs/freeze.c
deleted file mode 100644
index d6722b135..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/freeze.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void freeze(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffffffffff1);
- { uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x1fffffffffffff);
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0xfffffffffffff);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0x1ffffffffffff1);
- { uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- { uint64_t x19 = (x14 & 0x1fffffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- { uint64_t x23 = (x14 & 0xfffffffffffff);
- { uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e158m15_3limbs/freeze.v b/src/Specific/solinas64_2e158m15_3limbs/freeze.v
deleted file mode 100644
index 33ba9bb68..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e158m15_3limbs.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/solinas64_2e158m15_3limbs/freezeDisplay.log b/src/Specific/solinas64_2e158m15_3limbs/freezeDisplay.log
deleted file mode 100644
index 4345bf25c..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/freezeDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffffffffff1);
- uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x1fffffffffffff);
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0xfffffffffffff);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0x1ffffffffffff1);
- uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- uint64_t x19 = (x14 & 0x1fffffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- uint64_t x23 = (x14 & 0xfffffffffffff);
- uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e158m15_3limbs/freezeDisplay.v b/src/Specific/solinas64_2e158m15_3limbs/freezeDisplay.v
deleted file mode 100644
index c5ffd962d..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e158m15_3limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e158m15_3limbs/py_interpreter.sh b/src/Specific/solinas64_2e158m15_3limbs/py_interpreter.sh
deleted file mode 100755
index 9ff818a21..000000000
--- a/src/Specific/solinas64_2e158m15_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**158 - 15' -Dmodulus_bytes='52 + 2/3' -Da24='121665'
diff --git a/src/Specific/solinas64_2e158m15_4limbs/CurveParameters.v b/src/Specific/solinas64_2e158m15_4limbs/CurveParameters.v
deleted file mode 100644
index 87d0e02c0..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^158 - 15
-Base: 39.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 39 + 1/2;
- bitwidth := 64;
- s := 2^158;
- c := [(1, 15)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e158m15_4limbs/Synthesis.v b/src/Specific/solinas64_2e158m15_4limbs/Synthesis.v
deleted file mode 100644
index 8035cc65d..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e158m15_4limbs.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/solinas64_2e158m15_4limbs/compiler.sh b/src/Specific/solinas64_2e158m15_4limbs/compiler.sh
deleted file mode 100755
index 1ca4ef4c3..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/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='64' -Dlimb_weight_gaps_array='{40,39,40,39}' -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='4' -Dq_mpz='(1_mpz<<158) - 15' "$@"
diff --git a/src/Specific/solinas64_2e158m15_4limbs/compilerxx.sh b/src/Specific/solinas64_2e158m15_4limbs/compilerxx.sh
deleted file mode 100755
index 6278f76f6..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/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='64' -Dlimb_weight_gaps_array='{40,39,40,39}' -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='4' -Dq_mpz='(1_mpz<<158) - 15' "$@"
diff --git a/src/Specific/solinas64_2e158m15_4limbs/feadd.c b/src/Specific/solinas64_2e158m15_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e158m15_4limbs/feadd.v b/src/Specific/solinas64_2e158m15_4limbs/feadd.v
deleted file mode 100644
index e4b02d87d..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e158m15_4limbs.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/solinas64_2e158m15_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e158m15_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e158m15_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e158m15_4limbs/feaddDisplay.v
deleted file mode 100644
index c79a985de..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e158m15_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e158m15_4limbs/fecarry.v b/src/Specific/solinas64_2e158m15_4limbs/fecarry.v
deleted file mode 100644
index 6926e84a3..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e158m15_4limbs.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/solinas64_2e158m15_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e158m15_4limbs/fecarryDisplay.v
deleted file mode 100644
index 477408839..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e158m15_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e158m15_4limbs/femul.c b/src/Specific/solinas64_2e158m15_4limbs/femul.c
deleted file mode 100644
index 6511a391c..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0xf * (0x2 * ((uint128_t)x8 * x14))));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0xf * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0xf * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x28);
- { uint64_t x21 = ((uint64_t)x19 & 0xffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x27);
- { uint64_t x24 = ((uint64_t)x22 & 0x7fffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x28);
- { uint64_t x27 = ((uint64_t)x25 & 0xffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x27);
- { uint64_t x30 = ((uint64_t)x28 & 0x7fffffffff);
- { uint64_t x31 = (x21 + (0xf * x29));
- { uint64_t x32 = (x31 >> 0x28);
- { uint64_t x33 = (x31 & 0xffffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x27);
- { uint64_t x36 = (x34 & 0x7fffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e158m15_4limbs/femul.v b/src/Specific/solinas64_2e158m15_4limbs/femul.v
deleted file mode 100644
index 20ecef8b5..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e158m15_4limbs.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/solinas64_2e158m15_4limbs/femulDisplay.log b/src/Specific/solinas64_2e158m15_4limbs/femulDisplay.log
deleted file mode 100644
index 2f2b6fd68..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0xf * (0x2 * ((uint128_t)x8 * x14))));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0xf * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0xf * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x28);
- uint64_t x21 = ((uint64_t)x19 & 0xffffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x27);
- uint64_t x24 = ((uint64_t)x22 & 0x7fffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x28);
- uint64_t x27 = ((uint64_t)x25 & 0xffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x27);
- uint64_t x30 = ((uint64_t)x28 & 0x7fffffffff);
- uint64_t x31 = (x21 + (0xf * x29));
- uint64_t x32 = (x31 >> 0x28);
- uint64_t x33 = (x31 & 0xffffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x27);
- uint64_t x36 = (x34 & 0x7fffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e158m15_4limbs/femulDisplay.v b/src/Specific/solinas64_2e158m15_4limbs/femulDisplay.v
deleted file mode 100644
index 38ed58985..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e158m15_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e158m15_4limbs/fesquare.c b/src/Specific/solinas64_2e158m15_4limbs/fesquare.c
deleted file mode 100644
index 7cce9e8d1..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0xf * (0x2 * ((uint128_t)x5 * x5))));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xf * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0xf * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x28);
- { uint64_t x12 = ((uint64_t)x10 & 0xffffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint64_t x14 = (uint64_t) (x13 >> 0x27);
- { uint64_t x15 = ((uint64_t)x13 & 0x7fffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x28);
- { uint64_t x18 = ((uint64_t)x16 & 0xffffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x27);
- { uint64_t x21 = ((uint64_t)x19 & 0x7fffffffff);
- { uint64_t x22 = (x12 + (0xf * x20));
- { uint64_t x23 = (x22 >> 0x28);
- { uint64_t x24 = (x22 & 0xffffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x27);
- { uint64_t x27 = (x25 & 0x7fffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e158m15_4limbs/fesquare.v b/src/Specific/solinas64_2e158m15_4limbs/fesquare.v
deleted file mode 100644
index b1647f64f..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e158m15_4limbs.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/solinas64_2e158m15_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e158m15_4limbs/fesquareDisplay.log
deleted file mode 100644
index feb176a80..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0xf * (0x2 * ((uint128_t)x5 * x5))));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xf * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0xf * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- uint64_t x11 = (uint64_t) (x10 >> 0x28);
- uint64_t x12 = ((uint64_t)x10 & 0xffffffffff);
- uint128_t x13 = (x11 + x9);
- uint64_t x14 = (uint64_t) (x13 >> 0x27);
- uint64_t x15 = ((uint64_t)x13 & 0x7fffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x28);
- uint64_t x18 = ((uint64_t)x16 & 0xffffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x27);
- uint64_t x21 = ((uint64_t)x19 & 0x7fffffffff);
- uint64_t x22 = (x12 + (0xf * x20));
- uint64_t x23 = (x22 >> 0x28);
- uint64_t x24 = (x22 & 0xffffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x27);
- uint64_t x27 = (x25 & 0x7fffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e158m15_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e158m15_4limbs/fesquareDisplay.v
deleted file mode 100644
index 18c1fa9b5..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e158m15_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e158m15_4limbs/fesub.c b/src/Specific/solinas64_2e158m15_4limbs/fesub.c
deleted file mode 100644
index e1a505bac..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x1ffffffffe2 + x5) - x11);
- out[1] = ((0xfffffffffe + x7) - x13);
- out[2] = ((0x1fffffffffe + x9) - x15);
- out[3] = ((0xfffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e158m15_4limbs/fesub.v b/src/Specific/solinas64_2e158m15_4limbs/fesub.v
deleted file mode 100644
index c50d336b1..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e158m15_4limbs.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/solinas64_2e158m15_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e158m15_4limbs/fesubDisplay.log
deleted file mode 100644
index 3c4c7efb2..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0xfffffffffe + x8) - x14), ((0x1fffffffffe + x9) - x15), ((0xfffffffffe + x7) - x13), ((0x1ffffffffe2 + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e158m15_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e158m15_4limbs/fesubDisplay.v
deleted file mode 100644
index 0a5ab6cb3..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e158m15_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e158m15_4limbs/freeze.c b/src/Specific/solinas64_2e158m15_4limbs/freeze.c
deleted file mode 100644
index b93e29773..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffff1);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x7fffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0xffffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x7fffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xfffffffff1);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0x7fffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0xffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x7fffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e158m15_4limbs/freeze.v b/src/Specific/solinas64_2e158m15_4limbs/freeze.v
deleted file mode 100644
index 6488850b8..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e158m15_4limbs.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/solinas64_2e158m15_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e158m15_4limbs/freezeDisplay.log
deleted file mode 100644
index 2c532f3eb..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffff1);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x7fffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0xffffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x7fffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xfffffffff1);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0x7fffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0xffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x7fffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e158m15_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e158m15_4limbs/freezeDisplay.v
deleted file mode 100644
index 85e1e3fdf..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e158m15_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e158m15_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e158m15_4limbs/py_interpreter.sh
deleted file mode 100755
index 62d315db0..000000000
--- a/src/Specific/solinas64_2e158m15_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**158 - 15' -Dmodulus_bytes='39.5' -Da24='121665'
diff --git a/src/Specific/solinas64_2e165m25_3limbs/CurveParameters.v b/src/Specific/solinas64_2e165m25_3limbs/CurveParameters.v
deleted file mode 100644
index bbdb16a2c..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^165 - 25
-Base: 55
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 55;
- bitwidth := 64;
- s := 2^165;
- c := [(1, 25)];
- carry_chains := Some [seq 0 (pred 3); [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/solinas64_2e165m25_3limbs/Synthesis.v b/src/Specific/solinas64_2e165m25_3limbs/Synthesis.v
deleted file mode 100644
index e079796f2..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e165m25_3limbs.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/solinas64_2e165m25_3limbs/compiler.sh b/src/Specific/solinas64_2e165m25_3limbs/compiler.sh
deleted file mode 100755
index 465a255fe..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/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,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,55}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<165) - 25' "$@"
diff --git a/src/Specific/solinas64_2e165m25_3limbs/compilerxx.sh b/src/Specific/solinas64_2e165m25_3limbs/compilerxx.sh
deleted file mode 100755
index c39d65161..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/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,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,55}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<165) - 25' "$@"
diff --git a/src/Specific/solinas64_2e165m25_3limbs/feadd.c b/src/Specific/solinas64_2e165m25_3limbs/feadd.c
deleted file mode 100644
index 725c1f205..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/feadd.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = (x5 + x9);
- out[1] = (x7 + x11);
- out[2] = (x6 + x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e165m25_3limbs/feadd.v b/src/Specific/solinas64_2e165m25_3limbs/feadd.v
deleted file mode 100644
index d5ef4cfca..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e165m25_3limbs.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/solinas64_2e165m25_3limbs/feaddDisplay.log b/src/Specific/solinas64_2e165m25_3limbs/feaddDisplay.log
deleted file mode 100644
index 64fb467ef..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- ((x6 + x10), (x7 + x11), (x5 + x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e165m25_3limbs/feaddDisplay.v b/src/Specific/solinas64_2e165m25_3limbs/feaddDisplay.v
deleted file mode 100644
index ffe7f597e..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e165m25_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e165m25_3limbs/fecarry.v b/src/Specific/solinas64_2e165m25_3limbs/fecarry.v
deleted file mode 100644
index 460a93c33..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e165m25_3limbs.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/solinas64_2e165m25_3limbs/fecarryDisplay.v b/src/Specific/solinas64_2e165m25_3limbs/fecarryDisplay.v
deleted file mode 100644
index 556a3d4f5..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e165m25_3limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e165m25_3limbs/femul.c b/src/Specific/solinas64_2e165m25_3limbs/femul.c
deleted file mode 100644
index 79b5c48a0..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/femul.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint128_t x12 = (((uint128_t)x5 * x10) + (((uint128_t)x7 * x11) + ((uint128_t)x6 * x9)));
- { uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0x19 * ((uint128_t)x6 * x10)));
- { uint128_t x14 = (((uint128_t)x5 * x9) + (0x19 * (((uint128_t)x7 * x10) + ((uint128_t)x6 * x11))));
- { uint128_t x15 = (x14 >> 0x37);
- { uint64_t x16 = ((uint64_t)x14 & 0x7fffffffffffff);
- { uint128_t x17 = (x15 + x13);
- { uint64_t x18 = (uint64_t) (x17 >> 0x37);
- { uint64_t x19 = ((uint64_t)x17 & 0x7fffffffffffff);
- { uint128_t x20 = (x18 + x12);
- { uint64_t x21 = (uint64_t) (x20 >> 0x37);
- { uint64_t x22 = ((uint64_t)x20 & 0x7fffffffffffff);
- { uint128_t x23 = (x16 + ((uint128_t)0x19 * x21));
- { uint64_t x24 = (uint64_t) (x23 >> 0x37);
- { uint64_t x25 = ((uint64_t)x23 & 0x7fffffffffffff);
- { uint64_t x26 = (x24 + x19);
- { uint64_t x27 = (x26 >> 0x37);
- { uint64_t x28 = (x26 & 0x7fffffffffffff);
- out[0] = x25;
- out[1] = x28;
- out[2] = (x27 + x22);
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e165m25_3limbs/femul.v b/src/Specific/solinas64_2e165m25_3limbs/femul.v
deleted file mode 100644
index dfd305ef6..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e165m25_3limbs.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/solinas64_2e165m25_3limbs/femulDisplay.log b/src/Specific/solinas64_2e165m25_3limbs/femulDisplay.log
deleted file mode 100644
index f31c56e57..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint128_t x12 = (((uint128_t)x5 * x10) + (((uint128_t)x7 * x11) + ((uint128_t)x6 * x9)));
- uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0x19 * ((uint128_t)x6 * x10)));
- uint128_t x14 = (((uint128_t)x5 * x9) + (0x19 * (((uint128_t)x7 * x10) + ((uint128_t)x6 * x11))));
- uint128_t x15 = (x14 >> 0x37);
- uint64_t x16 = ((uint64_t)x14 & 0x7fffffffffffff);
- uint128_t x17 = (x15 + x13);
- uint64_t x18 = (uint64_t) (x17 >> 0x37);
- uint64_t x19 = ((uint64_t)x17 & 0x7fffffffffffff);
- uint128_t x20 = (x18 + x12);
- uint64_t x21 = (uint64_t) (x20 >> 0x37);
- uint64_t x22 = ((uint64_t)x20 & 0x7fffffffffffff);
- uint128_t x23 = (x16 + ((uint128_t)0x19 * x21));
- uint64_t x24 = (uint64_t) (x23 >> 0x37);
- uint64_t x25 = ((uint64_t)x23 & 0x7fffffffffffff);
- uint64_t x26 = (x24 + x19);
- uint64_t x27 = (x26 >> 0x37);
- uint64_t x28 = (x26 & 0x7fffffffffffff);
- return ((x27 + x22), Return x28, Return x25))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e165m25_3limbs/femulDisplay.v b/src/Specific/solinas64_2e165m25_3limbs/femulDisplay.v
deleted file mode 100644
index 1df6d0e7d..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e165m25_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e165m25_3limbs/fesquare.c b/src/Specific/solinas64_2e165m25_3limbs/fesquare.c
deleted file mode 100644
index 4920e64b1..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/fesquare.c
+++ /dev/null
@@ -1,26 +0,0 @@
-static void fesquare(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x5 = (((uint128_t)x2 * x3) + (((uint128_t)x4 * x4) + ((uint128_t)x3 * x2)));
- { uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x19 * ((uint128_t)x3 * x3)));
- { uint128_t x7 = (((uint128_t)x2 * x2) + (0x19 * (((uint128_t)x4 * x3) + ((uint128_t)x3 * x4))));
- { uint128_t x8 = (x7 >> 0x37);
- { uint64_t x9 = ((uint64_t)x7 & 0x7fffffffffffff);
- { uint128_t x10 = (x8 + x6);
- { uint64_t x11 = (uint64_t) (x10 >> 0x37);
- { uint64_t x12 = ((uint64_t)x10 & 0x7fffffffffffff);
- { uint128_t x13 = (x11 + x5);
- { uint64_t x14 = (uint64_t) (x13 >> 0x37);
- { uint64_t x15 = ((uint64_t)x13 & 0x7fffffffffffff);
- { uint128_t x16 = (x9 + ((uint128_t)0x19 * x14));
- { uint64_t x17 = (uint64_t) (x16 >> 0x37);
- { uint64_t x18 = ((uint64_t)x16 & 0x7fffffffffffff);
- { uint64_t x19 = (x17 + x12);
- { uint64_t x20 = (x19 >> 0x37);
- { uint64_t x21 = (x19 & 0x7fffffffffffff);
- out[0] = x18;
- out[1] = x21;
- out[2] = (x20 + x15);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e165m25_3limbs/fesquare.v b/src/Specific/solinas64_2e165m25_3limbs/fesquare.v
deleted file mode 100644
index d3ad7698a..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e165m25_3limbs.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/solinas64_2e165m25_3limbs/fesquareDisplay.log b/src/Specific/solinas64_2e165m25_3limbs/fesquareDisplay.log
deleted file mode 100644
index 665752d95..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint128_t x5 = (((uint128_t)x2 * x3) + (((uint128_t)x4 * x4) + ((uint128_t)x3 * x2)));
- uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x19 * ((uint128_t)x3 * x3)));
- uint128_t x7 = (((uint128_t)x2 * x2) + (0x19 * (((uint128_t)x4 * x3) + ((uint128_t)x3 * x4))));
- uint128_t x8 = (x7 >> 0x37);
- uint64_t x9 = ((uint64_t)x7 & 0x7fffffffffffff);
- uint128_t x10 = (x8 + x6);
- uint64_t x11 = (uint64_t) (x10 >> 0x37);
- uint64_t x12 = ((uint64_t)x10 & 0x7fffffffffffff);
- uint128_t x13 = (x11 + x5);
- uint64_t x14 = (uint64_t) (x13 >> 0x37);
- uint64_t x15 = ((uint64_t)x13 & 0x7fffffffffffff);
- uint128_t x16 = (x9 + ((uint128_t)0x19 * x14));
- uint64_t x17 = (uint64_t) (x16 >> 0x37);
- uint64_t x18 = ((uint64_t)x16 & 0x7fffffffffffff);
- uint64_t x19 = (x17 + x12);
- uint64_t x20 = (x19 >> 0x37);
- uint64_t x21 = (x19 & 0x7fffffffffffff);
- return ((x20 + x15), Return x21, Return x18))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e165m25_3limbs/fesquareDisplay.v b/src/Specific/solinas64_2e165m25_3limbs/fesquareDisplay.v
deleted file mode 100644
index 3a6d84e39..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e165m25_3limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e165m25_3limbs/fesub.c b/src/Specific/solinas64_2e165m25_3limbs/fesub.c
deleted file mode 100644
index dda19b667..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/fesub.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = ((0xffffffffffffce + x5) - x9);
- out[1] = ((0xfffffffffffffe + x7) - x11);
- out[2] = ((0xfffffffffffffe + x6) - x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e165m25_3limbs/fesub.v b/src/Specific/solinas64_2e165m25_3limbs/fesub.v
deleted file mode 100644
index e6697de6c..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e165m25_3limbs.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/solinas64_2e165m25_3limbs/fesubDisplay.log b/src/Specific/solinas64_2e165m25_3limbs/fesubDisplay.log
deleted file mode 100644
index 8e2ee812b..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- (((0xfffffffffffffe + x6) - x10), ((0xfffffffffffffe + x7) - x11), ((0xffffffffffffce + x5) - x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e165m25_3limbs/fesubDisplay.v b/src/Specific/solinas64_2e165m25_3limbs/fesubDisplay.v
deleted file mode 100644
index a21b3b919..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e165m25_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e165m25_3limbs/freeze.c b/src/Specific/solinas64_2e165m25_3limbs/freeze.c
deleted file mode 100644
index 6cdc223df..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/freeze.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void freeze(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffffe7);
- { uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x7fffffffffffff);
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x7fffffffffffff);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0x7fffffffffffe7);
- { uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- { uint64_t x19 = (x14 & 0x7fffffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- { uint64_t x23 = (x14 & 0x7fffffffffffff);
- { uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e165m25_3limbs/freeze.v b/src/Specific/solinas64_2e165m25_3limbs/freeze.v
deleted file mode 100644
index abea32921..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e165m25_3limbs.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/solinas64_2e165m25_3limbs/freezeDisplay.log b/src/Specific/solinas64_2e165m25_3limbs/freezeDisplay.log
deleted file mode 100644
index f056ae1bd..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/freezeDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffffe7);
- uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x7fffffffffffff);
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x7fffffffffffff);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0x7fffffffffffe7);
- uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- uint64_t x19 = (x14 & 0x7fffffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- uint64_t x23 = (x14 & 0x7fffffffffffff);
- uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e165m25_3limbs/freezeDisplay.v b/src/Specific/solinas64_2e165m25_3limbs/freezeDisplay.v
deleted file mode 100644
index 5b31a0184..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e165m25_3limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e165m25_3limbs/py_interpreter.sh b/src/Specific/solinas64_2e165m25_3limbs/py_interpreter.sh
deleted file mode 100755
index 49af9f37e..000000000
--- a/src/Specific/solinas64_2e165m25_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**165 - 25' -Dmodulus_bytes='55' -Da24='121665'
diff --git a/src/Specific/solinas64_2e165m25_4limbs/CurveParameters.v b/src/Specific/solinas64_2e165m25_4limbs/CurveParameters.v
deleted file mode 100644
index a512437c1..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^165 - 25
-Base: 41.25
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 41 + 1/4;
- bitwidth := 64;
- s := 2^165;
- c := [(1, 25)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e165m25_4limbs/Synthesis.v b/src/Specific/solinas64_2e165m25_4limbs/Synthesis.v
deleted file mode 100644
index 1b9b73f6b..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e165m25_4limbs.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/solinas64_2e165m25_4limbs/compiler.sh b/src/Specific/solinas64_2e165m25_4limbs/compiler.sh
deleted file mode 100755
index 7ee7be922..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/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,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{42,41,41,41}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<165) - 25' "$@"
diff --git a/src/Specific/solinas64_2e165m25_4limbs/compilerxx.sh b/src/Specific/solinas64_2e165m25_4limbs/compilerxx.sh
deleted file mode 100755
index 4425d45ac..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/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,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{42,41,41,41}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<165) - 25' "$@"
diff --git a/src/Specific/solinas64_2e165m25_4limbs/feadd.c b/src/Specific/solinas64_2e165m25_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e165m25_4limbs/feadd.v b/src/Specific/solinas64_2e165m25_4limbs/feadd.v
deleted file mode 100644
index 7f8a1e110..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e165m25_4limbs.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/solinas64_2e165m25_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e165m25_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e165m25_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e165m25_4limbs/feaddDisplay.v
deleted file mode 100644
index f16e5b646..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e165m25_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e165m25_4limbs/fecarry.v b/src/Specific/solinas64_2e165m25_4limbs/fecarry.v
deleted file mode 100644
index c1570c937..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e165m25_4limbs.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/solinas64_2e165m25_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e165m25_4limbs/fecarryDisplay.v
deleted file mode 100644
index 856cfce33..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e165m25_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e165m25_4limbs/femul.c b/src/Specific/solinas64_2e165m25_4limbs/femul.c
deleted file mode 100644
index eb46e62e4..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + ((0x2 * ((uint128_t)x7 * x15)) + ((0x2 * ((uint128_t)x9 * x13)) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x19 * ((uint128_t)x8 * x14)));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x19 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0x19 * ((0x2 * ((uint128_t)x7 * x14)) + ((0x2 * ((uint128_t)x9 * x15)) + (0x2 * ((uint128_t)x8 * x13))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x2a);
- { uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x29);
- { uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x29);
- { uint64_t x27 = ((uint64_t)x25 & 0x1ffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x29);
- { uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffff);
- { uint64_t x31 = (x21 + (0x19 * x29));
- { uint64_t x32 = (x31 >> 0x2a);
- { uint64_t x33 = (x31 & 0x3ffffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x29);
- { uint64_t x36 = (x34 & 0x1ffffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e165m25_4limbs/femul.v b/src/Specific/solinas64_2e165m25_4limbs/femul.v
deleted file mode 100644
index 9f468f53c..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e165m25_4limbs.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/solinas64_2e165m25_4limbs/femulDisplay.log b/src/Specific/solinas64_2e165m25_4limbs/femulDisplay.log
deleted file mode 100644
index e650d5665..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + ((0x2 * ((uint128_t)x7 * x15)) + ((0x2 * ((uint128_t)x9 * x13)) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x19 * ((uint128_t)x8 * x14)));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x19 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0x19 * ((0x2 * ((uint128_t)x7 * x14)) + ((0x2 * ((uint128_t)x9 * x15)) + (0x2 * ((uint128_t)x8 * x13))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x2a);
- uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x29);
- uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x29);
- uint64_t x27 = ((uint64_t)x25 & 0x1ffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x29);
- uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffff);
- uint64_t x31 = (x21 + (0x19 * x29));
- uint64_t x32 = (x31 >> 0x2a);
- uint64_t x33 = (x31 & 0x3ffffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x29);
- uint64_t x36 = (x34 & 0x1ffffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e165m25_4limbs/femulDisplay.v b/src/Specific/solinas64_2e165m25_4limbs/femulDisplay.v
deleted file mode 100644
index 8628f24bd..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e165m25_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e165m25_4limbs/fesquare.c b/src/Specific/solinas64_2e165m25_4limbs/fesquare.c
deleted file mode 100644
index 3dedc6a45..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x19 * ((uint128_t)x5 * x5)));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x19 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0x19 * ((0x2 * ((uint128_t)x4 * x5)) + ((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x5 * x4))))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x2a);
- { uint64_t x12 = ((uint64_t)x10 & 0x3ffffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint64_t x14 = (uint64_t) (x13 >> 0x29);
- { uint64_t x15 = ((uint64_t)x13 & 0x1ffffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x29);
- { uint64_t x18 = ((uint64_t)x16 & 0x1ffffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x29);
- { uint64_t x21 = ((uint64_t)x19 & 0x1ffffffffff);
- { uint64_t x22 = (x12 + (0x19 * x20));
- { uint64_t x23 = (x22 >> 0x2a);
- { uint64_t x24 = (x22 & 0x3ffffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x29);
- { uint64_t x27 = (x25 & 0x1ffffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e165m25_4limbs/fesquare.v b/src/Specific/solinas64_2e165m25_4limbs/fesquare.v
deleted file mode 100644
index 0311bb93a..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e165m25_4limbs.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/solinas64_2e165m25_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e165m25_4limbs/fesquareDisplay.log
deleted file mode 100644
index e7b39f416..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x19 * ((uint128_t)x5 * x5)));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x19 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0x19 * ((0x2 * ((uint128_t)x4 * x5)) + ((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x5 * x4))))));
- uint64_t x11 = (uint64_t) (x10 >> 0x2a);
- uint64_t x12 = ((uint64_t)x10 & 0x3ffffffffff);
- uint128_t x13 = (x11 + x9);
- uint64_t x14 = (uint64_t) (x13 >> 0x29);
- uint64_t x15 = ((uint64_t)x13 & 0x1ffffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x29);
- uint64_t x18 = ((uint64_t)x16 & 0x1ffffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x29);
- uint64_t x21 = ((uint64_t)x19 & 0x1ffffffffff);
- uint64_t x22 = (x12 + (0x19 * x20));
- uint64_t x23 = (x22 >> 0x2a);
- uint64_t x24 = (x22 & 0x3ffffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x29);
- uint64_t x27 = (x25 & 0x1ffffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e165m25_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e165m25_4limbs/fesquareDisplay.v
deleted file mode 100644
index 190f67f03..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e165m25_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e165m25_4limbs/fesub.c b/src/Specific/solinas64_2e165m25_4limbs/fesub.c
deleted file mode 100644
index 5f0e809c0..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x7ffffffffce + x5) - x11);
- out[1] = ((0x3fffffffffe + x7) - x13);
- out[2] = ((0x3fffffffffe + x9) - x15);
- out[3] = ((0x3fffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e165m25_4limbs/fesub.v b/src/Specific/solinas64_2e165m25_4limbs/fesub.v
deleted file mode 100644
index f61b0b2ee..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e165m25_4limbs.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/solinas64_2e165m25_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e165m25_4limbs/fesubDisplay.log
deleted file mode 100644
index e29d33fc2..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0x3fffffffffe + x8) - x14), ((0x3fffffffffe + x9) - x15), ((0x3fffffffffe + x7) - x13), ((0x7ffffffffce + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e165m25_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e165m25_4limbs/fesubDisplay.v
deleted file mode 100644
index 8363410c9..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e165m25_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e165m25_4limbs/freeze.c b/src/Specific/solinas64_2e165m25_4limbs/freeze.c
deleted file mode 100644
index 62d62321c..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffe7);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x1ffffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x1ffffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x1ffffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0x3ffffffffe7);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0x1ffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0x1ffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x1ffffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e165m25_4limbs/freeze.v b/src/Specific/solinas64_2e165m25_4limbs/freeze.v
deleted file mode 100644
index 0442a65f9..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e165m25_4limbs.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/solinas64_2e165m25_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e165m25_4limbs/freezeDisplay.log
deleted file mode 100644
index f8d33f9a0..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffe7);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x1ffffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x1ffffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x1ffffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0x3ffffffffe7);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0x1ffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0x1ffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x1ffffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e165m25_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e165m25_4limbs/freezeDisplay.v
deleted file mode 100644
index be3a2ef3d..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e165m25_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e165m25_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e165m25_4limbs/py_interpreter.sh
deleted file mode 100755
index c87dc1fb1..000000000
--- a/src/Specific/solinas64_2e165m25_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**165 - 25' -Dmodulus_bytes='41.25' -Da24='121665'
diff --git a/src/Specific/solinas64_2e166m5_3limbs/CurveParameters.v b/src/Specific/solinas64_2e166m5_3limbs/CurveParameters.v
deleted file mode 100644
index ef48bf342..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^166 - 5
-Base: 55 + 1/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 55 + 1/3;
- bitwidth := 64;
- s := 2^166;
- c := [(1, 5)];
- carry_chains := Some [seq 0 (pred 3); [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/solinas64_2e166m5_3limbs/Synthesis.v b/src/Specific/solinas64_2e166m5_3limbs/Synthesis.v
deleted file mode 100644
index d968fb316..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e166m5_3limbs.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/solinas64_2e166m5_3limbs/compiler.sh b/src/Specific/solinas64_2e166m5_3limbs/compiler.sh
deleted file mode 100755
index 75423dd75..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/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,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,55,55}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<166) - 5' "$@"
diff --git a/src/Specific/solinas64_2e166m5_3limbs/compilerxx.sh b/src/Specific/solinas64_2e166m5_3limbs/compilerxx.sh
deleted file mode 100755
index 52f7d2605..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/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,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,55,55}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<166) - 5' "$@"
diff --git a/src/Specific/solinas64_2e166m5_3limbs/feadd.c b/src/Specific/solinas64_2e166m5_3limbs/feadd.c
deleted file mode 100644
index 725c1f205..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/feadd.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = (x5 + x9);
- out[1] = (x7 + x11);
- out[2] = (x6 + x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e166m5_3limbs/feadd.v b/src/Specific/solinas64_2e166m5_3limbs/feadd.v
deleted file mode 100644
index b10115342..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e166m5_3limbs.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/solinas64_2e166m5_3limbs/feaddDisplay.log b/src/Specific/solinas64_2e166m5_3limbs/feaddDisplay.log
deleted file mode 100644
index 64fb467ef..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- ((x6 + x10), (x7 + x11), (x5 + x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e166m5_3limbs/feaddDisplay.v b/src/Specific/solinas64_2e166m5_3limbs/feaddDisplay.v
deleted file mode 100644
index 49248c3c5..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e166m5_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e166m5_3limbs/fecarry.v b/src/Specific/solinas64_2e166m5_3limbs/fecarry.v
deleted file mode 100644
index dac3235f9..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e166m5_3limbs.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/solinas64_2e166m5_3limbs/fecarryDisplay.v b/src/Specific/solinas64_2e166m5_3limbs/fecarryDisplay.v
deleted file mode 100644
index 90f605e68..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e166m5_3limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e166m5_3limbs/femul.c b/src/Specific/solinas64_2e166m5_3limbs/femul.c
deleted file mode 100644
index dc6d5fea4..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/femul.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint128_t x12 = (((uint128_t)x5 * x10) + ((0x2 * ((uint128_t)x7 * x11)) + ((uint128_t)x6 * x9)));
- { uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0x5 * ((uint128_t)x6 * x10)));
- { uint128_t x14 = (((uint128_t)x5 * x9) + (0x5 * ((0x2 * ((uint128_t)x7 * x10)) + (0x2 * ((uint128_t)x6 * x11)))));
- { uint64_t x15 = (uint64_t) (x14 >> 0x38);
- { uint64_t x16 = ((uint64_t)x14 & 0xffffffffffffff);
- { uint128_t x17 = (x15 + x13);
- { uint64_t x18 = (uint64_t) (x17 >> 0x37);
- { uint64_t x19 = ((uint64_t)x17 & 0x7fffffffffffff);
- { uint128_t x20 = (x18 + x12);
- { uint64_t x21 = (uint64_t) (x20 >> 0x37);
- { uint64_t x22 = ((uint64_t)x20 & 0x7fffffffffffff);
- { uint64_t x23 = (x16 + (0x5 * x21));
- { uint64_t x24 = (x23 >> 0x38);
- { uint64_t x25 = (x23 & 0xffffffffffffff);
- { uint64_t x26 = (x24 + x19);
- { uint64_t x27 = (x26 >> 0x37);
- { uint64_t x28 = (x26 & 0x7fffffffffffff);
- out[0] = x25;
- out[1] = x28;
- out[2] = (x27 + x22);
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e166m5_3limbs/femul.v b/src/Specific/solinas64_2e166m5_3limbs/femul.v
deleted file mode 100644
index a8a4bb6b7..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e166m5_3limbs.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/solinas64_2e166m5_3limbs/femulDisplay.log b/src/Specific/solinas64_2e166m5_3limbs/femulDisplay.log
deleted file mode 100644
index 9c9995571..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint128_t x12 = (((uint128_t)x5 * x10) + ((0x2 * ((uint128_t)x7 * x11)) + ((uint128_t)x6 * x9)));
- uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0x5 * ((uint128_t)x6 * x10)));
- uint128_t x14 = (((uint128_t)x5 * x9) + (0x5 * ((0x2 * ((uint128_t)x7 * x10)) + (0x2 * ((uint128_t)x6 * x11)))));
- uint64_t x15 = (uint64_t) (x14 >> 0x38);
- uint64_t x16 = ((uint64_t)x14 & 0xffffffffffffff);
- uint128_t x17 = (x15 + x13);
- uint64_t x18 = (uint64_t) (x17 >> 0x37);
- uint64_t x19 = ((uint64_t)x17 & 0x7fffffffffffff);
- uint128_t x20 = (x18 + x12);
- uint64_t x21 = (uint64_t) (x20 >> 0x37);
- uint64_t x22 = ((uint64_t)x20 & 0x7fffffffffffff);
- uint64_t x23 = (x16 + (0x5 * x21));
- uint64_t x24 = (x23 >> 0x38);
- uint64_t x25 = (x23 & 0xffffffffffffff);
- uint64_t x26 = (x24 + x19);
- uint64_t x27 = (x26 >> 0x37);
- uint64_t x28 = (x26 & 0x7fffffffffffff);
- return ((x27 + x22), Return x28, Return x25))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e166m5_3limbs/femulDisplay.v b/src/Specific/solinas64_2e166m5_3limbs/femulDisplay.v
deleted file mode 100644
index b61272cfc..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e166m5_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e166m5_3limbs/fesquare.c b/src/Specific/solinas64_2e166m5_3limbs/fesquare.c
deleted file mode 100644
index ba2f12c7e..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/fesquare.c
+++ /dev/null
@@ -1,26 +0,0 @@
-static void fesquare(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x5 = (((uint128_t)x2 * x3) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x3 * x2)));
- { uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x5 * ((uint128_t)x3 * x3)));
- { uint128_t x7 = (((uint128_t)x2 * x2) + (0x5 * ((0x2 * ((uint128_t)x4 * x3)) + (0x2 * ((uint128_t)x3 * x4)))));
- { uint64_t x8 = (uint64_t) (x7 >> 0x38);
- { uint64_t x9 = ((uint64_t)x7 & 0xffffffffffffff);
- { uint128_t x10 = (x8 + x6);
- { uint64_t x11 = (uint64_t) (x10 >> 0x37);
- { uint64_t x12 = ((uint64_t)x10 & 0x7fffffffffffff);
- { uint128_t x13 = (x11 + x5);
- { uint64_t x14 = (uint64_t) (x13 >> 0x37);
- { uint64_t x15 = ((uint64_t)x13 & 0x7fffffffffffff);
- { uint64_t x16 = (x9 + (0x5 * x14));
- { uint64_t x17 = (x16 >> 0x38);
- { uint64_t x18 = (x16 & 0xffffffffffffff);
- { uint64_t x19 = (x17 + x12);
- { uint64_t x20 = (x19 >> 0x37);
- { uint64_t x21 = (x19 & 0x7fffffffffffff);
- out[0] = x18;
- out[1] = x21;
- out[2] = (x20 + x15);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e166m5_3limbs/fesquare.v b/src/Specific/solinas64_2e166m5_3limbs/fesquare.v
deleted file mode 100644
index 7fad865e2..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e166m5_3limbs.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/solinas64_2e166m5_3limbs/fesquareDisplay.log b/src/Specific/solinas64_2e166m5_3limbs/fesquareDisplay.log
deleted file mode 100644
index 6166583b5..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint128_t x5 = (((uint128_t)x2 * x3) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x3 * x2)));
- uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x5 * ((uint128_t)x3 * x3)));
- uint128_t x7 = (((uint128_t)x2 * x2) + (0x5 * ((0x2 * ((uint128_t)x4 * x3)) + (0x2 * ((uint128_t)x3 * x4)))));
- uint64_t x8 = (uint64_t) (x7 >> 0x38);
- uint64_t x9 = ((uint64_t)x7 & 0xffffffffffffff);
- uint128_t x10 = (x8 + x6);
- uint64_t x11 = (uint64_t) (x10 >> 0x37);
- uint64_t x12 = ((uint64_t)x10 & 0x7fffffffffffff);
- uint128_t x13 = (x11 + x5);
- uint64_t x14 = (uint64_t) (x13 >> 0x37);
- uint64_t x15 = ((uint64_t)x13 & 0x7fffffffffffff);
- uint64_t x16 = (x9 + (0x5 * x14));
- uint64_t x17 = (x16 >> 0x38);
- uint64_t x18 = (x16 & 0xffffffffffffff);
- uint64_t x19 = (x17 + x12);
- uint64_t x20 = (x19 >> 0x37);
- uint64_t x21 = (x19 & 0x7fffffffffffff);
- return ((x20 + x15), Return x21, Return x18))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e166m5_3limbs/fesquareDisplay.v b/src/Specific/solinas64_2e166m5_3limbs/fesquareDisplay.v
deleted file mode 100644
index 3d6f4b272..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e166m5_3limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e166m5_3limbs/fesub.c b/src/Specific/solinas64_2e166m5_3limbs/fesub.c
deleted file mode 100644
index f915e3d1a..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/fesub.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = ((0x1fffffffffffff6 + x5) - x9);
- out[1] = ((0xfffffffffffffe + x7) - x11);
- out[2] = ((0xfffffffffffffe + x6) - x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e166m5_3limbs/fesub.v b/src/Specific/solinas64_2e166m5_3limbs/fesub.v
deleted file mode 100644
index 9cd6f4045..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e166m5_3limbs.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/solinas64_2e166m5_3limbs/fesubDisplay.log b/src/Specific/solinas64_2e166m5_3limbs/fesubDisplay.log
deleted file mode 100644
index 3b42dfd84..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- (((0xfffffffffffffe + x6) - x10), ((0xfffffffffffffe + x7) - x11), ((0x1fffffffffffff6 + x5) - x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e166m5_3limbs/fesubDisplay.v b/src/Specific/solinas64_2e166m5_3limbs/fesubDisplay.v
deleted file mode 100644
index a6548ff36..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e166m5_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e166m5_3limbs/freeze.c b/src/Specific/solinas64_2e166m5_3limbs/freeze.c
deleted file mode 100644
index 039a7e77a..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/freeze.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void freeze(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffffffb);
- { uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x7fffffffffffff);
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x7fffffffffffff);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0xfffffffffffffb);
- { uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- { uint64_t x19 = (x14 & 0x7fffffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- { uint64_t x23 = (x14 & 0x7fffffffffffff);
- { uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e166m5_3limbs/freeze.v b/src/Specific/solinas64_2e166m5_3limbs/freeze.v
deleted file mode 100644
index 9c1ded2d4..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e166m5_3limbs.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/solinas64_2e166m5_3limbs/freezeDisplay.log b/src/Specific/solinas64_2e166m5_3limbs/freezeDisplay.log
deleted file mode 100644
index 49424f528..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/freezeDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffffffb);
- uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x7fffffffffffff);
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x7fffffffffffff);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0xfffffffffffffb);
- uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- uint64_t x19 = (x14 & 0x7fffffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- uint64_t x23 = (x14 & 0x7fffffffffffff);
- uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e166m5_3limbs/freezeDisplay.v b/src/Specific/solinas64_2e166m5_3limbs/freezeDisplay.v
deleted file mode 100644
index bfa6ca732..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e166m5_3limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e166m5_3limbs/py_interpreter.sh b/src/Specific/solinas64_2e166m5_3limbs/py_interpreter.sh
deleted file mode 100755
index 67e44b9bc..000000000
--- a/src/Specific/solinas64_2e166m5_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**166 - 5' -Dmodulus_bytes='55 + 1/3' -Da24='121665'
diff --git a/src/Specific/solinas64_2e166m5_4limbs/CurveParameters.v b/src/Specific/solinas64_2e166m5_4limbs/CurveParameters.v
deleted file mode 100644
index b2b8749d7..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^166 - 5
-Base: 41.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 41 + 1/2;
- bitwidth := 64;
- s := 2^166;
- c := [(1, 5)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e166m5_4limbs/Synthesis.v b/src/Specific/solinas64_2e166m5_4limbs/Synthesis.v
deleted file mode 100644
index c20690c14..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e166m5_4limbs.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/solinas64_2e166m5_4limbs/compiler.sh b/src/Specific/solinas64_2e166m5_4limbs/compiler.sh
deleted file mode 100755
index db2410645..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/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,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{42,41,42,41}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<166) - 5' "$@"
diff --git a/src/Specific/solinas64_2e166m5_4limbs/compilerxx.sh b/src/Specific/solinas64_2e166m5_4limbs/compilerxx.sh
deleted file mode 100755
index 9b2e66138..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/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,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{42,41,42,41}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='21' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<166) - 5' "$@"
diff --git a/src/Specific/solinas64_2e166m5_4limbs/feadd.c b/src/Specific/solinas64_2e166m5_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e166m5_4limbs/feadd.v b/src/Specific/solinas64_2e166m5_4limbs/feadd.v
deleted file mode 100644
index 4ee96ba1c..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e166m5_4limbs.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/solinas64_2e166m5_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e166m5_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e166m5_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e166m5_4limbs/feaddDisplay.v
deleted file mode 100644
index 4b1e53dea..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e166m5_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e166m5_4limbs/fecarry.v b/src/Specific/solinas64_2e166m5_4limbs/fecarry.v
deleted file mode 100644
index 0d1436e82..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e166m5_4limbs.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/solinas64_2e166m5_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e166m5_4limbs/fecarryDisplay.v
deleted file mode 100644
index 4586eab8b..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e166m5_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e166m5_4limbs/femul.c b/src/Specific/solinas64_2e166m5_4limbs/femul.c
deleted file mode 100644
index e67a4208e..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x5 * (0x2 * ((uint128_t)x8 * x14))));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x5 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0x5 * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x2a);
- { uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x29);
- { uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x2a);
- { uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x29);
- { uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffff);
- { uint64_t x31 = (x21 + (0x5 * x29));
- { uint64_t x32 = (x31 >> 0x2a);
- { uint64_t x33 = (x31 & 0x3ffffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x29);
- { uint64_t x36 = (x34 & 0x1ffffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e166m5_4limbs/femul.v b/src/Specific/solinas64_2e166m5_4limbs/femul.v
deleted file mode 100644
index 3c08c48a4..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e166m5_4limbs.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/solinas64_2e166m5_4limbs/femulDisplay.log b/src/Specific/solinas64_2e166m5_4limbs/femulDisplay.log
deleted file mode 100644
index 72130bf4c..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x5 * (0x2 * ((uint128_t)x8 * x14))));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x5 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0x5 * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x2a);
- uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x29);
- uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x2a);
- uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x29);
- uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffff);
- uint64_t x31 = (x21 + (0x5 * x29));
- uint64_t x32 = (x31 >> 0x2a);
- uint64_t x33 = (x31 & 0x3ffffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x29);
- uint64_t x36 = (x34 & 0x1ffffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e166m5_4limbs/femulDisplay.v b/src/Specific/solinas64_2e166m5_4limbs/femulDisplay.v
deleted file mode 100644
index 1a3ff99d8..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e166m5_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e166m5_4limbs/fesquare.c b/src/Specific/solinas64_2e166m5_4limbs/fesquare.c
deleted file mode 100644
index b122963ff..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x5 * (0x2 * ((uint128_t)x5 * x5))));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x5 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0x5 * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x2a);
- { uint64_t x12 = ((uint64_t)x10 & 0x3ffffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint64_t x14 = (uint64_t) (x13 >> 0x29);
- { uint64_t x15 = ((uint64_t)x13 & 0x1ffffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x2a);
- { uint64_t x18 = ((uint64_t)x16 & 0x3ffffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x29);
- { uint64_t x21 = ((uint64_t)x19 & 0x1ffffffffff);
- { uint64_t x22 = (x12 + (0x5 * x20));
- { uint64_t x23 = (x22 >> 0x2a);
- { uint64_t x24 = (x22 & 0x3ffffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x29);
- { uint64_t x27 = (x25 & 0x1ffffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e166m5_4limbs/fesquare.v b/src/Specific/solinas64_2e166m5_4limbs/fesquare.v
deleted file mode 100644
index a321b15f3..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e166m5_4limbs.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/solinas64_2e166m5_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e166m5_4limbs/fesquareDisplay.log
deleted file mode 100644
index 812ab2270..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x5 * (0x2 * ((uint128_t)x5 * x5))));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x5 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0x5 * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- uint64_t x11 = (uint64_t) (x10 >> 0x2a);
- uint64_t x12 = ((uint64_t)x10 & 0x3ffffffffff);
- uint128_t x13 = (x11 + x9);
- uint64_t x14 = (uint64_t) (x13 >> 0x29);
- uint64_t x15 = ((uint64_t)x13 & 0x1ffffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x2a);
- uint64_t x18 = ((uint64_t)x16 & 0x3ffffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x29);
- uint64_t x21 = ((uint64_t)x19 & 0x1ffffffffff);
- uint64_t x22 = (x12 + (0x5 * x20));
- uint64_t x23 = (x22 >> 0x2a);
- uint64_t x24 = (x22 & 0x3ffffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x29);
- uint64_t x27 = (x25 & 0x1ffffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e166m5_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e166m5_4limbs/fesquareDisplay.v
deleted file mode 100644
index c24c2da9e..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e166m5_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e166m5_4limbs/fesub.c b/src/Specific/solinas64_2e166m5_4limbs/fesub.c
deleted file mode 100644
index 8031982a5..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x7fffffffff6 + x5) - x11);
- out[1] = ((0x3fffffffffe + x7) - x13);
- out[2] = ((0x7fffffffffe + x9) - x15);
- out[3] = ((0x3fffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e166m5_4limbs/fesub.v b/src/Specific/solinas64_2e166m5_4limbs/fesub.v
deleted file mode 100644
index 428c2c77c..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e166m5_4limbs.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/solinas64_2e166m5_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e166m5_4limbs/fesubDisplay.log
deleted file mode 100644
index 81b67f3d0..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0x3fffffffffe + x8) - x14), ((0x7fffffffffe + x9) - x15), ((0x3fffffffffe + x7) - x13), ((0x7fffffffff6 + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e166m5_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e166m5_4limbs/fesubDisplay.v
deleted file mode 100644
index c07a76bd9..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e166m5_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e166m5_4limbs/freeze.c b/src/Specific/solinas64_2e166m5_4limbs/freeze.c
deleted file mode 100644
index d977b09c8..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffffb);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x1ffffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x3ffffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x1ffffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0x3fffffffffb);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0x1ffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0x3ffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x1ffffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e166m5_4limbs/freeze.v b/src/Specific/solinas64_2e166m5_4limbs/freeze.v
deleted file mode 100644
index bc5a899a8..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e166m5_4limbs.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/solinas64_2e166m5_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e166m5_4limbs/freezeDisplay.log
deleted file mode 100644
index 4bd7ef98e..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffffb);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x1ffffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x3ffffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x1ffffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0x3fffffffffb);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0x1ffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0x3ffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x1ffffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e166m5_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e166m5_4limbs/freezeDisplay.v
deleted file mode 100644
index 902335747..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e166m5_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e166m5_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e166m5_4limbs/py_interpreter.sh
deleted file mode 100755
index b58c5d35e..000000000
--- a/src/Specific/solinas64_2e166m5_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**166 - 5' -Dmodulus_bytes='41.5' -Da24='121665'
diff --git a/src/Specific/solinas64_2e171m19_3limbs/CurveParameters.v b/src/Specific/solinas64_2e171m19_3limbs/CurveParameters.v
deleted file mode 100644
index ff1df7e1c..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^171 - 19
-Base: 57
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 57;
- bitwidth := 64;
- s := 2^171;
- c := [(1, 19)];
- carry_chains := Some [seq 0 (pred 3); [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/solinas64_2e171m19_3limbs/Synthesis.v b/src/Specific/solinas64_2e171m19_3limbs/Synthesis.v
deleted file mode 100644
index b2174da68..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e171m19_3limbs.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/solinas64_2e171m19_3limbs/compiler.sh b/src/Specific/solinas64_2e171m19_3limbs/compiler.sh
deleted file mode 100755
index 4c44739d8..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{57,57,57}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<171) - 19' "$@"
diff --git a/src/Specific/solinas64_2e171m19_3limbs/compilerxx.sh b/src/Specific/solinas64_2e171m19_3limbs/compilerxx.sh
deleted file mode 100755
index 8588dfba0..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{57,57,57}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<171) - 19' "$@"
diff --git a/src/Specific/solinas64_2e171m19_3limbs/feadd.c b/src/Specific/solinas64_2e171m19_3limbs/feadd.c
deleted file mode 100644
index 725c1f205..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/feadd.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = (x5 + x9);
- out[1] = (x7 + x11);
- out[2] = (x6 + x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e171m19_3limbs/feadd.v b/src/Specific/solinas64_2e171m19_3limbs/feadd.v
deleted file mode 100644
index 797dcf901..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e171m19_3limbs.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/solinas64_2e171m19_3limbs/feaddDisplay.log b/src/Specific/solinas64_2e171m19_3limbs/feaddDisplay.log
deleted file mode 100644
index 64fb467ef..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- ((x6 + x10), (x7 + x11), (x5 + x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e171m19_3limbs/feaddDisplay.v b/src/Specific/solinas64_2e171m19_3limbs/feaddDisplay.v
deleted file mode 100644
index d330cdae5..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e171m19_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e171m19_3limbs/fecarry.v b/src/Specific/solinas64_2e171m19_3limbs/fecarry.v
deleted file mode 100644
index 84c21ab90..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e171m19_3limbs.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/solinas64_2e171m19_3limbs/fecarryDisplay.v b/src/Specific/solinas64_2e171m19_3limbs/fecarryDisplay.v
deleted file mode 100644
index 0844615a0..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e171m19_3limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e171m19_3limbs/femul.c b/src/Specific/solinas64_2e171m19_3limbs/femul.c
deleted file mode 100644
index fef824bff..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/femul.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint128_t x12 = (((uint128_t)x5 * x10) + (((uint128_t)x7 * x11) + ((uint128_t)x6 * x9)));
- { uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0x13 * ((uint128_t)x6 * x10)));
- { uint128_t x14 = (((uint128_t)x5 * x9) + (0x13 * (((uint128_t)x7 * x10) + ((uint128_t)x6 * x11))));
- { uint128_t x15 = (x14 >> 0x39);
- { uint64_t x16 = ((uint64_t)x14 & 0x1ffffffffffffff);
- { uint128_t x17 = (x15 + x13);
- { uint128_t x18 = (x17 >> 0x39);
- { uint64_t x19 = ((uint64_t)x17 & 0x1ffffffffffffff);
- { uint128_t x20 = (x18 + x12);
- { uint64_t x21 = (uint64_t) (x20 >> 0x39);
- { uint64_t x22 = ((uint64_t)x20 & 0x1ffffffffffffff);
- { uint128_t x23 = (x16 + ((uint128_t)0x13 * x21));
- { uint64_t x24 = (uint64_t) (x23 >> 0x39);
- { uint64_t x25 = ((uint64_t)x23 & 0x1ffffffffffffff);
- { uint64_t x26 = (x24 + x19);
- { uint64_t x27 = (x26 >> 0x39);
- { uint64_t x28 = (x26 & 0x1ffffffffffffff);
- out[0] = x25;
- out[1] = x28;
- out[2] = (x27 + x22);
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e171m19_3limbs/femul.v b/src/Specific/solinas64_2e171m19_3limbs/femul.v
deleted file mode 100644
index 35b7a0bf5..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e171m19_3limbs.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/solinas64_2e171m19_3limbs/femulDisplay.log b/src/Specific/solinas64_2e171m19_3limbs/femulDisplay.log
deleted file mode 100644
index 277ffffec..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint128_t x12 = (((uint128_t)x5 * x10) + (((uint128_t)x7 * x11) + ((uint128_t)x6 * x9)));
- uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0x13 * ((uint128_t)x6 * x10)));
- uint128_t x14 = (((uint128_t)x5 * x9) + (0x13 * (((uint128_t)x7 * x10) + ((uint128_t)x6 * x11))));
- uint128_t x15 = (x14 >> 0x39);
- uint64_t x16 = ((uint64_t)x14 & 0x1ffffffffffffff);
- uint128_t x17 = (x15 + x13);
- uint128_t x18 = (x17 >> 0x39);
- uint64_t x19 = ((uint64_t)x17 & 0x1ffffffffffffff);
- uint128_t x20 = (x18 + x12);
- uint64_t x21 = (uint64_t) (x20 >> 0x39);
- uint64_t x22 = ((uint64_t)x20 & 0x1ffffffffffffff);
- uint128_t x23 = (x16 + ((uint128_t)0x13 * x21));
- uint64_t x24 = (uint64_t) (x23 >> 0x39);
- uint64_t x25 = ((uint64_t)x23 & 0x1ffffffffffffff);
- uint64_t x26 = (x24 + x19);
- uint64_t x27 = (x26 >> 0x39);
- uint64_t x28 = (x26 & 0x1ffffffffffffff);
- return ((x27 + x22), Return x28, Return x25))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e171m19_3limbs/femulDisplay.v b/src/Specific/solinas64_2e171m19_3limbs/femulDisplay.v
deleted file mode 100644
index dca1b1d75..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e171m19_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e171m19_3limbs/fesquare.c b/src/Specific/solinas64_2e171m19_3limbs/fesquare.c
deleted file mode 100644
index baf29c300..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/fesquare.c
+++ /dev/null
@@ -1,26 +0,0 @@
-static void fesquare(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x5 = (((uint128_t)x2 * x3) + (((uint128_t)x4 * x4) + ((uint128_t)x3 * x2)));
- { uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x13 * ((uint128_t)x3 * x3)));
- { uint128_t x7 = (((uint128_t)x2 * x2) + (0x13 * (((uint128_t)x4 * x3) + ((uint128_t)x3 * x4))));
- { uint128_t x8 = (x7 >> 0x39);
- { uint64_t x9 = ((uint64_t)x7 & 0x1ffffffffffffff);
- { uint128_t x10 = (x8 + x6);
- { uint128_t x11 = (x10 >> 0x39);
- { uint64_t x12 = ((uint64_t)x10 & 0x1ffffffffffffff);
- { uint128_t x13 = (x11 + x5);
- { uint64_t x14 = (uint64_t) (x13 >> 0x39);
- { uint64_t x15 = ((uint64_t)x13 & 0x1ffffffffffffff);
- { uint128_t x16 = (x9 + ((uint128_t)0x13 * x14));
- { uint64_t x17 = (uint64_t) (x16 >> 0x39);
- { uint64_t x18 = ((uint64_t)x16 & 0x1ffffffffffffff);
- { uint64_t x19 = (x17 + x12);
- { uint64_t x20 = (x19 >> 0x39);
- { uint64_t x21 = (x19 & 0x1ffffffffffffff);
- out[0] = x18;
- out[1] = x21;
- out[2] = (x20 + x15);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e171m19_3limbs/fesquare.v b/src/Specific/solinas64_2e171m19_3limbs/fesquare.v
deleted file mode 100644
index e461316ab..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e171m19_3limbs.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/solinas64_2e171m19_3limbs/fesquareDisplay.log b/src/Specific/solinas64_2e171m19_3limbs/fesquareDisplay.log
deleted file mode 100644
index ed72eaa4d..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint128_t x5 = (((uint128_t)x2 * x3) + (((uint128_t)x4 * x4) + ((uint128_t)x3 * x2)));
- uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x13 * ((uint128_t)x3 * x3)));
- uint128_t x7 = (((uint128_t)x2 * x2) + (0x13 * (((uint128_t)x4 * x3) + ((uint128_t)x3 * x4))));
- uint128_t x8 = (x7 >> 0x39);
- uint64_t x9 = ((uint64_t)x7 & 0x1ffffffffffffff);
- uint128_t x10 = (x8 + x6);
- uint128_t x11 = (x10 >> 0x39);
- uint64_t x12 = ((uint64_t)x10 & 0x1ffffffffffffff);
- uint128_t x13 = (x11 + x5);
- uint64_t x14 = (uint64_t) (x13 >> 0x39);
- uint64_t x15 = ((uint64_t)x13 & 0x1ffffffffffffff);
- uint128_t x16 = (x9 + ((uint128_t)0x13 * x14));
- uint64_t x17 = (uint64_t) (x16 >> 0x39);
- uint64_t x18 = ((uint64_t)x16 & 0x1ffffffffffffff);
- uint64_t x19 = (x17 + x12);
- uint64_t x20 = (x19 >> 0x39);
- uint64_t x21 = (x19 & 0x1ffffffffffffff);
- return ((x20 + x15), Return x21, Return x18))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e171m19_3limbs/fesquareDisplay.v b/src/Specific/solinas64_2e171m19_3limbs/fesquareDisplay.v
deleted file mode 100644
index 99f957f1b..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e171m19_3limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e171m19_3limbs/fesub.c b/src/Specific/solinas64_2e171m19_3limbs/fesub.c
deleted file mode 100644
index 060449697..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/fesub.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = ((0x3ffffffffffffda + x5) - x9);
- out[1] = ((0x3fffffffffffffe + x7) - x11);
- out[2] = ((0x3fffffffffffffe + x6) - x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e171m19_3limbs/fesub.v b/src/Specific/solinas64_2e171m19_3limbs/fesub.v
deleted file mode 100644
index 4738ba6ec..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e171m19_3limbs.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/solinas64_2e171m19_3limbs/fesubDisplay.log b/src/Specific/solinas64_2e171m19_3limbs/fesubDisplay.log
deleted file mode 100644
index c6120f7d9..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- (((0x3fffffffffffffe + x6) - x10), ((0x3fffffffffffffe + x7) - x11), ((0x3ffffffffffffda + x5) - x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e171m19_3limbs/fesubDisplay.v b/src/Specific/solinas64_2e171m19_3limbs/fesubDisplay.v
deleted file mode 100644
index bcbb177f7..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e171m19_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e171m19_3limbs/freeze.c b/src/Specific/solinas64_2e171m19_3limbs/freeze.c
deleted file mode 100644
index 4dfecb1df..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/freeze.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void freeze(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffffffffffed);
- { uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x1ffffffffffffff);
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x1ffffffffffffff);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0x1ffffffffffffed);
- { uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- { uint64_t x19 = (x14 & 0x1ffffffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- { uint64_t x23 = (x14 & 0x1ffffffffffffff);
- { uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e171m19_3limbs/freeze.v b/src/Specific/solinas64_2e171m19_3limbs/freeze.v
deleted file mode 100644
index a13f33f6d..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e171m19_3limbs.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/solinas64_2e171m19_3limbs/freezeDisplay.log b/src/Specific/solinas64_2e171m19_3limbs/freezeDisplay.log
deleted file mode 100644
index 95f2aa18b..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/freezeDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffffffffffed);
- uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x1ffffffffffffff);
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x1ffffffffffffff);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0x1ffffffffffffed);
- uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- uint64_t x19 = (x14 & 0x1ffffffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- uint64_t x23 = (x14 & 0x1ffffffffffffff);
- uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e171m19_3limbs/freezeDisplay.v b/src/Specific/solinas64_2e171m19_3limbs/freezeDisplay.v
deleted file mode 100644
index aef384b19..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e171m19_3limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e171m19_3limbs/py_interpreter.sh b/src/Specific/solinas64_2e171m19_3limbs/py_interpreter.sh
deleted file mode 100755
index a58798c98..000000000
--- a/src/Specific/solinas64_2e171m19_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**171 - 19' -Dmodulus_bytes='57' -Da24='121665'
diff --git a/src/Specific/solinas64_2e171m19_4limbs/CurveParameters.v b/src/Specific/solinas64_2e171m19_4limbs/CurveParameters.v
deleted file mode 100644
index 25031ab9f..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^171 - 19
-Base: 42.75
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 42 + 3/4;
- bitwidth := 64;
- s := 2^171;
- c := [(1, 19)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e171m19_4limbs/Synthesis.v b/src/Specific/solinas64_2e171m19_4limbs/Synthesis.v
deleted file mode 100644
index 67e5c1c42..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e171m19_4limbs.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/solinas64_2e171m19_4limbs/compiler.sh b/src/Specific/solinas64_2e171m19_4limbs/compiler.sh
deleted file mode 100755
index 653ecde0a..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,43,42}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<171) - 19' "$@"
diff --git a/src/Specific/solinas64_2e171m19_4limbs/compilerxx.sh b/src/Specific/solinas64_2e171m19_4limbs/compilerxx.sh
deleted file mode 100755
index 937f08fad..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,43,42}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<171) - 19' "$@"
diff --git a/src/Specific/solinas64_2e171m19_4limbs/feadd.c b/src/Specific/solinas64_2e171m19_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e171m19_4limbs/feadd.v b/src/Specific/solinas64_2e171m19_4limbs/feadd.v
deleted file mode 100644
index 701e17c08..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e171m19_4limbs.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/solinas64_2e171m19_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e171m19_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e171m19_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e171m19_4limbs/feaddDisplay.v
deleted file mode 100644
index 84df6a941..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e171m19_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e171m19_4limbs/fecarry.v b/src/Specific/solinas64_2e171m19_4limbs/fecarry.v
deleted file mode 100644
index dfcf04818..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e171m19_4limbs.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/solinas64_2e171m19_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e171m19_4limbs/fecarryDisplay.v
deleted file mode 100644
index dc2c11091..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e171m19_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e171m19_4limbs/femul.c b/src/Specific/solinas64_2e171m19_4limbs/femul.c
deleted file mode 100644
index 56d5a495d..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + (((uint128_t)x7 * x13) + ((uint128_t)x9 * x11))) + (0x13 * (0x2 * ((uint128_t)x8 * x14))));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x13 * ((0x2 * ((uint128_t)x9 * x14)) + (0x2 * ((uint128_t)x8 * x15)))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0x13 * ((0x2 * ((uint128_t)x7 * x14)) + ((0x2 * ((uint128_t)x9 * x15)) + (0x2 * ((uint128_t)x8 * x13))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x2b);
- { uint64_t x21 = ((uint64_t)x19 & 0x7ffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x2b);
- { uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x2b);
- { uint64_t x27 = ((uint64_t)x25 & 0x7ffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x2a);
- { uint64_t x30 = ((uint64_t)x28 & 0x3ffffffffff);
- { uint64_t x31 = (x21 + (0x13 * x29));
- { uint64_t x32 = (x31 >> 0x2b);
- { uint64_t x33 = (x31 & 0x7ffffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x2b);
- { uint64_t x36 = (x34 & 0x7ffffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e171m19_4limbs/femul.v b/src/Specific/solinas64_2e171m19_4limbs/femul.v
deleted file mode 100644
index 95a5df804..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e171m19_4limbs.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/solinas64_2e171m19_4limbs/femulDisplay.log b/src/Specific/solinas64_2e171m19_4limbs/femulDisplay.log
deleted file mode 100644
index 2798a271d..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + (((uint128_t)x7 * x13) + ((uint128_t)x9 * x11))) + (0x13 * (0x2 * ((uint128_t)x8 * x14))));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x13 * ((0x2 * ((uint128_t)x9 * x14)) + (0x2 * ((uint128_t)x8 * x15)))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0x13 * ((0x2 * ((uint128_t)x7 * x14)) + ((0x2 * ((uint128_t)x9 * x15)) + (0x2 * ((uint128_t)x8 * x13))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x2b);
- uint64_t x21 = ((uint64_t)x19 & 0x7ffffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x2b);
- uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x2b);
- uint64_t x27 = ((uint64_t)x25 & 0x7ffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x2a);
- uint64_t x30 = ((uint64_t)x28 & 0x3ffffffffff);
- uint64_t x31 = (x21 + (0x13 * x29));
- uint64_t x32 = (x31 >> 0x2b);
- uint64_t x33 = (x31 & 0x7ffffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x2b);
- uint64_t x36 = (x34 & 0x7ffffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e171m19_4limbs/femulDisplay.v b/src/Specific/solinas64_2e171m19_4limbs/femulDisplay.v
deleted file mode 100644
index 63f162f55..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e171m19_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e171m19_4limbs/fesquare.c b/src/Specific/solinas64_2e171m19_4limbs/fesquare.c
deleted file mode 100644
index b93249592..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x13 * (0x2 * ((uint128_t)x5 * x5))));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x13 * ((0x2 * ((uint128_t)x6 * x5)) + (0x2 * ((uint128_t)x5 * x6)))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0x13 * ((0x2 * ((uint128_t)x4 * x5)) + ((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x5 * x4))))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x2b);
- { uint64_t x12 = ((uint64_t)x10 & 0x7ffffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint64_t x14 = (uint64_t) (x13 >> 0x2b);
- { uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x2b);
- { uint64_t x18 = ((uint64_t)x16 & 0x7ffffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x2a);
- { uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffff);
- { uint64_t x22 = (x12 + (0x13 * x20));
- { uint64_t x23 = (x22 >> 0x2b);
- { uint64_t x24 = (x22 & 0x7ffffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x2b);
- { uint64_t x27 = (x25 & 0x7ffffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e171m19_4limbs/fesquare.v b/src/Specific/solinas64_2e171m19_4limbs/fesquare.v
deleted file mode 100644
index d3261edc8..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e171m19_4limbs.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/solinas64_2e171m19_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e171m19_4limbs/fesquareDisplay.log
deleted file mode 100644
index 91febdd0a..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x13 * (0x2 * ((uint128_t)x5 * x5))));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x13 * ((0x2 * ((uint128_t)x6 * x5)) + (0x2 * ((uint128_t)x5 * x6)))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0x13 * ((0x2 * ((uint128_t)x4 * x5)) + ((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x5 * x4))))));
- uint64_t x11 = (uint64_t) (x10 >> 0x2b);
- uint64_t x12 = ((uint64_t)x10 & 0x7ffffffffff);
- uint128_t x13 = (x11 + x9);
- uint64_t x14 = (uint64_t) (x13 >> 0x2b);
- uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x2b);
- uint64_t x18 = ((uint64_t)x16 & 0x7ffffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x2a);
- uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffff);
- uint64_t x22 = (x12 + (0x13 * x20));
- uint64_t x23 = (x22 >> 0x2b);
- uint64_t x24 = (x22 & 0x7ffffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x2b);
- uint64_t x27 = (x25 & 0x7ffffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e171m19_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e171m19_4limbs/fesquareDisplay.v
deleted file mode 100644
index 5baa5d838..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e171m19_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e171m19_4limbs/fesub.c b/src/Specific/solinas64_2e171m19_4limbs/fesub.c
deleted file mode 100644
index 729b06baf..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0xfffffffffda + x5) - x11);
- out[1] = ((0xffffffffffe + x7) - x13);
- out[2] = ((0xffffffffffe + x9) - x15);
- out[3] = ((0x7fffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e171m19_4limbs/fesub.v b/src/Specific/solinas64_2e171m19_4limbs/fesub.v
deleted file mode 100644
index ae520f818..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e171m19_4limbs.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/solinas64_2e171m19_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e171m19_4limbs/fesubDisplay.log
deleted file mode 100644
index 1773b3869..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0x7fffffffffe + x8) - x14), ((0xffffffffffe + x9) - x15), ((0xffffffffffe + x7) - x13), ((0xfffffffffda + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e171m19_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e171m19_4limbs/fesubDisplay.v
deleted file mode 100644
index f5c4ab22b..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e171m19_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e171m19_4limbs/freeze.c b/src/Specific/solinas64_2e171m19_4limbs/freeze.c
deleted file mode 100644
index 6a49a132b..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffed);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x7ffffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x7ffffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x3ffffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0x7ffffffffed);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0x7ffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0x7ffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x3ffffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e171m19_4limbs/freeze.v b/src/Specific/solinas64_2e171m19_4limbs/freeze.v
deleted file mode 100644
index 9127c6b6c..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e171m19_4limbs.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/solinas64_2e171m19_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e171m19_4limbs/freezeDisplay.log
deleted file mode 100644
index 2ae6f68e0..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffed);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x7ffffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x7ffffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x3ffffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0x7ffffffffed);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0x7ffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0x7ffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x3ffffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e171m19_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e171m19_4limbs/freezeDisplay.v
deleted file mode 100644
index 790050238..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e171m19_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e171m19_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e171m19_4limbs/py_interpreter.sh
deleted file mode 100755
index 77459642b..000000000
--- a/src/Specific/solinas64_2e171m19_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**171 - 19' -Dmodulus_bytes='42.75' -Da24='121665'
diff --git a/src/Specific/solinas64_2e174m17_3limbs/CurveParameters.v b/src/Specific/solinas64_2e174m17_3limbs/CurveParameters.v
deleted file mode 100644
index 69603408a..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^174 - 17
-Base: 58
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 58;
- bitwidth := 64;
- s := 2^174;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 3); [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/solinas64_2e174m17_3limbs/Synthesis.v b/src/Specific/solinas64_2e174m17_3limbs/Synthesis.v
deleted file mode 100644
index 1a3d31b10..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e174m17_3limbs.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/solinas64_2e174m17_3limbs/compiler.sh b/src/Specific/solinas64_2e174m17_3limbs/compiler.sh
deleted file mode 100755
index a78520075..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{58,58,58}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<174) - 17' "$@"
diff --git a/src/Specific/solinas64_2e174m17_3limbs/compilerxx.sh b/src/Specific/solinas64_2e174m17_3limbs/compilerxx.sh
deleted file mode 100755
index 252ea6518..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{58,58,58}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<174) - 17' "$@"
diff --git a/src/Specific/solinas64_2e174m17_3limbs/feadd.c b/src/Specific/solinas64_2e174m17_3limbs/feadd.c
deleted file mode 100644
index 725c1f205..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/feadd.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = (x5 + x9);
- out[1] = (x7 + x11);
- out[2] = (x6 + x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e174m17_3limbs/feadd.v b/src/Specific/solinas64_2e174m17_3limbs/feadd.v
deleted file mode 100644
index 78d5104ed..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e174m17_3limbs.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/solinas64_2e174m17_3limbs/feaddDisplay.log b/src/Specific/solinas64_2e174m17_3limbs/feaddDisplay.log
deleted file mode 100644
index 64fb467ef..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- ((x6 + x10), (x7 + x11), (x5 + x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e174m17_3limbs/feaddDisplay.v b/src/Specific/solinas64_2e174m17_3limbs/feaddDisplay.v
deleted file mode 100644
index a5a897422..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e174m17_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e174m17_3limbs/fecarry.v b/src/Specific/solinas64_2e174m17_3limbs/fecarry.v
deleted file mode 100644
index 12c0d6fc9..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e174m17_3limbs.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/solinas64_2e174m17_3limbs/fecarryDisplay.v b/src/Specific/solinas64_2e174m17_3limbs/fecarryDisplay.v
deleted file mode 100644
index ccb00a1ee..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e174m17_3limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e174m17_3limbs/femul.c b/src/Specific/solinas64_2e174m17_3limbs/femul.c
deleted file mode 100644
index fdf07cf4c..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/femul.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint128_t x12 = (((uint128_t)x5 * x10) + (((uint128_t)x7 * x11) + ((uint128_t)x6 * x9)));
- { uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0x11 * ((uint128_t)x6 * x10)));
- { uint128_t x14 = (((uint128_t)x5 * x9) + (0x11 * (((uint128_t)x7 * x10) + ((uint128_t)x6 * x11))));
- { uint128_t x15 = (x14 >> 0x3a);
- { uint64_t x16 = ((uint64_t)x14 & 0x3ffffffffffffff);
- { uint128_t x17 = (x15 + x13);
- { uint128_t x18 = (x17 >> 0x3a);
- { uint64_t x19 = ((uint64_t)x17 & 0x3ffffffffffffff);
- { uint128_t x20 = (x18 + x12);
- { uint64_t x21 = (uint64_t) (x20 >> 0x3a);
- { uint64_t x22 = ((uint64_t)x20 & 0x3ffffffffffffff);
- { uint128_t x23 = (x16 + ((uint128_t)0x11 * x21));
- { uint64_t x24 = (uint64_t) (x23 >> 0x3a);
- { uint64_t x25 = ((uint64_t)x23 & 0x3ffffffffffffff);
- { uint64_t x26 = (x24 + x19);
- { uint64_t x27 = (x26 >> 0x3a);
- { uint64_t x28 = (x26 & 0x3ffffffffffffff);
- out[0] = x25;
- out[1] = x28;
- out[2] = (x27 + x22);
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e174m17_3limbs/femul.v b/src/Specific/solinas64_2e174m17_3limbs/femul.v
deleted file mode 100644
index 9ba7fa4d0..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e174m17_3limbs.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/solinas64_2e174m17_3limbs/femulDisplay.log b/src/Specific/solinas64_2e174m17_3limbs/femulDisplay.log
deleted file mode 100644
index c05cad5fe..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint128_t x12 = (((uint128_t)x5 * x10) + (((uint128_t)x7 * x11) + ((uint128_t)x6 * x9)));
- uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0x11 * ((uint128_t)x6 * x10)));
- uint128_t x14 = (((uint128_t)x5 * x9) + (0x11 * (((uint128_t)x7 * x10) + ((uint128_t)x6 * x11))));
- uint128_t x15 = (x14 >> 0x3a);
- uint64_t x16 = ((uint64_t)x14 & 0x3ffffffffffffff);
- uint128_t x17 = (x15 + x13);
- uint128_t x18 = (x17 >> 0x3a);
- uint64_t x19 = ((uint64_t)x17 & 0x3ffffffffffffff);
- uint128_t x20 = (x18 + x12);
- uint64_t x21 = (uint64_t) (x20 >> 0x3a);
- uint64_t x22 = ((uint64_t)x20 & 0x3ffffffffffffff);
- uint128_t x23 = (x16 + ((uint128_t)0x11 * x21));
- uint64_t x24 = (uint64_t) (x23 >> 0x3a);
- uint64_t x25 = ((uint64_t)x23 & 0x3ffffffffffffff);
- uint64_t x26 = (x24 + x19);
- uint64_t x27 = (x26 >> 0x3a);
- uint64_t x28 = (x26 & 0x3ffffffffffffff);
- return ((x27 + x22), Return x28, Return x25))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e174m17_3limbs/femulDisplay.v b/src/Specific/solinas64_2e174m17_3limbs/femulDisplay.v
deleted file mode 100644
index 0c6b4ad87..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e174m17_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e174m17_3limbs/fesquare.c b/src/Specific/solinas64_2e174m17_3limbs/fesquare.c
deleted file mode 100644
index 1364215bc..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/fesquare.c
+++ /dev/null
@@ -1,26 +0,0 @@
-static void fesquare(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x5 = (((uint128_t)x2 * x3) + (((uint128_t)x4 * x4) + ((uint128_t)x3 * x2)));
- { uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * ((uint128_t)x3 * x3)));
- { uint128_t x7 = (((uint128_t)x2 * x2) + (0x11 * (((uint128_t)x4 * x3) + ((uint128_t)x3 * x4))));
- { uint128_t x8 = (x7 >> 0x3a);
- { uint64_t x9 = ((uint64_t)x7 & 0x3ffffffffffffff);
- { uint128_t x10 = (x8 + x6);
- { uint128_t x11 = (x10 >> 0x3a);
- { uint64_t x12 = ((uint64_t)x10 & 0x3ffffffffffffff);
- { uint128_t x13 = (x11 + x5);
- { uint64_t x14 = (uint64_t) (x13 >> 0x3a);
- { uint64_t x15 = ((uint64_t)x13 & 0x3ffffffffffffff);
- { uint128_t x16 = (x9 + ((uint128_t)0x11 * x14));
- { uint64_t x17 = (uint64_t) (x16 >> 0x3a);
- { uint64_t x18 = ((uint64_t)x16 & 0x3ffffffffffffff);
- { uint64_t x19 = (x17 + x12);
- { uint64_t x20 = (x19 >> 0x3a);
- { uint64_t x21 = (x19 & 0x3ffffffffffffff);
- out[0] = x18;
- out[1] = x21;
- out[2] = (x20 + x15);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e174m17_3limbs/fesquare.v b/src/Specific/solinas64_2e174m17_3limbs/fesquare.v
deleted file mode 100644
index bb2e94dde..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e174m17_3limbs.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/solinas64_2e174m17_3limbs/fesquareDisplay.log b/src/Specific/solinas64_2e174m17_3limbs/fesquareDisplay.log
deleted file mode 100644
index 65a36812e..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint128_t x5 = (((uint128_t)x2 * x3) + (((uint128_t)x4 * x4) + ((uint128_t)x3 * x2)));
- uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * ((uint128_t)x3 * x3)));
- uint128_t x7 = (((uint128_t)x2 * x2) + (0x11 * (((uint128_t)x4 * x3) + ((uint128_t)x3 * x4))));
- uint128_t x8 = (x7 >> 0x3a);
- uint64_t x9 = ((uint64_t)x7 & 0x3ffffffffffffff);
- uint128_t x10 = (x8 + x6);
- uint128_t x11 = (x10 >> 0x3a);
- uint64_t x12 = ((uint64_t)x10 & 0x3ffffffffffffff);
- uint128_t x13 = (x11 + x5);
- uint64_t x14 = (uint64_t) (x13 >> 0x3a);
- uint64_t x15 = ((uint64_t)x13 & 0x3ffffffffffffff);
- uint128_t x16 = (x9 + ((uint128_t)0x11 * x14));
- uint64_t x17 = (uint64_t) (x16 >> 0x3a);
- uint64_t x18 = ((uint64_t)x16 & 0x3ffffffffffffff);
- uint64_t x19 = (x17 + x12);
- uint64_t x20 = (x19 >> 0x3a);
- uint64_t x21 = (x19 & 0x3ffffffffffffff);
- return ((x20 + x15), Return x21, Return x18))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e174m17_3limbs/fesquareDisplay.v b/src/Specific/solinas64_2e174m17_3limbs/fesquareDisplay.v
deleted file mode 100644
index f442e2061..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e174m17_3limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e174m17_3limbs/fesub.c b/src/Specific/solinas64_2e174m17_3limbs/fesub.c
deleted file mode 100644
index f81d19b57..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/fesub.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = ((0x7ffffffffffffde + x5) - x9);
- out[1] = ((0x7fffffffffffffe + x7) - x11);
- out[2] = ((0x7fffffffffffffe + x6) - x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e174m17_3limbs/fesub.v b/src/Specific/solinas64_2e174m17_3limbs/fesub.v
deleted file mode 100644
index d18e5f8a8..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e174m17_3limbs.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/solinas64_2e174m17_3limbs/fesubDisplay.log b/src/Specific/solinas64_2e174m17_3limbs/fesubDisplay.log
deleted file mode 100644
index 747607a6c..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- (((0x7fffffffffffffe + x6) - x10), ((0x7fffffffffffffe + x7) - x11), ((0x7ffffffffffffde + x5) - x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e174m17_3limbs/fesubDisplay.v b/src/Specific/solinas64_2e174m17_3limbs/fesubDisplay.v
deleted file mode 100644
index 09d21f78c..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e174m17_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e174m17_3limbs/freeze.c b/src/Specific/solinas64_2e174m17_3limbs/freeze.c
deleted file mode 100644
index 7593d076d..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/freeze.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void freeze(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffffffef);
- { uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x3ffffffffffffff);
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x3ffffffffffffff);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0x3ffffffffffffef);
- { uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- { uint64_t x19 = (x14 & 0x3ffffffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- { uint64_t x23 = (x14 & 0x3ffffffffffffff);
- { uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e174m17_3limbs/freeze.v b/src/Specific/solinas64_2e174m17_3limbs/freeze.v
deleted file mode 100644
index 3f90ced5b..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e174m17_3limbs.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/solinas64_2e174m17_3limbs/freezeDisplay.log b/src/Specific/solinas64_2e174m17_3limbs/freezeDisplay.log
deleted file mode 100644
index 2ae343b92..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/freezeDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffffffef);
- uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x3ffffffffffffff);
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x3ffffffffffffff);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0x3ffffffffffffef);
- uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- uint64_t x19 = (x14 & 0x3ffffffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- uint64_t x23 = (x14 & 0x3ffffffffffffff);
- uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e174m17_3limbs/freezeDisplay.v b/src/Specific/solinas64_2e174m17_3limbs/freezeDisplay.v
deleted file mode 100644
index 1b16cfdc7..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e174m17_3limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e174m17_3limbs/py_interpreter.sh b/src/Specific/solinas64_2e174m17_3limbs/py_interpreter.sh
deleted file mode 100755
index d584e2052..000000000
--- a/src/Specific/solinas64_2e174m17_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**174 - 17' -Dmodulus_bytes='58' -Da24='121665'
diff --git a/src/Specific/solinas64_2e174m17_4limbs/CurveParameters.v b/src/Specific/solinas64_2e174m17_4limbs/CurveParameters.v
deleted file mode 100644
index 0829abac5..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^174 - 17
-Base: 43.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 43 + 1/2;
- bitwidth := 64;
- s := 2^174;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e174m17_4limbs/Synthesis.v b/src/Specific/solinas64_2e174m17_4limbs/Synthesis.v
deleted file mode 100644
index a105384ed..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e174m17_4limbs.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/solinas64_2e174m17_4limbs/compiler.sh b/src/Specific/solinas64_2e174m17_4limbs/compiler.sh
deleted file mode 100755
index 707829069..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{44,43,44,43}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<174) - 17' "$@"
diff --git a/src/Specific/solinas64_2e174m17_4limbs/compilerxx.sh b/src/Specific/solinas64_2e174m17_4limbs/compilerxx.sh
deleted file mode 100755
index b87a48e2f..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{44,43,44,43}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<174) - 17' "$@"
diff --git a/src/Specific/solinas64_2e174m17_4limbs/feadd.c b/src/Specific/solinas64_2e174m17_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e174m17_4limbs/feadd.v b/src/Specific/solinas64_2e174m17_4limbs/feadd.v
deleted file mode 100644
index 1a315edee..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e174m17_4limbs.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/solinas64_2e174m17_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e174m17_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e174m17_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e174m17_4limbs/feaddDisplay.v
deleted file mode 100644
index b5a432e4e..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e174m17_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e174m17_4limbs/fecarry.v b/src/Specific/solinas64_2e174m17_4limbs/fecarry.v
deleted file mode 100644
index 4d7a92072..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e174m17_4limbs.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/solinas64_2e174m17_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e174m17_4limbs/fecarryDisplay.v
deleted file mode 100644
index 23debd19f..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e174m17_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e174m17_4limbs/femul.c b/src/Specific/solinas64_2e174m17_4limbs/femul.c
deleted file mode 100644
index 3e846a1be..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x11 * (0x2 * ((uint128_t)x8 * x14))));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x11 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0x11 * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x2c);
- { uint64_t x21 = ((uint64_t)x19 & 0xfffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x2b);
- { uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x2c);
- { uint64_t x27 = ((uint64_t)x25 & 0xfffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x2b);
- { uint64_t x30 = ((uint64_t)x28 & 0x7ffffffffff);
- { uint64_t x31 = (x21 + (0x11 * x29));
- { uint64_t x32 = (x31 >> 0x2c);
- { uint64_t x33 = (x31 & 0xfffffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x2b);
- { uint64_t x36 = (x34 & 0x7ffffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e174m17_4limbs/femul.v b/src/Specific/solinas64_2e174m17_4limbs/femul.v
deleted file mode 100644
index 0d885943c..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e174m17_4limbs.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/solinas64_2e174m17_4limbs/femulDisplay.log b/src/Specific/solinas64_2e174m17_4limbs/femulDisplay.log
deleted file mode 100644
index 3013e6022..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x11 * (0x2 * ((uint128_t)x8 * x14))));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x11 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0x11 * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x2c);
- uint64_t x21 = ((uint64_t)x19 & 0xfffffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x2b);
- uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x2c);
- uint64_t x27 = ((uint64_t)x25 & 0xfffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x2b);
- uint64_t x30 = ((uint64_t)x28 & 0x7ffffffffff);
- uint64_t x31 = (x21 + (0x11 * x29));
- uint64_t x32 = (x31 >> 0x2c);
- uint64_t x33 = (x31 & 0xfffffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x2b);
- uint64_t x36 = (x34 & 0x7ffffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e174m17_4limbs/femulDisplay.v b/src/Specific/solinas64_2e174m17_4limbs/femulDisplay.v
deleted file mode 100644
index 932ac7706..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e174m17_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e174m17_4limbs/fesquare.c b/src/Specific/solinas64_2e174m17_4limbs/fesquare.c
deleted file mode 100644
index e79b617d2..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x11 * (0x2 * ((uint128_t)x5 * x5))));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0x11 * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x2c);
- { uint64_t x12 = ((uint64_t)x10 & 0xfffffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint64_t x14 = (uint64_t) (x13 >> 0x2b);
- { uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x2c);
- { uint64_t x18 = ((uint64_t)x16 & 0xfffffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x2b);
- { uint64_t x21 = ((uint64_t)x19 & 0x7ffffffffff);
- { uint64_t x22 = (x12 + (0x11 * x20));
- { uint64_t x23 = (x22 >> 0x2c);
- { uint64_t x24 = (x22 & 0xfffffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x2b);
- { uint64_t x27 = (x25 & 0x7ffffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e174m17_4limbs/fesquare.v b/src/Specific/solinas64_2e174m17_4limbs/fesquare.v
deleted file mode 100644
index a6b90fe99..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e174m17_4limbs.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/solinas64_2e174m17_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e174m17_4limbs/fesquareDisplay.log
deleted file mode 100644
index 5dd92cd26..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x11 * (0x2 * ((uint128_t)x5 * x5))));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0x11 * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- uint64_t x11 = (uint64_t) (x10 >> 0x2c);
- uint64_t x12 = ((uint64_t)x10 & 0xfffffffffff);
- uint128_t x13 = (x11 + x9);
- uint64_t x14 = (uint64_t) (x13 >> 0x2b);
- uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x2c);
- uint64_t x18 = ((uint64_t)x16 & 0xfffffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x2b);
- uint64_t x21 = ((uint64_t)x19 & 0x7ffffffffff);
- uint64_t x22 = (x12 + (0x11 * x20));
- uint64_t x23 = (x22 >> 0x2c);
- uint64_t x24 = (x22 & 0xfffffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x2b);
- uint64_t x27 = (x25 & 0x7ffffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e174m17_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e174m17_4limbs/fesquareDisplay.v
deleted file mode 100644
index 6413a686a..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e174m17_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e174m17_4limbs/fesub.c b/src/Specific/solinas64_2e174m17_4limbs/fesub.c
deleted file mode 100644
index 901f8fd88..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x1fffffffffde + x5) - x11);
- out[1] = ((0xffffffffffe + x7) - x13);
- out[2] = ((0x1ffffffffffe + x9) - x15);
- out[3] = ((0xffffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e174m17_4limbs/fesub.v b/src/Specific/solinas64_2e174m17_4limbs/fesub.v
deleted file mode 100644
index 176b5aa43..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e174m17_4limbs.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/solinas64_2e174m17_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e174m17_4limbs/fesubDisplay.log
deleted file mode 100644
index e0d979a9d..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0xffffffffffe + x8) - x14), ((0x1ffffffffffe + x9) - x15), ((0xffffffffffe + x7) - x13), ((0x1fffffffffde + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e174m17_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e174m17_4limbs/fesubDisplay.v
deleted file mode 100644
index 4a527c765..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e174m17_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e174m17_4limbs/freeze.c b/src/Specific/solinas64_2e174m17_4limbs/freeze.c
deleted file mode 100644
index b9d47ad8e..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffef);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x7ffffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0xfffffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x7ffffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xfffffffffef);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0x7ffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0xfffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x7ffffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e174m17_4limbs/freeze.v b/src/Specific/solinas64_2e174m17_4limbs/freeze.v
deleted file mode 100644
index 76e5695c7..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e174m17_4limbs.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/solinas64_2e174m17_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e174m17_4limbs/freezeDisplay.log
deleted file mode 100644
index 2630147bc..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffef);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x7ffffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0xfffffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x7ffffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xfffffffffef);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0x7ffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0xfffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x7ffffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e174m17_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e174m17_4limbs/freezeDisplay.v
deleted file mode 100644
index a428ea102..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e174m17_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e174m17_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e174m17_4limbs/py_interpreter.sh
deleted file mode 100755
index cca2d6af9..000000000
--- a/src/Specific/solinas64_2e174m17_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**174 - 17' -Dmodulus_bytes='43.5' -Da24='121665'
diff --git a/src/Specific/solinas64_2e174m3_3limbs/CurveParameters.v b/src/Specific/solinas64_2e174m3_3limbs/CurveParameters.v
deleted file mode 100644
index f09389f59..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^174 - 3
-Base: 58
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 3%nat;
- base := 58;
- bitwidth := 64;
- s := 2^174;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 3); [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/solinas64_2e174m3_3limbs/Synthesis.v b/src/Specific/solinas64_2e174m3_3limbs/Synthesis.v
deleted file mode 100644
index 161e673ad..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e174m3_3limbs.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/solinas64_2e174m3_3limbs/compiler.sh b/src/Specific/solinas64_2e174m3_3limbs/compiler.sh
deleted file mode 100755
index 08194492c..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{58,58,58}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<174) - 3' "$@"
diff --git a/src/Specific/solinas64_2e174m3_3limbs/compilerxx.sh b/src/Specific/solinas64_2e174m3_3limbs/compilerxx.sh
deleted file mode 100755
index e02145d6b..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{58,58,58}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='3' -Dq_mpz='(1_mpz<<174) - 3' "$@"
diff --git a/src/Specific/solinas64_2e174m3_3limbs/feadd.c b/src/Specific/solinas64_2e174m3_3limbs/feadd.c
deleted file mode 100644
index 725c1f205..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/feadd.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void feadd(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = (x5 + x9);
- out[1] = (x7 + x11);
- out[2] = (x6 + x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e174m3_3limbs/feadd.v b/src/Specific/solinas64_2e174m3_3limbs/feadd.v
deleted file mode 100644
index 3840c1fbc..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e174m3_3limbs.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/solinas64_2e174m3_3limbs/feaddDisplay.log b/src/Specific/solinas64_2e174m3_3limbs/feaddDisplay.log
deleted file mode 100644
index 64fb467ef..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- ((x6 + x10), (x7 + x11), (x5 + x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e174m3_3limbs/feaddDisplay.v b/src/Specific/solinas64_2e174m3_3limbs/feaddDisplay.v
deleted file mode 100644
index 0aac6429f..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e174m3_3limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e174m3_3limbs/fecarry.v b/src/Specific/solinas64_2e174m3_3limbs/fecarry.v
deleted file mode 100644
index 1fb630aa1..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e174m3_3limbs.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/solinas64_2e174m3_3limbs/fecarryDisplay.v b/src/Specific/solinas64_2e174m3_3limbs/fecarryDisplay.v
deleted file mode 100644
index b5756c591..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e174m3_3limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e174m3_3limbs/femul.c b/src/Specific/solinas64_2e174m3_3limbs/femul.c
deleted file mode 100644
index 25915ef8a..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/femul.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void femul(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- { uint128_t x12 = (((uint128_t)x5 * x10) + (((uint128_t)x7 * x11) + ((uint128_t)x6 * x9)));
- { uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0x3 * ((uint128_t)x6 * x10)));
- { uint128_t x14 = (((uint128_t)x5 * x9) + (0x3 * (((uint128_t)x7 * x10) + ((uint128_t)x6 * x11))));
- { uint128_t x15 = (x14 >> 0x3a);
- { uint64_t x16 = ((uint64_t)x14 & 0x3ffffffffffffff);
- { uint128_t x17 = (x15 + x13);
- { uint64_t x18 = (uint64_t) (x17 >> 0x3a);
- { uint64_t x19 = ((uint64_t)x17 & 0x3ffffffffffffff);
- { uint128_t x20 = (x18 + x12);
- { uint64_t x21 = (uint64_t) (x20 >> 0x3a);
- { uint64_t x22 = ((uint64_t)x20 & 0x3ffffffffffffff);
- { uint128_t x23 = (x16 + ((uint128_t)0x3 * x21));
- { uint64_t x24 = (uint64_t) (x23 >> 0x3a);
- { uint64_t x25 = ((uint64_t)x23 & 0x3ffffffffffffff);
- { uint64_t x26 = (x24 + x19);
- { uint64_t x27 = (x26 >> 0x3a);
- { uint64_t x28 = (x26 & 0x3ffffffffffffff);
- out[0] = x25;
- out[1] = x28;
- out[2] = (x27 + x22);
- }}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e174m3_3limbs/femul.v b/src/Specific/solinas64_2e174m3_3limbs/femul.v
deleted file mode 100644
index f1b8df350..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e174m3_3limbs.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/solinas64_2e174m3_3limbs/femulDisplay.log b/src/Specific/solinas64_2e174m3_3limbs/femulDisplay.log
deleted file mode 100644
index 0de3c7427..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/femulDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- uint128_t x12 = (((uint128_t)x5 * x10) + (((uint128_t)x7 * x11) + ((uint128_t)x6 * x9)));
- uint128_t x13 = ((((uint128_t)x5 * x11) + ((uint128_t)x7 * x9)) + (0x3 * ((uint128_t)x6 * x10)));
- uint128_t x14 = (((uint128_t)x5 * x9) + (0x3 * (((uint128_t)x7 * x10) + ((uint128_t)x6 * x11))));
- uint128_t x15 = (x14 >> 0x3a);
- uint64_t x16 = ((uint64_t)x14 & 0x3ffffffffffffff);
- uint128_t x17 = (x15 + x13);
- uint64_t x18 = (uint64_t) (x17 >> 0x3a);
- uint64_t x19 = ((uint64_t)x17 & 0x3ffffffffffffff);
- uint128_t x20 = (x18 + x12);
- uint64_t x21 = (uint64_t) (x20 >> 0x3a);
- uint64_t x22 = ((uint64_t)x20 & 0x3ffffffffffffff);
- uint128_t x23 = (x16 + ((uint128_t)0x3 * x21));
- uint64_t x24 = (uint64_t) (x23 >> 0x3a);
- uint64_t x25 = ((uint64_t)x23 & 0x3ffffffffffffff);
- uint64_t x26 = (x24 + x19);
- uint64_t x27 = (x26 >> 0x3a);
- uint64_t x28 = (x26 & 0x3ffffffffffffff);
- return ((x27 + x22), Return x28, Return x25))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e174m3_3limbs/femulDisplay.v b/src/Specific/solinas64_2e174m3_3limbs/femulDisplay.v
deleted file mode 100644
index 316646987..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e174m3_3limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e174m3_3limbs/fesquare.c b/src/Specific/solinas64_2e174m3_3limbs/fesquare.c
deleted file mode 100644
index e4d94711a..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/fesquare.c
+++ /dev/null
@@ -1,26 +0,0 @@
-static void fesquare(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x5 = (((uint128_t)x2 * x3) + (((uint128_t)x4 * x4) + ((uint128_t)x3 * x2)));
- { uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * ((uint128_t)x3 * x3)));
- { uint128_t x7 = (((uint128_t)x2 * x2) + (0x3 * (((uint128_t)x4 * x3) + ((uint128_t)x3 * x4))));
- { uint128_t x8 = (x7 >> 0x3a);
- { uint64_t x9 = ((uint64_t)x7 & 0x3ffffffffffffff);
- { uint128_t x10 = (x8 + x6);
- { uint64_t x11 = (uint64_t) (x10 >> 0x3a);
- { uint64_t x12 = ((uint64_t)x10 & 0x3ffffffffffffff);
- { uint128_t x13 = (x11 + x5);
- { uint64_t x14 = (uint64_t) (x13 >> 0x3a);
- { uint64_t x15 = ((uint64_t)x13 & 0x3ffffffffffffff);
- { uint128_t x16 = (x9 + ((uint128_t)0x3 * x14));
- { uint64_t x17 = (uint64_t) (x16 >> 0x3a);
- { uint64_t x18 = ((uint64_t)x16 & 0x3ffffffffffffff);
- { uint64_t x19 = (x17 + x12);
- { uint64_t x20 = (x19 >> 0x3a);
- { uint64_t x21 = (x19 & 0x3ffffffffffffff);
- out[0] = x18;
- out[1] = x21;
- out[2] = (x20 + x15);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e174m3_3limbs/fesquare.v b/src/Specific/solinas64_2e174m3_3limbs/fesquare.v
deleted file mode 100644
index 826bc0bc4..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e174m3_3limbs.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/solinas64_2e174m3_3limbs/fesquareDisplay.log b/src/Specific/solinas64_2e174m3_3limbs/fesquareDisplay.log
deleted file mode 100644
index 5ae5fb222..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,24 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint128_t x5 = (((uint128_t)x2 * x3) + (((uint128_t)x4 * x4) + ((uint128_t)x3 * x2)));
- uint128_t x6 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * ((uint128_t)x3 * x3)));
- uint128_t x7 = (((uint128_t)x2 * x2) + (0x3 * (((uint128_t)x4 * x3) + ((uint128_t)x3 * x4))));
- uint128_t x8 = (x7 >> 0x3a);
- uint64_t x9 = ((uint64_t)x7 & 0x3ffffffffffffff);
- uint128_t x10 = (x8 + x6);
- uint64_t x11 = (uint64_t) (x10 >> 0x3a);
- uint64_t x12 = ((uint64_t)x10 & 0x3ffffffffffffff);
- uint128_t x13 = (x11 + x5);
- uint64_t x14 = (uint64_t) (x13 >> 0x3a);
- uint64_t x15 = ((uint64_t)x13 & 0x3ffffffffffffff);
- uint128_t x16 = (x9 + ((uint128_t)0x3 * x14));
- uint64_t x17 = (uint64_t) (x16 >> 0x3a);
- uint64_t x18 = ((uint64_t)x16 & 0x3ffffffffffffff);
- uint64_t x19 = (x17 + x12);
- uint64_t x20 = (x19 >> 0x3a);
- uint64_t x21 = (x19 & 0x3ffffffffffffff);
- return ((x20 + x15), Return x21, Return x18))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e174m3_3limbs/fesquareDisplay.v b/src/Specific/solinas64_2e174m3_3limbs/fesquareDisplay.v
deleted file mode 100644
index 75d04ef84..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e174m3_3limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e174m3_3limbs/fesub.c b/src/Specific/solinas64_2e174m3_3limbs/fesub.c
deleted file mode 100644
index 33fdd392d..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/fesub.c
+++ /dev/null
@@ -1,12 +0,0 @@
-static void fesub(uint64_t out[3], const uint64_t in1[3], const uint64_t in2[3]) {
- { const uint64_t x6 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x10 = in2[2];
- { const uint64_t x11 = in2[1];
- { const uint64_t x9 = in2[0];
- out[0] = ((0x7fffffffffffffa + x5) - x9);
- out[1] = ((0x7fffffffffffffe + x7) - x11);
- out[2] = ((0x7fffffffffffffe + x6) - x10);
- }}}}}}
-}
diff --git a/src/Specific/solinas64_2e174m3_3limbs/fesub.v b/src/Specific/solinas64_2e174m3_3limbs/fesub.v
deleted file mode 100644
index 3557584c3..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e174m3_3limbs.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/solinas64_2e174m3_3limbs/fesubDisplay.log b/src/Specific/solinas64_2e174m3_3limbs/fesubDisplay.log
deleted file mode 100644
index 6fbc51ba6..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x6, x7, x5, (x10, x11, x9))%core,
- (((0x7fffffffffffffe + x6) - x10), ((0x7fffffffffffffe + x7) - x11), ((0x7fffffffffffffa + x5) - x9)))
-(x, x0)%core
- : word64 * word64 * word64 → word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e174m3_3limbs/fesubDisplay.v b/src/Specific/solinas64_2e174m3_3limbs/fesubDisplay.v
deleted file mode 100644
index 08c3e780c..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e174m3_3limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e174m3_3limbs/freeze.c b/src/Specific/solinas64_2e174m3_3limbs/freeze.c
deleted file mode 100644
index 42e104e38..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/freeze.c
+++ /dev/null
@@ -1,19 +0,0 @@
-static void freeze(uint64_t out[3], const uint64_t in1[3]) {
- { const uint64_t x3 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffffffffd);
- { uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x3ffffffffffffff);
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x3ffffffffffffff);
- { uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- { uint64_t x15 = (x14 & 0x3fffffffffffffd);
- { uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- { uint64_t x19 = (x14 & 0x3ffffffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- { uint64_t x23 = (x14 & 0x3ffffffffffffff);
- { uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- out[0] = x17;
- out[1] = x21;
- out[2] = x25;
- }}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e174m3_3limbs/freeze.v b/src/Specific/solinas64_2e174m3_3limbs/freeze.v
deleted file mode 100644
index 27c36123e..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e174m3_3limbs.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/solinas64_2e174m3_3limbs/freezeDisplay.log b/src/Specific/solinas64_2e174m3_3limbs/freezeDisplay.log
deleted file mode 100644
index 3a8210248..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/freezeDisplay.log
+++ /dev/null
@@ -1,17 +0,0 @@
-λ x : word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x3, x4, x2)%core,
- uint64_t x6, uint8_t x7 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffffffffd);
- uint64_t x9, uint8_t x10 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x7, Return x4, 0x3ffffffffffffff);
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x10, Return x3, 0x3ffffffffffffff);
- uint64_t x14 = cmovznz64(x13, 0x0, 0xffffffffffffffffL);
- uint64_t x15 = (x14 & 0x3fffffffffffffd);
- uint64_t x17, uint8_t x18 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x6, Return x15);
- uint64_t x19 = (x14 & 0x3ffffffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x9, Return x19);
- uint64_t x23 = (x14 & 0x3ffffffffffffff);
- uint64_t x25, uint8_t _ = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x12, Return x23);
- (Return x25, Return x21, Return x17))
-x
- : word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e174m3_3limbs/freezeDisplay.v b/src/Specific/solinas64_2e174m3_3limbs/freezeDisplay.v
deleted file mode 100644
index e8617e777..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e174m3_3limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e174m3_3limbs/py_interpreter.sh b/src/Specific/solinas64_2e174m3_3limbs/py_interpreter.sh
deleted file mode 100755
index 14104f66b..000000000
--- a/src/Specific/solinas64_2e174m3_3limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**174 - 3' -Dmodulus_bytes='58' -Da24='121665'
diff --git a/src/Specific/solinas64_2e174m3_4limbs/CurveParameters.v b/src/Specific/solinas64_2e174m3_4limbs/CurveParameters.v
deleted file mode 100644
index b35461a1c..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^174 - 3
-Base: 43.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 43 + 1/2;
- bitwidth := 64;
- s := 2^174;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e174m3_4limbs/Synthesis.v b/src/Specific/solinas64_2e174m3_4limbs/Synthesis.v
deleted file mode 100644
index 0c110733d..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e174m3_4limbs.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/solinas64_2e174m3_4limbs/compiler.sh b/src/Specific/solinas64_2e174m3_4limbs/compiler.sh
deleted file mode 100755
index bccb7be1d..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{44,43,44,43}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<174) - 3' "$@"
diff --git a/src/Specific/solinas64_2e174m3_4limbs/compilerxx.sh b/src/Specific/solinas64_2e174m3_4limbs/compilerxx.sh
deleted file mode 100755
index b86239356..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/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,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{44,43,44,43}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='22' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<174) - 3' "$@"
diff --git a/src/Specific/solinas64_2e174m3_4limbs/feadd.c b/src/Specific/solinas64_2e174m3_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e174m3_4limbs/feadd.v b/src/Specific/solinas64_2e174m3_4limbs/feadd.v
deleted file mode 100644
index a33ac868d..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e174m3_4limbs.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/solinas64_2e174m3_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e174m3_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e174m3_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e174m3_4limbs/feaddDisplay.v
deleted file mode 100644
index 7380232a0..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e174m3_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e174m3_4limbs/fecarry.v b/src/Specific/solinas64_2e174m3_4limbs/fecarry.v
deleted file mode 100644
index af70e7789..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e174m3_4limbs.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/solinas64_2e174m3_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e174m3_4limbs/fecarryDisplay.v
deleted file mode 100644
index 768ef3ebc..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e174m3_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e174m3_4limbs/femul.c b/src/Specific/solinas64_2e174m3_4limbs/femul.c
deleted file mode 100644
index 52e1edeef..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x3 * (0x2 * ((uint128_t)x8 * x14))));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x3 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0x3 * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x2c);
- { uint64_t x21 = ((uint64_t)x19 & 0xfffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x2b);
- { uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x2c);
- { uint64_t x27 = ((uint64_t)x25 & 0xfffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x2b);
- { uint64_t x30 = ((uint64_t)x28 & 0x7ffffffffff);
- { uint64_t x31 = (x21 + (0x3 * x29));
- { uint64_t x32 = (x31 >> 0x2c);
- { uint64_t x33 = (x31 & 0xfffffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x2b);
- { uint64_t x36 = (x34 & 0x7ffffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e174m3_4limbs/femul.v b/src/Specific/solinas64_2e174m3_4limbs/femul.v
deleted file mode 100644
index 3d12ef4fb..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e174m3_4limbs.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/solinas64_2e174m3_4limbs/femulDisplay.log b/src/Specific/solinas64_2e174m3_4limbs/femulDisplay.log
deleted file mode 100644
index 76fa08474..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x3 * (0x2 * ((uint128_t)x8 * x14))));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x3 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0x3 * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x2c);
- uint64_t x21 = ((uint64_t)x19 & 0xfffffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x2b);
- uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x2c);
- uint64_t x27 = ((uint64_t)x25 & 0xfffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x2b);
- uint64_t x30 = ((uint64_t)x28 & 0x7ffffffffff);
- uint64_t x31 = (x21 + (0x3 * x29));
- uint64_t x32 = (x31 >> 0x2c);
- uint64_t x33 = (x31 & 0xfffffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x2b);
- uint64_t x36 = (x34 & 0x7ffffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e174m3_4limbs/femulDisplay.v b/src/Specific/solinas64_2e174m3_4limbs/femulDisplay.v
deleted file mode 100644
index 463cdd1e5..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e174m3_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e174m3_4limbs/fesquare.c b/src/Specific/solinas64_2e174m3_4limbs/fesquare.c
deleted file mode 100644
index 1e3cd6301..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x3 * (0x2 * ((uint128_t)x5 * x5))));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0x3 * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x2c);
- { uint64_t x12 = ((uint64_t)x10 & 0xfffffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint64_t x14 = (uint64_t) (x13 >> 0x2b);
- { uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x2c);
- { uint64_t x18 = ((uint64_t)x16 & 0xfffffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x2b);
- { uint64_t x21 = ((uint64_t)x19 & 0x7ffffffffff);
- { uint64_t x22 = (x12 + (0x3 * x20));
- { uint64_t x23 = (x22 >> 0x2c);
- { uint64_t x24 = (x22 & 0xfffffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x2b);
- { uint64_t x27 = (x25 & 0x7ffffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e174m3_4limbs/fesquare.v b/src/Specific/solinas64_2e174m3_4limbs/fesquare.v
deleted file mode 100644
index 499882fc2..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e174m3_4limbs.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/solinas64_2e174m3_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e174m3_4limbs/fesquareDisplay.log
deleted file mode 100644
index 15d7bc9e3..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x3 * (0x2 * ((uint128_t)x5 * x5))));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0x3 * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- uint64_t x11 = (uint64_t) (x10 >> 0x2c);
- uint64_t x12 = ((uint64_t)x10 & 0xfffffffffff);
- uint128_t x13 = (x11 + x9);
- uint64_t x14 = (uint64_t) (x13 >> 0x2b);
- uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x2c);
- uint64_t x18 = ((uint64_t)x16 & 0xfffffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x2b);
- uint64_t x21 = ((uint64_t)x19 & 0x7ffffffffff);
- uint64_t x22 = (x12 + (0x3 * x20));
- uint64_t x23 = (x22 >> 0x2c);
- uint64_t x24 = (x22 & 0xfffffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x2b);
- uint64_t x27 = (x25 & 0x7ffffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e174m3_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e174m3_4limbs/fesquareDisplay.v
deleted file mode 100644
index aa2711cdd..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e174m3_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e174m3_4limbs/fesub.c b/src/Specific/solinas64_2e174m3_4limbs/fesub.c
deleted file mode 100644
index 6f793d1b7..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x1ffffffffffa + x5) - x11);
- out[1] = ((0xffffffffffe + x7) - x13);
- out[2] = ((0x1ffffffffffe + x9) - x15);
- out[3] = ((0xffffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e174m3_4limbs/fesub.v b/src/Specific/solinas64_2e174m3_4limbs/fesub.v
deleted file mode 100644
index 50612bee4..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e174m3_4limbs.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/solinas64_2e174m3_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e174m3_4limbs/fesubDisplay.log
deleted file mode 100644
index 3ff577966..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0xffffffffffe + x8) - x14), ((0x1ffffffffffe + x9) - x15), ((0xffffffffffe + x7) - x13), ((0x1ffffffffffa + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e174m3_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e174m3_4limbs/fesubDisplay.v
deleted file mode 100644
index 7147b5f1d..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e174m3_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e174m3_4limbs/freeze.c b/src/Specific/solinas64_2e174m3_4limbs/freeze.c
deleted file mode 100644
index 7290bdde4..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffd);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x7ffffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0xfffffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x7ffffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xffffffffffd);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0x7ffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0xfffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x7ffffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e174m3_4limbs/freeze.v b/src/Specific/solinas64_2e174m3_4limbs/freeze.v
deleted file mode 100644
index 12487c4cd..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e174m3_4limbs.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/solinas64_2e174m3_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e174m3_4limbs/freezeDisplay.log
deleted file mode 100644
index 2069a4d3f..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffd);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x7ffffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0xfffffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x7ffffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xffffffffffd);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0x7ffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0xfffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x7ffffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e174m3_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e174m3_4limbs/freezeDisplay.v
deleted file mode 100644
index eef266536..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e174m3_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e174m3_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e174m3_4limbs/py_interpreter.sh
deleted file mode 100755
index bb6ea8adb..000000000
--- a/src/Specific/solinas64_2e174m3_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**174 - 3' -Dmodulus_bytes='43.5' -Da24='121665'
diff --git a/src/Specific/solinas64_2e189m25_4limbs/CurveParameters.v b/src/Specific/solinas64_2e189m25_4limbs/CurveParameters.v
deleted file mode 100644
index a009d1f50..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^189 - 25
-Base: 47.25
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 47 + 1/4;
- bitwidth := 64;
- s := 2^189;
- c := [(1, 25)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e189m25_4limbs/Synthesis.v b/src/Specific/solinas64_2e189m25_4limbs/Synthesis.v
deleted file mode 100644
index 27d696903..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e189m25_4limbs.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/solinas64_2e189m25_4limbs/compiler.sh b/src/Specific/solinas64_2e189m25_4limbs/compiler.sh
deleted file mode 100755
index 22b633572..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,47,47,47}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<189) - 25' "$@"
diff --git a/src/Specific/solinas64_2e189m25_4limbs/compilerxx.sh b/src/Specific/solinas64_2e189m25_4limbs/compilerxx.sh
deleted file mode 100755
index daef72dd6..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,47,47,47}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<189) - 25' "$@"
diff --git a/src/Specific/solinas64_2e189m25_4limbs/feadd.c b/src/Specific/solinas64_2e189m25_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e189m25_4limbs/feadd.v b/src/Specific/solinas64_2e189m25_4limbs/feadd.v
deleted file mode 100644
index 71d5d7027..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e189m25_4limbs.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/solinas64_2e189m25_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e189m25_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e189m25_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e189m25_4limbs/feaddDisplay.v
deleted file mode 100644
index 61214ce4e..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e189m25_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e189m25_4limbs/fecarry.v b/src/Specific/solinas64_2e189m25_4limbs/fecarry.v
deleted file mode 100644
index 680df4a57..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e189m25_4limbs.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/solinas64_2e189m25_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e189m25_4limbs/fecarryDisplay.v
deleted file mode 100644
index 15d71ff68..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e189m25_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e189m25_4limbs/femul.c b/src/Specific/solinas64_2e189m25_4limbs/femul.c
deleted file mode 100644
index a7e14d4be..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + ((0x2 * ((uint128_t)x7 * x15)) + ((0x2 * ((uint128_t)x9 * x13)) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x19 * ((uint128_t)x8 * x14)));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x19 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0x19 * ((0x2 * ((uint128_t)x7 * x14)) + ((0x2 * ((uint128_t)x9 * x15)) + (0x2 * ((uint128_t)x8 * x13))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x30);
- { uint64_t x21 = ((uint64_t)x19 & 0xffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x2f);
- { uint64_t x24 = ((uint64_t)x22 & 0x7fffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x2f);
- { uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x2f);
- { uint64_t x30 = ((uint64_t)x28 & 0x7fffffffffff);
- { uint64_t x31 = (x21 + (0x19 * x29));
- { uint64_t x32 = (x31 >> 0x30);
- { uint64_t x33 = (x31 & 0xffffffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x2f);
- { uint64_t x36 = (x34 & 0x7fffffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e189m25_4limbs/femul.v b/src/Specific/solinas64_2e189m25_4limbs/femul.v
deleted file mode 100644
index 680520e3b..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e189m25_4limbs.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/solinas64_2e189m25_4limbs/femulDisplay.log b/src/Specific/solinas64_2e189m25_4limbs/femulDisplay.log
deleted file mode 100644
index 34b69f899..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + ((0x2 * ((uint128_t)x7 * x15)) + ((0x2 * ((uint128_t)x9 * x13)) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x19 * ((uint128_t)x8 * x14)));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x19 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0x19 * ((0x2 * ((uint128_t)x7 * x14)) + ((0x2 * ((uint128_t)x9 * x15)) + (0x2 * ((uint128_t)x8 * x13))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x30);
- uint64_t x21 = ((uint64_t)x19 & 0xffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x2f);
- uint64_t x24 = ((uint64_t)x22 & 0x7fffffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x2f);
- uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x2f);
- uint64_t x30 = ((uint64_t)x28 & 0x7fffffffffff);
- uint64_t x31 = (x21 + (0x19 * x29));
- uint64_t x32 = (x31 >> 0x30);
- uint64_t x33 = (x31 & 0xffffffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x2f);
- uint64_t x36 = (x34 & 0x7fffffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e189m25_4limbs/femulDisplay.v b/src/Specific/solinas64_2e189m25_4limbs/femulDisplay.v
deleted file mode 100644
index 54d7d9a16..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e189m25_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e189m25_4limbs/fesquare.c b/src/Specific/solinas64_2e189m25_4limbs/fesquare.c
deleted file mode 100644
index 15fd75f8c..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x19 * ((uint128_t)x5 * x5)));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x19 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0x19 * ((0x2 * ((uint128_t)x4 * x5)) + ((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x5 * x4))))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x30);
- { uint64_t x12 = ((uint64_t)x10 & 0xffffffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint64_t x14 = (uint64_t) (x13 >> 0x2f);
- { uint64_t x15 = ((uint64_t)x13 & 0x7fffffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x2f);
- { uint64_t x18 = ((uint64_t)x16 & 0x7fffffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x2f);
- { uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffff);
- { uint64_t x22 = (x12 + (0x19 * x20));
- { uint64_t x23 = (x22 >> 0x30);
- { uint64_t x24 = (x22 & 0xffffffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x2f);
- { uint64_t x27 = (x25 & 0x7fffffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e189m25_4limbs/fesquare.v b/src/Specific/solinas64_2e189m25_4limbs/fesquare.v
deleted file mode 100644
index 3f9c93227..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e189m25_4limbs.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/solinas64_2e189m25_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e189m25_4limbs/fesquareDisplay.log
deleted file mode 100644
index bda32cda6..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x19 * ((uint128_t)x5 * x5)));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x19 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0x19 * ((0x2 * ((uint128_t)x4 * x5)) + ((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x5 * x4))))));
- uint64_t x11 = (uint64_t) (x10 >> 0x30);
- uint64_t x12 = ((uint64_t)x10 & 0xffffffffffff);
- uint128_t x13 = (x11 + x9);
- uint64_t x14 = (uint64_t) (x13 >> 0x2f);
- uint64_t x15 = ((uint64_t)x13 & 0x7fffffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x2f);
- uint64_t x18 = ((uint64_t)x16 & 0x7fffffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x2f);
- uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffff);
- uint64_t x22 = (x12 + (0x19 * x20));
- uint64_t x23 = (x22 >> 0x30);
- uint64_t x24 = (x22 & 0xffffffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x2f);
- uint64_t x27 = (x25 & 0x7fffffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e189m25_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e189m25_4limbs/fesquareDisplay.v
deleted file mode 100644
index 754a017fb..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e189m25_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e189m25_4limbs/fesub.c b/src/Specific/solinas64_2e189m25_4limbs/fesub.c
deleted file mode 100644
index 3e5bf08f3..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x1ffffffffffce + x5) - x11);
- out[1] = ((0xfffffffffffe + x7) - x13);
- out[2] = ((0xfffffffffffe + x9) - x15);
- out[3] = ((0xfffffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e189m25_4limbs/fesub.v b/src/Specific/solinas64_2e189m25_4limbs/fesub.v
deleted file mode 100644
index e896ae756..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e189m25_4limbs.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/solinas64_2e189m25_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e189m25_4limbs/fesubDisplay.log
deleted file mode 100644
index f67ee56fe..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0xfffffffffffe + x8) - x14), ((0xfffffffffffe + x9) - x15), ((0xfffffffffffe + x7) - x13), ((0x1ffffffffffce + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e189m25_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e189m25_4limbs/fesubDisplay.v
deleted file mode 100644
index 1f898dd03..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e189m25_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e189m25_4limbs/freeze.c b/src/Specific/solinas64_2e189m25_4limbs/freeze.c
deleted file mode 100644
index 45ab54c8d..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffe7);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x7fffffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x7fffffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x7fffffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xffffffffffe7);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0x7fffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0x7fffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x7fffffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e189m25_4limbs/freeze.v b/src/Specific/solinas64_2e189m25_4limbs/freeze.v
deleted file mode 100644
index 3de96986a..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e189m25_4limbs.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/solinas64_2e189m25_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e189m25_4limbs/freezeDisplay.log
deleted file mode 100644
index 459e8b8d2..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffe7);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x7fffffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x7fffffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x7fffffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xffffffffffe7);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0x7fffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0x7fffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x7fffffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e189m25_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e189m25_4limbs/freezeDisplay.v
deleted file mode 100644
index 3f3dcb217..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e189m25_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e189m25_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e189m25_4limbs/py_interpreter.sh
deleted file mode 100755
index 77b176a54..000000000
--- a/src/Specific/solinas64_2e189m25_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**189 - 25' -Dmodulus_bytes='47.25' -Da24='121665'
diff --git a/src/Specific/solinas64_2e189m25_5limbs/CurveParameters.v b/src/Specific/solinas64_2e189m25_5limbs/CurveParameters.v
deleted file mode 100644
index e15ca8a6a..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^189 - 25
-Base: 37.8
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 37 + 4/5;
- bitwidth := 64;
- s := 2^189;
- c := [(1, 25)];
- carry_chains := Some [seq 0 (pred 5); [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/solinas64_2e189m25_5limbs/Synthesis.v b/src/Specific/solinas64_2e189m25_5limbs/Synthesis.v
deleted file mode 100644
index ff3bd638f..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e189m25_5limbs.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/solinas64_2e189m25_5limbs/compiler.sh b/src/Specific/solinas64_2e189m25_5limbs/compiler.sh
deleted file mode 100755
index c171ed386..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{38,38,38,38,37}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<189) - 25' "$@"
diff --git a/src/Specific/solinas64_2e189m25_5limbs/compilerxx.sh b/src/Specific/solinas64_2e189m25_5limbs/compilerxx.sh
deleted file mode 100755
index 493674662..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{38,38,38,38,37}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<189) - 25' "$@"
diff --git a/src/Specific/solinas64_2e189m25_5limbs/feadd.c b/src/Specific/solinas64_2e189m25_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e189m25_5limbs/feadd.v b/src/Specific/solinas64_2e189m25_5limbs/feadd.v
deleted file mode 100644
index 52c643e32..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e189m25_5limbs.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/solinas64_2e189m25_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e189m25_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e189m25_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e189m25_5limbs/feaddDisplay.v
deleted file mode 100644
index e70553b7d..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e189m25_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e189m25_5limbs/fecarry.v b/src/Specific/solinas64_2e189m25_5limbs/fecarry.v
deleted file mode 100644
index 959513ffa..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e189m25_5limbs.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/solinas64_2e189m25_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e189m25_5limbs/fecarryDisplay.v
deleted file mode 100644
index 0e7857d63..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e189m25_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e189m25_5limbs/femul.c b/src/Specific/solinas64_2e189m25_5limbs/femul.c
deleted file mode 100644
index bc2964482..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint128_t x20 = (((uint128_t)x5 * x18) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + (((uint128_t)x11 * x15) + ((uint128_t)x10 * x13)))));
- { uint128_t x21 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + (((uint128_t)x9 * x15) + ((uint128_t)x11 * x13)))) + (0x19 * (0x2 * ((uint128_t)x10 * x18))));
- { uint128_t x22 = ((((uint128_t)x5 * x17) + (((uint128_t)x7 * x15) + ((uint128_t)x9 * x13))) + (0x19 * ((0x2 * ((uint128_t)x11 * x18)) + (0x2 * ((uint128_t)x10 * x19)))));
- { uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x19 * ((0x2 * ((uint128_t)x9 * x18)) + ((0x2 * ((uint128_t)x11 * x19)) + (0x2 * ((uint128_t)x10 * x17))))));
- { uint128_t x24 = (((uint128_t)x5 * x13) + (0x19 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- { uint64_t x25 = (uint64_t) (x24 >> 0x26);
- { uint64_t x26 = ((uint64_t)x24 & 0x3fffffffff);
- { uint128_t x27 = (x25 + x23);
- { uint64_t x28 = (uint64_t) (x27 >> 0x26);
- { uint64_t x29 = ((uint64_t)x27 & 0x3fffffffff);
- { uint128_t x30 = (x28 + x22);
- { uint64_t x31 = (uint64_t) (x30 >> 0x26);
- { uint64_t x32 = ((uint64_t)x30 & 0x3fffffffff);
- { uint128_t x33 = (x31 + x21);
- { uint64_t x34 = (uint64_t) (x33 >> 0x26);
- { uint64_t x35 = ((uint64_t)x33 & 0x3fffffffff);
- { uint128_t x36 = (x34 + x20);
- { uint64_t x37 = (uint64_t) (x36 >> 0x25);
- { uint64_t x38 = ((uint64_t)x36 & 0x1fffffffff);
- { uint64_t x39 = (x26 + (0x19 * x37));
- { uint64_t x40 = (x39 >> 0x26);
- { uint64_t x41 = (x39 & 0x3fffffffff);
- { uint64_t x42 = (x40 + x29);
- { uint64_t x43 = (x42 >> 0x26);
- { uint64_t x44 = (x42 & 0x3fffffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e189m25_5limbs/femul.v b/src/Specific/solinas64_2e189m25_5limbs/femul.v
deleted file mode 100644
index a7e6792b0..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e189m25_5limbs.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/solinas64_2e189m25_5limbs/femulDisplay.log b/src/Specific/solinas64_2e189m25_5limbs/femulDisplay.log
deleted file mode 100644
index 4678a91f4..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = (((uint128_t)x5 * x18) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + (((uint128_t)x11 * x15) + ((uint128_t)x10 * x13)))));
- uint128_t x21 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + (((uint128_t)x9 * x15) + ((uint128_t)x11 * x13)))) + (0x19 * (0x2 * ((uint128_t)x10 * x18))));
- uint128_t x22 = ((((uint128_t)x5 * x17) + (((uint128_t)x7 * x15) + ((uint128_t)x9 * x13))) + (0x19 * ((0x2 * ((uint128_t)x11 * x18)) + (0x2 * ((uint128_t)x10 * x19)))));
- uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x19 * ((0x2 * ((uint128_t)x9 * x18)) + ((0x2 * ((uint128_t)x11 * x19)) + (0x2 * ((uint128_t)x10 * x17))))));
- uint128_t x24 = (((uint128_t)x5 * x13) + (0x19 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- uint64_t x25 = (uint64_t) (x24 >> 0x26);
- uint64_t x26 = ((uint64_t)x24 & 0x3fffffffff);
- uint128_t x27 = (x25 + x23);
- uint64_t x28 = (uint64_t) (x27 >> 0x26);
- uint64_t x29 = ((uint64_t)x27 & 0x3fffffffff);
- uint128_t x30 = (x28 + x22);
- uint64_t x31 = (uint64_t) (x30 >> 0x26);
- uint64_t x32 = ((uint64_t)x30 & 0x3fffffffff);
- uint128_t x33 = (x31 + x21);
- uint64_t x34 = (uint64_t) (x33 >> 0x26);
- uint64_t x35 = ((uint64_t)x33 & 0x3fffffffff);
- uint128_t x36 = (x34 + x20);
- uint64_t x37 = (uint64_t) (x36 >> 0x25);
- uint64_t x38 = ((uint64_t)x36 & 0x1fffffffff);
- uint64_t x39 = (x26 + (0x19 * x37));
- uint64_t x40 = (x39 >> 0x26);
- uint64_t x41 = (x39 & 0x3fffffffff);
- uint64_t x42 = (x40 + x29);
- uint64_t x43 = (x42 >> 0x26);
- uint64_t x44 = (x42 & 0x3fffffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e189m25_5limbs/femulDisplay.v b/src/Specific/solinas64_2e189m25_5limbs/femulDisplay.v
deleted file mode 100644
index 2f61965d4..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e189m25_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e189m25_5limbs/fesquare.c b/src/Specific/solinas64_2e189m25_5limbs/fesquare.c
deleted file mode 100644
index 950f813f1..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x9 = (((uint128_t)x2 * x7) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x7 * x2)))));
- { uint128_t x10 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x19 * (0x2 * ((uint128_t)x7 * x7))));
- { uint128_t x11 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x19 * ((0x2 * ((uint128_t)x8 * x7)) + (0x2 * ((uint128_t)x7 * x8)))));
- { uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x19 * ((0x2 * ((uint128_t)x6 * x7)) + ((0x2 * ((uint128_t)x8 * x8)) + (0x2 * ((uint128_t)x7 * x6))))));
- { uint128_t x13 = (((uint128_t)x2 * x2) + (0x19 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- { uint64_t x14 = (uint64_t) (x13 >> 0x26);
- { uint64_t x15 = ((uint64_t)x13 & 0x3fffffffff);
- { uint128_t x16 = (x14 + x12);
- { uint64_t x17 = (uint64_t) (x16 >> 0x26);
- { uint64_t x18 = ((uint64_t)x16 & 0x3fffffffff);
- { uint128_t x19 = (x17 + x11);
- { uint64_t x20 = (uint64_t) (x19 >> 0x26);
- { uint64_t x21 = ((uint64_t)x19 & 0x3fffffffff);
- { uint128_t x22 = (x20 + x10);
- { uint64_t x23 = (uint64_t) (x22 >> 0x26);
- { uint64_t x24 = ((uint64_t)x22 & 0x3fffffffff);
- { uint128_t x25 = (x23 + x9);
- { uint64_t x26 = (uint64_t) (x25 >> 0x25);
- { uint64_t x27 = ((uint64_t)x25 & 0x1fffffffff);
- { uint64_t x28 = (x15 + (0x19 * x26));
- { uint64_t x29 = (x28 >> 0x26);
- { uint64_t x30 = (x28 & 0x3fffffffff);
- { uint64_t x31 = (x29 + x18);
- { uint64_t x32 = (x31 >> 0x26);
- { uint64_t x33 = (x31 & 0x3fffffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e189m25_5limbs/fesquare.v b/src/Specific/solinas64_2e189m25_5limbs/fesquare.v
deleted file mode 100644
index 36b916d1d..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e189m25_5limbs.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/solinas64_2e189m25_5limbs/fesquareDisplay.log b/src/Specific/solinas64_2e189m25_5limbs/fesquareDisplay.log
deleted file mode 100644
index 5721be1a5..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint128_t x9 = (((uint128_t)x2 * x7) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x7 * x2)))));
- uint128_t x10 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x19 * (0x2 * ((uint128_t)x7 * x7))));
- uint128_t x11 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x19 * ((0x2 * ((uint128_t)x8 * x7)) + (0x2 * ((uint128_t)x7 * x8)))));
- uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x19 * ((0x2 * ((uint128_t)x6 * x7)) + ((0x2 * ((uint128_t)x8 * x8)) + (0x2 * ((uint128_t)x7 * x6))))));
- uint128_t x13 = (((uint128_t)x2 * x2) + (0x19 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- uint64_t x14 = (uint64_t) (x13 >> 0x26);
- uint64_t x15 = ((uint64_t)x13 & 0x3fffffffff);
- uint128_t x16 = (x14 + x12);
- uint64_t x17 = (uint64_t) (x16 >> 0x26);
- uint64_t x18 = ((uint64_t)x16 & 0x3fffffffff);
- uint128_t x19 = (x17 + x11);
- uint64_t x20 = (uint64_t) (x19 >> 0x26);
- uint64_t x21 = ((uint64_t)x19 & 0x3fffffffff);
- uint128_t x22 = (x20 + x10);
- uint64_t x23 = (uint64_t) (x22 >> 0x26);
- uint64_t x24 = ((uint64_t)x22 & 0x3fffffffff);
- uint128_t x25 = (x23 + x9);
- uint64_t x26 = (uint64_t) (x25 >> 0x25);
- uint64_t x27 = ((uint64_t)x25 & 0x1fffffffff);
- uint64_t x28 = (x15 + (0x19 * x26));
- uint64_t x29 = (x28 >> 0x26);
- uint64_t x30 = (x28 & 0x3fffffffff);
- uint64_t x31 = (x29 + x18);
- uint64_t x32 = (x31 >> 0x26);
- uint64_t x33 = (x31 & 0x3fffffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e189m25_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e189m25_5limbs/fesquareDisplay.v
deleted file mode 100644
index d9773598d..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e189m25_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e189m25_5limbs/fesub.c b/src/Specific/solinas64_2e189m25_5limbs/fesub.c
deleted file mode 100644
index ce859c6d9..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0x7fffffffce + x5) - x13);
- out[1] = ((0x7ffffffffe + x7) - x15);
- out[2] = ((0x7ffffffffe + x9) - x17);
- out[3] = ((0x7ffffffffe + x11) - x19);
- out[4] = ((0x3ffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e189m25_5limbs/fesub.v b/src/Specific/solinas64_2e189m25_5limbs/fesub.v
deleted file mode 100644
index c03264279..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e189m25_5limbs.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/solinas64_2e189m25_5limbs/fesubDisplay.log b/src/Specific/solinas64_2e189m25_5limbs/fesubDisplay.log
deleted file mode 100644
index a2562fa02..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0x3ffffffffe + x10) - x18), ((0x7ffffffffe + x11) - x19), ((0x7ffffffffe + x9) - x17), ((0x7ffffffffe + x7) - x15), ((0x7fffffffce + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e189m25_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e189m25_5limbs/fesubDisplay.v
deleted file mode 100644
index 76beb23ce..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e189m25_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e189m25_5limbs/freeze.c b/src/Specific/solinas64_2e189m25_5limbs/freeze.c
deleted file mode 100644
index 9fefdac0a..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffe7);
- { uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x3fffffffff);
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x3fffffffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x3fffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x1fffffffff);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0x3fffffffe7);
- { uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint64_t x29 = (x24 & 0x3fffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint64_t x33 = (x24 & 0x3fffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint64_t x37 = (x24 & 0x3fffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint64_t x41 = (x24 & 0x1fffffffff);
- { uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e189m25_5limbs/freeze.v b/src/Specific/solinas64_2e189m25_5limbs/freeze.v
deleted file mode 100644
index 1e374eacb..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e189m25_5limbs.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/solinas64_2e189m25_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e189m25_5limbs/freezeDisplay.log
deleted file mode 100644
index 4e94d533c..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffe7);
- uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x3fffffffff);
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x3fffffffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x3fffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x1fffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0x3fffffffe7);
- uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint64_t x29 = (x24 & 0x3fffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint64_t x33 = (x24 & 0x3fffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint64_t x37 = (x24 & 0x3fffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint64_t x41 = (x24 & 0x1fffffffff);
- uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e189m25_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e189m25_5limbs/freezeDisplay.v
deleted file mode 100644
index a3d885bbc..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e189m25_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e189m25_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e189m25_5limbs/py_interpreter.sh
deleted file mode 100755
index 6e1df8f40..000000000
--- a/src/Specific/solinas64_2e189m25_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**189 - 25' -Dmodulus_bytes='37.8' -Da24='121665'
diff --git a/src/Specific/solinas64_2e190m11_4limbs/CurveParameters.v b/src/Specific/solinas64_2e190m11_4limbs/CurveParameters.v
deleted file mode 100644
index 75a2918dd..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^190 - 11
-Base: 47.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 47 + 1/2;
- bitwidth := 64;
- s := 2^190;
- c := [(1, 11)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e190m11_4limbs/Synthesis.v b/src/Specific/solinas64_2e190m11_4limbs/Synthesis.v
deleted file mode 100644
index a81beda45..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e190m11_4limbs.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/solinas64_2e190m11_4limbs/compiler.sh b/src/Specific/solinas64_2e190m11_4limbs/compiler.sh
deleted file mode 100755
index 85daa6611..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,47,48,47}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<190) - 11' "$@"
diff --git a/src/Specific/solinas64_2e190m11_4limbs/compilerxx.sh b/src/Specific/solinas64_2e190m11_4limbs/compilerxx.sh
deleted file mode 100755
index 0c00281e0..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,47,48,47}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<190) - 11' "$@"
diff --git a/src/Specific/solinas64_2e190m11_4limbs/feadd.c b/src/Specific/solinas64_2e190m11_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e190m11_4limbs/feadd.v b/src/Specific/solinas64_2e190m11_4limbs/feadd.v
deleted file mode 100644
index 8442d7063..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e190m11_4limbs.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/solinas64_2e190m11_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e190m11_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e190m11_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e190m11_4limbs/feaddDisplay.v
deleted file mode 100644
index 6bd7b21c1..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e190m11_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e190m11_4limbs/fecarry.v b/src/Specific/solinas64_2e190m11_4limbs/fecarry.v
deleted file mode 100644
index e0f7f06de..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e190m11_4limbs.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/solinas64_2e190m11_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e190m11_4limbs/fecarryDisplay.v
deleted file mode 100644
index 0081fdfed..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e190m11_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e190m11_4limbs/femul.c b/src/Specific/solinas64_2e190m11_4limbs/femul.c
deleted file mode 100644
index 280a7eb48..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0xb * (0x2 * ((uint128_t)x8 * x14))));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0xb * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0xb * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x30);
- { uint64_t x21 = ((uint64_t)x19 & 0xffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x2f);
- { uint64_t x24 = ((uint64_t)x22 & 0x7fffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x30);
- { uint64_t x27 = ((uint64_t)x25 & 0xffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x2f);
- { uint64_t x30 = ((uint64_t)x28 & 0x7fffffffffff);
- { uint64_t x31 = (x21 + (0xb * x29));
- { uint64_t x32 = (x31 >> 0x30);
- { uint64_t x33 = (x31 & 0xffffffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x2f);
- { uint64_t x36 = (x34 & 0x7fffffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e190m11_4limbs/femul.v b/src/Specific/solinas64_2e190m11_4limbs/femul.v
deleted file mode 100644
index 008cab5bc..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e190m11_4limbs.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/solinas64_2e190m11_4limbs/femulDisplay.log b/src/Specific/solinas64_2e190m11_4limbs/femulDisplay.log
deleted file mode 100644
index 3ed92c4a1..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0xb * (0x2 * ((uint128_t)x8 * x14))));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0xb * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0xb * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x30);
- uint64_t x21 = ((uint64_t)x19 & 0xffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x2f);
- uint64_t x24 = ((uint64_t)x22 & 0x7fffffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x30);
- uint64_t x27 = ((uint64_t)x25 & 0xffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x2f);
- uint64_t x30 = ((uint64_t)x28 & 0x7fffffffffff);
- uint64_t x31 = (x21 + (0xb * x29));
- uint64_t x32 = (x31 >> 0x30);
- uint64_t x33 = (x31 & 0xffffffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x2f);
- uint64_t x36 = (x34 & 0x7fffffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e190m11_4limbs/femulDisplay.v b/src/Specific/solinas64_2e190m11_4limbs/femulDisplay.v
deleted file mode 100644
index 1c2e767b5..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e190m11_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e190m11_4limbs/fesquare.c b/src/Specific/solinas64_2e190m11_4limbs/fesquare.c
deleted file mode 100644
index b06d07e9d..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0xb * (0x2 * ((uint128_t)x5 * x5))));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xb * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0xb * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x30);
- { uint64_t x12 = ((uint64_t)x10 & 0xffffffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint64_t x14 = (uint64_t) (x13 >> 0x2f);
- { uint64_t x15 = ((uint64_t)x13 & 0x7fffffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x30);
- { uint64_t x18 = ((uint64_t)x16 & 0xffffffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x2f);
- { uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffff);
- { uint64_t x22 = (x12 + (0xb * x20));
- { uint64_t x23 = (x22 >> 0x30);
- { uint64_t x24 = (x22 & 0xffffffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x2f);
- { uint64_t x27 = (x25 & 0x7fffffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e190m11_4limbs/fesquare.v b/src/Specific/solinas64_2e190m11_4limbs/fesquare.v
deleted file mode 100644
index a00ea4dc4..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e190m11_4limbs.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/solinas64_2e190m11_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e190m11_4limbs/fesquareDisplay.log
deleted file mode 100644
index b30c6e136..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0xb * (0x2 * ((uint128_t)x5 * x5))));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xb * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0xb * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- uint64_t x11 = (uint64_t) (x10 >> 0x30);
- uint64_t x12 = ((uint64_t)x10 & 0xffffffffffff);
- uint128_t x13 = (x11 + x9);
- uint64_t x14 = (uint64_t) (x13 >> 0x2f);
- uint64_t x15 = ((uint64_t)x13 & 0x7fffffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x30);
- uint64_t x18 = ((uint64_t)x16 & 0xffffffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x2f);
- uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffff);
- uint64_t x22 = (x12 + (0xb * x20));
- uint64_t x23 = (x22 >> 0x30);
- uint64_t x24 = (x22 & 0xffffffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x2f);
- uint64_t x27 = (x25 & 0x7fffffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e190m11_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e190m11_4limbs/fesquareDisplay.v
deleted file mode 100644
index 5d9637336..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e190m11_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e190m11_4limbs/fesub.c b/src/Specific/solinas64_2e190m11_4limbs/fesub.c
deleted file mode 100644
index e75f3c5d7..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x1ffffffffffea + x5) - x11);
- out[1] = ((0xfffffffffffe + x7) - x13);
- out[2] = ((0x1fffffffffffe + x9) - x15);
- out[3] = ((0xfffffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e190m11_4limbs/fesub.v b/src/Specific/solinas64_2e190m11_4limbs/fesub.v
deleted file mode 100644
index 585f9a57e..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e190m11_4limbs.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/solinas64_2e190m11_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e190m11_4limbs/fesubDisplay.log
deleted file mode 100644
index 05c4a769d..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0xfffffffffffe + x8) - x14), ((0x1fffffffffffe + x9) - x15), ((0xfffffffffffe + x7) - x13), ((0x1ffffffffffea + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e190m11_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e190m11_4limbs/fesubDisplay.v
deleted file mode 100644
index 53c22f723..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e190m11_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e190m11_4limbs/freeze.c b/src/Specific/solinas64_2e190m11_4limbs/freeze.c
deleted file mode 100644
index 7a7c45793..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffff5);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x7fffffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0xffffffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x7fffffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xfffffffffff5);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0x7fffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0xffffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x7fffffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e190m11_4limbs/freeze.v b/src/Specific/solinas64_2e190m11_4limbs/freeze.v
deleted file mode 100644
index 2e9c6aea8..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e190m11_4limbs.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/solinas64_2e190m11_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e190m11_4limbs/freezeDisplay.log
deleted file mode 100644
index d0480da0c..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffff5);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x7fffffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0xffffffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x7fffffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xfffffffffff5);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0x7fffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0xffffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x7fffffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e190m11_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e190m11_4limbs/freezeDisplay.v
deleted file mode 100644
index 0c92458c4..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e190m11_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e190m11_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e190m11_4limbs/py_interpreter.sh
deleted file mode 100755
index 7d9af983a..000000000
--- a/src/Specific/solinas64_2e190m11_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**190 - 11' -Dmodulus_bytes='47.5' -Da24='121665'
diff --git a/src/Specific/solinas64_2e190m11_5limbs/CurveParameters.v b/src/Specific/solinas64_2e190m11_5limbs/CurveParameters.v
deleted file mode 100644
index baf8c752f..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^190 - 11
-Base: 38
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 38;
- bitwidth := 64;
- s := 2^190;
- c := [(1, 11)];
- carry_chains := Some [seq 0 (pred 5); [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/solinas64_2e190m11_5limbs/Synthesis.v b/src/Specific/solinas64_2e190m11_5limbs/Synthesis.v
deleted file mode 100644
index 3628c5a58..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e190m11_5limbs.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/solinas64_2e190m11_5limbs/compiler.sh b/src/Specific/solinas64_2e190m11_5limbs/compiler.sh
deleted file mode 100755
index f8a6549a7..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{38,38,38,38,38}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<190) - 11' "$@"
diff --git a/src/Specific/solinas64_2e190m11_5limbs/compilerxx.sh b/src/Specific/solinas64_2e190m11_5limbs/compilerxx.sh
deleted file mode 100755
index d85f5e87d..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{38,38,38,38,38}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf5}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<190) - 11' "$@"
diff --git a/src/Specific/solinas64_2e190m11_5limbs/feadd.c b/src/Specific/solinas64_2e190m11_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e190m11_5limbs/feadd.v b/src/Specific/solinas64_2e190m11_5limbs/feadd.v
deleted file mode 100644
index 3e63275b3..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e190m11_5limbs.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/solinas64_2e190m11_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e190m11_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e190m11_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e190m11_5limbs/feaddDisplay.v
deleted file mode 100644
index aad337e14..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e190m11_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e190m11_5limbs/fecarry.v b/src/Specific/solinas64_2e190m11_5limbs/fecarry.v
deleted file mode 100644
index ffe519931..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e190m11_5limbs.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/solinas64_2e190m11_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e190m11_5limbs/fecarryDisplay.v
deleted file mode 100644
index 6dc1cde6f..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e190m11_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e190m11_5limbs/femul.c b/src/Specific/solinas64_2e190m11_5limbs/femul.c
deleted file mode 100644
index 8053edd64..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint128_t x20 = (((uint128_t)x5 * x18) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + (((uint128_t)x11 * x15) + ((uint128_t)x10 * x13)))));
- { uint128_t x21 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + (((uint128_t)x9 * x15) + ((uint128_t)x11 * x13)))) + (0xb * ((uint128_t)x10 * x18)));
- { uint128_t x22 = ((((uint128_t)x5 * x17) + (((uint128_t)x7 * x15) + ((uint128_t)x9 * x13))) + (0xb * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- { uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0xb * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- { uint128_t x24 = (((uint128_t)x5 * x13) + (0xb * (((uint128_t)x7 * x18) + (((uint128_t)x9 * x19) + (((uint128_t)x11 * x17) + ((uint128_t)x10 * x15))))));
- { uint64_t x25 = (uint64_t) (x24 >> 0x26);
- { uint64_t x26 = ((uint64_t)x24 & 0x3fffffffff);
- { uint128_t x27 = (x25 + x23);
- { uint64_t x28 = (uint64_t) (x27 >> 0x26);
- { uint64_t x29 = ((uint64_t)x27 & 0x3fffffffff);
- { uint128_t x30 = (x28 + x22);
- { uint64_t x31 = (uint64_t) (x30 >> 0x26);
- { uint64_t x32 = ((uint64_t)x30 & 0x3fffffffff);
- { uint128_t x33 = (x31 + x21);
- { uint64_t x34 = (uint64_t) (x33 >> 0x26);
- { uint64_t x35 = ((uint64_t)x33 & 0x3fffffffff);
- { uint128_t x36 = (x34 + x20);
- { uint64_t x37 = (uint64_t) (x36 >> 0x26);
- { uint64_t x38 = ((uint64_t)x36 & 0x3fffffffff);
- { uint64_t x39 = (x26 + (0xb * x37));
- { uint64_t x40 = (x39 >> 0x26);
- { uint64_t x41 = (x39 & 0x3fffffffff);
- { uint64_t x42 = (x40 + x29);
- { uint64_t x43 = (x42 >> 0x26);
- { uint64_t x44 = (x42 & 0x3fffffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e190m11_5limbs/femul.v b/src/Specific/solinas64_2e190m11_5limbs/femul.v
deleted file mode 100644
index f2d57058e..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e190m11_5limbs.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/solinas64_2e190m11_5limbs/femulDisplay.log b/src/Specific/solinas64_2e190m11_5limbs/femulDisplay.log
deleted file mode 100644
index eb18d10be..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = (((uint128_t)x5 * x18) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + (((uint128_t)x11 * x15) + ((uint128_t)x10 * x13)))));
- uint128_t x21 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + (((uint128_t)x9 * x15) + ((uint128_t)x11 * x13)))) + (0xb * ((uint128_t)x10 * x18)));
- uint128_t x22 = ((((uint128_t)x5 * x17) + (((uint128_t)x7 * x15) + ((uint128_t)x9 * x13))) + (0xb * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0xb * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- uint128_t x24 = (((uint128_t)x5 * x13) + (0xb * (((uint128_t)x7 * x18) + (((uint128_t)x9 * x19) + (((uint128_t)x11 * x17) + ((uint128_t)x10 * x15))))));
- uint64_t x25 = (uint64_t) (x24 >> 0x26);
- uint64_t x26 = ((uint64_t)x24 & 0x3fffffffff);
- uint128_t x27 = (x25 + x23);
- uint64_t x28 = (uint64_t) (x27 >> 0x26);
- uint64_t x29 = ((uint64_t)x27 & 0x3fffffffff);
- uint128_t x30 = (x28 + x22);
- uint64_t x31 = (uint64_t) (x30 >> 0x26);
- uint64_t x32 = ((uint64_t)x30 & 0x3fffffffff);
- uint128_t x33 = (x31 + x21);
- uint64_t x34 = (uint64_t) (x33 >> 0x26);
- uint64_t x35 = ((uint64_t)x33 & 0x3fffffffff);
- uint128_t x36 = (x34 + x20);
- uint64_t x37 = (uint64_t) (x36 >> 0x26);
- uint64_t x38 = ((uint64_t)x36 & 0x3fffffffff);
- uint64_t x39 = (x26 + (0xb * x37));
- uint64_t x40 = (x39 >> 0x26);
- uint64_t x41 = (x39 & 0x3fffffffff);
- uint64_t x42 = (x40 + x29);
- uint64_t x43 = (x42 >> 0x26);
- uint64_t x44 = (x42 & 0x3fffffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e190m11_5limbs/femulDisplay.v b/src/Specific/solinas64_2e190m11_5limbs/femulDisplay.v
deleted file mode 100644
index 9ca742bef..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e190m11_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e190m11_5limbs/fesquare.c b/src/Specific/solinas64_2e190m11_5limbs/fesquare.c
deleted file mode 100644
index 208640ea7..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x9 = (((uint128_t)x2 * x7) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x7 * x2)))));
- { uint128_t x10 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0xb * ((uint128_t)x7 * x7)));
- { uint128_t x11 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0xb * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- { uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xb * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- { uint128_t x13 = (((uint128_t)x2 * x2) + (0xb * (((uint128_t)x4 * x7) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((uint128_t)x7 * x4))))));
- { uint64_t x14 = (uint64_t) (x13 >> 0x26);
- { uint64_t x15 = ((uint64_t)x13 & 0x3fffffffff);
- { uint128_t x16 = (x14 + x12);
- { uint64_t x17 = (uint64_t) (x16 >> 0x26);
- { uint64_t x18 = ((uint64_t)x16 & 0x3fffffffff);
- { uint128_t x19 = (x17 + x11);
- { uint64_t x20 = (uint64_t) (x19 >> 0x26);
- { uint64_t x21 = ((uint64_t)x19 & 0x3fffffffff);
- { uint128_t x22 = (x20 + x10);
- { uint64_t x23 = (uint64_t) (x22 >> 0x26);
- { uint64_t x24 = ((uint64_t)x22 & 0x3fffffffff);
- { uint128_t x25 = (x23 + x9);
- { uint64_t x26 = (uint64_t) (x25 >> 0x26);
- { uint64_t x27 = ((uint64_t)x25 & 0x3fffffffff);
- { uint64_t x28 = (x15 + (0xb * x26));
- { uint64_t x29 = (x28 >> 0x26);
- { uint64_t x30 = (x28 & 0x3fffffffff);
- { uint64_t x31 = (x29 + x18);
- { uint64_t x32 = (x31 >> 0x26);
- { uint64_t x33 = (x31 & 0x3fffffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e190m11_5limbs/fesquare.v b/src/Specific/solinas64_2e190m11_5limbs/fesquare.v
deleted file mode 100644
index 7f38953ea..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e190m11_5limbs.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/solinas64_2e190m11_5limbs/fesquareDisplay.log b/src/Specific/solinas64_2e190m11_5limbs/fesquareDisplay.log
deleted file mode 100644
index 7bad0bed4..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint128_t x9 = (((uint128_t)x2 * x7) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x7 * x2)))));
- uint128_t x10 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0xb * ((uint128_t)x7 * x7)));
- uint128_t x11 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0xb * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xb * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- uint128_t x13 = (((uint128_t)x2 * x2) + (0xb * (((uint128_t)x4 * x7) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((uint128_t)x7 * x4))))));
- uint64_t x14 = (uint64_t) (x13 >> 0x26);
- uint64_t x15 = ((uint64_t)x13 & 0x3fffffffff);
- uint128_t x16 = (x14 + x12);
- uint64_t x17 = (uint64_t) (x16 >> 0x26);
- uint64_t x18 = ((uint64_t)x16 & 0x3fffffffff);
- uint128_t x19 = (x17 + x11);
- uint64_t x20 = (uint64_t) (x19 >> 0x26);
- uint64_t x21 = ((uint64_t)x19 & 0x3fffffffff);
- uint128_t x22 = (x20 + x10);
- uint64_t x23 = (uint64_t) (x22 >> 0x26);
- uint64_t x24 = ((uint64_t)x22 & 0x3fffffffff);
- uint128_t x25 = (x23 + x9);
- uint64_t x26 = (uint64_t) (x25 >> 0x26);
- uint64_t x27 = ((uint64_t)x25 & 0x3fffffffff);
- uint64_t x28 = (x15 + (0xb * x26));
- uint64_t x29 = (x28 >> 0x26);
- uint64_t x30 = (x28 & 0x3fffffffff);
- uint64_t x31 = (x29 + x18);
- uint64_t x32 = (x31 >> 0x26);
- uint64_t x33 = (x31 & 0x3fffffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e190m11_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e190m11_5limbs/fesquareDisplay.v
deleted file mode 100644
index ec927fdd6..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e190m11_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e190m11_5limbs/fesub.c b/src/Specific/solinas64_2e190m11_5limbs/fesub.c
deleted file mode 100644
index 57eba50a6..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0x7fffffffea + x5) - x13);
- out[1] = ((0x7ffffffffe + x7) - x15);
- out[2] = ((0x7ffffffffe + x9) - x17);
- out[3] = ((0x7ffffffffe + x11) - x19);
- out[4] = ((0x7ffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e190m11_5limbs/fesub.v b/src/Specific/solinas64_2e190m11_5limbs/fesub.v
deleted file mode 100644
index d857970bb..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e190m11_5limbs.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/solinas64_2e190m11_5limbs/fesubDisplay.log b/src/Specific/solinas64_2e190m11_5limbs/fesubDisplay.log
deleted file mode 100644
index bdf3bab02..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0x7ffffffffe + x10) - x18), ((0x7ffffffffe + x11) - x19), ((0x7ffffffffe + x9) - x17), ((0x7ffffffffe + x7) - x15), ((0x7fffffffea + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e190m11_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e190m11_5limbs/fesubDisplay.v
deleted file mode 100644
index bbdb0821b..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e190m11_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e190m11_5limbs/freeze.c b/src/Specific/solinas64_2e190m11_5limbs/freeze.c
deleted file mode 100644
index 54cdd16c8..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffff5);
- { uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x3fffffffff);
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x3fffffffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x3fffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x3fffffffff);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0x3ffffffff5);
- { uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint64_t x29 = (x24 & 0x3fffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint64_t x33 = (x24 & 0x3fffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint64_t x37 = (x24 & 0x3fffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint64_t x41 = (x24 & 0x3fffffffff);
- { uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e190m11_5limbs/freeze.v b/src/Specific/solinas64_2e190m11_5limbs/freeze.v
deleted file mode 100644
index 5e8682472..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e190m11_5limbs.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/solinas64_2e190m11_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e190m11_5limbs/freezeDisplay.log
deleted file mode 100644
index 268a00cfd..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffff5);
- uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x3fffffffff);
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x3fffffffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x3fffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x3fffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0x3ffffffff5);
- uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint64_t x29 = (x24 & 0x3fffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint64_t x33 = (x24 & 0x3fffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint64_t x37 = (x24 & 0x3fffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint64_t x41 = (x24 & 0x3fffffffff);
- uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e190m11_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e190m11_5limbs/freezeDisplay.v
deleted file mode 100644
index 4b9876f5d..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e190m11_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e190m11_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e190m11_5limbs/py_interpreter.sh
deleted file mode 100755
index ce71dfc0a..000000000
--- a/src/Specific/solinas64_2e190m11_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**190 - 11' -Dmodulus_bytes='38' -Da24='121665'
diff --git a/src/Specific/solinas64_2e191m19_4limbs/CurveParameters.v b/src/Specific/solinas64_2e191m19_4limbs/CurveParameters.v
deleted file mode 100644
index 05a177025..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^191 - 19
-Base: 47.75
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 47 + 3/4;
- bitwidth := 64;
- s := 2^191;
- c := [(1, 19)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e191m19_4limbs/Synthesis.v b/src/Specific/solinas64_2e191m19_4limbs/Synthesis.v
deleted file mode 100644
index c80d695c6..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e191m19_4limbs.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/solinas64_2e191m19_4limbs/compiler.sh b/src/Specific/solinas64_2e191m19_4limbs/compiler.sh
deleted file mode 100755
index c4288f133..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,47}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<191) - 19' "$@"
diff --git a/src/Specific/solinas64_2e191m19_4limbs/compilerxx.sh b/src/Specific/solinas64_2e191m19_4limbs/compilerxx.sh
deleted file mode 100755
index 5f8a131ce..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,47}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<191) - 19' "$@"
diff --git a/src/Specific/solinas64_2e191m19_4limbs/feadd.c b/src/Specific/solinas64_2e191m19_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e191m19_4limbs/feadd.v b/src/Specific/solinas64_2e191m19_4limbs/feadd.v
deleted file mode 100644
index a2815d005..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e191m19_4limbs.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/solinas64_2e191m19_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e191m19_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e191m19_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e191m19_4limbs/feaddDisplay.v
deleted file mode 100644
index 55241a049..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e191m19_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e191m19_4limbs/fecarry.v b/src/Specific/solinas64_2e191m19_4limbs/fecarry.v
deleted file mode 100644
index 100702fee..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e191m19_4limbs.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/solinas64_2e191m19_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e191m19_4limbs/fecarryDisplay.v
deleted file mode 100644
index 6541308ca..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e191m19_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e191m19_4limbs/femul.c b/src/Specific/solinas64_2e191m19_4limbs/femul.c
deleted file mode 100644
index bd566ae76..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + (((uint128_t)x7 * x13) + ((uint128_t)x9 * x11))) + (0x13 * (0x2 * ((uint128_t)x8 * x14))));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x13 * ((0x2 * ((uint128_t)x9 * x14)) + (0x2 * ((uint128_t)x8 * x15)))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0x13 * ((0x2 * ((uint128_t)x7 * x14)) + ((0x2 * ((uint128_t)x9 * x15)) + (0x2 * ((uint128_t)x8 * x13))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x30);
- { uint64_t x21 = ((uint64_t)x19 & 0xffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x30);
- { uint64_t x24 = ((uint64_t)x22 & 0xffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x30);
- { uint64_t x27 = ((uint64_t)x25 & 0xffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x2f);
- { uint64_t x30 = ((uint64_t)x28 & 0x7fffffffffff);
- { uint64_t x31 = (x21 + (0x13 * x29));
- { uint64_t x32 = (x31 >> 0x30);
- { uint64_t x33 = (x31 & 0xffffffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x30);
- { uint64_t x36 = (x34 & 0xffffffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e191m19_4limbs/femul.v b/src/Specific/solinas64_2e191m19_4limbs/femul.v
deleted file mode 100644
index 50deba856..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e191m19_4limbs.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/solinas64_2e191m19_4limbs/femulDisplay.log b/src/Specific/solinas64_2e191m19_4limbs/femulDisplay.log
deleted file mode 100644
index 799d6c247..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + (((uint128_t)x7 * x13) + ((uint128_t)x9 * x11))) + (0x13 * (0x2 * ((uint128_t)x8 * x14))));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x13 * ((0x2 * ((uint128_t)x9 * x14)) + (0x2 * ((uint128_t)x8 * x15)))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0x13 * ((0x2 * ((uint128_t)x7 * x14)) + ((0x2 * ((uint128_t)x9 * x15)) + (0x2 * ((uint128_t)x8 * x13))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x30);
- uint64_t x21 = ((uint64_t)x19 & 0xffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x30);
- uint64_t x24 = ((uint64_t)x22 & 0xffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x30);
- uint64_t x27 = ((uint64_t)x25 & 0xffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x2f);
- uint64_t x30 = ((uint64_t)x28 & 0x7fffffffffff);
- uint64_t x31 = (x21 + (0x13 * x29));
- uint64_t x32 = (x31 >> 0x30);
- uint64_t x33 = (x31 & 0xffffffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x30);
- uint64_t x36 = (x34 & 0xffffffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e191m19_4limbs/femulDisplay.v b/src/Specific/solinas64_2e191m19_4limbs/femulDisplay.v
deleted file mode 100644
index 2fd4a46eb..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e191m19_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e191m19_4limbs/fesquare.c b/src/Specific/solinas64_2e191m19_4limbs/fesquare.c
deleted file mode 100644
index 670f4cf3c..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x13 * (0x2 * ((uint128_t)x5 * x5))));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x13 * ((0x2 * ((uint128_t)x6 * x5)) + (0x2 * ((uint128_t)x5 * x6)))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0x13 * ((0x2 * ((uint128_t)x4 * x5)) + ((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x5 * x4))))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x30);
- { uint64_t x12 = ((uint64_t)x10 & 0xffffffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint64_t x14 = (uint64_t) (x13 >> 0x30);
- { uint64_t x15 = ((uint64_t)x13 & 0xffffffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x30);
- { uint64_t x18 = ((uint64_t)x16 & 0xffffffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x2f);
- { uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffff);
- { uint64_t x22 = (x12 + (0x13 * x20));
- { uint64_t x23 = (x22 >> 0x30);
- { uint64_t x24 = (x22 & 0xffffffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x30);
- { uint64_t x27 = (x25 & 0xffffffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e191m19_4limbs/fesquare.v b/src/Specific/solinas64_2e191m19_4limbs/fesquare.v
deleted file mode 100644
index 780a90b52..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e191m19_4limbs.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/solinas64_2e191m19_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e191m19_4limbs/fesquareDisplay.log
deleted file mode 100644
index 9bd240cf1..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x13 * (0x2 * ((uint128_t)x5 * x5))));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x13 * ((0x2 * ((uint128_t)x6 * x5)) + (0x2 * ((uint128_t)x5 * x6)))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0x13 * ((0x2 * ((uint128_t)x4 * x5)) + ((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x5 * x4))))));
- uint64_t x11 = (uint64_t) (x10 >> 0x30);
- uint64_t x12 = ((uint64_t)x10 & 0xffffffffffff);
- uint128_t x13 = (x11 + x9);
- uint64_t x14 = (uint64_t) (x13 >> 0x30);
- uint64_t x15 = ((uint64_t)x13 & 0xffffffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x30);
- uint64_t x18 = ((uint64_t)x16 & 0xffffffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x2f);
- uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffff);
- uint64_t x22 = (x12 + (0x13 * x20));
- uint64_t x23 = (x22 >> 0x30);
- uint64_t x24 = (x22 & 0xffffffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x30);
- uint64_t x27 = (x25 & 0xffffffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e191m19_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e191m19_4limbs/fesquareDisplay.v
deleted file mode 100644
index 7deac0be8..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e191m19_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e191m19_4limbs/fesub.c b/src/Specific/solinas64_2e191m19_4limbs/fesub.c
deleted file mode 100644
index b7adcc113..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x1ffffffffffda + x5) - x11);
- out[1] = ((0x1fffffffffffe + x7) - x13);
- out[2] = ((0x1fffffffffffe + x9) - x15);
- out[3] = ((0xfffffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e191m19_4limbs/fesub.v b/src/Specific/solinas64_2e191m19_4limbs/fesub.v
deleted file mode 100644
index 9ec9cab47..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e191m19_4limbs.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/solinas64_2e191m19_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e191m19_4limbs/fesubDisplay.log
deleted file mode 100644
index 7d3dd7878..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0xfffffffffffe + x8) - x14), ((0x1fffffffffffe + x9) - x15), ((0x1fffffffffffe + x7) - x13), ((0x1ffffffffffda + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e191m19_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e191m19_4limbs/fesubDisplay.v
deleted file mode 100644
index f67604a94..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e191m19_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e191m19_4limbs/freeze.c b/src/Specific/solinas64_2e191m19_4limbs/freeze.c
deleted file mode 100644
index f9254f645..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffed);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0xffffffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0xffffffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x7fffffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xffffffffffed);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0xffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0xffffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x7fffffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e191m19_4limbs/freeze.v b/src/Specific/solinas64_2e191m19_4limbs/freeze.v
deleted file mode 100644
index 638c0d9ce..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e191m19_4limbs.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/solinas64_2e191m19_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e191m19_4limbs/freezeDisplay.log
deleted file mode 100644
index 33e548f8a..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffed);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0xffffffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0xffffffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x7fffffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xffffffffffed);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0xffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0xffffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x7fffffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e191m19_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e191m19_4limbs/freezeDisplay.v
deleted file mode 100644
index 942e64115..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e191m19_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e191m19_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e191m19_4limbs/py_interpreter.sh
deleted file mode 100755
index 6a82e8c86..000000000
--- a/src/Specific/solinas64_2e191m19_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**191 - 19' -Dmodulus_bytes='47.75' -Da24='121665'
diff --git a/src/Specific/solinas64_2e191m19_5limbs/CurveParameters.v b/src/Specific/solinas64_2e191m19_5limbs/CurveParameters.v
deleted file mode 100644
index 514a5a09c..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^191 - 19
-Base: 38.2
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 38 + 1/5;
- bitwidth := 64;
- s := 2^191;
- c := [(1, 19)];
- carry_chains := Some [seq 0 (pred 5); [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/solinas64_2e191m19_5limbs/Synthesis.v b/src/Specific/solinas64_2e191m19_5limbs/Synthesis.v
deleted file mode 100644
index 2bdf8d80a..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e191m19_5limbs.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/solinas64_2e191m19_5limbs/compiler.sh b/src/Specific/solinas64_2e191m19_5limbs/compiler.sh
deleted file mode 100755
index 7650c0ed5..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{39,38,38,38,38}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<191) - 19' "$@"
diff --git a/src/Specific/solinas64_2e191m19_5limbs/compilerxx.sh b/src/Specific/solinas64_2e191m19_5limbs/compilerxx.sh
deleted file mode 100755
index 10b3d85c6..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{39,38,38,38,38}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<191) - 19' "$@"
diff --git a/src/Specific/solinas64_2e191m19_5limbs/feadd.c b/src/Specific/solinas64_2e191m19_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e191m19_5limbs/feadd.v b/src/Specific/solinas64_2e191m19_5limbs/feadd.v
deleted file mode 100644
index e69e2682e..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e191m19_5limbs.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/solinas64_2e191m19_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e191m19_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e191m19_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e191m19_5limbs/feaddDisplay.v
deleted file mode 100644
index c0f27f2bb..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e191m19_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e191m19_5limbs/fecarry.v b/src/Specific/solinas64_2e191m19_5limbs/fecarry.v
deleted file mode 100644
index cba18498a..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e191m19_5limbs.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/solinas64_2e191m19_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e191m19_5limbs/fecarryDisplay.v
deleted file mode 100644
index bb6c6e96a..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e191m19_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e191m19_5limbs/femul.c b/src/Specific/solinas64_2e191m19_5limbs/femul.c
deleted file mode 100644
index ef49510ba..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint128_t x20 = (((uint128_t)x5 * x18) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((0x2 * ((uint128_t)x11 * x15)) + ((uint128_t)x10 * x13)))));
- { uint128_t x21 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((0x2 * ((uint128_t)x9 * x15)) + ((uint128_t)x11 * x13)))) + (0x13 * ((uint128_t)x10 * x18)));
- { uint128_t x22 = ((((uint128_t)x5 * x17) + ((0x2 * ((uint128_t)x7 * x15)) + ((uint128_t)x9 * x13))) + (0x13 * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- { uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x13 * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- { uint128_t x24 = (((uint128_t)x5 * x13) + (0x13 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- { uint64_t x25 = (uint64_t) (x24 >> 0x27);
- { uint64_t x26 = ((uint64_t)x24 & 0x7fffffffff);
- { uint128_t x27 = (x25 + x23);
- { uint64_t x28 = (uint64_t) (x27 >> 0x26);
- { uint64_t x29 = ((uint64_t)x27 & 0x3fffffffff);
- { uint128_t x30 = (x28 + x22);
- { uint64_t x31 = (uint64_t) (x30 >> 0x26);
- { uint64_t x32 = ((uint64_t)x30 & 0x3fffffffff);
- { uint128_t x33 = (x31 + x21);
- { uint64_t x34 = (uint64_t) (x33 >> 0x26);
- { uint64_t x35 = ((uint64_t)x33 & 0x3fffffffff);
- { uint128_t x36 = (x34 + x20);
- { uint64_t x37 = (uint64_t) (x36 >> 0x26);
- { uint64_t x38 = ((uint64_t)x36 & 0x3fffffffff);
- { uint64_t x39 = (x26 + (0x13 * x37));
- { uint64_t x40 = (x39 >> 0x27);
- { uint64_t x41 = (x39 & 0x7fffffffff);
- { uint64_t x42 = (x40 + x29);
- { uint64_t x43 = (x42 >> 0x26);
- { uint64_t x44 = (x42 & 0x3fffffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e191m19_5limbs/femul.v b/src/Specific/solinas64_2e191m19_5limbs/femul.v
deleted file mode 100644
index 0b790ac9d..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e191m19_5limbs.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/solinas64_2e191m19_5limbs/femulDisplay.log b/src/Specific/solinas64_2e191m19_5limbs/femulDisplay.log
deleted file mode 100644
index 6d8240546..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = (((uint128_t)x5 * x18) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((0x2 * ((uint128_t)x11 * x15)) + ((uint128_t)x10 * x13)))));
- uint128_t x21 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((0x2 * ((uint128_t)x9 * x15)) + ((uint128_t)x11 * x13)))) + (0x13 * ((uint128_t)x10 * x18)));
- uint128_t x22 = ((((uint128_t)x5 * x17) + ((0x2 * ((uint128_t)x7 * x15)) + ((uint128_t)x9 * x13))) + (0x13 * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x13 * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- uint128_t x24 = (((uint128_t)x5 * x13) + (0x13 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- uint64_t x25 = (uint64_t) (x24 >> 0x27);
- uint64_t x26 = ((uint64_t)x24 & 0x7fffffffff);
- uint128_t x27 = (x25 + x23);
- uint64_t x28 = (uint64_t) (x27 >> 0x26);
- uint64_t x29 = ((uint64_t)x27 & 0x3fffffffff);
- uint128_t x30 = (x28 + x22);
- uint64_t x31 = (uint64_t) (x30 >> 0x26);
- uint64_t x32 = ((uint64_t)x30 & 0x3fffffffff);
- uint128_t x33 = (x31 + x21);
- uint64_t x34 = (uint64_t) (x33 >> 0x26);
- uint64_t x35 = ((uint64_t)x33 & 0x3fffffffff);
- uint128_t x36 = (x34 + x20);
- uint64_t x37 = (uint64_t) (x36 >> 0x26);
- uint64_t x38 = ((uint64_t)x36 & 0x3fffffffff);
- uint64_t x39 = (x26 + (0x13 * x37));
- uint64_t x40 = (x39 >> 0x27);
- uint64_t x41 = (x39 & 0x7fffffffff);
- uint64_t x42 = (x40 + x29);
- uint64_t x43 = (x42 >> 0x26);
- uint64_t x44 = (x42 & 0x3fffffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e191m19_5limbs/femulDisplay.v b/src/Specific/solinas64_2e191m19_5limbs/femulDisplay.v
deleted file mode 100644
index 4bf06bac2..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e191m19_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e191m19_5limbs/fesquare.c b/src/Specific/solinas64_2e191m19_5limbs/fesquare.c
deleted file mode 100644
index 2f53470de..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x9 = (((uint128_t)x2 * x7) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x7 * x2)))));
- { uint128_t x10 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x13 * ((uint128_t)x7 * x7)));
- { uint128_t x11 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x13 * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- { uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x13 * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- { uint128_t x13 = (((uint128_t)x2 * x2) + (0x13 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- { uint64_t x14 = (uint64_t) (x13 >> 0x27);
- { uint64_t x15 = ((uint64_t)x13 & 0x7fffffffff);
- { uint128_t x16 = (x14 + x12);
- { uint64_t x17 = (uint64_t) (x16 >> 0x26);
- { uint64_t x18 = ((uint64_t)x16 & 0x3fffffffff);
- { uint128_t x19 = (x17 + x11);
- { uint64_t x20 = (uint64_t) (x19 >> 0x26);
- { uint64_t x21 = ((uint64_t)x19 & 0x3fffffffff);
- { uint128_t x22 = (x20 + x10);
- { uint64_t x23 = (uint64_t) (x22 >> 0x26);
- { uint64_t x24 = ((uint64_t)x22 & 0x3fffffffff);
- { uint128_t x25 = (x23 + x9);
- { uint64_t x26 = (uint64_t) (x25 >> 0x26);
- { uint64_t x27 = ((uint64_t)x25 & 0x3fffffffff);
- { uint64_t x28 = (x15 + (0x13 * x26));
- { uint64_t x29 = (x28 >> 0x27);
- { uint64_t x30 = (x28 & 0x7fffffffff);
- { uint64_t x31 = (x29 + x18);
- { uint64_t x32 = (x31 >> 0x26);
- { uint64_t x33 = (x31 & 0x3fffffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e191m19_5limbs/fesquare.v b/src/Specific/solinas64_2e191m19_5limbs/fesquare.v
deleted file mode 100644
index 0d7f4820c..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e191m19_5limbs.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/solinas64_2e191m19_5limbs/fesquareDisplay.log b/src/Specific/solinas64_2e191m19_5limbs/fesquareDisplay.log
deleted file mode 100644
index e1ed33530..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint128_t x9 = (((uint128_t)x2 * x7) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x7 * x2)))));
- uint128_t x10 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x13 * ((uint128_t)x7 * x7)));
- uint128_t x11 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x13 * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x13 * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- uint128_t x13 = (((uint128_t)x2 * x2) + (0x13 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- uint64_t x14 = (uint64_t) (x13 >> 0x27);
- uint64_t x15 = ((uint64_t)x13 & 0x7fffffffff);
- uint128_t x16 = (x14 + x12);
- uint64_t x17 = (uint64_t) (x16 >> 0x26);
- uint64_t x18 = ((uint64_t)x16 & 0x3fffffffff);
- uint128_t x19 = (x17 + x11);
- uint64_t x20 = (uint64_t) (x19 >> 0x26);
- uint64_t x21 = ((uint64_t)x19 & 0x3fffffffff);
- uint128_t x22 = (x20 + x10);
- uint64_t x23 = (uint64_t) (x22 >> 0x26);
- uint64_t x24 = ((uint64_t)x22 & 0x3fffffffff);
- uint128_t x25 = (x23 + x9);
- uint64_t x26 = (uint64_t) (x25 >> 0x26);
- uint64_t x27 = ((uint64_t)x25 & 0x3fffffffff);
- uint64_t x28 = (x15 + (0x13 * x26));
- uint64_t x29 = (x28 >> 0x27);
- uint64_t x30 = (x28 & 0x7fffffffff);
- uint64_t x31 = (x29 + x18);
- uint64_t x32 = (x31 >> 0x26);
- uint64_t x33 = (x31 & 0x3fffffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e191m19_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e191m19_5limbs/fesquareDisplay.v
deleted file mode 100644
index ed02b462e..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e191m19_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e191m19_5limbs/fesub.c b/src/Specific/solinas64_2e191m19_5limbs/fesub.c
deleted file mode 100644
index 87b0206aa..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0xffffffffda + x5) - x13);
- out[1] = ((0x7ffffffffe + x7) - x15);
- out[2] = ((0x7ffffffffe + x9) - x17);
- out[3] = ((0x7ffffffffe + x11) - x19);
- out[4] = ((0x7ffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e191m19_5limbs/fesub.v b/src/Specific/solinas64_2e191m19_5limbs/fesub.v
deleted file mode 100644
index 4d368b0c9..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e191m19_5limbs.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/solinas64_2e191m19_5limbs/fesubDisplay.log b/src/Specific/solinas64_2e191m19_5limbs/fesubDisplay.log
deleted file mode 100644
index 5aac62de5..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0x7ffffffffe + x10) - x18), ((0x7ffffffffe + x11) - x19), ((0x7ffffffffe + x9) - x17), ((0x7ffffffffe + x7) - x15), ((0xffffffffda + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e191m19_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e191m19_5limbs/fesubDisplay.v
deleted file mode 100644
index e40373430..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e191m19_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e191m19_5limbs/freeze.c b/src/Specific/solinas64_2e191m19_5limbs/freeze.c
deleted file mode 100644
index ab0600622..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffed);
- { uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x3fffffffff);
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x3fffffffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x3fffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x3fffffffff);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0x7fffffffed);
- { uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint64_t x29 = (x24 & 0x3fffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint64_t x33 = (x24 & 0x3fffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint64_t x37 = (x24 & 0x3fffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint64_t x41 = (x24 & 0x3fffffffff);
- { uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e191m19_5limbs/freeze.v b/src/Specific/solinas64_2e191m19_5limbs/freeze.v
deleted file mode 100644
index 0547a282c..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e191m19_5limbs.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/solinas64_2e191m19_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e191m19_5limbs/freezeDisplay.log
deleted file mode 100644
index 1a2e9f3b1..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffed);
- uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x3fffffffff);
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x3fffffffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x3fffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x3fffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0x7fffffffed);
- uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint64_t x29 = (x24 & 0x3fffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint64_t x33 = (x24 & 0x3fffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint64_t x37 = (x24 & 0x3fffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint64_t x41 = (x24 & 0x3fffffffff);
- uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e191m19_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e191m19_5limbs/freezeDisplay.v
deleted file mode 100644
index b4141d699..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e191m19_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e191m19_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e191m19_5limbs/py_interpreter.sh
deleted file mode 100755
index db0354298..000000000
--- a/src/Specific/solinas64_2e191m19_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**191 - 19' -Dmodulus_bytes='38.2' -Da24='121665'
diff --git a/src/Specific/solinas64_2e192m2e64m1_4limbs/CurveParameters.v b/src/Specific/solinas64_2e192m2e64m1_4limbs/CurveParameters.v
deleted file mode 100644
index f44b5be97..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^192 - 2^64 - 1
-Base: 48
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 48;
- bitwidth := 64;
- s := 2^192;
- c := [(1, 1); (2^64, 1)];
- carry_chains := Some [[0; 3]; [1; 0; 2; 3]; [1; 0]]%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/solinas64_2e192m2e64m1_4limbs/Synthesis.v b/src/Specific/solinas64_2e192m2e64m1_4limbs/Synthesis.v
deleted file mode 100644
index 80961b02b..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_4limbs.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/solinas64_2e192m2e64m1_4limbs/compiler.sh b/src/Specific/solinas64_2e192m2e64m1_4limbs/compiler.sh
deleted file mode 100755
index 8b2373d4d..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' "$@"
diff --git a/src/Specific/solinas64_2e192m2e64m1_4limbs/compilerxx.sh b/src/Specific/solinas64_2e192m2e64m1_4limbs/compilerxx.sh
deleted file mode 100755
index 4bdd16505..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' "$@"
diff --git a/src/Specific/solinas64_2e192m2e64m1_4limbs/feadd.c b/src/Specific/solinas64_2e192m2e64m1_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e192m2e64m1_4limbs/feadd.v b/src/Specific/solinas64_2e192m2e64m1_4limbs/feadd.v
deleted file mode 100644
index a4d413ac4..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_4limbs.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/solinas64_2e192m2e64m1_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e192m2e64m1_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e192m2e64m1_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e192m2e64m1_4limbs/feaddDisplay.v
deleted file mode 100644
index 35a2a0343..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e192m2e64m1_4limbs/fecarry.v b/src/Specific/solinas64_2e192m2e64m1_4limbs/fecarry.v
deleted file mode 100644
index f0d27c363..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_4limbs.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/solinas64_2e192m2e64m1_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e192m2e64m1_4limbs/fecarryDisplay.v
deleted file mode 100644
index 04a5883f0..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e192m2e64m1_4limbs/femul.c b/src/Specific/solinas64_2e192m2e64m1_4limbs/femul.c
deleted file mode 100644
index cb6363ab6..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/femul.c
+++ /dev/null
@@ -1,47 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = ((((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11)))) + (0x10000 * ((uint128_t)x8 * x14)));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + (((uint128_t)x7 * x13) + ((uint128_t)x9 * x11))) + (((uint128_t)x8 * x14) + (0x10000 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15)))));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + ((((uint128_t)x9 * x14) + ((uint128_t)x8 * x15)) + (0x10000 * (((uint128_t)x7 * x14) + (((uint128_t)x9 * x15) + ((uint128_t)x8 * x13))))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (((uint128_t)x7 * x14) + (((uint128_t)x9 * x15) + ((uint128_t)x8 * x13))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x30);
- { uint64_t x21 = ((uint64_t)x19 & 0xffffffffffff);
- { uint128_t x22 = (x16 >> 0x30);
- { uint64_t x23 = ((uint64_t)x16 & 0xffffffffffff);
- { uint128_t x24 = ((0x1000000000000 * x22) + x23);
- { uint128_t x25 = (x24 >> 0x30);
- { uint64_t x26 = ((uint64_t)x24 & 0xffffffffffff);
- { uint128_t x27 = ((x20 + x18) + (0x10000 * x25));
- { uint128_t x28 = (x27 >> 0x30);
- { uint64_t x29 = ((uint64_t)x27 & 0xffffffffffff);
- { uint128_t x30 = (x21 + x25);
- { uint64_t x31 = (uint64_t) (x30 >> 0x30);
- { uint64_t x32 = ((uint64_t)x30 & 0xffffffffffff);
- { uint128_t x33 = (x28 + x17);
- { uint128_t x34 = (x33 >> 0x30);
- { uint64_t x35 = ((uint64_t)x33 & 0xffffffffffff);
- { uint128_t x36 = (x34 + x26);
- { uint64_t x37 = (uint64_t) (x36 >> 0x30);
- { uint64_t x38 = ((uint64_t)x36 & 0xffffffffffff);
- { uint128_t x39 = (((uint128_t)0x1000000000000 * x37) + x38);
- { uint64_t x40 = (uint64_t) (x39 >> 0x30);
- { uint64_t x41 = ((uint64_t)x39 & 0xffffffffffff);
- { uint64_t x42 = ((x31 + x29) + (0x10000 * x40));
- { uint64_t x43 = (x42 >> 0x30);
- { uint64_t x44 = (x42 & 0xffffffffffff);
- { uint64_t x45 = (x32 + x40);
- { uint64_t x46 = (x45 >> 0x30);
- { uint64_t x47 = (x45 & 0xffffffffffff);
- out[0] = x47;
- out[1] = (x46 + x44);
- out[2] = (x43 + x35);
- out[3] = x41;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e192m2e64m1_4limbs/femul.v b/src/Specific/solinas64_2e192m2e64m1_4limbs/femul.v
deleted file mode 100644
index 3582e660b..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_4limbs.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/solinas64_2e192m2e64m1_4limbs/femulDisplay.log b/src/Specific/solinas64_2e192m2e64m1_4limbs/femulDisplay.log
deleted file mode 100644
index 009614164..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,39 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = ((((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11)))) + (0x10000 * ((uint128_t)x8 * x14)));
- uint128_t x17 = ((((uint128_t)x5 * x15) + (((uint128_t)x7 * x13) + ((uint128_t)x9 * x11))) + (((uint128_t)x8 * x14) + (0x10000 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15)))));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + ((((uint128_t)x9 * x14) + ((uint128_t)x8 * x15)) + (0x10000 * (((uint128_t)x7 * x14) + (((uint128_t)x9 * x15) + ((uint128_t)x8 * x13))))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (((uint128_t)x7 * x14) + (((uint128_t)x9 * x15) + ((uint128_t)x8 * x13))));
- uint64_t x20 = (uint64_t) (x19 >> 0x30);
- uint64_t x21 = ((uint64_t)x19 & 0xffffffffffff);
- uint128_t x22 = (x16 >> 0x30);
- uint64_t x23 = ((uint64_t)x16 & 0xffffffffffff);
- uint128_t x24 = ((0x1000000000000 * x22) + x23);
- uint128_t x25 = (x24 >> 0x30);
- uint64_t x26 = ((uint64_t)x24 & 0xffffffffffff);
- uint128_t x27 = ((x20 + x18) + (0x10000 * x25));
- uint128_t x28 = (x27 >> 0x30);
- uint64_t x29 = ((uint64_t)x27 & 0xffffffffffff);
- uint128_t x30 = (x21 + x25);
- uint64_t x31 = (uint64_t) (x30 >> 0x30);
- uint64_t x32 = ((uint64_t)x30 & 0xffffffffffff);
- uint128_t x33 = (x28 + x17);
- uint128_t x34 = (x33 >> 0x30);
- uint64_t x35 = ((uint64_t)x33 & 0xffffffffffff);
- uint128_t x36 = (x34 + x26);
- uint64_t x37 = (uint64_t) (x36 >> 0x30);
- uint64_t x38 = ((uint64_t)x36 & 0xffffffffffff);
- uint128_t x39 = (((uint128_t)0x1000000000000 * x37) + x38);
- uint64_t x40 = (uint64_t) (x39 >> 0x30);
- uint64_t x41 = ((uint64_t)x39 & 0xffffffffffff);
- uint64_t x42 = ((x31 + x29) + (0x10000 * x40));
- uint64_t x43 = (x42 >> 0x30);
- uint64_t x44 = (x42 & 0xffffffffffff);
- uint64_t x45 = (x32 + x40);
- uint64_t x46 = (x45 >> 0x30);
- uint64_t x47 = (x45 & 0xffffffffffff);
- return (Return x41, (x43 + x35), (x46 + x44), Return x47))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e192m2e64m1_4limbs/femulDisplay.v b/src/Specific/solinas64_2e192m2e64m1_4limbs/femulDisplay.v
deleted file mode 100644
index fd291717e..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e192m2e64m1_4limbs/fesquare.c b/src/Specific/solinas64_2e192m2e64m1_4limbs/fesquare.c
deleted file mode 100644
index 5988be53a..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/fesquare.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = ((((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2)))) + (0x10000 * ((uint128_t)x5 * x5)));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (((uint128_t)x5 * x5) + (0x10000 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6)))));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + ((((uint128_t)x6 * x5) + ((uint128_t)x5 * x6)) + (0x10000 * (((uint128_t)x4 * x5) + (((uint128_t)x6 * x6) + ((uint128_t)x5 * x4))))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (((uint128_t)x4 * x5) + (((uint128_t)x6 * x6) + ((uint128_t)x5 * x4))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x30);
- { uint64_t x12 = ((uint64_t)x10 & 0xffffffffffff);
- { uint128_t x13 = (x7 >> 0x30);
- { uint64_t x14 = ((uint64_t)x7 & 0xffffffffffff);
- { uint128_t x15 = ((0x1000000000000 * x13) + x14);
- { uint128_t x16 = (x15 >> 0x30);
- { uint64_t x17 = ((uint64_t)x15 & 0xffffffffffff);
- { uint128_t x18 = ((x11 + x9) + (0x10000 * x16));
- { uint128_t x19 = (x18 >> 0x30);
- { uint64_t x20 = ((uint64_t)x18 & 0xffffffffffff);
- { uint128_t x21 = (x12 + x16);
- { uint64_t x22 = (uint64_t) (x21 >> 0x30);
- { uint64_t x23 = ((uint64_t)x21 & 0xffffffffffff);
- { uint128_t x24 = (x19 + x8);
- { uint128_t x25 = (x24 >> 0x30);
- { uint64_t x26 = ((uint64_t)x24 & 0xffffffffffff);
- { uint128_t x27 = (x25 + x17);
- { uint64_t x28 = (uint64_t) (x27 >> 0x30);
- { uint64_t x29 = ((uint64_t)x27 & 0xffffffffffff);
- { uint128_t x30 = (((uint128_t)0x1000000000000 * x28) + x29);
- { uint64_t x31 = (uint64_t) (x30 >> 0x30);
- { uint64_t x32 = ((uint64_t)x30 & 0xffffffffffff);
- { uint64_t x33 = ((x22 + x20) + (0x10000 * x31));
- { uint64_t x34 = (x33 >> 0x30);
- { uint64_t x35 = (x33 & 0xffffffffffff);
- { uint64_t x36 = (x23 + x31);
- { uint64_t x37 = (x36 >> 0x30);
- { uint64_t x38 = (x36 & 0xffffffffffff);
- out[0] = x38;
- out[1] = (x37 + x35);
- out[2] = (x34 + x26);
- out[3] = x32;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e192m2e64m1_4limbs/fesquare.v b/src/Specific/solinas64_2e192m2e64m1_4limbs/fesquare.v
deleted file mode 100644
index 854710e4b..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_4limbs.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/solinas64_2e192m2e64m1_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e192m2e64m1_4limbs/fesquareDisplay.log
deleted file mode 100644
index 3878dd9df..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,39 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = ((((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2)))) + (0x10000 * ((uint128_t)x5 * x5)));
- uint128_t x8 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (((uint128_t)x5 * x5) + (0x10000 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6)))));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + ((((uint128_t)x6 * x5) + ((uint128_t)x5 * x6)) + (0x10000 * (((uint128_t)x4 * x5) + (((uint128_t)x6 * x6) + ((uint128_t)x5 * x4))))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (((uint128_t)x4 * x5) + (((uint128_t)x6 * x6) + ((uint128_t)x5 * x4))));
- uint64_t x11 = (uint64_t) (x10 >> 0x30);
- uint64_t x12 = ((uint64_t)x10 & 0xffffffffffff);
- uint128_t x13 = (x7 >> 0x30);
- uint64_t x14 = ((uint64_t)x7 & 0xffffffffffff);
- uint128_t x15 = ((0x1000000000000 * x13) + x14);
- uint128_t x16 = (x15 >> 0x30);
- uint64_t x17 = ((uint64_t)x15 & 0xffffffffffff);
- uint128_t x18 = ((x11 + x9) + (0x10000 * x16));
- uint128_t x19 = (x18 >> 0x30);
- uint64_t x20 = ((uint64_t)x18 & 0xffffffffffff);
- uint128_t x21 = (x12 + x16);
- uint64_t x22 = (uint64_t) (x21 >> 0x30);
- uint64_t x23 = ((uint64_t)x21 & 0xffffffffffff);
- uint128_t x24 = (x19 + x8);
- uint128_t x25 = (x24 >> 0x30);
- uint64_t x26 = ((uint64_t)x24 & 0xffffffffffff);
- uint128_t x27 = (x25 + x17);
- uint64_t x28 = (uint64_t) (x27 >> 0x30);
- uint64_t x29 = ((uint64_t)x27 & 0xffffffffffff);
- uint128_t x30 = (((uint128_t)0x1000000000000 * x28) + x29);
- uint64_t x31 = (uint64_t) (x30 >> 0x30);
- uint64_t x32 = ((uint64_t)x30 & 0xffffffffffff);
- uint64_t x33 = ((x22 + x20) + (0x10000 * x31));
- uint64_t x34 = (x33 >> 0x30);
- uint64_t x35 = (x33 & 0xffffffffffff);
- uint64_t x36 = (x23 + x31);
- uint64_t x37 = (x36 >> 0x30);
- uint64_t x38 = (x36 & 0xffffffffffff);
- return (Return x32, (x34 + x26), (x37 + x35), Return x38))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e192m2e64m1_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e192m2e64m1_4limbs/fesquareDisplay.v
deleted file mode 100644
index caea20f08..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e192m2e64m1_4limbs/fesub.c b/src/Specific/solinas64_2e192m2e64m1_4limbs/fesub.c
deleted file mode 100644
index 1a50d25e3..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x1fffffffffffe + x5) - x11);
- out[1] = ((0x1fffffffdfffe + x7) - x13);
- out[2] = ((0x1fffffffffffe + x9) - x15);
- out[3] = ((0x1fffffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e192m2e64m1_4limbs/fesub.v b/src/Specific/solinas64_2e192m2e64m1_4limbs/fesub.v
deleted file mode 100644
index 6d7c11a0c..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_4limbs.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/solinas64_2e192m2e64m1_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e192m2e64m1_4limbs/fesubDisplay.log
deleted file mode 100644
index 2a60218c6..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0x1fffffffffffe + x8) - x14), ((0x1fffffffffffe + x9) - x15), ((0x1fffffffdfffe + x7) - x13), ((0x1fffffffffffe + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e192m2e64m1_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e192m2e64m1_4limbs/fesubDisplay.v
deleted file mode 100644
index 7445b6976..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e192m2e64m1_4limbs/freeze.c b/src/Specific/solinas64_2e192m2e64m1_4limbs/freeze.c
deleted file mode 100644
index c1e4735bd..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffff);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0xfffffffeffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0xffffffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0xffffffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xffffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0xfffffffeffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0xffffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0xffffffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e192m2e64m1_4limbs/freeze.v b/src/Specific/solinas64_2e192m2e64m1_4limbs/freeze.v
deleted file mode 100644
index 409c072da..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_4limbs.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/solinas64_2e192m2e64m1_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e192m2e64m1_4limbs/freezeDisplay.log
deleted file mode 100644
index ea4bfd068..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffff);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0xfffffffeffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0xffffffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0xffffffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xffffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0xfffffffeffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0xffffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0xffffffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e192m2e64m1_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e192m2e64m1_4limbs/freezeDisplay.v
deleted file mode 100644
index 0d738c828..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e192m2e64m1_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e192m2e64m1_4limbs/py_interpreter.sh
deleted file mode 100755
index 3607c7e1e..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**192 - 2**64 - 1' -Dmodulus_bytes='48' -Da24='121665'
diff --git a/src/Specific/solinas64_2e192m2e64m1_5limbs/CurveParameters.v b/src/Specific/solinas64_2e192m2e64m1_5limbs/CurveParameters.v
deleted file mode 100644
index 8cc8f324b..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^192 - 2^64 - 1
-Base: 38.4
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 38 + 2/5;
- bitwidth := 64;
- s := 2^192;
- c := [(1, 1); (2^64, 1)];
- carry_chains := Some [[0; 4]; [1; 0; 2; 3; 4]; [1; 0]]%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/solinas64_2e192m2e64m1_5limbs/Synthesis.v b/src/Specific/solinas64_2e192m2e64m1_5limbs/Synthesis.v
deleted file mode 100644
index f68fdf799..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_5limbs.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/solinas64_2e192m2e64m1_5limbs/compiler.sh b/src/Specific/solinas64_2e192m2e64m1_5limbs/compiler.sh
deleted file mode 100755
index a19b09665..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{39,38,39,38,38}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' "$@"
diff --git a/src/Specific/solinas64_2e192m2e64m1_5limbs/compilerxx.sh b/src/Specific/solinas64_2e192m2e64m1_5limbs/compilerxx.sh
deleted file mode 100755
index 301adb661..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/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,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{39,38,39,38,38}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='24' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<192) - (1_mpz<<64) - 1' "$@"
diff --git a/src/Specific/solinas64_2e192m2e64m1_5limbs/feadd.c b/src/Specific/solinas64_2e192m2e64m1_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e192m2e64m1_5limbs/feadd.v b/src/Specific/solinas64_2e192m2e64m1_5limbs/feadd.v
deleted file mode 100644
index 4fd392746..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_5limbs.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/solinas64_2e192m2e64m1_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e192m2e64m1_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e192m2e64m1_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e192m2e64m1_5limbs/feaddDisplay.v
deleted file mode 100644
index 2d52065b7..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e192m2e64m1_5limbs/fecarry.v b/src/Specific/solinas64_2e192m2e64m1_5limbs/fecarry.v
deleted file mode 100644
index 17b0bec6b..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_5limbs.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/solinas64_2e192m2e64m1_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e192m2e64m1_5limbs/fecarryDisplay.v
deleted file mode 100644
index 657567ca8..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e192m2e64m1_5limbs/femul.c b/src/Specific/solinas64_2e192m2e64m1_5limbs/femul.c
deleted file mode 100644
index f1bb383b9..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/femul.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint128_t x20 = ((((uint128_t)x5 * x18) + ((0x2 * ((uint128_t)x7 * x19)) + (((uint128_t)x9 * x17) + ((0x2 * ((uint128_t)x11 * x15)) + ((uint128_t)x10 * x13))))) + (0x4000000 * ((uint128_t)x10 * x18)));
- { uint128_t x21 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + (((uint128_t)x9 * x15) + ((uint128_t)x11 * x13)))) + (((uint128_t)x10 * x18) + (0x2000000 * ((0x2 * ((uint128_t)x11 * x18)) + (0x2 * ((uint128_t)x10 * x19))))));
- { uint128_t x22 = ((((uint128_t)x5 * x17) + ((0x2 * ((uint128_t)x7 * x15)) + ((uint128_t)x9 * x13))) + (((0x2 * ((uint128_t)x11 * x18)) + (0x2 * ((uint128_t)x10 * x19))) + (0x4000000 * (((uint128_t)x9 * x18) + ((0x2 * ((uint128_t)x11 * x19)) + ((uint128_t)x10 * x17))))));
- { uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + ((((uint128_t)x9 * x18) + ((0x2 * ((uint128_t)x11 * x19)) + ((uint128_t)x10 * x17))) + (0x2000000 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15))))))));
- { uint128_t x24 = (((uint128_t)x5 * x13) + ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15))))));
- { uint64_t x25 = (uint64_t) (x24 >> 0x27);
- { uint64_t x26 = ((uint64_t)x24 & 0x7fffffffff);
- { uint128_t x27 = (x20 >> 0x26);
- { uint64_t x28 = ((uint64_t)x20 & 0x3fffffffff);
- { uint128_t x29 = ((0x4000000000 * x27) + x28);
- { uint128_t x30 = (x29 >> 0x26);
- { uint64_t x31 = ((uint64_t)x29 & 0x3fffffffff);
- { uint128_t x32 = ((x25 + x23) + (0x2000000 * x30));
- { uint128_t x33 = (x32 >> 0x26);
- { uint64_t x34 = ((uint64_t)x32 & 0x3fffffffff);
- { uint128_t x35 = (x26 + x30);
- { uint64_t x36 = (uint64_t) (x35 >> 0x27);
- { uint64_t x37 = ((uint64_t)x35 & 0x7fffffffff);
- { uint128_t x38 = (x33 + x22);
- { uint128_t x39 = (x38 >> 0x27);
- { uint64_t x40 = ((uint64_t)x38 & 0x7fffffffff);
- { uint128_t x41 = (x39 + x21);
- { uint128_t x42 = (x41 >> 0x26);
- { uint64_t x43 = ((uint64_t)x41 & 0x3fffffffff);
- { uint128_t x44 = (x42 + x31);
- { uint64_t x45 = (uint64_t) (x44 >> 0x26);
- { uint64_t x46 = ((uint64_t)x44 & 0x3fffffffff);
- { uint128_t x47 = (((uint128_t)0x4000000000 * x45) + x46);
- { uint64_t x48 = (uint64_t) (x47 >> 0x26);
- { uint64_t x49 = ((uint64_t)x47 & 0x3fffffffff);
- { uint64_t x50 = ((x36 + x34) + (0x2000000 * x48));
- { uint64_t x51 = (x50 >> 0x26);
- { uint64_t x52 = (x50 & 0x3fffffffff);
- { uint64_t x53 = (x37 + x48);
- { uint64_t x54 = (x53 >> 0x27);
- { uint64_t x55 = (x53 & 0x7fffffffff);
- out[0] = x55;
- out[1] = (x54 + x52);
- out[2] = (x51 + x40);
- out[3] = x43;
- out[4] = x49;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e192m2e64m1_5limbs/femul.v b/src/Specific/solinas64_2e192m2e64m1_5limbs/femul.v
deleted file mode 100644
index 49b7a08c5..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_5limbs.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/solinas64_2e192m2e64m1_5limbs/femulDisplay.log b/src/Specific/solinas64_2e192m2e64m1_5limbs/femulDisplay.log
deleted file mode 100644
index 84359a3b0..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,43 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = ((((uint128_t)x5 * x18) + ((0x2 * ((uint128_t)x7 * x19)) + (((uint128_t)x9 * x17) + ((0x2 * ((uint128_t)x11 * x15)) + ((uint128_t)x10 * x13))))) + (0x4000000 * ((uint128_t)x10 * x18)));
- uint128_t x21 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + (((uint128_t)x9 * x15) + ((uint128_t)x11 * x13)))) + (((uint128_t)x10 * x18) + (0x2000000 * ((0x2 * ((uint128_t)x11 * x18)) + (0x2 * ((uint128_t)x10 * x19))))));
- uint128_t x22 = ((((uint128_t)x5 * x17) + ((0x2 * ((uint128_t)x7 * x15)) + ((uint128_t)x9 * x13))) + (((0x2 * ((uint128_t)x11 * x18)) + (0x2 * ((uint128_t)x10 * x19))) + (0x4000000 * (((uint128_t)x9 * x18) + ((0x2 * ((uint128_t)x11 * x19)) + ((uint128_t)x10 * x17))))));
- uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + ((((uint128_t)x9 * x18) + ((0x2 * ((uint128_t)x11 * x19)) + ((uint128_t)x10 * x17))) + (0x2000000 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15))))))));
- uint128_t x24 = (((uint128_t)x5 * x13) + ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15))))));
- uint64_t x25 = (uint64_t) (x24 >> 0x27);
- uint64_t x26 = ((uint64_t)x24 & 0x7fffffffff);
- uint128_t x27 = (x20 >> 0x26);
- uint64_t x28 = ((uint64_t)x20 & 0x3fffffffff);
- uint128_t x29 = ((0x4000000000 * x27) + x28);
- uint128_t x30 = (x29 >> 0x26);
- uint64_t x31 = ((uint64_t)x29 & 0x3fffffffff);
- uint128_t x32 = ((x25 + x23) + (0x2000000 * x30));
- uint128_t x33 = (x32 >> 0x26);
- uint64_t x34 = ((uint64_t)x32 & 0x3fffffffff);
- uint128_t x35 = (x26 + x30);
- uint64_t x36 = (uint64_t) (x35 >> 0x27);
- uint64_t x37 = ((uint64_t)x35 & 0x7fffffffff);
- uint128_t x38 = (x33 + x22);
- uint128_t x39 = (x38 >> 0x27);
- uint64_t x40 = ((uint64_t)x38 & 0x7fffffffff);
- uint128_t x41 = (x39 + x21);
- uint128_t x42 = (x41 >> 0x26);
- uint64_t x43 = ((uint64_t)x41 & 0x3fffffffff);
- uint128_t x44 = (x42 + x31);
- uint64_t x45 = (uint64_t) (x44 >> 0x26);
- uint64_t x46 = ((uint64_t)x44 & 0x3fffffffff);
- uint128_t x47 = (((uint128_t)0x4000000000 * x45) + x46);
- uint64_t x48 = (uint64_t) (x47 >> 0x26);
- uint64_t x49 = ((uint64_t)x47 & 0x3fffffffff);
- uint64_t x50 = ((x36 + x34) + (0x2000000 * x48));
- uint64_t x51 = (x50 >> 0x26);
- uint64_t x52 = (x50 & 0x3fffffffff);
- uint64_t x53 = (x37 + x48);
- uint64_t x54 = (x53 >> 0x27);
- uint64_t x55 = (x53 & 0x7fffffffff);
- return (Return x49, Return x43, (x51 + x40), (x54 + x52), Return x55))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e192m2e64m1_5limbs/femulDisplay.v b/src/Specific/solinas64_2e192m2e64m1_5limbs/femulDisplay.v
deleted file mode 100644
index a9ac50598..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e192m2e64m1_5limbs/fesquare.c b/src/Specific/solinas64_2e192m2e64m1_5limbs/fesquare.c
deleted file mode 100644
index 232b4b694..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/fesquare.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void fesquare(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x9 = ((((uint128_t)x2 * x7) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x7 * x2))))) + (0x4000000 * ((uint128_t)x7 * x7)));
- { uint128_t x10 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (((uint128_t)x7 * x7) + (0x2000000 * ((0x2 * ((uint128_t)x8 * x7)) + (0x2 * ((uint128_t)x7 * x8))))));
- { uint128_t x11 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (((0x2 * ((uint128_t)x8 * x7)) + (0x2 * ((uint128_t)x7 * x8))) + (0x4000000 * (((uint128_t)x6 * x7) + ((0x2 * ((uint128_t)x8 * x8)) + ((uint128_t)x7 * x6))))));
- { uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + ((((uint128_t)x6 * x7) + ((0x2 * ((uint128_t)x8 * x8)) + ((uint128_t)x7 * x6))) + (0x2000000 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4))))))));
- { uint128_t x13 = (((uint128_t)x2 * x2) + ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4))))));
- { uint64_t x14 = (uint64_t) (x13 >> 0x27);
- { uint64_t x15 = ((uint64_t)x13 & 0x7fffffffff);
- { uint128_t x16 = (x9 >> 0x26);
- { uint64_t x17 = ((uint64_t)x9 & 0x3fffffffff);
- { uint128_t x18 = ((0x4000000000 * x16) + x17);
- { uint128_t x19 = (x18 >> 0x26);
- { uint64_t x20 = ((uint64_t)x18 & 0x3fffffffff);
- { uint128_t x21 = ((x14 + x12) + (0x2000000 * x19));
- { uint128_t x22 = (x21 >> 0x26);
- { uint64_t x23 = ((uint64_t)x21 & 0x3fffffffff);
- { uint128_t x24 = (x15 + x19);
- { uint64_t x25 = (uint64_t) (x24 >> 0x27);
- { uint64_t x26 = ((uint64_t)x24 & 0x7fffffffff);
- { uint128_t x27 = (x22 + x11);
- { uint128_t x28 = (x27 >> 0x27);
- { uint64_t x29 = ((uint64_t)x27 & 0x7fffffffff);
- { uint128_t x30 = (x28 + x10);
- { uint128_t x31 = (x30 >> 0x26);
- { uint64_t x32 = ((uint64_t)x30 & 0x3fffffffff);
- { uint128_t x33 = (x31 + x20);
- { uint64_t x34 = (uint64_t) (x33 >> 0x26);
- { uint64_t x35 = ((uint64_t)x33 & 0x3fffffffff);
- { uint128_t x36 = (((uint128_t)0x4000000000 * x34) + x35);
- { uint64_t x37 = (uint64_t) (x36 >> 0x26);
- { uint64_t x38 = ((uint64_t)x36 & 0x3fffffffff);
- { uint64_t x39 = ((x25 + x23) + (0x2000000 * x37));
- { uint64_t x40 = (x39 >> 0x26);
- { uint64_t x41 = (x39 & 0x3fffffffff);
- { uint64_t x42 = (x26 + x37);
- { uint64_t x43 = (x42 >> 0x27);
- { uint64_t x44 = (x42 & 0x7fffffffff);
- out[0] = x44;
- out[1] = (x43 + x41);
- out[2] = (x40 + x29);
- out[3] = x32;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e192m2e64m1_5limbs/fesquare.v b/src/Specific/solinas64_2e192m2e64m1_5limbs/fesquare.v
deleted file mode 100644
index a4bcef1b2..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_5limbs.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/solinas64_2e192m2e64m1_5limbs/fesquareDisplay.log b/src/Specific/solinas64_2e192m2e64m1_5limbs/fesquareDisplay.log
deleted file mode 100644
index 49b683b56..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,43 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint128_t x9 = ((((uint128_t)x2 * x7) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x7 * x2))))) + (0x4000000 * ((uint128_t)x7 * x7)));
- uint128_t x10 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (((uint128_t)x7 * x7) + (0x2000000 * ((0x2 * ((uint128_t)x8 * x7)) + (0x2 * ((uint128_t)x7 * x8))))));
- uint128_t x11 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (((0x2 * ((uint128_t)x8 * x7)) + (0x2 * ((uint128_t)x7 * x8))) + (0x4000000 * (((uint128_t)x6 * x7) + ((0x2 * ((uint128_t)x8 * x8)) + ((uint128_t)x7 * x6))))));
- uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + ((((uint128_t)x6 * x7) + ((0x2 * ((uint128_t)x8 * x8)) + ((uint128_t)x7 * x6))) + (0x2000000 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4))))))));
- uint128_t x13 = (((uint128_t)x2 * x2) + ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4))))));
- uint64_t x14 = (uint64_t) (x13 >> 0x27);
- uint64_t x15 = ((uint64_t)x13 & 0x7fffffffff);
- uint128_t x16 = (x9 >> 0x26);
- uint64_t x17 = ((uint64_t)x9 & 0x3fffffffff);
- uint128_t x18 = ((0x4000000000 * x16) + x17);
- uint128_t x19 = (x18 >> 0x26);
- uint64_t x20 = ((uint64_t)x18 & 0x3fffffffff);
- uint128_t x21 = ((x14 + x12) + (0x2000000 * x19));
- uint128_t x22 = (x21 >> 0x26);
- uint64_t x23 = ((uint64_t)x21 & 0x3fffffffff);
- uint128_t x24 = (x15 + x19);
- uint64_t x25 = (uint64_t) (x24 >> 0x27);
- uint64_t x26 = ((uint64_t)x24 & 0x7fffffffff);
- uint128_t x27 = (x22 + x11);
- uint128_t x28 = (x27 >> 0x27);
- uint64_t x29 = ((uint64_t)x27 & 0x7fffffffff);
- uint128_t x30 = (x28 + x10);
- uint128_t x31 = (x30 >> 0x26);
- uint64_t x32 = ((uint64_t)x30 & 0x3fffffffff);
- uint128_t x33 = (x31 + x20);
- uint64_t x34 = (uint64_t) (x33 >> 0x26);
- uint64_t x35 = ((uint64_t)x33 & 0x3fffffffff);
- uint128_t x36 = (((uint128_t)0x4000000000 * x34) + x35);
- uint64_t x37 = (uint64_t) (x36 >> 0x26);
- uint64_t x38 = ((uint64_t)x36 & 0x3fffffffff);
- uint64_t x39 = ((x25 + x23) + (0x2000000 * x37));
- uint64_t x40 = (x39 >> 0x26);
- uint64_t x41 = (x39 & 0x3fffffffff);
- uint64_t x42 = (x26 + x37);
- uint64_t x43 = (x42 >> 0x27);
- uint64_t x44 = (x42 & 0x7fffffffff);
- return (Return x38, Return x32, (x40 + x29), (x43 + x41), Return x44))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e192m2e64m1_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e192m2e64m1_5limbs/fesquareDisplay.v
deleted file mode 100644
index 73ae9819b..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e192m2e64m1_5limbs/fesub.c b/src/Specific/solinas64_2e192m2e64m1_5limbs/fesub.c
deleted file mode 100644
index 3cd07ae40..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0xfffffffffe + x5) - x13);
- out[1] = ((0x7ffbfffffe + x7) - x15);
- out[2] = ((0xfffffffffe + x9) - x17);
- out[3] = ((0x7ffffffffe + x11) - x19);
- out[4] = ((0x7ffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e192m2e64m1_5limbs/fesub.v b/src/Specific/solinas64_2e192m2e64m1_5limbs/fesub.v
deleted file mode 100644
index 8919ae69b..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_5limbs.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/solinas64_2e192m2e64m1_5limbs/fesubDisplay.log b/src/Specific/solinas64_2e192m2e64m1_5limbs/fesubDisplay.log
deleted file mode 100644
index 7372f4ab9..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0x7ffffffffe + x10) - x18), ((0x7ffffffffe + x11) - x19), ((0xfffffffffe + x9) - x17), ((0x7ffbfffffe + x7) - x15), ((0xfffffffffe + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e192m2e64m1_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e192m2e64m1_5limbs/fesubDisplay.v
deleted file mode 100644
index 1a1f6a75e..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e192m2e64m1_5limbs/freeze.c b/src/Specific/solinas64_2e192m2e64m1_5limbs/freeze.c
deleted file mode 100644
index 4d7951d82..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffff);
- { uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x3ffdffffff);
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x7fffffffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x3fffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x3fffffffff);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0x7fffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint64_t x29 = (x24 & 0x3ffdffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint64_t x33 = (x24 & 0x7fffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint64_t x37 = (x24 & 0x3fffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint64_t x41 = (x24 & 0x3fffffffff);
- { uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e192m2e64m1_5limbs/freeze.v b/src/Specific/solinas64_2e192m2e64m1_5limbs/freeze.v
deleted file mode 100644
index b8a89f7df..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_5limbs.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/solinas64_2e192m2e64m1_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e192m2e64m1_5limbs/freezeDisplay.log
deleted file mode 100644
index 03365946d..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffff);
- uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x3ffdffffff);
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x7fffffffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x3fffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x3fffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0x7fffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint64_t x29 = (x24 & 0x3ffdffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint64_t x33 = (x24 & 0x7fffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint64_t x37 = (x24 & 0x3fffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint64_t x41 = (x24 & 0x3fffffffff);
- uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e192m2e64m1_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e192m2e64m1_5limbs/freezeDisplay.v
deleted file mode 100644
index 15ed758e1..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e192m2e64m1_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e192m2e64m1_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e192m2e64m1_5limbs/py_interpreter.sh
deleted file mode 100755
index 247cfa03f..000000000
--- a/src/Specific/solinas64_2e192m2e64m1_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**192 - 2**64 - 1' -Dmodulus_bytes='38.4' -Da24='121665'
diff --git a/src/Specific/solinas64_2e194m33_4limbs/CurveParameters.v b/src/Specific/solinas64_2e194m33_4limbs/CurveParameters.v
deleted file mode 100644
index 905a67b54..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^194 - 33
-Base: 48.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 48 + 1/2;
- bitwidth := 64;
- s := 2^194;
- c := [(1, 33)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e194m33_4limbs/Synthesis.v b/src/Specific/solinas64_2e194m33_4limbs/Synthesis.v
deleted file mode 100644
index 8db27b622..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e194m33_4limbs.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/solinas64_2e194m33_4limbs/compiler.sh b/src/Specific/solinas64_2e194m33_4limbs/compiler.sh
deleted file mode 100755
index a90927d53..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,48,49,48}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<194) - 33' "$@"
diff --git a/src/Specific/solinas64_2e194m33_4limbs/compilerxx.sh b/src/Specific/solinas64_2e194m33_4limbs/compilerxx.sh
deleted file mode 100755
index 2dee2d8cd..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,48,49,48}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<194) - 33' "$@"
diff --git a/src/Specific/solinas64_2e194m33_4limbs/feadd.c b/src/Specific/solinas64_2e194m33_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e194m33_4limbs/feadd.v b/src/Specific/solinas64_2e194m33_4limbs/feadd.v
deleted file mode 100644
index be8e2fbc4..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e194m33_4limbs.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/solinas64_2e194m33_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e194m33_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e194m33_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e194m33_4limbs/feaddDisplay.v
deleted file mode 100644
index 8d90e1469..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e194m33_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e194m33_4limbs/fecarry.v b/src/Specific/solinas64_2e194m33_4limbs/fecarry.v
deleted file mode 100644
index a8763f9b0..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e194m33_4limbs.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/solinas64_2e194m33_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e194m33_4limbs/fecarryDisplay.v
deleted file mode 100644
index 58583e035..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e194m33_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e194m33_4limbs/femul.c b/src/Specific/solinas64_2e194m33_4limbs/femul.c
deleted file mode 100644
index c9dfe04d0..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x21 * (0x2 * ((uint128_t)x8 * x14))));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x21 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0x21 * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x31);
- { uint64_t x21 = ((uint64_t)x19 & 0x1ffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x30);
- { uint64_t x24 = ((uint64_t)x22 & 0xffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x31);
- { uint64_t x27 = ((uint64_t)x25 & 0x1ffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x30);
- { uint64_t x30 = ((uint64_t)x28 & 0xffffffffffff);
- { uint64_t x31 = (x21 + (0x21 * x29));
- { uint64_t x32 = (x31 >> 0x31);
- { uint64_t x33 = (x31 & 0x1ffffffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x30);
- { uint64_t x36 = (x34 & 0xffffffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e194m33_4limbs/femul.v b/src/Specific/solinas64_2e194m33_4limbs/femul.v
deleted file mode 100644
index b506a9a45..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e194m33_4limbs.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/solinas64_2e194m33_4limbs/femulDisplay.log b/src/Specific/solinas64_2e194m33_4limbs/femulDisplay.log
deleted file mode 100644
index c3b8e1fbe..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x21 * (0x2 * ((uint128_t)x8 * x14))));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x21 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0x21 * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x31);
- uint64_t x21 = ((uint64_t)x19 & 0x1ffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x30);
- uint64_t x24 = ((uint64_t)x22 & 0xffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x31);
- uint64_t x27 = ((uint64_t)x25 & 0x1ffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x30);
- uint64_t x30 = ((uint64_t)x28 & 0xffffffffffff);
- uint64_t x31 = (x21 + (0x21 * x29));
- uint64_t x32 = (x31 >> 0x31);
- uint64_t x33 = (x31 & 0x1ffffffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x30);
- uint64_t x36 = (x34 & 0xffffffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e194m33_4limbs/femulDisplay.v b/src/Specific/solinas64_2e194m33_4limbs/femulDisplay.v
deleted file mode 100644
index 3666d841c..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e194m33_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e194m33_4limbs/fesquare.c b/src/Specific/solinas64_2e194m33_4limbs/fesquare.c
deleted file mode 100644
index 877c757a4..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x21 * (0x2 * ((uint128_t)x5 * x5))));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x21 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0x21 * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x31);
- { uint64_t x12 = ((uint64_t)x10 & 0x1ffffffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint64_t x14 = (uint64_t) (x13 >> 0x30);
- { uint64_t x15 = ((uint64_t)x13 & 0xffffffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x31);
- { uint64_t x18 = ((uint64_t)x16 & 0x1ffffffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x30);
- { uint64_t x21 = ((uint64_t)x19 & 0xffffffffffff);
- { uint64_t x22 = (x12 + (0x21 * x20));
- { uint64_t x23 = (x22 >> 0x31);
- { uint64_t x24 = (x22 & 0x1ffffffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x30);
- { uint64_t x27 = (x25 & 0xffffffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e194m33_4limbs/fesquare.v b/src/Specific/solinas64_2e194m33_4limbs/fesquare.v
deleted file mode 100644
index 65a47c86d..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e194m33_4limbs.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/solinas64_2e194m33_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e194m33_4limbs/fesquareDisplay.log
deleted file mode 100644
index 9fa536104..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x21 * (0x2 * ((uint128_t)x5 * x5))));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x21 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0x21 * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- uint64_t x11 = (uint64_t) (x10 >> 0x31);
- uint64_t x12 = ((uint64_t)x10 & 0x1ffffffffffff);
- uint128_t x13 = (x11 + x9);
- uint64_t x14 = (uint64_t) (x13 >> 0x30);
- uint64_t x15 = ((uint64_t)x13 & 0xffffffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x31);
- uint64_t x18 = ((uint64_t)x16 & 0x1ffffffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x30);
- uint64_t x21 = ((uint64_t)x19 & 0xffffffffffff);
- uint64_t x22 = (x12 + (0x21 * x20));
- uint64_t x23 = (x22 >> 0x31);
- uint64_t x24 = (x22 & 0x1ffffffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x30);
- uint64_t x27 = (x25 & 0xffffffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e194m33_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e194m33_4limbs/fesquareDisplay.v
deleted file mode 100644
index 5e2de3fe0..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e194m33_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e194m33_4limbs/fesub.c b/src/Specific/solinas64_2e194m33_4limbs/fesub.c
deleted file mode 100644
index 9d40814f9..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x3ffffffffffbe + x5) - x11);
- out[1] = ((0x1fffffffffffe + x7) - x13);
- out[2] = ((0x3fffffffffffe + x9) - x15);
- out[3] = ((0x1fffffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e194m33_4limbs/fesub.v b/src/Specific/solinas64_2e194m33_4limbs/fesub.v
deleted file mode 100644
index 5d9af03e4..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e194m33_4limbs.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/solinas64_2e194m33_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e194m33_4limbs/fesubDisplay.log
deleted file mode 100644
index 7240009c0..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0x1fffffffffffe + x8) - x14), ((0x3fffffffffffe + x9) - x15), ((0x1fffffffffffe + x7) - x13), ((0x3ffffffffffbe + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e194m33_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e194m33_4limbs/fesubDisplay.v
deleted file mode 100644
index c84996f85..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e194m33_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e194m33_4limbs/freeze.c b/src/Specific/solinas64_2e194m33_4limbs/freeze.c
deleted file mode 100644
index 92cbe9964..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffffffffdf);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0xffffffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x1ffffffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0xffffffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0x1ffffffffffdf);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0xffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0x1ffffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0xffffffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e194m33_4limbs/freeze.v b/src/Specific/solinas64_2e194m33_4limbs/freeze.v
deleted file mode 100644
index f388b4023..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e194m33_4limbs.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/solinas64_2e194m33_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e194m33_4limbs/freezeDisplay.log
deleted file mode 100644
index 38df2685d..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffffffffdf);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0xffffffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x1ffffffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0xffffffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0x1ffffffffffdf);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0xffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0x1ffffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0xffffffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e194m33_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e194m33_4limbs/freezeDisplay.v
deleted file mode 100644
index 7f20a669f..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e194m33_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e194m33_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e194m33_4limbs/py_interpreter.sh
deleted file mode 100755
index fb89b1eeb..000000000
--- a/src/Specific/solinas64_2e194m33_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**194 - 33' -Dmodulus_bytes='48.5' -Da24='121665'
diff --git a/src/Specific/solinas64_2e194m33_5limbs/CurveParameters.v b/src/Specific/solinas64_2e194m33_5limbs/CurveParameters.v
deleted file mode 100644
index b568340d9..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^194 - 33
-Base: 38.8
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 38 + 4/5;
- bitwidth := 64;
- s := 2^194;
- c := [(1, 33)];
- carry_chains := Some [seq 0 (pred 5); [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/solinas64_2e194m33_5limbs/Synthesis.v b/src/Specific/solinas64_2e194m33_5limbs/Synthesis.v
deleted file mode 100644
index f3959f7a4..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e194m33_5limbs.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/solinas64_2e194m33_5limbs/compiler.sh b/src/Specific/solinas64_2e194m33_5limbs/compiler.sh
deleted file mode 100755
index 6f2720dbd..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{39,39,39,39,38}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<194) - 33' "$@"
diff --git a/src/Specific/solinas64_2e194m33_5limbs/compilerxx.sh b/src/Specific/solinas64_2e194m33_5limbs/compilerxx.sh
deleted file mode 100755
index 076040da1..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{39,39,39,39,38}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xdf}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<194) - 33' "$@"
diff --git a/src/Specific/solinas64_2e194m33_5limbs/feadd.c b/src/Specific/solinas64_2e194m33_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e194m33_5limbs/feadd.v b/src/Specific/solinas64_2e194m33_5limbs/feadd.v
deleted file mode 100644
index 57417ca0f..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e194m33_5limbs.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/solinas64_2e194m33_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e194m33_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e194m33_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e194m33_5limbs/feaddDisplay.v
deleted file mode 100644
index 57fabbda1..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e194m33_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e194m33_5limbs/fecarry.v b/src/Specific/solinas64_2e194m33_5limbs/fecarry.v
deleted file mode 100644
index 0850ae245..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e194m33_5limbs.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/solinas64_2e194m33_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e194m33_5limbs/fecarryDisplay.v
deleted file mode 100644
index ca29636ee..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e194m33_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e194m33_5limbs/femul.c b/src/Specific/solinas64_2e194m33_5limbs/femul.c
deleted file mode 100644
index 3da03686d..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint128_t x20 = (((uint128_t)x5 * x18) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + (((uint128_t)x11 * x15) + ((uint128_t)x10 * x13)))));
- { uint128_t x21 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + (((uint128_t)x9 * x15) + ((uint128_t)x11 * x13)))) + (0x21 * (0x2 * ((uint128_t)x10 * x18))));
- { uint128_t x22 = ((((uint128_t)x5 * x17) + (((uint128_t)x7 * x15) + ((uint128_t)x9 * x13))) + (0x21 * ((0x2 * ((uint128_t)x11 * x18)) + (0x2 * ((uint128_t)x10 * x19)))));
- { uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x21 * ((0x2 * ((uint128_t)x9 * x18)) + ((0x2 * ((uint128_t)x11 * x19)) + (0x2 * ((uint128_t)x10 * x17))))));
- { uint128_t x24 = (((uint128_t)x5 * x13) + (0x21 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- { uint64_t x25 = (uint64_t) (x24 >> 0x27);
- { uint64_t x26 = ((uint64_t)x24 & 0x7fffffffff);
- { uint128_t x27 = (x25 + x23);
- { uint64_t x28 = (uint64_t) (x27 >> 0x27);
- { uint64_t x29 = ((uint64_t)x27 & 0x7fffffffff);
- { uint128_t x30 = (x28 + x22);
- { uint64_t x31 = (uint64_t) (x30 >> 0x27);
- { uint64_t x32 = ((uint64_t)x30 & 0x7fffffffff);
- { uint128_t x33 = (x31 + x21);
- { uint64_t x34 = (uint64_t) (x33 >> 0x27);
- { uint64_t x35 = ((uint64_t)x33 & 0x7fffffffff);
- { uint128_t x36 = (x34 + x20);
- { uint64_t x37 = (uint64_t) (x36 >> 0x26);
- { uint64_t x38 = ((uint64_t)x36 & 0x3fffffffff);
- { uint64_t x39 = (x26 + (0x21 * x37));
- { uint64_t x40 = (x39 >> 0x27);
- { uint64_t x41 = (x39 & 0x7fffffffff);
- { uint64_t x42 = (x40 + x29);
- { uint64_t x43 = (x42 >> 0x27);
- { uint64_t x44 = (x42 & 0x7fffffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e194m33_5limbs/femul.v b/src/Specific/solinas64_2e194m33_5limbs/femul.v
deleted file mode 100644
index 76f2b6bc1..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e194m33_5limbs.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/solinas64_2e194m33_5limbs/femulDisplay.log b/src/Specific/solinas64_2e194m33_5limbs/femulDisplay.log
deleted file mode 100644
index 6c52f4df3..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = (((uint128_t)x5 * x18) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + (((uint128_t)x11 * x15) + ((uint128_t)x10 * x13)))));
- uint128_t x21 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + (((uint128_t)x9 * x15) + ((uint128_t)x11 * x13)))) + (0x21 * (0x2 * ((uint128_t)x10 * x18))));
- uint128_t x22 = ((((uint128_t)x5 * x17) + (((uint128_t)x7 * x15) + ((uint128_t)x9 * x13))) + (0x21 * ((0x2 * ((uint128_t)x11 * x18)) + (0x2 * ((uint128_t)x10 * x19)))));
- uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x21 * ((0x2 * ((uint128_t)x9 * x18)) + ((0x2 * ((uint128_t)x11 * x19)) + (0x2 * ((uint128_t)x10 * x17))))));
- uint128_t x24 = (((uint128_t)x5 * x13) + (0x21 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- uint64_t x25 = (uint64_t) (x24 >> 0x27);
- uint64_t x26 = ((uint64_t)x24 & 0x7fffffffff);
- uint128_t x27 = (x25 + x23);
- uint64_t x28 = (uint64_t) (x27 >> 0x27);
- uint64_t x29 = ((uint64_t)x27 & 0x7fffffffff);
- uint128_t x30 = (x28 + x22);
- uint64_t x31 = (uint64_t) (x30 >> 0x27);
- uint64_t x32 = ((uint64_t)x30 & 0x7fffffffff);
- uint128_t x33 = (x31 + x21);
- uint64_t x34 = (uint64_t) (x33 >> 0x27);
- uint64_t x35 = ((uint64_t)x33 & 0x7fffffffff);
- uint128_t x36 = (x34 + x20);
- uint64_t x37 = (uint64_t) (x36 >> 0x26);
- uint64_t x38 = ((uint64_t)x36 & 0x3fffffffff);
- uint64_t x39 = (x26 + (0x21 * x37));
- uint64_t x40 = (x39 >> 0x27);
- uint64_t x41 = (x39 & 0x7fffffffff);
- uint64_t x42 = (x40 + x29);
- uint64_t x43 = (x42 >> 0x27);
- uint64_t x44 = (x42 & 0x7fffffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e194m33_5limbs/femulDisplay.v b/src/Specific/solinas64_2e194m33_5limbs/femulDisplay.v
deleted file mode 100644
index 4ce5075c0..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e194m33_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e194m33_5limbs/fesquare.c b/src/Specific/solinas64_2e194m33_5limbs/fesquare.c
deleted file mode 100644
index cedb2373d..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x9 = (((uint128_t)x2 * x7) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x7 * x2)))));
- { uint128_t x10 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x21 * (0x2 * ((uint128_t)x7 * x7))));
- { uint128_t x11 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x21 * ((0x2 * ((uint128_t)x8 * x7)) + (0x2 * ((uint128_t)x7 * x8)))));
- { uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x21 * ((0x2 * ((uint128_t)x6 * x7)) + ((0x2 * ((uint128_t)x8 * x8)) + (0x2 * ((uint128_t)x7 * x6))))));
- { uint128_t x13 = (((uint128_t)x2 * x2) + (0x21 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- { uint64_t x14 = (uint64_t) (x13 >> 0x27);
- { uint64_t x15 = ((uint64_t)x13 & 0x7fffffffff);
- { uint128_t x16 = (x14 + x12);
- { uint64_t x17 = (uint64_t) (x16 >> 0x27);
- { uint64_t x18 = ((uint64_t)x16 & 0x7fffffffff);
- { uint128_t x19 = (x17 + x11);
- { uint64_t x20 = (uint64_t) (x19 >> 0x27);
- { uint64_t x21 = ((uint64_t)x19 & 0x7fffffffff);
- { uint128_t x22 = (x20 + x10);
- { uint64_t x23 = (uint64_t) (x22 >> 0x27);
- { uint64_t x24 = ((uint64_t)x22 & 0x7fffffffff);
- { uint128_t x25 = (x23 + x9);
- { uint64_t x26 = (uint64_t) (x25 >> 0x26);
- { uint64_t x27 = ((uint64_t)x25 & 0x3fffffffff);
- { uint64_t x28 = (x15 + (0x21 * x26));
- { uint64_t x29 = (x28 >> 0x27);
- { uint64_t x30 = (x28 & 0x7fffffffff);
- { uint64_t x31 = (x29 + x18);
- { uint64_t x32 = (x31 >> 0x27);
- { uint64_t x33 = (x31 & 0x7fffffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e194m33_5limbs/fesquare.v b/src/Specific/solinas64_2e194m33_5limbs/fesquare.v
deleted file mode 100644
index cb82af6e8..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e194m33_5limbs.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/solinas64_2e194m33_5limbs/fesquareDisplay.log b/src/Specific/solinas64_2e194m33_5limbs/fesquareDisplay.log
deleted file mode 100644
index 9dcb17a91..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint128_t x9 = (((uint128_t)x2 * x7) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x7 * x2)))));
- uint128_t x10 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x21 * (0x2 * ((uint128_t)x7 * x7))));
- uint128_t x11 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x21 * ((0x2 * ((uint128_t)x8 * x7)) + (0x2 * ((uint128_t)x7 * x8)))));
- uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x21 * ((0x2 * ((uint128_t)x6 * x7)) + ((0x2 * ((uint128_t)x8 * x8)) + (0x2 * ((uint128_t)x7 * x6))))));
- uint128_t x13 = (((uint128_t)x2 * x2) + (0x21 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- uint64_t x14 = (uint64_t) (x13 >> 0x27);
- uint64_t x15 = ((uint64_t)x13 & 0x7fffffffff);
- uint128_t x16 = (x14 + x12);
- uint64_t x17 = (uint64_t) (x16 >> 0x27);
- uint64_t x18 = ((uint64_t)x16 & 0x7fffffffff);
- uint128_t x19 = (x17 + x11);
- uint64_t x20 = (uint64_t) (x19 >> 0x27);
- uint64_t x21 = ((uint64_t)x19 & 0x7fffffffff);
- uint128_t x22 = (x20 + x10);
- uint64_t x23 = (uint64_t) (x22 >> 0x27);
- uint64_t x24 = ((uint64_t)x22 & 0x7fffffffff);
- uint128_t x25 = (x23 + x9);
- uint64_t x26 = (uint64_t) (x25 >> 0x26);
- uint64_t x27 = ((uint64_t)x25 & 0x3fffffffff);
- uint64_t x28 = (x15 + (0x21 * x26));
- uint64_t x29 = (x28 >> 0x27);
- uint64_t x30 = (x28 & 0x7fffffffff);
- uint64_t x31 = (x29 + x18);
- uint64_t x32 = (x31 >> 0x27);
- uint64_t x33 = (x31 & 0x7fffffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e194m33_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e194m33_5limbs/fesquareDisplay.v
deleted file mode 100644
index c09e15f0d..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e194m33_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e194m33_5limbs/fesub.c b/src/Specific/solinas64_2e194m33_5limbs/fesub.c
deleted file mode 100644
index af5e3276a..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0xffffffffbe + x5) - x13);
- out[1] = ((0xfffffffffe + x7) - x15);
- out[2] = ((0xfffffffffe + x9) - x17);
- out[3] = ((0xfffffffffe + x11) - x19);
- out[4] = ((0x7ffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e194m33_5limbs/fesub.v b/src/Specific/solinas64_2e194m33_5limbs/fesub.v
deleted file mode 100644
index d59d0efe7..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e194m33_5limbs.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/solinas64_2e194m33_5limbs/fesubDisplay.log b/src/Specific/solinas64_2e194m33_5limbs/fesubDisplay.log
deleted file mode 100644
index 77468d508..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0x7ffffffffe + x10) - x18), ((0xfffffffffe + x11) - x19), ((0xfffffffffe + x9) - x17), ((0xfffffffffe + x7) - x15), ((0xffffffffbe + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e194m33_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e194m33_5limbs/fesubDisplay.v
deleted file mode 100644
index 573400d24..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e194m33_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e194m33_5limbs/freeze.c b/src/Specific/solinas64_2e194m33_5limbs/freeze.c
deleted file mode 100644
index 78d62c5d8..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffdf);
- { uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x7fffffffff);
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x7fffffffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x7fffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x3fffffffff);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0x7fffffffdf);
- { uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint64_t x29 = (x24 & 0x7fffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint64_t x33 = (x24 & 0x7fffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint64_t x37 = (x24 & 0x7fffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint64_t x41 = (x24 & 0x3fffffffff);
- { uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e194m33_5limbs/freeze.v b/src/Specific/solinas64_2e194m33_5limbs/freeze.v
deleted file mode 100644
index 7ba78f355..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e194m33_5limbs.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/solinas64_2e194m33_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e194m33_5limbs/freezeDisplay.log
deleted file mode 100644
index f2db1e405..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffdf);
- uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x7fffffffff);
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x7fffffffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x7fffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x3fffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0x7fffffffdf);
- uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint64_t x29 = (x24 & 0x7fffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint64_t x33 = (x24 & 0x7fffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint64_t x37 = (x24 & 0x7fffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint64_t x41 = (x24 & 0x3fffffffff);
- uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e194m33_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e194m33_5limbs/freezeDisplay.v
deleted file mode 100644
index a0649c851..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e194m33_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e194m33_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e194m33_5limbs/py_interpreter.sh
deleted file mode 100755
index 08d10f16a..000000000
--- a/src/Specific/solinas64_2e194m33_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**194 - 33' -Dmodulus_bytes='38.8' -Da24='121665'
diff --git a/src/Specific/solinas64_2e196m15_4limbs/CurveParameters.v b/src/Specific/solinas64_2e196m15_4limbs/CurveParameters.v
deleted file mode 100644
index ebcf4a84e..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^196 - 15
-Base: 49
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 49;
- bitwidth := 64;
- s := 2^196;
- c := [(1, 15)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e196m15_4limbs/Synthesis.v b/src/Specific/solinas64_2e196m15_4limbs/Synthesis.v
deleted file mode 100644
index 849e430bc..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e196m15_4limbs.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/solinas64_2e196m15_4limbs/compiler.sh b/src/Specific/solinas64_2e196m15_4limbs/compiler.sh
deleted file mode 100755
index fbd5fd120..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,49,49,49}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<196) - 15' "$@"
diff --git a/src/Specific/solinas64_2e196m15_4limbs/compilerxx.sh b/src/Specific/solinas64_2e196m15_4limbs/compilerxx.sh
deleted file mode 100755
index 703451633..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,49,49,49}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<196) - 15' "$@"
diff --git a/src/Specific/solinas64_2e196m15_4limbs/feadd.c b/src/Specific/solinas64_2e196m15_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e196m15_4limbs/feadd.v b/src/Specific/solinas64_2e196m15_4limbs/feadd.v
deleted file mode 100644
index 9bdfe8184..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e196m15_4limbs.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/solinas64_2e196m15_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e196m15_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e196m15_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e196m15_4limbs/feaddDisplay.v
deleted file mode 100644
index 3164edc5f..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e196m15_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e196m15_4limbs/fecarry.v b/src/Specific/solinas64_2e196m15_4limbs/fecarry.v
deleted file mode 100644
index cb349160c..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e196m15_4limbs.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/solinas64_2e196m15_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e196m15_4limbs/fecarryDisplay.v
deleted file mode 100644
index 787ac6f23..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e196m15_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e196m15_4limbs/femul.c b/src/Specific/solinas64_2e196m15_4limbs/femul.c
deleted file mode 100644
index 3f661dd84..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + (((uint128_t)x7 * x13) + ((uint128_t)x9 * x11))) + (0xf * ((uint128_t)x8 * x14)));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0xf * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0xf * (((uint128_t)x7 * x14) + (((uint128_t)x9 * x15) + ((uint128_t)x8 * x13)))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x31);
- { uint64_t x21 = ((uint64_t)x19 & 0x1ffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x31);
- { uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x31);
- { uint64_t x27 = ((uint64_t)x25 & 0x1ffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x31);
- { uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffffff);
- { uint64_t x31 = (x21 + (0xf * x29));
- { uint64_t x32 = (x31 >> 0x31);
- { uint64_t x33 = (x31 & 0x1ffffffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x31);
- { uint64_t x36 = (x34 & 0x1ffffffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e196m15_4limbs/femul.v b/src/Specific/solinas64_2e196m15_4limbs/femul.v
deleted file mode 100644
index eeb44c34c..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e196m15_4limbs.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/solinas64_2e196m15_4limbs/femulDisplay.log b/src/Specific/solinas64_2e196m15_4limbs/femulDisplay.log
deleted file mode 100644
index 72ad53d0e..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + (((uint128_t)x7 * x13) + ((uint128_t)x9 * x11))) + (0xf * ((uint128_t)x8 * x14)));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0xf * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0xf * (((uint128_t)x7 * x14) + (((uint128_t)x9 * x15) + ((uint128_t)x8 * x13)))));
- uint64_t x20 = (uint64_t) (x19 >> 0x31);
- uint64_t x21 = ((uint64_t)x19 & 0x1ffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x31);
- uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x31);
- uint64_t x27 = ((uint64_t)x25 & 0x1ffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x31);
- uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffffff);
- uint64_t x31 = (x21 + (0xf * x29));
- uint64_t x32 = (x31 >> 0x31);
- uint64_t x33 = (x31 & 0x1ffffffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x31);
- uint64_t x36 = (x34 & 0x1ffffffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e196m15_4limbs/femulDisplay.v b/src/Specific/solinas64_2e196m15_4limbs/femulDisplay.v
deleted file mode 100644
index 5c38c4e72..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e196m15_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e196m15_4limbs/fesquare.c b/src/Specific/solinas64_2e196m15_4limbs/fesquare.c
deleted file mode 100644
index 2679040a4..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0xf * ((uint128_t)x5 * x5)));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xf * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0xf * (((uint128_t)x4 * x5) + (((uint128_t)x6 * x6) + ((uint128_t)x5 * x4)))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x31);
- { uint64_t x12 = ((uint64_t)x10 & 0x1ffffffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint64_t x14 = (uint64_t) (x13 >> 0x31);
- { uint64_t x15 = ((uint64_t)x13 & 0x1ffffffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x31);
- { uint64_t x18 = ((uint64_t)x16 & 0x1ffffffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x31);
- { uint64_t x21 = ((uint64_t)x19 & 0x1ffffffffffff);
- { uint64_t x22 = (x12 + (0xf * x20));
- { uint64_t x23 = (x22 >> 0x31);
- { uint64_t x24 = (x22 & 0x1ffffffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x31);
- { uint64_t x27 = (x25 & 0x1ffffffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e196m15_4limbs/fesquare.v b/src/Specific/solinas64_2e196m15_4limbs/fesquare.v
deleted file mode 100644
index 72e20f524..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e196m15_4limbs.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/solinas64_2e196m15_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e196m15_4limbs/fesquareDisplay.log
deleted file mode 100644
index 764324a53..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0xf * ((uint128_t)x5 * x5)));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xf * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0xf * (((uint128_t)x4 * x5) + (((uint128_t)x6 * x6) + ((uint128_t)x5 * x4)))));
- uint64_t x11 = (uint64_t) (x10 >> 0x31);
- uint64_t x12 = ((uint64_t)x10 & 0x1ffffffffffff);
- uint128_t x13 = (x11 + x9);
- uint64_t x14 = (uint64_t) (x13 >> 0x31);
- uint64_t x15 = ((uint64_t)x13 & 0x1ffffffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x31);
- uint64_t x18 = ((uint64_t)x16 & 0x1ffffffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x31);
- uint64_t x21 = ((uint64_t)x19 & 0x1ffffffffffff);
- uint64_t x22 = (x12 + (0xf * x20));
- uint64_t x23 = (x22 >> 0x31);
- uint64_t x24 = (x22 & 0x1ffffffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x31);
- uint64_t x27 = (x25 & 0x1ffffffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e196m15_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e196m15_4limbs/fesquareDisplay.v
deleted file mode 100644
index 49eba404f..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e196m15_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e196m15_4limbs/fesub.c b/src/Specific/solinas64_2e196m15_4limbs/fesub.c
deleted file mode 100644
index 7ffc0db76..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x3ffffffffffe2 + x5) - x11);
- out[1] = ((0x3fffffffffffe + x7) - x13);
- out[2] = ((0x3fffffffffffe + x9) - x15);
- out[3] = ((0x3fffffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e196m15_4limbs/fesub.v b/src/Specific/solinas64_2e196m15_4limbs/fesub.v
deleted file mode 100644
index c40e7f413..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e196m15_4limbs.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/solinas64_2e196m15_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e196m15_4limbs/fesubDisplay.log
deleted file mode 100644
index 146b4988d..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0x3fffffffffffe + x8) - x14), ((0x3fffffffffffe + x9) - x15), ((0x3fffffffffffe + x7) - x13), ((0x3ffffffffffe2 + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e196m15_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e196m15_4limbs/fesubDisplay.v
deleted file mode 100644
index cf2380328..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e196m15_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e196m15_4limbs/freeze.c b/src/Specific/solinas64_2e196m15_4limbs/freeze.c
deleted file mode 100644
index bdc2f7c30..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffffff1);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x1ffffffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x1ffffffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x1ffffffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0x1fffffffffff1);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0x1ffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0x1ffffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x1ffffffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e196m15_4limbs/freeze.v b/src/Specific/solinas64_2e196m15_4limbs/freeze.v
deleted file mode 100644
index 183f294ca..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e196m15_4limbs.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/solinas64_2e196m15_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e196m15_4limbs/freezeDisplay.log
deleted file mode 100644
index 372b48361..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffffff1);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x1ffffffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x1ffffffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x1ffffffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0x1fffffffffff1);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0x1ffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0x1ffffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x1ffffffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e196m15_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e196m15_4limbs/freezeDisplay.v
deleted file mode 100644
index 1aa8f8bd0..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e196m15_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e196m15_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e196m15_4limbs/py_interpreter.sh
deleted file mode 100755
index f55283233..000000000
--- a/src/Specific/solinas64_2e196m15_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**196 - 15' -Dmodulus_bytes='49' -Da24='121665'
diff --git a/src/Specific/solinas64_2e196m15_5limbs/CurveParameters.v b/src/Specific/solinas64_2e196m15_5limbs/CurveParameters.v
deleted file mode 100644
index e8d14cbf0..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^196 - 15
-Base: 39.2
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 39 + 1/5;
- bitwidth := 64;
- s := 2^196;
- c := [(1, 15)];
- carry_chains := Some [seq 0 (pred 5); [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/solinas64_2e196m15_5limbs/Synthesis.v b/src/Specific/solinas64_2e196m15_5limbs/Synthesis.v
deleted file mode 100644
index e5a7f27d5..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e196m15_5limbs.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/solinas64_2e196m15_5limbs/compiler.sh b/src/Specific/solinas64_2e196m15_5limbs/compiler.sh
deleted file mode 100755
index 66b199880..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{40,39,39,39,39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<196) - 15' "$@"
diff --git a/src/Specific/solinas64_2e196m15_5limbs/compilerxx.sh b/src/Specific/solinas64_2e196m15_5limbs/compilerxx.sh
deleted file mode 100755
index 30d9bff45..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{40,39,39,39,39}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<196) - 15' "$@"
diff --git a/src/Specific/solinas64_2e196m15_5limbs/feadd.c b/src/Specific/solinas64_2e196m15_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e196m15_5limbs/feadd.v b/src/Specific/solinas64_2e196m15_5limbs/feadd.v
deleted file mode 100644
index c04e0681d..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e196m15_5limbs.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/solinas64_2e196m15_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e196m15_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e196m15_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e196m15_5limbs/feaddDisplay.v
deleted file mode 100644
index e55ab2033..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e196m15_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e196m15_5limbs/fecarry.v b/src/Specific/solinas64_2e196m15_5limbs/fecarry.v
deleted file mode 100644
index 4290ccee8..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e196m15_5limbs.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/solinas64_2e196m15_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e196m15_5limbs/fecarryDisplay.v
deleted file mode 100644
index fdd2d5979..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e196m15_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e196m15_5limbs/femul.c b/src/Specific/solinas64_2e196m15_5limbs/femul.c
deleted file mode 100644
index 53b5c5be0..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint128_t x20 = (((uint128_t)x5 * x18) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((0x2 * ((uint128_t)x11 * x15)) + ((uint128_t)x10 * x13)))));
- { uint128_t x21 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((0x2 * ((uint128_t)x9 * x15)) + ((uint128_t)x11 * x13)))) + (0xf * ((uint128_t)x10 * x18)));
- { uint128_t x22 = ((((uint128_t)x5 * x17) + ((0x2 * ((uint128_t)x7 * x15)) + ((uint128_t)x9 * x13))) + (0xf * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- { uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0xf * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- { uint128_t x24 = (((uint128_t)x5 * x13) + (0xf * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- { uint64_t x25 = (uint64_t) (x24 >> 0x28);
- { uint64_t x26 = ((uint64_t)x24 & 0xffffffffff);
- { uint128_t x27 = (x25 + x23);
- { uint64_t x28 = (uint64_t) (x27 >> 0x27);
- { uint64_t x29 = ((uint64_t)x27 & 0x7fffffffff);
- { uint128_t x30 = (x28 + x22);
- { uint64_t x31 = (uint64_t) (x30 >> 0x27);
- { uint64_t x32 = ((uint64_t)x30 & 0x7fffffffff);
- { uint128_t x33 = (x31 + x21);
- { uint64_t x34 = (uint64_t) (x33 >> 0x27);
- { uint64_t x35 = ((uint64_t)x33 & 0x7fffffffff);
- { uint128_t x36 = (x34 + x20);
- { uint64_t x37 = (uint64_t) (x36 >> 0x27);
- { uint64_t x38 = ((uint64_t)x36 & 0x7fffffffff);
- { uint64_t x39 = (x26 + (0xf * x37));
- { uint64_t x40 = (x39 >> 0x28);
- { uint64_t x41 = (x39 & 0xffffffffff);
- { uint64_t x42 = (x40 + x29);
- { uint64_t x43 = (x42 >> 0x27);
- { uint64_t x44 = (x42 & 0x7fffffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e196m15_5limbs/femul.v b/src/Specific/solinas64_2e196m15_5limbs/femul.v
deleted file mode 100644
index db4acb081..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e196m15_5limbs.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/solinas64_2e196m15_5limbs/femulDisplay.log b/src/Specific/solinas64_2e196m15_5limbs/femulDisplay.log
deleted file mode 100644
index 4b2da44d9..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = (((uint128_t)x5 * x18) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((0x2 * ((uint128_t)x11 * x15)) + ((uint128_t)x10 * x13)))));
- uint128_t x21 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((0x2 * ((uint128_t)x9 * x15)) + ((uint128_t)x11 * x13)))) + (0xf * ((uint128_t)x10 * x18)));
- uint128_t x22 = ((((uint128_t)x5 * x17) + ((0x2 * ((uint128_t)x7 * x15)) + ((uint128_t)x9 * x13))) + (0xf * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0xf * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- uint128_t x24 = (((uint128_t)x5 * x13) + (0xf * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- uint64_t x25 = (uint64_t) (x24 >> 0x28);
- uint64_t x26 = ((uint64_t)x24 & 0xffffffffff);
- uint128_t x27 = (x25 + x23);
- uint64_t x28 = (uint64_t) (x27 >> 0x27);
- uint64_t x29 = ((uint64_t)x27 & 0x7fffffffff);
- uint128_t x30 = (x28 + x22);
- uint64_t x31 = (uint64_t) (x30 >> 0x27);
- uint64_t x32 = ((uint64_t)x30 & 0x7fffffffff);
- uint128_t x33 = (x31 + x21);
- uint64_t x34 = (uint64_t) (x33 >> 0x27);
- uint64_t x35 = ((uint64_t)x33 & 0x7fffffffff);
- uint128_t x36 = (x34 + x20);
- uint64_t x37 = (uint64_t) (x36 >> 0x27);
- uint64_t x38 = ((uint64_t)x36 & 0x7fffffffff);
- uint64_t x39 = (x26 + (0xf * x37));
- uint64_t x40 = (x39 >> 0x28);
- uint64_t x41 = (x39 & 0xffffffffff);
- uint64_t x42 = (x40 + x29);
- uint64_t x43 = (x42 >> 0x27);
- uint64_t x44 = (x42 & 0x7fffffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e196m15_5limbs/femulDisplay.v b/src/Specific/solinas64_2e196m15_5limbs/femulDisplay.v
deleted file mode 100644
index 1f295f2d4..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e196m15_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e196m15_5limbs/fesquare.c b/src/Specific/solinas64_2e196m15_5limbs/fesquare.c
deleted file mode 100644
index 8d86aaca7..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x9 = (((uint128_t)x2 * x7) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x7 * x2)))));
- { uint128_t x10 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0xf * ((uint128_t)x7 * x7)));
- { uint128_t x11 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0xf * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- { uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xf * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- { uint128_t x13 = (((uint128_t)x2 * x2) + (0xf * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- { uint64_t x14 = (uint64_t) (x13 >> 0x28);
- { uint64_t x15 = ((uint64_t)x13 & 0xffffffffff);
- { uint128_t x16 = (x14 + x12);
- { uint64_t x17 = (uint64_t) (x16 >> 0x27);
- { uint64_t x18 = ((uint64_t)x16 & 0x7fffffffff);
- { uint128_t x19 = (x17 + x11);
- { uint64_t x20 = (uint64_t) (x19 >> 0x27);
- { uint64_t x21 = ((uint64_t)x19 & 0x7fffffffff);
- { uint128_t x22 = (x20 + x10);
- { uint64_t x23 = (uint64_t) (x22 >> 0x27);
- { uint64_t x24 = ((uint64_t)x22 & 0x7fffffffff);
- { uint128_t x25 = (x23 + x9);
- { uint64_t x26 = (uint64_t) (x25 >> 0x27);
- { uint64_t x27 = ((uint64_t)x25 & 0x7fffffffff);
- { uint64_t x28 = (x15 + (0xf * x26));
- { uint64_t x29 = (x28 >> 0x28);
- { uint64_t x30 = (x28 & 0xffffffffff);
- { uint64_t x31 = (x29 + x18);
- { uint64_t x32 = (x31 >> 0x27);
- { uint64_t x33 = (x31 & 0x7fffffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e196m15_5limbs/fesquare.v b/src/Specific/solinas64_2e196m15_5limbs/fesquare.v
deleted file mode 100644
index db45c1615..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e196m15_5limbs.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/solinas64_2e196m15_5limbs/fesquareDisplay.log b/src/Specific/solinas64_2e196m15_5limbs/fesquareDisplay.log
deleted file mode 100644
index 91d4183db..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint128_t x9 = (((uint128_t)x2 * x7) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x7 * x2)))));
- uint128_t x10 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0xf * ((uint128_t)x7 * x7)));
- uint128_t x11 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0xf * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xf * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- uint128_t x13 = (((uint128_t)x2 * x2) + (0xf * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- uint64_t x14 = (uint64_t) (x13 >> 0x28);
- uint64_t x15 = ((uint64_t)x13 & 0xffffffffff);
- uint128_t x16 = (x14 + x12);
- uint64_t x17 = (uint64_t) (x16 >> 0x27);
- uint64_t x18 = ((uint64_t)x16 & 0x7fffffffff);
- uint128_t x19 = (x17 + x11);
- uint64_t x20 = (uint64_t) (x19 >> 0x27);
- uint64_t x21 = ((uint64_t)x19 & 0x7fffffffff);
- uint128_t x22 = (x20 + x10);
- uint64_t x23 = (uint64_t) (x22 >> 0x27);
- uint64_t x24 = ((uint64_t)x22 & 0x7fffffffff);
- uint128_t x25 = (x23 + x9);
- uint64_t x26 = (uint64_t) (x25 >> 0x27);
- uint64_t x27 = ((uint64_t)x25 & 0x7fffffffff);
- uint64_t x28 = (x15 + (0xf * x26));
- uint64_t x29 = (x28 >> 0x28);
- uint64_t x30 = (x28 & 0xffffffffff);
- uint64_t x31 = (x29 + x18);
- uint64_t x32 = (x31 >> 0x27);
- uint64_t x33 = (x31 & 0x7fffffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e196m15_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e196m15_5limbs/fesquareDisplay.v
deleted file mode 100644
index c7c20f567..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e196m15_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e196m15_5limbs/fesub.c b/src/Specific/solinas64_2e196m15_5limbs/fesub.c
deleted file mode 100644
index c0b8ef744..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0x1ffffffffe2 + x5) - x13);
- out[1] = ((0xfffffffffe + x7) - x15);
- out[2] = ((0xfffffffffe + x9) - x17);
- out[3] = ((0xfffffffffe + x11) - x19);
- out[4] = ((0xfffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e196m15_5limbs/fesub.v b/src/Specific/solinas64_2e196m15_5limbs/fesub.v
deleted file mode 100644
index 109e48a66..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e196m15_5limbs.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/solinas64_2e196m15_5limbs/fesubDisplay.log b/src/Specific/solinas64_2e196m15_5limbs/fesubDisplay.log
deleted file mode 100644
index f07c84954..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0xfffffffffe + x10) - x18), ((0xfffffffffe + x11) - x19), ((0xfffffffffe + x9) - x17), ((0xfffffffffe + x7) - x15), ((0x1ffffffffe2 + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e196m15_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e196m15_5limbs/fesubDisplay.v
deleted file mode 100644
index 756e89d91..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e196m15_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e196m15_5limbs/freeze.c b/src/Specific/solinas64_2e196m15_5limbs/freeze.c
deleted file mode 100644
index 2d29b2c29..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffff1);
- { uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x7fffffffff);
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x7fffffffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x7fffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x7fffffffff);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0xfffffffff1);
- { uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint64_t x29 = (x24 & 0x7fffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint64_t x33 = (x24 & 0x7fffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint64_t x37 = (x24 & 0x7fffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint64_t x41 = (x24 & 0x7fffffffff);
- { uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e196m15_5limbs/freeze.v b/src/Specific/solinas64_2e196m15_5limbs/freeze.v
deleted file mode 100644
index 8b38a6b79..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e196m15_5limbs.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/solinas64_2e196m15_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e196m15_5limbs/freezeDisplay.log
deleted file mode 100644
index 68f94d6f5..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffff1);
- uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x7fffffffff);
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x7fffffffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x7fffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x7fffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0xfffffffff1);
- uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint64_t x29 = (x24 & 0x7fffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint64_t x33 = (x24 & 0x7fffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint64_t x37 = (x24 & 0x7fffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint64_t x41 = (x24 & 0x7fffffffff);
- uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e196m15_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e196m15_5limbs/freezeDisplay.v
deleted file mode 100644
index c4e15707f..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e196m15_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e196m15_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e196m15_5limbs/py_interpreter.sh
deleted file mode 100755
index 05a13ecb2..000000000
--- a/src/Specific/solinas64_2e196m15_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**196 - 15' -Dmodulus_bytes='39.2' -Da24='121665'
diff --git a/src/Specific/solinas64_2e198m17_4limbs/CurveParameters.v b/src/Specific/solinas64_2e198m17_4limbs/CurveParameters.v
deleted file mode 100644
index cb3a65318..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^198 - 17
-Base: 49.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 49 + 1/2;
- bitwidth := 64;
- s := 2^198;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e198m17_4limbs/Synthesis.v b/src/Specific/solinas64_2e198m17_4limbs/Synthesis.v
deleted file mode 100644
index e267ca95f..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e198m17_4limbs.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/solinas64_2e198m17_4limbs/compiler.sh b/src/Specific/solinas64_2e198m17_4limbs/compiler.sh
deleted file mode 100755
index 71fad0336..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{50,49,50,49}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<198) - 17' "$@"
diff --git a/src/Specific/solinas64_2e198m17_4limbs/compilerxx.sh b/src/Specific/solinas64_2e198m17_4limbs/compilerxx.sh
deleted file mode 100755
index 8ac470860..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{50,49,50,49}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<198) - 17' "$@"
diff --git a/src/Specific/solinas64_2e198m17_4limbs/feadd.c b/src/Specific/solinas64_2e198m17_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e198m17_4limbs/feadd.v b/src/Specific/solinas64_2e198m17_4limbs/feadd.v
deleted file mode 100644
index c5df077fa..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e198m17_4limbs.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/solinas64_2e198m17_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e198m17_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e198m17_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e198m17_4limbs/feaddDisplay.v
deleted file mode 100644
index b9259315e..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e198m17_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e198m17_4limbs/fecarry.v b/src/Specific/solinas64_2e198m17_4limbs/fecarry.v
deleted file mode 100644
index 5fa91c030..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e198m17_4limbs.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/solinas64_2e198m17_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e198m17_4limbs/fecarryDisplay.v
deleted file mode 100644
index 05be2fdf5..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e198m17_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e198m17_4limbs/femul.c b/src/Specific/solinas64_2e198m17_4limbs/femul.c
deleted file mode 100644
index 6fc4add36..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x11 * (0x2 * ((uint128_t)x8 * x14))));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x11 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0x11 * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x32);
- { uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x31);
- { uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x32);
- { uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x31);
- { uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffffff);
- { uint64_t x31 = (x21 + (0x11 * x29));
- { uint64_t x32 = (x31 >> 0x32);
- { uint64_t x33 = (x31 & 0x3ffffffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x31);
- { uint64_t x36 = (x34 & 0x1ffffffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e198m17_4limbs/femul.v b/src/Specific/solinas64_2e198m17_4limbs/femul.v
deleted file mode 100644
index c8ebb794c..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e198m17_4limbs.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/solinas64_2e198m17_4limbs/femulDisplay.log b/src/Specific/solinas64_2e198m17_4limbs/femulDisplay.log
deleted file mode 100644
index ad84fbfa8..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x11 * (0x2 * ((uint128_t)x8 * x14))));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x11 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0x11 * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x32);
- uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x31);
- uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x32);
- uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x31);
- uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffffff);
- uint64_t x31 = (x21 + (0x11 * x29));
- uint64_t x32 = (x31 >> 0x32);
- uint64_t x33 = (x31 & 0x3ffffffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x31);
- uint64_t x36 = (x34 & 0x1ffffffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e198m17_4limbs/femulDisplay.v b/src/Specific/solinas64_2e198m17_4limbs/femulDisplay.v
deleted file mode 100644
index 9a70f558c..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e198m17_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e198m17_4limbs/fesquare.c b/src/Specific/solinas64_2e198m17_4limbs/fesquare.c
deleted file mode 100644
index c2571c13f..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x11 * (0x2 * ((uint128_t)x5 * x5))));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0x11 * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x32);
- { uint64_t x12 = ((uint64_t)x10 & 0x3ffffffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint64_t x14 = (uint64_t) (x13 >> 0x31);
- { uint64_t x15 = ((uint64_t)x13 & 0x1ffffffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x32);
- { uint64_t x18 = ((uint64_t)x16 & 0x3ffffffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x31);
- { uint64_t x21 = ((uint64_t)x19 & 0x1ffffffffffff);
- { uint64_t x22 = (x12 + (0x11 * x20));
- { uint64_t x23 = (x22 >> 0x32);
- { uint64_t x24 = (x22 & 0x3ffffffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x31);
- { uint64_t x27 = (x25 & 0x1ffffffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e198m17_4limbs/fesquare.v b/src/Specific/solinas64_2e198m17_4limbs/fesquare.v
deleted file mode 100644
index 65b542280..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e198m17_4limbs.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/solinas64_2e198m17_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e198m17_4limbs/fesquareDisplay.log
deleted file mode 100644
index 7a55b9efd..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x11 * (0x2 * ((uint128_t)x5 * x5))));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0x11 * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- uint64_t x11 = (uint64_t) (x10 >> 0x32);
- uint64_t x12 = ((uint64_t)x10 & 0x3ffffffffffff);
- uint128_t x13 = (x11 + x9);
- uint64_t x14 = (uint64_t) (x13 >> 0x31);
- uint64_t x15 = ((uint64_t)x13 & 0x1ffffffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x32);
- uint64_t x18 = ((uint64_t)x16 & 0x3ffffffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x31);
- uint64_t x21 = ((uint64_t)x19 & 0x1ffffffffffff);
- uint64_t x22 = (x12 + (0x11 * x20));
- uint64_t x23 = (x22 >> 0x32);
- uint64_t x24 = (x22 & 0x3ffffffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x31);
- uint64_t x27 = (x25 & 0x1ffffffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e198m17_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e198m17_4limbs/fesquareDisplay.v
deleted file mode 100644
index 3e116ecf6..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e198m17_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e198m17_4limbs/fesub.c b/src/Specific/solinas64_2e198m17_4limbs/fesub.c
deleted file mode 100644
index 17a37ea15..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x7ffffffffffde + x5) - x11);
- out[1] = ((0x3fffffffffffe + x7) - x13);
- out[2] = ((0x7fffffffffffe + x9) - x15);
- out[3] = ((0x3fffffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e198m17_4limbs/fesub.v b/src/Specific/solinas64_2e198m17_4limbs/fesub.v
deleted file mode 100644
index d0a14ca2a..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e198m17_4limbs.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/solinas64_2e198m17_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e198m17_4limbs/fesubDisplay.log
deleted file mode 100644
index 0454cd477..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0x3fffffffffffe + x8) - x14), ((0x7fffffffffffe + x9) - x15), ((0x3fffffffffffe + x7) - x13), ((0x7ffffffffffde + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e198m17_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e198m17_4limbs/fesubDisplay.v
deleted file mode 100644
index c2ceb3ad2..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e198m17_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e198m17_4limbs/freeze.c b/src/Specific/solinas64_2e198m17_4limbs/freeze.c
deleted file mode 100644
index 0c7b96d4a..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffffef);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x1ffffffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x3ffffffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x1ffffffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0x3ffffffffffef);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0x1ffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0x3ffffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x1ffffffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e198m17_4limbs/freeze.v b/src/Specific/solinas64_2e198m17_4limbs/freeze.v
deleted file mode 100644
index 3df20ee5b..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e198m17_4limbs.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/solinas64_2e198m17_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e198m17_4limbs/freezeDisplay.log
deleted file mode 100644
index 5ff2bff86..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffffef);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x1ffffffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x3ffffffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x1ffffffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0x3ffffffffffef);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0x1ffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0x3ffffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x1ffffffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e198m17_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e198m17_4limbs/freezeDisplay.v
deleted file mode 100644
index 20e19e6f4..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e198m17_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e198m17_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e198m17_4limbs/py_interpreter.sh
deleted file mode 100755
index 964700a43..000000000
--- a/src/Specific/solinas64_2e198m17_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**198 - 17' -Dmodulus_bytes='49.5' -Da24='121665'
diff --git a/src/Specific/solinas64_2e198m17_5limbs/CurveParameters.v b/src/Specific/solinas64_2e198m17_5limbs/CurveParameters.v
deleted file mode 100644
index 28e736777..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^198 - 17
-Base: 39.6
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 39 + 3/5;
- bitwidth := 64;
- s := 2^198;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 5); [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/solinas64_2e198m17_5limbs/Synthesis.v b/src/Specific/solinas64_2e198m17_5limbs/Synthesis.v
deleted file mode 100644
index 18d68a41b..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e198m17_5limbs.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/solinas64_2e198m17_5limbs/compiler.sh b/src/Specific/solinas64_2e198m17_5limbs/compiler.sh
deleted file mode 100755
index 33684e979..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{40,40,39,40,39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<198) - 17' "$@"
diff --git a/src/Specific/solinas64_2e198m17_5limbs/compilerxx.sh b/src/Specific/solinas64_2e198m17_5limbs/compilerxx.sh
deleted file mode 100755
index da068ff2a..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{40,40,39,40,39}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='25' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<198) - 17' "$@"
diff --git a/src/Specific/solinas64_2e198m17_5limbs/feadd.c b/src/Specific/solinas64_2e198m17_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e198m17_5limbs/feadd.v b/src/Specific/solinas64_2e198m17_5limbs/feadd.v
deleted file mode 100644
index 3b246f446..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e198m17_5limbs.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/solinas64_2e198m17_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e198m17_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e198m17_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e198m17_5limbs/feaddDisplay.v
deleted file mode 100644
index 27b34a8d0..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e198m17_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e198m17_5limbs/fecarry.v b/src/Specific/solinas64_2e198m17_5limbs/fecarry.v
deleted file mode 100644
index 058f3fa80..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e198m17_5limbs.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/solinas64_2e198m17_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e198m17_5limbs/fecarryDisplay.v
deleted file mode 100644
index 8e3c5267e..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e198m17_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e198m17_5limbs/femul.c b/src/Specific/solinas64_2e198m17_5limbs/femul.c
deleted file mode 100644
index 65af7e2d5..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint128_t x20 = (((uint128_t)x5 * x18) + (((uint128_t)x7 * x19) + ((0x2 * ((uint128_t)x9 * x17)) + (((uint128_t)x11 * x15) + ((uint128_t)x10 * x13)))));
- { uint128_t x21 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((0x2 * ((uint128_t)x9 * x15)) + ((uint128_t)x11 * x13)))) + (0x11 * (0x2 * ((uint128_t)x10 * x18))));
- { uint128_t x22 = ((((uint128_t)x5 * x17) + (((uint128_t)x7 * x15) + ((uint128_t)x9 * x13))) + (0x11 * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- { uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x11 * ((0x2 * ((uint128_t)x9 * x18)) + (((uint128_t)x11 * x19) + (0x2 * ((uint128_t)x10 * x17))))));
- { uint128_t x24 = (((uint128_t)x5 * x13) + (0x11 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- { uint64_t x25 = (uint64_t) (x24 >> 0x28);
- { uint64_t x26 = ((uint64_t)x24 & 0xffffffffff);
- { uint128_t x27 = (x25 + x23);
- { uint64_t x28 = (uint64_t) (x27 >> 0x28);
- { uint64_t x29 = ((uint64_t)x27 & 0xffffffffff);
- { uint128_t x30 = (x28 + x22);
- { uint64_t x31 = (uint64_t) (x30 >> 0x27);
- { uint64_t x32 = ((uint64_t)x30 & 0x7fffffffff);
- { uint128_t x33 = (x31 + x21);
- { uint64_t x34 = (uint64_t) (x33 >> 0x28);
- { uint64_t x35 = ((uint64_t)x33 & 0xffffffffff);
- { uint128_t x36 = (x34 + x20);
- { uint64_t x37 = (uint64_t) (x36 >> 0x27);
- { uint64_t x38 = ((uint64_t)x36 & 0x7fffffffff);
- { uint64_t x39 = (x26 + (0x11 * x37));
- { uint64_t x40 = (x39 >> 0x28);
- { uint64_t x41 = (x39 & 0xffffffffff);
- { uint64_t x42 = (x40 + x29);
- { uint64_t x43 = (x42 >> 0x28);
- { uint64_t x44 = (x42 & 0xffffffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e198m17_5limbs/femul.v b/src/Specific/solinas64_2e198m17_5limbs/femul.v
deleted file mode 100644
index 87a8c2a8c..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e198m17_5limbs.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/solinas64_2e198m17_5limbs/femulDisplay.log b/src/Specific/solinas64_2e198m17_5limbs/femulDisplay.log
deleted file mode 100644
index 640feef0c..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = (((uint128_t)x5 * x18) + (((uint128_t)x7 * x19) + ((0x2 * ((uint128_t)x9 * x17)) + (((uint128_t)x11 * x15) + ((uint128_t)x10 * x13)))));
- uint128_t x21 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((0x2 * ((uint128_t)x9 * x15)) + ((uint128_t)x11 * x13)))) + (0x11 * (0x2 * ((uint128_t)x10 * x18))));
- uint128_t x22 = ((((uint128_t)x5 * x17) + (((uint128_t)x7 * x15) + ((uint128_t)x9 * x13))) + (0x11 * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x11 * ((0x2 * ((uint128_t)x9 * x18)) + (((uint128_t)x11 * x19) + (0x2 * ((uint128_t)x10 * x17))))));
- uint128_t x24 = (((uint128_t)x5 * x13) + (0x11 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- uint64_t x25 = (uint64_t) (x24 >> 0x28);
- uint64_t x26 = ((uint64_t)x24 & 0xffffffffff);
- uint128_t x27 = (x25 + x23);
- uint64_t x28 = (uint64_t) (x27 >> 0x28);
- uint64_t x29 = ((uint64_t)x27 & 0xffffffffff);
- uint128_t x30 = (x28 + x22);
- uint64_t x31 = (uint64_t) (x30 >> 0x27);
- uint64_t x32 = ((uint64_t)x30 & 0x7fffffffff);
- uint128_t x33 = (x31 + x21);
- uint64_t x34 = (uint64_t) (x33 >> 0x28);
- uint64_t x35 = ((uint64_t)x33 & 0xffffffffff);
- uint128_t x36 = (x34 + x20);
- uint64_t x37 = (uint64_t) (x36 >> 0x27);
- uint64_t x38 = ((uint64_t)x36 & 0x7fffffffff);
- uint64_t x39 = (x26 + (0x11 * x37));
- uint64_t x40 = (x39 >> 0x28);
- uint64_t x41 = (x39 & 0xffffffffff);
- uint64_t x42 = (x40 + x29);
- uint64_t x43 = (x42 >> 0x28);
- uint64_t x44 = (x42 & 0xffffffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e198m17_5limbs/femulDisplay.v b/src/Specific/solinas64_2e198m17_5limbs/femulDisplay.v
deleted file mode 100644
index 105e2df9c..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e198m17_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e198m17_5limbs/fesquare.c b/src/Specific/solinas64_2e198m17_5limbs/fesquare.c
deleted file mode 100644
index 0251e6d37..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x9 = (((uint128_t)x2 * x7) + (((uint128_t)x4 * x8) + ((0x2 * ((uint128_t)x6 * x6)) + (((uint128_t)x8 * x4) + ((uint128_t)x7 * x2)))));
- { uint128_t x10 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x11 * (0x2 * ((uint128_t)x7 * x7))));
- { uint128_t x11 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x11 * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- { uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * ((0x2 * ((uint128_t)x6 * x7)) + (((uint128_t)x8 * x8) + (0x2 * ((uint128_t)x7 * x6))))));
- { uint128_t x13 = (((uint128_t)x2 * x2) + (0x11 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- { uint64_t x14 = (uint64_t) (x13 >> 0x28);
- { uint64_t x15 = ((uint64_t)x13 & 0xffffffffff);
- { uint128_t x16 = (x14 + x12);
- { uint64_t x17 = (uint64_t) (x16 >> 0x28);
- { uint64_t x18 = ((uint64_t)x16 & 0xffffffffff);
- { uint128_t x19 = (x17 + x11);
- { uint64_t x20 = (uint64_t) (x19 >> 0x27);
- { uint64_t x21 = ((uint64_t)x19 & 0x7fffffffff);
- { uint128_t x22 = (x20 + x10);
- { uint64_t x23 = (uint64_t) (x22 >> 0x28);
- { uint64_t x24 = ((uint64_t)x22 & 0xffffffffff);
- { uint128_t x25 = (x23 + x9);
- { uint64_t x26 = (uint64_t) (x25 >> 0x27);
- { uint64_t x27 = ((uint64_t)x25 & 0x7fffffffff);
- { uint64_t x28 = (x15 + (0x11 * x26));
- { uint64_t x29 = (x28 >> 0x28);
- { uint64_t x30 = (x28 & 0xffffffffff);
- { uint64_t x31 = (x29 + x18);
- { uint64_t x32 = (x31 >> 0x28);
- { uint64_t x33 = (x31 & 0xffffffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e198m17_5limbs/fesquare.v b/src/Specific/solinas64_2e198m17_5limbs/fesquare.v
deleted file mode 100644
index 597cd5c9e..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e198m17_5limbs.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/solinas64_2e198m17_5limbs/fesquareDisplay.log b/src/Specific/solinas64_2e198m17_5limbs/fesquareDisplay.log
deleted file mode 100644
index efb8ddcb2..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint128_t x9 = (((uint128_t)x2 * x7) + (((uint128_t)x4 * x8) + ((0x2 * ((uint128_t)x6 * x6)) + (((uint128_t)x8 * x4) + ((uint128_t)x7 * x2)))));
- uint128_t x10 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x11 * (0x2 * ((uint128_t)x7 * x7))));
- uint128_t x11 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x11 * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * ((0x2 * ((uint128_t)x6 * x7)) + (((uint128_t)x8 * x8) + (0x2 * ((uint128_t)x7 * x6))))));
- uint128_t x13 = (((uint128_t)x2 * x2) + (0x11 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- uint64_t x14 = (uint64_t) (x13 >> 0x28);
- uint64_t x15 = ((uint64_t)x13 & 0xffffffffff);
- uint128_t x16 = (x14 + x12);
- uint64_t x17 = (uint64_t) (x16 >> 0x28);
- uint64_t x18 = ((uint64_t)x16 & 0xffffffffff);
- uint128_t x19 = (x17 + x11);
- uint64_t x20 = (uint64_t) (x19 >> 0x27);
- uint64_t x21 = ((uint64_t)x19 & 0x7fffffffff);
- uint128_t x22 = (x20 + x10);
- uint64_t x23 = (uint64_t) (x22 >> 0x28);
- uint64_t x24 = ((uint64_t)x22 & 0xffffffffff);
- uint128_t x25 = (x23 + x9);
- uint64_t x26 = (uint64_t) (x25 >> 0x27);
- uint64_t x27 = ((uint64_t)x25 & 0x7fffffffff);
- uint64_t x28 = (x15 + (0x11 * x26));
- uint64_t x29 = (x28 >> 0x28);
- uint64_t x30 = (x28 & 0xffffffffff);
- uint64_t x31 = (x29 + x18);
- uint64_t x32 = (x31 >> 0x28);
- uint64_t x33 = (x31 & 0xffffffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e198m17_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e198m17_5limbs/fesquareDisplay.v
deleted file mode 100644
index 0d11faa95..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e198m17_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e198m17_5limbs/fesub.c b/src/Specific/solinas64_2e198m17_5limbs/fesub.c
deleted file mode 100644
index b921e2e67..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0x1ffffffffde + x5) - x13);
- out[1] = ((0x1fffffffffe + x7) - x15);
- out[2] = ((0xfffffffffe + x9) - x17);
- out[3] = ((0x1fffffffffe + x11) - x19);
- out[4] = ((0xfffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e198m17_5limbs/fesub.v b/src/Specific/solinas64_2e198m17_5limbs/fesub.v
deleted file mode 100644
index 078ae314b..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e198m17_5limbs.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/solinas64_2e198m17_5limbs/fesubDisplay.log b/src/Specific/solinas64_2e198m17_5limbs/fesubDisplay.log
deleted file mode 100644
index a9271c01c..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0xfffffffffe + x10) - x18), ((0x1fffffffffe + x11) - x19), ((0xfffffffffe + x9) - x17), ((0x1fffffffffe + x7) - x15), ((0x1ffffffffde + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e198m17_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e198m17_5limbs/fesubDisplay.v
deleted file mode 100644
index f7a04f13b..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e198m17_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e198m17_5limbs/freeze.c b/src/Specific/solinas64_2e198m17_5limbs/freeze.c
deleted file mode 100644
index 91d69ba0a..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffef);
- { uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0xffffffffff);
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x7fffffffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0xffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x7fffffffff);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0xffffffffef);
- { uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint64_t x29 = (x24 & 0xffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint64_t x33 = (x24 & 0x7fffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint64_t x37 = (x24 & 0xffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint64_t x41 = (x24 & 0x7fffffffff);
- { uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e198m17_5limbs/freeze.v b/src/Specific/solinas64_2e198m17_5limbs/freeze.v
deleted file mode 100644
index 9b9597e5b..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e198m17_5limbs.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/solinas64_2e198m17_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e198m17_5limbs/freezeDisplay.log
deleted file mode 100644
index 8cc8ad621..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffef);
- uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0xffffffffff);
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x7fffffffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0xffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x7fffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0xffffffffef);
- uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint64_t x29 = (x24 & 0xffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint64_t x33 = (x24 & 0x7fffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint64_t x37 = (x24 & 0xffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint64_t x41 = (x24 & 0x7fffffffff);
- uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e198m17_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e198m17_5limbs/freezeDisplay.v
deleted file mode 100644
index e851a1a99..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e198m17_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e198m17_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e198m17_5limbs/py_interpreter.sh
deleted file mode 100755
index 5ff50a3bd..000000000
--- a/src/Specific/solinas64_2e198m17_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**198 - 17' -Dmodulus_bytes='39.6' -Da24='121665'
diff --git a/src/Specific/solinas64_2e206m5_4limbs/CurveParameters.v b/src/Specific/solinas64_2e206m5_4limbs/CurveParameters.v
deleted file mode 100644
index 185e3afb6..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^206 - 5
-Base: 51.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 51 + 1/2;
- bitwidth := 64;
- s := 2^206;
- c := [(1, 5)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e206m5_4limbs/Synthesis.v b/src/Specific/solinas64_2e206m5_4limbs/Synthesis.v
deleted file mode 100644
index bb96b4b4e..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e206m5_4limbs.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/solinas64_2e206m5_4limbs/compiler.sh b/src/Specific/solinas64_2e206m5_4limbs/compiler.sh
deleted file mode 100755
index 5240bc066..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,51,52,51}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<206) - 5' "$@"
diff --git a/src/Specific/solinas64_2e206m5_4limbs/compilerxx.sh b/src/Specific/solinas64_2e206m5_4limbs/compilerxx.sh
deleted file mode 100755
index c719d7aca..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,51,52,51}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<206) - 5' "$@"
diff --git a/src/Specific/solinas64_2e206m5_4limbs/feadd.c b/src/Specific/solinas64_2e206m5_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e206m5_4limbs/feadd.v b/src/Specific/solinas64_2e206m5_4limbs/feadd.v
deleted file mode 100644
index b51bf68d6..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e206m5_4limbs.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/solinas64_2e206m5_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e206m5_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e206m5_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e206m5_4limbs/feaddDisplay.v
deleted file mode 100644
index 1916ee620..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e206m5_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e206m5_4limbs/fecarry.v b/src/Specific/solinas64_2e206m5_4limbs/fecarry.v
deleted file mode 100644
index 7feb1631c..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e206m5_4limbs.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/solinas64_2e206m5_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e206m5_4limbs/fecarryDisplay.v
deleted file mode 100644
index 5a2b60bba..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e206m5_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e206m5_4limbs/femul.c b/src/Specific/solinas64_2e206m5_4limbs/femul.c
deleted file mode 100644
index cc09e2ec7..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x5 * (0x2 * ((uint128_t)x8 * x14))));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x5 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0x5 * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x34);
- { uint64_t x21 = ((uint64_t)x19 & 0xfffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x33);
- { uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x34);
- { uint64_t x27 = ((uint64_t)x25 & 0xfffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x33);
- { uint64_t x30 = ((uint64_t)x28 & 0x7ffffffffffff);
- { uint64_t x31 = (x21 + (0x5 * x29));
- { uint64_t x32 = (x31 >> 0x34);
- { uint64_t x33 = (x31 & 0xfffffffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x33);
- { uint64_t x36 = (x34 & 0x7ffffffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e206m5_4limbs/femul.v b/src/Specific/solinas64_2e206m5_4limbs/femul.v
deleted file mode 100644
index 45b49f59a..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e206m5_4limbs.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/solinas64_2e206m5_4limbs/femulDisplay.log b/src/Specific/solinas64_2e206m5_4limbs/femulDisplay.log
deleted file mode 100644
index a9fdbd04e..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x5 * (0x2 * ((uint128_t)x8 * x14))));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x5 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0x5 * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x34);
- uint64_t x21 = ((uint64_t)x19 & 0xfffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x33);
- uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x34);
- uint64_t x27 = ((uint64_t)x25 & 0xfffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x33);
- uint64_t x30 = ((uint64_t)x28 & 0x7ffffffffffff);
- uint64_t x31 = (x21 + (0x5 * x29));
- uint64_t x32 = (x31 >> 0x34);
- uint64_t x33 = (x31 & 0xfffffffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x33);
- uint64_t x36 = (x34 & 0x7ffffffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e206m5_4limbs/femulDisplay.v b/src/Specific/solinas64_2e206m5_4limbs/femulDisplay.v
deleted file mode 100644
index c5311bbad..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e206m5_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e206m5_4limbs/fesquare.c b/src/Specific/solinas64_2e206m5_4limbs/fesquare.c
deleted file mode 100644
index df4b48fcf..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x5 * (0x2 * ((uint128_t)x5 * x5))));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x5 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0x5 * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x34);
- { uint64_t x12 = ((uint64_t)x10 & 0xfffffffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint64_t x14 = (uint64_t) (x13 >> 0x33);
- { uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x34);
- { uint64_t x18 = ((uint64_t)x16 & 0xfffffffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x33);
- { uint64_t x21 = ((uint64_t)x19 & 0x7ffffffffffff);
- { uint64_t x22 = (x12 + (0x5 * x20));
- { uint64_t x23 = (x22 >> 0x34);
- { uint64_t x24 = (x22 & 0xfffffffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x33);
- { uint64_t x27 = (x25 & 0x7ffffffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e206m5_4limbs/fesquare.v b/src/Specific/solinas64_2e206m5_4limbs/fesquare.v
deleted file mode 100644
index 81b271e6f..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e206m5_4limbs.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/solinas64_2e206m5_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e206m5_4limbs/fesquareDisplay.log
deleted file mode 100644
index 7aa87c67f..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x5 * (0x2 * ((uint128_t)x5 * x5))));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x5 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0x5 * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- uint64_t x11 = (uint64_t) (x10 >> 0x34);
- uint64_t x12 = ((uint64_t)x10 & 0xfffffffffffff);
- uint128_t x13 = (x11 + x9);
- uint64_t x14 = (uint64_t) (x13 >> 0x33);
- uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x34);
- uint64_t x18 = ((uint64_t)x16 & 0xfffffffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x33);
- uint64_t x21 = ((uint64_t)x19 & 0x7ffffffffffff);
- uint64_t x22 = (x12 + (0x5 * x20));
- uint64_t x23 = (x22 >> 0x34);
- uint64_t x24 = (x22 & 0xfffffffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x33);
- uint64_t x27 = (x25 & 0x7ffffffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e206m5_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e206m5_4limbs/fesquareDisplay.v
deleted file mode 100644
index 496e469a3..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e206m5_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e206m5_4limbs/fesub.c b/src/Specific/solinas64_2e206m5_4limbs/fesub.c
deleted file mode 100644
index 605f4b203..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x1ffffffffffff6 + x5) - x11);
- out[1] = ((0xffffffffffffe + x7) - x13);
- out[2] = ((0x1ffffffffffffe + x9) - x15);
- out[3] = ((0xffffffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e206m5_4limbs/fesub.v b/src/Specific/solinas64_2e206m5_4limbs/fesub.v
deleted file mode 100644
index 61fae988a..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e206m5_4limbs.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/solinas64_2e206m5_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e206m5_4limbs/fesubDisplay.log
deleted file mode 100644
index 81bcc88f2..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0xffffffffffffe + x8) - x14), ((0x1ffffffffffffe + x9) - x15), ((0xffffffffffffe + x7) - x13), ((0x1ffffffffffff6 + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e206m5_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e206m5_4limbs/fesubDisplay.v
deleted file mode 100644
index b077772b2..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e206m5_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e206m5_4limbs/freeze.c b/src/Specific/solinas64_2e206m5_4limbs/freeze.c
deleted file mode 100644
index a6dea8ec3..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffffb);
- { uint64_t x11; uint8_t x12 = _subborrow_u51(x9, x4, 0x7ffffffffffff, &x11);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0xfffffffffffff);
- { uint64_t x17; uint8_t x18 = _subborrow_u51(x15, x5, 0x7ffffffffffff, &x17);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xffffffffffffb);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0x7ffffffffffff);
- { uint64_t x26; uint8_t x27 = _addcarryx_u51(x23, x11, x24, &x26);
- { uint64_t x28 = (x19 & 0xfffffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x7ffffffffffff);
- { uint64_t x34; uint8_t _ = _addcarryx_u51(x31, x17, x32, &x34);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e206m5_4limbs/freeze.v b/src/Specific/solinas64_2e206m5_4limbs/freeze.v
deleted file mode 100644
index 96a4fffb8..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e206m5_4limbs.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/solinas64_2e206m5_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e206m5_4limbs/freezeDisplay.log
deleted file mode 100644
index 79dd921e8..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffffb);
- uint64_t x11, uint8_t x12 = subborrow_u51(x9, x4, 0x7ffffffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0xfffffffffffff);
- uint64_t x17, uint8_t x18 = subborrow_u51(x15, x5, 0x7ffffffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xffffffffffffb);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0x7ffffffffffff);
- uint64_t x26, uint8_t x27 = addcarryx_u51(x23, x11, x24);
- uint64_t x28 = (x19 & 0xfffffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x7ffffffffffff);
- uint64_t x34, uint8_t _ = addcarryx_u51(x31, x17, x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e206m5_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e206m5_4limbs/freezeDisplay.v
deleted file mode 100644
index 15db657e3..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e206m5_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e206m5_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e206m5_4limbs/py_interpreter.sh
deleted file mode 100755
index 7d204f731..000000000
--- a/src/Specific/solinas64_2e206m5_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**206 - 5' -Dmodulus_bytes='51.5' -Da24='121665'
diff --git a/src/Specific/solinas64_2e206m5_5limbs/CurveParameters.v b/src/Specific/solinas64_2e206m5_5limbs/CurveParameters.v
deleted file mode 100644
index 532996953..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^206 - 5
-Base: 41.2
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 41 + 1/5;
- bitwidth := 64;
- s := 2^206;
- c := [(1, 5)];
- carry_chains := Some [seq 0 (pred 5); [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/solinas64_2e206m5_5limbs/Synthesis.v b/src/Specific/solinas64_2e206m5_5limbs/Synthesis.v
deleted file mode 100644
index 5c7306c7f..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e206m5_5limbs.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/solinas64_2e206m5_5limbs/compiler.sh b/src/Specific/solinas64_2e206m5_5limbs/compiler.sh
deleted file mode 100755
index facfb0245..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{42,41,41,41,41}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<206) - 5' "$@"
diff --git a/src/Specific/solinas64_2e206m5_5limbs/compilerxx.sh b/src/Specific/solinas64_2e206m5_5limbs/compilerxx.sh
deleted file mode 100755
index fe6b07fd4..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{42,41,41,41,41}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='26' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<206) - 5' "$@"
diff --git a/src/Specific/solinas64_2e206m5_5limbs/feadd.c b/src/Specific/solinas64_2e206m5_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e206m5_5limbs/feadd.v b/src/Specific/solinas64_2e206m5_5limbs/feadd.v
deleted file mode 100644
index 125a7fee0..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e206m5_5limbs.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/solinas64_2e206m5_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e206m5_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e206m5_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e206m5_5limbs/feaddDisplay.v
deleted file mode 100644
index 5285b6908..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e206m5_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e206m5_5limbs/fecarry.v b/src/Specific/solinas64_2e206m5_5limbs/fecarry.v
deleted file mode 100644
index 283f2e40f..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e206m5_5limbs.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/solinas64_2e206m5_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e206m5_5limbs/fecarryDisplay.v
deleted file mode 100644
index cd3d99a05..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e206m5_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e206m5_5limbs/femul.c b/src/Specific/solinas64_2e206m5_5limbs/femul.c
deleted file mode 100644
index 1347c1d7a..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint128_t x20 = (((uint128_t)x5 * x18) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((0x2 * ((uint128_t)x11 * x15)) + ((uint128_t)x10 * x13)))));
- { uint128_t x21 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((0x2 * ((uint128_t)x9 * x15)) + ((uint128_t)x11 * x13)))) + (0x5 * ((uint128_t)x10 * x18)));
- { uint128_t x22 = ((((uint128_t)x5 * x17) + ((0x2 * ((uint128_t)x7 * x15)) + ((uint128_t)x9 * x13))) + (0x5 * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- { uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x5 * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- { uint128_t x24 = (((uint128_t)x5 * x13) + (0x5 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- { uint64_t x25 = (uint64_t) (x24 >> 0x2a);
- { uint64_t x26 = ((uint64_t)x24 & 0x3ffffffffff);
- { uint128_t x27 = (x25 + x23);
- { uint64_t x28 = (uint64_t) (x27 >> 0x29);
- { uint64_t x29 = ((uint64_t)x27 & 0x1ffffffffff);
- { uint128_t x30 = (x28 + x22);
- { uint64_t x31 = (uint64_t) (x30 >> 0x29);
- { uint64_t x32 = ((uint64_t)x30 & 0x1ffffffffff);
- { uint128_t x33 = (x31 + x21);
- { uint64_t x34 = (uint64_t) (x33 >> 0x29);
- { uint64_t x35 = ((uint64_t)x33 & 0x1ffffffffff);
- { uint128_t x36 = (x34 + x20);
- { uint64_t x37 = (uint64_t) (x36 >> 0x29);
- { uint64_t x38 = ((uint64_t)x36 & 0x1ffffffffff);
- { uint64_t x39 = (x26 + (0x5 * x37));
- { uint64_t x40 = (x39 >> 0x2a);
- { uint64_t x41 = (x39 & 0x3ffffffffff);
- { uint64_t x42 = (x40 + x29);
- { uint64_t x43 = (x42 >> 0x29);
- { uint64_t x44 = (x42 & 0x1ffffffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e206m5_5limbs/femul.v b/src/Specific/solinas64_2e206m5_5limbs/femul.v
deleted file mode 100644
index d5adb6949..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e206m5_5limbs.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/solinas64_2e206m5_5limbs/femulDisplay.log b/src/Specific/solinas64_2e206m5_5limbs/femulDisplay.log
deleted file mode 100644
index 04875356c..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = (((uint128_t)x5 * x18) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((0x2 * ((uint128_t)x11 * x15)) + ((uint128_t)x10 * x13)))));
- uint128_t x21 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((0x2 * ((uint128_t)x9 * x15)) + ((uint128_t)x11 * x13)))) + (0x5 * ((uint128_t)x10 * x18)));
- uint128_t x22 = ((((uint128_t)x5 * x17) + ((0x2 * ((uint128_t)x7 * x15)) + ((uint128_t)x9 * x13))) + (0x5 * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x5 * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- uint128_t x24 = (((uint128_t)x5 * x13) + (0x5 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- uint64_t x25 = (uint64_t) (x24 >> 0x2a);
- uint64_t x26 = ((uint64_t)x24 & 0x3ffffffffff);
- uint128_t x27 = (x25 + x23);
- uint64_t x28 = (uint64_t) (x27 >> 0x29);
- uint64_t x29 = ((uint64_t)x27 & 0x1ffffffffff);
- uint128_t x30 = (x28 + x22);
- uint64_t x31 = (uint64_t) (x30 >> 0x29);
- uint64_t x32 = ((uint64_t)x30 & 0x1ffffffffff);
- uint128_t x33 = (x31 + x21);
- uint64_t x34 = (uint64_t) (x33 >> 0x29);
- uint64_t x35 = ((uint64_t)x33 & 0x1ffffffffff);
- uint128_t x36 = (x34 + x20);
- uint64_t x37 = (uint64_t) (x36 >> 0x29);
- uint64_t x38 = ((uint64_t)x36 & 0x1ffffffffff);
- uint64_t x39 = (x26 + (0x5 * x37));
- uint64_t x40 = (x39 >> 0x2a);
- uint64_t x41 = (x39 & 0x3ffffffffff);
- uint64_t x42 = (x40 + x29);
- uint64_t x43 = (x42 >> 0x29);
- uint64_t x44 = (x42 & 0x1ffffffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e206m5_5limbs/femulDisplay.v b/src/Specific/solinas64_2e206m5_5limbs/femulDisplay.v
deleted file mode 100644
index 62f6a2bd1..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e206m5_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e206m5_5limbs/fesquare.c b/src/Specific/solinas64_2e206m5_5limbs/fesquare.c
deleted file mode 100644
index 29f717f77..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x9 = (((uint128_t)x2 * x7) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x7 * x2)))));
- { uint128_t x10 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x5 * ((uint128_t)x7 * x7)));
- { uint128_t x11 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x5 * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- { uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x5 * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- { uint128_t x13 = (((uint128_t)x2 * x2) + (0x5 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- { uint64_t x14 = (uint64_t) (x13 >> 0x2a);
- { uint64_t x15 = ((uint64_t)x13 & 0x3ffffffffff);
- { uint128_t x16 = (x14 + x12);
- { uint64_t x17 = (uint64_t) (x16 >> 0x29);
- { uint64_t x18 = ((uint64_t)x16 & 0x1ffffffffff);
- { uint128_t x19 = (x17 + x11);
- { uint64_t x20 = (uint64_t) (x19 >> 0x29);
- { uint64_t x21 = ((uint64_t)x19 & 0x1ffffffffff);
- { uint128_t x22 = (x20 + x10);
- { uint64_t x23 = (uint64_t) (x22 >> 0x29);
- { uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffff);
- { uint128_t x25 = (x23 + x9);
- { uint64_t x26 = (uint64_t) (x25 >> 0x29);
- { uint64_t x27 = ((uint64_t)x25 & 0x1ffffffffff);
- { uint64_t x28 = (x15 + (0x5 * x26));
- { uint64_t x29 = (x28 >> 0x2a);
- { uint64_t x30 = (x28 & 0x3ffffffffff);
- { uint64_t x31 = (x29 + x18);
- { uint64_t x32 = (x31 >> 0x29);
- { uint64_t x33 = (x31 & 0x1ffffffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e206m5_5limbs/fesquare.v b/src/Specific/solinas64_2e206m5_5limbs/fesquare.v
deleted file mode 100644
index f9c47d5c7..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e206m5_5limbs.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/solinas64_2e206m5_5limbs/fesquareDisplay.log b/src/Specific/solinas64_2e206m5_5limbs/fesquareDisplay.log
deleted file mode 100644
index 5fad31fb4..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint128_t x9 = (((uint128_t)x2 * x7) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x7 * x2)))));
- uint128_t x10 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x5 * ((uint128_t)x7 * x7)));
- uint128_t x11 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x5 * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x5 * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- uint128_t x13 = (((uint128_t)x2 * x2) + (0x5 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- uint64_t x14 = (uint64_t) (x13 >> 0x2a);
- uint64_t x15 = ((uint64_t)x13 & 0x3ffffffffff);
- uint128_t x16 = (x14 + x12);
- uint64_t x17 = (uint64_t) (x16 >> 0x29);
- uint64_t x18 = ((uint64_t)x16 & 0x1ffffffffff);
- uint128_t x19 = (x17 + x11);
- uint64_t x20 = (uint64_t) (x19 >> 0x29);
- uint64_t x21 = ((uint64_t)x19 & 0x1ffffffffff);
- uint128_t x22 = (x20 + x10);
- uint64_t x23 = (uint64_t) (x22 >> 0x29);
- uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffff);
- uint128_t x25 = (x23 + x9);
- uint64_t x26 = (uint64_t) (x25 >> 0x29);
- uint64_t x27 = ((uint64_t)x25 & 0x1ffffffffff);
- uint64_t x28 = (x15 + (0x5 * x26));
- uint64_t x29 = (x28 >> 0x2a);
- uint64_t x30 = (x28 & 0x3ffffffffff);
- uint64_t x31 = (x29 + x18);
- uint64_t x32 = (x31 >> 0x29);
- uint64_t x33 = (x31 & 0x1ffffffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e206m5_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e206m5_5limbs/fesquareDisplay.v
deleted file mode 100644
index bc84b2911..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e206m5_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e206m5_5limbs/fesub.c b/src/Specific/solinas64_2e206m5_5limbs/fesub.c
deleted file mode 100644
index a55886274..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0x7fffffffff6 + x5) - x13);
- out[1] = ((0x3fffffffffe + x7) - x15);
- out[2] = ((0x3fffffffffe + x9) - x17);
- out[3] = ((0x3fffffffffe + x11) - x19);
- out[4] = ((0x3fffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e206m5_5limbs/fesub.v b/src/Specific/solinas64_2e206m5_5limbs/fesub.v
deleted file mode 100644
index 7e2ce1cf5..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e206m5_5limbs.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/solinas64_2e206m5_5limbs/fesubDisplay.log b/src/Specific/solinas64_2e206m5_5limbs/fesubDisplay.log
deleted file mode 100644
index 784e4571c..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0x3fffffffffe + x10) - x18), ((0x3fffffffffe + x11) - x19), ((0x3fffffffffe + x9) - x17), ((0x3fffffffffe + x7) - x15), ((0x7fffffffff6 + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e206m5_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e206m5_5limbs/fesubDisplay.v
deleted file mode 100644
index 44f95ad1a..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e206m5_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e206m5_5limbs/freeze.c b/src/Specific/solinas64_2e206m5_5limbs/freeze.c
deleted file mode 100644
index aa8cd08e2..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffffb);
- { uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x1ffffffffff);
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x1ffffffffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x1ffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x1ffffffffff);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0x3fffffffffb);
- { uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint64_t x29 = (x24 & 0x1ffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint64_t x33 = (x24 & 0x1ffffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint64_t x37 = (x24 & 0x1ffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint64_t x41 = (x24 & 0x1ffffffffff);
- { uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e206m5_5limbs/freeze.v b/src/Specific/solinas64_2e206m5_5limbs/freeze.v
deleted file mode 100644
index 2d4fd0f7b..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e206m5_5limbs.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/solinas64_2e206m5_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e206m5_5limbs/freezeDisplay.log
deleted file mode 100644
index 1542f14cc..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffffb);
- uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x1ffffffffff);
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x1ffffffffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x1ffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x1ffffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0x3fffffffffb);
- uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint64_t x29 = (x24 & 0x1ffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint64_t x33 = (x24 & 0x1ffffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint64_t x37 = (x24 & 0x1ffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint64_t x41 = (x24 & 0x1ffffffffff);
- uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e206m5_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e206m5_5limbs/freezeDisplay.v
deleted file mode 100644
index 9b63767cc..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e206m5_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e206m5_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e206m5_5limbs/py_interpreter.sh
deleted file mode 100755
index 737a4de50..000000000
--- a/src/Specific/solinas64_2e206m5_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**206 - 5' -Dmodulus_bytes='41.2' -Da24='121665'
diff --git a/src/Specific/solinas64_2e212m29_4limbs/CurveParameters.v b/src/Specific/solinas64_2e212m29_4limbs/CurveParameters.v
deleted file mode 100644
index 26435ae90..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^212 - 29
-Base: 53
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 53;
- bitwidth := 64;
- s := 2^212;
- c := [(1, 29)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e212m29_4limbs/Synthesis.v b/src/Specific/solinas64_2e212m29_4limbs/Synthesis.v
deleted file mode 100644
index 146ca21cf..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e212m29_4limbs.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/solinas64_2e212m29_4limbs/compiler.sh b/src/Specific/solinas64_2e212m29_4limbs/compiler.sh
deleted file mode 100755
index b5a3ee212..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{53,53,53,53}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<212) - 29' "$@"
diff --git a/src/Specific/solinas64_2e212m29_4limbs/compilerxx.sh b/src/Specific/solinas64_2e212m29_4limbs/compilerxx.sh
deleted file mode 100755
index 83fccf806..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{53,53,53,53}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<212) - 29' "$@"
diff --git a/src/Specific/solinas64_2e212m29_4limbs/feadd.c b/src/Specific/solinas64_2e212m29_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e212m29_4limbs/feadd.v b/src/Specific/solinas64_2e212m29_4limbs/feadd.v
deleted file mode 100644
index 4491f1008..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e212m29_4limbs.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/solinas64_2e212m29_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e212m29_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e212m29_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e212m29_4limbs/feaddDisplay.v
deleted file mode 100644
index fbc9245a1..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e212m29_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e212m29_4limbs/fecarry.v b/src/Specific/solinas64_2e212m29_4limbs/fecarry.v
deleted file mode 100644
index 4d07d3a91..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e212m29_4limbs.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/solinas64_2e212m29_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e212m29_4limbs/fecarryDisplay.v
deleted file mode 100644
index 3afe6702f..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e212m29_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e212m29_4limbs/femul.c b/src/Specific/solinas64_2e212m29_4limbs/femul.c
deleted file mode 100644
index edd1e152c..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + (((uint128_t)x7 * x13) + ((uint128_t)x9 * x11))) + (0x1d * ((uint128_t)x8 * x14)));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x1d * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0x1d * (((uint128_t)x7 * x14) + (((uint128_t)x9 * x15) + ((uint128_t)x8 * x13)))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x35);
- { uint64_t x21 = ((uint64_t)x19 & 0x1fffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x35);
- { uint64_t x24 = ((uint64_t)x22 & 0x1fffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x35);
- { uint64_t x27 = ((uint64_t)x25 & 0x1fffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x35);
- { uint64_t x30 = ((uint64_t)x28 & 0x1fffffffffffff);
- { uint64_t x31 = (x21 + (0x1d * x29));
- { uint64_t x32 = (x31 >> 0x35);
- { uint64_t x33 = (x31 & 0x1fffffffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x35);
- { uint64_t x36 = (x34 & 0x1fffffffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e212m29_4limbs/femul.v b/src/Specific/solinas64_2e212m29_4limbs/femul.v
deleted file mode 100644
index 8ffe04377..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e212m29_4limbs.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/solinas64_2e212m29_4limbs/femulDisplay.log b/src/Specific/solinas64_2e212m29_4limbs/femulDisplay.log
deleted file mode 100644
index f16224016..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + (((uint128_t)x7 * x13) + ((uint128_t)x9 * x11))) + (0x1d * ((uint128_t)x8 * x14)));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x1d * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0x1d * (((uint128_t)x7 * x14) + (((uint128_t)x9 * x15) + ((uint128_t)x8 * x13)))));
- uint64_t x20 = (uint64_t) (x19 >> 0x35);
- uint64_t x21 = ((uint64_t)x19 & 0x1fffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x35);
- uint64_t x24 = ((uint64_t)x22 & 0x1fffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x35);
- uint64_t x27 = ((uint64_t)x25 & 0x1fffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x35);
- uint64_t x30 = ((uint64_t)x28 & 0x1fffffffffffff);
- uint64_t x31 = (x21 + (0x1d * x29));
- uint64_t x32 = (x31 >> 0x35);
- uint64_t x33 = (x31 & 0x1fffffffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x35);
- uint64_t x36 = (x34 & 0x1fffffffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e212m29_4limbs/femulDisplay.v b/src/Specific/solinas64_2e212m29_4limbs/femulDisplay.v
deleted file mode 100644
index e0e57decc..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e212m29_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e212m29_4limbs/fesquare.c b/src/Specific/solinas64_2e212m29_4limbs/fesquare.c
deleted file mode 100644
index faa9c384f..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x1d * ((uint128_t)x5 * x5)));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1d * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0x1d * (((uint128_t)x4 * x5) + (((uint128_t)x6 * x6) + ((uint128_t)x5 * x4)))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x35);
- { uint64_t x12 = ((uint64_t)x10 & 0x1fffffffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint64_t x14 = (uint64_t) (x13 >> 0x35);
- { uint64_t x15 = ((uint64_t)x13 & 0x1fffffffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x35);
- { uint64_t x18 = ((uint64_t)x16 & 0x1fffffffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x35);
- { uint64_t x21 = ((uint64_t)x19 & 0x1fffffffffffff);
- { uint64_t x22 = (x12 + (0x1d * x20));
- { uint64_t x23 = (x22 >> 0x35);
- { uint64_t x24 = (x22 & 0x1fffffffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x35);
- { uint64_t x27 = (x25 & 0x1fffffffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e212m29_4limbs/fesquare.v b/src/Specific/solinas64_2e212m29_4limbs/fesquare.v
deleted file mode 100644
index 7b30c26d7..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e212m29_4limbs.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/solinas64_2e212m29_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e212m29_4limbs/fesquareDisplay.log
deleted file mode 100644
index 134cadfa2..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x1d * ((uint128_t)x5 * x5)));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1d * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0x1d * (((uint128_t)x4 * x5) + (((uint128_t)x6 * x6) + ((uint128_t)x5 * x4)))));
- uint64_t x11 = (uint64_t) (x10 >> 0x35);
- uint64_t x12 = ((uint64_t)x10 & 0x1fffffffffffff);
- uint128_t x13 = (x11 + x9);
- uint64_t x14 = (uint64_t) (x13 >> 0x35);
- uint64_t x15 = ((uint64_t)x13 & 0x1fffffffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x35);
- uint64_t x18 = ((uint64_t)x16 & 0x1fffffffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x35);
- uint64_t x21 = ((uint64_t)x19 & 0x1fffffffffffff);
- uint64_t x22 = (x12 + (0x1d * x20));
- uint64_t x23 = (x22 >> 0x35);
- uint64_t x24 = (x22 & 0x1fffffffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x35);
- uint64_t x27 = (x25 & 0x1fffffffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e212m29_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e212m29_4limbs/fesquareDisplay.v
deleted file mode 100644
index 4aa52c8cc..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e212m29_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e212m29_4limbs/fesub.c b/src/Specific/solinas64_2e212m29_4limbs/fesub.c
deleted file mode 100644
index 8ea0c01ca..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x3fffffffffffc6 + x5) - x11);
- out[1] = ((0x3ffffffffffffe + x7) - x13);
- out[2] = ((0x3ffffffffffffe + x9) - x15);
- out[3] = ((0x3ffffffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e212m29_4limbs/fesub.v b/src/Specific/solinas64_2e212m29_4limbs/fesub.v
deleted file mode 100644
index 014a1aad5..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e212m29_4limbs.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/solinas64_2e212m29_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e212m29_4limbs/fesubDisplay.log
deleted file mode 100644
index d08123189..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0x3ffffffffffffe + x8) - x14), ((0x3ffffffffffffe + x9) - x15), ((0x3ffffffffffffe + x7) - x13), ((0x3fffffffffffc6 + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e212m29_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e212m29_4limbs/fesubDisplay.v
deleted file mode 100644
index 3056928e8..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e212m29_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e212m29_4limbs/freeze.c b/src/Specific/solinas64_2e212m29_4limbs/freeze.c
deleted file mode 100644
index ba2a57d23..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffffffe3);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x1fffffffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x1fffffffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x1fffffffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0x1fffffffffffe3);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0x1fffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0x1fffffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x1fffffffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e212m29_4limbs/freeze.v b/src/Specific/solinas64_2e212m29_4limbs/freeze.v
deleted file mode 100644
index cb865f9ff..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e212m29_4limbs.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/solinas64_2e212m29_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e212m29_4limbs/freezeDisplay.log
deleted file mode 100644
index 83cbb1bec..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffffffe3);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x1fffffffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x1fffffffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x1fffffffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0x1fffffffffffe3);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0x1fffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0x1fffffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x1fffffffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e212m29_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e212m29_4limbs/freezeDisplay.v
deleted file mode 100644
index 6c3bd46aa..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e212m29_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e212m29_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e212m29_4limbs/py_interpreter.sh
deleted file mode 100755
index b1c168f4d..000000000
--- a/src/Specific/solinas64_2e212m29_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**212 - 29' -Dmodulus_bytes='53' -Da24='121665'
diff --git a/src/Specific/solinas64_2e212m29_5limbs/CurveParameters.v b/src/Specific/solinas64_2e212m29_5limbs/CurveParameters.v
deleted file mode 100644
index d44bbd23f..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^212 - 29
-Base: 42.4
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 42 + 2/5;
- bitwidth := 64;
- s := 2^212;
- c := [(1, 29)];
- carry_chains := Some [seq 0 (pred 5); [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/solinas64_2e212m29_5limbs/Synthesis.v b/src/Specific/solinas64_2e212m29_5limbs/Synthesis.v
deleted file mode 100644
index 77a74b883..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e212m29_5limbs.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/solinas64_2e212m29_5limbs/compiler.sh b/src/Specific/solinas64_2e212m29_5limbs/compiler.sh
deleted file mode 100755
index 389f02f7f..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,42,43,42,42}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<212) - 29' "$@"
diff --git a/src/Specific/solinas64_2e212m29_5limbs/compilerxx.sh b/src/Specific/solinas64_2e212m29_5limbs/compilerxx.sh
deleted file mode 100755
index 66e412105..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,42,43,42,42}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe3}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<212) - 29' "$@"
diff --git a/src/Specific/solinas64_2e212m29_5limbs/feadd.c b/src/Specific/solinas64_2e212m29_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e212m29_5limbs/feadd.v b/src/Specific/solinas64_2e212m29_5limbs/feadd.v
deleted file mode 100644
index 6a160096f..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e212m29_5limbs.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/solinas64_2e212m29_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e212m29_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e212m29_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e212m29_5limbs/feaddDisplay.v
deleted file mode 100644
index 7d2c530a2..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e212m29_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e212m29_5limbs/fecarry.v b/src/Specific/solinas64_2e212m29_5limbs/fecarry.v
deleted file mode 100644
index 95370e1fc..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e212m29_5limbs.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/solinas64_2e212m29_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e212m29_5limbs/fecarryDisplay.v
deleted file mode 100644
index ca63a8bcc..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e212m29_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e212m29_5limbs/femul.c b/src/Specific/solinas64_2e212m29_5limbs/femul.c
deleted file mode 100644
index 11997e93d..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint128_t x20 = (((uint128_t)x5 * x18) + ((0x2 * ((uint128_t)x7 * x19)) + (((uint128_t)x9 * x17) + ((0x2 * ((uint128_t)x11 * x15)) + ((uint128_t)x10 * x13)))));
- { uint128_t x21 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + (((uint128_t)x9 * x15) + ((uint128_t)x11 * x13)))) + (0x1d * ((uint128_t)x10 * x18)));
- { uint128_t x22 = ((((uint128_t)x5 * x17) + ((0x2 * ((uint128_t)x7 * x15)) + ((uint128_t)x9 * x13))) + (0x1d * ((0x2 * ((uint128_t)x11 * x18)) + (0x2 * ((uint128_t)x10 * x19)))));
- { uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x1d * (((uint128_t)x9 * x18) + ((0x2 * ((uint128_t)x11 * x19)) + ((uint128_t)x10 * x17)))));
- { uint128_t x24 = (((uint128_t)x5 * x13) + (0x1d * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- { uint64_t x25 = (uint64_t) (x24 >> 0x2b);
- { uint64_t x26 = ((uint64_t)x24 & 0x7ffffffffff);
- { uint128_t x27 = (x25 + x23);
- { uint64_t x28 = (uint64_t) (x27 >> 0x2a);
- { uint64_t x29 = ((uint64_t)x27 & 0x3ffffffffff);
- { uint128_t x30 = (x28 + x22);
- { uint64_t x31 = (uint64_t) (x30 >> 0x2b);
- { uint64_t x32 = ((uint64_t)x30 & 0x7ffffffffff);
- { uint128_t x33 = (x31 + x21);
- { uint64_t x34 = (uint64_t) (x33 >> 0x2a);
- { uint64_t x35 = ((uint64_t)x33 & 0x3ffffffffff);
- { uint128_t x36 = (x34 + x20);
- { uint64_t x37 = (uint64_t) (x36 >> 0x2a);
- { uint64_t x38 = ((uint64_t)x36 & 0x3ffffffffff);
- { uint64_t x39 = (x26 + (0x1d * x37));
- { uint64_t x40 = (x39 >> 0x2b);
- { uint64_t x41 = (x39 & 0x7ffffffffff);
- { uint64_t x42 = (x40 + x29);
- { uint64_t x43 = (x42 >> 0x2a);
- { uint64_t x44 = (x42 & 0x3ffffffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e212m29_5limbs/femul.v b/src/Specific/solinas64_2e212m29_5limbs/femul.v
deleted file mode 100644
index bbc5f1945..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e212m29_5limbs.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/solinas64_2e212m29_5limbs/femulDisplay.log b/src/Specific/solinas64_2e212m29_5limbs/femulDisplay.log
deleted file mode 100644
index e1327f691..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = (((uint128_t)x5 * x18) + ((0x2 * ((uint128_t)x7 * x19)) + (((uint128_t)x9 * x17) + ((0x2 * ((uint128_t)x11 * x15)) + ((uint128_t)x10 * x13)))));
- uint128_t x21 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + (((uint128_t)x9 * x15) + ((uint128_t)x11 * x13)))) + (0x1d * ((uint128_t)x10 * x18)));
- uint128_t x22 = ((((uint128_t)x5 * x17) + ((0x2 * ((uint128_t)x7 * x15)) + ((uint128_t)x9 * x13))) + (0x1d * ((0x2 * ((uint128_t)x11 * x18)) + (0x2 * ((uint128_t)x10 * x19)))));
- uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x1d * (((uint128_t)x9 * x18) + ((0x2 * ((uint128_t)x11 * x19)) + ((uint128_t)x10 * x17)))));
- uint128_t x24 = (((uint128_t)x5 * x13) + (0x1d * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- uint64_t x25 = (uint64_t) (x24 >> 0x2b);
- uint64_t x26 = ((uint64_t)x24 & 0x7ffffffffff);
- uint128_t x27 = (x25 + x23);
- uint64_t x28 = (uint64_t) (x27 >> 0x2a);
- uint64_t x29 = ((uint64_t)x27 & 0x3ffffffffff);
- uint128_t x30 = (x28 + x22);
- uint64_t x31 = (uint64_t) (x30 >> 0x2b);
- uint64_t x32 = ((uint64_t)x30 & 0x7ffffffffff);
- uint128_t x33 = (x31 + x21);
- uint64_t x34 = (uint64_t) (x33 >> 0x2a);
- uint64_t x35 = ((uint64_t)x33 & 0x3ffffffffff);
- uint128_t x36 = (x34 + x20);
- uint64_t x37 = (uint64_t) (x36 >> 0x2a);
- uint64_t x38 = ((uint64_t)x36 & 0x3ffffffffff);
- uint64_t x39 = (x26 + (0x1d * x37));
- uint64_t x40 = (x39 >> 0x2b);
- uint64_t x41 = (x39 & 0x7ffffffffff);
- uint64_t x42 = (x40 + x29);
- uint64_t x43 = (x42 >> 0x2a);
- uint64_t x44 = (x42 & 0x3ffffffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e212m29_5limbs/femulDisplay.v b/src/Specific/solinas64_2e212m29_5limbs/femulDisplay.v
deleted file mode 100644
index 55950ee98..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e212m29_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e212m29_5limbs/fesquare.c b/src/Specific/solinas64_2e212m29_5limbs/fesquare.c
deleted file mode 100644
index a79718c33..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x9 = (((uint128_t)x2 * x7) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x7 * x2)))));
- { uint128_t x10 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x1d * ((uint128_t)x7 * x7)));
- { uint128_t x11 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x1d * ((0x2 * ((uint128_t)x8 * x7)) + (0x2 * ((uint128_t)x7 * x8)))));
- { uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1d * (((uint128_t)x6 * x7) + ((0x2 * ((uint128_t)x8 * x8)) + ((uint128_t)x7 * x6)))));
- { uint128_t x13 = (((uint128_t)x2 * x2) + (0x1d * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- { uint64_t x14 = (uint64_t) (x13 >> 0x2b);
- { uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffff);
- { uint128_t x16 = (x14 + x12);
- { uint64_t x17 = (uint64_t) (x16 >> 0x2a);
- { uint64_t x18 = ((uint64_t)x16 & 0x3ffffffffff);
- { uint128_t x19 = (x17 + x11);
- { uint64_t x20 = (uint64_t) (x19 >> 0x2b);
- { uint64_t x21 = ((uint64_t)x19 & 0x7ffffffffff);
- { uint128_t x22 = (x20 + x10);
- { uint64_t x23 = (uint64_t) (x22 >> 0x2a);
- { uint64_t x24 = ((uint64_t)x22 & 0x3ffffffffff);
- { uint128_t x25 = (x23 + x9);
- { uint64_t x26 = (uint64_t) (x25 >> 0x2a);
- { uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffff);
- { uint64_t x28 = (x15 + (0x1d * x26));
- { uint64_t x29 = (x28 >> 0x2b);
- { uint64_t x30 = (x28 & 0x7ffffffffff);
- { uint64_t x31 = (x29 + x18);
- { uint64_t x32 = (x31 >> 0x2a);
- { uint64_t x33 = (x31 & 0x3ffffffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e212m29_5limbs/fesquare.v b/src/Specific/solinas64_2e212m29_5limbs/fesquare.v
deleted file mode 100644
index d0d9a6895..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e212m29_5limbs.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/solinas64_2e212m29_5limbs/fesquareDisplay.log b/src/Specific/solinas64_2e212m29_5limbs/fesquareDisplay.log
deleted file mode 100644
index 31e7b178a..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint128_t x9 = (((uint128_t)x2 * x7) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x7 * x2)))));
- uint128_t x10 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x1d * ((uint128_t)x7 * x7)));
- uint128_t x11 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x1d * ((0x2 * ((uint128_t)x8 * x7)) + (0x2 * ((uint128_t)x7 * x8)))));
- uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1d * (((uint128_t)x6 * x7) + ((0x2 * ((uint128_t)x8 * x8)) + ((uint128_t)x7 * x6)))));
- uint128_t x13 = (((uint128_t)x2 * x2) + (0x1d * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- uint64_t x14 = (uint64_t) (x13 >> 0x2b);
- uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffff);
- uint128_t x16 = (x14 + x12);
- uint64_t x17 = (uint64_t) (x16 >> 0x2a);
- uint64_t x18 = ((uint64_t)x16 & 0x3ffffffffff);
- uint128_t x19 = (x17 + x11);
- uint64_t x20 = (uint64_t) (x19 >> 0x2b);
- uint64_t x21 = ((uint64_t)x19 & 0x7ffffffffff);
- uint128_t x22 = (x20 + x10);
- uint64_t x23 = (uint64_t) (x22 >> 0x2a);
- uint64_t x24 = ((uint64_t)x22 & 0x3ffffffffff);
- uint128_t x25 = (x23 + x9);
- uint64_t x26 = (uint64_t) (x25 >> 0x2a);
- uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffff);
- uint64_t x28 = (x15 + (0x1d * x26));
- uint64_t x29 = (x28 >> 0x2b);
- uint64_t x30 = (x28 & 0x7ffffffffff);
- uint64_t x31 = (x29 + x18);
- uint64_t x32 = (x31 >> 0x2a);
- uint64_t x33 = (x31 & 0x3ffffffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e212m29_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e212m29_5limbs/fesquareDisplay.v
deleted file mode 100644
index 6d03215f8..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e212m29_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e212m29_5limbs/fesub.c b/src/Specific/solinas64_2e212m29_5limbs/fesub.c
deleted file mode 100644
index 45d29efd6..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0xfffffffffc6 + x5) - x13);
- out[1] = ((0x7fffffffffe + x7) - x15);
- out[2] = ((0xffffffffffe + x9) - x17);
- out[3] = ((0x7fffffffffe + x11) - x19);
- out[4] = ((0x7fffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e212m29_5limbs/fesub.v b/src/Specific/solinas64_2e212m29_5limbs/fesub.v
deleted file mode 100644
index ac05b02cf..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e212m29_5limbs.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/solinas64_2e212m29_5limbs/fesubDisplay.log b/src/Specific/solinas64_2e212m29_5limbs/fesubDisplay.log
deleted file mode 100644
index 40ae8723a..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0x7fffffffffe + x10) - x18), ((0x7fffffffffe + x11) - x19), ((0xffffffffffe + x9) - x17), ((0x7fffffffffe + x7) - x15), ((0xfffffffffc6 + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e212m29_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e212m29_5limbs/fesubDisplay.v
deleted file mode 100644
index b4609f2ce..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e212m29_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e212m29_5limbs/freeze.c b/src/Specific/solinas64_2e212m29_5limbs/freeze.c
deleted file mode 100644
index 63bd21e1c..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffe3);
- { uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x3ffffffffff);
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x7ffffffffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x3ffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x3ffffffffff);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0x7ffffffffe3);
- { uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint64_t x29 = (x24 & 0x3ffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint64_t x33 = (x24 & 0x7ffffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint64_t x37 = (x24 & 0x3ffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint64_t x41 = (x24 & 0x3ffffffffff);
- { uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e212m29_5limbs/freeze.v b/src/Specific/solinas64_2e212m29_5limbs/freeze.v
deleted file mode 100644
index 33bd2ee31..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e212m29_5limbs.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/solinas64_2e212m29_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e212m29_5limbs/freezeDisplay.log
deleted file mode 100644
index d300528f6..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffe3);
- uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x3ffffffffff);
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x7ffffffffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x3ffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x3ffffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0x7ffffffffe3);
- uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint64_t x29 = (x24 & 0x3ffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint64_t x33 = (x24 & 0x7ffffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint64_t x37 = (x24 & 0x3ffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint64_t x41 = (x24 & 0x3ffffffffff);
- uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e212m29_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e212m29_5limbs/freezeDisplay.v
deleted file mode 100644
index dad89f1e3..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e212m29_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e212m29_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e212m29_5limbs/py_interpreter.sh
deleted file mode 100755
index a6f184c98..000000000
--- a/src/Specific/solinas64_2e212m29_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**212 - 29' -Dmodulus_bytes='42.4' -Da24='121665'
diff --git a/src/Specific/solinas64_2e213m3_4limbs/CurveParameters.v b/src/Specific/solinas64_2e213m3_4limbs/CurveParameters.v
deleted file mode 100644
index 7b8111f00..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^213 - 3
-Base: 53.25
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 53 + 1/4;
- bitwidth := 64;
- s := 2^213;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e213m3_4limbs/Synthesis.v b/src/Specific/solinas64_2e213m3_4limbs/Synthesis.v
deleted file mode 100644
index de828a7d0..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e213m3_4limbs.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/solinas64_2e213m3_4limbs/compiler.sh b/src/Specific/solinas64_2e213m3_4limbs/compiler.sh
deleted file mode 100755
index c88f6d0f0..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{54,53,53,53}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<213) - 3' "$@"
diff --git a/src/Specific/solinas64_2e213m3_4limbs/compilerxx.sh b/src/Specific/solinas64_2e213m3_4limbs/compilerxx.sh
deleted file mode 100755
index 4b82c88d5..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{54,53,53,53}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<213) - 3' "$@"
diff --git a/src/Specific/solinas64_2e213m3_4limbs/feadd.c b/src/Specific/solinas64_2e213m3_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e213m3_4limbs/feadd.v b/src/Specific/solinas64_2e213m3_4limbs/feadd.v
deleted file mode 100644
index 101012963..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e213m3_4limbs.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/solinas64_2e213m3_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e213m3_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e213m3_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e213m3_4limbs/feaddDisplay.v
deleted file mode 100644
index e38902c92..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e213m3_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e213m3_4limbs/fecarry.v b/src/Specific/solinas64_2e213m3_4limbs/fecarry.v
deleted file mode 100644
index 607098bbc..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e213m3_4limbs.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/solinas64_2e213m3_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e213m3_4limbs/fecarryDisplay.v
deleted file mode 100644
index 3fcad9331..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e213m3_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e213m3_4limbs/femul.c b/src/Specific/solinas64_2e213m3_4limbs/femul.c
deleted file mode 100644
index 9b8555ac6..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + ((0x2 * ((uint128_t)x7 * x15)) + ((0x2 * ((uint128_t)x9 * x13)) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x3 * ((uint128_t)x8 * x14)));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x3 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0x3 * ((0x2 * ((uint128_t)x7 * x14)) + ((0x2 * ((uint128_t)x9 * x15)) + (0x2 * ((uint128_t)x8 * x13))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x36);
- { uint64_t x21 = ((uint64_t)x19 & 0x3fffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x35);
- { uint64_t x24 = ((uint64_t)x22 & 0x1fffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x35);
- { uint64_t x27 = ((uint64_t)x25 & 0x1fffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x35);
- { uint64_t x30 = ((uint64_t)x28 & 0x1fffffffffffff);
- { uint64_t x31 = (x21 + (0x3 * x29));
- { uint64_t x32 = (x31 >> 0x36);
- { uint64_t x33 = (x31 & 0x3fffffffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x35);
- { uint64_t x36 = (x34 & 0x1fffffffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e213m3_4limbs/femul.v b/src/Specific/solinas64_2e213m3_4limbs/femul.v
deleted file mode 100644
index d284a273e..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e213m3_4limbs.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/solinas64_2e213m3_4limbs/femulDisplay.log b/src/Specific/solinas64_2e213m3_4limbs/femulDisplay.log
deleted file mode 100644
index 49daa0df9..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + ((0x2 * ((uint128_t)x7 * x15)) + ((0x2 * ((uint128_t)x9 * x13)) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x3 * ((uint128_t)x8 * x14)));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x3 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0x3 * ((0x2 * ((uint128_t)x7 * x14)) + ((0x2 * ((uint128_t)x9 * x15)) + (0x2 * ((uint128_t)x8 * x13))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x36);
- uint64_t x21 = ((uint64_t)x19 & 0x3fffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x35);
- uint64_t x24 = ((uint64_t)x22 & 0x1fffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x35);
- uint64_t x27 = ((uint64_t)x25 & 0x1fffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x35);
- uint64_t x30 = ((uint64_t)x28 & 0x1fffffffffffff);
- uint64_t x31 = (x21 + (0x3 * x29));
- uint64_t x32 = (x31 >> 0x36);
- uint64_t x33 = (x31 & 0x3fffffffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x35);
- uint64_t x36 = (x34 & 0x1fffffffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e213m3_4limbs/femulDisplay.v b/src/Specific/solinas64_2e213m3_4limbs/femulDisplay.v
deleted file mode 100644
index 1a937c23d..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e213m3_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e213m3_4limbs/fesquare.c b/src/Specific/solinas64_2e213m3_4limbs/fesquare.c
deleted file mode 100644
index f7dd12ecc..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x3 * ((uint128_t)x5 * x5)));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0x3 * ((0x2 * ((uint128_t)x4 * x5)) + ((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x5 * x4))))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x36);
- { uint64_t x12 = ((uint64_t)x10 & 0x3fffffffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint64_t x14 = (uint64_t) (x13 >> 0x35);
- { uint64_t x15 = ((uint64_t)x13 & 0x1fffffffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x35);
- { uint64_t x18 = ((uint64_t)x16 & 0x1fffffffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x35);
- { uint64_t x21 = ((uint64_t)x19 & 0x1fffffffffffff);
- { uint64_t x22 = (x12 + (0x3 * x20));
- { uint64_t x23 = (x22 >> 0x36);
- { uint64_t x24 = (x22 & 0x3fffffffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x35);
- { uint64_t x27 = (x25 & 0x1fffffffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e213m3_4limbs/fesquare.v b/src/Specific/solinas64_2e213m3_4limbs/fesquare.v
deleted file mode 100644
index de6e4f403..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e213m3_4limbs.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/solinas64_2e213m3_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e213m3_4limbs/fesquareDisplay.log
deleted file mode 100644
index 290179681..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x3 * ((uint128_t)x5 * x5)));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0x3 * ((0x2 * ((uint128_t)x4 * x5)) + ((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x5 * x4))))));
- uint64_t x11 = (uint64_t) (x10 >> 0x36);
- uint64_t x12 = ((uint64_t)x10 & 0x3fffffffffffff);
- uint128_t x13 = (x11 + x9);
- uint64_t x14 = (uint64_t) (x13 >> 0x35);
- uint64_t x15 = ((uint64_t)x13 & 0x1fffffffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x35);
- uint64_t x18 = ((uint64_t)x16 & 0x1fffffffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x35);
- uint64_t x21 = ((uint64_t)x19 & 0x1fffffffffffff);
- uint64_t x22 = (x12 + (0x3 * x20));
- uint64_t x23 = (x22 >> 0x36);
- uint64_t x24 = (x22 & 0x3fffffffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x35);
- uint64_t x27 = (x25 & 0x1fffffffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e213m3_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e213m3_4limbs/fesquareDisplay.v
deleted file mode 100644
index 2d4d3241d..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e213m3_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e213m3_4limbs/fesub.c b/src/Specific/solinas64_2e213m3_4limbs/fesub.c
deleted file mode 100644
index e9653060b..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x7ffffffffffffa + x5) - x11);
- out[1] = ((0x3ffffffffffffe + x7) - x13);
- out[2] = ((0x3ffffffffffffe + x9) - x15);
- out[3] = ((0x3ffffffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e213m3_4limbs/fesub.v b/src/Specific/solinas64_2e213m3_4limbs/fesub.v
deleted file mode 100644
index 3a1543e98..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e213m3_4limbs.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/solinas64_2e213m3_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e213m3_4limbs/fesubDisplay.log
deleted file mode 100644
index 82e0dfabe..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0x3ffffffffffffe + x8) - x14), ((0x3ffffffffffffe + x9) - x15), ((0x3ffffffffffffe + x7) - x13), ((0x7ffffffffffffa + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e213m3_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e213m3_4limbs/fesubDisplay.v
deleted file mode 100644
index 1a554ee3e..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e213m3_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e213m3_4limbs/freeze.c b/src/Specific/solinas64_2e213m3_4limbs/freeze.c
deleted file mode 100644
index b27bdee4d..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffffffd);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x1fffffffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x1fffffffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x1fffffffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0x3ffffffffffffd);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0x1fffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0x1fffffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x1fffffffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e213m3_4limbs/freeze.v b/src/Specific/solinas64_2e213m3_4limbs/freeze.v
deleted file mode 100644
index f53907624..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e213m3_4limbs.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/solinas64_2e213m3_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e213m3_4limbs/freezeDisplay.log
deleted file mode 100644
index 34d7db38c..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffffffd);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x1fffffffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x1fffffffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x1fffffffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0x3ffffffffffffd);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0x1fffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0x1fffffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x1fffffffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e213m3_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e213m3_4limbs/freezeDisplay.v
deleted file mode 100644
index 5c3614d2d..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e213m3_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e213m3_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e213m3_4limbs/py_interpreter.sh
deleted file mode 100755
index b5cfeaa3c..000000000
--- a/src/Specific/solinas64_2e213m3_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**213 - 3' -Dmodulus_bytes='53.25' -Da24='121665'
diff --git a/src/Specific/solinas64_2e213m3_5limbs/CurveParameters.v b/src/Specific/solinas64_2e213m3_5limbs/CurveParameters.v
deleted file mode 100644
index f242d4915..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^213 - 3
-Base: 42.6
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 42 + 3/5;
- bitwidth := 64;
- s := 2^213;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 5); [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/solinas64_2e213m3_5limbs/Synthesis.v b/src/Specific/solinas64_2e213m3_5limbs/Synthesis.v
deleted file mode 100644
index 44bd89be0..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e213m3_5limbs.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/solinas64_2e213m3_5limbs/compiler.sh b/src/Specific/solinas64_2e213m3_5limbs/compiler.sh
deleted file mode 100755
index 0d5edab49..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,42,43,42}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<213) - 3' "$@"
diff --git a/src/Specific/solinas64_2e213m3_5limbs/compilerxx.sh b/src/Specific/solinas64_2e213m3_5limbs/compilerxx.sh
deleted file mode 100755
index fcde00b4b..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,42,43,42}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<213) - 3' "$@"
diff --git a/src/Specific/solinas64_2e213m3_5limbs/feadd.c b/src/Specific/solinas64_2e213m3_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e213m3_5limbs/feadd.v b/src/Specific/solinas64_2e213m3_5limbs/feadd.v
deleted file mode 100644
index 4b64bd65f..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e213m3_5limbs.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/solinas64_2e213m3_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e213m3_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e213m3_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e213m3_5limbs/feaddDisplay.v
deleted file mode 100644
index 494f2bee7..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e213m3_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e213m3_5limbs/fecarry.v b/src/Specific/solinas64_2e213m3_5limbs/fecarry.v
deleted file mode 100644
index abb136064..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e213m3_5limbs.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/solinas64_2e213m3_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e213m3_5limbs/fecarryDisplay.v
deleted file mode 100644
index df48b7756..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e213m3_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e213m3_5limbs/femul.c b/src/Specific/solinas64_2e213m3_5limbs/femul.c
deleted file mode 100644
index ce0a4337a..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint128_t x20 = (((uint128_t)x5 * x18) + (((uint128_t)x7 * x19) + ((0x2 * ((uint128_t)x9 * x17)) + (((uint128_t)x11 * x15) + ((uint128_t)x10 * x13)))));
- { uint128_t x21 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((0x2 * ((uint128_t)x9 * x15)) + ((uint128_t)x11 * x13)))) + (0x3 * (0x2 * ((uint128_t)x10 * x18))));
- { uint128_t x22 = ((((uint128_t)x5 * x17) + (((uint128_t)x7 * x15) + ((uint128_t)x9 * x13))) + (0x3 * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- { uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x3 * ((0x2 * ((uint128_t)x9 * x18)) + (((uint128_t)x11 * x19) + (0x2 * ((uint128_t)x10 * x17))))));
- { uint128_t x24 = (((uint128_t)x5 * x13) + (0x3 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- { uint64_t x25 = (uint64_t) (x24 >> 0x2b);
- { uint64_t x26 = ((uint64_t)x24 & 0x7ffffffffff);
- { uint128_t x27 = (x25 + x23);
- { uint64_t x28 = (uint64_t) (x27 >> 0x2b);
- { uint64_t x29 = ((uint64_t)x27 & 0x7ffffffffff);
- { uint128_t x30 = (x28 + x22);
- { uint64_t x31 = (uint64_t) (x30 >> 0x2a);
- { uint64_t x32 = ((uint64_t)x30 & 0x3ffffffffff);
- { uint128_t x33 = (x31 + x21);
- { uint64_t x34 = (uint64_t) (x33 >> 0x2b);
- { uint64_t x35 = ((uint64_t)x33 & 0x7ffffffffff);
- { uint128_t x36 = (x34 + x20);
- { uint64_t x37 = (uint64_t) (x36 >> 0x2a);
- { uint64_t x38 = ((uint64_t)x36 & 0x3ffffffffff);
- { uint64_t x39 = (x26 + (0x3 * x37));
- { uint64_t x40 = (x39 >> 0x2b);
- { uint64_t x41 = (x39 & 0x7ffffffffff);
- { uint64_t x42 = (x40 + x29);
- { uint64_t x43 = (x42 >> 0x2b);
- { uint64_t x44 = (x42 & 0x7ffffffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e213m3_5limbs/femul.v b/src/Specific/solinas64_2e213m3_5limbs/femul.v
deleted file mode 100644
index 472836cf1..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e213m3_5limbs.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/solinas64_2e213m3_5limbs/femulDisplay.log b/src/Specific/solinas64_2e213m3_5limbs/femulDisplay.log
deleted file mode 100644
index 116171f04..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = (((uint128_t)x5 * x18) + (((uint128_t)x7 * x19) + ((0x2 * ((uint128_t)x9 * x17)) + (((uint128_t)x11 * x15) + ((uint128_t)x10 * x13)))));
- uint128_t x21 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((0x2 * ((uint128_t)x9 * x15)) + ((uint128_t)x11 * x13)))) + (0x3 * (0x2 * ((uint128_t)x10 * x18))));
- uint128_t x22 = ((((uint128_t)x5 * x17) + (((uint128_t)x7 * x15) + ((uint128_t)x9 * x13))) + (0x3 * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x3 * ((0x2 * ((uint128_t)x9 * x18)) + (((uint128_t)x11 * x19) + (0x2 * ((uint128_t)x10 * x17))))));
- uint128_t x24 = (((uint128_t)x5 * x13) + (0x3 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- uint64_t x25 = (uint64_t) (x24 >> 0x2b);
- uint64_t x26 = ((uint64_t)x24 & 0x7ffffffffff);
- uint128_t x27 = (x25 + x23);
- uint64_t x28 = (uint64_t) (x27 >> 0x2b);
- uint64_t x29 = ((uint64_t)x27 & 0x7ffffffffff);
- uint128_t x30 = (x28 + x22);
- uint64_t x31 = (uint64_t) (x30 >> 0x2a);
- uint64_t x32 = ((uint64_t)x30 & 0x3ffffffffff);
- uint128_t x33 = (x31 + x21);
- uint64_t x34 = (uint64_t) (x33 >> 0x2b);
- uint64_t x35 = ((uint64_t)x33 & 0x7ffffffffff);
- uint128_t x36 = (x34 + x20);
- uint64_t x37 = (uint64_t) (x36 >> 0x2a);
- uint64_t x38 = ((uint64_t)x36 & 0x3ffffffffff);
- uint64_t x39 = (x26 + (0x3 * x37));
- uint64_t x40 = (x39 >> 0x2b);
- uint64_t x41 = (x39 & 0x7ffffffffff);
- uint64_t x42 = (x40 + x29);
- uint64_t x43 = (x42 >> 0x2b);
- uint64_t x44 = (x42 & 0x7ffffffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e213m3_5limbs/femulDisplay.v b/src/Specific/solinas64_2e213m3_5limbs/femulDisplay.v
deleted file mode 100644
index 3edcf015d..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e213m3_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e213m3_5limbs/fesquare.c b/src/Specific/solinas64_2e213m3_5limbs/fesquare.c
deleted file mode 100644
index e5d5b8dbf..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x9 = (((uint128_t)x2 * x7) + (((uint128_t)x4 * x8) + ((0x2 * ((uint128_t)x6 * x6)) + (((uint128_t)x8 * x4) + ((uint128_t)x7 * x2)))));
- { uint128_t x10 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x3 * (0x2 * ((uint128_t)x7 * x7))));
- { uint128_t x11 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x3 * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- { uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * ((0x2 * ((uint128_t)x6 * x7)) + (((uint128_t)x8 * x8) + (0x2 * ((uint128_t)x7 * x6))))));
- { uint128_t x13 = (((uint128_t)x2 * x2) + (0x3 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- { uint64_t x14 = (uint64_t) (x13 >> 0x2b);
- { uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffff);
- { uint128_t x16 = (x14 + x12);
- { uint64_t x17 = (uint64_t) (x16 >> 0x2b);
- { uint64_t x18 = ((uint64_t)x16 & 0x7ffffffffff);
- { uint128_t x19 = (x17 + x11);
- { uint64_t x20 = (uint64_t) (x19 >> 0x2a);
- { uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffff);
- { uint128_t x22 = (x20 + x10);
- { uint64_t x23 = (uint64_t) (x22 >> 0x2b);
- { uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffff);
- { uint128_t x25 = (x23 + x9);
- { uint64_t x26 = (uint64_t) (x25 >> 0x2a);
- { uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffff);
- { uint64_t x28 = (x15 + (0x3 * x26));
- { uint64_t x29 = (x28 >> 0x2b);
- { uint64_t x30 = (x28 & 0x7ffffffffff);
- { uint64_t x31 = (x29 + x18);
- { uint64_t x32 = (x31 >> 0x2b);
- { uint64_t x33 = (x31 & 0x7ffffffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e213m3_5limbs/fesquare.v b/src/Specific/solinas64_2e213m3_5limbs/fesquare.v
deleted file mode 100644
index c10c49b5a..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e213m3_5limbs.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/solinas64_2e213m3_5limbs/fesquareDisplay.log b/src/Specific/solinas64_2e213m3_5limbs/fesquareDisplay.log
deleted file mode 100644
index 0f0f50583..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint128_t x9 = (((uint128_t)x2 * x7) + (((uint128_t)x4 * x8) + ((0x2 * ((uint128_t)x6 * x6)) + (((uint128_t)x8 * x4) + ((uint128_t)x7 * x2)))));
- uint128_t x10 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x3 * (0x2 * ((uint128_t)x7 * x7))));
- uint128_t x11 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x3 * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * ((0x2 * ((uint128_t)x6 * x7)) + (((uint128_t)x8 * x8) + (0x2 * ((uint128_t)x7 * x6))))));
- uint128_t x13 = (((uint128_t)x2 * x2) + (0x3 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- uint64_t x14 = (uint64_t) (x13 >> 0x2b);
- uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffff);
- uint128_t x16 = (x14 + x12);
- uint64_t x17 = (uint64_t) (x16 >> 0x2b);
- uint64_t x18 = ((uint64_t)x16 & 0x7ffffffffff);
- uint128_t x19 = (x17 + x11);
- uint64_t x20 = (uint64_t) (x19 >> 0x2a);
- uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffff);
- uint128_t x22 = (x20 + x10);
- uint64_t x23 = (uint64_t) (x22 >> 0x2b);
- uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffff);
- uint128_t x25 = (x23 + x9);
- uint64_t x26 = (uint64_t) (x25 >> 0x2a);
- uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffff);
- uint64_t x28 = (x15 + (0x3 * x26));
- uint64_t x29 = (x28 >> 0x2b);
- uint64_t x30 = (x28 & 0x7ffffffffff);
- uint64_t x31 = (x29 + x18);
- uint64_t x32 = (x31 >> 0x2b);
- uint64_t x33 = (x31 & 0x7ffffffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e213m3_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e213m3_5limbs/fesquareDisplay.v
deleted file mode 100644
index 40625ee3b..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e213m3_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e213m3_5limbs/fesub.c b/src/Specific/solinas64_2e213m3_5limbs/fesub.c
deleted file mode 100644
index 60ab8a21f..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0xffffffffffa + x5) - x13);
- out[1] = ((0xffffffffffe + x7) - x15);
- out[2] = ((0x7fffffffffe + x9) - x17);
- out[3] = ((0xffffffffffe + x11) - x19);
- out[4] = ((0x7fffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e213m3_5limbs/fesub.v b/src/Specific/solinas64_2e213m3_5limbs/fesub.v
deleted file mode 100644
index e6ce10c3d..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e213m3_5limbs.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/solinas64_2e213m3_5limbs/fesubDisplay.log b/src/Specific/solinas64_2e213m3_5limbs/fesubDisplay.log
deleted file mode 100644
index 88bb8871c..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0x7fffffffffe + x10) - x18), ((0xffffffffffe + x11) - x19), ((0x7fffffffffe + x9) - x17), ((0xffffffffffe + x7) - x15), ((0xffffffffffa + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e213m3_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e213m3_5limbs/fesubDisplay.v
deleted file mode 100644
index 5e732a736..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e213m3_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e213m3_5limbs/freeze.c b/src/Specific/solinas64_2e213m3_5limbs/freeze.c
deleted file mode 100644
index 172111a41..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffd);
- { uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x7ffffffffff);
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x3ffffffffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x7ffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x3ffffffffff);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0x7fffffffffd);
- { uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint64_t x29 = (x24 & 0x7ffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint64_t x33 = (x24 & 0x3ffffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint64_t x37 = (x24 & 0x7ffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint64_t x41 = (x24 & 0x3ffffffffff);
- { uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e213m3_5limbs/freeze.v b/src/Specific/solinas64_2e213m3_5limbs/freeze.v
deleted file mode 100644
index e889a6c81..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e213m3_5limbs.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/solinas64_2e213m3_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e213m3_5limbs/freezeDisplay.log
deleted file mode 100644
index 582a7d192..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffd);
- uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x7ffffffffff);
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x3ffffffffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x7ffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x3ffffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0x7fffffffffd);
- uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint64_t x29 = (x24 & 0x7ffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint64_t x33 = (x24 & 0x3ffffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint64_t x37 = (x24 & 0x7ffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint64_t x41 = (x24 & 0x3ffffffffff);
- uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e213m3_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e213m3_5limbs/freezeDisplay.v
deleted file mode 100644
index 4e2f03c45..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e213m3_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e213m3_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e213m3_5limbs/py_interpreter.sh
deleted file mode 100755
index 773ba89a7..000000000
--- a/src/Specific/solinas64_2e213m3_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**213 - 3' -Dmodulus_bytes='42.6' -Da24='121665'
diff --git a/src/Specific/solinas64_2e216m2e108m1_4limbs/CurveParameters.v b/src/Specific/solinas64_2e216m2e108m1_4limbs/CurveParameters.v
deleted file mode 100644
index e60d40411..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^216 - 2^108 - 1
-Base: 54
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 54;
- bitwidth := 64;
- s := 2^216;
- c := [(1, 1); (2^108, 1)];
- carry_chains := Some [[1; 3]; [2; 0; 3; 1]; [2; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- 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/solinas64_2e216m2e108m1_4limbs/Synthesis.v b/src/Specific/solinas64_2e216m2e108m1_4limbs/Synthesis.v
deleted file mode 100644
index 06ebf3623..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_4limbs.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/solinas64_2e216m2e108m1_4limbs/compiler.sh b/src/Specific/solinas64_2e216m2e108m1_4limbs/compiler.sh
deleted file mode 100755
index 4988882d2..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{54,54,54,54}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' "$@"
diff --git a/src/Specific/solinas64_2e216m2e108m1_4limbs/compilerxx.sh b/src/Specific/solinas64_2e216m2e108m1_4limbs/compilerxx.sh
deleted file mode 100755
index 0da57b961..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{54,54,54,54}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' "$@"
diff --git a/src/Specific/solinas64_2e216m2e108m1_4limbs/feadd.c b/src/Specific/solinas64_2e216m2e108m1_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e216m2e108m1_4limbs/feadd.v b/src/Specific/solinas64_2e216m2e108m1_4limbs/feadd.v
deleted file mode 100644
index 12a8f3766..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_4limbs.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/solinas64_2e216m2e108m1_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e216m2e108m1_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e216m2e108m1_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e216m2e108m1_4limbs/feaddDisplay.v
deleted file mode 100644
index ffdf79e7f..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e216m2e108m1_4limbs/fecarry.v b/src/Specific/solinas64_2e216m2e108m1_4limbs/fecarry.v
deleted file mode 100644
index cc4bd4fe8..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_4limbs.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/solinas64_2e216m2e108m1_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e216m2e108m1_4limbs/fecarryDisplay.v
deleted file mode 100644
index df0d91ed6..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e216m2e108m1_4limbs/femul.c b/src/Specific/solinas64_2e216m2e108m1_4limbs/femul.c
deleted file mode 100644
index 94f4a962f..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/femul.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)(x7 + x8) * (x13 + x14)) - ((uint128_t)x7 * x13));
- { uint128_t x17 = ((((uint128_t)(x5 + x9) * (x13 + x14)) + ((uint128_t)(x7 + x8) * (x11 + x15))) - (((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)));
- { uint128_t x18 = (((uint128_t)(x5 + x9) * (x11 + x15)) - ((uint128_t)x5 * x11));
- { uint128_t x19 = (((((uint128_t)x7 * x13) + ((uint128_t)x8 * x14)) + x18) + x16);
- { uint128_t x20 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15)));
- { uint128_t x21 = ((((uint128_t)x5 * x11) + ((uint128_t)x9 * x15)) + x16);
- { uint64_t x22 = (uint64_t) (x20 >> 0x36);
- { uint64_t x23 = ((uint64_t)x20 & 0x3fffffffffffff);
- { uint64_t x24 = (uint64_t) (x17 >> 0x36);
- { uint64_t x25 = ((uint64_t)x17 & 0x3fffffffffffff);
- { uint128_t x26 = (((uint128_t)0x40000000000000 * x24) + x25);
- { uint64_t x27 = (uint64_t) (x26 >> 0x36);
- { uint64_t x28 = ((uint64_t)x26 & 0x3fffffffffffff);
- { uint128_t x29 = ((x22 + x19) + x27);
- { uint64_t x30 = (uint64_t) (x29 >> 0x36);
- { uint64_t x31 = ((uint64_t)x29 & 0x3fffffffffffff);
- { uint128_t x32 = (x21 + x27);
- { uint64_t x33 = (uint64_t) (x32 >> 0x36);
- { uint64_t x34 = ((uint64_t)x32 & 0x3fffffffffffff);
- { uint64_t x35 = (x30 + x28);
- { uint64_t x36 = (x35 >> 0x36);
- { uint64_t x37 = (x35 & 0x3fffffffffffff);
- { uint64_t x38 = (x33 + x23);
- { uint64_t x39 = (x38 >> 0x36);
- { uint64_t x40 = (x38 & 0x3fffffffffffff);
- { uint64_t x41 = ((0x40000000000000 * x36) + x37);
- { uint64_t x42 = (x41 >> 0x36);
- { uint64_t x43 = (x41 & 0x3fffffffffffff);
- { uint64_t x44 = ((x39 + x31) + x42);
- { uint64_t x45 = (x44 >> 0x36);
- { uint64_t x46 = (x44 & 0x3fffffffffffff);
- { uint64_t x47 = (x34 + x42);
- { uint64_t x48 = (x47 >> 0x36);
- { uint64_t x49 = (x47 & 0x3fffffffffffff);
- out[0] = x49;
- out[1] = (x48 + x40);
- out[2] = x46;
- out[3] = (x45 + x43);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e216m2e108m1_4limbs/femul.v b/src/Specific/solinas64_2e216m2e108m1_4limbs/femul.v
deleted file mode 100644
index 3cbdb557d..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_4limbs.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/solinas64_2e216m2e108m1_4limbs/femulDisplay.log b/src/Specific/solinas64_2e216m2e108m1_4limbs/femulDisplay.log
deleted file mode 100644
index 8c6d5ef99..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,41 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)(x7 + x8) * (x13 + x14)) - ((uint128_t)x7 * x13));
- uint128_t x17 = ((((uint128_t)(x5 + x9) * (x13 + x14)) + ((uint128_t)(x7 + x8) * (x11 + x15))) - (((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)));
- uint128_t x18 = (((uint128_t)(x5 + x9) * (x11 + x15)) - ((uint128_t)x5 * x11));
- uint128_t x19 = (((((uint128_t)x7 * x13) + ((uint128_t)x8 * x14)) + x18) + x16);
- uint128_t x20 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15)));
- uint128_t x21 = ((((uint128_t)x5 * x11) + ((uint128_t)x9 * x15)) + x16);
- uint64_t x22 = (uint64_t) (x20 >> 0x36);
- uint64_t x23 = ((uint64_t)x20 & 0x3fffffffffffff);
- uint64_t x24 = (uint64_t) (x17 >> 0x36);
- uint64_t x25 = ((uint64_t)x17 & 0x3fffffffffffff);
- uint128_t x26 = (((uint128_t)0x40000000000000 * x24) + x25);
- uint64_t x27 = (uint64_t) (x26 >> 0x36);
- uint64_t x28 = ((uint64_t)x26 & 0x3fffffffffffff);
- uint128_t x29 = ((x22 + x19) + x27);
- uint64_t x30 = (uint64_t) (x29 >> 0x36);
- uint64_t x31 = ((uint64_t)x29 & 0x3fffffffffffff);
- uint128_t x32 = (x21 + x27);
- uint64_t x33 = (uint64_t) (x32 >> 0x36);
- uint64_t x34 = ((uint64_t)x32 & 0x3fffffffffffff);
- uint64_t x35 = (x30 + x28);
- uint64_t x36 = (x35 >> 0x36);
- uint64_t x37 = (x35 & 0x3fffffffffffff);
- uint64_t x38 = (x33 + x23);
- uint64_t x39 = (x38 >> 0x36);
- uint64_t x40 = (x38 & 0x3fffffffffffff);
- uint64_t x41 = ((0x40000000000000 * x36) + x37);
- uint64_t x42 = (x41 >> 0x36);
- uint64_t x43 = (x41 & 0x3fffffffffffff);
- uint64_t x44 = ((x39 + x31) + x42);
- uint64_t x45 = (x44 >> 0x36);
- uint64_t x46 = (x44 & 0x3fffffffffffff);
- uint64_t x47 = (x34 + x42);
- uint64_t x48 = (x47 >> 0x36);
- uint64_t x49 = (x47 & 0x3fffffffffffff);
- return ((x45 + x43), Return x46, (x48 + x40), Return x49))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e216m2e108m1_4limbs/femulDisplay.v b/src/Specific/solinas64_2e216m2e108m1_4limbs/femulDisplay.v
deleted file mode 100644
index de3b30844..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e216m2e108m1_4limbs/fesquare.c b/src/Specific/solinas64_2e216m2e108m1_4limbs/fesquare.c
deleted file mode 100644
index de35400a3..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/fesquare.c
+++ /dev/null
@@ -1,45 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)(x4 + x5) * (x4 + x5)) - ((uint128_t)x4 * x4));
- { uint128_t x8 = ((((uint128_t)(x2 + x6) * (x4 + x5)) + ((uint128_t)(x4 + x5) * (x2 + x6))) - (((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)));
- { uint128_t x9 = (((uint128_t)(x2 + x6) * (x2 + x6)) - ((uint128_t)x2 * x2));
- { uint128_t x10 = (((((uint128_t)x4 * x4) + ((uint128_t)x5 * x5)) + x9) + x7);
- { uint128_t x11 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6)));
- { uint128_t x12 = ((((uint128_t)x2 * x2) + ((uint128_t)x6 * x6)) + x7);
- { uint64_t x13 = (uint64_t) (x11 >> 0x36);
- { uint64_t x14 = ((uint64_t)x11 & 0x3fffffffffffff);
- { uint64_t x15 = (uint64_t) (x8 >> 0x36);
- { uint64_t x16 = ((uint64_t)x8 & 0x3fffffffffffff);
- { uint128_t x17 = (((uint128_t)0x40000000000000 * x15) + x16);
- { uint64_t x18 = (uint64_t) (x17 >> 0x36);
- { uint64_t x19 = ((uint64_t)x17 & 0x3fffffffffffff);
- { uint128_t x20 = ((x13 + x10) + x18);
- { uint64_t x21 = (uint64_t) (x20 >> 0x36);
- { uint64_t x22 = ((uint64_t)x20 & 0x3fffffffffffff);
- { uint128_t x23 = (x12 + x18);
- { uint64_t x24 = (uint64_t) (x23 >> 0x36);
- { uint64_t x25 = ((uint64_t)x23 & 0x3fffffffffffff);
- { uint64_t x26 = (x21 + x19);
- { uint64_t x27 = (x26 >> 0x36);
- { uint64_t x28 = (x26 & 0x3fffffffffffff);
- { uint64_t x29 = (x24 + x14);
- { uint64_t x30 = (x29 >> 0x36);
- { uint64_t x31 = (x29 & 0x3fffffffffffff);
- { uint64_t x32 = ((0x40000000000000 * x27) + x28);
- { uint64_t x33 = (x32 >> 0x36);
- { uint64_t x34 = (x32 & 0x3fffffffffffff);
- { uint64_t x35 = ((x30 + x22) + x33);
- { uint64_t x36 = (x35 >> 0x36);
- { uint64_t x37 = (x35 & 0x3fffffffffffff);
- { uint64_t x38 = (x25 + x33);
- { uint64_t x39 = (x38 >> 0x36);
- { uint64_t x40 = (x38 & 0x3fffffffffffff);
- out[0] = x40;
- out[1] = (x39 + x31);
- out[2] = x37;
- out[3] = (x36 + x34);
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e216m2e108m1_4limbs/fesquare.v b/src/Specific/solinas64_2e216m2e108m1_4limbs/fesquare.v
deleted file mode 100644
index 3f5a7c006..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_4limbs.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/solinas64_2e216m2e108m1_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e216m2e108m1_4limbs/fesquareDisplay.log
deleted file mode 100644
index 37171ab4c..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,41 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)(x4 + x5) * (x4 + x5)) - ((uint128_t)x4 * x4));
- uint128_t x8 = ((((uint128_t)(x2 + x6) * (x4 + x5)) + ((uint128_t)(x4 + x5) * (x2 + x6))) - (((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)));
- uint128_t x9 = (((uint128_t)(x2 + x6) * (x2 + x6)) - ((uint128_t)x2 * x2));
- uint128_t x10 = (((((uint128_t)x4 * x4) + ((uint128_t)x5 * x5)) + x9) + x7);
- uint128_t x11 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6)));
- uint128_t x12 = ((((uint128_t)x2 * x2) + ((uint128_t)x6 * x6)) + x7);
- uint64_t x13 = (uint64_t) (x11 >> 0x36);
- uint64_t x14 = ((uint64_t)x11 & 0x3fffffffffffff);
- uint64_t x15 = (uint64_t) (x8 >> 0x36);
- uint64_t x16 = ((uint64_t)x8 & 0x3fffffffffffff);
- uint128_t x17 = (((uint128_t)0x40000000000000 * x15) + x16);
- uint64_t x18 = (uint64_t) (x17 >> 0x36);
- uint64_t x19 = ((uint64_t)x17 & 0x3fffffffffffff);
- uint128_t x20 = ((x13 + x10) + x18);
- uint64_t x21 = (uint64_t) (x20 >> 0x36);
- uint64_t x22 = ((uint64_t)x20 & 0x3fffffffffffff);
- uint128_t x23 = (x12 + x18);
- uint64_t x24 = (uint64_t) (x23 >> 0x36);
- uint64_t x25 = ((uint64_t)x23 & 0x3fffffffffffff);
- uint64_t x26 = (x21 + x19);
- uint64_t x27 = (x26 >> 0x36);
- uint64_t x28 = (x26 & 0x3fffffffffffff);
- uint64_t x29 = (x24 + x14);
- uint64_t x30 = (x29 >> 0x36);
- uint64_t x31 = (x29 & 0x3fffffffffffff);
- uint64_t x32 = ((0x40000000000000 * x27) + x28);
- uint64_t x33 = (x32 >> 0x36);
- uint64_t x34 = (x32 & 0x3fffffffffffff);
- uint64_t x35 = ((x30 + x22) + x33);
- uint64_t x36 = (x35 >> 0x36);
- uint64_t x37 = (x35 & 0x3fffffffffffff);
- uint64_t x38 = (x25 + x33);
- uint64_t x39 = (x38 >> 0x36);
- uint64_t x40 = (x38 & 0x3fffffffffffff);
- return ((x36 + x34), Return x37, (x39 + x31), Return x40))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e216m2e108m1_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e216m2e108m1_4limbs/fesquareDisplay.v
deleted file mode 100644
index f44d45ec6..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e216m2e108m1_4limbs/fesub.c b/src/Specific/solinas64_2e216m2e108m1_4limbs/fesub.c
deleted file mode 100644
index c532fb2a6..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x7ffffffffffffe + x5) - x11);
- out[1] = ((0x7ffffffffffffe + x7) - x13);
- out[2] = ((0x7ffffffffffffc + x9) - x15);
- out[3] = ((0x7ffffffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e216m2e108m1_4limbs/fesub.v b/src/Specific/solinas64_2e216m2e108m1_4limbs/fesub.v
deleted file mode 100644
index 8a6b726a6..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_4limbs.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/solinas64_2e216m2e108m1_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e216m2e108m1_4limbs/fesubDisplay.log
deleted file mode 100644
index 00f2ffde6..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0x7ffffffffffffe + x8) - x14), ((0x7ffffffffffffc + x9) - x15), ((0x7ffffffffffffe + x7) - x13), ((0x7ffffffffffffe + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e216m2e108m1_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e216m2e108m1_4limbs/fesubDisplay.v
deleted file mode 100644
index 75181739a..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e216m2e108m1_4limbs/freeze.c b/src/Specific/solinas64_2e216m2e108m1_4limbs/freeze.c
deleted file mode 100644
index e653cc54b..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffffffff);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x3fffffffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x3ffffffffffffe);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x3fffffffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0x3fffffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0x3fffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0x3ffffffffffffe);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x3fffffffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e216m2e108m1_4limbs/freeze.v b/src/Specific/solinas64_2e216m2e108m1_4limbs/freeze.v
deleted file mode 100644
index 6fc0d5ac4..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_4limbs.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/solinas64_2e216m2e108m1_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e216m2e108m1_4limbs/freezeDisplay.log
deleted file mode 100644
index 380efd4d5..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffffffff);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x3fffffffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x3ffffffffffffe);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x3fffffffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0x3fffffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0x3fffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0x3ffffffffffffe);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x3fffffffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e216m2e108m1_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e216m2e108m1_4limbs/freezeDisplay.v
deleted file mode 100644
index ea483b3ca..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e216m2e108m1_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e216m2e108m1_4limbs/py_interpreter.sh
deleted file mode 100755
index 9af1051cf..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**216 - 2**108 - 1' -Dmodulus_bytes='54' -Da24='121665'
diff --git a/src/Specific/solinas64_2e216m2e108m1_5limbs/CurveParameters.v b/src/Specific/solinas64_2e216m2e108m1_5limbs/CurveParameters.v
deleted file mode 100644
index d919654e6..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^216 - 2^108 - 1
-Base: 43.2
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 43 + 1/5;
- bitwidth := 64;
- s := 2^216;
- c := [(1, 1); (2^108, 1)];
- carry_chains := Some [[1; 4]; [2; 0; 3; 1; 4]; [2; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- 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/solinas64_2e216m2e108m1_5limbs/Synthesis.v b/src/Specific/solinas64_2e216m2e108m1_5limbs/Synthesis.v
deleted file mode 100644
index bb8d9c981..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_5limbs.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/solinas64_2e216m2e108m1_5limbs/compiler.sh b/src/Specific/solinas64_2e216m2e108m1_5limbs/compiler.sh
deleted file mode 100755
index 7455a435d..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{44,43,43,43,43}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' "$@"
diff --git a/src/Specific/solinas64_2e216m2e108m1_5limbs/compilerxx.sh b/src/Specific/solinas64_2e216m2e108m1_5limbs/compilerxx.sh
deleted file mode 100755
index 1a6a1b5a0..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{44,43,43,43,43}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='27' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<216) - (1_mpz<<108) - 1' "$@"
diff --git a/src/Specific/solinas64_2e216m2e108m1_5limbs/feadd.c b/src/Specific/solinas64_2e216m2e108m1_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e216m2e108m1_5limbs/feadd.v b/src/Specific/solinas64_2e216m2e108m1_5limbs/feadd.v
deleted file mode 100644
index f804f3d60..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_5limbs.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/solinas64_2e216m2e108m1_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e216m2e108m1_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e216m2e108m1_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e216m2e108m1_5limbs/feaddDisplay.v
deleted file mode 100644
index 5696240d1..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e216m2e108m1_5limbs/fecarry.v b/src/Specific/solinas64_2e216m2e108m1_5limbs/fecarry.v
deleted file mode 100644
index 2405077a2..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_5limbs.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/solinas64_2e216m2e108m1_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e216m2e108m1_5limbs/fecarryDisplay.v
deleted file mode 100644
index b678bdfed..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e216m2e108m1_5limbs/femul.v b/src/Specific/solinas64_2e216m2e108m1_5limbs/femul.v
deleted file mode 100644
index da89f5741..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_5limbs.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/solinas64_2e216m2e108m1_5limbs/femulDisplay.v b/src/Specific/solinas64_2e216m2e108m1_5limbs/femulDisplay.v
deleted file mode 100644
index 15e90d107..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e216m2e108m1_5limbs/fesquare.v b/src/Specific/solinas64_2e216m2e108m1_5limbs/fesquare.v
deleted file mode 100644
index 836409b94..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_5limbs.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/solinas64_2e216m2e108m1_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e216m2e108m1_5limbs/fesquareDisplay.v
deleted file mode 100644
index 18e2a55e7..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e216m2e108m1_5limbs/fesub.c b/src/Specific/solinas64_2e216m2e108m1_5limbs/fesub.c
deleted file mode 100644
index 92276f1f9..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0x1ffffffffffe + x5) - x13);
- out[1] = ((0xffffffffffe + x7) - x15);
- out[2] = ((0xfffffbffffe + x9) - x17);
- out[3] = ((0xffffffffffe + x11) - x19);
- out[4] = ((0xffffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e216m2e108m1_5limbs/fesub.v b/src/Specific/solinas64_2e216m2e108m1_5limbs/fesub.v
deleted file mode 100644
index 8cb2bccbe..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_5limbs.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/solinas64_2e216m2e108m1_5limbs/fesubDisplay.log b/src/Specific/solinas64_2e216m2e108m1_5limbs/fesubDisplay.log
deleted file mode 100644
index 354b61ffe..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0xffffffffffe + x10) - x18), ((0xffffffffffe + x11) - x19), ((0xfffffbffffe + x9) - x17), ((0xffffffffffe + x7) - x15), ((0x1ffffffffffe + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e216m2e108m1_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e216m2e108m1_5limbs/fesubDisplay.v
deleted file mode 100644
index 1256cc6e0..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e216m2e108m1_5limbs/freeze.c b/src/Specific/solinas64_2e216m2e108m1_5limbs/freeze.c
deleted file mode 100644
index 70287fb27..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffff);
- { uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x7ffffffffff);
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x7ffffdfffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x7ffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x7ffffffffff);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0xfffffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint64_t x29 = (x24 & 0x7ffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint64_t x33 = (x24 & 0x7ffffdfffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint64_t x37 = (x24 & 0x7ffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint64_t x41 = (x24 & 0x7ffffffffff);
- { uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e216m2e108m1_5limbs/freeze.v b/src/Specific/solinas64_2e216m2e108m1_5limbs/freeze.v
deleted file mode 100644
index 388ad737f..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_5limbs.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/solinas64_2e216m2e108m1_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e216m2e108m1_5limbs/freezeDisplay.log
deleted file mode 100644
index 3335ea9ef..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffff);
- uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x7ffffffffff);
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x7ffffdfffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x7ffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x7ffffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0xfffffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint64_t x29 = (x24 & 0x7ffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint64_t x33 = (x24 & 0x7ffffdfffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint64_t x37 = (x24 & 0x7ffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint64_t x41 = (x24 & 0x7ffffffffff);
- uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e216m2e108m1_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e216m2e108m1_5limbs/freezeDisplay.v
deleted file mode 100644
index 0a76fa837..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e216m2e108m1_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e216m2e108m1_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e216m2e108m1_5limbs/py_interpreter.sh
deleted file mode 100755
index 7acbf815b..000000000
--- a/src/Specific/solinas64_2e216m2e108m1_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**216 - 2**108 - 1' -Dmodulus_bytes='43.2' -Da24='121665'
diff --git a/src/Specific/solinas64_2e221m3_4limbs/CurveParameters.v b/src/Specific/solinas64_2e221m3_4limbs/CurveParameters.v
deleted file mode 100644
index b6c3b8c1a..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^221 - 3
-Base: 55.25
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 55 + 1/4;
- bitwidth := 64;
- s := 2^221;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e221m3_4limbs/Synthesis.v b/src/Specific/solinas64_2e221m3_4limbs/Synthesis.v
deleted file mode 100644
index 6fe2d9a16..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e221m3_4limbs.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/solinas64_2e221m3_4limbs/compiler.sh b/src/Specific/solinas64_2e221m3_4limbs/compiler.sh
deleted file mode 100755
index 4af6d4e27..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,55,55,55}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<221) - 3' "$@"
diff --git a/src/Specific/solinas64_2e221m3_4limbs/compilerxx.sh b/src/Specific/solinas64_2e221m3_4limbs/compilerxx.sh
deleted file mode 100755
index ff9f67b70..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,55,55,55}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<221) - 3' "$@"
diff --git a/src/Specific/solinas64_2e221m3_4limbs/feadd.c b/src/Specific/solinas64_2e221m3_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e221m3_4limbs/feadd.v b/src/Specific/solinas64_2e221m3_4limbs/feadd.v
deleted file mode 100644
index f371d325e..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e221m3_4limbs.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/solinas64_2e221m3_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e221m3_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e221m3_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e221m3_4limbs/feaddDisplay.v
deleted file mode 100644
index 651da7ed5..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e221m3_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e221m3_4limbs/fecarry.v b/src/Specific/solinas64_2e221m3_4limbs/fecarry.v
deleted file mode 100644
index 3bb9b27bf..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e221m3_4limbs.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/solinas64_2e221m3_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e221m3_4limbs/fecarryDisplay.v
deleted file mode 100644
index 9897b951f..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e221m3_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e221m3_4limbs/femul.c b/src/Specific/solinas64_2e221m3_4limbs/femul.c
deleted file mode 100644
index 57b54ec37..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + ((0x2 * ((uint128_t)x7 * x15)) + ((0x2 * ((uint128_t)x9 * x13)) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x3 * ((uint128_t)x8 * x14)));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x3 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0x3 * ((0x2 * ((uint128_t)x7 * x14)) + ((0x2 * ((uint128_t)x9 * x15)) + (0x2 * ((uint128_t)x8 * x13))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x38);
- { uint64_t x21 = ((uint64_t)x19 & 0xffffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x37);
- { uint64_t x24 = ((uint64_t)x22 & 0x7fffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x37);
- { uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x37);
- { uint64_t x30 = ((uint64_t)x28 & 0x7fffffffffffff);
- { uint64_t x31 = (x21 + (0x3 * x29));
- { uint64_t x32 = (x31 >> 0x38);
- { uint64_t x33 = (x31 & 0xffffffffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x37);
- { uint64_t x36 = (x34 & 0x7fffffffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e221m3_4limbs/femul.v b/src/Specific/solinas64_2e221m3_4limbs/femul.v
deleted file mode 100644
index 4916f12c9..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e221m3_4limbs.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/solinas64_2e221m3_4limbs/femulDisplay.log b/src/Specific/solinas64_2e221m3_4limbs/femulDisplay.log
deleted file mode 100644
index 4644f56a2..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + ((0x2 * ((uint128_t)x7 * x15)) + ((0x2 * ((uint128_t)x9 * x13)) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x3 * ((uint128_t)x8 * x14)));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x3 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0x3 * ((0x2 * ((uint128_t)x7 * x14)) + ((0x2 * ((uint128_t)x9 * x15)) + (0x2 * ((uint128_t)x8 * x13))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x38);
- uint64_t x21 = ((uint64_t)x19 & 0xffffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x37);
- uint64_t x24 = ((uint64_t)x22 & 0x7fffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x37);
- uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x37);
- uint64_t x30 = ((uint64_t)x28 & 0x7fffffffffffff);
- uint64_t x31 = (x21 + (0x3 * x29));
- uint64_t x32 = (x31 >> 0x38);
- uint64_t x33 = (x31 & 0xffffffffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x37);
- uint64_t x36 = (x34 & 0x7fffffffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e221m3_4limbs/femulDisplay.v b/src/Specific/solinas64_2e221m3_4limbs/femulDisplay.v
deleted file mode 100644
index f849417ce..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e221m3_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e221m3_4limbs/fesquare.c b/src/Specific/solinas64_2e221m3_4limbs/fesquare.c
deleted file mode 100644
index 5ea9ea22a..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x3 * ((uint128_t)x5 * x5)));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0x3 * ((0x2 * ((uint128_t)x4 * x5)) + ((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x5 * x4))))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x38);
- { uint64_t x12 = ((uint64_t)x10 & 0xffffffffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint64_t x14 = (uint64_t) (x13 >> 0x37);
- { uint64_t x15 = ((uint64_t)x13 & 0x7fffffffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x37);
- { uint64_t x18 = ((uint64_t)x16 & 0x7fffffffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x37);
- { uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffffff);
- { uint64_t x22 = (x12 + (0x3 * x20));
- { uint64_t x23 = (x22 >> 0x38);
- { uint64_t x24 = (x22 & 0xffffffffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x37);
- { uint64_t x27 = (x25 & 0x7fffffffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e221m3_4limbs/fesquare.v b/src/Specific/solinas64_2e221m3_4limbs/fesquare.v
deleted file mode 100644
index 5391862a8..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e221m3_4limbs.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/solinas64_2e221m3_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e221m3_4limbs/fesquareDisplay.log
deleted file mode 100644
index 36ad83440..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x3 * ((uint128_t)x5 * x5)));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0x3 * ((0x2 * ((uint128_t)x4 * x5)) + ((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x5 * x4))))));
- uint64_t x11 = (uint64_t) (x10 >> 0x38);
- uint64_t x12 = ((uint64_t)x10 & 0xffffffffffffff);
- uint128_t x13 = (x11 + x9);
- uint64_t x14 = (uint64_t) (x13 >> 0x37);
- uint64_t x15 = ((uint64_t)x13 & 0x7fffffffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x37);
- uint64_t x18 = ((uint64_t)x16 & 0x7fffffffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x37);
- uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffffff);
- uint64_t x22 = (x12 + (0x3 * x20));
- uint64_t x23 = (x22 >> 0x38);
- uint64_t x24 = (x22 & 0xffffffffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x37);
- uint64_t x27 = (x25 & 0x7fffffffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e221m3_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e221m3_4limbs/fesquareDisplay.v
deleted file mode 100644
index 6263517d9..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e221m3_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e221m3_4limbs/fesub.c b/src/Specific/solinas64_2e221m3_4limbs/fesub.c
deleted file mode 100644
index 3f3468539..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x1fffffffffffffa + x5) - x11);
- out[1] = ((0xfffffffffffffe + x7) - x13);
- out[2] = ((0xfffffffffffffe + x9) - x15);
- out[3] = ((0xfffffffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e221m3_4limbs/fesub.v b/src/Specific/solinas64_2e221m3_4limbs/fesub.v
deleted file mode 100644
index 2c9d34d5c..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e221m3_4limbs.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/solinas64_2e221m3_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e221m3_4limbs/fesubDisplay.log
deleted file mode 100644
index f1c4eacf9..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0xfffffffffffffe + x8) - x14), ((0xfffffffffffffe + x9) - x15), ((0xfffffffffffffe + x7) - x13), ((0x1fffffffffffffa + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e221m3_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e221m3_4limbs/fesubDisplay.v
deleted file mode 100644
index 7ec4ac5ec..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e221m3_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e221m3_4limbs/freeze.c b/src/Specific/solinas64_2e221m3_4limbs/freeze.c
deleted file mode 100644
index b05893fd6..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffffffd);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x7fffffffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x7fffffffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x7fffffffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xfffffffffffffd);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0x7fffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0x7fffffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x7fffffffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e221m3_4limbs/freeze.v b/src/Specific/solinas64_2e221m3_4limbs/freeze.v
deleted file mode 100644
index bc739d8c0..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e221m3_4limbs.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/solinas64_2e221m3_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e221m3_4limbs/freezeDisplay.log
deleted file mode 100644
index 6c22bf989..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffffffd);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x7fffffffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x7fffffffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x7fffffffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xfffffffffffffd);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0x7fffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0x7fffffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x7fffffffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e221m3_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e221m3_4limbs/freezeDisplay.v
deleted file mode 100644
index 6a10d5939..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e221m3_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e221m3_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e221m3_4limbs/py_interpreter.sh
deleted file mode 100755
index 6bb3515d4..000000000
--- a/src/Specific/solinas64_2e221m3_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**221 - 3' -Dmodulus_bytes='55.25' -Da24='121665'
diff --git a/src/Specific/solinas64_2e221m3_5limbs/CurveParameters.v b/src/Specific/solinas64_2e221m3_5limbs/CurveParameters.v
deleted file mode 100644
index 4805f424e..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^221 - 3
-Base: 44.2
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 44 + 1/5;
- bitwidth := 64;
- s := 2^221;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 5); [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/solinas64_2e221m3_5limbs/Synthesis.v b/src/Specific/solinas64_2e221m3_5limbs/Synthesis.v
deleted file mode 100644
index 94c74b883..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e221m3_5limbs.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/solinas64_2e221m3_5limbs/compiler.sh b/src/Specific/solinas64_2e221m3_5limbs/compiler.sh
deleted file mode 100755
index cfddadd1b..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{45,44,44,44,44}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<221) - 3' "$@"
diff --git a/src/Specific/solinas64_2e221m3_5limbs/compilerxx.sh b/src/Specific/solinas64_2e221m3_5limbs/compilerxx.sh
deleted file mode 100755
index ea04e0e89..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{45,44,44,44,44}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<221) - 3' "$@"
diff --git a/src/Specific/solinas64_2e221m3_5limbs/feadd.c b/src/Specific/solinas64_2e221m3_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e221m3_5limbs/feadd.v b/src/Specific/solinas64_2e221m3_5limbs/feadd.v
deleted file mode 100644
index 4788cddb6..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e221m3_5limbs.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/solinas64_2e221m3_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e221m3_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e221m3_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e221m3_5limbs/feaddDisplay.v
deleted file mode 100644
index dfa55f49c..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e221m3_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e221m3_5limbs/fecarry.v b/src/Specific/solinas64_2e221m3_5limbs/fecarry.v
deleted file mode 100644
index 277efba66..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e221m3_5limbs.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/solinas64_2e221m3_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e221m3_5limbs/fecarryDisplay.v
deleted file mode 100644
index 1f07d5044..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e221m3_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e221m3_5limbs/femul.c b/src/Specific/solinas64_2e221m3_5limbs/femul.c
deleted file mode 100644
index edc85a864..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint128_t x20 = (((uint128_t)x5 * x18) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((0x2 * ((uint128_t)x11 * x15)) + ((uint128_t)x10 * x13)))));
- { uint128_t x21 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((0x2 * ((uint128_t)x9 * x15)) + ((uint128_t)x11 * x13)))) + (0x3 * ((uint128_t)x10 * x18)));
- { uint128_t x22 = ((((uint128_t)x5 * x17) + ((0x2 * ((uint128_t)x7 * x15)) + ((uint128_t)x9 * x13))) + (0x3 * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- { uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x3 * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- { uint128_t x24 = (((uint128_t)x5 * x13) + (0x3 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- { uint64_t x25 = (uint64_t) (x24 >> 0x2d);
- { uint64_t x26 = ((uint64_t)x24 & 0x1fffffffffff);
- { uint128_t x27 = (x25 + x23);
- { uint64_t x28 = (uint64_t) (x27 >> 0x2c);
- { uint64_t x29 = ((uint64_t)x27 & 0xfffffffffff);
- { uint128_t x30 = (x28 + x22);
- { uint64_t x31 = (uint64_t) (x30 >> 0x2c);
- { uint64_t x32 = ((uint64_t)x30 & 0xfffffffffff);
- { uint128_t x33 = (x31 + x21);
- { uint64_t x34 = (uint64_t) (x33 >> 0x2c);
- { uint64_t x35 = ((uint64_t)x33 & 0xfffffffffff);
- { uint128_t x36 = (x34 + x20);
- { uint64_t x37 = (uint64_t) (x36 >> 0x2c);
- { uint64_t x38 = ((uint64_t)x36 & 0xfffffffffff);
- { uint64_t x39 = (x26 + (0x3 * x37));
- { uint64_t x40 = (x39 >> 0x2d);
- { uint64_t x41 = (x39 & 0x1fffffffffff);
- { uint64_t x42 = (x40 + x29);
- { uint64_t x43 = (x42 >> 0x2c);
- { uint64_t x44 = (x42 & 0xfffffffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e221m3_5limbs/femul.v b/src/Specific/solinas64_2e221m3_5limbs/femul.v
deleted file mode 100644
index 90a798c09..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e221m3_5limbs.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/solinas64_2e221m3_5limbs/femulDisplay.log b/src/Specific/solinas64_2e221m3_5limbs/femulDisplay.log
deleted file mode 100644
index bc8d896fc..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = (((uint128_t)x5 * x18) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((0x2 * ((uint128_t)x11 * x15)) + ((uint128_t)x10 * x13)))));
- uint128_t x21 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((0x2 * ((uint128_t)x9 * x15)) + ((uint128_t)x11 * x13)))) + (0x3 * ((uint128_t)x10 * x18)));
- uint128_t x22 = ((((uint128_t)x5 * x17) + ((0x2 * ((uint128_t)x7 * x15)) + ((uint128_t)x9 * x13))) + (0x3 * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x3 * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- uint128_t x24 = (((uint128_t)x5 * x13) + (0x3 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- uint64_t x25 = (uint64_t) (x24 >> 0x2d);
- uint64_t x26 = ((uint64_t)x24 & 0x1fffffffffff);
- uint128_t x27 = (x25 + x23);
- uint64_t x28 = (uint64_t) (x27 >> 0x2c);
- uint64_t x29 = ((uint64_t)x27 & 0xfffffffffff);
- uint128_t x30 = (x28 + x22);
- uint64_t x31 = (uint64_t) (x30 >> 0x2c);
- uint64_t x32 = ((uint64_t)x30 & 0xfffffffffff);
- uint128_t x33 = (x31 + x21);
- uint64_t x34 = (uint64_t) (x33 >> 0x2c);
- uint64_t x35 = ((uint64_t)x33 & 0xfffffffffff);
- uint128_t x36 = (x34 + x20);
- uint64_t x37 = (uint64_t) (x36 >> 0x2c);
- uint64_t x38 = ((uint64_t)x36 & 0xfffffffffff);
- uint64_t x39 = (x26 + (0x3 * x37));
- uint64_t x40 = (x39 >> 0x2d);
- uint64_t x41 = (x39 & 0x1fffffffffff);
- uint64_t x42 = (x40 + x29);
- uint64_t x43 = (x42 >> 0x2c);
- uint64_t x44 = (x42 & 0xfffffffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e221m3_5limbs/femulDisplay.v b/src/Specific/solinas64_2e221m3_5limbs/femulDisplay.v
deleted file mode 100644
index 923bbb6e0..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e221m3_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e221m3_5limbs/fesquare.c b/src/Specific/solinas64_2e221m3_5limbs/fesquare.c
deleted file mode 100644
index 84cdb293c..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x9 = (((uint128_t)x2 * x7) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x7 * x2)))));
- { uint128_t x10 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x3 * ((uint128_t)x7 * x7)));
- { uint128_t x11 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x3 * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- { uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- { uint128_t x13 = (((uint128_t)x2 * x2) + (0x3 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- { uint64_t x14 = (uint64_t) (x13 >> 0x2d);
- { uint64_t x15 = ((uint64_t)x13 & 0x1fffffffffff);
- { uint128_t x16 = (x14 + x12);
- { uint64_t x17 = (uint64_t) (x16 >> 0x2c);
- { uint64_t x18 = ((uint64_t)x16 & 0xfffffffffff);
- { uint128_t x19 = (x17 + x11);
- { uint64_t x20 = (uint64_t) (x19 >> 0x2c);
- { uint64_t x21 = ((uint64_t)x19 & 0xfffffffffff);
- { uint128_t x22 = (x20 + x10);
- { uint64_t x23 = (uint64_t) (x22 >> 0x2c);
- { uint64_t x24 = ((uint64_t)x22 & 0xfffffffffff);
- { uint128_t x25 = (x23 + x9);
- { uint64_t x26 = (uint64_t) (x25 >> 0x2c);
- { uint64_t x27 = ((uint64_t)x25 & 0xfffffffffff);
- { uint64_t x28 = (x15 + (0x3 * x26));
- { uint64_t x29 = (x28 >> 0x2d);
- { uint64_t x30 = (x28 & 0x1fffffffffff);
- { uint64_t x31 = (x29 + x18);
- { uint64_t x32 = (x31 >> 0x2c);
- { uint64_t x33 = (x31 & 0xfffffffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e221m3_5limbs/fesquare.v b/src/Specific/solinas64_2e221m3_5limbs/fesquare.v
deleted file mode 100644
index 81ad58367..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e221m3_5limbs.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/solinas64_2e221m3_5limbs/fesquareDisplay.log b/src/Specific/solinas64_2e221m3_5limbs/fesquareDisplay.log
deleted file mode 100644
index 175352a37..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint128_t x9 = (((uint128_t)x2 * x7) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x7 * x2)))));
- uint128_t x10 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x3 * ((uint128_t)x7 * x7)));
- uint128_t x11 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x3 * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- uint128_t x13 = (((uint128_t)x2 * x2) + (0x3 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- uint64_t x14 = (uint64_t) (x13 >> 0x2d);
- uint64_t x15 = ((uint64_t)x13 & 0x1fffffffffff);
- uint128_t x16 = (x14 + x12);
- uint64_t x17 = (uint64_t) (x16 >> 0x2c);
- uint64_t x18 = ((uint64_t)x16 & 0xfffffffffff);
- uint128_t x19 = (x17 + x11);
- uint64_t x20 = (uint64_t) (x19 >> 0x2c);
- uint64_t x21 = ((uint64_t)x19 & 0xfffffffffff);
- uint128_t x22 = (x20 + x10);
- uint64_t x23 = (uint64_t) (x22 >> 0x2c);
- uint64_t x24 = ((uint64_t)x22 & 0xfffffffffff);
- uint128_t x25 = (x23 + x9);
- uint64_t x26 = (uint64_t) (x25 >> 0x2c);
- uint64_t x27 = ((uint64_t)x25 & 0xfffffffffff);
- uint64_t x28 = (x15 + (0x3 * x26));
- uint64_t x29 = (x28 >> 0x2d);
- uint64_t x30 = (x28 & 0x1fffffffffff);
- uint64_t x31 = (x29 + x18);
- uint64_t x32 = (x31 >> 0x2c);
- uint64_t x33 = (x31 & 0xfffffffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e221m3_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e221m3_5limbs/fesquareDisplay.v
deleted file mode 100644
index a688f7145..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e221m3_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e221m3_5limbs/fesub.c b/src/Specific/solinas64_2e221m3_5limbs/fesub.c
deleted file mode 100644
index 555e77138..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0x3ffffffffffa + x5) - x13);
- out[1] = ((0x1ffffffffffe + x7) - x15);
- out[2] = ((0x1ffffffffffe + x9) - x17);
- out[3] = ((0x1ffffffffffe + x11) - x19);
- out[4] = ((0x1ffffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e221m3_5limbs/fesub.v b/src/Specific/solinas64_2e221m3_5limbs/fesub.v
deleted file mode 100644
index c8552014d..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e221m3_5limbs.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/solinas64_2e221m3_5limbs/fesubDisplay.log b/src/Specific/solinas64_2e221m3_5limbs/fesubDisplay.log
deleted file mode 100644
index ff9597411..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0x1ffffffffffe + x10) - x18), ((0x1ffffffffffe + x11) - x19), ((0x1ffffffffffe + x9) - x17), ((0x1ffffffffffe + x7) - x15), ((0x3ffffffffffa + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e221m3_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e221m3_5limbs/fesubDisplay.v
deleted file mode 100644
index 2c0b73408..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e221m3_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e221m3_5limbs/freeze.c b/src/Specific/solinas64_2e221m3_5limbs/freeze.c
deleted file mode 100644
index efe1655c0..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffffffffd);
- { uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0xfffffffffff);
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0xfffffffffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0xfffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0xfffffffffff);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0x1ffffffffffd);
- { uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint64_t x29 = (x24 & 0xfffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint64_t x33 = (x24 & 0xfffffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint64_t x37 = (x24 & 0xfffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint64_t x41 = (x24 & 0xfffffffffff);
- { uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e221m3_5limbs/freeze.v b/src/Specific/solinas64_2e221m3_5limbs/freeze.v
deleted file mode 100644
index 8d2e05c56..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e221m3_5limbs.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/solinas64_2e221m3_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e221m3_5limbs/freezeDisplay.log
deleted file mode 100644
index 0d868936d..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffffffffd);
- uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0xfffffffffff);
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0xfffffffffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0xfffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0xfffffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0x1ffffffffffd);
- uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint64_t x29 = (x24 & 0xfffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint64_t x33 = (x24 & 0xfffffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint64_t x37 = (x24 & 0xfffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint64_t x41 = (x24 & 0xfffffffffff);
- uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e221m3_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e221m3_5limbs/freezeDisplay.v
deleted file mode 100644
index d3b8588c1..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e221m3_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e221m3_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e221m3_5limbs/py_interpreter.sh
deleted file mode 100755
index e60a140c6..000000000
--- a/src/Specific/solinas64_2e221m3_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**221 - 3' -Dmodulus_bytes='44.2' -Da24='121665'
diff --git a/src/Specific/solinas64_2e222m117_4limbs/CurveParameters.v b/src/Specific/solinas64_2e222m117_4limbs/CurveParameters.v
deleted file mode 100644
index 2781a543c..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^222 - 117
-Base: 55.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 55 + 1/2;
- bitwidth := 64;
- s := 2^222;
- c := [(1, 117)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e222m117_4limbs/Synthesis.v b/src/Specific/solinas64_2e222m117_4limbs/Synthesis.v
deleted file mode 100644
index 858e11fe8..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e222m117_4limbs.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/solinas64_2e222m117_4limbs/compiler.sh b/src/Specific/solinas64_2e222m117_4limbs/compiler.sh
deleted file mode 100755
index 9a5d4ad29..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,55,56,55}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<222) - 117' "$@"
diff --git a/src/Specific/solinas64_2e222m117_4limbs/compilerxx.sh b/src/Specific/solinas64_2e222m117_4limbs/compilerxx.sh
deleted file mode 100755
index 69e75c9a7..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,55,56,55}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<222) - 117' "$@"
diff --git a/src/Specific/solinas64_2e222m117_4limbs/feadd.c b/src/Specific/solinas64_2e222m117_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e222m117_4limbs/feadd.v b/src/Specific/solinas64_2e222m117_4limbs/feadd.v
deleted file mode 100644
index 591c1e8b0..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e222m117_4limbs.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/solinas64_2e222m117_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e222m117_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e222m117_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e222m117_4limbs/feaddDisplay.v
deleted file mode 100644
index 6ea369e68..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e222m117_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e222m117_4limbs/fecarry.v b/src/Specific/solinas64_2e222m117_4limbs/fecarry.v
deleted file mode 100644
index ea682ab6f..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e222m117_4limbs.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/solinas64_2e222m117_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e222m117_4limbs/fecarryDisplay.v
deleted file mode 100644
index c34b3e111..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e222m117_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e222m117_4limbs/femul.c b/src/Specific/solinas64_2e222m117_4limbs/femul.c
deleted file mode 100644
index db1b7c285..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x75 * (0x2 * ((uint128_t)x8 * x14))));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x75 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0x75 * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- { uint128_t x20 = (x19 >> 0x38);
- { uint64_t x21 = ((uint64_t)x19 & 0xffffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint128_t x23 = (x22 >> 0x37);
- { uint64_t x24 = ((uint64_t)x22 & 0x7fffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint128_t x26 = (x25 >> 0x38);
- { uint64_t x27 = ((uint64_t)x25 & 0xffffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x37);
- { uint64_t x30 = ((uint64_t)x28 & 0x7fffffffffffff);
- { uint128_t x31 = (x21 + ((uint128_t)0x75 * x29));
- { uint64_t x32 = (uint64_t) (x31 >> 0x38);
- { uint64_t x33 = ((uint64_t)x31 & 0xffffffffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x37);
- { uint64_t x36 = (x34 & 0x7fffffffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e222m117_4limbs/femul.v b/src/Specific/solinas64_2e222m117_4limbs/femul.v
deleted file mode 100644
index 5adb3153c..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e222m117_4limbs.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/solinas64_2e222m117_4limbs/femulDisplay.log b/src/Specific/solinas64_2e222m117_4limbs/femulDisplay.log
deleted file mode 100644
index 5f2033ad6..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x75 * (0x2 * ((uint128_t)x8 * x14))));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x75 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0x75 * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- uint128_t x20 = (x19 >> 0x38);
- uint64_t x21 = ((uint64_t)x19 & 0xffffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint128_t x23 = (x22 >> 0x37);
- uint64_t x24 = ((uint64_t)x22 & 0x7fffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint128_t x26 = (x25 >> 0x38);
- uint64_t x27 = ((uint64_t)x25 & 0xffffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x37);
- uint64_t x30 = ((uint64_t)x28 & 0x7fffffffffffff);
- uint128_t x31 = (x21 + ((uint128_t)0x75 * x29));
- uint64_t x32 = (uint64_t) (x31 >> 0x38);
- uint64_t x33 = ((uint64_t)x31 & 0xffffffffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x37);
- uint64_t x36 = (x34 & 0x7fffffffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e222m117_4limbs/femulDisplay.v b/src/Specific/solinas64_2e222m117_4limbs/femulDisplay.v
deleted file mode 100644
index 2e9d8ca5e..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e222m117_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e222m117_4limbs/fesquare.c b/src/Specific/solinas64_2e222m117_4limbs/fesquare.c
deleted file mode 100644
index ffaeac9af..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x75 * (0x2 * ((uint128_t)x5 * x5))));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x75 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0x75 * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- { uint128_t x11 = (x10 >> 0x38);
- { uint64_t x12 = ((uint64_t)x10 & 0xffffffffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint128_t x14 = (x13 >> 0x37);
- { uint64_t x15 = ((uint64_t)x13 & 0x7fffffffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint128_t x17 = (x16 >> 0x38);
- { uint64_t x18 = ((uint64_t)x16 & 0xffffffffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x37);
- { uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffffff);
- { uint128_t x22 = (x12 + ((uint128_t)0x75 * x20));
- { uint64_t x23 = (uint64_t) (x22 >> 0x38);
- { uint64_t x24 = ((uint64_t)x22 & 0xffffffffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x37);
- { uint64_t x27 = (x25 & 0x7fffffffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e222m117_4limbs/fesquare.v b/src/Specific/solinas64_2e222m117_4limbs/fesquare.v
deleted file mode 100644
index fb6ae4d14..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e222m117_4limbs.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/solinas64_2e222m117_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e222m117_4limbs/fesquareDisplay.log
deleted file mode 100644
index 276d1a4b2..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x75 * (0x2 * ((uint128_t)x5 * x5))));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x75 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0x75 * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- uint128_t x11 = (x10 >> 0x38);
- uint64_t x12 = ((uint64_t)x10 & 0xffffffffffffff);
- uint128_t x13 = (x11 + x9);
- uint128_t x14 = (x13 >> 0x37);
- uint64_t x15 = ((uint64_t)x13 & 0x7fffffffffffff);
- uint128_t x16 = (x14 + x8);
- uint128_t x17 = (x16 >> 0x38);
- uint64_t x18 = ((uint64_t)x16 & 0xffffffffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x37);
- uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffffff);
- uint128_t x22 = (x12 + ((uint128_t)0x75 * x20));
- uint64_t x23 = (uint64_t) (x22 >> 0x38);
- uint64_t x24 = ((uint64_t)x22 & 0xffffffffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x37);
- uint64_t x27 = (x25 & 0x7fffffffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e222m117_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e222m117_4limbs/fesquareDisplay.v
deleted file mode 100644
index 57d13e180..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e222m117_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e222m117_4limbs/fesub.c b/src/Specific/solinas64_2e222m117_4limbs/fesub.c
deleted file mode 100644
index 9e774a1b1..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x1ffffffffffff16 + x5) - x11);
- out[1] = ((0xfffffffffffffe + x7) - x13);
- out[2] = ((0x1fffffffffffffe + x9) - x15);
- out[3] = ((0xfffffffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e222m117_4limbs/fesub.v b/src/Specific/solinas64_2e222m117_4limbs/fesub.v
deleted file mode 100644
index b9d357374..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e222m117_4limbs.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/solinas64_2e222m117_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e222m117_4limbs/fesubDisplay.log
deleted file mode 100644
index eb74f7a0d..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0xfffffffffffffe + x8) - x14), ((0x1fffffffffffffe + x9) - x15), ((0xfffffffffffffe + x7) - x13), ((0x1ffffffffffff16 + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e222m117_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e222m117_4limbs/fesubDisplay.v
deleted file mode 100644
index 2b65ecf7e..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e222m117_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e222m117_4limbs/freeze.c b/src/Specific/solinas64_2e222m117_4limbs/freeze.c
deleted file mode 100644
index 9c4d35595..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffff8b);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x7fffffffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0xffffffffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x7fffffffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0xffffffffffff8b);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0x7fffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0xffffffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x7fffffffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e222m117_4limbs/freeze.v b/src/Specific/solinas64_2e222m117_4limbs/freeze.v
deleted file mode 100644
index 42c4bc89f..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e222m117_4limbs.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/solinas64_2e222m117_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e222m117_4limbs/freezeDisplay.log
deleted file mode 100644
index 2fd34e0f6..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffff8b);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x7fffffffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0xffffffffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x7fffffffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0xffffffffffff8b);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0x7fffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0xffffffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x7fffffffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e222m117_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e222m117_4limbs/freezeDisplay.v
deleted file mode 100644
index 29a613685..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e222m117_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e222m117_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e222m117_4limbs/py_interpreter.sh
deleted file mode 100755
index 8bcc9d070..000000000
--- a/src/Specific/solinas64_2e222m117_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**222 - 117' -Dmodulus_bytes='55.5' -Da24='121665'
diff --git a/src/Specific/solinas64_2e222m117_5limbs/CurveParameters.v b/src/Specific/solinas64_2e222m117_5limbs/CurveParameters.v
deleted file mode 100644
index f51465876..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^222 - 117
-Base: 44.4
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 44 + 2/5;
- bitwidth := 64;
- s := 2^222;
- c := [(1, 117)];
- carry_chains := Some [seq 0 (pred 5); [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/solinas64_2e222m117_5limbs/Synthesis.v b/src/Specific/solinas64_2e222m117_5limbs/Synthesis.v
deleted file mode 100644
index 06a73b2c8..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e222m117_5limbs.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/solinas64_2e222m117_5limbs/compiler.sh b/src/Specific/solinas64_2e222m117_5limbs/compiler.sh
deleted file mode 100755
index 3d5283f2e..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{45,44,45,44,44}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<222) - 117' "$@"
diff --git a/src/Specific/solinas64_2e222m117_5limbs/compilerxx.sh b/src/Specific/solinas64_2e222m117_5limbs/compilerxx.sh
deleted file mode 100755
index e260a626f..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{45,44,45,44,44}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x8b}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<222) - 117' "$@"
diff --git a/src/Specific/solinas64_2e222m117_5limbs/feadd.c b/src/Specific/solinas64_2e222m117_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e222m117_5limbs/feadd.v b/src/Specific/solinas64_2e222m117_5limbs/feadd.v
deleted file mode 100644
index b56700f2a..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e222m117_5limbs.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/solinas64_2e222m117_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e222m117_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e222m117_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e222m117_5limbs/feaddDisplay.v
deleted file mode 100644
index 651bca903..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e222m117_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e222m117_5limbs/fecarry.v b/src/Specific/solinas64_2e222m117_5limbs/fecarry.v
deleted file mode 100644
index d89422c70..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e222m117_5limbs.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/solinas64_2e222m117_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e222m117_5limbs/fecarryDisplay.v
deleted file mode 100644
index a31bc958b..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e222m117_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e222m117_5limbs/femul.c b/src/Specific/solinas64_2e222m117_5limbs/femul.c
deleted file mode 100644
index e02cd4cec..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint128_t x20 = (((uint128_t)x5 * x18) + ((0x2 * ((uint128_t)x7 * x19)) + (((uint128_t)x9 * x17) + ((0x2 * ((uint128_t)x11 * x15)) + ((uint128_t)x10 * x13)))));
- { uint128_t x21 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + (((uint128_t)x9 * x15) + ((uint128_t)x11 * x13)))) + (0x75 * ((uint128_t)x10 * x18)));
- { uint128_t x22 = ((((uint128_t)x5 * x17) + ((0x2 * ((uint128_t)x7 * x15)) + ((uint128_t)x9 * x13))) + (0x75 * ((0x2 * ((uint128_t)x11 * x18)) + (0x2 * ((uint128_t)x10 * x19)))));
- { uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x75 * (((uint128_t)x9 * x18) + ((0x2 * ((uint128_t)x11 * x19)) + ((uint128_t)x10 * x17)))));
- { uint128_t x24 = (((uint128_t)x5 * x13) + (0x75 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- { uint64_t x25 = (uint64_t) (x24 >> 0x2d);
- { uint64_t x26 = ((uint64_t)x24 & 0x1fffffffffff);
- { uint128_t x27 = (x25 + x23);
- { uint64_t x28 = (uint64_t) (x27 >> 0x2c);
- { uint64_t x29 = ((uint64_t)x27 & 0xfffffffffff);
- { uint128_t x30 = (x28 + x22);
- { uint64_t x31 = (uint64_t) (x30 >> 0x2d);
- { uint64_t x32 = ((uint64_t)x30 & 0x1fffffffffff);
- { uint128_t x33 = (x31 + x21);
- { uint64_t x34 = (uint64_t) (x33 >> 0x2c);
- { uint64_t x35 = ((uint64_t)x33 & 0xfffffffffff);
- { uint128_t x36 = (x34 + x20);
- { uint64_t x37 = (uint64_t) (x36 >> 0x2c);
- { uint64_t x38 = ((uint64_t)x36 & 0xfffffffffff);
- { uint64_t x39 = (x26 + (0x75 * x37));
- { uint64_t x40 = (x39 >> 0x2d);
- { uint64_t x41 = (x39 & 0x1fffffffffff);
- { uint64_t x42 = (x40 + x29);
- { uint64_t x43 = (x42 >> 0x2c);
- { uint64_t x44 = (x42 & 0xfffffffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e222m117_5limbs/femul.v b/src/Specific/solinas64_2e222m117_5limbs/femul.v
deleted file mode 100644
index 67007320c..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e222m117_5limbs.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/solinas64_2e222m117_5limbs/femulDisplay.log b/src/Specific/solinas64_2e222m117_5limbs/femulDisplay.log
deleted file mode 100644
index b5ad2c1d4..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = (((uint128_t)x5 * x18) + ((0x2 * ((uint128_t)x7 * x19)) + (((uint128_t)x9 * x17) + ((0x2 * ((uint128_t)x11 * x15)) + ((uint128_t)x10 * x13)))));
- uint128_t x21 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + (((uint128_t)x9 * x15) + ((uint128_t)x11 * x13)))) + (0x75 * ((uint128_t)x10 * x18)));
- uint128_t x22 = ((((uint128_t)x5 * x17) + ((0x2 * ((uint128_t)x7 * x15)) + ((uint128_t)x9 * x13))) + (0x75 * ((0x2 * ((uint128_t)x11 * x18)) + (0x2 * ((uint128_t)x10 * x19)))));
- uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x75 * (((uint128_t)x9 * x18) + ((0x2 * ((uint128_t)x11 * x19)) + ((uint128_t)x10 * x17)))));
- uint128_t x24 = (((uint128_t)x5 * x13) + (0x75 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- uint64_t x25 = (uint64_t) (x24 >> 0x2d);
- uint64_t x26 = ((uint64_t)x24 & 0x1fffffffffff);
- uint128_t x27 = (x25 + x23);
- uint64_t x28 = (uint64_t) (x27 >> 0x2c);
- uint64_t x29 = ((uint64_t)x27 & 0xfffffffffff);
- uint128_t x30 = (x28 + x22);
- uint64_t x31 = (uint64_t) (x30 >> 0x2d);
- uint64_t x32 = ((uint64_t)x30 & 0x1fffffffffff);
- uint128_t x33 = (x31 + x21);
- uint64_t x34 = (uint64_t) (x33 >> 0x2c);
- uint64_t x35 = ((uint64_t)x33 & 0xfffffffffff);
- uint128_t x36 = (x34 + x20);
- uint64_t x37 = (uint64_t) (x36 >> 0x2c);
- uint64_t x38 = ((uint64_t)x36 & 0xfffffffffff);
- uint64_t x39 = (x26 + (0x75 * x37));
- uint64_t x40 = (x39 >> 0x2d);
- uint64_t x41 = (x39 & 0x1fffffffffff);
- uint64_t x42 = (x40 + x29);
- uint64_t x43 = (x42 >> 0x2c);
- uint64_t x44 = (x42 & 0xfffffffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e222m117_5limbs/femulDisplay.v b/src/Specific/solinas64_2e222m117_5limbs/femulDisplay.v
deleted file mode 100644
index 166c0675e..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e222m117_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e222m117_5limbs/fesquare.c b/src/Specific/solinas64_2e222m117_5limbs/fesquare.c
deleted file mode 100644
index 22a72706e..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x9 = (((uint128_t)x2 * x7) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x7 * x2)))));
- { uint128_t x10 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x75 * ((uint128_t)x7 * x7)));
- { uint128_t x11 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x75 * ((0x2 * ((uint128_t)x8 * x7)) + (0x2 * ((uint128_t)x7 * x8)))));
- { uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x75 * (((uint128_t)x6 * x7) + ((0x2 * ((uint128_t)x8 * x8)) + ((uint128_t)x7 * x6)))));
- { uint128_t x13 = (((uint128_t)x2 * x2) + (0x75 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- { uint64_t x14 = (uint64_t) (x13 >> 0x2d);
- { uint64_t x15 = ((uint64_t)x13 & 0x1fffffffffff);
- { uint128_t x16 = (x14 + x12);
- { uint64_t x17 = (uint64_t) (x16 >> 0x2c);
- { uint64_t x18 = ((uint64_t)x16 & 0xfffffffffff);
- { uint128_t x19 = (x17 + x11);
- { uint64_t x20 = (uint64_t) (x19 >> 0x2d);
- { uint64_t x21 = ((uint64_t)x19 & 0x1fffffffffff);
- { uint128_t x22 = (x20 + x10);
- { uint64_t x23 = (uint64_t) (x22 >> 0x2c);
- { uint64_t x24 = ((uint64_t)x22 & 0xfffffffffff);
- { uint128_t x25 = (x23 + x9);
- { uint64_t x26 = (uint64_t) (x25 >> 0x2c);
- { uint64_t x27 = ((uint64_t)x25 & 0xfffffffffff);
- { uint64_t x28 = (x15 + (0x75 * x26));
- { uint64_t x29 = (x28 >> 0x2d);
- { uint64_t x30 = (x28 & 0x1fffffffffff);
- { uint64_t x31 = (x29 + x18);
- { uint64_t x32 = (x31 >> 0x2c);
- { uint64_t x33 = (x31 & 0xfffffffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e222m117_5limbs/fesquare.v b/src/Specific/solinas64_2e222m117_5limbs/fesquare.v
deleted file mode 100644
index 6fe159e83..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e222m117_5limbs.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/solinas64_2e222m117_5limbs/fesquareDisplay.log b/src/Specific/solinas64_2e222m117_5limbs/fesquareDisplay.log
deleted file mode 100644
index 824b3186c..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint128_t x9 = (((uint128_t)x2 * x7) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x7 * x2)))));
- uint128_t x10 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x75 * ((uint128_t)x7 * x7)));
- uint128_t x11 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x75 * ((0x2 * ((uint128_t)x8 * x7)) + (0x2 * ((uint128_t)x7 * x8)))));
- uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x75 * (((uint128_t)x6 * x7) + ((0x2 * ((uint128_t)x8 * x8)) + ((uint128_t)x7 * x6)))));
- uint128_t x13 = (((uint128_t)x2 * x2) + (0x75 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- uint64_t x14 = (uint64_t) (x13 >> 0x2d);
- uint64_t x15 = ((uint64_t)x13 & 0x1fffffffffff);
- uint128_t x16 = (x14 + x12);
- uint64_t x17 = (uint64_t) (x16 >> 0x2c);
- uint64_t x18 = ((uint64_t)x16 & 0xfffffffffff);
- uint128_t x19 = (x17 + x11);
- uint64_t x20 = (uint64_t) (x19 >> 0x2d);
- uint64_t x21 = ((uint64_t)x19 & 0x1fffffffffff);
- uint128_t x22 = (x20 + x10);
- uint64_t x23 = (uint64_t) (x22 >> 0x2c);
- uint64_t x24 = ((uint64_t)x22 & 0xfffffffffff);
- uint128_t x25 = (x23 + x9);
- uint64_t x26 = (uint64_t) (x25 >> 0x2c);
- uint64_t x27 = ((uint64_t)x25 & 0xfffffffffff);
- uint64_t x28 = (x15 + (0x75 * x26));
- uint64_t x29 = (x28 >> 0x2d);
- uint64_t x30 = (x28 & 0x1fffffffffff);
- uint64_t x31 = (x29 + x18);
- uint64_t x32 = (x31 >> 0x2c);
- uint64_t x33 = (x31 & 0xfffffffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e222m117_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e222m117_5limbs/fesquareDisplay.v
deleted file mode 100644
index f9664de27..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e222m117_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e222m117_5limbs/fesub.c b/src/Specific/solinas64_2e222m117_5limbs/fesub.c
deleted file mode 100644
index c2a38ad49..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0x3fffffffff16 + x5) - x13);
- out[1] = ((0x1ffffffffffe + x7) - x15);
- out[2] = ((0x3ffffffffffe + x9) - x17);
- out[3] = ((0x1ffffffffffe + x11) - x19);
- out[4] = ((0x1ffffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e222m117_5limbs/fesub.v b/src/Specific/solinas64_2e222m117_5limbs/fesub.v
deleted file mode 100644
index 21836cd68..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e222m117_5limbs.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/solinas64_2e222m117_5limbs/fesubDisplay.log b/src/Specific/solinas64_2e222m117_5limbs/fesubDisplay.log
deleted file mode 100644
index ccfc6bccd..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0x1ffffffffffe + x10) - x18), ((0x1ffffffffffe + x11) - x19), ((0x3ffffffffffe + x9) - x17), ((0x1ffffffffffe + x7) - x15), ((0x3fffffffff16 + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e222m117_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e222m117_5limbs/fesubDisplay.v
deleted file mode 100644
index b494e5408..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e222m117_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e222m117_5limbs/freeze.c b/src/Specific/solinas64_2e222m117_5limbs/freeze.c
deleted file mode 100644
index 7905a55d4..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffff8b);
- { uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0xfffffffffff);
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x1fffffffffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0xfffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0xfffffffffff);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0x1fffffffff8b);
- { uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint64_t x29 = (x24 & 0xfffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint64_t x33 = (x24 & 0x1fffffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint64_t x37 = (x24 & 0xfffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint64_t x41 = (x24 & 0xfffffffffff);
- { uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e222m117_5limbs/freeze.v b/src/Specific/solinas64_2e222m117_5limbs/freeze.v
deleted file mode 100644
index 872ea0ce2..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e222m117_5limbs.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/solinas64_2e222m117_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e222m117_5limbs/freezeDisplay.log
deleted file mode 100644
index ee234450a..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffff8b);
- uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0xfffffffffff);
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x1fffffffffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0xfffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0xfffffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0x1fffffffff8b);
- uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint64_t x29 = (x24 & 0xfffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint64_t x33 = (x24 & 0x1fffffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint64_t x37 = (x24 & 0xfffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint64_t x41 = (x24 & 0xfffffffffff);
- uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e222m117_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e222m117_5limbs/freezeDisplay.v
deleted file mode 100644
index 24555eb19..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e222m117_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e222m117_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e222m117_5limbs/py_interpreter.sh
deleted file mode 100755
index fa530a078..000000000
--- a/src/Specific/solinas64_2e222m117_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**222 - 117' -Dmodulus_bytes='44.4' -Da24='121665'
diff --git a/src/Specific/solinas64_2e224m2e96p1_5limbs/CurveParameters.v b/src/Specific/solinas64_2e224m2e96p1_5limbs/CurveParameters.v
deleted file mode 100644
index 77da23e52..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^224 - 2^96 + 1
-Base: 44.8
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 44 + 4/5;
- bitwidth := 64;
- s := 2^224;
- c := [(1, -1); (2^96, 1)];
- carry_chains := Some [[1; 4]; [2; 0; 3; 1; 4]; [2; 0]]%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/solinas64_2e224m2e96p1_5limbs/Synthesis.v b/src/Specific/solinas64_2e224m2e96p1_5limbs/Synthesis.v
deleted file mode 100644
index 898a8f2bb..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_5limbs.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/solinas64_2e224m2e96p1_5limbs/compiler.sh b/src/Specific/solinas64_2e224m2e96p1_5limbs/compiler.sh
deleted file mode 100755
index a7e6c65ee..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{45,45,45,45,44}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1' "$@"
diff --git a/src/Specific/solinas64_2e224m2e96p1_5limbs/compilerxx.sh b/src/Specific/solinas64_2e224m2e96p1_5limbs/compilerxx.sh
deleted file mode 100755
index 38dc9c684..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{45,45,45,45,44}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1' "$@"
diff --git a/src/Specific/solinas64_2e224m2e96p1_5limbs/feadd.c b/src/Specific/solinas64_2e224m2e96p1_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e224m2e96p1_5limbs/feadd.v b/src/Specific/solinas64_2e224m2e96p1_5limbs/feadd.v
deleted file mode 100644
index 79416d067..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_5limbs.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/solinas64_2e224m2e96p1_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e224m2e96p1_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e224m2e96p1_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e224m2e96p1_5limbs/feaddDisplay.v
deleted file mode 100644
index 9b9de6003..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e224m2e96p1_5limbs/fecarry.v b/src/Specific/solinas64_2e224m2e96p1_5limbs/fecarry.v
deleted file mode 100644
index 054e09872..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_5limbs.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/solinas64_2e224m2e96p1_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e224m2e96p1_5limbs/fecarryDisplay.v
deleted file mode 100644
index 103629cd3..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e224m2e96p1_5limbs/femul.v b/src/Specific/solinas64_2e224m2e96p1_5limbs/femul.v
deleted file mode 100644
index 24c302bc2..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_5limbs.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/solinas64_2e224m2e96p1_5limbs/femulDisplay.v b/src/Specific/solinas64_2e224m2e96p1_5limbs/femulDisplay.v
deleted file mode 100644
index 4ad58b459..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e224m2e96p1_5limbs/fesquare.v b/src/Specific/solinas64_2e224m2e96p1_5limbs/fesquare.v
deleted file mode 100644
index fd71658c3..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_5limbs.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/solinas64_2e224m2e96p1_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e224m2e96p1_5limbs/fesquareDisplay.v
deleted file mode 100644
index abbb96fd1..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e224m2e96p1_5limbs/fesub.v b/src/Specific/solinas64_2e224m2e96p1_5limbs/fesub.v
deleted file mode 100644
index c20396fbc..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_5limbs.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/solinas64_2e224m2e96p1_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e224m2e96p1_5limbs/fesubDisplay.v
deleted file mode 100644
index 0e61ade87..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e224m2e96p1_5limbs/freeze.c b/src/Specific/solinas64_2e224m2e96p1_5limbs/freeze.c
deleted file mode 100644
index 9bd4af647..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_5limbs/freeze.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10, ℤ x11 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) Syntax.TZ) (0x0, Return x2, 0x1);
- { uint64_t x13, ℤ x14 = Op (Syntax.SubWithGetBorrow 45 Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) Syntax.TZ) (Return x11, Return x4, 0x0);
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 45 Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x1fffffffffc0);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x1fffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0xfffffffffff);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint8_t x25 = ((uint8_t)x24 & 0x1);
- { uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, 0x0);
- { uint64_t x32 = (x24 & 0x1fffffffffc0);
- { uint64_t x34, uint8_t x35 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x16, Return x32);
- { uint64_t x36 = (x24 & 0x1fffffffffff);
- { uint64_t x38, uint8_t x39 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x19, Return x36);
- { uint64_t x40 = (x24 & 0xfffffffffff);
- { uint64_t x42, uint8_t _ = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x39, Return x22, Return x40);
- out[0] = x27;
- out[1] = x30;
- out[2] = x34;
- out[3] = x38;
- out[4] = x42;
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e224m2e96p1_5limbs/freeze.v b/src/Specific/solinas64_2e224m2e96p1_5limbs/freeze.v
deleted file mode 100644
index b43ca8351..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_5limbs.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/solinas64_2e224m2e96p1_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e224m2e96p1_5limbs/freezeDisplay.log
deleted file mode 100644
index 86c5ce8e8..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,22 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, ℤ x11 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) Syntax.TZ) (0x0, Return x2, 0x1);
- uint64_t x13, ℤ x14 = Op (Syntax.SubWithGetBorrow 45 Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) Syntax.TZ) (Return x11, Return x4, 0x0);
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 45 Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x1fffffffffc0);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x1fffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0xfffffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint8_t x25 = ((uint8_t)x24 & 0x1);
- uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, 0x0);
- uint64_t x32 = (x24 & 0x1fffffffffc0);
- uint64_t x34, uint8_t x35 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x16, Return x32);
- uint64_t x36 = (x24 & 0x1fffffffffff);
- uint64_t x38, uint8_t x39 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x19, Return x36);
- uint64_t x40 = (x24 & 0xfffffffffff);
- uint64_t x42, uint8_t _ = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x39, Return x22, Return x40);
- (Return x42, Return x38, Return x34, Return x30, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e224m2e96p1_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e224m2e96p1_5limbs/freezeDisplay.v
deleted file mode 100644
index 46dc82d84..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e224m2e96p1_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e224m2e96p1_5limbs/py_interpreter.sh
deleted file mode 100755
index 81d1e73f5..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**224 - 2**96 + 1' -Dmodulus_bytes='44.8' -Da24='121665'
diff --git a/src/Specific/solinas64_2e224m2e96p1_6limbs/CurveParameters.v b/src/Specific/solinas64_2e224m2e96p1_6limbs/CurveParameters.v
deleted file mode 100644
index 1173c567f..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^224 - 2^96 + 1
-Base: 37 + 1/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 37 + 1/3;
- bitwidth := 64;
- s := 2^224;
- c := [(1, -1); (2^96, 1)];
- carry_chains := Some [[1; 5]; [2; 0; 3; 1; 4; 5]; [2; 0]]%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/solinas64_2e224m2e96p1_6limbs/Synthesis.v b/src/Specific/solinas64_2e224m2e96p1_6limbs/Synthesis.v
deleted file mode 100644
index 1cbaa38bf..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_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/solinas64_2e224m2e96p1_6limbs/compiler.sh b/src/Specific/solinas64_2e224m2e96p1_6limbs/compiler.sh
deleted file mode 100755
index 987b803a0..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{38,37,37,38,37,37}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1' "$@"
diff --git a/src/Specific/solinas64_2e224m2e96p1_6limbs/compilerxx.sh b/src/Specific/solinas64_2e224m2e96p1_6limbs/compilerxx.sh
deleted file mode 100755
index a9e262ae8..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{38,37,37,38,37,37}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01}' -Dmodulus_bytes_val='28' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<224) - (1_mpz<<96) + 1' "$@"
diff --git a/src/Specific/solinas64_2e224m2e96p1_6limbs/feadd.c b/src/Specific/solinas64_2e224m2e96p1_6limbs/feadd.c
deleted file mode 100644
index 4a6bfb999..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_6limbs/feadd.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_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/solinas64_2e224m2e96p1_6limbs/feadd.v b/src/Specific/solinas64_2e224m2e96p1_6limbs/feadd.v
deleted file mode 100644
index 9731c6546..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_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/solinas64_2e224m2e96p1_6limbs/feaddDisplay.log b/src/Specific/solinas64_2e224m2e96p1_6limbs/feaddDisplay.log
deleted file mode 100644
index e32995a81..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-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
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e224m2e96p1_6limbs/feaddDisplay.v b/src/Specific/solinas64_2e224m2e96p1_6limbs/feaddDisplay.v
deleted file mode 100644
index dc1802e2a..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e224m2e96p1_6limbs/fecarry.v b/src/Specific/solinas64_2e224m2e96p1_6limbs/fecarry.v
deleted file mode 100644
index 7353cbf05..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_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/solinas64_2e224m2e96p1_6limbs/fecarryDisplay.v b/src/Specific/solinas64_2e224m2e96p1_6limbs/fecarryDisplay.v
deleted file mode 100644
index 2b18d815d..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e224m2e96p1_6limbs/femul.v b/src/Specific/solinas64_2e224m2e96p1_6limbs/femul.v
deleted file mode 100644
index 916268c4e..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_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/solinas64_2e224m2e96p1_6limbs/femulDisplay.v b/src/Specific/solinas64_2e224m2e96p1_6limbs/femulDisplay.v
deleted file mode 100644
index bb61705a5..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e224m2e96p1_6limbs/fesquare.v b/src/Specific/solinas64_2e224m2e96p1_6limbs/fesquare.v
deleted file mode 100644
index 9416702f7..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_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/solinas64_2e224m2e96p1_6limbs/fesquareDisplay.v b/src/Specific/solinas64_2e224m2e96p1_6limbs/fesquareDisplay.v
deleted file mode 100644
index fc094c0ac..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e224m2e96p1_6limbs/fesub.v b/src/Specific/solinas64_2e224m2e96p1_6limbs/fesub.v
deleted file mode 100644
index 39813f86b..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_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/solinas64_2e224m2e96p1_6limbs/fesubDisplay.v b/src/Specific/solinas64_2e224m2e96p1_6limbs/fesubDisplay.v
deleted file mode 100644
index 8ad7a7ba9..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e224m2e96p1_6limbs/freeze.c b/src/Specific/solinas64_2e224m2e96p1_6limbs/freeze.c
deleted file mode 100644
index ceb4a7f2a..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_6limbs/freeze.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void freeze(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12, ℤ x13 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) Syntax.TZ) (0x0, Return x2, 0x1);
- { uint64_t x15, ℤ x16 = Op (Syntax.SubWithGetBorrow 37 Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) Syntax.TZ) (Return x13, Return x4, 0x0);
- { uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 37 Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0x1fffe00000);
- { uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0x3fffffffff);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0x1fffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0x1fffffffff);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint8_t x30 = ((uint8_t)x29 & 0x1);
- { uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, 0x0);
- { uint64_t x37 = (x29 & 0x1fffe00000);
- { uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x18, Return x37);
- { uint64_t x41 = (x29 & 0x3fffffffff);
- { uint64_t x43, uint8_t x44 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x21, Return x41);
- { uint64_t x45 = (x29 & 0x1fffffffff);
- { uint64_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x44, Return x24, Return x45);
- { uint64_t x49 = (x29 & 0x1fffffffff);
- { uint64_t x51, uint8_t _ = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x27, Return x49);
- out[0] = x32;
- out[1] = x35;
- out[2] = x39;
- out[3] = x43;
- out[4] = x47;
- out[5] = x51;
- }}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e224m2e96p1_6limbs/freeze.v b/src/Specific/solinas64_2e224m2e96p1_6limbs/freeze.v
deleted file mode 100644
index 079e96214..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_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/solinas64_2e224m2e96p1_6limbs/freezeDisplay.log b/src/Specific/solinas64_2e224m2e96p1_6limbs/freezeDisplay.log
deleted file mode 100644
index b64dbd5e4..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_6limbs/freezeDisplay.log
+++ /dev/null
@@ -1,25 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, ℤ x13 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) Syntax.TZ) (0x0, Return x2, 0x1);
- uint64_t x15, ℤ x16 = Op (Syntax.SubWithGetBorrow 37 Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) Syntax.TZ) (Return x13, Return x4, 0x0);
- uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 37 Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0x1fffe00000);
- uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0x3fffffffff);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0x1fffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0x1fffffffff);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint8_t x30 = ((uint8_t)x29 & 0x1);
- uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, 0x0);
- uint64_t x37 = (x29 & 0x1fffe00000);
- uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x18, Return x37);
- uint64_t x41 = (x29 & 0x3fffffffff);
- uint64_t x43, uint8_t x44 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x21, Return x41);
- uint64_t x45 = (x29 & 0x1fffffffff);
- uint64_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x44, Return x24, Return x45);
- uint64_t x49 = (x29 & 0x1fffffffff);
- uint64_t x51, uint8_t _ = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x27, Return x49);
- (Return x51, Return x47, Return x43, Return x39, Return x35, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e224m2e96p1_6limbs/freezeDisplay.v b/src/Specific/solinas64_2e224m2e96p1_6limbs/freezeDisplay.v
deleted file mode 100644
index 077ca7c14..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e224m2e96p1_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e224m2e96p1_6limbs/py_interpreter.sh b/src/Specific/solinas64_2e224m2e96p1_6limbs/py_interpreter.sh
deleted file mode 100755
index 53405d403..000000000
--- a/src/Specific/solinas64_2e224m2e96p1_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**224 - 2**96 + 1' -Dmodulus_bytes='37 + 1/3' -Da24='121665'
diff --git a/src/Specific/solinas64_2e226m5_4limbs/CurveParameters.v b/src/Specific/solinas64_2e226m5_4limbs/CurveParameters.v
deleted file mode 100644
index b7d00c001..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^226 - 5
-Base: 56.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 56 + 1/2;
- bitwidth := 64;
- s := 2^226;
- c := [(1, 5)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e226m5_4limbs/Synthesis.v b/src/Specific/solinas64_2e226m5_4limbs/Synthesis.v
deleted file mode 100644
index 1c073bc77..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e226m5_4limbs.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/solinas64_2e226m5_4limbs/compiler.sh b/src/Specific/solinas64_2e226m5_4limbs/compiler.sh
deleted file mode 100755
index d7057de2d..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{57,56,57,56}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<226) - 5' "$@"
diff --git a/src/Specific/solinas64_2e226m5_4limbs/compilerxx.sh b/src/Specific/solinas64_2e226m5_4limbs/compilerxx.sh
deleted file mode 100755
index ae57f8cc9..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{57,56,57,56}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<226) - 5' "$@"
diff --git a/src/Specific/solinas64_2e226m5_4limbs/feadd.c b/src/Specific/solinas64_2e226m5_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e226m5_4limbs/feadd.v b/src/Specific/solinas64_2e226m5_4limbs/feadd.v
deleted file mode 100644
index 02e5c9b9a..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e226m5_4limbs.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/solinas64_2e226m5_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e226m5_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e226m5_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e226m5_4limbs/feaddDisplay.v
deleted file mode 100644
index 02b24d5ae..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e226m5_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e226m5_4limbs/fecarry.v b/src/Specific/solinas64_2e226m5_4limbs/fecarry.v
deleted file mode 100644
index c01232aeb..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e226m5_4limbs.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/solinas64_2e226m5_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e226m5_4limbs/fecarryDisplay.v
deleted file mode 100644
index cd6bdfe16..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e226m5_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e226m5_4limbs/femul.c b/src/Specific/solinas64_2e226m5_4limbs/femul.c
deleted file mode 100644
index d92664251..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x5 * (0x2 * ((uint128_t)x8 * x14))));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x5 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0x5 * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x39);
- { uint64_t x21 = ((uint64_t)x19 & 0x1ffffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint128_t x23 = (x22 >> 0x38);
- { uint64_t x24 = ((uint64_t)x22 & 0xffffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x39);
- { uint64_t x27 = ((uint64_t)x25 & 0x1ffffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x38);
- { uint64_t x30 = ((uint64_t)x28 & 0xffffffffffffff);
- { uint128_t x31 = (x21 + ((uint128_t)0x5 * x29));
- { uint64_t x32 = (uint64_t) (x31 >> 0x39);
- { uint64_t x33 = ((uint64_t)x31 & 0x1ffffffffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x38);
- { uint64_t x36 = (x34 & 0xffffffffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e226m5_4limbs/femul.v b/src/Specific/solinas64_2e226m5_4limbs/femul.v
deleted file mode 100644
index 1a0e0416c..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e226m5_4limbs.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/solinas64_2e226m5_4limbs/femulDisplay.log b/src/Specific/solinas64_2e226m5_4limbs/femulDisplay.log
deleted file mode 100644
index bdc377b7d..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x5 * (0x2 * ((uint128_t)x8 * x14))));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x5 * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0x5 * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x39);
- uint64_t x21 = ((uint64_t)x19 & 0x1ffffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint128_t x23 = (x22 >> 0x38);
- uint64_t x24 = ((uint64_t)x22 & 0xffffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x39);
- uint64_t x27 = ((uint64_t)x25 & 0x1ffffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x38);
- uint64_t x30 = ((uint64_t)x28 & 0xffffffffffffff);
- uint128_t x31 = (x21 + ((uint128_t)0x5 * x29));
- uint64_t x32 = (uint64_t) (x31 >> 0x39);
- uint64_t x33 = ((uint64_t)x31 & 0x1ffffffffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x38);
- uint64_t x36 = (x34 & 0xffffffffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e226m5_4limbs/femulDisplay.v b/src/Specific/solinas64_2e226m5_4limbs/femulDisplay.v
deleted file mode 100644
index 2b1882c85..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e226m5_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e226m5_4limbs/fesquare.c b/src/Specific/solinas64_2e226m5_4limbs/fesquare.c
deleted file mode 100644
index bb9017957..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x5 * (0x2 * ((uint128_t)x5 * x5))));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x5 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0x5 * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- { uint64_t x11 = (uint64_t) (x10 >> 0x39);
- { uint64_t x12 = ((uint64_t)x10 & 0x1ffffffffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint128_t x14 = (x13 >> 0x38);
- { uint64_t x15 = ((uint64_t)x13 & 0xffffffffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint64_t x17 = (uint64_t) (x16 >> 0x39);
- { uint64_t x18 = ((uint64_t)x16 & 0x1ffffffffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x38);
- { uint64_t x21 = ((uint64_t)x19 & 0xffffffffffffff);
- { uint128_t x22 = (x12 + ((uint128_t)0x5 * x20));
- { uint64_t x23 = (uint64_t) (x22 >> 0x39);
- { uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x38);
- { uint64_t x27 = (x25 & 0xffffffffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e226m5_4limbs/fesquare.v b/src/Specific/solinas64_2e226m5_4limbs/fesquare.v
deleted file mode 100644
index 325d4ebaf..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e226m5_4limbs.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/solinas64_2e226m5_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e226m5_4limbs/fesquareDisplay.log
deleted file mode 100644
index 45a28e10e..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x5 * (0x2 * ((uint128_t)x5 * x5))));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x5 * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0x5 * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- uint64_t x11 = (uint64_t) (x10 >> 0x39);
- uint64_t x12 = ((uint64_t)x10 & 0x1ffffffffffffff);
- uint128_t x13 = (x11 + x9);
- uint128_t x14 = (x13 >> 0x38);
- uint64_t x15 = ((uint64_t)x13 & 0xffffffffffffff);
- uint128_t x16 = (x14 + x8);
- uint64_t x17 = (uint64_t) (x16 >> 0x39);
- uint64_t x18 = ((uint64_t)x16 & 0x1ffffffffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x38);
- uint64_t x21 = ((uint64_t)x19 & 0xffffffffffffff);
- uint128_t x22 = (x12 + ((uint128_t)0x5 * x20));
- uint64_t x23 = (uint64_t) (x22 >> 0x39);
- uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x38);
- uint64_t x27 = (x25 & 0xffffffffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e226m5_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e226m5_4limbs/fesquareDisplay.v
deleted file mode 100644
index e3fb5cc33..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e226m5_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e226m5_4limbs/fesub.c b/src/Specific/solinas64_2e226m5_4limbs/fesub.c
deleted file mode 100644
index b31e552cc..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x3fffffffffffff6 + x5) - x11);
- out[1] = ((0x1fffffffffffffe + x7) - x13);
- out[2] = ((0x3fffffffffffffe + x9) - x15);
- out[3] = ((0x1fffffffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e226m5_4limbs/fesub.v b/src/Specific/solinas64_2e226m5_4limbs/fesub.v
deleted file mode 100644
index ebf5dbebe..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e226m5_4limbs.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/solinas64_2e226m5_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e226m5_4limbs/fesubDisplay.log
deleted file mode 100644
index f0f83e6da..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0x1fffffffffffffe + x8) - x14), ((0x3fffffffffffffe + x9) - x15), ((0x1fffffffffffffe + x7) - x13), ((0x3fffffffffffff6 + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e226m5_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e226m5_4limbs/fesubDisplay.v
deleted file mode 100644
index d825ffe2c..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e226m5_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e226m5_4limbs/freeze.c b/src/Specific/solinas64_2e226m5_4limbs/freeze.c
deleted file mode 100644
index 27a027c47..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffffffffb);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0xffffffffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x1ffffffffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0xffffffffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0x1fffffffffffffb);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0xffffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0x1ffffffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0xffffffffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e226m5_4limbs/freeze.v b/src/Specific/solinas64_2e226m5_4limbs/freeze.v
deleted file mode 100644
index 14991bc7e..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e226m5_4limbs.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/solinas64_2e226m5_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e226m5_4limbs/freezeDisplay.log
deleted file mode 100644
index 89622811c..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffffffffb);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0xffffffffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x1ffffffffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0xffffffffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0x1fffffffffffffb);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0xffffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0x1ffffffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0xffffffffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e226m5_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e226m5_4limbs/freezeDisplay.v
deleted file mode 100644
index 0aa83c6b2..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e226m5_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e226m5_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e226m5_4limbs/py_interpreter.sh
deleted file mode 100755
index e7fa43f5a..000000000
--- a/src/Specific/solinas64_2e226m5_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**226 - 5' -Dmodulus_bytes='56.5' -Da24='121665'
diff --git a/src/Specific/solinas64_2e226m5_5limbs/CurveParameters.v b/src/Specific/solinas64_2e226m5_5limbs/CurveParameters.v
deleted file mode 100644
index 2c8e16ee6..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^226 - 5
-Base: 45.2
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 45 + 1/5;
- bitwidth := 64;
- s := 2^226;
- c := [(1, 5)];
- carry_chains := Some [seq 0 (pred 5); [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/solinas64_2e226m5_5limbs/Synthesis.v b/src/Specific/solinas64_2e226m5_5limbs/Synthesis.v
deleted file mode 100644
index c81851016..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e226m5_5limbs.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/solinas64_2e226m5_5limbs/compiler.sh b/src/Specific/solinas64_2e226m5_5limbs/compiler.sh
deleted file mode 100755
index f0d29537a..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{46,45,45,45,45}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<226) - 5' "$@"
diff --git a/src/Specific/solinas64_2e226m5_5limbs/compilerxx.sh b/src/Specific/solinas64_2e226m5_5limbs/compilerxx.sh
deleted file mode 100755
index 0865f80e4..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{46,45,45,45,45}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfb}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<226) - 5' "$@"
diff --git a/src/Specific/solinas64_2e226m5_5limbs/feadd.c b/src/Specific/solinas64_2e226m5_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e226m5_5limbs/feadd.v b/src/Specific/solinas64_2e226m5_5limbs/feadd.v
deleted file mode 100644
index 3028493f3..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e226m5_5limbs.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/solinas64_2e226m5_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e226m5_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e226m5_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e226m5_5limbs/feaddDisplay.v
deleted file mode 100644
index 2ed3a861b..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e226m5_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e226m5_5limbs/fecarry.v b/src/Specific/solinas64_2e226m5_5limbs/fecarry.v
deleted file mode 100644
index c165af39d..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e226m5_5limbs.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/solinas64_2e226m5_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e226m5_5limbs/fecarryDisplay.v
deleted file mode 100644
index 6130b48da..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e226m5_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e226m5_5limbs/femul.c b/src/Specific/solinas64_2e226m5_5limbs/femul.c
deleted file mode 100644
index c5f483f20..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint128_t x20 = (((uint128_t)x5 * x18) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((0x2 * ((uint128_t)x11 * x15)) + ((uint128_t)x10 * x13)))));
- { uint128_t x21 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((0x2 * ((uint128_t)x9 * x15)) + ((uint128_t)x11 * x13)))) + (0x5 * ((uint128_t)x10 * x18)));
- { uint128_t x22 = ((((uint128_t)x5 * x17) + ((0x2 * ((uint128_t)x7 * x15)) + ((uint128_t)x9 * x13))) + (0x5 * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- { uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x5 * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- { uint128_t x24 = (((uint128_t)x5 * x13) + (0x5 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- { uint64_t x25 = (uint64_t) (x24 >> 0x2e);
- { uint64_t x26 = ((uint64_t)x24 & 0x3fffffffffff);
- { uint128_t x27 = (x25 + x23);
- { uint64_t x28 = (uint64_t) (x27 >> 0x2d);
- { uint64_t x29 = ((uint64_t)x27 & 0x1fffffffffff);
- { uint128_t x30 = (x28 + x22);
- { uint64_t x31 = (uint64_t) (x30 >> 0x2d);
- { uint64_t x32 = ((uint64_t)x30 & 0x1fffffffffff);
- { uint128_t x33 = (x31 + x21);
- { uint64_t x34 = (uint64_t) (x33 >> 0x2d);
- { uint64_t x35 = ((uint64_t)x33 & 0x1fffffffffff);
- { uint128_t x36 = (x34 + x20);
- { uint64_t x37 = (uint64_t) (x36 >> 0x2d);
- { uint64_t x38 = ((uint64_t)x36 & 0x1fffffffffff);
- { uint64_t x39 = (x26 + (0x5 * x37));
- { uint64_t x40 = (x39 >> 0x2e);
- { uint64_t x41 = (x39 & 0x3fffffffffff);
- { uint64_t x42 = (x40 + x29);
- { uint64_t x43 = (x42 >> 0x2d);
- { uint64_t x44 = (x42 & 0x1fffffffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e226m5_5limbs/femul.v b/src/Specific/solinas64_2e226m5_5limbs/femul.v
deleted file mode 100644
index f97c5918b..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e226m5_5limbs.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/solinas64_2e226m5_5limbs/femulDisplay.log b/src/Specific/solinas64_2e226m5_5limbs/femulDisplay.log
deleted file mode 100644
index 3edc5f339..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = (((uint128_t)x5 * x18) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((0x2 * ((uint128_t)x11 * x15)) + ((uint128_t)x10 * x13)))));
- uint128_t x21 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((0x2 * ((uint128_t)x9 * x15)) + ((uint128_t)x11 * x13)))) + (0x5 * ((uint128_t)x10 * x18)));
- uint128_t x22 = ((((uint128_t)x5 * x17) + ((0x2 * ((uint128_t)x7 * x15)) + ((uint128_t)x9 * x13))) + (0x5 * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x5 * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- uint128_t x24 = (((uint128_t)x5 * x13) + (0x5 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- uint64_t x25 = (uint64_t) (x24 >> 0x2e);
- uint64_t x26 = ((uint64_t)x24 & 0x3fffffffffff);
- uint128_t x27 = (x25 + x23);
- uint64_t x28 = (uint64_t) (x27 >> 0x2d);
- uint64_t x29 = ((uint64_t)x27 & 0x1fffffffffff);
- uint128_t x30 = (x28 + x22);
- uint64_t x31 = (uint64_t) (x30 >> 0x2d);
- uint64_t x32 = ((uint64_t)x30 & 0x1fffffffffff);
- uint128_t x33 = (x31 + x21);
- uint64_t x34 = (uint64_t) (x33 >> 0x2d);
- uint64_t x35 = ((uint64_t)x33 & 0x1fffffffffff);
- uint128_t x36 = (x34 + x20);
- uint64_t x37 = (uint64_t) (x36 >> 0x2d);
- uint64_t x38 = ((uint64_t)x36 & 0x1fffffffffff);
- uint64_t x39 = (x26 + (0x5 * x37));
- uint64_t x40 = (x39 >> 0x2e);
- uint64_t x41 = (x39 & 0x3fffffffffff);
- uint64_t x42 = (x40 + x29);
- uint64_t x43 = (x42 >> 0x2d);
- uint64_t x44 = (x42 & 0x1fffffffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e226m5_5limbs/femulDisplay.v b/src/Specific/solinas64_2e226m5_5limbs/femulDisplay.v
deleted file mode 100644
index 15c9b8390..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e226m5_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e226m5_5limbs/fesquare.c b/src/Specific/solinas64_2e226m5_5limbs/fesquare.c
deleted file mode 100644
index dcfb284de..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x9 = (((uint128_t)x2 * x7) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x7 * x2)))));
- { uint128_t x10 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x5 * ((uint128_t)x7 * x7)));
- { uint128_t x11 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x5 * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- { uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x5 * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- { uint128_t x13 = (((uint128_t)x2 * x2) + (0x5 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- { uint64_t x14 = (uint64_t) (x13 >> 0x2e);
- { uint64_t x15 = ((uint64_t)x13 & 0x3fffffffffff);
- { uint128_t x16 = (x14 + x12);
- { uint64_t x17 = (uint64_t) (x16 >> 0x2d);
- { uint64_t x18 = ((uint64_t)x16 & 0x1fffffffffff);
- { uint128_t x19 = (x17 + x11);
- { uint64_t x20 = (uint64_t) (x19 >> 0x2d);
- { uint64_t x21 = ((uint64_t)x19 & 0x1fffffffffff);
- { uint128_t x22 = (x20 + x10);
- { uint64_t x23 = (uint64_t) (x22 >> 0x2d);
- { uint64_t x24 = ((uint64_t)x22 & 0x1fffffffffff);
- { uint128_t x25 = (x23 + x9);
- { uint64_t x26 = (uint64_t) (x25 >> 0x2d);
- { uint64_t x27 = ((uint64_t)x25 & 0x1fffffffffff);
- { uint64_t x28 = (x15 + (0x5 * x26));
- { uint64_t x29 = (x28 >> 0x2e);
- { uint64_t x30 = (x28 & 0x3fffffffffff);
- { uint64_t x31 = (x29 + x18);
- { uint64_t x32 = (x31 >> 0x2d);
- { uint64_t x33 = (x31 & 0x1fffffffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e226m5_5limbs/fesquare.v b/src/Specific/solinas64_2e226m5_5limbs/fesquare.v
deleted file mode 100644
index 016bc7eb8..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e226m5_5limbs.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/solinas64_2e226m5_5limbs/fesquareDisplay.log b/src/Specific/solinas64_2e226m5_5limbs/fesquareDisplay.log
deleted file mode 100644
index 124e3cac9..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint128_t x9 = (((uint128_t)x2 * x7) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x7 * x2)))));
- uint128_t x10 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x5 * ((uint128_t)x7 * x7)));
- uint128_t x11 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x5 * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x5 * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- uint128_t x13 = (((uint128_t)x2 * x2) + (0x5 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- uint64_t x14 = (uint64_t) (x13 >> 0x2e);
- uint64_t x15 = ((uint64_t)x13 & 0x3fffffffffff);
- uint128_t x16 = (x14 + x12);
- uint64_t x17 = (uint64_t) (x16 >> 0x2d);
- uint64_t x18 = ((uint64_t)x16 & 0x1fffffffffff);
- uint128_t x19 = (x17 + x11);
- uint64_t x20 = (uint64_t) (x19 >> 0x2d);
- uint64_t x21 = ((uint64_t)x19 & 0x1fffffffffff);
- uint128_t x22 = (x20 + x10);
- uint64_t x23 = (uint64_t) (x22 >> 0x2d);
- uint64_t x24 = ((uint64_t)x22 & 0x1fffffffffff);
- uint128_t x25 = (x23 + x9);
- uint64_t x26 = (uint64_t) (x25 >> 0x2d);
- uint64_t x27 = ((uint64_t)x25 & 0x1fffffffffff);
- uint64_t x28 = (x15 + (0x5 * x26));
- uint64_t x29 = (x28 >> 0x2e);
- uint64_t x30 = (x28 & 0x3fffffffffff);
- uint64_t x31 = (x29 + x18);
- uint64_t x32 = (x31 >> 0x2d);
- uint64_t x33 = (x31 & 0x1fffffffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e226m5_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e226m5_5limbs/fesquareDisplay.v
deleted file mode 100644
index 860eb8319..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e226m5_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e226m5_5limbs/fesub.c b/src/Specific/solinas64_2e226m5_5limbs/fesub.c
deleted file mode 100644
index 3abd171ea..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0x7ffffffffff6 + x5) - x13);
- out[1] = ((0x3ffffffffffe + x7) - x15);
- out[2] = ((0x3ffffffffffe + x9) - x17);
- out[3] = ((0x3ffffffffffe + x11) - x19);
- out[4] = ((0x3ffffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e226m5_5limbs/fesub.v b/src/Specific/solinas64_2e226m5_5limbs/fesub.v
deleted file mode 100644
index 2960f5e31..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e226m5_5limbs.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/solinas64_2e226m5_5limbs/fesubDisplay.log b/src/Specific/solinas64_2e226m5_5limbs/fesubDisplay.log
deleted file mode 100644
index c91c66cd3..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0x3ffffffffffe + x10) - x18), ((0x3ffffffffffe + x11) - x19), ((0x3ffffffffffe + x9) - x17), ((0x3ffffffffffe + x7) - x15), ((0x7ffffffffff6 + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e226m5_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e226m5_5limbs/fesubDisplay.v
deleted file mode 100644
index 45abe182a..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e226m5_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e226m5_5limbs/freeze.c b/src/Specific/solinas64_2e226m5_5limbs/freeze.c
deleted file mode 100644
index fd05a7d55..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffffb);
- { uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x1fffffffffff);
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x1fffffffffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x1fffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x1fffffffffff);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0x3ffffffffffb);
- { uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint64_t x29 = (x24 & 0x1fffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint64_t x33 = (x24 & 0x1fffffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint64_t x37 = (x24 & 0x1fffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint64_t x41 = (x24 & 0x1fffffffffff);
- { uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e226m5_5limbs/freeze.v b/src/Specific/solinas64_2e226m5_5limbs/freeze.v
deleted file mode 100644
index 9ba5785dc..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e226m5_5limbs.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/solinas64_2e226m5_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e226m5_5limbs/freezeDisplay.log
deleted file mode 100644
index bb7715cbc..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffffb);
- uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x1fffffffffff);
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x1fffffffffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x1fffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x1fffffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0x3ffffffffffb);
- uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint64_t x29 = (x24 & 0x1fffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint64_t x33 = (x24 & 0x1fffffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint64_t x37 = (x24 & 0x1fffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint64_t x41 = (x24 & 0x1fffffffffff);
- uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e226m5_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e226m5_5limbs/freezeDisplay.v
deleted file mode 100644
index ae67c5eba..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e226m5_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e226m5_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e226m5_5limbs/py_interpreter.sh
deleted file mode 100755
index 87080e619..000000000
--- a/src/Specific/solinas64_2e226m5_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**226 - 5' -Dmodulus_bytes='45.2' -Da24='121665'
diff --git a/src/Specific/solinas64_2e230m27_4limbs/CurveParameters.v b/src/Specific/solinas64_2e230m27_4limbs/CurveParameters.v
deleted file mode 100644
index c6ea3202b..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^230 - 27
-Base: 57.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 57 + 1/2;
- bitwidth := 64;
- s := 2^230;
- c := [(1, 27)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e230m27_4limbs/Synthesis.v b/src/Specific/solinas64_2e230m27_4limbs/Synthesis.v
deleted file mode 100644
index f0a7c8050..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e230m27_4limbs.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/solinas64_2e230m27_4limbs/compiler.sh b/src/Specific/solinas64_2e230m27_4limbs/compiler.sh
deleted file mode 100755
index fc1cb69cd..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{58,57,58,57}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<230) - 27' "$@"
diff --git a/src/Specific/solinas64_2e230m27_4limbs/compilerxx.sh b/src/Specific/solinas64_2e230m27_4limbs/compilerxx.sh
deleted file mode 100755
index 3aa34c029..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{58,57,58,57}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<230) - 27' "$@"
diff --git a/src/Specific/solinas64_2e230m27_4limbs/feadd.c b/src/Specific/solinas64_2e230m27_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e230m27_4limbs/feadd.v b/src/Specific/solinas64_2e230m27_4limbs/feadd.v
deleted file mode 100644
index 61975391f..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e230m27_4limbs.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/solinas64_2e230m27_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e230m27_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e230m27_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e230m27_4limbs/feaddDisplay.v
deleted file mode 100644
index b927d4e1a..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e230m27_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e230m27_4limbs/fecarry.v b/src/Specific/solinas64_2e230m27_4limbs/fecarry.v
deleted file mode 100644
index 28f2ed91a..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e230m27_4limbs.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/solinas64_2e230m27_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e230m27_4limbs/fecarryDisplay.v
deleted file mode 100644
index 823e87cf3..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e230m27_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e230m27_4limbs/femul.c b/src/Specific/solinas64_2e230m27_4limbs/femul.c
deleted file mode 100644
index ffb6b77cd..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x1b * (0x2 * ((uint128_t)x8 * x14))));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x1b * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0x1b * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- { uint128_t x20 = (x19 >> 0x3a);
- { uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint128_t x23 = (x22 >> 0x39);
- { uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint128_t x26 = (x25 >> 0x3a);
- { uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x39);
- { uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffffffff);
- { uint128_t x31 = (x21 + ((uint128_t)0x1b * x29));
- { uint64_t x32 = (uint64_t) (x31 >> 0x3a);
- { uint64_t x33 = ((uint64_t)x31 & 0x3ffffffffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x39);
- { uint64_t x36 = (x34 & 0x1ffffffffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e230m27_4limbs/femul.v b/src/Specific/solinas64_2e230m27_4limbs/femul.v
deleted file mode 100644
index be6fe19f7..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e230m27_4limbs.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/solinas64_2e230m27_4limbs/femulDisplay.log b/src/Specific/solinas64_2e230m27_4limbs/femulDisplay.log
deleted file mode 100644
index c3853896e..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + ((0x2 * ((uint128_t)x7 * x13)) + ((uint128_t)x9 * x11))) + (0x1b * (0x2 * ((uint128_t)x8 * x14))));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0x1b * (((uint128_t)x9 * x14) + ((uint128_t)x8 * x15))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0x1b * ((0x2 * ((uint128_t)x7 * x14)) + (((uint128_t)x9 * x15) + (0x2 * ((uint128_t)x8 * x13))))));
- uint128_t x20 = (x19 >> 0x3a);
- uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint128_t x23 = (x22 >> 0x39);
- uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint128_t x26 = (x25 >> 0x3a);
- uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x39);
- uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffffffff);
- uint128_t x31 = (x21 + ((uint128_t)0x1b * x29));
- uint64_t x32 = (uint64_t) (x31 >> 0x3a);
- uint64_t x33 = ((uint64_t)x31 & 0x3ffffffffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x39);
- uint64_t x36 = (x34 & 0x1ffffffffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e230m27_4limbs/femulDisplay.v b/src/Specific/solinas64_2e230m27_4limbs/femulDisplay.v
deleted file mode 100644
index 5325cbe45..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e230m27_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e230m27_4limbs/fesquare.c b/src/Specific/solinas64_2e230m27_4limbs/fesquare.c
deleted file mode 100644
index daf47328b..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x1b * (0x2 * ((uint128_t)x5 * x5))));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1b * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0x1b * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- { uint128_t x11 = (x10 >> 0x3a);
- { uint64_t x12 = ((uint64_t)x10 & 0x3ffffffffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint128_t x14 = (x13 >> 0x39);
- { uint64_t x15 = ((uint64_t)x13 & 0x1ffffffffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint128_t x17 = (x16 >> 0x3a);
- { uint64_t x18 = ((uint64_t)x16 & 0x3ffffffffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint64_t x20 = (uint64_t) (x19 >> 0x39);
- { uint64_t x21 = ((uint64_t)x19 & 0x1ffffffffffffff);
- { uint128_t x22 = (x12 + ((uint128_t)0x1b * x20));
- { uint64_t x23 = (uint64_t) (x22 >> 0x3a);
- { uint64_t x24 = ((uint64_t)x22 & 0x3ffffffffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x39);
- { uint64_t x27 = (x25 & 0x1ffffffffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e230m27_4limbs/fesquare.v b/src/Specific/solinas64_2e230m27_4limbs/fesquare.v
deleted file mode 100644
index 7fde088c1..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e230m27_4limbs.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/solinas64_2e230m27_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e230m27_4limbs/fesquareDisplay.log
deleted file mode 100644
index 936d27885..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x1b * (0x2 * ((uint128_t)x5 * x5))));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1b * (((uint128_t)x6 * x5) + ((uint128_t)x5 * x6))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0x1b * ((0x2 * ((uint128_t)x4 * x5)) + (((uint128_t)x6 * x6) + (0x2 * ((uint128_t)x5 * x4))))));
- uint128_t x11 = (x10 >> 0x3a);
- uint64_t x12 = ((uint64_t)x10 & 0x3ffffffffffffff);
- uint128_t x13 = (x11 + x9);
- uint128_t x14 = (x13 >> 0x39);
- uint64_t x15 = ((uint64_t)x13 & 0x1ffffffffffffff);
- uint128_t x16 = (x14 + x8);
- uint128_t x17 = (x16 >> 0x3a);
- uint64_t x18 = ((uint64_t)x16 & 0x3ffffffffffffff);
- uint128_t x19 = (x17 + x7);
- uint64_t x20 = (uint64_t) (x19 >> 0x39);
- uint64_t x21 = ((uint64_t)x19 & 0x1ffffffffffffff);
- uint128_t x22 = (x12 + ((uint128_t)0x1b * x20));
- uint64_t x23 = (uint64_t) (x22 >> 0x3a);
- uint64_t x24 = ((uint64_t)x22 & 0x3ffffffffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x39);
- uint64_t x27 = (x25 & 0x1ffffffffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e230m27_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e230m27_4limbs/fesquareDisplay.v
deleted file mode 100644
index 79abb33d5..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e230m27_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e230m27_4limbs/fesub.c b/src/Specific/solinas64_2e230m27_4limbs/fesub.c
deleted file mode 100644
index babe8ab41..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0x7ffffffffffffca + x5) - x11);
- out[1] = ((0x3fffffffffffffe + x7) - x13);
- out[2] = ((0x7fffffffffffffe + x9) - x15);
- out[3] = ((0x3fffffffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e230m27_4limbs/fesub.v b/src/Specific/solinas64_2e230m27_4limbs/fesub.v
deleted file mode 100644
index 6d078a910..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e230m27_4limbs.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/solinas64_2e230m27_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e230m27_4limbs/fesubDisplay.log
deleted file mode 100644
index db7ef6c5d..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0x3fffffffffffffe + x8) - x14), ((0x7fffffffffffffe + x9) - x15), ((0x3fffffffffffffe + x7) - x13), ((0x7ffffffffffffca + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e230m27_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e230m27_4limbs/fesubDisplay.v
deleted file mode 100644
index e1cc9a650..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e230m27_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e230m27_4limbs/freeze.c b/src/Specific/solinas64_2e230m27_4limbs/freeze.c
deleted file mode 100644
index 038500201..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffffffe5);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x1ffffffffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x3ffffffffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x1ffffffffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0x3ffffffffffffe5);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0x1ffffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0x3ffffffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x1ffffffffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e230m27_4limbs/freeze.v b/src/Specific/solinas64_2e230m27_4limbs/freeze.v
deleted file mode 100644
index e2779468e..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e230m27_4limbs.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/solinas64_2e230m27_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e230m27_4limbs/freezeDisplay.log
deleted file mode 100644
index 11aac547b..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffffffe5);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x1ffffffffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x3ffffffffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x1ffffffffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0x3ffffffffffffe5);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0x1ffffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0x3ffffffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x1ffffffffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e230m27_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e230m27_4limbs/freezeDisplay.v
deleted file mode 100644
index e39e3fb1a..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e230m27_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e230m27_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e230m27_4limbs/py_interpreter.sh
deleted file mode 100755
index 37bed5d95..000000000
--- a/src/Specific/solinas64_2e230m27_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**230 - 27' -Dmodulus_bytes='57.5' -Da24='121665'
diff --git a/src/Specific/solinas64_2e230m27_5limbs/CurveParameters.v b/src/Specific/solinas64_2e230m27_5limbs/CurveParameters.v
deleted file mode 100644
index 2be1cd7c9..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^230 - 27
-Base: 46
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 46;
- bitwidth := 64;
- s := 2^230;
- c := [(1, 27)];
- carry_chains := Some [seq 0 (pred 5); [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/solinas64_2e230m27_5limbs/Synthesis.v b/src/Specific/solinas64_2e230m27_5limbs/Synthesis.v
deleted file mode 100644
index d235b9afc..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e230m27_5limbs.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/solinas64_2e230m27_5limbs/compiler.sh b/src/Specific/solinas64_2e230m27_5limbs/compiler.sh
deleted file mode 100755
index f733efd5f..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{46,46,46,46,46}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<230) - 27' "$@"
diff --git a/src/Specific/solinas64_2e230m27_5limbs/compilerxx.sh b/src/Specific/solinas64_2e230m27_5limbs/compilerxx.sh
deleted file mode 100755
index 84556e411..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{46,46,46,46,46}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe5}' -Dmodulus_bytes_val='29' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<230) - 27' "$@"
diff --git a/src/Specific/solinas64_2e230m27_5limbs/feadd.c b/src/Specific/solinas64_2e230m27_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e230m27_5limbs/feadd.v b/src/Specific/solinas64_2e230m27_5limbs/feadd.v
deleted file mode 100644
index 90d13beaa..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e230m27_5limbs.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/solinas64_2e230m27_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e230m27_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e230m27_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e230m27_5limbs/feaddDisplay.v
deleted file mode 100644
index d822a94c5..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e230m27_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e230m27_5limbs/fecarry.v b/src/Specific/solinas64_2e230m27_5limbs/fecarry.v
deleted file mode 100644
index 1b2c98119..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e230m27_5limbs.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/solinas64_2e230m27_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e230m27_5limbs/fecarryDisplay.v
deleted file mode 100644
index f2bcb4ade..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e230m27_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e230m27_5limbs/femul.c b/src/Specific/solinas64_2e230m27_5limbs/femul.c
deleted file mode 100644
index 83cccf394..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint128_t x20 = (((uint128_t)x5 * x18) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + (((uint128_t)x11 * x15) + ((uint128_t)x10 * x13)))));
- { uint128_t x21 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + (((uint128_t)x9 * x15) + ((uint128_t)x11 * x13)))) + (0x1b * ((uint128_t)x10 * x18)));
- { uint128_t x22 = ((((uint128_t)x5 * x17) + (((uint128_t)x7 * x15) + ((uint128_t)x9 * x13))) + (0x1b * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- { uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x1b * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- { uint128_t x24 = (((uint128_t)x5 * x13) + (0x1b * (((uint128_t)x7 * x18) + (((uint128_t)x9 * x19) + (((uint128_t)x11 * x17) + ((uint128_t)x10 * x15))))));
- { uint64_t x25 = (uint64_t) (x24 >> 0x2e);
- { uint64_t x26 = ((uint64_t)x24 & 0x3fffffffffff);
- { uint128_t x27 = (x25 + x23);
- { uint64_t x28 = (uint64_t) (x27 >> 0x2e);
- { uint64_t x29 = ((uint64_t)x27 & 0x3fffffffffff);
- { uint128_t x30 = (x28 + x22);
- { uint64_t x31 = (uint64_t) (x30 >> 0x2e);
- { uint64_t x32 = ((uint64_t)x30 & 0x3fffffffffff);
- { uint128_t x33 = (x31 + x21);
- { uint64_t x34 = (uint64_t) (x33 >> 0x2e);
- { uint64_t x35 = ((uint64_t)x33 & 0x3fffffffffff);
- { uint128_t x36 = (x34 + x20);
- { uint64_t x37 = (uint64_t) (x36 >> 0x2e);
- { uint64_t x38 = ((uint64_t)x36 & 0x3fffffffffff);
- { uint64_t x39 = (x26 + (0x1b * x37));
- { uint64_t x40 = (x39 >> 0x2e);
- { uint64_t x41 = (x39 & 0x3fffffffffff);
- { uint64_t x42 = (x40 + x29);
- { uint64_t x43 = (x42 >> 0x2e);
- { uint64_t x44 = (x42 & 0x3fffffffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e230m27_5limbs/femul.v b/src/Specific/solinas64_2e230m27_5limbs/femul.v
deleted file mode 100644
index c62e464f5..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e230m27_5limbs.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/solinas64_2e230m27_5limbs/femulDisplay.log b/src/Specific/solinas64_2e230m27_5limbs/femulDisplay.log
deleted file mode 100644
index 562ee6720..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = (((uint128_t)x5 * x18) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + (((uint128_t)x11 * x15) + ((uint128_t)x10 * x13)))));
- uint128_t x21 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + (((uint128_t)x9 * x15) + ((uint128_t)x11 * x13)))) + (0x1b * ((uint128_t)x10 * x18)));
- uint128_t x22 = ((((uint128_t)x5 * x17) + (((uint128_t)x7 * x15) + ((uint128_t)x9 * x13))) + (0x1b * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x1b * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- uint128_t x24 = (((uint128_t)x5 * x13) + (0x1b * (((uint128_t)x7 * x18) + (((uint128_t)x9 * x19) + (((uint128_t)x11 * x17) + ((uint128_t)x10 * x15))))));
- uint64_t x25 = (uint64_t) (x24 >> 0x2e);
- uint64_t x26 = ((uint64_t)x24 & 0x3fffffffffff);
- uint128_t x27 = (x25 + x23);
- uint64_t x28 = (uint64_t) (x27 >> 0x2e);
- uint64_t x29 = ((uint64_t)x27 & 0x3fffffffffff);
- uint128_t x30 = (x28 + x22);
- uint64_t x31 = (uint64_t) (x30 >> 0x2e);
- uint64_t x32 = ((uint64_t)x30 & 0x3fffffffffff);
- uint128_t x33 = (x31 + x21);
- uint64_t x34 = (uint64_t) (x33 >> 0x2e);
- uint64_t x35 = ((uint64_t)x33 & 0x3fffffffffff);
- uint128_t x36 = (x34 + x20);
- uint64_t x37 = (uint64_t) (x36 >> 0x2e);
- uint64_t x38 = ((uint64_t)x36 & 0x3fffffffffff);
- uint64_t x39 = (x26 + (0x1b * x37));
- uint64_t x40 = (x39 >> 0x2e);
- uint64_t x41 = (x39 & 0x3fffffffffff);
- uint64_t x42 = (x40 + x29);
- uint64_t x43 = (x42 >> 0x2e);
- uint64_t x44 = (x42 & 0x3fffffffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e230m27_5limbs/femulDisplay.v b/src/Specific/solinas64_2e230m27_5limbs/femulDisplay.v
deleted file mode 100644
index 8ac906749..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e230m27_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e230m27_5limbs/fesquare.c b/src/Specific/solinas64_2e230m27_5limbs/fesquare.c
deleted file mode 100644
index d790c6c5a..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x9 = (((uint128_t)x2 * x7) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x7 * x2)))));
- { uint128_t x10 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x1b * ((uint128_t)x7 * x7)));
- { uint128_t x11 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x1b * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- { uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1b * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- { uint128_t x13 = (((uint128_t)x2 * x2) + (0x1b * (((uint128_t)x4 * x7) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((uint128_t)x7 * x4))))));
- { uint64_t x14 = (uint64_t) (x13 >> 0x2e);
- { uint64_t x15 = ((uint64_t)x13 & 0x3fffffffffff);
- { uint128_t x16 = (x14 + x12);
- { uint64_t x17 = (uint64_t) (x16 >> 0x2e);
- { uint64_t x18 = ((uint64_t)x16 & 0x3fffffffffff);
- { uint128_t x19 = (x17 + x11);
- { uint64_t x20 = (uint64_t) (x19 >> 0x2e);
- { uint64_t x21 = ((uint64_t)x19 & 0x3fffffffffff);
- { uint128_t x22 = (x20 + x10);
- { uint64_t x23 = (uint64_t) (x22 >> 0x2e);
- { uint64_t x24 = ((uint64_t)x22 & 0x3fffffffffff);
- { uint128_t x25 = (x23 + x9);
- { uint64_t x26 = (uint64_t) (x25 >> 0x2e);
- { uint64_t x27 = ((uint64_t)x25 & 0x3fffffffffff);
- { uint64_t x28 = (x15 + (0x1b * x26));
- { uint64_t x29 = (x28 >> 0x2e);
- { uint64_t x30 = (x28 & 0x3fffffffffff);
- { uint64_t x31 = (x29 + x18);
- { uint64_t x32 = (x31 >> 0x2e);
- { uint64_t x33 = (x31 & 0x3fffffffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e230m27_5limbs/fesquare.v b/src/Specific/solinas64_2e230m27_5limbs/fesquare.v
deleted file mode 100644
index 95b53fd0e..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e230m27_5limbs.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/solinas64_2e230m27_5limbs/fesquareDisplay.log b/src/Specific/solinas64_2e230m27_5limbs/fesquareDisplay.log
deleted file mode 100644
index 68a37579d..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint128_t x9 = (((uint128_t)x2 * x7) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x7 * x2)))));
- uint128_t x10 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x1b * ((uint128_t)x7 * x7)));
- uint128_t x11 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x1b * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1b * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- uint128_t x13 = (((uint128_t)x2 * x2) + (0x1b * (((uint128_t)x4 * x7) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((uint128_t)x7 * x4))))));
- uint64_t x14 = (uint64_t) (x13 >> 0x2e);
- uint64_t x15 = ((uint64_t)x13 & 0x3fffffffffff);
- uint128_t x16 = (x14 + x12);
- uint64_t x17 = (uint64_t) (x16 >> 0x2e);
- uint64_t x18 = ((uint64_t)x16 & 0x3fffffffffff);
- uint128_t x19 = (x17 + x11);
- uint64_t x20 = (uint64_t) (x19 >> 0x2e);
- uint64_t x21 = ((uint64_t)x19 & 0x3fffffffffff);
- uint128_t x22 = (x20 + x10);
- uint64_t x23 = (uint64_t) (x22 >> 0x2e);
- uint64_t x24 = ((uint64_t)x22 & 0x3fffffffffff);
- uint128_t x25 = (x23 + x9);
- uint64_t x26 = (uint64_t) (x25 >> 0x2e);
- uint64_t x27 = ((uint64_t)x25 & 0x3fffffffffff);
- uint64_t x28 = (x15 + (0x1b * x26));
- uint64_t x29 = (x28 >> 0x2e);
- uint64_t x30 = (x28 & 0x3fffffffffff);
- uint64_t x31 = (x29 + x18);
- uint64_t x32 = (x31 >> 0x2e);
- uint64_t x33 = (x31 & 0x3fffffffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e230m27_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e230m27_5limbs/fesquareDisplay.v
deleted file mode 100644
index 7bae43e03..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e230m27_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e230m27_5limbs/fesub.c b/src/Specific/solinas64_2e230m27_5limbs/fesub.c
deleted file mode 100644
index 134570c81..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0x7fffffffffca + x5) - x13);
- out[1] = ((0x7ffffffffffe + x7) - x15);
- out[2] = ((0x7ffffffffffe + x9) - x17);
- out[3] = ((0x7ffffffffffe + x11) - x19);
- out[4] = ((0x7ffffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e230m27_5limbs/fesub.v b/src/Specific/solinas64_2e230m27_5limbs/fesub.v
deleted file mode 100644
index 14ac75d88..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e230m27_5limbs.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/solinas64_2e230m27_5limbs/fesubDisplay.log b/src/Specific/solinas64_2e230m27_5limbs/fesubDisplay.log
deleted file mode 100644
index 9a32db234..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0x7ffffffffffe + x10) - x18), ((0x7ffffffffffe + x11) - x19), ((0x7ffffffffffe + x9) - x17), ((0x7ffffffffffe + x7) - x15), ((0x7fffffffffca + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e230m27_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e230m27_5limbs/fesubDisplay.v
deleted file mode 100644
index 56830cecb..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e230m27_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e230m27_5limbs/freeze.c b/src/Specific/solinas64_2e230m27_5limbs/freeze.c
deleted file mode 100644
index 9196af403..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffffe5);
- { uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x3fffffffffff);
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x3fffffffffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x3fffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x3fffffffffff);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0x3fffffffffe5);
- { uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint64_t x29 = (x24 & 0x3fffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint64_t x33 = (x24 & 0x3fffffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint64_t x37 = (x24 & 0x3fffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint64_t x41 = (x24 & 0x3fffffffffff);
- { uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e230m27_5limbs/freeze.v b/src/Specific/solinas64_2e230m27_5limbs/freeze.v
deleted file mode 100644
index 1a90105f5..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e230m27_5limbs.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/solinas64_2e230m27_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e230m27_5limbs/freezeDisplay.log
deleted file mode 100644
index ccfd7f7d9..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffffe5);
- uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x3fffffffffff);
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x3fffffffffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x3fffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x3fffffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0x3fffffffffe5);
- uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint64_t x29 = (x24 & 0x3fffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint64_t x33 = (x24 & 0x3fffffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint64_t x37 = (x24 & 0x3fffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint64_t x41 = (x24 & 0x3fffffffffff);
- uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e230m27_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e230m27_5limbs/freezeDisplay.v
deleted file mode 100644
index 25a7e0dbe..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e230m27_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e230m27_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e230m27_5limbs/py_interpreter.sh
deleted file mode 100755
index e48729398..000000000
--- a/src/Specific/solinas64_2e230m27_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**230 - 27' -Dmodulus_bytes='46' -Da24='121665'
diff --git a/src/Specific/solinas64_2e235m15_4limbs/CurveParameters.v b/src/Specific/solinas64_2e235m15_4limbs/CurveParameters.v
deleted file mode 100644
index 49818038a..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^235 - 15
-Base: 58.75
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 4%nat;
- base := 58 + 3/4;
- bitwidth := 64;
- s := 2^235;
- c := [(1, 15)];
- carry_chains := Some [seq 0 (pred 4); [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/solinas64_2e235m15_4limbs/Synthesis.v b/src/Specific/solinas64_2e235m15_4limbs/Synthesis.v
deleted file mode 100644
index f7aace8e6..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e235m15_4limbs.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/solinas64_2e235m15_4limbs/compiler.sh b/src/Specific/solinas64_2e235m15_4limbs/compiler.sh
deleted file mode 100755
index 325ef80b8..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{59,59,59,58}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='30' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<235) - 15' "$@"
diff --git a/src/Specific/solinas64_2e235m15_4limbs/compilerxx.sh b/src/Specific/solinas64_2e235m15_4limbs/compilerxx.sh
deleted file mode 100755
index 14f0c3eeb..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{59,59,59,58}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='30' -Dmodulus_limbs='4' -Dq_mpz='(1_mpz<<235) - 15' "$@"
diff --git a/src/Specific/solinas64_2e235m15_4limbs/feadd.c b/src/Specific/solinas64_2e235m15_4limbs/feadd.c
deleted file mode 100644
index d304c298a..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/feadd.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void feadd(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = (x5 + x11);
- out[1] = (x7 + x13);
- out[2] = (x9 + x15);
- out[3] = (x8 + x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e235m15_4limbs/feadd.v b/src/Specific/solinas64_2e235m15_4limbs/feadd.v
deleted file mode 100644
index 6cbc1f411..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e235m15_4limbs.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/solinas64_2e235m15_4limbs/feaddDisplay.log b/src/Specific/solinas64_2e235m15_4limbs/feaddDisplay.log
deleted file mode 100644
index d42ef91c3..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- ((x8 + x14), (x9 + x15), (x7 + x13), (x5 + x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e235m15_4limbs/feaddDisplay.v b/src/Specific/solinas64_2e235m15_4limbs/feaddDisplay.v
deleted file mode 100644
index c5e46e55b..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e235m15_4limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e235m15_4limbs/fecarry.v b/src/Specific/solinas64_2e235m15_4limbs/fecarry.v
deleted file mode 100644
index 10c54cde1..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e235m15_4limbs.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/solinas64_2e235m15_4limbs/fecarryDisplay.v b/src/Specific/solinas64_2e235m15_4limbs/fecarryDisplay.v
deleted file mode 100644
index e3dff27bf..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e235m15_4limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e235m15_4limbs/femul.c b/src/Specific/solinas64_2e235m15_4limbs/femul.c
deleted file mode 100644
index db014b1de..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/femul.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void femul(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- { uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- { uint128_t x17 = ((((uint128_t)x5 * x15) + (((uint128_t)x7 * x13) + ((uint128_t)x9 * x11))) + (0xf * (0x2 * ((uint128_t)x8 * x14))));
- { uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0xf * ((0x2 * ((uint128_t)x9 * x14)) + (0x2 * ((uint128_t)x8 * x15)))));
- { uint128_t x19 = (((uint128_t)x5 * x11) + (0xf * ((0x2 * ((uint128_t)x7 * x14)) + ((0x2 * ((uint128_t)x9 * x15)) + (0x2 * ((uint128_t)x8 * x13))))));
- { uint128_t x20 = (x19 >> 0x3b);
- { uint64_t x21 = ((uint64_t)x19 & 0x7ffffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint128_t x23 = (x22 >> 0x3b);
- { uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint128_t x26 = (x25 >> 0x3b);
- { uint64_t x27 = ((uint64_t)x25 & 0x7ffffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint128_t x29 = (x28 >> 0x3a);
- { uint64_t x30 = ((uint64_t)x28 & 0x3ffffffffffffff);
- { uint128_t x31 = (x21 + (0xf * x29));
- { uint64_t x32 = (uint64_t) (x31 >> 0x3b);
- { uint64_t x33 = ((uint64_t)x31 & 0x7ffffffffffffff);
- { uint64_t x34 = (x32 + x24);
- { uint64_t x35 = (x34 >> 0x3b);
- { uint64_t x36 = (x34 & 0x7ffffffffffffff);
- out[0] = x33;
- out[1] = x36;
- out[2] = (x35 + x27);
- out[3] = x30;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e235m15_4limbs/femul.v b/src/Specific/solinas64_2e235m15_4limbs/femul.v
deleted file mode 100644
index f17f8cd98..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e235m15_4limbs.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/solinas64_2e235m15_4limbs/femulDisplay.log b/src/Specific/solinas64_2e235m15_4limbs/femulDisplay.log
deleted file mode 100644
index 1a008e475..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/femulDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- uint128_t x16 = (((uint128_t)x5 * x14) + (((uint128_t)x7 * x15) + (((uint128_t)x9 * x13) + ((uint128_t)x8 * x11))));
- uint128_t x17 = ((((uint128_t)x5 * x15) + (((uint128_t)x7 * x13) + ((uint128_t)x9 * x11))) + (0xf * (0x2 * ((uint128_t)x8 * x14))));
- uint128_t x18 = ((((uint128_t)x5 * x13) + ((uint128_t)x7 * x11)) + (0xf * ((0x2 * ((uint128_t)x9 * x14)) + (0x2 * ((uint128_t)x8 * x15)))));
- uint128_t x19 = (((uint128_t)x5 * x11) + (0xf * ((0x2 * ((uint128_t)x7 * x14)) + ((0x2 * ((uint128_t)x9 * x15)) + (0x2 * ((uint128_t)x8 * x13))))));
- uint128_t x20 = (x19 >> 0x3b);
- uint64_t x21 = ((uint64_t)x19 & 0x7ffffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint128_t x23 = (x22 >> 0x3b);
- uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint128_t x26 = (x25 >> 0x3b);
- uint64_t x27 = ((uint64_t)x25 & 0x7ffffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint128_t x29 = (x28 >> 0x3a);
- uint64_t x30 = ((uint64_t)x28 & 0x3ffffffffffffff);
- uint128_t x31 = (x21 + (0xf * x29));
- uint64_t x32 = (uint64_t) (x31 >> 0x3b);
- uint64_t x33 = ((uint64_t)x31 & 0x7ffffffffffffff);
- uint64_t x34 = (x32 + x24);
- uint64_t x35 = (x34 >> 0x3b);
- uint64_t x36 = (x34 & 0x7ffffffffffffff);
- return (Return x30, (x35 + x27), Return x36, Return x33))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e235m15_4limbs/femulDisplay.v b/src/Specific/solinas64_2e235m15_4limbs/femulDisplay.v
deleted file mode 100644
index bae6d7461..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e235m15_4limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e235m15_4limbs/fesquare.c b/src/Specific/solinas64_2e235m15_4limbs/fesquare.c
deleted file mode 100644
index 678e02526..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/fesquare.c
+++ /dev/null
@@ -1,32 +0,0 @@
-static void fesquare(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- { uint128_t x8 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0xf * (0x2 * ((uint128_t)x5 * x5))));
- { uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xf * ((0x2 * ((uint128_t)x6 * x5)) + (0x2 * ((uint128_t)x5 * x6)))));
- { uint128_t x10 = (((uint128_t)x2 * x2) + (0xf * ((0x2 * ((uint128_t)x4 * x5)) + ((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x5 * x4))))));
- { uint128_t x11 = (x10 >> 0x3b);
- { uint64_t x12 = ((uint64_t)x10 & 0x7ffffffffffffff);
- { uint128_t x13 = (x11 + x9);
- { uint128_t x14 = (x13 >> 0x3b);
- { uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffffffff);
- { uint128_t x16 = (x14 + x8);
- { uint128_t x17 = (x16 >> 0x3b);
- { uint64_t x18 = ((uint64_t)x16 & 0x7ffffffffffffff);
- { uint128_t x19 = (x17 + x7);
- { uint128_t x20 = (x19 >> 0x3a);
- { uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffffffff);
- { uint128_t x22 = (x12 + (0xf * x20));
- { uint64_t x23 = (uint64_t) (x22 >> 0x3b);
- { uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffffffff);
- { uint64_t x25 = (x23 + x15);
- { uint64_t x26 = (x25 >> 0x3b);
- { uint64_t x27 = (x25 & 0x7ffffffffffffff);
- out[0] = x24;
- out[1] = x27;
- out[2] = (x26 + x18);
- out[3] = x21;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e235m15_4limbs/fesquare.v b/src/Specific/solinas64_2e235m15_4limbs/fesquare.v
deleted file mode 100644
index a41176179..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e235m15_4limbs.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/solinas64_2e235m15_4limbs/fesquareDisplay.log b/src/Specific/solinas64_2e235m15_4limbs/fesquareDisplay.log
deleted file mode 100644
index 53b007d1b..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,28 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint128_t x7 = (((uint128_t)x2 * x5) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x5 * x2))));
- uint128_t x8 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0xf * (0x2 * ((uint128_t)x5 * x5))));
- uint128_t x9 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xf * ((0x2 * ((uint128_t)x6 * x5)) + (0x2 * ((uint128_t)x5 * x6)))));
- uint128_t x10 = (((uint128_t)x2 * x2) + (0xf * ((0x2 * ((uint128_t)x4 * x5)) + ((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x5 * x4))))));
- uint128_t x11 = (x10 >> 0x3b);
- uint64_t x12 = ((uint64_t)x10 & 0x7ffffffffffffff);
- uint128_t x13 = (x11 + x9);
- uint128_t x14 = (x13 >> 0x3b);
- uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffffffff);
- uint128_t x16 = (x14 + x8);
- uint128_t x17 = (x16 >> 0x3b);
- uint64_t x18 = ((uint64_t)x16 & 0x7ffffffffffffff);
- uint128_t x19 = (x17 + x7);
- uint128_t x20 = (x19 >> 0x3a);
- uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffffffff);
- uint128_t x22 = (x12 + (0xf * x20));
- uint64_t x23 = (uint64_t) (x22 >> 0x3b);
- uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffffffff);
- uint64_t x25 = (x23 + x15);
- uint64_t x26 = (x25 >> 0x3b);
- uint64_t x27 = (x25 & 0x7ffffffffffffff);
- return (Return x21, (x26 + x18), Return x27, Return x24))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e235m15_4limbs/fesquareDisplay.v b/src/Specific/solinas64_2e235m15_4limbs/fesquareDisplay.v
deleted file mode 100644
index cb744ae1e..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e235m15_4limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e235m15_4limbs/fesub.c b/src/Specific/solinas64_2e235m15_4limbs/fesub.c
deleted file mode 100644
index 6a22e87ef..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/fesub.c
+++ /dev/null
@@ -1,15 +0,0 @@
-static void fesub(uint64_t out[4], const uint64_t in1[4], const uint64_t in2[4]) {
- { const uint64_t x8 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x14 = in2[3];
- { const uint64_t x15 = in2[2];
- { const uint64_t x13 = in2[1];
- { const uint64_t x11 = in2[0];
- out[0] = ((0xfffffffffffffe2 + x5) - x11);
- out[1] = ((0xffffffffffffffe + x7) - x13);
- out[2] = ((0xffffffffffffffe + x9) - x15);
- out[3] = ((0x7fffffffffffffe + x8) - x14);
- }}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e235m15_4limbs/fesub.v b/src/Specific/solinas64_2e235m15_4limbs/fesub.v
deleted file mode 100644
index 7e5f331f6..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e235m15_4limbs.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/solinas64_2e235m15_4limbs/fesubDisplay.log b/src/Specific/solinas64_2e235m15_4limbs/fesubDisplay.log
deleted file mode 100644
index 46f99dab1..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x8, x9, x7, x5, (x14, x15, x13, x11))%core,
- (((0x7fffffffffffffe + x8) - x14), ((0xffffffffffffffe + x9) - x15), ((0xffffffffffffffe + x7) - x13), ((0xfffffffffffffe2 + x5) - x11)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e235m15_4limbs/fesubDisplay.v b/src/Specific/solinas64_2e235m15_4limbs/fesubDisplay.v
deleted file mode 100644
index 5327423f0..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e235m15_4limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e235m15_4limbs/freeze.c b/src/Specific/solinas64_2e235m15_4limbs/freeze.c
deleted file mode 100644
index 9d95407c0..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/freeze.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void freeze(uint64_t out[4], const uint64_t in1[4]) {
- { const uint64_t x5 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffffff1);
- { uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x7ffffffffffffff);
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x7ffffffffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x3ffffffffffffff);
- { uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- { uint64_t x20 = (x19 & 0x7fffffffffffff1);
- { uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- { uint64_t x24 = (x19 & 0x7ffffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- { uint64_t x28 = (x19 & 0x7ffffffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- { uint64_t x32 = (x19 & 0x3ffffffffffffff);
- { uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- out[0] = x22;
- out[1] = x26;
- out[2] = x30;
- out[3] = x34;
- }}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e235m15_4limbs/freeze.v b/src/Specific/solinas64_2e235m15_4limbs/freeze.v
deleted file mode 100644
index f9228b6e7..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e235m15_4limbs.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/solinas64_2e235m15_4limbs/freezeDisplay.log b/src/Specific/solinas64_2e235m15_4limbs/freezeDisplay.log
deleted file mode 100644
index b26bb700c..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/freezeDisplay.log
+++ /dev/null
@@ -1,20 +0,0 @@
-λ x : word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x5, x6, x4, x2)%core,
- uint64_t x8, uint8_t x9 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffffff1);
- uint64_t x11, uint8_t x12 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x9, Return x4, 0x7ffffffffffffff);
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x12, Return x6, 0x7ffffffffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x5, 0x3ffffffffffffff);
- uint64_t x19 = cmovznz64(x18, 0x0, 0xffffffffffffffffL);
- uint64_t x20 = (x19 & 0x7fffffffffffff1);
- uint64_t x22, uint8_t x23 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x8, Return x20);
- uint64_t x24 = (x19 & 0x7ffffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x11, Return x24);
- uint64_t x28 = (x19 & 0x7ffffffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x14, Return x28);
- uint64_t x32 = (x19 & 0x3ffffffffffffff);
- uint64_t x34, uint8_t _ = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x17, Return x32);
- (Return x34, Return x30, Return x26, Return x22))
-x
- : word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e235m15_4limbs/freezeDisplay.v b/src/Specific/solinas64_2e235m15_4limbs/freezeDisplay.v
deleted file mode 100644
index 852b3470a..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e235m15_4limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e235m15_4limbs/py_interpreter.sh b/src/Specific/solinas64_2e235m15_4limbs/py_interpreter.sh
deleted file mode 100755
index c2a317d76..000000000
--- a/src/Specific/solinas64_2e235m15_4limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**235 - 15' -Dmodulus_bytes='58.75' -Da24='121665'
diff --git a/src/Specific/solinas64_2e235m15_5limbs/CurveParameters.v b/src/Specific/solinas64_2e235m15_5limbs/CurveParameters.v
deleted file mode 100644
index 80a94df58..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^235 - 15
-Base: 47
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 47;
- bitwidth := 64;
- s := 2^235;
- c := [(1, 15)];
- carry_chains := Some [seq 0 (pred 5); [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/solinas64_2e235m15_5limbs/Synthesis.v b/src/Specific/solinas64_2e235m15_5limbs/Synthesis.v
deleted file mode 100644
index 9f5f53f5a..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e235m15_5limbs.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/solinas64_2e235m15_5limbs/compiler.sh b/src/Specific/solinas64_2e235m15_5limbs/compiler.sh
deleted file mode 100755
index ac5aab558..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,47,47,47,47}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='30' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<235) - 15' "$@"
diff --git a/src/Specific/solinas64_2e235m15_5limbs/compilerxx.sh b/src/Specific/solinas64_2e235m15_5limbs/compilerxx.sh
deleted file mode 100755
index ccfa778e7..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,47,47,47,47}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='30' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<235) - 15' "$@"
diff --git a/src/Specific/solinas64_2e235m15_5limbs/feadd.c b/src/Specific/solinas64_2e235m15_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e235m15_5limbs/feadd.v b/src/Specific/solinas64_2e235m15_5limbs/feadd.v
deleted file mode 100644
index fcc1f2e19..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e235m15_5limbs.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/solinas64_2e235m15_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e235m15_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e235m15_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e235m15_5limbs/feaddDisplay.v
deleted file mode 100644
index 915c837e1..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e235m15_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e235m15_5limbs/fecarry.v b/src/Specific/solinas64_2e235m15_5limbs/fecarry.v
deleted file mode 100644
index 9141898c7..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e235m15_5limbs.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/solinas64_2e235m15_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e235m15_5limbs/fecarryDisplay.v
deleted file mode 100644
index 60778982c..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e235m15_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e235m15_5limbs/femul.c b/src/Specific/solinas64_2e235m15_5limbs/femul.c
deleted file mode 100644
index 0dcf869f7..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint128_t x20 = (((uint128_t)x5 * x18) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + (((uint128_t)x11 * x15) + ((uint128_t)x10 * x13)))));
- { uint128_t x21 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + (((uint128_t)x9 * x15) + ((uint128_t)x11 * x13)))) + (0xf * ((uint128_t)x10 * x18)));
- { uint128_t x22 = ((((uint128_t)x5 * x17) + (((uint128_t)x7 * x15) + ((uint128_t)x9 * x13))) + (0xf * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- { uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0xf * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- { uint128_t x24 = (((uint128_t)x5 * x13) + (0xf * (((uint128_t)x7 * x18) + (((uint128_t)x9 * x19) + (((uint128_t)x11 * x17) + ((uint128_t)x10 * x15))))));
- { uint64_t x25 = (uint64_t) (x24 >> 0x2f);
- { uint64_t x26 = ((uint64_t)x24 & 0x7fffffffffff);
- { uint128_t x27 = (x25 + x23);
- { uint64_t x28 = (uint64_t) (x27 >> 0x2f);
- { uint64_t x29 = ((uint64_t)x27 & 0x7fffffffffff);
- { uint128_t x30 = (x28 + x22);
- { uint64_t x31 = (uint64_t) (x30 >> 0x2f);
- { uint64_t x32 = ((uint64_t)x30 & 0x7fffffffffff);
- { uint128_t x33 = (x31 + x21);
- { uint64_t x34 = (uint64_t) (x33 >> 0x2f);
- { uint64_t x35 = ((uint64_t)x33 & 0x7fffffffffff);
- { uint128_t x36 = (x34 + x20);
- { uint64_t x37 = (uint64_t) (x36 >> 0x2f);
- { uint64_t x38 = ((uint64_t)x36 & 0x7fffffffffff);
- { uint64_t x39 = (x26 + (0xf * x37));
- { uint64_t x40 = (x39 >> 0x2f);
- { uint64_t x41 = (x39 & 0x7fffffffffff);
- { uint64_t x42 = (x40 + x29);
- { uint64_t x43 = (x42 >> 0x2f);
- { uint64_t x44 = (x42 & 0x7fffffffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e235m15_5limbs/femul.v b/src/Specific/solinas64_2e235m15_5limbs/femul.v
deleted file mode 100644
index 9383802c7..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e235m15_5limbs.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/solinas64_2e235m15_5limbs/femulDisplay.log b/src/Specific/solinas64_2e235m15_5limbs/femulDisplay.log
deleted file mode 100644
index 0565fc7d6..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = (((uint128_t)x5 * x18) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + (((uint128_t)x11 * x15) + ((uint128_t)x10 * x13)))));
- uint128_t x21 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + (((uint128_t)x9 * x15) + ((uint128_t)x11 * x13)))) + (0xf * ((uint128_t)x10 * x18)));
- uint128_t x22 = ((((uint128_t)x5 * x17) + (((uint128_t)x7 * x15) + ((uint128_t)x9 * x13))) + (0xf * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0xf * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- uint128_t x24 = (((uint128_t)x5 * x13) + (0xf * (((uint128_t)x7 * x18) + (((uint128_t)x9 * x19) + (((uint128_t)x11 * x17) + ((uint128_t)x10 * x15))))));
- uint64_t x25 = (uint64_t) (x24 >> 0x2f);
- uint64_t x26 = ((uint64_t)x24 & 0x7fffffffffff);
- uint128_t x27 = (x25 + x23);
- uint64_t x28 = (uint64_t) (x27 >> 0x2f);
- uint64_t x29 = ((uint64_t)x27 & 0x7fffffffffff);
- uint128_t x30 = (x28 + x22);
- uint64_t x31 = (uint64_t) (x30 >> 0x2f);
- uint64_t x32 = ((uint64_t)x30 & 0x7fffffffffff);
- uint128_t x33 = (x31 + x21);
- uint64_t x34 = (uint64_t) (x33 >> 0x2f);
- uint64_t x35 = ((uint64_t)x33 & 0x7fffffffffff);
- uint128_t x36 = (x34 + x20);
- uint64_t x37 = (uint64_t) (x36 >> 0x2f);
- uint64_t x38 = ((uint64_t)x36 & 0x7fffffffffff);
- uint64_t x39 = (x26 + (0xf * x37));
- uint64_t x40 = (x39 >> 0x2f);
- uint64_t x41 = (x39 & 0x7fffffffffff);
- uint64_t x42 = (x40 + x29);
- uint64_t x43 = (x42 >> 0x2f);
- uint64_t x44 = (x42 & 0x7fffffffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e235m15_5limbs/femulDisplay.v b/src/Specific/solinas64_2e235m15_5limbs/femulDisplay.v
deleted file mode 100644
index bd5e72d25..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e235m15_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e235m15_5limbs/fesquare.c b/src/Specific/solinas64_2e235m15_5limbs/fesquare.c
deleted file mode 100644
index 20e3056c3..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x9 = (((uint128_t)x2 * x7) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x7 * x2)))));
- { uint128_t x10 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0xf * ((uint128_t)x7 * x7)));
- { uint128_t x11 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0xf * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- { uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xf * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- { uint128_t x13 = (((uint128_t)x2 * x2) + (0xf * (((uint128_t)x4 * x7) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((uint128_t)x7 * x4))))));
- { uint64_t x14 = (uint64_t) (x13 >> 0x2f);
- { uint64_t x15 = ((uint64_t)x13 & 0x7fffffffffff);
- { uint128_t x16 = (x14 + x12);
- { uint64_t x17 = (uint64_t) (x16 >> 0x2f);
- { uint64_t x18 = ((uint64_t)x16 & 0x7fffffffffff);
- { uint128_t x19 = (x17 + x11);
- { uint64_t x20 = (uint64_t) (x19 >> 0x2f);
- { uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffff);
- { uint128_t x22 = (x20 + x10);
- { uint64_t x23 = (uint64_t) (x22 >> 0x2f);
- { uint64_t x24 = ((uint64_t)x22 & 0x7fffffffffff);
- { uint128_t x25 = (x23 + x9);
- { uint64_t x26 = (uint64_t) (x25 >> 0x2f);
- { uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffff);
- { uint64_t x28 = (x15 + (0xf * x26));
- { uint64_t x29 = (x28 >> 0x2f);
- { uint64_t x30 = (x28 & 0x7fffffffffff);
- { uint64_t x31 = (x29 + x18);
- { uint64_t x32 = (x31 >> 0x2f);
- { uint64_t x33 = (x31 & 0x7fffffffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e235m15_5limbs/fesquare.v b/src/Specific/solinas64_2e235m15_5limbs/fesquare.v
deleted file mode 100644
index ce1e6e269..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e235m15_5limbs.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/solinas64_2e235m15_5limbs/fesquareDisplay.log b/src/Specific/solinas64_2e235m15_5limbs/fesquareDisplay.log
deleted file mode 100644
index f5c16047d..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint128_t x9 = (((uint128_t)x2 * x7) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x7 * x2)))));
- uint128_t x10 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0xf * ((uint128_t)x7 * x7)));
- uint128_t x11 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0xf * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xf * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- uint128_t x13 = (((uint128_t)x2 * x2) + (0xf * (((uint128_t)x4 * x7) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((uint128_t)x7 * x4))))));
- uint64_t x14 = (uint64_t) (x13 >> 0x2f);
- uint64_t x15 = ((uint64_t)x13 & 0x7fffffffffff);
- uint128_t x16 = (x14 + x12);
- uint64_t x17 = (uint64_t) (x16 >> 0x2f);
- uint64_t x18 = ((uint64_t)x16 & 0x7fffffffffff);
- uint128_t x19 = (x17 + x11);
- uint64_t x20 = (uint64_t) (x19 >> 0x2f);
- uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffff);
- uint128_t x22 = (x20 + x10);
- uint64_t x23 = (uint64_t) (x22 >> 0x2f);
- uint64_t x24 = ((uint64_t)x22 & 0x7fffffffffff);
- uint128_t x25 = (x23 + x9);
- uint64_t x26 = (uint64_t) (x25 >> 0x2f);
- uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffff);
- uint64_t x28 = (x15 + (0xf * x26));
- uint64_t x29 = (x28 >> 0x2f);
- uint64_t x30 = (x28 & 0x7fffffffffff);
- uint64_t x31 = (x29 + x18);
- uint64_t x32 = (x31 >> 0x2f);
- uint64_t x33 = (x31 & 0x7fffffffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e235m15_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e235m15_5limbs/fesquareDisplay.v
deleted file mode 100644
index 3e5ddb6c1..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e235m15_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e235m15_5limbs/fesub.c b/src/Specific/solinas64_2e235m15_5limbs/fesub.c
deleted file mode 100644
index e33d58fa4..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0xffffffffffe2 + x5) - x13);
- out[1] = ((0xfffffffffffe + x7) - x15);
- out[2] = ((0xfffffffffffe + x9) - x17);
- out[3] = ((0xfffffffffffe + x11) - x19);
- out[4] = ((0xfffffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e235m15_5limbs/fesub.v b/src/Specific/solinas64_2e235m15_5limbs/fesub.v
deleted file mode 100644
index fe871091e..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e235m15_5limbs.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/solinas64_2e235m15_5limbs/fesubDisplay.log b/src/Specific/solinas64_2e235m15_5limbs/fesubDisplay.log
deleted file mode 100644
index 9d33fa7c5..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0xfffffffffffe + x10) - x18), ((0xfffffffffffe + x11) - x19), ((0xfffffffffffe + x9) - x17), ((0xfffffffffffe + x7) - x15), ((0xffffffffffe2 + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e235m15_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e235m15_5limbs/fesubDisplay.v
deleted file mode 100644
index 30513c216..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e235m15_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e235m15_5limbs/freeze.c b/src/Specific/solinas64_2e235m15_5limbs/freeze.c
deleted file mode 100644
index db8f71551..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffff1);
- { uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x7fffffffffff);
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x7fffffffffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x7fffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x7fffffffffff);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0x7ffffffffff1);
- { uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint64_t x29 = (x24 & 0x7fffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint64_t x33 = (x24 & 0x7fffffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint64_t x37 = (x24 & 0x7fffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint64_t x41 = (x24 & 0x7fffffffffff);
- { uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e235m15_5limbs/freeze.v b/src/Specific/solinas64_2e235m15_5limbs/freeze.v
deleted file mode 100644
index 2cc999015..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e235m15_5limbs.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/solinas64_2e235m15_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e235m15_5limbs/freezeDisplay.log
deleted file mode 100644
index da977944b..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffff1);
- uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x7fffffffffff);
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x7fffffffffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x7fffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x7fffffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0x7ffffffffff1);
- uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint64_t x29 = (x24 & 0x7fffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint64_t x33 = (x24 & 0x7fffffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint64_t x37 = (x24 & 0x7fffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint64_t x41 = (x24 & 0x7fffffffffff);
- uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e235m15_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e235m15_5limbs/freezeDisplay.v
deleted file mode 100644
index 8609ad428..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e235m15_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e235m15_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e235m15_5limbs/py_interpreter.sh
deleted file mode 100755
index 5298833d2..000000000
--- a/src/Specific/solinas64_2e235m15_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**235 - 15' -Dmodulus_bytes='47' -Da24='121665'
diff --git a/src/Specific/solinas64_2e243m9_5limbs/CurveParameters.v b/src/Specific/solinas64_2e243m9_5limbs/CurveParameters.v
deleted file mode 100644
index 209fda3d3..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^243 - 9
-Base: 48.6
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 48 + 3/5;
- bitwidth := 64;
- s := 2^243;
- c := [(1, 9)];
- carry_chains := Some [seq 0 (pred 5); [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/solinas64_2e243m9_5limbs/Synthesis.v b/src/Specific/solinas64_2e243m9_5limbs/Synthesis.v
deleted file mode 100644
index ae0d9f919..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e243m9_5limbs.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/solinas64_2e243m9_5limbs/compiler.sh b/src/Specific/solinas64_2e243m9_5limbs/compiler.sh
deleted file mode 100755
index 33eb69149..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,49,48,49,48}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='31' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<243) - 9' "$@"
diff --git a/src/Specific/solinas64_2e243m9_5limbs/compilerxx.sh b/src/Specific/solinas64_2e243m9_5limbs/compilerxx.sh
deleted file mode 100755
index 2228f5418..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,49,48,49,48}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='31' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<243) - 9' "$@"
diff --git a/src/Specific/solinas64_2e243m9_5limbs/feadd.c b/src/Specific/solinas64_2e243m9_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e243m9_5limbs/feadd.v b/src/Specific/solinas64_2e243m9_5limbs/feadd.v
deleted file mode 100644
index 9d71c030d..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e243m9_5limbs.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/solinas64_2e243m9_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e243m9_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e243m9_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e243m9_5limbs/feaddDisplay.v
deleted file mode 100644
index be243bb83..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e243m9_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e243m9_5limbs/fecarry.v b/src/Specific/solinas64_2e243m9_5limbs/fecarry.v
deleted file mode 100644
index f6b117c11..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e243m9_5limbs.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/solinas64_2e243m9_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e243m9_5limbs/fecarryDisplay.v
deleted file mode 100644
index 4086f5d8a..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e243m9_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e243m9_5limbs/femul.c b/src/Specific/solinas64_2e243m9_5limbs/femul.c
deleted file mode 100644
index 3f5319439..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint128_t x20 = (((uint128_t)x5 * x18) + (((uint128_t)x7 * x19) + ((0x2 * ((uint128_t)x9 * x17)) + (((uint128_t)x11 * x15) + ((uint128_t)x10 * x13)))));
- { uint128_t x21 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((0x2 * ((uint128_t)x9 * x15)) + ((uint128_t)x11 * x13)))) + (0x9 * (0x2 * ((uint128_t)x10 * x18))));
- { uint128_t x22 = ((((uint128_t)x5 * x17) + (((uint128_t)x7 * x15) + ((uint128_t)x9 * x13))) + (0x9 * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- { uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x9 * ((0x2 * ((uint128_t)x9 * x18)) + (((uint128_t)x11 * x19) + (0x2 * ((uint128_t)x10 * x17))))));
- { uint128_t x24 = (((uint128_t)x5 * x13) + (0x9 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- { uint64_t x25 = (uint64_t) (x24 >> 0x31);
- { uint64_t x26 = ((uint64_t)x24 & 0x1ffffffffffff);
- { uint128_t x27 = (x25 + x23);
- { uint64_t x28 = (uint64_t) (x27 >> 0x31);
- { uint64_t x29 = ((uint64_t)x27 & 0x1ffffffffffff);
- { uint128_t x30 = (x28 + x22);
- { uint64_t x31 = (uint64_t) (x30 >> 0x30);
- { uint64_t x32 = ((uint64_t)x30 & 0xffffffffffff);
- { uint128_t x33 = (x31 + x21);
- { uint64_t x34 = (uint64_t) (x33 >> 0x31);
- { uint64_t x35 = ((uint64_t)x33 & 0x1ffffffffffff);
- { uint128_t x36 = (x34 + x20);
- { uint64_t x37 = (uint64_t) (x36 >> 0x30);
- { uint64_t x38 = ((uint64_t)x36 & 0xffffffffffff);
- { uint64_t x39 = (x26 + (0x9 * x37));
- { uint64_t x40 = (x39 >> 0x31);
- { uint64_t x41 = (x39 & 0x1ffffffffffff);
- { uint64_t x42 = (x40 + x29);
- { uint64_t x43 = (x42 >> 0x31);
- { uint64_t x44 = (x42 & 0x1ffffffffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e243m9_5limbs/femul.v b/src/Specific/solinas64_2e243m9_5limbs/femul.v
deleted file mode 100644
index 4229561b8..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e243m9_5limbs.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/solinas64_2e243m9_5limbs/femulDisplay.log b/src/Specific/solinas64_2e243m9_5limbs/femulDisplay.log
deleted file mode 100644
index 447b07213..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = (((uint128_t)x5 * x18) + (((uint128_t)x7 * x19) + ((0x2 * ((uint128_t)x9 * x17)) + (((uint128_t)x11 * x15) + ((uint128_t)x10 * x13)))));
- uint128_t x21 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((0x2 * ((uint128_t)x9 * x15)) + ((uint128_t)x11 * x13)))) + (0x9 * (0x2 * ((uint128_t)x10 * x18))));
- uint128_t x22 = ((((uint128_t)x5 * x17) + (((uint128_t)x7 * x15) + ((uint128_t)x9 * x13))) + (0x9 * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x9 * ((0x2 * ((uint128_t)x9 * x18)) + (((uint128_t)x11 * x19) + (0x2 * ((uint128_t)x10 * x17))))));
- uint128_t x24 = (((uint128_t)x5 * x13) + (0x9 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- uint64_t x25 = (uint64_t) (x24 >> 0x31);
- uint64_t x26 = ((uint64_t)x24 & 0x1ffffffffffff);
- uint128_t x27 = (x25 + x23);
- uint64_t x28 = (uint64_t) (x27 >> 0x31);
- uint64_t x29 = ((uint64_t)x27 & 0x1ffffffffffff);
- uint128_t x30 = (x28 + x22);
- uint64_t x31 = (uint64_t) (x30 >> 0x30);
- uint64_t x32 = ((uint64_t)x30 & 0xffffffffffff);
- uint128_t x33 = (x31 + x21);
- uint64_t x34 = (uint64_t) (x33 >> 0x31);
- uint64_t x35 = ((uint64_t)x33 & 0x1ffffffffffff);
- uint128_t x36 = (x34 + x20);
- uint64_t x37 = (uint64_t) (x36 >> 0x30);
- uint64_t x38 = ((uint64_t)x36 & 0xffffffffffff);
- uint64_t x39 = (x26 + (0x9 * x37));
- uint64_t x40 = (x39 >> 0x31);
- uint64_t x41 = (x39 & 0x1ffffffffffff);
- uint64_t x42 = (x40 + x29);
- uint64_t x43 = (x42 >> 0x31);
- uint64_t x44 = (x42 & 0x1ffffffffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e243m9_5limbs/femulDisplay.v b/src/Specific/solinas64_2e243m9_5limbs/femulDisplay.v
deleted file mode 100644
index fc80ba9dd..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e243m9_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e243m9_5limbs/fesquare.c b/src/Specific/solinas64_2e243m9_5limbs/fesquare.c
deleted file mode 100644
index b753e4295..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x9 = (((uint128_t)x2 * x7) + (((uint128_t)x4 * x8) + ((0x2 * ((uint128_t)x6 * x6)) + (((uint128_t)x8 * x4) + ((uint128_t)x7 * x2)))));
- { uint128_t x10 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x9 * (0x2 * ((uint128_t)x7 * x7))));
- { uint128_t x11 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x9 * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- { uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x9 * ((0x2 * ((uint128_t)x6 * x7)) + (((uint128_t)x8 * x8) + (0x2 * ((uint128_t)x7 * x6))))));
- { uint128_t x13 = (((uint128_t)x2 * x2) + (0x9 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- { uint64_t x14 = (uint64_t) (x13 >> 0x31);
- { uint64_t x15 = ((uint64_t)x13 & 0x1ffffffffffff);
- { uint128_t x16 = (x14 + x12);
- { uint64_t x17 = (uint64_t) (x16 >> 0x31);
- { uint64_t x18 = ((uint64_t)x16 & 0x1ffffffffffff);
- { uint128_t x19 = (x17 + x11);
- { uint64_t x20 = (uint64_t) (x19 >> 0x30);
- { uint64_t x21 = ((uint64_t)x19 & 0xffffffffffff);
- { uint128_t x22 = (x20 + x10);
- { uint64_t x23 = (uint64_t) (x22 >> 0x31);
- { uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffffff);
- { uint128_t x25 = (x23 + x9);
- { uint64_t x26 = (uint64_t) (x25 >> 0x30);
- { uint64_t x27 = ((uint64_t)x25 & 0xffffffffffff);
- { uint64_t x28 = (x15 + (0x9 * x26));
- { uint64_t x29 = (x28 >> 0x31);
- { uint64_t x30 = (x28 & 0x1ffffffffffff);
- { uint64_t x31 = (x29 + x18);
- { uint64_t x32 = (x31 >> 0x31);
- { uint64_t x33 = (x31 & 0x1ffffffffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e243m9_5limbs/fesquare.v b/src/Specific/solinas64_2e243m9_5limbs/fesquare.v
deleted file mode 100644
index 27cfed6b6..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e243m9_5limbs.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/solinas64_2e243m9_5limbs/fesquareDisplay.log b/src/Specific/solinas64_2e243m9_5limbs/fesquareDisplay.log
deleted file mode 100644
index 9c16fb928..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint128_t x9 = (((uint128_t)x2 * x7) + (((uint128_t)x4 * x8) + ((0x2 * ((uint128_t)x6 * x6)) + (((uint128_t)x8 * x4) + ((uint128_t)x7 * x2)))));
- uint128_t x10 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x9 * (0x2 * ((uint128_t)x7 * x7))));
- uint128_t x11 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x9 * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x9 * ((0x2 * ((uint128_t)x6 * x7)) + (((uint128_t)x8 * x8) + (0x2 * ((uint128_t)x7 * x6))))));
- uint128_t x13 = (((uint128_t)x2 * x2) + (0x9 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- uint64_t x14 = (uint64_t) (x13 >> 0x31);
- uint64_t x15 = ((uint64_t)x13 & 0x1ffffffffffff);
- uint128_t x16 = (x14 + x12);
- uint64_t x17 = (uint64_t) (x16 >> 0x31);
- uint64_t x18 = ((uint64_t)x16 & 0x1ffffffffffff);
- uint128_t x19 = (x17 + x11);
- uint64_t x20 = (uint64_t) (x19 >> 0x30);
- uint64_t x21 = ((uint64_t)x19 & 0xffffffffffff);
- uint128_t x22 = (x20 + x10);
- uint64_t x23 = (uint64_t) (x22 >> 0x31);
- uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffffff);
- uint128_t x25 = (x23 + x9);
- uint64_t x26 = (uint64_t) (x25 >> 0x30);
- uint64_t x27 = ((uint64_t)x25 & 0xffffffffffff);
- uint64_t x28 = (x15 + (0x9 * x26));
- uint64_t x29 = (x28 >> 0x31);
- uint64_t x30 = (x28 & 0x1ffffffffffff);
- uint64_t x31 = (x29 + x18);
- uint64_t x32 = (x31 >> 0x31);
- uint64_t x33 = (x31 & 0x1ffffffffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e243m9_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e243m9_5limbs/fesquareDisplay.v
deleted file mode 100644
index c3a019bf5..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e243m9_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e243m9_5limbs/fesub.c b/src/Specific/solinas64_2e243m9_5limbs/fesub.c
deleted file mode 100644
index 0c1ddafdb..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0x3ffffffffffee + x5) - x13);
- out[1] = ((0x3fffffffffffe + x7) - x15);
- out[2] = ((0x1fffffffffffe + x9) - x17);
- out[3] = ((0x3fffffffffffe + x11) - x19);
- out[4] = ((0x1fffffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e243m9_5limbs/fesub.v b/src/Specific/solinas64_2e243m9_5limbs/fesub.v
deleted file mode 100644
index 06d90c007..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e243m9_5limbs.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/solinas64_2e243m9_5limbs/fesubDisplay.log b/src/Specific/solinas64_2e243m9_5limbs/fesubDisplay.log
deleted file mode 100644
index 1a4484124..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0x1fffffffffffe + x10) - x18), ((0x3fffffffffffe + x11) - x19), ((0x1fffffffffffe + x9) - x17), ((0x3fffffffffffe + x7) - x15), ((0x3ffffffffffee + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e243m9_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e243m9_5limbs/fesubDisplay.v
deleted file mode 100644
index f180d8185..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e243m9_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e243m9_5limbs/freeze.c b/src/Specific/solinas64_2e243m9_5limbs/freeze.c
deleted file mode 100644
index 2f3cac0e8..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffffff7);
- { uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x1ffffffffffff);
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0xffffffffffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x1ffffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0xffffffffffff);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0x1fffffffffff7);
- { uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint64_t x29 = (x24 & 0x1ffffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint64_t x33 = (x24 & 0xffffffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint64_t x37 = (x24 & 0x1ffffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint64_t x41 = (x24 & 0xffffffffffff);
- { uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e243m9_5limbs/freeze.v b/src/Specific/solinas64_2e243m9_5limbs/freeze.v
deleted file mode 100644
index d1ab0b9c6..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e243m9_5limbs.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/solinas64_2e243m9_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e243m9_5limbs/freezeDisplay.log
deleted file mode 100644
index adf7a911b..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffffff7);
- uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x1ffffffffffff);
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0xffffffffffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x1ffffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0xffffffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0x1fffffffffff7);
- uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint64_t x29 = (x24 & 0x1ffffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint64_t x33 = (x24 & 0xffffffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint64_t x37 = (x24 & 0x1ffffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint64_t x41 = (x24 & 0xffffffffffff);
- uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e243m9_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e243m9_5limbs/freezeDisplay.v
deleted file mode 100644
index 6caad5436..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e243m9_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e243m9_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e243m9_5limbs/py_interpreter.sh
deleted file mode 100755
index fb575c490..000000000
--- a/src/Specific/solinas64_2e243m9_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**243 - 9' -Dmodulus_bytes='48.6' -Da24='121665'
diff --git a/src/Specific/solinas64_2e243m9_6limbs/CurveParameters.v b/src/Specific/solinas64_2e243m9_6limbs/CurveParameters.v
deleted file mode 100644
index 60427d462..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^243 - 9
-Base: 40.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 40 + 1/2;
- bitwidth := 64;
- s := 2^243;
- c := [(1, 9)];
- 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/solinas64_2e243m9_6limbs/Synthesis.v b/src/Specific/solinas64_2e243m9_6limbs/Synthesis.v
deleted file mode 100644
index 07fd26c97..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e243m9_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/solinas64_2e243m9_6limbs/compiler.sh b/src/Specific/solinas64_2e243m9_6limbs/compiler.sh
deleted file mode 100755
index 0791ed971..000000000
--- a/src/Specific/solinas64_2e243m9_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{41,40,41,40,41,40}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='31' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<243) - 9' "$@"
diff --git a/src/Specific/solinas64_2e243m9_6limbs/compilerxx.sh b/src/Specific/solinas64_2e243m9_6limbs/compilerxx.sh
deleted file mode 100755
index 8bcf69417..000000000
--- a/src/Specific/solinas64_2e243m9_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{41,40,41,40,41,40}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='31' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<243) - 9' "$@"
diff --git a/src/Specific/solinas64_2e243m9_6limbs/feadd.c b/src/Specific/solinas64_2e243m9_6limbs/feadd.c
deleted file mode 100644
index 4a6bfb999..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/feadd.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_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/solinas64_2e243m9_6limbs/feadd.v b/src/Specific/solinas64_2e243m9_6limbs/feadd.v
deleted file mode 100644
index 95f06fad0..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e243m9_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/solinas64_2e243m9_6limbs/feaddDisplay.log b/src/Specific/solinas64_2e243m9_6limbs/feaddDisplay.log
deleted file mode 100644
index e32995a81..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-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
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e243m9_6limbs/feaddDisplay.v b/src/Specific/solinas64_2e243m9_6limbs/feaddDisplay.v
deleted file mode 100644
index a63e71554..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e243m9_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e243m9_6limbs/fecarry.v b/src/Specific/solinas64_2e243m9_6limbs/fecarry.v
deleted file mode 100644
index 832dcd6b3..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e243m9_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/solinas64_2e243m9_6limbs/fecarryDisplay.v b/src/Specific/solinas64_2e243m9_6limbs/fecarryDisplay.v
deleted file mode 100644
index 5d470ddea..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e243m9_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e243m9_6limbs/femul.c b/src/Specific/solinas64_2e243m9_6limbs/femul.c
deleted file mode 100644
index 1f3dd625a..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/femul.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint128_t x24 = (((uint128_t)x5 * x22) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + (((uint128_t)x13 * x17) + ((uint128_t)x12 * x15))))));
- { uint128_t x25 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + (((uint128_t)x9 * x19) + ((0x2 * ((uint128_t)x11 * x17)) + ((uint128_t)x13 * x15))))) + (0x9 * (0x2 * ((uint128_t)x12 * x22))));
- { uint128_t x26 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + ((uint128_t)x11 * x15)))) + (0x9 * (((uint128_t)x13 * x22) + ((uint128_t)x12 * x23))));
- { uint128_t x27 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((uint128_t)x9 * x15))) + (0x9 * ((0x2 * ((uint128_t)x11 * x22)) + (((uint128_t)x13 * x23) + (0x2 * ((uint128_t)x12 * x21))))));
- { uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (0x9 * (((uint128_t)x9 * x22) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x12 * x19))))));
- { uint128_t x29 = (((uint128_t)x5 * x15) + (0x9 * ((0x2 * ((uint128_t)x7 * x22)) + (((uint128_t)x9 * x23) + ((0x2 * ((uint128_t)x11 * x21)) + (((uint128_t)x13 * x19) + (0x2 * ((uint128_t)x12 * x17))))))));
- { uint64_t x30 = (uint64_t) (x29 >> 0x29);
- { uint64_t x31 = ((uint64_t)x29 & 0x1ffffffffff);
- { uint128_t x32 = (x30 + x28);
- { uint64_t x33 = (uint64_t) (x32 >> 0x28);
- { uint64_t x34 = ((uint64_t)x32 & 0xffffffffff);
- { uint128_t x35 = (x33 + x27);
- { uint64_t x36 = (uint64_t) (x35 >> 0x29);
- { uint64_t x37 = ((uint64_t)x35 & 0x1ffffffffff);
- { uint128_t x38 = (x36 + x26);
- { uint64_t x39 = (uint64_t) (x38 >> 0x28);
- { uint64_t x40 = ((uint64_t)x38 & 0xffffffffff);
- { uint128_t x41 = (x39 + x25);
- { uint64_t x42 = (uint64_t) (x41 >> 0x29);
- { uint64_t x43 = ((uint64_t)x41 & 0x1ffffffffff);
- { uint128_t x44 = (x42 + x24);
- { uint64_t x45 = (uint64_t) (x44 >> 0x28);
- { uint64_t x46 = ((uint64_t)x44 & 0xffffffffff);
- { uint64_t x47 = (x31 + (0x9 * x45));
- { uint64_t x48 = (x47 >> 0x29);
- { uint64_t x49 = (x47 & 0x1ffffffffff);
- { uint64_t x50 = (x48 + x34);
- { uint64_t x51 = (x50 >> 0x28);
- { uint64_t x52 = (x50 & 0xffffffffff);
- out[0] = x49;
- out[1] = x52;
- out[2] = (x51 + x37);
- out[3] = x40;
- out[4] = x43;
- out[5] = x46;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e243m9_6limbs/femul.v b/src/Specific/solinas64_2e243m9_6limbs/femul.v
deleted file mode 100644
index 28872402d..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e243m9_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/solinas64_2e243m9_6limbs/femulDisplay.log b/src/Specific/solinas64_2e243m9_6limbs/femulDisplay.log
deleted file mode 100644
index 6b6b1ee55..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint128_t x24 = (((uint128_t)x5 * x22) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + (((uint128_t)x13 * x17) + ((uint128_t)x12 * x15))))));
- uint128_t x25 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + (((uint128_t)x9 * x19) + ((0x2 * ((uint128_t)x11 * x17)) + ((uint128_t)x13 * x15))))) + (0x9 * (0x2 * ((uint128_t)x12 * x22))));
- uint128_t x26 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + ((uint128_t)x11 * x15)))) + (0x9 * (((uint128_t)x13 * x22) + ((uint128_t)x12 * x23))));
- uint128_t x27 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((uint128_t)x9 * x15))) + (0x9 * ((0x2 * ((uint128_t)x11 * x22)) + (((uint128_t)x13 * x23) + (0x2 * ((uint128_t)x12 * x21))))));
- uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (0x9 * (((uint128_t)x9 * x22) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x12 * x19))))));
- uint128_t x29 = (((uint128_t)x5 * x15) + (0x9 * ((0x2 * ((uint128_t)x7 * x22)) + (((uint128_t)x9 * x23) + ((0x2 * ((uint128_t)x11 * x21)) + (((uint128_t)x13 * x19) + (0x2 * ((uint128_t)x12 * x17))))))));
- uint64_t x30 = (uint64_t) (x29 >> 0x29);
- uint64_t x31 = ((uint64_t)x29 & 0x1ffffffffff);
- uint128_t x32 = (x30 + x28);
- uint64_t x33 = (uint64_t) (x32 >> 0x28);
- uint64_t x34 = ((uint64_t)x32 & 0xffffffffff);
- uint128_t x35 = (x33 + x27);
- uint64_t x36 = (uint64_t) (x35 >> 0x29);
- uint64_t x37 = ((uint64_t)x35 & 0x1ffffffffff);
- uint128_t x38 = (x36 + x26);
- uint64_t x39 = (uint64_t) (x38 >> 0x28);
- uint64_t x40 = ((uint64_t)x38 & 0xffffffffff);
- uint128_t x41 = (x39 + x25);
- uint64_t x42 = (uint64_t) (x41 >> 0x29);
- uint64_t x43 = ((uint64_t)x41 & 0x1ffffffffff);
- uint128_t x44 = (x42 + x24);
- uint64_t x45 = (uint64_t) (x44 >> 0x28);
- uint64_t x46 = ((uint64_t)x44 & 0xffffffffff);
- uint64_t x47 = (x31 + (0x9 * x45));
- uint64_t x48 = (x47 >> 0x29);
- uint64_t x49 = (x47 & 0x1ffffffffff);
- uint64_t x50 = (x48 + x34);
- uint64_t x51 = (x50 >> 0x28);
- uint64_t x52 = (x50 & 0xffffffffff);
- return (Return x46, Return x43, Return x40, (x51 + x37), Return x52, Return x49))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e243m9_6limbs/femulDisplay.v b/src/Specific/solinas64_2e243m9_6limbs/femulDisplay.v
deleted file mode 100644
index 7431207de..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e243m9_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e243m9_6limbs/fesquare.c b/src/Specific/solinas64_2e243m9_6limbs/fesquare.c
deleted file mode 100644
index c1d0d52c6..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/fesquare.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void fesquare(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x11 = (((uint128_t)x2 * x9) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x9 * x2))))));
- { uint128_t x12 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x9 * (0x2 * ((uint128_t)x9 * x9))));
- { uint128_t x13 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x9 * (((uint128_t)x10 * x9) + ((uint128_t)x9 * x10))));
- { uint128_t x14 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x9 * ((0x2 * ((uint128_t)x8 * x9)) + (((uint128_t)x10 * x10) + (0x2 * ((uint128_t)x9 * x8))))));
- { uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x9 * (((uint128_t)x6 * x9) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((uint128_t)x9 * x6))))));
- { uint128_t x16 = (((uint128_t)x2 * x2) + (0x9 * ((0x2 * ((uint128_t)x4 * x9)) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (0x2 * ((uint128_t)x9 * x4))))))));
- { uint64_t x17 = (uint64_t) (x16 >> 0x29);
- { uint64_t x18 = ((uint64_t)x16 & 0x1ffffffffff);
- { uint128_t x19 = (x17 + x15);
- { uint64_t x20 = (uint64_t) (x19 >> 0x28);
- { uint64_t x21 = ((uint64_t)x19 & 0xffffffffff);
- { uint128_t x22 = (x20 + x14);
- { uint64_t x23 = (uint64_t) (x22 >> 0x29);
- { uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffff);
- { uint128_t x25 = (x23 + x13);
- { uint64_t x26 = (uint64_t) (x25 >> 0x28);
- { uint64_t x27 = ((uint64_t)x25 & 0xffffffffff);
- { uint128_t x28 = (x26 + x12);
- { uint64_t x29 = (uint64_t) (x28 >> 0x29);
- { uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffff);
- { uint128_t x31 = (x29 + x11);
- { uint64_t x32 = (uint64_t) (x31 >> 0x28);
- { uint64_t x33 = ((uint64_t)x31 & 0xffffffffff);
- { uint64_t x34 = (x18 + (0x9 * x32));
- { uint64_t x35 = (x34 >> 0x29);
- { uint64_t x36 = (x34 & 0x1ffffffffff);
- { uint64_t x37 = (x35 + x21);
- { uint64_t x38 = (x37 >> 0x28);
- { uint64_t x39 = (x37 & 0xffffffffff);
- out[0] = x36;
- out[1] = x39;
- out[2] = (x38 + x24);
- out[3] = x27;
- out[4] = x30;
- out[5] = x33;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e243m9_6limbs/fesquare.v b/src/Specific/solinas64_2e243m9_6limbs/fesquare.v
deleted file mode 100644
index e5a459bfa..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e243m9_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/solinas64_2e243m9_6limbs/fesquareDisplay.log b/src/Specific/solinas64_2e243m9_6limbs/fesquareDisplay.log
deleted file mode 100644
index 5b9f6a27c..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint128_t x11 = (((uint128_t)x2 * x9) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x9 * x2))))));
- uint128_t x12 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x9 * (0x2 * ((uint128_t)x9 * x9))));
- uint128_t x13 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x9 * (((uint128_t)x10 * x9) + ((uint128_t)x9 * x10))));
- uint128_t x14 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x9 * ((0x2 * ((uint128_t)x8 * x9)) + (((uint128_t)x10 * x10) + (0x2 * ((uint128_t)x9 * x8))))));
- uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x9 * (((uint128_t)x6 * x9) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((uint128_t)x9 * x6))))));
- uint128_t x16 = (((uint128_t)x2 * x2) + (0x9 * ((0x2 * ((uint128_t)x4 * x9)) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (0x2 * ((uint128_t)x9 * x4))))))));
- uint64_t x17 = (uint64_t) (x16 >> 0x29);
- uint64_t x18 = ((uint64_t)x16 & 0x1ffffffffff);
- uint128_t x19 = (x17 + x15);
- uint64_t x20 = (uint64_t) (x19 >> 0x28);
- uint64_t x21 = ((uint64_t)x19 & 0xffffffffff);
- uint128_t x22 = (x20 + x14);
- uint64_t x23 = (uint64_t) (x22 >> 0x29);
- uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffff);
- uint128_t x25 = (x23 + x13);
- uint64_t x26 = (uint64_t) (x25 >> 0x28);
- uint64_t x27 = ((uint64_t)x25 & 0xffffffffff);
- uint128_t x28 = (x26 + x12);
- uint64_t x29 = (uint64_t) (x28 >> 0x29);
- uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffff);
- uint128_t x31 = (x29 + x11);
- uint64_t x32 = (uint64_t) (x31 >> 0x28);
- uint64_t x33 = ((uint64_t)x31 & 0xffffffffff);
- uint64_t x34 = (x18 + (0x9 * x32));
- uint64_t x35 = (x34 >> 0x29);
- uint64_t x36 = (x34 & 0x1ffffffffff);
- uint64_t x37 = (x35 + x21);
- uint64_t x38 = (x37 >> 0x28);
- uint64_t x39 = (x37 & 0xffffffffff);
- return (Return x33, Return x30, Return x27, (x38 + x24), Return x39, Return x36))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e243m9_6limbs/fesquareDisplay.v b/src/Specific/solinas64_2e243m9_6limbs/fesquareDisplay.v
deleted file mode 100644
index 097098540..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e243m9_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e243m9_6limbs/fesub.c b/src/Specific/solinas64_2e243m9_6limbs/fesub.c
deleted file mode 100644
index 50c317b29..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/fesub.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- out[0] = ((0x3ffffffffee + x5) - x15);
- out[1] = ((0x1fffffffffe + x7) - x17);
- out[2] = ((0x3fffffffffe + x9) - x19);
- out[3] = ((0x1fffffffffe + x11) - x21);
- out[4] = ((0x3fffffffffe + x13) - x23);
- out[5] = ((0x1fffffffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e243m9_6limbs/fesub.v b/src/Specific/solinas64_2e243m9_6limbs/fesub.v
deleted file mode 100644
index 9745e8c81..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e243m9_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/solinas64_2e243m9_6limbs/fesubDisplay.log b/src/Specific/solinas64_2e243m9_6limbs/fesubDisplay.log
deleted file mode 100644
index 22e0778d0..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- (((0x1fffffffffe + x12) - x22), ((0x3fffffffffe + x13) - x23), ((0x1fffffffffe + x11) - x21), ((0x3fffffffffe + x9) - x19), ((0x1fffffffffe + x7) - x17), ((0x3ffffffffee + x5) - x15)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e243m9_6limbs/fesubDisplay.v b/src/Specific/solinas64_2e243m9_6limbs/fesubDisplay.v
deleted file mode 100644
index c91eee1fa..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e243m9_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e243m9_6limbs/freeze.c b/src/Specific/solinas64_2e243m9_6limbs/freeze.c
deleted file mode 100644
index 56fe99d55..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/freeze.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void freeze(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffff7);
- { uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0xffffffffff);
- { uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0x1ffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0xffffffffff);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0x1ffffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0xffffffffff);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0x1fffffffff7);
- { uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint64_t x34 = (x29 & 0xffffffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- { uint64_t x38 = (x29 & 0x1ffffffffff);
- { uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- { uint64_t x42 = (x29 & 0xffffffffff);
- { uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- { uint64_t x46 = (x29 & 0x1ffffffffff);
- { uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- { uint64_t x50 = (x29 & 0xffffffffff);
- { uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (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/solinas64_2e243m9_6limbs/freeze.v b/src/Specific/solinas64_2e243m9_6limbs/freeze.v
deleted file mode 100644
index 69c91e045..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e243m9_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/solinas64_2e243m9_6limbs/freezeDisplay.log b/src/Specific/solinas64_2e243m9_6limbs/freezeDisplay.log
deleted file mode 100644
index 2240ec6b1..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/freezeDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffff7);
- uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0xffffffffff);
- uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0x1ffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0xffffffffff);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0x1ffffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0xffffffffff);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0x1fffffffff7);
- uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint64_t x34 = (x29 & 0xffffffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- uint64_t x38 = (x29 & 0x1ffffffffff);
- uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- uint64_t x42 = (x29 & 0xffffffffff);
- uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- uint64_t x46 = (x29 & 0x1ffffffffff);
- uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- uint64_t x50 = (x29 & 0xffffffffff);
- uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 40 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x49, Return x27, Return x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e243m9_6limbs/freezeDisplay.v b/src/Specific/solinas64_2e243m9_6limbs/freezeDisplay.v
deleted file mode 100644
index d935e124e..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e243m9_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e243m9_6limbs/py_interpreter.sh b/src/Specific/solinas64_2e243m9_6limbs/py_interpreter.sh
deleted file mode 100755
index 73df75d70..000000000
--- a/src/Specific/solinas64_2e243m9_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**243 - 9' -Dmodulus_bytes='40.5' -Da24='121665'
diff --git a/src/Specific/solinas64_2e251m9_5limbs/CurveParameters.v b/src/Specific/solinas64_2e251m9_5limbs/CurveParameters.v
deleted file mode 100644
index 5a6c7841a..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^251 - 9
-Base: 50.2
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 50 + 1/5;
- bitwidth := 64;
- s := 2^251;
- c := [(1, 9)];
- carry_chains := Some [seq 0 (pred 5); [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/solinas64_2e251m9_5limbs/Synthesis.v b/src/Specific/solinas64_2e251m9_5limbs/Synthesis.v
deleted file mode 100644
index 72def8938..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e251m9_5limbs.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/solinas64_2e251m9_5limbs/compiler.sh b/src/Specific/solinas64_2e251m9_5limbs/compiler.sh
deleted file mode 100755
index b58a0e0d6..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,50,50,50,50}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<251) - 9' "$@"
diff --git a/src/Specific/solinas64_2e251m9_5limbs/compilerxx.sh b/src/Specific/solinas64_2e251m9_5limbs/compilerxx.sh
deleted file mode 100755
index d776c4b3d..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,50,50,50,50}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<251) - 9' "$@"
diff --git a/src/Specific/solinas64_2e251m9_5limbs/feadd.c b/src/Specific/solinas64_2e251m9_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e251m9_5limbs/feadd.v b/src/Specific/solinas64_2e251m9_5limbs/feadd.v
deleted file mode 100644
index 69da71c2a..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e251m9_5limbs.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/solinas64_2e251m9_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e251m9_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e251m9_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e251m9_5limbs/feaddDisplay.v
deleted file mode 100644
index e306c7204..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e251m9_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e251m9_5limbs/fecarry.v b/src/Specific/solinas64_2e251m9_5limbs/fecarry.v
deleted file mode 100644
index 938da4368..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e251m9_5limbs.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/solinas64_2e251m9_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e251m9_5limbs/fecarryDisplay.v
deleted file mode 100644
index cf9216dfb..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e251m9_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e251m9_5limbs/femul.c b/src/Specific/solinas64_2e251m9_5limbs/femul.c
deleted file mode 100644
index cced9ce9f..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint128_t x20 = (((uint128_t)x5 * x18) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((0x2 * ((uint128_t)x11 * x15)) + ((uint128_t)x10 * x13)))));
- { uint128_t x21 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((0x2 * ((uint128_t)x9 * x15)) + ((uint128_t)x11 * x13)))) + (0x9 * ((uint128_t)x10 * x18)));
- { uint128_t x22 = ((((uint128_t)x5 * x17) + ((0x2 * ((uint128_t)x7 * x15)) + ((uint128_t)x9 * x13))) + (0x9 * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- { uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x9 * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- { uint128_t x24 = (((uint128_t)x5 * x13) + (0x9 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- { uint64_t x25 = (uint64_t) (x24 >> 0x33);
- { uint64_t x26 = ((uint64_t)x24 & 0x7ffffffffffff);
- { uint128_t x27 = (x25 + x23);
- { uint64_t x28 = (uint64_t) (x27 >> 0x32);
- { uint64_t x29 = ((uint64_t)x27 & 0x3ffffffffffff);
- { uint128_t x30 = (x28 + x22);
- { uint64_t x31 = (uint64_t) (x30 >> 0x32);
- { uint64_t x32 = ((uint64_t)x30 & 0x3ffffffffffff);
- { uint128_t x33 = (x31 + x21);
- { uint64_t x34 = (uint64_t) (x33 >> 0x32);
- { uint64_t x35 = ((uint64_t)x33 & 0x3ffffffffffff);
- { uint128_t x36 = (x34 + x20);
- { uint64_t x37 = (uint64_t) (x36 >> 0x32);
- { uint64_t x38 = ((uint64_t)x36 & 0x3ffffffffffff);
- { uint64_t x39 = (x26 + (0x9 * x37));
- { uint64_t x40 = (x39 >> 0x33);
- { uint64_t x41 = (x39 & 0x7ffffffffffff);
- { uint64_t x42 = (x40 + x29);
- { uint64_t x43 = (x42 >> 0x32);
- { uint64_t x44 = (x42 & 0x3ffffffffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e251m9_5limbs/femul.v b/src/Specific/solinas64_2e251m9_5limbs/femul.v
deleted file mode 100644
index a86646f47..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e251m9_5limbs.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/solinas64_2e251m9_5limbs/femulDisplay.log b/src/Specific/solinas64_2e251m9_5limbs/femulDisplay.log
deleted file mode 100644
index fbb8498ab..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = (((uint128_t)x5 * x18) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((0x2 * ((uint128_t)x11 * x15)) + ((uint128_t)x10 * x13)))));
- uint128_t x21 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((0x2 * ((uint128_t)x9 * x15)) + ((uint128_t)x11 * x13)))) + (0x9 * ((uint128_t)x10 * x18)));
- uint128_t x22 = ((((uint128_t)x5 * x17) + ((0x2 * ((uint128_t)x7 * x15)) + ((uint128_t)x9 * x13))) + (0x9 * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x9 * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- uint128_t x24 = (((uint128_t)x5 * x13) + (0x9 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- uint64_t x25 = (uint64_t) (x24 >> 0x33);
- uint64_t x26 = ((uint64_t)x24 & 0x7ffffffffffff);
- uint128_t x27 = (x25 + x23);
- uint64_t x28 = (uint64_t) (x27 >> 0x32);
- uint64_t x29 = ((uint64_t)x27 & 0x3ffffffffffff);
- uint128_t x30 = (x28 + x22);
- uint64_t x31 = (uint64_t) (x30 >> 0x32);
- uint64_t x32 = ((uint64_t)x30 & 0x3ffffffffffff);
- uint128_t x33 = (x31 + x21);
- uint64_t x34 = (uint64_t) (x33 >> 0x32);
- uint64_t x35 = ((uint64_t)x33 & 0x3ffffffffffff);
- uint128_t x36 = (x34 + x20);
- uint64_t x37 = (uint64_t) (x36 >> 0x32);
- uint64_t x38 = ((uint64_t)x36 & 0x3ffffffffffff);
- uint64_t x39 = (x26 + (0x9 * x37));
- uint64_t x40 = (x39 >> 0x33);
- uint64_t x41 = (x39 & 0x7ffffffffffff);
- uint64_t x42 = (x40 + x29);
- uint64_t x43 = (x42 >> 0x32);
- uint64_t x44 = (x42 & 0x3ffffffffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e251m9_5limbs/femulDisplay.v b/src/Specific/solinas64_2e251m9_5limbs/femulDisplay.v
deleted file mode 100644
index c90b6e6b8..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e251m9_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e251m9_5limbs/fesquare.c b/src/Specific/solinas64_2e251m9_5limbs/fesquare.c
deleted file mode 100644
index 77726bb6a..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x9 = (((uint128_t)x2 * x7) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x7 * x2)))));
- { uint128_t x10 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x9 * ((uint128_t)x7 * x7)));
- { uint128_t x11 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x9 * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- { uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x9 * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- { uint128_t x13 = (((uint128_t)x2 * x2) + (0x9 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- { uint64_t x14 = (uint64_t) (x13 >> 0x33);
- { uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffffff);
- { uint128_t x16 = (x14 + x12);
- { uint64_t x17 = (uint64_t) (x16 >> 0x32);
- { uint64_t x18 = ((uint64_t)x16 & 0x3ffffffffffff);
- { uint128_t x19 = (x17 + x11);
- { uint64_t x20 = (uint64_t) (x19 >> 0x32);
- { uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffffff);
- { uint128_t x22 = (x20 + x10);
- { uint64_t x23 = (uint64_t) (x22 >> 0x32);
- { uint64_t x24 = ((uint64_t)x22 & 0x3ffffffffffff);
- { uint128_t x25 = (x23 + x9);
- { uint64_t x26 = (uint64_t) (x25 >> 0x32);
- { uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffffff);
- { uint64_t x28 = (x15 + (0x9 * x26));
- { uint64_t x29 = (x28 >> 0x33);
- { uint64_t x30 = (x28 & 0x7ffffffffffff);
- { uint64_t x31 = (x29 + x18);
- { uint64_t x32 = (x31 >> 0x32);
- { uint64_t x33 = (x31 & 0x3ffffffffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e251m9_5limbs/fesquare.v b/src/Specific/solinas64_2e251m9_5limbs/fesquare.v
deleted file mode 100644
index e2532082e..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e251m9_5limbs.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/solinas64_2e251m9_5limbs/fesquareDisplay.log b/src/Specific/solinas64_2e251m9_5limbs/fesquareDisplay.log
deleted file mode 100644
index 7a89b038e..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint128_t x9 = (((uint128_t)x2 * x7) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x7 * x2)))));
- uint128_t x10 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x9 * ((uint128_t)x7 * x7)));
- uint128_t x11 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x9 * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x9 * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- uint128_t x13 = (((uint128_t)x2 * x2) + (0x9 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- uint64_t x14 = (uint64_t) (x13 >> 0x33);
- uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffffff);
- uint128_t x16 = (x14 + x12);
- uint64_t x17 = (uint64_t) (x16 >> 0x32);
- uint64_t x18 = ((uint64_t)x16 & 0x3ffffffffffff);
- uint128_t x19 = (x17 + x11);
- uint64_t x20 = (uint64_t) (x19 >> 0x32);
- uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffffff);
- uint128_t x22 = (x20 + x10);
- uint64_t x23 = (uint64_t) (x22 >> 0x32);
- uint64_t x24 = ((uint64_t)x22 & 0x3ffffffffffff);
- uint128_t x25 = (x23 + x9);
- uint64_t x26 = (uint64_t) (x25 >> 0x32);
- uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffffff);
- uint64_t x28 = (x15 + (0x9 * x26));
- uint64_t x29 = (x28 >> 0x33);
- uint64_t x30 = (x28 & 0x7ffffffffffff);
- uint64_t x31 = (x29 + x18);
- uint64_t x32 = (x31 >> 0x32);
- uint64_t x33 = (x31 & 0x3ffffffffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e251m9_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e251m9_5limbs/fesquareDisplay.v
deleted file mode 100644
index 5314bcfce..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e251m9_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e251m9_5limbs/fesub.c b/src/Specific/solinas64_2e251m9_5limbs/fesub.c
deleted file mode 100644
index e7563ceae..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0xfffffffffffee + x5) - x13);
- out[1] = ((0x7fffffffffffe + x7) - x15);
- out[2] = ((0x7fffffffffffe + x9) - x17);
- out[3] = ((0x7fffffffffffe + x11) - x19);
- out[4] = ((0x7fffffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e251m9_5limbs/fesub.v b/src/Specific/solinas64_2e251m9_5limbs/fesub.v
deleted file mode 100644
index 67d16a7d3..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e251m9_5limbs.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/solinas64_2e251m9_5limbs/fesubDisplay.log b/src/Specific/solinas64_2e251m9_5limbs/fesubDisplay.log
deleted file mode 100644
index 4c7bb5bfc..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0x7fffffffffffe + x10) - x18), ((0x7fffffffffffe + x11) - x19), ((0x7fffffffffffe + x9) - x17), ((0x7fffffffffffe + x7) - x15), ((0xfffffffffffee + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e251m9_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e251m9_5limbs/fesubDisplay.v
deleted file mode 100644
index f1a417731..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e251m9_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e251m9_5limbs/freeze.c b/src/Specific/solinas64_2e251m9_5limbs/freeze.c
deleted file mode 100644
index f21798fc1..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10; uint8_t x11 = _subborrow_u51(0x0, x2, 0x7fffffffffff7, &x10);
- { uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x3ffffffffffff);
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x3ffffffffffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x3ffffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x3ffffffffffff);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0x7fffffffffff7);
- { uint64_t x27; uint8_t x28 = _addcarryx_u51(0x0, x10, x25, &x27);
- { uint64_t x29 = (x24 & 0x3ffffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint64_t x33 = (x24 & 0x3ffffffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint64_t x37 = (x24 & 0x3ffffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint64_t x41 = (x24 & 0x3ffffffffffff);
- { uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e251m9_5limbs/freeze.v b/src/Specific/solinas64_2e251m9_5limbs/freeze.v
deleted file mode 100644
index 23581d25d..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e251m9_5limbs.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/solinas64_2e251m9_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e251m9_5limbs/freezeDisplay.log
deleted file mode 100644
index ea1f68ec7..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = subborrow_u51(0x0, x2, 0x7fffffffffff7);
- uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x3ffffffffffff);
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x3ffffffffffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x3ffffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x3ffffffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0x7fffffffffff7);
- uint64_t x27, uint8_t x28 = addcarryx_u51(0x0, x10, x25);
- uint64_t x29 = (x24 & 0x3ffffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint64_t x33 = (x24 & 0x3ffffffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint64_t x37 = (x24 & 0x3ffffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint64_t x41 = (x24 & 0x3ffffffffffff);
- uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e251m9_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e251m9_5limbs/freezeDisplay.v
deleted file mode 100644
index 03986d5a3..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e251m9_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e251m9_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e251m9_5limbs/py_interpreter.sh
deleted file mode 100755
index e87e88f23..000000000
--- a/src/Specific/solinas64_2e251m9_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**251 - 9' -Dmodulus_bytes='50.2' -Da24='121665'
diff --git a/src/Specific/solinas64_2e251m9_6limbs/CurveParameters.v b/src/Specific/solinas64_2e251m9_6limbs/CurveParameters.v
deleted file mode 100644
index 523e887e3..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^251 - 9
-Base: 41 + 5/6
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 41 + 5/6;
- bitwidth := 64;
- s := 2^251;
- c := [(1, 9)];
- 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/solinas64_2e251m9_6limbs/Synthesis.v b/src/Specific/solinas64_2e251m9_6limbs/Synthesis.v
deleted file mode 100644
index f225dd47c..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e251m9_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/solinas64_2e251m9_6limbs/compiler.sh b/src/Specific/solinas64_2e251m9_6limbs/compiler.sh
deleted file mode 100755
index 31f94ff14..000000000
--- a/src/Specific/solinas64_2e251m9_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{42,42,42,42,42,41}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<251) - 9' "$@"
diff --git a/src/Specific/solinas64_2e251m9_6limbs/compilerxx.sh b/src/Specific/solinas64_2e251m9_6limbs/compilerxx.sh
deleted file mode 100755
index 292552346..000000000
--- a/src/Specific/solinas64_2e251m9_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{42,42,42,42,42,41}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<251) - 9' "$@"
diff --git a/src/Specific/solinas64_2e251m9_6limbs/feadd.c b/src/Specific/solinas64_2e251m9_6limbs/feadd.c
deleted file mode 100644
index 4a6bfb999..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/feadd.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_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/solinas64_2e251m9_6limbs/feadd.v b/src/Specific/solinas64_2e251m9_6limbs/feadd.v
deleted file mode 100644
index ef50c8036..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e251m9_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/solinas64_2e251m9_6limbs/feaddDisplay.log b/src/Specific/solinas64_2e251m9_6limbs/feaddDisplay.log
deleted file mode 100644
index e32995a81..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-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
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e251m9_6limbs/feaddDisplay.v b/src/Specific/solinas64_2e251m9_6limbs/feaddDisplay.v
deleted file mode 100644
index a500a6b7b..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e251m9_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e251m9_6limbs/fecarry.v b/src/Specific/solinas64_2e251m9_6limbs/fecarry.v
deleted file mode 100644
index 291884fe7..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e251m9_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/solinas64_2e251m9_6limbs/fecarryDisplay.v b/src/Specific/solinas64_2e251m9_6limbs/fecarryDisplay.v
deleted file mode 100644
index d038fec55..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e251m9_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e251m9_6limbs/femul.c b/src/Specific/solinas64_2e251m9_6limbs/femul.c
deleted file mode 100644
index 3bc17a4ad..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/femul.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint128_t x24 = (((uint128_t)x5 * x22) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + (((uint128_t)x13 * x17) + ((uint128_t)x12 * x15))))));
- { uint128_t x25 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + (((uint128_t)x11 * x17) + ((uint128_t)x13 * x15))))) + (0x9 * (0x2 * ((uint128_t)x12 * x22))));
- { uint128_t x26 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + ((uint128_t)x11 * x15)))) + (0x9 * ((0x2 * ((uint128_t)x13 * x22)) + (0x2 * ((uint128_t)x12 * x23)))));
- { uint128_t x27 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + ((uint128_t)x9 * x15))) + (0x9 * ((0x2 * ((uint128_t)x11 * x22)) + ((0x2 * ((uint128_t)x13 * x23)) + (0x2 * ((uint128_t)x12 * x21))))));
- { uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (0x9 * ((0x2 * ((uint128_t)x9 * x22)) + ((0x2 * ((uint128_t)x11 * x23)) + ((0x2 * ((uint128_t)x13 * x21)) + (0x2 * ((uint128_t)x12 * x19)))))));
- { uint128_t x29 = (((uint128_t)x5 * x15) + (0x9 * ((0x2 * ((uint128_t)x7 * x22)) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + ((0x2 * ((uint128_t)x13 * x19)) + (0x2 * ((uint128_t)x12 * x17))))))));
- { uint64_t x30 = (uint64_t) (x29 >> 0x2a);
- { uint64_t x31 = ((uint64_t)x29 & 0x3ffffffffff);
- { uint128_t x32 = (x30 + x28);
- { uint64_t x33 = (uint64_t) (x32 >> 0x2a);
- { uint64_t x34 = ((uint64_t)x32 & 0x3ffffffffff);
- { uint128_t x35 = (x33 + x27);
- { uint64_t x36 = (uint64_t) (x35 >> 0x2a);
- { uint64_t x37 = ((uint64_t)x35 & 0x3ffffffffff);
- { uint128_t x38 = (x36 + x26);
- { uint64_t x39 = (uint64_t) (x38 >> 0x2a);
- { uint64_t x40 = ((uint64_t)x38 & 0x3ffffffffff);
- { uint128_t x41 = (x39 + x25);
- { uint64_t x42 = (uint64_t) (x41 >> 0x2a);
- { uint64_t x43 = ((uint64_t)x41 & 0x3ffffffffff);
- { uint128_t x44 = (x42 + x24);
- { uint64_t x45 = (uint64_t) (x44 >> 0x29);
- { uint64_t x46 = ((uint64_t)x44 & 0x1ffffffffff);
- { uint64_t x47 = (x31 + (0x9 * x45));
- { uint64_t x48 = (x47 >> 0x2a);
- { uint64_t x49 = (x47 & 0x3ffffffffff);
- { uint64_t x50 = (x48 + x34);
- { uint64_t x51 = (x50 >> 0x2a);
- { uint64_t x52 = (x50 & 0x3ffffffffff);
- out[0] = x49;
- out[1] = x52;
- out[2] = (x51 + x37);
- out[3] = x40;
- out[4] = x43;
- out[5] = x46;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e251m9_6limbs/femul.v b/src/Specific/solinas64_2e251m9_6limbs/femul.v
deleted file mode 100644
index a4a411459..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e251m9_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/solinas64_2e251m9_6limbs/femulDisplay.log b/src/Specific/solinas64_2e251m9_6limbs/femulDisplay.log
deleted file mode 100644
index 439f15a88..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint128_t x24 = (((uint128_t)x5 * x22) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + (((uint128_t)x13 * x17) + ((uint128_t)x12 * x15))))));
- uint128_t x25 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + (((uint128_t)x11 * x17) + ((uint128_t)x13 * x15))))) + (0x9 * (0x2 * ((uint128_t)x12 * x22))));
- uint128_t x26 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + ((uint128_t)x11 * x15)))) + (0x9 * ((0x2 * ((uint128_t)x13 * x22)) + (0x2 * ((uint128_t)x12 * x23)))));
- uint128_t x27 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + ((uint128_t)x9 * x15))) + (0x9 * ((0x2 * ((uint128_t)x11 * x22)) + ((0x2 * ((uint128_t)x13 * x23)) + (0x2 * ((uint128_t)x12 * x21))))));
- uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (0x9 * ((0x2 * ((uint128_t)x9 * x22)) + ((0x2 * ((uint128_t)x11 * x23)) + ((0x2 * ((uint128_t)x13 * x21)) + (0x2 * ((uint128_t)x12 * x19)))))));
- uint128_t x29 = (((uint128_t)x5 * x15) + (0x9 * ((0x2 * ((uint128_t)x7 * x22)) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + ((0x2 * ((uint128_t)x13 * x19)) + (0x2 * ((uint128_t)x12 * x17))))))));
- uint64_t x30 = (uint64_t) (x29 >> 0x2a);
- uint64_t x31 = ((uint64_t)x29 & 0x3ffffffffff);
- uint128_t x32 = (x30 + x28);
- uint64_t x33 = (uint64_t) (x32 >> 0x2a);
- uint64_t x34 = ((uint64_t)x32 & 0x3ffffffffff);
- uint128_t x35 = (x33 + x27);
- uint64_t x36 = (uint64_t) (x35 >> 0x2a);
- uint64_t x37 = ((uint64_t)x35 & 0x3ffffffffff);
- uint128_t x38 = (x36 + x26);
- uint64_t x39 = (uint64_t) (x38 >> 0x2a);
- uint64_t x40 = ((uint64_t)x38 & 0x3ffffffffff);
- uint128_t x41 = (x39 + x25);
- uint64_t x42 = (uint64_t) (x41 >> 0x2a);
- uint64_t x43 = ((uint64_t)x41 & 0x3ffffffffff);
- uint128_t x44 = (x42 + x24);
- uint64_t x45 = (uint64_t) (x44 >> 0x29);
- uint64_t x46 = ((uint64_t)x44 & 0x1ffffffffff);
- uint64_t x47 = (x31 + (0x9 * x45));
- uint64_t x48 = (x47 >> 0x2a);
- uint64_t x49 = (x47 & 0x3ffffffffff);
- uint64_t x50 = (x48 + x34);
- uint64_t x51 = (x50 >> 0x2a);
- uint64_t x52 = (x50 & 0x3ffffffffff);
- return (Return x46, Return x43, Return x40, (x51 + x37), Return x52, Return x49))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e251m9_6limbs/femulDisplay.v b/src/Specific/solinas64_2e251m9_6limbs/femulDisplay.v
deleted file mode 100644
index ef9e72aa5..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e251m9_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e251m9_6limbs/fesquare.c b/src/Specific/solinas64_2e251m9_6limbs/fesquare.c
deleted file mode 100644
index d638fab8c..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/fesquare.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void fesquare(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x11 = (((uint128_t)x2 * x9) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x9 * x2))))));
- { uint128_t x12 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x9 * (0x2 * ((uint128_t)x9 * x9))));
- { uint128_t x13 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x9 * ((0x2 * ((uint128_t)x10 * x9)) + (0x2 * ((uint128_t)x9 * x10)))));
- { uint128_t x14 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x9 * ((0x2 * ((uint128_t)x8 * x9)) + ((0x2 * ((uint128_t)x10 * x10)) + (0x2 * ((uint128_t)x9 * x8))))));
- { uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x9 * ((0x2 * ((uint128_t)x6 * x9)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + (0x2 * ((uint128_t)x9 * x6)))))));
- { uint128_t x16 = (((uint128_t)x2 * x2) + (0x9 * ((0x2 * ((uint128_t)x4 * x9)) + ((0x2 * ((uint128_t)x6 * x10)) + ((0x2 * ((uint128_t)x8 * x8)) + ((0x2 * ((uint128_t)x10 * x6)) + (0x2 * ((uint128_t)x9 * x4))))))));
- { uint64_t x17 = (uint64_t) (x16 >> 0x2a);
- { uint64_t x18 = ((uint64_t)x16 & 0x3ffffffffff);
- { uint128_t x19 = (x17 + x15);
- { uint64_t x20 = (uint64_t) (x19 >> 0x2a);
- { uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffff);
- { uint128_t x22 = (x20 + x14);
- { uint64_t x23 = (uint64_t) (x22 >> 0x2a);
- { uint64_t x24 = ((uint64_t)x22 & 0x3ffffffffff);
- { uint128_t x25 = (x23 + x13);
- { uint64_t x26 = (uint64_t) (x25 >> 0x2a);
- { uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffff);
- { uint128_t x28 = (x26 + x12);
- { uint64_t x29 = (uint64_t) (x28 >> 0x2a);
- { uint64_t x30 = ((uint64_t)x28 & 0x3ffffffffff);
- { uint128_t x31 = (x29 + x11);
- { uint64_t x32 = (uint64_t) (x31 >> 0x29);
- { uint64_t x33 = ((uint64_t)x31 & 0x1ffffffffff);
- { uint64_t x34 = (x18 + (0x9 * x32));
- { uint64_t x35 = (x34 >> 0x2a);
- { uint64_t x36 = (x34 & 0x3ffffffffff);
- { uint64_t x37 = (x35 + x21);
- { uint64_t x38 = (x37 >> 0x2a);
- { uint64_t x39 = (x37 & 0x3ffffffffff);
- out[0] = x36;
- out[1] = x39;
- out[2] = (x38 + x24);
- out[3] = x27;
- out[4] = x30;
- out[5] = x33;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e251m9_6limbs/fesquare.v b/src/Specific/solinas64_2e251m9_6limbs/fesquare.v
deleted file mode 100644
index 0875affc5..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e251m9_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/solinas64_2e251m9_6limbs/fesquareDisplay.log b/src/Specific/solinas64_2e251m9_6limbs/fesquareDisplay.log
deleted file mode 100644
index a59d1e7f0..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint128_t x11 = (((uint128_t)x2 * x9) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x9 * x2))))));
- uint128_t x12 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x9 * (0x2 * ((uint128_t)x9 * x9))));
- uint128_t x13 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x9 * ((0x2 * ((uint128_t)x10 * x9)) + (0x2 * ((uint128_t)x9 * x10)))));
- uint128_t x14 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x9 * ((0x2 * ((uint128_t)x8 * x9)) + ((0x2 * ((uint128_t)x10 * x10)) + (0x2 * ((uint128_t)x9 * x8))))));
- uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x9 * ((0x2 * ((uint128_t)x6 * x9)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + (0x2 * ((uint128_t)x9 * x6)))))));
- uint128_t x16 = (((uint128_t)x2 * x2) + (0x9 * ((0x2 * ((uint128_t)x4 * x9)) + ((0x2 * ((uint128_t)x6 * x10)) + ((0x2 * ((uint128_t)x8 * x8)) + ((0x2 * ((uint128_t)x10 * x6)) + (0x2 * ((uint128_t)x9 * x4))))))));
- uint64_t x17 = (uint64_t) (x16 >> 0x2a);
- uint64_t x18 = ((uint64_t)x16 & 0x3ffffffffff);
- uint128_t x19 = (x17 + x15);
- uint64_t x20 = (uint64_t) (x19 >> 0x2a);
- uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffff);
- uint128_t x22 = (x20 + x14);
- uint64_t x23 = (uint64_t) (x22 >> 0x2a);
- uint64_t x24 = ((uint64_t)x22 & 0x3ffffffffff);
- uint128_t x25 = (x23 + x13);
- uint64_t x26 = (uint64_t) (x25 >> 0x2a);
- uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffff);
- uint128_t x28 = (x26 + x12);
- uint64_t x29 = (uint64_t) (x28 >> 0x2a);
- uint64_t x30 = ((uint64_t)x28 & 0x3ffffffffff);
- uint128_t x31 = (x29 + x11);
- uint64_t x32 = (uint64_t) (x31 >> 0x29);
- uint64_t x33 = ((uint64_t)x31 & 0x1ffffffffff);
- uint64_t x34 = (x18 + (0x9 * x32));
- uint64_t x35 = (x34 >> 0x2a);
- uint64_t x36 = (x34 & 0x3ffffffffff);
- uint64_t x37 = (x35 + x21);
- uint64_t x38 = (x37 >> 0x2a);
- uint64_t x39 = (x37 & 0x3ffffffffff);
- return (Return x33, Return x30, Return x27, (x38 + x24), Return x39, Return x36))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e251m9_6limbs/fesquareDisplay.v b/src/Specific/solinas64_2e251m9_6limbs/fesquareDisplay.v
deleted file mode 100644
index 47da873c9..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e251m9_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e251m9_6limbs/fesub.c b/src/Specific/solinas64_2e251m9_6limbs/fesub.c
deleted file mode 100644
index 9d2eb1e15..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/fesub.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- out[0] = ((0x7ffffffffee + x5) - x15);
- out[1] = ((0x7fffffffffe + x7) - x17);
- out[2] = ((0x7fffffffffe + x9) - x19);
- out[3] = ((0x7fffffffffe + x11) - x21);
- out[4] = ((0x7fffffffffe + x13) - x23);
- out[5] = ((0x3fffffffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e251m9_6limbs/fesub.v b/src/Specific/solinas64_2e251m9_6limbs/fesub.v
deleted file mode 100644
index e9104a79a..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e251m9_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/solinas64_2e251m9_6limbs/fesubDisplay.log b/src/Specific/solinas64_2e251m9_6limbs/fesubDisplay.log
deleted file mode 100644
index a26e3d339..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- (((0x3fffffffffe + x12) - x22), ((0x7fffffffffe + x13) - x23), ((0x7fffffffffe + x11) - x21), ((0x7fffffffffe + x9) - x19), ((0x7fffffffffe + x7) - x17), ((0x7ffffffffee + x5) - x15)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e251m9_6limbs/fesubDisplay.v b/src/Specific/solinas64_2e251m9_6limbs/fesubDisplay.v
deleted file mode 100644
index 0a354a981..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e251m9_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e251m9_6limbs/freeze.c b/src/Specific/solinas64_2e251m9_6limbs/freeze.c
deleted file mode 100644
index fe46a1ce4..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/freeze.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void freeze(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffff7);
- { uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0x3ffffffffff);
- { uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0x3ffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0x3ffffffffff);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0x3ffffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0x1ffffffffff);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0x3fffffffff7);
- { uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint64_t x34 = (x29 & 0x3ffffffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- { uint64_t x38 = (x29 & 0x3ffffffffff);
- { uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- { uint64_t x42 = (x29 & 0x3ffffffffff);
- { uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- { uint64_t x46 = (x29 & 0x3ffffffffff);
- { uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- { uint64_t x50 = (x29 & 0x1ffffffffff);
- { uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (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/solinas64_2e251m9_6limbs/freeze.v b/src/Specific/solinas64_2e251m9_6limbs/freeze.v
deleted file mode 100644
index 4467c14ca..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e251m9_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/solinas64_2e251m9_6limbs/freezeDisplay.log b/src/Specific/solinas64_2e251m9_6limbs/freezeDisplay.log
deleted file mode 100644
index 7bead6d62..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/freezeDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffff7);
- uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0x3ffffffffff);
- uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0x3ffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0x3ffffffffff);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0x3ffffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0x1ffffffffff);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0x3fffffffff7);
- uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint64_t x34 = (x29 & 0x3ffffffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- uint64_t x38 = (x29 & 0x3ffffffffff);
- uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- uint64_t x42 = (x29 & 0x3ffffffffff);
- uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- uint64_t x46 = (x29 & 0x3ffffffffff);
- uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- uint64_t x50 = (x29 & 0x1ffffffffff);
- uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 41 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x49, Return x27, Return x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e251m9_6limbs/freezeDisplay.v b/src/Specific/solinas64_2e251m9_6limbs/freezeDisplay.v
deleted file mode 100644
index f8f8577f8..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e251m9_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e251m9_6limbs/py_interpreter.sh b/src/Specific/solinas64_2e251m9_6limbs/py_interpreter.sh
deleted file mode 100755
index 5b22eb504..000000000
--- a/src/Specific/solinas64_2e251m9_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**251 - 9' -Dmodulus_bytes='41 + 5/6' -Da24='121665'
diff --git a/src/Specific/solinas64_2e255m19_5limbs/CurveParameters.v b/src/Specific/solinas64_2e255m19_5limbs/CurveParameters.v
deleted file mode 100644
index 652d9dce7..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^255 - 19
-Base: 51
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 51;
- bitwidth := 64;
- s := 2^255;
- c := [(1, 19)];
- carry_chains := Some [seq 0 (pred 5); [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/solinas64_2e255m19_5limbs/Synthesis.v b/src/Specific/solinas64_2e255m19_5limbs/Synthesis.v
deleted file mode 100644
index 25b0e46c2..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs.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/solinas64_2e255m19_5limbs/compiler.sh b/src/Specific/solinas64_2e255m19_5limbs/compiler.sh
deleted file mode 100755
index f41d62ddd..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<255) - 19' "$@"
diff --git a/src/Specific/solinas64_2e255m19_5limbs/compilerxx.sh b/src/Specific/solinas64_2e255m19_5limbs/compilerxx.sh
deleted file mode 100755
index 2d913f55d..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<255) - 19' "$@"
diff --git a/src/Specific/solinas64_2e255m19_5limbs/feadd.c b/src/Specific/solinas64_2e255m19_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e255m19_5limbs/feadd.v b/src/Specific/solinas64_2e255m19_5limbs/feadd.v
deleted file mode 100644
index 83aef70cb..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs.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/solinas64_2e255m19_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e255m19_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m19_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e255m19_5limbs/feaddDisplay.v
deleted file mode 100644
index 606b2a97b..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e255m19_5limbs/fecarry.c b/src/Specific/solinas64_2e255m19_5limbs/fecarry.c
deleted file mode 100644
index 1fe627be4..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/fecarry.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fecarry(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x9 = (x2 >> 0x33);
- { uint64_t x10 = (x2 & 0x7ffffffffffff);
- { uint64_t x11 = (x9 + x4);
- { uint64_t x12 = (x11 >> 0x33);
- { uint64_t x13 = (x11 & 0x7ffffffffffff);
- { uint64_t x14 = (x12 + x6);
- { uint64_t x15 = (x14 >> 0x33);
- { uint64_t x16 = (x14 & 0x7ffffffffffff);
- { uint64_t x17 = (x15 + x8);
- { uint64_t x18 = (x17 >> 0x33);
- { uint64_t x19 = (x17 & 0x7ffffffffffff);
- { uint64_t x20 = (x18 + x7);
- { uint64_t x21 = (x20 >> 0x33);
- { uint64_t x22 = (x20 & 0x7ffffffffffff);
- { uint64_t x23 = (x10 + (0x13 * x21));
- { uint64_t x24 = (x23 >> 0x33);
- { uint64_t x25 = (x23 & 0x7ffffffffffff);
- { uint64_t x26 = (x24 + x13);
- { uint64_t x27 = (x26 >> 0x33);
- { uint64_t x28 = (x26 & 0x7ffffffffffff);
- out[0] = x25;
- out[1] = x28;
- out[2] = (x27 + x16);
- out[3] = x19;
- out[4] = x22;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e255m19_5limbs/fecarry.v b/src/Specific/solinas64_2e255m19_5limbs/fecarry.v
deleted file mode 100644
index 697eabb95..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs.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/solinas64_2e255m19_5limbs/fecarryDisplay.log b/src/Specific/solinas64_2e255m19_5limbs/fecarryDisplay.log
deleted file mode 100644
index 648dc77cf..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/fecarryDisplay.log
+++ /dev/null
@@ -1,27 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x9 = (x2 >> 0x33);
- uint64_t x10 = (x2 & 0x7ffffffffffff);
- uint64_t x11 = (x9 + x4);
- uint64_t x12 = (x11 >> 0x33);
- uint64_t x13 = (x11 & 0x7ffffffffffff);
- uint64_t x14 = (x12 + x6);
- uint64_t x15 = (x14 >> 0x33);
- uint64_t x16 = (x14 & 0x7ffffffffffff);
- uint64_t x17 = (x15 + x8);
- uint64_t x18 = (x17 >> 0x33);
- uint64_t x19 = (x17 & 0x7ffffffffffff);
- uint64_t x20 = (x18 + x7);
- uint64_t x21 = (x20 >> 0x33);
- uint64_t x22 = (x20 & 0x7ffffffffffff);
- uint64_t x23 = (x10 + (0x13 * x21));
- uint64_t x24 = (x23 >> 0x33);
- uint64_t x25 = (x23 & 0x7ffffffffffff);
- uint64_t x26 = (x24 + x13);
- uint64_t x27 = (x26 >> 0x33);
- uint64_t x28 = (x26 & 0x7ffffffffffff);
- return (Return x22, Return x19, (x27 + x16), Return x28, Return x25))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m19_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e255m19_5limbs/fecarryDisplay.v
deleted file mode 100644
index 04b5f1a86..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e255m19_5limbs/femul.c b/src/Specific/solinas64_2e255m19_5limbs/femul.c
deleted file mode 100644
index 8094da7fc..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint128_t x20 = (((uint128_t)x5 * x18) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + (((uint128_t)x11 * x15) + ((uint128_t)x10 * x13)))));
- { uint128_t x21 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + (((uint128_t)x9 * x15) + ((uint128_t)x11 * x13)))) + (0x13 * ((uint128_t)x10 * x18)));
- { uint128_t x22 = ((((uint128_t)x5 * x17) + (((uint128_t)x7 * x15) + ((uint128_t)x9 * x13))) + (0x13 * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- { uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x13 * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- { uint128_t x24 = (((uint128_t)x5 * x13) + (0x13 * (((uint128_t)x7 * x18) + (((uint128_t)x9 * x19) + (((uint128_t)x11 * x17) + ((uint128_t)x10 * x15))))));
- { uint64_t x25 = (uint64_t) (x24 >> 0x33);
- { uint64_t x26 = ((uint64_t)x24 & 0x7ffffffffffff);
- { uint128_t x27 = (x25 + x23);
- { uint64_t x28 = (uint64_t) (x27 >> 0x33);
- { uint64_t x29 = ((uint64_t)x27 & 0x7ffffffffffff);
- { uint128_t x30 = (x28 + x22);
- { uint64_t x31 = (uint64_t) (x30 >> 0x33);
- { uint64_t x32 = ((uint64_t)x30 & 0x7ffffffffffff);
- { uint128_t x33 = (x31 + x21);
- { uint64_t x34 = (uint64_t) (x33 >> 0x33);
- { uint64_t x35 = ((uint64_t)x33 & 0x7ffffffffffff);
- { uint128_t x36 = (x34 + x20);
- { uint64_t x37 = (uint64_t) (x36 >> 0x33);
- { uint64_t x38 = ((uint64_t)x36 & 0x7ffffffffffff);
- { uint64_t x39 = (x26 + (0x13 * x37));
- { uint64_t x40 = (x39 >> 0x33);
- { uint64_t x41 = (x39 & 0x7ffffffffffff);
- { uint64_t x42 = (x40 + x29);
- { uint64_t x43 = (x42 >> 0x33);
- { uint64_t x44 = (x42 & 0x7ffffffffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e255m19_5limbs/femul.v b/src/Specific/solinas64_2e255m19_5limbs/femul.v
deleted file mode 100644
index 4372e68e9..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs.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/solinas64_2e255m19_5limbs/femulDisplay.log b/src/Specific/solinas64_2e255m19_5limbs/femulDisplay.log
deleted file mode 100644
index 7a2eeb7b0..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = (((uint128_t)x5 * x18) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + (((uint128_t)x11 * x15) + ((uint128_t)x10 * x13)))));
- uint128_t x21 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + (((uint128_t)x9 * x15) + ((uint128_t)x11 * x13)))) + (0x13 * ((uint128_t)x10 * x18)));
- uint128_t x22 = ((((uint128_t)x5 * x17) + (((uint128_t)x7 * x15) + ((uint128_t)x9 * x13))) + (0x13 * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x13 * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- uint128_t x24 = (((uint128_t)x5 * x13) + (0x13 * (((uint128_t)x7 * x18) + (((uint128_t)x9 * x19) + (((uint128_t)x11 * x17) + ((uint128_t)x10 * x15))))));
- uint64_t x25 = (uint64_t) (x24 >> 0x33);
- uint64_t x26 = ((uint64_t)x24 & 0x7ffffffffffff);
- uint128_t x27 = (x25 + x23);
- uint64_t x28 = (uint64_t) (x27 >> 0x33);
- uint64_t x29 = ((uint64_t)x27 & 0x7ffffffffffff);
- uint128_t x30 = (x28 + x22);
- uint64_t x31 = (uint64_t) (x30 >> 0x33);
- uint64_t x32 = ((uint64_t)x30 & 0x7ffffffffffff);
- uint128_t x33 = (x31 + x21);
- uint64_t x34 = (uint64_t) (x33 >> 0x33);
- uint64_t x35 = ((uint64_t)x33 & 0x7ffffffffffff);
- uint128_t x36 = (x34 + x20);
- uint64_t x37 = (uint64_t) (x36 >> 0x33);
- uint64_t x38 = ((uint64_t)x36 & 0x7ffffffffffff);
- uint64_t x39 = (x26 + (0x13 * x37));
- uint64_t x40 = (x39 >> 0x33);
- uint64_t x41 = (x39 & 0x7ffffffffffff);
- uint64_t x42 = (x40 + x29);
- uint64_t x43 = (x42 >> 0x33);
- uint64_t x44 = (x42 & 0x7ffffffffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m19_5limbs/femulDisplay.v b/src/Specific/solinas64_2e255m19_5limbs/femulDisplay.v
deleted file mode 100644
index b8435a18d..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e255m19_5limbs/fesquare.c b/src/Specific/solinas64_2e255m19_5limbs/fesquare.c
deleted file mode 100644
index 909c3289c..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x9 = (((uint128_t)x2 * x7) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x7 * x2)))));
- { uint128_t x10 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x13 * ((uint128_t)x7 * x7)));
- { uint128_t x11 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x13 * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- { uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x13 * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- { uint128_t x13 = (((uint128_t)x2 * x2) + (0x13 * (((uint128_t)x4 * x7) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((uint128_t)x7 * x4))))));
- { uint64_t x14 = (uint64_t) (x13 >> 0x33);
- { uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffffff);
- { uint128_t x16 = (x14 + x12);
- { uint64_t x17 = (uint64_t) (x16 >> 0x33);
- { uint64_t x18 = ((uint64_t)x16 & 0x7ffffffffffff);
- { uint128_t x19 = (x17 + x11);
- { uint64_t x20 = (uint64_t) (x19 >> 0x33);
- { uint64_t x21 = ((uint64_t)x19 & 0x7ffffffffffff);
- { uint128_t x22 = (x20 + x10);
- { uint64_t x23 = (uint64_t) (x22 >> 0x33);
- { uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffffff);
- { uint128_t x25 = (x23 + x9);
- { uint64_t x26 = (uint64_t) (x25 >> 0x33);
- { uint64_t x27 = ((uint64_t)x25 & 0x7ffffffffffff);
- { uint64_t x28 = (x15 + (0x13 * x26));
- { uint64_t x29 = (x28 >> 0x33);
- { uint64_t x30 = (x28 & 0x7ffffffffffff);
- { uint64_t x31 = (x29 + x18);
- { uint64_t x32 = (x31 >> 0x33);
- { uint64_t x33 = (x31 & 0x7ffffffffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e255m19_5limbs/fesquare.v b/src/Specific/solinas64_2e255m19_5limbs/fesquare.v
deleted file mode 100644
index 2b22d03ae..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs.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/solinas64_2e255m19_5limbs/fesquareDisplay.log b/src/Specific/solinas64_2e255m19_5limbs/fesquareDisplay.log
deleted file mode 100644
index d25c6c497..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint128_t x9 = (((uint128_t)x2 * x7) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x7 * x2)))));
- uint128_t x10 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x13 * ((uint128_t)x7 * x7)));
- uint128_t x11 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x13 * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x13 * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- uint128_t x13 = (((uint128_t)x2 * x2) + (0x13 * (((uint128_t)x4 * x7) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((uint128_t)x7 * x4))))));
- uint64_t x14 = (uint64_t) (x13 >> 0x33);
- uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffffff);
- uint128_t x16 = (x14 + x12);
- uint64_t x17 = (uint64_t) (x16 >> 0x33);
- uint64_t x18 = ((uint64_t)x16 & 0x7ffffffffffff);
- uint128_t x19 = (x17 + x11);
- uint64_t x20 = (uint64_t) (x19 >> 0x33);
- uint64_t x21 = ((uint64_t)x19 & 0x7ffffffffffff);
- uint128_t x22 = (x20 + x10);
- uint64_t x23 = (uint64_t) (x22 >> 0x33);
- uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffffff);
- uint128_t x25 = (x23 + x9);
- uint64_t x26 = (uint64_t) (x25 >> 0x33);
- uint64_t x27 = ((uint64_t)x25 & 0x7ffffffffffff);
- uint64_t x28 = (x15 + (0x13 * x26));
- uint64_t x29 = (x28 >> 0x33);
- uint64_t x30 = (x28 & 0x7ffffffffffff);
- uint64_t x31 = (x29 + x18);
- uint64_t x32 = (x31 >> 0x33);
- uint64_t x33 = (x31 & 0x7ffffffffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m19_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e255m19_5limbs/fesquareDisplay.v
deleted file mode 100644
index e3f0ace5e..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e255m19_5limbs/fesub.c b/src/Specific/solinas64_2e255m19_5limbs/fesub.c
deleted file mode 100644
index c2a419fee..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0xfffffffffffda + x5) - x13);
- out[1] = ((0xffffffffffffe + x7) - x15);
- out[2] = ((0xffffffffffffe + x9) - x17);
- out[3] = ((0xffffffffffffe + x11) - x19);
- out[4] = ((0xffffffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e255m19_5limbs/fesub.v b/src/Specific/solinas64_2e255m19_5limbs/fesub.v
deleted file mode 100644
index be55bfbd5..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs.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/solinas64_2e255m19_5limbs/fesubDisplay.log b/src/Specific/solinas64_2e255m19_5limbs/fesubDisplay.log
deleted file mode 100644
index e85a042f8..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0xffffffffffffe + x10) - x18), ((0xffffffffffffe + x11) - x19), ((0xffffffffffffe + x9) - x17), ((0xffffffffffffe + x7) - x15), ((0xfffffffffffda + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m19_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e255m19_5limbs/fesubDisplay.v
deleted file mode 100644
index 91fb4d15f..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e255m19_5limbs/freeze.c b/src/Specific/solinas64_2e255m19_5limbs/freeze.c
deleted file mode 100644
index 877c579e9..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10; uint8_t/*bool*/ x11 = _subborrow_u51(0x0, x2, 0x7ffffffffffed, &x10);
- { uint64_t x13; uint8_t/*bool*/ x14 = _subborrow_u51(x11, x4, 0x7ffffffffffff, &x13);
- { uint64_t x16; uint8_t/*bool*/ x17 = _subborrow_u51(x14, x6, 0x7ffffffffffff, &x16);
- { uint64_t x19; uint8_t/*bool*/ x20 = _subborrow_u51(x17, x8, 0x7ffffffffffff, &x19);
- { uint64_t x22; uint8_t/*bool*/ x23 = _subborrow_u51(x20, x7, 0x7ffffffffffff, &x22);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0x7ffffffffffed);
- { uint64_t x27; uint8_t/*bool*/ x28 = _addcarryx_u51(0x0, x10, x25, &x27);
- { uint64_t x29 = (x24 & 0x7ffffffffffff);
- { uint64_t x31; uint8_t/*bool*/ x32 = _addcarryx_u51(x28, x13, x29, &x31);
- { uint64_t x33 = (x24 & 0x7ffffffffffff);
- { uint64_t x35; uint8_t/*bool*/ x36 = _addcarryx_u51(x32, x16, x33, &x35);
- { uint64_t x37 = (x24 & 0x7ffffffffffff);
- { uint64_t x39; uint8_t/*bool*/ x40 = _addcarryx_u51(x36, x19, x37, &x39);
- { uint64_t x41 = (x24 & 0x7ffffffffffff);
- { uint64_t x43; uint8_t/*bool*/ _ = _addcarryx_u51(x40, x22, x41, &x43);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e255m19_5limbs/freeze.v b/src/Specific/solinas64_2e255m19_5limbs/freeze.v
deleted file mode 100644
index 4de21db14..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs.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/solinas64_2e255m19_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e255m19_5limbs/freezeDisplay.log
deleted file mode 100644
index 7277e4adb..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t/*bool*/ x11 = subborrow_u51(0x0, x2, 0x7ffffffffffed);
- uint64_t x13, uint8_t/*bool*/ x14 = subborrow_u51(x11, x4, 0x7ffffffffffff);
- uint64_t x16, uint8_t/*bool*/ x17 = subborrow_u51(x14, x6, 0x7ffffffffffff);
- uint64_t x19, uint8_t/*bool*/ x20 = subborrow_u51(x17, x8, 0x7ffffffffffff);
- uint64_t x22, uint8_t/*bool*/ x23 = subborrow_u51(x20, x7, 0x7ffffffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0x7ffffffffffed);
- uint64_t x27, uint8_t/*bool*/ x28 = addcarryx_u51(0x0, x10, x25);
- uint64_t x29 = (x24 & 0x7ffffffffffff);
- uint64_t x31, uint8_t/*bool*/ x32 = addcarryx_u51(x28, x13, x29);
- uint64_t x33 = (x24 & 0x7ffffffffffff);
- uint64_t x35, uint8_t/*bool*/ x36 = addcarryx_u51(x32, x16, x33);
- uint64_t x37 = (x24 & 0x7ffffffffffff);
- uint64_t x39, uint8_t/*bool*/ x40 = addcarryx_u51(x36, x19, x37);
- uint64_t x41 = (x24 & 0x7ffffffffffff);
- uint64_t x43, uint8_t/*bool*/ _ = addcarryx_u51(x40, x22, x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m19_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e255m19_5limbs/freezeDisplay.v
deleted file mode 100644
index 83fe6eec4..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e255m19_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e255m19_5limbs/py_interpreter.sh
deleted file mode 100755
index b561a9733..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**255 - 19' -Dmodulus_bytes='51' -Da24='121665'
diff --git a/src/Specific/solinas64_2e255m19_5limbs_donna/CurveParameters.v b/src/Specific/solinas64_2e255m19_5limbs_donna/CurveParameters.v
deleted file mode 100644
index e128a8a09..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/CurveParameters.v
+++ /dev/null
@@ -1,74 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^255 - 19
-Base: 51
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 51;
- bitwidth := 64;
- s := 2^255;
- c := [(1, 19)];
- carry_chains := Some [seq 0 (pred 5); [0; 1]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := None;
- karatsuba := None;
- montgomery := false;
- freeze := Some true;
- ladderstep := false;
-
- mul_code := Some (fun a b =>
- (* Micro-optimized form from curve25519-donna-c64 by Adam Langley (Google) and Daniel Bernstein. See <https://github.com/agl/curve25519-donna/blob/master/LICENSE.md>. *)
- let '(r4, r3, r2, r1, r0) := a in
- let '(s4, s3, s2, s1, s0) := b in
- dlet t0 := r0 * s0 in
- dlet t1 := r0 * s1 + r1 * s0 in
- dlet t2 := r0 * s2 + r2 * s0 + r1 * s1 in
- dlet t3 := r0 * s3 + r3 * s0 + r1 * s2 + r2 * s1 in
- dlet t4 := r0 * s4 + r4 * s0 + r3 * s1 + r1 * s3 + r2 * s2 in
-
- dlet r4 := r4 * 19 in
- dlet r1 := r1 * 19 in
- dlet r2 := r2 * 19 in
- dlet r3 := r3 * 19 in
-
- dlet t0 := t0 + r4 * s1 + r1 * s4 + r2 * s3 + r3 * s2 in
- dlet t1 := t1 + r4 * s2 + r2 * s4 + r3 * s3 in
- dlet t2 := t2 + r4 * s3 + r3 * s4 in
- dlet t3 := t3 + r4 * s4 in
- (t4, t3, t2, t1, t0)
- );
-
- square_code := Some (fun a =>
- (* Micro-optimized form from curve25519-donna-c64 by Adam Langley (Google) and Daniel Bernstein. See <https://github.com/agl/curve25519-donna/blob/master/LICENSE.md>. *)
- let '(r4, r3, r2, r1, r0) := a in
- dlet d0 := r0 * 2 in
- dlet d1 := r1 * 2 in
- dlet d2 := r2 * 2 * 19 in
- dlet d419 := r4 * 19 in
- dlet d4 := d419 * 2 in
-
- dlet t0 := r0 * r0 + d4 * r1 + (d2 * (r3 )) in
- dlet t1 := d0 * r1 + d4 * r2 + (r3 * (r3 * 19)) in
- dlet t2 := d0 * r2 + r1 * r1 + (d4 * (r3 )) in
- dlet t3 := d0 * r3 + d1 * r2 + (r4 * (d419 )) in
- dlet t4 := d0 * r4 + d1 * r3 + (r2 * (r2 )) in
- (t4, t3, t2, t1, t0)
- );
-
- 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/solinas64_2e255m19_5limbs_donna/Synthesis.v b/src/Specific/solinas64_2e255m19_5limbs_donna/Synthesis.v
deleted file mode 100644
index 51b1a64a7..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs_donna.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/solinas64_2e255m19_5limbs_donna/compiler.sh b/src/Specific/solinas64_2e255m19_5limbs_donna/compiler.sh
deleted file mode 100755
index f41d62ddd..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<255) - 19' "$@"
diff --git a/src/Specific/solinas64_2e255m19_5limbs_donna/compilerxx.sh b/src/Specific/solinas64_2e255m19_5limbs_donna/compilerxx.sh
deleted file mode 100755
index 2d913f55d..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<255) - 19' "$@"
diff --git a/src/Specific/solinas64_2e255m19_5limbs_donna/feadd.c b/src/Specific/solinas64_2e255m19_5limbs_donna/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e255m19_5limbs_donna/feadd.v b/src/Specific/solinas64_2e255m19_5limbs_donna/feadd.v
deleted file mode 100644
index 98e5735f3..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs_donna.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/solinas64_2e255m19_5limbs_donna/feaddDisplay.log b/src/Specific/solinas64_2e255m19_5limbs_donna/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m19_5limbs_donna/feaddDisplay.v b/src/Specific/solinas64_2e255m19_5limbs_donna/feaddDisplay.v
deleted file mode 100644
index 059ef987e..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs_donna.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e255m19_5limbs_donna/fecarry.c b/src/Specific/solinas64_2e255m19_5limbs_donna/fecarry.c
deleted file mode 100644
index 1fe627be4..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/fecarry.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fecarry(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x9 = (x2 >> 0x33);
- { uint64_t x10 = (x2 & 0x7ffffffffffff);
- { uint64_t x11 = (x9 + x4);
- { uint64_t x12 = (x11 >> 0x33);
- { uint64_t x13 = (x11 & 0x7ffffffffffff);
- { uint64_t x14 = (x12 + x6);
- { uint64_t x15 = (x14 >> 0x33);
- { uint64_t x16 = (x14 & 0x7ffffffffffff);
- { uint64_t x17 = (x15 + x8);
- { uint64_t x18 = (x17 >> 0x33);
- { uint64_t x19 = (x17 & 0x7ffffffffffff);
- { uint64_t x20 = (x18 + x7);
- { uint64_t x21 = (x20 >> 0x33);
- { uint64_t x22 = (x20 & 0x7ffffffffffff);
- { uint64_t x23 = (x10 + (0x13 * x21));
- { uint64_t x24 = (x23 >> 0x33);
- { uint64_t x25 = (x23 & 0x7ffffffffffff);
- { uint64_t x26 = (x24 + x13);
- { uint64_t x27 = (x26 >> 0x33);
- { uint64_t x28 = (x26 & 0x7ffffffffffff);
- out[0] = x25;
- out[1] = x28;
- out[2] = (x27 + x16);
- out[3] = x19;
- out[4] = x22;
- }}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e255m19_5limbs_donna/fecarry.v b/src/Specific/solinas64_2e255m19_5limbs_donna/fecarry.v
deleted file mode 100644
index 4b58a2ab5..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs_donna.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/solinas64_2e255m19_5limbs_donna/fecarryDisplay.log b/src/Specific/solinas64_2e255m19_5limbs_donna/fecarryDisplay.log
deleted file mode 100644
index 648dc77cf..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/fecarryDisplay.log
+++ /dev/null
@@ -1,27 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x9 = (x2 >> 0x33);
- uint64_t x10 = (x2 & 0x7ffffffffffff);
- uint64_t x11 = (x9 + x4);
- uint64_t x12 = (x11 >> 0x33);
- uint64_t x13 = (x11 & 0x7ffffffffffff);
- uint64_t x14 = (x12 + x6);
- uint64_t x15 = (x14 >> 0x33);
- uint64_t x16 = (x14 & 0x7ffffffffffff);
- uint64_t x17 = (x15 + x8);
- uint64_t x18 = (x17 >> 0x33);
- uint64_t x19 = (x17 & 0x7ffffffffffff);
- uint64_t x20 = (x18 + x7);
- uint64_t x21 = (x20 >> 0x33);
- uint64_t x22 = (x20 & 0x7ffffffffffff);
- uint64_t x23 = (x10 + (0x13 * x21));
- uint64_t x24 = (x23 >> 0x33);
- uint64_t x25 = (x23 & 0x7ffffffffffff);
- uint64_t x26 = (x24 + x13);
- uint64_t x27 = (x26 >> 0x33);
- uint64_t x28 = (x26 & 0x7ffffffffffff);
- return (Return x22, Return x19, (x27 + x16), Return x28, Return x25))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m19_5limbs_donna/fecarryDisplay.v b/src/Specific/solinas64_2e255m19_5limbs_donna/fecarryDisplay.v
deleted file mode 100644
index 18687ce79..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs_donna.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e255m19_5limbs_donna/femul.c b/src/Specific/solinas64_2e255m19_5limbs_donna/femul.c
deleted file mode 100644
index bfb4c2043..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/femul.c
+++ /dev/null
@@ -1,51 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint128_t x20 = ((uint128_t)x5 * x13);
- { uint128_t x21 = (((uint128_t)x5 * x15) + ((uint128_t)x7 * x13));
- { uint128_t x22 = ((((uint128_t)x5 * x17) + ((uint128_t)x9 * x13)) + ((uint128_t)x7 * x15));
- { uint128_t x23 = (((((uint128_t)x5 * x19) + ((uint128_t)x11 * x13)) + ((uint128_t)x7 * x17)) + ((uint128_t)x9 * x15));
- { uint128_t x24 = ((((((uint128_t)x5 * x18) + ((uint128_t)x10 * x13)) + ((uint128_t)x11 * x15)) + ((uint128_t)x7 * x19)) + ((uint128_t)x9 * x17));
- { uint64_t x25 = (x10 * 0x13);
- { uint64_t x26 = (x7 * 0x13);
- { uint64_t x27 = (x9 * 0x13);
- { uint64_t x28 = (x11 * 0x13);
- { uint128_t x29 = ((((x20 + ((uint128_t)x25 * x15)) + ((uint128_t)x26 * x18)) + ((uint128_t)x27 * x19)) + ((uint128_t)x28 * x17));
- { uint128_t x30 = (((x21 + ((uint128_t)x25 * x17)) + ((uint128_t)x27 * x18)) + ((uint128_t)x28 * x19));
- { uint128_t x31 = ((x22 + ((uint128_t)x25 * x19)) + ((uint128_t)x28 * x18));
- { uint128_t x32 = (x23 + ((uint128_t)x25 * x18));
- { uint64_t x33 = (uint64_t) (x29 >> 0x33);
- { uint64_t x34 = ((uint64_t)x29 & 0x7ffffffffffff);
- { uint128_t x35 = (x33 + x30);
- { uint64_t x36 = (uint64_t) (x35 >> 0x33);
- { uint64_t x37 = ((uint64_t)x35 & 0x7ffffffffffff);
- { uint128_t x38 = (x36 + x31);
- { uint64_t x39 = (uint64_t) (x38 >> 0x33);
- { uint64_t x40 = ((uint64_t)x38 & 0x7ffffffffffff);
- { uint128_t x41 = (x39 + x32);
- { uint64_t x42 = (uint64_t) (x41 >> 0x33);
- { uint64_t x43 = ((uint64_t)x41 & 0x7ffffffffffff);
- { uint128_t x44 = (x42 + x24);
- { uint64_t x45 = (uint64_t) (x44 >> 0x33);
- { uint64_t x46 = ((uint64_t)x44 & 0x7ffffffffffff);
- { uint64_t x47 = (x34 + (0x13 * x45));
- { uint64_t x48 = (x47 >> 0x33);
- { uint64_t x49 = (x47 & 0x7ffffffffffff);
- { uint64_t x50 = (x48 + x37);
- { uint64_t x51 = (x50 >> 0x33);
- { uint64_t x52 = (x50 & 0x7ffffffffffff);
- out[0] = x49;
- out[1] = x52;
- out[2] = (x51 + x40);
- out[3] = x43;
- out[4] = x46;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e255m19_5limbs_donna/femul.v b/src/Specific/solinas64_2e255m19_5limbs_donna/femul.v
deleted file mode 100644
index 279480168..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs_donna.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/solinas64_2e255m19_5limbs_donna/femulDisplay.log b/src/Specific/solinas64_2e255m19_5limbs_donna/femulDisplay.log
deleted file mode 100644
index 6ecb01e51..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = ((uint128_t)x5 * x13);
- uint128_t x21 = (((uint128_t)x5 * x15) + ((uint128_t)x7 * x13));
- uint128_t x22 = ((((uint128_t)x5 * x17) + ((uint128_t)x9 * x13)) + ((uint128_t)x7 * x15));
- uint128_t x23 = (((((uint128_t)x5 * x19) + ((uint128_t)x11 * x13)) + ((uint128_t)x7 * x17)) + ((uint128_t)x9 * x15));
- uint128_t x24 = ((((((uint128_t)x5 * x18) + ((uint128_t)x10 * x13)) + ((uint128_t)x11 * x15)) + ((uint128_t)x7 * x19)) + ((uint128_t)x9 * x17));
- uint64_t x25 = (x10 * 0x13);
- uint64_t x26 = (x7 * 0x13);
- uint64_t x27 = (x9 * 0x13);
- uint64_t x28 = (x11 * 0x13);
- uint128_t x29 = ((((x20 + ((uint128_t)x25 * x15)) + ((uint128_t)x26 * x18)) + ((uint128_t)x27 * x19)) + ((uint128_t)x28 * x17));
- uint128_t x30 = (((x21 + ((uint128_t)x25 * x17)) + ((uint128_t)x27 * x18)) + ((uint128_t)x28 * x19));
- uint128_t x31 = ((x22 + ((uint128_t)x25 * x19)) + ((uint128_t)x28 * x18));
- uint128_t x32 = (x23 + ((uint128_t)x25 * x18));
- uint64_t x33 = (uint64_t) (x29 >> 0x33);
- uint64_t x34 = ((uint64_t)x29 & 0x7ffffffffffff);
- uint128_t x35 = (x33 + x30);
- uint64_t x36 = (uint64_t) (x35 >> 0x33);
- uint64_t x37 = ((uint64_t)x35 & 0x7ffffffffffff);
- uint128_t x38 = (x36 + x31);
- uint64_t x39 = (uint64_t) (x38 >> 0x33);
- uint64_t x40 = ((uint64_t)x38 & 0x7ffffffffffff);
- uint128_t x41 = (x39 + x32);
- uint64_t x42 = (uint64_t) (x41 >> 0x33);
- uint64_t x43 = ((uint64_t)x41 & 0x7ffffffffffff);
- uint128_t x44 = (x42 + x24);
- uint64_t x45 = (uint64_t) (x44 >> 0x33);
- uint64_t x46 = ((uint64_t)x44 & 0x7ffffffffffff);
- uint64_t x47 = (x34 + (0x13 * x45));
- uint64_t x48 = (x47 >> 0x33);
- uint64_t x49 = (x47 & 0x7ffffffffffff);
- uint64_t x50 = (x48 + x37);
- uint64_t x51 = (x50 >> 0x33);
- uint64_t x52 = (x50 & 0x7ffffffffffff);
- return (Return x46, Return x43, (x51 + x40), Return x52, Return x49))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m19_5limbs_donna/femulDisplay.v b/src/Specific/solinas64_2e255m19_5limbs_donna/femulDisplay.v
deleted file mode 100644
index 6e350b13c..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs_donna.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e255m19_5limbs_donna/fesquare.c b/src/Specific/solinas64_2e255m19_5limbs_donna/fesquare.c
deleted file mode 100644
index 9764432b1..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/fesquare.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void fesquare(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x9 = (x2 * 0x2);
- { uint64_t x10 = (x4 * 0x2);
- { uint64_t x11 = ((x6 * 0x2) * 0x13);
- { uint64_t x12 = (x7 * 0x13);
- { uint64_t x13 = (x12 * 0x2);
- { uint128_t x14 = ((((uint128_t)x2 * x2) + ((uint128_t)x13 * x4)) + ((uint128_t)x11 * x8));
- { uint128_t x15 = ((((uint128_t)x9 * x4) + ((uint128_t)x13 * x6)) + ((uint128_t)x8 * (x8 * 0x13)));
- { uint128_t x16 = ((((uint128_t)x9 * x6) + ((uint128_t)x4 * x4)) + ((uint128_t)x13 * x8));
- { uint128_t x17 = ((((uint128_t)x9 * x8) + ((uint128_t)x10 * x6)) + ((uint128_t)x7 * x12));
- { uint128_t x18 = ((((uint128_t)x9 * x7) + ((uint128_t)x10 * x8)) + ((uint128_t)x6 * x6));
- { uint64_t x19 = (uint64_t) (x14 >> 0x33);
- { uint64_t x20 = ((uint64_t)x14 & 0x7ffffffffffff);
- { uint128_t x21 = (x19 + x15);
- { uint64_t x22 = (uint64_t) (x21 >> 0x33);
- { uint64_t x23 = ((uint64_t)x21 & 0x7ffffffffffff);
- { uint128_t x24 = (x22 + x16);
- { uint64_t x25 = (uint64_t) (x24 >> 0x33);
- { uint64_t x26 = ((uint64_t)x24 & 0x7ffffffffffff);
- { uint128_t x27 = (x25 + x17);
- { uint64_t x28 = (uint64_t) (x27 >> 0x33);
- { uint64_t x29 = ((uint64_t)x27 & 0x7ffffffffffff);
- { uint128_t x30 = (x28 + x18);
- { uint64_t x31 = (uint64_t) (x30 >> 0x33);
- { uint64_t x32 = ((uint64_t)x30 & 0x7ffffffffffff);
- { uint64_t x33 = (x20 + (0x13 * x31));
- { uint64_t x34 = (x33 >> 0x33);
- { uint64_t x35 = (x33 & 0x7ffffffffffff);
- { uint64_t x36 = (x34 + x23);
- { uint64_t x37 = (x36 >> 0x33);
- { uint64_t x38 = (x36 & 0x7ffffffffffff);
- out[0] = x35;
- out[1] = x38;
- out[2] = (x37 + x26);
- out[3] = x29;
- out[4] = x32;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e255m19_5limbs_donna/fesquare.v b/src/Specific/solinas64_2e255m19_5limbs_donna/fesquare.v
deleted file mode 100644
index d6f25e43a..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs_donna.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/solinas64_2e255m19_5limbs_donna/fesquareDisplay.log b/src/Specific/solinas64_2e255m19_5limbs_donna/fesquareDisplay.log
deleted file mode 100644
index 8eb7c9e67..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/fesquareDisplay.log
+++ /dev/null
@@ -1,37 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x9 = (x2 * 0x2);
- uint64_t x10 = (x4 * 0x2);
- uint64_t x11 = ((x6 * 0x2) * 0x13);
- uint64_t x12 = (x7 * 0x13);
- uint64_t x13 = (x12 * 0x2);
- uint128_t x14 = ((((uint128_t)x2 * x2) + ((uint128_t)x13 * x4)) + ((uint128_t)x11 * x8));
- uint128_t x15 = ((((uint128_t)x9 * x4) + ((uint128_t)x13 * x6)) + ((uint128_t)x8 * (x8 * 0x13)));
- uint128_t x16 = ((((uint128_t)x9 * x6) + ((uint128_t)x4 * x4)) + ((uint128_t)x13 * x8));
- uint128_t x17 = ((((uint128_t)x9 * x8) + ((uint128_t)x10 * x6)) + ((uint128_t)x7 * x12));
- uint128_t x18 = ((((uint128_t)x9 * x7) + ((uint128_t)x10 * x8)) + ((uint128_t)x6 * x6));
- uint64_t x19 = (uint64_t) (x14 >> 0x33);
- uint64_t x20 = ((uint64_t)x14 & 0x7ffffffffffff);
- uint128_t x21 = (x19 + x15);
- uint64_t x22 = (uint64_t) (x21 >> 0x33);
- uint64_t x23 = ((uint64_t)x21 & 0x7ffffffffffff);
- uint128_t x24 = (x22 + x16);
- uint64_t x25 = (uint64_t) (x24 >> 0x33);
- uint64_t x26 = ((uint64_t)x24 & 0x7ffffffffffff);
- uint128_t x27 = (x25 + x17);
- uint64_t x28 = (uint64_t) (x27 >> 0x33);
- uint64_t x29 = ((uint64_t)x27 & 0x7ffffffffffff);
- uint128_t x30 = (x28 + x18);
- uint64_t x31 = (uint64_t) (x30 >> 0x33);
- uint64_t x32 = ((uint64_t)x30 & 0x7ffffffffffff);
- uint64_t x33 = (x20 + (0x13 * x31));
- uint64_t x34 = (x33 >> 0x33);
- uint64_t x35 = (x33 & 0x7ffffffffffff);
- uint64_t x36 = (x34 + x23);
- uint64_t x37 = (x36 >> 0x33);
- uint64_t x38 = (x36 & 0x7ffffffffffff);
- return (Return x32, Return x29, (x37 + x26), Return x38, Return x35))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m19_5limbs_donna/fesquareDisplay.v b/src/Specific/solinas64_2e255m19_5limbs_donna/fesquareDisplay.v
deleted file mode 100644
index 9cb7597d9..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs_donna.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e255m19_5limbs_donna/fesub.c b/src/Specific/solinas64_2e255m19_5limbs_donna/fesub.c
deleted file mode 100644
index c2a419fee..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0xfffffffffffda + x5) - x13);
- out[1] = ((0xffffffffffffe + x7) - x15);
- out[2] = ((0xffffffffffffe + x9) - x17);
- out[3] = ((0xffffffffffffe + x11) - x19);
- out[4] = ((0xffffffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e255m19_5limbs_donna/fesub.v b/src/Specific/solinas64_2e255m19_5limbs_donna/fesub.v
deleted file mode 100644
index ba562d051..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs_donna.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/solinas64_2e255m19_5limbs_donna/fesubDisplay.log b/src/Specific/solinas64_2e255m19_5limbs_donna/fesubDisplay.log
deleted file mode 100644
index e85a042f8..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0xffffffffffffe + x10) - x18), ((0xffffffffffffe + x11) - x19), ((0xffffffffffffe + x9) - x17), ((0xffffffffffffe + x7) - x15), ((0xfffffffffffda + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m19_5limbs_donna/fesubDisplay.v b/src/Specific/solinas64_2e255m19_5limbs_donna/fesubDisplay.v
deleted file mode 100644
index caeb9f1ff..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs_donna.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e255m19_5limbs_donna/freeze.c b/src/Specific/solinas64_2e255m19_5limbs_donna/freeze.c
deleted file mode 100644
index 877c579e9..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10; uint8_t/*bool*/ x11 = _subborrow_u51(0x0, x2, 0x7ffffffffffed, &x10);
- { uint64_t x13; uint8_t/*bool*/ x14 = _subborrow_u51(x11, x4, 0x7ffffffffffff, &x13);
- { uint64_t x16; uint8_t/*bool*/ x17 = _subborrow_u51(x14, x6, 0x7ffffffffffff, &x16);
- { uint64_t x19; uint8_t/*bool*/ x20 = _subborrow_u51(x17, x8, 0x7ffffffffffff, &x19);
- { uint64_t x22; uint8_t/*bool*/ x23 = _subborrow_u51(x20, x7, 0x7ffffffffffff, &x22);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0x7ffffffffffed);
- { uint64_t x27; uint8_t/*bool*/ x28 = _addcarryx_u51(0x0, x10, x25, &x27);
- { uint64_t x29 = (x24 & 0x7ffffffffffff);
- { uint64_t x31; uint8_t/*bool*/ x32 = _addcarryx_u51(x28, x13, x29, &x31);
- { uint64_t x33 = (x24 & 0x7ffffffffffff);
- { uint64_t x35; uint8_t/*bool*/ x36 = _addcarryx_u51(x32, x16, x33, &x35);
- { uint64_t x37 = (x24 & 0x7ffffffffffff);
- { uint64_t x39; uint8_t/*bool*/ x40 = _addcarryx_u51(x36, x19, x37, &x39);
- { uint64_t x41 = (x24 & 0x7ffffffffffff);
- { uint64_t x43; uint8_t/*bool*/ _ = _addcarryx_u51(x40, x22, x41, &x43);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e255m19_5limbs_donna/freeze.v b/src/Specific/solinas64_2e255m19_5limbs_donna/freeze.v
deleted file mode 100644
index f479b3551..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs_donna.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/solinas64_2e255m19_5limbs_donna/freezeDisplay.log b/src/Specific/solinas64_2e255m19_5limbs_donna/freezeDisplay.log
deleted file mode 100644
index 7277e4adb..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t/*bool*/ x11 = subborrow_u51(0x0, x2, 0x7ffffffffffed);
- uint64_t x13, uint8_t/*bool*/ x14 = subborrow_u51(x11, x4, 0x7ffffffffffff);
- uint64_t x16, uint8_t/*bool*/ x17 = subborrow_u51(x14, x6, 0x7ffffffffffff);
- uint64_t x19, uint8_t/*bool*/ x20 = subborrow_u51(x17, x8, 0x7ffffffffffff);
- uint64_t x22, uint8_t/*bool*/ x23 = subborrow_u51(x20, x7, 0x7ffffffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0x7ffffffffffed);
- uint64_t x27, uint8_t/*bool*/ x28 = addcarryx_u51(0x0, x10, x25);
- uint64_t x29 = (x24 & 0x7ffffffffffff);
- uint64_t x31, uint8_t/*bool*/ x32 = addcarryx_u51(x28, x13, x29);
- uint64_t x33 = (x24 & 0x7ffffffffffff);
- uint64_t x35, uint8_t/*bool*/ x36 = addcarryx_u51(x32, x16, x33);
- uint64_t x37 = (x24 & 0x7ffffffffffff);
- uint64_t x39, uint8_t/*bool*/ x40 = addcarryx_u51(x36, x19, x37);
- uint64_t x41 = (x24 & 0x7ffffffffffff);
- uint64_t x43, uint8_t/*bool*/ _ = addcarryx_u51(x40, x22, x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m19_5limbs_donna/freezeDisplay.v b/src/Specific/solinas64_2e255m19_5limbs_donna/freezeDisplay.v
deleted file mode 100644
index 386ccca71..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m19_5limbs_donna.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e255m19_5limbs_donna/py_interpreter.sh b/src/Specific/solinas64_2e255m19_5limbs_donna/py_interpreter.sh
deleted file mode 100755
index b561a9733..000000000
--- a/src/Specific/solinas64_2e255m19_5limbs_donna/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**255 - 19' -Dmodulus_bytes='51' -Da24='121665'
diff --git a/src/Specific/solinas64_2e255m19_6limbs/CurveParameters.v b/src/Specific/solinas64_2e255m19_6limbs/CurveParameters.v
deleted file mode 100644
index f4dca346a..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^255 - 19
-Base: 42.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 42 + 1/2;
- bitwidth := 64;
- s := 2^255;
- c := [(1, 19)];
- 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/solinas64_2e255m19_6limbs/Synthesis.v b/src/Specific/solinas64_2e255m19_6limbs/Synthesis.v
deleted file mode 100644
index af27f590a..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e255m19_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/solinas64_2e255m19_6limbs/compiler.sh b/src/Specific/solinas64_2e255m19_6limbs/compiler.sh
deleted file mode 100755
index e1a9ebc3a..000000000
--- a/src/Specific/solinas64_2e255m19_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,42,43,42,43,42}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<255) - 19' "$@"
diff --git a/src/Specific/solinas64_2e255m19_6limbs/compilerxx.sh b/src/Specific/solinas64_2e255m19_6limbs/compilerxx.sh
deleted file mode 100755
index a786496dd..000000000
--- a/src/Specific/solinas64_2e255m19_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,42,43,42,43,42}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<255) - 19' "$@"
diff --git a/src/Specific/solinas64_2e255m19_6limbs/feadd.c b/src/Specific/solinas64_2e255m19_6limbs/feadd.c
deleted file mode 100644
index 4a6bfb999..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/feadd.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_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/solinas64_2e255m19_6limbs/feadd.v b/src/Specific/solinas64_2e255m19_6limbs/feadd.v
deleted file mode 100644
index 2a76baf20..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m19_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/solinas64_2e255m19_6limbs/feaddDisplay.log b/src/Specific/solinas64_2e255m19_6limbs/feaddDisplay.log
deleted file mode 100644
index e32995a81..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-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
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m19_6limbs/feaddDisplay.v b/src/Specific/solinas64_2e255m19_6limbs/feaddDisplay.v
deleted file mode 100644
index c0d31eb15..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m19_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e255m19_6limbs/fecarry.c b/src/Specific/solinas64_2e255m19_6limbs/fecarry.c
deleted file mode 100644
index 203bac29b..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/fecarry.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fecarry(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x11 = (x2 >> 0x2b);
- { uint64_t x12 = (x2 & 0x7ffffffffff);
- { uint64_t x13 = (x11 + x4);
- { uint64_t x14 = (x13 >> 0x2a);
- { uint64_t x15 = (x13 & 0x3ffffffffff);
- { uint64_t x16 = (x14 + x6);
- { uint64_t x17 = (x16 >> 0x2b);
- { uint64_t x18 = (x16 & 0x7ffffffffff);
- { uint64_t x19 = (x17 + x8);
- { uint64_t x20 = (x19 >> 0x2a);
- { uint64_t x21 = (x19 & 0x3ffffffffff);
- { uint64_t x22 = (x20 + x10);
- { uint64_t x23 = (x22 >> 0x2b);
- { uint64_t x24 = (x22 & 0x7ffffffffff);
- { uint64_t x25 = (x23 + x9);
- { uint64_t x26 = (x25 >> 0x2a);
- { uint64_t x27 = (x25 & 0x3ffffffffff);
- { uint64_t x28 = (x12 + (0x13 * x26));
- { uint64_t x29 = (x28 >> 0x2b);
- { uint64_t x30 = (x28 & 0x7ffffffffff);
- { uint64_t x31 = (x29 + x15);
- { uint64_t x32 = (x31 >> 0x2a);
- { uint64_t x33 = (x31 & 0x3ffffffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x18);
- out[3] = x21;
- out[4] = x24;
- out[5] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e255m19_6limbs/fecarry.v b/src/Specific/solinas64_2e255m19_6limbs/fecarry.v
deleted file mode 100644
index f5ee6f120..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m19_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/solinas64_2e255m19_6limbs/fecarryDisplay.log b/src/Specific/solinas64_2e255m19_6limbs/fecarryDisplay.log
deleted file mode 100644
index 2bfda9253..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/fecarryDisplay.log
+++ /dev/null
@@ -1,30 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x11 = (x2 >> 0x2b);
- uint64_t x12 = (x2 & 0x7ffffffffff);
- uint64_t x13 = (x11 + x4);
- uint64_t x14 = (x13 >> 0x2a);
- uint64_t x15 = (x13 & 0x3ffffffffff);
- uint64_t x16 = (x14 + x6);
- uint64_t x17 = (x16 >> 0x2b);
- uint64_t x18 = (x16 & 0x7ffffffffff);
- uint64_t x19 = (x17 + x8);
- uint64_t x20 = (x19 >> 0x2a);
- uint64_t x21 = (x19 & 0x3ffffffffff);
- uint64_t x22 = (x20 + x10);
- uint64_t x23 = (x22 >> 0x2b);
- uint64_t x24 = (x22 & 0x7ffffffffff);
- uint64_t x25 = (x23 + x9);
- uint64_t x26 = (x25 >> 0x2a);
- uint64_t x27 = (x25 & 0x3ffffffffff);
- uint64_t x28 = (x12 + (0x13 * x26));
- uint64_t x29 = (x28 >> 0x2b);
- uint64_t x30 = (x28 & 0x7ffffffffff);
- uint64_t x31 = (x29 + x15);
- uint64_t x32 = (x31 >> 0x2a);
- uint64_t x33 = (x31 & 0x3ffffffffff);
- return (Return x27, Return x24, Return x21, (x32 + x18), Return x33, Return x30))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m19_6limbs/fecarryDisplay.v b/src/Specific/solinas64_2e255m19_6limbs/fecarryDisplay.v
deleted file mode 100644
index e7a400506..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m19_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e255m19_6limbs/femul.c b/src/Specific/solinas64_2e255m19_6limbs/femul.c
deleted file mode 100644
index c99e800f9..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/femul.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint128_t x24 = (((uint128_t)x5 * x22) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + (((uint128_t)x13 * x17) + ((uint128_t)x12 * x15))))));
- { uint128_t x25 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + (((uint128_t)x9 * x19) + ((0x2 * ((uint128_t)x11 * x17)) + ((uint128_t)x13 * x15))))) + (0x13 * (0x2 * ((uint128_t)x12 * x22))));
- { uint128_t x26 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + ((uint128_t)x11 * x15)))) + (0x13 * (((uint128_t)x13 * x22) + ((uint128_t)x12 * x23))));
- { uint128_t x27 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((uint128_t)x9 * x15))) + (0x13 * ((0x2 * ((uint128_t)x11 * x22)) + (((uint128_t)x13 * x23) + (0x2 * ((uint128_t)x12 * x21))))));
- { uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (0x13 * (((uint128_t)x9 * x22) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x12 * x19))))));
- { uint128_t x29 = (((uint128_t)x5 * x15) + (0x13 * ((0x2 * ((uint128_t)x7 * x22)) + (((uint128_t)x9 * x23) + ((0x2 * ((uint128_t)x11 * x21)) + (((uint128_t)x13 * x19) + (0x2 * ((uint128_t)x12 * x17))))))));
- { uint64_t x30 = (uint64_t) (x29 >> 0x2b);
- { uint64_t x31 = ((uint64_t)x29 & 0x7ffffffffff);
- { uint128_t x32 = (x30 + x28);
- { uint64_t x33 = (uint64_t) (x32 >> 0x2a);
- { uint64_t x34 = ((uint64_t)x32 & 0x3ffffffffff);
- { uint128_t x35 = (x33 + x27);
- { uint64_t x36 = (uint64_t) (x35 >> 0x2b);
- { uint64_t x37 = ((uint64_t)x35 & 0x7ffffffffff);
- { uint128_t x38 = (x36 + x26);
- { uint64_t x39 = (uint64_t) (x38 >> 0x2a);
- { uint64_t x40 = ((uint64_t)x38 & 0x3ffffffffff);
- { uint128_t x41 = (x39 + x25);
- { uint64_t x42 = (uint64_t) (x41 >> 0x2b);
- { uint64_t x43 = ((uint64_t)x41 & 0x7ffffffffff);
- { uint128_t x44 = (x42 + x24);
- { uint64_t x45 = (uint64_t) (x44 >> 0x2a);
- { uint64_t x46 = ((uint64_t)x44 & 0x3ffffffffff);
- { uint64_t x47 = (x31 + (0x13 * x45));
- { uint64_t x48 = (x47 >> 0x2b);
- { uint64_t x49 = (x47 & 0x7ffffffffff);
- { uint64_t x50 = (x48 + x34);
- { uint64_t x51 = (x50 >> 0x2a);
- { uint64_t x52 = (x50 & 0x3ffffffffff);
- out[0] = x49;
- out[1] = x52;
- out[2] = (x51 + x37);
- out[3] = x40;
- out[4] = x43;
- out[5] = x46;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e255m19_6limbs/femul.v b/src/Specific/solinas64_2e255m19_6limbs/femul.v
deleted file mode 100644
index e9133b85d..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m19_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/solinas64_2e255m19_6limbs/femulDisplay.log b/src/Specific/solinas64_2e255m19_6limbs/femulDisplay.log
deleted file mode 100644
index b29b13537..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint128_t x24 = (((uint128_t)x5 * x22) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + (((uint128_t)x13 * x17) + ((uint128_t)x12 * x15))))));
- uint128_t x25 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + (((uint128_t)x9 * x19) + ((0x2 * ((uint128_t)x11 * x17)) + ((uint128_t)x13 * x15))))) + (0x13 * (0x2 * ((uint128_t)x12 * x22))));
- uint128_t x26 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + ((uint128_t)x11 * x15)))) + (0x13 * (((uint128_t)x13 * x22) + ((uint128_t)x12 * x23))));
- uint128_t x27 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((uint128_t)x9 * x15))) + (0x13 * ((0x2 * ((uint128_t)x11 * x22)) + (((uint128_t)x13 * x23) + (0x2 * ((uint128_t)x12 * x21))))));
- uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (0x13 * (((uint128_t)x9 * x22) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x12 * x19))))));
- uint128_t x29 = (((uint128_t)x5 * x15) + (0x13 * ((0x2 * ((uint128_t)x7 * x22)) + (((uint128_t)x9 * x23) + ((0x2 * ((uint128_t)x11 * x21)) + (((uint128_t)x13 * x19) + (0x2 * ((uint128_t)x12 * x17))))))));
- uint64_t x30 = (uint64_t) (x29 >> 0x2b);
- uint64_t x31 = ((uint64_t)x29 & 0x7ffffffffff);
- uint128_t x32 = (x30 + x28);
- uint64_t x33 = (uint64_t) (x32 >> 0x2a);
- uint64_t x34 = ((uint64_t)x32 & 0x3ffffffffff);
- uint128_t x35 = (x33 + x27);
- uint64_t x36 = (uint64_t) (x35 >> 0x2b);
- uint64_t x37 = ((uint64_t)x35 & 0x7ffffffffff);
- uint128_t x38 = (x36 + x26);
- uint64_t x39 = (uint64_t) (x38 >> 0x2a);
- uint64_t x40 = ((uint64_t)x38 & 0x3ffffffffff);
- uint128_t x41 = (x39 + x25);
- uint64_t x42 = (uint64_t) (x41 >> 0x2b);
- uint64_t x43 = ((uint64_t)x41 & 0x7ffffffffff);
- uint128_t x44 = (x42 + x24);
- uint64_t x45 = (uint64_t) (x44 >> 0x2a);
- uint64_t x46 = ((uint64_t)x44 & 0x3ffffffffff);
- uint64_t x47 = (x31 + (0x13 * x45));
- uint64_t x48 = (x47 >> 0x2b);
- uint64_t x49 = (x47 & 0x7ffffffffff);
- uint64_t x50 = (x48 + x34);
- uint64_t x51 = (x50 >> 0x2a);
- uint64_t x52 = (x50 & 0x3ffffffffff);
- return (Return x46, Return x43, Return x40, (x51 + x37), Return x52, Return x49))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m19_6limbs/femulDisplay.v b/src/Specific/solinas64_2e255m19_6limbs/femulDisplay.v
deleted file mode 100644
index 16567514f..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m19_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e255m19_6limbs/fesquare.c b/src/Specific/solinas64_2e255m19_6limbs/fesquare.c
deleted file mode 100644
index 58321a3b8..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/fesquare.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void fesquare(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x11 = (((uint128_t)x2 * x9) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x9 * x2))))));
- { uint128_t x12 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x13 * (0x2 * ((uint128_t)x9 * x9))));
- { uint128_t x13 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x13 * (((uint128_t)x10 * x9) + ((uint128_t)x9 * x10))));
- { uint128_t x14 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x13 * ((0x2 * ((uint128_t)x8 * x9)) + (((uint128_t)x10 * x10) + (0x2 * ((uint128_t)x9 * x8))))));
- { uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x13 * (((uint128_t)x6 * x9) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((uint128_t)x9 * x6))))));
- { uint128_t x16 = (((uint128_t)x2 * x2) + (0x13 * ((0x2 * ((uint128_t)x4 * x9)) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (0x2 * ((uint128_t)x9 * x4))))))));
- { uint64_t x17 = (uint64_t) (x16 >> 0x2b);
- { uint64_t x18 = ((uint64_t)x16 & 0x7ffffffffff);
- { uint128_t x19 = (x17 + x15);
- { uint64_t x20 = (uint64_t) (x19 >> 0x2a);
- { uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffff);
- { uint128_t x22 = (x20 + x14);
- { uint64_t x23 = (uint64_t) (x22 >> 0x2b);
- { uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffff);
- { uint128_t x25 = (x23 + x13);
- { uint64_t x26 = (uint64_t) (x25 >> 0x2a);
- { uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffff);
- { uint128_t x28 = (x26 + x12);
- { uint64_t x29 = (uint64_t) (x28 >> 0x2b);
- { uint64_t x30 = ((uint64_t)x28 & 0x7ffffffffff);
- { uint128_t x31 = (x29 + x11);
- { uint64_t x32 = (uint64_t) (x31 >> 0x2a);
- { uint64_t x33 = ((uint64_t)x31 & 0x3ffffffffff);
- { uint64_t x34 = (x18 + (0x13 * x32));
- { uint64_t x35 = (x34 >> 0x2b);
- { uint64_t x36 = (x34 & 0x7ffffffffff);
- { uint64_t x37 = (x35 + x21);
- { uint64_t x38 = (x37 >> 0x2a);
- { uint64_t x39 = (x37 & 0x3ffffffffff);
- out[0] = x36;
- out[1] = x39;
- out[2] = (x38 + x24);
- out[3] = x27;
- out[4] = x30;
- out[5] = x33;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e255m19_6limbs/fesquare.v b/src/Specific/solinas64_2e255m19_6limbs/fesquare.v
deleted file mode 100644
index 9356df50f..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m19_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/solinas64_2e255m19_6limbs/fesquareDisplay.log b/src/Specific/solinas64_2e255m19_6limbs/fesquareDisplay.log
deleted file mode 100644
index bd69925ce..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint128_t x11 = (((uint128_t)x2 * x9) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x9 * x2))))));
- uint128_t x12 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x13 * (0x2 * ((uint128_t)x9 * x9))));
- uint128_t x13 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x13 * (((uint128_t)x10 * x9) + ((uint128_t)x9 * x10))));
- uint128_t x14 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x13 * ((0x2 * ((uint128_t)x8 * x9)) + (((uint128_t)x10 * x10) + (0x2 * ((uint128_t)x9 * x8))))));
- uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x13 * (((uint128_t)x6 * x9) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((uint128_t)x9 * x6))))));
- uint128_t x16 = (((uint128_t)x2 * x2) + (0x13 * ((0x2 * ((uint128_t)x4 * x9)) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (0x2 * ((uint128_t)x9 * x4))))))));
- uint64_t x17 = (uint64_t) (x16 >> 0x2b);
- uint64_t x18 = ((uint64_t)x16 & 0x7ffffffffff);
- uint128_t x19 = (x17 + x15);
- uint64_t x20 = (uint64_t) (x19 >> 0x2a);
- uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffff);
- uint128_t x22 = (x20 + x14);
- uint64_t x23 = (uint64_t) (x22 >> 0x2b);
- uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffff);
- uint128_t x25 = (x23 + x13);
- uint64_t x26 = (uint64_t) (x25 >> 0x2a);
- uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffff);
- uint128_t x28 = (x26 + x12);
- uint64_t x29 = (uint64_t) (x28 >> 0x2b);
- uint64_t x30 = ((uint64_t)x28 & 0x7ffffffffff);
- uint128_t x31 = (x29 + x11);
- uint64_t x32 = (uint64_t) (x31 >> 0x2a);
- uint64_t x33 = ((uint64_t)x31 & 0x3ffffffffff);
- uint64_t x34 = (x18 + (0x13 * x32));
- uint64_t x35 = (x34 >> 0x2b);
- uint64_t x36 = (x34 & 0x7ffffffffff);
- uint64_t x37 = (x35 + x21);
- uint64_t x38 = (x37 >> 0x2a);
- uint64_t x39 = (x37 & 0x3ffffffffff);
- return (Return x33, Return x30, Return x27, (x38 + x24), Return x39, Return x36))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m19_6limbs/fesquareDisplay.v b/src/Specific/solinas64_2e255m19_6limbs/fesquareDisplay.v
deleted file mode 100644
index 1666bb1db..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m19_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e255m19_6limbs/fesub.c b/src/Specific/solinas64_2e255m19_6limbs/fesub.c
deleted file mode 100644
index 54f3005a3..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/fesub.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- out[0] = ((0xfffffffffda + x5) - x15);
- out[1] = ((0x7fffffffffe + x7) - x17);
- out[2] = ((0xffffffffffe + x9) - x19);
- out[3] = ((0x7fffffffffe + x11) - x21);
- out[4] = ((0xffffffffffe + x13) - x23);
- out[5] = ((0x7fffffffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e255m19_6limbs/fesub.v b/src/Specific/solinas64_2e255m19_6limbs/fesub.v
deleted file mode 100644
index eb4c67b19..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m19_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/solinas64_2e255m19_6limbs/fesubDisplay.log b/src/Specific/solinas64_2e255m19_6limbs/fesubDisplay.log
deleted file mode 100644
index 486c4c548..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- (((0x7fffffffffe + x12) - x22), ((0xffffffffffe + x13) - x23), ((0x7fffffffffe + x11) - x21), ((0xffffffffffe + x9) - x19), ((0x7fffffffffe + x7) - x17), ((0xfffffffffda + x5) - x15)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m19_6limbs/fesubDisplay.v b/src/Specific/solinas64_2e255m19_6limbs/fesubDisplay.v
deleted file mode 100644
index e9c09ecff..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m19_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e255m19_6limbs/freeze.c b/src/Specific/solinas64_2e255m19_6limbs/freeze.c
deleted file mode 100644
index 3e940b7b5..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/freeze.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void freeze(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12, uint8_t/*bool*/ x13 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 0) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 0)) (0x0, Return x2, 0x7ffffffffed);
- { uint64_t x15, uint8_t/*bool*/ x16 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 0) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 0)) (Return x13, Return x4, 0x3ffffffffff);
- { uint64_t x18, uint8_t/*bool*/ x19 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 0) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 0)) (Return x16, Return x6, 0x7ffffffffff);
- { uint64_t x21, uint8_t/*bool*/ x22 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 0) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 0)) (Return x19, Return x8, 0x3ffffffffff);
- { uint64_t x24, uint8_t/*bool*/ x25 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 0) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 0)) (Return x22, Return x10, 0x7ffffffffff);
- { uint64_t x27, uint8_t/*bool*/ x28 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 0) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 0)) (Return x25, Return x9, 0x3ffffffffff);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0x7ffffffffed);
- { uint64_t x32, uint8_t/*bool*/ x33 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 0) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 0)) (0x0, Return x12, Return x30);
- { uint64_t x34 = (x29 & 0x3ffffffffff);
- { uint64_t x36, uint8_t/*bool*/ x37 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 0) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 0)) (Return x33, Return x15, Return x34);
- { uint64_t x38 = (x29 & 0x7ffffffffff);
- { uint64_t x40, uint8_t/*bool*/ x41 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 0) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 0)) (Return x37, Return x18, Return x38);
- { uint64_t x42 = (x29 & 0x3ffffffffff);
- { uint64_t x44, uint8_t/*bool*/ x45 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 0) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 0)) (Return x41, Return x21, Return x42);
- { uint64_t x46 = (x29 & 0x7ffffffffff);
- { uint64_t x48, uint8_t/*bool*/ x49 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 0) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 0)) (Return x45, Return x24, Return x46);
- { uint64_t x50 = (x29 & 0x3ffffffffff);
- { uint64_t x52, uint8_t/*bool*/ _ = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 0) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 0)) (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/solinas64_2e255m19_6limbs/freeze.v b/src/Specific/solinas64_2e255m19_6limbs/freeze.v
deleted file mode 100644
index 532e0ce8d..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m19_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/solinas64_2e255m19_6limbs/freezeDisplay.log b/src/Specific/solinas64_2e255m19_6limbs/freezeDisplay.log
deleted file mode 100644
index 0d8c4cd4e..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/freezeDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t/*bool*/ x13 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 0) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 0)) (0x0, Return x2, 0x7ffffffffed);
- uint64_t x15, uint8_t/*bool*/ x16 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 0) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 0)) (Return x13, Return x4, 0x3ffffffffff);
- uint64_t x18, uint8_t/*bool*/ x19 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 0) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 0)) (Return x16, Return x6, 0x7ffffffffff);
- uint64_t x21, uint8_t/*bool*/ x22 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 0) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 0)) (Return x19, Return x8, 0x3ffffffffff);
- uint64_t x24, uint8_t/*bool*/ x25 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 0) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 0)) (Return x22, Return x10, 0x7ffffffffff);
- uint64_t x27, uint8_t/*bool*/ x28 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 0) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 0)) (Return x25, Return x9, 0x3ffffffffff);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0x7ffffffffed);
- uint64_t x32, uint8_t/*bool*/ x33 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 0) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 0)) (0x0, Return x12, Return x30);
- uint64_t x34 = (x29 & 0x3ffffffffff);
- uint64_t x36, uint8_t/*bool*/ x37 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 0) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 0)) (Return x33, Return x15, Return x34);
- uint64_t x38 = (x29 & 0x7ffffffffff);
- uint64_t x40, uint8_t/*bool*/ x41 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 0) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 0)) (Return x37, Return x18, Return x38);
- uint64_t x42 = (x29 & 0x3ffffffffff);
- uint64_t x44, uint8_t/*bool*/ x45 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 0) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 0)) (Return x41, Return x21, Return x42);
- uint64_t x46 = (x29 & 0x7ffffffffff);
- uint64_t x48, uint8_t/*bool*/ x49 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 0) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 0)) (Return x45, Return x24, Return x46);
- uint64_t x50 = (x29 & 0x3ffffffffff);
- uint64_t x52, uint8_t/*bool*/ _ = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 0) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 0)) (Return x49, Return x27, Return x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m19_6limbs/freezeDisplay.v b/src/Specific/solinas64_2e255m19_6limbs/freezeDisplay.v
deleted file mode 100644
index 48ccf41f8..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m19_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e255m19_6limbs/py_interpreter.sh b/src/Specific/solinas64_2e255m19_6limbs/py_interpreter.sh
deleted file mode 100755
index 1c9dca679..000000000
--- a/src/Specific/solinas64_2e255m19_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**255 - 19' -Dmodulus_bytes='42.5' -Da24='121665'
diff --git a/src/Specific/solinas64_2e255m765_5limbs/CurveParameters.v b/src/Specific/solinas64_2e255m765_5limbs/CurveParameters.v
deleted file mode 100644
index 39be5d174..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^255 - 765
-Base: 51
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 51;
- bitwidth := 64;
- s := 2^255;
- c := [(1, 765)];
- carry_chains := Some [seq 0 (pred 5); [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/solinas64_2e255m765_5limbs/Synthesis.v b/src/Specific/solinas64_2e255m765_5limbs/Synthesis.v
deleted file mode 100644
index e64adcaf7..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e255m765_5limbs.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/solinas64_2e255m765_5limbs/compiler.sh b/src/Specific/solinas64_2e255m765_5limbs/compiler.sh
deleted file mode 100755
index 1d922df56..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<255) - 765' "$@"
diff --git a/src/Specific/solinas64_2e255m765_5limbs/compilerxx.sh b/src/Specific/solinas64_2e255m765_5limbs/compilerxx.sh
deleted file mode 100755
index 2a06db3ec..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<255) - 765' "$@"
diff --git a/src/Specific/solinas64_2e255m765_5limbs/feadd.c b/src/Specific/solinas64_2e255m765_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e255m765_5limbs/feadd.v b/src/Specific/solinas64_2e255m765_5limbs/feadd.v
deleted file mode 100644
index 1c917ad02..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m765_5limbs.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/solinas64_2e255m765_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e255m765_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m765_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e255m765_5limbs/feaddDisplay.v
deleted file mode 100644
index e9c79ca44..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m765_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e255m765_5limbs/fecarry.v b/src/Specific/solinas64_2e255m765_5limbs/fecarry.v
deleted file mode 100644
index 5f5a74ca4..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m765_5limbs.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/solinas64_2e255m765_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e255m765_5limbs/fecarryDisplay.v
deleted file mode 100644
index 3ab5f27c4..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m765_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e255m765_5limbs/femul.c b/src/Specific/solinas64_2e255m765_5limbs/femul.c
deleted file mode 100644
index 57eb9764f..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint128_t x20 = (((uint128_t)x5 * x18) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + (((uint128_t)x11 * x15) + ((uint128_t)x10 * x13)))));
- { uint128_t x21 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + (((uint128_t)x9 * x15) + ((uint128_t)x11 * x13)))) + (0x2fd * ((uint128_t)x10 * x18)));
- { uint128_t x22 = ((((uint128_t)x5 * x17) + (((uint128_t)x7 * x15) + ((uint128_t)x9 * x13))) + (0x2fd * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- { uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x2fd * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- { uint128_t x24 = (((uint128_t)x5 * x13) + (0x2fd * (((uint128_t)x7 * x18) + (((uint128_t)x9 * x19) + (((uint128_t)x11 * x17) + ((uint128_t)x10 * x15))))));
- { uint128_t x25 = (x24 >> 0x33);
- { uint64_t x26 = ((uint64_t)x24 & 0x7ffffffffffff);
- { uint128_t x27 = (x25 + x23);
- { uint128_t x28 = (x27 >> 0x33);
- { uint64_t x29 = ((uint64_t)x27 & 0x7ffffffffffff);
- { uint128_t x30 = (x28 + x22);
- { uint128_t x31 = (x30 >> 0x33);
- { uint64_t x32 = ((uint64_t)x30 & 0x7ffffffffffff);
- { uint128_t x33 = (x31 + x21);
- { uint128_t x34 = (x33 >> 0x33);
- { uint64_t x35 = ((uint64_t)x33 & 0x7ffffffffffff);
- { uint128_t x36 = (x34 + x20);
- { uint64_t x37 = (uint64_t) (x36 >> 0x33);
- { uint64_t x38 = ((uint64_t)x36 & 0x7ffffffffffff);
- { uint128_t x39 = (x26 + ((uint128_t)0x2fd * x37));
- { uint64_t x40 = (uint64_t) (x39 >> 0x33);
- { uint64_t x41 = ((uint64_t)x39 & 0x7ffffffffffff);
- { uint64_t x42 = (x40 + x29);
- { uint64_t x43 = (x42 >> 0x33);
- { uint64_t x44 = (x42 & 0x7ffffffffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e255m765_5limbs/femul.v b/src/Specific/solinas64_2e255m765_5limbs/femul.v
deleted file mode 100644
index ad14826e5..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m765_5limbs.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/solinas64_2e255m765_5limbs/femulDisplay.log b/src/Specific/solinas64_2e255m765_5limbs/femulDisplay.log
deleted file mode 100644
index 67e30d2d3..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = (((uint128_t)x5 * x18) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + (((uint128_t)x11 * x15) + ((uint128_t)x10 * x13)))));
- uint128_t x21 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + (((uint128_t)x9 * x15) + ((uint128_t)x11 * x13)))) + (0x2fd * ((uint128_t)x10 * x18)));
- uint128_t x22 = ((((uint128_t)x5 * x17) + (((uint128_t)x7 * x15) + ((uint128_t)x9 * x13))) + (0x2fd * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x2fd * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- uint128_t x24 = (((uint128_t)x5 * x13) + (0x2fd * (((uint128_t)x7 * x18) + (((uint128_t)x9 * x19) + (((uint128_t)x11 * x17) + ((uint128_t)x10 * x15))))));
- uint128_t x25 = (x24 >> 0x33);
- uint64_t x26 = ((uint64_t)x24 & 0x7ffffffffffff);
- uint128_t x27 = (x25 + x23);
- uint128_t x28 = (x27 >> 0x33);
- uint64_t x29 = ((uint64_t)x27 & 0x7ffffffffffff);
- uint128_t x30 = (x28 + x22);
- uint128_t x31 = (x30 >> 0x33);
- uint64_t x32 = ((uint64_t)x30 & 0x7ffffffffffff);
- uint128_t x33 = (x31 + x21);
- uint128_t x34 = (x33 >> 0x33);
- uint64_t x35 = ((uint64_t)x33 & 0x7ffffffffffff);
- uint128_t x36 = (x34 + x20);
- uint64_t x37 = (uint64_t) (x36 >> 0x33);
- uint64_t x38 = ((uint64_t)x36 & 0x7ffffffffffff);
- uint128_t x39 = (x26 + ((uint128_t)0x2fd * x37));
- uint64_t x40 = (uint64_t) (x39 >> 0x33);
- uint64_t x41 = ((uint64_t)x39 & 0x7ffffffffffff);
- uint64_t x42 = (x40 + x29);
- uint64_t x43 = (x42 >> 0x33);
- uint64_t x44 = (x42 & 0x7ffffffffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m765_5limbs/femulDisplay.v b/src/Specific/solinas64_2e255m765_5limbs/femulDisplay.v
deleted file mode 100644
index 8c2639511..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m765_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e255m765_5limbs/fesquare.c b/src/Specific/solinas64_2e255m765_5limbs/fesquare.c
deleted file mode 100644
index 31d7686aa..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x9 = (((uint128_t)x2 * x7) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x7 * x2)))));
- { uint128_t x10 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x2fd * ((uint128_t)x7 * x7)));
- { uint128_t x11 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x2fd * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- { uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x2fd * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- { uint128_t x13 = (((uint128_t)x2 * x2) + (0x2fd * (((uint128_t)x4 * x7) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((uint128_t)x7 * x4))))));
- { uint128_t x14 = (x13 >> 0x33);
- { uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffffff);
- { uint128_t x16 = (x14 + x12);
- { uint128_t x17 = (x16 >> 0x33);
- { uint64_t x18 = ((uint64_t)x16 & 0x7ffffffffffff);
- { uint128_t x19 = (x17 + x11);
- { uint128_t x20 = (x19 >> 0x33);
- { uint64_t x21 = ((uint64_t)x19 & 0x7ffffffffffff);
- { uint128_t x22 = (x20 + x10);
- { uint128_t x23 = (x22 >> 0x33);
- { uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffffff);
- { uint128_t x25 = (x23 + x9);
- { uint64_t x26 = (uint64_t) (x25 >> 0x33);
- { uint64_t x27 = ((uint64_t)x25 & 0x7ffffffffffff);
- { uint128_t x28 = (x15 + ((uint128_t)0x2fd * x26));
- { uint64_t x29 = (uint64_t) (x28 >> 0x33);
- { uint64_t x30 = ((uint64_t)x28 & 0x7ffffffffffff);
- { uint64_t x31 = (x29 + x18);
- { uint64_t x32 = (x31 >> 0x33);
- { uint64_t x33 = (x31 & 0x7ffffffffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e255m765_5limbs/fesquare.v b/src/Specific/solinas64_2e255m765_5limbs/fesquare.v
deleted file mode 100644
index 72bda5c31..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m765_5limbs.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/solinas64_2e255m765_5limbs/fesquareDisplay.log b/src/Specific/solinas64_2e255m765_5limbs/fesquareDisplay.log
deleted file mode 100644
index 6c1f6e7f7..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint128_t x9 = (((uint128_t)x2 * x7) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x7 * x2)))));
- uint128_t x10 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x2fd * ((uint128_t)x7 * x7)));
- uint128_t x11 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x2fd * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x2fd * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- uint128_t x13 = (((uint128_t)x2 * x2) + (0x2fd * (((uint128_t)x4 * x7) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((uint128_t)x7 * x4))))));
- uint128_t x14 = (x13 >> 0x33);
- uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffffff);
- uint128_t x16 = (x14 + x12);
- uint128_t x17 = (x16 >> 0x33);
- uint64_t x18 = ((uint64_t)x16 & 0x7ffffffffffff);
- uint128_t x19 = (x17 + x11);
- uint128_t x20 = (x19 >> 0x33);
- uint64_t x21 = ((uint64_t)x19 & 0x7ffffffffffff);
- uint128_t x22 = (x20 + x10);
- uint128_t x23 = (x22 >> 0x33);
- uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffffff);
- uint128_t x25 = (x23 + x9);
- uint64_t x26 = (uint64_t) (x25 >> 0x33);
- uint64_t x27 = ((uint64_t)x25 & 0x7ffffffffffff);
- uint128_t x28 = (x15 + ((uint128_t)0x2fd * x26));
- uint64_t x29 = (uint64_t) (x28 >> 0x33);
- uint64_t x30 = ((uint64_t)x28 & 0x7ffffffffffff);
- uint64_t x31 = (x29 + x18);
- uint64_t x32 = (x31 >> 0x33);
- uint64_t x33 = (x31 & 0x7ffffffffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m765_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e255m765_5limbs/fesquareDisplay.v
deleted file mode 100644
index 1b5085bf0..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m765_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e255m765_5limbs/fesub.c b/src/Specific/solinas64_2e255m765_5limbs/fesub.c
deleted file mode 100644
index ecafe2bad..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0xffffffffffa06 + x5) - x13);
- out[1] = ((0xffffffffffffe + x7) - x15);
- out[2] = ((0xffffffffffffe + x9) - x17);
- out[3] = ((0xffffffffffffe + x11) - x19);
- out[4] = ((0xffffffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e255m765_5limbs/fesub.v b/src/Specific/solinas64_2e255m765_5limbs/fesub.v
deleted file mode 100644
index 1fd30c7d7..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m765_5limbs.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/solinas64_2e255m765_5limbs/fesubDisplay.log b/src/Specific/solinas64_2e255m765_5limbs/fesubDisplay.log
deleted file mode 100644
index 9de59caff..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0xffffffffffffe + x10) - x18), ((0xffffffffffffe + x11) - x19), ((0xffffffffffffe + x9) - x17), ((0xffffffffffffe + x7) - x15), ((0xffffffffffa06 + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m765_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e255m765_5limbs/fesubDisplay.v
deleted file mode 100644
index 82a69ff6e..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m765_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e255m765_5limbs/freeze.c b/src/Specific/solinas64_2e255m765_5limbs/freeze.c
deleted file mode 100644
index e594e5530..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10; uint8_t x11 = _subborrow_u51(0x0, x2, 0x7fffffffffd03, &x10);
- { uint64_t x13; uint8_t x14 = _subborrow_u51(x11, x4, 0x7ffffffffffff, &x13);
- { uint64_t x16; uint8_t x17 = _subborrow_u51(x14, x6, 0x7ffffffffffff, &x16);
- { uint64_t x19; uint8_t x20 = _subborrow_u51(x17, x8, 0x7ffffffffffff, &x19);
- { uint64_t x22; uint8_t x23 = _subborrow_u51(x20, x7, 0x7ffffffffffff, &x22);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0x7fffffffffd03);
- { uint64_t x27; uint8_t x28 = _addcarryx_u51(0x0, x10, x25, &x27);
- { uint64_t x29 = (x24 & 0x7ffffffffffff);
- { uint64_t x31; uint8_t x32 = _addcarryx_u51(x28, x13, x29, &x31);
- { uint64_t x33 = (x24 & 0x7ffffffffffff);
- { uint64_t x35; uint8_t x36 = _addcarryx_u51(x32, x16, x33, &x35);
- { uint64_t x37 = (x24 & 0x7ffffffffffff);
- { uint64_t x39; uint8_t x40 = _addcarryx_u51(x36, x19, x37, &x39);
- { uint64_t x41 = (x24 & 0x7ffffffffffff);
- { uint64_t x43; uint8_t _ = _addcarryx_u51(x40, x22, x41, &x43);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e255m765_5limbs/freeze.v b/src/Specific/solinas64_2e255m765_5limbs/freeze.v
deleted file mode 100644
index d9b1233b7..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m765_5limbs.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/solinas64_2e255m765_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e255m765_5limbs/freezeDisplay.log
deleted file mode 100644
index 32acd112d..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = subborrow_u51(0x0, x2, 0x7fffffffffd03);
- uint64_t x13, uint8_t x14 = subborrow_u51(x11, x4, 0x7ffffffffffff);
- uint64_t x16, uint8_t x17 = subborrow_u51(x14, x6, 0x7ffffffffffff);
- uint64_t x19, uint8_t x20 = subborrow_u51(x17, x8, 0x7ffffffffffff);
- uint64_t x22, uint8_t x23 = subborrow_u51(x20, x7, 0x7ffffffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0x7fffffffffd03);
- uint64_t x27, uint8_t x28 = addcarryx_u51(0x0, x10, x25);
- uint64_t x29 = (x24 & 0x7ffffffffffff);
- uint64_t x31, uint8_t x32 = addcarryx_u51(x28, x13, x29);
- uint64_t x33 = (x24 & 0x7ffffffffffff);
- uint64_t x35, uint8_t x36 = addcarryx_u51(x32, x16, x33);
- uint64_t x37 = (x24 & 0x7ffffffffffff);
- uint64_t x39, uint8_t x40 = addcarryx_u51(x36, x19, x37);
- uint64_t x41 = (x24 & 0x7ffffffffffff);
- uint64_t x43, uint8_t _ = addcarryx_u51(x40, x22, x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m765_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e255m765_5limbs/freezeDisplay.v
deleted file mode 100644
index 491dc13db..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m765_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e255m765_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e255m765_5limbs/py_interpreter.sh
deleted file mode 100755
index 2d13f3145..000000000
--- a/src/Specific/solinas64_2e255m765_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**255 - 765' -Dmodulus_bytes='51' -Da24='121665'
diff --git a/src/Specific/solinas64_2e255m765_6limbs/CurveParameters.v b/src/Specific/solinas64_2e255m765_6limbs/CurveParameters.v
deleted file mode 100644
index a1a80e509..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^255 - 765
-Base: 42.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 42 + 1/2;
- bitwidth := 64;
- s := 2^255;
- c := [(1, 765)];
- 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/solinas64_2e255m765_6limbs/Synthesis.v b/src/Specific/solinas64_2e255m765_6limbs/Synthesis.v
deleted file mode 100644
index 774e42cd2..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e255m765_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/solinas64_2e255m765_6limbs/compiler.sh b/src/Specific/solinas64_2e255m765_6limbs/compiler.sh
deleted file mode 100755
index a9c3baa23..000000000
--- a/src/Specific/solinas64_2e255m765_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,42,43,42,43,42}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<255) - 765' "$@"
diff --git a/src/Specific/solinas64_2e255m765_6limbs/compilerxx.sh b/src/Specific/solinas64_2e255m765_6limbs/compilerxx.sh
deleted file mode 100755
index bdb0e116c..000000000
--- a/src/Specific/solinas64_2e255m765_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,42,43,42,43,42}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0x03}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<255) - 765' "$@"
diff --git a/src/Specific/solinas64_2e255m765_6limbs/feadd.c b/src/Specific/solinas64_2e255m765_6limbs/feadd.c
deleted file mode 100644
index 4a6bfb999..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/feadd.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_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/solinas64_2e255m765_6limbs/feadd.v b/src/Specific/solinas64_2e255m765_6limbs/feadd.v
deleted file mode 100644
index d6d48bc8f..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m765_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/solinas64_2e255m765_6limbs/feaddDisplay.log b/src/Specific/solinas64_2e255m765_6limbs/feaddDisplay.log
deleted file mode 100644
index e32995a81..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-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
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m765_6limbs/feaddDisplay.v b/src/Specific/solinas64_2e255m765_6limbs/feaddDisplay.v
deleted file mode 100644
index 9cf9aed97..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m765_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e255m765_6limbs/fecarry.v b/src/Specific/solinas64_2e255m765_6limbs/fecarry.v
deleted file mode 100644
index acb4e8eca..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m765_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/solinas64_2e255m765_6limbs/fecarryDisplay.v b/src/Specific/solinas64_2e255m765_6limbs/fecarryDisplay.v
deleted file mode 100644
index 1d5190c75..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m765_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e255m765_6limbs/femul.c b/src/Specific/solinas64_2e255m765_6limbs/femul.c
deleted file mode 100644
index 0e0cb8e27..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/femul.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint128_t x24 = (((uint128_t)x5 * x22) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + (((uint128_t)x13 * x17) + ((uint128_t)x12 * x15))))));
- { uint128_t x25 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + (((uint128_t)x9 * x19) + ((0x2 * ((uint128_t)x11 * x17)) + ((uint128_t)x13 * x15))))) + (0x2fd * (0x2 * ((uint128_t)x12 * x22))));
- { uint128_t x26 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + ((uint128_t)x11 * x15)))) + (0x2fd * (((uint128_t)x13 * x22) + ((uint128_t)x12 * x23))));
- { uint128_t x27 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((uint128_t)x9 * x15))) + (0x2fd * ((0x2 * ((uint128_t)x11 * x22)) + (((uint128_t)x13 * x23) + (0x2 * ((uint128_t)x12 * x21))))));
- { uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (0x2fd * (((uint128_t)x9 * x22) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x12 * x19))))));
- { uint128_t x29 = (((uint128_t)x5 * x15) + (0x2fd * ((0x2 * ((uint128_t)x7 * x22)) + (((uint128_t)x9 * x23) + ((0x2 * ((uint128_t)x11 * x21)) + (((uint128_t)x13 * x19) + (0x2 * ((uint128_t)x12 * x17))))))));
- { uint64_t x30 = (uint64_t) (x29 >> 0x2b);
- { uint64_t x31 = ((uint64_t)x29 & 0x7ffffffffff);
- { uint128_t x32 = (x30 + x28);
- { uint64_t x33 = (uint64_t) (x32 >> 0x2a);
- { uint64_t x34 = ((uint64_t)x32 & 0x3ffffffffff);
- { uint128_t x35 = (x33 + x27);
- { uint64_t x36 = (uint64_t) (x35 >> 0x2b);
- { uint64_t x37 = ((uint64_t)x35 & 0x7ffffffffff);
- { uint128_t x38 = (x36 + x26);
- { uint64_t x39 = (uint64_t) (x38 >> 0x2a);
- { uint64_t x40 = ((uint64_t)x38 & 0x3ffffffffff);
- { uint128_t x41 = (x39 + x25);
- { uint64_t x42 = (uint64_t) (x41 >> 0x2b);
- { uint64_t x43 = ((uint64_t)x41 & 0x7ffffffffff);
- { uint128_t x44 = (x42 + x24);
- { uint64_t x45 = (uint64_t) (x44 >> 0x2a);
- { uint64_t x46 = ((uint64_t)x44 & 0x3ffffffffff);
- { uint64_t x47 = (x31 + (0x2fd * x45));
- { uint64_t x48 = (x47 >> 0x2b);
- { uint64_t x49 = (x47 & 0x7ffffffffff);
- { uint64_t x50 = (x48 + x34);
- { uint64_t x51 = (x50 >> 0x2a);
- { uint64_t x52 = (x50 & 0x3ffffffffff);
- out[0] = x49;
- out[1] = x52;
- out[2] = (x51 + x37);
- out[3] = x40;
- out[4] = x43;
- out[5] = x46;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e255m765_6limbs/femul.v b/src/Specific/solinas64_2e255m765_6limbs/femul.v
deleted file mode 100644
index 37b9e8413..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m765_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/solinas64_2e255m765_6limbs/femulDisplay.log b/src/Specific/solinas64_2e255m765_6limbs/femulDisplay.log
deleted file mode 100644
index 1adaefd95..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint128_t x24 = (((uint128_t)x5 * x22) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + (((uint128_t)x13 * x17) + ((uint128_t)x12 * x15))))));
- uint128_t x25 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + (((uint128_t)x9 * x19) + ((0x2 * ((uint128_t)x11 * x17)) + ((uint128_t)x13 * x15))))) + (0x2fd * (0x2 * ((uint128_t)x12 * x22))));
- uint128_t x26 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + ((uint128_t)x11 * x15)))) + (0x2fd * (((uint128_t)x13 * x22) + ((uint128_t)x12 * x23))));
- uint128_t x27 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((uint128_t)x9 * x15))) + (0x2fd * ((0x2 * ((uint128_t)x11 * x22)) + (((uint128_t)x13 * x23) + (0x2 * ((uint128_t)x12 * x21))))));
- uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (0x2fd * (((uint128_t)x9 * x22) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x12 * x19))))));
- uint128_t x29 = (((uint128_t)x5 * x15) + (0x2fd * ((0x2 * ((uint128_t)x7 * x22)) + (((uint128_t)x9 * x23) + ((0x2 * ((uint128_t)x11 * x21)) + (((uint128_t)x13 * x19) + (0x2 * ((uint128_t)x12 * x17))))))));
- uint64_t x30 = (uint64_t) (x29 >> 0x2b);
- uint64_t x31 = ((uint64_t)x29 & 0x7ffffffffff);
- uint128_t x32 = (x30 + x28);
- uint64_t x33 = (uint64_t) (x32 >> 0x2a);
- uint64_t x34 = ((uint64_t)x32 & 0x3ffffffffff);
- uint128_t x35 = (x33 + x27);
- uint64_t x36 = (uint64_t) (x35 >> 0x2b);
- uint64_t x37 = ((uint64_t)x35 & 0x7ffffffffff);
- uint128_t x38 = (x36 + x26);
- uint64_t x39 = (uint64_t) (x38 >> 0x2a);
- uint64_t x40 = ((uint64_t)x38 & 0x3ffffffffff);
- uint128_t x41 = (x39 + x25);
- uint64_t x42 = (uint64_t) (x41 >> 0x2b);
- uint64_t x43 = ((uint64_t)x41 & 0x7ffffffffff);
- uint128_t x44 = (x42 + x24);
- uint64_t x45 = (uint64_t) (x44 >> 0x2a);
- uint64_t x46 = ((uint64_t)x44 & 0x3ffffffffff);
- uint64_t x47 = (x31 + (0x2fd * x45));
- uint64_t x48 = (x47 >> 0x2b);
- uint64_t x49 = (x47 & 0x7ffffffffff);
- uint64_t x50 = (x48 + x34);
- uint64_t x51 = (x50 >> 0x2a);
- uint64_t x52 = (x50 & 0x3ffffffffff);
- return (Return x46, Return x43, Return x40, (x51 + x37), Return x52, Return x49))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m765_6limbs/femulDisplay.v b/src/Specific/solinas64_2e255m765_6limbs/femulDisplay.v
deleted file mode 100644
index b8e51db3f..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m765_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e255m765_6limbs/fesquare.c b/src/Specific/solinas64_2e255m765_6limbs/fesquare.c
deleted file mode 100644
index 063e8a157..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/fesquare.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void fesquare(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x11 = (((uint128_t)x2 * x9) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x9 * x2))))));
- { uint128_t x12 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x2fd * (0x2 * ((uint128_t)x9 * x9))));
- { uint128_t x13 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x2fd * (((uint128_t)x10 * x9) + ((uint128_t)x9 * x10))));
- { uint128_t x14 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x2fd * ((0x2 * ((uint128_t)x8 * x9)) + (((uint128_t)x10 * x10) + (0x2 * ((uint128_t)x9 * x8))))));
- { uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x2fd * (((uint128_t)x6 * x9) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((uint128_t)x9 * x6))))));
- { uint128_t x16 = (((uint128_t)x2 * x2) + (0x2fd * ((0x2 * ((uint128_t)x4 * x9)) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (0x2 * ((uint128_t)x9 * x4))))))));
- { uint64_t x17 = (uint64_t) (x16 >> 0x2b);
- { uint64_t x18 = ((uint64_t)x16 & 0x7ffffffffff);
- { uint128_t x19 = (x17 + x15);
- { uint64_t x20 = (uint64_t) (x19 >> 0x2a);
- { uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffff);
- { uint128_t x22 = (x20 + x14);
- { uint64_t x23 = (uint64_t) (x22 >> 0x2b);
- { uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffff);
- { uint128_t x25 = (x23 + x13);
- { uint64_t x26 = (uint64_t) (x25 >> 0x2a);
- { uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffff);
- { uint128_t x28 = (x26 + x12);
- { uint64_t x29 = (uint64_t) (x28 >> 0x2b);
- { uint64_t x30 = ((uint64_t)x28 & 0x7ffffffffff);
- { uint128_t x31 = (x29 + x11);
- { uint64_t x32 = (uint64_t) (x31 >> 0x2a);
- { uint64_t x33 = ((uint64_t)x31 & 0x3ffffffffff);
- { uint64_t x34 = (x18 + (0x2fd * x32));
- { uint64_t x35 = (x34 >> 0x2b);
- { uint64_t x36 = (x34 & 0x7ffffffffff);
- { uint64_t x37 = (x35 + x21);
- { uint64_t x38 = (x37 >> 0x2a);
- { uint64_t x39 = (x37 & 0x3ffffffffff);
- out[0] = x36;
- out[1] = x39;
- out[2] = (x38 + x24);
- out[3] = x27;
- out[4] = x30;
- out[5] = x33;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e255m765_6limbs/fesquare.v b/src/Specific/solinas64_2e255m765_6limbs/fesquare.v
deleted file mode 100644
index 88bdba72f..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m765_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/solinas64_2e255m765_6limbs/fesquareDisplay.log b/src/Specific/solinas64_2e255m765_6limbs/fesquareDisplay.log
deleted file mode 100644
index 0b5898c36..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint128_t x11 = (((uint128_t)x2 * x9) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x9 * x2))))));
- uint128_t x12 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x2fd * (0x2 * ((uint128_t)x9 * x9))));
- uint128_t x13 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x2fd * (((uint128_t)x10 * x9) + ((uint128_t)x9 * x10))));
- uint128_t x14 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x2fd * ((0x2 * ((uint128_t)x8 * x9)) + (((uint128_t)x10 * x10) + (0x2 * ((uint128_t)x9 * x8))))));
- uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x2fd * (((uint128_t)x6 * x9) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((uint128_t)x9 * x6))))));
- uint128_t x16 = (((uint128_t)x2 * x2) + (0x2fd * ((0x2 * ((uint128_t)x4 * x9)) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (0x2 * ((uint128_t)x9 * x4))))))));
- uint64_t x17 = (uint64_t) (x16 >> 0x2b);
- uint64_t x18 = ((uint64_t)x16 & 0x7ffffffffff);
- uint128_t x19 = (x17 + x15);
- uint64_t x20 = (uint64_t) (x19 >> 0x2a);
- uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffff);
- uint128_t x22 = (x20 + x14);
- uint64_t x23 = (uint64_t) (x22 >> 0x2b);
- uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffff);
- uint128_t x25 = (x23 + x13);
- uint64_t x26 = (uint64_t) (x25 >> 0x2a);
- uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffff);
- uint128_t x28 = (x26 + x12);
- uint64_t x29 = (uint64_t) (x28 >> 0x2b);
- uint64_t x30 = ((uint64_t)x28 & 0x7ffffffffff);
- uint128_t x31 = (x29 + x11);
- uint64_t x32 = (uint64_t) (x31 >> 0x2a);
- uint64_t x33 = ((uint64_t)x31 & 0x3ffffffffff);
- uint64_t x34 = (x18 + (0x2fd * x32));
- uint64_t x35 = (x34 >> 0x2b);
- uint64_t x36 = (x34 & 0x7ffffffffff);
- uint64_t x37 = (x35 + x21);
- uint64_t x38 = (x37 >> 0x2a);
- uint64_t x39 = (x37 & 0x3ffffffffff);
- return (Return x33, Return x30, Return x27, (x38 + x24), Return x39, Return x36))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m765_6limbs/fesquareDisplay.v b/src/Specific/solinas64_2e255m765_6limbs/fesquareDisplay.v
deleted file mode 100644
index b1808fff1..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m765_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e255m765_6limbs/fesub.c b/src/Specific/solinas64_2e255m765_6limbs/fesub.c
deleted file mode 100644
index 644fc4bfc..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/fesub.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- out[0] = ((0xffffffffa06 + x5) - x15);
- out[1] = ((0x7fffffffffe + x7) - x17);
- out[2] = ((0xffffffffffe + x9) - x19);
- out[3] = ((0x7fffffffffe + x11) - x21);
- out[4] = ((0xffffffffffe + x13) - x23);
- out[5] = ((0x7fffffffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e255m765_6limbs/fesub.v b/src/Specific/solinas64_2e255m765_6limbs/fesub.v
deleted file mode 100644
index bcbde607f..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m765_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/solinas64_2e255m765_6limbs/fesubDisplay.log b/src/Specific/solinas64_2e255m765_6limbs/fesubDisplay.log
deleted file mode 100644
index 1b0b185f9..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- (((0x7fffffffffe + x12) - x22), ((0xffffffffffe + x13) - x23), ((0x7fffffffffe + x11) - x21), ((0xffffffffffe + x9) - x19), ((0x7fffffffffe + x7) - x17), ((0xffffffffa06 + x5) - x15)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m765_6limbs/fesubDisplay.v b/src/Specific/solinas64_2e255m765_6limbs/fesubDisplay.v
deleted file mode 100644
index b4508830e..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m765_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e255m765_6limbs/freeze.c b/src/Specific/solinas64_2e255m765_6limbs/freeze.c
deleted file mode 100644
index 853fcdf56..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/freeze.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void freeze(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffd03);
- { uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0x3ffffffffff);
- { uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0x7ffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0x3ffffffffff);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0x7ffffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0x3ffffffffff);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0x7fffffffd03);
- { uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint64_t x34 = (x29 & 0x3ffffffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- { uint64_t x38 = (x29 & 0x7ffffffffff);
- { uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- { uint64_t x42 = (x29 & 0x3ffffffffff);
- { uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- { uint64_t x46 = (x29 & 0x7ffffffffff);
- { uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- { uint64_t x50 = (x29 & 0x3ffffffffff);
- { uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (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/solinas64_2e255m765_6limbs/freeze.v b/src/Specific/solinas64_2e255m765_6limbs/freeze.v
deleted file mode 100644
index 83c10eeb3..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e255m765_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/solinas64_2e255m765_6limbs/freezeDisplay.log b/src/Specific/solinas64_2e255m765_6limbs/freezeDisplay.log
deleted file mode 100644
index 1e37295db..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/freezeDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffd03);
- uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0x3ffffffffff);
- uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0x7ffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0x3ffffffffff);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0x7ffffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0x3ffffffffff);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0x7fffffffd03);
- uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint64_t x34 = (x29 & 0x3ffffffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- uint64_t x38 = (x29 & 0x7ffffffffff);
- uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- uint64_t x42 = (x29 & 0x3ffffffffff);
- uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- uint64_t x46 = (x29 & 0x7ffffffffff);
- uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- uint64_t x50 = (x29 & 0x3ffffffffff);
- uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x49, Return x27, Return x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e255m765_6limbs/freezeDisplay.v b/src/Specific/solinas64_2e255m765_6limbs/freezeDisplay.v
deleted file mode 100644
index c23f85313..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e255m765_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e255m765_6limbs/py_interpreter.sh b/src/Specific/solinas64_2e255m765_6limbs/py_interpreter.sh
deleted file mode 100755
index 344f8e65d..000000000
--- a/src/Specific/solinas64_2e255m765_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**255 - 765' -Dmodulus_bytes='42.5' -Da24='121665'
diff --git a/src/Specific/solinas64_2e256m189_5limbs/CurveParameters.v b/src/Specific/solinas64_2e256m189_5limbs/CurveParameters.v
deleted file mode 100644
index 86d4cd268..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256 - 189
-Base: 51.2
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 51 + 1/5;
- bitwidth := 64;
- s := 2^256;
- c := [(1, 189)];
- carry_chains := Some [seq 0 (pred 5); [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/solinas64_2e256m189_5limbs/Synthesis.v b/src/Specific/solinas64_2e256m189_5limbs/Synthesis.v
deleted file mode 100644
index e45a232ee..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e256m189_5limbs.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/solinas64_2e256m189_5limbs/compiler.sh b/src/Specific/solinas64_2e256m189_5limbs/compiler.sh
deleted file mode 100755
index 7591255c7..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<256) - 189' "$@"
diff --git a/src/Specific/solinas64_2e256m189_5limbs/compilerxx.sh b/src/Specific/solinas64_2e256m189_5limbs/compilerxx.sh
deleted file mode 100755
index 5aaed2fc5..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<256) - 189' "$@"
diff --git a/src/Specific/solinas64_2e256m189_5limbs/feadd.c b/src/Specific/solinas64_2e256m189_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m189_5limbs/feadd.v b/src/Specific/solinas64_2e256m189_5limbs/feadd.v
deleted file mode 100644
index a03165e12..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m189_5limbs.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/solinas64_2e256m189_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e256m189_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m189_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e256m189_5limbs/feaddDisplay.v
deleted file mode 100644
index eed304b2b..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m189_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e256m189_5limbs/fecarry.v b/src/Specific/solinas64_2e256m189_5limbs/fecarry.v
deleted file mode 100644
index bcb5eb22f..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m189_5limbs.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/solinas64_2e256m189_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e256m189_5limbs/fecarryDisplay.v
deleted file mode 100644
index 5caf6861d..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m189_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e256m189_5limbs/femul.c b/src/Specific/solinas64_2e256m189_5limbs/femul.c
deleted file mode 100644
index aa2dbbea0..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint128_t x20 = (((uint128_t)x5 * x18) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((0x2 * ((uint128_t)x11 * x15)) + ((uint128_t)x10 * x13)))));
- { uint128_t x21 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((0x2 * ((uint128_t)x9 * x15)) + ((uint128_t)x11 * x13)))) + (0xbd * ((uint128_t)x10 * x18)));
- { uint128_t x22 = ((((uint128_t)x5 * x17) + ((0x2 * ((uint128_t)x7 * x15)) + ((uint128_t)x9 * x13))) + (0xbd * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- { uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0xbd * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- { uint128_t x24 = (((uint128_t)x5 * x13) + (0xbd * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- { uint128_t x25 = (x24 >> 0x34);
- { uint64_t x26 = ((uint64_t)x24 & 0xfffffffffffff);
- { uint128_t x27 = (x25 + x23);
- { uint64_t x28 = (uint64_t) (x27 >> 0x33);
- { uint64_t x29 = ((uint64_t)x27 & 0x7ffffffffffff);
- { uint128_t x30 = (x28 + x22);
- { uint64_t x31 = (uint64_t) (x30 >> 0x33);
- { uint64_t x32 = ((uint64_t)x30 & 0x7ffffffffffff);
- { uint128_t x33 = (x31 + x21);
- { uint64_t x34 = (uint64_t) (x33 >> 0x33);
- { uint64_t x35 = ((uint64_t)x33 & 0x7ffffffffffff);
- { uint128_t x36 = (x34 + x20);
- { uint64_t x37 = (uint64_t) (x36 >> 0x33);
- { uint64_t x38 = ((uint64_t)x36 & 0x7ffffffffffff);
- { uint128_t x39 = (x26 + ((uint128_t)0xbd * x37));
- { uint64_t x40 = (uint64_t) (x39 >> 0x34);
- { uint64_t x41 = ((uint64_t)x39 & 0xfffffffffffff);
- { uint64_t x42 = (x40 + x29);
- { uint64_t x43 = (x42 >> 0x33);
- { uint64_t x44 = (x42 & 0x7ffffffffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m189_5limbs/femul.v b/src/Specific/solinas64_2e256m189_5limbs/femul.v
deleted file mode 100644
index bfffffa3c..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m189_5limbs.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/solinas64_2e256m189_5limbs/femulDisplay.log b/src/Specific/solinas64_2e256m189_5limbs/femulDisplay.log
deleted file mode 100644
index 613afda6e..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = (((uint128_t)x5 * x18) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((0x2 * ((uint128_t)x11 * x15)) + ((uint128_t)x10 * x13)))));
- uint128_t x21 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((0x2 * ((uint128_t)x9 * x15)) + ((uint128_t)x11 * x13)))) + (0xbd * ((uint128_t)x10 * x18)));
- uint128_t x22 = ((((uint128_t)x5 * x17) + ((0x2 * ((uint128_t)x7 * x15)) + ((uint128_t)x9 * x13))) + (0xbd * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0xbd * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- uint128_t x24 = (((uint128_t)x5 * x13) + (0xbd * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- uint128_t x25 = (x24 >> 0x34);
- uint64_t x26 = ((uint64_t)x24 & 0xfffffffffffff);
- uint128_t x27 = (x25 + x23);
- uint64_t x28 = (uint64_t) (x27 >> 0x33);
- uint64_t x29 = ((uint64_t)x27 & 0x7ffffffffffff);
- uint128_t x30 = (x28 + x22);
- uint64_t x31 = (uint64_t) (x30 >> 0x33);
- uint64_t x32 = ((uint64_t)x30 & 0x7ffffffffffff);
- uint128_t x33 = (x31 + x21);
- uint64_t x34 = (uint64_t) (x33 >> 0x33);
- uint64_t x35 = ((uint64_t)x33 & 0x7ffffffffffff);
- uint128_t x36 = (x34 + x20);
- uint64_t x37 = (uint64_t) (x36 >> 0x33);
- uint64_t x38 = ((uint64_t)x36 & 0x7ffffffffffff);
- uint128_t x39 = (x26 + ((uint128_t)0xbd * x37));
- uint64_t x40 = (uint64_t) (x39 >> 0x34);
- uint64_t x41 = ((uint64_t)x39 & 0xfffffffffffff);
- uint64_t x42 = (x40 + x29);
- uint64_t x43 = (x42 >> 0x33);
- uint64_t x44 = (x42 & 0x7ffffffffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m189_5limbs/femulDisplay.v b/src/Specific/solinas64_2e256m189_5limbs/femulDisplay.v
deleted file mode 100644
index 84b21303c..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m189_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e256m189_5limbs/fesquare.c b/src/Specific/solinas64_2e256m189_5limbs/fesquare.c
deleted file mode 100644
index 7eaafeefe..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x9 = (((uint128_t)x2 * x7) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x7 * x2)))));
- { uint128_t x10 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0xbd * ((uint128_t)x7 * x7)));
- { uint128_t x11 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0xbd * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- { uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xbd * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- { uint128_t x13 = (((uint128_t)x2 * x2) + (0xbd * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- { uint128_t x14 = (x13 >> 0x34);
- { uint64_t x15 = ((uint64_t)x13 & 0xfffffffffffff);
- { uint128_t x16 = (x14 + x12);
- { uint64_t x17 = (uint64_t) (x16 >> 0x33);
- { uint64_t x18 = ((uint64_t)x16 & 0x7ffffffffffff);
- { uint128_t x19 = (x17 + x11);
- { uint64_t x20 = (uint64_t) (x19 >> 0x33);
- { uint64_t x21 = ((uint64_t)x19 & 0x7ffffffffffff);
- { uint128_t x22 = (x20 + x10);
- { uint64_t x23 = (uint64_t) (x22 >> 0x33);
- { uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffffff);
- { uint128_t x25 = (x23 + x9);
- { uint64_t x26 = (uint64_t) (x25 >> 0x33);
- { uint64_t x27 = ((uint64_t)x25 & 0x7ffffffffffff);
- { uint128_t x28 = (x15 + ((uint128_t)0xbd * x26));
- { uint64_t x29 = (uint64_t) (x28 >> 0x34);
- { uint64_t x30 = ((uint64_t)x28 & 0xfffffffffffff);
- { uint64_t x31 = (x29 + x18);
- { uint64_t x32 = (x31 >> 0x33);
- { uint64_t x33 = (x31 & 0x7ffffffffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m189_5limbs/fesquare.v b/src/Specific/solinas64_2e256m189_5limbs/fesquare.v
deleted file mode 100644
index 2a46f87c2..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m189_5limbs.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/solinas64_2e256m189_5limbs/fesquareDisplay.log b/src/Specific/solinas64_2e256m189_5limbs/fesquareDisplay.log
deleted file mode 100644
index 6084f98e3..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint128_t x9 = (((uint128_t)x2 * x7) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x7 * x2)))));
- uint128_t x10 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0xbd * ((uint128_t)x7 * x7)));
- uint128_t x11 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0xbd * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xbd * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- uint128_t x13 = (((uint128_t)x2 * x2) + (0xbd * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- uint128_t x14 = (x13 >> 0x34);
- uint64_t x15 = ((uint64_t)x13 & 0xfffffffffffff);
- uint128_t x16 = (x14 + x12);
- uint64_t x17 = (uint64_t) (x16 >> 0x33);
- uint64_t x18 = ((uint64_t)x16 & 0x7ffffffffffff);
- uint128_t x19 = (x17 + x11);
- uint64_t x20 = (uint64_t) (x19 >> 0x33);
- uint64_t x21 = ((uint64_t)x19 & 0x7ffffffffffff);
- uint128_t x22 = (x20 + x10);
- uint64_t x23 = (uint64_t) (x22 >> 0x33);
- uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffffff);
- uint128_t x25 = (x23 + x9);
- uint64_t x26 = (uint64_t) (x25 >> 0x33);
- uint64_t x27 = ((uint64_t)x25 & 0x7ffffffffffff);
- uint128_t x28 = (x15 + ((uint128_t)0xbd * x26));
- uint64_t x29 = (uint64_t) (x28 >> 0x34);
- uint64_t x30 = ((uint64_t)x28 & 0xfffffffffffff);
- uint64_t x31 = (x29 + x18);
- uint64_t x32 = (x31 >> 0x33);
- uint64_t x33 = (x31 & 0x7ffffffffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m189_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e256m189_5limbs/fesquareDisplay.v
deleted file mode 100644
index d46eac60b..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m189_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e256m189_5limbs/fesub.c b/src/Specific/solinas64_2e256m189_5limbs/fesub.c
deleted file mode 100644
index 9498fba5a..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0x1ffffffffffe86 + x5) - x13);
- out[1] = ((0xffffffffffffe + x7) - x15);
- out[2] = ((0xffffffffffffe + x9) - x17);
- out[3] = ((0xffffffffffffe + x11) - x19);
- out[4] = ((0xffffffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m189_5limbs/fesub.v b/src/Specific/solinas64_2e256m189_5limbs/fesub.v
deleted file mode 100644
index 3c31f9c41..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m189_5limbs.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/solinas64_2e256m189_5limbs/fesubDisplay.log b/src/Specific/solinas64_2e256m189_5limbs/fesubDisplay.log
deleted file mode 100644
index 7089f9abe..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0xffffffffffffe + x10) - x18), ((0xffffffffffffe + x11) - x19), ((0xffffffffffffe + x9) - x17), ((0xffffffffffffe + x7) - x15), ((0x1ffffffffffe86 + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m189_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e256m189_5limbs/fesubDisplay.v
deleted file mode 100644
index 5602d0baa..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m189_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e256m189_5limbs/freeze.c b/src/Specific/solinas64_2e256m189_5limbs/freeze.c
deleted file mode 100644
index 3bf5b68f3..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffff43);
- { uint64_t x13; uint8_t x14 = _subborrow_u51(x11, x4, 0x7ffffffffffff, &x13);
- { uint64_t x16; uint8_t x17 = _subborrow_u51(x14, x6, 0x7ffffffffffff, &x16);
- { uint64_t x19; uint8_t x20 = _subborrow_u51(x17, x8, 0x7ffffffffffff, &x19);
- { uint64_t x22; uint8_t x23 = _subborrow_u51(x20, x7, 0x7ffffffffffff, &x22);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0xfffffffffff43);
- { uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint64_t x29 = (x24 & 0x7ffffffffffff);
- { uint64_t x31; uint8_t x32 = _addcarryx_u51(x28, x13, x29, &x31);
- { uint64_t x33 = (x24 & 0x7ffffffffffff);
- { uint64_t x35; uint8_t x36 = _addcarryx_u51(x32, x16, x33, &x35);
- { uint64_t x37 = (x24 & 0x7ffffffffffff);
- { uint64_t x39; uint8_t x40 = _addcarryx_u51(x36, x19, x37, &x39);
- { uint64_t x41 = (x24 & 0x7ffffffffffff);
- { uint64_t x43; uint8_t _ = _addcarryx_u51(x40, x22, x41, &x43);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m189_5limbs/freeze.v b/src/Specific/solinas64_2e256m189_5limbs/freeze.v
deleted file mode 100644
index b2c5f0adc..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m189_5limbs.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/solinas64_2e256m189_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e256m189_5limbs/freezeDisplay.log
deleted file mode 100644
index 601faa4c7..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffff43);
- uint64_t x13, uint8_t x14 = subborrow_u51(x11, x4, 0x7ffffffffffff);
- uint64_t x16, uint8_t x17 = subborrow_u51(x14, x6, 0x7ffffffffffff);
- uint64_t x19, uint8_t x20 = subborrow_u51(x17, x8, 0x7ffffffffffff);
- uint64_t x22, uint8_t x23 = subborrow_u51(x20, x7, 0x7ffffffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0xfffffffffff43);
- uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint64_t x29 = (x24 & 0x7ffffffffffff);
- uint64_t x31, uint8_t x32 = addcarryx_u51(x28, x13, x29);
- uint64_t x33 = (x24 & 0x7ffffffffffff);
- uint64_t x35, uint8_t x36 = addcarryx_u51(x32, x16, x33);
- uint64_t x37 = (x24 & 0x7ffffffffffff);
- uint64_t x39, uint8_t x40 = addcarryx_u51(x36, x19, x37);
- uint64_t x41 = (x24 & 0x7ffffffffffff);
- uint64_t x43, uint8_t _ = addcarryx_u51(x40, x22, x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m189_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e256m189_5limbs/freezeDisplay.v
deleted file mode 100644
index f0cc739b2..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m189_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e256m189_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e256m189_5limbs/py_interpreter.sh
deleted file mode 100755
index 6da421d25..000000000
--- a/src/Specific/solinas64_2e256m189_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256 - 189' -Dmodulus_bytes='51.2' -Da24='121665'
diff --git a/src/Specific/solinas64_2e256m189_6limbs/CurveParameters.v b/src/Specific/solinas64_2e256m189_6limbs/CurveParameters.v
deleted file mode 100644
index 5474b61d9..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256 - 189
-Base: 42 + 2/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 42 + 2/3;
- bitwidth := 64;
- s := 2^256;
- c := [(1, 189)];
- 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/solinas64_2e256m189_6limbs/Synthesis.v b/src/Specific/solinas64_2e256m189_6limbs/Synthesis.v
deleted file mode 100644
index c2218076b..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e256m189_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/solinas64_2e256m189_6limbs/compiler.sh b/src/Specific/solinas64_2e256m189_6limbs/compiler.sh
deleted file mode 100755
index 865c43846..000000000
--- a/src/Specific/solinas64_2e256m189_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,42,43,43,42}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<256) - 189' "$@"
diff --git a/src/Specific/solinas64_2e256m189_6limbs/compilerxx.sh b/src/Specific/solinas64_2e256m189_6limbs/compilerxx.sh
deleted file mode 100755
index 50b1a73df..000000000
--- a/src/Specific/solinas64_2e256m189_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,42,43,43,42}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x43}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<256) - 189' "$@"
diff --git a/src/Specific/solinas64_2e256m189_6limbs/feadd.c b/src/Specific/solinas64_2e256m189_6limbs/feadd.c
deleted file mode 100644
index 4a6bfb999..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/feadd.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_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/solinas64_2e256m189_6limbs/feadd.v b/src/Specific/solinas64_2e256m189_6limbs/feadd.v
deleted file mode 100644
index 41fe92cc7..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m189_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/solinas64_2e256m189_6limbs/feaddDisplay.log b/src/Specific/solinas64_2e256m189_6limbs/feaddDisplay.log
deleted file mode 100644
index e32995a81..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-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
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m189_6limbs/feaddDisplay.v b/src/Specific/solinas64_2e256m189_6limbs/feaddDisplay.v
deleted file mode 100644
index 2d7a86a2f..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m189_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e256m189_6limbs/fecarry.v b/src/Specific/solinas64_2e256m189_6limbs/fecarry.v
deleted file mode 100644
index 5b9c602cf..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m189_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/solinas64_2e256m189_6limbs/fecarryDisplay.v b/src/Specific/solinas64_2e256m189_6limbs/fecarryDisplay.v
deleted file mode 100644
index 3e71f6e64..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m189_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e256m189_6limbs/femul.c b/src/Specific/solinas64_2e256m189_6limbs/femul.c
deleted file mode 100644
index eeb119f7d..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/femul.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint128_t x24 = (((uint128_t)x5 * x22) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + (((uint128_t)x13 * x17) + ((uint128_t)x12 * x15))))));
- { uint128_t x25 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((0x2 * ((uint128_t)x9 * x19)) + (((uint128_t)x11 * x17) + ((uint128_t)x13 * x15))))) + (0xbd * (0x2 * ((uint128_t)x12 * x22))));
- { uint128_t x26 = ((((uint128_t)x5 * x21) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((uint128_t)x11 * x15)))) + (0xbd * ((0x2 * ((uint128_t)x13 * x22)) + (0x2 * ((uint128_t)x12 * x23)))));
- { uint128_t x27 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + ((uint128_t)x9 * x15))) + (0xbd * (((uint128_t)x11 * x22) + (((uint128_t)x13 * x23) + ((uint128_t)x12 * x21)))));
- { uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (0xbd * ((0x2 * ((uint128_t)x9 * x22)) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + (0x2 * ((uint128_t)x12 * x19)))))));
- { uint128_t x29 = (((uint128_t)x5 * x15) + (0xbd * ((0x2 * ((uint128_t)x7 * x22)) + ((0x2 * ((uint128_t)x9 * x23)) + (((uint128_t)x11 * x21) + ((0x2 * ((uint128_t)x13 * x19)) + (0x2 * ((uint128_t)x12 * x17))))))));
- { uint64_t x30 = (uint64_t) (x29 >> 0x2b);
- { uint64_t x31 = ((uint64_t)x29 & 0x7ffffffffff);
- { uint128_t x32 = (x30 + x28);
- { uint64_t x33 = (uint64_t) (x32 >> 0x2b);
- { uint64_t x34 = ((uint64_t)x32 & 0x7ffffffffff);
- { uint128_t x35 = (x33 + x27);
- { uint64_t x36 = (uint64_t) (x35 >> 0x2a);
- { uint64_t x37 = ((uint64_t)x35 & 0x3ffffffffff);
- { uint128_t x38 = (x36 + x26);
- { uint64_t x39 = (uint64_t) (x38 >> 0x2b);
- { uint64_t x40 = ((uint64_t)x38 & 0x7ffffffffff);
- { uint128_t x41 = (x39 + x25);
- { uint64_t x42 = (uint64_t) (x41 >> 0x2b);
- { uint64_t x43 = ((uint64_t)x41 & 0x7ffffffffff);
- { uint128_t x44 = (x42 + x24);
- { uint64_t x45 = (uint64_t) (x44 >> 0x2a);
- { uint64_t x46 = ((uint64_t)x44 & 0x3ffffffffff);
- { uint64_t x47 = (x31 + (0xbd * x45));
- { uint64_t x48 = (x47 >> 0x2b);
- { uint64_t x49 = (x47 & 0x7ffffffffff);
- { uint64_t x50 = (x48 + x34);
- { uint64_t x51 = (x50 >> 0x2b);
- { uint64_t x52 = (x50 & 0x7ffffffffff);
- out[0] = x49;
- out[1] = x52;
- out[2] = (x51 + x37);
- out[3] = x40;
- out[4] = x43;
- out[5] = x46;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m189_6limbs/femul.v b/src/Specific/solinas64_2e256m189_6limbs/femul.v
deleted file mode 100644
index 7dfc68975..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m189_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/solinas64_2e256m189_6limbs/femulDisplay.log b/src/Specific/solinas64_2e256m189_6limbs/femulDisplay.log
deleted file mode 100644
index 5147bd4a8..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint128_t x24 = (((uint128_t)x5 * x22) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + (((uint128_t)x13 * x17) + ((uint128_t)x12 * x15))))));
- uint128_t x25 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((0x2 * ((uint128_t)x9 * x19)) + (((uint128_t)x11 * x17) + ((uint128_t)x13 * x15))))) + (0xbd * (0x2 * ((uint128_t)x12 * x22))));
- uint128_t x26 = ((((uint128_t)x5 * x21) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((uint128_t)x11 * x15)))) + (0xbd * ((0x2 * ((uint128_t)x13 * x22)) + (0x2 * ((uint128_t)x12 * x23)))));
- uint128_t x27 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + ((uint128_t)x9 * x15))) + (0xbd * (((uint128_t)x11 * x22) + (((uint128_t)x13 * x23) + ((uint128_t)x12 * x21)))));
- uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (0xbd * ((0x2 * ((uint128_t)x9 * x22)) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + (0x2 * ((uint128_t)x12 * x19)))))));
- uint128_t x29 = (((uint128_t)x5 * x15) + (0xbd * ((0x2 * ((uint128_t)x7 * x22)) + ((0x2 * ((uint128_t)x9 * x23)) + (((uint128_t)x11 * x21) + ((0x2 * ((uint128_t)x13 * x19)) + (0x2 * ((uint128_t)x12 * x17))))))));
- uint64_t x30 = (uint64_t) (x29 >> 0x2b);
- uint64_t x31 = ((uint64_t)x29 & 0x7ffffffffff);
- uint128_t x32 = (x30 + x28);
- uint64_t x33 = (uint64_t) (x32 >> 0x2b);
- uint64_t x34 = ((uint64_t)x32 & 0x7ffffffffff);
- uint128_t x35 = (x33 + x27);
- uint64_t x36 = (uint64_t) (x35 >> 0x2a);
- uint64_t x37 = ((uint64_t)x35 & 0x3ffffffffff);
- uint128_t x38 = (x36 + x26);
- uint64_t x39 = (uint64_t) (x38 >> 0x2b);
- uint64_t x40 = ((uint64_t)x38 & 0x7ffffffffff);
- uint128_t x41 = (x39 + x25);
- uint64_t x42 = (uint64_t) (x41 >> 0x2b);
- uint64_t x43 = ((uint64_t)x41 & 0x7ffffffffff);
- uint128_t x44 = (x42 + x24);
- uint64_t x45 = (uint64_t) (x44 >> 0x2a);
- uint64_t x46 = ((uint64_t)x44 & 0x3ffffffffff);
- uint64_t x47 = (x31 + (0xbd * x45));
- uint64_t x48 = (x47 >> 0x2b);
- uint64_t x49 = (x47 & 0x7ffffffffff);
- uint64_t x50 = (x48 + x34);
- uint64_t x51 = (x50 >> 0x2b);
- uint64_t x52 = (x50 & 0x7ffffffffff);
- return (Return x46, Return x43, Return x40, (x51 + x37), Return x52, Return x49))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m189_6limbs/femulDisplay.v b/src/Specific/solinas64_2e256m189_6limbs/femulDisplay.v
deleted file mode 100644
index 208441658..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m189_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e256m189_6limbs/fesquare.c b/src/Specific/solinas64_2e256m189_6limbs/fesquare.c
deleted file mode 100644
index b5f9dabbf..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/fesquare.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void fesquare(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x11 = (((uint128_t)x2 * x9) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x9 * x2))))));
- { uint128_t x12 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + ((0x2 * ((uint128_t)x6 * x6)) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0xbd * (0x2 * ((uint128_t)x9 * x9))));
- { uint128_t x13 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0xbd * ((0x2 * ((uint128_t)x10 * x9)) + (0x2 * ((uint128_t)x9 * x10)))));
- { uint128_t x14 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0xbd * (((uint128_t)x8 * x9) + (((uint128_t)x10 * x10) + ((uint128_t)x9 * x8)))));
- { uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xbd * ((0x2 * ((uint128_t)x6 * x9)) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (0x2 * ((uint128_t)x9 * x6)))))));
- { uint128_t x16 = (((uint128_t)x2 * x2) + (0xbd * ((0x2 * ((uint128_t)x4 * x9)) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + (0x2 * ((uint128_t)x9 * x4))))))));
- { uint64_t x17 = (uint64_t) (x16 >> 0x2b);
- { uint64_t x18 = ((uint64_t)x16 & 0x7ffffffffff);
- { uint128_t x19 = (x17 + x15);
- { uint64_t x20 = (uint64_t) (x19 >> 0x2b);
- { uint64_t x21 = ((uint64_t)x19 & 0x7ffffffffff);
- { uint128_t x22 = (x20 + x14);
- { uint64_t x23 = (uint64_t) (x22 >> 0x2a);
- { uint64_t x24 = ((uint64_t)x22 & 0x3ffffffffff);
- { uint128_t x25 = (x23 + x13);
- { uint64_t x26 = (uint64_t) (x25 >> 0x2b);
- { uint64_t x27 = ((uint64_t)x25 & 0x7ffffffffff);
- { uint128_t x28 = (x26 + x12);
- { uint64_t x29 = (uint64_t) (x28 >> 0x2b);
- { uint64_t x30 = ((uint64_t)x28 & 0x7ffffffffff);
- { uint128_t x31 = (x29 + x11);
- { uint64_t x32 = (uint64_t) (x31 >> 0x2a);
- { uint64_t x33 = ((uint64_t)x31 & 0x3ffffffffff);
- { uint64_t x34 = (x18 + (0xbd * x32));
- { uint64_t x35 = (x34 >> 0x2b);
- { uint64_t x36 = (x34 & 0x7ffffffffff);
- { uint64_t x37 = (x35 + x21);
- { uint64_t x38 = (x37 >> 0x2b);
- { uint64_t x39 = (x37 & 0x7ffffffffff);
- out[0] = x36;
- out[1] = x39;
- out[2] = (x38 + x24);
- out[3] = x27;
- out[4] = x30;
- out[5] = x33;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m189_6limbs/fesquare.v b/src/Specific/solinas64_2e256m189_6limbs/fesquare.v
deleted file mode 100644
index 47b683f1c..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m189_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/solinas64_2e256m189_6limbs/fesquareDisplay.log b/src/Specific/solinas64_2e256m189_6limbs/fesquareDisplay.log
deleted file mode 100644
index c679ff673..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint128_t x11 = (((uint128_t)x2 * x9) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x9 * x2))))));
- uint128_t x12 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + ((0x2 * ((uint128_t)x6 * x6)) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0xbd * (0x2 * ((uint128_t)x9 * x9))));
- uint128_t x13 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0xbd * ((0x2 * ((uint128_t)x10 * x9)) + (0x2 * ((uint128_t)x9 * x10)))));
- uint128_t x14 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0xbd * (((uint128_t)x8 * x9) + (((uint128_t)x10 * x10) + ((uint128_t)x9 * x8)))));
- uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xbd * ((0x2 * ((uint128_t)x6 * x9)) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (0x2 * ((uint128_t)x9 * x6)))))));
- uint128_t x16 = (((uint128_t)x2 * x2) + (0xbd * ((0x2 * ((uint128_t)x4 * x9)) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + (0x2 * ((uint128_t)x9 * x4))))))));
- uint64_t x17 = (uint64_t) (x16 >> 0x2b);
- uint64_t x18 = ((uint64_t)x16 & 0x7ffffffffff);
- uint128_t x19 = (x17 + x15);
- uint64_t x20 = (uint64_t) (x19 >> 0x2b);
- uint64_t x21 = ((uint64_t)x19 & 0x7ffffffffff);
- uint128_t x22 = (x20 + x14);
- uint64_t x23 = (uint64_t) (x22 >> 0x2a);
- uint64_t x24 = ((uint64_t)x22 & 0x3ffffffffff);
- uint128_t x25 = (x23 + x13);
- uint64_t x26 = (uint64_t) (x25 >> 0x2b);
- uint64_t x27 = ((uint64_t)x25 & 0x7ffffffffff);
- uint128_t x28 = (x26 + x12);
- uint64_t x29 = (uint64_t) (x28 >> 0x2b);
- uint64_t x30 = ((uint64_t)x28 & 0x7ffffffffff);
- uint128_t x31 = (x29 + x11);
- uint64_t x32 = (uint64_t) (x31 >> 0x2a);
- uint64_t x33 = ((uint64_t)x31 & 0x3ffffffffff);
- uint64_t x34 = (x18 + (0xbd * x32));
- uint64_t x35 = (x34 >> 0x2b);
- uint64_t x36 = (x34 & 0x7ffffffffff);
- uint64_t x37 = (x35 + x21);
- uint64_t x38 = (x37 >> 0x2b);
- uint64_t x39 = (x37 & 0x7ffffffffff);
- return (Return x33, Return x30, Return x27, (x38 + x24), Return x39, Return x36))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m189_6limbs/fesquareDisplay.v b/src/Specific/solinas64_2e256m189_6limbs/fesquareDisplay.v
deleted file mode 100644
index 4f13c5218..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m189_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e256m189_6limbs/fesub.c b/src/Specific/solinas64_2e256m189_6limbs/fesub.c
deleted file mode 100644
index eac8fdfb0..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/fesub.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- out[0] = ((0xffffffffe86 + x5) - x15);
- out[1] = ((0xffffffffffe + x7) - x17);
- out[2] = ((0x7fffffffffe + x9) - x19);
- out[3] = ((0xffffffffffe + x11) - x21);
- out[4] = ((0xffffffffffe + x13) - x23);
- out[5] = ((0x7fffffffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m189_6limbs/fesub.v b/src/Specific/solinas64_2e256m189_6limbs/fesub.v
deleted file mode 100644
index 09924afa2..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m189_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/solinas64_2e256m189_6limbs/fesubDisplay.log b/src/Specific/solinas64_2e256m189_6limbs/fesubDisplay.log
deleted file mode 100644
index 9c0e49430..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- (((0x7fffffffffe + x12) - x22), ((0xffffffffffe + x13) - x23), ((0xffffffffffe + x11) - x21), ((0x7fffffffffe + x9) - x19), ((0xffffffffffe + x7) - x17), ((0xffffffffe86 + x5) - x15)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m189_6limbs/fesubDisplay.v b/src/Specific/solinas64_2e256m189_6limbs/fesubDisplay.v
deleted file mode 100644
index 7c9fdabe9..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m189_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e256m189_6limbs/freeze.c b/src/Specific/solinas64_2e256m189_6limbs/freeze.c
deleted file mode 100644
index 94087a5a2..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/freeze.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void freeze(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffff43);
- { uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0x7ffffffffff);
- { uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0x3ffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0x7ffffffffff);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0x7ffffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0x3ffffffffff);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0x7ffffffff43);
- { uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint64_t x34 = (x29 & 0x7ffffffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- { uint64_t x38 = (x29 & 0x3ffffffffff);
- { uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- { uint64_t x42 = (x29 & 0x7ffffffffff);
- { uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- { uint64_t x46 = (x29 & 0x7ffffffffff);
- { uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- { uint64_t x50 = (x29 & 0x3ffffffffff);
- { uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (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/solinas64_2e256m189_6limbs/freeze.v b/src/Specific/solinas64_2e256m189_6limbs/freeze.v
deleted file mode 100644
index bf9c17f73..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m189_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/solinas64_2e256m189_6limbs/freezeDisplay.log b/src/Specific/solinas64_2e256m189_6limbs/freezeDisplay.log
deleted file mode 100644
index 82b48d52a..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/freezeDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffff43);
- uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0x7ffffffffff);
- uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0x3ffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0x7ffffffffff);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0x7ffffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0x3ffffffffff);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0x7ffffffff43);
- uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint64_t x34 = (x29 & 0x7ffffffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- uint64_t x38 = (x29 & 0x3ffffffffff);
- uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- uint64_t x42 = (x29 & 0x7ffffffffff);
- uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- uint64_t x46 = (x29 & 0x7ffffffffff);
- uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- uint64_t x50 = (x29 & 0x3ffffffffff);
- uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x49, Return x27, Return x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m189_6limbs/freezeDisplay.v b/src/Specific/solinas64_2e256m189_6limbs/freezeDisplay.v
deleted file mode 100644
index 0ba10ba65..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m189_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e256m189_6limbs/py_interpreter.sh b/src/Specific/solinas64_2e256m189_6limbs/py_interpreter.sh
deleted file mode 100755
index 942f8d764..000000000
--- a/src/Specific/solinas64_2e256m189_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256 - 189' -Dmodulus_bytes='42 + 2/3' -Da24='121665'
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/CurveParameters.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/CurveParameters.v
deleted file mode 100644
index 36bcac59d..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256 - 2^224 + 2^192 + 2^96 - 1
-Base: 51.2
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 51 + 1/5;
- bitwidth := 64;
- s := 2^256;
- c := [(1, 1); (2^96, -1); (2^192, -1); (2^224, 1)];
- carry_chains := Some [[3; 2; 0; 4]; [4; 3; 1; 0; 2]; [4; 3; 1; 0]]%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/solinas64_2e256m2e224p2e192p2e96m1_5limbs/Synthesis.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/Synthesis.v
deleted file mode 100644
index deb5c225d..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_5limbs.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/solinas64_2e256m2e224p2e192p2e96m1_5limbs/compiler.sh b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/compiler.sh
deleted file mode 100755
index bba022f1e..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1' "$@"
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/compilerxx.sh b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/compilerxx.sh
deleted file mode 100755
index 25318ed30..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1' "$@"
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/feadd.c b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/feadd.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/feadd.v
deleted file mode 100644
index 4e0dbfc51..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_5limbs.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/solinas64_2e256m2e224p2e192p2e96m1_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/feaddDisplay.v
deleted file mode 100644
index c16c930d6..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/fecarry.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/fecarry.v
deleted file mode 100644
index 6af9c210b..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_5limbs.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/solinas64_2e256m2e224p2e192p2e96m1_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/fecarryDisplay.v
deleted file mode 100644
index 69390f956..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/femul.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/femul.v
deleted file mode 100644
index 65a39b396..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_5limbs.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/solinas64_2e256m2e224p2e192p2e96m1_5limbs/femulDisplay.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/femulDisplay.v
deleted file mode 100644
index bd3aad397..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/fesquare.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/fesquare.v
deleted file mode 100644
index 48887f8fd..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_5limbs.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/solinas64_2e256m2e224p2e192p2e96m1_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/fesquareDisplay.v
deleted file mode 100644
index 9e68ebde4..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/fesub.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/fesub.v
deleted file mode 100644
index db1988e53..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_5limbs.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/solinas64_2e256m2e224p2e192p2e96m1_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/fesubDisplay.v
deleted file mode 100644
index 571983faa..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/freeze.c b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/freeze.c
deleted file mode 100644
index b5d95bd90..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/freeze.c
+++ /dev/null
@@ -1,28 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffffff);
- { uint64_t x13; ℤ x14 = _subborrow_u51ℤ(x11, x4, 0xfffffffffff, &x13);
- { uint64_t x16; ℤ x17 = _subborrow_u51ℤ(x14, x6, 0x0, &x16);
- { uint64_t x19; ℤ x20 = _subborrow_u51ℤ(x17, x8, 0x4000000000, &x19);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 51 Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x7fffffff80000);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0xfffffffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint64_t x29 = (x24 & 0xfffffffffff);
- { uint64_t x31; uint8_t x32 = _addcarryx_u51(x28, x13, x29, &x31);
- { uint64_t x34; uint8_t x35 = _addcarryx_u51(x32, x16, 0x0, &x34);
- { uint64_t x36 = (x24 & 0x4000000000);
- { uint64_t x38; uint8_t x39 = _addcarryx_u51(x35, x19, x36, &x38);
- { uint64_t x40 = (x24 & 0x7fffffff80000);
- { uint64_t x42; uint8_t _ = _addcarryx_u51(x39, x22, x40, &x42);
- out[0] = x27;
- out[1] = x31;
- out[2] = x34;
- out[3] = x38;
- out[4] = x42;
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/freeze.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/freeze.v
deleted file mode 100644
index e6fadc212..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_5limbs.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/solinas64_2e256m2e224p2e192p2e96m1_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/freezeDisplay.log
deleted file mode 100644
index f5f1f30bc..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,22 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffffff);
- uint64_t x13, ℤ x14 = subborrow_u51ℤ(x11, x4, 0xfffffffffff);
- uint64_t x16, ℤ x17 = subborrow_u51ℤ(x14, x6, 0x0);
- uint64_t x19, ℤ x20 = subborrow_u51ℤ(x17, x8, 0x4000000000);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 51 Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x7fffffff80000);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0xfffffffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint64_t x29 = (x24 & 0xfffffffffff);
- uint64_t x31, uint8_t x32 = addcarryx_u51(x28, x13, x29);
- uint64_t x34, uint8_t x35 = addcarryx_u51(x32, x16, 0x0);
- uint64_t x36 = (x24 & 0x4000000000);
- uint64_t x38, uint8_t x39 = addcarryx_u51(x35, x19, x36);
- uint64_t x40 = (x24 & 0x7fffffff80000);
- uint64_t x42, uint8_t _ = addcarryx_u51(x39, x22, x40);
- (Return x42, Return x38, Return x34, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/freezeDisplay.v
deleted file mode 100644
index 316129c19..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/py_interpreter.sh
deleted file mode 100755
index 4d329b161..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256 - 2**224 + 2**192 + 2**96 - 1' -Dmodulus_bytes='51.2' -Da24='121665'
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/CurveParameters.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/CurveParameters.v
deleted file mode 100644
index 9b731d455..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256 - 2^224 + 2^192 + 2^96 - 1
-Base: 42 + 2/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 42 + 2/3;
- bitwidth := 64;
- s := 2^256;
- c := [(1, 1); (2^96, -1); (2^192, -1); (2^224, 1)];
- carry_chains := Some [[4; 3; 1; 5]; [5; 4; 2; 0; 3; 1]; [5; 4; 2; 0]]%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/solinas64_2e256m2e224p2e192p2e96m1_6limbs/Synthesis.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/Synthesis.v
deleted file mode 100644
index f0a76995c..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_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/solinas64_2e256m2e224p2e192p2e96m1_6limbs/compiler.sh b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/compiler.sh
deleted file mode 100755
index add375394..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,42,43,43,42}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1' "$@"
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/compilerxx.sh b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/compilerxx.sh
deleted file mode 100755
index a0bc52e0a..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,42,43,43,42}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<256) - (1_mpz<<224) + (1_mpz<<192) + (1_mpz<<96) - 1' "$@"
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/feadd.c b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/feadd.c
deleted file mode 100644
index 4a6bfb999..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/feadd.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_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/solinas64_2e256m2e224p2e192p2e96m1_6limbs/feadd.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/feadd.v
deleted file mode 100644
index dad111164..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_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/solinas64_2e256m2e224p2e192p2e96m1_6limbs/feaddDisplay.log b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/feaddDisplay.log
deleted file mode 100644
index e32995a81..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-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
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/feaddDisplay.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/feaddDisplay.v
deleted file mode 100644
index 509c73771..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/fecarry.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/fecarry.v
deleted file mode 100644
index 34d2dbb1b..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_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/solinas64_2e256m2e224p2e192p2e96m1_6limbs/fecarryDisplay.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/fecarryDisplay.v
deleted file mode 100644
index 1446189e7..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/femul.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/femul.v
deleted file mode 100644
index 067ce9974..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_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/solinas64_2e256m2e224p2e192p2e96m1_6limbs/femulDisplay.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/femulDisplay.v
deleted file mode 100644
index 1caf1d4d5..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/fesquare.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/fesquare.v
deleted file mode 100644
index b28e33170..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_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/solinas64_2e256m2e224p2e192p2e96m1_6limbs/fesquareDisplay.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/fesquareDisplay.v
deleted file mode 100644
index 2a23d1549..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/fesub.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/fesub.v
deleted file mode 100644
index fa91688ee..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_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/solinas64_2e256m2e224p2e192p2e96m1_6limbs/fesubDisplay.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/fesubDisplay.v
deleted file mode 100644
index a44dab14e..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/freeze.c b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/freeze.c
deleted file mode 100644
index 0ef08aaf2..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/freeze.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void freeze(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffff);
- { uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0x7ffffffffff);
- { uint64_t x18, ℤ x19 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) Syntax.TZ) (Return x16, Return x6, 0x3ff);
- { uint64_t x21, ℤ x22 = Op (Syntax.SubWithGetBorrow 43 Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) Syntax.TZ) (Return x19, Return x8, 0x0);
- { uint64_t x24, ℤ x25 = Op (Syntax.SubWithGetBorrow 43 Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) Syntax.TZ) (Return x22, Return x10, 0x200000);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 42 Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0x3fffffffc00);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0x7ffffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint64_t x34 = (x29 & 0x7ffffffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- { uint64_t x38 = (x29 & 0x3ff);
- { uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- { uint64_t x43, uint8_t x44 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, 0x0);
- { uint64_t x45 = (x29 & 0x200000);
- { uint64_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x44, Return x24, Return x45);
- { uint64_t x49 = (x29 & 0x3fffffffc00);
- { uint64_t x51, uint8_t _ = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x27, Return x49);
- out[0] = x32;
- out[1] = x36;
- out[2] = x40;
- out[3] = x43;
- out[4] = x47;
- out[5] = x51;
- }}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/freeze.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/freeze.v
deleted file mode 100644
index e83e02d57..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_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/solinas64_2e256m2e224p2e192p2e96m1_6limbs/freezeDisplay.log b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/freezeDisplay.log
deleted file mode 100644
index a5b7e39c8..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/freezeDisplay.log
+++ /dev/null
@@ -1,25 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffff);
- uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0x7ffffffffff);
- uint64_t x18, ℤ x19 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) Syntax.TZ) (Return x16, Return x6, 0x3ff);
- uint64_t x21, ℤ x22 = Op (Syntax.SubWithGetBorrow 43 Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) Syntax.TZ) (Return x19, Return x8, 0x0);
- uint64_t x24, ℤ x25 = Op (Syntax.SubWithGetBorrow 43 Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) Syntax.TZ) (Return x22, Return x10, 0x200000);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 42 Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0x3fffffffc00);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0x7ffffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint64_t x34 = (x29 & 0x7ffffffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- uint64_t x38 = (x29 & 0x3ff);
- uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- uint64_t x43, uint8_t x44 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, 0x0);
- uint64_t x45 = (x29 & 0x200000);
- uint64_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x44, Return x24, Return x45);
- uint64_t x49 = (x29 & 0x3fffffffc00);
- uint64_t x51, uint8_t _ = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x27, Return x49);
- (Return x51, Return x47, Return x43, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/freezeDisplay.v b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/freezeDisplay.v
deleted file mode 100644
index e9dafcd16..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m2e224p2e192p2e96m1_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/py_interpreter.sh b/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/py_interpreter.sh
deleted file mode 100755
index e08cc3e90..000000000
--- a/src/Specific/solinas64_2e256m2e224p2e192p2e96m1_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256 - 2**224 + 2**192 + 2**96 - 1' -Dmodulus_bytes='42 + 2/3' -Da24='121665'
diff --git a/src/Specific/solinas64_2e256m2e32m977_6limbs/CurveParameters.v b/src/Specific/solinas64_2e256m2e32m977_6limbs/CurveParameters.v
deleted file mode 100644
index a3bdfe9e6..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256 - 2^32 - 977
-Base: 42 + 2/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 42 + 2/3;
- bitwidth := 64;
- s := 2^256;
- c := [(1, 977); (2^32, 1)];
- carry_chains := Some [[5; 5]; [0; 1; 2; 3; 4]; [0; 0]]%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/solinas64_2e256m2e32m977_6limbs/Synthesis.v b/src/Specific/solinas64_2e256m2e32m977_6limbs/Synthesis.v
deleted file mode 100644
index c54003e51..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_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/solinas64_2e256m2e32m977_6limbs/compiler.sh b/src/Specific/solinas64_2e256m2e32m977_6limbs/compiler.sh
deleted file mode 100755
index 70fb79d12..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,42,43,43,42}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977' "$@"
diff --git a/src/Specific/solinas64_2e256m2e32m977_6limbs/compilerxx.sh b/src/Specific/solinas64_2e256m2e32m977_6limbs/compilerxx.sh
deleted file mode 100755
index c536a69bc..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,42,43,43,42}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977' "$@"
diff --git a/src/Specific/solinas64_2e256m2e32m977_6limbs/feadd.c b/src/Specific/solinas64_2e256m2e32m977_6limbs/feadd.c
deleted file mode 100644
index 4a6bfb999..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/feadd.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_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/solinas64_2e256m2e32m977_6limbs/feadd.v b/src/Specific/solinas64_2e256m2e32m977_6limbs/feadd.v
deleted file mode 100644
index d8032dd5b..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_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/solinas64_2e256m2e32m977_6limbs/feaddDisplay.log b/src/Specific/solinas64_2e256m2e32m977_6limbs/feaddDisplay.log
deleted file mode 100644
index e32995a81..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-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
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m2e32m977_6limbs/feaddDisplay.v b/src/Specific/solinas64_2e256m2e32m977_6limbs/feaddDisplay.v
deleted file mode 100644
index 24b4c5165..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e256m2e32m977_6limbs/fecarry.v b/src/Specific/solinas64_2e256m2e32m977_6limbs/fecarry.v
deleted file mode 100644
index 812a72ee0..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_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/solinas64_2e256m2e32m977_6limbs/fecarryDisplay.v b/src/Specific/solinas64_2e256m2e32m977_6limbs/fecarryDisplay.v
deleted file mode 100644
index 6d9338205..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e256m2e32m977_6limbs/femul.c b/src/Specific/solinas64_2e256m2e32m977_6limbs/femul.c
deleted file mode 100644
index cd2d8e297..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/femul.c
+++ /dev/null
@@ -1,58 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint128_t x24 = (((uint128_t)x5 * x22) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + (((uint128_t)x13 * x17) + ((uint128_t)x12 * x15))))));
- { uint128_t x25 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((0x2 * ((uint128_t)x9 * x19)) + (((uint128_t)x11 * x17) + ((uint128_t)x13 * x15))))) + ((0x3d1 * (0x2 * ((uint128_t)x12 * x22))) + (0x100000000 * (0x2 * ((uint128_t)x12 * x22)))));
- { uint128_t x26 = ((((uint128_t)x5 * x21) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((uint128_t)x11 * x15)))) + ((0x3d1 * ((0x2 * ((uint128_t)x13 * x22)) + (0x2 * ((uint128_t)x12 * x23)))) + (0x100000000 * ((0x2 * ((uint128_t)x13 * x22)) + (0x2 * ((uint128_t)x12 * x23))))));
- { uint128_t x27 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + ((uint128_t)x9 * x15))) + ((0x3d1 * (((uint128_t)x11 * x22) + (((uint128_t)x13 * x23) + ((uint128_t)x12 * x21)))) + (0x100000000 * (((uint128_t)x11 * x22) + (((uint128_t)x13 * x23) + ((uint128_t)x12 * x21))))));
- { uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + ((0x3d1 * ((0x2 * ((uint128_t)x9 * x22)) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + (0x2 * ((uint128_t)x12 * x19)))))) + (0x100000000 * ((0x2 * ((uint128_t)x9 * x22)) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + (0x2 * ((uint128_t)x12 * x19))))))));
- { uint128_t x29 = (((uint128_t)x5 * x15) + ((0x3d1 * ((0x2 * ((uint128_t)x7 * x22)) + ((0x2 * ((uint128_t)x9 * x23)) + (((uint128_t)x11 * x21) + ((0x2 * ((uint128_t)x13 * x19)) + (0x2 * ((uint128_t)x12 * x17))))))) + (0x100000000 * ((0x2 * ((uint128_t)x7 * x22)) + ((0x2 * ((uint128_t)x9 * x23)) + (((uint128_t)x11 * x21) + ((0x2 * ((uint128_t)x13 * x19)) + (0x2 * ((uint128_t)x12 * x17)))))))));
- { uint64_t x30 = (uint64_t) (x24 >> 0x2a);
- { uint64_t x31 = ((uint64_t)x24 & 0x3ffffffffff);
- { uint128_t x32 = (((uint128_t)0x40000000000 * x30) + x31);
- { uint64_t x33 = (uint64_t) (x32 >> 0x2a);
- { uint64_t x34 = ((uint64_t)x32 & 0x3ffffffffff);
- { uint128_t x35 = (((uint128_t)0x40000000000 * x33) + x34);
- { uint64_t x36 = (uint64_t) (x35 >> 0x2a);
- { uint64_t x37 = ((uint64_t)x35 & 0x3ffffffffff);
- { uint128_t x38 = (x29 + ((0x3d1 * x36) + ((uint128_t)0x100000000 * x36)));
- { uint128_t x39 = (x38 >> 0x2b);
- { uint64_t x40 = ((uint64_t)x38 & 0x7ffffffffff);
- { uint128_t x41 = (x39 + x28);
- { uint128_t x42 = (x41 >> 0x2b);
- { uint64_t x43 = ((uint64_t)x41 & 0x7ffffffffff);
- { uint128_t x44 = (x42 + x27);
- { uint128_t x45 = (x44 >> 0x2a);
- { uint64_t x46 = ((uint64_t)x44 & 0x3ffffffffff);
- { uint128_t x47 = (x45 + x26);
- { uint128_t x48 = (x47 >> 0x2b);
- { uint64_t x49 = ((uint64_t)x47 & 0x7ffffffffff);
- { uint128_t x50 = (x48 + x25);
- { uint128_t x51 = (x50 >> 0x2b);
- { uint64_t x52 = ((uint64_t)x50 & 0x7ffffffffff);
- { uint128_t x53 = (x51 + x37);
- { uint64_t x54 = (uint64_t) (x53 >> 0x2a);
- { uint64_t x55 = ((uint64_t)x53 & 0x3ffffffffff);
- { uint128_t x56 = (x40 + ((0x3d1 * x54) + ((uint128_t)0x100000000 * x54)));
- { uint64_t x57 = (uint64_t) (x56 >> 0x2b);
- { uint64_t x58 = ((uint64_t)x56 & 0x7ffffffffff);
- { uint64_t x59 = (x58 >> 0x2b);
- { uint64_t x60 = (x58 & 0x7ffffffffff);
- out[0] = x60;
- out[1] = (x59 + (x57 + x43));
- out[2] = x46;
- out[3] = x49;
- out[4] = x52;
- out[5] = x55;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m2e32m977_6limbs/femul.v b/src/Specific/solinas64_2e256m2e32m977_6limbs/femul.v
deleted file mode 100644
index 3c1b140bf..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_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/solinas64_2e256m2e32m977_6limbs/femulDisplay.log b/src/Specific/solinas64_2e256m2e32m977_6limbs/femulDisplay.log
deleted file mode 100644
index acddfec0b..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint128_t x24 = (((uint128_t)x5 * x22) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + (((uint128_t)x13 * x17) + ((uint128_t)x12 * x15))))));
- uint128_t x25 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((0x2 * ((uint128_t)x9 * x19)) + (((uint128_t)x11 * x17) + ((uint128_t)x13 * x15))))) + ((0x3d1 * (0x2 * ((uint128_t)x12 * x22))) + (0x100000000 * (0x2 * ((uint128_t)x12 * x22)))));
- uint128_t x26 = ((((uint128_t)x5 * x21) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((uint128_t)x11 * x15)))) + ((0x3d1 * ((0x2 * ((uint128_t)x13 * x22)) + (0x2 * ((uint128_t)x12 * x23)))) + (0x100000000 * ((0x2 * ((uint128_t)x13 * x22)) + (0x2 * ((uint128_t)x12 * x23))))));
- uint128_t x27 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + ((uint128_t)x9 * x15))) + ((0x3d1 * (((uint128_t)x11 * x22) + (((uint128_t)x13 * x23) + ((uint128_t)x12 * x21)))) + (0x100000000 * (((uint128_t)x11 * x22) + (((uint128_t)x13 * x23) + ((uint128_t)x12 * x21))))));
- uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + ((0x3d1 * ((0x2 * ((uint128_t)x9 * x22)) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + (0x2 * ((uint128_t)x12 * x19)))))) + (0x100000000 * ((0x2 * ((uint128_t)x9 * x22)) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + (0x2 * ((uint128_t)x12 * x19))))))));
- uint128_t x29 = (((uint128_t)x5 * x15) + ((0x3d1 * ((0x2 * ((uint128_t)x7 * x22)) + ((0x2 * ((uint128_t)x9 * x23)) + (((uint128_t)x11 * x21) + ((0x2 * ((uint128_t)x13 * x19)) + (0x2 * ((uint128_t)x12 * x17))))))) + (0x100000000 * ((0x2 * ((uint128_t)x7 * x22)) + ((0x2 * ((uint128_t)x9 * x23)) + (((uint128_t)x11 * x21) + ((0x2 * ((uint128_t)x13 * x19)) + (0x2 * ((uint128_t)x12 * x17)))))))));
- uint64_t x30 = (uint64_t) (x24 >> 0x2a);
- uint64_t x31 = ((uint64_t)x24 & 0x3ffffffffff);
- uint128_t x32 = (((uint128_t)0x40000000000 * x30) + x31);
- uint64_t x33 = (uint64_t) (x32 >> 0x2a);
- uint64_t x34 = ((uint64_t)x32 & 0x3ffffffffff);
- uint128_t x35 = (((uint128_t)0x40000000000 * x33) + x34);
- uint64_t x36 = (uint64_t) (x35 >> 0x2a);
- uint64_t x37 = ((uint64_t)x35 & 0x3ffffffffff);
- uint128_t x38 = (x29 + ((0x3d1 * x36) + ((uint128_t)0x100000000 * x36)));
- uint128_t x39 = (x38 >> 0x2b);
- uint64_t x40 = ((uint64_t)x38 & 0x7ffffffffff);
- uint128_t x41 = (x39 + x28);
- uint128_t x42 = (x41 >> 0x2b);
- uint64_t x43 = ((uint64_t)x41 & 0x7ffffffffff);
- uint128_t x44 = (x42 + x27);
- uint128_t x45 = (x44 >> 0x2a);
- uint64_t x46 = ((uint64_t)x44 & 0x3ffffffffff);
- uint128_t x47 = (x45 + x26);
- uint128_t x48 = (x47 >> 0x2b);
- uint64_t x49 = ((uint64_t)x47 & 0x7ffffffffff);
- uint128_t x50 = (x48 + x25);
- uint128_t x51 = (x50 >> 0x2b);
- uint64_t x52 = ((uint64_t)x50 & 0x7ffffffffff);
- uint128_t x53 = (x51 + x37);
- uint64_t x54 = (uint64_t) (x53 >> 0x2a);
- uint64_t x55 = ((uint64_t)x53 & 0x3ffffffffff);
- uint128_t x56 = (x40 + ((0x3d1 * x54) + ((uint128_t)0x100000000 * x54)));
- uint64_t x57 = (uint64_t) (x56 >> 0x2b);
- uint64_t x58 = ((uint64_t)x56 & 0x7ffffffffff);
- uint64_t x59 = (x58 >> 0x2b);
- uint64_t x60 = (x58 & 0x7ffffffffff);
- return (Return x55, Return x52, Return x49, Return x46, (x59 + (x57 + x43)), Return x60))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m2e32m977_6limbs/femulDisplay.v b/src/Specific/solinas64_2e256m2e32m977_6limbs/femulDisplay.v
deleted file mode 100644
index 00ebfd5e2..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e256m2e32m977_6limbs/fesquare.c b/src/Specific/solinas64_2e256m2e32m977_6limbs/fesquare.c
deleted file mode 100644
index e4d24df18..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/fesquare.c
+++ /dev/null
@@ -1,52 +0,0 @@
-static void fesquare(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x11 = (((uint128_t)x2 * x9) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x9 * x2))))));
- { uint128_t x12 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + ((0x2 * ((uint128_t)x6 * x6)) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + ((0x3d1 * (0x2 * ((uint128_t)x9 * x9))) + (0x100000000 * (0x2 * ((uint128_t)x9 * x9)))));
- { uint128_t x13 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + ((0x3d1 * ((0x2 * ((uint128_t)x10 * x9)) + (0x2 * ((uint128_t)x9 * x10)))) + (0x100000000 * ((0x2 * ((uint128_t)x10 * x9)) + (0x2 * ((uint128_t)x9 * x10))))));
- { uint128_t x14 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + ((0x3d1 * (((uint128_t)x8 * x9) + (((uint128_t)x10 * x10) + ((uint128_t)x9 * x8)))) + (0x100000000 * (((uint128_t)x8 * x9) + (((uint128_t)x10 * x10) + ((uint128_t)x9 * x8))))));
- { uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + ((0x3d1 * ((0x2 * ((uint128_t)x6 * x9)) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (0x2 * ((uint128_t)x9 * x6)))))) + (0x100000000 * ((0x2 * ((uint128_t)x6 * x9)) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (0x2 * ((uint128_t)x9 * x6))))))));
- { uint128_t x16 = (((uint128_t)x2 * x2) + ((0x3d1 * ((0x2 * ((uint128_t)x4 * x9)) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + (0x2 * ((uint128_t)x9 * x4))))))) + (0x100000000 * ((0x2 * ((uint128_t)x4 * x9)) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + (0x2 * ((uint128_t)x9 * x4)))))))));
- { uint64_t x17 = (uint64_t) (x11 >> 0x2a);
- { uint64_t x18 = ((uint64_t)x11 & 0x3ffffffffff);
- { uint128_t x19 = (((uint128_t)0x40000000000 * x17) + x18);
- { uint64_t x20 = (uint64_t) (x19 >> 0x2a);
- { uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffff);
- { uint128_t x22 = (((uint128_t)0x40000000000 * x20) + x21);
- { uint64_t x23 = (uint64_t) (x22 >> 0x2a);
- { uint64_t x24 = ((uint64_t)x22 & 0x3ffffffffff);
- { uint128_t x25 = (x16 + ((0x3d1 * x23) + ((uint128_t)0x100000000 * x23)));
- { uint128_t x26 = (x25 >> 0x2b);
- { uint64_t x27 = ((uint64_t)x25 & 0x7ffffffffff);
- { uint128_t x28 = (x26 + x15);
- { uint128_t x29 = (x28 >> 0x2b);
- { uint64_t x30 = ((uint64_t)x28 & 0x7ffffffffff);
- { uint128_t x31 = (x29 + x14);
- { uint128_t x32 = (x31 >> 0x2a);
- { uint64_t x33 = ((uint64_t)x31 & 0x3ffffffffff);
- { uint128_t x34 = (x32 + x13);
- { uint128_t x35 = (x34 >> 0x2b);
- { uint64_t x36 = ((uint64_t)x34 & 0x7ffffffffff);
- { uint128_t x37 = (x35 + x12);
- { uint128_t x38 = (x37 >> 0x2b);
- { uint64_t x39 = ((uint64_t)x37 & 0x7ffffffffff);
- { uint128_t x40 = (x38 + x24);
- { uint64_t x41 = (uint64_t) (x40 >> 0x2a);
- { uint64_t x42 = ((uint64_t)x40 & 0x3ffffffffff);
- { uint128_t x43 = (x27 + ((0x3d1 * x41) + ((uint128_t)0x100000000 * x41)));
- { uint64_t x44 = (uint64_t) (x43 >> 0x2b);
- { uint64_t x45 = ((uint64_t)x43 & 0x7ffffffffff);
- { uint64_t x46 = (x45 >> 0x2b);
- { uint64_t x47 = (x45 & 0x7ffffffffff);
- out[0] = x47;
- out[1] = (x46 + (x44 + x30));
- out[2] = x33;
- out[3] = x36;
- out[4] = x39;
- out[5] = x42;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m2e32m977_6limbs/fesquare.v b/src/Specific/solinas64_2e256m2e32m977_6limbs/fesquare.v
deleted file mode 100644
index 5a76a5ea1..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_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/solinas64_2e256m2e32m977_6limbs/fesquareDisplay.log b/src/Specific/solinas64_2e256m2e32m977_6limbs/fesquareDisplay.log
deleted file mode 100644
index f9b2d40b2..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint128_t x11 = (((uint128_t)x2 * x9) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x9 * x2))))));
- uint128_t x12 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + ((0x2 * ((uint128_t)x6 * x6)) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + ((0x3d1 * (0x2 * ((uint128_t)x9 * x9))) + (0x100000000 * (0x2 * ((uint128_t)x9 * x9)))));
- uint128_t x13 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + ((0x3d1 * ((0x2 * ((uint128_t)x10 * x9)) + (0x2 * ((uint128_t)x9 * x10)))) + (0x100000000 * ((0x2 * ((uint128_t)x10 * x9)) + (0x2 * ((uint128_t)x9 * x10))))));
- uint128_t x14 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + ((0x3d1 * (((uint128_t)x8 * x9) + (((uint128_t)x10 * x10) + ((uint128_t)x9 * x8)))) + (0x100000000 * (((uint128_t)x8 * x9) + (((uint128_t)x10 * x10) + ((uint128_t)x9 * x8))))));
- uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + ((0x3d1 * ((0x2 * ((uint128_t)x6 * x9)) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (0x2 * ((uint128_t)x9 * x6)))))) + (0x100000000 * ((0x2 * ((uint128_t)x6 * x9)) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (0x2 * ((uint128_t)x9 * x6))))))));
- uint128_t x16 = (((uint128_t)x2 * x2) + ((0x3d1 * ((0x2 * ((uint128_t)x4 * x9)) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + (0x2 * ((uint128_t)x9 * x4))))))) + (0x100000000 * ((0x2 * ((uint128_t)x4 * x9)) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + (0x2 * ((uint128_t)x9 * x4)))))))));
- uint64_t x17 = (uint64_t) (x11 >> 0x2a);
- uint64_t x18 = ((uint64_t)x11 & 0x3ffffffffff);
- uint128_t x19 = (((uint128_t)0x40000000000 * x17) + x18);
- uint64_t x20 = (uint64_t) (x19 >> 0x2a);
- uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffff);
- uint128_t x22 = (((uint128_t)0x40000000000 * x20) + x21);
- uint64_t x23 = (uint64_t) (x22 >> 0x2a);
- uint64_t x24 = ((uint64_t)x22 & 0x3ffffffffff);
- uint128_t x25 = (x16 + ((0x3d1 * x23) + ((uint128_t)0x100000000 * x23)));
- uint128_t x26 = (x25 >> 0x2b);
- uint64_t x27 = ((uint64_t)x25 & 0x7ffffffffff);
- uint128_t x28 = (x26 + x15);
- uint128_t x29 = (x28 >> 0x2b);
- uint64_t x30 = ((uint64_t)x28 & 0x7ffffffffff);
- uint128_t x31 = (x29 + x14);
- uint128_t x32 = (x31 >> 0x2a);
- uint64_t x33 = ((uint64_t)x31 & 0x3ffffffffff);
- uint128_t x34 = (x32 + x13);
- uint128_t x35 = (x34 >> 0x2b);
- uint64_t x36 = ((uint64_t)x34 & 0x7ffffffffff);
- uint128_t x37 = (x35 + x12);
- uint128_t x38 = (x37 >> 0x2b);
- uint64_t x39 = ((uint64_t)x37 & 0x7ffffffffff);
- uint128_t x40 = (x38 + x24);
- uint64_t x41 = (uint64_t) (x40 >> 0x2a);
- uint64_t x42 = ((uint64_t)x40 & 0x3ffffffffff);
- uint128_t x43 = (x27 + ((0x3d1 * x41) + ((uint128_t)0x100000000 * x41)));
- uint64_t x44 = (uint64_t) (x43 >> 0x2b);
- uint64_t x45 = ((uint64_t)x43 & 0x7ffffffffff);
- uint64_t x46 = (x45 >> 0x2b);
- uint64_t x47 = (x45 & 0x7ffffffffff);
- return (Return x42, Return x39, Return x36, Return x33, (x46 + (x44 + x30)), Return x47))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m2e32m977_6limbs/fesquareDisplay.v b/src/Specific/solinas64_2e256m2e32m977_6limbs/fesquareDisplay.v
deleted file mode 100644
index 18a0a8018..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e256m2e32m977_6limbs/fesub.c b/src/Specific/solinas64_2e256m2e32m977_6limbs/fesub.c
deleted file mode 100644
index 28c2d87f6..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/fesub.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- out[0] = ((0xffdfffff85e + x5) - x15);
- out[1] = ((0xffffffffffe + x7) - x17);
- out[2] = ((0x7fffffffffe + x9) - x19);
- out[3] = ((0xffffffffffe + x11) - x21);
- out[4] = ((0xffffffffffe + x13) - x23);
- out[5] = ((0x7fffffffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m2e32m977_6limbs/fesub.v b/src/Specific/solinas64_2e256m2e32m977_6limbs/fesub.v
deleted file mode 100644
index 9e5cd0b10..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_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/solinas64_2e256m2e32m977_6limbs/fesubDisplay.log b/src/Specific/solinas64_2e256m2e32m977_6limbs/fesubDisplay.log
deleted file mode 100644
index 28c8be4d1..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- (((0x7fffffffffe + x12) - x22), ((0xffffffffffe + x13) - x23), ((0xffffffffffe + x11) - x21), ((0x7fffffffffe + x9) - x19), ((0xffffffffffe + x7) - x17), ((0xffdfffff85e + x5) - x15)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m2e32m977_6limbs/fesubDisplay.v b/src/Specific/solinas64_2e256m2e32m977_6limbs/fesubDisplay.v
deleted file mode 100644
index b754c9885..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e256m2e32m977_6limbs/freeze.c b/src/Specific/solinas64_2e256m2e32m977_6limbs/freeze.c
deleted file mode 100644
index e6291c3cb..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/freeze.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void freeze(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fefffffc2f);
- { uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0x7ffffffffff);
- { uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0x3ffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0x7ffffffffff);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0x7ffffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0x3ffffffffff);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0x7fefffffc2f);
- { uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint64_t x34 = (x29 & 0x7ffffffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- { uint64_t x38 = (x29 & 0x3ffffffffff);
- { uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- { uint64_t x42 = (x29 & 0x7ffffffffff);
- { uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- { uint64_t x46 = (x29 & 0x7ffffffffff);
- { uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- { uint64_t x50 = (x29 & 0x3ffffffffff);
- { uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (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/solinas64_2e256m2e32m977_6limbs/freeze.v b/src/Specific/solinas64_2e256m2e32m977_6limbs/freeze.v
deleted file mode 100644
index e01bbad98..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_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/solinas64_2e256m2e32m977_6limbs/freezeDisplay.log b/src/Specific/solinas64_2e256m2e32m977_6limbs/freezeDisplay.log
deleted file mode 100644
index af6256cda..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/freezeDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fefffffc2f);
- uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0x7ffffffffff);
- uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0x3ffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0x7ffffffffff);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0x7ffffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0x3ffffffffff);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0x7fefffffc2f);
- uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint64_t x34 = (x29 & 0x7ffffffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- uint64_t x38 = (x29 & 0x3ffffffffff);
- uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- uint64_t x42 = (x29 & 0x7ffffffffff);
- uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- uint64_t x46 = (x29 & 0x7ffffffffff);
- uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- uint64_t x50 = (x29 & 0x3ffffffffff);
- uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x49, Return x27, Return x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m2e32m977_6limbs/freezeDisplay.v b/src/Specific/solinas64_2e256m2e32m977_6limbs/freezeDisplay.v
deleted file mode 100644
index 1d42d86bf..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e256m2e32m977_6limbs/py_interpreter.sh b/src/Specific/solinas64_2e256m2e32m977_6limbs/py_interpreter.sh
deleted file mode 100755
index 67b8b2a0d..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256 - 2**32 - 977' -Dmodulus_bytes='42 + 2/3' -Da24='121665'
diff --git a/src/Specific/solinas64_2e256m2e32m977_7limbs/CurveParameters.v b/src/Specific/solinas64_2e256m2e32m977_7limbs/CurveParameters.v
deleted file mode 100644
index c788af8e6..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256 - 2^32 - 977
-Base: 36 + 4/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 36 + 4/7;
- bitwidth := 64;
- s := 2^256;
- c := [(1, 977); (2^32, 1)];
- carry_chains := Some [[6; 6]; [0; 1; 2; 3; 4; 5]; [0; 0]]%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/solinas64_2e256m2e32m977_7limbs/Synthesis.v b/src/Specific/solinas64_2e256m2e32m977_7limbs/Synthesis.v
deleted file mode 100644
index 343dbfc90..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_7limbs.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/solinas64_2e256m2e32m977_7limbs/compiler.sh b/src/Specific/solinas64_2e256m2e32m977_7limbs/compiler.sh
deleted file mode 100755
index 2d4964b8a..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{37,37,36,37,36,37,36}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977' "$@"
diff --git a/src/Specific/solinas64_2e256m2e32m977_7limbs/compilerxx.sh b/src/Specific/solinas64_2e256m2e32m977_7limbs/compilerxx.sh
deleted file mode 100755
index 9940ba5a8..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{37,37,36,37,36,37,36}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<256) - (1_mpz<<32) - 977' "$@"
diff --git a/src/Specific/solinas64_2e256m2e32m977_7limbs/feadd.c b/src/Specific/solinas64_2e256m2e32m977_7limbs/feadd.c
deleted file mode 100644
index 9acf97578..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m2e32m977_7limbs/feadd.v b/src/Specific/solinas64_2e256m2e32m977_7limbs/feadd.v
deleted file mode 100644
index 0efc53ecd..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_7limbs.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/solinas64_2e256m2e32m977_7limbs/feaddDisplay.log b/src/Specific/solinas64_2e256m2e32m977_7limbs/feaddDisplay.log
deleted file mode 100644
index 6320440fc..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m2e32m977_7limbs/feaddDisplay.v b/src/Specific/solinas64_2e256m2e32m977_7limbs/feaddDisplay.v
deleted file mode 100644
index 72735b6b3..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e256m2e32m977_7limbs/fecarry.v b/src/Specific/solinas64_2e256m2e32m977_7limbs/fecarry.v
deleted file mode 100644
index a2d3f7e50..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_7limbs.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/solinas64_2e256m2e32m977_7limbs/fecarryDisplay.v b/src/Specific/solinas64_2e256m2e32m977_7limbs/fecarryDisplay.v
deleted file mode 100644
index 2a0eb3b18..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e256m2e32m977_7limbs/femul.c b/src/Specific/solinas64_2e256m2e32m977_7limbs/femul.c
deleted file mode 100644
index 9944c28fa..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/femul.c
+++ /dev/null
@@ -1,65 +0,0 @@
-static void femul(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- { uint128_t x28 = (((uint128_t)x5 * x26) + (((uint128_t)x7 * x27) + ((0x2 * ((uint128_t)x9 * x25)) + (((uint128_t)x11 * x23) + ((0x2 * ((uint128_t)x13 * x21)) + (((uint128_t)x15 * x19) + ((uint128_t)x14 * x17)))))));
- { uint128_t x29 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + ((0x2 * ((uint128_t)x13 * x19)) + ((uint128_t)x15 * x17)))))) + ((0x3d1 * (0x2 * ((uint128_t)x14 * x26))) + (0x100000000 * (0x2 * ((uint128_t)x14 * x26)))));
- { uint128_t x30 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + ((0x2 * ((uint128_t)x9 * x21)) + (((uint128_t)x11 * x19) + ((uint128_t)x13 * x17))))) + ((0x3d1 * (((uint128_t)x15 * x26) + ((uint128_t)x14 * x27))) + (0x100000000 * (((uint128_t)x15 * x26) + ((uint128_t)x14 * x27)))));
- { uint128_t x31 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((0x2 * ((uint128_t)x9 * x19)) + ((uint128_t)x11 * x17)))) + ((0x3d1 * ((0x2 * ((uint128_t)x13 * x26)) + (((uint128_t)x15 * x27) + (0x2 * ((uint128_t)x14 * x25))))) + (0x100000000 * ((0x2 * ((uint128_t)x13 * x26)) + (((uint128_t)x15 * x27) + (0x2 * ((uint128_t)x14 * x25)))))));
- { uint128_t x32 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + ((uint128_t)x9 * x17))) + ((0x3d1 * (((uint128_t)x11 * x26) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + ((uint128_t)x14 * x23))))) + (0x100000000 * (((uint128_t)x11 * x26) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + ((uint128_t)x14 * x23)))))));
- { uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + ((0x3d1 * ((0x2 * ((uint128_t)x9 * x26)) + (((uint128_t)x11 * x27) + ((0x2 * ((uint128_t)x13 * x25)) + (((uint128_t)x15 * x23) + (0x2 * ((uint128_t)x14 * x21))))))) + (0x100000000 * ((0x2 * ((uint128_t)x9 * x26)) + (((uint128_t)x11 * x27) + ((0x2 * ((uint128_t)x13 * x25)) + (((uint128_t)x15 * x23) + (0x2 * ((uint128_t)x14 * x21)))))))));
- { uint128_t x34 = (((uint128_t)x5 * x17) + ((0x3d1 * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19)))))))) + (0x100000000 * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19))))))))));
- { uint64_t x35 = (uint64_t) (x28 >> 0x24);
- { uint64_t x36 = ((uint64_t)x28 & 0xfffffffff);
- { uint128_t x37 = (((uint128_t)0x1000000000 * x35) + x36);
- { uint64_t x38 = (uint64_t) (x37 >> 0x24);
- { uint64_t x39 = ((uint64_t)x37 & 0xfffffffff);
- { uint128_t x40 = (((uint128_t)0x1000000000 * x38) + x39);
- { uint64_t x41 = (uint64_t) (x40 >> 0x24);
- { uint64_t x42 = ((uint64_t)x40 & 0xfffffffff);
- { uint128_t x43 = (x34 + ((0x3d1 * x41) + ((uint128_t)0x100000000 * x41)));
- { uint128_t x44 = (x43 >> 0x25);
- { uint64_t x45 = ((uint64_t)x43 & 0x1fffffffff);
- { uint128_t x46 = (x44 + x33);
- { uint128_t x47 = (x46 >> 0x25);
- { uint64_t x48 = ((uint64_t)x46 & 0x1fffffffff);
- { uint128_t x49 = (x47 + x32);
- { uint128_t x50 = (x49 >> 0x24);
- { uint64_t x51 = ((uint64_t)x49 & 0xfffffffff);
- { uint128_t x52 = (x50 + x31);
- { uint128_t x53 = (x52 >> 0x25);
- { uint64_t x54 = ((uint64_t)x52 & 0x1fffffffff);
- { uint128_t x55 = (x53 + x30);
- { uint128_t x56 = (x55 >> 0x24);
- { uint64_t x57 = ((uint64_t)x55 & 0xfffffffff);
- { uint128_t x58 = (x56 + x29);
- { uint128_t x59 = (x58 >> 0x25);
- { uint64_t x60 = ((uint64_t)x58 & 0x1fffffffff);
- { uint128_t x61 = (x59 + x42);
- { uint64_t x62 = (uint64_t) (x61 >> 0x24);
- { uint64_t x63 = ((uint64_t)x61 & 0xfffffffff);
- { uint128_t x64 = (x45 + ((0x3d1 * x62) + ((uint128_t)0x100000000 * x62)));
- { uint64_t x65 = (uint64_t) (x64 >> 0x25);
- { uint64_t x66 = ((uint64_t)x64 & 0x1fffffffff);
- { uint64_t x67 = (x66 >> 0x25);
- { uint64_t x68 = (x66 & 0x1fffffffff);
- out[0] = x68;
- out[1] = (x67 + (x65 + x48));
- out[2] = x51;
- out[3] = x54;
- out[4] = x57;
- out[5] = x60;
- out[6] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m2e32m977_7limbs/femul.v b/src/Specific/solinas64_2e256m2e32m977_7limbs/femul.v
deleted file mode 100644
index 7abe8275e..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_7limbs.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/solinas64_2e256m2e32m977_7limbs/femulDisplay.log b/src/Specific/solinas64_2e256m2e32m977_7limbs/femulDisplay.log
deleted file mode 100644
index f6c19c1ac..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint128_t x28 = (((uint128_t)x5 * x26) + (((uint128_t)x7 * x27) + ((0x2 * ((uint128_t)x9 * x25)) + (((uint128_t)x11 * x23) + ((0x2 * ((uint128_t)x13 * x21)) + (((uint128_t)x15 * x19) + ((uint128_t)x14 * x17)))))));
- uint128_t x29 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + ((0x2 * ((uint128_t)x13 * x19)) + ((uint128_t)x15 * x17)))))) + ((0x3d1 * (0x2 * ((uint128_t)x14 * x26))) + (0x100000000 * (0x2 * ((uint128_t)x14 * x26)))));
- uint128_t x30 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + ((0x2 * ((uint128_t)x9 * x21)) + (((uint128_t)x11 * x19) + ((uint128_t)x13 * x17))))) + ((0x3d1 * (((uint128_t)x15 * x26) + ((uint128_t)x14 * x27))) + (0x100000000 * (((uint128_t)x15 * x26) + ((uint128_t)x14 * x27)))));
- uint128_t x31 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((0x2 * ((uint128_t)x9 * x19)) + ((uint128_t)x11 * x17)))) + ((0x3d1 * ((0x2 * ((uint128_t)x13 * x26)) + (((uint128_t)x15 * x27) + (0x2 * ((uint128_t)x14 * x25))))) + (0x100000000 * ((0x2 * ((uint128_t)x13 * x26)) + (((uint128_t)x15 * x27) + (0x2 * ((uint128_t)x14 * x25)))))));
- uint128_t x32 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + ((uint128_t)x9 * x17))) + ((0x3d1 * (((uint128_t)x11 * x26) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + ((uint128_t)x14 * x23))))) + (0x100000000 * (((uint128_t)x11 * x26) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + ((uint128_t)x14 * x23)))))));
- uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + ((0x3d1 * ((0x2 * ((uint128_t)x9 * x26)) + (((uint128_t)x11 * x27) + ((0x2 * ((uint128_t)x13 * x25)) + (((uint128_t)x15 * x23) + (0x2 * ((uint128_t)x14 * x21))))))) + (0x100000000 * ((0x2 * ((uint128_t)x9 * x26)) + (((uint128_t)x11 * x27) + ((0x2 * ((uint128_t)x13 * x25)) + (((uint128_t)x15 * x23) + (0x2 * ((uint128_t)x14 * x21)))))))));
- uint128_t x34 = (((uint128_t)x5 * x17) + ((0x3d1 * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19)))))))) + (0x100000000 * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19))))))))));
- uint64_t x35 = (uint64_t) (x28 >> 0x24);
- uint64_t x36 = ((uint64_t)x28 & 0xfffffffff);
- uint128_t x37 = (((uint128_t)0x1000000000 * x35) + x36);
- uint64_t x38 = (uint64_t) (x37 >> 0x24);
- uint64_t x39 = ((uint64_t)x37 & 0xfffffffff);
- uint128_t x40 = (((uint128_t)0x1000000000 * x38) + x39);
- uint64_t x41 = (uint64_t) (x40 >> 0x24);
- uint64_t x42 = ((uint64_t)x40 & 0xfffffffff);
- uint128_t x43 = (x34 + ((0x3d1 * x41) + ((uint128_t)0x100000000 * x41)));
- uint128_t x44 = (x43 >> 0x25);
- uint64_t x45 = ((uint64_t)x43 & 0x1fffffffff);
- uint128_t x46 = (x44 + x33);
- uint128_t x47 = (x46 >> 0x25);
- uint64_t x48 = ((uint64_t)x46 & 0x1fffffffff);
- uint128_t x49 = (x47 + x32);
- uint128_t x50 = (x49 >> 0x24);
- uint64_t x51 = ((uint64_t)x49 & 0xfffffffff);
- uint128_t x52 = (x50 + x31);
- uint128_t x53 = (x52 >> 0x25);
- uint64_t x54 = ((uint64_t)x52 & 0x1fffffffff);
- uint128_t x55 = (x53 + x30);
- uint128_t x56 = (x55 >> 0x24);
- uint64_t x57 = ((uint64_t)x55 & 0xfffffffff);
- uint128_t x58 = (x56 + x29);
- uint128_t x59 = (x58 >> 0x25);
- uint64_t x60 = ((uint64_t)x58 & 0x1fffffffff);
- uint128_t x61 = (x59 + x42);
- uint64_t x62 = (uint64_t) (x61 >> 0x24);
- uint64_t x63 = ((uint64_t)x61 & 0xfffffffff);
- uint128_t x64 = (x45 + ((0x3d1 * x62) + ((uint128_t)0x100000000 * x62)));
- uint64_t x65 = (uint64_t) (x64 >> 0x25);
- uint64_t x66 = ((uint64_t)x64 & 0x1fffffffff);
- uint64_t x67 = (x66 >> 0x25);
- uint64_t x68 = (x66 & 0x1fffffffff);
- return (Return x63, Return x60, Return x57, Return x54, Return x51, (x67 + (x65 + x48)), Return x68))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m2e32m977_7limbs/femulDisplay.v b/src/Specific/solinas64_2e256m2e32m977_7limbs/femulDisplay.v
deleted file mode 100644
index 6a99ddf06..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e256m2e32m977_7limbs/fesquare.c b/src/Specific/solinas64_2e256m2e32m977_7limbs/fesquare.c
deleted file mode 100644
index 933c13201..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/fesquare.c
+++ /dev/null
@@ -1,58 +0,0 @@
-static void fesquare(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x13 = (((uint128_t)x2 * x11) + (((uint128_t)x4 * x12) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + (((uint128_t)x12 * x4) + ((uint128_t)x11 * x2)))))));
- { uint128_t x14 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + ((0x3d1 * (0x2 * ((uint128_t)x11 * x11))) + (0x100000000 * (0x2 * ((uint128_t)x11 * x11)))));
- { uint128_t x15 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + ((0x2 * ((uint128_t)x6 * x6)) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + ((0x3d1 * (((uint128_t)x12 * x11) + ((uint128_t)x11 * x12))) + (0x100000000 * (((uint128_t)x12 * x11) + ((uint128_t)x11 * x12)))));
- { uint128_t x16 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + ((0x3d1 * ((0x2 * ((uint128_t)x10 * x11)) + (((uint128_t)x12 * x12) + (0x2 * ((uint128_t)x11 * x10))))) + (0x100000000 * ((0x2 * ((uint128_t)x10 * x11)) + (((uint128_t)x12 * x12) + (0x2 * ((uint128_t)x11 * x10)))))));
- { uint128_t x17 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + ((0x3d1 * (((uint128_t)x8 * x11) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + ((uint128_t)x11 * x8))))) + (0x100000000 * (((uint128_t)x8 * x11) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + ((uint128_t)x11 * x8)))))));
- { uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + ((0x3d1 * ((0x2 * ((uint128_t)x6 * x11)) + (((uint128_t)x8 * x12) + ((0x2 * ((uint128_t)x10 * x10)) + (((uint128_t)x12 * x8) + (0x2 * ((uint128_t)x11 * x6))))))) + (0x100000000 * ((0x2 * ((uint128_t)x6 * x11)) + (((uint128_t)x8 * x12) + ((0x2 * ((uint128_t)x10 * x10)) + (((uint128_t)x12 * x8) + (0x2 * ((uint128_t)x11 * x6)))))))));
- { uint128_t x19 = (((uint128_t)x2 * x2) + ((0x3d1 * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4)))))))) + (0x100000000 * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4))))))))));
- { uint64_t x20 = (uint64_t) (x13 >> 0x24);
- { uint64_t x21 = ((uint64_t)x13 & 0xfffffffff);
- { uint128_t x22 = (((uint128_t)0x1000000000 * x20) + x21);
- { uint64_t x23 = (uint64_t) (x22 >> 0x24);
- { uint64_t x24 = ((uint64_t)x22 & 0xfffffffff);
- { uint128_t x25 = (((uint128_t)0x1000000000 * x23) + x24);
- { uint64_t x26 = (uint64_t) (x25 >> 0x24);
- { uint64_t x27 = ((uint64_t)x25 & 0xfffffffff);
- { uint128_t x28 = (x19 + ((0x3d1 * x26) + ((uint128_t)0x100000000 * x26)));
- { uint128_t x29 = (x28 >> 0x25);
- { uint64_t x30 = ((uint64_t)x28 & 0x1fffffffff);
- { uint128_t x31 = (x29 + x18);
- { uint128_t x32 = (x31 >> 0x25);
- { uint64_t x33 = ((uint64_t)x31 & 0x1fffffffff);
- { uint128_t x34 = (x32 + x17);
- { uint128_t x35 = (x34 >> 0x24);
- { uint64_t x36 = ((uint64_t)x34 & 0xfffffffff);
- { uint128_t x37 = (x35 + x16);
- { uint128_t x38 = (x37 >> 0x25);
- { uint64_t x39 = ((uint64_t)x37 & 0x1fffffffff);
- { uint128_t x40 = (x38 + x15);
- { uint128_t x41 = (x40 >> 0x24);
- { uint64_t x42 = ((uint64_t)x40 & 0xfffffffff);
- { uint128_t x43 = (x41 + x14);
- { uint128_t x44 = (x43 >> 0x25);
- { uint64_t x45 = ((uint64_t)x43 & 0x1fffffffff);
- { uint128_t x46 = (x44 + x27);
- { uint64_t x47 = (uint64_t) (x46 >> 0x24);
- { uint64_t x48 = ((uint64_t)x46 & 0xfffffffff);
- { uint128_t x49 = (x30 + ((0x3d1 * x47) + ((uint128_t)0x100000000 * x47)));
- { uint64_t x50 = (uint64_t) (x49 >> 0x25);
- { uint64_t x51 = ((uint64_t)x49 & 0x1fffffffff);
- { uint64_t x52 = (x51 >> 0x25);
- { uint64_t x53 = (x51 & 0x1fffffffff);
- out[0] = x53;
- out[1] = (x52 + (x50 + x33));
- out[2] = x36;
- out[3] = x39;
- out[4] = x42;
- out[5] = x45;
- out[6] = x48;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m2e32m977_7limbs/fesquare.v b/src/Specific/solinas64_2e256m2e32m977_7limbs/fesquare.v
deleted file mode 100644
index fbb472214..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_7limbs.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/solinas64_2e256m2e32m977_7limbs/fesquareDisplay.log b/src/Specific/solinas64_2e256m2e32m977_7limbs/fesquareDisplay.log
deleted file mode 100644
index b2b03e238..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x13 = (((uint128_t)x2 * x11) + (((uint128_t)x4 * x12) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + (((uint128_t)x12 * x4) + ((uint128_t)x11 * x2)))))));
- uint128_t x14 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + ((0x3d1 * (0x2 * ((uint128_t)x11 * x11))) + (0x100000000 * (0x2 * ((uint128_t)x11 * x11)))));
- uint128_t x15 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + ((0x2 * ((uint128_t)x6 * x6)) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + ((0x3d1 * (((uint128_t)x12 * x11) + ((uint128_t)x11 * x12))) + (0x100000000 * (((uint128_t)x12 * x11) + ((uint128_t)x11 * x12)))));
- uint128_t x16 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + ((0x3d1 * ((0x2 * ((uint128_t)x10 * x11)) + (((uint128_t)x12 * x12) + (0x2 * ((uint128_t)x11 * x10))))) + (0x100000000 * ((0x2 * ((uint128_t)x10 * x11)) + (((uint128_t)x12 * x12) + (0x2 * ((uint128_t)x11 * x10)))))));
- uint128_t x17 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + ((0x3d1 * (((uint128_t)x8 * x11) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + ((uint128_t)x11 * x8))))) + (0x100000000 * (((uint128_t)x8 * x11) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + ((uint128_t)x11 * x8)))))));
- uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + ((0x3d1 * ((0x2 * ((uint128_t)x6 * x11)) + (((uint128_t)x8 * x12) + ((0x2 * ((uint128_t)x10 * x10)) + (((uint128_t)x12 * x8) + (0x2 * ((uint128_t)x11 * x6))))))) + (0x100000000 * ((0x2 * ((uint128_t)x6 * x11)) + (((uint128_t)x8 * x12) + ((0x2 * ((uint128_t)x10 * x10)) + (((uint128_t)x12 * x8) + (0x2 * ((uint128_t)x11 * x6)))))))));
- uint128_t x19 = (((uint128_t)x2 * x2) + ((0x3d1 * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4)))))))) + (0x100000000 * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4))))))))));
- uint64_t x20 = (uint64_t) (x13 >> 0x24);
- uint64_t x21 = ((uint64_t)x13 & 0xfffffffff);
- uint128_t x22 = (((uint128_t)0x1000000000 * x20) + x21);
- uint64_t x23 = (uint64_t) (x22 >> 0x24);
- uint64_t x24 = ((uint64_t)x22 & 0xfffffffff);
- uint128_t x25 = (((uint128_t)0x1000000000 * x23) + x24);
- uint64_t x26 = (uint64_t) (x25 >> 0x24);
- uint64_t x27 = ((uint64_t)x25 & 0xfffffffff);
- uint128_t x28 = (x19 + ((0x3d1 * x26) + ((uint128_t)0x100000000 * x26)));
- uint128_t x29 = (x28 >> 0x25);
- uint64_t x30 = ((uint64_t)x28 & 0x1fffffffff);
- uint128_t x31 = (x29 + x18);
- uint128_t x32 = (x31 >> 0x25);
- uint64_t x33 = ((uint64_t)x31 & 0x1fffffffff);
- uint128_t x34 = (x32 + x17);
- uint128_t x35 = (x34 >> 0x24);
- uint64_t x36 = ((uint64_t)x34 & 0xfffffffff);
- uint128_t x37 = (x35 + x16);
- uint128_t x38 = (x37 >> 0x25);
- uint64_t x39 = ((uint64_t)x37 & 0x1fffffffff);
- uint128_t x40 = (x38 + x15);
- uint128_t x41 = (x40 >> 0x24);
- uint64_t x42 = ((uint64_t)x40 & 0xfffffffff);
- uint128_t x43 = (x41 + x14);
- uint128_t x44 = (x43 >> 0x25);
- uint64_t x45 = ((uint64_t)x43 & 0x1fffffffff);
- uint128_t x46 = (x44 + x27);
- uint64_t x47 = (uint64_t) (x46 >> 0x24);
- uint64_t x48 = ((uint64_t)x46 & 0xfffffffff);
- uint128_t x49 = (x30 + ((0x3d1 * x47) + ((uint128_t)0x100000000 * x47)));
- uint64_t x50 = (uint64_t) (x49 >> 0x25);
- uint64_t x51 = ((uint64_t)x49 & 0x1fffffffff);
- uint64_t x52 = (x51 >> 0x25);
- uint64_t x53 = (x51 & 0x1fffffffff);
- return (Return x48, Return x45, Return x42, Return x39, Return x36, (x52 + (x50 + x33)), Return x53))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m2e32m977_7limbs/fesquareDisplay.v b/src/Specific/solinas64_2e256m2e32m977_7limbs/fesquareDisplay.v
deleted file mode 100644
index a1a62022a..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e256m2e32m977_7limbs/fesub.c b/src/Specific/solinas64_2e256m2e32m977_7limbs/fesub.c
deleted file mode 100644
index 3515b57c9..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = ((0x3dfffff85e + x5) - x17);
- out[1] = ((0x3ffffffffe + x7) - x19);
- out[2] = ((0x1ffffffffe + x9) - x21);
- out[3] = ((0x3ffffffffe + x11) - x23);
- out[4] = ((0x1ffffffffe + x13) - x25);
- out[5] = ((0x3ffffffffe + x15) - x27);
- out[6] = ((0x1ffffffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m2e32m977_7limbs/fesub.v b/src/Specific/solinas64_2e256m2e32m977_7limbs/fesub.v
deleted file mode 100644
index 709fda544..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_7limbs.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/solinas64_2e256m2e32m977_7limbs/fesubDisplay.log b/src/Specific/solinas64_2e256m2e32m977_7limbs/fesubDisplay.log
deleted file mode 100644
index 183ce17aa..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0x1ffffffffe + x14) - x26), ((0x3ffffffffe + x15) - x27), ((0x1ffffffffe + x13) - x25), ((0x3ffffffffe + x11) - x23), ((0x1ffffffffe + x9) - x21), ((0x3ffffffffe + x7) - x19), ((0x3dfffff85e + x5) - x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m2e32m977_7limbs/fesubDisplay.v b/src/Specific/solinas64_2e256m2e32m977_7limbs/fesubDisplay.v
deleted file mode 100644
index 5ffec431d..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e256m2e32m977_7limbs/freeze.c b/src/Specific/solinas64_2e256m2e32m977_7limbs/freeze.c
deleted file mode 100644
index af254b0b7..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1efffffc2f);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0x1fffffffff);
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 36 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0xfffffffff);
- { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0x1fffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 36 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0xfffffffff);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0x1fffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 36 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0xfffffffff);
- { uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- { uint64_t x35 = (x34 & 0x1efffffc2f);
- { uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint64_t x39 = (x34 & 0x1fffffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint64_t x43 = (x34 & 0xfffffffff);
- { uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 36 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint64_t x47 = (x34 & 0x1fffffffff);
- { uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint64_t x51 = (x34 & 0xfffffffff);
- { uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 36 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint64_t x55 = (x34 & 0x1fffffffff);
- { uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint64_t x59 = (x34 & 0xfffffffff);
- { uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 36 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m2e32m977_7limbs/freeze.v b/src/Specific/solinas64_2e256m2e32m977_7limbs/freeze.v
deleted file mode 100644
index b03ef68ca..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_7limbs.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/solinas64_2e256m2e32m977_7limbs/freezeDisplay.log b/src/Specific/solinas64_2e256m2e32m977_7limbs/freezeDisplay.log
deleted file mode 100644
index 2491fbf74..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1efffffc2f);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0x1fffffffff);
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 36 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0xfffffffff);
- uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0x1fffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 36 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0xfffffffff);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0x1fffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 36 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0xfffffffff);
- uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- uint64_t x35 = (x34 & 0x1efffffc2f);
- uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint64_t x39 = (x34 & 0x1fffffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint64_t x43 = (x34 & 0xfffffffff);
- uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 36 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint64_t x47 = (x34 & 0x1fffffffff);
- uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint64_t x51 = (x34 & 0xfffffffff);
- uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 36 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint64_t x55 = (x34 & 0x1fffffffff);
- uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 37 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint64_t x59 = (x34 & 0xfffffffff);
- uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 36 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m2e32m977_7limbs/freezeDisplay.v b/src/Specific/solinas64_2e256m2e32m977_7limbs/freezeDisplay.v
deleted file mode 100644
index 6ce8a77b3..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m2e32m977_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e256m2e32m977_7limbs/py_interpreter.sh b/src/Specific/solinas64_2e256m2e32m977_7limbs/py_interpreter.sh
deleted file mode 100755
index 94fddd182..000000000
--- a/src/Specific/solinas64_2e256m2e32m977_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256 - 2**32 - 977' -Dmodulus_bytes='36 + 4/7' -Da24='121665'
diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/CurveParameters.v b/src/Specific/solinas64_2e256m4294968273_10limbs/CurveParameters.v
deleted file mode 100644
index 2f05d6aad..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256 - 4294968273
-Base: 25.6
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 25 + 3/5;
- bitwidth := 64;
- s := 2^256;
- c := [(1, 4294968273)];
- carry_chains := Some [seq 0 (pred 10); [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/solinas64_2e256m4294968273_10limbs/Synthesis.v b/src/Specific/solinas64_2e256m4294968273_10limbs/Synthesis.v
deleted file mode 100644
index 1c83b553d..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e256m4294968273_10limbs.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/solinas64_2e256m4294968273_10limbs/compiler.sh b/src/Specific/solinas64_2e256m4294968273_10limbs/compiler.sh
deleted file mode 100755
index b6a8ea76b..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{26,26,25,26,25,26,26,25,26,25}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<256) - 4294968273' "$@"
diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/compilerxx.sh b/src/Specific/solinas64_2e256m4294968273_10limbs/compilerxx.sh
deleted file mode 100755
index a2909df87..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{26,26,25,26,25,26,26,25,26,25}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<256) - 4294968273' "$@"
diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/feadd.c b/src/Specific/solinas64_2e256m4294968273_10limbs/feadd.c
deleted file mode 100644
index df991e375..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/feadd.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void feadd(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- out[0] = (x5 + x23);
- out[1] = (x7 + x25);
- out[2] = (x9 + x27);
- out[3] = (x11 + x29);
- out[4] = (x13 + x31);
- out[5] = (x15 + x33);
- out[6] = (x17 + x35);
- out[7] = (x19 + x37);
- out[8] = (x21 + x39);
- out[9] = (x20 + x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/feadd.v b/src/Specific/solinas64_2e256m4294968273_10limbs/feadd.v
deleted file mode 100644
index 1ad6b0e95..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m4294968273_10limbs.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/solinas64_2e256m4294968273_10limbs/feaddDisplay.log b/src/Specific/solinas64_2e256m4294968273_10limbs/feaddDisplay.log
deleted file mode 100644
index 04176128e..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/feaddDisplay.v b/src/Specific/solinas64_2e256m4294968273_10limbs/feaddDisplay.v
deleted file mode 100644
index fea9689cc..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m4294968273_10limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/fecarry.v b/src/Specific/solinas64_2e256m4294968273_10limbs/fecarry.v
deleted file mode 100644
index b3de1c92f..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m4294968273_10limbs.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/solinas64_2e256m4294968273_10limbs/fecarryDisplay.v b/src/Specific/solinas64_2e256m4294968273_10limbs/fecarryDisplay.v
deleted file mode 100644
index 447c2df32..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m4294968273_10limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/femul.c b/src/Specific/solinas64_2e256m4294968273_10limbs/femul.c
deleted file mode 100644
index 2ec0954ba..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/femul.c
+++ /dev/null
@@ -1,78 +0,0 @@
-static void femul(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- { uint64_t x40 = ((x5 * x38) + ((x7 * x39) + ((0x2 * (x9 * x37)) + ((x11 * x35) + ((x13 * x33) + ((x15 * x31) + ((x17 * x29) + ((0x2 * (x19 * x27)) + ((x21 * x25) + (x20 * x23))))))))));
- { uint128_t x41 = (((x5 * x39) + ((0x2 * (x7 * x37)) + ((0x2 * (x9 * x35)) + ((x11 * x33) + ((0x2 * (x13 * x31)) + ((x15 * x29) + ((0x2 * (x17 * x27)) + ((0x2 * (x19 * x25)) + (x21 * x23))))))))) + ((uint128_t)0x1000003d1 * (0x2 * (x20 * x38))));
- { uint128_t x42 = (((x5 * x37) + ((x7 * x35) + ((x9 * x33) + ((x11 * x31) + ((x13 * x29) + ((x15 * x27) + ((x17 * x25) + (x19 * x23)))))))) + ((uint128_t)0x1000003d1 * ((x21 * x38) + (x20 * x39))));
- { uint128_t x43 = (((x5 * x35) + ((x7 * x33) + ((0x2 * (x9 * x31)) + ((x11 * x29) + ((0x2 * (x13 * x27)) + ((x15 * x25) + (x17 * x23))))))) + ((uint128_t)0x1000003d1 * ((0x2 * (x19 * x38)) + ((x21 * x39) + (0x2 * (x20 * x37))))));
- { uint128_t x44 = (((x5 * x33) + ((0x2 * (x7 * x31)) + ((0x2 * (x9 * x29)) + ((0x2 * (x11 * x27)) + ((0x2 * (x13 * x25)) + (x15 * x23)))))) + ((uint128_t)0x1000003d1 * ((0x2 * (x17 * x38)) + ((0x2 * (x19 * x39)) + ((0x2 * (x21 * x37)) + (0x2 * (x20 * x35)))))));
- { uint128_t x45 = (((x5 * x31) + ((x7 * x29) + ((0x2 * (x9 * x27)) + ((x11 * x25) + (x13 * x23))))) + ((uint128_t)0x1000003d1 * ((x15 * x38) + ((x17 * x39) + ((0x2 * (x19 * x37)) + ((x21 * x35) + (x20 * x33)))))));
- { uint128_t x46 = (((x5 * x29) + ((0x2 * (x7 * x27)) + ((0x2 * (x9 * x25)) + (x11 * x23)))) + ((uint128_t)0x1000003d1 * ((0x2 * (x13 * x38)) + ((x15 * x39) + ((0x2 * (x17 * x37)) + ((0x2 * (x19 * x35)) + ((x21 * x33) + (0x2 * (x20 * x31)))))))));
- { uint128_t x47 = (((x5 * x27) + ((x7 * x25) + (x9 * x23))) + ((uint128_t)0x1000003d1 * ((x11 * x38) + ((x13 * x39) + ((x15 * x37) + ((x17 * x35) + ((x19 * x33) + ((x21 * x31) + (x20 * x29)))))))));
- { uint128_t x48 = (((x5 * x25) + (x7 * x23)) + ((uint128_t)0x1000003d1 * ((0x2 * (x9 * x38)) + ((x11 * x39) + ((0x2 * (x13 * x37)) + ((x15 * x35) + ((x17 * x33) + ((0x2 * (x19 * x31)) + ((x21 * x29) + (0x2 * (x20 * x27)))))))))));
- { uint128_t x49 = ((x5 * x23) + ((uint128_t)0x1000003d1 * ((0x2 * (x7 * x38)) + ((0x2 * (x9 * x39)) + ((0x2 * (x11 * x37)) + ((0x2 * (x13 * x35)) + ((x15 * x33) + ((0x2 * (x17 * x31)) + ((0x2 * (x19 * x29)) + ((0x2 * (x21 * x27)) + (0x2 * (x20 * x25))))))))))));
- { uint128_t x50 = (x49 >> 0x1a);
- { uint64_t x51 = ((uint64_t)x49 & 0x3ffffff);
- { uint128_t x52 = (x50 + x48);
- { uint128_t x53 = (x52 >> 0x1a);
- { uint64_t x54 = ((uint64_t)x52 & 0x3ffffff);
- { uint128_t x55 = (x53 + x47);
- { uint128_t x56 = (x55 >> 0x19);
- { uint64_t x57 = ((uint64_t)x55 & 0x1ffffff);
- { uint128_t x58 = (x56 + x46);
- { uint64_t x59 = (uint64_t) (x58 >> 0x1a);
- { uint64_t x60 = ((uint64_t)x58 & 0x3ffffff);
- { uint128_t x61 = (x59 + x45);
- { uint128_t x62 = (x61 >> 0x19);
- { uint64_t x63 = ((uint64_t)x61 & 0x1ffffff);
- { uint128_t x64 = (x62 + x44);
- { uint64_t x65 = (uint64_t) (x64 >> 0x1a);
- { uint64_t x66 = ((uint64_t)x64 & 0x3ffffff);
- { uint128_t x67 = (x65 + x43);
- { uint64_t x68 = (uint64_t) (x67 >> 0x1a);
- { uint64_t x69 = ((uint64_t)x67 & 0x3ffffff);
- { uint128_t x70 = (x68 + x42);
- { uint64_t x71 = (uint64_t) (x70 >> 0x19);
- { uint64_t x72 = ((uint64_t)x70 & 0x1ffffff);
- { uint128_t x73 = (x71 + x41);
- { uint64_t x74 = (uint64_t) (x73 >> 0x1a);
- { uint64_t x75 = ((uint64_t)x73 & 0x3ffffff);
- { uint64_t x76 = (x74 + x40);
- { uint64_t x77 = (x76 >> 0x19);
- { uint64_t x78 = (x76 & 0x1ffffff);
- { uint128_t x79 = (x51 + ((uint128_t)0x1000003d1 * x77));
- { uint64_t x80 = (uint64_t) (x79 >> 0x1a);
- { uint64_t x81 = ((uint64_t)x79 & 0x3ffffff);
- { uint64_t x82 = (x80 + x54);
- { uint64_t x83 = (x82 >> 0x1a);
- { uint64_t x84 = (x82 & 0x3ffffff);
- out[0] = x81;
- out[1] = x84;
- out[2] = (x83 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/femul.v b/src/Specific/solinas64_2e256m4294968273_10limbs/femul.v
deleted file mode 100644
index 673b1fd3e..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m4294968273_10limbs.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/solinas64_2e256m4294968273_10limbs/femulDisplay.log b/src/Specific/solinas64_2e256m4294968273_10limbs/femulDisplay.log
deleted file mode 100644
index ced98fd6d..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/femulDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- uint64_t x40 = ((x5 * x38) + ((x7 * x39) + ((0x2 * (x9 * x37)) + ((x11 * x35) + ((x13 * x33) + ((x15 * x31) + ((x17 * x29) + ((0x2 * (x19 * x27)) + ((x21 * x25) + (x20 * x23))))))))));
- uint128_t x41 = (((x5 * x39) + ((0x2 * (x7 * x37)) + ((0x2 * (x9 * x35)) + ((x11 * x33) + ((0x2 * (x13 * x31)) + ((x15 * x29) + ((0x2 * (x17 * x27)) + ((0x2 * (x19 * x25)) + (x21 * x23))))))))) + ((uint128_t)0x1000003d1 * (0x2 * (x20 * x38))));
- uint128_t x42 = (((x5 * x37) + ((x7 * x35) + ((x9 * x33) + ((x11 * x31) + ((x13 * x29) + ((x15 * x27) + ((x17 * x25) + (x19 * x23)))))))) + ((uint128_t)0x1000003d1 * ((x21 * x38) + (x20 * x39))));
- uint128_t x43 = (((x5 * x35) + ((x7 * x33) + ((0x2 * (x9 * x31)) + ((x11 * x29) + ((0x2 * (x13 * x27)) + ((x15 * x25) + (x17 * x23))))))) + ((uint128_t)0x1000003d1 * ((0x2 * (x19 * x38)) + ((x21 * x39) + (0x2 * (x20 * x37))))));
- uint128_t x44 = (((x5 * x33) + ((0x2 * (x7 * x31)) + ((0x2 * (x9 * x29)) + ((0x2 * (x11 * x27)) + ((0x2 * (x13 * x25)) + (x15 * x23)))))) + ((uint128_t)0x1000003d1 * ((0x2 * (x17 * x38)) + ((0x2 * (x19 * x39)) + ((0x2 * (x21 * x37)) + (0x2 * (x20 * x35)))))));
- uint128_t x45 = (((x5 * x31) + ((x7 * x29) + ((0x2 * (x9 * x27)) + ((x11 * x25) + (x13 * x23))))) + ((uint128_t)0x1000003d1 * ((x15 * x38) + ((x17 * x39) + ((0x2 * (x19 * x37)) + ((x21 * x35) + (x20 * x33)))))));
- uint128_t x46 = (((x5 * x29) + ((0x2 * (x7 * x27)) + ((0x2 * (x9 * x25)) + (x11 * x23)))) + ((uint128_t)0x1000003d1 * ((0x2 * (x13 * x38)) + ((x15 * x39) + ((0x2 * (x17 * x37)) + ((0x2 * (x19 * x35)) + ((x21 * x33) + (0x2 * (x20 * x31)))))))));
- uint128_t x47 = (((x5 * x27) + ((x7 * x25) + (x9 * x23))) + ((uint128_t)0x1000003d1 * ((x11 * x38) + ((x13 * x39) + ((x15 * x37) + ((x17 * x35) + ((x19 * x33) + ((x21 * x31) + (x20 * x29)))))))));
- uint128_t x48 = (((x5 * x25) + (x7 * x23)) + ((uint128_t)0x1000003d1 * ((0x2 * (x9 * x38)) + ((x11 * x39) + ((0x2 * (x13 * x37)) + ((x15 * x35) + ((x17 * x33) + ((0x2 * (x19 * x31)) + ((x21 * x29) + (0x2 * (x20 * x27)))))))))));
- uint128_t x49 = ((x5 * x23) + ((uint128_t)0x1000003d1 * ((0x2 * (x7 * x38)) + ((0x2 * (x9 * x39)) + ((0x2 * (x11 * x37)) + ((0x2 * (x13 * x35)) + ((x15 * x33) + ((0x2 * (x17 * x31)) + ((0x2 * (x19 * x29)) + ((0x2 * (x21 * x27)) + (0x2 * (x20 * x25))))))))))));
- uint128_t x50 = (x49 >> 0x1a);
- uint64_t x51 = ((uint64_t)x49 & 0x3ffffff);
- uint128_t x52 = (x50 + x48);
- uint128_t x53 = (x52 >> 0x1a);
- uint64_t x54 = ((uint64_t)x52 & 0x3ffffff);
- uint128_t x55 = (x53 + x47);
- uint128_t x56 = (x55 >> 0x19);
- uint64_t x57 = ((uint64_t)x55 & 0x1ffffff);
- uint128_t x58 = (x56 + x46);
- uint64_t x59 = (uint64_t) (x58 >> 0x1a);
- uint64_t x60 = ((uint64_t)x58 & 0x3ffffff);
- uint128_t x61 = (x59 + x45);
- uint128_t x62 = (x61 >> 0x19);
- uint64_t x63 = ((uint64_t)x61 & 0x1ffffff);
- uint128_t x64 = (x62 + x44);
- uint64_t x65 = (uint64_t) (x64 >> 0x1a);
- uint64_t x66 = ((uint64_t)x64 & 0x3ffffff);
- uint128_t x67 = (x65 + x43);
- uint64_t x68 = (uint64_t) (x67 >> 0x1a);
- uint64_t x69 = ((uint64_t)x67 & 0x3ffffff);
- uint128_t x70 = (x68 + x42);
- uint64_t x71 = (uint64_t) (x70 >> 0x19);
- uint64_t x72 = ((uint64_t)x70 & 0x1ffffff);
- uint128_t x73 = (x71 + x41);
- uint64_t x74 = (uint64_t) (x73 >> 0x1a);
- uint64_t x75 = ((uint64_t)x73 & 0x3ffffff);
- uint64_t x76 = (x74 + x40);
- uint64_t x77 = (x76 >> 0x19);
- uint64_t x78 = (x76 & 0x1ffffff);
- uint128_t x79 = (x51 + ((uint128_t)0x1000003d1 * x77));
- uint64_t x80 = (uint64_t) (x79 >> 0x1a);
- uint64_t x81 = ((uint64_t)x79 & 0x3ffffff);
- uint64_t x82 = (x80 + x54);
- uint64_t x83 = (x82 >> 0x1a);
- uint64_t x84 = (x82 & 0x3ffffff);
- return (Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x83 + x57), Return x84, Return x81))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/femulDisplay.v b/src/Specific/solinas64_2e256m4294968273_10limbs/femulDisplay.v
deleted file mode 100644
index cbfdf260e..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m4294968273_10limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/fesquare.c b/src/Specific/solinas64_2e256m4294968273_10limbs/fesquare.c
deleted file mode 100644
index 52a26a638..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/fesquare.c
+++ /dev/null
@@ -1,68 +0,0 @@
-static void fesquare(uint64_t out[10], const uint64_t in1[10]) {
- { const uint64_t x17 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x19 = ((x2 * x17) + ((x4 * x18) + ((0x2 * (x6 * x16)) + ((x8 * x14) + ((x10 * x12) + ((x12 * x10) + ((x14 * x8) + ((0x2 * (x16 * x6)) + ((x18 * x4) + (x17 * x2))))))))));
- { uint128_t x20 = (((x2 * x18) + ((0x2 * (x4 * x16)) + ((0x2 * (x6 * x14)) + ((x8 * x12) + ((0x2 * (x10 * x10)) + ((x12 * x8) + ((0x2 * (x14 * x6)) + ((0x2 * (x16 * x4)) + (x18 * x2))))))))) + ((uint128_t)0x1000003d1 * (0x2 * (x17 * x17))));
- { uint128_t x21 = (((x2 * x16) + ((x4 * x14) + ((x6 * x12) + ((x8 * x10) + ((x10 * x8) + ((x12 * x6) + ((x14 * x4) + (x16 * x2)))))))) + ((uint128_t)0x1000003d1 * ((x18 * x17) + (x17 * x18))));
- { uint128_t x22 = (((x2 * x14) + ((x4 * x12) + ((0x2 * (x6 * x10)) + ((x8 * x8) + ((0x2 * (x10 * x6)) + ((x12 * x4) + (x14 * x2))))))) + ((uint128_t)0x1000003d1 * ((0x2 * (x16 * x17)) + ((x18 * x18) + (0x2 * (x17 * x16))))));
- { uint128_t x23 = (((x2 * x12) + ((0x2 * (x4 * x10)) + ((0x2 * (x6 * x8)) + ((0x2 * (x8 * x6)) + ((0x2 * (x10 * x4)) + (x12 * x2)))))) + ((uint128_t)0x1000003d1 * ((0x2 * (x14 * x17)) + ((0x2 * (x16 * x18)) + ((0x2 * (x18 * x16)) + (0x2 * (x17 * x14)))))));
- { uint128_t x24 = (((x2 * x10) + ((x4 * x8) + ((0x2 * (x6 * x6)) + ((x8 * x4) + (x10 * x2))))) + ((uint128_t)0x1000003d1 * ((x12 * x17) + ((x14 * x18) + ((0x2 * (x16 * x16)) + ((x18 * x14) + (x17 * x12)))))));
- { uint128_t x25 = (((x2 * x8) + ((0x2 * (x4 * x6)) + ((0x2 * (x6 * x4)) + (x8 * x2)))) + ((uint128_t)0x1000003d1 * ((0x2 * (x10 * x17)) + ((x12 * x18) + ((0x2 * (x14 * x16)) + ((0x2 * (x16 * x14)) + ((x18 * x12) + (0x2 * (x17 * x10)))))))));
- { uint128_t x26 = (((x2 * x6) + ((x4 * x4) + (x6 * x2))) + ((uint128_t)0x1000003d1 * ((x8 * x17) + ((x10 * x18) + ((x12 * x16) + ((x14 * x14) + ((x16 * x12) + ((x18 * x10) + (x17 * x8)))))))));
- { uint128_t x27 = (((x2 * x4) + (x4 * x2)) + ((uint128_t)0x1000003d1 * ((0x2 * (x6 * x17)) + ((x8 * x18) + ((0x2 * (x10 * x16)) + ((x12 * x14) + ((x14 * x12) + ((0x2 * (x16 * x10)) + ((x18 * x8) + (0x2 * (x17 * x6)))))))))));
- { uint128_t x28 = ((x2 * x2) + ((uint128_t)0x1000003d1 * ((0x2 * (x4 * x17)) + ((0x2 * (x6 * x18)) + ((0x2 * (x8 * x16)) + ((0x2 * (x10 * x14)) + ((x12 * x12) + ((0x2 * (x14 * x10)) + ((0x2 * (x16 * x8)) + ((0x2 * (x18 * x6)) + (0x2 * (x17 * x4))))))))))));
- { uint128_t x29 = (x28 >> 0x1a);
- { uint64_t x30 = ((uint64_t)x28 & 0x3ffffff);
- { uint128_t x31 = (x29 + x27);
- { uint128_t x32 = (x31 >> 0x1a);
- { uint64_t x33 = ((uint64_t)x31 & 0x3ffffff);
- { uint128_t x34 = (x32 + x26);
- { uint128_t x35 = (x34 >> 0x19);
- { uint64_t x36 = ((uint64_t)x34 & 0x1ffffff);
- { uint128_t x37 = (x35 + x25);
- { uint64_t x38 = (uint64_t) (x37 >> 0x1a);
- { uint64_t x39 = ((uint64_t)x37 & 0x3ffffff);
- { uint128_t x40 = (x38 + x24);
- { uint128_t x41 = (x40 >> 0x19);
- { uint64_t x42 = ((uint64_t)x40 & 0x1ffffff);
- { uint128_t x43 = (x41 + x23);
- { uint64_t x44 = (uint64_t) (x43 >> 0x1a);
- { uint64_t x45 = ((uint64_t)x43 & 0x3ffffff);
- { uint128_t x46 = (x44 + x22);
- { uint64_t x47 = (uint64_t) (x46 >> 0x1a);
- { uint64_t x48 = ((uint64_t)x46 & 0x3ffffff);
- { uint128_t x49 = (x47 + x21);
- { uint64_t x50 = (uint64_t) (x49 >> 0x19);
- { uint64_t x51 = ((uint64_t)x49 & 0x1ffffff);
- { uint128_t x52 = (x50 + x20);
- { uint64_t x53 = (uint64_t) (x52 >> 0x1a);
- { uint64_t x54 = ((uint64_t)x52 & 0x3ffffff);
- { uint64_t x55 = (x53 + x19);
- { uint64_t x56 = (x55 >> 0x19);
- { uint64_t x57 = (x55 & 0x1ffffff);
- { uint128_t x58 = (x30 + ((uint128_t)0x1000003d1 * x56));
- { uint64_t x59 = (uint64_t) (x58 >> 0x1a);
- { uint64_t x60 = ((uint64_t)x58 & 0x3ffffff);
- { uint64_t x61 = (x59 + x33);
- { uint64_t x62 = (x61 >> 0x1a);
- { uint64_t x63 = (x61 & 0x3ffffff);
- out[0] = x60;
- out[1] = x63;
- out[2] = (x62 + x36);
- out[3] = x39;
- out[4] = x42;
- out[5] = x45;
- out[6] = x48;
- out[7] = x51;
- out[8] = x54;
- out[9] = x57;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/fesquare.v b/src/Specific/solinas64_2e256m4294968273_10limbs/fesquare.v
deleted file mode 100644
index 4d82e008a..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m4294968273_10limbs.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/solinas64_2e256m4294968273_10limbs/fesquareDisplay.log b/src/Specific/solinas64_2e256m4294968273_10limbs/fesquareDisplay.log
deleted file mode 100644
index 048495fe4..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x19 = ((x2 * x17) + ((x4 * x18) + ((0x2 * (x6 * x16)) + ((x8 * x14) + ((x10 * x12) + ((x12 * x10) + ((x14 * x8) + ((0x2 * (x16 * x6)) + ((x18 * x4) + (x17 * x2))))))))));
- uint128_t x20 = (((x2 * x18) + ((0x2 * (x4 * x16)) + ((0x2 * (x6 * x14)) + ((x8 * x12) + ((0x2 * (x10 * x10)) + ((x12 * x8) + ((0x2 * (x14 * x6)) + ((0x2 * (x16 * x4)) + (x18 * x2))))))))) + ((uint128_t)0x1000003d1 * (0x2 * (x17 * x17))));
- uint128_t x21 = (((x2 * x16) + ((x4 * x14) + ((x6 * x12) + ((x8 * x10) + ((x10 * x8) + ((x12 * x6) + ((x14 * x4) + (x16 * x2)))))))) + ((uint128_t)0x1000003d1 * ((x18 * x17) + (x17 * x18))));
- uint128_t x22 = (((x2 * x14) + ((x4 * x12) + ((0x2 * (x6 * x10)) + ((x8 * x8) + ((0x2 * (x10 * x6)) + ((x12 * x4) + (x14 * x2))))))) + ((uint128_t)0x1000003d1 * ((0x2 * (x16 * x17)) + ((x18 * x18) + (0x2 * (x17 * x16))))));
- uint128_t x23 = (((x2 * x12) + ((0x2 * (x4 * x10)) + ((0x2 * (x6 * x8)) + ((0x2 * (x8 * x6)) + ((0x2 * (x10 * x4)) + (x12 * x2)))))) + ((uint128_t)0x1000003d1 * ((0x2 * (x14 * x17)) + ((0x2 * (x16 * x18)) + ((0x2 * (x18 * x16)) + (0x2 * (x17 * x14)))))));
- uint128_t x24 = (((x2 * x10) + ((x4 * x8) + ((0x2 * (x6 * x6)) + ((x8 * x4) + (x10 * x2))))) + ((uint128_t)0x1000003d1 * ((x12 * x17) + ((x14 * x18) + ((0x2 * (x16 * x16)) + ((x18 * x14) + (x17 * x12)))))));
- uint128_t x25 = (((x2 * x8) + ((0x2 * (x4 * x6)) + ((0x2 * (x6 * x4)) + (x8 * x2)))) + ((uint128_t)0x1000003d1 * ((0x2 * (x10 * x17)) + ((x12 * x18) + ((0x2 * (x14 * x16)) + ((0x2 * (x16 * x14)) + ((x18 * x12) + (0x2 * (x17 * x10)))))))));
- uint128_t x26 = (((x2 * x6) + ((x4 * x4) + (x6 * x2))) + ((uint128_t)0x1000003d1 * ((x8 * x17) + ((x10 * x18) + ((x12 * x16) + ((x14 * x14) + ((x16 * x12) + ((x18 * x10) + (x17 * x8)))))))));
- uint128_t x27 = (((x2 * x4) + (x4 * x2)) + ((uint128_t)0x1000003d1 * ((0x2 * (x6 * x17)) + ((x8 * x18) + ((0x2 * (x10 * x16)) + ((x12 * x14) + ((x14 * x12) + ((0x2 * (x16 * x10)) + ((x18 * x8) + (0x2 * (x17 * x6)))))))))));
- uint128_t x28 = ((x2 * x2) + ((uint128_t)0x1000003d1 * ((0x2 * (x4 * x17)) + ((0x2 * (x6 * x18)) + ((0x2 * (x8 * x16)) + ((0x2 * (x10 * x14)) + ((x12 * x12) + ((0x2 * (x14 * x10)) + ((0x2 * (x16 * x8)) + ((0x2 * (x18 * x6)) + (0x2 * (x17 * x4))))))))))));
- uint128_t x29 = (x28 >> 0x1a);
- uint64_t x30 = ((uint64_t)x28 & 0x3ffffff);
- uint128_t x31 = (x29 + x27);
- uint128_t x32 = (x31 >> 0x1a);
- uint64_t x33 = ((uint64_t)x31 & 0x3ffffff);
- uint128_t x34 = (x32 + x26);
- uint128_t x35 = (x34 >> 0x19);
- uint64_t x36 = ((uint64_t)x34 & 0x1ffffff);
- uint128_t x37 = (x35 + x25);
- uint64_t x38 = (uint64_t) (x37 >> 0x1a);
- uint64_t x39 = ((uint64_t)x37 & 0x3ffffff);
- uint128_t x40 = (x38 + x24);
- uint128_t x41 = (x40 >> 0x19);
- uint64_t x42 = ((uint64_t)x40 & 0x1ffffff);
- uint128_t x43 = (x41 + x23);
- uint64_t x44 = (uint64_t) (x43 >> 0x1a);
- uint64_t x45 = ((uint64_t)x43 & 0x3ffffff);
- uint128_t x46 = (x44 + x22);
- uint64_t x47 = (uint64_t) (x46 >> 0x1a);
- uint64_t x48 = ((uint64_t)x46 & 0x3ffffff);
- uint128_t x49 = (x47 + x21);
- uint64_t x50 = (uint64_t) (x49 >> 0x19);
- uint64_t x51 = ((uint64_t)x49 & 0x1ffffff);
- uint128_t x52 = (x50 + x20);
- uint64_t x53 = (uint64_t) (x52 >> 0x1a);
- uint64_t x54 = ((uint64_t)x52 & 0x3ffffff);
- uint64_t x55 = (x53 + x19);
- uint64_t x56 = (x55 >> 0x19);
- uint64_t x57 = (x55 & 0x1ffffff);
- uint128_t x58 = (x30 + ((uint128_t)0x1000003d1 * x56));
- uint64_t x59 = (uint64_t) (x58 >> 0x1a);
- uint64_t x60 = ((uint64_t)x58 & 0x3ffffff);
- uint64_t x61 = (x59 + x33);
- uint64_t x62 = (x61 >> 0x1a);
- uint64_t x63 = (x61 & 0x3ffffff);
- return (Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, Return x39, (x62 + x36), Return x63, Return x60))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/fesquareDisplay.v b/src/Specific/solinas64_2e256m4294968273_10limbs/fesquareDisplay.v
deleted file mode 100644
index a5d45f524..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m4294968273_10limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/fesub.c b/src/Specific/solinas64_2e256m4294968273_10limbs/fesub.c
deleted file mode 100644
index 47fd8e81c..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/fesub.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fesub(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- out[0] = ((0x7fff85e + x5) - x23);
- out[1] = ((0x7ffff7e + x7) - x25);
- out[2] = ((0x3fffffe + x9) - x27);
- out[3] = ((0x7fffffe + x11) - x29);
- out[4] = ((0x3fffffe + x13) - x31);
- out[5] = ((0x7fffffe + x15) - x33);
- out[6] = ((0x7fffffe + x17) - x35);
- out[7] = ((0x3fffffe + x19) - x37);
- out[8] = ((0x7fffffe + x21) - x39);
- out[9] = ((0x3fffffe + x20) - x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/fesub.v b/src/Specific/solinas64_2e256m4294968273_10limbs/fesub.v
deleted file mode 100644
index f34b20edf..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m4294968273_10limbs.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/solinas64_2e256m4294968273_10limbs/fesubDisplay.log b/src/Specific/solinas64_2e256m4294968273_10limbs/fesubDisplay.log
deleted file mode 100644
index e3b338c3c..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- (((0x3fffffe + x20) - x38), ((0x7fffffe + x21) - x39), ((0x3fffffe + x19) - x37), ((0x7fffffe + x17) - x35), ((0x7fffffe + x15) - x33), ((0x3fffffe + x13) - x31), ((0x7fffffe + x11) - x29), ((0x3fffffe + x9) - x27), ((0x7ffff7e + x7) - x25), ((0x7fff85e + x5) - x23)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/fesubDisplay.v b/src/Specific/solinas64_2e256m4294968273_10limbs/fesubDisplay.v
deleted file mode 100644
index 98c44dc0e..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m4294968273_10limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/freeze.c b/src/Specific/solinas64_2e256m4294968273_10limbs/freeze.c
deleted file mode 100644
index d5234c2a8..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/freeze.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void freeze(uint64_t out[10], const uint64_t in1[10]) {
- { const uint64_t x17 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffc2f);
- { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x4, 0x3ffffbf);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x6, 0x1ffffff);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x8, 0x3ffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x10, 0x1ffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x12, 0x3ffffff);
- { uint64_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x14, 0x3ffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x39, Return x16, 0x1ffffff);
- { uint64_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x18, 0x3ffffff);
- { uint64_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x17, 0x1ffffff);
- { uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL);
- { uint64_t x50 = (x49 & 0x3fffc2f);
- { uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- { uint64_t x54 = (x49 & 0x3ffffbf);
- { uint64_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- { uint64_t x58 = (x49 & 0x1ffffff);
- { uint64_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- { uint64_t x62 = (x49 & 0x3ffffff);
- { uint64_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- { uint64_t x66 = (x49 & 0x1ffffff);
- { uint64_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- { uint64_t x70 = (x49 & 0x3ffffff);
- { uint64_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- { uint64_t x74 = (x49 & 0x3ffffff);
- { uint64_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- { uint64_t x78 = (x49 & 0x1ffffff);
- { uint64_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- { uint64_t x82 = (x49 & 0x3ffffff);
- { uint64_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- { uint64_t x86 = (x49 & 0x1ffffff);
- { uint64_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- out[0] = x52;
- out[1] = x56;
- out[2] = x60;
- out[3] = x64;
- out[4] = x68;
- out[5] = x72;
- out[6] = x76;
- out[7] = x80;
- out[8] = x84;
- out[9] = x88;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/freeze.v b/src/Specific/solinas64_2e256m4294968273_10limbs/freeze.v
deleted file mode 100644
index 4e929b8c3..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m4294968273_10limbs.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/solinas64_2e256m4294968273_10limbs/freezeDisplay.log b/src/Specific/solinas64_2e256m4294968273_10limbs/freezeDisplay.log
deleted file mode 100644
index db98ea96f..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffc2f);
- uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x4, 0x3ffffbf);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x6, 0x1ffffff);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x8, 0x3ffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x10, 0x1ffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x12, 0x3ffffff);
- uint64_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x14, 0x3ffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x39, Return x16, 0x1ffffff);
- uint64_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x18, 0x3ffffff);
- uint64_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 25 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x17, 0x1ffffff);
- uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL);
- uint64_t x50 = (x49 & 0x3fffc2f);
- uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- uint64_t x54 = (x49 & 0x3ffffbf);
- uint64_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- uint64_t x58 = (x49 & 0x1ffffff);
- uint64_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- uint64_t x62 = (x49 & 0x3ffffff);
- uint64_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- uint64_t x66 = (x49 & 0x1ffffff);
- uint64_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- uint64_t x70 = (x49 & 0x3ffffff);
- uint64_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- uint64_t x74 = (x49 & 0x3ffffff);
- uint64_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- uint64_t x78 = (x49 & 0x1ffffff);
- uint64_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- uint64_t x82 = (x49 & 0x3ffffff);
- uint64_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 26 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- uint64_t x86 = (x49 & 0x1ffffff);
- uint64_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 25 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- (Return x88, Return x84, Return x80, Return x76, Return x72, Return x68, Return x64, Return x60, Return x56, Return x52))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/freezeDisplay.v b/src/Specific/solinas64_2e256m4294968273_10limbs/freezeDisplay.v
deleted file mode 100644
index 3cf0e4776..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m4294968273_10limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e256m4294968273_10limbs/py_interpreter.sh b/src/Specific/solinas64_2e256m4294968273_10limbs/py_interpreter.sh
deleted file mode 100755
index a6f37492e..000000000
--- a/src/Specific/solinas64_2e256m4294968273_10limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256 - 4294968273' -Dmodulus_bytes='25.6' -Da24='121665'
diff --git a/src/Specific/solinas64_2e256m4294968273_9limbs/CurveParameters.v b/src/Specific/solinas64_2e256m4294968273_9limbs/CurveParameters.v
deleted file mode 100644
index c376d9abe..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^256 - 4294968273
-Base: 28 + 4/9
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 28 + 4/9;
- bitwidth := 64;
- s := 2^256;
- c := [(1, 4294968273)];
- carry_chains := Some [seq 0 (pred 9); [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/solinas64_2e256m4294968273_9limbs/Synthesis.v b/src/Specific/solinas64_2e256m4294968273_9limbs/Synthesis.v
deleted file mode 100644
index 4e31ed300..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e256m4294968273_9limbs.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/solinas64_2e256m4294968273_9limbs/compiler.sh b/src/Specific/solinas64_2e256m4294968273_9limbs/compiler.sh
deleted file mode 100755
index eecd10d98..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{29,28,29,28,29,28,29,28,28}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<256) - 4294968273' "$@"
diff --git a/src/Specific/solinas64_2e256m4294968273_9limbs/compilerxx.sh b/src/Specific/solinas64_2e256m4294968273_9limbs/compilerxx.sh
deleted file mode 100755
index 8ab256dd3..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{29,28,29,28,29,28,29,28,28}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xfc,0x2f}' -Dmodulus_bytes_val='32' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<256) - 4294968273' "$@"
diff --git a/src/Specific/solinas64_2e256m4294968273_9limbs/feadd.c b/src/Specific/solinas64_2e256m4294968273_9limbs/feadd.c
deleted file mode 100644
index 98ab4434c..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m4294968273_9limbs/feadd.v b/src/Specific/solinas64_2e256m4294968273_9limbs/feadd.v
deleted file mode 100644
index eb7d2a9bd..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m4294968273_9limbs.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/solinas64_2e256m4294968273_9limbs/feaddDisplay.log b/src/Specific/solinas64_2e256m4294968273_9limbs/feaddDisplay.log
deleted file mode 100644
index 3b92b1c5c..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m4294968273_9limbs/feaddDisplay.v b/src/Specific/solinas64_2e256m4294968273_9limbs/feaddDisplay.v
deleted file mode 100644
index 4b2e0f27a..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m4294968273_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e256m4294968273_9limbs/fecarry.v b/src/Specific/solinas64_2e256m4294968273_9limbs/fecarry.v
deleted file mode 100644
index bebdf6c28..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m4294968273_9limbs.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/solinas64_2e256m4294968273_9limbs/fecarryDisplay.v b/src/Specific/solinas64_2e256m4294968273_9limbs/fecarryDisplay.v
deleted file mode 100644
index 8524f1819..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m4294968273_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e256m4294968273_9limbs/femul.c b/src/Specific/solinas64_2e256m4294968273_9limbs/femul.c
deleted file mode 100644
index 8ce77a639..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/femul.c
+++ /dev/null
@@ -1,71 +0,0 @@
-static void femul(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- { uint128_t x36 = ((uint128_t)(x5 * x34) + ((0x2 * (x7 * x35)) + ((x9 * x33) + ((0x2 * (x11 * x31)) + ((x13 * x29) + ((0x2 * (x15 * x27)) + ((x17 * x25) + ((0x2 * (x19 * x23)) + (x18 * x21)))))))));
- { uint128_t x37 = (((x5 * x35) + ((x7 * x33) + ((x9 * x31) + ((x11 * x29) + ((x13 * x27) + ((x15 * x25) + ((x17 * x23) + (x19 * x21)))))))) + ((uint128_t)0x1000003d1 * (x18 * x34)));
- { uint128_t x38 = (((x5 * x33) + ((0x2 * (x7 * x31)) + ((x9 * x29) + ((0x2 * (x11 * x27)) + ((x13 * x25) + ((0x2 * (x15 * x23)) + (x17 * x21))))))) + ((uint128_t)0x1000003d1 * ((0x2 * (x19 * x34)) + (0x2 * (x18 * x35)))));
- { uint128_t x39 = (((x5 * x31) + ((x7 * x29) + ((x9 * x27) + ((x11 * x25) + ((x13 * x23) + (x15 * x21)))))) + ((uint128_t)0x1000003d1 * ((x17 * x34) + ((0x2 * (x19 * x35)) + (x18 * x33)))));
- { uint128_t x40 = (((x5 * x29) + ((0x2 * (x7 * x27)) + ((x9 * x25) + ((0x2 * (x11 * x23)) + (x13 * x21))))) + ((uint128_t)0x1000003d1 * ((0x2 * (x15 * x34)) + ((0x2 * (x17 * x35)) + ((0x2 * (x19 * x33)) + (0x2 * (x18 * x31)))))));
- { uint128_t x41 = (((x5 * x27) + ((x7 * x25) + ((x9 * x23) + (x11 * x21)))) + ((uint128_t)0x1000003d1 * ((x13 * x34) + ((0x2 * (x15 * x35)) + ((x17 * x33) + ((0x2 * (x19 * x31)) + (x18 * x29)))))));
- { uint128_t x42 = (((x5 * x25) + ((0x2 * (x7 * x23)) + (x9 * x21))) + ((uint128_t)0x1000003d1 * ((0x2 * (x11 * x34)) + ((0x2 * (x13 * x35)) + ((0x2 * (x15 * x33)) + ((0x2 * (x17 * x31)) + ((0x2 * (x19 * x29)) + (0x2 * (x18 * x27)))))))));
- { uint128_t x43 = (((x5 * x23) + (x7 * x21)) + ((uint128_t)0x1000003d1 * ((x9 * x34) + ((0x2 * (x11 * x35)) + ((x13 * x33) + ((0x2 * (x15 * x31)) + ((x17 * x29) + ((0x2 * (x19 * x27)) + (x18 * x25)))))))));
- { uint128_t x44 = ((x5 * x21) + (0x1000003d1 * ((0x2 * (x7 * x34)) + ((uint128_t)(0x2 * (x9 * x35)) + ((0x2 * (x11 * x33)) + ((0x2 * (x13 * x31)) + ((0x2 * (x15 * x29)) + ((0x2 * (x17 * x27)) + ((0x2 * (x19 * x25)) + (0x2 * (x18 * x23)))))))))));
- { uint128_t x45 = (x44 >> 0x1d);
- { uint64_t x46 = ((uint64_t)x44 & 0x1fffffff);
- { uint128_t x47 = (x45 + x43);
- { uint128_t x48 = (x47 >> 0x1c);
- { uint64_t x49 = ((uint64_t)x47 & 0xfffffff);
- { uint128_t x50 = (x48 + x42);
- { uint128_t x51 = (x50 >> 0x1d);
- { uint64_t x52 = ((uint64_t)x50 & 0x1fffffff);
- { uint128_t x53 = (x51 + x41);
- { uint128_t x54 = (x53 >> 0x1c);
- { uint64_t x55 = ((uint64_t)x53 & 0xfffffff);
- { uint128_t x56 = (x54 + x40);
- { uint128_t x57 = (x56 >> 0x1d);
- { uint64_t x58 = ((uint64_t)x56 & 0x1fffffff);
- { uint128_t x59 = (x57 + x39);
- { uint128_t x60 = (x59 >> 0x1c);
- { uint64_t x61 = ((uint64_t)x59 & 0xfffffff);
- { uint128_t x62 = (x60 + x38);
- { uint128_t x63 = (x62 >> 0x1d);
- { uint64_t x64 = ((uint64_t)x62 & 0x1fffffff);
- { uint128_t x65 = (x63 + x37);
- { uint64_t x66 = (uint64_t) (x65 >> 0x1c);
- { uint64_t x67 = ((uint64_t)x65 & 0xfffffff);
- { uint128_t x68 = (x66 + x36);
- { uint64_t x69 = (uint64_t) (x68 >> 0x1c);
- { uint64_t x70 = ((uint64_t)x68 & 0xfffffff);
- { uint128_t x71 = (x46 + ((uint128_t)0x1000003d1 * x69));
- { uint64_t x72 = (uint64_t) (x71 >> 0x1d);
- { uint64_t x73 = ((uint64_t)x71 & 0x1fffffff);
- { uint64_t x74 = (x72 + x49);
- { uint64_t x75 = (x74 >> 0x1c);
- { uint64_t x76 = (x74 & 0xfffffff);
- out[0] = x73;
- out[1] = x76;
- out[2] = (x75 + x52);
- out[3] = x55;
- out[4] = x58;
- out[5] = x61;
- out[6] = x64;
- out[7] = x67;
- out[8] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m4294968273_9limbs/femul.v b/src/Specific/solinas64_2e256m4294968273_9limbs/femul.v
deleted file mode 100644
index b3612e349..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m4294968273_9limbs.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/solinas64_2e256m4294968273_9limbs/femulDisplay.log b/src/Specific/solinas64_2e256m4294968273_9limbs/femulDisplay.log
deleted file mode 100644
index f02f770e8..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/femulDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint128_t x36 = ((uint128_t)(x5 * x34) + ((0x2 * (x7 * x35)) + ((x9 * x33) + ((0x2 * (x11 * x31)) + ((x13 * x29) + ((0x2 * (x15 * x27)) + ((x17 * x25) + ((0x2 * (x19 * x23)) + (x18 * x21)))))))));
- uint128_t x37 = (((x5 * x35) + ((x7 * x33) + ((x9 * x31) + ((x11 * x29) + ((x13 * x27) + ((x15 * x25) + ((x17 * x23) + (x19 * x21)))))))) + ((uint128_t)0x1000003d1 * (x18 * x34)));
- uint128_t x38 = (((x5 * x33) + ((0x2 * (x7 * x31)) + ((x9 * x29) + ((0x2 * (x11 * x27)) + ((x13 * x25) + ((0x2 * (x15 * x23)) + (x17 * x21))))))) + ((uint128_t)0x1000003d1 * ((0x2 * (x19 * x34)) + (0x2 * (x18 * x35)))));
- uint128_t x39 = (((x5 * x31) + ((x7 * x29) + ((x9 * x27) + ((x11 * x25) + ((x13 * x23) + (x15 * x21)))))) + ((uint128_t)0x1000003d1 * ((x17 * x34) + ((0x2 * (x19 * x35)) + (x18 * x33)))));
- uint128_t x40 = (((x5 * x29) + ((0x2 * (x7 * x27)) + ((x9 * x25) + ((0x2 * (x11 * x23)) + (x13 * x21))))) + ((uint128_t)0x1000003d1 * ((0x2 * (x15 * x34)) + ((0x2 * (x17 * x35)) + ((0x2 * (x19 * x33)) + (0x2 * (x18 * x31)))))));
- uint128_t x41 = (((x5 * x27) + ((x7 * x25) + ((x9 * x23) + (x11 * x21)))) + ((uint128_t)0x1000003d1 * ((x13 * x34) + ((0x2 * (x15 * x35)) + ((x17 * x33) + ((0x2 * (x19 * x31)) + (x18 * x29)))))));
- uint128_t x42 = (((x5 * x25) + ((0x2 * (x7 * x23)) + (x9 * x21))) + ((uint128_t)0x1000003d1 * ((0x2 * (x11 * x34)) + ((0x2 * (x13 * x35)) + ((0x2 * (x15 * x33)) + ((0x2 * (x17 * x31)) + ((0x2 * (x19 * x29)) + (0x2 * (x18 * x27)))))))));
- uint128_t x43 = (((x5 * x23) + (x7 * x21)) + ((uint128_t)0x1000003d1 * ((x9 * x34) + ((0x2 * (x11 * x35)) + ((x13 * x33) + ((0x2 * (x15 * x31)) + ((x17 * x29) + ((0x2 * (x19 * x27)) + (x18 * x25)))))))));
- uint128_t x44 = ((x5 * x21) + (0x1000003d1 * ((0x2 * (x7 * x34)) + ((uint128_t)(0x2 * (x9 * x35)) + ((0x2 * (x11 * x33)) + ((0x2 * (x13 * x31)) + ((0x2 * (x15 * x29)) + ((0x2 * (x17 * x27)) + ((0x2 * (x19 * x25)) + (0x2 * (x18 * x23)))))))))));
- uint128_t x45 = (x44 >> 0x1d);
- uint64_t x46 = ((uint64_t)x44 & 0x1fffffff);
- uint128_t x47 = (x45 + x43);
- uint128_t x48 = (x47 >> 0x1c);
- uint64_t x49 = ((uint64_t)x47 & 0xfffffff);
- uint128_t x50 = (x48 + x42);
- uint128_t x51 = (x50 >> 0x1d);
- uint64_t x52 = ((uint64_t)x50 & 0x1fffffff);
- uint128_t x53 = (x51 + x41);
- uint128_t x54 = (x53 >> 0x1c);
- uint64_t x55 = ((uint64_t)x53 & 0xfffffff);
- uint128_t x56 = (x54 + x40);
- uint128_t x57 = (x56 >> 0x1d);
- uint64_t x58 = ((uint64_t)x56 & 0x1fffffff);
- uint128_t x59 = (x57 + x39);
- uint128_t x60 = (x59 >> 0x1c);
- uint64_t x61 = ((uint64_t)x59 & 0xfffffff);
- uint128_t x62 = (x60 + x38);
- uint128_t x63 = (x62 >> 0x1d);
- uint64_t x64 = ((uint64_t)x62 & 0x1fffffff);
- uint128_t x65 = (x63 + x37);
- uint64_t x66 = (uint64_t) (x65 >> 0x1c);
- uint64_t x67 = ((uint64_t)x65 & 0xfffffff);
- uint128_t x68 = (x66 + x36);
- uint64_t x69 = (uint64_t) (x68 >> 0x1c);
- uint64_t x70 = ((uint64_t)x68 & 0xfffffff);
- uint128_t x71 = (x46 + ((uint128_t)0x1000003d1 * x69));
- uint64_t x72 = (uint64_t) (x71 >> 0x1d);
- uint64_t x73 = ((uint64_t)x71 & 0x1fffffff);
- uint64_t x74 = (x72 + x49);
- uint64_t x75 = (x74 >> 0x1c);
- uint64_t x76 = (x74 & 0xfffffff);
- return (Return x70, Return x67, Return x64, Return x61, Return x58, Return x55, (x75 + x52), Return x76, Return x73))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m4294968273_9limbs/femulDisplay.v b/src/Specific/solinas64_2e256m4294968273_9limbs/femulDisplay.v
deleted file mode 100644
index 256e3d01e..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m4294968273_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e256m4294968273_9limbs/fesquare.c b/src/Specific/solinas64_2e256m4294968273_9limbs/fesquare.c
deleted file mode 100644
index 4c2d3917c..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/fesquare.c
+++ /dev/null
@@ -1,62 +0,0 @@
-static void fesquare(uint64_t out[9], const uint64_t in1[9]) {
- { const uint64_t x15 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x17 = ((uint128_t)(x2 * x15) + ((0x2 * (x4 * x16)) + ((x6 * x14) + ((0x2 * (x8 * x12)) + ((x10 * x10) + ((0x2 * (x12 * x8)) + ((x14 * x6) + ((0x2 * (x16 * x4)) + (x15 * x2)))))))));
- { uint128_t x18 = (((x2 * x16) + ((x4 * x14) + ((x6 * x12) + ((x8 * x10) + ((x10 * x8) + ((x12 * x6) + ((x14 * x4) + (x16 * x2)))))))) + ((uint128_t)0x1000003d1 * (x15 * x15)));
- { uint128_t x19 = (((x2 * x14) + ((0x2 * (x4 * x12)) + ((x6 * x10) + ((0x2 * (x8 * x8)) + ((x10 * x6) + ((0x2 * (x12 * x4)) + (x14 * x2))))))) + ((uint128_t)0x1000003d1 * ((0x2 * (x16 * x15)) + (0x2 * (x15 * x16)))));
- { uint128_t x20 = (((x2 * x12) + ((x4 * x10) + ((x6 * x8) + ((x8 * x6) + ((x10 * x4) + (x12 * x2)))))) + ((uint128_t)0x1000003d1 * ((x14 * x15) + ((0x2 * (x16 * x16)) + (x15 * x14)))));
- { uint128_t x21 = (((x2 * x10) + ((0x2 * (x4 * x8)) + ((x6 * x6) + ((0x2 * (x8 * x4)) + (x10 * x2))))) + ((uint128_t)0x1000003d1 * ((0x2 * (x12 * x15)) + ((0x2 * (x14 * x16)) + ((0x2 * (x16 * x14)) + (0x2 * (x15 * x12)))))));
- { uint128_t x22 = (((x2 * x8) + ((x4 * x6) + ((x6 * x4) + (x8 * x2)))) + ((uint128_t)0x1000003d1 * ((x10 * x15) + ((0x2 * (x12 * x16)) + ((x14 * x14) + ((0x2 * (x16 * x12)) + (x15 * x10)))))));
- { uint128_t x23 = (((x2 * x6) + ((0x2 * (x4 * x4)) + (x6 * x2))) + ((uint128_t)0x1000003d1 * ((0x2 * (x8 * x15)) + ((0x2 * (x10 * x16)) + ((0x2 * (x12 * x14)) + ((0x2 * (x14 * x12)) + ((0x2 * (x16 * x10)) + (0x2 * (x15 * x8)))))))));
- { uint128_t x24 = (((x2 * x4) + (x4 * x2)) + ((uint128_t)0x1000003d1 * ((x6 * x15) + ((0x2 * (x8 * x16)) + ((x10 * x14) + ((0x2 * (x12 * x12)) + ((x14 * x10) + ((0x2 * (x16 * x8)) + (x15 * x6)))))))));
- { uint128_t x25 = ((x2 * x2) + (0x1000003d1 * ((0x2 * (x4 * x15)) + ((uint128_t)(0x2 * (x6 * x16)) + ((0x2 * (x8 * x14)) + ((0x2 * (x10 * x12)) + ((0x2 * (x12 * x10)) + ((0x2 * (x14 * x8)) + ((0x2 * (x16 * x6)) + (0x2 * (x15 * x4)))))))))));
- { uint128_t x26 = (x25 >> 0x1d);
- { uint64_t x27 = ((uint64_t)x25 & 0x1fffffff);
- { uint128_t x28 = (x26 + x24);
- { uint128_t x29 = (x28 >> 0x1c);
- { uint64_t x30 = ((uint64_t)x28 & 0xfffffff);
- { uint128_t x31 = (x29 + x23);
- { uint128_t x32 = (x31 >> 0x1d);
- { uint64_t x33 = ((uint64_t)x31 & 0x1fffffff);
- { uint128_t x34 = (x32 + x22);
- { uint128_t x35 = (x34 >> 0x1c);
- { uint64_t x36 = ((uint64_t)x34 & 0xfffffff);
- { uint128_t x37 = (x35 + x21);
- { uint128_t x38 = (x37 >> 0x1d);
- { uint64_t x39 = ((uint64_t)x37 & 0x1fffffff);
- { uint128_t x40 = (x38 + x20);
- { uint128_t x41 = (x40 >> 0x1c);
- { uint64_t x42 = ((uint64_t)x40 & 0xfffffff);
- { uint128_t x43 = (x41 + x19);
- { uint128_t x44 = (x43 >> 0x1d);
- { uint64_t x45 = ((uint64_t)x43 & 0x1fffffff);
- { uint128_t x46 = (x44 + x18);
- { uint64_t x47 = (uint64_t) (x46 >> 0x1c);
- { uint64_t x48 = ((uint64_t)x46 & 0xfffffff);
- { uint128_t x49 = (x47 + x17);
- { uint64_t x50 = (uint64_t) (x49 >> 0x1c);
- { uint64_t x51 = ((uint64_t)x49 & 0xfffffff);
- { uint128_t x52 = (x27 + ((uint128_t)0x1000003d1 * x50));
- { uint64_t x53 = (uint64_t) (x52 >> 0x1d);
- { uint64_t x54 = ((uint64_t)x52 & 0x1fffffff);
- { uint64_t x55 = (x53 + x30);
- { uint64_t x56 = (x55 >> 0x1c);
- { uint64_t x57 = (x55 & 0xfffffff);
- out[0] = x54;
- out[1] = x57;
- out[2] = (x56 + x33);
- out[3] = x36;
- out[4] = x39;
- out[5] = x42;
- out[6] = x45;
- out[7] = x48;
- out[8] = x51;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m4294968273_9limbs/fesquare.v b/src/Specific/solinas64_2e256m4294968273_9limbs/fesquare.v
deleted file mode 100644
index a63d8fbb7..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m4294968273_9limbs.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/solinas64_2e256m4294968273_9limbs/fesquareDisplay.log b/src/Specific/solinas64_2e256m4294968273_9limbs/fesquareDisplay.log
deleted file mode 100644
index cbf6a50da..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x17 = ((uint128_t)(x2 * x15) + ((0x2 * (x4 * x16)) + ((x6 * x14) + ((0x2 * (x8 * x12)) + ((x10 * x10) + ((0x2 * (x12 * x8)) + ((x14 * x6) + ((0x2 * (x16 * x4)) + (x15 * x2)))))))));
- uint128_t x18 = (((x2 * x16) + ((x4 * x14) + ((x6 * x12) + ((x8 * x10) + ((x10 * x8) + ((x12 * x6) + ((x14 * x4) + (x16 * x2)))))))) + ((uint128_t)0x1000003d1 * (x15 * x15)));
- uint128_t x19 = (((x2 * x14) + ((0x2 * (x4 * x12)) + ((x6 * x10) + ((0x2 * (x8 * x8)) + ((x10 * x6) + ((0x2 * (x12 * x4)) + (x14 * x2))))))) + ((uint128_t)0x1000003d1 * ((0x2 * (x16 * x15)) + (0x2 * (x15 * x16)))));
- uint128_t x20 = (((x2 * x12) + ((x4 * x10) + ((x6 * x8) + ((x8 * x6) + ((x10 * x4) + (x12 * x2)))))) + ((uint128_t)0x1000003d1 * ((x14 * x15) + ((0x2 * (x16 * x16)) + (x15 * x14)))));
- uint128_t x21 = (((x2 * x10) + ((0x2 * (x4 * x8)) + ((x6 * x6) + ((0x2 * (x8 * x4)) + (x10 * x2))))) + ((uint128_t)0x1000003d1 * ((0x2 * (x12 * x15)) + ((0x2 * (x14 * x16)) + ((0x2 * (x16 * x14)) + (0x2 * (x15 * x12)))))));
- uint128_t x22 = (((x2 * x8) + ((x4 * x6) + ((x6 * x4) + (x8 * x2)))) + ((uint128_t)0x1000003d1 * ((x10 * x15) + ((0x2 * (x12 * x16)) + ((x14 * x14) + ((0x2 * (x16 * x12)) + (x15 * x10)))))));
- uint128_t x23 = (((x2 * x6) + ((0x2 * (x4 * x4)) + (x6 * x2))) + ((uint128_t)0x1000003d1 * ((0x2 * (x8 * x15)) + ((0x2 * (x10 * x16)) + ((0x2 * (x12 * x14)) + ((0x2 * (x14 * x12)) + ((0x2 * (x16 * x10)) + (0x2 * (x15 * x8)))))))));
- uint128_t x24 = (((x2 * x4) + (x4 * x2)) + ((uint128_t)0x1000003d1 * ((x6 * x15) + ((0x2 * (x8 * x16)) + ((x10 * x14) + ((0x2 * (x12 * x12)) + ((x14 * x10) + ((0x2 * (x16 * x8)) + (x15 * x6)))))))));
- uint128_t x25 = ((x2 * x2) + (0x1000003d1 * ((0x2 * (x4 * x15)) + ((uint128_t)(0x2 * (x6 * x16)) + ((0x2 * (x8 * x14)) + ((0x2 * (x10 * x12)) + ((0x2 * (x12 * x10)) + ((0x2 * (x14 * x8)) + ((0x2 * (x16 * x6)) + (0x2 * (x15 * x4)))))))))));
- uint128_t x26 = (x25 >> 0x1d);
- uint64_t x27 = ((uint64_t)x25 & 0x1fffffff);
- uint128_t x28 = (x26 + x24);
- uint128_t x29 = (x28 >> 0x1c);
- uint64_t x30 = ((uint64_t)x28 & 0xfffffff);
- uint128_t x31 = (x29 + x23);
- uint128_t x32 = (x31 >> 0x1d);
- uint64_t x33 = ((uint64_t)x31 & 0x1fffffff);
- uint128_t x34 = (x32 + x22);
- uint128_t x35 = (x34 >> 0x1c);
- uint64_t x36 = ((uint64_t)x34 & 0xfffffff);
- uint128_t x37 = (x35 + x21);
- uint128_t x38 = (x37 >> 0x1d);
- uint64_t x39 = ((uint64_t)x37 & 0x1fffffff);
- uint128_t x40 = (x38 + x20);
- uint128_t x41 = (x40 >> 0x1c);
- uint64_t x42 = ((uint64_t)x40 & 0xfffffff);
- uint128_t x43 = (x41 + x19);
- uint128_t x44 = (x43 >> 0x1d);
- uint64_t x45 = ((uint64_t)x43 & 0x1fffffff);
- uint128_t x46 = (x44 + x18);
- uint64_t x47 = (uint64_t) (x46 >> 0x1c);
- uint64_t x48 = ((uint64_t)x46 & 0xfffffff);
- uint128_t x49 = (x47 + x17);
- uint64_t x50 = (uint64_t) (x49 >> 0x1c);
- uint64_t x51 = ((uint64_t)x49 & 0xfffffff);
- uint128_t x52 = (x27 + ((uint128_t)0x1000003d1 * x50));
- uint64_t x53 = (uint64_t) (x52 >> 0x1d);
- uint64_t x54 = ((uint64_t)x52 & 0x1fffffff);
- uint64_t x55 = (x53 + x30);
- uint64_t x56 = (x55 >> 0x1c);
- uint64_t x57 = (x55 & 0xfffffff);
- return (Return x51, Return x48, Return x45, Return x42, Return x39, Return x36, (x56 + x33), Return x57, Return x54))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m4294968273_9limbs/fesquareDisplay.v b/src/Specific/solinas64_2e256m4294968273_9limbs/fesquareDisplay.v
deleted file mode 100644
index 8c1ed02d9..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m4294968273_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e256m4294968273_9limbs/fesub.c b/src/Specific/solinas64_2e256m4294968273_9limbs/fesub.c
deleted file mode 100644
index eb56d8eea..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/fesub.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void fesub(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- out[0] = ((0x3ffff85e + x5) - x21);
- out[1] = ((0x1fffffee + x7) - x23);
- out[2] = ((0x3ffffffe + x9) - x25);
- out[3] = ((0x1ffffffe + x11) - x27);
- out[4] = ((0x3ffffffe + x13) - x29);
- out[5] = ((0x1ffffffe + x15) - x31);
- out[6] = ((0x3ffffffe + x17) - x33);
- out[7] = ((0x1ffffffe + x19) - x35);
- out[8] = ((0x1ffffffe + x18) - x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m4294968273_9limbs/fesub.v b/src/Specific/solinas64_2e256m4294968273_9limbs/fesub.v
deleted file mode 100644
index 641f927a6..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m4294968273_9limbs.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/solinas64_2e256m4294968273_9limbs/fesubDisplay.log b/src/Specific/solinas64_2e256m4294968273_9limbs/fesubDisplay.log
deleted file mode 100644
index ce9b26884..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- (((0x1ffffffe + x18) - x34), ((0x1ffffffe + x19) - x35), ((0x3ffffffe + x17) - x33), ((0x1ffffffe + x15) - x31), ((0x3ffffffe + x13) - x29), ((0x1ffffffe + x11) - x27), ((0x3ffffffe + x9) - x25), ((0x1fffffee + x7) - x23), ((0x3ffff85e + x5) - x21)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m4294968273_9limbs/fesubDisplay.v b/src/Specific/solinas64_2e256m4294968273_9limbs/fesubDisplay.v
deleted file mode 100644
index 2ea866ba0..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m4294968273_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e256m4294968273_9limbs/freeze.c b/src/Specific/solinas64_2e256m4294968273_9limbs/freeze.c
deleted file mode 100644
index e04be709f..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/freeze.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void freeze(uint64_t out[9], const uint64_t in1[9]) {
- { const uint64_t x15 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 29 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffc2f);
- { uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x4, 0xffffff7);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 29 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x6, 0x1fffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x8, 0xfffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 29 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x10, 0x1fffffff);
- { uint64_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x12, 0xfffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 29 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x34, Return x14, 0x1fffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x16, 0xfffffff);
- { uint64_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x15, 0xfffffff);
- { uint64_t x44 = cmovznz64(x43, 0x0, 0xffffffffffffffffL);
- { uint64_t x45 = (x44 & 0x1ffffc2f);
- { uint64_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 29 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- { uint64_t x49 = (x44 & 0xffffff7);
- { uint64_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- { uint64_t x53 = (x44 & 0x1fffffff);
- { uint64_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 29 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- { uint64_t x57 = (x44 & 0xfffffff);
- { uint64_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- { uint64_t x61 = (x44 & 0x1fffffff);
- { uint64_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 29 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- { uint64_t x65 = (x44 & 0xfffffff);
- { uint64_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- { uint64_t x69 = (x44 & 0x1fffffff);
- { uint64_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 29 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- { uint64_t x73 = (x44 & 0xfffffff);
- { uint64_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- { uint64_t x77 = (x44 & 0xfffffff);
- { uint64_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- out[0] = x47;
- out[1] = x51;
- out[2] = x55;
- out[3] = x59;
- out[4] = x63;
- out[5] = x67;
- out[6] = x71;
- out[7] = x75;
- out[8] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e256m4294968273_9limbs/freeze.v b/src/Specific/solinas64_2e256m4294968273_9limbs/freeze.v
deleted file mode 100644
index 81af86c86..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e256m4294968273_9limbs.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/solinas64_2e256m4294968273_9limbs/freezeDisplay.log b/src/Specific/solinas64_2e256m4294968273_9limbs/freezeDisplay.log
deleted file mode 100644
index 268475a35..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 29 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffc2f);
- uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x4, 0xffffff7);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 29 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x6, 0x1fffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x8, 0xfffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 29 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x10, 0x1fffffff);
- uint64_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x12, 0xfffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 29 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x34, Return x14, 0x1fffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x16, 0xfffffff);
- uint64_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 28 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x15, 0xfffffff);
- uint64_t x44 = cmovznz64(x43, 0x0, 0xffffffffffffffffL);
- uint64_t x45 = (x44 & 0x1ffffc2f);
- uint64_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 29 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- uint64_t x49 = (x44 & 0xffffff7);
- uint64_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- uint64_t x53 = (x44 & 0x1fffffff);
- uint64_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 29 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- uint64_t x57 = (x44 & 0xfffffff);
- uint64_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- uint64_t x61 = (x44 & 0x1fffffff);
- uint64_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 29 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- uint64_t x65 = (x44 & 0xfffffff);
- uint64_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- uint64_t x69 = (x44 & 0x1fffffff);
- uint64_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 29 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- uint64_t x73 = (x44 & 0xfffffff);
- uint64_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- uint64_t x77 = (x44 & 0xfffffff);
- uint64_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 28 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- (Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x51, Return x47))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e256m4294968273_9limbs/freezeDisplay.v b/src/Specific/solinas64_2e256m4294968273_9limbs/freezeDisplay.v
deleted file mode 100644
index c8452a039..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e256m4294968273_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e256m4294968273_9limbs/py_interpreter.sh b/src/Specific/solinas64_2e256m4294968273_9limbs/py_interpreter.sh
deleted file mode 100755
index 68cc29d7c..000000000
--- a/src/Specific/solinas64_2e256m4294968273_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**256 - 4294968273' -Dmodulus_bytes='28 + 4/9' -Da24='121665'
diff --git a/src/Specific/solinas64_2e266m3_5limbs/CurveParameters.v b/src/Specific/solinas64_2e266m3_5limbs/CurveParameters.v
deleted file mode 100644
index 1aa25a425..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^266 - 3
-Base: 53.2
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 53 + 1/5;
- bitwidth := 64;
- s := 2^266;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 5); [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/solinas64_2e266m3_5limbs/Synthesis.v b/src/Specific/solinas64_2e266m3_5limbs/Synthesis.v
deleted file mode 100644
index a3fb9e197..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e266m3_5limbs.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/solinas64_2e266m3_5limbs/compiler.sh b/src/Specific/solinas64_2e266m3_5limbs/compiler.sh
deleted file mode 100755
index 51bcb4b41..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{54,53,53,53,53}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='34' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<266) - 3' "$@"
diff --git a/src/Specific/solinas64_2e266m3_5limbs/compilerxx.sh b/src/Specific/solinas64_2e266m3_5limbs/compilerxx.sh
deleted file mode 100755
index ce71bbbe9..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{54,53,53,53,53}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='34' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<266) - 3' "$@"
diff --git a/src/Specific/solinas64_2e266m3_5limbs/feadd.c b/src/Specific/solinas64_2e266m3_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e266m3_5limbs/feadd.v b/src/Specific/solinas64_2e266m3_5limbs/feadd.v
deleted file mode 100644
index 46af43726..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e266m3_5limbs.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/solinas64_2e266m3_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e266m3_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e266m3_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e266m3_5limbs/feaddDisplay.v
deleted file mode 100644
index 4d41a5012..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e266m3_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e266m3_5limbs/fecarry.v b/src/Specific/solinas64_2e266m3_5limbs/fecarry.v
deleted file mode 100644
index 3f4ca5956..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e266m3_5limbs.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/solinas64_2e266m3_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e266m3_5limbs/fecarryDisplay.v
deleted file mode 100644
index a4a15d4f6..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e266m3_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e266m3_5limbs/femul.c b/src/Specific/solinas64_2e266m3_5limbs/femul.c
deleted file mode 100644
index fbc515dcc..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint128_t x20 = (((uint128_t)x5 * x18) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((0x2 * ((uint128_t)x11 * x15)) + ((uint128_t)x10 * x13)))));
- { uint128_t x21 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((0x2 * ((uint128_t)x9 * x15)) + ((uint128_t)x11 * x13)))) + (0x3 * ((uint128_t)x10 * x18)));
- { uint128_t x22 = ((((uint128_t)x5 * x17) + ((0x2 * ((uint128_t)x7 * x15)) + ((uint128_t)x9 * x13))) + (0x3 * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- { uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x3 * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- { uint128_t x24 = (((uint128_t)x5 * x13) + (0x3 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- { uint64_t x25 = (uint64_t) (x24 >> 0x36);
- { uint64_t x26 = ((uint64_t)x24 & 0x3fffffffffffff);
- { uint128_t x27 = (x25 + x23);
- { uint64_t x28 = (uint64_t) (x27 >> 0x35);
- { uint64_t x29 = ((uint64_t)x27 & 0x1fffffffffffff);
- { uint128_t x30 = (x28 + x22);
- { uint64_t x31 = (uint64_t) (x30 >> 0x35);
- { uint64_t x32 = ((uint64_t)x30 & 0x1fffffffffffff);
- { uint128_t x33 = (x31 + x21);
- { uint64_t x34 = (uint64_t) (x33 >> 0x35);
- { uint64_t x35 = ((uint64_t)x33 & 0x1fffffffffffff);
- { uint128_t x36 = (x34 + x20);
- { uint64_t x37 = (uint64_t) (x36 >> 0x35);
- { uint64_t x38 = ((uint64_t)x36 & 0x1fffffffffffff);
- { uint64_t x39 = (x26 + (0x3 * x37));
- { uint64_t x40 = (x39 >> 0x36);
- { uint64_t x41 = (x39 & 0x3fffffffffffff);
- { uint64_t x42 = (x40 + x29);
- { uint64_t x43 = (x42 >> 0x35);
- { uint64_t x44 = (x42 & 0x1fffffffffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e266m3_5limbs/femul.v b/src/Specific/solinas64_2e266m3_5limbs/femul.v
deleted file mode 100644
index 9742bb2ad..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e266m3_5limbs.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/solinas64_2e266m3_5limbs/femulDisplay.log b/src/Specific/solinas64_2e266m3_5limbs/femulDisplay.log
deleted file mode 100644
index 1afee3fde..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = (((uint128_t)x5 * x18) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((0x2 * ((uint128_t)x11 * x15)) + ((uint128_t)x10 * x13)))));
- uint128_t x21 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((0x2 * ((uint128_t)x9 * x15)) + ((uint128_t)x11 * x13)))) + (0x3 * ((uint128_t)x10 * x18)));
- uint128_t x22 = ((((uint128_t)x5 * x17) + ((0x2 * ((uint128_t)x7 * x15)) + ((uint128_t)x9 * x13))) + (0x3 * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x3 * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- uint128_t x24 = (((uint128_t)x5 * x13) + (0x3 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- uint64_t x25 = (uint64_t) (x24 >> 0x36);
- uint64_t x26 = ((uint64_t)x24 & 0x3fffffffffffff);
- uint128_t x27 = (x25 + x23);
- uint64_t x28 = (uint64_t) (x27 >> 0x35);
- uint64_t x29 = ((uint64_t)x27 & 0x1fffffffffffff);
- uint128_t x30 = (x28 + x22);
- uint64_t x31 = (uint64_t) (x30 >> 0x35);
- uint64_t x32 = ((uint64_t)x30 & 0x1fffffffffffff);
- uint128_t x33 = (x31 + x21);
- uint64_t x34 = (uint64_t) (x33 >> 0x35);
- uint64_t x35 = ((uint64_t)x33 & 0x1fffffffffffff);
- uint128_t x36 = (x34 + x20);
- uint64_t x37 = (uint64_t) (x36 >> 0x35);
- uint64_t x38 = ((uint64_t)x36 & 0x1fffffffffffff);
- uint64_t x39 = (x26 + (0x3 * x37));
- uint64_t x40 = (x39 >> 0x36);
- uint64_t x41 = (x39 & 0x3fffffffffffff);
- uint64_t x42 = (x40 + x29);
- uint64_t x43 = (x42 >> 0x35);
- uint64_t x44 = (x42 & 0x1fffffffffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e266m3_5limbs/femulDisplay.v b/src/Specific/solinas64_2e266m3_5limbs/femulDisplay.v
deleted file mode 100644
index 043936c3f..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e266m3_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e266m3_5limbs/fesquare.c b/src/Specific/solinas64_2e266m3_5limbs/fesquare.c
deleted file mode 100644
index 56f5fdb77..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x9 = (((uint128_t)x2 * x7) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x7 * x2)))));
- { uint128_t x10 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x3 * ((uint128_t)x7 * x7)));
- { uint128_t x11 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x3 * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- { uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- { uint128_t x13 = (((uint128_t)x2 * x2) + (0x3 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- { uint64_t x14 = (uint64_t) (x13 >> 0x36);
- { uint64_t x15 = ((uint64_t)x13 & 0x3fffffffffffff);
- { uint128_t x16 = (x14 + x12);
- { uint64_t x17 = (uint64_t) (x16 >> 0x35);
- { uint64_t x18 = ((uint64_t)x16 & 0x1fffffffffffff);
- { uint128_t x19 = (x17 + x11);
- { uint64_t x20 = (uint64_t) (x19 >> 0x35);
- { uint64_t x21 = ((uint64_t)x19 & 0x1fffffffffffff);
- { uint128_t x22 = (x20 + x10);
- { uint64_t x23 = (uint64_t) (x22 >> 0x35);
- { uint64_t x24 = ((uint64_t)x22 & 0x1fffffffffffff);
- { uint128_t x25 = (x23 + x9);
- { uint64_t x26 = (uint64_t) (x25 >> 0x35);
- { uint64_t x27 = ((uint64_t)x25 & 0x1fffffffffffff);
- { uint64_t x28 = (x15 + (0x3 * x26));
- { uint64_t x29 = (x28 >> 0x36);
- { uint64_t x30 = (x28 & 0x3fffffffffffff);
- { uint64_t x31 = (x29 + x18);
- { uint64_t x32 = (x31 >> 0x35);
- { uint64_t x33 = (x31 & 0x1fffffffffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e266m3_5limbs/fesquare.v b/src/Specific/solinas64_2e266m3_5limbs/fesquare.v
deleted file mode 100644
index 52f6443d9..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e266m3_5limbs.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/solinas64_2e266m3_5limbs/fesquareDisplay.log b/src/Specific/solinas64_2e266m3_5limbs/fesquareDisplay.log
deleted file mode 100644
index 6b6852a74..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint128_t x9 = (((uint128_t)x2 * x7) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x7 * x2)))));
- uint128_t x10 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x3 * ((uint128_t)x7 * x7)));
- uint128_t x11 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x3 * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- uint128_t x13 = (((uint128_t)x2 * x2) + (0x3 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- uint64_t x14 = (uint64_t) (x13 >> 0x36);
- uint64_t x15 = ((uint64_t)x13 & 0x3fffffffffffff);
- uint128_t x16 = (x14 + x12);
- uint64_t x17 = (uint64_t) (x16 >> 0x35);
- uint64_t x18 = ((uint64_t)x16 & 0x1fffffffffffff);
- uint128_t x19 = (x17 + x11);
- uint64_t x20 = (uint64_t) (x19 >> 0x35);
- uint64_t x21 = ((uint64_t)x19 & 0x1fffffffffffff);
- uint128_t x22 = (x20 + x10);
- uint64_t x23 = (uint64_t) (x22 >> 0x35);
- uint64_t x24 = ((uint64_t)x22 & 0x1fffffffffffff);
- uint128_t x25 = (x23 + x9);
- uint64_t x26 = (uint64_t) (x25 >> 0x35);
- uint64_t x27 = ((uint64_t)x25 & 0x1fffffffffffff);
- uint64_t x28 = (x15 + (0x3 * x26));
- uint64_t x29 = (x28 >> 0x36);
- uint64_t x30 = (x28 & 0x3fffffffffffff);
- uint64_t x31 = (x29 + x18);
- uint64_t x32 = (x31 >> 0x35);
- uint64_t x33 = (x31 & 0x1fffffffffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e266m3_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e266m3_5limbs/fesquareDisplay.v
deleted file mode 100644
index 02c9ea7ec..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e266m3_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e266m3_5limbs/fesub.c b/src/Specific/solinas64_2e266m3_5limbs/fesub.c
deleted file mode 100644
index 3807f5376..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0x7ffffffffffffa + x5) - x13);
- out[1] = ((0x3ffffffffffffe + x7) - x15);
- out[2] = ((0x3ffffffffffffe + x9) - x17);
- out[3] = ((0x3ffffffffffffe + x11) - x19);
- out[4] = ((0x3ffffffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e266m3_5limbs/fesub.v b/src/Specific/solinas64_2e266m3_5limbs/fesub.v
deleted file mode 100644
index 5fc288dfd..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e266m3_5limbs.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/solinas64_2e266m3_5limbs/fesubDisplay.log b/src/Specific/solinas64_2e266m3_5limbs/fesubDisplay.log
deleted file mode 100644
index 87750632d..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0x3ffffffffffffe + x10) - x18), ((0x3ffffffffffffe + x11) - x19), ((0x3ffffffffffffe + x9) - x17), ((0x3ffffffffffffe + x7) - x15), ((0x7ffffffffffffa + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e266m3_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e266m3_5limbs/fesubDisplay.v
deleted file mode 100644
index 62b279ab2..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e266m3_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e266m3_5limbs/freeze.c b/src/Specific/solinas64_2e266m3_5limbs/freeze.c
deleted file mode 100644
index 36e1f6380..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffffffd);
- { uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x1fffffffffffff);
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x1fffffffffffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x1fffffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x1fffffffffffff);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0x3ffffffffffffd);
- { uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint64_t x29 = (x24 & 0x1fffffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint64_t x33 = (x24 & 0x1fffffffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint64_t x37 = (x24 & 0x1fffffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint64_t x41 = (x24 & 0x1fffffffffffff);
- { uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e266m3_5limbs/freeze.v b/src/Specific/solinas64_2e266m3_5limbs/freeze.v
deleted file mode 100644
index 02eabe730..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e266m3_5limbs.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/solinas64_2e266m3_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e266m3_5limbs/freezeDisplay.log
deleted file mode 100644
index add8edb9e..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffffffd);
- uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x1fffffffffffff);
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x1fffffffffffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x1fffffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x1fffffffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0x3ffffffffffffd);
- uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint64_t x29 = (x24 & 0x1fffffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint64_t x33 = (x24 & 0x1fffffffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint64_t x37 = (x24 & 0x1fffffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint64_t x41 = (x24 & 0x1fffffffffffff);
- uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e266m3_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e266m3_5limbs/freezeDisplay.v
deleted file mode 100644
index f1dfee7dc..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e266m3_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e266m3_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e266m3_5limbs/py_interpreter.sh
deleted file mode 100755
index e1705c801..000000000
--- a/src/Specific/solinas64_2e266m3_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**266 - 3' -Dmodulus_bytes='53.2' -Da24='121665'
diff --git a/src/Specific/solinas64_2e266m3_6limbs/CurveParameters.v b/src/Specific/solinas64_2e266m3_6limbs/CurveParameters.v
deleted file mode 100644
index 872cb57b9..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^266 - 3
-Base: 44 + 1/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 44 + 1/3;
- bitwidth := 64;
- s := 2^266;
- c := [(1, 3)];
- 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/solinas64_2e266m3_6limbs/Synthesis.v b/src/Specific/solinas64_2e266m3_6limbs/Synthesis.v
deleted file mode 100644
index e130ce29f..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e266m3_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/solinas64_2e266m3_6limbs/compiler.sh b/src/Specific/solinas64_2e266m3_6limbs/compiler.sh
deleted file mode 100755
index 49dce2d9b..000000000
--- a/src/Specific/solinas64_2e266m3_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{45,44,44,45,44,44}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='34' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<266) - 3' "$@"
diff --git a/src/Specific/solinas64_2e266m3_6limbs/compilerxx.sh b/src/Specific/solinas64_2e266m3_6limbs/compilerxx.sh
deleted file mode 100755
index d78e6a5cc..000000000
--- a/src/Specific/solinas64_2e266m3_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{45,44,44,45,44,44}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='34' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<266) - 3' "$@"
diff --git a/src/Specific/solinas64_2e266m3_6limbs/feadd.c b/src/Specific/solinas64_2e266m3_6limbs/feadd.c
deleted file mode 100644
index 4a6bfb999..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/feadd.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_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/solinas64_2e266m3_6limbs/feadd.v b/src/Specific/solinas64_2e266m3_6limbs/feadd.v
deleted file mode 100644
index e676d0ffc..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e266m3_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/solinas64_2e266m3_6limbs/feaddDisplay.log b/src/Specific/solinas64_2e266m3_6limbs/feaddDisplay.log
deleted file mode 100644
index e32995a81..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-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
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e266m3_6limbs/feaddDisplay.v b/src/Specific/solinas64_2e266m3_6limbs/feaddDisplay.v
deleted file mode 100644
index 3f3b9a4b9..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e266m3_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e266m3_6limbs/fecarry.v b/src/Specific/solinas64_2e266m3_6limbs/fecarry.v
deleted file mode 100644
index a40421925..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e266m3_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/solinas64_2e266m3_6limbs/fecarryDisplay.v b/src/Specific/solinas64_2e266m3_6limbs/fecarryDisplay.v
deleted file mode 100644
index f1b232e87..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e266m3_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e266m3_6limbs/femul.c b/src/Specific/solinas64_2e266m3_6limbs/femul.c
deleted file mode 100644
index a42a8f09e..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/femul.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint128_t x24 = (((uint128_t)x5 * x22) + ((0x2 * ((uint128_t)x7 * x23)) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + ((0x2 * ((uint128_t)x13 * x17)) + ((uint128_t)x12 * x15))))));
- { uint128_t x25 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + (((uint128_t)x11 * x17) + ((uint128_t)x13 * x15))))) + (0x3 * ((uint128_t)x12 * x22)));
- { uint128_t x26 = ((((uint128_t)x5 * x21) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((uint128_t)x11 * x15)))) + (0x3 * ((0x2 * ((uint128_t)x13 * x22)) + (0x2 * ((uint128_t)x12 * x23)))));
- { uint128_t x27 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((uint128_t)x9 * x15))) + (0x3 * (((uint128_t)x11 * x22) + ((0x2 * ((uint128_t)x13 * x23)) + ((uint128_t)x12 * x21)))));
- { uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (0x3 * (((uint128_t)x9 * x22) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x12 * x19))))));
- { uint128_t x29 = (((uint128_t)x5 * x15) + (0x3 * ((0x2 * ((uint128_t)x7 * x22)) + ((0x2 * ((uint128_t)x9 * x23)) + (((uint128_t)x11 * x21) + ((0x2 * ((uint128_t)x13 * x19)) + (0x2 * ((uint128_t)x12 * x17))))))));
- { uint64_t x30 = (uint64_t) (x29 >> 0x2d);
- { uint64_t x31 = ((uint64_t)x29 & 0x1fffffffffff);
- { uint128_t x32 = (x30 + x28);
- { uint64_t x33 = (uint64_t) (x32 >> 0x2c);
- { uint64_t x34 = ((uint64_t)x32 & 0xfffffffffff);
- { uint128_t x35 = (x33 + x27);
- { uint64_t x36 = (uint64_t) (x35 >> 0x2c);
- { uint64_t x37 = ((uint64_t)x35 & 0xfffffffffff);
- { uint128_t x38 = (x36 + x26);
- { uint64_t x39 = (uint64_t) (x38 >> 0x2d);
- { uint64_t x40 = ((uint64_t)x38 & 0x1fffffffffff);
- { uint128_t x41 = (x39 + x25);
- { uint64_t x42 = (uint64_t) (x41 >> 0x2c);
- { uint64_t x43 = ((uint64_t)x41 & 0xfffffffffff);
- { uint128_t x44 = (x42 + x24);
- { uint64_t x45 = (uint64_t) (x44 >> 0x2c);
- { uint64_t x46 = ((uint64_t)x44 & 0xfffffffffff);
- { uint64_t x47 = (x31 + (0x3 * x45));
- { uint64_t x48 = (x47 >> 0x2d);
- { uint64_t x49 = (x47 & 0x1fffffffffff);
- { uint64_t x50 = (x48 + x34);
- { uint64_t x51 = (x50 >> 0x2c);
- { uint64_t x52 = (x50 & 0xfffffffffff);
- out[0] = x49;
- out[1] = x52;
- out[2] = (x51 + x37);
- out[3] = x40;
- out[4] = x43;
- out[5] = x46;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e266m3_6limbs/femul.v b/src/Specific/solinas64_2e266m3_6limbs/femul.v
deleted file mode 100644
index 633ebc4ea..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e266m3_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/solinas64_2e266m3_6limbs/femulDisplay.log b/src/Specific/solinas64_2e266m3_6limbs/femulDisplay.log
deleted file mode 100644
index 8e3d2938d..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint128_t x24 = (((uint128_t)x5 * x22) + ((0x2 * ((uint128_t)x7 * x23)) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + ((0x2 * ((uint128_t)x13 * x17)) + ((uint128_t)x12 * x15))))));
- uint128_t x25 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + (((uint128_t)x11 * x17) + ((uint128_t)x13 * x15))))) + (0x3 * ((uint128_t)x12 * x22)));
- uint128_t x26 = ((((uint128_t)x5 * x21) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((uint128_t)x11 * x15)))) + (0x3 * ((0x2 * ((uint128_t)x13 * x22)) + (0x2 * ((uint128_t)x12 * x23)))));
- uint128_t x27 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((uint128_t)x9 * x15))) + (0x3 * (((uint128_t)x11 * x22) + ((0x2 * ((uint128_t)x13 * x23)) + ((uint128_t)x12 * x21)))));
- uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (0x3 * (((uint128_t)x9 * x22) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x12 * x19))))));
- uint128_t x29 = (((uint128_t)x5 * x15) + (0x3 * ((0x2 * ((uint128_t)x7 * x22)) + ((0x2 * ((uint128_t)x9 * x23)) + (((uint128_t)x11 * x21) + ((0x2 * ((uint128_t)x13 * x19)) + (0x2 * ((uint128_t)x12 * x17))))))));
- uint64_t x30 = (uint64_t) (x29 >> 0x2d);
- uint64_t x31 = ((uint64_t)x29 & 0x1fffffffffff);
- uint128_t x32 = (x30 + x28);
- uint64_t x33 = (uint64_t) (x32 >> 0x2c);
- uint64_t x34 = ((uint64_t)x32 & 0xfffffffffff);
- uint128_t x35 = (x33 + x27);
- uint64_t x36 = (uint64_t) (x35 >> 0x2c);
- uint64_t x37 = ((uint64_t)x35 & 0xfffffffffff);
- uint128_t x38 = (x36 + x26);
- uint64_t x39 = (uint64_t) (x38 >> 0x2d);
- uint64_t x40 = ((uint64_t)x38 & 0x1fffffffffff);
- uint128_t x41 = (x39 + x25);
- uint64_t x42 = (uint64_t) (x41 >> 0x2c);
- uint64_t x43 = ((uint64_t)x41 & 0xfffffffffff);
- uint128_t x44 = (x42 + x24);
- uint64_t x45 = (uint64_t) (x44 >> 0x2c);
- uint64_t x46 = ((uint64_t)x44 & 0xfffffffffff);
- uint64_t x47 = (x31 + (0x3 * x45));
- uint64_t x48 = (x47 >> 0x2d);
- uint64_t x49 = (x47 & 0x1fffffffffff);
- uint64_t x50 = (x48 + x34);
- uint64_t x51 = (x50 >> 0x2c);
- uint64_t x52 = (x50 & 0xfffffffffff);
- return (Return x46, Return x43, Return x40, (x51 + x37), Return x52, Return x49))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e266m3_6limbs/femulDisplay.v b/src/Specific/solinas64_2e266m3_6limbs/femulDisplay.v
deleted file mode 100644
index c4e8f8559..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e266m3_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e266m3_6limbs/fesquare.c b/src/Specific/solinas64_2e266m3_6limbs/fesquare.c
deleted file mode 100644
index 175fd89fc..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/fesquare.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void fesquare(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x11 = (((uint128_t)x2 * x9) + ((0x2 * ((uint128_t)x4 * x10)) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x9 * x2))))));
- { uint128_t x12 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x3 * ((uint128_t)x9 * x9)));
- { uint128_t x13 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x3 * ((0x2 * ((uint128_t)x10 * x9)) + (0x2 * ((uint128_t)x9 * x10)))));
- { uint128_t x14 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x3 * (((uint128_t)x8 * x9) + ((0x2 * ((uint128_t)x10 * x10)) + ((uint128_t)x9 * x8)))));
- { uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * (((uint128_t)x6 * x9) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((uint128_t)x9 * x6))))));
- { uint128_t x16 = (((uint128_t)x2 * x2) + (0x3 * ((0x2 * ((uint128_t)x4 * x9)) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + (0x2 * ((uint128_t)x9 * x4))))))));
- { uint64_t x17 = (uint64_t) (x16 >> 0x2d);
- { uint64_t x18 = ((uint64_t)x16 & 0x1fffffffffff);
- { uint128_t x19 = (x17 + x15);
- { uint64_t x20 = (uint64_t) (x19 >> 0x2c);
- { uint64_t x21 = ((uint64_t)x19 & 0xfffffffffff);
- { uint128_t x22 = (x20 + x14);
- { uint64_t x23 = (uint64_t) (x22 >> 0x2c);
- { uint64_t x24 = ((uint64_t)x22 & 0xfffffffffff);
- { uint128_t x25 = (x23 + x13);
- { uint64_t x26 = (uint64_t) (x25 >> 0x2d);
- { uint64_t x27 = ((uint64_t)x25 & 0x1fffffffffff);
- { uint128_t x28 = (x26 + x12);
- { uint64_t x29 = (uint64_t) (x28 >> 0x2c);
- { uint64_t x30 = ((uint64_t)x28 & 0xfffffffffff);
- { uint128_t x31 = (x29 + x11);
- { uint64_t x32 = (uint64_t) (x31 >> 0x2c);
- { uint64_t x33 = ((uint64_t)x31 & 0xfffffffffff);
- { uint64_t x34 = (x18 + (0x3 * x32));
- { uint64_t x35 = (x34 >> 0x2d);
- { uint64_t x36 = (x34 & 0x1fffffffffff);
- { uint64_t x37 = (x35 + x21);
- { uint64_t x38 = (x37 >> 0x2c);
- { uint64_t x39 = (x37 & 0xfffffffffff);
- out[0] = x36;
- out[1] = x39;
- out[2] = (x38 + x24);
- out[3] = x27;
- out[4] = x30;
- out[5] = x33;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e266m3_6limbs/fesquare.v b/src/Specific/solinas64_2e266m3_6limbs/fesquare.v
deleted file mode 100644
index fae558724..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e266m3_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/solinas64_2e266m3_6limbs/fesquareDisplay.log b/src/Specific/solinas64_2e266m3_6limbs/fesquareDisplay.log
deleted file mode 100644
index 390b09a98..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint128_t x11 = (((uint128_t)x2 * x9) + ((0x2 * ((uint128_t)x4 * x10)) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x9 * x2))))));
- uint128_t x12 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x3 * ((uint128_t)x9 * x9)));
- uint128_t x13 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x3 * ((0x2 * ((uint128_t)x10 * x9)) + (0x2 * ((uint128_t)x9 * x10)))));
- uint128_t x14 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x3 * (((uint128_t)x8 * x9) + ((0x2 * ((uint128_t)x10 * x10)) + ((uint128_t)x9 * x8)))));
- uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * (((uint128_t)x6 * x9) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((uint128_t)x9 * x6))))));
- uint128_t x16 = (((uint128_t)x2 * x2) + (0x3 * ((0x2 * ((uint128_t)x4 * x9)) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + (0x2 * ((uint128_t)x9 * x4))))))));
- uint64_t x17 = (uint64_t) (x16 >> 0x2d);
- uint64_t x18 = ((uint64_t)x16 & 0x1fffffffffff);
- uint128_t x19 = (x17 + x15);
- uint64_t x20 = (uint64_t) (x19 >> 0x2c);
- uint64_t x21 = ((uint64_t)x19 & 0xfffffffffff);
- uint128_t x22 = (x20 + x14);
- uint64_t x23 = (uint64_t) (x22 >> 0x2c);
- uint64_t x24 = ((uint64_t)x22 & 0xfffffffffff);
- uint128_t x25 = (x23 + x13);
- uint64_t x26 = (uint64_t) (x25 >> 0x2d);
- uint64_t x27 = ((uint64_t)x25 & 0x1fffffffffff);
- uint128_t x28 = (x26 + x12);
- uint64_t x29 = (uint64_t) (x28 >> 0x2c);
- uint64_t x30 = ((uint64_t)x28 & 0xfffffffffff);
- uint128_t x31 = (x29 + x11);
- uint64_t x32 = (uint64_t) (x31 >> 0x2c);
- uint64_t x33 = ((uint64_t)x31 & 0xfffffffffff);
- uint64_t x34 = (x18 + (0x3 * x32));
- uint64_t x35 = (x34 >> 0x2d);
- uint64_t x36 = (x34 & 0x1fffffffffff);
- uint64_t x37 = (x35 + x21);
- uint64_t x38 = (x37 >> 0x2c);
- uint64_t x39 = (x37 & 0xfffffffffff);
- return (Return x33, Return x30, Return x27, (x38 + x24), Return x39, Return x36))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e266m3_6limbs/fesquareDisplay.v b/src/Specific/solinas64_2e266m3_6limbs/fesquareDisplay.v
deleted file mode 100644
index 02a7eabee..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e266m3_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e266m3_6limbs/fesub.c b/src/Specific/solinas64_2e266m3_6limbs/fesub.c
deleted file mode 100644
index fe58e8d37..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/fesub.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- out[0] = ((0x3ffffffffffa + x5) - x15);
- out[1] = ((0x1ffffffffffe + x7) - x17);
- out[2] = ((0x1ffffffffffe + x9) - x19);
- out[3] = ((0x3ffffffffffe + x11) - x21);
- out[4] = ((0x1ffffffffffe + x13) - x23);
- out[5] = ((0x1ffffffffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e266m3_6limbs/fesub.v b/src/Specific/solinas64_2e266m3_6limbs/fesub.v
deleted file mode 100644
index 56ba2b495..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e266m3_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/solinas64_2e266m3_6limbs/fesubDisplay.log b/src/Specific/solinas64_2e266m3_6limbs/fesubDisplay.log
deleted file mode 100644
index b7fb76359..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- (((0x1ffffffffffe + x12) - x22), ((0x1ffffffffffe + x13) - x23), ((0x3ffffffffffe + x11) - x21), ((0x1ffffffffffe + x9) - x19), ((0x1ffffffffffe + x7) - x17), ((0x3ffffffffffa + x5) - x15)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e266m3_6limbs/fesubDisplay.v b/src/Specific/solinas64_2e266m3_6limbs/fesubDisplay.v
deleted file mode 100644
index 11dd08a48..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e266m3_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e266m3_6limbs/freeze.c b/src/Specific/solinas64_2e266m3_6limbs/freeze.c
deleted file mode 100644
index bc7c0b19b..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/freeze.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void freeze(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffffffffd);
- { uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0xfffffffffff);
- { uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0xfffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0x1fffffffffff);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0xfffffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0xfffffffffff);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0x1ffffffffffd);
- { uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint64_t x34 = (x29 & 0xfffffffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- { uint64_t x38 = (x29 & 0xfffffffffff);
- { uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- { uint64_t x42 = (x29 & 0x1fffffffffff);
- { uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- { uint64_t x46 = (x29 & 0xfffffffffff);
- { uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- { uint64_t x50 = (x29 & 0xfffffffffff);
- { uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (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/solinas64_2e266m3_6limbs/freeze.v b/src/Specific/solinas64_2e266m3_6limbs/freeze.v
deleted file mode 100644
index 1d9c2d451..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e266m3_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/solinas64_2e266m3_6limbs/freezeDisplay.log b/src/Specific/solinas64_2e266m3_6limbs/freezeDisplay.log
deleted file mode 100644
index 9f74404db..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/freezeDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffffffffd);
- uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0xfffffffffff);
- uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0xfffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0x1fffffffffff);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0xfffffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0xfffffffffff);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0x1ffffffffffd);
- uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint64_t x34 = (x29 & 0xfffffffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- uint64_t x38 = (x29 & 0xfffffffffff);
- uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- uint64_t x42 = (x29 & 0x1fffffffffff);
- uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- uint64_t x46 = (x29 & 0xfffffffffff);
- uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- uint64_t x50 = (x29 & 0xfffffffffff);
- uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x49, Return x27, Return x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e266m3_6limbs/freezeDisplay.v b/src/Specific/solinas64_2e266m3_6limbs/freezeDisplay.v
deleted file mode 100644
index 06076579c..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e266m3_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e266m3_6limbs/py_interpreter.sh b/src/Specific/solinas64_2e266m3_6limbs/py_interpreter.sh
deleted file mode 100755
index 9fcb44040..000000000
--- a/src/Specific/solinas64_2e266m3_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**266 - 3' -Dmodulus_bytes='44 + 1/3' -Da24='121665'
diff --git a/src/Specific/solinas64_2e285m9_5limbs/CurveParameters.v b/src/Specific/solinas64_2e285m9_5limbs/CurveParameters.v
deleted file mode 100644
index 938d4c035..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^285 - 9
-Base: 57
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 57;
- bitwidth := 64;
- s := 2^285;
- c := [(1, 9)];
- carry_chains := Some [seq 0 (pred 5); [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/solinas64_2e285m9_5limbs/Synthesis.v b/src/Specific/solinas64_2e285m9_5limbs/Synthesis.v
deleted file mode 100644
index de54ea6e8..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e285m9_5limbs.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/solinas64_2e285m9_5limbs/compiler.sh b/src/Specific/solinas64_2e285m9_5limbs/compiler.sh
deleted file mode 100755
index 2f90ee1f5..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{57,57,57,57,57}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='36' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<285) - 9' "$@"
diff --git a/src/Specific/solinas64_2e285m9_5limbs/compilerxx.sh b/src/Specific/solinas64_2e285m9_5limbs/compilerxx.sh
deleted file mode 100755
index 4df26a283..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{57,57,57,57,57}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='36' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<285) - 9' "$@"
diff --git a/src/Specific/solinas64_2e285m9_5limbs/feadd.c b/src/Specific/solinas64_2e285m9_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e285m9_5limbs/feadd.v b/src/Specific/solinas64_2e285m9_5limbs/feadd.v
deleted file mode 100644
index 2473da8d6..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e285m9_5limbs.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/solinas64_2e285m9_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e285m9_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e285m9_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e285m9_5limbs/feaddDisplay.v
deleted file mode 100644
index 2cf6486aa..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e285m9_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e285m9_5limbs/fecarry.v b/src/Specific/solinas64_2e285m9_5limbs/fecarry.v
deleted file mode 100644
index ccfd6996e..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e285m9_5limbs.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/solinas64_2e285m9_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e285m9_5limbs/fecarryDisplay.v
deleted file mode 100644
index 253733586..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e285m9_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e285m9_5limbs/femul.c b/src/Specific/solinas64_2e285m9_5limbs/femul.c
deleted file mode 100644
index 932ed20b5..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint128_t x20 = (((uint128_t)x5 * x18) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + (((uint128_t)x11 * x15) + ((uint128_t)x10 * x13)))));
- { uint128_t x21 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + (((uint128_t)x9 * x15) + ((uint128_t)x11 * x13)))) + (0x9 * ((uint128_t)x10 * x18)));
- { uint128_t x22 = ((((uint128_t)x5 * x17) + (((uint128_t)x7 * x15) + ((uint128_t)x9 * x13))) + (0x9 * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- { uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x9 * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- { uint128_t x24 = (((uint128_t)x5 * x13) + (0x9 * (((uint128_t)x7 * x18) + (((uint128_t)x9 * x19) + (((uint128_t)x11 * x17) + ((uint128_t)x10 * x15))))));
- { uint128_t x25 = (x24 >> 0x39);
- { uint64_t x26 = ((uint64_t)x24 & 0x1ffffffffffffff);
- { uint128_t x27 = (x25 + x23);
- { uint128_t x28 = (x27 >> 0x39);
- { uint64_t x29 = ((uint64_t)x27 & 0x1ffffffffffffff);
- { uint128_t x30 = (x28 + x22);
- { uint128_t x31 = (x30 >> 0x39);
- { uint64_t x32 = ((uint64_t)x30 & 0x1ffffffffffffff);
- { uint128_t x33 = (x31 + x21);
- { uint128_t x34 = (x33 >> 0x39);
- { uint64_t x35 = ((uint64_t)x33 & 0x1ffffffffffffff);
- { uint128_t x36 = (x34 + x20);
- { uint64_t x37 = (uint64_t) (x36 >> 0x39);
- { uint64_t x38 = ((uint64_t)x36 & 0x1ffffffffffffff);
- { uint128_t x39 = (x26 + ((uint128_t)0x9 * x37));
- { uint64_t x40 = (uint64_t) (x39 >> 0x39);
- { uint64_t x41 = ((uint64_t)x39 & 0x1ffffffffffffff);
- { uint64_t x42 = (x40 + x29);
- { uint64_t x43 = (x42 >> 0x39);
- { uint64_t x44 = (x42 & 0x1ffffffffffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e285m9_5limbs/femul.v b/src/Specific/solinas64_2e285m9_5limbs/femul.v
deleted file mode 100644
index fe0a48a25..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e285m9_5limbs.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/solinas64_2e285m9_5limbs/femulDisplay.log b/src/Specific/solinas64_2e285m9_5limbs/femulDisplay.log
deleted file mode 100644
index dfa089f06..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = (((uint128_t)x5 * x18) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + (((uint128_t)x11 * x15) + ((uint128_t)x10 * x13)))));
- uint128_t x21 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + (((uint128_t)x9 * x15) + ((uint128_t)x11 * x13)))) + (0x9 * ((uint128_t)x10 * x18)));
- uint128_t x22 = ((((uint128_t)x5 * x17) + (((uint128_t)x7 * x15) + ((uint128_t)x9 * x13))) + (0x9 * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x9 * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- uint128_t x24 = (((uint128_t)x5 * x13) + (0x9 * (((uint128_t)x7 * x18) + (((uint128_t)x9 * x19) + (((uint128_t)x11 * x17) + ((uint128_t)x10 * x15))))));
- uint128_t x25 = (x24 >> 0x39);
- uint64_t x26 = ((uint64_t)x24 & 0x1ffffffffffffff);
- uint128_t x27 = (x25 + x23);
- uint128_t x28 = (x27 >> 0x39);
- uint64_t x29 = ((uint64_t)x27 & 0x1ffffffffffffff);
- uint128_t x30 = (x28 + x22);
- uint128_t x31 = (x30 >> 0x39);
- uint64_t x32 = ((uint64_t)x30 & 0x1ffffffffffffff);
- uint128_t x33 = (x31 + x21);
- uint128_t x34 = (x33 >> 0x39);
- uint64_t x35 = ((uint64_t)x33 & 0x1ffffffffffffff);
- uint128_t x36 = (x34 + x20);
- uint64_t x37 = (uint64_t) (x36 >> 0x39);
- uint64_t x38 = ((uint64_t)x36 & 0x1ffffffffffffff);
- uint128_t x39 = (x26 + ((uint128_t)0x9 * x37));
- uint64_t x40 = (uint64_t) (x39 >> 0x39);
- uint64_t x41 = ((uint64_t)x39 & 0x1ffffffffffffff);
- uint64_t x42 = (x40 + x29);
- uint64_t x43 = (x42 >> 0x39);
- uint64_t x44 = (x42 & 0x1ffffffffffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e285m9_5limbs/femulDisplay.v b/src/Specific/solinas64_2e285m9_5limbs/femulDisplay.v
deleted file mode 100644
index acd91ee38..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e285m9_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e285m9_5limbs/fesquare.c b/src/Specific/solinas64_2e285m9_5limbs/fesquare.c
deleted file mode 100644
index 2d267f366..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x9 = (((uint128_t)x2 * x7) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x7 * x2)))));
- { uint128_t x10 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x9 * ((uint128_t)x7 * x7)));
- { uint128_t x11 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x9 * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- { uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x9 * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- { uint128_t x13 = (((uint128_t)x2 * x2) + (0x9 * (((uint128_t)x4 * x7) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((uint128_t)x7 * x4))))));
- { uint128_t x14 = (x13 >> 0x39);
- { uint64_t x15 = ((uint64_t)x13 & 0x1ffffffffffffff);
- { uint128_t x16 = (x14 + x12);
- { uint128_t x17 = (x16 >> 0x39);
- { uint64_t x18 = ((uint64_t)x16 & 0x1ffffffffffffff);
- { uint128_t x19 = (x17 + x11);
- { uint128_t x20 = (x19 >> 0x39);
- { uint64_t x21 = ((uint64_t)x19 & 0x1ffffffffffffff);
- { uint128_t x22 = (x20 + x10);
- { uint128_t x23 = (x22 >> 0x39);
- { uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffffffff);
- { uint128_t x25 = (x23 + x9);
- { uint64_t x26 = (uint64_t) (x25 >> 0x39);
- { uint64_t x27 = ((uint64_t)x25 & 0x1ffffffffffffff);
- { uint128_t x28 = (x15 + ((uint128_t)0x9 * x26));
- { uint64_t x29 = (uint64_t) (x28 >> 0x39);
- { uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffffffff);
- { uint64_t x31 = (x29 + x18);
- { uint64_t x32 = (x31 >> 0x39);
- { uint64_t x33 = (x31 & 0x1ffffffffffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e285m9_5limbs/fesquare.v b/src/Specific/solinas64_2e285m9_5limbs/fesquare.v
deleted file mode 100644
index e461ab98a..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e285m9_5limbs.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/solinas64_2e285m9_5limbs/fesquareDisplay.log b/src/Specific/solinas64_2e285m9_5limbs/fesquareDisplay.log
deleted file mode 100644
index ab7e499f7..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint128_t x9 = (((uint128_t)x2 * x7) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x7 * x2)))));
- uint128_t x10 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x9 * ((uint128_t)x7 * x7)));
- uint128_t x11 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x9 * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x9 * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- uint128_t x13 = (((uint128_t)x2 * x2) + (0x9 * (((uint128_t)x4 * x7) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((uint128_t)x7 * x4))))));
- uint128_t x14 = (x13 >> 0x39);
- uint64_t x15 = ((uint64_t)x13 & 0x1ffffffffffffff);
- uint128_t x16 = (x14 + x12);
- uint128_t x17 = (x16 >> 0x39);
- uint64_t x18 = ((uint64_t)x16 & 0x1ffffffffffffff);
- uint128_t x19 = (x17 + x11);
- uint128_t x20 = (x19 >> 0x39);
- uint64_t x21 = ((uint64_t)x19 & 0x1ffffffffffffff);
- uint128_t x22 = (x20 + x10);
- uint128_t x23 = (x22 >> 0x39);
- uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffffffff);
- uint128_t x25 = (x23 + x9);
- uint64_t x26 = (uint64_t) (x25 >> 0x39);
- uint64_t x27 = ((uint64_t)x25 & 0x1ffffffffffffff);
- uint128_t x28 = (x15 + ((uint128_t)0x9 * x26));
- uint64_t x29 = (uint64_t) (x28 >> 0x39);
- uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffffffff);
- uint64_t x31 = (x29 + x18);
- uint64_t x32 = (x31 >> 0x39);
- uint64_t x33 = (x31 & 0x1ffffffffffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e285m9_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e285m9_5limbs/fesquareDisplay.v
deleted file mode 100644
index 6d5f64e0c..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e285m9_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e285m9_5limbs/fesub.c b/src/Specific/solinas64_2e285m9_5limbs/fesub.c
deleted file mode 100644
index 5432636e7..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0x3ffffffffffffee + x5) - x13);
- out[1] = ((0x3fffffffffffffe + x7) - x15);
- out[2] = ((0x3fffffffffffffe + x9) - x17);
- out[3] = ((0x3fffffffffffffe + x11) - x19);
- out[4] = ((0x3fffffffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e285m9_5limbs/fesub.v b/src/Specific/solinas64_2e285m9_5limbs/fesub.v
deleted file mode 100644
index f3afe1bc0..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e285m9_5limbs.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/solinas64_2e285m9_5limbs/fesubDisplay.log b/src/Specific/solinas64_2e285m9_5limbs/fesubDisplay.log
deleted file mode 100644
index 4afd8dcc0..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0x3fffffffffffffe + x10) - x18), ((0x3fffffffffffffe + x11) - x19), ((0x3fffffffffffffe + x9) - x17), ((0x3fffffffffffffe + x7) - x15), ((0x3ffffffffffffee + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e285m9_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e285m9_5limbs/fesubDisplay.v
deleted file mode 100644
index 4e8bade3c..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e285m9_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e285m9_5limbs/freeze.c b/src/Specific/solinas64_2e285m9_5limbs/freeze.c
deleted file mode 100644
index a41633544..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffffffff7);
- { uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x1ffffffffffffff);
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x1ffffffffffffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x1ffffffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x1ffffffffffffff);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0x1fffffffffffff7);
- { uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint64_t x29 = (x24 & 0x1ffffffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint64_t x33 = (x24 & 0x1ffffffffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint64_t x37 = (x24 & 0x1ffffffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint64_t x41 = (x24 & 0x1ffffffffffffff);
- { uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e285m9_5limbs/freeze.v b/src/Specific/solinas64_2e285m9_5limbs/freeze.v
deleted file mode 100644
index 631049a95..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e285m9_5limbs.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/solinas64_2e285m9_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e285m9_5limbs/freezeDisplay.log
deleted file mode 100644
index 9f8619d80..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffffffff7);
- uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x1ffffffffffffff);
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x1ffffffffffffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x1ffffffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x1ffffffffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0x1fffffffffffff7);
- uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint64_t x29 = (x24 & 0x1ffffffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint64_t x33 = (x24 & 0x1ffffffffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint64_t x37 = (x24 & 0x1ffffffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint64_t x41 = (x24 & 0x1ffffffffffffff);
- uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e285m9_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e285m9_5limbs/freezeDisplay.v
deleted file mode 100644
index e6028d1b9..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e285m9_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e285m9_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e285m9_5limbs/py_interpreter.sh
deleted file mode 100755
index 263e483da..000000000
--- a/src/Specific/solinas64_2e285m9_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**285 - 9' -Dmodulus_bytes='57' -Da24='121665'
diff --git a/src/Specific/solinas64_2e285m9_6limbs/CurveParameters.v b/src/Specific/solinas64_2e285m9_6limbs/CurveParameters.v
deleted file mode 100644
index 4f7bf76f6..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^285 - 9
-Base: 47.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 47 + 1/2;
- bitwidth := 64;
- s := 2^285;
- c := [(1, 9)];
- 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/solinas64_2e285m9_6limbs/Synthesis.v b/src/Specific/solinas64_2e285m9_6limbs/Synthesis.v
deleted file mode 100644
index 5d41216fa..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e285m9_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/solinas64_2e285m9_6limbs/compiler.sh b/src/Specific/solinas64_2e285m9_6limbs/compiler.sh
deleted file mode 100755
index bae3bc8d7..000000000
--- a/src/Specific/solinas64_2e285m9_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,47,48,47,48,47}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='36' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<285) - 9' "$@"
diff --git a/src/Specific/solinas64_2e285m9_6limbs/compilerxx.sh b/src/Specific/solinas64_2e285m9_6limbs/compilerxx.sh
deleted file mode 100755
index f1c4e3828..000000000
--- a/src/Specific/solinas64_2e285m9_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,47,48,47,48,47}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='36' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<285) - 9' "$@"
diff --git a/src/Specific/solinas64_2e285m9_6limbs/feadd.c b/src/Specific/solinas64_2e285m9_6limbs/feadd.c
deleted file mode 100644
index 4a6bfb999..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/feadd.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_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/solinas64_2e285m9_6limbs/feadd.v b/src/Specific/solinas64_2e285m9_6limbs/feadd.v
deleted file mode 100644
index 9b85b752a..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e285m9_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/solinas64_2e285m9_6limbs/feaddDisplay.log b/src/Specific/solinas64_2e285m9_6limbs/feaddDisplay.log
deleted file mode 100644
index e32995a81..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-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
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e285m9_6limbs/feaddDisplay.v b/src/Specific/solinas64_2e285m9_6limbs/feaddDisplay.v
deleted file mode 100644
index 1a8fb7606..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e285m9_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e285m9_6limbs/fecarry.v b/src/Specific/solinas64_2e285m9_6limbs/fecarry.v
deleted file mode 100644
index f0fa849a4..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e285m9_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/solinas64_2e285m9_6limbs/fecarryDisplay.v b/src/Specific/solinas64_2e285m9_6limbs/fecarryDisplay.v
deleted file mode 100644
index 397ef457c..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e285m9_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e285m9_6limbs/femul.c b/src/Specific/solinas64_2e285m9_6limbs/femul.c
deleted file mode 100644
index 389d4a67f..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/femul.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint128_t x24 = (((uint128_t)x5 * x22) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + (((uint128_t)x13 * x17) + ((uint128_t)x12 * x15))))));
- { uint128_t x25 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + (((uint128_t)x9 * x19) + ((0x2 * ((uint128_t)x11 * x17)) + ((uint128_t)x13 * x15))))) + (0x9 * (0x2 * ((uint128_t)x12 * x22))));
- { uint128_t x26 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + ((uint128_t)x11 * x15)))) + (0x9 * (((uint128_t)x13 * x22) + ((uint128_t)x12 * x23))));
- { uint128_t x27 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((uint128_t)x9 * x15))) + (0x9 * ((0x2 * ((uint128_t)x11 * x22)) + (((uint128_t)x13 * x23) + (0x2 * ((uint128_t)x12 * x21))))));
- { uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (0x9 * (((uint128_t)x9 * x22) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x12 * x19))))));
- { uint128_t x29 = (((uint128_t)x5 * x15) + (0x9 * ((0x2 * ((uint128_t)x7 * x22)) + (((uint128_t)x9 * x23) + ((0x2 * ((uint128_t)x11 * x21)) + (((uint128_t)x13 * x19) + (0x2 * ((uint128_t)x12 * x17))))))));
- { uint64_t x30 = (uint64_t) (x29 >> 0x30);
- { uint64_t x31 = ((uint64_t)x29 & 0xffffffffffff);
- { uint128_t x32 = (x30 + x28);
- { uint64_t x33 = (uint64_t) (x32 >> 0x2f);
- { uint64_t x34 = ((uint64_t)x32 & 0x7fffffffffff);
- { uint128_t x35 = (x33 + x27);
- { uint64_t x36 = (uint64_t) (x35 >> 0x30);
- { uint64_t x37 = ((uint64_t)x35 & 0xffffffffffff);
- { uint128_t x38 = (x36 + x26);
- { uint64_t x39 = (uint64_t) (x38 >> 0x2f);
- { uint64_t x40 = ((uint64_t)x38 & 0x7fffffffffff);
- { uint128_t x41 = (x39 + x25);
- { uint64_t x42 = (uint64_t) (x41 >> 0x30);
- { uint64_t x43 = ((uint64_t)x41 & 0xffffffffffff);
- { uint128_t x44 = (x42 + x24);
- { uint64_t x45 = (uint64_t) (x44 >> 0x2f);
- { uint64_t x46 = ((uint64_t)x44 & 0x7fffffffffff);
- { uint64_t x47 = (x31 + (0x9 * x45));
- { uint64_t x48 = (x47 >> 0x30);
- { uint64_t x49 = (x47 & 0xffffffffffff);
- { uint64_t x50 = (x48 + x34);
- { uint64_t x51 = (x50 >> 0x2f);
- { uint64_t x52 = (x50 & 0x7fffffffffff);
- out[0] = x49;
- out[1] = x52;
- out[2] = (x51 + x37);
- out[3] = x40;
- out[4] = x43;
- out[5] = x46;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e285m9_6limbs/femul.v b/src/Specific/solinas64_2e285m9_6limbs/femul.v
deleted file mode 100644
index ab0521acf..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e285m9_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/solinas64_2e285m9_6limbs/femulDisplay.log b/src/Specific/solinas64_2e285m9_6limbs/femulDisplay.log
deleted file mode 100644
index 2c96480f4..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint128_t x24 = (((uint128_t)x5 * x22) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + (((uint128_t)x13 * x17) + ((uint128_t)x12 * x15))))));
- uint128_t x25 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + (((uint128_t)x9 * x19) + ((0x2 * ((uint128_t)x11 * x17)) + ((uint128_t)x13 * x15))))) + (0x9 * (0x2 * ((uint128_t)x12 * x22))));
- uint128_t x26 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + ((uint128_t)x11 * x15)))) + (0x9 * (((uint128_t)x13 * x22) + ((uint128_t)x12 * x23))));
- uint128_t x27 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((uint128_t)x9 * x15))) + (0x9 * ((0x2 * ((uint128_t)x11 * x22)) + (((uint128_t)x13 * x23) + (0x2 * ((uint128_t)x12 * x21))))));
- uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (0x9 * (((uint128_t)x9 * x22) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x12 * x19))))));
- uint128_t x29 = (((uint128_t)x5 * x15) + (0x9 * ((0x2 * ((uint128_t)x7 * x22)) + (((uint128_t)x9 * x23) + ((0x2 * ((uint128_t)x11 * x21)) + (((uint128_t)x13 * x19) + (0x2 * ((uint128_t)x12 * x17))))))));
- uint64_t x30 = (uint64_t) (x29 >> 0x30);
- uint64_t x31 = ((uint64_t)x29 & 0xffffffffffff);
- uint128_t x32 = (x30 + x28);
- uint64_t x33 = (uint64_t) (x32 >> 0x2f);
- uint64_t x34 = ((uint64_t)x32 & 0x7fffffffffff);
- uint128_t x35 = (x33 + x27);
- uint64_t x36 = (uint64_t) (x35 >> 0x30);
- uint64_t x37 = ((uint64_t)x35 & 0xffffffffffff);
- uint128_t x38 = (x36 + x26);
- uint64_t x39 = (uint64_t) (x38 >> 0x2f);
- uint64_t x40 = ((uint64_t)x38 & 0x7fffffffffff);
- uint128_t x41 = (x39 + x25);
- uint64_t x42 = (uint64_t) (x41 >> 0x30);
- uint64_t x43 = ((uint64_t)x41 & 0xffffffffffff);
- uint128_t x44 = (x42 + x24);
- uint64_t x45 = (uint64_t) (x44 >> 0x2f);
- uint64_t x46 = ((uint64_t)x44 & 0x7fffffffffff);
- uint64_t x47 = (x31 + (0x9 * x45));
- uint64_t x48 = (x47 >> 0x30);
- uint64_t x49 = (x47 & 0xffffffffffff);
- uint64_t x50 = (x48 + x34);
- uint64_t x51 = (x50 >> 0x2f);
- uint64_t x52 = (x50 & 0x7fffffffffff);
- return (Return x46, Return x43, Return x40, (x51 + x37), Return x52, Return x49))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e285m9_6limbs/femulDisplay.v b/src/Specific/solinas64_2e285m9_6limbs/femulDisplay.v
deleted file mode 100644
index 8276b5424..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e285m9_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e285m9_6limbs/fesquare.c b/src/Specific/solinas64_2e285m9_6limbs/fesquare.c
deleted file mode 100644
index 0d70776b1..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/fesquare.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void fesquare(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x11 = (((uint128_t)x2 * x9) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x9 * x2))))));
- { uint128_t x12 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x9 * (0x2 * ((uint128_t)x9 * x9))));
- { uint128_t x13 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x9 * (((uint128_t)x10 * x9) + ((uint128_t)x9 * x10))));
- { uint128_t x14 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x9 * ((0x2 * ((uint128_t)x8 * x9)) + (((uint128_t)x10 * x10) + (0x2 * ((uint128_t)x9 * x8))))));
- { uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x9 * (((uint128_t)x6 * x9) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((uint128_t)x9 * x6))))));
- { uint128_t x16 = (((uint128_t)x2 * x2) + (0x9 * ((0x2 * ((uint128_t)x4 * x9)) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (0x2 * ((uint128_t)x9 * x4))))))));
- { uint64_t x17 = (uint64_t) (x16 >> 0x30);
- { uint64_t x18 = ((uint64_t)x16 & 0xffffffffffff);
- { uint128_t x19 = (x17 + x15);
- { uint64_t x20 = (uint64_t) (x19 >> 0x2f);
- { uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffff);
- { uint128_t x22 = (x20 + x14);
- { uint64_t x23 = (uint64_t) (x22 >> 0x30);
- { uint64_t x24 = ((uint64_t)x22 & 0xffffffffffff);
- { uint128_t x25 = (x23 + x13);
- { uint64_t x26 = (uint64_t) (x25 >> 0x2f);
- { uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffff);
- { uint128_t x28 = (x26 + x12);
- { uint64_t x29 = (uint64_t) (x28 >> 0x30);
- { uint64_t x30 = ((uint64_t)x28 & 0xffffffffffff);
- { uint128_t x31 = (x29 + x11);
- { uint64_t x32 = (uint64_t) (x31 >> 0x2f);
- { uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffff);
- { uint64_t x34 = (x18 + (0x9 * x32));
- { uint64_t x35 = (x34 >> 0x30);
- { uint64_t x36 = (x34 & 0xffffffffffff);
- { uint64_t x37 = (x35 + x21);
- { uint64_t x38 = (x37 >> 0x2f);
- { uint64_t x39 = (x37 & 0x7fffffffffff);
- out[0] = x36;
- out[1] = x39;
- out[2] = (x38 + x24);
- out[3] = x27;
- out[4] = x30;
- out[5] = x33;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e285m9_6limbs/fesquare.v b/src/Specific/solinas64_2e285m9_6limbs/fesquare.v
deleted file mode 100644
index 84b7cc03c..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e285m9_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/solinas64_2e285m9_6limbs/fesquareDisplay.log b/src/Specific/solinas64_2e285m9_6limbs/fesquareDisplay.log
deleted file mode 100644
index fc3ae692b..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint128_t x11 = (((uint128_t)x2 * x9) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x9 * x2))))));
- uint128_t x12 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x9 * (0x2 * ((uint128_t)x9 * x9))));
- uint128_t x13 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x9 * (((uint128_t)x10 * x9) + ((uint128_t)x9 * x10))));
- uint128_t x14 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x9 * ((0x2 * ((uint128_t)x8 * x9)) + (((uint128_t)x10 * x10) + (0x2 * ((uint128_t)x9 * x8))))));
- uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x9 * (((uint128_t)x6 * x9) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((uint128_t)x9 * x6))))));
- uint128_t x16 = (((uint128_t)x2 * x2) + (0x9 * ((0x2 * ((uint128_t)x4 * x9)) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (0x2 * ((uint128_t)x9 * x4))))))));
- uint64_t x17 = (uint64_t) (x16 >> 0x30);
- uint64_t x18 = ((uint64_t)x16 & 0xffffffffffff);
- uint128_t x19 = (x17 + x15);
- uint64_t x20 = (uint64_t) (x19 >> 0x2f);
- uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffff);
- uint128_t x22 = (x20 + x14);
- uint64_t x23 = (uint64_t) (x22 >> 0x30);
- uint64_t x24 = ((uint64_t)x22 & 0xffffffffffff);
- uint128_t x25 = (x23 + x13);
- uint64_t x26 = (uint64_t) (x25 >> 0x2f);
- uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffff);
- uint128_t x28 = (x26 + x12);
- uint64_t x29 = (uint64_t) (x28 >> 0x30);
- uint64_t x30 = ((uint64_t)x28 & 0xffffffffffff);
- uint128_t x31 = (x29 + x11);
- uint64_t x32 = (uint64_t) (x31 >> 0x2f);
- uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffff);
- uint64_t x34 = (x18 + (0x9 * x32));
- uint64_t x35 = (x34 >> 0x30);
- uint64_t x36 = (x34 & 0xffffffffffff);
- uint64_t x37 = (x35 + x21);
- uint64_t x38 = (x37 >> 0x2f);
- uint64_t x39 = (x37 & 0x7fffffffffff);
- return (Return x33, Return x30, Return x27, (x38 + x24), Return x39, Return x36))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e285m9_6limbs/fesquareDisplay.v b/src/Specific/solinas64_2e285m9_6limbs/fesquareDisplay.v
deleted file mode 100644
index c53820c7d..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e285m9_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e285m9_6limbs/fesub.c b/src/Specific/solinas64_2e285m9_6limbs/fesub.c
deleted file mode 100644
index f93c66a21..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/fesub.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- out[0] = ((0x1ffffffffffee + x5) - x15);
- out[1] = ((0xfffffffffffe + x7) - x17);
- out[2] = ((0x1fffffffffffe + x9) - x19);
- out[3] = ((0xfffffffffffe + x11) - x21);
- out[4] = ((0x1fffffffffffe + x13) - x23);
- out[5] = ((0xfffffffffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e285m9_6limbs/fesub.v b/src/Specific/solinas64_2e285m9_6limbs/fesub.v
deleted file mode 100644
index 95cf0d7ee..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e285m9_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/solinas64_2e285m9_6limbs/fesubDisplay.log b/src/Specific/solinas64_2e285m9_6limbs/fesubDisplay.log
deleted file mode 100644
index 0b3db993c..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- (((0xfffffffffffe + x12) - x22), ((0x1fffffffffffe + x13) - x23), ((0xfffffffffffe + x11) - x21), ((0x1fffffffffffe + x9) - x19), ((0xfffffffffffe + x7) - x17), ((0x1ffffffffffee + x5) - x15)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e285m9_6limbs/fesubDisplay.v b/src/Specific/solinas64_2e285m9_6limbs/fesubDisplay.v
deleted file mode 100644
index 814b73a3c..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e285m9_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e285m9_6limbs/freeze.c b/src/Specific/solinas64_2e285m9_6limbs/freeze.c
deleted file mode 100644
index de5684ced..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/freeze.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void freeze(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffff7);
- { uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0x7fffffffffff);
- { uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0xffffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0x7fffffffffff);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0xffffffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0x7fffffffffff);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0xfffffffffff7);
- { uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint64_t x34 = (x29 & 0x7fffffffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- { uint64_t x38 = (x29 & 0xffffffffffff);
- { uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- { uint64_t x42 = (x29 & 0x7fffffffffff);
- { uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- { uint64_t x46 = (x29 & 0xffffffffffff);
- { uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- { uint64_t x50 = (x29 & 0x7fffffffffff);
- { uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (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/solinas64_2e285m9_6limbs/freeze.v b/src/Specific/solinas64_2e285m9_6limbs/freeze.v
deleted file mode 100644
index ef9c47074..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e285m9_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/solinas64_2e285m9_6limbs/freezeDisplay.log b/src/Specific/solinas64_2e285m9_6limbs/freezeDisplay.log
deleted file mode 100644
index ef01503b3..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/freezeDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffff7);
- uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0x7fffffffffff);
- uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0xffffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0x7fffffffffff);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0xffffffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0x7fffffffffff);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0xfffffffffff7);
- uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint64_t x34 = (x29 & 0x7fffffffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- uint64_t x38 = (x29 & 0xffffffffffff);
- uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- uint64_t x42 = (x29 & 0x7fffffffffff);
- uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- uint64_t x46 = (x29 & 0xffffffffffff);
- uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- uint64_t x50 = (x29 & 0x7fffffffffff);
- uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x49, Return x27, Return x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e285m9_6limbs/freezeDisplay.v b/src/Specific/solinas64_2e285m9_6limbs/freezeDisplay.v
deleted file mode 100644
index 4ebcd03b7..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e285m9_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e285m9_6limbs/py_interpreter.sh b/src/Specific/solinas64_2e285m9_6limbs/py_interpreter.sh
deleted file mode 100755
index 92f4e432f..000000000
--- a/src/Specific/solinas64_2e285m9_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**285 - 9' -Dmodulus_bytes='47.5' -Da24='121665'
diff --git a/src/Specific/solinas64_2e291m19_5limbs/CurveParameters.v b/src/Specific/solinas64_2e291m19_5limbs/CurveParameters.v
deleted file mode 100644
index 3f580fdc6..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^291 - 19
-Base: 58.2
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 5%nat;
- base := 58 + 1/5;
- bitwidth := 64;
- s := 2^291;
- c := [(1, 19)];
- carry_chains := Some [seq 0 (pred 5); [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/solinas64_2e291m19_5limbs/Synthesis.v b/src/Specific/solinas64_2e291m19_5limbs/Synthesis.v
deleted file mode 100644
index f7495a7dd..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e291m19_5limbs.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/solinas64_2e291m19_5limbs/compiler.sh b/src/Specific/solinas64_2e291m19_5limbs/compiler.sh
deleted file mode 100755
index 7df374135..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{59,58,58,58,58}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='37' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<291) - 19' "$@"
diff --git a/src/Specific/solinas64_2e291m19_5limbs/compilerxx.sh b/src/Specific/solinas64_2e291m19_5limbs/compilerxx.sh
deleted file mode 100755
index 59e85af40..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{59,58,58,58,58}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='37' -Dmodulus_limbs='5' -Dq_mpz='(1_mpz<<291) - 19' "$@"
diff --git a/src/Specific/solinas64_2e291m19_5limbs/feadd.c b/src/Specific/solinas64_2e291m19_5limbs/feadd.c
deleted file mode 100644
index a05766e0b..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/feadd.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void feadd(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = (x5 + x13);
- out[1] = (x7 + x15);
- out[2] = (x9 + x17);
- out[3] = (x11 + x19);
- out[4] = (x10 + x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e291m19_5limbs/feadd.v b/src/Specific/solinas64_2e291m19_5limbs/feadd.v
deleted file mode 100644
index a73b2a5f9..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e291m19_5limbs.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/solinas64_2e291m19_5limbs/feaddDisplay.log b/src/Specific/solinas64_2e291m19_5limbs/feaddDisplay.log
deleted file mode 100644
index bce3421b2..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- ((x10 + x18), (x11 + x19), (x9 + x17), (x7 + x15), (x5 + x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e291m19_5limbs/feaddDisplay.v b/src/Specific/solinas64_2e291m19_5limbs/feaddDisplay.v
deleted file mode 100644
index b301619a1..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e291m19_5limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e291m19_5limbs/fecarry.v b/src/Specific/solinas64_2e291m19_5limbs/fecarry.v
deleted file mode 100644
index 02b67cb45..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e291m19_5limbs.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/solinas64_2e291m19_5limbs/fecarryDisplay.v b/src/Specific/solinas64_2e291m19_5limbs/fecarryDisplay.v
deleted file mode 100644
index 73486c25a..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e291m19_5limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e291m19_5limbs/femul.c b/src/Specific/solinas64_2e291m19_5limbs/femul.c
deleted file mode 100644
index aadbb7dc2..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/femul.c
+++ /dev/null
@@ -1,43 +0,0 @@
-static void femul(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- { uint128_t x20 = (((uint128_t)x5 * x18) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((0x2 * ((uint128_t)x11 * x15)) + ((uint128_t)x10 * x13)))));
- { uint128_t x21 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((0x2 * ((uint128_t)x9 * x15)) + ((uint128_t)x11 * x13)))) + (0x13 * ((uint128_t)x10 * x18)));
- { uint128_t x22 = ((((uint128_t)x5 * x17) + ((0x2 * ((uint128_t)x7 * x15)) + ((uint128_t)x9 * x13))) + (0x13 * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- { uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x13 * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- { uint128_t x24 = (((uint128_t)x5 * x13) + (0x13 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- { uint128_t x25 = (x24 >> 0x3b);
- { uint64_t x26 = ((uint64_t)x24 & 0x7ffffffffffffff);
- { uint128_t x27 = (x25 + x23);
- { uint128_t x28 = (x27 >> 0x3a);
- { uint64_t x29 = ((uint64_t)x27 & 0x3ffffffffffffff);
- { uint128_t x30 = (x28 + x22);
- { uint128_t x31 = (x30 >> 0x3a);
- { uint64_t x32 = ((uint64_t)x30 & 0x3ffffffffffffff);
- { uint128_t x33 = (x31 + x21);
- { uint128_t x34 = (x33 >> 0x3a);
- { uint64_t x35 = ((uint64_t)x33 & 0x3ffffffffffffff);
- { uint128_t x36 = (x34 + x20);
- { uint128_t x37 = (x36 >> 0x3a);
- { uint64_t x38 = ((uint64_t)x36 & 0x3ffffffffffffff);
- { uint128_t x39 = (x26 + (0x13 * x37));
- { uint64_t x40 = (uint64_t) (x39 >> 0x3b);
- { uint64_t x41 = ((uint64_t)x39 & 0x7ffffffffffffff);
- { uint64_t x42 = (x40 + x29);
- { uint64_t x43 = (x42 >> 0x3a);
- { uint64_t x44 = (x42 & 0x3ffffffffffffff);
- out[0] = x41;
- out[1] = x44;
- out[2] = (x43 + x32);
- out[3] = x35;
- out[4] = x38;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e291m19_5limbs/femul.v b/src/Specific/solinas64_2e291m19_5limbs/femul.v
deleted file mode 100644
index f93af2383..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e291m19_5limbs.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/solinas64_2e291m19_5limbs/femulDisplay.log b/src/Specific/solinas64_2e291m19_5limbs/femulDisplay.log
deleted file mode 100644
index 5ea4cd5a6..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/femulDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- uint128_t x20 = (((uint128_t)x5 * x18) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((0x2 * ((uint128_t)x11 * x15)) + ((uint128_t)x10 * x13)))));
- uint128_t x21 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((0x2 * ((uint128_t)x9 * x15)) + ((uint128_t)x11 * x13)))) + (0x13 * ((uint128_t)x10 * x18)));
- uint128_t x22 = ((((uint128_t)x5 * x17) + ((0x2 * ((uint128_t)x7 * x15)) + ((uint128_t)x9 * x13))) + (0x13 * (((uint128_t)x11 * x18) + ((uint128_t)x10 * x19))));
- uint128_t x23 = ((((uint128_t)x5 * x15) + ((uint128_t)x7 * x13)) + (0x13 * (((uint128_t)x9 * x18) + (((uint128_t)x11 * x19) + ((uint128_t)x10 * x17)))));
- uint128_t x24 = (((uint128_t)x5 * x13) + (0x13 * ((0x2 * ((uint128_t)x7 * x18)) + ((0x2 * ((uint128_t)x9 * x19)) + ((0x2 * ((uint128_t)x11 * x17)) + (0x2 * ((uint128_t)x10 * x15)))))));
- uint128_t x25 = (x24 >> 0x3b);
- uint64_t x26 = ((uint64_t)x24 & 0x7ffffffffffffff);
- uint128_t x27 = (x25 + x23);
- uint128_t x28 = (x27 >> 0x3a);
- uint64_t x29 = ((uint64_t)x27 & 0x3ffffffffffffff);
- uint128_t x30 = (x28 + x22);
- uint128_t x31 = (x30 >> 0x3a);
- uint64_t x32 = ((uint64_t)x30 & 0x3ffffffffffffff);
- uint128_t x33 = (x31 + x21);
- uint128_t x34 = (x33 >> 0x3a);
- uint64_t x35 = ((uint64_t)x33 & 0x3ffffffffffffff);
- uint128_t x36 = (x34 + x20);
- uint128_t x37 = (x36 >> 0x3a);
- uint64_t x38 = ((uint64_t)x36 & 0x3ffffffffffffff);
- uint128_t x39 = (x26 + (0x13 * x37));
- uint64_t x40 = (uint64_t) (x39 >> 0x3b);
- uint64_t x41 = ((uint64_t)x39 & 0x7ffffffffffffff);
- uint64_t x42 = (x40 + x29);
- uint64_t x43 = (x42 >> 0x3a);
- uint64_t x44 = (x42 & 0x3ffffffffffffff);
- return (Return x38, Return x35, (x43 + x32), Return x44, Return x41))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e291m19_5limbs/femulDisplay.v b/src/Specific/solinas64_2e291m19_5limbs/femulDisplay.v
deleted file mode 100644
index 07b3ae327..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e291m19_5limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e291m19_5limbs/fesquare.c b/src/Specific/solinas64_2e291m19_5limbs/fesquare.c
deleted file mode 100644
index 781a6ed09..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/fesquare.c
+++ /dev/null
@@ -1,38 +0,0 @@
-static void fesquare(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x9 = (((uint128_t)x2 * x7) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x7 * x2)))));
- { uint128_t x10 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x13 * ((uint128_t)x7 * x7)));
- { uint128_t x11 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x13 * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- { uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x13 * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- { uint128_t x13 = (((uint128_t)x2 * x2) + (0x13 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- { uint128_t x14 = (x13 >> 0x3b);
- { uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffffffff);
- { uint128_t x16 = (x14 + x12);
- { uint128_t x17 = (x16 >> 0x3a);
- { uint64_t x18 = ((uint64_t)x16 & 0x3ffffffffffffff);
- { uint128_t x19 = (x17 + x11);
- { uint128_t x20 = (x19 >> 0x3a);
- { uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffffffff);
- { uint128_t x22 = (x20 + x10);
- { uint128_t x23 = (x22 >> 0x3a);
- { uint64_t x24 = ((uint64_t)x22 & 0x3ffffffffffffff);
- { uint128_t x25 = (x23 + x9);
- { uint128_t x26 = (x25 >> 0x3a);
- { uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffffffff);
- { uint128_t x28 = (x15 + (0x13 * x26));
- { uint64_t x29 = (uint64_t) (x28 >> 0x3b);
- { uint64_t x30 = ((uint64_t)x28 & 0x7ffffffffffffff);
- { uint64_t x31 = (x29 + x18);
- { uint64_t x32 = (x31 >> 0x3a);
- { uint64_t x33 = (x31 & 0x3ffffffffffffff);
- out[0] = x30;
- out[1] = x33;
- out[2] = (x32 + x21);
- out[3] = x24;
- out[4] = x27;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e291m19_5limbs/fesquare.v b/src/Specific/solinas64_2e291m19_5limbs/fesquare.v
deleted file mode 100644
index 1454a7c70..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e291m19_5limbs.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/solinas64_2e291m19_5limbs/fesquareDisplay.log b/src/Specific/solinas64_2e291m19_5limbs/fesquareDisplay.log
deleted file mode 100644
index c6a1136c5..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint128_t x9 = (((uint128_t)x2 * x7) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x7 * x2)))));
- uint128_t x10 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x13 * ((uint128_t)x7 * x7)));
- uint128_t x11 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x13 * (((uint128_t)x8 * x7) + ((uint128_t)x7 * x8))));
- uint128_t x12 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x13 * (((uint128_t)x6 * x7) + (((uint128_t)x8 * x8) + ((uint128_t)x7 * x6)))));
- uint128_t x13 = (((uint128_t)x2 * x2) + (0x13 * ((0x2 * ((uint128_t)x4 * x7)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x7 * x4)))))));
- uint128_t x14 = (x13 >> 0x3b);
- uint64_t x15 = ((uint64_t)x13 & 0x7ffffffffffffff);
- uint128_t x16 = (x14 + x12);
- uint128_t x17 = (x16 >> 0x3a);
- uint64_t x18 = ((uint64_t)x16 & 0x3ffffffffffffff);
- uint128_t x19 = (x17 + x11);
- uint128_t x20 = (x19 >> 0x3a);
- uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffffffff);
- uint128_t x22 = (x20 + x10);
- uint128_t x23 = (x22 >> 0x3a);
- uint64_t x24 = ((uint64_t)x22 & 0x3ffffffffffffff);
- uint128_t x25 = (x23 + x9);
- uint128_t x26 = (x25 >> 0x3a);
- uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffffffff);
- uint128_t x28 = (x15 + (0x13 * x26));
- uint64_t x29 = (uint64_t) (x28 >> 0x3b);
- uint64_t x30 = ((uint64_t)x28 & 0x7ffffffffffffff);
- uint64_t x31 = (x29 + x18);
- uint64_t x32 = (x31 >> 0x3a);
- uint64_t x33 = (x31 & 0x3ffffffffffffff);
- return (Return x27, Return x24, (x32 + x21), Return x33, Return x30))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e291m19_5limbs/fesquareDisplay.v b/src/Specific/solinas64_2e291m19_5limbs/fesquareDisplay.v
deleted file mode 100644
index da3c01e0b..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e291m19_5limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e291m19_5limbs/fesub.c b/src/Specific/solinas64_2e291m19_5limbs/fesub.c
deleted file mode 100644
index a853aec00..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/fesub.c
+++ /dev/null
@@ -1,18 +0,0 @@
-static void fesub(uint64_t out[5], const uint64_t in1[5], const uint64_t in2[5]) {
- { const uint64_t x10 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x18 = in2[4];
- { const uint64_t x19 = in2[3];
- { const uint64_t x17 = in2[2];
- { const uint64_t x15 = in2[1];
- { const uint64_t x13 = in2[0];
- out[0] = ((0xfffffffffffffda + x5) - x13);
- out[1] = ((0x7fffffffffffffe + x7) - x15);
- out[2] = ((0x7fffffffffffffe + x9) - x17);
- out[3] = ((0x7fffffffffffffe + x11) - x19);
- out[4] = ((0x7fffffffffffffe + x10) - x18);
- }}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e291m19_5limbs/fesub.v b/src/Specific/solinas64_2e291m19_5limbs/fesub.v
deleted file mode 100644
index eaaa0ec3c..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e291m19_5limbs.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/solinas64_2e291m19_5limbs/fesubDisplay.log b/src/Specific/solinas64_2e291m19_5limbs/fesubDisplay.log
deleted file mode 100644
index a5ea892fa..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x10, x11, x9, x7, x5, (x18, x19, x17, x15, x13))%core,
- (((0x7fffffffffffffe + x10) - x18), ((0x7fffffffffffffe + x11) - x19), ((0x7fffffffffffffe + x9) - x17), ((0x7fffffffffffffe + x7) - x15), ((0xfffffffffffffda + x5) - x13)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e291m19_5limbs/fesubDisplay.v b/src/Specific/solinas64_2e291m19_5limbs/fesubDisplay.v
deleted file mode 100644
index 58456a3c0..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e291m19_5limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e291m19_5limbs/freeze.c b/src/Specific/solinas64_2e291m19_5limbs/freeze.c
deleted file mode 100644
index 3e256f312..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/freeze.c
+++ /dev/null
@@ -1,29 +0,0 @@
-static void freeze(uint64_t out[5], const uint64_t in1[5]) {
- { const uint64_t x7 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffffffed);
- { uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x3ffffffffffffff);
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x3ffffffffffffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x3ffffffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x3ffffffffffffff);
- { uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- { uint64_t x25 = (x24 & 0x7ffffffffffffed);
- { uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- { uint64_t x29 = (x24 & 0x3ffffffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- { uint64_t x33 = (x24 & 0x3ffffffffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- { uint64_t x37 = (x24 & 0x3ffffffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- { uint64_t x41 = (x24 & 0x3ffffffffffffff);
- { uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- out[0] = x27;
- out[1] = x31;
- out[2] = x35;
- out[3] = x39;
- out[4] = x43;
- }}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e291m19_5limbs/freeze.v b/src/Specific/solinas64_2e291m19_5limbs/freeze.v
deleted file mode 100644
index 1104352fa..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e291m19_5limbs.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/solinas64_2e291m19_5limbs/freezeDisplay.log b/src/Specific/solinas64_2e291m19_5limbs/freezeDisplay.log
deleted file mode 100644
index 63fcc15c2..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/freezeDisplay.log
+++ /dev/null
@@ -1,23 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x7, x8, x6, x4, x2)%core,
- uint64_t x10, uint8_t x11 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffffffed);
- uint64_t x13, uint8_t x14 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x11, Return x4, 0x3ffffffffffffff);
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x14, Return x6, 0x3ffffffffffffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x8, 0x3ffffffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x7, 0x3ffffffffffffff);
- uint64_t x24 = cmovznz64(x23, 0x0, 0xffffffffffffffffL);
- uint64_t x25 = (x24 & 0x7ffffffffffffed);
- uint64_t x27, uint8_t x28 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x10, Return x25);
- uint64_t x29 = (x24 & 0x3ffffffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x13, Return x29);
- uint64_t x33 = (x24 & 0x3ffffffffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x16, Return x33);
- uint64_t x37 = (x24 & 0x3ffffffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x19, Return x37);
- uint64_t x41 = (x24 & 0x3ffffffffffffff);
- uint64_t x43, uint8_t _ = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x22, Return x41);
- (Return x43, Return x39, Return x35, Return x31, Return x27))
-x
- : word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e291m19_5limbs/freezeDisplay.v b/src/Specific/solinas64_2e291m19_5limbs/freezeDisplay.v
deleted file mode 100644
index 257182f93..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e291m19_5limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e291m19_5limbs/py_interpreter.sh b/src/Specific/solinas64_2e291m19_5limbs/py_interpreter.sh
deleted file mode 100755
index 0180bd322..000000000
--- a/src/Specific/solinas64_2e291m19_5limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**291 - 19' -Dmodulus_bytes='58.2' -Da24='121665'
diff --git a/src/Specific/solinas64_2e291m19_6limbs/CurveParameters.v b/src/Specific/solinas64_2e291m19_6limbs/CurveParameters.v
deleted file mode 100644
index 09d464ee7..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^291 - 19
-Base: 48.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 48 + 1/2;
- bitwidth := 64;
- s := 2^291;
- c := [(1, 19)];
- 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/solinas64_2e291m19_6limbs/Synthesis.v b/src/Specific/solinas64_2e291m19_6limbs/Synthesis.v
deleted file mode 100644
index f870e415c..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e291m19_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/solinas64_2e291m19_6limbs/compiler.sh b/src/Specific/solinas64_2e291m19_6limbs/compiler.sh
deleted file mode 100755
index d41d8b572..000000000
--- a/src/Specific/solinas64_2e291m19_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,48,49,48,49,48}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='37' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<291) - 19' "$@"
diff --git a/src/Specific/solinas64_2e291m19_6limbs/compilerxx.sh b/src/Specific/solinas64_2e291m19_6limbs/compilerxx.sh
deleted file mode 100755
index a8e216477..000000000
--- a/src/Specific/solinas64_2e291m19_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,48,49,48,49,48}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='37' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<291) - 19' "$@"
diff --git a/src/Specific/solinas64_2e291m19_6limbs/feadd.c b/src/Specific/solinas64_2e291m19_6limbs/feadd.c
deleted file mode 100644
index 4a6bfb999..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/feadd.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_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/solinas64_2e291m19_6limbs/feadd.v b/src/Specific/solinas64_2e291m19_6limbs/feadd.v
deleted file mode 100644
index 8945a8a51..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e291m19_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/solinas64_2e291m19_6limbs/feaddDisplay.log b/src/Specific/solinas64_2e291m19_6limbs/feaddDisplay.log
deleted file mode 100644
index e32995a81..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-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
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e291m19_6limbs/feaddDisplay.v b/src/Specific/solinas64_2e291m19_6limbs/feaddDisplay.v
deleted file mode 100644
index aea185c68..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e291m19_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e291m19_6limbs/fecarry.v b/src/Specific/solinas64_2e291m19_6limbs/fecarry.v
deleted file mode 100644
index 1e683f0fa..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e291m19_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/solinas64_2e291m19_6limbs/fecarryDisplay.v b/src/Specific/solinas64_2e291m19_6limbs/fecarryDisplay.v
deleted file mode 100644
index 435e723b0..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e291m19_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e291m19_6limbs/femul.c b/src/Specific/solinas64_2e291m19_6limbs/femul.c
deleted file mode 100644
index f4d373414..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/femul.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint128_t x24 = (((uint128_t)x5 * x22) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + (((uint128_t)x13 * x17) + ((uint128_t)x12 * x15))))));
- { uint128_t x25 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + (((uint128_t)x9 * x19) + ((0x2 * ((uint128_t)x11 * x17)) + ((uint128_t)x13 * x15))))) + (0x13 * (0x2 * ((uint128_t)x12 * x22))));
- { uint128_t x26 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + ((uint128_t)x11 * x15)))) + (0x13 * (((uint128_t)x13 * x22) + ((uint128_t)x12 * x23))));
- { uint128_t x27 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((uint128_t)x9 * x15))) + (0x13 * ((0x2 * ((uint128_t)x11 * x22)) + (((uint128_t)x13 * x23) + (0x2 * ((uint128_t)x12 * x21))))));
- { uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (0x13 * (((uint128_t)x9 * x22) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x12 * x19))))));
- { uint128_t x29 = (((uint128_t)x5 * x15) + (0x13 * ((0x2 * ((uint128_t)x7 * x22)) + (((uint128_t)x9 * x23) + ((0x2 * ((uint128_t)x11 * x21)) + (((uint128_t)x13 * x19) + (0x2 * ((uint128_t)x12 * x17))))))));
- { uint64_t x30 = (uint64_t) (x29 >> 0x31);
- { uint64_t x31 = ((uint64_t)x29 & 0x1ffffffffffff);
- { uint128_t x32 = (x30 + x28);
- { uint64_t x33 = (uint64_t) (x32 >> 0x30);
- { uint64_t x34 = ((uint64_t)x32 & 0xffffffffffff);
- { uint128_t x35 = (x33 + x27);
- { uint64_t x36 = (uint64_t) (x35 >> 0x31);
- { uint64_t x37 = ((uint64_t)x35 & 0x1ffffffffffff);
- { uint128_t x38 = (x36 + x26);
- { uint64_t x39 = (uint64_t) (x38 >> 0x30);
- { uint64_t x40 = ((uint64_t)x38 & 0xffffffffffff);
- { uint128_t x41 = (x39 + x25);
- { uint64_t x42 = (uint64_t) (x41 >> 0x31);
- { uint64_t x43 = ((uint64_t)x41 & 0x1ffffffffffff);
- { uint128_t x44 = (x42 + x24);
- { uint64_t x45 = (uint64_t) (x44 >> 0x30);
- { uint64_t x46 = ((uint64_t)x44 & 0xffffffffffff);
- { uint64_t x47 = (x31 + (0x13 * x45));
- { uint64_t x48 = (x47 >> 0x31);
- { uint64_t x49 = (x47 & 0x1ffffffffffff);
- { uint64_t x50 = (x48 + x34);
- { uint64_t x51 = (x50 >> 0x30);
- { uint64_t x52 = (x50 & 0xffffffffffff);
- out[0] = x49;
- out[1] = x52;
- out[2] = (x51 + x37);
- out[3] = x40;
- out[4] = x43;
- out[5] = x46;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e291m19_6limbs/femul.v b/src/Specific/solinas64_2e291m19_6limbs/femul.v
deleted file mode 100644
index a3a8b77bc..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e291m19_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/solinas64_2e291m19_6limbs/femulDisplay.log b/src/Specific/solinas64_2e291m19_6limbs/femulDisplay.log
deleted file mode 100644
index 94c4c74e7..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint128_t x24 = (((uint128_t)x5 * x22) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + (((uint128_t)x13 * x17) + ((uint128_t)x12 * x15))))));
- uint128_t x25 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + (((uint128_t)x9 * x19) + ((0x2 * ((uint128_t)x11 * x17)) + ((uint128_t)x13 * x15))))) + (0x13 * (0x2 * ((uint128_t)x12 * x22))));
- uint128_t x26 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + ((uint128_t)x11 * x15)))) + (0x13 * (((uint128_t)x13 * x22) + ((uint128_t)x12 * x23))));
- uint128_t x27 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((uint128_t)x9 * x15))) + (0x13 * ((0x2 * ((uint128_t)x11 * x22)) + (((uint128_t)x13 * x23) + (0x2 * ((uint128_t)x12 * x21))))));
- uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (0x13 * (((uint128_t)x9 * x22) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x12 * x19))))));
- uint128_t x29 = (((uint128_t)x5 * x15) + (0x13 * ((0x2 * ((uint128_t)x7 * x22)) + (((uint128_t)x9 * x23) + ((0x2 * ((uint128_t)x11 * x21)) + (((uint128_t)x13 * x19) + (0x2 * ((uint128_t)x12 * x17))))))));
- uint64_t x30 = (uint64_t) (x29 >> 0x31);
- uint64_t x31 = ((uint64_t)x29 & 0x1ffffffffffff);
- uint128_t x32 = (x30 + x28);
- uint64_t x33 = (uint64_t) (x32 >> 0x30);
- uint64_t x34 = ((uint64_t)x32 & 0xffffffffffff);
- uint128_t x35 = (x33 + x27);
- uint64_t x36 = (uint64_t) (x35 >> 0x31);
- uint64_t x37 = ((uint64_t)x35 & 0x1ffffffffffff);
- uint128_t x38 = (x36 + x26);
- uint64_t x39 = (uint64_t) (x38 >> 0x30);
- uint64_t x40 = ((uint64_t)x38 & 0xffffffffffff);
- uint128_t x41 = (x39 + x25);
- uint64_t x42 = (uint64_t) (x41 >> 0x31);
- uint64_t x43 = ((uint64_t)x41 & 0x1ffffffffffff);
- uint128_t x44 = (x42 + x24);
- uint64_t x45 = (uint64_t) (x44 >> 0x30);
- uint64_t x46 = ((uint64_t)x44 & 0xffffffffffff);
- uint64_t x47 = (x31 + (0x13 * x45));
- uint64_t x48 = (x47 >> 0x31);
- uint64_t x49 = (x47 & 0x1ffffffffffff);
- uint64_t x50 = (x48 + x34);
- uint64_t x51 = (x50 >> 0x30);
- uint64_t x52 = (x50 & 0xffffffffffff);
- return (Return x46, Return x43, Return x40, (x51 + x37), Return x52, Return x49))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e291m19_6limbs/femulDisplay.v b/src/Specific/solinas64_2e291m19_6limbs/femulDisplay.v
deleted file mode 100644
index 88f018fc9..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e291m19_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e291m19_6limbs/fesquare.c b/src/Specific/solinas64_2e291m19_6limbs/fesquare.c
deleted file mode 100644
index 755f6f939..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/fesquare.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void fesquare(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x11 = (((uint128_t)x2 * x9) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x9 * x2))))));
- { uint128_t x12 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x13 * (0x2 * ((uint128_t)x9 * x9))));
- { uint128_t x13 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x13 * (((uint128_t)x10 * x9) + ((uint128_t)x9 * x10))));
- { uint128_t x14 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x13 * ((0x2 * ((uint128_t)x8 * x9)) + (((uint128_t)x10 * x10) + (0x2 * ((uint128_t)x9 * x8))))));
- { uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x13 * (((uint128_t)x6 * x9) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((uint128_t)x9 * x6))))));
- { uint128_t x16 = (((uint128_t)x2 * x2) + (0x13 * ((0x2 * ((uint128_t)x4 * x9)) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (0x2 * ((uint128_t)x9 * x4))))))));
- { uint64_t x17 = (uint64_t) (x16 >> 0x31);
- { uint64_t x18 = ((uint64_t)x16 & 0x1ffffffffffff);
- { uint128_t x19 = (x17 + x15);
- { uint64_t x20 = (uint64_t) (x19 >> 0x30);
- { uint64_t x21 = ((uint64_t)x19 & 0xffffffffffff);
- { uint128_t x22 = (x20 + x14);
- { uint64_t x23 = (uint64_t) (x22 >> 0x31);
- { uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffffff);
- { uint128_t x25 = (x23 + x13);
- { uint64_t x26 = (uint64_t) (x25 >> 0x30);
- { uint64_t x27 = ((uint64_t)x25 & 0xffffffffffff);
- { uint128_t x28 = (x26 + x12);
- { uint64_t x29 = (uint64_t) (x28 >> 0x31);
- { uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffffff);
- { uint128_t x31 = (x29 + x11);
- { uint64_t x32 = (uint64_t) (x31 >> 0x30);
- { uint64_t x33 = ((uint64_t)x31 & 0xffffffffffff);
- { uint64_t x34 = (x18 + (0x13 * x32));
- { uint64_t x35 = (x34 >> 0x31);
- { uint64_t x36 = (x34 & 0x1ffffffffffff);
- { uint64_t x37 = (x35 + x21);
- { uint64_t x38 = (x37 >> 0x30);
- { uint64_t x39 = (x37 & 0xffffffffffff);
- out[0] = x36;
- out[1] = x39;
- out[2] = (x38 + x24);
- out[3] = x27;
- out[4] = x30;
- out[5] = x33;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e291m19_6limbs/fesquare.v b/src/Specific/solinas64_2e291m19_6limbs/fesquare.v
deleted file mode 100644
index b3e55b4fa..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e291m19_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/solinas64_2e291m19_6limbs/fesquareDisplay.log b/src/Specific/solinas64_2e291m19_6limbs/fesquareDisplay.log
deleted file mode 100644
index 7226ad189..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint128_t x11 = (((uint128_t)x2 * x9) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x9 * x2))))));
- uint128_t x12 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x13 * (0x2 * ((uint128_t)x9 * x9))));
- uint128_t x13 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x13 * (((uint128_t)x10 * x9) + ((uint128_t)x9 * x10))));
- uint128_t x14 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x13 * ((0x2 * ((uint128_t)x8 * x9)) + (((uint128_t)x10 * x10) + (0x2 * ((uint128_t)x9 * x8))))));
- uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x13 * (((uint128_t)x6 * x9) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((uint128_t)x9 * x6))))));
- uint128_t x16 = (((uint128_t)x2 * x2) + (0x13 * ((0x2 * ((uint128_t)x4 * x9)) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (0x2 * ((uint128_t)x9 * x4))))))));
- uint64_t x17 = (uint64_t) (x16 >> 0x31);
- uint64_t x18 = ((uint64_t)x16 & 0x1ffffffffffff);
- uint128_t x19 = (x17 + x15);
- uint64_t x20 = (uint64_t) (x19 >> 0x30);
- uint64_t x21 = ((uint64_t)x19 & 0xffffffffffff);
- uint128_t x22 = (x20 + x14);
- uint64_t x23 = (uint64_t) (x22 >> 0x31);
- uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffffff);
- uint128_t x25 = (x23 + x13);
- uint64_t x26 = (uint64_t) (x25 >> 0x30);
- uint64_t x27 = ((uint64_t)x25 & 0xffffffffffff);
- uint128_t x28 = (x26 + x12);
- uint64_t x29 = (uint64_t) (x28 >> 0x31);
- uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffffff);
- uint128_t x31 = (x29 + x11);
- uint64_t x32 = (uint64_t) (x31 >> 0x30);
- uint64_t x33 = ((uint64_t)x31 & 0xffffffffffff);
- uint64_t x34 = (x18 + (0x13 * x32));
- uint64_t x35 = (x34 >> 0x31);
- uint64_t x36 = (x34 & 0x1ffffffffffff);
- uint64_t x37 = (x35 + x21);
- uint64_t x38 = (x37 >> 0x30);
- uint64_t x39 = (x37 & 0xffffffffffff);
- return (Return x33, Return x30, Return x27, (x38 + x24), Return x39, Return x36))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e291m19_6limbs/fesquareDisplay.v b/src/Specific/solinas64_2e291m19_6limbs/fesquareDisplay.v
deleted file mode 100644
index ee23d8947..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e291m19_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e291m19_6limbs/fesub.c b/src/Specific/solinas64_2e291m19_6limbs/fesub.c
deleted file mode 100644
index 2d5a7a35d..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/fesub.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- out[0] = ((0x3ffffffffffda + x5) - x15);
- out[1] = ((0x1fffffffffffe + x7) - x17);
- out[2] = ((0x3fffffffffffe + x9) - x19);
- out[3] = ((0x1fffffffffffe + x11) - x21);
- out[4] = ((0x3fffffffffffe + x13) - x23);
- out[5] = ((0x1fffffffffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e291m19_6limbs/fesub.v b/src/Specific/solinas64_2e291m19_6limbs/fesub.v
deleted file mode 100644
index b9cc8e814..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e291m19_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/solinas64_2e291m19_6limbs/fesubDisplay.log b/src/Specific/solinas64_2e291m19_6limbs/fesubDisplay.log
deleted file mode 100644
index 44c5ff62b..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- (((0x1fffffffffffe + x12) - x22), ((0x3fffffffffffe + x13) - x23), ((0x1fffffffffffe + x11) - x21), ((0x3fffffffffffe + x9) - x19), ((0x1fffffffffffe + x7) - x17), ((0x3ffffffffffda + x5) - x15)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e291m19_6limbs/fesubDisplay.v b/src/Specific/solinas64_2e291m19_6limbs/fesubDisplay.v
deleted file mode 100644
index a19f9552b..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e291m19_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e291m19_6limbs/freeze.c b/src/Specific/solinas64_2e291m19_6limbs/freeze.c
deleted file mode 100644
index 7abb503f8..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/freeze.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void freeze(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffffffffed);
- { uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0xffffffffffff);
- { uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0x1ffffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0xffffffffffff);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0x1ffffffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0xffffffffffff);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0x1ffffffffffed);
- { uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint64_t x34 = (x29 & 0xffffffffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- { uint64_t x38 = (x29 & 0x1ffffffffffff);
- { uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- { uint64_t x42 = (x29 & 0xffffffffffff);
- { uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- { uint64_t x46 = (x29 & 0x1ffffffffffff);
- { uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- { uint64_t x50 = (x29 & 0xffffffffffff);
- { uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (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/solinas64_2e291m19_6limbs/freeze.v b/src/Specific/solinas64_2e291m19_6limbs/freeze.v
deleted file mode 100644
index 1ba486be3..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e291m19_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/solinas64_2e291m19_6limbs/freezeDisplay.log b/src/Specific/solinas64_2e291m19_6limbs/freezeDisplay.log
deleted file mode 100644
index e4eb25461..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/freezeDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffffffffed);
- uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0xffffffffffff);
- uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0x1ffffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0xffffffffffff);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0x1ffffffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0xffffffffffff);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0x1ffffffffffed);
- uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint64_t x34 = (x29 & 0xffffffffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- uint64_t x38 = (x29 & 0x1ffffffffffff);
- uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- uint64_t x42 = (x29 & 0xffffffffffff);
- uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- uint64_t x46 = (x29 & 0x1ffffffffffff);
- uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- uint64_t x50 = (x29 & 0xffffffffffff);
- uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x49, Return x27, Return x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e291m19_6limbs/freezeDisplay.v b/src/Specific/solinas64_2e291m19_6limbs/freezeDisplay.v
deleted file mode 100644
index e318fb35e..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e291m19_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e291m19_6limbs/py_interpreter.sh b/src/Specific/solinas64_2e291m19_6limbs/py_interpreter.sh
deleted file mode 100755
index 3ac4804d5..000000000
--- a/src/Specific/solinas64_2e291m19_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**291 - 19' -Dmodulus_bytes='48.5' -Da24='121665'
diff --git a/src/Specific/solinas64_2e321m9_6limbs/CurveParameters.v b/src/Specific/solinas64_2e321m9_6limbs/CurveParameters.v
deleted file mode 100644
index 4b7c0edf8..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^321 - 9
-Base: 53.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 53 + 1/2;
- bitwidth := 64;
- s := 2^321;
- c := [(1, 9)];
- 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/solinas64_2e321m9_6limbs/Synthesis.v b/src/Specific/solinas64_2e321m9_6limbs/Synthesis.v
deleted file mode 100644
index 79251d829..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e321m9_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/solinas64_2e321m9_6limbs/compiler.sh b/src/Specific/solinas64_2e321m9_6limbs/compiler.sh
deleted file mode 100755
index 4d774aba1..000000000
--- a/src/Specific/solinas64_2e321m9_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{54,53,54,53,54,53}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<321) - 9' "$@"
diff --git a/src/Specific/solinas64_2e321m9_6limbs/compilerxx.sh b/src/Specific/solinas64_2e321m9_6limbs/compilerxx.sh
deleted file mode 100755
index df5e6b926..000000000
--- a/src/Specific/solinas64_2e321m9_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{54,53,54,53,54,53}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<321) - 9' "$@"
diff --git a/src/Specific/solinas64_2e321m9_6limbs/feadd.c b/src/Specific/solinas64_2e321m9_6limbs/feadd.c
deleted file mode 100644
index 4a6bfb999..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/feadd.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_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/solinas64_2e321m9_6limbs/feadd.v b/src/Specific/solinas64_2e321m9_6limbs/feadd.v
deleted file mode 100644
index 54473dd0e..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e321m9_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/solinas64_2e321m9_6limbs/feaddDisplay.log b/src/Specific/solinas64_2e321m9_6limbs/feaddDisplay.log
deleted file mode 100644
index e32995a81..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-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
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e321m9_6limbs/feaddDisplay.v b/src/Specific/solinas64_2e321m9_6limbs/feaddDisplay.v
deleted file mode 100644
index dff1b68d7..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e321m9_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e321m9_6limbs/fecarry.v b/src/Specific/solinas64_2e321m9_6limbs/fecarry.v
deleted file mode 100644
index 3bf2cbca1..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e321m9_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/solinas64_2e321m9_6limbs/fecarryDisplay.v b/src/Specific/solinas64_2e321m9_6limbs/fecarryDisplay.v
deleted file mode 100644
index 170226bac..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e321m9_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e321m9_6limbs/femul.c b/src/Specific/solinas64_2e321m9_6limbs/femul.c
deleted file mode 100644
index 688d2ca13..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/femul.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint128_t x24 = (((uint128_t)x5 * x22) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + (((uint128_t)x13 * x17) + ((uint128_t)x12 * x15))))));
- { uint128_t x25 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + (((uint128_t)x9 * x19) + ((0x2 * ((uint128_t)x11 * x17)) + ((uint128_t)x13 * x15))))) + (0x9 * (0x2 * ((uint128_t)x12 * x22))));
- { uint128_t x26 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + ((uint128_t)x11 * x15)))) + (0x9 * (((uint128_t)x13 * x22) + ((uint128_t)x12 * x23))));
- { uint128_t x27 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((uint128_t)x9 * x15))) + (0x9 * ((0x2 * ((uint128_t)x11 * x22)) + (((uint128_t)x13 * x23) + (0x2 * ((uint128_t)x12 * x21))))));
- { uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (0x9 * (((uint128_t)x9 * x22) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x12 * x19))))));
- { uint128_t x29 = (((uint128_t)x5 * x15) + (0x9 * ((0x2 * ((uint128_t)x7 * x22)) + (((uint128_t)x9 * x23) + ((0x2 * ((uint128_t)x11 * x21)) + (((uint128_t)x13 * x19) + (0x2 * ((uint128_t)x12 * x17))))))));
- { uint64_t x30 = (uint64_t) (x29 >> 0x36);
- { uint64_t x31 = ((uint64_t)x29 & 0x3fffffffffffff);
- { uint128_t x32 = (x30 + x28);
- { uint64_t x33 = (uint64_t) (x32 >> 0x35);
- { uint64_t x34 = ((uint64_t)x32 & 0x1fffffffffffff);
- { uint128_t x35 = (x33 + x27);
- { uint64_t x36 = (uint64_t) (x35 >> 0x36);
- { uint64_t x37 = ((uint64_t)x35 & 0x3fffffffffffff);
- { uint128_t x38 = (x36 + x26);
- { uint64_t x39 = (uint64_t) (x38 >> 0x35);
- { uint64_t x40 = ((uint64_t)x38 & 0x1fffffffffffff);
- { uint128_t x41 = (x39 + x25);
- { uint64_t x42 = (uint64_t) (x41 >> 0x36);
- { uint64_t x43 = ((uint64_t)x41 & 0x3fffffffffffff);
- { uint128_t x44 = (x42 + x24);
- { uint64_t x45 = (uint64_t) (x44 >> 0x35);
- { uint64_t x46 = ((uint64_t)x44 & 0x1fffffffffffff);
- { uint64_t x47 = (x31 + (0x9 * x45));
- { uint64_t x48 = (x47 >> 0x36);
- { uint64_t x49 = (x47 & 0x3fffffffffffff);
- { uint64_t x50 = (x48 + x34);
- { uint64_t x51 = (x50 >> 0x35);
- { uint64_t x52 = (x50 & 0x1fffffffffffff);
- out[0] = x49;
- out[1] = x52;
- out[2] = (x51 + x37);
- out[3] = x40;
- out[4] = x43;
- out[5] = x46;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e321m9_6limbs/femul.v b/src/Specific/solinas64_2e321m9_6limbs/femul.v
deleted file mode 100644
index 76ffb701a..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e321m9_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/solinas64_2e321m9_6limbs/femulDisplay.log b/src/Specific/solinas64_2e321m9_6limbs/femulDisplay.log
deleted file mode 100644
index a5811c0f9..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint128_t x24 = (((uint128_t)x5 * x22) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + (((uint128_t)x13 * x17) + ((uint128_t)x12 * x15))))));
- uint128_t x25 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + (((uint128_t)x9 * x19) + ((0x2 * ((uint128_t)x11 * x17)) + ((uint128_t)x13 * x15))))) + (0x9 * (0x2 * ((uint128_t)x12 * x22))));
- uint128_t x26 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + ((uint128_t)x11 * x15)))) + (0x9 * (((uint128_t)x13 * x22) + ((uint128_t)x12 * x23))));
- uint128_t x27 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((uint128_t)x9 * x15))) + (0x9 * ((0x2 * ((uint128_t)x11 * x22)) + (((uint128_t)x13 * x23) + (0x2 * ((uint128_t)x12 * x21))))));
- uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (0x9 * (((uint128_t)x9 * x22) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x12 * x19))))));
- uint128_t x29 = (((uint128_t)x5 * x15) + (0x9 * ((0x2 * ((uint128_t)x7 * x22)) + (((uint128_t)x9 * x23) + ((0x2 * ((uint128_t)x11 * x21)) + (((uint128_t)x13 * x19) + (0x2 * ((uint128_t)x12 * x17))))))));
- uint64_t x30 = (uint64_t) (x29 >> 0x36);
- uint64_t x31 = ((uint64_t)x29 & 0x3fffffffffffff);
- uint128_t x32 = (x30 + x28);
- uint64_t x33 = (uint64_t) (x32 >> 0x35);
- uint64_t x34 = ((uint64_t)x32 & 0x1fffffffffffff);
- uint128_t x35 = (x33 + x27);
- uint64_t x36 = (uint64_t) (x35 >> 0x36);
- uint64_t x37 = ((uint64_t)x35 & 0x3fffffffffffff);
- uint128_t x38 = (x36 + x26);
- uint64_t x39 = (uint64_t) (x38 >> 0x35);
- uint64_t x40 = ((uint64_t)x38 & 0x1fffffffffffff);
- uint128_t x41 = (x39 + x25);
- uint64_t x42 = (uint64_t) (x41 >> 0x36);
- uint64_t x43 = ((uint64_t)x41 & 0x3fffffffffffff);
- uint128_t x44 = (x42 + x24);
- uint64_t x45 = (uint64_t) (x44 >> 0x35);
- uint64_t x46 = ((uint64_t)x44 & 0x1fffffffffffff);
- uint64_t x47 = (x31 + (0x9 * x45));
- uint64_t x48 = (x47 >> 0x36);
- uint64_t x49 = (x47 & 0x3fffffffffffff);
- uint64_t x50 = (x48 + x34);
- uint64_t x51 = (x50 >> 0x35);
- uint64_t x52 = (x50 & 0x1fffffffffffff);
- return (Return x46, Return x43, Return x40, (x51 + x37), Return x52, Return x49))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e321m9_6limbs/femulDisplay.v b/src/Specific/solinas64_2e321m9_6limbs/femulDisplay.v
deleted file mode 100644
index f1a4a1b94..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e321m9_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e321m9_6limbs/fesquare.c b/src/Specific/solinas64_2e321m9_6limbs/fesquare.c
deleted file mode 100644
index b2b14b5c2..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/fesquare.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void fesquare(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x11 = (((uint128_t)x2 * x9) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x9 * x2))))));
- { uint128_t x12 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x9 * (0x2 * ((uint128_t)x9 * x9))));
- { uint128_t x13 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x9 * (((uint128_t)x10 * x9) + ((uint128_t)x9 * x10))));
- { uint128_t x14 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x9 * ((0x2 * ((uint128_t)x8 * x9)) + (((uint128_t)x10 * x10) + (0x2 * ((uint128_t)x9 * x8))))));
- { uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x9 * (((uint128_t)x6 * x9) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((uint128_t)x9 * x6))))));
- { uint128_t x16 = (((uint128_t)x2 * x2) + (0x9 * ((0x2 * ((uint128_t)x4 * x9)) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (0x2 * ((uint128_t)x9 * x4))))))));
- { uint64_t x17 = (uint64_t) (x16 >> 0x36);
- { uint64_t x18 = ((uint64_t)x16 & 0x3fffffffffffff);
- { uint128_t x19 = (x17 + x15);
- { uint64_t x20 = (uint64_t) (x19 >> 0x35);
- { uint64_t x21 = ((uint64_t)x19 & 0x1fffffffffffff);
- { uint128_t x22 = (x20 + x14);
- { uint64_t x23 = (uint64_t) (x22 >> 0x36);
- { uint64_t x24 = ((uint64_t)x22 & 0x3fffffffffffff);
- { uint128_t x25 = (x23 + x13);
- { uint64_t x26 = (uint64_t) (x25 >> 0x35);
- { uint64_t x27 = ((uint64_t)x25 & 0x1fffffffffffff);
- { uint128_t x28 = (x26 + x12);
- { uint64_t x29 = (uint64_t) (x28 >> 0x36);
- { uint64_t x30 = ((uint64_t)x28 & 0x3fffffffffffff);
- { uint128_t x31 = (x29 + x11);
- { uint64_t x32 = (uint64_t) (x31 >> 0x35);
- { uint64_t x33 = ((uint64_t)x31 & 0x1fffffffffffff);
- { uint64_t x34 = (x18 + (0x9 * x32));
- { uint64_t x35 = (x34 >> 0x36);
- { uint64_t x36 = (x34 & 0x3fffffffffffff);
- { uint64_t x37 = (x35 + x21);
- { uint64_t x38 = (x37 >> 0x35);
- { uint64_t x39 = (x37 & 0x1fffffffffffff);
- out[0] = x36;
- out[1] = x39;
- out[2] = (x38 + x24);
- out[3] = x27;
- out[4] = x30;
- out[5] = x33;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e321m9_6limbs/fesquare.v b/src/Specific/solinas64_2e321m9_6limbs/fesquare.v
deleted file mode 100644
index 48fcc7846..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e321m9_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/solinas64_2e321m9_6limbs/fesquareDisplay.log b/src/Specific/solinas64_2e321m9_6limbs/fesquareDisplay.log
deleted file mode 100644
index d28671d0a..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint128_t x11 = (((uint128_t)x2 * x9) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x9 * x2))))));
- uint128_t x12 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x9 * (0x2 * ((uint128_t)x9 * x9))));
- uint128_t x13 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x9 * (((uint128_t)x10 * x9) + ((uint128_t)x9 * x10))));
- uint128_t x14 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x9 * ((0x2 * ((uint128_t)x8 * x9)) + (((uint128_t)x10 * x10) + (0x2 * ((uint128_t)x9 * x8))))));
- uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x9 * (((uint128_t)x6 * x9) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((uint128_t)x9 * x6))))));
- uint128_t x16 = (((uint128_t)x2 * x2) + (0x9 * ((0x2 * ((uint128_t)x4 * x9)) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (0x2 * ((uint128_t)x9 * x4))))))));
- uint64_t x17 = (uint64_t) (x16 >> 0x36);
- uint64_t x18 = ((uint64_t)x16 & 0x3fffffffffffff);
- uint128_t x19 = (x17 + x15);
- uint64_t x20 = (uint64_t) (x19 >> 0x35);
- uint64_t x21 = ((uint64_t)x19 & 0x1fffffffffffff);
- uint128_t x22 = (x20 + x14);
- uint64_t x23 = (uint64_t) (x22 >> 0x36);
- uint64_t x24 = ((uint64_t)x22 & 0x3fffffffffffff);
- uint128_t x25 = (x23 + x13);
- uint64_t x26 = (uint64_t) (x25 >> 0x35);
- uint64_t x27 = ((uint64_t)x25 & 0x1fffffffffffff);
- uint128_t x28 = (x26 + x12);
- uint64_t x29 = (uint64_t) (x28 >> 0x36);
- uint64_t x30 = ((uint64_t)x28 & 0x3fffffffffffff);
- uint128_t x31 = (x29 + x11);
- uint64_t x32 = (uint64_t) (x31 >> 0x35);
- uint64_t x33 = ((uint64_t)x31 & 0x1fffffffffffff);
- uint64_t x34 = (x18 + (0x9 * x32));
- uint64_t x35 = (x34 >> 0x36);
- uint64_t x36 = (x34 & 0x3fffffffffffff);
- uint64_t x37 = (x35 + x21);
- uint64_t x38 = (x37 >> 0x35);
- uint64_t x39 = (x37 & 0x1fffffffffffff);
- return (Return x33, Return x30, Return x27, (x38 + x24), Return x39, Return x36))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e321m9_6limbs/fesquareDisplay.v b/src/Specific/solinas64_2e321m9_6limbs/fesquareDisplay.v
deleted file mode 100644
index fe859daf6..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e321m9_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e321m9_6limbs/fesub.c b/src/Specific/solinas64_2e321m9_6limbs/fesub.c
deleted file mode 100644
index 8e1ad691e..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/fesub.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- out[0] = ((0x7fffffffffffee + x5) - x15);
- out[1] = ((0x3ffffffffffffe + x7) - x17);
- out[2] = ((0x7ffffffffffffe + x9) - x19);
- out[3] = ((0x3ffffffffffffe + x11) - x21);
- out[4] = ((0x7ffffffffffffe + x13) - x23);
- out[5] = ((0x3ffffffffffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e321m9_6limbs/fesub.v b/src/Specific/solinas64_2e321m9_6limbs/fesub.v
deleted file mode 100644
index 4bfda800f..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e321m9_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/solinas64_2e321m9_6limbs/fesubDisplay.log b/src/Specific/solinas64_2e321m9_6limbs/fesubDisplay.log
deleted file mode 100644
index 4d9559435..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- (((0x3ffffffffffffe + x12) - x22), ((0x7ffffffffffffe + x13) - x23), ((0x3ffffffffffffe + x11) - x21), ((0x7ffffffffffffe + x9) - x19), ((0x3ffffffffffffe + x7) - x17), ((0x7fffffffffffee + x5) - x15)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e321m9_6limbs/fesubDisplay.v b/src/Specific/solinas64_2e321m9_6limbs/fesubDisplay.v
deleted file mode 100644
index fe7e1f4b6..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e321m9_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e321m9_6limbs/freeze.c b/src/Specific/solinas64_2e321m9_6limbs/freeze.c
deleted file mode 100644
index 73c7dc587..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/freeze.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void freeze(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffffff7);
- { uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0x1fffffffffffff);
- { uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0x3fffffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0x1fffffffffffff);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0x3fffffffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0x1fffffffffffff);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0x3ffffffffffff7);
- { uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint64_t x34 = (x29 & 0x1fffffffffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- { uint64_t x38 = (x29 & 0x3fffffffffffff);
- { uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- { uint64_t x42 = (x29 & 0x1fffffffffffff);
- { uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- { uint64_t x46 = (x29 & 0x3fffffffffffff);
- { uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- { uint64_t x50 = (x29 & 0x1fffffffffffff);
- { uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (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/solinas64_2e321m9_6limbs/freeze.v b/src/Specific/solinas64_2e321m9_6limbs/freeze.v
deleted file mode 100644
index 1231207a8..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e321m9_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/solinas64_2e321m9_6limbs/freezeDisplay.log b/src/Specific/solinas64_2e321m9_6limbs/freezeDisplay.log
deleted file mode 100644
index a296ea7ed..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/freezeDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffffff7);
- uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0x1fffffffffffff);
- uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0x3fffffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0x1fffffffffffff);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0x3fffffffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0x1fffffffffffff);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0x3ffffffffffff7);
- uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint64_t x34 = (x29 & 0x1fffffffffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- uint64_t x38 = (x29 & 0x3fffffffffffff);
- uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- uint64_t x42 = (x29 & 0x1fffffffffffff);
- uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- uint64_t x46 = (x29 & 0x3fffffffffffff);
- uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- uint64_t x50 = (x29 & 0x1fffffffffffff);
- uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x49, Return x27, Return x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e321m9_6limbs/freezeDisplay.v b/src/Specific/solinas64_2e321m9_6limbs/freezeDisplay.v
deleted file mode 100644
index 38c1b0b85..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e321m9_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e321m9_6limbs/py_interpreter.sh b/src/Specific/solinas64_2e321m9_6limbs/py_interpreter.sh
deleted file mode 100755
index 5fcc08b1a..000000000
--- a/src/Specific/solinas64_2e321m9_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**321 - 9' -Dmodulus_bytes='53.5' -Da24='121665'
diff --git a/src/Specific/solinas64_2e321m9_7limbs/CurveParameters.v b/src/Specific/solinas64_2e321m9_7limbs/CurveParameters.v
deleted file mode 100644
index 4be0baccc..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^321 - 9
-Base: 45 + 6/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 45 + 6/7;
- bitwidth := 64;
- s := 2^321;
- c := [(1, 9)];
- carry_chains := Some [seq 0 (pred 7); [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/solinas64_2e321m9_7limbs/Synthesis.v b/src/Specific/solinas64_2e321m9_7limbs/Synthesis.v
deleted file mode 100644
index 5ccd10ee8..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e321m9_7limbs.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/solinas64_2e321m9_7limbs/compiler.sh b/src/Specific/solinas64_2e321m9_7limbs/compiler.sh
deleted file mode 100755
index 855a13001..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{46,46,46,46,46,46,45}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<321) - 9' "$@"
diff --git a/src/Specific/solinas64_2e321m9_7limbs/compilerxx.sh b/src/Specific/solinas64_2e321m9_7limbs/compilerxx.sh
deleted file mode 100755
index 1827e2c49..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{46,46,46,46,46,46,45}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf7}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<321) - 9' "$@"
diff --git a/src/Specific/solinas64_2e321m9_7limbs/feadd.c b/src/Specific/solinas64_2e321m9_7limbs/feadd.c
deleted file mode 100644
index 9acf97578..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e321m9_7limbs/feadd.v b/src/Specific/solinas64_2e321m9_7limbs/feadd.v
deleted file mode 100644
index a84ecadaf..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e321m9_7limbs.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/solinas64_2e321m9_7limbs/feaddDisplay.log b/src/Specific/solinas64_2e321m9_7limbs/feaddDisplay.log
deleted file mode 100644
index 6320440fc..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e321m9_7limbs/feaddDisplay.v b/src/Specific/solinas64_2e321m9_7limbs/feaddDisplay.v
deleted file mode 100644
index 477f920ee..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e321m9_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e321m9_7limbs/fecarry.v b/src/Specific/solinas64_2e321m9_7limbs/fecarry.v
deleted file mode 100644
index 1f5be6444..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e321m9_7limbs.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/solinas64_2e321m9_7limbs/fecarryDisplay.v b/src/Specific/solinas64_2e321m9_7limbs/fecarryDisplay.v
deleted file mode 100644
index 1f559c1ad..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e321m9_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e321m9_7limbs/femul.c b/src/Specific/solinas64_2e321m9_7limbs/femul.c
deleted file mode 100644
index 5ef028255..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- { uint128_t x28 = (((uint128_t)x5 * x26) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + (((uint128_t)x15 * x19) + ((uint128_t)x14 * x17)))))));
- { uint128_t x29 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + (((uint128_t)x13 * x19) + ((uint128_t)x15 * x17)))))) + (0x9 * (0x2 * ((uint128_t)x14 * x26))));
- { uint128_t x30 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + ((uint128_t)x13 * x17))))) + (0x9 * ((0x2 * ((uint128_t)x15 * x26)) + (0x2 * ((uint128_t)x14 * x27)))));
- { uint128_t x31 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + ((uint128_t)x11 * x17)))) + (0x9 * ((0x2 * ((uint128_t)x13 * x26)) + ((0x2 * ((uint128_t)x15 * x27)) + (0x2 * ((uint128_t)x14 * x25))))));
- { uint128_t x32 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + ((uint128_t)x9 * x17))) + (0x9 * ((0x2 * ((uint128_t)x11 * x26)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + (0x2 * ((uint128_t)x14 * x23)))))));
- { uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0x9 * ((0x2 * ((uint128_t)x9 * x26)) + ((0x2 * ((uint128_t)x11 * x27)) + ((0x2 * ((uint128_t)x13 * x25)) + ((0x2 * ((uint128_t)x15 * x23)) + (0x2 * ((uint128_t)x14 * x21))))))));
- { uint128_t x34 = (((uint128_t)x5 * x17) + (0x9 * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19)))))))));
- { uint64_t x35 = (uint64_t) (x34 >> 0x2e);
- { uint64_t x36 = ((uint64_t)x34 & 0x3fffffffffff);
- { uint128_t x37 = (x35 + x33);
- { uint64_t x38 = (uint64_t) (x37 >> 0x2e);
- { uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffff);
- { uint128_t x40 = (x38 + x32);
- { uint64_t x41 = (uint64_t) (x40 >> 0x2e);
- { uint64_t x42 = ((uint64_t)x40 & 0x3fffffffffff);
- { uint128_t x43 = (x41 + x31);
- { uint64_t x44 = (uint64_t) (x43 >> 0x2e);
- { uint64_t x45 = ((uint64_t)x43 & 0x3fffffffffff);
- { uint128_t x46 = (x44 + x30);
- { uint64_t x47 = (uint64_t) (x46 >> 0x2e);
- { uint64_t x48 = ((uint64_t)x46 & 0x3fffffffffff);
- { uint128_t x49 = (x47 + x29);
- { uint64_t x50 = (uint64_t) (x49 >> 0x2e);
- { uint64_t x51 = ((uint64_t)x49 & 0x3fffffffffff);
- { uint128_t x52 = (x50 + x28);
- { uint64_t x53 = (uint64_t) (x52 >> 0x2d);
- { uint64_t x54 = ((uint64_t)x52 & 0x1fffffffffff);
- { uint64_t x55 = (x36 + (0x9 * x53));
- { uint64_t x56 = (x55 >> 0x2e);
- { uint64_t x57 = (x55 & 0x3fffffffffff);
- { uint64_t x58 = (x56 + x39);
- { uint64_t x59 = (x58 >> 0x2e);
- { uint64_t x60 = (x58 & 0x3fffffffffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e321m9_7limbs/femul.v b/src/Specific/solinas64_2e321m9_7limbs/femul.v
deleted file mode 100644
index 1096e19ce..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e321m9_7limbs.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/solinas64_2e321m9_7limbs/femulDisplay.log b/src/Specific/solinas64_2e321m9_7limbs/femulDisplay.log
deleted file mode 100644
index 6098bf622..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint128_t x28 = (((uint128_t)x5 * x26) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + (((uint128_t)x15 * x19) + ((uint128_t)x14 * x17)))))));
- uint128_t x29 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + (((uint128_t)x13 * x19) + ((uint128_t)x15 * x17)))))) + (0x9 * (0x2 * ((uint128_t)x14 * x26))));
- uint128_t x30 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + ((uint128_t)x13 * x17))))) + (0x9 * ((0x2 * ((uint128_t)x15 * x26)) + (0x2 * ((uint128_t)x14 * x27)))));
- uint128_t x31 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + ((uint128_t)x11 * x17)))) + (0x9 * ((0x2 * ((uint128_t)x13 * x26)) + ((0x2 * ((uint128_t)x15 * x27)) + (0x2 * ((uint128_t)x14 * x25))))));
- uint128_t x32 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + ((uint128_t)x9 * x17))) + (0x9 * ((0x2 * ((uint128_t)x11 * x26)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + (0x2 * ((uint128_t)x14 * x23)))))));
- uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0x9 * ((0x2 * ((uint128_t)x9 * x26)) + ((0x2 * ((uint128_t)x11 * x27)) + ((0x2 * ((uint128_t)x13 * x25)) + ((0x2 * ((uint128_t)x15 * x23)) + (0x2 * ((uint128_t)x14 * x21))))))));
- uint128_t x34 = (((uint128_t)x5 * x17) + (0x9 * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19)))))))));
- uint64_t x35 = (uint64_t) (x34 >> 0x2e);
- uint64_t x36 = ((uint64_t)x34 & 0x3fffffffffff);
- uint128_t x37 = (x35 + x33);
- uint64_t x38 = (uint64_t) (x37 >> 0x2e);
- uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffff);
- uint128_t x40 = (x38 + x32);
- uint64_t x41 = (uint64_t) (x40 >> 0x2e);
- uint64_t x42 = ((uint64_t)x40 & 0x3fffffffffff);
- uint128_t x43 = (x41 + x31);
- uint64_t x44 = (uint64_t) (x43 >> 0x2e);
- uint64_t x45 = ((uint64_t)x43 & 0x3fffffffffff);
- uint128_t x46 = (x44 + x30);
- uint64_t x47 = (uint64_t) (x46 >> 0x2e);
- uint64_t x48 = ((uint64_t)x46 & 0x3fffffffffff);
- uint128_t x49 = (x47 + x29);
- uint64_t x50 = (uint64_t) (x49 >> 0x2e);
- uint64_t x51 = ((uint64_t)x49 & 0x3fffffffffff);
- uint128_t x52 = (x50 + x28);
- uint64_t x53 = (uint64_t) (x52 >> 0x2d);
- uint64_t x54 = ((uint64_t)x52 & 0x1fffffffffff);
- uint64_t x55 = (x36 + (0x9 * x53));
- uint64_t x56 = (x55 >> 0x2e);
- uint64_t x57 = (x55 & 0x3fffffffffff);
- uint64_t x58 = (x56 + x39);
- uint64_t x59 = (x58 >> 0x2e);
- uint64_t x60 = (x58 & 0x3fffffffffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e321m9_7limbs/femulDisplay.v b/src/Specific/solinas64_2e321m9_7limbs/femulDisplay.v
deleted file mode 100644
index 67c3386bf..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e321m9_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e321m9_7limbs/fesquare.c b/src/Specific/solinas64_2e321m9_7limbs/fesquare.c
deleted file mode 100644
index e4401d17d..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x13 = (((uint128_t)x2 * x11) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x11 * x2)))))));
- { uint128_t x14 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x9 * (0x2 * ((uint128_t)x11 * x11))));
- { uint128_t x15 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x9 * ((0x2 * ((uint128_t)x12 * x11)) + (0x2 * ((uint128_t)x11 * x12)))));
- { uint128_t x16 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x9 * ((0x2 * ((uint128_t)x10 * x11)) + ((0x2 * ((uint128_t)x12 * x12)) + (0x2 * ((uint128_t)x11 * x10))))));
- { uint128_t x17 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x9 * ((0x2 * ((uint128_t)x8 * x11)) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + (0x2 * ((uint128_t)x11 * x8)))))));
- { uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x9 * ((0x2 * ((uint128_t)x6 * x11)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + (0x2 * ((uint128_t)x11 * x6))))))));
- { uint128_t x19 = (((uint128_t)x2 * x2) + (0x9 * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4)))))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x2e);
- { uint64_t x21 = ((uint64_t)x19 & 0x3fffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x2e);
- { uint64_t x24 = ((uint64_t)x22 & 0x3fffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x2e);
- { uint64_t x27 = ((uint64_t)x25 & 0x3fffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x2e);
- { uint64_t x30 = ((uint64_t)x28 & 0x3fffffffffff);
- { uint128_t x31 = (x29 + x15);
- { uint64_t x32 = (uint64_t) (x31 >> 0x2e);
- { uint64_t x33 = ((uint64_t)x31 & 0x3fffffffffff);
- { uint128_t x34 = (x32 + x14);
- { uint64_t x35 = (uint64_t) (x34 >> 0x2e);
- { uint64_t x36 = ((uint64_t)x34 & 0x3fffffffffff);
- { uint128_t x37 = (x35 + x13);
- { uint64_t x38 = (uint64_t) (x37 >> 0x2d);
- { uint64_t x39 = ((uint64_t)x37 & 0x1fffffffffff);
- { uint64_t x40 = (x21 + (0x9 * x38));
- { uint64_t x41 = (x40 >> 0x2e);
- { uint64_t x42 = (x40 & 0x3fffffffffff);
- { uint64_t x43 = (x41 + x24);
- { uint64_t x44 = (x43 >> 0x2e);
- { uint64_t x45 = (x43 & 0x3fffffffffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e321m9_7limbs/fesquare.v b/src/Specific/solinas64_2e321m9_7limbs/fesquare.v
deleted file mode 100644
index aa89779e2..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e321m9_7limbs.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/solinas64_2e321m9_7limbs/fesquareDisplay.log b/src/Specific/solinas64_2e321m9_7limbs/fesquareDisplay.log
deleted file mode 100644
index b658c4ecb..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x13 = (((uint128_t)x2 * x11) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x11 * x2)))))));
- uint128_t x14 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x9 * (0x2 * ((uint128_t)x11 * x11))));
- uint128_t x15 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x9 * ((0x2 * ((uint128_t)x12 * x11)) + (0x2 * ((uint128_t)x11 * x12)))));
- uint128_t x16 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x9 * ((0x2 * ((uint128_t)x10 * x11)) + ((0x2 * ((uint128_t)x12 * x12)) + (0x2 * ((uint128_t)x11 * x10))))));
- uint128_t x17 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x9 * ((0x2 * ((uint128_t)x8 * x11)) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + (0x2 * ((uint128_t)x11 * x8)))))));
- uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x9 * ((0x2 * ((uint128_t)x6 * x11)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + (0x2 * ((uint128_t)x11 * x6))))))));
- uint128_t x19 = (((uint128_t)x2 * x2) + (0x9 * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4)))))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x2e);
- uint64_t x21 = ((uint64_t)x19 & 0x3fffffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x2e);
- uint64_t x24 = ((uint64_t)x22 & 0x3fffffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x2e);
- uint64_t x27 = ((uint64_t)x25 & 0x3fffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x2e);
- uint64_t x30 = ((uint64_t)x28 & 0x3fffffffffff);
- uint128_t x31 = (x29 + x15);
- uint64_t x32 = (uint64_t) (x31 >> 0x2e);
- uint64_t x33 = ((uint64_t)x31 & 0x3fffffffffff);
- uint128_t x34 = (x32 + x14);
- uint64_t x35 = (uint64_t) (x34 >> 0x2e);
- uint64_t x36 = ((uint64_t)x34 & 0x3fffffffffff);
- uint128_t x37 = (x35 + x13);
- uint64_t x38 = (uint64_t) (x37 >> 0x2d);
- uint64_t x39 = ((uint64_t)x37 & 0x1fffffffffff);
- uint64_t x40 = (x21 + (0x9 * x38));
- uint64_t x41 = (x40 >> 0x2e);
- uint64_t x42 = (x40 & 0x3fffffffffff);
- uint64_t x43 = (x41 + x24);
- uint64_t x44 = (x43 >> 0x2e);
- uint64_t x45 = (x43 & 0x3fffffffffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e321m9_7limbs/fesquareDisplay.v b/src/Specific/solinas64_2e321m9_7limbs/fesquareDisplay.v
deleted file mode 100644
index 9eceb7850..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e321m9_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e321m9_7limbs/fesub.c b/src/Specific/solinas64_2e321m9_7limbs/fesub.c
deleted file mode 100644
index 8e5f3926e..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = ((0x7fffffffffee + x5) - x17);
- out[1] = ((0x7ffffffffffe + x7) - x19);
- out[2] = ((0x7ffffffffffe + x9) - x21);
- out[3] = ((0x7ffffffffffe + x11) - x23);
- out[4] = ((0x7ffffffffffe + x13) - x25);
- out[5] = ((0x7ffffffffffe + x15) - x27);
- out[6] = ((0x3ffffffffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e321m9_7limbs/fesub.v b/src/Specific/solinas64_2e321m9_7limbs/fesub.v
deleted file mode 100644
index 55eb399e7..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e321m9_7limbs.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/solinas64_2e321m9_7limbs/fesubDisplay.log b/src/Specific/solinas64_2e321m9_7limbs/fesubDisplay.log
deleted file mode 100644
index 7be8b0496..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0x3ffffffffffe + x14) - x26), ((0x7ffffffffffe + x15) - x27), ((0x7ffffffffffe + x13) - x25), ((0x7ffffffffffe + x11) - x23), ((0x7ffffffffffe + x9) - x21), ((0x7ffffffffffe + x7) - x19), ((0x7fffffffffee + x5) - x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e321m9_7limbs/fesubDisplay.v b/src/Specific/solinas64_2e321m9_7limbs/fesubDisplay.v
deleted file mode 100644
index e0588703d..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e321m9_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e321m9_7limbs/freeze.c b/src/Specific/solinas64_2e321m9_7limbs/freeze.c
deleted file mode 100644
index d2d0770d1..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffff7);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0x3fffffffffff);
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0x3fffffffffff);
- { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0x3fffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0x3fffffffffff);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0x3fffffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0x1fffffffffff);
- { uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- { uint64_t x35 = (x34 & 0x3ffffffffff7);
- { uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint64_t x39 = (x34 & 0x3fffffffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint64_t x43 = (x34 & 0x3fffffffffff);
- { uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint64_t x47 = (x34 & 0x3fffffffffff);
- { uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint64_t x51 = (x34 & 0x3fffffffffff);
- { uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint64_t x55 = (x34 & 0x3fffffffffff);
- { uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint64_t x59 = (x34 & 0x1fffffffffff);
- { uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e321m9_7limbs/freeze.v b/src/Specific/solinas64_2e321m9_7limbs/freeze.v
deleted file mode 100644
index e4b9426f0..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e321m9_7limbs.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/solinas64_2e321m9_7limbs/freezeDisplay.log b/src/Specific/solinas64_2e321m9_7limbs/freezeDisplay.log
deleted file mode 100644
index a164d1c4d..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffff7);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0x3fffffffffff);
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0x3fffffffffff);
- uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0x3fffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0x3fffffffffff);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0x3fffffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0x1fffffffffff);
- uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- uint64_t x35 = (x34 & 0x3ffffffffff7);
- uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint64_t x39 = (x34 & 0x3fffffffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint64_t x43 = (x34 & 0x3fffffffffff);
- uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint64_t x47 = (x34 & 0x3fffffffffff);
- uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint64_t x51 = (x34 & 0x3fffffffffff);
- uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint64_t x55 = (x34 & 0x3fffffffffff);
- uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint64_t x59 = (x34 & 0x1fffffffffff);
- uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e321m9_7limbs/freezeDisplay.v b/src/Specific/solinas64_2e321m9_7limbs/freezeDisplay.v
deleted file mode 100644
index ad02b0983..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e321m9_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e321m9_7limbs/py_interpreter.sh b/src/Specific/solinas64_2e321m9_7limbs/py_interpreter.sh
deleted file mode 100755
index 4c2c5df50..000000000
--- a/src/Specific/solinas64_2e321m9_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**321 - 9' -Dmodulus_bytes='45 + 6/7' -Da24='121665'
diff --git a/src/Specific/solinas64_2e322m2e161m1_6limbs/CurveParameters.v b/src/Specific/solinas64_2e322m2e161m1_6limbs/CurveParameters.v
deleted file mode 100644
index db46572db..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^322 - 2^161 - 1
-Base: 53 + 2/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 53 + 2/3;
- bitwidth := 64;
- s := 2^322;
- c := [(1, 1); (2^161, 1)];
- carry_chains := Some [[2; 5]; [3; 0; 4; 1; 5; 2]; [3; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- 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/solinas64_2e322m2e161m1_6limbs/Synthesis.v b/src/Specific/solinas64_2e322m2e161m1_6limbs/Synthesis.v
deleted file mode 100644
index e7b428df6..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_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/solinas64_2e322m2e161m1_6limbs/compiler.sh b/src/Specific/solinas64_2e322m2e161m1_6limbs/compiler.sh
deleted file mode 100755
index 7a964077d..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{54,54,53,54,54,53}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' "$@"
diff --git a/src/Specific/solinas64_2e322m2e161m1_6limbs/compilerxx.sh b/src/Specific/solinas64_2e322m2e161m1_6limbs/compilerxx.sh
deleted file mode 100755
index b531f5da3..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{54,54,53,54,54,53}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' "$@"
diff --git a/src/Specific/solinas64_2e322m2e161m1_6limbs/feadd.c b/src/Specific/solinas64_2e322m2e161m1_6limbs/feadd.c
deleted file mode 100644
index 4a6bfb999..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/feadd.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_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/solinas64_2e322m2e161m1_6limbs/feadd.v b/src/Specific/solinas64_2e322m2e161m1_6limbs/feadd.v
deleted file mode 100644
index 13b1fd9ae..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_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/solinas64_2e322m2e161m1_6limbs/feaddDisplay.log b/src/Specific/solinas64_2e322m2e161m1_6limbs/feaddDisplay.log
deleted file mode 100644
index e32995a81..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-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
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e322m2e161m1_6limbs/feaddDisplay.v b/src/Specific/solinas64_2e322m2e161m1_6limbs/feaddDisplay.v
deleted file mode 100644
index a177173d1..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e322m2e161m1_6limbs/fecarry.v b/src/Specific/solinas64_2e322m2e161m1_6limbs/fecarry.v
deleted file mode 100644
index 68c0a0265..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_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/solinas64_2e322m2e161m1_6limbs/fecarryDisplay.v b/src/Specific/solinas64_2e322m2e161m1_6limbs/fecarryDisplay.v
deleted file mode 100644
index d80aa3b00..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e322m2e161m1_6limbs/femul.c b/src/Specific/solinas64_2e322m2e161m1_6limbs/femul.c
deleted file mode 100644
index a43f6ae3f..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/femul.c
+++ /dev/null
@@ -1,65 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint128_t x24 = ((0x2 * ((uint128_t)(x9 + x12) * (x19 + x22))) - (0x2 * ((uint128_t)x9 * x19)));
- { uint128_t x25 = (((0x2 * ((uint128_t)(x7 + x13) * (x19 + x22))) + (0x2 * ((uint128_t)(x9 + x12) * (x17 + x23)))) - ((0x2 * ((uint128_t)x7 * x19)) + (0x2 * ((uint128_t)x9 * x17))));
- { uint128_t x26 = ((((uint128_t)(x5 + x11) * (x19 + x22)) + (((uint128_t)(x7 + x13) * (x17 + x23)) + ((uint128_t)(x9 + x12) * (x15 + x21)))) - (((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + ((uint128_t)x9 * x15))));
- { uint128_t x27 = ((((uint128_t)(x5 + x11) * (x17 + x23)) + ((uint128_t)(x7 + x13) * (x15 + x21))) - (((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)));
- { uint128_t x28 = (((uint128_t)(x5 + x11) * (x15 + x21)) - ((uint128_t)x5 * x15));
- { uint128_t x29 = ((((0x2 * ((uint128_t)x9 * x19)) + (0x2 * ((uint128_t)x12 * x22))) + x27) + x24);
- { uint128_t x30 = (((((0x2 * ((uint128_t)x7 * x19)) + (0x2 * ((uint128_t)x9 * x17))) + ((0x2 * ((uint128_t)x13 * x22)) + (0x2 * ((uint128_t)x12 * x23)))) + x28) + x25);
- { uint128_t x31 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + ((uint128_t)x9 * x15))) + (((uint128_t)x11 * x22) + (((uint128_t)x13 * x23) + ((uint128_t)x12 * x21))));
- { uint128_t x32 = (((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (((uint128_t)x11 * x23) + ((uint128_t)x13 * x21))) + x24);
- { uint128_t x33 = ((((uint128_t)x5 * x15) + ((uint128_t)x11 * x21)) + x25);
- { uint64_t x34 = (uint64_t) (x31 >> 0x35);
- { uint64_t x35 = ((uint64_t)x31 & 0x1fffffffffffff);
- { uint64_t x36 = (uint64_t) (x26 >> 0x35);
- { uint64_t x37 = ((uint64_t)x26 & 0x1fffffffffffff);
- { uint128_t x38 = (((uint128_t)0x20000000000000 * x36) + x37);
- { uint64_t x39 = (uint64_t) (x38 >> 0x35);
- { uint64_t x40 = ((uint64_t)x38 & 0x1fffffffffffff);
- { uint128_t x41 = ((x34 + x30) + x39);
- { uint64_t x42 = (uint64_t) (x41 >> 0x36);
- { uint64_t x43 = ((uint64_t)x41 & 0x3fffffffffffff);
- { uint128_t x44 = (x33 + x39);
- { uint64_t x45 = (uint64_t) (x44 >> 0x36);
- { uint64_t x46 = ((uint64_t)x44 & 0x3fffffffffffff);
- { uint128_t x47 = (x42 + x29);
- { uint64_t x48 = (uint64_t) (x47 >> 0x36);
- { uint64_t x49 = ((uint64_t)x47 & 0x3fffffffffffff);
- { uint128_t x50 = (x45 + x32);
- { uint64_t x51 = (uint64_t) (x50 >> 0x36);
- { uint64_t x52 = ((uint64_t)x50 & 0x3fffffffffffff);
- { uint64_t x53 = (x48 + x40);
- { uint64_t x54 = (x53 >> 0x35);
- { uint64_t x55 = (x53 & 0x1fffffffffffff);
- { uint64_t x56 = (x51 + x35);
- { uint64_t x57 = (x56 >> 0x35);
- { uint64_t x58 = (x56 & 0x1fffffffffffff);
- { uint64_t x59 = ((0x20000000000000 * x54) + x55);
- { uint64_t x60 = (x59 >> 0x35);
- { uint64_t x61 = (x59 & 0x1fffffffffffff);
- { uint64_t x62 = ((x57 + x43) + x60);
- { uint64_t x63 = (x62 >> 0x36);
- { uint64_t x64 = (x62 & 0x3fffffffffffff);
- { uint64_t x65 = (x46 + x60);
- { uint64_t x66 = (x65 >> 0x36);
- { uint64_t x67 = (x65 & 0x3fffffffffffff);
- out[0] = x67;
- out[1] = (x66 + x52);
- out[2] = x58;
- out[3] = x64;
- out[4] = (x63 + x49);
- out[5] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e322m2e161m1_6limbs/femul.v b/src/Specific/solinas64_2e322m2e161m1_6limbs/femul.v
deleted file mode 100644
index e8cc40b2c..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_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/solinas64_2e322m2e161m1_6limbs/femulDisplay.log b/src/Specific/solinas64_2e322m2e161m1_6limbs/femulDisplay.log
deleted file mode 100644
index 70b6e2902..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,51 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint128_t x24 = ((0x2 * ((uint128_t)(x9 + x12) * (x19 + x22))) - (0x2 * ((uint128_t)x9 * x19)));
- uint128_t x25 = (((0x2 * ((uint128_t)(x7 + x13) * (x19 + x22))) + (0x2 * ((uint128_t)(x9 + x12) * (x17 + x23)))) - ((0x2 * ((uint128_t)x7 * x19)) + (0x2 * ((uint128_t)x9 * x17))));
- uint128_t x26 = ((((uint128_t)(x5 + x11) * (x19 + x22)) + (((uint128_t)(x7 + x13) * (x17 + x23)) + ((uint128_t)(x9 + x12) * (x15 + x21)))) - (((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + ((uint128_t)x9 * x15))));
- uint128_t x27 = ((((uint128_t)(x5 + x11) * (x17 + x23)) + ((uint128_t)(x7 + x13) * (x15 + x21))) - (((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)));
- uint128_t x28 = (((uint128_t)(x5 + x11) * (x15 + x21)) - ((uint128_t)x5 * x15));
- uint128_t x29 = ((((0x2 * ((uint128_t)x9 * x19)) + (0x2 * ((uint128_t)x12 * x22))) + x27) + x24);
- uint128_t x30 = (((((0x2 * ((uint128_t)x7 * x19)) + (0x2 * ((uint128_t)x9 * x17))) + ((0x2 * ((uint128_t)x13 * x22)) + (0x2 * ((uint128_t)x12 * x23)))) + x28) + x25);
- uint128_t x31 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + ((uint128_t)x9 * x15))) + (((uint128_t)x11 * x22) + (((uint128_t)x13 * x23) + ((uint128_t)x12 * x21))));
- uint128_t x32 = (((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (((uint128_t)x11 * x23) + ((uint128_t)x13 * x21))) + x24);
- uint128_t x33 = ((((uint128_t)x5 * x15) + ((uint128_t)x11 * x21)) + x25);
- uint64_t x34 = (uint64_t) (x31 >> 0x35);
- uint64_t x35 = ((uint64_t)x31 & 0x1fffffffffffff);
- uint64_t x36 = (uint64_t) (x26 >> 0x35);
- uint64_t x37 = ((uint64_t)x26 & 0x1fffffffffffff);
- uint128_t x38 = (((uint128_t)0x20000000000000 * x36) + x37);
- uint64_t x39 = (uint64_t) (x38 >> 0x35);
- uint64_t x40 = ((uint64_t)x38 & 0x1fffffffffffff);
- uint128_t x41 = ((x34 + x30) + x39);
- uint64_t x42 = (uint64_t) (x41 >> 0x36);
- uint64_t x43 = ((uint64_t)x41 & 0x3fffffffffffff);
- uint128_t x44 = (x33 + x39);
- uint64_t x45 = (uint64_t) (x44 >> 0x36);
- uint64_t x46 = ((uint64_t)x44 & 0x3fffffffffffff);
- uint128_t x47 = (x42 + x29);
- uint64_t x48 = (uint64_t) (x47 >> 0x36);
- uint64_t x49 = ((uint64_t)x47 & 0x3fffffffffffff);
- uint128_t x50 = (x45 + x32);
- uint64_t x51 = (uint64_t) (x50 >> 0x36);
- uint64_t x52 = ((uint64_t)x50 & 0x3fffffffffffff);
- uint64_t x53 = (x48 + x40);
- uint64_t x54 = (x53 >> 0x35);
- uint64_t x55 = (x53 & 0x1fffffffffffff);
- uint64_t x56 = (x51 + x35);
- uint64_t x57 = (x56 >> 0x35);
- uint64_t x58 = (x56 & 0x1fffffffffffff);
- uint64_t x59 = ((0x20000000000000 * x54) + x55);
- uint64_t x60 = (x59 >> 0x35);
- uint64_t x61 = (x59 & 0x1fffffffffffff);
- uint64_t x62 = ((x57 + x43) + x60);
- uint64_t x63 = (x62 >> 0x36);
- uint64_t x64 = (x62 & 0x3fffffffffffff);
- uint64_t x65 = (x46 + x60);
- uint64_t x66 = (x65 >> 0x36);
- uint64_t x67 = (x65 & 0x3fffffffffffff);
- return (Return x61, (x63 + x49), Return x64, Return x58, (x66 + x52), Return x67))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e322m2e161m1_6limbs/femulDisplay.v b/src/Specific/solinas64_2e322m2e161m1_6limbs/femulDisplay.v
deleted file mode 100644
index 91300a96d..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e322m2e161m1_6limbs/fesquare.c b/src/Specific/solinas64_2e322m2e161m1_6limbs/fesquare.c
deleted file mode 100644
index 282118f83..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/fesquare.c
+++ /dev/null
@@ -1,59 +0,0 @@
-static void fesquare(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x11 = ((0x2 * ((uint128_t)(x6 + x9) * (x6 + x9))) - (0x2 * ((uint128_t)x6 * x6)));
- { uint128_t x12 = (((0x2 * ((uint128_t)(x4 + x10) * (x6 + x9))) + (0x2 * ((uint128_t)(x6 + x9) * (x4 + x10)))) - ((0x2 * ((uint128_t)x4 * x6)) + (0x2 * ((uint128_t)x6 * x4))));
- { uint128_t x13 = ((((uint128_t)(x2 + x8) * (x6 + x9)) + (((uint128_t)(x4 + x10) * (x4 + x10)) + ((uint128_t)(x6 + x9) * (x2 + x8)))) - (((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))));
- { uint128_t x14 = ((((uint128_t)(x2 + x8) * (x4 + x10)) + ((uint128_t)(x4 + x10) * (x2 + x8))) - (((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)));
- { uint128_t x15 = (((uint128_t)(x2 + x8) * (x2 + x8)) - ((uint128_t)x2 * x2));
- { uint128_t x16 = ((((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x9 * x9))) + x14) + x11);
- { uint128_t x17 = (((((0x2 * ((uint128_t)x4 * x6)) + (0x2 * ((uint128_t)x6 * x4))) + ((0x2 * ((uint128_t)x10 * x9)) + (0x2 * ((uint128_t)x9 * x10)))) + x15) + x12);
- { uint128_t x18 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (((uint128_t)x8 * x9) + (((uint128_t)x10 * x10) + ((uint128_t)x9 * x8))));
- { uint128_t x19 = (((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (((uint128_t)x8 * x10) + ((uint128_t)x10 * x8))) + x11);
- { uint128_t x20 = ((((uint128_t)x2 * x2) + ((uint128_t)x8 * x8)) + x12);
- { uint64_t x21 = (uint64_t) (x18 >> 0x35);
- { uint64_t x22 = ((uint64_t)x18 & 0x1fffffffffffff);
- { uint64_t x23 = (uint64_t) (x13 >> 0x35);
- { uint64_t x24 = ((uint64_t)x13 & 0x1fffffffffffff);
- { uint128_t x25 = (((uint128_t)0x20000000000000 * x23) + x24);
- { uint64_t x26 = (uint64_t) (x25 >> 0x35);
- { uint64_t x27 = ((uint64_t)x25 & 0x1fffffffffffff);
- { uint128_t x28 = ((x21 + x17) + x26);
- { uint64_t x29 = (uint64_t) (x28 >> 0x36);
- { uint64_t x30 = ((uint64_t)x28 & 0x3fffffffffffff);
- { uint128_t x31 = (x20 + x26);
- { uint64_t x32 = (uint64_t) (x31 >> 0x36);
- { uint64_t x33 = ((uint64_t)x31 & 0x3fffffffffffff);
- { uint128_t x34 = (x29 + x16);
- { uint64_t x35 = (uint64_t) (x34 >> 0x36);
- { uint64_t x36 = ((uint64_t)x34 & 0x3fffffffffffff);
- { uint128_t x37 = (x32 + x19);
- { uint64_t x38 = (uint64_t) (x37 >> 0x36);
- { uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffffff);
- { uint64_t x40 = (x35 + x27);
- { uint64_t x41 = (x40 >> 0x35);
- { uint64_t x42 = (x40 & 0x1fffffffffffff);
- { uint64_t x43 = (x38 + x22);
- { uint64_t x44 = (x43 >> 0x35);
- { uint64_t x45 = (x43 & 0x1fffffffffffff);
- { uint64_t x46 = ((0x20000000000000 * x41) + x42);
- { uint64_t x47 = (x46 >> 0x35);
- { uint64_t x48 = (x46 & 0x1fffffffffffff);
- { uint64_t x49 = ((x44 + x30) + x47);
- { uint64_t x50 = (x49 >> 0x36);
- { uint64_t x51 = (x49 & 0x3fffffffffffff);
- { uint64_t x52 = (x33 + x47);
- { uint64_t x53 = (x52 >> 0x36);
- { uint64_t x54 = (x52 & 0x3fffffffffffff);
- out[0] = x54;
- out[1] = (x53 + x39);
- out[2] = x45;
- out[3] = x51;
- out[4] = (x50 + x36);
- out[5] = x48;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e322m2e161m1_6limbs/fesquare.v b/src/Specific/solinas64_2e322m2e161m1_6limbs/fesquare.v
deleted file mode 100644
index 9fcfb3e40..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_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/solinas64_2e322m2e161m1_6limbs/fesquareDisplay.log b/src/Specific/solinas64_2e322m2e161m1_6limbs/fesquareDisplay.log
deleted file mode 100644
index f6f72ce2b..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,51 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint128_t x11 = ((0x2 * ((uint128_t)(x6 + x9) * (x6 + x9))) - (0x2 * ((uint128_t)x6 * x6)));
- uint128_t x12 = (((0x2 * ((uint128_t)(x4 + x10) * (x6 + x9))) + (0x2 * ((uint128_t)(x6 + x9) * (x4 + x10)))) - ((0x2 * ((uint128_t)x4 * x6)) + (0x2 * ((uint128_t)x6 * x4))));
- uint128_t x13 = ((((uint128_t)(x2 + x8) * (x6 + x9)) + (((uint128_t)(x4 + x10) * (x4 + x10)) + ((uint128_t)(x6 + x9) * (x2 + x8)))) - (((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))));
- uint128_t x14 = ((((uint128_t)(x2 + x8) * (x4 + x10)) + ((uint128_t)(x4 + x10) * (x2 + x8))) - (((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)));
- uint128_t x15 = (((uint128_t)(x2 + x8) * (x2 + x8)) - ((uint128_t)x2 * x2));
- uint128_t x16 = ((((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x9 * x9))) + x14) + x11);
- uint128_t x17 = (((((0x2 * ((uint128_t)x4 * x6)) + (0x2 * ((uint128_t)x6 * x4))) + ((0x2 * ((uint128_t)x10 * x9)) + (0x2 * ((uint128_t)x9 * x10)))) + x15) + x12);
- uint128_t x18 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (((uint128_t)x8 * x9) + (((uint128_t)x10 * x10) + ((uint128_t)x9 * x8))));
- uint128_t x19 = (((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (((uint128_t)x8 * x10) + ((uint128_t)x10 * x8))) + x11);
- uint128_t x20 = ((((uint128_t)x2 * x2) + ((uint128_t)x8 * x8)) + x12);
- uint64_t x21 = (uint64_t) (x18 >> 0x35);
- uint64_t x22 = ((uint64_t)x18 & 0x1fffffffffffff);
- uint64_t x23 = (uint64_t) (x13 >> 0x35);
- uint64_t x24 = ((uint64_t)x13 & 0x1fffffffffffff);
- uint128_t x25 = (((uint128_t)0x20000000000000 * x23) + x24);
- uint64_t x26 = (uint64_t) (x25 >> 0x35);
- uint64_t x27 = ((uint64_t)x25 & 0x1fffffffffffff);
- uint128_t x28 = ((x21 + x17) + x26);
- uint64_t x29 = (uint64_t) (x28 >> 0x36);
- uint64_t x30 = ((uint64_t)x28 & 0x3fffffffffffff);
- uint128_t x31 = (x20 + x26);
- uint64_t x32 = (uint64_t) (x31 >> 0x36);
- uint64_t x33 = ((uint64_t)x31 & 0x3fffffffffffff);
- uint128_t x34 = (x29 + x16);
- uint64_t x35 = (uint64_t) (x34 >> 0x36);
- uint64_t x36 = ((uint64_t)x34 & 0x3fffffffffffff);
- uint128_t x37 = (x32 + x19);
- uint64_t x38 = (uint64_t) (x37 >> 0x36);
- uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffffff);
- uint64_t x40 = (x35 + x27);
- uint64_t x41 = (x40 >> 0x35);
- uint64_t x42 = (x40 & 0x1fffffffffffff);
- uint64_t x43 = (x38 + x22);
- uint64_t x44 = (x43 >> 0x35);
- uint64_t x45 = (x43 & 0x1fffffffffffff);
- uint64_t x46 = ((0x20000000000000 * x41) + x42);
- uint64_t x47 = (x46 >> 0x35);
- uint64_t x48 = (x46 & 0x1fffffffffffff);
- uint64_t x49 = ((x44 + x30) + x47);
- uint64_t x50 = (x49 >> 0x36);
- uint64_t x51 = (x49 & 0x3fffffffffffff);
- uint64_t x52 = (x33 + x47);
- uint64_t x53 = (x52 >> 0x36);
- uint64_t x54 = (x52 & 0x3fffffffffffff);
- return (Return x48, (x50 + x36), Return x51, Return x45, (x53 + x39), Return x54))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e322m2e161m1_6limbs/fesquareDisplay.v b/src/Specific/solinas64_2e322m2e161m1_6limbs/fesquareDisplay.v
deleted file mode 100644
index 4921b3211..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e322m2e161m1_6limbs/fesub.c b/src/Specific/solinas64_2e322m2e161m1_6limbs/fesub.c
deleted file mode 100644
index 891564394..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/fesub.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- out[0] = ((0x7ffffffffffffe + x5) - x15);
- out[1] = ((0x7ffffffffffffe + x7) - x17);
- out[2] = ((0x3ffffffffffffe + x9) - x19);
- out[3] = ((0x7ffffffffffffc + x11) - x21);
- out[4] = ((0x7ffffffffffffe + x13) - x23);
- out[5] = ((0x3ffffffffffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e322m2e161m1_6limbs/fesub.v b/src/Specific/solinas64_2e322m2e161m1_6limbs/fesub.v
deleted file mode 100644
index 28520cbbb..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_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/solinas64_2e322m2e161m1_6limbs/fesubDisplay.log b/src/Specific/solinas64_2e322m2e161m1_6limbs/fesubDisplay.log
deleted file mode 100644
index 515b3aa45..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- (((0x3ffffffffffffe + x12) - x22), ((0x7ffffffffffffe + x13) - x23), ((0x7ffffffffffffc + x11) - x21), ((0x3ffffffffffffe + x9) - x19), ((0x7ffffffffffffe + x7) - x17), ((0x7ffffffffffffe + x5) - x15)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e322m2e161m1_6limbs/fesubDisplay.v b/src/Specific/solinas64_2e322m2e161m1_6limbs/fesubDisplay.v
deleted file mode 100644
index 7e2ad4d95..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e322m2e161m1_6limbs/freeze.c b/src/Specific/solinas64_2e322m2e161m1_6limbs/freeze.c
deleted file mode 100644
index 56fd8aa6a..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/freeze.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void freeze(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffffffff);
- { uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0x3fffffffffffff);
- { uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0x1fffffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0x3ffffffffffffe);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0x3fffffffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0x1fffffffffffff);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0x3fffffffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint64_t x34 = (x29 & 0x3fffffffffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- { uint64_t x38 = (x29 & 0x1fffffffffffff);
- { uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- { uint64_t x42 = (x29 & 0x3ffffffffffffe);
- { uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- { uint64_t x46 = (x29 & 0x3fffffffffffff);
- { uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- { uint64_t x50 = (x29 & 0x1fffffffffffff);
- { uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (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/solinas64_2e322m2e161m1_6limbs/freeze.v b/src/Specific/solinas64_2e322m2e161m1_6limbs/freeze.v
deleted file mode 100644
index 5c952a31b..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_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/solinas64_2e322m2e161m1_6limbs/freezeDisplay.log b/src/Specific/solinas64_2e322m2e161m1_6limbs/freezeDisplay.log
deleted file mode 100644
index 430abdfab..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/freezeDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffffffff);
- uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0x3fffffffffffff);
- uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0x1fffffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0x3ffffffffffffe);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0x3fffffffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0x1fffffffffffff);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0x3fffffffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint64_t x34 = (x29 & 0x3fffffffffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- uint64_t x38 = (x29 & 0x1fffffffffffff);
- uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- uint64_t x42 = (x29 & 0x3ffffffffffffe);
- uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- uint64_t x46 = (x29 & 0x3fffffffffffff);
- uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- uint64_t x50 = (x29 & 0x1fffffffffffff);
- uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x49, Return x27, Return x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e322m2e161m1_6limbs/freezeDisplay.v b/src/Specific/solinas64_2e322m2e161m1_6limbs/freezeDisplay.v
deleted file mode 100644
index dacc1df51..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e322m2e161m1_6limbs/py_interpreter.sh b/src/Specific/solinas64_2e322m2e161m1_6limbs/py_interpreter.sh
deleted file mode 100755
index c501d9d77..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**322 - 2**161 - 1' -Dmodulus_bytes='53 + 2/3' -Da24='121665'
diff --git a/src/Specific/solinas64_2e322m2e161m1_7limbs/CurveParameters.v b/src/Specific/solinas64_2e322m2e161m1_7limbs/CurveParameters.v
deleted file mode 100644
index 3df995a12..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^322 - 2^161 - 1
-Base: 46
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 46;
- bitwidth := 64;
- s := 2^322;
- c := [(1, 1); (2^161, 1)];
- carry_chains := Some [[2; 6]; [3; 0; 4; 1; 5; 2; 6]; [3; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- 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/solinas64_2e322m2e161m1_7limbs/Synthesis.v b/src/Specific/solinas64_2e322m2e161m1_7limbs/Synthesis.v
deleted file mode 100644
index 30b374432..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_7limbs.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/solinas64_2e322m2e161m1_7limbs/compiler.sh b/src/Specific/solinas64_2e322m2e161m1_7limbs/compiler.sh
deleted file mode 100755
index f17cd5a72..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{46,46,46,46,46,46,46}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' "$@"
diff --git a/src/Specific/solinas64_2e322m2e161m1_7limbs/compilerxx.sh b/src/Specific/solinas64_2e322m2e161m1_7limbs/compilerxx.sh
deleted file mode 100755
index 473a20aa7..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{46,46,46,46,46,46,46}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='41' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<322) - (1_mpz<<161) - 1' "$@"
diff --git a/src/Specific/solinas64_2e322m2e161m1_7limbs/feadd.c b/src/Specific/solinas64_2e322m2e161m1_7limbs/feadd.c
deleted file mode 100644
index 9acf97578..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e322m2e161m1_7limbs/feadd.v b/src/Specific/solinas64_2e322m2e161m1_7limbs/feadd.v
deleted file mode 100644
index a41609206..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_7limbs.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/solinas64_2e322m2e161m1_7limbs/feaddDisplay.log b/src/Specific/solinas64_2e322m2e161m1_7limbs/feaddDisplay.log
deleted file mode 100644
index 6320440fc..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e322m2e161m1_7limbs/feaddDisplay.v b/src/Specific/solinas64_2e322m2e161m1_7limbs/feaddDisplay.v
deleted file mode 100644
index 058197870..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e322m2e161m1_7limbs/fecarry.v b/src/Specific/solinas64_2e322m2e161m1_7limbs/fecarry.v
deleted file mode 100644
index 27615143b..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_7limbs.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/solinas64_2e322m2e161m1_7limbs/fecarryDisplay.v b/src/Specific/solinas64_2e322m2e161m1_7limbs/fecarryDisplay.v
deleted file mode 100644
index 6d0ff20b4..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e322m2e161m1_7limbs/femul.v b/src/Specific/solinas64_2e322m2e161m1_7limbs/femul.v
deleted file mode 100644
index 6c8ed0c52..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_7limbs.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/solinas64_2e322m2e161m1_7limbs/femulDisplay.v b/src/Specific/solinas64_2e322m2e161m1_7limbs/femulDisplay.v
deleted file mode 100644
index 8b2c7cb51..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e322m2e161m1_7limbs/fesquare.v b/src/Specific/solinas64_2e322m2e161m1_7limbs/fesquare.v
deleted file mode 100644
index f65fc27da..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_7limbs.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/solinas64_2e322m2e161m1_7limbs/fesquareDisplay.v b/src/Specific/solinas64_2e322m2e161m1_7limbs/fesquareDisplay.v
deleted file mode 100644
index ff82a49dd..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e322m2e161m1_7limbs/fesub.c b/src/Specific/solinas64_2e322m2e161m1_7limbs/fesub.c
deleted file mode 100644
index 2c7591fdf..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = ((0x7ffffffffffe + x5) - x17);
- out[1] = ((0x7ffffffffffe + x7) - x19);
- out[2] = ((0x7ffffffffffe + x9) - x21);
- out[3] = ((0x7ffffefffffe + x11) - x23);
- out[4] = ((0x7ffffffffffe + x13) - x25);
- out[5] = ((0x7ffffffffffe + x15) - x27);
- out[6] = ((0x7ffffffffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e322m2e161m1_7limbs/fesub.v b/src/Specific/solinas64_2e322m2e161m1_7limbs/fesub.v
deleted file mode 100644
index e349cadf3..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_7limbs.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/solinas64_2e322m2e161m1_7limbs/fesubDisplay.log b/src/Specific/solinas64_2e322m2e161m1_7limbs/fesubDisplay.log
deleted file mode 100644
index 9d6ff5060..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0x7ffffffffffe + x14) - x26), ((0x7ffffffffffe + x15) - x27), ((0x7ffffffffffe + x13) - x25), ((0x7ffffefffffe + x11) - x23), ((0x7ffffffffffe + x9) - x21), ((0x7ffffffffffe + x7) - x19), ((0x7ffffffffffe + x5) - x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e322m2e161m1_7limbs/fesubDisplay.v b/src/Specific/solinas64_2e322m2e161m1_7limbs/fesubDisplay.v
deleted file mode 100644
index 439c9712a..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e322m2e161m1_7limbs/freeze.c b/src/Specific/solinas64_2e322m2e161m1_7limbs/freeze.c
deleted file mode 100644
index f9314590d..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffffff);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0x3fffffffffff);
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0x3fffffffffff);
- { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0x3fffff7fffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0x3fffffffffff);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0x3fffffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0x3fffffffffff);
- { uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- { uint64_t x35 = (x34 & 0x3fffffffffff);
- { uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint64_t x39 = (x34 & 0x3fffffffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint64_t x43 = (x34 & 0x3fffffffffff);
- { uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint64_t x47 = (x34 & 0x3fffff7fffff);
- { uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint64_t x51 = (x34 & 0x3fffffffffff);
- { uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint64_t x55 = (x34 & 0x3fffffffffff);
- { uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint64_t x59 = (x34 & 0x3fffffffffff);
- { uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e322m2e161m1_7limbs/freeze.v b/src/Specific/solinas64_2e322m2e161m1_7limbs/freeze.v
deleted file mode 100644
index df7fc36c3..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_7limbs.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/solinas64_2e322m2e161m1_7limbs/freezeDisplay.log b/src/Specific/solinas64_2e322m2e161m1_7limbs/freezeDisplay.log
deleted file mode 100644
index 08f806634..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffffff);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0x3fffffffffff);
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0x3fffffffffff);
- uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0x3fffff7fffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0x3fffffffffff);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0x3fffffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0x3fffffffffff);
- uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- uint64_t x35 = (x34 & 0x3fffffffffff);
- uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint64_t x39 = (x34 & 0x3fffffffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint64_t x43 = (x34 & 0x3fffffffffff);
- uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint64_t x47 = (x34 & 0x3fffff7fffff);
- uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint64_t x51 = (x34 & 0x3fffffffffff);
- uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint64_t x55 = (x34 & 0x3fffffffffff);
- uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint64_t x59 = (x34 & 0x3fffffffffff);
- uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e322m2e161m1_7limbs/freezeDisplay.v b/src/Specific/solinas64_2e322m2e161m1_7limbs/freezeDisplay.v
deleted file mode 100644
index 8b4b85795..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e322m2e161m1_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e322m2e161m1_7limbs/py_interpreter.sh b/src/Specific/solinas64_2e322m2e161m1_7limbs/py_interpreter.sh
deleted file mode 100755
index 557670f4c..000000000
--- a/src/Specific/solinas64_2e322m2e161m1_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**322 - 2**161 - 1' -Dmodulus_bytes='46' -Da24='121665'
diff --git a/src/Specific/solinas64_2e336m17_6limbs/CurveParameters.v b/src/Specific/solinas64_2e336m17_6limbs/CurveParameters.v
deleted file mode 100644
index 24cdbb10b..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^336 - 17
-Base: 56
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 56;
- bitwidth := 64;
- s := 2^336;
- c := [(1, 17)];
- 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/solinas64_2e336m17_6limbs/Synthesis.v b/src/Specific/solinas64_2e336m17_6limbs/Synthesis.v
deleted file mode 100644
index d22706404..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e336m17_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/solinas64_2e336m17_6limbs/compiler.sh b/src/Specific/solinas64_2e336m17_6limbs/compiler.sh
deleted file mode 100755
index f4c21a29d..000000000
--- a/src/Specific/solinas64_2e336m17_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,56,56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<336) - 17' "$@"
diff --git a/src/Specific/solinas64_2e336m17_6limbs/compilerxx.sh b/src/Specific/solinas64_2e336m17_6limbs/compilerxx.sh
deleted file mode 100755
index 9f714ffa0..000000000
--- a/src/Specific/solinas64_2e336m17_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,56,56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<336) - 17' "$@"
diff --git a/src/Specific/solinas64_2e336m17_6limbs/feadd.c b/src/Specific/solinas64_2e336m17_6limbs/feadd.c
deleted file mode 100644
index 4a6bfb999..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/feadd.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_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/solinas64_2e336m17_6limbs/feadd.v b/src/Specific/solinas64_2e336m17_6limbs/feadd.v
deleted file mode 100644
index 4af6dc2fd..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e336m17_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/solinas64_2e336m17_6limbs/feaddDisplay.log b/src/Specific/solinas64_2e336m17_6limbs/feaddDisplay.log
deleted file mode 100644
index e32995a81..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-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
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e336m17_6limbs/feaddDisplay.v b/src/Specific/solinas64_2e336m17_6limbs/feaddDisplay.v
deleted file mode 100644
index e46534032..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e336m17_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e336m17_6limbs/fecarry.v b/src/Specific/solinas64_2e336m17_6limbs/fecarry.v
deleted file mode 100644
index 680a32149..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e336m17_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/solinas64_2e336m17_6limbs/fecarryDisplay.v b/src/Specific/solinas64_2e336m17_6limbs/fecarryDisplay.v
deleted file mode 100644
index dde727efb..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e336m17_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e336m17_6limbs/femul.c b/src/Specific/solinas64_2e336m17_6limbs/femul.c
deleted file mode 100644
index 9e663e79f..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/femul.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint128_t x24 = (((uint128_t)x5 * x22) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + (((uint128_t)x13 * x17) + ((uint128_t)x12 * x15))))));
- { uint128_t x25 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + (((uint128_t)x11 * x17) + ((uint128_t)x13 * x15))))) + (0x11 * ((uint128_t)x12 * x22)));
- { uint128_t x26 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + ((uint128_t)x11 * x15)))) + (0x11 * (((uint128_t)x13 * x22) + ((uint128_t)x12 * x23))));
- { uint128_t x27 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + ((uint128_t)x9 * x15))) + (0x11 * (((uint128_t)x11 * x22) + (((uint128_t)x13 * x23) + ((uint128_t)x12 * x21)))));
- { uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (0x11 * (((uint128_t)x9 * x22) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x12 * x19))))));
- { uint128_t x29 = (((uint128_t)x5 * x15) + (0x11 * (((uint128_t)x7 * x22) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + (((uint128_t)x13 * x19) + ((uint128_t)x12 * x17)))))));
- { uint128_t x30 = (x29 >> 0x38);
- { uint64_t x31 = ((uint64_t)x29 & 0xffffffffffffff);
- { uint128_t x32 = (x30 + x28);
- { uint128_t x33 = (x32 >> 0x38);
- { uint64_t x34 = ((uint64_t)x32 & 0xffffffffffffff);
- { uint128_t x35 = (x33 + x27);
- { uint128_t x36 = (x35 >> 0x38);
- { uint64_t x37 = ((uint64_t)x35 & 0xffffffffffffff);
- { uint128_t x38 = (x36 + x26);
- { uint128_t x39 = (x38 >> 0x38);
- { uint64_t x40 = ((uint64_t)x38 & 0xffffffffffffff);
- { uint128_t x41 = (x39 + x25);
- { uint64_t x42 = (uint64_t) (x41 >> 0x38);
- { uint64_t x43 = ((uint64_t)x41 & 0xffffffffffffff);
- { uint128_t x44 = (x42 + x24);
- { uint64_t x45 = (uint64_t) (x44 >> 0x38);
- { uint64_t x46 = ((uint64_t)x44 & 0xffffffffffffff);
- { uint128_t x47 = (x31 + ((uint128_t)0x11 * x45));
- { uint64_t x48 = (uint64_t) (x47 >> 0x38);
- { uint64_t x49 = ((uint64_t)x47 & 0xffffffffffffff);
- { uint64_t x50 = (x48 + x34);
- { uint64_t x51 = (x50 >> 0x38);
- { uint64_t x52 = (x50 & 0xffffffffffffff);
- out[0] = x49;
- out[1] = x52;
- out[2] = (x51 + x37);
- out[3] = x40;
- out[4] = x43;
- out[5] = x46;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e336m17_6limbs/femul.v b/src/Specific/solinas64_2e336m17_6limbs/femul.v
deleted file mode 100644
index aa29e44ee..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e336m17_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/solinas64_2e336m17_6limbs/femulDisplay.log b/src/Specific/solinas64_2e336m17_6limbs/femulDisplay.log
deleted file mode 100644
index dba3aac29..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint128_t x24 = (((uint128_t)x5 * x22) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + (((uint128_t)x13 * x17) + ((uint128_t)x12 * x15))))));
- uint128_t x25 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + (((uint128_t)x11 * x17) + ((uint128_t)x13 * x15))))) + (0x11 * ((uint128_t)x12 * x22)));
- uint128_t x26 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + ((uint128_t)x11 * x15)))) + (0x11 * (((uint128_t)x13 * x22) + ((uint128_t)x12 * x23))));
- uint128_t x27 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + ((uint128_t)x9 * x15))) + (0x11 * (((uint128_t)x11 * x22) + (((uint128_t)x13 * x23) + ((uint128_t)x12 * x21)))));
- uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (0x11 * (((uint128_t)x9 * x22) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x12 * x19))))));
- uint128_t x29 = (((uint128_t)x5 * x15) + (0x11 * (((uint128_t)x7 * x22) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + (((uint128_t)x13 * x19) + ((uint128_t)x12 * x17)))))));
- uint128_t x30 = (x29 >> 0x38);
- uint64_t x31 = ((uint64_t)x29 & 0xffffffffffffff);
- uint128_t x32 = (x30 + x28);
- uint128_t x33 = (x32 >> 0x38);
- uint64_t x34 = ((uint64_t)x32 & 0xffffffffffffff);
- uint128_t x35 = (x33 + x27);
- uint128_t x36 = (x35 >> 0x38);
- uint64_t x37 = ((uint64_t)x35 & 0xffffffffffffff);
- uint128_t x38 = (x36 + x26);
- uint128_t x39 = (x38 >> 0x38);
- uint64_t x40 = ((uint64_t)x38 & 0xffffffffffffff);
- uint128_t x41 = (x39 + x25);
- uint64_t x42 = (uint64_t) (x41 >> 0x38);
- uint64_t x43 = ((uint64_t)x41 & 0xffffffffffffff);
- uint128_t x44 = (x42 + x24);
- uint64_t x45 = (uint64_t) (x44 >> 0x38);
- uint64_t x46 = ((uint64_t)x44 & 0xffffffffffffff);
- uint128_t x47 = (x31 + ((uint128_t)0x11 * x45));
- uint64_t x48 = (uint64_t) (x47 >> 0x38);
- uint64_t x49 = ((uint64_t)x47 & 0xffffffffffffff);
- uint64_t x50 = (x48 + x34);
- uint64_t x51 = (x50 >> 0x38);
- uint64_t x52 = (x50 & 0xffffffffffffff);
- return (Return x46, Return x43, Return x40, (x51 + x37), Return x52, Return x49))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e336m17_6limbs/femulDisplay.v b/src/Specific/solinas64_2e336m17_6limbs/femulDisplay.v
deleted file mode 100644
index 1853a8914..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e336m17_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e336m17_6limbs/fesquare.c b/src/Specific/solinas64_2e336m17_6limbs/fesquare.c
deleted file mode 100644
index 86e650785..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/fesquare.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void fesquare(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x11 = (((uint128_t)x2 * x9) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x9 * x2))))));
- { uint128_t x12 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x11 * ((uint128_t)x9 * x9)));
- { uint128_t x13 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x11 * (((uint128_t)x10 * x9) + ((uint128_t)x9 * x10))));
- { uint128_t x14 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x11 * (((uint128_t)x8 * x9) + (((uint128_t)x10 * x10) + ((uint128_t)x9 * x8)))));
- { uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * (((uint128_t)x6 * x9) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((uint128_t)x9 * x6))))));
- { uint128_t x16 = (((uint128_t)x2 * x2) + (0x11 * (((uint128_t)x4 * x9) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + ((uint128_t)x9 * x4)))))));
- { uint128_t x17 = (x16 >> 0x38);
- { uint64_t x18 = ((uint64_t)x16 & 0xffffffffffffff);
- { uint128_t x19 = (x17 + x15);
- { uint128_t x20 = (x19 >> 0x38);
- { uint64_t x21 = ((uint64_t)x19 & 0xffffffffffffff);
- { uint128_t x22 = (x20 + x14);
- { uint128_t x23 = (x22 >> 0x38);
- { uint64_t x24 = ((uint64_t)x22 & 0xffffffffffffff);
- { uint128_t x25 = (x23 + x13);
- { uint128_t x26 = (x25 >> 0x38);
- { uint64_t x27 = ((uint64_t)x25 & 0xffffffffffffff);
- { uint128_t x28 = (x26 + x12);
- { uint64_t x29 = (uint64_t) (x28 >> 0x38);
- { uint64_t x30 = ((uint64_t)x28 & 0xffffffffffffff);
- { uint128_t x31 = (x29 + x11);
- { uint64_t x32 = (uint64_t) (x31 >> 0x38);
- { uint64_t x33 = ((uint64_t)x31 & 0xffffffffffffff);
- { uint128_t x34 = (x18 + ((uint128_t)0x11 * x32));
- { uint64_t x35 = (uint64_t) (x34 >> 0x38);
- { uint64_t x36 = ((uint64_t)x34 & 0xffffffffffffff);
- { uint64_t x37 = (x35 + x21);
- { uint64_t x38 = (x37 >> 0x38);
- { uint64_t x39 = (x37 & 0xffffffffffffff);
- out[0] = x36;
- out[1] = x39;
- out[2] = (x38 + x24);
- out[3] = x27;
- out[4] = x30;
- out[5] = x33;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e336m17_6limbs/fesquare.v b/src/Specific/solinas64_2e336m17_6limbs/fesquare.v
deleted file mode 100644
index 7192a8767..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e336m17_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/solinas64_2e336m17_6limbs/fesquareDisplay.log b/src/Specific/solinas64_2e336m17_6limbs/fesquareDisplay.log
deleted file mode 100644
index 582686440..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint128_t x11 = (((uint128_t)x2 * x9) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x9 * x2))))));
- uint128_t x12 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x11 * ((uint128_t)x9 * x9)));
- uint128_t x13 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x11 * (((uint128_t)x10 * x9) + ((uint128_t)x9 * x10))));
- uint128_t x14 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x11 * (((uint128_t)x8 * x9) + (((uint128_t)x10 * x10) + ((uint128_t)x9 * x8)))));
- uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * (((uint128_t)x6 * x9) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((uint128_t)x9 * x6))))));
- uint128_t x16 = (((uint128_t)x2 * x2) + (0x11 * (((uint128_t)x4 * x9) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + ((uint128_t)x9 * x4)))))));
- uint128_t x17 = (x16 >> 0x38);
- uint64_t x18 = ((uint64_t)x16 & 0xffffffffffffff);
- uint128_t x19 = (x17 + x15);
- uint128_t x20 = (x19 >> 0x38);
- uint64_t x21 = ((uint64_t)x19 & 0xffffffffffffff);
- uint128_t x22 = (x20 + x14);
- uint128_t x23 = (x22 >> 0x38);
- uint64_t x24 = ((uint64_t)x22 & 0xffffffffffffff);
- uint128_t x25 = (x23 + x13);
- uint128_t x26 = (x25 >> 0x38);
- uint64_t x27 = ((uint64_t)x25 & 0xffffffffffffff);
- uint128_t x28 = (x26 + x12);
- uint64_t x29 = (uint64_t) (x28 >> 0x38);
- uint64_t x30 = ((uint64_t)x28 & 0xffffffffffffff);
- uint128_t x31 = (x29 + x11);
- uint64_t x32 = (uint64_t) (x31 >> 0x38);
- uint64_t x33 = ((uint64_t)x31 & 0xffffffffffffff);
- uint128_t x34 = (x18 + ((uint128_t)0x11 * x32));
- uint64_t x35 = (uint64_t) (x34 >> 0x38);
- uint64_t x36 = ((uint64_t)x34 & 0xffffffffffffff);
- uint64_t x37 = (x35 + x21);
- uint64_t x38 = (x37 >> 0x38);
- uint64_t x39 = (x37 & 0xffffffffffffff);
- return (Return x33, Return x30, Return x27, (x38 + x24), Return x39, Return x36))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e336m17_6limbs/fesquareDisplay.v b/src/Specific/solinas64_2e336m17_6limbs/fesquareDisplay.v
deleted file mode 100644
index 70f4ed9c5..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e336m17_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e336m17_6limbs/fesub.c b/src/Specific/solinas64_2e336m17_6limbs/fesub.c
deleted file mode 100644
index 3728606e2..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/fesub.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- out[0] = ((0x1ffffffffffffde + x5) - x15);
- out[1] = ((0x1fffffffffffffe + x7) - x17);
- out[2] = ((0x1fffffffffffffe + x9) - x19);
- out[3] = ((0x1fffffffffffffe + x11) - x21);
- out[4] = ((0x1fffffffffffffe + x13) - x23);
- out[5] = ((0x1fffffffffffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e336m17_6limbs/fesub.v b/src/Specific/solinas64_2e336m17_6limbs/fesub.v
deleted file mode 100644
index 2523b526e..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e336m17_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/solinas64_2e336m17_6limbs/fesubDisplay.log b/src/Specific/solinas64_2e336m17_6limbs/fesubDisplay.log
deleted file mode 100644
index 6df841701..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- (((0x1fffffffffffffe + x12) - x22), ((0x1fffffffffffffe + x13) - x23), ((0x1fffffffffffffe + x11) - x21), ((0x1fffffffffffffe + x9) - x19), ((0x1fffffffffffffe + x7) - x17), ((0x1ffffffffffffde + x5) - x15)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e336m17_6limbs/fesubDisplay.v b/src/Specific/solinas64_2e336m17_6limbs/fesubDisplay.v
deleted file mode 100644
index a35bca8d9..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e336m17_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e336m17_6limbs/freeze.c b/src/Specific/solinas64_2e336m17_6limbs/freeze.c
deleted file mode 100644
index ff74991e3..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/freeze.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void freeze(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffffef);
- { uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0xffffffffffffff);
- { uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0xffffffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0xffffffffffffff);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0xffffffffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0xffffffffffffff);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0xffffffffffffef);
- { uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint64_t x34 = (x29 & 0xffffffffffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- { uint64_t x38 = (x29 & 0xffffffffffffff);
- { uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- { uint64_t x42 = (x29 & 0xffffffffffffff);
- { uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- { uint64_t x46 = (x29 & 0xffffffffffffff);
- { uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- { uint64_t x50 = (x29 & 0xffffffffffffff);
- { uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (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/solinas64_2e336m17_6limbs/freeze.v b/src/Specific/solinas64_2e336m17_6limbs/freeze.v
deleted file mode 100644
index 0e60c3a70..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e336m17_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/solinas64_2e336m17_6limbs/freezeDisplay.log b/src/Specific/solinas64_2e336m17_6limbs/freezeDisplay.log
deleted file mode 100644
index d1153b6c6..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/freezeDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffffef);
- uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0xffffffffffffff);
- uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0xffffffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0xffffffffffffff);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0xffffffffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0xffffffffffffff);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0xffffffffffffef);
- uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint64_t x34 = (x29 & 0xffffffffffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- uint64_t x38 = (x29 & 0xffffffffffffff);
- uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- uint64_t x42 = (x29 & 0xffffffffffffff);
- uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- uint64_t x46 = (x29 & 0xffffffffffffff);
- uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- uint64_t x50 = (x29 & 0xffffffffffffff);
- uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x49, Return x27, Return x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e336m17_6limbs/freezeDisplay.v b/src/Specific/solinas64_2e336m17_6limbs/freezeDisplay.v
deleted file mode 100644
index 7a250dfa1..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e336m17_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e336m17_6limbs/py_interpreter.sh b/src/Specific/solinas64_2e336m17_6limbs/py_interpreter.sh
deleted file mode 100755
index df56247e2..000000000
--- a/src/Specific/solinas64_2e336m17_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**336 - 17' -Dmodulus_bytes='56' -Da24='121665'
diff --git a/src/Specific/solinas64_2e336m17_7limbs/CurveParameters.v b/src/Specific/solinas64_2e336m17_7limbs/CurveParameters.v
deleted file mode 100644
index 1100ca515..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^336 - 17
-Base: 48
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 48;
- bitwidth := 64;
- s := 2^336;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 7); [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/solinas64_2e336m17_7limbs/Synthesis.v b/src/Specific/solinas64_2e336m17_7limbs/Synthesis.v
deleted file mode 100644
index d1cc24048..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e336m17_7limbs.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/solinas64_2e336m17_7limbs/compiler.sh b/src/Specific/solinas64_2e336m17_7limbs/compiler.sh
deleted file mode 100755
index 770244722..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<336) - 17' "$@"
diff --git a/src/Specific/solinas64_2e336m17_7limbs/compilerxx.sh b/src/Specific/solinas64_2e336m17_7limbs/compilerxx.sh
deleted file mode 100755
index db1f6c104..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<336) - 17' "$@"
diff --git a/src/Specific/solinas64_2e336m17_7limbs/feadd.c b/src/Specific/solinas64_2e336m17_7limbs/feadd.c
deleted file mode 100644
index 9acf97578..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e336m17_7limbs/feadd.v b/src/Specific/solinas64_2e336m17_7limbs/feadd.v
deleted file mode 100644
index 1a801bcdb..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e336m17_7limbs.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/solinas64_2e336m17_7limbs/feaddDisplay.log b/src/Specific/solinas64_2e336m17_7limbs/feaddDisplay.log
deleted file mode 100644
index 6320440fc..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e336m17_7limbs/feaddDisplay.v b/src/Specific/solinas64_2e336m17_7limbs/feaddDisplay.v
deleted file mode 100644
index de1377cd8..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e336m17_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e336m17_7limbs/fecarry.v b/src/Specific/solinas64_2e336m17_7limbs/fecarry.v
deleted file mode 100644
index db0cc36e4..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e336m17_7limbs.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/solinas64_2e336m17_7limbs/fecarryDisplay.v b/src/Specific/solinas64_2e336m17_7limbs/fecarryDisplay.v
deleted file mode 100644
index 2f7ff2f92..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e336m17_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e336m17_7limbs/femul.c b/src/Specific/solinas64_2e336m17_7limbs/femul.c
deleted file mode 100644
index 31ed31741..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- { uint128_t x28 = (((uint128_t)x5 * x26) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + (((uint128_t)x15 * x19) + ((uint128_t)x14 * x17)))))));
- { uint128_t x29 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + (((uint128_t)x13 * x19) + ((uint128_t)x15 * x17)))))) + (0x11 * ((uint128_t)x14 * x26)));
- { uint128_t x30 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + ((uint128_t)x13 * x17))))) + (0x11 * (((uint128_t)x15 * x26) + ((uint128_t)x14 * x27))));
- { uint128_t x31 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + ((uint128_t)x11 * x17)))) + (0x11 * (((uint128_t)x13 * x26) + (((uint128_t)x15 * x27) + ((uint128_t)x14 * x25)))));
- { uint128_t x32 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + ((uint128_t)x9 * x17))) + (0x11 * (((uint128_t)x11 * x26) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + ((uint128_t)x14 * x23))))));
- { uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0x11 * (((uint128_t)x9 * x26) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + ((uint128_t)x14 * x21)))))));
- { uint128_t x34 = (((uint128_t)x5 * x17) + (0x11 * (((uint128_t)x7 * x26) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + (((uint128_t)x15 * x21) + ((uint128_t)x14 * x19))))))));
- { uint64_t x35 = (uint64_t) (x34 >> 0x30);
- { uint64_t x36 = ((uint64_t)x34 & 0xffffffffffff);
- { uint128_t x37 = (x35 + x33);
- { uint64_t x38 = (uint64_t) (x37 >> 0x30);
- { uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- { uint128_t x40 = (x38 + x32);
- { uint64_t x41 = (uint64_t) (x40 >> 0x30);
- { uint64_t x42 = ((uint64_t)x40 & 0xffffffffffff);
- { uint128_t x43 = (x41 + x31);
- { uint64_t x44 = (uint64_t) (x43 >> 0x30);
- { uint64_t x45 = ((uint64_t)x43 & 0xffffffffffff);
- { uint128_t x46 = (x44 + x30);
- { uint64_t x47 = (uint64_t) (x46 >> 0x30);
- { uint64_t x48 = ((uint64_t)x46 & 0xffffffffffff);
- { uint128_t x49 = (x47 + x29);
- { uint64_t x50 = (uint64_t) (x49 >> 0x30);
- { uint64_t x51 = ((uint64_t)x49 & 0xffffffffffff);
- { uint128_t x52 = (x50 + x28);
- { uint64_t x53 = (uint64_t) (x52 >> 0x30);
- { uint64_t x54 = ((uint64_t)x52 & 0xffffffffffff);
- { uint64_t x55 = (x36 + (0x11 * x53));
- { uint64_t x56 = (x55 >> 0x30);
- { uint64_t x57 = (x55 & 0xffffffffffff);
- { uint64_t x58 = (x56 + x39);
- { uint64_t x59 = (x58 >> 0x30);
- { uint64_t x60 = (x58 & 0xffffffffffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e336m17_7limbs/femul.v b/src/Specific/solinas64_2e336m17_7limbs/femul.v
deleted file mode 100644
index 11c10b414..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e336m17_7limbs.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/solinas64_2e336m17_7limbs/femulDisplay.log b/src/Specific/solinas64_2e336m17_7limbs/femulDisplay.log
deleted file mode 100644
index ddd3490c9..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint128_t x28 = (((uint128_t)x5 * x26) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + (((uint128_t)x15 * x19) + ((uint128_t)x14 * x17)))))));
- uint128_t x29 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + (((uint128_t)x13 * x19) + ((uint128_t)x15 * x17)))))) + (0x11 * ((uint128_t)x14 * x26)));
- uint128_t x30 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + ((uint128_t)x13 * x17))))) + (0x11 * (((uint128_t)x15 * x26) + ((uint128_t)x14 * x27))));
- uint128_t x31 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + ((uint128_t)x11 * x17)))) + (0x11 * (((uint128_t)x13 * x26) + (((uint128_t)x15 * x27) + ((uint128_t)x14 * x25)))));
- uint128_t x32 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + ((uint128_t)x9 * x17))) + (0x11 * (((uint128_t)x11 * x26) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + ((uint128_t)x14 * x23))))));
- uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0x11 * (((uint128_t)x9 * x26) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + ((uint128_t)x14 * x21)))))));
- uint128_t x34 = (((uint128_t)x5 * x17) + (0x11 * (((uint128_t)x7 * x26) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + (((uint128_t)x15 * x21) + ((uint128_t)x14 * x19))))))));
- uint64_t x35 = (uint64_t) (x34 >> 0x30);
- uint64_t x36 = ((uint64_t)x34 & 0xffffffffffff);
- uint128_t x37 = (x35 + x33);
- uint64_t x38 = (uint64_t) (x37 >> 0x30);
- uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- uint128_t x40 = (x38 + x32);
- uint64_t x41 = (uint64_t) (x40 >> 0x30);
- uint64_t x42 = ((uint64_t)x40 & 0xffffffffffff);
- uint128_t x43 = (x41 + x31);
- uint64_t x44 = (uint64_t) (x43 >> 0x30);
- uint64_t x45 = ((uint64_t)x43 & 0xffffffffffff);
- uint128_t x46 = (x44 + x30);
- uint64_t x47 = (uint64_t) (x46 >> 0x30);
- uint64_t x48 = ((uint64_t)x46 & 0xffffffffffff);
- uint128_t x49 = (x47 + x29);
- uint64_t x50 = (uint64_t) (x49 >> 0x30);
- uint64_t x51 = ((uint64_t)x49 & 0xffffffffffff);
- uint128_t x52 = (x50 + x28);
- uint64_t x53 = (uint64_t) (x52 >> 0x30);
- uint64_t x54 = ((uint64_t)x52 & 0xffffffffffff);
- uint64_t x55 = (x36 + (0x11 * x53));
- uint64_t x56 = (x55 >> 0x30);
- uint64_t x57 = (x55 & 0xffffffffffff);
- uint64_t x58 = (x56 + x39);
- uint64_t x59 = (x58 >> 0x30);
- uint64_t x60 = (x58 & 0xffffffffffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e336m17_7limbs/femulDisplay.v b/src/Specific/solinas64_2e336m17_7limbs/femulDisplay.v
deleted file mode 100644
index fc9dafc96..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e336m17_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e336m17_7limbs/fesquare.c b/src/Specific/solinas64_2e336m17_7limbs/fesquare.c
deleted file mode 100644
index 48dc2e1cb..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x13 = (((uint128_t)x2 * x11) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x11 * x2)))))));
- { uint128_t x14 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x11 * ((uint128_t)x11 * x11)));
- { uint128_t x15 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x11 * (((uint128_t)x12 * x11) + ((uint128_t)x11 * x12))));
- { uint128_t x16 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x11 * (((uint128_t)x10 * x11) + (((uint128_t)x12 * x12) + ((uint128_t)x11 * x10)))));
- { uint128_t x17 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x11 * (((uint128_t)x8 * x11) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + ((uint128_t)x11 * x8))))));
- { uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * (((uint128_t)x6 * x11) + (((uint128_t)x8 * x12) + (((uint128_t)x10 * x10) + (((uint128_t)x12 * x8) + ((uint128_t)x11 * x6)))))));
- { uint128_t x19 = (((uint128_t)x2 * x2) + (0x11 * (((uint128_t)x4 * x11) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + ((uint128_t)x11 * x4))))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x30);
- { uint64_t x21 = ((uint64_t)x19 & 0xffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x30);
- { uint64_t x24 = ((uint64_t)x22 & 0xffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x30);
- { uint64_t x27 = ((uint64_t)x25 & 0xffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x30);
- { uint64_t x30 = ((uint64_t)x28 & 0xffffffffffff);
- { uint128_t x31 = (x29 + x15);
- { uint64_t x32 = (uint64_t) (x31 >> 0x30);
- { uint64_t x33 = ((uint64_t)x31 & 0xffffffffffff);
- { uint128_t x34 = (x32 + x14);
- { uint64_t x35 = (uint64_t) (x34 >> 0x30);
- { uint64_t x36 = ((uint64_t)x34 & 0xffffffffffff);
- { uint128_t x37 = (x35 + x13);
- { uint64_t x38 = (uint64_t) (x37 >> 0x30);
- { uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- { uint64_t x40 = (x21 + (0x11 * x38));
- { uint64_t x41 = (x40 >> 0x30);
- { uint64_t x42 = (x40 & 0xffffffffffff);
- { uint64_t x43 = (x41 + x24);
- { uint64_t x44 = (x43 >> 0x30);
- { uint64_t x45 = (x43 & 0xffffffffffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e336m17_7limbs/fesquare.v b/src/Specific/solinas64_2e336m17_7limbs/fesquare.v
deleted file mode 100644
index ea5e8947c..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e336m17_7limbs.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/solinas64_2e336m17_7limbs/fesquareDisplay.log b/src/Specific/solinas64_2e336m17_7limbs/fesquareDisplay.log
deleted file mode 100644
index b7e577298..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x13 = (((uint128_t)x2 * x11) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x11 * x2)))))));
- uint128_t x14 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x11 * ((uint128_t)x11 * x11)));
- uint128_t x15 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x11 * (((uint128_t)x12 * x11) + ((uint128_t)x11 * x12))));
- uint128_t x16 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x11 * (((uint128_t)x10 * x11) + (((uint128_t)x12 * x12) + ((uint128_t)x11 * x10)))));
- uint128_t x17 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x11 * (((uint128_t)x8 * x11) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + ((uint128_t)x11 * x8))))));
- uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * (((uint128_t)x6 * x11) + (((uint128_t)x8 * x12) + (((uint128_t)x10 * x10) + (((uint128_t)x12 * x8) + ((uint128_t)x11 * x6)))))));
- uint128_t x19 = (((uint128_t)x2 * x2) + (0x11 * (((uint128_t)x4 * x11) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + ((uint128_t)x11 * x4))))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x30);
- uint64_t x21 = ((uint64_t)x19 & 0xffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x30);
- uint64_t x24 = ((uint64_t)x22 & 0xffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x30);
- uint64_t x27 = ((uint64_t)x25 & 0xffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x30);
- uint64_t x30 = ((uint64_t)x28 & 0xffffffffffff);
- uint128_t x31 = (x29 + x15);
- uint64_t x32 = (uint64_t) (x31 >> 0x30);
- uint64_t x33 = ((uint64_t)x31 & 0xffffffffffff);
- uint128_t x34 = (x32 + x14);
- uint64_t x35 = (uint64_t) (x34 >> 0x30);
- uint64_t x36 = ((uint64_t)x34 & 0xffffffffffff);
- uint128_t x37 = (x35 + x13);
- uint64_t x38 = (uint64_t) (x37 >> 0x30);
- uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- uint64_t x40 = (x21 + (0x11 * x38));
- uint64_t x41 = (x40 >> 0x30);
- uint64_t x42 = (x40 & 0xffffffffffff);
- uint64_t x43 = (x41 + x24);
- uint64_t x44 = (x43 >> 0x30);
- uint64_t x45 = (x43 & 0xffffffffffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e336m17_7limbs/fesquareDisplay.v b/src/Specific/solinas64_2e336m17_7limbs/fesquareDisplay.v
deleted file mode 100644
index 7e1ba6a4e..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e336m17_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e336m17_7limbs/fesub.c b/src/Specific/solinas64_2e336m17_7limbs/fesub.c
deleted file mode 100644
index 7fbb64b69..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = ((0x1ffffffffffde + x5) - x17);
- out[1] = ((0x1fffffffffffe + x7) - x19);
- out[2] = ((0x1fffffffffffe + x9) - x21);
- out[3] = ((0x1fffffffffffe + x11) - x23);
- out[4] = ((0x1fffffffffffe + x13) - x25);
- out[5] = ((0x1fffffffffffe + x15) - x27);
- out[6] = ((0x1fffffffffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e336m17_7limbs/fesub.v b/src/Specific/solinas64_2e336m17_7limbs/fesub.v
deleted file mode 100644
index ed7423714..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e336m17_7limbs.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/solinas64_2e336m17_7limbs/fesubDisplay.log b/src/Specific/solinas64_2e336m17_7limbs/fesubDisplay.log
deleted file mode 100644
index f09d1ef69..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0x1fffffffffffe + x14) - x26), ((0x1fffffffffffe + x15) - x27), ((0x1fffffffffffe + x13) - x25), ((0x1fffffffffffe + x11) - x23), ((0x1fffffffffffe + x9) - x21), ((0x1fffffffffffe + x7) - x19), ((0x1ffffffffffde + x5) - x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e336m17_7limbs/fesubDisplay.v b/src/Specific/solinas64_2e336m17_7limbs/fesubDisplay.v
deleted file mode 100644
index f9633e193..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e336m17_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e336m17_7limbs/freeze.c b/src/Specific/solinas64_2e336m17_7limbs/freeze.c
deleted file mode 100644
index db1f6d48a..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffef);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0xffffffffffff);
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0xffffffffffff);
- { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0xffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0xffffffffffff);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0xffffffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0xffffffffffff);
- { uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- { uint64_t x35 = (x34 & 0xffffffffffef);
- { uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint64_t x39 = (x34 & 0xffffffffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint64_t x43 = (x34 & 0xffffffffffff);
- { uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint64_t x47 = (x34 & 0xffffffffffff);
- { uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint64_t x51 = (x34 & 0xffffffffffff);
- { uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint64_t x55 = (x34 & 0xffffffffffff);
- { uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint64_t x59 = (x34 & 0xffffffffffff);
- { uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e336m17_7limbs/freeze.v b/src/Specific/solinas64_2e336m17_7limbs/freeze.v
deleted file mode 100644
index fd0be48da..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e336m17_7limbs.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/solinas64_2e336m17_7limbs/freezeDisplay.log b/src/Specific/solinas64_2e336m17_7limbs/freezeDisplay.log
deleted file mode 100644
index dacda3208..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffef);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0xffffffffffff);
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0xffffffffffff);
- uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0xffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0xffffffffffff);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0xffffffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0xffffffffffff);
- uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- uint64_t x35 = (x34 & 0xffffffffffef);
- uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint64_t x39 = (x34 & 0xffffffffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint64_t x43 = (x34 & 0xffffffffffff);
- uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint64_t x47 = (x34 & 0xffffffffffff);
- uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint64_t x51 = (x34 & 0xffffffffffff);
- uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint64_t x55 = (x34 & 0xffffffffffff);
- uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint64_t x59 = (x34 & 0xffffffffffff);
- uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e336m17_7limbs/freezeDisplay.v b/src/Specific/solinas64_2e336m17_7limbs/freezeDisplay.v
deleted file mode 100644
index 1eca0ec3c..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e336m17_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e336m17_7limbs/py_interpreter.sh b/src/Specific/solinas64_2e336m17_7limbs/py_interpreter.sh
deleted file mode 100755
index 1f3c13db5..000000000
--- a/src/Specific/solinas64_2e336m17_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**336 - 17' -Dmodulus_bytes='48' -Da24='121665'
diff --git a/src/Specific/solinas64_2e336m3_6limbs/CurveParameters.v b/src/Specific/solinas64_2e336m3_6limbs/CurveParameters.v
deleted file mode 100644
index a0361f045..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^336 - 3
-Base: 56
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 56;
- bitwidth := 64;
- s := 2^336;
- c := [(1, 3)];
- 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/solinas64_2e336m3_6limbs/Synthesis.v b/src/Specific/solinas64_2e336m3_6limbs/Synthesis.v
deleted file mode 100644
index 1fdf7ea30..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e336m3_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/solinas64_2e336m3_6limbs/compiler.sh b/src/Specific/solinas64_2e336m3_6limbs/compiler.sh
deleted file mode 100755
index 0d5df5a05..000000000
--- a/src/Specific/solinas64_2e336m3_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,56,56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<336) - 3' "$@"
diff --git a/src/Specific/solinas64_2e336m3_6limbs/compilerxx.sh b/src/Specific/solinas64_2e336m3_6limbs/compilerxx.sh
deleted file mode 100755
index 170232709..000000000
--- a/src/Specific/solinas64_2e336m3_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,56,56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<336) - 3' "$@"
diff --git a/src/Specific/solinas64_2e336m3_6limbs/feadd.c b/src/Specific/solinas64_2e336m3_6limbs/feadd.c
deleted file mode 100644
index 4a6bfb999..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/feadd.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_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/solinas64_2e336m3_6limbs/feadd.v b/src/Specific/solinas64_2e336m3_6limbs/feadd.v
deleted file mode 100644
index 5dd1b610e..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e336m3_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/solinas64_2e336m3_6limbs/feaddDisplay.log b/src/Specific/solinas64_2e336m3_6limbs/feaddDisplay.log
deleted file mode 100644
index e32995a81..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-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
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e336m3_6limbs/feaddDisplay.v b/src/Specific/solinas64_2e336m3_6limbs/feaddDisplay.v
deleted file mode 100644
index 63beefc54..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e336m3_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e336m3_6limbs/fecarry.v b/src/Specific/solinas64_2e336m3_6limbs/fecarry.v
deleted file mode 100644
index ef72c0bca..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e336m3_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/solinas64_2e336m3_6limbs/fecarryDisplay.v b/src/Specific/solinas64_2e336m3_6limbs/fecarryDisplay.v
deleted file mode 100644
index d2c7c4570..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e336m3_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e336m3_6limbs/femul.c b/src/Specific/solinas64_2e336m3_6limbs/femul.c
deleted file mode 100644
index 879ec974c..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/femul.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint128_t x24 = (((uint128_t)x5 * x22) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + (((uint128_t)x13 * x17) + ((uint128_t)x12 * x15))))));
- { uint128_t x25 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + (((uint128_t)x11 * x17) + ((uint128_t)x13 * x15))))) + (0x3 * ((uint128_t)x12 * x22)));
- { uint128_t x26 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + ((uint128_t)x11 * x15)))) + (0x3 * (((uint128_t)x13 * x22) + ((uint128_t)x12 * x23))));
- { uint128_t x27 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + ((uint128_t)x9 * x15))) + (0x3 * (((uint128_t)x11 * x22) + (((uint128_t)x13 * x23) + ((uint128_t)x12 * x21)))));
- { uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (0x3 * (((uint128_t)x9 * x22) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x12 * x19))))));
- { uint128_t x29 = (((uint128_t)x5 * x15) + (0x3 * (((uint128_t)x7 * x22) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + (((uint128_t)x13 * x19) + ((uint128_t)x12 * x17)))))));
- { uint64_t x30 = (uint64_t) (x29 >> 0x38);
- { uint64_t x31 = ((uint64_t)x29 & 0xffffffffffffff);
- { uint128_t x32 = (x30 + x28);
- { uint64_t x33 = (uint64_t) (x32 >> 0x38);
- { uint64_t x34 = ((uint64_t)x32 & 0xffffffffffffff);
- { uint128_t x35 = (x33 + x27);
- { uint64_t x36 = (uint64_t) (x35 >> 0x38);
- { uint64_t x37 = ((uint64_t)x35 & 0xffffffffffffff);
- { uint128_t x38 = (x36 + x26);
- { uint64_t x39 = (uint64_t) (x38 >> 0x38);
- { uint64_t x40 = ((uint64_t)x38 & 0xffffffffffffff);
- { uint128_t x41 = (x39 + x25);
- { uint64_t x42 = (uint64_t) (x41 >> 0x38);
- { uint64_t x43 = ((uint64_t)x41 & 0xffffffffffffff);
- { uint128_t x44 = (x42 + x24);
- { uint64_t x45 = (uint64_t) (x44 >> 0x38);
- { uint64_t x46 = ((uint64_t)x44 & 0xffffffffffffff);
- { uint64_t x47 = (x31 + (0x3 * x45));
- { uint64_t x48 = (x47 >> 0x38);
- { uint64_t x49 = (x47 & 0xffffffffffffff);
- { uint64_t x50 = (x48 + x34);
- { uint64_t x51 = (x50 >> 0x38);
- { uint64_t x52 = (x50 & 0xffffffffffffff);
- out[0] = x49;
- out[1] = x52;
- out[2] = (x51 + x37);
- out[3] = x40;
- out[4] = x43;
- out[5] = x46;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e336m3_6limbs/femul.v b/src/Specific/solinas64_2e336m3_6limbs/femul.v
deleted file mode 100644
index a89708e6c..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e336m3_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/solinas64_2e336m3_6limbs/femulDisplay.log b/src/Specific/solinas64_2e336m3_6limbs/femulDisplay.log
deleted file mode 100644
index 9540c82ee..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint128_t x24 = (((uint128_t)x5 * x22) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + (((uint128_t)x13 * x17) + ((uint128_t)x12 * x15))))));
- uint128_t x25 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + (((uint128_t)x11 * x17) + ((uint128_t)x13 * x15))))) + (0x3 * ((uint128_t)x12 * x22)));
- uint128_t x26 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + (((uint128_t)x9 * x17) + ((uint128_t)x11 * x15)))) + (0x3 * (((uint128_t)x13 * x22) + ((uint128_t)x12 * x23))));
- uint128_t x27 = ((((uint128_t)x5 * x19) + (((uint128_t)x7 * x17) + ((uint128_t)x9 * x15))) + (0x3 * (((uint128_t)x11 * x22) + (((uint128_t)x13 * x23) + ((uint128_t)x12 * x21)))));
- uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (0x3 * (((uint128_t)x9 * x22) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x12 * x19))))));
- uint128_t x29 = (((uint128_t)x5 * x15) + (0x3 * (((uint128_t)x7 * x22) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + (((uint128_t)x13 * x19) + ((uint128_t)x12 * x17)))))));
- uint64_t x30 = (uint64_t) (x29 >> 0x38);
- uint64_t x31 = ((uint64_t)x29 & 0xffffffffffffff);
- uint128_t x32 = (x30 + x28);
- uint64_t x33 = (uint64_t) (x32 >> 0x38);
- uint64_t x34 = ((uint64_t)x32 & 0xffffffffffffff);
- uint128_t x35 = (x33 + x27);
- uint64_t x36 = (uint64_t) (x35 >> 0x38);
- uint64_t x37 = ((uint64_t)x35 & 0xffffffffffffff);
- uint128_t x38 = (x36 + x26);
- uint64_t x39 = (uint64_t) (x38 >> 0x38);
- uint64_t x40 = ((uint64_t)x38 & 0xffffffffffffff);
- uint128_t x41 = (x39 + x25);
- uint64_t x42 = (uint64_t) (x41 >> 0x38);
- uint64_t x43 = ((uint64_t)x41 & 0xffffffffffffff);
- uint128_t x44 = (x42 + x24);
- uint64_t x45 = (uint64_t) (x44 >> 0x38);
- uint64_t x46 = ((uint64_t)x44 & 0xffffffffffffff);
- uint64_t x47 = (x31 + (0x3 * x45));
- uint64_t x48 = (x47 >> 0x38);
- uint64_t x49 = (x47 & 0xffffffffffffff);
- uint64_t x50 = (x48 + x34);
- uint64_t x51 = (x50 >> 0x38);
- uint64_t x52 = (x50 & 0xffffffffffffff);
- return (Return x46, Return x43, Return x40, (x51 + x37), Return x52, Return x49))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e336m3_6limbs/femulDisplay.v b/src/Specific/solinas64_2e336m3_6limbs/femulDisplay.v
deleted file mode 100644
index 30b52d933..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e336m3_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e336m3_6limbs/fesquare.c b/src/Specific/solinas64_2e336m3_6limbs/fesquare.c
deleted file mode 100644
index 5ccf65c0c..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/fesquare.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void fesquare(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x11 = (((uint128_t)x2 * x9) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x9 * x2))))));
- { uint128_t x12 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x3 * ((uint128_t)x9 * x9)));
- { uint128_t x13 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x3 * (((uint128_t)x10 * x9) + ((uint128_t)x9 * x10))));
- { uint128_t x14 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x3 * (((uint128_t)x8 * x9) + (((uint128_t)x10 * x10) + ((uint128_t)x9 * x8)))));
- { uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * (((uint128_t)x6 * x9) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((uint128_t)x9 * x6))))));
- { uint128_t x16 = (((uint128_t)x2 * x2) + (0x3 * (((uint128_t)x4 * x9) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + ((uint128_t)x9 * x4)))))));
- { uint64_t x17 = (uint64_t) (x16 >> 0x38);
- { uint64_t x18 = ((uint64_t)x16 & 0xffffffffffffff);
- { uint128_t x19 = (x17 + x15);
- { uint64_t x20 = (uint64_t) (x19 >> 0x38);
- { uint64_t x21 = ((uint64_t)x19 & 0xffffffffffffff);
- { uint128_t x22 = (x20 + x14);
- { uint64_t x23 = (uint64_t) (x22 >> 0x38);
- { uint64_t x24 = ((uint64_t)x22 & 0xffffffffffffff);
- { uint128_t x25 = (x23 + x13);
- { uint64_t x26 = (uint64_t) (x25 >> 0x38);
- { uint64_t x27 = ((uint64_t)x25 & 0xffffffffffffff);
- { uint128_t x28 = (x26 + x12);
- { uint64_t x29 = (uint64_t) (x28 >> 0x38);
- { uint64_t x30 = ((uint64_t)x28 & 0xffffffffffffff);
- { uint128_t x31 = (x29 + x11);
- { uint64_t x32 = (uint64_t) (x31 >> 0x38);
- { uint64_t x33 = ((uint64_t)x31 & 0xffffffffffffff);
- { uint64_t x34 = (x18 + (0x3 * x32));
- { uint64_t x35 = (x34 >> 0x38);
- { uint64_t x36 = (x34 & 0xffffffffffffff);
- { uint64_t x37 = (x35 + x21);
- { uint64_t x38 = (x37 >> 0x38);
- { uint64_t x39 = (x37 & 0xffffffffffffff);
- out[0] = x36;
- out[1] = x39;
- out[2] = (x38 + x24);
- out[3] = x27;
- out[4] = x30;
- out[5] = x33;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e336m3_6limbs/fesquare.v b/src/Specific/solinas64_2e336m3_6limbs/fesquare.v
deleted file mode 100644
index df83cde0a..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e336m3_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/solinas64_2e336m3_6limbs/fesquareDisplay.log b/src/Specific/solinas64_2e336m3_6limbs/fesquareDisplay.log
deleted file mode 100644
index 1a676031c..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint128_t x11 = (((uint128_t)x2 * x9) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x9 * x2))))));
- uint128_t x12 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x3 * ((uint128_t)x9 * x9)));
- uint128_t x13 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x3 * (((uint128_t)x10 * x9) + ((uint128_t)x9 * x10))));
- uint128_t x14 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x3 * (((uint128_t)x8 * x9) + (((uint128_t)x10 * x10) + ((uint128_t)x9 * x8)))));
- uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * (((uint128_t)x6 * x9) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((uint128_t)x9 * x6))))));
- uint128_t x16 = (((uint128_t)x2 * x2) + (0x3 * (((uint128_t)x4 * x9) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + ((uint128_t)x9 * x4)))))));
- uint64_t x17 = (uint64_t) (x16 >> 0x38);
- uint64_t x18 = ((uint64_t)x16 & 0xffffffffffffff);
- uint128_t x19 = (x17 + x15);
- uint64_t x20 = (uint64_t) (x19 >> 0x38);
- uint64_t x21 = ((uint64_t)x19 & 0xffffffffffffff);
- uint128_t x22 = (x20 + x14);
- uint64_t x23 = (uint64_t) (x22 >> 0x38);
- uint64_t x24 = ((uint64_t)x22 & 0xffffffffffffff);
- uint128_t x25 = (x23 + x13);
- uint64_t x26 = (uint64_t) (x25 >> 0x38);
- uint64_t x27 = ((uint64_t)x25 & 0xffffffffffffff);
- uint128_t x28 = (x26 + x12);
- uint64_t x29 = (uint64_t) (x28 >> 0x38);
- uint64_t x30 = ((uint64_t)x28 & 0xffffffffffffff);
- uint128_t x31 = (x29 + x11);
- uint64_t x32 = (uint64_t) (x31 >> 0x38);
- uint64_t x33 = ((uint64_t)x31 & 0xffffffffffffff);
- uint64_t x34 = (x18 + (0x3 * x32));
- uint64_t x35 = (x34 >> 0x38);
- uint64_t x36 = (x34 & 0xffffffffffffff);
- uint64_t x37 = (x35 + x21);
- uint64_t x38 = (x37 >> 0x38);
- uint64_t x39 = (x37 & 0xffffffffffffff);
- return (Return x33, Return x30, Return x27, (x38 + x24), Return x39, Return x36))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e336m3_6limbs/fesquareDisplay.v b/src/Specific/solinas64_2e336m3_6limbs/fesquareDisplay.v
deleted file mode 100644
index 88c2e9862..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e336m3_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e336m3_6limbs/fesub.c b/src/Specific/solinas64_2e336m3_6limbs/fesub.c
deleted file mode 100644
index f680cabb5..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/fesub.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- out[0] = ((0x1fffffffffffffa + x5) - x15);
- out[1] = ((0x1fffffffffffffe + x7) - x17);
- out[2] = ((0x1fffffffffffffe + x9) - x19);
- out[3] = ((0x1fffffffffffffe + x11) - x21);
- out[4] = ((0x1fffffffffffffe + x13) - x23);
- out[5] = ((0x1fffffffffffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e336m3_6limbs/fesub.v b/src/Specific/solinas64_2e336m3_6limbs/fesub.v
deleted file mode 100644
index f1413c607..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e336m3_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/solinas64_2e336m3_6limbs/fesubDisplay.log b/src/Specific/solinas64_2e336m3_6limbs/fesubDisplay.log
deleted file mode 100644
index f11308491..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- (((0x1fffffffffffffe + x12) - x22), ((0x1fffffffffffffe + x13) - x23), ((0x1fffffffffffffe + x11) - x21), ((0x1fffffffffffffe + x9) - x19), ((0x1fffffffffffffe + x7) - x17), ((0x1fffffffffffffa + x5) - x15)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e336m3_6limbs/fesubDisplay.v b/src/Specific/solinas64_2e336m3_6limbs/fesubDisplay.v
deleted file mode 100644
index 91c533166..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e336m3_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e336m3_6limbs/freeze.c b/src/Specific/solinas64_2e336m3_6limbs/freeze.c
deleted file mode 100644
index 41a597f18..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/freeze.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void freeze(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffffffd);
- { uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0xffffffffffffff);
- { uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0xffffffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0xffffffffffffff);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0xffffffffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0xffffffffffffff);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0xfffffffffffffd);
- { uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint64_t x34 = (x29 & 0xffffffffffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- { uint64_t x38 = (x29 & 0xffffffffffffff);
- { uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- { uint64_t x42 = (x29 & 0xffffffffffffff);
- { uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- { uint64_t x46 = (x29 & 0xffffffffffffff);
- { uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- { uint64_t x50 = (x29 & 0xffffffffffffff);
- { uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (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/solinas64_2e336m3_6limbs/freeze.v b/src/Specific/solinas64_2e336m3_6limbs/freeze.v
deleted file mode 100644
index 615e49668..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e336m3_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/solinas64_2e336m3_6limbs/freezeDisplay.log b/src/Specific/solinas64_2e336m3_6limbs/freezeDisplay.log
deleted file mode 100644
index 64e67c28c..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/freezeDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffffffd);
- uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0xffffffffffffff);
- uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0xffffffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0xffffffffffffff);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0xffffffffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0xffffffffffffff);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0xfffffffffffffd);
- uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint64_t x34 = (x29 & 0xffffffffffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- uint64_t x38 = (x29 & 0xffffffffffffff);
- uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- uint64_t x42 = (x29 & 0xffffffffffffff);
- uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- uint64_t x46 = (x29 & 0xffffffffffffff);
- uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- uint64_t x50 = (x29 & 0xffffffffffffff);
- uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x49, Return x27, Return x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e336m3_6limbs/freezeDisplay.v b/src/Specific/solinas64_2e336m3_6limbs/freezeDisplay.v
deleted file mode 100644
index 215ceb2ee..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e336m3_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e336m3_6limbs/py_interpreter.sh b/src/Specific/solinas64_2e336m3_6limbs/py_interpreter.sh
deleted file mode 100755
index 304fd2c81..000000000
--- a/src/Specific/solinas64_2e336m3_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**336 - 3' -Dmodulus_bytes='56' -Da24='121665'
diff --git a/src/Specific/solinas64_2e336m3_7limbs/CurveParameters.v b/src/Specific/solinas64_2e336m3_7limbs/CurveParameters.v
deleted file mode 100644
index bcb93cf36..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^336 - 3
-Base: 48
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 48;
- bitwidth := 64;
- s := 2^336;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 7); [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/solinas64_2e336m3_7limbs/Synthesis.v b/src/Specific/solinas64_2e336m3_7limbs/Synthesis.v
deleted file mode 100644
index d13379c8b..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e336m3_7limbs.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/solinas64_2e336m3_7limbs/compiler.sh b/src/Specific/solinas64_2e336m3_7limbs/compiler.sh
deleted file mode 100755
index 317c71b00..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<336) - 3' "$@"
diff --git a/src/Specific/solinas64_2e336m3_7limbs/compilerxx.sh b/src/Specific/solinas64_2e336m3_7limbs/compilerxx.sh
deleted file mode 100755
index fc1ad60d2..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='42' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<336) - 3' "$@"
diff --git a/src/Specific/solinas64_2e336m3_7limbs/feadd.c b/src/Specific/solinas64_2e336m3_7limbs/feadd.c
deleted file mode 100644
index 9acf97578..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e336m3_7limbs/feadd.v b/src/Specific/solinas64_2e336m3_7limbs/feadd.v
deleted file mode 100644
index 5a9c7b0d0..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e336m3_7limbs.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/solinas64_2e336m3_7limbs/feaddDisplay.log b/src/Specific/solinas64_2e336m3_7limbs/feaddDisplay.log
deleted file mode 100644
index 6320440fc..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e336m3_7limbs/feaddDisplay.v b/src/Specific/solinas64_2e336m3_7limbs/feaddDisplay.v
deleted file mode 100644
index d4966aad9..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e336m3_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e336m3_7limbs/fecarry.v b/src/Specific/solinas64_2e336m3_7limbs/fecarry.v
deleted file mode 100644
index 3ea3de7ee..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e336m3_7limbs.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/solinas64_2e336m3_7limbs/fecarryDisplay.v b/src/Specific/solinas64_2e336m3_7limbs/fecarryDisplay.v
deleted file mode 100644
index 095963c2a..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e336m3_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e336m3_7limbs/femul.c b/src/Specific/solinas64_2e336m3_7limbs/femul.c
deleted file mode 100644
index 2ef1b6467..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- { uint128_t x28 = (((uint128_t)x5 * x26) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + (((uint128_t)x15 * x19) + ((uint128_t)x14 * x17)))))));
- { uint128_t x29 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + (((uint128_t)x13 * x19) + ((uint128_t)x15 * x17)))))) + (0x3 * ((uint128_t)x14 * x26)));
- { uint128_t x30 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + ((uint128_t)x13 * x17))))) + (0x3 * (((uint128_t)x15 * x26) + ((uint128_t)x14 * x27))));
- { uint128_t x31 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + ((uint128_t)x11 * x17)))) + (0x3 * (((uint128_t)x13 * x26) + (((uint128_t)x15 * x27) + ((uint128_t)x14 * x25)))));
- { uint128_t x32 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + ((uint128_t)x9 * x17))) + (0x3 * (((uint128_t)x11 * x26) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + ((uint128_t)x14 * x23))))));
- { uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0x3 * (((uint128_t)x9 * x26) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + ((uint128_t)x14 * x21)))))));
- { uint128_t x34 = (((uint128_t)x5 * x17) + (0x3 * (((uint128_t)x7 * x26) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + (((uint128_t)x15 * x21) + ((uint128_t)x14 * x19))))))));
- { uint64_t x35 = (uint64_t) (x34 >> 0x30);
- { uint64_t x36 = ((uint64_t)x34 & 0xffffffffffff);
- { uint128_t x37 = (x35 + x33);
- { uint64_t x38 = (uint64_t) (x37 >> 0x30);
- { uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- { uint128_t x40 = (x38 + x32);
- { uint64_t x41 = (uint64_t) (x40 >> 0x30);
- { uint64_t x42 = ((uint64_t)x40 & 0xffffffffffff);
- { uint128_t x43 = (x41 + x31);
- { uint64_t x44 = (uint64_t) (x43 >> 0x30);
- { uint64_t x45 = ((uint64_t)x43 & 0xffffffffffff);
- { uint128_t x46 = (x44 + x30);
- { uint64_t x47 = (uint64_t) (x46 >> 0x30);
- { uint64_t x48 = ((uint64_t)x46 & 0xffffffffffff);
- { uint128_t x49 = (x47 + x29);
- { uint64_t x50 = (uint64_t) (x49 >> 0x30);
- { uint64_t x51 = ((uint64_t)x49 & 0xffffffffffff);
- { uint128_t x52 = (x50 + x28);
- { uint64_t x53 = (uint64_t) (x52 >> 0x30);
- { uint64_t x54 = ((uint64_t)x52 & 0xffffffffffff);
- { uint64_t x55 = (x36 + (0x3 * x53));
- { uint64_t x56 = (x55 >> 0x30);
- { uint64_t x57 = (x55 & 0xffffffffffff);
- { uint64_t x58 = (x56 + x39);
- { uint64_t x59 = (x58 >> 0x30);
- { uint64_t x60 = (x58 & 0xffffffffffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e336m3_7limbs/femul.v b/src/Specific/solinas64_2e336m3_7limbs/femul.v
deleted file mode 100644
index 38009144d..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e336m3_7limbs.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/solinas64_2e336m3_7limbs/femulDisplay.log b/src/Specific/solinas64_2e336m3_7limbs/femulDisplay.log
deleted file mode 100644
index 242085772..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint128_t x28 = (((uint128_t)x5 * x26) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + (((uint128_t)x15 * x19) + ((uint128_t)x14 * x17)))))));
- uint128_t x29 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + (((uint128_t)x13 * x19) + ((uint128_t)x15 * x17)))))) + (0x3 * ((uint128_t)x14 * x26)));
- uint128_t x30 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + ((uint128_t)x13 * x17))))) + (0x3 * (((uint128_t)x15 * x26) + ((uint128_t)x14 * x27))));
- uint128_t x31 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + ((uint128_t)x11 * x17)))) + (0x3 * (((uint128_t)x13 * x26) + (((uint128_t)x15 * x27) + ((uint128_t)x14 * x25)))));
- uint128_t x32 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + ((uint128_t)x9 * x17))) + (0x3 * (((uint128_t)x11 * x26) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + ((uint128_t)x14 * x23))))));
- uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0x3 * (((uint128_t)x9 * x26) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + ((uint128_t)x14 * x21)))))));
- uint128_t x34 = (((uint128_t)x5 * x17) + (0x3 * (((uint128_t)x7 * x26) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + (((uint128_t)x15 * x21) + ((uint128_t)x14 * x19))))))));
- uint64_t x35 = (uint64_t) (x34 >> 0x30);
- uint64_t x36 = ((uint64_t)x34 & 0xffffffffffff);
- uint128_t x37 = (x35 + x33);
- uint64_t x38 = (uint64_t) (x37 >> 0x30);
- uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- uint128_t x40 = (x38 + x32);
- uint64_t x41 = (uint64_t) (x40 >> 0x30);
- uint64_t x42 = ((uint64_t)x40 & 0xffffffffffff);
- uint128_t x43 = (x41 + x31);
- uint64_t x44 = (uint64_t) (x43 >> 0x30);
- uint64_t x45 = ((uint64_t)x43 & 0xffffffffffff);
- uint128_t x46 = (x44 + x30);
- uint64_t x47 = (uint64_t) (x46 >> 0x30);
- uint64_t x48 = ((uint64_t)x46 & 0xffffffffffff);
- uint128_t x49 = (x47 + x29);
- uint64_t x50 = (uint64_t) (x49 >> 0x30);
- uint64_t x51 = ((uint64_t)x49 & 0xffffffffffff);
- uint128_t x52 = (x50 + x28);
- uint64_t x53 = (uint64_t) (x52 >> 0x30);
- uint64_t x54 = ((uint64_t)x52 & 0xffffffffffff);
- uint64_t x55 = (x36 + (0x3 * x53));
- uint64_t x56 = (x55 >> 0x30);
- uint64_t x57 = (x55 & 0xffffffffffff);
- uint64_t x58 = (x56 + x39);
- uint64_t x59 = (x58 >> 0x30);
- uint64_t x60 = (x58 & 0xffffffffffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e336m3_7limbs/femulDisplay.v b/src/Specific/solinas64_2e336m3_7limbs/femulDisplay.v
deleted file mode 100644
index 030a02ebe..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e336m3_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e336m3_7limbs/fesquare.c b/src/Specific/solinas64_2e336m3_7limbs/fesquare.c
deleted file mode 100644
index 99dafb456..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x13 = (((uint128_t)x2 * x11) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x11 * x2)))))));
- { uint128_t x14 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x3 * ((uint128_t)x11 * x11)));
- { uint128_t x15 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x3 * (((uint128_t)x12 * x11) + ((uint128_t)x11 * x12))));
- { uint128_t x16 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x3 * (((uint128_t)x10 * x11) + (((uint128_t)x12 * x12) + ((uint128_t)x11 * x10)))));
- { uint128_t x17 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x3 * (((uint128_t)x8 * x11) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + ((uint128_t)x11 * x8))))));
- { uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * (((uint128_t)x6 * x11) + (((uint128_t)x8 * x12) + (((uint128_t)x10 * x10) + (((uint128_t)x12 * x8) + ((uint128_t)x11 * x6)))))));
- { uint128_t x19 = (((uint128_t)x2 * x2) + (0x3 * (((uint128_t)x4 * x11) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + ((uint128_t)x11 * x4))))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x30);
- { uint64_t x21 = ((uint64_t)x19 & 0xffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x30);
- { uint64_t x24 = ((uint64_t)x22 & 0xffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x30);
- { uint64_t x27 = ((uint64_t)x25 & 0xffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x30);
- { uint64_t x30 = ((uint64_t)x28 & 0xffffffffffff);
- { uint128_t x31 = (x29 + x15);
- { uint64_t x32 = (uint64_t) (x31 >> 0x30);
- { uint64_t x33 = ((uint64_t)x31 & 0xffffffffffff);
- { uint128_t x34 = (x32 + x14);
- { uint64_t x35 = (uint64_t) (x34 >> 0x30);
- { uint64_t x36 = ((uint64_t)x34 & 0xffffffffffff);
- { uint128_t x37 = (x35 + x13);
- { uint64_t x38 = (uint64_t) (x37 >> 0x30);
- { uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- { uint64_t x40 = (x21 + (0x3 * x38));
- { uint64_t x41 = (x40 >> 0x30);
- { uint64_t x42 = (x40 & 0xffffffffffff);
- { uint64_t x43 = (x41 + x24);
- { uint64_t x44 = (x43 >> 0x30);
- { uint64_t x45 = (x43 & 0xffffffffffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e336m3_7limbs/fesquare.v b/src/Specific/solinas64_2e336m3_7limbs/fesquare.v
deleted file mode 100644
index 5e71c3544..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e336m3_7limbs.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/solinas64_2e336m3_7limbs/fesquareDisplay.log b/src/Specific/solinas64_2e336m3_7limbs/fesquareDisplay.log
deleted file mode 100644
index 497ebea39..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x13 = (((uint128_t)x2 * x11) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x11 * x2)))))));
- uint128_t x14 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x3 * ((uint128_t)x11 * x11)));
- uint128_t x15 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x3 * (((uint128_t)x12 * x11) + ((uint128_t)x11 * x12))));
- uint128_t x16 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x3 * (((uint128_t)x10 * x11) + (((uint128_t)x12 * x12) + ((uint128_t)x11 * x10)))));
- uint128_t x17 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x3 * (((uint128_t)x8 * x11) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + ((uint128_t)x11 * x8))))));
- uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * (((uint128_t)x6 * x11) + (((uint128_t)x8 * x12) + (((uint128_t)x10 * x10) + (((uint128_t)x12 * x8) + ((uint128_t)x11 * x6)))))));
- uint128_t x19 = (((uint128_t)x2 * x2) + (0x3 * (((uint128_t)x4 * x11) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + ((uint128_t)x11 * x4))))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x30);
- uint64_t x21 = ((uint64_t)x19 & 0xffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x30);
- uint64_t x24 = ((uint64_t)x22 & 0xffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x30);
- uint64_t x27 = ((uint64_t)x25 & 0xffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x30);
- uint64_t x30 = ((uint64_t)x28 & 0xffffffffffff);
- uint128_t x31 = (x29 + x15);
- uint64_t x32 = (uint64_t) (x31 >> 0x30);
- uint64_t x33 = ((uint64_t)x31 & 0xffffffffffff);
- uint128_t x34 = (x32 + x14);
- uint64_t x35 = (uint64_t) (x34 >> 0x30);
- uint64_t x36 = ((uint64_t)x34 & 0xffffffffffff);
- uint128_t x37 = (x35 + x13);
- uint64_t x38 = (uint64_t) (x37 >> 0x30);
- uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- uint64_t x40 = (x21 + (0x3 * x38));
- uint64_t x41 = (x40 >> 0x30);
- uint64_t x42 = (x40 & 0xffffffffffff);
- uint64_t x43 = (x41 + x24);
- uint64_t x44 = (x43 >> 0x30);
- uint64_t x45 = (x43 & 0xffffffffffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e336m3_7limbs/fesquareDisplay.v b/src/Specific/solinas64_2e336m3_7limbs/fesquareDisplay.v
deleted file mode 100644
index 1579e7ada..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e336m3_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e336m3_7limbs/fesub.c b/src/Specific/solinas64_2e336m3_7limbs/fesub.c
deleted file mode 100644
index 7b5c9072a..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = ((0x1fffffffffffa + x5) - x17);
- out[1] = ((0x1fffffffffffe + x7) - x19);
- out[2] = ((0x1fffffffffffe + x9) - x21);
- out[3] = ((0x1fffffffffffe + x11) - x23);
- out[4] = ((0x1fffffffffffe + x13) - x25);
- out[5] = ((0x1fffffffffffe + x15) - x27);
- out[6] = ((0x1fffffffffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e336m3_7limbs/fesub.v b/src/Specific/solinas64_2e336m3_7limbs/fesub.v
deleted file mode 100644
index 4e9af0bb0..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e336m3_7limbs.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/solinas64_2e336m3_7limbs/fesubDisplay.log b/src/Specific/solinas64_2e336m3_7limbs/fesubDisplay.log
deleted file mode 100644
index bece3bd08..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0x1fffffffffffe + x14) - x26), ((0x1fffffffffffe + x15) - x27), ((0x1fffffffffffe + x13) - x25), ((0x1fffffffffffe + x11) - x23), ((0x1fffffffffffe + x9) - x21), ((0x1fffffffffffe + x7) - x19), ((0x1fffffffffffa + x5) - x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e336m3_7limbs/fesubDisplay.v b/src/Specific/solinas64_2e336m3_7limbs/fesubDisplay.v
deleted file mode 100644
index 11496c3dc..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e336m3_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e336m3_7limbs/freeze.c b/src/Specific/solinas64_2e336m3_7limbs/freeze.c
deleted file mode 100644
index af6b22834..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffffd);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0xffffffffffff);
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0xffffffffffff);
- { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0xffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0xffffffffffff);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0xffffffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0xffffffffffff);
- { uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- { uint64_t x35 = (x34 & 0xfffffffffffd);
- { uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint64_t x39 = (x34 & 0xffffffffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint64_t x43 = (x34 & 0xffffffffffff);
- { uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint64_t x47 = (x34 & 0xffffffffffff);
- { uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint64_t x51 = (x34 & 0xffffffffffff);
- { uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint64_t x55 = (x34 & 0xffffffffffff);
- { uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint64_t x59 = (x34 & 0xffffffffffff);
- { uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e336m3_7limbs/freeze.v b/src/Specific/solinas64_2e336m3_7limbs/freeze.v
deleted file mode 100644
index d97fc573e..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e336m3_7limbs.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/solinas64_2e336m3_7limbs/freezeDisplay.log b/src/Specific/solinas64_2e336m3_7limbs/freezeDisplay.log
deleted file mode 100644
index 190e3b915..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffffd);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0xffffffffffff);
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0xffffffffffff);
- uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0xffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0xffffffffffff);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0xffffffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0xffffffffffff);
- uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- uint64_t x35 = (x34 & 0xfffffffffffd);
- uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint64_t x39 = (x34 & 0xffffffffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint64_t x43 = (x34 & 0xffffffffffff);
- uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint64_t x47 = (x34 & 0xffffffffffff);
- uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint64_t x51 = (x34 & 0xffffffffffff);
- uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint64_t x55 = (x34 & 0xffffffffffff);
- uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint64_t x59 = (x34 & 0xffffffffffff);
- uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e336m3_7limbs/freezeDisplay.v b/src/Specific/solinas64_2e336m3_7limbs/freezeDisplay.v
deleted file mode 100644
index 1269f6672..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e336m3_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e336m3_7limbs/py_interpreter.sh b/src/Specific/solinas64_2e336m3_7limbs/py_interpreter.sh
deleted file mode 100755
index 464e7587b..000000000
--- a/src/Specific/solinas64_2e336m3_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**336 - 3' -Dmodulus_bytes='48' -Da24='121665'
diff --git a/src/Specific/solinas64_2e338m15_6limbs/CurveParameters.v b/src/Specific/solinas64_2e338m15_6limbs/CurveParameters.v
deleted file mode 100644
index ddc66d0bc..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^338 - 15
-Base: 56 + 1/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 6%nat;
- base := 56 + 1/3;
- bitwidth := 64;
- s := 2^338;
- 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/solinas64_2e338m15_6limbs/Synthesis.v b/src/Specific/solinas64_2e338m15_6limbs/Synthesis.v
deleted file mode 100644
index 0c3dd4429..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e338m15_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/solinas64_2e338m15_6limbs/compiler.sh b/src/Specific/solinas64_2e338m15_6limbs/compiler.sh
deleted file mode 100755
index 2ec05c1e8..000000000
--- a/src/Specific/solinas64_2e338m15_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{57,56,56,57,56,56}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='43' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<338) - 15' "$@"
diff --git a/src/Specific/solinas64_2e338m15_6limbs/compilerxx.sh b/src/Specific/solinas64_2e338m15_6limbs/compilerxx.sh
deleted file mode 100755
index d63cda0f4..000000000
--- a/src/Specific/solinas64_2e338m15_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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{57,56,56,57,56,56}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='43' -Dmodulus_limbs='6' -Dq_mpz='(1_mpz<<338) - 15' "$@"
diff --git a/src/Specific/solinas64_2e338m15_6limbs/feadd.c b/src/Specific/solinas64_2e338m15_6limbs/feadd.c
deleted file mode 100644
index 4a6bfb999..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/feadd.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void feadd(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_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/solinas64_2e338m15_6limbs/feadd.v b/src/Specific/solinas64_2e338m15_6limbs/feadd.v
deleted file mode 100644
index d59140283..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e338m15_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/solinas64_2e338m15_6limbs/feaddDisplay.log b/src/Specific/solinas64_2e338m15_6limbs/feaddDisplay.log
deleted file mode 100644
index e32995a81..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-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
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e338m15_6limbs/feaddDisplay.v b/src/Specific/solinas64_2e338m15_6limbs/feaddDisplay.v
deleted file mode 100644
index ddefbccf3..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e338m15_6limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e338m15_6limbs/fecarry.v b/src/Specific/solinas64_2e338m15_6limbs/fecarry.v
deleted file mode 100644
index 9aeec54c1..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e338m15_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/solinas64_2e338m15_6limbs/fecarryDisplay.v b/src/Specific/solinas64_2e338m15_6limbs/fecarryDisplay.v
deleted file mode 100644
index ab7c63fc1..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e338m15_6limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e338m15_6limbs/femul.c b/src/Specific/solinas64_2e338m15_6limbs/femul.c
deleted file mode 100644
index b1b0c9dbc..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/femul.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void femul(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- { uint128_t x24 = (((uint128_t)x5 * x22) + ((0x2 * ((uint128_t)x7 * x23)) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + ((0x2 * ((uint128_t)x13 * x17)) + ((uint128_t)x12 * x15))))));
- { uint128_t x25 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + (((uint128_t)x11 * x17) + ((uint128_t)x13 * x15))))) + (0xf * ((uint128_t)x12 * x22)));
- { uint128_t x26 = ((((uint128_t)x5 * x21) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((uint128_t)x11 * x15)))) + (0xf * ((0x2 * ((uint128_t)x13 * x22)) + (0x2 * ((uint128_t)x12 * x23)))));
- { uint128_t x27 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((uint128_t)x9 * x15))) + (0xf * (((uint128_t)x11 * x22) + ((0x2 * ((uint128_t)x13 * x23)) + ((uint128_t)x12 * x21)))));
- { uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (0xf * (((uint128_t)x9 * x22) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x12 * x19))))));
- { uint128_t x29 = (((uint128_t)x5 * x15) + (0xf * ((0x2 * ((uint128_t)x7 * x22)) + ((0x2 * ((uint128_t)x9 * x23)) + (((uint128_t)x11 * x21) + ((0x2 * ((uint128_t)x13 * x19)) + (0x2 * ((uint128_t)x12 * x17))))))));
- { uint128_t x30 = (x29 >> 0x39);
- { uint64_t x31 = ((uint64_t)x29 & 0x1ffffffffffffff);
- { uint128_t x32 = (x30 + x28);
- { uint128_t x33 = (x32 >> 0x38);
- { uint64_t x34 = ((uint64_t)x32 & 0xffffffffffffff);
- { uint128_t x35 = (x33 + x27);
- { uint128_t x36 = (x35 >> 0x38);
- { uint64_t x37 = ((uint64_t)x35 & 0xffffffffffffff);
- { uint128_t x38 = (x36 + x26);
- { uint128_t x39 = (x38 >> 0x39);
- { uint64_t x40 = ((uint64_t)x38 & 0x1ffffffffffffff);
- { uint128_t x41 = (x39 + x25);
- { uint128_t x42 = (x41 >> 0x38);
- { uint64_t x43 = ((uint64_t)x41 & 0xffffffffffffff);
- { uint128_t x44 = (x42 + x24);
- { uint64_t x45 = (uint64_t) (x44 >> 0x38);
- { uint64_t x46 = ((uint64_t)x44 & 0xffffffffffffff);
- { uint128_t x47 = (x31 + ((uint128_t)0xf * x45));
- { uint64_t x48 = (uint64_t) (x47 >> 0x39);
- { uint64_t x49 = ((uint64_t)x47 & 0x1ffffffffffffff);
- { uint64_t x50 = (x48 + x34);
- { uint64_t x51 = (x50 >> 0x38);
- { uint64_t x52 = (x50 & 0xffffffffffffff);
- out[0] = x49;
- out[1] = x52;
- out[2] = (x51 + x37);
- out[3] = x40;
- out[4] = x43;
- out[5] = x46;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e338m15_6limbs/femul.v b/src/Specific/solinas64_2e338m15_6limbs/femul.v
deleted file mode 100644
index 32eef2b3e..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e338m15_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/solinas64_2e338m15_6limbs/femulDisplay.log b/src/Specific/solinas64_2e338m15_6limbs/femulDisplay.log
deleted file mode 100644
index c00b329ae..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/femulDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- uint128_t x24 = (((uint128_t)x5 * x22) + ((0x2 * ((uint128_t)x7 * x23)) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + ((0x2 * ((uint128_t)x13 * x17)) + ((uint128_t)x12 * x15))))));
- uint128_t x25 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + (((uint128_t)x11 * x17) + ((uint128_t)x13 * x15))))) + (0xf * ((uint128_t)x12 * x22)));
- uint128_t x26 = ((((uint128_t)x5 * x21) + ((0x2 * ((uint128_t)x7 * x19)) + ((0x2 * ((uint128_t)x9 * x17)) + ((uint128_t)x11 * x15)))) + (0xf * ((0x2 * ((uint128_t)x13 * x22)) + (0x2 * ((uint128_t)x12 * x23)))));
- uint128_t x27 = ((((uint128_t)x5 * x19) + ((0x2 * ((uint128_t)x7 * x17)) + ((uint128_t)x9 * x15))) + (0xf * (((uint128_t)x11 * x22) + ((0x2 * ((uint128_t)x13 * x23)) + ((uint128_t)x12 * x21)))));
- uint128_t x28 = ((((uint128_t)x5 * x17) + ((uint128_t)x7 * x15)) + (0xf * (((uint128_t)x9 * x22) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x12 * x19))))));
- uint128_t x29 = (((uint128_t)x5 * x15) + (0xf * ((0x2 * ((uint128_t)x7 * x22)) + ((0x2 * ((uint128_t)x9 * x23)) + (((uint128_t)x11 * x21) + ((0x2 * ((uint128_t)x13 * x19)) + (0x2 * ((uint128_t)x12 * x17))))))));
- uint128_t x30 = (x29 >> 0x39);
- uint64_t x31 = ((uint64_t)x29 & 0x1ffffffffffffff);
- uint128_t x32 = (x30 + x28);
- uint128_t x33 = (x32 >> 0x38);
- uint64_t x34 = ((uint64_t)x32 & 0xffffffffffffff);
- uint128_t x35 = (x33 + x27);
- uint128_t x36 = (x35 >> 0x38);
- uint64_t x37 = ((uint64_t)x35 & 0xffffffffffffff);
- uint128_t x38 = (x36 + x26);
- uint128_t x39 = (x38 >> 0x39);
- uint64_t x40 = ((uint64_t)x38 & 0x1ffffffffffffff);
- uint128_t x41 = (x39 + x25);
- uint128_t x42 = (x41 >> 0x38);
- uint64_t x43 = ((uint64_t)x41 & 0xffffffffffffff);
- uint128_t x44 = (x42 + x24);
- uint64_t x45 = (uint64_t) (x44 >> 0x38);
- uint64_t x46 = ((uint64_t)x44 & 0xffffffffffffff);
- uint128_t x47 = (x31 + ((uint128_t)0xf * x45));
- uint64_t x48 = (uint64_t) (x47 >> 0x39);
- uint64_t x49 = ((uint64_t)x47 & 0x1ffffffffffffff);
- uint64_t x50 = (x48 + x34);
- uint64_t x51 = (x50 >> 0x38);
- uint64_t x52 = (x50 & 0xffffffffffffff);
- return (Return x46, Return x43, Return x40, (x51 + x37), Return x52, Return x49))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e338m15_6limbs/femulDisplay.v b/src/Specific/solinas64_2e338m15_6limbs/femulDisplay.v
deleted file mode 100644
index cc67b16bf..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e338m15_6limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e338m15_6limbs/fesquare.c b/src/Specific/solinas64_2e338m15_6limbs/fesquare.c
deleted file mode 100644
index 0c19e81c2..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/fesquare.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void fesquare(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x11 = (((uint128_t)x2 * x9) + ((0x2 * ((uint128_t)x4 * x10)) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x9 * x2))))));
- { uint128_t x12 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0xf * ((uint128_t)x9 * x9)));
- { uint128_t x13 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0xf * ((0x2 * ((uint128_t)x10 * x9)) + (0x2 * ((uint128_t)x9 * x10)))));
- { uint128_t x14 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0xf * (((uint128_t)x8 * x9) + ((0x2 * ((uint128_t)x10 * x10)) + ((uint128_t)x9 * x8)))));
- { uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xf * (((uint128_t)x6 * x9) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((uint128_t)x9 * x6))))));
- { uint128_t x16 = (((uint128_t)x2 * x2) + (0xf * ((0x2 * ((uint128_t)x4 * x9)) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + (0x2 * ((uint128_t)x9 * x4))))))));
- { uint128_t x17 = (x16 >> 0x39);
- { uint64_t x18 = ((uint64_t)x16 & 0x1ffffffffffffff);
- { uint128_t x19 = (x17 + x15);
- { uint128_t x20 = (x19 >> 0x38);
- { uint64_t x21 = ((uint64_t)x19 & 0xffffffffffffff);
- { uint128_t x22 = (x20 + x14);
- { uint128_t x23 = (x22 >> 0x38);
- { uint64_t x24 = ((uint64_t)x22 & 0xffffffffffffff);
- { uint128_t x25 = (x23 + x13);
- { uint128_t x26 = (x25 >> 0x39);
- { uint64_t x27 = ((uint64_t)x25 & 0x1ffffffffffffff);
- { uint128_t x28 = (x26 + x12);
- { uint128_t x29 = (x28 >> 0x38);
- { uint64_t x30 = ((uint64_t)x28 & 0xffffffffffffff);
- { uint128_t x31 = (x29 + x11);
- { uint64_t x32 = (uint64_t) (x31 >> 0x38);
- { uint64_t x33 = ((uint64_t)x31 & 0xffffffffffffff);
- { uint128_t x34 = (x18 + ((uint128_t)0xf * x32));
- { uint64_t x35 = (uint64_t) (x34 >> 0x39);
- { uint64_t x36 = ((uint64_t)x34 & 0x1ffffffffffffff);
- { uint64_t x37 = (x35 + x21);
- { uint64_t x38 = (x37 >> 0x38);
- { uint64_t x39 = (x37 & 0xffffffffffffff);
- out[0] = x36;
- out[1] = x39;
- out[2] = (x38 + x24);
- out[3] = x27;
- out[4] = x30;
- out[5] = x33;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e338m15_6limbs/fesquare.v b/src/Specific/solinas64_2e338m15_6limbs/fesquare.v
deleted file mode 100644
index b3377a30f..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e338m15_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/solinas64_2e338m15_6limbs/fesquareDisplay.log b/src/Specific/solinas64_2e338m15_6limbs/fesquareDisplay.log
deleted file mode 100644
index 20434092e..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,36 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint128_t x11 = (((uint128_t)x2 * x9) + ((0x2 * ((uint128_t)x4 * x10)) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x9 * x2))))));
- uint128_t x12 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0xf * ((uint128_t)x9 * x9)));
- uint128_t x13 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0xf * ((0x2 * ((uint128_t)x10 * x9)) + (0x2 * ((uint128_t)x9 * x10)))));
- uint128_t x14 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0xf * (((uint128_t)x8 * x9) + ((0x2 * ((uint128_t)x10 * x10)) + ((uint128_t)x9 * x8)))));
- uint128_t x15 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xf * (((uint128_t)x6 * x9) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((uint128_t)x9 * x6))))));
- uint128_t x16 = (((uint128_t)x2 * x2) + (0xf * ((0x2 * ((uint128_t)x4 * x9)) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + (0x2 * ((uint128_t)x9 * x4))))))));
- uint128_t x17 = (x16 >> 0x39);
- uint64_t x18 = ((uint64_t)x16 & 0x1ffffffffffffff);
- uint128_t x19 = (x17 + x15);
- uint128_t x20 = (x19 >> 0x38);
- uint64_t x21 = ((uint64_t)x19 & 0xffffffffffffff);
- uint128_t x22 = (x20 + x14);
- uint128_t x23 = (x22 >> 0x38);
- uint64_t x24 = ((uint64_t)x22 & 0xffffffffffffff);
- uint128_t x25 = (x23 + x13);
- uint128_t x26 = (x25 >> 0x39);
- uint64_t x27 = ((uint64_t)x25 & 0x1ffffffffffffff);
- uint128_t x28 = (x26 + x12);
- uint128_t x29 = (x28 >> 0x38);
- uint64_t x30 = ((uint64_t)x28 & 0xffffffffffffff);
- uint128_t x31 = (x29 + x11);
- uint64_t x32 = (uint64_t) (x31 >> 0x38);
- uint64_t x33 = ((uint64_t)x31 & 0xffffffffffffff);
- uint128_t x34 = (x18 + ((uint128_t)0xf * x32));
- uint64_t x35 = (uint64_t) (x34 >> 0x39);
- uint64_t x36 = ((uint64_t)x34 & 0x1ffffffffffffff);
- uint64_t x37 = (x35 + x21);
- uint64_t x38 = (x37 >> 0x38);
- uint64_t x39 = (x37 & 0xffffffffffffff);
- return (Return x33, Return x30, Return x27, (x38 + x24), Return x39, Return x36))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e338m15_6limbs/fesquareDisplay.v b/src/Specific/solinas64_2e338m15_6limbs/fesquareDisplay.v
deleted file mode 100644
index 3037f5e34..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e338m15_6limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e338m15_6limbs/fesub.c b/src/Specific/solinas64_2e338m15_6limbs/fesub.c
deleted file mode 100644
index 58f3e1e4b..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/fesub.c
+++ /dev/null
@@ -1,21 +0,0 @@
-static void fesub(uint64_t out[6], const uint64_t in1[6], const uint64_t in2[6]) {
- { const uint64_t x12 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x22 = in2[5];
- { const uint64_t x23 = in2[4];
- { const uint64_t x21 = in2[3];
- { const uint64_t x19 = in2[2];
- { const uint64_t x17 = in2[1];
- { const uint64_t x15 = in2[0];
- out[0] = ((0x3ffffffffffffe2 + x5) - x15);
- out[1] = ((0x1fffffffffffffe + x7) - x17);
- out[2] = ((0x1fffffffffffffe + x9) - x19);
- out[3] = ((0x3fffffffffffffe + x11) - x21);
- out[4] = ((0x1fffffffffffffe + x13) - x23);
- out[5] = ((0x1fffffffffffffe + x12) - x22);
- }}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e338m15_6limbs/fesub.v b/src/Specific/solinas64_2e338m15_6limbs/fesub.v
deleted file mode 100644
index 5d17019a9..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e338m15_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/solinas64_2e338m15_6limbs/fesubDisplay.log b/src/Specific/solinas64_2e338m15_6limbs/fesubDisplay.log
deleted file mode 100644
index 9eb96c91d..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x12, x13, x11, x9, x7, x5, (x22, x23, x21, x19, x17, x15))%core,
- (((0x1fffffffffffffe + x12) - x22), ((0x1fffffffffffffe + x13) - x23), ((0x3fffffffffffffe + x11) - x21), ((0x1fffffffffffffe + x9) - x19), ((0x1fffffffffffffe + x7) - x17), ((0x3ffffffffffffe2 + x5) - x15)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e338m15_6limbs/fesubDisplay.v b/src/Specific/solinas64_2e338m15_6limbs/fesubDisplay.v
deleted file mode 100644
index f800aa62e..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e338m15_6limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e338m15_6limbs/freeze.c b/src/Specific/solinas64_2e338m15_6limbs/freeze.c
deleted file mode 100644
index 9163faff6..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/freeze.c
+++ /dev/null
@@ -1,34 +0,0 @@
-static void freeze(uint64_t out[6], const uint64_t in1[6]) {
- { const uint64_t x9 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffffffff1);
- { uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0xffffffffffffff);
- { uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0xffffffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0x1ffffffffffffff);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0xffffffffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0xffffffffffffff);
- { uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- { uint64_t x30 = (x29 & 0x1fffffffffffff1);
- { uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- { uint64_t x34 = (x29 & 0xffffffffffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- { uint64_t x38 = (x29 & 0xffffffffffffff);
- { uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- { uint64_t x42 = (x29 & 0x1ffffffffffffff);
- { uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- { uint64_t x46 = (x29 & 0xffffffffffffff);
- { uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- { uint64_t x50 = (x29 & 0xffffffffffffff);
- { uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (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/solinas64_2e338m15_6limbs/freeze.v b/src/Specific/solinas64_2e338m15_6limbs/freeze.v
deleted file mode 100644
index cc5ae945a..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e338m15_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/solinas64_2e338m15_6limbs/freezeDisplay.log b/src/Specific/solinas64_2e338m15_6limbs/freezeDisplay.log
deleted file mode 100644
index d2d9556a4..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/freezeDisplay.log
+++ /dev/null
@@ -1,26 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x9, x10, x8, x6, x4, x2)%core,
- uint64_t x12, uint8_t x13 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffffffff1);
- uint64_t x15, uint8_t x16 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x13, Return x4, 0xffffffffffffff);
- uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x16, Return x6, 0xffffffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x8, 0x1ffffffffffffff);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x10, 0xffffffffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x9, 0xffffffffffffff);
- uint64_t x29 = cmovznz64(x28, 0x0, 0xffffffffffffffffL);
- uint64_t x30 = (x29 & 0x1fffffffffffff1);
- uint64_t x32, uint8_t x33 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x12, Return x30);
- uint64_t x34 = (x29 & 0xffffffffffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x15, Return x34);
- uint64_t x38 = (x29 & 0xffffffffffffff);
- uint64_t x40, uint8_t x41 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x18, Return x38);
- uint64_t x42 = (x29 & 0x1ffffffffffffff);
- uint64_t x44, uint8_t x45 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x21, Return x42);
- uint64_t x46 = (x29 & 0xffffffffffffff);
- uint64_t x48, uint8_t x49 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x24, Return x46);
- uint64_t x50 = (x29 & 0xffffffffffffff);
- uint64_t x52, uint8_t _ = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x49, Return x27, Return x50);
- (Return x52, Return x48, Return x44, Return x40, Return x36, Return x32))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e338m15_6limbs/freezeDisplay.v b/src/Specific/solinas64_2e338m15_6limbs/freezeDisplay.v
deleted file mode 100644
index 81089266c..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e338m15_6limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e338m15_6limbs/py_interpreter.sh b/src/Specific/solinas64_2e338m15_6limbs/py_interpreter.sh
deleted file mode 100755
index efa76fbaf..000000000
--- a/src/Specific/solinas64_2e338m15_6limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**338 - 15' -Dmodulus_bytes='56 + 1/3' -Da24='121665'
diff --git a/src/Specific/solinas64_2e338m15_7limbs/CurveParameters.v b/src/Specific/solinas64_2e338m15_7limbs/CurveParameters.v
deleted file mode 100644
index fa7bf6731..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^338 - 15
-Base: 48 + 2/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 48 + 2/7;
- bitwidth := 64;
- s := 2^338;
- c := [(1, 15)];
- carry_chains := Some [seq 0 (pred 7); [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/solinas64_2e338m15_7limbs/Synthesis.v b/src/Specific/solinas64_2e338m15_7limbs/Synthesis.v
deleted file mode 100644
index f0b0c827c..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e338m15_7limbs.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/solinas64_2e338m15_7limbs/compiler.sh b/src/Specific/solinas64_2e338m15_7limbs/compiler.sh
deleted file mode 100755
index 1558919f0..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,48,48,49,48,48,48}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='43' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<338) - 15' "$@"
diff --git a/src/Specific/solinas64_2e338m15_7limbs/compilerxx.sh b/src/Specific/solinas64_2e338m15_7limbs/compilerxx.sh
deleted file mode 100755
index b88239761..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,48,48,49,48,48,48}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xf1}' -Dmodulus_bytes_val='43' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<338) - 15' "$@"
diff --git a/src/Specific/solinas64_2e338m15_7limbs/feadd.c b/src/Specific/solinas64_2e338m15_7limbs/feadd.c
deleted file mode 100644
index 9acf97578..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e338m15_7limbs/feadd.v b/src/Specific/solinas64_2e338m15_7limbs/feadd.v
deleted file mode 100644
index c912f6719..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e338m15_7limbs.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/solinas64_2e338m15_7limbs/feaddDisplay.log b/src/Specific/solinas64_2e338m15_7limbs/feaddDisplay.log
deleted file mode 100644
index 6320440fc..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e338m15_7limbs/feaddDisplay.v b/src/Specific/solinas64_2e338m15_7limbs/feaddDisplay.v
deleted file mode 100644
index bfc6fa63d..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e338m15_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e338m15_7limbs/fecarry.v b/src/Specific/solinas64_2e338m15_7limbs/fecarry.v
deleted file mode 100644
index fd050b207..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e338m15_7limbs.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/solinas64_2e338m15_7limbs/fecarryDisplay.v b/src/Specific/solinas64_2e338m15_7limbs/fecarryDisplay.v
deleted file mode 100644
index a4a157914..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e338m15_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e338m15_7limbs/femul.c b/src/Specific/solinas64_2e338m15_7limbs/femul.c
deleted file mode 100644
index b4c762480..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- { uint128_t x28 = (((uint128_t)x5 * x26) + ((0x2 * ((uint128_t)x7 * x27)) + ((0x2 * ((uint128_t)x9 * x25)) + (((uint128_t)x11 * x23) + ((0x2 * ((uint128_t)x13 * x21)) + ((0x2 * ((uint128_t)x15 * x19)) + ((uint128_t)x14 * x17)))))));
- { uint128_t x29 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + ((0x2 * ((uint128_t)x13 * x19)) + ((uint128_t)x15 * x17)))))) + (0xf * ((uint128_t)x14 * x26)));
- { uint128_t x30 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + ((uint128_t)x13 * x17))))) + (0xf * (((uint128_t)x15 * x26) + ((uint128_t)x14 * x27))));
- { uint128_t x31 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((0x2 * ((uint128_t)x9 * x19)) + ((uint128_t)x11 * x17)))) + (0xf * ((0x2 * ((uint128_t)x13 * x26)) + ((0x2 * ((uint128_t)x15 * x27)) + (0x2 * ((uint128_t)x14 * x25))))));
- { uint128_t x32 = ((((uint128_t)x5 * x21) + ((0x2 * ((uint128_t)x7 * x19)) + ((uint128_t)x9 * x17))) + (0xf * (((uint128_t)x11 * x26) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((uint128_t)x14 * x23))))));
- { uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0xf * (((uint128_t)x9 * x26) + (((uint128_t)x11 * x27) + ((0x2 * ((uint128_t)x13 * x25)) + (((uint128_t)x15 * x23) + ((uint128_t)x14 * x21)))))));
- { uint128_t x34 = (((uint128_t)x5 * x17) + (0xf * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19)))))))));
- { uint64_t x35 = (uint64_t) (x34 >> 0x31);
- { uint64_t x36 = ((uint64_t)x34 & 0x1ffffffffffff);
- { uint128_t x37 = (x35 + x33);
- { uint64_t x38 = (uint64_t) (x37 >> 0x30);
- { uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- { uint128_t x40 = (x38 + x32);
- { uint64_t x41 = (uint64_t) (x40 >> 0x30);
- { uint64_t x42 = ((uint64_t)x40 & 0xffffffffffff);
- { uint128_t x43 = (x41 + x31);
- { uint64_t x44 = (uint64_t) (x43 >> 0x31);
- { uint64_t x45 = ((uint64_t)x43 & 0x1ffffffffffff);
- { uint128_t x46 = (x44 + x30);
- { uint64_t x47 = (uint64_t) (x46 >> 0x30);
- { uint64_t x48 = ((uint64_t)x46 & 0xffffffffffff);
- { uint128_t x49 = (x47 + x29);
- { uint64_t x50 = (uint64_t) (x49 >> 0x30);
- { uint64_t x51 = ((uint64_t)x49 & 0xffffffffffff);
- { uint128_t x52 = (x50 + x28);
- { uint64_t x53 = (uint64_t) (x52 >> 0x30);
- { uint64_t x54 = ((uint64_t)x52 & 0xffffffffffff);
- { uint64_t x55 = (x36 + (0xf * x53));
- { uint64_t x56 = (x55 >> 0x31);
- { uint64_t x57 = (x55 & 0x1ffffffffffff);
- { uint64_t x58 = (x56 + x39);
- { uint64_t x59 = (x58 >> 0x30);
- { uint64_t x60 = (x58 & 0xffffffffffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e338m15_7limbs/femul.v b/src/Specific/solinas64_2e338m15_7limbs/femul.v
deleted file mode 100644
index be543787f..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e338m15_7limbs.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/solinas64_2e338m15_7limbs/femulDisplay.log b/src/Specific/solinas64_2e338m15_7limbs/femulDisplay.log
deleted file mode 100644
index 765233950..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint128_t x28 = (((uint128_t)x5 * x26) + ((0x2 * ((uint128_t)x7 * x27)) + ((0x2 * ((uint128_t)x9 * x25)) + (((uint128_t)x11 * x23) + ((0x2 * ((uint128_t)x13 * x21)) + ((0x2 * ((uint128_t)x15 * x19)) + ((uint128_t)x14 * x17)))))));
- uint128_t x29 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + ((0x2 * ((uint128_t)x13 * x19)) + ((uint128_t)x15 * x17)))))) + (0xf * ((uint128_t)x14 * x26)));
- uint128_t x30 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + ((uint128_t)x13 * x17))))) + (0xf * (((uint128_t)x15 * x26) + ((uint128_t)x14 * x27))));
- uint128_t x31 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((0x2 * ((uint128_t)x9 * x19)) + ((uint128_t)x11 * x17)))) + (0xf * ((0x2 * ((uint128_t)x13 * x26)) + ((0x2 * ((uint128_t)x15 * x27)) + (0x2 * ((uint128_t)x14 * x25))))));
- uint128_t x32 = ((((uint128_t)x5 * x21) + ((0x2 * ((uint128_t)x7 * x19)) + ((uint128_t)x9 * x17))) + (0xf * (((uint128_t)x11 * x26) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((uint128_t)x14 * x23))))));
- uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0xf * (((uint128_t)x9 * x26) + (((uint128_t)x11 * x27) + ((0x2 * ((uint128_t)x13 * x25)) + (((uint128_t)x15 * x23) + ((uint128_t)x14 * x21)))))));
- uint128_t x34 = (((uint128_t)x5 * x17) + (0xf * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19)))))))));
- uint64_t x35 = (uint64_t) (x34 >> 0x31);
- uint64_t x36 = ((uint64_t)x34 & 0x1ffffffffffff);
- uint128_t x37 = (x35 + x33);
- uint64_t x38 = (uint64_t) (x37 >> 0x30);
- uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- uint128_t x40 = (x38 + x32);
- uint64_t x41 = (uint64_t) (x40 >> 0x30);
- uint64_t x42 = ((uint64_t)x40 & 0xffffffffffff);
- uint128_t x43 = (x41 + x31);
- uint64_t x44 = (uint64_t) (x43 >> 0x31);
- uint64_t x45 = ((uint64_t)x43 & 0x1ffffffffffff);
- uint128_t x46 = (x44 + x30);
- uint64_t x47 = (uint64_t) (x46 >> 0x30);
- uint64_t x48 = ((uint64_t)x46 & 0xffffffffffff);
- uint128_t x49 = (x47 + x29);
- uint64_t x50 = (uint64_t) (x49 >> 0x30);
- uint64_t x51 = ((uint64_t)x49 & 0xffffffffffff);
- uint128_t x52 = (x50 + x28);
- uint64_t x53 = (uint64_t) (x52 >> 0x30);
- uint64_t x54 = ((uint64_t)x52 & 0xffffffffffff);
- uint64_t x55 = (x36 + (0xf * x53));
- uint64_t x56 = (x55 >> 0x31);
- uint64_t x57 = (x55 & 0x1ffffffffffff);
- uint64_t x58 = (x56 + x39);
- uint64_t x59 = (x58 >> 0x30);
- uint64_t x60 = (x58 & 0xffffffffffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e338m15_7limbs/femulDisplay.v b/src/Specific/solinas64_2e338m15_7limbs/femulDisplay.v
deleted file mode 100644
index 927e8e13a..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e338m15_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e338m15_7limbs/fesquare.c b/src/Specific/solinas64_2e338m15_7limbs/fesquare.c
deleted file mode 100644
index ff6694feb..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x13 = (((uint128_t)x2 * x11) + ((0x2 * ((uint128_t)x4 * x12)) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x11 * x2)))))));
- { uint128_t x14 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0xf * ((uint128_t)x11 * x11)));
- { uint128_t x15 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0xf * (((uint128_t)x12 * x11) + ((uint128_t)x11 * x12))));
- { uint128_t x16 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0xf * ((0x2 * ((uint128_t)x10 * x11)) + ((0x2 * ((uint128_t)x12 * x12)) + (0x2 * ((uint128_t)x11 * x10))))));
- { uint128_t x17 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0xf * (((uint128_t)x8 * x11) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + ((uint128_t)x11 * x8))))));
- { uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xf * (((uint128_t)x6 * x11) + (((uint128_t)x8 * x12) + ((0x2 * ((uint128_t)x10 * x10)) + (((uint128_t)x12 * x8) + ((uint128_t)x11 * x6)))))));
- { uint128_t x19 = (((uint128_t)x2 * x2) + (0xf * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4)))))))));
- { uint64_t x20 = (uint64_t) (x19 >> 0x31);
- { uint64_t x21 = ((uint64_t)x19 & 0x1ffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x30);
- { uint64_t x24 = ((uint64_t)x22 & 0xffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x30);
- { uint64_t x27 = ((uint64_t)x25 & 0xffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x31);
- { uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffffff);
- { uint128_t x31 = (x29 + x15);
- { uint64_t x32 = (uint64_t) (x31 >> 0x30);
- { uint64_t x33 = ((uint64_t)x31 & 0xffffffffffff);
- { uint128_t x34 = (x32 + x14);
- { uint64_t x35 = (uint64_t) (x34 >> 0x30);
- { uint64_t x36 = ((uint64_t)x34 & 0xffffffffffff);
- { uint128_t x37 = (x35 + x13);
- { uint64_t x38 = (uint64_t) (x37 >> 0x30);
- { uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- { uint64_t x40 = (x21 + (0xf * x38));
- { uint64_t x41 = (x40 >> 0x31);
- { uint64_t x42 = (x40 & 0x1ffffffffffff);
- { uint64_t x43 = (x41 + x24);
- { uint64_t x44 = (x43 >> 0x30);
- { uint64_t x45 = (x43 & 0xffffffffffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e338m15_7limbs/fesquare.v b/src/Specific/solinas64_2e338m15_7limbs/fesquare.v
deleted file mode 100644
index e0e6a10e2..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e338m15_7limbs.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/solinas64_2e338m15_7limbs/fesquareDisplay.log b/src/Specific/solinas64_2e338m15_7limbs/fesquareDisplay.log
deleted file mode 100644
index 7e8e9cffc..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x13 = (((uint128_t)x2 * x11) + ((0x2 * ((uint128_t)x4 * x12)) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x11 * x2)))))));
- uint128_t x14 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0xf * ((uint128_t)x11 * x11)));
- uint128_t x15 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0xf * (((uint128_t)x12 * x11) + ((uint128_t)x11 * x12))));
- uint128_t x16 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0xf * ((0x2 * ((uint128_t)x10 * x11)) + ((0x2 * ((uint128_t)x12 * x12)) + (0x2 * ((uint128_t)x11 * x10))))));
- uint128_t x17 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0xf * (((uint128_t)x8 * x11) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + ((uint128_t)x11 * x8))))));
- uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xf * (((uint128_t)x6 * x11) + (((uint128_t)x8 * x12) + ((0x2 * ((uint128_t)x10 * x10)) + (((uint128_t)x12 * x8) + ((uint128_t)x11 * x6)))))));
- uint128_t x19 = (((uint128_t)x2 * x2) + (0xf * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4)))))))));
- uint64_t x20 = (uint64_t) (x19 >> 0x31);
- uint64_t x21 = ((uint64_t)x19 & 0x1ffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x30);
- uint64_t x24 = ((uint64_t)x22 & 0xffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x30);
- uint64_t x27 = ((uint64_t)x25 & 0xffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x31);
- uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffffff);
- uint128_t x31 = (x29 + x15);
- uint64_t x32 = (uint64_t) (x31 >> 0x30);
- uint64_t x33 = ((uint64_t)x31 & 0xffffffffffff);
- uint128_t x34 = (x32 + x14);
- uint64_t x35 = (uint64_t) (x34 >> 0x30);
- uint64_t x36 = ((uint64_t)x34 & 0xffffffffffff);
- uint128_t x37 = (x35 + x13);
- uint64_t x38 = (uint64_t) (x37 >> 0x30);
- uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- uint64_t x40 = (x21 + (0xf * x38));
- uint64_t x41 = (x40 >> 0x31);
- uint64_t x42 = (x40 & 0x1ffffffffffff);
- uint64_t x43 = (x41 + x24);
- uint64_t x44 = (x43 >> 0x30);
- uint64_t x45 = (x43 & 0xffffffffffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e338m15_7limbs/fesquareDisplay.v b/src/Specific/solinas64_2e338m15_7limbs/fesquareDisplay.v
deleted file mode 100644
index 7db43afd1..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e338m15_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e338m15_7limbs/fesub.c b/src/Specific/solinas64_2e338m15_7limbs/fesub.c
deleted file mode 100644
index 4e34c3172..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = ((0x3ffffffffffe2 + x5) - x17);
- out[1] = ((0x1fffffffffffe + x7) - x19);
- out[2] = ((0x1fffffffffffe + x9) - x21);
- out[3] = ((0x3fffffffffffe + x11) - x23);
- out[4] = ((0x1fffffffffffe + x13) - x25);
- out[5] = ((0x1fffffffffffe + x15) - x27);
- out[6] = ((0x1fffffffffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e338m15_7limbs/fesub.v b/src/Specific/solinas64_2e338m15_7limbs/fesub.v
deleted file mode 100644
index a07a1fd17..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e338m15_7limbs.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/solinas64_2e338m15_7limbs/fesubDisplay.log b/src/Specific/solinas64_2e338m15_7limbs/fesubDisplay.log
deleted file mode 100644
index 468249658..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0x1fffffffffffe + x14) - x26), ((0x1fffffffffffe + x15) - x27), ((0x1fffffffffffe + x13) - x25), ((0x3fffffffffffe + x11) - x23), ((0x1fffffffffffe + x9) - x21), ((0x1fffffffffffe + x7) - x19), ((0x3ffffffffffe2 + x5) - x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e338m15_7limbs/fesubDisplay.v b/src/Specific/solinas64_2e338m15_7limbs/fesubDisplay.v
deleted file mode 100644
index 7ec292da7..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e338m15_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e338m15_7limbs/freeze.c b/src/Specific/solinas64_2e338m15_7limbs/freeze.c
deleted file mode 100644
index 65430dbaa..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffffff1);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0xffffffffffff);
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0xffffffffffff);
- { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0x1ffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0xffffffffffff);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0xffffffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0xffffffffffff);
- { uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- { uint64_t x35 = (x34 & 0x1fffffffffff1);
- { uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint64_t x39 = (x34 & 0xffffffffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint64_t x43 = (x34 & 0xffffffffffff);
- { uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint64_t x47 = (x34 & 0x1ffffffffffff);
- { uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint64_t x51 = (x34 & 0xffffffffffff);
- { uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint64_t x55 = (x34 & 0xffffffffffff);
- { uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint64_t x59 = (x34 & 0xffffffffffff);
- { uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e338m15_7limbs/freeze.v b/src/Specific/solinas64_2e338m15_7limbs/freeze.v
deleted file mode 100644
index aa86a2590..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e338m15_7limbs.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/solinas64_2e338m15_7limbs/freezeDisplay.log b/src/Specific/solinas64_2e338m15_7limbs/freezeDisplay.log
deleted file mode 100644
index 23160c784..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffffff1);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0xffffffffffff);
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0xffffffffffff);
- uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0x1ffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0xffffffffffff);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0xffffffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0xffffffffffff);
- uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- uint64_t x35 = (x34 & 0x1fffffffffff1);
- uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint64_t x39 = (x34 & 0xffffffffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint64_t x43 = (x34 & 0xffffffffffff);
- uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint64_t x47 = (x34 & 0x1ffffffffffff);
- uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint64_t x51 = (x34 & 0xffffffffffff);
- uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint64_t x55 = (x34 & 0xffffffffffff);
- uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint64_t x59 = (x34 & 0xffffffffffff);
- uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e338m15_7limbs/freezeDisplay.v b/src/Specific/solinas64_2e338m15_7limbs/freezeDisplay.v
deleted file mode 100644
index ad1e392b0..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e338m15_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e338m15_7limbs/py_interpreter.sh b/src/Specific/solinas64_2e338m15_7limbs/py_interpreter.sh
deleted file mode 100755
index 98a4275d3..000000000
--- a/src/Specific/solinas64_2e338m15_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**338 - 15' -Dmodulus_bytes='48 + 2/7' -Da24='121665'
diff --git a/src/Specific/solinas64_2e369m25_7limbs/CurveParameters.v b/src/Specific/solinas64_2e369m25_7limbs/CurveParameters.v
deleted file mode 100644
index 6a782a1a4..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^369 - 25
-Base: 52 + 5/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 52 + 5/7;
- bitwidth := 64;
- s := 2^369;
- c := [(1, 25)];
- carry_chains := Some [seq 0 (pred 7); [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/solinas64_2e369m25_7limbs/Synthesis.v b/src/Specific/solinas64_2e369m25_7limbs/Synthesis.v
deleted file mode 100644
index 6866bed39..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e369m25_7limbs.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/solinas64_2e369m25_7limbs/compiler.sh b/src/Specific/solinas64_2e369m25_7limbs/compiler.sh
deleted file mode 100755
index 23350a8f6..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{53,53,53,52,53,53,52}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='47' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<369) - 25' "$@"
diff --git a/src/Specific/solinas64_2e369m25_7limbs/compilerxx.sh b/src/Specific/solinas64_2e369m25_7limbs/compilerxx.sh
deleted file mode 100755
index cdb2b81fb..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{53,53,53,52,53,53,52}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='47' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<369) - 25' "$@"
diff --git a/src/Specific/solinas64_2e369m25_7limbs/feadd.c b/src/Specific/solinas64_2e369m25_7limbs/feadd.c
deleted file mode 100644
index 9acf97578..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e369m25_7limbs/feadd.v b/src/Specific/solinas64_2e369m25_7limbs/feadd.v
deleted file mode 100644
index c850e8993..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e369m25_7limbs.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/solinas64_2e369m25_7limbs/feaddDisplay.log b/src/Specific/solinas64_2e369m25_7limbs/feaddDisplay.log
deleted file mode 100644
index 6320440fc..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e369m25_7limbs/feaddDisplay.v b/src/Specific/solinas64_2e369m25_7limbs/feaddDisplay.v
deleted file mode 100644
index a7499777f..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e369m25_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e369m25_7limbs/fecarry.v b/src/Specific/solinas64_2e369m25_7limbs/fecarry.v
deleted file mode 100644
index 8fa216f8f..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e369m25_7limbs.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/solinas64_2e369m25_7limbs/fecarryDisplay.v b/src/Specific/solinas64_2e369m25_7limbs/fecarryDisplay.v
deleted file mode 100644
index ac665fd69..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e369m25_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e369m25_7limbs/femul.c b/src/Specific/solinas64_2e369m25_7limbs/femul.c
deleted file mode 100644
index 6f1bfef49..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- { uint128_t x28 = (((uint128_t)x5 * x26) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((0x2 * ((uint128_t)x11 * x23)) + (((uint128_t)x13 * x21) + (((uint128_t)x15 * x19) + ((uint128_t)x14 * x17)))))));
- { uint128_t x29 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + (((uint128_t)x13 * x19) + ((uint128_t)x15 * x17)))))) + (0x19 * (0x2 * ((uint128_t)x14 * x26))));
- { uint128_t x30 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((0x2 * ((uint128_t)x9 * x21)) + ((0x2 * ((uint128_t)x11 * x19)) + ((uint128_t)x13 * x17))))) + (0x19 * ((0x2 * ((uint128_t)x15 * x26)) + (0x2 * ((uint128_t)x14 * x27)))));
- { uint128_t x31 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + ((uint128_t)x11 * x17)))) + (0x19 * (((uint128_t)x13 * x26) + (((uint128_t)x15 * x27) + ((uint128_t)x14 * x25)))));
- { uint128_t x32 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + ((uint128_t)x9 * x17))) + (0x19 * ((0x2 * ((uint128_t)x11 * x26)) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + (0x2 * ((uint128_t)x14 * x23)))))));
- { uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0x19 * ((0x2 * ((uint128_t)x9 * x26)) + ((0x2 * ((uint128_t)x11 * x27)) + (((uint128_t)x13 * x25) + ((0x2 * ((uint128_t)x15 * x23)) + (0x2 * ((uint128_t)x14 * x21))))))));
- { uint128_t x34 = (((uint128_t)x5 * x17) + (0x19 * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19)))))))));
- { uint128_t x35 = (x34 >> 0x35);
- { uint64_t x36 = ((uint64_t)x34 & 0x1fffffffffffff);
- { uint128_t x37 = (x35 + x33);
- { uint64_t x38 = (uint64_t) (x37 >> 0x35);
- { uint64_t x39 = ((uint64_t)x37 & 0x1fffffffffffff);
- { uint128_t x40 = (x38 + x32);
- { uint64_t x41 = (uint64_t) (x40 >> 0x35);
- { uint64_t x42 = ((uint64_t)x40 & 0x1fffffffffffff);
- { uint128_t x43 = (x41 + x31);
- { uint64_t x44 = (uint64_t) (x43 >> 0x34);
- { uint64_t x45 = ((uint64_t)x43 & 0xfffffffffffff);
- { uint128_t x46 = (x44 + x30);
- { uint64_t x47 = (uint64_t) (x46 >> 0x35);
- { uint64_t x48 = ((uint64_t)x46 & 0x1fffffffffffff);
- { uint128_t x49 = (x47 + x29);
- { uint64_t x50 = (uint64_t) (x49 >> 0x35);
- { uint64_t x51 = ((uint64_t)x49 & 0x1fffffffffffff);
- { uint128_t x52 = (x50 + x28);
- { uint64_t x53 = (uint64_t) (x52 >> 0x34);
- { uint64_t x54 = ((uint64_t)x52 & 0xfffffffffffff);
- { uint128_t x55 = (x36 + ((uint128_t)0x19 * x53));
- { uint64_t x56 = (uint64_t) (x55 >> 0x35);
- { uint64_t x57 = ((uint64_t)x55 & 0x1fffffffffffff);
- { uint64_t x58 = (x56 + x39);
- { uint64_t x59 = (x58 >> 0x35);
- { uint64_t x60 = (x58 & 0x1fffffffffffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e369m25_7limbs/femul.v b/src/Specific/solinas64_2e369m25_7limbs/femul.v
deleted file mode 100644
index ad364cacd..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e369m25_7limbs.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/solinas64_2e369m25_7limbs/femulDisplay.log b/src/Specific/solinas64_2e369m25_7limbs/femulDisplay.log
deleted file mode 100644
index 03c2ecc92..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint128_t x28 = (((uint128_t)x5 * x26) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((0x2 * ((uint128_t)x11 * x23)) + (((uint128_t)x13 * x21) + (((uint128_t)x15 * x19) + ((uint128_t)x14 * x17)))))));
- uint128_t x29 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + (((uint128_t)x13 * x19) + ((uint128_t)x15 * x17)))))) + (0x19 * (0x2 * ((uint128_t)x14 * x26))));
- uint128_t x30 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((0x2 * ((uint128_t)x9 * x21)) + ((0x2 * ((uint128_t)x11 * x19)) + ((uint128_t)x13 * x17))))) + (0x19 * ((0x2 * ((uint128_t)x15 * x26)) + (0x2 * ((uint128_t)x14 * x27)))));
- uint128_t x31 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + ((uint128_t)x11 * x17)))) + (0x19 * (((uint128_t)x13 * x26) + (((uint128_t)x15 * x27) + ((uint128_t)x14 * x25)))));
- uint128_t x32 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + ((uint128_t)x9 * x17))) + (0x19 * ((0x2 * ((uint128_t)x11 * x26)) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + (0x2 * ((uint128_t)x14 * x23)))))));
- uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0x19 * ((0x2 * ((uint128_t)x9 * x26)) + ((0x2 * ((uint128_t)x11 * x27)) + (((uint128_t)x13 * x25) + ((0x2 * ((uint128_t)x15 * x23)) + (0x2 * ((uint128_t)x14 * x21))))))));
- uint128_t x34 = (((uint128_t)x5 * x17) + (0x19 * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19)))))))));
- uint128_t x35 = (x34 >> 0x35);
- uint64_t x36 = ((uint64_t)x34 & 0x1fffffffffffff);
- uint128_t x37 = (x35 + x33);
- uint64_t x38 = (uint64_t) (x37 >> 0x35);
- uint64_t x39 = ((uint64_t)x37 & 0x1fffffffffffff);
- uint128_t x40 = (x38 + x32);
- uint64_t x41 = (uint64_t) (x40 >> 0x35);
- uint64_t x42 = ((uint64_t)x40 & 0x1fffffffffffff);
- uint128_t x43 = (x41 + x31);
- uint64_t x44 = (uint64_t) (x43 >> 0x34);
- uint64_t x45 = ((uint64_t)x43 & 0xfffffffffffff);
- uint128_t x46 = (x44 + x30);
- uint64_t x47 = (uint64_t) (x46 >> 0x35);
- uint64_t x48 = ((uint64_t)x46 & 0x1fffffffffffff);
- uint128_t x49 = (x47 + x29);
- uint64_t x50 = (uint64_t) (x49 >> 0x35);
- uint64_t x51 = ((uint64_t)x49 & 0x1fffffffffffff);
- uint128_t x52 = (x50 + x28);
- uint64_t x53 = (uint64_t) (x52 >> 0x34);
- uint64_t x54 = ((uint64_t)x52 & 0xfffffffffffff);
- uint128_t x55 = (x36 + ((uint128_t)0x19 * x53));
- uint64_t x56 = (uint64_t) (x55 >> 0x35);
- uint64_t x57 = ((uint64_t)x55 & 0x1fffffffffffff);
- uint64_t x58 = (x56 + x39);
- uint64_t x59 = (x58 >> 0x35);
- uint64_t x60 = (x58 & 0x1fffffffffffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e369m25_7limbs/femulDisplay.v b/src/Specific/solinas64_2e369m25_7limbs/femulDisplay.v
deleted file mode 100644
index e1a6bbd51..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e369m25_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e369m25_7limbs/fesquare.c b/src/Specific/solinas64_2e369m25_7limbs/fesquare.c
deleted file mode 100644
index 6f7161ef7..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x13 = (((uint128_t)x2 * x11) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x11 * x2)))))));
- { uint128_t x14 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x19 * (0x2 * ((uint128_t)x11 * x11))));
- { uint128_t x15 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x19 * ((0x2 * ((uint128_t)x12 * x11)) + (0x2 * ((uint128_t)x11 * x12)))));
- { uint128_t x16 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x19 * (((uint128_t)x10 * x11) + (((uint128_t)x12 * x12) + ((uint128_t)x11 * x10)))));
- { uint128_t x17 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x19 * ((0x2 * ((uint128_t)x8 * x11)) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (0x2 * ((uint128_t)x11 * x8)))))));
- { uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x19 * ((0x2 * ((uint128_t)x6 * x11)) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + (0x2 * ((uint128_t)x11 * x6))))))));
- { uint128_t x19 = (((uint128_t)x2 * x2) + (0x19 * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4)))))))));
- { uint128_t x20 = (x19 >> 0x35);
- { uint64_t x21 = ((uint64_t)x19 & 0x1fffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint64_t x23 = (uint64_t) (x22 >> 0x35);
- { uint64_t x24 = ((uint64_t)x22 & 0x1fffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x35);
- { uint64_t x27 = ((uint64_t)x25 & 0x1fffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x34);
- { uint64_t x30 = ((uint64_t)x28 & 0xfffffffffffff);
- { uint128_t x31 = (x29 + x15);
- { uint64_t x32 = (uint64_t) (x31 >> 0x35);
- { uint64_t x33 = ((uint64_t)x31 & 0x1fffffffffffff);
- { uint128_t x34 = (x32 + x14);
- { uint64_t x35 = (uint64_t) (x34 >> 0x35);
- { uint64_t x36 = ((uint64_t)x34 & 0x1fffffffffffff);
- { uint128_t x37 = (x35 + x13);
- { uint64_t x38 = (uint64_t) (x37 >> 0x34);
- { uint64_t x39 = ((uint64_t)x37 & 0xfffffffffffff);
- { uint128_t x40 = (x21 + ((uint128_t)0x19 * x38));
- { uint64_t x41 = (uint64_t) (x40 >> 0x35);
- { uint64_t x42 = ((uint64_t)x40 & 0x1fffffffffffff);
- { uint64_t x43 = (x41 + x24);
- { uint64_t x44 = (x43 >> 0x35);
- { uint64_t x45 = (x43 & 0x1fffffffffffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e369m25_7limbs/fesquare.v b/src/Specific/solinas64_2e369m25_7limbs/fesquare.v
deleted file mode 100644
index d0533cb57..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e369m25_7limbs.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/solinas64_2e369m25_7limbs/fesquareDisplay.log b/src/Specific/solinas64_2e369m25_7limbs/fesquareDisplay.log
deleted file mode 100644
index 546e61a09..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x13 = (((uint128_t)x2 * x11) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x11 * x2)))))));
- uint128_t x14 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x19 * (0x2 * ((uint128_t)x11 * x11))));
- uint128_t x15 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x19 * ((0x2 * ((uint128_t)x12 * x11)) + (0x2 * ((uint128_t)x11 * x12)))));
- uint128_t x16 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x19 * (((uint128_t)x10 * x11) + (((uint128_t)x12 * x12) + ((uint128_t)x11 * x10)))));
- uint128_t x17 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x19 * ((0x2 * ((uint128_t)x8 * x11)) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (0x2 * ((uint128_t)x11 * x8)))))));
- uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x19 * ((0x2 * ((uint128_t)x6 * x11)) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + (0x2 * ((uint128_t)x11 * x6))))))));
- uint128_t x19 = (((uint128_t)x2 * x2) + (0x19 * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4)))))))));
- uint128_t x20 = (x19 >> 0x35);
- uint64_t x21 = ((uint64_t)x19 & 0x1fffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint64_t x23 = (uint64_t) (x22 >> 0x35);
- uint64_t x24 = ((uint64_t)x22 & 0x1fffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x35);
- uint64_t x27 = ((uint64_t)x25 & 0x1fffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x34);
- uint64_t x30 = ((uint64_t)x28 & 0xfffffffffffff);
- uint128_t x31 = (x29 + x15);
- uint64_t x32 = (uint64_t) (x31 >> 0x35);
- uint64_t x33 = ((uint64_t)x31 & 0x1fffffffffffff);
- uint128_t x34 = (x32 + x14);
- uint64_t x35 = (uint64_t) (x34 >> 0x35);
- uint64_t x36 = ((uint64_t)x34 & 0x1fffffffffffff);
- uint128_t x37 = (x35 + x13);
- uint64_t x38 = (uint64_t) (x37 >> 0x34);
- uint64_t x39 = ((uint64_t)x37 & 0xfffffffffffff);
- uint128_t x40 = (x21 + ((uint128_t)0x19 * x38));
- uint64_t x41 = (uint64_t) (x40 >> 0x35);
- uint64_t x42 = ((uint64_t)x40 & 0x1fffffffffffff);
- uint64_t x43 = (x41 + x24);
- uint64_t x44 = (x43 >> 0x35);
- uint64_t x45 = (x43 & 0x1fffffffffffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e369m25_7limbs/fesquareDisplay.v b/src/Specific/solinas64_2e369m25_7limbs/fesquareDisplay.v
deleted file mode 100644
index f7d5daeb2..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e369m25_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e369m25_7limbs/fesub.c b/src/Specific/solinas64_2e369m25_7limbs/fesub.c
deleted file mode 100644
index 10ce97879..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = ((0x3fffffffffffce + x5) - x17);
- out[1] = ((0x3ffffffffffffe + x7) - x19);
- out[2] = ((0x3ffffffffffffe + x9) - x21);
- out[3] = ((0x1ffffffffffffe + x11) - x23);
- out[4] = ((0x3ffffffffffffe + x13) - x25);
- out[5] = ((0x3ffffffffffffe + x15) - x27);
- out[6] = ((0x1ffffffffffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e369m25_7limbs/fesub.v b/src/Specific/solinas64_2e369m25_7limbs/fesub.v
deleted file mode 100644
index 6c50a52e7..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e369m25_7limbs.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/solinas64_2e369m25_7limbs/fesubDisplay.log b/src/Specific/solinas64_2e369m25_7limbs/fesubDisplay.log
deleted file mode 100644
index b92f40f86..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0x1ffffffffffffe + x14) - x26), ((0x3ffffffffffffe + x15) - x27), ((0x3ffffffffffffe + x13) - x25), ((0x1ffffffffffffe + x11) - x23), ((0x3ffffffffffffe + x9) - x21), ((0x3ffffffffffffe + x7) - x19), ((0x3fffffffffffce + x5) - x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e369m25_7limbs/fesubDisplay.v b/src/Specific/solinas64_2e369m25_7limbs/fesubDisplay.v
deleted file mode 100644
index c0b36068e..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e369m25_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e369m25_7limbs/freeze.c b/src/Specific/solinas64_2e369m25_7limbs/freeze.c
deleted file mode 100644
index d023e0492..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffffffe7);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0x1fffffffffffff);
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0x1fffffffffffff);
- { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0xfffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0x1fffffffffffff);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0x1fffffffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0xfffffffffffff);
- { uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- { uint64_t x35 = (x34 & 0x1fffffffffffe7);
- { uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint64_t x39 = (x34 & 0x1fffffffffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint64_t x43 = (x34 & 0x1fffffffffffff);
- { uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint64_t x47 = (x34 & 0xfffffffffffff);
- { uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint64_t x51 = (x34 & 0x1fffffffffffff);
- { uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint64_t x55 = (x34 & 0x1fffffffffffff);
- { uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint64_t x59 = (x34 & 0xfffffffffffff);
- { uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e369m25_7limbs/freeze.v b/src/Specific/solinas64_2e369m25_7limbs/freeze.v
deleted file mode 100644
index 5433019dc..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e369m25_7limbs.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/solinas64_2e369m25_7limbs/freezeDisplay.log b/src/Specific/solinas64_2e369m25_7limbs/freezeDisplay.log
deleted file mode 100644
index 42550a18b..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffffffe7);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0x1fffffffffffff);
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0x1fffffffffffff);
- uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0xfffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0x1fffffffffffff);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0x1fffffffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0xfffffffffffff);
- uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- uint64_t x35 = (x34 & 0x1fffffffffffe7);
- uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint64_t x39 = (x34 & 0x1fffffffffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint64_t x43 = (x34 & 0x1fffffffffffff);
- uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint64_t x47 = (x34 & 0xfffffffffffff);
- uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint64_t x51 = (x34 & 0x1fffffffffffff);
- uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint64_t x55 = (x34 & 0x1fffffffffffff);
- uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint64_t x59 = (x34 & 0xfffffffffffff);
- uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e369m25_7limbs/freezeDisplay.v b/src/Specific/solinas64_2e369m25_7limbs/freezeDisplay.v
deleted file mode 100644
index b1b3ccfb4..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e369m25_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e369m25_7limbs/py_interpreter.sh b/src/Specific/solinas64_2e369m25_7limbs/py_interpreter.sh
deleted file mode 100755
index 96bb01399..000000000
--- a/src/Specific/solinas64_2e369m25_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**369 - 25' -Dmodulus_bytes='52 + 5/7' -Da24='121665'
diff --git a/src/Specific/solinas64_2e369m25_8limbs/CurveParameters.v b/src/Specific/solinas64_2e369m25_8limbs/CurveParameters.v
deleted file mode 100644
index f44d54162..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^369 - 25
-Base: 46.125
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 46 + 1/8;
- bitwidth := 64;
- s := 2^369;
- c := [(1, 25)];
- carry_chains := Some [seq 0 (pred 8); [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/solinas64_2e369m25_8limbs/Synthesis.v b/src/Specific/solinas64_2e369m25_8limbs/Synthesis.v
deleted file mode 100644
index ad0218535..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e369m25_8limbs.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/solinas64_2e369m25_8limbs/compiler.sh b/src/Specific/solinas64_2e369m25_8limbs/compiler.sh
deleted file mode 100755
index e9cd5313f..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,46,46,46,46,46,46,46}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='47' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<369) - 25' "$@"
diff --git a/src/Specific/solinas64_2e369m25_8limbs/compilerxx.sh b/src/Specific/solinas64_2e369m25_8limbs/compilerxx.sh
deleted file mode 100755
index 8456e5246..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,46,46,46,46,46,46,46}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe7}' -Dmodulus_bytes_val='47' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<369) - 25' "$@"
diff --git a/src/Specific/solinas64_2e369m25_8limbs/feadd.c b/src/Specific/solinas64_2e369m25_8limbs/feadd.c
deleted file mode 100644
index 4def6ee9c..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e369m25_8limbs/feadd.v b/src/Specific/solinas64_2e369m25_8limbs/feadd.v
deleted file mode 100644
index c1892f146..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e369m25_8limbs.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/solinas64_2e369m25_8limbs/feaddDisplay.log b/src/Specific/solinas64_2e369m25_8limbs/feaddDisplay.log
deleted file mode 100644
index 023fc8a31..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e369m25_8limbs/feaddDisplay.v b/src/Specific/solinas64_2e369m25_8limbs/feaddDisplay.v
deleted file mode 100644
index d926617fc..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e369m25_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e369m25_8limbs/fecarry.v b/src/Specific/solinas64_2e369m25_8limbs/fecarry.v
deleted file mode 100644
index 79291cd0d..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e369m25_8limbs.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/solinas64_2e369m25_8limbs/fecarryDisplay.v b/src/Specific/solinas64_2e369m25_8limbs/fecarryDisplay.v
deleted file mode 100644
index 9e877eddb..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e369m25_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e369m25_8limbs/femul.c b/src/Specific/solinas64_2e369m25_8limbs/femul.c
deleted file mode 100644
index 5c6fbded1..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint128_t x32 = (((uint128_t)x5 * x30) + ((0x2 * ((uint128_t)x7 * x31)) + ((0x2 * ((uint128_t)x9 * x29)) + ((0x2 * ((uint128_t)x11 * x27)) + ((0x2 * ((uint128_t)x13 * x25)) + ((0x2 * ((uint128_t)x15 * x23)) + ((0x2 * ((uint128_t)x17 * x21)) + ((uint128_t)x16 * x19))))))));
- { uint128_t x33 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + ((uint128_t)x17 * x19))))))) + (0x19 * ((uint128_t)x16 * x30)));
- { uint128_t x34 = ((((uint128_t)x5 * x29) + ((0x2 * ((uint128_t)x7 * x27)) + ((0x2 * ((uint128_t)x9 * x25)) + ((0x2 * ((uint128_t)x11 * x23)) + ((0x2 * ((uint128_t)x13 * x21)) + ((uint128_t)x15 * x19)))))) + (0x19 * (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))));
- { uint128_t x35 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + ((uint128_t)x13 * x19))))) + (0x19 * (((uint128_t)x15 * x30) + (((uint128_t)x17 * x31) + ((uint128_t)x16 * x29)))));
- { uint128_t x36 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((0x2 * ((uint128_t)x9 * x21)) + ((uint128_t)x11 * x19)))) + (0x19 * (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27))))));
- { uint128_t x37 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((uint128_t)x9 * x19))) + (0x19 * (((uint128_t)x11 * x30) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + (((uint128_t)x17 * x27) + ((uint128_t)x16 * x25)))))));
- { uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x19 * (((uint128_t)x9 * x30) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + ((uint128_t)x16 * x23))))))));
- { uint128_t x39 = (((uint128_t)x5 * x19) + (0x19 * ((0x2 * ((uint128_t)x7 * x30)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((0x2 * ((uint128_t)x17 * x23)) + (0x2 * ((uint128_t)x16 * x21))))))))));
- { uint64_t x40 = (uint64_t) (x39 >> 0x2f);
- { uint64_t x41 = ((uint64_t)x39 & 0x7fffffffffff);
- { uint128_t x42 = (x40 + x38);
- { uint64_t x43 = (uint64_t) (x42 >> 0x2e);
- { uint64_t x44 = ((uint64_t)x42 & 0x3fffffffffff);
- { uint128_t x45 = (x43 + x37);
- { uint64_t x46 = (uint64_t) (x45 >> 0x2e);
- { uint64_t x47 = ((uint64_t)x45 & 0x3fffffffffff);
- { uint128_t x48 = (x46 + x36);
- { uint64_t x49 = (uint64_t) (x48 >> 0x2e);
- { uint64_t x50 = ((uint64_t)x48 & 0x3fffffffffff);
- { uint128_t x51 = (x49 + x35);
- { uint64_t x52 = (uint64_t) (x51 >> 0x2e);
- { uint64_t x53 = ((uint64_t)x51 & 0x3fffffffffff);
- { uint128_t x54 = (x52 + x34);
- { uint64_t x55 = (uint64_t) (x54 >> 0x2e);
- { uint64_t x56 = ((uint64_t)x54 & 0x3fffffffffff);
- { uint128_t x57 = (x55 + x33);
- { uint64_t x58 = (uint64_t) (x57 >> 0x2e);
- { uint64_t x59 = ((uint64_t)x57 & 0x3fffffffffff);
- { uint128_t x60 = (x58 + x32);
- { uint64_t x61 = (uint64_t) (x60 >> 0x2e);
- { uint64_t x62 = ((uint64_t)x60 & 0x3fffffffffff);
- { uint64_t x63 = (x41 + (0x19 * x61));
- { uint64_t x64 = (x63 >> 0x2f);
- { uint64_t x65 = (x63 & 0x7fffffffffff);
- { uint64_t x66 = (x64 + x44);
- { uint64_t x67 = (x66 >> 0x2e);
- { uint64_t x68 = (x66 & 0x3fffffffffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e369m25_8limbs/femul.v b/src/Specific/solinas64_2e369m25_8limbs/femul.v
deleted file mode 100644
index e0482f432..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e369m25_8limbs.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/solinas64_2e369m25_8limbs/femulDisplay.log b/src/Specific/solinas64_2e369m25_8limbs/femulDisplay.log
deleted file mode 100644
index 7914bb499..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint128_t x32 = (((uint128_t)x5 * x30) + ((0x2 * ((uint128_t)x7 * x31)) + ((0x2 * ((uint128_t)x9 * x29)) + ((0x2 * ((uint128_t)x11 * x27)) + ((0x2 * ((uint128_t)x13 * x25)) + ((0x2 * ((uint128_t)x15 * x23)) + ((0x2 * ((uint128_t)x17 * x21)) + ((uint128_t)x16 * x19))))))));
- uint128_t x33 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + ((uint128_t)x17 * x19))))))) + (0x19 * ((uint128_t)x16 * x30)));
- uint128_t x34 = ((((uint128_t)x5 * x29) + ((0x2 * ((uint128_t)x7 * x27)) + ((0x2 * ((uint128_t)x9 * x25)) + ((0x2 * ((uint128_t)x11 * x23)) + ((0x2 * ((uint128_t)x13 * x21)) + ((uint128_t)x15 * x19)))))) + (0x19 * (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))));
- uint128_t x35 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + ((uint128_t)x13 * x19))))) + (0x19 * (((uint128_t)x15 * x30) + (((uint128_t)x17 * x31) + ((uint128_t)x16 * x29)))));
- uint128_t x36 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((0x2 * ((uint128_t)x9 * x21)) + ((uint128_t)x11 * x19)))) + (0x19 * (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27))))));
- uint128_t x37 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((uint128_t)x9 * x19))) + (0x19 * (((uint128_t)x11 * x30) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + (((uint128_t)x17 * x27) + ((uint128_t)x16 * x25)))))));
- uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x19 * (((uint128_t)x9 * x30) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + ((uint128_t)x16 * x23))))))));
- uint128_t x39 = (((uint128_t)x5 * x19) + (0x19 * ((0x2 * ((uint128_t)x7 * x30)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((0x2 * ((uint128_t)x17 * x23)) + (0x2 * ((uint128_t)x16 * x21))))))))));
- uint64_t x40 = (uint64_t) (x39 >> 0x2f);
- uint64_t x41 = ((uint64_t)x39 & 0x7fffffffffff);
- uint128_t x42 = (x40 + x38);
- uint64_t x43 = (uint64_t) (x42 >> 0x2e);
- uint64_t x44 = ((uint64_t)x42 & 0x3fffffffffff);
- uint128_t x45 = (x43 + x37);
- uint64_t x46 = (uint64_t) (x45 >> 0x2e);
- uint64_t x47 = ((uint64_t)x45 & 0x3fffffffffff);
- uint128_t x48 = (x46 + x36);
- uint64_t x49 = (uint64_t) (x48 >> 0x2e);
- uint64_t x50 = ((uint64_t)x48 & 0x3fffffffffff);
- uint128_t x51 = (x49 + x35);
- uint64_t x52 = (uint64_t) (x51 >> 0x2e);
- uint64_t x53 = ((uint64_t)x51 & 0x3fffffffffff);
- uint128_t x54 = (x52 + x34);
- uint64_t x55 = (uint64_t) (x54 >> 0x2e);
- uint64_t x56 = ((uint64_t)x54 & 0x3fffffffffff);
- uint128_t x57 = (x55 + x33);
- uint64_t x58 = (uint64_t) (x57 >> 0x2e);
- uint64_t x59 = ((uint64_t)x57 & 0x3fffffffffff);
- uint128_t x60 = (x58 + x32);
- uint64_t x61 = (uint64_t) (x60 >> 0x2e);
- uint64_t x62 = ((uint64_t)x60 & 0x3fffffffffff);
- uint64_t x63 = (x41 + (0x19 * x61));
- uint64_t x64 = (x63 >> 0x2f);
- uint64_t x65 = (x63 & 0x7fffffffffff);
- uint64_t x66 = (x64 + x44);
- uint64_t x67 = (x66 >> 0x2e);
- uint64_t x68 = (x66 & 0x3fffffffffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e369m25_8limbs/femulDisplay.v b/src/Specific/solinas64_2e369m25_8limbs/femulDisplay.v
deleted file mode 100644
index 66d409d42..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e369m25_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e369m25_8limbs/fesquare.c b/src/Specific/solinas64_2e369m25_8limbs/fesquare.c
deleted file mode 100644
index af582164e..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x15 = (((uint128_t)x2 * x13) + ((0x2 * ((uint128_t)x4 * x14)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + ((0x2 * ((uint128_t)x14 * x4)) + ((uint128_t)x13 * x2))))))));
- { uint128_t x16 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + ((0x2 * ((uint128_t)x6 * x10)) + ((0x2 * ((uint128_t)x8 * x8)) + ((0x2 * ((uint128_t)x10 * x6)) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x19 * ((uint128_t)x13 * x13)));
- { uint128_t x17 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x19 * (((uint128_t)x14 * x13) + ((uint128_t)x13 * x14))));
- { uint128_t x18 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x19 * (((uint128_t)x12 * x13) + (((uint128_t)x14 * x14) + ((uint128_t)x13 * x12)))));
- { uint128_t x19 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x19 * (((uint128_t)x10 * x13) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((uint128_t)x13 * x10))))));
- { uint128_t x20 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x19 * (((uint128_t)x8 * x13) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + (((uint128_t)x14 * x10) + ((uint128_t)x13 * x8)))))));
- { uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x19 * (((uint128_t)x6 * x13) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + ((uint128_t)x13 * x6))))))));
- { uint128_t x22 = (((uint128_t)x2 * x2) + (0x19 * ((0x2 * ((uint128_t)x4 * x13)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + (0x2 * ((uint128_t)x13 * x4))))))))));
- { uint64_t x23 = (uint64_t) (x22 >> 0x2f);
- { uint64_t x24 = ((uint64_t)x22 & 0x7fffffffffff);
- { uint128_t x25 = (x23 + x21);
- { uint64_t x26 = (uint64_t) (x25 >> 0x2e);
- { uint64_t x27 = ((uint64_t)x25 & 0x3fffffffffff);
- { uint128_t x28 = (x26 + x20);
- { uint64_t x29 = (uint64_t) (x28 >> 0x2e);
- { uint64_t x30 = ((uint64_t)x28 & 0x3fffffffffff);
- { uint128_t x31 = (x29 + x19);
- { uint64_t x32 = (uint64_t) (x31 >> 0x2e);
- { uint64_t x33 = ((uint64_t)x31 & 0x3fffffffffff);
- { uint128_t x34 = (x32 + x18);
- { uint64_t x35 = (uint64_t) (x34 >> 0x2e);
- { uint64_t x36 = ((uint64_t)x34 & 0x3fffffffffff);
- { uint128_t x37 = (x35 + x17);
- { uint64_t x38 = (uint64_t) (x37 >> 0x2e);
- { uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffff);
- { uint128_t x40 = (x38 + x16);
- { uint64_t x41 = (uint64_t) (x40 >> 0x2e);
- { uint64_t x42 = ((uint64_t)x40 & 0x3fffffffffff);
- { uint128_t x43 = (x41 + x15);
- { uint64_t x44 = (uint64_t) (x43 >> 0x2e);
- { uint64_t x45 = ((uint64_t)x43 & 0x3fffffffffff);
- { uint64_t x46 = (x24 + (0x19 * x44));
- { uint64_t x47 = (x46 >> 0x2f);
- { uint64_t x48 = (x46 & 0x7fffffffffff);
- { uint64_t x49 = (x47 + x27);
- { uint64_t x50 = (x49 >> 0x2e);
- { uint64_t x51 = (x49 & 0x3fffffffffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e369m25_8limbs/fesquare.v b/src/Specific/solinas64_2e369m25_8limbs/fesquare.v
deleted file mode 100644
index 7c6b393ea..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e369m25_8limbs.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/solinas64_2e369m25_8limbs/fesquareDisplay.log b/src/Specific/solinas64_2e369m25_8limbs/fesquareDisplay.log
deleted file mode 100644
index c27dfaf7f..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x15 = (((uint128_t)x2 * x13) + ((0x2 * ((uint128_t)x4 * x14)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + ((0x2 * ((uint128_t)x14 * x4)) + ((uint128_t)x13 * x2))))))));
- uint128_t x16 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + ((0x2 * ((uint128_t)x6 * x10)) + ((0x2 * ((uint128_t)x8 * x8)) + ((0x2 * ((uint128_t)x10 * x6)) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x19 * ((uint128_t)x13 * x13)));
- uint128_t x17 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x19 * (((uint128_t)x14 * x13) + ((uint128_t)x13 * x14))));
- uint128_t x18 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x19 * (((uint128_t)x12 * x13) + (((uint128_t)x14 * x14) + ((uint128_t)x13 * x12)))));
- uint128_t x19 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x19 * (((uint128_t)x10 * x13) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((uint128_t)x13 * x10))))));
- uint128_t x20 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x19 * (((uint128_t)x8 * x13) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + (((uint128_t)x14 * x10) + ((uint128_t)x13 * x8)))))));
- uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x19 * (((uint128_t)x6 * x13) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + ((uint128_t)x13 * x6))))))));
- uint128_t x22 = (((uint128_t)x2 * x2) + (0x19 * ((0x2 * ((uint128_t)x4 * x13)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + (0x2 * ((uint128_t)x13 * x4))))))))));
- uint64_t x23 = (uint64_t) (x22 >> 0x2f);
- uint64_t x24 = ((uint64_t)x22 & 0x7fffffffffff);
- uint128_t x25 = (x23 + x21);
- uint64_t x26 = (uint64_t) (x25 >> 0x2e);
- uint64_t x27 = ((uint64_t)x25 & 0x3fffffffffff);
- uint128_t x28 = (x26 + x20);
- uint64_t x29 = (uint64_t) (x28 >> 0x2e);
- uint64_t x30 = ((uint64_t)x28 & 0x3fffffffffff);
- uint128_t x31 = (x29 + x19);
- uint64_t x32 = (uint64_t) (x31 >> 0x2e);
- uint64_t x33 = ((uint64_t)x31 & 0x3fffffffffff);
- uint128_t x34 = (x32 + x18);
- uint64_t x35 = (uint64_t) (x34 >> 0x2e);
- uint64_t x36 = ((uint64_t)x34 & 0x3fffffffffff);
- uint128_t x37 = (x35 + x17);
- uint64_t x38 = (uint64_t) (x37 >> 0x2e);
- uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffff);
- uint128_t x40 = (x38 + x16);
- uint64_t x41 = (uint64_t) (x40 >> 0x2e);
- uint64_t x42 = ((uint64_t)x40 & 0x3fffffffffff);
- uint128_t x43 = (x41 + x15);
- uint64_t x44 = (uint64_t) (x43 >> 0x2e);
- uint64_t x45 = ((uint64_t)x43 & 0x3fffffffffff);
- uint64_t x46 = (x24 + (0x19 * x44));
- uint64_t x47 = (x46 >> 0x2f);
- uint64_t x48 = (x46 & 0x7fffffffffff);
- uint64_t x49 = (x47 + x27);
- uint64_t x50 = (x49 >> 0x2e);
- uint64_t x51 = (x49 & 0x3fffffffffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e369m25_8limbs/fesquareDisplay.v b/src/Specific/solinas64_2e369m25_8limbs/fesquareDisplay.v
deleted file mode 100644
index 3fc296ae4..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e369m25_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e369m25_8limbs/fesub.c b/src/Specific/solinas64_2e369m25_8limbs/fesub.c
deleted file mode 100644
index b5ebd49a4..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = ((0xffffffffffce + x5) - x19);
- out[1] = ((0x7ffffffffffe + x7) - x21);
- out[2] = ((0x7ffffffffffe + x9) - x23);
- out[3] = ((0x7ffffffffffe + x11) - x25);
- out[4] = ((0x7ffffffffffe + x13) - x27);
- out[5] = ((0x7ffffffffffe + x15) - x29);
- out[6] = ((0x7ffffffffffe + x17) - x31);
- out[7] = ((0x7ffffffffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e369m25_8limbs/fesub.v b/src/Specific/solinas64_2e369m25_8limbs/fesub.v
deleted file mode 100644
index a11d8ce05..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e369m25_8limbs.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/solinas64_2e369m25_8limbs/fesubDisplay.log b/src/Specific/solinas64_2e369m25_8limbs/fesubDisplay.log
deleted file mode 100644
index 4001ced5a..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0x7ffffffffffe + x16) - x30), ((0x7ffffffffffe + x17) - x31), ((0x7ffffffffffe + x15) - x29), ((0x7ffffffffffe + x13) - x27), ((0x7ffffffffffe + x11) - x25), ((0x7ffffffffffe + x9) - x23), ((0x7ffffffffffe + x7) - x21), ((0xffffffffffce + x5) - x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e369m25_8limbs/fesubDisplay.v b/src/Specific/solinas64_2e369m25_8limbs/fesubDisplay.v
deleted file mode 100644
index 0fbf5f29c..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e369m25_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e369m25_8limbs/freeze.c b/src/Specific/solinas64_2e369m25_8limbs/freeze.c
deleted file mode 100644
index 975828002..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffe7);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0x3fffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0x3fffffffffff);
- { uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0x3fffffffffff);
- { uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0x3fffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0x3fffffffffff);
- { uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0x3fffffffffff);
- { uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0x3fffffffffff);
- { uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- { uint64_t x40 = (x39 & 0x7fffffffffe7);
- { uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint64_t x44 = (x39 & 0x3fffffffffff);
- { uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint64_t x48 = (x39 & 0x3fffffffffff);
- { uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint64_t x52 = (x39 & 0x3fffffffffff);
- { uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint64_t x56 = (x39 & 0x3fffffffffff);
- { uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint64_t x60 = (x39 & 0x3fffffffffff);
- { uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint64_t x64 = (x39 & 0x3fffffffffff);
- { uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint64_t x68 = (x39 & 0x3fffffffffff);
- { uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e369m25_8limbs/freeze.v b/src/Specific/solinas64_2e369m25_8limbs/freeze.v
deleted file mode 100644
index bdb85ed3f..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e369m25_8limbs.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/solinas64_2e369m25_8limbs/freezeDisplay.log b/src/Specific/solinas64_2e369m25_8limbs/freezeDisplay.log
deleted file mode 100644
index 576115614..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffe7);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0x3fffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0x3fffffffffff);
- uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0x3fffffffffff);
- uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0x3fffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0x3fffffffffff);
- uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0x3fffffffffff);
- uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0x3fffffffffff);
- uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- uint64_t x40 = (x39 & 0x7fffffffffe7);
- uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint64_t x44 = (x39 & 0x3fffffffffff);
- uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint64_t x48 = (x39 & 0x3fffffffffff);
- uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint64_t x52 = (x39 & 0x3fffffffffff);
- uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint64_t x56 = (x39 & 0x3fffffffffff);
- uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint64_t x60 = (x39 & 0x3fffffffffff);
- uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint64_t x64 = (x39 & 0x3fffffffffff);
- uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint64_t x68 = (x39 & 0x3fffffffffff);
- uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e369m25_8limbs/freezeDisplay.v b/src/Specific/solinas64_2e369m25_8limbs/freezeDisplay.v
deleted file mode 100644
index c792e1d68..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e369m25_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e369m25_8limbs/py_interpreter.sh b/src/Specific/solinas64_2e369m25_8limbs/py_interpreter.sh
deleted file mode 100755
index e58511182..000000000
--- a/src/Specific/solinas64_2e369m25_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**369 - 25' -Dmodulus_bytes='46.125' -Da24='121665'
diff --git a/src/Specific/solinas64_2e379m19_7limbs/CurveParameters.v b/src/Specific/solinas64_2e379m19_7limbs/CurveParameters.v
deleted file mode 100644
index b7b223fa9..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^379 - 19
-Base: 54 + 1/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 54 + 1/7;
- bitwidth := 64;
- s := 2^379;
- c := [(1, 19)];
- carry_chains := Some [seq 0 (pred 7); [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/solinas64_2e379m19_7limbs/Synthesis.v b/src/Specific/solinas64_2e379m19_7limbs/Synthesis.v
deleted file mode 100644
index ebefcf71e..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e379m19_7limbs.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/solinas64_2e379m19_7limbs/compiler.sh b/src/Specific/solinas64_2e379m19_7limbs/compiler.sh
deleted file mode 100755
index 93a23eae4..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,54,54,54,54,54,54}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<379) - 19' "$@"
diff --git a/src/Specific/solinas64_2e379m19_7limbs/compilerxx.sh b/src/Specific/solinas64_2e379m19_7limbs/compilerxx.sh
deleted file mode 100755
index 4421aa733..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,54,54,54,54,54,54}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<379) - 19' "$@"
diff --git a/src/Specific/solinas64_2e379m19_7limbs/feadd.c b/src/Specific/solinas64_2e379m19_7limbs/feadd.c
deleted file mode 100644
index 9acf97578..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e379m19_7limbs/feadd.v b/src/Specific/solinas64_2e379m19_7limbs/feadd.v
deleted file mode 100644
index c69094f7d..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e379m19_7limbs.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/solinas64_2e379m19_7limbs/feaddDisplay.log b/src/Specific/solinas64_2e379m19_7limbs/feaddDisplay.log
deleted file mode 100644
index 6320440fc..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e379m19_7limbs/feaddDisplay.v b/src/Specific/solinas64_2e379m19_7limbs/feaddDisplay.v
deleted file mode 100644
index 55239d2cb..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e379m19_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e379m19_7limbs/fecarry.v b/src/Specific/solinas64_2e379m19_7limbs/fecarry.v
deleted file mode 100644
index 70a4efe5e..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e379m19_7limbs.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/solinas64_2e379m19_7limbs/fecarryDisplay.v b/src/Specific/solinas64_2e379m19_7limbs/fecarryDisplay.v
deleted file mode 100644
index daf5c6bd9..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e379m19_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e379m19_7limbs/femul.c b/src/Specific/solinas64_2e379m19_7limbs/femul.c
deleted file mode 100644
index 13915c820..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- { uint128_t x28 = (((uint128_t)x5 * x26) + ((0x2 * ((uint128_t)x7 * x27)) + ((0x2 * ((uint128_t)x9 * x25)) + ((0x2 * ((uint128_t)x11 * x23)) + ((0x2 * ((uint128_t)x13 * x21)) + ((0x2 * ((uint128_t)x15 * x19)) + ((uint128_t)x14 * x17)))))));
- { uint128_t x29 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + ((0x2 * ((uint128_t)x13 * x19)) + ((uint128_t)x15 * x17)))))) + (0x13 * ((uint128_t)x14 * x26)));
- { uint128_t x30 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((0x2 * ((uint128_t)x9 * x21)) + ((0x2 * ((uint128_t)x11 * x19)) + ((uint128_t)x13 * x17))))) + (0x13 * (((uint128_t)x15 * x26) + ((uint128_t)x14 * x27))));
- { uint128_t x31 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((0x2 * ((uint128_t)x9 * x19)) + ((uint128_t)x11 * x17)))) + (0x13 * (((uint128_t)x13 * x26) + (((uint128_t)x15 * x27) + ((uint128_t)x14 * x25)))));
- { uint128_t x32 = ((((uint128_t)x5 * x21) + ((0x2 * ((uint128_t)x7 * x19)) + ((uint128_t)x9 * x17))) + (0x13 * (((uint128_t)x11 * x26) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + ((uint128_t)x14 * x23))))));
- { uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0x13 * (((uint128_t)x9 * x26) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + ((uint128_t)x14 * x21)))))));
- { uint128_t x34 = (((uint128_t)x5 * x17) + (0x13 * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19)))))))));
- { uint128_t x35 = (x34 >> 0x37);
- { uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- { uint128_t x37 = (x35 + x33);
- { uint128_t x38 = (x37 >> 0x36);
- { uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffffff);
- { uint128_t x40 = (x38 + x32);
- { uint64_t x41 = (uint64_t) (x40 >> 0x36);
- { uint64_t x42 = ((uint64_t)x40 & 0x3fffffffffffff);
- { uint128_t x43 = (x41 + x31);
- { uint64_t x44 = (uint64_t) (x43 >> 0x36);
- { uint64_t x45 = ((uint64_t)x43 & 0x3fffffffffffff);
- { uint128_t x46 = (x44 + x30);
- { uint64_t x47 = (uint64_t) (x46 >> 0x36);
- { uint64_t x48 = ((uint64_t)x46 & 0x3fffffffffffff);
- { uint128_t x49 = (x47 + x29);
- { uint64_t x50 = (uint64_t) (x49 >> 0x36);
- { uint64_t x51 = ((uint64_t)x49 & 0x3fffffffffffff);
- { uint128_t x52 = (x50 + x28);
- { uint64_t x53 = (uint64_t) (x52 >> 0x36);
- { uint64_t x54 = ((uint64_t)x52 & 0x3fffffffffffff);
- { uint128_t x55 = (x36 + ((uint128_t)0x13 * x53));
- { uint64_t x56 = (uint64_t) (x55 >> 0x37);
- { uint64_t x57 = ((uint64_t)x55 & 0x7fffffffffffff);
- { uint64_t x58 = (x56 + x39);
- { uint64_t x59 = (x58 >> 0x36);
- { uint64_t x60 = (x58 & 0x3fffffffffffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e379m19_7limbs/femul.v b/src/Specific/solinas64_2e379m19_7limbs/femul.v
deleted file mode 100644
index b528319c3..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e379m19_7limbs.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/solinas64_2e379m19_7limbs/femulDisplay.log b/src/Specific/solinas64_2e379m19_7limbs/femulDisplay.log
deleted file mode 100644
index dabe48b5c..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint128_t x28 = (((uint128_t)x5 * x26) + ((0x2 * ((uint128_t)x7 * x27)) + ((0x2 * ((uint128_t)x9 * x25)) + ((0x2 * ((uint128_t)x11 * x23)) + ((0x2 * ((uint128_t)x13 * x21)) + ((0x2 * ((uint128_t)x15 * x19)) + ((uint128_t)x14 * x17)))))));
- uint128_t x29 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + ((0x2 * ((uint128_t)x13 * x19)) + ((uint128_t)x15 * x17)))))) + (0x13 * ((uint128_t)x14 * x26)));
- uint128_t x30 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((0x2 * ((uint128_t)x9 * x21)) + ((0x2 * ((uint128_t)x11 * x19)) + ((uint128_t)x13 * x17))))) + (0x13 * (((uint128_t)x15 * x26) + ((uint128_t)x14 * x27))));
- uint128_t x31 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((0x2 * ((uint128_t)x9 * x19)) + ((uint128_t)x11 * x17)))) + (0x13 * (((uint128_t)x13 * x26) + (((uint128_t)x15 * x27) + ((uint128_t)x14 * x25)))));
- uint128_t x32 = ((((uint128_t)x5 * x21) + ((0x2 * ((uint128_t)x7 * x19)) + ((uint128_t)x9 * x17))) + (0x13 * (((uint128_t)x11 * x26) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + ((uint128_t)x14 * x23))))));
- uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0x13 * (((uint128_t)x9 * x26) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + ((uint128_t)x14 * x21)))))));
- uint128_t x34 = (((uint128_t)x5 * x17) + (0x13 * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19)))))))));
- uint128_t x35 = (x34 >> 0x37);
- uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- uint128_t x37 = (x35 + x33);
- uint128_t x38 = (x37 >> 0x36);
- uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffffff);
- uint128_t x40 = (x38 + x32);
- uint64_t x41 = (uint64_t) (x40 >> 0x36);
- uint64_t x42 = ((uint64_t)x40 & 0x3fffffffffffff);
- uint128_t x43 = (x41 + x31);
- uint64_t x44 = (uint64_t) (x43 >> 0x36);
- uint64_t x45 = ((uint64_t)x43 & 0x3fffffffffffff);
- uint128_t x46 = (x44 + x30);
- uint64_t x47 = (uint64_t) (x46 >> 0x36);
- uint64_t x48 = ((uint64_t)x46 & 0x3fffffffffffff);
- uint128_t x49 = (x47 + x29);
- uint64_t x50 = (uint64_t) (x49 >> 0x36);
- uint64_t x51 = ((uint64_t)x49 & 0x3fffffffffffff);
- uint128_t x52 = (x50 + x28);
- uint64_t x53 = (uint64_t) (x52 >> 0x36);
- uint64_t x54 = ((uint64_t)x52 & 0x3fffffffffffff);
- uint128_t x55 = (x36 + ((uint128_t)0x13 * x53));
- uint64_t x56 = (uint64_t) (x55 >> 0x37);
- uint64_t x57 = ((uint64_t)x55 & 0x7fffffffffffff);
- uint64_t x58 = (x56 + x39);
- uint64_t x59 = (x58 >> 0x36);
- uint64_t x60 = (x58 & 0x3fffffffffffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e379m19_7limbs/femulDisplay.v b/src/Specific/solinas64_2e379m19_7limbs/femulDisplay.v
deleted file mode 100644
index 767090b57..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e379m19_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e379m19_7limbs/fesquare.c b/src/Specific/solinas64_2e379m19_7limbs/fesquare.c
deleted file mode 100644
index e2ddf49ac..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x13 = (((uint128_t)x2 * x11) + ((0x2 * ((uint128_t)x4 * x12)) + ((0x2 * ((uint128_t)x6 * x10)) + ((0x2 * ((uint128_t)x8 * x8)) + ((0x2 * ((uint128_t)x10 * x6)) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x11 * x2)))))));
- { uint128_t x14 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x13 * ((uint128_t)x11 * x11)));
- { uint128_t x15 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x13 * (((uint128_t)x12 * x11) + ((uint128_t)x11 * x12))));
- { uint128_t x16 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x13 * (((uint128_t)x10 * x11) + (((uint128_t)x12 * x12) + ((uint128_t)x11 * x10)))));
- { uint128_t x17 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x13 * (((uint128_t)x8 * x11) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + ((uint128_t)x11 * x8))))));
- { uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x13 * (((uint128_t)x6 * x11) + (((uint128_t)x8 * x12) + (((uint128_t)x10 * x10) + (((uint128_t)x12 * x8) + ((uint128_t)x11 * x6)))))));
- { uint128_t x19 = (((uint128_t)x2 * x2) + (0x13 * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4)))))))));
- { uint128_t x20 = (x19 >> 0x37);
- { uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint128_t x23 = (x22 >> 0x36);
- { uint64_t x24 = ((uint64_t)x22 & 0x3fffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint64_t x26 = (uint64_t) (x25 >> 0x36);
- { uint64_t x27 = ((uint64_t)x25 & 0x3fffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint64_t x29 = (uint64_t) (x28 >> 0x36);
- { uint64_t x30 = ((uint64_t)x28 & 0x3fffffffffffff);
- { uint128_t x31 = (x29 + x15);
- { uint64_t x32 = (uint64_t) (x31 >> 0x36);
- { uint64_t x33 = ((uint64_t)x31 & 0x3fffffffffffff);
- { uint128_t x34 = (x32 + x14);
- { uint64_t x35 = (uint64_t) (x34 >> 0x36);
- { uint64_t x36 = ((uint64_t)x34 & 0x3fffffffffffff);
- { uint128_t x37 = (x35 + x13);
- { uint64_t x38 = (uint64_t) (x37 >> 0x36);
- { uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffffff);
- { uint128_t x40 = (x21 + ((uint128_t)0x13 * x38));
- { uint64_t x41 = (uint64_t) (x40 >> 0x37);
- { uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffffff);
- { uint64_t x43 = (x41 + x24);
- { uint64_t x44 = (x43 >> 0x36);
- { uint64_t x45 = (x43 & 0x3fffffffffffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e379m19_7limbs/fesquare.v b/src/Specific/solinas64_2e379m19_7limbs/fesquare.v
deleted file mode 100644
index e5a68b2e8..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e379m19_7limbs.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/solinas64_2e379m19_7limbs/fesquareDisplay.log b/src/Specific/solinas64_2e379m19_7limbs/fesquareDisplay.log
deleted file mode 100644
index 90ba6043f..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x13 = (((uint128_t)x2 * x11) + ((0x2 * ((uint128_t)x4 * x12)) + ((0x2 * ((uint128_t)x6 * x10)) + ((0x2 * ((uint128_t)x8 * x8)) + ((0x2 * ((uint128_t)x10 * x6)) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x11 * x2)))))));
- uint128_t x14 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x13 * ((uint128_t)x11 * x11)));
- uint128_t x15 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x13 * (((uint128_t)x12 * x11) + ((uint128_t)x11 * x12))));
- uint128_t x16 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x13 * (((uint128_t)x10 * x11) + (((uint128_t)x12 * x12) + ((uint128_t)x11 * x10)))));
- uint128_t x17 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x13 * (((uint128_t)x8 * x11) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + ((uint128_t)x11 * x8))))));
- uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x13 * (((uint128_t)x6 * x11) + (((uint128_t)x8 * x12) + (((uint128_t)x10 * x10) + (((uint128_t)x12 * x8) + ((uint128_t)x11 * x6)))))));
- uint128_t x19 = (((uint128_t)x2 * x2) + (0x13 * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4)))))))));
- uint128_t x20 = (x19 >> 0x37);
- uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint128_t x23 = (x22 >> 0x36);
- uint64_t x24 = ((uint64_t)x22 & 0x3fffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint64_t x26 = (uint64_t) (x25 >> 0x36);
- uint64_t x27 = ((uint64_t)x25 & 0x3fffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint64_t x29 = (uint64_t) (x28 >> 0x36);
- uint64_t x30 = ((uint64_t)x28 & 0x3fffffffffffff);
- uint128_t x31 = (x29 + x15);
- uint64_t x32 = (uint64_t) (x31 >> 0x36);
- uint64_t x33 = ((uint64_t)x31 & 0x3fffffffffffff);
- uint128_t x34 = (x32 + x14);
- uint64_t x35 = (uint64_t) (x34 >> 0x36);
- uint64_t x36 = ((uint64_t)x34 & 0x3fffffffffffff);
- uint128_t x37 = (x35 + x13);
- uint64_t x38 = (uint64_t) (x37 >> 0x36);
- uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffffff);
- uint128_t x40 = (x21 + ((uint128_t)0x13 * x38));
- uint64_t x41 = (uint64_t) (x40 >> 0x37);
- uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffffff);
- uint64_t x43 = (x41 + x24);
- uint64_t x44 = (x43 >> 0x36);
- uint64_t x45 = (x43 & 0x3fffffffffffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e379m19_7limbs/fesquareDisplay.v b/src/Specific/solinas64_2e379m19_7limbs/fesquareDisplay.v
deleted file mode 100644
index 5d0faf2e1..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e379m19_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e379m19_7limbs/fesub.c b/src/Specific/solinas64_2e379m19_7limbs/fesub.c
deleted file mode 100644
index e888ad3f0..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = ((0xffffffffffffda + x5) - x17);
- out[1] = ((0x7ffffffffffffe + x7) - x19);
- out[2] = ((0x7ffffffffffffe + x9) - x21);
- out[3] = ((0x7ffffffffffffe + x11) - x23);
- out[4] = ((0x7ffffffffffffe + x13) - x25);
- out[5] = ((0x7ffffffffffffe + x15) - x27);
- out[6] = ((0x7ffffffffffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e379m19_7limbs/fesub.v b/src/Specific/solinas64_2e379m19_7limbs/fesub.v
deleted file mode 100644
index c6a487129..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e379m19_7limbs.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/solinas64_2e379m19_7limbs/fesubDisplay.log b/src/Specific/solinas64_2e379m19_7limbs/fesubDisplay.log
deleted file mode 100644
index 30992c3d8..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0x7ffffffffffffe + x14) - x26), ((0x7ffffffffffffe + x15) - x27), ((0x7ffffffffffffe + x13) - x25), ((0x7ffffffffffffe + x11) - x23), ((0x7ffffffffffffe + x9) - x21), ((0x7ffffffffffffe + x7) - x19), ((0xffffffffffffda + x5) - x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e379m19_7limbs/fesubDisplay.v b/src/Specific/solinas64_2e379m19_7limbs/fesubDisplay.v
deleted file mode 100644
index 6acfaf740..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e379m19_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e379m19_7limbs/freeze.c b/src/Specific/solinas64_2e379m19_7limbs/freeze.c
deleted file mode 100644
index f1a2abbfb..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffffed);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0x3fffffffffffff);
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0x3fffffffffffff);
- { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0x3fffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0x3fffffffffffff);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0x3fffffffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0x3fffffffffffff);
- { uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- { uint64_t x35 = (x34 & 0x7fffffffffffed);
- { uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint64_t x39 = (x34 & 0x3fffffffffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint64_t x43 = (x34 & 0x3fffffffffffff);
- { uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint64_t x47 = (x34 & 0x3fffffffffffff);
- { uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint64_t x51 = (x34 & 0x3fffffffffffff);
- { uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint64_t x55 = (x34 & 0x3fffffffffffff);
- { uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint64_t x59 = (x34 & 0x3fffffffffffff);
- { uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e379m19_7limbs/freeze.v b/src/Specific/solinas64_2e379m19_7limbs/freeze.v
deleted file mode 100644
index 32fd6de2b..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e379m19_7limbs.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/solinas64_2e379m19_7limbs/freezeDisplay.log b/src/Specific/solinas64_2e379m19_7limbs/freezeDisplay.log
deleted file mode 100644
index bd8d59c3b..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffffed);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0x3fffffffffffff);
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0x3fffffffffffff);
- uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0x3fffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0x3fffffffffffff);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0x3fffffffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0x3fffffffffffff);
- uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- uint64_t x35 = (x34 & 0x7fffffffffffed);
- uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint64_t x39 = (x34 & 0x3fffffffffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint64_t x43 = (x34 & 0x3fffffffffffff);
- uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint64_t x47 = (x34 & 0x3fffffffffffff);
- uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint64_t x51 = (x34 & 0x3fffffffffffff);
- uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint64_t x55 = (x34 & 0x3fffffffffffff);
- uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint64_t x59 = (x34 & 0x3fffffffffffff);
- uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e379m19_7limbs/freezeDisplay.v b/src/Specific/solinas64_2e379m19_7limbs/freezeDisplay.v
deleted file mode 100644
index 9ab093afc..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e379m19_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e379m19_7limbs/py_interpreter.sh b/src/Specific/solinas64_2e379m19_7limbs/py_interpreter.sh
deleted file mode 100755
index 36bc36aaa..000000000
--- a/src/Specific/solinas64_2e379m19_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**379 - 19' -Dmodulus_bytes='54 + 1/7' -Da24='121665'
diff --git a/src/Specific/solinas64_2e379m19_8limbs/CurveParameters.v b/src/Specific/solinas64_2e379m19_8limbs/CurveParameters.v
deleted file mode 100644
index 4e0f43636..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^379 - 19
-Base: 47.375
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 47 + 3/8;
- bitwidth := 64;
- s := 2^379;
- c := [(1, 19)];
- carry_chains := Some [seq 0 (pred 8); [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/solinas64_2e379m19_8limbs/Synthesis.v b/src/Specific/solinas64_2e379m19_8limbs/Synthesis.v
deleted file mode 100644
index 36b68dc57..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e379m19_8limbs.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/solinas64_2e379m19_8limbs/compiler.sh b/src/Specific/solinas64_2e379m19_8limbs/compiler.sh
deleted file mode 100755
index e14fb7b72..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,47,48,47,47,48,47,47}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<379) - 19' "$@"
diff --git a/src/Specific/solinas64_2e379m19_8limbs/compilerxx.sh b/src/Specific/solinas64_2e379m19_8limbs/compilerxx.sh
deleted file mode 100755
index 04af3d947..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,47,48,47,47,48,47,47}' -Dmodulus_array='{0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xed}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<379) - 19' "$@"
diff --git a/src/Specific/solinas64_2e379m19_8limbs/feadd.c b/src/Specific/solinas64_2e379m19_8limbs/feadd.c
deleted file mode 100644
index 4def6ee9c..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e379m19_8limbs/feadd.v b/src/Specific/solinas64_2e379m19_8limbs/feadd.v
deleted file mode 100644
index a2e5a5093..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e379m19_8limbs.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/solinas64_2e379m19_8limbs/feaddDisplay.log b/src/Specific/solinas64_2e379m19_8limbs/feaddDisplay.log
deleted file mode 100644
index 023fc8a31..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e379m19_8limbs/feaddDisplay.v b/src/Specific/solinas64_2e379m19_8limbs/feaddDisplay.v
deleted file mode 100644
index 20961224c..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e379m19_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e379m19_8limbs/fecarry.v b/src/Specific/solinas64_2e379m19_8limbs/fecarry.v
deleted file mode 100644
index 266685f6f..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e379m19_8limbs.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/solinas64_2e379m19_8limbs/fecarryDisplay.v b/src/Specific/solinas64_2e379m19_8limbs/fecarryDisplay.v
deleted file mode 100644
index f763edb44..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e379m19_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e379m19_8limbs/femul.c b/src/Specific/solinas64_2e379m19_8limbs/femul.c
deleted file mode 100644
index f79b222d2..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint128_t x32 = (((uint128_t)x5 * x30) + ((0x2 * ((uint128_t)x7 * x31)) + (((uint128_t)x9 * x29) + ((0x2 * ((uint128_t)x11 * x27)) + ((0x2 * ((uint128_t)x13 * x25)) + (((uint128_t)x15 * x23) + ((0x2 * ((uint128_t)x17 * x21)) + ((uint128_t)x16 * x19))))))));
- { uint128_t x33 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + ((0x2 * ((uint128_t)x11 * x25)) + (((uint128_t)x13 * x23) + (((uint128_t)x15 * x21) + ((uint128_t)x17 * x19))))))) + (0x13 * ((uint128_t)x16 * x30)));
- { uint128_t x34 = ((((uint128_t)x5 * x29) + ((0x2 * ((uint128_t)x7 * x27)) + ((0x2 * ((uint128_t)x9 * x25)) + ((0x2 * ((uint128_t)x11 * x23)) + ((0x2 * ((uint128_t)x13 * x21)) + ((uint128_t)x15 * x19)))))) + (0x13 * ((0x2 * ((uint128_t)x17 * x30)) + (0x2 * ((uint128_t)x16 * x31)))));
- { uint128_t x35 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + (((uint128_t)x9 * x23) + ((0x2 * ((uint128_t)x11 * x21)) + ((uint128_t)x13 * x19))))) + (0x13 * (((uint128_t)x15 * x30) + ((0x2 * ((uint128_t)x17 * x31)) + ((uint128_t)x16 * x29)))));
- { uint128_t x36 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (0x13 * (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27))))));
- { uint128_t x37 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((uint128_t)x9 * x19))) + (0x13 * ((0x2 * ((uint128_t)x11 * x30)) + ((0x2 * ((uint128_t)x13 * x31)) + (((uint128_t)x15 * x29) + ((0x2 * ((uint128_t)x17 * x27)) + (0x2 * ((uint128_t)x16 * x25))))))));
- { uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x13 * (((uint128_t)x9 * x30) + ((0x2 * ((uint128_t)x11 * x31)) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + ((0x2 * ((uint128_t)x17 * x25)) + ((uint128_t)x16 * x23))))))));
- { uint128_t x39 = (((uint128_t)x5 * x19) + (0x13 * ((0x2 * ((uint128_t)x7 * x30)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((0x2 * ((uint128_t)x17 * x23)) + (0x2 * ((uint128_t)x16 * x21))))))))));
- { uint64_t x40 = (uint64_t) (x39 >> 0x30);
- { uint64_t x41 = ((uint64_t)x39 & 0xffffffffffff);
- { uint128_t x42 = (x40 + x38);
- { uint64_t x43 = (uint64_t) (x42 >> 0x2f);
- { uint64_t x44 = ((uint64_t)x42 & 0x7fffffffffff);
- { uint128_t x45 = (x43 + x37);
- { uint64_t x46 = (uint64_t) (x45 >> 0x30);
- { uint64_t x47 = ((uint64_t)x45 & 0xffffffffffff);
- { uint128_t x48 = (x46 + x36);
- { uint64_t x49 = (uint64_t) (x48 >> 0x2f);
- { uint64_t x50 = ((uint64_t)x48 & 0x7fffffffffff);
- { uint128_t x51 = (x49 + x35);
- { uint64_t x52 = (uint64_t) (x51 >> 0x2f);
- { uint64_t x53 = ((uint64_t)x51 & 0x7fffffffffff);
- { uint128_t x54 = (x52 + x34);
- { uint64_t x55 = (uint64_t) (x54 >> 0x30);
- { uint64_t x56 = ((uint64_t)x54 & 0xffffffffffff);
- { uint128_t x57 = (x55 + x33);
- { uint64_t x58 = (uint64_t) (x57 >> 0x2f);
- { uint64_t x59 = ((uint64_t)x57 & 0x7fffffffffff);
- { uint128_t x60 = (x58 + x32);
- { uint64_t x61 = (uint64_t) (x60 >> 0x2f);
- { uint64_t x62 = ((uint64_t)x60 & 0x7fffffffffff);
- { uint64_t x63 = (x41 + (0x13 * x61));
- { uint64_t x64 = (x63 >> 0x30);
- { uint64_t x65 = (x63 & 0xffffffffffff);
- { uint64_t x66 = (x64 + x44);
- { uint64_t x67 = (x66 >> 0x2f);
- { uint64_t x68 = (x66 & 0x7fffffffffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e379m19_8limbs/femul.v b/src/Specific/solinas64_2e379m19_8limbs/femul.v
deleted file mode 100644
index b54cab6ec..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e379m19_8limbs.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/solinas64_2e379m19_8limbs/femulDisplay.log b/src/Specific/solinas64_2e379m19_8limbs/femulDisplay.log
deleted file mode 100644
index 464386c79..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint128_t x32 = (((uint128_t)x5 * x30) + ((0x2 * ((uint128_t)x7 * x31)) + (((uint128_t)x9 * x29) + ((0x2 * ((uint128_t)x11 * x27)) + ((0x2 * ((uint128_t)x13 * x25)) + (((uint128_t)x15 * x23) + ((0x2 * ((uint128_t)x17 * x21)) + ((uint128_t)x16 * x19))))))));
- uint128_t x33 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + ((0x2 * ((uint128_t)x11 * x25)) + (((uint128_t)x13 * x23) + (((uint128_t)x15 * x21) + ((uint128_t)x17 * x19))))))) + (0x13 * ((uint128_t)x16 * x30)));
- uint128_t x34 = ((((uint128_t)x5 * x29) + ((0x2 * ((uint128_t)x7 * x27)) + ((0x2 * ((uint128_t)x9 * x25)) + ((0x2 * ((uint128_t)x11 * x23)) + ((0x2 * ((uint128_t)x13 * x21)) + ((uint128_t)x15 * x19)))))) + (0x13 * ((0x2 * ((uint128_t)x17 * x30)) + (0x2 * ((uint128_t)x16 * x31)))));
- uint128_t x35 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + (((uint128_t)x9 * x23) + ((0x2 * ((uint128_t)x11 * x21)) + ((uint128_t)x13 * x19))))) + (0x13 * (((uint128_t)x15 * x30) + ((0x2 * ((uint128_t)x17 * x31)) + ((uint128_t)x16 * x29)))));
- uint128_t x36 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (0x13 * (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27))))));
- uint128_t x37 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((uint128_t)x9 * x19))) + (0x13 * ((0x2 * ((uint128_t)x11 * x30)) + ((0x2 * ((uint128_t)x13 * x31)) + (((uint128_t)x15 * x29) + ((0x2 * ((uint128_t)x17 * x27)) + (0x2 * ((uint128_t)x16 * x25))))))));
- uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x13 * (((uint128_t)x9 * x30) + ((0x2 * ((uint128_t)x11 * x31)) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + ((0x2 * ((uint128_t)x17 * x25)) + ((uint128_t)x16 * x23))))))));
- uint128_t x39 = (((uint128_t)x5 * x19) + (0x13 * ((0x2 * ((uint128_t)x7 * x30)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((0x2 * ((uint128_t)x17 * x23)) + (0x2 * ((uint128_t)x16 * x21))))))))));
- uint64_t x40 = (uint64_t) (x39 >> 0x30);
- uint64_t x41 = ((uint64_t)x39 & 0xffffffffffff);
- uint128_t x42 = (x40 + x38);
- uint64_t x43 = (uint64_t) (x42 >> 0x2f);
- uint64_t x44 = ((uint64_t)x42 & 0x7fffffffffff);
- uint128_t x45 = (x43 + x37);
- uint64_t x46 = (uint64_t) (x45 >> 0x30);
- uint64_t x47 = ((uint64_t)x45 & 0xffffffffffff);
- uint128_t x48 = (x46 + x36);
- uint64_t x49 = (uint64_t) (x48 >> 0x2f);
- uint64_t x50 = ((uint64_t)x48 & 0x7fffffffffff);
- uint128_t x51 = (x49 + x35);
- uint64_t x52 = (uint64_t) (x51 >> 0x2f);
- uint64_t x53 = ((uint64_t)x51 & 0x7fffffffffff);
- uint128_t x54 = (x52 + x34);
- uint64_t x55 = (uint64_t) (x54 >> 0x30);
- uint64_t x56 = ((uint64_t)x54 & 0xffffffffffff);
- uint128_t x57 = (x55 + x33);
- uint64_t x58 = (uint64_t) (x57 >> 0x2f);
- uint64_t x59 = ((uint64_t)x57 & 0x7fffffffffff);
- uint128_t x60 = (x58 + x32);
- uint64_t x61 = (uint64_t) (x60 >> 0x2f);
- uint64_t x62 = ((uint64_t)x60 & 0x7fffffffffff);
- uint64_t x63 = (x41 + (0x13 * x61));
- uint64_t x64 = (x63 >> 0x30);
- uint64_t x65 = (x63 & 0xffffffffffff);
- uint64_t x66 = (x64 + x44);
- uint64_t x67 = (x66 >> 0x2f);
- uint64_t x68 = (x66 & 0x7fffffffffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e379m19_8limbs/femulDisplay.v b/src/Specific/solinas64_2e379m19_8limbs/femulDisplay.v
deleted file mode 100644
index d9ceb9662..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e379m19_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e379m19_8limbs/fesquare.c b/src/Specific/solinas64_2e379m19_8limbs/fesquare.c
deleted file mode 100644
index 8fee9eae5..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x15 = (((uint128_t)x2 * x13) + ((0x2 * ((uint128_t)x4 * x14)) + (((uint128_t)x6 * x12) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + (((uint128_t)x12 * x6) + ((0x2 * ((uint128_t)x14 * x4)) + ((uint128_t)x13 * x2))))))));
- { uint128_t x16 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x13 * ((uint128_t)x13 * x13)));
- { uint128_t x17 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x13 * ((0x2 * ((uint128_t)x14 * x13)) + (0x2 * ((uint128_t)x13 * x14)))));
- { uint128_t x18 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x13 * (((uint128_t)x12 * x13) + ((0x2 * ((uint128_t)x14 * x14)) + ((uint128_t)x13 * x12)))));
- { uint128_t x19 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x13 * (((uint128_t)x10 * x13) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((uint128_t)x13 * x10))))));
- { uint128_t x20 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x13 * ((0x2 * ((uint128_t)x8 * x13)) + ((0x2 * ((uint128_t)x10 * x14)) + (((uint128_t)x12 * x12) + ((0x2 * ((uint128_t)x14 * x10)) + (0x2 * ((uint128_t)x13 * x8))))))));
- { uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x13 * (((uint128_t)x6 * x13) + ((0x2 * ((uint128_t)x8 * x14)) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + ((0x2 * ((uint128_t)x14 * x8)) + ((uint128_t)x13 * x6))))))));
- { uint128_t x22 = (((uint128_t)x2 * x2) + (0x13 * ((0x2 * ((uint128_t)x4 * x13)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + (0x2 * ((uint128_t)x13 * x4))))))))));
- { uint64_t x23 = (uint64_t) (x22 >> 0x30);
- { uint64_t x24 = ((uint64_t)x22 & 0xffffffffffff);
- { uint128_t x25 = (x23 + x21);
- { uint64_t x26 = (uint64_t) (x25 >> 0x2f);
- { uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffff);
- { uint128_t x28 = (x26 + x20);
- { uint64_t x29 = (uint64_t) (x28 >> 0x30);
- { uint64_t x30 = ((uint64_t)x28 & 0xffffffffffff);
- { uint128_t x31 = (x29 + x19);
- { uint64_t x32 = (uint64_t) (x31 >> 0x2f);
- { uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffff);
- { uint128_t x34 = (x32 + x18);
- { uint64_t x35 = (uint64_t) (x34 >> 0x2f);
- { uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffff);
- { uint128_t x37 = (x35 + x17);
- { uint64_t x38 = (uint64_t) (x37 >> 0x30);
- { uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- { uint128_t x40 = (x38 + x16);
- { uint64_t x41 = (uint64_t) (x40 >> 0x2f);
- { uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffff);
- { uint128_t x43 = (x41 + x15);
- { uint64_t x44 = (uint64_t) (x43 >> 0x2f);
- { uint64_t x45 = ((uint64_t)x43 & 0x7fffffffffff);
- { uint64_t x46 = (x24 + (0x13 * x44));
- { uint64_t x47 = (x46 >> 0x30);
- { uint64_t x48 = (x46 & 0xffffffffffff);
- { uint64_t x49 = (x47 + x27);
- { uint64_t x50 = (x49 >> 0x2f);
- { uint64_t x51 = (x49 & 0x7fffffffffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e379m19_8limbs/fesquare.v b/src/Specific/solinas64_2e379m19_8limbs/fesquare.v
deleted file mode 100644
index 1933cbfe3..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e379m19_8limbs.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/solinas64_2e379m19_8limbs/fesquareDisplay.log b/src/Specific/solinas64_2e379m19_8limbs/fesquareDisplay.log
deleted file mode 100644
index e1f01d47c..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x15 = (((uint128_t)x2 * x13) + ((0x2 * ((uint128_t)x4 * x14)) + (((uint128_t)x6 * x12) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + (((uint128_t)x12 * x6) + ((0x2 * ((uint128_t)x14 * x4)) + ((uint128_t)x13 * x2))))))));
- uint128_t x16 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x13 * ((uint128_t)x13 * x13)));
- uint128_t x17 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x13 * ((0x2 * ((uint128_t)x14 * x13)) + (0x2 * ((uint128_t)x13 * x14)))));
- uint128_t x18 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x13 * (((uint128_t)x12 * x13) + ((0x2 * ((uint128_t)x14 * x14)) + ((uint128_t)x13 * x12)))));
- uint128_t x19 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x13 * (((uint128_t)x10 * x13) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((uint128_t)x13 * x10))))));
- uint128_t x20 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x13 * ((0x2 * ((uint128_t)x8 * x13)) + ((0x2 * ((uint128_t)x10 * x14)) + (((uint128_t)x12 * x12) + ((0x2 * ((uint128_t)x14 * x10)) + (0x2 * ((uint128_t)x13 * x8))))))));
- uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x13 * (((uint128_t)x6 * x13) + ((0x2 * ((uint128_t)x8 * x14)) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + ((0x2 * ((uint128_t)x14 * x8)) + ((uint128_t)x13 * x6))))))));
- uint128_t x22 = (((uint128_t)x2 * x2) + (0x13 * ((0x2 * ((uint128_t)x4 * x13)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + (0x2 * ((uint128_t)x13 * x4))))))))));
- uint64_t x23 = (uint64_t) (x22 >> 0x30);
- uint64_t x24 = ((uint64_t)x22 & 0xffffffffffff);
- uint128_t x25 = (x23 + x21);
- uint64_t x26 = (uint64_t) (x25 >> 0x2f);
- uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffff);
- uint128_t x28 = (x26 + x20);
- uint64_t x29 = (uint64_t) (x28 >> 0x30);
- uint64_t x30 = ((uint64_t)x28 & 0xffffffffffff);
- uint128_t x31 = (x29 + x19);
- uint64_t x32 = (uint64_t) (x31 >> 0x2f);
- uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffff);
- uint128_t x34 = (x32 + x18);
- uint64_t x35 = (uint64_t) (x34 >> 0x2f);
- uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffff);
- uint128_t x37 = (x35 + x17);
- uint64_t x38 = (uint64_t) (x37 >> 0x30);
- uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- uint128_t x40 = (x38 + x16);
- uint64_t x41 = (uint64_t) (x40 >> 0x2f);
- uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffff);
- uint128_t x43 = (x41 + x15);
- uint64_t x44 = (uint64_t) (x43 >> 0x2f);
- uint64_t x45 = ((uint64_t)x43 & 0x7fffffffffff);
- uint64_t x46 = (x24 + (0x13 * x44));
- uint64_t x47 = (x46 >> 0x30);
- uint64_t x48 = (x46 & 0xffffffffffff);
- uint64_t x49 = (x47 + x27);
- uint64_t x50 = (x49 >> 0x2f);
- uint64_t x51 = (x49 & 0x7fffffffffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e379m19_8limbs/fesquareDisplay.v b/src/Specific/solinas64_2e379m19_8limbs/fesquareDisplay.v
deleted file mode 100644
index 855f1fa4f..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e379m19_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e379m19_8limbs/fesub.c b/src/Specific/solinas64_2e379m19_8limbs/fesub.c
deleted file mode 100644
index 4e3fd31a9..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = ((0x1ffffffffffda + x5) - x19);
- out[1] = ((0xfffffffffffe + x7) - x21);
- out[2] = ((0x1fffffffffffe + x9) - x23);
- out[3] = ((0xfffffffffffe + x11) - x25);
- out[4] = ((0xfffffffffffe + x13) - x27);
- out[5] = ((0x1fffffffffffe + x15) - x29);
- out[6] = ((0xfffffffffffe + x17) - x31);
- out[7] = ((0xfffffffffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e379m19_8limbs/fesub.v b/src/Specific/solinas64_2e379m19_8limbs/fesub.v
deleted file mode 100644
index e0f6e3c7b..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e379m19_8limbs.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/solinas64_2e379m19_8limbs/fesubDisplay.log b/src/Specific/solinas64_2e379m19_8limbs/fesubDisplay.log
deleted file mode 100644
index a3df6bbfa..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0xfffffffffffe + x16) - x30), ((0xfffffffffffe + x17) - x31), ((0x1fffffffffffe + x15) - x29), ((0xfffffffffffe + x13) - x27), ((0xfffffffffffe + x11) - x25), ((0x1fffffffffffe + x9) - x23), ((0xfffffffffffe + x7) - x21), ((0x1ffffffffffda + x5) - x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e379m19_8limbs/fesubDisplay.v b/src/Specific/solinas64_2e379m19_8limbs/fesubDisplay.v
deleted file mode 100644
index 244f4e94d..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e379m19_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e379m19_8limbs/freeze.c b/src/Specific/solinas64_2e379m19_8limbs/freeze.c
deleted file mode 100644
index 1e23ff8b2..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffed);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0x7fffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffffffffff);
- { uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0x7fffffffffff);
- { uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0x7fffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffffffffff);
- { uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0x7fffffffffff);
- { uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0x7fffffffffff);
- { uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- { uint64_t x40 = (x39 & 0xffffffffffed);
- { uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint64_t x44 = (x39 & 0x7fffffffffff);
- { uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint64_t x48 = (x39 & 0xffffffffffff);
- { uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint64_t x52 = (x39 & 0x7fffffffffff);
- { uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint64_t x56 = (x39 & 0x7fffffffffff);
- { uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint64_t x60 = (x39 & 0xffffffffffff);
- { uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint64_t x64 = (x39 & 0x7fffffffffff);
- { uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint64_t x68 = (x39 & 0x7fffffffffff);
- { uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e379m19_8limbs/freeze.v b/src/Specific/solinas64_2e379m19_8limbs/freeze.v
deleted file mode 100644
index eb58d51a9..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e379m19_8limbs.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/solinas64_2e379m19_8limbs/freezeDisplay.log b/src/Specific/solinas64_2e379m19_8limbs/freezeDisplay.log
deleted file mode 100644
index 8c335c715..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffed);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0x7fffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffffffffff);
- uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0x7fffffffffff);
- uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0x7fffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffffffffff);
- uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0x7fffffffffff);
- uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0x7fffffffffff);
- uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- uint64_t x40 = (x39 & 0xffffffffffed);
- uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint64_t x44 = (x39 & 0x7fffffffffff);
- uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint64_t x48 = (x39 & 0xffffffffffff);
- uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint64_t x52 = (x39 & 0x7fffffffffff);
- uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint64_t x56 = (x39 & 0x7fffffffffff);
- uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint64_t x60 = (x39 & 0xffffffffffff);
- uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint64_t x64 = (x39 & 0x7fffffffffff);
- uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint64_t x68 = (x39 & 0x7fffffffffff);
- uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e379m19_8limbs/freezeDisplay.v b/src/Specific/solinas64_2e379m19_8limbs/freezeDisplay.v
deleted file mode 100644
index a4179d4c4..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e379m19_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e379m19_8limbs/py_interpreter.sh b/src/Specific/solinas64_2e379m19_8limbs/py_interpreter.sh
deleted file mode 100755
index 279252eba..000000000
--- a/src/Specific/solinas64_2e379m19_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**379 - 19' -Dmodulus_bytes='47.375' -Da24='121665'
diff --git a/src/Specific/solinas64_2e382m105_7limbs/CurveParameters.v b/src/Specific/solinas64_2e382m105_7limbs/CurveParameters.v
deleted file mode 100644
index 3950c97b9..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^382 - 105
-Base: 54 + 4/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 54 + 4/7;
- bitwidth := 64;
- s := 2^382;
- c := [(1, 105)];
- carry_chains := Some [seq 0 (pred 7); [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/solinas64_2e382m105_7limbs/Synthesis.v b/src/Specific/solinas64_2e382m105_7limbs/Synthesis.v
deleted file mode 100644
index da24a3a1c..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e382m105_7limbs.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/solinas64_2e382m105_7limbs/compiler.sh b/src/Specific/solinas64_2e382m105_7limbs/compiler.sh
deleted file mode 100755
index 0b1917414..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,54,55,54,55,54}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<382) - 105' "$@"
diff --git a/src/Specific/solinas64_2e382m105_7limbs/compilerxx.sh b/src/Specific/solinas64_2e382m105_7limbs/compilerxx.sh
deleted file mode 100755
index e40a65448..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,54,55,54,55,54}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<382) - 105' "$@"
diff --git a/src/Specific/solinas64_2e382m105_7limbs/feadd.c b/src/Specific/solinas64_2e382m105_7limbs/feadd.c
deleted file mode 100644
index 9acf97578..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e382m105_7limbs/feadd.v b/src/Specific/solinas64_2e382m105_7limbs/feadd.v
deleted file mode 100644
index 6eaa6a8df..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e382m105_7limbs.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/solinas64_2e382m105_7limbs/feaddDisplay.log b/src/Specific/solinas64_2e382m105_7limbs/feaddDisplay.log
deleted file mode 100644
index 6320440fc..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e382m105_7limbs/feaddDisplay.v b/src/Specific/solinas64_2e382m105_7limbs/feaddDisplay.v
deleted file mode 100644
index b27bd7055..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e382m105_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e382m105_7limbs/fecarry.v b/src/Specific/solinas64_2e382m105_7limbs/fecarry.v
deleted file mode 100644
index 5876e2997..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e382m105_7limbs.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/solinas64_2e382m105_7limbs/fecarryDisplay.v b/src/Specific/solinas64_2e382m105_7limbs/fecarryDisplay.v
deleted file mode 100644
index 8dc5fd973..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e382m105_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e382m105_7limbs/femul.c b/src/Specific/solinas64_2e382m105_7limbs/femul.c
deleted file mode 100644
index e1136da2c..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- { uint128_t x28 = (((uint128_t)x5 * x26) + (((uint128_t)x7 * x27) + ((0x2 * ((uint128_t)x9 * x25)) + (((uint128_t)x11 * x23) + ((0x2 * ((uint128_t)x13 * x21)) + (((uint128_t)x15 * x19) + ((uint128_t)x14 * x17)))))));
- { uint128_t x29 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + ((0x2 * ((uint128_t)x13 * x19)) + ((uint128_t)x15 * x17)))))) + (0x69 * (0x2 * ((uint128_t)x14 * x26))));
- { uint128_t x30 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + ((0x2 * ((uint128_t)x9 * x21)) + (((uint128_t)x11 * x19) + ((uint128_t)x13 * x17))))) + (0x69 * (((uint128_t)x15 * x26) + ((uint128_t)x14 * x27))));
- { uint128_t x31 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((0x2 * ((uint128_t)x9 * x19)) + ((uint128_t)x11 * x17)))) + (0x69 * ((0x2 * ((uint128_t)x13 * x26)) + (((uint128_t)x15 * x27) + (0x2 * ((uint128_t)x14 * x25))))));
- { uint128_t x32 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + ((uint128_t)x9 * x17))) + (0x69 * (((uint128_t)x11 * x26) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + ((uint128_t)x14 * x23))))));
- { uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0x69 * ((0x2 * ((uint128_t)x9 * x26)) + (((uint128_t)x11 * x27) + ((0x2 * ((uint128_t)x13 * x25)) + (((uint128_t)x15 * x23) + (0x2 * ((uint128_t)x14 * x21))))))));
- { uint128_t x34 = (((uint128_t)x5 * x17) + (0x69 * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19)))))))));
- { uint128_t x35 = (x34 >> 0x37);
- { uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- { uint128_t x37 = (x35 + x33);
- { uint128_t x38 = (x37 >> 0x37);
- { uint64_t x39 = ((uint64_t)x37 & 0x7fffffffffffff);
- { uint128_t x40 = (x38 + x32);
- { uint128_t x41 = (x40 >> 0x36);
- { uint64_t x42 = ((uint64_t)x40 & 0x3fffffffffffff);
- { uint128_t x43 = (x41 + x31);
- { uint128_t x44 = (x43 >> 0x37);
- { uint64_t x45 = ((uint64_t)x43 & 0x7fffffffffffff);
- { uint128_t x46 = (x44 + x30);
- { uint128_t x47 = (x46 >> 0x36);
- { uint64_t x48 = ((uint64_t)x46 & 0x3fffffffffffff);
- { uint128_t x49 = (x47 + x29);
- { uint128_t x50 = (x49 >> 0x37);
- { uint64_t x51 = ((uint64_t)x49 & 0x7fffffffffffff);
- { uint128_t x52 = (x50 + x28);
- { uint64_t x53 = (uint64_t) (x52 >> 0x36);
- { uint64_t x54 = ((uint64_t)x52 & 0x3fffffffffffff);
- { uint128_t x55 = (x36 + ((uint128_t)0x69 * x53));
- { uint64_t x56 = (uint64_t) (x55 >> 0x37);
- { uint64_t x57 = ((uint64_t)x55 & 0x7fffffffffffff);
- { uint64_t x58 = (x56 + x39);
- { uint64_t x59 = (x58 >> 0x37);
- { uint64_t x60 = (x58 & 0x7fffffffffffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e382m105_7limbs/femul.v b/src/Specific/solinas64_2e382m105_7limbs/femul.v
deleted file mode 100644
index 0242cb12b..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e382m105_7limbs.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/solinas64_2e382m105_7limbs/femulDisplay.log b/src/Specific/solinas64_2e382m105_7limbs/femulDisplay.log
deleted file mode 100644
index c565e4248..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint128_t x28 = (((uint128_t)x5 * x26) + (((uint128_t)x7 * x27) + ((0x2 * ((uint128_t)x9 * x25)) + (((uint128_t)x11 * x23) + ((0x2 * ((uint128_t)x13 * x21)) + (((uint128_t)x15 * x19) + ((uint128_t)x14 * x17)))))));
- uint128_t x29 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + ((0x2 * ((uint128_t)x13 * x19)) + ((uint128_t)x15 * x17)))))) + (0x69 * (0x2 * ((uint128_t)x14 * x26))));
- uint128_t x30 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + ((0x2 * ((uint128_t)x9 * x21)) + (((uint128_t)x11 * x19) + ((uint128_t)x13 * x17))))) + (0x69 * (((uint128_t)x15 * x26) + ((uint128_t)x14 * x27))));
- uint128_t x31 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((0x2 * ((uint128_t)x9 * x19)) + ((uint128_t)x11 * x17)))) + (0x69 * ((0x2 * ((uint128_t)x13 * x26)) + (((uint128_t)x15 * x27) + (0x2 * ((uint128_t)x14 * x25))))));
- uint128_t x32 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + ((uint128_t)x9 * x17))) + (0x69 * (((uint128_t)x11 * x26) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + ((uint128_t)x14 * x23))))));
- uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0x69 * ((0x2 * ((uint128_t)x9 * x26)) + (((uint128_t)x11 * x27) + ((0x2 * ((uint128_t)x13 * x25)) + (((uint128_t)x15 * x23) + (0x2 * ((uint128_t)x14 * x21))))))));
- uint128_t x34 = (((uint128_t)x5 * x17) + (0x69 * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19)))))))));
- uint128_t x35 = (x34 >> 0x37);
- uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- uint128_t x37 = (x35 + x33);
- uint128_t x38 = (x37 >> 0x37);
- uint64_t x39 = ((uint64_t)x37 & 0x7fffffffffffff);
- uint128_t x40 = (x38 + x32);
- uint128_t x41 = (x40 >> 0x36);
- uint64_t x42 = ((uint64_t)x40 & 0x3fffffffffffff);
- uint128_t x43 = (x41 + x31);
- uint128_t x44 = (x43 >> 0x37);
- uint64_t x45 = ((uint64_t)x43 & 0x7fffffffffffff);
- uint128_t x46 = (x44 + x30);
- uint128_t x47 = (x46 >> 0x36);
- uint64_t x48 = ((uint64_t)x46 & 0x3fffffffffffff);
- uint128_t x49 = (x47 + x29);
- uint128_t x50 = (x49 >> 0x37);
- uint64_t x51 = ((uint64_t)x49 & 0x7fffffffffffff);
- uint128_t x52 = (x50 + x28);
- uint64_t x53 = (uint64_t) (x52 >> 0x36);
- uint64_t x54 = ((uint64_t)x52 & 0x3fffffffffffff);
- uint128_t x55 = (x36 + ((uint128_t)0x69 * x53));
- uint64_t x56 = (uint64_t) (x55 >> 0x37);
- uint64_t x57 = ((uint64_t)x55 & 0x7fffffffffffff);
- uint64_t x58 = (x56 + x39);
- uint64_t x59 = (x58 >> 0x37);
- uint64_t x60 = (x58 & 0x7fffffffffffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e382m105_7limbs/femulDisplay.v b/src/Specific/solinas64_2e382m105_7limbs/femulDisplay.v
deleted file mode 100644
index 418306f4c..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e382m105_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e382m105_7limbs/fesquare.c b/src/Specific/solinas64_2e382m105_7limbs/fesquare.c
deleted file mode 100644
index 8cf74164e..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x13 = (((uint128_t)x2 * x11) + (((uint128_t)x4 * x12) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + (((uint128_t)x12 * x4) + ((uint128_t)x11 * x2)))))));
- { uint128_t x14 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x69 * (0x2 * ((uint128_t)x11 * x11))));
- { uint128_t x15 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + ((0x2 * ((uint128_t)x6 * x6)) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x69 * (((uint128_t)x12 * x11) + ((uint128_t)x11 * x12))));
- { uint128_t x16 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x69 * ((0x2 * ((uint128_t)x10 * x11)) + (((uint128_t)x12 * x12) + (0x2 * ((uint128_t)x11 * x10))))));
- { uint128_t x17 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x69 * (((uint128_t)x8 * x11) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + ((uint128_t)x11 * x8))))));
- { uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x69 * ((0x2 * ((uint128_t)x6 * x11)) + (((uint128_t)x8 * x12) + ((0x2 * ((uint128_t)x10 * x10)) + (((uint128_t)x12 * x8) + (0x2 * ((uint128_t)x11 * x6))))))));
- { uint128_t x19 = (((uint128_t)x2 * x2) + (0x69 * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4)))))))));
- { uint128_t x20 = (x19 >> 0x37);
- { uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint128_t x23 = (x22 >> 0x37);
- { uint64_t x24 = ((uint64_t)x22 & 0x7fffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint128_t x26 = (x25 >> 0x36);
- { uint64_t x27 = ((uint64_t)x25 & 0x3fffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint128_t x29 = (x28 >> 0x37);
- { uint64_t x30 = ((uint64_t)x28 & 0x7fffffffffffff);
- { uint128_t x31 = (x29 + x15);
- { uint128_t x32 = (x31 >> 0x36);
- { uint64_t x33 = ((uint64_t)x31 & 0x3fffffffffffff);
- { uint128_t x34 = (x32 + x14);
- { uint128_t x35 = (x34 >> 0x37);
- { uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- { uint128_t x37 = (x35 + x13);
- { uint64_t x38 = (uint64_t) (x37 >> 0x36);
- { uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffffff);
- { uint128_t x40 = (x21 + ((uint128_t)0x69 * x38));
- { uint64_t x41 = (uint64_t) (x40 >> 0x37);
- { uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffffff);
- { uint64_t x43 = (x41 + x24);
- { uint64_t x44 = (x43 >> 0x37);
- { uint64_t x45 = (x43 & 0x7fffffffffffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e382m105_7limbs/fesquare.v b/src/Specific/solinas64_2e382m105_7limbs/fesquare.v
deleted file mode 100644
index 5634dae7c..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e382m105_7limbs.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/solinas64_2e382m105_7limbs/fesquareDisplay.log b/src/Specific/solinas64_2e382m105_7limbs/fesquareDisplay.log
deleted file mode 100644
index e559346f0..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x13 = (((uint128_t)x2 * x11) + (((uint128_t)x4 * x12) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + (((uint128_t)x12 * x4) + ((uint128_t)x11 * x2)))))));
- uint128_t x14 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x69 * (0x2 * ((uint128_t)x11 * x11))));
- uint128_t x15 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + ((0x2 * ((uint128_t)x6 * x6)) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x69 * (((uint128_t)x12 * x11) + ((uint128_t)x11 * x12))));
- uint128_t x16 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x69 * ((0x2 * ((uint128_t)x10 * x11)) + (((uint128_t)x12 * x12) + (0x2 * ((uint128_t)x11 * x10))))));
- uint128_t x17 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x69 * (((uint128_t)x8 * x11) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + ((uint128_t)x11 * x8))))));
- uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x69 * ((0x2 * ((uint128_t)x6 * x11)) + (((uint128_t)x8 * x12) + ((0x2 * ((uint128_t)x10 * x10)) + (((uint128_t)x12 * x8) + (0x2 * ((uint128_t)x11 * x6))))))));
- uint128_t x19 = (((uint128_t)x2 * x2) + (0x69 * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4)))))))));
- uint128_t x20 = (x19 >> 0x37);
- uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint128_t x23 = (x22 >> 0x37);
- uint64_t x24 = ((uint64_t)x22 & 0x7fffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint128_t x26 = (x25 >> 0x36);
- uint64_t x27 = ((uint64_t)x25 & 0x3fffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint128_t x29 = (x28 >> 0x37);
- uint64_t x30 = ((uint64_t)x28 & 0x7fffffffffffff);
- uint128_t x31 = (x29 + x15);
- uint128_t x32 = (x31 >> 0x36);
- uint64_t x33 = ((uint64_t)x31 & 0x3fffffffffffff);
- uint128_t x34 = (x32 + x14);
- uint128_t x35 = (x34 >> 0x37);
- uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- uint128_t x37 = (x35 + x13);
- uint64_t x38 = (uint64_t) (x37 >> 0x36);
- uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffffff);
- uint128_t x40 = (x21 + ((uint128_t)0x69 * x38));
- uint64_t x41 = (uint64_t) (x40 >> 0x37);
- uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffffff);
- uint64_t x43 = (x41 + x24);
- uint64_t x44 = (x43 >> 0x37);
- uint64_t x45 = (x43 & 0x7fffffffffffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e382m105_7limbs/fesquareDisplay.v b/src/Specific/solinas64_2e382m105_7limbs/fesquareDisplay.v
deleted file mode 100644
index bb48e85bd..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e382m105_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e382m105_7limbs/fesub.c b/src/Specific/solinas64_2e382m105_7limbs/fesub.c
deleted file mode 100644
index 9bd0ffa45..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = ((0xffffffffffff2e + x5) - x17);
- out[1] = ((0xfffffffffffffe + x7) - x19);
- out[2] = ((0x7ffffffffffffe + x9) - x21);
- out[3] = ((0xfffffffffffffe + x11) - x23);
- out[4] = ((0x7ffffffffffffe + x13) - x25);
- out[5] = ((0xfffffffffffffe + x15) - x27);
- out[6] = ((0x7ffffffffffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e382m105_7limbs/fesub.v b/src/Specific/solinas64_2e382m105_7limbs/fesub.v
deleted file mode 100644
index 1290cc03d..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e382m105_7limbs.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/solinas64_2e382m105_7limbs/fesubDisplay.log b/src/Specific/solinas64_2e382m105_7limbs/fesubDisplay.log
deleted file mode 100644
index 12f5f41b9..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0x7ffffffffffffe + x14) - x26), ((0xfffffffffffffe + x15) - x27), ((0x7ffffffffffffe + x13) - x25), ((0xfffffffffffffe + x11) - x23), ((0x7ffffffffffffe + x9) - x21), ((0xfffffffffffffe + x7) - x19), ((0xffffffffffff2e + x5) - x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e382m105_7limbs/fesubDisplay.v b/src/Specific/solinas64_2e382m105_7limbs/fesubDisplay.v
deleted file mode 100644
index 2b04dc7aa..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e382m105_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e382m105_7limbs/freeze.c b/src/Specific/solinas64_2e382m105_7limbs/freeze.c
deleted file mode 100644
index 2c6a7a34f..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffff97);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0x7fffffffffffff);
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0x3fffffffffffff);
- { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0x7fffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0x3fffffffffffff);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0x7fffffffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0x3fffffffffffff);
- { uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- { uint64_t x35 = (x34 & 0x7fffffffffff97);
- { uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint64_t x39 = (x34 & 0x7fffffffffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint64_t x43 = (x34 & 0x3fffffffffffff);
- { uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint64_t x47 = (x34 & 0x7fffffffffffff);
- { uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint64_t x51 = (x34 & 0x3fffffffffffff);
- { uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint64_t x55 = (x34 & 0x7fffffffffffff);
- { uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint64_t x59 = (x34 & 0x3fffffffffffff);
- { uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e382m105_7limbs/freeze.v b/src/Specific/solinas64_2e382m105_7limbs/freeze.v
deleted file mode 100644
index da10aea0d..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e382m105_7limbs.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/solinas64_2e382m105_7limbs/freezeDisplay.log b/src/Specific/solinas64_2e382m105_7limbs/freezeDisplay.log
deleted file mode 100644
index a49a4dd93..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffff97);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0x7fffffffffffff);
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0x3fffffffffffff);
- uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0x7fffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0x3fffffffffffff);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0x7fffffffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0x3fffffffffffff);
- uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- uint64_t x35 = (x34 & 0x7fffffffffff97);
- uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint64_t x39 = (x34 & 0x7fffffffffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint64_t x43 = (x34 & 0x3fffffffffffff);
- uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint64_t x47 = (x34 & 0x7fffffffffffff);
- uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint64_t x51 = (x34 & 0x3fffffffffffff);
- uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint64_t x55 = (x34 & 0x7fffffffffffff);
- uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint64_t x59 = (x34 & 0x3fffffffffffff);
- uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e382m105_7limbs/freezeDisplay.v b/src/Specific/solinas64_2e382m105_7limbs/freezeDisplay.v
deleted file mode 100644
index d11092580..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e382m105_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e382m105_7limbs/py_interpreter.sh b/src/Specific/solinas64_2e382m105_7limbs/py_interpreter.sh
deleted file mode 100755
index 5ffe26225..000000000
--- a/src/Specific/solinas64_2e382m105_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**382 - 105' -Dmodulus_bytes='54 + 4/7' -Da24='121665'
diff --git a/src/Specific/solinas64_2e382m105_8limbs/CurveParameters.v b/src/Specific/solinas64_2e382m105_8limbs/CurveParameters.v
deleted file mode 100644
index 4064c34f0..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^382 - 105
-Base: 47.75
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 47 + 3/4;
- bitwidth := 64;
- s := 2^382;
- c := [(1, 105)];
- carry_chains := Some [seq 0 (pred 8); [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/solinas64_2e382m105_8limbs/Synthesis.v b/src/Specific/solinas64_2e382m105_8limbs/Synthesis.v
deleted file mode 100644
index 79ea7b524..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e382m105_8limbs.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/solinas64_2e382m105_8limbs/compiler.sh b/src/Specific/solinas64_2e382m105_8limbs/compiler.sh
deleted file mode 100755
index 77298cc8a..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,47,48,48,48,47}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<382) - 105' "$@"
diff --git a/src/Specific/solinas64_2e382m105_8limbs/compilerxx.sh b/src/Specific/solinas64_2e382m105_8limbs/compilerxx.sh
deleted file mode 100755
index 4d9d5f39f..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,47,48,48,48,47}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x97}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<382) - 105' "$@"
diff --git a/src/Specific/solinas64_2e382m105_8limbs/feadd.c b/src/Specific/solinas64_2e382m105_8limbs/feadd.c
deleted file mode 100644
index 4def6ee9c..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e382m105_8limbs/feadd.v b/src/Specific/solinas64_2e382m105_8limbs/feadd.v
deleted file mode 100644
index 5d53d93ae..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e382m105_8limbs.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/solinas64_2e382m105_8limbs/feaddDisplay.log b/src/Specific/solinas64_2e382m105_8limbs/feaddDisplay.log
deleted file mode 100644
index 023fc8a31..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e382m105_8limbs/feaddDisplay.v b/src/Specific/solinas64_2e382m105_8limbs/feaddDisplay.v
deleted file mode 100644
index eda67cc68..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e382m105_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e382m105_8limbs/fecarry.v b/src/Specific/solinas64_2e382m105_8limbs/fecarry.v
deleted file mode 100644
index 7efe2123c..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e382m105_8limbs.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/solinas64_2e382m105_8limbs/fecarryDisplay.v b/src/Specific/solinas64_2e382m105_8limbs/fecarryDisplay.v
deleted file mode 100644
index 541420e58..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e382m105_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e382m105_8limbs/femul.c b/src/Specific/solinas64_2e382m105_8limbs/femul.c
deleted file mode 100644
index 33b7dc516..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint128_t x32 = (((uint128_t)x5 * x30) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + (((uint128_t)x17 * x21) + ((uint128_t)x16 * x19))))))));
- { uint128_t x33 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + ((0x2 * ((uint128_t)x11 * x25)) + (((uint128_t)x13 * x23) + (((uint128_t)x15 * x21) + ((uint128_t)x17 * x19))))))) + (0x69 * (0x2 * ((uint128_t)x16 * x30))));
- { uint128_t x34 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + ((0x2 * ((uint128_t)x9 * x25)) + ((0x2 * ((uint128_t)x11 * x23)) + (((uint128_t)x13 * x21) + ((uint128_t)x15 * x19)))))) + (0x69 * ((0x2 * ((uint128_t)x17 * x30)) + (0x2 * ((uint128_t)x16 * x31)))));
- { uint128_t x35 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + ((uint128_t)x13 * x19))))) + (0x69 * ((0x2 * ((uint128_t)x15 * x30)) + ((0x2 * ((uint128_t)x17 * x31)) + (0x2 * ((uint128_t)x16 * x29))))));
- { uint128_t x36 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (0x69 * (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27))))));
- { uint128_t x37 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))) + (0x69 * ((0x2 * ((uint128_t)x11 * x30)) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + (((uint128_t)x17 * x27) + (0x2 * ((uint128_t)x16 * x25))))))));
- { uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x69 * ((0x2 * ((uint128_t)x9 * x30)) + ((0x2 * ((uint128_t)x11 * x31)) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + ((0x2 * ((uint128_t)x17 * x25)) + (0x2 * ((uint128_t)x16 * x23)))))))));
- { uint128_t x39 = (((uint128_t)x5 * x19) + (0x69 * ((0x2 * ((uint128_t)x7 * x30)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + (((uint128_t)x13 * x27) + ((0x2 * ((uint128_t)x15 * x25)) + ((0x2 * ((uint128_t)x17 * x23)) + (0x2 * ((uint128_t)x16 * x21))))))))));
- { uint64_t x40 = (uint64_t) (x39 >> 0x30);
- { uint64_t x41 = ((uint64_t)x39 & 0xffffffffffff);
- { uint128_t x42 = (x40 + x38);
- { uint64_t x43 = (uint64_t) (x42 >> 0x30);
- { uint64_t x44 = ((uint64_t)x42 & 0xffffffffffff);
- { uint128_t x45 = (x43 + x37);
- { uint64_t x46 = (uint64_t) (x45 >> 0x30);
- { uint64_t x47 = ((uint64_t)x45 & 0xffffffffffff);
- { uint128_t x48 = (x46 + x36);
- { uint64_t x49 = (uint64_t) (x48 >> 0x2f);
- { uint64_t x50 = ((uint64_t)x48 & 0x7fffffffffff);
- { uint128_t x51 = (x49 + x35);
- { uint64_t x52 = (uint64_t) (x51 >> 0x30);
- { uint64_t x53 = ((uint64_t)x51 & 0xffffffffffff);
- { uint128_t x54 = (x52 + x34);
- { uint64_t x55 = (uint64_t) (x54 >> 0x30);
- { uint64_t x56 = ((uint64_t)x54 & 0xffffffffffff);
- { uint128_t x57 = (x55 + x33);
- { uint64_t x58 = (uint64_t) (x57 >> 0x30);
- { uint64_t x59 = ((uint64_t)x57 & 0xffffffffffff);
- { uint128_t x60 = (x58 + x32);
- { uint64_t x61 = (uint64_t) (x60 >> 0x2f);
- { uint64_t x62 = ((uint64_t)x60 & 0x7fffffffffff);
- { uint64_t x63 = (x41 + (0x69 * x61));
- { uint64_t x64 = (x63 >> 0x30);
- { uint64_t x65 = (x63 & 0xffffffffffff);
- { uint64_t x66 = (x64 + x44);
- { uint64_t x67 = (x66 >> 0x30);
- { uint64_t x68 = (x66 & 0xffffffffffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e382m105_8limbs/femul.v b/src/Specific/solinas64_2e382m105_8limbs/femul.v
deleted file mode 100644
index 3fb97b283..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e382m105_8limbs.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/solinas64_2e382m105_8limbs/femulDisplay.log b/src/Specific/solinas64_2e382m105_8limbs/femulDisplay.log
deleted file mode 100644
index bc845a48f..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint128_t x32 = (((uint128_t)x5 * x30) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + (((uint128_t)x17 * x21) + ((uint128_t)x16 * x19))))))));
- uint128_t x33 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + ((0x2 * ((uint128_t)x11 * x25)) + (((uint128_t)x13 * x23) + (((uint128_t)x15 * x21) + ((uint128_t)x17 * x19))))))) + (0x69 * (0x2 * ((uint128_t)x16 * x30))));
- uint128_t x34 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + ((0x2 * ((uint128_t)x9 * x25)) + ((0x2 * ((uint128_t)x11 * x23)) + (((uint128_t)x13 * x21) + ((uint128_t)x15 * x19)))))) + (0x69 * ((0x2 * ((uint128_t)x17 * x30)) + (0x2 * ((uint128_t)x16 * x31)))));
- uint128_t x35 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + ((uint128_t)x13 * x19))))) + (0x69 * ((0x2 * ((uint128_t)x15 * x30)) + ((0x2 * ((uint128_t)x17 * x31)) + (0x2 * ((uint128_t)x16 * x29))))));
- uint128_t x36 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (0x69 * (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27))))));
- uint128_t x37 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))) + (0x69 * ((0x2 * ((uint128_t)x11 * x30)) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + (((uint128_t)x17 * x27) + (0x2 * ((uint128_t)x16 * x25))))))));
- uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x69 * ((0x2 * ((uint128_t)x9 * x30)) + ((0x2 * ((uint128_t)x11 * x31)) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + ((0x2 * ((uint128_t)x17 * x25)) + (0x2 * ((uint128_t)x16 * x23)))))))));
- uint128_t x39 = (((uint128_t)x5 * x19) + (0x69 * ((0x2 * ((uint128_t)x7 * x30)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + (((uint128_t)x13 * x27) + ((0x2 * ((uint128_t)x15 * x25)) + ((0x2 * ((uint128_t)x17 * x23)) + (0x2 * ((uint128_t)x16 * x21))))))))));
- uint64_t x40 = (uint64_t) (x39 >> 0x30);
- uint64_t x41 = ((uint64_t)x39 & 0xffffffffffff);
- uint128_t x42 = (x40 + x38);
- uint64_t x43 = (uint64_t) (x42 >> 0x30);
- uint64_t x44 = ((uint64_t)x42 & 0xffffffffffff);
- uint128_t x45 = (x43 + x37);
- uint64_t x46 = (uint64_t) (x45 >> 0x30);
- uint64_t x47 = ((uint64_t)x45 & 0xffffffffffff);
- uint128_t x48 = (x46 + x36);
- uint64_t x49 = (uint64_t) (x48 >> 0x2f);
- uint64_t x50 = ((uint64_t)x48 & 0x7fffffffffff);
- uint128_t x51 = (x49 + x35);
- uint64_t x52 = (uint64_t) (x51 >> 0x30);
- uint64_t x53 = ((uint64_t)x51 & 0xffffffffffff);
- uint128_t x54 = (x52 + x34);
- uint64_t x55 = (uint64_t) (x54 >> 0x30);
- uint64_t x56 = ((uint64_t)x54 & 0xffffffffffff);
- uint128_t x57 = (x55 + x33);
- uint64_t x58 = (uint64_t) (x57 >> 0x30);
- uint64_t x59 = ((uint64_t)x57 & 0xffffffffffff);
- uint128_t x60 = (x58 + x32);
- uint64_t x61 = (uint64_t) (x60 >> 0x2f);
- uint64_t x62 = ((uint64_t)x60 & 0x7fffffffffff);
- uint64_t x63 = (x41 + (0x69 * x61));
- uint64_t x64 = (x63 >> 0x30);
- uint64_t x65 = (x63 & 0xffffffffffff);
- uint64_t x66 = (x64 + x44);
- uint64_t x67 = (x66 >> 0x30);
- uint64_t x68 = (x66 & 0xffffffffffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e382m105_8limbs/femulDisplay.v b/src/Specific/solinas64_2e382m105_8limbs/femulDisplay.v
deleted file mode 100644
index d0f93d830..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e382m105_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e382m105_8limbs/fesquare.c b/src/Specific/solinas64_2e382m105_8limbs/fesquare.c
deleted file mode 100644
index 90e12b5c7..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x15 = (((uint128_t)x2 * x13) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x13 * x2))))))));
- { uint128_t x16 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x69 * (0x2 * ((uint128_t)x13 * x13))));
- { uint128_t x17 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x69 * ((0x2 * ((uint128_t)x14 * x13)) + (0x2 * ((uint128_t)x13 * x14)))));
- { uint128_t x18 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x69 * ((0x2 * ((uint128_t)x12 * x13)) + ((0x2 * ((uint128_t)x14 * x14)) + (0x2 * ((uint128_t)x13 * x12))))));
- { uint128_t x19 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x69 * (((uint128_t)x10 * x13) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((uint128_t)x13 * x10))))));
- { uint128_t x20 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x69 * ((0x2 * ((uint128_t)x8 * x13)) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + (((uint128_t)x14 * x10) + (0x2 * ((uint128_t)x13 * x8))))))));
- { uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x69 * ((0x2 * ((uint128_t)x6 * x13)) + ((0x2 * ((uint128_t)x8 * x14)) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + ((0x2 * ((uint128_t)x14 * x8)) + (0x2 * ((uint128_t)x13 * x6)))))))));
- { uint128_t x22 = (((uint128_t)x2 * x2) + (0x69 * ((0x2 * ((uint128_t)x4 * x13)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + (0x2 * ((uint128_t)x13 * x4))))))))));
- { uint64_t x23 = (uint64_t) (x22 >> 0x30);
- { uint64_t x24 = ((uint64_t)x22 & 0xffffffffffff);
- { uint128_t x25 = (x23 + x21);
- { uint64_t x26 = (uint64_t) (x25 >> 0x30);
- { uint64_t x27 = ((uint64_t)x25 & 0xffffffffffff);
- { uint128_t x28 = (x26 + x20);
- { uint64_t x29 = (uint64_t) (x28 >> 0x30);
- { uint64_t x30 = ((uint64_t)x28 & 0xffffffffffff);
- { uint128_t x31 = (x29 + x19);
- { uint64_t x32 = (uint64_t) (x31 >> 0x2f);
- { uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffff);
- { uint128_t x34 = (x32 + x18);
- { uint64_t x35 = (uint64_t) (x34 >> 0x30);
- { uint64_t x36 = ((uint64_t)x34 & 0xffffffffffff);
- { uint128_t x37 = (x35 + x17);
- { uint64_t x38 = (uint64_t) (x37 >> 0x30);
- { uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- { uint128_t x40 = (x38 + x16);
- { uint64_t x41 = (uint64_t) (x40 >> 0x30);
- { uint64_t x42 = ((uint64_t)x40 & 0xffffffffffff);
- { uint128_t x43 = (x41 + x15);
- { uint64_t x44 = (uint64_t) (x43 >> 0x2f);
- { uint64_t x45 = ((uint64_t)x43 & 0x7fffffffffff);
- { uint64_t x46 = (x24 + (0x69 * x44));
- { uint64_t x47 = (x46 >> 0x30);
- { uint64_t x48 = (x46 & 0xffffffffffff);
- { uint64_t x49 = (x47 + x27);
- { uint64_t x50 = (x49 >> 0x30);
- { uint64_t x51 = (x49 & 0xffffffffffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e382m105_8limbs/fesquare.v b/src/Specific/solinas64_2e382m105_8limbs/fesquare.v
deleted file mode 100644
index 34c319658..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e382m105_8limbs.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/solinas64_2e382m105_8limbs/fesquareDisplay.log b/src/Specific/solinas64_2e382m105_8limbs/fesquareDisplay.log
deleted file mode 100644
index 41c5cdef5..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x15 = (((uint128_t)x2 * x13) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x13 * x2))))))));
- uint128_t x16 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x69 * (0x2 * ((uint128_t)x13 * x13))));
- uint128_t x17 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x69 * ((0x2 * ((uint128_t)x14 * x13)) + (0x2 * ((uint128_t)x13 * x14)))));
- uint128_t x18 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x69 * ((0x2 * ((uint128_t)x12 * x13)) + ((0x2 * ((uint128_t)x14 * x14)) + (0x2 * ((uint128_t)x13 * x12))))));
- uint128_t x19 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x69 * (((uint128_t)x10 * x13) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((uint128_t)x13 * x10))))));
- uint128_t x20 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x69 * ((0x2 * ((uint128_t)x8 * x13)) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + (((uint128_t)x14 * x10) + (0x2 * ((uint128_t)x13 * x8))))))));
- uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x69 * ((0x2 * ((uint128_t)x6 * x13)) + ((0x2 * ((uint128_t)x8 * x14)) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + ((0x2 * ((uint128_t)x14 * x8)) + (0x2 * ((uint128_t)x13 * x6)))))))));
- uint128_t x22 = (((uint128_t)x2 * x2) + (0x69 * ((0x2 * ((uint128_t)x4 * x13)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + (0x2 * ((uint128_t)x13 * x4))))))))));
- uint64_t x23 = (uint64_t) (x22 >> 0x30);
- uint64_t x24 = ((uint64_t)x22 & 0xffffffffffff);
- uint128_t x25 = (x23 + x21);
- uint64_t x26 = (uint64_t) (x25 >> 0x30);
- uint64_t x27 = ((uint64_t)x25 & 0xffffffffffff);
- uint128_t x28 = (x26 + x20);
- uint64_t x29 = (uint64_t) (x28 >> 0x30);
- uint64_t x30 = ((uint64_t)x28 & 0xffffffffffff);
- uint128_t x31 = (x29 + x19);
- uint64_t x32 = (uint64_t) (x31 >> 0x2f);
- uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffff);
- uint128_t x34 = (x32 + x18);
- uint64_t x35 = (uint64_t) (x34 >> 0x30);
- uint64_t x36 = ((uint64_t)x34 & 0xffffffffffff);
- uint128_t x37 = (x35 + x17);
- uint64_t x38 = (uint64_t) (x37 >> 0x30);
- uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- uint128_t x40 = (x38 + x16);
- uint64_t x41 = (uint64_t) (x40 >> 0x30);
- uint64_t x42 = ((uint64_t)x40 & 0xffffffffffff);
- uint128_t x43 = (x41 + x15);
- uint64_t x44 = (uint64_t) (x43 >> 0x2f);
- uint64_t x45 = ((uint64_t)x43 & 0x7fffffffffff);
- uint64_t x46 = (x24 + (0x69 * x44));
- uint64_t x47 = (x46 >> 0x30);
- uint64_t x48 = (x46 & 0xffffffffffff);
- uint64_t x49 = (x47 + x27);
- uint64_t x50 = (x49 >> 0x30);
- uint64_t x51 = (x49 & 0xffffffffffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e382m105_8limbs/fesquareDisplay.v b/src/Specific/solinas64_2e382m105_8limbs/fesquareDisplay.v
deleted file mode 100644
index f2ee41da1..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e382m105_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e382m105_8limbs/fesub.c b/src/Specific/solinas64_2e382m105_8limbs/fesub.c
deleted file mode 100644
index c0d786c3b..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = ((0x1ffffffffff2e + x5) - x19);
- out[1] = ((0x1fffffffffffe + x7) - x21);
- out[2] = ((0x1fffffffffffe + x9) - x23);
- out[3] = ((0xfffffffffffe + x11) - x25);
- out[4] = ((0x1fffffffffffe + x13) - x27);
- out[5] = ((0x1fffffffffffe + x15) - x29);
- out[6] = ((0x1fffffffffffe + x17) - x31);
- out[7] = ((0xfffffffffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e382m105_8limbs/fesub.v b/src/Specific/solinas64_2e382m105_8limbs/fesub.v
deleted file mode 100644
index a10d39c14..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e382m105_8limbs.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/solinas64_2e382m105_8limbs/fesubDisplay.log b/src/Specific/solinas64_2e382m105_8limbs/fesubDisplay.log
deleted file mode 100644
index fc6c55eb5..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0xfffffffffffe + x16) - x30), ((0x1fffffffffffe + x17) - x31), ((0x1fffffffffffe + x15) - x29), ((0x1fffffffffffe + x13) - x27), ((0xfffffffffffe + x11) - x25), ((0x1fffffffffffe + x9) - x23), ((0x1fffffffffffe + x7) - x21), ((0x1ffffffffff2e + x5) - x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e382m105_8limbs/fesubDisplay.v b/src/Specific/solinas64_2e382m105_8limbs/fesubDisplay.v
deleted file mode 100644
index cb54fb183..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e382m105_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e382m105_8limbs/freeze.c b/src/Specific/solinas64_2e382m105_8limbs/freeze.c
deleted file mode 100644
index 809e3aab4..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffff97);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffffffffff);
- { uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0x7fffffffffff);
- { uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0xffffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffffffffff);
- { uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0xffffffffffff);
- { uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0x7fffffffffff);
- { uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- { uint64_t x40 = (x39 & 0xffffffffff97);
- { uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint64_t x44 = (x39 & 0xffffffffffff);
- { uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint64_t x48 = (x39 & 0xffffffffffff);
- { uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint64_t x52 = (x39 & 0x7fffffffffff);
- { uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint64_t x56 = (x39 & 0xffffffffffff);
- { uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint64_t x60 = (x39 & 0xffffffffffff);
- { uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint64_t x64 = (x39 & 0xffffffffffff);
- { uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint64_t x68 = (x39 & 0x7fffffffffff);
- { uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e382m105_8limbs/freeze.v b/src/Specific/solinas64_2e382m105_8limbs/freeze.v
deleted file mode 100644
index d3ee99e38..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e382m105_8limbs.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/solinas64_2e382m105_8limbs/freezeDisplay.log b/src/Specific/solinas64_2e382m105_8limbs/freezeDisplay.log
deleted file mode 100644
index 085593b7b..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffff97);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffffffffff);
- uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0x7fffffffffff);
- uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0xffffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffffffffff);
- uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0xffffffffffff);
- uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0x7fffffffffff);
- uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- uint64_t x40 = (x39 & 0xffffffffff97);
- uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint64_t x44 = (x39 & 0xffffffffffff);
- uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint64_t x48 = (x39 & 0xffffffffffff);
- uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint64_t x52 = (x39 & 0x7fffffffffff);
- uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint64_t x56 = (x39 & 0xffffffffffff);
- uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint64_t x60 = (x39 & 0xffffffffffff);
- uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint64_t x64 = (x39 & 0xffffffffffff);
- uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint64_t x68 = (x39 & 0x7fffffffffff);
- uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e382m105_8limbs/freezeDisplay.v b/src/Specific/solinas64_2e382m105_8limbs/freezeDisplay.v
deleted file mode 100644
index d6126d342..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e382m105_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e382m105_8limbs/py_interpreter.sh b/src/Specific/solinas64_2e382m105_8limbs/py_interpreter.sh
deleted file mode 100755
index d7996d642..000000000
--- a/src/Specific/solinas64_2e382m105_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**382 - 105' -Dmodulus_bytes='47.75' -Da24='121665'
diff --git a/src/Specific/solinas64_2e383m187_7limbs/CurveParameters.v b/src/Specific/solinas64_2e383m187_7limbs/CurveParameters.v
deleted file mode 100644
index ed10bccfc..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^383 - 187
-Base: 54 + 5/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 54 + 5/7;
- bitwidth := 64;
- s := 2^383;
- c := [(1, 187)];
- carry_chains := Some [seq 0 (pred 7); [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/solinas64_2e383m187_7limbs/Synthesis.v b/src/Specific/solinas64_2e383m187_7limbs/Synthesis.v
deleted file mode 100644
index 9bfb8bf7f..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e383m187_7limbs.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/solinas64_2e383m187_7limbs/compiler.sh b/src/Specific/solinas64_2e383m187_7limbs/compiler.sh
deleted file mode 100755
index 0a43d493c..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,55,54,55,55,54}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<383) - 187' "$@"
diff --git a/src/Specific/solinas64_2e383m187_7limbs/compilerxx.sh b/src/Specific/solinas64_2e383m187_7limbs/compilerxx.sh
deleted file mode 100755
index cee3392f9..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,55,54,55,55,54}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<383) - 187' "$@"
diff --git a/src/Specific/solinas64_2e383m187_7limbs/feadd.c b/src/Specific/solinas64_2e383m187_7limbs/feadd.c
deleted file mode 100644
index 9acf97578..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m187_7limbs/feadd.v b/src/Specific/solinas64_2e383m187_7limbs/feadd.v
deleted file mode 100644
index 9126c3f76..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m187_7limbs.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/solinas64_2e383m187_7limbs/feaddDisplay.log b/src/Specific/solinas64_2e383m187_7limbs/feaddDisplay.log
deleted file mode 100644
index 6320440fc..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m187_7limbs/feaddDisplay.v b/src/Specific/solinas64_2e383m187_7limbs/feaddDisplay.v
deleted file mode 100644
index 33a1eee95..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m187_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e383m187_7limbs/fecarry.v b/src/Specific/solinas64_2e383m187_7limbs/fecarry.v
deleted file mode 100644
index 146f28d88..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m187_7limbs.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/solinas64_2e383m187_7limbs/fecarryDisplay.v b/src/Specific/solinas64_2e383m187_7limbs/fecarryDisplay.v
deleted file mode 100644
index fd93f53c4..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m187_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e383m187_7limbs/femul.c b/src/Specific/solinas64_2e383m187_7limbs/femul.c
deleted file mode 100644
index 916e25d3e..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- { uint128_t x28 = (((uint128_t)x5 * x26) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((0x2 * ((uint128_t)x11 * x23)) + (((uint128_t)x13 * x21) + (((uint128_t)x15 * x19) + ((uint128_t)x14 * x17)))))));
- { uint128_t x29 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + (((uint128_t)x13 * x19) + ((uint128_t)x15 * x17)))))) + (0xbb * (0x2 * ((uint128_t)x14 * x26))));
- { uint128_t x30 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((0x2 * ((uint128_t)x9 * x21)) + ((0x2 * ((uint128_t)x11 * x19)) + ((uint128_t)x13 * x17))))) + (0xbb * ((0x2 * ((uint128_t)x15 * x26)) + (0x2 * ((uint128_t)x14 * x27)))));
- { uint128_t x31 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + ((uint128_t)x11 * x17)))) + (0xbb * (((uint128_t)x13 * x26) + (((uint128_t)x15 * x27) + ((uint128_t)x14 * x25)))));
- { uint128_t x32 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + ((uint128_t)x9 * x17))) + (0xbb * ((0x2 * ((uint128_t)x11 * x26)) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + (0x2 * ((uint128_t)x14 * x23)))))));
- { uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0xbb * ((0x2 * ((uint128_t)x9 * x26)) + ((0x2 * ((uint128_t)x11 * x27)) + (((uint128_t)x13 * x25) + ((0x2 * ((uint128_t)x15 * x23)) + (0x2 * ((uint128_t)x14 * x21))))))));
- { uint128_t x34 = (((uint128_t)x5 * x17) + (0xbb * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19)))))))));
- { uint128_t x35 = (x34 >> 0x37);
- { uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- { uint128_t x37 = (x35 + x33);
- { uint128_t x38 = (x37 >> 0x37);
- { uint64_t x39 = ((uint64_t)x37 & 0x7fffffffffffff);
- { uint128_t x40 = (x38 + x32);
- { uint128_t x41 = (x40 >> 0x37);
- { uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffffff);
- { uint128_t x43 = (x41 + x31);
- { uint128_t x44 = (x43 >> 0x36);
- { uint64_t x45 = ((uint64_t)x43 & 0x3fffffffffffff);
- { uint128_t x46 = (x44 + x30);
- { uint128_t x47 = (x46 >> 0x37);
- { uint64_t x48 = ((uint64_t)x46 & 0x7fffffffffffff);
- { uint128_t x49 = (x47 + x29);
- { uint128_t x50 = (x49 >> 0x37);
- { uint64_t x51 = ((uint64_t)x49 & 0x7fffffffffffff);
- { uint128_t x52 = (x50 + x28);
- { uint64_t x53 = (uint64_t) (x52 >> 0x36);
- { uint64_t x54 = ((uint64_t)x52 & 0x3fffffffffffff);
- { uint128_t x55 = (x36 + ((uint128_t)0xbb * x53));
- { uint64_t x56 = (uint64_t) (x55 >> 0x37);
- { uint64_t x57 = ((uint64_t)x55 & 0x7fffffffffffff);
- { uint64_t x58 = (x56 + x39);
- { uint64_t x59 = (x58 >> 0x37);
- { uint64_t x60 = (x58 & 0x7fffffffffffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m187_7limbs/femul.v b/src/Specific/solinas64_2e383m187_7limbs/femul.v
deleted file mode 100644
index b3f09b3d2..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m187_7limbs.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/solinas64_2e383m187_7limbs/femulDisplay.log b/src/Specific/solinas64_2e383m187_7limbs/femulDisplay.log
deleted file mode 100644
index 66ace5a71..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint128_t x28 = (((uint128_t)x5 * x26) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((0x2 * ((uint128_t)x11 * x23)) + (((uint128_t)x13 * x21) + (((uint128_t)x15 * x19) + ((uint128_t)x14 * x17)))))));
- uint128_t x29 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + (((uint128_t)x13 * x19) + ((uint128_t)x15 * x17)))))) + (0xbb * (0x2 * ((uint128_t)x14 * x26))));
- uint128_t x30 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((0x2 * ((uint128_t)x9 * x21)) + ((0x2 * ((uint128_t)x11 * x19)) + ((uint128_t)x13 * x17))))) + (0xbb * ((0x2 * ((uint128_t)x15 * x26)) + (0x2 * ((uint128_t)x14 * x27)))));
- uint128_t x31 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + ((uint128_t)x11 * x17)))) + (0xbb * (((uint128_t)x13 * x26) + (((uint128_t)x15 * x27) + ((uint128_t)x14 * x25)))));
- uint128_t x32 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + ((uint128_t)x9 * x17))) + (0xbb * ((0x2 * ((uint128_t)x11 * x26)) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + (0x2 * ((uint128_t)x14 * x23)))))));
- uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0xbb * ((0x2 * ((uint128_t)x9 * x26)) + ((0x2 * ((uint128_t)x11 * x27)) + (((uint128_t)x13 * x25) + ((0x2 * ((uint128_t)x15 * x23)) + (0x2 * ((uint128_t)x14 * x21))))))));
- uint128_t x34 = (((uint128_t)x5 * x17) + (0xbb * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19)))))))));
- uint128_t x35 = (x34 >> 0x37);
- uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- uint128_t x37 = (x35 + x33);
- uint128_t x38 = (x37 >> 0x37);
- uint64_t x39 = ((uint64_t)x37 & 0x7fffffffffffff);
- uint128_t x40 = (x38 + x32);
- uint128_t x41 = (x40 >> 0x37);
- uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffffff);
- uint128_t x43 = (x41 + x31);
- uint128_t x44 = (x43 >> 0x36);
- uint64_t x45 = ((uint64_t)x43 & 0x3fffffffffffff);
- uint128_t x46 = (x44 + x30);
- uint128_t x47 = (x46 >> 0x37);
- uint64_t x48 = ((uint64_t)x46 & 0x7fffffffffffff);
- uint128_t x49 = (x47 + x29);
- uint128_t x50 = (x49 >> 0x37);
- uint64_t x51 = ((uint64_t)x49 & 0x7fffffffffffff);
- uint128_t x52 = (x50 + x28);
- uint64_t x53 = (uint64_t) (x52 >> 0x36);
- uint64_t x54 = ((uint64_t)x52 & 0x3fffffffffffff);
- uint128_t x55 = (x36 + ((uint128_t)0xbb * x53));
- uint64_t x56 = (uint64_t) (x55 >> 0x37);
- uint64_t x57 = ((uint64_t)x55 & 0x7fffffffffffff);
- uint64_t x58 = (x56 + x39);
- uint64_t x59 = (x58 >> 0x37);
- uint64_t x60 = (x58 & 0x7fffffffffffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m187_7limbs/femulDisplay.v b/src/Specific/solinas64_2e383m187_7limbs/femulDisplay.v
deleted file mode 100644
index 9526ffb86..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m187_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e383m187_7limbs/fesquare.c b/src/Specific/solinas64_2e383m187_7limbs/fesquare.c
deleted file mode 100644
index fba1591a1..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x13 = (((uint128_t)x2 * x11) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x11 * x2)))))));
- { uint128_t x14 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0xbb * (0x2 * ((uint128_t)x11 * x11))));
- { uint128_t x15 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0xbb * ((0x2 * ((uint128_t)x12 * x11)) + (0x2 * ((uint128_t)x11 * x12)))));
- { uint128_t x16 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0xbb * (((uint128_t)x10 * x11) + (((uint128_t)x12 * x12) + ((uint128_t)x11 * x10)))));
- { uint128_t x17 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0xbb * ((0x2 * ((uint128_t)x8 * x11)) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (0x2 * ((uint128_t)x11 * x8)))))));
- { uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xbb * ((0x2 * ((uint128_t)x6 * x11)) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + (0x2 * ((uint128_t)x11 * x6))))))));
- { uint128_t x19 = (((uint128_t)x2 * x2) + (0xbb * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4)))))))));
- { uint128_t x20 = (x19 >> 0x37);
- { uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint128_t x23 = (x22 >> 0x37);
- { uint64_t x24 = ((uint64_t)x22 & 0x7fffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint128_t x26 = (x25 >> 0x37);
- { uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint128_t x29 = (x28 >> 0x36);
- { uint64_t x30 = ((uint64_t)x28 & 0x3fffffffffffff);
- { uint128_t x31 = (x29 + x15);
- { uint128_t x32 = (x31 >> 0x37);
- { uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffffff);
- { uint128_t x34 = (x32 + x14);
- { uint128_t x35 = (x34 >> 0x37);
- { uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- { uint128_t x37 = (x35 + x13);
- { uint64_t x38 = (uint64_t) (x37 >> 0x36);
- { uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffffff);
- { uint128_t x40 = (x21 + ((uint128_t)0xbb * x38));
- { uint64_t x41 = (uint64_t) (x40 >> 0x37);
- { uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffffff);
- { uint64_t x43 = (x41 + x24);
- { uint64_t x44 = (x43 >> 0x37);
- { uint64_t x45 = (x43 & 0x7fffffffffffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m187_7limbs/fesquare.v b/src/Specific/solinas64_2e383m187_7limbs/fesquare.v
deleted file mode 100644
index f93cdfc8f..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m187_7limbs.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/solinas64_2e383m187_7limbs/fesquareDisplay.log b/src/Specific/solinas64_2e383m187_7limbs/fesquareDisplay.log
deleted file mode 100644
index ae40334a8..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x13 = (((uint128_t)x2 * x11) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x11 * x2)))))));
- uint128_t x14 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0xbb * (0x2 * ((uint128_t)x11 * x11))));
- uint128_t x15 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0xbb * ((0x2 * ((uint128_t)x12 * x11)) + (0x2 * ((uint128_t)x11 * x12)))));
- uint128_t x16 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0xbb * (((uint128_t)x10 * x11) + (((uint128_t)x12 * x12) + ((uint128_t)x11 * x10)))));
- uint128_t x17 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0xbb * ((0x2 * ((uint128_t)x8 * x11)) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (0x2 * ((uint128_t)x11 * x8)))))));
- uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xbb * ((0x2 * ((uint128_t)x6 * x11)) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + (0x2 * ((uint128_t)x11 * x6))))))));
- uint128_t x19 = (((uint128_t)x2 * x2) + (0xbb * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4)))))))));
- uint128_t x20 = (x19 >> 0x37);
- uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint128_t x23 = (x22 >> 0x37);
- uint64_t x24 = ((uint64_t)x22 & 0x7fffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint128_t x26 = (x25 >> 0x37);
- uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint128_t x29 = (x28 >> 0x36);
- uint64_t x30 = ((uint64_t)x28 & 0x3fffffffffffff);
- uint128_t x31 = (x29 + x15);
- uint128_t x32 = (x31 >> 0x37);
- uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffffff);
- uint128_t x34 = (x32 + x14);
- uint128_t x35 = (x34 >> 0x37);
- uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- uint128_t x37 = (x35 + x13);
- uint64_t x38 = (uint64_t) (x37 >> 0x36);
- uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffffff);
- uint128_t x40 = (x21 + ((uint128_t)0xbb * x38));
- uint64_t x41 = (uint64_t) (x40 >> 0x37);
- uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffffff);
- uint64_t x43 = (x41 + x24);
- uint64_t x44 = (x43 >> 0x37);
- uint64_t x45 = (x43 & 0x7fffffffffffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m187_7limbs/fesquareDisplay.v b/src/Specific/solinas64_2e383m187_7limbs/fesquareDisplay.v
deleted file mode 100644
index 6af4ae910..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m187_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e383m187_7limbs/fesub.c b/src/Specific/solinas64_2e383m187_7limbs/fesub.c
deleted file mode 100644
index dba8f8e30..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = ((0xfffffffffffe8a + x5) - x17);
- out[1] = ((0xfffffffffffffe + x7) - x19);
- out[2] = ((0xfffffffffffffe + x9) - x21);
- out[3] = ((0x7ffffffffffffe + x11) - x23);
- out[4] = ((0xfffffffffffffe + x13) - x25);
- out[5] = ((0xfffffffffffffe + x15) - x27);
- out[6] = ((0x7ffffffffffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m187_7limbs/fesub.v b/src/Specific/solinas64_2e383m187_7limbs/fesub.v
deleted file mode 100644
index aece35a2a..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m187_7limbs.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/solinas64_2e383m187_7limbs/fesubDisplay.log b/src/Specific/solinas64_2e383m187_7limbs/fesubDisplay.log
deleted file mode 100644
index 125ffca25..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0x7ffffffffffffe + x14) - x26), ((0xfffffffffffffe + x15) - x27), ((0xfffffffffffffe + x13) - x25), ((0x7ffffffffffffe + x11) - x23), ((0xfffffffffffffe + x9) - x21), ((0xfffffffffffffe + x7) - x19), ((0xfffffffffffe8a + x5) - x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m187_7limbs/fesubDisplay.v b/src/Specific/solinas64_2e383m187_7limbs/fesubDisplay.v
deleted file mode 100644
index e0a75b471..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m187_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e383m187_7limbs/freeze.c b/src/Specific/solinas64_2e383m187_7limbs/freeze.c
deleted file mode 100644
index fb94b90f7..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffff45);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0x7fffffffffffff);
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0x7fffffffffffff);
- { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0x3fffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0x7fffffffffffff);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0x7fffffffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0x3fffffffffffff);
- { uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- { uint64_t x35 = (x34 & 0x7fffffffffff45);
- { uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint64_t x39 = (x34 & 0x7fffffffffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint64_t x43 = (x34 & 0x7fffffffffffff);
- { uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint64_t x47 = (x34 & 0x3fffffffffffff);
- { uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint64_t x51 = (x34 & 0x7fffffffffffff);
- { uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint64_t x55 = (x34 & 0x7fffffffffffff);
- { uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint64_t x59 = (x34 & 0x3fffffffffffff);
- { uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m187_7limbs/freeze.v b/src/Specific/solinas64_2e383m187_7limbs/freeze.v
deleted file mode 100644
index be7977ef4..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m187_7limbs.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/solinas64_2e383m187_7limbs/freezeDisplay.log b/src/Specific/solinas64_2e383m187_7limbs/freezeDisplay.log
deleted file mode 100644
index 70ee7008d..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffff45);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0x7fffffffffffff);
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0x7fffffffffffff);
- uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0x3fffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0x7fffffffffffff);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0x7fffffffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0x3fffffffffffff);
- uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- uint64_t x35 = (x34 & 0x7fffffffffff45);
- uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint64_t x39 = (x34 & 0x7fffffffffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint64_t x43 = (x34 & 0x7fffffffffffff);
- uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint64_t x47 = (x34 & 0x3fffffffffffff);
- uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint64_t x51 = (x34 & 0x7fffffffffffff);
- uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint64_t x55 = (x34 & 0x7fffffffffffff);
- uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint64_t x59 = (x34 & 0x3fffffffffffff);
- uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m187_7limbs/freezeDisplay.v b/src/Specific/solinas64_2e383m187_7limbs/freezeDisplay.v
deleted file mode 100644
index 9a8ce3901..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m187_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e383m187_7limbs/py_interpreter.sh b/src/Specific/solinas64_2e383m187_7limbs/py_interpreter.sh
deleted file mode 100755
index 49c917f75..000000000
--- a/src/Specific/solinas64_2e383m187_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**383 - 187' -Dmodulus_bytes='54 + 5/7' -Da24='121665'
diff --git a/src/Specific/solinas64_2e383m187_8limbs/CurveParameters.v b/src/Specific/solinas64_2e383m187_8limbs/CurveParameters.v
deleted file mode 100644
index 4da41aae4..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^383 - 187
-Base: 47.875
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 47 + 7/8;
- bitwidth := 64;
- s := 2^383;
- c := [(1, 187)];
- carry_chains := Some [seq 0 (pred 8); [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/solinas64_2e383m187_8limbs/Synthesis.v b/src/Specific/solinas64_2e383m187_8limbs/Synthesis.v
deleted file mode 100644
index 0388bc28d..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e383m187_8limbs.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/solinas64_2e383m187_8limbs/compiler.sh b/src/Specific/solinas64_2e383m187_8limbs/compiler.sh
deleted file mode 100755
index 9c268b63e..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,47}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<383) - 187' "$@"
diff --git a/src/Specific/solinas64_2e383m187_8limbs/compilerxx.sh b/src/Specific/solinas64_2e383m187_8limbs/compilerxx.sh
deleted file mode 100755
index 536618c33..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,47}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<383) - 187' "$@"
diff --git a/src/Specific/solinas64_2e383m187_8limbs/feadd.c b/src/Specific/solinas64_2e383m187_8limbs/feadd.c
deleted file mode 100644
index 4def6ee9c..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m187_8limbs/feadd.v b/src/Specific/solinas64_2e383m187_8limbs/feadd.v
deleted file mode 100644
index 40b19f0a0..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m187_8limbs.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/solinas64_2e383m187_8limbs/feaddDisplay.log b/src/Specific/solinas64_2e383m187_8limbs/feaddDisplay.log
deleted file mode 100644
index 023fc8a31..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m187_8limbs/feaddDisplay.v b/src/Specific/solinas64_2e383m187_8limbs/feaddDisplay.v
deleted file mode 100644
index 1363a2e32..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m187_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e383m187_8limbs/fecarry.v b/src/Specific/solinas64_2e383m187_8limbs/fecarry.v
deleted file mode 100644
index 7972775fb..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m187_8limbs.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/solinas64_2e383m187_8limbs/fecarryDisplay.v b/src/Specific/solinas64_2e383m187_8limbs/fecarryDisplay.v
deleted file mode 100644
index a9cd41ef9..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m187_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e383m187_8limbs/femul.c b/src/Specific/solinas64_2e383m187_8limbs/femul.c
deleted file mode 100644
index 7151d4917..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint128_t x32 = (((uint128_t)x5 * x30) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + (((uint128_t)x17 * x21) + ((uint128_t)x16 * x19))))))));
- { uint128_t x33 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + (((uint128_t)x15 * x21) + ((uint128_t)x17 * x19))))))) + (0xbb * (0x2 * ((uint128_t)x16 * x30))));
- { uint128_t x34 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x15 * x19)))))) + (0xbb * ((0x2 * ((uint128_t)x17 * x30)) + (0x2 * ((uint128_t)x16 * x31)))));
- { uint128_t x35 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + ((uint128_t)x13 * x19))))) + (0xbb * ((0x2 * ((uint128_t)x15 * x30)) + ((0x2 * ((uint128_t)x17 * x31)) + (0x2 * ((uint128_t)x16 * x29))))));
- { uint128_t x36 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (0xbb * ((0x2 * ((uint128_t)x13 * x30)) + ((0x2 * ((uint128_t)x15 * x31)) + ((0x2 * ((uint128_t)x17 * x29)) + (0x2 * ((uint128_t)x16 * x27)))))));
- { uint128_t x37 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))) + (0xbb * ((0x2 * ((uint128_t)x11 * x30)) + ((0x2 * ((uint128_t)x13 * x31)) + ((0x2 * ((uint128_t)x15 * x29)) + ((0x2 * ((uint128_t)x17 * x27)) + (0x2 * ((uint128_t)x16 * x25))))))));
- { uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0xbb * ((0x2 * ((uint128_t)x9 * x30)) + ((0x2 * ((uint128_t)x11 * x31)) + ((0x2 * ((uint128_t)x13 * x29)) + ((0x2 * ((uint128_t)x15 * x27)) + ((0x2 * ((uint128_t)x17 * x25)) + (0x2 * ((uint128_t)x16 * x23)))))))));
- { uint128_t x39 = (((uint128_t)x5 * x19) + (0xbb * ((0x2 * ((uint128_t)x7 * x30)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((0x2 * ((uint128_t)x17 * x23)) + (0x2 * ((uint128_t)x16 * x21))))))))));
- { uint64_t x40 = (uint64_t) (x39 >> 0x30);
- { uint64_t x41 = ((uint64_t)x39 & 0xffffffffffff);
- { uint128_t x42 = (x40 + x38);
- { uint64_t x43 = (uint64_t) (x42 >> 0x30);
- { uint64_t x44 = ((uint64_t)x42 & 0xffffffffffff);
- { uint128_t x45 = (x43 + x37);
- { uint64_t x46 = (uint64_t) (x45 >> 0x30);
- { uint64_t x47 = ((uint64_t)x45 & 0xffffffffffff);
- { uint128_t x48 = (x46 + x36);
- { uint64_t x49 = (uint64_t) (x48 >> 0x30);
- { uint64_t x50 = ((uint64_t)x48 & 0xffffffffffff);
- { uint128_t x51 = (x49 + x35);
- { uint64_t x52 = (uint64_t) (x51 >> 0x30);
- { uint64_t x53 = ((uint64_t)x51 & 0xffffffffffff);
- { uint128_t x54 = (x52 + x34);
- { uint64_t x55 = (uint64_t) (x54 >> 0x30);
- { uint64_t x56 = ((uint64_t)x54 & 0xffffffffffff);
- { uint128_t x57 = (x55 + x33);
- { uint64_t x58 = (uint64_t) (x57 >> 0x30);
- { uint64_t x59 = ((uint64_t)x57 & 0xffffffffffff);
- { uint128_t x60 = (x58 + x32);
- { uint64_t x61 = (uint64_t) (x60 >> 0x2f);
- { uint64_t x62 = ((uint64_t)x60 & 0x7fffffffffff);
- { uint64_t x63 = (x41 + (0xbb * x61));
- { uint64_t x64 = (x63 >> 0x30);
- { uint64_t x65 = (x63 & 0xffffffffffff);
- { uint64_t x66 = (x64 + x44);
- { uint64_t x67 = (x66 >> 0x30);
- { uint64_t x68 = (x66 & 0xffffffffffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m187_8limbs/femul.v b/src/Specific/solinas64_2e383m187_8limbs/femul.v
deleted file mode 100644
index 606d9b137..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m187_8limbs.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/solinas64_2e383m187_8limbs/femulDisplay.log b/src/Specific/solinas64_2e383m187_8limbs/femulDisplay.log
deleted file mode 100644
index b9158687d..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint128_t x32 = (((uint128_t)x5 * x30) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + (((uint128_t)x17 * x21) + ((uint128_t)x16 * x19))))))));
- uint128_t x33 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + (((uint128_t)x15 * x21) + ((uint128_t)x17 * x19))))))) + (0xbb * (0x2 * ((uint128_t)x16 * x30))));
- uint128_t x34 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x15 * x19)))))) + (0xbb * ((0x2 * ((uint128_t)x17 * x30)) + (0x2 * ((uint128_t)x16 * x31)))));
- uint128_t x35 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + ((uint128_t)x13 * x19))))) + (0xbb * ((0x2 * ((uint128_t)x15 * x30)) + ((0x2 * ((uint128_t)x17 * x31)) + (0x2 * ((uint128_t)x16 * x29))))));
- uint128_t x36 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (0xbb * ((0x2 * ((uint128_t)x13 * x30)) + ((0x2 * ((uint128_t)x15 * x31)) + ((0x2 * ((uint128_t)x17 * x29)) + (0x2 * ((uint128_t)x16 * x27)))))));
- uint128_t x37 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))) + (0xbb * ((0x2 * ((uint128_t)x11 * x30)) + ((0x2 * ((uint128_t)x13 * x31)) + ((0x2 * ((uint128_t)x15 * x29)) + ((0x2 * ((uint128_t)x17 * x27)) + (0x2 * ((uint128_t)x16 * x25))))))));
- uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0xbb * ((0x2 * ((uint128_t)x9 * x30)) + ((0x2 * ((uint128_t)x11 * x31)) + ((0x2 * ((uint128_t)x13 * x29)) + ((0x2 * ((uint128_t)x15 * x27)) + ((0x2 * ((uint128_t)x17 * x25)) + (0x2 * ((uint128_t)x16 * x23)))))))));
- uint128_t x39 = (((uint128_t)x5 * x19) + (0xbb * ((0x2 * ((uint128_t)x7 * x30)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((0x2 * ((uint128_t)x17 * x23)) + (0x2 * ((uint128_t)x16 * x21))))))))));
- uint64_t x40 = (uint64_t) (x39 >> 0x30);
- uint64_t x41 = ((uint64_t)x39 & 0xffffffffffff);
- uint128_t x42 = (x40 + x38);
- uint64_t x43 = (uint64_t) (x42 >> 0x30);
- uint64_t x44 = ((uint64_t)x42 & 0xffffffffffff);
- uint128_t x45 = (x43 + x37);
- uint64_t x46 = (uint64_t) (x45 >> 0x30);
- uint64_t x47 = ((uint64_t)x45 & 0xffffffffffff);
- uint128_t x48 = (x46 + x36);
- uint64_t x49 = (uint64_t) (x48 >> 0x30);
- uint64_t x50 = ((uint64_t)x48 & 0xffffffffffff);
- uint128_t x51 = (x49 + x35);
- uint64_t x52 = (uint64_t) (x51 >> 0x30);
- uint64_t x53 = ((uint64_t)x51 & 0xffffffffffff);
- uint128_t x54 = (x52 + x34);
- uint64_t x55 = (uint64_t) (x54 >> 0x30);
- uint64_t x56 = ((uint64_t)x54 & 0xffffffffffff);
- uint128_t x57 = (x55 + x33);
- uint64_t x58 = (uint64_t) (x57 >> 0x30);
- uint64_t x59 = ((uint64_t)x57 & 0xffffffffffff);
- uint128_t x60 = (x58 + x32);
- uint64_t x61 = (uint64_t) (x60 >> 0x2f);
- uint64_t x62 = ((uint64_t)x60 & 0x7fffffffffff);
- uint64_t x63 = (x41 + (0xbb * x61));
- uint64_t x64 = (x63 >> 0x30);
- uint64_t x65 = (x63 & 0xffffffffffff);
- uint64_t x66 = (x64 + x44);
- uint64_t x67 = (x66 >> 0x30);
- uint64_t x68 = (x66 & 0xffffffffffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m187_8limbs/femulDisplay.v b/src/Specific/solinas64_2e383m187_8limbs/femulDisplay.v
deleted file mode 100644
index 26cbc0d14..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m187_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e383m187_8limbs/fesquare.c b/src/Specific/solinas64_2e383m187_8limbs/fesquare.c
deleted file mode 100644
index 99b6a2cca..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x15 = (((uint128_t)x2 * x13) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x13 * x2))))))));
- { uint128_t x16 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0xbb * (0x2 * ((uint128_t)x13 * x13))));
- { uint128_t x17 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0xbb * ((0x2 * ((uint128_t)x14 * x13)) + (0x2 * ((uint128_t)x13 * x14)))));
- { uint128_t x18 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0xbb * ((0x2 * ((uint128_t)x12 * x13)) + ((0x2 * ((uint128_t)x14 * x14)) + (0x2 * ((uint128_t)x13 * x12))))));
- { uint128_t x19 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0xbb * ((0x2 * ((uint128_t)x10 * x13)) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + (0x2 * ((uint128_t)x13 * x10)))))));
- { uint128_t x20 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0xbb * ((0x2 * ((uint128_t)x8 * x13)) + ((0x2 * ((uint128_t)x10 * x14)) + ((0x2 * ((uint128_t)x12 * x12)) + ((0x2 * ((uint128_t)x14 * x10)) + (0x2 * ((uint128_t)x13 * x8))))))));
- { uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xbb * ((0x2 * ((uint128_t)x6 * x13)) + ((0x2 * ((uint128_t)x8 * x14)) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + ((0x2 * ((uint128_t)x14 * x8)) + (0x2 * ((uint128_t)x13 * x6)))))))));
- { uint128_t x22 = (((uint128_t)x2 * x2) + (0xbb * ((0x2 * ((uint128_t)x4 * x13)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + (0x2 * ((uint128_t)x13 * x4))))))))));
- { uint64_t x23 = (uint64_t) (x22 >> 0x30);
- { uint64_t x24 = ((uint64_t)x22 & 0xffffffffffff);
- { uint128_t x25 = (x23 + x21);
- { uint64_t x26 = (uint64_t) (x25 >> 0x30);
- { uint64_t x27 = ((uint64_t)x25 & 0xffffffffffff);
- { uint128_t x28 = (x26 + x20);
- { uint64_t x29 = (uint64_t) (x28 >> 0x30);
- { uint64_t x30 = ((uint64_t)x28 & 0xffffffffffff);
- { uint128_t x31 = (x29 + x19);
- { uint64_t x32 = (uint64_t) (x31 >> 0x30);
- { uint64_t x33 = ((uint64_t)x31 & 0xffffffffffff);
- { uint128_t x34 = (x32 + x18);
- { uint64_t x35 = (uint64_t) (x34 >> 0x30);
- { uint64_t x36 = ((uint64_t)x34 & 0xffffffffffff);
- { uint128_t x37 = (x35 + x17);
- { uint64_t x38 = (uint64_t) (x37 >> 0x30);
- { uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- { uint128_t x40 = (x38 + x16);
- { uint64_t x41 = (uint64_t) (x40 >> 0x30);
- { uint64_t x42 = ((uint64_t)x40 & 0xffffffffffff);
- { uint128_t x43 = (x41 + x15);
- { uint64_t x44 = (uint64_t) (x43 >> 0x2f);
- { uint64_t x45 = ((uint64_t)x43 & 0x7fffffffffff);
- { uint64_t x46 = (x24 + (0xbb * x44));
- { uint64_t x47 = (x46 >> 0x30);
- { uint64_t x48 = (x46 & 0xffffffffffff);
- { uint64_t x49 = (x47 + x27);
- { uint64_t x50 = (x49 >> 0x30);
- { uint64_t x51 = (x49 & 0xffffffffffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m187_8limbs/fesquare.v b/src/Specific/solinas64_2e383m187_8limbs/fesquare.v
deleted file mode 100644
index 745a8a49d..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m187_8limbs.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/solinas64_2e383m187_8limbs/fesquareDisplay.log b/src/Specific/solinas64_2e383m187_8limbs/fesquareDisplay.log
deleted file mode 100644
index 23354c500..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x15 = (((uint128_t)x2 * x13) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x13 * x2))))))));
- uint128_t x16 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0xbb * (0x2 * ((uint128_t)x13 * x13))));
- uint128_t x17 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0xbb * ((0x2 * ((uint128_t)x14 * x13)) + (0x2 * ((uint128_t)x13 * x14)))));
- uint128_t x18 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0xbb * ((0x2 * ((uint128_t)x12 * x13)) + ((0x2 * ((uint128_t)x14 * x14)) + (0x2 * ((uint128_t)x13 * x12))))));
- uint128_t x19 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0xbb * ((0x2 * ((uint128_t)x10 * x13)) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + (0x2 * ((uint128_t)x13 * x10)))))));
- uint128_t x20 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0xbb * ((0x2 * ((uint128_t)x8 * x13)) + ((0x2 * ((uint128_t)x10 * x14)) + ((0x2 * ((uint128_t)x12 * x12)) + ((0x2 * ((uint128_t)x14 * x10)) + (0x2 * ((uint128_t)x13 * x8))))))));
- uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xbb * ((0x2 * ((uint128_t)x6 * x13)) + ((0x2 * ((uint128_t)x8 * x14)) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + ((0x2 * ((uint128_t)x14 * x8)) + (0x2 * ((uint128_t)x13 * x6)))))))));
- uint128_t x22 = (((uint128_t)x2 * x2) + (0xbb * ((0x2 * ((uint128_t)x4 * x13)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + (0x2 * ((uint128_t)x13 * x4))))))))));
- uint64_t x23 = (uint64_t) (x22 >> 0x30);
- uint64_t x24 = ((uint64_t)x22 & 0xffffffffffff);
- uint128_t x25 = (x23 + x21);
- uint64_t x26 = (uint64_t) (x25 >> 0x30);
- uint64_t x27 = ((uint64_t)x25 & 0xffffffffffff);
- uint128_t x28 = (x26 + x20);
- uint64_t x29 = (uint64_t) (x28 >> 0x30);
- uint64_t x30 = ((uint64_t)x28 & 0xffffffffffff);
- uint128_t x31 = (x29 + x19);
- uint64_t x32 = (uint64_t) (x31 >> 0x30);
- uint64_t x33 = ((uint64_t)x31 & 0xffffffffffff);
- uint128_t x34 = (x32 + x18);
- uint64_t x35 = (uint64_t) (x34 >> 0x30);
- uint64_t x36 = ((uint64_t)x34 & 0xffffffffffff);
- uint128_t x37 = (x35 + x17);
- uint64_t x38 = (uint64_t) (x37 >> 0x30);
- uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- uint128_t x40 = (x38 + x16);
- uint64_t x41 = (uint64_t) (x40 >> 0x30);
- uint64_t x42 = ((uint64_t)x40 & 0xffffffffffff);
- uint128_t x43 = (x41 + x15);
- uint64_t x44 = (uint64_t) (x43 >> 0x2f);
- uint64_t x45 = ((uint64_t)x43 & 0x7fffffffffff);
- uint64_t x46 = (x24 + (0xbb * x44));
- uint64_t x47 = (x46 >> 0x30);
- uint64_t x48 = (x46 & 0xffffffffffff);
- uint64_t x49 = (x47 + x27);
- uint64_t x50 = (x49 >> 0x30);
- uint64_t x51 = (x49 & 0xffffffffffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m187_8limbs/fesquareDisplay.v b/src/Specific/solinas64_2e383m187_8limbs/fesquareDisplay.v
deleted file mode 100644
index 3753eadf4..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m187_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e383m187_8limbs/fesub.c b/src/Specific/solinas64_2e383m187_8limbs/fesub.c
deleted file mode 100644
index 0c04e9313..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = ((0x1fffffffffe8a + x5) - x19);
- out[1] = ((0x1fffffffffffe + x7) - x21);
- out[2] = ((0x1fffffffffffe + x9) - x23);
- out[3] = ((0x1fffffffffffe + x11) - x25);
- out[4] = ((0x1fffffffffffe + x13) - x27);
- out[5] = ((0x1fffffffffffe + x15) - x29);
- out[6] = ((0x1fffffffffffe + x17) - x31);
- out[7] = ((0xfffffffffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m187_8limbs/fesub.v b/src/Specific/solinas64_2e383m187_8limbs/fesub.v
deleted file mode 100644
index cb5edd9de..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m187_8limbs.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/solinas64_2e383m187_8limbs/fesubDisplay.log b/src/Specific/solinas64_2e383m187_8limbs/fesubDisplay.log
deleted file mode 100644
index ee17738c6..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0xfffffffffffe + x16) - x30), ((0x1fffffffffffe + x17) - x31), ((0x1fffffffffffe + x15) - x29), ((0x1fffffffffffe + x13) - x27), ((0x1fffffffffffe + x11) - x25), ((0x1fffffffffffe + x9) - x23), ((0x1fffffffffffe + x7) - x21), ((0x1fffffffffe8a + x5) - x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m187_8limbs/fesubDisplay.v b/src/Specific/solinas64_2e383m187_8limbs/fesubDisplay.v
deleted file mode 100644
index a68c5f2a0..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m187_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e383m187_8limbs/freeze.c b/src/Specific/solinas64_2e383m187_8limbs/freeze.c
deleted file mode 100644
index 4118fe35f..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffff45);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffffffffff);
- { uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0xffffffffffff);
- { uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0xffffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffffffffff);
- { uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0xffffffffffff);
- { uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0x7fffffffffff);
- { uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- { uint64_t x40 = (x39 & 0xffffffffff45);
- { uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint64_t x44 = (x39 & 0xffffffffffff);
- { uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint64_t x48 = (x39 & 0xffffffffffff);
- { uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint64_t x52 = (x39 & 0xffffffffffff);
- { uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint64_t x56 = (x39 & 0xffffffffffff);
- { uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint64_t x60 = (x39 & 0xffffffffffff);
- { uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint64_t x64 = (x39 & 0xffffffffffff);
- { uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint64_t x68 = (x39 & 0x7fffffffffff);
- { uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m187_8limbs/freeze.v b/src/Specific/solinas64_2e383m187_8limbs/freeze.v
deleted file mode 100644
index c821e0af9..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m187_8limbs.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/solinas64_2e383m187_8limbs/freezeDisplay.log b/src/Specific/solinas64_2e383m187_8limbs/freezeDisplay.log
deleted file mode 100644
index b309a3ac4..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffff45);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffffffffff);
- uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0xffffffffffff);
- uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0xffffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffffffffff);
- uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0xffffffffffff);
- uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0x7fffffffffff);
- uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- uint64_t x40 = (x39 & 0xffffffffff45);
- uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint64_t x44 = (x39 & 0xffffffffffff);
- uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint64_t x48 = (x39 & 0xffffffffffff);
- uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint64_t x52 = (x39 & 0xffffffffffff);
- uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint64_t x56 = (x39 & 0xffffffffffff);
- uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint64_t x60 = (x39 & 0xffffffffffff);
- uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint64_t x64 = (x39 & 0xffffffffffff);
- uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint64_t x68 = (x39 & 0x7fffffffffff);
- uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m187_8limbs/freezeDisplay.v b/src/Specific/solinas64_2e383m187_8limbs/freezeDisplay.v
deleted file mode 100644
index 8a7f722eb..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m187_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e383m187_8limbs/py_interpreter.sh b/src/Specific/solinas64_2e383m187_8limbs/py_interpreter.sh
deleted file mode 100755
index 1de42f7c0..000000000
--- a/src/Specific/solinas64_2e383m187_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**383 - 187' -Dmodulus_bytes='47.875' -Da24='121665'
diff --git a/src/Specific/solinas64_2e383m31_7limbs/CurveParameters.v b/src/Specific/solinas64_2e383m31_7limbs/CurveParameters.v
deleted file mode 100644
index 13e2d3521..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^383 - 31
-Base: 54 + 5/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 54 + 5/7;
- bitwidth := 64;
- s := 2^383;
- c := [(1, 31)];
- carry_chains := Some [seq 0 (pred 7); [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/solinas64_2e383m31_7limbs/Synthesis.v b/src/Specific/solinas64_2e383m31_7limbs/Synthesis.v
deleted file mode 100644
index 0a677b269..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e383m31_7limbs.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/solinas64_2e383m31_7limbs/compiler.sh b/src/Specific/solinas64_2e383m31_7limbs/compiler.sh
deleted file mode 100755
index 0d3ea4b6b..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,55,54,55,55,54}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<383) - 31' "$@"
diff --git a/src/Specific/solinas64_2e383m31_7limbs/compilerxx.sh b/src/Specific/solinas64_2e383m31_7limbs/compilerxx.sh
deleted file mode 100755
index 1707258f5..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,55,54,55,55,54}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<383) - 31' "$@"
diff --git a/src/Specific/solinas64_2e383m31_7limbs/feadd.c b/src/Specific/solinas64_2e383m31_7limbs/feadd.c
deleted file mode 100644
index 9acf97578..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m31_7limbs/feadd.v b/src/Specific/solinas64_2e383m31_7limbs/feadd.v
deleted file mode 100644
index 71c17a987..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m31_7limbs.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/solinas64_2e383m31_7limbs/feaddDisplay.log b/src/Specific/solinas64_2e383m31_7limbs/feaddDisplay.log
deleted file mode 100644
index 6320440fc..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m31_7limbs/feaddDisplay.v b/src/Specific/solinas64_2e383m31_7limbs/feaddDisplay.v
deleted file mode 100644
index 811360d90..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m31_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e383m31_7limbs/fecarry.v b/src/Specific/solinas64_2e383m31_7limbs/fecarry.v
deleted file mode 100644
index a0793aae2..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m31_7limbs.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/solinas64_2e383m31_7limbs/fecarryDisplay.v b/src/Specific/solinas64_2e383m31_7limbs/fecarryDisplay.v
deleted file mode 100644
index 2925b3c36..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m31_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e383m31_7limbs/femul.c b/src/Specific/solinas64_2e383m31_7limbs/femul.c
deleted file mode 100644
index 7e794347b..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- { uint128_t x28 = (((uint128_t)x5 * x26) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((0x2 * ((uint128_t)x11 * x23)) + (((uint128_t)x13 * x21) + (((uint128_t)x15 * x19) + ((uint128_t)x14 * x17)))))));
- { uint128_t x29 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + (((uint128_t)x13 * x19) + ((uint128_t)x15 * x17)))))) + (0x1f * (0x2 * ((uint128_t)x14 * x26))));
- { uint128_t x30 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((0x2 * ((uint128_t)x9 * x21)) + ((0x2 * ((uint128_t)x11 * x19)) + ((uint128_t)x13 * x17))))) + (0x1f * ((0x2 * ((uint128_t)x15 * x26)) + (0x2 * ((uint128_t)x14 * x27)))));
- { uint128_t x31 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + ((uint128_t)x11 * x17)))) + (0x1f * (((uint128_t)x13 * x26) + (((uint128_t)x15 * x27) + ((uint128_t)x14 * x25)))));
- { uint128_t x32 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + ((uint128_t)x9 * x17))) + (0x1f * ((0x2 * ((uint128_t)x11 * x26)) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + (0x2 * ((uint128_t)x14 * x23)))))));
- { uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0x1f * ((0x2 * ((uint128_t)x9 * x26)) + ((0x2 * ((uint128_t)x11 * x27)) + (((uint128_t)x13 * x25) + ((0x2 * ((uint128_t)x15 * x23)) + (0x2 * ((uint128_t)x14 * x21))))))));
- { uint128_t x34 = (((uint128_t)x5 * x17) + (0x1f * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19)))))))));
- { uint128_t x35 = (x34 >> 0x37);
- { uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- { uint128_t x37 = (x35 + x33);
- { uint128_t x38 = (x37 >> 0x37);
- { uint64_t x39 = ((uint64_t)x37 & 0x7fffffffffffff);
- { uint128_t x40 = (x38 + x32);
- { uint128_t x41 = (x40 >> 0x37);
- { uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffffff);
- { uint128_t x43 = (x41 + x31);
- { uint128_t x44 = (x43 >> 0x36);
- { uint64_t x45 = ((uint64_t)x43 & 0x3fffffffffffff);
- { uint128_t x46 = (x44 + x30);
- { uint128_t x47 = (x46 >> 0x37);
- { uint64_t x48 = ((uint64_t)x46 & 0x7fffffffffffff);
- { uint128_t x49 = (x47 + x29);
- { uint64_t x50 = (uint64_t) (x49 >> 0x37);
- { uint64_t x51 = ((uint64_t)x49 & 0x7fffffffffffff);
- { uint128_t x52 = (x50 + x28);
- { uint64_t x53 = (uint64_t) (x52 >> 0x36);
- { uint64_t x54 = ((uint64_t)x52 & 0x3fffffffffffff);
- { uint128_t x55 = (x36 + ((uint128_t)0x1f * x53));
- { uint64_t x56 = (uint64_t) (x55 >> 0x37);
- { uint64_t x57 = ((uint64_t)x55 & 0x7fffffffffffff);
- { uint64_t x58 = (x56 + x39);
- { uint64_t x59 = (x58 >> 0x37);
- { uint64_t x60 = (x58 & 0x7fffffffffffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m31_7limbs/femul.v b/src/Specific/solinas64_2e383m31_7limbs/femul.v
deleted file mode 100644
index 1263eccbf..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m31_7limbs.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/solinas64_2e383m31_7limbs/femulDisplay.log b/src/Specific/solinas64_2e383m31_7limbs/femulDisplay.log
deleted file mode 100644
index 156895784..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint128_t x28 = (((uint128_t)x5 * x26) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((0x2 * ((uint128_t)x11 * x23)) + (((uint128_t)x13 * x21) + (((uint128_t)x15 * x19) + ((uint128_t)x14 * x17)))))));
- uint128_t x29 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + (((uint128_t)x13 * x19) + ((uint128_t)x15 * x17)))))) + (0x1f * (0x2 * ((uint128_t)x14 * x26))));
- uint128_t x30 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((0x2 * ((uint128_t)x9 * x21)) + ((0x2 * ((uint128_t)x11 * x19)) + ((uint128_t)x13 * x17))))) + (0x1f * ((0x2 * ((uint128_t)x15 * x26)) + (0x2 * ((uint128_t)x14 * x27)))));
- uint128_t x31 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + ((uint128_t)x11 * x17)))) + (0x1f * (((uint128_t)x13 * x26) + (((uint128_t)x15 * x27) + ((uint128_t)x14 * x25)))));
- uint128_t x32 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + ((uint128_t)x9 * x17))) + (0x1f * ((0x2 * ((uint128_t)x11 * x26)) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + (0x2 * ((uint128_t)x14 * x23)))))));
- uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0x1f * ((0x2 * ((uint128_t)x9 * x26)) + ((0x2 * ((uint128_t)x11 * x27)) + (((uint128_t)x13 * x25) + ((0x2 * ((uint128_t)x15 * x23)) + (0x2 * ((uint128_t)x14 * x21))))))));
- uint128_t x34 = (((uint128_t)x5 * x17) + (0x1f * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19)))))))));
- uint128_t x35 = (x34 >> 0x37);
- uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- uint128_t x37 = (x35 + x33);
- uint128_t x38 = (x37 >> 0x37);
- uint64_t x39 = ((uint64_t)x37 & 0x7fffffffffffff);
- uint128_t x40 = (x38 + x32);
- uint128_t x41 = (x40 >> 0x37);
- uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffffff);
- uint128_t x43 = (x41 + x31);
- uint128_t x44 = (x43 >> 0x36);
- uint64_t x45 = ((uint64_t)x43 & 0x3fffffffffffff);
- uint128_t x46 = (x44 + x30);
- uint128_t x47 = (x46 >> 0x37);
- uint64_t x48 = ((uint64_t)x46 & 0x7fffffffffffff);
- uint128_t x49 = (x47 + x29);
- uint64_t x50 = (uint64_t) (x49 >> 0x37);
- uint64_t x51 = ((uint64_t)x49 & 0x7fffffffffffff);
- uint128_t x52 = (x50 + x28);
- uint64_t x53 = (uint64_t) (x52 >> 0x36);
- uint64_t x54 = ((uint64_t)x52 & 0x3fffffffffffff);
- uint128_t x55 = (x36 + ((uint128_t)0x1f * x53));
- uint64_t x56 = (uint64_t) (x55 >> 0x37);
- uint64_t x57 = ((uint64_t)x55 & 0x7fffffffffffff);
- uint64_t x58 = (x56 + x39);
- uint64_t x59 = (x58 >> 0x37);
- uint64_t x60 = (x58 & 0x7fffffffffffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m31_7limbs/femulDisplay.v b/src/Specific/solinas64_2e383m31_7limbs/femulDisplay.v
deleted file mode 100644
index 448f19ae0..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m31_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e383m31_7limbs/fesquare.c b/src/Specific/solinas64_2e383m31_7limbs/fesquare.c
deleted file mode 100644
index 3b3f63a69..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x13 = (((uint128_t)x2 * x11) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x11 * x2)))))));
- { uint128_t x14 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x1f * (0x2 * ((uint128_t)x11 * x11))));
- { uint128_t x15 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x1f * ((0x2 * ((uint128_t)x12 * x11)) + (0x2 * ((uint128_t)x11 * x12)))));
- { uint128_t x16 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x1f * (((uint128_t)x10 * x11) + (((uint128_t)x12 * x12) + ((uint128_t)x11 * x10)))));
- { uint128_t x17 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x1f * ((0x2 * ((uint128_t)x8 * x11)) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (0x2 * ((uint128_t)x11 * x8)))))));
- { uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1f * ((0x2 * ((uint128_t)x6 * x11)) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + (0x2 * ((uint128_t)x11 * x6))))))));
- { uint128_t x19 = (((uint128_t)x2 * x2) + (0x1f * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4)))))))));
- { uint128_t x20 = (x19 >> 0x37);
- { uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint128_t x23 = (x22 >> 0x37);
- { uint64_t x24 = ((uint64_t)x22 & 0x7fffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint128_t x26 = (x25 >> 0x37);
- { uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint128_t x29 = (x28 >> 0x36);
- { uint64_t x30 = ((uint64_t)x28 & 0x3fffffffffffff);
- { uint128_t x31 = (x29 + x15);
- { uint128_t x32 = (x31 >> 0x37);
- { uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffffff);
- { uint128_t x34 = (x32 + x14);
- { uint64_t x35 = (uint64_t) (x34 >> 0x37);
- { uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- { uint128_t x37 = (x35 + x13);
- { uint64_t x38 = (uint64_t) (x37 >> 0x36);
- { uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffffff);
- { uint128_t x40 = (x21 + ((uint128_t)0x1f * x38));
- { uint64_t x41 = (uint64_t) (x40 >> 0x37);
- { uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffffff);
- { uint64_t x43 = (x41 + x24);
- { uint64_t x44 = (x43 >> 0x37);
- { uint64_t x45 = (x43 & 0x7fffffffffffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m31_7limbs/fesquare.v b/src/Specific/solinas64_2e383m31_7limbs/fesquare.v
deleted file mode 100644
index 9c368dcf3..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m31_7limbs.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/solinas64_2e383m31_7limbs/fesquareDisplay.log b/src/Specific/solinas64_2e383m31_7limbs/fesquareDisplay.log
deleted file mode 100644
index 373be871e..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x13 = (((uint128_t)x2 * x11) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x11 * x2)))))));
- uint128_t x14 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x1f * (0x2 * ((uint128_t)x11 * x11))));
- uint128_t x15 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x1f * ((0x2 * ((uint128_t)x12 * x11)) + (0x2 * ((uint128_t)x11 * x12)))));
- uint128_t x16 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x1f * (((uint128_t)x10 * x11) + (((uint128_t)x12 * x12) + ((uint128_t)x11 * x10)))));
- uint128_t x17 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x1f * ((0x2 * ((uint128_t)x8 * x11)) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (0x2 * ((uint128_t)x11 * x8)))))));
- uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1f * ((0x2 * ((uint128_t)x6 * x11)) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + (0x2 * ((uint128_t)x11 * x6))))))));
- uint128_t x19 = (((uint128_t)x2 * x2) + (0x1f * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4)))))))));
- uint128_t x20 = (x19 >> 0x37);
- uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint128_t x23 = (x22 >> 0x37);
- uint64_t x24 = ((uint64_t)x22 & 0x7fffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint128_t x26 = (x25 >> 0x37);
- uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint128_t x29 = (x28 >> 0x36);
- uint64_t x30 = ((uint64_t)x28 & 0x3fffffffffffff);
- uint128_t x31 = (x29 + x15);
- uint128_t x32 = (x31 >> 0x37);
- uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffffff);
- uint128_t x34 = (x32 + x14);
- uint64_t x35 = (uint64_t) (x34 >> 0x37);
- uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- uint128_t x37 = (x35 + x13);
- uint64_t x38 = (uint64_t) (x37 >> 0x36);
- uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffffff);
- uint128_t x40 = (x21 + ((uint128_t)0x1f * x38));
- uint64_t x41 = (uint64_t) (x40 >> 0x37);
- uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffffff);
- uint64_t x43 = (x41 + x24);
- uint64_t x44 = (x43 >> 0x37);
- uint64_t x45 = (x43 & 0x7fffffffffffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m31_7limbs/fesquareDisplay.v b/src/Specific/solinas64_2e383m31_7limbs/fesquareDisplay.v
deleted file mode 100644
index af63f8a8c..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m31_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e383m31_7limbs/fesub.c b/src/Specific/solinas64_2e383m31_7limbs/fesub.c
deleted file mode 100644
index 61697e052..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = ((0xffffffffffffc2 + x5) - x17);
- out[1] = ((0xfffffffffffffe + x7) - x19);
- out[2] = ((0xfffffffffffffe + x9) - x21);
- out[3] = ((0x7ffffffffffffe + x11) - x23);
- out[4] = ((0xfffffffffffffe + x13) - x25);
- out[5] = ((0xfffffffffffffe + x15) - x27);
- out[6] = ((0x7ffffffffffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m31_7limbs/fesub.v b/src/Specific/solinas64_2e383m31_7limbs/fesub.v
deleted file mode 100644
index d9052eea3..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m31_7limbs.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/solinas64_2e383m31_7limbs/fesubDisplay.log b/src/Specific/solinas64_2e383m31_7limbs/fesubDisplay.log
deleted file mode 100644
index 81c7d2cea..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0x7ffffffffffffe + x14) - x26), ((0xfffffffffffffe + x15) - x27), ((0xfffffffffffffe + x13) - x25), ((0x7ffffffffffffe + x11) - x23), ((0xfffffffffffffe + x9) - x21), ((0xfffffffffffffe + x7) - x19), ((0xffffffffffffc2 + x5) - x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m31_7limbs/fesubDisplay.v b/src/Specific/solinas64_2e383m31_7limbs/fesubDisplay.v
deleted file mode 100644
index 20646ab70..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m31_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e383m31_7limbs/freeze.c b/src/Specific/solinas64_2e383m31_7limbs/freeze.c
deleted file mode 100644
index 8038fbfcf..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffffe1);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0x7fffffffffffff);
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0x7fffffffffffff);
- { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0x3fffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0x7fffffffffffff);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0x7fffffffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0x3fffffffffffff);
- { uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- { uint64_t x35 = (x34 & 0x7fffffffffffe1);
- { uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint64_t x39 = (x34 & 0x7fffffffffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint64_t x43 = (x34 & 0x7fffffffffffff);
- { uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint64_t x47 = (x34 & 0x3fffffffffffff);
- { uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint64_t x51 = (x34 & 0x7fffffffffffff);
- { uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint64_t x55 = (x34 & 0x7fffffffffffff);
- { uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint64_t x59 = (x34 & 0x3fffffffffffff);
- { uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m31_7limbs/freeze.v b/src/Specific/solinas64_2e383m31_7limbs/freeze.v
deleted file mode 100644
index cdb82b5f3..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m31_7limbs.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/solinas64_2e383m31_7limbs/freezeDisplay.log b/src/Specific/solinas64_2e383m31_7limbs/freezeDisplay.log
deleted file mode 100644
index aa36ec1f0..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffffe1);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0x7fffffffffffff);
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0x7fffffffffffff);
- uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0x3fffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0x7fffffffffffff);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0x7fffffffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0x3fffffffffffff);
- uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- uint64_t x35 = (x34 & 0x7fffffffffffe1);
- uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint64_t x39 = (x34 & 0x7fffffffffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint64_t x43 = (x34 & 0x7fffffffffffff);
- uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint64_t x47 = (x34 & 0x3fffffffffffff);
- uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint64_t x51 = (x34 & 0x7fffffffffffff);
- uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint64_t x55 = (x34 & 0x7fffffffffffff);
- uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint64_t x59 = (x34 & 0x3fffffffffffff);
- uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m31_7limbs/freezeDisplay.v b/src/Specific/solinas64_2e383m31_7limbs/freezeDisplay.v
deleted file mode 100644
index ebafce527..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m31_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e383m31_7limbs/py_interpreter.sh b/src/Specific/solinas64_2e383m31_7limbs/py_interpreter.sh
deleted file mode 100755
index 70d2eeadd..000000000
--- a/src/Specific/solinas64_2e383m31_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**383 - 31' -Dmodulus_bytes='54 + 5/7' -Da24='121665'
diff --git a/src/Specific/solinas64_2e383m31_8limbs/CurveParameters.v b/src/Specific/solinas64_2e383m31_8limbs/CurveParameters.v
deleted file mode 100644
index f60ab95d7..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^383 - 31
-Base: 47.875
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 47 + 7/8;
- bitwidth := 64;
- s := 2^383;
- c := [(1, 31)];
- carry_chains := Some [seq 0 (pred 8); [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/solinas64_2e383m31_8limbs/Synthesis.v b/src/Specific/solinas64_2e383m31_8limbs/Synthesis.v
deleted file mode 100644
index c9d873339..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e383m31_8limbs.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/solinas64_2e383m31_8limbs/compiler.sh b/src/Specific/solinas64_2e383m31_8limbs/compiler.sh
deleted file mode 100755
index e54f91f2d..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,47}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<383) - 31' "$@"
diff --git a/src/Specific/solinas64_2e383m31_8limbs/compilerxx.sh b/src/Specific/solinas64_2e383m31_8limbs/compilerxx.sh
deleted file mode 100755
index 6f85748cf..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,47}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<383) - 31' "$@"
diff --git a/src/Specific/solinas64_2e383m31_8limbs/feadd.c b/src/Specific/solinas64_2e383m31_8limbs/feadd.c
deleted file mode 100644
index 4def6ee9c..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m31_8limbs/feadd.v b/src/Specific/solinas64_2e383m31_8limbs/feadd.v
deleted file mode 100644
index ef4498016..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m31_8limbs.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/solinas64_2e383m31_8limbs/feaddDisplay.log b/src/Specific/solinas64_2e383m31_8limbs/feaddDisplay.log
deleted file mode 100644
index 023fc8a31..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m31_8limbs/feaddDisplay.v b/src/Specific/solinas64_2e383m31_8limbs/feaddDisplay.v
deleted file mode 100644
index ebe068960..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m31_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e383m31_8limbs/fecarry.v b/src/Specific/solinas64_2e383m31_8limbs/fecarry.v
deleted file mode 100644
index 08e6d7081..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m31_8limbs.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/solinas64_2e383m31_8limbs/fecarryDisplay.v b/src/Specific/solinas64_2e383m31_8limbs/fecarryDisplay.v
deleted file mode 100644
index 8f4c2e215..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m31_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e383m31_8limbs/femul.c b/src/Specific/solinas64_2e383m31_8limbs/femul.c
deleted file mode 100644
index 656ff1e58..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint128_t x32 = (((uint128_t)x5 * x30) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + (((uint128_t)x17 * x21) + ((uint128_t)x16 * x19))))))));
- { uint128_t x33 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + (((uint128_t)x15 * x21) + ((uint128_t)x17 * x19))))))) + (0x1f * (0x2 * ((uint128_t)x16 * x30))));
- { uint128_t x34 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x15 * x19)))))) + (0x1f * ((0x2 * ((uint128_t)x17 * x30)) + (0x2 * ((uint128_t)x16 * x31)))));
- { uint128_t x35 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + ((uint128_t)x13 * x19))))) + (0x1f * ((0x2 * ((uint128_t)x15 * x30)) + ((0x2 * ((uint128_t)x17 * x31)) + (0x2 * ((uint128_t)x16 * x29))))));
- { uint128_t x36 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (0x1f * ((0x2 * ((uint128_t)x13 * x30)) + ((0x2 * ((uint128_t)x15 * x31)) + ((0x2 * ((uint128_t)x17 * x29)) + (0x2 * ((uint128_t)x16 * x27)))))));
- { uint128_t x37 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))) + (0x1f * ((0x2 * ((uint128_t)x11 * x30)) + ((0x2 * ((uint128_t)x13 * x31)) + ((0x2 * ((uint128_t)x15 * x29)) + ((0x2 * ((uint128_t)x17 * x27)) + (0x2 * ((uint128_t)x16 * x25))))))));
- { uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x1f * ((0x2 * ((uint128_t)x9 * x30)) + ((0x2 * ((uint128_t)x11 * x31)) + ((0x2 * ((uint128_t)x13 * x29)) + ((0x2 * ((uint128_t)x15 * x27)) + ((0x2 * ((uint128_t)x17 * x25)) + (0x2 * ((uint128_t)x16 * x23)))))))));
- { uint128_t x39 = (((uint128_t)x5 * x19) + (0x1f * ((0x2 * ((uint128_t)x7 * x30)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((0x2 * ((uint128_t)x17 * x23)) + (0x2 * ((uint128_t)x16 * x21))))))))));
- { uint64_t x40 = (uint64_t) (x39 >> 0x30);
- { uint64_t x41 = ((uint64_t)x39 & 0xffffffffffff);
- { uint128_t x42 = (x40 + x38);
- { uint64_t x43 = (uint64_t) (x42 >> 0x30);
- { uint64_t x44 = ((uint64_t)x42 & 0xffffffffffff);
- { uint128_t x45 = (x43 + x37);
- { uint64_t x46 = (uint64_t) (x45 >> 0x30);
- { uint64_t x47 = ((uint64_t)x45 & 0xffffffffffff);
- { uint128_t x48 = (x46 + x36);
- { uint64_t x49 = (uint64_t) (x48 >> 0x30);
- { uint64_t x50 = ((uint64_t)x48 & 0xffffffffffff);
- { uint128_t x51 = (x49 + x35);
- { uint64_t x52 = (uint64_t) (x51 >> 0x30);
- { uint64_t x53 = ((uint64_t)x51 & 0xffffffffffff);
- { uint128_t x54 = (x52 + x34);
- { uint64_t x55 = (uint64_t) (x54 >> 0x30);
- { uint64_t x56 = ((uint64_t)x54 & 0xffffffffffff);
- { uint128_t x57 = (x55 + x33);
- { uint64_t x58 = (uint64_t) (x57 >> 0x30);
- { uint64_t x59 = ((uint64_t)x57 & 0xffffffffffff);
- { uint128_t x60 = (x58 + x32);
- { uint64_t x61 = (uint64_t) (x60 >> 0x2f);
- { uint64_t x62 = ((uint64_t)x60 & 0x7fffffffffff);
- { uint64_t x63 = (x41 + (0x1f * x61));
- { uint64_t x64 = (x63 >> 0x30);
- { uint64_t x65 = (x63 & 0xffffffffffff);
- { uint64_t x66 = (x64 + x44);
- { uint64_t x67 = (x66 >> 0x30);
- { uint64_t x68 = (x66 & 0xffffffffffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m31_8limbs/femul.v b/src/Specific/solinas64_2e383m31_8limbs/femul.v
deleted file mode 100644
index 08556a8ab..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m31_8limbs.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/solinas64_2e383m31_8limbs/femulDisplay.log b/src/Specific/solinas64_2e383m31_8limbs/femulDisplay.log
deleted file mode 100644
index 0abc454be..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint128_t x32 = (((uint128_t)x5 * x30) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + (((uint128_t)x17 * x21) + ((uint128_t)x16 * x19))))))));
- uint128_t x33 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + (((uint128_t)x15 * x21) + ((uint128_t)x17 * x19))))))) + (0x1f * (0x2 * ((uint128_t)x16 * x30))));
- uint128_t x34 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x15 * x19)))))) + (0x1f * ((0x2 * ((uint128_t)x17 * x30)) + (0x2 * ((uint128_t)x16 * x31)))));
- uint128_t x35 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + ((uint128_t)x13 * x19))))) + (0x1f * ((0x2 * ((uint128_t)x15 * x30)) + ((0x2 * ((uint128_t)x17 * x31)) + (0x2 * ((uint128_t)x16 * x29))))));
- uint128_t x36 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (0x1f * ((0x2 * ((uint128_t)x13 * x30)) + ((0x2 * ((uint128_t)x15 * x31)) + ((0x2 * ((uint128_t)x17 * x29)) + (0x2 * ((uint128_t)x16 * x27)))))));
- uint128_t x37 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))) + (0x1f * ((0x2 * ((uint128_t)x11 * x30)) + ((0x2 * ((uint128_t)x13 * x31)) + ((0x2 * ((uint128_t)x15 * x29)) + ((0x2 * ((uint128_t)x17 * x27)) + (0x2 * ((uint128_t)x16 * x25))))))));
- uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x1f * ((0x2 * ((uint128_t)x9 * x30)) + ((0x2 * ((uint128_t)x11 * x31)) + ((0x2 * ((uint128_t)x13 * x29)) + ((0x2 * ((uint128_t)x15 * x27)) + ((0x2 * ((uint128_t)x17 * x25)) + (0x2 * ((uint128_t)x16 * x23)))))))));
- uint128_t x39 = (((uint128_t)x5 * x19) + (0x1f * ((0x2 * ((uint128_t)x7 * x30)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((0x2 * ((uint128_t)x17 * x23)) + (0x2 * ((uint128_t)x16 * x21))))))))));
- uint64_t x40 = (uint64_t) (x39 >> 0x30);
- uint64_t x41 = ((uint64_t)x39 & 0xffffffffffff);
- uint128_t x42 = (x40 + x38);
- uint64_t x43 = (uint64_t) (x42 >> 0x30);
- uint64_t x44 = ((uint64_t)x42 & 0xffffffffffff);
- uint128_t x45 = (x43 + x37);
- uint64_t x46 = (uint64_t) (x45 >> 0x30);
- uint64_t x47 = ((uint64_t)x45 & 0xffffffffffff);
- uint128_t x48 = (x46 + x36);
- uint64_t x49 = (uint64_t) (x48 >> 0x30);
- uint64_t x50 = ((uint64_t)x48 & 0xffffffffffff);
- uint128_t x51 = (x49 + x35);
- uint64_t x52 = (uint64_t) (x51 >> 0x30);
- uint64_t x53 = ((uint64_t)x51 & 0xffffffffffff);
- uint128_t x54 = (x52 + x34);
- uint64_t x55 = (uint64_t) (x54 >> 0x30);
- uint64_t x56 = ((uint64_t)x54 & 0xffffffffffff);
- uint128_t x57 = (x55 + x33);
- uint64_t x58 = (uint64_t) (x57 >> 0x30);
- uint64_t x59 = ((uint64_t)x57 & 0xffffffffffff);
- uint128_t x60 = (x58 + x32);
- uint64_t x61 = (uint64_t) (x60 >> 0x2f);
- uint64_t x62 = ((uint64_t)x60 & 0x7fffffffffff);
- uint64_t x63 = (x41 + (0x1f * x61));
- uint64_t x64 = (x63 >> 0x30);
- uint64_t x65 = (x63 & 0xffffffffffff);
- uint64_t x66 = (x64 + x44);
- uint64_t x67 = (x66 >> 0x30);
- uint64_t x68 = (x66 & 0xffffffffffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m31_8limbs/femulDisplay.v b/src/Specific/solinas64_2e383m31_8limbs/femulDisplay.v
deleted file mode 100644
index 8dc03935b..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m31_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e383m31_8limbs/fesquare.c b/src/Specific/solinas64_2e383m31_8limbs/fesquare.c
deleted file mode 100644
index 0114d4673..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x15 = (((uint128_t)x2 * x13) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x13 * x2))))))));
- { uint128_t x16 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x1f * (0x2 * ((uint128_t)x13 * x13))));
- { uint128_t x17 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x1f * ((0x2 * ((uint128_t)x14 * x13)) + (0x2 * ((uint128_t)x13 * x14)))));
- { uint128_t x18 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x1f * ((0x2 * ((uint128_t)x12 * x13)) + ((0x2 * ((uint128_t)x14 * x14)) + (0x2 * ((uint128_t)x13 * x12))))));
- { uint128_t x19 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x1f * ((0x2 * ((uint128_t)x10 * x13)) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + (0x2 * ((uint128_t)x13 * x10)))))));
- { uint128_t x20 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x1f * ((0x2 * ((uint128_t)x8 * x13)) + ((0x2 * ((uint128_t)x10 * x14)) + ((0x2 * ((uint128_t)x12 * x12)) + ((0x2 * ((uint128_t)x14 * x10)) + (0x2 * ((uint128_t)x13 * x8))))))));
- { uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1f * ((0x2 * ((uint128_t)x6 * x13)) + ((0x2 * ((uint128_t)x8 * x14)) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + ((0x2 * ((uint128_t)x14 * x8)) + (0x2 * ((uint128_t)x13 * x6)))))))));
- { uint128_t x22 = (((uint128_t)x2 * x2) + (0x1f * ((0x2 * ((uint128_t)x4 * x13)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + (0x2 * ((uint128_t)x13 * x4))))))))));
- { uint64_t x23 = (uint64_t) (x22 >> 0x30);
- { uint64_t x24 = ((uint64_t)x22 & 0xffffffffffff);
- { uint128_t x25 = (x23 + x21);
- { uint64_t x26 = (uint64_t) (x25 >> 0x30);
- { uint64_t x27 = ((uint64_t)x25 & 0xffffffffffff);
- { uint128_t x28 = (x26 + x20);
- { uint64_t x29 = (uint64_t) (x28 >> 0x30);
- { uint64_t x30 = ((uint64_t)x28 & 0xffffffffffff);
- { uint128_t x31 = (x29 + x19);
- { uint64_t x32 = (uint64_t) (x31 >> 0x30);
- { uint64_t x33 = ((uint64_t)x31 & 0xffffffffffff);
- { uint128_t x34 = (x32 + x18);
- { uint64_t x35 = (uint64_t) (x34 >> 0x30);
- { uint64_t x36 = ((uint64_t)x34 & 0xffffffffffff);
- { uint128_t x37 = (x35 + x17);
- { uint64_t x38 = (uint64_t) (x37 >> 0x30);
- { uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- { uint128_t x40 = (x38 + x16);
- { uint64_t x41 = (uint64_t) (x40 >> 0x30);
- { uint64_t x42 = ((uint64_t)x40 & 0xffffffffffff);
- { uint128_t x43 = (x41 + x15);
- { uint64_t x44 = (uint64_t) (x43 >> 0x2f);
- { uint64_t x45 = ((uint64_t)x43 & 0x7fffffffffff);
- { uint64_t x46 = (x24 + (0x1f * x44));
- { uint64_t x47 = (x46 >> 0x30);
- { uint64_t x48 = (x46 & 0xffffffffffff);
- { uint64_t x49 = (x47 + x27);
- { uint64_t x50 = (x49 >> 0x30);
- { uint64_t x51 = (x49 & 0xffffffffffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m31_8limbs/fesquare.v b/src/Specific/solinas64_2e383m31_8limbs/fesquare.v
deleted file mode 100644
index 85b2fa0f2..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m31_8limbs.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/solinas64_2e383m31_8limbs/fesquareDisplay.log b/src/Specific/solinas64_2e383m31_8limbs/fesquareDisplay.log
deleted file mode 100644
index 74338d971..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x15 = (((uint128_t)x2 * x13) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x13 * x2))))))));
- uint128_t x16 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x1f * (0x2 * ((uint128_t)x13 * x13))));
- uint128_t x17 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x1f * ((0x2 * ((uint128_t)x14 * x13)) + (0x2 * ((uint128_t)x13 * x14)))));
- uint128_t x18 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x1f * ((0x2 * ((uint128_t)x12 * x13)) + ((0x2 * ((uint128_t)x14 * x14)) + (0x2 * ((uint128_t)x13 * x12))))));
- uint128_t x19 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x1f * ((0x2 * ((uint128_t)x10 * x13)) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + (0x2 * ((uint128_t)x13 * x10)))))));
- uint128_t x20 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x1f * ((0x2 * ((uint128_t)x8 * x13)) + ((0x2 * ((uint128_t)x10 * x14)) + ((0x2 * ((uint128_t)x12 * x12)) + ((0x2 * ((uint128_t)x14 * x10)) + (0x2 * ((uint128_t)x13 * x8))))))));
- uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1f * ((0x2 * ((uint128_t)x6 * x13)) + ((0x2 * ((uint128_t)x8 * x14)) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + ((0x2 * ((uint128_t)x14 * x8)) + (0x2 * ((uint128_t)x13 * x6)))))))));
- uint128_t x22 = (((uint128_t)x2 * x2) + (0x1f * ((0x2 * ((uint128_t)x4 * x13)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + (0x2 * ((uint128_t)x13 * x4))))))))));
- uint64_t x23 = (uint64_t) (x22 >> 0x30);
- uint64_t x24 = ((uint64_t)x22 & 0xffffffffffff);
- uint128_t x25 = (x23 + x21);
- uint64_t x26 = (uint64_t) (x25 >> 0x30);
- uint64_t x27 = ((uint64_t)x25 & 0xffffffffffff);
- uint128_t x28 = (x26 + x20);
- uint64_t x29 = (uint64_t) (x28 >> 0x30);
- uint64_t x30 = ((uint64_t)x28 & 0xffffffffffff);
- uint128_t x31 = (x29 + x19);
- uint64_t x32 = (uint64_t) (x31 >> 0x30);
- uint64_t x33 = ((uint64_t)x31 & 0xffffffffffff);
- uint128_t x34 = (x32 + x18);
- uint64_t x35 = (uint64_t) (x34 >> 0x30);
- uint64_t x36 = ((uint64_t)x34 & 0xffffffffffff);
- uint128_t x37 = (x35 + x17);
- uint64_t x38 = (uint64_t) (x37 >> 0x30);
- uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- uint128_t x40 = (x38 + x16);
- uint64_t x41 = (uint64_t) (x40 >> 0x30);
- uint64_t x42 = ((uint64_t)x40 & 0xffffffffffff);
- uint128_t x43 = (x41 + x15);
- uint64_t x44 = (uint64_t) (x43 >> 0x2f);
- uint64_t x45 = ((uint64_t)x43 & 0x7fffffffffff);
- uint64_t x46 = (x24 + (0x1f * x44));
- uint64_t x47 = (x46 >> 0x30);
- uint64_t x48 = (x46 & 0xffffffffffff);
- uint64_t x49 = (x47 + x27);
- uint64_t x50 = (x49 >> 0x30);
- uint64_t x51 = (x49 & 0xffffffffffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m31_8limbs/fesquareDisplay.v b/src/Specific/solinas64_2e383m31_8limbs/fesquareDisplay.v
deleted file mode 100644
index 4c435d694..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m31_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e383m31_8limbs/fesub.c b/src/Specific/solinas64_2e383m31_8limbs/fesub.c
deleted file mode 100644
index 2c0f3a6eb..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = ((0x1ffffffffffc2 + x5) - x19);
- out[1] = ((0x1fffffffffffe + x7) - x21);
- out[2] = ((0x1fffffffffffe + x9) - x23);
- out[3] = ((0x1fffffffffffe + x11) - x25);
- out[4] = ((0x1fffffffffffe + x13) - x27);
- out[5] = ((0x1fffffffffffe + x15) - x29);
- out[6] = ((0x1fffffffffffe + x17) - x31);
- out[7] = ((0xfffffffffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m31_8limbs/fesub.v b/src/Specific/solinas64_2e383m31_8limbs/fesub.v
deleted file mode 100644
index 7c560bef9..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m31_8limbs.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/solinas64_2e383m31_8limbs/fesubDisplay.log b/src/Specific/solinas64_2e383m31_8limbs/fesubDisplay.log
deleted file mode 100644
index 0ef12f4cd..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0xfffffffffffe + x16) - x30), ((0x1fffffffffffe + x17) - x31), ((0x1fffffffffffe + x15) - x29), ((0x1fffffffffffe + x13) - x27), ((0x1fffffffffffe + x11) - x25), ((0x1fffffffffffe + x9) - x23), ((0x1fffffffffffe + x7) - x21), ((0x1ffffffffffc2 + x5) - x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m31_8limbs/fesubDisplay.v b/src/Specific/solinas64_2e383m31_8limbs/fesubDisplay.v
deleted file mode 100644
index acab0f004..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m31_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e383m31_8limbs/freeze.c b/src/Specific/solinas64_2e383m31_8limbs/freeze.c
deleted file mode 100644
index 0737617ce..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffe1);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffffffffff);
- { uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0xffffffffffff);
- { uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0xffffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffffffffff);
- { uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0xffffffffffff);
- { uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0x7fffffffffff);
- { uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- { uint64_t x40 = (x39 & 0xffffffffffe1);
- { uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint64_t x44 = (x39 & 0xffffffffffff);
- { uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint64_t x48 = (x39 & 0xffffffffffff);
- { uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint64_t x52 = (x39 & 0xffffffffffff);
- { uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint64_t x56 = (x39 & 0xffffffffffff);
- { uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint64_t x60 = (x39 & 0xffffffffffff);
- { uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint64_t x64 = (x39 & 0xffffffffffff);
- { uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint64_t x68 = (x39 & 0x7fffffffffff);
- { uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m31_8limbs/freeze.v b/src/Specific/solinas64_2e383m31_8limbs/freeze.v
deleted file mode 100644
index db8f97b6c..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m31_8limbs.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/solinas64_2e383m31_8limbs/freezeDisplay.log b/src/Specific/solinas64_2e383m31_8limbs/freezeDisplay.log
deleted file mode 100644
index aafdff64b..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffe1);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffffffffff);
- uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0xffffffffffff);
- uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0xffffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffffffffff);
- uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0xffffffffffff);
- uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0x7fffffffffff);
- uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- uint64_t x40 = (x39 & 0xffffffffffe1);
- uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint64_t x44 = (x39 & 0xffffffffffff);
- uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint64_t x48 = (x39 & 0xffffffffffff);
- uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint64_t x52 = (x39 & 0xffffffffffff);
- uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint64_t x56 = (x39 & 0xffffffffffff);
- uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint64_t x60 = (x39 & 0xffffffffffff);
- uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint64_t x64 = (x39 & 0xffffffffffff);
- uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint64_t x68 = (x39 & 0x7fffffffffff);
- uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m31_8limbs/freezeDisplay.v b/src/Specific/solinas64_2e383m31_8limbs/freezeDisplay.v
deleted file mode 100644
index 441f208fa..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m31_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e383m31_8limbs/py_interpreter.sh b/src/Specific/solinas64_2e383m31_8limbs/py_interpreter.sh
deleted file mode 100755
index 184caee1d..000000000
--- a/src/Specific/solinas64_2e383m31_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**383 - 31' -Dmodulus_bytes='47.875' -Da24='121665'
diff --git a/src/Specific/solinas64_2e383m421_7limbs/CurveParameters.v b/src/Specific/solinas64_2e383m421_7limbs/CurveParameters.v
deleted file mode 100644
index 5698b6f1b..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^383 - 421
-Base: 54 + 5/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 54 + 5/7;
- bitwidth := 64;
- s := 2^383;
- c := [(1, 421)];
- carry_chains := Some [seq 0 (pred 7); [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/solinas64_2e383m421_7limbs/Synthesis.v b/src/Specific/solinas64_2e383m421_7limbs/Synthesis.v
deleted file mode 100644
index 788b2784a..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e383m421_7limbs.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/solinas64_2e383m421_7limbs/compiler.sh b/src/Specific/solinas64_2e383m421_7limbs/compiler.sh
deleted file mode 100755
index 44477fd78..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,55,54,55,55,54}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<383) - 421' "$@"
diff --git a/src/Specific/solinas64_2e383m421_7limbs/compilerxx.sh b/src/Specific/solinas64_2e383m421_7limbs/compilerxx.sh
deleted file mode 100755
index c540a0473..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,55,54,55,55,54}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<383) - 421' "$@"
diff --git a/src/Specific/solinas64_2e383m421_7limbs/feadd.c b/src/Specific/solinas64_2e383m421_7limbs/feadd.c
deleted file mode 100644
index 9acf97578..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m421_7limbs/feadd.v b/src/Specific/solinas64_2e383m421_7limbs/feadd.v
deleted file mode 100644
index 2414a06f4..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m421_7limbs.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/solinas64_2e383m421_7limbs/feaddDisplay.log b/src/Specific/solinas64_2e383m421_7limbs/feaddDisplay.log
deleted file mode 100644
index 6320440fc..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m421_7limbs/feaddDisplay.v b/src/Specific/solinas64_2e383m421_7limbs/feaddDisplay.v
deleted file mode 100644
index e260162af..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m421_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e383m421_7limbs/fecarry.v b/src/Specific/solinas64_2e383m421_7limbs/fecarry.v
deleted file mode 100644
index ec8d915e5..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m421_7limbs.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/solinas64_2e383m421_7limbs/fecarryDisplay.v b/src/Specific/solinas64_2e383m421_7limbs/fecarryDisplay.v
deleted file mode 100644
index 387a99086..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m421_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e383m421_7limbs/femul.c b/src/Specific/solinas64_2e383m421_7limbs/femul.c
deleted file mode 100644
index bb277b002..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- { uint128_t x28 = (((uint128_t)x5 * x26) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((0x2 * ((uint128_t)x11 * x23)) + (((uint128_t)x13 * x21) + (((uint128_t)x15 * x19) + ((uint128_t)x14 * x17)))))));
- { uint128_t x29 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + (((uint128_t)x13 * x19) + ((uint128_t)x15 * x17)))))) + (0x1a5 * (0x2 * ((uint128_t)x14 * x26))));
- { uint128_t x30 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((0x2 * ((uint128_t)x9 * x21)) + ((0x2 * ((uint128_t)x11 * x19)) + ((uint128_t)x13 * x17))))) + (0x1a5 * ((0x2 * ((uint128_t)x15 * x26)) + (0x2 * ((uint128_t)x14 * x27)))));
- { uint128_t x31 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + ((uint128_t)x11 * x17)))) + (0x1a5 * (((uint128_t)x13 * x26) + (((uint128_t)x15 * x27) + ((uint128_t)x14 * x25)))));
- { uint128_t x32 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + ((uint128_t)x9 * x17))) + (0x1a5 * ((0x2 * ((uint128_t)x11 * x26)) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + (0x2 * ((uint128_t)x14 * x23)))))));
- { uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0x1a5 * ((0x2 * ((uint128_t)x9 * x26)) + ((0x2 * ((uint128_t)x11 * x27)) + (((uint128_t)x13 * x25) + ((0x2 * ((uint128_t)x15 * x23)) + (0x2 * ((uint128_t)x14 * x21))))))));
- { uint128_t x34 = (((uint128_t)x5 * x17) + (0x1a5 * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19)))))))));
- { uint128_t x35 = (x34 >> 0x37);
- { uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- { uint128_t x37 = (x35 + x33);
- { uint128_t x38 = (x37 >> 0x37);
- { uint64_t x39 = ((uint64_t)x37 & 0x7fffffffffffff);
- { uint128_t x40 = (x38 + x32);
- { uint128_t x41 = (x40 >> 0x37);
- { uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffffff);
- { uint128_t x43 = (x41 + x31);
- { uint128_t x44 = (x43 >> 0x36);
- { uint64_t x45 = ((uint64_t)x43 & 0x3fffffffffffff);
- { uint128_t x46 = (x44 + x30);
- { uint128_t x47 = (x46 >> 0x37);
- { uint64_t x48 = ((uint64_t)x46 & 0x7fffffffffffff);
- { uint128_t x49 = (x47 + x29);
- { uint128_t x50 = (x49 >> 0x37);
- { uint64_t x51 = ((uint64_t)x49 & 0x7fffffffffffff);
- { uint128_t x52 = (x50 + x28);
- { uint64_t x53 = (uint64_t) (x52 >> 0x36);
- { uint64_t x54 = ((uint64_t)x52 & 0x3fffffffffffff);
- { uint128_t x55 = (x36 + ((uint128_t)0x1a5 * x53));
- { uint64_t x56 = (uint64_t) (x55 >> 0x37);
- { uint64_t x57 = ((uint64_t)x55 & 0x7fffffffffffff);
- { uint64_t x58 = (x56 + x39);
- { uint64_t x59 = (x58 >> 0x37);
- { uint64_t x60 = (x58 & 0x7fffffffffffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m421_7limbs/femul.v b/src/Specific/solinas64_2e383m421_7limbs/femul.v
deleted file mode 100644
index c87e6a216..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m421_7limbs.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/solinas64_2e383m421_7limbs/femulDisplay.log b/src/Specific/solinas64_2e383m421_7limbs/femulDisplay.log
deleted file mode 100644
index b23253f01..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint128_t x28 = (((uint128_t)x5 * x26) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((0x2 * ((uint128_t)x11 * x23)) + (((uint128_t)x13 * x21) + (((uint128_t)x15 * x19) + ((uint128_t)x14 * x17)))))));
- uint128_t x29 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + (((uint128_t)x13 * x19) + ((uint128_t)x15 * x17)))))) + (0x1a5 * (0x2 * ((uint128_t)x14 * x26))));
- uint128_t x30 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((0x2 * ((uint128_t)x9 * x21)) + ((0x2 * ((uint128_t)x11 * x19)) + ((uint128_t)x13 * x17))))) + (0x1a5 * ((0x2 * ((uint128_t)x15 * x26)) + (0x2 * ((uint128_t)x14 * x27)))));
- uint128_t x31 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + ((uint128_t)x11 * x17)))) + (0x1a5 * (((uint128_t)x13 * x26) + (((uint128_t)x15 * x27) + ((uint128_t)x14 * x25)))));
- uint128_t x32 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + ((uint128_t)x9 * x17))) + (0x1a5 * ((0x2 * ((uint128_t)x11 * x26)) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + (0x2 * ((uint128_t)x14 * x23)))))));
- uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0x1a5 * ((0x2 * ((uint128_t)x9 * x26)) + ((0x2 * ((uint128_t)x11 * x27)) + (((uint128_t)x13 * x25) + ((0x2 * ((uint128_t)x15 * x23)) + (0x2 * ((uint128_t)x14 * x21))))))));
- uint128_t x34 = (((uint128_t)x5 * x17) + (0x1a5 * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19)))))))));
- uint128_t x35 = (x34 >> 0x37);
- uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- uint128_t x37 = (x35 + x33);
- uint128_t x38 = (x37 >> 0x37);
- uint64_t x39 = ((uint64_t)x37 & 0x7fffffffffffff);
- uint128_t x40 = (x38 + x32);
- uint128_t x41 = (x40 >> 0x37);
- uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffffff);
- uint128_t x43 = (x41 + x31);
- uint128_t x44 = (x43 >> 0x36);
- uint64_t x45 = ((uint64_t)x43 & 0x3fffffffffffff);
- uint128_t x46 = (x44 + x30);
- uint128_t x47 = (x46 >> 0x37);
- uint64_t x48 = ((uint64_t)x46 & 0x7fffffffffffff);
- uint128_t x49 = (x47 + x29);
- uint128_t x50 = (x49 >> 0x37);
- uint64_t x51 = ((uint64_t)x49 & 0x7fffffffffffff);
- uint128_t x52 = (x50 + x28);
- uint64_t x53 = (uint64_t) (x52 >> 0x36);
- uint64_t x54 = ((uint64_t)x52 & 0x3fffffffffffff);
- uint128_t x55 = (x36 + ((uint128_t)0x1a5 * x53));
- uint64_t x56 = (uint64_t) (x55 >> 0x37);
- uint64_t x57 = ((uint64_t)x55 & 0x7fffffffffffff);
- uint64_t x58 = (x56 + x39);
- uint64_t x59 = (x58 >> 0x37);
- uint64_t x60 = (x58 & 0x7fffffffffffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m421_7limbs/femulDisplay.v b/src/Specific/solinas64_2e383m421_7limbs/femulDisplay.v
deleted file mode 100644
index 32b4678fa..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m421_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e383m421_7limbs/fesquare.c b/src/Specific/solinas64_2e383m421_7limbs/fesquare.c
deleted file mode 100644
index dbb3b915e..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x13 = (((uint128_t)x2 * x11) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x11 * x2)))))));
- { uint128_t x14 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x1a5 * (0x2 * ((uint128_t)x11 * x11))));
- { uint128_t x15 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x1a5 * ((0x2 * ((uint128_t)x12 * x11)) + (0x2 * ((uint128_t)x11 * x12)))));
- { uint128_t x16 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x1a5 * (((uint128_t)x10 * x11) + (((uint128_t)x12 * x12) + ((uint128_t)x11 * x10)))));
- { uint128_t x17 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x1a5 * ((0x2 * ((uint128_t)x8 * x11)) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (0x2 * ((uint128_t)x11 * x8)))))));
- { uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1a5 * ((0x2 * ((uint128_t)x6 * x11)) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + (0x2 * ((uint128_t)x11 * x6))))))));
- { uint128_t x19 = (((uint128_t)x2 * x2) + (0x1a5 * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4)))))))));
- { uint128_t x20 = (x19 >> 0x37);
- { uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint128_t x23 = (x22 >> 0x37);
- { uint64_t x24 = ((uint64_t)x22 & 0x7fffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint128_t x26 = (x25 >> 0x37);
- { uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint128_t x29 = (x28 >> 0x36);
- { uint64_t x30 = ((uint64_t)x28 & 0x3fffffffffffff);
- { uint128_t x31 = (x29 + x15);
- { uint128_t x32 = (x31 >> 0x37);
- { uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffffff);
- { uint128_t x34 = (x32 + x14);
- { uint128_t x35 = (x34 >> 0x37);
- { uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- { uint128_t x37 = (x35 + x13);
- { uint64_t x38 = (uint64_t) (x37 >> 0x36);
- { uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffffff);
- { uint128_t x40 = (x21 + ((uint128_t)0x1a5 * x38));
- { uint64_t x41 = (uint64_t) (x40 >> 0x37);
- { uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffffff);
- { uint64_t x43 = (x41 + x24);
- { uint64_t x44 = (x43 >> 0x37);
- { uint64_t x45 = (x43 & 0x7fffffffffffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m421_7limbs/fesquare.v b/src/Specific/solinas64_2e383m421_7limbs/fesquare.v
deleted file mode 100644
index 26be7d209..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m421_7limbs.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/solinas64_2e383m421_7limbs/fesquareDisplay.log b/src/Specific/solinas64_2e383m421_7limbs/fesquareDisplay.log
deleted file mode 100644
index 8145d112e..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x13 = (((uint128_t)x2 * x11) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x11 * x2)))))));
- uint128_t x14 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x1a5 * (0x2 * ((uint128_t)x11 * x11))));
- uint128_t x15 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x1a5 * ((0x2 * ((uint128_t)x12 * x11)) + (0x2 * ((uint128_t)x11 * x12)))));
- uint128_t x16 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x1a5 * (((uint128_t)x10 * x11) + (((uint128_t)x12 * x12) + ((uint128_t)x11 * x10)))));
- uint128_t x17 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x1a5 * ((0x2 * ((uint128_t)x8 * x11)) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (0x2 * ((uint128_t)x11 * x8)))))));
- uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1a5 * ((0x2 * ((uint128_t)x6 * x11)) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + (0x2 * ((uint128_t)x11 * x6))))))));
- uint128_t x19 = (((uint128_t)x2 * x2) + (0x1a5 * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4)))))))));
- uint128_t x20 = (x19 >> 0x37);
- uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint128_t x23 = (x22 >> 0x37);
- uint64_t x24 = ((uint64_t)x22 & 0x7fffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint128_t x26 = (x25 >> 0x37);
- uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint128_t x29 = (x28 >> 0x36);
- uint64_t x30 = ((uint64_t)x28 & 0x3fffffffffffff);
- uint128_t x31 = (x29 + x15);
- uint128_t x32 = (x31 >> 0x37);
- uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffffff);
- uint128_t x34 = (x32 + x14);
- uint128_t x35 = (x34 >> 0x37);
- uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- uint128_t x37 = (x35 + x13);
- uint64_t x38 = (uint64_t) (x37 >> 0x36);
- uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffffff);
- uint128_t x40 = (x21 + ((uint128_t)0x1a5 * x38));
- uint64_t x41 = (uint64_t) (x40 >> 0x37);
- uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffffff);
- uint64_t x43 = (x41 + x24);
- uint64_t x44 = (x43 >> 0x37);
- uint64_t x45 = (x43 & 0x7fffffffffffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m421_7limbs/fesquareDisplay.v b/src/Specific/solinas64_2e383m421_7limbs/fesquareDisplay.v
deleted file mode 100644
index 11f071682..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m421_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e383m421_7limbs/fesub.c b/src/Specific/solinas64_2e383m421_7limbs/fesub.c
deleted file mode 100644
index aa444f92b..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = ((0xfffffffffffcb6 + x5) - x17);
- out[1] = ((0xfffffffffffffe + x7) - x19);
- out[2] = ((0xfffffffffffffe + x9) - x21);
- out[3] = ((0x7ffffffffffffe + x11) - x23);
- out[4] = ((0xfffffffffffffe + x13) - x25);
- out[5] = ((0xfffffffffffffe + x15) - x27);
- out[6] = ((0x7ffffffffffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m421_7limbs/fesub.v b/src/Specific/solinas64_2e383m421_7limbs/fesub.v
deleted file mode 100644
index f0a652f4e..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m421_7limbs.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/solinas64_2e383m421_7limbs/fesubDisplay.log b/src/Specific/solinas64_2e383m421_7limbs/fesubDisplay.log
deleted file mode 100644
index fff9cdcf5..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0x7ffffffffffffe + x14) - x26), ((0xfffffffffffffe + x15) - x27), ((0xfffffffffffffe + x13) - x25), ((0x7ffffffffffffe + x11) - x23), ((0xfffffffffffffe + x9) - x21), ((0xfffffffffffffe + x7) - x19), ((0xfffffffffffcb6 + x5) - x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m421_7limbs/fesubDisplay.v b/src/Specific/solinas64_2e383m421_7limbs/fesubDisplay.v
deleted file mode 100644
index ebbf7d69d..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m421_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e383m421_7limbs/freeze.c b/src/Specific/solinas64_2e383m421_7limbs/freeze.c
deleted file mode 100644
index ffc4e0361..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffffe5b);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0x7fffffffffffff);
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0x7fffffffffffff);
- { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0x3fffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0x7fffffffffffff);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0x7fffffffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0x3fffffffffffff);
- { uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- { uint64_t x35 = (x34 & 0x7ffffffffffe5b);
- { uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint64_t x39 = (x34 & 0x7fffffffffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint64_t x43 = (x34 & 0x7fffffffffffff);
- { uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint64_t x47 = (x34 & 0x3fffffffffffff);
- { uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint64_t x51 = (x34 & 0x7fffffffffffff);
- { uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint64_t x55 = (x34 & 0x7fffffffffffff);
- { uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint64_t x59 = (x34 & 0x3fffffffffffff);
- { uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m421_7limbs/freeze.v b/src/Specific/solinas64_2e383m421_7limbs/freeze.v
deleted file mode 100644
index da69a6c67..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m421_7limbs.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/solinas64_2e383m421_7limbs/freezeDisplay.log b/src/Specific/solinas64_2e383m421_7limbs/freezeDisplay.log
deleted file mode 100644
index 1b81b5d31..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffffe5b);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0x7fffffffffffff);
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0x7fffffffffffff);
- uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0x3fffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0x7fffffffffffff);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0x7fffffffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0x3fffffffffffff);
- uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- uint64_t x35 = (x34 & 0x7ffffffffffe5b);
- uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint64_t x39 = (x34 & 0x7fffffffffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint64_t x43 = (x34 & 0x7fffffffffffff);
- uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint64_t x47 = (x34 & 0x3fffffffffffff);
- uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint64_t x51 = (x34 & 0x7fffffffffffff);
- uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint64_t x55 = (x34 & 0x7fffffffffffff);
- uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint64_t x59 = (x34 & 0x3fffffffffffff);
- uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m421_7limbs/freezeDisplay.v b/src/Specific/solinas64_2e383m421_7limbs/freezeDisplay.v
deleted file mode 100644
index 93c8f12a5..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m421_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e383m421_7limbs/py_interpreter.sh b/src/Specific/solinas64_2e383m421_7limbs/py_interpreter.sh
deleted file mode 100755
index ad63014d1..000000000
--- a/src/Specific/solinas64_2e383m421_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**383 - 421' -Dmodulus_bytes='54 + 5/7' -Da24='121665'
diff --git a/src/Specific/solinas64_2e383m421_8limbs/CurveParameters.v b/src/Specific/solinas64_2e383m421_8limbs/CurveParameters.v
deleted file mode 100644
index 741a93431..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^383 - 421
-Base: 47.875
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 47 + 7/8;
- bitwidth := 64;
- s := 2^383;
- c := [(1, 421)];
- carry_chains := Some [seq 0 (pred 8); [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/solinas64_2e383m421_8limbs/Synthesis.v b/src/Specific/solinas64_2e383m421_8limbs/Synthesis.v
deleted file mode 100644
index 7f6603bad..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e383m421_8limbs.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/solinas64_2e383m421_8limbs/compiler.sh b/src/Specific/solinas64_2e383m421_8limbs/compiler.sh
deleted file mode 100755
index c1f1b8e40..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,47}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<383) - 421' "$@"
diff --git a/src/Specific/solinas64_2e383m421_8limbs/compilerxx.sh b/src/Specific/solinas64_2e383m421_8limbs/compilerxx.sh
deleted file mode 100755
index a22ba5dc8..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,47}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x5b}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<383) - 421' "$@"
diff --git a/src/Specific/solinas64_2e383m421_8limbs/feadd.c b/src/Specific/solinas64_2e383m421_8limbs/feadd.c
deleted file mode 100644
index 4def6ee9c..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m421_8limbs/feadd.v b/src/Specific/solinas64_2e383m421_8limbs/feadd.v
deleted file mode 100644
index 09fc93d80..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m421_8limbs.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/solinas64_2e383m421_8limbs/feaddDisplay.log b/src/Specific/solinas64_2e383m421_8limbs/feaddDisplay.log
deleted file mode 100644
index 023fc8a31..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m421_8limbs/feaddDisplay.v b/src/Specific/solinas64_2e383m421_8limbs/feaddDisplay.v
deleted file mode 100644
index e1c1bcb24..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m421_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e383m421_8limbs/fecarry.v b/src/Specific/solinas64_2e383m421_8limbs/fecarry.v
deleted file mode 100644
index eef265729..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m421_8limbs.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/solinas64_2e383m421_8limbs/fecarryDisplay.v b/src/Specific/solinas64_2e383m421_8limbs/fecarryDisplay.v
deleted file mode 100644
index 7ef474147..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m421_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e383m421_8limbs/femul.c b/src/Specific/solinas64_2e383m421_8limbs/femul.c
deleted file mode 100644
index 09581a285..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint128_t x32 = (((uint128_t)x5 * x30) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + (((uint128_t)x17 * x21) + ((uint128_t)x16 * x19))))))));
- { uint128_t x33 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + (((uint128_t)x15 * x21) + ((uint128_t)x17 * x19))))))) + (0x1a5 * (0x2 * ((uint128_t)x16 * x30))));
- { uint128_t x34 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x15 * x19)))))) + (0x1a5 * ((0x2 * ((uint128_t)x17 * x30)) + (0x2 * ((uint128_t)x16 * x31)))));
- { uint128_t x35 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + ((uint128_t)x13 * x19))))) + (0x1a5 * ((0x2 * ((uint128_t)x15 * x30)) + ((0x2 * ((uint128_t)x17 * x31)) + (0x2 * ((uint128_t)x16 * x29))))));
- { uint128_t x36 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (0x1a5 * ((0x2 * ((uint128_t)x13 * x30)) + ((0x2 * ((uint128_t)x15 * x31)) + ((0x2 * ((uint128_t)x17 * x29)) + (0x2 * ((uint128_t)x16 * x27)))))));
- { uint128_t x37 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))) + (0x1a5 * ((0x2 * ((uint128_t)x11 * x30)) + ((0x2 * ((uint128_t)x13 * x31)) + ((0x2 * ((uint128_t)x15 * x29)) + ((0x2 * ((uint128_t)x17 * x27)) + (0x2 * ((uint128_t)x16 * x25))))))));
- { uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x1a5 * ((0x2 * ((uint128_t)x9 * x30)) + ((0x2 * ((uint128_t)x11 * x31)) + ((0x2 * ((uint128_t)x13 * x29)) + ((0x2 * ((uint128_t)x15 * x27)) + ((0x2 * ((uint128_t)x17 * x25)) + (0x2 * ((uint128_t)x16 * x23)))))))));
- { uint128_t x39 = (((uint128_t)x5 * x19) + (0x1a5 * ((0x2 * ((uint128_t)x7 * x30)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((0x2 * ((uint128_t)x17 * x23)) + (0x2 * ((uint128_t)x16 * x21))))))))));
- { uint64_t x40 = (uint64_t) (x39 >> 0x30);
- { uint64_t x41 = ((uint64_t)x39 & 0xffffffffffff);
- { uint128_t x42 = (x40 + x38);
- { uint64_t x43 = (uint64_t) (x42 >> 0x30);
- { uint64_t x44 = ((uint64_t)x42 & 0xffffffffffff);
- { uint128_t x45 = (x43 + x37);
- { uint64_t x46 = (uint64_t) (x45 >> 0x30);
- { uint64_t x47 = ((uint64_t)x45 & 0xffffffffffff);
- { uint128_t x48 = (x46 + x36);
- { uint64_t x49 = (uint64_t) (x48 >> 0x30);
- { uint64_t x50 = ((uint64_t)x48 & 0xffffffffffff);
- { uint128_t x51 = (x49 + x35);
- { uint64_t x52 = (uint64_t) (x51 >> 0x30);
- { uint64_t x53 = ((uint64_t)x51 & 0xffffffffffff);
- { uint128_t x54 = (x52 + x34);
- { uint64_t x55 = (uint64_t) (x54 >> 0x30);
- { uint64_t x56 = ((uint64_t)x54 & 0xffffffffffff);
- { uint128_t x57 = (x55 + x33);
- { uint64_t x58 = (uint64_t) (x57 >> 0x30);
- { uint64_t x59 = ((uint64_t)x57 & 0xffffffffffff);
- { uint128_t x60 = (x58 + x32);
- { uint64_t x61 = (uint64_t) (x60 >> 0x2f);
- { uint64_t x62 = ((uint64_t)x60 & 0x7fffffffffff);
- { uint128_t x63 = (x41 + ((uint128_t)0x1a5 * x61));
- { uint64_t x64 = (uint64_t) (x63 >> 0x30);
- { uint64_t x65 = ((uint64_t)x63 & 0xffffffffffff);
- { uint64_t x66 = (x64 + x44);
- { uint64_t x67 = (x66 >> 0x30);
- { uint64_t x68 = (x66 & 0xffffffffffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m421_8limbs/femul.v b/src/Specific/solinas64_2e383m421_8limbs/femul.v
deleted file mode 100644
index a7931cd90..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m421_8limbs.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/solinas64_2e383m421_8limbs/femulDisplay.log b/src/Specific/solinas64_2e383m421_8limbs/femulDisplay.log
deleted file mode 100644
index 15505fb1c..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint128_t x32 = (((uint128_t)x5 * x30) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + (((uint128_t)x17 * x21) + ((uint128_t)x16 * x19))))))));
- uint128_t x33 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + (((uint128_t)x15 * x21) + ((uint128_t)x17 * x19))))))) + (0x1a5 * (0x2 * ((uint128_t)x16 * x30))));
- uint128_t x34 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x15 * x19)))))) + (0x1a5 * ((0x2 * ((uint128_t)x17 * x30)) + (0x2 * ((uint128_t)x16 * x31)))));
- uint128_t x35 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + ((uint128_t)x13 * x19))))) + (0x1a5 * ((0x2 * ((uint128_t)x15 * x30)) + ((0x2 * ((uint128_t)x17 * x31)) + (0x2 * ((uint128_t)x16 * x29))))));
- uint128_t x36 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (0x1a5 * ((0x2 * ((uint128_t)x13 * x30)) + ((0x2 * ((uint128_t)x15 * x31)) + ((0x2 * ((uint128_t)x17 * x29)) + (0x2 * ((uint128_t)x16 * x27)))))));
- uint128_t x37 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))) + (0x1a5 * ((0x2 * ((uint128_t)x11 * x30)) + ((0x2 * ((uint128_t)x13 * x31)) + ((0x2 * ((uint128_t)x15 * x29)) + ((0x2 * ((uint128_t)x17 * x27)) + (0x2 * ((uint128_t)x16 * x25))))))));
- uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x1a5 * ((0x2 * ((uint128_t)x9 * x30)) + ((0x2 * ((uint128_t)x11 * x31)) + ((0x2 * ((uint128_t)x13 * x29)) + ((0x2 * ((uint128_t)x15 * x27)) + ((0x2 * ((uint128_t)x17 * x25)) + (0x2 * ((uint128_t)x16 * x23)))))))));
- uint128_t x39 = (((uint128_t)x5 * x19) + (0x1a5 * ((0x2 * ((uint128_t)x7 * x30)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((0x2 * ((uint128_t)x17 * x23)) + (0x2 * ((uint128_t)x16 * x21))))))))));
- uint64_t x40 = (uint64_t) (x39 >> 0x30);
- uint64_t x41 = ((uint64_t)x39 & 0xffffffffffff);
- uint128_t x42 = (x40 + x38);
- uint64_t x43 = (uint64_t) (x42 >> 0x30);
- uint64_t x44 = ((uint64_t)x42 & 0xffffffffffff);
- uint128_t x45 = (x43 + x37);
- uint64_t x46 = (uint64_t) (x45 >> 0x30);
- uint64_t x47 = ((uint64_t)x45 & 0xffffffffffff);
- uint128_t x48 = (x46 + x36);
- uint64_t x49 = (uint64_t) (x48 >> 0x30);
- uint64_t x50 = ((uint64_t)x48 & 0xffffffffffff);
- uint128_t x51 = (x49 + x35);
- uint64_t x52 = (uint64_t) (x51 >> 0x30);
- uint64_t x53 = ((uint64_t)x51 & 0xffffffffffff);
- uint128_t x54 = (x52 + x34);
- uint64_t x55 = (uint64_t) (x54 >> 0x30);
- uint64_t x56 = ((uint64_t)x54 & 0xffffffffffff);
- uint128_t x57 = (x55 + x33);
- uint64_t x58 = (uint64_t) (x57 >> 0x30);
- uint64_t x59 = ((uint64_t)x57 & 0xffffffffffff);
- uint128_t x60 = (x58 + x32);
- uint64_t x61 = (uint64_t) (x60 >> 0x2f);
- uint64_t x62 = ((uint64_t)x60 & 0x7fffffffffff);
- uint128_t x63 = (x41 + ((uint128_t)0x1a5 * x61));
- uint64_t x64 = (uint64_t) (x63 >> 0x30);
- uint64_t x65 = ((uint64_t)x63 & 0xffffffffffff);
- uint64_t x66 = (x64 + x44);
- uint64_t x67 = (x66 >> 0x30);
- uint64_t x68 = (x66 & 0xffffffffffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m421_8limbs/femulDisplay.v b/src/Specific/solinas64_2e383m421_8limbs/femulDisplay.v
deleted file mode 100644
index 8dfa66a40..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m421_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e383m421_8limbs/fesquare.c b/src/Specific/solinas64_2e383m421_8limbs/fesquare.c
deleted file mode 100644
index 8741f3d62..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x15 = (((uint128_t)x2 * x13) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x13 * x2))))))));
- { uint128_t x16 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x1a5 * (0x2 * ((uint128_t)x13 * x13))));
- { uint128_t x17 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x1a5 * ((0x2 * ((uint128_t)x14 * x13)) + (0x2 * ((uint128_t)x13 * x14)))));
- { uint128_t x18 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x1a5 * ((0x2 * ((uint128_t)x12 * x13)) + ((0x2 * ((uint128_t)x14 * x14)) + (0x2 * ((uint128_t)x13 * x12))))));
- { uint128_t x19 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x1a5 * ((0x2 * ((uint128_t)x10 * x13)) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + (0x2 * ((uint128_t)x13 * x10)))))));
- { uint128_t x20 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x1a5 * ((0x2 * ((uint128_t)x8 * x13)) + ((0x2 * ((uint128_t)x10 * x14)) + ((0x2 * ((uint128_t)x12 * x12)) + ((0x2 * ((uint128_t)x14 * x10)) + (0x2 * ((uint128_t)x13 * x8))))))));
- { uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1a5 * ((0x2 * ((uint128_t)x6 * x13)) + ((0x2 * ((uint128_t)x8 * x14)) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + ((0x2 * ((uint128_t)x14 * x8)) + (0x2 * ((uint128_t)x13 * x6)))))))));
- { uint128_t x22 = (((uint128_t)x2 * x2) + (0x1a5 * ((0x2 * ((uint128_t)x4 * x13)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + (0x2 * ((uint128_t)x13 * x4))))))))));
- { uint64_t x23 = (uint64_t) (x22 >> 0x30);
- { uint64_t x24 = ((uint64_t)x22 & 0xffffffffffff);
- { uint128_t x25 = (x23 + x21);
- { uint64_t x26 = (uint64_t) (x25 >> 0x30);
- { uint64_t x27 = ((uint64_t)x25 & 0xffffffffffff);
- { uint128_t x28 = (x26 + x20);
- { uint64_t x29 = (uint64_t) (x28 >> 0x30);
- { uint64_t x30 = ((uint64_t)x28 & 0xffffffffffff);
- { uint128_t x31 = (x29 + x19);
- { uint64_t x32 = (uint64_t) (x31 >> 0x30);
- { uint64_t x33 = ((uint64_t)x31 & 0xffffffffffff);
- { uint128_t x34 = (x32 + x18);
- { uint64_t x35 = (uint64_t) (x34 >> 0x30);
- { uint64_t x36 = ((uint64_t)x34 & 0xffffffffffff);
- { uint128_t x37 = (x35 + x17);
- { uint64_t x38 = (uint64_t) (x37 >> 0x30);
- { uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- { uint128_t x40 = (x38 + x16);
- { uint64_t x41 = (uint64_t) (x40 >> 0x30);
- { uint64_t x42 = ((uint64_t)x40 & 0xffffffffffff);
- { uint128_t x43 = (x41 + x15);
- { uint64_t x44 = (uint64_t) (x43 >> 0x2f);
- { uint64_t x45 = ((uint64_t)x43 & 0x7fffffffffff);
- { uint128_t x46 = (x24 + ((uint128_t)0x1a5 * x44));
- { uint64_t x47 = (uint64_t) (x46 >> 0x30);
- { uint64_t x48 = ((uint64_t)x46 & 0xffffffffffff);
- { uint64_t x49 = (x47 + x27);
- { uint64_t x50 = (x49 >> 0x30);
- { uint64_t x51 = (x49 & 0xffffffffffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m421_8limbs/fesquare.v b/src/Specific/solinas64_2e383m421_8limbs/fesquare.v
deleted file mode 100644
index 0d0ab2797..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m421_8limbs.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/solinas64_2e383m421_8limbs/fesquareDisplay.log b/src/Specific/solinas64_2e383m421_8limbs/fesquareDisplay.log
deleted file mode 100644
index 5fdf43f35..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x15 = (((uint128_t)x2 * x13) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x13 * x2))))))));
- uint128_t x16 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x1a5 * (0x2 * ((uint128_t)x13 * x13))));
- uint128_t x17 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x1a5 * ((0x2 * ((uint128_t)x14 * x13)) + (0x2 * ((uint128_t)x13 * x14)))));
- uint128_t x18 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x1a5 * ((0x2 * ((uint128_t)x12 * x13)) + ((0x2 * ((uint128_t)x14 * x14)) + (0x2 * ((uint128_t)x13 * x12))))));
- uint128_t x19 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x1a5 * ((0x2 * ((uint128_t)x10 * x13)) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + (0x2 * ((uint128_t)x13 * x10)))))));
- uint128_t x20 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x1a5 * ((0x2 * ((uint128_t)x8 * x13)) + ((0x2 * ((uint128_t)x10 * x14)) + ((0x2 * ((uint128_t)x12 * x12)) + ((0x2 * ((uint128_t)x14 * x10)) + (0x2 * ((uint128_t)x13 * x8))))))));
- uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1a5 * ((0x2 * ((uint128_t)x6 * x13)) + ((0x2 * ((uint128_t)x8 * x14)) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + ((0x2 * ((uint128_t)x14 * x8)) + (0x2 * ((uint128_t)x13 * x6)))))))));
- uint128_t x22 = (((uint128_t)x2 * x2) + (0x1a5 * ((0x2 * ((uint128_t)x4 * x13)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + (0x2 * ((uint128_t)x13 * x4))))))))));
- uint64_t x23 = (uint64_t) (x22 >> 0x30);
- uint64_t x24 = ((uint64_t)x22 & 0xffffffffffff);
- uint128_t x25 = (x23 + x21);
- uint64_t x26 = (uint64_t) (x25 >> 0x30);
- uint64_t x27 = ((uint64_t)x25 & 0xffffffffffff);
- uint128_t x28 = (x26 + x20);
- uint64_t x29 = (uint64_t) (x28 >> 0x30);
- uint64_t x30 = ((uint64_t)x28 & 0xffffffffffff);
- uint128_t x31 = (x29 + x19);
- uint64_t x32 = (uint64_t) (x31 >> 0x30);
- uint64_t x33 = ((uint64_t)x31 & 0xffffffffffff);
- uint128_t x34 = (x32 + x18);
- uint64_t x35 = (uint64_t) (x34 >> 0x30);
- uint64_t x36 = ((uint64_t)x34 & 0xffffffffffff);
- uint128_t x37 = (x35 + x17);
- uint64_t x38 = (uint64_t) (x37 >> 0x30);
- uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- uint128_t x40 = (x38 + x16);
- uint64_t x41 = (uint64_t) (x40 >> 0x30);
- uint64_t x42 = ((uint64_t)x40 & 0xffffffffffff);
- uint128_t x43 = (x41 + x15);
- uint64_t x44 = (uint64_t) (x43 >> 0x2f);
- uint64_t x45 = ((uint64_t)x43 & 0x7fffffffffff);
- uint128_t x46 = (x24 + ((uint128_t)0x1a5 * x44));
- uint64_t x47 = (uint64_t) (x46 >> 0x30);
- uint64_t x48 = ((uint64_t)x46 & 0xffffffffffff);
- uint64_t x49 = (x47 + x27);
- uint64_t x50 = (x49 >> 0x30);
- uint64_t x51 = (x49 & 0xffffffffffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m421_8limbs/fesquareDisplay.v b/src/Specific/solinas64_2e383m421_8limbs/fesquareDisplay.v
deleted file mode 100644
index 86b0c77e9..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m421_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e383m421_8limbs/fesub.c b/src/Specific/solinas64_2e383m421_8limbs/fesub.c
deleted file mode 100644
index 2a0c0ae91..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = ((0x1fffffffffcb6 + x5) - x19);
- out[1] = ((0x1fffffffffffe + x7) - x21);
- out[2] = ((0x1fffffffffffe + x9) - x23);
- out[3] = ((0x1fffffffffffe + x11) - x25);
- out[4] = ((0x1fffffffffffe + x13) - x27);
- out[5] = ((0x1fffffffffffe + x15) - x29);
- out[6] = ((0x1fffffffffffe + x17) - x31);
- out[7] = ((0xfffffffffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m421_8limbs/fesub.v b/src/Specific/solinas64_2e383m421_8limbs/fesub.v
deleted file mode 100644
index 4150c2898..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m421_8limbs.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/solinas64_2e383m421_8limbs/fesubDisplay.log b/src/Specific/solinas64_2e383m421_8limbs/fesubDisplay.log
deleted file mode 100644
index 29e67e931..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0xfffffffffffe + x16) - x30), ((0x1fffffffffffe + x17) - x31), ((0x1fffffffffffe + x15) - x29), ((0x1fffffffffffe + x13) - x27), ((0x1fffffffffffe + x11) - x25), ((0x1fffffffffffe + x9) - x23), ((0x1fffffffffffe + x7) - x21), ((0x1fffffffffcb6 + x5) - x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m421_8limbs/fesubDisplay.v b/src/Specific/solinas64_2e383m421_8limbs/fesubDisplay.v
deleted file mode 100644
index e88f24693..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m421_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e383m421_8limbs/freeze.c b/src/Specific/solinas64_2e383m421_8limbs/freeze.c
deleted file mode 100644
index bed0e78df..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffe5b);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffffffffff);
- { uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0xffffffffffff);
- { uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0xffffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffffffffff);
- { uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0xffffffffffff);
- { uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0x7fffffffffff);
- { uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- { uint64_t x40 = (x39 & 0xfffffffffe5b);
- { uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint64_t x44 = (x39 & 0xffffffffffff);
- { uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint64_t x48 = (x39 & 0xffffffffffff);
- { uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint64_t x52 = (x39 & 0xffffffffffff);
- { uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint64_t x56 = (x39 & 0xffffffffffff);
- { uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint64_t x60 = (x39 & 0xffffffffffff);
- { uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint64_t x64 = (x39 & 0xffffffffffff);
- { uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint64_t x68 = (x39 & 0x7fffffffffff);
- { uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e383m421_8limbs/freeze.v b/src/Specific/solinas64_2e383m421_8limbs/freeze.v
deleted file mode 100644
index 0d47e43f3..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e383m421_8limbs.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/solinas64_2e383m421_8limbs/freezeDisplay.log b/src/Specific/solinas64_2e383m421_8limbs/freezeDisplay.log
deleted file mode 100644
index ced99cc44..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffe5b);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffffffffff);
- uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0xffffffffffff);
- uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0xffffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffffffffff);
- uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0xffffffffffff);
- uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0x7fffffffffff);
- uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- uint64_t x40 = (x39 & 0xfffffffffe5b);
- uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint64_t x44 = (x39 & 0xffffffffffff);
- uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint64_t x48 = (x39 & 0xffffffffffff);
- uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint64_t x52 = (x39 & 0xffffffffffff);
- uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint64_t x56 = (x39 & 0xffffffffffff);
- uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint64_t x60 = (x39 & 0xffffffffffff);
- uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint64_t x64 = (x39 & 0xffffffffffff);
- uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint64_t x68 = (x39 & 0x7fffffffffff);
- uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e383m421_8limbs/freezeDisplay.v b/src/Specific/solinas64_2e383m421_8limbs/freezeDisplay.v
deleted file mode 100644
index 80b076dc3..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e383m421_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e383m421_8limbs/py_interpreter.sh b/src/Specific/solinas64_2e383m421_8limbs/py_interpreter.sh
deleted file mode 100755
index c511faa73..000000000
--- a/src/Specific/solinas64_2e383m421_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**383 - 421' -Dmodulus_bytes='47.875' -Da24='121665'
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/CurveParameters.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/CurveParameters.v
deleted file mode 100644
index 26e99e21e..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^384 - 2^128 - 2^96 + 2^32 - 1
-Base: 38.4
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 38 + 2/5;
- bitwidth := 64;
- s := 2^384;
- c := [(1, 1); (2^32, -1); (2^96, 1); (2^128, 1)];
- carry_chains := Some [[2; 1; 9; 9]; [3; 2; 0; 4; 1; 5; 6; 7; 8; 9]; [3; 2; 0; 0]]%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/solinas64_2e384m2e128m2e96p2e32m1_10limbs/Synthesis.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/Synthesis.v
deleted file mode 100644
index ec5a624b5..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_10limbs.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/solinas64_2e384m2e128m2e96p2e32m1_10limbs/compiler.sh b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/compiler.sh
deleted file mode 100755
index 684728821..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{39,38,39,38,38,39,38,39,38,38}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1' "$@"
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/compilerxx.sh b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/compilerxx.sh
deleted file mode 100755
index 3b3175dbf..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{39,38,39,38,38,39,38,39,38,38}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1' "$@"
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/feadd.c b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/feadd.c
deleted file mode 100644
index df991e375..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/feadd.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void feadd(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- out[0] = (x5 + x23);
- out[1] = (x7 + x25);
- out[2] = (x9 + x27);
- out[3] = (x11 + x29);
- out[4] = (x13 + x31);
- out[5] = (x15 + x33);
- out[6] = (x17 + x35);
- out[7] = (x19 + x37);
- out[8] = (x21 + x39);
- out[9] = (x20 + x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/feadd.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/feadd.v
deleted file mode 100644
index 0f756700d..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_10limbs.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/solinas64_2e384m2e128m2e96p2e32m1_10limbs/feaddDisplay.log b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/feaddDisplay.log
deleted file mode 100644
index 04176128e..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/feaddDisplay.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/feaddDisplay.v
deleted file mode 100644
index 62054f4dd..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_10limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/fecarry.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/fecarry.v
deleted file mode 100644
index 2e5b127fc..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_10limbs.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/solinas64_2e384m2e128m2e96p2e32m1_10limbs/fecarryDisplay.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/fecarryDisplay.v
deleted file mode 100644
index 99ced9e6c..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_10limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/femul.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/femul.v
deleted file mode 100644
index d4e32c795..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_10limbs.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/solinas64_2e384m2e128m2e96p2e32m1_10limbs/femulDisplay.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/femulDisplay.v
deleted file mode 100644
index 720bf4d90..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_10limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/fesquare.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/fesquare.v
deleted file mode 100644
index a6d4de3c4..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_10limbs.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/solinas64_2e384m2e128m2e96p2e32m1_10limbs/fesquareDisplay.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/fesquareDisplay.v
deleted file mode 100644
index f5553f5ba..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_10limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/fesub.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/fesub.v
deleted file mode 100644
index 0c12ddf2b..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_10limbs.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/solinas64_2e384m2e128m2e96p2e32m1_10limbs/fesubDisplay.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/fesubDisplay.v
deleted file mode 100644
index f0e1a7c6e..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_10limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/freeze.c b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/freeze.c
deleted file mode 100644
index 59871c5ef..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/freeze.c
+++ /dev/null
@@ -1,53 +0,0 @@
-static void freeze(uint64_t out[10], const uint64_t in1[10]) {
- { const uint64_t x17 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x20, ℤ x21 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) Syntax.TZ) (0x0, Return x2, 0xffffffff);
- { uint64_t x23, ℤ x24 = Op (Syntax.SubWithGetBorrow 38 Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) Syntax.TZ) (Return x21, Return x4, 0x0);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 39 Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x6, 0x7ffff80000);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x8, 0x3fffffefff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x10, 0x3fffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x12, 0x7fffffffff);
- { uint64_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x14, 0x3fffffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x39, Return x16, 0x7fffffffff);
- { uint64_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x18, 0x3fffffffff);
- { uint64_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x17, 0x3fffffffff);
- { uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL);
- { uint64_t x50 = (x49 & 0xffffffff);
- { uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- { uint64_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x53, Return x23, 0x0);
- { uint64_t x57 = (x49 & 0x7ffff80000);
- { uint64_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x56, Return x26, Return x57);
- { uint64_t x61 = (x49 & 0x3fffffefff);
- { uint64_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x60, Return x29, Return x61);
- { uint64_t x65 = (x49 & 0x3fffffffff);
- { uint64_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x64, Return x32, Return x65);
- { uint64_t x69 = (x49 & 0x7fffffffff);
- { uint64_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x68, Return x35, Return x69);
- { uint64_t x73 = (x49 & 0x3fffffffff);
- { uint64_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x72, Return x38, Return x73);
- { uint64_t x77 = (x49 & 0x7fffffffff);
- { uint64_t x79, uint8_t x80 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x76, Return x41, Return x77);
- { uint64_t x81 = (x49 & 0x3fffffffff);
- { uint64_t x83, uint8_t x84 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x80, Return x44, Return x81);
- { uint64_t x85 = (x49 & 0x3fffffffff);
- { uint64_t x87, uint8_t _ = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x84, Return x47, Return x85);
- out[0] = x52;
- out[1] = x55;
- out[2] = x59;
- out[3] = x63;
- out[4] = x67;
- out[5] = x71;
- out[6] = x75;
- out[7] = x79;
- out[8] = x83;
- out[9] = x87;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/freeze.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/freeze.v
deleted file mode 100644
index 6f7aaccfa..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_10limbs.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/solinas64_2e384m2e128m2e96p2e32m1_10limbs/freezeDisplay.log b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/freezeDisplay.log
deleted file mode 100644
index 581a5304a..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/freezeDisplay.log
+++ /dev/null
@@ -1,37 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x20, ℤ x21 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) Syntax.TZ) (0x0, Return x2, 0xffffffff);
- uint64_t x23, ℤ x24 = Op (Syntax.SubWithGetBorrow 38 Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) Syntax.TZ) (Return x21, Return x4, 0x0);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 39 Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x6, 0x7ffff80000);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x8, 0x3fffffefff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x10, 0x3fffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x12, 0x7fffffffff);
- uint64_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x14, 0x3fffffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x39, Return x16, 0x7fffffffff);
- uint64_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x18, 0x3fffffffff);
- uint64_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x17, 0x3fffffffff);
- uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL);
- uint64_t x50 = (x49 & 0xffffffff);
- uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- uint64_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x53, Return x23, 0x0);
- uint64_t x57 = (x49 & 0x7ffff80000);
- uint64_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x56, Return x26, Return x57);
- uint64_t x61 = (x49 & 0x3fffffefff);
- uint64_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x60, Return x29, Return x61);
- uint64_t x65 = (x49 & 0x3fffffffff);
- uint64_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x64, Return x32, Return x65);
- uint64_t x69 = (x49 & 0x7fffffffff);
- uint64_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x68, Return x35, Return x69);
- uint64_t x73 = (x49 & 0x3fffffffff);
- uint64_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x72, Return x38, Return x73);
- uint64_t x77 = (x49 & 0x7fffffffff);
- uint64_t x79, uint8_t x80 = Op (Syntax.AddWithGetCarry 39 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x76, Return x41, Return x77);
- uint64_t x81 = (x49 & 0x3fffffffff);
- uint64_t x83, uint8_t x84 = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x80, Return x44, Return x81);
- uint64_t x85 = (x49 & 0x3fffffffff);
- uint64_t x87, uint8_t _ = Op (Syntax.AddWithGetCarry 38 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x84, Return x47, Return x85);
- (Return x87, Return x83, Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x52))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/freezeDisplay.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/freezeDisplay.v
deleted file mode 100644
index d91d85aac..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_10limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/py_interpreter.sh b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/py_interpreter.sh
deleted file mode 100755
index c454b518c..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_10limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**384 - 2**128 - 2**96 + 2**32 - 1' -Dmodulus_bytes='38.4' -Da24='121665'
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/CurveParameters.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/CurveParameters.v
deleted file mode 100644
index 9e20d5e3d..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^384 - 2^128 - 2^96 + 2^32 - 1
-Base: 42 + 2/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 42 + 2/3;
- bitwidth := 64;
- s := 2^384;
- c := [(1, 1); (2^32, -1); (2^96, 1); (2^128, 1)];
- carry_chains := Some [[2; 1; 8; 8]; [3; 2; 0; 4; 1; 5; 6; 7; 8]; [3; 2; 0; 0]]%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/solinas64_2e384m2e128m2e96p2e32m1_9limbs/Synthesis.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/Synthesis.v
deleted file mode 100644
index f9f63c9d2..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_9limbs.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/solinas64_2e384m2e128m2e96p2e32m1_9limbs/compiler.sh b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/compiler.sh
deleted file mode 100755
index 5dd02babe..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,42,43,43,42,43,43,42}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1' "$@"
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/compilerxx.sh b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/compilerxx.sh
deleted file mode 100755
index cb0e9ebfd..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{43,43,42,43,43,42,43,43,42}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<384) - (1_mpz<<128) - (1_mpz<<96) + (1_mpz<<32) - 1' "$@"
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/feadd.c b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/feadd.c
deleted file mode 100644
index 98ab4434c..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/feadd.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/feadd.v
deleted file mode 100644
index 0668550fa..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_9limbs.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/solinas64_2e384m2e128m2e96p2e32m1_9limbs/feaddDisplay.log b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/feaddDisplay.log
deleted file mode 100644
index 3b92b1c5c..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/feaddDisplay.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/feaddDisplay.v
deleted file mode 100644
index 560180261..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/fecarry.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/fecarry.v
deleted file mode 100644
index fe538d5c6..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_9limbs.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/solinas64_2e384m2e128m2e96p2e32m1_9limbs/fecarryDisplay.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/fecarryDisplay.v
deleted file mode 100644
index e1396586f..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/femul.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/femul.v
deleted file mode 100644
index a6332407f..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_9limbs.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/solinas64_2e384m2e128m2e96p2e32m1_9limbs/femulDisplay.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/femulDisplay.v
deleted file mode 100644
index ea88f51b7..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/fesquare.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/fesquare.v
deleted file mode 100644
index a2bef86b9..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_9limbs.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/solinas64_2e384m2e128m2e96p2e32m1_9limbs/fesquareDisplay.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/fesquareDisplay.v
deleted file mode 100644
index 8044d295d..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/fesub.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/fesub.v
deleted file mode 100644
index c20247e45..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_9limbs.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/solinas64_2e384m2e128m2e96p2e32m1_9limbs/fesubDisplay.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/fesubDisplay.v
deleted file mode 100644
index 5d367897f..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/freeze.c b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/freeze.c
deleted file mode 100644
index 6d2f3856d..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/freeze.c
+++ /dev/null
@@ -1,48 +0,0 @@
-static void freeze(uint64_t out[9], const uint64_t in1[9]) {
- { const uint64_t x15 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x18, ℤ x19 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) Syntax.TZ) (0x0, Return x2, 0xffffffff);
- { uint64_t x21, ℤ x22 = Op (Syntax.SubWithGetBorrow 43 Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) Syntax.TZ) (Return x19, Return x4, 0x0);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 42 Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x6, 0x3fffffffc00);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x8, 0x7fffffffffe);
- { uint64_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x10, 0x7ffffffffff);
- { uint64_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x12, 0x3ffffffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x34, Return x14, 0x7ffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x16, 0x7ffffffffff);
- { uint64_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x15, 0x3ffffffffff);
- { uint64_t x44 = cmovznz64(x43, 0x0, 0xffffffffffffffffL);
- { uint64_t x45 = (x44 & 0xffffffff);
- { uint64_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- { uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x21, 0x0);
- { uint64_t x52 = (x44 & 0x3fffffffc00);
- { uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x24, Return x52);
- { uint64_t x56 = (x44 & 0x7fffffffffe);
- { uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x27, Return x56);
- { uint64_t x60 = (x44 & 0x7ffffffffff);
- { uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x30, Return x60);
- { uint64_t x64 = (x44 & 0x3ffffffffff);
- { uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x33, Return x64);
- { uint64_t x68 = (x44 & 0x7ffffffffff);
- { uint64_t x70, uint8_t x71 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x36, Return x68);
- { uint64_t x72 = (x44 & 0x7ffffffffff);
- { uint64_t x74, uint8_t x75 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x71, Return x39, Return x72);
- { uint64_t x76 = (x44 & 0x3ffffffffff);
- { uint64_t x78, uint8_t _ = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x75, Return x42, Return x76);
- out[0] = x47;
- out[1] = x50;
- out[2] = x54;
- out[3] = x58;
- out[4] = x62;
- out[5] = x66;
- out[6] = x70;
- out[7] = x74;
- out[8] = x78;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/freeze.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/freeze.v
deleted file mode 100644
index fc919578f..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_9limbs.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/solinas64_2e384m2e128m2e96p2e32m1_9limbs/freezeDisplay.log b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/freezeDisplay.log
deleted file mode 100644
index 8330c090c..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,34 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x18, ℤ x19 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) Syntax.TZ) (0x0, Return x2, 0xffffffff);
- uint64_t x21, ℤ x22 = Op (Syntax.SubWithGetBorrow 43 Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) Syntax.TZ) (Return x19, Return x4, 0x0);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 42 Syntax.TZ (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x6, 0x3fffffffc00);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x8, 0x7fffffffffe);
- uint64_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x10, 0x7ffffffffff);
- uint64_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x12, 0x3ffffffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x34, Return x14, 0x7ffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x16, 0x7ffffffffff);
- uint64_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x15, 0x3ffffffffff);
- uint64_t x44 = cmovznz64(x43, 0x0, 0xffffffffffffffffL);
- uint64_t x45 = (x44 & 0xffffffff);
- uint64_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x21, 0x0);
- uint64_t x52 = (x44 & 0x3fffffffc00);
- uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x24, Return x52);
- uint64_t x56 = (x44 & 0x7fffffffffe);
- uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x27, Return x56);
- uint64_t x60 = (x44 & 0x7ffffffffff);
- uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x30, Return x60);
- uint64_t x64 = (x44 & 0x3ffffffffff);
- uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x33, Return x64);
- uint64_t x68 = (x44 & 0x7ffffffffff);
- uint64_t x70, uint8_t x71 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x36, Return x68);
- uint64_t x72 = (x44 & 0x7ffffffffff);
- uint64_t x74, uint8_t x75 = Op (Syntax.AddWithGetCarry 43 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x71, Return x39, Return x72);
- uint64_t x76 = (x44 & 0x3ffffffffff);
- uint64_t x78, uint8_t _ = Op (Syntax.AddWithGetCarry 42 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x75, Return x42, Return x76);
- (Return x78, Return x74, Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x47))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/freezeDisplay.v b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/freezeDisplay.v
deleted file mode 100644
index cc2807a51..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e384m2e128m2e96p2e32m1_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/py_interpreter.sh b/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/py_interpreter.sh
deleted file mode 100755
index 2ce0c8e92..000000000
--- a/src/Specific/solinas64_2e384m2e128m2e96p2e32m1_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**384 - 2**128 - 2**96 + 2**32 - 1' -Dmodulus_bytes='42 + 2/3' -Da24='121665'
diff --git a/src/Specific/solinas64_2e384m317_7limbs/CurveParameters.v b/src/Specific/solinas64_2e384m317_7limbs/CurveParameters.v
deleted file mode 100644
index 776d2fb21..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^384 - 317
-Base: 54 + 6/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 54 + 6/7;
- bitwidth := 64;
- s := 2^384;
- c := [(1, 317)];
- carry_chains := Some [seq 0 (pred 7); [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/solinas64_2e384m317_7limbs/Synthesis.v b/src/Specific/solinas64_2e384m317_7limbs/Synthesis.v
deleted file mode 100644
index b6a636db5..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e384m317_7limbs.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/solinas64_2e384m317_7limbs/compiler.sh b/src/Specific/solinas64_2e384m317_7limbs/compiler.sh
deleted file mode 100755
index 4567d5d6a..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,55,55,55,55,54}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<384) - 317' "$@"
diff --git a/src/Specific/solinas64_2e384m317_7limbs/compilerxx.sh b/src/Specific/solinas64_2e384m317_7limbs/compilerxx.sh
deleted file mode 100755
index e5f309f78..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,55,55,55,55,54}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<384) - 317' "$@"
diff --git a/src/Specific/solinas64_2e384m317_7limbs/feadd.c b/src/Specific/solinas64_2e384m317_7limbs/feadd.c
deleted file mode 100644
index 9acf97578..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e384m317_7limbs/feadd.v b/src/Specific/solinas64_2e384m317_7limbs/feadd.v
deleted file mode 100644
index d958799ff..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e384m317_7limbs.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/solinas64_2e384m317_7limbs/feaddDisplay.log b/src/Specific/solinas64_2e384m317_7limbs/feaddDisplay.log
deleted file mode 100644
index 6320440fc..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e384m317_7limbs/feaddDisplay.v b/src/Specific/solinas64_2e384m317_7limbs/feaddDisplay.v
deleted file mode 100644
index 7facdb37e..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e384m317_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e384m317_7limbs/fecarry.v b/src/Specific/solinas64_2e384m317_7limbs/fecarry.v
deleted file mode 100644
index 3e0d6e675..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e384m317_7limbs.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/solinas64_2e384m317_7limbs/fecarryDisplay.v b/src/Specific/solinas64_2e384m317_7limbs/fecarryDisplay.v
deleted file mode 100644
index 63da4f8a9..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e384m317_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e384m317_7limbs/femul.c b/src/Specific/solinas64_2e384m317_7limbs/femul.c
deleted file mode 100644
index cd02fc991..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- { uint128_t x28 = (((uint128_t)x5 * x26) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + (((uint128_t)x15 * x19) + ((uint128_t)x14 * x17)))))));
- { uint128_t x29 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + (((uint128_t)x13 * x19) + ((uint128_t)x15 * x17)))))) + (0x13d * (0x2 * ((uint128_t)x14 * x26))));
- { uint128_t x30 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + ((uint128_t)x13 * x17))))) + (0x13d * ((0x2 * ((uint128_t)x15 * x26)) + (0x2 * ((uint128_t)x14 * x27)))));
- { uint128_t x31 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + ((uint128_t)x11 * x17)))) + (0x13d * ((0x2 * ((uint128_t)x13 * x26)) + ((0x2 * ((uint128_t)x15 * x27)) + (0x2 * ((uint128_t)x14 * x25))))));
- { uint128_t x32 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + ((uint128_t)x9 * x17))) + (0x13d * ((0x2 * ((uint128_t)x11 * x26)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + (0x2 * ((uint128_t)x14 * x23)))))));
- { uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0x13d * ((0x2 * ((uint128_t)x9 * x26)) + ((0x2 * ((uint128_t)x11 * x27)) + ((0x2 * ((uint128_t)x13 * x25)) + ((0x2 * ((uint128_t)x15 * x23)) + (0x2 * ((uint128_t)x14 * x21))))))));
- { uint128_t x34 = (((uint128_t)x5 * x17) + (0x13d * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19)))))))));
- { uint128_t x35 = (x34 >> 0x37);
- { uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- { uint128_t x37 = (x35 + x33);
- { uint128_t x38 = (x37 >> 0x37);
- { uint64_t x39 = ((uint64_t)x37 & 0x7fffffffffffff);
- { uint128_t x40 = (x38 + x32);
- { uint128_t x41 = (x40 >> 0x37);
- { uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffffff);
- { uint128_t x43 = (x41 + x31);
- { uint128_t x44 = (x43 >> 0x37);
- { uint64_t x45 = ((uint64_t)x43 & 0x7fffffffffffff);
- { uint128_t x46 = (x44 + x30);
- { uint128_t x47 = (x46 >> 0x37);
- { uint64_t x48 = ((uint64_t)x46 & 0x7fffffffffffff);
- { uint128_t x49 = (x47 + x29);
- { uint128_t x50 = (x49 >> 0x37);
- { uint64_t x51 = ((uint64_t)x49 & 0x7fffffffffffff);
- { uint128_t x52 = (x50 + x28);
- { uint64_t x53 = (uint64_t) (x52 >> 0x36);
- { uint64_t x54 = ((uint64_t)x52 & 0x3fffffffffffff);
- { uint128_t x55 = (x36 + ((uint128_t)0x13d * x53));
- { uint64_t x56 = (uint64_t) (x55 >> 0x37);
- { uint64_t x57 = ((uint64_t)x55 & 0x7fffffffffffff);
- { uint64_t x58 = (x56 + x39);
- { uint64_t x59 = (x58 >> 0x37);
- { uint64_t x60 = (x58 & 0x7fffffffffffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e384m317_7limbs/femul.v b/src/Specific/solinas64_2e384m317_7limbs/femul.v
deleted file mode 100644
index 8228d1769..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e384m317_7limbs.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/solinas64_2e384m317_7limbs/femulDisplay.log b/src/Specific/solinas64_2e384m317_7limbs/femulDisplay.log
deleted file mode 100644
index 1c7c605af..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint128_t x28 = (((uint128_t)x5 * x26) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + (((uint128_t)x15 * x19) + ((uint128_t)x14 * x17)))))));
- uint128_t x29 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + (((uint128_t)x13 * x19) + ((uint128_t)x15 * x17)))))) + (0x13d * (0x2 * ((uint128_t)x14 * x26))));
- uint128_t x30 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + ((uint128_t)x13 * x17))))) + (0x13d * ((0x2 * ((uint128_t)x15 * x26)) + (0x2 * ((uint128_t)x14 * x27)))));
- uint128_t x31 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + ((uint128_t)x11 * x17)))) + (0x13d * ((0x2 * ((uint128_t)x13 * x26)) + ((0x2 * ((uint128_t)x15 * x27)) + (0x2 * ((uint128_t)x14 * x25))))));
- uint128_t x32 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + ((uint128_t)x9 * x17))) + (0x13d * ((0x2 * ((uint128_t)x11 * x26)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + (0x2 * ((uint128_t)x14 * x23)))))));
- uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0x13d * ((0x2 * ((uint128_t)x9 * x26)) + ((0x2 * ((uint128_t)x11 * x27)) + ((0x2 * ((uint128_t)x13 * x25)) + ((0x2 * ((uint128_t)x15 * x23)) + (0x2 * ((uint128_t)x14 * x21))))))));
- uint128_t x34 = (((uint128_t)x5 * x17) + (0x13d * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19)))))))));
- uint128_t x35 = (x34 >> 0x37);
- uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- uint128_t x37 = (x35 + x33);
- uint128_t x38 = (x37 >> 0x37);
- uint64_t x39 = ((uint64_t)x37 & 0x7fffffffffffff);
- uint128_t x40 = (x38 + x32);
- uint128_t x41 = (x40 >> 0x37);
- uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffffff);
- uint128_t x43 = (x41 + x31);
- uint128_t x44 = (x43 >> 0x37);
- uint64_t x45 = ((uint64_t)x43 & 0x7fffffffffffff);
- uint128_t x46 = (x44 + x30);
- uint128_t x47 = (x46 >> 0x37);
- uint64_t x48 = ((uint64_t)x46 & 0x7fffffffffffff);
- uint128_t x49 = (x47 + x29);
- uint128_t x50 = (x49 >> 0x37);
- uint64_t x51 = ((uint64_t)x49 & 0x7fffffffffffff);
- uint128_t x52 = (x50 + x28);
- uint64_t x53 = (uint64_t) (x52 >> 0x36);
- uint64_t x54 = ((uint64_t)x52 & 0x3fffffffffffff);
- uint128_t x55 = (x36 + ((uint128_t)0x13d * x53));
- uint64_t x56 = (uint64_t) (x55 >> 0x37);
- uint64_t x57 = ((uint64_t)x55 & 0x7fffffffffffff);
- uint64_t x58 = (x56 + x39);
- uint64_t x59 = (x58 >> 0x37);
- uint64_t x60 = (x58 & 0x7fffffffffffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e384m317_7limbs/femulDisplay.v b/src/Specific/solinas64_2e384m317_7limbs/femulDisplay.v
deleted file mode 100644
index 997397bbf..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e384m317_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e384m317_7limbs/fesquare.c b/src/Specific/solinas64_2e384m317_7limbs/fesquare.c
deleted file mode 100644
index 018525099..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x13 = (((uint128_t)x2 * x11) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x11 * x2)))))));
- { uint128_t x14 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x13d * (0x2 * ((uint128_t)x11 * x11))));
- { uint128_t x15 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x13d * ((0x2 * ((uint128_t)x12 * x11)) + (0x2 * ((uint128_t)x11 * x12)))));
- { uint128_t x16 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x13d * ((0x2 * ((uint128_t)x10 * x11)) + ((0x2 * ((uint128_t)x12 * x12)) + (0x2 * ((uint128_t)x11 * x10))))));
- { uint128_t x17 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x13d * ((0x2 * ((uint128_t)x8 * x11)) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + (0x2 * ((uint128_t)x11 * x8)))))));
- { uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x13d * ((0x2 * ((uint128_t)x6 * x11)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + (0x2 * ((uint128_t)x11 * x6))))))));
- { uint128_t x19 = (((uint128_t)x2 * x2) + (0x13d * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4)))))))));
- { uint128_t x20 = (x19 >> 0x37);
- { uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint128_t x23 = (x22 >> 0x37);
- { uint64_t x24 = ((uint64_t)x22 & 0x7fffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint128_t x26 = (x25 >> 0x37);
- { uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint128_t x29 = (x28 >> 0x37);
- { uint64_t x30 = ((uint64_t)x28 & 0x7fffffffffffff);
- { uint128_t x31 = (x29 + x15);
- { uint128_t x32 = (x31 >> 0x37);
- { uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffffff);
- { uint128_t x34 = (x32 + x14);
- { uint128_t x35 = (x34 >> 0x37);
- { uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- { uint128_t x37 = (x35 + x13);
- { uint64_t x38 = (uint64_t) (x37 >> 0x36);
- { uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffffff);
- { uint128_t x40 = (x21 + ((uint128_t)0x13d * x38));
- { uint64_t x41 = (uint64_t) (x40 >> 0x37);
- { uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffffff);
- { uint64_t x43 = (x41 + x24);
- { uint64_t x44 = (x43 >> 0x37);
- { uint64_t x45 = (x43 & 0x7fffffffffffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e384m317_7limbs/fesquare.v b/src/Specific/solinas64_2e384m317_7limbs/fesquare.v
deleted file mode 100644
index 86c95af67..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e384m317_7limbs.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/solinas64_2e384m317_7limbs/fesquareDisplay.log b/src/Specific/solinas64_2e384m317_7limbs/fesquareDisplay.log
deleted file mode 100644
index 4c60013e8..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x13 = (((uint128_t)x2 * x11) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x11 * x2)))))));
- uint128_t x14 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x13d * (0x2 * ((uint128_t)x11 * x11))));
- uint128_t x15 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x13d * ((0x2 * ((uint128_t)x12 * x11)) + (0x2 * ((uint128_t)x11 * x12)))));
- uint128_t x16 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x13d * ((0x2 * ((uint128_t)x10 * x11)) + ((0x2 * ((uint128_t)x12 * x12)) + (0x2 * ((uint128_t)x11 * x10))))));
- uint128_t x17 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x13d * ((0x2 * ((uint128_t)x8 * x11)) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + (0x2 * ((uint128_t)x11 * x8)))))));
- uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x13d * ((0x2 * ((uint128_t)x6 * x11)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + (0x2 * ((uint128_t)x11 * x6))))))));
- uint128_t x19 = (((uint128_t)x2 * x2) + (0x13d * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4)))))))));
- uint128_t x20 = (x19 >> 0x37);
- uint64_t x21 = ((uint64_t)x19 & 0x7fffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint128_t x23 = (x22 >> 0x37);
- uint64_t x24 = ((uint64_t)x22 & 0x7fffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint128_t x26 = (x25 >> 0x37);
- uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint128_t x29 = (x28 >> 0x37);
- uint64_t x30 = ((uint64_t)x28 & 0x7fffffffffffff);
- uint128_t x31 = (x29 + x15);
- uint128_t x32 = (x31 >> 0x37);
- uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffffff);
- uint128_t x34 = (x32 + x14);
- uint128_t x35 = (x34 >> 0x37);
- uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- uint128_t x37 = (x35 + x13);
- uint64_t x38 = (uint64_t) (x37 >> 0x36);
- uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffffff);
- uint128_t x40 = (x21 + ((uint128_t)0x13d * x38));
- uint64_t x41 = (uint64_t) (x40 >> 0x37);
- uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffffff);
- uint64_t x43 = (x41 + x24);
- uint64_t x44 = (x43 >> 0x37);
- uint64_t x45 = (x43 & 0x7fffffffffffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e384m317_7limbs/fesquareDisplay.v b/src/Specific/solinas64_2e384m317_7limbs/fesquareDisplay.v
deleted file mode 100644
index 9801aa4c8..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e384m317_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e384m317_7limbs/fesub.c b/src/Specific/solinas64_2e384m317_7limbs/fesub.c
deleted file mode 100644
index 6cdb3bf66..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = ((0xfffffffffffd86 + x5) - x17);
- out[1] = ((0xfffffffffffffe + x7) - x19);
- out[2] = ((0xfffffffffffffe + x9) - x21);
- out[3] = ((0xfffffffffffffe + x11) - x23);
- out[4] = ((0xfffffffffffffe + x13) - x25);
- out[5] = ((0xfffffffffffffe + x15) - x27);
- out[6] = ((0x7ffffffffffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e384m317_7limbs/fesub.v b/src/Specific/solinas64_2e384m317_7limbs/fesub.v
deleted file mode 100644
index f3b7cab3e..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e384m317_7limbs.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/solinas64_2e384m317_7limbs/fesubDisplay.log b/src/Specific/solinas64_2e384m317_7limbs/fesubDisplay.log
deleted file mode 100644
index 3f9fe41d4..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0x7ffffffffffffe + x14) - x26), ((0xfffffffffffffe + x15) - x27), ((0xfffffffffffffe + x13) - x25), ((0xfffffffffffffe + x11) - x23), ((0xfffffffffffffe + x9) - x21), ((0xfffffffffffffe + x7) - x19), ((0xfffffffffffd86 + x5) - x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e384m317_7limbs/fesubDisplay.v b/src/Specific/solinas64_2e384m317_7limbs/fesubDisplay.v
deleted file mode 100644
index 3a6062eb6..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e384m317_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e384m317_7limbs/freeze.c b/src/Specific/solinas64_2e384m317_7limbs/freeze.c
deleted file mode 100644
index 1f14c5109..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffffec3);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0x7fffffffffffff);
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0x7fffffffffffff);
- { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0x7fffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0x7fffffffffffff);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0x7fffffffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0x3fffffffffffff);
- { uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- { uint64_t x35 = (x34 & 0x7ffffffffffec3);
- { uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint64_t x39 = (x34 & 0x7fffffffffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint64_t x43 = (x34 & 0x7fffffffffffff);
- { uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint64_t x47 = (x34 & 0x7fffffffffffff);
- { uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint64_t x51 = (x34 & 0x7fffffffffffff);
- { uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint64_t x55 = (x34 & 0x7fffffffffffff);
- { uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint64_t x59 = (x34 & 0x3fffffffffffff);
- { uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e384m317_7limbs/freeze.v b/src/Specific/solinas64_2e384m317_7limbs/freeze.v
deleted file mode 100644
index 7fec27e3d..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e384m317_7limbs.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/solinas64_2e384m317_7limbs/freezeDisplay.log b/src/Specific/solinas64_2e384m317_7limbs/freezeDisplay.log
deleted file mode 100644
index 3b068fdfb..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffffec3);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0x7fffffffffffff);
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0x7fffffffffffff);
- uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0x7fffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0x7fffffffffffff);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0x7fffffffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0x3fffffffffffff);
- uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- uint64_t x35 = (x34 & 0x7ffffffffffec3);
- uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint64_t x39 = (x34 & 0x7fffffffffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint64_t x43 = (x34 & 0x7fffffffffffff);
- uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint64_t x47 = (x34 & 0x7fffffffffffff);
- uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint64_t x51 = (x34 & 0x7fffffffffffff);
- uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint64_t x55 = (x34 & 0x7fffffffffffff);
- uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint64_t x59 = (x34 & 0x3fffffffffffff);
- uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e384m317_7limbs/freezeDisplay.v b/src/Specific/solinas64_2e384m317_7limbs/freezeDisplay.v
deleted file mode 100644
index b8ee9d708..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e384m317_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e384m317_7limbs/py_interpreter.sh b/src/Specific/solinas64_2e384m317_7limbs/py_interpreter.sh
deleted file mode 100755
index 2ed7ddec3..000000000
--- a/src/Specific/solinas64_2e384m317_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**384 - 317' -Dmodulus_bytes='54 + 6/7' -Da24='121665'
diff --git a/src/Specific/solinas64_2e384m317_8limbs/CurveParameters.v b/src/Specific/solinas64_2e384m317_8limbs/CurveParameters.v
deleted file mode 100644
index 5378ea206..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^384 - 317
-Base: 48
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 48;
- bitwidth := 64;
- s := 2^384;
- c := [(1, 317)];
- carry_chains := Some [seq 0 (pred 8); [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/solinas64_2e384m317_8limbs/Synthesis.v b/src/Specific/solinas64_2e384m317_8limbs/Synthesis.v
deleted file mode 100644
index 3ae52d4b9..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e384m317_8limbs.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/solinas64_2e384m317_8limbs/compiler.sh b/src/Specific/solinas64_2e384m317_8limbs/compiler.sh
deleted file mode 100755
index 2284a67c3..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<384) - 317' "$@"
diff --git a/src/Specific/solinas64_2e384m317_8limbs/compilerxx.sh b/src/Specific/solinas64_2e384m317_8limbs/compilerxx.sh
deleted file mode 100755
index 5312bc71b..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xc3}' -Dmodulus_bytes_val='48' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<384) - 317' "$@"
diff --git a/src/Specific/solinas64_2e384m317_8limbs/feadd.c b/src/Specific/solinas64_2e384m317_8limbs/feadd.c
deleted file mode 100644
index 4def6ee9c..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e384m317_8limbs/feadd.v b/src/Specific/solinas64_2e384m317_8limbs/feadd.v
deleted file mode 100644
index 4753f72be..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e384m317_8limbs.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/solinas64_2e384m317_8limbs/feaddDisplay.log b/src/Specific/solinas64_2e384m317_8limbs/feaddDisplay.log
deleted file mode 100644
index 023fc8a31..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e384m317_8limbs/feaddDisplay.v b/src/Specific/solinas64_2e384m317_8limbs/feaddDisplay.v
deleted file mode 100644
index 5f2ad44a7..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e384m317_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e384m317_8limbs/fecarry.v b/src/Specific/solinas64_2e384m317_8limbs/fecarry.v
deleted file mode 100644
index 0caafdf90..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e384m317_8limbs.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/solinas64_2e384m317_8limbs/fecarryDisplay.v b/src/Specific/solinas64_2e384m317_8limbs/fecarryDisplay.v
deleted file mode 100644
index 970ddbbdd..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e384m317_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e384m317_8limbs/femul.c b/src/Specific/solinas64_2e384m317_8limbs/femul.c
deleted file mode 100644
index a28b9a126..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint128_t x32 = (((uint128_t)x5 * x30) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + (((uint128_t)x17 * x21) + ((uint128_t)x16 * x19))))))));
- { uint128_t x33 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + (((uint128_t)x15 * x21) + ((uint128_t)x17 * x19))))))) + (0x13d * ((uint128_t)x16 * x30)));
- { uint128_t x34 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x15 * x19)))))) + (0x13d * (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))));
- { uint128_t x35 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + ((uint128_t)x13 * x19))))) + (0x13d * (((uint128_t)x15 * x30) + (((uint128_t)x17 * x31) + ((uint128_t)x16 * x29)))));
- { uint128_t x36 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (0x13d * (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27))))));
- { uint128_t x37 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))) + (0x13d * (((uint128_t)x11 * x30) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + (((uint128_t)x17 * x27) + ((uint128_t)x16 * x25)))))));
- { uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x13d * (((uint128_t)x9 * x30) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + ((uint128_t)x16 * x23))))))));
- { uint128_t x39 = (((uint128_t)x5 * x19) + (0x13d * (((uint128_t)x7 * x30) + (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + (((uint128_t)x17 * x23) + ((uint128_t)x16 * x21)))))))));
- { uint64_t x40 = (uint64_t) (x39 >> 0x30);
- { uint64_t x41 = ((uint64_t)x39 & 0xffffffffffff);
- { uint128_t x42 = (x40 + x38);
- { uint64_t x43 = (uint64_t) (x42 >> 0x30);
- { uint64_t x44 = ((uint64_t)x42 & 0xffffffffffff);
- { uint128_t x45 = (x43 + x37);
- { uint64_t x46 = (uint64_t) (x45 >> 0x30);
- { uint64_t x47 = ((uint64_t)x45 & 0xffffffffffff);
- { uint128_t x48 = (x46 + x36);
- { uint64_t x49 = (uint64_t) (x48 >> 0x30);
- { uint64_t x50 = ((uint64_t)x48 & 0xffffffffffff);
- { uint128_t x51 = (x49 + x35);
- { uint64_t x52 = (uint64_t) (x51 >> 0x30);
- { uint64_t x53 = ((uint64_t)x51 & 0xffffffffffff);
- { uint128_t x54 = (x52 + x34);
- { uint64_t x55 = (uint64_t) (x54 >> 0x30);
- { uint64_t x56 = ((uint64_t)x54 & 0xffffffffffff);
- { uint128_t x57 = (x55 + x33);
- { uint64_t x58 = (uint64_t) (x57 >> 0x30);
- { uint64_t x59 = ((uint64_t)x57 & 0xffffffffffff);
- { uint128_t x60 = (x58 + x32);
- { uint64_t x61 = (uint64_t) (x60 >> 0x30);
- { uint64_t x62 = ((uint64_t)x60 & 0xffffffffffff);
- { uint64_t x63 = (x41 + (0x13d * x61));
- { uint64_t x64 = (x63 >> 0x30);
- { uint64_t x65 = (x63 & 0xffffffffffff);
- { uint64_t x66 = (x64 + x44);
- { uint64_t x67 = (x66 >> 0x30);
- { uint64_t x68 = (x66 & 0xffffffffffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e384m317_8limbs/femul.v b/src/Specific/solinas64_2e384m317_8limbs/femul.v
deleted file mode 100644
index 4fb26d110..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e384m317_8limbs.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/solinas64_2e384m317_8limbs/femulDisplay.log b/src/Specific/solinas64_2e384m317_8limbs/femulDisplay.log
deleted file mode 100644
index a9357bb1e..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint128_t x32 = (((uint128_t)x5 * x30) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + (((uint128_t)x17 * x21) + ((uint128_t)x16 * x19))))))));
- uint128_t x33 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + (((uint128_t)x15 * x21) + ((uint128_t)x17 * x19))))))) + (0x13d * ((uint128_t)x16 * x30)));
- uint128_t x34 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x15 * x19)))))) + (0x13d * (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))));
- uint128_t x35 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + ((uint128_t)x13 * x19))))) + (0x13d * (((uint128_t)x15 * x30) + (((uint128_t)x17 * x31) + ((uint128_t)x16 * x29)))));
- uint128_t x36 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (0x13d * (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27))))));
- uint128_t x37 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))) + (0x13d * (((uint128_t)x11 * x30) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + (((uint128_t)x17 * x27) + ((uint128_t)x16 * x25)))))));
- uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x13d * (((uint128_t)x9 * x30) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + ((uint128_t)x16 * x23))))))));
- uint128_t x39 = (((uint128_t)x5 * x19) + (0x13d * (((uint128_t)x7 * x30) + (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + (((uint128_t)x17 * x23) + ((uint128_t)x16 * x21)))))))));
- uint64_t x40 = (uint64_t) (x39 >> 0x30);
- uint64_t x41 = ((uint64_t)x39 & 0xffffffffffff);
- uint128_t x42 = (x40 + x38);
- uint64_t x43 = (uint64_t) (x42 >> 0x30);
- uint64_t x44 = ((uint64_t)x42 & 0xffffffffffff);
- uint128_t x45 = (x43 + x37);
- uint64_t x46 = (uint64_t) (x45 >> 0x30);
- uint64_t x47 = ((uint64_t)x45 & 0xffffffffffff);
- uint128_t x48 = (x46 + x36);
- uint64_t x49 = (uint64_t) (x48 >> 0x30);
- uint64_t x50 = ((uint64_t)x48 & 0xffffffffffff);
- uint128_t x51 = (x49 + x35);
- uint64_t x52 = (uint64_t) (x51 >> 0x30);
- uint64_t x53 = ((uint64_t)x51 & 0xffffffffffff);
- uint128_t x54 = (x52 + x34);
- uint64_t x55 = (uint64_t) (x54 >> 0x30);
- uint64_t x56 = ((uint64_t)x54 & 0xffffffffffff);
- uint128_t x57 = (x55 + x33);
- uint64_t x58 = (uint64_t) (x57 >> 0x30);
- uint64_t x59 = ((uint64_t)x57 & 0xffffffffffff);
- uint128_t x60 = (x58 + x32);
- uint64_t x61 = (uint64_t) (x60 >> 0x30);
- uint64_t x62 = ((uint64_t)x60 & 0xffffffffffff);
- uint64_t x63 = (x41 + (0x13d * x61));
- uint64_t x64 = (x63 >> 0x30);
- uint64_t x65 = (x63 & 0xffffffffffff);
- uint64_t x66 = (x64 + x44);
- uint64_t x67 = (x66 >> 0x30);
- uint64_t x68 = (x66 & 0xffffffffffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e384m317_8limbs/femulDisplay.v b/src/Specific/solinas64_2e384m317_8limbs/femulDisplay.v
deleted file mode 100644
index 3deec2a74..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e384m317_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e384m317_8limbs/fesquare.c b/src/Specific/solinas64_2e384m317_8limbs/fesquare.c
deleted file mode 100644
index 87644b008..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x15 = (((uint128_t)x2 * x13) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x13 * x2))))))));
- { uint128_t x16 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x13d * ((uint128_t)x13 * x13)));
- { uint128_t x17 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x13d * (((uint128_t)x14 * x13) + ((uint128_t)x13 * x14))));
- { uint128_t x18 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x13d * (((uint128_t)x12 * x13) + (((uint128_t)x14 * x14) + ((uint128_t)x13 * x12)))));
- { uint128_t x19 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x13d * (((uint128_t)x10 * x13) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((uint128_t)x13 * x10))))));
- { uint128_t x20 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x13d * (((uint128_t)x8 * x13) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + (((uint128_t)x14 * x10) + ((uint128_t)x13 * x8)))))));
- { uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x13d * (((uint128_t)x6 * x13) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + ((uint128_t)x13 * x6))))))));
- { uint128_t x22 = (((uint128_t)x2 * x2) + (0x13d * (((uint128_t)x4 * x13) + (((uint128_t)x6 * x14) + (((uint128_t)x8 * x12) + (((uint128_t)x10 * x10) + (((uint128_t)x12 * x8) + (((uint128_t)x14 * x6) + ((uint128_t)x13 * x4)))))))));
- { uint64_t x23 = (uint64_t) (x22 >> 0x30);
- { uint64_t x24 = ((uint64_t)x22 & 0xffffffffffff);
- { uint128_t x25 = (x23 + x21);
- { uint64_t x26 = (uint64_t) (x25 >> 0x30);
- { uint64_t x27 = ((uint64_t)x25 & 0xffffffffffff);
- { uint128_t x28 = (x26 + x20);
- { uint64_t x29 = (uint64_t) (x28 >> 0x30);
- { uint64_t x30 = ((uint64_t)x28 & 0xffffffffffff);
- { uint128_t x31 = (x29 + x19);
- { uint64_t x32 = (uint64_t) (x31 >> 0x30);
- { uint64_t x33 = ((uint64_t)x31 & 0xffffffffffff);
- { uint128_t x34 = (x32 + x18);
- { uint64_t x35 = (uint64_t) (x34 >> 0x30);
- { uint64_t x36 = ((uint64_t)x34 & 0xffffffffffff);
- { uint128_t x37 = (x35 + x17);
- { uint64_t x38 = (uint64_t) (x37 >> 0x30);
- { uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- { uint128_t x40 = (x38 + x16);
- { uint64_t x41 = (uint64_t) (x40 >> 0x30);
- { uint64_t x42 = ((uint64_t)x40 & 0xffffffffffff);
- { uint128_t x43 = (x41 + x15);
- { uint64_t x44 = (uint64_t) (x43 >> 0x30);
- { uint64_t x45 = ((uint64_t)x43 & 0xffffffffffff);
- { uint64_t x46 = (x24 + (0x13d * x44));
- { uint64_t x47 = (x46 >> 0x30);
- { uint64_t x48 = (x46 & 0xffffffffffff);
- { uint64_t x49 = (x47 + x27);
- { uint64_t x50 = (x49 >> 0x30);
- { uint64_t x51 = (x49 & 0xffffffffffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e384m317_8limbs/fesquare.v b/src/Specific/solinas64_2e384m317_8limbs/fesquare.v
deleted file mode 100644
index a7ae338e1..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e384m317_8limbs.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/solinas64_2e384m317_8limbs/fesquareDisplay.log b/src/Specific/solinas64_2e384m317_8limbs/fesquareDisplay.log
deleted file mode 100644
index 25c7fd4d2..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x15 = (((uint128_t)x2 * x13) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x13 * x2))))))));
- uint128_t x16 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x13d * ((uint128_t)x13 * x13)));
- uint128_t x17 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x13d * (((uint128_t)x14 * x13) + ((uint128_t)x13 * x14))));
- uint128_t x18 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x13d * (((uint128_t)x12 * x13) + (((uint128_t)x14 * x14) + ((uint128_t)x13 * x12)))));
- uint128_t x19 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x13d * (((uint128_t)x10 * x13) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((uint128_t)x13 * x10))))));
- uint128_t x20 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x13d * (((uint128_t)x8 * x13) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + (((uint128_t)x14 * x10) + ((uint128_t)x13 * x8)))))));
- uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x13d * (((uint128_t)x6 * x13) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + ((uint128_t)x13 * x6))))))));
- uint128_t x22 = (((uint128_t)x2 * x2) + (0x13d * (((uint128_t)x4 * x13) + (((uint128_t)x6 * x14) + (((uint128_t)x8 * x12) + (((uint128_t)x10 * x10) + (((uint128_t)x12 * x8) + (((uint128_t)x14 * x6) + ((uint128_t)x13 * x4)))))))));
- uint64_t x23 = (uint64_t) (x22 >> 0x30);
- uint64_t x24 = ((uint64_t)x22 & 0xffffffffffff);
- uint128_t x25 = (x23 + x21);
- uint64_t x26 = (uint64_t) (x25 >> 0x30);
- uint64_t x27 = ((uint64_t)x25 & 0xffffffffffff);
- uint128_t x28 = (x26 + x20);
- uint64_t x29 = (uint64_t) (x28 >> 0x30);
- uint64_t x30 = ((uint64_t)x28 & 0xffffffffffff);
- uint128_t x31 = (x29 + x19);
- uint64_t x32 = (uint64_t) (x31 >> 0x30);
- uint64_t x33 = ((uint64_t)x31 & 0xffffffffffff);
- uint128_t x34 = (x32 + x18);
- uint64_t x35 = (uint64_t) (x34 >> 0x30);
- uint64_t x36 = ((uint64_t)x34 & 0xffffffffffff);
- uint128_t x37 = (x35 + x17);
- uint64_t x38 = (uint64_t) (x37 >> 0x30);
- uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- uint128_t x40 = (x38 + x16);
- uint64_t x41 = (uint64_t) (x40 >> 0x30);
- uint64_t x42 = ((uint64_t)x40 & 0xffffffffffff);
- uint128_t x43 = (x41 + x15);
- uint64_t x44 = (uint64_t) (x43 >> 0x30);
- uint64_t x45 = ((uint64_t)x43 & 0xffffffffffff);
- uint64_t x46 = (x24 + (0x13d * x44));
- uint64_t x47 = (x46 >> 0x30);
- uint64_t x48 = (x46 & 0xffffffffffff);
- uint64_t x49 = (x47 + x27);
- uint64_t x50 = (x49 >> 0x30);
- uint64_t x51 = (x49 & 0xffffffffffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e384m317_8limbs/fesquareDisplay.v b/src/Specific/solinas64_2e384m317_8limbs/fesquareDisplay.v
deleted file mode 100644
index 47d366cee..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e384m317_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e384m317_8limbs/fesub.c b/src/Specific/solinas64_2e384m317_8limbs/fesub.c
deleted file mode 100644
index f924ee599..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = ((0x1fffffffffd86 + x5) - x19);
- out[1] = ((0x1fffffffffffe + x7) - x21);
- out[2] = ((0x1fffffffffffe + x9) - x23);
- out[3] = ((0x1fffffffffffe + x11) - x25);
- out[4] = ((0x1fffffffffffe + x13) - x27);
- out[5] = ((0x1fffffffffffe + x15) - x29);
- out[6] = ((0x1fffffffffffe + x17) - x31);
- out[7] = ((0x1fffffffffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e384m317_8limbs/fesub.v b/src/Specific/solinas64_2e384m317_8limbs/fesub.v
deleted file mode 100644
index 007378c14..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e384m317_8limbs.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/solinas64_2e384m317_8limbs/fesubDisplay.log b/src/Specific/solinas64_2e384m317_8limbs/fesubDisplay.log
deleted file mode 100644
index 61c5edf9e..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0x1fffffffffffe + x16) - x30), ((0x1fffffffffffe + x17) - x31), ((0x1fffffffffffe + x15) - x29), ((0x1fffffffffffe + x13) - x27), ((0x1fffffffffffe + x11) - x25), ((0x1fffffffffffe + x9) - x23), ((0x1fffffffffffe + x7) - x21), ((0x1fffffffffd86 + x5) - x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e384m317_8limbs/fesubDisplay.v b/src/Specific/solinas64_2e384m317_8limbs/fesubDisplay.v
deleted file mode 100644
index eb4a29fbd..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e384m317_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e384m317_8limbs/freeze.c b/src/Specific/solinas64_2e384m317_8limbs/freeze.c
deleted file mode 100644
index c037a517a..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffec3);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffffffffff);
- { uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0xffffffffffff);
- { uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0xffffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffffffffff);
- { uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0xffffffffffff);
- { uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0xffffffffffff);
- { uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- { uint64_t x40 = (x39 & 0xfffffffffec3);
- { uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint64_t x44 = (x39 & 0xffffffffffff);
- { uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint64_t x48 = (x39 & 0xffffffffffff);
- { uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint64_t x52 = (x39 & 0xffffffffffff);
- { uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint64_t x56 = (x39 & 0xffffffffffff);
- { uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint64_t x60 = (x39 & 0xffffffffffff);
- { uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint64_t x64 = (x39 & 0xffffffffffff);
- { uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint64_t x68 = (x39 & 0xffffffffffff);
- { uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e384m317_8limbs/freeze.v b/src/Specific/solinas64_2e384m317_8limbs/freeze.v
deleted file mode 100644
index e8fa01fc3..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e384m317_8limbs.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/solinas64_2e384m317_8limbs/freezeDisplay.log b/src/Specific/solinas64_2e384m317_8limbs/freezeDisplay.log
deleted file mode 100644
index c7cb86cad..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffec3);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffffffffff);
- uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0xffffffffffff);
- uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0xffffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffffffffff);
- uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0xffffffffffff);
- uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0xffffffffffff);
- uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- uint64_t x40 = (x39 & 0xfffffffffec3);
- uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint64_t x44 = (x39 & 0xffffffffffff);
- uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint64_t x48 = (x39 & 0xffffffffffff);
- uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint64_t x52 = (x39 & 0xffffffffffff);
- uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint64_t x56 = (x39 & 0xffffffffffff);
- uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint64_t x60 = (x39 & 0xffffffffffff);
- uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint64_t x64 = (x39 & 0xffffffffffff);
- uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint64_t x68 = (x39 & 0xffffffffffff);
- uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e384m317_8limbs/freezeDisplay.v b/src/Specific/solinas64_2e384m317_8limbs/freezeDisplay.v
deleted file mode 100644
index 7928f01d5..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e384m317_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e384m317_8limbs/py_interpreter.sh b/src/Specific/solinas64_2e384m317_8limbs/py_interpreter.sh
deleted file mode 100755
index cd282638b..000000000
--- a/src/Specific/solinas64_2e384m317_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**384 - 317' -Dmodulus_bytes='48' -Da24='121665'
diff --git a/src/Specific/solinas64_2e389m21_7limbs/CurveParameters.v b/src/Specific/solinas64_2e389m21_7limbs/CurveParameters.v
deleted file mode 100644
index 7e6d0c5ab..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^389 - 21
-Base: 55 + 4/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 55 + 4/7;
- bitwidth := 64;
- s := 2^389;
- c := [(1, 21)];
- carry_chains := Some [seq 0 (pred 7); [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/solinas64_2e389m21_7limbs/Synthesis.v b/src/Specific/solinas64_2e389m21_7limbs/Synthesis.v
deleted file mode 100644
index d9704633d..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e389m21_7limbs.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/solinas64_2e389m21_7limbs/compiler.sh b/src/Specific/solinas64_2e389m21_7limbs/compiler.sh
deleted file mode 100755
index f82f200cc..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,56,55,56,55,56,55}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='49' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<389) - 21' "$@"
diff --git a/src/Specific/solinas64_2e389m21_7limbs/compilerxx.sh b/src/Specific/solinas64_2e389m21_7limbs/compilerxx.sh
deleted file mode 100755
index c3fb6fd95..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,56,55,56,55,56,55}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='49' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<389) - 21' "$@"
diff --git a/src/Specific/solinas64_2e389m21_7limbs/feadd.c b/src/Specific/solinas64_2e389m21_7limbs/feadd.c
deleted file mode 100644
index 9acf97578..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e389m21_7limbs/feadd.v b/src/Specific/solinas64_2e389m21_7limbs/feadd.v
deleted file mode 100644
index 881bf7a1a..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e389m21_7limbs.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/solinas64_2e389m21_7limbs/feaddDisplay.log b/src/Specific/solinas64_2e389m21_7limbs/feaddDisplay.log
deleted file mode 100644
index 6320440fc..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e389m21_7limbs/feaddDisplay.v b/src/Specific/solinas64_2e389m21_7limbs/feaddDisplay.v
deleted file mode 100644
index e01e03180..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e389m21_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e389m21_7limbs/fecarry.v b/src/Specific/solinas64_2e389m21_7limbs/fecarry.v
deleted file mode 100644
index 6ddc4c583..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e389m21_7limbs.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/solinas64_2e389m21_7limbs/fecarryDisplay.v b/src/Specific/solinas64_2e389m21_7limbs/fecarryDisplay.v
deleted file mode 100644
index c0f182f19..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e389m21_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e389m21_7limbs/femul.c b/src/Specific/solinas64_2e389m21_7limbs/femul.c
deleted file mode 100644
index 69ddcd17f..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- { uint128_t x28 = (((uint128_t)x5 * x26) + (((uint128_t)x7 * x27) + ((0x2 * ((uint128_t)x9 * x25)) + (((uint128_t)x11 * x23) + ((0x2 * ((uint128_t)x13 * x21)) + (((uint128_t)x15 * x19) + ((uint128_t)x14 * x17)))))));
- { uint128_t x29 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + ((0x2 * ((uint128_t)x13 * x19)) + ((uint128_t)x15 * x17)))))) + (0x15 * (0x2 * ((uint128_t)x14 * x26))));
- { uint128_t x30 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + ((0x2 * ((uint128_t)x9 * x21)) + (((uint128_t)x11 * x19) + ((uint128_t)x13 * x17))))) + (0x15 * (((uint128_t)x15 * x26) + ((uint128_t)x14 * x27))));
- { uint128_t x31 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((0x2 * ((uint128_t)x9 * x19)) + ((uint128_t)x11 * x17)))) + (0x15 * ((0x2 * ((uint128_t)x13 * x26)) + (((uint128_t)x15 * x27) + (0x2 * ((uint128_t)x14 * x25))))));
- { uint128_t x32 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + ((uint128_t)x9 * x17))) + (0x15 * (((uint128_t)x11 * x26) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + ((uint128_t)x14 * x23))))));
- { uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0x15 * ((0x2 * ((uint128_t)x9 * x26)) + (((uint128_t)x11 * x27) + ((0x2 * ((uint128_t)x13 * x25)) + (((uint128_t)x15 * x23) + (0x2 * ((uint128_t)x14 * x21))))))));
- { uint128_t x34 = (((uint128_t)x5 * x17) + (0x15 * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19)))))))));
- { uint128_t x35 = (x34 >> 0x38);
- { uint64_t x36 = ((uint64_t)x34 & 0xffffffffffffff);
- { uint128_t x37 = (x35 + x33);
- { uint128_t x38 = (x37 >> 0x38);
- { uint64_t x39 = ((uint64_t)x37 & 0xffffffffffffff);
- { uint128_t x40 = (x38 + x32);
- { uint128_t x41 = (x40 >> 0x37);
- { uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffffff);
- { uint128_t x43 = (x41 + x31);
- { uint128_t x44 = (x43 >> 0x38);
- { uint64_t x45 = ((uint64_t)x43 & 0xffffffffffffff);
- { uint128_t x46 = (x44 + x30);
- { uint128_t x47 = (x46 >> 0x37);
- { uint64_t x48 = ((uint64_t)x46 & 0x7fffffffffffff);
- { uint128_t x49 = (x47 + x29);
- { uint64_t x50 = (uint64_t) (x49 >> 0x38);
- { uint64_t x51 = ((uint64_t)x49 & 0xffffffffffffff);
- { uint128_t x52 = (x50 + x28);
- { uint64_t x53 = (uint64_t) (x52 >> 0x37);
- { uint64_t x54 = ((uint64_t)x52 & 0x7fffffffffffff);
- { uint128_t x55 = (x36 + ((uint128_t)0x15 * x53));
- { uint64_t x56 = (uint64_t) (x55 >> 0x38);
- { uint64_t x57 = ((uint64_t)x55 & 0xffffffffffffff);
- { uint64_t x58 = (x56 + x39);
- { uint64_t x59 = (x58 >> 0x38);
- { uint64_t x60 = (x58 & 0xffffffffffffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e389m21_7limbs/femul.v b/src/Specific/solinas64_2e389m21_7limbs/femul.v
deleted file mode 100644
index c2580322a..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e389m21_7limbs.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/solinas64_2e389m21_7limbs/femulDisplay.log b/src/Specific/solinas64_2e389m21_7limbs/femulDisplay.log
deleted file mode 100644
index 6fdaf80ae..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint128_t x28 = (((uint128_t)x5 * x26) + (((uint128_t)x7 * x27) + ((0x2 * ((uint128_t)x9 * x25)) + (((uint128_t)x11 * x23) + ((0x2 * ((uint128_t)x13 * x21)) + (((uint128_t)x15 * x19) + ((uint128_t)x14 * x17)))))));
- uint128_t x29 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + ((0x2 * ((uint128_t)x13 * x19)) + ((uint128_t)x15 * x17)))))) + (0x15 * (0x2 * ((uint128_t)x14 * x26))));
- uint128_t x30 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + ((0x2 * ((uint128_t)x9 * x21)) + (((uint128_t)x11 * x19) + ((uint128_t)x13 * x17))))) + (0x15 * (((uint128_t)x15 * x26) + ((uint128_t)x14 * x27))));
- uint128_t x31 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((0x2 * ((uint128_t)x9 * x19)) + ((uint128_t)x11 * x17)))) + (0x15 * ((0x2 * ((uint128_t)x13 * x26)) + (((uint128_t)x15 * x27) + (0x2 * ((uint128_t)x14 * x25))))));
- uint128_t x32 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + ((uint128_t)x9 * x17))) + (0x15 * (((uint128_t)x11 * x26) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + ((uint128_t)x14 * x23))))));
- uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0x15 * ((0x2 * ((uint128_t)x9 * x26)) + (((uint128_t)x11 * x27) + ((0x2 * ((uint128_t)x13 * x25)) + (((uint128_t)x15 * x23) + (0x2 * ((uint128_t)x14 * x21))))))));
- uint128_t x34 = (((uint128_t)x5 * x17) + (0x15 * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19)))))))));
- uint128_t x35 = (x34 >> 0x38);
- uint64_t x36 = ((uint64_t)x34 & 0xffffffffffffff);
- uint128_t x37 = (x35 + x33);
- uint128_t x38 = (x37 >> 0x38);
- uint64_t x39 = ((uint64_t)x37 & 0xffffffffffffff);
- uint128_t x40 = (x38 + x32);
- uint128_t x41 = (x40 >> 0x37);
- uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffffff);
- uint128_t x43 = (x41 + x31);
- uint128_t x44 = (x43 >> 0x38);
- uint64_t x45 = ((uint64_t)x43 & 0xffffffffffffff);
- uint128_t x46 = (x44 + x30);
- uint128_t x47 = (x46 >> 0x37);
- uint64_t x48 = ((uint64_t)x46 & 0x7fffffffffffff);
- uint128_t x49 = (x47 + x29);
- uint64_t x50 = (uint64_t) (x49 >> 0x38);
- uint64_t x51 = ((uint64_t)x49 & 0xffffffffffffff);
- uint128_t x52 = (x50 + x28);
- uint64_t x53 = (uint64_t) (x52 >> 0x37);
- uint64_t x54 = ((uint64_t)x52 & 0x7fffffffffffff);
- uint128_t x55 = (x36 + ((uint128_t)0x15 * x53));
- uint64_t x56 = (uint64_t) (x55 >> 0x38);
- uint64_t x57 = ((uint64_t)x55 & 0xffffffffffffff);
- uint64_t x58 = (x56 + x39);
- uint64_t x59 = (x58 >> 0x38);
- uint64_t x60 = (x58 & 0xffffffffffffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e389m21_7limbs/femulDisplay.v b/src/Specific/solinas64_2e389m21_7limbs/femulDisplay.v
deleted file mode 100644
index 42c74f7e1..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e389m21_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e389m21_7limbs/fesquare.c b/src/Specific/solinas64_2e389m21_7limbs/fesquare.c
deleted file mode 100644
index 50420c577..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x13 = (((uint128_t)x2 * x11) + (((uint128_t)x4 * x12) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + (((uint128_t)x12 * x4) + ((uint128_t)x11 * x2)))))));
- { uint128_t x14 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x15 * (0x2 * ((uint128_t)x11 * x11))));
- { uint128_t x15 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + ((0x2 * ((uint128_t)x6 * x6)) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x15 * (((uint128_t)x12 * x11) + ((uint128_t)x11 * x12))));
- { uint128_t x16 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x15 * ((0x2 * ((uint128_t)x10 * x11)) + (((uint128_t)x12 * x12) + (0x2 * ((uint128_t)x11 * x10))))));
- { uint128_t x17 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x15 * (((uint128_t)x8 * x11) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + ((uint128_t)x11 * x8))))));
- { uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x15 * ((0x2 * ((uint128_t)x6 * x11)) + (((uint128_t)x8 * x12) + ((0x2 * ((uint128_t)x10 * x10)) + (((uint128_t)x12 * x8) + (0x2 * ((uint128_t)x11 * x6))))))));
- { uint128_t x19 = (((uint128_t)x2 * x2) + (0x15 * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4)))))))));
- { uint128_t x20 = (x19 >> 0x38);
- { uint64_t x21 = ((uint64_t)x19 & 0xffffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint128_t x23 = (x22 >> 0x38);
- { uint64_t x24 = ((uint64_t)x22 & 0xffffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint128_t x26 = (x25 >> 0x37);
- { uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint128_t x29 = (x28 >> 0x38);
- { uint64_t x30 = ((uint64_t)x28 & 0xffffffffffffff);
- { uint128_t x31 = (x29 + x15);
- { uint128_t x32 = (x31 >> 0x37);
- { uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffffff);
- { uint128_t x34 = (x32 + x14);
- { uint64_t x35 = (uint64_t) (x34 >> 0x38);
- { uint64_t x36 = ((uint64_t)x34 & 0xffffffffffffff);
- { uint128_t x37 = (x35 + x13);
- { uint64_t x38 = (uint64_t) (x37 >> 0x37);
- { uint64_t x39 = ((uint64_t)x37 & 0x7fffffffffffff);
- { uint128_t x40 = (x21 + ((uint128_t)0x15 * x38));
- { uint64_t x41 = (uint64_t) (x40 >> 0x38);
- { uint64_t x42 = ((uint64_t)x40 & 0xffffffffffffff);
- { uint64_t x43 = (x41 + x24);
- { uint64_t x44 = (x43 >> 0x38);
- { uint64_t x45 = (x43 & 0xffffffffffffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e389m21_7limbs/fesquare.v b/src/Specific/solinas64_2e389m21_7limbs/fesquare.v
deleted file mode 100644
index 7b85781fe..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e389m21_7limbs.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/solinas64_2e389m21_7limbs/fesquareDisplay.log b/src/Specific/solinas64_2e389m21_7limbs/fesquareDisplay.log
deleted file mode 100644
index ffb9060aa..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x13 = (((uint128_t)x2 * x11) + (((uint128_t)x4 * x12) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + (((uint128_t)x12 * x4) + ((uint128_t)x11 * x2)))))));
- uint128_t x14 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x15 * (0x2 * ((uint128_t)x11 * x11))));
- uint128_t x15 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + ((0x2 * ((uint128_t)x6 * x6)) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x15 * (((uint128_t)x12 * x11) + ((uint128_t)x11 * x12))));
- uint128_t x16 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x15 * ((0x2 * ((uint128_t)x10 * x11)) + (((uint128_t)x12 * x12) + (0x2 * ((uint128_t)x11 * x10))))));
- uint128_t x17 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x15 * (((uint128_t)x8 * x11) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + ((uint128_t)x11 * x8))))));
- uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x15 * ((0x2 * ((uint128_t)x6 * x11)) + (((uint128_t)x8 * x12) + ((0x2 * ((uint128_t)x10 * x10)) + (((uint128_t)x12 * x8) + (0x2 * ((uint128_t)x11 * x6))))))));
- uint128_t x19 = (((uint128_t)x2 * x2) + (0x15 * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4)))))))));
- uint128_t x20 = (x19 >> 0x38);
- uint64_t x21 = ((uint64_t)x19 & 0xffffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint128_t x23 = (x22 >> 0x38);
- uint64_t x24 = ((uint64_t)x22 & 0xffffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint128_t x26 = (x25 >> 0x37);
- uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint128_t x29 = (x28 >> 0x38);
- uint64_t x30 = ((uint64_t)x28 & 0xffffffffffffff);
- uint128_t x31 = (x29 + x15);
- uint128_t x32 = (x31 >> 0x37);
- uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffffff);
- uint128_t x34 = (x32 + x14);
- uint64_t x35 = (uint64_t) (x34 >> 0x38);
- uint64_t x36 = ((uint64_t)x34 & 0xffffffffffffff);
- uint128_t x37 = (x35 + x13);
- uint64_t x38 = (uint64_t) (x37 >> 0x37);
- uint64_t x39 = ((uint64_t)x37 & 0x7fffffffffffff);
- uint128_t x40 = (x21 + ((uint128_t)0x15 * x38));
- uint64_t x41 = (uint64_t) (x40 >> 0x38);
- uint64_t x42 = ((uint64_t)x40 & 0xffffffffffffff);
- uint64_t x43 = (x41 + x24);
- uint64_t x44 = (x43 >> 0x38);
- uint64_t x45 = (x43 & 0xffffffffffffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e389m21_7limbs/fesquareDisplay.v b/src/Specific/solinas64_2e389m21_7limbs/fesquareDisplay.v
deleted file mode 100644
index 2eb0c5273..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e389m21_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e389m21_7limbs/fesub.c b/src/Specific/solinas64_2e389m21_7limbs/fesub.c
deleted file mode 100644
index 0e6db466c..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = ((0x1ffffffffffffd6 + x5) - x17);
- out[1] = ((0x1fffffffffffffe + x7) - x19);
- out[2] = ((0xfffffffffffffe + x9) - x21);
- out[3] = ((0x1fffffffffffffe + x11) - x23);
- out[4] = ((0xfffffffffffffe + x13) - x25);
- out[5] = ((0x1fffffffffffffe + x15) - x27);
- out[6] = ((0xfffffffffffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e389m21_7limbs/fesub.v b/src/Specific/solinas64_2e389m21_7limbs/fesub.v
deleted file mode 100644
index e5fa69dfe..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e389m21_7limbs.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/solinas64_2e389m21_7limbs/fesubDisplay.log b/src/Specific/solinas64_2e389m21_7limbs/fesubDisplay.log
deleted file mode 100644
index 86ea125bb..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0xfffffffffffffe + x14) - x26), ((0x1fffffffffffffe + x15) - x27), ((0xfffffffffffffe + x13) - x25), ((0x1fffffffffffffe + x11) - x23), ((0xfffffffffffffe + x9) - x21), ((0x1fffffffffffffe + x7) - x19), ((0x1ffffffffffffd6 + x5) - x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e389m21_7limbs/fesubDisplay.v b/src/Specific/solinas64_2e389m21_7limbs/fesubDisplay.v
deleted file mode 100644
index 21d7e4d84..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e389m21_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e389m21_7limbs/freeze.c b/src/Specific/solinas64_2e389m21_7limbs/freeze.c
deleted file mode 100644
index 6e965f1f2..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffffeb);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0xffffffffffffff);
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0x7fffffffffffff);
- { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0xffffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0x7fffffffffffff);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0xffffffffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0x7fffffffffffff);
- { uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- { uint64_t x35 = (x34 & 0xffffffffffffeb);
- { uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint64_t x39 = (x34 & 0xffffffffffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint64_t x43 = (x34 & 0x7fffffffffffff);
- { uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint64_t x47 = (x34 & 0xffffffffffffff);
- { uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint64_t x51 = (x34 & 0x7fffffffffffff);
- { uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint64_t x55 = (x34 & 0xffffffffffffff);
- { uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint64_t x59 = (x34 & 0x7fffffffffffff);
- { uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e389m21_7limbs/freeze.v b/src/Specific/solinas64_2e389m21_7limbs/freeze.v
deleted file mode 100644
index b426214a1..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e389m21_7limbs.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/solinas64_2e389m21_7limbs/freezeDisplay.log b/src/Specific/solinas64_2e389m21_7limbs/freezeDisplay.log
deleted file mode 100644
index de72e2155..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffffeb);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0xffffffffffffff);
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0x7fffffffffffff);
- uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0xffffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0x7fffffffffffff);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0xffffffffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0x7fffffffffffff);
- uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- uint64_t x35 = (x34 & 0xffffffffffffeb);
- uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint64_t x39 = (x34 & 0xffffffffffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint64_t x43 = (x34 & 0x7fffffffffffff);
- uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint64_t x47 = (x34 & 0xffffffffffffff);
- uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint64_t x51 = (x34 & 0x7fffffffffffff);
- uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint64_t x55 = (x34 & 0xffffffffffffff);
- uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint64_t x59 = (x34 & 0x7fffffffffffff);
- uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e389m21_7limbs/freezeDisplay.v b/src/Specific/solinas64_2e389m21_7limbs/freezeDisplay.v
deleted file mode 100644
index 9c6ca3a22..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e389m21_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e389m21_7limbs/py_interpreter.sh b/src/Specific/solinas64_2e389m21_7limbs/py_interpreter.sh
deleted file mode 100755
index c01b25cf2..000000000
--- a/src/Specific/solinas64_2e389m21_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**389 - 21' -Dmodulus_bytes='55 + 4/7' -Da24='121665'
diff --git a/src/Specific/solinas64_2e389m21_8limbs/CurveParameters.v b/src/Specific/solinas64_2e389m21_8limbs/CurveParameters.v
deleted file mode 100644
index fb8574e2f..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^389 - 21
-Base: 48.625
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 48 + 5/8;
- bitwidth := 64;
- s := 2^389;
- c := [(1, 21)];
- carry_chains := Some [seq 0 (pred 8); [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/solinas64_2e389m21_8limbs/Synthesis.v b/src/Specific/solinas64_2e389m21_8limbs/Synthesis.v
deleted file mode 100644
index fac478a05..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e389m21_8limbs.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/solinas64_2e389m21_8limbs/compiler.sh b/src/Specific/solinas64_2e389m21_8limbs/compiler.sh
deleted file mode 100755
index 85ff98b60..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,49,48,49,49,48,49,48}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='49' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<389) - 21' "$@"
diff --git a/src/Specific/solinas64_2e389m21_8limbs/compilerxx.sh b/src/Specific/solinas64_2e389m21_8limbs/compilerxx.sh
deleted file mode 100755
index 3699d8183..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,49,48,49,49,48,49,48}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='49' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<389) - 21' "$@"
diff --git a/src/Specific/solinas64_2e389m21_8limbs/feadd.c b/src/Specific/solinas64_2e389m21_8limbs/feadd.c
deleted file mode 100644
index 4def6ee9c..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e389m21_8limbs/feadd.v b/src/Specific/solinas64_2e389m21_8limbs/feadd.v
deleted file mode 100644
index 5d5e98058..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e389m21_8limbs.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/solinas64_2e389m21_8limbs/feaddDisplay.log b/src/Specific/solinas64_2e389m21_8limbs/feaddDisplay.log
deleted file mode 100644
index 023fc8a31..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e389m21_8limbs/feaddDisplay.v b/src/Specific/solinas64_2e389m21_8limbs/feaddDisplay.v
deleted file mode 100644
index 50f87c189..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e389m21_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e389m21_8limbs/fecarry.v b/src/Specific/solinas64_2e389m21_8limbs/fecarry.v
deleted file mode 100644
index 101a83e17..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e389m21_8limbs.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/solinas64_2e389m21_8limbs/fecarryDisplay.v b/src/Specific/solinas64_2e389m21_8limbs/fecarryDisplay.v
deleted file mode 100644
index 346aac5a5..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e389m21_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e389m21_8limbs/femul.c b/src/Specific/solinas64_2e389m21_8limbs/femul.c
deleted file mode 100644
index 2a1b4bbb6..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint128_t x32 = (((uint128_t)x5 * x30) + (((uint128_t)x7 * x31) + ((0x2 * ((uint128_t)x9 * x29)) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + ((0x2 * ((uint128_t)x15 * x23)) + (((uint128_t)x17 * x21) + ((uint128_t)x16 * x19))))))));
- { uint128_t x33 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + ((0x2 * ((uint128_t)x9 * x27)) + (((uint128_t)x11 * x25) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + ((uint128_t)x17 * x19))))))) + (0x15 * (0x2 * ((uint128_t)x16 * x30))));
- { uint128_t x34 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x15 * x19)))))) + (0x15 * (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))));
- { uint128_t x35 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((0x2 * ((uint128_t)x9 * x23)) + (((uint128_t)x11 * x21) + ((uint128_t)x13 * x19))))) + (0x15 * ((0x2 * ((uint128_t)x15 * x30)) + (((uint128_t)x17 * x31) + (0x2 * ((uint128_t)x16 * x29))))));
- { uint128_t x36 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((0x2 * ((uint128_t)x9 * x21)) + ((uint128_t)x11 * x19)))) + (0x15 * ((0x2 * ((uint128_t)x13 * x30)) + ((0x2 * ((uint128_t)x15 * x31)) + ((0x2 * ((uint128_t)x17 * x29)) + (0x2 * ((uint128_t)x16 * x27)))))));
- { uint128_t x37 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))) + (0x15 * (((uint128_t)x11 * x30) + (((uint128_t)x13 * x31) + ((0x2 * ((uint128_t)x15 * x29)) + (((uint128_t)x17 * x27) + ((uint128_t)x16 * x25)))))));
- { uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x15 * ((0x2 * ((uint128_t)x9 * x30)) + (((uint128_t)x11 * x31) + ((0x2 * ((uint128_t)x13 * x29)) + ((0x2 * ((uint128_t)x15 * x27)) + (((uint128_t)x17 * x25) + (0x2 * ((uint128_t)x16 * x23)))))))));
- { uint128_t x39 = (((uint128_t)x5 * x19) + (0x15 * ((0x2 * ((uint128_t)x7 * x30)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((0x2 * ((uint128_t)x17 * x23)) + (0x2 * ((uint128_t)x16 * x21))))))))));
- { uint64_t x40 = (uint64_t) (x39 >> 0x31);
- { uint64_t x41 = ((uint64_t)x39 & 0x1ffffffffffff);
- { uint128_t x42 = (x40 + x38);
- { uint64_t x43 = (uint64_t) (x42 >> 0x31);
- { uint64_t x44 = ((uint64_t)x42 & 0x1ffffffffffff);
- { uint128_t x45 = (x43 + x37);
- { uint64_t x46 = (uint64_t) (x45 >> 0x30);
- { uint64_t x47 = ((uint64_t)x45 & 0xffffffffffff);
- { uint128_t x48 = (x46 + x36);
- { uint64_t x49 = (uint64_t) (x48 >> 0x31);
- { uint64_t x50 = ((uint64_t)x48 & 0x1ffffffffffff);
- { uint128_t x51 = (x49 + x35);
- { uint64_t x52 = (uint64_t) (x51 >> 0x31);
- { uint64_t x53 = ((uint64_t)x51 & 0x1ffffffffffff);
- { uint128_t x54 = (x52 + x34);
- { uint64_t x55 = (uint64_t) (x54 >> 0x30);
- { uint64_t x56 = ((uint64_t)x54 & 0xffffffffffff);
- { uint128_t x57 = (x55 + x33);
- { uint64_t x58 = (uint64_t) (x57 >> 0x31);
- { uint64_t x59 = ((uint64_t)x57 & 0x1ffffffffffff);
- { uint128_t x60 = (x58 + x32);
- { uint64_t x61 = (uint64_t) (x60 >> 0x30);
- { uint64_t x62 = ((uint64_t)x60 & 0xffffffffffff);
- { uint64_t x63 = (x41 + (0x15 * x61));
- { uint64_t x64 = (x63 >> 0x31);
- { uint64_t x65 = (x63 & 0x1ffffffffffff);
- { uint64_t x66 = (x64 + x44);
- { uint64_t x67 = (x66 >> 0x31);
- { uint64_t x68 = (x66 & 0x1ffffffffffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e389m21_8limbs/femul.v b/src/Specific/solinas64_2e389m21_8limbs/femul.v
deleted file mode 100644
index 3ebb51385..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e389m21_8limbs.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/solinas64_2e389m21_8limbs/femulDisplay.log b/src/Specific/solinas64_2e389m21_8limbs/femulDisplay.log
deleted file mode 100644
index db63264d6..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint128_t x32 = (((uint128_t)x5 * x30) + (((uint128_t)x7 * x31) + ((0x2 * ((uint128_t)x9 * x29)) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + ((0x2 * ((uint128_t)x15 * x23)) + (((uint128_t)x17 * x21) + ((uint128_t)x16 * x19))))))));
- uint128_t x33 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + ((0x2 * ((uint128_t)x9 * x27)) + (((uint128_t)x11 * x25) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + ((uint128_t)x17 * x19))))))) + (0x15 * (0x2 * ((uint128_t)x16 * x30))));
- uint128_t x34 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x15 * x19)))))) + (0x15 * (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))));
- uint128_t x35 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((0x2 * ((uint128_t)x9 * x23)) + (((uint128_t)x11 * x21) + ((uint128_t)x13 * x19))))) + (0x15 * ((0x2 * ((uint128_t)x15 * x30)) + (((uint128_t)x17 * x31) + (0x2 * ((uint128_t)x16 * x29))))));
- uint128_t x36 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((0x2 * ((uint128_t)x9 * x21)) + ((uint128_t)x11 * x19)))) + (0x15 * ((0x2 * ((uint128_t)x13 * x30)) + ((0x2 * ((uint128_t)x15 * x31)) + ((0x2 * ((uint128_t)x17 * x29)) + (0x2 * ((uint128_t)x16 * x27)))))));
- uint128_t x37 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))) + (0x15 * (((uint128_t)x11 * x30) + (((uint128_t)x13 * x31) + ((0x2 * ((uint128_t)x15 * x29)) + (((uint128_t)x17 * x27) + ((uint128_t)x16 * x25)))))));
- uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x15 * ((0x2 * ((uint128_t)x9 * x30)) + (((uint128_t)x11 * x31) + ((0x2 * ((uint128_t)x13 * x29)) + ((0x2 * ((uint128_t)x15 * x27)) + (((uint128_t)x17 * x25) + (0x2 * ((uint128_t)x16 * x23)))))))));
- uint128_t x39 = (((uint128_t)x5 * x19) + (0x15 * ((0x2 * ((uint128_t)x7 * x30)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((0x2 * ((uint128_t)x17 * x23)) + (0x2 * ((uint128_t)x16 * x21))))))))));
- uint64_t x40 = (uint64_t) (x39 >> 0x31);
- uint64_t x41 = ((uint64_t)x39 & 0x1ffffffffffff);
- uint128_t x42 = (x40 + x38);
- uint64_t x43 = (uint64_t) (x42 >> 0x31);
- uint64_t x44 = ((uint64_t)x42 & 0x1ffffffffffff);
- uint128_t x45 = (x43 + x37);
- uint64_t x46 = (uint64_t) (x45 >> 0x30);
- uint64_t x47 = ((uint64_t)x45 & 0xffffffffffff);
- uint128_t x48 = (x46 + x36);
- uint64_t x49 = (uint64_t) (x48 >> 0x31);
- uint64_t x50 = ((uint64_t)x48 & 0x1ffffffffffff);
- uint128_t x51 = (x49 + x35);
- uint64_t x52 = (uint64_t) (x51 >> 0x31);
- uint64_t x53 = ((uint64_t)x51 & 0x1ffffffffffff);
- uint128_t x54 = (x52 + x34);
- uint64_t x55 = (uint64_t) (x54 >> 0x30);
- uint64_t x56 = ((uint64_t)x54 & 0xffffffffffff);
- uint128_t x57 = (x55 + x33);
- uint64_t x58 = (uint64_t) (x57 >> 0x31);
- uint64_t x59 = ((uint64_t)x57 & 0x1ffffffffffff);
- uint128_t x60 = (x58 + x32);
- uint64_t x61 = (uint64_t) (x60 >> 0x30);
- uint64_t x62 = ((uint64_t)x60 & 0xffffffffffff);
- uint64_t x63 = (x41 + (0x15 * x61));
- uint64_t x64 = (x63 >> 0x31);
- uint64_t x65 = (x63 & 0x1ffffffffffff);
- uint64_t x66 = (x64 + x44);
- uint64_t x67 = (x66 >> 0x31);
- uint64_t x68 = (x66 & 0x1ffffffffffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e389m21_8limbs/femulDisplay.v b/src/Specific/solinas64_2e389m21_8limbs/femulDisplay.v
deleted file mode 100644
index a954c1f9f..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e389m21_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e389m21_8limbs/fesquare.c b/src/Specific/solinas64_2e389m21_8limbs/fesquare.c
deleted file mode 100644
index 7db866964..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x15 = (((uint128_t)x2 * x13) + (((uint128_t)x4 * x14) + ((0x2 * ((uint128_t)x6 * x12)) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((0x2 * ((uint128_t)x12 * x6)) + (((uint128_t)x14 * x4) + ((uint128_t)x13 * x2))))))));
- { uint128_t x16 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x15 * (0x2 * ((uint128_t)x13 * x13))));
- { uint128_t x17 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x15 * (((uint128_t)x14 * x13) + ((uint128_t)x13 * x14))));
- { uint128_t x18 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + ((0x2 * ((uint128_t)x6 * x6)) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x15 * ((0x2 * ((uint128_t)x12 * x13)) + (((uint128_t)x14 * x14) + (0x2 * ((uint128_t)x13 * x12))))));
- { uint128_t x19 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x15 * ((0x2 * ((uint128_t)x10 * x13)) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + (0x2 * ((uint128_t)x13 * x10)))))));
- { uint128_t x20 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x15 * (((uint128_t)x8 * x13) + (((uint128_t)x10 * x14) + ((0x2 * ((uint128_t)x12 * x12)) + (((uint128_t)x14 * x10) + ((uint128_t)x13 * x8)))))));
- { uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x15 * ((0x2 * ((uint128_t)x6 * x13)) + (((uint128_t)x8 * x14) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + (((uint128_t)x14 * x8) + (0x2 * ((uint128_t)x13 * x6)))))))));
- { uint128_t x22 = (((uint128_t)x2 * x2) + (0x15 * ((0x2 * ((uint128_t)x4 * x13)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + (0x2 * ((uint128_t)x13 * x4))))))))));
- { uint64_t x23 = (uint64_t) (x22 >> 0x31);
- { uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffffff);
- { uint128_t x25 = (x23 + x21);
- { uint64_t x26 = (uint64_t) (x25 >> 0x31);
- { uint64_t x27 = ((uint64_t)x25 & 0x1ffffffffffff);
- { uint128_t x28 = (x26 + x20);
- { uint64_t x29 = (uint64_t) (x28 >> 0x30);
- { uint64_t x30 = ((uint64_t)x28 & 0xffffffffffff);
- { uint128_t x31 = (x29 + x19);
- { uint64_t x32 = (uint64_t) (x31 >> 0x31);
- { uint64_t x33 = ((uint64_t)x31 & 0x1ffffffffffff);
- { uint128_t x34 = (x32 + x18);
- { uint64_t x35 = (uint64_t) (x34 >> 0x31);
- { uint64_t x36 = ((uint64_t)x34 & 0x1ffffffffffff);
- { uint128_t x37 = (x35 + x17);
- { uint64_t x38 = (uint64_t) (x37 >> 0x30);
- { uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- { uint128_t x40 = (x38 + x16);
- { uint64_t x41 = (uint64_t) (x40 >> 0x31);
- { uint64_t x42 = ((uint64_t)x40 & 0x1ffffffffffff);
- { uint128_t x43 = (x41 + x15);
- { uint64_t x44 = (uint64_t) (x43 >> 0x30);
- { uint64_t x45 = ((uint64_t)x43 & 0xffffffffffff);
- { uint64_t x46 = (x24 + (0x15 * x44));
- { uint64_t x47 = (x46 >> 0x31);
- { uint64_t x48 = (x46 & 0x1ffffffffffff);
- { uint64_t x49 = (x47 + x27);
- { uint64_t x50 = (x49 >> 0x31);
- { uint64_t x51 = (x49 & 0x1ffffffffffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e389m21_8limbs/fesquare.v b/src/Specific/solinas64_2e389m21_8limbs/fesquare.v
deleted file mode 100644
index 578b525f0..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e389m21_8limbs.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/solinas64_2e389m21_8limbs/fesquareDisplay.log b/src/Specific/solinas64_2e389m21_8limbs/fesquareDisplay.log
deleted file mode 100644
index 2741077b1..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x15 = (((uint128_t)x2 * x13) + (((uint128_t)x4 * x14) + ((0x2 * ((uint128_t)x6 * x12)) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((0x2 * ((uint128_t)x12 * x6)) + (((uint128_t)x14 * x4) + ((uint128_t)x13 * x2))))))));
- uint128_t x16 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x15 * (0x2 * ((uint128_t)x13 * x13))));
- uint128_t x17 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x15 * (((uint128_t)x14 * x13) + ((uint128_t)x13 * x14))));
- uint128_t x18 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + ((0x2 * ((uint128_t)x6 * x6)) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x15 * ((0x2 * ((uint128_t)x12 * x13)) + (((uint128_t)x14 * x14) + (0x2 * ((uint128_t)x13 * x12))))));
- uint128_t x19 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x15 * ((0x2 * ((uint128_t)x10 * x13)) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + (0x2 * ((uint128_t)x13 * x10)))))));
- uint128_t x20 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x15 * (((uint128_t)x8 * x13) + (((uint128_t)x10 * x14) + ((0x2 * ((uint128_t)x12 * x12)) + (((uint128_t)x14 * x10) + ((uint128_t)x13 * x8)))))));
- uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x15 * ((0x2 * ((uint128_t)x6 * x13)) + (((uint128_t)x8 * x14) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + (((uint128_t)x14 * x8) + (0x2 * ((uint128_t)x13 * x6)))))))));
- uint128_t x22 = (((uint128_t)x2 * x2) + (0x15 * ((0x2 * ((uint128_t)x4 * x13)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + (0x2 * ((uint128_t)x13 * x4))))))))));
- uint64_t x23 = (uint64_t) (x22 >> 0x31);
- uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffffff);
- uint128_t x25 = (x23 + x21);
- uint64_t x26 = (uint64_t) (x25 >> 0x31);
- uint64_t x27 = ((uint64_t)x25 & 0x1ffffffffffff);
- uint128_t x28 = (x26 + x20);
- uint64_t x29 = (uint64_t) (x28 >> 0x30);
- uint64_t x30 = ((uint64_t)x28 & 0xffffffffffff);
- uint128_t x31 = (x29 + x19);
- uint64_t x32 = (uint64_t) (x31 >> 0x31);
- uint64_t x33 = ((uint64_t)x31 & 0x1ffffffffffff);
- uint128_t x34 = (x32 + x18);
- uint64_t x35 = (uint64_t) (x34 >> 0x31);
- uint64_t x36 = ((uint64_t)x34 & 0x1ffffffffffff);
- uint128_t x37 = (x35 + x17);
- uint64_t x38 = (uint64_t) (x37 >> 0x30);
- uint64_t x39 = ((uint64_t)x37 & 0xffffffffffff);
- uint128_t x40 = (x38 + x16);
- uint64_t x41 = (uint64_t) (x40 >> 0x31);
- uint64_t x42 = ((uint64_t)x40 & 0x1ffffffffffff);
- uint128_t x43 = (x41 + x15);
- uint64_t x44 = (uint64_t) (x43 >> 0x30);
- uint64_t x45 = ((uint64_t)x43 & 0xffffffffffff);
- uint64_t x46 = (x24 + (0x15 * x44));
- uint64_t x47 = (x46 >> 0x31);
- uint64_t x48 = (x46 & 0x1ffffffffffff);
- uint64_t x49 = (x47 + x27);
- uint64_t x50 = (x49 >> 0x31);
- uint64_t x51 = (x49 & 0x1ffffffffffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e389m21_8limbs/fesquareDisplay.v b/src/Specific/solinas64_2e389m21_8limbs/fesquareDisplay.v
deleted file mode 100644
index 384447ca3..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e389m21_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e389m21_8limbs/fesub.c b/src/Specific/solinas64_2e389m21_8limbs/fesub.c
deleted file mode 100644
index 1416209a0..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = ((0x3ffffffffffd6 + x5) - x19);
- out[1] = ((0x3fffffffffffe + x7) - x21);
- out[2] = ((0x1fffffffffffe + x9) - x23);
- out[3] = ((0x3fffffffffffe + x11) - x25);
- out[4] = ((0x3fffffffffffe + x13) - x27);
- out[5] = ((0x1fffffffffffe + x15) - x29);
- out[6] = ((0x3fffffffffffe + x17) - x31);
- out[7] = ((0x1fffffffffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e389m21_8limbs/fesub.v b/src/Specific/solinas64_2e389m21_8limbs/fesub.v
deleted file mode 100644
index 39552b91f..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e389m21_8limbs.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/solinas64_2e389m21_8limbs/fesubDisplay.log b/src/Specific/solinas64_2e389m21_8limbs/fesubDisplay.log
deleted file mode 100644
index 45b76924f..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0x1fffffffffffe + x16) - x30), ((0x3fffffffffffe + x17) - x31), ((0x1fffffffffffe + x15) - x29), ((0x3fffffffffffe + x13) - x27), ((0x3fffffffffffe + x11) - x25), ((0x1fffffffffffe + x9) - x23), ((0x3fffffffffffe + x7) - x21), ((0x3ffffffffffd6 + x5) - x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e389m21_8limbs/fesubDisplay.v b/src/Specific/solinas64_2e389m21_8limbs/fesubDisplay.v
deleted file mode 100644
index 83097447f..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e389m21_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e389m21_8limbs/freeze.c b/src/Specific/solinas64_2e389m21_8limbs/freeze.c
deleted file mode 100644
index 7d15ea9ba..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffffffffeb);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0x1ffffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffffffffff);
- { uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0x1ffffffffffff);
- { uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0x1ffffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffffffffff);
- { uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0x1ffffffffffff);
- { uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0xffffffffffff);
- { uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- { uint64_t x40 = (x39 & 0x1ffffffffffeb);
- { uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint64_t x44 = (x39 & 0x1ffffffffffff);
- { uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint64_t x48 = (x39 & 0xffffffffffff);
- { uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint64_t x52 = (x39 & 0x1ffffffffffff);
- { uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint64_t x56 = (x39 & 0x1ffffffffffff);
- { uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint64_t x60 = (x39 & 0xffffffffffff);
- { uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint64_t x64 = (x39 & 0x1ffffffffffff);
- { uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint64_t x68 = (x39 & 0xffffffffffff);
- { uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e389m21_8limbs/freeze.v b/src/Specific/solinas64_2e389m21_8limbs/freeze.v
deleted file mode 100644
index 33e6fb425..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e389m21_8limbs.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/solinas64_2e389m21_8limbs/freezeDisplay.log b/src/Specific/solinas64_2e389m21_8limbs/freezeDisplay.log
deleted file mode 100644
index b55b684fa..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffffffffeb);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0x1ffffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffffffffff);
- uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0x1ffffffffffff);
- uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0x1ffffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffffffffff);
- uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0x1ffffffffffff);
- uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0xffffffffffff);
- uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- uint64_t x40 = (x39 & 0x1ffffffffffeb);
- uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint64_t x44 = (x39 & 0x1ffffffffffff);
- uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint64_t x48 = (x39 & 0xffffffffffff);
- uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint64_t x52 = (x39 & 0x1ffffffffffff);
- uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint64_t x56 = (x39 & 0x1ffffffffffff);
- uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint64_t x60 = (x39 & 0xffffffffffff);
- uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint64_t x64 = (x39 & 0x1ffffffffffff);
- uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint64_t x68 = (x39 & 0xffffffffffff);
- uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e389m21_8limbs/freezeDisplay.v b/src/Specific/solinas64_2e389m21_8limbs/freezeDisplay.v
deleted file mode 100644
index 9b138d13f..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e389m21_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e389m21_8limbs/py_interpreter.sh b/src/Specific/solinas64_2e389m21_8limbs/py_interpreter.sh
deleted file mode 100755
index e371f7aba..000000000
--- a/src/Specific/solinas64_2e389m21_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**389 - 21' -Dmodulus_bytes='48.625' -Da24='121665'
diff --git a/src/Specific/solinas64_2e401m31_7limbs/CurveParameters.v b/src/Specific/solinas64_2e401m31_7limbs/CurveParameters.v
deleted file mode 100644
index 149e49d4b..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^401 - 31
-Base: 57 + 2/7
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 57 + 2/7;
- bitwidth := 64;
- s := 2^401;
- c := [(1, 31)];
- carry_chains := Some [seq 0 (pred 7); [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/solinas64_2e401m31_7limbs/Synthesis.v b/src/Specific/solinas64_2e401m31_7limbs/Synthesis.v
deleted file mode 100644
index c09e91014..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e401m31_7limbs.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/solinas64_2e401m31_7limbs/compiler.sh b/src/Specific/solinas64_2e401m31_7limbs/compiler.sh
deleted file mode 100755
index 3046be41d..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{58,57,57,58,57,57,57}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='51' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<401) - 31' "$@"
diff --git a/src/Specific/solinas64_2e401m31_7limbs/compilerxx.sh b/src/Specific/solinas64_2e401m31_7limbs/compilerxx.sh
deleted file mode 100755
index cffc8ad90..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{58,57,57,58,57,57,57}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='51' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<401) - 31' "$@"
diff --git a/src/Specific/solinas64_2e401m31_7limbs/feadd.c b/src/Specific/solinas64_2e401m31_7limbs/feadd.c
deleted file mode 100644
index 9acf97578..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e401m31_7limbs/feadd.v b/src/Specific/solinas64_2e401m31_7limbs/feadd.v
deleted file mode 100644
index 5bcf6e157..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e401m31_7limbs.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/solinas64_2e401m31_7limbs/feaddDisplay.log b/src/Specific/solinas64_2e401m31_7limbs/feaddDisplay.log
deleted file mode 100644
index 6320440fc..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e401m31_7limbs/feaddDisplay.v b/src/Specific/solinas64_2e401m31_7limbs/feaddDisplay.v
deleted file mode 100644
index 2af4fb540..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e401m31_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e401m31_7limbs/fecarry.v b/src/Specific/solinas64_2e401m31_7limbs/fecarry.v
deleted file mode 100644
index 0321c5cfe..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e401m31_7limbs.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/solinas64_2e401m31_7limbs/fecarryDisplay.v b/src/Specific/solinas64_2e401m31_7limbs/fecarryDisplay.v
deleted file mode 100644
index 5ff498733..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e401m31_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e401m31_7limbs/femul.c b/src/Specific/solinas64_2e401m31_7limbs/femul.c
deleted file mode 100644
index 6ac79f099..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- { uint128_t x28 = (((uint128_t)x5 * x26) + ((0x2 * ((uint128_t)x7 * x27)) + ((0x2 * ((uint128_t)x9 * x25)) + (((uint128_t)x11 * x23) + ((0x2 * ((uint128_t)x13 * x21)) + ((0x2 * ((uint128_t)x15 * x19)) + ((uint128_t)x14 * x17)))))));
- { uint128_t x29 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + ((0x2 * ((uint128_t)x13 * x19)) + ((uint128_t)x15 * x17)))))) + (0x1f * ((uint128_t)x14 * x26)));
- { uint128_t x30 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + ((uint128_t)x13 * x17))))) + (0x1f * (((uint128_t)x15 * x26) + ((uint128_t)x14 * x27))));
- { uint128_t x31 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((0x2 * ((uint128_t)x9 * x19)) + ((uint128_t)x11 * x17)))) + (0x1f * ((0x2 * ((uint128_t)x13 * x26)) + ((0x2 * ((uint128_t)x15 * x27)) + (0x2 * ((uint128_t)x14 * x25))))));
- { uint128_t x32 = ((((uint128_t)x5 * x21) + ((0x2 * ((uint128_t)x7 * x19)) + ((uint128_t)x9 * x17))) + (0x1f * (((uint128_t)x11 * x26) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((uint128_t)x14 * x23))))));
- { uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0x1f * (((uint128_t)x9 * x26) + (((uint128_t)x11 * x27) + ((0x2 * ((uint128_t)x13 * x25)) + (((uint128_t)x15 * x23) + ((uint128_t)x14 * x21)))))));
- { uint128_t x34 = (((uint128_t)x5 * x17) + (0x1f * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19)))))))));
- { uint128_t x35 = (x34 >> 0x3a);
- { uint64_t x36 = ((uint64_t)x34 & 0x3ffffffffffffff);
- { uint128_t x37 = (x35 + x33);
- { uint128_t x38 = (x37 >> 0x39);
- { uint64_t x39 = ((uint64_t)x37 & 0x1ffffffffffffff);
- { uint128_t x40 = (x38 + x32);
- { uint128_t x41 = (x40 >> 0x39);
- { uint64_t x42 = ((uint64_t)x40 & 0x1ffffffffffffff);
- { uint128_t x43 = (x41 + x31);
- { uint128_t x44 = (x43 >> 0x3a);
- { uint64_t x45 = ((uint64_t)x43 & 0x3ffffffffffffff);
- { uint128_t x46 = (x44 + x30);
- { uint128_t x47 = (x46 >> 0x39);
- { uint64_t x48 = ((uint64_t)x46 & 0x1ffffffffffffff);
- { uint128_t x49 = (x47 + x29);
- { uint128_t x50 = (x49 >> 0x39);
- { uint64_t x51 = ((uint64_t)x49 & 0x1ffffffffffffff);
- { uint128_t x52 = (x50 + x28);
- { uint128_t x53 = (x52 >> 0x39);
- { uint64_t x54 = ((uint64_t)x52 & 0x1ffffffffffffff);
- { uint128_t x55 = (x36 + (0x1f * x53));
- { uint64_t x56 = (uint64_t) (x55 >> 0x3a);
- { uint64_t x57 = ((uint64_t)x55 & 0x3ffffffffffffff);
- { uint64_t x58 = (x56 + x39);
- { uint64_t x59 = (x58 >> 0x39);
- { uint64_t x60 = (x58 & 0x1ffffffffffffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e401m31_7limbs/femul.v b/src/Specific/solinas64_2e401m31_7limbs/femul.v
deleted file mode 100644
index 22b329808..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e401m31_7limbs.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/solinas64_2e401m31_7limbs/femulDisplay.log b/src/Specific/solinas64_2e401m31_7limbs/femulDisplay.log
deleted file mode 100644
index cfe716aa4..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint128_t x28 = (((uint128_t)x5 * x26) + ((0x2 * ((uint128_t)x7 * x27)) + ((0x2 * ((uint128_t)x9 * x25)) + (((uint128_t)x11 * x23) + ((0x2 * ((uint128_t)x13 * x21)) + ((0x2 * ((uint128_t)x15 * x19)) + ((uint128_t)x14 * x17)))))));
- uint128_t x29 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + ((0x2 * ((uint128_t)x13 * x19)) + ((uint128_t)x15 * x17)))))) + (0x1f * ((uint128_t)x14 * x26)));
- uint128_t x30 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + ((uint128_t)x13 * x17))))) + (0x1f * (((uint128_t)x15 * x26) + ((uint128_t)x14 * x27))));
- uint128_t x31 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((0x2 * ((uint128_t)x9 * x19)) + ((uint128_t)x11 * x17)))) + (0x1f * ((0x2 * ((uint128_t)x13 * x26)) + ((0x2 * ((uint128_t)x15 * x27)) + (0x2 * ((uint128_t)x14 * x25))))));
- uint128_t x32 = ((((uint128_t)x5 * x21) + ((0x2 * ((uint128_t)x7 * x19)) + ((uint128_t)x9 * x17))) + (0x1f * (((uint128_t)x11 * x26) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((uint128_t)x14 * x23))))));
- uint128_t x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) + (0x1f * (((uint128_t)x9 * x26) + (((uint128_t)x11 * x27) + ((0x2 * ((uint128_t)x13 * x25)) + (((uint128_t)x15 * x23) + ((uint128_t)x14 * x21)))))));
- uint128_t x34 = (((uint128_t)x5 * x17) + (0x1f * ((0x2 * ((uint128_t)x7 * x26)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + (0x2 * ((uint128_t)x14 * x19)))))))));
- uint128_t x35 = (x34 >> 0x3a);
- uint64_t x36 = ((uint64_t)x34 & 0x3ffffffffffffff);
- uint128_t x37 = (x35 + x33);
- uint128_t x38 = (x37 >> 0x39);
- uint64_t x39 = ((uint64_t)x37 & 0x1ffffffffffffff);
- uint128_t x40 = (x38 + x32);
- uint128_t x41 = (x40 >> 0x39);
- uint64_t x42 = ((uint64_t)x40 & 0x1ffffffffffffff);
- uint128_t x43 = (x41 + x31);
- uint128_t x44 = (x43 >> 0x3a);
- uint64_t x45 = ((uint64_t)x43 & 0x3ffffffffffffff);
- uint128_t x46 = (x44 + x30);
- uint128_t x47 = (x46 >> 0x39);
- uint64_t x48 = ((uint64_t)x46 & 0x1ffffffffffffff);
- uint128_t x49 = (x47 + x29);
- uint128_t x50 = (x49 >> 0x39);
- uint64_t x51 = ((uint64_t)x49 & 0x1ffffffffffffff);
- uint128_t x52 = (x50 + x28);
- uint128_t x53 = (x52 >> 0x39);
- uint64_t x54 = ((uint64_t)x52 & 0x1ffffffffffffff);
- uint128_t x55 = (x36 + (0x1f * x53));
- uint64_t x56 = (uint64_t) (x55 >> 0x3a);
- uint64_t x57 = ((uint64_t)x55 & 0x3ffffffffffffff);
- uint64_t x58 = (x56 + x39);
- uint64_t x59 = (x58 >> 0x39);
- uint64_t x60 = (x58 & 0x1ffffffffffffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e401m31_7limbs/femulDisplay.v b/src/Specific/solinas64_2e401m31_7limbs/femulDisplay.v
deleted file mode 100644
index bc7dfb5f8..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e401m31_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e401m31_7limbs/fesquare.c b/src/Specific/solinas64_2e401m31_7limbs/fesquare.c
deleted file mode 100644
index e8d935dec..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x13 = (((uint128_t)x2 * x11) + ((0x2 * ((uint128_t)x4 * x12)) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x11 * x2)))))));
- { uint128_t x14 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x1f * ((uint128_t)x11 * x11)));
- { uint128_t x15 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x1f * (((uint128_t)x12 * x11) + ((uint128_t)x11 * x12))));
- { uint128_t x16 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x1f * ((0x2 * ((uint128_t)x10 * x11)) + ((0x2 * ((uint128_t)x12 * x12)) + (0x2 * ((uint128_t)x11 * x10))))));
- { uint128_t x17 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x1f * (((uint128_t)x8 * x11) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + ((uint128_t)x11 * x8))))));
- { uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1f * (((uint128_t)x6 * x11) + (((uint128_t)x8 * x12) + ((0x2 * ((uint128_t)x10 * x10)) + (((uint128_t)x12 * x8) + ((uint128_t)x11 * x6)))))));
- { uint128_t x19 = (((uint128_t)x2 * x2) + (0x1f * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4)))))))));
- { uint128_t x20 = (x19 >> 0x3a);
- { uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffffffff);
- { uint128_t x22 = (x20 + x18);
- { uint128_t x23 = (x22 >> 0x39);
- { uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint128_t x26 = (x25 >> 0x39);
- { uint64_t x27 = ((uint64_t)x25 & 0x1ffffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint128_t x29 = (x28 >> 0x3a);
- { uint64_t x30 = ((uint64_t)x28 & 0x3ffffffffffffff);
- { uint128_t x31 = (x29 + x15);
- { uint128_t x32 = (x31 >> 0x39);
- { uint64_t x33 = ((uint64_t)x31 & 0x1ffffffffffffff);
- { uint128_t x34 = (x32 + x14);
- { uint128_t x35 = (x34 >> 0x39);
- { uint64_t x36 = ((uint64_t)x34 & 0x1ffffffffffffff);
- { uint128_t x37 = (x35 + x13);
- { uint128_t x38 = (x37 >> 0x39);
- { uint64_t x39 = ((uint64_t)x37 & 0x1ffffffffffffff);
- { uint128_t x40 = (x21 + (0x1f * x38));
- { uint64_t x41 = (uint64_t) (x40 >> 0x3a);
- { uint64_t x42 = ((uint64_t)x40 & 0x3ffffffffffffff);
- { uint64_t x43 = (x41 + x24);
- { uint64_t x44 = (x43 >> 0x39);
- { uint64_t x45 = (x43 & 0x1ffffffffffffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e401m31_7limbs/fesquare.v b/src/Specific/solinas64_2e401m31_7limbs/fesquare.v
deleted file mode 100644
index 4a1687d32..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e401m31_7limbs.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/solinas64_2e401m31_7limbs/fesquareDisplay.log b/src/Specific/solinas64_2e401m31_7limbs/fesquareDisplay.log
deleted file mode 100644
index 6646fe954..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x13 = (((uint128_t)x2 * x11) + ((0x2 * ((uint128_t)x4 * x12)) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x11 * x2)))))));
- uint128_t x14 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x1f * ((uint128_t)x11 * x11)));
- uint128_t x15 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x1f * (((uint128_t)x12 * x11) + ((uint128_t)x11 * x12))));
- uint128_t x16 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x1f * ((0x2 * ((uint128_t)x10 * x11)) + ((0x2 * ((uint128_t)x12 * x12)) + (0x2 * ((uint128_t)x11 * x10))))));
- uint128_t x17 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x1f * (((uint128_t)x8 * x11) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + ((uint128_t)x11 * x8))))));
- uint128_t x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1f * (((uint128_t)x6 * x11) + (((uint128_t)x8 * x12) + ((0x2 * ((uint128_t)x10 * x10)) + (((uint128_t)x12 * x8) + ((uint128_t)x11 * x6)))))));
- uint128_t x19 = (((uint128_t)x2 * x2) + (0x1f * ((0x2 * ((uint128_t)x4 * x11)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + (0x2 * ((uint128_t)x11 * x4)))))))));
- uint128_t x20 = (x19 >> 0x3a);
- uint64_t x21 = ((uint64_t)x19 & 0x3ffffffffffffff);
- uint128_t x22 = (x20 + x18);
- uint128_t x23 = (x22 >> 0x39);
- uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint128_t x26 = (x25 >> 0x39);
- uint64_t x27 = ((uint64_t)x25 & 0x1ffffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint128_t x29 = (x28 >> 0x3a);
- uint64_t x30 = ((uint64_t)x28 & 0x3ffffffffffffff);
- uint128_t x31 = (x29 + x15);
- uint128_t x32 = (x31 >> 0x39);
- uint64_t x33 = ((uint64_t)x31 & 0x1ffffffffffffff);
- uint128_t x34 = (x32 + x14);
- uint128_t x35 = (x34 >> 0x39);
- uint64_t x36 = ((uint64_t)x34 & 0x1ffffffffffffff);
- uint128_t x37 = (x35 + x13);
- uint128_t x38 = (x37 >> 0x39);
- uint64_t x39 = ((uint64_t)x37 & 0x1ffffffffffffff);
- uint128_t x40 = (x21 + (0x1f * x38));
- uint64_t x41 = (uint64_t) (x40 >> 0x3a);
- uint64_t x42 = ((uint64_t)x40 & 0x3ffffffffffffff);
- uint64_t x43 = (x41 + x24);
- uint64_t x44 = (x43 >> 0x39);
- uint64_t x45 = (x43 & 0x1ffffffffffffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e401m31_7limbs/fesquareDisplay.v b/src/Specific/solinas64_2e401m31_7limbs/fesquareDisplay.v
deleted file mode 100644
index 7e0ce4d0b..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e401m31_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e401m31_7limbs/fesub.c b/src/Specific/solinas64_2e401m31_7limbs/fesub.c
deleted file mode 100644
index 9d535d7fd..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = ((0x7ffffffffffffc2 + x5) - x17);
- out[1] = ((0x3fffffffffffffe + x7) - x19);
- out[2] = ((0x3fffffffffffffe + x9) - x21);
- out[3] = ((0x7fffffffffffffe + x11) - x23);
- out[4] = ((0x3fffffffffffffe + x13) - x25);
- out[5] = ((0x3fffffffffffffe + x15) - x27);
- out[6] = ((0x3fffffffffffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e401m31_7limbs/fesub.v b/src/Specific/solinas64_2e401m31_7limbs/fesub.v
deleted file mode 100644
index 47bac02b7..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e401m31_7limbs.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/solinas64_2e401m31_7limbs/fesubDisplay.log b/src/Specific/solinas64_2e401m31_7limbs/fesubDisplay.log
deleted file mode 100644
index 8b63ba844..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0x3fffffffffffffe + x14) - x26), ((0x3fffffffffffffe + x15) - x27), ((0x3fffffffffffffe + x13) - x25), ((0x7fffffffffffffe + x11) - x23), ((0x3fffffffffffffe + x9) - x21), ((0x3fffffffffffffe + x7) - x19), ((0x7ffffffffffffc2 + x5) - x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e401m31_7limbs/fesubDisplay.v b/src/Specific/solinas64_2e401m31_7limbs/fesubDisplay.v
deleted file mode 100644
index 56bb75537..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e401m31_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e401m31_7limbs/freeze.c b/src/Specific/solinas64_2e401m31_7limbs/freeze.c
deleted file mode 100644
index 29a93a41a..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffffffe1);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0x1ffffffffffffff);
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0x1ffffffffffffff);
- { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0x3ffffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0x1ffffffffffffff);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0x1ffffffffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0x1ffffffffffffff);
- { uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- { uint64_t x35 = (x34 & 0x3ffffffffffffe1);
- { uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint64_t x39 = (x34 & 0x1ffffffffffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint64_t x43 = (x34 & 0x1ffffffffffffff);
- { uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint64_t x47 = (x34 & 0x3ffffffffffffff);
- { uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint64_t x51 = (x34 & 0x1ffffffffffffff);
- { uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint64_t x55 = (x34 & 0x1ffffffffffffff);
- { uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint64_t x59 = (x34 & 0x1ffffffffffffff);
- { uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e401m31_7limbs/freeze.v b/src/Specific/solinas64_2e401m31_7limbs/freeze.v
deleted file mode 100644
index 579d50c72..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e401m31_7limbs.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/solinas64_2e401m31_7limbs/freezeDisplay.log b/src/Specific/solinas64_2e401m31_7limbs/freezeDisplay.log
deleted file mode 100644
index 793a37ad2..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffffffe1);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0x1ffffffffffffff);
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0x1ffffffffffffff);
- uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0x3ffffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0x1ffffffffffffff);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0x1ffffffffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0x1ffffffffffffff);
- uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- uint64_t x35 = (x34 & 0x3ffffffffffffe1);
- uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint64_t x39 = (x34 & 0x1ffffffffffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint64_t x43 = (x34 & 0x1ffffffffffffff);
- uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint64_t x47 = (x34 & 0x3ffffffffffffff);
- uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint64_t x51 = (x34 & 0x1ffffffffffffff);
- uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint64_t x55 = (x34 & 0x1ffffffffffffff);
- uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint64_t x59 = (x34 & 0x1ffffffffffffff);
- uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e401m31_7limbs/freezeDisplay.v b/src/Specific/solinas64_2e401m31_7limbs/freezeDisplay.v
deleted file mode 100644
index a1135ded2..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e401m31_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e401m31_7limbs/py_interpreter.sh b/src/Specific/solinas64_2e401m31_7limbs/py_interpreter.sh
deleted file mode 100755
index c7b8cb3cc..000000000
--- a/src/Specific/solinas64_2e401m31_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**401 - 31' -Dmodulus_bytes='57 + 2/7' -Da24='121665'
diff --git a/src/Specific/solinas64_2e401m31_8limbs/CurveParameters.v b/src/Specific/solinas64_2e401m31_8limbs/CurveParameters.v
deleted file mode 100644
index 0d6d08d4c..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^401 - 31
-Base: 50.125
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 50 + 1/8;
- bitwidth := 64;
- s := 2^401;
- c := [(1, 31)];
- carry_chains := Some [seq 0 (pred 8); [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/solinas64_2e401m31_8limbs/Synthesis.v b/src/Specific/solinas64_2e401m31_8limbs/Synthesis.v
deleted file mode 100644
index 6ee943ecc..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e401m31_8limbs.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/solinas64_2e401m31_8limbs/compiler.sh b/src/Specific/solinas64_2e401m31_8limbs/compiler.sh
deleted file mode 100755
index 7cb05aa0a..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,50,50,50,50,50,50,50}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='51' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<401) - 31' "$@"
diff --git a/src/Specific/solinas64_2e401m31_8limbs/compilerxx.sh b/src/Specific/solinas64_2e401m31_8limbs/compilerxx.sh
deleted file mode 100755
index 79a57d0ae..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,50,50,50,50,50,50,50}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='51' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<401) - 31' "$@"
diff --git a/src/Specific/solinas64_2e401m31_8limbs/feadd.c b/src/Specific/solinas64_2e401m31_8limbs/feadd.c
deleted file mode 100644
index 4def6ee9c..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e401m31_8limbs/feadd.v b/src/Specific/solinas64_2e401m31_8limbs/feadd.v
deleted file mode 100644
index 8e86f3f21..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e401m31_8limbs.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/solinas64_2e401m31_8limbs/feaddDisplay.log b/src/Specific/solinas64_2e401m31_8limbs/feaddDisplay.log
deleted file mode 100644
index 023fc8a31..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e401m31_8limbs/feaddDisplay.v b/src/Specific/solinas64_2e401m31_8limbs/feaddDisplay.v
deleted file mode 100644
index 77e27e5b3..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e401m31_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e401m31_8limbs/fecarry.v b/src/Specific/solinas64_2e401m31_8limbs/fecarry.v
deleted file mode 100644
index 0615ff113..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e401m31_8limbs.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/solinas64_2e401m31_8limbs/fecarryDisplay.v b/src/Specific/solinas64_2e401m31_8limbs/fecarryDisplay.v
deleted file mode 100644
index 3dab708a8..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e401m31_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e401m31_8limbs/femul.c b/src/Specific/solinas64_2e401m31_8limbs/femul.c
deleted file mode 100644
index e9f8d6aef..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint128_t x32 = (((uint128_t)x5 * x30) + ((0x2 * ((uint128_t)x7 * x31)) + ((0x2 * ((uint128_t)x9 * x29)) + ((0x2 * ((uint128_t)x11 * x27)) + ((0x2 * ((uint128_t)x13 * x25)) + ((0x2 * ((uint128_t)x15 * x23)) + ((0x2 * ((uint128_t)x17 * x21)) + ((uint128_t)x16 * x19))))))));
- { uint128_t x33 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + ((uint128_t)x17 * x19))))))) + (0x1f * ((uint128_t)x16 * x30)));
- { uint128_t x34 = ((((uint128_t)x5 * x29) + ((0x2 * ((uint128_t)x7 * x27)) + ((0x2 * ((uint128_t)x9 * x25)) + ((0x2 * ((uint128_t)x11 * x23)) + ((0x2 * ((uint128_t)x13 * x21)) + ((uint128_t)x15 * x19)))))) + (0x1f * (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))));
- { uint128_t x35 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + ((uint128_t)x13 * x19))))) + (0x1f * (((uint128_t)x15 * x30) + (((uint128_t)x17 * x31) + ((uint128_t)x16 * x29)))));
- { uint128_t x36 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((0x2 * ((uint128_t)x9 * x21)) + ((uint128_t)x11 * x19)))) + (0x1f * (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27))))));
- { uint128_t x37 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((uint128_t)x9 * x19))) + (0x1f * (((uint128_t)x11 * x30) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + (((uint128_t)x17 * x27) + ((uint128_t)x16 * x25)))))));
- { uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x1f * (((uint128_t)x9 * x30) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + ((uint128_t)x16 * x23))))))));
- { uint128_t x39 = (((uint128_t)x5 * x19) + (0x1f * ((0x2 * ((uint128_t)x7 * x30)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((0x2 * ((uint128_t)x17 * x23)) + (0x2 * ((uint128_t)x16 * x21))))))))));
- { uint64_t x40 = (uint64_t) (x39 >> 0x33);
- { uint64_t x41 = ((uint64_t)x39 & 0x7ffffffffffff);
- { uint128_t x42 = (x40 + x38);
- { uint64_t x43 = (uint64_t) (x42 >> 0x32);
- { uint64_t x44 = ((uint64_t)x42 & 0x3ffffffffffff);
- { uint128_t x45 = (x43 + x37);
- { uint64_t x46 = (uint64_t) (x45 >> 0x32);
- { uint64_t x47 = ((uint64_t)x45 & 0x3ffffffffffff);
- { uint128_t x48 = (x46 + x36);
- { uint64_t x49 = (uint64_t) (x48 >> 0x32);
- { uint64_t x50 = ((uint64_t)x48 & 0x3ffffffffffff);
- { uint128_t x51 = (x49 + x35);
- { uint64_t x52 = (uint64_t) (x51 >> 0x32);
- { uint64_t x53 = ((uint64_t)x51 & 0x3ffffffffffff);
- { uint128_t x54 = (x52 + x34);
- { uint64_t x55 = (uint64_t) (x54 >> 0x32);
- { uint64_t x56 = ((uint64_t)x54 & 0x3ffffffffffff);
- { uint128_t x57 = (x55 + x33);
- { uint64_t x58 = (uint64_t) (x57 >> 0x32);
- { uint64_t x59 = ((uint64_t)x57 & 0x3ffffffffffff);
- { uint128_t x60 = (x58 + x32);
- { uint64_t x61 = (uint64_t) (x60 >> 0x32);
- { uint64_t x62 = ((uint64_t)x60 & 0x3ffffffffffff);
- { uint64_t x63 = (x41 + (0x1f * x61));
- { uint64_t x64 = (x63 >> 0x33);
- { uint64_t x65 = (x63 & 0x7ffffffffffff);
- { uint64_t x66 = (x64 + x44);
- { uint64_t x67 = (x66 >> 0x32);
- { uint64_t x68 = (x66 & 0x3ffffffffffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e401m31_8limbs/femul.v b/src/Specific/solinas64_2e401m31_8limbs/femul.v
deleted file mode 100644
index 7ff6e5890..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e401m31_8limbs.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/solinas64_2e401m31_8limbs/femulDisplay.log b/src/Specific/solinas64_2e401m31_8limbs/femulDisplay.log
deleted file mode 100644
index f2fe04251..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint128_t x32 = (((uint128_t)x5 * x30) + ((0x2 * ((uint128_t)x7 * x31)) + ((0x2 * ((uint128_t)x9 * x29)) + ((0x2 * ((uint128_t)x11 * x27)) + ((0x2 * ((uint128_t)x13 * x25)) + ((0x2 * ((uint128_t)x15 * x23)) + ((0x2 * ((uint128_t)x17 * x21)) + ((uint128_t)x16 * x19))))))));
- uint128_t x33 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + ((uint128_t)x17 * x19))))))) + (0x1f * ((uint128_t)x16 * x30)));
- uint128_t x34 = ((((uint128_t)x5 * x29) + ((0x2 * ((uint128_t)x7 * x27)) + ((0x2 * ((uint128_t)x9 * x25)) + ((0x2 * ((uint128_t)x11 * x23)) + ((0x2 * ((uint128_t)x13 * x21)) + ((uint128_t)x15 * x19)))))) + (0x1f * (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))));
- uint128_t x35 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + ((uint128_t)x13 * x19))))) + (0x1f * (((uint128_t)x15 * x30) + (((uint128_t)x17 * x31) + ((uint128_t)x16 * x29)))));
- uint128_t x36 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((0x2 * ((uint128_t)x9 * x21)) + ((uint128_t)x11 * x19)))) + (0x1f * (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27))))));
- uint128_t x37 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((uint128_t)x9 * x19))) + (0x1f * (((uint128_t)x11 * x30) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + (((uint128_t)x17 * x27) + ((uint128_t)x16 * x25)))))));
- uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x1f * (((uint128_t)x9 * x30) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + ((uint128_t)x16 * x23))))))));
- uint128_t x39 = (((uint128_t)x5 * x19) + (0x1f * ((0x2 * ((uint128_t)x7 * x30)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((0x2 * ((uint128_t)x17 * x23)) + (0x2 * ((uint128_t)x16 * x21))))))))));
- uint64_t x40 = (uint64_t) (x39 >> 0x33);
- uint64_t x41 = ((uint64_t)x39 & 0x7ffffffffffff);
- uint128_t x42 = (x40 + x38);
- uint64_t x43 = (uint64_t) (x42 >> 0x32);
- uint64_t x44 = ((uint64_t)x42 & 0x3ffffffffffff);
- uint128_t x45 = (x43 + x37);
- uint64_t x46 = (uint64_t) (x45 >> 0x32);
- uint64_t x47 = ((uint64_t)x45 & 0x3ffffffffffff);
- uint128_t x48 = (x46 + x36);
- uint64_t x49 = (uint64_t) (x48 >> 0x32);
- uint64_t x50 = ((uint64_t)x48 & 0x3ffffffffffff);
- uint128_t x51 = (x49 + x35);
- uint64_t x52 = (uint64_t) (x51 >> 0x32);
- uint64_t x53 = ((uint64_t)x51 & 0x3ffffffffffff);
- uint128_t x54 = (x52 + x34);
- uint64_t x55 = (uint64_t) (x54 >> 0x32);
- uint64_t x56 = ((uint64_t)x54 & 0x3ffffffffffff);
- uint128_t x57 = (x55 + x33);
- uint64_t x58 = (uint64_t) (x57 >> 0x32);
- uint64_t x59 = ((uint64_t)x57 & 0x3ffffffffffff);
- uint128_t x60 = (x58 + x32);
- uint64_t x61 = (uint64_t) (x60 >> 0x32);
- uint64_t x62 = ((uint64_t)x60 & 0x3ffffffffffff);
- uint64_t x63 = (x41 + (0x1f * x61));
- uint64_t x64 = (x63 >> 0x33);
- uint64_t x65 = (x63 & 0x7ffffffffffff);
- uint64_t x66 = (x64 + x44);
- uint64_t x67 = (x66 >> 0x32);
- uint64_t x68 = (x66 & 0x3ffffffffffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e401m31_8limbs/femulDisplay.v b/src/Specific/solinas64_2e401m31_8limbs/femulDisplay.v
deleted file mode 100644
index 2e466c6b2..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e401m31_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e401m31_8limbs/fesquare.c b/src/Specific/solinas64_2e401m31_8limbs/fesquare.c
deleted file mode 100644
index b36782beb..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x15 = (((uint128_t)x2 * x13) + ((0x2 * ((uint128_t)x4 * x14)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + ((0x2 * ((uint128_t)x14 * x4)) + ((uint128_t)x13 * x2))))))));
- { uint128_t x16 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + ((0x2 * ((uint128_t)x6 * x10)) + ((0x2 * ((uint128_t)x8 * x8)) + ((0x2 * ((uint128_t)x10 * x6)) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x1f * ((uint128_t)x13 * x13)));
- { uint128_t x17 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x1f * (((uint128_t)x14 * x13) + ((uint128_t)x13 * x14))));
- { uint128_t x18 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x1f * (((uint128_t)x12 * x13) + (((uint128_t)x14 * x14) + ((uint128_t)x13 * x12)))));
- { uint128_t x19 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x1f * (((uint128_t)x10 * x13) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((uint128_t)x13 * x10))))));
- { uint128_t x20 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x1f * (((uint128_t)x8 * x13) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + (((uint128_t)x14 * x10) + ((uint128_t)x13 * x8)))))));
- { uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1f * (((uint128_t)x6 * x13) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + ((uint128_t)x13 * x6))))))));
- { uint128_t x22 = (((uint128_t)x2 * x2) + (0x1f * ((0x2 * ((uint128_t)x4 * x13)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + (0x2 * ((uint128_t)x13 * x4))))))))));
- { uint64_t x23 = (uint64_t) (x22 >> 0x33);
- { uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffffff);
- { uint128_t x25 = (x23 + x21);
- { uint64_t x26 = (uint64_t) (x25 >> 0x32);
- { uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffffff);
- { uint128_t x28 = (x26 + x20);
- { uint64_t x29 = (uint64_t) (x28 >> 0x32);
- { uint64_t x30 = ((uint64_t)x28 & 0x3ffffffffffff);
- { uint128_t x31 = (x29 + x19);
- { uint64_t x32 = (uint64_t) (x31 >> 0x32);
- { uint64_t x33 = ((uint64_t)x31 & 0x3ffffffffffff);
- { uint128_t x34 = (x32 + x18);
- { uint64_t x35 = (uint64_t) (x34 >> 0x32);
- { uint64_t x36 = ((uint64_t)x34 & 0x3ffffffffffff);
- { uint128_t x37 = (x35 + x17);
- { uint64_t x38 = (uint64_t) (x37 >> 0x32);
- { uint64_t x39 = ((uint64_t)x37 & 0x3ffffffffffff);
- { uint128_t x40 = (x38 + x16);
- { uint64_t x41 = (uint64_t) (x40 >> 0x32);
- { uint64_t x42 = ((uint64_t)x40 & 0x3ffffffffffff);
- { uint128_t x43 = (x41 + x15);
- { uint64_t x44 = (uint64_t) (x43 >> 0x32);
- { uint64_t x45 = ((uint64_t)x43 & 0x3ffffffffffff);
- { uint64_t x46 = (x24 + (0x1f * x44));
- { uint64_t x47 = (x46 >> 0x33);
- { uint64_t x48 = (x46 & 0x7ffffffffffff);
- { uint64_t x49 = (x47 + x27);
- { uint64_t x50 = (x49 >> 0x32);
- { uint64_t x51 = (x49 & 0x3ffffffffffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e401m31_8limbs/fesquare.v b/src/Specific/solinas64_2e401m31_8limbs/fesquare.v
deleted file mode 100644
index aaee20b69..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e401m31_8limbs.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/solinas64_2e401m31_8limbs/fesquareDisplay.log b/src/Specific/solinas64_2e401m31_8limbs/fesquareDisplay.log
deleted file mode 100644
index 60c16004d..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x15 = (((uint128_t)x2 * x13) + ((0x2 * ((uint128_t)x4 * x14)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + ((0x2 * ((uint128_t)x14 * x4)) + ((uint128_t)x13 * x2))))))));
- uint128_t x16 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + ((0x2 * ((uint128_t)x6 * x10)) + ((0x2 * ((uint128_t)x8 * x8)) + ((0x2 * ((uint128_t)x10 * x6)) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x1f * ((uint128_t)x13 * x13)));
- uint128_t x17 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x1f * (((uint128_t)x14 * x13) + ((uint128_t)x13 * x14))));
- uint128_t x18 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x1f * (((uint128_t)x12 * x13) + (((uint128_t)x14 * x14) + ((uint128_t)x13 * x12)))));
- uint128_t x19 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x1f * (((uint128_t)x10 * x13) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((uint128_t)x13 * x10))))));
- uint128_t x20 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x1f * (((uint128_t)x8 * x13) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + (((uint128_t)x14 * x10) + ((uint128_t)x13 * x8)))))));
- uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1f * (((uint128_t)x6 * x13) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + ((uint128_t)x13 * x6))))))));
- uint128_t x22 = (((uint128_t)x2 * x2) + (0x1f * ((0x2 * ((uint128_t)x4 * x13)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + (0x2 * ((uint128_t)x13 * x4))))))))));
- uint64_t x23 = (uint64_t) (x22 >> 0x33);
- uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffffff);
- uint128_t x25 = (x23 + x21);
- uint64_t x26 = (uint64_t) (x25 >> 0x32);
- uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffffff);
- uint128_t x28 = (x26 + x20);
- uint64_t x29 = (uint64_t) (x28 >> 0x32);
- uint64_t x30 = ((uint64_t)x28 & 0x3ffffffffffff);
- uint128_t x31 = (x29 + x19);
- uint64_t x32 = (uint64_t) (x31 >> 0x32);
- uint64_t x33 = ((uint64_t)x31 & 0x3ffffffffffff);
- uint128_t x34 = (x32 + x18);
- uint64_t x35 = (uint64_t) (x34 >> 0x32);
- uint64_t x36 = ((uint64_t)x34 & 0x3ffffffffffff);
- uint128_t x37 = (x35 + x17);
- uint64_t x38 = (uint64_t) (x37 >> 0x32);
- uint64_t x39 = ((uint64_t)x37 & 0x3ffffffffffff);
- uint128_t x40 = (x38 + x16);
- uint64_t x41 = (uint64_t) (x40 >> 0x32);
- uint64_t x42 = ((uint64_t)x40 & 0x3ffffffffffff);
- uint128_t x43 = (x41 + x15);
- uint64_t x44 = (uint64_t) (x43 >> 0x32);
- uint64_t x45 = ((uint64_t)x43 & 0x3ffffffffffff);
- uint64_t x46 = (x24 + (0x1f * x44));
- uint64_t x47 = (x46 >> 0x33);
- uint64_t x48 = (x46 & 0x7ffffffffffff);
- uint64_t x49 = (x47 + x27);
- uint64_t x50 = (x49 >> 0x32);
- uint64_t x51 = (x49 & 0x3ffffffffffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e401m31_8limbs/fesquareDisplay.v b/src/Specific/solinas64_2e401m31_8limbs/fesquareDisplay.v
deleted file mode 100644
index e7decd022..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e401m31_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e401m31_8limbs/fesub.c b/src/Specific/solinas64_2e401m31_8limbs/fesub.c
deleted file mode 100644
index fa2135cce..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = ((0xfffffffffffc2 + x5) - x19);
- out[1] = ((0x7fffffffffffe + x7) - x21);
- out[2] = ((0x7fffffffffffe + x9) - x23);
- out[3] = ((0x7fffffffffffe + x11) - x25);
- out[4] = ((0x7fffffffffffe + x13) - x27);
- out[5] = ((0x7fffffffffffe + x15) - x29);
- out[6] = ((0x7fffffffffffe + x17) - x31);
- out[7] = ((0x7fffffffffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e401m31_8limbs/fesub.v b/src/Specific/solinas64_2e401m31_8limbs/fesub.v
deleted file mode 100644
index 5b2b9a83e..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e401m31_8limbs.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/solinas64_2e401m31_8limbs/fesubDisplay.log b/src/Specific/solinas64_2e401m31_8limbs/fesubDisplay.log
deleted file mode 100644
index 1130a3297..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0x7fffffffffffe + x16) - x30), ((0x7fffffffffffe + x17) - x31), ((0x7fffffffffffe + x15) - x29), ((0x7fffffffffffe + x13) - x27), ((0x7fffffffffffe + x11) - x25), ((0x7fffffffffffe + x9) - x23), ((0x7fffffffffffe + x7) - x21), ((0xfffffffffffc2 + x5) - x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e401m31_8limbs/fesubDisplay.v b/src/Specific/solinas64_2e401m31_8limbs/fesubDisplay.v
deleted file mode 100644
index 9977fd4d6..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e401m31_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e401m31_8limbs/freeze.c b/src/Specific/solinas64_2e401m31_8limbs/freeze.c
deleted file mode 100644
index 2bc280725..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x16; uint8_t x17 = _subborrow_u51(0x0, x2, 0x7ffffffffffe1, &x16);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0x3ffffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0x3ffffffffffff);
- { uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0x3ffffffffffff);
- { uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0x3ffffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0x3ffffffffffff);
- { uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0x3ffffffffffff);
- { uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0x3ffffffffffff);
- { uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- { uint64_t x40 = (x39 & 0x7ffffffffffe1);
- { uint64_t x42; uint8_t x43 = _addcarryx_u51(0x0, x16, x40, &x42);
- { uint64_t x44 = (x39 & 0x3ffffffffffff);
- { uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint64_t x48 = (x39 & 0x3ffffffffffff);
- { uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint64_t x52 = (x39 & 0x3ffffffffffff);
- { uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint64_t x56 = (x39 & 0x3ffffffffffff);
- { uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint64_t x60 = (x39 & 0x3ffffffffffff);
- { uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint64_t x64 = (x39 & 0x3ffffffffffff);
- { uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint64_t x68 = (x39 & 0x3ffffffffffff);
- { uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e401m31_8limbs/freeze.v b/src/Specific/solinas64_2e401m31_8limbs/freeze.v
deleted file mode 100644
index ac47dade4..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e401m31_8limbs.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/solinas64_2e401m31_8limbs/freezeDisplay.log b/src/Specific/solinas64_2e401m31_8limbs/freezeDisplay.log
deleted file mode 100644
index b4ce1612e..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x16, uint8_t x17 = subborrow_u51(0x0, x2, 0x7ffffffffffe1);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0x3ffffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0x3ffffffffffff);
- uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0x3ffffffffffff);
- uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0x3ffffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0x3ffffffffffff);
- uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0x3ffffffffffff);
- uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0x3ffffffffffff);
- uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- uint64_t x40 = (x39 & 0x7ffffffffffe1);
- uint64_t x42, uint8_t x43 = addcarryx_u51(0x0, x16, x40);
- uint64_t x44 = (x39 & 0x3ffffffffffff);
- uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint64_t x48 = (x39 & 0x3ffffffffffff);
- uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint64_t x52 = (x39 & 0x3ffffffffffff);
- uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint64_t x56 = (x39 & 0x3ffffffffffff);
- uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint64_t x60 = (x39 & 0x3ffffffffffff);
- uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint64_t x64 = (x39 & 0x3ffffffffffff);
- uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint64_t x68 = (x39 & 0x3ffffffffffff);
- uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e401m31_8limbs/freezeDisplay.v b/src/Specific/solinas64_2e401m31_8limbs/freezeDisplay.v
deleted file mode 100644
index 7e747fc10..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e401m31_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e401m31_8limbs/py_interpreter.sh b/src/Specific/solinas64_2e401m31_8limbs/py_interpreter.sh
deleted file mode 100755
index 9b040565a..000000000
--- a/src/Specific/solinas64_2e401m31_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**401 - 31' -Dmodulus_bytes='50.125' -Da24='121665'
diff --git a/src/Specific/solinas64_2e413m21_7limbs/CurveParameters.v b/src/Specific/solinas64_2e413m21_7limbs/CurveParameters.v
deleted file mode 100644
index a438267f2..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^413 - 21
-Base: 59
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 7%nat;
- base := 59;
- bitwidth := 64;
- s := 2^413;
- c := [(1, 21)];
- carry_chains := Some [seq 0 (pred 7); [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/solinas64_2e413m21_7limbs/Synthesis.v b/src/Specific/solinas64_2e413m21_7limbs/Synthesis.v
deleted file mode 100644
index 1ba1141ee..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e413m21_7limbs.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/solinas64_2e413m21_7limbs/compiler.sh b/src/Specific/solinas64_2e413m21_7limbs/compiler.sh
deleted file mode 100755
index 2bb78eeb9..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{59,59,59,59,59,59,59}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<413) - 21' "$@"
diff --git a/src/Specific/solinas64_2e413m21_7limbs/compilerxx.sh b/src/Specific/solinas64_2e413m21_7limbs/compilerxx.sh
deleted file mode 100755
index 103187922..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{59,59,59,59,59,59,59}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='7' -Dq_mpz='(1_mpz<<413) - 21' "$@"
diff --git a/src/Specific/solinas64_2e413m21_7limbs/feadd.c b/src/Specific/solinas64_2e413m21_7limbs/feadd.c
deleted file mode 100644
index 9acf97578..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/feadd.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void feadd(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = (x5 + x17);
- out[1] = (x7 + x19);
- out[2] = (x9 + x21);
- out[3] = (x11 + x23);
- out[4] = (x13 + x25);
- out[5] = (x15 + x27);
- out[6] = (x14 + x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e413m21_7limbs/feadd.v b/src/Specific/solinas64_2e413m21_7limbs/feadd.v
deleted file mode 100644
index 4f084ebc8..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e413m21_7limbs.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/solinas64_2e413m21_7limbs/feaddDisplay.log b/src/Specific/solinas64_2e413m21_7limbs/feaddDisplay.log
deleted file mode 100644
index 6320440fc..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- ((x14 + x26), (x15 + x27), (x13 + x25), (x11 + x23), (x9 + x21), (x7 + x19), (x5 + x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e413m21_7limbs/feaddDisplay.v b/src/Specific/solinas64_2e413m21_7limbs/feaddDisplay.v
deleted file mode 100644
index 732dda844..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e413m21_7limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e413m21_7limbs/fecarry.v b/src/Specific/solinas64_2e413m21_7limbs/fecarry.v
deleted file mode 100644
index 39cd53bea..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e413m21_7limbs.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/solinas64_2e413m21_7limbs/fecarryDisplay.v b/src/Specific/solinas64_2e413m21_7limbs/fecarryDisplay.v
deleted file mode 100644
index 2acc22765..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e413m21_7limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e413m21_7limbs/femul.c b/src/Specific/solinas64_2e413m21_7limbs/femul.c
deleted file mode 100644
index 6fbb37ad9..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/femul.c
+++ /dev/null
@@ -1,57 +0,0 @@
-static void femul(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- { uint128_t x28 = (((uint128_t)x5 * x26) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + (((uint128_t)x15 * x19) + ((uint128_t)x14 * x17)))))));
- { uint128_t x29 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + (((uint128_t)x13 * x19) + ((uint128_t)x15 * x17)))))) + (0x15 * ((uint128_t)x14 * x26)));
- { uint128_t x30 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + ((uint128_t)x13 * x17))))) + (0x15 * (((uint128_t)x15 * x26) + ((uint128_t)x14 * x27))));
- { uint128_t x31 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + ((uint128_t)x11 * x17)))) + (0x15 * (((uint128_t)x13 * x26) + (((uint128_t)x15 * x27) + ((uint128_t)x14 * x25)))));
- { uint128_t x32 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + ((uint128_t)x9 * x17))) + (0x15 * (((uint128_t)x11 * x26) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + ((uint128_t)x14 * x23))))));
- { ℤ x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) +ℤ (0x15 *ℤ (((uint128_t)x9 * x26) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + ((uint128_t)x14 * x21)))))));
- { ℤ x34 = (((uint128_t)x5 * x17) +ℤ (0x15 *ℤ (((uint128_t)x7 * x26) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + (((uint128_t)x15 * x21) + ((uint128_t)x14 * x19))))))));
- { uint128_t x35 = (x34 >> 0x3b);
- { uint64_t x36 = (x34 & 0x7ffffffffffffff);
- { ℤ x37 = (x35 +ℤ x33);
- { uint128_t x38 = (x37 >> 0x3b);
- { uint64_t x39 = (x37 & 0x7ffffffffffffff);
- { uint128_t x40 = (x38 + x32);
- { uint128_t x41 = (x40 >> 0x3b);
- { uint64_t x42 = ((uint64_t)x40 & 0x7ffffffffffffff);
- { uint128_t x43 = (x41 + x31);
- { uint128_t x44 = (x43 >> 0x3b);
- { uint64_t x45 = ((uint64_t)x43 & 0x7ffffffffffffff);
- { uint128_t x46 = (x44 + x30);
- { uint128_t x47 = (x46 >> 0x3b);
- { uint64_t x48 = ((uint64_t)x46 & 0x7ffffffffffffff);
- { uint128_t x49 = (x47 + x29);
- { uint128_t x50 = (x49 >> 0x3b);
- { uint64_t x51 = ((uint64_t)x49 & 0x7ffffffffffffff);
- { uint128_t x52 = (x50 + x28);
- { uint128_t x53 = (x52 >> 0x3b);
- { uint64_t x54 = ((uint64_t)x52 & 0x7ffffffffffffff);
- { uint128_t x55 = (x36 + (0x15 * x53));
- { uint64_t x56 = (uint64_t) (x55 >> 0x3b);
- { uint64_t x57 = ((uint64_t)x55 & 0x7ffffffffffffff);
- { uint64_t x58 = (x56 + x39);
- { uint64_t x59 = (x58 >> 0x3b);
- { uint64_t x60 = (x58 & 0x7ffffffffffffff);
- out[0] = x57;
- out[1] = x60;
- out[2] = (x59 + x42);
- out[3] = x45;
- out[4] = x48;
- out[5] = x51;
- out[6] = x54;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e413m21_7limbs/femul.v b/src/Specific/solinas64_2e413m21_7limbs/femul.v
deleted file mode 100644
index f66ab43a7..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e413m21_7limbs.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/solinas64_2e413m21_7limbs/femulDisplay.log b/src/Specific/solinas64_2e413m21_7limbs/femulDisplay.log
deleted file mode 100644
index 79be934ac..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/femulDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- uint128_t x28 = (((uint128_t)x5 * x26) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + (((uint128_t)x15 * x19) + ((uint128_t)x14 * x17)))))));
- uint128_t x29 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + (((uint128_t)x11 * x21) + (((uint128_t)x13 * x19) + ((uint128_t)x15 * x17)))))) + (0x15 * ((uint128_t)x14 * x26)));
- uint128_t x30 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + (((uint128_t)x11 * x19) + ((uint128_t)x13 * x17))))) + (0x15 * (((uint128_t)x15 * x26) + ((uint128_t)x14 * x27))));
- uint128_t x31 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + (((uint128_t)x9 * x19) + ((uint128_t)x11 * x17)))) + (0x15 * (((uint128_t)x13 * x26) + (((uint128_t)x15 * x27) + ((uint128_t)x14 * x25)))));
- uint128_t x32 = ((((uint128_t)x5 * x21) + (((uint128_t)x7 * x19) + ((uint128_t)x9 * x17))) + (0x15 * (((uint128_t)x11 * x26) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + ((uint128_t)x14 * x23))))));
- ℤ x33 = ((((uint128_t)x5 * x19) + ((uint128_t)x7 * x17)) +ℤ (0x15 *ℤ (((uint128_t)x9 * x26) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + ((uint128_t)x14 * x21)))))));
- ℤ x34 = (((uint128_t)x5 * x17) +ℤ (0x15 *ℤ (((uint128_t)x7 * x26) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + (((uint128_t)x15 * x21) + ((uint128_t)x14 * x19))))))));
- uint128_t x35 = (x34 >> 0x3b);
- uint64_t x36 = (x34 & 0x7ffffffffffffff);
- ℤ x37 = (x35 +ℤ x33);
- uint128_t x38 = (x37 >> 0x3b);
- uint64_t x39 = (x37 & 0x7ffffffffffffff);
- uint128_t x40 = (x38 + x32);
- uint128_t x41 = (x40 >> 0x3b);
- uint64_t x42 = ((uint64_t)x40 & 0x7ffffffffffffff);
- uint128_t x43 = (x41 + x31);
- uint128_t x44 = (x43 >> 0x3b);
- uint64_t x45 = ((uint64_t)x43 & 0x7ffffffffffffff);
- uint128_t x46 = (x44 + x30);
- uint128_t x47 = (x46 >> 0x3b);
- uint64_t x48 = ((uint64_t)x46 & 0x7ffffffffffffff);
- uint128_t x49 = (x47 + x29);
- uint128_t x50 = (x49 >> 0x3b);
- uint64_t x51 = ((uint64_t)x49 & 0x7ffffffffffffff);
- uint128_t x52 = (x50 + x28);
- uint128_t x53 = (x52 >> 0x3b);
- uint64_t x54 = ((uint64_t)x52 & 0x7ffffffffffffff);
- uint128_t x55 = (x36 + (0x15 * x53));
- uint64_t x56 = (uint64_t) (x55 >> 0x3b);
- uint64_t x57 = ((uint64_t)x55 & 0x7ffffffffffffff);
- uint64_t x58 = (x56 + x39);
- uint64_t x59 = (x58 >> 0x3b);
- uint64_t x60 = (x58 & 0x7ffffffffffffff);
- return (Return x54, Return x51, Return x48, Return x45, (x59 + x42), Return x60, Return x57))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e413m21_7limbs/femulDisplay.v b/src/Specific/solinas64_2e413m21_7limbs/femulDisplay.v
deleted file mode 100644
index 4a2ca9f64..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e413m21_7limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e413m21_7limbs/fesquare.c b/src/Specific/solinas64_2e413m21_7limbs/fesquare.c
deleted file mode 100644
index c3e0d7d32..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/fesquare.c
+++ /dev/null
@@ -1,50 +0,0 @@
-static void fesquare(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x13 = (((uint128_t)x2 * x11) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x11 * x2)))))));
- { uint128_t x14 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x15 * ((uint128_t)x11 * x11)));
- { uint128_t x15 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x15 * (((uint128_t)x12 * x11) + ((uint128_t)x11 * x12))));
- { uint128_t x16 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x15 * (((uint128_t)x10 * x11) + (((uint128_t)x12 * x12) + ((uint128_t)x11 * x10)))));
- { uint128_t x17 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x15 * (((uint128_t)x8 * x11) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + ((uint128_t)x11 * x8))))));
- { ℤ x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) +ℤ (0x15 *ℤ (((uint128_t)x6 * x11) + (((uint128_t)x8 * x12) + (((uint128_t)x10 * x10) + (((uint128_t)x12 * x8) + ((uint128_t)x11 * x6)))))));
- { ℤ x19 = (((uint128_t)x2 * x2) +ℤ (0x15 *ℤ (((uint128_t)x4 * x11) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + ((uint128_t)x11 * x4))))))));
- { uint128_t x20 = (x19 >> 0x3b);
- { uint64_t x21 = (x19 & 0x7ffffffffffffff);
- { ℤ x22 = (x20 +ℤ x18);
- { uint128_t x23 = (x22 >> 0x3b);
- { uint64_t x24 = (x22 & 0x7ffffffffffffff);
- { uint128_t x25 = (x23 + x17);
- { uint128_t x26 = (x25 >> 0x3b);
- { uint64_t x27 = ((uint64_t)x25 & 0x7ffffffffffffff);
- { uint128_t x28 = (x26 + x16);
- { uint128_t x29 = (x28 >> 0x3b);
- { uint64_t x30 = ((uint64_t)x28 & 0x7ffffffffffffff);
- { uint128_t x31 = (x29 + x15);
- { uint128_t x32 = (x31 >> 0x3b);
- { uint64_t x33 = ((uint64_t)x31 & 0x7ffffffffffffff);
- { uint128_t x34 = (x32 + x14);
- { uint128_t x35 = (x34 >> 0x3b);
- { uint64_t x36 = ((uint64_t)x34 & 0x7ffffffffffffff);
- { uint128_t x37 = (x35 + x13);
- { uint128_t x38 = (x37 >> 0x3b);
- { uint64_t x39 = ((uint64_t)x37 & 0x7ffffffffffffff);
- { uint128_t x40 = (x21 + (0x15 * x38));
- { uint64_t x41 = (uint64_t) (x40 >> 0x3b);
- { uint64_t x42 = ((uint64_t)x40 & 0x7ffffffffffffff);
- { uint64_t x43 = (x41 + x24);
- { uint64_t x44 = (x43 >> 0x3b);
- { uint64_t x45 = (x43 & 0x7ffffffffffffff);
- out[0] = x42;
- out[1] = x45;
- out[2] = (x44 + x27);
- out[3] = x30;
- out[4] = x33;
- out[5] = x36;
- out[6] = x39;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e413m21_7limbs/fesquare.v b/src/Specific/solinas64_2e413m21_7limbs/fesquare.v
deleted file mode 100644
index 2fc57c04a..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e413m21_7limbs.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/solinas64_2e413m21_7limbs/fesquareDisplay.log b/src/Specific/solinas64_2e413m21_7limbs/fesquareDisplay.log
deleted file mode 100644
index a76b27178..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,40 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x13 = (((uint128_t)x2 * x11) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x11 * x2)))))));
- uint128_t x14 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x15 * ((uint128_t)x11 * x11)));
- uint128_t x15 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x15 * (((uint128_t)x12 * x11) + ((uint128_t)x11 * x12))));
- uint128_t x16 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x15 * (((uint128_t)x10 * x11) + (((uint128_t)x12 * x12) + ((uint128_t)x11 * x10)))));
- uint128_t x17 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x15 * (((uint128_t)x8 * x11) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + ((uint128_t)x11 * x8))))));
- ℤ x18 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) +ℤ (0x15 *ℤ (((uint128_t)x6 * x11) + (((uint128_t)x8 * x12) + (((uint128_t)x10 * x10) + (((uint128_t)x12 * x8) + ((uint128_t)x11 * x6)))))));
- ℤ x19 = (((uint128_t)x2 * x2) +ℤ (0x15 *ℤ (((uint128_t)x4 * x11) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + ((uint128_t)x11 * x4))))))));
- uint128_t x20 = (x19 >> 0x3b);
- uint64_t x21 = (x19 & 0x7ffffffffffffff);
- ℤ x22 = (x20 +ℤ x18);
- uint128_t x23 = (x22 >> 0x3b);
- uint64_t x24 = (x22 & 0x7ffffffffffffff);
- uint128_t x25 = (x23 + x17);
- uint128_t x26 = (x25 >> 0x3b);
- uint64_t x27 = ((uint64_t)x25 & 0x7ffffffffffffff);
- uint128_t x28 = (x26 + x16);
- uint128_t x29 = (x28 >> 0x3b);
- uint64_t x30 = ((uint64_t)x28 & 0x7ffffffffffffff);
- uint128_t x31 = (x29 + x15);
- uint128_t x32 = (x31 >> 0x3b);
- uint64_t x33 = ((uint64_t)x31 & 0x7ffffffffffffff);
- uint128_t x34 = (x32 + x14);
- uint128_t x35 = (x34 >> 0x3b);
- uint64_t x36 = ((uint64_t)x34 & 0x7ffffffffffffff);
- uint128_t x37 = (x35 + x13);
- uint128_t x38 = (x37 >> 0x3b);
- uint64_t x39 = ((uint64_t)x37 & 0x7ffffffffffffff);
- uint128_t x40 = (x21 + (0x15 * x38));
- uint64_t x41 = (uint64_t) (x40 >> 0x3b);
- uint64_t x42 = ((uint64_t)x40 & 0x7ffffffffffffff);
- uint64_t x43 = (x41 + x24);
- uint64_t x44 = (x43 >> 0x3b);
- uint64_t x45 = (x43 & 0x7ffffffffffffff);
- return (Return x39, Return x36, Return x33, Return x30, (x44 + x27), Return x45, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e413m21_7limbs/fesquareDisplay.v b/src/Specific/solinas64_2e413m21_7limbs/fesquareDisplay.v
deleted file mode 100644
index 1aa4a7219..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e413m21_7limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e413m21_7limbs/fesub.c b/src/Specific/solinas64_2e413m21_7limbs/fesub.c
deleted file mode 100644
index b548e713b..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/fesub.c
+++ /dev/null
@@ -1,24 +0,0 @@
-static void fesub(uint64_t out[7], const uint64_t in1[7], const uint64_t in2[7]) {
- { const uint64_t x14 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x26 = in2[6];
- { const uint64_t x27 = in2[5];
- { const uint64_t x25 = in2[4];
- { const uint64_t x23 = in2[3];
- { const uint64_t x21 = in2[2];
- { const uint64_t x19 = in2[1];
- { const uint64_t x17 = in2[0];
- out[0] = ((0xfffffffffffffd6 + x5) - x17);
- out[1] = ((0xffffffffffffffe + x7) - x19);
- out[2] = ((0xffffffffffffffe + x9) - x21);
- out[3] = ((0xffffffffffffffe + x11) - x23);
- out[4] = ((0xffffffffffffffe + x13) - x25);
- out[5] = ((0xffffffffffffffe + x15) - x27);
- out[6] = ((0xffffffffffffffe + x14) - x26);
- }}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e413m21_7limbs/fesub.v b/src/Specific/solinas64_2e413m21_7limbs/fesub.v
deleted file mode 100644
index a7555e264..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e413m21_7limbs.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/solinas64_2e413m21_7limbs/fesubDisplay.log b/src/Specific/solinas64_2e413m21_7limbs/fesubDisplay.log
deleted file mode 100644
index ebf049655..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x14, x15, x13, x11, x9, x7, x5, (x26, x27, x25, x23, x21, x19, x17))%core,
- (((0xffffffffffffffe + x14) - x26), ((0xffffffffffffffe + x15) - x27), ((0xffffffffffffffe + x13) - x25), ((0xffffffffffffffe + x11) - x23), ((0xffffffffffffffe + x9) - x21), ((0xffffffffffffffe + x7) - x19), ((0xfffffffffffffd6 + x5) - x17)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e413m21_7limbs/fesubDisplay.v b/src/Specific/solinas64_2e413m21_7limbs/fesubDisplay.v
deleted file mode 100644
index 7806b4d66..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e413m21_7limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e413m21_7limbs/freeze.c b/src/Specific/solinas64_2e413m21_7limbs/freeze.c
deleted file mode 100644
index 8d63463bc..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/freeze.c
+++ /dev/null
@@ -1,39 +0,0 @@
-static void freeze(uint64_t out[7], const uint64_t in1[7]) {
- { const uint64_t x11 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffffffeb);
- { uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0x7ffffffffffffff);
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0x7ffffffffffffff);
- { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0x7ffffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0x7ffffffffffffff);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0x7ffffffffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0x7ffffffffffffff);
- { uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- { uint64_t x35 = (x34 & 0x7ffffffffffffeb);
- { uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- { uint64_t x39 = (x34 & 0x7ffffffffffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- { uint64_t x43 = (x34 & 0x7ffffffffffffff);
- { uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- { uint64_t x47 = (x34 & 0x7ffffffffffffff);
- { uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- { uint64_t x51 = (x34 & 0x7ffffffffffffff);
- { uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- { uint64_t x55 = (x34 & 0x7ffffffffffffff);
- { uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- { uint64_t x59 = (x34 & 0x7ffffffffffffff);
- { uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- out[0] = x37;
- out[1] = x41;
- out[2] = x45;
- out[3] = x49;
- out[4] = x53;
- out[5] = x57;
- out[6] = x61;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e413m21_7limbs/freeze.v b/src/Specific/solinas64_2e413m21_7limbs/freeze.v
deleted file mode 100644
index 0720ad367..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e413m21_7limbs.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/solinas64_2e413m21_7limbs/freezeDisplay.log b/src/Specific/solinas64_2e413m21_7limbs/freezeDisplay.log
deleted file mode 100644
index e69dc348c..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/freezeDisplay.log
+++ /dev/null
@@ -1,29 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x11, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x14, uint8_t x15 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffffffeb);
- uint64_t x17, uint8_t x18 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x15, Return x4, 0x7ffffffffffffff);
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x18, Return x6, 0x7ffffffffffffff);
- uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x8, 0x7ffffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x10, 0x7ffffffffffffff);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x12, 0x7ffffffffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x11, 0x7ffffffffffffff);
- uint64_t x34 = cmovznz64(x33, 0x0, 0xffffffffffffffffL);
- uint64_t x35 = (x34 & 0x7ffffffffffffeb);
- uint64_t x37, uint8_t x38 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x14, Return x35);
- uint64_t x39 = (x34 & 0x7ffffffffffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x17, Return x39);
- uint64_t x43 = (x34 & 0x7ffffffffffffff);
- uint64_t x45, uint8_t x46 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x20, Return x43);
- uint64_t x47 = (x34 & 0x7ffffffffffffff);
- uint64_t x49, uint8_t x50 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x46, Return x23, Return x47);
- uint64_t x51 = (x34 & 0x7ffffffffffffff);
- uint64_t x53, uint8_t x54 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x26, Return x51);
- uint64_t x55 = (x34 & 0x7ffffffffffffff);
- uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x54, Return x29, Return x55);
- uint64_t x59 = (x34 & 0x7ffffffffffffff);
- uint64_t x61, uint8_t _ = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x32, Return x59);
- (Return x61, Return x57, Return x53, Return x49, Return x45, Return x41, Return x37))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e413m21_7limbs/freezeDisplay.v b/src/Specific/solinas64_2e413m21_7limbs/freezeDisplay.v
deleted file mode 100644
index 7d37a865e..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e413m21_7limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e413m21_7limbs/py_interpreter.sh b/src/Specific/solinas64_2e413m21_7limbs/py_interpreter.sh
deleted file mode 100755
index 01e4933a1..000000000
--- a/src/Specific/solinas64_2e413m21_7limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**413 - 21' -Dmodulus_bytes='59' -Da24='121665'
diff --git a/src/Specific/solinas64_2e413m21_8limbs/CurveParameters.v b/src/Specific/solinas64_2e413m21_8limbs/CurveParameters.v
deleted file mode 100644
index ecbfee66f..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^413 - 21
-Base: 51.625
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 51 + 5/8;
- bitwidth := 64;
- s := 2^413;
- c := [(1, 21)];
- carry_chains := Some [seq 0 (pred 8); [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/solinas64_2e413m21_8limbs/Synthesis.v b/src/Specific/solinas64_2e413m21_8limbs/Synthesis.v
deleted file mode 100644
index 313c87563..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e413m21_8limbs.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/solinas64_2e413m21_8limbs/compiler.sh b/src/Specific/solinas64_2e413m21_8limbs/compiler.sh
deleted file mode 100755
index 79153f07e..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,52,51,52,52,51,52,51}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<413) - 21' "$@"
diff --git a/src/Specific/solinas64_2e413m21_8limbs/compilerxx.sh b/src/Specific/solinas64_2e413m21_8limbs/compilerxx.sh
deleted file mode 100755
index 75368da5c..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,52,51,52,52,51,52,51}' -Dmodulus_array='{0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<413) - 21' "$@"
diff --git a/src/Specific/solinas64_2e413m21_8limbs/feadd.c b/src/Specific/solinas64_2e413m21_8limbs/feadd.c
deleted file mode 100644
index 4def6ee9c..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e413m21_8limbs/feadd.v b/src/Specific/solinas64_2e413m21_8limbs/feadd.v
deleted file mode 100644
index dc239411e..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e413m21_8limbs.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/solinas64_2e413m21_8limbs/feaddDisplay.log b/src/Specific/solinas64_2e413m21_8limbs/feaddDisplay.log
deleted file mode 100644
index 023fc8a31..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e413m21_8limbs/feaddDisplay.v b/src/Specific/solinas64_2e413m21_8limbs/feaddDisplay.v
deleted file mode 100644
index 96294562a..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e413m21_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e413m21_8limbs/fecarry.v b/src/Specific/solinas64_2e413m21_8limbs/fecarry.v
deleted file mode 100644
index 5e653ad8d..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e413m21_8limbs.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/solinas64_2e413m21_8limbs/fecarryDisplay.v b/src/Specific/solinas64_2e413m21_8limbs/fecarryDisplay.v
deleted file mode 100644
index 228abdeea..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e413m21_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e413m21_8limbs/femul.c b/src/Specific/solinas64_2e413m21_8limbs/femul.c
deleted file mode 100644
index 92f7544c8..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint128_t x32 = (((uint128_t)x5 * x30) + (((uint128_t)x7 * x31) + ((0x2 * ((uint128_t)x9 * x29)) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + ((0x2 * ((uint128_t)x15 * x23)) + (((uint128_t)x17 * x21) + ((uint128_t)x16 * x19))))))));
- { uint128_t x33 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + ((0x2 * ((uint128_t)x9 * x27)) + (((uint128_t)x11 * x25) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + ((uint128_t)x17 * x19))))))) + (0x15 * (0x2 * ((uint128_t)x16 * x30))));
- { uint128_t x34 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x15 * x19)))))) + (0x15 * (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))));
- { uint128_t x35 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((0x2 * ((uint128_t)x9 * x23)) + (((uint128_t)x11 * x21) + ((uint128_t)x13 * x19))))) + (0x15 * ((0x2 * ((uint128_t)x15 * x30)) + (((uint128_t)x17 * x31) + (0x2 * ((uint128_t)x16 * x29))))));
- { uint128_t x36 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((0x2 * ((uint128_t)x9 * x21)) + ((uint128_t)x11 * x19)))) + (0x15 * ((0x2 * ((uint128_t)x13 * x30)) + ((0x2 * ((uint128_t)x15 * x31)) + ((0x2 * ((uint128_t)x17 * x29)) + (0x2 * ((uint128_t)x16 * x27)))))));
- { uint128_t x37 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))) + (0x15 * (((uint128_t)x11 * x30) + (((uint128_t)x13 * x31) + ((0x2 * ((uint128_t)x15 * x29)) + (((uint128_t)x17 * x27) + ((uint128_t)x16 * x25)))))));
- { uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x15 * ((0x2 * ((uint128_t)x9 * x30)) + (((uint128_t)x11 * x31) + ((0x2 * ((uint128_t)x13 * x29)) + ((0x2 * ((uint128_t)x15 * x27)) + (((uint128_t)x17 * x25) + (0x2 * ((uint128_t)x16 * x23)))))))));
- { uint128_t x39 = (((uint128_t)x5 * x19) + (0x15 * ((0x2 * ((uint128_t)x7 * x30)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((0x2 * ((uint128_t)x17 * x23)) + (0x2 * ((uint128_t)x16 * x21))))))))));
- { uint64_t x40 = (uint64_t) (x39 >> 0x34);
- { uint64_t x41 = ((uint64_t)x39 & 0xfffffffffffff);
- { uint128_t x42 = (x40 + x38);
- { uint64_t x43 = (uint64_t) (x42 >> 0x34);
- { uint64_t x44 = ((uint64_t)x42 & 0xfffffffffffff);
- { uint128_t x45 = (x43 + x37);
- { uint64_t x46 = (uint64_t) (x45 >> 0x33);
- { uint64_t x47 = ((uint64_t)x45 & 0x7ffffffffffff);
- { uint128_t x48 = (x46 + x36);
- { uint64_t x49 = (uint64_t) (x48 >> 0x34);
- { uint64_t x50 = ((uint64_t)x48 & 0xfffffffffffff);
- { uint128_t x51 = (x49 + x35);
- { uint64_t x52 = (uint64_t) (x51 >> 0x34);
- { uint64_t x53 = ((uint64_t)x51 & 0xfffffffffffff);
- { uint128_t x54 = (x52 + x34);
- { uint64_t x55 = (uint64_t) (x54 >> 0x33);
- { uint64_t x56 = ((uint64_t)x54 & 0x7ffffffffffff);
- { uint128_t x57 = (x55 + x33);
- { uint64_t x58 = (uint64_t) (x57 >> 0x34);
- { uint64_t x59 = ((uint64_t)x57 & 0xfffffffffffff);
- { uint128_t x60 = (x58 + x32);
- { uint64_t x61 = (uint64_t) (x60 >> 0x33);
- { uint64_t x62 = ((uint64_t)x60 & 0x7ffffffffffff);
- { uint64_t x63 = (x41 + (0x15 * x61));
- { uint64_t x64 = (x63 >> 0x34);
- { uint64_t x65 = (x63 & 0xfffffffffffff);
- { uint64_t x66 = (x64 + x44);
- { uint64_t x67 = (x66 >> 0x34);
- { uint64_t x68 = (x66 & 0xfffffffffffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e413m21_8limbs/femul.v b/src/Specific/solinas64_2e413m21_8limbs/femul.v
deleted file mode 100644
index 3aae424d9..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e413m21_8limbs.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/solinas64_2e413m21_8limbs/femulDisplay.log b/src/Specific/solinas64_2e413m21_8limbs/femulDisplay.log
deleted file mode 100644
index 532df92b0..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint128_t x32 = (((uint128_t)x5 * x30) + (((uint128_t)x7 * x31) + ((0x2 * ((uint128_t)x9 * x29)) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + ((0x2 * ((uint128_t)x15 * x23)) + (((uint128_t)x17 * x21) + ((uint128_t)x16 * x19))))))));
- uint128_t x33 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + ((0x2 * ((uint128_t)x9 * x27)) + (((uint128_t)x11 * x25) + ((0x2 * ((uint128_t)x13 * x23)) + ((0x2 * ((uint128_t)x15 * x21)) + ((uint128_t)x17 * x19))))))) + (0x15 * (0x2 * ((uint128_t)x16 * x30))));
- uint128_t x34 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x15 * x19)))))) + (0x15 * (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))));
- uint128_t x35 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((0x2 * ((uint128_t)x9 * x23)) + (((uint128_t)x11 * x21) + ((uint128_t)x13 * x19))))) + (0x15 * ((0x2 * ((uint128_t)x15 * x30)) + (((uint128_t)x17 * x31) + (0x2 * ((uint128_t)x16 * x29))))));
- uint128_t x36 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((0x2 * ((uint128_t)x9 * x21)) + ((uint128_t)x11 * x19)))) + (0x15 * ((0x2 * ((uint128_t)x13 * x30)) + ((0x2 * ((uint128_t)x15 * x31)) + ((0x2 * ((uint128_t)x17 * x29)) + (0x2 * ((uint128_t)x16 * x27)))))));
- uint128_t x37 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))) + (0x15 * (((uint128_t)x11 * x30) + (((uint128_t)x13 * x31) + ((0x2 * ((uint128_t)x15 * x29)) + (((uint128_t)x17 * x27) + ((uint128_t)x16 * x25)))))));
- uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x15 * ((0x2 * ((uint128_t)x9 * x30)) + (((uint128_t)x11 * x31) + ((0x2 * ((uint128_t)x13 * x29)) + ((0x2 * ((uint128_t)x15 * x27)) + (((uint128_t)x17 * x25) + (0x2 * ((uint128_t)x16 * x23)))))))));
- uint128_t x39 = (((uint128_t)x5 * x19) + (0x15 * ((0x2 * ((uint128_t)x7 * x30)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((0x2 * ((uint128_t)x17 * x23)) + (0x2 * ((uint128_t)x16 * x21))))))))));
- uint64_t x40 = (uint64_t) (x39 >> 0x34);
- uint64_t x41 = ((uint64_t)x39 & 0xfffffffffffff);
- uint128_t x42 = (x40 + x38);
- uint64_t x43 = (uint64_t) (x42 >> 0x34);
- uint64_t x44 = ((uint64_t)x42 & 0xfffffffffffff);
- uint128_t x45 = (x43 + x37);
- uint64_t x46 = (uint64_t) (x45 >> 0x33);
- uint64_t x47 = ((uint64_t)x45 & 0x7ffffffffffff);
- uint128_t x48 = (x46 + x36);
- uint64_t x49 = (uint64_t) (x48 >> 0x34);
- uint64_t x50 = ((uint64_t)x48 & 0xfffffffffffff);
- uint128_t x51 = (x49 + x35);
- uint64_t x52 = (uint64_t) (x51 >> 0x34);
- uint64_t x53 = ((uint64_t)x51 & 0xfffffffffffff);
- uint128_t x54 = (x52 + x34);
- uint64_t x55 = (uint64_t) (x54 >> 0x33);
- uint64_t x56 = ((uint64_t)x54 & 0x7ffffffffffff);
- uint128_t x57 = (x55 + x33);
- uint64_t x58 = (uint64_t) (x57 >> 0x34);
- uint64_t x59 = ((uint64_t)x57 & 0xfffffffffffff);
- uint128_t x60 = (x58 + x32);
- uint64_t x61 = (uint64_t) (x60 >> 0x33);
- uint64_t x62 = ((uint64_t)x60 & 0x7ffffffffffff);
- uint64_t x63 = (x41 + (0x15 * x61));
- uint64_t x64 = (x63 >> 0x34);
- uint64_t x65 = (x63 & 0xfffffffffffff);
- uint64_t x66 = (x64 + x44);
- uint64_t x67 = (x66 >> 0x34);
- uint64_t x68 = (x66 & 0xfffffffffffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e413m21_8limbs/femulDisplay.v b/src/Specific/solinas64_2e413m21_8limbs/femulDisplay.v
deleted file mode 100644
index 973f2c3a1..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e413m21_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e413m21_8limbs/fesquare.c b/src/Specific/solinas64_2e413m21_8limbs/fesquare.c
deleted file mode 100644
index 9a5d422de..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x15 = (((uint128_t)x2 * x13) + (((uint128_t)x4 * x14) + ((0x2 * ((uint128_t)x6 * x12)) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((0x2 * ((uint128_t)x12 * x6)) + (((uint128_t)x14 * x4) + ((uint128_t)x13 * x2))))))));
- { uint128_t x16 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x15 * (0x2 * ((uint128_t)x13 * x13))));
- { uint128_t x17 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x15 * (((uint128_t)x14 * x13) + ((uint128_t)x13 * x14))));
- { uint128_t x18 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + ((0x2 * ((uint128_t)x6 * x6)) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x15 * ((0x2 * ((uint128_t)x12 * x13)) + (((uint128_t)x14 * x14) + (0x2 * ((uint128_t)x13 * x12))))));
- { uint128_t x19 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x15 * ((0x2 * ((uint128_t)x10 * x13)) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + (0x2 * ((uint128_t)x13 * x10)))))));
- { uint128_t x20 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x15 * (((uint128_t)x8 * x13) + (((uint128_t)x10 * x14) + ((0x2 * ((uint128_t)x12 * x12)) + (((uint128_t)x14 * x10) + ((uint128_t)x13 * x8)))))));
- { uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x15 * ((0x2 * ((uint128_t)x6 * x13)) + (((uint128_t)x8 * x14) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + (((uint128_t)x14 * x8) + (0x2 * ((uint128_t)x13 * x6)))))))));
- { uint128_t x22 = (((uint128_t)x2 * x2) + (0x15 * ((0x2 * ((uint128_t)x4 * x13)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + (0x2 * ((uint128_t)x13 * x4))))))))));
- { uint64_t x23 = (uint64_t) (x22 >> 0x34);
- { uint64_t x24 = ((uint64_t)x22 & 0xfffffffffffff);
- { uint128_t x25 = (x23 + x21);
- { uint64_t x26 = (uint64_t) (x25 >> 0x34);
- { uint64_t x27 = ((uint64_t)x25 & 0xfffffffffffff);
- { uint128_t x28 = (x26 + x20);
- { uint64_t x29 = (uint64_t) (x28 >> 0x33);
- { uint64_t x30 = ((uint64_t)x28 & 0x7ffffffffffff);
- { uint128_t x31 = (x29 + x19);
- { uint64_t x32 = (uint64_t) (x31 >> 0x34);
- { uint64_t x33 = ((uint64_t)x31 & 0xfffffffffffff);
- { uint128_t x34 = (x32 + x18);
- { uint64_t x35 = (uint64_t) (x34 >> 0x34);
- { uint64_t x36 = ((uint64_t)x34 & 0xfffffffffffff);
- { uint128_t x37 = (x35 + x17);
- { uint64_t x38 = (uint64_t) (x37 >> 0x33);
- { uint64_t x39 = ((uint64_t)x37 & 0x7ffffffffffff);
- { uint128_t x40 = (x38 + x16);
- { uint64_t x41 = (uint64_t) (x40 >> 0x34);
- { uint64_t x42 = ((uint64_t)x40 & 0xfffffffffffff);
- { uint128_t x43 = (x41 + x15);
- { uint64_t x44 = (uint64_t) (x43 >> 0x33);
- { uint64_t x45 = ((uint64_t)x43 & 0x7ffffffffffff);
- { uint64_t x46 = (x24 + (0x15 * x44));
- { uint64_t x47 = (x46 >> 0x34);
- { uint64_t x48 = (x46 & 0xfffffffffffff);
- { uint64_t x49 = (x47 + x27);
- { uint64_t x50 = (x49 >> 0x34);
- { uint64_t x51 = (x49 & 0xfffffffffffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e413m21_8limbs/fesquare.v b/src/Specific/solinas64_2e413m21_8limbs/fesquare.v
deleted file mode 100644
index 0522eb251..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e413m21_8limbs.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/solinas64_2e413m21_8limbs/fesquareDisplay.log b/src/Specific/solinas64_2e413m21_8limbs/fesquareDisplay.log
deleted file mode 100644
index e4769201f..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x15 = (((uint128_t)x2 * x13) + (((uint128_t)x4 * x14) + ((0x2 * ((uint128_t)x6 * x12)) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((0x2 * ((uint128_t)x12 * x6)) + (((uint128_t)x14 * x4) + ((uint128_t)x13 * x2))))))));
- uint128_t x16 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x15 * (0x2 * ((uint128_t)x13 * x13))));
- uint128_t x17 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x15 * (((uint128_t)x14 * x13) + ((uint128_t)x13 * x14))));
- uint128_t x18 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + ((0x2 * ((uint128_t)x6 * x6)) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x15 * ((0x2 * ((uint128_t)x12 * x13)) + (((uint128_t)x14 * x14) + (0x2 * ((uint128_t)x13 * x12))))));
- uint128_t x19 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x15 * ((0x2 * ((uint128_t)x10 * x13)) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + (0x2 * ((uint128_t)x13 * x10)))))));
- uint128_t x20 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x15 * (((uint128_t)x8 * x13) + (((uint128_t)x10 * x14) + ((0x2 * ((uint128_t)x12 * x12)) + (((uint128_t)x14 * x10) + ((uint128_t)x13 * x8)))))));
- uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x15 * ((0x2 * ((uint128_t)x6 * x13)) + (((uint128_t)x8 * x14) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + (((uint128_t)x14 * x8) + (0x2 * ((uint128_t)x13 * x6)))))))));
- uint128_t x22 = (((uint128_t)x2 * x2) + (0x15 * ((0x2 * ((uint128_t)x4 * x13)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + (0x2 * ((uint128_t)x13 * x4))))))))));
- uint64_t x23 = (uint64_t) (x22 >> 0x34);
- uint64_t x24 = ((uint64_t)x22 & 0xfffffffffffff);
- uint128_t x25 = (x23 + x21);
- uint64_t x26 = (uint64_t) (x25 >> 0x34);
- uint64_t x27 = ((uint64_t)x25 & 0xfffffffffffff);
- uint128_t x28 = (x26 + x20);
- uint64_t x29 = (uint64_t) (x28 >> 0x33);
- uint64_t x30 = ((uint64_t)x28 & 0x7ffffffffffff);
- uint128_t x31 = (x29 + x19);
- uint64_t x32 = (uint64_t) (x31 >> 0x34);
- uint64_t x33 = ((uint64_t)x31 & 0xfffffffffffff);
- uint128_t x34 = (x32 + x18);
- uint64_t x35 = (uint64_t) (x34 >> 0x34);
- uint64_t x36 = ((uint64_t)x34 & 0xfffffffffffff);
- uint128_t x37 = (x35 + x17);
- uint64_t x38 = (uint64_t) (x37 >> 0x33);
- uint64_t x39 = ((uint64_t)x37 & 0x7ffffffffffff);
- uint128_t x40 = (x38 + x16);
- uint64_t x41 = (uint64_t) (x40 >> 0x34);
- uint64_t x42 = ((uint64_t)x40 & 0xfffffffffffff);
- uint128_t x43 = (x41 + x15);
- uint64_t x44 = (uint64_t) (x43 >> 0x33);
- uint64_t x45 = ((uint64_t)x43 & 0x7ffffffffffff);
- uint64_t x46 = (x24 + (0x15 * x44));
- uint64_t x47 = (x46 >> 0x34);
- uint64_t x48 = (x46 & 0xfffffffffffff);
- uint64_t x49 = (x47 + x27);
- uint64_t x50 = (x49 >> 0x34);
- uint64_t x51 = (x49 & 0xfffffffffffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e413m21_8limbs/fesquareDisplay.v b/src/Specific/solinas64_2e413m21_8limbs/fesquareDisplay.v
deleted file mode 100644
index f47630fa4..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e413m21_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e413m21_8limbs/fesub.c b/src/Specific/solinas64_2e413m21_8limbs/fesub.c
deleted file mode 100644
index f535095a3..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = ((0x1fffffffffffd6 + x5) - x19);
- out[1] = ((0x1ffffffffffffe + x7) - x21);
- out[2] = ((0xffffffffffffe + x9) - x23);
- out[3] = ((0x1ffffffffffffe + x11) - x25);
- out[4] = ((0x1ffffffffffffe + x13) - x27);
- out[5] = ((0xffffffffffffe + x15) - x29);
- out[6] = ((0x1ffffffffffffe + x17) - x31);
- out[7] = ((0xffffffffffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e413m21_8limbs/fesub.v b/src/Specific/solinas64_2e413m21_8limbs/fesub.v
deleted file mode 100644
index a29aa29d4..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e413m21_8limbs.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/solinas64_2e413m21_8limbs/fesubDisplay.log b/src/Specific/solinas64_2e413m21_8limbs/fesubDisplay.log
deleted file mode 100644
index cbc94a4e5..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0xffffffffffffe + x16) - x30), ((0x1ffffffffffffe + x17) - x31), ((0xffffffffffffe + x15) - x29), ((0x1ffffffffffffe + x13) - x27), ((0x1ffffffffffffe + x11) - x25), ((0xffffffffffffe + x9) - x23), ((0x1ffffffffffffe + x7) - x21), ((0x1fffffffffffd6 + x5) - x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e413m21_8limbs/fesubDisplay.v b/src/Specific/solinas64_2e413m21_8limbs/fesubDisplay.v
deleted file mode 100644
index 26993d578..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e413m21_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e413m21_8limbs/freeze.c b/src/Specific/solinas64_2e413m21_8limbs/freeze.c
deleted file mode 100644
index 7095734ee..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffffeb);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0xfffffffffffff);
- { uint64_t x22; uint8_t x23 = _subborrow_u51(x20, x6, 0x7ffffffffffff, &x22);
- { uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0xfffffffffffff);
- { uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0xfffffffffffff);
- { uint64_t x31; uint8_t x32 = _subborrow_u51(x29, x12, 0x7ffffffffffff, &x31);
- { uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0xfffffffffffff);
- { uint64_t x37; uint8_t x38 = _subborrow_u51(x35, x13, 0x7ffffffffffff, &x37);
- { uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- { uint64_t x40 = (x39 & 0xfffffffffffeb);
- { uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint64_t x44 = (x39 & 0xfffffffffffff);
- { uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint64_t x48 = (x39 & 0x7ffffffffffff);
- { uint64_t x50; uint8_t x51 = _addcarryx_u51(x47, x22, x48, &x50);
- { uint64_t x52 = (x39 & 0xfffffffffffff);
- { uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint64_t x56 = (x39 & 0xfffffffffffff);
- { uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint64_t x60 = (x39 & 0x7ffffffffffff);
- { uint64_t x62; uint8_t x63 = _addcarryx_u51(x59, x31, x60, &x62);
- { uint64_t x64 = (x39 & 0xfffffffffffff);
- { uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint64_t x68 = (x39 & 0x7ffffffffffff);
- { uint64_t x70; uint8_t _ = _addcarryx_u51(x67, x37, x68, &x70);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e413m21_8limbs/freeze.v b/src/Specific/solinas64_2e413m21_8limbs/freeze.v
deleted file mode 100644
index 286bd65cd..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e413m21_8limbs.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/solinas64_2e413m21_8limbs/freezeDisplay.log b/src/Specific/solinas64_2e413m21_8limbs/freezeDisplay.log
deleted file mode 100644
index 0eebf2f14..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffffeb);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0xfffffffffffff);
- uint64_t x22, uint8_t x23 = subborrow_u51(x20, x6, 0x7ffffffffffff);
- uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0xfffffffffffff);
- uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0xfffffffffffff);
- uint64_t x31, uint8_t x32 = subborrow_u51(x29, x12, 0x7ffffffffffff);
- uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0xfffffffffffff);
- uint64_t x37, uint8_t x38 = subborrow_u51(x35, x13, 0x7ffffffffffff);
- uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- uint64_t x40 = (x39 & 0xfffffffffffeb);
- uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint64_t x44 = (x39 & 0xfffffffffffff);
- uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint64_t x48 = (x39 & 0x7ffffffffffff);
- uint64_t x50, uint8_t x51 = addcarryx_u51(x47, x22, x48);
- uint64_t x52 = (x39 & 0xfffffffffffff);
- uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint64_t x56 = (x39 & 0xfffffffffffff);
- uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint64_t x60 = (x39 & 0x7ffffffffffff);
- uint64_t x62, uint8_t x63 = addcarryx_u51(x59, x31, x60);
- uint64_t x64 = (x39 & 0xfffffffffffff);
- uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint64_t x68 = (x39 & 0x7ffffffffffff);
- uint64_t x70, uint8_t _ = addcarryx_u51(x67, x37, x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e413m21_8limbs/freezeDisplay.v b/src/Specific/solinas64_2e413m21_8limbs/freezeDisplay.v
deleted file mode 100644
index 31da58108..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e413m21_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e413m21_8limbs/py_interpreter.sh b/src/Specific/solinas64_2e413m21_8limbs/py_interpreter.sh
deleted file mode 100755
index 7208e6f21..000000000
--- a/src/Specific/solinas64_2e413m21_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**413 - 21' -Dmodulus_bytes='51.625' -Da24='121665'
diff --git a/src/Specific/solinas64_2e414m17_8limbs/CurveParameters.v b/src/Specific/solinas64_2e414m17_8limbs/CurveParameters.v
deleted file mode 100644
index 079887992..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^414 - 17
-Base: 51.75
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 51 + 3/4;
- bitwidth := 64;
- s := 2^414;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 8); [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/solinas64_2e414m17_8limbs/Synthesis.v b/src/Specific/solinas64_2e414m17_8limbs/Synthesis.v
deleted file mode 100644
index 269b06586..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e414m17_8limbs.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/solinas64_2e414m17_8limbs/compiler.sh b/src/Specific/solinas64_2e414m17_8limbs/compiler.sh
deleted file mode 100755
index e74e12a87..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,52,52,51,52,52,52,51}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<414) - 17' "$@"
diff --git a/src/Specific/solinas64_2e414m17_8limbs/compilerxx.sh b/src/Specific/solinas64_2e414m17_8limbs/compilerxx.sh
deleted file mode 100755
index f5f0c2acc..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,52,52,51,52,52,52,51}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<414) - 17' "$@"
diff --git a/src/Specific/solinas64_2e414m17_8limbs/feadd.c b/src/Specific/solinas64_2e414m17_8limbs/feadd.c
deleted file mode 100644
index 4def6ee9c..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e414m17_8limbs/feadd.v b/src/Specific/solinas64_2e414m17_8limbs/feadd.v
deleted file mode 100644
index e97057889..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e414m17_8limbs.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/solinas64_2e414m17_8limbs/feaddDisplay.log b/src/Specific/solinas64_2e414m17_8limbs/feaddDisplay.log
deleted file mode 100644
index 023fc8a31..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e414m17_8limbs/feaddDisplay.v b/src/Specific/solinas64_2e414m17_8limbs/feaddDisplay.v
deleted file mode 100644
index 414bcde1c..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e414m17_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e414m17_8limbs/fecarry.v b/src/Specific/solinas64_2e414m17_8limbs/fecarry.v
deleted file mode 100644
index e25e569fc..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e414m17_8limbs.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/solinas64_2e414m17_8limbs/fecarryDisplay.v b/src/Specific/solinas64_2e414m17_8limbs/fecarryDisplay.v
deleted file mode 100644
index 44c2cc919..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e414m17_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e414m17_8limbs/femul.c b/src/Specific/solinas64_2e414m17_8limbs/femul.c
deleted file mode 100644
index c3b71ed6f..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint128_t x32 = (((uint128_t)x5 * x30) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + (((uint128_t)x17 * x21) + ((uint128_t)x16 * x19))))))));
- { uint128_t x33 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + ((0x2 * ((uint128_t)x11 * x25)) + (((uint128_t)x13 * x23) + (((uint128_t)x15 * x21) + ((uint128_t)x17 * x19))))))) + (0x11 * (0x2 * ((uint128_t)x16 * x30))));
- { uint128_t x34 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + ((0x2 * ((uint128_t)x9 * x25)) + ((0x2 * ((uint128_t)x11 * x23)) + (((uint128_t)x13 * x21) + ((uint128_t)x15 * x19)))))) + (0x11 * ((0x2 * ((uint128_t)x17 * x30)) + (0x2 * ((uint128_t)x16 * x31)))));
- { uint128_t x35 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + ((uint128_t)x13 * x19))))) + (0x11 * ((0x2 * ((uint128_t)x15 * x30)) + ((0x2 * ((uint128_t)x17 * x31)) + (0x2 * ((uint128_t)x16 * x29))))));
- { uint128_t x36 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (0x11 * (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27))))));
- { uint128_t x37 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))) + (0x11 * ((0x2 * ((uint128_t)x11 * x30)) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + (((uint128_t)x17 * x27) + (0x2 * ((uint128_t)x16 * x25))))))));
- { uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x11 * ((0x2 * ((uint128_t)x9 * x30)) + ((0x2 * ((uint128_t)x11 * x31)) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + ((0x2 * ((uint128_t)x17 * x25)) + (0x2 * ((uint128_t)x16 * x23)))))))));
- { uint128_t x39 = (((uint128_t)x5 * x19) + (0x11 * ((0x2 * ((uint128_t)x7 * x30)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + (((uint128_t)x13 * x27) + ((0x2 * ((uint128_t)x15 * x25)) + ((0x2 * ((uint128_t)x17 * x23)) + (0x2 * ((uint128_t)x16 * x21))))))))));
- { uint64_t x40 = (uint64_t) (x39 >> 0x34);
- { uint64_t x41 = ((uint64_t)x39 & 0xfffffffffffff);
- { uint128_t x42 = (x40 + x38);
- { uint64_t x43 = (uint64_t) (x42 >> 0x34);
- { uint64_t x44 = ((uint64_t)x42 & 0xfffffffffffff);
- { uint128_t x45 = (x43 + x37);
- { uint64_t x46 = (uint64_t) (x45 >> 0x34);
- { uint64_t x47 = ((uint64_t)x45 & 0xfffffffffffff);
- { uint128_t x48 = (x46 + x36);
- { uint64_t x49 = (uint64_t) (x48 >> 0x33);
- { uint64_t x50 = ((uint64_t)x48 & 0x7ffffffffffff);
- { uint128_t x51 = (x49 + x35);
- { uint64_t x52 = (uint64_t) (x51 >> 0x34);
- { uint64_t x53 = ((uint64_t)x51 & 0xfffffffffffff);
- { uint128_t x54 = (x52 + x34);
- { uint64_t x55 = (uint64_t) (x54 >> 0x34);
- { uint64_t x56 = ((uint64_t)x54 & 0xfffffffffffff);
- { uint128_t x57 = (x55 + x33);
- { uint64_t x58 = (uint64_t) (x57 >> 0x34);
- { uint64_t x59 = ((uint64_t)x57 & 0xfffffffffffff);
- { uint128_t x60 = (x58 + x32);
- { uint64_t x61 = (uint64_t) (x60 >> 0x33);
- { uint64_t x62 = ((uint64_t)x60 & 0x7ffffffffffff);
- { uint64_t x63 = (x41 + (0x11 * x61));
- { uint64_t x64 = (x63 >> 0x34);
- { uint64_t x65 = (x63 & 0xfffffffffffff);
- { uint64_t x66 = (x64 + x44);
- { uint64_t x67 = (x66 >> 0x34);
- { uint64_t x68 = (x66 & 0xfffffffffffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e414m17_8limbs/femul.v b/src/Specific/solinas64_2e414m17_8limbs/femul.v
deleted file mode 100644
index f89c1d239..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e414m17_8limbs.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/solinas64_2e414m17_8limbs/femulDisplay.log b/src/Specific/solinas64_2e414m17_8limbs/femulDisplay.log
deleted file mode 100644
index ad5406d65..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint128_t x32 = (((uint128_t)x5 * x30) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + (((uint128_t)x17 * x21) + ((uint128_t)x16 * x19))))))));
- uint128_t x33 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + ((0x2 * ((uint128_t)x11 * x25)) + (((uint128_t)x13 * x23) + (((uint128_t)x15 * x21) + ((uint128_t)x17 * x19))))))) + (0x11 * (0x2 * ((uint128_t)x16 * x30))));
- uint128_t x34 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + ((0x2 * ((uint128_t)x9 * x25)) + ((0x2 * ((uint128_t)x11 * x23)) + (((uint128_t)x13 * x21) + ((uint128_t)x15 * x19)))))) + (0x11 * ((0x2 * ((uint128_t)x17 * x30)) + (0x2 * ((uint128_t)x16 * x31)))));
- uint128_t x35 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + ((0x2 * ((uint128_t)x11 * x21)) + ((uint128_t)x13 * x19))))) + (0x11 * ((0x2 * ((uint128_t)x15 * x30)) + ((0x2 * ((uint128_t)x17 * x31)) + (0x2 * ((uint128_t)x16 * x29))))));
- uint128_t x36 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (0x11 * (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27))))));
- uint128_t x37 = ((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))) + (0x11 * ((0x2 * ((uint128_t)x11 * x30)) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + (((uint128_t)x17 * x27) + (0x2 * ((uint128_t)x16 * x25))))))));
- uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x11 * ((0x2 * ((uint128_t)x9 * x30)) + ((0x2 * ((uint128_t)x11 * x31)) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + ((0x2 * ((uint128_t)x17 * x25)) + (0x2 * ((uint128_t)x16 * x23)))))))));
- uint128_t x39 = (((uint128_t)x5 * x19) + (0x11 * ((0x2 * ((uint128_t)x7 * x30)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + (((uint128_t)x13 * x27) + ((0x2 * ((uint128_t)x15 * x25)) + ((0x2 * ((uint128_t)x17 * x23)) + (0x2 * ((uint128_t)x16 * x21))))))))));
- uint64_t x40 = (uint64_t) (x39 >> 0x34);
- uint64_t x41 = ((uint64_t)x39 & 0xfffffffffffff);
- uint128_t x42 = (x40 + x38);
- uint64_t x43 = (uint64_t) (x42 >> 0x34);
- uint64_t x44 = ((uint64_t)x42 & 0xfffffffffffff);
- uint128_t x45 = (x43 + x37);
- uint64_t x46 = (uint64_t) (x45 >> 0x34);
- uint64_t x47 = ((uint64_t)x45 & 0xfffffffffffff);
- uint128_t x48 = (x46 + x36);
- uint64_t x49 = (uint64_t) (x48 >> 0x33);
- uint64_t x50 = ((uint64_t)x48 & 0x7ffffffffffff);
- uint128_t x51 = (x49 + x35);
- uint64_t x52 = (uint64_t) (x51 >> 0x34);
- uint64_t x53 = ((uint64_t)x51 & 0xfffffffffffff);
- uint128_t x54 = (x52 + x34);
- uint64_t x55 = (uint64_t) (x54 >> 0x34);
- uint64_t x56 = ((uint64_t)x54 & 0xfffffffffffff);
- uint128_t x57 = (x55 + x33);
- uint64_t x58 = (uint64_t) (x57 >> 0x34);
- uint64_t x59 = ((uint64_t)x57 & 0xfffffffffffff);
- uint128_t x60 = (x58 + x32);
- uint64_t x61 = (uint64_t) (x60 >> 0x33);
- uint64_t x62 = ((uint64_t)x60 & 0x7ffffffffffff);
- uint64_t x63 = (x41 + (0x11 * x61));
- uint64_t x64 = (x63 >> 0x34);
- uint64_t x65 = (x63 & 0xfffffffffffff);
- uint64_t x66 = (x64 + x44);
- uint64_t x67 = (x66 >> 0x34);
- uint64_t x68 = (x66 & 0xfffffffffffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e414m17_8limbs/femulDisplay.v b/src/Specific/solinas64_2e414m17_8limbs/femulDisplay.v
deleted file mode 100644
index 82d267026..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e414m17_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e414m17_8limbs/fesquare.c b/src/Specific/solinas64_2e414m17_8limbs/fesquare.c
deleted file mode 100644
index 245837f25..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x15 = (((uint128_t)x2 * x13) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x13 * x2))))))));
- { uint128_t x16 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x11 * (0x2 * ((uint128_t)x13 * x13))));
- { uint128_t x17 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x11 * ((0x2 * ((uint128_t)x14 * x13)) + (0x2 * ((uint128_t)x13 * x14)))));
- { uint128_t x18 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint128_t)x12 * x13)) + ((0x2 * ((uint128_t)x14 * x14)) + (0x2 * ((uint128_t)x13 * x12))))));
- { uint128_t x19 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x11 * (((uint128_t)x10 * x13) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((uint128_t)x13 * x10))))));
- { uint128_t x20 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x11 * ((0x2 * ((uint128_t)x8 * x13)) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + (((uint128_t)x14 * x10) + (0x2 * ((uint128_t)x13 * x8))))))));
- { uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * ((0x2 * ((uint128_t)x6 * x13)) + ((0x2 * ((uint128_t)x8 * x14)) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + ((0x2 * ((uint128_t)x14 * x8)) + (0x2 * ((uint128_t)x13 * x6)))))))));
- { uint128_t x22 = (((uint128_t)x2 * x2) + (0x11 * ((0x2 * ((uint128_t)x4 * x13)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + (0x2 * ((uint128_t)x13 * x4))))))))));
- { uint64_t x23 = (uint64_t) (x22 >> 0x34);
- { uint64_t x24 = ((uint64_t)x22 & 0xfffffffffffff);
- { uint128_t x25 = (x23 + x21);
- { uint64_t x26 = (uint64_t) (x25 >> 0x34);
- { uint64_t x27 = ((uint64_t)x25 & 0xfffffffffffff);
- { uint128_t x28 = (x26 + x20);
- { uint64_t x29 = (uint64_t) (x28 >> 0x34);
- { uint64_t x30 = ((uint64_t)x28 & 0xfffffffffffff);
- { uint128_t x31 = (x29 + x19);
- { uint64_t x32 = (uint64_t) (x31 >> 0x33);
- { uint64_t x33 = ((uint64_t)x31 & 0x7ffffffffffff);
- { uint128_t x34 = (x32 + x18);
- { uint64_t x35 = (uint64_t) (x34 >> 0x34);
- { uint64_t x36 = ((uint64_t)x34 & 0xfffffffffffff);
- { uint128_t x37 = (x35 + x17);
- { uint64_t x38 = (uint64_t) (x37 >> 0x34);
- { uint64_t x39 = ((uint64_t)x37 & 0xfffffffffffff);
- { uint128_t x40 = (x38 + x16);
- { uint64_t x41 = (uint64_t) (x40 >> 0x34);
- { uint64_t x42 = ((uint64_t)x40 & 0xfffffffffffff);
- { uint128_t x43 = (x41 + x15);
- { uint64_t x44 = (uint64_t) (x43 >> 0x33);
- { uint64_t x45 = ((uint64_t)x43 & 0x7ffffffffffff);
- { uint64_t x46 = (x24 + (0x11 * x44));
- { uint64_t x47 = (x46 >> 0x34);
- { uint64_t x48 = (x46 & 0xfffffffffffff);
- { uint64_t x49 = (x47 + x27);
- { uint64_t x50 = (x49 >> 0x34);
- { uint64_t x51 = (x49 & 0xfffffffffffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e414m17_8limbs/fesquare.v b/src/Specific/solinas64_2e414m17_8limbs/fesquare.v
deleted file mode 100644
index d014136de..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e414m17_8limbs.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/solinas64_2e414m17_8limbs/fesquareDisplay.log b/src/Specific/solinas64_2e414m17_8limbs/fesquareDisplay.log
deleted file mode 100644
index 73fa110b7..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x15 = (((uint128_t)x2 * x13) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x13 * x2))))))));
- uint128_t x16 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x11 * (0x2 * ((uint128_t)x13 * x13))));
- uint128_t x17 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x11 * ((0x2 * ((uint128_t)x14 * x13)) + (0x2 * ((uint128_t)x13 * x14)))));
- uint128_t x18 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint128_t)x12 * x13)) + ((0x2 * ((uint128_t)x14 * x14)) + (0x2 * ((uint128_t)x13 * x12))))));
- uint128_t x19 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x11 * (((uint128_t)x10 * x13) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((uint128_t)x13 * x10))))));
- uint128_t x20 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x11 * ((0x2 * ((uint128_t)x8 * x13)) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + (((uint128_t)x14 * x10) + (0x2 * ((uint128_t)x13 * x8))))))));
- uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * ((0x2 * ((uint128_t)x6 * x13)) + ((0x2 * ((uint128_t)x8 * x14)) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + ((0x2 * ((uint128_t)x14 * x8)) + (0x2 * ((uint128_t)x13 * x6)))))))));
- uint128_t x22 = (((uint128_t)x2 * x2) + (0x11 * ((0x2 * ((uint128_t)x4 * x13)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + (0x2 * ((uint128_t)x13 * x4))))))))));
- uint64_t x23 = (uint64_t) (x22 >> 0x34);
- uint64_t x24 = ((uint64_t)x22 & 0xfffffffffffff);
- uint128_t x25 = (x23 + x21);
- uint64_t x26 = (uint64_t) (x25 >> 0x34);
- uint64_t x27 = ((uint64_t)x25 & 0xfffffffffffff);
- uint128_t x28 = (x26 + x20);
- uint64_t x29 = (uint64_t) (x28 >> 0x34);
- uint64_t x30 = ((uint64_t)x28 & 0xfffffffffffff);
- uint128_t x31 = (x29 + x19);
- uint64_t x32 = (uint64_t) (x31 >> 0x33);
- uint64_t x33 = ((uint64_t)x31 & 0x7ffffffffffff);
- uint128_t x34 = (x32 + x18);
- uint64_t x35 = (uint64_t) (x34 >> 0x34);
- uint64_t x36 = ((uint64_t)x34 & 0xfffffffffffff);
- uint128_t x37 = (x35 + x17);
- uint64_t x38 = (uint64_t) (x37 >> 0x34);
- uint64_t x39 = ((uint64_t)x37 & 0xfffffffffffff);
- uint128_t x40 = (x38 + x16);
- uint64_t x41 = (uint64_t) (x40 >> 0x34);
- uint64_t x42 = ((uint64_t)x40 & 0xfffffffffffff);
- uint128_t x43 = (x41 + x15);
- uint64_t x44 = (uint64_t) (x43 >> 0x33);
- uint64_t x45 = ((uint64_t)x43 & 0x7ffffffffffff);
- uint64_t x46 = (x24 + (0x11 * x44));
- uint64_t x47 = (x46 >> 0x34);
- uint64_t x48 = (x46 & 0xfffffffffffff);
- uint64_t x49 = (x47 + x27);
- uint64_t x50 = (x49 >> 0x34);
- uint64_t x51 = (x49 & 0xfffffffffffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e414m17_8limbs/fesquareDisplay.v b/src/Specific/solinas64_2e414m17_8limbs/fesquareDisplay.v
deleted file mode 100644
index f671b0ac2..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e414m17_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e414m17_8limbs/fesub.c b/src/Specific/solinas64_2e414m17_8limbs/fesub.c
deleted file mode 100644
index df95f0373..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = ((0x1fffffffffffde + x5) - x19);
- out[1] = ((0x1ffffffffffffe + x7) - x21);
- out[2] = ((0x1ffffffffffffe + x9) - x23);
- out[3] = ((0xffffffffffffe + x11) - x25);
- out[4] = ((0x1ffffffffffffe + x13) - x27);
- out[5] = ((0x1ffffffffffffe + x15) - x29);
- out[6] = ((0x1ffffffffffffe + x17) - x31);
- out[7] = ((0xffffffffffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e414m17_8limbs/fesub.v b/src/Specific/solinas64_2e414m17_8limbs/fesub.v
deleted file mode 100644
index 584e148bf..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e414m17_8limbs.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/solinas64_2e414m17_8limbs/fesubDisplay.log b/src/Specific/solinas64_2e414m17_8limbs/fesubDisplay.log
deleted file mode 100644
index 3dc4cf59d..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0xffffffffffffe + x16) - x30), ((0x1ffffffffffffe + x17) - x31), ((0x1ffffffffffffe + x15) - x29), ((0x1ffffffffffffe + x13) - x27), ((0xffffffffffffe + x11) - x25), ((0x1ffffffffffffe + x9) - x23), ((0x1ffffffffffffe + x7) - x21), ((0x1fffffffffffde + x5) - x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e414m17_8limbs/fesubDisplay.v b/src/Specific/solinas64_2e414m17_8limbs/fesubDisplay.v
deleted file mode 100644
index 975673e68..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e414m17_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e414m17_8limbs/freeze.c b/src/Specific/solinas64_2e414m17_8limbs/freeze.c
deleted file mode 100644
index addec9f33..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffffef);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0xfffffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xfffffffffffff);
- { uint64_t x25; uint8_t x26 = _subborrow_u51(x23, x8, 0x7ffffffffffff, &x25);
- { uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0xfffffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xfffffffffffff);
- { uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0xfffffffffffff);
- { uint64_t x37; uint8_t x38 = _subborrow_u51(x35, x13, 0x7ffffffffffff, &x37);
- { uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- { uint64_t x40 = (x39 & 0xfffffffffffef);
- { uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint64_t x44 = (x39 & 0xfffffffffffff);
- { uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint64_t x48 = (x39 & 0xfffffffffffff);
- { uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint64_t x52 = (x39 & 0x7ffffffffffff);
- { uint64_t x54; uint8_t x55 = _addcarryx_u51(x51, x25, x52, &x54);
- { uint64_t x56 = (x39 & 0xfffffffffffff);
- { uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint64_t x60 = (x39 & 0xfffffffffffff);
- { uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint64_t x64 = (x39 & 0xfffffffffffff);
- { uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint64_t x68 = (x39 & 0x7ffffffffffff);
- { uint64_t x70; uint8_t _ = _addcarryx_u51(x67, x37, x68, &x70);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e414m17_8limbs/freeze.v b/src/Specific/solinas64_2e414m17_8limbs/freeze.v
deleted file mode 100644
index c8429350e..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e414m17_8limbs.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/solinas64_2e414m17_8limbs/freezeDisplay.log b/src/Specific/solinas64_2e414m17_8limbs/freezeDisplay.log
deleted file mode 100644
index 4f54f5473..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffffef);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0xfffffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xfffffffffffff);
- uint64_t x25, uint8_t x26 = subborrow_u51(x23, x8, 0x7ffffffffffff);
- uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0xfffffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xfffffffffffff);
- uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0xfffffffffffff);
- uint64_t x37, uint8_t x38 = subborrow_u51(x35, x13, 0x7ffffffffffff);
- uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- uint64_t x40 = (x39 & 0xfffffffffffef);
- uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint64_t x44 = (x39 & 0xfffffffffffff);
- uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint64_t x48 = (x39 & 0xfffffffffffff);
- uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint64_t x52 = (x39 & 0x7ffffffffffff);
- uint64_t x54, uint8_t x55 = addcarryx_u51(x51, x25, x52);
- uint64_t x56 = (x39 & 0xfffffffffffff);
- uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint64_t x60 = (x39 & 0xfffffffffffff);
- uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint64_t x64 = (x39 & 0xfffffffffffff);
- uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint64_t x68 = (x39 & 0x7ffffffffffff);
- uint64_t x70, uint8_t _ = addcarryx_u51(x67, x37, x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e414m17_8limbs/freezeDisplay.v b/src/Specific/solinas64_2e414m17_8limbs/freezeDisplay.v
deleted file mode 100644
index 55b0dd379..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e414m17_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e414m17_8limbs/py_interpreter.sh b/src/Specific/solinas64_2e414m17_8limbs/py_interpreter.sh
deleted file mode 100755
index 8533481fd..000000000
--- a/src/Specific/solinas64_2e414m17_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**414 - 17' -Dmodulus_bytes='51.75' -Da24='121665'
diff --git a/src/Specific/solinas64_2e414m17_9limbs/CurveParameters.v b/src/Specific/solinas64_2e414m17_9limbs/CurveParameters.v
deleted file mode 100644
index 0567d0263..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^414 - 17
-Base: 46
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 46;
- bitwidth := 64;
- s := 2^414;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 9); [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/solinas64_2e414m17_9limbs/Synthesis.v b/src/Specific/solinas64_2e414m17_9limbs/Synthesis.v
deleted file mode 100644
index 6c1790a28..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e414m17_9limbs.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/solinas64_2e414m17_9limbs/compiler.sh b/src/Specific/solinas64_2e414m17_9limbs/compiler.sh
deleted file mode 100755
index 0dbbbcb2d..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{46,46,46,46,46,46,46,46,46}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<414) - 17' "$@"
diff --git a/src/Specific/solinas64_2e414m17_9limbs/compilerxx.sh b/src/Specific/solinas64_2e414m17_9limbs/compilerxx.sh
deleted file mode 100755
index 77ca2664c..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{46,46,46,46,46,46,46,46,46}' -Dmodulus_array='{0x3f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<414) - 17' "$@"
diff --git a/src/Specific/solinas64_2e414m17_9limbs/feadd.c b/src/Specific/solinas64_2e414m17_9limbs/feadd.c
deleted file mode 100644
index 98ab4434c..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e414m17_9limbs/feadd.v b/src/Specific/solinas64_2e414m17_9limbs/feadd.v
deleted file mode 100644
index 7b234fbe0..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e414m17_9limbs.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/solinas64_2e414m17_9limbs/feaddDisplay.log b/src/Specific/solinas64_2e414m17_9limbs/feaddDisplay.log
deleted file mode 100644
index 3b92b1c5c..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e414m17_9limbs/feaddDisplay.v b/src/Specific/solinas64_2e414m17_9limbs/feaddDisplay.v
deleted file mode 100644
index d70976340..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e414m17_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e414m17_9limbs/fecarry.v b/src/Specific/solinas64_2e414m17_9limbs/fecarry.v
deleted file mode 100644
index bfb1d2b04..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e414m17_9limbs.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/solinas64_2e414m17_9limbs/fecarryDisplay.v b/src/Specific/solinas64_2e414m17_9limbs/fecarryDisplay.v
deleted file mode 100644
index aa7405539..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e414m17_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e414m17_9limbs/femul.c b/src/Specific/solinas64_2e414m17_9limbs/femul.c
deleted file mode 100644
index 1a394a727..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/femul.c
+++ /dev/null
@@ -1,71 +0,0 @@
-static void femul(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- { uint128_t x36 = (((uint128_t)x5 * x34) + (((uint128_t)x7 * x35) + (((uint128_t)x9 * x33) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + (((uint128_t)x19 * x23) + ((uint128_t)x18 * x21)))))))));
- { uint128_t x37 = ((((uint128_t)x5 * x35) + (((uint128_t)x7 * x33) + (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + (((uint128_t)x17 * x23) + ((uint128_t)x19 * x21)))))))) + (0x11 * ((uint128_t)x18 * x34)));
- { uint128_t x38 = ((((uint128_t)x5 * x33) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + ((uint128_t)x17 * x21))))))) + (0x11 * (((uint128_t)x19 * x34) + ((uint128_t)x18 * x35))));
- { uint128_t x39 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + ((uint128_t)x15 * x21)))))) + (0x11 * (((uint128_t)x17 * x34) + (((uint128_t)x19 * x35) + ((uint128_t)x18 * x33)))));
- { uint128_t x40 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + ((uint128_t)x13 * x21))))) + (0x11 * (((uint128_t)x15 * x34) + (((uint128_t)x17 * x35) + (((uint128_t)x19 * x33) + ((uint128_t)x18 * x31))))));
- { uint128_t x41 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + ((uint128_t)x11 * x21)))) + (0x11 * (((uint128_t)x13 * x34) + (((uint128_t)x15 * x35) + (((uint128_t)x17 * x33) + (((uint128_t)x19 * x31) + ((uint128_t)x18 * x29)))))));
- { uint128_t x42 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + ((uint128_t)x9 * x21))) + (0x11 * (((uint128_t)x11 * x34) + (((uint128_t)x13 * x35) + (((uint128_t)x15 * x33) + (((uint128_t)x17 * x31) + (((uint128_t)x19 * x29) + ((uint128_t)x18 * x27))))))));
- { uint128_t x43 = ((((uint128_t)x5 * x23) + ((uint128_t)x7 * x21)) + (0x11 * (((uint128_t)x9 * x34) + (((uint128_t)x11 * x35) + (((uint128_t)x13 * x33) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + (((uint128_t)x19 * x27) + ((uint128_t)x18 * x25)))))))));
- { uint128_t x44 = (((uint128_t)x5 * x21) + (0x11 * (((uint128_t)x7 * x34) + (((uint128_t)x9 * x35) + (((uint128_t)x11 * x33) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + (((uint128_t)x17 * x27) + (((uint128_t)x19 * x25) + ((uint128_t)x18 * x23))))))))));
- { uint64_t x45 = (uint64_t) (x44 >> 0x2e);
- { uint64_t x46 = ((uint64_t)x44 & 0x3fffffffffff);
- { uint128_t x47 = (x45 + x43);
- { uint64_t x48 = (uint64_t) (x47 >> 0x2e);
- { uint64_t x49 = ((uint64_t)x47 & 0x3fffffffffff);
- { uint128_t x50 = (x48 + x42);
- { uint64_t x51 = (uint64_t) (x50 >> 0x2e);
- { uint64_t x52 = ((uint64_t)x50 & 0x3fffffffffff);
- { uint128_t x53 = (x51 + x41);
- { uint64_t x54 = (uint64_t) (x53 >> 0x2e);
- { uint64_t x55 = ((uint64_t)x53 & 0x3fffffffffff);
- { uint128_t x56 = (x54 + x40);
- { uint64_t x57 = (uint64_t) (x56 >> 0x2e);
- { uint64_t x58 = ((uint64_t)x56 & 0x3fffffffffff);
- { uint128_t x59 = (x57 + x39);
- { uint64_t x60 = (uint64_t) (x59 >> 0x2e);
- { uint64_t x61 = ((uint64_t)x59 & 0x3fffffffffff);
- { uint128_t x62 = (x60 + x38);
- { uint64_t x63 = (uint64_t) (x62 >> 0x2e);
- { uint64_t x64 = ((uint64_t)x62 & 0x3fffffffffff);
- { uint128_t x65 = (x63 + x37);
- { uint64_t x66 = (uint64_t) (x65 >> 0x2e);
- { uint64_t x67 = ((uint64_t)x65 & 0x3fffffffffff);
- { uint128_t x68 = (x66 + x36);
- { uint64_t x69 = (uint64_t) (x68 >> 0x2e);
- { uint64_t x70 = ((uint64_t)x68 & 0x3fffffffffff);
- { uint64_t x71 = (x46 + (0x11 * x69));
- { uint64_t x72 = (x71 >> 0x2e);
- { uint64_t x73 = (x71 & 0x3fffffffffff);
- { uint64_t x74 = (x72 + x49);
- { uint64_t x75 = (x74 >> 0x2e);
- { uint64_t x76 = (x74 & 0x3fffffffffff);
- out[0] = x73;
- out[1] = x76;
- out[2] = (x75 + x52);
- out[3] = x55;
- out[4] = x58;
- out[5] = x61;
- out[6] = x64;
- out[7] = x67;
- out[8] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e414m17_9limbs/femul.v b/src/Specific/solinas64_2e414m17_9limbs/femul.v
deleted file mode 100644
index 93bd82561..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e414m17_9limbs.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/solinas64_2e414m17_9limbs/femulDisplay.log b/src/Specific/solinas64_2e414m17_9limbs/femulDisplay.log
deleted file mode 100644
index 0a1c91fcd..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/femulDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint128_t x36 = (((uint128_t)x5 * x34) + (((uint128_t)x7 * x35) + (((uint128_t)x9 * x33) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + (((uint128_t)x19 * x23) + ((uint128_t)x18 * x21)))))))));
- uint128_t x37 = ((((uint128_t)x5 * x35) + (((uint128_t)x7 * x33) + (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + (((uint128_t)x17 * x23) + ((uint128_t)x19 * x21)))))))) + (0x11 * ((uint128_t)x18 * x34)));
- uint128_t x38 = ((((uint128_t)x5 * x33) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + ((uint128_t)x17 * x21))))))) + (0x11 * (((uint128_t)x19 * x34) + ((uint128_t)x18 * x35))));
- uint128_t x39 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + ((uint128_t)x15 * x21)))))) + (0x11 * (((uint128_t)x17 * x34) + (((uint128_t)x19 * x35) + ((uint128_t)x18 * x33)))));
- uint128_t x40 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + ((uint128_t)x13 * x21))))) + (0x11 * (((uint128_t)x15 * x34) + (((uint128_t)x17 * x35) + (((uint128_t)x19 * x33) + ((uint128_t)x18 * x31))))));
- uint128_t x41 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + ((uint128_t)x11 * x21)))) + (0x11 * (((uint128_t)x13 * x34) + (((uint128_t)x15 * x35) + (((uint128_t)x17 * x33) + (((uint128_t)x19 * x31) + ((uint128_t)x18 * x29)))))));
- uint128_t x42 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + ((uint128_t)x9 * x21))) + (0x11 * (((uint128_t)x11 * x34) + (((uint128_t)x13 * x35) + (((uint128_t)x15 * x33) + (((uint128_t)x17 * x31) + (((uint128_t)x19 * x29) + ((uint128_t)x18 * x27))))))));
- uint128_t x43 = ((((uint128_t)x5 * x23) + ((uint128_t)x7 * x21)) + (0x11 * (((uint128_t)x9 * x34) + (((uint128_t)x11 * x35) + (((uint128_t)x13 * x33) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + (((uint128_t)x19 * x27) + ((uint128_t)x18 * x25)))))))));
- uint128_t x44 = (((uint128_t)x5 * x21) + (0x11 * (((uint128_t)x7 * x34) + (((uint128_t)x9 * x35) + (((uint128_t)x11 * x33) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + (((uint128_t)x17 * x27) + (((uint128_t)x19 * x25) + ((uint128_t)x18 * x23))))))))));
- uint64_t x45 = (uint64_t) (x44 >> 0x2e);
- uint64_t x46 = ((uint64_t)x44 & 0x3fffffffffff);
- uint128_t x47 = (x45 + x43);
- uint64_t x48 = (uint64_t) (x47 >> 0x2e);
- uint64_t x49 = ((uint64_t)x47 & 0x3fffffffffff);
- uint128_t x50 = (x48 + x42);
- uint64_t x51 = (uint64_t) (x50 >> 0x2e);
- uint64_t x52 = ((uint64_t)x50 & 0x3fffffffffff);
- uint128_t x53 = (x51 + x41);
- uint64_t x54 = (uint64_t) (x53 >> 0x2e);
- uint64_t x55 = ((uint64_t)x53 & 0x3fffffffffff);
- uint128_t x56 = (x54 + x40);
- uint64_t x57 = (uint64_t) (x56 >> 0x2e);
- uint64_t x58 = ((uint64_t)x56 & 0x3fffffffffff);
- uint128_t x59 = (x57 + x39);
- uint64_t x60 = (uint64_t) (x59 >> 0x2e);
- uint64_t x61 = ((uint64_t)x59 & 0x3fffffffffff);
- uint128_t x62 = (x60 + x38);
- uint64_t x63 = (uint64_t) (x62 >> 0x2e);
- uint64_t x64 = ((uint64_t)x62 & 0x3fffffffffff);
- uint128_t x65 = (x63 + x37);
- uint64_t x66 = (uint64_t) (x65 >> 0x2e);
- uint64_t x67 = ((uint64_t)x65 & 0x3fffffffffff);
- uint128_t x68 = (x66 + x36);
- uint64_t x69 = (uint64_t) (x68 >> 0x2e);
- uint64_t x70 = ((uint64_t)x68 & 0x3fffffffffff);
- uint64_t x71 = (x46 + (0x11 * x69));
- uint64_t x72 = (x71 >> 0x2e);
- uint64_t x73 = (x71 & 0x3fffffffffff);
- uint64_t x74 = (x72 + x49);
- uint64_t x75 = (x74 >> 0x2e);
- uint64_t x76 = (x74 & 0x3fffffffffff);
- return (Return x70, Return x67, Return x64, Return x61, Return x58, Return x55, (x75 + x52), Return x76, Return x73))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e414m17_9limbs/femulDisplay.v b/src/Specific/solinas64_2e414m17_9limbs/femulDisplay.v
deleted file mode 100644
index 2b62b2c03..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e414m17_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e414m17_9limbs/fesquare.c b/src/Specific/solinas64_2e414m17_9limbs/fesquare.c
deleted file mode 100644
index 596e43cf7..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/fesquare.c
+++ /dev/null
@@ -1,62 +0,0 @@
-static void fesquare(uint64_t out[9], const uint64_t in1[9]) {
- { const uint64_t x15 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x17 = (((uint128_t)x2 * x15) + (((uint128_t)x4 * x16) + (((uint128_t)x6 * x14) + (((uint128_t)x8 * x12) + (((uint128_t)x10 * x10) + (((uint128_t)x12 * x8) + (((uint128_t)x14 * x6) + (((uint128_t)x16 * x4) + ((uint128_t)x15 * x2)))))))));
- { uint128_t x18 = ((((uint128_t)x2 * x16) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x16 * x2)))))))) + (0x11 * ((uint128_t)x15 * x15)));
- { uint128_t x19 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x11 * (((uint128_t)x16 * x15) + ((uint128_t)x15 * x16))));
- { uint128_t x20 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x11 * (((uint128_t)x14 * x15) + (((uint128_t)x16 * x16) + ((uint128_t)x15 * x14)))));
- { uint128_t x21 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x11 * (((uint128_t)x12 * x15) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + ((uint128_t)x15 * x12))))));
- { uint128_t x22 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x11 * (((uint128_t)x10 * x15) + (((uint128_t)x12 * x16) + (((uint128_t)x14 * x14) + (((uint128_t)x16 * x12) + ((uint128_t)x15 * x10)))))));
- { uint128_t x23 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x11 * (((uint128_t)x8 * x15) + (((uint128_t)x10 * x16) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + (((uint128_t)x16 * x10) + ((uint128_t)x15 * x8))))))));
- { uint128_t x24 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * (((uint128_t)x6 * x15) + (((uint128_t)x8 * x16) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + (((uint128_t)x14 * x10) + (((uint128_t)x16 * x8) + ((uint128_t)x15 * x6)))))))));
- { uint128_t x25 = (((uint128_t)x2 * x2) + (0x11 * (((uint128_t)x4 * x15) + (((uint128_t)x6 * x16) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + (((uint128_t)x16 * x6) + ((uint128_t)x15 * x4))))))))));
- { uint64_t x26 = (uint64_t) (x25 >> 0x2e);
- { uint64_t x27 = ((uint64_t)x25 & 0x3fffffffffff);
- { uint128_t x28 = (x26 + x24);
- { uint64_t x29 = (uint64_t) (x28 >> 0x2e);
- { uint64_t x30 = ((uint64_t)x28 & 0x3fffffffffff);
- { uint128_t x31 = (x29 + x23);
- { uint64_t x32 = (uint64_t) (x31 >> 0x2e);
- { uint64_t x33 = ((uint64_t)x31 & 0x3fffffffffff);
- { uint128_t x34 = (x32 + x22);
- { uint64_t x35 = (uint64_t) (x34 >> 0x2e);
- { uint64_t x36 = ((uint64_t)x34 & 0x3fffffffffff);
- { uint128_t x37 = (x35 + x21);
- { uint64_t x38 = (uint64_t) (x37 >> 0x2e);
- { uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffff);
- { uint128_t x40 = (x38 + x20);
- { uint64_t x41 = (uint64_t) (x40 >> 0x2e);
- { uint64_t x42 = ((uint64_t)x40 & 0x3fffffffffff);
- { uint128_t x43 = (x41 + x19);
- { uint64_t x44 = (uint64_t) (x43 >> 0x2e);
- { uint64_t x45 = ((uint64_t)x43 & 0x3fffffffffff);
- { uint128_t x46 = (x44 + x18);
- { uint64_t x47 = (uint64_t) (x46 >> 0x2e);
- { uint64_t x48 = ((uint64_t)x46 & 0x3fffffffffff);
- { uint128_t x49 = (x47 + x17);
- { uint64_t x50 = (uint64_t) (x49 >> 0x2e);
- { uint64_t x51 = ((uint64_t)x49 & 0x3fffffffffff);
- { uint64_t x52 = (x27 + (0x11 * x50));
- { uint64_t x53 = (x52 >> 0x2e);
- { uint64_t x54 = (x52 & 0x3fffffffffff);
- { uint64_t x55 = (x53 + x30);
- { uint64_t x56 = (x55 >> 0x2e);
- { uint64_t x57 = (x55 & 0x3fffffffffff);
- out[0] = x54;
- out[1] = x57;
- out[2] = (x56 + x33);
- out[3] = x36;
- out[4] = x39;
- out[5] = x42;
- out[6] = x45;
- out[7] = x48;
- out[8] = x51;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e414m17_9limbs/fesquare.v b/src/Specific/solinas64_2e414m17_9limbs/fesquare.v
deleted file mode 100644
index c94ae6843..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e414m17_9limbs.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/solinas64_2e414m17_9limbs/fesquareDisplay.log b/src/Specific/solinas64_2e414m17_9limbs/fesquareDisplay.log
deleted file mode 100644
index add6dcff0..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x17 = (((uint128_t)x2 * x15) + (((uint128_t)x4 * x16) + (((uint128_t)x6 * x14) + (((uint128_t)x8 * x12) + (((uint128_t)x10 * x10) + (((uint128_t)x12 * x8) + (((uint128_t)x14 * x6) + (((uint128_t)x16 * x4) + ((uint128_t)x15 * x2)))))))));
- uint128_t x18 = ((((uint128_t)x2 * x16) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x16 * x2)))))))) + (0x11 * ((uint128_t)x15 * x15)));
- uint128_t x19 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x11 * (((uint128_t)x16 * x15) + ((uint128_t)x15 * x16))));
- uint128_t x20 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x11 * (((uint128_t)x14 * x15) + (((uint128_t)x16 * x16) + ((uint128_t)x15 * x14)))));
- uint128_t x21 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x11 * (((uint128_t)x12 * x15) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + ((uint128_t)x15 * x12))))));
- uint128_t x22 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x11 * (((uint128_t)x10 * x15) + (((uint128_t)x12 * x16) + (((uint128_t)x14 * x14) + (((uint128_t)x16 * x12) + ((uint128_t)x15 * x10)))))));
- uint128_t x23 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x11 * (((uint128_t)x8 * x15) + (((uint128_t)x10 * x16) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + (((uint128_t)x16 * x10) + ((uint128_t)x15 * x8))))))));
- uint128_t x24 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * (((uint128_t)x6 * x15) + (((uint128_t)x8 * x16) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + (((uint128_t)x14 * x10) + (((uint128_t)x16 * x8) + ((uint128_t)x15 * x6)))))))));
- uint128_t x25 = (((uint128_t)x2 * x2) + (0x11 * (((uint128_t)x4 * x15) + (((uint128_t)x6 * x16) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + (((uint128_t)x16 * x6) + ((uint128_t)x15 * x4))))))))));
- uint64_t x26 = (uint64_t) (x25 >> 0x2e);
- uint64_t x27 = ((uint64_t)x25 & 0x3fffffffffff);
- uint128_t x28 = (x26 + x24);
- uint64_t x29 = (uint64_t) (x28 >> 0x2e);
- uint64_t x30 = ((uint64_t)x28 & 0x3fffffffffff);
- uint128_t x31 = (x29 + x23);
- uint64_t x32 = (uint64_t) (x31 >> 0x2e);
- uint64_t x33 = ((uint64_t)x31 & 0x3fffffffffff);
- uint128_t x34 = (x32 + x22);
- uint64_t x35 = (uint64_t) (x34 >> 0x2e);
- uint64_t x36 = ((uint64_t)x34 & 0x3fffffffffff);
- uint128_t x37 = (x35 + x21);
- uint64_t x38 = (uint64_t) (x37 >> 0x2e);
- uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffff);
- uint128_t x40 = (x38 + x20);
- uint64_t x41 = (uint64_t) (x40 >> 0x2e);
- uint64_t x42 = ((uint64_t)x40 & 0x3fffffffffff);
- uint128_t x43 = (x41 + x19);
- uint64_t x44 = (uint64_t) (x43 >> 0x2e);
- uint64_t x45 = ((uint64_t)x43 & 0x3fffffffffff);
- uint128_t x46 = (x44 + x18);
- uint64_t x47 = (uint64_t) (x46 >> 0x2e);
- uint64_t x48 = ((uint64_t)x46 & 0x3fffffffffff);
- uint128_t x49 = (x47 + x17);
- uint64_t x50 = (uint64_t) (x49 >> 0x2e);
- uint64_t x51 = ((uint64_t)x49 & 0x3fffffffffff);
- uint64_t x52 = (x27 + (0x11 * x50));
- uint64_t x53 = (x52 >> 0x2e);
- uint64_t x54 = (x52 & 0x3fffffffffff);
- uint64_t x55 = (x53 + x30);
- uint64_t x56 = (x55 >> 0x2e);
- uint64_t x57 = (x55 & 0x3fffffffffff);
- return (Return x51, Return x48, Return x45, Return x42, Return x39, Return x36, (x56 + x33), Return x57, Return x54))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e414m17_9limbs/fesquareDisplay.v b/src/Specific/solinas64_2e414m17_9limbs/fesquareDisplay.v
deleted file mode 100644
index 26c16f457..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e414m17_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e414m17_9limbs/fesub.c b/src/Specific/solinas64_2e414m17_9limbs/fesub.c
deleted file mode 100644
index a655dc081..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/fesub.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void fesub(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- out[0] = ((0x7fffffffffde + x5) - x21);
- out[1] = ((0x7ffffffffffe + x7) - x23);
- out[2] = ((0x7ffffffffffe + x9) - x25);
- out[3] = ((0x7ffffffffffe + x11) - x27);
- out[4] = ((0x7ffffffffffe + x13) - x29);
- out[5] = ((0x7ffffffffffe + x15) - x31);
- out[6] = ((0x7ffffffffffe + x17) - x33);
- out[7] = ((0x7ffffffffffe + x19) - x35);
- out[8] = ((0x7ffffffffffe + x18) - x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e414m17_9limbs/fesub.v b/src/Specific/solinas64_2e414m17_9limbs/fesub.v
deleted file mode 100644
index 9911a5d7c..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e414m17_9limbs.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/solinas64_2e414m17_9limbs/fesubDisplay.log b/src/Specific/solinas64_2e414m17_9limbs/fesubDisplay.log
deleted file mode 100644
index b87ea5ac5..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- (((0x7ffffffffffe + x18) - x34), ((0x7ffffffffffe + x19) - x35), ((0x7ffffffffffe + x17) - x33), ((0x7ffffffffffe + x15) - x31), ((0x7ffffffffffe + x13) - x29), ((0x7ffffffffffe + x11) - x27), ((0x7ffffffffffe + x9) - x25), ((0x7ffffffffffe + x7) - x23), ((0x7fffffffffde + x5) - x21)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e414m17_9limbs/fesubDisplay.v b/src/Specific/solinas64_2e414m17_9limbs/fesubDisplay.v
deleted file mode 100644
index c36c7dd31..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e414m17_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e414m17_9limbs/freeze.c b/src/Specific/solinas64_2e414m17_9limbs/freeze.c
deleted file mode 100644
index 28c8008cd..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/freeze.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void freeze(uint64_t out[9], const uint64_t in1[9]) {
- { const uint64_t x15 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffffef);
- { uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x4, 0x3fffffffffff);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x6, 0x3fffffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x8, 0x3fffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x10, 0x3fffffffffff);
- { uint64_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x12, 0x3fffffffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x34, Return x14, 0x3fffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x16, 0x3fffffffffff);
- { uint64_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x15, 0x3fffffffffff);
- { uint64_t x44 = cmovznz64(x43, 0x0, 0xffffffffffffffffL);
- { uint64_t x45 = (x44 & 0x3fffffffffef);
- { uint64_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- { uint64_t x49 = (x44 & 0x3fffffffffff);
- { uint64_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- { uint64_t x53 = (x44 & 0x3fffffffffff);
- { uint64_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- { uint64_t x57 = (x44 & 0x3fffffffffff);
- { uint64_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- { uint64_t x61 = (x44 & 0x3fffffffffff);
- { uint64_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- { uint64_t x65 = (x44 & 0x3fffffffffff);
- { uint64_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- { uint64_t x69 = (x44 & 0x3fffffffffff);
- { uint64_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- { uint64_t x73 = (x44 & 0x3fffffffffff);
- { uint64_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- { uint64_t x77 = (x44 & 0x3fffffffffff);
- { uint64_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- out[0] = x47;
- out[1] = x51;
- out[2] = x55;
- out[3] = x59;
- out[4] = x63;
- out[5] = x67;
- out[6] = x71;
- out[7] = x75;
- out[8] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e414m17_9limbs/freeze.v b/src/Specific/solinas64_2e414m17_9limbs/freeze.v
deleted file mode 100644
index 10de9168f..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e414m17_9limbs.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/solinas64_2e414m17_9limbs/freezeDisplay.log b/src/Specific/solinas64_2e414m17_9limbs/freezeDisplay.log
deleted file mode 100644
index bb142d9dd..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3fffffffffef);
- uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x4, 0x3fffffffffff);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x6, 0x3fffffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x8, 0x3fffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x10, 0x3fffffffffff);
- uint64_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x12, 0x3fffffffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x34, Return x14, 0x3fffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x16, 0x3fffffffffff);
- uint64_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x15, 0x3fffffffffff);
- uint64_t x44 = cmovznz64(x43, 0x0, 0xffffffffffffffffL);
- uint64_t x45 = (x44 & 0x3fffffffffef);
- uint64_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- uint64_t x49 = (x44 & 0x3fffffffffff);
- uint64_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- uint64_t x53 = (x44 & 0x3fffffffffff);
- uint64_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- uint64_t x57 = (x44 & 0x3fffffffffff);
- uint64_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- uint64_t x61 = (x44 & 0x3fffffffffff);
- uint64_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- uint64_t x65 = (x44 & 0x3fffffffffff);
- uint64_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- uint64_t x69 = (x44 & 0x3fffffffffff);
- uint64_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- uint64_t x73 = (x44 & 0x3fffffffffff);
- uint64_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- uint64_t x77 = (x44 & 0x3fffffffffff);
- uint64_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- (Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x51, Return x47))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e414m17_9limbs/freezeDisplay.v b/src/Specific/solinas64_2e414m17_9limbs/freezeDisplay.v
deleted file mode 100644
index 85fa4f71d..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e414m17_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e414m17_9limbs/py_interpreter.sh b/src/Specific/solinas64_2e414m17_9limbs/py_interpreter.sh
deleted file mode 100755
index c4fc58e3c..000000000
--- a/src/Specific/solinas64_2e414m17_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**414 - 17' -Dmodulus_bytes='46' -Da24='121665'
diff --git a/src/Specific/solinas64_2e416m2e208m1_8limbs/CurveParameters.v b/src/Specific/solinas64_2e416m2e208m1_8limbs/CurveParameters.v
deleted file mode 100644
index d8528c1df..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^416 - 2^208 - 1
-Base: 52
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 52;
- bitwidth := 64;
- s := 2^416;
- c := [(1, 1); (2^208, 1)];
- carry_chains := Some [[3; 7]; [4; 0; 5; 1; 6; 2; 7; 3]; [4; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- 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/solinas64_2e416m2e208m1_8limbs/Synthesis.v b/src/Specific/solinas64_2e416m2e208m1_8limbs/Synthesis.v
deleted file mode 100644
index 787f818c6..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_8limbs.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/solinas64_2e416m2e208m1_8limbs/compiler.sh b/src/Specific/solinas64_2e416m2e208m1_8limbs/compiler.sh
deleted file mode 100755
index 220bba607..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,52,52,52,52,52,52,52}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' "$@"
diff --git a/src/Specific/solinas64_2e416m2e208m1_8limbs/compilerxx.sh b/src/Specific/solinas64_2e416m2e208m1_8limbs/compilerxx.sh
deleted file mode 100755
index 6362e1d20..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,52,52,52,52,52,52,52}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' "$@"
diff --git a/src/Specific/solinas64_2e416m2e208m1_8limbs/feadd.c b/src/Specific/solinas64_2e416m2e208m1_8limbs/feadd.c
deleted file mode 100644
index 4def6ee9c..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e416m2e208m1_8limbs/feadd.v b/src/Specific/solinas64_2e416m2e208m1_8limbs/feadd.v
deleted file mode 100644
index 142556819..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_8limbs.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/solinas64_2e416m2e208m1_8limbs/feaddDisplay.log b/src/Specific/solinas64_2e416m2e208m1_8limbs/feaddDisplay.log
deleted file mode 100644
index 023fc8a31..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e416m2e208m1_8limbs/feaddDisplay.v b/src/Specific/solinas64_2e416m2e208m1_8limbs/feaddDisplay.v
deleted file mode 100644
index e7175914c..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e416m2e208m1_8limbs/fecarry.v b/src/Specific/solinas64_2e416m2e208m1_8limbs/fecarry.v
deleted file mode 100644
index d3fab4c41..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_8limbs.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/solinas64_2e416m2e208m1_8limbs/fecarryDisplay.v b/src/Specific/solinas64_2e416m2e208m1_8limbs/fecarryDisplay.v
deleted file mode 100644
index 5ad56c921..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e416m2e208m1_8limbs/femul.c b/src/Specific/solinas64_2e416m2e208m1_8limbs/femul.c
deleted file mode 100644
index f86ca1d3f..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/femul.c
+++ /dev/null
@@ -1,81 +0,0 @@
-static void femul(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint128_t x32 = (((uint128_t)(x11 + x16) * (x25 + x30)) - ((uint128_t)x11 * x25));
- { uint128_t x33 = ((((uint128_t)(x9 + x17) * (x25 + x30)) + ((uint128_t)(x11 + x16) * (x23 + x31))) - (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)));
- { uint128_t x34 = ((((uint128_t)(x7 + x15) * (x25 + x30)) + (((uint128_t)(x9 + x17) * (x23 + x31)) + ((uint128_t)(x11 + x16) * (x21 + x29)))) - (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + ((uint128_t)x11 * x21))));
- { uint128_t x35 = ((((uint128_t)(x5 + x13) * (x25 + x30)) + (((uint128_t)(x7 + x15) * (x23 + x31)) + (((uint128_t)(x9 + x17) * (x21 + x29)) + ((uint128_t)(x11 + x16) * (x19 + x27))))) - (((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))));
- { uint128_t x36 = ((((uint128_t)(x5 + x13) * (x23 + x31)) + (((uint128_t)(x7 + x15) * (x21 + x29)) + ((uint128_t)(x9 + x17) * (x19 + x27)))) - (((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))));
- { uint128_t x37 = ((((uint128_t)(x5 + x13) * (x21 + x29)) + ((uint128_t)(x7 + x15) * (x19 + x27))) - (((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)));
- { uint128_t x38 = (((uint128_t)(x5 + x13) * (x19 + x27)) - ((uint128_t)x5 * x19));
- { uint128_t x39 = (((((uint128_t)x11 * x25) + ((uint128_t)x16 * x30)) + x36) + x32);
- { uint128_t x40 = ((((((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)) + (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))) + x37) + x33);
- { uint128_t x41 = ((((((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + ((uint128_t)x11 * x21))) + (((uint128_t)x15 * x30) + (((uint128_t)x17 * x31) + ((uint128_t)x16 * x29)))) + x38) + x34);
- { uint128_t x42 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27)))));
- { uint128_t x43 = (((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + ((uint128_t)x17 * x27)))) + x32);
- { uint128_t x44 = (((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (((uint128_t)x13 * x29) + ((uint128_t)x15 * x27))) + x33);
- { uint128_t x45 = ((((uint128_t)x5 * x19) + ((uint128_t)x13 * x27)) + x34);
- { uint64_t x46 = (uint64_t) (x42 >> 0x34);
- { uint64_t x47 = ((uint64_t)x42 & 0xfffffffffffff);
- { uint64_t x48 = (uint64_t) (x35 >> 0x34);
- { uint64_t x49 = ((uint64_t)x35 & 0xfffffffffffff);
- { uint128_t x50 = (((uint128_t)0x10000000000000 * x48) + x49);
- { uint64_t x51 = (uint64_t) (x50 >> 0x34);
- { uint64_t x52 = ((uint64_t)x50 & 0xfffffffffffff);
- { uint128_t x53 = ((x46 + x41) + x51);
- { uint64_t x54 = (uint64_t) (x53 >> 0x34);
- { uint64_t x55 = ((uint64_t)x53 & 0xfffffffffffff);
- { uint128_t x56 = (x45 + x51);
- { uint64_t x57 = (uint64_t) (x56 >> 0x34);
- { uint64_t x58 = ((uint64_t)x56 & 0xfffffffffffff);
- { uint128_t x59 = (x54 + x40);
- { uint64_t x60 = (uint64_t) (x59 >> 0x34);
- { uint64_t x61 = ((uint64_t)x59 & 0xfffffffffffff);
- { uint128_t x62 = (x57 + x44);
- { uint64_t x63 = (uint64_t) (x62 >> 0x34);
- { uint64_t x64 = ((uint64_t)x62 & 0xfffffffffffff);
- { uint128_t x65 = (x60 + x39);
- { uint64_t x66 = (uint64_t) (x65 >> 0x34);
- { uint64_t x67 = ((uint64_t)x65 & 0xfffffffffffff);
- { uint128_t x68 = (x63 + x43);
- { uint64_t x69 = (uint64_t) (x68 >> 0x34);
- { uint64_t x70 = ((uint64_t)x68 & 0xfffffffffffff);
- { uint64_t x71 = (x66 + x52);
- { uint64_t x72 = (x71 >> 0x34);
- { uint64_t x73 = (x71 & 0xfffffffffffff);
- { uint64_t x74 = (x69 + x47);
- { uint64_t x75 = (x74 >> 0x34);
- { uint64_t x76 = (x74 & 0xfffffffffffff);
- { uint64_t x77 = ((0x10000000000000 * x72) + x73);
- { uint64_t x78 = (x77 >> 0x34);
- { uint64_t x79 = (x77 & 0xfffffffffffff);
- { uint64_t x80 = ((x75 + x55) + x78);
- { uint64_t x81 = (x80 >> 0x34);
- { uint64_t x82 = (x80 & 0xfffffffffffff);
- { uint64_t x83 = (x58 + x78);
- { uint64_t x84 = (x83 >> 0x34);
- { uint64_t x85 = (x83 & 0xfffffffffffff);
- out[0] = x85;
- out[1] = (x84 + x64);
- out[2] = x70;
- out[3] = x76;
- out[4] = x82;
- out[5] = (x81 + x61);
- out[6] = x67;
- out[7] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e416m2e208m1_8limbs/femul.v b/src/Specific/solinas64_2e416m2e208m1_8limbs/femul.v
deleted file mode 100644
index d7d8bde2b..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_8limbs.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/solinas64_2e416m2e208m1_8limbs/femulDisplay.log b/src/Specific/solinas64_2e416m2e208m1_8limbs/femulDisplay.log
deleted file mode 100644
index b80ae858e..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,61 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint128_t x32 = (((uint128_t)(x11 + x16) * (x25 + x30)) - ((uint128_t)x11 * x25));
- uint128_t x33 = ((((uint128_t)(x9 + x17) * (x25 + x30)) + ((uint128_t)(x11 + x16) * (x23 + x31))) - (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)));
- uint128_t x34 = ((((uint128_t)(x7 + x15) * (x25 + x30)) + (((uint128_t)(x9 + x17) * (x23 + x31)) + ((uint128_t)(x11 + x16) * (x21 + x29)))) - (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + ((uint128_t)x11 * x21))));
- uint128_t x35 = ((((uint128_t)(x5 + x13) * (x25 + x30)) + (((uint128_t)(x7 + x15) * (x23 + x31)) + (((uint128_t)(x9 + x17) * (x21 + x29)) + ((uint128_t)(x11 + x16) * (x19 + x27))))) - (((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))));
- uint128_t x36 = ((((uint128_t)(x5 + x13) * (x23 + x31)) + (((uint128_t)(x7 + x15) * (x21 + x29)) + ((uint128_t)(x9 + x17) * (x19 + x27)))) - (((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))));
- uint128_t x37 = ((((uint128_t)(x5 + x13) * (x21 + x29)) + ((uint128_t)(x7 + x15) * (x19 + x27))) - (((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)));
- uint128_t x38 = (((uint128_t)(x5 + x13) * (x19 + x27)) - ((uint128_t)x5 * x19));
- uint128_t x39 = (((((uint128_t)x11 * x25) + ((uint128_t)x16 * x30)) + x36) + x32);
- uint128_t x40 = ((((((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)) + (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))) + x37) + x33);
- uint128_t x41 = ((((((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + ((uint128_t)x11 * x21))) + (((uint128_t)x15 * x30) + (((uint128_t)x17 * x31) + ((uint128_t)x16 * x29)))) + x38) + x34);
- uint128_t x42 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27)))));
- uint128_t x43 = (((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + ((uint128_t)x17 * x27)))) + x32);
- uint128_t x44 = (((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (((uint128_t)x13 * x29) + ((uint128_t)x15 * x27))) + x33);
- uint128_t x45 = ((((uint128_t)x5 * x19) + ((uint128_t)x13 * x27)) + x34);
- uint64_t x46 = (uint64_t) (x42 >> 0x34);
- uint64_t x47 = ((uint64_t)x42 & 0xfffffffffffff);
- uint64_t x48 = (uint64_t) (x35 >> 0x34);
- uint64_t x49 = ((uint64_t)x35 & 0xfffffffffffff);
- uint128_t x50 = (((uint128_t)0x10000000000000 * x48) + x49);
- uint64_t x51 = (uint64_t) (x50 >> 0x34);
- uint64_t x52 = ((uint64_t)x50 & 0xfffffffffffff);
- uint128_t x53 = ((x46 + x41) + x51);
- uint64_t x54 = (uint64_t) (x53 >> 0x34);
- uint64_t x55 = ((uint64_t)x53 & 0xfffffffffffff);
- uint128_t x56 = (x45 + x51);
- uint64_t x57 = (uint64_t) (x56 >> 0x34);
- uint64_t x58 = ((uint64_t)x56 & 0xfffffffffffff);
- uint128_t x59 = (x54 + x40);
- uint64_t x60 = (uint64_t) (x59 >> 0x34);
- uint64_t x61 = ((uint64_t)x59 & 0xfffffffffffff);
- uint128_t x62 = (x57 + x44);
- uint64_t x63 = (uint64_t) (x62 >> 0x34);
- uint64_t x64 = ((uint64_t)x62 & 0xfffffffffffff);
- uint128_t x65 = (x60 + x39);
- uint64_t x66 = (uint64_t) (x65 >> 0x34);
- uint64_t x67 = ((uint64_t)x65 & 0xfffffffffffff);
- uint128_t x68 = (x63 + x43);
- uint64_t x69 = (uint64_t) (x68 >> 0x34);
- uint64_t x70 = ((uint64_t)x68 & 0xfffffffffffff);
- uint64_t x71 = (x66 + x52);
- uint64_t x72 = (x71 >> 0x34);
- uint64_t x73 = (x71 & 0xfffffffffffff);
- uint64_t x74 = (x69 + x47);
- uint64_t x75 = (x74 >> 0x34);
- uint64_t x76 = (x74 & 0xfffffffffffff);
- uint64_t x77 = ((0x10000000000000 * x72) + x73);
- uint64_t x78 = (x77 >> 0x34);
- uint64_t x79 = (x77 & 0xfffffffffffff);
- uint64_t x80 = ((x75 + x55) + x78);
- uint64_t x81 = (x80 >> 0x34);
- uint64_t x82 = (x80 & 0xfffffffffffff);
- uint64_t x83 = (x58 + x78);
- uint64_t x84 = (x83 >> 0x34);
- uint64_t x85 = (x83 & 0xfffffffffffff);
- return (Return x79, Return x67, (x81 + x61), Return x82, Return x76, Return x70, (x84 + x64), Return x85))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e416m2e208m1_8limbs/femulDisplay.v b/src/Specific/solinas64_2e416m2e208m1_8limbs/femulDisplay.v
deleted file mode 100644
index b4bcf0ae7..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e416m2e208m1_8limbs/fesquare.c b/src/Specific/solinas64_2e416m2e208m1_8limbs/fesquare.c
deleted file mode 100644
index 16272c033..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/fesquare.c
+++ /dev/null
@@ -1,73 +0,0 @@
-static void fesquare(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x15 = (((uint128_t)(x8 + x13) * (x8 + x13)) - ((uint128_t)x8 * x8));
- { uint128_t x16 = ((((uint128_t)(x6 + x14) * (x8 + x13)) + ((uint128_t)(x8 + x13) * (x6 + x14))) - (((uint128_t)x6 * x8) + ((uint128_t)x8 * x6)));
- { uint128_t x17 = ((((uint128_t)(x4 + x12) * (x8 + x13)) + (((uint128_t)(x6 + x14) * (x6 + x14)) + ((uint128_t)(x8 + x13) * (x4 + x12)))) - (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + ((uint128_t)x8 * x4))));
- { uint128_t x18 = ((((uint128_t)(x2 + x10) * (x8 + x13)) + (((uint128_t)(x4 + x12) * (x6 + x14)) + (((uint128_t)(x6 + x14) * (x4 + x12)) + ((uint128_t)(x8 + x13) * (x2 + x10))))) - (((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))));
- { uint128_t x19 = ((((uint128_t)(x2 + x10) * (x6 + x14)) + (((uint128_t)(x4 + x12) * (x4 + x12)) + ((uint128_t)(x6 + x14) * (x2 + x10)))) - (((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))));
- { uint128_t x20 = ((((uint128_t)(x2 + x10) * (x4 + x12)) + ((uint128_t)(x4 + x12) * (x2 + x10))) - (((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)));
- { uint128_t x21 = (((uint128_t)(x2 + x10) * (x2 + x10)) - ((uint128_t)x2 * x2));
- { uint128_t x22 = (((((uint128_t)x8 * x8) + ((uint128_t)x13 * x13)) + x19) + x15);
- { uint128_t x23 = ((((((uint128_t)x6 * x8) + ((uint128_t)x8 * x6)) + (((uint128_t)x14 * x13) + ((uint128_t)x13 * x14))) + x20) + x16);
- { uint128_t x24 = ((((((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + ((uint128_t)x8 * x4))) + (((uint128_t)x12 * x13) + (((uint128_t)x14 * x14) + ((uint128_t)x13 * x12)))) + x21) + x17);
- { uint128_t x25 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (((uint128_t)x10 * x13) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((uint128_t)x13 * x10)))));
- { uint128_t x26 = (((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + ((uint128_t)x14 * x10)))) + x15);
- { uint128_t x27 = (((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (((uint128_t)x10 * x12) + ((uint128_t)x12 * x10))) + x16);
- { uint128_t x28 = ((((uint128_t)x2 * x2) + ((uint128_t)x10 * x10)) + x17);
- { uint64_t x29 = (uint64_t) (x25 >> 0x34);
- { uint64_t x30 = ((uint64_t)x25 & 0xfffffffffffff);
- { uint64_t x31 = (uint64_t) (x18 >> 0x34);
- { uint64_t x32 = ((uint64_t)x18 & 0xfffffffffffff);
- { uint128_t x33 = (((uint128_t)0x10000000000000 * x31) + x32);
- { uint64_t x34 = (uint64_t) (x33 >> 0x34);
- { uint64_t x35 = ((uint64_t)x33 & 0xfffffffffffff);
- { uint128_t x36 = ((x29 + x24) + x34);
- { uint64_t x37 = (uint64_t) (x36 >> 0x34);
- { uint64_t x38 = ((uint64_t)x36 & 0xfffffffffffff);
- { uint128_t x39 = (x28 + x34);
- { uint64_t x40 = (uint64_t) (x39 >> 0x34);
- { uint64_t x41 = ((uint64_t)x39 & 0xfffffffffffff);
- { uint128_t x42 = (x37 + x23);
- { uint64_t x43 = (uint64_t) (x42 >> 0x34);
- { uint64_t x44 = ((uint64_t)x42 & 0xfffffffffffff);
- { uint128_t x45 = (x40 + x27);
- { uint64_t x46 = (uint64_t) (x45 >> 0x34);
- { uint64_t x47 = ((uint64_t)x45 & 0xfffffffffffff);
- { uint128_t x48 = (x43 + x22);
- { uint64_t x49 = (uint64_t) (x48 >> 0x34);
- { uint64_t x50 = ((uint64_t)x48 & 0xfffffffffffff);
- { uint128_t x51 = (x46 + x26);
- { uint64_t x52 = (uint64_t) (x51 >> 0x34);
- { uint64_t x53 = ((uint64_t)x51 & 0xfffffffffffff);
- { uint64_t x54 = (x49 + x35);
- { uint64_t x55 = (x54 >> 0x34);
- { uint64_t x56 = (x54 & 0xfffffffffffff);
- { uint64_t x57 = (x52 + x30);
- { uint64_t x58 = (x57 >> 0x34);
- { uint64_t x59 = (x57 & 0xfffffffffffff);
- { uint64_t x60 = ((0x10000000000000 * x55) + x56);
- { uint64_t x61 = (x60 >> 0x34);
- { uint64_t x62 = (x60 & 0xfffffffffffff);
- { uint64_t x63 = ((x58 + x38) + x61);
- { uint64_t x64 = (x63 >> 0x34);
- { uint64_t x65 = (x63 & 0xfffffffffffff);
- { uint64_t x66 = (x41 + x61);
- { uint64_t x67 = (x66 >> 0x34);
- { uint64_t x68 = (x66 & 0xfffffffffffff);
- out[0] = x68;
- out[1] = (x67 + x47);
- out[2] = x53;
- out[3] = x59;
- out[4] = x65;
- out[5] = (x64 + x44);
- out[6] = x50;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e416m2e208m1_8limbs/fesquare.v b/src/Specific/solinas64_2e416m2e208m1_8limbs/fesquare.v
deleted file mode 100644
index b999a7185..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_8limbs.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/solinas64_2e416m2e208m1_8limbs/fesquareDisplay.log b/src/Specific/solinas64_2e416m2e208m1_8limbs/fesquareDisplay.log
deleted file mode 100644
index 104992b7a..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,61 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x15 = (((uint128_t)(x8 + x13) * (x8 + x13)) - ((uint128_t)x8 * x8));
- uint128_t x16 = ((((uint128_t)(x6 + x14) * (x8 + x13)) + ((uint128_t)(x8 + x13) * (x6 + x14))) - (((uint128_t)x6 * x8) + ((uint128_t)x8 * x6)));
- uint128_t x17 = ((((uint128_t)(x4 + x12) * (x8 + x13)) + (((uint128_t)(x6 + x14) * (x6 + x14)) + ((uint128_t)(x8 + x13) * (x4 + x12)))) - (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + ((uint128_t)x8 * x4))));
- uint128_t x18 = ((((uint128_t)(x2 + x10) * (x8 + x13)) + (((uint128_t)(x4 + x12) * (x6 + x14)) + (((uint128_t)(x6 + x14) * (x4 + x12)) + ((uint128_t)(x8 + x13) * (x2 + x10))))) - (((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))));
- uint128_t x19 = ((((uint128_t)(x2 + x10) * (x6 + x14)) + (((uint128_t)(x4 + x12) * (x4 + x12)) + ((uint128_t)(x6 + x14) * (x2 + x10)))) - (((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))));
- uint128_t x20 = ((((uint128_t)(x2 + x10) * (x4 + x12)) + ((uint128_t)(x4 + x12) * (x2 + x10))) - (((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)));
- uint128_t x21 = (((uint128_t)(x2 + x10) * (x2 + x10)) - ((uint128_t)x2 * x2));
- uint128_t x22 = (((((uint128_t)x8 * x8) + ((uint128_t)x13 * x13)) + x19) + x15);
- uint128_t x23 = ((((((uint128_t)x6 * x8) + ((uint128_t)x8 * x6)) + (((uint128_t)x14 * x13) + ((uint128_t)x13 * x14))) + x20) + x16);
- uint128_t x24 = ((((((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + ((uint128_t)x8 * x4))) + (((uint128_t)x12 * x13) + (((uint128_t)x14 * x14) + ((uint128_t)x13 * x12)))) + x21) + x17);
- uint128_t x25 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (((uint128_t)x10 * x13) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((uint128_t)x13 * x10)))));
- uint128_t x26 = (((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + ((uint128_t)x14 * x10)))) + x15);
- uint128_t x27 = (((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (((uint128_t)x10 * x12) + ((uint128_t)x12 * x10))) + x16);
- uint128_t x28 = ((((uint128_t)x2 * x2) + ((uint128_t)x10 * x10)) + x17);
- uint64_t x29 = (uint64_t) (x25 >> 0x34);
- uint64_t x30 = ((uint64_t)x25 & 0xfffffffffffff);
- uint64_t x31 = (uint64_t) (x18 >> 0x34);
- uint64_t x32 = ((uint64_t)x18 & 0xfffffffffffff);
- uint128_t x33 = (((uint128_t)0x10000000000000 * x31) + x32);
- uint64_t x34 = (uint64_t) (x33 >> 0x34);
- uint64_t x35 = ((uint64_t)x33 & 0xfffffffffffff);
- uint128_t x36 = ((x29 + x24) + x34);
- uint64_t x37 = (uint64_t) (x36 >> 0x34);
- uint64_t x38 = ((uint64_t)x36 & 0xfffffffffffff);
- uint128_t x39 = (x28 + x34);
- uint64_t x40 = (uint64_t) (x39 >> 0x34);
- uint64_t x41 = ((uint64_t)x39 & 0xfffffffffffff);
- uint128_t x42 = (x37 + x23);
- uint64_t x43 = (uint64_t) (x42 >> 0x34);
- uint64_t x44 = ((uint64_t)x42 & 0xfffffffffffff);
- uint128_t x45 = (x40 + x27);
- uint64_t x46 = (uint64_t) (x45 >> 0x34);
- uint64_t x47 = ((uint64_t)x45 & 0xfffffffffffff);
- uint128_t x48 = (x43 + x22);
- uint64_t x49 = (uint64_t) (x48 >> 0x34);
- uint64_t x50 = ((uint64_t)x48 & 0xfffffffffffff);
- uint128_t x51 = (x46 + x26);
- uint64_t x52 = (uint64_t) (x51 >> 0x34);
- uint64_t x53 = ((uint64_t)x51 & 0xfffffffffffff);
- uint64_t x54 = (x49 + x35);
- uint64_t x55 = (x54 >> 0x34);
- uint64_t x56 = (x54 & 0xfffffffffffff);
- uint64_t x57 = (x52 + x30);
- uint64_t x58 = (x57 >> 0x34);
- uint64_t x59 = (x57 & 0xfffffffffffff);
- uint64_t x60 = ((0x10000000000000 * x55) + x56);
- uint64_t x61 = (x60 >> 0x34);
- uint64_t x62 = (x60 & 0xfffffffffffff);
- uint64_t x63 = ((x58 + x38) + x61);
- uint64_t x64 = (x63 >> 0x34);
- uint64_t x65 = (x63 & 0xfffffffffffff);
- uint64_t x66 = (x41 + x61);
- uint64_t x67 = (x66 >> 0x34);
- uint64_t x68 = (x66 & 0xfffffffffffff);
- return (Return x62, Return x50, (x64 + x44), Return x65, Return x59, Return x53, (x67 + x47), Return x68))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e416m2e208m1_8limbs/fesquareDisplay.v b/src/Specific/solinas64_2e416m2e208m1_8limbs/fesquareDisplay.v
deleted file mode 100644
index 69b43c499..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e416m2e208m1_8limbs/fesub.c b/src/Specific/solinas64_2e416m2e208m1_8limbs/fesub.c
deleted file mode 100644
index 062dbfba7..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = ((0x1ffffffffffffe + x5) - x19);
- out[1] = ((0x1ffffffffffffe + x7) - x21);
- out[2] = ((0x1ffffffffffffe + x9) - x23);
- out[3] = ((0x1ffffffffffffe + x11) - x25);
- out[4] = ((0x1ffffffffffffc + x13) - x27);
- out[5] = ((0x1ffffffffffffe + x15) - x29);
- out[6] = ((0x1ffffffffffffe + x17) - x31);
- out[7] = ((0x1ffffffffffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e416m2e208m1_8limbs/fesub.v b/src/Specific/solinas64_2e416m2e208m1_8limbs/fesub.v
deleted file mode 100644
index 6beeb6097..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_8limbs.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/solinas64_2e416m2e208m1_8limbs/fesubDisplay.log b/src/Specific/solinas64_2e416m2e208m1_8limbs/fesubDisplay.log
deleted file mode 100644
index d2e418157..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0x1ffffffffffffe + x16) - x30), ((0x1ffffffffffffe + x17) - x31), ((0x1ffffffffffffe + x15) - x29), ((0x1ffffffffffffc + x13) - x27), ((0x1ffffffffffffe + x11) - x25), ((0x1ffffffffffffe + x9) - x23), ((0x1ffffffffffffe + x7) - x21), ((0x1ffffffffffffe + x5) - x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e416m2e208m1_8limbs/fesubDisplay.v b/src/Specific/solinas64_2e416m2e208m1_8limbs/fesubDisplay.v
deleted file mode 100644
index 2b528a81e..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e416m2e208m1_8limbs/freeze.c b/src/Specific/solinas64_2e416m2e208m1_8limbs/freeze.c
deleted file mode 100644
index 9c2472af2..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0xfffffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xfffffffffffff);
- { uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0xfffffffffffff);
- { uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0xffffffffffffe);
- { uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xfffffffffffff);
- { uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0xfffffffffffff);
- { uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0xfffffffffffff);
- { uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- { uint64_t x40 = (x39 & 0xfffffffffffff);
- { uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint64_t x44 = (x39 & 0xfffffffffffff);
- { uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint64_t x48 = (x39 & 0xfffffffffffff);
- { uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint64_t x52 = (x39 & 0xfffffffffffff);
- { uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint64_t x56 = (x39 & 0xffffffffffffe);
- { uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint64_t x60 = (x39 & 0xfffffffffffff);
- { uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint64_t x64 = (x39 & 0xfffffffffffff);
- { uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint64_t x68 = (x39 & 0xfffffffffffff);
- { uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e416m2e208m1_8limbs/freeze.v b/src/Specific/solinas64_2e416m2e208m1_8limbs/freeze.v
deleted file mode 100644
index 8a138284c..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_8limbs.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/solinas64_2e416m2e208m1_8limbs/freezeDisplay.log b/src/Specific/solinas64_2e416m2e208m1_8limbs/freezeDisplay.log
deleted file mode 100644
index 69c2c9bb3..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0xfffffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xfffffffffffff);
- uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0xfffffffffffff);
- uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0xffffffffffffe);
- uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xfffffffffffff);
- uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0xfffffffffffff);
- uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0xfffffffffffff);
- uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- uint64_t x40 = (x39 & 0xfffffffffffff);
- uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint64_t x44 = (x39 & 0xfffffffffffff);
- uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint64_t x48 = (x39 & 0xfffffffffffff);
- uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint64_t x52 = (x39 & 0xfffffffffffff);
- uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint64_t x56 = (x39 & 0xffffffffffffe);
- uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint64_t x60 = (x39 & 0xfffffffffffff);
- uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint64_t x64 = (x39 & 0xfffffffffffff);
- uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint64_t x68 = (x39 & 0xfffffffffffff);
- uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e416m2e208m1_8limbs/freezeDisplay.v b/src/Specific/solinas64_2e416m2e208m1_8limbs/freezeDisplay.v
deleted file mode 100644
index 63753e120..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e416m2e208m1_8limbs/py_interpreter.sh b/src/Specific/solinas64_2e416m2e208m1_8limbs/py_interpreter.sh
deleted file mode 100755
index 6071e4353..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**416 - 2**208 - 1' -Dmodulus_bytes='52' -Da24='121665'
diff --git a/src/Specific/solinas64_2e416m2e208m1_9limbs/CurveParameters.v b/src/Specific/solinas64_2e416m2e208m1_9limbs/CurveParameters.v
deleted file mode 100644
index cedac9027..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^416 - 2^208 - 1
-Base: 46 + 2/9
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 46 + 2/9;
- bitwidth := 64;
- s := 2^416;
- c := [(1, 1); (2^208, 1)];
- carry_chains := Some [[3; 8]; [4; 0; 5; 1; 6; 2; 7; 3; 8]; [4; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- 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/solinas64_2e416m2e208m1_9limbs/Synthesis.v b/src/Specific/solinas64_2e416m2e208m1_9limbs/Synthesis.v
deleted file mode 100644
index 756a7b9a7..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_9limbs.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/solinas64_2e416m2e208m1_9limbs/compiler.sh b/src/Specific/solinas64_2e416m2e208m1_9limbs/compiler.sh
deleted file mode 100755
index f2da83ba2..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,46,46,46,47,46,46,46,46}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' "$@"
diff --git a/src/Specific/solinas64_2e416m2e208m1_9limbs/compilerxx.sh b/src/Specific/solinas64_2e416m2e208m1_9limbs/compilerxx.sh
deleted file mode 100755
index bff5cdbb7..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,46,46,46,47,46,46,46,46}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='52' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<416) - (1_mpz<<208) - 1' "$@"
diff --git a/src/Specific/solinas64_2e416m2e208m1_9limbs/feadd.c b/src/Specific/solinas64_2e416m2e208m1_9limbs/feadd.c
deleted file mode 100644
index 98ab4434c..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e416m2e208m1_9limbs/feadd.v b/src/Specific/solinas64_2e416m2e208m1_9limbs/feadd.v
deleted file mode 100644
index 4ffeda906..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_9limbs.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/solinas64_2e416m2e208m1_9limbs/feaddDisplay.log b/src/Specific/solinas64_2e416m2e208m1_9limbs/feaddDisplay.log
deleted file mode 100644
index 3b92b1c5c..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e416m2e208m1_9limbs/feaddDisplay.v b/src/Specific/solinas64_2e416m2e208m1_9limbs/feaddDisplay.v
deleted file mode 100644
index da893766e..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e416m2e208m1_9limbs/fecarry.v b/src/Specific/solinas64_2e416m2e208m1_9limbs/fecarry.v
deleted file mode 100644
index b3bdf913c..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_9limbs.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/solinas64_2e416m2e208m1_9limbs/fecarryDisplay.v b/src/Specific/solinas64_2e416m2e208m1_9limbs/fecarryDisplay.v
deleted file mode 100644
index 198474fff..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e416m2e208m1_9limbs/femul.v b/src/Specific/solinas64_2e416m2e208m1_9limbs/femul.v
deleted file mode 100644
index cf8274d11..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_9limbs.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/solinas64_2e416m2e208m1_9limbs/femulDisplay.v b/src/Specific/solinas64_2e416m2e208m1_9limbs/femulDisplay.v
deleted file mode 100644
index 1e28b3376..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e416m2e208m1_9limbs/fesquare.v b/src/Specific/solinas64_2e416m2e208m1_9limbs/fesquare.v
deleted file mode 100644
index 9a2b32d83..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_9limbs.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/solinas64_2e416m2e208m1_9limbs/fesquareDisplay.v b/src/Specific/solinas64_2e416m2e208m1_9limbs/fesquareDisplay.v
deleted file mode 100644
index e2035e25b..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e416m2e208m1_9limbs/fesub.c b/src/Specific/solinas64_2e416m2e208m1_9limbs/fesub.c
deleted file mode 100644
index 684af71ed..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_9limbs/fesub.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void fesub(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- out[0] = ((0xfffffffffffe + x5) - x21);
- out[1] = ((0x7ffffffffffe + x7) - x23);
- out[2] = ((0x7ffffffffffe + x9) - x25);
- out[3] = ((0x7ffffffffffe + x11) - x27);
- out[4] = ((0xfffffefffffe + x13) - x29);
- out[5] = ((0x7ffffffffffe + x15) - x31);
- out[6] = ((0x7ffffffffffe + x17) - x33);
- out[7] = ((0x7ffffffffffe + x19) - x35);
- out[8] = ((0x7ffffffffffe + x18) - x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e416m2e208m1_9limbs/fesub.v b/src/Specific/solinas64_2e416m2e208m1_9limbs/fesub.v
deleted file mode 100644
index bd0cb2eef..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_9limbs.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/solinas64_2e416m2e208m1_9limbs/fesubDisplay.log b/src/Specific/solinas64_2e416m2e208m1_9limbs/fesubDisplay.log
deleted file mode 100644
index b445fd13f..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_9limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- (((0x7ffffffffffe + x18) - x34), ((0x7ffffffffffe + x19) - x35), ((0x7ffffffffffe + x17) - x33), ((0x7ffffffffffe + x15) - x31), ((0xfffffefffffe + x13) - x29), ((0x7ffffffffffe + x11) - x27), ((0x7ffffffffffe + x9) - x25), ((0x7ffffffffffe + x7) - x23), ((0xfffffffffffe + x5) - x21)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e416m2e208m1_9limbs/fesubDisplay.v b/src/Specific/solinas64_2e416m2e208m1_9limbs/fesubDisplay.v
deleted file mode 100644
index e665443fe..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e416m2e208m1_9limbs/freeze.c b/src/Specific/solinas64_2e416m2e208m1_9limbs/freeze.c
deleted file mode 100644
index cd35a2c42..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_9limbs/freeze.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void freeze(uint64_t out[9], const uint64_t in1[9]) {
- { const uint64_t x15 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x4, 0x3fffffffffff);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x6, 0x3fffffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x8, 0x3fffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x10, 0x7fffff7fffff);
- { uint64_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x12, 0x3fffffffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x34, Return x14, 0x3fffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x16, 0x3fffffffffff);
- { uint64_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x15, 0x3fffffffffff);
- { uint64_t x44 = cmovznz64(x43, 0x0, 0xffffffffffffffffL);
- { uint64_t x45 = (x44 & 0x7fffffffffff);
- { uint64_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- { uint64_t x49 = (x44 & 0x3fffffffffff);
- { uint64_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- { uint64_t x53 = (x44 & 0x3fffffffffff);
- { uint64_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- { uint64_t x57 = (x44 & 0x3fffffffffff);
- { uint64_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- { uint64_t x61 = (x44 & 0x7fffff7fffff);
- { uint64_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- { uint64_t x65 = (x44 & 0x3fffffffffff);
- { uint64_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- { uint64_t x69 = (x44 & 0x3fffffffffff);
- { uint64_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- { uint64_t x73 = (x44 & 0x3fffffffffff);
- { uint64_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- { uint64_t x77 = (x44 & 0x3fffffffffff);
- { uint64_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- out[0] = x47;
- out[1] = x51;
- out[2] = x55;
- out[3] = x59;
- out[4] = x63;
- out[5] = x67;
- out[6] = x71;
- out[7] = x75;
- out[8] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e416m2e208m1_9limbs/freeze.v b/src/Specific/solinas64_2e416m2e208m1_9limbs/freeze.v
deleted file mode 100644
index a0c5a8941..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_9limbs.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/solinas64_2e416m2e208m1_9limbs/freezeDisplay.log b/src/Specific/solinas64_2e416m2e208m1_9limbs/freezeDisplay.log
deleted file mode 100644
index afe8bd111..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x4, 0x3fffffffffff);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x6, 0x3fffffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x8, 0x3fffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x10, 0x7fffff7fffff);
- uint64_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x12, 0x3fffffffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x34, Return x14, 0x3fffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x16, 0x3fffffffffff);
- uint64_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x15, 0x3fffffffffff);
- uint64_t x44 = cmovznz64(x43, 0x0, 0xffffffffffffffffL);
- uint64_t x45 = (x44 & 0x7fffffffffff);
- uint64_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- uint64_t x49 = (x44 & 0x3fffffffffff);
- uint64_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- uint64_t x53 = (x44 & 0x3fffffffffff);
- uint64_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- uint64_t x57 = (x44 & 0x3fffffffffff);
- uint64_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- uint64_t x61 = (x44 & 0x7fffff7fffff);
- uint64_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- uint64_t x65 = (x44 & 0x3fffffffffff);
- uint64_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- uint64_t x69 = (x44 & 0x3fffffffffff);
- uint64_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- uint64_t x73 = (x44 & 0x3fffffffffff);
- uint64_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- uint64_t x77 = (x44 & 0x3fffffffffff);
- uint64_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- (Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x51, Return x47))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e416m2e208m1_9limbs/freezeDisplay.v b/src/Specific/solinas64_2e416m2e208m1_9limbs/freezeDisplay.v
deleted file mode 100644
index 91f8418bb..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e416m2e208m1_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e416m2e208m1_9limbs/py_interpreter.sh b/src/Specific/solinas64_2e416m2e208m1_9limbs/py_interpreter.sh
deleted file mode 100755
index 268bc14e4..000000000
--- a/src/Specific/solinas64_2e416m2e208m1_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**416 - 2**208 - 1' -Dmodulus_bytes='46 + 2/9' -Da24='121665'
diff --git a/src/Specific/solinas64_2e444m17_8limbs/CurveParameters.v b/src/Specific/solinas64_2e444m17_8limbs/CurveParameters.v
deleted file mode 100644
index 3b463bfb8..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^444 - 17
-Base: 55.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 55 + 1/2;
- bitwidth := 64;
- s := 2^444;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 8); [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/solinas64_2e444m17_8limbs/Synthesis.v b/src/Specific/solinas64_2e444m17_8limbs/Synthesis.v
deleted file mode 100644
index 5aa11ee85..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e444m17_8limbs.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/solinas64_2e444m17_8limbs/compiler.sh b/src/Specific/solinas64_2e444m17_8limbs/compiler.sh
deleted file mode 100755
index be50ba7e7..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,55,56,55,56,55,56,55}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<444) - 17' "$@"
diff --git a/src/Specific/solinas64_2e444m17_8limbs/compilerxx.sh b/src/Specific/solinas64_2e444m17_8limbs/compilerxx.sh
deleted file mode 100755
index 11925515c..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,55,56,55,56,55,56,55}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<444) - 17' "$@"
diff --git a/src/Specific/solinas64_2e444m17_8limbs/feadd.c b/src/Specific/solinas64_2e444m17_8limbs/feadd.c
deleted file mode 100644
index 4def6ee9c..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e444m17_8limbs/feadd.v b/src/Specific/solinas64_2e444m17_8limbs/feadd.v
deleted file mode 100644
index 66b44fc16..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e444m17_8limbs.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/solinas64_2e444m17_8limbs/feaddDisplay.log b/src/Specific/solinas64_2e444m17_8limbs/feaddDisplay.log
deleted file mode 100644
index 023fc8a31..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e444m17_8limbs/feaddDisplay.v b/src/Specific/solinas64_2e444m17_8limbs/feaddDisplay.v
deleted file mode 100644
index e3b05033b..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e444m17_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e444m17_8limbs/fecarry.v b/src/Specific/solinas64_2e444m17_8limbs/fecarry.v
deleted file mode 100644
index 15b28dd81..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e444m17_8limbs.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/solinas64_2e444m17_8limbs/fecarryDisplay.v b/src/Specific/solinas64_2e444m17_8limbs/fecarryDisplay.v
deleted file mode 100644
index 5d2384d17..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e444m17_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e444m17_8limbs/femul.c b/src/Specific/solinas64_2e444m17_8limbs/femul.c
deleted file mode 100644
index 5c0dca159..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint128_t x32 = (((uint128_t)x5 * x30) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + (((uint128_t)x17 * x21) + ((uint128_t)x16 * x19))))))));
- { uint128_t x33 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + (((uint128_t)x9 * x27) + ((0x2 * ((uint128_t)x11 * x25)) + (((uint128_t)x13 * x23) + ((0x2 * ((uint128_t)x15 * x21)) + ((uint128_t)x17 * x19))))))) + (0x11 * (0x2 * ((uint128_t)x16 * x30))));
- { uint128_t x34 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x15 * x19)))))) + (0x11 * (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))));
- { uint128_t x35 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + (((uint128_t)x9 * x23) + ((0x2 * ((uint128_t)x11 * x21)) + ((uint128_t)x13 * x19))))) + (0x11 * ((0x2 * ((uint128_t)x15 * x30)) + (((uint128_t)x17 * x31) + (0x2 * ((uint128_t)x16 * x29))))));
- { uint128_t x36 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (0x11 * (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27))))));
- { uint128_t x37 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((uint128_t)x9 * x19))) + (0x11 * ((0x2 * ((uint128_t)x11 * x30)) + (((uint128_t)x13 * x31) + ((0x2 * ((uint128_t)x15 * x29)) + (((uint128_t)x17 * x27) + (0x2 * ((uint128_t)x16 * x25))))))));
- { uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x11 * (((uint128_t)x9 * x30) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + ((uint128_t)x16 * x23))))))));
- { uint128_t x39 = (((uint128_t)x5 * x19) + (0x11 * ((0x2 * ((uint128_t)x7 * x30)) + (((uint128_t)x9 * x31) + ((0x2 * ((uint128_t)x11 * x29)) + (((uint128_t)x13 * x27) + ((0x2 * ((uint128_t)x15 * x25)) + (((uint128_t)x17 * x23) + (0x2 * ((uint128_t)x16 * x21))))))))));
- { uint128_t x40 = (x39 >> 0x38);
- { uint64_t x41 = ((uint64_t)x39 & 0xffffffffffffff);
- { uint128_t x42 = (x40 + x38);
- { uint128_t x43 = (x42 >> 0x37);
- { uint64_t x44 = ((uint64_t)x42 & 0x7fffffffffffff);
- { uint128_t x45 = (x43 + x37);
- { uint128_t x46 = (x45 >> 0x38);
- { uint64_t x47 = ((uint64_t)x45 & 0xffffffffffffff);
- { uint128_t x48 = (x46 + x36);
- { uint128_t x49 = (x48 >> 0x37);
- { uint64_t x50 = ((uint64_t)x48 & 0x7fffffffffffff);
- { uint128_t x51 = (x49 + x35);
- { uint128_t x52 = (x51 >> 0x38);
- { uint64_t x53 = ((uint64_t)x51 & 0xffffffffffffff);
- { uint128_t x54 = (x52 + x34);
- { uint128_t x55 = (x54 >> 0x37);
- { uint64_t x56 = ((uint64_t)x54 & 0x7fffffffffffff);
- { uint128_t x57 = (x55 + x33);
- { uint64_t x58 = (uint64_t) (x57 >> 0x38);
- { uint64_t x59 = ((uint64_t)x57 & 0xffffffffffffff);
- { uint128_t x60 = (x58 + x32);
- { uint64_t x61 = (uint64_t) (x60 >> 0x37);
- { uint64_t x62 = ((uint64_t)x60 & 0x7fffffffffffff);
- { uint128_t x63 = (x41 + ((uint128_t)0x11 * x61));
- { uint64_t x64 = (uint64_t) (x63 >> 0x38);
- { uint64_t x65 = ((uint64_t)x63 & 0xffffffffffffff);
- { uint64_t x66 = (x64 + x44);
- { uint64_t x67 = (x66 >> 0x37);
- { uint64_t x68 = (x66 & 0x7fffffffffffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e444m17_8limbs/femul.v b/src/Specific/solinas64_2e444m17_8limbs/femul.v
deleted file mode 100644
index e34252016..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e444m17_8limbs.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/solinas64_2e444m17_8limbs/femulDisplay.log b/src/Specific/solinas64_2e444m17_8limbs/femulDisplay.log
deleted file mode 100644
index 09148bf5d..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint128_t x32 = (((uint128_t)x5 * x30) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + (((uint128_t)x17 * x21) + ((uint128_t)x16 * x19))))))));
- uint128_t x33 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + (((uint128_t)x9 * x27) + ((0x2 * ((uint128_t)x11 * x25)) + (((uint128_t)x13 * x23) + ((0x2 * ((uint128_t)x15 * x21)) + ((uint128_t)x17 * x19))))))) + (0x11 * (0x2 * ((uint128_t)x16 * x30))));
- uint128_t x34 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x15 * x19)))))) + (0x11 * (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))));
- uint128_t x35 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + (((uint128_t)x9 * x23) + ((0x2 * ((uint128_t)x11 * x21)) + ((uint128_t)x13 * x19))))) + (0x11 * ((0x2 * ((uint128_t)x15 * x30)) + (((uint128_t)x17 * x31) + (0x2 * ((uint128_t)x16 * x29))))));
- uint128_t x36 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (0x11 * (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27))))));
- uint128_t x37 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((uint128_t)x9 * x19))) + (0x11 * ((0x2 * ((uint128_t)x11 * x30)) + (((uint128_t)x13 * x31) + ((0x2 * ((uint128_t)x15 * x29)) + (((uint128_t)x17 * x27) + (0x2 * ((uint128_t)x16 * x25))))))));
- uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x11 * (((uint128_t)x9 * x30) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + ((uint128_t)x16 * x23))))))));
- uint128_t x39 = (((uint128_t)x5 * x19) + (0x11 * ((0x2 * ((uint128_t)x7 * x30)) + (((uint128_t)x9 * x31) + ((0x2 * ((uint128_t)x11 * x29)) + (((uint128_t)x13 * x27) + ((0x2 * ((uint128_t)x15 * x25)) + (((uint128_t)x17 * x23) + (0x2 * ((uint128_t)x16 * x21))))))))));
- uint128_t x40 = (x39 >> 0x38);
- uint64_t x41 = ((uint64_t)x39 & 0xffffffffffffff);
- uint128_t x42 = (x40 + x38);
- uint128_t x43 = (x42 >> 0x37);
- uint64_t x44 = ((uint64_t)x42 & 0x7fffffffffffff);
- uint128_t x45 = (x43 + x37);
- uint128_t x46 = (x45 >> 0x38);
- uint64_t x47 = ((uint64_t)x45 & 0xffffffffffffff);
- uint128_t x48 = (x46 + x36);
- uint128_t x49 = (x48 >> 0x37);
- uint64_t x50 = ((uint64_t)x48 & 0x7fffffffffffff);
- uint128_t x51 = (x49 + x35);
- uint128_t x52 = (x51 >> 0x38);
- uint64_t x53 = ((uint64_t)x51 & 0xffffffffffffff);
- uint128_t x54 = (x52 + x34);
- uint128_t x55 = (x54 >> 0x37);
- uint64_t x56 = ((uint64_t)x54 & 0x7fffffffffffff);
- uint128_t x57 = (x55 + x33);
- uint64_t x58 = (uint64_t) (x57 >> 0x38);
- uint64_t x59 = ((uint64_t)x57 & 0xffffffffffffff);
- uint128_t x60 = (x58 + x32);
- uint64_t x61 = (uint64_t) (x60 >> 0x37);
- uint64_t x62 = ((uint64_t)x60 & 0x7fffffffffffff);
- uint128_t x63 = (x41 + ((uint128_t)0x11 * x61));
- uint64_t x64 = (uint64_t) (x63 >> 0x38);
- uint64_t x65 = ((uint64_t)x63 & 0xffffffffffffff);
- uint64_t x66 = (x64 + x44);
- uint64_t x67 = (x66 >> 0x37);
- uint64_t x68 = (x66 & 0x7fffffffffffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e444m17_8limbs/femulDisplay.v b/src/Specific/solinas64_2e444m17_8limbs/femulDisplay.v
deleted file mode 100644
index bf6d16f07..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e444m17_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e444m17_8limbs/fesquare.c b/src/Specific/solinas64_2e444m17_8limbs/fesquare.c
deleted file mode 100644
index a07f1f07a..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x15 = (((uint128_t)x2 * x13) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x13 * x2))))))));
- { uint128_t x16 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x11 * (0x2 * ((uint128_t)x13 * x13))));
- { uint128_t x17 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x11 * (((uint128_t)x14 * x13) + ((uint128_t)x13 * x14))));
- { uint128_t x18 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint128_t)x12 * x13)) + (((uint128_t)x14 * x14) + (0x2 * ((uint128_t)x13 * x12))))));
- { uint128_t x19 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x11 * (((uint128_t)x10 * x13) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((uint128_t)x13 * x10))))));
- { uint128_t x20 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x11 * ((0x2 * ((uint128_t)x8 * x13)) + (((uint128_t)x10 * x14) + ((0x2 * ((uint128_t)x12 * x12)) + (((uint128_t)x14 * x10) + (0x2 * ((uint128_t)x13 * x8))))))));
- { uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * (((uint128_t)x6 * x13) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + ((uint128_t)x13 * x6))))))));
- { uint128_t x22 = (((uint128_t)x2 * x2) + (0x11 * ((0x2 * ((uint128_t)x4 * x13)) + (((uint128_t)x6 * x14) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + (((uint128_t)x14 * x6) + (0x2 * ((uint128_t)x13 * x4))))))))));
- { uint128_t x23 = (x22 >> 0x38);
- { uint64_t x24 = ((uint64_t)x22 & 0xffffffffffffff);
- { uint128_t x25 = (x23 + x21);
- { uint128_t x26 = (x25 >> 0x37);
- { uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffffff);
- { uint128_t x28 = (x26 + x20);
- { uint128_t x29 = (x28 >> 0x38);
- { uint64_t x30 = ((uint64_t)x28 & 0xffffffffffffff);
- { uint128_t x31 = (x29 + x19);
- { uint128_t x32 = (x31 >> 0x37);
- { uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffffff);
- { uint128_t x34 = (x32 + x18);
- { uint128_t x35 = (x34 >> 0x38);
- { uint64_t x36 = ((uint64_t)x34 & 0xffffffffffffff);
- { uint128_t x37 = (x35 + x17);
- { uint128_t x38 = (x37 >> 0x37);
- { uint64_t x39 = ((uint64_t)x37 & 0x7fffffffffffff);
- { uint128_t x40 = (x38 + x16);
- { uint64_t x41 = (uint64_t) (x40 >> 0x38);
- { uint64_t x42 = ((uint64_t)x40 & 0xffffffffffffff);
- { uint128_t x43 = (x41 + x15);
- { uint64_t x44 = (uint64_t) (x43 >> 0x37);
- { uint64_t x45 = ((uint64_t)x43 & 0x7fffffffffffff);
- { uint128_t x46 = (x24 + ((uint128_t)0x11 * x44));
- { uint64_t x47 = (uint64_t) (x46 >> 0x38);
- { uint64_t x48 = ((uint64_t)x46 & 0xffffffffffffff);
- { uint64_t x49 = (x47 + x27);
- { uint64_t x50 = (x49 >> 0x37);
- { uint64_t x51 = (x49 & 0x7fffffffffffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e444m17_8limbs/fesquare.v b/src/Specific/solinas64_2e444m17_8limbs/fesquare.v
deleted file mode 100644
index 89ed54d86..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e444m17_8limbs.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/solinas64_2e444m17_8limbs/fesquareDisplay.log b/src/Specific/solinas64_2e444m17_8limbs/fesquareDisplay.log
deleted file mode 100644
index 0dedb616c..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x15 = (((uint128_t)x2 * x13) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x13 * x2))))))));
- uint128_t x16 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x11 * (0x2 * ((uint128_t)x13 * x13))));
- uint128_t x17 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x11 * (((uint128_t)x14 * x13) + ((uint128_t)x13 * x14))));
- uint128_t x18 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint128_t)x12 * x13)) + (((uint128_t)x14 * x14) + (0x2 * ((uint128_t)x13 * x12))))));
- uint128_t x19 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x11 * (((uint128_t)x10 * x13) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((uint128_t)x13 * x10))))));
- uint128_t x20 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x11 * ((0x2 * ((uint128_t)x8 * x13)) + (((uint128_t)x10 * x14) + ((0x2 * ((uint128_t)x12 * x12)) + (((uint128_t)x14 * x10) + (0x2 * ((uint128_t)x13 * x8))))))));
- uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * (((uint128_t)x6 * x13) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + ((uint128_t)x13 * x6))))))));
- uint128_t x22 = (((uint128_t)x2 * x2) + (0x11 * ((0x2 * ((uint128_t)x4 * x13)) + (((uint128_t)x6 * x14) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + (((uint128_t)x14 * x6) + (0x2 * ((uint128_t)x13 * x4))))))))));
- uint128_t x23 = (x22 >> 0x38);
- uint64_t x24 = ((uint64_t)x22 & 0xffffffffffffff);
- uint128_t x25 = (x23 + x21);
- uint128_t x26 = (x25 >> 0x37);
- uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffffff);
- uint128_t x28 = (x26 + x20);
- uint128_t x29 = (x28 >> 0x38);
- uint64_t x30 = ((uint64_t)x28 & 0xffffffffffffff);
- uint128_t x31 = (x29 + x19);
- uint128_t x32 = (x31 >> 0x37);
- uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffffff);
- uint128_t x34 = (x32 + x18);
- uint128_t x35 = (x34 >> 0x38);
- uint64_t x36 = ((uint64_t)x34 & 0xffffffffffffff);
- uint128_t x37 = (x35 + x17);
- uint128_t x38 = (x37 >> 0x37);
- uint64_t x39 = ((uint64_t)x37 & 0x7fffffffffffff);
- uint128_t x40 = (x38 + x16);
- uint64_t x41 = (uint64_t) (x40 >> 0x38);
- uint64_t x42 = ((uint64_t)x40 & 0xffffffffffffff);
- uint128_t x43 = (x41 + x15);
- uint64_t x44 = (uint64_t) (x43 >> 0x37);
- uint64_t x45 = ((uint64_t)x43 & 0x7fffffffffffff);
- uint128_t x46 = (x24 + ((uint128_t)0x11 * x44));
- uint64_t x47 = (uint64_t) (x46 >> 0x38);
- uint64_t x48 = ((uint64_t)x46 & 0xffffffffffffff);
- uint64_t x49 = (x47 + x27);
- uint64_t x50 = (x49 >> 0x37);
- uint64_t x51 = (x49 & 0x7fffffffffffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e444m17_8limbs/fesquareDisplay.v b/src/Specific/solinas64_2e444m17_8limbs/fesquareDisplay.v
deleted file mode 100644
index 6f4b45f5d..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e444m17_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e444m17_8limbs/fesub.c b/src/Specific/solinas64_2e444m17_8limbs/fesub.c
deleted file mode 100644
index 2fdfd6d8c..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = ((0x1ffffffffffffde + x5) - x19);
- out[1] = ((0xfffffffffffffe + x7) - x21);
- out[2] = ((0x1fffffffffffffe + x9) - x23);
- out[3] = ((0xfffffffffffffe + x11) - x25);
- out[4] = ((0x1fffffffffffffe + x13) - x27);
- out[5] = ((0xfffffffffffffe + x15) - x29);
- out[6] = ((0x1fffffffffffffe + x17) - x31);
- out[7] = ((0xfffffffffffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e444m17_8limbs/fesub.v b/src/Specific/solinas64_2e444m17_8limbs/fesub.v
deleted file mode 100644
index 34e7e62a2..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e444m17_8limbs.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/solinas64_2e444m17_8limbs/fesubDisplay.log b/src/Specific/solinas64_2e444m17_8limbs/fesubDisplay.log
deleted file mode 100644
index 5278335c6..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0xfffffffffffffe + x16) - x30), ((0x1fffffffffffffe + x17) - x31), ((0xfffffffffffffe + x15) - x29), ((0x1fffffffffffffe + x13) - x27), ((0xfffffffffffffe + x11) - x25), ((0x1fffffffffffffe + x9) - x23), ((0xfffffffffffffe + x7) - x21), ((0x1ffffffffffffde + x5) - x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e444m17_8limbs/fesubDisplay.v b/src/Specific/solinas64_2e444m17_8limbs/fesubDisplay.v
deleted file mode 100644
index a9f05892a..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e444m17_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e444m17_8limbs/freeze.c b/src/Specific/solinas64_2e444m17_8limbs/freeze.c
deleted file mode 100644
index 0d9ba24b8..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffffef);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0x7fffffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffffffffffff);
- { uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0x7fffffffffffff);
- { uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0xffffffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0x7fffffffffffff);
- { uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0xffffffffffffff);
- { uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0x7fffffffffffff);
- { uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- { uint64_t x40 = (x39 & 0xffffffffffffef);
- { uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint64_t x44 = (x39 & 0x7fffffffffffff);
- { uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint64_t x48 = (x39 & 0xffffffffffffff);
- { uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint64_t x52 = (x39 & 0x7fffffffffffff);
- { uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint64_t x56 = (x39 & 0xffffffffffffff);
- { uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint64_t x60 = (x39 & 0x7fffffffffffff);
- { uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint64_t x64 = (x39 & 0xffffffffffffff);
- { uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint64_t x68 = (x39 & 0x7fffffffffffff);
- { uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e444m17_8limbs/freeze.v b/src/Specific/solinas64_2e444m17_8limbs/freeze.v
deleted file mode 100644
index c9d6d1d8f..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e444m17_8limbs.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/solinas64_2e444m17_8limbs/freezeDisplay.log b/src/Specific/solinas64_2e444m17_8limbs/freezeDisplay.log
deleted file mode 100644
index dc8ee9522..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffffef);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0x7fffffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffffffffffff);
- uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0x7fffffffffffff);
- uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0xffffffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0x7fffffffffffff);
- uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0xffffffffffffff);
- uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0x7fffffffffffff);
- uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- uint64_t x40 = (x39 & 0xffffffffffffef);
- uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint64_t x44 = (x39 & 0x7fffffffffffff);
- uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint64_t x48 = (x39 & 0xffffffffffffff);
- uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint64_t x52 = (x39 & 0x7fffffffffffff);
- uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint64_t x56 = (x39 & 0xffffffffffffff);
- uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint64_t x60 = (x39 & 0x7fffffffffffff);
- uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint64_t x64 = (x39 & 0xffffffffffffff);
- uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint64_t x68 = (x39 & 0x7fffffffffffff);
- uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e444m17_8limbs/freezeDisplay.v b/src/Specific/solinas64_2e444m17_8limbs/freezeDisplay.v
deleted file mode 100644
index 13b76cdc3..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e444m17_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e444m17_8limbs/py_interpreter.sh b/src/Specific/solinas64_2e444m17_8limbs/py_interpreter.sh
deleted file mode 100755
index 2e96732a6..000000000
--- a/src/Specific/solinas64_2e444m17_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**444 - 17' -Dmodulus_bytes='55.5' -Da24='121665'
diff --git a/src/Specific/solinas64_2e444m17_9limbs/CurveParameters.v b/src/Specific/solinas64_2e444m17_9limbs/CurveParameters.v
deleted file mode 100644
index 651fbaaa3..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^444 - 17
-Base: 49 + 1/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 49 + 1/3;
- bitwidth := 64;
- s := 2^444;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 9); [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/solinas64_2e444m17_9limbs/Synthesis.v b/src/Specific/solinas64_2e444m17_9limbs/Synthesis.v
deleted file mode 100644
index 25a98b518..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e444m17_9limbs.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/solinas64_2e444m17_9limbs/compiler.sh b/src/Specific/solinas64_2e444m17_9limbs/compiler.sh
deleted file mode 100755
index fe889396e..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{50,49,49,50,49,49,50,49,49}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<444) - 17' "$@"
diff --git a/src/Specific/solinas64_2e444m17_9limbs/compilerxx.sh b/src/Specific/solinas64_2e444m17_9limbs/compilerxx.sh
deleted file mode 100755
index 24c95fdfd..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{50,49,49,50,49,49,50,49,49}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<444) - 17' "$@"
diff --git a/src/Specific/solinas64_2e444m17_9limbs/feadd.c b/src/Specific/solinas64_2e444m17_9limbs/feadd.c
deleted file mode 100644
index 98ab4434c..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e444m17_9limbs/feadd.v b/src/Specific/solinas64_2e444m17_9limbs/feadd.v
deleted file mode 100644
index 4d3c5ccc3..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e444m17_9limbs.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/solinas64_2e444m17_9limbs/feaddDisplay.log b/src/Specific/solinas64_2e444m17_9limbs/feaddDisplay.log
deleted file mode 100644
index 3b92b1c5c..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e444m17_9limbs/feaddDisplay.v b/src/Specific/solinas64_2e444m17_9limbs/feaddDisplay.v
deleted file mode 100644
index 9e602ade3..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e444m17_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e444m17_9limbs/fecarry.v b/src/Specific/solinas64_2e444m17_9limbs/fecarry.v
deleted file mode 100644
index 6291da841..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e444m17_9limbs.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/solinas64_2e444m17_9limbs/fecarryDisplay.v b/src/Specific/solinas64_2e444m17_9limbs/fecarryDisplay.v
deleted file mode 100644
index b164c8f3d..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e444m17_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e444m17_9limbs/femul.c b/src/Specific/solinas64_2e444m17_9limbs/femul.c
deleted file mode 100644
index be4f0fd3f..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/femul.c
+++ /dev/null
@@ -1,71 +0,0 @@
-static void femul(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- { uint128_t x36 = (((uint128_t)x5 * x34) + ((0x2 * ((uint128_t)x7 * x35)) + (((uint128_t)x9 * x33) + (((uint128_t)x11 * x31) + ((0x2 * ((uint128_t)x13 * x29)) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + ((0x2 * ((uint128_t)x19 * x23)) + ((uint128_t)x18 * x21)))))))));
- { uint128_t x37 = ((((uint128_t)x5 * x35) + (((uint128_t)x7 * x33) + (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + (((uint128_t)x17 * x23) + ((uint128_t)x19 * x21)))))))) + (0x11 * ((uint128_t)x18 * x34)));
- { uint128_t x38 = ((((uint128_t)x5 * x33) + ((0x2 * ((uint128_t)x7 * x31)) + ((0x2 * ((uint128_t)x9 * x29)) + (((uint128_t)x11 * x27) + ((0x2 * ((uint128_t)x13 * x25)) + ((0x2 * ((uint128_t)x15 * x23)) + ((uint128_t)x17 * x21))))))) + (0x11 * ((0x2 * ((uint128_t)x19 * x34)) + (0x2 * ((uint128_t)x18 * x35)))));
- { uint128_t x39 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + ((0x2 * ((uint128_t)x13 * x23)) + ((uint128_t)x15 * x21)))))) + (0x11 * (((uint128_t)x17 * x34) + ((0x2 * ((uint128_t)x19 * x35)) + ((uint128_t)x18 * x33)))));
- { uint128_t x40 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + ((uint128_t)x13 * x21))))) + (0x11 * (((uint128_t)x15 * x34) + (((uint128_t)x17 * x35) + (((uint128_t)x19 * x33) + ((uint128_t)x18 * x31))))));
- { uint128_t x41 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + ((uint128_t)x11 * x21)))) + (0x11 * ((0x2 * ((uint128_t)x13 * x34)) + ((0x2 * ((uint128_t)x15 * x35)) + (((uint128_t)x17 * x33) + ((0x2 * ((uint128_t)x19 * x31)) + (0x2 * ((uint128_t)x18 * x29))))))));
- { uint128_t x42 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((uint128_t)x9 * x21))) + (0x11 * (((uint128_t)x11 * x34) + ((0x2 * ((uint128_t)x13 * x35)) + (((uint128_t)x15 * x33) + (((uint128_t)x17 * x31) + ((0x2 * ((uint128_t)x19 * x29)) + ((uint128_t)x18 * x27))))))));
- { uint128_t x43 = ((((uint128_t)x5 * x23) + ((uint128_t)x7 * x21)) + (0x11 * (((uint128_t)x9 * x34) + (((uint128_t)x11 * x35) + (((uint128_t)x13 * x33) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + (((uint128_t)x19 * x27) + ((uint128_t)x18 * x25)))))))));
- { uint128_t x44 = (((uint128_t)x5 * x21) + (0x11 * ((0x2 * ((uint128_t)x7 * x34)) + ((0x2 * ((uint128_t)x9 * x35)) + (((uint128_t)x11 * x33) + ((0x2 * ((uint128_t)x13 * x31)) + ((0x2 * ((uint128_t)x15 * x29)) + (((uint128_t)x17 * x27) + ((0x2 * ((uint128_t)x19 * x25)) + (0x2 * ((uint128_t)x18 * x23)))))))))));
- { uint64_t x45 = (uint64_t) (x44 >> 0x32);
- { uint64_t x46 = ((uint64_t)x44 & 0x3ffffffffffff);
- { uint128_t x47 = (x45 + x43);
- { uint64_t x48 = (uint64_t) (x47 >> 0x31);
- { uint64_t x49 = ((uint64_t)x47 & 0x1ffffffffffff);
- { uint128_t x50 = (x48 + x42);
- { uint64_t x51 = (uint64_t) (x50 >> 0x31);
- { uint64_t x52 = ((uint64_t)x50 & 0x1ffffffffffff);
- { uint128_t x53 = (x51 + x41);
- { uint64_t x54 = (uint64_t) (x53 >> 0x32);
- { uint64_t x55 = ((uint64_t)x53 & 0x3ffffffffffff);
- { uint128_t x56 = (x54 + x40);
- { uint64_t x57 = (uint64_t) (x56 >> 0x31);
- { uint64_t x58 = ((uint64_t)x56 & 0x1ffffffffffff);
- { uint128_t x59 = (x57 + x39);
- { uint64_t x60 = (uint64_t) (x59 >> 0x31);
- { uint64_t x61 = ((uint64_t)x59 & 0x1ffffffffffff);
- { uint128_t x62 = (x60 + x38);
- { uint64_t x63 = (uint64_t) (x62 >> 0x32);
- { uint64_t x64 = ((uint64_t)x62 & 0x3ffffffffffff);
- { uint128_t x65 = (x63 + x37);
- { uint64_t x66 = (uint64_t) (x65 >> 0x31);
- { uint64_t x67 = ((uint64_t)x65 & 0x1ffffffffffff);
- { uint128_t x68 = (x66 + x36);
- { uint64_t x69 = (uint64_t) (x68 >> 0x31);
- { uint64_t x70 = ((uint64_t)x68 & 0x1ffffffffffff);
- { uint64_t x71 = (x46 + (0x11 * x69));
- { uint64_t x72 = (x71 >> 0x32);
- { uint64_t x73 = (x71 & 0x3ffffffffffff);
- { uint64_t x74 = (x72 + x49);
- { uint64_t x75 = (x74 >> 0x31);
- { uint64_t x76 = (x74 & 0x1ffffffffffff);
- out[0] = x73;
- out[1] = x76;
- out[2] = (x75 + x52);
- out[3] = x55;
- out[4] = x58;
- out[5] = x61;
- out[6] = x64;
- out[7] = x67;
- out[8] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e444m17_9limbs/femul.v b/src/Specific/solinas64_2e444m17_9limbs/femul.v
deleted file mode 100644
index 3ce978a7e..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e444m17_9limbs.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/solinas64_2e444m17_9limbs/femulDisplay.log b/src/Specific/solinas64_2e444m17_9limbs/femulDisplay.log
deleted file mode 100644
index eceab8516..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/femulDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint128_t x36 = (((uint128_t)x5 * x34) + ((0x2 * ((uint128_t)x7 * x35)) + (((uint128_t)x9 * x33) + (((uint128_t)x11 * x31) + ((0x2 * ((uint128_t)x13 * x29)) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + ((0x2 * ((uint128_t)x19 * x23)) + ((uint128_t)x18 * x21)))))))));
- uint128_t x37 = ((((uint128_t)x5 * x35) + (((uint128_t)x7 * x33) + (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + (((uint128_t)x17 * x23) + ((uint128_t)x19 * x21)))))))) + (0x11 * ((uint128_t)x18 * x34)));
- uint128_t x38 = ((((uint128_t)x5 * x33) + ((0x2 * ((uint128_t)x7 * x31)) + ((0x2 * ((uint128_t)x9 * x29)) + (((uint128_t)x11 * x27) + ((0x2 * ((uint128_t)x13 * x25)) + ((0x2 * ((uint128_t)x15 * x23)) + ((uint128_t)x17 * x21))))))) + (0x11 * ((0x2 * ((uint128_t)x19 * x34)) + (0x2 * ((uint128_t)x18 * x35)))));
- uint128_t x39 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + ((0x2 * ((uint128_t)x13 * x23)) + ((uint128_t)x15 * x21)))))) + (0x11 * (((uint128_t)x17 * x34) + ((0x2 * ((uint128_t)x19 * x35)) + ((uint128_t)x18 * x33)))));
- uint128_t x40 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + ((uint128_t)x13 * x21))))) + (0x11 * (((uint128_t)x15 * x34) + (((uint128_t)x17 * x35) + (((uint128_t)x19 * x33) + ((uint128_t)x18 * x31))))));
- uint128_t x41 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + ((uint128_t)x11 * x21)))) + (0x11 * ((0x2 * ((uint128_t)x13 * x34)) + ((0x2 * ((uint128_t)x15 * x35)) + (((uint128_t)x17 * x33) + ((0x2 * ((uint128_t)x19 * x31)) + (0x2 * ((uint128_t)x18 * x29))))))));
- uint128_t x42 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((uint128_t)x9 * x21))) + (0x11 * (((uint128_t)x11 * x34) + ((0x2 * ((uint128_t)x13 * x35)) + (((uint128_t)x15 * x33) + (((uint128_t)x17 * x31) + ((0x2 * ((uint128_t)x19 * x29)) + ((uint128_t)x18 * x27))))))));
- uint128_t x43 = ((((uint128_t)x5 * x23) + ((uint128_t)x7 * x21)) + (0x11 * (((uint128_t)x9 * x34) + (((uint128_t)x11 * x35) + (((uint128_t)x13 * x33) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + (((uint128_t)x19 * x27) + ((uint128_t)x18 * x25)))))))));
- uint128_t x44 = (((uint128_t)x5 * x21) + (0x11 * ((0x2 * ((uint128_t)x7 * x34)) + ((0x2 * ((uint128_t)x9 * x35)) + (((uint128_t)x11 * x33) + ((0x2 * ((uint128_t)x13 * x31)) + ((0x2 * ((uint128_t)x15 * x29)) + (((uint128_t)x17 * x27) + ((0x2 * ((uint128_t)x19 * x25)) + (0x2 * ((uint128_t)x18 * x23)))))))))));
- uint64_t x45 = (uint64_t) (x44 >> 0x32);
- uint64_t x46 = ((uint64_t)x44 & 0x3ffffffffffff);
- uint128_t x47 = (x45 + x43);
- uint64_t x48 = (uint64_t) (x47 >> 0x31);
- uint64_t x49 = ((uint64_t)x47 & 0x1ffffffffffff);
- uint128_t x50 = (x48 + x42);
- uint64_t x51 = (uint64_t) (x50 >> 0x31);
- uint64_t x52 = ((uint64_t)x50 & 0x1ffffffffffff);
- uint128_t x53 = (x51 + x41);
- uint64_t x54 = (uint64_t) (x53 >> 0x32);
- uint64_t x55 = ((uint64_t)x53 & 0x3ffffffffffff);
- uint128_t x56 = (x54 + x40);
- uint64_t x57 = (uint64_t) (x56 >> 0x31);
- uint64_t x58 = ((uint64_t)x56 & 0x1ffffffffffff);
- uint128_t x59 = (x57 + x39);
- uint64_t x60 = (uint64_t) (x59 >> 0x31);
- uint64_t x61 = ((uint64_t)x59 & 0x1ffffffffffff);
- uint128_t x62 = (x60 + x38);
- uint64_t x63 = (uint64_t) (x62 >> 0x32);
- uint64_t x64 = ((uint64_t)x62 & 0x3ffffffffffff);
- uint128_t x65 = (x63 + x37);
- uint64_t x66 = (uint64_t) (x65 >> 0x31);
- uint64_t x67 = ((uint64_t)x65 & 0x1ffffffffffff);
- uint128_t x68 = (x66 + x36);
- uint64_t x69 = (uint64_t) (x68 >> 0x31);
- uint64_t x70 = ((uint64_t)x68 & 0x1ffffffffffff);
- uint64_t x71 = (x46 + (0x11 * x69));
- uint64_t x72 = (x71 >> 0x32);
- uint64_t x73 = (x71 & 0x3ffffffffffff);
- uint64_t x74 = (x72 + x49);
- uint64_t x75 = (x74 >> 0x31);
- uint64_t x76 = (x74 & 0x1ffffffffffff);
- return (Return x70, Return x67, Return x64, Return x61, Return x58, Return x55, (x75 + x52), Return x76, Return x73))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e444m17_9limbs/femulDisplay.v b/src/Specific/solinas64_2e444m17_9limbs/femulDisplay.v
deleted file mode 100644
index 1c5db36dc..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e444m17_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e444m17_9limbs/fesquare.c b/src/Specific/solinas64_2e444m17_9limbs/fesquare.c
deleted file mode 100644
index d95ba3585..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/fesquare.c
+++ /dev/null
@@ -1,62 +0,0 @@
-static void fesquare(uint64_t out[9], const uint64_t in1[9]) {
- { const uint64_t x15 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x17 = (((uint128_t)x2 * x15) + ((0x2 * ((uint128_t)x4 * x16)) + (((uint128_t)x6 * x14) + (((uint128_t)x8 * x12) + ((0x2 * ((uint128_t)x10 * x10)) + (((uint128_t)x12 * x8) + (((uint128_t)x14 * x6) + ((0x2 * ((uint128_t)x16 * x4)) + ((uint128_t)x15 * x2)))))))));
- { uint128_t x18 = ((((uint128_t)x2 * x16) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x16 * x2)))))))) + (0x11 * ((uint128_t)x15 * x15)));
- { uint128_t x19 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x11 * ((0x2 * ((uint128_t)x16 * x15)) + (0x2 * ((uint128_t)x15 * x16)))));
- { uint128_t x20 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x11 * (((uint128_t)x14 * x15) + ((0x2 * ((uint128_t)x16 * x16)) + ((uint128_t)x15 * x14)))));
- { uint128_t x21 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x11 * (((uint128_t)x12 * x15) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + ((uint128_t)x15 * x12))))));
- { uint128_t x22 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x11 * ((0x2 * ((uint128_t)x10 * x15)) + ((0x2 * ((uint128_t)x12 * x16)) + (((uint128_t)x14 * x14) + ((0x2 * ((uint128_t)x16 * x12)) + (0x2 * ((uint128_t)x15 * x10))))))));
- { uint128_t x23 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x11 * (((uint128_t)x8 * x15) + ((0x2 * ((uint128_t)x10 * x16)) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((0x2 * ((uint128_t)x16 * x10)) + ((uint128_t)x15 * x8))))))));
- { uint128_t x24 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * (((uint128_t)x6 * x15) + (((uint128_t)x8 * x16) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + (((uint128_t)x14 * x10) + (((uint128_t)x16 * x8) + ((uint128_t)x15 * x6)))))))));
- { uint128_t x25 = (((uint128_t)x2 * x2) + (0x11 * ((0x2 * ((uint128_t)x4 * x15)) + ((0x2 * ((uint128_t)x6 * x16)) + (((uint128_t)x8 * x14) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + (((uint128_t)x14 * x8) + ((0x2 * ((uint128_t)x16 * x6)) + (0x2 * ((uint128_t)x15 * x4)))))))))));
- { uint64_t x26 = (uint64_t) (x25 >> 0x32);
- { uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffffff);
- { uint128_t x28 = (x26 + x24);
- { uint64_t x29 = (uint64_t) (x28 >> 0x31);
- { uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffffff);
- { uint128_t x31 = (x29 + x23);
- { uint64_t x32 = (uint64_t) (x31 >> 0x31);
- { uint64_t x33 = ((uint64_t)x31 & 0x1ffffffffffff);
- { uint128_t x34 = (x32 + x22);
- { uint64_t x35 = (uint64_t) (x34 >> 0x32);
- { uint64_t x36 = ((uint64_t)x34 & 0x3ffffffffffff);
- { uint128_t x37 = (x35 + x21);
- { uint64_t x38 = (uint64_t) (x37 >> 0x31);
- { uint64_t x39 = ((uint64_t)x37 & 0x1ffffffffffff);
- { uint128_t x40 = (x38 + x20);
- { uint64_t x41 = (uint64_t) (x40 >> 0x31);
- { uint64_t x42 = ((uint64_t)x40 & 0x1ffffffffffff);
- { uint128_t x43 = (x41 + x19);
- { uint64_t x44 = (uint64_t) (x43 >> 0x32);
- { uint64_t x45 = ((uint64_t)x43 & 0x3ffffffffffff);
- { uint128_t x46 = (x44 + x18);
- { uint64_t x47 = (uint64_t) (x46 >> 0x31);
- { uint64_t x48 = ((uint64_t)x46 & 0x1ffffffffffff);
- { uint128_t x49 = (x47 + x17);
- { uint64_t x50 = (uint64_t) (x49 >> 0x31);
- { uint64_t x51 = ((uint64_t)x49 & 0x1ffffffffffff);
- { uint64_t x52 = (x27 + (0x11 * x50));
- { uint64_t x53 = (x52 >> 0x32);
- { uint64_t x54 = (x52 & 0x3ffffffffffff);
- { uint64_t x55 = (x53 + x30);
- { uint64_t x56 = (x55 >> 0x31);
- { uint64_t x57 = (x55 & 0x1ffffffffffff);
- out[0] = x54;
- out[1] = x57;
- out[2] = (x56 + x33);
- out[3] = x36;
- out[4] = x39;
- out[5] = x42;
- out[6] = x45;
- out[7] = x48;
- out[8] = x51;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e444m17_9limbs/fesquare.v b/src/Specific/solinas64_2e444m17_9limbs/fesquare.v
deleted file mode 100644
index 0ce1f5222..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e444m17_9limbs.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/solinas64_2e444m17_9limbs/fesquareDisplay.log b/src/Specific/solinas64_2e444m17_9limbs/fesquareDisplay.log
deleted file mode 100644
index 3b35d498a..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x17 = (((uint128_t)x2 * x15) + ((0x2 * ((uint128_t)x4 * x16)) + (((uint128_t)x6 * x14) + (((uint128_t)x8 * x12) + ((0x2 * ((uint128_t)x10 * x10)) + (((uint128_t)x12 * x8) + (((uint128_t)x14 * x6) + ((0x2 * ((uint128_t)x16 * x4)) + ((uint128_t)x15 * x2)))))))));
- uint128_t x18 = ((((uint128_t)x2 * x16) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x16 * x2)))))))) + (0x11 * ((uint128_t)x15 * x15)));
- uint128_t x19 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x11 * ((0x2 * ((uint128_t)x16 * x15)) + (0x2 * ((uint128_t)x15 * x16)))));
- uint128_t x20 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x11 * (((uint128_t)x14 * x15) + ((0x2 * ((uint128_t)x16 * x16)) + ((uint128_t)x15 * x14)))));
- uint128_t x21 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x11 * (((uint128_t)x12 * x15) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + ((uint128_t)x15 * x12))))));
- uint128_t x22 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x11 * ((0x2 * ((uint128_t)x10 * x15)) + ((0x2 * ((uint128_t)x12 * x16)) + (((uint128_t)x14 * x14) + ((0x2 * ((uint128_t)x16 * x12)) + (0x2 * ((uint128_t)x15 * x10))))))));
- uint128_t x23 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x11 * (((uint128_t)x8 * x15) + ((0x2 * ((uint128_t)x10 * x16)) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((0x2 * ((uint128_t)x16 * x10)) + ((uint128_t)x15 * x8))))))));
- uint128_t x24 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * (((uint128_t)x6 * x15) + (((uint128_t)x8 * x16) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + (((uint128_t)x14 * x10) + (((uint128_t)x16 * x8) + ((uint128_t)x15 * x6)))))))));
- uint128_t x25 = (((uint128_t)x2 * x2) + (0x11 * ((0x2 * ((uint128_t)x4 * x15)) + ((0x2 * ((uint128_t)x6 * x16)) + (((uint128_t)x8 * x14) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + (((uint128_t)x14 * x8) + ((0x2 * ((uint128_t)x16 * x6)) + (0x2 * ((uint128_t)x15 * x4)))))))))));
- uint64_t x26 = (uint64_t) (x25 >> 0x32);
- uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffffff);
- uint128_t x28 = (x26 + x24);
- uint64_t x29 = (uint64_t) (x28 >> 0x31);
- uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffffff);
- uint128_t x31 = (x29 + x23);
- uint64_t x32 = (uint64_t) (x31 >> 0x31);
- uint64_t x33 = ((uint64_t)x31 & 0x1ffffffffffff);
- uint128_t x34 = (x32 + x22);
- uint64_t x35 = (uint64_t) (x34 >> 0x32);
- uint64_t x36 = ((uint64_t)x34 & 0x3ffffffffffff);
- uint128_t x37 = (x35 + x21);
- uint64_t x38 = (uint64_t) (x37 >> 0x31);
- uint64_t x39 = ((uint64_t)x37 & 0x1ffffffffffff);
- uint128_t x40 = (x38 + x20);
- uint64_t x41 = (uint64_t) (x40 >> 0x31);
- uint64_t x42 = ((uint64_t)x40 & 0x1ffffffffffff);
- uint128_t x43 = (x41 + x19);
- uint64_t x44 = (uint64_t) (x43 >> 0x32);
- uint64_t x45 = ((uint64_t)x43 & 0x3ffffffffffff);
- uint128_t x46 = (x44 + x18);
- uint64_t x47 = (uint64_t) (x46 >> 0x31);
- uint64_t x48 = ((uint64_t)x46 & 0x1ffffffffffff);
- uint128_t x49 = (x47 + x17);
- uint64_t x50 = (uint64_t) (x49 >> 0x31);
- uint64_t x51 = ((uint64_t)x49 & 0x1ffffffffffff);
- uint64_t x52 = (x27 + (0x11 * x50));
- uint64_t x53 = (x52 >> 0x32);
- uint64_t x54 = (x52 & 0x3ffffffffffff);
- uint64_t x55 = (x53 + x30);
- uint64_t x56 = (x55 >> 0x31);
- uint64_t x57 = (x55 & 0x1ffffffffffff);
- return (Return x51, Return x48, Return x45, Return x42, Return x39, Return x36, (x56 + x33), Return x57, Return x54))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e444m17_9limbs/fesquareDisplay.v b/src/Specific/solinas64_2e444m17_9limbs/fesquareDisplay.v
deleted file mode 100644
index ddfd2934c..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e444m17_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e444m17_9limbs/fesub.c b/src/Specific/solinas64_2e444m17_9limbs/fesub.c
deleted file mode 100644
index 0dadcf875..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/fesub.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void fesub(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- out[0] = ((0x7ffffffffffde + x5) - x21);
- out[1] = ((0x3fffffffffffe + x7) - x23);
- out[2] = ((0x3fffffffffffe + x9) - x25);
- out[3] = ((0x7fffffffffffe + x11) - x27);
- out[4] = ((0x3fffffffffffe + x13) - x29);
- out[5] = ((0x3fffffffffffe + x15) - x31);
- out[6] = ((0x7fffffffffffe + x17) - x33);
- out[7] = ((0x3fffffffffffe + x19) - x35);
- out[8] = ((0x3fffffffffffe + x18) - x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e444m17_9limbs/fesub.v b/src/Specific/solinas64_2e444m17_9limbs/fesub.v
deleted file mode 100644
index 6ca41a278..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e444m17_9limbs.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/solinas64_2e444m17_9limbs/fesubDisplay.log b/src/Specific/solinas64_2e444m17_9limbs/fesubDisplay.log
deleted file mode 100644
index 869ed0113..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- (((0x3fffffffffffe + x18) - x34), ((0x3fffffffffffe + x19) - x35), ((0x7fffffffffffe + x17) - x33), ((0x3fffffffffffe + x15) - x31), ((0x3fffffffffffe + x13) - x29), ((0x7fffffffffffe + x11) - x27), ((0x3fffffffffffe + x9) - x25), ((0x3fffffffffffe + x7) - x23), ((0x7ffffffffffde + x5) - x21)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e444m17_9limbs/fesubDisplay.v b/src/Specific/solinas64_2e444m17_9limbs/fesubDisplay.v
deleted file mode 100644
index 2c17bd558..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e444m17_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e444m17_9limbs/freeze.c b/src/Specific/solinas64_2e444m17_9limbs/freeze.c
deleted file mode 100644
index f4885292d..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/freeze.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void freeze(uint64_t out[9], const uint64_t in1[9]) {
- { const uint64_t x15 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffffef);
- { uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x4, 0x1ffffffffffff);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x6, 0x1ffffffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x8, 0x3ffffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x10, 0x1ffffffffffff);
- { uint64_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x12, 0x1ffffffffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x34, Return x14, 0x3ffffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x16, 0x1ffffffffffff);
- { uint64_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x15, 0x1ffffffffffff);
- { uint64_t x44 = cmovznz64(x43, 0x0, 0xffffffffffffffffL);
- { uint64_t x45 = (x44 & 0x3ffffffffffef);
- { uint64_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- { uint64_t x49 = (x44 & 0x1ffffffffffff);
- { uint64_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- { uint64_t x53 = (x44 & 0x1ffffffffffff);
- { uint64_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- { uint64_t x57 = (x44 & 0x3ffffffffffff);
- { uint64_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- { uint64_t x61 = (x44 & 0x1ffffffffffff);
- { uint64_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- { uint64_t x65 = (x44 & 0x1ffffffffffff);
- { uint64_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- { uint64_t x69 = (x44 & 0x3ffffffffffff);
- { uint64_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- { uint64_t x73 = (x44 & 0x1ffffffffffff);
- { uint64_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- { uint64_t x77 = (x44 & 0x1ffffffffffff);
- { uint64_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- out[0] = x47;
- out[1] = x51;
- out[2] = x55;
- out[3] = x59;
- out[4] = x63;
- out[5] = x67;
- out[6] = x71;
- out[7] = x75;
- out[8] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e444m17_9limbs/freeze.v b/src/Specific/solinas64_2e444m17_9limbs/freeze.v
deleted file mode 100644
index b1fcd1329..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e444m17_9limbs.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/solinas64_2e444m17_9limbs/freezeDisplay.log b/src/Specific/solinas64_2e444m17_9limbs/freezeDisplay.log
deleted file mode 100644
index c59478f3f..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffffef);
- uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x4, 0x1ffffffffffff);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x6, 0x1ffffffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x8, 0x3ffffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x10, 0x1ffffffffffff);
- uint64_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x12, 0x1ffffffffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x34, Return x14, 0x3ffffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x16, 0x1ffffffffffff);
- uint64_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x15, 0x1ffffffffffff);
- uint64_t x44 = cmovznz64(x43, 0x0, 0xffffffffffffffffL);
- uint64_t x45 = (x44 & 0x3ffffffffffef);
- uint64_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- uint64_t x49 = (x44 & 0x1ffffffffffff);
- uint64_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- uint64_t x53 = (x44 & 0x1ffffffffffff);
- uint64_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- uint64_t x57 = (x44 & 0x3ffffffffffff);
- uint64_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- uint64_t x61 = (x44 & 0x1ffffffffffff);
- uint64_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- uint64_t x65 = (x44 & 0x1ffffffffffff);
- uint64_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- uint64_t x69 = (x44 & 0x3ffffffffffff);
- uint64_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- uint64_t x73 = (x44 & 0x1ffffffffffff);
- uint64_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- uint64_t x77 = (x44 & 0x1ffffffffffff);
- uint64_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- (Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x51, Return x47))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e444m17_9limbs/freezeDisplay.v b/src/Specific/solinas64_2e444m17_9limbs/freezeDisplay.v
deleted file mode 100644
index 970ab79ea..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e444m17_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e444m17_9limbs/py_interpreter.sh b/src/Specific/solinas64_2e444m17_9limbs/py_interpreter.sh
deleted file mode 100755
index f79978a5c..000000000
--- a/src/Specific/solinas64_2e444m17_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**444 - 17' -Dmodulus_bytes='49 + 1/3' -Da24='121665'
diff --git a/src/Specific/solinas64_2e448m2e224m1_10limbs/CurveParameters.v b/src/Specific/solinas64_2e448m2e224m1_10limbs/CurveParameters.v
deleted file mode 100644
index aeafa11e0..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^448 - 2^224 - 1
-Base: 44.8
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 44 + 4/5;
- bitwidth := 64;
- s := 2^448;
- c := [(1, 1); (2^224, 1)];
- carry_chains := Some [[4; 9]; [5; 0; 6; 1; 7; 2; 8; 3; 9; 4]; [5; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- 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/solinas64_2e448m2e224m1_10limbs/Synthesis.v b/src/Specific/solinas64_2e448m2e224m1_10limbs/Synthesis.v
deleted file mode 100644
index 5ac37f3ce..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_10limbs.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/solinas64_2e448m2e224m1_10limbs/compiler.sh b/src/Specific/solinas64_2e448m2e224m1_10limbs/compiler.sh
deleted file mode 100755
index bd5762789..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{45,45,45,45,44,45,45,45,45,44}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1' "$@"
diff --git a/src/Specific/solinas64_2e448m2e224m1_10limbs/compilerxx.sh b/src/Specific/solinas64_2e448m2e224m1_10limbs/compilerxx.sh
deleted file mode 100755
index 3ff4525a1..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{45,45,45,45,44,45,45,45,45,44}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1' "$@"
diff --git a/src/Specific/solinas64_2e448m2e224m1_10limbs/feadd.c b/src/Specific/solinas64_2e448m2e224m1_10limbs/feadd.c
deleted file mode 100644
index df991e375..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/feadd.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void feadd(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- out[0] = (x5 + x23);
- out[1] = (x7 + x25);
- out[2] = (x9 + x27);
- out[3] = (x11 + x29);
- out[4] = (x13 + x31);
- out[5] = (x15 + x33);
- out[6] = (x17 + x35);
- out[7] = (x19 + x37);
- out[8] = (x21 + x39);
- out[9] = (x20 + x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e448m2e224m1_10limbs/feadd.v b/src/Specific/solinas64_2e448m2e224m1_10limbs/feadd.v
deleted file mode 100644
index f779333c5..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_10limbs.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/solinas64_2e448m2e224m1_10limbs/feaddDisplay.log b/src/Specific/solinas64_2e448m2e224m1_10limbs/feaddDisplay.log
deleted file mode 100644
index 04176128e..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e448m2e224m1_10limbs/feaddDisplay.v b/src/Specific/solinas64_2e448m2e224m1_10limbs/feaddDisplay.v
deleted file mode 100644
index 0076cc218..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_10limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e448m2e224m1_10limbs/fecarry.v b/src/Specific/solinas64_2e448m2e224m1_10limbs/fecarry.v
deleted file mode 100644
index d11c6e74a..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_10limbs.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/solinas64_2e448m2e224m1_10limbs/fecarryDisplay.v b/src/Specific/solinas64_2e448m2e224m1_10limbs/fecarryDisplay.v
deleted file mode 100644
index 9a34acdb7..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_10limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e448m2e224m1_10limbs/femul.c b/src/Specific/solinas64_2e448m2e224m1_10limbs/femul.c
deleted file mode 100644
index 912adeb1c..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/femul.c
+++ /dev/null
@@ -1,97 +0,0 @@
-static void femul(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- { uint128_t x40 = ((0x2 * ((uint128_t)(x13 + x20) * (x31 + x38))) - (0x2 * ((uint128_t)x13 * x31)));
- { uint128_t x41 = (((0x2 * ((uint128_t)(x11 + x21) * (x31 + x38))) + (0x2 * ((uint128_t)(x13 + x20) * (x29 + x39)))) - ((0x2 * ((uint128_t)x11 * x31)) + (0x2 * ((uint128_t)x13 * x29))));
- { uint128_t x42 = (((0x2 * ((uint128_t)(x9 + x19) * (x31 + x38))) + ((0x2 * ((uint128_t)(x11 + x21) * (x29 + x39))) + (0x2 * ((uint128_t)(x13 + x20) * (x27 + x37))))) - ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + (0x2 * ((uint128_t)x13 * x27)))));
- { uint128_t x43 = (((0x2 * ((uint128_t)(x7 + x17) * (x31 + x38))) + ((0x2 * ((uint128_t)(x9 + x19) * (x29 + x39))) + ((0x2 * ((uint128_t)(x11 + x21) * (x27 + x37))) + (0x2 * ((uint128_t)(x13 + x20) * (x25 + x35)))))) - ((0x2 * ((uint128_t)x7 * x31)) + ((0x2 * ((uint128_t)x9 * x29)) + ((0x2 * ((uint128_t)x11 * x27)) + (0x2 * ((uint128_t)x13 * x25))))));
- { uint128_t x44 = ((((uint128_t)(x5 + x15) * (x31 + x38)) + (((uint128_t)(x7 + x17) * (x29 + x39)) + (((uint128_t)(x9 + x19) * (x27 + x37)) + (((uint128_t)(x11 + x21) * (x25 + x35)) + ((uint128_t)(x13 + x20) * (x23 + x33)))))) - (((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + ((uint128_t)x13 * x23))))));
- { uint128_t x45 = ((((uint128_t)(x5 + x15) * (x29 + x39)) + (((uint128_t)(x7 + x17) * (x27 + x37)) + (((uint128_t)(x9 + x19) * (x25 + x35)) + ((uint128_t)(x11 + x21) * (x23 + x33))))) - (((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)))));
- { uint128_t x46 = ((((uint128_t)(x5 + x15) * (x27 + x37)) + (((uint128_t)(x7 + x17) * (x25 + x35)) + ((uint128_t)(x9 + x19) * (x23 + x33)))) - (((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((uint128_t)x9 * x23))));
- { uint128_t x47 = ((((uint128_t)(x5 + x15) * (x25 + x35)) + ((uint128_t)(x7 + x17) * (x23 + x33))) - (((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)));
- { uint128_t x48 = (((uint128_t)(x5 + x15) * (x23 + x33)) - ((uint128_t)x5 * x23));
- { uint128_t x49 = ((((0x2 * ((uint128_t)x13 * x31)) + (0x2 * ((uint128_t)x20 * x38))) + x45) + x40);
- { uint128_t x50 = (((((0x2 * ((uint128_t)x11 * x31)) + (0x2 * ((uint128_t)x13 * x29))) + ((0x2 * ((uint128_t)x21 * x38)) + (0x2 * ((uint128_t)x20 * x39)))) + x46) + x41);
- { uint128_t x51 = (((((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + (0x2 * ((uint128_t)x13 * x27)))) + ((0x2 * ((uint128_t)x19 * x38)) + ((0x2 * ((uint128_t)x21 * x39)) + (0x2 * ((uint128_t)x20 * x37))))) + x47) + x42);
- { uint128_t x52 = (((((0x2 * ((uint128_t)x7 * x31)) + ((0x2 * ((uint128_t)x9 * x29)) + ((0x2 * ((uint128_t)x11 * x27)) + (0x2 * ((uint128_t)x13 * x25))))) + ((0x2 * ((uint128_t)x17 * x38)) + ((0x2 * ((uint128_t)x19 * x39)) + ((0x2 * ((uint128_t)x21 * x37)) + (0x2 * ((uint128_t)x20 * x35)))))) + x48) + x43);
- { uint128_t x53 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + ((uint128_t)x13 * x23))))) + (((uint128_t)x15 * x38) + (((uint128_t)x17 * x39) + (((uint128_t)x19 * x37) + (((uint128_t)x21 * x35) + ((uint128_t)x20 * x33))))));
- { uint128_t x54 = (((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)))) + (((uint128_t)x15 * x39) + (((uint128_t)x17 * x37) + (((uint128_t)x19 * x35) + ((uint128_t)x21 * x33))))) + x40);
- { uint128_t x55 = (((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((uint128_t)x9 * x23))) + (((uint128_t)x15 * x37) + (((uint128_t)x17 * x35) + ((uint128_t)x19 * x33)))) + x41);
- { uint128_t x56 = (((((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)) + (((uint128_t)x15 * x35) + ((uint128_t)x17 * x33))) + x42);
- { uint128_t x57 = ((((uint128_t)x5 * x23) + ((uint128_t)x15 * x33)) + x43);
- { uint64_t x58 = (uint64_t) (x53 >> 0x2c);
- { uint64_t x59 = ((uint64_t)x53 & 0xfffffffffff);
- { uint64_t x60 = (uint64_t) (x44 >> 0x2c);
- { uint64_t x61 = ((uint64_t)x44 & 0xfffffffffff);
- { uint128_t x62 = (((uint128_t)0x100000000000 * x60) + x61);
- { uint64_t x63 = (uint64_t) (x62 >> 0x2c);
- { uint64_t x64 = ((uint64_t)x62 & 0xfffffffffff);
- { uint128_t x65 = ((x58 + x52) + x63);
- { uint64_t x66 = (uint64_t) (x65 >> 0x2d);
- { uint64_t x67 = ((uint64_t)x65 & 0x1fffffffffff);
- { uint128_t x68 = (x57 + x63);
- { uint64_t x69 = (uint64_t) (x68 >> 0x2d);
- { uint64_t x70 = ((uint64_t)x68 & 0x1fffffffffff);
- { uint128_t x71 = (x66 + x51);
- { uint64_t x72 = (uint64_t) (x71 >> 0x2d);
- { uint64_t x73 = ((uint64_t)x71 & 0x1fffffffffff);
- { uint128_t x74 = (x69 + x56);
- { uint64_t x75 = (uint64_t) (x74 >> 0x2d);
- { uint64_t x76 = ((uint64_t)x74 & 0x1fffffffffff);
- { uint128_t x77 = (x72 + x50);
- { uint64_t x78 = (uint64_t) (x77 >> 0x2d);
- { uint64_t x79 = ((uint64_t)x77 & 0x1fffffffffff);
- { uint128_t x80 = (x75 + x55);
- { uint64_t x81 = (uint64_t) (x80 >> 0x2d);
- { uint64_t x82 = ((uint64_t)x80 & 0x1fffffffffff);
- { uint128_t x83 = (x78 + x49);
- { uint64_t x84 = (uint64_t) (x83 >> 0x2d);
- { uint64_t x85 = ((uint64_t)x83 & 0x1fffffffffff);
- { uint128_t x86 = (x81 + x54);
- { uint64_t x87 = (uint64_t) (x86 >> 0x2d);
- { uint64_t x88 = ((uint64_t)x86 & 0x1fffffffffff);
- { uint64_t x89 = (x84 + x64);
- { uint64_t x90 = (x89 >> 0x2c);
- { uint64_t x91 = (x89 & 0xfffffffffff);
- { uint64_t x92 = (x87 + x59);
- { uint64_t x93 = (x92 >> 0x2c);
- { uint64_t x94 = (x92 & 0xfffffffffff);
- { uint64_t x95 = ((0x100000000000 * x90) + x91);
- { uint64_t x96 = (x95 >> 0x2c);
- { uint64_t x97 = (x95 & 0xfffffffffff);
- { uint64_t x98 = ((x93 + x67) + x96);
- { uint64_t x99 = (x98 >> 0x2d);
- { uint64_t x100 = (x98 & 0x1fffffffffff);
- { uint64_t x101 = (x70 + x96);
- { uint64_t x102 = (x101 >> 0x2d);
- { uint64_t x103 = (x101 & 0x1fffffffffff);
- out[0] = x103;
- out[1] = (x102 + x76);
- out[2] = x82;
- out[3] = x88;
- out[4] = x94;
- out[5] = x100;
- out[6] = (x99 + x73);
- out[7] = x79;
- out[8] = x85;
- out[9] = x97;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e448m2e224m1_10limbs/femul.v b/src/Specific/solinas64_2e448m2e224m1_10limbs/femul.v
deleted file mode 100644
index fee16d9fe..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_10limbs.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/solinas64_2e448m2e224m1_10limbs/femulDisplay.log b/src/Specific/solinas64_2e448m2e224m1_10limbs/femulDisplay.log
deleted file mode 100644
index 2f9adfad4..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/femulDisplay.log
+++ /dev/null
@@ -1,71 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- uint128_t x40 = ((0x2 * ((uint128_t)(x13 + x20) * (x31 + x38))) - (0x2 * ((uint128_t)x13 * x31)));
- uint128_t x41 = (((0x2 * ((uint128_t)(x11 + x21) * (x31 + x38))) + (0x2 * ((uint128_t)(x13 + x20) * (x29 + x39)))) - ((0x2 * ((uint128_t)x11 * x31)) + (0x2 * ((uint128_t)x13 * x29))));
- uint128_t x42 = (((0x2 * ((uint128_t)(x9 + x19) * (x31 + x38))) + ((0x2 * ((uint128_t)(x11 + x21) * (x29 + x39))) + (0x2 * ((uint128_t)(x13 + x20) * (x27 + x37))))) - ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + (0x2 * ((uint128_t)x13 * x27)))));
- uint128_t x43 = (((0x2 * ((uint128_t)(x7 + x17) * (x31 + x38))) + ((0x2 * ((uint128_t)(x9 + x19) * (x29 + x39))) + ((0x2 * ((uint128_t)(x11 + x21) * (x27 + x37))) + (0x2 * ((uint128_t)(x13 + x20) * (x25 + x35)))))) - ((0x2 * ((uint128_t)x7 * x31)) + ((0x2 * ((uint128_t)x9 * x29)) + ((0x2 * ((uint128_t)x11 * x27)) + (0x2 * ((uint128_t)x13 * x25))))));
- uint128_t x44 = ((((uint128_t)(x5 + x15) * (x31 + x38)) + (((uint128_t)(x7 + x17) * (x29 + x39)) + (((uint128_t)(x9 + x19) * (x27 + x37)) + (((uint128_t)(x11 + x21) * (x25 + x35)) + ((uint128_t)(x13 + x20) * (x23 + x33)))))) - (((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + ((uint128_t)x13 * x23))))));
- uint128_t x45 = ((((uint128_t)(x5 + x15) * (x29 + x39)) + (((uint128_t)(x7 + x17) * (x27 + x37)) + (((uint128_t)(x9 + x19) * (x25 + x35)) + ((uint128_t)(x11 + x21) * (x23 + x33))))) - (((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)))));
- uint128_t x46 = ((((uint128_t)(x5 + x15) * (x27 + x37)) + (((uint128_t)(x7 + x17) * (x25 + x35)) + ((uint128_t)(x9 + x19) * (x23 + x33)))) - (((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((uint128_t)x9 * x23))));
- uint128_t x47 = ((((uint128_t)(x5 + x15) * (x25 + x35)) + ((uint128_t)(x7 + x17) * (x23 + x33))) - (((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)));
- uint128_t x48 = (((uint128_t)(x5 + x15) * (x23 + x33)) - ((uint128_t)x5 * x23));
- uint128_t x49 = ((((0x2 * ((uint128_t)x13 * x31)) + (0x2 * ((uint128_t)x20 * x38))) + x45) + x40);
- uint128_t x50 = (((((0x2 * ((uint128_t)x11 * x31)) + (0x2 * ((uint128_t)x13 * x29))) + ((0x2 * ((uint128_t)x21 * x38)) + (0x2 * ((uint128_t)x20 * x39)))) + x46) + x41);
- uint128_t x51 = (((((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + (0x2 * ((uint128_t)x13 * x27)))) + ((0x2 * ((uint128_t)x19 * x38)) + ((0x2 * ((uint128_t)x21 * x39)) + (0x2 * ((uint128_t)x20 * x37))))) + x47) + x42);
- uint128_t x52 = (((((0x2 * ((uint128_t)x7 * x31)) + ((0x2 * ((uint128_t)x9 * x29)) + ((0x2 * ((uint128_t)x11 * x27)) + (0x2 * ((uint128_t)x13 * x25))))) + ((0x2 * ((uint128_t)x17 * x38)) + ((0x2 * ((uint128_t)x19 * x39)) + ((0x2 * ((uint128_t)x21 * x37)) + (0x2 * ((uint128_t)x20 * x35)))))) + x48) + x43);
- uint128_t x53 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + ((uint128_t)x13 * x23))))) + (((uint128_t)x15 * x38) + (((uint128_t)x17 * x39) + (((uint128_t)x19 * x37) + (((uint128_t)x21 * x35) + ((uint128_t)x20 * x33))))));
- uint128_t x54 = (((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)))) + (((uint128_t)x15 * x39) + (((uint128_t)x17 * x37) + (((uint128_t)x19 * x35) + ((uint128_t)x21 * x33))))) + x40);
- uint128_t x55 = (((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((uint128_t)x9 * x23))) + (((uint128_t)x15 * x37) + (((uint128_t)x17 * x35) + ((uint128_t)x19 * x33)))) + x41);
- uint128_t x56 = (((((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)) + (((uint128_t)x15 * x35) + ((uint128_t)x17 * x33))) + x42);
- uint128_t x57 = ((((uint128_t)x5 * x23) + ((uint128_t)x15 * x33)) + x43);
- uint64_t x58 = (uint64_t) (x53 >> 0x2c);
- uint64_t x59 = ((uint64_t)x53 & 0xfffffffffff);
- uint64_t x60 = (uint64_t) (x44 >> 0x2c);
- uint64_t x61 = ((uint64_t)x44 & 0xfffffffffff);
- uint128_t x62 = (((uint128_t)0x100000000000 * x60) + x61);
- uint64_t x63 = (uint64_t) (x62 >> 0x2c);
- uint64_t x64 = ((uint64_t)x62 & 0xfffffffffff);
- uint128_t x65 = ((x58 + x52) + x63);
- uint64_t x66 = (uint64_t) (x65 >> 0x2d);
- uint64_t x67 = ((uint64_t)x65 & 0x1fffffffffff);
- uint128_t x68 = (x57 + x63);
- uint64_t x69 = (uint64_t) (x68 >> 0x2d);
- uint64_t x70 = ((uint64_t)x68 & 0x1fffffffffff);
- uint128_t x71 = (x66 + x51);
- uint64_t x72 = (uint64_t) (x71 >> 0x2d);
- uint64_t x73 = ((uint64_t)x71 & 0x1fffffffffff);
- uint128_t x74 = (x69 + x56);
- uint64_t x75 = (uint64_t) (x74 >> 0x2d);
- uint64_t x76 = ((uint64_t)x74 & 0x1fffffffffff);
- uint128_t x77 = (x72 + x50);
- uint64_t x78 = (uint64_t) (x77 >> 0x2d);
- uint64_t x79 = ((uint64_t)x77 & 0x1fffffffffff);
- uint128_t x80 = (x75 + x55);
- uint64_t x81 = (uint64_t) (x80 >> 0x2d);
- uint64_t x82 = ((uint64_t)x80 & 0x1fffffffffff);
- uint128_t x83 = (x78 + x49);
- uint64_t x84 = (uint64_t) (x83 >> 0x2d);
- uint64_t x85 = ((uint64_t)x83 & 0x1fffffffffff);
- uint128_t x86 = (x81 + x54);
- uint64_t x87 = (uint64_t) (x86 >> 0x2d);
- uint64_t x88 = ((uint64_t)x86 & 0x1fffffffffff);
- uint64_t x89 = (x84 + x64);
- uint64_t x90 = (x89 >> 0x2c);
- uint64_t x91 = (x89 & 0xfffffffffff);
- uint64_t x92 = (x87 + x59);
- uint64_t x93 = (x92 >> 0x2c);
- uint64_t x94 = (x92 & 0xfffffffffff);
- uint64_t x95 = ((0x100000000000 * x90) + x91);
- uint64_t x96 = (x95 >> 0x2c);
- uint64_t x97 = (x95 & 0xfffffffffff);
- uint64_t x98 = ((x93 + x67) + x96);
- uint64_t x99 = (x98 >> 0x2d);
- uint64_t x100 = (x98 & 0x1fffffffffff);
- uint64_t x101 = (x70 + x96);
- uint64_t x102 = (x101 >> 0x2d);
- uint64_t x103 = (x101 & 0x1fffffffffff);
- return (Return x97, Return x85, Return x79, (x99 + x73), Return x100, Return x94, Return x88, Return x82, (x102 + x76), Return x103))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e448m2e224m1_10limbs/femulDisplay.v b/src/Specific/solinas64_2e448m2e224m1_10limbs/femulDisplay.v
deleted file mode 100644
index c02273c99..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_10limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e448m2e224m1_10limbs/fesquare.c b/src/Specific/solinas64_2e448m2e224m1_10limbs/fesquare.c
deleted file mode 100644
index 0e4eb6a26..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/fesquare.c
+++ /dev/null
@@ -1,87 +0,0 @@
-static void fesquare(uint64_t out[10], const uint64_t in1[10]) {
- { const uint64_t x17 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x19 = ((0x2 * ((uint128_t)(x10 + x17) * (x10 + x17))) - (0x2 * ((uint128_t)x10 * x10)));
- { uint128_t x20 = (((0x2 * ((uint128_t)(x8 + x18) * (x10 + x17))) + (0x2 * ((uint128_t)(x10 + x17) * (x8 + x18)))) - ((0x2 * ((uint128_t)x8 * x10)) + (0x2 * ((uint128_t)x10 * x8))));
- { uint128_t x21 = (((0x2 * ((uint128_t)(x6 + x16) * (x10 + x17))) + ((0x2 * ((uint128_t)(x8 + x18) * (x8 + x18))) + (0x2 * ((uint128_t)(x10 + x17) * (x6 + x16))))) - ((0x2 * ((uint128_t)x6 * x10)) + ((0x2 * ((uint128_t)x8 * x8)) + (0x2 * ((uint128_t)x10 * x6)))));
- { uint128_t x22 = (((0x2 * ((uint128_t)(x4 + x14) * (x10 + x17))) + ((0x2 * ((uint128_t)(x6 + x16) * (x8 + x18))) + ((0x2 * ((uint128_t)(x8 + x18) * (x6 + x16))) + (0x2 * ((uint128_t)(x10 + x17) * (x4 + x14)))))) - ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x10 * x4))))));
- { uint128_t x23 = ((((uint128_t)(x2 + x12) * (x10 + x17)) + (((uint128_t)(x4 + x14) * (x8 + x18)) + (((uint128_t)(x6 + x16) * (x6 + x16)) + (((uint128_t)(x8 + x18) * (x4 + x14)) + ((uint128_t)(x10 + x17) * (x2 + x12)))))) - (((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))));
- { uint128_t x24 = ((((uint128_t)(x2 + x12) * (x8 + x18)) + (((uint128_t)(x4 + x14) * (x6 + x16)) + (((uint128_t)(x6 + x16) * (x4 + x14)) + ((uint128_t)(x8 + x18) * (x2 + x12))))) - (((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))));
- { uint128_t x25 = ((((uint128_t)(x2 + x12) * (x6 + x16)) + (((uint128_t)(x4 + x14) * (x4 + x14)) + ((uint128_t)(x6 + x16) * (x2 + x12)))) - (((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))));
- { uint128_t x26 = ((((uint128_t)(x2 + x12) * (x4 + x14)) + ((uint128_t)(x4 + x14) * (x2 + x12))) - (((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)));
- { uint128_t x27 = (((uint128_t)(x2 + x12) * (x2 + x12)) - ((uint128_t)x2 * x2));
- { uint128_t x28 = ((((0x2 * ((uint128_t)x10 * x10)) + (0x2 * ((uint128_t)x17 * x17))) + x24) + x19);
- { uint128_t x29 = (((((0x2 * ((uint128_t)x8 * x10)) + (0x2 * ((uint128_t)x10 * x8))) + ((0x2 * ((uint128_t)x18 * x17)) + (0x2 * ((uint128_t)x17 * x18)))) + x25) + x20);
- { uint128_t x30 = (((((0x2 * ((uint128_t)x6 * x10)) + ((0x2 * ((uint128_t)x8 * x8)) + (0x2 * ((uint128_t)x10 * x6)))) + ((0x2 * ((uint128_t)x16 * x17)) + ((0x2 * ((uint128_t)x18 * x18)) + (0x2 * ((uint128_t)x17 * x16))))) + x26) + x21);
- { uint128_t x31 = (((((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x10 * x4))))) + ((0x2 * ((uint128_t)x14 * x17)) + ((0x2 * ((uint128_t)x16 * x18)) + ((0x2 * ((uint128_t)x18 * x16)) + (0x2 * ((uint128_t)x17 * x14)))))) + x27) + x22);
- { uint128_t x32 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (((uint128_t)x12 * x17) + (((uint128_t)x14 * x18) + (((uint128_t)x16 * x16) + (((uint128_t)x18 * x14) + ((uint128_t)x17 * x12))))));
- { uint128_t x33 = (((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (((uint128_t)x12 * x18) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + ((uint128_t)x18 * x12))))) + x19);
- { uint128_t x34 = (((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (((uint128_t)x12 * x16) + (((uint128_t)x14 * x14) + ((uint128_t)x16 * x12)))) + x20);
- { uint128_t x35 = (((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (((uint128_t)x12 * x14) + ((uint128_t)x14 * x12))) + x21);
- { uint128_t x36 = ((((uint128_t)x2 * x2) + ((uint128_t)x12 * x12)) + x22);
- { uint64_t x37 = (uint64_t) (x32 >> 0x2c);
- { uint64_t x38 = ((uint64_t)x32 & 0xfffffffffff);
- { uint64_t x39 = (uint64_t) (x23 >> 0x2c);
- { uint64_t x40 = ((uint64_t)x23 & 0xfffffffffff);
- { uint128_t x41 = (((uint128_t)0x100000000000 * x39) + x40);
- { uint64_t x42 = (uint64_t) (x41 >> 0x2c);
- { uint64_t x43 = ((uint64_t)x41 & 0xfffffffffff);
- { uint128_t x44 = ((x37 + x31) + x42);
- { uint64_t x45 = (uint64_t) (x44 >> 0x2d);
- { uint64_t x46 = ((uint64_t)x44 & 0x1fffffffffff);
- { uint128_t x47 = (x36 + x42);
- { uint64_t x48 = (uint64_t) (x47 >> 0x2d);
- { uint64_t x49 = ((uint64_t)x47 & 0x1fffffffffff);
- { uint128_t x50 = (x45 + x30);
- { uint64_t x51 = (uint64_t) (x50 >> 0x2d);
- { uint64_t x52 = ((uint64_t)x50 & 0x1fffffffffff);
- { uint128_t x53 = (x48 + x35);
- { uint64_t x54 = (uint64_t) (x53 >> 0x2d);
- { uint64_t x55 = ((uint64_t)x53 & 0x1fffffffffff);
- { uint128_t x56 = (x51 + x29);
- { uint64_t x57 = (uint64_t) (x56 >> 0x2d);
- { uint64_t x58 = ((uint64_t)x56 & 0x1fffffffffff);
- { uint128_t x59 = (x54 + x34);
- { uint64_t x60 = (uint64_t) (x59 >> 0x2d);
- { uint64_t x61 = ((uint64_t)x59 & 0x1fffffffffff);
- { uint128_t x62 = (x57 + x28);
- { uint64_t x63 = (uint64_t) (x62 >> 0x2d);
- { uint64_t x64 = ((uint64_t)x62 & 0x1fffffffffff);
- { uint128_t x65 = (x60 + x33);
- { uint64_t x66 = (uint64_t) (x65 >> 0x2d);
- { uint64_t x67 = ((uint64_t)x65 & 0x1fffffffffff);
- { uint64_t x68 = (x63 + x43);
- { uint64_t x69 = (x68 >> 0x2c);
- { uint64_t x70 = (x68 & 0xfffffffffff);
- { uint64_t x71 = (x66 + x38);
- { uint64_t x72 = (x71 >> 0x2c);
- { uint64_t x73 = (x71 & 0xfffffffffff);
- { uint64_t x74 = ((0x100000000000 * x69) + x70);
- { uint64_t x75 = (x74 >> 0x2c);
- { uint64_t x76 = (x74 & 0xfffffffffff);
- { uint64_t x77 = ((x72 + x46) + x75);
- { uint64_t x78 = (x77 >> 0x2d);
- { uint64_t x79 = (x77 & 0x1fffffffffff);
- { uint64_t x80 = (x49 + x75);
- { uint64_t x81 = (x80 >> 0x2d);
- { uint64_t x82 = (x80 & 0x1fffffffffff);
- out[0] = x82;
- out[1] = (x81 + x55);
- out[2] = x61;
- out[3] = x67;
- out[4] = x73;
- out[5] = x79;
- out[6] = (x78 + x52);
- out[7] = x58;
- out[8] = x64;
- out[9] = x76;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e448m2e224m1_10limbs/fesquare.v b/src/Specific/solinas64_2e448m2e224m1_10limbs/fesquare.v
deleted file mode 100644
index 30028e25a..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_10limbs.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/solinas64_2e448m2e224m1_10limbs/fesquareDisplay.log b/src/Specific/solinas64_2e448m2e224m1_10limbs/fesquareDisplay.log
deleted file mode 100644
index acb7ee4ed..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,71 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x19 = ((0x2 * ((uint128_t)(x10 + x17) * (x10 + x17))) - (0x2 * ((uint128_t)x10 * x10)));
- uint128_t x20 = (((0x2 * ((uint128_t)(x8 + x18) * (x10 + x17))) + (0x2 * ((uint128_t)(x10 + x17) * (x8 + x18)))) - ((0x2 * ((uint128_t)x8 * x10)) + (0x2 * ((uint128_t)x10 * x8))));
- uint128_t x21 = (((0x2 * ((uint128_t)(x6 + x16) * (x10 + x17))) + ((0x2 * ((uint128_t)(x8 + x18) * (x8 + x18))) + (0x2 * ((uint128_t)(x10 + x17) * (x6 + x16))))) - ((0x2 * ((uint128_t)x6 * x10)) + ((0x2 * ((uint128_t)x8 * x8)) + (0x2 * ((uint128_t)x10 * x6)))));
- uint128_t x22 = (((0x2 * ((uint128_t)(x4 + x14) * (x10 + x17))) + ((0x2 * ((uint128_t)(x6 + x16) * (x8 + x18))) + ((0x2 * ((uint128_t)(x8 + x18) * (x6 + x16))) + (0x2 * ((uint128_t)(x10 + x17) * (x4 + x14)))))) - ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x10 * x4))))));
- uint128_t x23 = ((((uint128_t)(x2 + x12) * (x10 + x17)) + (((uint128_t)(x4 + x14) * (x8 + x18)) + (((uint128_t)(x6 + x16) * (x6 + x16)) + (((uint128_t)(x8 + x18) * (x4 + x14)) + ((uint128_t)(x10 + x17) * (x2 + x12)))))) - (((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))));
- uint128_t x24 = ((((uint128_t)(x2 + x12) * (x8 + x18)) + (((uint128_t)(x4 + x14) * (x6 + x16)) + (((uint128_t)(x6 + x16) * (x4 + x14)) + ((uint128_t)(x8 + x18) * (x2 + x12))))) - (((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))));
- uint128_t x25 = ((((uint128_t)(x2 + x12) * (x6 + x16)) + (((uint128_t)(x4 + x14) * (x4 + x14)) + ((uint128_t)(x6 + x16) * (x2 + x12)))) - (((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))));
- uint128_t x26 = ((((uint128_t)(x2 + x12) * (x4 + x14)) + ((uint128_t)(x4 + x14) * (x2 + x12))) - (((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)));
- uint128_t x27 = (((uint128_t)(x2 + x12) * (x2 + x12)) - ((uint128_t)x2 * x2));
- uint128_t x28 = ((((0x2 * ((uint128_t)x10 * x10)) + (0x2 * ((uint128_t)x17 * x17))) + x24) + x19);
- uint128_t x29 = (((((0x2 * ((uint128_t)x8 * x10)) + (0x2 * ((uint128_t)x10 * x8))) + ((0x2 * ((uint128_t)x18 * x17)) + (0x2 * ((uint128_t)x17 * x18)))) + x25) + x20);
- uint128_t x30 = (((((0x2 * ((uint128_t)x6 * x10)) + ((0x2 * ((uint128_t)x8 * x8)) + (0x2 * ((uint128_t)x10 * x6)))) + ((0x2 * ((uint128_t)x16 * x17)) + ((0x2 * ((uint128_t)x18 * x18)) + (0x2 * ((uint128_t)x17 * x16))))) + x26) + x21);
- uint128_t x31 = (((((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + (0x2 * ((uint128_t)x10 * x4))))) + ((0x2 * ((uint128_t)x14 * x17)) + ((0x2 * ((uint128_t)x16 * x18)) + ((0x2 * ((uint128_t)x18 * x16)) + (0x2 * ((uint128_t)x17 * x14)))))) + x27) + x22);
- uint128_t x32 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (((uint128_t)x12 * x17) + (((uint128_t)x14 * x18) + (((uint128_t)x16 * x16) + (((uint128_t)x18 * x14) + ((uint128_t)x17 * x12))))));
- uint128_t x33 = (((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (((uint128_t)x12 * x18) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + ((uint128_t)x18 * x12))))) + x19);
- uint128_t x34 = (((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (((uint128_t)x12 * x16) + (((uint128_t)x14 * x14) + ((uint128_t)x16 * x12)))) + x20);
- uint128_t x35 = (((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (((uint128_t)x12 * x14) + ((uint128_t)x14 * x12))) + x21);
- uint128_t x36 = ((((uint128_t)x2 * x2) + ((uint128_t)x12 * x12)) + x22);
- uint64_t x37 = (uint64_t) (x32 >> 0x2c);
- uint64_t x38 = ((uint64_t)x32 & 0xfffffffffff);
- uint64_t x39 = (uint64_t) (x23 >> 0x2c);
- uint64_t x40 = ((uint64_t)x23 & 0xfffffffffff);
- uint128_t x41 = (((uint128_t)0x100000000000 * x39) + x40);
- uint64_t x42 = (uint64_t) (x41 >> 0x2c);
- uint64_t x43 = ((uint64_t)x41 & 0xfffffffffff);
- uint128_t x44 = ((x37 + x31) + x42);
- uint64_t x45 = (uint64_t) (x44 >> 0x2d);
- uint64_t x46 = ((uint64_t)x44 & 0x1fffffffffff);
- uint128_t x47 = (x36 + x42);
- uint64_t x48 = (uint64_t) (x47 >> 0x2d);
- uint64_t x49 = ((uint64_t)x47 & 0x1fffffffffff);
- uint128_t x50 = (x45 + x30);
- uint64_t x51 = (uint64_t) (x50 >> 0x2d);
- uint64_t x52 = ((uint64_t)x50 & 0x1fffffffffff);
- uint128_t x53 = (x48 + x35);
- uint64_t x54 = (uint64_t) (x53 >> 0x2d);
- uint64_t x55 = ((uint64_t)x53 & 0x1fffffffffff);
- uint128_t x56 = (x51 + x29);
- uint64_t x57 = (uint64_t) (x56 >> 0x2d);
- uint64_t x58 = ((uint64_t)x56 & 0x1fffffffffff);
- uint128_t x59 = (x54 + x34);
- uint64_t x60 = (uint64_t) (x59 >> 0x2d);
- uint64_t x61 = ((uint64_t)x59 & 0x1fffffffffff);
- uint128_t x62 = (x57 + x28);
- uint64_t x63 = (uint64_t) (x62 >> 0x2d);
- uint64_t x64 = ((uint64_t)x62 & 0x1fffffffffff);
- uint128_t x65 = (x60 + x33);
- uint64_t x66 = (uint64_t) (x65 >> 0x2d);
- uint64_t x67 = ((uint64_t)x65 & 0x1fffffffffff);
- uint64_t x68 = (x63 + x43);
- uint64_t x69 = (x68 >> 0x2c);
- uint64_t x70 = (x68 & 0xfffffffffff);
- uint64_t x71 = (x66 + x38);
- uint64_t x72 = (x71 >> 0x2c);
- uint64_t x73 = (x71 & 0xfffffffffff);
- uint64_t x74 = ((0x100000000000 * x69) + x70);
- uint64_t x75 = (x74 >> 0x2c);
- uint64_t x76 = (x74 & 0xfffffffffff);
- uint64_t x77 = ((x72 + x46) + x75);
- uint64_t x78 = (x77 >> 0x2d);
- uint64_t x79 = (x77 & 0x1fffffffffff);
- uint64_t x80 = (x49 + x75);
- uint64_t x81 = (x80 >> 0x2d);
- uint64_t x82 = (x80 & 0x1fffffffffff);
- return (Return x76, Return x64, Return x58, (x78 + x52), Return x79, Return x73, Return x67, Return x61, (x81 + x55), Return x82))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e448m2e224m1_10limbs/fesquareDisplay.v b/src/Specific/solinas64_2e448m2e224m1_10limbs/fesquareDisplay.v
deleted file mode 100644
index 8a5163cb5..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_10limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e448m2e224m1_10limbs/fesub.c b/src/Specific/solinas64_2e448m2e224m1_10limbs/fesub.c
deleted file mode 100644
index ebbdb28d8..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/fesub.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fesub(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- out[0] = ((0x3ffffffffffe + x5) - x23);
- out[1] = ((0x3ffffffffffe + x7) - x25);
- out[2] = ((0x3ffffffffffe + x9) - x27);
- out[3] = ((0x3ffffffffffe + x11) - x29);
- out[4] = ((0x1ffffffffffe + x13) - x31);
- out[5] = ((0x3ffffffffffc + x15) - x33);
- out[6] = ((0x3ffffffffffe + x17) - x35);
- out[7] = ((0x3ffffffffffe + x19) - x37);
- out[8] = ((0x3ffffffffffe + x21) - x39);
- out[9] = ((0x1ffffffffffe + x20) - x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e448m2e224m1_10limbs/fesub.v b/src/Specific/solinas64_2e448m2e224m1_10limbs/fesub.v
deleted file mode 100644
index c9380077b..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_10limbs.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/solinas64_2e448m2e224m1_10limbs/fesubDisplay.log b/src/Specific/solinas64_2e448m2e224m1_10limbs/fesubDisplay.log
deleted file mode 100644
index 65de26904..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- (((0x1ffffffffffe + x20) - x38), ((0x3ffffffffffe + x21) - x39), ((0x3ffffffffffe + x19) - x37), ((0x3ffffffffffe + x17) - x35), ((0x3ffffffffffc + x15) - x33), ((0x1ffffffffffe + x13) - x31), ((0x3ffffffffffe + x11) - x29), ((0x3ffffffffffe + x9) - x27), ((0x3ffffffffffe + x7) - x25), ((0x3ffffffffffe + x5) - x23)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e448m2e224m1_10limbs/fesubDisplay.v b/src/Specific/solinas64_2e448m2e224m1_10limbs/fesubDisplay.v
deleted file mode 100644
index 3555ad2f7..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_10limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e448m2e224m1_10limbs/freeze.c b/src/Specific/solinas64_2e448m2e224m1_10limbs/freeze.c
deleted file mode 100644
index 1316bd720..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/freeze.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void freeze(uint64_t out[10], const uint64_t in1[10]) {
- { const uint64_t x17 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffffff);
- { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x4, 0x1fffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x6, 0x1fffffffffff);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x8, 0x1fffffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x10, 0xfffffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x12, 0x1ffffffffffe);
- { uint64_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x14, 0x1fffffffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x39, Return x16, 0x1fffffffffff);
- { uint64_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x18, 0x1fffffffffff);
- { uint64_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x17, 0xfffffffffff);
- { uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL);
- { uint64_t x50 = (x49 & 0x1fffffffffff);
- { uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- { uint64_t x54 = (x49 & 0x1fffffffffff);
- { uint64_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- { uint64_t x58 = (x49 & 0x1fffffffffff);
- { uint64_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- { uint64_t x62 = (x49 & 0x1fffffffffff);
- { uint64_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- { uint64_t x66 = (x49 & 0xfffffffffff);
- { uint64_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- { uint64_t x70 = (x49 & 0x1ffffffffffe);
- { uint64_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- { uint64_t x74 = (x49 & 0x1fffffffffff);
- { uint64_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- { uint64_t x78 = (x49 & 0x1fffffffffff);
- { uint64_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- { uint64_t x82 = (x49 & 0x1fffffffffff);
- { uint64_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- { uint64_t x86 = (x49 & 0xfffffffffff);
- { uint64_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- out[0] = x52;
- out[1] = x56;
- out[2] = x60;
- out[3] = x64;
- out[4] = x68;
- out[5] = x72;
- out[6] = x76;
- out[7] = x80;
- out[8] = x84;
- out[9] = x88;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e448m2e224m1_10limbs/freeze.v b/src/Specific/solinas64_2e448m2e224m1_10limbs/freeze.v
deleted file mode 100644
index 5585530a5..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_10limbs.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/solinas64_2e448m2e224m1_10limbs/freezeDisplay.log b/src/Specific/solinas64_2e448m2e224m1_10limbs/freezeDisplay.log
deleted file mode 100644
index c5a23997a..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffffff);
- uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x4, 0x1fffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x6, 0x1fffffffffff);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x8, 0x1fffffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x10, 0xfffffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x12, 0x1ffffffffffe);
- uint64_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x14, 0x1fffffffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x39, Return x16, 0x1fffffffffff);
- uint64_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x18, 0x1fffffffffff);
- uint64_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x17, 0xfffffffffff);
- uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL);
- uint64_t x50 = (x49 & 0x1fffffffffff);
- uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- uint64_t x54 = (x49 & 0x1fffffffffff);
- uint64_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- uint64_t x58 = (x49 & 0x1fffffffffff);
- uint64_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- uint64_t x62 = (x49 & 0x1fffffffffff);
- uint64_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- uint64_t x66 = (x49 & 0xfffffffffff);
- uint64_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- uint64_t x70 = (x49 & 0x1ffffffffffe);
- uint64_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- uint64_t x74 = (x49 & 0x1fffffffffff);
- uint64_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- uint64_t x78 = (x49 & 0x1fffffffffff);
- uint64_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- uint64_t x82 = (x49 & 0x1fffffffffff);
- uint64_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- uint64_t x86 = (x49 & 0xfffffffffff);
- uint64_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 44 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- (Return x88, Return x84, Return x80, Return x76, Return x72, Return x68, Return x64, Return x60, Return x56, Return x52))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e448m2e224m1_10limbs/freezeDisplay.v b/src/Specific/solinas64_2e448m2e224m1_10limbs/freezeDisplay.v
deleted file mode 100644
index 88df95057..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_10limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e448m2e224m1_10limbs/py_interpreter.sh b/src/Specific/solinas64_2e448m2e224m1_10limbs/py_interpreter.sh
deleted file mode 100755
index 2b218dea9..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_10limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**448 - 2**224 - 1' -Dmodulus_bytes='44.8' -Da24='121665'
diff --git a/src/Specific/solinas64_2e448m2e224m1_8limbs/CurveParameters.v b/src/Specific/solinas64_2e448m2e224m1_8limbs/CurveParameters.v
deleted file mode 100644
index 4c48e54cc..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^448 - 2^224 - 1
-Base: 56
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 56;
- bitwidth := 64;
- s := 2^448;
- c := [(1, 1); (2^224, 1)];
- carry_chains := Some [[3; 7]; [4; 0; 5; 1; 6; 2; 7; 3]; [4; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- 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/solinas64_2e448m2e224m1_8limbs/Synthesis.v b/src/Specific/solinas64_2e448m2e224m1_8limbs/Synthesis.v
deleted file mode 100644
index 36861b97b..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_8limbs.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/solinas64_2e448m2e224m1_8limbs/compiler.sh b/src/Specific/solinas64_2e448m2e224m1_8limbs/compiler.sh
deleted file mode 100755
index 8eb54735e..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,56,56,56,56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1' "$@"
diff --git a/src/Specific/solinas64_2e448m2e224m1_8limbs/compilerxx.sh b/src/Specific/solinas64_2e448m2e224m1_8limbs/compilerxx.sh
deleted file mode 100755
index e5924001d..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{56,56,56,56,56,56,56,56}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='56' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<448) - (1_mpz<<224) - 1' "$@"
diff --git a/src/Specific/solinas64_2e448m2e224m1_8limbs/feadd.c b/src/Specific/solinas64_2e448m2e224m1_8limbs/feadd.c
deleted file mode 100644
index 4def6ee9c..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e448m2e224m1_8limbs/feadd.v b/src/Specific/solinas64_2e448m2e224m1_8limbs/feadd.v
deleted file mode 100644
index 1f9e8f276..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_8limbs.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/solinas64_2e448m2e224m1_8limbs/feaddDisplay.log b/src/Specific/solinas64_2e448m2e224m1_8limbs/feaddDisplay.log
deleted file mode 100644
index 023fc8a31..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e448m2e224m1_8limbs/feaddDisplay.v b/src/Specific/solinas64_2e448m2e224m1_8limbs/feaddDisplay.v
deleted file mode 100644
index b1f971338..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e448m2e224m1_8limbs/fecarry.v b/src/Specific/solinas64_2e448m2e224m1_8limbs/fecarry.v
deleted file mode 100644
index c9e425adc..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_8limbs.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/solinas64_2e448m2e224m1_8limbs/fecarryDisplay.v b/src/Specific/solinas64_2e448m2e224m1_8limbs/fecarryDisplay.v
deleted file mode 100644
index 5097e0eed..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e448m2e224m1_8limbs/femul.c b/src/Specific/solinas64_2e448m2e224m1_8limbs/femul.c
deleted file mode 100644
index 9dc18d44a..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/femul.c
+++ /dev/null
@@ -1,81 +0,0 @@
-static void femul(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint128_t x32 = (((uint128_t)(x11 + x16) * (x25 + x30)) - ((uint128_t)x11 * x25));
- { uint128_t x33 = ((((uint128_t)(x9 + x17) * (x25 + x30)) + ((uint128_t)(x11 + x16) * (x23 + x31))) - (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)));
- { uint128_t x34 = ((((uint128_t)(x7 + x15) * (x25 + x30)) + (((uint128_t)(x9 + x17) * (x23 + x31)) + ((uint128_t)(x11 + x16) * (x21 + x29)))) - (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + ((uint128_t)x11 * x21))));
- { uint128_t x35 = ((((uint128_t)(x5 + x13) * (x25 + x30)) + (((uint128_t)(x7 + x15) * (x23 + x31)) + (((uint128_t)(x9 + x17) * (x21 + x29)) + ((uint128_t)(x11 + x16) * (x19 + x27))))) - (((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))));
- { uint128_t x36 = ((((uint128_t)(x5 + x13) * (x23 + x31)) + (((uint128_t)(x7 + x15) * (x21 + x29)) + ((uint128_t)(x9 + x17) * (x19 + x27)))) - (((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))));
- { uint128_t x37 = ((((uint128_t)(x5 + x13) * (x21 + x29)) + ((uint128_t)(x7 + x15) * (x19 + x27))) - (((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)));
- { uint128_t x38 = (((uint128_t)(x5 + x13) * (x19 + x27)) - ((uint128_t)x5 * x19));
- { uint128_t x39 = (((((uint128_t)x11 * x25) + ((uint128_t)x16 * x30)) + x36) + x32);
- { uint128_t x40 = ((((((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)) + (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))) + x37) + x33);
- { uint128_t x41 = ((((((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + ((uint128_t)x11 * x21))) + (((uint128_t)x15 * x30) + (((uint128_t)x17 * x31) + ((uint128_t)x16 * x29)))) + x38) + x34);
- { uint128_t x42 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27)))));
- { uint128_t x43 = (((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + ((uint128_t)x17 * x27)))) + x32);
- { uint128_t x44 = (((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (((uint128_t)x13 * x29) + ((uint128_t)x15 * x27))) + x33);
- { uint128_t x45 = ((((uint128_t)x5 * x19) + ((uint128_t)x13 * x27)) + x34);
- { uint64_t x46 = (uint64_t) (x42 >> 0x38);
- { uint64_t x47 = ((uint64_t)x42 & 0xffffffffffffff);
- { uint64_t x48 = (uint64_t) (x35 >> 0x38);
- { uint64_t x49 = ((uint64_t)x35 & 0xffffffffffffff);
- { uint128_t x50 = (((uint128_t)0x100000000000000 * x48) + x49);
- { uint64_t x51 = (uint64_t) (x50 >> 0x38);
- { uint64_t x52 = ((uint64_t)x50 & 0xffffffffffffff);
- { uint128_t x53 = ((x46 + x41) + x51);
- { uint64_t x54 = (uint64_t) (x53 >> 0x38);
- { uint64_t x55 = ((uint64_t)x53 & 0xffffffffffffff);
- { uint128_t x56 = (x45 + x51);
- { uint64_t x57 = (uint64_t) (x56 >> 0x38);
- { uint64_t x58 = ((uint64_t)x56 & 0xffffffffffffff);
- { uint128_t x59 = (x54 + x40);
- { uint64_t x60 = (uint64_t) (x59 >> 0x38);
- { uint64_t x61 = ((uint64_t)x59 & 0xffffffffffffff);
- { uint128_t x62 = (x57 + x44);
- { uint64_t x63 = (uint64_t) (x62 >> 0x38);
- { uint64_t x64 = ((uint64_t)x62 & 0xffffffffffffff);
- { uint128_t x65 = (x60 + x39);
- { uint64_t x66 = (uint64_t) (x65 >> 0x38);
- { uint64_t x67 = ((uint64_t)x65 & 0xffffffffffffff);
- { uint128_t x68 = (x63 + x43);
- { uint64_t x69 = (uint64_t) (x68 >> 0x38);
- { uint64_t x70 = ((uint64_t)x68 & 0xffffffffffffff);
- { uint64_t x71 = (x66 + x52);
- { uint64_t x72 = (x71 >> 0x38);
- { uint64_t x73 = (x71 & 0xffffffffffffff);
- { uint64_t x74 = (x69 + x47);
- { uint64_t x75 = (x74 >> 0x38);
- { uint64_t x76 = (x74 & 0xffffffffffffff);
- { uint64_t x77 = ((0x100000000000000 * x72) + x73);
- { uint64_t x78 = (x77 >> 0x38);
- { uint64_t x79 = (x77 & 0xffffffffffffff);
- { uint64_t x80 = ((x75 + x55) + x78);
- { uint64_t x81 = (x80 >> 0x38);
- { uint64_t x82 = (x80 & 0xffffffffffffff);
- { uint64_t x83 = (x58 + x78);
- { uint64_t x84 = (x83 >> 0x38);
- { uint64_t x85 = (x83 & 0xffffffffffffff);
- out[0] = x85;
- out[1] = (x84 + x64);
- out[2] = x70;
- out[3] = x76;
- out[4] = x82;
- out[5] = (x81 + x61);
- out[6] = x67;
- out[7] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e448m2e224m1_8limbs/femul.v b/src/Specific/solinas64_2e448m2e224m1_8limbs/femul.v
deleted file mode 100644
index 592ff9742..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_8limbs.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/solinas64_2e448m2e224m1_8limbs/femulDisplay.log b/src/Specific/solinas64_2e448m2e224m1_8limbs/femulDisplay.log
deleted file mode 100644
index f2d1600ca..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,61 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint128_t x32 = (((uint128_t)(x11 + x16) * (x25 + x30)) - ((uint128_t)x11 * x25));
- uint128_t x33 = ((((uint128_t)(x9 + x17) * (x25 + x30)) + ((uint128_t)(x11 + x16) * (x23 + x31))) - (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)));
- uint128_t x34 = ((((uint128_t)(x7 + x15) * (x25 + x30)) + (((uint128_t)(x9 + x17) * (x23 + x31)) + ((uint128_t)(x11 + x16) * (x21 + x29)))) - (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + ((uint128_t)x11 * x21))));
- uint128_t x35 = ((((uint128_t)(x5 + x13) * (x25 + x30)) + (((uint128_t)(x7 + x15) * (x23 + x31)) + (((uint128_t)(x9 + x17) * (x21 + x29)) + ((uint128_t)(x11 + x16) * (x19 + x27))))) - (((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))));
- uint128_t x36 = ((((uint128_t)(x5 + x13) * (x23 + x31)) + (((uint128_t)(x7 + x15) * (x21 + x29)) + ((uint128_t)(x9 + x17) * (x19 + x27)))) - (((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))));
- uint128_t x37 = ((((uint128_t)(x5 + x13) * (x21 + x29)) + ((uint128_t)(x7 + x15) * (x19 + x27))) - (((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)));
- uint128_t x38 = (((uint128_t)(x5 + x13) * (x19 + x27)) - ((uint128_t)x5 * x19));
- uint128_t x39 = (((((uint128_t)x11 * x25) + ((uint128_t)x16 * x30)) + x36) + x32);
- uint128_t x40 = ((((((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)) + (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))) + x37) + x33);
- uint128_t x41 = ((((((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + ((uint128_t)x11 * x21))) + (((uint128_t)x15 * x30) + (((uint128_t)x17 * x31) + ((uint128_t)x16 * x29)))) + x38) + x34);
- uint128_t x42 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27)))));
- uint128_t x43 = (((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + ((uint128_t)x17 * x27)))) + x32);
- uint128_t x44 = (((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (((uint128_t)x13 * x29) + ((uint128_t)x15 * x27))) + x33);
- uint128_t x45 = ((((uint128_t)x5 * x19) + ((uint128_t)x13 * x27)) + x34);
- uint64_t x46 = (uint64_t) (x42 >> 0x38);
- uint64_t x47 = ((uint64_t)x42 & 0xffffffffffffff);
- uint64_t x48 = (uint64_t) (x35 >> 0x38);
- uint64_t x49 = ((uint64_t)x35 & 0xffffffffffffff);
- uint128_t x50 = (((uint128_t)0x100000000000000 * x48) + x49);
- uint64_t x51 = (uint64_t) (x50 >> 0x38);
- uint64_t x52 = ((uint64_t)x50 & 0xffffffffffffff);
- uint128_t x53 = ((x46 + x41) + x51);
- uint64_t x54 = (uint64_t) (x53 >> 0x38);
- uint64_t x55 = ((uint64_t)x53 & 0xffffffffffffff);
- uint128_t x56 = (x45 + x51);
- uint64_t x57 = (uint64_t) (x56 >> 0x38);
- uint64_t x58 = ((uint64_t)x56 & 0xffffffffffffff);
- uint128_t x59 = (x54 + x40);
- uint64_t x60 = (uint64_t) (x59 >> 0x38);
- uint64_t x61 = ((uint64_t)x59 & 0xffffffffffffff);
- uint128_t x62 = (x57 + x44);
- uint64_t x63 = (uint64_t) (x62 >> 0x38);
- uint64_t x64 = ((uint64_t)x62 & 0xffffffffffffff);
- uint128_t x65 = (x60 + x39);
- uint64_t x66 = (uint64_t) (x65 >> 0x38);
- uint64_t x67 = ((uint64_t)x65 & 0xffffffffffffff);
- uint128_t x68 = (x63 + x43);
- uint64_t x69 = (uint64_t) (x68 >> 0x38);
- uint64_t x70 = ((uint64_t)x68 & 0xffffffffffffff);
- uint64_t x71 = (x66 + x52);
- uint64_t x72 = (x71 >> 0x38);
- uint64_t x73 = (x71 & 0xffffffffffffff);
- uint64_t x74 = (x69 + x47);
- uint64_t x75 = (x74 >> 0x38);
- uint64_t x76 = (x74 & 0xffffffffffffff);
- uint64_t x77 = ((0x100000000000000 * x72) + x73);
- uint64_t x78 = (x77 >> 0x38);
- uint64_t x79 = (x77 & 0xffffffffffffff);
- uint64_t x80 = ((x75 + x55) + x78);
- uint64_t x81 = (x80 >> 0x38);
- uint64_t x82 = (x80 & 0xffffffffffffff);
- uint64_t x83 = (x58 + x78);
- uint64_t x84 = (x83 >> 0x38);
- uint64_t x85 = (x83 & 0xffffffffffffff);
- return (Return x79, Return x67, (x81 + x61), Return x82, Return x76, Return x70, (x84 + x64), Return x85))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e448m2e224m1_8limbs/femulDisplay.v b/src/Specific/solinas64_2e448m2e224m1_8limbs/femulDisplay.v
deleted file mode 100644
index 00e215c0a..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e448m2e224m1_8limbs/fesquare.c b/src/Specific/solinas64_2e448m2e224m1_8limbs/fesquare.c
deleted file mode 100644
index cfb66f0aa..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/fesquare.c
+++ /dev/null
@@ -1,73 +0,0 @@
-static void fesquare(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x15 = (((uint128_t)(x8 + x13) * (x8 + x13)) - ((uint128_t)x8 * x8));
- { uint128_t x16 = ((((uint128_t)(x6 + x14) * (x8 + x13)) + ((uint128_t)(x8 + x13) * (x6 + x14))) - (((uint128_t)x6 * x8) + ((uint128_t)x8 * x6)));
- { uint128_t x17 = ((((uint128_t)(x4 + x12) * (x8 + x13)) + (((uint128_t)(x6 + x14) * (x6 + x14)) + ((uint128_t)(x8 + x13) * (x4 + x12)))) - (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + ((uint128_t)x8 * x4))));
- { uint128_t x18 = ((((uint128_t)(x2 + x10) * (x8 + x13)) + (((uint128_t)(x4 + x12) * (x6 + x14)) + (((uint128_t)(x6 + x14) * (x4 + x12)) + ((uint128_t)(x8 + x13) * (x2 + x10))))) - (((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))));
- { uint128_t x19 = ((((uint128_t)(x2 + x10) * (x6 + x14)) + (((uint128_t)(x4 + x12) * (x4 + x12)) + ((uint128_t)(x6 + x14) * (x2 + x10)))) - (((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))));
- { uint128_t x20 = ((((uint128_t)(x2 + x10) * (x4 + x12)) + ((uint128_t)(x4 + x12) * (x2 + x10))) - (((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)));
- { uint128_t x21 = (((uint128_t)(x2 + x10) * (x2 + x10)) - ((uint128_t)x2 * x2));
- { uint128_t x22 = (((((uint128_t)x8 * x8) + ((uint128_t)x13 * x13)) + x19) + x15);
- { uint128_t x23 = ((((((uint128_t)x6 * x8) + ((uint128_t)x8 * x6)) + (((uint128_t)x14 * x13) + ((uint128_t)x13 * x14))) + x20) + x16);
- { uint128_t x24 = ((((((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + ((uint128_t)x8 * x4))) + (((uint128_t)x12 * x13) + (((uint128_t)x14 * x14) + ((uint128_t)x13 * x12)))) + x21) + x17);
- { uint128_t x25 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (((uint128_t)x10 * x13) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((uint128_t)x13 * x10)))));
- { uint128_t x26 = (((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + ((uint128_t)x14 * x10)))) + x15);
- { uint128_t x27 = (((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (((uint128_t)x10 * x12) + ((uint128_t)x12 * x10))) + x16);
- { uint128_t x28 = ((((uint128_t)x2 * x2) + ((uint128_t)x10 * x10)) + x17);
- { uint64_t x29 = (uint64_t) (x25 >> 0x38);
- { uint64_t x30 = ((uint64_t)x25 & 0xffffffffffffff);
- { uint64_t x31 = (uint64_t) (x18 >> 0x38);
- { uint64_t x32 = ((uint64_t)x18 & 0xffffffffffffff);
- { uint128_t x33 = (((uint128_t)0x100000000000000 * x31) + x32);
- { uint64_t x34 = (uint64_t) (x33 >> 0x38);
- { uint64_t x35 = ((uint64_t)x33 & 0xffffffffffffff);
- { uint128_t x36 = ((x29 + x24) + x34);
- { uint64_t x37 = (uint64_t) (x36 >> 0x38);
- { uint64_t x38 = ((uint64_t)x36 & 0xffffffffffffff);
- { uint128_t x39 = (x28 + x34);
- { uint64_t x40 = (uint64_t) (x39 >> 0x38);
- { uint64_t x41 = ((uint64_t)x39 & 0xffffffffffffff);
- { uint128_t x42 = (x37 + x23);
- { uint64_t x43 = (uint64_t) (x42 >> 0x38);
- { uint64_t x44 = ((uint64_t)x42 & 0xffffffffffffff);
- { uint128_t x45 = (x40 + x27);
- { uint64_t x46 = (uint64_t) (x45 >> 0x38);
- { uint64_t x47 = ((uint64_t)x45 & 0xffffffffffffff);
- { uint128_t x48 = (x43 + x22);
- { uint64_t x49 = (uint64_t) (x48 >> 0x38);
- { uint64_t x50 = ((uint64_t)x48 & 0xffffffffffffff);
- { uint128_t x51 = (x46 + x26);
- { uint64_t x52 = (uint64_t) (x51 >> 0x38);
- { uint64_t x53 = ((uint64_t)x51 & 0xffffffffffffff);
- { uint64_t x54 = (x49 + x35);
- { uint64_t x55 = (x54 >> 0x38);
- { uint64_t x56 = (x54 & 0xffffffffffffff);
- { uint64_t x57 = (x52 + x30);
- { uint64_t x58 = (x57 >> 0x38);
- { uint64_t x59 = (x57 & 0xffffffffffffff);
- { uint64_t x60 = ((0x100000000000000 * x55) + x56);
- { uint64_t x61 = (x60 >> 0x38);
- { uint64_t x62 = (x60 & 0xffffffffffffff);
- { uint64_t x63 = ((x58 + x38) + x61);
- { uint64_t x64 = (x63 >> 0x38);
- { uint64_t x65 = (x63 & 0xffffffffffffff);
- { uint64_t x66 = (x41 + x61);
- { uint64_t x67 = (x66 >> 0x38);
- { uint64_t x68 = (x66 & 0xffffffffffffff);
- out[0] = x68;
- out[1] = (x67 + x47);
- out[2] = x53;
- out[3] = x59;
- out[4] = x65;
- out[5] = (x64 + x44);
- out[6] = x50;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e448m2e224m1_8limbs/fesquare.v b/src/Specific/solinas64_2e448m2e224m1_8limbs/fesquare.v
deleted file mode 100644
index c2686f12d..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_8limbs.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/solinas64_2e448m2e224m1_8limbs/fesquareDisplay.log b/src/Specific/solinas64_2e448m2e224m1_8limbs/fesquareDisplay.log
deleted file mode 100644
index 786925670..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,61 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x15 = (((uint128_t)(x8 + x13) * (x8 + x13)) - ((uint128_t)x8 * x8));
- uint128_t x16 = ((((uint128_t)(x6 + x14) * (x8 + x13)) + ((uint128_t)(x8 + x13) * (x6 + x14))) - (((uint128_t)x6 * x8) + ((uint128_t)x8 * x6)));
- uint128_t x17 = ((((uint128_t)(x4 + x12) * (x8 + x13)) + (((uint128_t)(x6 + x14) * (x6 + x14)) + ((uint128_t)(x8 + x13) * (x4 + x12)))) - (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + ((uint128_t)x8 * x4))));
- uint128_t x18 = ((((uint128_t)(x2 + x10) * (x8 + x13)) + (((uint128_t)(x4 + x12) * (x6 + x14)) + (((uint128_t)(x6 + x14) * (x4 + x12)) + ((uint128_t)(x8 + x13) * (x2 + x10))))) - (((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))));
- uint128_t x19 = ((((uint128_t)(x2 + x10) * (x6 + x14)) + (((uint128_t)(x4 + x12) * (x4 + x12)) + ((uint128_t)(x6 + x14) * (x2 + x10)))) - (((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))));
- uint128_t x20 = ((((uint128_t)(x2 + x10) * (x4 + x12)) + ((uint128_t)(x4 + x12) * (x2 + x10))) - (((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)));
- uint128_t x21 = (((uint128_t)(x2 + x10) * (x2 + x10)) - ((uint128_t)x2 * x2));
- uint128_t x22 = (((((uint128_t)x8 * x8) + ((uint128_t)x13 * x13)) + x19) + x15);
- uint128_t x23 = ((((((uint128_t)x6 * x8) + ((uint128_t)x8 * x6)) + (((uint128_t)x14 * x13) + ((uint128_t)x13 * x14))) + x20) + x16);
- uint128_t x24 = ((((((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + ((uint128_t)x8 * x4))) + (((uint128_t)x12 * x13) + (((uint128_t)x14 * x14) + ((uint128_t)x13 * x12)))) + x21) + x17);
- uint128_t x25 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (((uint128_t)x10 * x13) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((uint128_t)x13 * x10)))));
- uint128_t x26 = (((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + ((uint128_t)x14 * x10)))) + x15);
- uint128_t x27 = (((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (((uint128_t)x10 * x12) + ((uint128_t)x12 * x10))) + x16);
- uint128_t x28 = ((((uint128_t)x2 * x2) + ((uint128_t)x10 * x10)) + x17);
- uint64_t x29 = (uint64_t) (x25 >> 0x38);
- uint64_t x30 = ((uint64_t)x25 & 0xffffffffffffff);
- uint64_t x31 = (uint64_t) (x18 >> 0x38);
- uint64_t x32 = ((uint64_t)x18 & 0xffffffffffffff);
- uint128_t x33 = (((uint128_t)0x100000000000000 * x31) + x32);
- uint64_t x34 = (uint64_t) (x33 >> 0x38);
- uint64_t x35 = ((uint64_t)x33 & 0xffffffffffffff);
- uint128_t x36 = ((x29 + x24) + x34);
- uint64_t x37 = (uint64_t) (x36 >> 0x38);
- uint64_t x38 = ((uint64_t)x36 & 0xffffffffffffff);
- uint128_t x39 = (x28 + x34);
- uint64_t x40 = (uint64_t) (x39 >> 0x38);
- uint64_t x41 = ((uint64_t)x39 & 0xffffffffffffff);
- uint128_t x42 = (x37 + x23);
- uint64_t x43 = (uint64_t) (x42 >> 0x38);
- uint64_t x44 = ((uint64_t)x42 & 0xffffffffffffff);
- uint128_t x45 = (x40 + x27);
- uint64_t x46 = (uint64_t) (x45 >> 0x38);
- uint64_t x47 = ((uint64_t)x45 & 0xffffffffffffff);
- uint128_t x48 = (x43 + x22);
- uint64_t x49 = (uint64_t) (x48 >> 0x38);
- uint64_t x50 = ((uint64_t)x48 & 0xffffffffffffff);
- uint128_t x51 = (x46 + x26);
- uint64_t x52 = (uint64_t) (x51 >> 0x38);
- uint64_t x53 = ((uint64_t)x51 & 0xffffffffffffff);
- uint64_t x54 = (x49 + x35);
- uint64_t x55 = (x54 >> 0x38);
- uint64_t x56 = (x54 & 0xffffffffffffff);
- uint64_t x57 = (x52 + x30);
- uint64_t x58 = (x57 >> 0x38);
- uint64_t x59 = (x57 & 0xffffffffffffff);
- uint64_t x60 = ((0x100000000000000 * x55) + x56);
- uint64_t x61 = (x60 >> 0x38);
- uint64_t x62 = (x60 & 0xffffffffffffff);
- uint64_t x63 = ((x58 + x38) + x61);
- uint64_t x64 = (x63 >> 0x38);
- uint64_t x65 = (x63 & 0xffffffffffffff);
- uint64_t x66 = (x41 + x61);
- uint64_t x67 = (x66 >> 0x38);
- uint64_t x68 = (x66 & 0xffffffffffffff);
- return (Return x62, Return x50, (x64 + x44), Return x65, Return x59, Return x53, (x67 + x47), Return x68))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e448m2e224m1_8limbs/fesquareDisplay.v b/src/Specific/solinas64_2e448m2e224m1_8limbs/fesquareDisplay.v
deleted file mode 100644
index 33de1471b..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e448m2e224m1_8limbs/fesub.c b/src/Specific/solinas64_2e448m2e224m1_8limbs/fesub.c
deleted file mode 100644
index d42ae623f..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = ((0x1fffffffffffffe + x5) - x19);
- out[1] = ((0x1fffffffffffffe + x7) - x21);
- out[2] = ((0x1fffffffffffffe + x9) - x23);
- out[3] = ((0x1fffffffffffffe + x11) - x25);
- out[4] = ((0x1fffffffffffffc + x13) - x27);
- out[5] = ((0x1fffffffffffffe + x15) - x29);
- out[6] = ((0x1fffffffffffffe + x17) - x31);
- out[7] = ((0x1fffffffffffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e448m2e224m1_8limbs/fesub.v b/src/Specific/solinas64_2e448m2e224m1_8limbs/fesub.v
deleted file mode 100644
index b71d56ca2..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_8limbs.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/solinas64_2e448m2e224m1_8limbs/fesubDisplay.log b/src/Specific/solinas64_2e448m2e224m1_8limbs/fesubDisplay.log
deleted file mode 100644
index 35a6385e4..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0x1fffffffffffffe + x16) - x30), ((0x1fffffffffffffe + x17) - x31), ((0x1fffffffffffffe + x15) - x29), ((0x1fffffffffffffc + x13) - x27), ((0x1fffffffffffffe + x11) - x25), ((0x1fffffffffffffe + x9) - x23), ((0x1fffffffffffffe + x7) - x21), ((0x1fffffffffffffe + x5) - x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e448m2e224m1_8limbs/fesubDisplay.v b/src/Specific/solinas64_2e448m2e224m1_8limbs/fesubDisplay.v
deleted file mode 100644
index eb1301c72..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e448m2e224m1_8limbs/freeze.c b/src/Specific/solinas64_2e448m2e224m1_8limbs/freeze.c
deleted file mode 100644
index e59953182..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffffffffffff);
- { uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0xffffffffffffff);
- { uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0xfffffffffffffe);
- { uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffffffffffff);
- { uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0xffffffffffffff);
- { uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0xffffffffffffff);
- { uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- { uint64_t x40 = (x39 & 0xffffffffffffff);
- { uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint64_t x44 = (x39 & 0xffffffffffffff);
- { uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint64_t x48 = (x39 & 0xffffffffffffff);
- { uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint64_t x52 = (x39 & 0xffffffffffffff);
- { uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint64_t x56 = (x39 & 0xfffffffffffffe);
- { uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint64_t x60 = (x39 & 0xffffffffffffff);
- { uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint64_t x64 = (x39 & 0xffffffffffffff);
- { uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint64_t x68 = (x39 & 0xffffffffffffff);
- { uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e448m2e224m1_8limbs/freeze.v b/src/Specific/solinas64_2e448m2e224m1_8limbs/freeze.v
deleted file mode 100644
index 36590c4fa..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_8limbs.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/solinas64_2e448m2e224m1_8limbs/freezeDisplay.log b/src/Specific/solinas64_2e448m2e224m1_8limbs/freezeDisplay.log
deleted file mode 100644
index 1dfd2b0cb..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffffffffffff);
- uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0xffffffffffffff);
- uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0xfffffffffffffe);
- uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffffffffffff);
- uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0xffffffffffffff);
- uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0xffffffffffffff);
- uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- uint64_t x40 = (x39 & 0xffffffffffffff);
- uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint64_t x44 = (x39 & 0xffffffffffffff);
- uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint64_t x48 = (x39 & 0xffffffffffffff);
- uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint64_t x52 = (x39 & 0xffffffffffffff);
- uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint64_t x56 = (x39 & 0xfffffffffffffe);
- uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint64_t x60 = (x39 & 0xffffffffffffff);
- uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint64_t x64 = (x39 & 0xffffffffffffff);
- uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint64_t x68 = (x39 & 0xffffffffffffff);
- uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e448m2e224m1_8limbs/freezeDisplay.v b/src/Specific/solinas64_2e448m2e224m1_8limbs/freezeDisplay.v
deleted file mode 100644
index 78dfadc9f..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e448m2e224m1_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e448m2e224m1_8limbs/py_interpreter.sh b/src/Specific/solinas64_2e448m2e224m1_8limbs/py_interpreter.sh
deleted file mode 100755
index afd8e8956..000000000
--- a/src/Specific/solinas64_2e448m2e224m1_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**448 - 2**224 - 1' -Dmodulus_bytes='56' -Da24='121665'
diff --git a/src/Specific/solinas64_2e450m2e225m1_10limbs/CurveParameters.v b/src/Specific/solinas64_2e450m2e225m1_10limbs/CurveParameters.v
deleted file mode 100644
index 497a47cc6..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^450 - 2^225 - 1
-Base: 45
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 45;
- bitwidth := 64;
- s := 2^450;
- c := [(1, 1); (2^225, 1)];
- carry_chains := Some [[4; 9]; [5; 0; 6; 1; 7; 2; 8; 3; 9; 4]; [5; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- 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/solinas64_2e450m2e225m1_10limbs/Synthesis.v b/src/Specific/solinas64_2e450m2e225m1_10limbs/Synthesis.v
deleted file mode 100644
index 595a7df5c..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_10limbs.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/solinas64_2e450m2e225m1_10limbs/compiler.sh b/src/Specific/solinas64_2e450m2e225m1_10limbs/compiler.sh
deleted file mode 100755
index ce44e3051..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{45,45,45,45,45,45,45,45,45,45}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' "$@"
diff --git a/src/Specific/solinas64_2e450m2e225m1_10limbs/compilerxx.sh b/src/Specific/solinas64_2e450m2e225m1_10limbs/compilerxx.sh
deleted file mode 100755
index 07c3ee06c..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{45,45,45,45,45,45,45,45,45,45}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' "$@"
diff --git a/src/Specific/solinas64_2e450m2e225m1_10limbs/feadd.c b/src/Specific/solinas64_2e450m2e225m1_10limbs/feadd.c
deleted file mode 100644
index df991e375..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/feadd.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void feadd(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- out[0] = (x5 + x23);
- out[1] = (x7 + x25);
- out[2] = (x9 + x27);
- out[3] = (x11 + x29);
- out[4] = (x13 + x31);
- out[5] = (x15 + x33);
- out[6] = (x17 + x35);
- out[7] = (x19 + x37);
- out[8] = (x21 + x39);
- out[9] = (x20 + x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e450m2e225m1_10limbs/feadd.v b/src/Specific/solinas64_2e450m2e225m1_10limbs/feadd.v
deleted file mode 100644
index cf575fc02..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_10limbs.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/solinas64_2e450m2e225m1_10limbs/feaddDisplay.log b/src/Specific/solinas64_2e450m2e225m1_10limbs/feaddDisplay.log
deleted file mode 100644
index 04176128e..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e450m2e225m1_10limbs/feaddDisplay.v b/src/Specific/solinas64_2e450m2e225m1_10limbs/feaddDisplay.v
deleted file mode 100644
index 2ca3de98d..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_10limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e450m2e225m1_10limbs/fecarry.v b/src/Specific/solinas64_2e450m2e225m1_10limbs/fecarry.v
deleted file mode 100644
index 071da9240..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_10limbs.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/solinas64_2e450m2e225m1_10limbs/fecarryDisplay.v b/src/Specific/solinas64_2e450m2e225m1_10limbs/fecarryDisplay.v
deleted file mode 100644
index 7a1514b26..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_10limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e450m2e225m1_10limbs/femul.c b/src/Specific/solinas64_2e450m2e225m1_10limbs/femul.c
deleted file mode 100644
index bab1f14b7..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/femul.c
+++ /dev/null
@@ -1,97 +0,0 @@
-static void femul(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- { uint128_t x40 = (((uint128_t)(x13 + x20) * (x31 + x38)) - ((uint128_t)x13 * x31));
- { uint128_t x41 = ((((uint128_t)(x11 + x21) * (x31 + x38)) + ((uint128_t)(x13 + x20) * (x29 + x39))) - (((uint128_t)x11 * x31) + ((uint128_t)x13 * x29)));
- { uint128_t x42 = ((((uint128_t)(x9 + x19) * (x31 + x38)) + (((uint128_t)(x11 + x21) * (x29 + x39)) + ((uint128_t)(x13 + x20) * (x27 + x37)))) - (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + ((uint128_t)x13 * x27))));
- { uint128_t x43 = ((((uint128_t)(x7 + x17) * (x31 + x38)) + (((uint128_t)(x9 + x19) * (x29 + x39)) + (((uint128_t)(x11 + x21) * (x27 + x37)) + ((uint128_t)(x13 + x20) * (x25 + x35))))) - (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + ((uint128_t)x13 * x25)))));
- { uint128_t x44 = ((((uint128_t)(x5 + x15) * (x31 + x38)) + (((uint128_t)(x7 + x17) * (x29 + x39)) + (((uint128_t)(x9 + x19) * (x27 + x37)) + (((uint128_t)(x11 + x21) * (x25 + x35)) + ((uint128_t)(x13 + x20) * (x23 + x33)))))) - (((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + ((uint128_t)x13 * x23))))));
- { uint128_t x45 = ((((uint128_t)(x5 + x15) * (x29 + x39)) + (((uint128_t)(x7 + x17) * (x27 + x37)) + (((uint128_t)(x9 + x19) * (x25 + x35)) + ((uint128_t)(x11 + x21) * (x23 + x33))))) - (((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)))));
- { uint128_t x46 = ((((uint128_t)(x5 + x15) * (x27 + x37)) + (((uint128_t)(x7 + x17) * (x25 + x35)) + ((uint128_t)(x9 + x19) * (x23 + x33)))) - (((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((uint128_t)x9 * x23))));
- { uint128_t x47 = ((((uint128_t)(x5 + x15) * (x25 + x35)) + ((uint128_t)(x7 + x17) * (x23 + x33))) - (((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)));
- { uint128_t x48 = (((uint128_t)(x5 + x15) * (x23 + x33)) - ((uint128_t)x5 * x23));
- { uint128_t x49 = (((((uint128_t)x13 * x31) + ((uint128_t)x20 * x38)) + x45) + x40);
- { uint128_t x50 = ((((((uint128_t)x11 * x31) + ((uint128_t)x13 * x29)) + (((uint128_t)x21 * x38) + ((uint128_t)x20 * x39))) + x46) + x41);
- { uint128_t x51 = ((((((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + ((uint128_t)x13 * x27))) + (((uint128_t)x19 * x38) + (((uint128_t)x21 * x39) + ((uint128_t)x20 * x37)))) + x47) + x42);
- { uint128_t x52 = ((((((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + ((uint128_t)x13 * x25)))) + (((uint128_t)x17 * x38) + (((uint128_t)x19 * x39) + (((uint128_t)x21 * x37) + ((uint128_t)x20 * x35))))) + x48) + x43);
- { uint128_t x53 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + ((uint128_t)x13 * x23))))) + (((uint128_t)x15 * x38) + (((uint128_t)x17 * x39) + (((uint128_t)x19 * x37) + (((uint128_t)x21 * x35) + ((uint128_t)x20 * x33))))));
- { uint128_t x54 = (((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)))) + (((uint128_t)x15 * x39) + (((uint128_t)x17 * x37) + (((uint128_t)x19 * x35) + ((uint128_t)x21 * x33))))) + x40);
- { uint128_t x55 = (((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((uint128_t)x9 * x23))) + (((uint128_t)x15 * x37) + (((uint128_t)x17 * x35) + ((uint128_t)x19 * x33)))) + x41);
- { uint128_t x56 = (((((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)) + (((uint128_t)x15 * x35) + ((uint128_t)x17 * x33))) + x42);
- { uint128_t x57 = ((((uint128_t)x5 * x23) + ((uint128_t)x15 * x33)) + x43);
- { uint64_t x58 = (uint64_t) (x53 >> 0x2d);
- { uint64_t x59 = ((uint64_t)x53 & 0x1fffffffffff);
- { uint64_t x60 = (uint64_t) (x44 >> 0x2d);
- { uint64_t x61 = ((uint64_t)x44 & 0x1fffffffffff);
- { uint128_t x62 = (((uint128_t)0x200000000000 * x60) + x61);
- { uint64_t x63 = (uint64_t) (x62 >> 0x2d);
- { uint64_t x64 = ((uint64_t)x62 & 0x1fffffffffff);
- { uint128_t x65 = ((x58 + x52) + x63);
- { uint64_t x66 = (uint64_t) (x65 >> 0x2d);
- { uint64_t x67 = ((uint64_t)x65 & 0x1fffffffffff);
- { uint128_t x68 = (x57 + x63);
- { uint64_t x69 = (uint64_t) (x68 >> 0x2d);
- { uint64_t x70 = ((uint64_t)x68 & 0x1fffffffffff);
- { uint128_t x71 = (x66 + x51);
- { uint64_t x72 = (uint64_t) (x71 >> 0x2d);
- { uint64_t x73 = ((uint64_t)x71 & 0x1fffffffffff);
- { uint128_t x74 = (x69 + x56);
- { uint64_t x75 = (uint64_t) (x74 >> 0x2d);
- { uint64_t x76 = ((uint64_t)x74 & 0x1fffffffffff);
- { uint128_t x77 = (x72 + x50);
- { uint64_t x78 = (uint64_t) (x77 >> 0x2d);
- { uint64_t x79 = ((uint64_t)x77 & 0x1fffffffffff);
- { uint128_t x80 = (x75 + x55);
- { uint64_t x81 = (uint64_t) (x80 >> 0x2d);
- { uint64_t x82 = ((uint64_t)x80 & 0x1fffffffffff);
- { uint128_t x83 = (x78 + x49);
- { uint64_t x84 = (uint64_t) (x83 >> 0x2d);
- { uint64_t x85 = ((uint64_t)x83 & 0x1fffffffffff);
- { uint128_t x86 = (x81 + x54);
- { uint64_t x87 = (uint64_t) (x86 >> 0x2d);
- { uint64_t x88 = ((uint64_t)x86 & 0x1fffffffffff);
- { uint64_t x89 = (x84 + x64);
- { uint64_t x90 = (x89 >> 0x2d);
- { uint64_t x91 = (x89 & 0x1fffffffffff);
- { uint64_t x92 = (x87 + x59);
- { uint64_t x93 = (x92 >> 0x2d);
- { uint64_t x94 = (x92 & 0x1fffffffffff);
- { uint64_t x95 = ((0x200000000000 * x90) + x91);
- { uint64_t x96 = (x95 >> 0x2d);
- { uint64_t x97 = (x95 & 0x1fffffffffff);
- { uint64_t x98 = ((x93 + x67) + x96);
- { uint64_t x99 = (x98 >> 0x2d);
- { uint64_t x100 = (x98 & 0x1fffffffffff);
- { uint64_t x101 = (x70 + x96);
- { uint64_t x102 = (x101 >> 0x2d);
- { uint64_t x103 = (x101 & 0x1fffffffffff);
- out[0] = x103;
- out[1] = (x102 + x76);
- out[2] = x82;
- out[3] = x88;
- out[4] = x94;
- out[5] = x100;
- out[6] = (x99 + x73);
- out[7] = x79;
- out[8] = x85;
- out[9] = x97;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e450m2e225m1_10limbs/femul.v b/src/Specific/solinas64_2e450m2e225m1_10limbs/femul.v
deleted file mode 100644
index da8ebd697..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_10limbs.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/solinas64_2e450m2e225m1_10limbs/femulDisplay.log b/src/Specific/solinas64_2e450m2e225m1_10limbs/femulDisplay.log
deleted file mode 100644
index 08f7d86c7..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/femulDisplay.log
+++ /dev/null
@@ -1,71 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- uint128_t x40 = (((uint128_t)(x13 + x20) * (x31 + x38)) - ((uint128_t)x13 * x31));
- uint128_t x41 = ((((uint128_t)(x11 + x21) * (x31 + x38)) + ((uint128_t)(x13 + x20) * (x29 + x39))) - (((uint128_t)x11 * x31) + ((uint128_t)x13 * x29)));
- uint128_t x42 = ((((uint128_t)(x9 + x19) * (x31 + x38)) + (((uint128_t)(x11 + x21) * (x29 + x39)) + ((uint128_t)(x13 + x20) * (x27 + x37)))) - (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + ((uint128_t)x13 * x27))));
- uint128_t x43 = ((((uint128_t)(x7 + x17) * (x31 + x38)) + (((uint128_t)(x9 + x19) * (x29 + x39)) + (((uint128_t)(x11 + x21) * (x27 + x37)) + ((uint128_t)(x13 + x20) * (x25 + x35))))) - (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + ((uint128_t)x13 * x25)))));
- uint128_t x44 = ((((uint128_t)(x5 + x15) * (x31 + x38)) + (((uint128_t)(x7 + x17) * (x29 + x39)) + (((uint128_t)(x9 + x19) * (x27 + x37)) + (((uint128_t)(x11 + x21) * (x25 + x35)) + ((uint128_t)(x13 + x20) * (x23 + x33)))))) - (((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + ((uint128_t)x13 * x23))))));
- uint128_t x45 = ((((uint128_t)(x5 + x15) * (x29 + x39)) + (((uint128_t)(x7 + x17) * (x27 + x37)) + (((uint128_t)(x9 + x19) * (x25 + x35)) + ((uint128_t)(x11 + x21) * (x23 + x33))))) - (((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)))));
- uint128_t x46 = ((((uint128_t)(x5 + x15) * (x27 + x37)) + (((uint128_t)(x7 + x17) * (x25 + x35)) + ((uint128_t)(x9 + x19) * (x23 + x33)))) - (((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((uint128_t)x9 * x23))));
- uint128_t x47 = ((((uint128_t)(x5 + x15) * (x25 + x35)) + ((uint128_t)(x7 + x17) * (x23 + x33))) - (((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)));
- uint128_t x48 = (((uint128_t)(x5 + x15) * (x23 + x33)) - ((uint128_t)x5 * x23));
- uint128_t x49 = (((((uint128_t)x13 * x31) + ((uint128_t)x20 * x38)) + x45) + x40);
- uint128_t x50 = ((((((uint128_t)x11 * x31) + ((uint128_t)x13 * x29)) + (((uint128_t)x21 * x38) + ((uint128_t)x20 * x39))) + x46) + x41);
- uint128_t x51 = ((((((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + ((uint128_t)x13 * x27))) + (((uint128_t)x19 * x38) + (((uint128_t)x21 * x39) + ((uint128_t)x20 * x37)))) + x47) + x42);
- uint128_t x52 = ((((((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + ((uint128_t)x13 * x25)))) + (((uint128_t)x17 * x38) + (((uint128_t)x19 * x39) + (((uint128_t)x21 * x37) + ((uint128_t)x20 * x35))))) + x48) + x43);
- uint128_t x53 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + ((uint128_t)x13 * x23))))) + (((uint128_t)x15 * x38) + (((uint128_t)x17 * x39) + (((uint128_t)x19 * x37) + (((uint128_t)x21 * x35) + ((uint128_t)x20 * x33))))));
- uint128_t x54 = (((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)))) + (((uint128_t)x15 * x39) + (((uint128_t)x17 * x37) + (((uint128_t)x19 * x35) + ((uint128_t)x21 * x33))))) + x40);
- uint128_t x55 = (((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((uint128_t)x9 * x23))) + (((uint128_t)x15 * x37) + (((uint128_t)x17 * x35) + ((uint128_t)x19 * x33)))) + x41);
- uint128_t x56 = (((((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)) + (((uint128_t)x15 * x35) + ((uint128_t)x17 * x33))) + x42);
- uint128_t x57 = ((((uint128_t)x5 * x23) + ((uint128_t)x15 * x33)) + x43);
- uint64_t x58 = (uint64_t) (x53 >> 0x2d);
- uint64_t x59 = ((uint64_t)x53 & 0x1fffffffffff);
- uint64_t x60 = (uint64_t) (x44 >> 0x2d);
- uint64_t x61 = ((uint64_t)x44 & 0x1fffffffffff);
- uint128_t x62 = (((uint128_t)0x200000000000 * x60) + x61);
- uint64_t x63 = (uint64_t) (x62 >> 0x2d);
- uint64_t x64 = ((uint64_t)x62 & 0x1fffffffffff);
- uint128_t x65 = ((x58 + x52) + x63);
- uint64_t x66 = (uint64_t) (x65 >> 0x2d);
- uint64_t x67 = ((uint64_t)x65 & 0x1fffffffffff);
- uint128_t x68 = (x57 + x63);
- uint64_t x69 = (uint64_t) (x68 >> 0x2d);
- uint64_t x70 = ((uint64_t)x68 & 0x1fffffffffff);
- uint128_t x71 = (x66 + x51);
- uint64_t x72 = (uint64_t) (x71 >> 0x2d);
- uint64_t x73 = ((uint64_t)x71 & 0x1fffffffffff);
- uint128_t x74 = (x69 + x56);
- uint64_t x75 = (uint64_t) (x74 >> 0x2d);
- uint64_t x76 = ((uint64_t)x74 & 0x1fffffffffff);
- uint128_t x77 = (x72 + x50);
- uint64_t x78 = (uint64_t) (x77 >> 0x2d);
- uint64_t x79 = ((uint64_t)x77 & 0x1fffffffffff);
- uint128_t x80 = (x75 + x55);
- uint64_t x81 = (uint64_t) (x80 >> 0x2d);
- uint64_t x82 = ((uint64_t)x80 & 0x1fffffffffff);
- uint128_t x83 = (x78 + x49);
- uint64_t x84 = (uint64_t) (x83 >> 0x2d);
- uint64_t x85 = ((uint64_t)x83 & 0x1fffffffffff);
- uint128_t x86 = (x81 + x54);
- uint64_t x87 = (uint64_t) (x86 >> 0x2d);
- uint64_t x88 = ((uint64_t)x86 & 0x1fffffffffff);
- uint64_t x89 = (x84 + x64);
- uint64_t x90 = (x89 >> 0x2d);
- uint64_t x91 = (x89 & 0x1fffffffffff);
- uint64_t x92 = (x87 + x59);
- uint64_t x93 = (x92 >> 0x2d);
- uint64_t x94 = (x92 & 0x1fffffffffff);
- uint64_t x95 = ((0x200000000000 * x90) + x91);
- uint64_t x96 = (x95 >> 0x2d);
- uint64_t x97 = (x95 & 0x1fffffffffff);
- uint64_t x98 = ((x93 + x67) + x96);
- uint64_t x99 = (x98 >> 0x2d);
- uint64_t x100 = (x98 & 0x1fffffffffff);
- uint64_t x101 = (x70 + x96);
- uint64_t x102 = (x101 >> 0x2d);
- uint64_t x103 = (x101 & 0x1fffffffffff);
- return (Return x97, Return x85, Return x79, (x99 + x73), Return x100, Return x94, Return x88, Return x82, (x102 + x76), Return x103))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e450m2e225m1_10limbs/femulDisplay.v b/src/Specific/solinas64_2e450m2e225m1_10limbs/femulDisplay.v
deleted file mode 100644
index ed34604e7..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_10limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e450m2e225m1_10limbs/fesquare.c b/src/Specific/solinas64_2e450m2e225m1_10limbs/fesquare.c
deleted file mode 100644
index 17fc629df..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/fesquare.c
+++ /dev/null
@@ -1,87 +0,0 @@
-static void fesquare(uint64_t out[10], const uint64_t in1[10]) {
- { const uint64_t x17 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x19 = (((uint128_t)(x10 + x17) * (x10 + x17)) - ((uint128_t)x10 * x10));
- { uint128_t x20 = ((((uint128_t)(x8 + x18) * (x10 + x17)) + ((uint128_t)(x10 + x17) * (x8 + x18))) - (((uint128_t)x8 * x10) + ((uint128_t)x10 * x8)));
- { uint128_t x21 = ((((uint128_t)(x6 + x16) * (x10 + x17)) + (((uint128_t)(x8 + x18) * (x8 + x18)) + ((uint128_t)(x10 + x17) * (x6 + x16)))) - (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + ((uint128_t)x10 * x6))));
- { uint128_t x22 = ((((uint128_t)(x4 + x14) * (x10 + x17)) + (((uint128_t)(x6 + x16) * (x8 + x18)) + (((uint128_t)(x8 + x18) * (x6 + x16)) + ((uint128_t)(x10 + x17) * (x4 + x14))))) - (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((uint128_t)x10 * x4)))));
- { uint128_t x23 = ((((uint128_t)(x2 + x12) * (x10 + x17)) + (((uint128_t)(x4 + x14) * (x8 + x18)) + (((uint128_t)(x6 + x16) * (x6 + x16)) + (((uint128_t)(x8 + x18) * (x4 + x14)) + ((uint128_t)(x10 + x17) * (x2 + x12)))))) - (((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))));
- { uint128_t x24 = ((((uint128_t)(x2 + x12) * (x8 + x18)) + (((uint128_t)(x4 + x14) * (x6 + x16)) + (((uint128_t)(x6 + x16) * (x4 + x14)) + ((uint128_t)(x8 + x18) * (x2 + x12))))) - (((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))));
- { uint128_t x25 = ((((uint128_t)(x2 + x12) * (x6 + x16)) + (((uint128_t)(x4 + x14) * (x4 + x14)) + ((uint128_t)(x6 + x16) * (x2 + x12)))) - (((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))));
- { uint128_t x26 = ((((uint128_t)(x2 + x12) * (x4 + x14)) + ((uint128_t)(x4 + x14) * (x2 + x12))) - (((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)));
- { uint128_t x27 = (((uint128_t)(x2 + x12) * (x2 + x12)) - ((uint128_t)x2 * x2));
- { uint128_t x28 = (((((uint128_t)x10 * x10) + ((uint128_t)x17 * x17)) + x24) + x19);
- { uint128_t x29 = ((((((uint128_t)x8 * x10) + ((uint128_t)x10 * x8)) + (((uint128_t)x18 * x17) + ((uint128_t)x17 * x18))) + x25) + x20);
- { uint128_t x30 = ((((((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + ((uint128_t)x10 * x6))) + (((uint128_t)x16 * x17) + (((uint128_t)x18 * x18) + ((uint128_t)x17 * x16)))) + x26) + x21);
- { uint128_t x31 = ((((((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((uint128_t)x10 * x4)))) + (((uint128_t)x14 * x17) + (((uint128_t)x16 * x18) + (((uint128_t)x18 * x16) + ((uint128_t)x17 * x14))))) + x27) + x22);
- { uint128_t x32 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (((uint128_t)x12 * x17) + (((uint128_t)x14 * x18) + (((uint128_t)x16 * x16) + (((uint128_t)x18 * x14) + ((uint128_t)x17 * x12))))));
- { uint128_t x33 = (((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (((uint128_t)x12 * x18) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + ((uint128_t)x18 * x12))))) + x19);
- { uint128_t x34 = (((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (((uint128_t)x12 * x16) + (((uint128_t)x14 * x14) + ((uint128_t)x16 * x12)))) + x20);
- { uint128_t x35 = (((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (((uint128_t)x12 * x14) + ((uint128_t)x14 * x12))) + x21);
- { uint128_t x36 = ((((uint128_t)x2 * x2) + ((uint128_t)x12 * x12)) + x22);
- { uint64_t x37 = (uint64_t) (x32 >> 0x2d);
- { uint64_t x38 = ((uint64_t)x32 & 0x1fffffffffff);
- { uint64_t x39 = (uint64_t) (x23 >> 0x2d);
- { uint64_t x40 = ((uint64_t)x23 & 0x1fffffffffff);
- { uint128_t x41 = (((uint128_t)0x200000000000 * x39) + x40);
- { uint64_t x42 = (uint64_t) (x41 >> 0x2d);
- { uint64_t x43 = ((uint64_t)x41 & 0x1fffffffffff);
- { uint128_t x44 = ((x37 + x31) + x42);
- { uint64_t x45 = (uint64_t) (x44 >> 0x2d);
- { uint64_t x46 = ((uint64_t)x44 & 0x1fffffffffff);
- { uint128_t x47 = (x36 + x42);
- { uint64_t x48 = (uint64_t) (x47 >> 0x2d);
- { uint64_t x49 = ((uint64_t)x47 & 0x1fffffffffff);
- { uint128_t x50 = (x45 + x30);
- { uint64_t x51 = (uint64_t) (x50 >> 0x2d);
- { uint64_t x52 = ((uint64_t)x50 & 0x1fffffffffff);
- { uint128_t x53 = (x48 + x35);
- { uint64_t x54 = (uint64_t) (x53 >> 0x2d);
- { uint64_t x55 = ((uint64_t)x53 & 0x1fffffffffff);
- { uint128_t x56 = (x51 + x29);
- { uint64_t x57 = (uint64_t) (x56 >> 0x2d);
- { uint64_t x58 = ((uint64_t)x56 & 0x1fffffffffff);
- { uint128_t x59 = (x54 + x34);
- { uint64_t x60 = (uint64_t) (x59 >> 0x2d);
- { uint64_t x61 = ((uint64_t)x59 & 0x1fffffffffff);
- { uint128_t x62 = (x57 + x28);
- { uint64_t x63 = (uint64_t) (x62 >> 0x2d);
- { uint64_t x64 = ((uint64_t)x62 & 0x1fffffffffff);
- { uint128_t x65 = (x60 + x33);
- { uint64_t x66 = (uint64_t) (x65 >> 0x2d);
- { uint64_t x67 = ((uint64_t)x65 & 0x1fffffffffff);
- { uint64_t x68 = (x63 + x43);
- { uint64_t x69 = (x68 >> 0x2d);
- { uint64_t x70 = (x68 & 0x1fffffffffff);
- { uint64_t x71 = (x66 + x38);
- { uint64_t x72 = (x71 >> 0x2d);
- { uint64_t x73 = (x71 & 0x1fffffffffff);
- { uint64_t x74 = ((0x200000000000 * x69) + x70);
- { uint64_t x75 = (x74 >> 0x2d);
- { uint64_t x76 = (x74 & 0x1fffffffffff);
- { uint64_t x77 = ((x72 + x46) + x75);
- { uint64_t x78 = (x77 >> 0x2d);
- { uint64_t x79 = (x77 & 0x1fffffffffff);
- { uint64_t x80 = (x49 + x75);
- { uint64_t x81 = (x80 >> 0x2d);
- { uint64_t x82 = (x80 & 0x1fffffffffff);
- out[0] = x82;
- out[1] = (x81 + x55);
- out[2] = x61;
- out[3] = x67;
- out[4] = x73;
- out[5] = x79;
- out[6] = (x78 + x52);
- out[7] = x58;
- out[8] = x64;
- out[9] = x76;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e450m2e225m1_10limbs/fesquare.v b/src/Specific/solinas64_2e450m2e225m1_10limbs/fesquare.v
deleted file mode 100644
index 0a110440b..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_10limbs.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/solinas64_2e450m2e225m1_10limbs/fesquareDisplay.log b/src/Specific/solinas64_2e450m2e225m1_10limbs/fesquareDisplay.log
deleted file mode 100644
index 93687271b..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,71 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x19 = (((uint128_t)(x10 + x17) * (x10 + x17)) - ((uint128_t)x10 * x10));
- uint128_t x20 = ((((uint128_t)(x8 + x18) * (x10 + x17)) + ((uint128_t)(x10 + x17) * (x8 + x18))) - (((uint128_t)x8 * x10) + ((uint128_t)x10 * x8)));
- uint128_t x21 = ((((uint128_t)(x6 + x16) * (x10 + x17)) + (((uint128_t)(x8 + x18) * (x8 + x18)) + ((uint128_t)(x10 + x17) * (x6 + x16)))) - (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + ((uint128_t)x10 * x6))));
- uint128_t x22 = ((((uint128_t)(x4 + x14) * (x10 + x17)) + (((uint128_t)(x6 + x16) * (x8 + x18)) + (((uint128_t)(x8 + x18) * (x6 + x16)) + ((uint128_t)(x10 + x17) * (x4 + x14))))) - (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((uint128_t)x10 * x4)))));
- uint128_t x23 = ((((uint128_t)(x2 + x12) * (x10 + x17)) + (((uint128_t)(x4 + x14) * (x8 + x18)) + (((uint128_t)(x6 + x16) * (x6 + x16)) + (((uint128_t)(x8 + x18) * (x4 + x14)) + ((uint128_t)(x10 + x17) * (x2 + x12)))))) - (((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))));
- uint128_t x24 = ((((uint128_t)(x2 + x12) * (x8 + x18)) + (((uint128_t)(x4 + x14) * (x6 + x16)) + (((uint128_t)(x6 + x16) * (x4 + x14)) + ((uint128_t)(x8 + x18) * (x2 + x12))))) - (((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))));
- uint128_t x25 = ((((uint128_t)(x2 + x12) * (x6 + x16)) + (((uint128_t)(x4 + x14) * (x4 + x14)) + ((uint128_t)(x6 + x16) * (x2 + x12)))) - (((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))));
- uint128_t x26 = ((((uint128_t)(x2 + x12) * (x4 + x14)) + ((uint128_t)(x4 + x14) * (x2 + x12))) - (((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)));
- uint128_t x27 = (((uint128_t)(x2 + x12) * (x2 + x12)) - ((uint128_t)x2 * x2));
- uint128_t x28 = (((((uint128_t)x10 * x10) + ((uint128_t)x17 * x17)) + x24) + x19);
- uint128_t x29 = ((((((uint128_t)x8 * x10) + ((uint128_t)x10 * x8)) + (((uint128_t)x18 * x17) + ((uint128_t)x17 * x18))) + x25) + x20);
- uint128_t x30 = ((((((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + ((uint128_t)x10 * x6))) + (((uint128_t)x16 * x17) + (((uint128_t)x18 * x18) + ((uint128_t)x17 * x16)))) + x26) + x21);
- uint128_t x31 = ((((((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((uint128_t)x10 * x4)))) + (((uint128_t)x14 * x17) + (((uint128_t)x16 * x18) + (((uint128_t)x18 * x16) + ((uint128_t)x17 * x14))))) + x27) + x22);
- uint128_t x32 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (((uint128_t)x12 * x17) + (((uint128_t)x14 * x18) + (((uint128_t)x16 * x16) + (((uint128_t)x18 * x14) + ((uint128_t)x17 * x12))))));
- uint128_t x33 = (((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (((uint128_t)x12 * x18) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + ((uint128_t)x18 * x12))))) + x19);
- uint128_t x34 = (((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (((uint128_t)x12 * x16) + (((uint128_t)x14 * x14) + ((uint128_t)x16 * x12)))) + x20);
- uint128_t x35 = (((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (((uint128_t)x12 * x14) + ((uint128_t)x14 * x12))) + x21);
- uint128_t x36 = ((((uint128_t)x2 * x2) + ((uint128_t)x12 * x12)) + x22);
- uint64_t x37 = (uint64_t) (x32 >> 0x2d);
- uint64_t x38 = ((uint64_t)x32 & 0x1fffffffffff);
- uint64_t x39 = (uint64_t) (x23 >> 0x2d);
- uint64_t x40 = ((uint64_t)x23 & 0x1fffffffffff);
- uint128_t x41 = (((uint128_t)0x200000000000 * x39) + x40);
- uint64_t x42 = (uint64_t) (x41 >> 0x2d);
- uint64_t x43 = ((uint64_t)x41 & 0x1fffffffffff);
- uint128_t x44 = ((x37 + x31) + x42);
- uint64_t x45 = (uint64_t) (x44 >> 0x2d);
- uint64_t x46 = ((uint64_t)x44 & 0x1fffffffffff);
- uint128_t x47 = (x36 + x42);
- uint64_t x48 = (uint64_t) (x47 >> 0x2d);
- uint64_t x49 = ((uint64_t)x47 & 0x1fffffffffff);
- uint128_t x50 = (x45 + x30);
- uint64_t x51 = (uint64_t) (x50 >> 0x2d);
- uint64_t x52 = ((uint64_t)x50 & 0x1fffffffffff);
- uint128_t x53 = (x48 + x35);
- uint64_t x54 = (uint64_t) (x53 >> 0x2d);
- uint64_t x55 = ((uint64_t)x53 & 0x1fffffffffff);
- uint128_t x56 = (x51 + x29);
- uint64_t x57 = (uint64_t) (x56 >> 0x2d);
- uint64_t x58 = ((uint64_t)x56 & 0x1fffffffffff);
- uint128_t x59 = (x54 + x34);
- uint64_t x60 = (uint64_t) (x59 >> 0x2d);
- uint64_t x61 = ((uint64_t)x59 & 0x1fffffffffff);
- uint128_t x62 = (x57 + x28);
- uint64_t x63 = (uint64_t) (x62 >> 0x2d);
- uint64_t x64 = ((uint64_t)x62 & 0x1fffffffffff);
- uint128_t x65 = (x60 + x33);
- uint64_t x66 = (uint64_t) (x65 >> 0x2d);
- uint64_t x67 = ((uint64_t)x65 & 0x1fffffffffff);
- uint64_t x68 = (x63 + x43);
- uint64_t x69 = (x68 >> 0x2d);
- uint64_t x70 = (x68 & 0x1fffffffffff);
- uint64_t x71 = (x66 + x38);
- uint64_t x72 = (x71 >> 0x2d);
- uint64_t x73 = (x71 & 0x1fffffffffff);
- uint64_t x74 = ((0x200000000000 * x69) + x70);
- uint64_t x75 = (x74 >> 0x2d);
- uint64_t x76 = (x74 & 0x1fffffffffff);
- uint64_t x77 = ((x72 + x46) + x75);
- uint64_t x78 = (x77 >> 0x2d);
- uint64_t x79 = (x77 & 0x1fffffffffff);
- uint64_t x80 = (x49 + x75);
- uint64_t x81 = (x80 >> 0x2d);
- uint64_t x82 = (x80 & 0x1fffffffffff);
- return (Return x76, Return x64, Return x58, (x78 + x52), Return x79, Return x73, Return x67, Return x61, (x81 + x55), Return x82))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e450m2e225m1_10limbs/fesquareDisplay.v b/src/Specific/solinas64_2e450m2e225m1_10limbs/fesquareDisplay.v
deleted file mode 100644
index ba613bf22..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_10limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e450m2e225m1_10limbs/fesub.c b/src/Specific/solinas64_2e450m2e225m1_10limbs/fesub.c
deleted file mode 100644
index 3293fc641..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/fesub.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fesub(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- out[0] = ((0x3ffffffffffe + x5) - x23);
- out[1] = ((0x3ffffffffffe + x7) - x25);
- out[2] = ((0x3ffffffffffe + x9) - x27);
- out[3] = ((0x3ffffffffffe + x11) - x29);
- out[4] = ((0x3ffffffffffe + x13) - x31);
- out[5] = ((0x3ffffffffffc + x15) - x33);
- out[6] = ((0x3ffffffffffe + x17) - x35);
- out[7] = ((0x3ffffffffffe + x19) - x37);
- out[8] = ((0x3ffffffffffe + x21) - x39);
- out[9] = ((0x3ffffffffffe + x20) - x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e450m2e225m1_10limbs/fesub.v b/src/Specific/solinas64_2e450m2e225m1_10limbs/fesub.v
deleted file mode 100644
index 93b8e4d84..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_10limbs.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/solinas64_2e450m2e225m1_10limbs/fesubDisplay.log b/src/Specific/solinas64_2e450m2e225m1_10limbs/fesubDisplay.log
deleted file mode 100644
index cf1401ce1..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- (((0x3ffffffffffe + x20) - x38), ((0x3ffffffffffe + x21) - x39), ((0x3ffffffffffe + x19) - x37), ((0x3ffffffffffe + x17) - x35), ((0x3ffffffffffc + x15) - x33), ((0x3ffffffffffe + x13) - x31), ((0x3ffffffffffe + x11) - x29), ((0x3ffffffffffe + x9) - x27), ((0x3ffffffffffe + x7) - x25), ((0x3ffffffffffe + x5) - x23)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e450m2e225m1_10limbs/fesubDisplay.v b/src/Specific/solinas64_2e450m2e225m1_10limbs/fesubDisplay.v
deleted file mode 100644
index 2001d4bd5..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_10limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e450m2e225m1_10limbs/freeze.c b/src/Specific/solinas64_2e450m2e225m1_10limbs/freeze.c
deleted file mode 100644
index 7bdbd96ad..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/freeze.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void freeze(uint64_t out[10], const uint64_t in1[10]) {
- { const uint64_t x17 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffffff);
- { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x4, 0x1fffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x6, 0x1fffffffffff);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x8, 0x1fffffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x10, 0x1fffffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x12, 0x1ffffffffffe);
- { uint64_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x14, 0x1fffffffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x39, Return x16, 0x1fffffffffff);
- { uint64_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x18, 0x1fffffffffff);
- { uint64_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x17, 0x1fffffffffff);
- { uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL);
- { uint64_t x50 = (x49 & 0x1fffffffffff);
- { uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- { uint64_t x54 = (x49 & 0x1fffffffffff);
- { uint64_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- { uint64_t x58 = (x49 & 0x1fffffffffff);
- { uint64_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- { uint64_t x62 = (x49 & 0x1fffffffffff);
- { uint64_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- { uint64_t x66 = (x49 & 0x1fffffffffff);
- { uint64_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- { uint64_t x70 = (x49 & 0x1ffffffffffe);
- { uint64_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- { uint64_t x74 = (x49 & 0x1fffffffffff);
- { uint64_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- { uint64_t x78 = (x49 & 0x1fffffffffff);
- { uint64_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- { uint64_t x82 = (x49 & 0x1fffffffffff);
- { uint64_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- { uint64_t x86 = (x49 & 0x1fffffffffff);
- { uint64_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- out[0] = x52;
- out[1] = x56;
- out[2] = x60;
- out[3] = x64;
- out[4] = x68;
- out[5] = x72;
- out[6] = x76;
- out[7] = x80;
- out[8] = x84;
- out[9] = x88;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e450m2e225m1_10limbs/freeze.v b/src/Specific/solinas64_2e450m2e225m1_10limbs/freeze.v
deleted file mode 100644
index e4f9f4ea0..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_10limbs.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/solinas64_2e450m2e225m1_10limbs/freezeDisplay.log b/src/Specific/solinas64_2e450m2e225m1_10limbs/freezeDisplay.log
deleted file mode 100644
index 85ed0735d..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffffff);
- uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x4, 0x1fffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x6, 0x1fffffffffff);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x8, 0x1fffffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x10, 0x1fffffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x12, 0x1ffffffffffe);
- uint64_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x14, 0x1fffffffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x39, Return x16, 0x1fffffffffff);
- uint64_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x18, 0x1fffffffffff);
- uint64_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x17, 0x1fffffffffff);
- uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL);
- uint64_t x50 = (x49 & 0x1fffffffffff);
- uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- uint64_t x54 = (x49 & 0x1fffffffffff);
- uint64_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- uint64_t x58 = (x49 & 0x1fffffffffff);
- uint64_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- uint64_t x62 = (x49 & 0x1fffffffffff);
- uint64_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- uint64_t x66 = (x49 & 0x1fffffffffff);
- uint64_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- uint64_t x70 = (x49 & 0x1ffffffffffe);
- uint64_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- uint64_t x74 = (x49 & 0x1fffffffffff);
- uint64_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- uint64_t x78 = (x49 & 0x1fffffffffff);
- uint64_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- uint64_t x82 = (x49 & 0x1fffffffffff);
- uint64_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- uint64_t x86 = (x49 & 0x1fffffffffff);
- uint64_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 45 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- (Return x88, Return x84, Return x80, Return x76, Return x72, Return x68, Return x64, Return x60, Return x56, Return x52))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e450m2e225m1_10limbs/freezeDisplay.v b/src/Specific/solinas64_2e450m2e225m1_10limbs/freezeDisplay.v
deleted file mode 100644
index e6d44a427..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_10limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e450m2e225m1_10limbs/py_interpreter.sh b/src/Specific/solinas64_2e450m2e225m1_10limbs/py_interpreter.sh
deleted file mode 100755
index d4019d0b3..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_10limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**450 - 2**225 - 1' -Dmodulus_bytes='45' -Da24='121665'
diff --git a/src/Specific/solinas64_2e450m2e225m1_8limbs/CurveParameters.v b/src/Specific/solinas64_2e450m2e225m1_8limbs/CurveParameters.v
deleted file mode 100644
index e251b6d9f..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^450 - 2^225 - 1
-Base: 56.25
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 56 + 1/4;
- bitwidth := 64;
- s := 2^450;
- c := [(1, 1); (2^225, 1)];
- carry_chains := Some [[3; 7]; [4; 0; 5; 1; 6; 2; 7; 3]; [4; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- 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/solinas64_2e450m2e225m1_8limbs/Synthesis.v b/src/Specific/solinas64_2e450m2e225m1_8limbs/Synthesis.v
deleted file mode 100644
index 38aee7fc9..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_8limbs.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/solinas64_2e450m2e225m1_8limbs/compiler.sh b/src/Specific/solinas64_2e450m2e225m1_8limbs/compiler.sh
deleted file mode 100755
index 43fbf5932..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{57,56,56,56,57,56,56,56}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' "$@"
diff --git a/src/Specific/solinas64_2e450m2e225m1_8limbs/compilerxx.sh b/src/Specific/solinas64_2e450m2e225m1_8limbs/compilerxx.sh
deleted file mode 100755
index cee2cab4f..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{57,56,56,56,57,56,56,56}' -Dmodulus_array='{0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<450) - (1_mpz<<225) - 1' "$@"
diff --git a/src/Specific/solinas64_2e450m2e225m1_8limbs/feadd.c b/src/Specific/solinas64_2e450m2e225m1_8limbs/feadd.c
deleted file mode 100644
index 4def6ee9c..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e450m2e225m1_8limbs/feadd.v b/src/Specific/solinas64_2e450m2e225m1_8limbs/feadd.v
deleted file mode 100644
index de44ead98..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_8limbs.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/solinas64_2e450m2e225m1_8limbs/feaddDisplay.log b/src/Specific/solinas64_2e450m2e225m1_8limbs/feaddDisplay.log
deleted file mode 100644
index 023fc8a31..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e450m2e225m1_8limbs/feaddDisplay.v b/src/Specific/solinas64_2e450m2e225m1_8limbs/feaddDisplay.v
deleted file mode 100644
index 36c462be8..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e450m2e225m1_8limbs/fecarry.v b/src/Specific/solinas64_2e450m2e225m1_8limbs/fecarry.v
deleted file mode 100644
index 73e29020c..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_8limbs.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/solinas64_2e450m2e225m1_8limbs/fecarryDisplay.v b/src/Specific/solinas64_2e450m2e225m1_8limbs/fecarryDisplay.v
deleted file mode 100644
index 9a936f090..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e450m2e225m1_8limbs/femul.c b/src/Specific/solinas64_2e450m2e225m1_8limbs/femul.c
deleted file mode 100644
index 5412ab232..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/femul.c
+++ /dev/null
@@ -1,81 +0,0 @@
-static void femul(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint128_t x32 = (((uint128_t)(x11 + x16) * (x25 + x30)) - ((uint128_t)x11 * x25));
- { uint128_t x33 = ((((uint128_t)(x9 + x17) * (x25 + x30)) + ((uint128_t)(x11 + x16) * (x23 + x31))) - (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)));
- { uint128_t x34 = (((0x2 * ((uint128_t)(x7 + x15) * (x25 + x30))) + ((0x2 * ((uint128_t)(x9 + x17) * (x23 + x31))) + (0x2 * ((uint128_t)(x11 + x16) * (x21 + x29))))) - ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + (0x2 * ((uint128_t)x11 * x21)))));
- { uint128_t x35 = ((((uint128_t)(x5 + x13) * (x25 + x30)) + ((0x2 * ((uint128_t)(x7 + x15) * (x23 + x31))) + ((0x2 * ((uint128_t)(x9 + x17) * (x21 + x29))) + ((uint128_t)(x11 + x16) * (x19 + x27))))) - (((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((0x2 * ((uint128_t)x9 * x21)) + ((uint128_t)x11 * x19)))));
- { uint128_t x36 = ((((uint128_t)(x5 + x13) * (x23 + x31)) + ((0x2 * ((uint128_t)(x7 + x15) * (x21 + x29))) + ((uint128_t)(x9 + x17) * (x19 + x27)))) - (((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((uint128_t)x9 * x19))));
- { uint128_t x37 = ((((uint128_t)(x5 + x13) * (x21 + x29)) + ((uint128_t)(x7 + x15) * (x19 + x27))) - (((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)));
- { uint128_t x38 = (((uint128_t)(x5 + x13) * (x19 + x27)) - ((uint128_t)x5 * x19));
- { uint128_t x39 = (((((uint128_t)x11 * x25) + ((uint128_t)x16 * x30)) + x36) + x32);
- { uint128_t x40 = ((((((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)) + (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))) + x37) + x33);
- { uint128_t x41 = (((((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + (0x2 * ((uint128_t)x11 * x21)))) + ((0x2 * ((uint128_t)x15 * x30)) + ((0x2 * ((uint128_t)x17 * x31)) + (0x2 * ((uint128_t)x16 * x29))))) + x38) + x34);
- { uint128_t x42 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((0x2 * ((uint128_t)x9 * x21)) + ((uint128_t)x11 * x19)))) + (((uint128_t)x13 * x30) + ((0x2 * ((uint128_t)x15 * x31)) + ((0x2 * ((uint128_t)x17 * x29)) + ((uint128_t)x16 * x27)))));
- { uint128_t x43 = (((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((uint128_t)x9 * x19))) + (((uint128_t)x13 * x31) + ((0x2 * ((uint128_t)x15 * x29)) + ((uint128_t)x17 * x27)))) + x32);
- { uint128_t x44 = (((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (((uint128_t)x13 * x29) + ((uint128_t)x15 * x27))) + x33);
- { uint128_t x45 = ((((uint128_t)x5 * x19) + ((uint128_t)x13 * x27)) + x34);
- { uint64_t x46 = (uint64_t) (x42 >> 0x38);
- { uint64_t x47 = ((uint64_t)x42 & 0xffffffffffffff);
- { uint128_t x48 = (x35 >> 0x38);
- { uint64_t x49 = ((uint64_t)x35 & 0xffffffffffffff);
- { uint128_t x50 = ((0x100000000000000 * x48) + x49);
- { uint128_t x51 = (x50 >> 0x38);
- { uint64_t x52 = ((uint64_t)x50 & 0xffffffffffffff);
- { uint128_t x53 = ((x46 + x41) + x51);
- { uint64_t x54 = (uint64_t) (x53 >> 0x39);
- { uint64_t x55 = ((uint64_t)x53 & 0x1ffffffffffffff);
- { uint128_t x56 = (x45 + x51);
- { uint64_t x57 = (uint64_t) (x56 >> 0x39);
- { uint64_t x58 = ((uint64_t)x56 & 0x1ffffffffffffff);
- { uint128_t x59 = (x54 + x40);
- { uint64_t x60 = (uint64_t) (x59 >> 0x38);
- { uint64_t x61 = ((uint64_t)x59 & 0xffffffffffffff);
- { uint128_t x62 = (x57 + x44);
- { uint64_t x63 = (uint64_t) (x62 >> 0x38);
- { uint64_t x64 = ((uint64_t)x62 & 0xffffffffffffff);
- { uint128_t x65 = (x60 + x39);
- { uint128_t x66 = (x65 >> 0x38);
- { uint64_t x67 = ((uint64_t)x65 & 0xffffffffffffff);
- { uint128_t x68 = (x63 + x43);
- { uint64_t x69 = (uint64_t) (x68 >> 0x38);
- { uint64_t x70 = ((uint64_t)x68 & 0xffffffffffffff);
- { uint128_t x71 = (x66 + x52);
- { uint64_t x72 = (uint64_t) (x71 >> 0x38);
- { uint64_t x73 = ((uint64_t)x71 & 0xffffffffffffff);
- { uint64_t x74 = (x69 + x47);
- { uint64_t x75 = (x74 >> 0x38);
- { uint64_t x76 = (x74 & 0xffffffffffffff);
- { uint128_t x77 = (((uint128_t)0x100000000000000 * x72) + x73);
- { uint64_t x78 = (uint64_t) (x77 >> 0x38);
- { uint64_t x79 = ((uint64_t)x77 & 0xffffffffffffff);
- { uint64_t x80 = ((x75 + x55) + x78);
- { uint64_t x81 = (x80 >> 0x39);
- { uint64_t x82 = (x80 & 0x1ffffffffffffff);
- { uint64_t x83 = (x58 + x78);
- { uint64_t x84 = (x83 >> 0x39);
- { uint64_t x85 = (x83 & 0x1ffffffffffffff);
- out[0] = x85;
- out[1] = (x84 + x64);
- out[2] = x70;
- out[3] = x76;
- out[4] = x82;
- out[5] = (x81 + x61);
- out[6] = x67;
- out[7] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e450m2e225m1_8limbs/femul.v b/src/Specific/solinas64_2e450m2e225m1_8limbs/femul.v
deleted file mode 100644
index 86204141d..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_8limbs.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/solinas64_2e450m2e225m1_8limbs/femulDisplay.log b/src/Specific/solinas64_2e450m2e225m1_8limbs/femulDisplay.log
deleted file mode 100644
index 6b97da104..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,61 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint128_t x32 = (((uint128_t)(x11 + x16) * (x25 + x30)) - ((uint128_t)x11 * x25));
- uint128_t x33 = ((((uint128_t)(x9 + x17) * (x25 + x30)) + ((uint128_t)(x11 + x16) * (x23 + x31))) - (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)));
- uint128_t x34 = (((0x2 * ((uint128_t)(x7 + x15) * (x25 + x30))) + ((0x2 * ((uint128_t)(x9 + x17) * (x23 + x31))) + (0x2 * ((uint128_t)(x11 + x16) * (x21 + x29))))) - ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + (0x2 * ((uint128_t)x11 * x21)))));
- uint128_t x35 = ((((uint128_t)(x5 + x13) * (x25 + x30)) + ((0x2 * ((uint128_t)(x7 + x15) * (x23 + x31))) + ((0x2 * ((uint128_t)(x9 + x17) * (x21 + x29))) + ((uint128_t)(x11 + x16) * (x19 + x27))))) - (((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((0x2 * ((uint128_t)x9 * x21)) + ((uint128_t)x11 * x19)))));
- uint128_t x36 = ((((uint128_t)(x5 + x13) * (x23 + x31)) + ((0x2 * ((uint128_t)(x7 + x15) * (x21 + x29))) + ((uint128_t)(x9 + x17) * (x19 + x27)))) - (((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((uint128_t)x9 * x19))));
- uint128_t x37 = ((((uint128_t)(x5 + x13) * (x21 + x29)) + ((uint128_t)(x7 + x15) * (x19 + x27))) - (((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)));
- uint128_t x38 = (((uint128_t)(x5 + x13) * (x19 + x27)) - ((uint128_t)x5 * x19));
- uint128_t x39 = (((((uint128_t)x11 * x25) + ((uint128_t)x16 * x30)) + x36) + x32);
- uint128_t x40 = ((((((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)) + (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))) + x37) + x33);
- uint128_t x41 = (((((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + (0x2 * ((uint128_t)x11 * x21)))) + ((0x2 * ((uint128_t)x15 * x30)) + ((0x2 * ((uint128_t)x17 * x31)) + (0x2 * ((uint128_t)x16 * x29))))) + x38) + x34);
- uint128_t x42 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((0x2 * ((uint128_t)x9 * x21)) + ((uint128_t)x11 * x19)))) + (((uint128_t)x13 * x30) + ((0x2 * ((uint128_t)x15 * x31)) + ((0x2 * ((uint128_t)x17 * x29)) + ((uint128_t)x16 * x27)))));
- uint128_t x43 = (((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((uint128_t)x9 * x19))) + (((uint128_t)x13 * x31) + ((0x2 * ((uint128_t)x15 * x29)) + ((uint128_t)x17 * x27)))) + x32);
- uint128_t x44 = (((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (((uint128_t)x13 * x29) + ((uint128_t)x15 * x27))) + x33);
- uint128_t x45 = ((((uint128_t)x5 * x19) + ((uint128_t)x13 * x27)) + x34);
- uint64_t x46 = (uint64_t) (x42 >> 0x38);
- uint64_t x47 = ((uint64_t)x42 & 0xffffffffffffff);
- uint128_t x48 = (x35 >> 0x38);
- uint64_t x49 = ((uint64_t)x35 & 0xffffffffffffff);
- uint128_t x50 = ((0x100000000000000 * x48) + x49);
- uint128_t x51 = (x50 >> 0x38);
- uint64_t x52 = ((uint64_t)x50 & 0xffffffffffffff);
- uint128_t x53 = ((x46 + x41) + x51);
- uint64_t x54 = (uint64_t) (x53 >> 0x39);
- uint64_t x55 = ((uint64_t)x53 & 0x1ffffffffffffff);
- uint128_t x56 = (x45 + x51);
- uint64_t x57 = (uint64_t) (x56 >> 0x39);
- uint64_t x58 = ((uint64_t)x56 & 0x1ffffffffffffff);
- uint128_t x59 = (x54 + x40);
- uint64_t x60 = (uint64_t) (x59 >> 0x38);
- uint64_t x61 = ((uint64_t)x59 & 0xffffffffffffff);
- uint128_t x62 = (x57 + x44);
- uint64_t x63 = (uint64_t) (x62 >> 0x38);
- uint64_t x64 = ((uint64_t)x62 & 0xffffffffffffff);
- uint128_t x65 = (x60 + x39);
- uint128_t x66 = (x65 >> 0x38);
- uint64_t x67 = ((uint64_t)x65 & 0xffffffffffffff);
- uint128_t x68 = (x63 + x43);
- uint64_t x69 = (uint64_t) (x68 >> 0x38);
- uint64_t x70 = ((uint64_t)x68 & 0xffffffffffffff);
- uint128_t x71 = (x66 + x52);
- uint64_t x72 = (uint64_t) (x71 >> 0x38);
- uint64_t x73 = ((uint64_t)x71 & 0xffffffffffffff);
- uint64_t x74 = (x69 + x47);
- uint64_t x75 = (x74 >> 0x38);
- uint64_t x76 = (x74 & 0xffffffffffffff);
- uint128_t x77 = (((uint128_t)0x100000000000000 * x72) + x73);
- uint64_t x78 = (uint64_t) (x77 >> 0x38);
- uint64_t x79 = ((uint64_t)x77 & 0xffffffffffffff);
- uint64_t x80 = ((x75 + x55) + x78);
- uint64_t x81 = (x80 >> 0x39);
- uint64_t x82 = (x80 & 0x1ffffffffffffff);
- uint64_t x83 = (x58 + x78);
- uint64_t x84 = (x83 >> 0x39);
- uint64_t x85 = (x83 & 0x1ffffffffffffff);
- return (Return x79, Return x67, (x81 + x61), Return x82, Return x76, Return x70, (x84 + x64), Return x85))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e450m2e225m1_8limbs/femulDisplay.v b/src/Specific/solinas64_2e450m2e225m1_8limbs/femulDisplay.v
deleted file mode 100644
index 2e6524dae..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e450m2e225m1_8limbs/fesquare.c b/src/Specific/solinas64_2e450m2e225m1_8limbs/fesquare.c
deleted file mode 100644
index 4b85e2ea5..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/fesquare.c
+++ /dev/null
@@ -1,73 +0,0 @@
-static void fesquare(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x15 = (((uint128_t)(x8 + x13) * (x8 + x13)) - ((uint128_t)x8 * x8));
- { uint128_t x16 = ((((uint128_t)(x6 + x14) * (x8 + x13)) + ((uint128_t)(x8 + x13) * (x6 + x14))) - (((uint128_t)x6 * x8) + ((uint128_t)x8 * x6)));
- { uint128_t x17 = (((0x2 * ((uint128_t)(x4 + x12) * (x8 + x13))) + ((0x2 * ((uint128_t)(x6 + x14) * (x6 + x14))) + (0x2 * ((uint128_t)(x8 + x13) * (x4 + x12))))) - ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x8 * x4)))));
- { uint128_t x18 = ((((uint128_t)(x2 + x10) * (x8 + x13)) + ((0x2 * ((uint128_t)(x4 + x12) * (x6 + x14))) + ((0x2 * ((uint128_t)(x6 + x14) * (x4 + x12))) + ((uint128_t)(x8 + x13) * (x2 + x10))))) - (((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))));
- { uint128_t x19 = ((((uint128_t)(x2 + x10) * (x6 + x14)) + ((0x2 * ((uint128_t)(x4 + x12) * (x4 + x12))) + ((uint128_t)(x6 + x14) * (x2 + x10)))) - (((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))));
- { uint128_t x20 = ((((uint128_t)(x2 + x10) * (x4 + x12)) + ((uint128_t)(x4 + x12) * (x2 + x10))) - (((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)));
- { uint128_t x21 = (((uint128_t)(x2 + x10) * (x2 + x10)) - ((uint128_t)x2 * x2));
- { uint128_t x22 = (((((uint128_t)x8 * x8) + ((uint128_t)x13 * x13)) + x19) + x15);
- { uint128_t x23 = ((((((uint128_t)x6 * x8) + ((uint128_t)x8 * x6)) + (((uint128_t)x14 * x13) + ((uint128_t)x13 * x14))) + x20) + x16);
- { uint128_t x24 = (((((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x8 * x4)))) + ((0x2 * ((uint128_t)x12 * x13)) + ((0x2 * ((uint128_t)x14 * x14)) + (0x2 * ((uint128_t)x13 * x12))))) + x21) + x17);
- { uint128_t x25 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (((uint128_t)x10 * x13) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + ((uint128_t)x13 * x10)))));
- { uint128_t x26 = (((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (((uint128_t)x10 * x14) + ((0x2 * ((uint128_t)x12 * x12)) + ((uint128_t)x14 * x10)))) + x15);
- { uint128_t x27 = (((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (((uint128_t)x10 * x12) + ((uint128_t)x12 * x10))) + x16);
- { uint128_t x28 = ((((uint128_t)x2 * x2) + ((uint128_t)x10 * x10)) + x17);
- { uint64_t x29 = (uint64_t) (x25 >> 0x38);
- { uint64_t x30 = ((uint64_t)x25 & 0xffffffffffffff);
- { uint128_t x31 = (x18 >> 0x38);
- { uint64_t x32 = ((uint64_t)x18 & 0xffffffffffffff);
- { uint128_t x33 = ((0x100000000000000 * x31) + x32);
- { uint128_t x34 = (x33 >> 0x38);
- { uint64_t x35 = ((uint64_t)x33 & 0xffffffffffffff);
- { uint128_t x36 = ((x29 + x24) + x34);
- { uint64_t x37 = (uint64_t) (x36 >> 0x39);
- { uint64_t x38 = ((uint64_t)x36 & 0x1ffffffffffffff);
- { uint128_t x39 = (x28 + x34);
- { uint64_t x40 = (uint64_t) (x39 >> 0x39);
- { uint64_t x41 = ((uint64_t)x39 & 0x1ffffffffffffff);
- { uint128_t x42 = (x37 + x23);
- { uint64_t x43 = (uint64_t) (x42 >> 0x38);
- { uint64_t x44 = ((uint64_t)x42 & 0xffffffffffffff);
- { uint128_t x45 = (x40 + x27);
- { uint64_t x46 = (uint64_t) (x45 >> 0x38);
- { uint64_t x47 = ((uint64_t)x45 & 0xffffffffffffff);
- { uint128_t x48 = (x43 + x22);
- { uint128_t x49 = (x48 >> 0x38);
- { uint64_t x50 = ((uint64_t)x48 & 0xffffffffffffff);
- { uint128_t x51 = (x46 + x26);
- { uint64_t x52 = (uint64_t) (x51 >> 0x38);
- { uint64_t x53 = ((uint64_t)x51 & 0xffffffffffffff);
- { uint128_t x54 = (x49 + x35);
- { uint64_t x55 = (uint64_t) (x54 >> 0x38);
- { uint64_t x56 = ((uint64_t)x54 & 0xffffffffffffff);
- { uint64_t x57 = (x52 + x30);
- { uint64_t x58 = (x57 >> 0x38);
- { uint64_t x59 = (x57 & 0xffffffffffffff);
- { uint128_t x60 = (((uint128_t)0x100000000000000 * x55) + x56);
- { uint64_t x61 = (uint64_t) (x60 >> 0x38);
- { uint64_t x62 = ((uint64_t)x60 & 0xffffffffffffff);
- { uint64_t x63 = ((x58 + x38) + x61);
- { uint64_t x64 = (x63 >> 0x39);
- { uint64_t x65 = (x63 & 0x1ffffffffffffff);
- { uint64_t x66 = (x41 + x61);
- { uint64_t x67 = (x66 >> 0x39);
- { uint64_t x68 = (x66 & 0x1ffffffffffffff);
- out[0] = x68;
- out[1] = (x67 + x47);
- out[2] = x53;
- out[3] = x59;
- out[4] = x65;
- out[5] = (x64 + x44);
- out[6] = x50;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e450m2e225m1_8limbs/fesquare.v b/src/Specific/solinas64_2e450m2e225m1_8limbs/fesquare.v
deleted file mode 100644
index f7a938a98..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_8limbs.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/solinas64_2e450m2e225m1_8limbs/fesquareDisplay.log b/src/Specific/solinas64_2e450m2e225m1_8limbs/fesquareDisplay.log
deleted file mode 100644
index cbb6438b3..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,61 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x15 = (((uint128_t)(x8 + x13) * (x8 + x13)) - ((uint128_t)x8 * x8));
- uint128_t x16 = ((((uint128_t)(x6 + x14) * (x8 + x13)) + ((uint128_t)(x8 + x13) * (x6 + x14))) - (((uint128_t)x6 * x8) + ((uint128_t)x8 * x6)));
- uint128_t x17 = (((0x2 * ((uint128_t)(x4 + x12) * (x8 + x13))) + ((0x2 * ((uint128_t)(x6 + x14) * (x6 + x14))) + (0x2 * ((uint128_t)(x8 + x13) * (x4 + x12))))) - ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x8 * x4)))));
- uint128_t x18 = ((((uint128_t)(x2 + x10) * (x8 + x13)) + ((0x2 * ((uint128_t)(x4 + x12) * (x6 + x14))) + ((0x2 * ((uint128_t)(x6 + x14) * (x4 + x12))) + ((uint128_t)(x8 + x13) * (x2 + x10))))) - (((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))));
- uint128_t x19 = ((((uint128_t)(x2 + x10) * (x6 + x14)) + ((0x2 * ((uint128_t)(x4 + x12) * (x4 + x12))) + ((uint128_t)(x6 + x14) * (x2 + x10)))) - (((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))));
- uint128_t x20 = ((((uint128_t)(x2 + x10) * (x4 + x12)) + ((uint128_t)(x4 + x12) * (x2 + x10))) - (((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)));
- uint128_t x21 = (((uint128_t)(x2 + x10) * (x2 + x10)) - ((uint128_t)x2 * x2));
- uint128_t x22 = (((((uint128_t)x8 * x8) + ((uint128_t)x13 * x13)) + x19) + x15);
- uint128_t x23 = ((((((uint128_t)x6 * x8) + ((uint128_t)x8 * x6)) + (((uint128_t)x14 * x13) + ((uint128_t)x13 * x14))) + x20) + x16);
- uint128_t x24 = (((((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + (0x2 * ((uint128_t)x8 * x4)))) + ((0x2 * ((uint128_t)x12 * x13)) + ((0x2 * ((uint128_t)x14 * x14)) + (0x2 * ((uint128_t)x13 * x12))))) + x21) + x17);
- uint128_t x25 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (((uint128_t)x10 * x13) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + ((uint128_t)x13 * x10)))));
- uint128_t x26 = (((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (((uint128_t)x10 * x14) + ((0x2 * ((uint128_t)x12 * x12)) + ((uint128_t)x14 * x10)))) + x15);
- uint128_t x27 = (((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (((uint128_t)x10 * x12) + ((uint128_t)x12 * x10))) + x16);
- uint128_t x28 = ((((uint128_t)x2 * x2) + ((uint128_t)x10 * x10)) + x17);
- uint64_t x29 = (uint64_t) (x25 >> 0x38);
- uint64_t x30 = ((uint64_t)x25 & 0xffffffffffffff);
- uint128_t x31 = (x18 >> 0x38);
- uint64_t x32 = ((uint64_t)x18 & 0xffffffffffffff);
- uint128_t x33 = ((0x100000000000000 * x31) + x32);
- uint128_t x34 = (x33 >> 0x38);
- uint64_t x35 = ((uint64_t)x33 & 0xffffffffffffff);
- uint128_t x36 = ((x29 + x24) + x34);
- uint64_t x37 = (uint64_t) (x36 >> 0x39);
- uint64_t x38 = ((uint64_t)x36 & 0x1ffffffffffffff);
- uint128_t x39 = (x28 + x34);
- uint64_t x40 = (uint64_t) (x39 >> 0x39);
- uint64_t x41 = ((uint64_t)x39 & 0x1ffffffffffffff);
- uint128_t x42 = (x37 + x23);
- uint64_t x43 = (uint64_t) (x42 >> 0x38);
- uint64_t x44 = ((uint64_t)x42 & 0xffffffffffffff);
- uint128_t x45 = (x40 + x27);
- uint64_t x46 = (uint64_t) (x45 >> 0x38);
- uint64_t x47 = ((uint64_t)x45 & 0xffffffffffffff);
- uint128_t x48 = (x43 + x22);
- uint128_t x49 = (x48 >> 0x38);
- uint64_t x50 = ((uint64_t)x48 & 0xffffffffffffff);
- uint128_t x51 = (x46 + x26);
- uint64_t x52 = (uint64_t) (x51 >> 0x38);
- uint64_t x53 = ((uint64_t)x51 & 0xffffffffffffff);
- uint128_t x54 = (x49 + x35);
- uint64_t x55 = (uint64_t) (x54 >> 0x38);
- uint64_t x56 = ((uint64_t)x54 & 0xffffffffffffff);
- uint64_t x57 = (x52 + x30);
- uint64_t x58 = (x57 >> 0x38);
- uint64_t x59 = (x57 & 0xffffffffffffff);
- uint128_t x60 = (((uint128_t)0x100000000000000 * x55) + x56);
- uint64_t x61 = (uint64_t) (x60 >> 0x38);
- uint64_t x62 = ((uint64_t)x60 & 0xffffffffffffff);
- uint64_t x63 = ((x58 + x38) + x61);
- uint64_t x64 = (x63 >> 0x39);
- uint64_t x65 = (x63 & 0x1ffffffffffffff);
- uint64_t x66 = (x41 + x61);
- uint64_t x67 = (x66 >> 0x39);
- uint64_t x68 = (x66 & 0x1ffffffffffffff);
- return (Return x62, Return x50, (x64 + x44), Return x65, Return x59, Return x53, (x67 + x47), Return x68))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e450m2e225m1_8limbs/fesquareDisplay.v b/src/Specific/solinas64_2e450m2e225m1_8limbs/fesquareDisplay.v
deleted file mode 100644
index a066dae8e..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e450m2e225m1_8limbs/fesub.c b/src/Specific/solinas64_2e450m2e225m1_8limbs/fesub.c
deleted file mode 100644
index 0032ef5bc..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = ((0x3fffffffffffffe + x5) - x19);
- out[1] = ((0x1fffffffffffffe + x7) - x21);
- out[2] = ((0x1fffffffffffffe + x9) - x23);
- out[3] = ((0x1fffffffffffffe + x11) - x25);
- out[4] = ((0x3fffffffffffffc + x13) - x27);
- out[5] = ((0x1fffffffffffffe + x15) - x29);
- out[6] = ((0x1fffffffffffffe + x17) - x31);
- out[7] = ((0x1fffffffffffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e450m2e225m1_8limbs/fesub.v b/src/Specific/solinas64_2e450m2e225m1_8limbs/fesub.v
deleted file mode 100644
index c6b306b85..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_8limbs.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/solinas64_2e450m2e225m1_8limbs/fesubDisplay.log b/src/Specific/solinas64_2e450m2e225m1_8limbs/fesubDisplay.log
deleted file mode 100644
index 948e27940..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0x1fffffffffffffe + x16) - x30), ((0x1fffffffffffffe + x17) - x31), ((0x1fffffffffffffe + x15) - x29), ((0x3fffffffffffffc + x13) - x27), ((0x1fffffffffffffe + x11) - x25), ((0x1fffffffffffffe + x9) - x23), ((0x1fffffffffffffe + x7) - x21), ((0x3fffffffffffffe + x5) - x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e450m2e225m1_8limbs/fesubDisplay.v b/src/Specific/solinas64_2e450m2e225m1_8limbs/fesubDisplay.v
deleted file mode 100644
index 0fcfd6fc8..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e450m2e225m1_8limbs/freeze.c b/src/Specific/solinas64_2e450m2e225m1_8limbs/freeze.c
deleted file mode 100644
index 064b11eba..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffffffffffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffffffffffff);
- { uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0xffffffffffffff);
- { uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0x1fffffffffffffe);
- { uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffffffffffff);
- { uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0xffffffffffffff);
- { uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0xffffffffffffff);
- { uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- { uint64_t x40 = (x39 & 0x1ffffffffffffff);
- { uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint64_t x44 = (x39 & 0xffffffffffffff);
- { uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint64_t x48 = (x39 & 0xffffffffffffff);
- { uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint64_t x52 = (x39 & 0xffffffffffffff);
- { uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint64_t x56 = (x39 & 0x1fffffffffffffe);
- { uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint64_t x60 = (x39 & 0xffffffffffffff);
- { uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint64_t x64 = (x39 & 0xffffffffffffff);
- { uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint64_t x68 = (x39 & 0xffffffffffffff);
- { uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e450m2e225m1_8limbs/freeze.v b/src/Specific/solinas64_2e450m2e225m1_8limbs/freeze.v
deleted file mode 100644
index 2081eb536..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_8limbs.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/solinas64_2e450m2e225m1_8limbs/freezeDisplay.log b/src/Specific/solinas64_2e450m2e225m1_8limbs/freezeDisplay.log
deleted file mode 100644
index 50e964eeb..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffffffffffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xffffffffffffff);
- uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0xffffffffffffff);
- uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0x1fffffffffffffe);
- uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffffffffffff);
- uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0xffffffffffffff);
- uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0xffffffffffffff);
- uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- uint64_t x40 = (x39 & 0x1ffffffffffffff);
- uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint64_t x44 = (x39 & 0xffffffffffffff);
- uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint64_t x48 = (x39 & 0xffffffffffffff);
- uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint64_t x52 = (x39 & 0xffffffffffffff);
- uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint64_t x56 = (x39 & 0x1fffffffffffffe);
- uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint64_t x60 = (x39 & 0xffffffffffffff);
- uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint64_t x64 = (x39 & 0xffffffffffffff);
- uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint64_t x68 = (x39 & 0xffffffffffffff);
- uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e450m2e225m1_8limbs/freezeDisplay.v b/src/Specific/solinas64_2e450m2e225m1_8limbs/freezeDisplay.v
deleted file mode 100644
index 5235b60da..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e450m2e225m1_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e450m2e225m1_8limbs/py_interpreter.sh b/src/Specific/solinas64_2e450m2e225m1_8limbs/py_interpreter.sh
deleted file mode 100755
index 3c28d032a..000000000
--- a/src/Specific/solinas64_2e450m2e225m1_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**450 - 2**225 - 1' -Dmodulus_bytes='56.25' -Da24='121665'
diff --git a/src/Specific/solinas64_2e452m3_8limbs/CurveParameters.v b/src/Specific/solinas64_2e452m3_8limbs/CurveParameters.v
deleted file mode 100644
index e51728504..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^452 - 3
-Base: 56.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 56 + 1/2;
- bitwidth := 64;
- s := 2^452;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 8); [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/solinas64_2e452m3_8limbs/Synthesis.v b/src/Specific/solinas64_2e452m3_8limbs/Synthesis.v
deleted file mode 100644
index 8aac00fe1..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e452m3_8limbs.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/solinas64_2e452m3_8limbs/compiler.sh b/src/Specific/solinas64_2e452m3_8limbs/compiler.sh
deleted file mode 100755
index 5e3b5cee7..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{57,56,57,56,57,56,57,56}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<452) - 3' "$@"
diff --git a/src/Specific/solinas64_2e452m3_8limbs/compilerxx.sh b/src/Specific/solinas64_2e452m3_8limbs/compilerxx.sh
deleted file mode 100755
index a79011c20..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{57,56,57,56,57,56,57,56}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<452) - 3' "$@"
diff --git a/src/Specific/solinas64_2e452m3_8limbs/feadd.c b/src/Specific/solinas64_2e452m3_8limbs/feadd.c
deleted file mode 100644
index 4def6ee9c..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e452m3_8limbs/feadd.v b/src/Specific/solinas64_2e452m3_8limbs/feadd.v
deleted file mode 100644
index 5e46a48da..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e452m3_8limbs.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/solinas64_2e452m3_8limbs/feaddDisplay.log b/src/Specific/solinas64_2e452m3_8limbs/feaddDisplay.log
deleted file mode 100644
index 023fc8a31..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e452m3_8limbs/feaddDisplay.v b/src/Specific/solinas64_2e452m3_8limbs/feaddDisplay.v
deleted file mode 100644
index 41f006cf6..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e452m3_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e452m3_8limbs/fecarry.v b/src/Specific/solinas64_2e452m3_8limbs/fecarry.v
deleted file mode 100644
index 57f688bb8..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e452m3_8limbs.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/solinas64_2e452m3_8limbs/fecarryDisplay.v b/src/Specific/solinas64_2e452m3_8limbs/fecarryDisplay.v
deleted file mode 100644
index a9cbc2391..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e452m3_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e452m3_8limbs/femul.c b/src/Specific/solinas64_2e452m3_8limbs/femul.c
deleted file mode 100644
index f36a466ea..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint128_t x32 = (((uint128_t)x5 * x30) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + (((uint128_t)x17 * x21) + ((uint128_t)x16 * x19))))))));
- { uint128_t x33 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + (((uint128_t)x9 * x27) + ((0x2 * ((uint128_t)x11 * x25)) + (((uint128_t)x13 * x23) + ((0x2 * ((uint128_t)x15 * x21)) + ((uint128_t)x17 * x19))))))) + (0x3 * (0x2 * ((uint128_t)x16 * x30))));
- { uint128_t x34 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x15 * x19)))))) + (0x3 * (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))));
- { uint128_t x35 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + (((uint128_t)x9 * x23) + ((0x2 * ((uint128_t)x11 * x21)) + ((uint128_t)x13 * x19))))) + (0x3 * ((0x2 * ((uint128_t)x15 * x30)) + (((uint128_t)x17 * x31) + (0x2 * ((uint128_t)x16 * x29))))));
- { uint128_t x36 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (0x3 * (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27))))));
- { uint128_t x37 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((uint128_t)x9 * x19))) + (0x3 * ((0x2 * ((uint128_t)x11 * x30)) + (((uint128_t)x13 * x31) + ((0x2 * ((uint128_t)x15 * x29)) + (((uint128_t)x17 * x27) + (0x2 * ((uint128_t)x16 * x25))))))));
- { uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x3 * (((uint128_t)x9 * x30) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + ((uint128_t)x16 * x23))))))));
- { uint128_t x39 = (((uint128_t)x5 * x19) + (0x3 * ((0x2 * ((uint128_t)x7 * x30)) + (((uint128_t)x9 * x31) + ((0x2 * ((uint128_t)x11 * x29)) + (((uint128_t)x13 * x27) + ((0x2 * ((uint128_t)x15 * x25)) + (((uint128_t)x17 * x23) + (0x2 * ((uint128_t)x16 * x21))))))))));
- { uint128_t x40 = (x39 >> 0x39);
- { uint64_t x41 = ((uint64_t)x39 & 0x1ffffffffffffff);
- { uint128_t x42 = (x40 + x38);
- { uint128_t x43 = (x42 >> 0x38);
- { uint64_t x44 = ((uint64_t)x42 & 0xffffffffffffff);
- { uint128_t x45 = (x43 + x37);
- { uint128_t x46 = (x45 >> 0x39);
- { uint64_t x47 = ((uint64_t)x45 & 0x1ffffffffffffff);
- { uint128_t x48 = (x46 + x36);
- { uint128_t x49 = (x48 >> 0x38);
- { uint64_t x50 = ((uint64_t)x48 & 0xffffffffffffff);
- { uint128_t x51 = (x49 + x35);
- { uint64_t x52 = (uint64_t) (x51 >> 0x39);
- { uint64_t x53 = ((uint64_t)x51 & 0x1ffffffffffffff);
- { uint128_t x54 = (x52 + x34);
- { uint128_t x55 = (x54 >> 0x38);
- { uint64_t x56 = ((uint64_t)x54 & 0xffffffffffffff);
- { uint128_t x57 = (x55 + x33);
- { uint64_t x58 = (uint64_t) (x57 >> 0x39);
- { uint64_t x59 = ((uint64_t)x57 & 0x1ffffffffffffff);
- { uint128_t x60 = (x58 + x32);
- { uint64_t x61 = (uint64_t) (x60 >> 0x38);
- { uint64_t x62 = ((uint64_t)x60 & 0xffffffffffffff);
- { uint128_t x63 = (x41 + ((uint128_t)0x3 * x61));
- { uint64_t x64 = (uint64_t) (x63 >> 0x39);
- { uint64_t x65 = ((uint64_t)x63 & 0x1ffffffffffffff);
- { uint64_t x66 = (x64 + x44);
- { uint64_t x67 = (x66 >> 0x38);
- { uint64_t x68 = (x66 & 0xffffffffffffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e452m3_8limbs/femul.v b/src/Specific/solinas64_2e452m3_8limbs/femul.v
deleted file mode 100644
index 07d2f96d9..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e452m3_8limbs.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/solinas64_2e452m3_8limbs/femulDisplay.log b/src/Specific/solinas64_2e452m3_8limbs/femulDisplay.log
deleted file mode 100644
index 633c8f963..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint128_t x32 = (((uint128_t)x5 * x30) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + (((uint128_t)x17 * x21) + ((uint128_t)x16 * x19))))))));
- uint128_t x33 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + (((uint128_t)x9 * x27) + ((0x2 * ((uint128_t)x11 * x25)) + (((uint128_t)x13 * x23) + ((0x2 * ((uint128_t)x15 * x21)) + ((uint128_t)x17 * x19))))))) + (0x3 * (0x2 * ((uint128_t)x16 * x30))));
- uint128_t x34 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x15 * x19)))))) + (0x3 * (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))));
- uint128_t x35 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + (((uint128_t)x9 * x23) + ((0x2 * ((uint128_t)x11 * x21)) + ((uint128_t)x13 * x19))))) + (0x3 * ((0x2 * ((uint128_t)x15 * x30)) + (((uint128_t)x17 * x31) + (0x2 * ((uint128_t)x16 * x29))))));
- uint128_t x36 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (0x3 * (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27))))));
- uint128_t x37 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((uint128_t)x9 * x19))) + (0x3 * ((0x2 * ((uint128_t)x11 * x30)) + (((uint128_t)x13 * x31) + ((0x2 * ((uint128_t)x15 * x29)) + (((uint128_t)x17 * x27) + (0x2 * ((uint128_t)x16 * x25))))))));
- uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x3 * (((uint128_t)x9 * x30) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + ((uint128_t)x16 * x23))))))));
- uint128_t x39 = (((uint128_t)x5 * x19) + (0x3 * ((0x2 * ((uint128_t)x7 * x30)) + (((uint128_t)x9 * x31) + ((0x2 * ((uint128_t)x11 * x29)) + (((uint128_t)x13 * x27) + ((0x2 * ((uint128_t)x15 * x25)) + (((uint128_t)x17 * x23) + (0x2 * ((uint128_t)x16 * x21))))))))));
- uint128_t x40 = (x39 >> 0x39);
- uint64_t x41 = ((uint64_t)x39 & 0x1ffffffffffffff);
- uint128_t x42 = (x40 + x38);
- uint128_t x43 = (x42 >> 0x38);
- uint64_t x44 = ((uint64_t)x42 & 0xffffffffffffff);
- uint128_t x45 = (x43 + x37);
- uint128_t x46 = (x45 >> 0x39);
- uint64_t x47 = ((uint64_t)x45 & 0x1ffffffffffffff);
- uint128_t x48 = (x46 + x36);
- uint128_t x49 = (x48 >> 0x38);
- uint64_t x50 = ((uint64_t)x48 & 0xffffffffffffff);
- uint128_t x51 = (x49 + x35);
- uint64_t x52 = (uint64_t) (x51 >> 0x39);
- uint64_t x53 = ((uint64_t)x51 & 0x1ffffffffffffff);
- uint128_t x54 = (x52 + x34);
- uint128_t x55 = (x54 >> 0x38);
- uint64_t x56 = ((uint64_t)x54 & 0xffffffffffffff);
- uint128_t x57 = (x55 + x33);
- uint64_t x58 = (uint64_t) (x57 >> 0x39);
- uint64_t x59 = ((uint64_t)x57 & 0x1ffffffffffffff);
- uint128_t x60 = (x58 + x32);
- uint64_t x61 = (uint64_t) (x60 >> 0x38);
- uint64_t x62 = ((uint64_t)x60 & 0xffffffffffffff);
- uint128_t x63 = (x41 + ((uint128_t)0x3 * x61));
- uint64_t x64 = (uint64_t) (x63 >> 0x39);
- uint64_t x65 = ((uint64_t)x63 & 0x1ffffffffffffff);
- uint64_t x66 = (x64 + x44);
- uint64_t x67 = (x66 >> 0x38);
- uint64_t x68 = (x66 & 0xffffffffffffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e452m3_8limbs/femulDisplay.v b/src/Specific/solinas64_2e452m3_8limbs/femulDisplay.v
deleted file mode 100644
index a96492a18..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e452m3_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e452m3_8limbs/fesquare.c b/src/Specific/solinas64_2e452m3_8limbs/fesquare.c
deleted file mode 100644
index 18c217c71..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x15 = (((uint128_t)x2 * x13) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x13 * x2))))))));
- { uint128_t x16 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x3 * (0x2 * ((uint128_t)x13 * x13))));
- { uint128_t x17 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x3 * (((uint128_t)x14 * x13) + ((uint128_t)x13 * x14))));
- { uint128_t x18 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x3 * ((0x2 * ((uint128_t)x12 * x13)) + (((uint128_t)x14 * x14) + (0x2 * ((uint128_t)x13 * x12))))));
- { uint128_t x19 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x3 * (((uint128_t)x10 * x13) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((uint128_t)x13 * x10))))));
- { uint128_t x20 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x3 * ((0x2 * ((uint128_t)x8 * x13)) + (((uint128_t)x10 * x14) + ((0x2 * ((uint128_t)x12 * x12)) + (((uint128_t)x14 * x10) + (0x2 * ((uint128_t)x13 * x8))))))));
- { uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * (((uint128_t)x6 * x13) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + ((uint128_t)x13 * x6))))))));
- { uint128_t x22 = (((uint128_t)x2 * x2) + (0x3 * ((0x2 * ((uint128_t)x4 * x13)) + (((uint128_t)x6 * x14) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + (((uint128_t)x14 * x6) + (0x2 * ((uint128_t)x13 * x4))))))))));
- { uint128_t x23 = (x22 >> 0x39);
- { uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffffffff);
- { uint128_t x25 = (x23 + x21);
- { uint128_t x26 = (x25 >> 0x38);
- { uint64_t x27 = ((uint64_t)x25 & 0xffffffffffffff);
- { uint128_t x28 = (x26 + x20);
- { uint128_t x29 = (x28 >> 0x39);
- { uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffffffff);
- { uint128_t x31 = (x29 + x19);
- { uint128_t x32 = (x31 >> 0x38);
- { uint64_t x33 = ((uint64_t)x31 & 0xffffffffffffff);
- { uint128_t x34 = (x32 + x18);
- { uint64_t x35 = (uint64_t) (x34 >> 0x39);
- { uint64_t x36 = ((uint64_t)x34 & 0x1ffffffffffffff);
- { uint128_t x37 = (x35 + x17);
- { uint128_t x38 = (x37 >> 0x38);
- { uint64_t x39 = ((uint64_t)x37 & 0xffffffffffffff);
- { uint128_t x40 = (x38 + x16);
- { uint64_t x41 = (uint64_t) (x40 >> 0x39);
- { uint64_t x42 = ((uint64_t)x40 & 0x1ffffffffffffff);
- { uint128_t x43 = (x41 + x15);
- { uint64_t x44 = (uint64_t) (x43 >> 0x38);
- { uint64_t x45 = ((uint64_t)x43 & 0xffffffffffffff);
- { uint128_t x46 = (x24 + ((uint128_t)0x3 * x44));
- { uint64_t x47 = (uint64_t) (x46 >> 0x39);
- { uint64_t x48 = ((uint64_t)x46 & 0x1ffffffffffffff);
- { uint64_t x49 = (x47 + x27);
- { uint64_t x50 = (x49 >> 0x38);
- { uint64_t x51 = (x49 & 0xffffffffffffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e452m3_8limbs/fesquare.v b/src/Specific/solinas64_2e452m3_8limbs/fesquare.v
deleted file mode 100644
index 16f066555..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e452m3_8limbs.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/solinas64_2e452m3_8limbs/fesquareDisplay.log b/src/Specific/solinas64_2e452m3_8limbs/fesquareDisplay.log
deleted file mode 100644
index 50d394689..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x15 = (((uint128_t)x2 * x13) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x13 * x2))))))));
- uint128_t x16 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x3 * (0x2 * ((uint128_t)x13 * x13))));
- uint128_t x17 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x3 * (((uint128_t)x14 * x13) + ((uint128_t)x13 * x14))));
- uint128_t x18 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x3 * ((0x2 * ((uint128_t)x12 * x13)) + (((uint128_t)x14 * x14) + (0x2 * ((uint128_t)x13 * x12))))));
- uint128_t x19 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x3 * (((uint128_t)x10 * x13) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((uint128_t)x13 * x10))))));
- uint128_t x20 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x3 * ((0x2 * ((uint128_t)x8 * x13)) + (((uint128_t)x10 * x14) + ((0x2 * ((uint128_t)x12 * x12)) + (((uint128_t)x14 * x10) + (0x2 * ((uint128_t)x13 * x8))))))));
- uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * (((uint128_t)x6 * x13) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + ((uint128_t)x13 * x6))))))));
- uint128_t x22 = (((uint128_t)x2 * x2) + (0x3 * ((0x2 * ((uint128_t)x4 * x13)) + (((uint128_t)x6 * x14) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + (((uint128_t)x14 * x6) + (0x2 * ((uint128_t)x13 * x4))))))))));
- uint128_t x23 = (x22 >> 0x39);
- uint64_t x24 = ((uint64_t)x22 & 0x1ffffffffffffff);
- uint128_t x25 = (x23 + x21);
- uint128_t x26 = (x25 >> 0x38);
- uint64_t x27 = ((uint64_t)x25 & 0xffffffffffffff);
- uint128_t x28 = (x26 + x20);
- uint128_t x29 = (x28 >> 0x39);
- uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffffffff);
- uint128_t x31 = (x29 + x19);
- uint128_t x32 = (x31 >> 0x38);
- uint64_t x33 = ((uint64_t)x31 & 0xffffffffffffff);
- uint128_t x34 = (x32 + x18);
- uint64_t x35 = (uint64_t) (x34 >> 0x39);
- uint64_t x36 = ((uint64_t)x34 & 0x1ffffffffffffff);
- uint128_t x37 = (x35 + x17);
- uint128_t x38 = (x37 >> 0x38);
- uint64_t x39 = ((uint64_t)x37 & 0xffffffffffffff);
- uint128_t x40 = (x38 + x16);
- uint64_t x41 = (uint64_t) (x40 >> 0x39);
- uint64_t x42 = ((uint64_t)x40 & 0x1ffffffffffffff);
- uint128_t x43 = (x41 + x15);
- uint64_t x44 = (uint64_t) (x43 >> 0x38);
- uint64_t x45 = ((uint64_t)x43 & 0xffffffffffffff);
- uint128_t x46 = (x24 + ((uint128_t)0x3 * x44));
- uint64_t x47 = (uint64_t) (x46 >> 0x39);
- uint64_t x48 = ((uint64_t)x46 & 0x1ffffffffffffff);
- uint64_t x49 = (x47 + x27);
- uint64_t x50 = (x49 >> 0x38);
- uint64_t x51 = (x49 & 0xffffffffffffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e452m3_8limbs/fesquareDisplay.v b/src/Specific/solinas64_2e452m3_8limbs/fesquareDisplay.v
deleted file mode 100644
index ccc525256..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e452m3_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e452m3_8limbs/fesub.c b/src/Specific/solinas64_2e452m3_8limbs/fesub.c
deleted file mode 100644
index 93d63ff22..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = ((0x3fffffffffffffa + x5) - x19);
- out[1] = ((0x1fffffffffffffe + x7) - x21);
- out[2] = ((0x3fffffffffffffe + x9) - x23);
- out[3] = ((0x1fffffffffffffe + x11) - x25);
- out[4] = ((0x3fffffffffffffe + x13) - x27);
- out[5] = ((0x1fffffffffffffe + x15) - x29);
- out[6] = ((0x3fffffffffffffe + x17) - x31);
- out[7] = ((0x1fffffffffffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e452m3_8limbs/fesub.v b/src/Specific/solinas64_2e452m3_8limbs/fesub.v
deleted file mode 100644
index 304c71edc..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e452m3_8limbs.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/solinas64_2e452m3_8limbs/fesubDisplay.log b/src/Specific/solinas64_2e452m3_8limbs/fesubDisplay.log
deleted file mode 100644
index 540d6117a..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0x1fffffffffffffe + x16) - x30), ((0x3fffffffffffffe + x17) - x31), ((0x1fffffffffffffe + x15) - x29), ((0x3fffffffffffffe + x13) - x27), ((0x1fffffffffffffe + x11) - x25), ((0x3fffffffffffffe + x9) - x23), ((0x1fffffffffffffe + x7) - x21), ((0x3fffffffffffffa + x5) - x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e452m3_8limbs/fesubDisplay.v b/src/Specific/solinas64_2e452m3_8limbs/fesubDisplay.v
deleted file mode 100644
index 6cad6bb6c..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e452m3_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e452m3_8limbs/freeze.c b/src/Specific/solinas64_2e452m3_8limbs/freeze.c
deleted file mode 100644
index 6af79c058..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffffffffd);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0x1ffffffffffffff);
- { uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0xffffffffffffff);
- { uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0x1ffffffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffffffffffff);
- { uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0x1ffffffffffffff);
- { uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0xffffffffffffff);
- { uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- { uint64_t x40 = (x39 & 0x1fffffffffffffd);
- { uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint64_t x44 = (x39 & 0xffffffffffffff);
- { uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint64_t x48 = (x39 & 0x1ffffffffffffff);
- { uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint64_t x52 = (x39 & 0xffffffffffffff);
- { uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint64_t x56 = (x39 & 0x1ffffffffffffff);
- { uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint64_t x60 = (x39 & 0xffffffffffffff);
- { uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint64_t x64 = (x39 & 0x1ffffffffffffff);
- { uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint64_t x68 = (x39 & 0xffffffffffffff);
- { uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e452m3_8limbs/freeze.v b/src/Specific/solinas64_2e452m3_8limbs/freeze.v
deleted file mode 100644
index 6606b5a04..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e452m3_8limbs.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/solinas64_2e452m3_8limbs/freezeDisplay.log b/src/Specific/solinas64_2e452m3_8limbs/freezeDisplay.log
deleted file mode 100644
index b2eeefa09..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffffffffd);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0xffffffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0x1ffffffffffffff);
- uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0xffffffffffffff);
- uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0x1ffffffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xffffffffffffff);
- uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0x1ffffffffffffff);
- uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0xffffffffffffff);
- uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- uint64_t x40 = (x39 & 0x1fffffffffffffd);
- uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint64_t x44 = (x39 & 0xffffffffffffff);
- uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint64_t x48 = (x39 & 0x1ffffffffffffff);
- uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint64_t x52 = (x39 & 0xffffffffffffff);
- uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint64_t x56 = (x39 & 0x1ffffffffffffff);
- uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint64_t x60 = (x39 & 0xffffffffffffff);
- uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint64_t x64 = (x39 & 0x1ffffffffffffff);
- uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint64_t x68 = (x39 & 0xffffffffffffff);
- uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 56 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e452m3_8limbs/freezeDisplay.v b/src/Specific/solinas64_2e452m3_8limbs/freezeDisplay.v
deleted file mode 100644
index 2d2971dfa..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e452m3_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e452m3_8limbs/py_interpreter.sh b/src/Specific/solinas64_2e452m3_8limbs/py_interpreter.sh
deleted file mode 100755
index 33994d0a9..000000000
--- a/src/Specific/solinas64_2e452m3_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**452 - 3' -Dmodulus_bytes='56.5' -Da24='121665'
diff --git a/src/Specific/solinas64_2e452m3_9limbs/CurveParameters.v b/src/Specific/solinas64_2e452m3_9limbs/CurveParameters.v
deleted file mode 100644
index 320a9d2ec..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^452 - 3
-Base: 50 + 2/9
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 50 + 2/9;
- bitwidth := 64;
- s := 2^452;
- c := [(1, 3)];
- carry_chains := Some [seq 0 (pred 9); [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/solinas64_2e452m3_9limbs/Synthesis.v b/src/Specific/solinas64_2e452m3_9limbs/Synthesis.v
deleted file mode 100644
index e25716f90..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e452m3_9limbs.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/solinas64_2e452m3_9limbs/compiler.sh b/src/Specific/solinas64_2e452m3_9limbs/compiler.sh
deleted file mode 100755
index 41db14516..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,50,50,50,51,50,50,50,50}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<452) - 3' "$@"
diff --git a/src/Specific/solinas64_2e452m3_9limbs/compilerxx.sh b/src/Specific/solinas64_2e452m3_9limbs/compilerxx.sh
deleted file mode 100755
index 1fd589344..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{51,50,50,50,51,50,50,50,50}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd}' -Dmodulus_bytes_val='57' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<452) - 3' "$@"
diff --git a/src/Specific/solinas64_2e452m3_9limbs/feadd.c b/src/Specific/solinas64_2e452m3_9limbs/feadd.c
deleted file mode 100644
index 98ab4434c..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e452m3_9limbs/feadd.v b/src/Specific/solinas64_2e452m3_9limbs/feadd.v
deleted file mode 100644
index 03444dcf3..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e452m3_9limbs.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/solinas64_2e452m3_9limbs/feaddDisplay.log b/src/Specific/solinas64_2e452m3_9limbs/feaddDisplay.log
deleted file mode 100644
index 3b92b1c5c..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e452m3_9limbs/feaddDisplay.v b/src/Specific/solinas64_2e452m3_9limbs/feaddDisplay.v
deleted file mode 100644
index f2e5ccd2e..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e452m3_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e452m3_9limbs/fecarry.v b/src/Specific/solinas64_2e452m3_9limbs/fecarry.v
deleted file mode 100644
index dd77e53f5..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e452m3_9limbs.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/solinas64_2e452m3_9limbs/fecarryDisplay.v b/src/Specific/solinas64_2e452m3_9limbs/fecarryDisplay.v
deleted file mode 100644
index 3e6395440..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e452m3_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e452m3_9limbs/femul.c b/src/Specific/solinas64_2e452m3_9limbs/femul.c
deleted file mode 100644
index 68437ced9..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/femul.c
+++ /dev/null
@@ -1,71 +0,0 @@
-static void femul(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- { uint128_t x36 = (((uint128_t)x5 * x34) + ((0x2 * ((uint128_t)x7 * x35)) + ((0x2 * ((uint128_t)x9 * x33)) + ((0x2 * ((uint128_t)x11 * x31)) + (((uint128_t)x13 * x29) + ((0x2 * ((uint128_t)x15 * x27)) + ((0x2 * ((uint128_t)x17 * x25)) + ((0x2 * ((uint128_t)x19 * x23)) + ((uint128_t)x18 * x21)))))))));
- { uint128_t x37 = ((((uint128_t)x5 * x35) + ((0x2 * ((uint128_t)x7 * x33)) + ((0x2 * ((uint128_t)x9 * x31)) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + ((0x2 * ((uint128_t)x15 * x25)) + ((0x2 * ((uint128_t)x17 * x23)) + ((uint128_t)x19 * x21)))))))) + (0x3 * ((uint128_t)x18 * x34)));
- { uint128_t x38 = ((((uint128_t)x5 * x33) + ((0x2 * ((uint128_t)x7 * x31)) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + ((0x2 * ((uint128_t)x15 * x23)) + ((uint128_t)x17 * x21))))))) + (0x3 * (((uint128_t)x19 * x34) + ((uint128_t)x18 * x35))));
- { uint128_t x39 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + ((uint128_t)x15 * x21)))))) + (0x3 * (((uint128_t)x17 * x34) + (((uint128_t)x19 * x35) + ((uint128_t)x18 * x33)))));
- { uint128_t x40 = ((((uint128_t)x5 * x29) + ((0x2 * ((uint128_t)x7 * x27)) + ((0x2 * ((uint128_t)x9 * x25)) + ((0x2 * ((uint128_t)x11 * x23)) + ((uint128_t)x13 * x21))))) + (0x3 * ((0x2 * ((uint128_t)x15 * x34)) + ((0x2 * ((uint128_t)x17 * x35)) + ((0x2 * ((uint128_t)x19 * x33)) + (0x2 * ((uint128_t)x18 * x31)))))));
- { uint128_t x41 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + ((uint128_t)x11 * x21)))) + (0x3 * (((uint128_t)x13 * x34) + ((0x2 * ((uint128_t)x15 * x35)) + ((0x2 * ((uint128_t)x17 * x33)) + ((0x2 * ((uint128_t)x19 * x31)) + ((uint128_t)x18 * x29)))))));
- { uint128_t x42 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((uint128_t)x9 * x21))) + (0x3 * (((uint128_t)x11 * x34) + (((uint128_t)x13 * x35) + ((0x2 * ((uint128_t)x15 * x33)) + ((0x2 * ((uint128_t)x17 * x31)) + (((uint128_t)x19 * x29) + ((uint128_t)x18 * x27))))))));
- { uint128_t x43 = ((((uint128_t)x5 * x23) + ((uint128_t)x7 * x21)) + (0x3 * (((uint128_t)x9 * x34) + (((uint128_t)x11 * x35) + (((uint128_t)x13 * x33) + ((0x2 * ((uint128_t)x15 * x31)) + (((uint128_t)x17 * x29) + (((uint128_t)x19 * x27) + ((uint128_t)x18 * x25)))))))));
- { uint128_t x44 = (((uint128_t)x5 * x21) + (0x3 * ((0x2 * ((uint128_t)x7 * x34)) + ((0x2 * ((uint128_t)x9 * x35)) + ((0x2 * ((uint128_t)x11 * x33)) + ((0x2 * ((uint128_t)x13 * x31)) + ((0x2 * ((uint128_t)x15 * x29)) + ((0x2 * ((uint128_t)x17 * x27)) + ((0x2 * ((uint128_t)x19 * x25)) + (0x2 * ((uint128_t)x18 * x23)))))))))));
- { uint64_t x45 = (uint64_t) (x44 >> 0x33);
- { uint64_t x46 = ((uint64_t)x44 & 0x7ffffffffffff);
- { uint128_t x47 = (x45 + x43);
- { uint64_t x48 = (uint64_t) (x47 >> 0x32);
- { uint64_t x49 = ((uint64_t)x47 & 0x3ffffffffffff);
- { uint128_t x50 = (x48 + x42);
- { uint64_t x51 = (uint64_t) (x50 >> 0x32);
- { uint64_t x52 = ((uint64_t)x50 & 0x3ffffffffffff);
- { uint128_t x53 = (x51 + x41);
- { uint64_t x54 = (uint64_t) (x53 >> 0x32);
- { uint64_t x55 = ((uint64_t)x53 & 0x3ffffffffffff);
- { uint128_t x56 = (x54 + x40);
- { uint64_t x57 = (uint64_t) (x56 >> 0x33);
- { uint64_t x58 = ((uint64_t)x56 & 0x7ffffffffffff);
- { uint128_t x59 = (x57 + x39);
- { uint64_t x60 = (uint64_t) (x59 >> 0x32);
- { uint64_t x61 = ((uint64_t)x59 & 0x3ffffffffffff);
- { uint128_t x62 = (x60 + x38);
- { uint64_t x63 = (uint64_t) (x62 >> 0x32);
- { uint64_t x64 = ((uint64_t)x62 & 0x3ffffffffffff);
- { uint128_t x65 = (x63 + x37);
- { uint64_t x66 = (uint64_t) (x65 >> 0x32);
- { uint64_t x67 = ((uint64_t)x65 & 0x3ffffffffffff);
- { uint128_t x68 = (x66 + x36);
- { uint64_t x69 = (uint64_t) (x68 >> 0x32);
- { uint64_t x70 = ((uint64_t)x68 & 0x3ffffffffffff);
- { uint64_t x71 = (x46 + (0x3 * x69));
- { uint64_t x72 = (x71 >> 0x33);
- { uint64_t x73 = (x71 & 0x7ffffffffffff);
- { uint64_t x74 = (x72 + x49);
- { uint64_t x75 = (x74 >> 0x32);
- { uint64_t x76 = (x74 & 0x3ffffffffffff);
- out[0] = x73;
- out[1] = x76;
- out[2] = (x75 + x52);
- out[3] = x55;
- out[4] = x58;
- out[5] = x61;
- out[6] = x64;
- out[7] = x67;
- out[8] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e452m3_9limbs/femul.v b/src/Specific/solinas64_2e452m3_9limbs/femul.v
deleted file mode 100644
index 50c3d4262..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e452m3_9limbs.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/solinas64_2e452m3_9limbs/femulDisplay.log b/src/Specific/solinas64_2e452m3_9limbs/femulDisplay.log
deleted file mode 100644
index ef2572bf1..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/femulDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint128_t x36 = (((uint128_t)x5 * x34) + ((0x2 * ((uint128_t)x7 * x35)) + ((0x2 * ((uint128_t)x9 * x33)) + ((0x2 * ((uint128_t)x11 * x31)) + (((uint128_t)x13 * x29) + ((0x2 * ((uint128_t)x15 * x27)) + ((0x2 * ((uint128_t)x17 * x25)) + ((0x2 * ((uint128_t)x19 * x23)) + ((uint128_t)x18 * x21)))))))));
- uint128_t x37 = ((((uint128_t)x5 * x35) + ((0x2 * ((uint128_t)x7 * x33)) + ((0x2 * ((uint128_t)x9 * x31)) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + ((0x2 * ((uint128_t)x15 * x25)) + ((0x2 * ((uint128_t)x17 * x23)) + ((uint128_t)x19 * x21)))))))) + (0x3 * ((uint128_t)x18 * x34)));
- uint128_t x38 = ((((uint128_t)x5 * x33) + ((0x2 * ((uint128_t)x7 * x31)) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + ((0x2 * ((uint128_t)x15 * x23)) + ((uint128_t)x17 * x21))))))) + (0x3 * (((uint128_t)x19 * x34) + ((uint128_t)x18 * x35))));
- uint128_t x39 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + ((uint128_t)x15 * x21)))))) + (0x3 * (((uint128_t)x17 * x34) + (((uint128_t)x19 * x35) + ((uint128_t)x18 * x33)))));
- uint128_t x40 = ((((uint128_t)x5 * x29) + ((0x2 * ((uint128_t)x7 * x27)) + ((0x2 * ((uint128_t)x9 * x25)) + ((0x2 * ((uint128_t)x11 * x23)) + ((uint128_t)x13 * x21))))) + (0x3 * ((0x2 * ((uint128_t)x15 * x34)) + ((0x2 * ((uint128_t)x17 * x35)) + ((0x2 * ((uint128_t)x19 * x33)) + (0x2 * ((uint128_t)x18 * x31)))))));
- uint128_t x41 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + ((uint128_t)x11 * x21)))) + (0x3 * (((uint128_t)x13 * x34) + ((0x2 * ((uint128_t)x15 * x35)) + ((0x2 * ((uint128_t)x17 * x33)) + ((0x2 * ((uint128_t)x19 * x31)) + ((uint128_t)x18 * x29)))))));
- uint128_t x42 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((uint128_t)x9 * x21))) + (0x3 * (((uint128_t)x11 * x34) + (((uint128_t)x13 * x35) + ((0x2 * ((uint128_t)x15 * x33)) + ((0x2 * ((uint128_t)x17 * x31)) + (((uint128_t)x19 * x29) + ((uint128_t)x18 * x27))))))));
- uint128_t x43 = ((((uint128_t)x5 * x23) + ((uint128_t)x7 * x21)) + (0x3 * (((uint128_t)x9 * x34) + (((uint128_t)x11 * x35) + (((uint128_t)x13 * x33) + ((0x2 * ((uint128_t)x15 * x31)) + (((uint128_t)x17 * x29) + (((uint128_t)x19 * x27) + ((uint128_t)x18 * x25)))))))));
- uint128_t x44 = (((uint128_t)x5 * x21) + (0x3 * ((0x2 * ((uint128_t)x7 * x34)) + ((0x2 * ((uint128_t)x9 * x35)) + ((0x2 * ((uint128_t)x11 * x33)) + ((0x2 * ((uint128_t)x13 * x31)) + ((0x2 * ((uint128_t)x15 * x29)) + ((0x2 * ((uint128_t)x17 * x27)) + ((0x2 * ((uint128_t)x19 * x25)) + (0x2 * ((uint128_t)x18 * x23)))))))))));
- uint64_t x45 = (uint64_t) (x44 >> 0x33);
- uint64_t x46 = ((uint64_t)x44 & 0x7ffffffffffff);
- uint128_t x47 = (x45 + x43);
- uint64_t x48 = (uint64_t) (x47 >> 0x32);
- uint64_t x49 = ((uint64_t)x47 & 0x3ffffffffffff);
- uint128_t x50 = (x48 + x42);
- uint64_t x51 = (uint64_t) (x50 >> 0x32);
- uint64_t x52 = ((uint64_t)x50 & 0x3ffffffffffff);
- uint128_t x53 = (x51 + x41);
- uint64_t x54 = (uint64_t) (x53 >> 0x32);
- uint64_t x55 = ((uint64_t)x53 & 0x3ffffffffffff);
- uint128_t x56 = (x54 + x40);
- uint64_t x57 = (uint64_t) (x56 >> 0x33);
- uint64_t x58 = ((uint64_t)x56 & 0x7ffffffffffff);
- uint128_t x59 = (x57 + x39);
- uint64_t x60 = (uint64_t) (x59 >> 0x32);
- uint64_t x61 = ((uint64_t)x59 & 0x3ffffffffffff);
- uint128_t x62 = (x60 + x38);
- uint64_t x63 = (uint64_t) (x62 >> 0x32);
- uint64_t x64 = ((uint64_t)x62 & 0x3ffffffffffff);
- uint128_t x65 = (x63 + x37);
- uint64_t x66 = (uint64_t) (x65 >> 0x32);
- uint64_t x67 = ((uint64_t)x65 & 0x3ffffffffffff);
- uint128_t x68 = (x66 + x36);
- uint64_t x69 = (uint64_t) (x68 >> 0x32);
- uint64_t x70 = ((uint64_t)x68 & 0x3ffffffffffff);
- uint64_t x71 = (x46 + (0x3 * x69));
- uint64_t x72 = (x71 >> 0x33);
- uint64_t x73 = (x71 & 0x7ffffffffffff);
- uint64_t x74 = (x72 + x49);
- uint64_t x75 = (x74 >> 0x32);
- uint64_t x76 = (x74 & 0x3ffffffffffff);
- return (Return x70, Return x67, Return x64, Return x61, Return x58, Return x55, (x75 + x52), Return x76, Return x73))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e452m3_9limbs/femulDisplay.v b/src/Specific/solinas64_2e452m3_9limbs/femulDisplay.v
deleted file mode 100644
index 0cf015121..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e452m3_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e452m3_9limbs/fesquare.c b/src/Specific/solinas64_2e452m3_9limbs/fesquare.c
deleted file mode 100644
index 2f7dfd90c..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/fesquare.c
+++ /dev/null
@@ -1,62 +0,0 @@
-static void fesquare(uint64_t out[9], const uint64_t in1[9]) {
- { const uint64_t x15 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x17 = (((uint128_t)x2 * x15) + ((0x2 * ((uint128_t)x4 * x16)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + ((0x2 * ((uint128_t)x16 * x4)) + ((uint128_t)x15 * x2)))))))));
- { uint128_t x18 = ((((uint128_t)x2 * x16) + ((0x2 * ((uint128_t)x4 * x14)) + ((0x2 * ((uint128_t)x6 * x12)) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((0x2 * ((uint128_t)x12 * x6)) + ((0x2 * ((uint128_t)x14 * x4)) + ((uint128_t)x16 * x2)))))))) + (0x3 * ((uint128_t)x15 * x15)));
- { uint128_t x19 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x3 * (((uint128_t)x16 * x15) + ((uint128_t)x15 * x16))));
- { uint128_t x20 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x3 * (((uint128_t)x14 * x15) + (((uint128_t)x16 * x16) + ((uint128_t)x15 * x14)))));
- { uint128_t x21 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x3 * ((0x2 * ((uint128_t)x12 * x15)) + ((0x2 * ((uint128_t)x14 * x16)) + ((0x2 * ((uint128_t)x16 * x14)) + (0x2 * ((uint128_t)x15 * x12)))))));
- { uint128_t x22 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x3 * (((uint128_t)x10 * x15) + ((0x2 * ((uint128_t)x12 * x16)) + ((0x2 * ((uint128_t)x14 * x14)) + ((0x2 * ((uint128_t)x16 * x12)) + ((uint128_t)x15 * x10)))))));
- { uint128_t x23 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x3 * (((uint128_t)x8 * x15) + (((uint128_t)x10 * x16) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + (((uint128_t)x16 * x10) + ((uint128_t)x15 * x8))))))));
- { uint128_t x24 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * (((uint128_t)x6 * x15) + (((uint128_t)x8 * x16) + (((uint128_t)x10 * x14) + ((0x2 * ((uint128_t)x12 * x12)) + (((uint128_t)x14 * x10) + (((uint128_t)x16 * x8) + ((uint128_t)x15 * x6)))))))));
- { uint128_t x25 = (((uint128_t)x2 * x2) + (0x3 * ((0x2 * ((uint128_t)x4 * x15)) + ((0x2 * ((uint128_t)x6 * x16)) + ((0x2 * ((uint128_t)x8 * x14)) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + ((0x2 * ((uint128_t)x14 * x8)) + ((0x2 * ((uint128_t)x16 * x6)) + (0x2 * ((uint128_t)x15 * x4)))))))))));
- { uint64_t x26 = (uint64_t) (x25 >> 0x33);
- { uint64_t x27 = ((uint64_t)x25 & 0x7ffffffffffff);
- { uint128_t x28 = (x26 + x24);
- { uint64_t x29 = (uint64_t) (x28 >> 0x32);
- { uint64_t x30 = ((uint64_t)x28 & 0x3ffffffffffff);
- { uint128_t x31 = (x29 + x23);
- { uint64_t x32 = (uint64_t) (x31 >> 0x32);
- { uint64_t x33 = ((uint64_t)x31 & 0x3ffffffffffff);
- { uint128_t x34 = (x32 + x22);
- { uint64_t x35 = (uint64_t) (x34 >> 0x32);
- { uint64_t x36 = ((uint64_t)x34 & 0x3ffffffffffff);
- { uint128_t x37 = (x35 + x21);
- { uint64_t x38 = (uint64_t) (x37 >> 0x33);
- { uint64_t x39 = ((uint64_t)x37 & 0x7ffffffffffff);
- { uint128_t x40 = (x38 + x20);
- { uint64_t x41 = (uint64_t) (x40 >> 0x32);
- { uint64_t x42 = ((uint64_t)x40 & 0x3ffffffffffff);
- { uint128_t x43 = (x41 + x19);
- { uint64_t x44 = (uint64_t) (x43 >> 0x32);
- { uint64_t x45 = ((uint64_t)x43 & 0x3ffffffffffff);
- { uint128_t x46 = (x44 + x18);
- { uint64_t x47 = (uint64_t) (x46 >> 0x32);
- { uint64_t x48 = ((uint64_t)x46 & 0x3ffffffffffff);
- { uint128_t x49 = (x47 + x17);
- { uint64_t x50 = (uint64_t) (x49 >> 0x32);
- { uint64_t x51 = ((uint64_t)x49 & 0x3ffffffffffff);
- { uint64_t x52 = (x27 + (0x3 * x50));
- { uint64_t x53 = (x52 >> 0x33);
- { uint64_t x54 = (x52 & 0x7ffffffffffff);
- { uint64_t x55 = (x53 + x30);
- { uint64_t x56 = (x55 >> 0x32);
- { uint64_t x57 = (x55 & 0x3ffffffffffff);
- out[0] = x54;
- out[1] = x57;
- out[2] = (x56 + x33);
- out[3] = x36;
- out[4] = x39;
- out[5] = x42;
- out[6] = x45;
- out[7] = x48;
- out[8] = x51;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e452m3_9limbs/fesquare.v b/src/Specific/solinas64_2e452m3_9limbs/fesquare.v
deleted file mode 100644
index 6bef74b62..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e452m3_9limbs.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/solinas64_2e452m3_9limbs/fesquareDisplay.log b/src/Specific/solinas64_2e452m3_9limbs/fesquareDisplay.log
deleted file mode 100644
index 2a1cfa3ba..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x17 = (((uint128_t)x2 * x15) + ((0x2 * ((uint128_t)x4 * x16)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + ((0x2 * ((uint128_t)x16 * x4)) + ((uint128_t)x15 * x2)))))))));
- uint128_t x18 = ((((uint128_t)x2 * x16) + ((0x2 * ((uint128_t)x4 * x14)) + ((0x2 * ((uint128_t)x6 * x12)) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((0x2 * ((uint128_t)x12 * x6)) + ((0x2 * ((uint128_t)x14 * x4)) + ((uint128_t)x16 * x2)))))))) + (0x3 * ((uint128_t)x15 * x15)));
- uint128_t x19 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x3 * (((uint128_t)x16 * x15) + ((uint128_t)x15 * x16))));
- uint128_t x20 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x3 * (((uint128_t)x14 * x15) + (((uint128_t)x16 * x16) + ((uint128_t)x15 * x14)))));
- uint128_t x21 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x3 * ((0x2 * ((uint128_t)x12 * x15)) + ((0x2 * ((uint128_t)x14 * x16)) + ((0x2 * ((uint128_t)x16 * x14)) + (0x2 * ((uint128_t)x15 * x12)))))));
- uint128_t x22 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x3 * (((uint128_t)x10 * x15) + ((0x2 * ((uint128_t)x12 * x16)) + ((0x2 * ((uint128_t)x14 * x14)) + ((0x2 * ((uint128_t)x16 * x12)) + ((uint128_t)x15 * x10)))))));
- uint128_t x23 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x3 * (((uint128_t)x8 * x15) + (((uint128_t)x10 * x16) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + (((uint128_t)x16 * x10) + ((uint128_t)x15 * x8))))))));
- uint128_t x24 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x3 * (((uint128_t)x6 * x15) + (((uint128_t)x8 * x16) + (((uint128_t)x10 * x14) + ((0x2 * ((uint128_t)x12 * x12)) + (((uint128_t)x14 * x10) + (((uint128_t)x16 * x8) + ((uint128_t)x15 * x6)))))))));
- uint128_t x25 = (((uint128_t)x2 * x2) + (0x3 * ((0x2 * ((uint128_t)x4 * x15)) + ((0x2 * ((uint128_t)x6 * x16)) + ((0x2 * ((uint128_t)x8 * x14)) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + ((0x2 * ((uint128_t)x14 * x8)) + ((0x2 * ((uint128_t)x16 * x6)) + (0x2 * ((uint128_t)x15 * x4)))))))))));
- uint64_t x26 = (uint64_t) (x25 >> 0x33);
- uint64_t x27 = ((uint64_t)x25 & 0x7ffffffffffff);
- uint128_t x28 = (x26 + x24);
- uint64_t x29 = (uint64_t) (x28 >> 0x32);
- uint64_t x30 = ((uint64_t)x28 & 0x3ffffffffffff);
- uint128_t x31 = (x29 + x23);
- uint64_t x32 = (uint64_t) (x31 >> 0x32);
- uint64_t x33 = ((uint64_t)x31 & 0x3ffffffffffff);
- uint128_t x34 = (x32 + x22);
- uint64_t x35 = (uint64_t) (x34 >> 0x32);
- uint64_t x36 = ((uint64_t)x34 & 0x3ffffffffffff);
- uint128_t x37 = (x35 + x21);
- uint64_t x38 = (uint64_t) (x37 >> 0x33);
- uint64_t x39 = ((uint64_t)x37 & 0x7ffffffffffff);
- uint128_t x40 = (x38 + x20);
- uint64_t x41 = (uint64_t) (x40 >> 0x32);
- uint64_t x42 = ((uint64_t)x40 & 0x3ffffffffffff);
- uint128_t x43 = (x41 + x19);
- uint64_t x44 = (uint64_t) (x43 >> 0x32);
- uint64_t x45 = ((uint64_t)x43 & 0x3ffffffffffff);
- uint128_t x46 = (x44 + x18);
- uint64_t x47 = (uint64_t) (x46 >> 0x32);
- uint64_t x48 = ((uint64_t)x46 & 0x3ffffffffffff);
- uint128_t x49 = (x47 + x17);
- uint64_t x50 = (uint64_t) (x49 >> 0x32);
- uint64_t x51 = ((uint64_t)x49 & 0x3ffffffffffff);
- uint64_t x52 = (x27 + (0x3 * x50));
- uint64_t x53 = (x52 >> 0x33);
- uint64_t x54 = (x52 & 0x7ffffffffffff);
- uint64_t x55 = (x53 + x30);
- uint64_t x56 = (x55 >> 0x32);
- uint64_t x57 = (x55 & 0x3ffffffffffff);
- return (Return x51, Return x48, Return x45, Return x42, Return x39, Return x36, (x56 + x33), Return x57, Return x54))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e452m3_9limbs/fesquareDisplay.v b/src/Specific/solinas64_2e452m3_9limbs/fesquareDisplay.v
deleted file mode 100644
index 98c66c5f9..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e452m3_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e452m3_9limbs/fesub.c b/src/Specific/solinas64_2e452m3_9limbs/fesub.c
deleted file mode 100644
index c0c234ca7..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/fesub.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void fesub(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- out[0] = ((0xffffffffffffa + x5) - x21);
- out[1] = ((0x7fffffffffffe + x7) - x23);
- out[2] = ((0x7fffffffffffe + x9) - x25);
- out[3] = ((0x7fffffffffffe + x11) - x27);
- out[4] = ((0xffffffffffffe + x13) - x29);
- out[5] = ((0x7fffffffffffe + x15) - x31);
- out[6] = ((0x7fffffffffffe + x17) - x33);
- out[7] = ((0x7fffffffffffe + x19) - x35);
- out[8] = ((0x7fffffffffffe + x18) - x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e452m3_9limbs/fesub.v b/src/Specific/solinas64_2e452m3_9limbs/fesub.v
deleted file mode 100644
index 068e9ec16..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e452m3_9limbs.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/solinas64_2e452m3_9limbs/fesubDisplay.log b/src/Specific/solinas64_2e452m3_9limbs/fesubDisplay.log
deleted file mode 100644
index a139ce8c9..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- (((0x7fffffffffffe + x18) - x34), ((0x7fffffffffffe + x19) - x35), ((0x7fffffffffffe + x17) - x33), ((0x7fffffffffffe + x15) - x31), ((0xffffffffffffe + x13) - x29), ((0x7fffffffffffe + x11) - x27), ((0x7fffffffffffe + x9) - x25), ((0x7fffffffffffe + x7) - x23), ((0xffffffffffffa + x5) - x21)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e452m3_9limbs/fesubDisplay.v b/src/Specific/solinas64_2e452m3_9limbs/fesubDisplay.v
deleted file mode 100644
index 841090f1f..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e452m3_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e452m3_9limbs/freeze.c b/src/Specific/solinas64_2e452m3_9limbs/freeze.c
deleted file mode 100644
index cb7438647..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/freeze.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void freeze(uint64_t out[9], const uint64_t in1[9]) {
- { const uint64_t x15 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x18; uint8_t x19 = _subborrow_u51(0x0, x2, 0x7fffffffffffd, &x18);
- { uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x4, 0x3ffffffffffff);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x6, 0x3ffffffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x8, 0x3ffffffffffff);
- { uint64_t x30; uint8_t x31 = _subborrow_u51(x28, x10, 0x7ffffffffffff, &x30);
- { uint64_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x12, 0x3ffffffffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x34, Return x14, 0x3ffffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x16, 0x3ffffffffffff);
- { uint64_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x15, 0x3ffffffffffff);
- { uint64_t x44 = cmovznz64(x43, 0x0, 0xffffffffffffffffL);
- { uint64_t x45 = (x44 & 0x7fffffffffffd);
- { uint64_t x47; uint8_t x48 = _addcarryx_u51(0x0, x18, x45, &x47);
- { uint64_t x49 = (x44 & 0x3ffffffffffff);
- { uint64_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- { uint64_t x53 = (x44 & 0x3ffffffffffff);
- { uint64_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- { uint64_t x57 = (x44 & 0x3ffffffffffff);
- { uint64_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- { uint64_t x61 = (x44 & 0x7ffffffffffff);
- { uint64_t x63; uint8_t x64 = _addcarryx_u51(x60, x30, x61, &x63);
- { uint64_t x65 = (x44 & 0x3ffffffffffff);
- { uint64_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- { uint64_t x69 = (x44 & 0x3ffffffffffff);
- { uint64_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- { uint64_t x73 = (x44 & 0x3ffffffffffff);
- { uint64_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- { uint64_t x77 = (x44 & 0x3ffffffffffff);
- { uint64_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- out[0] = x47;
- out[1] = x51;
- out[2] = x55;
- out[3] = x59;
- out[4] = x63;
- out[5] = x67;
- out[6] = x71;
- out[7] = x75;
- out[8] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e452m3_9limbs/freeze.v b/src/Specific/solinas64_2e452m3_9limbs/freeze.v
deleted file mode 100644
index 14713b91d..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e452m3_9limbs.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/solinas64_2e452m3_9limbs/freezeDisplay.log b/src/Specific/solinas64_2e452m3_9limbs/freezeDisplay.log
deleted file mode 100644
index 223f72dd4..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x18, uint8_t x19 = subborrow_u51(0x0, x2, 0x7fffffffffffd);
- uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x4, 0x3ffffffffffff);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x6, 0x3ffffffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x8, 0x3ffffffffffff);
- uint64_t x30, uint8_t x31 = subborrow_u51(x28, x10, 0x7ffffffffffff);
- uint64_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x12, 0x3ffffffffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x34, Return x14, 0x3ffffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x16, 0x3ffffffffffff);
- uint64_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x15, 0x3ffffffffffff);
- uint64_t x44 = cmovznz64(x43, 0x0, 0xffffffffffffffffL);
- uint64_t x45 = (x44 & 0x7fffffffffffd);
- uint64_t x47, uint8_t x48 = addcarryx_u51(0x0, x18, x45);
- uint64_t x49 = (x44 & 0x3ffffffffffff);
- uint64_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- uint64_t x53 = (x44 & 0x3ffffffffffff);
- uint64_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- uint64_t x57 = (x44 & 0x3ffffffffffff);
- uint64_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- uint64_t x61 = (x44 & 0x7ffffffffffff);
- uint64_t x63, uint8_t x64 = addcarryx_u51(x60, x30, x61);
- uint64_t x65 = (x44 & 0x3ffffffffffff);
- uint64_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- uint64_t x69 = (x44 & 0x3ffffffffffff);
- uint64_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- uint64_t x73 = (x44 & 0x3ffffffffffff);
- uint64_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- uint64_t x77 = (x44 & 0x3ffffffffffff);
- uint64_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- (Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x51, Return x47))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e452m3_9limbs/freezeDisplay.v b/src/Specific/solinas64_2e452m3_9limbs/freezeDisplay.v
deleted file mode 100644
index 6c23a6bba..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e452m3_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e452m3_9limbs/py_interpreter.sh b/src/Specific/solinas64_2e452m3_9limbs/py_interpreter.sh
deleted file mode 100755
index b293203e6..000000000
--- a/src/Specific/solinas64_2e452m3_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**452 - 3' -Dmodulus_bytes='50 + 2/9' -Da24='121665'
diff --git a/src/Specific/solinas64_2e468m17_8limbs/CurveParameters.v b/src/Specific/solinas64_2e468m17_8limbs/CurveParameters.v
deleted file mode 100644
index 0ed707400..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^468 - 17
-Base: 58.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 58 + 1/2;
- bitwidth := 64;
- s := 2^468;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 8); [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/solinas64_2e468m17_8limbs/Synthesis.v b/src/Specific/solinas64_2e468m17_8limbs/Synthesis.v
deleted file mode 100644
index c5b46a658..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e468m17_8limbs.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/solinas64_2e468m17_8limbs/compiler.sh b/src/Specific/solinas64_2e468m17_8limbs/compiler.sh
deleted file mode 100755
index 17b7ccff7..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{59,58,59,58,59,58,59,58}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='59' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<468) - 17' "$@"
diff --git a/src/Specific/solinas64_2e468m17_8limbs/compilerxx.sh b/src/Specific/solinas64_2e468m17_8limbs/compilerxx.sh
deleted file mode 100755
index 6427000c5..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{59,58,59,58,59,58,59,58}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='59' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<468) - 17' "$@"
diff --git a/src/Specific/solinas64_2e468m17_8limbs/feadd.c b/src/Specific/solinas64_2e468m17_8limbs/feadd.c
deleted file mode 100644
index 4def6ee9c..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e468m17_8limbs/feadd.v b/src/Specific/solinas64_2e468m17_8limbs/feadd.v
deleted file mode 100644
index efa83eeb5..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e468m17_8limbs.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/solinas64_2e468m17_8limbs/feaddDisplay.log b/src/Specific/solinas64_2e468m17_8limbs/feaddDisplay.log
deleted file mode 100644
index 023fc8a31..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e468m17_8limbs/feaddDisplay.v b/src/Specific/solinas64_2e468m17_8limbs/feaddDisplay.v
deleted file mode 100644
index 0007d0b4b..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e468m17_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e468m17_8limbs/fecarry.v b/src/Specific/solinas64_2e468m17_8limbs/fecarry.v
deleted file mode 100644
index c0501fde9..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e468m17_8limbs.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/solinas64_2e468m17_8limbs/fecarryDisplay.v b/src/Specific/solinas64_2e468m17_8limbs/fecarryDisplay.v
deleted file mode 100644
index 0ac00bfa3..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e468m17_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e468m17_8limbs/femul.c b/src/Specific/solinas64_2e468m17_8limbs/femul.c
deleted file mode 100644
index 577cfa76f..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/femul.c
+++ /dev/null
@@ -1,64 +0,0 @@
-static void femul(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint128_t x32 = (((uint128_t)x5 * x30) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + (((uint128_t)x17 * x21) + ((uint128_t)x16 * x19))))))));
- { uint128_t x33 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + (((uint128_t)x9 * x27) + ((0x2 * ((uint128_t)x11 * x25)) + (((uint128_t)x13 * x23) + ((0x2 * ((uint128_t)x15 * x21)) + ((uint128_t)x17 * x19))))))) + (0x11 * (0x2 * ((uint128_t)x16 * x30))));
- { uint128_t x34 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x15 * x19)))))) + (0x11 * (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))));
- { uint128_t x35 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + (((uint128_t)x9 * x23) + ((0x2 * ((uint128_t)x11 * x21)) + ((uint128_t)x13 * x19))))) + (0x11 * ((0x2 * ((uint128_t)x15 * x30)) + (((uint128_t)x17 * x31) + (0x2 * ((uint128_t)x16 * x29))))));
- { uint128_t x36 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (0x11 * (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27))))));
- { uint128_t x37 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((uint128_t)x9 * x19))) + (0x11 * ((0x2 * ((uint128_t)x11 * x30)) + (((uint128_t)x13 * x31) + ((0x2 * ((uint128_t)x15 * x29)) + (((uint128_t)x17 * x27) + (0x2 * ((uint128_t)x16 * x25))))))));
- { uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x11 * (((uint128_t)x9 * x30) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + ((uint128_t)x16 * x23))))))));
- { uint128_t x39 = (((uint128_t)x5 * x19) + (0x11 * ((0x2 * ((uint128_t)x7 * x30)) + (((uint128_t)x9 * x31) + ((0x2 * ((uint128_t)x11 * x29)) + (((uint128_t)x13 * x27) + ((0x2 * ((uint128_t)x15 * x25)) + (((uint128_t)x17 * x23) + (0x2 * ((uint128_t)x16 * x21))))))))));
- { uint128_t x40 = (x39 >> 0x3b);
- { uint64_t x41 = ((uint64_t)x39 & 0x7ffffffffffffff);
- { uint128_t x42 = (x40 + x38);
- { uint128_t x43 = (x42 >> 0x3a);
- { uint64_t x44 = ((uint64_t)x42 & 0x3ffffffffffffff);
- { uint128_t x45 = (x43 + x37);
- { uint128_t x46 = (x45 >> 0x3b);
- { uint64_t x47 = ((uint64_t)x45 & 0x7ffffffffffffff);
- { uint128_t x48 = (x46 + x36);
- { uint128_t x49 = (x48 >> 0x3a);
- { uint64_t x50 = ((uint64_t)x48 & 0x3ffffffffffffff);
- { uint128_t x51 = (x49 + x35);
- { uint128_t x52 = (x51 >> 0x3b);
- { uint64_t x53 = ((uint64_t)x51 & 0x7ffffffffffffff);
- { uint128_t x54 = (x52 + x34);
- { uint128_t x55 = (x54 >> 0x3a);
- { uint64_t x56 = ((uint64_t)x54 & 0x3ffffffffffffff);
- { uint128_t x57 = (x55 + x33);
- { uint128_t x58 = (x57 >> 0x3b);
- { uint64_t x59 = ((uint64_t)x57 & 0x7ffffffffffffff);
- { uint128_t x60 = (x58 + x32);
- { uint128_t x61 = (x60 >> 0x3a);
- { uint64_t x62 = ((uint64_t)x60 & 0x3ffffffffffffff);
- { uint128_t x63 = (x41 + (0x11 * x61));
- { uint64_t x64 = (uint64_t) (x63 >> 0x3b);
- { uint64_t x65 = ((uint64_t)x63 & 0x7ffffffffffffff);
- { uint64_t x66 = (x64 + x44);
- { uint64_t x67 = (x66 >> 0x3a);
- { uint64_t x68 = (x66 & 0x3ffffffffffffff);
- out[0] = x65;
- out[1] = x68;
- out[2] = (x67 + x47);
- out[3] = x50;
- out[4] = x53;
- out[5] = x56;
- out[6] = x59;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e468m17_8limbs/femul.v b/src/Specific/solinas64_2e468m17_8limbs/femul.v
deleted file mode 100644
index 13af29679..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e468m17_8limbs.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/solinas64_2e468m17_8limbs/femulDisplay.log b/src/Specific/solinas64_2e468m17_8limbs/femulDisplay.log
deleted file mode 100644
index 0b24105fb..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint128_t x32 = (((uint128_t)x5 * x30) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + (((uint128_t)x17 * x21) + ((uint128_t)x16 * x19))))))));
- uint128_t x33 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + (((uint128_t)x9 * x27) + ((0x2 * ((uint128_t)x11 * x25)) + (((uint128_t)x13 * x23) + ((0x2 * ((uint128_t)x15 * x21)) + ((uint128_t)x17 * x19))))))) + (0x11 * (0x2 * ((uint128_t)x16 * x30))));
- uint128_t x34 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + (((uint128_t)x13 * x21) + ((uint128_t)x15 * x19)))))) + (0x11 * (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))));
- uint128_t x35 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + (((uint128_t)x9 * x23) + ((0x2 * ((uint128_t)x11 * x21)) + ((uint128_t)x13 * x19))))) + (0x11 * ((0x2 * ((uint128_t)x15 * x30)) + (((uint128_t)x17 * x31) + (0x2 * ((uint128_t)x16 * x29))))));
- uint128_t x36 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (0x11 * (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27))))));
- uint128_t x37 = ((((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x21)) + ((uint128_t)x9 * x19))) + (0x11 * ((0x2 * ((uint128_t)x11 * x30)) + (((uint128_t)x13 * x31) + ((0x2 * ((uint128_t)x15 * x29)) + (((uint128_t)x17 * x27) + (0x2 * ((uint128_t)x16 * x25))))))));
- uint128_t x38 = ((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (0x11 * (((uint128_t)x9 * x30) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + ((uint128_t)x16 * x23))))))));
- uint128_t x39 = (((uint128_t)x5 * x19) + (0x11 * ((0x2 * ((uint128_t)x7 * x30)) + (((uint128_t)x9 * x31) + ((0x2 * ((uint128_t)x11 * x29)) + (((uint128_t)x13 * x27) + ((0x2 * ((uint128_t)x15 * x25)) + (((uint128_t)x17 * x23) + (0x2 * ((uint128_t)x16 * x21))))))))));
- uint128_t x40 = (x39 >> 0x3b);
- uint64_t x41 = ((uint64_t)x39 & 0x7ffffffffffffff);
- uint128_t x42 = (x40 + x38);
- uint128_t x43 = (x42 >> 0x3a);
- uint64_t x44 = ((uint64_t)x42 & 0x3ffffffffffffff);
- uint128_t x45 = (x43 + x37);
- uint128_t x46 = (x45 >> 0x3b);
- uint64_t x47 = ((uint64_t)x45 & 0x7ffffffffffffff);
- uint128_t x48 = (x46 + x36);
- uint128_t x49 = (x48 >> 0x3a);
- uint64_t x50 = ((uint64_t)x48 & 0x3ffffffffffffff);
- uint128_t x51 = (x49 + x35);
- uint128_t x52 = (x51 >> 0x3b);
- uint64_t x53 = ((uint64_t)x51 & 0x7ffffffffffffff);
- uint128_t x54 = (x52 + x34);
- uint128_t x55 = (x54 >> 0x3a);
- uint64_t x56 = ((uint64_t)x54 & 0x3ffffffffffffff);
- uint128_t x57 = (x55 + x33);
- uint128_t x58 = (x57 >> 0x3b);
- uint64_t x59 = ((uint64_t)x57 & 0x7ffffffffffffff);
- uint128_t x60 = (x58 + x32);
- uint128_t x61 = (x60 >> 0x3a);
- uint64_t x62 = ((uint64_t)x60 & 0x3ffffffffffffff);
- uint128_t x63 = (x41 + (0x11 * x61));
- uint64_t x64 = (uint64_t) (x63 >> 0x3b);
- uint64_t x65 = ((uint64_t)x63 & 0x7ffffffffffffff);
- uint64_t x66 = (x64 + x44);
- uint64_t x67 = (x66 >> 0x3a);
- uint64_t x68 = (x66 & 0x3ffffffffffffff);
- return (Return x62, Return x59, Return x56, Return x53, Return x50, (x67 + x47), Return x68, Return x65))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e468m17_8limbs/femulDisplay.v b/src/Specific/solinas64_2e468m17_8limbs/femulDisplay.v
deleted file mode 100644
index 26268ffe9..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e468m17_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e468m17_8limbs/fesquare.c b/src/Specific/solinas64_2e468m17_8limbs/fesquare.c
deleted file mode 100644
index edce105d8..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/fesquare.c
+++ /dev/null
@@ -1,56 +0,0 @@
-static void fesquare(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x15 = (((uint128_t)x2 * x13) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x13 * x2))))))));
- { uint128_t x16 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x11 * (0x2 * ((uint128_t)x13 * x13))));
- { uint128_t x17 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x11 * (((uint128_t)x14 * x13) + ((uint128_t)x13 * x14))));
- { uint128_t x18 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint128_t)x12 * x13)) + (((uint128_t)x14 * x14) + (0x2 * ((uint128_t)x13 * x12))))));
- { uint128_t x19 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x11 * (((uint128_t)x10 * x13) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((uint128_t)x13 * x10))))));
- { uint128_t x20 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x11 * ((0x2 * ((uint128_t)x8 * x13)) + (((uint128_t)x10 * x14) + ((0x2 * ((uint128_t)x12 * x12)) + (((uint128_t)x14 * x10) + (0x2 * ((uint128_t)x13 * x8))))))));
- { uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * (((uint128_t)x6 * x13) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + ((uint128_t)x13 * x6))))))));
- { uint128_t x22 = (((uint128_t)x2 * x2) + (0x11 * ((0x2 * ((uint128_t)x4 * x13)) + (((uint128_t)x6 * x14) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + (((uint128_t)x14 * x6) + (0x2 * ((uint128_t)x13 * x4))))))))));
- { uint128_t x23 = (x22 >> 0x3b);
- { uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffffffff);
- { uint128_t x25 = (x23 + x21);
- { uint128_t x26 = (x25 >> 0x3a);
- { uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffffffff);
- { uint128_t x28 = (x26 + x20);
- { uint128_t x29 = (x28 >> 0x3b);
- { uint64_t x30 = ((uint64_t)x28 & 0x7ffffffffffffff);
- { uint128_t x31 = (x29 + x19);
- { uint128_t x32 = (x31 >> 0x3a);
- { uint64_t x33 = ((uint64_t)x31 & 0x3ffffffffffffff);
- { uint128_t x34 = (x32 + x18);
- { uint128_t x35 = (x34 >> 0x3b);
- { uint64_t x36 = ((uint64_t)x34 & 0x7ffffffffffffff);
- { uint128_t x37 = (x35 + x17);
- { uint128_t x38 = (x37 >> 0x3a);
- { uint64_t x39 = ((uint64_t)x37 & 0x3ffffffffffffff);
- { uint128_t x40 = (x38 + x16);
- { uint128_t x41 = (x40 >> 0x3b);
- { uint64_t x42 = ((uint64_t)x40 & 0x7ffffffffffffff);
- { uint128_t x43 = (x41 + x15);
- { uint128_t x44 = (x43 >> 0x3a);
- { uint64_t x45 = ((uint64_t)x43 & 0x3ffffffffffffff);
- { uint128_t x46 = (x24 + (0x11 * x44));
- { uint64_t x47 = (uint64_t) (x46 >> 0x3b);
- { uint64_t x48 = ((uint64_t)x46 & 0x7ffffffffffffff);
- { uint64_t x49 = (x47 + x27);
- { uint64_t x50 = (x49 >> 0x3a);
- { uint64_t x51 = (x49 & 0x3ffffffffffffff);
- out[0] = x48;
- out[1] = x51;
- out[2] = (x50 + x30);
- out[3] = x33;
- out[4] = x36;
- out[5] = x39;
- out[6] = x42;
- out[7] = x45;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e468m17_8limbs/fesquare.v b/src/Specific/solinas64_2e468m17_8limbs/fesquare.v
deleted file mode 100644
index 91f199d83..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e468m17_8limbs.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/solinas64_2e468m17_8limbs/fesquareDisplay.log b/src/Specific/solinas64_2e468m17_8limbs/fesquareDisplay.log
deleted file mode 100644
index 1bdd98b58..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,44 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x15 = (((uint128_t)x2 * x13) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x13 * x2))))))));
- uint128_t x16 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x11 * (0x2 * ((uint128_t)x13 * x13))));
- uint128_t x17 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x11 * (((uint128_t)x14 * x13) + ((uint128_t)x13 * x14))));
- uint128_t x18 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint128_t)x12 * x13)) + (((uint128_t)x14 * x14) + (0x2 * ((uint128_t)x13 * x12))))));
- uint128_t x19 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x11 * (((uint128_t)x10 * x13) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((uint128_t)x13 * x10))))));
- uint128_t x20 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x11 * ((0x2 * ((uint128_t)x8 * x13)) + (((uint128_t)x10 * x14) + ((0x2 * ((uint128_t)x12 * x12)) + (((uint128_t)x14 * x10) + (0x2 * ((uint128_t)x13 * x8))))))));
- uint128_t x21 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * (((uint128_t)x6 * x13) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + ((uint128_t)x13 * x6))))))));
- uint128_t x22 = (((uint128_t)x2 * x2) + (0x11 * ((0x2 * ((uint128_t)x4 * x13)) + (((uint128_t)x6 * x14) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + (((uint128_t)x14 * x6) + (0x2 * ((uint128_t)x13 * x4))))))))));
- uint128_t x23 = (x22 >> 0x3b);
- uint64_t x24 = ((uint64_t)x22 & 0x7ffffffffffffff);
- uint128_t x25 = (x23 + x21);
- uint128_t x26 = (x25 >> 0x3a);
- uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffffffff);
- uint128_t x28 = (x26 + x20);
- uint128_t x29 = (x28 >> 0x3b);
- uint64_t x30 = ((uint64_t)x28 & 0x7ffffffffffffff);
- uint128_t x31 = (x29 + x19);
- uint128_t x32 = (x31 >> 0x3a);
- uint64_t x33 = ((uint64_t)x31 & 0x3ffffffffffffff);
- uint128_t x34 = (x32 + x18);
- uint128_t x35 = (x34 >> 0x3b);
- uint64_t x36 = ((uint64_t)x34 & 0x7ffffffffffffff);
- uint128_t x37 = (x35 + x17);
- uint128_t x38 = (x37 >> 0x3a);
- uint64_t x39 = ((uint64_t)x37 & 0x3ffffffffffffff);
- uint128_t x40 = (x38 + x16);
- uint128_t x41 = (x40 >> 0x3b);
- uint64_t x42 = ((uint64_t)x40 & 0x7ffffffffffffff);
- uint128_t x43 = (x41 + x15);
- uint128_t x44 = (x43 >> 0x3a);
- uint64_t x45 = ((uint64_t)x43 & 0x3ffffffffffffff);
- uint128_t x46 = (x24 + (0x11 * x44));
- uint64_t x47 = (uint64_t) (x46 >> 0x3b);
- uint64_t x48 = ((uint64_t)x46 & 0x7ffffffffffffff);
- uint64_t x49 = (x47 + x27);
- uint64_t x50 = (x49 >> 0x3a);
- uint64_t x51 = (x49 & 0x3ffffffffffffff);
- return (Return x45, Return x42, Return x39, Return x36, Return x33, (x50 + x30), Return x51, Return x48))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e468m17_8limbs/fesquareDisplay.v b/src/Specific/solinas64_2e468m17_8limbs/fesquareDisplay.v
deleted file mode 100644
index 0aafaa527..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e468m17_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e468m17_8limbs/fesub.c b/src/Specific/solinas64_2e468m17_8limbs/fesub.c
deleted file mode 100644
index 8e9e5a81d..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = ((0xfffffffffffffde + x5) - x19);
- out[1] = ((0x7fffffffffffffe + x7) - x21);
- out[2] = ((0xffffffffffffffe + x9) - x23);
- out[3] = ((0x7fffffffffffffe + x11) - x25);
- out[4] = ((0xffffffffffffffe + x13) - x27);
- out[5] = ((0x7fffffffffffffe + x15) - x29);
- out[6] = ((0xffffffffffffffe + x17) - x31);
- out[7] = ((0x7fffffffffffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e468m17_8limbs/fesub.v b/src/Specific/solinas64_2e468m17_8limbs/fesub.v
deleted file mode 100644
index 7321060b2..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e468m17_8limbs.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/solinas64_2e468m17_8limbs/fesubDisplay.log b/src/Specific/solinas64_2e468m17_8limbs/fesubDisplay.log
deleted file mode 100644
index 4164d6bf6..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0x7fffffffffffffe + x16) - x30), ((0xffffffffffffffe + x17) - x31), ((0x7fffffffffffffe + x15) - x29), ((0xffffffffffffffe + x13) - x27), ((0x7fffffffffffffe + x11) - x25), ((0xffffffffffffffe + x9) - x23), ((0x7fffffffffffffe + x7) - x21), ((0xfffffffffffffde + x5) - x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e468m17_8limbs/fesubDisplay.v b/src/Specific/solinas64_2e468m17_8limbs/fesubDisplay.v
deleted file mode 100644
index 585800f40..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e468m17_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e468m17_8limbs/freeze.c b/src/Specific/solinas64_2e468m17_8limbs/freeze.c
deleted file mode 100644
index a623a2a1e..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffffffef);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0x3ffffffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0x7ffffffffffffff);
- { uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0x3ffffffffffffff);
- { uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0x7ffffffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0x3ffffffffffffff);
- { uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0x7ffffffffffffff);
- { uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0x3ffffffffffffff);
- { uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- { uint64_t x40 = (x39 & 0x7ffffffffffffef);
- { uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint64_t x44 = (x39 & 0x3ffffffffffffff);
- { uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint64_t x48 = (x39 & 0x7ffffffffffffff);
- { uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint64_t x52 = (x39 & 0x3ffffffffffffff);
- { uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint64_t x56 = (x39 & 0x7ffffffffffffff);
- { uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint64_t x60 = (x39 & 0x3ffffffffffffff);
- { uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint64_t x64 = (x39 & 0x7ffffffffffffff);
- { uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint64_t x68 = (x39 & 0x3ffffffffffffff);
- { uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e468m17_8limbs/freeze.v b/src/Specific/solinas64_2e468m17_8limbs/freeze.v
deleted file mode 100644
index 33f6f5cc1..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e468m17_8limbs.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/solinas64_2e468m17_8limbs/freezeDisplay.log b/src/Specific/solinas64_2e468m17_8limbs/freezeDisplay.log
deleted file mode 100644
index f54fa802d..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffffffef);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0x3ffffffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0x7ffffffffffffff);
- uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0x3ffffffffffffff);
- uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0x7ffffffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0x3ffffffffffffff);
- uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0x7ffffffffffffff);
- uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0x3ffffffffffffff);
- uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- uint64_t x40 = (x39 & 0x7ffffffffffffef);
- uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint64_t x44 = (x39 & 0x3ffffffffffffff);
- uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint64_t x48 = (x39 & 0x7ffffffffffffff);
- uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint64_t x52 = (x39 & 0x3ffffffffffffff);
- uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint64_t x56 = (x39 & 0x7ffffffffffffff);
- uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint64_t x60 = (x39 & 0x3ffffffffffffff);
- uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint64_t x64 = (x39 & 0x7ffffffffffffff);
- uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 59 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint64_t x68 = (x39 & 0x3ffffffffffffff);
- uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e468m17_8limbs/freezeDisplay.v b/src/Specific/solinas64_2e468m17_8limbs/freezeDisplay.v
deleted file mode 100644
index 179f8ec3b..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e468m17_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e468m17_8limbs/py_interpreter.sh b/src/Specific/solinas64_2e468m17_8limbs/py_interpreter.sh
deleted file mode 100755
index 699e598f0..000000000
--- a/src/Specific/solinas64_2e468m17_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**468 - 17' -Dmodulus_bytes='58.5' -Da24='121665'
diff --git a/src/Specific/solinas64_2e468m17_9limbs/CurveParameters.v b/src/Specific/solinas64_2e468m17_9limbs/CurveParameters.v
deleted file mode 100644
index 29223e90e..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^468 - 17
-Base: 52
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 52;
- bitwidth := 64;
- s := 2^468;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 9); [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/solinas64_2e468m17_9limbs/Synthesis.v b/src/Specific/solinas64_2e468m17_9limbs/Synthesis.v
deleted file mode 100644
index 3dd36977a..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e468m17_9limbs.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/solinas64_2e468m17_9limbs/compiler.sh b/src/Specific/solinas64_2e468m17_9limbs/compiler.sh
deleted file mode 100755
index 973f9f644..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,52,52,52,52,52,52,52,52}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='59' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<468) - 17' "$@"
diff --git a/src/Specific/solinas64_2e468m17_9limbs/compilerxx.sh b/src/Specific/solinas64_2e468m17_9limbs/compilerxx.sh
deleted file mode 100755
index f10dad6ae..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,52,52,52,52,52,52,52,52}' -Dmodulus_array='{0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='59' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<468) - 17' "$@"
diff --git a/src/Specific/solinas64_2e468m17_9limbs/feadd.c b/src/Specific/solinas64_2e468m17_9limbs/feadd.c
deleted file mode 100644
index 98ab4434c..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e468m17_9limbs/feadd.v b/src/Specific/solinas64_2e468m17_9limbs/feadd.v
deleted file mode 100644
index e453dfb66..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e468m17_9limbs.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/solinas64_2e468m17_9limbs/feaddDisplay.log b/src/Specific/solinas64_2e468m17_9limbs/feaddDisplay.log
deleted file mode 100644
index 3b92b1c5c..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e468m17_9limbs/feaddDisplay.v b/src/Specific/solinas64_2e468m17_9limbs/feaddDisplay.v
deleted file mode 100644
index 57fb231ad..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e468m17_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e468m17_9limbs/fecarry.v b/src/Specific/solinas64_2e468m17_9limbs/fecarry.v
deleted file mode 100644
index 30eae0e68..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e468m17_9limbs.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/solinas64_2e468m17_9limbs/fecarryDisplay.v b/src/Specific/solinas64_2e468m17_9limbs/fecarryDisplay.v
deleted file mode 100644
index e85f4d25b..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e468m17_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e468m17_9limbs/femul.c b/src/Specific/solinas64_2e468m17_9limbs/femul.c
deleted file mode 100644
index f7bb09511..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/femul.c
+++ /dev/null
@@ -1,71 +0,0 @@
-static void femul(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- { uint128_t x36 = (((uint128_t)x5 * x34) + (((uint128_t)x7 * x35) + (((uint128_t)x9 * x33) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + (((uint128_t)x19 * x23) + ((uint128_t)x18 * x21)))))))));
- { uint128_t x37 = ((((uint128_t)x5 * x35) + (((uint128_t)x7 * x33) + (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + (((uint128_t)x17 * x23) + ((uint128_t)x19 * x21)))))))) + (0x11 * ((uint128_t)x18 * x34)));
- { uint128_t x38 = ((((uint128_t)x5 * x33) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + ((uint128_t)x17 * x21))))))) + (0x11 * (((uint128_t)x19 * x34) + ((uint128_t)x18 * x35))));
- { uint128_t x39 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + ((uint128_t)x15 * x21)))))) + (0x11 * (((uint128_t)x17 * x34) + (((uint128_t)x19 * x35) + ((uint128_t)x18 * x33)))));
- { uint128_t x40 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + ((uint128_t)x13 * x21))))) + (0x11 * (((uint128_t)x15 * x34) + (((uint128_t)x17 * x35) + (((uint128_t)x19 * x33) + ((uint128_t)x18 * x31))))));
- { uint128_t x41 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + ((uint128_t)x11 * x21)))) + (0x11 * (((uint128_t)x13 * x34) + (((uint128_t)x15 * x35) + (((uint128_t)x17 * x33) + (((uint128_t)x19 * x31) + ((uint128_t)x18 * x29)))))));
- { uint128_t x42 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + ((uint128_t)x9 * x21))) + (0x11 * (((uint128_t)x11 * x34) + (((uint128_t)x13 * x35) + (((uint128_t)x15 * x33) + (((uint128_t)x17 * x31) + (((uint128_t)x19 * x29) + ((uint128_t)x18 * x27))))))));
- { uint128_t x43 = ((((uint128_t)x5 * x23) + ((uint128_t)x7 * x21)) + (0x11 * (((uint128_t)x9 * x34) + (((uint128_t)x11 * x35) + (((uint128_t)x13 * x33) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + (((uint128_t)x19 * x27) + ((uint128_t)x18 * x25)))))))));
- { uint128_t x44 = (((uint128_t)x5 * x21) + (0x11 * (((uint128_t)x7 * x34) + (((uint128_t)x9 * x35) + (((uint128_t)x11 * x33) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + (((uint128_t)x17 * x27) + (((uint128_t)x19 * x25) + ((uint128_t)x18 * x23))))))))));
- { uint64_t x45 = (uint64_t) (x44 >> 0x34);
- { uint64_t x46 = ((uint64_t)x44 & 0xfffffffffffff);
- { uint128_t x47 = (x45 + x43);
- { uint64_t x48 = (uint64_t) (x47 >> 0x34);
- { uint64_t x49 = ((uint64_t)x47 & 0xfffffffffffff);
- { uint128_t x50 = (x48 + x42);
- { uint64_t x51 = (uint64_t) (x50 >> 0x34);
- { uint64_t x52 = ((uint64_t)x50 & 0xfffffffffffff);
- { uint128_t x53 = (x51 + x41);
- { uint64_t x54 = (uint64_t) (x53 >> 0x34);
- { uint64_t x55 = ((uint64_t)x53 & 0xfffffffffffff);
- { uint128_t x56 = (x54 + x40);
- { uint64_t x57 = (uint64_t) (x56 >> 0x34);
- { uint64_t x58 = ((uint64_t)x56 & 0xfffffffffffff);
- { uint128_t x59 = (x57 + x39);
- { uint64_t x60 = (uint64_t) (x59 >> 0x34);
- { uint64_t x61 = ((uint64_t)x59 & 0xfffffffffffff);
- { uint128_t x62 = (x60 + x38);
- { uint64_t x63 = (uint64_t) (x62 >> 0x34);
- { uint64_t x64 = ((uint64_t)x62 & 0xfffffffffffff);
- { uint128_t x65 = (x63 + x37);
- { uint64_t x66 = (uint64_t) (x65 >> 0x34);
- { uint64_t x67 = ((uint64_t)x65 & 0xfffffffffffff);
- { uint128_t x68 = (x66 + x36);
- { uint64_t x69 = (uint64_t) (x68 >> 0x34);
- { uint64_t x70 = ((uint64_t)x68 & 0xfffffffffffff);
- { uint64_t x71 = (x46 + (0x11 * x69));
- { uint64_t x72 = (x71 >> 0x34);
- { uint64_t x73 = (x71 & 0xfffffffffffff);
- { uint64_t x74 = (x72 + x49);
- { uint64_t x75 = (x74 >> 0x34);
- { uint64_t x76 = (x74 & 0xfffffffffffff);
- out[0] = x73;
- out[1] = x76;
- out[2] = (x75 + x52);
- out[3] = x55;
- out[4] = x58;
- out[5] = x61;
- out[6] = x64;
- out[7] = x67;
- out[8] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e468m17_9limbs/femul.v b/src/Specific/solinas64_2e468m17_9limbs/femul.v
deleted file mode 100644
index 6244783f1..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e468m17_9limbs.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/solinas64_2e468m17_9limbs/femulDisplay.log b/src/Specific/solinas64_2e468m17_9limbs/femulDisplay.log
deleted file mode 100644
index 9fd28fcea..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/femulDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint128_t x36 = (((uint128_t)x5 * x34) + (((uint128_t)x7 * x35) + (((uint128_t)x9 * x33) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + (((uint128_t)x19 * x23) + ((uint128_t)x18 * x21)))))))));
- uint128_t x37 = ((((uint128_t)x5 * x35) + (((uint128_t)x7 * x33) + (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + (((uint128_t)x17 * x23) + ((uint128_t)x19 * x21)))))))) + (0x11 * ((uint128_t)x18 * x34)));
- uint128_t x38 = ((((uint128_t)x5 * x33) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + ((uint128_t)x17 * x21))))))) + (0x11 * (((uint128_t)x19 * x34) + ((uint128_t)x18 * x35))));
- uint128_t x39 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + ((uint128_t)x15 * x21)))))) + (0x11 * (((uint128_t)x17 * x34) + (((uint128_t)x19 * x35) + ((uint128_t)x18 * x33)))));
- uint128_t x40 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + ((uint128_t)x13 * x21))))) + (0x11 * (((uint128_t)x15 * x34) + (((uint128_t)x17 * x35) + (((uint128_t)x19 * x33) + ((uint128_t)x18 * x31))))));
- uint128_t x41 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + ((uint128_t)x11 * x21)))) + (0x11 * (((uint128_t)x13 * x34) + (((uint128_t)x15 * x35) + (((uint128_t)x17 * x33) + (((uint128_t)x19 * x31) + ((uint128_t)x18 * x29)))))));
- uint128_t x42 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + ((uint128_t)x9 * x21))) + (0x11 * (((uint128_t)x11 * x34) + (((uint128_t)x13 * x35) + (((uint128_t)x15 * x33) + (((uint128_t)x17 * x31) + (((uint128_t)x19 * x29) + ((uint128_t)x18 * x27))))))));
- uint128_t x43 = ((((uint128_t)x5 * x23) + ((uint128_t)x7 * x21)) + (0x11 * (((uint128_t)x9 * x34) + (((uint128_t)x11 * x35) + (((uint128_t)x13 * x33) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + (((uint128_t)x19 * x27) + ((uint128_t)x18 * x25)))))))));
- uint128_t x44 = (((uint128_t)x5 * x21) + (0x11 * (((uint128_t)x7 * x34) + (((uint128_t)x9 * x35) + (((uint128_t)x11 * x33) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + (((uint128_t)x17 * x27) + (((uint128_t)x19 * x25) + ((uint128_t)x18 * x23))))))))));
- uint64_t x45 = (uint64_t) (x44 >> 0x34);
- uint64_t x46 = ((uint64_t)x44 & 0xfffffffffffff);
- uint128_t x47 = (x45 + x43);
- uint64_t x48 = (uint64_t) (x47 >> 0x34);
- uint64_t x49 = ((uint64_t)x47 & 0xfffffffffffff);
- uint128_t x50 = (x48 + x42);
- uint64_t x51 = (uint64_t) (x50 >> 0x34);
- uint64_t x52 = ((uint64_t)x50 & 0xfffffffffffff);
- uint128_t x53 = (x51 + x41);
- uint64_t x54 = (uint64_t) (x53 >> 0x34);
- uint64_t x55 = ((uint64_t)x53 & 0xfffffffffffff);
- uint128_t x56 = (x54 + x40);
- uint64_t x57 = (uint64_t) (x56 >> 0x34);
- uint64_t x58 = ((uint64_t)x56 & 0xfffffffffffff);
- uint128_t x59 = (x57 + x39);
- uint64_t x60 = (uint64_t) (x59 >> 0x34);
- uint64_t x61 = ((uint64_t)x59 & 0xfffffffffffff);
- uint128_t x62 = (x60 + x38);
- uint64_t x63 = (uint64_t) (x62 >> 0x34);
- uint64_t x64 = ((uint64_t)x62 & 0xfffffffffffff);
- uint128_t x65 = (x63 + x37);
- uint64_t x66 = (uint64_t) (x65 >> 0x34);
- uint64_t x67 = ((uint64_t)x65 & 0xfffffffffffff);
- uint128_t x68 = (x66 + x36);
- uint64_t x69 = (uint64_t) (x68 >> 0x34);
- uint64_t x70 = ((uint64_t)x68 & 0xfffffffffffff);
- uint64_t x71 = (x46 + (0x11 * x69));
- uint64_t x72 = (x71 >> 0x34);
- uint64_t x73 = (x71 & 0xfffffffffffff);
- uint64_t x74 = (x72 + x49);
- uint64_t x75 = (x74 >> 0x34);
- uint64_t x76 = (x74 & 0xfffffffffffff);
- return (Return x70, Return x67, Return x64, Return x61, Return x58, Return x55, (x75 + x52), Return x76, Return x73))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e468m17_9limbs/femulDisplay.v b/src/Specific/solinas64_2e468m17_9limbs/femulDisplay.v
deleted file mode 100644
index 981abf301..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e468m17_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e468m17_9limbs/fesquare.c b/src/Specific/solinas64_2e468m17_9limbs/fesquare.c
deleted file mode 100644
index bcfb518a4..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/fesquare.c
+++ /dev/null
@@ -1,62 +0,0 @@
-static void fesquare(uint64_t out[9], const uint64_t in1[9]) {
- { const uint64_t x15 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x17 = (((uint128_t)x2 * x15) + (((uint128_t)x4 * x16) + (((uint128_t)x6 * x14) + (((uint128_t)x8 * x12) + (((uint128_t)x10 * x10) + (((uint128_t)x12 * x8) + (((uint128_t)x14 * x6) + (((uint128_t)x16 * x4) + ((uint128_t)x15 * x2)))))))));
- { uint128_t x18 = ((((uint128_t)x2 * x16) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x16 * x2)))))))) + (0x11 * ((uint128_t)x15 * x15)));
- { uint128_t x19 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x11 * (((uint128_t)x16 * x15) + ((uint128_t)x15 * x16))));
- { uint128_t x20 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x11 * (((uint128_t)x14 * x15) + (((uint128_t)x16 * x16) + ((uint128_t)x15 * x14)))));
- { uint128_t x21 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x11 * (((uint128_t)x12 * x15) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + ((uint128_t)x15 * x12))))));
- { uint128_t x22 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x11 * (((uint128_t)x10 * x15) + (((uint128_t)x12 * x16) + (((uint128_t)x14 * x14) + (((uint128_t)x16 * x12) + ((uint128_t)x15 * x10)))))));
- { uint128_t x23 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x11 * (((uint128_t)x8 * x15) + (((uint128_t)x10 * x16) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + (((uint128_t)x16 * x10) + ((uint128_t)x15 * x8))))))));
- { uint128_t x24 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * (((uint128_t)x6 * x15) + (((uint128_t)x8 * x16) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + (((uint128_t)x14 * x10) + (((uint128_t)x16 * x8) + ((uint128_t)x15 * x6)))))))));
- { uint128_t x25 = (((uint128_t)x2 * x2) + (0x11 * (((uint128_t)x4 * x15) + (((uint128_t)x6 * x16) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + (((uint128_t)x16 * x6) + ((uint128_t)x15 * x4))))))))));
- { uint64_t x26 = (uint64_t) (x25 >> 0x34);
- { uint64_t x27 = ((uint64_t)x25 & 0xfffffffffffff);
- { uint128_t x28 = (x26 + x24);
- { uint64_t x29 = (uint64_t) (x28 >> 0x34);
- { uint64_t x30 = ((uint64_t)x28 & 0xfffffffffffff);
- { uint128_t x31 = (x29 + x23);
- { uint64_t x32 = (uint64_t) (x31 >> 0x34);
- { uint64_t x33 = ((uint64_t)x31 & 0xfffffffffffff);
- { uint128_t x34 = (x32 + x22);
- { uint64_t x35 = (uint64_t) (x34 >> 0x34);
- { uint64_t x36 = ((uint64_t)x34 & 0xfffffffffffff);
- { uint128_t x37 = (x35 + x21);
- { uint64_t x38 = (uint64_t) (x37 >> 0x34);
- { uint64_t x39 = ((uint64_t)x37 & 0xfffffffffffff);
- { uint128_t x40 = (x38 + x20);
- { uint64_t x41 = (uint64_t) (x40 >> 0x34);
- { uint64_t x42 = ((uint64_t)x40 & 0xfffffffffffff);
- { uint128_t x43 = (x41 + x19);
- { uint64_t x44 = (uint64_t) (x43 >> 0x34);
- { uint64_t x45 = ((uint64_t)x43 & 0xfffffffffffff);
- { uint128_t x46 = (x44 + x18);
- { uint64_t x47 = (uint64_t) (x46 >> 0x34);
- { uint64_t x48 = ((uint64_t)x46 & 0xfffffffffffff);
- { uint128_t x49 = (x47 + x17);
- { uint64_t x50 = (uint64_t) (x49 >> 0x34);
- { uint64_t x51 = ((uint64_t)x49 & 0xfffffffffffff);
- { uint64_t x52 = (x27 + (0x11 * x50));
- { uint64_t x53 = (x52 >> 0x34);
- { uint64_t x54 = (x52 & 0xfffffffffffff);
- { uint64_t x55 = (x53 + x30);
- { uint64_t x56 = (x55 >> 0x34);
- { uint64_t x57 = (x55 & 0xfffffffffffff);
- out[0] = x54;
- out[1] = x57;
- out[2] = (x56 + x33);
- out[3] = x36;
- out[4] = x39;
- out[5] = x42;
- out[6] = x45;
- out[7] = x48;
- out[8] = x51;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e468m17_9limbs/fesquare.v b/src/Specific/solinas64_2e468m17_9limbs/fesquare.v
deleted file mode 100644
index f4d98b87a..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e468m17_9limbs.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/solinas64_2e468m17_9limbs/fesquareDisplay.log b/src/Specific/solinas64_2e468m17_9limbs/fesquareDisplay.log
deleted file mode 100644
index 104cc8b1c..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x17 = (((uint128_t)x2 * x15) + (((uint128_t)x4 * x16) + (((uint128_t)x6 * x14) + (((uint128_t)x8 * x12) + (((uint128_t)x10 * x10) + (((uint128_t)x12 * x8) + (((uint128_t)x14 * x6) + (((uint128_t)x16 * x4) + ((uint128_t)x15 * x2)))))))));
- uint128_t x18 = ((((uint128_t)x2 * x16) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x16 * x2)))))))) + (0x11 * ((uint128_t)x15 * x15)));
- uint128_t x19 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x11 * (((uint128_t)x16 * x15) + ((uint128_t)x15 * x16))));
- uint128_t x20 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x11 * (((uint128_t)x14 * x15) + (((uint128_t)x16 * x16) + ((uint128_t)x15 * x14)))));
- uint128_t x21 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x11 * (((uint128_t)x12 * x15) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + ((uint128_t)x15 * x12))))));
- uint128_t x22 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x11 * (((uint128_t)x10 * x15) + (((uint128_t)x12 * x16) + (((uint128_t)x14 * x14) + (((uint128_t)x16 * x12) + ((uint128_t)x15 * x10)))))));
- uint128_t x23 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x11 * (((uint128_t)x8 * x15) + (((uint128_t)x10 * x16) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + (((uint128_t)x16 * x10) + ((uint128_t)x15 * x8))))))));
- uint128_t x24 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * (((uint128_t)x6 * x15) + (((uint128_t)x8 * x16) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + (((uint128_t)x14 * x10) + (((uint128_t)x16 * x8) + ((uint128_t)x15 * x6)))))))));
- uint128_t x25 = (((uint128_t)x2 * x2) + (0x11 * (((uint128_t)x4 * x15) + (((uint128_t)x6 * x16) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + (((uint128_t)x16 * x6) + ((uint128_t)x15 * x4))))))))));
- uint64_t x26 = (uint64_t) (x25 >> 0x34);
- uint64_t x27 = ((uint64_t)x25 & 0xfffffffffffff);
- uint128_t x28 = (x26 + x24);
- uint64_t x29 = (uint64_t) (x28 >> 0x34);
- uint64_t x30 = ((uint64_t)x28 & 0xfffffffffffff);
- uint128_t x31 = (x29 + x23);
- uint64_t x32 = (uint64_t) (x31 >> 0x34);
- uint64_t x33 = ((uint64_t)x31 & 0xfffffffffffff);
- uint128_t x34 = (x32 + x22);
- uint64_t x35 = (uint64_t) (x34 >> 0x34);
- uint64_t x36 = ((uint64_t)x34 & 0xfffffffffffff);
- uint128_t x37 = (x35 + x21);
- uint64_t x38 = (uint64_t) (x37 >> 0x34);
- uint64_t x39 = ((uint64_t)x37 & 0xfffffffffffff);
- uint128_t x40 = (x38 + x20);
- uint64_t x41 = (uint64_t) (x40 >> 0x34);
- uint64_t x42 = ((uint64_t)x40 & 0xfffffffffffff);
- uint128_t x43 = (x41 + x19);
- uint64_t x44 = (uint64_t) (x43 >> 0x34);
- uint64_t x45 = ((uint64_t)x43 & 0xfffffffffffff);
- uint128_t x46 = (x44 + x18);
- uint64_t x47 = (uint64_t) (x46 >> 0x34);
- uint64_t x48 = ((uint64_t)x46 & 0xfffffffffffff);
- uint128_t x49 = (x47 + x17);
- uint64_t x50 = (uint64_t) (x49 >> 0x34);
- uint64_t x51 = ((uint64_t)x49 & 0xfffffffffffff);
- uint64_t x52 = (x27 + (0x11 * x50));
- uint64_t x53 = (x52 >> 0x34);
- uint64_t x54 = (x52 & 0xfffffffffffff);
- uint64_t x55 = (x53 + x30);
- uint64_t x56 = (x55 >> 0x34);
- uint64_t x57 = (x55 & 0xfffffffffffff);
- return (Return x51, Return x48, Return x45, Return x42, Return x39, Return x36, (x56 + x33), Return x57, Return x54))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e468m17_9limbs/fesquareDisplay.v b/src/Specific/solinas64_2e468m17_9limbs/fesquareDisplay.v
deleted file mode 100644
index 01f04d759..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e468m17_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e468m17_9limbs/fesub.c b/src/Specific/solinas64_2e468m17_9limbs/fesub.c
deleted file mode 100644
index c2dfee6a0..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/fesub.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void fesub(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- out[0] = ((0x1fffffffffffde + x5) - x21);
- out[1] = ((0x1ffffffffffffe + x7) - x23);
- out[2] = ((0x1ffffffffffffe + x9) - x25);
- out[3] = ((0x1ffffffffffffe + x11) - x27);
- out[4] = ((0x1ffffffffffffe + x13) - x29);
- out[5] = ((0x1ffffffffffffe + x15) - x31);
- out[6] = ((0x1ffffffffffffe + x17) - x33);
- out[7] = ((0x1ffffffffffffe + x19) - x35);
- out[8] = ((0x1ffffffffffffe + x18) - x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e468m17_9limbs/fesub.v b/src/Specific/solinas64_2e468m17_9limbs/fesub.v
deleted file mode 100644
index 4023e3f2b..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e468m17_9limbs.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/solinas64_2e468m17_9limbs/fesubDisplay.log b/src/Specific/solinas64_2e468m17_9limbs/fesubDisplay.log
deleted file mode 100644
index 6a646cb64..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- (((0x1ffffffffffffe + x18) - x34), ((0x1ffffffffffffe + x19) - x35), ((0x1ffffffffffffe + x17) - x33), ((0x1ffffffffffffe + x15) - x31), ((0x1ffffffffffffe + x13) - x29), ((0x1ffffffffffffe + x11) - x27), ((0x1ffffffffffffe + x9) - x25), ((0x1ffffffffffffe + x7) - x23), ((0x1fffffffffffde + x5) - x21)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e468m17_9limbs/fesubDisplay.v b/src/Specific/solinas64_2e468m17_9limbs/fesubDisplay.v
deleted file mode 100644
index 8eed31191..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e468m17_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e468m17_9limbs/freeze.c b/src/Specific/solinas64_2e468m17_9limbs/freeze.c
deleted file mode 100644
index 5e46faf8c..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/freeze.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void freeze(uint64_t out[9], const uint64_t in1[9]) {
- { const uint64_t x15 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffffef);
- { uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x4, 0xfffffffffffff);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x6, 0xfffffffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x8, 0xfffffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x10, 0xfffffffffffff);
- { uint64_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x12, 0xfffffffffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x34, Return x14, 0xfffffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x16, 0xfffffffffffff);
- { uint64_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x15, 0xfffffffffffff);
- { uint64_t x44 = cmovznz64(x43, 0x0, 0xffffffffffffffffL);
- { uint64_t x45 = (x44 & 0xfffffffffffef);
- { uint64_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- { uint64_t x49 = (x44 & 0xfffffffffffff);
- { uint64_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- { uint64_t x53 = (x44 & 0xfffffffffffff);
- { uint64_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- { uint64_t x57 = (x44 & 0xfffffffffffff);
- { uint64_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- { uint64_t x61 = (x44 & 0xfffffffffffff);
- { uint64_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- { uint64_t x65 = (x44 & 0xfffffffffffff);
- { uint64_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- { uint64_t x69 = (x44 & 0xfffffffffffff);
- { uint64_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- { uint64_t x73 = (x44 & 0xfffffffffffff);
- { uint64_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- { uint64_t x77 = (x44 & 0xfffffffffffff);
- { uint64_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- out[0] = x47;
- out[1] = x51;
- out[2] = x55;
- out[3] = x59;
- out[4] = x63;
- out[5] = x67;
- out[6] = x71;
- out[7] = x75;
- out[8] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e468m17_9limbs/freeze.v b/src/Specific/solinas64_2e468m17_9limbs/freeze.v
deleted file mode 100644
index c98268b78..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e468m17_9limbs.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/solinas64_2e468m17_9limbs/freezeDisplay.log b/src/Specific/solinas64_2e468m17_9limbs/freezeDisplay.log
deleted file mode 100644
index a1b1d7d00..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffffef);
- uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x4, 0xfffffffffffff);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x6, 0xfffffffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x8, 0xfffffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x10, 0xfffffffffffff);
- uint64_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x12, 0xfffffffffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x34, Return x14, 0xfffffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x16, 0xfffffffffffff);
- uint64_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x15, 0xfffffffffffff);
- uint64_t x44 = cmovznz64(x43, 0x0, 0xffffffffffffffffL);
- uint64_t x45 = (x44 & 0xfffffffffffef);
- uint64_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- uint64_t x49 = (x44 & 0xfffffffffffff);
- uint64_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- uint64_t x53 = (x44 & 0xfffffffffffff);
- uint64_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- uint64_t x57 = (x44 & 0xfffffffffffff);
- uint64_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- uint64_t x61 = (x44 & 0xfffffffffffff);
- uint64_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- uint64_t x65 = (x44 & 0xfffffffffffff);
- uint64_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- uint64_t x69 = (x44 & 0xfffffffffffff);
- uint64_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- uint64_t x73 = (x44 & 0xfffffffffffff);
- uint64_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- uint64_t x77 = (x44 & 0xfffffffffffff);
- uint64_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- (Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x51, Return x47))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e468m17_9limbs/freezeDisplay.v b/src/Specific/solinas64_2e468m17_9limbs/freezeDisplay.v
deleted file mode 100644
index 362e38e38..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e468m17_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e468m17_9limbs/py_interpreter.sh b/src/Specific/solinas64_2e468m17_9limbs/py_interpreter.sh
deleted file mode 100755
index 9a8a23861..000000000
--- a/src/Specific/solinas64_2e468m17_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**468 - 17' -Dmodulus_bytes='52' -Da24='121665'
diff --git a/src/Specific/solinas64_2e480m2e240m1_10limbs/CurveParameters.v b/src/Specific/solinas64_2e480m2e240m1_10limbs/CurveParameters.v
deleted file mode 100644
index c56f45689..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^480 - 2^240 - 1
-Base: 48
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 48;
- bitwidth := 64;
- s := 2^480;
- c := [(1, 1); (2^240, 1)];
- carry_chains := Some [[4; 9]; [5; 0; 6; 1; 7; 2; 8; 3; 9; 4]; [5; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- 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/solinas64_2e480m2e240m1_10limbs/Synthesis.v b/src/Specific/solinas64_2e480m2e240m1_10limbs/Synthesis.v
deleted file mode 100644
index 27de625e7..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_10limbs.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/solinas64_2e480m2e240m1_10limbs/compiler.sh b/src/Specific/solinas64_2e480m2e240m1_10limbs/compiler.sh
deleted file mode 100755
index d7a0d314a..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='60' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1' "$@"
diff --git a/src/Specific/solinas64_2e480m2e240m1_10limbs/compilerxx.sh b/src/Specific/solinas64_2e480m2e240m1_10limbs/compilerxx.sh
deleted file mode 100755
index 1e6f03786..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{48,48,48,48,48,48,48,48,48,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='60' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1' "$@"
diff --git a/src/Specific/solinas64_2e480m2e240m1_10limbs/feadd.c b/src/Specific/solinas64_2e480m2e240m1_10limbs/feadd.c
deleted file mode 100644
index df991e375..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/feadd.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void feadd(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- out[0] = (x5 + x23);
- out[1] = (x7 + x25);
- out[2] = (x9 + x27);
- out[3] = (x11 + x29);
- out[4] = (x13 + x31);
- out[5] = (x15 + x33);
- out[6] = (x17 + x35);
- out[7] = (x19 + x37);
- out[8] = (x21 + x39);
- out[9] = (x20 + x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e480m2e240m1_10limbs/feadd.v b/src/Specific/solinas64_2e480m2e240m1_10limbs/feadd.v
deleted file mode 100644
index 77ed601b9..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_10limbs.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/solinas64_2e480m2e240m1_10limbs/feaddDisplay.log b/src/Specific/solinas64_2e480m2e240m1_10limbs/feaddDisplay.log
deleted file mode 100644
index 04176128e..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e480m2e240m1_10limbs/feaddDisplay.v b/src/Specific/solinas64_2e480m2e240m1_10limbs/feaddDisplay.v
deleted file mode 100644
index f7de22d7d..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_10limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e480m2e240m1_10limbs/fecarry.v b/src/Specific/solinas64_2e480m2e240m1_10limbs/fecarry.v
deleted file mode 100644
index 3be273f50..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_10limbs.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/solinas64_2e480m2e240m1_10limbs/fecarryDisplay.v b/src/Specific/solinas64_2e480m2e240m1_10limbs/fecarryDisplay.v
deleted file mode 100644
index b5bb95703..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_10limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e480m2e240m1_10limbs/femul.c b/src/Specific/solinas64_2e480m2e240m1_10limbs/femul.c
deleted file mode 100644
index 6ff5fd47c..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/femul.c
+++ /dev/null
@@ -1,97 +0,0 @@
-static void femul(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- { uint128_t x40 = (((uint128_t)(x13 + x20) * (x31 + x38)) - ((uint128_t)x13 * x31));
- { uint128_t x41 = ((((uint128_t)(x11 + x21) * (x31 + x38)) + ((uint128_t)(x13 + x20) * (x29 + x39))) - (((uint128_t)x11 * x31) + ((uint128_t)x13 * x29)));
- { uint128_t x42 = ((((uint128_t)(x9 + x19) * (x31 + x38)) + (((uint128_t)(x11 + x21) * (x29 + x39)) + ((uint128_t)(x13 + x20) * (x27 + x37)))) - (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + ((uint128_t)x13 * x27))));
- { uint128_t x43 = ((((uint128_t)(x7 + x17) * (x31 + x38)) + (((uint128_t)(x9 + x19) * (x29 + x39)) + (((uint128_t)(x11 + x21) * (x27 + x37)) + ((uint128_t)(x13 + x20) * (x25 + x35))))) - (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + ((uint128_t)x13 * x25)))));
- { uint128_t x44 = ((((uint128_t)(x5 + x15) * (x31 + x38)) + (((uint128_t)(x7 + x17) * (x29 + x39)) + (((uint128_t)(x9 + x19) * (x27 + x37)) + (((uint128_t)(x11 + x21) * (x25 + x35)) + ((uint128_t)(x13 + x20) * (x23 + x33)))))) - (((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + ((uint128_t)x13 * x23))))));
- { uint128_t x45 = ((((uint128_t)(x5 + x15) * (x29 + x39)) + (((uint128_t)(x7 + x17) * (x27 + x37)) + (((uint128_t)(x9 + x19) * (x25 + x35)) + ((uint128_t)(x11 + x21) * (x23 + x33))))) - (((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)))));
- { uint128_t x46 = ((((uint128_t)(x5 + x15) * (x27 + x37)) + (((uint128_t)(x7 + x17) * (x25 + x35)) + ((uint128_t)(x9 + x19) * (x23 + x33)))) - (((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((uint128_t)x9 * x23))));
- { uint128_t x47 = ((((uint128_t)(x5 + x15) * (x25 + x35)) + ((uint128_t)(x7 + x17) * (x23 + x33))) - (((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)));
- { uint128_t x48 = (((uint128_t)(x5 + x15) * (x23 + x33)) - ((uint128_t)x5 * x23));
- { uint128_t x49 = (((((uint128_t)x13 * x31) + ((uint128_t)x20 * x38)) + x45) + x40);
- { uint128_t x50 = ((((((uint128_t)x11 * x31) + ((uint128_t)x13 * x29)) + (((uint128_t)x21 * x38) + ((uint128_t)x20 * x39))) + x46) + x41);
- { uint128_t x51 = ((((((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + ((uint128_t)x13 * x27))) + (((uint128_t)x19 * x38) + (((uint128_t)x21 * x39) + ((uint128_t)x20 * x37)))) + x47) + x42);
- { uint128_t x52 = ((((((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + ((uint128_t)x13 * x25)))) + (((uint128_t)x17 * x38) + (((uint128_t)x19 * x39) + (((uint128_t)x21 * x37) + ((uint128_t)x20 * x35))))) + x48) + x43);
- { uint128_t x53 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + ((uint128_t)x13 * x23))))) + (((uint128_t)x15 * x38) + (((uint128_t)x17 * x39) + (((uint128_t)x19 * x37) + (((uint128_t)x21 * x35) + ((uint128_t)x20 * x33))))));
- { uint128_t x54 = (((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)))) + (((uint128_t)x15 * x39) + (((uint128_t)x17 * x37) + (((uint128_t)x19 * x35) + ((uint128_t)x21 * x33))))) + x40);
- { uint128_t x55 = (((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((uint128_t)x9 * x23))) + (((uint128_t)x15 * x37) + (((uint128_t)x17 * x35) + ((uint128_t)x19 * x33)))) + x41);
- { uint128_t x56 = (((((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)) + (((uint128_t)x15 * x35) + ((uint128_t)x17 * x33))) + x42);
- { uint128_t x57 = ((((uint128_t)x5 * x23) + ((uint128_t)x15 * x33)) + x43);
- { uint64_t x58 = (uint64_t) (x53 >> 0x30);
- { uint64_t x59 = ((uint64_t)x53 & 0xffffffffffff);
- { uint64_t x60 = (uint64_t) (x44 >> 0x30);
- { uint64_t x61 = ((uint64_t)x44 & 0xffffffffffff);
- { uint128_t x62 = (((uint128_t)0x1000000000000 * x60) + x61);
- { uint64_t x63 = (uint64_t) (x62 >> 0x30);
- { uint64_t x64 = ((uint64_t)x62 & 0xffffffffffff);
- { uint128_t x65 = ((x58 + x52) + x63);
- { uint64_t x66 = (uint64_t) (x65 >> 0x30);
- { uint64_t x67 = ((uint64_t)x65 & 0xffffffffffff);
- { uint128_t x68 = (x57 + x63);
- { uint64_t x69 = (uint64_t) (x68 >> 0x30);
- { uint64_t x70 = ((uint64_t)x68 & 0xffffffffffff);
- { uint128_t x71 = (x66 + x51);
- { uint64_t x72 = (uint64_t) (x71 >> 0x30);
- { uint64_t x73 = ((uint64_t)x71 & 0xffffffffffff);
- { uint128_t x74 = (x69 + x56);
- { uint64_t x75 = (uint64_t) (x74 >> 0x30);
- { uint64_t x76 = ((uint64_t)x74 & 0xffffffffffff);
- { uint128_t x77 = (x72 + x50);
- { uint64_t x78 = (uint64_t) (x77 >> 0x30);
- { uint64_t x79 = ((uint64_t)x77 & 0xffffffffffff);
- { uint128_t x80 = (x75 + x55);
- { uint64_t x81 = (uint64_t) (x80 >> 0x30);
- { uint64_t x82 = ((uint64_t)x80 & 0xffffffffffff);
- { uint128_t x83 = (x78 + x49);
- { uint64_t x84 = (uint64_t) (x83 >> 0x30);
- { uint64_t x85 = ((uint64_t)x83 & 0xffffffffffff);
- { uint128_t x86 = (x81 + x54);
- { uint64_t x87 = (uint64_t) (x86 >> 0x30);
- { uint64_t x88 = ((uint64_t)x86 & 0xffffffffffff);
- { uint64_t x89 = (x84 + x64);
- { uint64_t x90 = (x89 >> 0x30);
- { uint64_t x91 = (x89 & 0xffffffffffff);
- { uint64_t x92 = (x87 + x59);
- { uint64_t x93 = (x92 >> 0x30);
- { uint64_t x94 = (x92 & 0xffffffffffff);
- { uint64_t x95 = ((0x1000000000000 * x90) + x91);
- { uint64_t x96 = (x95 >> 0x30);
- { uint64_t x97 = (x95 & 0xffffffffffff);
- { uint64_t x98 = ((x93 + x67) + x96);
- { uint64_t x99 = (x98 >> 0x30);
- { uint64_t x100 = (x98 & 0xffffffffffff);
- { uint64_t x101 = (x70 + x96);
- { uint64_t x102 = (x101 >> 0x30);
- { uint64_t x103 = (x101 & 0xffffffffffff);
- out[0] = x103;
- out[1] = (x102 + x76);
- out[2] = x82;
- out[3] = x88;
- out[4] = x94;
- out[5] = x100;
- out[6] = (x99 + x73);
- out[7] = x79;
- out[8] = x85;
- out[9] = x97;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e480m2e240m1_10limbs/femul.v b/src/Specific/solinas64_2e480m2e240m1_10limbs/femul.v
deleted file mode 100644
index e5dc6f56c..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_10limbs.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/solinas64_2e480m2e240m1_10limbs/femulDisplay.log b/src/Specific/solinas64_2e480m2e240m1_10limbs/femulDisplay.log
deleted file mode 100644
index 8f3c49a57..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/femulDisplay.log
+++ /dev/null
@@ -1,71 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- uint128_t x40 = (((uint128_t)(x13 + x20) * (x31 + x38)) - ((uint128_t)x13 * x31));
- uint128_t x41 = ((((uint128_t)(x11 + x21) * (x31 + x38)) + ((uint128_t)(x13 + x20) * (x29 + x39))) - (((uint128_t)x11 * x31) + ((uint128_t)x13 * x29)));
- uint128_t x42 = ((((uint128_t)(x9 + x19) * (x31 + x38)) + (((uint128_t)(x11 + x21) * (x29 + x39)) + ((uint128_t)(x13 + x20) * (x27 + x37)))) - (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + ((uint128_t)x13 * x27))));
- uint128_t x43 = ((((uint128_t)(x7 + x17) * (x31 + x38)) + (((uint128_t)(x9 + x19) * (x29 + x39)) + (((uint128_t)(x11 + x21) * (x27 + x37)) + ((uint128_t)(x13 + x20) * (x25 + x35))))) - (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + ((uint128_t)x13 * x25)))));
- uint128_t x44 = ((((uint128_t)(x5 + x15) * (x31 + x38)) + (((uint128_t)(x7 + x17) * (x29 + x39)) + (((uint128_t)(x9 + x19) * (x27 + x37)) + (((uint128_t)(x11 + x21) * (x25 + x35)) + ((uint128_t)(x13 + x20) * (x23 + x33)))))) - (((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + ((uint128_t)x13 * x23))))));
- uint128_t x45 = ((((uint128_t)(x5 + x15) * (x29 + x39)) + (((uint128_t)(x7 + x17) * (x27 + x37)) + (((uint128_t)(x9 + x19) * (x25 + x35)) + ((uint128_t)(x11 + x21) * (x23 + x33))))) - (((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)))));
- uint128_t x46 = ((((uint128_t)(x5 + x15) * (x27 + x37)) + (((uint128_t)(x7 + x17) * (x25 + x35)) + ((uint128_t)(x9 + x19) * (x23 + x33)))) - (((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((uint128_t)x9 * x23))));
- uint128_t x47 = ((((uint128_t)(x5 + x15) * (x25 + x35)) + ((uint128_t)(x7 + x17) * (x23 + x33))) - (((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)));
- uint128_t x48 = (((uint128_t)(x5 + x15) * (x23 + x33)) - ((uint128_t)x5 * x23));
- uint128_t x49 = (((((uint128_t)x13 * x31) + ((uint128_t)x20 * x38)) + x45) + x40);
- uint128_t x50 = ((((((uint128_t)x11 * x31) + ((uint128_t)x13 * x29)) + (((uint128_t)x21 * x38) + ((uint128_t)x20 * x39))) + x46) + x41);
- uint128_t x51 = ((((((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + ((uint128_t)x13 * x27))) + (((uint128_t)x19 * x38) + (((uint128_t)x21 * x39) + ((uint128_t)x20 * x37)))) + x47) + x42);
- uint128_t x52 = ((((((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + ((uint128_t)x13 * x25)))) + (((uint128_t)x17 * x38) + (((uint128_t)x19 * x39) + (((uint128_t)x21 * x37) + ((uint128_t)x20 * x35))))) + x48) + x43);
- uint128_t x53 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + ((uint128_t)x13 * x23))))) + (((uint128_t)x15 * x38) + (((uint128_t)x17 * x39) + (((uint128_t)x19 * x37) + (((uint128_t)x21 * x35) + ((uint128_t)x20 * x33))))));
- uint128_t x54 = (((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)))) + (((uint128_t)x15 * x39) + (((uint128_t)x17 * x37) + (((uint128_t)x19 * x35) + ((uint128_t)x21 * x33))))) + x40);
- uint128_t x55 = (((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((uint128_t)x9 * x23))) + (((uint128_t)x15 * x37) + (((uint128_t)x17 * x35) + ((uint128_t)x19 * x33)))) + x41);
- uint128_t x56 = (((((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)) + (((uint128_t)x15 * x35) + ((uint128_t)x17 * x33))) + x42);
- uint128_t x57 = ((((uint128_t)x5 * x23) + ((uint128_t)x15 * x33)) + x43);
- uint64_t x58 = (uint64_t) (x53 >> 0x30);
- uint64_t x59 = ((uint64_t)x53 & 0xffffffffffff);
- uint64_t x60 = (uint64_t) (x44 >> 0x30);
- uint64_t x61 = ((uint64_t)x44 & 0xffffffffffff);
- uint128_t x62 = (((uint128_t)0x1000000000000 * x60) + x61);
- uint64_t x63 = (uint64_t) (x62 >> 0x30);
- uint64_t x64 = ((uint64_t)x62 & 0xffffffffffff);
- uint128_t x65 = ((x58 + x52) + x63);
- uint64_t x66 = (uint64_t) (x65 >> 0x30);
- uint64_t x67 = ((uint64_t)x65 & 0xffffffffffff);
- uint128_t x68 = (x57 + x63);
- uint64_t x69 = (uint64_t) (x68 >> 0x30);
- uint64_t x70 = ((uint64_t)x68 & 0xffffffffffff);
- uint128_t x71 = (x66 + x51);
- uint64_t x72 = (uint64_t) (x71 >> 0x30);
- uint64_t x73 = ((uint64_t)x71 & 0xffffffffffff);
- uint128_t x74 = (x69 + x56);
- uint64_t x75 = (uint64_t) (x74 >> 0x30);
- uint64_t x76 = ((uint64_t)x74 & 0xffffffffffff);
- uint128_t x77 = (x72 + x50);
- uint64_t x78 = (uint64_t) (x77 >> 0x30);
- uint64_t x79 = ((uint64_t)x77 & 0xffffffffffff);
- uint128_t x80 = (x75 + x55);
- uint64_t x81 = (uint64_t) (x80 >> 0x30);
- uint64_t x82 = ((uint64_t)x80 & 0xffffffffffff);
- uint128_t x83 = (x78 + x49);
- uint64_t x84 = (uint64_t) (x83 >> 0x30);
- uint64_t x85 = ((uint64_t)x83 & 0xffffffffffff);
- uint128_t x86 = (x81 + x54);
- uint64_t x87 = (uint64_t) (x86 >> 0x30);
- uint64_t x88 = ((uint64_t)x86 & 0xffffffffffff);
- uint64_t x89 = (x84 + x64);
- uint64_t x90 = (x89 >> 0x30);
- uint64_t x91 = (x89 & 0xffffffffffff);
- uint64_t x92 = (x87 + x59);
- uint64_t x93 = (x92 >> 0x30);
- uint64_t x94 = (x92 & 0xffffffffffff);
- uint64_t x95 = ((0x1000000000000 * x90) + x91);
- uint64_t x96 = (x95 >> 0x30);
- uint64_t x97 = (x95 & 0xffffffffffff);
- uint64_t x98 = ((x93 + x67) + x96);
- uint64_t x99 = (x98 >> 0x30);
- uint64_t x100 = (x98 & 0xffffffffffff);
- uint64_t x101 = (x70 + x96);
- uint64_t x102 = (x101 >> 0x30);
- uint64_t x103 = (x101 & 0xffffffffffff);
- return (Return x97, Return x85, Return x79, (x99 + x73), Return x100, Return x94, Return x88, Return x82, (x102 + x76), Return x103))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e480m2e240m1_10limbs/femulDisplay.v b/src/Specific/solinas64_2e480m2e240m1_10limbs/femulDisplay.v
deleted file mode 100644
index db2a0b007..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_10limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e480m2e240m1_10limbs/fesquare.c b/src/Specific/solinas64_2e480m2e240m1_10limbs/fesquare.c
deleted file mode 100644
index 339a85a97..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/fesquare.c
+++ /dev/null
@@ -1,87 +0,0 @@
-static void fesquare(uint64_t out[10], const uint64_t in1[10]) {
- { const uint64_t x17 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x19 = (((uint128_t)(x10 + x17) * (x10 + x17)) - ((uint128_t)x10 * x10));
- { uint128_t x20 = ((((uint128_t)(x8 + x18) * (x10 + x17)) + ((uint128_t)(x10 + x17) * (x8 + x18))) - (((uint128_t)x8 * x10) + ((uint128_t)x10 * x8)));
- { uint128_t x21 = ((((uint128_t)(x6 + x16) * (x10 + x17)) + (((uint128_t)(x8 + x18) * (x8 + x18)) + ((uint128_t)(x10 + x17) * (x6 + x16)))) - (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + ((uint128_t)x10 * x6))));
- { uint128_t x22 = ((((uint128_t)(x4 + x14) * (x10 + x17)) + (((uint128_t)(x6 + x16) * (x8 + x18)) + (((uint128_t)(x8 + x18) * (x6 + x16)) + ((uint128_t)(x10 + x17) * (x4 + x14))))) - (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((uint128_t)x10 * x4)))));
- { uint128_t x23 = ((((uint128_t)(x2 + x12) * (x10 + x17)) + (((uint128_t)(x4 + x14) * (x8 + x18)) + (((uint128_t)(x6 + x16) * (x6 + x16)) + (((uint128_t)(x8 + x18) * (x4 + x14)) + ((uint128_t)(x10 + x17) * (x2 + x12)))))) - (((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))));
- { uint128_t x24 = ((((uint128_t)(x2 + x12) * (x8 + x18)) + (((uint128_t)(x4 + x14) * (x6 + x16)) + (((uint128_t)(x6 + x16) * (x4 + x14)) + ((uint128_t)(x8 + x18) * (x2 + x12))))) - (((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))));
- { uint128_t x25 = ((((uint128_t)(x2 + x12) * (x6 + x16)) + (((uint128_t)(x4 + x14) * (x4 + x14)) + ((uint128_t)(x6 + x16) * (x2 + x12)))) - (((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))));
- { uint128_t x26 = ((((uint128_t)(x2 + x12) * (x4 + x14)) + ((uint128_t)(x4 + x14) * (x2 + x12))) - (((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)));
- { uint128_t x27 = (((uint128_t)(x2 + x12) * (x2 + x12)) - ((uint128_t)x2 * x2));
- { uint128_t x28 = (((((uint128_t)x10 * x10) + ((uint128_t)x17 * x17)) + x24) + x19);
- { uint128_t x29 = ((((((uint128_t)x8 * x10) + ((uint128_t)x10 * x8)) + (((uint128_t)x18 * x17) + ((uint128_t)x17 * x18))) + x25) + x20);
- { uint128_t x30 = ((((((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + ((uint128_t)x10 * x6))) + (((uint128_t)x16 * x17) + (((uint128_t)x18 * x18) + ((uint128_t)x17 * x16)))) + x26) + x21);
- { uint128_t x31 = ((((((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((uint128_t)x10 * x4)))) + (((uint128_t)x14 * x17) + (((uint128_t)x16 * x18) + (((uint128_t)x18 * x16) + ((uint128_t)x17 * x14))))) + x27) + x22);
- { uint128_t x32 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (((uint128_t)x12 * x17) + (((uint128_t)x14 * x18) + (((uint128_t)x16 * x16) + (((uint128_t)x18 * x14) + ((uint128_t)x17 * x12))))));
- { uint128_t x33 = (((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (((uint128_t)x12 * x18) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + ((uint128_t)x18 * x12))))) + x19);
- { uint128_t x34 = (((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (((uint128_t)x12 * x16) + (((uint128_t)x14 * x14) + ((uint128_t)x16 * x12)))) + x20);
- { uint128_t x35 = (((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (((uint128_t)x12 * x14) + ((uint128_t)x14 * x12))) + x21);
- { uint128_t x36 = ((((uint128_t)x2 * x2) + ((uint128_t)x12 * x12)) + x22);
- { uint64_t x37 = (uint64_t) (x32 >> 0x30);
- { uint64_t x38 = ((uint64_t)x32 & 0xffffffffffff);
- { uint64_t x39 = (uint64_t) (x23 >> 0x30);
- { uint64_t x40 = ((uint64_t)x23 & 0xffffffffffff);
- { uint128_t x41 = (((uint128_t)0x1000000000000 * x39) + x40);
- { uint64_t x42 = (uint64_t) (x41 >> 0x30);
- { uint64_t x43 = ((uint64_t)x41 & 0xffffffffffff);
- { uint128_t x44 = ((x37 + x31) + x42);
- { uint64_t x45 = (uint64_t) (x44 >> 0x30);
- { uint64_t x46 = ((uint64_t)x44 & 0xffffffffffff);
- { uint128_t x47 = (x36 + x42);
- { uint64_t x48 = (uint64_t) (x47 >> 0x30);
- { uint64_t x49 = ((uint64_t)x47 & 0xffffffffffff);
- { uint128_t x50 = (x45 + x30);
- { uint64_t x51 = (uint64_t) (x50 >> 0x30);
- { uint64_t x52 = ((uint64_t)x50 & 0xffffffffffff);
- { uint128_t x53 = (x48 + x35);
- { uint64_t x54 = (uint64_t) (x53 >> 0x30);
- { uint64_t x55 = ((uint64_t)x53 & 0xffffffffffff);
- { uint128_t x56 = (x51 + x29);
- { uint64_t x57 = (uint64_t) (x56 >> 0x30);
- { uint64_t x58 = ((uint64_t)x56 & 0xffffffffffff);
- { uint128_t x59 = (x54 + x34);
- { uint64_t x60 = (uint64_t) (x59 >> 0x30);
- { uint64_t x61 = ((uint64_t)x59 & 0xffffffffffff);
- { uint128_t x62 = (x57 + x28);
- { uint64_t x63 = (uint64_t) (x62 >> 0x30);
- { uint64_t x64 = ((uint64_t)x62 & 0xffffffffffff);
- { uint128_t x65 = (x60 + x33);
- { uint64_t x66 = (uint64_t) (x65 >> 0x30);
- { uint64_t x67 = ((uint64_t)x65 & 0xffffffffffff);
- { uint64_t x68 = (x63 + x43);
- { uint64_t x69 = (x68 >> 0x30);
- { uint64_t x70 = (x68 & 0xffffffffffff);
- { uint64_t x71 = (x66 + x38);
- { uint64_t x72 = (x71 >> 0x30);
- { uint64_t x73 = (x71 & 0xffffffffffff);
- { uint64_t x74 = ((0x1000000000000 * x69) + x70);
- { uint64_t x75 = (x74 >> 0x30);
- { uint64_t x76 = (x74 & 0xffffffffffff);
- { uint64_t x77 = ((x72 + x46) + x75);
- { uint64_t x78 = (x77 >> 0x30);
- { uint64_t x79 = (x77 & 0xffffffffffff);
- { uint64_t x80 = (x49 + x75);
- { uint64_t x81 = (x80 >> 0x30);
- { uint64_t x82 = (x80 & 0xffffffffffff);
- out[0] = x82;
- out[1] = (x81 + x55);
- out[2] = x61;
- out[3] = x67;
- out[4] = x73;
- out[5] = x79;
- out[6] = (x78 + x52);
- out[7] = x58;
- out[8] = x64;
- out[9] = x76;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e480m2e240m1_10limbs/fesquare.v b/src/Specific/solinas64_2e480m2e240m1_10limbs/fesquare.v
deleted file mode 100644
index f2c985618..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_10limbs.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/solinas64_2e480m2e240m1_10limbs/fesquareDisplay.log b/src/Specific/solinas64_2e480m2e240m1_10limbs/fesquareDisplay.log
deleted file mode 100644
index 28aa3ebcf..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,71 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x19 = (((uint128_t)(x10 + x17) * (x10 + x17)) - ((uint128_t)x10 * x10));
- uint128_t x20 = ((((uint128_t)(x8 + x18) * (x10 + x17)) + ((uint128_t)(x10 + x17) * (x8 + x18))) - (((uint128_t)x8 * x10) + ((uint128_t)x10 * x8)));
- uint128_t x21 = ((((uint128_t)(x6 + x16) * (x10 + x17)) + (((uint128_t)(x8 + x18) * (x8 + x18)) + ((uint128_t)(x10 + x17) * (x6 + x16)))) - (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + ((uint128_t)x10 * x6))));
- uint128_t x22 = ((((uint128_t)(x4 + x14) * (x10 + x17)) + (((uint128_t)(x6 + x16) * (x8 + x18)) + (((uint128_t)(x8 + x18) * (x6 + x16)) + ((uint128_t)(x10 + x17) * (x4 + x14))))) - (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((uint128_t)x10 * x4)))));
- uint128_t x23 = ((((uint128_t)(x2 + x12) * (x10 + x17)) + (((uint128_t)(x4 + x14) * (x8 + x18)) + (((uint128_t)(x6 + x16) * (x6 + x16)) + (((uint128_t)(x8 + x18) * (x4 + x14)) + ((uint128_t)(x10 + x17) * (x2 + x12)))))) - (((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))));
- uint128_t x24 = ((((uint128_t)(x2 + x12) * (x8 + x18)) + (((uint128_t)(x4 + x14) * (x6 + x16)) + (((uint128_t)(x6 + x16) * (x4 + x14)) + ((uint128_t)(x8 + x18) * (x2 + x12))))) - (((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))));
- uint128_t x25 = ((((uint128_t)(x2 + x12) * (x6 + x16)) + (((uint128_t)(x4 + x14) * (x4 + x14)) + ((uint128_t)(x6 + x16) * (x2 + x12)))) - (((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))));
- uint128_t x26 = ((((uint128_t)(x2 + x12) * (x4 + x14)) + ((uint128_t)(x4 + x14) * (x2 + x12))) - (((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)));
- uint128_t x27 = (((uint128_t)(x2 + x12) * (x2 + x12)) - ((uint128_t)x2 * x2));
- uint128_t x28 = (((((uint128_t)x10 * x10) + ((uint128_t)x17 * x17)) + x24) + x19);
- uint128_t x29 = ((((((uint128_t)x8 * x10) + ((uint128_t)x10 * x8)) + (((uint128_t)x18 * x17) + ((uint128_t)x17 * x18))) + x25) + x20);
- uint128_t x30 = ((((((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + ((uint128_t)x10 * x6))) + (((uint128_t)x16 * x17) + (((uint128_t)x18 * x18) + ((uint128_t)x17 * x16)))) + x26) + x21);
- uint128_t x31 = ((((((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((uint128_t)x10 * x4)))) + (((uint128_t)x14 * x17) + (((uint128_t)x16 * x18) + (((uint128_t)x18 * x16) + ((uint128_t)x17 * x14))))) + x27) + x22);
- uint128_t x32 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (((uint128_t)x12 * x17) + (((uint128_t)x14 * x18) + (((uint128_t)x16 * x16) + (((uint128_t)x18 * x14) + ((uint128_t)x17 * x12))))));
- uint128_t x33 = (((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (((uint128_t)x12 * x18) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + ((uint128_t)x18 * x12))))) + x19);
- uint128_t x34 = (((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (((uint128_t)x12 * x16) + (((uint128_t)x14 * x14) + ((uint128_t)x16 * x12)))) + x20);
- uint128_t x35 = (((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (((uint128_t)x12 * x14) + ((uint128_t)x14 * x12))) + x21);
- uint128_t x36 = ((((uint128_t)x2 * x2) + ((uint128_t)x12 * x12)) + x22);
- uint64_t x37 = (uint64_t) (x32 >> 0x30);
- uint64_t x38 = ((uint64_t)x32 & 0xffffffffffff);
- uint64_t x39 = (uint64_t) (x23 >> 0x30);
- uint64_t x40 = ((uint64_t)x23 & 0xffffffffffff);
- uint128_t x41 = (((uint128_t)0x1000000000000 * x39) + x40);
- uint64_t x42 = (uint64_t) (x41 >> 0x30);
- uint64_t x43 = ((uint64_t)x41 & 0xffffffffffff);
- uint128_t x44 = ((x37 + x31) + x42);
- uint64_t x45 = (uint64_t) (x44 >> 0x30);
- uint64_t x46 = ((uint64_t)x44 & 0xffffffffffff);
- uint128_t x47 = (x36 + x42);
- uint64_t x48 = (uint64_t) (x47 >> 0x30);
- uint64_t x49 = ((uint64_t)x47 & 0xffffffffffff);
- uint128_t x50 = (x45 + x30);
- uint64_t x51 = (uint64_t) (x50 >> 0x30);
- uint64_t x52 = ((uint64_t)x50 & 0xffffffffffff);
- uint128_t x53 = (x48 + x35);
- uint64_t x54 = (uint64_t) (x53 >> 0x30);
- uint64_t x55 = ((uint64_t)x53 & 0xffffffffffff);
- uint128_t x56 = (x51 + x29);
- uint64_t x57 = (uint64_t) (x56 >> 0x30);
- uint64_t x58 = ((uint64_t)x56 & 0xffffffffffff);
- uint128_t x59 = (x54 + x34);
- uint64_t x60 = (uint64_t) (x59 >> 0x30);
- uint64_t x61 = ((uint64_t)x59 & 0xffffffffffff);
- uint128_t x62 = (x57 + x28);
- uint64_t x63 = (uint64_t) (x62 >> 0x30);
- uint64_t x64 = ((uint64_t)x62 & 0xffffffffffff);
- uint128_t x65 = (x60 + x33);
- uint64_t x66 = (uint64_t) (x65 >> 0x30);
- uint64_t x67 = ((uint64_t)x65 & 0xffffffffffff);
- uint64_t x68 = (x63 + x43);
- uint64_t x69 = (x68 >> 0x30);
- uint64_t x70 = (x68 & 0xffffffffffff);
- uint64_t x71 = (x66 + x38);
- uint64_t x72 = (x71 >> 0x30);
- uint64_t x73 = (x71 & 0xffffffffffff);
- uint64_t x74 = ((0x1000000000000 * x69) + x70);
- uint64_t x75 = (x74 >> 0x30);
- uint64_t x76 = (x74 & 0xffffffffffff);
- uint64_t x77 = ((x72 + x46) + x75);
- uint64_t x78 = (x77 >> 0x30);
- uint64_t x79 = (x77 & 0xffffffffffff);
- uint64_t x80 = (x49 + x75);
- uint64_t x81 = (x80 >> 0x30);
- uint64_t x82 = (x80 & 0xffffffffffff);
- return (Return x76, Return x64, Return x58, (x78 + x52), Return x79, Return x73, Return x67, Return x61, (x81 + x55), Return x82))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e480m2e240m1_10limbs/fesquareDisplay.v b/src/Specific/solinas64_2e480m2e240m1_10limbs/fesquareDisplay.v
deleted file mode 100644
index f6de5ed9e..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_10limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e480m2e240m1_10limbs/fesub.c b/src/Specific/solinas64_2e480m2e240m1_10limbs/fesub.c
deleted file mode 100644
index 806ea3ced..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/fesub.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fesub(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- out[0] = ((0x1fffffffffffe + x5) - x23);
- out[1] = ((0x1fffffffffffe + x7) - x25);
- out[2] = ((0x1fffffffffffe + x9) - x27);
- out[3] = ((0x1fffffffffffe + x11) - x29);
- out[4] = ((0x1fffffffffffe + x13) - x31);
- out[5] = ((0x1fffffffffffc + x15) - x33);
- out[6] = ((0x1fffffffffffe + x17) - x35);
- out[7] = ((0x1fffffffffffe + x19) - x37);
- out[8] = ((0x1fffffffffffe + x21) - x39);
- out[9] = ((0x1fffffffffffe + x20) - x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e480m2e240m1_10limbs/fesub.v b/src/Specific/solinas64_2e480m2e240m1_10limbs/fesub.v
deleted file mode 100644
index b3279e26a..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_10limbs.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/solinas64_2e480m2e240m1_10limbs/fesubDisplay.log b/src/Specific/solinas64_2e480m2e240m1_10limbs/fesubDisplay.log
deleted file mode 100644
index e5177ed02..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- (((0x1fffffffffffe + x20) - x38), ((0x1fffffffffffe + x21) - x39), ((0x1fffffffffffe + x19) - x37), ((0x1fffffffffffe + x17) - x35), ((0x1fffffffffffc + x15) - x33), ((0x1fffffffffffe + x13) - x31), ((0x1fffffffffffe + x11) - x29), ((0x1fffffffffffe + x9) - x27), ((0x1fffffffffffe + x7) - x25), ((0x1fffffffffffe + x5) - x23)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e480m2e240m1_10limbs/fesubDisplay.v b/src/Specific/solinas64_2e480m2e240m1_10limbs/fesubDisplay.v
deleted file mode 100644
index 9eae98e08..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_10limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e480m2e240m1_10limbs/freeze.c b/src/Specific/solinas64_2e480m2e240m1_10limbs/freeze.c
deleted file mode 100644
index 60d878f34..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/freeze.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void freeze(uint64_t out[10], const uint64_t in1[10]) {
- { const uint64_t x17 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffff);
- { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x4, 0xffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x6, 0xffffffffffff);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x8, 0xffffffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x10, 0xffffffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x12, 0xfffffffffffe);
- { uint64_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x14, 0xffffffffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x39, Return x16, 0xffffffffffff);
- { uint64_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x18, 0xffffffffffff);
- { uint64_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x17, 0xffffffffffff);
- { uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL);
- { uint64_t x50 = (x49 & 0xffffffffffff);
- { uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- { uint64_t x54 = (x49 & 0xffffffffffff);
- { uint64_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- { uint64_t x58 = (x49 & 0xffffffffffff);
- { uint64_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- { uint64_t x62 = (x49 & 0xffffffffffff);
- { uint64_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- { uint64_t x66 = (x49 & 0xffffffffffff);
- { uint64_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- { uint64_t x70 = (x49 & 0xfffffffffffe);
- { uint64_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- { uint64_t x74 = (x49 & 0xffffffffffff);
- { uint64_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- { uint64_t x78 = (x49 & 0xffffffffffff);
- { uint64_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- { uint64_t x82 = (x49 & 0xffffffffffff);
- { uint64_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- { uint64_t x86 = (x49 & 0xffffffffffff);
- { uint64_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- out[0] = x52;
- out[1] = x56;
- out[2] = x60;
- out[3] = x64;
- out[4] = x68;
- out[5] = x72;
- out[6] = x76;
- out[7] = x80;
- out[8] = x84;
- out[9] = x88;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e480m2e240m1_10limbs/freeze.v b/src/Specific/solinas64_2e480m2e240m1_10limbs/freeze.v
deleted file mode 100644
index 83959734d..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_10limbs.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/solinas64_2e480m2e240m1_10limbs/freezeDisplay.log b/src/Specific/solinas64_2e480m2e240m1_10limbs/freezeDisplay.log
deleted file mode 100644
index f5e8e5871..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffff);
- uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x4, 0xffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x6, 0xffffffffffff);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x8, 0xffffffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x10, 0xffffffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x12, 0xfffffffffffe);
- uint64_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x14, 0xffffffffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x39, Return x16, 0xffffffffffff);
- uint64_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x18, 0xffffffffffff);
- uint64_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x17, 0xffffffffffff);
- uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL);
- uint64_t x50 = (x49 & 0xffffffffffff);
- uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- uint64_t x54 = (x49 & 0xffffffffffff);
- uint64_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- uint64_t x58 = (x49 & 0xffffffffffff);
- uint64_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- uint64_t x62 = (x49 & 0xffffffffffff);
- uint64_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- uint64_t x66 = (x49 & 0xffffffffffff);
- uint64_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- uint64_t x70 = (x49 & 0xfffffffffffe);
- uint64_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- uint64_t x74 = (x49 & 0xffffffffffff);
- uint64_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- uint64_t x78 = (x49 & 0xffffffffffff);
- uint64_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- uint64_t x82 = (x49 & 0xffffffffffff);
- uint64_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- uint64_t x86 = (x49 & 0xffffffffffff);
- uint64_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- (Return x88, Return x84, Return x80, Return x76, Return x72, Return x68, Return x64, Return x60, Return x56, Return x52))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e480m2e240m1_10limbs/freezeDisplay.v b/src/Specific/solinas64_2e480m2e240m1_10limbs/freezeDisplay.v
deleted file mode 100644
index 94b76ba47..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_10limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e480m2e240m1_10limbs/py_interpreter.sh b/src/Specific/solinas64_2e480m2e240m1_10limbs/py_interpreter.sh
deleted file mode 100755
index 86e137507..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_10limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**480 - 2**240 - 1' -Dmodulus_bytes='48' -Da24='121665'
diff --git a/src/Specific/solinas64_2e480m2e240m1_8limbs/CurveParameters.v b/src/Specific/solinas64_2e480m2e240m1_8limbs/CurveParameters.v
deleted file mode 100644
index e4fd7f1e8..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^480 - 2^240 - 1
-Base: 60
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 8%nat;
- base := 60;
- bitwidth := 64;
- s := 2^480;
- c := [(1, 1); (2^240, 1)];
- carry_chains := Some [[3; 7]; [4; 0; 5; 1; 6; 2; 7; 3]; [4; 0]]%nat;
-
- a24 := None;
- coef_div_modulus := Some 2%nat;
-
- goldilocks := Some true;
- 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/solinas64_2e480m2e240m1_8limbs/Synthesis.v b/src/Specific/solinas64_2e480m2e240m1_8limbs/Synthesis.v
deleted file mode 100644
index 9bf5c1a05..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_8limbs.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/solinas64_2e480m2e240m1_8limbs/compiler.sh b/src/Specific/solinas64_2e480m2e240m1_8limbs/compiler.sh
deleted file mode 100755
index 83ba0f2fc..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{60,60,60,60,60,60,60,60}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='60' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1' "$@"
diff --git a/src/Specific/solinas64_2e480m2e240m1_8limbs/compilerxx.sh b/src/Specific/solinas64_2e480m2e240m1_8limbs/compilerxx.sh
deleted file mode 100755
index 696babcf8..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{60,60,60,60,60,60,60,60}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='60' -Dmodulus_limbs='8' -Dq_mpz='(1_mpz<<480) - (1_mpz<<240) - 1' "$@"
diff --git a/src/Specific/solinas64_2e480m2e240m1_8limbs/feadd.c b/src/Specific/solinas64_2e480m2e240m1_8limbs/feadd.c
deleted file mode 100644
index 4def6ee9c..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/feadd.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void feadd(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = (x5 + x19);
- out[1] = (x7 + x21);
- out[2] = (x9 + x23);
- out[3] = (x11 + x25);
- out[4] = (x13 + x27);
- out[5] = (x15 + x29);
- out[6] = (x17 + x31);
- out[7] = (x16 + x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e480m2e240m1_8limbs/feadd.v b/src/Specific/solinas64_2e480m2e240m1_8limbs/feadd.v
deleted file mode 100644
index 1f856b831..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_8limbs.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/solinas64_2e480m2e240m1_8limbs/feaddDisplay.log b/src/Specific/solinas64_2e480m2e240m1_8limbs/feaddDisplay.log
deleted file mode 100644
index 023fc8a31..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- ((x16 + x30), (x17 + x31), (x15 + x29), (x13 + x27), (x11 + x25), (x9 + x23), (x7 + x21), (x5 + x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e480m2e240m1_8limbs/feaddDisplay.v b/src/Specific/solinas64_2e480m2e240m1_8limbs/feaddDisplay.v
deleted file mode 100644
index cb3330c27..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_8limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e480m2e240m1_8limbs/fecarry.v b/src/Specific/solinas64_2e480m2e240m1_8limbs/fecarry.v
deleted file mode 100644
index bb7ab4010..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_8limbs.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/solinas64_2e480m2e240m1_8limbs/fecarryDisplay.v b/src/Specific/solinas64_2e480m2e240m1_8limbs/fecarryDisplay.v
deleted file mode 100644
index 1c73cdcb6..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_8limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e480m2e240m1_8limbs/femul.c b/src/Specific/solinas64_2e480m2e240m1_8limbs/femul.c
deleted file mode 100644
index f76985cfd..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/femul.c
+++ /dev/null
@@ -1,81 +0,0 @@
-static void femul(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- { uint128_t x32 = (((uint128_t)(x11 + x16) * (x25 + x30)) - ((uint128_t)x11 * x25));
- { uint128_t x33 = ((((uint128_t)(x9 + x17) * (x25 + x30)) + ((uint128_t)(x11 + x16) * (x23 + x31))) - (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)));
- { uint128_t x34 = ((((uint128_t)(x7 + x15) * (x25 + x30)) + (((uint128_t)(x9 + x17) * (x23 + x31)) + ((uint128_t)(x11 + x16) * (x21 + x29)))) - (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + ((uint128_t)x11 * x21))));
- { uint128_t x35 = ((((uint128_t)(x5 + x13) * (x25 + x30)) + (((uint128_t)(x7 + x15) * (x23 + x31)) + (((uint128_t)(x9 + x17) * (x21 + x29)) + ((uint128_t)(x11 + x16) * (x19 + x27))))) - (((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))));
- { uint128_t x36 = ((((uint128_t)(x5 + x13) * (x23 + x31)) + (((uint128_t)(x7 + x15) * (x21 + x29)) + ((uint128_t)(x9 + x17) * (x19 + x27)))) - (((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))));
- { uint128_t x37 = ((((uint128_t)(x5 + x13) * (x21 + x29)) + ((uint128_t)(x7 + x15) * (x19 + x27))) - (((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)));
- { uint128_t x38 = (((uint128_t)(x5 + x13) * (x19 + x27)) - ((uint128_t)x5 * x19));
- { uint128_t x39 = (((((uint128_t)x11 * x25) + ((uint128_t)x16 * x30)) + x36) + x32);
- { uint128_t x40 = ((((((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)) + (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))) + x37) + x33);
- { uint128_t x41 = ((((((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + ((uint128_t)x11 * x21))) + (((uint128_t)x15 * x30) + (((uint128_t)x17 * x31) + ((uint128_t)x16 * x29)))) + x38) + x34);
- { uint128_t x42 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27)))));
- { uint128_t x43 = (((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + ((uint128_t)x17 * x27)))) + x32);
- { uint128_t x44 = (((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (((uint128_t)x13 * x29) + ((uint128_t)x15 * x27))) + x33);
- { uint128_t x45 = ((((uint128_t)x5 * x19) + ((uint128_t)x13 * x27)) + x34);
- { uint128_t x46 = (x42 >> 0x3c);
- { uint64_t x47 = ((uint64_t)x42 & 0xfffffffffffffff);
- { uint128_t x48 = (x35 >> 0x3c);
- { uint64_t x49 = ((uint64_t)x35 & 0xfffffffffffffff);
- { uint128_t x50 = ((0x1000000000000000 * x48) + x49);
- { uint128_t x51 = (x50 >> 0x3c);
- { uint64_t x52 = ((uint64_t)x50 & 0xfffffffffffffff);
- { uint128_t x53 = ((x46 + x41) + x51);
- { uint128_t x54 = (x53 >> 0x3c);
- { uint64_t x55 = ((uint64_t)x53 & 0xfffffffffffffff);
- { uint128_t x56 = (x45 + x51);
- { uint128_t x57 = (x56 >> 0x3c);
- { uint64_t x58 = ((uint64_t)x56 & 0xfffffffffffffff);
- { uint128_t x59 = (x54 + x40);
- { uint128_t x60 = (x59 >> 0x3c);
- { uint64_t x61 = ((uint64_t)x59 & 0xfffffffffffffff);
- { uint128_t x62 = (x57 + x44);
- { uint128_t x63 = (x62 >> 0x3c);
- { uint64_t x64 = ((uint64_t)x62 & 0xfffffffffffffff);
- { uint128_t x65 = (x60 + x39);
- { uint128_t x66 = (x65 >> 0x3c);
- { uint64_t x67 = ((uint64_t)x65 & 0xfffffffffffffff);
- { uint128_t x68 = (x63 + x43);
- { uint128_t x69 = (x68 >> 0x3c);
- { uint64_t x70 = ((uint64_t)x68 & 0xfffffffffffffff);
- { uint128_t x71 = (x66 + x52);
- { uint64_t x72 = (uint64_t) (x71 >> 0x3c);
- { uint64_t x73 = ((uint64_t)x71 & 0xfffffffffffffff);
- { uint128_t x74 = (x69 + x47);
- { uint64_t x75 = (uint64_t) (x74 >> 0x3c);
- { uint64_t x76 = ((uint64_t)x74 & 0xfffffffffffffff);
- { uint128_t x77 = (((uint128_t)0x1000000000000000 * x72) + x73);
- { uint64_t x78 = (uint64_t) (x77 >> 0x3c);
- { uint64_t x79 = ((uint64_t)x77 & 0xfffffffffffffff);
- { uint64_t x80 = ((x75 + x55) + x78);
- { uint64_t x81 = (x80 >> 0x3c);
- { uint64_t x82 = (x80 & 0xfffffffffffffff);
- { uint64_t x83 = (x58 + x78);
- { uint64_t x84 = (x83 >> 0x3c);
- { uint64_t x85 = (x83 & 0xfffffffffffffff);
- out[0] = x85;
- out[1] = (x84 + x64);
- out[2] = x70;
- out[3] = x76;
- out[4] = x82;
- out[5] = (x81 + x61);
- out[6] = x67;
- out[7] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e480m2e240m1_8limbs/femul.v b/src/Specific/solinas64_2e480m2e240m1_8limbs/femul.v
deleted file mode 100644
index bf8d33d2d..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_8limbs.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/solinas64_2e480m2e240m1_8limbs/femulDisplay.log b/src/Specific/solinas64_2e480m2e240m1_8limbs/femulDisplay.log
deleted file mode 100644
index 3b4d06e2c..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/femulDisplay.log
+++ /dev/null
@@ -1,61 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- uint128_t x32 = (((uint128_t)(x11 + x16) * (x25 + x30)) - ((uint128_t)x11 * x25));
- uint128_t x33 = ((((uint128_t)(x9 + x17) * (x25 + x30)) + ((uint128_t)(x11 + x16) * (x23 + x31))) - (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)));
- uint128_t x34 = ((((uint128_t)(x7 + x15) * (x25 + x30)) + (((uint128_t)(x9 + x17) * (x23 + x31)) + ((uint128_t)(x11 + x16) * (x21 + x29)))) - (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + ((uint128_t)x11 * x21))));
- uint128_t x35 = ((((uint128_t)(x5 + x13) * (x25 + x30)) + (((uint128_t)(x7 + x15) * (x23 + x31)) + (((uint128_t)(x9 + x17) * (x21 + x29)) + ((uint128_t)(x11 + x16) * (x19 + x27))))) - (((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))));
- uint128_t x36 = ((((uint128_t)(x5 + x13) * (x23 + x31)) + (((uint128_t)(x7 + x15) * (x21 + x29)) + ((uint128_t)(x9 + x17) * (x19 + x27)))) - (((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))));
- uint128_t x37 = ((((uint128_t)(x5 + x13) * (x21 + x29)) + ((uint128_t)(x7 + x15) * (x19 + x27))) - (((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)));
- uint128_t x38 = (((uint128_t)(x5 + x13) * (x19 + x27)) - ((uint128_t)x5 * x19));
- uint128_t x39 = (((((uint128_t)x11 * x25) + ((uint128_t)x16 * x30)) + x36) + x32);
- uint128_t x40 = ((((((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)) + (((uint128_t)x17 * x30) + ((uint128_t)x16 * x31))) + x37) + x33);
- uint128_t x41 = ((((((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + ((uint128_t)x11 * x21))) + (((uint128_t)x15 * x30) + (((uint128_t)x17 * x31) + ((uint128_t)x16 * x29)))) + x38) + x34);
- uint128_t x42 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + (((uint128_t)x9 * x21) + ((uint128_t)x11 * x19)))) + (((uint128_t)x13 * x30) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + ((uint128_t)x16 * x27)))));
- uint128_t x43 = (((((uint128_t)x5 * x23) + (((uint128_t)x7 * x21) + ((uint128_t)x9 * x19))) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + ((uint128_t)x17 * x27)))) + x32);
- uint128_t x44 = (((((uint128_t)x5 * x21) + ((uint128_t)x7 * x19)) + (((uint128_t)x13 * x29) + ((uint128_t)x15 * x27))) + x33);
- uint128_t x45 = ((((uint128_t)x5 * x19) + ((uint128_t)x13 * x27)) + x34);
- uint128_t x46 = (x42 >> 0x3c);
- uint64_t x47 = ((uint64_t)x42 & 0xfffffffffffffff);
- uint128_t x48 = (x35 >> 0x3c);
- uint64_t x49 = ((uint64_t)x35 & 0xfffffffffffffff);
- uint128_t x50 = ((0x1000000000000000 * x48) + x49);
- uint128_t x51 = (x50 >> 0x3c);
- uint64_t x52 = ((uint64_t)x50 & 0xfffffffffffffff);
- uint128_t x53 = ((x46 + x41) + x51);
- uint128_t x54 = (x53 >> 0x3c);
- uint64_t x55 = ((uint64_t)x53 & 0xfffffffffffffff);
- uint128_t x56 = (x45 + x51);
- uint128_t x57 = (x56 >> 0x3c);
- uint64_t x58 = ((uint64_t)x56 & 0xfffffffffffffff);
- uint128_t x59 = (x54 + x40);
- uint128_t x60 = (x59 >> 0x3c);
- uint64_t x61 = ((uint64_t)x59 & 0xfffffffffffffff);
- uint128_t x62 = (x57 + x44);
- uint128_t x63 = (x62 >> 0x3c);
- uint64_t x64 = ((uint64_t)x62 & 0xfffffffffffffff);
- uint128_t x65 = (x60 + x39);
- uint128_t x66 = (x65 >> 0x3c);
- uint64_t x67 = ((uint64_t)x65 & 0xfffffffffffffff);
- uint128_t x68 = (x63 + x43);
- uint128_t x69 = (x68 >> 0x3c);
- uint64_t x70 = ((uint64_t)x68 & 0xfffffffffffffff);
- uint128_t x71 = (x66 + x52);
- uint64_t x72 = (uint64_t) (x71 >> 0x3c);
- uint64_t x73 = ((uint64_t)x71 & 0xfffffffffffffff);
- uint128_t x74 = (x69 + x47);
- uint64_t x75 = (uint64_t) (x74 >> 0x3c);
- uint64_t x76 = ((uint64_t)x74 & 0xfffffffffffffff);
- uint128_t x77 = (((uint128_t)0x1000000000000000 * x72) + x73);
- uint64_t x78 = (uint64_t) (x77 >> 0x3c);
- uint64_t x79 = ((uint64_t)x77 & 0xfffffffffffffff);
- uint64_t x80 = ((x75 + x55) + x78);
- uint64_t x81 = (x80 >> 0x3c);
- uint64_t x82 = (x80 & 0xfffffffffffffff);
- uint64_t x83 = (x58 + x78);
- uint64_t x84 = (x83 >> 0x3c);
- uint64_t x85 = (x83 & 0xfffffffffffffff);
- return (Return x79, Return x67, (x81 + x61), Return x82, Return x76, Return x70, (x84 + x64), Return x85))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e480m2e240m1_8limbs/femulDisplay.v b/src/Specific/solinas64_2e480m2e240m1_8limbs/femulDisplay.v
deleted file mode 100644
index 12bd10d1d..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_8limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e480m2e240m1_8limbs/fesquare.c b/src/Specific/solinas64_2e480m2e240m1_8limbs/fesquare.c
deleted file mode 100644
index 83913c4a7..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/fesquare.c
+++ /dev/null
@@ -1,73 +0,0 @@
-static void fesquare(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x15 = (((uint128_t)(x8 + x13) * (x8 + x13)) - ((uint128_t)x8 * x8));
- { uint128_t x16 = ((((uint128_t)(x6 + x14) * (x8 + x13)) + ((uint128_t)(x8 + x13) * (x6 + x14))) - (((uint128_t)x6 * x8) + ((uint128_t)x8 * x6)));
- { uint128_t x17 = ((((uint128_t)(x4 + x12) * (x8 + x13)) + (((uint128_t)(x6 + x14) * (x6 + x14)) + ((uint128_t)(x8 + x13) * (x4 + x12)))) - (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + ((uint128_t)x8 * x4))));
- { uint128_t x18 = ((((uint128_t)(x2 + x10) * (x8 + x13)) + (((uint128_t)(x4 + x12) * (x6 + x14)) + (((uint128_t)(x6 + x14) * (x4 + x12)) + ((uint128_t)(x8 + x13) * (x2 + x10))))) - (((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))));
- { uint128_t x19 = ((((uint128_t)(x2 + x10) * (x6 + x14)) + (((uint128_t)(x4 + x12) * (x4 + x12)) + ((uint128_t)(x6 + x14) * (x2 + x10)))) - (((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))));
- { uint128_t x20 = ((((uint128_t)(x2 + x10) * (x4 + x12)) + ((uint128_t)(x4 + x12) * (x2 + x10))) - (((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)));
- { uint128_t x21 = (((uint128_t)(x2 + x10) * (x2 + x10)) - ((uint128_t)x2 * x2));
- { uint128_t x22 = (((((uint128_t)x8 * x8) + ((uint128_t)x13 * x13)) + x19) + x15);
- { uint128_t x23 = ((((((uint128_t)x6 * x8) + ((uint128_t)x8 * x6)) + (((uint128_t)x14 * x13) + ((uint128_t)x13 * x14))) + x20) + x16);
- { uint128_t x24 = ((((((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + ((uint128_t)x8 * x4))) + (((uint128_t)x12 * x13) + (((uint128_t)x14 * x14) + ((uint128_t)x13 * x12)))) + x21) + x17);
- { uint128_t x25 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (((uint128_t)x10 * x13) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((uint128_t)x13 * x10)))));
- { uint128_t x26 = (((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + ((uint128_t)x14 * x10)))) + x15);
- { uint128_t x27 = (((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (((uint128_t)x10 * x12) + ((uint128_t)x12 * x10))) + x16);
- { uint128_t x28 = ((((uint128_t)x2 * x2) + ((uint128_t)x10 * x10)) + x17);
- { uint128_t x29 = (x25 >> 0x3c);
- { uint64_t x30 = ((uint64_t)x25 & 0xfffffffffffffff);
- { uint128_t x31 = (x18 >> 0x3c);
- { uint64_t x32 = ((uint64_t)x18 & 0xfffffffffffffff);
- { uint128_t x33 = ((0x1000000000000000 * x31) + x32);
- { uint128_t x34 = (x33 >> 0x3c);
- { uint64_t x35 = ((uint64_t)x33 & 0xfffffffffffffff);
- { uint128_t x36 = ((x29 + x24) + x34);
- { uint128_t x37 = (x36 >> 0x3c);
- { uint64_t x38 = ((uint64_t)x36 & 0xfffffffffffffff);
- { uint128_t x39 = (x28 + x34);
- { uint128_t x40 = (x39 >> 0x3c);
- { uint64_t x41 = ((uint64_t)x39 & 0xfffffffffffffff);
- { uint128_t x42 = (x37 + x23);
- { uint128_t x43 = (x42 >> 0x3c);
- { uint64_t x44 = ((uint64_t)x42 & 0xfffffffffffffff);
- { uint128_t x45 = (x40 + x27);
- { uint128_t x46 = (x45 >> 0x3c);
- { uint64_t x47 = ((uint64_t)x45 & 0xfffffffffffffff);
- { uint128_t x48 = (x43 + x22);
- { uint128_t x49 = (x48 >> 0x3c);
- { uint64_t x50 = ((uint64_t)x48 & 0xfffffffffffffff);
- { uint128_t x51 = (x46 + x26);
- { uint128_t x52 = (x51 >> 0x3c);
- { uint64_t x53 = ((uint64_t)x51 & 0xfffffffffffffff);
- { uint128_t x54 = (x49 + x35);
- { uint64_t x55 = (uint64_t) (x54 >> 0x3c);
- { uint64_t x56 = ((uint64_t)x54 & 0xfffffffffffffff);
- { uint128_t x57 = (x52 + x30);
- { uint64_t x58 = (uint64_t) (x57 >> 0x3c);
- { uint64_t x59 = ((uint64_t)x57 & 0xfffffffffffffff);
- { uint128_t x60 = (((uint128_t)0x1000000000000000 * x55) + x56);
- { uint64_t x61 = (uint64_t) (x60 >> 0x3c);
- { uint64_t x62 = ((uint64_t)x60 & 0xfffffffffffffff);
- { uint64_t x63 = ((x58 + x38) + x61);
- { uint64_t x64 = (x63 >> 0x3c);
- { uint64_t x65 = (x63 & 0xfffffffffffffff);
- { uint64_t x66 = (x41 + x61);
- { uint64_t x67 = (x66 >> 0x3c);
- { uint64_t x68 = (x66 & 0xfffffffffffffff);
- out[0] = x68;
- out[1] = (x67 + x47);
- out[2] = x53;
- out[3] = x59;
- out[4] = x65;
- out[5] = (x64 + x44);
- out[6] = x50;
- out[7] = x62;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e480m2e240m1_8limbs/fesquare.v b/src/Specific/solinas64_2e480m2e240m1_8limbs/fesquare.v
deleted file mode 100644
index 3737337b8..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_8limbs.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/solinas64_2e480m2e240m1_8limbs/fesquareDisplay.log b/src/Specific/solinas64_2e480m2e240m1_8limbs/fesquareDisplay.log
deleted file mode 100644
index f383847c9..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,61 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x15 = (((uint128_t)(x8 + x13) * (x8 + x13)) - ((uint128_t)x8 * x8));
- uint128_t x16 = ((((uint128_t)(x6 + x14) * (x8 + x13)) + ((uint128_t)(x8 + x13) * (x6 + x14))) - (((uint128_t)x6 * x8) + ((uint128_t)x8 * x6)));
- uint128_t x17 = ((((uint128_t)(x4 + x12) * (x8 + x13)) + (((uint128_t)(x6 + x14) * (x6 + x14)) + ((uint128_t)(x8 + x13) * (x4 + x12)))) - (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + ((uint128_t)x8 * x4))));
- uint128_t x18 = ((((uint128_t)(x2 + x10) * (x8 + x13)) + (((uint128_t)(x4 + x12) * (x6 + x14)) + (((uint128_t)(x6 + x14) * (x4 + x12)) + ((uint128_t)(x8 + x13) * (x2 + x10))))) - (((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))));
- uint128_t x19 = ((((uint128_t)(x2 + x10) * (x6 + x14)) + (((uint128_t)(x4 + x12) * (x4 + x12)) + ((uint128_t)(x6 + x14) * (x2 + x10)))) - (((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))));
- uint128_t x20 = ((((uint128_t)(x2 + x10) * (x4 + x12)) + ((uint128_t)(x4 + x12) * (x2 + x10))) - (((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)));
- uint128_t x21 = (((uint128_t)(x2 + x10) * (x2 + x10)) - ((uint128_t)x2 * x2));
- uint128_t x22 = (((((uint128_t)x8 * x8) + ((uint128_t)x13 * x13)) + x19) + x15);
- uint128_t x23 = ((((((uint128_t)x6 * x8) + ((uint128_t)x8 * x6)) + (((uint128_t)x14 * x13) + ((uint128_t)x13 * x14))) + x20) + x16);
- uint128_t x24 = ((((((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + ((uint128_t)x8 * x4))) + (((uint128_t)x12 * x13) + (((uint128_t)x14 * x14) + ((uint128_t)x13 * x12)))) + x21) + x17);
- uint128_t x25 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (((uint128_t)x10 * x13) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((uint128_t)x13 * x10)))));
- uint128_t x26 = (((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + ((uint128_t)x14 * x10)))) + x15);
- uint128_t x27 = (((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (((uint128_t)x10 * x12) + ((uint128_t)x12 * x10))) + x16);
- uint128_t x28 = ((((uint128_t)x2 * x2) + ((uint128_t)x10 * x10)) + x17);
- uint128_t x29 = (x25 >> 0x3c);
- uint64_t x30 = ((uint64_t)x25 & 0xfffffffffffffff);
- uint128_t x31 = (x18 >> 0x3c);
- uint64_t x32 = ((uint64_t)x18 & 0xfffffffffffffff);
- uint128_t x33 = ((0x1000000000000000 * x31) + x32);
- uint128_t x34 = (x33 >> 0x3c);
- uint64_t x35 = ((uint64_t)x33 & 0xfffffffffffffff);
- uint128_t x36 = ((x29 + x24) + x34);
- uint128_t x37 = (x36 >> 0x3c);
- uint64_t x38 = ((uint64_t)x36 & 0xfffffffffffffff);
- uint128_t x39 = (x28 + x34);
- uint128_t x40 = (x39 >> 0x3c);
- uint64_t x41 = ((uint64_t)x39 & 0xfffffffffffffff);
- uint128_t x42 = (x37 + x23);
- uint128_t x43 = (x42 >> 0x3c);
- uint64_t x44 = ((uint64_t)x42 & 0xfffffffffffffff);
- uint128_t x45 = (x40 + x27);
- uint128_t x46 = (x45 >> 0x3c);
- uint64_t x47 = ((uint64_t)x45 & 0xfffffffffffffff);
- uint128_t x48 = (x43 + x22);
- uint128_t x49 = (x48 >> 0x3c);
- uint64_t x50 = ((uint64_t)x48 & 0xfffffffffffffff);
- uint128_t x51 = (x46 + x26);
- uint128_t x52 = (x51 >> 0x3c);
- uint64_t x53 = ((uint64_t)x51 & 0xfffffffffffffff);
- uint128_t x54 = (x49 + x35);
- uint64_t x55 = (uint64_t) (x54 >> 0x3c);
- uint64_t x56 = ((uint64_t)x54 & 0xfffffffffffffff);
- uint128_t x57 = (x52 + x30);
- uint64_t x58 = (uint64_t) (x57 >> 0x3c);
- uint64_t x59 = ((uint64_t)x57 & 0xfffffffffffffff);
- uint128_t x60 = (((uint128_t)0x1000000000000000 * x55) + x56);
- uint64_t x61 = (uint64_t) (x60 >> 0x3c);
- uint64_t x62 = ((uint64_t)x60 & 0xfffffffffffffff);
- uint64_t x63 = ((x58 + x38) + x61);
- uint64_t x64 = (x63 >> 0x3c);
- uint64_t x65 = (x63 & 0xfffffffffffffff);
- uint64_t x66 = (x41 + x61);
- uint64_t x67 = (x66 >> 0x3c);
- uint64_t x68 = (x66 & 0xfffffffffffffff);
- return (Return x62, Return x50, (x64 + x44), Return x65, Return x59, Return x53, (x67 + x47), Return x68))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e480m2e240m1_8limbs/fesquareDisplay.v b/src/Specific/solinas64_2e480m2e240m1_8limbs/fesquareDisplay.v
deleted file mode 100644
index c854ed773..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_8limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e480m2e240m1_8limbs/fesub.c b/src/Specific/solinas64_2e480m2e240m1_8limbs/fesub.c
deleted file mode 100644
index cc9d13c37..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/fesub.c
+++ /dev/null
@@ -1,27 +0,0 @@
-static void fesub(uint64_t out[8], const uint64_t in1[8], const uint64_t in2[8]) {
- { const uint64_t x16 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x30 = in2[7];
- { const uint64_t x31 = in2[6];
- { const uint64_t x29 = in2[5];
- { const uint64_t x27 = in2[4];
- { const uint64_t x25 = in2[3];
- { const uint64_t x23 = in2[2];
- { const uint64_t x21 = in2[1];
- { const uint64_t x19 = in2[0];
- out[0] = ((0x1ffffffffffffffe + x5) - x19);
- out[1] = ((0x1ffffffffffffffe + x7) - x21);
- out[2] = ((0x1ffffffffffffffe + x9) - x23);
- out[3] = ((0x1ffffffffffffffe + x11) - x25);
- out[4] = ((0x1ffffffffffffffc + x13) - x27);
- out[5] = ((0x1ffffffffffffffe + x15) - x29);
- out[6] = ((0x1ffffffffffffffe + x17) - x31);
- out[7] = ((0x1ffffffffffffffe + x16) - x30);
- }}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e480m2e240m1_8limbs/fesub.v b/src/Specific/solinas64_2e480m2e240m1_8limbs/fesub.v
deleted file mode 100644
index fa5b4cff5..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_8limbs.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/solinas64_2e480m2e240m1_8limbs/fesubDisplay.log b/src/Specific/solinas64_2e480m2e240m1_8limbs/fesubDisplay.log
deleted file mode 100644
index de0b3ae96..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x16, x17, x15, x13, x11, x9, x7, x5, (x30, x31, x29, x27, x25, x23, x21, x19))%core,
- (((0x1ffffffffffffffe + x16) - x30), ((0x1ffffffffffffffe + x17) - x31), ((0x1ffffffffffffffe + x15) - x29), ((0x1ffffffffffffffc + x13) - x27), ((0x1ffffffffffffffe + x11) - x25), ((0x1ffffffffffffffe + x9) - x23), ((0x1ffffffffffffffe + x7) - x21), ((0x1ffffffffffffffe + x5) - x19)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e480m2e240m1_8limbs/fesubDisplay.v b/src/Specific/solinas64_2e480m2e240m1_8limbs/fesubDisplay.v
deleted file mode 100644
index eff1ca171..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_8limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e480m2e240m1_8limbs/freeze.c b/src/Specific/solinas64_2e480m2e240m1_8limbs/freeze.c
deleted file mode 100644
index 3173ddc8a..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/freeze.c
+++ /dev/null
@@ -1,44 +0,0 @@
-static void freeze(uint64_t out[8], const uint64_t in1[8]) {
- { const uint64_t x13 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffffffff);
- { uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0xfffffffffffffff);
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xfffffffffffffff);
- { uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0xfffffffffffffff);
- { uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0xffffffffffffffe);
- { uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xfffffffffffffff);
- { uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0xfffffffffffffff);
- { uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0xfffffffffffffff);
- { uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- { uint64_t x40 = (x39 & 0xfffffffffffffff);
- { uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- { uint64_t x44 = (x39 & 0xfffffffffffffff);
- { uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- { uint64_t x48 = (x39 & 0xfffffffffffffff);
- { uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- { uint64_t x52 = (x39 & 0xfffffffffffffff);
- { uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- { uint64_t x56 = (x39 & 0xffffffffffffffe);
- { uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- { uint64_t x60 = (x39 & 0xfffffffffffffff);
- { uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- { uint64_t x64 = (x39 & 0xfffffffffffffff);
- { uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- { uint64_t x68 = (x39 & 0xfffffffffffffff);
- { uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- out[0] = x42;
- out[1] = x46;
- out[2] = x50;
- out[3] = x54;
- out[4] = x58;
- out[5] = x62;
- out[6] = x66;
- out[7] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e480m2e240m1_8limbs/freeze.v b/src/Specific/solinas64_2e480m2e240m1_8limbs/freeze.v
deleted file mode 100644
index 3ebae16cb..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_8limbs.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/solinas64_2e480m2e240m1_8limbs/freezeDisplay.log b/src/Specific/solinas64_2e480m2e240m1_8limbs/freezeDisplay.log
deleted file mode 100644
index 44be6a8b2..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/freezeDisplay.log
+++ /dev/null
@@ -1,32 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x13, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x16, uint8_t x17 = Op (Syntax.SubWithGetBorrow 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffffffff);
- uint64_t x19, uint8_t x20 = Op (Syntax.SubWithGetBorrow 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x17, Return x4, 0xfffffffffffffff);
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x20, Return x6, 0xfffffffffffffff);
- uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x8, 0xfffffffffffffff);
- uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x10, 0xffffffffffffffe);
- uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x12, 0xfffffffffffffff);
- uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x14, 0xfffffffffffffff);
- uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x13, 0xfffffffffffffff);
- uint64_t x39 = cmovznz64(x38, 0x0, 0xffffffffffffffffL);
- uint64_t x40 = (x39 & 0xfffffffffffffff);
- uint64_t x42, uint8_t x43 = Op (Syntax.AddWithGetCarry 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x16, Return x40);
- uint64_t x44 = (x39 & 0xfffffffffffffff);
- uint64_t x46, uint8_t x47 = Op (Syntax.AddWithGetCarry 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x43, Return x19, Return x44);
- uint64_t x48 = (x39 & 0xfffffffffffffff);
- uint64_t x50, uint8_t x51 = Op (Syntax.AddWithGetCarry 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x22, Return x48);
- uint64_t x52 = (x39 & 0xfffffffffffffff);
- uint64_t x54, uint8_t x55 = Op (Syntax.AddWithGetCarry 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x51, Return x25, Return x52);
- uint64_t x56 = (x39 & 0xffffffffffffffe);
- uint64_t x58, uint8_t x59 = Op (Syntax.AddWithGetCarry 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x55, Return x28, Return x56);
- uint64_t x60 = (x39 & 0xfffffffffffffff);
- uint64_t x62, uint8_t x63 = Op (Syntax.AddWithGetCarry 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x59, Return x31, Return x60);
- uint64_t x64 = (x39 & 0xfffffffffffffff);
- uint64_t x66, uint8_t x67 = Op (Syntax.AddWithGetCarry 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x63, Return x34, Return x64);
- uint64_t x68 = (x39 & 0xfffffffffffffff);
- uint64_t x70, uint8_t _ = Op (Syntax.AddWithGetCarry 60 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x67, Return x37, Return x68);
- (Return x70, Return x66, Return x62, Return x58, Return x54, Return x50, Return x46, Return x42))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e480m2e240m1_8limbs/freezeDisplay.v b/src/Specific/solinas64_2e480m2e240m1_8limbs/freezeDisplay.v
deleted file mode 100644
index d69999f59..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e480m2e240m1_8limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e480m2e240m1_8limbs/py_interpreter.sh b/src/Specific/solinas64_2e480m2e240m1_8limbs/py_interpreter.sh
deleted file mode 100755
index acdafd45b..000000000
--- a/src/Specific/solinas64_2e480m2e240m1_8limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**480 - 2**240 - 1' -Dmodulus_bytes='60' -Da24='121665'
diff --git a/src/Specific/solinas64_2e488m17_10limbs/CurveParameters.v b/src/Specific/solinas64_2e488m17_10limbs/CurveParameters.v
deleted file mode 100644
index b3dc3e0e7..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^488 - 17
-Base: 48.8
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 48 + 4/5;
- bitwidth := 64;
- s := 2^488;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 10); [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/solinas64_2e488m17_10limbs/Synthesis.v b/src/Specific/solinas64_2e488m17_10limbs/Synthesis.v
deleted file mode 100644
index 874347625..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e488m17_10limbs.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/solinas64_2e488m17_10limbs/compiler.sh b/src/Specific/solinas64_2e488m17_10limbs/compiler.sh
deleted file mode 100755
index c7e6b6793..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,49,49,49,48,49,49,49,49,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='61' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<488) - 17' "$@"
diff --git a/src/Specific/solinas64_2e488m17_10limbs/compilerxx.sh b/src/Specific/solinas64_2e488m17_10limbs/compilerxx.sh
deleted file mode 100755
index 4502905b8..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,49,49,49,48,49,49,49,49,48}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='61' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<488) - 17' "$@"
diff --git a/src/Specific/solinas64_2e488m17_10limbs/feadd.c b/src/Specific/solinas64_2e488m17_10limbs/feadd.c
deleted file mode 100644
index df991e375..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/feadd.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void feadd(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- out[0] = (x5 + x23);
- out[1] = (x7 + x25);
- out[2] = (x9 + x27);
- out[3] = (x11 + x29);
- out[4] = (x13 + x31);
- out[5] = (x15 + x33);
- out[6] = (x17 + x35);
- out[7] = (x19 + x37);
- out[8] = (x21 + x39);
- out[9] = (x20 + x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e488m17_10limbs/feadd.v b/src/Specific/solinas64_2e488m17_10limbs/feadd.v
deleted file mode 100644
index 72a4083b6..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e488m17_10limbs.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/solinas64_2e488m17_10limbs/feaddDisplay.log b/src/Specific/solinas64_2e488m17_10limbs/feaddDisplay.log
deleted file mode 100644
index 04176128e..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e488m17_10limbs/feaddDisplay.v b/src/Specific/solinas64_2e488m17_10limbs/feaddDisplay.v
deleted file mode 100644
index 4758027fd..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e488m17_10limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e488m17_10limbs/fecarry.v b/src/Specific/solinas64_2e488m17_10limbs/fecarry.v
deleted file mode 100644
index 2cc88c863..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e488m17_10limbs.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/solinas64_2e488m17_10limbs/fecarryDisplay.v b/src/Specific/solinas64_2e488m17_10limbs/fecarryDisplay.v
deleted file mode 100644
index 313431f0f..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e488m17_10limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e488m17_10limbs/femul.c b/src/Specific/solinas64_2e488m17_10limbs/femul.c
deleted file mode 100644
index a8cb6e436..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/femul.c
+++ /dev/null
@@ -1,78 +0,0 @@
-static void femul(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- { uint128_t x40 = (((uint128_t)x5 * x38) + (((uint128_t)x7 * x39) + (((uint128_t)x9 * x37) + (((uint128_t)x11 * x35) + (((uint128_t)x13 * x33) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + (((uint128_t)x19 * x27) + (((uint128_t)x21 * x25) + ((uint128_t)x20 * x23))))))))));
- { uint128_t x41 = ((((uint128_t)x5 * x39) + (((uint128_t)x7 * x37) + (((uint128_t)x9 * x35) + (((uint128_t)x11 * x33) + ((0x2 * ((uint128_t)x13 * x31)) + (((uint128_t)x15 * x29) + (((uint128_t)x17 * x27) + (((uint128_t)x19 * x25) + ((uint128_t)x21 * x23))))))))) + (0x11 * (0x2 * ((uint128_t)x20 * x38))));
- { uint128_t x42 = ((((uint128_t)x5 * x37) + (((uint128_t)x7 * x35) + (((uint128_t)x9 * x33) + ((0x2 * ((uint128_t)x11 * x31)) + ((0x2 * ((uint128_t)x13 * x29)) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + ((uint128_t)x19 * x23)))))))) + (0x11 * ((0x2 * ((uint128_t)x21 * x38)) + (0x2 * ((uint128_t)x20 * x39)))));
- { uint128_t x43 = ((((uint128_t)x5 * x35) + (((uint128_t)x7 * x33) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + (((uint128_t)x15 * x25) + ((uint128_t)x17 * x23))))))) + (0x11 * ((0x2 * ((uint128_t)x19 * x38)) + ((0x2 * ((uint128_t)x21 * x39)) + (0x2 * ((uint128_t)x20 * x37))))));
- { uint128_t x44 = ((((uint128_t)x5 * x33) + ((0x2 * ((uint128_t)x7 * x31)) + ((0x2 * ((uint128_t)x9 * x29)) + ((0x2 * ((uint128_t)x11 * x27)) + ((0x2 * ((uint128_t)x13 * x25)) + ((uint128_t)x15 * x23)))))) + (0x11 * ((0x2 * ((uint128_t)x17 * x38)) + ((0x2 * ((uint128_t)x19 * x39)) + ((0x2 * ((uint128_t)x21 * x37)) + (0x2 * ((uint128_t)x20 * x35)))))));
- { uint128_t x45 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + ((uint128_t)x13 * x23))))) + (0x11 * (((uint128_t)x15 * x38) + (((uint128_t)x17 * x39) + (((uint128_t)x19 * x37) + (((uint128_t)x21 * x35) + ((uint128_t)x20 * x33)))))));
- { uint128_t x46 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)))) + (0x11 * ((0x2 * ((uint128_t)x13 * x38)) + (((uint128_t)x15 * x39) + (((uint128_t)x17 * x37) + (((uint128_t)x19 * x35) + (((uint128_t)x21 * x33) + (0x2 * ((uint128_t)x20 * x31)))))))));
- { uint128_t x47 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((uint128_t)x9 * x23))) + (0x11 * ((0x2 * ((uint128_t)x11 * x38)) + ((0x2 * ((uint128_t)x13 * x39)) + (((uint128_t)x15 * x37) + (((uint128_t)x17 * x35) + (((uint128_t)x19 * x33) + ((0x2 * ((uint128_t)x21 * x31)) + (0x2 * ((uint128_t)x20 * x29))))))))));
- { uint128_t x48 = ((((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)) + (0x11 * ((0x2 * ((uint128_t)x9 * x38)) + ((0x2 * ((uint128_t)x11 * x39)) + ((0x2 * ((uint128_t)x13 * x37)) + (((uint128_t)x15 * x35) + (((uint128_t)x17 * x33) + ((0x2 * ((uint128_t)x19 * x31)) + ((0x2 * ((uint128_t)x21 * x29)) + (0x2 * ((uint128_t)x20 * x27)))))))))));
- { uint128_t x49 = (((uint128_t)x5 * x23) + (0x11 * ((0x2 * ((uint128_t)x7 * x38)) + ((0x2 * ((uint128_t)x9 * x39)) + ((0x2 * ((uint128_t)x11 * x37)) + ((0x2 * ((uint128_t)x13 * x35)) + (((uint128_t)x15 * x33) + ((0x2 * ((uint128_t)x17 * x31)) + ((0x2 * ((uint128_t)x19 * x29)) + ((0x2 * ((uint128_t)x21 * x27)) + (0x2 * ((uint128_t)x20 * x25))))))))))));
- { uint64_t x50 = (uint64_t) (x49 >> 0x31);
- { uint64_t x51 = ((uint64_t)x49 & 0x1ffffffffffff);
- { uint128_t x52 = (x50 + x48);
- { uint64_t x53 = (uint64_t) (x52 >> 0x31);
- { uint64_t x54 = ((uint64_t)x52 & 0x1ffffffffffff);
- { uint128_t x55 = (x53 + x47);
- { uint64_t x56 = (uint64_t) (x55 >> 0x31);
- { uint64_t x57 = ((uint64_t)x55 & 0x1ffffffffffff);
- { uint128_t x58 = (x56 + x46);
- { uint64_t x59 = (uint64_t) (x58 >> 0x31);
- { uint64_t x60 = ((uint64_t)x58 & 0x1ffffffffffff);
- { uint128_t x61 = (x59 + x45);
- { uint64_t x62 = (uint64_t) (x61 >> 0x30);
- { uint64_t x63 = ((uint64_t)x61 & 0xffffffffffff);
- { uint128_t x64 = (x62 + x44);
- { uint64_t x65 = (uint64_t) (x64 >> 0x31);
- { uint64_t x66 = ((uint64_t)x64 & 0x1ffffffffffff);
- { uint128_t x67 = (x65 + x43);
- { uint64_t x68 = (uint64_t) (x67 >> 0x31);
- { uint64_t x69 = ((uint64_t)x67 & 0x1ffffffffffff);
- { uint128_t x70 = (x68 + x42);
- { uint64_t x71 = (uint64_t) (x70 >> 0x31);
- { uint64_t x72 = ((uint64_t)x70 & 0x1ffffffffffff);
- { uint128_t x73 = (x71 + x41);
- { uint64_t x74 = (uint64_t) (x73 >> 0x31);
- { uint64_t x75 = ((uint64_t)x73 & 0x1ffffffffffff);
- { uint128_t x76 = (x74 + x40);
- { uint64_t x77 = (uint64_t) (x76 >> 0x30);
- { uint64_t x78 = ((uint64_t)x76 & 0xffffffffffff);
- { uint64_t x79 = (x51 + (0x11 * x77));
- { uint64_t x80 = (x79 >> 0x31);
- { uint64_t x81 = (x79 & 0x1ffffffffffff);
- { uint64_t x82 = (x80 + x54);
- { uint64_t x83 = (x82 >> 0x31);
- { uint64_t x84 = (x82 & 0x1ffffffffffff);
- out[0] = x81;
- out[1] = x84;
- out[2] = (x83 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e488m17_10limbs/femul.v b/src/Specific/solinas64_2e488m17_10limbs/femul.v
deleted file mode 100644
index a4530a5c7..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e488m17_10limbs.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/solinas64_2e488m17_10limbs/femulDisplay.log b/src/Specific/solinas64_2e488m17_10limbs/femulDisplay.log
deleted file mode 100644
index a718e8564..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/femulDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- uint128_t x40 = (((uint128_t)x5 * x38) + (((uint128_t)x7 * x39) + (((uint128_t)x9 * x37) + (((uint128_t)x11 * x35) + (((uint128_t)x13 * x33) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + (((uint128_t)x19 * x27) + (((uint128_t)x21 * x25) + ((uint128_t)x20 * x23))))))))));
- uint128_t x41 = ((((uint128_t)x5 * x39) + (((uint128_t)x7 * x37) + (((uint128_t)x9 * x35) + (((uint128_t)x11 * x33) + ((0x2 * ((uint128_t)x13 * x31)) + (((uint128_t)x15 * x29) + (((uint128_t)x17 * x27) + (((uint128_t)x19 * x25) + ((uint128_t)x21 * x23))))))))) + (0x11 * (0x2 * ((uint128_t)x20 * x38))));
- uint128_t x42 = ((((uint128_t)x5 * x37) + (((uint128_t)x7 * x35) + (((uint128_t)x9 * x33) + ((0x2 * ((uint128_t)x11 * x31)) + ((0x2 * ((uint128_t)x13 * x29)) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + ((uint128_t)x19 * x23)))))))) + (0x11 * ((0x2 * ((uint128_t)x21 * x38)) + (0x2 * ((uint128_t)x20 * x39)))));
- uint128_t x43 = ((((uint128_t)x5 * x35) + (((uint128_t)x7 * x33) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + (((uint128_t)x15 * x25) + ((uint128_t)x17 * x23))))))) + (0x11 * ((0x2 * ((uint128_t)x19 * x38)) + ((0x2 * ((uint128_t)x21 * x39)) + (0x2 * ((uint128_t)x20 * x37))))));
- uint128_t x44 = ((((uint128_t)x5 * x33) + ((0x2 * ((uint128_t)x7 * x31)) + ((0x2 * ((uint128_t)x9 * x29)) + ((0x2 * ((uint128_t)x11 * x27)) + ((0x2 * ((uint128_t)x13 * x25)) + ((uint128_t)x15 * x23)))))) + (0x11 * ((0x2 * ((uint128_t)x17 * x38)) + ((0x2 * ((uint128_t)x19 * x39)) + ((0x2 * ((uint128_t)x21 * x37)) + (0x2 * ((uint128_t)x20 * x35)))))));
- uint128_t x45 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + ((uint128_t)x13 * x23))))) + (0x11 * (((uint128_t)x15 * x38) + (((uint128_t)x17 * x39) + (((uint128_t)x19 * x37) + (((uint128_t)x21 * x35) + ((uint128_t)x20 * x33)))))));
- uint128_t x46 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)))) + (0x11 * ((0x2 * ((uint128_t)x13 * x38)) + (((uint128_t)x15 * x39) + (((uint128_t)x17 * x37) + (((uint128_t)x19 * x35) + (((uint128_t)x21 * x33) + (0x2 * ((uint128_t)x20 * x31)))))))));
- uint128_t x47 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((uint128_t)x9 * x23))) + (0x11 * ((0x2 * ((uint128_t)x11 * x38)) + ((0x2 * ((uint128_t)x13 * x39)) + (((uint128_t)x15 * x37) + (((uint128_t)x17 * x35) + (((uint128_t)x19 * x33) + ((0x2 * ((uint128_t)x21 * x31)) + (0x2 * ((uint128_t)x20 * x29))))))))));
- uint128_t x48 = ((((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)) + (0x11 * ((0x2 * ((uint128_t)x9 * x38)) + ((0x2 * ((uint128_t)x11 * x39)) + ((0x2 * ((uint128_t)x13 * x37)) + (((uint128_t)x15 * x35) + (((uint128_t)x17 * x33) + ((0x2 * ((uint128_t)x19 * x31)) + ((0x2 * ((uint128_t)x21 * x29)) + (0x2 * ((uint128_t)x20 * x27)))))))))));
- uint128_t x49 = (((uint128_t)x5 * x23) + (0x11 * ((0x2 * ((uint128_t)x7 * x38)) + ((0x2 * ((uint128_t)x9 * x39)) + ((0x2 * ((uint128_t)x11 * x37)) + ((0x2 * ((uint128_t)x13 * x35)) + (((uint128_t)x15 * x33) + ((0x2 * ((uint128_t)x17 * x31)) + ((0x2 * ((uint128_t)x19 * x29)) + ((0x2 * ((uint128_t)x21 * x27)) + (0x2 * ((uint128_t)x20 * x25))))))))))));
- uint64_t x50 = (uint64_t) (x49 >> 0x31);
- uint64_t x51 = ((uint64_t)x49 & 0x1ffffffffffff);
- uint128_t x52 = (x50 + x48);
- uint64_t x53 = (uint64_t) (x52 >> 0x31);
- uint64_t x54 = ((uint64_t)x52 & 0x1ffffffffffff);
- uint128_t x55 = (x53 + x47);
- uint64_t x56 = (uint64_t) (x55 >> 0x31);
- uint64_t x57 = ((uint64_t)x55 & 0x1ffffffffffff);
- uint128_t x58 = (x56 + x46);
- uint64_t x59 = (uint64_t) (x58 >> 0x31);
- uint64_t x60 = ((uint64_t)x58 & 0x1ffffffffffff);
- uint128_t x61 = (x59 + x45);
- uint64_t x62 = (uint64_t) (x61 >> 0x30);
- uint64_t x63 = ((uint64_t)x61 & 0xffffffffffff);
- uint128_t x64 = (x62 + x44);
- uint64_t x65 = (uint64_t) (x64 >> 0x31);
- uint64_t x66 = ((uint64_t)x64 & 0x1ffffffffffff);
- uint128_t x67 = (x65 + x43);
- uint64_t x68 = (uint64_t) (x67 >> 0x31);
- uint64_t x69 = ((uint64_t)x67 & 0x1ffffffffffff);
- uint128_t x70 = (x68 + x42);
- uint64_t x71 = (uint64_t) (x70 >> 0x31);
- uint64_t x72 = ((uint64_t)x70 & 0x1ffffffffffff);
- uint128_t x73 = (x71 + x41);
- uint64_t x74 = (uint64_t) (x73 >> 0x31);
- uint64_t x75 = ((uint64_t)x73 & 0x1ffffffffffff);
- uint128_t x76 = (x74 + x40);
- uint64_t x77 = (uint64_t) (x76 >> 0x30);
- uint64_t x78 = ((uint64_t)x76 & 0xffffffffffff);
- uint64_t x79 = (x51 + (0x11 * x77));
- uint64_t x80 = (x79 >> 0x31);
- uint64_t x81 = (x79 & 0x1ffffffffffff);
- uint64_t x82 = (x80 + x54);
- uint64_t x83 = (x82 >> 0x31);
- uint64_t x84 = (x82 & 0x1ffffffffffff);
- return (Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x83 + x57), Return x84, Return x81))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e488m17_10limbs/femulDisplay.v b/src/Specific/solinas64_2e488m17_10limbs/femulDisplay.v
deleted file mode 100644
index 375ecac7a..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e488m17_10limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e488m17_10limbs/fesquare.c b/src/Specific/solinas64_2e488m17_10limbs/fesquare.c
deleted file mode 100644
index d418023e1..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/fesquare.c
+++ /dev/null
@@ -1,68 +0,0 @@
-static void fesquare(uint64_t out[10], const uint64_t in1[10]) {
- { const uint64_t x17 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x19 = (((uint128_t)x2 * x17) + (((uint128_t)x4 * x18) + (((uint128_t)x6 * x16) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + (((uint128_t)x16 * x6) + (((uint128_t)x18 * x4) + ((uint128_t)x17 * x2))))))))));
- { uint128_t x20 = ((((uint128_t)x2 * x18) + (((uint128_t)x4 * x16) + (((uint128_t)x6 * x14) + (((uint128_t)x8 * x12) + ((0x2 * ((uint128_t)x10 * x10)) + (((uint128_t)x12 * x8) + (((uint128_t)x14 * x6) + (((uint128_t)x16 * x4) + ((uint128_t)x18 * x2))))))))) + (0x11 * (0x2 * ((uint128_t)x17 * x17))));
- { uint128_t x21 = ((((uint128_t)x2 * x16) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x16 * x2)))))))) + (0x11 * ((0x2 * ((uint128_t)x18 * x17)) + (0x2 * ((uint128_t)x17 * x18)))));
- { uint128_t x22 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + ((0x2 * ((uint128_t)x6 * x10)) + ((0x2 * ((uint128_t)x8 * x8)) + ((0x2 * ((uint128_t)x10 * x6)) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x11 * ((0x2 * ((uint128_t)x16 * x17)) + ((0x2 * ((uint128_t)x18 * x18)) + (0x2 * ((uint128_t)x17 * x16))))));
- { uint128_t x23 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x11 * ((0x2 * ((uint128_t)x14 * x17)) + ((0x2 * ((uint128_t)x16 * x18)) + ((0x2 * ((uint128_t)x18 * x16)) + (0x2 * ((uint128_t)x17 * x14)))))));
- { uint128_t x24 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x11 * (((uint128_t)x12 * x17) + (((uint128_t)x14 * x18) + (((uint128_t)x16 * x16) + (((uint128_t)x18 * x14) + ((uint128_t)x17 * x12)))))));
- { uint128_t x25 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x11 * ((0x2 * ((uint128_t)x10 * x17)) + (((uint128_t)x12 * x18) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + (((uint128_t)x18 * x12) + (0x2 * ((uint128_t)x17 * x10)))))))));
- { uint128_t x26 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x11 * ((0x2 * ((uint128_t)x8 * x17)) + ((0x2 * ((uint128_t)x10 * x18)) + (((uint128_t)x12 * x16) + (((uint128_t)x14 * x14) + (((uint128_t)x16 * x12) + ((0x2 * ((uint128_t)x18 * x10)) + (0x2 * ((uint128_t)x17 * x8))))))))));
- { uint128_t x27 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * ((0x2 * ((uint128_t)x6 * x17)) + ((0x2 * ((uint128_t)x8 * x18)) + ((0x2 * ((uint128_t)x10 * x16)) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((0x2 * ((uint128_t)x16 * x10)) + ((0x2 * ((uint128_t)x18 * x8)) + (0x2 * ((uint128_t)x17 * x6)))))))))));
- { uint128_t x28 = (((uint128_t)x2 * x2) + (0x11 * ((0x2 * ((uint128_t)x4 * x17)) + ((0x2 * ((uint128_t)x6 * x18)) + ((0x2 * ((uint128_t)x8 * x16)) + ((0x2 * ((uint128_t)x10 * x14)) + (((uint128_t)x12 * x12) + ((0x2 * ((uint128_t)x14 * x10)) + ((0x2 * ((uint128_t)x16 * x8)) + ((0x2 * ((uint128_t)x18 * x6)) + (0x2 * ((uint128_t)x17 * x4))))))))))));
- { uint64_t x29 = (uint64_t) (x28 >> 0x31);
- { uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffffff);
- { uint128_t x31 = (x29 + x27);
- { uint64_t x32 = (uint64_t) (x31 >> 0x31);
- { uint64_t x33 = ((uint64_t)x31 & 0x1ffffffffffff);
- { uint128_t x34 = (x32 + x26);
- { uint64_t x35 = (uint64_t) (x34 >> 0x31);
- { uint64_t x36 = ((uint64_t)x34 & 0x1ffffffffffff);
- { uint128_t x37 = (x35 + x25);
- { uint64_t x38 = (uint64_t) (x37 >> 0x31);
- { uint64_t x39 = ((uint64_t)x37 & 0x1ffffffffffff);
- { uint128_t x40 = (x38 + x24);
- { uint64_t x41 = (uint64_t) (x40 >> 0x30);
- { uint64_t x42 = ((uint64_t)x40 & 0xffffffffffff);
- { uint128_t x43 = (x41 + x23);
- { uint64_t x44 = (uint64_t) (x43 >> 0x31);
- { uint64_t x45 = ((uint64_t)x43 & 0x1ffffffffffff);
- { uint128_t x46 = (x44 + x22);
- { uint64_t x47 = (uint64_t) (x46 >> 0x31);
- { uint64_t x48 = ((uint64_t)x46 & 0x1ffffffffffff);
- { uint128_t x49 = (x47 + x21);
- { uint64_t x50 = (uint64_t) (x49 >> 0x31);
- { uint64_t x51 = ((uint64_t)x49 & 0x1ffffffffffff);
- { uint128_t x52 = (x50 + x20);
- { uint64_t x53 = (uint64_t) (x52 >> 0x31);
- { uint64_t x54 = ((uint64_t)x52 & 0x1ffffffffffff);
- { uint128_t x55 = (x53 + x19);
- { uint64_t x56 = (uint64_t) (x55 >> 0x30);
- { uint64_t x57 = ((uint64_t)x55 & 0xffffffffffff);
- { uint64_t x58 = (x30 + (0x11 * x56));
- { uint64_t x59 = (x58 >> 0x31);
- { uint64_t x60 = (x58 & 0x1ffffffffffff);
- { uint64_t x61 = (x59 + x33);
- { uint64_t x62 = (x61 >> 0x31);
- { uint64_t x63 = (x61 & 0x1ffffffffffff);
- out[0] = x60;
- out[1] = x63;
- out[2] = (x62 + x36);
- out[3] = x39;
- out[4] = x42;
- out[5] = x45;
- out[6] = x48;
- out[7] = x51;
- out[8] = x54;
- out[9] = x57;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e488m17_10limbs/fesquare.v b/src/Specific/solinas64_2e488m17_10limbs/fesquare.v
deleted file mode 100644
index a97a5297e..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e488m17_10limbs.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/solinas64_2e488m17_10limbs/fesquareDisplay.log b/src/Specific/solinas64_2e488m17_10limbs/fesquareDisplay.log
deleted file mode 100644
index b0792c625..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x19 = (((uint128_t)x2 * x17) + (((uint128_t)x4 * x18) + (((uint128_t)x6 * x16) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + (((uint128_t)x16 * x6) + (((uint128_t)x18 * x4) + ((uint128_t)x17 * x2))))))))));
- uint128_t x20 = ((((uint128_t)x2 * x18) + (((uint128_t)x4 * x16) + (((uint128_t)x6 * x14) + (((uint128_t)x8 * x12) + ((0x2 * ((uint128_t)x10 * x10)) + (((uint128_t)x12 * x8) + (((uint128_t)x14 * x6) + (((uint128_t)x16 * x4) + ((uint128_t)x18 * x2))))))))) + (0x11 * (0x2 * ((uint128_t)x17 * x17))));
- uint128_t x21 = ((((uint128_t)x2 * x16) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x16 * x2)))))))) + (0x11 * ((0x2 * ((uint128_t)x18 * x17)) + (0x2 * ((uint128_t)x17 * x18)))));
- uint128_t x22 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + ((0x2 * ((uint128_t)x6 * x10)) + ((0x2 * ((uint128_t)x8 * x8)) + ((0x2 * ((uint128_t)x10 * x6)) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x11 * ((0x2 * ((uint128_t)x16 * x17)) + ((0x2 * ((uint128_t)x18 * x18)) + (0x2 * ((uint128_t)x17 * x16))))));
- uint128_t x23 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x11 * ((0x2 * ((uint128_t)x14 * x17)) + ((0x2 * ((uint128_t)x16 * x18)) + ((0x2 * ((uint128_t)x18 * x16)) + (0x2 * ((uint128_t)x17 * x14)))))));
- uint128_t x24 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x11 * (((uint128_t)x12 * x17) + (((uint128_t)x14 * x18) + (((uint128_t)x16 * x16) + (((uint128_t)x18 * x14) + ((uint128_t)x17 * x12)))))));
- uint128_t x25 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x11 * ((0x2 * ((uint128_t)x10 * x17)) + (((uint128_t)x12 * x18) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + (((uint128_t)x18 * x12) + (0x2 * ((uint128_t)x17 * x10)))))))));
- uint128_t x26 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x11 * ((0x2 * ((uint128_t)x8 * x17)) + ((0x2 * ((uint128_t)x10 * x18)) + (((uint128_t)x12 * x16) + (((uint128_t)x14 * x14) + (((uint128_t)x16 * x12) + ((0x2 * ((uint128_t)x18 * x10)) + (0x2 * ((uint128_t)x17 * x8))))))))));
- uint128_t x27 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * ((0x2 * ((uint128_t)x6 * x17)) + ((0x2 * ((uint128_t)x8 * x18)) + ((0x2 * ((uint128_t)x10 * x16)) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((0x2 * ((uint128_t)x16 * x10)) + ((0x2 * ((uint128_t)x18 * x8)) + (0x2 * ((uint128_t)x17 * x6)))))))))));
- uint128_t x28 = (((uint128_t)x2 * x2) + (0x11 * ((0x2 * ((uint128_t)x4 * x17)) + ((0x2 * ((uint128_t)x6 * x18)) + ((0x2 * ((uint128_t)x8 * x16)) + ((0x2 * ((uint128_t)x10 * x14)) + (((uint128_t)x12 * x12) + ((0x2 * ((uint128_t)x14 * x10)) + ((0x2 * ((uint128_t)x16 * x8)) + ((0x2 * ((uint128_t)x18 * x6)) + (0x2 * ((uint128_t)x17 * x4))))))))))));
- uint64_t x29 = (uint64_t) (x28 >> 0x31);
- uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffffff);
- uint128_t x31 = (x29 + x27);
- uint64_t x32 = (uint64_t) (x31 >> 0x31);
- uint64_t x33 = ((uint64_t)x31 & 0x1ffffffffffff);
- uint128_t x34 = (x32 + x26);
- uint64_t x35 = (uint64_t) (x34 >> 0x31);
- uint64_t x36 = ((uint64_t)x34 & 0x1ffffffffffff);
- uint128_t x37 = (x35 + x25);
- uint64_t x38 = (uint64_t) (x37 >> 0x31);
- uint64_t x39 = ((uint64_t)x37 & 0x1ffffffffffff);
- uint128_t x40 = (x38 + x24);
- uint64_t x41 = (uint64_t) (x40 >> 0x30);
- uint64_t x42 = ((uint64_t)x40 & 0xffffffffffff);
- uint128_t x43 = (x41 + x23);
- uint64_t x44 = (uint64_t) (x43 >> 0x31);
- uint64_t x45 = ((uint64_t)x43 & 0x1ffffffffffff);
- uint128_t x46 = (x44 + x22);
- uint64_t x47 = (uint64_t) (x46 >> 0x31);
- uint64_t x48 = ((uint64_t)x46 & 0x1ffffffffffff);
- uint128_t x49 = (x47 + x21);
- uint64_t x50 = (uint64_t) (x49 >> 0x31);
- uint64_t x51 = ((uint64_t)x49 & 0x1ffffffffffff);
- uint128_t x52 = (x50 + x20);
- uint64_t x53 = (uint64_t) (x52 >> 0x31);
- uint64_t x54 = ((uint64_t)x52 & 0x1ffffffffffff);
- uint128_t x55 = (x53 + x19);
- uint64_t x56 = (uint64_t) (x55 >> 0x30);
- uint64_t x57 = ((uint64_t)x55 & 0xffffffffffff);
- uint64_t x58 = (x30 + (0x11 * x56));
- uint64_t x59 = (x58 >> 0x31);
- uint64_t x60 = (x58 & 0x1ffffffffffff);
- uint64_t x61 = (x59 + x33);
- uint64_t x62 = (x61 >> 0x31);
- uint64_t x63 = (x61 & 0x1ffffffffffff);
- return (Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, Return x39, (x62 + x36), Return x63, Return x60))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e488m17_10limbs/fesquareDisplay.v b/src/Specific/solinas64_2e488m17_10limbs/fesquareDisplay.v
deleted file mode 100644
index 8885f560f..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e488m17_10limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e488m17_10limbs/fesub.c b/src/Specific/solinas64_2e488m17_10limbs/fesub.c
deleted file mode 100644
index fcafc6174..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/fesub.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fesub(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- out[0] = ((0x3ffffffffffde + x5) - x23);
- out[1] = ((0x3fffffffffffe + x7) - x25);
- out[2] = ((0x3fffffffffffe + x9) - x27);
- out[3] = ((0x3fffffffffffe + x11) - x29);
- out[4] = ((0x1fffffffffffe + x13) - x31);
- out[5] = ((0x3fffffffffffe + x15) - x33);
- out[6] = ((0x3fffffffffffe + x17) - x35);
- out[7] = ((0x3fffffffffffe + x19) - x37);
- out[8] = ((0x3fffffffffffe + x21) - x39);
- out[9] = ((0x1fffffffffffe + x20) - x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e488m17_10limbs/fesub.v b/src/Specific/solinas64_2e488m17_10limbs/fesub.v
deleted file mode 100644
index 64897bdca..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e488m17_10limbs.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/solinas64_2e488m17_10limbs/fesubDisplay.log b/src/Specific/solinas64_2e488m17_10limbs/fesubDisplay.log
deleted file mode 100644
index 92661c2b8..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- (((0x1fffffffffffe + x20) - x38), ((0x3fffffffffffe + x21) - x39), ((0x3fffffffffffe + x19) - x37), ((0x3fffffffffffe + x17) - x35), ((0x3fffffffffffe + x15) - x33), ((0x1fffffffffffe + x13) - x31), ((0x3fffffffffffe + x11) - x29), ((0x3fffffffffffe + x9) - x27), ((0x3fffffffffffe + x7) - x25), ((0x3ffffffffffde + x5) - x23)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e488m17_10limbs/fesubDisplay.v b/src/Specific/solinas64_2e488m17_10limbs/fesubDisplay.v
deleted file mode 100644
index 0b18f09d7..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e488m17_10limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e488m17_10limbs/freeze.c b/src/Specific/solinas64_2e488m17_10limbs/freeze.c
deleted file mode 100644
index 5275ade43..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/freeze.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void freeze(uint64_t out[10], const uint64_t in1[10]) {
- { const uint64_t x17 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffffffffef);
- { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x4, 0x1ffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x6, 0x1ffffffffffff);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x8, 0x1ffffffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x10, 0xffffffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x12, 0x1ffffffffffff);
- { uint64_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x14, 0x1ffffffffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x39, Return x16, 0x1ffffffffffff);
- { uint64_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x18, 0x1ffffffffffff);
- { uint64_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x17, 0xffffffffffff);
- { uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL);
- { uint64_t x50 = (x49 & 0x1ffffffffffef);
- { uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- { uint64_t x54 = (x49 & 0x1ffffffffffff);
- { uint64_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- { uint64_t x58 = (x49 & 0x1ffffffffffff);
- { uint64_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- { uint64_t x62 = (x49 & 0x1ffffffffffff);
- { uint64_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- { uint64_t x66 = (x49 & 0xffffffffffff);
- { uint64_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- { uint64_t x70 = (x49 & 0x1ffffffffffff);
- { uint64_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- { uint64_t x74 = (x49 & 0x1ffffffffffff);
- { uint64_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- { uint64_t x78 = (x49 & 0x1ffffffffffff);
- { uint64_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- { uint64_t x82 = (x49 & 0x1ffffffffffff);
- { uint64_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- { uint64_t x86 = (x49 & 0xffffffffffff);
- { uint64_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- out[0] = x52;
- out[1] = x56;
- out[2] = x60;
- out[3] = x64;
- out[4] = x68;
- out[5] = x72;
- out[6] = x76;
- out[7] = x80;
- out[8] = x84;
- out[9] = x88;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e488m17_10limbs/freeze.v b/src/Specific/solinas64_2e488m17_10limbs/freeze.v
deleted file mode 100644
index 3e6461b13..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e488m17_10limbs.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/solinas64_2e488m17_10limbs/freezeDisplay.log b/src/Specific/solinas64_2e488m17_10limbs/freezeDisplay.log
deleted file mode 100644
index ca54e2872..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffffffffef);
- uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x4, 0x1ffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x6, 0x1ffffffffffff);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x8, 0x1ffffffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x10, 0xffffffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x12, 0x1ffffffffffff);
- uint64_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x14, 0x1ffffffffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x39, Return x16, 0x1ffffffffffff);
- uint64_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x18, 0x1ffffffffffff);
- uint64_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x17, 0xffffffffffff);
- uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL);
- uint64_t x50 = (x49 & 0x1ffffffffffef);
- uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- uint64_t x54 = (x49 & 0x1ffffffffffff);
- uint64_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- uint64_t x58 = (x49 & 0x1ffffffffffff);
- uint64_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- uint64_t x62 = (x49 & 0x1ffffffffffff);
- uint64_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- uint64_t x66 = (x49 & 0xffffffffffff);
- uint64_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- uint64_t x70 = (x49 & 0x1ffffffffffff);
- uint64_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- uint64_t x74 = (x49 & 0x1ffffffffffff);
- uint64_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- uint64_t x78 = (x49 & 0x1ffffffffffff);
- uint64_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- uint64_t x82 = (x49 & 0x1ffffffffffff);
- uint64_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- uint64_t x86 = (x49 & 0xffffffffffff);
- uint64_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- (Return x88, Return x84, Return x80, Return x76, Return x72, Return x68, Return x64, Return x60, Return x56, Return x52))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e488m17_10limbs/freezeDisplay.v b/src/Specific/solinas64_2e488m17_10limbs/freezeDisplay.v
deleted file mode 100644
index c1720c03d..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e488m17_10limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e488m17_10limbs/py_interpreter.sh b/src/Specific/solinas64_2e488m17_10limbs/py_interpreter.sh
deleted file mode 100755
index f67417acc..000000000
--- a/src/Specific/solinas64_2e488m17_10limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**488 - 17' -Dmodulus_bytes='48.8' -Da24='121665'
diff --git a/src/Specific/solinas64_2e488m17_9limbs/CurveParameters.v b/src/Specific/solinas64_2e488m17_9limbs/CurveParameters.v
deleted file mode 100644
index 7665cf108..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^488 - 17
-Base: 54 + 2/9
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 54 + 2/9;
- bitwidth := 64;
- s := 2^488;
- c := [(1, 17)];
- carry_chains := Some [seq 0 (pred 9); [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/solinas64_2e488m17_9limbs/Synthesis.v b/src/Specific/solinas64_2e488m17_9limbs/Synthesis.v
deleted file mode 100644
index bba61c818..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e488m17_9limbs.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/solinas64_2e488m17_9limbs/compiler.sh b/src/Specific/solinas64_2e488m17_9limbs/compiler.sh
deleted file mode 100755
index 4a5c5de3e..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,54,54,54,55,54,54,54,54}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='61' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<488) - 17' "$@"
diff --git a/src/Specific/solinas64_2e488m17_9limbs/compilerxx.sh b/src/Specific/solinas64_2e488m17_9limbs/compilerxx.sh
deleted file mode 100755
index e19e92226..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,54,54,54,55,54,54,54,54}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xef}' -Dmodulus_bytes_val='61' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<488) - 17' "$@"
diff --git a/src/Specific/solinas64_2e488m17_9limbs/feadd.c b/src/Specific/solinas64_2e488m17_9limbs/feadd.c
deleted file mode 100644
index 98ab4434c..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e488m17_9limbs/feadd.v b/src/Specific/solinas64_2e488m17_9limbs/feadd.v
deleted file mode 100644
index 0a39f6533..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e488m17_9limbs.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/solinas64_2e488m17_9limbs/feaddDisplay.log b/src/Specific/solinas64_2e488m17_9limbs/feaddDisplay.log
deleted file mode 100644
index 3b92b1c5c..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e488m17_9limbs/feaddDisplay.v b/src/Specific/solinas64_2e488m17_9limbs/feaddDisplay.v
deleted file mode 100644
index e41e3c8df..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e488m17_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e488m17_9limbs/fecarry.v b/src/Specific/solinas64_2e488m17_9limbs/fecarry.v
deleted file mode 100644
index f5c4011c4..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e488m17_9limbs.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/solinas64_2e488m17_9limbs/fecarryDisplay.v b/src/Specific/solinas64_2e488m17_9limbs/fecarryDisplay.v
deleted file mode 100644
index 77fb3a8ea..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e488m17_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e488m17_9limbs/femul.c b/src/Specific/solinas64_2e488m17_9limbs/femul.c
deleted file mode 100644
index 9fd33ac80..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/femul.c
+++ /dev/null
@@ -1,71 +0,0 @@
-static void femul(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- { uint128_t x36 = (((uint128_t)x5 * x34) + ((0x2 * ((uint128_t)x7 * x35)) + ((0x2 * ((uint128_t)x9 * x33)) + ((0x2 * ((uint128_t)x11 * x31)) + (((uint128_t)x13 * x29) + ((0x2 * ((uint128_t)x15 * x27)) + ((0x2 * ((uint128_t)x17 * x25)) + ((0x2 * ((uint128_t)x19 * x23)) + ((uint128_t)x18 * x21)))))))));
- { uint128_t x37 = ((((uint128_t)x5 * x35) + ((0x2 * ((uint128_t)x7 * x33)) + ((0x2 * ((uint128_t)x9 * x31)) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + ((0x2 * ((uint128_t)x15 * x25)) + ((0x2 * ((uint128_t)x17 * x23)) + ((uint128_t)x19 * x21)))))))) + (0x11 * ((uint128_t)x18 * x34)));
- { uint128_t x38 = ((((uint128_t)x5 * x33) + ((0x2 * ((uint128_t)x7 * x31)) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + ((0x2 * ((uint128_t)x15 * x23)) + ((uint128_t)x17 * x21))))))) + (0x11 * (((uint128_t)x19 * x34) + ((uint128_t)x18 * x35))));
- { uint128_t x39 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + ((uint128_t)x15 * x21)))))) + (0x11 * (((uint128_t)x17 * x34) + (((uint128_t)x19 * x35) + ((uint128_t)x18 * x33)))));
- { uint128_t x40 = ((((uint128_t)x5 * x29) + ((0x2 * ((uint128_t)x7 * x27)) + ((0x2 * ((uint128_t)x9 * x25)) + ((0x2 * ((uint128_t)x11 * x23)) + ((uint128_t)x13 * x21))))) + (0x11 * ((0x2 * ((uint128_t)x15 * x34)) + ((0x2 * ((uint128_t)x17 * x35)) + ((0x2 * ((uint128_t)x19 * x33)) + (0x2 * ((uint128_t)x18 * x31)))))));
- { uint128_t x41 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + ((uint128_t)x11 * x21)))) + (0x11 * (((uint128_t)x13 * x34) + ((0x2 * ((uint128_t)x15 * x35)) + ((0x2 * ((uint128_t)x17 * x33)) + ((0x2 * ((uint128_t)x19 * x31)) + ((uint128_t)x18 * x29)))))));
- { uint128_t x42 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((uint128_t)x9 * x21))) + (0x11 * (((uint128_t)x11 * x34) + (((uint128_t)x13 * x35) + ((0x2 * ((uint128_t)x15 * x33)) + ((0x2 * ((uint128_t)x17 * x31)) + (((uint128_t)x19 * x29) + ((uint128_t)x18 * x27))))))));
- { uint128_t x43 = ((((uint128_t)x5 * x23) + ((uint128_t)x7 * x21)) + (0x11 * (((uint128_t)x9 * x34) + (((uint128_t)x11 * x35) + (((uint128_t)x13 * x33) + ((0x2 * ((uint128_t)x15 * x31)) + (((uint128_t)x17 * x29) + (((uint128_t)x19 * x27) + ((uint128_t)x18 * x25)))))))));
- { uint128_t x44 = (((uint128_t)x5 * x21) + (0x11 * ((0x2 * ((uint128_t)x7 * x34)) + ((0x2 * ((uint128_t)x9 * x35)) + ((0x2 * ((uint128_t)x11 * x33)) + ((0x2 * ((uint128_t)x13 * x31)) + ((0x2 * ((uint128_t)x15 * x29)) + ((0x2 * ((uint128_t)x17 * x27)) + ((0x2 * ((uint128_t)x19 * x25)) + (0x2 * ((uint128_t)x18 * x23)))))))))));
- { uint128_t x45 = (x44 >> 0x37);
- { uint64_t x46 = ((uint64_t)x44 & 0x7fffffffffffff);
- { uint128_t x47 = (x45 + x43);
- { uint128_t x48 = (x47 >> 0x36);
- { uint64_t x49 = ((uint64_t)x47 & 0x3fffffffffffff);
- { uint128_t x50 = (x48 + x42);
- { uint128_t x51 = (x50 >> 0x36);
- { uint64_t x52 = ((uint64_t)x50 & 0x3fffffffffffff);
- { uint128_t x53 = (x51 + x41);
- { uint128_t x54 = (x53 >> 0x36);
- { uint64_t x55 = ((uint64_t)x53 & 0x3fffffffffffff);
- { uint128_t x56 = (x54 + x40);
- { uint64_t x57 = (uint64_t) (x56 >> 0x37);
- { uint64_t x58 = ((uint64_t)x56 & 0x7fffffffffffff);
- { uint128_t x59 = (x57 + x39);
- { uint64_t x60 = (uint64_t) (x59 >> 0x36);
- { uint64_t x61 = ((uint64_t)x59 & 0x3fffffffffffff);
- { uint128_t x62 = (x60 + x38);
- { uint64_t x63 = (uint64_t) (x62 >> 0x36);
- { uint64_t x64 = ((uint64_t)x62 & 0x3fffffffffffff);
- { uint128_t x65 = (x63 + x37);
- { uint64_t x66 = (uint64_t) (x65 >> 0x36);
- { uint64_t x67 = ((uint64_t)x65 & 0x3fffffffffffff);
- { uint128_t x68 = (x66 + x36);
- { uint64_t x69 = (uint64_t) (x68 >> 0x36);
- { uint64_t x70 = ((uint64_t)x68 & 0x3fffffffffffff);
- { uint128_t x71 = (x46 + ((uint128_t)0x11 * x69));
- { uint64_t x72 = (uint64_t) (x71 >> 0x37);
- { uint64_t x73 = ((uint64_t)x71 & 0x7fffffffffffff);
- { uint64_t x74 = (x72 + x49);
- { uint64_t x75 = (x74 >> 0x36);
- { uint64_t x76 = (x74 & 0x3fffffffffffff);
- out[0] = x73;
- out[1] = x76;
- out[2] = (x75 + x52);
- out[3] = x55;
- out[4] = x58;
- out[5] = x61;
- out[6] = x64;
- out[7] = x67;
- out[8] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e488m17_9limbs/femul.v b/src/Specific/solinas64_2e488m17_9limbs/femul.v
deleted file mode 100644
index 3e237d577..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e488m17_9limbs.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/solinas64_2e488m17_9limbs/femulDisplay.log b/src/Specific/solinas64_2e488m17_9limbs/femulDisplay.log
deleted file mode 100644
index 3cd026aa2..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/femulDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint128_t x36 = (((uint128_t)x5 * x34) + ((0x2 * ((uint128_t)x7 * x35)) + ((0x2 * ((uint128_t)x9 * x33)) + ((0x2 * ((uint128_t)x11 * x31)) + (((uint128_t)x13 * x29) + ((0x2 * ((uint128_t)x15 * x27)) + ((0x2 * ((uint128_t)x17 * x25)) + ((0x2 * ((uint128_t)x19 * x23)) + ((uint128_t)x18 * x21)))))))));
- uint128_t x37 = ((((uint128_t)x5 * x35) + ((0x2 * ((uint128_t)x7 * x33)) + ((0x2 * ((uint128_t)x9 * x31)) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + ((0x2 * ((uint128_t)x15 * x25)) + ((0x2 * ((uint128_t)x17 * x23)) + ((uint128_t)x19 * x21)))))))) + (0x11 * ((uint128_t)x18 * x34)));
- uint128_t x38 = ((((uint128_t)x5 * x33) + ((0x2 * ((uint128_t)x7 * x31)) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + ((0x2 * ((uint128_t)x15 * x23)) + ((uint128_t)x17 * x21))))))) + (0x11 * (((uint128_t)x19 * x34) + ((uint128_t)x18 * x35))));
- uint128_t x39 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + ((uint128_t)x15 * x21)))))) + (0x11 * (((uint128_t)x17 * x34) + (((uint128_t)x19 * x35) + ((uint128_t)x18 * x33)))));
- uint128_t x40 = ((((uint128_t)x5 * x29) + ((0x2 * ((uint128_t)x7 * x27)) + ((0x2 * ((uint128_t)x9 * x25)) + ((0x2 * ((uint128_t)x11 * x23)) + ((uint128_t)x13 * x21))))) + (0x11 * ((0x2 * ((uint128_t)x15 * x34)) + ((0x2 * ((uint128_t)x17 * x35)) + ((0x2 * ((uint128_t)x19 * x33)) + (0x2 * ((uint128_t)x18 * x31)))))));
- uint128_t x41 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + ((uint128_t)x11 * x21)))) + (0x11 * (((uint128_t)x13 * x34) + ((0x2 * ((uint128_t)x15 * x35)) + ((0x2 * ((uint128_t)x17 * x33)) + ((0x2 * ((uint128_t)x19 * x31)) + ((uint128_t)x18 * x29)))))));
- uint128_t x42 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((uint128_t)x9 * x21))) + (0x11 * (((uint128_t)x11 * x34) + (((uint128_t)x13 * x35) + ((0x2 * ((uint128_t)x15 * x33)) + ((0x2 * ((uint128_t)x17 * x31)) + (((uint128_t)x19 * x29) + ((uint128_t)x18 * x27))))))));
- uint128_t x43 = ((((uint128_t)x5 * x23) + ((uint128_t)x7 * x21)) + (0x11 * (((uint128_t)x9 * x34) + (((uint128_t)x11 * x35) + (((uint128_t)x13 * x33) + ((0x2 * ((uint128_t)x15 * x31)) + (((uint128_t)x17 * x29) + (((uint128_t)x19 * x27) + ((uint128_t)x18 * x25)))))))));
- uint128_t x44 = (((uint128_t)x5 * x21) + (0x11 * ((0x2 * ((uint128_t)x7 * x34)) + ((0x2 * ((uint128_t)x9 * x35)) + ((0x2 * ((uint128_t)x11 * x33)) + ((0x2 * ((uint128_t)x13 * x31)) + ((0x2 * ((uint128_t)x15 * x29)) + ((0x2 * ((uint128_t)x17 * x27)) + ((0x2 * ((uint128_t)x19 * x25)) + (0x2 * ((uint128_t)x18 * x23)))))))))));
- uint128_t x45 = (x44 >> 0x37);
- uint64_t x46 = ((uint64_t)x44 & 0x7fffffffffffff);
- uint128_t x47 = (x45 + x43);
- uint128_t x48 = (x47 >> 0x36);
- uint64_t x49 = ((uint64_t)x47 & 0x3fffffffffffff);
- uint128_t x50 = (x48 + x42);
- uint128_t x51 = (x50 >> 0x36);
- uint64_t x52 = ((uint64_t)x50 & 0x3fffffffffffff);
- uint128_t x53 = (x51 + x41);
- uint128_t x54 = (x53 >> 0x36);
- uint64_t x55 = ((uint64_t)x53 & 0x3fffffffffffff);
- uint128_t x56 = (x54 + x40);
- uint64_t x57 = (uint64_t) (x56 >> 0x37);
- uint64_t x58 = ((uint64_t)x56 & 0x7fffffffffffff);
- uint128_t x59 = (x57 + x39);
- uint64_t x60 = (uint64_t) (x59 >> 0x36);
- uint64_t x61 = ((uint64_t)x59 & 0x3fffffffffffff);
- uint128_t x62 = (x60 + x38);
- uint64_t x63 = (uint64_t) (x62 >> 0x36);
- uint64_t x64 = ((uint64_t)x62 & 0x3fffffffffffff);
- uint128_t x65 = (x63 + x37);
- uint64_t x66 = (uint64_t) (x65 >> 0x36);
- uint64_t x67 = ((uint64_t)x65 & 0x3fffffffffffff);
- uint128_t x68 = (x66 + x36);
- uint64_t x69 = (uint64_t) (x68 >> 0x36);
- uint64_t x70 = ((uint64_t)x68 & 0x3fffffffffffff);
- uint128_t x71 = (x46 + ((uint128_t)0x11 * x69));
- uint64_t x72 = (uint64_t) (x71 >> 0x37);
- uint64_t x73 = ((uint64_t)x71 & 0x7fffffffffffff);
- uint64_t x74 = (x72 + x49);
- uint64_t x75 = (x74 >> 0x36);
- uint64_t x76 = (x74 & 0x3fffffffffffff);
- return (Return x70, Return x67, Return x64, Return x61, Return x58, Return x55, (x75 + x52), Return x76, Return x73))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e488m17_9limbs/femulDisplay.v b/src/Specific/solinas64_2e488m17_9limbs/femulDisplay.v
deleted file mode 100644
index 5eb2faf87..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e488m17_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e488m17_9limbs/fesquare.c b/src/Specific/solinas64_2e488m17_9limbs/fesquare.c
deleted file mode 100644
index 9d730953e..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/fesquare.c
+++ /dev/null
@@ -1,62 +0,0 @@
-static void fesquare(uint64_t out[9], const uint64_t in1[9]) {
- { const uint64_t x15 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x17 = (((uint128_t)x2 * x15) + ((0x2 * ((uint128_t)x4 * x16)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + ((0x2 * ((uint128_t)x16 * x4)) + ((uint128_t)x15 * x2)))))))));
- { uint128_t x18 = ((((uint128_t)x2 * x16) + ((0x2 * ((uint128_t)x4 * x14)) + ((0x2 * ((uint128_t)x6 * x12)) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((0x2 * ((uint128_t)x12 * x6)) + ((0x2 * ((uint128_t)x14 * x4)) + ((uint128_t)x16 * x2)))))))) + (0x11 * ((uint128_t)x15 * x15)));
- { uint128_t x19 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x11 * (((uint128_t)x16 * x15) + ((uint128_t)x15 * x16))));
- { uint128_t x20 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x11 * (((uint128_t)x14 * x15) + (((uint128_t)x16 * x16) + ((uint128_t)x15 * x14)))));
- { uint128_t x21 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint128_t)x12 * x15)) + ((0x2 * ((uint128_t)x14 * x16)) + ((0x2 * ((uint128_t)x16 * x14)) + (0x2 * ((uint128_t)x15 * x12)))))));
- { uint128_t x22 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x11 * (((uint128_t)x10 * x15) + ((0x2 * ((uint128_t)x12 * x16)) + ((0x2 * ((uint128_t)x14 * x14)) + ((0x2 * ((uint128_t)x16 * x12)) + ((uint128_t)x15 * x10)))))));
- { uint128_t x23 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x11 * (((uint128_t)x8 * x15) + (((uint128_t)x10 * x16) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + (((uint128_t)x16 * x10) + ((uint128_t)x15 * x8))))))));
- { uint128_t x24 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * (((uint128_t)x6 * x15) + (((uint128_t)x8 * x16) + (((uint128_t)x10 * x14) + ((0x2 * ((uint128_t)x12 * x12)) + (((uint128_t)x14 * x10) + (((uint128_t)x16 * x8) + ((uint128_t)x15 * x6)))))))));
- { uint128_t x25 = (((uint128_t)x2 * x2) + (0x11 * ((0x2 * ((uint128_t)x4 * x15)) + ((0x2 * ((uint128_t)x6 * x16)) + ((0x2 * ((uint128_t)x8 * x14)) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + ((0x2 * ((uint128_t)x14 * x8)) + ((0x2 * ((uint128_t)x16 * x6)) + (0x2 * ((uint128_t)x15 * x4)))))))))));
- { uint128_t x26 = (x25 >> 0x37);
- { uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffffff);
- { uint128_t x28 = (x26 + x24);
- { uint128_t x29 = (x28 >> 0x36);
- { uint64_t x30 = ((uint64_t)x28 & 0x3fffffffffffff);
- { uint128_t x31 = (x29 + x23);
- { uint128_t x32 = (x31 >> 0x36);
- { uint64_t x33 = ((uint64_t)x31 & 0x3fffffffffffff);
- { uint128_t x34 = (x32 + x22);
- { uint128_t x35 = (x34 >> 0x36);
- { uint64_t x36 = ((uint64_t)x34 & 0x3fffffffffffff);
- { uint128_t x37 = (x35 + x21);
- { uint64_t x38 = (uint64_t) (x37 >> 0x37);
- { uint64_t x39 = ((uint64_t)x37 & 0x7fffffffffffff);
- { uint128_t x40 = (x38 + x20);
- { uint64_t x41 = (uint64_t) (x40 >> 0x36);
- { uint64_t x42 = ((uint64_t)x40 & 0x3fffffffffffff);
- { uint128_t x43 = (x41 + x19);
- { uint64_t x44 = (uint64_t) (x43 >> 0x36);
- { uint64_t x45 = ((uint64_t)x43 & 0x3fffffffffffff);
- { uint128_t x46 = (x44 + x18);
- { uint64_t x47 = (uint64_t) (x46 >> 0x36);
- { uint64_t x48 = ((uint64_t)x46 & 0x3fffffffffffff);
- { uint128_t x49 = (x47 + x17);
- { uint64_t x50 = (uint64_t) (x49 >> 0x36);
- { uint64_t x51 = ((uint64_t)x49 & 0x3fffffffffffff);
- { uint128_t x52 = (x27 + ((uint128_t)0x11 * x50));
- { uint64_t x53 = (uint64_t) (x52 >> 0x37);
- { uint64_t x54 = ((uint64_t)x52 & 0x7fffffffffffff);
- { uint64_t x55 = (x53 + x30);
- { uint64_t x56 = (x55 >> 0x36);
- { uint64_t x57 = (x55 & 0x3fffffffffffff);
- out[0] = x54;
- out[1] = x57;
- out[2] = (x56 + x33);
- out[3] = x36;
- out[4] = x39;
- out[5] = x42;
- out[6] = x45;
- out[7] = x48;
- out[8] = x51;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e488m17_9limbs/fesquare.v b/src/Specific/solinas64_2e488m17_9limbs/fesquare.v
deleted file mode 100644
index d0eaf0261..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e488m17_9limbs.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/solinas64_2e488m17_9limbs/fesquareDisplay.log b/src/Specific/solinas64_2e488m17_9limbs/fesquareDisplay.log
deleted file mode 100644
index 7698803a0..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x17 = (((uint128_t)x2 * x15) + ((0x2 * ((uint128_t)x4 * x16)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + ((0x2 * ((uint128_t)x16 * x4)) + ((uint128_t)x15 * x2)))))))));
- uint128_t x18 = ((((uint128_t)x2 * x16) + ((0x2 * ((uint128_t)x4 * x14)) + ((0x2 * ((uint128_t)x6 * x12)) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + ((0x2 * ((uint128_t)x12 * x6)) + ((0x2 * ((uint128_t)x14 * x4)) + ((uint128_t)x16 * x2)))))))) + (0x11 * ((uint128_t)x15 * x15)));
- uint128_t x19 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x11 * (((uint128_t)x16 * x15) + ((uint128_t)x15 * x16))));
- uint128_t x20 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x11 * (((uint128_t)x14 * x15) + (((uint128_t)x16 * x16) + ((uint128_t)x15 * x14)))));
- uint128_t x21 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x11 * ((0x2 * ((uint128_t)x12 * x15)) + ((0x2 * ((uint128_t)x14 * x16)) + ((0x2 * ((uint128_t)x16 * x14)) + (0x2 * ((uint128_t)x15 * x12)))))));
- uint128_t x22 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x11 * (((uint128_t)x10 * x15) + ((0x2 * ((uint128_t)x12 * x16)) + ((0x2 * ((uint128_t)x14 * x14)) + ((0x2 * ((uint128_t)x16 * x12)) + ((uint128_t)x15 * x10)))))));
- uint128_t x23 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x11 * (((uint128_t)x8 * x15) + (((uint128_t)x10 * x16) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + (((uint128_t)x16 * x10) + ((uint128_t)x15 * x8))))))));
- uint128_t x24 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x11 * (((uint128_t)x6 * x15) + (((uint128_t)x8 * x16) + (((uint128_t)x10 * x14) + ((0x2 * ((uint128_t)x12 * x12)) + (((uint128_t)x14 * x10) + (((uint128_t)x16 * x8) + ((uint128_t)x15 * x6)))))))));
- uint128_t x25 = (((uint128_t)x2 * x2) + (0x11 * ((0x2 * ((uint128_t)x4 * x15)) + ((0x2 * ((uint128_t)x6 * x16)) + ((0x2 * ((uint128_t)x8 * x14)) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + ((0x2 * ((uint128_t)x14 * x8)) + ((0x2 * ((uint128_t)x16 * x6)) + (0x2 * ((uint128_t)x15 * x4)))))))))));
- uint128_t x26 = (x25 >> 0x37);
- uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffffff);
- uint128_t x28 = (x26 + x24);
- uint128_t x29 = (x28 >> 0x36);
- uint64_t x30 = ((uint64_t)x28 & 0x3fffffffffffff);
- uint128_t x31 = (x29 + x23);
- uint128_t x32 = (x31 >> 0x36);
- uint64_t x33 = ((uint64_t)x31 & 0x3fffffffffffff);
- uint128_t x34 = (x32 + x22);
- uint128_t x35 = (x34 >> 0x36);
- uint64_t x36 = ((uint64_t)x34 & 0x3fffffffffffff);
- uint128_t x37 = (x35 + x21);
- uint64_t x38 = (uint64_t) (x37 >> 0x37);
- uint64_t x39 = ((uint64_t)x37 & 0x7fffffffffffff);
- uint128_t x40 = (x38 + x20);
- uint64_t x41 = (uint64_t) (x40 >> 0x36);
- uint64_t x42 = ((uint64_t)x40 & 0x3fffffffffffff);
- uint128_t x43 = (x41 + x19);
- uint64_t x44 = (uint64_t) (x43 >> 0x36);
- uint64_t x45 = ((uint64_t)x43 & 0x3fffffffffffff);
- uint128_t x46 = (x44 + x18);
- uint64_t x47 = (uint64_t) (x46 >> 0x36);
- uint64_t x48 = ((uint64_t)x46 & 0x3fffffffffffff);
- uint128_t x49 = (x47 + x17);
- uint64_t x50 = (uint64_t) (x49 >> 0x36);
- uint64_t x51 = ((uint64_t)x49 & 0x3fffffffffffff);
- uint128_t x52 = (x27 + ((uint128_t)0x11 * x50));
- uint64_t x53 = (uint64_t) (x52 >> 0x37);
- uint64_t x54 = ((uint64_t)x52 & 0x7fffffffffffff);
- uint64_t x55 = (x53 + x30);
- uint64_t x56 = (x55 >> 0x36);
- uint64_t x57 = (x55 & 0x3fffffffffffff);
- return (Return x51, Return x48, Return x45, Return x42, Return x39, Return x36, (x56 + x33), Return x57, Return x54))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e488m17_9limbs/fesquareDisplay.v b/src/Specific/solinas64_2e488m17_9limbs/fesquareDisplay.v
deleted file mode 100644
index a56748dde..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e488m17_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e488m17_9limbs/fesub.c b/src/Specific/solinas64_2e488m17_9limbs/fesub.c
deleted file mode 100644
index 559c36198..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/fesub.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void fesub(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- out[0] = ((0xffffffffffffde + x5) - x21);
- out[1] = ((0x7ffffffffffffe + x7) - x23);
- out[2] = ((0x7ffffffffffffe + x9) - x25);
- out[3] = ((0x7ffffffffffffe + x11) - x27);
- out[4] = ((0xfffffffffffffe + x13) - x29);
- out[5] = ((0x7ffffffffffffe + x15) - x31);
- out[6] = ((0x7ffffffffffffe + x17) - x33);
- out[7] = ((0x7ffffffffffffe + x19) - x35);
- out[8] = ((0x7ffffffffffffe + x18) - x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e488m17_9limbs/fesub.v b/src/Specific/solinas64_2e488m17_9limbs/fesub.v
deleted file mode 100644
index b039a7e1b..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e488m17_9limbs.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/solinas64_2e488m17_9limbs/fesubDisplay.log b/src/Specific/solinas64_2e488m17_9limbs/fesubDisplay.log
deleted file mode 100644
index a4458e0ce..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- (((0x7ffffffffffffe + x18) - x34), ((0x7ffffffffffffe + x19) - x35), ((0x7ffffffffffffe + x17) - x33), ((0x7ffffffffffffe + x15) - x31), ((0xfffffffffffffe + x13) - x29), ((0x7ffffffffffffe + x11) - x27), ((0x7ffffffffffffe + x9) - x25), ((0x7ffffffffffffe + x7) - x23), ((0xffffffffffffde + x5) - x21)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e488m17_9limbs/fesubDisplay.v b/src/Specific/solinas64_2e488m17_9limbs/fesubDisplay.v
deleted file mode 100644
index 3c996fb2d..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e488m17_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e488m17_9limbs/freeze.c b/src/Specific/solinas64_2e488m17_9limbs/freeze.c
deleted file mode 100644
index 7336ac812..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/freeze.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void freeze(uint64_t out[9], const uint64_t in1[9]) {
- { const uint64_t x15 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffffef);
- { uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x4, 0x3fffffffffffff);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x6, 0x3fffffffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x8, 0x3fffffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x10, 0x7fffffffffffff);
- { uint64_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x12, 0x3fffffffffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x34, Return x14, 0x3fffffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x16, 0x3fffffffffffff);
- { uint64_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x15, 0x3fffffffffffff);
- { uint64_t x44 = cmovznz64(x43, 0x0, 0xffffffffffffffffL);
- { uint64_t x45 = (x44 & 0x7fffffffffffef);
- { uint64_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- { uint64_t x49 = (x44 & 0x3fffffffffffff);
- { uint64_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- { uint64_t x53 = (x44 & 0x3fffffffffffff);
- { uint64_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- { uint64_t x57 = (x44 & 0x3fffffffffffff);
- { uint64_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- { uint64_t x61 = (x44 & 0x7fffffffffffff);
- { uint64_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- { uint64_t x65 = (x44 & 0x3fffffffffffff);
- { uint64_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- { uint64_t x69 = (x44 & 0x3fffffffffffff);
- { uint64_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- { uint64_t x73 = (x44 & 0x3fffffffffffff);
- { uint64_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- { uint64_t x77 = (x44 & 0x3fffffffffffff);
- { uint64_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- out[0] = x47;
- out[1] = x51;
- out[2] = x55;
- out[3] = x59;
- out[4] = x63;
- out[5] = x67;
- out[6] = x71;
- out[7] = x75;
- out[8] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e488m17_9limbs/freeze.v b/src/Specific/solinas64_2e488m17_9limbs/freeze.v
deleted file mode 100644
index 6fd450315..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e488m17_9limbs.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/solinas64_2e488m17_9limbs/freezeDisplay.log b/src/Specific/solinas64_2e488m17_9limbs/freezeDisplay.log
deleted file mode 100644
index 63a5c9a3c..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffffef);
- uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x4, 0x3fffffffffffff);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x6, 0x3fffffffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x8, 0x3fffffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x10, 0x7fffffffffffff);
- uint64_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x12, 0x3fffffffffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x34, Return x14, 0x3fffffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x16, 0x3fffffffffffff);
- uint64_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x15, 0x3fffffffffffff);
- uint64_t x44 = cmovznz64(x43, 0x0, 0xffffffffffffffffL);
- uint64_t x45 = (x44 & 0x7fffffffffffef);
- uint64_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- uint64_t x49 = (x44 & 0x3fffffffffffff);
- uint64_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- uint64_t x53 = (x44 & 0x3fffffffffffff);
- uint64_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- uint64_t x57 = (x44 & 0x3fffffffffffff);
- uint64_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- uint64_t x61 = (x44 & 0x7fffffffffffff);
- uint64_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- uint64_t x65 = (x44 & 0x3fffffffffffff);
- uint64_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- uint64_t x69 = (x44 & 0x3fffffffffffff);
- uint64_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- uint64_t x73 = (x44 & 0x3fffffffffffff);
- uint64_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- uint64_t x77 = (x44 & 0x3fffffffffffff);
- uint64_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- (Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x51, Return x47))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e488m17_9limbs/freezeDisplay.v b/src/Specific/solinas64_2e488m17_9limbs/freezeDisplay.v
deleted file mode 100644
index 1840aa1ee..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e488m17_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e488m17_9limbs/py_interpreter.sh b/src/Specific/solinas64_2e488m17_9limbs/py_interpreter.sh
deleted file mode 100755
index c942d34f9..000000000
--- a/src/Specific/solinas64_2e488m17_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**488 - 17' -Dmodulus_bytes='54 + 2/9' -Da24='121665'
diff --git a/src/Specific/solinas64_2e489m21_10limbs/CurveParameters.v b/src/Specific/solinas64_2e489m21_10limbs/CurveParameters.v
deleted file mode 100644
index 3f284f94f..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^489 - 21
-Base: 48.9
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 48 + 9/10;
- bitwidth := 64;
- s := 2^489;
- c := [(1, 21)];
- carry_chains := Some [seq 0 (pred 10); [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/solinas64_2e489m21_10limbs/Synthesis.v b/src/Specific/solinas64_2e489m21_10limbs/Synthesis.v
deleted file mode 100644
index 93737e25e..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e489m21_10limbs.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/solinas64_2e489m21_10limbs/compiler.sh b/src/Specific/solinas64_2e489m21_10limbs/compiler.sh
deleted file mode 100755
index c171f56af..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,49,49,49,49,49,49,49,49,48}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<489) - 21' "$@"
diff --git a/src/Specific/solinas64_2e489m21_10limbs/compilerxx.sh b/src/Specific/solinas64_2e489m21_10limbs/compilerxx.sh
deleted file mode 100755
index abb47f1f2..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{49,49,49,49,49,49,49,49,49,48}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<489) - 21' "$@"
diff --git a/src/Specific/solinas64_2e489m21_10limbs/feadd.c b/src/Specific/solinas64_2e489m21_10limbs/feadd.c
deleted file mode 100644
index df991e375..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/feadd.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void feadd(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- out[0] = (x5 + x23);
- out[1] = (x7 + x25);
- out[2] = (x9 + x27);
- out[3] = (x11 + x29);
- out[4] = (x13 + x31);
- out[5] = (x15 + x33);
- out[6] = (x17 + x35);
- out[7] = (x19 + x37);
- out[8] = (x21 + x39);
- out[9] = (x20 + x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e489m21_10limbs/feadd.v b/src/Specific/solinas64_2e489m21_10limbs/feadd.v
deleted file mode 100644
index a7eb2ad22..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e489m21_10limbs.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/solinas64_2e489m21_10limbs/feaddDisplay.log b/src/Specific/solinas64_2e489m21_10limbs/feaddDisplay.log
deleted file mode 100644
index 04176128e..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e489m21_10limbs/feaddDisplay.v b/src/Specific/solinas64_2e489m21_10limbs/feaddDisplay.v
deleted file mode 100644
index 347c7cb1e..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e489m21_10limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e489m21_10limbs/fecarry.v b/src/Specific/solinas64_2e489m21_10limbs/fecarry.v
deleted file mode 100644
index e3ae5b31d..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e489m21_10limbs.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/solinas64_2e489m21_10limbs/fecarryDisplay.v b/src/Specific/solinas64_2e489m21_10limbs/fecarryDisplay.v
deleted file mode 100644
index e6ae4adc5..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e489m21_10limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e489m21_10limbs/femul.c b/src/Specific/solinas64_2e489m21_10limbs/femul.c
deleted file mode 100644
index 2b1081e60..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/femul.c
+++ /dev/null
@@ -1,78 +0,0 @@
-static void femul(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- { uint128_t x40 = (((uint128_t)x5 * x38) + (((uint128_t)x7 * x39) + (((uint128_t)x9 * x37) + (((uint128_t)x11 * x35) + (((uint128_t)x13 * x33) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + (((uint128_t)x19 * x27) + (((uint128_t)x21 * x25) + ((uint128_t)x20 * x23))))))))));
- { uint128_t x41 = ((((uint128_t)x5 * x39) + (((uint128_t)x7 * x37) + (((uint128_t)x9 * x35) + (((uint128_t)x11 * x33) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + (((uint128_t)x17 * x27) + (((uint128_t)x19 * x25) + ((uint128_t)x21 * x23))))))))) + (0x15 * (0x2 * ((uint128_t)x20 * x38))));
- { uint128_t x42 = ((((uint128_t)x5 * x37) + (((uint128_t)x7 * x35) + (((uint128_t)x9 * x33) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + ((uint128_t)x19 * x23)))))))) + (0x15 * ((0x2 * ((uint128_t)x21 * x38)) + (0x2 * ((uint128_t)x20 * x39)))));
- { uint128_t x43 = ((((uint128_t)x5 * x35) + (((uint128_t)x7 * x33) + (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + ((uint128_t)x17 * x23))))))) + (0x15 * ((0x2 * ((uint128_t)x19 * x38)) + ((0x2 * ((uint128_t)x21 * x39)) + (0x2 * ((uint128_t)x20 * x37))))));
- { uint128_t x44 = ((((uint128_t)x5 * x33) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + ((uint128_t)x15 * x23)))))) + (0x15 * ((0x2 * ((uint128_t)x17 * x38)) + ((0x2 * ((uint128_t)x19 * x39)) + ((0x2 * ((uint128_t)x21 * x37)) + (0x2 * ((uint128_t)x20 * x35)))))));
- { uint128_t x45 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + ((uint128_t)x13 * x23))))) + (0x15 * ((0x2 * ((uint128_t)x15 * x38)) + ((0x2 * ((uint128_t)x17 * x39)) + ((0x2 * ((uint128_t)x19 * x37)) + ((0x2 * ((uint128_t)x21 * x35)) + (0x2 * ((uint128_t)x20 * x33))))))));
- { uint128_t x46 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)))) + (0x15 * ((0x2 * ((uint128_t)x13 * x38)) + ((0x2 * ((uint128_t)x15 * x39)) + ((0x2 * ((uint128_t)x17 * x37)) + ((0x2 * ((uint128_t)x19 * x35)) + ((0x2 * ((uint128_t)x21 * x33)) + (0x2 * ((uint128_t)x20 * x31)))))))));
- { uint128_t x47 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((uint128_t)x9 * x23))) + (0x15 * ((0x2 * ((uint128_t)x11 * x38)) + ((0x2 * ((uint128_t)x13 * x39)) + ((0x2 * ((uint128_t)x15 * x37)) + ((0x2 * ((uint128_t)x17 * x35)) + ((0x2 * ((uint128_t)x19 * x33)) + ((0x2 * ((uint128_t)x21 * x31)) + (0x2 * ((uint128_t)x20 * x29))))))))));
- { uint128_t x48 = ((((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)) + (0x15 * ((0x2 * ((uint128_t)x9 * x38)) + ((0x2 * ((uint128_t)x11 * x39)) + ((0x2 * ((uint128_t)x13 * x37)) + ((0x2 * ((uint128_t)x15 * x35)) + ((0x2 * ((uint128_t)x17 * x33)) + ((0x2 * ((uint128_t)x19 * x31)) + ((0x2 * ((uint128_t)x21 * x29)) + (0x2 * ((uint128_t)x20 * x27)))))))))));
- { uint128_t x49 = (((uint128_t)x5 * x23) + (0x15 * ((0x2 * ((uint128_t)x7 * x38)) + ((0x2 * ((uint128_t)x9 * x39)) + ((0x2 * ((uint128_t)x11 * x37)) + ((0x2 * ((uint128_t)x13 * x35)) + ((0x2 * ((uint128_t)x15 * x33)) + ((0x2 * ((uint128_t)x17 * x31)) + ((0x2 * ((uint128_t)x19 * x29)) + ((0x2 * ((uint128_t)x21 * x27)) + (0x2 * ((uint128_t)x20 * x25))))))))))));
- { uint64_t x50 = (uint64_t) (x49 >> 0x31);
- { uint64_t x51 = ((uint64_t)x49 & 0x1ffffffffffff);
- { uint128_t x52 = (x50 + x48);
- { uint64_t x53 = (uint64_t) (x52 >> 0x31);
- { uint64_t x54 = ((uint64_t)x52 & 0x1ffffffffffff);
- { uint128_t x55 = (x53 + x47);
- { uint64_t x56 = (uint64_t) (x55 >> 0x31);
- { uint64_t x57 = ((uint64_t)x55 & 0x1ffffffffffff);
- { uint128_t x58 = (x56 + x46);
- { uint64_t x59 = (uint64_t) (x58 >> 0x31);
- { uint64_t x60 = ((uint64_t)x58 & 0x1ffffffffffff);
- { uint128_t x61 = (x59 + x45);
- { uint64_t x62 = (uint64_t) (x61 >> 0x31);
- { uint64_t x63 = ((uint64_t)x61 & 0x1ffffffffffff);
- { uint128_t x64 = (x62 + x44);
- { uint64_t x65 = (uint64_t) (x64 >> 0x31);
- { uint64_t x66 = ((uint64_t)x64 & 0x1ffffffffffff);
- { uint128_t x67 = (x65 + x43);
- { uint64_t x68 = (uint64_t) (x67 >> 0x31);
- { uint64_t x69 = ((uint64_t)x67 & 0x1ffffffffffff);
- { uint128_t x70 = (x68 + x42);
- { uint64_t x71 = (uint64_t) (x70 >> 0x31);
- { uint64_t x72 = ((uint64_t)x70 & 0x1ffffffffffff);
- { uint128_t x73 = (x71 + x41);
- { uint64_t x74 = (uint64_t) (x73 >> 0x31);
- { uint64_t x75 = ((uint64_t)x73 & 0x1ffffffffffff);
- { uint128_t x76 = (x74 + x40);
- { uint64_t x77 = (uint64_t) (x76 >> 0x30);
- { uint64_t x78 = ((uint64_t)x76 & 0xffffffffffff);
- { uint64_t x79 = (x51 + (0x15 * x77));
- { uint64_t x80 = (x79 >> 0x31);
- { uint64_t x81 = (x79 & 0x1ffffffffffff);
- { uint64_t x82 = (x80 + x54);
- { uint64_t x83 = (x82 >> 0x31);
- { uint64_t x84 = (x82 & 0x1ffffffffffff);
- out[0] = x81;
- out[1] = x84;
- out[2] = (x83 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e489m21_10limbs/femul.v b/src/Specific/solinas64_2e489m21_10limbs/femul.v
deleted file mode 100644
index 5e8d4dd75..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e489m21_10limbs.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/solinas64_2e489m21_10limbs/femulDisplay.log b/src/Specific/solinas64_2e489m21_10limbs/femulDisplay.log
deleted file mode 100644
index cbbdf9d02..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/femulDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- uint128_t x40 = (((uint128_t)x5 * x38) + (((uint128_t)x7 * x39) + (((uint128_t)x9 * x37) + (((uint128_t)x11 * x35) + (((uint128_t)x13 * x33) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + (((uint128_t)x19 * x27) + (((uint128_t)x21 * x25) + ((uint128_t)x20 * x23))))))))));
- uint128_t x41 = ((((uint128_t)x5 * x39) + (((uint128_t)x7 * x37) + (((uint128_t)x9 * x35) + (((uint128_t)x11 * x33) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + (((uint128_t)x17 * x27) + (((uint128_t)x19 * x25) + ((uint128_t)x21 * x23))))))))) + (0x15 * (0x2 * ((uint128_t)x20 * x38))));
- uint128_t x42 = ((((uint128_t)x5 * x37) + (((uint128_t)x7 * x35) + (((uint128_t)x9 * x33) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + ((uint128_t)x19 * x23)))))))) + (0x15 * ((0x2 * ((uint128_t)x21 * x38)) + (0x2 * ((uint128_t)x20 * x39)))));
- uint128_t x43 = ((((uint128_t)x5 * x35) + (((uint128_t)x7 * x33) + (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + ((uint128_t)x17 * x23))))))) + (0x15 * ((0x2 * ((uint128_t)x19 * x38)) + ((0x2 * ((uint128_t)x21 * x39)) + (0x2 * ((uint128_t)x20 * x37))))));
- uint128_t x44 = ((((uint128_t)x5 * x33) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + ((uint128_t)x15 * x23)))))) + (0x15 * ((0x2 * ((uint128_t)x17 * x38)) + ((0x2 * ((uint128_t)x19 * x39)) + ((0x2 * ((uint128_t)x21 * x37)) + (0x2 * ((uint128_t)x20 * x35)))))));
- uint128_t x45 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + ((uint128_t)x13 * x23))))) + (0x15 * ((0x2 * ((uint128_t)x15 * x38)) + ((0x2 * ((uint128_t)x17 * x39)) + ((0x2 * ((uint128_t)x19 * x37)) + ((0x2 * ((uint128_t)x21 * x35)) + (0x2 * ((uint128_t)x20 * x33))))))));
- uint128_t x46 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)))) + (0x15 * ((0x2 * ((uint128_t)x13 * x38)) + ((0x2 * ((uint128_t)x15 * x39)) + ((0x2 * ((uint128_t)x17 * x37)) + ((0x2 * ((uint128_t)x19 * x35)) + ((0x2 * ((uint128_t)x21 * x33)) + (0x2 * ((uint128_t)x20 * x31)))))))));
- uint128_t x47 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + ((uint128_t)x9 * x23))) + (0x15 * ((0x2 * ((uint128_t)x11 * x38)) + ((0x2 * ((uint128_t)x13 * x39)) + ((0x2 * ((uint128_t)x15 * x37)) + ((0x2 * ((uint128_t)x17 * x35)) + ((0x2 * ((uint128_t)x19 * x33)) + ((0x2 * ((uint128_t)x21 * x31)) + (0x2 * ((uint128_t)x20 * x29))))))))));
- uint128_t x48 = ((((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)) + (0x15 * ((0x2 * ((uint128_t)x9 * x38)) + ((0x2 * ((uint128_t)x11 * x39)) + ((0x2 * ((uint128_t)x13 * x37)) + ((0x2 * ((uint128_t)x15 * x35)) + ((0x2 * ((uint128_t)x17 * x33)) + ((0x2 * ((uint128_t)x19 * x31)) + ((0x2 * ((uint128_t)x21 * x29)) + (0x2 * ((uint128_t)x20 * x27)))))))))));
- uint128_t x49 = (((uint128_t)x5 * x23) + (0x15 * ((0x2 * ((uint128_t)x7 * x38)) + ((0x2 * ((uint128_t)x9 * x39)) + ((0x2 * ((uint128_t)x11 * x37)) + ((0x2 * ((uint128_t)x13 * x35)) + ((0x2 * ((uint128_t)x15 * x33)) + ((0x2 * ((uint128_t)x17 * x31)) + ((0x2 * ((uint128_t)x19 * x29)) + ((0x2 * ((uint128_t)x21 * x27)) + (0x2 * ((uint128_t)x20 * x25))))))))))));
- uint64_t x50 = (uint64_t) (x49 >> 0x31);
- uint64_t x51 = ((uint64_t)x49 & 0x1ffffffffffff);
- uint128_t x52 = (x50 + x48);
- uint64_t x53 = (uint64_t) (x52 >> 0x31);
- uint64_t x54 = ((uint64_t)x52 & 0x1ffffffffffff);
- uint128_t x55 = (x53 + x47);
- uint64_t x56 = (uint64_t) (x55 >> 0x31);
- uint64_t x57 = ((uint64_t)x55 & 0x1ffffffffffff);
- uint128_t x58 = (x56 + x46);
- uint64_t x59 = (uint64_t) (x58 >> 0x31);
- uint64_t x60 = ((uint64_t)x58 & 0x1ffffffffffff);
- uint128_t x61 = (x59 + x45);
- uint64_t x62 = (uint64_t) (x61 >> 0x31);
- uint64_t x63 = ((uint64_t)x61 & 0x1ffffffffffff);
- uint128_t x64 = (x62 + x44);
- uint64_t x65 = (uint64_t) (x64 >> 0x31);
- uint64_t x66 = ((uint64_t)x64 & 0x1ffffffffffff);
- uint128_t x67 = (x65 + x43);
- uint64_t x68 = (uint64_t) (x67 >> 0x31);
- uint64_t x69 = ((uint64_t)x67 & 0x1ffffffffffff);
- uint128_t x70 = (x68 + x42);
- uint64_t x71 = (uint64_t) (x70 >> 0x31);
- uint64_t x72 = ((uint64_t)x70 & 0x1ffffffffffff);
- uint128_t x73 = (x71 + x41);
- uint64_t x74 = (uint64_t) (x73 >> 0x31);
- uint64_t x75 = ((uint64_t)x73 & 0x1ffffffffffff);
- uint128_t x76 = (x74 + x40);
- uint64_t x77 = (uint64_t) (x76 >> 0x30);
- uint64_t x78 = ((uint64_t)x76 & 0xffffffffffff);
- uint64_t x79 = (x51 + (0x15 * x77));
- uint64_t x80 = (x79 >> 0x31);
- uint64_t x81 = (x79 & 0x1ffffffffffff);
- uint64_t x82 = (x80 + x54);
- uint64_t x83 = (x82 >> 0x31);
- uint64_t x84 = (x82 & 0x1ffffffffffff);
- return (Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x83 + x57), Return x84, Return x81))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e489m21_10limbs/femulDisplay.v b/src/Specific/solinas64_2e489m21_10limbs/femulDisplay.v
deleted file mode 100644
index 3b0b47d0f..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e489m21_10limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e489m21_10limbs/fesquare.c b/src/Specific/solinas64_2e489m21_10limbs/fesquare.c
deleted file mode 100644
index 5b01941f1..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/fesquare.c
+++ /dev/null
@@ -1,68 +0,0 @@
-static void fesquare(uint64_t out[10], const uint64_t in1[10]) {
- { const uint64_t x17 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x19 = (((uint128_t)x2 * x17) + (((uint128_t)x4 * x18) + (((uint128_t)x6 * x16) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + (((uint128_t)x16 * x6) + (((uint128_t)x18 * x4) + ((uint128_t)x17 * x2))))))))));
- { uint128_t x20 = ((((uint128_t)x2 * x18) + (((uint128_t)x4 * x16) + (((uint128_t)x6 * x14) + (((uint128_t)x8 * x12) + (((uint128_t)x10 * x10) + (((uint128_t)x12 * x8) + (((uint128_t)x14 * x6) + (((uint128_t)x16 * x4) + ((uint128_t)x18 * x2))))))))) + (0x15 * (0x2 * ((uint128_t)x17 * x17))));
- { uint128_t x21 = ((((uint128_t)x2 * x16) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x16 * x2)))))))) + (0x15 * ((0x2 * ((uint128_t)x18 * x17)) + (0x2 * ((uint128_t)x17 * x18)))));
- { uint128_t x22 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x15 * ((0x2 * ((uint128_t)x16 * x17)) + ((0x2 * ((uint128_t)x18 * x18)) + (0x2 * ((uint128_t)x17 * x16))))));
- { uint128_t x23 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x15 * ((0x2 * ((uint128_t)x14 * x17)) + ((0x2 * ((uint128_t)x16 * x18)) + ((0x2 * ((uint128_t)x18 * x16)) + (0x2 * ((uint128_t)x17 * x14)))))));
- { uint128_t x24 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x15 * ((0x2 * ((uint128_t)x12 * x17)) + ((0x2 * ((uint128_t)x14 * x18)) + ((0x2 * ((uint128_t)x16 * x16)) + ((0x2 * ((uint128_t)x18 * x14)) + (0x2 * ((uint128_t)x17 * x12))))))));
- { uint128_t x25 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x15 * ((0x2 * ((uint128_t)x10 * x17)) + ((0x2 * ((uint128_t)x12 * x18)) + ((0x2 * ((uint128_t)x14 * x16)) + ((0x2 * ((uint128_t)x16 * x14)) + ((0x2 * ((uint128_t)x18 * x12)) + (0x2 * ((uint128_t)x17 * x10)))))))));
- { uint128_t x26 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x15 * ((0x2 * ((uint128_t)x8 * x17)) + ((0x2 * ((uint128_t)x10 * x18)) + ((0x2 * ((uint128_t)x12 * x16)) + ((0x2 * ((uint128_t)x14 * x14)) + ((0x2 * ((uint128_t)x16 * x12)) + ((0x2 * ((uint128_t)x18 * x10)) + (0x2 * ((uint128_t)x17 * x8))))))))));
- { uint128_t x27 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x15 * ((0x2 * ((uint128_t)x6 * x17)) + ((0x2 * ((uint128_t)x8 * x18)) + ((0x2 * ((uint128_t)x10 * x16)) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + ((0x2 * ((uint128_t)x16 * x10)) + ((0x2 * ((uint128_t)x18 * x8)) + (0x2 * ((uint128_t)x17 * x6)))))))))));
- { uint128_t x28 = (((uint128_t)x2 * x2) + (0x15 * ((0x2 * ((uint128_t)x4 * x17)) + ((0x2 * ((uint128_t)x6 * x18)) + ((0x2 * ((uint128_t)x8 * x16)) + ((0x2 * ((uint128_t)x10 * x14)) + ((0x2 * ((uint128_t)x12 * x12)) + ((0x2 * ((uint128_t)x14 * x10)) + ((0x2 * ((uint128_t)x16 * x8)) + ((0x2 * ((uint128_t)x18 * x6)) + (0x2 * ((uint128_t)x17 * x4))))))))))));
- { uint64_t x29 = (uint64_t) (x28 >> 0x31);
- { uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffffff);
- { uint128_t x31 = (x29 + x27);
- { uint64_t x32 = (uint64_t) (x31 >> 0x31);
- { uint64_t x33 = ((uint64_t)x31 & 0x1ffffffffffff);
- { uint128_t x34 = (x32 + x26);
- { uint64_t x35 = (uint64_t) (x34 >> 0x31);
- { uint64_t x36 = ((uint64_t)x34 & 0x1ffffffffffff);
- { uint128_t x37 = (x35 + x25);
- { uint64_t x38 = (uint64_t) (x37 >> 0x31);
- { uint64_t x39 = ((uint64_t)x37 & 0x1ffffffffffff);
- { uint128_t x40 = (x38 + x24);
- { uint64_t x41 = (uint64_t) (x40 >> 0x31);
- { uint64_t x42 = ((uint64_t)x40 & 0x1ffffffffffff);
- { uint128_t x43 = (x41 + x23);
- { uint64_t x44 = (uint64_t) (x43 >> 0x31);
- { uint64_t x45 = ((uint64_t)x43 & 0x1ffffffffffff);
- { uint128_t x46 = (x44 + x22);
- { uint64_t x47 = (uint64_t) (x46 >> 0x31);
- { uint64_t x48 = ((uint64_t)x46 & 0x1ffffffffffff);
- { uint128_t x49 = (x47 + x21);
- { uint64_t x50 = (uint64_t) (x49 >> 0x31);
- { uint64_t x51 = ((uint64_t)x49 & 0x1ffffffffffff);
- { uint128_t x52 = (x50 + x20);
- { uint64_t x53 = (uint64_t) (x52 >> 0x31);
- { uint64_t x54 = ((uint64_t)x52 & 0x1ffffffffffff);
- { uint128_t x55 = (x53 + x19);
- { uint64_t x56 = (uint64_t) (x55 >> 0x30);
- { uint64_t x57 = ((uint64_t)x55 & 0xffffffffffff);
- { uint64_t x58 = (x30 + (0x15 * x56));
- { uint64_t x59 = (x58 >> 0x31);
- { uint64_t x60 = (x58 & 0x1ffffffffffff);
- { uint64_t x61 = (x59 + x33);
- { uint64_t x62 = (x61 >> 0x31);
- { uint64_t x63 = (x61 & 0x1ffffffffffff);
- out[0] = x60;
- out[1] = x63;
- out[2] = (x62 + x36);
- out[3] = x39;
- out[4] = x42;
- out[5] = x45;
- out[6] = x48;
- out[7] = x51;
- out[8] = x54;
- out[9] = x57;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e489m21_10limbs/fesquare.v b/src/Specific/solinas64_2e489m21_10limbs/fesquare.v
deleted file mode 100644
index fa462774f..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e489m21_10limbs.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/solinas64_2e489m21_10limbs/fesquareDisplay.log b/src/Specific/solinas64_2e489m21_10limbs/fesquareDisplay.log
deleted file mode 100644
index b6a6990b4..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x19 = (((uint128_t)x2 * x17) + (((uint128_t)x4 * x18) + (((uint128_t)x6 * x16) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + (((uint128_t)x16 * x6) + (((uint128_t)x18 * x4) + ((uint128_t)x17 * x2))))))))));
- uint128_t x20 = ((((uint128_t)x2 * x18) + (((uint128_t)x4 * x16) + (((uint128_t)x6 * x14) + (((uint128_t)x8 * x12) + (((uint128_t)x10 * x10) + (((uint128_t)x12 * x8) + (((uint128_t)x14 * x6) + (((uint128_t)x16 * x4) + ((uint128_t)x18 * x2))))))))) + (0x15 * (0x2 * ((uint128_t)x17 * x17))));
- uint128_t x21 = ((((uint128_t)x2 * x16) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x16 * x2)))))))) + (0x15 * ((0x2 * ((uint128_t)x18 * x17)) + (0x2 * ((uint128_t)x17 * x18)))));
- uint128_t x22 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x15 * ((0x2 * ((uint128_t)x16 * x17)) + ((0x2 * ((uint128_t)x18 * x18)) + (0x2 * ((uint128_t)x17 * x16))))));
- uint128_t x23 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x15 * ((0x2 * ((uint128_t)x14 * x17)) + ((0x2 * ((uint128_t)x16 * x18)) + ((0x2 * ((uint128_t)x18 * x16)) + (0x2 * ((uint128_t)x17 * x14)))))));
- uint128_t x24 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x15 * ((0x2 * ((uint128_t)x12 * x17)) + ((0x2 * ((uint128_t)x14 * x18)) + ((0x2 * ((uint128_t)x16 * x16)) + ((0x2 * ((uint128_t)x18 * x14)) + (0x2 * ((uint128_t)x17 * x12))))))));
- uint128_t x25 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x15 * ((0x2 * ((uint128_t)x10 * x17)) + ((0x2 * ((uint128_t)x12 * x18)) + ((0x2 * ((uint128_t)x14 * x16)) + ((0x2 * ((uint128_t)x16 * x14)) + ((0x2 * ((uint128_t)x18 * x12)) + (0x2 * ((uint128_t)x17 * x10)))))))));
- uint128_t x26 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x15 * ((0x2 * ((uint128_t)x8 * x17)) + ((0x2 * ((uint128_t)x10 * x18)) + ((0x2 * ((uint128_t)x12 * x16)) + ((0x2 * ((uint128_t)x14 * x14)) + ((0x2 * ((uint128_t)x16 * x12)) + ((0x2 * ((uint128_t)x18 * x10)) + (0x2 * ((uint128_t)x17 * x8))))))))));
- uint128_t x27 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x15 * ((0x2 * ((uint128_t)x6 * x17)) + ((0x2 * ((uint128_t)x8 * x18)) + ((0x2 * ((uint128_t)x10 * x16)) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + ((0x2 * ((uint128_t)x16 * x10)) + ((0x2 * ((uint128_t)x18 * x8)) + (0x2 * ((uint128_t)x17 * x6)))))))))));
- uint128_t x28 = (((uint128_t)x2 * x2) + (0x15 * ((0x2 * ((uint128_t)x4 * x17)) + ((0x2 * ((uint128_t)x6 * x18)) + ((0x2 * ((uint128_t)x8 * x16)) + ((0x2 * ((uint128_t)x10 * x14)) + ((0x2 * ((uint128_t)x12 * x12)) + ((0x2 * ((uint128_t)x14 * x10)) + ((0x2 * ((uint128_t)x16 * x8)) + ((0x2 * ((uint128_t)x18 * x6)) + (0x2 * ((uint128_t)x17 * x4))))))))))));
- uint64_t x29 = (uint64_t) (x28 >> 0x31);
- uint64_t x30 = ((uint64_t)x28 & 0x1ffffffffffff);
- uint128_t x31 = (x29 + x27);
- uint64_t x32 = (uint64_t) (x31 >> 0x31);
- uint64_t x33 = ((uint64_t)x31 & 0x1ffffffffffff);
- uint128_t x34 = (x32 + x26);
- uint64_t x35 = (uint64_t) (x34 >> 0x31);
- uint64_t x36 = ((uint64_t)x34 & 0x1ffffffffffff);
- uint128_t x37 = (x35 + x25);
- uint64_t x38 = (uint64_t) (x37 >> 0x31);
- uint64_t x39 = ((uint64_t)x37 & 0x1ffffffffffff);
- uint128_t x40 = (x38 + x24);
- uint64_t x41 = (uint64_t) (x40 >> 0x31);
- uint64_t x42 = ((uint64_t)x40 & 0x1ffffffffffff);
- uint128_t x43 = (x41 + x23);
- uint64_t x44 = (uint64_t) (x43 >> 0x31);
- uint64_t x45 = ((uint64_t)x43 & 0x1ffffffffffff);
- uint128_t x46 = (x44 + x22);
- uint64_t x47 = (uint64_t) (x46 >> 0x31);
- uint64_t x48 = ((uint64_t)x46 & 0x1ffffffffffff);
- uint128_t x49 = (x47 + x21);
- uint64_t x50 = (uint64_t) (x49 >> 0x31);
- uint64_t x51 = ((uint64_t)x49 & 0x1ffffffffffff);
- uint128_t x52 = (x50 + x20);
- uint64_t x53 = (uint64_t) (x52 >> 0x31);
- uint64_t x54 = ((uint64_t)x52 & 0x1ffffffffffff);
- uint128_t x55 = (x53 + x19);
- uint64_t x56 = (uint64_t) (x55 >> 0x30);
- uint64_t x57 = ((uint64_t)x55 & 0xffffffffffff);
- uint64_t x58 = (x30 + (0x15 * x56));
- uint64_t x59 = (x58 >> 0x31);
- uint64_t x60 = (x58 & 0x1ffffffffffff);
- uint64_t x61 = (x59 + x33);
- uint64_t x62 = (x61 >> 0x31);
- uint64_t x63 = (x61 & 0x1ffffffffffff);
- return (Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, Return x39, (x62 + x36), Return x63, Return x60))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e489m21_10limbs/fesquareDisplay.v b/src/Specific/solinas64_2e489m21_10limbs/fesquareDisplay.v
deleted file mode 100644
index b09751ac1..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e489m21_10limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e489m21_10limbs/fesub.c b/src/Specific/solinas64_2e489m21_10limbs/fesub.c
deleted file mode 100644
index f1b598466..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/fesub.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fesub(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- out[0] = ((0x3ffffffffffd6 + x5) - x23);
- out[1] = ((0x3fffffffffffe + x7) - x25);
- out[2] = ((0x3fffffffffffe + x9) - x27);
- out[3] = ((0x3fffffffffffe + x11) - x29);
- out[4] = ((0x3fffffffffffe + x13) - x31);
- out[5] = ((0x3fffffffffffe + x15) - x33);
- out[6] = ((0x3fffffffffffe + x17) - x35);
- out[7] = ((0x3fffffffffffe + x19) - x37);
- out[8] = ((0x3fffffffffffe + x21) - x39);
- out[9] = ((0x1fffffffffffe + x20) - x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e489m21_10limbs/fesub.v b/src/Specific/solinas64_2e489m21_10limbs/fesub.v
deleted file mode 100644
index b6548ad02..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e489m21_10limbs.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/solinas64_2e489m21_10limbs/fesubDisplay.log b/src/Specific/solinas64_2e489m21_10limbs/fesubDisplay.log
deleted file mode 100644
index b53bb1270..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- (((0x1fffffffffffe + x20) - x38), ((0x3fffffffffffe + x21) - x39), ((0x3fffffffffffe + x19) - x37), ((0x3fffffffffffe + x17) - x35), ((0x3fffffffffffe + x15) - x33), ((0x3fffffffffffe + x13) - x31), ((0x3fffffffffffe + x11) - x29), ((0x3fffffffffffe + x9) - x27), ((0x3fffffffffffe + x7) - x25), ((0x3ffffffffffd6 + x5) - x23)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e489m21_10limbs/fesubDisplay.v b/src/Specific/solinas64_2e489m21_10limbs/fesubDisplay.v
deleted file mode 100644
index 00d6ed812..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e489m21_10limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e489m21_10limbs/freeze.c b/src/Specific/solinas64_2e489m21_10limbs/freeze.c
deleted file mode 100644
index d3cc1357e..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/freeze.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void freeze(uint64_t out[10], const uint64_t in1[10]) {
- { const uint64_t x17 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffffffffeb);
- { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x4, 0x1ffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x6, 0x1ffffffffffff);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x8, 0x1ffffffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x10, 0x1ffffffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x12, 0x1ffffffffffff);
- { uint64_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x14, 0x1ffffffffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x39, Return x16, 0x1ffffffffffff);
- { uint64_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x18, 0x1ffffffffffff);
- { uint64_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x17, 0xffffffffffff);
- { uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL);
- { uint64_t x50 = (x49 & 0x1ffffffffffeb);
- { uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- { uint64_t x54 = (x49 & 0x1ffffffffffff);
- { uint64_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- { uint64_t x58 = (x49 & 0x1ffffffffffff);
- { uint64_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- { uint64_t x62 = (x49 & 0x1ffffffffffff);
- { uint64_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- { uint64_t x66 = (x49 & 0x1ffffffffffff);
- { uint64_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- { uint64_t x70 = (x49 & 0x1ffffffffffff);
- { uint64_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- { uint64_t x74 = (x49 & 0x1ffffffffffff);
- { uint64_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- { uint64_t x78 = (x49 & 0x1ffffffffffff);
- { uint64_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- { uint64_t x82 = (x49 & 0x1ffffffffffff);
- { uint64_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- { uint64_t x86 = (x49 & 0xffffffffffff);
- { uint64_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- out[0] = x52;
- out[1] = x56;
- out[2] = x60;
- out[3] = x64;
- out[4] = x68;
- out[5] = x72;
- out[6] = x76;
- out[7] = x80;
- out[8] = x84;
- out[9] = x88;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e489m21_10limbs/freeze.v b/src/Specific/solinas64_2e489m21_10limbs/freeze.v
deleted file mode 100644
index 354821b2f..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e489m21_10limbs.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/solinas64_2e489m21_10limbs/freezeDisplay.log b/src/Specific/solinas64_2e489m21_10limbs/freezeDisplay.log
deleted file mode 100644
index 75d1da1b6..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1ffffffffffeb);
- uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x4, 0x1ffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x6, 0x1ffffffffffff);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x8, 0x1ffffffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x10, 0x1ffffffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x12, 0x1ffffffffffff);
- uint64_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x14, 0x1ffffffffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x39, Return x16, 0x1ffffffffffff);
- uint64_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x18, 0x1ffffffffffff);
- uint64_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x17, 0xffffffffffff);
- uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL);
- uint64_t x50 = (x49 & 0x1ffffffffffeb);
- uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- uint64_t x54 = (x49 & 0x1ffffffffffff);
- uint64_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- uint64_t x58 = (x49 & 0x1ffffffffffff);
- uint64_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- uint64_t x62 = (x49 & 0x1ffffffffffff);
- uint64_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- uint64_t x66 = (x49 & 0x1ffffffffffff);
- uint64_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- uint64_t x70 = (x49 & 0x1ffffffffffff);
- uint64_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- uint64_t x74 = (x49 & 0x1ffffffffffff);
- uint64_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- uint64_t x78 = (x49 & 0x1ffffffffffff);
- uint64_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- uint64_t x82 = (x49 & 0x1ffffffffffff);
- uint64_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- uint64_t x86 = (x49 & 0xffffffffffff);
- uint64_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 48 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- (Return x88, Return x84, Return x80, Return x76, Return x72, Return x68, Return x64, Return x60, Return x56, Return x52))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e489m21_10limbs/freezeDisplay.v b/src/Specific/solinas64_2e489m21_10limbs/freezeDisplay.v
deleted file mode 100644
index 165748f9c..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e489m21_10limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e489m21_10limbs/py_interpreter.sh b/src/Specific/solinas64_2e489m21_10limbs/py_interpreter.sh
deleted file mode 100755
index 729cdb4f4..000000000
--- a/src/Specific/solinas64_2e489m21_10limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**489 - 21' -Dmodulus_bytes='48.9' -Da24='121665'
diff --git a/src/Specific/solinas64_2e489m21_9limbs/CurveParameters.v b/src/Specific/solinas64_2e489m21_9limbs/CurveParameters.v
deleted file mode 100644
index 31010d631..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^489 - 21
-Base: 54 + 1/3
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 54 + 1/3;
- bitwidth := 64;
- s := 2^489;
- c := [(1, 21)];
- carry_chains := Some [seq 0 (pred 9); [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/solinas64_2e489m21_9limbs/Synthesis.v b/src/Specific/solinas64_2e489m21_9limbs/Synthesis.v
deleted file mode 100644
index 838d1d94d..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e489m21_9limbs.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/solinas64_2e489m21_9limbs/compiler.sh b/src/Specific/solinas64_2e489m21_9limbs/compiler.sh
deleted file mode 100755
index d5d3b4546..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,54,54,55,54,54,55,54,54}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<489) - 21' "$@"
diff --git a/src/Specific/solinas64_2e489m21_9limbs/compilerxx.sh b/src/Specific/solinas64_2e489m21_9limbs/compilerxx.sh
deleted file mode 100755
index 16145fc9e..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,54,54,55,54,54,55,54,54}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xeb}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<489) - 21' "$@"
diff --git a/src/Specific/solinas64_2e489m21_9limbs/feadd.c b/src/Specific/solinas64_2e489m21_9limbs/feadd.c
deleted file mode 100644
index 98ab4434c..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e489m21_9limbs/feadd.v b/src/Specific/solinas64_2e489m21_9limbs/feadd.v
deleted file mode 100644
index 411f1e409..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e489m21_9limbs.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/solinas64_2e489m21_9limbs/feaddDisplay.log b/src/Specific/solinas64_2e489m21_9limbs/feaddDisplay.log
deleted file mode 100644
index 3b92b1c5c..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e489m21_9limbs/feaddDisplay.v b/src/Specific/solinas64_2e489m21_9limbs/feaddDisplay.v
deleted file mode 100644
index 771181029..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e489m21_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e489m21_9limbs/fecarry.v b/src/Specific/solinas64_2e489m21_9limbs/fecarry.v
deleted file mode 100644
index cd36f29d9..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e489m21_9limbs.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/solinas64_2e489m21_9limbs/fecarryDisplay.v b/src/Specific/solinas64_2e489m21_9limbs/fecarryDisplay.v
deleted file mode 100644
index d999a7da1..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e489m21_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e489m21_9limbs/femul.c b/src/Specific/solinas64_2e489m21_9limbs/femul.c
deleted file mode 100644
index 28f7e7869..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/femul.c
+++ /dev/null
@@ -1,71 +0,0 @@
-static void femul(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- { uint128_t x36 = (((uint128_t)x5 * x34) + ((0x2 * ((uint128_t)x7 * x35)) + (((uint128_t)x9 * x33) + (((uint128_t)x11 * x31) + ((0x2 * ((uint128_t)x13 * x29)) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + ((0x2 * ((uint128_t)x19 * x23)) + ((uint128_t)x18 * x21)))))))));
- { uint128_t x37 = ((((uint128_t)x5 * x35) + (((uint128_t)x7 * x33) + (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + (((uint128_t)x17 * x23) + ((uint128_t)x19 * x21)))))))) + (0x15 * ((uint128_t)x18 * x34)));
- { uint128_t x38 = ((((uint128_t)x5 * x33) + ((0x2 * ((uint128_t)x7 * x31)) + ((0x2 * ((uint128_t)x9 * x29)) + (((uint128_t)x11 * x27) + ((0x2 * ((uint128_t)x13 * x25)) + ((0x2 * ((uint128_t)x15 * x23)) + ((uint128_t)x17 * x21))))))) + (0x15 * ((0x2 * ((uint128_t)x19 * x34)) + (0x2 * ((uint128_t)x18 * x35)))));
- { uint128_t x39 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + ((0x2 * ((uint128_t)x13 * x23)) + ((uint128_t)x15 * x21)))))) + (0x15 * (((uint128_t)x17 * x34) + ((0x2 * ((uint128_t)x19 * x35)) + ((uint128_t)x18 * x33)))));
- { uint128_t x40 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + ((uint128_t)x13 * x21))))) + (0x15 * (((uint128_t)x15 * x34) + (((uint128_t)x17 * x35) + (((uint128_t)x19 * x33) + ((uint128_t)x18 * x31))))));
- { uint128_t x41 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + ((uint128_t)x11 * x21)))) + (0x15 * ((0x2 * ((uint128_t)x13 * x34)) + ((0x2 * ((uint128_t)x15 * x35)) + (((uint128_t)x17 * x33) + ((0x2 * ((uint128_t)x19 * x31)) + (0x2 * ((uint128_t)x18 * x29))))))));
- { uint128_t x42 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((uint128_t)x9 * x21))) + (0x15 * (((uint128_t)x11 * x34) + ((0x2 * ((uint128_t)x13 * x35)) + (((uint128_t)x15 * x33) + (((uint128_t)x17 * x31) + ((0x2 * ((uint128_t)x19 * x29)) + ((uint128_t)x18 * x27))))))));
- { uint128_t x43 = ((((uint128_t)x5 * x23) + ((uint128_t)x7 * x21)) + (0x15 * (((uint128_t)x9 * x34) + (((uint128_t)x11 * x35) + (((uint128_t)x13 * x33) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + (((uint128_t)x19 * x27) + ((uint128_t)x18 * x25)))))))));
- { uint128_t x44 = (((uint128_t)x5 * x21) + (0x15 * ((0x2 * ((uint128_t)x7 * x34)) + ((0x2 * ((uint128_t)x9 * x35)) + (((uint128_t)x11 * x33) + ((0x2 * ((uint128_t)x13 * x31)) + ((0x2 * ((uint128_t)x15 * x29)) + (((uint128_t)x17 * x27) + ((0x2 * ((uint128_t)x19 * x25)) + (0x2 * ((uint128_t)x18 * x23)))))))))));
- { uint128_t x45 = (x44 >> 0x37);
- { uint64_t x46 = ((uint64_t)x44 & 0x7fffffffffffff);
- { uint128_t x47 = (x45 + x43);
- { uint128_t x48 = (x47 >> 0x36);
- { uint64_t x49 = ((uint64_t)x47 & 0x3fffffffffffff);
- { uint128_t x50 = (x48 + x42);
- { uint128_t x51 = (x50 >> 0x36);
- { uint64_t x52 = ((uint64_t)x50 & 0x3fffffffffffff);
- { uint128_t x53 = (x51 + x41);
- { uint128_t x54 = (x53 >> 0x37);
- { uint64_t x55 = ((uint64_t)x53 & 0x7fffffffffffff);
- { uint128_t x56 = (x54 + x40);
- { uint128_t x57 = (x56 >> 0x36);
- { uint64_t x58 = ((uint64_t)x56 & 0x3fffffffffffff);
- { uint128_t x59 = (x57 + x39);
- { uint128_t x60 = (x59 >> 0x36);
- { uint64_t x61 = ((uint64_t)x59 & 0x3fffffffffffff);
- { uint128_t x62 = (x60 + x38);
- { uint64_t x63 = (uint64_t) (x62 >> 0x37);
- { uint64_t x64 = ((uint64_t)x62 & 0x7fffffffffffff);
- { uint128_t x65 = (x63 + x37);
- { uint64_t x66 = (uint64_t) (x65 >> 0x36);
- { uint64_t x67 = ((uint64_t)x65 & 0x3fffffffffffff);
- { uint128_t x68 = (x66 + x36);
- { uint64_t x69 = (uint64_t) (x68 >> 0x36);
- { uint64_t x70 = ((uint64_t)x68 & 0x3fffffffffffff);
- { uint128_t x71 = (x46 + ((uint128_t)0x15 * x69));
- { uint64_t x72 = (uint64_t) (x71 >> 0x37);
- { uint64_t x73 = ((uint64_t)x71 & 0x7fffffffffffff);
- { uint64_t x74 = (x72 + x49);
- { uint64_t x75 = (x74 >> 0x36);
- { uint64_t x76 = (x74 & 0x3fffffffffffff);
- out[0] = x73;
- out[1] = x76;
- out[2] = (x75 + x52);
- out[3] = x55;
- out[4] = x58;
- out[5] = x61;
- out[6] = x64;
- out[7] = x67;
- out[8] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e489m21_9limbs/femul.v b/src/Specific/solinas64_2e489m21_9limbs/femul.v
deleted file mode 100644
index c070aa446..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e489m21_9limbs.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/solinas64_2e489m21_9limbs/femulDisplay.log b/src/Specific/solinas64_2e489m21_9limbs/femulDisplay.log
deleted file mode 100644
index c78befef7..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/femulDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint128_t x36 = (((uint128_t)x5 * x34) + ((0x2 * ((uint128_t)x7 * x35)) + (((uint128_t)x9 * x33) + (((uint128_t)x11 * x31) + ((0x2 * ((uint128_t)x13 * x29)) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + ((0x2 * ((uint128_t)x19 * x23)) + ((uint128_t)x18 * x21)))))))));
- uint128_t x37 = ((((uint128_t)x5 * x35) + (((uint128_t)x7 * x33) + (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + (((uint128_t)x17 * x23) + ((uint128_t)x19 * x21)))))))) + (0x15 * ((uint128_t)x18 * x34)));
- uint128_t x38 = ((((uint128_t)x5 * x33) + ((0x2 * ((uint128_t)x7 * x31)) + ((0x2 * ((uint128_t)x9 * x29)) + (((uint128_t)x11 * x27) + ((0x2 * ((uint128_t)x13 * x25)) + ((0x2 * ((uint128_t)x15 * x23)) + ((uint128_t)x17 * x21))))))) + (0x15 * ((0x2 * ((uint128_t)x19 * x34)) + (0x2 * ((uint128_t)x18 * x35)))));
- uint128_t x39 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + ((0x2 * ((uint128_t)x13 * x23)) + ((uint128_t)x15 * x21)))))) + (0x15 * (((uint128_t)x17 * x34) + ((0x2 * ((uint128_t)x19 * x35)) + ((uint128_t)x18 * x33)))));
- uint128_t x40 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + ((uint128_t)x13 * x21))))) + (0x15 * (((uint128_t)x15 * x34) + (((uint128_t)x17 * x35) + (((uint128_t)x19 * x33) + ((uint128_t)x18 * x31))))));
- uint128_t x41 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((0x2 * ((uint128_t)x9 * x23)) + ((uint128_t)x11 * x21)))) + (0x15 * ((0x2 * ((uint128_t)x13 * x34)) + ((0x2 * ((uint128_t)x15 * x35)) + (((uint128_t)x17 * x33) + ((0x2 * ((uint128_t)x19 * x31)) + (0x2 * ((uint128_t)x18 * x29))))))));
- uint128_t x42 = ((((uint128_t)x5 * x25) + ((0x2 * ((uint128_t)x7 * x23)) + ((uint128_t)x9 * x21))) + (0x15 * (((uint128_t)x11 * x34) + ((0x2 * ((uint128_t)x13 * x35)) + (((uint128_t)x15 * x33) + (((uint128_t)x17 * x31) + ((0x2 * ((uint128_t)x19 * x29)) + ((uint128_t)x18 * x27))))))));
- uint128_t x43 = ((((uint128_t)x5 * x23) + ((uint128_t)x7 * x21)) + (0x15 * (((uint128_t)x9 * x34) + (((uint128_t)x11 * x35) + (((uint128_t)x13 * x33) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + (((uint128_t)x19 * x27) + ((uint128_t)x18 * x25)))))))));
- uint128_t x44 = (((uint128_t)x5 * x21) + (0x15 * ((0x2 * ((uint128_t)x7 * x34)) + ((0x2 * ((uint128_t)x9 * x35)) + (((uint128_t)x11 * x33) + ((0x2 * ((uint128_t)x13 * x31)) + ((0x2 * ((uint128_t)x15 * x29)) + (((uint128_t)x17 * x27) + ((0x2 * ((uint128_t)x19 * x25)) + (0x2 * ((uint128_t)x18 * x23)))))))))));
- uint128_t x45 = (x44 >> 0x37);
- uint64_t x46 = ((uint64_t)x44 & 0x7fffffffffffff);
- uint128_t x47 = (x45 + x43);
- uint128_t x48 = (x47 >> 0x36);
- uint64_t x49 = ((uint64_t)x47 & 0x3fffffffffffff);
- uint128_t x50 = (x48 + x42);
- uint128_t x51 = (x50 >> 0x36);
- uint64_t x52 = ((uint64_t)x50 & 0x3fffffffffffff);
- uint128_t x53 = (x51 + x41);
- uint128_t x54 = (x53 >> 0x37);
- uint64_t x55 = ((uint64_t)x53 & 0x7fffffffffffff);
- uint128_t x56 = (x54 + x40);
- uint128_t x57 = (x56 >> 0x36);
- uint64_t x58 = ((uint64_t)x56 & 0x3fffffffffffff);
- uint128_t x59 = (x57 + x39);
- uint128_t x60 = (x59 >> 0x36);
- uint64_t x61 = ((uint64_t)x59 & 0x3fffffffffffff);
- uint128_t x62 = (x60 + x38);
- uint64_t x63 = (uint64_t) (x62 >> 0x37);
- uint64_t x64 = ((uint64_t)x62 & 0x7fffffffffffff);
- uint128_t x65 = (x63 + x37);
- uint64_t x66 = (uint64_t) (x65 >> 0x36);
- uint64_t x67 = ((uint64_t)x65 & 0x3fffffffffffff);
- uint128_t x68 = (x66 + x36);
- uint64_t x69 = (uint64_t) (x68 >> 0x36);
- uint64_t x70 = ((uint64_t)x68 & 0x3fffffffffffff);
- uint128_t x71 = (x46 + ((uint128_t)0x15 * x69));
- uint64_t x72 = (uint64_t) (x71 >> 0x37);
- uint64_t x73 = ((uint64_t)x71 & 0x7fffffffffffff);
- uint64_t x74 = (x72 + x49);
- uint64_t x75 = (x74 >> 0x36);
- uint64_t x76 = (x74 & 0x3fffffffffffff);
- return (Return x70, Return x67, Return x64, Return x61, Return x58, Return x55, (x75 + x52), Return x76, Return x73))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e489m21_9limbs/femulDisplay.v b/src/Specific/solinas64_2e489m21_9limbs/femulDisplay.v
deleted file mode 100644
index 6e56e5b30..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e489m21_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e489m21_9limbs/fesquare.c b/src/Specific/solinas64_2e489m21_9limbs/fesquare.c
deleted file mode 100644
index 2da18a58f..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/fesquare.c
+++ /dev/null
@@ -1,62 +0,0 @@
-static void fesquare(uint64_t out[9], const uint64_t in1[9]) {
- { const uint64_t x15 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x17 = (((uint128_t)x2 * x15) + ((0x2 * ((uint128_t)x4 * x16)) + (((uint128_t)x6 * x14) + (((uint128_t)x8 * x12) + ((0x2 * ((uint128_t)x10 * x10)) + (((uint128_t)x12 * x8) + (((uint128_t)x14 * x6) + ((0x2 * ((uint128_t)x16 * x4)) + ((uint128_t)x15 * x2)))))))));
- { uint128_t x18 = ((((uint128_t)x2 * x16) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x16 * x2)))))))) + (0x15 * ((uint128_t)x15 * x15)));
- { uint128_t x19 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x15 * ((0x2 * ((uint128_t)x16 * x15)) + (0x2 * ((uint128_t)x15 * x16)))));
- { uint128_t x20 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x15 * (((uint128_t)x14 * x15) + ((0x2 * ((uint128_t)x16 * x16)) + ((uint128_t)x15 * x14)))));
- { uint128_t x21 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x15 * (((uint128_t)x12 * x15) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + ((uint128_t)x15 * x12))))));
- { uint128_t x22 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x15 * ((0x2 * ((uint128_t)x10 * x15)) + ((0x2 * ((uint128_t)x12 * x16)) + (((uint128_t)x14 * x14) + ((0x2 * ((uint128_t)x16 * x12)) + (0x2 * ((uint128_t)x15 * x10))))))));
- { uint128_t x23 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x15 * (((uint128_t)x8 * x15) + ((0x2 * ((uint128_t)x10 * x16)) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((0x2 * ((uint128_t)x16 * x10)) + ((uint128_t)x15 * x8))))))));
- { uint128_t x24 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x15 * (((uint128_t)x6 * x15) + (((uint128_t)x8 * x16) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + (((uint128_t)x14 * x10) + (((uint128_t)x16 * x8) + ((uint128_t)x15 * x6)))))))));
- { uint128_t x25 = (((uint128_t)x2 * x2) + (0x15 * ((0x2 * ((uint128_t)x4 * x15)) + ((0x2 * ((uint128_t)x6 * x16)) + (((uint128_t)x8 * x14) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + (((uint128_t)x14 * x8) + ((0x2 * ((uint128_t)x16 * x6)) + (0x2 * ((uint128_t)x15 * x4)))))))))));
- { uint128_t x26 = (x25 >> 0x37);
- { uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffffff);
- { uint128_t x28 = (x26 + x24);
- { uint128_t x29 = (x28 >> 0x36);
- { uint64_t x30 = ((uint64_t)x28 & 0x3fffffffffffff);
- { uint128_t x31 = (x29 + x23);
- { uint128_t x32 = (x31 >> 0x36);
- { uint64_t x33 = ((uint64_t)x31 & 0x3fffffffffffff);
- { uint128_t x34 = (x32 + x22);
- { uint128_t x35 = (x34 >> 0x37);
- { uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- { uint128_t x37 = (x35 + x21);
- { uint128_t x38 = (x37 >> 0x36);
- { uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffffff);
- { uint128_t x40 = (x38 + x20);
- { uint128_t x41 = (x40 >> 0x36);
- { uint64_t x42 = ((uint64_t)x40 & 0x3fffffffffffff);
- { uint128_t x43 = (x41 + x19);
- { uint64_t x44 = (uint64_t) (x43 >> 0x37);
- { uint64_t x45 = ((uint64_t)x43 & 0x7fffffffffffff);
- { uint128_t x46 = (x44 + x18);
- { uint64_t x47 = (uint64_t) (x46 >> 0x36);
- { uint64_t x48 = ((uint64_t)x46 & 0x3fffffffffffff);
- { uint128_t x49 = (x47 + x17);
- { uint64_t x50 = (uint64_t) (x49 >> 0x36);
- { uint64_t x51 = ((uint64_t)x49 & 0x3fffffffffffff);
- { uint128_t x52 = (x27 + ((uint128_t)0x15 * x50));
- { uint64_t x53 = (uint64_t) (x52 >> 0x37);
- { uint64_t x54 = ((uint64_t)x52 & 0x7fffffffffffff);
- { uint64_t x55 = (x53 + x30);
- { uint64_t x56 = (x55 >> 0x36);
- { uint64_t x57 = (x55 & 0x3fffffffffffff);
- out[0] = x54;
- out[1] = x57;
- out[2] = (x56 + x33);
- out[3] = x36;
- out[4] = x39;
- out[5] = x42;
- out[6] = x45;
- out[7] = x48;
- out[8] = x51;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e489m21_9limbs/fesquare.v b/src/Specific/solinas64_2e489m21_9limbs/fesquare.v
deleted file mode 100644
index 92ecffb91..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e489m21_9limbs.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/solinas64_2e489m21_9limbs/fesquareDisplay.log b/src/Specific/solinas64_2e489m21_9limbs/fesquareDisplay.log
deleted file mode 100644
index 3893a91f4..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x17 = (((uint128_t)x2 * x15) + ((0x2 * ((uint128_t)x4 * x16)) + (((uint128_t)x6 * x14) + (((uint128_t)x8 * x12) + ((0x2 * ((uint128_t)x10 * x10)) + (((uint128_t)x12 * x8) + (((uint128_t)x14 * x6) + ((0x2 * ((uint128_t)x16 * x4)) + ((uint128_t)x15 * x2)))))))));
- uint128_t x18 = ((((uint128_t)x2 * x16) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x16 * x2)))))))) + (0x15 * ((uint128_t)x15 * x15)));
- uint128_t x19 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x15 * ((0x2 * ((uint128_t)x16 * x15)) + (0x2 * ((uint128_t)x15 * x16)))));
- uint128_t x20 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x15 * (((uint128_t)x14 * x15) + ((0x2 * ((uint128_t)x16 * x16)) + ((uint128_t)x15 * x14)))));
- uint128_t x21 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x15 * (((uint128_t)x12 * x15) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + ((uint128_t)x15 * x12))))));
- uint128_t x22 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x15 * ((0x2 * ((uint128_t)x10 * x15)) + ((0x2 * ((uint128_t)x12 * x16)) + (((uint128_t)x14 * x14) + ((0x2 * ((uint128_t)x16 * x12)) + (0x2 * ((uint128_t)x15 * x10))))))));
- uint128_t x23 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x15 * (((uint128_t)x8 * x15) + ((0x2 * ((uint128_t)x10 * x16)) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + ((0x2 * ((uint128_t)x16 * x10)) + ((uint128_t)x15 * x8))))))));
- uint128_t x24 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x15 * (((uint128_t)x6 * x15) + (((uint128_t)x8 * x16) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + (((uint128_t)x14 * x10) + (((uint128_t)x16 * x8) + ((uint128_t)x15 * x6)))))))));
- uint128_t x25 = (((uint128_t)x2 * x2) + (0x15 * ((0x2 * ((uint128_t)x4 * x15)) + ((0x2 * ((uint128_t)x6 * x16)) + (((uint128_t)x8 * x14) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + (((uint128_t)x14 * x8) + ((0x2 * ((uint128_t)x16 * x6)) + (0x2 * ((uint128_t)x15 * x4)))))))))));
- uint128_t x26 = (x25 >> 0x37);
- uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffffff);
- uint128_t x28 = (x26 + x24);
- uint128_t x29 = (x28 >> 0x36);
- uint64_t x30 = ((uint64_t)x28 & 0x3fffffffffffff);
- uint128_t x31 = (x29 + x23);
- uint128_t x32 = (x31 >> 0x36);
- uint64_t x33 = ((uint64_t)x31 & 0x3fffffffffffff);
- uint128_t x34 = (x32 + x22);
- uint128_t x35 = (x34 >> 0x37);
- uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- uint128_t x37 = (x35 + x21);
- uint128_t x38 = (x37 >> 0x36);
- uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffffff);
- uint128_t x40 = (x38 + x20);
- uint128_t x41 = (x40 >> 0x36);
- uint64_t x42 = ((uint64_t)x40 & 0x3fffffffffffff);
- uint128_t x43 = (x41 + x19);
- uint64_t x44 = (uint64_t) (x43 >> 0x37);
- uint64_t x45 = ((uint64_t)x43 & 0x7fffffffffffff);
- uint128_t x46 = (x44 + x18);
- uint64_t x47 = (uint64_t) (x46 >> 0x36);
- uint64_t x48 = ((uint64_t)x46 & 0x3fffffffffffff);
- uint128_t x49 = (x47 + x17);
- uint64_t x50 = (uint64_t) (x49 >> 0x36);
- uint64_t x51 = ((uint64_t)x49 & 0x3fffffffffffff);
- uint128_t x52 = (x27 + ((uint128_t)0x15 * x50));
- uint64_t x53 = (uint64_t) (x52 >> 0x37);
- uint64_t x54 = ((uint64_t)x52 & 0x7fffffffffffff);
- uint64_t x55 = (x53 + x30);
- uint64_t x56 = (x55 >> 0x36);
- uint64_t x57 = (x55 & 0x3fffffffffffff);
- return (Return x51, Return x48, Return x45, Return x42, Return x39, Return x36, (x56 + x33), Return x57, Return x54))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e489m21_9limbs/fesquareDisplay.v b/src/Specific/solinas64_2e489m21_9limbs/fesquareDisplay.v
deleted file mode 100644
index 1d3c9ab37..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e489m21_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e489m21_9limbs/fesub.c b/src/Specific/solinas64_2e489m21_9limbs/fesub.c
deleted file mode 100644
index 63e733cb7..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/fesub.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void fesub(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- out[0] = ((0xffffffffffffd6 + x5) - x21);
- out[1] = ((0x7ffffffffffffe + x7) - x23);
- out[2] = ((0x7ffffffffffffe + x9) - x25);
- out[3] = ((0xfffffffffffffe + x11) - x27);
- out[4] = ((0x7ffffffffffffe + x13) - x29);
- out[5] = ((0x7ffffffffffffe + x15) - x31);
- out[6] = ((0xfffffffffffffe + x17) - x33);
- out[7] = ((0x7ffffffffffffe + x19) - x35);
- out[8] = ((0x7ffffffffffffe + x18) - x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e489m21_9limbs/fesub.v b/src/Specific/solinas64_2e489m21_9limbs/fesub.v
deleted file mode 100644
index 4e507a115..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e489m21_9limbs.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/solinas64_2e489m21_9limbs/fesubDisplay.log b/src/Specific/solinas64_2e489m21_9limbs/fesubDisplay.log
deleted file mode 100644
index c0892d044..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- (((0x7ffffffffffffe + x18) - x34), ((0x7ffffffffffffe + x19) - x35), ((0xfffffffffffffe + x17) - x33), ((0x7ffffffffffffe + x15) - x31), ((0x7ffffffffffffe + x13) - x29), ((0xfffffffffffffe + x11) - x27), ((0x7ffffffffffffe + x9) - x25), ((0x7ffffffffffffe + x7) - x23), ((0xffffffffffffd6 + x5) - x21)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e489m21_9limbs/fesubDisplay.v b/src/Specific/solinas64_2e489m21_9limbs/fesubDisplay.v
deleted file mode 100644
index 00391ff1f..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e489m21_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e489m21_9limbs/freeze.c b/src/Specific/solinas64_2e489m21_9limbs/freeze.c
deleted file mode 100644
index 2c2696083..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/freeze.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void freeze(uint64_t out[9], const uint64_t in1[9]) {
- { const uint64_t x15 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffffeb);
- { uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x4, 0x3fffffffffffff);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x6, 0x3fffffffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x8, 0x7fffffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x10, 0x3fffffffffffff);
- { uint64_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x12, 0x3fffffffffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x34, Return x14, 0x7fffffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x16, 0x3fffffffffffff);
- { uint64_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x15, 0x3fffffffffffff);
- { uint64_t x44 = cmovznz64(x43, 0x0, 0xffffffffffffffffL);
- { uint64_t x45 = (x44 & 0x7fffffffffffeb);
- { uint64_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- { uint64_t x49 = (x44 & 0x3fffffffffffff);
- { uint64_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- { uint64_t x53 = (x44 & 0x3fffffffffffff);
- { uint64_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- { uint64_t x57 = (x44 & 0x7fffffffffffff);
- { uint64_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- { uint64_t x61 = (x44 & 0x3fffffffffffff);
- { uint64_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- { uint64_t x65 = (x44 & 0x3fffffffffffff);
- { uint64_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- { uint64_t x69 = (x44 & 0x7fffffffffffff);
- { uint64_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- { uint64_t x73 = (x44 & 0x3fffffffffffff);
- { uint64_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- { uint64_t x77 = (x44 & 0x3fffffffffffff);
- { uint64_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- out[0] = x47;
- out[1] = x51;
- out[2] = x55;
- out[3] = x59;
- out[4] = x63;
- out[5] = x67;
- out[6] = x71;
- out[7] = x75;
- out[8] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e489m21_9limbs/freeze.v b/src/Specific/solinas64_2e489m21_9limbs/freeze.v
deleted file mode 100644
index ac44fe439..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e489m21_9limbs.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/solinas64_2e489m21_9limbs/freezeDisplay.log b/src/Specific/solinas64_2e489m21_9limbs/freezeDisplay.log
deleted file mode 100644
index 890bbfd27..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffffeb);
- uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x4, 0x3fffffffffffff);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x6, 0x3fffffffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x8, 0x7fffffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x10, 0x3fffffffffffff);
- uint64_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x12, 0x3fffffffffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x34, Return x14, 0x7fffffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x16, 0x3fffffffffffff);
- uint64_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x15, 0x3fffffffffffff);
- uint64_t x44 = cmovznz64(x43, 0x0, 0xffffffffffffffffL);
- uint64_t x45 = (x44 & 0x7fffffffffffeb);
- uint64_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- uint64_t x49 = (x44 & 0x3fffffffffffff);
- uint64_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- uint64_t x53 = (x44 & 0x3fffffffffffff);
- uint64_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- uint64_t x57 = (x44 & 0x7fffffffffffff);
- uint64_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- uint64_t x61 = (x44 & 0x3fffffffffffff);
- uint64_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- uint64_t x65 = (x44 & 0x3fffffffffffff);
- uint64_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- uint64_t x69 = (x44 & 0x7fffffffffffff);
- uint64_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- uint64_t x73 = (x44 & 0x3fffffffffffff);
- uint64_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- uint64_t x77 = (x44 & 0x3fffffffffffff);
- uint64_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 54 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- (Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x51, Return x47))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e489m21_9limbs/freezeDisplay.v b/src/Specific/solinas64_2e489m21_9limbs/freezeDisplay.v
deleted file mode 100644
index bb84b26a5..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e489m21_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e489m21_9limbs/py_interpreter.sh b/src/Specific/solinas64_2e489m21_9limbs/py_interpreter.sh
deleted file mode 100755
index 0ea85171b..000000000
--- a/src/Specific/solinas64_2e489m21_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**489 - 21' -Dmodulus_bytes='54 + 1/3' -Da24='121665'
diff --git a/src/Specific/solinas64_2e495m31_10limbs/CurveParameters.v b/src/Specific/solinas64_2e495m31_10limbs/CurveParameters.v
deleted file mode 100644
index 0d55126a6..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^495 - 31
-Base: 49.5
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 49 + 1/2;
- bitwidth := 64;
- s := 2^495;
- c := [(1, 31)];
- carry_chains := Some [seq 0 (pred 10); [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/solinas64_2e495m31_10limbs/Synthesis.v b/src/Specific/solinas64_2e495m31_10limbs/Synthesis.v
deleted file mode 100644
index 76cae2c84..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e495m31_10limbs.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/solinas64_2e495m31_10limbs/compiler.sh b/src/Specific/solinas64_2e495m31_10limbs/compiler.sh
deleted file mode 100755
index 7769a6e80..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{50,49,50,49,50,49,50,49,50,49}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<495) - 31' "$@"
diff --git a/src/Specific/solinas64_2e495m31_10limbs/compilerxx.sh b/src/Specific/solinas64_2e495m31_10limbs/compilerxx.sh
deleted file mode 100755
index 5bd42a7e6..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{50,49,50,49,50,49,50,49,50,49}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<495) - 31' "$@"
diff --git a/src/Specific/solinas64_2e495m31_10limbs/feadd.c b/src/Specific/solinas64_2e495m31_10limbs/feadd.c
deleted file mode 100644
index df991e375..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/feadd.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void feadd(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- out[0] = (x5 + x23);
- out[1] = (x7 + x25);
- out[2] = (x9 + x27);
- out[3] = (x11 + x29);
- out[4] = (x13 + x31);
- out[5] = (x15 + x33);
- out[6] = (x17 + x35);
- out[7] = (x19 + x37);
- out[8] = (x21 + x39);
- out[9] = (x20 + x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e495m31_10limbs/feadd.v b/src/Specific/solinas64_2e495m31_10limbs/feadd.v
deleted file mode 100644
index d82fed090..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e495m31_10limbs.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/solinas64_2e495m31_10limbs/feaddDisplay.log b/src/Specific/solinas64_2e495m31_10limbs/feaddDisplay.log
deleted file mode 100644
index 04176128e..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e495m31_10limbs/feaddDisplay.v b/src/Specific/solinas64_2e495m31_10limbs/feaddDisplay.v
deleted file mode 100644
index 6240ab7e7..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e495m31_10limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e495m31_10limbs/fecarry.v b/src/Specific/solinas64_2e495m31_10limbs/fecarry.v
deleted file mode 100644
index 791db6905..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e495m31_10limbs.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/solinas64_2e495m31_10limbs/fecarryDisplay.v b/src/Specific/solinas64_2e495m31_10limbs/fecarryDisplay.v
deleted file mode 100644
index 3a5232def..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e495m31_10limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e495m31_10limbs/femul.c b/src/Specific/solinas64_2e495m31_10limbs/femul.c
deleted file mode 100644
index 938158658..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/femul.c
+++ /dev/null
@@ -1,78 +0,0 @@
-static void femul(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- { uint128_t x40 = (((uint128_t)x5 * x38) + (((uint128_t)x7 * x39) + (((uint128_t)x9 * x37) + (((uint128_t)x11 * x35) + (((uint128_t)x13 * x33) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + (((uint128_t)x19 * x27) + (((uint128_t)x21 * x25) + ((uint128_t)x20 * x23))))))))));
- { uint128_t x41 = ((((uint128_t)x5 * x39) + ((0x2 * ((uint128_t)x7 * x37)) + (((uint128_t)x9 * x35) + ((0x2 * ((uint128_t)x11 * x33)) + (((uint128_t)x13 * x31) + ((0x2 * ((uint128_t)x15 * x29)) + (((uint128_t)x17 * x27) + ((0x2 * ((uint128_t)x19 * x25)) + ((uint128_t)x21 * x23))))))))) + (0x1f * (0x2 * ((uint128_t)x20 * x38))));
- { uint128_t x42 = ((((uint128_t)x5 * x37) + (((uint128_t)x7 * x35) + (((uint128_t)x9 * x33) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + ((uint128_t)x19 * x23)))))))) + (0x1f * (((uint128_t)x21 * x38) + ((uint128_t)x20 * x39))));
- { uint128_t x43 = ((((uint128_t)x5 * x35) + ((0x2 * ((uint128_t)x7 * x33)) + (((uint128_t)x9 * x31) + ((0x2 * ((uint128_t)x11 * x29)) + (((uint128_t)x13 * x27) + ((0x2 * ((uint128_t)x15 * x25)) + ((uint128_t)x17 * x23))))))) + (0x1f * ((0x2 * ((uint128_t)x19 * x38)) + (((uint128_t)x21 * x39) + (0x2 * ((uint128_t)x20 * x37))))));
- { uint128_t x44 = ((((uint128_t)x5 * x33) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + ((uint128_t)x15 * x23)))))) + (0x1f * (((uint128_t)x17 * x38) + (((uint128_t)x19 * x39) + (((uint128_t)x21 * x37) + ((uint128_t)x20 * x35))))));
- { uint128_t x45 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + (((uint128_t)x9 * x27) + ((0x2 * ((uint128_t)x11 * x25)) + ((uint128_t)x13 * x23))))) + (0x1f * ((0x2 * ((uint128_t)x15 * x38)) + (((uint128_t)x17 * x39) + ((0x2 * ((uint128_t)x19 * x37)) + (((uint128_t)x21 * x35) + (0x2 * ((uint128_t)x20 * x33))))))));
- { uint128_t x46 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)))) + (0x1f * (((uint128_t)x13 * x38) + (((uint128_t)x15 * x39) + (((uint128_t)x17 * x37) + (((uint128_t)x19 * x35) + (((uint128_t)x21 * x33) + ((uint128_t)x20 * x31))))))));
- { uint128_t x47 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((uint128_t)x9 * x23))) + (0x1f * ((0x2 * ((uint128_t)x11 * x38)) + (((uint128_t)x13 * x39) + ((0x2 * ((uint128_t)x15 * x37)) + (((uint128_t)x17 * x35) + ((0x2 * ((uint128_t)x19 * x33)) + (((uint128_t)x21 * x31) + (0x2 * ((uint128_t)x20 * x29))))))))));
- { uint128_t x48 = ((((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)) + (0x1f * (((uint128_t)x9 * x38) + (((uint128_t)x11 * x39) + (((uint128_t)x13 * x37) + (((uint128_t)x15 * x35) + (((uint128_t)x17 * x33) + (((uint128_t)x19 * x31) + (((uint128_t)x21 * x29) + ((uint128_t)x20 * x27))))))))));
- { uint128_t x49 = (((uint128_t)x5 * x23) + (0x1f * ((0x2 * ((uint128_t)x7 * x38)) + (((uint128_t)x9 * x39) + ((0x2 * ((uint128_t)x11 * x37)) + (((uint128_t)x13 * x35) + ((0x2 * ((uint128_t)x15 * x33)) + (((uint128_t)x17 * x31) + ((0x2 * ((uint128_t)x19 * x29)) + (((uint128_t)x21 * x27) + (0x2 * ((uint128_t)x20 * x25))))))))))));
- { uint64_t x50 = (uint64_t) (x49 >> 0x32);
- { uint64_t x51 = ((uint64_t)x49 & 0x3ffffffffffff);
- { uint128_t x52 = (x50 + x48);
- { uint64_t x53 = (uint64_t) (x52 >> 0x31);
- { uint64_t x54 = ((uint64_t)x52 & 0x1ffffffffffff);
- { uint128_t x55 = (x53 + x47);
- { uint64_t x56 = (uint64_t) (x55 >> 0x32);
- { uint64_t x57 = ((uint64_t)x55 & 0x3ffffffffffff);
- { uint128_t x58 = (x56 + x46);
- { uint64_t x59 = (uint64_t) (x58 >> 0x31);
- { uint64_t x60 = ((uint64_t)x58 & 0x1ffffffffffff);
- { uint128_t x61 = (x59 + x45);
- { uint64_t x62 = (uint64_t) (x61 >> 0x32);
- { uint64_t x63 = ((uint64_t)x61 & 0x3ffffffffffff);
- { uint128_t x64 = (x62 + x44);
- { uint64_t x65 = (uint64_t) (x64 >> 0x31);
- { uint64_t x66 = ((uint64_t)x64 & 0x1ffffffffffff);
- { uint128_t x67 = (x65 + x43);
- { uint64_t x68 = (uint64_t) (x67 >> 0x32);
- { uint64_t x69 = ((uint64_t)x67 & 0x3ffffffffffff);
- { uint128_t x70 = (x68 + x42);
- { uint64_t x71 = (uint64_t) (x70 >> 0x31);
- { uint64_t x72 = ((uint64_t)x70 & 0x1ffffffffffff);
- { uint128_t x73 = (x71 + x41);
- { uint64_t x74 = (uint64_t) (x73 >> 0x32);
- { uint64_t x75 = ((uint64_t)x73 & 0x3ffffffffffff);
- { uint128_t x76 = (x74 + x40);
- { uint64_t x77 = (uint64_t) (x76 >> 0x31);
- { uint64_t x78 = ((uint64_t)x76 & 0x1ffffffffffff);
- { uint64_t x79 = (x51 + (0x1f * x77));
- { uint64_t x80 = (x79 >> 0x32);
- { uint64_t x81 = (x79 & 0x3ffffffffffff);
- { uint64_t x82 = (x80 + x54);
- { uint64_t x83 = (x82 >> 0x31);
- { uint64_t x84 = (x82 & 0x1ffffffffffff);
- out[0] = x81;
- out[1] = x84;
- out[2] = (x83 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e495m31_10limbs/femul.v b/src/Specific/solinas64_2e495m31_10limbs/femul.v
deleted file mode 100644
index a4b1e4fd6..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e495m31_10limbs.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/solinas64_2e495m31_10limbs/femulDisplay.log b/src/Specific/solinas64_2e495m31_10limbs/femulDisplay.log
deleted file mode 100644
index c5ae08a38..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/femulDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- uint128_t x40 = (((uint128_t)x5 * x38) + (((uint128_t)x7 * x39) + (((uint128_t)x9 * x37) + (((uint128_t)x11 * x35) + (((uint128_t)x13 * x33) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + (((uint128_t)x19 * x27) + (((uint128_t)x21 * x25) + ((uint128_t)x20 * x23))))))))));
- uint128_t x41 = ((((uint128_t)x5 * x39) + ((0x2 * ((uint128_t)x7 * x37)) + (((uint128_t)x9 * x35) + ((0x2 * ((uint128_t)x11 * x33)) + (((uint128_t)x13 * x31) + ((0x2 * ((uint128_t)x15 * x29)) + (((uint128_t)x17 * x27) + ((0x2 * ((uint128_t)x19 * x25)) + ((uint128_t)x21 * x23))))))))) + (0x1f * (0x2 * ((uint128_t)x20 * x38))));
- uint128_t x42 = ((((uint128_t)x5 * x37) + (((uint128_t)x7 * x35) + (((uint128_t)x9 * x33) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + ((uint128_t)x19 * x23)))))))) + (0x1f * (((uint128_t)x21 * x38) + ((uint128_t)x20 * x39))));
- uint128_t x43 = ((((uint128_t)x5 * x35) + ((0x2 * ((uint128_t)x7 * x33)) + (((uint128_t)x9 * x31) + ((0x2 * ((uint128_t)x11 * x29)) + (((uint128_t)x13 * x27) + ((0x2 * ((uint128_t)x15 * x25)) + ((uint128_t)x17 * x23))))))) + (0x1f * ((0x2 * ((uint128_t)x19 * x38)) + (((uint128_t)x21 * x39) + (0x2 * ((uint128_t)x20 * x37))))));
- uint128_t x44 = ((((uint128_t)x5 * x33) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + ((uint128_t)x15 * x23)))))) + (0x1f * (((uint128_t)x17 * x38) + (((uint128_t)x19 * x39) + (((uint128_t)x21 * x37) + ((uint128_t)x20 * x35))))));
- uint128_t x45 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + (((uint128_t)x9 * x27) + ((0x2 * ((uint128_t)x11 * x25)) + ((uint128_t)x13 * x23))))) + (0x1f * ((0x2 * ((uint128_t)x15 * x38)) + (((uint128_t)x17 * x39) + ((0x2 * ((uint128_t)x19 * x37)) + (((uint128_t)x21 * x35) + (0x2 * ((uint128_t)x20 * x33))))))));
- uint128_t x46 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + ((uint128_t)x11 * x23)))) + (0x1f * (((uint128_t)x13 * x38) + (((uint128_t)x15 * x39) + (((uint128_t)x17 * x37) + (((uint128_t)x19 * x35) + (((uint128_t)x21 * x33) + ((uint128_t)x20 * x31))))))));
- uint128_t x47 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((uint128_t)x9 * x23))) + (0x1f * ((0x2 * ((uint128_t)x11 * x38)) + (((uint128_t)x13 * x39) + ((0x2 * ((uint128_t)x15 * x37)) + (((uint128_t)x17 * x35) + ((0x2 * ((uint128_t)x19 * x33)) + (((uint128_t)x21 * x31) + (0x2 * ((uint128_t)x20 * x29))))))))));
- uint128_t x48 = ((((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)) + (0x1f * (((uint128_t)x9 * x38) + (((uint128_t)x11 * x39) + (((uint128_t)x13 * x37) + (((uint128_t)x15 * x35) + (((uint128_t)x17 * x33) + (((uint128_t)x19 * x31) + (((uint128_t)x21 * x29) + ((uint128_t)x20 * x27))))))))));
- uint128_t x49 = (((uint128_t)x5 * x23) + (0x1f * ((0x2 * ((uint128_t)x7 * x38)) + (((uint128_t)x9 * x39) + ((0x2 * ((uint128_t)x11 * x37)) + (((uint128_t)x13 * x35) + ((0x2 * ((uint128_t)x15 * x33)) + (((uint128_t)x17 * x31) + ((0x2 * ((uint128_t)x19 * x29)) + (((uint128_t)x21 * x27) + (0x2 * ((uint128_t)x20 * x25))))))))))));
- uint64_t x50 = (uint64_t) (x49 >> 0x32);
- uint64_t x51 = ((uint64_t)x49 & 0x3ffffffffffff);
- uint128_t x52 = (x50 + x48);
- uint64_t x53 = (uint64_t) (x52 >> 0x31);
- uint64_t x54 = ((uint64_t)x52 & 0x1ffffffffffff);
- uint128_t x55 = (x53 + x47);
- uint64_t x56 = (uint64_t) (x55 >> 0x32);
- uint64_t x57 = ((uint64_t)x55 & 0x3ffffffffffff);
- uint128_t x58 = (x56 + x46);
- uint64_t x59 = (uint64_t) (x58 >> 0x31);
- uint64_t x60 = ((uint64_t)x58 & 0x1ffffffffffff);
- uint128_t x61 = (x59 + x45);
- uint64_t x62 = (uint64_t) (x61 >> 0x32);
- uint64_t x63 = ((uint64_t)x61 & 0x3ffffffffffff);
- uint128_t x64 = (x62 + x44);
- uint64_t x65 = (uint64_t) (x64 >> 0x31);
- uint64_t x66 = ((uint64_t)x64 & 0x1ffffffffffff);
- uint128_t x67 = (x65 + x43);
- uint64_t x68 = (uint64_t) (x67 >> 0x32);
- uint64_t x69 = ((uint64_t)x67 & 0x3ffffffffffff);
- uint128_t x70 = (x68 + x42);
- uint64_t x71 = (uint64_t) (x70 >> 0x31);
- uint64_t x72 = ((uint64_t)x70 & 0x1ffffffffffff);
- uint128_t x73 = (x71 + x41);
- uint64_t x74 = (uint64_t) (x73 >> 0x32);
- uint64_t x75 = ((uint64_t)x73 & 0x3ffffffffffff);
- uint128_t x76 = (x74 + x40);
- uint64_t x77 = (uint64_t) (x76 >> 0x31);
- uint64_t x78 = ((uint64_t)x76 & 0x1ffffffffffff);
- uint64_t x79 = (x51 + (0x1f * x77));
- uint64_t x80 = (x79 >> 0x32);
- uint64_t x81 = (x79 & 0x3ffffffffffff);
- uint64_t x82 = (x80 + x54);
- uint64_t x83 = (x82 >> 0x31);
- uint64_t x84 = (x82 & 0x1ffffffffffff);
- return (Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x83 + x57), Return x84, Return x81))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e495m31_10limbs/femulDisplay.v b/src/Specific/solinas64_2e495m31_10limbs/femulDisplay.v
deleted file mode 100644
index 6644101bd..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e495m31_10limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e495m31_10limbs/fesquare.c b/src/Specific/solinas64_2e495m31_10limbs/fesquare.c
deleted file mode 100644
index 935bcc011..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/fesquare.c
+++ /dev/null
@@ -1,68 +0,0 @@
-static void fesquare(uint64_t out[10], const uint64_t in1[10]) {
- { const uint64_t x17 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x19 = (((uint128_t)x2 * x17) + (((uint128_t)x4 * x18) + (((uint128_t)x6 * x16) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + (((uint128_t)x16 * x6) + (((uint128_t)x18 * x4) + ((uint128_t)x17 * x2))))))))));
- { uint128_t x20 = ((((uint128_t)x2 * x18) + ((0x2 * ((uint128_t)x4 * x16)) + (((uint128_t)x6 * x14) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + (((uint128_t)x14 * x6) + ((0x2 * ((uint128_t)x16 * x4)) + ((uint128_t)x18 * x2))))))))) + (0x1f * (0x2 * ((uint128_t)x17 * x17))));
- { uint128_t x21 = ((((uint128_t)x2 * x16) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x16 * x2)))))))) + (0x1f * (((uint128_t)x18 * x17) + ((uint128_t)x17 * x18))));
- { uint128_t x22 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x1f * ((0x2 * ((uint128_t)x16 * x17)) + (((uint128_t)x18 * x18) + (0x2 * ((uint128_t)x17 * x16))))));
- { uint128_t x23 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x1f * (((uint128_t)x14 * x17) + (((uint128_t)x16 * x18) + (((uint128_t)x18 * x16) + ((uint128_t)x17 * x14))))));
- { uint128_t x24 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x1f * ((0x2 * ((uint128_t)x12 * x17)) + (((uint128_t)x14 * x18) + ((0x2 * ((uint128_t)x16 * x16)) + (((uint128_t)x18 * x14) + (0x2 * ((uint128_t)x17 * x12))))))));
- { uint128_t x25 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x1f * (((uint128_t)x10 * x17) + (((uint128_t)x12 * x18) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + (((uint128_t)x18 * x12) + ((uint128_t)x17 * x10))))))));
- { uint128_t x26 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x1f * ((0x2 * ((uint128_t)x8 * x17)) + (((uint128_t)x10 * x18) + ((0x2 * ((uint128_t)x12 * x16)) + (((uint128_t)x14 * x14) + ((0x2 * ((uint128_t)x16 * x12)) + (((uint128_t)x18 * x10) + (0x2 * ((uint128_t)x17 * x8))))))))));
- { uint128_t x27 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1f * (((uint128_t)x6 * x17) + (((uint128_t)x8 * x18) + (((uint128_t)x10 * x16) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + (((uint128_t)x16 * x10) + (((uint128_t)x18 * x8) + ((uint128_t)x17 * x6))))))))));
- { uint128_t x28 = (((uint128_t)x2 * x2) + (0x1f * ((0x2 * ((uint128_t)x4 * x17)) + (((uint128_t)x6 * x18) + ((0x2 * ((uint128_t)x8 * x16)) + (((uint128_t)x10 * x14) + ((0x2 * ((uint128_t)x12 * x12)) + (((uint128_t)x14 * x10) + ((0x2 * ((uint128_t)x16 * x8)) + (((uint128_t)x18 * x6) + (0x2 * ((uint128_t)x17 * x4))))))))))));
- { uint64_t x29 = (uint64_t) (x28 >> 0x32);
- { uint64_t x30 = ((uint64_t)x28 & 0x3ffffffffffff);
- { uint128_t x31 = (x29 + x27);
- { uint64_t x32 = (uint64_t) (x31 >> 0x31);
- { uint64_t x33 = ((uint64_t)x31 & 0x1ffffffffffff);
- { uint128_t x34 = (x32 + x26);
- { uint64_t x35 = (uint64_t) (x34 >> 0x32);
- { uint64_t x36 = ((uint64_t)x34 & 0x3ffffffffffff);
- { uint128_t x37 = (x35 + x25);
- { uint64_t x38 = (uint64_t) (x37 >> 0x31);
- { uint64_t x39 = ((uint64_t)x37 & 0x1ffffffffffff);
- { uint128_t x40 = (x38 + x24);
- { uint64_t x41 = (uint64_t) (x40 >> 0x32);
- { uint64_t x42 = ((uint64_t)x40 & 0x3ffffffffffff);
- { uint128_t x43 = (x41 + x23);
- { uint64_t x44 = (uint64_t) (x43 >> 0x31);
- { uint64_t x45 = ((uint64_t)x43 & 0x1ffffffffffff);
- { uint128_t x46 = (x44 + x22);
- { uint64_t x47 = (uint64_t) (x46 >> 0x32);
- { uint64_t x48 = ((uint64_t)x46 & 0x3ffffffffffff);
- { uint128_t x49 = (x47 + x21);
- { uint64_t x50 = (uint64_t) (x49 >> 0x31);
- { uint64_t x51 = ((uint64_t)x49 & 0x1ffffffffffff);
- { uint128_t x52 = (x50 + x20);
- { uint64_t x53 = (uint64_t) (x52 >> 0x32);
- { uint64_t x54 = ((uint64_t)x52 & 0x3ffffffffffff);
- { uint128_t x55 = (x53 + x19);
- { uint64_t x56 = (uint64_t) (x55 >> 0x31);
- { uint64_t x57 = ((uint64_t)x55 & 0x1ffffffffffff);
- { uint64_t x58 = (x30 + (0x1f * x56));
- { uint64_t x59 = (x58 >> 0x32);
- { uint64_t x60 = (x58 & 0x3ffffffffffff);
- { uint64_t x61 = (x59 + x33);
- { uint64_t x62 = (x61 >> 0x31);
- { uint64_t x63 = (x61 & 0x1ffffffffffff);
- out[0] = x60;
- out[1] = x63;
- out[2] = (x62 + x36);
- out[3] = x39;
- out[4] = x42;
- out[5] = x45;
- out[6] = x48;
- out[7] = x51;
- out[8] = x54;
- out[9] = x57;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e495m31_10limbs/fesquare.v b/src/Specific/solinas64_2e495m31_10limbs/fesquare.v
deleted file mode 100644
index 4f882314c..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e495m31_10limbs.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/solinas64_2e495m31_10limbs/fesquareDisplay.log b/src/Specific/solinas64_2e495m31_10limbs/fesquareDisplay.log
deleted file mode 100644
index 43305fd0f..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x19 = (((uint128_t)x2 * x17) + (((uint128_t)x4 * x18) + (((uint128_t)x6 * x16) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + (((uint128_t)x16 * x6) + (((uint128_t)x18 * x4) + ((uint128_t)x17 * x2))))))))));
- uint128_t x20 = ((((uint128_t)x2 * x18) + ((0x2 * ((uint128_t)x4 * x16)) + (((uint128_t)x6 * x14) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + (((uint128_t)x14 * x6) + ((0x2 * ((uint128_t)x16 * x4)) + ((uint128_t)x18 * x2))))))))) + (0x1f * (0x2 * ((uint128_t)x17 * x17))));
- uint128_t x21 = ((((uint128_t)x2 * x16) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x16 * x2)))))))) + (0x1f * (((uint128_t)x18 * x17) + ((uint128_t)x17 * x18))));
- uint128_t x22 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x1f * ((0x2 * ((uint128_t)x16 * x17)) + (((uint128_t)x18 * x18) + (0x2 * ((uint128_t)x17 * x16))))));
- uint128_t x23 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x1f * (((uint128_t)x14 * x17) + (((uint128_t)x16 * x18) + (((uint128_t)x18 * x16) + ((uint128_t)x17 * x14))))));
- uint128_t x24 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x1f * ((0x2 * ((uint128_t)x12 * x17)) + (((uint128_t)x14 * x18) + ((0x2 * ((uint128_t)x16 * x16)) + (((uint128_t)x18 * x14) + (0x2 * ((uint128_t)x17 * x12))))))));
- uint128_t x25 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x1f * (((uint128_t)x10 * x17) + (((uint128_t)x12 * x18) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + (((uint128_t)x18 * x12) + ((uint128_t)x17 * x10))))))));
- uint128_t x26 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x1f * ((0x2 * ((uint128_t)x8 * x17)) + (((uint128_t)x10 * x18) + ((0x2 * ((uint128_t)x12 * x16)) + (((uint128_t)x14 * x14) + ((0x2 * ((uint128_t)x16 * x12)) + (((uint128_t)x18 * x10) + (0x2 * ((uint128_t)x17 * x8))))))))));
- uint128_t x27 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1f * (((uint128_t)x6 * x17) + (((uint128_t)x8 * x18) + (((uint128_t)x10 * x16) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + (((uint128_t)x16 * x10) + (((uint128_t)x18 * x8) + ((uint128_t)x17 * x6))))))))));
- uint128_t x28 = (((uint128_t)x2 * x2) + (0x1f * ((0x2 * ((uint128_t)x4 * x17)) + (((uint128_t)x6 * x18) + ((0x2 * ((uint128_t)x8 * x16)) + (((uint128_t)x10 * x14) + ((0x2 * ((uint128_t)x12 * x12)) + (((uint128_t)x14 * x10) + ((0x2 * ((uint128_t)x16 * x8)) + (((uint128_t)x18 * x6) + (0x2 * ((uint128_t)x17 * x4))))))))))));
- uint64_t x29 = (uint64_t) (x28 >> 0x32);
- uint64_t x30 = ((uint64_t)x28 & 0x3ffffffffffff);
- uint128_t x31 = (x29 + x27);
- uint64_t x32 = (uint64_t) (x31 >> 0x31);
- uint64_t x33 = ((uint64_t)x31 & 0x1ffffffffffff);
- uint128_t x34 = (x32 + x26);
- uint64_t x35 = (uint64_t) (x34 >> 0x32);
- uint64_t x36 = ((uint64_t)x34 & 0x3ffffffffffff);
- uint128_t x37 = (x35 + x25);
- uint64_t x38 = (uint64_t) (x37 >> 0x31);
- uint64_t x39 = ((uint64_t)x37 & 0x1ffffffffffff);
- uint128_t x40 = (x38 + x24);
- uint64_t x41 = (uint64_t) (x40 >> 0x32);
- uint64_t x42 = ((uint64_t)x40 & 0x3ffffffffffff);
- uint128_t x43 = (x41 + x23);
- uint64_t x44 = (uint64_t) (x43 >> 0x31);
- uint64_t x45 = ((uint64_t)x43 & 0x1ffffffffffff);
- uint128_t x46 = (x44 + x22);
- uint64_t x47 = (uint64_t) (x46 >> 0x32);
- uint64_t x48 = ((uint64_t)x46 & 0x3ffffffffffff);
- uint128_t x49 = (x47 + x21);
- uint64_t x50 = (uint64_t) (x49 >> 0x31);
- uint64_t x51 = ((uint64_t)x49 & 0x1ffffffffffff);
- uint128_t x52 = (x50 + x20);
- uint64_t x53 = (uint64_t) (x52 >> 0x32);
- uint64_t x54 = ((uint64_t)x52 & 0x3ffffffffffff);
- uint128_t x55 = (x53 + x19);
- uint64_t x56 = (uint64_t) (x55 >> 0x31);
- uint64_t x57 = ((uint64_t)x55 & 0x1ffffffffffff);
- uint64_t x58 = (x30 + (0x1f * x56));
- uint64_t x59 = (x58 >> 0x32);
- uint64_t x60 = (x58 & 0x3ffffffffffff);
- uint64_t x61 = (x59 + x33);
- uint64_t x62 = (x61 >> 0x31);
- uint64_t x63 = (x61 & 0x1ffffffffffff);
- return (Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, Return x39, (x62 + x36), Return x63, Return x60))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e495m31_10limbs/fesquareDisplay.v b/src/Specific/solinas64_2e495m31_10limbs/fesquareDisplay.v
deleted file mode 100644
index 595ad2434..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e495m31_10limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e495m31_10limbs/fesub.c b/src/Specific/solinas64_2e495m31_10limbs/fesub.c
deleted file mode 100644
index 6b93355d4..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/fesub.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fesub(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- out[0] = ((0x7ffffffffffc2 + x5) - x23);
- out[1] = ((0x3fffffffffffe + x7) - x25);
- out[2] = ((0x7fffffffffffe + x9) - x27);
- out[3] = ((0x3fffffffffffe + x11) - x29);
- out[4] = ((0x7fffffffffffe + x13) - x31);
- out[5] = ((0x3fffffffffffe + x15) - x33);
- out[6] = ((0x7fffffffffffe + x17) - x35);
- out[7] = ((0x3fffffffffffe + x19) - x37);
- out[8] = ((0x7fffffffffffe + x21) - x39);
- out[9] = ((0x3fffffffffffe + x20) - x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e495m31_10limbs/fesub.v b/src/Specific/solinas64_2e495m31_10limbs/fesub.v
deleted file mode 100644
index 198ad7aa3..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e495m31_10limbs.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/solinas64_2e495m31_10limbs/fesubDisplay.log b/src/Specific/solinas64_2e495m31_10limbs/fesubDisplay.log
deleted file mode 100644
index ef48426de..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- (((0x3fffffffffffe + x20) - x38), ((0x7fffffffffffe + x21) - x39), ((0x3fffffffffffe + x19) - x37), ((0x7fffffffffffe + x17) - x35), ((0x3fffffffffffe + x15) - x33), ((0x7fffffffffffe + x13) - x31), ((0x3fffffffffffe + x11) - x29), ((0x7fffffffffffe + x9) - x27), ((0x3fffffffffffe + x7) - x25), ((0x7ffffffffffc2 + x5) - x23)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e495m31_10limbs/fesubDisplay.v b/src/Specific/solinas64_2e495m31_10limbs/fesubDisplay.v
deleted file mode 100644
index c08f8a7bd..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e495m31_10limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e495m31_10limbs/freeze.c b/src/Specific/solinas64_2e495m31_10limbs/freeze.c
deleted file mode 100644
index d1b038036..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/freeze.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void freeze(uint64_t out[10], const uint64_t in1[10]) {
- { const uint64_t x17 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffffe1);
- { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x4, 0x1ffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x6, 0x3ffffffffffff);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x8, 0x1ffffffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x10, 0x3ffffffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x12, 0x1ffffffffffff);
- { uint64_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x14, 0x3ffffffffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x39, Return x16, 0x1ffffffffffff);
- { uint64_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x18, 0x3ffffffffffff);
- { uint64_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x17, 0x1ffffffffffff);
- { uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL);
- { uint64_t x50 = (x49 & 0x3ffffffffffe1);
- { uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- { uint64_t x54 = (x49 & 0x1ffffffffffff);
- { uint64_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- { uint64_t x58 = (x49 & 0x3ffffffffffff);
- { uint64_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- { uint64_t x62 = (x49 & 0x1ffffffffffff);
- { uint64_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- { uint64_t x66 = (x49 & 0x3ffffffffffff);
- { uint64_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- { uint64_t x70 = (x49 & 0x1ffffffffffff);
- { uint64_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- { uint64_t x74 = (x49 & 0x3ffffffffffff);
- { uint64_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- { uint64_t x78 = (x49 & 0x1ffffffffffff);
- { uint64_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- { uint64_t x82 = (x49 & 0x3ffffffffffff);
- { uint64_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- { uint64_t x86 = (x49 & 0x1ffffffffffff);
- { uint64_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- out[0] = x52;
- out[1] = x56;
- out[2] = x60;
- out[3] = x64;
- out[4] = x68;
- out[5] = x72;
- out[6] = x76;
- out[7] = x80;
- out[8] = x84;
- out[9] = x88;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e495m31_10limbs/freeze.v b/src/Specific/solinas64_2e495m31_10limbs/freeze.v
deleted file mode 100644
index 2a437366e..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e495m31_10limbs.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/solinas64_2e495m31_10limbs/freezeDisplay.log b/src/Specific/solinas64_2e495m31_10limbs/freezeDisplay.log
deleted file mode 100644
index b877676f3..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffffe1);
- uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x4, 0x1ffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x6, 0x3ffffffffffff);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x8, 0x1ffffffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x10, 0x3ffffffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x12, 0x1ffffffffffff);
- uint64_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x14, 0x3ffffffffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x39, Return x16, 0x1ffffffffffff);
- uint64_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x18, 0x3ffffffffffff);
- uint64_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x17, 0x1ffffffffffff);
- uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL);
- uint64_t x50 = (x49 & 0x3ffffffffffe1);
- uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- uint64_t x54 = (x49 & 0x1ffffffffffff);
- uint64_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- uint64_t x58 = (x49 & 0x3ffffffffffff);
- uint64_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- uint64_t x62 = (x49 & 0x1ffffffffffff);
- uint64_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- uint64_t x66 = (x49 & 0x3ffffffffffff);
- uint64_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- uint64_t x70 = (x49 & 0x1ffffffffffff);
- uint64_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- uint64_t x74 = (x49 & 0x3ffffffffffff);
- uint64_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- uint64_t x78 = (x49 & 0x1ffffffffffff);
- uint64_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- uint64_t x82 = (x49 & 0x3ffffffffffff);
- uint64_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 50 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- uint64_t x86 = (x49 & 0x1ffffffffffff);
- uint64_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 49 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- (Return x88, Return x84, Return x80, Return x76, Return x72, Return x68, Return x64, Return x60, Return x56, Return x52))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e495m31_10limbs/freezeDisplay.v b/src/Specific/solinas64_2e495m31_10limbs/freezeDisplay.v
deleted file mode 100644
index ae9058b0a..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e495m31_10limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e495m31_10limbs/py_interpreter.sh b/src/Specific/solinas64_2e495m31_10limbs/py_interpreter.sh
deleted file mode 100755
index a4635fe15..000000000
--- a/src/Specific/solinas64_2e495m31_10limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**495 - 31' -Dmodulus_bytes='49.5' -Da24='121665'
diff --git a/src/Specific/solinas64_2e495m31_9limbs/CurveParameters.v b/src/Specific/solinas64_2e495m31_9limbs/CurveParameters.v
deleted file mode 100644
index 57b353b9f..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^495 - 31
-Base: 55
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 55;
- bitwidth := 64;
- s := 2^495;
- c := [(1, 31)];
- carry_chains := Some [seq 0 (pred 9); [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/solinas64_2e495m31_9limbs/Synthesis.v b/src/Specific/solinas64_2e495m31_9limbs/Synthesis.v
deleted file mode 100644
index 2cb638122..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e495m31_9limbs.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/solinas64_2e495m31_9limbs/compiler.sh b/src/Specific/solinas64_2e495m31_9limbs/compiler.sh
deleted file mode 100755
index 1b1a2ee82..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,55,55,55,55,55,55,55}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<495) - 31' "$@"
diff --git a/src/Specific/solinas64_2e495m31_9limbs/compilerxx.sh b/src/Specific/solinas64_2e495m31_9limbs/compilerxx.sh
deleted file mode 100755
index f557597f7..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{55,55,55,55,55,55,55,55,55}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xe1}' -Dmodulus_bytes_val='62' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<495) - 31' "$@"
diff --git a/src/Specific/solinas64_2e495m31_9limbs/feadd.c b/src/Specific/solinas64_2e495m31_9limbs/feadd.c
deleted file mode 100644
index 98ab4434c..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e495m31_9limbs/feadd.v b/src/Specific/solinas64_2e495m31_9limbs/feadd.v
deleted file mode 100644
index 19455b564..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e495m31_9limbs.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/solinas64_2e495m31_9limbs/feaddDisplay.log b/src/Specific/solinas64_2e495m31_9limbs/feaddDisplay.log
deleted file mode 100644
index 3b92b1c5c..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e495m31_9limbs/feaddDisplay.v b/src/Specific/solinas64_2e495m31_9limbs/feaddDisplay.v
deleted file mode 100644
index 054307e1b..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e495m31_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e495m31_9limbs/fecarry.v b/src/Specific/solinas64_2e495m31_9limbs/fecarry.v
deleted file mode 100644
index a19bd3081..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e495m31_9limbs.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/solinas64_2e495m31_9limbs/fecarryDisplay.v b/src/Specific/solinas64_2e495m31_9limbs/fecarryDisplay.v
deleted file mode 100644
index 2b724714e..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e495m31_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e495m31_9limbs/femul.c b/src/Specific/solinas64_2e495m31_9limbs/femul.c
deleted file mode 100644
index 2f2ec67e9..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/femul.c
+++ /dev/null
@@ -1,71 +0,0 @@
-static void femul(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- { uint128_t x36 = (((uint128_t)x5 * x34) + (((uint128_t)x7 * x35) + (((uint128_t)x9 * x33) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + (((uint128_t)x19 * x23) + ((uint128_t)x18 * x21)))))))));
- { uint128_t x37 = ((((uint128_t)x5 * x35) + (((uint128_t)x7 * x33) + (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + (((uint128_t)x17 * x23) + ((uint128_t)x19 * x21)))))))) + (0x1f * ((uint128_t)x18 * x34)));
- { uint128_t x38 = ((((uint128_t)x5 * x33) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + ((uint128_t)x17 * x21))))))) + (0x1f * (((uint128_t)x19 * x34) + ((uint128_t)x18 * x35))));
- { uint128_t x39 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + ((uint128_t)x15 * x21)))))) + (0x1f * (((uint128_t)x17 * x34) + (((uint128_t)x19 * x35) + ((uint128_t)x18 * x33)))));
- { uint128_t x40 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + ((uint128_t)x13 * x21))))) + (0x1f * (((uint128_t)x15 * x34) + (((uint128_t)x17 * x35) + (((uint128_t)x19 * x33) + ((uint128_t)x18 * x31))))));
- { uint128_t x41 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + ((uint128_t)x11 * x21)))) + (0x1f * (((uint128_t)x13 * x34) + (((uint128_t)x15 * x35) + (((uint128_t)x17 * x33) + (((uint128_t)x19 * x31) + ((uint128_t)x18 * x29)))))));
- { uint128_t x42 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + ((uint128_t)x9 * x21))) + (0x1f * (((uint128_t)x11 * x34) + (((uint128_t)x13 * x35) + (((uint128_t)x15 * x33) + (((uint128_t)x17 * x31) + (((uint128_t)x19 * x29) + ((uint128_t)x18 * x27))))))));
- { uint128_t x43 = ((((uint128_t)x5 * x23) + ((uint128_t)x7 * x21)) + (0x1f * (((uint128_t)x9 * x34) + (((uint128_t)x11 * x35) + (((uint128_t)x13 * x33) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + (((uint128_t)x19 * x27) + ((uint128_t)x18 * x25)))))))));
- { uint128_t x44 = (((uint128_t)x5 * x21) + (0x1f * (((uint128_t)x7 * x34) + (((uint128_t)x9 * x35) + (((uint128_t)x11 * x33) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + (((uint128_t)x17 * x27) + (((uint128_t)x19 * x25) + ((uint128_t)x18 * x23))))))))));
- { uint128_t x45 = (x44 >> 0x37);
- { uint64_t x46 = ((uint64_t)x44 & 0x7fffffffffffff);
- { uint128_t x47 = (x45 + x43);
- { uint128_t x48 = (x47 >> 0x37);
- { uint64_t x49 = ((uint64_t)x47 & 0x7fffffffffffff);
- { uint128_t x50 = (x48 + x42);
- { uint128_t x51 = (x50 >> 0x37);
- { uint64_t x52 = ((uint64_t)x50 & 0x7fffffffffffff);
- { uint128_t x53 = (x51 + x41);
- { uint128_t x54 = (x53 >> 0x37);
- { uint64_t x55 = ((uint64_t)x53 & 0x7fffffffffffff);
- { uint128_t x56 = (x54 + x40);
- { uint128_t x57 = (x56 >> 0x37);
- { uint64_t x58 = ((uint64_t)x56 & 0x7fffffffffffff);
- { uint128_t x59 = (x57 + x39);
- { uint128_t x60 = (x59 >> 0x37);
- { uint64_t x61 = ((uint64_t)x59 & 0x7fffffffffffff);
- { uint128_t x62 = (x60 + x38);
- { uint128_t x63 = (x62 >> 0x37);
- { uint64_t x64 = ((uint64_t)x62 & 0x7fffffffffffff);
- { uint128_t x65 = (x63 + x37);
- { uint64_t x66 = (uint64_t) (x65 >> 0x37);
- { uint64_t x67 = ((uint64_t)x65 & 0x7fffffffffffff);
- { uint128_t x68 = (x66 + x36);
- { uint64_t x69 = (uint64_t) (x68 >> 0x37);
- { uint64_t x70 = ((uint64_t)x68 & 0x7fffffffffffff);
- { uint128_t x71 = (x46 + ((uint128_t)0x1f * x69));
- { uint64_t x72 = (uint64_t) (x71 >> 0x37);
- { uint64_t x73 = ((uint64_t)x71 & 0x7fffffffffffff);
- { uint64_t x74 = (x72 + x49);
- { uint64_t x75 = (x74 >> 0x37);
- { uint64_t x76 = (x74 & 0x7fffffffffffff);
- out[0] = x73;
- out[1] = x76;
- out[2] = (x75 + x52);
- out[3] = x55;
- out[4] = x58;
- out[5] = x61;
- out[6] = x64;
- out[7] = x67;
- out[8] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e495m31_9limbs/femul.v b/src/Specific/solinas64_2e495m31_9limbs/femul.v
deleted file mode 100644
index 5e1e6299c..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e495m31_9limbs.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/solinas64_2e495m31_9limbs/femulDisplay.log b/src/Specific/solinas64_2e495m31_9limbs/femulDisplay.log
deleted file mode 100644
index 305eada5e..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/femulDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint128_t x36 = (((uint128_t)x5 * x34) + (((uint128_t)x7 * x35) + (((uint128_t)x9 * x33) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + (((uint128_t)x19 * x23) + ((uint128_t)x18 * x21)))))))));
- uint128_t x37 = ((((uint128_t)x5 * x35) + (((uint128_t)x7 * x33) + (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + (((uint128_t)x17 * x23) + ((uint128_t)x19 * x21)))))))) + (0x1f * ((uint128_t)x18 * x34)));
- uint128_t x38 = ((((uint128_t)x5 * x33) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + ((uint128_t)x17 * x21))))))) + (0x1f * (((uint128_t)x19 * x34) + ((uint128_t)x18 * x35))));
- uint128_t x39 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + ((uint128_t)x15 * x21)))))) + (0x1f * (((uint128_t)x17 * x34) + (((uint128_t)x19 * x35) + ((uint128_t)x18 * x33)))));
- uint128_t x40 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + ((uint128_t)x13 * x21))))) + (0x1f * (((uint128_t)x15 * x34) + (((uint128_t)x17 * x35) + (((uint128_t)x19 * x33) + ((uint128_t)x18 * x31))))));
- uint128_t x41 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + ((uint128_t)x11 * x21)))) + (0x1f * (((uint128_t)x13 * x34) + (((uint128_t)x15 * x35) + (((uint128_t)x17 * x33) + (((uint128_t)x19 * x31) + ((uint128_t)x18 * x29)))))));
- uint128_t x42 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + ((uint128_t)x9 * x21))) + (0x1f * (((uint128_t)x11 * x34) + (((uint128_t)x13 * x35) + (((uint128_t)x15 * x33) + (((uint128_t)x17 * x31) + (((uint128_t)x19 * x29) + ((uint128_t)x18 * x27))))))));
- uint128_t x43 = ((((uint128_t)x5 * x23) + ((uint128_t)x7 * x21)) + (0x1f * (((uint128_t)x9 * x34) + (((uint128_t)x11 * x35) + (((uint128_t)x13 * x33) + (((uint128_t)x15 * x31) + (((uint128_t)x17 * x29) + (((uint128_t)x19 * x27) + ((uint128_t)x18 * x25)))))))));
- uint128_t x44 = (((uint128_t)x5 * x21) + (0x1f * (((uint128_t)x7 * x34) + (((uint128_t)x9 * x35) + (((uint128_t)x11 * x33) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + (((uint128_t)x17 * x27) + (((uint128_t)x19 * x25) + ((uint128_t)x18 * x23))))))))));
- uint128_t x45 = (x44 >> 0x37);
- uint64_t x46 = ((uint64_t)x44 & 0x7fffffffffffff);
- uint128_t x47 = (x45 + x43);
- uint128_t x48 = (x47 >> 0x37);
- uint64_t x49 = ((uint64_t)x47 & 0x7fffffffffffff);
- uint128_t x50 = (x48 + x42);
- uint128_t x51 = (x50 >> 0x37);
- uint64_t x52 = ((uint64_t)x50 & 0x7fffffffffffff);
- uint128_t x53 = (x51 + x41);
- uint128_t x54 = (x53 >> 0x37);
- uint64_t x55 = ((uint64_t)x53 & 0x7fffffffffffff);
- uint128_t x56 = (x54 + x40);
- uint128_t x57 = (x56 >> 0x37);
- uint64_t x58 = ((uint64_t)x56 & 0x7fffffffffffff);
- uint128_t x59 = (x57 + x39);
- uint128_t x60 = (x59 >> 0x37);
- uint64_t x61 = ((uint64_t)x59 & 0x7fffffffffffff);
- uint128_t x62 = (x60 + x38);
- uint128_t x63 = (x62 >> 0x37);
- uint64_t x64 = ((uint64_t)x62 & 0x7fffffffffffff);
- uint128_t x65 = (x63 + x37);
- uint64_t x66 = (uint64_t) (x65 >> 0x37);
- uint64_t x67 = ((uint64_t)x65 & 0x7fffffffffffff);
- uint128_t x68 = (x66 + x36);
- uint64_t x69 = (uint64_t) (x68 >> 0x37);
- uint64_t x70 = ((uint64_t)x68 & 0x7fffffffffffff);
- uint128_t x71 = (x46 + ((uint128_t)0x1f * x69));
- uint64_t x72 = (uint64_t) (x71 >> 0x37);
- uint64_t x73 = ((uint64_t)x71 & 0x7fffffffffffff);
- uint64_t x74 = (x72 + x49);
- uint64_t x75 = (x74 >> 0x37);
- uint64_t x76 = (x74 & 0x7fffffffffffff);
- return (Return x70, Return x67, Return x64, Return x61, Return x58, Return x55, (x75 + x52), Return x76, Return x73))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e495m31_9limbs/femulDisplay.v b/src/Specific/solinas64_2e495m31_9limbs/femulDisplay.v
deleted file mode 100644
index ff93dc7a8..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e495m31_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e495m31_9limbs/fesquare.c b/src/Specific/solinas64_2e495m31_9limbs/fesquare.c
deleted file mode 100644
index 3fec90126..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/fesquare.c
+++ /dev/null
@@ -1,62 +0,0 @@
-static void fesquare(uint64_t out[9], const uint64_t in1[9]) {
- { const uint64_t x15 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x17 = (((uint128_t)x2 * x15) + (((uint128_t)x4 * x16) + (((uint128_t)x6 * x14) + (((uint128_t)x8 * x12) + (((uint128_t)x10 * x10) + (((uint128_t)x12 * x8) + (((uint128_t)x14 * x6) + (((uint128_t)x16 * x4) + ((uint128_t)x15 * x2)))))))));
- { uint128_t x18 = ((((uint128_t)x2 * x16) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x16 * x2)))))))) + (0x1f * ((uint128_t)x15 * x15)));
- { uint128_t x19 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x1f * (((uint128_t)x16 * x15) + ((uint128_t)x15 * x16))));
- { uint128_t x20 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x1f * (((uint128_t)x14 * x15) + (((uint128_t)x16 * x16) + ((uint128_t)x15 * x14)))));
- { uint128_t x21 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x1f * (((uint128_t)x12 * x15) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + ((uint128_t)x15 * x12))))));
- { uint128_t x22 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x1f * (((uint128_t)x10 * x15) + (((uint128_t)x12 * x16) + (((uint128_t)x14 * x14) + (((uint128_t)x16 * x12) + ((uint128_t)x15 * x10)))))));
- { uint128_t x23 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x1f * (((uint128_t)x8 * x15) + (((uint128_t)x10 * x16) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + (((uint128_t)x16 * x10) + ((uint128_t)x15 * x8))))))));
- { uint128_t x24 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1f * (((uint128_t)x6 * x15) + (((uint128_t)x8 * x16) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + (((uint128_t)x14 * x10) + (((uint128_t)x16 * x8) + ((uint128_t)x15 * x6)))))))));
- { uint128_t x25 = (((uint128_t)x2 * x2) + (0x1f * (((uint128_t)x4 * x15) + (((uint128_t)x6 * x16) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + (((uint128_t)x16 * x6) + ((uint128_t)x15 * x4))))))))));
- { uint128_t x26 = (x25 >> 0x37);
- { uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffffff);
- { uint128_t x28 = (x26 + x24);
- { uint128_t x29 = (x28 >> 0x37);
- { uint64_t x30 = ((uint64_t)x28 & 0x7fffffffffffff);
- { uint128_t x31 = (x29 + x23);
- { uint128_t x32 = (x31 >> 0x37);
- { uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffffff);
- { uint128_t x34 = (x32 + x22);
- { uint128_t x35 = (x34 >> 0x37);
- { uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- { uint128_t x37 = (x35 + x21);
- { uint128_t x38 = (x37 >> 0x37);
- { uint64_t x39 = ((uint64_t)x37 & 0x7fffffffffffff);
- { uint128_t x40 = (x38 + x20);
- { uint128_t x41 = (x40 >> 0x37);
- { uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffffff);
- { uint128_t x43 = (x41 + x19);
- { uint128_t x44 = (x43 >> 0x37);
- { uint64_t x45 = ((uint64_t)x43 & 0x7fffffffffffff);
- { uint128_t x46 = (x44 + x18);
- { uint64_t x47 = (uint64_t) (x46 >> 0x37);
- { uint64_t x48 = ((uint64_t)x46 & 0x7fffffffffffff);
- { uint128_t x49 = (x47 + x17);
- { uint64_t x50 = (uint64_t) (x49 >> 0x37);
- { uint64_t x51 = ((uint64_t)x49 & 0x7fffffffffffff);
- { uint128_t x52 = (x27 + ((uint128_t)0x1f * x50));
- { uint64_t x53 = (uint64_t) (x52 >> 0x37);
- { uint64_t x54 = ((uint64_t)x52 & 0x7fffffffffffff);
- { uint64_t x55 = (x53 + x30);
- { uint64_t x56 = (x55 >> 0x37);
- { uint64_t x57 = (x55 & 0x7fffffffffffff);
- out[0] = x54;
- out[1] = x57;
- out[2] = (x56 + x33);
- out[3] = x36;
- out[4] = x39;
- out[5] = x42;
- out[6] = x45;
- out[7] = x48;
- out[8] = x51;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e495m31_9limbs/fesquare.v b/src/Specific/solinas64_2e495m31_9limbs/fesquare.v
deleted file mode 100644
index aecb1f248..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e495m31_9limbs.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/solinas64_2e495m31_9limbs/fesquareDisplay.log b/src/Specific/solinas64_2e495m31_9limbs/fesquareDisplay.log
deleted file mode 100644
index c73337d0d..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x17 = (((uint128_t)x2 * x15) + (((uint128_t)x4 * x16) + (((uint128_t)x6 * x14) + (((uint128_t)x8 * x12) + (((uint128_t)x10 * x10) + (((uint128_t)x12 * x8) + (((uint128_t)x14 * x6) + (((uint128_t)x16 * x4) + ((uint128_t)x15 * x2)))))))));
- uint128_t x18 = ((((uint128_t)x2 * x16) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x16 * x2)))))))) + (0x1f * ((uint128_t)x15 * x15)));
- uint128_t x19 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x1f * (((uint128_t)x16 * x15) + ((uint128_t)x15 * x16))));
- uint128_t x20 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x1f * (((uint128_t)x14 * x15) + (((uint128_t)x16 * x16) + ((uint128_t)x15 * x14)))));
- uint128_t x21 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x1f * (((uint128_t)x12 * x15) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + ((uint128_t)x15 * x12))))));
- uint128_t x22 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x1f * (((uint128_t)x10 * x15) + (((uint128_t)x12 * x16) + (((uint128_t)x14 * x14) + (((uint128_t)x16 * x12) + ((uint128_t)x15 * x10)))))));
- uint128_t x23 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x1f * (((uint128_t)x8 * x15) + (((uint128_t)x10 * x16) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + (((uint128_t)x16 * x10) + ((uint128_t)x15 * x8))))))));
- uint128_t x24 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1f * (((uint128_t)x6 * x15) + (((uint128_t)x8 * x16) + (((uint128_t)x10 * x14) + (((uint128_t)x12 * x12) + (((uint128_t)x14 * x10) + (((uint128_t)x16 * x8) + ((uint128_t)x15 * x6)))))))));
- uint128_t x25 = (((uint128_t)x2 * x2) + (0x1f * (((uint128_t)x4 * x15) + (((uint128_t)x6 * x16) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + (((uint128_t)x16 * x6) + ((uint128_t)x15 * x4))))))))));
- uint128_t x26 = (x25 >> 0x37);
- uint64_t x27 = ((uint64_t)x25 & 0x7fffffffffffff);
- uint128_t x28 = (x26 + x24);
- uint128_t x29 = (x28 >> 0x37);
- uint64_t x30 = ((uint64_t)x28 & 0x7fffffffffffff);
- uint128_t x31 = (x29 + x23);
- uint128_t x32 = (x31 >> 0x37);
- uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffffff);
- uint128_t x34 = (x32 + x22);
- uint128_t x35 = (x34 >> 0x37);
- uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffffff);
- uint128_t x37 = (x35 + x21);
- uint128_t x38 = (x37 >> 0x37);
- uint64_t x39 = ((uint64_t)x37 & 0x7fffffffffffff);
- uint128_t x40 = (x38 + x20);
- uint128_t x41 = (x40 >> 0x37);
- uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffffff);
- uint128_t x43 = (x41 + x19);
- uint128_t x44 = (x43 >> 0x37);
- uint64_t x45 = ((uint64_t)x43 & 0x7fffffffffffff);
- uint128_t x46 = (x44 + x18);
- uint64_t x47 = (uint64_t) (x46 >> 0x37);
- uint64_t x48 = ((uint64_t)x46 & 0x7fffffffffffff);
- uint128_t x49 = (x47 + x17);
- uint64_t x50 = (uint64_t) (x49 >> 0x37);
- uint64_t x51 = ((uint64_t)x49 & 0x7fffffffffffff);
- uint128_t x52 = (x27 + ((uint128_t)0x1f * x50));
- uint64_t x53 = (uint64_t) (x52 >> 0x37);
- uint64_t x54 = ((uint64_t)x52 & 0x7fffffffffffff);
- uint64_t x55 = (x53 + x30);
- uint64_t x56 = (x55 >> 0x37);
- uint64_t x57 = (x55 & 0x7fffffffffffff);
- return (Return x51, Return x48, Return x45, Return x42, Return x39, Return x36, (x56 + x33), Return x57, Return x54))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e495m31_9limbs/fesquareDisplay.v b/src/Specific/solinas64_2e495m31_9limbs/fesquareDisplay.v
deleted file mode 100644
index 8bc28642a..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e495m31_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e495m31_9limbs/fesub.c b/src/Specific/solinas64_2e495m31_9limbs/fesub.c
deleted file mode 100644
index dbdb67e21..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/fesub.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void fesub(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- out[0] = ((0xffffffffffffc2 + x5) - x21);
- out[1] = ((0xfffffffffffffe + x7) - x23);
- out[2] = ((0xfffffffffffffe + x9) - x25);
- out[3] = ((0xfffffffffffffe + x11) - x27);
- out[4] = ((0xfffffffffffffe + x13) - x29);
- out[5] = ((0xfffffffffffffe + x15) - x31);
- out[6] = ((0xfffffffffffffe + x17) - x33);
- out[7] = ((0xfffffffffffffe + x19) - x35);
- out[8] = ((0xfffffffffffffe + x18) - x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e495m31_9limbs/fesub.v b/src/Specific/solinas64_2e495m31_9limbs/fesub.v
deleted file mode 100644
index 7e75278e0..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e495m31_9limbs.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/solinas64_2e495m31_9limbs/fesubDisplay.log b/src/Specific/solinas64_2e495m31_9limbs/fesubDisplay.log
deleted file mode 100644
index c24c0f28a..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- (((0xfffffffffffffe + x18) - x34), ((0xfffffffffffffe + x19) - x35), ((0xfffffffffffffe + x17) - x33), ((0xfffffffffffffe + x15) - x31), ((0xfffffffffffffe + x13) - x29), ((0xfffffffffffffe + x11) - x27), ((0xfffffffffffffe + x9) - x25), ((0xfffffffffffffe + x7) - x23), ((0xffffffffffffc2 + x5) - x21)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e495m31_9limbs/fesubDisplay.v b/src/Specific/solinas64_2e495m31_9limbs/fesubDisplay.v
deleted file mode 100644
index 6b9c912c2..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e495m31_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e495m31_9limbs/freeze.c b/src/Specific/solinas64_2e495m31_9limbs/freeze.c
deleted file mode 100644
index c373d5d40..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/freeze.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void freeze(uint64_t out[9], const uint64_t in1[9]) {
- { const uint64_t x15 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffffe1);
- { uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x4, 0x7fffffffffffff);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x6, 0x7fffffffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x8, 0x7fffffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x10, 0x7fffffffffffff);
- { uint64_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x12, 0x7fffffffffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x34, Return x14, 0x7fffffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x16, 0x7fffffffffffff);
- { uint64_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x15, 0x7fffffffffffff);
- { uint64_t x44 = cmovznz64(x43, 0x0, 0xffffffffffffffffL);
- { uint64_t x45 = (x44 & 0x7fffffffffffe1);
- { uint64_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- { uint64_t x49 = (x44 & 0x7fffffffffffff);
- { uint64_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- { uint64_t x53 = (x44 & 0x7fffffffffffff);
- { uint64_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- { uint64_t x57 = (x44 & 0x7fffffffffffff);
- { uint64_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- { uint64_t x61 = (x44 & 0x7fffffffffffff);
- { uint64_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- { uint64_t x65 = (x44 & 0x7fffffffffffff);
- { uint64_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- { uint64_t x69 = (x44 & 0x7fffffffffffff);
- { uint64_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- { uint64_t x73 = (x44 & 0x7fffffffffffff);
- { uint64_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- { uint64_t x77 = (x44 & 0x7fffffffffffff);
- { uint64_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- out[0] = x47;
- out[1] = x51;
- out[2] = x55;
- out[3] = x59;
- out[4] = x63;
- out[5] = x67;
- out[6] = x71;
- out[7] = x75;
- out[8] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e495m31_9limbs/freeze.v b/src/Specific/solinas64_2e495m31_9limbs/freeze.v
deleted file mode 100644
index 5391a4527..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e495m31_9limbs.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/solinas64_2e495m31_9limbs/freezeDisplay.log b/src/Specific/solinas64_2e495m31_9limbs/freezeDisplay.log
deleted file mode 100644
index a60ee6bdd..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffffffe1);
- uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x4, 0x7fffffffffffff);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x6, 0x7fffffffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x8, 0x7fffffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x10, 0x7fffffffffffff);
- uint64_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x12, 0x7fffffffffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x34, Return x14, 0x7fffffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x16, 0x7fffffffffffff);
- uint64_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x15, 0x7fffffffffffff);
- uint64_t x44 = cmovznz64(x43, 0x0, 0xffffffffffffffffL);
- uint64_t x45 = (x44 & 0x7fffffffffffe1);
- uint64_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- uint64_t x49 = (x44 & 0x7fffffffffffff);
- uint64_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- uint64_t x53 = (x44 & 0x7fffffffffffff);
- uint64_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- uint64_t x57 = (x44 & 0x7fffffffffffff);
- uint64_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- uint64_t x61 = (x44 & 0x7fffffffffffff);
- uint64_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- uint64_t x65 = (x44 & 0x7fffffffffffff);
- uint64_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- uint64_t x69 = (x44 & 0x7fffffffffffff);
- uint64_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- uint64_t x73 = (x44 & 0x7fffffffffffff);
- uint64_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- uint64_t x77 = (x44 & 0x7fffffffffffff);
- uint64_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 55 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- (Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x51, Return x47))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e495m31_9limbs/freezeDisplay.v b/src/Specific/solinas64_2e495m31_9limbs/freezeDisplay.v
deleted file mode 100644
index d21b19b41..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e495m31_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e495m31_9limbs/py_interpreter.sh b/src/Specific/solinas64_2e495m31_9limbs/py_interpreter.sh
deleted file mode 100755
index 8e36f62b3..000000000
--- a/src/Specific/solinas64_2e495m31_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**495 - 31' -Dmodulus_bytes='55' -Da24='121665'
diff --git a/src/Specific/solinas64_2e511m187_10limbs/CurveParameters.v b/src/Specific/solinas64_2e511m187_10limbs/CurveParameters.v
deleted file mode 100644
index edae92ba4..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^511 - 187
-Base: 51.1
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 51 + 1/10;
- bitwidth := 64;
- s := 2^511;
- c := [(1, 187)];
- carry_chains := Some [seq 0 (pred 10); [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/solinas64_2e511m187_10limbs/Synthesis.v b/src/Specific/solinas64_2e511m187_10limbs/Synthesis.v
deleted file mode 100644
index b83885160..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e511m187_10limbs.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/solinas64_2e511m187_10limbs/compiler.sh b/src/Specific/solinas64_2e511m187_10limbs/compiler.sh
deleted file mode 100755
index 05ec39547..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<511) - 187' "$@"
diff --git a/src/Specific/solinas64_2e511m187_10limbs/compilerxx.sh b/src/Specific/solinas64_2e511m187_10limbs/compilerxx.sh
deleted file mode 100755
index 32cb992c3..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<511) - 187' "$@"
diff --git a/src/Specific/solinas64_2e511m187_10limbs/feadd.c b/src/Specific/solinas64_2e511m187_10limbs/feadd.c
deleted file mode 100644
index df991e375..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/feadd.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void feadd(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- out[0] = (x5 + x23);
- out[1] = (x7 + x25);
- out[2] = (x9 + x27);
- out[3] = (x11 + x29);
- out[4] = (x13 + x31);
- out[5] = (x15 + x33);
- out[6] = (x17 + x35);
- out[7] = (x19 + x37);
- out[8] = (x21 + x39);
- out[9] = (x20 + x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e511m187_10limbs/feadd.v b/src/Specific/solinas64_2e511m187_10limbs/feadd.v
deleted file mode 100644
index 98f693777..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e511m187_10limbs.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/solinas64_2e511m187_10limbs/feaddDisplay.log b/src/Specific/solinas64_2e511m187_10limbs/feaddDisplay.log
deleted file mode 100644
index 04176128e..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e511m187_10limbs/feaddDisplay.v b/src/Specific/solinas64_2e511m187_10limbs/feaddDisplay.v
deleted file mode 100644
index 280b2f178..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e511m187_10limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e511m187_10limbs/fecarry.v b/src/Specific/solinas64_2e511m187_10limbs/fecarry.v
deleted file mode 100644
index b92653489..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e511m187_10limbs.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/solinas64_2e511m187_10limbs/fecarryDisplay.v b/src/Specific/solinas64_2e511m187_10limbs/fecarryDisplay.v
deleted file mode 100644
index 728accb70..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e511m187_10limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e511m187_10limbs/femul.c b/src/Specific/solinas64_2e511m187_10limbs/femul.c
deleted file mode 100644
index 73bb21edb..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/femul.c
+++ /dev/null
@@ -1,78 +0,0 @@
-static void femul(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- { uint128_t x40 = (((uint128_t)x5 * x38) + ((0x2 * ((uint128_t)x7 * x39)) + ((0x2 * ((uint128_t)x9 * x37)) + ((0x2 * ((uint128_t)x11 * x35)) + ((0x2 * ((uint128_t)x13 * x33)) + ((0x2 * ((uint128_t)x15 * x31)) + ((0x2 * ((uint128_t)x17 * x29)) + ((0x2 * ((uint128_t)x19 * x27)) + ((0x2 * ((uint128_t)x21 * x25)) + ((uint128_t)x20 * x23))))))))));
- { uint128_t x41 = ((((uint128_t)x5 * x39) + ((0x2 * ((uint128_t)x7 * x37)) + ((0x2 * ((uint128_t)x9 * x35)) + ((0x2 * ((uint128_t)x11 * x33)) + ((0x2 * ((uint128_t)x13 * x31)) + ((0x2 * ((uint128_t)x15 * x29)) + ((0x2 * ((uint128_t)x17 * x27)) + ((0x2 * ((uint128_t)x19 * x25)) + ((uint128_t)x21 * x23))))))))) + (0xbb * ((uint128_t)x20 * x38)));
- { uint128_t x42 = ((((uint128_t)x5 * x37) + ((0x2 * ((uint128_t)x7 * x35)) + ((0x2 * ((uint128_t)x9 * x33)) + ((0x2 * ((uint128_t)x11 * x31)) + ((0x2 * ((uint128_t)x13 * x29)) + ((0x2 * ((uint128_t)x15 * x27)) + ((0x2 * ((uint128_t)x17 * x25)) + ((uint128_t)x19 * x23)))))))) + (0xbb * (((uint128_t)x21 * x38) + ((uint128_t)x20 * x39))));
- { uint128_t x43 = ((((uint128_t)x5 * x35) + ((0x2 * ((uint128_t)x7 * x33)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((uint128_t)x17 * x23))))))) + (0xbb * (((uint128_t)x19 * x38) + (((uint128_t)x21 * x39) + ((uint128_t)x20 * x37)))));
- { uint128_t x44 = ((((uint128_t)x5 * x33) + ((0x2 * ((uint128_t)x7 * x31)) + ((0x2 * ((uint128_t)x9 * x29)) + ((0x2 * ((uint128_t)x11 * x27)) + ((0x2 * ((uint128_t)x13 * x25)) + ((uint128_t)x15 * x23)))))) + (0xbb * (((uint128_t)x17 * x38) + (((uint128_t)x19 * x39) + (((uint128_t)x21 * x37) + ((uint128_t)x20 * x35))))));
- { uint128_t x45 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((uint128_t)x13 * x23))))) + (0xbb * (((uint128_t)x15 * x38) + (((uint128_t)x17 * x39) + (((uint128_t)x19 * x37) + (((uint128_t)x21 * x35) + ((uint128_t)x20 * x33)))))));
- { uint128_t x46 = ((((uint128_t)x5 * x29) + ((0x2 * ((uint128_t)x7 * x27)) + ((0x2 * ((uint128_t)x9 * x25)) + ((uint128_t)x11 * x23)))) + (0xbb * (((uint128_t)x13 * x38) + (((uint128_t)x15 * x39) + (((uint128_t)x17 * x37) + (((uint128_t)x19 * x35) + (((uint128_t)x21 * x33) + ((uint128_t)x20 * x31))))))));
- { uint128_t x47 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((uint128_t)x9 * x23))) + (0xbb * (((uint128_t)x11 * x38) + (((uint128_t)x13 * x39) + (((uint128_t)x15 * x37) + (((uint128_t)x17 * x35) + (((uint128_t)x19 * x33) + (((uint128_t)x21 * x31) + ((uint128_t)x20 * x29)))))))));
- { uint128_t x48 = ((((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)) + (0xbb * (((uint128_t)x9 * x38) + (((uint128_t)x11 * x39) + (((uint128_t)x13 * x37) + (((uint128_t)x15 * x35) + (((uint128_t)x17 * x33) + (((uint128_t)x19 * x31) + (((uint128_t)x21 * x29) + ((uint128_t)x20 * x27))))))))));
- { uint128_t x49 = (((uint128_t)x5 * x23) + (0xbb * ((0x2 * ((uint128_t)x7 * x38)) + ((0x2 * ((uint128_t)x9 * x39)) + ((0x2 * ((uint128_t)x11 * x37)) + ((0x2 * ((uint128_t)x13 * x35)) + ((0x2 * ((uint128_t)x15 * x33)) + ((0x2 * ((uint128_t)x17 * x31)) + ((0x2 * ((uint128_t)x19 * x29)) + ((0x2 * ((uint128_t)x21 * x27)) + (0x2 * ((uint128_t)x20 * x25))))))))))));
- { uint128_t x50 = (x49 >> 0x34);
- { uint64_t x51 = ((uint64_t)x49 & 0xfffffffffffff);
- { uint128_t x52 = (x50 + x48);
- { uint128_t x53 = (x52 >> 0x33);
- { uint64_t x54 = ((uint64_t)x52 & 0x7ffffffffffff);
- { uint128_t x55 = (x53 + x47);
- { uint128_t x56 = (x55 >> 0x33);
- { uint64_t x57 = ((uint64_t)x55 & 0x7ffffffffffff);
- { uint128_t x58 = (x56 + x46);
- { uint128_t x59 = (x58 >> 0x33);
- { uint64_t x60 = ((uint64_t)x58 & 0x7ffffffffffff);
- { uint128_t x61 = (x59 + x45);
- { uint128_t x62 = (x61 >> 0x33);
- { uint64_t x63 = ((uint64_t)x61 & 0x7ffffffffffff);
- { uint128_t x64 = (x62 + x44);
- { uint128_t x65 = (x64 >> 0x33);
- { uint64_t x66 = ((uint64_t)x64 & 0x7ffffffffffff);
- { uint128_t x67 = (x65 + x43);
- { uint64_t x68 = (uint64_t) (x67 >> 0x33);
- { uint64_t x69 = ((uint64_t)x67 & 0x7ffffffffffff);
- { uint128_t x70 = (x68 + x42);
- { uint64_t x71 = (uint64_t) (x70 >> 0x33);
- { uint64_t x72 = ((uint64_t)x70 & 0x7ffffffffffff);
- { uint128_t x73 = (x71 + x41);
- { uint64_t x74 = (uint64_t) (x73 >> 0x33);
- { uint64_t x75 = ((uint64_t)x73 & 0x7ffffffffffff);
- { uint128_t x76 = (x74 + x40);
- { uint64_t x77 = (uint64_t) (x76 >> 0x33);
- { uint64_t x78 = ((uint64_t)x76 & 0x7ffffffffffff);
- { uint128_t x79 = (x51 + ((uint128_t)0xbb * x77));
- { uint64_t x80 = (uint64_t) (x79 >> 0x34);
- { uint64_t x81 = ((uint64_t)x79 & 0xfffffffffffff);
- { uint64_t x82 = (x80 + x54);
- { uint64_t x83 = (x82 >> 0x33);
- { uint64_t x84 = (x82 & 0x7ffffffffffff);
- out[0] = x81;
- out[1] = x84;
- out[2] = (x83 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e511m187_10limbs/femul.v b/src/Specific/solinas64_2e511m187_10limbs/femul.v
deleted file mode 100644
index d197a30c3..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e511m187_10limbs.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/solinas64_2e511m187_10limbs/femulDisplay.log b/src/Specific/solinas64_2e511m187_10limbs/femulDisplay.log
deleted file mode 100644
index 4b8437e91..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/femulDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- uint128_t x40 = (((uint128_t)x5 * x38) + ((0x2 * ((uint128_t)x7 * x39)) + ((0x2 * ((uint128_t)x9 * x37)) + ((0x2 * ((uint128_t)x11 * x35)) + ((0x2 * ((uint128_t)x13 * x33)) + ((0x2 * ((uint128_t)x15 * x31)) + ((0x2 * ((uint128_t)x17 * x29)) + ((0x2 * ((uint128_t)x19 * x27)) + ((0x2 * ((uint128_t)x21 * x25)) + ((uint128_t)x20 * x23))))))))));
- uint128_t x41 = ((((uint128_t)x5 * x39) + ((0x2 * ((uint128_t)x7 * x37)) + ((0x2 * ((uint128_t)x9 * x35)) + ((0x2 * ((uint128_t)x11 * x33)) + ((0x2 * ((uint128_t)x13 * x31)) + ((0x2 * ((uint128_t)x15 * x29)) + ((0x2 * ((uint128_t)x17 * x27)) + ((0x2 * ((uint128_t)x19 * x25)) + ((uint128_t)x21 * x23))))))))) + (0xbb * ((uint128_t)x20 * x38)));
- uint128_t x42 = ((((uint128_t)x5 * x37) + ((0x2 * ((uint128_t)x7 * x35)) + ((0x2 * ((uint128_t)x9 * x33)) + ((0x2 * ((uint128_t)x11 * x31)) + ((0x2 * ((uint128_t)x13 * x29)) + ((0x2 * ((uint128_t)x15 * x27)) + ((0x2 * ((uint128_t)x17 * x25)) + ((uint128_t)x19 * x23)))))))) + (0xbb * (((uint128_t)x21 * x38) + ((uint128_t)x20 * x39))));
- uint128_t x43 = ((((uint128_t)x5 * x35) + ((0x2 * ((uint128_t)x7 * x33)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((uint128_t)x17 * x23))))))) + (0xbb * (((uint128_t)x19 * x38) + (((uint128_t)x21 * x39) + ((uint128_t)x20 * x37)))));
- uint128_t x44 = ((((uint128_t)x5 * x33) + ((0x2 * ((uint128_t)x7 * x31)) + ((0x2 * ((uint128_t)x9 * x29)) + ((0x2 * ((uint128_t)x11 * x27)) + ((0x2 * ((uint128_t)x13 * x25)) + ((uint128_t)x15 * x23)))))) + (0xbb * (((uint128_t)x17 * x38) + (((uint128_t)x19 * x39) + (((uint128_t)x21 * x37) + ((uint128_t)x20 * x35))))));
- uint128_t x45 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((uint128_t)x13 * x23))))) + (0xbb * (((uint128_t)x15 * x38) + (((uint128_t)x17 * x39) + (((uint128_t)x19 * x37) + (((uint128_t)x21 * x35) + ((uint128_t)x20 * x33)))))));
- uint128_t x46 = ((((uint128_t)x5 * x29) + ((0x2 * ((uint128_t)x7 * x27)) + ((0x2 * ((uint128_t)x9 * x25)) + ((uint128_t)x11 * x23)))) + (0xbb * (((uint128_t)x13 * x38) + (((uint128_t)x15 * x39) + (((uint128_t)x17 * x37) + (((uint128_t)x19 * x35) + (((uint128_t)x21 * x33) + ((uint128_t)x20 * x31))))))));
- uint128_t x47 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((uint128_t)x9 * x23))) + (0xbb * (((uint128_t)x11 * x38) + (((uint128_t)x13 * x39) + (((uint128_t)x15 * x37) + (((uint128_t)x17 * x35) + (((uint128_t)x19 * x33) + (((uint128_t)x21 * x31) + ((uint128_t)x20 * x29)))))))));
- uint128_t x48 = ((((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)) + (0xbb * (((uint128_t)x9 * x38) + (((uint128_t)x11 * x39) + (((uint128_t)x13 * x37) + (((uint128_t)x15 * x35) + (((uint128_t)x17 * x33) + (((uint128_t)x19 * x31) + (((uint128_t)x21 * x29) + ((uint128_t)x20 * x27))))))))));
- uint128_t x49 = (((uint128_t)x5 * x23) + (0xbb * ((0x2 * ((uint128_t)x7 * x38)) + ((0x2 * ((uint128_t)x9 * x39)) + ((0x2 * ((uint128_t)x11 * x37)) + ((0x2 * ((uint128_t)x13 * x35)) + ((0x2 * ((uint128_t)x15 * x33)) + ((0x2 * ((uint128_t)x17 * x31)) + ((0x2 * ((uint128_t)x19 * x29)) + ((0x2 * ((uint128_t)x21 * x27)) + (0x2 * ((uint128_t)x20 * x25))))))))))));
- uint128_t x50 = (x49 >> 0x34);
- uint64_t x51 = ((uint64_t)x49 & 0xfffffffffffff);
- uint128_t x52 = (x50 + x48);
- uint128_t x53 = (x52 >> 0x33);
- uint64_t x54 = ((uint64_t)x52 & 0x7ffffffffffff);
- uint128_t x55 = (x53 + x47);
- uint128_t x56 = (x55 >> 0x33);
- uint64_t x57 = ((uint64_t)x55 & 0x7ffffffffffff);
- uint128_t x58 = (x56 + x46);
- uint128_t x59 = (x58 >> 0x33);
- uint64_t x60 = ((uint64_t)x58 & 0x7ffffffffffff);
- uint128_t x61 = (x59 + x45);
- uint128_t x62 = (x61 >> 0x33);
- uint64_t x63 = ((uint64_t)x61 & 0x7ffffffffffff);
- uint128_t x64 = (x62 + x44);
- uint128_t x65 = (x64 >> 0x33);
- uint64_t x66 = ((uint64_t)x64 & 0x7ffffffffffff);
- uint128_t x67 = (x65 + x43);
- uint64_t x68 = (uint64_t) (x67 >> 0x33);
- uint64_t x69 = ((uint64_t)x67 & 0x7ffffffffffff);
- uint128_t x70 = (x68 + x42);
- uint64_t x71 = (uint64_t) (x70 >> 0x33);
- uint64_t x72 = ((uint64_t)x70 & 0x7ffffffffffff);
- uint128_t x73 = (x71 + x41);
- uint64_t x74 = (uint64_t) (x73 >> 0x33);
- uint64_t x75 = ((uint64_t)x73 & 0x7ffffffffffff);
- uint128_t x76 = (x74 + x40);
- uint64_t x77 = (uint64_t) (x76 >> 0x33);
- uint64_t x78 = ((uint64_t)x76 & 0x7ffffffffffff);
- uint128_t x79 = (x51 + ((uint128_t)0xbb * x77));
- uint64_t x80 = (uint64_t) (x79 >> 0x34);
- uint64_t x81 = ((uint64_t)x79 & 0xfffffffffffff);
- uint64_t x82 = (x80 + x54);
- uint64_t x83 = (x82 >> 0x33);
- uint64_t x84 = (x82 & 0x7ffffffffffff);
- return (Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x83 + x57), Return x84, Return x81))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e511m187_10limbs/femulDisplay.v b/src/Specific/solinas64_2e511m187_10limbs/femulDisplay.v
deleted file mode 100644
index 5b5127c3b..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e511m187_10limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e511m187_10limbs/fesquare.c b/src/Specific/solinas64_2e511m187_10limbs/fesquare.c
deleted file mode 100644
index 03d4677cd..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/fesquare.c
+++ /dev/null
@@ -1,68 +0,0 @@
-static void fesquare(uint64_t out[10], const uint64_t in1[10]) {
- { const uint64_t x17 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x19 = (((uint128_t)x2 * x17) + ((0x2 * ((uint128_t)x4 * x18)) + ((0x2 * ((uint128_t)x6 * x16)) + ((0x2 * ((uint128_t)x8 * x14)) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + ((0x2 * ((uint128_t)x14 * x8)) + ((0x2 * ((uint128_t)x16 * x6)) + ((0x2 * ((uint128_t)x18 * x4)) + ((uint128_t)x17 * x2))))))))));
- { uint128_t x20 = ((((uint128_t)x2 * x18) + ((0x2 * ((uint128_t)x4 * x16)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + ((0x2 * ((uint128_t)x16 * x4)) + ((uint128_t)x18 * x2))))))))) + (0xbb * ((uint128_t)x17 * x17)));
- { uint128_t x21 = ((((uint128_t)x2 * x16) + ((0x2 * ((uint128_t)x4 * x14)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + ((0x2 * ((uint128_t)x14 * x4)) + ((uint128_t)x16 * x2)))))))) + (0xbb * (((uint128_t)x18 * x17) + ((uint128_t)x17 * x18))));
- { uint128_t x22 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + ((0x2 * ((uint128_t)x6 * x10)) + ((0x2 * ((uint128_t)x8 * x8)) + ((0x2 * ((uint128_t)x10 * x6)) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0xbb * (((uint128_t)x16 * x17) + (((uint128_t)x18 * x18) + ((uint128_t)x17 * x16)))));
- { uint128_t x23 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0xbb * (((uint128_t)x14 * x17) + (((uint128_t)x16 * x18) + (((uint128_t)x18 * x16) + ((uint128_t)x17 * x14))))));
- { uint128_t x24 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0xbb * (((uint128_t)x12 * x17) + (((uint128_t)x14 * x18) + (((uint128_t)x16 * x16) + (((uint128_t)x18 * x14) + ((uint128_t)x17 * x12)))))));
- { uint128_t x25 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0xbb * (((uint128_t)x10 * x17) + (((uint128_t)x12 * x18) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + (((uint128_t)x18 * x12) + ((uint128_t)x17 * x10))))))));
- { uint128_t x26 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0xbb * (((uint128_t)x8 * x17) + (((uint128_t)x10 * x18) + (((uint128_t)x12 * x16) + (((uint128_t)x14 * x14) + (((uint128_t)x16 * x12) + (((uint128_t)x18 * x10) + ((uint128_t)x17 * x8)))))))));
- { uint128_t x27 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xbb * (((uint128_t)x6 * x17) + (((uint128_t)x8 * x18) + (((uint128_t)x10 * x16) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + (((uint128_t)x16 * x10) + (((uint128_t)x18 * x8) + ((uint128_t)x17 * x6))))))))));
- { uint128_t x28 = (((uint128_t)x2 * x2) + (0xbb * ((0x2 * ((uint128_t)x4 * x17)) + ((0x2 * ((uint128_t)x6 * x18)) + ((0x2 * ((uint128_t)x8 * x16)) + ((0x2 * ((uint128_t)x10 * x14)) + ((0x2 * ((uint128_t)x12 * x12)) + ((0x2 * ((uint128_t)x14 * x10)) + ((0x2 * ((uint128_t)x16 * x8)) + ((0x2 * ((uint128_t)x18 * x6)) + (0x2 * ((uint128_t)x17 * x4))))))))))));
- { uint128_t x29 = (x28 >> 0x34);
- { uint64_t x30 = ((uint64_t)x28 & 0xfffffffffffff);
- { uint128_t x31 = (x29 + x27);
- { uint128_t x32 = (x31 >> 0x33);
- { uint64_t x33 = ((uint64_t)x31 & 0x7ffffffffffff);
- { uint128_t x34 = (x32 + x26);
- { uint128_t x35 = (x34 >> 0x33);
- { uint64_t x36 = ((uint64_t)x34 & 0x7ffffffffffff);
- { uint128_t x37 = (x35 + x25);
- { uint128_t x38 = (x37 >> 0x33);
- { uint64_t x39 = ((uint64_t)x37 & 0x7ffffffffffff);
- { uint128_t x40 = (x38 + x24);
- { uint128_t x41 = (x40 >> 0x33);
- { uint64_t x42 = ((uint64_t)x40 & 0x7ffffffffffff);
- { uint128_t x43 = (x41 + x23);
- { uint128_t x44 = (x43 >> 0x33);
- { uint64_t x45 = ((uint64_t)x43 & 0x7ffffffffffff);
- { uint128_t x46 = (x44 + x22);
- { uint64_t x47 = (uint64_t) (x46 >> 0x33);
- { uint64_t x48 = ((uint64_t)x46 & 0x7ffffffffffff);
- { uint128_t x49 = (x47 + x21);
- { uint64_t x50 = (uint64_t) (x49 >> 0x33);
- { uint64_t x51 = ((uint64_t)x49 & 0x7ffffffffffff);
- { uint128_t x52 = (x50 + x20);
- { uint64_t x53 = (uint64_t) (x52 >> 0x33);
- { uint64_t x54 = ((uint64_t)x52 & 0x7ffffffffffff);
- { uint128_t x55 = (x53 + x19);
- { uint64_t x56 = (uint64_t) (x55 >> 0x33);
- { uint64_t x57 = ((uint64_t)x55 & 0x7ffffffffffff);
- { uint128_t x58 = (x30 + ((uint128_t)0xbb * x56));
- { uint64_t x59 = (uint64_t) (x58 >> 0x34);
- { uint64_t x60 = ((uint64_t)x58 & 0xfffffffffffff);
- { uint64_t x61 = (x59 + x33);
- { uint64_t x62 = (x61 >> 0x33);
- { uint64_t x63 = (x61 & 0x7ffffffffffff);
- out[0] = x60;
- out[1] = x63;
- out[2] = (x62 + x36);
- out[3] = x39;
- out[4] = x42;
- out[5] = x45;
- out[6] = x48;
- out[7] = x51;
- out[8] = x54;
- out[9] = x57;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e511m187_10limbs/fesquare.v b/src/Specific/solinas64_2e511m187_10limbs/fesquare.v
deleted file mode 100644
index 01e1b7b8e..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e511m187_10limbs.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/solinas64_2e511m187_10limbs/fesquareDisplay.log b/src/Specific/solinas64_2e511m187_10limbs/fesquareDisplay.log
deleted file mode 100644
index 2abb714d0..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x19 = (((uint128_t)x2 * x17) + ((0x2 * ((uint128_t)x4 * x18)) + ((0x2 * ((uint128_t)x6 * x16)) + ((0x2 * ((uint128_t)x8 * x14)) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + ((0x2 * ((uint128_t)x14 * x8)) + ((0x2 * ((uint128_t)x16 * x6)) + ((0x2 * ((uint128_t)x18 * x4)) + ((uint128_t)x17 * x2))))))))));
- uint128_t x20 = ((((uint128_t)x2 * x18) + ((0x2 * ((uint128_t)x4 * x16)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + ((0x2 * ((uint128_t)x16 * x4)) + ((uint128_t)x18 * x2))))))))) + (0xbb * ((uint128_t)x17 * x17)));
- uint128_t x21 = ((((uint128_t)x2 * x16) + ((0x2 * ((uint128_t)x4 * x14)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + ((0x2 * ((uint128_t)x14 * x4)) + ((uint128_t)x16 * x2)))))))) + (0xbb * (((uint128_t)x18 * x17) + ((uint128_t)x17 * x18))));
- uint128_t x22 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + ((0x2 * ((uint128_t)x6 * x10)) + ((0x2 * ((uint128_t)x8 * x8)) + ((0x2 * ((uint128_t)x10 * x6)) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0xbb * (((uint128_t)x16 * x17) + (((uint128_t)x18 * x18) + ((uint128_t)x17 * x16)))));
- uint128_t x23 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0xbb * (((uint128_t)x14 * x17) + (((uint128_t)x16 * x18) + (((uint128_t)x18 * x16) + ((uint128_t)x17 * x14))))));
- uint128_t x24 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0xbb * (((uint128_t)x12 * x17) + (((uint128_t)x14 * x18) + (((uint128_t)x16 * x16) + (((uint128_t)x18 * x14) + ((uint128_t)x17 * x12)))))));
- uint128_t x25 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0xbb * (((uint128_t)x10 * x17) + (((uint128_t)x12 * x18) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + (((uint128_t)x18 * x12) + ((uint128_t)x17 * x10))))))));
- uint128_t x26 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0xbb * (((uint128_t)x8 * x17) + (((uint128_t)x10 * x18) + (((uint128_t)x12 * x16) + (((uint128_t)x14 * x14) + (((uint128_t)x16 * x12) + (((uint128_t)x18 * x10) + ((uint128_t)x17 * x8)))))))));
- uint128_t x27 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xbb * (((uint128_t)x6 * x17) + (((uint128_t)x8 * x18) + (((uint128_t)x10 * x16) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + (((uint128_t)x16 * x10) + (((uint128_t)x18 * x8) + ((uint128_t)x17 * x6))))))))));
- uint128_t x28 = (((uint128_t)x2 * x2) + (0xbb * ((0x2 * ((uint128_t)x4 * x17)) + ((0x2 * ((uint128_t)x6 * x18)) + ((0x2 * ((uint128_t)x8 * x16)) + ((0x2 * ((uint128_t)x10 * x14)) + ((0x2 * ((uint128_t)x12 * x12)) + ((0x2 * ((uint128_t)x14 * x10)) + ((0x2 * ((uint128_t)x16 * x8)) + ((0x2 * ((uint128_t)x18 * x6)) + (0x2 * ((uint128_t)x17 * x4))))))))))));
- uint128_t x29 = (x28 >> 0x34);
- uint64_t x30 = ((uint64_t)x28 & 0xfffffffffffff);
- uint128_t x31 = (x29 + x27);
- uint128_t x32 = (x31 >> 0x33);
- uint64_t x33 = ((uint64_t)x31 & 0x7ffffffffffff);
- uint128_t x34 = (x32 + x26);
- uint128_t x35 = (x34 >> 0x33);
- uint64_t x36 = ((uint64_t)x34 & 0x7ffffffffffff);
- uint128_t x37 = (x35 + x25);
- uint128_t x38 = (x37 >> 0x33);
- uint64_t x39 = ((uint64_t)x37 & 0x7ffffffffffff);
- uint128_t x40 = (x38 + x24);
- uint128_t x41 = (x40 >> 0x33);
- uint64_t x42 = ((uint64_t)x40 & 0x7ffffffffffff);
- uint128_t x43 = (x41 + x23);
- uint128_t x44 = (x43 >> 0x33);
- uint64_t x45 = ((uint64_t)x43 & 0x7ffffffffffff);
- uint128_t x46 = (x44 + x22);
- uint64_t x47 = (uint64_t) (x46 >> 0x33);
- uint64_t x48 = ((uint64_t)x46 & 0x7ffffffffffff);
- uint128_t x49 = (x47 + x21);
- uint64_t x50 = (uint64_t) (x49 >> 0x33);
- uint64_t x51 = ((uint64_t)x49 & 0x7ffffffffffff);
- uint128_t x52 = (x50 + x20);
- uint64_t x53 = (uint64_t) (x52 >> 0x33);
- uint64_t x54 = ((uint64_t)x52 & 0x7ffffffffffff);
- uint128_t x55 = (x53 + x19);
- uint64_t x56 = (uint64_t) (x55 >> 0x33);
- uint64_t x57 = ((uint64_t)x55 & 0x7ffffffffffff);
- uint128_t x58 = (x30 + ((uint128_t)0xbb * x56));
- uint64_t x59 = (uint64_t) (x58 >> 0x34);
- uint64_t x60 = ((uint64_t)x58 & 0xfffffffffffff);
- uint64_t x61 = (x59 + x33);
- uint64_t x62 = (x61 >> 0x33);
- uint64_t x63 = (x61 & 0x7ffffffffffff);
- return (Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, Return x39, (x62 + x36), Return x63, Return x60))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e511m187_10limbs/fesquareDisplay.v b/src/Specific/solinas64_2e511m187_10limbs/fesquareDisplay.v
deleted file mode 100644
index 82505c6f9..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e511m187_10limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e511m187_10limbs/fesub.c b/src/Specific/solinas64_2e511m187_10limbs/fesub.c
deleted file mode 100644
index f348c1776..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/fesub.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fesub(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- out[0] = ((0x1ffffffffffe8a + x5) - x23);
- out[1] = ((0xffffffffffffe + x7) - x25);
- out[2] = ((0xffffffffffffe + x9) - x27);
- out[3] = ((0xffffffffffffe + x11) - x29);
- out[4] = ((0xffffffffffffe + x13) - x31);
- out[5] = ((0xffffffffffffe + x15) - x33);
- out[6] = ((0xffffffffffffe + x17) - x35);
- out[7] = ((0xffffffffffffe + x19) - x37);
- out[8] = ((0xffffffffffffe + x21) - x39);
- out[9] = ((0xffffffffffffe + x20) - x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e511m187_10limbs/fesub.v b/src/Specific/solinas64_2e511m187_10limbs/fesub.v
deleted file mode 100644
index ef4cf346a..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e511m187_10limbs.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/solinas64_2e511m187_10limbs/fesubDisplay.log b/src/Specific/solinas64_2e511m187_10limbs/fesubDisplay.log
deleted file mode 100644
index db1dc87a3..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- (((0xffffffffffffe + x20) - x38), ((0xffffffffffffe + x21) - x39), ((0xffffffffffffe + x19) - x37), ((0xffffffffffffe + x17) - x35), ((0xffffffffffffe + x15) - x33), ((0xffffffffffffe + x13) - x31), ((0xffffffffffffe + x11) - x29), ((0xffffffffffffe + x9) - x27), ((0xffffffffffffe + x7) - x25), ((0x1ffffffffffe8a + x5) - x23)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e511m187_10limbs/fesubDisplay.v b/src/Specific/solinas64_2e511m187_10limbs/fesubDisplay.v
deleted file mode 100644
index d6a081ac2..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e511m187_10limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e511m187_10limbs/freeze.c b/src/Specific/solinas64_2e511m187_10limbs/freeze.c
deleted file mode 100644
index 05758b2b3..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/freeze.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void freeze(uint64_t out[10], const uint64_t in1[10]) {
- { const uint64_t x17 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffff45);
- { uint64_t x23; uint8_t x24 = _subborrow_u51(x21, x4, 0x7ffffffffffff, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u51(x24, x6, 0x7ffffffffffff, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u51(x27, x8, 0x7ffffffffffff, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u51(x30, x10, 0x7ffffffffffff, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u51(x33, x12, 0x7ffffffffffff, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u51(x36, x14, 0x7ffffffffffff, &x38);
- { uint64_t x41; uint8_t x42 = _subborrow_u51(x39, x16, 0x7ffffffffffff, &x41);
- { uint64_t x44; uint8_t x45 = _subborrow_u51(x42, x18, 0x7ffffffffffff, &x44);
- { uint64_t x47; uint8_t x48 = _subborrow_u51(x45, x17, 0x7ffffffffffff, &x47);
- { uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL);
- { uint64_t x50 = (x49 & 0xfffffffffff45);
- { uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- { uint64_t x54 = (x49 & 0x7ffffffffffff);
- { uint64_t x56; uint8_t x57 = _addcarryx_u51(x53, x23, x54, &x56);
- { uint64_t x58 = (x49 & 0x7ffffffffffff);
- { uint64_t x60; uint8_t x61 = _addcarryx_u51(x57, x26, x58, &x60);
- { uint64_t x62 = (x49 & 0x7ffffffffffff);
- { uint64_t x64; uint8_t x65 = _addcarryx_u51(x61, x29, x62, &x64);
- { uint64_t x66 = (x49 & 0x7ffffffffffff);
- { uint64_t x68; uint8_t x69 = _addcarryx_u51(x65, x32, x66, &x68);
- { uint64_t x70 = (x49 & 0x7ffffffffffff);
- { uint64_t x72; uint8_t x73 = _addcarryx_u51(x69, x35, x70, &x72);
- { uint64_t x74 = (x49 & 0x7ffffffffffff);
- { uint64_t x76; uint8_t x77 = _addcarryx_u51(x73, x38, x74, &x76);
- { uint64_t x78 = (x49 & 0x7ffffffffffff);
- { uint64_t x80; uint8_t x81 = _addcarryx_u51(x77, x41, x78, &x80);
- { uint64_t x82 = (x49 & 0x7ffffffffffff);
- { uint64_t x84; uint8_t x85 = _addcarryx_u51(x81, x44, x82, &x84);
- { uint64_t x86 = (x49 & 0x7ffffffffffff);
- { uint64_t x88; uint8_t _ = _addcarryx_u51(x85, x47, x86, &x88);
- out[0] = x52;
- out[1] = x56;
- out[2] = x60;
- out[3] = x64;
- out[4] = x68;
- out[5] = x72;
- out[6] = x76;
- out[7] = x80;
- out[8] = x84;
- out[9] = x88;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e511m187_10limbs/freeze.v b/src/Specific/solinas64_2e511m187_10limbs/freeze.v
deleted file mode 100644
index 40d6a09e6..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e511m187_10limbs.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/solinas64_2e511m187_10limbs/freezeDisplay.log b/src/Specific/solinas64_2e511m187_10limbs/freezeDisplay.log
deleted file mode 100644
index 1dd7de935..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xfffffffffff45);
- uint64_t x23, uint8_t x24 = subborrow_u51(x21, x4, 0x7ffffffffffff);
- uint64_t x26, uint8_t x27 = subborrow_u51(x24, x6, 0x7ffffffffffff);
- uint64_t x29, uint8_t x30 = subborrow_u51(x27, x8, 0x7ffffffffffff);
- uint64_t x32, uint8_t x33 = subborrow_u51(x30, x10, 0x7ffffffffffff);
- uint64_t x35, uint8_t x36 = subborrow_u51(x33, x12, 0x7ffffffffffff);
- uint64_t x38, uint8_t x39 = subborrow_u51(x36, x14, 0x7ffffffffffff);
- uint64_t x41, uint8_t x42 = subborrow_u51(x39, x16, 0x7ffffffffffff);
- uint64_t x44, uint8_t x45 = subborrow_u51(x42, x18, 0x7ffffffffffff);
- uint64_t x47, uint8_t x48 = subborrow_u51(x45, x17, 0x7ffffffffffff);
- uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL);
- uint64_t x50 = (x49 & 0xfffffffffff45);
- uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- uint64_t x54 = (x49 & 0x7ffffffffffff);
- uint64_t x56, uint8_t x57 = addcarryx_u51(x53, x23, x54);
- uint64_t x58 = (x49 & 0x7ffffffffffff);
- uint64_t x60, uint8_t x61 = addcarryx_u51(x57, x26, x58);
- uint64_t x62 = (x49 & 0x7ffffffffffff);
- uint64_t x64, uint8_t x65 = addcarryx_u51(x61, x29, x62);
- uint64_t x66 = (x49 & 0x7ffffffffffff);
- uint64_t x68, uint8_t x69 = addcarryx_u51(x65, x32, x66);
- uint64_t x70 = (x49 & 0x7ffffffffffff);
- uint64_t x72, uint8_t x73 = addcarryx_u51(x69, x35, x70);
- uint64_t x74 = (x49 & 0x7ffffffffffff);
- uint64_t x76, uint8_t x77 = addcarryx_u51(x73, x38, x74);
- uint64_t x78 = (x49 & 0x7ffffffffffff);
- uint64_t x80, uint8_t x81 = addcarryx_u51(x77, x41, x78);
- uint64_t x82 = (x49 & 0x7ffffffffffff);
- uint64_t x84, uint8_t x85 = addcarryx_u51(x81, x44, x82);
- uint64_t x86 = (x49 & 0x7ffffffffffff);
- uint64_t x88, uint8_t _ = addcarryx_u51(x85, x47, x86);
- (Return x88, Return x84, Return x80, Return x76, Return x72, Return x68, Return x64, Return x60, Return x56, Return x52))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e511m187_10limbs/freezeDisplay.v b/src/Specific/solinas64_2e511m187_10limbs/freezeDisplay.v
deleted file mode 100644
index 02df3b1c5..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e511m187_10limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e511m187_10limbs/py_interpreter.sh b/src/Specific/solinas64_2e511m187_10limbs/py_interpreter.sh
deleted file mode 100755
index 92089121f..000000000
--- a/src/Specific/solinas64_2e511m187_10limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**511 - 187' -Dmodulus_bytes='51.1' -Da24='121665'
diff --git a/src/Specific/solinas64_2e511m187_11limbs/CurveParameters.v b/src/Specific/solinas64_2e511m187_11limbs/CurveParameters.v
deleted file mode 100644
index 6dc55a188..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^511 - 187
-Base: 46 + 5/11
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 11%nat;
- base := 46 + 5/11;
- bitwidth := 64;
- s := 2^511;
- c := [(1, 187)];
- carry_chains := Some [seq 0 (pred 11); [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/solinas64_2e511m187_11limbs/Synthesis.v b/src/Specific/solinas64_2e511m187_11limbs/Synthesis.v
deleted file mode 100644
index 9d7c498c0..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e511m187_11limbs.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/solinas64_2e511m187_11limbs/compiler.sh b/src/Specific/solinas64_2e511m187_11limbs/compiler.sh
deleted file mode 100755
index 50249c6cd..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,46,47,46,47,46,47,46,47,46,46}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<511) - 187' "$@"
diff --git a/src/Specific/solinas64_2e511m187_11limbs/compilerxx.sh b/src/Specific/solinas64_2e511m187_11limbs/compilerxx.sh
deleted file mode 100755
index 68668da4f..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,46,47,46,47,46,47,46,47,46,46}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<511) - 187' "$@"
diff --git a/src/Specific/solinas64_2e511m187_11limbs/feadd.c b/src/Specific/solinas64_2e511m187_11limbs/feadd.c
deleted file mode 100644
index f810d17db..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/feadd.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void feadd(uint64_t out[11], const uint64_t in1[11], const uint64_t in2[11]) {
- { const uint64_t x22 = in1[10];
- { const uint64_t x23 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x42 = in2[10];
- { const uint64_t x43 = in2[9];
- { const uint64_t x41 = in2[8];
- { const uint64_t x39 = in2[7];
- { const uint64_t x37 = in2[6];
- { const uint64_t x35 = in2[5];
- { const uint64_t x33 = in2[4];
- { const uint64_t x31 = in2[3];
- { const uint64_t x29 = in2[2];
- { const uint64_t x27 = in2[1];
- { const uint64_t x25 = in2[0];
- out[0] = (x5 + x25);
- out[1] = (x7 + x27);
- out[2] = (x9 + x29);
- out[3] = (x11 + x31);
- out[4] = (x13 + x33);
- out[5] = (x15 + x35);
- out[6] = (x17 + x37);
- out[7] = (x19 + x39);
- out[8] = (x21 + x41);
- out[9] = (x23 + x43);
- out[10] = (x22 + x42);
- }}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e511m187_11limbs/feadd.v b/src/Specific/solinas64_2e511m187_11limbs/feadd.v
deleted file mode 100644
index b3589c830..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e511m187_11limbs.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/solinas64_2e511m187_11limbs/feaddDisplay.log b/src/Specific/solinas64_2e511m187_11limbs/feaddDisplay.log
deleted file mode 100644
index 83efadb9e..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- ((x22 + x42), (x23 + x43), (x21 + x41), (x19 + x39), (x17 + x37), (x15 + x35), (x13 + x33), (x11 + x31), (x9 + x29), (x7 + x27), (x5 + x25)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e511m187_11limbs/feaddDisplay.v b/src/Specific/solinas64_2e511m187_11limbs/feaddDisplay.v
deleted file mode 100644
index 19f591de4..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e511m187_11limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e511m187_11limbs/fecarry.v b/src/Specific/solinas64_2e511m187_11limbs/fecarry.v
deleted file mode 100644
index d149f3525..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e511m187_11limbs.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/solinas64_2e511m187_11limbs/fecarryDisplay.v b/src/Specific/solinas64_2e511m187_11limbs/fecarryDisplay.v
deleted file mode 100644
index bfbbf5fc3..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e511m187_11limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e511m187_11limbs/femul.c b/src/Specific/solinas64_2e511m187_11limbs/femul.c
deleted file mode 100644
index 302f33513..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/femul.c
+++ /dev/null
@@ -1,85 +0,0 @@
-static void femul(uint64_t out[11], const uint64_t in1[11], const uint64_t in2[11]) {
- { const uint64_t x22 = in1[10];
- { const uint64_t x23 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x42 = in2[10];
- { const uint64_t x43 = in2[9];
- { const uint64_t x41 = in2[8];
- { const uint64_t x39 = in2[7];
- { const uint64_t x37 = in2[6];
- { const uint64_t x35 = in2[5];
- { const uint64_t x33 = in2[4];
- { const uint64_t x31 = in2[3];
- { const uint64_t x29 = in2[2];
- { const uint64_t x27 = in2[1];
- { const uint64_t x25 = in2[0];
- { uint128_t x44 = (((uint128_t)x5 * x42) + ((0x2 * ((uint128_t)x7 * x43)) + (((uint128_t)x9 * x41) + ((0x2 * ((uint128_t)x11 * x39)) + (((uint128_t)x13 * x37) + ((0x2 * ((uint128_t)x15 * x35)) + (((uint128_t)x17 * x33) + ((0x2 * ((uint128_t)x19 * x31)) + (((uint128_t)x21 * x29) + ((0x2 * ((uint128_t)x23 * x27)) + ((uint128_t)x22 * x25)))))))))));
- { uint128_t x45 = ((((uint128_t)x5 * x43) + (((uint128_t)x7 * x41) + (((uint128_t)x9 * x39) + (((uint128_t)x11 * x37) + (((uint128_t)x13 * x35) + (((uint128_t)x15 * x33) + (((uint128_t)x17 * x31) + (((uint128_t)x19 * x29) + (((uint128_t)x21 * x27) + ((uint128_t)x23 * x25)))))))))) + (0xbb * ((uint128_t)x22 * x42)));
- { uint128_t x46 = ((((uint128_t)x5 * x41) + ((0x2 * ((uint128_t)x7 * x39)) + (((uint128_t)x9 * x37) + ((0x2 * ((uint128_t)x11 * x35)) + (((uint128_t)x13 * x33) + ((0x2 * ((uint128_t)x15 * x31)) + (((uint128_t)x17 * x29) + ((0x2 * ((uint128_t)x19 * x27)) + ((uint128_t)x21 * x25))))))))) + (0xbb * ((0x2 * ((uint128_t)x23 * x42)) + (0x2 * ((uint128_t)x22 * x43)))));
- { uint128_t x47 = ((((uint128_t)x5 * x39) + (((uint128_t)x7 * x37) + (((uint128_t)x9 * x35) + (((uint128_t)x11 * x33) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + (((uint128_t)x17 * x27) + ((uint128_t)x19 * x25)))))))) + (0xbb * (((uint128_t)x21 * x42) + ((0x2 * ((uint128_t)x23 * x43)) + ((uint128_t)x22 * x41)))));
- { uint128_t x48 = ((((uint128_t)x5 * x37) + ((0x2 * ((uint128_t)x7 * x35)) + (((uint128_t)x9 * x33) + ((0x2 * ((uint128_t)x11 * x31)) + (((uint128_t)x13 * x29) + ((0x2 * ((uint128_t)x15 * x27)) + ((uint128_t)x17 * x25))))))) + (0xbb * ((0x2 * ((uint128_t)x19 * x42)) + ((0x2 * ((uint128_t)x21 * x43)) + ((0x2 * ((uint128_t)x23 * x41)) + (0x2 * ((uint128_t)x22 * x39)))))));
- { uint128_t x49 = ((((uint128_t)x5 * x35) + (((uint128_t)x7 * x33) + (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + ((uint128_t)x15 * x25)))))) + (0xbb * (((uint128_t)x17 * x42) + ((0x2 * ((uint128_t)x19 * x43)) + (((uint128_t)x21 * x41) + ((0x2 * ((uint128_t)x23 * x39)) + ((uint128_t)x22 * x37)))))));
- { uint128_t x50 = ((((uint128_t)x5 * x33) + ((0x2 * ((uint128_t)x7 * x31)) + (((uint128_t)x9 * x29) + ((0x2 * ((uint128_t)x11 * x27)) + ((uint128_t)x13 * x25))))) + (0xbb * ((0x2 * ((uint128_t)x15 * x42)) + ((0x2 * ((uint128_t)x17 * x43)) + ((0x2 * ((uint128_t)x19 * x41)) + ((0x2 * ((uint128_t)x21 * x39)) + ((0x2 * ((uint128_t)x23 * x37)) + (0x2 * ((uint128_t)x22 * x35)))))))));
- { uint128_t x51 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + ((uint128_t)x11 * x25)))) + (0xbb * (((uint128_t)x13 * x42) + ((0x2 * ((uint128_t)x15 * x43)) + (((uint128_t)x17 * x41) + ((0x2 * ((uint128_t)x19 * x39)) + (((uint128_t)x21 * x37) + ((0x2 * ((uint128_t)x23 * x35)) + ((uint128_t)x22 * x33)))))))));
- { uint128_t x52 = ((((uint128_t)x5 * x29) + ((0x2 * ((uint128_t)x7 * x27)) + ((uint128_t)x9 * x25))) + (0xbb * ((0x2 * ((uint128_t)x11 * x42)) + ((0x2 * ((uint128_t)x13 * x43)) + ((0x2 * ((uint128_t)x15 * x41)) + ((0x2 * ((uint128_t)x17 * x39)) + ((0x2 * ((uint128_t)x19 * x37)) + ((0x2 * ((uint128_t)x21 * x35)) + ((0x2 * ((uint128_t)x23 * x33)) + (0x2 * ((uint128_t)x22 * x31)))))))))));
- { uint128_t x53 = ((((uint128_t)x5 * x27) + ((uint128_t)x7 * x25)) + (0xbb * (((uint128_t)x9 * x42) + ((0x2 * ((uint128_t)x11 * x43)) + (((uint128_t)x13 * x41) + ((0x2 * ((uint128_t)x15 * x39)) + (((uint128_t)x17 * x37) + ((0x2 * ((uint128_t)x19 * x35)) + (((uint128_t)x21 * x33) + ((0x2 * ((uint128_t)x23 * x31)) + ((uint128_t)x22 * x29)))))))))));
- { uint128_t x54 = (((uint128_t)x5 * x25) + (0xbb * ((0x2 * ((uint128_t)x7 * x42)) + ((0x2 * ((uint128_t)x9 * x43)) + ((0x2 * ((uint128_t)x11 * x41)) + ((0x2 * ((uint128_t)x13 * x39)) + ((0x2 * ((uint128_t)x15 * x37)) + ((0x2 * ((uint128_t)x17 * x35)) + ((0x2 * ((uint128_t)x19 * x33)) + ((0x2 * ((uint128_t)x21 * x31)) + ((0x2 * ((uint128_t)x23 * x29)) + (0x2 * ((uint128_t)x22 * x27)))))))))))));
- { uint64_t x55 = (uint64_t) (x54 >> 0x2f);
- { uint64_t x56 = ((uint64_t)x54 & 0x7fffffffffff);
- { uint128_t x57 = (x55 + x53);
- { uint64_t x58 = (uint64_t) (x57 >> 0x2e);
- { uint64_t x59 = ((uint64_t)x57 & 0x3fffffffffff);
- { uint128_t x60 = (x58 + x52);
- { uint64_t x61 = (uint64_t) (x60 >> 0x2f);
- { uint64_t x62 = ((uint64_t)x60 & 0x7fffffffffff);
- { uint128_t x63 = (x61 + x51);
- { uint64_t x64 = (uint64_t) (x63 >> 0x2e);
- { uint64_t x65 = ((uint64_t)x63 & 0x3fffffffffff);
- { uint128_t x66 = (x64 + x50);
- { uint64_t x67 = (uint64_t) (x66 >> 0x2f);
- { uint64_t x68 = ((uint64_t)x66 & 0x7fffffffffff);
- { uint128_t x69 = (x67 + x49);
- { uint64_t x70 = (uint64_t) (x69 >> 0x2e);
- { uint64_t x71 = ((uint64_t)x69 & 0x3fffffffffff);
- { uint128_t x72 = (x70 + x48);
- { uint64_t x73 = (uint64_t) (x72 >> 0x2f);
- { uint64_t x74 = ((uint64_t)x72 & 0x7fffffffffff);
- { uint128_t x75 = (x73 + x47);
- { uint64_t x76 = (uint64_t) (x75 >> 0x2e);
- { uint64_t x77 = ((uint64_t)x75 & 0x3fffffffffff);
- { uint128_t x78 = (x76 + x46);
- { uint64_t x79 = (uint64_t) (x78 >> 0x2f);
- { uint64_t x80 = ((uint64_t)x78 & 0x7fffffffffff);
- { uint128_t x81 = (x79 + x45);
- { uint64_t x82 = (uint64_t) (x81 >> 0x2e);
- { uint64_t x83 = ((uint64_t)x81 & 0x3fffffffffff);
- { uint128_t x84 = (x82 + x44);
- { uint64_t x85 = (uint64_t) (x84 >> 0x2e);
- { uint64_t x86 = ((uint64_t)x84 & 0x3fffffffffff);
- { uint64_t x87 = (x56 + (0xbb * x85));
- { uint64_t x88 = (x87 >> 0x2f);
- { uint64_t x89 = (x87 & 0x7fffffffffff);
- { uint64_t x90 = (x88 + x59);
- { uint64_t x91 = (x90 >> 0x2e);
- { uint64_t x92 = (x90 & 0x3fffffffffff);
- out[0] = x89;
- out[1] = x92;
- out[2] = (x91 + x62);
- out[3] = x65;
- out[4] = x68;
- out[5] = x71;
- out[6] = x74;
- out[7] = x77;
- out[8] = x80;
- out[9] = x83;
- out[10] = x86;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e511m187_11limbs/femul.v b/src/Specific/solinas64_2e511m187_11limbs/femul.v
deleted file mode 100644
index 4cf49002c..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e511m187_11limbs.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/solinas64_2e511m187_11limbs/femulDisplay.log b/src/Specific/solinas64_2e511m187_11limbs/femulDisplay.log
deleted file mode 100644
index 6f8370c5e..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/femulDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- uint128_t x44 = (((uint128_t)x5 * x42) + ((0x2 * ((uint128_t)x7 * x43)) + (((uint128_t)x9 * x41) + ((0x2 * ((uint128_t)x11 * x39)) + (((uint128_t)x13 * x37) + ((0x2 * ((uint128_t)x15 * x35)) + (((uint128_t)x17 * x33) + ((0x2 * ((uint128_t)x19 * x31)) + (((uint128_t)x21 * x29) + ((0x2 * ((uint128_t)x23 * x27)) + ((uint128_t)x22 * x25)))))))))));
- uint128_t x45 = ((((uint128_t)x5 * x43) + (((uint128_t)x7 * x41) + (((uint128_t)x9 * x39) + (((uint128_t)x11 * x37) + (((uint128_t)x13 * x35) + (((uint128_t)x15 * x33) + (((uint128_t)x17 * x31) + (((uint128_t)x19 * x29) + (((uint128_t)x21 * x27) + ((uint128_t)x23 * x25)))))))))) + (0xbb * ((uint128_t)x22 * x42)));
- uint128_t x46 = ((((uint128_t)x5 * x41) + ((0x2 * ((uint128_t)x7 * x39)) + (((uint128_t)x9 * x37) + ((0x2 * ((uint128_t)x11 * x35)) + (((uint128_t)x13 * x33) + ((0x2 * ((uint128_t)x15 * x31)) + (((uint128_t)x17 * x29) + ((0x2 * ((uint128_t)x19 * x27)) + ((uint128_t)x21 * x25))))))))) + (0xbb * ((0x2 * ((uint128_t)x23 * x42)) + (0x2 * ((uint128_t)x22 * x43)))));
- uint128_t x47 = ((((uint128_t)x5 * x39) + (((uint128_t)x7 * x37) + (((uint128_t)x9 * x35) + (((uint128_t)x11 * x33) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + (((uint128_t)x17 * x27) + ((uint128_t)x19 * x25)))))))) + (0xbb * (((uint128_t)x21 * x42) + ((0x2 * ((uint128_t)x23 * x43)) + ((uint128_t)x22 * x41)))));
- uint128_t x48 = ((((uint128_t)x5 * x37) + ((0x2 * ((uint128_t)x7 * x35)) + (((uint128_t)x9 * x33) + ((0x2 * ((uint128_t)x11 * x31)) + (((uint128_t)x13 * x29) + ((0x2 * ((uint128_t)x15 * x27)) + ((uint128_t)x17 * x25))))))) + (0xbb * ((0x2 * ((uint128_t)x19 * x42)) + ((0x2 * ((uint128_t)x21 * x43)) + ((0x2 * ((uint128_t)x23 * x41)) + (0x2 * ((uint128_t)x22 * x39)))))));
- uint128_t x49 = ((((uint128_t)x5 * x35) + (((uint128_t)x7 * x33) + (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + ((uint128_t)x15 * x25)))))) + (0xbb * (((uint128_t)x17 * x42) + ((0x2 * ((uint128_t)x19 * x43)) + (((uint128_t)x21 * x41) + ((0x2 * ((uint128_t)x23 * x39)) + ((uint128_t)x22 * x37)))))));
- uint128_t x50 = ((((uint128_t)x5 * x33) + ((0x2 * ((uint128_t)x7 * x31)) + (((uint128_t)x9 * x29) + ((0x2 * ((uint128_t)x11 * x27)) + ((uint128_t)x13 * x25))))) + (0xbb * ((0x2 * ((uint128_t)x15 * x42)) + ((0x2 * ((uint128_t)x17 * x43)) + ((0x2 * ((uint128_t)x19 * x41)) + ((0x2 * ((uint128_t)x21 * x39)) + ((0x2 * ((uint128_t)x23 * x37)) + (0x2 * ((uint128_t)x22 * x35)))))))));
- uint128_t x51 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + ((uint128_t)x11 * x25)))) + (0xbb * (((uint128_t)x13 * x42) + ((0x2 * ((uint128_t)x15 * x43)) + (((uint128_t)x17 * x41) + ((0x2 * ((uint128_t)x19 * x39)) + (((uint128_t)x21 * x37) + ((0x2 * ((uint128_t)x23 * x35)) + ((uint128_t)x22 * x33)))))))));
- uint128_t x52 = ((((uint128_t)x5 * x29) + ((0x2 * ((uint128_t)x7 * x27)) + ((uint128_t)x9 * x25))) + (0xbb * ((0x2 * ((uint128_t)x11 * x42)) + ((0x2 * ((uint128_t)x13 * x43)) + ((0x2 * ((uint128_t)x15 * x41)) + ((0x2 * ((uint128_t)x17 * x39)) + ((0x2 * ((uint128_t)x19 * x37)) + ((0x2 * ((uint128_t)x21 * x35)) + ((0x2 * ((uint128_t)x23 * x33)) + (0x2 * ((uint128_t)x22 * x31)))))))))));
- uint128_t x53 = ((((uint128_t)x5 * x27) + ((uint128_t)x7 * x25)) + (0xbb * (((uint128_t)x9 * x42) + ((0x2 * ((uint128_t)x11 * x43)) + (((uint128_t)x13 * x41) + ((0x2 * ((uint128_t)x15 * x39)) + (((uint128_t)x17 * x37) + ((0x2 * ((uint128_t)x19 * x35)) + (((uint128_t)x21 * x33) + ((0x2 * ((uint128_t)x23 * x31)) + ((uint128_t)x22 * x29)))))))))));
- uint128_t x54 = (((uint128_t)x5 * x25) + (0xbb * ((0x2 * ((uint128_t)x7 * x42)) + ((0x2 * ((uint128_t)x9 * x43)) + ((0x2 * ((uint128_t)x11 * x41)) + ((0x2 * ((uint128_t)x13 * x39)) + ((0x2 * ((uint128_t)x15 * x37)) + ((0x2 * ((uint128_t)x17 * x35)) + ((0x2 * ((uint128_t)x19 * x33)) + ((0x2 * ((uint128_t)x21 * x31)) + ((0x2 * ((uint128_t)x23 * x29)) + (0x2 * ((uint128_t)x22 * x27)))))))))))));
- uint64_t x55 = (uint64_t) (x54 >> 0x2f);
- uint64_t x56 = ((uint64_t)x54 & 0x7fffffffffff);
- uint128_t x57 = (x55 + x53);
- uint64_t x58 = (uint64_t) (x57 >> 0x2e);
- uint64_t x59 = ((uint64_t)x57 & 0x3fffffffffff);
- uint128_t x60 = (x58 + x52);
- uint64_t x61 = (uint64_t) (x60 >> 0x2f);
- uint64_t x62 = ((uint64_t)x60 & 0x7fffffffffff);
- uint128_t x63 = (x61 + x51);
- uint64_t x64 = (uint64_t) (x63 >> 0x2e);
- uint64_t x65 = ((uint64_t)x63 & 0x3fffffffffff);
- uint128_t x66 = (x64 + x50);
- uint64_t x67 = (uint64_t) (x66 >> 0x2f);
- uint64_t x68 = ((uint64_t)x66 & 0x7fffffffffff);
- uint128_t x69 = (x67 + x49);
- uint64_t x70 = (uint64_t) (x69 >> 0x2e);
- uint64_t x71 = ((uint64_t)x69 & 0x3fffffffffff);
- uint128_t x72 = (x70 + x48);
- uint64_t x73 = (uint64_t) (x72 >> 0x2f);
- uint64_t x74 = ((uint64_t)x72 & 0x7fffffffffff);
- uint128_t x75 = (x73 + x47);
- uint64_t x76 = (uint64_t) (x75 >> 0x2e);
- uint64_t x77 = ((uint64_t)x75 & 0x3fffffffffff);
- uint128_t x78 = (x76 + x46);
- uint64_t x79 = (uint64_t) (x78 >> 0x2f);
- uint64_t x80 = ((uint64_t)x78 & 0x7fffffffffff);
- uint128_t x81 = (x79 + x45);
- uint64_t x82 = (uint64_t) (x81 >> 0x2e);
- uint64_t x83 = ((uint64_t)x81 & 0x3fffffffffff);
- uint128_t x84 = (x82 + x44);
- uint64_t x85 = (uint64_t) (x84 >> 0x2e);
- uint64_t x86 = ((uint64_t)x84 & 0x3fffffffffff);
- uint64_t x87 = (x56 + (0xbb * x85));
- uint64_t x88 = (x87 >> 0x2f);
- uint64_t x89 = (x87 & 0x7fffffffffff);
- uint64_t x90 = (x88 + x59);
- uint64_t x91 = (x90 >> 0x2e);
- uint64_t x92 = (x90 & 0x3fffffffffff);
- return (Return x86, Return x83, Return x80, Return x77, Return x74, Return x71, Return x68, Return x65, (x91 + x62), Return x92, Return x89))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e511m187_11limbs/femulDisplay.v b/src/Specific/solinas64_2e511m187_11limbs/femulDisplay.v
deleted file mode 100644
index 08e880925..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e511m187_11limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e511m187_11limbs/fesquare.c b/src/Specific/solinas64_2e511m187_11limbs/fesquare.c
deleted file mode 100644
index c60544c56..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/fesquare.c
+++ /dev/null
@@ -1,74 +0,0 @@
-static void fesquare(uint64_t out[11], const uint64_t in1[11]) {
- { const uint64_t x19 = in1[10];
- { const uint64_t x20 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x21 = (((uint128_t)x2 * x19) + ((0x2 * ((uint128_t)x4 * x20)) + (((uint128_t)x6 * x18) + ((0x2 * ((uint128_t)x8 * x16)) + (((uint128_t)x10 * x14) + ((0x2 * ((uint128_t)x12 * x12)) + (((uint128_t)x14 * x10) + ((0x2 * ((uint128_t)x16 * x8)) + (((uint128_t)x18 * x6) + ((0x2 * ((uint128_t)x20 * x4)) + ((uint128_t)x19 * x2)))))))))));
- { uint128_t x22 = ((((uint128_t)x2 * x20) + (((uint128_t)x4 * x18) + (((uint128_t)x6 * x16) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + (((uint128_t)x16 * x6) + (((uint128_t)x18 * x4) + ((uint128_t)x20 * x2)))))))))) + (0xbb * ((uint128_t)x19 * x19)));
- { uint128_t x23 = ((((uint128_t)x2 * x18) + ((0x2 * ((uint128_t)x4 * x16)) + (((uint128_t)x6 * x14) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + (((uint128_t)x14 * x6) + ((0x2 * ((uint128_t)x16 * x4)) + ((uint128_t)x18 * x2))))))))) + (0xbb * ((0x2 * ((uint128_t)x20 * x19)) + (0x2 * ((uint128_t)x19 * x20)))));
- { uint128_t x24 = ((((uint128_t)x2 * x16) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x16 * x2)))))))) + (0xbb * (((uint128_t)x18 * x19) + ((0x2 * ((uint128_t)x20 * x20)) + ((uint128_t)x19 * x18)))));
- { uint128_t x25 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0xbb * ((0x2 * ((uint128_t)x16 * x19)) + ((0x2 * ((uint128_t)x18 * x20)) + ((0x2 * ((uint128_t)x20 * x18)) + (0x2 * ((uint128_t)x19 * x16)))))));
- { uint128_t x26 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0xbb * (((uint128_t)x14 * x19) + ((0x2 * ((uint128_t)x16 * x20)) + (((uint128_t)x18 * x18) + ((0x2 * ((uint128_t)x20 * x16)) + ((uint128_t)x19 * x14)))))));
- { uint128_t x27 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0xbb * ((0x2 * ((uint128_t)x12 * x19)) + ((0x2 * ((uint128_t)x14 * x20)) + ((0x2 * ((uint128_t)x16 * x18)) + ((0x2 * ((uint128_t)x18 * x16)) + ((0x2 * ((uint128_t)x20 * x14)) + (0x2 * ((uint128_t)x19 * x12)))))))));
- { uint128_t x28 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0xbb * (((uint128_t)x10 * x19) + ((0x2 * ((uint128_t)x12 * x20)) + (((uint128_t)x14 * x18) + ((0x2 * ((uint128_t)x16 * x16)) + (((uint128_t)x18 * x14) + ((0x2 * ((uint128_t)x20 * x12)) + ((uint128_t)x19 * x10)))))))));
- { uint128_t x29 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0xbb * ((0x2 * ((uint128_t)x8 * x19)) + ((0x2 * ((uint128_t)x10 * x20)) + ((0x2 * ((uint128_t)x12 * x18)) + ((0x2 * ((uint128_t)x14 * x16)) + ((0x2 * ((uint128_t)x16 * x14)) + ((0x2 * ((uint128_t)x18 * x12)) + ((0x2 * ((uint128_t)x20 * x10)) + (0x2 * ((uint128_t)x19 * x8)))))))))));
- { uint128_t x30 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xbb * (((uint128_t)x6 * x19) + ((0x2 * ((uint128_t)x8 * x20)) + (((uint128_t)x10 * x18) + ((0x2 * ((uint128_t)x12 * x16)) + (((uint128_t)x14 * x14) + ((0x2 * ((uint128_t)x16 * x12)) + (((uint128_t)x18 * x10) + ((0x2 * ((uint128_t)x20 * x8)) + ((uint128_t)x19 * x6)))))))))));
- { uint128_t x31 = (((uint128_t)x2 * x2) + (0xbb * ((0x2 * ((uint128_t)x4 * x19)) + ((0x2 * ((uint128_t)x6 * x20)) + ((0x2 * ((uint128_t)x8 * x18)) + ((0x2 * ((uint128_t)x10 * x16)) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + ((0x2 * ((uint128_t)x16 * x10)) + ((0x2 * ((uint128_t)x18 * x8)) + ((0x2 * ((uint128_t)x20 * x6)) + (0x2 * ((uint128_t)x19 * x4)))))))))))));
- { uint64_t x32 = (uint64_t) (x31 >> 0x2f);
- { uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffff);
- { uint128_t x34 = (x32 + x30);
- { uint64_t x35 = (uint64_t) (x34 >> 0x2e);
- { uint64_t x36 = ((uint64_t)x34 & 0x3fffffffffff);
- { uint128_t x37 = (x35 + x29);
- { uint64_t x38 = (uint64_t) (x37 >> 0x2f);
- { uint64_t x39 = ((uint64_t)x37 & 0x7fffffffffff);
- { uint128_t x40 = (x38 + x28);
- { uint64_t x41 = (uint64_t) (x40 >> 0x2e);
- { uint64_t x42 = ((uint64_t)x40 & 0x3fffffffffff);
- { uint128_t x43 = (x41 + x27);
- { uint64_t x44 = (uint64_t) (x43 >> 0x2f);
- { uint64_t x45 = ((uint64_t)x43 & 0x7fffffffffff);
- { uint128_t x46 = (x44 + x26);
- { uint64_t x47 = (uint64_t) (x46 >> 0x2e);
- { uint64_t x48 = ((uint64_t)x46 & 0x3fffffffffff);
- { uint128_t x49 = (x47 + x25);
- { uint64_t x50 = (uint64_t) (x49 >> 0x2f);
- { uint64_t x51 = ((uint64_t)x49 & 0x7fffffffffff);
- { uint128_t x52 = (x50 + x24);
- { uint64_t x53 = (uint64_t) (x52 >> 0x2e);
- { uint64_t x54 = ((uint64_t)x52 & 0x3fffffffffff);
- { uint128_t x55 = (x53 + x23);
- { uint64_t x56 = (uint64_t) (x55 >> 0x2f);
- { uint64_t x57 = ((uint64_t)x55 & 0x7fffffffffff);
- { uint128_t x58 = (x56 + x22);
- { uint64_t x59 = (uint64_t) (x58 >> 0x2e);
- { uint64_t x60 = ((uint64_t)x58 & 0x3fffffffffff);
- { uint128_t x61 = (x59 + x21);
- { uint64_t x62 = (uint64_t) (x61 >> 0x2e);
- { uint64_t x63 = ((uint64_t)x61 & 0x3fffffffffff);
- { uint64_t x64 = (x33 + (0xbb * x62));
- { uint64_t x65 = (x64 >> 0x2f);
- { uint64_t x66 = (x64 & 0x7fffffffffff);
- { uint64_t x67 = (x65 + x36);
- { uint64_t x68 = (x67 >> 0x2e);
- { uint64_t x69 = (x67 & 0x3fffffffffff);
- out[0] = x66;
- out[1] = x69;
- out[2] = (x68 + x39);
- out[3] = x42;
- out[4] = x45;
- out[5] = x48;
- out[6] = x51;
- out[7] = x54;
- out[8] = x57;
- out[9] = x60;
- out[10] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e511m187_11limbs/fesquare.v b/src/Specific/solinas64_2e511m187_11limbs/fesquare.v
deleted file mode 100644
index 10b86b68e..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e511m187_11limbs.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/solinas64_2e511m187_11limbs/fesquareDisplay.log b/src/Specific/solinas64_2e511m187_11limbs/fesquareDisplay.log
deleted file mode 100644
index 53f47cf6b..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x21 = (((uint128_t)x2 * x19) + ((0x2 * ((uint128_t)x4 * x20)) + (((uint128_t)x6 * x18) + ((0x2 * ((uint128_t)x8 * x16)) + (((uint128_t)x10 * x14) + ((0x2 * ((uint128_t)x12 * x12)) + (((uint128_t)x14 * x10) + ((0x2 * ((uint128_t)x16 * x8)) + (((uint128_t)x18 * x6) + ((0x2 * ((uint128_t)x20 * x4)) + ((uint128_t)x19 * x2)))))))))));
- uint128_t x22 = ((((uint128_t)x2 * x20) + (((uint128_t)x4 * x18) + (((uint128_t)x6 * x16) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + (((uint128_t)x16 * x6) + (((uint128_t)x18 * x4) + ((uint128_t)x20 * x2)))))))))) + (0xbb * ((uint128_t)x19 * x19)));
- uint128_t x23 = ((((uint128_t)x2 * x18) + ((0x2 * ((uint128_t)x4 * x16)) + (((uint128_t)x6 * x14) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + (((uint128_t)x14 * x6) + ((0x2 * ((uint128_t)x16 * x4)) + ((uint128_t)x18 * x2))))))))) + (0xbb * ((0x2 * ((uint128_t)x20 * x19)) + (0x2 * ((uint128_t)x19 * x20)))));
- uint128_t x24 = ((((uint128_t)x2 * x16) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x16 * x2)))))))) + (0xbb * (((uint128_t)x18 * x19) + ((0x2 * ((uint128_t)x20 * x20)) + ((uint128_t)x19 * x18)))));
- uint128_t x25 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0xbb * ((0x2 * ((uint128_t)x16 * x19)) + ((0x2 * ((uint128_t)x18 * x20)) + ((0x2 * ((uint128_t)x20 * x18)) + (0x2 * ((uint128_t)x19 * x16)))))));
- uint128_t x26 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0xbb * (((uint128_t)x14 * x19) + ((0x2 * ((uint128_t)x16 * x20)) + (((uint128_t)x18 * x18) + ((0x2 * ((uint128_t)x20 * x16)) + ((uint128_t)x19 * x14)))))));
- uint128_t x27 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0xbb * ((0x2 * ((uint128_t)x12 * x19)) + ((0x2 * ((uint128_t)x14 * x20)) + ((0x2 * ((uint128_t)x16 * x18)) + ((0x2 * ((uint128_t)x18 * x16)) + ((0x2 * ((uint128_t)x20 * x14)) + (0x2 * ((uint128_t)x19 * x12)))))))));
- uint128_t x28 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0xbb * (((uint128_t)x10 * x19) + ((0x2 * ((uint128_t)x12 * x20)) + (((uint128_t)x14 * x18) + ((0x2 * ((uint128_t)x16 * x16)) + (((uint128_t)x18 * x14) + ((0x2 * ((uint128_t)x20 * x12)) + ((uint128_t)x19 * x10)))))))));
- uint128_t x29 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0xbb * ((0x2 * ((uint128_t)x8 * x19)) + ((0x2 * ((uint128_t)x10 * x20)) + ((0x2 * ((uint128_t)x12 * x18)) + ((0x2 * ((uint128_t)x14 * x16)) + ((0x2 * ((uint128_t)x16 * x14)) + ((0x2 * ((uint128_t)x18 * x12)) + ((0x2 * ((uint128_t)x20 * x10)) + (0x2 * ((uint128_t)x19 * x8)))))))))));
- uint128_t x30 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0xbb * (((uint128_t)x6 * x19) + ((0x2 * ((uint128_t)x8 * x20)) + (((uint128_t)x10 * x18) + ((0x2 * ((uint128_t)x12 * x16)) + (((uint128_t)x14 * x14) + ((0x2 * ((uint128_t)x16 * x12)) + (((uint128_t)x18 * x10) + ((0x2 * ((uint128_t)x20 * x8)) + ((uint128_t)x19 * x6)))))))))));
- uint128_t x31 = (((uint128_t)x2 * x2) + (0xbb * ((0x2 * ((uint128_t)x4 * x19)) + ((0x2 * ((uint128_t)x6 * x20)) + ((0x2 * ((uint128_t)x8 * x18)) + ((0x2 * ((uint128_t)x10 * x16)) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + ((0x2 * ((uint128_t)x16 * x10)) + ((0x2 * ((uint128_t)x18 * x8)) + ((0x2 * ((uint128_t)x20 * x6)) + (0x2 * ((uint128_t)x19 * x4)))))))))))));
- uint64_t x32 = (uint64_t) (x31 >> 0x2f);
- uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffff);
- uint128_t x34 = (x32 + x30);
- uint64_t x35 = (uint64_t) (x34 >> 0x2e);
- uint64_t x36 = ((uint64_t)x34 & 0x3fffffffffff);
- uint128_t x37 = (x35 + x29);
- uint64_t x38 = (uint64_t) (x37 >> 0x2f);
- uint64_t x39 = ((uint64_t)x37 & 0x7fffffffffff);
- uint128_t x40 = (x38 + x28);
- uint64_t x41 = (uint64_t) (x40 >> 0x2e);
- uint64_t x42 = ((uint64_t)x40 & 0x3fffffffffff);
- uint128_t x43 = (x41 + x27);
- uint64_t x44 = (uint64_t) (x43 >> 0x2f);
- uint64_t x45 = ((uint64_t)x43 & 0x7fffffffffff);
- uint128_t x46 = (x44 + x26);
- uint64_t x47 = (uint64_t) (x46 >> 0x2e);
- uint64_t x48 = ((uint64_t)x46 & 0x3fffffffffff);
- uint128_t x49 = (x47 + x25);
- uint64_t x50 = (uint64_t) (x49 >> 0x2f);
- uint64_t x51 = ((uint64_t)x49 & 0x7fffffffffff);
- uint128_t x52 = (x50 + x24);
- uint64_t x53 = (uint64_t) (x52 >> 0x2e);
- uint64_t x54 = ((uint64_t)x52 & 0x3fffffffffff);
- uint128_t x55 = (x53 + x23);
- uint64_t x56 = (uint64_t) (x55 >> 0x2f);
- uint64_t x57 = ((uint64_t)x55 & 0x7fffffffffff);
- uint128_t x58 = (x56 + x22);
- uint64_t x59 = (uint64_t) (x58 >> 0x2e);
- uint64_t x60 = ((uint64_t)x58 & 0x3fffffffffff);
- uint128_t x61 = (x59 + x21);
- uint64_t x62 = (uint64_t) (x61 >> 0x2e);
- uint64_t x63 = ((uint64_t)x61 & 0x3fffffffffff);
- uint64_t x64 = (x33 + (0xbb * x62));
- uint64_t x65 = (x64 >> 0x2f);
- uint64_t x66 = (x64 & 0x7fffffffffff);
- uint64_t x67 = (x65 + x36);
- uint64_t x68 = (x67 >> 0x2e);
- uint64_t x69 = (x67 & 0x3fffffffffff);
- return (Return x63, Return x60, Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, (x68 + x39), Return x69, Return x66))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e511m187_11limbs/fesquareDisplay.v b/src/Specific/solinas64_2e511m187_11limbs/fesquareDisplay.v
deleted file mode 100644
index b810b71c2..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e511m187_11limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e511m187_11limbs/fesub.c b/src/Specific/solinas64_2e511m187_11limbs/fesub.c
deleted file mode 100644
index 40fa69bfb..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/fesub.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void fesub(uint64_t out[11], const uint64_t in1[11], const uint64_t in2[11]) {
- { const uint64_t x22 = in1[10];
- { const uint64_t x23 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x42 = in2[10];
- { const uint64_t x43 = in2[9];
- { const uint64_t x41 = in2[8];
- { const uint64_t x39 = in2[7];
- { const uint64_t x37 = in2[6];
- { const uint64_t x35 = in2[5];
- { const uint64_t x33 = in2[4];
- { const uint64_t x31 = in2[3];
- { const uint64_t x29 = in2[2];
- { const uint64_t x27 = in2[1];
- { const uint64_t x25 = in2[0];
- out[0] = ((0xfffffffffe8a + x5) - x25);
- out[1] = ((0x7ffffffffffe + x7) - x27);
- out[2] = ((0xfffffffffffe + x9) - x29);
- out[3] = ((0x7ffffffffffe + x11) - x31);
- out[4] = ((0xfffffffffffe + x13) - x33);
- out[5] = ((0x7ffffffffffe + x15) - x35);
- out[6] = ((0xfffffffffffe + x17) - x37);
- out[7] = ((0x7ffffffffffe + x19) - x39);
- out[8] = ((0xfffffffffffe + x21) - x41);
- out[9] = ((0x7ffffffffffe + x23) - x43);
- out[10] = ((0x7ffffffffffe + x22) - x42);
- }}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e511m187_11limbs/fesub.v b/src/Specific/solinas64_2e511m187_11limbs/fesub.v
deleted file mode 100644
index d87c26a5a..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e511m187_11limbs.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/solinas64_2e511m187_11limbs/fesubDisplay.log b/src/Specific/solinas64_2e511m187_11limbs/fesubDisplay.log
deleted file mode 100644
index 1834f9b1c..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- (((0x7ffffffffffe + x22) - x42), ((0x7ffffffffffe + x23) - x43), ((0xfffffffffffe + x21) - x41), ((0x7ffffffffffe + x19) - x39), ((0xfffffffffffe + x17) - x37), ((0x7ffffffffffe + x15) - x35), ((0xfffffffffffe + x13) - x33), ((0x7ffffffffffe + x11) - x31), ((0xfffffffffffe + x9) - x29), ((0x7ffffffffffe + x7) - x27), ((0xfffffffffe8a + x5) - x25)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e511m187_11limbs/fesubDisplay.v b/src/Specific/solinas64_2e511m187_11limbs/fesubDisplay.v
deleted file mode 100644
index 871a713dc..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e511m187_11limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e511m187_11limbs/freeze.c b/src/Specific/solinas64_2e511m187_11limbs/freeze.c
deleted file mode 100644
index 87c71898e..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/freeze.c
+++ /dev/null
@@ -1,59 +0,0 @@
-static void freeze(uint64_t out[11], const uint64_t in1[11]) {
- { const uint64_t x19 = in1[10];
- { const uint64_t x20 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffff45);
- { uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x4, 0x3fffffffffff);
- { uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x6, 0x7fffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x8, 0x3fffffffffff);
- { uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x10, 0x7fffffffffff);
- { uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x12, 0x3fffffffffff);
- { uint64_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x14, 0x7fffffffffff);
- { uint64_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x16, 0x3fffffffffff);
- { uint64_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x44, Return x18, 0x7fffffffffff);
- { uint64_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x20, 0x3fffffffffff);
- { uint64_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x19, 0x3fffffffffff);
- { uint64_t x54 = cmovznz64(x53, 0x0, 0xffffffffffffffffL);
- { uint64_t x55 = (x54 & 0x7fffffffff45);
- { uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x22, Return x55);
- { uint64_t x59 = (x54 & 0x3fffffffffff);
- { uint64_t x61, uint8_t x62 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x25, Return x59);
- { uint64_t x63 = (x54 & 0x7fffffffffff);
- { uint64_t x65, uint8_t x66 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x62, Return x28, Return x63);
- { uint64_t x67 = (x54 & 0x3fffffffffff);
- { uint64_t x69, uint8_t x70 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x66, Return x31, Return x67);
- { uint64_t x71 = (x54 & 0x7fffffffffff);
- { uint64_t x73, uint8_t x74 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x70, Return x34, Return x71);
- { uint64_t x75 = (x54 & 0x3fffffffffff);
- { uint64_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x74, Return x37, Return x75);
- { uint64_t x79 = (x54 & 0x7fffffffffff);
- { uint64_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x78, Return x40, Return x79);
- { uint64_t x83 = (x54 & 0x3fffffffffff);
- { uint64_t x85, uint8_t x86 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x82, Return x43, Return x83);
- { uint64_t x87 = (x54 & 0x7fffffffffff);
- { uint64_t x89, uint8_t x90 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x86, Return x46, Return x87);
- { uint64_t x91 = (x54 & 0x3fffffffffff);
- { uint64_t x93, uint8_t x94 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x90, Return x49, Return x91);
- { uint64_t x95 = (x54 & 0x3fffffffffff);
- { uint64_t x97, uint8_t _ = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x94, Return x52, Return x95);
- out[0] = x57;
- out[1] = x61;
- out[2] = x65;
- out[3] = x69;
- out[4] = x73;
- out[5] = x77;
- out[6] = x81;
- out[7] = x85;
- out[8] = x89;
- out[9] = x93;
- out[10] = x97;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e511m187_11limbs/freeze.v b/src/Specific/solinas64_2e511m187_11limbs/freeze.v
deleted file mode 100644
index 63940d772..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e511m187_11limbs.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/solinas64_2e511m187_11limbs/freezeDisplay.log b/src/Specific/solinas64_2e511m187_11limbs/freezeDisplay.log
deleted file mode 100644
index 8241a59b0..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/freezeDisplay.log
+++ /dev/null
@@ -1,41 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7fffffffff45);
- uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x4, 0x3fffffffffff);
- uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x6, 0x7fffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x8, 0x3fffffffffff);
- uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x10, 0x7fffffffffff);
- uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x12, 0x3fffffffffff);
- uint64_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x14, 0x7fffffffffff);
- uint64_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x16, 0x3fffffffffff);
- uint64_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x44, Return x18, 0x7fffffffffff);
- uint64_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x20, 0x3fffffffffff);
- uint64_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x19, 0x3fffffffffff);
- uint64_t x54 = cmovznz64(x53, 0x0, 0xffffffffffffffffL);
- uint64_t x55 = (x54 & 0x7fffffffff45);
- uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x22, Return x55);
- uint64_t x59 = (x54 & 0x3fffffffffff);
- uint64_t x61, uint8_t x62 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x25, Return x59);
- uint64_t x63 = (x54 & 0x7fffffffffff);
- uint64_t x65, uint8_t x66 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x62, Return x28, Return x63);
- uint64_t x67 = (x54 & 0x3fffffffffff);
- uint64_t x69, uint8_t x70 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x66, Return x31, Return x67);
- uint64_t x71 = (x54 & 0x7fffffffffff);
- uint64_t x73, uint8_t x74 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x70, Return x34, Return x71);
- uint64_t x75 = (x54 & 0x3fffffffffff);
- uint64_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x74, Return x37, Return x75);
- uint64_t x79 = (x54 & 0x7fffffffffff);
- uint64_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x78, Return x40, Return x79);
- uint64_t x83 = (x54 & 0x3fffffffffff);
- uint64_t x85, uint8_t x86 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x82, Return x43, Return x83);
- uint64_t x87 = (x54 & 0x7fffffffffff);
- uint64_t x89, uint8_t x90 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x86, Return x46, Return x87);
- uint64_t x91 = (x54 & 0x3fffffffffff);
- uint64_t x93, uint8_t x94 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x90, Return x49, Return x91);
- uint64_t x95 = (x54 & 0x3fffffffffff);
- uint64_t x97, uint8_t _ = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x94, Return x52, Return x95);
- (Return x97, Return x93, Return x89, Return x85, Return x81, Return x77, Return x73, Return x69, Return x65, Return x61, Return x57))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e511m187_11limbs/freezeDisplay.v b/src/Specific/solinas64_2e511m187_11limbs/freezeDisplay.v
deleted file mode 100644
index 0549dedc2..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e511m187_11limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e511m187_11limbs/py_interpreter.sh b/src/Specific/solinas64_2e511m187_11limbs/py_interpreter.sh
deleted file mode 100755
index 462321e0b..000000000
--- a/src/Specific/solinas64_2e511m187_11limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**511 - 187' -Dmodulus_bytes='46 + 5/11' -Da24='121665'
diff --git a/src/Specific/solinas64_2e511m481_10limbs/CurveParameters.v b/src/Specific/solinas64_2e511m481_10limbs/CurveParameters.v
deleted file mode 100644
index 5bdb984cf..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^511 - 481
-Base: 51.1
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 51 + 1/10;
- bitwidth := 64;
- s := 2^511;
- c := [(1, 481)];
- carry_chains := Some [seq 0 (pred 10); [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/solinas64_2e511m481_10limbs/Synthesis.v b/src/Specific/solinas64_2e511m481_10limbs/Synthesis.v
deleted file mode 100644
index 79bf2f6e3..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e511m481_10limbs.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/solinas64_2e511m481_10limbs/compiler.sh b/src/Specific/solinas64_2e511m481_10limbs/compiler.sh
deleted file mode 100755
index dcb7c4d16..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<511) - 481' "$@"
diff --git a/src/Specific/solinas64_2e511m481_10limbs/compilerxx.sh b/src/Specific/solinas64_2e511m481_10limbs/compilerxx.sh
deleted file mode 100755
index d3c8b1fba..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<511) - 481' "$@"
diff --git a/src/Specific/solinas64_2e511m481_10limbs/feadd.c b/src/Specific/solinas64_2e511m481_10limbs/feadd.c
deleted file mode 100644
index df991e375..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/feadd.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void feadd(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- out[0] = (x5 + x23);
- out[1] = (x7 + x25);
- out[2] = (x9 + x27);
- out[3] = (x11 + x29);
- out[4] = (x13 + x31);
- out[5] = (x15 + x33);
- out[6] = (x17 + x35);
- out[7] = (x19 + x37);
- out[8] = (x21 + x39);
- out[9] = (x20 + x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e511m481_10limbs/feadd.v b/src/Specific/solinas64_2e511m481_10limbs/feadd.v
deleted file mode 100644
index 2fb2ef519..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e511m481_10limbs.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/solinas64_2e511m481_10limbs/feaddDisplay.log b/src/Specific/solinas64_2e511m481_10limbs/feaddDisplay.log
deleted file mode 100644
index 04176128e..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e511m481_10limbs/feaddDisplay.v b/src/Specific/solinas64_2e511m481_10limbs/feaddDisplay.v
deleted file mode 100644
index 7bfebe52f..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e511m481_10limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e511m481_10limbs/fecarry.v b/src/Specific/solinas64_2e511m481_10limbs/fecarry.v
deleted file mode 100644
index 45a630d93..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e511m481_10limbs.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/solinas64_2e511m481_10limbs/fecarryDisplay.v b/src/Specific/solinas64_2e511m481_10limbs/fecarryDisplay.v
deleted file mode 100644
index fe901d811..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e511m481_10limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e511m481_10limbs/femul.c b/src/Specific/solinas64_2e511m481_10limbs/femul.c
deleted file mode 100644
index 2f40750f5..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/femul.c
+++ /dev/null
@@ -1,78 +0,0 @@
-static void femul(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- { uint128_t x40 = (((uint128_t)x5 * x38) + ((0x2 * ((uint128_t)x7 * x39)) + ((0x2 * ((uint128_t)x9 * x37)) + ((0x2 * ((uint128_t)x11 * x35)) + ((0x2 * ((uint128_t)x13 * x33)) + ((0x2 * ((uint128_t)x15 * x31)) + ((0x2 * ((uint128_t)x17 * x29)) + ((0x2 * ((uint128_t)x19 * x27)) + ((0x2 * ((uint128_t)x21 * x25)) + ((uint128_t)x20 * x23))))))))));
- { uint128_t x41 = ((((uint128_t)x5 * x39) + ((0x2 * ((uint128_t)x7 * x37)) + ((0x2 * ((uint128_t)x9 * x35)) + ((0x2 * ((uint128_t)x11 * x33)) + ((0x2 * ((uint128_t)x13 * x31)) + ((0x2 * ((uint128_t)x15 * x29)) + ((0x2 * ((uint128_t)x17 * x27)) + ((0x2 * ((uint128_t)x19 * x25)) + ((uint128_t)x21 * x23))))))))) + (0x1e1 * ((uint128_t)x20 * x38)));
- { uint128_t x42 = ((((uint128_t)x5 * x37) + ((0x2 * ((uint128_t)x7 * x35)) + ((0x2 * ((uint128_t)x9 * x33)) + ((0x2 * ((uint128_t)x11 * x31)) + ((0x2 * ((uint128_t)x13 * x29)) + ((0x2 * ((uint128_t)x15 * x27)) + ((0x2 * ((uint128_t)x17 * x25)) + ((uint128_t)x19 * x23)))))))) + (0x1e1 * (((uint128_t)x21 * x38) + ((uint128_t)x20 * x39))));
- { uint128_t x43 = ((((uint128_t)x5 * x35) + ((0x2 * ((uint128_t)x7 * x33)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((uint128_t)x17 * x23))))))) + (0x1e1 * (((uint128_t)x19 * x38) + (((uint128_t)x21 * x39) + ((uint128_t)x20 * x37)))));
- { uint128_t x44 = ((((uint128_t)x5 * x33) + ((0x2 * ((uint128_t)x7 * x31)) + ((0x2 * ((uint128_t)x9 * x29)) + ((0x2 * ((uint128_t)x11 * x27)) + ((0x2 * ((uint128_t)x13 * x25)) + ((uint128_t)x15 * x23)))))) + (0x1e1 * (((uint128_t)x17 * x38) + (((uint128_t)x19 * x39) + (((uint128_t)x21 * x37) + ((uint128_t)x20 * x35))))));
- { uint128_t x45 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((uint128_t)x13 * x23))))) + (0x1e1 * (((uint128_t)x15 * x38) + (((uint128_t)x17 * x39) + (((uint128_t)x19 * x37) + (((uint128_t)x21 * x35) + ((uint128_t)x20 * x33)))))));
- { uint128_t x46 = ((((uint128_t)x5 * x29) + ((0x2 * ((uint128_t)x7 * x27)) + ((0x2 * ((uint128_t)x9 * x25)) + ((uint128_t)x11 * x23)))) + (0x1e1 * (((uint128_t)x13 * x38) + (((uint128_t)x15 * x39) + (((uint128_t)x17 * x37) + (((uint128_t)x19 * x35) + (((uint128_t)x21 * x33) + ((uint128_t)x20 * x31))))))));
- { uint128_t x47 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((uint128_t)x9 * x23))) + (0x1e1 * (((uint128_t)x11 * x38) + (((uint128_t)x13 * x39) + (((uint128_t)x15 * x37) + (((uint128_t)x17 * x35) + (((uint128_t)x19 * x33) + (((uint128_t)x21 * x31) + ((uint128_t)x20 * x29)))))))));
- { uint128_t x48 = ((((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)) + (0x1e1 * (((uint128_t)x9 * x38) + (((uint128_t)x11 * x39) + (((uint128_t)x13 * x37) + (((uint128_t)x15 * x35) + (((uint128_t)x17 * x33) + (((uint128_t)x19 * x31) + (((uint128_t)x21 * x29) + ((uint128_t)x20 * x27))))))))));
- { uint128_t x49 = (((uint128_t)x5 * x23) + (0x1e1 * ((0x2 * ((uint128_t)x7 * x38)) + ((0x2 * ((uint128_t)x9 * x39)) + ((0x2 * ((uint128_t)x11 * x37)) + ((0x2 * ((uint128_t)x13 * x35)) + ((0x2 * ((uint128_t)x15 * x33)) + ((0x2 * ((uint128_t)x17 * x31)) + ((0x2 * ((uint128_t)x19 * x29)) + ((0x2 * ((uint128_t)x21 * x27)) + (0x2 * ((uint128_t)x20 * x25))))))))))));
- { uint128_t x50 = (x49 >> 0x34);
- { uint64_t x51 = ((uint64_t)x49 & 0xfffffffffffff);
- { uint128_t x52 = (x50 + x48);
- { uint128_t x53 = (x52 >> 0x33);
- { uint64_t x54 = ((uint64_t)x52 & 0x7ffffffffffff);
- { uint128_t x55 = (x53 + x47);
- { uint128_t x56 = (x55 >> 0x33);
- { uint64_t x57 = ((uint64_t)x55 & 0x7ffffffffffff);
- { uint128_t x58 = (x56 + x46);
- { uint128_t x59 = (x58 >> 0x33);
- { uint64_t x60 = ((uint64_t)x58 & 0x7ffffffffffff);
- { uint128_t x61 = (x59 + x45);
- { uint128_t x62 = (x61 >> 0x33);
- { uint64_t x63 = ((uint64_t)x61 & 0x7ffffffffffff);
- { uint128_t x64 = (x62 + x44);
- { uint128_t x65 = (x64 >> 0x33);
- { uint64_t x66 = ((uint64_t)x64 & 0x7ffffffffffff);
- { uint128_t x67 = (x65 + x43);
- { uint128_t x68 = (x67 >> 0x33);
- { uint64_t x69 = ((uint64_t)x67 & 0x7ffffffffffff);
- { uint128_t x70 = (x68 + x42);
- { uint128_t x71 = (x70 >> 0x33);
- { uint64_t x72 = ((uint64_t)x70 & 0x7ffffffffffff);
- { uint128_t x73 = (x71 + x41);
- { uint64_t x74 = (uint64_t) (x73 >> 0x33);
- { uint64_t x75 = ((uint64_t)x73 & 0x7ffffffffffff);
- { uint128_t x76 = (x74 + x40);
- { uint64_t x77 = (uint64_t) (x76 >> 0x33);
- { uint64_t x78 = ((uint64_t)x76 & 0x7ffffffffffff);
- { uint128_t x79 = (x51 + ((uint128_t)0x1e1 * x77));
- { uint64_t x80 = (uint64_t) (x79 >> 0x34);
- { uint64_t x81 = ((uint64_t)x79 & 0xfffffffffffff);
- { uint64_t x82 = (x80 + x54);
- { uint64_t x83 = (x82 >> 0x33);
- { uint64_t x84 = (x82 & 0x7ffffffffffff);
- out[0] = x81;
- out[1] = x84;
- out[2] = (x83 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e511m481_10limbs/femul.v b/src/Specific/solinas64_2e511m481_10limbs/femul.v
deleted file mode 100644
index b41453b82..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e511m481_10limbs.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/solinas64_2e511m481_10limbs/femulDisplay.log b/src/Specific/solinas64_2e511m481_10limbs/femulDisplay.log
deleted file mode 100644
index 26195004d..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/femulDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- uint128_t x40 = (((uint128_t)x5 * x38) + ((0x2 * ((uint128_t)x7 * x39)) + ((0x2 * ((uint128_t)x9 * x37)) + ((0x2 * ((uint128_t)x11 * x35)) + ((0x2 * ((uint128_t)x13 * x33)) + ((0x2 * ((uint128_t)x15 * x31)) + ((0x2 * ((uint128_t)x17 * x29)) + ((0x2 * ((uint128_t)x19 * x27)) + ((0x2 * ((uint128_t)x21 * x25)) + ((uint128_t)x20 * x23))))))))));
- uint128_t x41 = ((((uint128_t)x5 * x39) + ((0x2 * ((uint128_t)x7 * x37)) + ((0x2 * ((uint128_t)x9 * x35)) + ((0x2 * ((uint128_t)x11 * x33)) + ((0x2 * ((uint128_t)x13 * x31)) + ((0x2 * ((uint128_t)x15 * x29)) + ((0x2 * ((uint128_t)x17 * x27)) + ((0x2 * ((uint128_t)x19 * x25)) + ((uint128_t)x21 * x23))))))))) + (0x1e1 * ((uint128_t)x20 * x38)));
- uint128_t x42 = ((((uint128_t)x5 * x37) + ((0x2 * ((uint128_t)x7 * x35)) + ((0x2 * ((uint128_t)x9 * x33)) + ((0x2 * ((uint128_t)x11 * x31)) + ((0x2 * ((uint128_t)x13 * x29)) + ((0x2 * ((uint128_t)x15 * x27)) + ((0x2 * ((uint128_t)x17 * x25)) + ((uint128_t)x19 * x23)))))))) + (0x1e1 * (((uint128_t)x21 * x38) + ((uint128_t)x20 * x39))));
- uint128_t x43 = ((((uint128_t)x5 * x35) + ((0x2 * ((uint128_t)x7 * x33)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((uint128_t)x17 * x23))))))) + (0x1e1 * (((uint128_t)x19 * x38) + (((uint128_t)x21 * x39) + ((uint128_t)x20 * x37)))));
- uint128_t x44 = ((((uint128_t)x5 * x33) + ((0x2 * ((uint128_t)x7 * x31)) + ((0x2 * ((uint128_t)x9 * x29)) + ((0x2 * ((uint128_t)x11 * x27)) + ((0x2 * ((uint128_t)x13 * x25)) + ((uint128_t)x15 * x23)))))) + (0x1e1 * (((uint128_t)x17 * x38) + (((uint128_t)x19 * x39) + (((uint128_t)x21 * x37) + ((uint128_t)x20 * x35))))));
- uint128_t x45 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((uint128_t)x13 * x23))))) + (0x1e1 * (((uint128_t)x15 * x38) + (((uint128_t)x17 * x39) + (((uint128_t)x19 * x37) + (((uint128_t)x21 * x35) + ((uint128_t)x20 * x33)))))));
- uint128_t x46 = ((((uint128_t)x5 * x29) + ((0x2 * ((uint128_t)x7 * x27)) + ((0x2 * ((uint128_t)x9 * x25)) + ((uint128_t)x11 * x23)))) + (0x1e1 * (((uint128_t)x13 * x38) + (((uint128_t)x15 * x39) + (((uint128_t)x17 * x37) + (((uint128_t)x19 * x35) + (((uint128_t)x21 * x33) + ((uint128_t)x20 * x31))))))));
- uint128_t x47 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((uint128_t)x9 * x23))) + (0x1e1 * (((uint128_t)x11 * x38) + (((uint128_t)x13 * x39) + (((uint128_t)x15 * x37) + (((uint128_t)x17 * x35) + (((uint128_t)x19 * x33) + (((uint128_t)x21 * x31) + ((uint128_t)x20 * x29)))))))));
- uint128_t x48 = ((((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)) + (0x1e1 * (((uint128_t)x9 * x38) + (((uint128_t)x11 * x39) + (((uint128_t)x13 * x37) + (((uint128_t)x15 * x35) + (((uint128_t)x17 * x33) + (((uint128_t)x19 * x31) + (((uint128_t)x21 * x29) + ((uint128_t)x20 * x27))))))))));
- uint128_t x49 = (((uint128_t)x5 * x23) + (0x1e1 * ((0x2 * ((uint128_t)x7 * x38)) + ((0x2 * ((uint128_t)x9 * x39)) + ((0x2 * ((uint128_t)x11 * x37)) + ((0x2 * ((uint128_t)x13 * x35)) + ((0x2 * ((uint128_t)x15 * x33)) + ((0x2 * ((uint128_t)x17 * x31)) + ((0x2 * ((uint128_t)x19 * x29)) + ((0x2 * ((uint128_t)x21 * x27)) + (0x2 * ((uint128_t)x20 * x25))))))))))));
- uint128_t x50 = (x49 >> 0x34);
- uint64_t x51 = ((uint64_t)x49 & 0xfffffffffffff);
- uint128_t x52 = (x50 + x48);
- uint128_t x53 = (x52 >> 0x33);
- uint64_t x54 = ((uint64_t)x52 & 0x7ffffffffffff);
- uint128_t x55 = (x53 + x47);
- uint128_t x56 = (x55 >> 0x33);
- uint64_t x57 = ((uint64_t)x55 & 0x7ffffffffffff);
- uint128_t x58 = (x56 + x46);
- uint128_t x59 = (x58 >> 0x33);
- uint64_t x60 = ((uint64_t)x58 & 0x7ffffffffffff);
- uint128_t x61 = (x59 + x45);
- uint128_t x62 = (x61 >> 0x33);
- uint64_t x63 = ((uint64_t)x61 & 0x7ffffffffffff);
- uint128_t x64 = (x62 + x44);
- uint128_t x65 = (x64 >> 0x33);
- uint64_t x66 = ((uint64_t)x64 & 0x7ffffffffffff);
- uint128_t x67 = (x65 + x43);
- uint128_t x68 = (x67 >> 0x33);
- uint64_t x69 = ((uint64_t)x67 & 0x7ffffffffffff);
- uint128_t x70 = (x68 + x42);
- uint128_t x71 = (x70 >> 0x33);
- uint64_t x72 = ((uint64_t)x70 & 0x7ffffffffffff);
- uint128_t x73 = (x71 + x41);
- uint64_t x74 = (uint64_t) (x73 >> 0x33);
- uint64_t x75 = ((uint64_t)x73 & 0x7ffffffffffff);
- uint128_t x76 = (x74 + x40);
- uint64_t x77 = (uint64_t) (x76 >> 0x33);
- uint64_t x78 = ((uint64_t)x76 & 0x7ffffffffffff);
- uint128_t x79 = (x51 + ((uint128_t)0x1e1 * x77));
- uint64_t x80 = (uint64_t) (x79 >> 0x34);
- uint64_t x81 = ((uint64_t)x79 & 0xfffffffffffff);
- uint64_t x82 = (x80 + x54);
- uint64_t x83 = (x82 >> 0x33);
- uint64_t x84 = (x82 & 0x7ffffffffffff);
- return (Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x83 + x57), Return x84, Return x81))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e511m481_10limbs/femulDisplay.v b/src/Specific/solinas64_2e511m481_10limbs/femulDisplay.v
deleted file mode 100644
index d5f200be8..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e511m481_10limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e511m481_10limbs/fesquare.c b/src/Specific/solinas64_2e511m481_10limbs/fesquare.c
deleted file mode 100644
index 973d0ba84..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/fesquare.c
+++ /dev/null
@@ -1,68 +0,0 @@
-static void fesquare(uint64_t out[10], const uint64_t in1[10]) {
- { const uint64_t x17 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x19 = (((uint128_t)x2 * x17) + ((0x2 * ((uint128_t)x4 * x18)) + ((0x2 * ((uint128_t)x6 * x16)) + ((0x2 * ((uint128_t)x8 * x14)) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + ((0x2 * ((uint128_t)x14 * x8)) + ((0x2 * ((uint128_t)x16 * x6)) + ((0x2 * ((uint128_t)x18 * x4)) + ((uint128_t)x17 * x2))))))))));
- { uint128_t x20 = ((((uint128_t)x2 * x18) + ((0x2 * ((uint128_t)x4 * x16)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + ((0x2 * ((uint128_t)x16 * x4)) + ((uint128_t)x18 * x2))))))))) + (0x1e1 * ((uint128_t)x17 * x17)));
- { uint128_t x21 = ((((uint128_t)x2 * x16) + ((0x2 * ((uint128_t)x4 * x14)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + ((0x2 * ((uint128_t)x14 * x4)) + ((uint128_t)x16 * x2)))))))) + (0x1e1 * (((uint128_t)x18 * x17) + ((uint128_t)x17 * x18))));
- { uint128_t x22 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + ((0x2 * ((uint128_t)x6 * x10)) + ((0x2 * ((uint128_t)x8 * x8)) + ((0x2 * ((uint128_t)x10 * x6)) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x1e1 * (((uint128_t)x16 * x17) + (((uint128_t)x18 * x18) + ((uint128_t)x17 * x16)))));
- { uint128_t x23 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x1e1 * (((uint128_t)x14 * x17) + (((uint128_t)x16 * x18) + (((uint128_t)x18 * x16) + ((uint128_t)x17 * x14))))));
- { uint128_t x24 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x1e1 * (((uint128_t)x12 * x17) + (((uint128_t)x14 * x18) + (((uint128_t)x16 * x16) + (((uint128_t)x18 * x14) + ((uint128_t)x17 * x12)))))));
- { uint128_t x25 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x1e1 * (((uint128_t)x10 * x17) + (((uint128_t)x12 * x18) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + (((uint128_t)x18 * x12) + ((uint128_t)x17 * x10))))))));
- { uint128_t x26 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x1e1 * (((uint128_t)x8 * x17) + (((uint128_t)x10 * x18) + (((uint128_t)x12 * x16) + (((uint128_t)x14 * x14) + (((uint128_t)x16 * x12) + (((uint128_t)x18 * x10) + ((uint128_t)x17 * x8)))))))));
- { uint128_t x27 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1e1 * (((uint128_t)x6 * x17) + (((uint128_t)x8 * x18) + (((uint128_t)x10 * x16) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + (((uint128_t)x16 * x10) + (((uint128_t)x18 * x8) + ((uint128_t)x17 * x6))))))))));
- { uint128_t x28 = (((uint128_t)x2 * x2) + (0x1e1 * ((0x2 * ((uint128_t)x4 * x17)) + ((0x2 * ((uint128_t)x6 * x18)) + ((0x2 * ((uint128_t)x8 * x16)) + ((0x2 * ((uint128_t)x10 * x14)) + ((0x2 * ((uint128_t)x12 * x12)) + ((0x2 * ((uint128_t)x14 * x10)) + ((0x2 * ((uint128_t)x16 * x8)) + ((0x2 * ((uint128_t)x18 * x6)) + (0x2 * ((uint128_t)x17 * x4))))))))))));
- { uint128_t x29 = (x28 >> 0x34);
- { uint64_t x30 = ((uint64_t)x28 & 0xfffffffffffff);
- { uint128_t x31 = (x29 + x27);
- { uint128_t x32 = (x31 >> 0x33);
- { uint64_t x33 = ((uint64_t)x31 & 0x7ffffffffffff);
- { uint128_t x34 = (x32 + x26);
- { uint128_t x35 = (x34 >> 0x33);
- { uint64_t x36 = ((uint64_t)x34 & 0x7ffffffffffff);
- { uint128_t x37 = (x35 + x25);
- { uint128_t x38 = (x37 >> 0x33);
- { uint64_t x39 = ((uint64_t)x37 & 0x7ffffffffffff);
- { uint128_t x40 = (x38 + x24);
- { uint128_t x41 = (x40 >> 0x33);
- { uint64_t x42 = ((uint64_t)x40 & 0x7ffffffffffff);
- { uint128_t x43 = (x41 + x23);
- { uint128_t x44 = (x43 >> 0x33);
- { uint64_t x45 = ((uint64_t)x43 & 0x7ffffffffffff);
- { uint128_t x46 = (x44 + x22);
- { uint128_t x47 = (x46 >> 0x33);
- { uint64_t x48 = ((uint64_t)x46 & 0x7ffffffffffff);
- { uint128_t x49 = (x47 + x21);
- { uint128_t x50 = (x49 >> 0x33);
- { uint64_t x51 = ((uint64_t)x49 & 0x7ffffffffffff);
- { uint128_t x52 = (x50 + x20);
- { uint64_t x53 = (uint64_t) (x52 >> 0x33);
- { uint64_t x54 = ((uint64_t)x52 & 0x7ffffffffffff);
- { uint128_t x55 = (x53 + x19);
- { uint64_t x56 = (uint64_t) (x55 >> 0x33);
- { uint64_t x57 = ((uint64_t)x55 & 0x7ffffffffffff);
- { uint128_t x58 = (x30 + ((uint128_t)0x1e1 * x56));
- { uint64_t x59 = (uint64_t) (x58 >> 0x34);
- { uint64_t x60 = ((uint64_t)x58 & 0xfffffffffffff);
- { uint64_t x61 = (x59 + x33);
- { uint64_t x62 = (x61 >> 0x33);
- { uint64_t x63 = (x61 & 0x7ffffffffffff);
- out[0] = x60;
- out[1] = x63;
- out[2] = (x62 + x36);
- out[3] = x39;
- out[4] = x42;
- out[5] = x45;
- out[6] = x48;
- out[7] = x51;
- out[8] = x54;
- out[9] = x57;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e511m481_10limbs/fesquare.v b/src/Specific/solinas64_2e511m481_10limbs/fesquare.v
deleted file mode 100644
index 91a7fea1a..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e511m481_10limbs.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/solinas64_2e511m481_10limbs/fesquareDisplay.log b/src/Specific/solinas64_2e511m481_10limbs/fesquareDisplay.log
deleted file mode 100644
index 25e7c49fd..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x19 = (((uint128_t)x2 * x17) + ((0x2 * ((uint128_t)x4 * x18)) + ((0x2 * ((uint128_t)x6 * x16)) + ((0x2 * ((uint128_t)x8 * x14)) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + ((0x2 * ((uint128_t)x14 * x8)) + ((0x2 * ((uint128_t)x16 * x6)) + ((0x2 * ((uint128_t)x18 * x4)) + ((uint128_t)x17 * x2))))))))));
- uint128_t x20 = ((((uint128_t)x2 * x18) + ((0x2 * ((uint128_t)x4 * x16)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + ((0x2 * ((uint128_t)x16 * x4)) + ((uint128_t)x18 * x2))))))))) + (0x1e1 * ((uint128_t)x17 * x17)));
- uint128_t x21 = ((((uint128_t)x2 * x16) + ((0x2 * ((uint128_t)x4 * x14)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + ((0x2 * ((uint128_t)x14 * x4)) + ((uint128_t)x16 * x2)))))))) + (0x1e1 * (((uint128_t)x18 * x17) + ((uint128_t)x17 * x18))));
- uint128_t x22 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + ((0x2 * ((uint128_t)x6 * x10)) + ((0x2 * ((uint128_t)x8 * x8)) + ((0x2 * ((uint128_t)x10 * x6)) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x1e1 * (((uint128_t)x16 * x17) + (((uint128_t)x18 * x18) + ((uint128_t)x17 * x16)))));
- uint128_t x23 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x1e1 * (((uint128_t)x14 * x17) + (((uint128_t)x16 * x18) + (((uint128_t)x18 * x16) + ((uint128_t)x17 * x14))))));
- uint128_t x24 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x1e1 * (((uint128_t)x12 * x17) + (((uint128_t)x14 * x18) + (((uint128_t)x16 * x16) + (((uint128_t)x18 * x14) + ((uint128_t)x17 * x12)))))));
- uint128_t x25 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x1e1 * (((uint128_t)x10 * x17) + (((uint128_t)x12 * x18) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + (((uint128_t)x18 * x12) + ((uint128_t)x17 * x10))))))));
- uint128_t x26 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x1e1 * (((uint128_t)x8 * x17) + (((uint128_t)x10 * x18) + (((uint128_t)x12 * x16) + (((uint128_t)x14 * x14) + (((uint128_t)x16 * x12) + (((uint128_t)x18 * x10) + ((uint128_t)x17 * x8)))))))));
- uint128_t x27 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1e1 * (((uint128_t)x6 * x17) + (((uint128_t)x8 * x18) + (((uint128_t)x10 * x16) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + (((uint128_t)x16 * x10) + (((uint128_t)x18 * x8) + ((uint128_t)x17 * x6))))))))));
- uint128_t x28 = (((uint128_t)x2 * x2) + (0x1e1 * ((0x2 * ((uint128_t)x4 * x17)) + ((0x2 * ((uint128_t)x6 * x18)) + ((0x2 * ((uint128_t)x8 * x16)) + ((0x2 * ((uint128_t)x10 * x14)) + ((0x2 * ((uint128_t)x12 * x12)) + ((0x2 * ((uint128_t)x14 * x10)) + ((0x2 * ((uint128_t)x16 * x8)) + ((0x2 * ((uint128_t)x18 * x6)) + (0x2 * ((uint128_t)x17 * x4))))))))))));
- uint128_t x29 = (x28 >> 0x34);
- uint64_t x30 = ((uint64_t)x28 & 0xfffffffffffff);
- uint128_t x31 = (x29 + x27);
- uint128_t x32 = (x31 >> 0x33);
- uint64_t x33 = ((uint64_t)x31 & 0x7ffffffffffff);
- uint128_t x34 = (x32 + x26);
- uint128_t x35 = (x34 >> 0x33);
- uint64_t x36 = ((uint64_t)x34 & 0x7ffffffffffff);
- uint128_t x37 = (x35 + x25);
- uint128_t x38 = (x37 >> 0x33);
- uint64_t x39 = ((uint64_t)x37 & 0x7ffffffffffff);
- uint128_t x40 = (x38 + x24);
- uint128_t x41 = (x40 >> 0x33);
- uint64_t x42 = ((uint64_t)x40 & 0x7ffffffffffff);
- uint128_t x43 = (x41 + x23);
- uint128_t x44 = (x43 >> 0x33);
- uint64_t x45 = ((uint64_t)x43 & 0x7ffffffffffff);
- uint128_t x46 = (x44 + x22);
- uint128_t x47 = (x46 >> 0x33);
- uint64_t x48 = ((uint64_t)x46 & 0x7ffffffffffff);
- uint128_t x49 = (x47 + x21);
- uint128_t x50 = (x49 >> 0x33);
- uint64_t x51 = ((uint64_t)x49 & 0x7ffffffffffff);
- uint128_t x52 = (x50 + x20);
- uint64_t x53 = (uint64_t) (x52 >> 0x33);
- uint64_t x54 = ((uint64_t)x52 & 0x7ffffffffffff);
- uint128_t x55 = (x53 + x19);
- uint64_t x56 = (uint64_t) (x55 >> 0x33);
- uint64_t x57 = ((uint64_t)x55 & 0x7ffffffffffff);
- uint128_t x58 = (x30 + ((uint128_t)0x1e1 * x56));
- uint64_t x59 = (uint64_t) (x58 >> 0x34);
- uint64_t x60 = ((uint64_t)x58 & 0xfffffffffffff);
- uint64_t x61 = (x59 + x33);
- uint64_t x62 = (x61 >> 0x33);
- uint64_t x63 = (x61 & 0x7ffffffffffff);
- return (Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, Return x39, (x62 + x36), Return x63, Return x60))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e511m481_10limbs/fesquareDisplay.v b/src/Specific/solinas64_2e511m481_10limbs/fesquareDisplay.v
deleted file mode 100644
index 9a1a8600e..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e511m481_10limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e511m481_10limbs/fesub.c b/src/Specific/solinas64_2e511m481_10limbs/fesub.c
deleted file mode 100644
index a7a7c08c9..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/fesub.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fesub(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- out[0] = ((0x1ffffffffffc3e + x5) - x23);
- out[1] = ((0xffffffffffffe + x7) - x25);
- out[2] = ((0xffffffffffffe + x9) - x27);
- out[3] = ((0xffffffffffffe + x11) - x29);
- out[4] = ((0xffffffffffffe + x13) - x31);
- out[5] = ((0xffffffffffffe + x15) - x33);
- out[6] = ((0xffffffffffffe + x17) - x35);
- out[7] = ((0xffffffffffffe + x19) - x37);
- out[8] = ((0xffffffffffffe + x21) - x39);
- out[9] = ((0xffffffffffffe + x20) - x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e511m481_10limbs/fesub.v b/src/Specific/solinas64_2e511m481_10limbs/fesub.v
deleted file mode 100644
index 8fefa7a45..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e511m481_10limbs.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/solinas64_2e511m481_10limbs/fesubDisplay.log b/src/Specific/solinas64_2e511m481_10limbs/fesubDisplay.log
deleted file mode 100644
index 993230713..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- (((0xffffffffffffe + x20) - x38), ((0xffffffffffffe + x21) - x39), ((0xffffffffffffe + x19) - x37), ((0xffffffffffffe + x17) - x35), ((0xffffffffffffe + x15) - x33), ((0xffffffffffffe + x13) - x31), ((0xffffffffffffe + x11) - x29), ((0xffffffffffffe + x9) - x27), ((0xffffffffffffe + x7) - x25), ((0x1ffffffffffc3e + x5) - x23)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e511m481_10limbs/fesubDisplay.v b/src/Specific/solinas64_2e511m481_10limbs/fesubDisplay.v
deleted file mode 100644
index 30da4214c..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e511m481_10limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e511m481_10limbs/freeze.c b/src/Specific/solinas64_2e511m481_10limbs/freeze.c
deleted file mode 100644
index 63f51d9d3..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/freeze.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void freeze(uint64_t out[10], const uint64_t in1[10]) {
- { const uint64_t x17 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffe1f);
- { uint64_t x23; uint8_t x24 = _subborrow_u51(x21, x4, 0x7ffffffffffff, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u51(x24, x6, 0x7ffffffffffff, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u51(x27, x8, 0x7ffffffffffff, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u51(x30, x10, 0x7ffffffffffff, &x32);
- { uint64_t x35; uint8_t x36 = _subborrow_u51(x33, x12, 0x7ffffffffffff, &x35);
- { uint64_t x38; uint8_t x39 = _subborrow_u51(x36, x14, 0x7ffffffffffff, &x38);
- { uint64_t x41; uint8_t x42 = _subborrow_u51(x39, x16, 0x7ffffffffffff, &x41);
- { uint64_t x44; uint8_t x45 = _subborrow_u51(x42, x18, 0x7ffffffffffff, &x44);
- { uint64_t x47; uint8_t x48 = _subborrow_u51(x45, x17, 0x7ffffffffffff, &x47);
- { uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL);
- { uint64_t x50 = (x49 & 0xffffffffffe1f);
- { uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- { uint64_t x54 = (x49 & 0x7ffffffffffff);
- { uint64_t x56; uint8_t x57 = _addcarryx_u51(x53, x23, x54, &x56);
- { uint64_t x58 = (x49 & 0x7ffffffffffff);
- { uint64_t x60; uint8_t x61 = _addcarryx_u51(x57, x26, x58, &x60);
- { uint64_t x62 = (x49 & 0x7ffffffffffff);
- { uint64_t x64; uint8_t x65 = _addcarryx_u51(x61, x29, x62, &x64);
- { uint64_t x66 = (x49 & 0x7ffffffffffff);
- { uint64_t x68; uint8_t x69 = _addcarryx_u51(x65, x32, x66, &x68);
- { uint64_t x70 = (x49 & 0x7ffffffffffff);
- { uint64_t x72; uint8_t x73 = _addcarryx_u51(x69, x35, x70, &x72);
- { uint64_t x74 = (x49 & 0x7ffffffffffff);
- { uint64_t x76; uint8_t x77 = _addcarryx_u51(x73, x38, x74, &x76);
- { uint64_t x78 = (x49 & 0x7ffffffffffff);
- { uint64_t x80; uint8_t x81 = _addcarryx_u51(x77, x41, x78, &x80);
- { uint64_t x82 = (x49 & 0x7ffffffffffff);
- { uint64_t x84; uint8_t x85 = _addcarryx_u51(x81, x44, x82, &x84);
- { uint64_t x86 = (x49 & 0x7ffffffffffff);
- { uint64_t x88; uint8_t _ = _addcarryx_u51(x85, x47, x86, &x88);
- out[0] = x52;
- out[1] = x56;
- out[2] = x60;
- out[3] = x64;
- out[4] = x68;
- out[5] = x72;
- out[6] = x76;
- out[7] = x80;
- out[8] = x84;
- out[9] = x88;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e511m481_10limbs/freeze.v b/src/Specific/solinas64_2e511m481_10limbs/freeze.v
deleted file mode 100644
index fcf5b8d1e..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e511m481_10limbs.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/solinas64_2e511m481_10limbs/freezeDisplay.log b/src/Specific/solinas64_2e511m481_10limbs/freezeDisplay.log
deleted file mode 100644
index 07b785068..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffe1f);
- uint64_t x23, uint8_t x24 = subborrow_u51(x21, x4, 0x7ffffffffffff);
- uint64_t x26, uint8_t x27 = subborrow_u51(x24, x6, 0x7ffffffffffff);
- uint64_t x29, uint8_t x30 = subborrow_u51(x27, x8, 0x7ffffffffffff);
- uint64_t x32, uint8_t x33 = subborrow_u51(x30, x10, 0x7ffffffffffff);
- uint64_t x35, uint8_t x36 = subborrow_u51(x33, x12, 0x7ffffffffffff);
- uint64_t x38, uint8_t x39 = subborrow_u51(x36, x14, 0x7ffffffffffff);
- uint64_t x41, uint8_t x42 = subborrow_u51(x39, x16, 0x7ffffffffffff);
- uint64_t x44, uint8_t x45 = subborrow_u51(x42, x18, 0x7ffffffffffff);
- uint64_t x47, uint8_t x48 = subborrow_u51(x45, x17, 0x7ffffffffffff);
- uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL);
- uint64_t x50 = (x49 & 0xffffffffffe1f);
- uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- uint64_t x54 = (x49 & 0x7ffffffffffff);
- uint64_t x56, uint8_t x57 = addcarryx_u51(x53, x23, x54);
- uint64_t x58 = (x49 & 0x7ffffffffffff);
- uint64_t x60, uint8_t x61 = addcarryx_u51(x57, x26, x58);
- uint64_t x62 = (x49 & 0x7ffffffffffff);
- uint64_t x64, uint8_t x65 = addcarryx_u51(x61, x29, x62);
- uint64_t x66 = (x49 & 0x7ffffffffffff);
- uint64_t x68, uint8_t x69 = addcarryx_u51(x65, x32, x66);
- uint64_t x70 = (x49 & 0x7ffffffffffff);
- uint64_t x72, uint8_t x73 = addcarryx_u51(x69, x35, x70);
- uint64_t x74 = (x49 & 0x7ffffffffffff);
- uint64_t x76, uint8_t x77 = addcarryx_u51(x73, x38, x74);
- uint64_t x78 = (x49 & 0x7ffffffffffff);
- uint64_t x80, uint8_t x81 = addcarryx_u51(x77, x41, x78);
- uint64_t x82 = (x49 & 0x7ffffffffffff);
- uint64_t x84, uint8_t x85 = addcarryx_u51(x81, x44, x82);
- uint64_t x86 = (x49 & 0x7ffffffffffff);
- uint64_t x88, uint8_t _ = addcarryx_u51(x85, x47, x86);
- (Return x88, Return x84, Return x80, Return x76, Return x72, Return x68, Return x64, Return x60, Return x56, Return x52))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e511m481_10limbs/freezeDisplay.v b/src/Specific/solinas64_2e511m481_10limbs/freezeDisplay.v
deleted file mode 100644
index 19230b1f4..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e511m481_10limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e511m481_10limbs/py_interpreter.sh b/src/Specific/solinas64_2e511m481_10limbs/py_interpreter.sh
deleted file mode 100755
index 631695236..000000000
--- a/src/Specific/solinas64_2e511m481_10limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**511 - 481' -Dmodulus_bytes='51.1' -Da24='121665'
diff --git a/src/Specific/solinas64_2e511m481_11limbs/CurveParameters.v b/src/Specific/solinas64_2e511m481_11limbs/CurveParameters.v
deleted file mode 100644
index 66bd2ceff..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^511 - 481
-Base: 46 + 5/11
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 11%nat;
- base := 46 + 5/11;
- bitwidth := 64;
- s := 2^511;
- c := [(1, 481)];
- carry_chains := Some [seq 0 (pred 11); [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/solinas64_2e511m481_11limbs/Synthesis.v b/src/Specific/solinas64_2e511m481_11limbs/Synthesis.v
deleted file mode 100644
index a069f2a40..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e511m481_11limbs.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/solinas64_2e511m481_11limbs/compiler.sh b/src/Specific/solinas64_2e511m481_11limbs/compiler.sh
deleted file mode 100755
index 95e2547a8..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,46,47,46,47,46,47,46,47,46,46}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<511) - 481' "$@"
diff --git a/src/Specific/solinas64_2e511m481_11limbs/compilerxx.sh b/src/Specific/solinas64_2e511m481_11limbs/compilerxx.sh
deleted file mode 100755
index a8cabec1f..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,46,47,46,47,46,47,46,47,46,46}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x1f}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<511) - 481' "$@"
diff --git a/src/Specific/solinas64_2e511m481_11limbs/feadd.c b/src/Specific/solinas64_2e511m481_11limbs/feadd.c
deleted file mode 100644
index f810d17db..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/feadd.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void feadd(uint64_t out[11], const uint64_t in1[11], const uint64_t in2[11]) {
- { const uint64_t x22 = in1[10];
- { const uint64_t x23 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x42 = in2[10];
- { const uint64_t x43 = in2[9];
- { const uint64_t x41 = in2[8];
- { const uint64_t x39 = in2[7];
- { const uint64_t x37 = in2[6];
- { const uint64_t x35 = in2[5];
- { const uint64_t x33 = in2[4];
- { const uint64_t x31 = in2[3];
- { const uint64_t x29 = in2[2];
- { const uint64_t x27 = in2[1];
- { const uint64_t x25 = in2[0];
- out[0] = (x5 + x25);
- out[1] = (x7 + x27);
- out[2] = (x9 + x29);
- out[3] = (x11 + x31);
- out[4] = (x13 + x33);
- out[5] = (x15 + x35);
- out[6] = (x17 + x37);
- out[7] = (x19 + x39);
- out[8] = (x21 + x41);
- out[9] = (x23 + x43);
- out[10] = (x22 + x42);
- }}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e511m481_11limbs/feadd.v b/src/Specific/solinas64_2e511m481_11limbs/feadd.v
deleted file mode 100644
index 70ec18d9a..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e511m481_11limbs.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/solinas64_2e511m481_11limbs/feaddDisplay.log b/src/Specific/solinas64_2e511m481_11limbs/feaddDisplay.log
deleted file mode 100644
index 83efadb9e..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- ((x22 + x42), (x23 + x43), (x21 + x41), (x19 + x39), (x17 + x37), (x15 + x35), (x13 + x33), (x11 + x31), (x9 + x29), (x7 + x27), (x5 + x25)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e511m481_11limbs/feaddDisplay.v b/src/Specific/solinas64_2e511m481_11limbs/feaddDisplay.v
deleted file mode 100644
index 573e034c1..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e511m481_11limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e511m481_11limbs/fecarry.v b/src/Specific/solinas64_2e511m481_11limbs/fecarry.v
deleted file mode 100644
index bbe31057b..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e511m481_11limbs.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/solinas64_2e511m481_11limbs/fecarryDisplay.v b/src/Specific/solinas64_2e511m481_11limbs/fecarryDisplay.v
deleted file mode 100644
index d26e55d2d..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e511m481_11limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e511m481_11limbs/femul.c b/src/Specific/solinas64_2e511m481_11limbs/femul.c
deleted file mode 100644
index 0cfc49d83..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/femul.c
+++ /dev/null
@@ -1,85 +0,0 @@
-static void femul(uint64_t out[11], const uint64_t in1[11], const uint64_t in2[11]) {
- { const uint64_t x22 = in1[10];
- { const uint64_t x23 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x42 = in2[10];
- { const uint64_t x43 = in2[9];
- { const uint64_t x41 = in2[8];
- { const uint64_t x39 = in2[7];
- { const uint64_t x37 = in2[6];
- { const uint64_t x35 = in2[5];
- { const uint64_t x33 = in2[4];
- { const uint64_t x31 = in2[3];
- { const uint64_t x29 = in2[2];
- { const uint64_t x27 = in2[1];
- { const uint64_t x25 = in2[0];
- { uint128_t x44 = (((uint128_t)x5 * x42) + ((0x2 * ((uint128_t)x7 * x43)) + (((uint128_t)x9 * x41) + ((0x2 * ((uint128_t)x11 * x39)) + (((uint128_t)x13 * x37) + ((0x2 * ((uint128_t)x15 * x35)) + (((uint128_t)x17 * x33) + ((0x2 * ((uint128_t)x19 * x31)) + (((uint128_t)x21 * x29) + ((0x2 * ((uint128_t)x23 * x27)) + ((uint128_t)x22 * x25)))))))))));
- { uint128_t x45 = ((((uint128_t)x5 * x43) + (((uint128_t)x7 * x41) + (((uint128_t)x9 * x39) + (((uint128_t)x11 * x37) + (((uint128_t)x13 * x35) + (((uint128_t)x15 * x33) + (((uint128_t)x17 * x31) + (((uint128_t)x19 * x29) + (((uint128_t)x21 * x27) + ((uint128_t)x23 * x25)))))))))) + (0x1e1 * ((uint128_t)x22 * x42)));
- { uint128_t x46 = ((((uint128_t)x5 * x41) + ((0x2 * ((uint128_t)x7 * x39)) + (((uint128_t)x9 * x37) + ((0x2 * ((uint128_t)x11 * x35)) + (((uint128_t)x13 * x33) + ((0x2 * ((uint128_t)x15 * x31)) + (((uint128_t)x17 * x29) + ((0x2 * ((uint128_t)x19 * x27)) + ((uint128_t)x21 * x25))))))))) + (0x1e1 * ((0x2 * ((uint128_t)x23 * x42)) + (0x2 * ((uint128_t)x22 * x43)))));
- { uint128_t x47 = ((((uint128_t)x5 * x39) + (((uint128_t)x7 * x37) + (((uint128_t)x9 * x35) + (((uint128_t)x11 * x33) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + (((uint128_t)x17 * x27) + ((uint128_t)x19 * x25)))))))) + (0x1e1 * (((uint128_t)x21 * x42) + ((0x2 * ((uint128_t)x23 * x43)) + ((uint128_t)x22 * x41)))));
- { uint128_t x48 = ((((uint128_t)x5 * x37) + ((0x2 * ((uint128_t)x7 * x35)) + (((uint128_t)x9 * x33) + ((0x2 * ((uint128_t)x11 * x31)) + (((uint128_t)x13 * x29) + ((0x2 * ((uint128_t)x15 * x27)) + ((uint128_t)x17 * x25))))))) + (0x1e1 * ((0x2 * ((uint128_t)x19 * x42)) + ((0x2 * ((uint128_t)x21 * x43)) + ((0x2 * ((uint128_t)x23 * x41)) + (0x2 * ((uint128_t)x22 * x39)))))));
- { uint128_t x49 = ((((uint128_t)x5 * x35) + (((uint128_t)x7 * x33) + (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + ((uint128_t)x15 * x25)))))) + (0x1e1 * (((uint128_t)x17 * x42) + ((0x2 * ((uint128_t)x19 * x43)) + (((uint128_t)x21 * x41) + ((0x2 * ((uint128_t)x23 * x39)) + ((uint128_t)x22 * x37)))))));
- { uint128_t x50 = ((((uint128_t)x5 * x33) + ((0x2 * ((uint128_t)x7 * x31)) + (((uint128_t)x9 * x29) + ((0x2 * ((uint128_t)x11 * x27)) + ((uint128_t)x13 * x25))))) + (0x1e1 * ((0x2 * ((uint128_t)x15 * x42)) + ((0x2 * ((uint128_t)x17 * x43)) + ((0x2 * ((uint128_t)x19 * x41)) + ((0x2 * ((uint128_t)x21 * x39)) + ((0x2 * ((uint128_t)x23 * x37)) + (0x2 * ((uint128_t)x22 * x35)))))))));
- { uint128_t x51 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + ((uint128_t)x11 * x25)))) + (0x1e1 * (((uint128_t)x13 * x42) + ((0x2 * ((uint128_t)x15 * x43)) + (((uint128_t)x17 * x41) + ((0x2 * ((uint128_t)x19 * x39)) + (((uint128_t)x21 * x37) + ((0x2 * ((uint128_t)x23 * x35)) + ((uint128_t)x22 * x33)))))))));
- { uint128_t x52 = ((((uint128_t)x5 * x29) + ((0x2 * ((uint128_t)x7 * x27)) + ((uint128_t)x9 * x25))) + (0x1e1 * ((0x2 * ((uint128_t)x11 * x42)) + ((0x2 * ((uint128_t)x13 * x43)) + ((0x2 * ((uint128_t)x15 * x41)) + ((0x2 * ((uint128_t)x17 * x39)) + ((0x2 * ((uint128_t)x19 * x37)) + ((0x2 * ((uint128_t)x21 * x35)) + ((0x2 * ((uint128_t)x23 * x33)) + (0x2 * ((uint128_t)x22 * x31)))))))))));
- { uint128_t x53 = ((((uint128_t)x5 * x27) + ((uint128_t)x7 * x25)) + (0x1e1 * (((uint128_t)x9 * x42) + ((0x2 * ((uint128_t)x11 * x43)) + (((uint128_t)x13 * x41) + ((0x2 * ((uint128_t)x15 * x39)) + (((uint128_t)x17 * x37) + ((0x2 * ((uint128_t)x19 * x35)) + (((uint128_t)x21 * x33) + ((0x2 * ((uint128_t)x23 * x31)) + ((uint128_t)x22 * x29)))))))))));
- { uint128_t x54 = (((uint128_t)x5 * x25) + (0x1e1 * ((0x2 * ((uint128_t)x7 * x42)) + ((0x2 * ((uint128_t)x9 * x43)) + ((0x2 * ((uint128_t)x11 * x41)) + ((0x2 * ((uint128_t)x13 * x39)) + ((0x2 * ((uint128_t)x15 * x37)) + ((0x2 * ((uint128_t)x17 * x35)) + ((0x2 * ((uint128_t)x19 * x33)) + ((0x2 * ((uint128_t)x21 * x31)) + ((0x2 * ((uint128_t)x23 * x29)) + (0x2 * ((uint128_t)x22 * x27)))))))))))));
- { uint64_t x55 = (uint64_t) (x54 >> 0x2f);
- { uint64_t x56 = ((uint64_t)x54 & 0x7fffffffffff);
- { uint128_t x57 = (x55 + x53);
- { uint64_t x58 = (uint64_t) (x57 >> 0x2e);
- { uint64_t x59 = ((uint64_t)x57 & 0x3fffffffffff);
- { uint128_t x60 = (x58 + x52);
- { uint64_t x61 = (uint64_t) (x60 >> 0x2f);
- { uint64_t x62 = ((uint64_t)x60 & 0x7fffffffffff);
- { uint128_t x63 = (x61 + x51);
- { uint64_t x64 = (uint64_t) (x63 >> 0x2e);
- { uint64_t x65 = ((uint64_t)x63 & 0x3fffffffffff);
- { uint128_t x66 = (x64 + x50);
- { uint64_t x67 = (uint64_t) (x66 >> 0x2f);
- { uint64_t x68 = ((uint64_t)x66 & 0x7fffffffffff);
- { uint128_t x69 = (x67 + x49);
- { uint64_t x70 = (uint64_t) (x69 >> 0x2e);
- { uint64_t x71 = ((uint64_t)x69 & 0x3fffffffffff);
- { uint128_t x72 = (x70 + x48);
- { uint64_t x73 = (uint64_t) (x72 >> 0x2f);
- { uint64_t x74 = ((uint64_t)x72 & 0x7fffffffffff);
- { uint128_t x75 = (x73 + x47);
- { uint64_t x76 = (uint64_t) (x75 >> 0x2e);
- { uint64_t x77 = ((uint64_t)x75 & 0x3fffffffffff);
- { uint128_t x78 = (x76 + x46);
- { uint64_t x79 = (uint64_t) (x78 >> 0x2f);
- { uint64_t x80 = ((uint64_t)x78 & 0x7fffffffffff);
- { uint128_t x81 = (x79 + x45);
- { uint64_t x82 = (uint64_t) (x81 >> 0x2e);
- { uint64_t x83 = ((uint64_t)x81 & 0x3fffffffffff);
- { uint128_t x84 = (x82 + x44);
- { uint64_t x85 = (uint64_t) (x84 >> 0x2e);
- { uint64_t x86 = ((uint64_t)x84 & 0x3fffffffffff);
- { uint64_t x87 = (x56 + (0x1e1 * x85));
- { uint64_t x88 = (x87 >> 0x2f);
- { uint64_t x89 = (x87 & 0x7fffffffffff);
- { uint64_t x90 = (x88 + x59);
- { uint64_t x91 = (x90 >> 0x2e);
- { uint64_t x92 = (x90 & 0x3fffffffffff);
- out[0] = x89;
- out[1] = x92;
- out[2] = (x91 + x62);
- out[3] = x65;
- out[4] = x68;
- out[5] = x71;
- out[6] = x74;
- out[7] = x77;
- out[8] = x80;
- out[9] = x83;
- out[10] = x86;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e511m481_11limbs/femul.v b/src/Specific/solinas64_2e511m481_11limbs/femul.v
deleted file mode 100644
index 02db2a2a9..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e511m481_11limbs.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/solinas64_2e511m481_11limbs/femulDisplay.log b/src/Specific/solinas64_2e511m481_11limbs/femulDisplay.log
deleted file mode 100644
index 47fff87da..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/femulDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- uint128_t x44 = (((uint128_t)x5 * x42) + ((0x2 * ((uint128_t)x7 * x43)) + (((uint128_t)x9 * x41) + ((0x2 * ((uint128_t)x11 * x39)) + (((uint128_t)x13 * x37) + ((0x2 * ((uint128_t)x15 * x35)) + (((uint128_t)x17 * x33) + ((0x2 * ((uint128_t)x19 * x31)) + (((uint128_t)x21 * x29) + ((0x2 * ((uint128_t)x23 * x27)) + ((uint128_t)x22 * x25)))))))))));
- uint128_t x45 = ((((uint128_t)x5 * x43) + (((uint128_t)x7 * x41) + (((uint128_t)x9 * x39) + (((uint128_t)x11 * x37) + (((uint128_t)x13 * x35) + (((uint128_t)x15 * x33) + (((uint128_t)x17 * x31) + (((uint128_t)x19 * x29) + (((uint128_t)x21 * x27) + ((uint128_t)x23 * x25)))))))))) + (0x1e1 * ((uint128_t)x22 * x42)));
- uint128_t x46 = ((((uint128_t)x5 * x41) + ((0x2 * ((uint128_t)x7 * x39)) + (((uint128_t)x9 * x37) + ((0x2 * ((uint128_t)x11 * x35)) + (((uint128_t)x13 * x33) + ((0x2 * ((uint128_t)x15 * x31)) + (((uint128_t)x17 * x29) + ((0x2 * ((uint128_t)x19 * x27)) + ((uint128_t)x21 * x25))))))))) + (0x1e1 * ((0x2 * ((uint128_t)x23 * x42)) + (0x2 * ((uint128_t)x22 * x43)))));
- uint128_t x47 = ((((uint128_t)x5 * x39) + (((uint128_t)x7 * x37) + (((uint128_t)x9 * x35) + (((uint128_t)x11 * x33) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + (((uint128_t)x17 * x27) + ((uint128_t)x19 * x25)))))))) + (0x1e1 * (((uint128_t)x21 * x42) + ((0x2 * ((uint128_t)x23 * x43)) + ((uint128_t)x22 * x41)))));
- uint128_t x48 = ((((uint128_t)x5 * x37) + ((0x2 * ((uint128_t)x7 * x35)) + (((uint128_t)x9 * x33) + ((0x2 * ((uint128_t)x11 * x31)) + (((uint128_t)x13 * x29) + ((0x2 * ((uint128_t)x15 * x27)) + ((uint128_t)x17 * x25))))))) + (0x1e1 * ((0x2 * ((uint128_t)x19 * x42)) + ((0x2 * ((uint128_t)x21 * x43)) + ((0x2 * ((uint128_t)x23 * x41)) + (0x2 * ((uint128_t)x22 * x39)))))));
- uint128_t x49 = ((((uint128_t)x5 * x35) + (((uint128_t)x7 * x33) + (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + ((uint128_t)x15 * x25)))))) + (0x1e1 * (((uint128_t)x17 * x42) + ((0x2 * ((uint128_t)x19 * x43)) + (((uint128_t)x21 * x41) + ((0x2 * ((uint128_t)x23 * x39)) + ((uint128_t)x22 * x37)))))));
- uint128_t x50 = ((((uint128_t)x5 * x33) + ((0x2 * ((uint128_t)x7 * x31)) + (((uint128_t)x9 * x29) + ((0x2 * ((uint128_t)x11 * x27)) + ((uint128_t)x13 * x25))))) + (0x1e1 * ((0x2 * ((uint128_t)x15 * x42)) + ((0x2 * ((uint128_t)x17 * x43)) + ((0x2 * ((uint128_t)x19 * x41)) + ((0x2 * ((uint128_t)x21 * x39)) + ((0x2 * ((uint128_t)x23 * x37)) + (0x2 * ((uint128_t)x22 * x35)))))))));
- uint128_t x51 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + ((uint128_t)x11 * x25)))) + (0x1e1 * (((uint128_t)x13 * x42) + ((0x2 * ((uint128_t)x15 * x43)) + (((uint128_t)x17 * x41) + ((0x2 * ((uint128_t)x19 * x39)) + (((uint128_t)x21 * x37) + ((0x2 * ((uint128_t)x23 * x35)) + ((uint128_t)x22 * x33)))))))));
- uint128_t x52 = ((((uint128_t)x5 * x29) + ((0x2 * ((uint128_t)x7 * x27)) + ((uint128_t)x9 * x25))) + (0x1e1 * ((0x2 * ((uint128_t)x11 * x42)) + ((0x2 * ((uint128_t)x13 * x43)) + ((0x2 * ((uint128_t)x15 * x41)) + ((0x2 * ((uint128_t)x17 * x39)) + ((0x2 * ((uint128_t)x19 * x37)) + ((0x2 * ((uint128_t)x21 * x35)) + ((0x2 * ((uint128_t)x23 * x33)) + (0x2 * ((uint128_t)x22 * x31)))))))))));
- uint128_t x53 = ((((uint128_t)x5 * x27) + ((uint128_t)x7 * x25)) + (0x1e1 * (((uint128_t)x9 * x42) + ((0x2 * ((uint128_t)x11 * x43)) + (((uint128_t)x13 * x41) + ((0x2 * ((uint128_t)x15 * x39)) + (((uint128_t)x17 * x37) + ((0x2 * ((uint128_t)x19 * x35)) + (((uint128_t)x21 * x33) + ((0x2 * ((uint128_t)x23 * x31)) + ((uint128_t)x22 * x29)))))))))));
- uint128_t x54 = (((uint128_t)x5 * x25) + (0x1e1 * ((0x2 * ((uint128_t)x7 * x42)) + ((0x2 * ((uint128_t)x9 * x43)) + ((0x2 * ((uint128_t)x11 * x41)) + ((0x2 * ((uint128_t)x13 * x39)) + ((0x2 * ((uint128_t)x15 * x37)) + ((0x2 * ((uint128_t)x17 * x35)) + ((0x2 * ((uint128_t)x19 * x33)) + ((0x2 * ((uint128_t)x21 * x31)) + ((0x2 * ((uint128_t)x23 * x29)) + (0x2 * ((uint128_t)x22 * x27)))))))))))));
- uint64_t x55 = (uint64_t) (x54 >> 0x2f);
- uint64_t x56 = ((uint64_t)x54 & 0x7fffffffffff);
- uint128_t x57 = (x55 + x53);
- uint64_t x58 = (uint64_t) (x57 >> 0x2e);
- uint64_t x59 = ((uint64_t)x57 & 0x3fffffffffff);
- uint128_t x60 = (x58 + x52);
- uint64_t x61 = (uint64_t) (x60 >> 0x2f);
- uint64_t x62 = ((uint64_t)x60 & 0x7fffffffffff);
- uint128_t x63 = (x61 + x51);
- uint64_t x64 = (uint64_t) (x63 >> 0x2e);
- uint64_t x65 = ((uint64_t)x63 & 0x3fffffffffff);
- uint128_t x66 = (x64 + x50);
- uint64_t x67 = (uint64_t) (x66 >> 0x2f);
- uint64_t x68 = ((uint64_t)x66 & 0x7fffffffffff);
- uint128_t x69 = (x67 + x49);
- uint64_t x70 = (uint64_t) (x69 >> 0x2e);
- uint64_t x71 = ((uint64_t)x69 & 0x3fffffffffff);
- uint128_t x72 = (x70 + x48);
- uint64_t x73 = (uint64_t) (x72 >> 0x2f);
- uint64_t x74 = ((uint64_t)x72 & 0x7fffffffffff);
- uint128_t x75 = (x73 + x47);
- uint64_t x76 = (uint64_t) (x75 >> 0x2e);
- uint64_t x77 = ((uint64_t)x75 & 0x3fffffffffff);
- uint128_t x78 = (x76 + x46);
- uint64_t x79 = (uint64_t) (x78 >> 0x2f);
- uint64_t x80 = ((uint64_t)x78 & 0x7fffffffffff);
- uint128_t x81 = (x79 + x45);
- uint64_t x82 = (uint64_t) (x81 >> 0x2e);
- uint64_t x83 = ((uint64_t)x81 & 0x3fffffffffff);
- uint128_t x84 = (x82 + x44);
- uint64_t x85 = (uint64_t) (x84 >> 0x2e);
- uint64_t x86 = ((uint64_t)x84 & 0x3fffffffffff);
- uint64_t x87 = (x56 + (0x1e1 * x85));
- uint64_t x88 = (x87 >> 0x2f);
- uint64_t x89 = (x87 & 0x7fffffffffff);
- uint64_t x90 = (x88 + x59);
- uint64_t x91 = (x90 >> 0x2e);
- uint64_t x92 = (x90 & 0x3fffffffffff);
- return (Return x86, Return x83, Return x80, Return x77, Return x74, Return x71, Return x68, Return x65, (x91 + x62), Return x92, Return x89))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e511m481_11limbs/femulDisplay.v b/src/Specific/solinas64_2e511m481_11limbs/femulDisplay.v
deleted file mode 100644
index 37cf3e308..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e511m481_11limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e511m481_11limbs/fesquare.c b/src/Specific/solinas64_2e511m481_11limbs/fesquare.c
deleted file mode 100644
index 07640ea1d..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/fesquare.c
+++ /dev/null
@@ -1,74 +0,0 @@
-static void fesquare(uint64_t out[11], const uint64_t in1[11]) {
- { const uint64_t x19 = in1[10];
- { const uint64_t x20 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x21 = (((uint128_t)x2 * x19) + ((0x2 * ((uint128_t)x4 * x20)) + (((uint128_t)x6 * x18) + ((0x2 * ((uint128_t)x8 * x16)) + (((uint128_t)x10 * x14) + ((0x2 * ((uint128_t)x12 * x12)) + (((uint128_t)x14 * x10) + ((0x2 * ((uint128_t)x16 * x8)) + (((uint128_t)x18 * x6) + ((0x2 * ((uint128_t)x20 * x4)) + ((uint128_t)x19 * x2)))))))))));
- { uint128_t x22 = ((((uint128_t)x2 * x20) + (((uint128_t)x4 * x18) + (((uint128_t)x6 * x16) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + (((uint128_t)x16 * x6) + (((uint128_t)x18 * x4) + ((uint128_t)x20 * x2)))))))))) + (0x1e1 * ((uint128_t)x19 * x19)));
- { uint128_t x23 = ((((uint128_t)x2 * x18) + ((0x2 * ((uint128_t)x4 * x16)) + (((uint128_t)x6 * x14) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + (((uint128_t)x14 * x6) + ((0x2 * ((uint128_t)x16 * x4)) + ((uint128_t)x18 * x2))))))))) + (0x1e1 * ((0x2 * ((uint128_t)x20 * x19)) + (0x2 * ((uint128_t)x19 * x20)))));
- { uint128_t x24 = ((((uint128_t)x2 * x16) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x16 * x2)))))))) + (0x1e1 * (((uint128_t)x18 * x19) + ((0x2 * ((uint128_t)x20 * x20)) + ((uint128_t)x19 * x18)))));
- { uint128_t x25 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x1e1 * ((0x2 * ((uint128_t)x16 * x19)) + ((0x2 * ((uint128_t)x18 * x20)) + ((0x2 * ((uint128_t)x20 * x18)) + (0x2 * ((uint128_t)x19 * x16)))))));
- { uint128_t x26 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x1e1 * (((uint128_t)x14 * x19) + ((0x2 * ((uint128_t)x16 * x20)) + (((uint128_t)x18 * x18) + ((0x2 * ((uint128_t)x20 * x16)) + ((uint128_t)x19 * x14)))))));
- { uint128_t x27 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x1e1 * ((0x2 * ((uint128_t)x12 * x19)) + ((0x2 * ((uint128_t)x14 * x20)) + ((0x2 * ((uint128_t)x16 * x18)) + ((0x2 * ((uint128_t)x18 * x16)) + ((0x2 * ((uint128_t)x20 * x14)) + (0x2 * ((uint128_t)x19 * x12)))))))));
- { uint128_t x28 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x1e1 * (((uint128_t)x10 * x19) + ((0x2 * ((uint128_t)x12 * x20)) + (((uint128_t)x14 * x18) + ((0x2 * ((uint128_t)x16 * x16)) + (((uint128_t)x18 * x14) + ((0x2 * ((uint128_t)x20 * x12)) + ((uint128_t)x19 * x10)))))))));
- { uint128_t x29 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x1e1 * ((0x2 * ((uint128_t)x8 * x19)) + ((0x2 * ((uint128_t)x10 * x20)) + ((0x2 * ((uint128_t)x12 * x18)) + ((0x2 * ((uint128_t)x14 * x16)) + ((0x2 * ((uint128_t)x16 * x14)) + ((0x2 * ((uint128_t)x18 * x12)) + ((0x2 * ((uint128_t)x20 * x10)) + (0x2 * ((uint128_t)x19 * x8)))))))))));
- { uint128_t x30 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1e1 * (((uint128_t)x6 * x19) + ((0x2 * ((uint128_t)x8 * x20)) + (((uint128_t)x10 * x18) + ((0x2 * ((uint128_t)x12 * x16)) + (((uint128_t)x14 * x14) + ((0x2 * ((uint128_t)x16 * x12)) + (((uint128_t)x18 * x10) + ((0x2 * ((uint128_t)x20 * x8)) + ((uint128_t)x19 * x6)))))))))));
- { uint128_t x31 = (((uint128_t)x2 * x2) + (0x1e1 * ((0x2 * ((uint128_t)x4 * x19)) + ((0x2 * ((uint128_t)x6 * x20)) + ((0x2 * ((uint128_t)x8 * x18)) + ((0x2 * ((uint128_t)x10 * x16)) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + ((0x2 * ((uint128_t)x16 * x10)) + ((0x2 * ((uint128_t)x18 * x8)) + ((0x2 * ((uint128_t)x20 * x6)) + (0x2 * ((uint128_t)x19 * x4)))))))))))));
- { uint64_t x32 = (uint64_t) (x31 >> 0x2f);
- { uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffff);
- { uint128_t x34 = (x32 + x30);
- { uint64_t x35 = (uint64_t) (x34 >> 0x2e);
- { uint64_t x36 = ((uint64_t)x34 & 0x3fffffffffff);
- { uint128_t x37 = (x35 + x29);
- { uint64_t x38 = (uint64_t) (x37 >> 0x2f);
- { uint64_t x39 = ((uint64_t)x37 & 0x7fffffffffff);
- { uint128_t x40 = (x38 + x28);
- { uint64_t x41 = (uint64_t) (x40 >> 0x2e);
- { uint64_t x42 = ((uint64_t)x40 & 0x3fffffffffff);
- { uint128_t x43 = (x41 + x27);
- { uint64_t x44 = (uint64_t) (x43 >> 0x2f);
- { uint64_t x45 = ((uint64_t)x43 & 0x7fffffffffff);
- { uint128_t x46 = (x44 + x26);
- { uint64_t x47 = (uint64_t) (x46 >> 0x2e);
- { uint64_t x48 = ((uint64_t)x46 & 0x3fffffffffff);
- { uint128_t x49 = (x47 + x25);
- { uint64_t x50 = (uint64_t) (x49 >> 0x2f);
- { uint64_t x51 = ((uint64_t)x49 & 0x7fffffffffff);
- { uint128_t x52 = (x50 + x24);
- { uint64_t x53 = (uint64_t) (x52 >> 0x2e);
- { uint64_t x54 = ((uint64_t)x52 & 0x3fffffffffff);
- { uint128_t x55 = (x53 + x23);
- { uint64_t x56 = (uint64_t) (x55 >> 0x2f);
- { uint64_t x57 = ((uint64_t)x55 & 0x7fffffffffff);
- { uint128_t x58 = (x56 + x22);
- { uint64_t x59 = (uint64_t) (x58 >> 0x2e);
- { uint64_t x60 = ((uint64_t)x58 & 0x3fffffffffff);
- { uint128_t x61 = (x59 + x21);
- { uint64_t x62 = (uint64_t) (x61 >> 0x2e);
- { uint64_t x63 = ((uint64_t)x61 & 0x3fffffffffff);
- { uint64_t x64 = (x33 + (0x1e1 * x62));
- { uint64_t x65 = (x64 >> 0x2f);
- { uint64_t x66 = (x64 & 0x7fffffffffff);
- { uint64_t x67 = (x65 + x36);
- { uint64_t x68 = (x67 >> 0x2e);
- { uint64_t x69 = (x67 & 0x3fffffffffff);
- out[0] = x66;
- out[1] = x69;
- out[2] = (x68 + x39);
- out[3] = x42;
- out[4] = x45;
- out[5] = x48;
- out[6] = x51;
- out[7] = x54;
- out[8] = x57;
- out[9] = x60;
- out[10] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e511m481_11limbs/fesquare.v b/src/Specific/solinas64_2e511m481_11limbs/fesquare.v
deleted file mode 100644
index 878a6d3ef..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e511m481_11limbs.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/solinas64_2e511m481_11limbs/fesquareDisplay.log b/src/Specific/solinas64_2e511m481_11limbs/fesquareDisplay.log
deleted file mode 100644
index d8d8138cd..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x21 = (((uint128_t)x2 * x19) + ((0x2 * ((uint128_t)x4 * x20)) + (((uint128_t)x6 * x18) + ((0x2 * ((uint128_t)x8 * x16)) + (((uint128_t)x10 * x14) + ((0x2 * ((uint128_t)x12 * x12)) + (((uint128_t)x14 * x10) + ((0x2 * ((uint128_t)x16 * x8)) + (((uint128_t)x18 * x6) + ((0x2 * ((uint128_t)x20 * x4)) + ((uint128_t)x19 * x2)))))))))));
- uint128_t x22 = ((((uint128_t)x2 * x20) + (((uint128_t)x4 * x18) + (((uint128_t)x6 * x16) + (((uint128_t)x8 * x14) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + (((uint128_t)x14 * x8) + (((uint128_t)x16 * x6) + (((uint128_t)x18 * x4) + ((uint128_t)x20 * x2)))))))))) + (0x1e1 * ((uint128_t)x19 * x19)));
- uint128_t x23 = ((((uint128_t)x2 * x18) + ((0x2 * ((uint128_t)x4 * x16)) + (((uint128_t)x6 * x14) + ((0x2 * ((uint128_t)x8 * x12)) + (((uint128_t)x10 * x10) + ((0x2 * ((uint128_t)x12 * x8)) + (((uint128_t)x14 * x6) + ((0x2 * ((uint128_t)x16 * x4)) + ((uint128_t)x18 * x2))))))))) + (0x1e1 * ((0x2 * ((uint128_t)x20 * x19)) + (0x2 * ((uint128_t)x19 * x20)))));
- uint128_t x24 = ((((uint128_t)x2 * x16) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x16 * x2)))))))) + (0x1e1 * (((uint128_t)x18 * x19) + ((0x2 * ((uint128_t)x20 * x20)) + ((uint128_t)x19 * x18)))));
- uint128_t x25 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + (((uint128_t)x6 * x10) + ((0x2 * ((uint128_t)x8 * x8)) + (((uint128_t)x10 * x6) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (0x1e1 * ((0x2 * ((uint128_t)x16 * x19)) + ((0x2 * ((uint128_t)x18 * x20)) + ((0x2 * ((uint128_t)x20 * x18)) + (0x2 * ((uint128_t)x19 * x16)))))));
- uint128_t x26 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + (0x1e1 * (((uint128_t)x14 * x19) + ((0x2 * ((uint128_t)x16 * x20)) + (((uint128_t)x18 * x18) + ((0x2 * ((uint128_t)x20 * x16)) + ((uint128_t)x19 * x14)))))));
- uint128_t x27 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + (((uint128_t)x6 * x6) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x1e1 * ((0x2 * ((uint128_t)x12 * x19)) + ((0x2 * ((uint128_t)x14 * x20)) + ((0x2 * ((uint128_t)x16 * x18)) + ((0x2 * ((uint128_t)x18 * x16)) + ((0x2 * ((uint128_t)x20 * x14)) + (0x2 * ((uint128_t)x19 * x12)))))))));
- uint128_t x28 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + (0x1e1 * (((uint128_t)x10 * x19) + ((0x2 * ((uint128_t)x12 * x20)) + (((uint128_t)x14 * x18) + ((0x2 * ((uint128_t)x16 * x16)) + (((uint128_t)x18 * x14) + ((0x2 * ((uint128_t)x20 * x12)) + ((uint128_t)x19 * x10)))))))));
- uint128_t x29 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x1e1 * ((0x2 * ((uint128_t)x8 * x19)) + ((0x2 * ((uint128_t)x10 * x20)) + ((0x2 * ((uint128_t)x12 * x18)) + ((0x2 * ((uint128_t)x14 * x16)) + ((0x2 * ((uint128_t)x16 * x14)) + ((0x2 * ((uint128_t)x18 * x12)) + ((0x2 * ((uint128_t)x20 * x10)) + (0x2 * ((uint128_t)x19 * x8)))))))))));
- uint128_t x30 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x1e1 * (((uint128_t)x6 * x19) + ((0x2 * ((uint128_t)x8 * x20)) + (((uint128_t)x10 * x18) + ((0x2 * ((uint128_t)x12 * x16)) + (((uint128_t)x14 * x14) + ((0x2 * ((uint128_t)x16 * x12)) + (((uint128_t)x18 * x10) + ((0x2 * ((uint128_t)x20 * x8)) + ((uint128_t)x19 * x6)))))))))));
- uint128_t x31 = (((uint128_t)x2 * x2) + (0x1e1 * ((0x2 * ((uint128_t)x4 * x19)) + ((0x2 * ((uint128_t)x6 * x20)) + ((0x2 * ((uint128_t)x8 * x18)) + ((0x2 * ((uint128_t)x10 * x16)) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + ((0x2 * ((uint128_t)x16 * x10)) + ((0x2 * ((uint128_t)x18 * x8)) + ((0x2 * ((uint128_t)x20 * x6)) + (0x2 * ((uint128_t)x19 * x4)))))))))))));
- uint64_t x32 = (uint64_t) (x31 >> 0x2f);
- uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffff);
- uint128_t x34 = (x32 + x30);
- uint64_t x35 = (uint64_t) (x34 >> 0x2e);
- uint64_t x36 = ((uint64_t)x34 & 0x3fffffffffff);
- uint128_t x37 = (x35 + x29);
- uint64_t x38 = (uint64_t) (x37 >> 0x2f);
- uint64_t x39 = ((uint64_t)x37 & 0x7fffffffffff);
- uint128_t x40 = (x38 + x28);
- uint64_t x41 = (uint64_t) (x40 >> 0x2e);
- uint64_t x42 = ((uint64_t)x40 & 0x3fffffffffff);
- uint128_t x43 = (x41 + x27);
- uint64_t x44 = (uint64_t) (x43 >> 0x2f);
- uint64_t x45 = ((uint64_t)x43 & 0x7fffffffffff);
- uint128_t x46 = (x44 + x26);
- uint64_t x47 = (uint64_t) (x46 >> 0x2e);
- uint64_t x48 = ((uint64_t)x46 & 0x3fffffffffff);
- uint128_t x49 = (x47 + x25);
- uint64_t x50 = (uint64_t) (x49 >> 0x2f);
- uint64_t x51 = ((uint64_t)x49 & 0x7fffffffffff);
- uint128_t x52 = (x50 + x24);
- uint64_t x53 = (uint64_t) (x52 >> 0x2e);
- uint64_t x54 = ((uint64_t)x52 & 0x3fffffffffff);
- uint128_t x55 = (x53 + x23);
- uint64_t x56 = (uint64_t) (x55 >> 0x2f);
- uint64_t x57 = ((uint64_t)x55 & 0x7fffffffffff);
- uint128_t x58 = (x56 + x22);
- uint64_t x59 = (uint64_t) (x58 >> 0x2e);
- uint64_t x60 = ((uint64_t)x58 & 0x3fffffffffff);
- uint128_t x61 = (x59 + x21);
- uint64_t x62 = (uint64_t) (x61 >> 0x2e);
- uint64_t x63 = ((uint64_t)x61 & 0x3fffffffffff);
- uint64_t x64 = (x33 + (0x1e1 * x62));
- uint64_t x65 = (x64 >> 0x2f);
- uint64_t x66 = (x64 & 0x7fffffffffff);
- uint64_t x67 = (x65 + x36);
- uint64_t x68 = (x67 >> 0x2e);
- uint64_t x69 = (x67 & 0x3fffffffffff);
- return (Return x63, Return x60, Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, (x68 + x39), Return x69, Return x66))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e511m481_11limbs/fesquareDisplay.v b/src/Specific/solinas64_2e511m481_11limbs/fesquareDisplay.v
deleted file mode 100644
index 824a8b50e..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e511m481_11limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e511m481_11limbs/fesub.c b/src/Specific/solinas64_2e511m481_11limbs/fesub.c
deleted file mode 100644
index 6201f12c8..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/fesub.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void fesub(uint64_t out[11], const uint64_t in1[11], const uint64_t in2[11]) {
- { const uint64_t x22 = in1[10];
- { const uint64_t x23 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x42 = in2[10];
- { const uint64_t x43 = in2[9];
- { const uint64_t x41 = in2[8];
- { const uint64_t x39 = in2[7];
- { const uint64_t x37 = in2[6];
- { const uint64_t x35 = in2[5];
- { const uint64_t x33 = in2[4];
- { const uint64_t x31 = in2[3];
- { const uint64_t x29 = in2[2];
- { const uint64_t x27 = in2[1];
- { const uint64_t x25 = in2[0];
- out[0] = ((0xfffffffffc3e + x5) - x25);
- out[1] = ((0x7ffffffffffe + x7) - x27);
- out[2] = ((0xfffffffffffe + x9) - x29);
- out[3] = ((0x7ffffffffffe + x11) - x31);
- out[4] = ((0xfffffffffffe + x13) - x33);
- out[5] = ((0x7ffffffffffe + x15) - x35);
- out[6] = ((0xfffffffffffe + x17) - x37);
- out[7] = ((0x7ffffffffffe + x19) - x39);
- out[8] = ((0xfffffffffffe + x21) - x41);
- out[9] = ((0x7ffffffffffe + x23) - x43);
- out[10] = ((0x7ffffffffffe + x22) - x42);
- }}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e511m481_11limbs/fesub.v b/src/Specific/solinas64_2e511m481_11limbs/fesub.v
deleted file mode 100644
index 71a04b457..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e511m481_11limbs.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/solinas64_2e511m481_11limbs/fesubDisplay.log b/src/Specific/solinas64_2e511m481_11limbs/fesubDisplay.log
deleted file mode 100644
index 967880b02..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- (((0x7ffffffffffe + x22) - x42), ((0x7ffffffffffe + x23) - x43), ((0xfffffffffffe + x21) - x41), ((0x7ffffffffffe + x19) - x39), ((0xfffffffffffe + x17) - x37), ((0x7ffffffffffe + x15) - x35), ((0xfffffffffffe + x13) - x33), ((0x7ffffffffffe + x11) - x31), ((0xfffffffffffe + x9) - x29), ((0x7ffffffffffe + x7) - x27), ((0xfffffffffc3e + x5) - x25)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e511m481_11limbs/fesubDisplay.v b/src/Specific/solinas64_2e511m481_11limbs/fesubDisplay.v
deleted file mode 100644
index f39afc31a..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e511m481_11limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e511m481_11limbs/freeze.c b/src/Specific/solinas64_2e511m481_11limbs/freeze.c
deleted file mode 100644
index 20697fab7..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/freeze.c
+++ /dev/null
@@ -1,59 +0,0 @@
-static void freeze(uint64_t out[11], const uint64_t in1[11]) {
- { const uint64_t x19 = in1[10];
- { const uint64_t x20 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffe1f);
- { uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x4, 0x3fffffffffff);
- { uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x6, 0x7fffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x8, 0x3fffffffffff);
- { uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x10, 0x7fffffffffff);
- { uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x12, 0x3fffffffffff);
- { uint64_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x14, 0x7fffffffffff);
- { uint64_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x16, 0x3fffffffffff);
- { uint64_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x44, Return x18, 0x7fffffffffff);
- { uint64_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x20, 0x3fffffffffff);
- { uint64_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x19, 0x3fffffffffff);
- { uint64_t x54 = cmovznz64(x53, 0x0, 0xffffffffffffffffL);
- { uint64_t x55 = (x54 & 0x7ffffffffe1f);
- { uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x22, Return x55);
- { uint64_t x59 = (x54 & 0x3fffffffffff);
- { uint64_t x61, uint8_t x62 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x25, Return x59);
- { uint64_t x63 = (x54 & 0x7fffffffffff);
- { uint64_t x65, uint8_t x66 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x62, Return x28, Return x63);
- { uint64_t x67 = (x54 & 0x3fffffffffff);
- { uint64_t x69, uint8_t x70 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x66, Return x31, Return x67);
- { uint64_t x71 = (x54 & 0x7fffffffffff);
- { uint64_t x73, uint8_t x74 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x70, Return x34, Return x71);
- { uint64_t x75 = (x54 & 0x3fffffffffff);
- { uint64_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x74, Return x37, Return x75);
- { uint64_t x79 = (x54 & 0x7fffffffffff);
- { uint64_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x78, Return x40, Return x79);
- { uint64_t x83 = (x54 & 0x3fffffffffff);
- { uint64_t x85, uint8_t x86 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x82, Return x43, Return x83);
- { uint64_t x87 = (x54 & 0x7fffffffffff);
- { uint64_t x89, uint8_t x90 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x86, Return x46, Return x87);
- { uint64_t x91 = (x54 & 0x3fffffffffff);
- { uint64_t x93, uint8_t x94 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x90, Return x49, Return x91);
- { uint64_t x95 = (x54 & 0x3fffffffffff);
- { uint64_t x97, uint8_t _ = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x94, Return x52, Return x95);
- out[0] = x57;
- out[1] = x61;
- out[2] = x65;
- out[3] = x69;
- out[4] = x73;
- out[5] = x77;
- out[6] = x81;
- out[7] = x85;
- out[8] = x89;
- out[9] = x93;
- out[10] = x97;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e511m481_11limbs/freeze.v b/src/Specific/solinas64_2e511m481_11limbs/freeze.v
deleted file mode 100644
index 7783c6b1d..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e511m481_11limbs.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/solinas64_2e511m481_11limbs/freezeDisplay.log b/src/Specific/solinas64_2e511m481_11limbs/freezeDisplay.log
deleted file mode 100644
index 1568647af..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/freezeDisplay.log
+++ /dev/null
@@ -1,41 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffe1f);
- uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x4, 0x3fffffffffff);
- uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x6, 0x7fffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x8, 0x3fffffffffff);
- uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x10, 0x7fffffffffff);
- uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x12, 0x3fffffffffff);
- uint64_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x14, 0x7fffffffffff);
- uint64_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x16, 0x3fffffffffff);
- uint64_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x44, Return x18, 0x7fffffffffff);
- uint64_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x20, 0x3fffffffffff);
- uint64_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x19, 0x3fffffffffff);
- uint64_t x54 = cmovznz64(x53, 0x0, 0xffffffffffffffffL);
- uint64_t x55 = (x54 & 0x7ffffffffe1f);
- uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x22, Return x55);
- uint64_t x59 = (x54 & 0x3fffffffffff);
- uint64_t x61, uint8_t x62 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x25, Return x59);
- uint64_t x63 = (x54 & 0x7fffffffffff);
- uint64_t x65, uint8_t x66 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x62, Return x28, Return x63);
- uint64_t x67 = (x54 & 0x3fffffffffff);
- uint64_t x69, uint8_t x70 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x66, Return x31, Return x67);
- uint64_t x71 = (x54 & 0x7fffffffffff);
- uint64_t x73, uint8_t x74 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x70, Return x34, Return x71);
- uint64_t x75 = (x54 & 0x3fffffffffff);
- uint64_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x74, Return x37, Return x75);
- uint64_t x79 = (x54 & 0x7fffffffffff);
- uint64_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x78, Return x40, Return x79);
- uint64_t x83 = (x54 & 0x3fffffffffff);
- uint64_t x85, uint8_t x86 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x82, Return x43, Return x83);
- uint64_t x87 = (x54 & 0x7fffffffffff);
- uint64_t x89, uint8_t x90 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x86, Return x46, Return x87);
- uint64_t x91 = (x54 & 0x3fffffffffff);
- uint64_t x93, uint8_t x94 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x90, Return x49, Return x91);
- uint64_t x95 = (x54 & 0x3fffffffffff);
- uint64_t x97, uint8_t _ = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x94, Return x52, Return x95);
- (Return x97, Return x93, Return x89, Return x85, Return x81, Return x77, Return x73, Return x69, Return x65, Return x61, Return x57))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e511m481_11limbs/freezeDisplay.v b/src/Specific/solinas64_2e511m481_11limbs/freezeDisplay.v
deleted file mode 100644
index 2f0d4f7ee..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e511m481_11limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e511m481_11limbs/py_interpreter.sh b/src/Specific/solinas64_2e511m481_11limbs/py_interpreter.sh
deleted file mode 100755
index 32b9e0fe4..000000000
--- a/src/Specific/solinas64_2e511m481_11limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**511 - 481' -Dmodulus_bytes='46 + 5/11' -Da24='121665'
diff --git a/src/Specific/solinas64_2e512m569_10limbs/CurveParameters.v b/src/Specific/solinas64_2e512m569_10limbs/CurveParameters.v
deleted file mode 100644
index 13d176bc4..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^512 - 569
-Base: 51.2
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 51 + 1/5;
- bitwidth := 64;
- s := 2^512;
- c := [(1, 569)];
- carry_chains := Some [seq 0 (pred 10); [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/solinas64_2e512m569_10limbs/Synthesis.v b/src/Specific/solinas64_2e512m569_10limbs/Synthesis.v
deleted file mode 100644
index 414fbe02f..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e512m569_10limbs.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/solinas64_2e512m569_10limbs/compiler.sh b/src/Specific/solinas64_2e512m569_10limbs/compiler.sh
deleted file mode 100755
index 139748419..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,51,51,51,51,52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<512) - 569' "$@"
diff --git a/src/Specific/solinas64_2e512m569_10limbs/compilerxx.sh b/src/Specific/solinas64_2e512m569_10limbs/compilerxx.sh
deleted file mode 100755
index d335d47c8..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{52,51,51,51,51,52,51,51,51,51}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<512) - 569' "$@"
diff --git a/src/Specific/solinas64_2e512m569_10limbs/feadd.c b/src/Specific/solinas64_2e512m569_10limbs/feadd.c
deleted file mode 100644
index df991e375..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/feadd.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void feadd(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- out[0] = (x5 + x23);
- out[1] = (x7 + x25);
- out[2] = (x9 + x27);
- out[3] = (x11 + x29);
- out[4] = (x13 + x31);
- out[5] = (x15 + x33);
- out[6] = (x17 + x35);
- out[7] = (x19 + x37);
- out[8] = (x21 + x39);
- out[9] = (x20 + x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e512m569_10limbs/feadd.v b/src/Specific/solinas64_2e512m569_10limbs/feadd.v
deleted file mode 100644
index b5772a500..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e512m569_10limbs.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/solinas64_2e512m569_10limbs/feaddDisplay.log b/src/Specific/solinas64_2e512m569_10limbs/feaddDisplay.log
deleted file mode 100644
index 04176128e..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e512m569_10limbs/feaddDisplay.v b/src/Specific/solinas64_2e512m569_10limbs/feaddDisplay.v
deleted file mode 100644
index b80f582f0..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e512m569_10limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e512m569_10limbs/fecarry.v b/src/Specific/solinas64_2e512m569_10limbs/fecarry.v
deleted file mode 100644
index 8e7f05aba..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e512m569_10limbs.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/solinas64_2e512m569_10limbs/fecarryDisplay.v b/src/Specific/solinas64_2e512m569_10limbs/fecarryDisplay.v
deleted file mode 100644
index d6eafdcc8..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e512m569_10limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e512m569_10limbs/femul.c b/src/Specific/solinas64_2e512m569_10limbs/femul.c
deleted file mode 100644
index 46e0f261b..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/femul.c
+++ /dev/null
@@ -1,78 +0,0 @@
-static void femul(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- { uint128_t x40 = (((uint128_t)x5 * x38) + ((0x2 * ((uint128_t)x7 * x39)) + ((0x2 * ((uint128_t)x9 * x37)) + ((0x2 * ((uint128_t)x11 * x35)) + (((uint128_t)x13 * x33) + (((uint128_t)x15 * x31) + ((0x2 * ((uint128_t)x17 * x29)) + ((0x2 * ((uint128_t)x19 * x27)) + ((0x2 * ((uint128_t)x21 * x25)) + ((uint128_t)x20 * x23))))))))));
- { uint128_t x41 = ((((uint128_t)x5 * x39) + ((0x2 * ((uint128_t)x7 * x37)) + ((0x2 * ((uint128_t)x9 * x35)) + (((uint128_t)x11 * x33) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + ((0x2 * ((uint128_t)x17 * x27)) + ((0x2 * ((uint128_t)x19 * x25)) + ((uint128_t)x21 * x23))))))))) + (0x239 * ((uint128_t)x20 * x38)));
- { uint128_t x42 = ((((uint128_t)x5 * x37) + ((0x2 * ((uint128_t)x7 * x35)) + (((uint128_t)x9 * x33) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + ((0x2 * ((uint128_t)x17 * x25)) + ((uint128_t)x19 * x23)))))))) + (0x239 * (((uint128_t)x21 * x38) + ((uint128_t)x20 * x39))));
- { uint128_t x43 = ((((uint128_t)x5 * x35) + (((uint128_t)x7 * x33) + (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + ((uint128_t)x17 * x23))))))) + (0x239 * (((uint128_t)x19 * x38) + (((uint128_t)x21 * x39) + ((uint128_t)x20 * x37)))));
- { uint128_t x44 = ((((uint128_t)x5 * x33) + ((0x2 * ((uint128_t)x7 * x31)) + ((0x2 * ((uint128_t)x9 * x29)) + ((0x2 * ((uint128_t)x11 * x27)) + ((0x2 * ((uint128_t)x13 * x25)) + ((uint128_t)x15 * x23)))))) + (0x239 * ((0x2 * ((uint128_t)x17 * x38)) + ((0x2 * ((uint128_t)x19 * x39)) + ((0x2 * ((uint128_t)x21 * x37)) + (0x2 * ((uint128_t)x20 * x35)))))));
- { uint128_t x45 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((uint128_t)x13 * x23))))) + (0x239 * (((uint128_t)x15 * x38) + ((0x2 * ((uint128_t)x17 * x39)) + ((0x2 * ((uint128_t)x19 * x37)) + ((0x2 * ((uint128_t)x21 * x35)) + ((uint128_t)x20 * x33)))))));
- { uint128_t x46 = ((((uint128_t)x5 * x29) + ((0x2 * ((uint128_t)x7 * x27)) + ((0x2 * ((uint128_t)x9 * x25)) + ((uint128_t)x11 * x23)))) + (0x239 * (((uint128_t)x13 * x38) + (((uint128_t)x15 * x39) + ((0x2 * ((uint128_t)x17 * x37)) + ((0x2 * ((uint128_t)x19 * x35)) + (((uint128_t)x21 * x33) + ((uint128_t)x20 * x31))))))));
- { uint128_t x47 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((uint128_t)x9 * x23))) + (0x239 * (((uint128_t)x11 * x38) + (((uint128_t)x13 * x39) + (((uint128_t)x15 * x37) + ((0x2 * ((uint128_t)x17 * x35)) + (((uint128_t)x19 * x33) + (((uint128_t)x21 * x31) + ((uint128_t)x20 * x29)))))))));
- { uint128_t x48 = ((((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)) + (0x239 * (((uint128_t)x9 * x38) + (((uint128_t)x11 * x39) + (((uint128_t)x13 * x37) + (((uint128_t)x15 * x35) + (((uint128_t)x17 * x33) + (((uint128_t)x19 * x31) + (((uint128_t)x21 * x29) + ((uint128_t)x20 * x27))))))))));
- { uint128_t x49 = (((uint128_t)x5 * x23) + (0x239 * ((0x2 * ((uint128_t)x7 * x38)) + ((0x2 * ((uint128_t)x9 * x39)) + ((0x2 * ((uint128_t)x11 * x37)) + ((0x2 * ((uint128_t)x13 * x35)) + (((uint128_t)x15 * x33) + ((0x2 * ((uint128_t)x17 * x31)) + ((0x2 * ((uint128_t)x19 * x29)) + ((0x2 * ((uint128_t)x21 * x27)) + (0x2 * ((uint128_t)x20 * x25))))))))))));
- { uint128_t x50 = (x49 >> 0x34);
- { uint64_t x51 = ((uint64_t)x49 & 0xfffffffffffff);
- { uint128_t x52 = (x50 + x48);
- { uint128_t x53 = (x52 >> 0x33);
- { uint64_t x54 = ((uint64_t)x52 & 0x7ffffffffffff);
- { uint128_t x55 = (x53 + x47);
- { uint128_t x56 = (x55 >> 0x33);
- { uint64_t x57 = ((uint64_t)x55 & 0x7ffffffffffff);
- { uint128_t x58 = (x56 + x46);
- { uint128_t x59 = (x58 >> 0x33);
- { uint64_t x60 = ((uint64_t)x58 & 0x7ffffffffffff);
- { uint128_t x61 = (x59 + x45);
- { uint128_t x62 = (x61 >> 0x33);
- { uint64_t x63 = ((uint64_t)x61 & 0x7ffffffffffff);
- { uint128_t x64 = (x62 + x44);
- { uint128_t x65 = (x64 >> 0x34);
- { uint64_t x66 = ((uint64_t)x64 & 0xfffffffffffff);
- { uint128_t x67 = (x65 + x43);
- { uint128_t x68 = (x67 >> 0x33);
- { uint64_t x69 = ((uint64_t)x67 & 0x7ffffffffffff);
- { uint128_t x70 = (x68 + x42);
- { uint128_t x71 = (x70 >> 0x33);
- { uint64_t x72 = ((uint64_t)x70 & 0x7ffffffffffff);
- { uint128_t x73 = (x71 + x41);
- { uint64_t x74 = (uint64_t) (x73 >> 0x33);
- { uint64_t x75 = ((uint64_t)x73 & 0x7ffffffffffff);
- { uint128_t x76 = (x74 + x40);
- { uint64_t x77 = (uint64_t) (x76 >> 0x33);
- { uint64_t x78 = ((uint64_t)x76 & 0x7ffffffffffff);
- { uint128_t x79 = (x51 + ((uint128_t)0x239 * x77));
- { uint64_t x80 = (uint64_t) (x79 >> 0x34);
- { uint64_t x81 = ((uint64_t)x79 & 0xfffffffffffff);
- { uint64_t x82 = (x80 + x54);
- { uint64_t x83 = (x82 >> 0x33);
- { uint64_t x84 = (x82 & 0x7ffffffffffff);
- out[0] = x81;
- out[1] = x84;
- out[2] = (x83 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e512m569_10limbs/femul.v b/src/Specific/solinas64_2e512m569_10limbs/femul.v
deleted file mode 100644
index ac9f5ccfa..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e512m569_10limbs.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/solinas64_2e512m569_10limbs/femulDisplay.log b/src/Specific/solinas64_2e512m569_10limbs/femulDisplay.log
deleted file mode 100644
index 0fdd49f6f..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/femulDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- uint128_t x40 = (((uint128_t)x5 * x38) + ((0x2 * ((uint128_t)x7 * x39)) + ((0x2 * ((uint128_t)x9 * x37)) + ((0x2 * ((uint128_t)x11 * x35)) + (((uint128_t)x13 * x33) + (((uint128_t)x15 * x31) + ((0x2 * ((uint128_t)x17 * x29)) + ((0x2 * ((uint128_t)x19 * x27)) + ((0x2 * ((uint128_t)x21 * x25)) + ((uint128_t)x20 * x23))))))))));
- uint128_t x41 = ((((uint128_t)x5 * x39) + ((0x2 * ((uint128_t)x7 * x37)) + ((0x2 * ((uint128_t)x9 * x35)) + (((uint128_t)x11 * x33) + (((uint128_t)x13 * x31) + (((uint128_t)x15 * x29) + ((0x2 * ((uint128_t)x17 * x27)) + ((0x2 * ((uint128_t)x19 * x25)) + ((uint128_t)x21 * x23))))))))) + (0x239 * ((uint128_t)x20 * x38)));
- uint128_t x42 = ((((uint128_t)x5 * x37) + ((0x2 * ((uint128_t)x7 * x35)) + (((uint128_t)x9 * x33) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + ((0x2 * ((uint128_t)x17 * x25)) + ((uint128_t)x19 * x23)))))))) + (0x239 * (((uint128_t)x21 * x38) + ((uint128_t)x20 * x39))));
- uint128_t x43 = ((((uint128_t)x5 * x35) + (((uint128_t)x7 * x33) + (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + ((uint128_t)x17 * x23))))))) + (0x239 * (((uint128_t)x19 * x38) + (((uint128_t)x21 * x39) + ((uint128_t)x20 * x37)))));
- uint128_t x44 = ((((uint128_t)x5 * x33) + ((0x2 * ((uint128_t)x7 * x31)) + ((0x2 * ((uint128_t)x9 * x29)) + ((0x2 * ((uint128_t)x11 * x27)) + ((0x2 * ((uint128_t)x13 * x25)) + ((uint128_t)x15 * x23)))))) + (0x239 * ((0x2 * ((uint128_t)x17 * x38)) + ((0x2 * ((uint128_t)x19 * x39)) + ((0x2 * ((uint128_t)x21 * x37)) + (0x2 * ((uint128_t)x20 * x35)))))));
- uint128_t x45 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((uint128_t)x13 * x23))))) + (0x239 * (((uint128_t)x15 * x38) + ((0x2 * ((uint128_t)x17 * x39)) + ((0x2 * ((uint128_t)x19 * x37)) + ((0x2 * ((uint128_t)x21 * x35)) + ((uint128_t)x20 * x33)))))));
- uint128_t x46 = ((((uint128_t)x5 * x29) + ((0x2 * ((uint128_t)x7 * x27)) + ((0x2 * ((uint128_t)x9 * x25)) + ((uint128_t)x11 * x23)))) + (0x239 * (((uint128_t)x13 * x38) + (((uint128_t)x15 * x39) + ((0x2 * ((uint128_t)x17 * x37)) + ((0x2 * ((uint128_t)x19 * x35)) + (((uint128_t)x21 * x33) + ((uint128_t)x20 * x31))))))));
- uint128_t x47 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((uint128_t)x9 * x23))) + (0x239 * (((uint128_t)x11 * x38) + (((uint128_t)x13 * x39) + (((uint128_t)x15 * x37) + ((0x2 * ((uint128_t)x17 * x35)) + (((uint128_t)x19 * x33) + (((uint128_t)x21 * x31) + ((uint128_t)x20 * x29)))))))));
- uint128_t x48 = ((((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)) + (0x239 * (((uint128_t)x9 * x38) + (((uint128_t)x11 * x39) + (((uint128_t)x13 * x37) + (((uint128_t)x15 * x35) + (((uint128_t)x17 * x33) + (((uint128_t)x19 * x31) + (((uint128_t)x21 * x29) + ((uint128_t)x20 * x27))))))))));
- uint128_t x49 = (((uint128_t)x5 * x23) + (0x239 * ((0x2 * ((uint128_t)x7 * x38)) + ((0x2 * ((uint128_t)x9 * x39)) + ((0x2 * ((uint128_t)x11 * x37)) + ((0x2 * ((uint128_t)x13 * x35)) + (((uint128_t)x15 * x33) + ((0x2 * ((uint128_t)x17 * x31)) + ((0x2 * ((uint128_t)x19 * x29)) + ((0x2 * ((uint128_t)x21 * x27)) + (0x2 * ((uint128_t)x20 * x25))))))))))));
- uint128_t x50 = (x49 >> 0x34);
- uint64_t x51 = ((uint64_t)x49 & 0xfffffffffffff);
- uint128_t x52 = (x50 + x48);
- uint128_t x53 = (x52 >> 0x33);
- uint64_t x54 = ((uint64_t)x52 & 0x7ffffffffffff);
- uint128_t x55 = (x53 + x47);
- uint128_t x56 = (x55 >> 0x33);
- uint64_t x57 = ((uint64_t)x55 & 0x7ffffffffffff);
- uint128_t x58 = (x56 + x46);
- uint128_t x59 = (x58 >> 0x33);
- uint64_t x60 = ((uint64_t)x58 & 0x7ffffffffffff);
- uint128_t x61 = (x59 + x45);
- uint128_t x62 = (x61 >> 0x33);
- uint64_t x63 = ((uint64_t)x61 & 0x7ffffffffffff);
- uint128_t x64 = (x62 + x44);
- uint128_t x65 = (x64 >> 0x34);
- uint64_t x66 = ((uint64_t)x64 & 0xfffffffffffff);
- uint128_t x67 = (x65 + x43);
- uint128_t x68 = (x67 >> 0x33);
- uint64_t x69 = ((uint64_t)x67 & 0x7ffffffffffff);
- uint128_t x70 = (x68 + x42);
- uint128_t x71 = (x70 >> 0x33);
- uint64_t x72 = ((uint64_t)x70 & 0x7ffffffffffff);
- uint128_t x73 = (x71 + x41);
- uint64_t x74 = (uint64_t) (x73 >> 0x33);
- uint64_t x75 = ((uint64_t)x73 & 0x7ffffffffffff);
- uint128_t x76 = (x74 + x40);
- uint64_t x77 = (uint64_t) (x76 >> 0x33);
- uint64_t x78 = ((uint64_t)x76 & 0x7ffffffffffff);
- uint128_t x79 = (x51 + ((uint128_t)0x239 * x77));
- uint64_t x80 = (uint64_t) (x79 >> 0x34);
- uint64_t x81 = ((uint64_t)x79 & 0xfffffffffffff);
- uint64_t x82 = (x80 + x54);
- uint64_t x83 = (x82 >> 0x33);
- uint64_t x84 = (x82 & 0x7ffffffffffff);
- return (Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x83 + x57), Return x84, Return x81))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e512m569_10limbs/femulDisplay.v b/src/Specific/solinas64_2e512m569_10limbs/femulDisplay.v
deleted file mode 100644
index 7531c9c34..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e512m569_10limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e512m569_10limbs/fesquare.c b/src/Specific/solinas64_2e512m569_10limbs/fesquare.c
deleted file mode 100644
index c8ecbdfda..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/fesquare.c
+++ /dev/null
@@ -1,68 +0,0 @@
-static void fesquare(uint64_t out[10], const uint64_t in1[10]) {
- { const uint64_t x17 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x19 = (((uint128_t)x2 * x17) + ((0x2 * ((uint128_t)x4 * x18)) + ((0x2 * ((uint128_t)x6 * x16)) + ((0x2 * ((uint128_t)x8 * x14)) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + ((0x2 * ((uint128_t)x14 * x8)) + ((0x2 * ((uint128_t)x16 * x6)) + ((0x2 * ((uint128_t)x18 * x4)) + ((uint128_t)x17 * x2))))))))));
- { uint128_t x20 = ((((uint128_t)x2 * x18) + ((0x2 * ((uint128_t)x4 * x16)) + ((0x2 * ((uint128_t)x6 * x14)) + (((uint128_t)x8 * x12) + (((uint128_t)x10 * x10) + (((uint128_t)x12 * x8) + ((0x2 * ((uint128_t)x14 * x6)) + ((0x2 * ((uint128_t)x16 * x4)) + ((uint128_t)x18 * x2))))))))) + (0x239 * ((uint128_t)x17 * x17)));
- { uint128_t x21 = ((((uint128_t)x2 * x16) + ((0x2 * ((uint128_t)x4 * x14)) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + ((0x2 * ((uint128_t)x14 * x4)) + ((uint128_t)x16 * x2)))))))) + (0x239 * (((uint128_t)x18 * x17) + ((uint128_t)x17 * x18))));
- { uint128_t x22 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x239 * (((uint128_t)x16 * x17) + (((uint128_t)x18 * x18) + ((uint128_t)x17 * x16)))));
- { uint128_t x23 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x239 * ((0x2 * ((uint128_t)x14 * x17)) + ((0x2 * ((uint128_t)x16 * x18)) + ((0x2 * ((uint128_t)x18 * x16)) + (0x2 * ((uint128_t)x17 * x14)))))));
- { uint128_t x24 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x239 * (((uint128_t)x12 * x17) + ((0x2 * ((uint128_t)x14 * x18)) + ((0x2 * ((uint128_t)x16 * x16)) + ((0x2 * ((uint128_t)x18 * x14)) + ((uint128_t)x17 * x12)))))));
- { uint128_t x25 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x239 * (((uint128_t)x10 * x17) + (((uint128_t)x12 * x18) + ((0x2 * ((uint128_t)x14 * x16)) + ((0x2 * ((uint128_t)x16 * x14)) + (((uint128_t)x18 * x12) + ((uint128_t)x17 * x10))))))));
- { uint128_t x26 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x239 * (((uint128_t)x8 * x17) + (((uint128_t)x10 * x18) + (((uint128_t)x12 * x16) + ((0x2 * ((uint128_t)x14 * x14)) + (((uint128_t)x16 * x12) + (((uint128_t)x18 * x10) + ((uint128_t)x17 * x8)))))))));
- { uint128_t x27 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x239 * (((uint128_t)x6 * x17) + (((uint128_t)x8 * x18) + (((uint128_t)x10 * x16) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + (((uint128_t)x16 * x10) + (((uint128_t)x18 * x8) + ((uint128_t)x17 * x6))))))))));
- { uint128_t x28 = (((uint128_t)x2 * x2) + (0x239 * ((0x2 * ((uint128_t)x4 * x17)) + ((0x2 * ((uint128_t)x6 * x18)) + ((0x2 * ((uint128_t)x8 * x16)) + ((0x2 * ((uint128_t)x10 * x14)) + (((uint128_t)x12 * x12) + ((0x2 * ((uint128_t)x14 * x10)) + ((0x2 * ((uint128_t)x16 * x8)) + ((0x2 * ((uint128_t)x18 * x6)) + (0x2 * ((uint128_t)x17 * x4))))))))))));
- { uint128_t x29 = (x28 >> 0x34);
- { uint64_t x30 = ((uint64_t)x28 & 0xfffffffffffff);
- { uint128_t x31 = (x29 + x27);
- { uint128_t x32 = (x31 >> 0x33);
- { uint64_t x33 = ((uint64_t)x31 & 0x7ffffffffffff);
- { uint128_t x34 = (x32 + x26);
- { uint128_t x35 = (x34 >> 0x33);
- { uint64_t x36 = ((uint64_t)x34 & 0x7ffffffffffff);
- { uint128_t x37 = (x35 + x25);
- { uint128_t x38 = (x37 >> 0x33);
- { uint64_t x39 = ((uint64_t)x37 & 0x7ffffffffffff);
- { uint128_t x40 = (x38 + x24);
- { uint128_t x41 = (x40 >> 0x33);
- { uint64_t x42 = ((uint64_t)x40 & 0x7ffffffffffff);
- { uint128_t x43 = (x41 + x23);
- { uint128_t x44 = (x43 >> 0x34);
- { uint64_t x45 = ((uint64_t)x43 & 0xfffffffffffff);
- { uint128_t x46 = (x44 + x22);
- { uint128_t x47 = (x46 >> 0x33);
- { uint64_t x48 = ((uint64_t)x46 & 0x7ffffffffffff);
- { uint128_t x49 = (x47 + x21);
- { uint128_t x50 = (x49 >> 0x33);
- { uint64_t x51 = ((uint64_t)x49 & 0x7ffffffffffff);
- { uint128_t x52 = (x50 + x20);
- { uint64_t x53 = (uint64_t) (x52 >> 0x33);
- { uint64_t x54 = ((uint64_t)x52 & 0x7ffffffffffff);
- { uint128_t x55 = (x53 + x19);
- { uint64_t x56 = (uint64_t) (x55 >> 0x33);
- { uint64_t x57 = ((uint64_t)x55 & 0x7ffffffffffff);
- { uint128_t x58 = (x30 + ((uint128_t)0x239 * x56));
- { uint64_t x59 = (uint64_t) (x58 >> 0x34);
- { uint64_t x60 = ((uint64_t)x58 & 0xfffffffffffff);
- { uint64_t x61 = (x59 + x33);
- { uint64_t x62 = (x61 >> 0x33);
- { uint64_t x63 = (x61 & 0x7ffffffffffff);
- out[0] = x60;
- out[1] = x63;
- out[2] = (x62 + x36);
- out[3] = x39;
- out[4] = x42;
- out[5] = x45;
- out[6] = x48;
- out[7] = x51;
- out[8] = x54;
- out[9] = x57;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e512m569_10limbs/fesquare.v b/src/Specific/solinas64_2e512m569_10limbs/fesquare.v
deleted file mode 100644
index d673db48d..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e512m569_10limbs.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/solinas64_2e512m569_10limbs/fesquareDisplay.log b/src/Specific/solinas64_2e512m569_10limbs/fesquareDisplay.log
deleted file mode 100644
index 09790b996..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x19 = (((uint128_t)x2 * x17) + ((0x2 * ((uint128_t)x4 * x18)) + ((0x2 * ((uint128_t)x6 * x16)) + ((0x2 * ((uint128_t)x8 * x14)) + (((uint128_t)x10 * x12) + (((uint128_t)x12 * x10) + ((0x2 * ((uint128_t)x14 * x8)) + ((0x2 * ((uint128_t)x16 * x6)) + ((0x2 * ((uint128_t)x18 * x4)) + ((uint128_t)x17 * x2))))))))));
- uint128_t x20 = ((((uint128_t)x2 * x18) + ((0x2 * ((uint128_t)x4 * x16)) + ((0x2 * ((uint128_t)x6 * x14)) + (((uint128_t)x8 * x12) + (((uint128_t)x10 * x10) + (((uint128_t)x12 * x8) + ((0x2 * ((uint128_t)x14 * x6)) + ((0x2 * ((uint128_t)x16 * x4)) + ((uint128_t)x18 * x2))))))))) + (0x239 * ((uint128_t)x17 * x17)));
- uint128_t x21 = ((((uint128_t)x2 * x16) + ((0x2 * ((uint128_t)x4 * x14)) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + ((0x2 * ((uint128_t)x14 * x4)) + ((uint128_t)x16 * x2)))))))) + (0x239 * (((uint128_t)x18 * x17) + ((uint128_t)x17 * x18))));
- uint128_t x22 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x239 * (((uint128_t)x16 * x17) + (((uint128_t)x18 * x18) + ((uint128_t)x17 * x16)))));
- uint128_t x23 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x239 * ((0x2 * ((uint128_t)x14 * x17)) + ((0x2 * ((uint128_t)x16 * x18)) + ((0x2 * ((uint128_t)x18 * x16)) + (0x2 * ((uint128_t)x17 * x14)))))));
- uint128_t x24 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (0x239 * (((uint128_t)x12 * x17) + ((0x2 * ((uint128_t)x14 * x18)) + ((0x2 * ((uint128_t)x16 * x16)) + ((0x2 * ((uint128_t)x18 * x14)) + ((uint128_t)x17 * x12)))))));
- uint128_t x25 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x239 * (((uint128_t)x10 * x17) + (((uint128_t)x12 * x18) + ((0x2 * ((uint128_t)x14 * x16)) + ((0x2 * ((uint128_t)x16 * x14)) + (((uint128_t)x18 * x12) + ((uint128_t)x17 * x10))))))));
- uint128_t x26 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (0x239 * (((uint128_t)x8 * x17) + (((uint128_t)x10 * x18) + (((uint128_t)x12 * x16) + ((0x2 * ((uint128_t)x14 * x14)) + (((uint128_t)x16 * x12) + (((uint128_t)x18 * x10) + ((uint128_t)x17 * x8)))))))));
- uint128_t x27 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x239 * (((uint128_t)x6 * x17) + (((uint128_t)x8 * x18) + (((uint128_t)x10 * x16) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + (((uint128_t)x16 * x10) + (((uint128_t)x18 * x8) + ((uint128_t)x17 * x6))))))))));
- uint128_t x28 = (((uint128_t)x2 * x2) + (0x239 * ((0x2 * ((uint128_t)x4 * x17)) + ((0x2 * ((uint128_t)x6 * x18)) + ((0x2 * ((uint128_t)x8 * x16)) + ((0x2 * ((uint128_t)x10 * x14)) + (((uint128_t)x12 * x12) + ((0x2 * ((uint128_t)x14 * x10)) + ((0x2 * ((uint128_t)x16 * x8)) + ((0x2 * ((uint128_t)x18 * x6)) + (0x2 * ((uint128_t)x17 * x4))))))))))));
- uint128_t x29 = (x28 >> 0x34);
- uint64_t x30 = ((uint64_t)x28 & 0xfffffffffffff);
- uint128_t x31 = (x29 + x27);
- uint128_t x32 = (x31 >> 0x33);
- uint64_t x33 = ((uint64_t)x31 & 0x7ffffffffffff);
- uint128_t x34 = (x32 + x26);
- uint128_t x35 = (x34 >> 0x33);
- uint64_t x36 = ((uint64_t)x34 & 0x7ffffffffffff);
- uint128_t x37 = (x35 + x25);
- uint128_t x38 = (x37 >> 0x33);
- uint64_t x39 = ((uint64_t)x37 & 0x7ffffffffffff);
- uint128_t x40 = (x38 + x24);
- uint128_t x41 = (x40 >> 0x33);
- uint64_t x42 = ((uint64_t)x40 & 0x7ffffffffffff);
- uint128_t x43 = (x41 + x23);
- uint128_t x44 = (x43 >> 0x34);
- uint64_t x45 = ((uint64_t)x43 & 0xfffffffffffff);
- uint128_t x46 = (x44 + x22);
- uint128_t x47 = (x46 >> 0x33);
- uint64_t x48 = ((uint64_t)x46 & 0x7ffffffffffff);
- uint128_t x49 = (x47 + x21);
- uint128_t x50 = (x49 >> 0x33);
- uint64_t x51 = ((uint64_t)x49 & 0x7ffffffffffff);
- uint128_t x52 = (x50 + x20);
- uint64_t x53 = (uint64_t) (x52 >> 0x33);
- uint64_t x54 = ((uint64_t)x52 & 0x7ffffffffffff);
- uint128_t x55 = (x53 + x19);
- uint64_t x56 = (uint64_t) (x55 >> 0x33);
- uint64_t x57 = ((uint64_t)x55 & 0x7ffffffffffff);
- uint128_t x58 = (x30 + ((uint128_t)0x239 * x56));
- uint64_t x59 = (uint64_t) (x58 >> 0x34);
- uint64_t x60 = ((uint64_t)x58 & 0xfffffffffffff);
- uint64_t x61 = (x59 + x33);
- uint64_t x62 = (x61 >> 0x33);
- uint64_t x63 = (x61 & 0x7ffffffffffff);
- return (Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, Return x39, (x62 + x36), Return x63, Return x60))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e512m569_10limbs/fesquareDisplay.v b/src/Specific/solinas64_2e512m569_10limbs/fesquareDisplay.v
deleted file mode 100644
index 3629053ea..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e512m569_10limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e512m569_10limbs/fesub.c b/src/Specific/solinas64_2e512m569_10limbs/fesub.c
deleted file mode 100644
index b2dd293f5..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/fesub.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fesub(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- out[0] = ((0x1ffffffffffb8e + x5) - x23);
- out[1] = ((0xffffffffffffe + x7) - x25);
- out[2] = ((0xffffffffffffe + x9) - x27);
- out[3] = ((0xffffffffffffe + x11) - x29);
- out[4] = ((0xffffffffffffe + x13) - x31);
- out[5] = ((0x1ffffffffffffe + x15) - x33);
- out[6] = ((0xffffffffffffe + x17) - x35);
- out[7] = ((0xffffffffffffe + x19) - x37);
- out[8] = ((0xffffffffffffe + x21) - x39);
- out[9] = ((0xffffffffffffe + x20) - x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e512m569_10limbs/fesub.v b/src/Specific/solinas64_2e512m569_10limbs/fesub.v
deleted file mode 100644
index 792210dc5..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e512m569_10limbs.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/solinas64_2e512m569_10limbs/fesubDisplay.log b/src/Specific/solinas64_2e512m569_10limbs/fesubDisplay.log
deleted file mode 100644
index 07b0161a8..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- (((0xffffffffffffe + x20) - x38), ((0xffffffffffffe + x21) - x39), ((0xffffffffffffe + x19) - x37), ((0xffffffffffffe + x17) - x35), ((0x1ffffffffffffe + x15) - x33), ((0xffffffffffffe + x13) - x31), ((0xffffffffffffe + x11) - x29), ((0xffffffffffffe + x9) - x27), ((0xffffffffffffe + x7) - x25), ((0x1ffffffffffb8e + x5) - x23)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e512m569_10limbs/fesubDisplay.v b/src/Specific/solinas64_2e512m569_10limbs/fesubDisplay.v
deleted file mode 100644
index a977888de..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e512m569_10limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e512m569_10limbs/freeze.c b/src/Specific/solinas64_2e512m569_10limbs/freeze.c
deleted file mode 100644
index 6f4db7541..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/freeze.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void freeze(uint64_t out[10], const uint64_t in1[10]) {
- { const uint64_t x17 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffdc7);
- { uint64_t x23; uint8_t x24 = _subborrow_u51(x21, x4, 0x7ffffffffffff, &x23);
- { uint64_t x26; uint8_t x27 = _subborrow_u51(x24, x6, 0x7ffffffffffff, &x26);
- { uint64_t x29; uint8_t x30 = _subborrow_u51(x27, x8, 0x7ffffffffffff, &x29);
- { uint64_t x32; uint8_t x33 = _subborrow_u51(x30, x10, 0x7ffffffffffff, &x32);
- { uint64_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x12, 0xfffffffffffff);
- { uint64_t x38; uint8_t x39 = _subborrow_u51(x36, x14, 0x7ffffffffffff, &x38);
- { uint64_t x41; uint8_t x42 = _subborrow_u51(x39, x16, 0x7ffffffffffff, &x41);
- { uint64_t x44; uint8_t x45 = _subborrow_u51(x42, x18, 0x7ffffffffffff, &x44);
- { uint64_t x47; uint8_t x48 = _subborrow_u51(x45, x17, 0x7ffffffffffff, &x47);
- { uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL);
- { uint64_t x50 = (x49 & 0xffffffffffdc7);
- { uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- { uint64_t x54 = (x49 & 0x7ffffffffffff);
- { uint64_t x56; uint8_t x57 = _addcarryx_u51(x53, x23, x54, &x56);
- { uint64_t x58 = (x49 & 0x7ffffffffffff);
- { uint64_t x60; uint8_t x61 = _addcarryx_u51(x57, x26, x58, &x60);
- { uint64_t x62 = (x49 & 0x7ffffffffffff);
- { uint64_t x64; uint8_t x65 = _addcarryx_u51(x61, x29, x62, &x64);
- { uint64_t x66 = (x49 & 0x7ffffffffffff);
- { uint64_t x68; uint8_t x69 = _addcarryx_u51(x65, x32, x66, &x68);
- { uint64_t x70 = (x49 & 0xfffffffffffff);
- { uint64_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- { uint64_t x74 = (x49 & 0x7ffffffffffff);
- { uint64_t x76; uint8_t x77 = _addcarryx_u51(x73, x38, x74, &x76);
- { uint64_t x78 = (x49 & 0x7ffffffffffff);
- { uint64_t x80; uint8_t x81 = _addcarryx_u51(x77, x41, x78, &x80);
- { uint64_t x82 = (x49 & 0x7ffffffffffff);
- { uint64_t x84; uint8_t x85 = _addcarryx_u51(x81, x44, x82, &x84);
- { uint64_t x86 = (x49 & 0x7ffffffffffff);
- { uint64_t x88; uint8_t _ = _addcarryx_u51(x85, x47, x86, &x88);
- out[0] = x52;
- out[1] = x56;
- out[2] = x60;
- out[3] = x64;
- out[4] = x68;
- out[5] = x72;
- out[6] = x76;
- out[7] = x80;
- out[8] = x84;
- out[9] = x88;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e512m569_10limbs/freeze.v b/src/Specific/solinas64_2e512m569_10limbs/freeze.v
deleted file mode 100644
index ef77d30c7..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e512m569_10limbs.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/solinas64_2e512m569_10limbs/freezeDisplay.log b/src/Specific/solinas64_2e512m569_10limbs/freezeDisplay.log
deleted file mode 100644
index c78c962ee..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0xffffffffffdc7);
- uint64_t x23, uint8_t x24 = subborrow_u51(x21, x4, 0x7ffffffffffff);
- uint64_t x26, uint8_t x27 = subborrow_u51(x24, x6, 0x7ffffffffffff);
- uint64_t x29, uint8_t x30 = subborrow_u51(x27, x8, 0x7ffffffffffff);
- uint64_t x32, uint8_t x33 = subborrow_u51(x30, x10, 0x7ffffffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x12, 0xfffffffffffff);
- uint64_t x38, uint8_t x39 = subborrow_u51(x36, x14, 0x7ffffffffffff);
- uint64_t x41, uint8_t x42 = subborrow_u51(x39, x16, 0x7ffffffffffff);
- uint64_t x44, uint8_t x45 = subborrow_u51(x42, x18, 0x7ffffffffffff);
- uint64_t x47, uint8_t x48 = subborrow_u51(x45, x17, 0x7ffffffffffff);
- uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL);
- uint64_t x50 = (x49 & 0xffffffffffdc7);
- uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- uint64_t x54 = (x49 & 0x7ffffffffffff);
- uint64_t x56, uint8_t x57 = addcarryx_u51(x53, x23, x54);
- uint64_t x58 = (x49 & 0x7ffffffffffff);
- uint64_t x60, uint8_t x61 = addcarryx_u51(x57, x26, x58);
- uint64_t x62 = (x49 & 0x7ffffffffffff);
- uint64_t x64, uint8_t x65 = addcarryx_u51(x61, x29, x62);
- uint64_t x66 = (x49 & 0x7ffffffffffff);
- uint64_t x68, uint8_t x69 = addcarryx_u51(x65, x32, x66);
- uint64_t x70 = (x49 & 0xfffffffffffff);
- uint64_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- uint64_t x74 = (x49 & 0x7ffffffffffff);
- uint64_t x76, uint8_t x77 = addcarryx_u51(x73, x38, x74);
- uint64_t x78 = (x49 & 0x7ffffffffffff);
- uint64_t x80, uint8_t x81 = addcarryx_u51(x77, x41, x78);
- uint64_t x82 = (x49 & 0x7ffffffffffff);
- uint64_t x84, uint8_t x85 = addcarryx_u51(x81, x44, x82);
- uint64_t x86 = (x49 & 0x7ffffffffffff);
- uint64_t x88, uint8_t _ = addcarryx_u51(x85, x47, x86);
- (Return x88, Return x84, Return x80, Return x76, Return x72, Return x68, Return x64, Return x60, Return x56, Return x52))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e512m569_10limbs/freezeDisplay.v b/src/Specific/solinas64_2e512m569_10limbs/freezeDisplay.v
deleted file mode 100644
index 3a4855ab8..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e512m569_10limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e512m569_10limbs/py_interpreter.sh b/src/Specific/solinas64_2e512m569_10limbs/py_interpreter.sh
deleted file mode 100755
index 711a90d28..000000000
--- a/src/Specific/solinas64_2e512m569_10limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**512 - 569' -Dmodulus_bytes='51.2' -Da24='121665'
diff --git a/src/Specific/solinas64_2e512m569_11limbs/CurveParameters.v b/src/Specific/solinas64_2e512m569_11limbs/CurveParameters.v
deleted file mode 100644
index 1ba80fe1a..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^512 - 569
-Base: 46 + 6/11
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 11%nat;
- base := 46 + 6/11;
- bitwidth := 64;
- s := 2^512;
- c := [(1, 569)];
- carry_chains := Some [seq 0 (pred 11); [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/solinas64_2e512m569_11limbs/Synthesis.v b/src/Specific/solinas64_2e512m569_11limbs/Synthesis.v
deleted file mode 100644
index 8133215c1..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e512m569_11limbs.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/solinas64_2e512m569_11limbs/compiler.sh b/src/Specific/solinas64_2e512m569_11limbs/compiler.sh
deleted file mode 100755
index 78b155324..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,47,46,47,46,47,46,47,46,47,46}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<512) - 569' "$@"
diff --git a/src/Specific/solinas64_2e512m569_11limbs/compilerxx.sh b/src/Specific/solinas64_2e512m569_11limbs/compilerxx.sh
deleted file mode 100755
index 61c37a76f..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{47,47,46,47,46,47,46,47,46,47,46}' -Dmodulus_array='{0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfd,0xc7}' -Dmodulus_bytes_val='64' -Dmodulus_limbs='11' -Dq_mpz='(1_mpz<<512) - 569' "$@"
diff --git a/src/Specific/solinas64_2e512m569_11limbs/feadd.c b/src/Specific/solinas64_2e512m569_11limbs/feadd.c
deleted file mode 100644
index f810d17db..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/feadd.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void feadd(uint64_t out[11], const uint64_t in1[11], const uint64_t in2[11]) {
- { const uint64_t x22 = in1[10];
- { const uint64_t x23 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x42 = in2[10];
- { const uint64_t x43 = in2[9];
- { const uint64_t x41 = in2[8];
- { const uint64_t x39 = in2[7];
- { const uint64_t x37 = in2[6];
- { const uint64_t x35 = in2[5];
- { const uint64_t x33 = in2[4];
- { const uint64_t x31 = in2[3];
- { const uint64_t x29 = in2[2];
- { const uint64_t x27 = in2[1];
- { const uint64_t x25 = in2[0];
- out[0] = (x5 + x25);
- out[1] = (x7 + x27);
- out[2] = (x9 + x29);
- out[3] = (x11 + x31);
- out[4] = (x13 + x33);
- out[5] = (x15 + x35);
- out[6] = (x17 + x37);
- out[7] = (x19 + x39);
- out[8] = (x21 + x41);
- out[9] = (x23 + x43);
- out[10] = (x22 + x42);
- }}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e512m569_11limbs/feadd.v b/src/Specific/solinas64_2e512m569_11limbs/feadd.v
deleted file mode 100644
index 12f013c35..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e512m569_11limbs.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/solinas64_2e512m569_11limbs/feaddDisplay.log b/src/Specific/solinas64_2e512m569_11limbs/feaddDisplay.log
deleted file mode 100644
index 83efadb9e..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- ((x22 + x42), (x23 + x43), (x21 + x41), (x19 + x39), (x17 + x37), (x15 + x35), (x13 + x33), (x11 + x31), (x9 + x29), (x7 + x27), (x5 + x25)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e512m569_11limbs/feaddDisplay.v b/src/Specific/solinas64_2e512m569_11limbs/feaddDisplay.v
deleted file mode 100644
index ede1af81b..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e512m569_11limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e512m569_11limbs/fecarry.v b/src/Specific/solinas64_2e512m569_11limbs/fecarry.v
deleted file mode 100644
index fa45f4484..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e512m569_11limbs.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/solinas64_2e512m569_11limbs/fecarryDisplay.v b/src/Specific/solinas64_2e512m569_11limbs/fecarryDisplay.v
deleted file mode 100644
index 4bc47813d..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e512m569_11limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e512m569_11limbs/femul.c b/src/Specific/solinas64_2e512m569_11limbs/femul.c
deleted file mode 100644
index 90798c593..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/femul.c
+++ /dev/null
@@ -1,85 +0,0 @@
-static void femul(uint64_t out[11], const uint64_t in1[11], const uint64_t in2[11]) {
- { const uint64_t x22 = in1[10];
- { const uint64_t x23 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x42 = in2[10];
- { const uint64_t x43 = in2[9];
- { const uint64_t x41 = in2[8];
- { const uint64_t x39 = in2[7];
- { const uint64_t x37 = in2[6];
- { const uint64_t x35 = in2[5];
- { const uint64_t x33 = in2[4];
- { const uint64_t x31 = in2[3];
- { const uint64_t x29 = in2[2];
- { const uint64_t x27 = in2[1];
- { const uint64_t x25 = in2[0];
- { uint128_t x44 = (((uint128_t)x5 * x42) + (((uint128_t)x7 * x43) + ((0x2 * ((uint128_t)x9 * x41)) + (((uint128_t)x11 * x39) + ((0x2 * ((uint128_t)x13 * x37)) + (((uint128_t)x15 * x35) + ((0x2 * ((uint128_t)x17 * x33)) + (((uint128_t)x19 * x31) + ((0x2 * ((uint128_t)x21 * x29)) + (((uint128_t)x23 * x27) + ((uint128_t)x22 * x25)))))))))));
- { uint128_t x45 = ((((uint128_t)x5 * x43) + ((0x2 * ((uint128_t)x7 * x41)) + ((0x2 * ((uint128_t)x9 * x39)) + ((0x2 * ((uint128_t)x11 * x37)) + ((0x2 * ((uint128_t)x13 * x35)) + ((0x2 * ((uint128_t)x15 * x33)) + ((0x2 * ((uint128_t)x17 * x31)) + ((0x2 * ((uint128_t)x19 * x29)) + ((0x2 * ((uint128_t)x21 * x27)) + ((uint128_t)x23 * x25)))))))))) + (0x239 * (0x2 * ((uint128_t)x22 * x42))));
- { uint128_t x46 = ((((uint128_t)x5 * x41) + (((uint128_t)x7 * x39) + ((0x2 * ((uint128_t)x9 * x37)) + (((uint128_t)x11 * x35) + ((0x2 * ((uint128_t)x13 * x33)) + (((uint128_t)x15 * x31) + ((0x2 * ((uint128_t)x17 * x29)) + (((uint128_t)x19 * x27) + ((uint128_t)x21 * x25))))))))) + (0x239 * (((uint128_t)x23 * x42) + ((uint128_t)x22 * x43))));
- { uint128_t x47 = ((((uint128_t)x5 * x39) + ((0x2 * ((uint128_t)x7 * x37)) + ((0x2 * ((uint128_t)x9 * x35)) + ((0x2 * ((uint128_t)x11 * x33)) + ((0x2 * ((uint128_t)x13 * x31)) + ((0x2 * ((uint128_t)x15 * x29)) + ((0x2 * ((uint128_t)x17 * x27)) + ((uint128_t)x19 * x25)))))))) + (0x239 * ((0x2 * ((uint128_t)x21 * x42)) + (((uint128_t)x23 * x43) + (0x2 * ((uint128_t)x22 * x41))))));
- { uint128_t x48 = ((((uint128_t)x5 * x37) + (((uint128_t)x7 * x35) + ((0x2 * ((uint128_t)x9 * x33)) + (((uint128_t)x11 * x31) + ((0x2 * ((uint128_t)x13 * x29)) + (((uint128_t)x15 * x27) + ((uint128_t)x17 * x25))))))) + (0x239 * (((uint128_t)x19 * x42) + (((uint128_t)x21 * x43) + (((uint128_t)x23 * x41) + ((uint128_t)x22 * x39))))));
- { uint128_t x49 = ((((uint128_t)x5 * x35) + ((0x2 * ((uint128_t)x7 * x33)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + ((uint128_t)x15 * x25)))))) + (0x239 * ((0x2 * ((uint128_t)x17 * x42)) + (((uint128_t)x19 * x43) + ((0x2 * ((uint128_t)x21 * x41)) + (((uint128_t)x23 * x39) + (0x2 * ((uint128_t)x22 * x37))))))));
- { uint128_t x50 = ((((uint128_t)x5 * x33) + (((uint128_t)x7 * x31) + ((0x2 * ((uint128_t)x9 * x29)) + (((uint128_t)x11 * x27) + ((uint128_t)x13 * x25))))) + (0x239 * (((uint128_t)x15 * x42) + (((uint128_t)x17 * x43) + (((uint128_t)x19 * x41) + (((uint128_t)x21 * x39) + (((uint128_t)x23 * x37) + ((uint128_t)x22 * x35))))))));
- { uint128_t x51 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + ((0x2 * ((uint128_t)x9 * x27)) + ((uint128_t)x11 * x25)))) + (0x239 * ((0x2 * ((uint128_t)x13 * x42)) + (((uint128_t)x15 * x43) + ((0x2 * ((uint128_t)x17 * x41)) + (((uint128_t)x19 * x39) + ((0x2 * ((uint128_t)x21 * x37)) + (((uint128_t)x23 * x35) + (0x2 * ((uint128_t)x22 * x33))))))))));
- { uint128_t x52 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + ((uint128_t)x9 * x25))) + (0x239 * (((uint128_t)x11 * x42) + (((uint128_t)x13 * x43) + (((uint128_t)x15 * x41) + (((uint128_t)x17 * x39) + (((uint128_t)x19 * x37) + (((uint128_t)x21 * x35) + (((uint128_t)x23 * x33) + ((uint128_t)x22 * x31))))))))));
- { uint128_t x53 = ((((uint128_t)x5 * x27) + ((uint128_t)x7 * x25)) + (0x239 * ((0x2 * ((uint128_t)x9 * x42)) + (((uint128_t)x11 * x43) + ((0x2 * ((uint128_t)x13 * x41)) + (((uint128_t)x15 * x39) + ((0x2 * ((uint128_t)x17 * x37)) + (((uint128_t)x19 * x35) + ((0x2 * ((uint128_t)x21 * x33)) + (((uint128_t)x23 * x31) + (0x2 * ((uint128_t)x22 * x29))))))))))));
- { uint128_t x54 = (((uint128_t)x5 * x25) + (0x239 * ((0x2 * ((uint128_t)x7 * x42)) + ((0x2 * ((uint128_t)x9 * x43)) + ((0x2 * ((uint128_t)x11 * x41)) + ((0x2 * ((uint128_t)x13 * x39)) + ((0x2 * ((uint128_t)x15 * x37)) + ((0x2 * ((uint128_t)x17 * x35)) + ((0x2 * ((uint128_t)x19 * x33)) + ((0x2 * ((uint128_t)x21 * x31)) + ((0x2 * ((uint128_t)x23 * x29)) + (0x2 * ((uint128_t)x22 * x27)))))))))))));
- { uint64_t x55 = (uint64_t) (x54 >> 0x2f);
- { uint64_t x56 = ((uint64_t)x54 & 0x7fffffffffff);
- { uint128_t x57 = (x55 + x53);
- { uint64_t x58 = (uint64_t) (x57 >> 0x2f);
- { uint64_t x59 = ((uint64_t)x57 & 0x7fffffffffff);
- { uint128_t x60 = (x58 + x52);
- { uint64_t x61 = (uint64_t) (x60 >> 0x2e);
- { uint64_t x62 = ((uint64_t)x60 & 0x3fffffffffff);
- { uint128_t x63 = (x61 + x51);
- { uint64_t x64 = (uint64_t) (x63 >> 0x2f);
- { uint64_t x65 = ((uint64_t)x63 & 0x7fffffffffff);
- { uint128_t x66 = (x64 + x50);
- { uint64_t x67 = (uint64_t) (x66 >> 0x2e);
- { uint64_t x68 = ((uint64_t)x66 & 0x3fffffffffff);
- { uint128_t x69 = (x67 + x49);
- { uint64_t x70 = (uint64_t) (x69 >> 0x2f);
- { uint64_t x71 = ((uint64_t)x69 & 0x7fffffffffff);
- { uint128_t x72 = (x70 + x48);
- { uint64_t x73 = (uint64_t) (x72 >> 0x2e);
- { uint64_t x74 = ((uint64_t)x72 & 0x3fffffffffff);
- { uint128_t x75 = (x73 + x47);
- { uint64_t x76 = (uint64_t) (x75 >> 0x2f);
- { uint64_t x77 = ((uint64_t)x75 & 0x7fffffffffff);
- { uint128_t x78 = (x76 + x46);
- { uint64_t x79 = (uint64_t) (x78 >> 0x2e);
- { uint64_t x80 = ((uint64_t)x78 & 0x3fffffffffff);
- { uint128_t x81 = (x79 + x45);
- { uint64_t x82 = (uint64_t) (x81 >> 0x2f);
- { uint64_t x83 = ((uint64_t)x81 & 0x7fffffffffff);
- { uint128_t x84 = (x82 + x44);
- { uint64_t x85 = (uint64_t) (x84 >> 0x2e);
- { uint64_t x86 = ((uint64_t)x84 & 0x3fffffffffff);
- { uint64_t x87 = (x56 + (0x239 * x85));
- { uint64_t x88 = (x87 >> 0x2f);
- { uint64_t x89 = (x87 & 0x7fffffffffff);
- { uint64_t x90 = (x88 + x59);
- { uint64_t x91 = (x90 >> 0x2f);
- { uint64_t x92 = (x90 & 0x7fffffffffff);
- out[0] = x89;
- out[1] = x92;
- out[2] = (x91 + x62);
- out[3] = x65;
- out[4] = x68;
- out[5] = x71;
- out[6] = x74;
- out[7] = x77;
- out[8] = x80;
- out[9] = x83;
- out[10] = x86;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e512m569_11limbs/femul.v b/src/Specific/solinas64_2e512m569_11limbs/femul.v
deleted file mode 100644
index 1d4a3ccd1..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e512m569_11limbs.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/solinas64_2e512m569_11limbs/femulDisplay.log b/src/Specific/solinas64_2e512m569_11limbs/femulDisplay.log
deleted file mode 100644
index c242e9333..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/femulDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- uint128_t x44 = (((uint128_t)x5 * x42) + (((uint128_t)x7 * x43) + ((0x2 * ((uint128_t)x9 * x41)) + (((uint128_t)x11 * x39) + ((0x2 * ((uint128_t)x13 * x37)) + (((uint128_t)x15 * x35) + ((0x2 * ((uint128_t)x17 * x33)) + (((uint128_t)x19 * x31) + ((0x2 * ((uint128_t)x21 * x29)) + (((uint128_t)x23 * x27) + ((uint128_t)x22 * x25)))))))))));
- uint128_t x45 = ((((uint128_t)x5 * x43) + ((0x2 * ((uint128_t)x7 * x41)) + ((0x2 * ((uint128_t)x9 * x39)) + ((0x2 * ((uint128_t)x11 * x37)) + ((0x2 * ((uint128_t)x13 * x35)) + ((0x2 * ((uint128_t)x15 * x33)) + ((0x2 * ((uint128_t)x17 * x31)) + ((0x2 * ((uint128_t)x19 * x29)) + ((0x2 * ((uint128_t)x21 * x27)) + ((uint128_t)x23 * x25)))))))))) + (0x239 * (0x2 * ((uint128_t)x22 * x42))));
- uint128_t x46 = ((((uint128_t)x5 * x41) + (((uint128_t)x7 * x39) + ((0x2 * ((uint128_t)x9 * x37)) + (((uint128_t)x11 * x35) + ((0x2 * ((uint128_t)x13 * x33)) + (((uint128_t)x15 * x31) + ((0x2 * ((uint128_t)x17 * x29)) + (((uint128_t)x19 * x27) + ((uint128_t)x21 * x25))))))))) + (0x239 * (((uint128_t)x23 * x42) + ((uint128_t)x22 * x43))));
- uint128_t x47 = ((((uint128_t)x5 * x39) + ((0x2 * ((uint128_t)x7 * x37)) + ((0x2 * ((uint128_t)x9 * x35)) + ((0x2 * ((uint128_t)x11 * x33)) + ((0x2 * ((uint128_t)x13 * x31)) + ((0x2 * ((uint128_t)x15 * x29)) + ((0x2 * ((uint128_t)x17 * x27)) + ((uint128_t)x19 * x25)))))))) + (0x239 * ((0x2 * ((uint128_t)x21 * x42)) + (((uint128_t)x23 * x43) + (0x2 * ((uint128_t)x22 * x41))))));
- uint128_t x48 = ((((uint128_t)x5 * x37) + (((uint128_t)x7 * x35) + ((0x2 * ((uint128_t)x9 * x33)) + (((uint128_t)x11 * x31) + ((0x2 * ((uint128_t)x13 * x29)) + (((uint128_t)x15 * x27) + ((uint128_t)x17 * x25))))))) + (0x239 * (((uint128_t)x19 * x42) + (((uint128_t)x21 * x43) + (((uint128_t)x23 * x41) + ((uint128_t)x22 * x39))))));
- uint128_t x49 = ((((uint128_t)x5 * x35) + ((0x2 * ((uint128_t)x7 * x33)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + ((uint128_t)x15 * x25)))))) + (0x239 * ((0x2 * ((uint128_t)x17 * x42)) + (((uint128_t)x19 * x43) + ((0x2 * ((uint128_t)x21 * x41)) + (((uint128_t)x23 * x39) + (0x2 * ((uint128_t)x22 * x37))))))));
- uint128_t x50 = ((((uint128_t)x5 * x33) + (((uint128_t)x7 * x31) + ((0x2 * ((uint128_t)x9 * x29)) + (((uint128_t)x11 * x27) + ((uint128_t)x13 * x25))))) + (0x239 * (((uint128_t)x15 * x42) + (((uint128_t)x17 * x43) + (((uint128_t)x19 * x41) + (((uint128_t)x21 * x39) + (((uint128_t)x23 * x37) + ((uint128_t)x22 * x35))))))));
- uint128_t x51 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + ((0x2 * ((uint128_t)x9 * x27)) + ((uint128_t)x11 * x25)))) + (0x239 * ((0x2 * ((uint128_t)x13 * x42)) + (((uint128_t)x15 * x43) + ((0x2 * ((uint128_t)x17 * x41)) + (((uint128_t)x19 * x39) + ((0x2 * ((uint128_t)x21 * x37)) + (((uint128_t)x23 * x35) + (0x2 * ((uint128_t)x22 * x33))))))))));
- uint128_t x52 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + ((uint128_t)x9 * x25))) + (0x239 * (((uint128_t)x11 * x42) + (((uint128_t)x13 * x43) + (((uint128_t)x15 * x41) + (((uint128_t)x17 * x39) + (((uint128_t)x19 * x37) + (((uint128_t)x21 * x35) + (((uint128_t)x23 * x33) + ((uint128_t)x22 * x31))))))))));
- uint128_t x53 = ((((uint128_t)x5 * x27) + ((uint128_t)x7 * x25)) + (0x239 * ((0x2 * ((uint128_t)x9 * x42)) + (((uint128_t)x11 * x43) + ((0x2 * ((uint128_t)x13 * x41)) + (((uint128_t)x15 * x39) + ((0x2 * ((uint128_t)x17 * x37)) + (((uint128_t)x19 * x35) + ((0x2 * ((uint128_t)x21 * x33)) + (((uint128_t)x23 * x31) + (0x2 * ((uint128_t)x22 * x29))))))))))));
- uint128_t x54 = (((uint128_t)x5 * x25) + (0x239 * ((0x2 * ((uint128_t)x7 * x42)) + ((0x2 * ((uint128_t)x9 * x43)) + ((0x2 * ((uint128_t)x11 * x41)) + ((0x2 * ((uint128_t)x13 * x39)) + ((0x2 * ((uint128_t)x15 * x37)) + ((0x2 * ((uint128_t)x17 * x35)) + ((0x2 * ((uint128_t)x19 * x33)) + ((0x2 * ((uint128_t)x21 * x31)) + ((0x2 * ((uint128_t)x23 * x29)) + (0x2 * ((uint128_t)x22 * x27)))))))))))));
- uint64_t x55 = (uint64_t) (x54 >> 0x2f);
- uint64_t x56 = ((uint64_t)x54 & 0x7fffffffffff);
- uint128_t x57 = (x55 + x53);
- uint64_t x58 = (uint64_t) (x57 >> 0x2f);
- uint64_t x59 = ((uint64_t)x57 & 0x7fffffffffff);
- uint128_t x60 = (x58 + x52);
- uint64_t x61 = (uint64_t) (x60 >> 0x2e);
- uint64_t x62 = ((uint64_t)x60 & 0x3fffffffffff);
- uint128_t x63 = (x61 + x51);
- uint64_t x64 = (uint64_t) (x63 >> 0x2f);
- uint64_t x65 = ((uint64_t)x63 & 0x7fffffffffff);
- uint128_t x66 = (x64 + x50);
- uint64_t x67 = (uint64_t) (x66 >> 0x2e);
- uint64_t x68 = ((uint64_t)x66 & 0x3fffffffffff);
- uint128_t x69 = (x67 + x49);
- uint64_t x70 = (uint64_t) (x69 >> 0x2f);
- uint64_t x71 = ((uint64_t)x69 & 0x7fffffffffff);
- uint128_t x72 = (x70 + x48);
- uint64_t x73 = (uint64_t) (x72 >> 0x2e);
- uint64_t x74 = ((uint64_t)x72 & 0x3fffffffffff);
- uint128_t x75 = (x73 + x47);
- uint64_t x76 = (uint64_t) (x75 >> 0x2f);
- uint64_t x77 = ((uint64_t)x75 & 0x7fffffffffff);
- uint128_t x78 = (x76 + x46);
- uint64_t x79 = (uint64_t) (x78 >> 0x2e);
- uint64_t x80 = ((uint64_t)x78 & 0x3fffffffffff);
- uint128_t x81 = (x79 + x45);
- uint64_t x82 = (uint64_t) (x81 >> 0x2f);
- uint64_t x83 = ((uint64_t)x81 & 0x7fffffffffff);
- uint128_t x84 = (x82 + x44);
- uint64_t x85 = (uint64_t) (x84 >> 0x2e);
- uint64_t x86 = ((uint64_t)x84 & 0x3fffffffffff);
- uint64_t x87 = (x56 + (0x239 * x85));
- uint64_t x88 = (x87 >> 0x2f);
- uint64_t x89 = (x87 & 0x7fffffffffff);
- uint64_t x90 = (x88 + x59);
- uint64_t x91 = (x90 >> 0x2f);
- uint64_t x92 = (x90 & 0x7fffffffffff);
- return (Return x86, Return x83, Return x80, Return x77, Return x74, Return x71, Return x68, Return x65, (x91 + x62), Return x92, Return x89))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e512m569_11limbs/femulDisplay.v b/src/Specific/solinas64_2e512m569_11limbs/femulDisplay.v
deleted file mode 100644
index 4e2ae14a9..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e512m569_11limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e512m569_11limbs/fesquare.c b/src/Specific/solinas64_2e512m569_11limbs/fesquare.c
deleted file mode 100644
index ae80642eb..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/fesquare.c
+++ /dev/null
@@ -1,74 +0,0 @@
-static void fesquare(uint64_t out[11], const uint64_t in1[11]) {
- { const uint64_t x19 = in1[10];
- { const uint64_t x20 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x21 = (((uint128_t)x2 * x19) + (((uint128_t)x4 * x20) + ((0x2 * ((uint128_t)x6 * x18)) + (((uint128_t)x8 * x16) + ((0x2 * ((uint128_t)x10 * x14)) + (((uint128_t)x12 * x12) + ((0x2 * ((uint128_t)x14 * x10)) + (((uint128_t)x16 * x8) + ((0x2 * ((uint128_t)x18 * x6)) + (((uint128_t)x20 * x4) + ((uint128_t)x19 * x2)))))))))));
- { uint128_t x22 = ((((uint128_t)x2 * x20) + ((0x2 * ((uint128_t)x4 * x18)) + ((0x2 * ((uint128_t)x6 * x16)) + ((0x2 * ((uint128_t)x8 * x14)) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + ((0x2 * ((uint128_t)x14 * x8)) + ((0x2 * ((uint128_t)x16 * x6)) + ((0x2 * ((uint128_t)x18 * x4)) + ((uint128_t)x20 * x2)))))))))) + (0x239 * (0x2 * ((uint128_t)x19 * x19))));
- { uint128_t x23 = ((((uint128_t)x2 * x18) + (((uint128_t)x4 * x16) + ((0x2 * ((uint128_t)x6 * x14)) + (((uint128_t)x8 * x12) + ((0x2 * ((uint128_t)x10 * x10)) + (((uint128_t)x12 * x8) + ((0x2 * ((uint128_t)x14 * x6)) + (((uint128_t)x16 * x4) + ((uint128_t)x18 * x2))))))))) + (0x239 * (((uint128_t)x20 * x19) + ((uint128_t)x19 * x20))));
- { uint128_t x24 = ((((uint128_t)x2 * x16) + ((0x2 * ((uint128_t)x4 * x14)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + ((0x2 * ((uint128_t)x14 * x4)) + ((uint128_t)x16 * x2)))))))) + (0x239 * ((0x2 * ((uint128_t)x18 * x19)) + (((uint128_t)x20 * x20) + (0x2 * ((uint128_t)x19 * x18))))));
- { uint128_t x25 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x239 * (((uint128_t)x16 * x19) + (((uint128_t)x18 * x20) + (((uint128_t)x20 * x18) + ((uint128_t)x19 * x16))))));
- { uint128_t x26 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x239 * ((0x2 * ((uint128_t)x14 * x19)) + (((uint128_t)x16 * x20) + ((0x2 * ((uint128_t)x18 * x18)) + (((uint128_t)x20 * x16) + (0x2 * ((uint128_t)x19 * x14))))))));
- { uint128_t x27 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + ((0x2 * ((uint128_t)x6 * x6)) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x239 * (((uint128_t)x12 * x19) + (((uint128_t)x14 * x20) + (((uint128_t)x16 * x18) + (((uint128_t)x18 * x16) + (((uint128_t)x20 * x14) + ((uint128_t)x19 * x12))))))));
- { uint128_t x28 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x239 * ((0x2 * ((uint128_t)x10 * x19)) + (((uint128_t)x12 * x20) + ((0x2 * ((uint128_t)x14 * x18)) + (((uint128_t)x16 * x16) + ((0x2 * ((uint128_t)x18 * x14)) + (((uint128_t)x20 * x12) + (0x2 * ((uint128_t)x19 * x10))))))))));
- { uint128_t x29 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x239 * (((uint128_t)x8 * x19) + (((uint128_t)x10 * x20) + (((uint128_t)x12 * x18) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + (((uint128_t)x18 * x12) + (((uint128_t)x20 * x10) + ((uint128_t)x19 * x8))))))))));
- { uint128_t x30 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x239 * ((0x2 * ((uint128_t)x6 * x19)) + (((uint128_t)x8 * x20) + ((0x2 * ((uint128_t)x10 * x18)) + (((uint128_t)x12 * x16) + ((0x2 * ((uint128_t)x14 * x14)) + (((uint128_t)x16 * x12) + ((0x2 * ((uint128_t)x18 * x10)) + (((uint128_t)x20 * x8) + (0x2 * ((uint128_t)x19 * x6))))))))))));
- { uint128_t x31 = (((uint128_t)x2 * x2) + (0x239 * ((0x2 * ((uint128_t)x4 * x19)) + ((0x2 * ((uint128_t)x6 * x20)) + ((0x2 * ((uint128_t)x8 * x18)) + ((0x2 * ((uint128_t)x10 * x16)) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + ((0x2 * ((uint128_t)x16 * x10)) + ((0x2 * ((uint128_t)x18 * x8)) + ((0x2 * ((uint128_t)x20 * x6)) + (0x2 * ((uint128_t)x19 * x4)))))))))))));
- { uint64_t x32 = (uint64_t) (x31 >> 0x2f);
- { uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffff);
- { uint128_t x34 = (x32 + x30);
- { uint64_t x35 = (uint64_t) (x34 >> 0x2f);
- { uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffff);
- { uint128_t x37 = (x35 + x29);
- { uint64_t x38 = (uint64_t) (x37 >> 0x2e);
- { uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffff);
- { uint128_t x40 = (x38 + x28);
- { uint64_t x41 = (uint64_t) (x40 >> 0x2f);
- { uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffff);
- { uint128_t x43 = (x41 + x27);
- { uint64_t x44 = (uint64_t) (x43 >> 0x2e);
- { uint64_t x45 = ((uint64_t)x43 & 0x3fffffffffff);
- { uint128_t x46 = (x44 + x26);
- { uint64_t x47 = (uint64_t) (x46 >> 0x2f);
- { uint64_t x48 = ((uint64_t)x46 & 0x7fffffffffff);
- { uint128_t x49 = (x47 + x25);
- { uint64_t x50 = (uint64_t) (x49 >> 0x2e);
- { uint64_t x51 = ((uint64_t)x49 & 0x3fffffffffff);
- { uint128_t x52 = (x50 + x24);
- { uint64_t x53 = (uint64_t) (x52 >> 0x2f);
- { uint64_t x54 = ((uint64_t)x52 & 0x7fffffffffff);
- { uint128_t x55 = (x53 + x23);
- { uint64_t x56 = (uint64_t) (x55 >> 0x2e);
- { uint64_t x57 = ((uint64_t)x55 & 0x3fffffffffff);
- { uint128_t x58 = (x56 + x22);
- { uint64_t x59 = (uint64_t) (x58 >> 0x2f);
- { uint64_t x60 = ((uint64_t)x58 & 0x7fffffffffff);
- { uint128_t x61 = (x59 + x21);
- { uint64_t x62 = (uint64_t) (x61 >> 0x2e);
- { uint64_t x63 = ((uint64_t)x61 & 0x3fffffffffff);
- { uint64_t x64 = (x33 + (0x239 * x62));
- { uint64_t x65 = (x64 >> 0x2f);
- { uint64_t x66 = (x64 & 0x7fffffffffff);
- { uint64_t x67 = (x65 + x36);
- { uint64_t x68 = (x67 >> 0x2f);
- { uint64_t x69 = (x67 & 0x7fffffffffff);
- out[0] = x66;
- out[1] = x69;
- out[2] = (x68 + x39);
- out[3] = x42;
- out[4] = x45;
- out[5] = x48;
- out[6] = x51;
- out[7] = x54;
- out[8] = x57;
- out[9] = x60;
- out[10] = x63;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e512m569_11limbs/fesquare.v b/src/Specific/solinas64_2e512m569_11limbs/fesquare.v
deleted file mode 100644
index 61241fdbb..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e512m569_11limbs.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/solinas64_2e512m569_11limbs/fesquareDisplay.log b/src/Specific/solinas64_2e512m569_11limbs/fesquareDisplay.log
deleted file mode 100644
index 9d40224db..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,56 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x21 = (((uint128_t)x2 * x19) + (((uint128_t)x4 * x20) + ((0x2 * ((uint128_t)x6 * x18)) + (((uint128_t)x8 * x16) + ((0x2 * ((uint128_t)x10 * x14)) + (((uint128_t)x12 * x12) + ((0x2 * ((uint128_t)x14 * x10)) + (((uint128_t)x16 * x8) + ((0x2 * ((uint128_t)x18 * x6)) + (((uint128_t)x20 * x4) + ((uint128_t)x19 * x2)))))))))));
- uint128_t x22 = ((((uint128_t)x2 * x20) + ((0x2 * ((uint128_t)x4 * x18)) + ((0x2 * ((uint128_t)x6 * x16)) + ((0x2 * ((uint128_t)x8 * x14)) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + ((0x2 * ((uint128_t)x14 * x8)) + ((0x2 * ((uint128_t)x16 * x6)) + ((0x2 * ((uint128_t)x18 * x4)) + ((uint128_t)x20 * x2)))))))))) + (0x239 * (0x2 * ((uint128_t)x19 * x19))));
- uint128_t x23 = ((((uint128_t)x2 * x18) + (((uint128_t)x4 * x16) + ((0x2 * ((uint128_t)x6 * x14)) + (((uint128_t)x8 * x12) + ((0x2 * ((uint128_t)x10 * x10)) + (((uint128_t)x12 * x8) + ((0x2 * ((uint128_t)x14 * x6)) + (((uint128_t)x16 * x4) + ((uint128_t)x18 * x2))))))))) + (0x239 * (((uint128_t)x20 * x19) + ((uint128_t)x19 * x20))));
- uint128_t x24 = ((((uint128_t)x2 * x16) + ((0x2 * ((uint128_t)x4 * x14)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + ((0x2 * ((uint128_t)x14 * x4)) + ((uint128_t)x16 * x2)))))))) + (0x239 * ((0x2 * ((uint128_t)x18 * x19)) + (((uint128_t)x20 * x20) + (0x2 * ((uint128_t)x19 * x18))))));
- uint128_t x25 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + ((0x2 * ((uint128_t)x6 * x10)) + (((uint128_t)x8 * x8) + ((0x2 * ((uint128_t)x10 * x6)) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + (0x239 * (((uint128_t)x16 * x19) + (((uint128_t)x18 * x20) + (((uint128_t)x20 * x18) + ((uint128_t)x19 * x16))))));
- uint128_t x26 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (0x239 * ((0x2 * ((uint128_t)x14 * x19)) + (((uint128_t)x16 * x20) + ((0x2 * ((uint128_t)x18 * x18)) + (((uint128_t)x20 * x16) + (0x2 * ((uint128_t)x19 * x14))))))));
- uint128_t x27 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + ((0x2 * ((uint128_t)x6 * x6)) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + (0x239 * (((uint128_t)x12 * x19) + (((uint128_t)x14 * x20) + (((uint128_t)x16 * x18) + (((uint128_t)x18 * x16) + (((uint128_t)x20 * x14) + ((uint128_t)x19 * x12))))))));
- uint128_t x28 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (0x239 * ((0x2 * ((uint128_t)x10 * x19)) + (((uint128_t)x12 * x20) + ((0x2 * ((uint128_t)x14 * x18)) + (((uint128_t)x16 * x16) + ((0x2 * ((uint128_t)x18 * x14)) + (((uint128_t)x20 * x12) + (0x2 * ((uint128_t)x19 * x10))))))))));
- uint128_t x29 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + (0x239 * (((uint128_t)x8 * x19) + (((uint128_t)x10 * x20) + (((uint128_t)x12 * x18) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + (((uint128_t)x18 * x12) + (((uint128_t)x20 * x10) + ((uint128_t)x19 * x8))))))))));
- uint128_t x30 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (0x239 * ((0x2 * ((uint128_t)x6 * x19)) + (((uint128_t)x8 * x20) + ((0x2 * ((uint128_t)x10 * x18)) + (((uint128_t)x12 * x16) + ((0x2 * ((uint128_t)x14 * x14)) + (((uint128_t)x16 * x12) + ((0x2 * ((uint128_t)x18 * x10)) + (((uint128_t)x20 * x8) + (0x2 * ((uint128_t)x19 * x6))))))))))));
- uint128_t x31 = (((uint128_t)x2 * x2) + (0x239 * ((0x2 * ((uint128_t)x4 * x19)) + ((0x2 * ((uint128_t)x6 * x20)) + ((0x2 * ((uint128_t)x8 * x18)) + ((0x2 * ((uint128_t)x10 * x16)) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + ((0x2 * ((uint128_t)x16 * x10)) + ((0x2 * ((uint128_t)x18 * x8)) + ((0x2 * ((uint128_t)x20 * x6)) + (0x2 * ((uint128_t)x19 * x4)))))))))))));
- uint64_t x32 = (uint64_t) (x31 >> 0x2f);
- uint64_t x33 = ((uint64_t)x31 & 0x7fffffffffff);
- uint128_t x34 = (x32 + x30);
- uint64_t x35 = (uint64_t) (x34 >> 0x2f);
- uint64_t x36 = ((uint64_t)x34 & 0x7fffffffffff);
- uint128_t x37 = (x35 + x29);
- uint64_t x38 = (uint64_t) (x37 >> 0x2e);
- uint64_t x39 = ((uint64_t)x37 & 0x3fffffffffff);
- uint128_t x40 = (x38 + x28);
- uint64_t x41 = (uint64_t) (x40 >> 0x2f);
- uint64_t x42 = ((uint64_t)x40 & 0x7fffffffffff);
- uint128_t x43 = (x41 + x27);
- uint64_t x44 = (uint64_t) (x43 >> 0x2e);
- uint64_t x45 = ((uint64_t)x43 & 0x3fffffffffff);
- uint128_t x46 = (x44 + x26);
- uint64_t x47 = (uint64_t) (x46 >> 0x2f);
- uint64_t x48 = ((uint64_t)x46 & 0x7fffffffffff);
- uint128_t x49 = (x47 + x25);
- uint64_t x50 = (uint64_t) (x49 >> 0x2e);
- uint64_t x51 = ((uint64_t)x49 & 0x3fffffffffff);
- uint128_t x52 = (x50 + x24);
- uint64_t x53 = (uint64_t) (x52 >> 0x2f);
- uint64_t x54 = ((uint64_t)x52 & 0x7fffffffffff);
- uint128_t x55 = (x53 + x23);
- uint64_t x56 = (uint64_t) (x55 >> 0x2e);
- uint64_t x57 = ((uint64_t)x55 & 0x3fffffffffff);
- uint128_t x58 = (x56 + x22);
- uint64_t x59 = (uint64_t) (x58 >> 0x2f);
- uint64_t x60 = ((uint64_t)x58 & 0x7fffffffffff);
- uint128_t x61 = (x59 + x21);
- uint64_t x62 = (uint64_t) (x61 >> 0x2e);
- uint64_t x63 = ((uint64_t)x61 & 0x3fffffffffff);
- uint64_t x64 = (x33 + (0x239 * x62));
- uint64_t x65 = (x64 >> 0x2f);
- uint64_t x66 = (x64 & 0x7fffffffffff);
- uint64_t x67 = (x65 + x36);
- uint64_t x68 = (x67 >> 0x2f);
- uint64_t x69 = (x67 & 0x7fffffffffff);
- return (Return x63, Return x60, Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, (x68 + x39), Return x69, Return x66))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e512m569_11limbs/fesquareDisplay.v b/src/Specific/solinas64_2e512m569_11limbs/fesquareDisplay.v
deleted file mode 100644
index 597b21fdb..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e512m569_11limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e512m569_11limbs/fesub.c b/src/Specific/solinas64_2e512m569_11limbs/fesub.c
deleted file mode 100644
index 3c79a27f2..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/fesub.c
+++ /dev/null
@@ -1,36 +0,0 @@
-static void fesub(uint64_t out[11], const uint64_t in1[11], const uint64_t in2[11]) {
- { const uint64_t x22 = in1[10];
- { const uint64_t x23 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x42 = in2[10];
- { const uint64_t x43 = in2[9];
- { const uint64_t x41 = in2[8];
- { const uint64_t x39 = in2[7];
- { const uint64_t x37 = in2[6];
- { const uint64_t x35 = in2[5];
- { const uint64_t x33 = in2[4];
- { const uint64_t x31 = in2[3];
- { const uint64_t x29 = in2[2];
- { const uint64_t x27 = in2[1];
- { const uint64_t x25 = in2[0];
- out[0] = ((0xfffffffffb8e + x5) - x25);
- out[1] = ((0xfffffffffffe + x7) - x27);
- out[2] = ((0x7ffffffffffe + x9) - x29);
- out[3] = ((0xfffffffffffe + x11) - x31);
- out[4] = ((0x7ffffffffffe + x13) - x33);
- out[5] = ((0xfffffffffffe + x15) - x35);
- out[6] = ((0x7ffffffffffe + x17) - x37);
- out[7] = ((0xfffffffffffe + x19) - x39);
- out[8] = ((0x7ffffffffffe + x21) - x41);
- out[9] = ((0xfffffffffffe + x23) - x43);
- out[10] = ((0x7ffffffffffe + x22) - x42);
- }}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e512m569_11limbs/fesub.v b/src/Specific/solinas64_2e512m569_11limbs/fesub.v
deleted file mode 100644
index 506c5238a..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e512m569_11limbs.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/solinas64_2e512m569_11limbs/fesubDisplay.log b/src/Specific/solinas64_2e512m569_11limbs/fesubDisplay.log
deleted file mode 100644
index f633a819e..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x22, x23, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x42, x43, x41, x39, x37, x35, x33, x31, x29, x27, x25))%core,
- (((0x7ffffffffffe + x22) - x42), ((0xfffffffffffe + x23) - x43), ((0x7ffffffffffe + x21) - x41), ((0xfffffffffffe + x19) - x39), ((0x7ffffffffffe + x17) - x37), ((0xfffffffffffe + x15) - x35), ((0x7ffffffffffe + x13) - x33), ((0xfffffffffffe + x11) - x31), ((0x7ffffffffffe + x9) - x29), ((0xfffffffffffe + x7) - x27), ((0xfffffffffb8e + x5) - x25)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e512m569_11limbs/fesubDisplay.v b/src/Specific/solinas64_2e512m569_11limbs/fesubDisplay.v
deleted file mode 100644
index cd0a42bc7..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e512m569_11limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e512m569_11limbs/freeze.c b/src/Specific/solinas64_2e512m569_11limbs/freeze.c
deleted file mode 100644
index 93398b96f..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/freeze.c
+++ /dev/null
@@ -1,59 +0,0 @@
-static void freeze(uint64_t out[11], const uint64_t in1[11]) {
- { const uint64_t x19 = in1[10];
- { const uint64_t x20 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffdc7);
- { uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x4, 0x7fffffffffff);
- { uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x6, 0x3fffffffffff);
- { uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x8, 0x7fffffffffff);
- { uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x10, 0x3fffffffffff);
- { uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x12, 0x7fffffffffff);
- { uint64_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x14, 0x3fffffffffff);
- { uint64_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x16, 0x7fffffffffff);
- { uint64_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x44, Return x18, 0x3fffffffffff);
- { uint64_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x20, 0x7fffffffffff);
- { uint64_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x19, 0x3fffffffffff);
- { uint64_t x54 = cmovznz64(x53, 0x0, 0xffffffffffffffffL);
- { uint64_t x55 = (x54 & 0x7ffffffffdc7);
- { uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x22, Return x55);
- { uint64_t x59 = (x54 & 0x7fffffffffff);
- { uint64_t x61, uint8_t x62 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x25, Return x59);
- { uint64_t x63 = (x54 & 0x3fffffffffff);
- { uint64_t x65, uint8_t x66 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x62, Return x28, Return x63);
- { uint64_t x67 = (x54 & 0x7fffffffffff);
- { uint64_t x69, uint8_t x70 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x66, Return x31, Return x67);
- { uint64_t x71 = (x54 & 0x3fffffffffff);
- { uint64_t x73, uint8_t x74 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x70, Return x34, Return x71);
- { uint64_t x75 = (x54 & 0x7fffffffffff);
- { uint64_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x74, Return x37, Return x75);
- { uint64_t x79 = (x54 & 0x3fffffffffff);
- { uint64_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x78, Return x40, Return x79);
- { uint64_t x83 = (x54 & 0x7fffffffffff);
- { uint64_t x85, uint8_t x86 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x82, Return x43, Return x83);
- { uint64_t x87 = (x54 & 0x3fffffffffff);
- { uint64_t x89, uint8_t x90 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x86, Return x46, Return x87);
- { uint64_t x91 = (x54 & 0x7fffffffffff);
- { uint64_t x93, uint8_t x94 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x90, Return x49, Return x91);
- { uint64_t x95 = (x54 & 0x3fffffffffff);
- { uint64_t x97, uint8_t _ = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x94, Return x52, Return x95);
- out[0] = x57;
- out[1] = x61;
- out[2] = x65;
- out[3] = x69;
- out[4] = x73;
- out[5] = x77;
- out[6] = x81;
- out[7] = x85;
- out[8] = x89;
- out[9] = x93;
- out[10] = x97;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e512m569_11limbs/freeze.v b/src/Specific/solinas64_2e512m569_11limbs/freeze.v
deleted file mode 100644
index 6393c2bf0..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e512m569_11limbs.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/solinas64_2e512m569_11limbs/freezeDisplay.log b/src/Specific/solinas64_2e512m569_11limbs/freezeDisplay.log
deleted file mode 100644
index 17917382a..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/freezeDisplay.log
+++ /dev/null
@@ -1,41 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x19, x20, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x22, uint8_t x23 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x7ffffffffdc7);
- uint64_t x25, uint8_t x26 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x23, Return x4, 0x7fffffffffff);
- uint64_t x28, uint8_t x29 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x26, Return x6, 0x3fffffffffff);
- uint64_t x31, uint8_t x32 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x29, Return x8, 0x7fffffffffff);
- uint64_t x34, uint8_t x35 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x32, Return x10, 0x3fffffffffff);
- uint64_t x37, uint8_t x38 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x35, Return x12, 0x7fffffffffff);
- uint64_t x40, uint8_t x41 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x38, Return x14, 0x3fffffffffff);
- uint64_t x43, uint8_t x44 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x41, Return x16, 0x7fffffffffff);
- uint64_t x46, uint8_t x47 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x44, Return x18, 0x3fffffffffff);
- uint64_t x49, uint8_t x50 = Op (Syntax.SubWithGetBorrow 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x47, Return x20, 0x7fffffffffff);
- uint64_t x52, uint8_t x53 = Op (Syntax.SubWithGetBorrow 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x50, Return x19, 0x3fffffffffff);
- uint64_t x54 = cmovznz64(x53, 0x0, 0xffffffffffffffffL);
- uint64_t x55 = (x54 & 0x7ffffffffdc7);
- uint64_t x57, uint8_t x58 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x22, Return x55);
- uint64_t x59 = (x54 & 0x7fffffffffff);
- uint64_t x61, uint8_t x62 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x58, Return x25, Return x59);
- uint64_t x63 = (x54 & 0x3fffffffffff);
- uint64_t x65, uint8_t x66 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x62, Return x28, Return x63);
- uint64_t x67 = (x54 & 0x7fffffffffff);
- uint64_t x69, uint8_t x70 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x66, Return x31, Return x67);
- uint64_t x71 = (x54 & 0x3fffffffffff);
- uint64_t x73, uint8_t x74 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x70, Return x34, Return x71);
- uint64_t x75 = (x54 & 0x7fffffffffff);
- uint64_t x77, uint8_t x78 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x74, Return x37, Return x75);
- uint64_t x79 = (x54 & 0x3fffffffffff);
- uint64_t x81, uint8_t x82 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x78, Return x40, Return x79);
- uint64_t x83 = (x54 & 0x7fffffffffff);
- uint64_t x85, uint8_t x86 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x82, Return x43, Return x83);
- uint64_t x87 = (x54 & 0x3fffffffffff);
- uint64_t x89, uint8_t x90 = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x86, Return x46, Return x87);
- uint64_t x91 = (x54 & 0x7fffffffffff);
- uint64_t x93, uint8_t x94 = Op (Syntax.AddWithGetCarry 47 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x90, Return x49, Return x91);
- uint64_t x95 = (x54 & 0x3fffffffffff);
- uint64_t x97, uint8_t _ = Op (Syntax.AddWithGetCarry 46 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x94, Return x52, Return x95);
- (Return x97, Return x93, Return x89, Return x85, Return x81, Return x77, Return x73, Return x69, Return x65, Return x61, Return x57))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e512m569_11limbs/freezeDisplay.v b/src/Specific/solinas64_2e512m569_11limbs/freezeDisplay.v
deleted file mode 100644
index 084101039..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e512m569_11limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e512m569_11limbs/py_interpreter.sh b/src/Specific/solinas64_2e512m569_11limbs/py_interpreter.sh
deleted file mode 100755
index ecaa53bbb..000000000
--- a/src/Specific/solinas64_2e512m569_11limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**512 - 569' -Dmodulus_bytes='46 + 6/11' -Da24='121665'
diff --git a/src/Specific/solinas64_2e521m1_10limbs/CurveParameters.v b/src/Specific/solinas64_2e521m1_10limbs/CurveParameters.v
deleted file mode 100644
index 5d7dabf27..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^521 - 1
-Base: 52.1
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 10%nat;
- base := 52 + 1/10;
- bitwidth := 64;
- s := 2^521;
- c := [(1, 1)];
- carry_chains := Some [seq 0 (pred 10); [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/solinas64_2e521m1_10limbs/Synthesis.v b/src/Specific/solinas64_2e521m1_10limbs/Synthesis.v
deleted file mode 100644
index 9f6638e53..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e521m1_10limbs.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/solinas64_2e521m1_10limbs/compiler.sh b/src/Specific/solinas64_2e521m1_10limbs/compiler.sh
deleted file mode 100755
index b027e653f..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{53,52,52,52,52,52,52,52,52,52}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='66' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<521) - 1' "$@"
diff --git a/src/Specific/solinas64_2e521m1_10limbs/compilerxx.sh b/src/Specific/solinas64_2e521m1_10limbs/compilerxx.sh
deleted file mode 100755
index 42adf1d4a..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{53,52,52,52,52,52,52,52,52,52}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='66' -Dmodulus_limbs='10' -Dq_mpz='(1_mpz<<521) - 1' "$@"
diff --git a/src/Specific/solinas64_2e521m1_10limbs/feadd.c b/src/Specific/solinas64_2e521m1_10limbs/feadd.c
deleted file mode 100644
index df991e375..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/feadd.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void feadd(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- out[0] = (x5 + x23);
- out[1] = (x7 + x25);
- out[2] = (x9 + x27);
- out[3] = (x11 + x29);
- out[4] = (x13 + x31);
- out[5] = (x15 + x33);
- out[6] = (x17 + x35);
- out[7] = (x19 + x37);
- out[8] = (x21 + x39);
- out[9] = (x20 + x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e521m1_10limbs/feadd.v b/src/Specific/solinas64_2e521m1_10limbs/feadd.v
deleted file mode 100644
index 6466d2909..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e521m1_10limbs.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/solinas64_2e521m1_10limbs/feaddDisplay.log b/src/Specific/solinas64_2e521m1_10limbs/feaddDisplay.log
deleted file mode 100644
index 04176128e..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- ((x20 + x38), (x21 + x39), (x19 + x37), (x17 + x35), (x15 + x33), (x13 + x31), (x11 + x29), (x9 + x27), (x7 + x25), (x5 + x23)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e521m1_10limbs/feaddDisplay.v b/src/Specific/solinas64_2e521m1_10limbs/feaddDisplay.v
deleted file mode 100644
index 8e191012b..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e521m1_10limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e521m1_10limbs/fecarry.v b/src/Specific/solinas64_2e521m1_10limbs/fecarry.v
deleted file mode 100644
index 36bf2265a..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e521m1_10limbs.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/solinas64_2e521m1_10limbs/fecarryDisplay.v b/src/Specific/solinas64_2e521m1_10limbs/fecarryDisplay.v
deleted file mode 100644
index efa053de3..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e521m1_10limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e521m1_10limbs/femul.c b/src/Specific/solinas64_2e521m1_10limbs/femul.c
deleted file mode 100644
index 08cf14225..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/femul.c
+++ /dev/null
@@ -1,78 +0,0 @@
-static void femul(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- { uint128_t x40 = (((uint128_t)x5 * x38) + ((0x2 * ((uint128_t)x7 * x39)) + ((0x2 * ((uint128_t)x9 * x37)) + ((0x2 * ((uint128_t)x11 * x35)) + ((0x2 * ((uint128_t)x13 * x33)) + ((0x2 * ((uint128_t)x15 * x31)) + ((0x2 * ((uint128_t)x17 * x29)) + ((0x2 * ((uint128_t)x19 * x27)) + ((0x2 * ((uint128_t)x21 * x25)) + ((uint128_t)x20 * x23))))))))));
- { uint128_t x41 = ((((uint128_t)x5 * x39) + ((0x2 * ((uint128_t)x7 * x37)) + ((0x2 * ((uint128_t)x9 * x35)) + ((0x2 * ((uint128_t)x11 * x33)) + ((0x2 * ((uint128_t)x13 * x31)) + ((0x2 * ((uint128_t)x15 * x29)) + ((0x2 * ((uint128_t)x17 * x27)) + ((0x2 * ((uint128_t)x19 * x25)) + ((uint128_t)x21 * x23))))))))) + ((uint128_t)x20 * x38));
- { uint128_t x42 = ((((uint128_t)x5 * x37) + ((0x2 * ((uint128_t)x7 * x35)) + ((0x2 * ((uint128_t)x9 * x33)) + ((0x2 * ((uint128_t)x11 * x31)) + ((0x2 * ((uint128_t)x13 * x29)) + ((0x2 * ((uint128_t)x15 * x27)) + ((0x2 * ((uint128_t)x17 * x25)) + ((uint128_t)x19 * x23)))))))) + (((uint128_t)x21 * x38) + ((uint128_t)x20 * x39)));
- { uint128_t x43 = ((((uint128_t)x5 * x35) + ((0x2 * ((uint128_t)x7 * x33)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((uint128_t)x17 * x23))))))) + (((uint128_t)x19 * x38) + (((uint128_t)x21 * x39) + ((uint128_t)x20 * x37))));
- { uint128_t x44 = ((((uint128_t)x5 * x33) + ((0x2 * ((uint128_t)x7 * x31)) + ((0x2 * ((uint128_t)x9 * x29)) + ((0x2 * ((uint128_t)x11 * x27)) + ((0x2 * ((uint128_t)x13 * x25)) + ((uint128_t)x15 * x23)))))) + (((uint128_t)x17 * x38) + (((uint128_t)x19 * x39) + (((uint128_t)x21 * x37) + ((uint128_t)x20 * x35)))));
- { uint128_t x45 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((uint128_t)x13 * x23))))) + (((uint128_t)x15 * x38) + (((uint128_t)x17 * x39) + (((uint128_t)x19 * x37) + (((uint128_t)x21 * x35) + ((uint128_t)x20 * x33))))));
- { uint128_t x46 = ((((uint128_t)x5 * x29) + ((0x2 * ((uint128_t)x7 * x27)) + ((0x2 * ((uint128_t)x9 * x25)) + ((uint128_t)x11 * x23)))) + (((uint128_t)x13 * x38) + (((uint128_t)x15 * x39) + (((uint128_t)x17 * x37) + (((uint128_t)x19 * x35) + (((uint128_t)x21 * x33) + ((uint128_t)x20 * x31)))))));
- { uint128_t x47 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((uint128_t)x9 * x23))) + (((uint128_t)x11 * x38) + (((uint128_t)x13 * x39) + (((uint128_t)x15 * x37) + (((uint128_t)x17 * x35) + (((uint128_t)x19 * x33) + (((uint128_t)x21 * x31) + ((uint128_t)x20 * x29))))))));
- { uint128_t x48 = ((((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)) + (((uint128_t)x9 * x38) + (((uint128_t)x11 * x39) + (((uint128_t)x13 * x37) + (((uint128_t)x15 * x35) + (((uint128_t)x17 * x33) + (((uint128_t)x19 * x31) + (((uint128_t)x21 * x29) + ((uint128_t)x20 * x27)))))))));
- { uint128_t x49 = (((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x38)) + ((0x2 * ((uint128_t)x9 * x39)) + ((0x2 * ((uint128_t)x11 * x37)) + ((0x2 * ((uint128_t)x13 * x35)) + ((0x2 * ((uint128_t)x15 * x33)) + ((0x2 * ((uint128_t)x17 * x31)) + ((0x2 * ((uint128_t)x19 * x29)) + ((0x2 * ((uint128_t)x21 * x27)) + (0x2 * ((uint128_t)x20 * x25)))))))))));
- { uint64_t x50 = (uint64_t) (x49 >> 0x35);
- { uint64_t x51 = ((uint64_t)x49 & 0x1fffffffffffff);
- { uint128_t x52 = (x50 + x48);
- { uint64_t x53 = (uint64_t) (x52 >> 0x34);
- { uint64_t x54 = ((uint64_t)x52 & 0xfffffffffffff);
- { uint128_t x55 = (x53 + x47);
- { uint64_t x56 = (uint64_t) (x55 >> 0x34);
- { uint64_t x57 = ((uint64_t)x55 & 0xfffffffffffff);
- { uint128_t x58 = (x56 + x46);
- { uint64_t x59 = (uint64_t) (x58 >> 0x34);
- { uint64_t x60 = ((uint64_t)x58 & 0xfffffffffffff);
- { uint128_t x61 = (x59 + x45);
- { uint64_t x62 = (uint64_t) (x61 >> 0x34);
- { uint64_t x63 = ((uint64_t)x61 & 0xfffffffffffff);
- { uint128_t x64 = (x62 + x44);
- { uint64_t x65 = (uint64_t) (x64 >> 0x34);
- { uint64_t x66 = ((uint64_t)x64 & 0xfffffffffffff);
- { uint128_t x67 = (x65 + x43);
- { uint64_t x68 = (uint64_t) (x67 >> 0x34);
- { uint64_t x69 = ((uint64_t)x67 & 0xfffffffffffff);
- { uint128_t x70 = (x68 + x42);
- { uint64_t x71 = (uint64_t) (x70 >> 0x34);
- { uint64_t x72 = ((uint64_t)x70 & 0xfffffffffffff);
- { uint128_t x73 = (x71 + x41);
- { uint64_t x74 = (uint64_t) (x73 >> 0x34);
- { uint64_t x75 = ((uint64_t)x73 & 0xfffffffffffff);
- { uint128_t x76 = (x74 + x40);
- { uint64_t x77 = (uint64_t) (x76 >> 0x34);
- { uint64_t x78 = ((uint64_t)x76 & 0xfffffffffffff);
- { uint64_t x79 = (x51 + x77);
- { uint64_t x80 = (x79 >> 0x35);
- { uint64_t x81 = (x79 & 0x1fffffffffffff);
- { uint64_t x82 = (x80 + x54);
- { uint64_t x83 = (x82 >> 0x34);
- { uint64_t x84 = (x82 & 0xfffffffffffff);
- out[0] = x81;
- out[1] = x84;
- out[2] = (x83 + x57);
- out[3] = x60;
- out[4] = x63;
- out[5] = x66;
- out[6] = x69;
- out[7] = x72;
- out[8] = x75;
- out[9] = x78;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e521m1_10limbs/femul.v b/src/Specific/solinas64_2e521m1_10limbs/femul.v
deleted file mode 100644
index 520724b7f..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e521m1_10limbs.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/solinas64_2e521m1_10limbs/femulDisplay.log b/src/Specific/solinas64_2e521m1_10limbs/femulDisplay.log
deleted file mode 100644
index bb5136485..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/femulDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- uint128_t x40 = (((uint128_t)x5 * x38) + ((0x2 * ((uint128_t)x7 * x39)) + ((0x2 * ((uint128_t)x9 * x37)) + ((0x2 * ((uint128_t)x11 * x35)) + ((0x2 * ((uint128_t)x13 * x33)) + ((0x2 * ((uint128_t)x15 * x31)) + ((0x2 * ((uint128_t)x17 * x29)) + ((0x2 * ((uint128_t)x19 * x27)) + ((0x2 * ((uint128_t)x21 * x25)) + ((uint128_t)x20 * x23))))))))));
- uint128_t x41 = ((((uint128_t)x5 * x39) + ((0x2 * ((uint128_t)x7 * x37)) + ((0x2 * ((uint128_t)x9 * x35)) + ((0x2 * ((uint128_t)x11 * x33)) + ((0x2 * ((uint128_t)x13 * x31)) + ((0x2 * ((uint128_t)x15 * x29)) + ((0x2 * ((uint128_t)x17 * x27)) + ((0x2 * ((uint128_t)x19 * x25)) + ((uint128_t)x21 * x23))))))))) + ((uint128_t)x20 * x38));
- uint128_t x42 = ((((uint128_t)x5 * x37) + ((0x2 * ((uint128_t)x7 * x35)) + ((0x2 * ((uint128_t)x9 * x33)) + ((0x2 * ((uint128_t)x11 * x31)) + ((0x2 * ((uint128_t)x13 * x29)) + ((0x2 * ((uint128_t)x15 * x27)) + ((0x2 * ((uint128_t)x17 * x25)) + ((uint128_t)x19 * x23)))))))) + (((uint128_t)x21 * x38) + ((uint128_t)x20 * x39)));
- uint128_t x43 = ((((uint128_t)x5 * x35) + ((0x2 * ((uint128_t)x7 * x33)) + ((0x2 * ((uint128_t)x9 * x31)) + ((0x2 * ((uint128_t)x11 * x29)) + ((0x2 * ((uint128_t)x13 * x27)) + ((0x2 * ((uint128_t)x15 * x25)) + ((uint128_t)x17 * x23))))))) + (((uint128_t)x19 * x38) + (((uint128_t)x21 * x39) + ((uint128_t)x20 * x37))));
- uint128_t x44 = ((((uint128_t)x5 * x33) + ((0x2 * ((uint128_t)x7 * x31)) + ((0x2 * ((uint128_t)x9 * x29)) + ((0x2 * ((uint128_t)x11 * x27)) + ((0x2 * ((uint128_t)x13 * x25)) + ((uint128_t)x15 * x23)))))) + (((uint128_t)x17 * x38) + (((uint128_t)x19 * x39) + (((uint128_t)x21 * x37) + ((uint128_t)x20 * x35)))));
- uint128_t x45 = ((((uint128_t)x5 * x31) + ((0x2 * ((uint128_t)x7 * x29)) + ((0x2 * ((uint128_t)x9 * x27)) + ((0x2 * ((uint128_t)x11 * x25)) + ((uint128_t)x13 * x23))))) + (((uint128_t)x15 * x38) + (((uint128_t)x17 * x39) + (((uint128_t)x19 * x37) + (((uint128_t)x21 * x35) + ((uint128_t)x20 * x33))))));
- uint128_t x46 = ((((uint128_t)x5 * x29) + ((0x2 * ((uint128_t)x7 * x27)) + ((0x2 * ((uint128_t)x9 * x25)) + ((uint128_t)x11 * x23)))) + (((uint128_t)x13 * x38) + (((uint128_t)x15 * x39) + (((uint128_t)x17 * x37) + (((uint128_t)x19 * x35) + (((uint128_t)x21 * x33) + ((uint128_t)x20 * x31)))))));
- uint128_t x47 = ((((uint128_t)x5 * x27) + ((0x2 * ((uint128_t)x7 * x25)) + ((uint128_t)x9 * x23))) + (((uint128_t)x11 * x38) + (((uint128_t)x13 * x39) + (((uint128_t)x15 * x37) + (((uint128_t)x17 * x35) + (((uint128_t)x19 * x33) + (((uint128_t)x21 * x31) + ((uint128_t)x20 * x29))))))));
- uint128_t x48 = ((((uint128_t)x5 * x25) + ((uint128_t)x7 * x23)) + (((uint128_t)x9 * x38) + (((uint128_t)x11 * x39) + (((uint128_t)x13 * x37) + (((uint128_t)x15 * x35) + (((uint128_t)x17 * x33) + (((uint128_t)x19 * x31) + (((uint128_t)x21 * x29) + ((uint128_t)x20 * x27)))))))));
- uint128_t x49 = (((uint128_t)x5 * x23) + ((0x2 * ((uint128_t)x7 * x38)) + ((0x2 * ((uint128_t)x9 * x39)) + ((0x2 * ((uint128_t)x11 * x37)) + ((0x2 * ((uint128_t)x13 * x35)) + ((0x2 * ((uint128_t)x15 * x33)) + ((0x2 * ((uint128_t)x17 * x31)) + ((0x2 * ((uint128_t)x19 * x29)) + ((0x2 * ((uint128_t)x21 * x27)) + (0x2 * ((uint128_t)x20 * x25)))))))))));
- uint64_t x50 = (uint64_t) (x49 >> 0x35);
- uint64_t x51 = ((uint64_t)x49 & 0x1fffffffffffff);
- uint128_t x52 = (x50 + x48);
- uint64_t x53 = (uint64_t) (x52 >> 0x34);
- uint64_t x54 = ((uint64_t)x52 & 0xfffffffffffff);
- uint128_t x55 = (x53 + x47);
- uint64_t x56 = (uint64_t) (x55 >> 0x34);
- uint64_t x57 = ((uint64_t)x55 & 0xfffffffffffff);
- uint128_t x58 = (x56 + x46);
- uint64_t x59 = (uint64_t) (x58 >> 0x34);
- uint64_t x60 = ((uint64_t)x58 & 0xfffffffffffff);
- uint128_t x61 = (x59 + x45);
- uint64_t x62 = (uint64_t) (x61 >> 0x34);
- uint64_t x63 = ((uint64_t)x61 & 0xfffffffffffff);
- uint128_t x64 = (x62 + x44);
- uint64_t x65 = (uint64_t) (x64 >> 0x34);
- uint64_t x66 = ((uint64_t)x64 & 0xfffffffffffff);
- uint128_t x67 = (x65 + x43);
- uint64_t x68 = (uint64_t) (x67 >> 0x34);
- uint64_t x69 = ((uint64_t)x67 & 0xfffffffffffff);
- uint128_t x70 = (x68 + x42);
- uint64_t x71 = (uint64_t) (x70 >> 0x34);
- uint64_t x72 = ((uint64_t)x70 & 0xfffffffffffff);
- uint128_t x73 = (x71 + x41);
- uint64_t x74 = (uint64_t) (x73 >> 0x34);
- uint64_t x75 = ((uint64_t)x73 & 0xfffffffffffff);
- uint128_t x76 = (x74 + x40);
- uint64_t x77 = (uint64_t) (x76 >> 0x34);
- uint64_t x78 = ((uint64_t)x76 & 0xfffffffffffff);
- uint64_t x79 = (x51 + x77);
- uint64_t x80 = (x79 >> 0x35);
- uint64_t x81 = (x79 & 0x1fffffffffffff);
- uint64_t x82 = (x80 + x54);
- uint64_t x83 = (x82 >> 0x34);
- uint64_t x84 = (x82 & 0xfffffffffffff);
- return (Return x78, Return x75, Return x72, Return x69, Return x66, Return x63, Return x60, (x83 + x57), Return x84, Return x81))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e521m1_10limbs/femulDisplay.v b/src/Specific/solinas64_2e521m1_10limbs/femulDisplay.v
deleted file mode 100644
index b04d9f1fb..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e521m1_10limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e521m1_10limbs/fesquare.c b/src/Specific/solinas64_2e521m1_10limbs/fesquare.c
deleted file mode 100644
index cb979cf16..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/fesquare.c
+++ /dev/null
@@ -1,68 +0,0 @@
-static void fesquare(uint64_t out[10], const uint64_t in1[10]) {
- { const uint64_t x17 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x19 = (((uint128_t)x2 * x17) + ((0x2 * ((uint128_t)x4 * x18)) + ((0x2 * ((uint128_t)x6 * x16)) + ((0x2 * ((uint128_t)x8 * x14)) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + ((0x2 * ((uint128_t)x14 * x8)) + ((0x2 * ((uint128_t)x16 * x6)) + ((0x2 * ((uint128_t)x18 * x4)) + ((uint128_t)x17 * x2))))))))));
- { uint128_t x20 = ((((uint128_t)x2 * x18) + ((0x2 * ((uint128_t)x4 * x16)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + ((0x2 * ((uint128_t)x16 * x4)) + ((uint128_t)x18 * x2))))))))) + ((uint128_t)x17 * x17));
- { uint128_t x21 = ((((uint128_t)x2 * x16) + ((0x2 * ((uint128_t)x4 * x14)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + ((0x2 * ((uint128_t)x14 * x4)) + ((uint128_t)x16 * x2)))))))) + (((uint128_t)x18 * x17) + ((uint128_t)x17 * x18)));
- { uint128_t x22 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + ((0x2 * ((uint128_t)x6 * x10)) + ((0x2 * ((uint128_t)x8 * x8)) + ((0x2 * ((uint128_t)x10 * x6)) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (((uint128_t)x16 * x17) + (((uint128_t)x18 * x18) + ((uint128_t)x17 * x16))));
- { uint128_t x23 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (((uint128_t)x14 * x17) + (((uint128_t)x16 * x18) + (((uint128_t)x18 * x16) + ((uint128_t)x17 * x14)))));
- { uint128_t x24 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (((uint128_t)x12 * x17) + (((uint128_t)x14 * x18) + (((uint128_t)x16 * x16) + (((uint128_t)x18 * x14) + ((uint128_t)x17 * x12))))));
- { uint128_t x25 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (((uint128_t)x10 * x17) + (((uint128_t)x12 * x18) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + (((uint128_t)x18 * x12) + ((uint128_t)x17 * x10)))))));
- { uint128_t x26 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (((uint128_t)x8 * x17) + (((uint128_t)x10 * x18) + (((uint128_t)x12 * x16) + (((uint128_t)x14 * x14) + (((uint128_t)x16 * x12) + (((uint128_t)x18 * x10) + ((uint128_t)x17 * x8))))))));
- { uint128_t x27 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (((uint128_t)x6 * x17) + (((uint128_t)x8 * x18) + (((uint128_t)x10 * x16) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + (((uint128_t)x16 * x10) + (((uint128_t)x18 * x8) + ((uint128_t)x17 * x6)))))))));
- { uint128_t x28 = (((uint128_t)x2 * x2) + ((0x2 * ((uint128_t)x4 * x17)) + ((0x2 * ((uint128_t)x6 * x18)) + ((0x2 * ((uint128_t)x8 * x16)) + ((0x2 * ((uint128_t)x10 * x14)) + ((0x2 * ((uint128_t)x12 * x12)) + ((0x2 * ((uint128_t)x14 * x10)) + ((0x2 * ((uint128_t)x16 * x8)) + ((0x2 * ((uint128_t)x18 * x6)) + (0x2 * ((uint128_t)x17 * x4)))))))))));
- { uint64_t x29 = (uint64_t) (x28 >> 0x35);
- { uint64_t x30 = ((uint64_t)x28 & 0x1fffffffffffff);
- { uint128_t x31 = (x29 + x27);
- { uint64_t x32 = (uint64_t) (x31 >> 0x34);
- { uint64_t x33 = ((uint64_t)x31 & 0xfffffffffffff);
- { uint128_t x34 = (x32 + x26);
- { uint64_t x35 = (uint64_t) (x34 >> 0x34);
- { uint64_t x36 = ((uint64_t)x34 & 0xfffffffffffff);
- { uint128_t x37 = (x35 + x25);
- { uint64_t x38 = (uint64_t) (x37 >> 0x34);
- { uint64_t x39 = ((uint64_t)x37 & 0xfffffffffffff);
- { uint128_t x40 = (x38 + x24);
- { uint64_t x41 = (uint64_t) (x40 >> 0x34);
- { uint64_t x42 = ((uint64_t)x40 & 0xfffffffffffff);
- { uint128_t x43 = (x41 + x23);
- { uint64_t x44 = (uint64_t) (x43 >> 0x34);
- { uint64_t x45 = ((uint64_t)x43 & 0xfffffffffffff);
- { uint128_t x46 = (x44 + x22);
- { uint64_t x47 = (uint64_t) (x46 >> 0x34);
- { uint64_t x48 = ((uint64_t)x46 & 0xfffffffffffff);
- { uint128_t x49 = (x47 + x21);
- { uint64_t x50 = (uint64_t) (x49 >> 0x34);
- { uint64_t x51 = ((uint64_t)x49 & 0xfffffffffffff);
- { uint128_t x52 = (x50 + x20);
- { uint64_t x53 = (uint64_t) (x52 >> 0x34);
- { uint64_t x54 = ((uint64_t)x52 & 0xfffffffffffff);
- { uint128_t x55 = (x53 + x19);
- { uint64_t x56 = (uint64_t) (x55 >> 0x34);
- { uint64_t x57 = ((uint64_t)x55 & 0xfffffffffffff);
- { uint64_t x58 = (x30 + x56);
- { uint64_t x59 = (x58 >> 0x35);
- { uint64_t x60 = (x58 & 0x1fffffffffffff);
- { uint64_t x61 = (x59 + x33);
- { uint64_t x62 = (x61 >> 0x34);
- { uint64_t x63 = (x61 & 0xfffffffffffff);
- out[0] = x60;
- out[1] = x63;
- out[2] = (x62 + x36);
- out[3] = x39;
- out[4] = x42;
- out[5] = x45;
- out[6] = x48;
- out[7] = x51;
- out[8] = x54;
- out[9] = x57;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e521m1_10limbs/fesquare.v b/src/Specific/solinas64_2e521m1_10limbs/fesquare.v
deleted file mode 100644
index b83f83f22..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e521m1_10limbs.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/solinas64_2e521m1_10limbs/fesquareDisplay.log b/src/Specific/solinas64_2e521m1_10limbs/fesquareDisplay.log
deleted file mode 100644
index 509d48f8b..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,52 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x19 = (((uint128_t)x2 * x17) + ((0x2 * ((uint128_t)x4 * x18)) + ((0x2 * ((uint128_t)x6 * x16)) + ((0x2 * ((uint128_t)x8 * x14)) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + ((0x2 * ((uint128_t)x14 * x8)) + ((0x2 * ((uint128_t)x16 * x6)) + ((0x2 * ((uint128_t)x18 * x4)) + ((uint128_t)x17 * x2))))))))));
- uint128_t x20 = ((((uint128_t)x2 * x18) + ((0x2 * ((uint128_t)x4 * x16)) + ((0x2 * ((uint128_t)x6 * x14)) + ((0x2 * ((uint128_t)x8 * x12)) + ((0x2 * ((uint128_t)x10 * x10)) + ((0x2 * ((uint128_t)x12 * x8)) + ((0x2 * ((uint128_t)x14 * x6)) + ((0x2 * ((uint128_t)x16 * x4)) + ((uint128_t)x18 * x2))))))))) + ((uint128_t)x17 * x17));
- uint128_t x21 = ((((uint128_t)x2 * x16) + ((0x2 * ((uint128_t)x4 * x14)) + ((0x2 * ((uint128_t)x6 * x12)) + ((0x2 * ((uint128_t)x8 * x10)) + ((0x2 * ((uint128_t)x10 * x8)) + ((0x2 * ((uint128_t)x12 * x6)) + ((0x2 * ((uint128_t)x14 * x4)) + ((uint128_t)x16 * x2)))))))) + (((uint128_t)x18 * x17) + ((uint128_t)x17 * x18)));
- uint128_t x22 = ((((uint128_t)x2 * x14) + ((0x2 * ((uint128_t)x4 * x12)) + ((0x2 * ((uint128_t)x6 * x10)) + ((0x2 * ((uint128_t)x8 * x8)) + ((0x2 * ((uint128_t)x10 * x6)) + ((0x2 * ((uint128_t)x12 * x4)) + ((uint128_t)x14 * x2))))))) + (((uint128_t)x16 * x17) + (((uint128_t)x18 * x18) + ((uint128_t)x17 * x16))));
- uint128_t x23 = ((((uint128_t)x2 * x12) + ((0x2 * ((uint128_t)x4 * x10)) + ((0x2 * ((uint128_t)x6 * x8)) + ((0x2 * ((uint128_t)x8 * x6)) + ((0x2 * ((uint128_t)x10 * x4)) + ((uint128_t)x12 * x2)))))) + (((uint128_t)x14 * x17) + (((uint128_t)x16 * x18) + (((uint128_t)x18 * x16) + ((uint128_t)x17 * x14)))));
- uint128_t x24 = ((((uint128_t)x2 * x10) + ((0x2 * ((uint128_t)x4 * x8)) + ((0x2 * ((uint128_t)x6 * x6)) + ((0x2 * ((uint128_t)x8 * x4)) + ((uint128_t)x10 * x2))))) + (((uint128_t)x12 * x17) + (((uint128_t)x14 * x18) + (((uint128_t)x16 * x16) + (((uint128_t)x18 * x14) + ((uint128_t)x17 * x12))))));
- uint128_t x25 = ((((uint128_t)x2 * x8) + ((0x2 * ((uint128_t)x4 * x6)) + ((0x2 * ((uint128_t)x6 * x4)) + ((uint128_t)x8 * x2)))) + (((uint128_t)x10 * x17) + (((uint128_t)x12 * x18) + (((uint128_t)x14 * x16) + (((uint128_t)x16 * x14) + (((uint128_t)x18 * x12) + ((uint128_t)x17 * x10)))))));
- uint128_t x26 = ((((uint128_t)x2 * x6) + ((0x2 * ((uint128_t)x4 * x4)) + ((uint128_t)x6 * x2))) + (((uint128_t)x8 * x17) + (((uint128_t)x10 * x18) + (((uint128_t)x12 * x16) + (((uint128_t)x14 * x14) + (((uint128_t)x16 * x12) + (((uint128_t)x18 * x10) + ((uint128_t)x17 * x8))))))));
- uint128_t x27 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + (((uint128_t)x6 * x17) + (((uint128_t)x8 * x18) + (((uint128_t)x10 * x16) + (((uint128_t)x12 * x14) + (((uint128_t)x14 * x12) + (((uint128_t)x16 * x10) + (((uint128_t)x18 * x8) + ((uint128_t)x17 * x6)))))))));
- uint128_t x28 = (((uint128_t)x2 * x2) + ((0x2 * ((uint128_t)x4 * x17)) + ((0x2 * ((uint128_t)x6 * x18)) + ((0x2 * ((uint128_t)x8 * x16)) + ((0x2 * ((uint128_t)x10 * x14)) + ((0x2 * ((uint128_t)x12 * x12)) + ((0x2 * ((uint128_t)x14 * x10)) + ((0x2 * ((uint128_t)x16 * x8)) + ((0x2 * ((uint128_t)x18 * x6)) + (0x2 * ((uint128_t)x17 * x4)))))))))));
- uint64_t x29 = (uint64_t) (x28 >> 0x35);
- uint64_t x30 = ((uint64_t)x28 & 0x1fffffffffffff);
- uint128_t x31 = (x29 + x27);
- uint64_t x32 = (uint64_t) (x31 >> 0x34);
- uint64_t x33 = ((uint64_t)x31 & 0xfffffffffffff);
- uint128_t x34 = (x32 + x26);
- uint64_t x35 = (uint64_t) (x34 >> 0x34);
- uint64_t x36 = ((uint64_t)x34 & 0xfffffffffffff);
- uint128_t x37 = (x35 + x25);
- uint64_t x38 = (uint64_t) (x37 >> 0x34);
- uint64_t x39 = ((uint64_t)x37 & 0xfffffffffffff);
- uint128_t x40 = (x38 + x24);
- uint64_t x41 = (uint64_t) (x40 >> 0x34);
- uint64_t x42 = ((uint64_t)x40 & 0xfffffffffffff);
- uint128_t x43 = (x41 + x23);
- uint64_t x44 = (uint64_t) (x43 >> 0x34);
- uint64_t x45 = ((uint64_t)x43 & 0xfffffffffffff);
- uint128_t x46 = (x44 + x22);
- uint64_t x47 = (uint64_t) (x46 >> 0x34);
- uint64_t x48 = ((uint64_t)x46 & 0xfffffffffffff);
- uint128_t x49 = (x47 + x21);
- uint64_t x50 = (uint64_t) (x49 >> 0x34);
- uint64_t x51 = ((uint64_t)x49 & 0xfffffffffffff);
- uint128_t x52 = (x50 + x20);
- uint64_t x53 = (uint64_t) (x52 >> 0x34);
- uint64_t x54 = ((uint64_t)x52 & 0xfffffffffffff);
- uint128_t x55 = (x53 + x19);
- uint64_t x56 = (uint64_t) (x55 >> 0x34);
- uint64_t x57 = ((uint64_t)x55 & 0xfffffffffffff);
- uint64_t x58 = (x30 + x56);
- uint64_t x59 = (x58 >> 0x35);
- uint64_t x60 = (x58 & 0x1fffffffffffff);
- uint64_t x61 = (x59 + x33);
- uint64_t x62 = (x61 >> 0x34);
- uint64_t x63 = (x61 & 0xfffffffffffff);
- return (Return x57, Return x54, Return x51, Return x48, Return x45, Return x42, Return x39, (x62 + x36), Return x63, Return x60))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e521m1_10limbs/fesquareDisplay.v b/src/Specific/solinas64_2e521m1_10limbs/fesquareDisplay.v
deleted file mode 100644
index 4d0135043..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e521m1_10limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e521m1_10limbs/fesub.c b/src/Specific/solinas64_2e521m1_10limbs/fesub.c
deleted file mode 100644
index 4557332c9..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/fesub.c
+++ /dev/null
@@ -1,33 +0,0 @@
-static void fesub(uint64_t out[10], const uint64_t in1[10], const uint64_t in2[10]) {
- { const uint64_t x20 = in1[9];
- { const uint64_t x21 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x38 = in2[9];
- { const uint64_t x39 = in2[8];
- { const uint64_t x37 = in2[7];
- { const uint64_t x35 = in2[6];
- { const uint64_t x33 = in2[5];
- { const uint64_t x31 = in2[4];
- { const uint64_t x29 = in2[3];
- { const uint64_t x27 = in2[2];
- { const uint64_t x25 = in2[1];
- { const uint64_t x23 = in2[0];
- out[0] = ((0x3ffffffffffffe + x5) - x23);
- out[1] = ((0x1ffffffffffffe + x7) - x25);
- out[2] = ((0x1ffffffffffffe + x9) - x27);
- out[3] = ((0x1ffffffffffffe + x11) - x29);
- out[4] = ((0x1ffffffffffffe + x13) - x31);
- out[5] = ((0x1ffffffffffffe + x15) - x33);
- out[6] = ((0x1ffffffffffffe + x17) - x35);
- out[7] = ((0x1ffffffffffffe + x19) - x37);
- out[8] = ((0x1ffffffffffffe + x21) - x39);
- out[9] = ((0x1ffffffffffffe + x20) - x38);
- }}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e521m1_10limbs/fesub.v b/src/Specific/solinas64_2e521m1_10limbs/fesub.v
deleted file mode 100644
index 51d6406dd..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e521m1_10limbs.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/solinas64_2e521m1_10limbs/fesubDisplay.log b/src/Specific/solinas64_2e521m1_10limbs/fesubDisplay.log
deleted file mode 100644
index d3c4adbc3..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x20, x21, x19, x17, x15, x13, x11, x9, x7, x5, (x38, x39, x37, x35, x33, x31, x29, x27, x25, x23))%core,
- (((0x1ffffffffffffe + x20) - x38), ((0x1ffffffffffffe + x21) - x39), ((0x1ffffffffffffe + x19) - x37), ((0x1ffffffffffffe + x17) - x35), ((0x1ffffffffffffe + x15) - x33), ((0x1ffffffffffffe + x13) - x31), ((0x1ffffffffffffe + x11) - x29), ((0x1ffffffffffffe + x9) - x27), ((0x1ffffffffffffe + x7) - x25), ((0x3ffffffffffffe + x5) - x23)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e521m1_10limbs/fesubDisplay.v b/src/Specific/solinas64_2e521m1_10limbs/fesubDisplay.v
deleted file mode 100644
index 72db3f8c5..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e521m1_10limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e521m1_10limbs/freeze.c b/src/Specific/solinas64_2e521m1_10limbs/freeze.c
deleted file mode 100644
index da704fa48..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/freeze.c
+++ /dev/null
@@ -1,54 +0,0 @@
-static void freeze(uint64_t out[10], const uint64_t in1[10]) {
- { const uint64_t x17 = in1[9];
- { const uint64_t x18 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffffffff);
- { uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x4, 0xfffffffffffff);
- { uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x6, 0xfffffffffffff);
- { uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x8, 0xfffffffffffff);
- { uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x10, 0xfffffffffffff);
- { uint64_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x12, 0xfffffffffffff);
- { uint64_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x14, 0xfffffffffffff);
- { uint64_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x39, Return x16, 0xfffffffffffff);
- { uint64_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x18, 0xfffffffffffff);
- { uint64_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x17, 0xfffffffffffff);
- { uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL);
- { uint64_t x50 = (x49 & 0x1fffffffffffff);
- { uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- { uint64_t x54 = (x49 & 0xfffffffffffff);
- { uint64_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- { uint64_t x58 = (x49 & 0xfffffffffffff);
- { uint64_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- { uint64_t x62 = (x49 & 0xfffffffffffff);
- { uint64_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- { uint64_t x66 = (x49 & 0xfffffffffffff);
- { uint64_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- { uint64_t x70 = (x49 & 0xfffffffffffff);
- { uint64_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- { uint64_t x74 = (x49 & 0xfffffffffffff);
- { uint64_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- { uint64_t x78 = (x49 & 0xfffffffffffff);
- { uint64_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- { uint64_t x82 = (x49 & 0xfffffffffffff);
- { uint64_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- { uint64_t x86 = (x49 & 0xfffffffffffff);
- { uint64_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- out[0] = x52;
- out[1] = x56;
- out[2] = x60;
- out[3] = x64;
- out[4] = x68;
- out[5] = x72;
- out[6] = x76;
- out[7] = x80;
- out[8] = x84;
- out[9] = x88;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e521m1_10limbs/freeze.v b/src/Specific/solinas64_2e521m1_10limbs/freeze.v
deleted file mode 100644
index 8bca1d619..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e521m1_10limbs.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/solinas64_2e521m1_10limbs/freezeDisplay.log b/src/Specific/solinas64_2e521m1_10limbs/freezeDisplay.log
deleted file mode 100644
index f4b207247..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/freezeDisplay.log
+++ /dev/null
@@ -1,38 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x17, x18, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x20, uint8_t x21 = Op (Syntax.SubWithGetBorrow 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x1fffffffffffff);
- uint64_t x23, uint8_t x24 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x21, Return x4, 0xfffffffffffff);
- uint64_t x26, uint8_t x27 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x24, Return x6, 0xfffffffffffff);
- uint64_t x29, uint8_t x30 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x27, Return x8, 0xfffffffffffff);
- uint64_t x32, uint8_t x33 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x30, Return x10, 0xfffffffffffff);
- uint64_t x35, uint8_t x36 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x33, Return x12, 0xfffffffffffff);
- uint64_t x38, uint8_t x39 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x36, Return x14, 0xfffffffffffff);
- uint64_t x41, uint8_t x42 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x39, Return x16, 0xfffffffffffff);
- uint64_t x44, uint8_t x45 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x42, Return x18, 0xfffffffffffff);
- uint64_t x47, uint8_t x48 = Op (Syntax.SubWithGetBorrow 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x45, Return x17, 0xfffffffffffff);
- uint64_t x49 = cmovznz64(x48, 0x0, 0xffffffffffffffffL);
- uint64_t x50 = (x49 & 0x1fffffffffffff);
- uint64_t x52, uint8_t x53 = Op (Syntax.AddWithGetCarry 53 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x20, Return x50);
- uint64_t x54 = (x49 & 0xfffffffffffff);
- uint64_t x56, uint8_t x57 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x53, Return x23, Return x54);
- uint64_t x58 = (x49 & 0xfffffffffffff);
- uint64_t x60, uint8_t x61 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x57, Return x26, Return x58);
- uint64_t x62 = (x49 & 0xfffffffffffff);
- uint64_t x64, uint8_t x65 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x61, Return x29, Return x62);
- uint64_t x66 = (x49 & 0xfffffffffffff);
- uint64_t x68, uint8_t x69 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x65, Return x32, Return x66);
- uint64_t x70 = (x49 & 0xfffffffffffff);
- uint64_t x72, uint8_t x73 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x69, Return x35, Return x70);
- uint64_t x74 = (x49 & 0xfffffffffffff);
- uint64_t x76, uint8_t x77 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x73, Return x38, Return x74);
- uint64_t x78 = (x49 & 0xfffffffffffff);
- uint64_t x80, uint8_t x81 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x77, Return x41, Return x78);
- uint64_t x82 = (x49 & 0xfffffffffffff);
- uint64_t x84, uint8_t x85 = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x81, Return x44, Return x82);
- uint64_t x86 = (x49 & 0xfffffffffffff);
- uint64_t x88, uint8_t _ = Op (Syntax.AddWithGetCarry 52 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x85, Return x47, Return x86);
- (Return x88, Return x84, Return x80, Return x76, Return x72, Return x68, Return x64, Return x60, Return x56, Return x52))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e521m1_10limbs/freezeDisplay.v b/src/Specific/solinas64_2e521m1_10limbs/freezeDisplay.v
deleted file mode 100644
index 0614d10e0..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e521m1_10limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e521m1_10limbs/py_interpreter.sh b/src/Specific/solinas64_2e521m1_10limbs/py_interpreter.sh
deleted file mode 100755
index 797531875..000000000
--- a/src/Specific/solinas64_2e521m1_10limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**521 - 1' -Dmodulus_bytes='52.1' -Da24='121665'
diff --git a/src/Specific/solinas64_2e521m1_9limbs/CurveParameters.v b/src/Specific/solinas64_2e521m1_9limbs/CurveParameters.v
deleted file mode 100644
index c13c77f18..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/CurveParameters.v
+++ /dev/null
@@ -1,39 +0,0 @@
-Require Import Crypto.Specific.Framework.RawCurveParameters.
-Require Import Crypto.Util.LetIn.
-
-(***
-Modulus : 2^521 - 1
-Base: 57 + 8/9
-***)
-
-Definition curve : CurveParameters :=
- {|
- sz := 9%nat;
- base := 57 + 8/9;
- bitwidth := 64;
- s := 2^521;
- c := [(1, 1)];
- carry_chains := Some [seq 0 (pred 9); [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/solinas64_2e521m1_9limbs/Synthesis.v b/src/Specific/solinas64_2e521m1_9limbs/Synthesis.v
deleted file mode 100644
index eefb47c6e..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/Synthesis.v
+++ /dev/null
@@ -1,9 +0,0 @@
-Require Import Crypto.Specific.Framework.SynthesisFramework.
-Require Import Crypto.Specific.solinas64_2e521m1_9limbs.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/solinas64_2e521m1_9limbs/compiler.sh b/src/Specific/solinas64_2e521m1_9limbs/compiler.sh
deleted file mode 100755
index 5b30c5e61..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{58,58,58,58,58,58,58,58,57}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='66' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<521) - 1' "$@"
diff --git a/src/Specific/solinas64_2e521m1_9limbs/compilerxx.sh b/src/Specific/solinas64_2e521m1_9limbs/compilerxx.sh
deleted file mode 100755
index 221314988..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x39}' -Dbitwidth='64' -Dlimb_weight_gaps_array='{58,58,58,58,58,58,58,58,57}' -Dmodulus_array='{0x01,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}' -Dmodulus_bytes_val='66' -Dmodulus_limbs='9' -Dq_mpz='(1_mpz<<521) - 1' "$@"
diff --git a/src/Specific/solinas64_2e521m1_9limbs/feadd.c b/src/Specific/solinas64_2e521m1_9limbs/feadd.c
deleted file mode 100644
index 98ab4434c..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/feadd.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void feadd(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- out[0] = (x5 + x21);
- out[1] = (x7 + x23);
- out[2] = (x9 + x25);
- out[3] = (x11 + x27);
- out[4] = (x13 + x29);
- out[5] = (x15 + x31);
- out[6] = (x17 + x33);
- out[7] = (x19 + x35);
- out[8] = (x18 + x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e521m1_9limbs/feadd.v b/src/Specific/solinas64_2e521m1_9limbs/feadd.v
deleted file mode 100644
index 01fbdd97f..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/feadd.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e521m1_9limbs.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/solinas64_2e521m1_9limbs/feaddDisplay.log b/src/Specific/solinas64_2e521m1_9limbs/feaddDisplay.log
deleted file mode 100644
index 3b92b1c5c..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/feaddDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- ((x18 + x34), (x19 + x35), (x17 + x33), (x15 + x31), (x13 + x29), (x11 + x27), (x9 + x25), (x7 + x23), (x5 + x21)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e521m1_9limbs/feaddDisplay.v b/src/Specific/solinas64_2e521m1_9limbs/feaddDisplay.v
deleted file mode 100644
index 61c8132de..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/feaddDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e521m1_9limbs.feadd.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display add.
diff --git a/src/Specific/solinas64_2e521m1_9limbs/fecarry.v b/src/Specific/solinas64_2e521m1_9limbs/fecarry.v
deleted file mode 100644
index caaf7863a..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/fecarry.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e521m1_9limbs.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/solinas64_2e521m1_9limbs/fecarryDisplay.v b/src/Specific/solinas64_2e521m1_9limbs/fecarryDisplay.v
deleted file mode 100644
index 872755421..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/fecarryDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e521m1_9limbs.fecarry.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display carry.
diff --git a/src/Specific/solinas64_2e521m1_9limbs/femul.c b/src/Specific/solinas64_2e521m1_9limbs/femul.c
deleted file mode 100644
index 1cc878a69..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/femul.c
+++ /dev/null
@@ -1,71 +0,0 @@
-static void femul(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- { uint128_t x36 = (((uint128_t)x5 * x34) + (((uint128_t)x7 * x35) + (((uint128_t)x9 * x33) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + (((uint128_t)x19 * x23) + ((uint128_t)x18 * x21)))))))));
- { uint128_t x37 = ((((uint128_t)x5 * x35) + (((uint128_t)x7 * x33) + (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + (((uint128_t)x17 * x23) + ((uint128_t)x19 * x21)))))))) + (0x2 * ((uint128_t)x18 * x34)));
- { uint128_t x38 = ((((uint128_t)x5 * x33) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + ((uint128_t)x17 * x21))))))) + ((0x2 * ((uint128_t)x19 * x34)) + (0x2 * ((uint128_t)x18 * x35))));
- { uint128_t x39 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + ((uint128_t)x15 * x21)))))) + ((0x2 * ((uint128_t)x17 * x34)) + ((0x2 * ((uint128_t)x19 * x35)) + (0x2 * ((uint128_t)x18 * x33)))));
- { uint128_t x40 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + ((uint128_t)x13 * x21))))) + ((0x2 * ((uint128_t)x15 * x34)) + ((0x2 * ((uint128_t)x17 * x35)) + ((0x2 * ((uint128_t)x19 * x33)) + (0x2 * ((uint128_t)x18 * x31))))));
- { uint128_t x41 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + ((uint128_t)x11 * x21)))) + ((0x2 * ((uint128_t)x13 * x34)) + ((0x2 * ((uint128_t)x15 * x35)) + ((0x2 * ((uint128_t)x17 * x33)) + ((0x2 * ((uint128_t)x19 * x31)) + (0x2 * ((uint128_t)x18 * x29)))))));
- { uint128_t x42 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + ((uint128_t)x9 * x21))) + ((0x2 * ((uint128_t)x11 * x34)) + ((0x2 * ((uint128_t)x13 * x35)) + ((0x2 * ((uint128_t)x15 * x33)) + ((0x2 * ((uint128_t)x17 * x31)) + ((0x2 * ((uint128_t)x19 * x29)) + (0x2 * ((uint128_t)x18 * x27))))))));
- { uint128_t x43 = ((((uint128_t)x5 * x23) + ((uint128_t)x7 * x21)) + ((0x2 * ((uint128_t)x9 * x34)) + ((0x2 * ((uint128_t)x11 * x35)) + ((0x2 * ((uint128_t)x13 * x33)) + ((0x2 * ((uint128_t)x15 * x31)) + ((0x2 * ((uint128_t)x17 * x29)) + ((0x2 * ((uint128_t)x19 * x27)) + (0x2 * ((uint128_t)x18 * x25)))))))));
- { uint128_t x44 = (((uint128_t)x5 * x21) + ((0x2 * ((uint128_t)x7 * x34)) + ((0x2 * ((uint128_t)x9 * x35)) + ((0x2 * ((uint128_t)x11 * x33)) + ((0x2 * ((uint128_t)x13 * x31)) + ((0x2 * ((uint128_t)x15 * x29)) + ((0x2 * ((uint128_t)x17 * x27)) + ((0x2 * ((uint128_t)x19 * x25)) + (0x2 * ((uint128_t)x18 * x23))))))))));
- { uint128_t x45 = (x44 >> 0x3a);
- { uint64_t x46 = ((uint64_t)x44 & 0x3ffffffffffffff);
- { uint128_t x47 = (x45 + x43);
- { uint128_t x48 = (x47 >> 0x3a);
- { uint64_t x49 = ((uint64_t)x47 & 0x3ffffffffffffff);
- { uint128_t x50 = (x48 + x42);
- { uint128_t x51 = (x50 >> 0x3a);
- { uint64_t x52 = ((uint64_t)x50 & 0x3ffffffffffffff);
- { uint128_t x53 = (x51 + x41);
- { uint128_t x54 = (x53 >> 0x3a);
- { uint64_t x55 = ((uint64_t)x53 & 0x3ffffffffffffff);
- { uint128_t x56 = (x54 + x40);
- { uint128_t x57 = (x56 >> 0x3a);
- { uint64_t x58 = ((uint64_t)x56 & 0x3ffffffffffffff);
- { uint128_t x59 = (x57 + x39);
- { uint128_t x60 = (x59 >> 0x3a);
- { uint64_t x61 = ((uint64_t)x59 & 0x3ffffffffffffff);
- { uint128_t x62 = (x60 + x38);
- { uint128_t x63 = (x62 >> 0x3a);
- { uint64_t x64 = ((uint64_t)x62 & 0x3ffffffffffffff);
- { uint128_t x65 = (x63 + x37);
- { uint128_t x66 = (x65 >> 0x3a);
- { uint64_t x67 = ((uint64_t)x65 & 0x3ffffffffffffff);
- { uint128_t x68 = (x66 + x36);
- { uint128_t x69 = (x68 >> 0x39);
- { uint64_t x70 = ((uint64_t)x68 & 0x1ffffffffffffff);
- { uint128_t x71 = (x46 + x69);
- { uint64_t x72 = (uint64_t) (x71 >> 0x3a);
- { uint64_t x73 = ((uint64_t)x71 & 0x3ffffffffffffff);
- { uint64_t x74 = (x72 + x49);
- { uint64_t x75 = (x74 >> 0x3a);
- { uint64_t x76 = (x74 & 0x3ffffffffffffff);
- out[0] = x73;
- out[1] = x76;
- out[2] = (x75 + x52);
- out[3] = x55;
- out[4] = x58;
- out[5] = x61;
- out[6] = x64;
- out[7] = x67;
- out[8] = x70;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e521m1_9limbs/femul.v b/src/Specific/solinas64_2e521m1_9limbs/femul.v
deleted file mode 100644
index fee786799..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/femul.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e521m1_9limbs.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/solinas64_2e521m1_9limbs/femulDisplay.log b/src/Specific/solinas64_2e521m1_9limbs/femulDisplay.log
deleted file mode 100644
index 811a3bdb6..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/femulDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- uint128_t x36 = (((uint128_t)x5 * x34) + (((uint128_t)x7 * x35) + (((uint128_t)x9 * x33) + (((uint128_t)x11 * x31) + (((uint128_t)x13 * x29) + (((uint128_t)x15 * x27) + (((uint128_t)x17 * x25) + (((uint128_t)x19 * x23) + ((uint128_t)x18 * x21)))))))));
- uint128_t x37 = ((((uint128_t)x5 * x35) + (((uint128_t)x7 * x33) + (((uint128_t)x9 * x31) + (((uint128_t)x11 * x29) + (((uint128_t)x13 * x27) + (((uint128_t)x15 * x25) + (((uint128_t)x17 * x23) + ((uint128_t)x19 * x21)))))))) + (0x2 * ((uint128_t)x18 * x34)));
- uint128_t x38 = ((((uint128_t)x5 * x33) + (((uint128_t)x7 * x31) + (((uint128_t)x9 * x29) + (((uint128_t)x11 * x27) + (((uint128_t)x13 * x25) + (((uint128_t)x15 * x23) + ((uint128_t)x17 * x21))))))) + ((0x2 * ((uint128_t)x19 * x34)) + (0x2 * ((uint128_t)x18 * x35))));
- uint128_t x39 = ((((uint128_t)x5 * x31) + (((uint128_t)x7 * x29) + (((uint128_t)x9 * x27) + (((uint128_t)x11 * x25) + (((uint128_t)x13 * x23) + ((uint128_t)x15 * x21)))))) + ((0x2 * ((uint128_t)x17 * x34)) + ((0x2 * ((uint128_t)x19 * x35)) + (0x2 * ((uint128_t)x18 * x33)))));
- uint128_t x40 = ((((uint128_t)x5 * x29) + (((uint128_t)x7 * x27) + (((uint128_t)x9 * x25) + (((uint128_t)x11 * x23) + ((uint128_t)x13 * x21))))) + ((0x2 * ((uint128_t)x15 * x34)) + ((0x2 * ((uint128_t)x17 * x35)) + ((0x2 * ((uint128_t)x19 * x33)) + (0x2 * ((uint128_t)x18 * x31))))));
- uint128_t x41 = ((((uint128_t)x5 * x27) + (((uint128_t)x7 * x25) + (((uint128_t)x9 * x23) + ((uint128_t)x11 * x21)))) + ((0x2 * ((uint128_t)x13 * x34)) + ((0x2 * ((uint128_t)x15 * x35)) + ((0x2 * ((uint128_t)x17 * x33)) + ((0x2 * ((uint128_t)x19 * x31)) + (0x2 * ((uint128_t)x18 * x29)))))));
- uint128_t x42 = ((((uint128_t)x5 * x25) + (((uint128_t)x7 * x23) + ((uint128_t)x9 * x21))) + ((0x2 * ((uint128_t)x11 * x34)) + ((0x2 * ((uint128_t)x13 * x35)) + ((0x2 * ((uint128_t)x15 * x33)) + ((0x2 * ((uint128_t)x17 * x31)) + ((0x2 * ((uint128_t)x19 * x29)) + (0x2 * ((uint128_t)x18 * x27))))))));
- uint128_t x43 = ((((uint128_t)x5 * x23) + ((uint128_t)x7 * x21)) + ((0x2 * ((uint128_t)x9 * x34)) + ((0x2 * ((uint128_t)x11 * x35)) + ((0x2 * ((uint128_t)x13 * x33)) + ((0x2 * ((uint128_t)x15 * x31)) + ((0x2 * ((uint128_t)x17 * x29)) + ((0x2 * ((uint128_t)x19 * x27)) + (0x2 * ((uint128_t)x18 * x25)))))))));
- uint128_t x44 = (((uint128_t)x5 * x21) + ((0x2 * ((uint128_t)x7 * x34)) + ((0x2 * ((uint128_t)x9 * x35)) + ((0x2 * ((uint128_t)x11 * x33)) + ((0x2 * ((uint128_t)x13 * x31)) + ((0x2 * ((uint128_t)x15 * x29)) + ((0x2 * ((uint128_t)x17 * x27)) + ((0x2 * ((uint128_t)x19 * x25)) + (0x2 * ((uint128_t)x18 * x23))))))))));
- uint128_t x45 = (x44 >> 0x3a);
- uint64_t x46 = ((uint64_t)x44 & 0x3ffffffffffffff);
- uint128_t x47 = (x45 + x43);
- uint128_t x48 = (x47 >> 0x3a);
- uint64_t x49 = ((uint64_t)x47 & 0x3ffffffffffffff);
- uint128_t x50 = (x48 + x42);
- uint128_t x51 = (x50 >> 0x3a);
- uint64_t x52 = ((uint64_t)x50 & 0x3ffffffffffffff);
- uint128_t x53 = (x51 + x41);
- uint128_t x54 = (x53 >> 0x3a);
- uint64_t x55 = ((uint64_t)x53 & 0x3ffffffffffffff);
- uint128_t x56 = (x54 + x40);
- uint128_t x57 = (x56 >> 0x3a);
- uint64_t x58 = ((uint64_t)x56 & 0x3ffffffffffffff);
- uint128_t x59 = (x57 + x39);
- uint128_t x60 = (x59 >> 0x3a);
- uint64_t x61 = ((uint64_t)x59 & 0x3ffffffffffffff);
- uint128_t x62 = (x60 + x38);
- uint128_t x63 = (x62 >> 0x3a);
- uint64_t x64 = ((uint64_t)x62 & 0x3ffffffffffffff);
- uint128_t x65 = (x63 + x37);
- uint128_t x66 = (x65 >> 0x3a);
- uint64_t x67 = ((uint64_t)x65 & 0x3ffffffffffffff);
- uint128_t x68 = (x66 + x36);
- uint128_t x69 = (x68 >> 0x39);
- uint64_t x70 = ((uint64_t)x68 & 0x1ffffffffffffff);
- uint128_t x71 = (x46 + x69);
- uint64_t x72 = (uint64_t) (x71 >> 0x3a);
- uint64_t x73 = ((uint64_t)x71 & 0x3ffffffffffffff);
- uint64_t x74 = (x72 + x49);
- uint64_t x75 = (x74 >> 0x3a);
- uint64_t x76 = (x74 & 0x3ffffffffffffff);
- return (Return x70, Return x67, Return x64, Return x61, Return x58, Return x55, (x75 + x52), Return x76, Return x73))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e521m1_9limbs/femulDisplay.v b/src/Specific/solinas64_2e521m1_9limbs/femulDisplay.v
deleted file mode 100644
index 58d2ad4a3..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/femulDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e521m1_9limbs.femul.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display mul.
diff --git a/src/Specific/solinas64_2e521m1_9limbs/fesquare.c b/src/Specific/solinas64_2e521m1_9limbs/fesquare.c
deleted file mode 100644
index 2d3ee2421..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/fesquare.c
+++ /dev/null
@@ -1,62 +0,0 @@
-static void fesquare(uint64_t out[9], const uint64_t in1[9]) {
- { const uint64_t x15 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint128_t x17 = (((uint128_t)x2 * x15) + (((uint128_t)x4 * x16) + (((uint128_t)x6 * x14) + (((uint128_t)x8 * x12) + (((uint128_t)x10 * x10) + (((uint128_t)x12 * x8) + (((uint128_t)x14 * x6) + (((uint128_t)x16 * x4) + ((uint128_t)x15 * x2)))))))));
- { uint128_t x18 = ((((uint128_t)x2 * x16) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x16 * x2)))))))) + (0x2 * ((uint128_t)x15 * x15)));
- { uint128_t x19 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + ((0x2 * ((uint128_t)x16 * x15)) + (0x2 * ((uint128_t)x15 * x16))));
- { uint128_t x20 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + ((0x2 * ((uint128_t)x14 * x15)) + ((0x2 * ((uint128_t)x16 * x16)) + (0x2 * ((uint128_t)x15 * x14)))));
- { uint128_t x21 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + ((0x2 * ((uint128_t)x12 * x15)) + ((0x2 * ((uint128_t)x14 * x16)) + ((0x2 * ((uint128_t)x16 * x14)) + (0x2 * ((uint128_t)x15 * x12))))));
- { uint128_t x22 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + ((0x2 * ((uint128_t)x10 * x15)) + ((0x2 * ((uint128_t)x12 * x16)) + ((0x2 * ((uint128_t)x14 * x14)) + ((0x2 * ((uint128_t)x16 * x12)) + (0x2 * ((uint128_t)x15 * x10)))))));
- { uint128_t x23 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + ((0x2 * ((uint128_t)x8 * x15)) + ((0x2 * ((uint128_t)x10 * x16)) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + ((0x2 * ((uint128_t)x16 * x10)) + (0x2 * ((uint128_t)x15 * x8))))))));
- { uint128_t x24 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + ((0x2 * ((uint128_t)x6 * x15)) + ((0x2 * ((uint128_t)x8 * x16)) + ((0x2 * ((uint128_t)x10 * x14)) + ((0x2 * ((uint128_t)x12 * x12)) + ((0x2 * ((uint128_t)x14 * x10)) + ((0x2 * ((uint128_t)x16 * x8)) + (0x2 * ((uint128_t)x15 * x6)))))))));
- { uint128_t x25 = (((uint128_t)x2 * x2) + ((0x2 * ((uint128_t)x4 * x15)) + ((0x2 * ((uint128_t)x6 * x16)) + ((0x2 * ((uint128_t)x8 * x14)) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + ((0x2 * ((uint128_t)x14 * x8)) + ((0x2 * ((uint128_t)x16 * x6)) + (0x2 * ((uint128_t)x15 * x4))))))))));
- { uint128_t x26 = (x25 >> 0x3a);
- { uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffffffff);
- { uint128_t x28 = (x26 + x24);
- { uint128_t x29 = (x28 >> 0x3a);
- { uint64_t x30 = ((uint64_t)x28 & 0x3ffffffffffffff);
- { uint128_t x31 = (x29 + x23);
- { uint128_t x32 = (x31 >> 0x3a);
- { uint64_t x33 = ((uint64_t)x31 & 0x3ffffffffffffff);
- { uint128_t x34 = (x32 + x22);
- { uint128_t x35 = (x34 >> 0x3a);
- { uint64_t x36 = ((uint64_t)x34 & 0x3ffffffffffffff);
- { uint128_t x37 = (x35 + x21);
- { uint128_t x38 = (x37 >> 0x3a);
- { uint64_t x39 = ((uint64_t)x37 & 0x3ffffffffffffff);
- { uint128_t x40 = (x38 + x20);
- { uint128_t x41 = (x40 >> 0x3a);
- { uint64_t x42 = ((uint64_t)x40 & 0x3ffffffffffffff);
- { uint128_t x43 = (x41 + x19);
- { uint128_t x44 = (x43 >> 0x3a);
- { uint64_t x45 = ((uint64_t)x43 & 0x3ffffffffffffff);
- { uint128_t x46 = (x44 + x18);
- { uint128_t x47 = (x46 >> 0x3a);
- { uint64_t x48 = ((uint64_t)x46 & 0x3ffffffffffffff);
- { uint128_t x49 = (x47 + x17);
- { uint128_t x50 = (x49 >> 0x39);
- { uint64_t x51 = ((uint64_t)x49 & 0x1ffffffffffffff);
- { uint128_t x52 = (x27 + x50);
- { uint64_t x53 = (uint64_t) (x52 >> 0x3a);
- { uint64_t x54 = ((uint64_t)x52 & 0x3ffffffffffffff);
- { uint64_t x55 = (x53 + x30);
- { uint64_t x56 = (x55 >> 0x3a);
- { uint64_t x57 = (x55 & 0x3ffffffffffffff);
- out[0] = x54;
- out[1] = x57;
- out[2] = (x56 + x33);
- out[3] = x36;
- out[4] = x39;
- out[5] = x42;
- out[6] = x45;
- out[7] = x48;
- out[8] = x51;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e521m1_9limbs/fesquare.v b/src/Specific/solinas64_2e521m1_9limbs/fesquare.v
deleted file mode 100644
index 177792d13..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/fesquare.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e521m1_9limbs.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/solinas64_2e521m1_9limbs/fesquareDisplay.log b/src/Specific/solinas64_2e521m1_9limbs/fesquareDisplay.log
deleted file mode 100644
index 95c38954d..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/fesquareDisplay.log
+++ /dev/null
@@ -1,48 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint128_t x17 = (((uint128_t)x2 * x15) + (((uint128_t)x4 * x16) + (((uint128_t)x6 * x14) + (((uint128_t)x8 * x12) + (((uint128_t)x10 * x10) + (((uint128_t)x12 * x8) + (((uint128_t)x14 * x6) + (((uint128_t)x16 * x4) + ((uint128_t)x15 * x2)))))))));
- uint128_t x18 = ((((uint128_t)x2 * x16) + (((uint128_t)x4 * x14) + (((uint128_t)x6 * x12) + (((uint128_t)x8 * x10) + (((uint128_t)x10 * x8) + (((uint128_t)x12 * x6) + (((uint128_t)x14 * x4) + ((uint128_t)x16 * x2)))))))) + (0x2 * ((uint128_t)x15 * x15)));
- uint128_t x19 = ((((uint128_t)x2 * x14) + (((uint128_t)x4 * x12) + (((uint128_t)x6 * x10) + (((uint128_t)x8 * x8) + (((uint128_t)x10 * x6) + (((uint128_t)x12 * x4) + ((uint128_t)x14 * x2))))))) + ((0x2 * ((uint128_t)x16 * x15)) + (0x2 * ((uint128_t)x15 * x16))));
- uint128_t x20 = ((((uint128_t)x2 * x12) + (((uint128_t)x4 * x10) + (((uint128_t)x6 * x8) + (((uint128_t)x8 * x6) + (((uint128_t)x10 * x4) + ((uint128_t)x12 * x2)))))) + ((0x2 * ((uint128_t)x14 * x15)) + ((0x2 * ((uint128_t)x16 * x16)) + (0x2 * ((uint128_t)x15 * x14)))));
- uint128_t x21 = ((((uint128_t)x2 * x10) + (((uint128_t)x4 * x8) + (((uint128_t)x6 * x6) + (((uint128_t)x8 * x4) + ((uint128_t)x10 * x2))))) + ((0x2 * ((uint128_t)x12 * x15)) + ((0x2 * ((uint128_t)x14 * x16)) + ((0x2 * ((uint128_t)x16 * x14)) + (0x2 * ((uint128_t)x15 * x12))))));
- uint128_t x22 = ((((uint128_t)x2 * x8) + (((uint128_t)x4 * x6) + (((uint128_t)x6 * x4) + ((uint128_t)x8 * x2)))) + ((0x2 * ((uint128_t)x10 * x15)) + ((0x2 * ((uint128_t)x12 * x16)) + ((0x2 * ((uint128_t)x14 * x14)) + ((0x2 * ((uint128_t)x16 * x12)) + (0x2 * ((uint128_t)x15 * x10)))))));
- uint128_t x23 = ((((uint128_t)x2 * x6) + (((uint128_t)x4 * x4) + ((uint128_t)x6 * x2))) + ((0x2 * ((uint128_t)x8 * x15)) + ((0x2 * ((uint128_t)x10 * x16)) + ((0x2 * ((uint128_t)x12 * x14)) + ((0x2 * ((uint128_t)x14 * x12)) + ((0x2 * ((uint128_t)x16 * x10)) + (0x2 * ((uint128_t)x15 * x8))))))));
- uint128_t x24 = ((((uint128_t)x2 * x4) + ((uint128_t)x4 * x2)) + ((0x2 * ((uint128_t)x6 * x15)) + ((0x2 * ((uint128_t)x8 * x16)) + ((0x2 * ((uint128_t)x10 * x14)) + ((0x2 * ((uint128_t)x12 * x12)) + ((0x2 * ((uint128_t)x14 * x10)) + ((0x2 * ((uint128_t)x16 * x8)) + (0x2 * ((uint128_t)x15 * x6)))))))));
- uint128_t x25 = (((uint128_t)x2 * x2) + ((0x2 * ((uint128_t)x4 * x15)) + ((0x2 * ((uint128_t)x6 * x16)) + ((0x2 * ((uint128_t)x8 * x14)) + ((0x2 * ((uint128_t)x10 * x12)) + ((0x2 * ((uint128_t)x12 * x10)) + ((0x2 * ((uint128_t)x14 * x8)) + ((0x2 * ((uint128_t)x16 * x6)) + (0x2 * ((uint128_t)x15 * x4))))))))));
- uint128_t x26 = (x25 >> 0x3a);
- uint64_t x27 = ((uint64_t)x25 & 0x3ffffffffffffff);
- uint128_t x28 = (x26 + x24);
- uint128_t x29 = (x28 >> 0x3a);
- uint64_t x30 = ((uint64_t)x28 & 0x3ffffffffffffff);
- uint128_t x31 = (x29 + x23);
- uint128_t x32 = (x31 >> 0x3a);
- uint64_t x33 = ((uint64_t)x31 & 0x3ffffffffffffff);
- uint128_t x34 = (x32 + x22);
- uint128_t x35 = (x34 >> 0x3a);
- uint64_t x36 = ((uint64_t)x34 & 0x3ffffffffffffff);
- uint128_t x37 = (x35 + x21);
- uint128_t x38 = (x37 >> 0x3a);
- uint64_t x39 = ((uint64_t)x37 & 0x3ffffffffffffff);
- uint128_t x40 = (x38 + x20);
- uint128_t x41 = (x40 >> 0x3a);
- uint64_t x42 = ((uint64_t)x40 & 0x3ffffffffffffff);
- uint128_t x43 = (x41 + x19);
- uint128_t x44 = (x43 >> 0x3a);
- uint64_t x45 = ((uint64_t)x43 & 0x3ffffffffffffff);
- uint128_t x46 = (x44 + x18);
- uint128_t x47 = (x46 >> 0x3a);
- uint64_t x48 = ((uint64_t)x46 & 0x3ffffffffffffff);
- uint128_t x49 = (x47 + x17);
- uint128_t x50 = (x49 >> 0x39);
- uint64_t x51 = ((uint64_t)x49 & 0x1ffffffffffffff);
- uint128_t x52 = (x27 + x50);
- uint64_t x53 = (uint64_t) (x52 >> 0x3a);
- uint64_t x54 = ((uint64_t)x52 & 0x3ffffffffffffff);
- uint64_t x55 = (x53 + x30);
- uint64_t x56 = (x55 >> 0x3a);
- uint64_t x57 = (x55 & 0x3ffffffffffffff);
- return (Return x51, Return x48, Return x45, Return x42, Return x39, Return x36, (x56 + x33), Return x57, Return x54))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e521m1_9limbs/fesquareDisplay.v b/src/Specific/solinas64_2e521m1_9limbs/fesquareDisplay.v
deleted file mode 100644
index c169f93f1..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/fesquareDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e521m1_9limbs.fesquare.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display square.
diff --git a/src/Specific/solinas64_2e521m1_9limbs/fesub.c b/src/Specific/solinas64_2e521m1_9limbs/fesub.c
deleted file mode 100644
index 6e9f18b48..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/fesub.c
+++ /dev/null
@@ -1,30 +0,0 @@
-static void fesub(uint64_t out[9], const uint64_t in1[9], const uint64_t in2[9]) {
- { const uint64_t x18 = in1[8];
- { const uint64_t x19 = in1[7];
- { const uint64_t x17 = in1[6];
- { const uint64_t x15 = in1[5];
- { const uint64_t x13 = in1[4];
- { const uint64_t x11 = in1[3];
- { const uint64_t x9 = in1[2];
- { const uint64_t x7 = in1[1];
- { const uint64_t x5 = in1[0];
- { const uint64_t x34 = in2[8];
- { const uint64_t x35 = in2[7];
- { const uint64_t x33 = in2[6];
- { const uint64_t x31 = in2[5];
- { const uint64_t x29 = in2[4];
- { const uint64_t x27 = in2[3];
- { const uint64_t x25 = in2[2];
- { const uint64_t x23 = in2[1];
- { const uint64_t x21 = in2[0];
- out[0] = ((0x7fffffffffffffe + x5) - x21);
- out[1] = ((0x7fffffffffffffe + x7) - x23);
- out[2] = ((0x7fffffffffffffe + x9) - x25);
- out[3] = ((0x7fffffffffffffe + x11) - x27);
- out[4] = ((0x7fffffffffffffe + x13) - x29);
- out[5] = ((0x7fffffffffffffe + x15) - x31);
- out[6] = ((0x7fffffffffffffe + x17) - x33);
- out[7] = ((0x7fffffffffffffe + x19) - x35);
- out[8] = ((0x3fffffffffffffe + x18) - x34);
- }}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e521m1_9limbs/fesub.v b/src/Specific/solinas64_2e521m1_9limbs/fesub.v
deleted file mode 100644
index ef92f7c79..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/fesub.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e521m1_9limbs.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/solinas64_2e521m1_9limbs/fesubDisplay.log b/src/Specific/solinas64_2e521m1_9limbs/fesubDisplay.log
deleted file mode 100644
index e68e71859..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/fesubDisplay.log
+++ /dev/null
@@ -1,7 +0,0 @@
-λ x x0 : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x18, x19, x17, x15, x13, x11, x9, x7, x5, (x34, x35, x33, x31, x29, x27, x25, x23, x21))%core,
- (((0x3fffffffffffffe + x18) - x34), ((0x7fffffffffffffe + x19) - x35), ((0x7fffffffffffffe + x17) - x33), ((0x7fffffffffffffe + x15) - x31), ((0x7fffffffffffffe + x13) - x29), ((0x7fffffffffffffe + x11) - x27), ((0x7fffffffffffffe + x9) - x25), ((0x7fffffffffffffe + x7) - x23), ((0x7fffffffffffffe + x5) - x21)))
-(x, x0)%core
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e521m1_9limbs/fesubDisplay.v b/src/Specific/solinas64_2e521m1_9limbs/fesubDisplay.v
deleted file mode 100644
index 787336e2c..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/fesubDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e521m1_9limbs.fesub.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display sub.
diff --git a/src/Specific/solinas64_2e521m1_9limbs/freeze.c b/src/Specific/solinas64_2e521m1_9limbs/freeze.c
deleted file mode 100644
index c5a502498..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/freeze.c
+++ /dev/null
@@ -1,49 +0,0 @@
-static void freeze(uint64_t out[9], const uint64_t in1[9]) {
- { const uint64_t x15 = in1[8];
- { const uint64_t x16 = in1[7];
- { const uint64_t x14 = in1[6];
- { const uint64_t x12 = in1[5];
- { const uint64_t x10 = in1[4];
- { const uint64_t x8 = in1[3];
- { const uint64_t x6 = in1[2];
- { const uint64_t x4 = in1[1];
- { const uint64_t x2 = in1[0];
- { uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffffffff);
- { uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x4, 0x3ffffffffffffff);
- { uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x6, 0x3ffffffffffffff);
- { uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x8, 0x3ffffffffffffff);
- { uint64_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x10, 0x3ffffffffffffff);
- { uint64_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x12, 0x3ffffffffffffff);
- { uint64_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x34, Return x14, 0x3ffffffffffffff);
- { uint64_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x16, 0x3ffffffffffffff);
- { uint64_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x15, 0x1ffffffffffffff);
- { uint64_t x44 = cmovznz64(x43, 0x0, 0xffffffffffffffffL);
- { uint64_t x45 = (x44 & 0x3ffffffffffffff);
- { uint64_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- { uint64_t x49 = (x44 & 0x3ffffffffffffff);
- { uint64_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- { uint64_t x53 = (x44 & 0x3ffffffffffffff);
- { uint64_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- { uint64_t x57 = (x44 & 0x3ffffffffffffff);
- { uint64_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- { uint64_t x61 = (x44 & 0x3ffffffffffffff);
- { uint64_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- { uint64_t x65 = (x44 & 0x3ffffffffffffff);
- { uint64_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- { uint64_t x69 = (x44 & 0x3ffffffffffffff);
- { uint64_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- { uint64_t x73 = (x44 & 0x3ffffffffffffff);
- { uint64_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- { uint64_t x77 = (x44 & 0x1ffffffffffffff);
- { uint64_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- out[0] = x47;
- out[1] = x51;
- out[2] = x55;
- out[3] = x59;
- out[4] = x63;
- out[5] = x67;
- out[6] = x71;
- out[7] = x75;
- out[8] = x79;
- }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
-}
diff --git a/src/Specific/solinas64_2e521m1_9limbs/freeze.v b/src/Specific/solinas64_2e521m1_9limbs/freeze.v
deleted file mode 100644
index 4307e97bf..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/freeze.v
+++ /dev/null
@@ -1,14 +0,0 @@
-Require Import Crypto.Arithmetic.PrimeFieldTheorems.
-Require Import Crypto.Specific.solinas64_2e521m1_9limbs.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/solinas64_2e521m1_9limbs/freezeDisplay.log b/src/Specific/solinas64_2e521m1_9limbs/freezeDisplay.log
deleted file mode 100644
index ae47404fe..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/freezeDisplay.log
+++ /dev/null
@@ -1,35 +0,0 @@
-λ x : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64,
-Interp-η
-(λ var : Syntax.base_type → Type,
- λ '(x15, x16, x14, x12, x10, x8, x6, x4, x2)%core,
- uint64_t x18, uint8_t x19 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x2, 0x3ffffffffffffff);
- uint64_t x21, uint8_t x22 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x19, Return x4, 0x3ffffffffffffff);
- uint64_t x24, uint8_t x25 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x22, Return x6, 0x3ffffffffffffff);
- uint64_t x27, uint8_t x28 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x25, Return x8, 0x3ffffffffffffff);
- uint64_t x30, uint8_t x31 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x28, Return x10, 0x3ffffffffffffff);
- uint64_t x33, uint8_t x34 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x31, Return x12, 0x3ffffffffffffff);
- uint64_t x36, uint8_t x37 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x34, Return x14, 0x3ffffffffffffff);
- uint64_t x39, uint8_t x40 = Op (Syntax.SubWithGetBorrow 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x37, Return x16, 0x3ffffffffffffff);
- uint64_t x42, uint8_t x43 = Op (Syntax.SubWithGetBorrow 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x40, Return x15, 0x1ffffffffffffff);
- uint64_t x44 = cmovznz64(x43, 0x0, 0xffffffffffffffffL);
- uint64_t x45 = (x44 & 0x3ffffffffffffff);
- uint64_t x47, uint8_t x48 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (0x0, Return x18, Return x45);
- uint64_t x49 = (x44 & 0x3ffffffffffffff);
- uint64_t x51, uint8_t x52 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x48, Return x21, Return x49);
- uint64_t x53 = (x44 & 0x3ffffffffffffff);
- uint64_t x55, uint8_t x56 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x52, Return x24, Return x53);
- uint64_t x57 = (x44 & 0x3ffffffffffffff);
- uint64_t x59, uint8_t x60 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x56, Return x27, Return x57);
- uint64_t x61 = (x44 & 0x3ffffffffffffff);
- uint64_t x63, uint8_t x64 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x60, Return x30, Return x61);
- uint64_t x65 = (x44 & 0x3ffffffffffffff);
- uint64_t x67, uint8_t x68 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x64, Return x33, Return x65);
- uint64_t x69 = (x44 & 0x3ffffffffffffff);
- uint64_t x71, uint8_t x72 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x68, Return x36, Return x69);
- uint64_t x73 = (x44 & 0x3ffffffffffffff);
- uint64_t x75, uint8_t x76 = Op (Syntax.AddWithGetCarry 58 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x72, Return x39, Return x73);
- uint64_t x77 = (x44 & 0x1ffffffffffffff);
- uint64_t x79, uint8_t _ = Op (Syntax.AddWithGetCarry 57 (Syntax.TWord 3) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 6) (Syntax.TWord 3)) (Return x76, Return x42, Return x77);
- (Return x79, Return x75, Return x71, Return x67, Return x63, Return x59, Return x55, Return x51, Return x47))
-x
- : word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 * word64 → ReturnType (uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t * uint64_t)
diff --git a/src/Specific/solinas64_2e521m1_9limbs/freezeDisplay.v b/src/Specific/solinas64_2e521m1_9limbs/freezeDisplay.v
deleted file mode 100644
index 5c39bfd19..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/freezeDisplay.v
+++ /dev/null
@@ -1,4 +0,0 @@
-Require Import Crypto.Specific.solinas64_2e521m1_9limbs.freeze.
-Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon.
-
-Check display freeze.
diff --git a/src/Specific/solinas64_2e521m1_9limbs/py_interpreter.sh b/src/Specific/solinas64_2e521m1_9limbs/py_interpreter.sh
deleted file mode 100755
index 77ddf59fc..000000000
--- a/src/Specific/solinas64_2e521m1_9limbs/py_interpreter.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/sh
-set -eu
-
-/usr/bin/env python3 "$@" -Dq='2**521 - 1' -Dmodulus_bytes='57 + 8/9' -Da24='121665'